kernel-devel-4.18.0-546.el8 ?>?  HH?P?T?s?e^ U]'':e$9U!_監95͂.H. 95X%Fv] bAb;8AǫB3F9:A6T֗B&jXr:Uܑ#dM~逊A5͞19Έ92 A;|dLaMU\f6vm tǕ$(c?-r6HIHRNf*7``JB9^}9O̙Ý_/uD M?ػJJkD`XP W%-@jYj$?5!Ϩ8\",XA Ss8.#0C)&*To,>5p?t5qQS%wڄϑ=Y-6Qo!HfS-$ ],aYTV'M'*<6R4u[>ehN54jHae075e8e4027ffc7418afee3914ee39902fc4732620818995544c119730def6b0be3866f7a74e7de8b091875ae9278d7e6a0e2b30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230327476e981e9634ad1d502f54ba91f5eb6ed12551424021991fea1dfdbdb8cb073a58794449c42967e01eb58bdbf1aba02310082be476f9d4f0e0cc24d7991a0fea3b2b8fb1aa2ca472c26a3e732b179a116bc9c7c546fb1e3e647bd7257aa17ce39ef0302047c435bb500683066023100f9c2d8f9142c0e7418be87863e01401f699bda72ca55d91507e8d59542e7b41245da13bf3c4c35294f0534af549a377a023100dd8c9817cbbef06eaa2760f4eb0bd5f77c716bc21a80911b0f5f013525b1295f88868acc95fd43cd79f6a4e615cfc84b0302047c435bb500673065023100fffb5c5e9d6d9ac37d08280bbc3a018b6443ed1e1819c6a3a7d74524487429375b930e0c7f7bc79cf574712bc1f38c0402306087634276b9f8e7c8ff8322827a8ab9643632c73791950067238046a5bf156e3db6301ec52d0c0b93b23f8aebd5a8730302047c435bb50067306502302f2ae85e9a1f388d076ccfbeebd883ea9f2b8b6e7ebda6bceb4b48704765c7e2ff71e2de72143f5ab069064f316f1d940231008be1db11d627a6b4bbe6d2ec52a400f4f4742d604e773501effc309cd9b107f6c2a394a63301f108e194a72bde59bd8e0302047c435bb50067306502306ac104c6dd80d10737b6086f8af558a7b334bf0546eebdd73636766885f828b47899808d2b60a562461b5714d7ee9e2e023100bab9ca0a2c851b1a0271eeccb46840e9c92f47013d2a72ac17fc08c576f1ea7d1f9e47c62664af837147e9a434ec16f00302047c435bb5006730650231008458b2b2378dfb4b398c9de79ac1b6969249403ee48bb86cee85d31dabe3ee596dfba271ec0a6bd4a745134a0089ff69023015192b92914e1d3290f7f00551b6ec1308f2050a7e8c76d86a179ed0f0f6d5f4f40456c2e60c6acd4702cfe0913dcf2f0302047c435bb500673065023100f3672a2b5bbf32fe48621590fa843b807f14919fdc109d8ac5fbef60b7b1a78b5667c4c203e80c8032a0d00126dcac2e02303f196103a51dbc806357fe9216dddecbd4919dacf6ad6f2b9d782be5d5e4b8f91fd3db54e1a8b06f3f2123f6569936460302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008b960ec3302ee3b4390ec5d65ef9f48f4252de72a83b5df6533d83fcbdc850b89fe4580ea74b33d8c83c927aca79bc8e023100cc4ac557a665ce49fdfdd4e0e44e4867eb4e4d0b36e071304f78448735e9771d7edd167cfa02b310affdefcdbc8890030302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e393234b21582488e77fd5d7d44b505d69bf03644bd8179a28df2ffafa9687db593ad2ff42315c9bc525a140bb5728f202310093465659cc2b97f85bbd6465211d019b3b52642d4d4872552b58ac779f584c1c7f5a8e24587a169bb8711d5528f62a5d0302047c435bb5006830660231008d394aea52f57a5c2954b30e1801119b3a4d61f925956b0e18e635289f0984a80406842eea44a87a4e81072d2f80a124023100e26166ef778ddd2e7dab9a05fa43c2b470cd49ab4265bcbabd478b7e2a499d4f244a311f6264982507d7f7b5c5d28ac90302047c435bb50066306402302f156ddff1eb7163ac1b302ba2fe2a4b20af0f06ef6ca935dc1ce169a1089d4d074508389af5d4023026ba03d9e16d7302307f7591b5197068a97fe86fc1a12b017f67585e1f75d486a40d237888e8489008b510911a665ed46f2f93c130c23f66f50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023049793e1c650c6e507f3b1d43ea148c848accd6c0abb3e0e0ce690f1fec327ad83335ef07100d7f83f355b8f8f8e3a94f023069f0f9ad966e21b85de429cb887e6387be3ab3b350e5f558a69bdcd4d57bfb8c5fbb66c7f3f9fe66410ee9b2445d237b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f33d7adca55ec1cd909fb73b61378cb69d17e8ed23a48a0ed95a19cb817f4d1650fd580bc9dfbda53000164b1a2642a1023100c50bcaa3db966939e645a9ae1a8e9ea94bcab8e05a3fd9708d595ae87837bc8304b579dbe35a0b0a9f70e1f22ae522ec0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304ffade40311f9c777768b814a774f0ca6cb50f8b88d180fc0fc931342c54fd6d7d7fac9dcc40ebea86365686d5437fd1023100bc57e59085be49528db6909558631a3487e14bd1a243d6b9604a867d40c18a807269170eef44ac872022a86a374371230302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301c37f29946cd44207cc2409d084b8b9875e5fd08a1db339ca5bbeba539e7f717f7fd585a3d23262051388517a04ab4a1023100e42d61408bbcb78b97189d2beebe5c030699dc60c4b587edf7dfcdbc975387059e424ca535034033b9017979dc5001680302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100afd047ca4bc44ecdcf76e6683e9c5e541a67fae8164d22e1cf46eafdf647f94e11e8049a75f94ecdc56798f4aa7b71b602301de3561c771e9942797b0307ca13b783288b93cc5544d3c82fd67dacd14fc61990069e1383a016e89850d34d6de4f1f70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100dc4231118f8e111d7326f99dd91b5ae5345dce43a1ca981476c9273cb1dbf9377c4b111aeb0186e23505826c318faa60023065eee3b32953b21a598735c2c34f661e80d1c789cdf8a212a5a1de76f71e1cad3d01c1031bc778664f26b93ae7f3b1b40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d169aa9e026ed3d762d0eaec5711bd3fefd0beffd91f887a20676d25d0fbeb2dfafa89197593dcdeb000c536859f8336023100fa113d29fc1dfe82039b33739b02c0267f427d5a728be549272ca84b867e80c0c3d46befe0631f31abf68965bfe11bf10302047c435bb5006730650230128a76d3520e6c3b63f7882b70b658dd17551b49e8307d490a6ce7afca6289cbc2a2430abb61ec5dc2f0d079b4064468023100a8fc1c0510389227a39431d33ed04cd3fa46b296c23572b73dbae5d6e8ccf84661023fedb839a3852db84007235ebee90302047c435bb50066306402305d342fb6608906d3ecb302598394474fe616a5c5b9133843f2b6fa76e55594e5a295958c5347dfaf2d937718073491f302304c802792850469f2444a311be6fb6f6eed8acc961790c4e0b0ff325af580e535f9e93f6962b18132a538a47e820412040302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ad93e56f9de5b34afb54b3311be07358a7f858e16fea0b88a3c5d6ebf060e10773440a43ff48083cd3df454a1b07bbd20230463460b86809c4d3d9cc7c818bba78e1a269468564972a4dba138298237bafd784261c8ca81a7190154d0235d86e663c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ad171f0c46b88037b797fb529b01f41f6110b9038e7d5f279b75c0df290d578eee4a1dd59e7381346f590c1138a6eb5a023100d579589a1bde62f8c273fb148f902f51f3bc20912030fb79dfb566f4823839eebd3bc59dd3a3633ea4d84ab649bb398d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300521a0231055f1257c0e9177e043dff6ecd2f525c3678cdc3a992c439b8098eb74d992cb311e2afde63bbe3edae14f35023020d0d453550251bffcdd7836dc12489b82089c1ae3abad9f5869c49572a35e075328c1fdf841751b55a5a0941a5f4cc50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306daa5726720bc13984faa2d0dd3cc4be50c8ae53c99eccb5a9e5afd2eeb20fd5f01d5d09b27e3ffbdc6544db91b5f1ff02303ad0eaf1a4de101f008060b8e05b3758e2c4f588dc37587100a311eb380a94889061b5a5e83f584f9ce59de67144f7bb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301d1fb1354854a58e7cf82491c459686fbb49ca685d8c92f8acce6af9e8fe9809ee7962510ca97010a15846340064dff102302f04dc6405d3cedd5df20930355b9ea54f39b5e8e30f3b4865755d87cd59f7059c45cc738f539250d44e4625a90a2a070302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009c1a3bdbab932920826bd48ef845a2830329be14bd884bbd3a46b613b502880a73b9a4d7751957ad4e301b03e1d8253e023100f711c8a33f0bd17438c14e8287345c7826696b65e774edcd05e5542ccc858e73c86dc0ac1079b5e17de529eb52a27ad80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305c0d2d9c5a2c6e14c24ab84dbef9fa4a3b12ca30995ddb9b13e0a11258b1dcb012a0a7e9f79af86e34a5b347b61f42b4023100f51e8ece6b420bd11bbbea488f8196b508d651bcf2ed37a11ee2e3b27d2d5a55f3562dc1d7d963fc7dd7d28b860bc78e0302047c435bb50067306502303474bc217036603a20e66fe1ae98841f6a48ebfca24d89463c7558e3837f14b860374dc20d7d8cc8c8cf4ad4f4f3c61f023100fd547171ca855a58c448844d000a8e7f2fbdb262d7b74dc0cc6569522d484c3181f79c849b6097fac4182bc364119a7a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ccb874502da16cd3005b71433b92275544f2aec2ff7f30ef28c5348453f39eb8a8d28a42a39322a521616df9943ca99402301ec135dae2fa80e46a76376f5efe121cf9fb39bdd42cb0e588c78f1ba8605e11058c858ad77c4f02d69d3019233b48a50302047c435bb5006830660231008691d182f48be13028d1bef97395847f22360daee75db93936096b6fd190ee33123397dea574d479a236d35c5bac372b0231009681cb372645daa87dd0116eca077b58c55b804f27209913a58028a812f9f2554ee61f29217c591623cf170aacee92460302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c34198b4825e1165d3cdfb0aed330c597f1b30aa6a9225778fb76aefd5f6df81c20125d7552a5de39e5218dd552e780e0230445bf4cec21997c37135ce607d7c99f8680fdd0e6ccec5e85ff5e8af1af195b28760a8c219bfcda244118812158965160302047c435bb50067306502305308d7d108f6889dff56199a688a24ea4d3dd43b2d024b477d20fb8bc0dbaeb9abf49945a147f6d034815b24dd18af0d023100ad5a5d8ec966f52475be943593938e7565663e2358a81c94031ed8e19f139eefff61f6dd7aeebf06c33dc4328fd1c4a20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305432c38205c8dae3707d7cd4dc98910f7e911824b23a99a85d73f883649e2e2bdd5752991446a5ceb6f94085fa6a7065023100d86dd5f52f42beb70089febfdd8a9771f0f60c0ded7f74fe4cbd5eb1b0becd5d38c876829d220c33e0b6cb22751183bb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e9f1e1adeb43c86a70692150239049645b825e7e67bb5774159523f2c558c834f953126bf9de4757eac50d13fce107a7023040a016027267a33da342d1dc83de1235e4b50d6f5db9fbf22793a998a79981cf02b62d997aa360f808148ad4545a644a0302047c435bb500683066023100e481e991e9d637ffc3960aba5c14fbc044675e93a1a72cca67389e03a84e86e35317faab04c3f787308bee4c7d180b29023100a54e367e8bdb4ebaf510a2316cc78ec5422afea171d2408a91d21b1380d25f741c8e2a3dd5763dcf83b1e49126b8af0d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e9798a359b62d285a598fe546ba513f464122a0c853247b8526b9e25ff7e505b622c4b561e6cffa5792f10515248f68c0230727f603f8a4da4d50522dd3eabbf065b04c534b6e98befd40c7b1f734af919d4bd913059514f7b3af308e695e697e19e0302047c435bb50067306502306adba1ff0c2c023677b6d5e339a1f91266fe73325ce6127164c11100f4af2b093cf25e77bb07a14d6a99dc3e61775fd2023100da6558f46cf02c8c162d588be2a176530af61d2a4fdd7b8ecbdf4e9b5453ae00e6f0f0c3463017678e5a4cd41079d1910302047c435bb500683066023100e861bcf06b72670cbb7082a6e1dc57ce61c2a2fa802f436dea34faeb2d001e59b9936f377e8ba66e85e836da9dd36a30023100e6527c8056667fdf694132d18f4fb4ba1e8c091c20981b1001663d766a2d6c8905fb7103f0f4da491e68cc4d16d1f2490302047c435bb50066306402303298d9d5c50c47b2442d1bfbbc6e310b9f7bac2098e11365abb6b1651fa658dc93a0f2faf39a27021b8c99ac4eae646902307468794b9a7ce5b563f9b1ff52d671c21073526616eae2e996c20014ac301bffb4d78dfe9c0c0ef5f30fc95f12d845f80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300897f85575b49d75fb3d532121137be9f81607ec54920ef9e0babf35ed18f1dc6ca1eb6f2597155a6d22b72495be7599023100ed8293fd16ef4b3ad6865b33b9a4693ca65d9eddc8456f9cc9af1312ba6e30f50cf6191ff60ac4b3533b56f70ede58820302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310093ac5dd42612007ed492dfe4e2e5c466252ba050483be01da72506b8c2492f283f892eb220bac100bc5b5bdbd51da97d023100a6bc26c5fda636ab61a528a7ba58bb82af5f693927113a7f3051c9307d8e501c66d2dfd4c464a89171dd002a0a0ba79f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023067094bae6fb134c73f9a06072fde667a9d5603cdda8c1512ac5cfa5c3036f175802a858c15f925421f8287a385539ac1023100923c2ef5310b1a6b2707ba44a65cb9276494c4ff18140faec0686f9dc12a4ba50c4984261d8307bf98f2a1f1ff0a09bf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023004a16f44336da798325c31b01be7351be9042116c88a75459e980df6ebd232cdc04eb2d3e73b0e3a02f7aa751d554f36023100e8a02a9c2ed8a5a39217503b9270052566487a1eb260e70ab1d764e390b2a8b1523cbfa94c4134959ac44e0311cdc3610302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303dddcde2451b743bdc14ec42d0f5ce13f9e7c2bb08b6f1e54e615e253952cbad0bfcb371f23926bfe4c978798f88cf2a023038051ff36e3e8c4cfe63ff76547baa31c70582206e0c50fc417a4ce01d10f5f8c5989f37609cde089e4297bbb4bddd6e0302047c435bb5006630640230583d9aeb5c7995c841b61702ffdd2773ca7f20b3782ad59ef6bf50814c4da4f160e4900949b0d81544c98db59c52daa502302f6822fc8a32b4294f10bc3c7cf703714457ea141bc9db2f18ef5fb40aed36addb35c92a58bd123c0783a9660b2a5bec0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100dcc8e300b29136fd1bf0b5082533df7f5aa565d08ce83f277f7df37b8217c57cd3f73666d6707bff9f613473f484335a023100a9f552c25e76a6001ddd847a52f891c4e55ee95b0c061ce62f742ef14263d60d8adb0ec3fb6abdfd09fed27bfe7f00e30302047c435bb500673065023063aa8cff92522f00ff6e096808bfc59dee8be1f482c1cc316a2ec6b13b251c3a48187a97576fc68647ad106d81353b55023100cb070a9bb85f2491d6f7d3a4d8d1913378396e6053c5c17177e2cc892ac1bdb684f317f06eeab812d3c21b5c5cdb29a90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100bc32bb1518fa1c700b10e5e2e72628550bda16306586259e2259b992592c790c9cc5ddf6510153b2027f25a478ca700b023100d6ec3be3039184172e31ddf5176ffb4d1cd3429a62ea8c2d38183d5758c992d291b03e9bb014c6a71e78295b1ad0d08f0302047c435bb500683066023100c83ed13bd690f047106e09cffb87802e14b2a64c39cee44d376abb8bcd79fd0829daacfd24623e82d3023fc79acb979a023100a9efbc8331bf09751b0e2c4296ae7de85cdff4ef2ebd676fae244a75dd601bac58832568764a1acf76dded4593c4d3f10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302d99a2317e033af0b3868edb4da70f6ade30a08c211bbc282146782b1e8f4eb526675a4554ecdf146a29bdbce7ee0227023100bda308551e77d90ab4877016d3c29db6a6d87b2f957fc86a6343089455f8e54010b85a40c019dd36ac075f0bc0c472f00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306642148da402d7d223066e92bbb2982c76c0c0831e45bba9a246a1d9617690976992654a3cd3b5b419919dafb6278def023100c69a5bda32430b75dc8ccd2f68bcd51f1dafa20e87693a0a672e591a2e9a4ce0685158fc7ba4d59e096e79f0601857400302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301489ce55629d0cc842504d722df826fa13cebb4e04cc21f3af4ed2ed07a2363dbf0decafbe06fc1a51d49c000c11e9350230399df8dfd910e5559aa6b06aa6d78b4013d7832bab7e9aed8c622c5029a6565b0dbffa769f5a56f9b44eee8c30cc4a440302047c435bb50067306502303134213fac17f4d9eab37601bd3bf67dce1035a41eb91d3fc46bef223f56dae948b04b7ee01796398cdfb7919fd2de76023100bd49347b628667bcb298eff49534730eb6a20f2c23254638ad0f8ba4655b917e5329d9c95083ff931c58d98e6ff9000a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100dba5ec152b84a87e59c50bcb755362ba55ee13d2796d12626349437b5561b2b1a249ff1970863d41b54fd92a697c704b02302697d4b1efce111634d6e1b53900c33f909f8a46765dd68d87f9869cc1353dc01eab5228ba41128f1049c730433a12850302047c435bb500673065023003d63e7119ced615969ff7e6f755f29fb455d88f444c30aeb29cab43e9f3d626ff02fde16c00ad7336a047f0ab2a6505023100dc3a86c4fca0907a618e0280297e3613989b6aa43934928fab9a82fb94b1ddc9543074a97610367a5523209ecda2abd20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f850aee31e5df4c98cb90a5d0f60ae6b175dfdab86d7931a04ff1ff3cca0762d6c13ef6f5cd8ec0f7bd25fd9fca8816b023066d09ebb76eed2823915aa5b78615117e5ca01af5461db8021541e1ac9ac01afe35a4bf54039027a1cd272e0010cfe930302047c435bb5006730650230355958ec8a93ff42f1889c621585275a04661cbb1e3e020e656eb8f7b3d5bdc46eda452d7ce5a7e9cbd88e2cfd78bef5023100b8f1b47ac9fba603278f17676df91b8ec55895c1953ea1df023b3312acc7fd9ae595b320a7b2fd0f19aec5f6fae390120302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230355eac50724d7451bd14712eb9f5d42bb80dd05ce9fe25956c8abde2bf7dca278bafb75fe4c2aa19e4a155920822e589023100a7a8053e1d2dd38dc46fadedd889cc04e59697116eddce1698e6bed0a07a9c0ace3f6c4471174c7cbc930469a750d55e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e0203dd83e271e118ce94bfaedb28e7c61666af2d9b1371772892cb8007838390d7719dda1dde97f95b8f780ddc4eb65023100d2ffe5ba302b79388c8c30eb5df4544d4904fa700e585e488083bdf55dbe50ec21b20497b72bbd3e1ad6c86a1811e7640302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023033b8c5bc2375454152b17d32895e2e55ab4d84d44b632db1dc85e76896243631d8332a2b124dbf3219e91d102646e2fb023100c623172cdd4d1a18a2b6e747dab88143171155a0800b1c003f8958bbe0f7eb237db4a2c162de75efc6c16e23bbe4dc7b0302047c435bb50067306502304d9aeeb461e8365a9f1eb8090d57b571309d15453da21aa72bec4b97c2664db549d1d15c468d1beaa8ba2d2e18d7e2540231009b0f7b50f5666e680d06b97b2002c7ab92c4ef813d255d502c118a0159259d5adce5459d7ff5b534de667e40cf2c50db0302047c435bb500673065023100e0acd4b41aba10073c7fe811198f7f8744133b2d3582180b822ca95b8578ec28f02bdb2f23eb2314398a4c7803d791a702307da87616f68b91576edaf158423970b0e0c68cf312606bfa12dc408997e016c5cf8fd936ba2442e537f771569df72c360302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023074a4dabf135d1b0f41787f53a7c592f2f937dffad730c76cc9b6f6df2753fa968302752f231a1f7b49c7854b008dd7f9023047a2c654635f7c725ccc7041588eb4bf7fcdfa57edfc4274f27fccc13ea5a1a953b208e20edab4e37eb29688f1743bd90302047c435bb50066306402304dcd3ef314d17dff2d70969a4f2d1a77670b26cfbd8294c4e0b16111d22f4b107a475cb26eaa662473224ba08d7c50770230459613ecdfe26d6430923bf7dd1ebe887886a3be321cf67c03149b73665200975988e758dc2ce2a551441d3214e821c20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100be16e8f7d61e6602ab488a5a26379d6adea9f2b99a9ca120e05c0a8b8d1aedb59b29c5e2f7ae20e9c984fd24a8f628f1023100f04f2ed8fdd2df857411ba1b00faee3646e29a9d06c7843506cb0e279affaca74e4f14190a89e0ac33aa114f0b309d120302047c435bb50067306502305211f2630dddce746d3bec39f4232b05ecc956aa5b73ee9f7ff5d9d141ddf72434105c7695abbfd751b63e7734cb6dcd023100a1eacc22ab6340d2a4130f762a9ef636786190ccd4bb4a8d7c67fd55be936ccfcaf2e1deca565516a423a8b6b1b6d5b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100fb204bb849e5f60a655cb353c2b1029617e5072ef3d15bb3e6304140bc7eaf1cb4dc2d90621e16c2516638c620e98c95023038db372c1f775688f924050069b06fe835ae8e0c8efcbfd889bae6e2171450452872b2133d232f7fbd4abc4ae82bb5a30302047c435bb5006730650230655e10fc7095dc99e3de58f7ba33f04f2a922cf6d727cfd5446b5bdc3e800ff16acd8530519caee05515a23283c07e99023100a0e83bc6b7a1da492447ad396bcb37a2b3d3dc416ccb99383f6919df4aa71b49f87c8101059dcec7ac9bbb5d92822f3b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e7a1e88c055c76fb0876b0501047b7fbdfe9a6c80be5846575402debafe11d4f85b746bdde1e72acd76628dc4730efe0023009a21490d33949b8d74e2c0972e69fab942ced9f8366eac78b3b80474929a13f748f06dc8c94f2a1d62e7c1feed87db60302047c435bb5006630640230720960b6319399faec4bc9ead465debc2043582af9933174bfeb281396fd8c979463e1ff8704ec0c5326fe2167ec22d60230325abd48367a850bc90c9fc5c828568bb04695896f1c3a501e58eac32f28f3d4fe59e1b6c77bca1cef26116420ab20bf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d2743ec5d86ef16963031079787ee6247c4a86efe722bb59c1d7c7c4e32d9758b2b059ae08dcb45c2654caf771cd122f023062ad60ef312ef890a10109b5bf7a20129070b79799d15aa72454f2375e83f321c0b9807f177f66bb4046759a563905450302047c435bb50068306602310091eebc49ce79c123d74e40cbdc916aa61fd4527b4cee6b9722954b81fb5d95486d06d1761c97c43f7a6b593bb5ddb638023100b27392c349c68e85a553c7377dbd6f32bc3960648fc9aef81a0113d1fe0d815bdfd1266f1bdd72dac2f5cde59c2436d10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008470667e39eccd9c2c3b5fa9b248d26bdbcde5380fa336ea273c16c8c72d4a09fbaba0a60f2b5ee43af5e7847c504e8302304bbd48d19ddde25880949bdd87938194c36ed52f2d79fcefc4b5937896f93078c42fe48f903eb46fdf7f27a1d38dd94d0302047c435bb500673065023100b4f1122ca95dcfa9507bef925628182e63bea531c38f20fa1826d57e11f13faf68751a4522bcf392a75073330091385b02306d5c53ebcc7989f5f0f8a613941eaec708225ba21884e98f4e12eb0aab24a0312229c7be558ee1891a241ad6419209a50302047c435bb500683066023100feb44059a1a6ba083b4319232e821f4e85270b3005488b21073527b47ab1c82a2c8a859ec6894e7d9b5ff91299766f25023100b59d4faae31bde1f1abb195cd7a4b9625751a9b8675f2782ea5dc308e4106ce626ee46b85f79d4d83b5786de3a06ad1a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bae1fe67e16720798f06a141d1606778c0c2f1982f35853c0ad86744ef75303703ee36f2ee64f2102989fd51ed3b5374023003dc3f3af0dc2cdec7b06a7a154a17a5cbed3fe7b1b86d8f1058171609a652f50893a63ae76fe1628b2af7043e5226260302047c435bb50067306502304701aacb02642107f3932bee9f1aba8eb11b85b8322451392985e3519bd89e5b0710a9081363f8ae7ad473f92268be59023100ec01720b64e2796f8b1bb1aa2759e0960eff41a05b324402d7ffa77c8926e3552c1ea57a5ba8975171f201bfb9008ea00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303d127b301fe484233d689042fd4d35415a86f058bad76ea9f87c0fb9e5a5490cdb7b3c16ebe858dcc2e40c7663ec7c6802303f76cb09afd4304189bf3b30370afbd1deb10e7d1a6fe284f2c39494e4536340b2cd8723f412842a1912ce617022e7d50302047c435bb5006730650230574719c2d5dc62980ea61f3681d4a084a40692f55d8d09a40bed24b7fe650e1415f3932652a47d3a2fa723c3ca34f9ab023100edbeac5d6fddb31a7c5e3e3018b648c6504031b3f07484f4eacc2fd85cc443498de9a919475c3413944ef6b203609a250302047c435bb50067306502305a5c7f6d2aed0ab8c54f1cab3c89a107ffa312797990faced42da485f0bcda87fa56644c4daebe4452e260fe352023ea023100a52de1787184bd6fcfdf882e4eeb97d67fbbd60e20f945f2d2dac8bd73e71812da0fa16f99fb9bc35ea6218873c1f7520302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b07a493a3367adfd84be7d8e38fa656028163ee6b8904d2339488b0ea940f2306ccb15a859dceab8083fe642a92d95080230182f85d0ea497b83eb74811a7d4781d03db3954ae6f2adef0cd5840e649ced33caddf9d66590570983c0b01aa9b87ae30302047c435bb500673065023100f65e73d5ced40f60fac42d0436f4e25af879fa7e01db685360f8bdaed7e5251267118d3ef639808e627a9a46034f043b0230567847367d75fe7eaa516bab3bf69a7a9b43a97f9b5d5e5e8f2f8f17af13575444d33e15eb4e31446755f5016eabf6e70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230032b0763b3408796d181ebdba5a624ef764ded7ee02ec3710ac1710ddc76bffb96756c129abec4287e38cf460e5f3a81023100e8fdbd914018aad3c1185164fa43110db020846118a2bb96fa870c90555bcecd1b6fc56e7e1e95294812a7bf2ad6b5b00302047c435bb500673065023100e0acd4b41aba10073c7fe811198f7f8744133b2d3582180b822ca95b8578ec28f02bdb2f23eb2314398a4c7803d791a702307da87616f68b91576edaf158423970b0e0c68cf312606bfa12dc408997e016c5cf8fd936ba2442e537f771569df72c360302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310093162705a50f28a4447626120926ff8e5604837254cb33ce964e807f44b615912b8698b8d7ac14915676fd4fa5f8a16d0231009835904214fec0874bf8b747939efa3049f3115c4fa7629aea55bcc25fea9f69af086326b933481d69b438e82f0e577a0302047c435bb50067306502305b1e7904d98a90ae2250fc277494a22de5d3eafb6bd0cceca448b19b41331676b72bef7912af1e886070b3c88bda1855023100bcff34f62ccdfa19e5d97943c7a8aaee4b08cf04813d70eaaf2fbf0f98d2364a1826587224fec75809af2cedf5081c5c0302047c435bb50066306402302aacb91838edbfe1a3b8506299affb8a0fcede4b068f924326528a32d2af534f83d9a76171b89289e2f9eab6fce0e1000230256f387d68b36f91f93274df8b9d3f94fb02d65ce312c53c100b066638cdff993208852a9cb1896cfc64993747d233fd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304be40edc99c8ef242cf5c012e49ea0ef001cd1c05502f3fbd42d95d6dffa57b80b5bb7a1484271646574f3f7cd8560ec023100fa73405f3d5ad2b3b08a5a1a65a0fd4f75f6836bcf4554526990179cf14a076656c104b63eeb7af49150c612aa32486c0302047c435bb500683066023100905a71cd78b1fa3de9f32a6b382461fac170bb6d949fd8f4a593cd4c197d5609012ffe4e8c18c3cb5e036e7cfe45c67d023100d3a026ab71e0e71fce26d0d69266529a2d7817e86f002f2dda43a117587a0c9a739e647fa9b5c9863dd477d2acf61a580302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100984adf957b82df1c93b6d71f1205eeda78efbec4396a4407840f080a425fb15aed97ac4e99bfefe6355fcc8c4c019387023100c3a539cf8852a12d4b4969e2b506a785ce33295c2d941e6b0ea70745155dea91893dfaa9b916feafbae7dcabd99e1b8e0302047c435bb500683066023100828e511c05fde24f88a8b1ba8c58ce0e326f7d5210f941aa01653ae71c2a209dab51694b18f5b261759c80f9b47fd4c90231008d4e30a0d070dbd17abda1eb6ecca01bd5aec61cce21c4d8b4001a19565e8c923074a0573b0f01d64afe5ca5d8698d230302047c435bb500673065023067316c42bfae0c6aa4f574ab3afb5d0e8a726657de6897e01cf58f56ce850d23eadba76607d45c70921b18ad81226751023100fa9b029b2576db438bd7361e27afa12e00fd441c088c51bbbe698c8c9690a19596b140d45dfb0bb07df3dc55d94404eb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023016c3c2b8d66847b47f3a119598e166b1e3736bac068d7c954fd06ec39fbfe2cada5c4200e79423a778d98624ff85a5d5023064a50c9931cd84cfbd4359d8ae9ee62a04c541f51e7084830f4295c28a9cdcada11b54a53d09b6d9190f3a59272f3c600302047c435bb50066306402301e818fee1f2b081385e78d1e0871f1a27a2296aba251f211472b2ec2c0d7a049329f3180ec55586e0cd6424ce5486da402307b9dba73b1affe7c68ae410edfd72d88a8eb213a862f82cc7f1e1f7437fdaf724fd1df35ae615c589b13ccd770588fed0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100dc019a28a39dfc611ee51f73cb4d0fc6bade8fa3808ba928a740f3f3554c82c9f48ada67aaf8c70533b150a45757ab88023100c51af13b0dcda4e0d86db91ef377946d13751874a73287410f08ced871c60a045a3221db001dbe1c0e4a478a0d60b7c50302047c435bb500673065023035faf517c54add1da8e0de8623621e2e795974d8bb0cc97c8dc37eca52fef2182011f75268717af96bfa561107e8c85b023100fb4254360bba8bca786dd89c1e03c6011172cf15090c83f787056445fe45e3007d37e60f61cf14eafc4c56c47713ca730302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023012425c70edcb2336469ce7a77fd181848856fbd2d7908193b62269a477dfe07f8bbb26c9f336d2386948fec1a3ed1317023100c2239e0206797a2e83c04ed7d9edbffcff0f020099b0916b7a5bdc8243efbc7f14a77fb9c53d218979ba2202b237982d0302047c435bb5006730650230285c9c15e33b558b3fc674648c795877a8694abf27beda9f9e9122f3548d533d092e005845ffc135d11f1836b9360591023100d986d1e27812d31d9660f62905c6a7f0420a5e1d2ac1663a9be420910fd3c5f5b46a4bd366ca6ec47f972da1afdc9ff70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303ff2923351dbec1202e5c644ce6a7f99f24e7f3efaf1c41e0c08ce255e3b3d8797a70f7b937f9b9ed8e4667dea05d9a00231008acade914e388922f2c3948754c6c9e9fdd37e8eaf8980b41d5d36d14ed5b6e252434fe4b5eff2918582465bdef558c70302047c435bb5006630640230275b60d1457045a9b4c771fb9429fd8785d4f693ff699042371e9e166904b370bbe9ef1bbc45f7da36e20884c4301043023045b01581849c35e2bd5046aeda6bfd6375f290d7d17912f4659d69f2ab5279897d713cc61adc4179cd29ccf5f9c4ee180302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230218178c3aed6c79bfba62442d7fcd724d77b2e824ee3d89f4cf2a313e151ca39e2d35196e6e700c28060cb821d72cefd023100aa03a4997fc1118a9c488a55f277bf808010cd5f1f46f810d1ab8bb81398ead9250b9fc4d4796dd83c2e3df5b9d18bad0302047c435bb50066306402301013eacf93edc15d475ca009d6aaa11d4ec2ab2e6cf394ad8876e8e32790413b915888ad41599e3b53e3dfe14ae36d4502304eb62838c825cf41781113d49d8e800e4610fc48ba6b7150f07b0aedb67842b7b3524096cd85076140f35db3206a03340302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023064ebff43a256466b549e22afba6cd8eff0e20c0ea4ea7199fe67be52cff999c5b056e024855bcfc25f4ee00457726673023100f98c4450edb8f3da3074f3a56f8dc10f7d4bf73ff67fefc70ad84c34be41da4e4ae79cf711dd037f55191f20928ef1c90302047c435bb500683066023100d0be74697827e4d9496899b98d13bdc4a10f01e21b0d9b86286e407d548d1a2b5d37f8f61d7afa1f1a140e09c6207d07023100998d79e48f7255c2e53730645730eaff73b52719817ed6dcc3b2956d1a883a426653b88919b50c4aa2b5088afa25bcb40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e04df223c27cb76f7dc2e10b8885342b36d20156620268da09f409a5b637f53663622375d1f16f91c86d718e8a151c2902306e9bb788f59169903ac19c12ebe676ba28a2f3186283eccf49902d4e67e6403f005984ec9bbe846cdfd4bdb03df617620302047c435bb50067306502300818d01a1bc98c5e143106e6dd287dc8143bec2359b5dc4319da5318a0e26b153efae4a586aed9dd89992a01c3bb5bc3023100c149fa106051917791d1b2be27421269c9e79469babadbfe3a74edb3f8e1ad013a1a22295859fa34c410cd3f6195e1190302047c435bb500673065023100e044c72a7f64e990adae607ab8ee064f908d05f894df0c3cfbfa6ecdd00de60db1cdc4f7ed3d48a86de7fc2f6ab43a0902304d870fcb11d3460f3e850f87f2414d46af8d40eeee36cdecf0b6ebb84c39b26ad6b29f79eab9dbac1da9a614972e5dab0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008a31cf7b69c016d26c8a5c3a5cbde0d5c7dc545be162b7c7abef65ba0bd054f78e7589a1acee777dcd6c311c8d3cd7bf023029db43da7adf1c32b0860beb8e755e263f31b37ddfef77a02a44d17052185f921aa4c5a8c1428112a2e2c8bfd6aac92f0302047c435bb500673065023037119d13d53273de8e0fd5b53438d77ca8bfff6e00e9a32e6abb7cfad5060eb85dca6645299309dd2fb8242d9d056479023100889ced659eaf294ced8090681881a2ee1bbd8780b523841bf150a01f392ecee4d7b2227e5395652d426330ec6b43a0470302047c435bb500673065023100d8f1b7a1787e5d397ba1dcc02f6f2a6e318db57f49300ec4952329d2a3824d72c55b5f7c40afb9c6339f02a7707f4a7402300439437122d26f37d1aa08e8014a6b88d4778c3de4a20f36f6142d6d99d7adc28f701ee1612c0570480449599e8136940302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009be6c10d52f14393c86e9915959b5906e83cb145cbc1b1947bbfde6ff127245af13f88ad5ee783312799853c0e01d13302310086bba9f64081773955b0a1f60ad8ba532fca37dbb9433642471a0f64c1f1e8a8977beb6d922f1cf046c23fea16a9e51f0302047c435bb500673065023100df824deac6b02128c0361549e5ebf1eb5d815ddf7a343ff6ba66e091070e763ae25de2916daeadfa349e03d10fc0e54102305d764b522f8c749e57c9d49a2456c54b930220c7ca98b1864f6a1524ac3e8c10c42a7d54e36db8a8f93780bc1e9f12750302047c435bb50067306502305a5c7f6d2aed0ab8c54f1cab3c89a107ffa312797990faced42da485f0bcda87fa56644c4daebe4452e260fe352023ea023100a52de1787184bd6fcfdf882e4eeb97d67fbbd60e20f945f2d2dac8bd73e71812da0fa16f99fb9bc35ea6218873c1f7520302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300c85768cfe527d65e8156d14927b6386ed41082f874645eebe43cda94ff836bf7ff93274b0f4982bebfefd603ec938c30230533a3e3f5f1138b0373a80adf4bb1831c4abf059f6843d99d8c5b7fd5d581d3af0d2e8b67e6b7809ec4aa9f015b815060302047c435bb500683066023100876acf215a046b665cbd0a77b3afe24764af6915b36547c4cb4343c222998a00e069971c0e3167d6ffefffecf73b0d4a023100cce76d1a8d540a3a64f63baa7fee63872a63faaee48d3ea1c7c6b3eb479d575681c5d3282b4d34ed5421e245fdb64d680302047c435bb500673065023047795422da304ef982b8fb9ec592b0b3fa2d909ba8cfca48b9ab423cf803a93e6abdf39d16057eaad7984427524a8651023100c9327a7860479e2411f4ad5e9bf2be6b9e9620ace6b1174fa2986c093177a15713a968c8dee879aa8f424d93601b47740302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023058a3f534fcfe41345e5b6ba1ab726067b0d7fbe1bc3754c739670945e0d98e8b0522e91a1de7dc6c79134befddbdb89b023100cf616a15afedb37c4b4c71f9a99db1e78981917b39e86f87d1aca61872b7fb22449bc73c8169c55f0a2b8c076cef58450302047c435bb50067306502305779279661fdda776d7ab28f41df85f11c1280a56d7a69ea6fd2893be152b74c17da32890853acb43078f652ac4d3f3b023100f919a0c73084cc14ca1e99148ba2b90c412d4cc83e7becc57da70d420c6744b026048ba62ef1070f29bc9b3b934470850302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b09c15acaa489538ff9fcf9437cd61911c27397ea3744993e6ea4701ee2247888c7d289af3b07800103acf7efe484f2302307029b49751be27a00aa070f07173f5620e307c68e40cd546958403516bd3d181384f74b69f3f9123626c03ea32b0d6bc0302047c435bb500683066023100869629ae19fd7bffe982118f3b23ee0ae154acf5cd1ce9729a5eaf169d87dec1196f52ff9f6e5dc113d47ac45700d820023100bc5be1406491687e15e96e61c08e95ea58c4b5c1c37f4d9a994fd113328478f257ffe9ec2bf893213d17c0c2490b4a8d0302047c435bb500673065023100a1b7b2881180935e628f426b5519d6e6d9f62ff88e189b83dcb16a8fd333533d2ec38409b57841b8c1fda50cefc908fe023030c1725e64b89c5cf73525991f90ec9441cf16c64b98ece222528628f0deb2f25c68fab5cae2edf3b262fd7f292e62f10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230117dc7ec37ad7683c34a292acdd8d3a2310285522401a226bae2789f887fa936343c42e0ebacbe6a14dade827a7043b102305d106c7c862658839a3e4c34bea0ddf7d749a5e622c3d79b97e688a0dccc01a6f1adcf9a5e50fac0f7bec14cd3206ffd0302047c435bb500673065023100e0acd4b41aba10073c7fe811198f7f8744133b2d3582180b822ca95b8578ec28f02bdb2f23eb2314398a4c7803d791a702307da87616f68b91576edaf158423970b0e0c68cf312606bfa12dc408997e016c5cf8fd936ba2442e537f771569df72c360302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100911facb59bac163efed4a9a7de61b50b89d5d6495a9fcfe6202624bb75591ca1998aeb9d06ed4b9c4f6d41fb2f403ac6023100e031ed34bc9d74d4bfa75b05248e6b3e0e0ededc3f13397dc268435590283fe1b6d97dc7a2b336117be9668a40fdd7420302047c435bb5006730650230250c29bcf586d267a977cddf5c387e3f77d9b4db4f1a27be14d577251d9065405417af87d2f0cf8202a85301049a8512023100aa3a2a8464c99b847d2809e071dec90ddaff98236a44a147098c4ea98f882d7d3904f2de9f2b8850dd9b0d7587ac93b40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307d917aa8862af084e84e0798caa44ced79f8c07b5edf291e235fd516e32d98f64ff11bddf4f4e5096e27d3278ac7c9f802301af502dfcf1b47a7763ce615555a3a18264b849a1eeb32c1dae138ae8f8505c7d00389998852f50ec8cde89e9b94dffc0302047c435bb50066306402307e16d245dbea09d4dc8da5827ba21c9e8cc4d308e26c2f9e0522017c48745cb698ec83bf88e361d938d96c6f79ecc27d023004303c531058bc85aec5a6275a3a86548b20162bcc54c5ee984201a78d268604f9a45b7bc8e49fc3e1947fc8ec32ae4b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009dfe6750846c99831e3909d6cf24e750661c42e8af8017059785c4ce4ed79f8d541bcb90ce1e184a26c40da034d2436f023038923c4a51cbbb095d1868b8bd365966cbaebc30879e5b2797fffc9974c7b31d290c91ce6824ce811baa59d7bd3c0ca40302047c435bb50066306402303b3d5b4a7ea03f6fb39fb1a2e430a9034ee555c66aa86510976a7aca711e90e308b0b065fff0b9ecfe4a6d82d3bac11e023042c895a365f8983334909c73025b3bcc879d41996961c3ccb614ee0e1ee97c451efb57a9d38566083c276332519f715c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023005e04c03f05e97a77a73613735284d749084581957c0a77e6f1e337725871b938c4eaf07b0acc772517bf283a06bc591023100cf104ebc0d20c8aa8d49df3f71980127bae231ad61347d262f251a8d56eca7718fee781a47b98a72689482b148d2b6180302047c435bb500683066023100b5e379870b66853aea0e5bd9920bd472a40afdcb9ff12f9c0874c8653d640558772c8ce8d23d99a7996a2bca49cdb38c0231008e20f2ed74da135f57aaefbb1f06fbfce7137fdcbeda4e0d17b89365b30f61df0ac249d65489adcc10b3b8e6043805ec0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f4fe7a897ac0e9c6a3a7792d06fdf3c72fb50598e5a6a6b39033a198fbad90576c63a1cbe7de8fbd38ffb100dc80693202310084d96951825e1295adf5098623eaacc1e568480fab0da4fdc43d1d0b77b49b9e1f2d254b31226b74298580f7f84ba1a90302047c435bb50066306402306de0c38c73b5086af2133347d0325cc4ee0f304517bbadb33ca894e7803846dbf89e89f2d4a71c2cd14d67359a234637023057d68204df01fbab22c95a21286463bc56a88c572683e548bb6890ad316794f69e1061b8b789256c5d74f8a1ac9235f70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306b7a634a248e0facc218d4c09f606e6f79b056eac33a2500f174e380cd606ff59f4df768311426d92a9637fd0bcd2058023043cf0ef8827a881a66f956aae76220829a88b9356e54eb8faa68343099ba54ccdeb6e6bdaf680d92cf96cec5cd4e45d10302047c435bb50066306402300aac24b34421606e7906b843810ebd3c390c97869d54cd232c19a5e54ae1b91f3a6f6a1dae47e470b282ad9e8deffade02303418f811de2fb7042fa5eacaccd05b974293e00d37f32b1d464e233b08aa9381eca2ddd219ca537cd719bcf252f506640302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e0e8885952c9fba40af6f0fc485a5aec05fac938507568ade9304efe3df6279eb812ef44b57699a3069d3a6674d192b1023048ea4d0b2a78c602b9274886400261f18854e58328d872e901c0de19462fbab0f6bb28a87cac475ab39cabedae26b3810302047c435bb50066306402307abe66ccedd292340689b11d818b244a4a14e866af6b9c20f636234783071fa9b5d80a4b1743c01410944d4654ad354802306870ef94fa2a4ac0decc68153756df223af6681a65cdf1c4b372292d8987d04909fc89974ba69d48a1aa9de48f7059fa0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303330cd5f4810df414af4a6e8f6e08503dc5cdd648ab2e6902bd53784f6d209e54ba3175189f31e1570e80b23ac8cbf82023100f2a464c2a45526fc62e2c9f711f51f54e3e6e60a956837915a7350e87b992c1cbc5953e588e8b224465eb3d40fda24f20302047c435bb50067306502301019b7d8fe982fdb1f3a51418973082205000b434bb0b3ea6536bc8014e7abbec6992b57cf5467f71a47cb92f1de0186023100d7430b9729993360c05eef7fbe785d7c177ece0db422dfa7574224d6a2e1d6a98302e8966f8b70f2e6d7d7b3249fd0760302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b14f49e7716d4a71a514723b77cbf5816857747b4ba55d27e4e2f561cac21fcb1da447a4b3c455b6f4c6b8350fc4ee8c023044bce4506844303e490307ce876c934d4ac6c430c964e60c9a518089840707042d75b92f6ee4cdd99b64eef25b3a190f0302047c435bb500673065023062f060f5f18acb4d7e83f1e8c7639ca62ed5b5ee3e614728b7e0a973f6d27c47be4c84893137db98a0bae9f46508f9fb023100c592109e56e9906680c185e176076ff2fe9d036f28dd17a3d4b9f430fa95d2baa144d597744382a9699b3c885d8dce510302047c435bb500683066023100d11142af89b61b28de6a51f8cb19da13a6317f6140b2a1766fc53005519da08b92f3140062070fec222f9bc4045fa8b0023100cacd02d16fccfd30c16d45d21fe3f4d5019a381d447b53469e1e8fc46a23cce68ff3c4e626dd8f4fdb58418344ff6c300302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009ec303cd6a45da2f59fdcb356e750c1d2ae28108cf86910022aef1f2ef159f98262fa90dbd2f7b70f6a371ccccb9cd93023100da6aa404576e6b5609d38a590afe7bba9e2dd29146fc1d4bbda65b30de45a1d54d7b0e5289a0e28fdda5b094ac0c04800302047c435bb500673065023100f58a112827c5628e674083e2861e5476e0bd94ad0a60183eb1b968cefdf2d08183529621310b1a93d1bbfa67dcd862440230612adefc996fe5ed74c984e59f97e13d1ee603078c88263fd88eec6a81b7a646e382ebc2e30a7856866b1794a1fa2bf60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f195cea86e7c4911841acbcc8f2e1f79237258fe6f3e04137432c221494ae042b58a7e2ec82a111fdb8cbe3e31edf05702303ec6b85a53dc92d70b673678af97d4e7481cc4ff4355d40562565751a09b0e09ac6e8f8a702a194ed8dae340dddf9a1e0302047c435bb50067306502307f0dc81a7fbbe12223492c68515ba02bcae7c427cfdc9a93df4e1ef0f097471455561e28415f960c79d6327f4c7fc5fe0231009ff23e2babce0e7ca9475d88e100052b07c6ca8012f252cbe5d912fa9b73e282601c25c3ece9c9214b3fd8f8e3bbdcd40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023065a2f294b4599925288696123af6b4f8ce8283b34ab92b52f12a20bc837c7e60eb7b68a4f965193c9a8ad54edc8e9583023012120fe6177da171a0136fc852d0fdb6d53af9d09c9c591bd009b538381a5cc282896e953495e51f592a6c0e55071c300302047c435bb500683066023100a46e6511b0a07b01626b7db75e287936ee3a1b5618b10faad7e7c6ad130f88c69d1f8727fed9a480393c8beb54503af7023100e005d65c71538bd64e950076a6e5277cfc760f217fb7242ffa612a4f7377c55872fd8bd05ca6f47e558e0543ac698cf60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307249e221e29fd0588cbbb4b215e0bdb603edb9e0bc05513b98b89477be54c8cfd435347de78e750a941409d91fc27b0b0230650106c457402b11c16c03f37f645aa6bf14b3c483cf8b07d2f3c9bd6e93b49a48b54541fc05e855cc49931611fef0460302047c435bb500673065023100dfc084f96b527d00edf6193edd0235f841d7945c21005d8030251e2bfdbaa8a6b6aa68b61f91021b2180ccbfb04cd9350230310f7d3d65eb0eed1df7db45f21933054a0a7f20141415701a89eb4f460972dacb5f8df844e7c6edd1b3edb03e59d3340302047c435bb500663064023044835001b4727d32717b4a300e0cd004279ed4984763746f69ccc297a44f4c2f685e82810a5cf24f0e153e7c430979c90230383d9c2663a5feaa8941424a7c4b8a43964b47d81af4079ae5d0d176e366efb7458bab0e7ff481016bcd912328e08cc10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f14158d38f710101d0d4dee93fd6a1d5c0f7843b4a4d95d5b145856b9af2f75b736c34972250542bba9e58720d7c24e0023100a819a1c43df0d27785bbea7983aabf23705cae38e67221aa97802bad5f3b0e3cb89f5baf96b403504486438b13e42a470302047c435bb50066306402300fa2dd73775d48d60eb1f37f938e19ddd302630053f9f13303d395f6ff7ec652f4d408dc33d9c8359cca94fd3514e1810230276f75db8f8e7e4e9c6580d650a834e74176398a2bcbdd270d9c4236725b53307a247d271180148389d56755606a87340302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100cf938755818cccb1c831020a03401ca1a0bd1789c617003d1ba5eaf2f7b9acb5d9ccf2858db345eabd60eff6cf4b74ed023071657ae280c880c4a10f093b483fb01ddbf414cd9560d2f4f94be394daf76b23ce76c77710b4da4f33c27f707deb61c80302047c435bb500683066023100951b1798f6ff1dece13ac345e2c8b84bbf0bef1a159874080a3d4e50563088d202aa3770f678119a436693c5df2a43cb023100e5b7242b4ecbd48b1b2dec447b8ba46bd6c1905dba5d8b759b42813c3eeb51a707b5e3b69862662da5ada25855b0a5b80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100aa7c904dbd362684aa01c4c9f92914bedfe2174619a10bd3d15f678da37db9ca77f2b591f74e25b44fbe7ca9923d97cb023100fcbf89cb41ebf6784f3611237eaa6b5ed0aecd7a8c8d6c9cabac8e7bc7e7962543491dfdafef9de51fe7bb65f669c5840302047c435bb500673065023100cb25164ec05e52c316b52205b70f783ac12d08724b9220b897a5a89c0910e40b593a4ea6e118233fa9d7fe9d3385a1bd02302cfb98d1d3b7c12cc863870a7099a845a5c090e8f2f63294de4603c7d54e1bb772113a6af218d44a16c0dd22c21b333e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310083975788e57888bad24d176f5fef6347d625ac5ba472f443d980fa70e90854ab54bf6fa70aa8dbcd82d49906942ae78a0230690c200927a8637960407cf94f8457f16e8236c819a71b5b05086e71d796c90a78d7ef95e118e58b3c648519812c15de0302047c435bb500673065023039eefe1baa60f9ebf020911ab5ac89ef03478f0769ec1e41db809c5243574d0102be26f1b5df12bbd310569162765a02023100b2ea474f05a286cf03aa02c94b76c4c1ad548f1f9100c369ad578f4a6327a38b9a289031ef4c74480564b8dc64034be40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502307fec2c209d304764d694748af1432b5dad5c8c576959b43ff872a0cf1f1bcb71bbed146b296267d7840e38d4ac0f28a8023100ae18dd6e244942bf40794f9640eac28fb39482c58d6b997a807bffbd6fe5f2952868db79146086874cf79838006bdfcd0302047c435bb50067306502307df2ad34bb21b17bdfdb3e11f851c67a2b374095ee139d5573ab84ed802b3779b622a5290337e38f94072d02488115b1023100a1188250da5bd9008236df7d5f5721156c1d9822459551fabab7b688867b3c8e9ec07e39614fe68bfc538e314706be980302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f4fb95006977daf26c8ec199bf1511fdf1da9347ae86c4319c2ec856a29f696ac857b0e79f224d602711d166ba9b4064023024031347c51ad5ffb3280c5e06cf4fa413eef814a1366c403e2496a21fd6b0bc1144a5caad102040265056e21641504c0302047c435bb500673065023100f1d7d3205d2794ab6a40ec3115d2bda26c93902c2abc190fabdf38400834ccb1bb0770077700d967b10dbef37016c3fc02305b4f43aa75c5b17930834b449dce6d83d1975fc9d342ea85c645f2f7281568646db723d29208b360ade8e987e742c1a00302047c435bb500683066023100b56f5855b220cabb8127cad5620e16270b53b03e03621a5a5c4cdbeae34db7a63a0ff96bebaa1da8e752d2761e241b16023100a767213f3cd94e0180c0bfc7e5ac90857b074a97ba231d481b6d81b8f464d8bc02f311c40c50519e53a68247e6a1ce680302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b3e8274c8b5e73bdf48e945ff378888dd707606071076f60a1c6e4e0c4422fc07eb4786fae9a939304d358ae599c17b9023045da11da1c866d231d455337d775d275ada3fdb27920419036aac141e0d478452627f858d30e365c40131924115a3f2c0302047c435bb50067306502302abdd269794442bd89794aba0c36ed74bd9688dcd667f10ca0f0bbb157a2c74e0a80bfd76f08b821656e3d5f2e9c7c97023100b2968d2fdb6eb2e83a6deaf086f67cf2f24a1d1d3bab03a47316099fbc3bedbdfe0c048561edf1b18dbd3fb91f81647a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306cc2f3a3c77f5117b7288f82b32b7f02925dd16b9b52f4c49bff803e4e6d8e05346b497d4ec54baabcaef034ae099c74023100b6b6e297beef1ac44cd73edde369a46261f2ebee2b1e996b3d13079d168736a1b1db9953bbf746353dbba3a3e43c0b900302047c435bb5006630640230792190798d2c2e046d40700a750f5abfb773f0bb99bc6ec7be5623feb293889533799cc471d28460dd8fc897682f28b302304c0d38bbbf4e02f583a941eb3d0fc71866de2386ddccaf150a4fe28a1b0a968cf3a11370f1e094fba56176f8487342090302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023040f0179f5e6aff8caf0a48b3408bf3917b4990fabf43c3eda86e0b771ea08a288b294b702842434a61331c9d988044a0023100ac417d481be9c7b61a975561f021f24d037a9e8281213f13236d7dd8d033cb5af307d246b448982798306be1b4c3bed10302047c435bb50066306402304e3ff4006c33fb7cd6a7b08f6cf761f020f6475c8cea8ba24144ac2b1424bbeff0b253364a24a9f977880b2b6fca139f02302dc2aa8d0d446af3975595be6a4265958379c9f72d6e5736886a57ddd03f8fed30f0527474887e4ccd4a8013d9dc2b750302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f118541a745eb04fcb32ad24441d63c50f871f24fe8726f603cace3769b8419e2c8eedf3044b5818a429f9feeabbfc67023030f8d42a65138205b0eb44944ef4e8ab900d4e2595871c81fef8f0df212da7f62d8d4c8204b4accbeb3e166507d60db00302047c435bb500673065023054f21bd7105a2907d673a8913566d947dac2a5139df2f3e09a1061902d26b1e9964daeb9faa2fc1fff9ed0ca3dbe132c02310094c96109eba7cef8de4fde9aa0a816bf3363ebf204e0b167198f6f5d263f59ef7aba0de858fb81fefc22cc04323e91ef0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023054b53861c9b60ecebe43decf26ab7727520065b8cef9e90f0b8874e3219e8e5858fd5857359da63ed6436a187b6c870d023100f04fefcf9426684d48e6d3a80386db015565f6caa7da08ce6176d080218d003d218dde65b3710bfa7921f86a72d71d7c0302047c435bb50067306502302d9e587c7ae504fe4c53efde720d5e1ac4e714dcbbe6e6ef83b0bbfaf4febf65bd5d204ecca5efad98fb15445fe52c7e023100e9b6a340cdf8156b378a1abab18255f7638bdb5f0d8ea449b5cbc15938bdeb73d468f16f1bc27e9aa3f4e84d5cb071a80302047c435bb500673065023054a11635b626c55b3343ef9aa0167677d58e70cdf54ae5d3d26f296fd46e1ec7ffd6f66d3e1af4ab7553a0f0b22afd5d023100ba128da56c922499653bae267753eeb1226be6eb8f9711712954698f9d52e694b6ea39a6d39a003ae9959f435524d8020302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023007a586d707a59f7e7e65183737f375e4c482329650aba703f7599e412cb9b6789792e175dc27182456bc7deb5eb27513023055db0ac500966b54b2039180150f018cf2bac56be80cc3d3ab803f18bd7d2186ff305cb1f626006edd8adfddddf9fc990302047c435bb50068306602310091da9b2135a5a54bcf37b77412671aece36b100553c506569a9d62b0c0639684756acf148e5a04c9ae9cf2a1f6220d24023100ab6cf4b7a3017c5239985b70903543d2681ab761255db92579ae071e1bcb6bffe66f9d9aee602bb6d57e7c5345d8e26f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305d108d0da4ddf994d329ecfc7b2807a3c6d021c6fbf122b9893f4d13bd1e7a4b7d62c8714d27797c157b1c2b39a039f5023100ff76804d00edfbe223d29d9f1b1385f9014410a1577ab41ff534a0156ac82851297f9145d6665b33d2891bf9a71186cf0302047c435bb500673065023025f031fb004f7747930682d267df04daa722bcd885b18595bf8a6b7d527d18b178c01d2c612d1121e2ddd628e86c2d6b023100aa989b386d3b8e15c577c3c0ed760cd97ec95feec9a0dca6d06db625c7f294c5d7e3d6729281be081dfcfbcca30569680302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ab54e2c31ceb935bbb08d64e600c69729dc5d096bb2fc09ad4173f13ddb1459d8ba635fcb8a241bcdc81b103779f5a9b023100e43b348d018e84f5435597270e3bde212b22119397300bb05f6ab3c690609eaa710729fa52efde02d439562efe3c1b7a0302047c435bb50066306402304a8c5e39129965c5e1c0f4471b6625cb140d2f030c2035c82d0b2838cc04abc5c3b7e48b622b6a886957fb624cff9fbd02304f436c71d53e999deaf79f4effe6a3182f15131052f7c614f8eb8bc5ff9296529abb06ecaf76b5c2522a4c1a6a9b05fe0302047c435bb500673065023100c6c6327cacffd8dfd1cb7bd819775c73c4de639854e3eaabf9d436939c9c1bff1e54d72a93e1443fc603a5efb14c493b02307432d4db60e2f07ca238a595da61bb5ecd6f130a7e37286032aa3c561af3f94cb9e8c9df90e967a6a9d9d40b8ca951c70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c49519b0164830cc0b76b55c7d824739a1bedb5ade9919a13a5b559fa3cfa976627054c138cc3f82da059683a252a0b9023100f238d274a4fdeb7a53b3b332d4dedfc7fc0d5fbd0c9aef89968ac966c7c427a404a6d82f8779ec8e82242d74c651d29e0302047c435bb500683066023100b03f587cfd712d01baadb1fa7e4fd8bddd5839757d6997f9bbcb2f966953eead2ab46a6cf03ea1e24457153513221cd80231009c10bfb4347d471f93f257894fa5b0dc7ea47fc51e4238206073d076bee77e66e54fbc9a174bf23d53789cb81d5525090302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303cf54860cd929034d1d85aadb2f7cd039c52333a72b2a3d30ed72f17125d6f78db9dc8e27db77678a14e0b42013258e0023100915cd14f94b53a6b0123a35b03e07f49d204da0ab73465eb438a153926fdc86932113fdc7ba55a340259e1d85761fe230302047c435bb500673065023100e33ac2016556d6a1ac5bbb7debf852bc1f40b62680a79c51879ccf328aef3b13d694e4f8ea37984e4c76056eb2b25b2402304e473be8abc902d8dfe5b9bb035cad6d7a77d56ee1982c84618e349476314d06eb116b6e1eab66badb52e67220af8f6b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302fd2f65df289d364d060b92ef767c8cea5c7d625460dfffa57a5a14594ab211a127a5076350b837f8d119b1125ee7a100230682a7f6c1d3f074bc48b0c3fcda583262c260e486f0ef5956d0f5b0da1b49fa08792df4b09530c06d63b3dc5b215fc1b0302047c435bb500683066023100bdd59e5f36ae2b5310ad8d7c23256b6c142001e525417b26b29a18f5b176c2e10287b007108cb72e85a9d6b75774d6ad023100847402fdecac7b86f8f6df3c0b2fe514b8721266eacac88e868f7c34030b27c66efc9ec795d6b5d412e116383a3ab6de0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304140d189a56b944682a6d9b130d3a46992607b82bd27669b35ab000fe24398cee11bca10a561703427081cde360dc5a6023100ef7ba3941b1f295195035dd4ace31dbe5faa350ab0755697a1533c3b7f958ea08e773623c525bb8503ec2ee8e2e5dba20302047c435bb5006630640230419dc083475589c86be834beb2eae7ffa3282db650e9c2534c159120c2a64050a020c21749d27357ed1eeaf44d464307023047b0fd12e348632c18eb4e4d467e1fb531e825060be5be6d674ca764fa05aa3043320714347716873180fef073135b0d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306f1532e4c0a663f014930e07fc1b470c5d1a99779df41dc10fca7bbde1a48f550c3932f08105d80affa43596a01c6ff50230467a598f0a6ac0a9f361f78d788c0f39b54edff8e0e1c1e9b466910844691efc42d4162bb29e0e1f6f8b8218f112eb850302047c435bb5006630640230117dc7ec37ad7683c34a292acdd8d3a2310285522401a226bae2789f887fa936343c42e0ebacbe6a14dade827a7043b102305d106c7c862658839a3e4c34bea0ddf7d749a5e622c3d79b97e688a0dccc01a6f1adcf9a5e50fac0f7bec14cd3206ffd0302047c435bb500673065023100e0acd4b41aba10073c7fe811198f7f8744133b2d3582180b822ca95b8578ec28f02bdb2f23eb2314398a4c7803d791a702307da87616f68b91576edaf158423970b0e0c68cf312606bfa12dc408997e016c5cf8fd936ba2442e537f771569df72c360302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023060ca885403c3eaf44830414fcb1601e4e7249601b5baa8e882d0e57e18ed5b993a4caa5cad00cd2d6e86f5e6258c8536023100f0b29bc94f5d257afc97608e147f0f78f5e602ab68c0e9480a81e3f2d41cd4cb84a37966157dbde36f0417ba37076d0b0302047c435bb5006630640230008921e6158082d83290a8036363d28f042719bf8bdb188330d95d13f974b6af60efc55e3d92d9b741be964583e598d3023063a6f9c3e8713303ddfe7c3e0e5b14bbf270fe6c5d8c11b343030091437ce69f1fff016a94b3f9a5990ba0cf0ddd36e10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ff347cc045580e7a563b13fab10ce3a32a310e35b30376e862f82916bb2fc45fc6567a706377b49dc83e953af9f4d6f20231009b7bd64b47f78b9c3146baebea0c08369112118ca106825094dd792a2cbdfd7a3042dd765cca63e720fd99686dc5aa170302047c435bb500683066023100c93148eaee39b310f672dedc6dd57fdb789780a254f589e392b2c2f8086409d1fe3f60e08f1c27339c5d5662af6a9547023100efbbb16f428070a36ab4d95078bf0327e0db3c59181a3212a199327f6ec4fe8b3879b8c1252e0449485e40ab00b40f4f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310094f3c26cf33001f80fd62f854c9404a8e1ab7913776d644743fe7436c559e19fa417b89ab80fc8fb93ff7949ccdda25d023100f5d2649a8390b2e8de2315e15eb6c8af33288fff779cee3764304ed2228e8f118e14d8269326f7c0c9f450128de94f170302047c435bb5006730650230228604809c0aa0df2f9951d8f7bc7424abb10ca28a9e79cab54442997e94d84f2d03a8253fbea57a7c511fd0c6a86f6e023100f9332bb32e5553ac6750d86ef5848b870ff75179e867ae3b975000af6bdd9ef9b3315f7773ad7d0c0a2dd6536ba642f70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e6e4395ae3583f4b248e2a17ffd5940243d0aa3a9f4aacbcd627a328397c9a8bdeff4b140d5337538789058fbcf989c002310096536912588a3a0e2116cafde7737baec589ff62aa7ec98042c61473e951130c742efc9e23c892c8f0e7dac347cbcb700302047c435bb500683066023100fab04dc6af8d01d78523953fd36261f3f68ee441e8316ba62581e7b03da45208221a329a486eefa0100071bd7a7190a8023100cf0cdbc37bc2854e64e410f26f218006db0d60dd345001f6e0a8e6b2c8dde6c1bf563f2ad2e674a251564398ff76eed00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100cfdcaeaa2132379c78c78ffa23990bad80a4a893f40218a1e485505b62c3c609ae4c1080c7ec89cf9601b253269ca0a10230520ba0f4b44341effb74e31f3a9f4b132d39bfc16a79f73087fcf8f7659fd135c42ebdbd06df1eab3c4985b4340345b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009a20e291c8ffaab5d025d8c1c1d2e048fc65177ff98d5b4fc24b72091f229f0502aa42f45ceacdd502f25ac7df8be8e1023100cb30464d45085440ecf262b7fe6b92baf53067613cdcc859aec502ac6c272cde26bfe99d5bb1ea4f2a07a9ec8bfb8f560302047c435bb500663064023011b8a803125c702e3830e931cb12365359ea8ed228bb2d4b242364320a379e544537cf8fab3e7eca06960f3c2edecb860230625554a8056186cab26abb74384f06fd939b8cdd39c79430fb65d336f3555f6a72a604e2aeb0c91a7edd9ca7155106c50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023060e05e55a4ff3116024cd81703ba3f284aa151af5ff85ca7399ba5f88324e70285622d3c53f082c08c433a0b1777062f0231008bda2656614afe7507ae5166ebb2ae6b7cd0d69bcd54a79090351faf5a8e9bf78d6db2303feca2a831cc82bba35b23ff0302047c435bb50066306402306a0131abe80e79f989ad9fb0f9184017aa0eccb97f0730df4b9976a340acc8f16018658bb280b5531096fb1767ee7acf02301cd0aa75c72ecbd45dede0068784f87dd9ac2f06dc0d3a7dcff4bd8f2e6c6587d3ae64f6e2149c66ed053802706986950302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100cd99649e9366392145477766bfc10b1b87d1f3452853cd2e067dc431710f0619e794b66353253844ffc403ae58a23f0e023100ba950d191135a033bddd390a8a7cf1dfb4fbbe57dcbc36b661f86ec30f1350f0c0aa87843d15e0b8c390c73f80f98bb40302047c435bb500683066023100914de9b30273c3ee61570f65cc45c3b9617225f08300107770c5a71a6361b861120704c0b7aa28828d71246ee653f46c023100ddcdc99a78292967328fed956384dc3947ca96e0a8d561edf60c96a692c7d0e6b1c71f1b6a246164a97ac15430c911c30302047c435bb500673065023100e0acd4b41aba10073c7fe811198f7f8744133b2d3582180b822ca95b8578ec28f02bdb2f23eb2314398a4c7803d791a702307da87616f68b91576edaf158423970b0e0c68cf312606bfa12dc408997e016c5cf8fd936ba2442e537f771569df72c360302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310082b449985813c467e928d2f1b91280f1d4fbd5109157cc650196bf4bc7a485f7d4aa81c19b625c3a1142d667994aab29023100c55f682f6c543eb34cc4127e7f10ab481d02a7bd2e51bacb45c7ce5e9f9c0199ed0a78ac0d174aa7d91175720dfa65ba0302047c435bb500683066023100cddf4c216426f4c86b83ca04e8abddcfba964049e31456e1f33b1c0e79e208e3c171fc5b6660dfeb4a98edad28c9d60b023100c8fd20eb3020a35b9ffd956b53284e56c2a44b427689b40647bbc1f4bfb2ed8931825c5f18eefce252c0a6946f5523090302047c435bb5006730650230478260d58e2cbc092d457bfeb09c59957483a8ace2f1295a6a9f7fc32e38fac0e15c7a954cc75cb8af3a7924b9eaf686023100eeb6ea85104a3bc0c300756ce288565462a0b9938fea434ffb8c605ac4da823c36dabb9f8e494c2f1cd8a410e94d770e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305d453c238121b6eb9b68848a5a1f42d4b5cc96ad264082c8d78422fb6e6afc8515a0871a0b9cbe3cf794dcc80a7317d602307a35547ec4b002e4fd682267d85c2f70d6761e1b2024e0a075eade58e02da0a03c2b3048b5bd424d7ec2ff12ccfff4680302047c435bb500663064023066fe553cd0937b704249badd650089b1f256d7ac87af7d6034fbc616be11e26d438532af7210e16f298a13bf28f4e3e8023039fbc66c239d4fc511db7d7f980a3d01fe68fa31db55be21a4136da5139af85b5e20b65fee4caa5479409b2d41a302a70302047c435bb5006630640230053fc7549fcfac98b2e65d554bc4f33436501d0c6c8f6348b31c0a0e7864c9d65767946fb87f026769cc928c2b56f0830230388a1c99a4409da82e3acc99c2bd26171ec3958c9bdba17621cbe9f4848c6f281d94a630896765ecd698ab761d99841f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100aa56645551d7d8e4a76d75d330eeea36813393685b023617491409c70ab4a456e487083abd60b77c17af99786619c0d2023100c84af21a1c7cac3929b719b620178013ba1095ca89ca32f676efc70022106dd1a42312d6f2d11fe418df5b7664848e670302047c435bb50067306502303d833116d5ec47e7e6abeb462c4e5bf3384cb7af767ef1de7cfb9585c2d857ff6cc7c6e281db8d2fa67d73923c0b3694023100a553a038ba84e0b00d34e63ca985b69e70eeaa77156039b97a6eb321d391eeda502a396210f3f99add0f937cb5372e950302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310089840bc782672137e513371b230bfc0bede2e69bf000bddf2c40d905f2cf32d52ca1f7b1eeb923d50acbf1e37d6557c002301dcd87804e1ef93f96c85c21e6bcbe2ab1af7df5efecdaab3e74533591bc8a4d2513aa34665f944b8bada7b27971c3bb0302047c435bb50067306502300ea23782ae9872bee5250c7d7228efc9712014e67c9013df9fa7c527ad93dba1df29225604041ce06de7f9e472566759023100b509fe41269c970812709f1d707fe6c75b9a2e314b2129e6067ceb50866c3356dc908c1398207d608791201fe00d2b0c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300f00bcc799c5e180cca634365fac20902a90cc32cdca4dce4046a89b29996a4cedad86a392ecd1a518ef97a227740a77023100dc17293839922e53bb9007bf7191637e7914a46b7b77f1ca2d95ce298fcb7040257c9fe0ae5bd02157dc6a5e4ad2ff2c0302047c435bb50066306402304196c6b3e6077f8d46de6b5496c2361a9769e0f53e880aa9e39137cd5e8fdc75ef7617f3e7df2670b282f7e06d22e34f0230447df2cc2c979d741825544b672c378a3314ff8ae989c06dca9b0878e97e5e597faa34ee89bfdd492589fb944b36f2e60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100dc981f0d678d665d9a73f696b3195030942ac8ec3adda4129b877b1d9d79ab8791f3bce812001c8cdc97809eaa6efc9b023100a98962f20c6949463c7aaa90ca4aec4e885f1190f1e86ee5c883d56f628a050740a0fbda8a327cda456358304dacf8440302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d49f7421f29ca2e8258eb0af9db950246adcf505d4860dd570e920e7a8b370544bec26924bf0f8489f4169bb601cef62023100c54a023c9955022623d54ec2f96dac04e0f6f7653c57c92ce1f155dda84261c22399aa646764e2c53a67c04196ab977f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023011d4f45fe6a5b92bd6427381e071c990aba71e5f6a0c75242b042f6359c1d41243a19b88df8b73e3115846ea60239d5302307a4b35f23e76361b3b97634af7b3e6d93914ef3563e86100123ada178a9ce3e22ffe23bf82ef4d4ce9d29e66361560c00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230524f41e65f60b472122a08fcc714867bd1c6d56b7d20dcf9f5c1fb4d4175a4757c350296bba4e1b93f9faceefef51ec4023100b83dec556e17803254650ecfda7dda73f59cdb138cb352050fca8aa642dbd735479aa7c91037e4d536f3d47a6adda5430302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230651230cad7eb7e7a87e72c099eb0948db976a7f1b37b3b57aef0f7541515a89e82715a68cdf2380e3ffd01dfe7180fdf023023be00674f1becf45841ebf322684a13ade201308c27d3ed55839181e356a91798cd883c35cd492a169d69df0205cf250302047c435bb50067306502303b51dcb4b40ccf2c04fe2406406fc20c7af272c0fff8cfd1986f0732d05bafbb14d91a2936dd66c474daffda0022aa02023100dcebf277979b15076700fb4605b40771577a01182ea509dcd3fe14b1f832fa0ff6c2a0c333e4b27ff22a01ba6bcf1d370302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230791e1d4900bbd5f67a132e002e63139b9205403bc218a4493a3447c01625898b7267331cae2bce69d2c64c02bb3c6cea02304c29a87b7f763f6347a1857c9bbd638af87608e0cd5558644928fbd0420fc690c4fc33c53cfb45f2267f104361f670460302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306459afbf6b7650e59f68989c38a940bba6b134181324f2821b5baa425a887ffc70dc71478ef2c0b9f0c62e2bfce24530023070a4806a039d75ae13ca29beb5867b2baf78f3331197001e55e3affdc78baee8ae4b1f1b9d2cf10ed8ae425656167e0f0302047c435bb50066306402307cf84cd90bb6953be8b2792779942301033aeeb9a7845a17bf7ece6fcfd2dce0c4dd4d9ac56769f517b8e9b7b7260e130230630b6210145be3fed7a3fa823abefe550ea7bb67a37b1ee3b922609053c5acd273d3e8d843e579d05525e7ee863ce2d50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008754f7f110007bfcfa08e2e3948d481e10f8c597d6ab372c0b419ffd8d1cc5d2fe41bfbb3174858f390a1d31322dac6102302548e58eaf695b1f1b8823c62688e67e784b4db5ca4f0f939e74cb9b30348696468344020089456f861631f2dd7a5dad0302047c435bb500663064023054b5e7ed70126b0de4b84bcf38ec7525bcb7d77d670feeb6eb8c3f6e196252527f8dfed83fdbac11b1ab312b2dd377a60230134c566f32c98307f99dcacfc814777c9f763cd08e284991d2455888d871dfed7d975df349300adb4e11cf48e74ca0ab0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b92187485430a4589a96ea88b5f1b0023fc61f06ab468f9d812ce2f34a3abc5b28119d336292b2d97bdc30a8f87f6a6602303e438930f14d23aa0edc5608b10cd177ec10c8d0f100d0159013fb8048a4831728ee5ce565ece5a150bf3822ef405f660302047c435bb50067306502301262e505050556754b01584395e23753d461f2ffd346796a6b34ba1226671bef65d37dba5a7356070c4e0144f228ddfd02310087c34de6a7a77d7e2ceee21fb45c0952aaad5b7eebe360d379ce24f83e550ddffb9bcf40519213b75d3c1ec0e7f2520d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302a345e06b8acd0562bf086d426dbc1a207f35976d351a49972220790f9fec2b3b557b3199212c835589c51cd3c1ec6e7023035345fcc2ea340eb477779cd743cd86dbb7043224ff1776439f417482315b9ef0d1bf711a34b4997532454f4a405ff2b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023020363acdd709f4b4079bcfe3799cbf86a807eff463ff5a7d9b236629fe7102b8cd0c2bf777fe4cf62ec889f85745e089023100a5d35dc0dbfcbca3fca3f8ae2760c8f62fdebd1ed2d046f04b2182c7fc26e021a009ab4644cdf8f55868caca2140a9370302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301648aa34df0658805823d1503ac3a30db9bea06d28c4af3fa655c55ee65766295e921f5e37f0363ef1859bd6b9084f75023100b2718d00f36dab4389bda1e521ee2bbfc0274095b866f2a837255bc4aad0e10a41c0aa325b06232410f9ff1f95d65aab0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230436b7f3da1ae578824aaf110d101679fa7c4a6b722577f7f022898322f5728d3a120ad9dbb7a9cf21fd0284d2bcf42aa02302efbb4a357d10b8a851c982ffffbd71ffff38c210bca1156cec45724b4ed8793780df1073053ba1a8965aaad6d3a9ca70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023062c8ce3905fc3a63d1a53499829dab8c1d1b5bcf35750d9728c72d205329fe8f392d68e6e3b5d9a00d8de3e35846870a023005a3d477f57e3c530a69560520cc9472b39d659a2c73f5eb3ef4d26dbf31411452a86368bf813782df68c526749b9e420302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023053d0bef4efe3fc042b3dd947aeaa3ffb94589949d097fe28e6dcd7809d91799e658a05157594fec1bc1a9c929b19fff50230280cecfa7c2c514627c052bcd362010d0eb68eac2eeb73289a3aa72cff5b5d7aef287e1aac3644b662212f6302ea58710302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a2bd7822a9b2fc0b3e726333de95adfdc1653e08bc57b584ee641a04c2064d485ee3910433551f0d8eae936513f2a7db023073c3dce8351f83e2202ceb10bd48314efa53afc81057f2a029474434654828dd26674337ca288c4d8e06710343a3fe120302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008aa2bc4ee886878935a3ed6f8b079ce69927bd5b2dd1c0a6734c5bd61d459fcfb28447dc626f01f87f358abe7c0d56d40230509a90aa0f556c76d9d83dc205d2b95a891d0755e39d299b2a23188dfd5b20098a9840557a9dd0afc578c554c05c78e90302047c435bb5006630640230673366b0939cd9ae44acaa98b7dea0b66bbc6977cc03cc638c7963218a6ff2cffb71741982254b623194514488591e63023041cda80fbaa93ffe22aeee90584912c81cc4bd7a7962d2cce8e434be89ec8d406f4199fd1b8a49ea0e2b13050bbf95cb0302047c435bb50067306502301d7f9ee9e58bafd9764cd695c9e0a773a59c07c078c3b324eff203673c67e806fdd438146d8370e8d8b7dff236456702023100dbe338e8f547029b9c8545ce7615d1d72e087344b3c90356d8e79fd0e04ee5af1ee1dd4579679e8fd5bc10a062660ce60302047c435bb500683066023100ab71764434a81146e7ed08430143897a3d5aceee6dd2dd7a647eb540c80ee019685b4fe687108883840595da753a7dee023100e56fad6bc9a20ae65c7cc2db113f23025663d379636592fec608c522972dc4d077750eeedb140cf0b9c19a41d644d7c60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e798766ec790e1959126d3df7787f5f02c05f4d85a3f32aaa25a1544873e2dc75eca6498d59120bc85759c34d66bca7302302b10568d6d56299290b395ca2d7315739b06264813f8acc4fbae216bc96950987ac84be536b9f285c7bd5fb0adaff4b60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304d9e736738f3545ced112d77e94170a33608b24e66d1dfe5878fb9b29c212206d89e5fc2f8f9eb0d9e3a26a418f492a9023100f1a95c2958c2f3d66fa8fb81a50e2dee004aac4c0cdad137d50d368bc0263a5e05fca9bfcab131e8a4665843b80f17490302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e5296e818241c52fd5d778595efbf2ab9e851431feb37e6944834bd1370566ede61cb544e3561c4dd887372a412cee09023100a5aa1699e2a18f10a131912383208f78e9e14e1b259117dfc8447bddb0a8c4bae7724b9f42eaf849941b84076f6e7c990302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a2c86cf0d3381207f2073fa0b450ef79742ff455b9b344f2f1628d8d1e153c8b244dd2cdb0eb0cc04fd8be0484d46710023020ecf9a035b52335f2fe921998014c3a0cb9cf56151226b21552400bfb1757901ce50e7f203f7e2e39886297db26bd0a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230730c7d1cea0cddd5a7290410d128f7bbc76b4547ed7d638568aba3e84de5cd7427732d164e468d6acd68f9bd8cc498ed023100994af920c931323b4fb7a50a773375a2b3c3cd49fde8216789f2665efff19e009318e84326aa82383caa9d50224774050302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009819b18e6196d51a901f943dfa11fca5048c6a18efc738251e408c05ffc7f36a8e32812c208a90f991f9b32e37928a00023100fddb7e544c7cd939ed5c7ec8bcdd52b548c8cad684f986a7b75b6df5fd386da02399e304f202182fef3f0e2692b12e910302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310087ecea093e36a80acd3bdcf6fa79d5be0d86579ee7de939ceb25ccd091e7ada8d359c038cd920f0eb41061c8c2a04a6002303c935d861654c25e81e55dfc25b0033b9964333731e8874c4c6aca884ffeac495a2d3b1726ed248c72affda3fe85b9140302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300e4f6be7e8d79f36097ff8a39fe847a3c7126d1e7ecf114d484048d2df86d64ae105b5772b181f1a6dabe0701ccef34d023014cc55dbf3317095ec720a93251fc384ffee3978f94f7be615c4112949d63995969ece05e1ef01a06fdf39be5fae66570302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b12690bc83d6b2fa79b2697371c8a7d4e9f1a2645a772be87a58512aec9ea29a50b44cf63b68967e7c06bd3d1f65577902306ec2955902ec53a77ba726d3bce8413a56522f325545ba63db2544a0f08f703675b10b07514e8e5935f7d2558fc7b3e90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230344b4b80ee8f770a61f7c6c0c64674eafc3e5960ee9f787ef3e4e4a1918738ed5ef12eef50feaa5abccfda445662c84a02300b00bffc344326283a459ebd97bc2e554dbfe407804aaafb75c013cfb4bef98ca2041750737659734a80a7ae0a54426d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009f69dfe760d5fb062c54b84ba619cf3e80f12f7adb504a0fe0353ec70a9bdf218cac7c6bc70a0dde1008d0654edba433023100a391517408ec3e61afdafe37aab3d6240b4f559114f03b0ef334099f478385a7dfa1beeeff0ec2323c75cafcb53a83640302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d0da07758ee6469dbf4357e9701da805b200953ab0e41d10fcad41059cba8af883c315863db0bb52c278f3108ec7035e023004bd1ff2535c6f52a13a9802a336a0e8ed225eb3fec0995ca6c8356dcbfb360a8ac6da94237832c1ff2966e1ef93e47d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310087839e7ad7deb4672ae49241760a7c80632b58b487251dba6c39140428eeff1fca8dccb0c59bf1d4969eb5be5899db44023100e04da528fef6e47a7b709d9ca39c3078f856df317b7896b44de880c4357d08fb1ec567fb44b7ca87039919078cfd414c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230204b5a167da492daae9f44382093ca42158119f16ce20b255614154d1ea99017db4fd06abb596885b1d1bc1675c7d8a2023100e5f37dd49dd8f710d67436c497580e23f85714f6ce49d533e64fc345633f48d02ec31f9b773d8324d3eab34270446da70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310098ada0b05c313c4f3008e2b2025327fab47a07d3b3b2b8d86764468d4eef581d292d228e5effc2bc4ffb75942ff60a8902305240cd143c0fe72c4b308517686ec208c6d50a0559f9f5e3d1e8a2cb47a9b073dbbb7d354cf6ae5e3360b9ff2b476ccf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230509b14a54f255b0accae62485bd8601acac0bb9374a35ee588ff25a82d9c4fa3dbab5c027792ec19ffd4640c06836faf023100dfe21846d8c0857aa66b04a4d2c64e239ff8df5d66d2f9062cc9dcde4e7720656cfcf3c50f04a6583bd54fc11b4969bf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301fd41d729bb04871cddcf084ed91efa42c11c40b0f133a91012faf1a51843d20c686f7838d3c1856dba7664c51afbc3c02302a38a6aa1a0178497fe7726e6244f4020a8e77f2b2a9eb773537a963e79908fd78ffc29cc366c9bcd51212971124e3200302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305d19519692ee198cc600b9171c0af88634ef7ad3937db2dc32a0702e6985cb3f832c50bf90f6642a3c9f0abbb5e7bf9e02303e8711e16de123867aa954c2014687df5344a1930864475e1dd187c594ab73c4e8933e2c74f06de2ae3ae5aa3c85cffb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a8ee78d5bad835533cdde3dded31c8bb2def3929799b960ddad8f6cec30a376df17e74506417477bd28c808ad46c0ecd02310099f162eeb0bad194aa92f32868f7ee1a4e6882ee158cf68896415724582dfcf0907404c1975077729b72413fbe1884fe0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304ec532b6c8f3cac8c388d90261e97566ef77a64acc7dcaed7dee72859f59b1bc351652a9ec6574c08d4877b4cf9b95d2023100f20d25ce58153f41407ba98889ba28c789bf81c6241e8df5be40ca40be8c4e230d09c937f45332b8ff10002d41bb6d270302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230754586901d4f031038dde37bf09fb2f3edf89d71bfba0140a5f1484ce67be464af87e87da948a4741aebb2f1ff7129e302303fc00a8807a65896c7a63d1f3651a12d2c503c1efc9d7f93b2a43d5fef324628b96f0004bb2b237656e7babb76abf3db0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100923e4d6af56a267e30ce90704876e9904bdfaac641236097079ba2871a4435f540d9780bf43690145016518cf4a3e44a023039684a50c8d143df599cb3fd4b0899e09993016fc3a9c0266f0c3a7c33b80e9285a0a2c4a5e62f52ea564db78b11758c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304642222dab31eaabf4d3d9b5a7e134eb21c6aabacc1db1359cdf517d5b9fe9e61983a2c443ddebc0895562d5a0cad5d5023100d5e084797685ca6fdaf39f0e7a60876bd78747e8f0a9a536e748c0146ad8d013a8b72dfae3923cb18f9e1899e788f6630302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302c3f2f6745dda065a0b7b0ba671cc72e65670b44b026321583785307ae04926b4e38585c2bc4c01bfd02a16339edb80202304cffe231f74077b9172490815824cdae965de08a328a39f2525c0d6645a295e93e35bb82b59122986c5e1f12560441bc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305ca9a69cdf1d4c4063b6875d2620781b696cb516fea7d755fc6b2eda39a4faad025b27443eb2fc0543a8a3b2c3563cdb0230271c9c5f7de93fe12983bd69ad8ae0c9e5593f6db36d245371b0cb242aa8f94099e7a7c60ec7ae7e4fe8a6afd84061340302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d6345c1045977eebd05ed358ec8ef167fa3ea5007a95bc4e7ff7dc29411dcf615a5a429a6b4564d3f7438648b63b478a02305257f4dacc21e99fb412d62341c00d6bae43e932fffa3ed6e731a8537ec2b3882883baf7e73657a607fcf235da64d0a50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307394cf8a8b60fba6f87358f7e8671eb5bbe501baf05937910c22a2b9a5cbcbac7b31e323404ff1e5adc8697dd91e8e33023008bb3fc1dd24851b1d014444291be428cffc07c82de37ba7369b12d8e4293c40883c31ee62c5fb807a84b8b682218e6f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e9761fff4765945fc7e0db64ba4fd7bcaaebd216b9a49f0e7324ad00f9b78813486a5a26d5fb5bb1a711945ad1975cc302306cce1ea15193426bf2eef705380baad14dc71c4fdc1830b339eca9dd8438ead5bae594ca1ca780481d3863b605b9e7de0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023015a9ba2d2e56656f5985dad7e68b32c8fb49b2258c9c339cc4a44c2556f4e4f2e7d04ccb0787b16a2f8368b8a13a65090230674be35d446b6af3f9d81e5ab36e1cf24057a1296a3d4d2f05bb574d9cc256a4f909224111588f9a7629f9f54342d10d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b2ed0105b45b17993f2dc29b61ea9b5d5c7b57f5c445f5410bddc0362428eb73db0bbd473417f1e6d19e8fb65772a09602300d007453ff57d7fc53b88c08a32b450b2341739b837cdb9c716e1d61b0e9923f57c422326c82c79dad3b7c425f460adb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008599ecaa9ac180dcfdee3b088a71ee65e5af470479d524b708a3d30b41ce07a1dac3b126f098a954ee2f31d114736b8b0231009a72bbbaf9b3a4fd1e8aa07aef669e877f4524e4e4afed750ceb11e63ffae86e5cb0e549c29a9b26944a000b09e877570302047c435bb500673065023072b50eaf551d381a0bdfa0b37cd8cda0c0a673dd2443b0432c2f3d94b9ec8218a96098b3e0330a698b44de74554849c8023100c3f9d53b6d12bfcda35a84a05c20d5f6885b59e9c9284b0368b5306a09858c561b76dfcf8c20bc430d6216d2bc5601350302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310090d2bbd88c8aeaec17ec7682f35efc6773c3684904f106313888b826c3575bd50efe4ff9f59fae6820065e0ce6326508023100a94d210c6e9f8837e605d927abd4d143ff931b9a76a87665ff2d7e3b5312bcd57a6741c619fec972612ca2737b15b83b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023061d567af2d8488193aef8e5257a88318ee920b72761fb718a3a61b0ed5c671ff5df32cda2bd1276043e19d9b49eba2dd023100c06b349a41b3d0cf0286d1996be33bc2bc74fa92a16b864d6a66e3b966f14ce37eb8351b5db543bab2662289c630bbbb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306223f369d8bf5657078de53c5d10f8437452c29aef99222e8d2dc2272284ced2a553c1c20ce86df1ae08d94241aa54b5023100e33794bfaff28723f814fb3b635b5246e4a48cc0edf3f0936b811e4981c1a9dad4f090177e8de735417755eda2eba7340302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230358599426db678d353537b7765f49f5443e551a70ed22bdc2b80067dee0ddc962264d254f7f41172c806ff3ffe209c40023100b86e34b842f827ef919a105ab62bd373f354d640d3fd33bd50022624d931548c54fe5894e5f435c590da86c35f92b7a00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b8d694a98db50d976d2bf8138fc989d95f52eb87fa57bb61b7abc83422cc29a5e472671d253f565bbf972133224a74de023100cc8772ed3b37977d62f63bcc9f8e596f59f10473111e7b7edb26a073dad974e32a4db133dece40893e91324ed45d5f5f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305188e2cde8db8128d091513a09f528958996a3162008b543d8a648467885617a447a9c6e5fa628972bb8a812a0deb606023100f6a017965d8573f91621746b41e9cd77d74f9c9499de662099fe740bdc315bd80d223bd528d8ee82782d114b76a0e2f20302047c435bb500663064023036e3a77425080cea790e64ccb79f6de0e7a30da465603d5d44979963a00233bb6624daa50d1a9a178f55988a65202b0802304c19895401ec86afe860739be43fc3458b12ef24b41b9ae480e7d0c7f35f13465a35f961b7f8f32b2f60daecb083d6da0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023011b7b888a40bad167c1131c09fc0ae9b8d3db2d163c563e44a0562b9606e2da83d66230da4dbf20338c865c7a3ef819902300856e0a1a6a9d161690ea0e3b3a1d6b5aec29b3790edbfc22a628b3bef53ff6000e7a3d6da3fff9b32ae85e4a271fb880302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303fb21b3fe18a9b7e3cce46a9f1e1dce31169dc7bcee47542012a8fbc9e3058995ec8abbe1e6ebeed4eab243d34c148db023100bb1e4528c235a640823c0555bcc2d184f4cb00b137a72484a2f5a04c3a7c8a7018d58481fcb745b80ee41d218f64df750302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230448b0568030db27642f91f7ed4f093d5e34d81844725c9d0c354045764c964528b915742eac1b66e6dd07bc463e0ecbb02302413e837a5753bb557303aa87ac984e0ad8718489fb27f0441ff8a5f90902449d038831815d42ab1ce11994588a3c4170302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502307ac3fcaa1a3ebea06aa9567196dd83e643f1315cc106cdb80163e0f974b6232a2490f262502ebf4a6ac628b16142334f023100b2ae0eb864d68662afe9021435a48fce5e6e96ca8b4e3c85ae1f29e4aa8bbc16633bb5822d3f6e4c9ea87d7c67c908ff0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023015b64516a5406d69dc0076470f43590c7a632db939742f4fe86b21bec453a6302918c5fcf89975e311d8386b37fee15002302e30eb70abb0f07318eab455d57488efabb7bd1eb09820b97703e4529a08a1675700d04eff0b8c7cf6211a8072545ea00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ad5b649a58c7cba0ff67c9e1cb161bc4257a230cc10bd36b7450c10e67f07f21bd25697fdbca062d8d9dbe71c8336ca60231009cab0c2eed5548cfd635bb5b9f9c31e31b202615304456e460e45a29165873f4eb9b56589708c0e03dd4fed497e007360302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e629be6558da84f2fcf77c2904c5e2bf54feab7b3104d4e55465ba49e7a1186e707bbcc57dedd718d6fbf8ff3592603902307e5280d583d040e0b8a745281ce238ca6a9353647e4f136d53c0d89283ef742a5312a9c7b7d0a1a23ba74617147bf6a30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305a40f1db7c04fe13aa37f7a460c4329c6089f1086778098455146af27d3deda1411a2d9214093e6ea1695f98a3d644e702305b368a275045f0f26f2b5abc9d06d1b5ecc15f4821ae30dc55cce0e94eaa7e4328e724ee39a97c6b8dfee757daa8ae2d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306951cd0ebb3403b5af70d249ab4b3c4871833dda937ab0ee09cb77ff50eda4d69689e6ba48191eb5b0181361619b8a240230613bb2f21d2ce24110d7a99a67468a21d2441605b71b81ce21d63c5bb1116b52c6ebd88fb3d86de97d298d4814556bb50302047c435bb50066306402301cd86ce846e463fbd450ab3c50ebb6f1ed308995d4c8661c7815da2de4bd9c3d0e3c6233b8ccdcb14e1699319914fee102303aadd625ec31da7ec494c01915bf31124384879aab8dc8f0eefcc6f1703bdf3096b07ccb42b6810bf1fe4dacccd1aad90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023071425f38554ef9ff9ed5771ad768a9c0c739f505df8380cab94332236f5ce4717709a9fe4b7e8e6af70ee6e9e70fad3b023077062845653b0bc80e44f08a83a52c64dc0e12a215c981786eb2d8665f34e73e9296991dea2b97fc76c1921fe75fb6e30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310091a5103c508bdd7aebde6979adaa086b8ea3507239c7129d702afc55652b5a72f948ed79f9afee81224d1b07ec463e4302310087e2c9e9f37e53cd4391b12e1b516d58b843f484c13775d9c4951d3647c09c16c515021727f389f3f6fc44f06bcb881d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ffe8cb3ea73b811c14d0a9f83eddfb2e5ab6457abedd11251eab055021ae34bbbfe1b83a2f4d52ceb85ed38aec73ad4b023100f0c35ee16e311ebe2eb3dd680d8e56b266bd914a7eb63b19c015f0dd65022ba82467626d32920901b5cc3fdefcb7a2470302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100984d54713a2f4df5931a5cf63030dbdb4c788cb803729e38c9f071969362730afa672db23aeee03a5b520230a30c5d6202303d5458f723d10777d3b7b97289313f5c410b5510aaa22f6f8a11703795a5d2141be6fad1d91d37e3caf73ddcc961a7790302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402304d93f6828a53a343fbdfd6b46da981c3b5f272612a290f41ee206f78f19e7120e52a7c6186f69e8fddca0c41123e1b77023014dfe15ed789b69364488a71cdf1d0f3032a8a8d0802a46a4b6312077afc6466cea405d90e9de9a57e3b9ccbf8560ef10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305fa7f6185d7e9c7fd9bc4c69e9c5a7cf4feb3c557da03ffd1cea872e2354123b03b10fbbc392cd3c5b715b40fdb75c3a023100b2d650a17156e589f5c589a6e20e60e6345982792201c982810c489acef1931f708abe0873a21859030ea7ae9b474d7b0302047c435bb500683066023100e1175f7367c718e277abf66e4c46d64927e9ce8f764ef29fb76c0d33c4649eb6764b50fa1e8139735680ea2b7eb9b0c9023100df275c3672ccee88707dbd719fd808f6c764ccc533511b32fd67f0e712f4a86db9ad7b4f9609cb5efb5e909f8819e1620302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305480ce1b7be0f39afa155af9daaa1c35b4106afb2af5ab30f886f9f6d07a95ca33ce97bb27f75f107e40168d79a311b6023001f4ec0512ba5b6e87d17c7547d84cf9d4a74a317f0dc80ac59f7d4e11be63e6be6864014ea9b009150b88e19da28a800302047c435bb5006730650231008242f6561399ef41c22686913f448fe1f2dd125cfb5cc8cac9d75ae00c3967b5e42746d3087ffd816f8df16cceb92fc30230034f97e2500abfa752f95b42e732c11be320d555744a00ba2c1fdb458a07978b5bce4cee7d59e091768a2dce1bbbc5730302047c435bb500683066023100c04b22de3937f2a42f983c2141908e8d16532eda7f5ce3b6b66f0e34a639902e60d6a5e4fa736c6062a0b2103aa83e3b023100ee18a479a2a73f2b85c49a96404f5a085b5802b15293a02d4213e86d6ba802ecbbd10341f034bbf88d60aeb2eea101080302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c0821595a2f562d148cc2b948e7290c7193d735d0805ec217115bb0a2376447118e4fc278d0e6b354b8df9e33a45240202304efc8658727ed8273f3694cc435739897310035c796d5d9666240ea2181ce400575065b40139a1ae873abe112e4eeb690302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c1dd9a5363c234d44346e73fadf3732b8defe9443bec36117b6fa8c4ad32fd41eb12eac8c63d8ea512f5be1978037f46023100c7a375292504092182fd666d1c9e11be8eed984b076b70ba6f9704fa68fa8716b806634cf1cd78587b6707d456f6a2b30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100da426d11105b4cf65b2dabdd144218d78578581daeca2372977e387612b8cd3383fcbf0098938d52d63bc5b368c6531b023100d7984f672504509d3a092b2b48a9ffe8104bccd183f4e458a81b655edc2ebcaf1603f96a1cfb0181e7972a178f481df20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f0fa39dbb9ef81c04497155114b4607a64994b8ea1020d6a631f4e72c43041bf4249ab2f19afb744d2dc97291a1c1dc00230049cb13ee22ffadaf43a14ab6b7d164d3c45bda55528bfc85e5ab597a616d385dabf8adb5989e21e465602838bff3ea60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009d2cd9b6cf89faa3686005592844c6fa8bcf3937be088bbe034d2c57afd4e359e595d3acdc1486c25b22e57e78d4b426023100bef4438a38962842661f5511d06d0b9a0193188c2a12dc76f1effa92178c7d0b5e31be00d3912896a34351d3140b8fbe0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ac439149f5bcb97e784e10096855cdc1abcba7a97a4ef5fcf924f13d27ea2e5f82a79190db363e772668d89e89b95445023007144b06d9e3dae839ec88b42f41a3084bb8a473171376b68f48fb252ce81a2d19ce86b1ea17fa331a4818f6970df6e60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302c22aca242d84cbec0b72a8328bf5f6e90c4a40632a752125037d8d289f4949260b014628056a202e95657e1700e5ef5023100c1290aedd01d173e17ad12ec900e34d89f4721bc1cc2337db1ff21fb4d7d5d95e9630a9d9f331fa4488e73de7f0a2fc50302047c435bb50066306402307de0b9bcd9acb1682b1132667b561d9093a4b728c9c42ea3ec510c53c72ea8266745eabd511086836c355fcb82ab5294023022041daa92c5b539e87f51f9eb6b1c97fdac2ef6d6f7009c935078df00d58285b15a0c24d6a5590fad2d95aa3d57f7cb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100bb86ff8758ed6d7c53733f62f78a5ae2ee6ee5064f741e9c76bb453de294836e486e2feb6f656a980d3a84661f40c207023100d8f7eb2260bc965a35e903f9f1f9c056fe3c307a8d3fc0d2de6dbedc9d3f7d50c9972e3513f0b22e1cfa9e7744cdd5f10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305c0d25f1e8f094eb6fcae9f29c7745ddaa1d286ba77b4eb9d246d67235e50062088cb6b94f9be19b395d74157e5e8e3202300d987df78b43a40a2c85362a1e9e10a0b83e1c471928e28b1c50bc98da4c50fcb3b6509b75b8adaaa73db244d68e3aa90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307e14bc87bd6e1e70495ce622593e39943171ce5d3942600c9cc85b7c8ca846f43e71d1165d3ed6c77487260ce8ada86b023065c0904ec92f4be4d84c346ba59a3b120ffc0ff82010fa13787304c9a6a4bbe8805067799a11f97ef026868051a2be9f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310082a80383abaf09380200ef68340ee19a89a3369103541d5a8d555b94d983b20af76d41ad1552620e0ca017b5e7b816e0023044a467375defc2d11714b3662e56014aea2d1238db7f42ae3f1eff684fb5d2df406a300c8658549f2ce21137f1f907670302047c435bb50067306502301d126772e08f378dae1f2fe420a370596eaef4cf175686fbebc305aefe935a565a8ab980322c2c240f13da5918bc55fc023100dd559274054059efef4c4fbfa238559c09b1efa76fc76ad84770d8d99cec4e744ba48e4568113a257c6405d6eb4732ea0302047c435bb500683066023100dd98dc3d1ccfe3ca8af3f61623c86128dc68505b6d018dc44456cb7531e59ec3b077b1c9ed0ba9921f3d75f29a1ed084023100e603f05201f15e3cb5cc3d1a7097e22262b102f6261588cac0af8166ec16cad6efe442c3dd2696407daf312b030ff5230302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023046871fe39addecc95ea0315500ade36e236c74fe87655c568e9e9e50f19ba12a385615e9e02fb3df4621c6b9036d755e02304cac0e03664e6a48833cf833065bd392eda6d1c0bcbbe661cd385755c67a1a125f3b850d7f43f444fa13a0cdcce4e1c10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300a8dba908043b892dbbbed3ed5f8b3738da01d05c0a5cd6b7f2c916ded53887b375ec38ac383d0baa41800e6f386d87f023100ef3fdfe070654fca78ab4a608be0396db4485147917811b3119b05cce59e17a261ba9b55f4d351ad66892e7c6072fcb60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023017a72cc3993c1233974284d745e624321ae59babf9808f217fe44f730d912a3f91313b9cf5af72f2bbae5f6113a3b8bc023100dd2e425c6e56896c773c8d00f8501d0723afdb274c7b781ec76d28123bcddf0d5003192e3d0ff49c46e6280e383c77f40302047c435bb500683066023100f8ce3a42614d81d01c6fde59a789ebec5f0b7290b48bf5db155a29580c6c0765b2971a064b1b267acdd3bb032a44961f023100c8fec8f97d740a7c0c8b6ae82bf828d73b5a9ed65d344a2213e2d98f072cd80b02be8650c2998c2b9b788f89c34def210302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305a0cf6b47645a42f0977f3466abc34387789f08da3a590eca7bcb0b3796e482cd6e2191f8662a659c1e72dde4f555b10023100af72166464c9ce713d0e6f3f2e73abd863f3cf9e03d4c9c3802ace2916ed0b6711a6adeaa4f9d76861c2e1ce4a7347d40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009a3f92d176e9ec97711f7f52e63656fd4b538513b35aa59caf5d10a7b19b95027dd60c39495936ad53bdd5b16c3328ef023074ee14ac4aeead9a056d290fa4aa2a6d61b4405c488cc999dfac2fa4820fcdf23a3a848549e4094d9ab11495945c546a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307d7560ca9840fd3a6e5b7547ea2866f917d38d626d0a723b6c66c46b7a2a9dea6d49fda870604a5a6c578bd0dc6ef3c0023008be36f5e92a1c7df5af7b29e7510e0932a974e597ddb70686f884ca7f8c785e3e774a48c6698107f154da2aa079a9850302047c435bb500683066023100e425a3efe54b2cf8fa323904dedf82fa1af114a91233ca9712f002eedccf73a2d66fd80242c747b393fd68964af85adb023100ceb10f3103a845ccd9c9ce0370d1da1579bfd264cbc14e6e6fcab885e1c27bb9f4cf4e8672fd58e4003ac232c3d3430e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50065306302304b2dd5aa3658fd233d84913199236be6c25c37df03d6b211123565fba887dc98bafcea018cbbcee38f12a4a6ce04de47022f4a7a1f1a64b701ffddb39326265eaddf1396423469d5ad97e90f839da5577eb4f6fe100ac6dc41e1bac0b3d14afc4e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230392435d0ab0ddbd47285c26fca191eae21e235bdd41c5facc832a6a1e500c1ca98f44e3d69cb6a0cae09a7bc55d04e62023100f632cf50f67739726f693eb7aeca39f5467997c0858864b1c8b0bce02f167564df8379bf9eba886f7174b557d7f348b30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303c6c7f41bf836068aab70e589ecbce4acce09f94568dd387fce668e93bd48aee9f1a7545a925beb454a3199f4336a107023100a964b239c1a4adc8689e726f9a2960d43087be757466b4be8de92d2e2416fb86d44cd83e65b38347c49f2a61175420e60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b4ca5fccd8ace4e45aa1db3a26517f7a83793cb97878d889cc116e20290bd3ac26cd726466aaa54f089ab9cb7540bc7e02304ba7d6f96b92531defcfceb1bd0b3e7f7413705a3502b56245205360d38796dd829490a722b783ac7310e1634b33ee060302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230506d4f978daeb4012004cd5a74eb8da2a6555d52cd6b6dbcbff81895c8b8db42bb1d3ae2ccb194ea22f9c621e02459a6023100efe1cef83d85499a5cda6af56ebf396ac4c178b30c02209c3bdb4e8e755fd73a7082a99282d37494ba760f5f74956ba20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230440213f5562f97cf65b1b30e5f622a712c3103cbeb128e2367f28153f597ecefb04a16c5f4bf5271aac8381e868baefa0230693ce2fa976a1cd96131d4ea056f2ca2c3d1651fb0c566ca77504d98407bcdebf678ab5426e67594df843e8219d1dcdf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d9a77c09d432fbac86ddc0e35dabeb6d0c1049796e0f24c1db9be584781d3add45103452a256978aa2809c95c6be59b3023100b1c684e2c3040b9615a24d3ec342e69636df8a0bf0638eea36477d2c68cda273c5ca560b4aa507a787d2bca433e6b0650302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008869a3851fcfabd3341cc3aed87050efcbeacd5f236216696ff3b9c6f87ed4d84f17166b0ee87b4c0a2ea243ca61372002305ba97b5da5b30bc0bf642923536f7ec0a5edf52189109381f66cd5d82d9d3d1f57d53d4d0fd0c8a73c6210f5c2e665730302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230764d3bb621f1927be99631ddac48bb03624583eaaa74ba5a9433422825dd7e8756006991407dfcf21e1651221e110de8023100aad3e9fd60d131db38ae1199107feca0e1f94bc65390e8a9c58c1d2f632fd34c0e1fefb43602a22a8d7d20b004709c7e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230572084f3330d2acfd47752f31fbc87799423d26770097ba1a67281dd34d52ba4335bfbaac8c5f72086d66d7b41aac3470230032337d16dcb2b668ab08ff196e328264f3176b25227a2b1854e867645ac6d4de30d35f905219c6115f56b22f4e4766c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100cc5a9b9918f4f0434007655945dbc8e2cf7b17a49d8af7dea604dffd9ecc44d2dac74f26f80fbd2e3b991d74b5b041bc023100e4e9d71a2bda90d8a81df0ec3402e0ee475516dfdf23d14b9a58a764136d50fd678582d85fcef53823f2b92883f9b4fa0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100cc7d78da15055565051ad8359a1e97b87ba397dd33effe6e53e0167594a69aa6dfd725709df8204f9f34078ad9812daa023100b0002007d8fefa9737d2cc5cd1a76737941c3788a890b6bd17ff1309dc3e35a879dad47d643f36e1d3e9ef8bb7d5d9570302047c435bb5006730650230403303db6dbfe092d69240ea64baa55586ea06319557b5ba70e038babbf60264c5e840962c07735801e1b3d6e015adc9023100af9e30232ba37232133b37b68a12b721c0eb95a467e47207e5a8e23895e8f477f353793a2ca0132e634eb431962538e30302047c435bb50067306502302cee32b1f392a394bbfadd0060f065eb1d00c11eb1a953cf833f0c6fb6ee99f8bd5223930ed5a3db3c933591543829dd023100e9bd0d4d415670529921b595f9622b5339265df43916ed52ad5f59715c19ee26491e6be31a4e0c2256dc6148bf848c080302047c435bb50066306402305b5b58ec21dfafff56c337836c0ffa8aab2c80cf9a71bc0819ad410b3e10650830117557126c6a84306bd8352e905373023042b5a2a5c4ec66fa51402e42a4db5251f6ca19816c31bfc01a7eef0e52be072a92e188f1b3fe8011cf9f1644b3314c3b0302047c435bb50066306402304ab598493282c1c172ce76513611a84a0438bf283e82ee2fe9495eb49428a3d8a8c6662565d7d65486aea5f82526c13502306dea41c590150008ce08c2254bd9960781a2a323aee6038a09ef4ee02a67d5e87bace55e20e1a04622e9463bfe714ebb0302047c435bb500673065023070f3cd882509a74f0b72ed9198989fabe066dae949bd5bb980fa9e79a15a7254356e658bb26cb0f541fc4ae0ac30299a0231009e7ea1abd31d17dd4f39ebce7e06a015f6b8fa6ef31ad7d48fb6cd91ac6011929f9450c9510c0de54ff996f2c3777e5f0302047c435bb5006730650230144ad73a5b8dd589edcdda32c198c3685c27da1ac264dbd43973ae6057d233b2a051c2b36eaf7b2d3259c898a048c70f023100e5203906f65aee941316c375f94ea30dec4ea325f70bc0d75a169edef5e52edba468d134e78e9905d39069708d3ff0f60302047c435bb500683066023100dcda199b16f801d9ec6d087d8dcee9c9f8adf3330e82cd48030725e18bb812edd3d76cb4d07758423e8b9a1e94136e03023100bdcda750de148278f3907503bff28c8fbc7f2d94c065faeaa5c232391ba0a001d44d3679a757c84b16bc7b07a2f4d6900302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023074307cc8c8bf772bd997f19c119e0bf91f67f239371155d6c04d6179d4653fad184b17928906e4919e610e4fb079d3e0023100cdab8053aeed16b92ea0ea7cb74629092b38429e814c759e43a04e9da35c9d70b25c27b9322230d49bdbab9c2d1a95cf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a8ac56f140cf876034d77004081020fe2342ab8e6ce8565dfe2a5931c2d064f98e83fb501fb1312637013b92e63bd789023100b02909473593c0ddbe210a67516ded0b93bd86c12a18afcd3ab8c07497da247c784946b9ff47ed56adfcd11ad62dc8c40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023069ffe0b50fa2e930de753908d7acd3c1df8df74ec76fa105f299ac41949966ae98dd3f72c80ee4b7a83a5dd1e2207584023100d219df0f238fccb0c0f6eb6cf6f443b45d2a3e92a56f781d021e9bd83537a22215d7004065844407c71bd01f1c8589a10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009a544cf835a1e174ee49d4b579fdf12e86f51ebf7792cd8fd25420ca5691ec65f9e714d44abd77a04f947c0a97e274c60231008e2661798ea6d6fd5010b05f6340ca3a8baa2cbfceffba8fa3aba592ac9b70b81c09014a37345aadd91452d5945fada10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b2b278d6f3c7ead3d1065d720d322f6ca027bcc02b643de33d239365fc81e9ed6f695db4668049bff5abbd02c8e35c3602301bc43553a16b81e23d5e08f93a98146dcd7d0f7d5335860b335083a9ebce943d55ecc2aba6a939c8b0350955721d36910302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c84441883deeb1dd9e84d4ad353bf88a120ff351b568724485ff23b838ca6ecd437a4050a5dbf92396f7084e2dbce04d02305786c95481d6111e983fd665929b8cce17ea19d9e9d4602c784e632f919d6789e19df3fb286784ca7ed00bb0b5d209590302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100aa15eb8c55ca215340fc30ba1ddbed103a5db3f10bacff8cd6ee9f0f95216c02ad51f906db8fcffa93ccd70f7b3245770231009b71f76fb7504ecb16328831e7899f023c244bf2fa0004764732626f1f0d5716b1dc5a2e063c4e268b5dd7a75b69f2a60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f81aaf4a59300d48f38bc36c6dfc14b329910e1bab9cc09ddc125cc88a73aca4d785c8eeb29c0a0f54f01abd0bc3b98c0231009ba3d8d158a55ba9f199d8c3c3de5e1d7355f0b5a0dea1ca8329806d77cb3be05c757b4b5248a7bc2dbc69113dc31a950302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023069697a3ad193b3fabe353a81a9e8aa939a0d60722c5a525b32a7e9accb2cd95a2a67f190f58d96b61778ca23087ce7020230632e7b4cf009f76a5ec65745e0517d837b811cb9a53c6fbfd7f72df75bdbf8d5dae18d9781bd299a2337c52b57c7c2070302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c4d3d0989b6c4edb53d566eb437a87d0624aa7f658629009493a1f765eb6298aa759d1c43502087576d3d45b481ca98a02306ee087b11e9608a76f0051f10ebfa6dabc7f1319de22f1b2be0dad5cb7dfb7f0c8173650b8ab3cca2a15498f79b56fe30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100cfc7ca48d14e409f221efc0c23b0cdb2a662f7dab12dfedefb6255304a057d5973150978413d10ae832435bb4e024c9e0231008672a3f8490851aa92f1477084b31d85382ca9cb5c856e5781c63d5e262ce2859d96aa0784a8063865249966014c86160302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bb3b78d23aea6e08a2f44a35230149f3b2211d507858c756e537aecef1a65aa9e339d554f566bc02d787a867a23bfb4d0230216e42c818ad8ee32e0b41a747771c96a5112615f1e964715eaf2b8fa4a3394fc38c28d8fbc0f107451f9cb46c66c8520302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f29f362acd8b6d962b7414977e46df2d21239788aca5e6b874b70a06682f3086a67878c639393bb3b32517efc5af1117023100a7656c3f630dfe3291f88cae0c432b113a4139af4814cbca8eed9d5888ea478173f74ebbe9fee3538672b4ed4515bf370302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230141610c598b1a954e5114c3edf382271b5bde1bb499520dee25530866756714261a893a50eaac188aa3113881a3f64fb02305d454ec173e7ce1435ee5cd2d1a4cefefafec9c7b2d79453a477e6c2869b3db5926b8d85d500c37bd5e5aec50ab427550302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300b3254327d05d721a4baad52105c28d015a5c2a3d62199ae5d13bd18e69052306e4eac93df3765ac7431efd8f60cdae902303dbcc20ae951a16c1f923080f60b6e1dfa7a117b6d644fcb1e578b754823b13859081b8ef9c797a3010fe72919b8efba0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300f5217474079a7f7b1dc473b58c1d165572b2211e69543dbbf696a7c327a414d8a2a8232ab95163b6fc396ea0d081bd902306bf9db1aa5469c46427d26f50a1ad0325914df0a58ec6a3e2907f0d4a6ed4be6763365d57a88065d7373fba5240417090302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023067fcb551793cbdabd90f8f0bb0ce4b5a896fb240918bba8247bc2c64703d412b0c5d7d4a8d7281ec1e418e9fad2c96140231009b366c692f5f693d8338a5e5755406f396326e5b5207c1b60f849b14839d8da4d134bf021f09aedd6cb39d1ecf915ba70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f69ab7de296c07b5708cd39c9d4fd2479324ef173c1e39a60e8f72250f2c6ca65a24764c831282138a04927892389433023060a6e16e79e4c2f13a234542cedbc10ad5f637d6d6c0b15c7cf734d7a30b147eff8b7a95c972bfe44c3e538af009ac890302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023002cdd7acec7cb08deb6aef9895069ab87057c8ca8a1e422eacdc40e59b36547fbd61529042a83ad523f5b1641d980f7602301c853d8ddbc65699c4d44042f3ca2dffd4de50853ff1eee763accd888f51b60c9fc5e5fa78f437704bda52f6ca0585aa0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303464e5b559d25a22edf1fd87e8a7689916d3208c0297e99859a2dcd02bb597fe05ded4886be4cb823e1dedafa455592102300c3e3a6625f8d76700a2a67d1d012f0d134ba161a3128b0bc44b3aa460a925c42633d41e495f86a65217652bbdf4f0c80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307ace9ac2bd0a39bfedec8498b5f7ffb13204c305e9986b77a0423e0a5fe6e11c673bbe69b6462c55ec0a9441f81f196e02302cb7d709fe2b7c1a6103a26967b6fe3aae1f2f34c2a06c34c3400ce776f7ba16888c4a8ca240af6c27fb1e086ea089b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d3cd63cdde6454a48025d3d6a6da004be5b4582c1bc657c7bae0272fbabba4f17c7b408184f1e6b51244d16b03235d3b02306824c936ff33773ad4320ea91f18a431c8ea90a9427194332ac0b4c8dbc38ae9d2f76a87ec23c25bfc0baf752be7e4be0302047c435bb5006830660231009ba3c1270cbb50af45ed78305634eada2d5d9cf1c92c866c80de46ccb29422b75a595a75eaf433c6185e55a7fe74eca2023100caf99fba590630765ed23017f7c1d4a1eba2107190c7d93e490147b4f9603192c1232593a1f90e1b5fb43193112c3b6e0302047c435bb5006730650231008f94a59266c5bfd79720a3975e4e1d4c1bfbd701904726012ac61185681bae8d5d223124d682bb12b52364deedcbb29d02303d1a064502706d144421e693e00025c14a376a0b6709561d0d7061c1b4ffd8be93d0ee09ecd1ac861622ffca4e6e81520302047c435bb500683066023100fa4b6cfe8b4a445af28eefbcb690e2111f5761b227f368d9af69add1c13ba12fe8380c8143f87cd7f967bf1ace8d03f1023100dba1dc700135ba97408c38f8c0498f8f6db27135dd3e03791fff7b50e6bc0aa7457e63aa447cec8d3826f048739a46940302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305df06a5c650f4f77b6ae78da1911e3d513275950c9d7b280f8cd742c5de3cb5685c7837b792c46240b13580c877b2200023065b58d0e3a6d95d1865c4b021c123350090b1c64ab47e31e101e72065e52ef0c9d0512145e3d9e79446d26e3756ec2e60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c2688179620d89c634cee98efc2d2f9e74b36dae896d2b8d1075de7d58c6b20f6b2ead5993daa7895cd0ef8771c85ac0023100daff20c2b63c2ddee6174c9a93f71a6b131b5f2502284aa20f4176138b9518f572f35b90b94acc0fb3373f4675a0f38c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100cb68baf9db03a8fb7d94058d626a29e3d2e73f08105c72fed3023e45495220d8a55b1b89ddf143869bfe158141565fff0230615938fff0897dc595aeae7021ab488223d852e473e04fb86dc09ded085c451f14de545413f5565af7bbd16c697415ac0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306311a384db989a5b291795ea758d332705baf7e88fef2ddf051cbe705212697b44af256db636558025c7b42413b6e0bd0230610aaa58daa3081dd2efe902680e0184ccf7bf2460ed126ac94943bd5a6af6faa025ef8f0dacbb2892e05358a1897b020302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100cd840d162f175c05290f8a5b3ef281b2f1b05a97c402975746dc78642060dae16da69e9764bb01766ac584dcb72e785d02304c59b786ceb79b904607ab3567b0ae370c2f666e44cec33d2364cfe6556ce8604838abc53cffa24e7ba816639921a5df0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303abf285dca72ca8b398ab08b0d20eda51e568a113ac2aad29ebe9ac0d054a38d00cc7fe15c771a830909176ed6f0d51d023100edf10ba15b99cf3f6669fca5f70b2a75f37d71fe833d4ee423e4abb5c02240417ca6fd077c7938ace174e37211d3c04c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100dfb8076fb51e7c3e44424d25038b01cc9f43a4c0750b47b023c5cd8410c2ebb99853f4c38e65917b0a7ebd7b6a93f09f023100a1e837c5cd5b39bf1f1c483eb1fe2b79b8475832796ed2cc00a90930c91aed1c335b98204c3049416e7c4f0aa06d42650302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e9fe3d17fcd0fe594512e9ae91b43529cd95505fe52734ed42c5fde191abe36ede0fa93b76a350205066cafc6458998b023041419528a0a2e54f14979bc9325e3210b0bd1e595948fc944d2742726dabe5a1b6c4890cad60e92bd8314e05f8ea091f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230559cc01f76b667c24046f44b840ab33b198c4f54a99e4836b955045ff5f7d235d1c93c3809f452ee7929e62c0b51d233023100e40fc5c885d8b2b49a1c54a11f088630d0e1a01f6da3de7cbfd0921bc35f2ef21d35751f4ad740f5fb7b5de5650f98130302047c435bb5006630640230222eae0a0fa4b3c42d24224ec8ff99996362168d40d54aca1e85a3d550dcaabe09a7e654c62398502c943ab419d9931802301dc909e4ed65c533c6e64b797603c9d8200ca88a3d357ca7c2967a0dde7242e90fc9897bb1b54d777dc238745844fd400302047c435bb500673065023100b1ceae221e01d765fd82d7b50b97710fbd763895aea226d9aaad3c817d4db7e4ba245891a78b326afcc2fe685fe1ba2e02305d284d194ebe53c857f93d2a1c6cbde594a14e54b1d3c7f954c5ffeb266b78d34168dd034be39af61eee97b38e6ce3b00302047c435bb500673065023100c8fc2bb740559ac7ee5c2b5d007def71a3596378acb51bbeee971f77859abfd42c51458c64680f65273425367c94a33c023078f3728beb23fda5789c772732c1890e749cded14b65733d8807a76696461125c6da756003ce8618c9436aeadb40aca50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023007bb075290b4dbbb5051c10d3024a9e6844a50804f8f2e6ff5dd37c56e0bfa58f63904c6b70578a22721691e6e66579a023100f2f3d97c62ba4060135cdd6c4e70684069d0ef3cfc6d20102393e1a4f08413d98518306c6da34ea34af2fae0f2f9398f0302047c435bb500673065023100e442f94f6fe00ca763a9ab0f9f47b6cbfd936bbdf4e43c64c5af6c538ba594aa84a5456111e98fd656f2474d33c989390230754d1049464b54fded68331364943d96fb92c64b4821317304a8baabe74f7c27abae2fffeb75d7ff2b71f532eb9579f30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c1147b905647cb1efb87a18281dc66f8fd3b59a39188bbca73456bd088de3d7e83047a52d43b1d7a932b4e9056dd7100023043db44faa87291b49518470c1166f3a903ed0b981300afd336ad48647c65c41a0cfc481ef26683076dfa11a378125cc30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230196096e45dd5535bda3e394e988e6dcc461a1523736c681e9ab290798a4e85137758a010b72196014a0f691b1e24a575023026b8ccdc58bb5327bdbaae12f8f2576b0673207fbe3414b887af3f284bbe07828474ed99c3307f181718c4896ca85a990302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009296f5a22629f50b86d5d4b373d02e494779eaee36f0209b73161ec033cdcd5fe725574198a95e7894804425588244a102307c80305ba6671e016348940f5d02ed1a83fa3199f6bbb9f6692af11f96b8280f4ca3a52823ead08be409dfd167309c6d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230526f4cc11be756643e80c988eacd7ed2a84593f374b15dd2db8bb2389cdf9e4e873a58a44ae1b215f9215f2a68f1f1be02303c4e956e8e5eacabb48e94bfdc4868090da7877566034ea0a2238d2c52693af408678e6f85084b6f2fd57ef82077ddff0302047c435bb50067306502304cb871efd01219649839c585a4189812aed5c49735cecac6cb621e99bf280bce926a8241deee5187d8e54f7c89c9cb7b0231008215bdbb939e52c5ea23e39a89bba366ef697072dab9d6bb2565c9459f6433088397f1ebe4706f22533a5c893045e8d60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ee5118ffc2a6ba57284752e1dc1ddbe8cfba6de472e416d59da07b0a851de348a8ac3710cf4e38c8d4ba1567f08540f8023100ae2a9669b9f238219127af6941e2b9656bcafe22e48d71db724d307cde48732ec76d3d3e4f45338b225e800c7d0892de0302047c435bb500683066023100f7f919ddff670f9c9a861a1506a896db767571ab496a74a56ac22a96e700ed30936ec92b7f08066c13b699fa5eff77ee023100e35e6b6e28a8b3e44b3d2859fef51f11ec3eeb5a49c5d53841975ba7e07211e4c36165725572d0ceea63d4602e6e5e9e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100df523fd4dc10a94582b3d98deb2fbcc86382827c03d4020384748ea699e94285609ade3dc277e913c67d6cd0120fb230023100f082df2651b6560a2ad3c08e50f0784774ddf889d262aae63b9f83516bc9ee41682501febaddeb81e57131182679b5bc0302047c435bb500683066023100a74f96a7356301d1563f2ad8b9a33b778e6fc27aa25ea3e1ce4b7bdc670c6602891b3e9accd626ef4a4f4cd849294d3d0231008f0ab2339ac0537bf42134837a8468be8b4b1906ae789523b785695227ad39bb5d3ee9f8b7891b63ed3d0b12ffeccd0c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303e81ca140908adaf3f5edbf628111562f812247baf024ad91902c34a77a905c9cac6008f245fe11ccb01f2dace6be4da023100eb368249887875c88d86741d286749412bc0d8abc6707be873b64e1c369a69012e9d3e7bf4553a90f90d5f61988fc3260302047c435bb500683066023100ad0f1d30d14f9d99f9638cc74bfa5ea4bbe9613eb20f76ed36adb20ad6573fe2cf4c5fdc0e4d5e098776a4c1c92de1df023100926fad030d7b6125b237d68991d34400361eaf7e49b145c90d5f5478a379ec9fd4327dd725d9f96c59c794db111d0e690302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306bf776e7573dab05669ea4a683c78eafa44cb078ea902674ed3ff966cd05d3b86edbc1e354d0585da0fac5a0532ab17d0230394aa246966864fd58056fa3fca95533764f735ccb77d7bfbcaa854bee469914ad44d0eb07861556ce96e5b14e2790120302047c435bb500673065023100ba6d67d1a633dbf03a081d0aa12352861574d667eead718f1430690c994f47338744ec1e93f9c0ec3a8dc9985675cdc80230637f5b1daee94a951b2286491eb32b40be417eda40b3457af43690ddb945e991bb7597af7c663c3d79bb258c8b66dd5a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230220514f98ae9c575706c9a24f731985c867115d5586ae5795b4325cff67b96a6ebcc4819e4bf17c62337dc59a43f28c7023100ffa4fd135bcaad27c7018702c382f51426c763fcd60badf4c26b1943c72a30083c5de9e3d004aab101b73e4b530e62f00302047c435bb500673065023100d2eef1101a5e2063563efb9b6c500864625fd73d4150283ae972b0d8e740be8bac2873c1f630d3046a467bc182c4b9c5023057b5f9d54fd8ccf71bb1c7342825fb63f07bed268639bd02e234b145c11c19f1cf66489d3e35c60d64734f4ea10f1d170302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e72450a5c046f8b0634c30fa1e3d8c7a877b06fc3baf5de4b052d9073738b4a72b87e7584a4a13d8b0ca4713eb3ffebd023100bb6411770d595ae4d0f06da3ea4f0b3b5f6ec9ed564777801704a045979af7b5bfb817de7f431b9b1efa23c3fa2385380302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023048c74fd6974f9279185acea0ed38c8523451ddb94d67945c1872d50b4b4e6dd513afb9e36b45863b0b07d692b625950d02310083abd3f1a88f03f16be010e4ef44a07ac3cbb3612684f9ea609a48164210ddb9b4ce0554653d2874112081c96e72ee860302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c290abecf755874ed41e7c0d89f94cbdea609b22cb07463912eb5516a1a38db5b64c4592072ba10690df8c02da96b30a02302aae51f1a9dc1f13ef6012214f158025c041d63d60d29d62ffaceac734114b3f5420fd792fdbcd70fdfd703a60a829c60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310097b8b52479503424934d0d812703a47a095bba1cd7334ec4eb11e0326a7d74ac4bb77def1235a65d42154d900f64cd9602303ad94934be067b5c60e795963de9835afbe87a30ab153f14054ec30cb8d0de0a21982ed36205f395ca23f3f8cede9f500302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bcd52bf1fd90f9fd81f1cfe919c125727b792f88b7f6d9d5babb19eae42956875f6b8b1d49964a81a4df25850d1b947702300db2d7a7702eee073aceb6c634f15776a2a6dae33440420154cc6c8ec33fa9f6430608509f0488f642b676c0e85665700302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305d9328beb0284a15b1513ba57c9e3dfe536999d0835ead7d4368ab29ef8f7cda800430d10954f2c84ff303162e2d99b3023100c6f96522f1a177d1e21ecbe95d669f6d4722e997755624ce5e3e4bb57f81e9f0f6fac668505b9b4f6665a6ae8e3e0ca60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c26461cd74449da666ddb076d75697e948a1f50721dd3a57ef085f6e767acd802bb3ca540c0c52f59912919e016be9cc02310083b2a0fbd1bdb6960cfab9df8290019f89a5d557f632a6eb0267304c93a13ddc6e3db8978eeeae7a5aef510de2372b950302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d33d3a7ef1b2225141e36323b9b4685d082f9c55f8ea71c916c123759caf6d64de039c7ebc4878d746e785c6c52fbac7023100a6652f195aa689eab01a4e46605949497ad34bebd7c38a18cd56e10ff5416ecc255693e422dc804d05affaa17db3894b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230405354b1ddc4967e8eabcfc461facab874f9bbffbc0d192eacf50f37f716a4e827888a633755f995a7cf34aa2e272fff02304399d3b253e203ffe93034a30de1373694b672abc42f59f910de6a22a7733aa875cd4026c24500a37c7ce3ad4d271be80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307734be4ef769d9fe6c106c696d49ce4cace5878bb4d8189ddbe8538b5a7797cc2fbee1da17ee18c3770b6e272067f3b802302fabe0148d5f546ef7aca8abb9f3d241661cac3f34df326a76975620f0eb8b3446a077ae06050f47f5fe7c567bf618c40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300754f980f47013812e363e385d9de2d265f5f96fa401e3005809670736609d3d7917a6ced403dcb62c4bbce99e61250b02306223fa60031bf9788a406a4b99f3155635d21145b3d90ed771046b953f571f4c0d62a11c112bab841a4aaa8394a0d54b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008ef86dc70d0c8d6f44c7c26eaae41d16a0245eae7a16caf617d290e733dc965c467bced296722bc21de52702ac271983023100dc8ddfae9c768e0fea88be16adbd16ef354b958371149dfdf8f8501643aeaef21351f8acfdf4812109e07c8b2051aace0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b9546a7a6daef7f726ec7594e5f99bb768b6459f419dba1f508ade3c2211fad3955481d9ec2783f95a7841a0e81fa3e8023026df8717eb03b322df8b8518f265d02d7eb8cedf2969cceac94cb0769ff2c1e9efa48e74bd81a8ae4951b76530ace6d00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303cf4e8c1e12cf16802695896552addea32674eb37c38d500f4ee98d0e13bd13a06168753161af0d7d079db94d10f62b2023100afea1efb4bb38d034d2145912dce38374f04e0501f224d36c074a600e27d63620eb4bb8ef1f74cad18fc00859329bee60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304b0060f7d9dc74058a95cfc22fd922c16d729fcc1da03018568746c53d7fd7f28c7c81d1a50fa3ab062e504e84d4352e0231008de4e5c7b7aea3d355a99cbd54b27781861dcc06a326893132a695ada35d6a1ee92630dd10c090d8f89fc128bd6a87200302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d30bb2f717df538a0a77be24f3766f8758b329596a67cd955cfa42d5b46dfbcb9a812561cc91dda7a29bb5ce2e2167ec023100a9b02d770416d66edadd9bcb9a58b9f46e735dbb7fbc5c42d2b054e91a874603418667e13648480cacd5d3f8aa567b440302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e52e33f15ea1c0469c8ac5c418e9627bcb843506f629f67f9ba9bf45e3cd150c5245b3b3752d1653f1a3bdb6c4bc941b023016d97a3e5017b245d11cac71dbd8b16cb82f984228972209dc7fee8d76499fe88e03aca92056e6147df472f06411c2890302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303c3c14d8ab19616c36c579241c42e796f1f83455f4df88dbef027431d33f5e9b2892731a107af652666b074baf75c2b502306b73c8466b445b140d2d71ce61e5280d9e0943921a014271e7105428840e003e2a0424de19149c84ddb379bd455a38bb0302047c435bb5006730650231008db9ec8d4b2d0e5bce4a65e925c92923a6128401d5026132ef973b963ce7f0754dd8b71fdabcf9202683bab65745da6202307235d7edb8859664914721b5cff9220a19c1c670e672b2f4ba3323f217fb3e9843623e7554087b2f8aa70ce208bcb9460302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306bd89019f1a1a52ca3db6c9d8cbf7914abee10c32ef0f0b9ff53fa2d54e56777fac2ce89817dcee48aae191e00cec3be023100b090269acb969c9c143fa192ae6db3e06d28f7b12bc5398926f93abdb115057720ccd7687c2e2b693914e8925286dad80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310094fd5b996e80dc804a8a2e52ef15d90d4503b83e924c065a3936e613fbcdab549324544b61bd884e5a7986096d3039db02302ff55f49c63149ae5a35def205eab307dd13a31018e75be5916dbd53bdaade4c1eab4d3e091c2624ba7ff373327183590302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301e61e5d7c01aa73854de474be25161f09b01f0e0728571871de7e356fd90da59714364132f818508d1ead893cbdc3b4b0230759dbe46956d3b64b15312b867a2d13dac6f8001f8d9e59e1c31886f088af94b70ea3e04bc4eebb457d8ad442521cd850302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100832a29ddda518ec022ab28ce4d1c3c1d605d238bc8dfe516a2c436800f84219a890ba59438e5391da8a0728f0ef8d75302304c5be2a528f14c8783488679773cd9acef84dc1b7ff12bb739101f30c6c90ab1948f8802ef8aacc0532ab4336525f48b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e0396eebaaa0afb8475404385399a86edddb0d242e5dae276699fcdcfff1462e28aa43575d8d9b6253d2fd5fe9e1f670023100dc36064d1923de6b10f4929ebfa9b1871493533c6c06735ffb62b3b2afe2cc17d4c9422527d65b2be09788bef1bd9f2b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402304f183a4c2321aac3ce7994b868b60b03f3ced49bbbcac7ca2de7f5a4064678b146f44b855970f7e34721c3ea25f23da302303a1424357a0be42a9c784f088cde6ef9dd5d7685749670a2253980cb71e4c352af2caeb77417aca357619697cd4d67af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306d051ffce292b8e70d6279a63c268942a3a75b903916151bf7e02b3bbd3b94888f4bd7534c411b0fc52c8e433d52fc8502307bf0bea53131c657d55c47d6644819a49f943b7dc5f9a01391622d9e5011b8c5bdda9abb8fdaf571949ff78e4e9338f00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f7f0872b5f1c35e86774f4f500ea702ed4eb3702ac53b5bf32ae405b9618243762dee99c66cb197aab10682ab06241fc0231009b0c2aed0a14849153d521f166ab33891d0f9c74b8c1fcb21cc68be96f97c1ba06b515eab24a64f3a80e0835040cc4150302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310088925793678d57de0ddb0db57212480f07f4aabf19f111f3d75fc10461abdbccad04588f649caf6afc5b50f2cef08a850230011d37390b457e0a75ca5fff7185817d4a220dc8604ac68c7a2f4196e94cda8115b9ad9dfd2a753cfccf79c1fd6e9fdf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302b3c97e3b446d930f44259235b392f13fca36e99fc6925f98c999194ceddd171f88c14673a3e80759b4f62d431c6d082023100c4275833bab4e872845809d471e5c17d260c873f253d754ebc8dc7ff44192f768e7a3e0f4919e818a39aa1e6439720200302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230308a02408ebaadd9554efb5aa03e3bffbd5e0b9941ed58d4f8268a9569665bd3312638c201ea6ef621e4e4198d679c4c023100d5e337acec8f2e1c94154f6bea40875888389f7bfbdf127ace5b2455a8484cb5f9aea5612095d1e6be4650b8ba30b4a60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306bd17dc0db9f6090f75728da6b98e84a07325aa5a82c5039a1ce076d699c28775ea5d98705f861ad600fcfea7d5950410231009da4c410d5b7c211df056b5f12faa6af07fe16b4485b16bcb31bd9c677bdef8674492a03f2e8ce48e0e125dbe63ce10a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100cd0082d27b32cad5acc136d33ee9c70dc43a901af31250c472b0f978f715c129295849931b465fe9d028fad391ed29df023100f89231e3243ed5c8f476e97e1d337b2b425d189db805fcd1b387cd1ef2e46a3a4900f8da8a21557234e8242ae31e1af20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ecb17986fc13987f235e56403579d565a8a25d1b6446c033ddd01a2b19cf46b794dd4d650c3390dcf67f42d23b5d68a102306da26b26b4c6c60a98e665632fc38c4101646fcdf0256dcf94184223427b0c0122d2f18a16138d408dc4f4f71acac6450302047c435bb500673065023063706f6f41794a0ae4769155737a345d5b3e3e694bbeae5d48c2333620ac16d00ff64b9bbd476c178dd084d4277aa675023100f7ec2843b1d14f0be1e88fdbb17b943f4b004e588bda775a645276efdbbe6fc6a0c35a8fbe892d484f2755b3e60819ee0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ad2bc7c68571574f18a28973e7dd86a1cf2287b1de0ebb996480b31bf18d973be7f74be1661398097fb4ee36dda27c000230090598dba64d25d52a55c009d8c3b1ac04179ff5b008134037495440d374dc19e099fef8cd6267d0e275b4d9e39066f60302047c435bb500683066023100f2c88c1de723b59e5dbcc7d38362696c14a6919ee47a6f0a98c32693c7c703da7056a59b1ad153e106ef4c18f35c53fd023100e07821b2d0a1255a3cf48ac7fa6d9f509be75cb8faf5d2fb17b6b273b9843878fb2ba82fb3baa59274f7e2bad147d02e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e5fd25286d4456da7f1390e2cb7f0fc2a63f7f2f6cd6c55ea48c4d84341d0b0eeffa44a1fe6618d877df68859ef91e0f023100a6fe73650c51d9433b67533d6366b8f67c01ec4349118fdc3a2e090b4d3d1fd1fe29cfd271b43dcec00b496a511e72830302047c435bb500673065023052fa8eb62fd2e4888a9e30ea71dd7fa9b53f5e5442a79e4b1b872153063c81fbf520b9cf7dba433f729b4d829f43fb3f023100bb9fa90bcecfed35dee58f1cca74af907c23c463149cc4d987f0de827db88784d15d234d355a4faabce673bd9c90fb440302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230491caa6a673b9902827978cd843e7ac2081de1a89802679debb03c6428fc3bbe6b3c83b14003f069c43121db9f4caa6e023005498c4cf513b2dfaf468a485471d5d7c61319ab6dee39682e54af389ac12392bee80921f369232fe6dec0fa613e1c010302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d0ad3c06e0e724b31734f3bd2c635b9704aa0bd32ad8e2a3140383c1c9217cb6e2d1e48234df140ad7e3f2bc47f06772023100db0e383a7ad20b1828945c4c6f264540f6a35c8141a029bdd7cbb6ec764c419bf886898ad14788183151f1a869e533920302047c435bb500673065023040dc945641d96ccd7dce683f7cb916fc5a7970bd640d701668187419e53e7db1a7cd7f9b24b5fcb34636004b869797e6023100fa06999a399ef5baf43efdc8b3e160a6420a590b3217bff44fab6f18db2161918878d2db1c295f913a7a3859ddbad6980302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009d5eeea88d9fe93d8baa8c4bddb8019eed96f2c3c55af0abe42c4f983c3cbb2d43780023c178509367a94c8eb73e0d2b023100c5a5dc77e44e8d002b07030a014a595817b994a717c4f8b9ba2d016ed3703f2951bb090d373124172962dfe6076a40700302047c435bb500683066023100b25c235b045ab1499f18bb7f9217b63ea6b4fcd14769498388981d9121028e58f6edf4a39c613c47f08934765b3c8d82023100cb3342d24e89cd48096d01f30fb91e826d65cd27482a5f045c424e73b7c6feaea38377a19995d8034d74e4c92143bd630302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303b858adc1313aa65c4590566d36227beb3ec8654f55d40b97842e6169fdd34d2ca53033142d13b99fcadc91251ecf9df02306734bb9ea863038c6bc61130a7cf11024246131e0f9f79185b90b976c6800a4593698ab3e4a2be088db1c43686efabd50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306c212eb2e75529fd90e5afc64991126f5a11e1ed7fb74a8b2ba99d563432e13a698ce54da047b4fed5010f1d9be8ab73023100c564a24fe2bb47421a08529d408531c3f6ecf2611995d22d7fe97aba9e0a73a5a3a9645c21bc34f6f219b0bea7128aa30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303f0debb06c5d2c4f126effc91501faa73f611c4c9a42a8a20a742d49c95b2163d80d4848004df239ae7c8053d43937f9023100cc728ac77a11927ebe5ec3cf3ccbf0c48274ac44fe79cf7c98310230c103a12eaa420d52512acbb1c5974cfcabaca1900302047c435bb50066306402301a18c6c13276344327e702e7ecb532b094408826586c9ce6de68d94d7ca92e33b3ec9389aaa332597746da56946d8b5a02300d3d6c31507a9498d14c2cfea61523774916aa40d6ad4c40743563c9d87ea1b3bbbe037d6e74d8f2ceb24d75685815930302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100aceee359d64bcab7b5864ab7ef386687a887d9cc4454a09a489be7b5ea5b408bbc193a2bf22b83dbcf31f829888ac33d023040c9e75bea890dad291925c0c8868032bb20eacb344f75d3b61472f3433cb604ca3ee92a8085d39a49c05d8b07b334930302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a4995db40b3f2c24faf4d9a26054afd6a778d79756f25b1acec3ef68a79c6f7cb1147e973e63555240ae7caf4cb7657a0230030055ce6257a201b502ffc0bf9f1a4514a4554ab654e1b1b8a68801bce256328e0744c5ba1f26f56e56ea31079a8c3f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a94933dac72490aa289af29dfef270757603be073dced4929b2d2df763838fd44c7136e28c81c6a910c919447e737ec4023100fc2b038d87cf407e97a6ec771b717c4cad8d0eb8d914123e29697136296837d72455418993aadce1f45bee1017ee04d30302047c435bb50067306502300106c3cf38b1d3fcc147e0f2e9af82c27d5827f6d27dcf207baf763961d1bdb0cb8edaabe0eeb668988eaa9f0be080c5023100cdbf83dc65402d50fdac662399c487189df34155332fde895dc25220264046b4f0a9ca0b771d2ce99bb0987729ea14aa0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023012b6abf440ade6a6f2ea98beeb557f1e257bf81ca4ac95670fece39869617961db4d27298af74c47634a2822cad5501c02310088a2de30b5a3b75a7db04a4b33b665c180dc6a9426d9e728400054f5cc1269e33d40fdc6de0c16319472e6dc83e1595f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402304506b4c39ad294a27235c9bd0c5667233a43acb841ffd061c5ebf07c9d316e5b4bea86ddfdf8489628489c0156ec071202306cd86f30b11e596e1465c99bf62c406e663809d0edb6bc440c61317691689e7ac2d55aed53b57b877d8c0ff8654a7c880302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ac2efd5422fb726074e286d0d9629114f1e4d2c845190e5a50d1b7a5fad8ff21cda0d4b43adbc3a6f4daa31e0184897c023100df782fb89d8f9c8dfb1358a9d76a76739c7853ac063c763df5c7e4d848d9d7ac2a1f19654cb078230a770663498ca21d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023043a7d03bef170fb01c902e55b7733797ad5d77b97d27fc03e8c13b82ae9c8996e0d36da5de93153a86f30c506c9a0b58023019195a2b30c78efa1c1214f476cec0352e95228f792a4b095abf0150042347bbe142f4bd9fd7dad84e31cd92562133410302047c435bb50066306402303c4848bfda32ad814ef402084dbd1f4ea54d33d41d39f76b3b03810b4fe4f15622eaa09bc1ec7416781b06910fba978e023071171a0b0621912cc9c05c6b7864e0de63bbe25b7b1bbd70787adb7ef471208549e4efef9928ae18a6af05b5c525d9f30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f817e3c365a4dc24816bc82e4acca08c44641e7ae5574c4daa97a2c498bc27db22d4723566d84ffe7d28999f742234cf023100b9d80368184140de4fc16693f18a6deeb611c69f5dec82b6a92c8b1467850a28d7f28dadad40e94219350d699297f0f50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d1455c94dbe5323bfdf5a7519339da3f0392e2b7b4663b0d4dad7bca588e88fa8c56ddc0561f2fb9b45fa32ccc50cbe8023100d71e647bf1273653454bd6167baea6c4a2faaa7d1d2447a389841bf88bfb3121fbb5b5750953622d0001627e2209d7880302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008de9fac857d264bf9ca97aeaecd9f1a15831c1f93fc7df8b8fdaf0c808bf38499aea8b8a2d218d98181a742bc0069e08023100cf6d0fed9ee9f182b6855cf4b94f9a3a0c11c9839e46fbcdac43513b11493aeca5d310d4de9358fdfa448107c09c4ee90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100dc24cb0a3dd18eb9d568da64b310853d1f6dd8c745aa313d503e18e42c27837b844b6f408ba68eb0476dd5bb397c195f023100cc7dc01536857ec2c146b069272f62273251f20674037df62b76fb882385518de37e974a2090705df7482f48cf7bc3720302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302844202d4ce6abd545858710740910c83e070de43540ccc630b422a825bfc27e07eabb0a72d42dc1c02cdbd7c3870f8402304bab15d8d89e9723015cca51a1266cad972579164b2270bc293ba6df305a34d996524bd72952d214881731d0d2411b9c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c2b93fb59d9822e35223ebf49661d736dac33f76c63aa566f1e849453c6d513e73a1713924e6dfed445101cef0bc6bf60231009c1755d25d692974568c7eef48570e439bf02e40feee11b71f9a542d29e45c3a0a6dea55c4dc0a9fd64ba8f70724b1d50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d0ea369256796b25db3dc5f3b06359816115cf8b2fe3b0cc0d7bcca3bccd6b0cc165767afae9acb5618705ea8f0370b9023100a6cdad904bcc98715b0d6c04ba4e4140b72e324e05f905372dd36d9b0601f3c0a59bc8de359912b89f424d910e0778720302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305bbee6afd86fb3b8925b8fce1287fdd09e69fc6d15cd301ca17bcef57d54e090a660132ca3aa0b420c2a3638b6191af4023100e34664d46917d500416701ec24a0bc09403e1a1eb354253886abac2f99ef100e336822866d77adc37d94851ef99680410302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b7e357aae369750b851f8847f8f4af13a83ca40825957c7d911ffa89f3292c19003c334c87cb63a4e2df03ad130c20c6023100ba2a92c2b68c1161e5a0af9d9618a2abc17edcc58243076232b9252a6a9612590cd86681eeac8d55e05207534e677bce0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a1fe95b6d8d87ec39b1c7a0820b62133829731c2f566a7e368c31ba8b2aabdbc2fedf37222c1e0556cda3cbfc0c91ec1023100d0e61fc2a28873bb7e3c9c4141b275a11da8eede03623b2783d375816ff5cf4f1835d18170f96bd81763d18d4717be440302047c435bb500683066023100b68f50f94a60d67180ab0b485f7ab9f70b5de3cff7c83a1954166ab1f5db126c39c3f33514cfaa7f3ae3940a3ce264e6023100f8b34e267d3285769577b44474a2fcebe97afdde5b948912a91209c47a623e94fdc3a9114d6a8cd9897aa78cc3f38a9f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307d4b6e868724cd8b97082db7410e2d65c611db27b47dc59848187e8b1650a4942d2a3d5467c0e80bfee768c3c79621dd023047d2ed85c6ac72291cf98aee09454176ebca5f5eb8eca595f4ffbcc81af6e8cb17f29db18d8ac233c13659ab9e53b0910302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009d2e67c2002170ba01a5946a2bf8aaabf6ce3514abdcf039f8badc8d8915b01a103dfc8c321bcaba4f52e33175f09229023100f14e03e7b0f8153bdab66266da389b3b0c3c48353783d10f3602c7a4e95450604f7e636e05918528c0f5fa39222918530302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301df23e93add8fbe343f04d4b615499ab3c80a8c775f9ae2decd5be08ecdf136758496c869e84a769d3106e324a5a546902306438aa3aca695a6e136d53fe5c6385d03cdd5148eb8c067db2c085c2f4a2ff6968b56ea43da2e06c7d041abba1b7e1d80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100fa6209cec79b7c41fa3453b0d55fc135f75166b9fe3cf3317a4522c736feed7b30120926bcdbdb5009480732ff072fe0023100ef9488812bb639ab1528e429b3b77e4087891445a1cb0d81a8ebe5f0afe2033e2122da2aba2b75d9b27f7f93d84005a40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230543a96e6c5b277e1867cb58aad2099ce9fb6c498600b2b34280fc09d3f879db5a651326c9963ce60c03f8ff8c2ec436d023100e65ca82c0edf2e234123a9de509942fdfa261db2a78e377ab66fd03f6cd17fcf4be3f732ec8b0cf060c278127ceb23ae0302047c435bb500673065023100dcb8df18102e181ce63455fe5d336ed9a5d24e8747806663f47b312d0b3bc36e0f98db12de4fc177dd9278a1a8608d0302306cb2969621a0dc09d0718c6164c00dadcd36240060e358977502d2427372fa17480dbb64857f948ccb459fc0e3dfacf00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301f8fc76e79ac615b451a5d7cc35a0db522ea9fe42961172b49ae3c82b03fe9c0d4712ce29057c0e83c1ca3a919d5a3d502306bb02f6e038452df310ca5cc790287f0754e03befa43be9120b016ecf9971579f5aeeb36367ed3e9fefd4aa07e054ba60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100fde6f6ff450c01b554316ab46569d322bf63cd1138bc8ece2e99f4835391d06732cd8e3e0b7d30d38f2a1d223aef81d4023008558a38baad983b5746ff2ca681fc01b35df50eda83e9a9f5eece92f05c1dc1f68b65f1a308788c0e5cfe0d8b1ecca30302047c435bb500673065023076eea96072f5e66650d1430da18b6cf3b3e99b706bbcf523d49ec73d573ee7ed5c4508e19e13de64e2a6fca38a6750dd02310082325a9493d302c2a882465ddd2bc72361dda37fcfed819de8dcdafefd11d897104717fac01b2012d14efc32599f75540302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301dfd2fbf6ddaec3a9c1daccc26122efd838462a48a15a112ebca1bb6ec8130b9a9408310a001d6a99ceb3d1564465f32023100a00cca18cc7e2a61833414122e1a5649d3db719168af0a15154d1285be64955f1f7d4e2f4892166c7c00fb808d8a13a40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f9c9d77a2da6b424176e922e755f729fa562cd238b629391a15e0ed0fcf28140a9f429706f025432edc2caa5cdfefbb50231008acb97cc8df2917abf5f6c59636944522ffc7661cf87ca1b99af9707ef050e05756dc7be9da276f7579cd1d4c08481a30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306ae3a4d0efe1abed62960b0d566eb4d49ef892c1a0a6ab8397cbe685e2cee290175f57acbb811909a097a7a36597404a02303029bf394628a34d38db103562aa90f8df3fb058b08c0df96dfb1184803e84d6506a28d1768d69bdc4986079f47b02340302047c435bb500683066023100d9c78103e97497cc437a1e21a70b08866e32eabbdfd9fe9defb9da9ef95889445c0498c7cbda9251ef2fb78a140b844b023100b894b3f409874259c59e3fc3a9f73f9327f1db63dc63abe6b79f0acf06d973ee456d6ef32f045723f8809ffcd8ebd0f50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008340000a9809815af2314d3f119aacfb5449e96555b1cb6c99ea6989ddbb51970828613cf30b2727e95f5a6db808dc4d023100dacf558d6eb3276159dad5cb4ef082518a6f4225a27614f42740b4280016801cfd696dccb6ce5edc248c197a13db17720302047c435bb500683066023100c1535f298f275b555c11baf5a38926c075e0f43273eebbb999e9d319b84c386154868a7e25953683cfef006752f65ab80231009d66d65fada8c3fea0280033afa8131650e4a3b3846f216057db718619ef417d161c8826a3d39b68307269b5ef8d81700302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ff809fc2879ca3e9a3885563d7955e46026bd8240fa84aa806a0855bd5d5951e16639aa21ed184431c274a90b44df524023007ff0e31289afafa98d60bb3aadcbe00d192274caf2b6f0d8ddc565f8cbf42fcfeee3375228b84360fc7e5ab830d8a290302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008b733750a70f8b81fd14cb3b7ded901bb187d714efb32acf24313cd43f45d62a6e958a093e684be9464193a738435e090230717cdac706ac09e5d1ce47973ca22279369d7f69b5df4d3864c274786cb9fe09ff7638201a01acfe6d1a431c2e42acca0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f940e23212291e2d31bf8cae4d999c92bc45e102252e0f19891859635b808431e44050cccfe54ed4ec3015b34cbb0c6c023100ae4aecbeac16ad7842d4584c692d2d93a4858c0e5a2e5f5398cd156886fe6585aa3d844e81b6c7a40fd6e52f0c9523680302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023074cc269eb9c18d6bfb2de25cadb1a903c61b4cd1776ffe1b78134b5f8461c8345767e1d71818f0403f95e99e1201c0ac02304c8c6649fb1c51bc366bf950583a0ee30988f932fce7325ab639c71fb732f6539542af7fc1330fee406dade7c4c9a3f10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023051626d0aab6ecb775a34a1aea6b1fe95924bc30d7b9b17197216915806c57efbd1accbe5e0cb1f3bf4cf69cab257a67502310088c2e8c60e3c580a707398bf2bfca6e5da455523a7b68cd5c5cf25b51dec33f7943501aa5611167e7dd83daaaf1d03950302047c435bb50066306402301fbfaf2464f5ab396d569bac5a31f18ad7ec1d811eaec77a2e78222136e3c541bb31cdbd690d081e20e5c1d6e6b3d57602303ae5d6c0be12823fb4c96b9ff2977e88dffd5ecc71512740b710ac8ad336c308995533b628d05e73e071a5a9c76f8f5d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023075a0421f34b7c0d312d6b3b9a472bf81dbca2ab5223d299493dcb349eec3b318a64bf0d581761480cc17f520e70e234a02301edb876826dfbd7fa8e8847edb6f4b7d873b771cfdcd70aaff1e0cbe06cee497a13e96310cb583bb20efa7d8cbed66e50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306ab4d95e3f2a36bf99b46af6f6bd3373e8ef236852702e96eb57483abf3ebf953a99ded91020a835ba6f1557c790195c023034c49159b4e56c7cb7c692c4bc34df13d1ea46b79f4f48bba1e4ca16e2c6b0f3bc50d326a522f0c0fc486316d82c2e500302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023016e06aa12dbc02753be7c2ea9393b8d30b569d1f754eec99cb72ac6473eab8258ae1757ec977ab8f566297f0cab558e6023100c1c99df1b7b8dee0d4c48365e8c20caf277dbc6d657aff89066d510456efa8f086a75b71969a465105715f11e7f9198b0302047c435bb500683066023100d1ad00e58fe366f75e966ee18ee9b1217cb0b36d28e31a0bd19a6e8d7050fd42fa32cd85cc293da03108fe1ff2a3e2ac023100c5c368eb9d309fb4874f2a31520fb0ced317b8251751f982dfbe9b863366956511debd5b4f23224a79c6d6a2ea9cfc9d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023056d793d6f9b9f72f3a8e3562d07013b2147a222700fd7814e4e9a1925c1522c0c022ca593d36488800c7a20edcdea3bc023100c375a40504b5c665fbc839a22af2bf73b2a4192f39cf692cf05352d0c3a1473f7fab092f7051580bc3ebc9368f89330f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a57a20c911c281dd55b7ed34ed8128494934ce1c932b5c93a99617c1834cd94c85d00f62833a38dbd459b9a88f01e359023078b7c7ebe0c3d80302b9bb78d656da2b674b0269075e7c9e6cfb92b7bbca9e1726535800cbf04bd758b1543929aaa65d0302047c435bb500673065023100cedde0cac9ab6f4378626710e35528215264a4c8c14c46635e1dfac3ab699cd61b96154cf31813dbe61bfc2a40b85fc702301674ea504b1d413be494ae572a1b6c66904ce3aed0c173eca5ee9883bc7721bd173f23e6b17578d5b7d3ec58eeb08ca90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b4ae5bfd7bf2a087b928300964b39a7c8d3c41a5ad4a8ec986fc0686ef41f60069f2c865b934d79dc513d2fbd58ff0d5023100f8357aae7e28ffa529c69e298cc188ca94896821f95d4c1fc1c926f65aac576bd51254ea343a9a69ea3deba1b1d1ad3f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e3ba4fdba4ee8420f8efe4d6a07c24256a3ea4c737ae12001175b45c98342a6e5e1254c09d3123f4f31b2d8052ec04c4023032edf3e3df485c2956f2c8e440ff0134f7dd2c570cc3758659841e203b5750325ef24bcfbf498e56365a7c6b40ca6a8a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b4ae5bfd7bf2a087b928300964b39a7c8d3c41a5ad4a8ec986fc0686ef41f60069f2c865b934d79dc513d2fbd58ff0d5023100f8357aae7e28ffa529c69e298cc188ca94896821f95d4c1fc1c926f65aac576bd51254ea343a9a69ea3deba1b1d1ad3f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f74f0d6b028ddb1ff77cd994b73ca2f50972eb30b28dd9389b45d560c43b1286e560d949cafda80ad9408effdadac53a023076aadfcf87616110c759d2e52b6513cf605eab43afbb5b0773c4b4f70d95c0bfb0d247e6aadd72ea53f4210362e934150302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b02b9d72791574195163b07b96903fd9b3b88725f782e02278e4c2a8f2922c7f68d57d99b3272e6ed7bdd8d979cb9015023078a2eb565318a2ae2d4b75d673590f7f4b8e6b812e0fd33ac2031313607e0b36e3fcfd46503a3f7b2d1354106b1cee520302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a4a6dff0655931f523992cd2d05647f6f5282dd746438ba0a1c0dc5b78a79e83a3752e7932c3b245991914f1fc3330fc023100efd63275a5e2589645f6f5aa4ee106be421bab3c806e0ae7e70f84e8106be929283069fff447e29c8dd3c157b67afcb00302047c435bb50066306402303538c0d85afba510be365b953e48c020e89a8e4a522838f42512ecbb2e64cf486dfb49cd2da32ccfdc3aed0ed961b3ed023064ddaa72bdb77d246b448e26a145f7c842ed129c8d56e30c2337dd0eff5d48b182a937160faa2ca9f976eb905d7f75b80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023034e77548d502291c032f0ab56c96e74ba18eb446dd5d6fd414677d84c57bdac3a894c0c277aea38c6223927d2f2e5242023100820a19443202c8f9f63c723b832c6e4fe88c02583b0963938e8d16d35a527482fd322e0d9a551aa27b3452a390c228600302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100fddbc8b9b51a44d27f7d660bfa51cc37bef6dadc4ff94cab0adc31c8371b86c365f7642494846508b417b80b8619fa1102301e48a478c61dd57b7d4fbabaea21877c7e34598604389b3567918e0103f057db8d5d439097bc9ee3eb6bbf37b85532750302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310091640eb13c685074e60785f131264229d7059c3c67dd93d1a32d046e4bf5f068902b2fda77329fa8902fdaf269bcc6410230778685d42ee87cc2336455c563bee939c108ef79cb50c2acf78311b7fcd99a88a476eb2d0d18671be70c6bc9aea3dee10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310091640eb13c685074e60785f131264229d7059c3c67dd93d1a32d046e4bf5f068902b2fda77329fa8902fdaf269bcc6410230778685d42ee87cc2336455c563bee939c108ef79cb50c2acf78311b7fcd99a88a476eb2d0d18671be70c6bc9aea3dee10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e8c81f68a30426ea27243d8ed02336e7f98bac50cd1a0abf3bc8ac106f00c9e6d662a356858f085d38fad6b038afccf202302582bfe4c79c74a426325715b290470b798a36c99fa1e9d022a497fff9bd559195b0db0e01a41a45158c38bcf3a8833e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230350b7607bc4d46a1798e9c1a3a1d405128bb805471cfbadda01223008cf2b66c9ca9e4899339e7af5fb2ed333ef30408023100f57e5ea354f79b61db61eb68e1a7fef65c15180da60a0fa67ee8072b6648fa8dda5bea4a0784841a8a4f35ed489b543e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e106a4a476bdf2bbfae8f6e5b239f34024ffee5551b9fc662bfbf3b770bdce8a1a94d74d08e9267361875603521e0d33023100abe09199da5e4c6ad328c3d99ccefb8773fd77e1e37a454f39385a9ba99f5473ed07692f39e6f48869624b9f48f2f4180302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304e4257b2c80892c2f0b5967c9986ce73532e81a3ec00a285f7ecce554bcb1dc222058f7c406baf2522eebeee69771763023100fb1f30b60bd03bac75e6374628818eaba675fc722fdaaae19241a71d621a5bc53f3e7dd2e25cc4303313cb7bd69cf8ae0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d53b1154ff449c3f80b08a1b249c6a1ce5c28e387b070f9d072a4e7c965a31cc24a04b04b0a7a352bb6807e3b4b494800231008364ff84c0a24d9a42613380f617a0d8199258783a452a3fef02a85905ea2dd5eba036497d7862727e3c60de0879e35a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009bda9eb8cdc85f93164fef462d4947dd672e69f784f321540d72b2933c4b55f931042081f9ad03d21a1a127202f792f5023078a3ae4d5dac36d00db0c4803803f13928bdd49af4834c95c6926c5ad7fc2dc80f1149a9760f08ac8b7f14e450c5e6aa0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b6f0ed091490c2dcb8472926d23af63787d61d8e505ef693500bb49c7d3c710243833a5a59d331188ad324abd089bcc402307a435185db5d11005ddf6d376811051156f77435a5df330b21aebf19596dfe374d1564a1f41da083da68ebf4a62be1f90302047c435bb500673065023100d2090ebf3662ccd175d7ed94f871f9fba3c15f0ef8afee4472660407ed6fd994fed42a722f09c4bf80d00803a4d3bd840230713155793a76564ec8680eb014623138c3fe4aec3014e639825b8ac9e921a8ddb46121313380c75ed4ac54464b0646380302047c435bb500673065023100ee14ed70fdcce2b359780f407f331b15cb7590ae1c1a1e672585b1bbf0526443cebb36c8333e51fb3261bc3f5c62259902301b14cb3f49f705e8b02deed55eaa3613f1fdea58384855e9055e7ab66373743c8d77c4d97d0ee729436da709bbae808b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230538367ae1ccba812f2a103832769a8cea84d6a6f290f6923563c25c7deb316c0eab99b543b6d9e3f950962ef32b2da67023100ec6cbe7692ec996d8f83596f591504ca6c2fdaf734656d726ebe2c9ef7e7d9db2a9180460a0c9a7ef4084719ddffbe1b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d4cdae69dad688e8a123b8fb740997675d27bd1d1c4ee7bf271ae2b17d066151ef934680f5c9e47d61e63f67b86b2bd9023025918cbe33ff1fc0bfbae2c4f5d279dbfa6d8eb5974094e0f73fa1b498e1d705d57e57efee109e902b7ee829fb677cd80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f6460c846caa4c823c053ffdc9317f42de4c6311c8f1a5e5d1686afa80c6168cd099d6664a7fb319fe2b9c3734452628023100a1692872bd98882c688f736e644c6530ba9c0ab9a6c360144ed89144e84ce9a7b7ed1abc9698d2606375e1b7b04373f90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230016a596af26e6852694eb9cb5ba606c3cbc0dcf5a4f8a2c9092cb717a63d5fc3415025f3c29802f889d1308adceb20d602301201a1cd135a7f890afdd6a2ea9ca900d663ae47feb04853e5c39fbc7fe1e4aa6fa237cb5d3adc3ecb446ef405ea11940302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100de597233f75e64d36c148133ac34c315012407764f31653c050a88f9fd45fe7a6fb682ddb55f50956573f9b5fbbd0e520231009ab70e667a8d462e0292a04825ef2499d38f00bd41f06968535236ddb41c0d8df80fac6d85e42796144594be6bcb79220302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230741a0be57991f13c164cf96bfc35f8a8a4b9138ff4669b26434fc23e05d1d9bfe740977fc282bd7c43810808cb0577ec023100c884341d7ea2a88ffaf6cca51f5482eb2f76d65d32090641ec8c06e8a330bbff40e84302896eaa10699ef874295ef8d00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ff8ad121587daf0ac77209d6bf16d109a0e050f046b7841d3274a58cbe6da4b5846b6364f133ff916a4ff3e4f968d44702301cbb1963446f787a540705e413fb0f5b21a6010b5af5212a3157c04a8a2a03db3466b06d211ec2d77f178c63f9b63c630302047c435bb50067306502300c7920147f3437ea3b51756e12f81b4d11a4bc73385c8cb424e7ad9912a5da0c54bb0207849d0593b872c60082a8da78023100916efa971c6bafda9483c11f70256277d600ae9e272a236a03619e788c2d070bb9946a1d8cc26156f910a9b0ddd997590302047c435bb500673065023100949ff925643a55e50d95d087ab398b67d452c49182df9e87296260bc99b77497a8f12248c80c4f13b362f9d4c151e4e00230598799e74a353ebe43f0605664786f08ba7c31a7293eeb69e0a962958b2f9035da397eceee312e5b39d48dab18be60bf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307c4d366855bb9a559e1e2a6695ecaeb08edca63e2a254578e25358eff081ddc4adacc7eeebc661a61fcb132760b0b17e02303a676630e17ffcfd8f787f936ed404236f4efd79970b3efd1bcba2e9809bbfaf882c2ed97e215ac82f140ce462b90ebe0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023022c56c12abb62ca277ea5aa6b9e199ed48482676e7817046e163724fb0afe591eecc23e9a988ca331017437c7f5c3b4502306da712e0c9c59bb01823b1c5da9e634b5d9ca18f74b3b189686bcba868ce736dde888a7522ce284ea2988db177c7037e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304e0cc5104de0d3ccaaa80a946d0123d5601da9005bbb882800ea03787c517ba9085b5828409004ec12264036d92ee7e0023100b881ee51a49e4d845197c58c9c16a15fc055121c14dcc64c0a7f59aeceaf78ed0d314c813121c435848db02aa05638fd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ff069d0c07ba5b9bd5d15efe15ae62ca4314370ec1e80c804231a77edd07af0caee1eafbdce23701e6c51d7aa52d99d0023100aa397b92f014646b268bd430fb494769688d6c83e21fdef71a333fb93c4c6d42f62a09331166d0ecd726d12e2db14f3e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100dd6f73d4c35bb10bd075a88611fc5115ea0307a8ca7169a46efdb26b281d54a5cc6f77a3c7237dd1de402b270ef0ee050231008abb2d769ddd6ae23ac466f7c8946cc51c3fb7fec8665db493db11ddad418b6b3e49afdfef6d0902c4ec384e4f5a98e90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c7bd8b5bdc62a474d92643e5c5bfc0316938bcecc69bcaab8227e1bb5dc29e370e001cc7721c058a1edfebeb2e03ec2d023100e7c71b7edc2ca83578f7be81eab1dbc4929e6710ec1e98cfa60b350a376031917c19c1c749ab36233c6c2344c0e95eb30302047c435bb50066306402304cedd29fa1484e25cb7267afda9a79f829041a0db14441b12d7d72cc2bcd152b1c554daec3b499422935e0a360c711a702300b1cbd7d557e2bdfbadce5782197645c014fde3379450492c3383cfa142e86f3e21b51dda013887126df40e08e69fb850302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301a33ca70ab027738ef1b77679b0e72716a1084c896b945e079df77c4f7b6c978a1cbb8744f2a9c5a227960b74e16240f023100e0df5d8ef168b1c7e1f80ce95844d945616531aa18a776f3a1d71079dca5ce7b69eacc970044984897986c7d6aba4e1a0302047c435bb5006830660231008d6001117fa8b23530b824fc07a01c47f1a466de9dc40c5b4e0026a2e13f2824fea0bee027aecbb2543298948c3dd54a02310084a1b3ca3c7af83078b514105509c0c6b12299dc04637bc79a25f3a1ecf7b89df0e8578f4feb69062d64490524b9567e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023015b8138acb5d2d5f35f570c2f36b6784ce605a84d7c8dac3977bc2f7ac072a5cfc9f0f70a79da1d8666e37af0130aeee023100879693a42d2c6d6cf33896b031c88cc71bb4632246e26325cf69babaedf9c9b145e2e4d166e30c4e973df91ac0507c080302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a1f3d702c25a691666002354a64481729a557f62a42b9a81b4fa944e5a677c7ac1363586e0b8a90880bc67d84890213a0230116cf81a83aecce40fea2ce2494827d8157d533fadbd516a72a2246f76614ce19fa2c3c539af314e9fb28312e1cc40d80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023024d86849e2a8d9855d91e87f1b976a33bae001a057ee1f37c62230b52506043d27cc523528a33c7a3ca56a196ea8da0c023021d46337a8685c8ffff3c059bf3c1697fdeb4e6b705b870bec230527a0dda5e52cfefae4f07a2572870191fcc6ded2b00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023037d9664bd2ee5422c22e97563e3d79175b8ad59a7f14ebad00ddc00fd15c23be03b3cb806ca4ca1d2458af201ee8c68f0231009a7d1fbde7ed997b009607046c128b82a5a5109476ee80f1844c8996ea2604f45618ad940f38ed04c846f9d62a6a80250302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ad4f837bacc026a5f4be501326b43c4e4269e2ba789a44ad5198b890d6214661261ee1144600db6407ffd62d74cd78d802302556b48fba2ce7368efaa2c63de70982e11b14603ac052bc8dbb1a91e7ae3668df0920db3ba9612903fe717c0c6fd1a90302047c435bb500673065023100d0ec2a3fa0d50c9d686566c950053fcd6c0ea4d80e10b0e9cafa19d650ddbdac14d0d964af114fbba986483358cb3103023002e59301ab3ebda18ed2feb16fab8a8dd499668d83384557d3a3eb284c46f30e706c0cc5b1db06833808ca6c07ee6fb70302047c435bb500673065023045eaf9ada07cd9930115a813c779b2d6e71f89785c3dc22162eb682b413c0f0c16101c87a4333e7ff5b8ccd177fc234b023100d83ebbdc936059dd0f6a944eb6d0100df53151127cbfe68e024bb8fce02675d61b0440d0ff00937db88a721afd68bce70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306154dded2cb098874172702ba9045478b0381a6f5074e833993ca9797ae8f881a285d9d7f96ed8132a559b98448fa5c002307848594101688da852788c1e88902516828d3f256e566635669e968c45be5848b4b5f387c937adcf0c78ff604870c9420302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304141bbf9d3352e741a0ecfe1599d16d332673da1f5214960df5c8d609c7559921e40030b88e0ac4e38b3fd3b6cab08d8023100b25194053a068d6f581f9da7cf3811b95eeadff9bef0ba63fc4a435cc4b4a6374f5d46a0df4503a7463f06eba5aec27b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008a04d4d0799702ce55b13846298afb4cb84e5f4f92362c29324e6d15e0b51e80380215682fcd467c133ee9bb7cdc11f3023076708c7c11f8f1210bcc94df43591ff92ff06e54855be52c07cccd2e6e00d767ceb6cf922d67c5fb1686b64272f4bfa00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100cca3df927e476920b2e21dfea6c9e4738eb6fe941af01656893875ef322dcc275e2d83b4b36055022db119c4f95a383f02300316265bf06f91023c1e5baf48e2b10c6e974e2ce12c2f1087ed881126f291bd0abbc7a0f7a77092627c3b495a0aec2f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301812ddeaed6ff4b7f3b01a06a92ac48ef9da5f4d3d9e51da31e3101c60647b49a7437d5bd16162842ecf12980986f522023100a393122171faae81c1a35bd64f52546f5a2a7651aed18484db69b55d7966da21f527eff4710332589ead1378d70593000302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023008e3e7f715b59fb747f6a30b78d531761e13978e1d04f0b1a35df433dc9ac3055e1b94dddf9dafc679b65d4a88958d9902300bb83028869687235f40ea20838ba004ab7c80bac916bccff7b160135bb48f6da6de291db3dced0675ac181aa20685c70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009d93e2baf3634bc548b9f468b47501c2c174317713810e3ad963053064c147346136b49663eb0ccb6ee735d8a5e405be02310085ee6a76769d9d1eae28993d2f2a27e9510dd2b8083e24aa01f1fec0e013756a7328796d0816e516548c629731cbc13d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310096ad45dcc113a3e0e114404dd907c3988c513f1d8a4287b214642d636111ccd0ca488e8d411225fa49a8a7af8d272e8e02301d41993e7add609efade34a80d7e8b3510d5660cc873540ad11e04ef224df387166564a899b32d837361771f6dd7e1280302047c435bb500683066023100db4754ff0aa12d0491d3fddea93fb3fde03f725e19a6eac2835ce3502b46c3571a983d2792668f2985f6cd73e79cd5e8023100ffab86e872e71577d2d581cb0dd8d5b710e04995011a784a9c5590db143f712e31473296fe4cec942bcc929c9538b9c70302047c435bb50066306402300c19c1b601c9168b835885938ce71995ff86f83888913bd63c4ecaa31daac6b8876646838c1fa7cf5bb75056c88b557f02300d5cdabe2a74ae14c0bbc0167a788be276424b422422b3073c456a522cb67b4d33cc2dcbe99323a63a3d4dec9b6c31820302047c435bb5006730650231008ba60a10f330a03deff53c1e5c8155fc863b4c65ab1b7d2b28a371e4b9ff31e3d43b1000935eed5c9a9349e835784bf30230015ae938bbc4d3ceefbc429e2ab407329a3ef2f638a1261a20864838559298f34f350208398f697cf7067055a14a57c40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100803b803cc48345d151f323c2863dac518b9280658be899e4f8b0189e62e652e200d0f04060088665122bcf22533a6493023100868d55bb22767f8bf9bda789b68acd3905713c2ecc034de4fd5b2fcff3f6489c644c0b6ff4af90657ba5abc91c3750ae0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023073a9d9122b7f341a592c25363cc021e5b705bae26d3be156b0a7870a4d697ec67d9f8399e0e9f0aff93d204aa2d0cb67023075fe4d918f0aae3ac99137a15f774bae264d77e13b52f5a718925345607ea514a2db1e2ac04bc79c28c4f2c1383c918e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d849b35332f04adde43fb2dee9e04084302204a50bd26ceab9f1f2eeaeea4e42dd861299de03919203aa52a8a1fda2430231009f7fc6f516559928d0497550cce59ada63818c63d60fe9637dc3824c5ef38da51fbc2704dc4776b440f2aa59707481530302047c435bb50067306502300cdcce41d016590287ccb3b53c27fd99d3848640ef888eced3cffd0181da83575652ae8e90addc94b7982f715658c9480231009700b5e303513b98c04e3c87aaa25a962ccc48e4143a31ef5ce9f317cb992188af3c1c2ab824d6e4c98c66710a0061670302047c435bb5006730650231009bfba2822c84644a0e4e1eff1e9abd9cec7e5520af9b1ed7473a5aa870c150b6f5fe6ecbeed9718121360fe8782be70502306a3ced610dadb5a40e53316e1b2233bb317b2b11c8067ce141636ab62f245c6bbed7d0723a3990fde77abfcafe4462960302047c435bb50067306502300eaaf5ec23c3b661351b799f8aaa92f762e9ff0b4cf9bb82870dcb6f9fcfb004cde6cc87c49a131214db80aedf4b14660231009eb7140e203730d989b06449a552ad337791601eeb4594cc601ae94f2e2767b3ed66c634847d0abedef75e463261c2990302047c435bb500673065023100b8fd8bbac707d19fe3334f323bd50af58f3c9545fa5bfeefccee617b5be3a9ae88f4ae8d3948c764726a0ba384340ac502300de9d8b432b00d38f0ce46d2777c3a883c08c22bdbf2bc8d770ba53056d5d669b211bf4a4dcc0b6b46b223b7c192bc0e0302047c435bb50067306502304a33b17d2762becc2fcb2ba43606981ffa02810ab2f2b621cbf639fd088a894f988cef6f05574e4d52b56eeb6d7e6e6f023100e48ffe110588376a87f36c4f678b9a7a068556b578135d06d48a20ad07da014d0ef789fb90fb56914ed0f721e097b6460302047c435bb5006630640230593da817e37405e7ccc3b81f09e9977a360c5d7aa903ec53f55b56c67e5e02461bf8a0b5c3527f1169753322f28d0b2f023026674426952904d55a4aec200afb96f34dcf4f48e986606cd557ac7f2ba4f9db2d8a482231b1419e0792216d33f3ba660302047c435bb500683066023100f83eee34ee6b01fd4b7388aaf804150cc1befc9f370d31d7403a7ed6071595a0dfcb23bd89662dad94436735ebffedeb023100ff499ac5252509b30fcba26ad0bd5247818b14e17449bf2cbcb50c18cba75e4edf1b822d6d8650ac40e2606d0b7128830302047c435bb500673065023100ef2fd5405de4ff2ff7fe8f4dfc81ce3d1f4437efc43b20d2ff1d678be686a6b138c669bdb0fafcfa609617174ed02082023034b81c57b89cdf1a43c6dcc2615331e27915da6e101209ab0b0a8c20096b1c874a674d5d8c6b6135814824743b500ef60302047c435bb50067306502310098f612c51acf0c9016d407799c02061d66373c40cf9547a0953719ce366b59651143ed0f1377f81d7fe5991de11d52a3023078dcc43b0ada7f196e2b889c35c57162297146e47cad8af6190145a07372a43a609b0e354272986bc736fbbc31af613f0302047c435bb500673065023100cedc0442639f7b778eb84b068d70b2728c195af042c8f512d5607750a78a0676e6943d4d70b6f396e1e342795a1aa3bb02303c493cb65d2192303ebf39fe09e3a5d9709361301a7d4b0382ab6fabc81c695cbdb5173842bcc8c6d333559972552c030302047c435bb500673065023100bbabecc5cfee78de99fc178576b253c16e3193f7479fb874840b027166bba8105ec182cec935fe0fa7aa61a10b8a34da02307f70d2c6a7f0dafce534f98a6957fbd62622be5744b4bad2b8eb6cc7e5ec42bd534b9bdc568fb3fb4f1106c1403b0aa60302047c435bb50066306402304314055214978d64052772b266237d01b7debcfb3438217e15100e1c6ef0a730e4cacf22924deb753107e405e605940802302410303d288196354776dedddd4418a62c8b7e7ff27bb0e53ade7064f2357223539e76cf154cf661adac963fd40059cf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023058aa92c54efa726d069b92d89d46fb66068385a8e882fb61269e1608e6fd863747c9d908ff3a607abfd1876fa11ecbe2023100d6ca8b1dd4727152346a5b61509bb301c2557cec73f85fc1f7284d8661c79e159b402e0ff2364ad5535074b5a7022a8e0302047c435bb500663064023044edc6103c8fb8e728bfb5adf481697966f69111297f53222a002b9fb822f59a16d17e83a2ca9df23f4be4cddb6ca6ae02303ba0eb4e186b72ecd3ed552097f3a3977a58d381ceb1ad00132d7854d3e5f72940b5d2257b30b7c4e22df2c494a895bf0302047c435bb500673065023100845e9ebe327dd2b12117702d74670516e5e18ce48fbd4812b17d43a0cb3b74d1e4034e06d08bd75b8c518e0f044e7b630230079627e3b7de67d57170f5576cbb69b6c7dd189d893ff1919ffa275d258cc6ff4059630f723f926079d120c2ca2ac7d00302047c435bb50066306402302ebbf5e76c5da2b51785b9b65a8ea44179960692687cd2243c520c05666d2c320f0f39b6f9f3de6f36d0f327ef163d23023048ce534a5947e3f6678f769eac6099f3c848e10fc1cd68b015a93b2e1e3ca353cbe6b963876ff3ed3856eab25e5821060302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f8f7f20b45c9eccc8af5bf05d1623883b2e1125f1542aafa63c33e60e3f6071152b9f398c488ae845194e4bc1b778824023100aeaa8e3a582dee95061c2c7bf1cdea762181ff699c746e6b7a25b71199877262abf068ce45afd1cf40a9b5015152b9e40302047c435bb500653063022f31def4dc41585084e236705569977500390a25b489d8805a229bba0658eed27b41681d59483a98623565e2be455e790230722d383f590a7d703419a6959a1f509b3417ccf195af1726359485d3a3acd399f31f0d78650f1d8b73bfc89c849cd1770302047c435bb50067306502303ab97755895bd784295799eed98d387f9a5f734500cee3eb85dab6049d4600d04fb623d356d7f034038e42f14f809a510231009a15ee44ffda1a9aad7d62cd0fa8cd22b26e90f52bdd309aa45fc5a21b39f59c42c1f678993a4b7aef2aad9a430054410302047c435bb500683066023100d5a778fa5b4a878de549277d8a5f8db01f7c116ea5245d4b2db9a89896d2cc960124836b9a8c6cda0731e5e6d2481f1c023100e55f761f64a93444b3ffda19a9a1579c4639e027c3d33a57a059eb2ffe70c0872a98491242a890351024aa51422aa2aa0302047c435bb50066306402302b28dd87d0595a792b786eed2d3e0f66a76444fec442fec1d1137f60fd8e97ea5845f813c74bb620d693e9ade456563602307053ed5e90dbf75bc66e118457c333c7b6a748bf030a2fc03c5706820476d19efb4fcf0fcc822e6168724798c113bb3e0302047c435bb50067306502300ee46cd4c34a13ef179a3950d2a3e908a86d6474463a15cc202f64b684b95565f6847cebade1dc8ea9f2789d4bfc3bd7023100d0db63978771f8ba80fc451b8b2c313d1c4ca1d94679bc1ba68ca75a33ab52eadc9f1bc9caca37610791e111e7782ca90302047c435bb50067306502302604f5ec5d2ad481477b0043e3b7c3abfc146bbd7db05fc0e206a10bb056327335924311add8c23e17f426598240e5f6023100c3274430d0cdaff90c5f99c6f4983812af0993145e9f04c52a756ea091674b7430da17ed62dfb21437f38783042c2de70302047c435bb5006830660231008c66db389fe46440bafca938dec0d36803c3adbd98bbdf255233b8839b107e64e6956ebc1cb854c0b5bbff3008efebd70231009383f04944eae276f876578277cefd652b6724f57cea1f9bdac1f6c8decfcefccb76763466fa96c9c0458e8bd0d374cd0302047c435bb50066306402303e74013c08d83e2875324a7571ad2f577447c2a57df8091fbbef0235a9dc22cf412c730523abf9865737482a3f8c8ae40230188e82425c5bd39719b8f5f0d44df9cbf5285cbfa2f1b4470bdf13674044440b12af1a640f560e1b134fe0f3b932f3080302047c435bb500673065023100c7c9b24bd298142da7502bfff13afe6133cefc42d44dbf4379149f54f365da3aa4d72584a2c453ca57b0add85d6847b902303e90000098185af85e102b7275fa97043038fd19926da3ace5c659ecbacea1193cb0f076d7e3d1d7f34ee71a37a70cbb0302047c435bb500673065023100b0be74e5e01c1c4ec5e5884d03b47ef31236b6810f985eb91ff374f40396331abbef70b0ec51dc5255f6a2ea4d17415102307abeea82991e3ded4430f964f1137ce8c82778ce762b45d902111e775ace0306c6d916e132260465c3b7d279d75db8f40302047c435bb5006730650230207578439e63864297051d69da98dc9b3ec8dbafd25ea21f7f7cf8704756030df5f4a42b17a7aeaf1b30ebb473349a50023100b1435552dba7b0e0606082bed216a1b8b4e97b76acebf9d91ce761bb23abe6838d08f6c9872e315cb123288830ef3e170302047c435bb50067306502300a3c608f7ac02a5019bc4d767039dcbda8793bbc638a7fcaa41ae526db5ba139b6401cbf2c3202b20a02de8ab83f9d99023100c82e73656adef9f4e21d8f3a4be8cf144315f043c6746c06fa7733e49b3c8eb49e763862ba7ddd9aa522d59267262d890302047c435bb5006630640230513bdf30d2da617a716655f54e1f295c0d13ffbf25a687c753927d4b06b067e07c6f20eeedb59dede3e5f15dd6f2adc1023075f1b71bce54a4786dbee00443c403d5edc7c5f20d26a5fa450c993abf3e703c071670a55f1e629b948d1bf1421a21b10302047c435bb500683066023100f6d1b1c2b24492c0bff60896c298e3974fb7bcce1974979daf11632439b258e86fdedc9b82f7481c6efae7eafe3bd1e0023100edbb70f57f47a4b5be754a37b71c756837186e1bc95f8eca124391d26c6c19d64d846a1ef46a4322309da807cfaacaf50302047c435bb500673065023100a058f9bc902a8f5b5a027d3fdfb0afd92a39a96c90f94bc63b3609d0888cb2f861920a87bc3935f6a39c0f62f1a95e82023002d38022713896c00eca777f21661dc624ccc139214e3bc20df8e5f0ba6ae141a06ed6fea864c78e2316e2196f50a7f80302047c435bb500663064023029e39819a5cf2d4388b36f0a27da1488bf602e6c749b3f0ff6af57c1624f98959371678aa86c42111939ae0c826318c202304972f4e598cba5dd546967980e13605f83dfeccc40b8d3d284deac1bf4b6728ccb11aa0e564a05a7020a7d2ef07c163c0302047c435bb500663064023022f2e352a0cddc65afb1421cc5774cd0a1dd9679ddfc6e805d34d7262750360567877943612fcce5ae89e76d9c4f3647023061abd624f2c94089453633207a1a146ea9245c217ae1aeda15cf390925d8d8919377473c9ea9b234bcbe7f8601bb52ef0302047c435bb500673065023100902fc29a3a096a180124848fe2685fd48e90da924d8f60d38ebe7b4254785507276df032a174a09a405dbc75ffbbb2ce0230350dcc9dfa44d7ba21b26051718a44edd8437b7ffb3b99e27c1d5560a4dfac2ddd3f506985e4908b9cc050c3f9188b5e0302047c435bb50066306402303c98756c88ba19e10d78b7c397657fbbc6dd7a0bb7434c66fae55076fcfe5c7067573f1cfb1f1b8ea2696021a332898b023059dd474140d883ecc9701c90b4ffe0f674185c04ceee6beb1a05622fe5abbd3e3b017c442e41d2966165fa30d5498a050302047c435bb50067306502302241f6ee200112764f82018fead513237316ddc0c45f9db23df676d53e55f7970c5f6a07095f3e9473da97f5ca42d030023100a487ef66c6be8c7d9eb1744f82f5419a687337cf3062eb4aa26142856c730cee3ce0c7ab1deb1647274f9262c310fa340302047c435bb5006630640230268007bd45ad8323732f7a76e3c5ca79ebc118285fc8c3634411df34c28c2ce08fa0813a8fd0d59884e71d8a0026724502304108404ac5ccc04d4731ec314c105faf2ebd7f81adac09d3637459a1d0640b8abee48406559df6bfd2cd5756acc538b70302047c435bb500673065023022b1f5900921be2377d8530555fddcb23c5b9715bcd34ea8eea0d6610a0db860cb44106d1f5bb269a1d2bd920b339742023100a2ddcc457726c52af2bcbcced9bfe071120cb82fdd052658338c8361496c64c6b9c5f6980f09cd29974a53486077e3e00302047c435bb50068306602310093e8c0c2e44f9fdf2d1089ad11afdb8bb94e25a9a4592e0c95cb47f78a8ac79a2851d131dfe98bd042b5131f179d469002310094e1ebaa192e2e6408237c77c3f9fa7339fa6a04eade760b7ac72b291bb3301f976ca1863e7cd15204c796deccda4fde0302047c435bb500663064023007b188ab61efd00f941ea794300963c4ebe99231c1e64247878867dae7d2105bc4cfd23318261c348f3298389af3f59002301877437d1377d7c1f435c71d76a1c89360d6c0f95cdcfa19e79459c82740e3016cc9801a9a0788e2154d45b5a25675410302047c435bb50067306502307ce2e41f99033642fa6f46e5326c874e0215c8cb64ae345fe22f6bb3540cc4f802d72ceddd9f7675d830cc2a9bc2c2580231008ed4978e56b656ec96b8fce2e7d6c1669fbe8c732a15b9b3f3e6c7bafa419652b095eafa2f1f450752568b4033cec2a60302047c435bb50067306502310090aab052ec587b54fe07cc220a7d27bf3ec4ca89f8a0ba84fa916a8c42dc0df8c71d1dc78702c9af382853aa01658bd80230172d19139661dc6d1dbfdf1d9c74555ba73b46bafb86b8b4ae91e765e4725769740705eb29ab7a927575b1ed9afbda150302047c435bb5006730650230612991fb6b808cadbc4016814cd893c07202552b37eda7403e125a31fdc94938c42212e42d7459590e63e4e6432f1f6802310089de3cd1bb685f7b686a32d75d093fb78543f4752671bca56e6248787290a52dd7340a08d64d121fe418a0be2e3b93800302047c435bb500673065023024ba7dd9714618bfa8c2ec4376e9d3953d368613234b83f0c258e9ccc1fa904e3c42ecbc7fdd8240147f37f81cf66008023100a193b5d2e00c33f728875c7ab5aaf291af254fa5801e6dbd78b7ef1036ca7a96533e39ea8e536ec8c39575cba9b9a9070302047c435bb500673065023020ec5658e6ceaaef1167c97fc172860ee79ac0274f66a315a2a30c5743c14fffce2cbd9fbd3c4bdc1b83072865d6f544023100cf344f46d3ef70a67285831c23da5d51980dfd6cbb38044aff98a261b7e03bf837eabb8932771ca24a5522425ed7d2320302047c435bb500673065023009dea1adb2e2b23b70971d7383dc766981fe976293b4d089a9b916c54d8a53a208a013d77f24bb17b9a1f82dc854d2b20231009daba35c8927a8b16093e9e68bb9f35e6bbae88669577fbafd5e454af67c71a3ba7afe91d76d203d4abdcb3613b38cfc0302047c435bb500673065023100f1e1bbebcd2a0edb687a1f6522410c37657b005215fbdec9883189cdaa2e773f3bb317cd4a01e8dfff0d0712a71d22e10230071c484987452006e1f46cc3f907e063b9b5e3d24a675e22a796df51dab1b7592949333c2b0486b69ceb54388df4835d0302047c435bb500683066023100f0efda7795f3549e904cff212e5a6d109aece7557fc167b77a9d03843c4c72bc28539b4ff3498e773dfcf986fd56fc65023100b205af625812c79729d2b514af052fe13aaae614d3a21935d958f5c89222d77e009ed3aa384e459d98bc80399fb1e8be0302047c435bb50067306502310083d4c610a6add441a2fb4ac4838c383a8349f244fd89b78fccbd738ace2747687f11d73d69271ae337b45870fb273458023006742051a693f1d30cb4b777080fdf4a0dfd2434dcbe11e35acc2fc4c1974708c85b0563b62d314fb214b08568d678ad0302047c435bb500673065023100e3c30acf8bafabdc99ec2fc151878d0e245a8ab6718f6a37102a88d8e6e2db7316f7f58e951f53352f27dd2fd89aa3860230575310f4adb6d6fc9b83f7cd1168bcedbdb4f17ee971ffffa89f92bf26422ea28af7b0e5eda90119ac1c0a909c1748300302047c435bb500683066023100dc83c28da2382b9b80d867d91000ed980bd45d0238b60599358449c2d702986ef0e57928164034e0083081b6d9ef7d32023100c967b319e348846e705ff7f9c3db2b2d99dccb95746fdf9e9bc41bbeac8b1c24311c5e05555fb7ce5857e432d219b2f10302047c435bb50066306402303a116873e1e307f78aca09bad3b81a8fc7ba501098faa941dd8c2a87f7b762e377c804df64769b54e32f0e7536fc1430023076a3e265738c941396fee8ef7672f99db8624471fb8baa8a969897613eda8c1c966fe2103e43c4584eb63be186e0cc200302047c435bb50067306502301049daa9d94e7f330a1990fe5532c8a4d5905c3ae084a6717083515c819f529ae98478300240681e14ad78726d9a539f023100ab6bb6c5dbc6c484bc6b308d56647b9868e6bc0e5c2b983f31313de4c996f37309cdb82802279afa7026ad8950478c550302047c435bb50067306502300ba1bc227a85efc59bfd570cf4d6c2235fe2747e3f52cad6c4680ad645169c56a026340bb3b59fa7f277e55316257526023100997f94f66226b5b470435f7ed6f62efae6525634b64027c814f262ba4124a13a6bc471cc5d4fbc2a71f271058e5164f90302047c435bb500673065023009500df7dcd226be86be25beb792ba7cbb3e15ff4f68eb364ca74ae7415d1817bd7766ee66ed9deab8ee7d796c9f77560231009029fb6cb08dcb6d276803e810f1714a069287eb3235cc45bf1e1e38aaf3571a60904e756059ed816a2e18b980bbe7860302047c435bb500673065023100d5c74728a900a5323bcc9d1e6810a74d5455568b879d6ea7a9d8edb824b32777aba8eb1f1cdb55a25c4da24f181d13c8023028e2e404bfdc1c82592ecf20ebc580b4ba1c9d4715b878059910dd9caca37ebd492c6564b72b50ce51f68f69007a8a830302047c435bb500673065023100befd35673790922428cc3ed1aedc801ac01c06d7f90e10c5a76a9a69141c88d5910b9bfa2180291af5d1a9663b023cb102306aceca7a1789a9183e4775452297912f8cd126b23dd1d62dfe390085a3760e099c0c1f6d617c90fd0bc3f8288e78e2a00302047c435bb500663064023034362db2aba5f7977b9f04c3375ed18eea9f3122eff6bc80e865acac232bec68437e32c9819b65fc4f010e0c3dc36ca2023025dfe3166441f3716f9a8260887081f5c408698ae37f3c1f7270e364381ecb18a739f295465e419ae999ed7322039ee20302047c435bb500673065023053871c40ab6ba591ec18f7cfa2bb3d978e747cb85f9f8c282e37d7b0625621cde8f0afb941163e3252b1ace28d2e7d87023100b1291fe467c2dc26dad6b9202ec28d8f204505d25a8e926d14abdcf4208d0873092a82983bc295ddbb147b3ae2a2d6650302047c435bb500673065023065855841b088bf31b3a415275303dc83051b08312ecfed3e000554e0b5e223ad6416e79ba22d85b71f60e87c7ff513c3023100d5c420dc9d37b2fdfc3e3473664cfd777d0d035fa7533b8b390aae46dfa6c6cb20fd31e5301402fbac1bf4afd6e6ac3a0302047c435bb500673065023100d00acd8344f9cd72cb7e8ede5836a09f8fa7095e1fc07b574bf7078c57275420aaa810b242fa8e7292bcad0a3b108a0f023035ce40305ccd28f0221b9dfea9648b1fc5b945c013ee21cc1145f6b611f0b31a1cc9d96538c1fb4e52cf22922de717630302047c435bb500673065023100969382cf5c537967c9035a8fc7be8dad974a3d4c4971d615653b80d810206fb1692428d9784cfe1d35cd859fc2da7f180230507d8de9a02bd153fc3f5ac9c279f3eaa213d4533b5cd7b333537f2c1083bc1441ca4565cae8dfbb729dabde11b61f8f0302047c435bb500673065023100e36feaa65d9187dee2672c2cfeacc00a4b78fa89fba2c0de876bd9a39b13836897b76f601af5330645f1356b44f9f29b023022880daf8ecaa4b2e3314bb4a55331b07629941d108b9c08a9278fa15d54cb95e342ce980e7eed5e56b33dd3657364ea0302047c435bb5006630640230691cbb266332aebc9081c1ddbbb85c72747c82de80de91868ed00943066335c37c17f8d8cf6c38f41efbe0805e4ddd2b023077a42738ee106ded23bfb70ead8bd3f3cde0b1b95420a7d87f4723b94d036a439efe16b3e6a2eebf293a797a90fa8bcf0302047c435bb50067306502310086438a57c56e158b49a2fe4c725c92345e0d6e4e91be6d580a127f1bbfecdf5a4768eabd82230f5a1e0fac6a0c05132f02305c76afd8882ddcc7cd59fda71ebd753b847d65451cbdde7557ef92b36c7a600fa7053dcda209bd0dde7ec1450e51036e0302047c435bb50067306502300628d40d3ca15ac75b68a87234b7c61fe233075b6fb4d54552a21187e59dd535568f89d686829db455a9800a2927c89802310090f8d96226091cc0433b68762338adf759f99c3bd993a8a8f4d2200e8172d4931fec83ba8ea898ec3aeda398245d4f160302047c435bb50066306402303e68c71eaf2638bc7a4bb7373cb905f53cd1e08d79100ad9e144eea82d3c9d65f5a8b5b6b8cd87baa8384573358134a902305dc72b900c0fac3c05ea242d6f4982081641b3ba3ef325c9258068f7ea54712fec39d9267c21ee57906a1719caca49cc0302047c435bb50067306502305274cf7d02d91274bfe34396bf07f9ef0c7dc4e8650138747d547a5ef23e5a491187f97619234912d92532c0b2b843aa023100ec6d904062823b2faca109f448f2987a6753f279776c25d670a07dafeabc1a100260e31af03ca89bb55d06d979d937c60302047c435bb5006730650230755f6cac4e1c4b813a3ac87eccba8f33420187ad0441aa18f566cfda4cf641c2a5d23c40051af0bf86b20a3979fc564f023100caf8d147b15829b61671d7f6a6be26bbeae9440d6410f70c5a4034a1e69600b524d32d1d06a239d49c4cd56175858a080302047c435bb50066306402306411610864ee5ce3692e50a3288b07a280c9df69ac9f0a4a18ece0ecab8513eefbcb32036f3648be45e153bb4585e83902306e3fcc5d2fb1b42e241c8954f8d830fc900452629c24bff792ee433b904b5e5daa3ff92b1098e8077b185ccf49d928200302047c435bb50066306402307081c858c7419697b0a4d9488defd6399a3db93121b421860112af364150dcf807e515bed248237ffc3c1a9abdf9fa050230053ad94d273526e8d8c020a20c60440292df6e1f3a7103693f547112b708a39e4774948933a725f8f867e0321331775f0302047c435bb500683066023100e0c1194e2e0ce5a2306d1b5088fa165cd05f3b8aca662279e821504280944e7354fb59b9685fd943cd80c8dd63e89528023100aa0992795393a19ba1791b6a1d1c0b2519aded8a072434dd77db430188778b2ad15b7652857a5c55a4164f35255869ad0302047c435bb500683066023100818a8436370faddb847d6a07119e68613ee9bcfb56f202342bb777d46c0d955dfa0d383a727f58c8dc5387c83a3f0d97023100bf420c514c45023b655b295689616e66838af066df38ba46c037f5d61f04d9477b642ad05b392fdd201f433d0a273fe80302047c435bb500663064023059eb168854f36e2679f7ae2436bc5b958893d3bf0a37506c97606303e32023cde9c758f71ff50e92dafdb33f961e0a8e02307a44aa1b27edd65580e99bd9a2defd8d83f63638b80479c50d3b5e6802b6bc1d8eec98f045405b060319976e9480d1930302047c435bb5006730650231008695aa01dcfce3cdf58da51e3e9c7aac59b30382c0b687a7347d51df2d93ed75c01e2f2243241fbdd5dc992db19a19a102304914397bba18986fa0ead0d0693f0cbcb5a55e71b7b826a8793609f8865b62c11236a65aaf434527a01d2d467a17f3e70302047c435bb500673065023008905b62d59ebabc03695be2768a3938e526d72d7ca005a6624542878af42f91e673d55e7604fa72c199e1a0557c021d023100df4ce3be9637899e88525b63ad1862dcd11a1c04c5bd87cfb8a72b26fe8cd34176fdf860c6f3b43a23c70affc2b3b5fa0302047c435bb500673065023100be5c97fc6a26113afb1c95e91b296d2c7a54ffbe39d191cba703e0e2fb35a8a90102c7ad3ce39481cbb9f3b3659904d802303a55126d7a178b2c71b6e15c780e22198a0b01177ba90fbbc60251be45e190ad99f640f0be3ffe4bffecaadc9c65ea110302047c435bb50066306402301d37b42ff2abdc674076b615a6106d95208dd9bb05ad89b77ecb69f80c81c9eef98c2adf9db4b34dcc55a987ebc5b5280230596216d0b557e8ea0bbe97e74d06f75053b399506a2d3314fa5556b6eaa00420605e494d582b27ec52861ec7dc7266410302047c435bb500673065023100cbf2dc9c87444bde59a3d20a204f2adca11486e7065cc95cb1040e0b850ca636a5ecc74683d603e68cd8d32a81815e7302305aeb2954e8c72ba81f8f80e287461f9f14839729a373939cf7fd5d8f85359d5061e1817da087ba36dadff150500a41040302047c435bb500673065023027a3ed6830682740211450c0b0329e96bd314bc6f2a71e511674c450e63b80fc746f161374ac40143ecb5f054c09d0b102310089d1603461eec35fd83e0568df6a3147da6a65edd169547b9705c02a0bcaa8d54971cbeaf4ad7a0522d80e3c6f581ceb0302047c435bb50066306402305d4c574b313269ee2c4666f299a3b54be98114ed4ace9144fc1a76d06166a0b43f4adb1e2a5553593f95237209f5df57023060180cc2c4ff12b57827237c241c74a65e7723426c75c7afd8e466ed52fb72506b2a8c068fb4a389a10f177076b562700302047c435bb5006730650230450d05c50ce55f74a0186368cf8143708836d4ef1a4c5653e863b90cbf56c94811d60aac1583d5fdaf8a36bbe47ee4a0023100b4855d137f31fa2442d88d21faba9c377b7f63082bcd61d4917f037e59c50c5225a47bccd87d9618694e8c3fed7529ef0302047c435bb50066306402304fdab17d54f3a303437d75ab428f4be440955f086ff9f16db6f772c9fc77676529a3b7daeef6e9d79939cb49739a0a5502304b076353ac8947e4d42a6a399283da202895c8c91bd00177b575db8641436f984343d5fa5b7ee7d2b81fe88b1984baa40302047c435bb500683066023100a4b64507f3e076522563e3104a9f62cf82fd914dd1029e107323eadc0bc568d795582e456ef518c5069504a69d5d66a7023100f180c284b57c8ab7d46f9a419476328e6dc11d2ce7354b96f302a2bb751af4cb0da8400b6135086beab28c15cfc590db0302047c435bb50066306402306a393c182a605f0e0401c6a8a9d4956a78f121ab64a0324ec0aca1702f8c7a231c569b72982fac49d1aa581bcb954d7202304e77e477986cc0a9c0e24fe13f51ee3c30718085ebe76b8c722c9555edfb84d82dfcf5e7b4796c4ffbbdff687bc4f9a40302047c435bb50066306402305673844b0c6347b0decf9127fc97a820dd366411666ce1cfdc7b251a5209ac597c1bc10278a4ffb5d71d96a801d9820f0230378068c61a7fae7bfd163c55b33a2d7f94b3b74d281b0c43bf10e47248de4d35aac50d0497dae574ec64147bca0748130302047c435bb50068306602310086012b61ac8cba05ed317ed797dedf4240958e34a46319650a5d325c81a3e6098e345a22f025db89765b28c0db20b07e023100d740c05aafb05891287901775c7e2ed0345406056c6d3804b6c64386e11adad63232c31b80b7553441f0fb0b338427640302047c435bb5006630640230356f416a524b551e4baf130ef10b022504ae3e17973830d8ee3dc15ed84eb68bafd060777002658414c012e9f578b5e202303c1e3864e4ab5f1055cabf4a8acae4a2376ac872d3dcbd224c56576969c4b99c1e73650b414b7fcea6075fa3b686319d0302047c435bb500683066023100c345de7787f84b7c524f017d369168f5ea213d755c838985b6c1e47612c01dd5b98919a344a5b0868201064eab97ce37023100efe718348826b7b28d023b4a9f7e5f16f276a992318ab5be28f52556a7402c6b7c1da7462df14a28b5ba04a1fa1fa11c0302047c435bb50067306502302f153c6bda0019115e8b16fe584e31b514b336582b34a6bc831d0956a7cfcdc80a598297caaceaeb4e03dd3e4692ae85023100a51361c08be7eb9df256e921a308f6ba4b379392dc6445f853dafdd00ca279bded9bf0e4bb118422b54d273efbe208530302047c435bb500673065023038651f9ef883a4e6978874be42afb0c261e990dd2aefa669da57fa2a1eb9d5205273db1793387bee524202ae10a63bac023100e3dc779d41b2f8856b801cd54939d55e86cb5afcf72e68c4c18dc90750b51a4bcf485eb928efd2bc255e35a31b99504e0302047c435bb500683066023100ed629bd421e654f7852a40db9958247bc0307176d5bbec526b7d987d5a3ddc5b0fd11a551b4f05fbf63db3b8a583a845023100ceed5756f81c5ed713703719e75edf257cffb97754cffad67f85b15e7d04102de90b91ec0c68dbd7549be210c9cd47590302047c435bb500663064023014bf0ee6f1d0454d9b1329d41407df0ad40412331baf0b24a0915030d581235eb2e34a51375179250979edb977a1839502300e1ff421ef0004e1a1b0d5c5230a96e3dea012b528f5659600a5688dfa20ce6e028441a13e0233ef26adba087c5c89360302047c435bb50067306502305682ef8ee5a7daacf9bf7b0576aed8d8540c22b696711af78c4f7ef2d1917e3ebdfa5e8a8a12dcd6ea2a764623a58e6302310087d7f4f574feebcbe0d6d7298939fe07575c944f665a4194c1fd2549b0a07093c98a2720a835bfb56c3876699adce50a0302047c435bb50066306402307f21d5e90807bd8058127e0d99780f1c6f47aca3312ef6a8245098579b36800e024a7ae11a8fdbac908b62b030e69e3c0230376fd3aefc9bdb16461f09b185c4d59ccd4f5bfdf21989ce14a4300b80d716a896a338483c89a82cae619a81607c703f0302047c435bb500673065023100e9b801fcbf7187386c67e137c24f380b9836a2446fab55a9dd296b30f14ecdbfff385e77b0d32c79df705b73e6385d6102306be1921e778f94c5093b95102a53637ca080a4a0d58cc69fad0124f07ada55805f89d4602ffdc511cfe0eeca217339200302047c435bb500673065023100ca51cd8d5d77084d7870b836db247bb7c5818e0ad9773e2ebe0b7769a3f22818c480ce4d64345b61c0844c76badd37e602301059210fa710e29bf85218b34f430783b70d3bc9b39810d836181e2e681413f2becbe2447c6986a0e2e57a600b16c2340302047c435bb50067306502304fb2d8dc042949d6f52b5404818b4e150ae3d151f637066728a8beeba69dd6fe76e88f42919051f467169bc8e582e771023100f4e6fdf911e3a06b97aac27c83ac4124628d378849b43922cd6810b6cdb91d9e5d3cd4caef9c54e3a67678c1d46295630302047c435bb50067306502306d912039df51b020318dc8161118155d11286ad968b46c64d9c9663b1260efe4289496a538d5df69c60270e1b79f5c03023100c5d2b6cace428955d0946fdfa3e6082101e7913d43e3c6a43c834573ee5dbaadd9534fe1994e94621aaaee15dbaaca210302047c435bb500673065023100f8a8a0ebcc994a943405444c3ebe6dd709f3dc708612125283e95bc3260f0fbc5feea27d3e4fa0c10235393f832a996d0230517fd9e5009dbe5dfc446d9e1f9c1329b313557e6a2203e284f19fadb8d45dbefe4b70166fdea131701b5c11328bebdc0302047c435bb500663064023018d71687af78081614d765f9acc5a7db0bee7443888dbb5bbc948ecd55c00358293b2b9edb7cb63bf67a6886a9973d4c02304aa3ea6bbc764991ac8a3f9676ab931f2a4a02ed859806668678770633a015e2100a2a4219360181bd73c3c4ac2f1bd80302047c435bb500683066023100e4ebe4b49ea009b99eb968c04051b8d71d6c91572bd0e7c01d7c937ad778ddaa11a570256c289c8aec08c4f8beba3e3502310090d3d600c86d0d6a404044832a0ce6b78168ba1fd0c5b45c8e662fba52f4f7f3ff30a151f89d44e2dd0dd0f25ff5bcb30302047c435bb50066306402303cbd934f2e93824a6d70804673f75dd4e21f6ec4dceba8a7f96ce32e850f628c8197cfe985d98a48568ab29393ed77b302303f304339adbf47c7fba8996068074668ef6052d657f64059d5bb586d061ff61cb7e119682a5dc6a6927cbd4bd234b35f0302047c435bb500683066023100bcc8cd964b70544ac2b4751df0f0ad4888a4c99b5765e0830c0fd592c007c596207ef12a44e60b87cc4274189d477dc3023100cf689c3df5012c468aade3e4386810e16158a80928592602e28fc18546c8a7b27b85b6a714b797e8f37750a1fbd1f2830302047c435bb5006730650231008ca4e0cbbdee5e8adf0d542a87f2cdc91310f434afc73b633711b9b76dba4b7af074428372781a3c106c601c9f6b191702305da2a4b26a09ef71e383b22f70a2a2eac010b7baa1681c00dccd63a91e9d79f81180ea93f0593d4857f0928abdc5b2010302047c435bb50066306402304c42ea9c4615e36a0590cd2ab132cb17472215bc56a6d10191024ca909ac519bf8ce06dbe1544cde087cf16e4e20fbfc023072cb3982b143087eabeda81380504e1fdcd23ef24c15b7e408adb0db587829dfd065eca69ecb83f0cf238fded21c5b880302047c435bb50067306502307bb2a9e2e13cdfdedd0a18e2cb9a1c6e29e1b9e2f7ba9eb3da1ec5d051e1a4af92cc7c9ed12d69381527c80addc0244b023100cabdf39a0f4e5ab0721ce08f6e9e4e5e03dfdc1a24d07450ecadd02763e3819a1d400b13deaaf657619c19170797e8a50302047c435bb500683066023100f5d6e1dca59246e721a4c184bba0bf8cbba70d5e22c02276180a9dcc436ffae32c69af1afffdd19d63fa3c96a7b0a33f023100fd0f9ab2c82146de5dd0b880c4a52180b67c942d3785ea91cacb8d81652a143ce52fba86de026ef6fbb869fb563a16060302047c435bb5006630640230792d2e3c45b5fb897bede5564d0e41766d33023c45135680304525062239f21e54e6131da793665e9f42b06203fe7ba202304b7a5967eca576169aa63183ec4b915b22b2dbd1376dfdeb5c2b586293d44f65e713a0e7ef961f66ad65070728fe3a9c0302047c435bb500683066023100d2dbc7cbe89f84078e140d2cb4e7281b3ec8ed3c2ecc3dd2ad0be3a598de16ff7bcf49e05a440d7270d4fc459a6dd9ca023100c6e2a0bb3282803299c87c3f66fda814c89d6863e1ce13d9dc1fa00480067238bae5b552c88f97bd76b7efae12d8df920302047c435bb500683066023100e12169b4308de0ee22128ee327cd2a385449186949e027bafc1580775a576af647fa4d22a46d64fedd752a6f74d2c0f2023100bdb724c581bc186d99d562f6597e19a14eb2bd0fa4f143b42e96ad840e18fd393973e0f00e3253b79c67ea2fecaa6dcf0302047c435bb500663064023045171b16e5f36ecb1a7764c8a39b7a2b28cd22607a4ee44d2fe209d5e6e69da2f7a2df56f7d5aaed6fcb09c063314f3f0230098cde82c2909adf6fd5b9205f5ce63bc69597e94578aec7fb85eca7faef9b6709d7d82ef2c34a0727d443d0b100f85c0302047c435bb50066306402306fb611edd9dcab380bfbebc594255f14da8da2c93db81b5477cc802a3849b9040ac5ad13666bbc3ef214a0697e6b107d02300585b9fcfa5095560c0c21c5311ba18eb2454c51203407ff161e56d9d6417cbb0f9ca2aa63c0ae1686d0ff497cbc686d0302047c435bb50067306502306d4d951c049a9525a0a9c47fe56ce6591f2f9e5e68e8402f6207407496b82c3befdd1c852e1345f422ed3cabe598a19402310082f4c48c7aa2286498c797bb30727cd93569c1492cf93aeeb0955246ddfb35cd823d6e17a33606f34dd3a3b3a064fc1e0302047c435bb500663064023006ff0576172984d9c10eae7edeef7c95d68daa81a5e9a5b6b22a0e5375f3b29f5873f5010693222f84b88376fd65684d02302fcfae8264f22fc27ba872b3964874f8def60c81889fb66fc1afa801e4d28d2e41235441e266b923b81465cfa47f98b20302047c435bb500683066023100ff63a445a066e4fc8be1dab6ec94a5eff3dc40acd46e166cfa0e742f6f0ba7e0fd669324481cf6b8a9c838c972eb07ba023100dbf4fa014b65df9193364ab25fc9e43645de788bbdf27c5ce7c721486366bcc0cec65fc7902dc6fd61873f42f8baf1910302047c435bb50067306502310096f7992dd8171d3b0ca50cc74b52aa989bfd68b810e102809612a973a7528abb27eab6e6ddaedc26c707673558f93ddf0230370b6cd48e572c1c4b93b58c7178ee807ae4f19b3feb3c6635d44d6166546b912fc3e8b57d4b7b11a0c65d9ddc3137830302047c435bb500683066023100d709bf6c369c19704cd91a53a2f178059ae7bffc959f4340ff120054d3eb6ee5cf31ea87b189d22d9c3d34e8308a124e023100ab28ec7dc567b4015ebf94055c1affb35814563fd27eec1d08968668d4c0b006a0d89201073409675b5ba481306a62710302047c435bb500663064023034c5ca6b5b15c9cfc82292e589e8c77761683cdf06793a54c9a5422f2e1aa64e06d4d846acd0d7e8cdf3ef46a1f5ebae0230553febc9bd35d53ac62dff7007c8514bb57cb86760a6ed9454a8f32ef97e6ba70eb25036c36c79c1b952e3c346494cd00302047c435bb50066306402307f780bd7b65076ed022d616227c89f4f61fe8f929fedee8d76c31e9a74140190566a8fe2039641312c960763b5b9e21c023052b40801b245dfefc8c61526ae4252b7791a227ffd6308de8b28c2efcaf7a4b3bbc44a35bd6ddf54e309db0e8fee34fb0302047c435bb500673065023100c22ae92c262aaed95182baa6f896fbe624b8cfdd1f5b97c44e323126ac52239dcacca14c272ab9d2ea3b28c70fe0c1b6023053db53a49b7d65c85c8422ca3d2a8908f1cec2803b3132ba138fa7c1186452ca89fe9584db3636f2f9a006d04765ba020302047c435bb500683066023100eb884a566ffd754417072a63904fd1dafa919553b96a2d3d4dd92c9850b35c55fdbe9035c245c322f7ed6e04692f2d68023100937779fc7e04aea10d2a59a01f9f78341a05953acc444a81892d23c604b5eb52218f16ff2cfcbcdf39722c7e9aafd7a50302047c435bb50067306502300b05692a1895087f6085ce62d566e28108fe135c611e4ec47ff65b3586aaf7ed35d12867604e53a1192a0b51250cdd5f023100eeb136d229a708a3e9bb9ede6d4ad806de36f407e87950c0b8644e29925684f79d284c2c9644aa6c9d8fecbe24f423470302047c435bb500673065023004332277580861d907f4ee700b1b7cc8ce5beb49338ce97a7c35ca02f9112d8d8571d6b27af51935d0e6810f7794062502310082cdc2dd2ea5d91401769779751fa4ab0729ecb669e1d8ff680bc284a333dba5d05c3601162f23dfb93c3efa43247e360302047c435bb5006730650230029628b9169e03dc00895bbcecdebe41219c3291f8b9725abe3c17f6503b9c7b88a1021f939a7c85229a56cabe31495c023100d65e4600e8c64f1dc89157471345a8b07729fbd8496be70b3d861603fd97e6cd7474f81a84fe61f6de68a22088437c890302047c435bb50067306502310091a46285327f09c7fa2b9827a554bfc4721e12edb3c8fde07ec133ede183ffa20f5d241415852a3814e2f61f88eaed0d02300bdbae80c3dd16f4be79561b82c193c7b489939273c0b48e4d3d3e0fbb975a18db931acea876110e8402e99b1690897d0302047c435bb500673065023073ec7405e3cb764aaba51f223f1c1da7acab7b6a07f6b9ca7c68bf9b7a7e21d76ad16e00e1bc3228fe53eb18546d0386023100e0fa84c82b3eb29a652c7dcc13ef45dbd8befe1a661dc0314763b9d78a57c41c8797dc0ed04e26e98685b2675c374d7a0302047c435bb5006830660231008e598f90870604315758d7e3f8a54bd9dfec95aac65a033b475b500335fd52769f20f1a3454e494c303ce70d7962c3d0023100d550ac7713422768d01cc562fce767cd1339edbc5171ff54d3ef0c3ab5e2846ee75309ba34982b025c93e73c43b524fe0302047c435bb500673065023100921558c1044ef6dde118828b3aa64351ae84ef8334107b34d21a5d1d92bb6a4b8c9965aa7a67abd63e832f0f638624d702307baaec6f65467846a00de220332587b8ef7ef93cdf0e71ccbb33d516b7369baa91b4fcdf10b9408a57bb8a0a3b0a5ee20302047c435bb5006830660231008f4c5aca5ed03093ca263a0e4177a7aa148388bacc23f0091b9a38ae7f2f473c17919404bc5a92c0dee3dee86357784b023100a2e4c22e4ca5da743d2ee5cf2848c540c0c54dc99b27a9d76a542500a07723fa16a0a7f8deec1aeea2c290bb539f887d0302047c435bb50067306502303eccccde99d6a6ab7f2efc0230bc042329db9ff3d7d4a5cedb761c7ca7ea5b6800286227b824cfb7f94673aa694a383c023100ca690a458ec71ec2edf89dc2081679f31027c4bbe4cfe45708bc03d41ceb8a21047ba47026a2219598b92dbcc10e77910302047c435bb50066306402305538b5c572abc6269383856e39b813b32ad68a6bac8cdf942b7e785c97f364bb972dbff3766a73fe6f071b883b2109820230337e2bf499a7a242d3be8b4d62e47c5248c5afdb98244894475ef6810f9ed6ff9ea2de4c16acd31646751fed8c6a2c930302047c435bb500683066023100c97d229c3020edb0028dd554af6863ed43c28fa9bd4f317428cadec27d23add1331b047607e1bd6eba7c770d009237d7023100dbd127f945453cc414a3c25178e4e2cbeb26ab1cad9d9370e02932039cfc6d9873085475ba70c628d1d19bae068c5dc20302047c435bb50067306502310089fa14f5ed372b37823f85f94f126c494141a2827e5b90b7793fefcaad9cc70c045e0566afa91ce6cc21aada6bebdaa102303cecda8992f90914f46ae93e2f32daabfa60a2d3c40dec5ecdb9a5697c5cc89aa98e6d3232923a6ff58fa22dce6c2e500302047c435bb500683066023100f14e1bddf6764fc9c04064a2f944b77ddda116e39a9d36ccca3ae8ea56a92b564265640c75ea878451f7a6e661a6662f023100ac3176bb3ff64b8ffb7ebd58eee56a97595bb787462014f2ded84865858517549aaac8faf70616ea950959dcac11e28f0302047c435bb500683066023100b738271f9c3aef699603230221528435fa55af68c65754e42320b1ccfe64020d899a3e232516a8e5e529eef7e10fb0f20231008f580f0754fc526059b22362525216bbe77ddcfa40754a1c310f814195e7cdfd09f328a0be5cae220ec7c54fb5af21270302047c435bb50067306502300b66ad7e0bd288b58c5e9972a71e0ddf5a9f101f13ac45b88d23b319c2fd62e04ade496a908431c7e48f5fb0c1158441023100de413511c70669950ba0b5e7930d69e97ffc819b7bba53ddcc81c117b88eb28abb56809a562dbc427cdc04ce93fb172d0302047c435bb500683066023100990ef29913233c30fab0ad17b5b546ec441b3f243d0c44cc9961774f916778bad104df2d8606abded23f2777061da3ed023100ae2c5ce3f25e45f4b7bfef4870d2b199a03bee994e8b7f5d2f743f654d867962c9a7d947701d69d340ee7ba164c875e40302047c435bb50066306402304a29c89133ca0627d58e6a6668544d4e07f23d132b19572970e738c96421f0e879272c24dedbe1d1f53cfb56f4b017050230139ac1e9ecebd2efb174d30ab9f75dad42109467d134c4f0fcb3b0b1cf70cd05b17931d7f07af7f51745192a821d04c50302047c435bb500683066023100e1b38b58e83964f69669a994e11cdda1bad41fce43a5edc041fd6b40ab973038acd7359f6dc17eb3b2532b6bd5428a29023100da0f29886db92edae691af837080d8fc9858ae005b8bfcf82c5eca80856b1e74807a768483c9449b3c558812f5a11f570302047c435bb50067306502303db10a8ab8d40dd4c8c0fa290dff796b26452f46e12d2ed8cdd8baa51297dc60f550ae44fa1471cbcb256b83ae52d9ed023100a4ea33677b2e869cc3959508a9a9a9514808d26a72e52bda746d582bac3f88d797718ef5b9be83663aff74412b9032a10302047c435bb500663064023003c4b8927922caf811816e8c121500135b1da8f98778ca070d58ca5edbc9cb0157e84c3dcaa9f4170b9020d2282a71540230213eb7bf161dffb2ece97a3bb2b2d1134fc2e4459ef1c62c47dbd2ffaeca9de3c991eee7f371af37a424d17fa743414e0302047c435bb500673065023070d9a7ab2ae7bb384d55b9e9471b6d31d9bf3fea1d21126862e4c13b65fc35aad3597014effe4b85b3fa66f1e0cbd15e023100860377ec0982341849fc7c29639bdde19aaddf6a1a27721da21a584dcd7e3804ab2d007df5369161fcc048b8d518744b0302047c435bb50066306402304472404605659a61d17df04dc5f20385de038dd7da1a25c181042e2cb1e0565b7002785b51937a7f23c34ca2a9149f52023003723232c81786456146b34bffd586a0047b30d19b56a1856b83816e87f8fc27fd37e0e0e9716a7a5e3cfeab5da513d10302047c435bb50067306502302dd476cf6e9fa5ebc7c8b5b56291243c2c586ddb083af161838c326558afdb72d46a4aadd09c3719dc09a25b09a4c55b023100ab72c92eb6c50bafbed5ed8bf978e212ed9572d805a4012b1e6a58a47381f86fa178a8cd49d64f87accbc94459e7d3960302047c435bb500683066023100cf58a6fff3c25107bf87d78a76ccd6b687151ccab2c03b012c6acfa13c3916ce61f29ef7169b4b134ca2a80ec365c7fd023100b04551fa590bc4bb8415d4d566e1d3dc6148bb23e99c88784ac4dc20e0428d29f28cab7538853b23e9c585b862faa1870302047c435bb5006630640230154343cbc16c146cb1078c787413992863fb97918af95230f1447e134b4765bf0692370444e67871d4c9283391fa63c402302458742bfedabb86bcc4bc0ab7f31fc9f99b0cb2139e0a5bc27055cfca77b61bfd1b001a1aebda66f3f1d71fedf50f960302047c435bb50066306402306bfa553a8707d9cae56998eb7586210105200abf217b7305fb7e5166da844136418a24c1d2613de1c4f897b06c46d532023000a0b17f5fc119f71fc102934c05384c2dd8f6c6dce55f7e5a7290d7f4c8d122aed5b467c3ec4c4a99097d23b67cc80a0302047c435bb50066306402301e06bac61167c9423eb982a77573b9ebeb54c0531b1dfe175c380614eff1ae26dc668b43522dbee57c35e0e01c4dc34702300eafc5226191bd65c3ba5e437a90833298afb878558cab7c2a60d65125bde3647c61b9c01654dd412ede2cf01a4b36cc0302047c435bb5006830660231009dec64a21e3fde5a4cf34d4b18b9e3c73512947405a596d2c7e747a08f343af691f11484e28a79f62a10099f261c1e74023100ca19bb23286798b0f6e1ac4d2fb52b671e3f00997700bee3946cb8531d8b06c971aa6d276721cf143b7365ecb9144b6e0302047c435bb500673065023100aeea9f92c849328948e3c7c73994d6df96268b7f2bbe67801822472b7dfe29ba1ff5b00f57228d0a9b886a798725d5fe02305a04d70de8c38b35a76e9246706551076a00c546bc1ccfede9ae2f80ac5325f7197964d4f109b5bd2268bb9b2aa4cb670302047c435bb500673065023100bcb3e17fe7460c4be045ea6b51d398ea63ebc42b8af68e3688a45d7165e29346e5aa4725cadb067380b5a2a7b890eef1023074639195371ca06adc9802e0421b69f1933de0f968c684263569e48560d90955189740c4441fde2ac40ca1a768f54d280302047c435bb5006730650230100fe0a0a9b4b25dd4bcf7debdd35c941d569aad8a2c62e6dd22bdc747cb8c9385def0d38b85343da2152eea086f326c023100c57ee7f487cae9ec1deb9351109b7324767cd6bc13ee04ea08a089995181f357240b57987c150491a03bd5960d3e63a80302047c435bb5006730650230506f68ba042e24e99f8fa5374211c7cdfe6ca61f1a6f4fd1d9819fc127dce17af868cc536054ffde1abd0f92cbc24498023100c056d9afa77e991698c8871c5963ed4b95057af0938846c5ba495a57b1962f8c86a83575c3a5ee51e3c469633ce378f60302047c435bb500673065023100a8ad56593f92c4062a850843a64f7642d32b6148ea1c55ded4ec4b4a28aa91a5ac13a9de4c221299793f77da32b6917402305ed44ea6bf9621aa9db6b3db5fe6121ae3aed6117a339da6f85c36b87787ff81ef499612bc7b825a4e15474d3df8b8ff0302047c435bb500673065023100e3db2cb897642588c65e0f0629f86dda99bf2b1fbc997bc91f9d867fede1cbe49e060c954b6759065f8e53120718679502307bb9b5ecd60abad6b7a8ad55fd25c20f145e44ad082ce81a65cc931a3652322969f7b161dc7051dd24a5d313e558a7590302047c435bb500673065023100e68ca55d7e472354d9de3176eca11008c1e54539ee6f53de9b4a976d0a57f35afc30ca95184108b89014a65e68b87dac02307f3c2984bd8216d0c2f574c923fc64c1902509e25bc634117e751e950a78f2708e5ac9dc85012b0ea8492ad44ac06af40302047c435bb500683066023100aa8ff1b17267bfb566780137280b6317c75cde668e23d125053df6d478cc13513f48261f5dc4e51f6210186bf9e06d0b023100af1679e1db4a087db793c6c1266be0a5629ea633919015a54a0b32d751eebad2db724121a56e4934d79487784df9d3b00302047c435bb500673065023025338140a42285d5c5e8fd5809ed832d20db63f98485c7342666812216d2ee5c3529c8df00ecc00890a924cfcb4b2f0c023100e5959d105ab290112aa768ba740d354f26de854d36b1fd3e58365ae6f362085f68786235c50f7d3ff0f16353c26fa6a70302047c435bb500673065023100bccb5e0fda7ad66f79e5b02fd430f0c2615265002da36e5ea6818a1b7c384c054e64dd2dcf58cd20a29bf5862eaef57d023057baa83fbdcd96a3bb44b0c25dc7f978b36bc4a9ecc488b34d7af99fce5777eb0c46d9eaa5309026f558c3bbaefb897c0302047c435bb500683066023100ca93713a8d9337349330acdd866cead7a84e68e8ce9a3d57b8be3d8e5652e3ecf296c53a8da0540a6259b6b36822695202310096098ca9b2325ddde222926ab4d24fb6dbd43f703e29534d0f1903c8f12c8134e3685ba715fdbac78921616e4286b4c20302047c435bb500663064023018fae176151e4840ff65a4af569e0315d3a1742f6e7825ff680ff40b0d63b1418a6b0c9d493c0431b5afb0e131486ef002307683c94f91522901cd523a028084ca4dddd1516d27b3c0247f249c378006f47783bb9a22e0615da5f5b36f258bdcf8780302047c435bb50066306402303274d56c2321abeb3f50d1abf7a9613f69211342b643aca9eeaf257959d102d160418d5c74df4b607746abd1dd3b9d0a023022a67d8e3559939e08b57e69bc738e7b6ffaae3c85696d8e7ee1496634fb7703df84a2d930f82f6bca7a014993744b800302047c435bb50067306502307d65ee9d239391280e818be7dadb2a3925ebf8241b5211e3a121394ba50d9e1bb39e2fb19c422f34b1f814d205e23e27023100f410f5a6e412239dbdc1cba741beff47c52de7158809777249e25836757ae962ebb8527e80e846116ac4d9958957376b0302047c435bb5006730650230664198df96bb38c282efd564ec496029d80015bff8fafe1d88b723e9f7394a9312d343e43d19636f30b885b02651f0be023100bd4a16e524abb2e1d1500986c41906a10647812a52be12b8756c5a899a18567114daf7e221ae9f2083eb97eaf2b69d930302047c435bb5006630640230081a90cff2b44db106c74d3dbf31851369ec3d206481cd643d06e5e8cca619704fe5f9352ef7469bd373f03442bbcf6e0230266ea1f5ccee1c73cdfcaf8ad015a7c5ee9e9b7528d134433f04384259b71481c82784698a89f0d96417da22289e3c230302047c435bb50066306402305e9c21cdc3a0c017f1ba96e1e4c492d1feb3805b9303f1969890a30c9e643c97f1bf37241eef67d3b8fdc6dadc620fb902300b9aa843e2c076bfaec9eea8a0e96eea3c56fd674e83598e8e528142c62a2fdc5b7f7bd2e4bbf0a9c503b0a323d2612c0302047c435bb500673065023100c0f908a8beeb0b0598e5d1d16f5f5e55c0171f472fb23e76dbf9a545d8003984c2fd6d70ff8b2c4d8a6ae32bf1a8bf3a02300788167080a131dcb9534095c50cfa31aba93d249d4b24163e2e99f00b4fcfc35b7ce332efa365adb4e2ed5912cb441b0302047c435bb500673065023100a878f99bff861d9371f64ebac796f350a8048cb4a14687cecd97b3cb1b4abc1f8a91784b19da050ecc54ac1f61cb5ad4023052091e75f65cab48d5643bc0b76fc8d5af167359e5db26f5bc2ee51c6ebbf7eaa033cee2092792dbaf64c6b6354abb140302047c435bb5006730650230690fd0f3565a7ccf401262eeb19e057d265538e0c7bddafe7d4e862366622500a0fbf0ea0eee0859627688703e2d8d47023100a14050011d719a569625d6853c4c3bcf01723e7284a15be5bc9f13fa7e65980c1220b0fbeda91fcd00a7d309e3f3b89d0302047c435bb500673065023070dc72f6e9a5ab6a9258b303b5437a7e541ce8a69013df80e5339dd16f89e5f691aed7e6aa94253146f4f68d265210e702310089d968fbea30ad7af415fa1edab15c608c71c69c0ba66505fc633c21b915873f724337d11c02790a5f526248a1b84bd50302047c435bb5006730650230178b924267a5c6fbc3c7afc0682ffc50d8eb44e162589df0a7d86091e9b5d48f2f47bda264503845a117081c35c69a49023100efd0ee899d790315801635f87a00058673848ddb12c11c7ebb072d453e715c7d8d1c5218a311e3bb2e6af6b35c2b0cfd0302047c435bb500673065023100feea1e4c9a1af5f23e0f522532353018f24fd8a18b6a1c32072a2fcd2e5b40996be93efeb4b4e219629d17da3a9f218802300e4cc7dbbbcae30b8ac28cfb31949d661a1a53e8c434fc41271e6b9d0a25ead6db8b909b0fbc4c8636adfeb8f6bcf4c40302047c435bb500673065023100e68298aadc0c0438d7b7a4b9782623c8e74f57b842538def3e8bc139a2a1534369a608597742319add0d144b5dfe2a5b0230736caf7107f3ee9c4ce45c753d59618b20e52c731e882985a89f2e981ffb5519da588f93232947da9dd6b80ca3b222b00302047c435bb500673065023100c50f77e69f477bb92dade9bac5b05b350fec19afe559bdfce9b782cc8a525d40c4549df46d0fca32ca4eaad52ffe881f023065313308e73e7d9cf7bc10673b408bcfc0dee3d384e0a6352bdf88d15b83896125c1bbb5d87135142375aa0d3452fc8e0302047c435bb500683066023100e1a49a4dd1c13d02557cd29cfbe4d5c3ff680a396b554a426d1fb21becff60a594a391f102892660ab3863abdcd2d1e5023100b849326784ca848260f261cf7e028bf09cce0d85e5933d85889ead73e56acfd147c5b5e8deed2e50794da823947726a10302047c435bb5006630640230343083a30120a8258042453f32ac2786161aad73ba331f7ab50975495b566bfe555ead0dd75c65f8e9b7a51c3d305f49023063c9e7e7703aa8cfbc07a6b7e5c256538731a50b76ecafdfcf5667510a367a52b3c9cd2495ec9d3a73ad630ef6f2225e0302047c435bb500673065023100b08c1b06461e49de3a15f3798fbcf64c0e401ff3873cf2b813c07c7b1f65cda6a4ef6ca55e89a3a3527362c0687913dc02306abac1ef187e14154928f7706374451f3acfedf1d37aac9cc1bc6b3dc23089882b35e1b7352f7b74ebfbb5861b1cb8f50302047c435bb5006730650230033d282bf809647f0d7df64c6844184d63ca79899127ec8e23c409f4fba7a8a2dcf9f66bc754935ba7c010677c2b0896023100bdd93745be4bcefd39a8697cebaff10ca7e36883e0ef9919c6ba12c623bd8d70904447807d09a24cd068ef99413ddf060302047c435bb500673065023100f33565c8f6c07ae38d4c03e430968979aa19c3fcc0f48ad49f6655c38bf3b5f58e486c83762320788bf6efba241097a302304dfb3b7b46d3ee9bbb252156b0551ace6767443851599cbea25d506bf6f91006dbb9d31168a43db8355eaef9485e525f0302047c435bb500663064023005e65b104c4d3486e0bf1e9985798e971235472624351d7a5b824634f2cc51142e5b375a9b6412823679183d9bd9061b02304dc07ac5b6a9ab48d86226e5c046763516b78b0e471265db4e24fd38de1245d66fa7375b0b9878cb81d97aadda9a28bb0302047c435bb5006730650231009fc5e9dd319eb36d096d79cdd4cb6f2b260748ee50b9f511241709c1df42e5df730cf7cc7a5d1def9b2e24e6e51eb6f30230599a633bb490f306892142b734d52f69a7a40d32f654c5abdefeaa269e89571357fe821810dd70c831644a480d66ca5b0302047c435bb5006830660231009d139ee9f61ab8a060b740eff07b8c34b1c8524a695ae8a52998b81680aa40f74299047c81d65e07a667dc3ab2ee93b80231008490586661d86ed1f4fd8874c2a1df1dc4aad4907fe07129830c8b33e79a93636903a640029b2756b23ff9cb53ba62410302047c435bb50066306402304728e628836a67ac366d6c911c0ed7fd0a2cdf48c3badcf20d9b1dce1565fc2ee2e7a3cfe1b9f14a14c0efa9e90fab1a02304f2e0c45376ace3945bf96d7282e4832c461d425ab83ecc74b9ad2f3988f76dba926f71e8d42aedd20d883fbeb1a5bf40302047c435bb500683066023100c7785422e5670753268857755a6ad3edd222448deb6f35fdc62c73fec3e823898268834d7b04d17aeed497db15d8e62202310086ba328bcef356a35838dd0a41d8eeefdf50172f02f302721c866513728c6914d9924197198a80619b44e43ee2039bcd0302047c435bb500663064023052dfff44a5f4235b354f660f991581e2ff87b78d5bf6f9412a718461df10046cd720ba6cfdf76774f80ee39fd914471a023002707aff20f977d5ffdbfaf83a44f1fd1bb7cd966c36d05956d49b01cc0e3e79f3ed8c96f7914620fe8455d346bf78be0302047c435bb5006730650230039574d52b2c92ffb668c97657af8579a7783899248fcf4b5dd8783b4cb3ae45e588e951ed3884bf34244159aafb2a26023100c05e0b9a4c9917f3753218c2d25ed14c4c29d0bf36f3a0d77c9349b8b752cedf9ddf136a33b9009178c879ffd620b6f60302047c435bb500673065023100e4f8ef6c17043407ac67cf5e954650984a2d79ae99dfe77186537e340f1873f03ec11fb6ec31c711364e80047309beb102302cf09998aa80443dce41159ecf4698c84357ad9c9f3385d4be3fec13443243ec11aee0cf2e25cf08db20f98a176dc6b60302047c435bb50068306602310095a8010f9e3ddc18a463ebc5dd40ca6fff62097c60abe9c93bd7e8846211981995f4dcacb7e8c24719b7fcfc05cf9be1023100b15504db50857027dfc1201d2c56343e4e04e864b794dc42f3439cac0030c2f7b3a5b8a4f8a78b6b39f4e17d925af32c0302047c435bb50067306502300660f92af790125f2cf78390147e24331d545eaa6da13ac05e956a973790880e4c4b995397563ba12bee50d8fbc45c28023100a130633cc1a118d712b8392266a65872c1054f8f4f29d1b4f6370857dd8a666885f96ba70ffb232216ea5935b46bbbea0302047c435bb500663064023066347937adba96050213d36465ff7c01a2b90a6bb508785cce062b273abde45c47b2d57379a6964412b949aa9633a11702306eaa64bcd376ad15d1c087b6f326568137775e353948f3bfe5554b6fef816f889390af73c08ec32e53b3c6ca345107950302047c435bb500673065023100fba4a36198f49b76358b6d883f1d52e5a726b5b725e5606cf4017fad3cda9f349a7fe763b0cef4189395c4c0be66d7250230043fb1386c4095b6133937e4b32418a23a1fe6a7be1357c1a39878ee3c26a256b735a8ebf22ae45c09048c528c19062a0302047c435bb500683066023100e96f4a211f8518ae07d48f85323060ac69847d5841d459efebdbbc0af29dbd38d4d7b050eab9743f3fa34e975b370a100231008037eb0a0f6c5d28e3690e3d138c9a066e2b547c7c02a7fcd5c5d189e03b1b2cd6b98bc577767e99311c76fda71be00c0302047c435bb500683066023100d6670a5837f2dee48f8229ecaa136e5f6727dc33c6f54731e65fcd9f9e8da0eb9a06f4b4c23b0f3036cd7eb6dca91fee023100c29768990d3647fafa0c5266782304c0564a1ebbc6649b9feb941a6e683731c167158c1a3672f935482b7accec3456fd0302047c435bb5006830660231008bc7cce8155c087fdea36c4853fdaacb9a61a3856f26aa3ba40e147237b269eb3ad8845799183645fc8395be64482f6a023100e44538e9fdf75cf87abdea9a043e93b8ac4b7d9d3d095e944279cb6cc8de8c5856ee2d71b2e38467e1ec1e0c0075feab0302047c435bb50067306502302cf46816cdef9f38efa154ab75d289c52bf0ade4eb0078fb80d4e22d96f66c785221f3507cdc7001079b4b0e1c91f0d1023100cd1aeb45d36ccdff9555f7b54087c29708ed6256476fc239600c1f284d961d31545fe096ef65469cecba71c4e670c5fc0302047c435bb5006630640230634175f65f547de60af772d504135a85f8ee0debd12086a61a13444364589691287e5e62c57714ff87e83bc5dc4bd97b02300ceb4cbc1ac9324b7f1543c291c48dca6cc215eb1995da57bb33c82557855117bb43f018fec4a07cc54f655f920e4edd0302047c435bb50066306402307b97b949dc753f637edaa1591a00a7068fc3bc6b47ca30f341d0e7258baac9800a63b9df2c66a441bdb670d3a57663b302300100bbde1766a872cad0417a2d118febc03beca963509d6c7dfea41163212e97c2c56274236be3a2b93342b63a9782730302047c435bb500683066023100ebf7b851b57ae9e16f27e92ba220d9cceab13ebbc7a16596076d8f46bf47cd83bf167f7a46551fefe1dfd550144b11ff023100ca5238aff577ee418e51b43b0d802fef53878231aa032dcfe33445a07383fdb93d40aa27c67c9f3184e38f9b15be28320302047c435bb5006730650231009b8bc9fe67d606a3a8fa320b86647027ee5be17bac8b44ee05727afd50b94f8efcd2479805f95e70ee1e45adef86f14702303d577e5f1bb9d96e2ac3129439c07641530dafe56cae2e897949d6671518ec1cc746fbb97459316ab6849bc2bcfe60b40302047c435bb500663064023066a5ee87f96b8322d98137dfbe8d357adbab5585ca86f8f38027cff64a5131f646d7aafceff8986b724d3af963cccca9023002ea948119d0a05302acf0d670a0ee91b108450b3d032e5c7302c676146615e068cee8bd264040b6549ee380965ef74d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023073ff64b6463d6dfe2015f22de6a9e9fb1979d7a9a9c4c4783f7a2d792ab2ebf8c952eeb380e709f55d6276df56b3761b023078487eff257ab611a8c769997580e86ac6bc543e0d82735a82cfcd3b4e4568278cafef77b348620a279bf62b35c4e2230302047c435bb50067306502310094207102481b1b8d35101732938c98a08aaa4f2cf39c3853883da21df3cdf14c1c31fa3da16bd6cb3d9128e5fadd9a1302303b99ddc49bd293aad293f517c7b737e60f91461e19ef787c9d0ec2c44535ae7bcd317cd528a136f209197c57655983d40302047c435bb50066306402304c47aec3def275375dd0b3a147f41d120662af54d36cb5e1cb12b32c7d61397ef0ad6bbe2ea8d613ad1022f4af963142023067559a6cafeee4c571a0f4610f725917a4ddb0a4121816ce159d2c407d3d1bd8683ceb15d48dd3546526dff0ec18c8cf0302047c435bb5006730650230062ee8d6dd5296b73210f56551aa7152e6800b2fa78f536bc947efc4bf5a1e3fdd6d73fe02e939f9582a17ed487cb73802310083a82d5ae2cdcccecd2c7de217e9089b6eb56d4f863e6dcc6016e8316c135b8fbdb00b5a884b6534d6b03776a572375e0302047c435bb500673065023100a207557eb124bf8bafbc10528edcb45b5f60da8abcf98341b844e53d746a3df4ceeb3615bc2f9df2db92903e650d818a0230737fd37e33c8848b4cbfddc9cfdad95042bcc7622001b10d67c057161ae31a0d603f2fe9792d4c6356aa3df1d21b06240302047c435bb500673065023100d55ec270602948bd1dd138c010eaff52cf40fc16160e8b861f8ab2c20389b3acd2611dd0b2dc08bc499ad5a6f2e3b76402305bf93f7b98dbea805b257a4baae8593f8ee66776ea77c06f4bd97453025b34bdece89b6f68c0b4e2dd4d8ecc61ebb0790302047c435bb50066306402306fe7e541a7349ae4b6084f0cd3aaa84193a3aefd5a385ecd642a7ef6f0b771f9b7eb39a024aa96f67a7cf5219af03c52023079cb026116c5b96f4f9f75dc35ba5ec6ed2cff9eda1ebe9a0a83320d212542ba55ad427af16690b60d1a728e44e3a9570302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009023809d411416ba06c00d9ced2d5c3a09955922fca1fe2f2f8f621ee3c3b9ffc599f3d1af944a864c5d54fa69ef534c023100ad49f2dc8a3a1b750ce1d2bc64b077e6e0667bf605c57bc6b1702d93f59c149bbadac49b41c9d7cdf66775ec94ba3a200302047c435bb500673065023100a15f21ff07f1680f774f122b66be6b64056e6ed35916e4a966eaceb03af8e2389cec3840e04b295d781dc510e9cd65e102307b9f7f112f77d90920b2036f9051b5d417569b5655f8f06994de5afbbc2f165bdaaf0f0bb18d28c12a91c3479ac36b9e0302047c435bb500673065023100ffb32260b246cc96eb68648da458b8fefad0cebe1de634c55a11b05218d687a54d2e01a30b14616cb55c447e69a7004b0230088f578d2831c6b972362e82e8835b1e1d698bd59a1a36290d817f3d9f245121c2440c10719dd8f07a8ac2b0e9cfc1f80302047c435bb5006630640230255cd97b100d7c5d28d1bbb67e5dfa2a72edb3f9dbf35bf5c77a9d04f486430fc10c66581bd6ee9b88ddef75a1c7eafa02306d4844062886d9e01f8cd2110e457553f17c8cf3ca7388d9b15aad892bd88953ef6cff923288f261dfdb488e8c9e1d2e0302047c435bb5006730650231009f28a014c770ea1efcf022146228364f343d486e5da14a8d8fd5fc46298388dc50be92ef3d72f915cdd5e085b667e80d02303753c40f199ec42a45407293ae7992d53b462ef28114685fc04216ea7c200459ca14f738a1a438d374a71181380482b10302047c435bb5006830660231009b50992ff268b2499290bda040959552f2b6ed5d7e9fb6195f5169e92588b4d744a4284a2e0d6b12c91bc6a306e9479a023100bf4f282eb7c322b07beec78a61ad1d076f667cdeaef1115216e72e4e1086fe99133024b0d4459067aaabcebc79eb5c610302047c435bb5006630640230730e807eacaa337dd08cb10526f4d5182f921f89ab6921685cd659084e39b0a1a66ad01d6c4c01aa97c81fa29a8514250230609d38005a6bf0a77b9833415c0ce282e4b196f9cffa383020bf8ffb230c484cbb07c05cc1ae4006220c37b01edba8330302047c435bb500663064023062c4158484f41c02b9a06f7883a291740b0cb2cef2c049893bb241e0226b2ea905876092eb97553ed2d55927574a63ca0230394895d2d687144b361170d7611d4f8e1567b62636b24d01b8f3dec8bef6248d6e2d551f352a8d6de851774e411cc9c00302047c435bb500683066023100be722cb59b4b0f914ae0b6a14be93b85949d670f08e52c0e96b584a747fdd26c98200bf72fe694a25649b42561c72be2023100e3b04adc3ad3d78edb8a40ac26663686754631b5e056595b1f4e3b128ac88317425f507a2924ca5969e1a319463bb03e0302047c435bb500683066023100b0a4160ff5a19f1b8f66e13e7add258b0b644627e4f15b49392dbf6723caee9df1f7040fcb4e22e5de9a1e599dddb40c02310097eb44eda24bdc7a9c4ddfff2e104e03f309709ca0140980d944d4bd590c4fac14e781cec4eb8f384f1d3eb9119c5e810302047c435bb50066306402305626314a8588c67db0c61d3419c3b2c977e77568d953c400d250f16d99e7ec6b5932bd7f6e147ffc417042d136a84e4502306d7245d20a71b3ba257b42df303d2da0cc4832cf344de8ab489a0445fda682ffe26f343efcab3b11201f6c33fb7e37970302047c435bb500673065023057f636215d115951f6e5e913092fd8329f472ce29d6e035b6d040e83aec25bd2615f2b5f16e6a850f222c90f3aa488b50231009df3e9d9f6e3b9ef9ae839b2308cac1e914b165392a0657e6675a77764e5909f0b6b6c2fc2e6865bc740f271eed6dd410302047c435bb500683066023100c051742a29caa75197995fc90cc203587dcfafee547d47b53cf52961196b55f56b90b09b19a13e28cb2eeab4c5c1297f023100f9f181390332a0a6d8afcb6bab0b65ff38082abc2b8cf0748214fa94074c8a6140da61537ec69f5fab4462294a832f360302047c435bb50066306402305e2a79f215d45f697c67ec0fb0f3ff513371ad8646d4a7eb205689ce90a12bcdd7db09f55c48650703576cf0200668f502300fe16ebe8e9a51d1b54199e2cd246420d7e0c858fe9d391e07d99eb2389fb5191f9294b93b7c53345bcf8e70467683150302047c435bb5006630640230168ce1facc0d97055cbc4cb1caa2c706b7c39713a943b01adae421f5aa13137db80e8459ba43e486bf77bfec39dc088c023056df84232c9bdfc5188433693aef64ea928e6ec072d7e407c84f05ee96f549c36b937af7e48da63ebf7a7c57a2f3f1c10302047c435bb50067306502302f519bb1f90681f6b7e37d1f032db1413ea75400d7cb28d8f814fd8ada6359aa68faa0aa2143081d7457b755e59b1530023100d450617decb8c4ee4e1d5a8565be543acbf607ec07c85e73231b6e683b535534874fe0da435046ad3fc12ad51289dabc0302047c435bb500683066023100bef870a38ab489d0f8171ea5371676ee5c3bc3bb221f2048b553f6f8c0d21d02dc06b2d706aaf4f0779dee5e8292ca9c023100df5c37daf151f7c419ac2a82b3187452a422316136e3601018b92abd955e79b59c0748ca479e519f5edc7486f75a335d0302047c435bb5006830660231009b674929bb3c832676343531d4e02e434de1c3ad838b460d2137f10bdea0a62902c73b56c134ec9ed30b2e208a3e84e6023100988814e10cc8d330a030c760dcedd96bbedd6119c2051bb472cdb7a690c957efb4bb161ebd844aeceb96709f8810d2000302047c435bb500683066023100b5591b6af2763bcd95761571800f06546a1a8397c6a4e9b23d7113404e86820fa98d99738b832312152695f05b56286f023100fe2d9c59375272f077df75a4b395e9e6491e7bb58f847799ca543b1a8909eb47cc0a87d2091d43b99c82a0706be308270302047c435bb5006830660231008d66b03fb716d1999b4961a821c31675f48339ba6a5ef7c94e1c85028f7c9ad7782a6511038b914c3d25e86fef94a228023100a0eb649ab5dca1e5b03b83afc86b0c954f75b41facd644938d6bb7b2795e884946a5a3fc9e3ddca060db1df76df36a6b0302047c435bb50067306502301b0c65a869ca1ab4329e3046ec0c58c0c3237dcb82b2bf02a10e43f6249264c3b32ff7a83e12569eeaeef539b99ef77e023100f9042af36ab0e7be09b3602dc5b49c5f87923f4bb519b8d9403f6cfb8f301795f6bc8643de36cf4a649a2c84ca32cdd50302047c435bb50067306502301144ccc347ce11173887b3e11cd02580a9c2695945e993ba107ba0b6daf3b361daefdd27fb6f5d804b37dc2ffab514a2023100f3e568855b761718cecc2529a437d622777d02c4f4f6066dcc2a067c2044ff047d37a2ad92af94cc2cb1574b7f9619010302047c435bb500683066023100b9f9a88c99dfc6a5d309f7aa3e7d0323e442ae52f28c143b495b360850211ccf4d3df04f0e90571d3c57cbc6c12fd41b023100838fa74768aa07a4a45df08931d1cc72a8e2a604c78c4c1566a415b0f7ca2035adc5d7f162eef0d37cf12ee4b75e78e10302047c435bb500683066023100ef25ae875cc84c4f04c4b16bb1dad0c09291ccb7bc4674e3e3b0a64cafdf082037702f5b35d4b94a79cb408708618243023100d83f474b010b77374a8d0bb4449fdcabcd187ec77f332d5849ced39805be67eefe2742f0a47b99269742692369bdb77f0302047c435bb50067306502303ad6b8aa6225ca4a1f6c2e0381b5bc3ad80c8aab6787caf3f338cc61c12bf30fa4a727446578dd3ef8502c3e4ef90e48023100ece49f9b985759ae9acdb92e4a967a48d6069a008bbeaabbf97aaab7d1203d68398e5da9bb24709327dd2a233455c8a60302047c435bb50067306502306aca85183ab8d9cfa310d5e8b62c959154c0406a422cb7fe4b30c2d614d819b3a8c31dc3be763a842fc00d6650cc557502310090618fd69ddb19b40dfa0c3b3dbab263720e5222653d97e62de792ee10cd1ffcc9061010c6f21678ef31bedae39d136f0302047c435bb500673065023100b142ddabeda62fc86c4e66ce7fa0169ec440297f344bc2b7908a9f6efaa66ea14912c0908f8f0e5009f0f39874e19719023054bcb160f48b896600782eb327e652fb3489a6ef526fa08f4993406975fd86ea609b4ead8939e480ffae7d4215349ddf0302047c435bb5006730650230342eb363604531918214d8d67fe2c0640c9613727c91cfb622014a9193addcc7a483e2343e98070064a34a3bac00c4020231009b6543e224d71671ba83f5db129a0547a031a42b6b0e92a45f2bf188f400886f1b042ce4f330f1aaaa0263b4f33729850302047c435bb50067306502302fe0f8ee9f25383ae724df430218b6c4f44aabd869364248ab6b4fdbcc2137488eb6ec26cfdb953c93624e5b36653b1c023100e30ac0ec13de50eacbbdffbde21b968afecee68db14d4e6120e988576dfa2fe7957de63bf57eeaa9ab08ee2b1ce81a360302047c435bb500673065023100c57bf50752df33a45e5c83d0bac96e5a4a658387e27836a34d5fcb5dc06fc35fe36164c34279743a0bd9963535e1868f02300609f71cc3b42613ab5049d5d987c7e3cb9753e05ff404007d19ef9fa57bf9d1d8fc05f215dee88c7bf1b9332c89e4670302047c435bb5006730650230257b20287f714667dcb5322bf512228c0ed1d08eb839bacd55292b9cebd3cb6987267c4f71180abf9ccf2ee415e203a1023100db557efc23713d69acf4e505e4a15eecf092fadd7d195afdb2671c01af01e1fa6a474ef88696927a891361943cc31d7e0302047c435bb500683066023100a2a3ef81a31ffac8db312a3a0b6fa5325e63a4ea2db08905e6a7775efd17b9f9f0289abde0220ee05688d9fd86748d170231009df3ffce418a718bd81b8fa65a2b878a351abfb9f92e24abfdbd17f4c15b7b98583639695221416262966306a1bf5e170302047c435bb5006730650230254a34263826dccf408beb421c46a7b42c1c174a6057f0a1fda37e820bde22d420fee07006d599971373ad174ee4384f023100d34e377b13d34d54461d86d05290b9e168c39a02d5fabdfb14881248df0bfe180a0aebbe3088c022ee7ecc790d28917b0302047c435bb500673065023033b6f4d0eb46ba413c46bc1740b26bf16b45c1fb622f04a96d9e0e260ece247de0f3a670961fd9b48f05531022f0b129023100ab360d448e1c524f0bd84d6a48d14743e548797fa2f7cc4fa391285f639c7e7a4458c95ee0be66fb85846fe8c9ed45610302047c435bb50067306502307b1eae97932d4308f115939858f5bb9daeb62dfaaea521e73e076cd3058fae74da53718c25b0a25bfaf25cddaa4802a4023100a0f95dc0c8a07f03ab67d8764e43fb60574cd72bc74fe8fd555db3f863962f46e69e1fe6d86e10a44a48b1dfdd2538ec0302047c435bb500673065023100c603446d5e183386022dfa7bc1a51e07891cee2a63c6b5fce2161b72eb0324bc420a4db3cd92bd706c4af6d40fe3b2e8023079e1ff9f3eea693f3fde13e144d61338a196923b6f8f15886f679c4c57ab16814a472d0917497fe399a1554a8acf32420302047c435bb500683066023100dba846ee2df916b0938706033d2fbed06d90e72ce69e18cbb47533e4819f04addf8920feadf6a23f49c79c81e185295a023100f178a2e56c5ba3f3d15c5a9285b503ca5435e90d1310641cf12bf8795290245f5e2354401e4883cbaac926e24487f7090302047c435bb500673065023100a086080041582f8331ffb88429473ddc95252b4aaef8791b6f6aed16873818db59595f4a7e4dbd1156a59b0c6ef3ac540230518bb40fdaaa0bf08b41fc37307802a37e10dd97d6f070e70ee0df1b828f4b55cd65944daf5f8c8722953c95a7b4e2df0302047c435bb500673065023100d932365288d303100f898fba934a6d5543108b1ac5429dca3d8be5e77ff924d5685e2f1f7f5023ccc3e918684efb4f8402304c061fadb73fd6f4c98de76f6fbe9dcba4ba114e6b3da005dd739e0791306281cff5eaf177222e7f02a8d37f6c27ecb20302047c435bb500663064023052efe537e1643dadbdfd3c07ee6b9d8a947ef024198d9e659be67f52faab61c6d3785e01998aaff50e47dd4ece4f02e10230297b89ff517e853e564e1b2a0e78de6ded8e3f6dc8281e48588fb7f62be230df2b0df298500a7de11cdccc2ca31e61340302047c435bb5006730650231008031023ed4501fdce7d7cc56fd3143b4e5a6d36b98f825e63fc8dc0e1f0701b8317a57c8622bbcd9ce8b98c4e671af2c02303e242b8ef2eba179d5896061ab4d1ac8565e8d93e67959c7c4ee7aeab18c5af1aea2fc74629e6c7c3983c2b941558db20302047c435bb500663064023058ff30e2c1f359156ac6cfbbb53c78503bc1e820d5ec3f3c774230a0c0411946bbcef01970bc0fa2befcdecb15cefd0c02306604ade1290359e8bc5d871fd49db4f6100d43c59071f05b192eef12407ef4c0f6fbccf9518be384d2a45c09e6a4d9f70302047c435bb500683066023100ef4370d44b6361ac885010739d1837b60dd63a4f0c787ec168e5f88ebfb8ebcb964bb60e366b85dd45a5e9fd6e1b9bbb023100df03cd9ff98254af88ab4532bd1f806c58dbcbca4ca3ef71f553b0d3df155fd6f9c5dfbb42c34bb614e04a1504d4358f0302047c435bb500683066023100cb47b72377525cd3682c7c266b896828035a5900eafb1b445c6a512491ae05649007557cfed526f9a6e19d1300abbbdb023100ecc705a9c7bcfb3ac766e3522168c74afdff024f39c34d79eef8ce244aa6918416c2243f23681b42d2a092d85c9b20540302047c435bb50067306502310094d0ff2c2bdff323f16bb5dadc6f5764529afe7562fc48c9491de7e86e5be9faebbc392093f4f4faed1a50952d139c4d023052029f585ab328fcdf272bf3adafcac379b228fd7d479ea3c1d425bb27619703d1134f90e75519edd08572bd13d1e98b0302047c435bb500663064023035a67448b30d3ff497544be09de66bec91c23dfddadcf29365e15bd71ea6d622cc1a4639d135935aaa9fcf5b9191ab760230542c08c246a50a678f2a004cf3f0a749a3e34f80686f6abd397e151bc61def31de3f6cbce9c2b8419d396035ad58a0020302047c435bb500673065023100e26c333d2bf58eea7aa8e40c67410f6607688db4534d682bcaee866ec334d8a2ed4891bee00897b5439641254527723402307c390801c624bc5e71ceef543b6dba57200202295f2fdc2981b0dd0cdd00104e9e43f603adbc5f7b90ced8850bf07b930302047c435bb500673065023030237294d4d7aa81102d8425527c901a0c7c29aff55313ca21b6536ca2b5a8f894f503cc1ffe2c664d59832dfbf1e205023100f0e767ef3a53218a90e2b403c98ab5f4abe625f2d5c99c3c003dc838c5d659c8a20908abaf54369ff369dc769cfebad40302047c435bb5006830660231008a36295fe45cc8a8b1142e5cf9a73ffba2ed27211da296e8c46439f5d9e326f672f7306f197617c29059a9c019c02164023100af9339803d08a4df26b44dc5f9c35373b677034393e9fd6f6a5efaf17e839b81003ad8b5a137d4d077583ab4eee895f50302047c435bb500683066023100afa5e0536e7c19425f81c876d4a7ecbd0c57d84c772b8cddd8298d0b0637e8d69b4758d882bb8a22bd366fa9d99f9e65023100a2a581e54caaaabc6faf531dc86ccf3ca2304fed9d8dc77a871d3190b20810b03c034f2bd8c1ff293a77ba49f1e0c8e80302047c435bb500673065023061fe02c76fa799ec7834949c8ffdef2a619c5ee07f2684c329dea76373425b387230e29c09b9af070e1ef814b7506fc7023100eb9c4210b1b96553dfa8f79740cd322e7afd772cfd515bff8bd857baa5105bfae2ac3b96534aacf71b5f0895115afdf60302047c435bb50066306402303e68e82ba9fcc7d103e4f0b2a5e5a01fa8839d6cd96af114595ab214d5485c616fcfaa97a5dc8eaeddcc4741c95b4932023047cfa9c0443a05d67e973f97ae027cca3ce9f28d0c1b97732ac91f2cba0d30d08c482199728d7dee9833d57e545c04380302047c435bb500683066023100b02a67f56ab6c614f75fd985a2feceeb335106977c01fcc586df38428c7bb1c702747dfb96a247a92b15cfe234196a430231008c167909370f3f6677cadffbc7096b9e2e1e2a479402e5e8c08d166a32155c4fd5ed771c041a24259a007aec22c495d60302047c435bb500673065023100e20ccc79f98e13ffdd332205af4deeec3846dbef61318265732802d12db6a4504e2697067a2c18d128e10e3a9c88a20102301b837cbc2346a1da03f5835c00f9f6fe4c47fa1858a14cad417a114ccd1bce2e49f73c5180e901f1b296b0aae95fcd6b0302047c435bb50067306502300a31f200e5e65157d0493d4be4d0b74fa63ee16eb55f181a36e2fc4c9395785192f9c76b641e7dcd7c59a8e4ccd592b6023100a7226d1e2dff1604195eb0a9ff28bc74b7af591de4693f3d9705b3c15904e36f86b602a07c7287f8ea072192d94bc0bb0302047c435bb50067306502304063b4246421bfc5caa12fc91ce54f52ea6e2ce9aedf2e04264e35fb17da2111b597840f5be014d67dbf5b07496a74270231008c5c5cfa69bfcf66522181c79f874a247750713de20d40f47096a33f50ccaad79c5308b410c03c4f6549adeab205811d0302047c435bb50066306402300cf5772289182c185adfa1451c1502a357d5b0196f09af633867ecede3ad2219111b85d96528aeeea82acd7ca7949e7e02303d1c3381d9b43c42b406834084b3a8ee674120fb7bc3d44c0bfed002c1221ac10a95308d2f4ffcdf7093eb63c3cf16a70302047c435bb50066306402302b821f3444b534699fe41de65134092acc227d8c85e48f9a0a682fa62735508e32f9d5b3d0b41962a9caafc971e8be8a0230631328887fd0de9fe8bf164dcd75982512d7a4a688f0fbd7a97adcdb3bd2effaafc3a245c00b99fc42e52a77fffe9e450302047c435bb500673065023100c0692ecd93179a1bf0f4db077c66f75b3f45f78170e999637b8f490f31c7d112cc939a4a0221b9b39364fedc54172e5b0230112b59c0238a2a9a655cf68867d5da35a848cfbc9f3184262707a1d0c0135b28cc93b90b4a6f8c93c809815811a0c70d0302047c435bb500683066023100a87a5a8b76de5704b3c5852494bef901cae7f36c96c380c231846b6fc3386021556abfb103cbda9fbb6e189594edb087023100f257c94f065644085748bfe07bfe127341671a5a2a114af276d21930a53c50a12ae9c1dbbf2750d196dac4d9e78260010302047c435bb50067306502302aff97d84a775f0ac59cdee1c1aa5428776f51c3af76af898f0a6540fc4d4227206982177d87054677d00e79155eb1b2023100946177e0a760872fab5650ca206f2b2e4a31ecd6932eee397751417c9b3a1e708f1f52d2458381ab23cfba22b21006110302047c435bb5006730650230618a45ad616795c2f25e7593709d8d0d7aee074b8880667352a9a222971c031c010118a6756ddc53a36aaa59bc7f7722023100e5b51846280135a46455a1276391ed79c458a986ffd7ab4b5341489aa02864306d356e1e0e317af98727a93e04d689520302047c435bb500683066023100dd798a38c89d0c0f25910ed88424723ebccb325bb84312b4975ca926d2dcb2eb19655470afd59bb6961abbc40fb86c7402310098063088905190cd3c8f535d3443a3b1cb539cf8d9e88e019bff3fee545f2ca644cc577592094f56b504bd1e314ae07a0302047c435bb50067306502310086d6694f90261bdebaa7ae731655d5754484b4b13e78f87ae30d270c58c97a2f107847055a9874d9918348c7e930519302305889bcaa28e0f4bce62c67f5e6160d8adfaafcf82f0867833cdd8af31abfe1c4104d110ec470a84536653131dd20e8ce0302047c435bb50067306502300b57d01f8577639e98f2d1fe46200a17913567902d8074a6cfd0dc36eaccf17a08ed3eab585030ab280d0a0425ea5965023100a57cb502701d0954f6b1176cf4add242507162fda342d511b2847657f046b1d8a4dffa6820bcd2b4762b6626c80d4b490302047c435bb50067306502302c6969c365140a15b1328cb0e09bc1b5d286d009da281ef0e4e438c5d5655b3b9a12ee86fe58d039fddaf81171ebc14e023100a11684f62d46f9fc8ad86282af8960fef702c01266ec376eb323db4649828b159c8d4a9306fb27e3c2add1ce0475d6e60302047c435bb500683066023100a9dda1794647057c62328586f1cf6ca31e53edfa3a529e263eaef77f3c49d10a0a85a9ca4309ff59a04034415671d47e023100bc7ca049894503f316bd0283247ee70f7381b54d9d81bbe0535295d993813484cf5f77e37e746718b014963542c171930302047c435bb50067306502306ddfd6d5529cf6e3c01a460d4e62206f9468c87f0745e1812fe07247fd6cc0d11c35c01d5911223474f9ebca0eef900d023100f20e01c0db2d99ade240a6a4c2bc88a60f85cd30e0add26d6777736af1d99b29ac5e1272c41f03231e372fe8685c1e690302047c435bb500673065023100d71e9003c55a99007c47c27679cecb4ff6d54ceee6c87fad586748fec2557725ab8d731260b1cd7e28331cd67ed4649402307d91fe5fd83df4041194bd32f0fad637240f595c462543d4e0f4135bf6e420733ef23f0c4813ee79f6f11c134c096b5a0302047c435bb500683066023100b1f7b199fa996cf3f27e4d543d798ce3142788bc5dd3b5c2041d8c81ecb3b64c4d33352d3350986fcd888dd5b0aeae85023100880c773df28371ffc94865400c17ee5a12df2b7a8d3bfd6bda6604b4c977e52524280d30471cd4a1e3c9a6c50075c4a10302047c435bb500663064023058030b9617c81075bbb96edf481f017bef11115a67161ef7ed6de3ab97ba65d0a9dad7d6a5258850ed8eb1abcbbc3a2502306f9453006605d86d4228cd86a24280ab50d680b0549373a2f0603507b457a629481bbd280e347fea3050198444c192920302047c435bb50067306502305677aaaea9390565d979ed3f06fdd2a91fec8dae6f232a3ef6c58d2d9243423a440271ab3573a2c8b510bb565758845e023100e176ac445c7f3ca6bb32ee27314a46fcffd8c90c120f624e73b09d8657bcc75fe2620821bcdd22e40a1387b4e7ba6d960302047c435bb50066306402307e4a6b83c4266e20a0c034ca89be19257339f077e570f1d7d26413e2e5716fd829b2f727cd94bad2cd1ad60c799f668a0230709e2170e0faeb3f13084d40e9241c84201b1f8bcc2a4993300cd3d36f4818422cbeb56d8d549c40773a0250cfea4a4a0302047c435bb5006730650230120f14f0125646e9f81e206edb446ec2040fb5183d078271f0c18c28612fb58f62830b4b0a5ae18d43ad9d19b0ce94ac023100bd59c5a477dd0c7e26253e0de057829fbcd25fdf2e085b858b950bd144587ecaac0505ad7e1faa7bb67f1e440881bdbe0302047c435bb50066306402302aad19a34b0800f3cb5e6755f32ec7c65d22a9309642c5d57c5d6cd9e78ba465a74cf1c8a8acf6f3c5fda1845e2a7c4302300ba7258a5ef9362ba2a1e0f123bfa26112f6271814058023b4980cf65a16ebc6eb4d2af92ed09b9477846253b983d11a0302047c435bb500683066023100b42c30b5e93f977327a4b64f72885bda3ac404c1a6edbc81da09814650f1b4cf89b2df3935a2ea2a6fe606c0de1028b7023100d062731ac767c0de6dab4967bfc75996d345359483d7a7c6af099e995d72ee74bfa7c1fa592be8a68e07a1699a90c8960302047c435bb50067306502301607ffa3ab28fece3ef747b1c2001535d896333d3327532508a6a0a157d1c6494b53b0889b87081e3ffd4c511df10745023100f1dd7659d1037fc4defc67edc662b6a7b2ceadb6c2e10ed9f5ee6e4da84181ac63fe3caedb88046a79c18d012bfefbdb0302047c435bb50067306502307c7553117206bd646e46b7b2d7a2517b6723e2de17e9ea28ee397f82ffbe4e91c097ab3db246ce02287acfc578395a6c023100e56606652e0f1df43db6825056175b9cd92a642adb3ca8aa1793079198fd3c0b4af296cf338a5e84cf709c1aa8361e5e0302047c435bb500673065023100e7cac0edddda22f6bc7cc79cb5fde3d1eaa443553e92004c5e91ad534c680d2712992e5677039cc7a58c7b34ba1a947d02302b949ae78d67eb0948f560a98c88cfceb1589456aac06bffc970a921d369c7994749a6244d250d85fc4b647d67fcfacf0302047c435bb500663064023007051e98750b2865e203588efce3e9163cf443ba713da47a1a811f421194d29254c90635230c3671cfa6eecbb692059c023020c24ca32973e44602d06038f3138ccc6f7afc361251d47d481c04c3963886d731fa9275bc23bf5920af550bc46a5a3b0302047c435bb50066306402300a11540bcd1a50ca8955a9f608ad7451b8dc1a475a2c48888d42a9579fcd6eaeb396eb14086670b155e5ae3908d80dde02300616050f0ad9d22656e3e187285dfbf9f1ce934a86febd3abce9a8368d6918138538b5a5053ab1ba1c818d21af0a85520302047c435bb500673065023100e14cb969ed1a53aa149fba975d9187c0ce47436d78b72eb5766167b0bd2dbab92151bfa9c170db133f15c10afecaffa8023066656568b158885be006fab6aa7ee9803756f64219c59ebc45fdf91905faccf38906284c4bc8545b188c75917bd0fb700302047c435bb50066306402301431bb290fa296b15fb925c21a01ec25152ffaac18a9ceef8d22943d9762b46001997f01eff4f8c7f1a3de102b5ac68702300e5f40c289b490d241cb7a983af19de8fca4cc96d340c3653f4b880b33b74e1474e92bfb42e9e099b300c664ec5511950302047c435bb50066306402305074ca60e0b4bf3a6fe86dae2f3106e633fa986552c887111de9946f6af898ce3aa49323fc52b0f6d55094748df00b1f023003a24578554d687a08a2e472ef281f5029abf9e8bcdd5a6845fe7cbabf78e3b96be9bac2e7f654112937f2dc3604eb320302047c435bb500663064023036850e9a8b1e127765478b3d6d1c52279aad165b5ec1b789ffd170b00144d759284d33c69b018adaabd3bec88749c6130230248ac33ded315aa664661c2f3aa8b0dcebfb2d7c890b8eaaeb89310d805798241a60d141c9577bf53f5aa299b661ab340302047c435bb50066306402300af485cf0bb814d009bf5af5f35ac0c1b02fcf054911c78f436bd39135ac5abe841604122c5198e6686f76783e69a6f302305793bbca5cb5cfe3539769d965cad50d8e1868f08b74dbfa63fead79f2975b1b2c297063cf87645bd49636b405f725ae0302047c435bb50067306502301fcc272d0431e5249f08a908a53bad096dfcce674083456055fe07392b4b0283c675546ae82f3522933c32bf9436371c023100a8ff4d30b681176066ef155a3674314b21f4847844f097e83b066a3316a24db36f2bd48db007686eb00b7a7917b0cda60302047c435bb50066306402305cbc641630567a81067af9713ab204a008dc8163bc9e3460e178abbb1fcca478e99c1a328646728eb19a1202e884faae023042ffb3996c1a95fefd5d506f01381256f4e115fadf09176fff5ea35f5be6b5ae407491fa6789b29f460b265e964f5de80302047c435bb500683066023100d7fbc3da7058e0894365fce65cdb34072c7e870c898e39caeccc3d4a76f1fbadaa03caecbeaac9abdbf02c0099ac772a0231009499e23d52ab3b4096d0e9e5ddd747e2b3eede60641609b42ba09f15ba58d96b07253b238155653462b5edb497b49a0f0302047c435bb500673065023100c58587264ea5642df277b0b12ffe5221d0be4ab8ed4715438935b82388060404266ac775c5007547c0d03600a7df3ea202301da1c6b0f8ffc0b5f116fffd0fcd4bad0ff66983118b23b319c999aa42f3c331118bdce14d978a006ec5ffa382ec51840302047c435bb50066306402307fb51b88b00d14f8d0f931a0996ddcedc1ce3842fc940b0cbb53da60a7a88c3cf0577c86fea402e8ff4f40833ad282820230021854182279fb09498ce2bceef797d067254d97c47dd08d80de21c02a326d15ee200b6914f97ed12e334df6a8fcd27a0302047c435bb500683066023100950bfe8b209f4b93d00f60ca5884b2face3b956b9ce3e0b06d8c1c6457c07b2ab3013c71c7bf7eeba67e3ae284f13e48023100a77c30efaafe2f482efcf4bbebbc081097774e909860b6441e7625404193c563e3509a977c2ff8d37ebec656014f4c000302047c435bb500673065023026fbb51ef17e6b7947925e43978541e76d0e678eb1239c035f5f854cc69d9c908f15f38a85f4771c8a40429de3f90c73023100d97d9638cc00bb779f7f3803578e3a542a068d9949b1bd11aead8d562f32f389ad1c49d4f7c89da6aa11fe62b8386e600302047c435bb50066306402306e8dbce42ccf4d86484bf68436a9a52ad2b6c9a6ac8105787f059b2fca7f878448a95ec86648c0468cd398886b499dd1023000b84a643b16efd4d0a8996af165c255a2c625d47219121ff2b58252a661d6a45676586416ffd9df6792cdeca4d316530302047c435bb50066306402306d8ec1cd0f740299a100eaec802fa3b128f47d18aed0c0a1b47460b9a782efe1994841c167dd963b2fa3fe1c05bec7b7023016871dcf31190fb5162a7ba16ce473afc217ee09f0a042e3a4f1aa992d0a42542930928283fe434d2849e5003b0943280302047c435bb500673065023100db65e48ea6a16ec0642ca2a10b39e600b5b99f85f4c1399ba4c1bdc36bb6120e0d42e94010d037c59ba1b389bb7bb680023013aeac2dfc31d554eef9a4e162411625ddebbbade717e2d9bbf5f607e47be0a203a8d2e0bf5f65a323867f642c9bf82d0302047c435bb500683066023100e547266108266e3d25c58754cadbef063fde5751273a223e6a507b57659f5ebd776a58b911ef83eaa5f76da59368abf8023100b811aa5a23b9572e68eed83a0a331eb136dded6170a31398b4120007a47e43484c38d9319248a3210282846026cf678f0302047c435bb500683066023100b9196f722ea02d335b686e8eab1bf907ebbfeac86206b3ff7b27d0f3f0fa630298722b703068956765bc0b5afa6a3d3d023100ded2fac5cdc12d1df8b6fca1a982c01922b0e52d5823a3ba3b05060e5dd350aaa11e2b362354c9af6578b55c2f80745d0302047c435bb500683066023100d6f44f98868c9a8151701323cfbab1e648e93fc77eea55442eb43ede68e4d65ec8822da19e32afee93eac74a84929e2a0231008bf790ae08b2ae04c27745ffd215ba1c2ec9dcbb9a1fd8a42461e6efc26e7867089bfb9e2a4e93f6522a737d6faa760d0302047c435bb500683066023100c27d649950f1351c76bc8e4dc37653271acdfc07324465e3bfb61659b3f2a887df6ea85cf5245f9258bf0c315fcf21460231009e3988b7c5a8bb68275f42807a582b3396ab17eae42d44b877af6eff89f0e285bdeb123ea2b991263a1d0a33cf98d09a0302047c435bb50066306402304ae079b4907da16bfbee08ec2dc9db70b9ce1782477da67ca2ec25f294dc43b8f45c385702825c77a71ae430f66ef9de023072e72c1a023f5e1aedb147cec476e094433639da720ea2966090f3f5dd89fc248446e9c058fc0b1506f98d52a3b04fbf0302047c435bb500673065023074639f82a03cc75c69b5fe65572672c4013f25c6723dbe8f04f793ae1499cd903978e66372a058e803316768e10685b7023100a457ac1d1af728cf6ef9b1a0edd62b1e4f205562fe0385427ba57340f79eb75e753b5dfcc8f9c5cdd92a91846cc445580302047c435bb500673065023063145b364a4e90bd47729894d367cdb9fb54bd2b620241fa3772714316993c91330b8f3bdb48214cb1c991046c1f8afa023100924279728ebb7acac7dfcdebed86d6481b33bd0fd67d04621f0f1efb9e8d5128d0be93de546644d91441978ed64748be0302047c435bb50067306502305d749fcc5c72006b588e7471635645279cee3136bbd8420596b5bac52cd4c6254e986388c4bec1ffb47c293473f436520231008dcf4cb421b29a9a6aea6877b595c35d1da71115b8df3e48a41a9be1aa3838cf3d9375e6b38905138042faf073239f040302047c435bb500673065023100ab55c4598c9dbafe53a44dc00199a9883c19687cff1f4bb5a842210f497da0f197e3b0f05680ede40cb2e5c8a9399c36023036d1744cfa7fa6e2ebec191da31c7c6ee336bcade01a0841b4ef41c3713d5d10869739df5b9abac0858134b4244020b90302047c435bb500683066023100e547021af93e8c1fce7458498164927adc4ed6b443f4c6368289fff37552b7d36a382bb0c9f6da1dd193394a8b4adf08023100f50a275dc2a01672f51a858def83a54082ead699698be139d8f6db95d7f4bd85cb0928d4df566441863f068026d351490302047c435bb500663064023051fb46814dd10e72c2a65bb02ceeb39891340fc21b43b6d16fc0c47a4522a736794a06507af3187e6fde76f79807c49e0230556a39d831033f98ff49692cc6ca11bbeff0d66b321a234f9c48571707576538082ac484d25ea3e281b23df0a34481e90302047c435bb5006830660231009599d8fde74ac000f1cf5dc766d970ac6139469c7779f1848a2acd2d9906e2bcbbb7ecb70f7ab60070934bbdca57f6bc023100c28b94302a6c06e136343c94392d7706863d4c1d139c63c8f2b5c7ad0d8179ea3b038f1fa4ac3cf9a374c88eeb4fc4d30302047c435bb50066306402301157158b4b354e5228a054dd977b11af71755b260398b7b586ffb881ccd8f7baa67e40680daf260ec8d90d220dfdfd860230319d9f727cd70561fd94b1824e93f320f4bdbee36a1466731a9d815f171a1d9cfbf30892f395145fc14ac0684553846d0302047c435bb50066306402301cd7781f5a22f2c995512614d5e568a7a631adc70c0c1305562a4c5776803fc4c964d10a8c6d82f721278ae19293f41d02303ec80ea5048a283ebe7fd03eef0fb737c896f01a62355b7c99946864226ac1fbc9588f127f31092dd473eb0b88bd1f0c0302047c435bb500673065023100b8c6b82ae721758fd0b4d53e7ab1b605a1bcb7af2d8219d430d30cca3ae9f0401fb4cfe67043e6e8caf66dee71ad01f80230021bab1a56a805fc3b91f5dcce74b02760f199eb6707ed7315bf290f291bd35ec7b0742b428b2fcde09bb2b8334531920302047c435bb50067306502305235e5218555aefe3ad2134fc5c22b0de13af4a3476919bddfb5dee32a2eb39135f405664d9d815231d151e87abc86c0023100cc6a214adff9d8940dd2ceec9c38c5959ba455e0f19fc42135f9b5b40293f7f13650d987518c18edbc1c92d04f9e871f0302047c435bb5006830660231009bfa69c252fb50a7473c722ee18d7d522e7a33ffa4e408009721e8ab66bbcf1efc70f96fe489cd9506b3791174153855023100e884726acf0f18c6054adfa921ca9bb7d6ae654dc3f363765b5c61ff189b9c26ee36491057f3f4f665991031f267b46b0302047c435bb500673065023029c4d0d4591476889e1819637619671bd411ab335a11d9ee7f8f335a90de70b4ef3b93026f4aefedf837523a9ffb1f28023100a0aaa342f6021fd029e488c47e8f1d70fad1e74408951f964b54640be6972d3373f4e80ba61acfd277511157699191bc0302047c435bb5006730650231009551a9024e794aaf60956f04906a2685870528c78505ee6a76f946aa6da2a301e17a0d13a85947da35a7850db2e0ee13023012fd635c46dbe91b33b08c227be769788d12abd8bbedfb0bc614e4d8437d5770b0940a396650a437711a8ae0e6984e4c0302047c435bb500663064022f345717f36aed13db6a7c9414cef0e55a22bb9e399811191de6a32a9da8fce7165e1f48952695afe72a5d16f05ccd84023100b2a4851e57c114428d315b5dc2b325a9808d38b8d046f4b995ac4941538f62863db596bff30cf1c79961132ffa2fd31a0302047c435bb500673065023100d168ffe8c84d6babb6fd0397761020683849311fc5cc5d737afa1cf2b20c4a15dfb20a2d2c4cfeb888d5c35c669a9d2902304e782cb89b1c0057f8e25b44e72188921df656fc0603aa51bef77854daf9be746ffab156a41b7e5bac9fa6ee52e9f6f40302047c435bb500673065023100d34518c77947eb976789f4e0fa9ea53742eb23fa2ee3a03b97ef8606171478befd05c1248d600ec4ec6db2571a1d94c7023063b7609c251a3e43b9528b9f5ec22d8e11851dd448a3e0777477c3b77cb5cdca70649fb06f55642265c36f47030b0ff90302047c435bb50067306502300818600c1b1a66e4e9b454fc527c743be472d79018043a4cc07899ef093f2098b0c1372fca783455ba7ec23253062803023100d0b8d772c513f81e3d87384fd4636db3d3d3d077124e653d95bcf5f38499a89e03c56671c1ae144b033efbd69564d6780302047c435bb500673065023100ba0e6f16cd275c80a7a098dc3686a0e13ab129092d5ebecda9a8417732db045a4f41cf744db68f78516fe83cf536c49202306e7b137c472d4b8fc6acf6e9587402e002138e67c45a867e24957f1238874ef6eb4343ee62e9c96873a2a00f0b51181d0302047c435bb5006730650231008cada64b0bb3bb2058e11ca06ac765b0b5acac56a3f152c57795221d8d3e2fd54a01ac131f344f7b9b237df66a36453d02305ed7159e396c7e563393f9c17d00683e2a096097b903e6b9aebd0eabd2388badc7a09c798b9b2e0a2ecdb2ceb86227a10302047c435bb50068306602310092bf116e4f6f17c73c249a02746f2999a1f41648a321dfc52c5f0dd3eb78bdcb842ef7aa3fad666995e8d405101d12ab023100ec71d4ffe6ad9645ae7e6fa2957d7d6b4517079975a09fce3e27b9f11e48a9252b83ed62774bb7cde9e17e7935cf59460302047c435bb50068306602310092f1ffa71f12b8c086357e2e09a4b84e2a352c37989e4e39aa287a9a635f0d41dc801f9a7ef7752b7fd55d5fd123d6a7023100e22016fd52c78e9d35e0b76a459ae8edf50b6ff7368c260deb3bead662091ce479ed0b2e7a4d353d3ae0967fa1ee258d0302047c435bb500683066023100fd08eecee0cd9efc0443013359225848e0333599f437efabc73c221ca1fd8996a8e54721e81144af4240b149459b0974023100dab7baf44be75bf79858a4d5641128973e9ff0d513777762d1fbb15894689c762252938c85a12fd8e4941bd2e88936e20302047c435bb500683066023100adef3b7e7589b0de2828ca36b91657e1da501136af98540350f7dd4bc71deadaf61c8b26b1f587acbda4de8caa805e2d023100c4f8c0ccbe1b83d87bf86d6931e4c1526efe3dc8415a018cd318bcd68c042b1d59a5a40527aca21d81ed0bddbd6ca1d80302047c435bb50066306402300d4192a23e0cd910923e2ef9b02ce7488208236aa9b4003ab39896d62059da2a3b8448df6d1e44ead4660dc3ad7d066502305f0724e56ee195f9e119a6f453eebaff72bcb19c717cd24847f1dc6409fe5913a703d7949b78ad29daf0aa20e8c9a9520302047c435bb500683066023100dc1075d985c077de8dd9e7b463e6630a82a8eaf41e1c19203dff4172f501730631ec9d1efd198d03ef2faeecc484a4a1023100deef56938738c96df42c4f15d12b4c06f6d8f2056c93d419627904561481ae6ce7bede832d40fdf55b4e71d94ce94b450302047c435bb5006730650230399c976c46462532a3a2000f6ea4a3e03be26022d6ce7409967eb4cc171f2013685f75f082e29fac837152776ebcb334023100f43a0997b579a762f5b2c3a06d5daaf739ea5676e2a73221215330429a27ab1d70048f899c3ad96b0e6052280439b2980302047c435bb5006730650231008a72d00ef53adde4f29ef19053a13b30bee55fcc4c48f724311773e377d19e3588486d862a019a8446978b538e2e0e51023014263876fefaf176a99066ebdd32744089ce1fcb6c5824e97272e201b48203e807ce6a283d5d293e7ed3d189869beffd0302047c435bb500683066023100ba2c6103b2d1c5e0a2324cf500d47a0b81fa2cf1e6b0fd1f79c9fa278063f4cf7135fbada01857565c0abb18379eb000023100e19b360db9a459432c28dc8d44dee2f5d736617975f7ebaccb140ca23528826f6e46ad56682a40e02ffaae4d94814a120302047c435bb500663064023028d4098304a62f1043720463a44b27472f57f816751295b9dc1bf5f960a90623360f8609b9d6b5eac3abfd2fd829257f02300ac151b3185829b34282cb52881d1075522ce4e29d77905c1feea7cfa5980a1faca6e4c9c282cbbbb6bc0f6bfb1b38230302047c435bb5006730650231008bc7743d676e5d7f6ead536d4e148ddaeca2546d9007f1845593e526f16b83188ad7542fc487faab588648789aa3f220023061c497f727e6fc79781e15b31150e387a00a6b678fb51de6b6a66bc0ec3a0930e5e3e6818c729fd05b0e44f73c689ba80302047c435bb5006630640230123ceb0f9a94bd6b8404cf655a52ea6dd7b0e02e8e66b89cb143431561d6c404a1103aa718b51e0faea2d1fa495303b1023007472bfa14626dc20475441feef6d1166b6fa58eefe44784960afd597bd077e25f158f3f19d62e4ba25850a7dc12c6850302047c435bb50066306402301a0d751286aae36a1b981adc4b831e4c7f12d00629a3883451351dea6b515d439167b520b9a73231bb15ea89d3a131b102303df8c08539c12b84bf7fdfaeabcd2cc937ac28e5259ed1b7e1cb06ceed0343b26559c44fe10bc568172a3012d0fa1ed40302047c435bb50067306502303439674ddd7109800db7bd80f6bfe95587b34eac6cbf1177af78cc3e3c24b79f0b42a7738b4e3617ba4630c647cb25c9023100f6c6a9083b8c66cdfdadd6c79bc2bc418412404fdab85dfc4433b6deeacc30b22b2900c1ba83214e8fa195e42ea6c63a0302047c435bb5006730650230563f9fe2d23707c0c059946c09f0f74486d7a3cad18d1b2c5324495015d17ee097e286cd6ef3da586bed15d6542c91cd023100ddb6e2f66a49f4489a20f5944e3c5569c61358fa075db8953f227935b45536a5cffcebbdcbc01f4555eb622ee28effba0302047c435bb500673065023075fc4ff1ebe22ec706a3e99d7b16804df14767aba94185ee386217884484e1ff540b4523478e01a85b0e627ac127a338023100a5f9d58693b870e4dfeefc309080e3df8f96b5dd16c6302226453380bc1d485242c5b77b5a99ff489c9e0d090cb6e3ca0302047c435bb500673065023100eca92a15930cf3a4ddb891a265e91f9a873634be0b24fe27d8d195b28ba8aae0e62a401d8f147b213f4b26cae7ba55e802304934220d9634edb089ede3642751877287370158ddebd9471a54ff78cf026b857e2539884f780c59cc3f729bdbd0c1000302047c435bb5006730650230744c82d2167125012daa7386142bb90e702fa9fb677ae2af1637ed5dfcc39eff54348c7bebbb5a0b2a0ab95ffb18457402310094a48ae52399111384e2ea8bfc808f7b420b2c35ea875178d9a995762989ae9b61ca284ec188ae7bff3dc7b6185be8e00302047c435bb500673065023100db030d9d85608ddfc59d737da5d3faa8a0aeebbcffb1d42b3c4edb0f5a985bf1ebc735d7eb318862a6633eb8dc88c1f902304a8b7d73efd3c6a4596f0417ec827f4bd40c01881e24c6c54e9745ca68e256ee956e22adebf5eaa0a6bbee33058a83160302047c435bb50067306502302eb0927f69d1cc029575fca31c3006e80508311ebff205251a9475b40cc7aa5cf8bbdf43e22670c5e758fe661fe2fe81023100aa6236f96814d2021e984cdb08b5a6738cb1e0e60f9dff7ee2b27b812588ff6c8cda5160ed4eb45cb8e1102ee0aa09920302047c435bb500673065023001a3b217e7d09c034818d8ce87f9c8be7f7464c04b32dca224a75baee72df634d2020112c26b00ebe8ded779798b6eef023100e3a42b76ba67efbcfe9e330a98d0d4e498c41d9d5a6c313de5d25de9e46474715d47f7a783f677a3c70dc7324d71c3810302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100bad4e85dc79d9e63bd1c70f1639823cba492ae0ec89cea7135c004f352f625dc126970868b5c84fec6a46d3efb7f1363023100ad059f362f2c38a28a149685babd7ff42ab88296a9b567fca56dfe19ec1647439e104e31eef24de3b6c1dac8120a39270302047c435bb50066306402306fff5cb4bfbad7ea8dfca6e05b073946f182f1b4b2346ced356dc4d49677789d515a6a3dcc8974956c602facc4c148a502303b9c46b8a397540f35a664e02ba4208dd07554d385b261f5def82b7b76b7c41055280c1bba394e391259d71ed717a8f00302047c435bb500683066023100e0e044db82df772a2b2b0baf97dbfd7c9455844459ea6801a3bd3d244954192bab69ecedff142b11f190795ef2f64cd4023100c8bac3d5b150a9fbea5ef4e125a080d104f7895b2c288979c40d8ccaced69f3abc70f1278b94d9f456490437923aa81a0302047c435bb5006730650231009664e3d34cdeaa3bd4b42829110628e6f98fb3da66e6963f3b9eadc1e1f5129a6ece18883af44dd258c34dcf33fd696302305799cbbcd51d3cab4e1c3354e39e07f5e0f7a9884df17a1637edb66ce58d9fb855ab65691786d9fab2c7ced0bbe88c4f0302047c435bb50067306502307f3b7b76c4ad475185c3a2189818e1d0ada5b9e6bcf8ffb449c5be4063d0e0208e153a465db414deb94861e8ad08f9d20231009b42d7605971eace6118954bc29608f6cd9d7b1e870446d0b8f7dfbb5c67e4e2714675778726d852ab237afb7090d7960302047c435bb500663064023031149418aaf8b907e9f93e76b084179633ed930cbbc180f476b48b0cf2610b3d162e11aea1350f0975e20d44e8de3c9d0230627ce3f2ad6763c5f9a0ce9e165fb102d85012f9a3d47af306fed36fac2c4d8d8a43bfd02a2d0f247c366add0aca19ef0302047c435bb50066306402301adc28fca3cc93a7a42c1897835ad1656780e94beccd17e43c858c430d4c09df9665a36f0d92c66e2ef3b8b83c5ca58e02300d500eea221237e4f9ed8a1b4eb8c1c5983bb20f5b69d07ac7a3d497c16b9c63c53c91825bd26184be09619d66627a330302047c435bb50067306502302f527a99a695a4127d1b729016b33779e60bb56f16df7c182a25cf0e4dbc729d4b7a90521eec37e5e53395a519a1bfb5023100e25837a86383e64d1db1083d7ad482b56951bb28bfaf279ab10c73d3679a8402ca0def5505d013c5053d77940c11f8b80302047c435bb50066306402306a8175d51e8d923e34e249fc9390811fdbe20c0fd88e624e4104c4cd805d7d1306bf9a1e67c52c43a74680d09e5aa58402306039e0b586f8e418b23c971d23834963c097902d2730c0c9f4fc5ac071087ef2271ec71e95303425fa8ddd3307d90d3b0302047c435bb50067306502305b0555a17eef52d814e7fb7a5e0554533a1a9f56cb93f7487ee53bd9e637bf27f509567f80a462954f822329a1b389a70231009ae98b39e5ec624824431c735c0b5b39a70ac6ec2aa2fde0bee1e202fd41238ca9e3665834b7101c6d26d35aaa56b27b0302047c435bb500683066023100be44ff349a0d898d4486e078dc1b4db2f16e69d5f397778c1a9c60f73163ceb680098e1d7cc09aa0631e6be2c39edee3023100b492180da61939b8f0350e3f1ddaadb951aaf0a770a846f0597e00aef14b07a601e2e5e1461fea0640136478c08bac8e0302047c435bb500683066023100db0b16856fafa21c63471d3f3259edbcefd0c883130146581abdf269ef34b84767aa8b81e0582d44d708c3ace24f6ef8023100a0d58998aa75e58bef6f2e6f1d5b0c890400bd13e1ef7fbf0033045143b9ad21fb517a7ba680adb08ddec7e3ea22def80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f2e677037be90ada73358296c96f19b92ab36af0c35b9e84c53a53f723134ca192c872f7841c5c2a880c30facd312912023100e7648386e7ae80fa079e580d76e17b2b5f4216111961627b5de054db9490c092d1aa4982afc08ded3e262b9196df1ebf0302047c435bb5006630640230673a0f28c811dcc118c42dccd711dce3ef7ffc0a31f67f7b225a6e544e52779d131dca5ad869e12944a5c4576f983eac0230161690641bede8efc7c20f24933994cfbfbc25c6a62074c4dda6c76458c4ff49a2a92a0c7033ba08cecff7963e79b4420302047c435bb5006830660231008a9c43c43e8cd95a908b5c6d2ac5f1820fabf3ac4f59030ac347209064d0944b150dd2458b7c2c79cd8e07cf614cc031023100dc7dcbd6ce5f5c996769253c6f5b36cb969635531d4ba1ac195173a42d3f4b22ae43ed533d83867f142d73b152a7dfef0302047c435bb500663064023004b7ab2944768fec5395d14311ab0125c26b41643ec901e622e70e2ca80fa9e21923d71d566dbc9d8a79268a39b38fdb023015f71f0eb40d543c0bc8c5e9804994992b173c8bb43160eeb108e88a0ecf0bdedc60e5f6caa03d920cf7d0b4deb4beb70302047c435bb50066306402307e2e16f0c81f63e2a905c5b00ac132511f7a0ac4907be6f5358b86fd9c2fda390a5b04e637fc1e1bfca8cc36b3cae5ec02306b8367e1afdf13b645445c2c8eb04043f8d5a7080461df199ff01653836bf535921121bd7a6b3a34bc33d22a7a7a20070302047c435bb500663064023001d56993c589b909fe8746ccf9b81001ccab1379eb03305cd76c0bd9867b3e5c0c62a84d39e8c46595577d5f3c5e38f20230174a740358660fb9f1d5465b74a010c10ea67d2fc776143879fa769d05484dbbbb6df238777cd61f99e7fe854fb63e030302047c435bb500673065023100e6d2ffc5e1b963d7414ac3555c1b7e840ba098d2fc361aee41a83f26e7be2cd2ba6b939c1786bc74a27e68843b0d7a48023031f98f382afae59bda98cb3913a5055998c5dd8a9450d4c89528fd8a4766d7faaee1f9d7ce883126993a447ad297ad7c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100af1e87ca13174e05cd89c66bfd39ca45ab90ace940d23bb94cf7f8b8ae93febfd823df4f8806a02288adb4b494f8c192023100b1f7502715b9e1072a51db7c615cf9d6248c6761ecc25338b25cf1c2b86b07f9641be65f28c9d1736f40e6a7cd2f6f000302047c435bb500673065023001071ed123f2f6334d72fc589d0900c184ab756fa237d1985c8a98dd283b56390268871a4acdce6dd02645b552c64667023100ccefc2366f6b0084312cc93927f7853260b14d52fdf22cffd381ece9d6354063a8604a662eabfcd57b5a322bf24567570302047c435bb50067306502305aa1e746fd471a6d415340bef6ff592bddb10601b2c6fdcdedfc5b0244ded73f345ce91ff03ad8d71219a3b510d16960023100e8ac215f55a3b6eacf267b889006386ed5c0d2a269077cbc981e59a3d3be3970b4c9e01da897f95ba05785c5ad3e12db0302047c435bb5006830660231008fd5fb9f698c5d3f6ac94fd5161d41d06e400b2572f4e68f7d2313679dd321d96ab0c822152303a23dfe394cb634503e0231009b52e1a3980752b2a33d6eb0826fb4dd912efd6319aaf4865920c714fa1df0bcbed88fe4d21c6de5261284893d8ebbe80302047c435bb500663064023040a501069cfc98e760e22faeeb960fed12cd3d1015c6d71ebdcbaa6be59766640b007aeb24571f21efde2ffaa36e92940230770304e31df25b9c14eb6ca8f4b22689d8a1fc9303a8a62d888e94e39c853fdc73c0163527185c5acaf066c5301572210302047c435bb50066306402300b255fe40acafe27f1322b7d4a2d12bab53f30218b017d1870c0ba694caac2aed42b455ca990c2d1e8248803f08f502602307e65e43d70fd04ddc066a189b30c1399befb40a17229d3f4ba5d568733ab52b3ff9f59d9bf6bd1a917a2245b149132910302047c435bb500663064023079df74d17e391465d6860dc5dcf91a5dd6e9884b07d5832b957a5af917a59e18c4d1f8d1b24a0364d3de61144a37d82202306321678666bd0a8a4b139428e685fdf2a4720a54eefeed4925335c97e03753fffa2108e74bc6dd004547f559b80f20960302047c435bb50068306602310084dc0c50d16b4b36f8f5e36cbb641ebcda252656aa72afb5e8f5c8f1b3cb75c4dc4433cc21978210bea656a646da47e402310084fda0388dc6a103592d58e24a62a8837991d1ef2ff1e7dea7a3abafa964b5fa99adef50813754bbfa4474f7cf750dcb0302047c435bb50067306502302b3024269e49c698d5177fdc1a304bcd767d2129e818e0ad6bb7bc6092d33e2636faf35955d36167432adb152ead951b023100cbb1e7e1b3191a0430d71e2946c157858e47c216183fd9bff18b561332e60ac69e1c2ed8006f827f4fed3f8a35cff2a00302047c435bb50067306502310087e6ce3820d7e6042bf27e6b33a98fe7c1ce18b00806f90d229b22fe4c43ac704495668d2bc280a9f82e9538ea42bd2e0230786163f00e6a11f5c27ce6ff4a9d594b956c635985b3eb0832882c362d1353ec0ae013434a22012d09ae5479afce0eb90302047c435bb500683066023100cf23556e532bd85cd5694c841405a27623a8a74068b30c48075b5b1d3f517fd1315b6ec1b27eb69532c83de3d50e293b023100e74e6e177dbd692b48cc9ce17c7fc9037296fe922b8aef859153543b2efea7c59bff1fa1788c987663d43638db71b0d30302047c435bb5006730650231008a361e2549a263e7c7eb00f19fca427ee215b9ad63f423508cd534e585dbdfba3ff452597c72b9ec3f89ccefd1f408ce0230078d7f020eb84caed0ccfe74e3fb005b500be79557274915bee0f8f124b6e02534b74a81fb6717f1fd7e1bfad9fe79070302047c435bb50066306402307eca31b736e8c0af952a74511082265d9c05e16a1555b70d16d3c159ca4c1fd9eec764ab6a99bc9844a6e1fd9336752a02305a4dede3eff9439cd7746ef42248df128aeb4d33fffbc5e952604e31d577672ddaa316d83bd4f0eb45a3d0b318e95db60302047c435bb500663064023067f4ff9ecdf11d620edf9ae32ce7c3c580e8f51b2561007edfec4dc4e17ede6f638b476bd4782e255fea50fec01f0a7202304496d55d6b012bea66e53baa52f7858e4d7e4bf736d47abf6ee09010cdf1ff0141b311d8efaaa1dd2180dca86fc45d670302047c435bb500663064023065ed72bec51178b077abed99bf88c917ddfbbfdfd0db84d2a17c74c6930777bba8c1fbe8fcd797057426d9d34d013f070230397ca91c1e06ea239989e712b377db94594bdf984078ed07f7421cca06274149eb43d19748f79ecf4b73f7ba3fba640b0302047c435bb500663064023048b44167ca5395d627dcf663e496c30c08b91e4d9e732f0ade688be68746063fcdacacde80280078d223909d94b4c4dc023001caaa8fd1768ef2ace12f91051d8c0fe23d124112c3ca90ae3743167b892ddfea4e85954b9ab5527cd6e1c2c1f260b50302047c435bb5006830660231009dca4cb7ffc7185c5dda7e72c5d25e06fca270783fbaa35695efc5e8ad37764e8ffc027767fb12e569831a22a07c66860231008032e630c9bb6590fe3e9e647ee057e78f90844437c50046198ddc5c6ce0c9eb1b7a903770452e233019cc4fa491c1390302047c435bb500673065023100f17a19a857265ff5bb440bae626360abdca74bce38b29e9ba7b69e257f2ac9aa09b1312b19b4a0e047623e3c936c0e8402303bae48be2171d4c5f58c6227d737d68b2791affc7d61e3941ad7298ce89b70f49d65cf9fda457147d4560f5da5de16000302047c435bb500683066023100ed8c0c43511f566407419a34389f37eb976afeb73cc98abd8e7057a8fc2f85091eb85a0f03d5c39288ebe1d21cf5dd3b023100e8a85e3cc99ac59e8970e71e3453b39080f8899631decaff42c3f51a84818211dd4d5f22c1f66a6cafddb755de29c8fa0302047c435bb50067306502310091ab8a86b34dd3efc313261784860634c3e7d6499ae05de42172625af2ba2c0dca1690e65ab6d1279b9c78b6a8431ee2023019723db4755450de24e5dd23e82f7da771259fa1f08f93a22259530615f7dc6e37afa00e35c8e7e02b512a720a94a2e10302047c435bb50067306502301327fcb3a186803574b0bcb71556a233a6268181cd45982825ad3fd93136c263d26a2cac3be1bc8f7cf2a0babb585d50023100a34bfcda04b0672ac766b4cd5a02d393e7793ea966245d01e31a73943bc7e414cea4e1cd65aab5547070c8efdbbdc6e80302047c435bb500673065023100ca2fa35af6547440e3b206481f72bb883c4d73e9a09a72f782360d4488af04f31ac09f3827920daf15edd3877def504902303b45c236b240b58a17181f92fba5e831cc9e5c779b0eba9d6be3f267ffe7067e55552a621dc2c55c7bb937b6f0f331ef0302047c435bb500673065023100fc7a5b519bc18b862011ad0946701bff2333a7a4b7c22982fadbb84ab6cec1a4cb7148521016214479bd7ec918a927e102301cee2d615e99e2ab748a362150caf4f495e9f6c5813e91fb1d66148a2a96e21c0d79f2cf909483ea26c0276a64062f090302047c435bb500683066023100afc87f6c3a1b6a32c4ba74342e8f62cfef75b31570a941f2c611e52cd50a9d33b7788cebbca3399964c6296f4945c24a02310097e82ce851f641accf06f3659ad6eb38e081f1f7b8b1f83866e27d0f95f4c2701e5bb38b8a968e4d87abfd0cf5eb55eb0302047c435bb500683066023100a01aed9cfa62bdd6969aca9c5872f90afaead565035e0ea46c24134d47c0bf1dea05df4a1a77b37a6759cab21fe4308a023100afeb994f76eccb7409886ed5484d9e1723f8a5d9a12426e09d5e56a9109d5e1eae2889368279b661d4f6711ea3e0791c0302047c435bb5006830660231009576c2a8a04568543523f06e54fa6435baba2f3a9dedecf1a22416efd8023d76823df576beb64592b5fc638eea880887023100d3a0725d27eea33d68fa88079d78a03cb814009420e91d4d9265995b76d981dfab39cf6207e168a5d578c54cdf202b6b0302047c435bb500683066023100cce54ef1276e7aa5da99e54bd22e70d02280eea0f92a1a2c2cda17588cd101cacec6b8762dc8a1feecfd12261f155624023100e767403fa8be75d380194909b53b8e29db9222dd983e0e011656e50f5d2eece4fe9c67eee8bed63e1515d0a5465c81890302047c435bb50066306402307f4773d0b06b8ea27ee66ba1f2966da74ef4622992e1710c213fb0addfe9de0bab21b5b5c7fe0b976ba57b038cbcc88202303126d584c13d537c016fd95686e53fc5576f563c2c89f26cf0b3bc65df21df1e3ece44378699397c9ba74f1e9eca71570302047c435bb50067306502300e7d05f02d66f47945a0d465b4c1941b951b2f5fc4dfa151d7c717bdaef21605c1bcabc95f45cb25a890ade80a42fa27023100849e17691c35ca63dc54d5776746e97b95bda365a4de125c718a98a9642550627cf7bd6131033ad06e7df913155578020302047c435bb50066306402304e5a50aa0ab84718e7f115d898838defff7370f5d232905d82ae088de8012b499ca5c09beae9eab2c6f9b68b54d21ff202303a579136febd9417120320e51d4f10424cee0e1c53a1144bfa08c515f210e24bd4d642dcb9c64b1fa507e049b476d8290302047c435bb500673065023030e67fb9b9c50c55fd80aee2dd29844fad11e45544dabd487a8a8a011b8e28090eaa3b8fcc0d2b24aeb1f9ec34270fda02310095934933d1575ce6219a0b2aefa8fa8d0383a1b9320121c3794ab400a0122ec9c039b4d7e6c0bc69999501ce09fd5d860302047c435bb500673065023100a56b11f0dba0984f18fff4d22c339d7760689718711b94b7312c99230dcc4a7e546207461cfd656b291cd8df932c17ff023012df97874ef8d270ad73a677c5fe399924c775d9114d470b782ab761d04c073a5c24455958108cf363e9372ce133e4210302047c435bb5006730650230613fa9228958895cc51506f32f9989b99ab5a509ac4c46969916f2c1be53f9319c0abe6ff2bdb8f2a983b5b0a9e32944023100d0793b362cc444eb6787cb77034b90d700728a1abf24c42bd18165f309f8adcb7b9e05c529f0bf89f68f11558af7eadb0302047c435bb500673065023100c42a154380dac037c495030b2355324c9bc1902e0026a8a593c19f45e354453f116b83be1ef953919b03405cf4dfe1730230459de4d7c3a960748dbe4b89be0c955fc465af65545ad5a841bece68dffab810e2a60f11cbc042f247a1d04c6c9cf56b0302047c435bb5006630640230354d07756efb798e842209d48f65cf39c70f8a9d8422588cb952b55c66e293974af000bd7f79c8ebfb0ae41d99a6f1e7023022dd01423eabcbd593f8b42a52cf308fdba8d57395900336bac27fc299179032865c326c02b0dc7128de63e87b348aea0302047c435bb500663064023053550a9106e5d0dfa07cfd918dd7b7f717fd658d28453545dcb0c1519d3576640268840fd8a2a42b0dd738fa7381bf1902302aba992f5a5068cef84d7daec6e567fa9efef77151cf14f7e790d75d33154496ec390864693039138083112d75fe37300302047c435bb50067306502301cbf84ad802d0057dc1c7ec43a1f2c0c827f31146eec5cbdeab213b34f578bf3d06b2d6a64c312dcf8253aa81ee36d5c023100b99d51ee3fdea64188840f57f6856ea586bc5d3336fab54e45372b5a4a55b8b028f7ac4b1cf53ebaf049dbd7efc944ef0302047c435bb5006730650230437db75c9f990b68e887a06a579f8088690e8893d7f04ea50136e3026b158cbd041ad06d1ab09459e94f6832d7bf0422023100dd7883497e2f120d56e65abf04d5cc7fccfc41be603197c99ef830fee0a20c91007ef0a138e16037b8edbfa382143f4f0302047c435bb500673065023007afdfbe7d9f0c82acde6f5960426756b90b8481a1d49b8f9b122fd5b3e05766ef4425677db564cbc2465862e9e3c756023100a3d88c22045bc44939e0ce6ee896e7fb0c1dbf6c5e6130594659767fc4385c6696a0aefa2bf1bbb136075a025d6c6d140302047c435bb500683066023100f0428ecd165ef7913d39188e960fa1505d7b5a0ec5f3f2e14b684ecd7eb6efe78bd1b0d1f9b72116711b890906490de3023100e910ee6a2b001ee2c443d45a5ae306c38da13a029efdb5c22fb309a1f9224f4eaf5a124b82a3ad2258f8accfcc94e09e0302047c435bb500683066023100d0b13b3355ca50565ea43b6fdc6b3d655b706dfa28b1d4bfca38801267d11f123f394940f3325c729059794d2a2d7148023100dff985a51b7884dbd64202ef0c5be009efe1303389f9326e2c7956a726d45c50f82f94e56b2cd05a14f15c399de8bc910302047c435bb500673065023100b51e29245304e246cd528175f41a2c7052dcbedd2c4be8c930d2e0a0ca067447cf30fb49cb95ab5152f22d4d9e74672402300be91dfa24baebac7624d728d61f74e638a603bd0788bfb8f23b2eb56dbda750726ddfeeb8b0b93240e642c4b8217db40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230234a32280fcd92b2156eff06cd3632ff5c4c9ec97aa613460f6c6f064183c8477fccd8d1b048872fc8c748786f458a31023065a39f2b0d47f4d41713f8227964922d28dcc06070c889343dab52f2c5289764f1c871b398b92d97ba80ac609c578c9e0302047c435bb500673065023045fbd688fbb7f4cfd0e4481b973249a56769676e8ccd6978df551205efc88a5973cab8a5b70242f75c67f89fdb03f3c3023100805977ee2298c93cb44dccf3ec8be13bc92a8f0ff41b73592d7534789eba57cbc26d5b615f36348668daae5f260c9a820302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a607adc537752770be608f28bcf1ef0621f64195fe60cdc7c2c248289ab453ace8dded7a869086811857f6fc1b44996a023024f5ba34872e69503f9da17305d3ddb5edce1ead6722937d153c55a5baa5fc74ee7e7e5d22f9fc8c702c3787e7e9b9560302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e91dadd24e866d4da26ec0550b7def86b16eab563823ebcc548c5886f685e4c4909c6487cac0b5786f0dae6c27f0ea6c0230046a920867c2bf672bd6acfc7e6bc798ab5bec93c053130b46907bd272332810a26f7bcd99b827cb30fcad0eae89fd2f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d7963f8ad688f82a1bd5df5dad4e6aaf2c98fecfacd7e16a154350d0d80b12edc3d17c6d7890ccfaf8038c62be6869bc023100bfac5294a4159dbbebe50431ee81309d5ef10492282668b23eba2d8d0909c4de09ffb09aceabd4b86965f27102ecdaf40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300e6483f602751f062d8fc393b6581c72373434f796be99fee6fa0f823df4f02c998418c7b5f5df6bb1204b4628133b31023100945a13ba77e4a8c268c0cfa12087e690d381a3f0379b750eb5844dcec57c6f3f45e266fc2efa3bef90755ba324e33a720302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e0ad3935fce0c3dcbe558766ceab911fe58c0421b6555cec8f70668e2c557104f553014caa0ec4d2a4ad5c8ef22528d1023100e0ae3528b83525539caf2d764bb72e63692476b6af7ffcb3f262eb69e18dc6f82c8ea7032a333a3d68a67b886aa7cf470302047c435bb500673065023100989b6b9b9a4ff610f0f6d406f07dcf7227667660ff2a008de250e2852ef489f17ee822642140ac5cd0acc90c5352695e02307a7e2d0425d352e45d5491eec268199f3607be7f8504823d6d48b43bda399dc30e05fc9eacc315803949546fc234cb6d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300c9b4080ff2d8888c542f709f9d38dec341bc73947bfc79f40a15f04ab39e55103b6ad5c4368137fcf909a7ba1e579900230302865efa6531e1ae52ece0753fe241b3a43442354a3c72827371eef6d7b1f4fd88654f9300e53bbdab961308d5a4b040302047c435bb500673065023100d6cc52cd1f4e2ccc3ddaab42dfc9d1904dfe6e104cfd0e819f469f4929c9a3d1c345f5e2acb19c0f42f1f069569c79ca0230791405fa47b52162a97aa0a34356ac71dec2d05ef407bc3c7cf4c9616da23a17a7f2f5ca46698b2984845c63d4b0a40a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310089823151156c7bf8c6be533e58ae9ccbedfa4951abd279c58c5b05fb31517a2813669b675c4ff6cd03bbdb80fdc33510023001edb95a1402ce6c67aa14dfafa49665e088bb761463f1df3c042525b8754527510e0974f0b7a549880a5a4de5a5f7d40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100819e3831111d044396e7b4cef09f518a76a9ebcf192656aafe9c1fc9c943f5c75d4953d25719b3192a3bb3b6b1bb3784023100d904a4ff94d309d0fd1928cbc4725abdfb181e3e1029e140a827ebf57467b0c5f2f4261847686eaa7658457c197f56ea0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303648c6badbcc70db8c6456cd7235cddafe9e7894e42dd440906341466ad2d98dbe2190e9d3a91201f44b3197d366fa960230186932989909d592c43b18107a5e22705aaffaa036051d238e3907fe26103ff689c644c8b33b6e07d372c5359ff56e0c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ca11f4b6766b126b5a869250ffd89f6de10c799e076f6541224cc76c0cf3a7282c985e88051db08262b4be699af9ced6023100e042bcb86c0ac9e326549ff6da77ae3e135c17ad9007a9aa2101e1cb7a19073ec6761b8d844a145984712adaf090bd5f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303b308e0630ca6885daa38a57024c8ddeb386e6157225f2fc1f6de3ca52ff8e3643733b2e443a74970d1477f16aed14e7023052351aabbbccbe325d7f7664a53aaa2a8bcaf15dbb602fd236a8c4579a35b29925d5baa2f69836cfc79eff313732783f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023048ba82ca8984f29eb4d4a4b457a0447ed35536753077d39c89dc5399d2ea1a0c041c48f882a70bfccafc358fe539a35a02307e50792e9c722a26658173d5952acec59da80f4168c8ef4d1fd90729ea638ea7cfaff3080246be4038d630f985e122580302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307ebd3c86841e50a2669f84e1e1b715b1351b761c7a49d1252f805e183471d9a389d9a316999f5a7edee74f0a60d3482702307e03a283e8288dbb607a059a54096ad9ee2fe86347422ba80fd7422b4a82f2ade17fe7937b2a432c407bc283e12d0eac0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100db5e8bfa1ce271e434cb332e8bce3aadf980dfd0ac781462a411d12ead0914f3d1e765b901bda7550320eeb8e3cc3b8702305b5446550f02b83f5293db71d3f9ffa5fc5ba319de5fb7162cdd2eb002e950df604e1c454776506a5d642bb57e23ec500302047c435bb500683066023100e73c7a24599e34ee058068bf4410e751b9ba6c747f574f4402cfff5e83ff22ab357697a46cb95ad9fdf38456413332d102310097e84d036a9f0f89b1e2e2f7339ab606d716dfb7ca493657c4575bec30892f8f55938c6d0b3614441e7a86b3462654e70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100bf6ed05bffd22e65c6d981aecccdc894dd02fd252b4f2915836ed5efe94888af6e528aa3824c968b777955c6ba53a4c1023100d5115bf9f6765090f718d95a00e7e7e7c99704f9837979762250c7270eebded4c11973355320c36d023ccb7e485793f70302047c435bb500663064023071c12a5aba6436957901c384b88aa31d5f3c412157078e8f35c037951d43fc6b3902be9544a4a025d70cbe94d3e28cfc0230561908170e0a46615e9b0249549e942aa8941bfacdc5ca378e1911ca4b74443afd793181aeb95097a2aa1226512f2b050302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d693066ae56273f78041fdfcef06b11c74374f817769c1e91eba3d9fd85336b9106c6cc631f241129e993d4ad86b6d7f023100f16e34039de015b98092ae9a2b2cd621e44d9efa3cebbe6feacd26c34872ba7119ffdc5d94f2a3753e3498ce700ccbbd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500653063022f74f891aab62f7eadc70ce1e3d449036d4aeaf6eacb4800e76f18d467951c5f9ecb9759f0bd090dc4539d4489d8f33402302693c837cd384f2ee8a87f35ae4cf86471f7a4b2160a993d23ba66a3683f0d387bf723b1f51e84a787124e1772b147cd0302047c435bb50067306502300bbb39de795e8a3740442985a94a15018f7c0b9db7ec5c07c59adb7dea732a9f34b90bc1b7f72248a36430665b4518cd023100c26e506949cd3894eaf83dd3e9ec68abea688fcf49ddc28893d273917e46e4a9f78c63547b41f8ba6a0a31e13d15bce30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305ade0eedf078d9eb8ea5f392e77ece8139b397bd9f1a6644ea488bd227793d528e3bb0d37bcffd81235de00a314f0c4c02306e589dc0054359538d1842d4ae3e1caa5d1cee6ea3eaca4c89fd38f69e95ddf73d60a68519b643f986a758fe96baa20e0302047c435bb50067306502307ff84d69888a8e7b9a729b32085600b47468eaa17288eccb5956d716c42255a5214cb259ae5bd25ea6eb3f4b7b25c5fc0231009a7881a63c31023902caf0b0d598669f56f2118e1c4a235dc169aea2f57207226e805e93622f02e8458dac22dac87bab0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008869aaa87f1de371d3a09c43f9a2ce963c883cea1f2ab7c1febfb3f025f6badb3d725e9f7e378cd7e58422adff4be46f023100c8c017e49d93f95cf4c540291c0c6c598df91d259f000942b441f089ca4fde66b795e3ebf2655530c3cf643b10939b210302047c435bb500673065023100b36a1a15068fa82efda6c7c7851977567f1d58ef27722c04c8c647ea0ce8c7335d43a8b073372751cc5393018af5391302306cebea4e2e471767e4ed8cec3652fbd49df284e598e30406701f6c989e4cbc22d2d71d6630c83e8d457b0ea42c8587c30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023043e855bca2a6c8f84de7f2ea6d10341c155af57eec374d2fccbf713d8842a58c7d5797654c159c8a2df4fc33ea8c04c40230047796d024af4cdd4544055da1f13fa0b19eed55570cc382f9a338958a47c7c1d915994dff6b13a75ba144a634af9f6a0302047c435bb5006730650230328d1746c16b118cacee93d85748ea84e35c416be87ade024e7c4f286534158ac5a60cb5a6768f44c0294c3e35734e0c023100d30776a4ecc520a56d6340d9044737051e657057524beff93bb2286356d381bb51de92a53171ec1809b0357949aecbab0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230539940b8ab4c196f1fd389c8350833d752c05a99985341fad2ea6f9f3584b0bcade7063e79fb4527cbf5e63e9d44fc06023017d50cbdc3b164c4fbe28a77c38b54270669b9612d0debd375f0f052ca5e98a3a66f3a806cd410fa9d37055068f2adc80302047c435bb5006830660231009578425c30af20c0c8cc661e8a15d4da3f48d5f0b0e0aa385b98e47286497957db8fe804a8db1149692e88281ae953d0023100862ede6ea2cb4860ab48688cc00af339e6a7e7b334bb894df9a300bbe84dee0fb4b711cc623080328bd22015cc82706c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305e413bb287ea48fe7f948ffd60d91aea1028ff526b5123ba1b9cfd7668287deff0c69a25a9238c2d8fad32e73467f12c02310088e7bc808d37a0f8794979807d5a8e5f65c7b94df9515567a2597a6df45011e0cfade1bc5fb7a6ab64d440f86a9d821b0302047c435bb500673065023100db2dec476de81bc2fbe8cd803b88bf69c8ade3cf3d0b745e68bb39e1d0cf86b88397ac6a22da6e14dd73d158493c2b4d02301a81dfb95e413a7528ecf968f3330a64d85360fba4ea95a28a933d033c38fd23f43c24ffc1c0fa659a121e750c6e3a7a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c94a81b2d87aebe51bf9e243864a371e7bdef95214aa92b42c158374b2158e29bb438f50986544646e523aa7e1851b09023100b2abd16c6e25635b7b7c199097f830976e6761f4fe6312d48773e74ddc913b260ad6612610f4873f15398c6f58b660670302047c435bb500683066023100a9d21d8d22716479e8b469d590569ecb81fa91d2fafee1236a629022c1b5aee765b3a3e1018b788b5cad7452e640ef740231009fc1089f7da64cee155fd4967f823b0043d979cb7de2706f95f592cc0bf82ce7789fa7a6f8e2bb4f003d83300d66bcfa0302047c435bb500673065023100ac38817998a6481cb31d4e291afdcd878ca47932702b2a2cb5c0c400c46bc65ccc22f27387d1712b7f7a8f7202f5b86d02305e5f9cf37e62a217ef3f78191aeca847e96777fcc692ea6acb967cc1d807d845ab3337abefe7a939ed497249b53f3bf70302047c435bb5006630640230483838962dd21f949830ab3d0c2b998a822be4bcf1255e4a0a08b06d66913e60d6becbe2c8925e8b7fcf583c29b01e4002305773d67ea9b04b8eff18c92889224a0aaff6fd339de03d5f4d7f09bafa7811ff35a72d1f3f3e22c2266c39a192b661d70302047c435bb5006630640230361c2465a8581b49b9ce3b377b61581c6ec3544fd957c2180c80ed005a6f0d3fc9e2b24fafe5dd495fd309ad1605e2150230590f3b9769e66fc202675e041d2f19463a1411fa45184be9f96addedd4cb2d0b2234ca872c870a1ca1b629911798406d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310092d4d442467588d6d33c5516f1de931f857255b742ccce5d5fc8529cc6fc8e12f01d374b1cb1add7a8aa901369c6804d02303218cb2d12abbb77acac52d6f8727aef7d5f23ef810a7c73af47c5cd3ed5d3ccb160c733d5b1d52e3b4e5cad75eded440302047c435bb500663064023004b0bf81b553d5d9c9d302f070b4a6c63262e664440469d0b61be5384906221f71b0543eb8e853ccb84a6538ff5b6c3002301e98346bf24565118deb057977076012212bfc0b30e21bce085d2993899ed5b90a1b96260223467a697f3046274624d60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402304794bec8df85f02847ff5bdfb1ef668482952c146013f855bfcd769a886d8fc38c8894bb64e02176d1d59132e679a7340230492d73844a5e110c1d7d67f19476e99835241012c6f3755898932beb1cb89dbc7523ab07d4f2515c04170a8d4a85e2c40302047c435bb500673065023100ea0cbb011b013d583a6c81f62eb55db4623e7cc63aa32677d8ff11d81e434458c21c92e772cf757cea8b215dc85327210230589eb07507e09e251b7134418708ccc3b9934723cfbd2539d4cf0517b806a5ed76302197b6137e5e14476761f69f11390302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c072aca7c564a3a7b34f46994a14e28c1c5a9e4cb60f193db773c8798fd6a94bc8459d83eb9d7dd645e33234ae9264400230489ad75bb0ae4d6c1853bac0d3e124a3c499847d2828d032731f6c67ee52e564c2c955f29c6f4c470bf13be171f7d4ff0302047c435bb50067306502303936378b4b0b1936f1f6b71c314b6669516e7ea4bac24bf7489ba79714d506410d0de57129ede5b0a6d8ed4715d31e41023100ad1a1959ef8f4014983f59436d1798c7141739464b50559b372ceb9851e25ad76860b5437952b60c93d8ac35fe7257680302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023023bf8b5591bb390dfd04ad3da35c38b45daa7e9d903e1ce5cd08bd2a8aa0e05d6a7d835107636d68f6f8c821aa8a3672023100c1b0d53c4a52b2324fd89a09f85fb0bf33d454538444404cab66a1d2b361a303e0fc9009e1d8993c4d667d0a0dbc2e570302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100decf6f0fe4c63615537d72b4472493fabdc5ad2563b19e0c32117f754cd3272b9aaffb0e8ffa42040d7ea4757e11a17e02306a4a106a5c22d879b1558e94a7e2597cf8f28ae236285349d00dd2d58a7f359ed1df406608c1b27004e401067310930f0302047c435bb50066306402301c73c9f776bc332094d7eb3a398daf9d1c0b2335e9fdf7283a3b360c0343585f409553038798b644273a133029154a3d02305cf2a1a26c3280158d600086951c797c290d840b244c815046f3d84a1b1043332e915d183c41cc080c797ea68a34dda50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023049c12c0fd2692bd8bdf3ed8898a07e09d23effbfd4f76364c116f476984026dd521a5a8b2373b54e5f2bb07056154dce023057e500f6c595c8c489e802de62f94723e487a0d26176ea5cef083e35b98cea78e4144c356a64b83ce0bb89119e1369450302047c435bb500673065023000b68ac0110231974d1e14924203c7752528318033998c52f760e4f9261f1b4beba085512581f9f033f0fdf0b46c0b410231009a3411c5bd5f4d5d84d0ba571545a9a4f2da172a5c299cdeec66de0b9ba83a353333c06faa5f385578b41173f8feb3640302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303e1788794f678333a7708fae132e15f379c6055a752ba1e54498861a21a47019f4e580fa2c7169fda8cd14f539d271bf02301ed986f433d045117808edd9b06c10f0caa28d39806f01d311e3324499cd0fec1fac67bb385a2ec1f9b4e209a687eef90302047c435bb50068306602310096725a2dfa4b4e6c1d765c7c69e74e029b8dcc372e4c2b8ca6adbd952d88590532eb8ea4eb9dc98d8b1e8732d2459de0023100983858a2cec5397d1166a81da503c5f7e465e107dc862565e8172e69de4b556c581619648910cdab3419bca2a9de0ba60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b3dc234f02011f8cb13fe3b7a237a070a47defa4f780467e15196bea05bf515d94c628381d3606a6cf5f364f6c7cee6f02302b35a8a13ac83d54d8afe1d41067ca3786f42e2a82f1a5a865c492aefcb923572628f2e08eb6931f35c95261e0dee7d00302047c435bb500663064023077fb68b7fbb21dc0c44a1aed8fd0e018cbfb602b2d05b3ac80cb57f1d0b632fb8a927d21092af2349c8990b85db9cb4e023009ba9bf424baa08ff3fce06a0eaf8b3cd155658d43778c4fe3e724506c23d663006fb774898ee86411b31fa50387942e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100dc5ec350ff1b979e4c1599d860269a68a7c1fa6afdb850c6669b743b7cba00b4dc01b816707e2cd8504120d322ba863e023100a198ca9e36d994fa687d51ad1a39807884aa16363eecd310e539a049b2494dddfc9d24f561a19a6ee65175a9672f69d00302047c435bb50068306602310084a05c10dc053f78a2f67c3f7960dbbd74f2b048e06b3d7a2cb4bb19479ff5104f0569ccda650d32801dfb53985aa838023100b10c5205d9b72f85398a5fc24552a485d666659d07b408370b0a919b43565d5990d7a9220a229fd0f8ae5b42ec22ac640302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023001d55a12aaff585b54ba2aa970fd0f7dfb547a49d98b732544cef740b0bd08b95560bb22b10ef95f4402af31614b4247023022faf6c28ada178184a93a21601eed4343ea313f86669c490c5887a41ee36f11d3aca1f59f78c48cf9509c2f5b756bc40302047c435bb500673065023100f35e5d5118035b9d7e265530ecd1377d3201ab3e613289191ce63932c2c58da5cf7069540f5d86a3240a3a6132dd8eba02307c7f52739804d6bae0598e9faee31adbaee30d6d751bb401fd540117b11fe054bc8fa14f1c4461a146db1212086a96bf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230423cce7491bb6b351866430078d07dc85cb863390c4f0cb7e92516360d5a46759ea61662d7ed4c123cc7a5f1f9a97e34023017bf2228f008253654850bc8f9b1cd415f8bebf4ff943da4538719877189017616243c3dd25403a699aecd623cb03f580302047c435bb5006730650230518c7bfbd7854ed29cac601249fb418025035fc10e86d746217c31ee2d58f5d676d2f647e9853df9cd266ad2b6a0c685023100f94a4246b58c622d780863e4a0757e4d43ee478cb88470cde9177fa8414bee4d4887a838b215684276dfab99ee028e200302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c5d94f5b97ee0e6ec59359d446c829c1e97509577d4b1e532bc8a9807cafbe4eea4e23aaf0bc97f8c7058f8409e6ea72023100f16404199b6b7f557825170d37389e47128263ef0a3c4aaccf231cb07a1210e11fcf43fadee28904e6c894e314ae31cb0302047c435bb500663064023009aa8d540dad4e28718fac8b412935a014e99397b5ec08cb791a4f95aa10b30bfb06c4be9f7a106aca7d2ea9d93db78c02300824b92c8020816d6ef80b3783e6ce00f78a62d81bf910b8b63f5534f1cc0721c737d97c4e217cee8e2f616ac93f5adf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023068a1057769db0a258dc5dce6051cfdca80f235a67974e9013ea204adf923b3507b531b92d1ddc24ef9fe31ef27cb2866023046d7a7f1f3c12dbd2de293a29eaa3bdbf5500adc90f81abf7b6f6fd85fc236095758328a024075962fb88368a256f3780302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b7b91babfcaccd2e5d91dca8e1edeca039e04f241c57e84d34fd23771a0b2cbd1430ee32addc05199eed6192bd02cd08023011dd3976c9948a7bd917426f312a480e546d32a398f2fd8ec85f5b7bd72f71cbad92c9d57b5ea5b014d6f9b80ea028820302047c435bb50067306502310092619b55f5a1e6d84a1c645f20b6b795e1f1242163582893056d85d8ec51bfef86d7859257227fabe2da4a71f4a5b6b602304c03039b9a69683de6670a16bbe1c79e5babf3cb1199a051bc1bed38c906bbe639f2ff7e5544218259d7977c60e71ecd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300c48f005e45d0afb8c71205ce5d58fc38dc5126e149ede6a351a340cfe70311e1bedbe7a70a115f938c71f295641f32a0231008434d04e75d86bd9be59043d00b1307c9f8a6287bc2c6db768ff292af9f8ccce0ff58862a5168bbc17a447bac8269ebc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023044b7a9f996354d9432670beecc6b96b806dded46fcae11e653edd403bcbaed2b070ee362969f8bf85c795945604db99d023100fa0b680e3cb9c1e93d41dd2206cfb0152152f995a0598be52ab955151ed7974e6754bcbd88530cc4d89f203759048bdf0302047c435bb500683066023100eb47eba37e31cddec5797aace8ca44f88e1a3753e29ff395626bed1ccadf26a179dcf7c789fc78d1d9e06d16fb01524f023100d4c0f9da0914442566726e57f1a0ff4ef9b6a99a5b492f454b801bff03c181cdb3473700ff9b59d6b10e5b726053c45a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305531ff819246da58193e80c36458c953e86abf16f41e67267c1e1e8bb8729d59388417dea33a76476efdcd46834d3103023100cefe76da711094a1a0f47e4948d36b6ecc34636d832be65cb68e48dd5a4b63046d483d2a9a971a3ee714850d411f76b60302047c435bb5006730650230112668da7f04d3819a194c4eda994e9c68a36b65dfabfd2ddbb28f56f27365b50742c0ba14f26695bad2d8a3ceb16a36023100d1c8d57c60b4dab35db36e749e3e2012bc01570be634f36358d97d037c32eba4087c57c5faefb8a79777ed2eda010b450302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306700258ac79f26a3628b9c6fa3ca5dc3adc2df561edf82f1a5737136cd8161543fe7b03a644b38b62ca4d188a66249c302304c2ab8bbc482284d248b5aec224edb7fdf229fee8da36c91aec55459ad2865110d00e3e9e3c482e1136ba66773537e480302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306f8342aa7fbf917bc8a0fde93e9dd9d2cd7cff22a5389ede0038327e9956cfa973e2c93cde30c0f9981dd5d4d61bcefd0230554e1b4bf1aaa1e16755ca751e8583b713e0db544ad747acff0916398b18235c4d6eacf1359428f904a3adba1d5c027a0302047c435bb500663064023022e9e0027ccade15556b22240bb869248238d9951c5c217685439b7a9ce8a897972f3e3c150fd42dc1a2ea5c8ce4aaed02305099f736a3d315a0fce5685d74d7895d3772e0d3568e120f1a5cfd911065f0d4c61987aa2b5ec5dc80d6c33ae61c51e20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100aee1f673d69d94271bddc82e9603234752808fd18ee565cb1be4d4f97fb05b0dacdf325d7476b5981ce011e29d27eab70230526371e403de0b02e8edcdda8c4f41e7b9e5a03b3cef83c7f67bd1127d321826efa1a0dc04a387c00fa788ae2e18f8a30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402304ba9152f3844c3552032f3a18d6c8bb046d20cde31d3de2f455435faa32507be480afd2199fad7a9abb09dbfb13a84350230269437456d98464d4dee4389a3a052d7431f900a4c71a88b63abb26c84c36adbf80c17c0c5adc36c45d6ee0d76e1d0ad0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023063cae62c7804c5d0ee87d82082a9d238b83a54aad2a71eeffa9d85196aeb81be0d0f008bf11ab19eea77e082a47574d902305dfd6b5ea548f8185b2c27a5832d1b318ef5ea22e477e2602663c5ec53d87f2868e118514b8db945906033f9d2a05a250302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100cc0f0858a9b9eef9996bf6628d051a9a69f89f6189d987d1de625fe7d5e7c553a4d66f398ec1dab5413302218ff963300230086b44ae6f17814738a531dbfdafaad3de3e4b19918f16e8bd7eff2f97c95ec45fb4c94a51e87ec41e0894c6263120ef0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023027dfd0a1b525881e450e3c47cf5a49d452e80a615e4112905387d1af509a77f5d4f167371a963027418340b80e454067023040ee598ea2b38fb8cf26f147b32925a51dffba94a287a081669ffae451a54d206edea6a845c5f0465b509d015356eda20302047c435bb50067306502304274a1e946a0ad1fce07959dbe6b058152c78ee8ffb92734161d7c6f19119f74417bd0425f41af3fbee3e1cfc022534902310097196823c1fd683851a92d7c14eb4aaf0cfec31e18de42c46e839c247765b709b07bb7c4d4d79459b51973b3d04fcf720302047c435bb500683066023100eefb336a53165a2dfed1bd0634a641f8410b08bf2072050a7f7c10a05e7890b025dcf0f01a6546993362b2ede87109e7023100bacccfb6232e560c457d151cfda565fa22af0460541e6d46333a85893fc69463ffe176859ff93fc09023e6e384dcb79f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300673f3c76b9ba17cbc81944511b2f115c0472c497bd21c5000108f8b597565e847449d62bd2179582ebebe1b69771f0802305dba08c946a49bfe171957bf3eba2db0a31ea936381aaaeba89ba0e679229b62386227666f9c7b9c04981de0c3522ca80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e93ae77468de96058ba65812f092893ddbc0c0e59824fe763dcfde46f236172aaa139ffa8522f537b3261643848ca070023023e4ce590ee9e15fb0b8e965435a6b01f0006b3f7ec09ef676f7758488ff179ebce46508b90a354954dc8ed7baaeb8370302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009e595827aebd6fb9ebdff4004ff873cf5aa8ac16f32aef70423dc35d97ca0ae8931bfcf7115634cb3fe9f7c51e7af3d80230792767e4565563f23bbc59fd65acb52188b3e6f9328ee3407d051a7eee9c1d415524a9e1f55bb2eca68dc2f55ce3058b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304d10b5a61b1efe3a443a632c8bc1a1d7fc9d022681577a47f6bc6e3f0cb5b39e78993ecb4ca83d6a6a6ac2a354ed0bde023100838090df418b3b9610d51d7f3a5eb79c70b015d94e5e56add6ed5514000a2e6071c655b7a75fb39560f4f78a9642cd0e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043254ebe0725eba30c60c316cedcd12c503f1af284ccddbe70266e11ba5d5ffdfc074056f3bdddd46999a56f4ebaf1d102310097c9af6ef41bfb051ee0d83c6375f393a7f0f2b2da6f115d34544e69c51f0199b2500bb91d8db58baf3d0e4228b8c6a00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303f6897a5c5e3372bd86961d24a364351c332b76c04a860d94dcea687a5b5338104acbc93647570f66ef6d029c85e3fea02310097446fefe3c058ca35647a240cc20b3cf258ed89b655472bbd312f9643e803088e824743e9eb9569787ce225234cb7e30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b6652ee6927a5d54845b5297b0ec3ea66df377e7afa35298f5fa3abedd34b724210e4ecd4e3aa02215786b40073e2ad802307506fb0188ff0b4ef96f4d22801e5677cdd9ea492ee9b69e91957f506b07fc1e8ea165ad2a91d5b0fc009fe83045db330302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303012216e3a2469f2eae6addfa0609ad90bdeb812dce34361e153f6188453e6d1ce4db709a4c27ad7a3f3fcb81c9214d9023100d386c7ca8e8a2e71a35d7c9011c16deb554ed5ded817b01cd5a9e4e54a2ea726d36cf4c5418de97d7a9463eacaa447ea0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bd6c6e4cc4caaddbee5de90d1e59b3ae7848491540835c32d022581997224d8b3c8361b90432b5f05bce3ac26e5afc8902303bfe78a8ed089b408bf0a57da356bf4f5e5a7ceec77bb381c5081c8575e6f8c992967f431b31f4ed1675654dd0ca5d4f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230446c09049a1dbaa8aca8ef92ed28c4d5e773f8c7d4801074243fe439eb361dd9978f54ca6b01c43564556838707167a3023100e1261016e02399a97c37cc7310c6ecb629ea1e67c92a1e69a66bae8401020fe3f3210397b8f5abb4fcd6a6ad5b1ed2e50302047c435bb5006730650231009e6d187a650a70434129d040f1eb61aac6efa3f30c4c0863d37e6b494bf8838f031aabccbbaa0fea35cf836a61e686b8023076d3133bd58477659d136ef13675e163dde898fae43b8f0afec1d332c7110e5df4cc19a12df3db6db9fcb7231d10b2170302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100949abc377a2f112e58859aa60255ddb54b44eaee8a2deec7847d78f45e27c5aea4ef45148716cf0d994b38f4bf4dddbc02304acbe1cb0868cdb8ba87220a447ffd070c5ad46b4f819cd7cbb9fbf4948529d06efce1484b211ad21a3ba12d3b3e15480302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310098bb6e61aea48d1a2ba618d59fe6b5af5ed30de6ff36156351359a8c0984bec2971033675d21d90adad666f4e9d421e1023001b6992f16452116f94be36e3ef4fe3bec3a2851ce2e977b34ce4ae86c0bdd28b23054bca9c599393dc450eb6e437cc90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100cb53b1d861d45697f26064d0dd0107fd04b14bf47f37f2458253c0d3d4a74b718db7e8f2e6b1d057338543ad948be62d02300273aeb5be4a42aa2c32c33bbe86d4d59360c55e17f159c6f3bcb00524b76fe081155c5e706796a81fd11f1d837e723e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c3169620e88e2605eb3ac26523b58d65104a2504adf43c00df5fbbd3fa6d2cd2573125ab421f25da4b7f6619a6cd953e023100f53f5370d2d6ba7fe79829d95b0db784fa01684fb45ff2340a410628e2cfd8053cbac22d9f14183b5f03477baf6ae1670302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303ecea4017f467c787d109a401528c987dcaf0bc0998daacbd5ac29273e76e7a23e9b950983ca62ad43409e96f98f5a4f023029ab0995169bd4c526dee0d37ffe497b8c19daf52d0064699ecfa2bad29316a8e068325d2f13c0b6dbdc60041836a0fb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100fb974a4a4883565c36d451c4b7b5d5749b62d08b87caa14b6bdd4423abeadbfc41c4658733d87de2ec0c5ae24b4f6306023061092ef5546a4e3f6c0232225c4b8f2086fdc0279f19fac1c7e45648de57cd88f4a02a355339fddd8fc466cd849942810302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009e5745bccc9e220bc4e25b5567e11ac83ea6c161fcec62a1d68ee3324f3798e71561f59fed29da20d01bd0e98df2f306023061925338453577fddd5c0affad2cb3773e0a2b062fdc5fcd47a6c4f7e7d35e9b1663272799e8758bb39912ecdddbd33d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300bc4909dbd157c9d06682301004e13b2bbe576a84986ed29c807dee5f18430949b2d9de1ebcd1b59973d1c72b3b6bba00231009a9532aa41fee6346c24615e5a40100f42a4a1ef6a8936e788cca9ad0c87ad90478babf465ea9b3d670d3184cd2ca1e30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a3fca3c553cdd410e6e506e980d7a5847c9063e51746914d7e1c74e95ab099c6da8856b25374f6fdf88b5270bb33d2810230660f2fb1932dcfd916948db4b165216311c8f5a86c82275921932f30d868932eedb2971627a51746ee96623210fee1280302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100aa30c56aef1b37654c863c75169576d27c8cce689e0ce96b4345ab9a5cb994e46100313c5a5b66e34774673596c8abed023051e74c68a2c407dab3b18f7961375af678f0cc2fc07ef4b0762296c55ce6cd576c3a894a6ae3bf604b2d64e8d4f88cb90302047c435bb50066306402300ce67691abaa368f248a28923c7c0e337a4bb945c56b803d6a2b88155c7d4b46250f59316d505c3372e2b4ffff75c21b02304652679c71d1ab080278cbce7e66c18c654dc00078ea7bb2bbb60db6a1adca7656c6b80800803c2bb164fe09e712ccfb0302047c435bb500663064023050662a4a2292f4c04c49ad09412447d7adf25faa26dc409fa4a1400a2fc73c4d45af5e1d97fd29321e7428743c5c21da023054c0b33b3f47cf3f968d9047a141bea7f40a90249c96c7d63de0e56d315eb4e298956472f336626f5b66f23cac6871020302047c435bb500673065023030fc78d2f911162208cf8515f52cafed60edd7680e720d6fb95b5121809f5aee50bc5e07f21626766543e835d6e2a9e5023100f09bb38bdd2ab71ab3a71d4d694b85e8ed5414181dfb6fc25ccfa09ac7cb9a174b3493343c12ff48d68522b660fadeff0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c8c448bb2901e17aa28e740eb2737292ab1cbdce6bd33965bd9883867ced253742b8c7ccce443faa9d49fd034ba7cf700230349b2c2f901a96e2d3cedd0cef2f028aaa7d7e0deda0db94e0304f2b4fee003098db1dceccc1fe5c1d922bd3adecfd040302047c435bb500673065023100b21ec6da67aa6650da2a43c50cf504fce27d0e793edf5b98abe6e909eb3f9f3c4aae1b48b573b34740589ac7928ef98a02305ff77c420ef03ef7f3dc94205247448d3b0421ba2248c888b03d2c45b1d3d7dbfece88eef0748816465cea8d9e88e22e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302a34b7e76e7e1a379925b1454031f5503d2550387ea9cc5cc4ae58bb4e59eea41fe2c0275d53f94680a48e65416779500231008c7ab9b849c71b4c32e2b111935b51bc21c8c9b44374ce330b9a9913013688fc189309a032c4a876528986d36c61b9830302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301586eceafb8f541f70e3334e6cfe2298c75db67c9bd69e2371af2a0df3892bfba64f0ca3634c635ebc744e7a0f9c25540230161921a36764f901bc100fe2f4ff5ee11ede0e9e8d86628d674f846eeb43f95e50a58865f8162f7b43f9818a7460e1550302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023073e2fa09e632e4d8d59dc7f24001037a5dbdbf843c21a166bebd677a7aee823f8a77829b3696025124c1cce97091825f02310094333f452fc2396a8f7d50051d12ce504689ae08bff9afc542cac7635f1e35ccc58e833122ce14f86b94c8a835e897610302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100efbf68dab5a6ab032ed74606454754007ac0df7a5651aa03b8d528fc2734371f39e454c2089f5811987ed303d9dc3e6e02307d588acfd238b7dbb9a67d26bcb2e7578c7555ead8103e4a98ffebcdb0e93093f5fa5601f8fdd8247cf7c18e4697e1b10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023037967fb342a7ca007ae8d19f8de5babc689f048568b279c5ed30cde2b5c9d23383eaf36f059c28808fbb5b6c4b765a5702307f140f3c0e531eb5f752dabc6d57b4ee708f40559f7e18c67a3b4090e036f7a444fc634432dacdc3b75fd127161a58d10302047c435bb50066306402307ae9e6c67de3100d0a543051471e3deddef446c594f3e64dd2e1530264e8c2ab9a74723615e3e779262df34957e94fbc0230080512c4cb0565f7ac6a9d8c379d03df482eadac5fa1f549fbe3c1eb40911c81ba87a3ba9e4620d29573faad547b2c890302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c7fdd9a127fef132c4f90d950919ff3f5ca77690b2fa212c442df103dc853ac462b7840e5365c05082c0fa8a622791da023100a77ba15513456b10d48605d6f35b8248a42d14d29a173050b82b57e64888ff1cb728552a72279e2cf8a7c5d92aed838d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310094fa6c77fe4fd6ba1468e8eb091b0f72e218832b95af3d81253442948d1e17c96a678059569bb1dd1d52ad6ce9568e3002301f8fb54a2d4e4e2f113e954a3479be63f076cc5c0f77aaa63cf8a245d10330b8a6905572346f3825987e74660e4410670302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d8c704d81db4fbd5c32bac2d591b013209e38b23781024f41d1b976be911ef19821906afec8368e9fb35ae93875378f802304d677b6942b78ba662ff99891793fcdd042b0c1cf01f067a81b9d1913a988c6ba5da1dbc6cd30430cf9768243c380dca0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303bada45c4ad381f611034f8e1b8f53bb2485b56192c0db9eeaf4cd58dfd3bf9ff98eceb640a9d0967d80bac64b5f591602306f222fa8e78a599ba11ec6fb71b6e2281f5da8aa3c845fc0d8ae2da3cb45550cddead6605bc1a6a23e76946912a2f4e90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d0f9b5dda9888969037af70588589986fe9227990dd11cfe370c911b748d82dd26ae270120007f4c391b14b8d36bf444023100ad973d77907bfbb1c631472c9d210c38adfc7200d86c721d912a08f347713ed7a341f19010a1857c0e997bd907aed5920302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023008fa899bbd591be728124ea66511f0d27c0c231be771ce3b4d3b4c9dbddfa8eab476b1a60cc6c724fe33f74f8ab6aec1023028fe11f2d896330883db6a56bc74f73cdd6934b3732fa82288885d16accd2ac1b465ef70a9d4323409ca4bfc2fe6325a0302047c435bb500663064023011fd85750ee26212d28bd3a9fdb726e85677c374173a0d04d748c4be3ecfbf15642c73b440382cb4ce42538e865c535f02305678d2b9e71ab85c56a5063c6ba845f42b66bc0acb16a18310fc8067313c978179f70a1e60df621b97130098a6a063980302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d267618c7bc8b0faee99beb30fd940e0af8c95b34af3b1ae220541b84e84b2abc229e029ae520cf0fb3a1e0f4b0e42d802303b4fbee04306c0ccc7d48c415c1c4de8712fd606069019ee9830f7a9d7310fdc865e20df6196549682c25f2d7391a4ca0302047c435bb500673065023015f66b6c20000958be20626fe3a8c2fef4b94ca515efa2547c4ba4c9ba392b55bba2dfc3a3b581c3c76d36d48c9cddd6023100bc74260520a939a93888001c89da86366f19ef183555e822b3c8e453ca0232c2c2b506ea015c2ece4dc0cabd2d3714df0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023012f6dd8e4444f5363a86f891a1ee57fd402852426b07c648d2df74676a03a309f7451c335169cea124f5348ee92fd95e0230718a4002567712d1b84b841ccfebf76400adc297e3d8d899a9aac4b7157583bde205f84d3e2493a234b5e8569befc9910302047c435bb5006630640230689e740043f7b28ab1200f39d5f6820245a55d766b24be4298a7a63c8bd9caff7ff33413c2d619993c910c441a3b3b6802307f2b8a82a86248df4be79afd2437a392023a8800174a9d816a82af6631cbbfa12eaa5c09c7ae83b216928f3ba0240c000302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b497221d4c8d3e6a2b102982ba24c6f86d76ccb13a3dd9ae738c29f802d1d5c6b973bdfd7e7184dd5c4fb221b893f9f7023049a2dc9860d11b1a2fba5ba31aa029836c8f13735262501bc858a3e6a7b456aa56e2324a4675a863d2e51747bf5cf6950302047c435bb5006830660231009d901f5151a31df0122a9f7072d8f9a95adc2d1194347cfa3695d3512fcb50a7ba5686088c89e2411ae16f5b932baedf023100c3df73103a4d6a81bd5160c129214706b9b8b7ccd4c35dd46f6f5a7d9fafadc772474ea3a1e53816d85d5c20d967c7980302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023036e0bfd9dee11eb7e24aa69368ae18da0763891ac8125f0a05b537a721d11d05c86410a212730888ff5e310328577ec602301180ec16cb61caa2ba01041a78259554c9032306003c2f5bfc45a09fa100452ffbe97824911806ffc1ecf7d01aa9e5640302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310082682284727b26e9169e19208884597d3888b8cfe15beddcca7f833204c2d4adc053bb8c9fa1ae18fa944fc133f0b0270230512b44ff4ee59858eebb720756d278a4f720614409ce6607ba48b33c109ec8c71fdd8a2fb959d032b7dacb94e2060a130302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b993373e57fca7f52f15ef609aef86b51de4d5058583257b706db631be4b17b3bc3204192eb1b054759b419075ebeaf3023100b84558760fb1a1e38498e2285c2d6a1653857acdc37d330dd39bd8f8492e8c67fd1969cf1e8374cd55b9eaf8918848e80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023031a98737a39f2cdbdbd907887a331ed7d9c1182c5e7cefe75b3009547931698f607e5fdfb2a38098ca9d0fe82023a0d102302437ada393486ee3af21a3dcd9fbedfac08653d1eda8e27af3ad519b9e7d49a60a03a69c2b87f851ee2777273018e9610302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009f6311381746d45662619faf19b31188fc620229a4559cceffc80f01b2bdf2008bffd6135baca7a7c41201a1ebf0c6ed02307dfdfc7e389d83e89cc4c24fb19776580853078bd77752277bd183277871b0346e31619e0aac39bd05f115789a9711a20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100df96f80dad600d27af64034924e23a34a12bbbf4bb20a52f52e6d760847d16ca4a2ab60f9de2c0e591d7bf076a9eee07023036bd35e908ccd8f4846ebb88800ff9aa6e97a8cc777a4c442fb3743db6384bb68f1e449f9de4e40f85e26224c07de2140302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300f8b69044582993bed115c95d5efbde79769b47a5808b4026b9afd1be687cf5029fc9fac33897204a27a0a9a3d1e3b3b023100a4407c714ff386427193ae0d80b610e8a8eb7bd0e09ec63526fbb1dd43f6b0b4bb07dd46439ada9e8dcd3c90b19d01320302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305160af2f72c23e698b03808b65cb07481684ff2d8b25307d299fc8037e4c0729447bc2b9c59c2b1061def9993e52720602306a3bddd0dd2ebd2f601eee9c07cf4d72849c92c43599049ac1a4b83af0764412dd10aaa6831b453a0ec3ee4fb0184a290302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023055d3736b517d0fe73ea07a47fb32473dfad4771fb0bd1b10606610d8545bb872a584e4b8ccefbd1bf7d00942ba26fa450230371cd2054e872a27a1e1394a785331396c2ed9546903ecde6bdb6a8fc88ec73097f4f52099c0095b03207f873a95c7b90302047c435bb5006730650231008177c9d8ab25798946a5efe28f66009c23dd0a0924d68408ce2d0b1b01e1de8162a00c8c1c0508572515d844d17065c702301e3487a11c9b50939d6fe5bdf0d098884328af338ac9bc1dcd0274d8a0fdf95ab050b55210b32230888e42c3c3a663f70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100998524a1cb1e4df712c3f0db7076d4b383ab98c467dc30ba588cb1c4e1deb5b925fe966fc2ce7fe46e0d21aea7058d2f0231008a3a6209cfe8a65feb83f27085016e8dacd40739e82f9d821438588b168354264f686c6e46b57c4d24211b34ccd301140302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b0d31ec1e4c25d24a3cf44cc774d96923354f3e94928ed64c578b6d798e26a86bdea06d2abad897269026934d7a7c079023100e85fb650b928bbec298160fff6e3a53c2521b319f126c1265e3099b00020ab16ff5f60164b0e5789124e2d16a0edd89a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006530630230669fc79c10714889858cfaa9141ae508dace12c689a19334e4bc85e1c03e1c34812bf00d6fb938530a13f38c3e76beee022f33132887e415b32e38acf4382b8cdbea910074491dd7f9735cca899737c12b8dc231dab60f4349c482b1dfb084cd5e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a7ba15b7594bd282ac04cab0ab93e4b806b5dd81d007e77c5cb2006e8dceb8a9153df3509ab9b1f9acb23d56d8629b3c02306a9bdd451f2e802a5e2239a42ccd35edb2646261350c8add49bc2d9abda2353901aaa340a37b010fd176125130b309b10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305bde214e277dbb52c8caf3db409dd56b9120dbec587a15ab742fac8847b532e29edede92206cc8c5c58a878305a272b802310085095d603159ee269759bb673ac9cf995f8d3482affd220484ac6f8bf209392d855443a4b6e7c15d141f35f6be3bdb410302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ac87c49e745025913c62d120c20cb68b024927d37352ab7d311bb71524cc173cda79cf9ccae7abc8d03c7960acca3f04023100c79dfa057db641eb320aa8a0d59c939a9a855755f60e2c1592d8b631120a93308e5dbb109326b110818a0bf3d253339c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230440cf71428a70d1dd15818b29504463051c04dfef2caa48c7b18934e6c6de0787ddec681f30b87913f42570e11427a94023100fceed6fb45844f192c05712cb3a9e3dc09cc447957236ebcf75983caf9987d536c306ead6f1e72e81e4391d19248e1b80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100bc60caa5d5a90dd101dcf3d03d2c13206cf39802530f2a8cb371706288867c9a3734bc69f27be75fdcfd46b693404d5f023100a240b4238bd4ed64d7301c243dcb4ad7ff153f573c4707dcd8a1e6594dda3cda48afc31927a53d1c9b04b1114a8dafa60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230394ab9df5923529ba30721343b784330d334bca382b4ee53146002fecfc5ba90e8c1d5be33a4553e3c6f3a753f70e9bc023033a0a0d9aef32a83481b82c9daf9d9b2f3bae3e5737cf378516ed844ddd7eac81bb86684fe39624b3dee0385b84726a60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d1b15ccefe302e474929f7a828806ad33d8347b95a3e1cce79d14d9ad1c674f89d33db2640caefc0fa6128b523aafc13023100f8a79b8e0c6140341ed7beadfc0451c41a0b04170c4ecea0b04120ee88f856483cab75b92eb4da17ed44acb092b5305e0302047c435bb50066306402300fd87382422aadcd736bda2b12d711c583fcb00ec7c4267e112aadbd9a0ab243aca572a01741e51c6e6e9b4355bb55cb023029b224d89b55677128456953469be001369797bfc7f1e218d80d40f60e8549158cdf3863daa08daf473188a4641da4bf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100cb2fbd8ad2af42816af89c2f5a1b8ffc7251af3626eb8da5c363731235c1d1c14d0d23aa7f1822824f18e627142fcb21023100bc444a2ecf42672eda41af073b1159d2568ed004a0cd1cb54d174e6e56c9f25a7b316ea54a41bc503ee3f7e4e9124ce20302047c435bb50067306502310098bd553e0d6b13b9dffb3a7303f7d707142fff450b45a9264953795064d48af816334207e29461694381403472484546023003bab8de4c39a5371b73c168e3b2aa57c7c0ccac184a26e2fc6a6d83aaeb9a78c059ee46ab9c1a6f240218f9eb0815190302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304900379c7b0dc74b2b28b8158a2bf1be4aec99db22fb3b7ab9b2e803880893db9cfae66655b94a2008ce1d713e3a5cbb023100b8e2fe698c0bc4e6538a49ca1876840a6704fc3147542d2c8d6d2aaba64e374b0f24e0c43c684c94792eee83400859b80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301b0d30b7672f4b2642efa630800d12edd900b2efed40751582670a251b5d8adcdef3f0ae74be5cc3faf11356a95b9cdc0230325a901519af454d5985a323a23e587bc6debef427cecf667c107a47d028c74a00397cddaf8cb6ad66224ede8f90f8af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023002a3bc11e92c31abb57b172899c77162fccbc219d7a71d0426e4bf233096e00bad41b9fd8060f5401d5a568b50bdfe24023100ed5db8e66c8952a71f27f73eeccde9838bb48b8357c4d926390371bee5ff844b72437f4e5cb4ccf9f0f0b4d3adb81f4c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a62d95f12cc5e5a1589566cea45c54eae76052af5d043b2ff1d07069761a9ace211bfc72df3c4cc376e1aa7f09f8cadc023100a84bfd72452684593d911123438f16c3deaf50a6fb1962cf02ce07fcf812ab5b84c672076424ce731e29468413ca40e30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310090313dafd326dd978831acafba84e6cd4ec7d1b65e18e88a2fe7341e25c3bbe5ae470aa19219924d80421964b402bb6d023100b3f7ab71b3e33461eac7a7080de536b3c4f4c71c2888d421264e5df4594589dd298020850cc5458bc16503caa6af819a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230316cb562978261e3d2652adfafb49a1d8041a87c36ac331a15f4748e05e0a8d3479ea49597d1a68e40ae855724f283d8023100e93032cce49c36efa7683ad3d3493353430d4691ed70c8be653c8324fa8949d006ef618361274753530a3aa03ae4babe0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502307e2f6c032e2f85b42300ae132e496f18433c5b61aa311a8003646360ed7b3669a9e0654abb9e2e7f198f6dc65b2dd63a023100be2993fceedec9468b4d2fbfb1edfec1685e5564006ad3a1518e818f4e7097929d61defc6551abd718d69076922162a20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008e9b77dc8f07b2157400226b4c02c7e64f87a3bd9335bdd96e9c77353120b0c98ba5e3854d34f5672e8187983a9de0b902301112898ac50675beb918ff01082bffbc837f0a64283ccfc6354f65a792d27b4cfe05650c9b399762badc3d4e796f86380302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305853d70bc9af528dc8fc43384ddaa639a42aa1598c798b678676cba2b57535c064c5aca4473e7bd905660d82a00cda8c02306c8f817ae0e30c4def458d6f2635c77b3dc456a19ca93fad8eab3d753d5e6285930445b1c94807d7cb7c5cb87dca8f8e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c7654255782579216e540ceb33ce1cef9eb3f75c1b140c6109651696c102ab00ccda3ef9ecfbf2890b6b8ffbd1dec316023100b27a8e361aba86578b2907102a134eeb560890ef5cb08b27e7bc8d59bb081b2f3bae25b7ee9ffa4e0ae198eeaf4b480a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310084249b622655e6c7e777b448f3a492782ad6e29d880f21ddd4f541a3c1f8983aae7a654f117979ab18085dc7dbc369a2023100b5f6f776f1c501d1ab4135495dde047f747f5542df8b7be37af60bc391d1c72b91194beecb9d26ad6eb79b28df4e54750302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310080cd8f0e8747b597d60d83de8724faee073108c31f015a4a626c2971b9277c4ca88ad4cc9d5e840a41c70036f1243fa4023100e0a1293dc376d98f856057fa8ad94f8eb0fe1a897e3edcd811b7e4b82c2aa8657b0b8e42d8689376a982a169d5b1e1c00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023059fceb8912e2dd9126b079bf13de14bd2c79690ef9f3ada46785c93de0aa326337645ffaf53ff56b3b756b2f99bc14eb023100d3d6a2e808563d7522f1efc48c7a879850a9ff95d54f66faa5bffc7e0705e17c18ad8562e460893c5b243483f97a7ff40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230588567dbf8e9ddb96ce9c31b53d18bbc917f69888a3c243456c55a1dd6fde5b43087666eb5c6cb6760483e792694b2850231009c2849129edb75bb0504a78aa549887092d1fea00cd35e260672cd03fe74f1c9c54fb0924c3b1d1cab50a98715e32de70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008601905f581d02e6dfee9fcc0ac042ebaa5eeaee6b2cfebdc7feb8bdcc222ec15a5d1f7dffa913efbb5a26833c0f38620231008a865244bd6f2e32cb628c4a6e657c3ee9507ccafd5dbacf79f90646888e8e3a937c5557bd09f56e7816e57dfa3e1cfb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230330c4d8b95b2cb0bd48ca4c2414cbbc707c8473cf90c0f86f8dac4606dc087a595db0d6073f7240ee17008c6eaa55598023100c71f1e39103f26732fa333a61a1536c8ad78a4d0e9bbcf9e4905be9f07536bdf62bed1707e69775e19f3f4861c0e8ac80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d0f200a9b5d01ceecb5684640645016b689c68503227b246e74098e66cd1a40ccef19d6d017ca51b977b97fef51ab97c023100968662b8d862ae21bd0ff9313ecb55ddfe11e7023a0206043e8a92db8a4f6d6c4cb0ebfe1bda112d6f2f4efe5e7b11470302047c435bb500683066023100b99ed05065c36d7ea8cf01a769f6153c7cfa88c9ec2de9a0828c0c83d80a732a98faa49922ac5b0fdee76f48016c1f44023100a9c96d5efa11ac170290ca312641a04dc06221e8867f9206f1562785825fc2cbae6e3351dc004969b3ed7de6500aa5280302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305288dea90036962bb65d705b7eb0a911eda9c753f9981eee4f6e3e3331f8e8570e6114610b2adf65246d781f05ab2d1602302e3d76b85905f9e171f750f919018c0fcc0358fd530e3191d07dadf143e9a70a0bdefefe3b2bc01f7efb7be23650ee770302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b52de1b4ad110ce79732ba5ab3f8034e132e5aaf7b90e4020b17cc64841f99b2fbad6b42e0e80e40b6b665f2c718b42a0231009df534ac6bda689655229b4ebc656c96caef92677e5669adac8dd6094dc3b57db332b212967baf33b3a2f1a6ddcf06210302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230592fade174f25a5a05b8330e8918e5d6e9ca63fac750c91f9f7af4901c55dc22e776941f043b445677eb7eac0cb28167023100c0c7ca1003c2634c0ce2cf2929d96fe4e83c7f4639890a513350c854d5be396eb762edd9158abbad1cb25146c175a3000302047c435bb50066306402306b7e45a280abeee63304608d43be1facf31e3d7b404a90d786205cfb1f0590a03b444094f32026cc8d82e90122db3f6f02304f171a6f009178b2a8062148fc00e3e4651d2abf202ad80be740b988c6605d9f146944958e9b0ba89e991d1052639ebd0302047c435bb500683066023100918cb8564b75d35daa8981dd5a89912db895c93d656399a0f6417f5f56c7ce8ec283e5d7fdafc5a67c034bdac245246a023100fa69e520e36e0eee3def1a6a1fd52ab61935d713ce4ece25d5f8c8e76fc1b00c407680a6efe5be226be796e76f815f980302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100876962f267f86d524b1fa6ff826a6b77ac3d50d58ebe82eea81c08ba2829dc854b23f10913206ef3e441edabfb82d7ef023100f088f0dffcbc835a189b17edeb748f4e852070a7df680121e5dbce017b6394cc761e943c1c63c170441cfcf6a38791e90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ded393d86192f558761392240a334195c1fff78e50d90fbdf9b68c72f90114bf1be8d3af526d98ca70c6e546ac1b61bb0230548ffc9c013b73240955dfe9ed942a78de12f9a9f22256e0d7538e76b35dee596531e6f8bd9b0becb509b109e65a2c5f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009a6f0a8072a687aa9522958d9ee41b3ad89f9db56da568fa3977df0cd8004a08bdba551697c651b97b35ea4ff893d9880230213f19a8491f4cf5824894642f7d304a046e59f061e28b8c8ded052c21e366e7e9a9b261feb1ea650b0189ca9d794d280302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502307b41e0dec8f987d41301d62310674a639bc16f1bd0859feaeb0008f9f0ca696fdfb6d6e961f46014a39acde121f615e6023100d13e25c5815acd00cf30e7d660fd45cf5d3dfd60a3d675127b95f6c042fa6af0fb691b186b03c538c59c93b917f6792c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307bc139f4415d15a5d10870aadc29890f6cf08bc89cb4034f4985a521642ca11c2ab2887c38f917b2581b499b9fde78a702306641507f06cc0605791950032a5a8c930d017cea37fae8802d9817e1adb2a5ce46ba9ddbd3aed014e44d0a7e451981ab0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009461b977a4a123f2b4c860fbac6f45f99db7cbbd8de97605fd3da9cb6dc674c411545ccbfbec5e358b885480ffda3134023007a98c2aa653b37d56a5d73f14341f055e1ea7ee1e40da52c3d018de5a0a045fcc2762728956ab47b97862fe227b26450302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306e4f3a1559b7eab714cd61f3fc7c6418cf7f247059380926a3b3247801e17fe574fa44940bda0566157be52f5cfd8b20023100cfabcc6d6cf6e1a080e5742da0f0e6bd13829bba96d04f0e5076bb49504ca248aa834f4a4847a3dd642eee63d9b429e60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310089e3d0de743de90769749902b85149e629204ad226553e8f0af494110a6bb36812941a4aa22966b4d49d0e754686780d023068ef7aa13d11303a3e306daa9b5094617f551d44628438b8622314c66c9293afaee44fbe9f22a2accfbf753a103cafdb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230134118a11a08ae7b3c8760733dfcd16f2ab04b2279736ab827ed120edcd54ea291a2b89dedca1c1c68a2dedef5b219b3023000c9cf1f93bd9ba272560e4f150f0a660d4ddf3dc31ba46dba12735251e28490e258e51aad89d710295229b9ec0471e60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303dcd380aa0fe6d3f98d678d7b8fcc37017c84ca6e43d7824e0d19158e83388f0e22b2bef21ab97327a2ec0cb9639bcc2023100c0c66584a9f550b2f3afc5e5f8c5d7de11036f6f30e80e1eb8cbd835f5fc65bfb7146e28034a2a53fd4a1907eb8deabc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008fee53e203a6bd02ddf769678c636bd3c3d37b77c60f383555bb3f06a43133672e92dc0b8411ea390802fb3878dcce4b02305d5ceae6cf29802630c18cbd864c8a2a46d392c88254742522753be01bcd2290067953c2e85ef7d60cb6ef6f446a0df30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310085c86986301a8650dae9aed825017f281fbb437f56e727fa4498fe9b9a8aba8d15e0fca725c0148dee4b011908d05502023051cefcef508b1fb03b22aa2ca8d8b0a74cff81bdb85ed5cab3335781d823a2285945bd673aea9285fbe40d11f77b7d020302047c435bb500673065023059d9a9aaab4346a55c3daa9732c5c59dd4e3d9d8dd28a430e649e3bf8a4730fb7d4e42b1d289e4990944aef057a68566023100ac5961cb99454446cec05575d909f78f257f7d1e05efaa20ef99d3904b76ed9c547b80907679043c333495be5ba05dd20302047c435bb500673065023073c81abf51012a7172db2360dfd6eed6c1b48a2371d2ff6404c9d94f37c5009bf8ec48f00f0e9d7e378939cf6d0f4131023100cc4a41b9d39929dba95170dea69b2d644a59d4d450a62eef05e946f27cafd4f111cf3d81478f5bc78001e3fd0df0eba70302047c435bb500673065023100fb2f094434941919cb6fac0799d1c6956e7dff08a5b405c633d3c2038d0e2c3e6eaff06f2358dbc63ea5e3d40af4601e023006b0fef2c9fc40fb758a01a156505abefbd30877930915b6fbe34f2331bd2cbf8b94f633bf87fdaa94607efac0bb5a740302047c435bb500673065023100fe88597e9fd9e120e48cb1746038285678fd1896ef3e7b88a76f5f450ba0fc7c740218241f4bd40a49bad787f66b142e0230609eff5d694af45a77346514bab589a8f191a7330d42c4e6c7275f0ae0686a98f1a0b744f7df7840384b9c2c25528d6c0302047c435bb500663064023061106345917d7719faba4a904b4607d0cf919ec49fd1f5aea30a99618427e3b34e666983f86722078da3d827999be45702301f460daf32b971b91f2b7b97cc0684b65520f10144df0e7e0e108d0dad1bf238d10e455e2f7995de1c9a82b269f72e670302047c435bb5006730650230206d9759110dd2c63f3443dc4872d19f91d6906010fedefba027c155bca9d3b08b61f00407c4222d6f924cd43a582d12023100aa10e808298c7ebb597c1a6e5d0bcfaaa5a8fe4617748aeb45428c40f89ace7ecc941455a8cd6d1f8369fa6b7a648e930302047c435bb500673065023100c7faaa9ae1154657a84a9bfc03daffd3b348c3c04de204c3cebdd54323b7afae76127515c7ff022334291ee0acbf5d3f02306fb77a6ab026ce0e5afd061c04dc9b15f9eadba923b01ad98e1dfcd75d734b3f66fd3688ec7961ddf70a011ec0b376050302047c435bb500683066023100c68e561b39618a82f397dab81a8c6d04ec405b3b7f512b4a54298573c268ba735061e89f04522ae5e2c6f1bd1ef427f9023100a86ac8eeb2ef43e2bae4b81c5535f0482186f9ebe47d79949e9c3306ef04621c89fbfcf82398ee65cab6cbdfc312f4d40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100dea64b1bb27759442e1e0086c15596ff9d94dec93d3cf62def78374e289766946ed9ecd8c2b2d8fabd864676f233db09023100bc402032e766c0a43c7b33baa7f12134de8b6ae0cc7fc5b5b22201b26efde3ae1718aa4211b8d003ea7e2ac3d5a40a040302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230516d3fb8c456143515ee6d9ce1e269eb69de6d6d1fec620505c52eef46c43a364e06596c52e19c6424399d7b84c76e8c023000968d35af105f373ce38edb45d2c613e26e4d3fdc5cf74f132fc0779b852d1ca9e23164d60b7522020a0a6d33cf8c700302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301826a8349d9946ad320ba67f70ed28f3470db0ddcb027141615e00f007374ef69419161099985be90419f97f0d07d74402300143f98d1680fc11353621651705c645e62f44a96dff3c602d67f1f27aab4b4dc0c3d8c2adb639229a9547a54b212e2f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302e339d4dad1fa771356126e320ef0cf8eccc4cb605571a236b7acd75ee815ebbc96f2caf25dea731d7fd33263b34d2d302310081f67e88077ad3dc8a6813ba7e32b3d71aa473af00fbb45888042c131886a46cf8d763df29aff16fb045962780a8c8b40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023003a162a7897deef5a0182cc5ce005d8a9d79e19703afabc98de44d6770b7b245d1d220fd5ad14501117eeee0e1a1c66102304c84fc71a733968ab97d653dd66ea1580552bf7c09f584405d22cf324d052d9e75f6b391e9269062e037d570fbfc20160302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b5667ab44653ca984e335e77c34eda1a7d4d7e3ba0d189bac3fdb61b3ebc0b29a7a4c1e95eb8196db770098d4891f4b0023100b89e9764bba58cf95644b065200d494d251d8b57aecd20e577a2d7b7d9ba42be5495331b27020e2217435f29cc5046750302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305e4595b83c100f0e20f7ea6c99521b77b144df363a4ab801c873726641e0e6f5f84fc5e9a539648bf7519160e1b01a88023100ebb1fda1aacecc38efef6391d77f69807591904a7e7fb46a9ee7886a752b2a48e7069667aa1bb62dde96db2afa91c79b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230234620d3e4090e7ccd10deaa263a933d2d84bff3369e8cc9cb4d3d4168b5ae8e1e1050126dd8ba00e34fd83f7b313434023008d0a818e14d46299bad5ad9ec35caedcf251a314e448d06602effb33115cb2028f04d170c9d01293c71d238a51365170302047c435bb50067306502307816811922d9428dd4a5293a0cbe4274282e5ed3528b542087c583fba53483270d779db9d7f01916c847e923646f7ead023100bdb4ae02141e3768bf9c205f1a42a1d57c25b6c77428c1de5980c6d131775555568209b3f5e6098074fb8e38d76453950302047c435bb500673065023100f3dcc4bddbd120571389c03e1c0f6b0a76e64d5fcddb7bf4b6076f5d4e2f4d322496655a115f23c6637b015abf354d9202305765341c9187759a14d80d9e38431f8ec35fb48934ad250118dd932df6150f92315955f29f07ec50188bbd68182bdc3c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008a452199d5912468c7d051628aa0ef7bae5ed28d72e8f1d8e8831e259f354de3387676900c01b7967996af4ef7f75b2e023034b792dda29414f9cc1dc1193e290d2dbdf3e78eaa982d710b90342dc3639cbf347897d024970c4f74137e97c4b9bd6c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f981ea887cf3cc619a630607905c02d3bd47d4f9ba50a6766cbc680407bc2ea27593929313a015d0b0d5ce2e1a507a45023018f53ff99e1be4369b61f783443d3f0e9dde152d53d482464e7388fb67d0c852354485e189c992063e1f978822761e2d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310086341af7d0262b47eb7c990f2b67409d4ddc06e446cc483ada0a8573d78b3fea9fea72fbb7c99e11f1981847e84c83e90230714137563401891ef4127e1e615c7040a06f82cba8936b842b78c86d24f1f86a658fc56e08de1eca458d890db027b51d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008398526a7355e649e17a1fd890268ff0776385e2d19c2dbe7a6156f4ad000784fbf17fd8bda3d2b823260355a588b23602310086b00cb427fcfacbea6f6fc66d84cab05552e492ee5a4a117781a272d7ec21dac96ef9e81a4781be05738e6fd7d579120302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100dfbe49016ac3cbb95fe2d66e7b0e3f3bd26bb12a638e363a1f55496d53a428ed6322cfade6f07cde5135f597d3e16dcc02302dd9e60843e5037db3647f433bc7f8ac9983bbc7700c6729373df1cfd80b2f352c0af28c39ca2e20930552cc429f2f030302047c435bb50067306502300df6c31a06f69de782c5a9ab3d9b297d217e637711b2088a0db391fc52f7a0cb319aad2e53da048485bfdb20e2c41c09023100e486e323be9d6252c61603f39e9bb17a53d6ecff13fb67b4ef101ebc8417c08efb988b95d5fa207601d79c55ba78550d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b35f03d27b7316823851a7496766cf358038a41bb36a30fd1fc2edb021060fb32053eb5527edb66ae0a7866c1a1e82f0023100d3d3400d960f70f0ba54d84ea4bd1fd0821a81c3b6eac28656842297fb4160aced9253564a7cfbe2374ad27426264b8c0302047c435bb50067306502304355d03ff9b24a9446ef916dd6644e3d05764ee2ef0848460b1a32be29b95298fb0904450bfff626d97c77cdcad3f6b5023100fa75d296db142019d533be860de64b2a99c77818f42a0109b6176df89577021aa36d850e79f46bbbf233c92215cf47d60302047c435bb500673065023100e8a7320cb269b7526f069c8ea44d2e44955d213accb35fe991626bbe9a2c42230e62c57de34b855180a4ddbb6c1029a60230227704e6d52707e40e913203a400c8acd774bd5cbbba12218623dac462fd16f3e26b5b8e55e199a9f470419bb0b370a20302047c435bb500683066023100a971650b531ffe69f8e032da7a4f1e1323772491a2dafef981d1cbd07e692e9ae3518a4bf2ccf17bcca1cc8ccff9fc3f023100952c1858c372fead20dc39e453548ea413edef11c67f584241de3e13bcdc44dd803aec5958b9415afbb88e84616d08980302047c435bb500673065023100923ae412260a859f721d5899dbb8141004e922aab1e61af02a2ba998d245bc08ef2411f4ca6f9aed37c6a3625225144002301ff66919f83b3e16ad19e2da73b2629df80c83505985537398d9b028aca0062079f51cad87c1bfb9542cfe2c6c5d5dda0302047c435bb500663064023049ee2e8442a1e02cf0f38db82cd7f00b8bc81fc4c44d6f560f4e3912467a330479d7a21daedf5cd908590ae45e73de2a023014e4999d1f4e0538d1b32c39a172136a2aa9815fed8b84157b3fcd2addceb712090d850575c38491fcd43dc089d3c08a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303e8281f27d616be895b6e2306cd6c84638c9c987686365d6ced285360907e300ac1e58159d4da20be74eae429c1177f202300a3dd08c59cb7221d6c842ab4dddee90af2ebb586e06df2410b3c779452f4b86417573273b92913c7535ea0a635d4a810302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502307f4db085f4d49786ff1e94191190e1f63cd551a3b45394ef75cf209714e6cbf2a441a17e0daa044b99fbbccc1f71b6f1023100b1bdd3d4bdc2dffd2cefb2d0fe3327ea476b06412483d32b858df5be099aa05d4744cc9731fdd54272777178a36b98850302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230607a92c2200805b0b450ad7b022b4f03e8400cd21ff0147753a499b986b1f55e0d13c0d2bf6ce780d47e0ad528be5ccd023001b6218ed4e12141e240833fccdefcfe44afb8f19b7a8cf5abafa39b860438ec9497abb09bf0abe3578d34f45a7f93a80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c0560b65648c686606b0a2e030a32006cd43523214bd0fba57ae3734e63b5202746bdabb660d95ebbf3316d9a93f73a702306a01668ac86cb2dc3542c7545e0718cb9a69f7b86f29531a433204e63c2d0e35d350b07f5a2161667691f6c3f8b6005d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ba81c89b3663483c59cfd19d22e901c09b4f5cbcedab1722d3bba8d46eb75577294a689a0418c74f7167f36a7c5fe64c02302f6fdabc553dc3181f5e849cc9c44e1c59c1fd01bb2f2e78f0f8876a4f58b975bc765731431b59f48829d6486790a58a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023036486f897591dccafbfb03839e17cd9961eb53160c695ff9acbf03e7497d7e0660f6f1e3be7377c94f7289a3a49244c1023100a5d9ba74823aabcc79f09aeff919cd0da7ae02f8f517a86ed3bf22476b7bb6cf351adc34246dc2a9b0a1dd3ec606bb170302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301f6987599e96f95aed34794303f230b7d1bf3013e14e199953183ed6eb15eb235c90511edd9596548a3034073e839bbb023100fa3854afaa8b25bcb8c81297f34ad51dc6080a2e60fa2b083b05eed09e99a77990e222e91baa41adfdc30b22e2339fe60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b76aefddb50fe87e257dc13adf928b5f6e7fe09bb6601c24ac43ab6f5b84e61dcf23fa4b16495bf3921b24cf75f51eb6023030b30b7d61337491c27ea16214bfccdbb43ab2997ca0631f67018f49eacca90887da86ede5c9013b658cbbaf7ab665fc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230683deb49531a7ef644cbd7d015f9f45c959561c5573cd11f95a0e4c3f34b33493a03a2009343c58a3231f263d07153a302307c0eb8667c874b447c7006a0f4c746ca93d04194b00d635931a6117b45613a01c3bd477b623b62ccff87c10dbeb1b12b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301378c0e3eff40d10e1e7a902eef7a2d3db395185a8f4e3f082ed305d66ecde9289a1770c2081f56b2fee6909a886f967023100e5f2440ae304bb3c2b42dcecea6659fb8ab8aa7674af75e2ab589f003a820dc630538c2bd0e6be0061d4733ed7f685660302047c435bb50066306402307d08aa4aefff5db7976f5a4565a3865abbe7fb095a7e3c145c91a3c23d7de9a92e61db9193b08b0c2d0d1acd075b327402301e4787b7f85f1f898849ee77ff72a2293d29a650da39cf3ec19560b78933b7aafcb898ecf094ddd73ece79694666ca9b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023046d222c8cae7f82bd9de883aab015435f5cc079d9e807462657caba89d595dd1e2d19fd2495f305fcd8fe9a9a9abea0302304fb4a04abaaec1d874c9183747f8a6f823ad61ab6f2585c94517a3531846880d72a8ff3769082c9ecd688b2e85784d770302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306c3140b12b02f50a43c4268019c69354a8e09bf49b8faf2841264c5598b4cbd4ccd475c5474ec7cec409f108e4f5bf90023100c602aeda5e654f95b1107158f2e60ed9508f2cd61855a7b0cdad6a449c800ef8462bf2c2529b03facf21ce6dbd0affc10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100acacd3dd07abce9ae341a0ee28b4b9df3d292402f1ceb91dc95c77ff2981e9980e358cb8cdc49a043cc8a8181366a3b002303398036277d8b633ce1485d617e507b91b234e2f4b9389e5ffc8a7f5ba8911e0880dc26f7c9c7fcf55b93e14cd913df80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301a02fd1d6c65e9d37ce45936ac2c48c71ee1457ee765572162e823fc0a8364eb7f69685a81f3dedd8e6af71550e8c48002301393140b981888bf561ceeba1f7322b9ba451efe321c3df1b56789e1e15a100fa18885533e1a8e1ce235b3c1b12e34750302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023053ccec93695e3ca17e297cfc6baf9958ee7893cba72106fce86e217ab1e22c294d5e8bb23629c34c266b4b9eceeb6a6402310086c52454e7415fcac0831bad81d1386f146db28afcc252737860ccc617e1c1d52dde0b2511d9ff140516b53cdae35ec00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bf52280b8117af36babe8dcf952999ee8284e91cbb4e1a3856348e2c5e9d923c5aa53b58f5fc08027a0d1f2f43f6e284023027b996ce1561896c50ef2f5edaca400cbc81cea8b076bca820c36ae4f164db224b09004e47a403eb3319668737b3e7ec0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ee25c109b85e431caa27df8f017fde5d37cec7dff2adb82314561d2719e4d7c51f4214a76fe0dcc92c271054935dbe74023100e37049e9765f69281b639c8d8643d3d9e4a1c58fb1a9c8f7b0b17e86e0579aae7c787ffea3c51f6bbfecbf5dc58135c90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100dafc0c32c33bfcc0f0ea6bd89c8890b0bdd2f361d91dc0999bbebe025f712b203ac14b060fbf1374d6c4cc53749075770230540f18e277d65d310ffcc29e5fe0293ada0b537fa408fc94188c9c29fabfd60134bf3ecbce5f9a1747ab5c4454c433780302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100dab31e60a8f139691b6d086d1c76b10ff4c36ab01f82a7a4465c75a1b330a7670a63bf8646aa5679d1e878e0b9a53387023020879de1ddff9723cf8b2bf6ec0841a51e064d34ac16810cf2f43f118716c08f8fe96b5fa75e54c091752ec06232f6fb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b99392e794725feb574444bfb13bad95a015ddd6b69c496dc29e62db79ea0c28d60971ff2a6a50a394c905a900fcdd44023077661bb3b7c3b52e45333b0ff4b7cdbe7315ae2d486a06d37ba595d4802018a61b1a1e8543565707028c622dda9d7a5c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023053907bb25c0b874de148b5a47f0cd3960431eb1643e62060d0eb3af5b33282820b603eaa96ca1953237c7a59274bd429023100d2c0e7749c43a089a015136e08a7c3385ce0b6c8c81a954286be1461826d731e7952a514a5498269a7c507677501ef2b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230316930c6063919c5cc209a9f01b74cb25751a766de8301af7a16bc4581714179e873d5044dbb34da05b7e04b5690c8f4023100e863e790b764c9ce97f29862bffddcc04211cd977b9f23381c91478761eee67c19ce07ee7f25173aa529f36a111883b90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302f5ee8f8a6dc4faf8cae312cfe8b8ac9b0b6fbe4b99771a02f3100e621455eefb90e4afe7f8e8334e5f9073433371fc70231009734b9fe355c25340b5712ae35884aaeb57767e7d91e67e23a41cfc98694a4d670ca8791773c50e7577b24b61664a4770302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305893a8be37247ac3012d5e6ea789bbaf1cad765afa3acd1507d5db219a107b7d8af33b131c45fc9fcdbe55972de7813902303fceb97df49fc72511a1091f7b06471bd91f1d5b92ad95981069adfd998fa13c6d473a8e0d0089dd049587a863dedfd00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023021c81cbc6e86d22f4448588d58efc4875069a4d49b9d4ae0dd8320a2f7d2fbe5d243bd427ce0f2f63f3de2be659dd6f9023100e219608c604a63cf0bb4889062ad4661043628b88e126f1c2e32afaaafd4a730f78fca5fe25c7a27269e1a1d28292f3a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100916a2f815b2f0836c0dab67b860e77105f9f9dda2b4286d007abfe2043173c911cf4d703a4110ac6b5170de8abc0b64a023100c13ba2bcf3ac37c5a20b38d204897a17eb7e4323794dae136e667c0b5610b7b8c2987bd11e88f9f0a5f5db6456df9d7f0302047c435bb50068306602310086e8ae04cebe4e26a3bb338a0f0e1eefd8593ffa7044904a36e27b788a823972a893a1eb2a4536bdffbbfc2bf99f16e4023100904df94e963c6e76b2fa9f88aa127b4cbc44b4f38701a41f1da30c046958b9af351b5f31108c0f22a7baf811b2ccca0d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008792a64970d794f72e7d6269654b7d6464a659508b0af3d3330450684deaa4c32d8de3f6e62b536da4fc8b9cb2421bad023100b266f9f71252f8fdc741657188e9cffe55485df1bca77a367a56b9fdd7c43fc9eeb10700809c21bedb971645543d4abc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023079a85da4e169c9e67d3e6839cfc6dc110b79a7ce53a596728b02582d2dd9a1864b9ecfa940dc5febe72a4b3f4e35d60202307a4e4ac8faa8d03bcb477956505df76aec1f9a225be97b75f84aff051ad29620e27abcef66a4fc95ad9cd5605104157c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f9d735228d3030366d225ddbef4948db6437c005886731ac97acbbbeff3d311914b00fd3f61d68e5a293e2e337e1366f02305c1a8dd517c2441adb8aba2edf28e301343bdbfd7a54a957276506e65cd07d41e67cd1711f357ce7817cc0cbc3934db90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307f39e7247c4109b51b9b3d58e09a7dc9e45e8ac3887f85b5c531b7e956da4e18c35c0275558c857d7e6a22df5eb422ce02303bc79d518a694295932e5a53cb7fdd14f5641cf33fc9e5e68dc3225d21b3e55413589794b2ece184eb9f570099e5a7e50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230093bddf463f7ccbca1b440dc6cca52a7439e0ed9166aad7ce16f5191774dab119ce13c1d5b5a972af23e387fd2bfc0a1023100a5b30cdb7522b5f2cb188aba2562ee02d7b900f8df3113efb159ba7112bfd880ca9f66d94b858e8ee2f18d5f7f7c2c8a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e762175ff676b279b4bc58b4db86849e1bf986eb16fe86a639ba5ae44e3f493172944297c5c065e4b4cd9eb91db2b7880230156f47a1d9e18815c1af943d21bb9d4bdc071c80d9817d94a47131d93490c6ced807c3930d023837fef0d2b5c07d16150302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023013023ae75be791d63bc20045be04b3c7b267bf1998f111a3eb750099dc4aa1b5d737053e6fa4fe132b28f80bc707a92502310090196cbe20c34f306b5a945277b4a8802928b37ab6cd92197426984db366f94dc2d0fccee8bd42b0ca012c17df15cf420302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d8cc5e7e60992b8af68172d99fd73a943887bb32fc9429ef83fb9393ecf78039ea319f1b3ac2b1e2a59f0e7d3f0c296e0230449b3e8f1b892fe076e721ce8b84c7733c541496a0a69134fd43327d474f25f1a708fb866f74820107dc7ef78541d0750302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bfab92bc869cb59761a91b41b3b2cb3f87ebd45f93faec45dcbf4a0520a0a75ebe2b4559ea5697bd8861ddf99e6d90ec02302a0adb9a122dcf917e4276451a012b33261d2b648bca70af1c6aa4d7d0abf391ec2f6253fdcec9170cc7e35c5add0e430302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230578619e3c18150ab26436b11ab1115998cb83646fee58f418f180742f95bea91fb91e7c2fc3b7d112595b80c0706ebeb0230228233ca34a3f7bccfe039979873b4ea37c6b6e6a34fdea26ee0a5d389e551aae54c8acd27b88538183462175b00f7440302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305059fa6bbedd850f36ada55b471ec231d953a53005392660ec41e350d2c0a0709b6d15cac116127f7f9302c80eb0853a023100aa2b1cb8255841009a1650cbac73a4760c08de6fa0c8713d99d282d6fbb3cf25da1fdc297dbb1973f1d06d1b3fee75020302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230128183b607c558a0bfad50edcfbc2b473674e4f2c8dd222c6c6cc390825e345072734d1550edfd1ebbb37a4ddc037bde023100ebde08021cdf5ada40fd5148486d07820585c148637859457ff3f6f759af41190bff21e97922610506c1b282aeb8510e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301e0380b0127853b013e726eb8f62c32196fe9e494d5caeeb739d1ff4f7664e37835c1265c660973745fd755df26e902702300497a160ff8fbf01e60e8f4be520a0e1f222059778d6fa7583ab8696991c73daec85c08350d0de1d9b44863b12ef5f270302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310096972b8b70913a179d8b76f94e85ef6c0c6178270119610525dcddf686ee124af425927eaf9744efe317aa062beea78e023100cd57c613999a7c3b18b95fdbc73fb22b605af129ddfb3093cd11ec5063bdc55ccb843a6992648f73381b8f07d4279a2c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c5eda02ba990025be88f2636b2204cbb45e248ce3d90fec2345e77a4cffec5aa8ead1e8ea60dff0aa2855b21db868b570230574ce970dd0d2ff3a1f61864cd5eb52dc0eaa99d4fa9ae5c3e78964fb380a09deac68c43be5bdae8a76dff3087cadc1f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b87dce34082a78dbe61f069927107329cddadfbe3d797265bc4e02cfc7cb45efba5c084e3e8cd327cc7b272f2db1b3a102306b3720712755378c7d067a211aace1cf532b25b74e60b70a91e8e379ee7652a92a734892c22adffdd3de44ff2a3b1bac0302047c435bb500683066023100ef3d1debfb99ef5fda8b5fdc8969256a4ee1f8a1a242bcb73498110585e3f0bb33a7795eaccc288556466deae92be45d023100989b6a2558039f52acdd8244f64cd3141d91f081be05ba2dac4501c5571bd335dbe996e7eb4e850052bc41e86d457d410302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305b7523cf66790f4257b11731e9a5fd2f717e04d7d75d0ececed0c81dd5a3db69a541f64b2d11634fe898c216bb9d34b5023005606171a03ea648e58e79afd21ec4718000b8d988be306950d1c27e44d7cc97a6fd921095aa0ed83528bdebca7eb7780302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023005f25ef6ff5234ad43a830171295fe0985fc9c4e4a8e53062b96bc73e3f97893efb710ecc1e9be194ada3c2d5a79d4b50230557fe3ff441df30653b549ec9ac04bd5d8d39a7694dc2e398fd921110e2bee06ce9fdf951c6b8e849b060d39e733f2690302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a80b260eed310180cff62dae16d71e23b590c6b597e2e079689549c8e92ecd8b733910ae8dbc8905e735502f603be6d902301948e3000ab565c24579a53fdd78e10049caca0b5228e463a59797066257bc4c791259b6be1d345d29d016397a0dc3ea0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f63951f7f896d0e021e0b9ca805fb1899ea362886ccccdc100398476bd67ad886b90a014ad46f48e48c58df691c74186023048e11d25f8dabf8b98689b8b13352f820e62dbedcea4436dae05eb51e25ad649797e05a5f8f2e019ea1c510641581d940302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009610ab284228cb650e54d9ed832d8bed1bd5b424545aee51fbb0098cd58ac10b38ac59547bdb90244a9cb0d809263f8002307ff6fa9abeecca6f5655a88535e2e2d4b1626241d84dfbc0b0395ea6bf274dd4e51a43e98dd49f5a59054578d4f81a6d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bba042cee2d4d884ea32a39f66c3e5a3692fa04b9176b41f1737faba666f46a7cd7a0f9c381ef61924bbd618d2ec3c27023036673c782609ddf3a9384713996cf743d2ce7a23927ffe0d50e3446e6f731fc79b8fbbb36ecfecd95396dcbef21e201c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230075002519e1a99abc03c93c79299597d61a093d956a26c26ae6a69283c7f90bcd7761db2265e1d6b4a03db89cd0ef7b8023022b495536c5125f2796db8c9e5ef017c9b8eec8dbecc38933036606e917edae4735801af8236e4761365c4b76fbdab9a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100da7b0a617794a1b9c75ee22a89261fd3e8e98243753b6337abdd1925489e9d3b8c9b7baedd226336a132b63affb7c4d1023100c5dfe2e4c6eeef2c6ef19924958949dc5700c734bf168cf1c6ae72b88a4798d495dba2aed0866411e092161c8e53bd1f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023033a4780638c7274cc42acfc983e515cca1aef1a5692844eeb9a27d30837732a14b44e7d2c3508b72d34fc8c7083c37e1023100b21571693680e34fdbb222b7912a440f601263c8399a3c8e7f48ce4fdd6604e5a175e1e008cc879ac6072f1d03207e9f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023014869904b345e4e36477456462c766ad8e02ac956755a3dd94c0d2000fa8c21800c6bd084176b48310078e5c863b3a8102304ca0218cce992da88e2668a1d2612c207ee7bca60d6a6042da710fd77050fe753aef2152058ffffb9527b16776c6f1910302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023007b209599a424e3eb9112a37b7eca5a1d53a1368f49baf21905a9051805ca97712889cbd0e4122bc2e908a1f6ee1766902302df62fa4a0e77277921e439e2aabbcacb71c113c9debe0d43a2121d8e53d360881d0bb5ea03eed1e165a2b683f30d4190302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d9b437e4ea663b2ca6b58f577616654bfbae0eaf860fa3a3fbb3f55709aa08da3319dd45040c22ee6d0433335af4107b0230608ff6d9aba94feee4ca481b231982a124e9e7ce218775da4acb3de17fb1505e3e80d3e8b4ac63e6f1fc5a61d128fa920302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100967041099731e25ba95e097967c18c4a3925d148b87de9e4afa3e3886e27fc8433cb21ce8a05a59545c0068fe990f2ca023045d7aee8d624b933e33dfe0708c76a2a0a11b65818b9bae49eb1da28d6ef520a75096d7207799b5ee0541b89bc9f2f800302047c435bb50067306502302136c914f031a1b9d573e23ef4f7bf8ea8e29569f94a039e06fa83010b4cd812f40e23844b2ec26515f1e680c4416f540231008ade544e6a7a693bc7e91bc501298a290afb091d72b8a52a322ff834531ec413ad57c9e19dba72cb11f195c4979f1a4b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009ffa0a27e03b8a74fdd6e92b40a7e39c07e553236bf9d5a581c3b0e3e1b9fd96fa679806ce1e02f19a412231fc5bfb64023100b8b33a9674c50d5a00f0ab5dbbe7ed7a2574a635b5fe1f6c005642791ab2c56724f9d2334882bb0e1a8cf7dbb927a5fe0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502307136adca28ea369276c53827e94c88514202bef13a87913217f72ce37cc08feeb247b03a185a2ad92232a1f35c4993ec023100d7d6a6eba717c77a940108424805747db971b6a3fd4808082ec167f929415682ad2156d1e04850704001bce6e3af6b900302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303ad94ad80ef79b8c19c90df5ae414b2897b7c85e57cce81928d4d250708a88e3aa7caf1b7ae030c6ba5a825cff1a48ce023035c54acccb3b799bb02a21eb9f372c2fa59883d447d92c097d048452f68c43f5e36cc19f8ae0897874077e86814a8fac0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d2af713f485c67bb6449444424949c497cf8cd46eb9fb9c8ec9d299de7c470a0b5594c6c2ded46a5c55bfcbc8cbf26fb023100bd997e18a383c82b090cf8855277058cc67030897361d4ac945e08fae50b99727df7f2611a2ea571740b1a9accb278d40302047c435bb500683066023100fff2fc4598a7c0a90b83dc1813accc3ec8fd43f670384100242d5bb2db3117674f4456f1ea90d2e36225a3dff82c2b8a023100a7f08c55a582224d9da07ce327ee5cd47db377d1aa6700d75c2671d3eee445c67f1d2605c6c40c1f918bc8dd726a2f630302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e07a317a9996ce51ed6b472ae2261b948d484e556d0cb1db6481f001cf4730c2d0312793731c35992fbd8241c02b29e0023100dca87e3c94a08b99e5d6476fdd4281122e027295b7573599a2e691fbebfae28f994304a8095ec3577eb964497d53198d0302047c435bb500673065023012d5d1501a9f084ffb6bd104ef7ee9132552aee3dec08f9efc8d3801fb865710ace06644ce632ab4d8ff050e266a89dd0231009148c2782310dedf01415a6ea66cffe386d18fdec167ac343e3c6a3d659822be0db00108a966c6b50212963d01cf60330302047c435bb500683066023100ad0d977c62614d4d641052e5b83198246bb93b2fa157707a9775a183a438f44c71a47656934a20316ea075d11eba7a0f023100d46aa70c3bea857d59c920326f8fe28c0161a7a36c4fd705d7d06d7a5152d8b5cf839d7dd934cac7bfc0f17361c9fae80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230250d1460542b524cd8fc140c5b221bef076a627cf9027fb2c70d487943f91023578edbb2d7f52144bfedb14ddae4724b02303fc9825671130ab174fa461f73c92c94021dbae2edfde97027da6fc568617ee524a7475c703b37564ea7b670f779c9880302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b05b5cd397d09eed97efaeef7a38a8e6dd2c676fbc723994c228309ca3bef29b4188fb35f41e1a572d1a5888a0cb817402307c583424718e526f1266577688bf62ce7d16b2acd17838943bba5e32c16308fd2456a44d582ab48a652f703e6a0983bc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310081d339f3bd109fd759ecb68eb1849db5124d00afd279beca86e280d003fc897af894d433bde9dbc2444a7e5d8e68f381023100a80db58736577cc77214ee0e6b60d6c1093abfc7200c33efd45c64039e643241c4eaf7c6c17dc3595341a1800b1e97cb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100be2352aed6a7299ba308ab2c818552fbeed3f416276eba48df03761144507b7b9b0bd7ada98152fe92e4f26eb06a78cc0230203ad54451d69fc79bb830da83976484b0edfd8a4bbc65d78b05812b3d41127f03045688ab967ab5ff188f876345a8b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bdc758f588c88e6bcfa09bc95377ad195f4f7298f5710467d0433a65258fd1d50a77ea475d68ff7d5d95e0529518142302304a02b2ddda4c436f909ad0ffd11363afb85203671cb14eb7d8c11b4b163b873e00036777ea1ce391f0df7f6ac06b805a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301cbecb8edf56e19efad871e34e43d1bfc25a4f8c205c947b7d0c80fcd6734f1e5556e58c4d0249987da81202dc8ca5c502310092a86252b23f16e8b41c9caf7956fd2c2d79cfc4f9cb7922dc1f417c2a7ed5e8d48e94e31cf6301fd42abcb2715653e90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d654248ef5f7aa2c740ab45ab81d21b5941d6c68913449ef9fa1f928951648d32a5365980a55faf28ecd48d4b6d64e11023100a406a5739bc5260aff23521ace8d3008bc9a73c71e5a6c31a36b1c54e13c655ac20741040d8b7c70df32e0985ecb03810302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ce6891348596f93218b08817c1e00513a594449252809f4c898b47a60f1c98f1e840f82ab1a186c7c46201eb2731c83a023100fa87d3c7c809272495fb70c00cdb94a1b44aa893996f348e4883653f98553f156e6dc206fc3d0cbc975fd445dbd1cb2e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008a8e28e798f7e747821abd5dd60f178698a2a61a6d96afa252d7c4582eda1681abf2677c47c00b64c8ebd89aa1b26652023100eca5e1ceb51c283a2ebc7ac7b182a128464bade9bb70258ffa8dcd7d13138a0d440c35bd1751da32f7ca8db8b824ad9b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303e341a375805554ff5ffe5e535ffc977d7b2e3fd3431c58d342870724442238ba9d72c6956452d9daa35747704f6d551023005f343af10f17df0208d4e19cac22db88b59517afe3c2b469294970cc00153cd79a87e12d91e4466756cd7c2ce658c1c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a3352b5f81592e079193351ece9652d5c5cd3bb036ae1e55debaed98b240f5f38984df3798a6ab8d47f42749ff56faab02302f3bd5274fc7385accd6a2dacd32ac1817de88ed5fdf46050fefef869be9f9c85ccd55e4ec037fbcc471bc4096470f890302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d1c4f67ce3bfe52e8bda55868519082a32aa311992bc220e4270c6bb5c335770082e87fb91352b94f12dd07f6755d13802310098b0537bc304f6c7121d3c60634ee1277f0155e2e3329c7a357a40679e9c59f7083ca458ed1fb790297aa48a513d4b610302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a0e8e2cd3584aa66887ddbbdb6147d6857c57cff7a7c4446c764c92dd8e6160a301936133d86bc90710f854b65606eae023100c873b6a8b12e3a0397fb48ac62fadc4aeb2ae9c3c5360cbdbc03c4cfde7f73a5d34c8f4e584986cf7c661db25d7c192a0302047c435bb50066306402306af09a13cb82d33f65947b0f98655d8fd4887ca263a9c8d8044e4bd96a8e86b6d385c4db565d1857148a7656b91658c202301588252a2ebba998569ba1750ecf5ee23e460acf21ace0b668924b0f3fde3bb5398ac6cb0134b2e19b88ed64edfc65350302047c435bb500663064023008e425620c047e2d245d41d21dd76f693096ddc70ffe7c4c70b89c6d60fd37cc0a15bf0e54378c19511e0cb0bfa3c68f02301d0a7ab541bd94392aaf8f8667fd289fe67a5cd7201e939c716ac6a7c9d9b3578211a8d10705c267edc081d713f66c980302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b0d23c68df0688dd13b648966d46b966e2f44933cdb8eeae735f7ff302d9e31465ce73085d366a4ce79ef20c83f77dc1023100c3445c873a5998de0a91b98dc7d5b569dfe39b99eab4c67893dca367312846c43e121f5f1683f6cc5af8163f4a6fa2680302047c435bb5006630640230130e6dd28763a40947faf90288a82582b4ec38e5c526325f9ccc69ff7e550ff5fd8d550e60018050f217dfdbf822d2000230416ed3c65ea7d6591f31a937d7ed4e56b5286eb3ebdbc20dcbf424790fb41f2d42f4ca1dc3bce9bb4294dd3b85b01a6b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100fba16dff4d83925e0c2775d0ddb6cadee6f87d034af2b275ba317553023c6157b05eb931708f6c7ab26f8efb5c647374023034cf0d1444382943214ccfcf2bcf1b8c990756d3f2e2dc830fcd8ce2765c3f79d2f402c9a097d46d07263021cdc4ab800302047c435bb500683066023100ad1562b890e1eb7626916fa843dd9210b750f140fbabfecf74047611b93beb49114c3358a337112a289e6fe4903ad50f023100ff2b6d74009a0a6f26384f36a7ba8936ca82bf645c5b1754ca6f24d4be98c217eef4771ddc5fbc2a510275f77099dd0c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303d47c231edbbe391a2909a9b1db5cb98b22add9a7be904932c52e19b589f35928ea35de13ed0fa19dde9d9c534ecb9b1023100edaf8d48a3643170480a878e381dd220db8b4f92fda75b384d3c957954edd830256d6533afb445ef7289350c6464b3250302047c435bb50068306602310097c91f4aad55d64de8ad935476fba370a2060eac0aa9685dc627c7427c237df329a4a74bbe96022919032a8d6b53037b0231008afd7bd8fae04b2d20b7e45d4ab1e878d4ae45831f9f7dccbf14409b5bd6a5f6a7d79912ede1154b0906f9f02c75bead0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306507cfe1905893da3580820f19cfb38911f6a3d75267a6c258f86fcd0e3a530c032b2c8965a48f4824aaecce6680aa0e023100883c902a1bcfbe945df2bb229289d33c4ccc3226f550fd948f44f91c99bdaf9da8ed661b6c89362f95a1541b1a8057340302047c435bb5006630640230157608f20b85e9f93c3aa4fce3070c9c0bc2119ae7a0fcaa8ef37eef0b8242f753f994729e355ea0e7a1b914a9743c64023023c4ef0509b0fb2964ea99dc4a3db8dc5841144eb5dcefef4d50f01baef081eca405a0af7f192cbd8b9b5a713a973a140302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e8cee81ab67491d533c4ce082cec0683cbac41bb83403a5ce5569e39442b5ce1546e6b8c68168d80529df5a8fb6b6a6202310090aec7859f53f071dc63fd1d0d28cd2af3419c5f681aec3bd74297e3be3c412297558093526af8eb1b84b8f78e4a87b90302047c435bb500663064022f0c0542a114aad43f982a0bb9d47558892122b15b3e31ff57e81e87c437fa369a19a97e2a16c50d6be21a381f5877b1023100f00489456caf93c6bf2b7af4e86b3bc27700958f1b50b5576c76cb6d3725fd31fd925fab1a293c92f154428fcc1131270302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303d3261b73b5eae03d1a9ec588f6c49b75d240be7dde9eebc973771b878f67d6a484b3b3d0d2bdbfccb57d09345493085023100fd9be01ff0b0966cdc27574b4835bf4f3cceac21ac65bbb9afe61f399af6fcc5ff60acfc54e58669ccfb15f3b4d533310302047c435bb5006730650230747f3ade5dd5395320aeeecebc24cb1de1c78d8439563b4baf7ada465cc190ff9daf138809190769690086988477e600023100c8dbf3d457be8a7815929344414477ec40ad834aa1add7dc00769bde9eaa8ace71c266f70807c30d8a12f8fb8cfeed3b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a3ef5f027f934cc95a2229b40b4bfd946e422287bf8ef62cb96e4055a199c5e8802c57d5836d6b6aa5e31253d25d6e76023051813d4fb27df4b3d8e942b3b52e70139d824455473d145d19d68b5749cabe700114c17700142b8ef5b51e5ee70d93aa0302047c435bb50067306502303bc0197471e188bd00f12f1cc37f7f5edee208b99aadb471b30f22c99afe2f785667f09b5ca998a28d5f93caeb834f7b023100ade8227e9a2cc73e4788a19b6df25608e272b744d270c87934e7abdf41b6a074c5497387947f8ee9d7d47f99ebfe2aa50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e5777b90e3e64a5902076123fe7a596a0e8792a92c39aee98b2cf8591b9d2226193c7974f09c738ebfde0a16401d58cf0230588c9f0fab69cb0c06d6d6e1f0498fd1fd3d688d6f954ae3500c84ee686436bd0509ae823c68fa248a11ff554a53eab00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023030106f102bd1050ca417ffdb49550706b2c0e4ad36b83f8a6e30b8730d916bc2e221dfba31c65b857c6d0e93d9efccb502302a6b6fb7bc0bd0be8e6fe489fc50fde910e91dd5c2fc2470c3450f4e06b585169990ec55869e299a913aebb3534578c30302047c435bb500683066023100d202e4435bf4b9925d8f8fd5e8618b83361fbf9a3c1b241c6764ca74259ae63849a9022a99cdbeeedf25bf15154034b0023100bde22c587941de5a7fa3727cbc2e8f41be25595b157573df970b4b489d08410664965fb2b0208402e91e4173cac403ad0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310084e819500d8016fd082424c75aba2f7f3559efd8a0f0cc5b6cad3413fb1dc1b9f1e8b364f8290b64656d193dad8a9249023100b30ce0f18845387d893bbc63dbb429ea66e2c75ba18d1c68288853c070ba0f1e0dc1b53d5f12ccb5f4eb23b0e23018120302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100863e2a1cd10748ee196af6f43388b53ef0494c7d168fa4b4fc31b26f2a4369f6e7c3aa1dd0362f6af27d2da89b2cbe70023000ebeae17c74f5fc7e988598548d074e8e72481eff2f664076812c33c874d0164f1361ea39a54cadb5259e110054d5ea0302047c435bb500663064023019460aa45dd5c53d0783c56399afc97a30de980c9909f00f0a3a005c90d9760c90ef331e2cd4d1d2b149b329d8fecd7c02303d22ec8349b59c967e578e95cfba556ea0c5aab0c1bd47d12747ef9cea6683c2f607fb510ee7cb0c0f2dae5c0a19b1e20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306ab7d34e8be497116ba39179ee6fd3079e4b6e8ef24dc859beb7f73ec5637d7d5dd55ff7931828fd6770f66d9ed70d1d023100e680198fbeafdb363c2c76914f7261282c0f86916b72d20a1b6cb8d450eea51b1fcd57aaa063973fdf4872ed1ad2d72b0302047c435bb50067306502304e57857fa42ad852d0dd4dd65bf2eb6e6d9d28ed179c5bd8f0e28ff1f483fec22a9e58c9e9b51a4f528ec142d26a23ab023100c9fe44cae26759d846e40b158714ca4c921b8af952491bedba72402274bcef8477cf60dece5da015df481a27f8127cbc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023038a9837bf794860b015e478153fc66263c2de5e0638815e47971c3e0bdd77d27a80b3960ea979cc883e4b8d0047bbf30023100d91171fdee86c0736fb1809e6bf797a59d01c12f8180b57e19c684af33a55572150ad213391e54785c413bd43a4419260302047c435bb500683066023100d0b332871a043e0469d6d84cd45246bb1bf0b16f5b735ce57b8b9d8d2b90657e2a55b3280681396e06bdfa36ec8a47f6023100eaf3557c6d425ba7c05939974110e002b6585b1dd85325ed2bb644d62f58b01a5d1261c6e42c74b1d73bb177c33959150302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100fc2e91f6b8939004cb8d20d7f9c83b11fbe1f8c2c2f2b1ae53e06e7faacf8f30112642e9ebdec5e29a6f850c039b4ef102306ff99ae4ec92109a1e93a25d016df2801f6af9234cb4be1b06089137d43c3341637a30c0d7570773667b757c91080c4d0302047c435bb500683066023100c76b5dfcca18a73b7568c600efac98a1ad15a2e3ec1601152aa206bd13471836fdedb6bf09b794c42531cfbc8f41dab3023100d283e2c9e826060f9161ff340770897e884e7645a7a972e9177401b2c16270d99d18b6d273deb503972f5190a67da40e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023046bea2a663ae6f5ee083cb3448606a55dc3b3e365d33198bdc2923d177ad2b874142b464e1d562684785c5735bd7a02c023100fec97560ad170ee637eada460b48f08487aff3720a196a5b3122bb119a0414441f32e9b5fb2877395b80038a2da245910302047c435bb50066306402304901f5d2dccd62978fddd5983bc8a70d3c944de52499f3d67c44d49c5dda302ad10fdd0e1b56aa1f51af89edc0d311ed023051d61570f9290a49efedca9a5836e5dbff916b97c0bbec12d7565b98207fe57f9f74575a3672998f8130c0139124399b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b4883ad402a88f0d566e40d1f574571c12839877ee6c6884ee46223957d2bd6ed43c714a1f3fee6cebfb2a93284d995b02306148876be5e0b4ed860d7c7b178027870984a42454efd2f2acc33cc868a222d5fe2628c0677f537c84fa49a8e072e27b0302047c435bb500683066023100fda88664a1cf5948379dd01aae7b005bfedc8ec9774d3e23120535add8a0159bc6ead3494ad463498bce945522398041023100e822cc661a2f098996776e99c647304ffa3033f4229363cad15c6f7adad019b46d881d394ff1ecc20931f7aadcfcb85c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023069af7856623c4d31eccc25b549ea93b9811fafc4f01e7fc4e6de870093f3eda8ca252f347000a773feb38a7d2b7f1faa02304baa441e9952e1946e2fd6384078f3a663d4bfd40761d244106ed2dbba4cf9fe99626675de93edebc018dbe9efdefd620302047c435bb5006830660231009c8730784e00cd54644f9926bacc560c4a9f9cf1900183d42929fe41e112156c63d448741b09694a5e0fdef66da861e2023100b6cfcd0a4bbde5d2b288ac185679cb4a71b0ebb596466b900c490dcbc3d9e8b43128e8fffdc6eaa8d0d7364ac43745900302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100880adeb04930660cf0612d3f7595fd9b2c71c77b16cfe3290e31064577832b680c7e96a1d1d0f6ddcc523b3d63e3f9bb023100a98a59ed8cf175cf8f3920e64d7f4e7b8949d3e402383d97bd8a5ecae3926d2dd9c12d0cfe3a1a865512f86c8deff8ed0302047c435bb50066306402301c5ff683ebf8095e51f81dab46c481658a6c29da0929a79aa0d2860db89512ef1de9bf9505af5af843f620951ff8fc4502307eb0bb25ef182c2923c76ba00cd8fa43f7b64ad48eee9269a639e11f74c8f41dbbd7d8b83535e9fbf590f2298a4e42220302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230519844b84c795a9b97880244aa31fab88733d243196d81305400277c521fcf37536b14d97f7d2012fbcda8c9b847cf5d02307d56fd75e2596a0ef4eef6998fbfe2d4e80960d581334b4de3ba8c41cdc76245648e790555ac24ebc0e1f1d4bba935c70302047c435bb500663064023032eefc5f331d4e72e4b554938d2814b6c03e70b06c151a0ccf743da41a1d57eafdc50f202a0546af73ffb09d976374ee02304f2e29c9d8ea3f9cfd5031fd3cd09fe8d88e108b18bd4f077fdb87418d20dc8ed07d214a87981487dd8fd845f895677e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100bc0e305182d9ec7782f3a27e5089ce92d7f38dfe10cca7c0c30f0c46b367198dc684132d078ca910798fb75756c06797023100cb6c05af149e74a44e2123bc4055d70b63f5832e5e9539fa709e1b37864ff5f5bc2c79589060827f726821cd2f4be5410302047c435bb500673065023100f78ed97d4aff43a521bc72a9ab79cfb46b2f69d5063aebdc8af0b9f2f1f36900673e1e689be5a2e53e41dec905773bd1023027e671e747b7b5088565e2abce244c25be8e30814c9d1f2a3256ce62c2788126cb80137bd603543bb843f92304d1cfba0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230164179e425d445422078181cccbbd1e341e79ac527e61cc7599348a406a24cb72c735789d49be69dd7661cd38a73b01e023100b7140715f11760e2db667785f81972d7f776c3e1921edaf95537574a5c49eb420e6e5330acf8106bf1e1eab820c803b90302047c435bb50066306402303c34fbbd6aecaa8df9c676c365bdc055f60bf646ef2ba3da7d65d58205372834bdaa36a40a1a1675b9eff5d449aa1f3a02300ca98f3a18d86f4dc780b0396c438be7706abc3ad80ad1991c0e3e6b61c77c7745caff97d51f08a8c9e19ee0af831ef20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100894e66ec8feb13d2983ead44572a35112370f016907397f2d099d59c9f02279dee69051569f6d57b0c0de341dd66cc4d023100dacb6bbb3c59e3ff4d2e44fde60ead1bac4740966ebb51488081bfd0bd8d907acad46d3b968ada065fd47702ad163bf90302047c435bb50067306502306e0e7428ded5bb3b98ad505e4484763cf32bd54dd92d84d260ca9303d6c2051b50d71469a597bb54352abb76c2bb6d290231008788652db1df0150b813981aecd2bd5af5803a17621a7585442b30937f7cee83430dfda634a7cce57df4f2d65c2b928e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305d1a41d15d285a60fb15f7d308aa27214fbab41e9acf278a75580c939cfc714facfff82165bd0945e22272b9ff36407a023100c7351468a85da7c2c259ebd0adfd70c17986c7ebfb7ae7b2a371ea381d87f2edf6eb527d8c666902d37baba2834e75dd0302047c435bb500683066023100b6390992e87398cc476b17370217180fd2bdf7fdb5f84256f3d9d714d6943ab2689a9990b0471ec23e0ed2d90e65435e023100f94bf551a9a250f6638da70981e9477cec415ac5893bd8bf4f061cab7d04f865bf580c470b3caaaac49ed0908eef212f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100edb456e6f015f1fe273f8c96d5c747b9917f551363d5d0d06f36adf64346bea3c49042f8e31338a9082e215e4d6517ee02307d7c26252d6883874e7b06b4e9918c5be07066c2d55f778ae0836e3ef89689333b0d99423504e292bdc1281740f5df770302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ccea2097f04e8a5b712b366f7d5420992a61cf101d43c39d9e655a43bd5c01e450b54807d2c7bd58fb730daeec2029e4023100e41d01549165954bf31dd519450d3c06fb4f1f83988917377fd4edbb15dc1a7442cb263e4677920a6e57c715c0d5a8da0302047c435bb50066306402303d0a4849b711d2b037b1ee6ad8b39d9c6ac243aecbe62538796b6d4d0369ac785f97509026e3fcb833cd90efe8182f4d02305c31a3bfc50c8eeb5bdef3cf481d07002762b86ddd484f6b1584133df4fda4020f1c21599ad997e807c6bf0e246fe9e50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b98f35fe2b23101de58a913b87375a1f9276e5e148c7fb03d6f61ae75f467a53d58f83b0e77f0bdcbdd3aad34e13bff4023078f04eb184d1bdeaa0f6bb5b2c6cec4cf00e92a97be358ec4be2b15690b3ec0a731a989c95ab6749f4e86f9938c8d8900302047c435bb5006730650230258534b8c72f2073b46c312cced0239c26a6bed39209963e4fbe2430798e399d0749bb2b6f7af7c49435038031b6d343023100845434494a628aa8c7b3b907a7d27ae649b647df7c92a86b1cbb84ea717e4b8cc856059dcf84bef57fe44e408719d6d80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100fb63d10db836fb34aab56eb0348882049ed9eba9e036ffd9a9c11cd49a47d6556a84111e9ba381eb950084f2fedeaeae0230251680a5ebbe6effa39ade6cb381c8e565707c946e0bbefcbc76effb00242c4b9a3b6113a257d91f1d965012b64524e40302047c435bb500683066023100a24f9ea39396b9c35175d671b06c1551a57806d042b50289dadcc715a5eb065da88df4fb8788b3b640cf0eb6f86e31ee02310091a11168f2aa3a17ab46bc2f1b32c3a632320061d0ef2eb4ee24782769e8db7eda8c4cfe94b74a1b2c2d3cfc5b15742b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100def1316cddb08df7a7a39b99738c835faffcd29ca0122d71532588d164b35d6b7359c06a4c1a45159af0c9b4db1a9924023100c1dbde22190dbf4c84082a383ecfa0f956b7f6ce3fc7345812512ce42a0e99cbf69a5392d9305f32f81d9f15dad7e9eb0302047c435bb500673065023075b94899e07a03ef10f3e6765d2ecc04d94e410d4aac7e72820186f0520d6d4559e6707aa86c5cdaa17479d15f91ff6c0231009b436db2d931f75d8240ccb8a5cc01f4f9fad18701fbe17653a8670fa2fcd79a556d8dcbe6c7ccd6be28f152bb09661d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a65db8d22cd6ebf40413a26c7c142b5672c50b44b39efd15bebb8c5707e56bd3f83e1b03078ae0494f6803e53e7b383302306136a9f7be0075ad8be2aea67147917898f88e5cc0b0bbc62e5ee22fee6400640220c8d8b638bb4ab060fb323fff865f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230376307868f2aef78ec5d77f7d43ceecba224639713d3026656e143d66c3de2188a08a0fa53c666dbbf6f31bf2610adb1023100b1cc3be173bccc3e2b011f0c671c5b44b2768986d6cf3b85f3f5196eab0b003e360e5c67c8a15720d6ad0fcc3a6796990302047c435bb50067306502306bccb6dfc35ac70e23fabf7b11e9461de8aa68cf48c117260e90da0212f9f6a6cf59dec7a0dd20f716172ae71338ce6b023100b24866bf5f8aa47a3d333aa1a9c65f1719c8b1fc5e6c3a01b81856e7605b9004cc52fa0728b213413261e87777a9dd2d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023008952bcd2ecbc20b36aeb614467c9f83cc9ba423c1cd31358d889eb4396f85bf3f30d38a8e93414946477c9ee9958eb0023100c45464032ae742328673621082529002fca53249795528f8cbe23db3cde2913fb29434e0c17e50201967c4774ac4bd160302047c435bb500683066023100eb119bffb87d87fe91a7e1a5748927321eb25111714a38e8fb5dd2b76149254988105040ef20f9087e0d3fad8341028f023100d15f931ad9fb27ee6b8dc86bd0e9311e5042d0b9558627666e3d23789b2fc16b49bc8258cea92235a10faea51ba3b9b60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305006bc577b93944787c063ee918387827c391b4c8782b1c04ce6e47d2c8ad5b111ae90df91ffb08d3e3a046f83e7d710023100aa3cec5f24483b98b1ad1ae19ba0e0e325f7d5e7f248ddb4a50ae9303d9b4b542cd69f54918504d2b60713c6621dfc0f0302047c435bb50067306502307b5a062acb6529c782d47f30bafb28dbf07808ce50790dfae212f7d2fbab23a9ea2d696bbb0b6604d16f72700d41f2fe023100a952d005ecbfb40aadb0abda943ebfceb988877bec5e62ef80c1f1f0e3bba8a672300f08babe23e3c57176db2a831cfd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008b5e0514099384526e7c38ed2c31b460b5450fb6aa2157bdfe99fdbd078af5fc7ba945642c1a0a42c24acca59d887bd6023100d86a16dfea508c108688ead567997c3c88028f6e224df8ae0eb4cabb9a740c81063d55393eda2a4d30e80cc9b479207a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ddc51c03d30299161fa661551c636af839c27828660bd5a72b8707c032b6566f09a70bc5ac1d2b8703e40bb63b7d311702310090ec6d930df6ca42ea7c5b5381fb8a4779900eb68fe98ff7d1dc34a5d65070ebb6502454ed932184110f7d245a9b74750302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023049b06206a164b6a05d456ae669c5fcbd7f2b996ee283b98263483fedcb53046bfbbb286b3af3b569482340d36807acbf023100c776833c7dc4e475f46dd85c1889a09ea8a78153eed2889315e6c43f8149ae87f6dffa4223106943407e2de612eab70a0302047c435bb500673065023100831b63690e7c0ea9949502bec19c9e2aa40c1f1b740d41797b2edb9fa4d986325747ebab9c32e8496d4e59adeeb2aaeb02300151ae39dd7987a7ca2b33ea3d801963da48e3a4f92992dda6f3ff3bd6fe018f05cddf5f7d5917ecafea4e9dc35cffaf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310081f9f538ce0db67238dcc1a2afd75af971d820dee0a8147ca04c3b604489c62dc19d9e57a0ec8141dcffb9e70c0a2f0402300de1720ceed0407dd34d521f10e18ebce298a82ba16d709e5efa4b420e312244583218d7b738421951332687b27a4aac0302047c435bb500673065023100cef58e2e6e8f9a98318192954f9c4a069b0c7165926675ba111a8869499e67e1958d96862720fb073dc8270f4c35a4c70230072ab7e15d3abf5e8e9ba34c7c8bbfadb7f37052ded59529291898a16d39a4b68b180b8f3f1921e185bc5393148d1a2a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303dcefd6d76baa802d6b7f5397119cdd590caf51d95dd0f1b8855b0b8ee2004b90b7da035b71b339bf0020949f69d5f79023043bc6adca64a8a5b89f6c1218467854cbff76f3f3fb0bf999c3e0f90f024aaa4e8e60125d0bb212113fa9f5f2d70c6100302047c435bb50067306502307cfacd00225d9b1065105af28b6ca6d26caa3752468d22701e4c6b8b8bc4cc6168ae779aeac982c4967aeb7f6e52dbee023100f1ec9e530ffbb1d7a29b12518ba93973c48b5377c5baba5e132ec03ad387fcfb09269a2ef49be4a7e1cd314b07759a9a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c115125f92782a41b9d84440a622c162a66fe64e24278c78454954a5401050feb2ac35ce49dcb866c0047ab7855c419202306f5e10eb663728fc2e425cfe23c1d76720cde411517a7d76e75934e88d1129ba8a6840abf9830a88a51c4a384f49f04b0302047c435bb500683066023100fbf3a585759f5ffb68a6f4d94e4207520f26d03d7c5fd6d070b7571244749f08df1c109c95db4ce29c140cf0ccdb3d3b023100f4351cca76913f1e47ab38c1eb61688a57c5b09f2b462c78b772f91231f4fb1fb51decdb1488cfbcefb17900405a25280302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023056fa9ce69425f183ff50090e1e5f3614a23a6a7d706e1b7fad9d9beeb9c629a0108d3865decce9807d350e04327b643c023100cd8d09bc872d20599a8ac156214f7787577573fdd886e1cb3f903920aa6a9e97f6a382ca7c7fbe5acf8e4aa2e09eed560302047c435bb50067306502305c1f5b12eb35be4699d4d2e2e54754b53bdf934f96c361d0e3b6d07d9343371877b886675a03b7c7f3c5b42a0a0dd13f023100bd5c1c98a0bf09213e423c221520270a6a821da333befdac9094bb46cf739ec456ee0f97965fefaab2713d8394f4a5590302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230456ba22adc0861d9f125cc407fb2f773ce5360d0eee8d64bc1addc84d2f67ccf2d044879a38892f3dafc55b798eaf4610231009e06e960a1ed83aeb7d7c8ad27a32b5cf8b12fa683375e37583d23995aaa024ec2e9278f76cdf7164fd30b526cbdc7910302047c435bb50067306502301330f8764d33615042a97239d17835788b14f5a639e63bb9037659aa4f921885056238706f1d4135929d015ee0d95431023100dc4fb34e725713fd5a993276d437cbb3e6faa1ed45b547b6aac0482fc4f317f4e2c5c35fda96c21391ad25d240bba7540302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301799cafce9364fb929535b6ab1f096f3b8bf209d88f21ecd01c8d8b86414577d9cb691402f2e2560eb509ceb3cbd4c48023100ec43df9f361ee9bb34c02c9b947aa2fa861cab32137f9510391411a8809b932550e7d3952f89f622c85a70c0ac06f19f0302047c435bb50066306402301b3956753490ccbf3724d50d40887b8264614605c153f4266599612a0dfae4254edf3a581d755fe3310ccc0ff4ccf4b402302f5bac056580fcc6ce1c7634f6dc44c514551da46e603bc561a344b715b25945afaaf6553a7b3db61667186d9c6a5c980302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a2608c94af95b264731e9c32141d185bb032c908ef147c88144f95cecc7b46566056667ccf45d7e3d95c667e0c34bad3023009b14cb810a2f027bd8f371fe1d65c35775bec7623396abc1e2114fd92e079d3e201b97634e563df6ab99dc5ec349c070302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100adaf942cdcf2014574f938a479f8a941e7c6a417c122d5628094c2b1bd3122a989b8a256e775fcbd4d47a423c033c0860231009a8044b354be5b56a32a0d1edf8c4c1ab29a1828beb1b9c6cea1357c5dd23ac8f12a7f021a9f862fdfc367123ac4b8670302047c435bb500683066023100a5ffd88f83d2de759c6f47a6db5f1ceee269797fc97101e3632c4946e8ea1af59634bb2a34380ac4eacd7ced4edacd6e023100a2e96dc33ca4bb7914249f708e8f86f2eae9c3c95889efe5efff7509ad99c33e97ad81847e43046054afb16f832701bd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b217c9d303201c274f04342b1f9eacee4886273df2370eeb87f971d71d7a1981a3dcbbe295257b24d669f477f0442e2b02305d0285dc3d80303eeb07e571822086f6a0b1251cfb1ec6cc0eb2942cb07f84eda270779b7ccdd43485a710235f2e58220302047c435bb50067306502310087142923bdc18623be9ed3ba6848949aef31b8b8b3720c7f54a18e57c842a617a8c629203690dbdef6024e15d5ba5e6c02300ce5400719c5ec11b69040445e517bc631e64e0300bd599e48c69fa9909292640b2cab89bd756d9657d21ee291bd0a840302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023046a489465c6597b4332303cec95ae10fdc454f17abc91e9b688ef9e106faf1e2e565a55d55d55568190961c4ce26a0be023100d957dc1d8d80ef1e3e9d43ae33c9edc2a0db72a60db4e850fe65c058dbe89af727d3822e173e84e14ebdd1627f1787320302047c435bb500673065023100a054a2450236eaa2927318180b90da5bcc4daf13b8e09bdc3c0c1f11162e1093126be8dd0cda992e678fbe09789b3ac502304b7e88f90dabecfc186720125b1b02462f9dc8deda4f99f53dbe89a091b4394780fb452ac559c18805d90de77b2712750302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230725c52fadffdce9119a497e8ce30a8fbd9db960451e7e9012e5334d36561ed4503b5d5b124765f9836962a36f9380ae202304265b916ba6d9b784679b3d97e07bcf063a93bfd3a541087e5008ed0326d44130e09a81612ff490d9f501b263183c4ec0302047c435bb500683066023100de311c0bcb76b320602c7c77c699cdf21ca907179b15c8439bfc694b39e33259819c292be13dcf41d92346f76a07013a023100930dd102dc5d114f675bb3ce0dac7c36d853abdbc3cd95da4029f47d1fa1fd4f8cc8d68dc9c80c62cb6032aa325aac750302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100cdf1ce9109430a2eaa2106ec9cefb416030e1786d368dad055b39de8c633a8e10184c5ddc40c87b020d531cb8481063d023100e2d86165ca943fe66ebfa9367b54f0bda2c02b47cd66f808b1fc77fd22de2eb2bf8f872ce9a84b96d276be926a8152f90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230502212f78a791a2891148a3f28043289c8c531ffd4fdd6481ef59265d779027baa28ce6578db336732afa775060d95710231009a3a4fb1fd002dfd07d7eaecaad533f16b8eec7deb90cef3d40caa98d179b25e63e7471c147f121c198226c584764df20302047c435bb5006830660231008f2a3174a0e461e601e9b67b8f34acc4e095947de02c396f9da98613a863050e95a29a2384c9c4a90aa04765eca75600023100d254f864fc0877abd6709d841d924206356cb720896d8bc1ddd62f364bba7a7875f21d327c3ed9dd40b84f3ebd51a95a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b9bfe26af7d65a99199a99b274eee1a44178368046b0d1747415ad351648a30b4a53c4b6d87efd26da64701f4c40bc38023100fdfee2a5794641c76233522b2e290642c1fbeff9c987334a726023b9e28284b678bd070556da534efa2901280c3741100302047c435bb50068306602310099388d5521cadc4f424aab66444d1214c0ad404e5db9a65983c59fed01f97dcd721a577ef08eda991c8ca10dd408ff96023100cc4a55141f1a81db0e91980df68ff4ebf42d2f20c37174a36f62fb9cfa0d5b0e96904fecedc929e2053cee4b8af9ca300302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301fd8e1721370db02938de3c41b343d831994ed8f95b3f74b002e065cfb82bdb99ce1a6d8a664b281f0a0e65a38c951110231009ad4e81fd9ea3a45cca0ff24a2a9788316cb086934df730bd43ee0ad9ca243d00fcf0c70aa1bc38881da666d99e56dd00302047c435bb500683066023100bd1a0cd1c3e60e408415ba4d460380c7c547251740f81accccedf05ea7bef5441b1985a9e5335c431bea3226872d20b5023100d66a96c202e42ec89c4bb328c8ec3d6a21839348336a4e8ba5e5d92889f041a9c0d75c1ef0c0b1866c4c18a93bc5d9790302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100807e1fc43170a403d7f1f77619bd9cd79bcbab78fcd709ceb4485af5cb43c4f6f18c21c41e27a12587bf52a7e452a59c023100d1d1cb27cf920ab230f3143896ac2772489ada338302fbb77f726dbac328aff9c1eb2fd2fe3b341553bb533f848dc6420302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f2375acc29a8231e3d8b70f384ecf3e809c5997043d5cc7bf2c90890116c2c1b0c592fd6fdc8f5bee0e0a56afe8f8387023100f25883994ae04f04333bac39ed2392a17f2c47b9112b789ebcf9f663a3476076ccf027c771d1ecc8592e6d0b68dada890302047c435bb5006630640230284949974bdd78aed33b99facb5c8bfe2309552d07681891b442654e175690b54db17e57e4242f3e97a010c21cbfdc9d02302266a7c2c36a150eb2b6a5bb30f7c9c2413c1b187f65cd6f13a3c79ed8e3fee3c51942db1d4b2dffc43d81a952b6525c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bdeddde7937efebea76a5522f2c0e1e10c6fa8e8fc9f6b70ab30ef00e6ddff5aac1fed4024c53087fa093c4547e3737e02306cdbd462a8e34486bc15a9475743a1ecefbbac63d641a6ad783fdd7d84c8aae52e13cb4b681e688baeaa97bbc108f6c30302047c435bb500673065023062ae38c08c6bb65b415e33ae2f4b6114961bf265122d313b37bd9ad6d484cbd12afea0b1d92a454c50c956da6fdc325a023100a1fca745d7837450d67397561e25c0538fba6d32c87024a28a75ce16e33fe84926622ddf1a40fe50ba989930c73286140302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100eb59de0ab4dba2c883a452ebd0b1f7179cc79b18132d8d06862914c83773d0a08c0b85392af74d7dd8ac013a29e6bfff02302ad5b895f34ad6f4af70f608fb76bdaae6f6a595979963e54532cf54f12bd7e89f121a920fffc1b6dd94d21c8242982f0302047c435bb500683066023100a6bf64894ecadbba5761226beae56e043039f194171a229703862f1b59fe3504d67e526f172b121224eb9e803599612c023100e590ff4bed0b79f36a7bb7876d11b35e65e9f31a94be912d2b0c575e589adced2d64cdd19196a368a153de4fcf7b92330302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c96a668c5528f0ceb1d2c968c123dba56a60ef7b9589ac3e79824ea77014473671c839a20ceb12504f3806db36bb71de023100db03a1fff21936ba83aeb554a36d4ddb468eef4ddeb669d436546fd50f0b01b63218280454d0da31cbf70f93deecd36b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303029ab96f6e519647d03ac647c7a23bac30e15882dfa57ea42762461c600c02067219cecbc2a89eb241fc46cda78ee42023100b9e3b4e350903cdc9bbff9249fedf732a1796c4bb420b36b66989dc6756a6e69346c98ffb7a1660698180ce81149fa990302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302240331cd2253eb1298e26744ef13f2d2243f7984c39e19a209c9193fd5d1e4cd7e02e207338bbdf745c7cda0351c37c02302d077cede2757036bfa90f92b1d96098d7539b2d11f870e1d31b3ad9211b680dec943a68ed262384dec3b5c8d64ae58b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f17d0037a712aa95e1bc94fe214fd06c8b5fa02ba58556610c40530cc9919dd79d2183865b0ef320322a41931f63cfa40230174a290306629691f2ab438ab005faea35e0c11ece639bf080cefd9945c37fcf09b235ba229815bb7d3b86c0790b94410302047c435bb50066306402305335a35c46e32a45b6a1cf638ed59ad0b728032a2ee2e0c6d0dfe3ff443236dd98276ec05d86570bb3d97b1a0446f1590230628aa973952f70f4aa73bdd58395798dd50abbc5c480318c721d2cdaa405c7c4ac6e3e7c438f0960691bceaa429f96fe0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100bc1e219055ec2d65ca99e0d7979631bb8ab4a63f932eaaa3b5acfa3fa088f28080fc686562f4dc97ea63c6830ad981c7023100f02a266362f81c0232ee85e449df830a83ef021704e3dd6dd614f7b22b80a7e3503fc10437efe87e55e5d6d6a4d65ea70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100912c2dfeac997d605fc77a213cc3775dfc732d5130f38e42127f2317273ccaaa4eae93e088c321ba911319964d8633a102302fdfccc1d0086a015c8c73fbe8b7b5b5ec79297c8b283cbd1dc8d2dbdcc4f4986e6e4575333fbe5e1d5f845284b98d710302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300fc78a86b80bc1999081083ce0f11afd65ddf0ae49cdf3f801712d69a1cc9f6b006281490500d9aeee28fca96038aaf802304070181868a6cedf1bea80ca4dfb4243fa1f67249a059691df0750ecc78f5eccb53e13908888e577cae621795181096c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305c9a9c830dcf98e28ef2ec00946a10de64b76ccf60cba67b586ffbf4275536a3ce54468bb0f87a15935276ec44335a74023100f32cf0b0038eab97d2035ce866416a868a6da276ba461e486f97ba1552d54836c441dc3c5f21ed42261da4efefa3c8020302047c435bb500683066023100fdbe78193c93e069b39447604bd7e216d2ab694467108ad7ddf9a5061f70e9175051b9cf8cc9d4eecf3e9d3f0e6b95dc0231008cdf02f81faabc2d909b3f5bb94daeec1766b5904168fba3735269cb8cfbffa01b6429c8bc2ff27a4a95834d56ec0a930302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ae4b5c069074106fa67d66cbd2964ea8f5489d06634c9d9c6384a7f47c64ff593bb090d7b0ae5806d06c2aebc62f3402023014c408879eebf8f136ca209a4e24315b907140b22d68a22f29c08808cafb4bb12a2f40a7118bece23f222889c984cf550302047c435bb5006730650230062b2f42123918b44da7535e13e7c75eba256edf4668d40c50252e15255ed42096831950bd0636acb1fa9d496768497b023100e2a793b97c1293e95b6134f4e97598595de2ad17218650717dc9a0f1a67285249b616ec813c6742ec319b67516d0480a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023039e25e401a0fd519aa8355ab1301cc1814d45e09237a5353c3d3235510daae6ec022a9e886149fb88f37e461abfde5aa023051ecb5e9aa87144915e0b643e8502ab1b27f7e3939b3e9c05ed67b6424f412e44e53022a4eb19b8ca05cfd3be17808970302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310097e8a0df582086b83c8366acce88af63d0b9fb99e5a62b2d2271c9b6d71d0a84ecd5cdc5329752b4ed2560c700618444023100a5545a8aeff52d0d98618aa6e42106cdf00377a1916bc656bdc4e0c24d313763245960fb3956c9f6081f07ffef83614d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502307e1c1e06c9af2ad8dccdb2bf3691e00b1c82af3d48377edc5579a2c43bc9eee7f49aea65fa254e9ce25a8c56b9b8ec740231009d5a01ee5af2bb82bb189beba38ad7f7be3cfb93eb480be02471e3d9282e2f4bc340c79a46f2b0ba9c4796e39d489c8a0302047c435bb500673065023100c72d5c4178134b80b9f48367e13470932e286734013a7818b27234fd344a4e8329a97fa861bb46517dd46a0375e0a96902302a051850daf5d8c1b6a5159cfcb36a5a16cb09273bbd93690d3d4f919e8812a7ecc74f91885fc0251dfade8ae0f321d40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e257b24de8c2d0996800e55680878862afc374585f94a15d6773b23c61b36af67a84bb04d7a70febad8e0e687d094dcd023034f01af3cbbd620a8aa5e30032062240ea0ba75e5eb35252504de2eadbe434a816d2e74eb5fc3c9b4d0f209037ae56a40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023018f48f6564d5d764bbf46de8e52f85223a68275dd4244b8c48ef5eedfaaba66ede7858af79797851ab025406517aa428023100af8bab454957f74dab9a25b85e30919a8aa1f583dee51681935b1e76125bdb96e24cf811a26ad295c9a20a7d39bc57c20302047c435bb500683066023100892ba469c16fd057916f1ff116f3e8791408bb2f596b926d2884c5e96c62f9fa8b228280fb23f3b6e997ca95a5cfba670231008cd762d9cc412b8a0b4ad0191e27570f7c5ab30d48c24a22edd62dda0c220eb570cf49ddeb0ecc74cbd1b5fc2c727acc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100eb0b0aaf18e04f30237c759418136db3a69e93fc3812c44a5db41e6350b0e35b7312fff7f265822f36ac8e8f43f44929023100e8e88e488323fd9e27417f315fdea4596a5ec1317d1954c29af20d24325462d4d12b8125e0b0c76d268212671deed7760302047c435bb500683066023100f60527d4fdb4de80229f00a6dd3c152abfc2d2d992a319c269e49a3e51f5dc12a91fe102bbd85f6f3e76b97250259800023100dd38d5bfd3d68923c4d29561c6c749e963cb9e30440f05155aeba58c4c078608e40ab2be5be073372714193334cb529c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ad42b34ad5a551bd7eceb78a6b0610e94d002187350f4a3bb66f0b0624cd1fc55721143ff12aa515c5602a662bc4502a023100e89fbed8efeba78a1c7d1d196afba45943b0cb8177809ae5956b3222038be8f421a4d0a831517b05de92ca493fc84f420302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023029db9c2f93d0a24bdb11b176a96314b89d54a9e5c4fd16b5f5ae93b44360c4ff9a6b73cb48cbb367704bb01c6725a171023100d71c47d03257fbfd54d635cd181abf50555bf7419540e0ed5fda0a16dc5e885186154479c8a8c0b0dab05a8a7369c3e30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230047a4dea70720d01f7e86e75e7968ee6d7e89fc0758fe4718833a103536ccf81142ad10dbd6cd8aabcb0aa285daa209d02305a856e31a499e987c71d5084354f5e665ce83b6576bec12cf5bb81faff35de97b37e9e40c30319438a77163d4071c8d00302047c435bb5006830660231008d37bda2b10d7ceee37242964d76e14e33fd2c9b2e0ed8ad07a0519d4721b7ac3599a632e10a0e9f4bbeba83f5e034b5023100cc989fdf44c36553e07340c2f39568fe957ee023081741aa2f900044cd77a3869655c58b8d360b2a70f42a4d5ac50e1b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310095abeb2a1e0396e6fb5367196f25f6dbe8656d75bc3e61ef8ebda2f53b64b4e5d76f0a594b18ed813d6a0e6be7c04a7e023100c2b241c8df785d92364c0ce1e1633403133e98f5fbb483d6905c0111d1fcd6520dedc730b5e6e6394841e9bb6fe19d410302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a1d5b53535491f02de94daa7b7f47e0e1ba320fb82cf2f64061be628e9e636bcd5a5f9b19518d8f16bdbce5634aebcf0023100d119959977dec6e015c4fefac71d9d3b17a9fbbd241ecf166b1157072517f25f1126906459fbc8a9db026bdda6733cde0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023075dea59e23bf4dfb3600851e108fb1d46da11b312f311aecb2624c4334767f2f7e1ada88728badd8ee3d47081e743f1b023100bede5c53869762147690736dcf108bbc41cd50e37f9a97d7949f9ad761f02b712d0387086a85b1060ba1f6716170740b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300ab429fcff5e5e989fcdb57827400a2f35da20861be742cc8dfa830a93a70633109e29976aa14af735d28df58529597a023100b9b30b809ba41e7388ad0c98240ecb95a71c4c4d184a5fe41dd46f76c56add1d14628a5e3223528a49e0b0ae1e013c090302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100cbb262aeda580694b0dc2b1e77318e75c2c9d3cd224fe67614f32ac82e6c66411cd15aa6cb8b6708d0b90a54ef4b23e4023100ca2d9ab553d8e48cecd866b638144cf7058c827565c2e43cff0ef7965419d7665cdc7703ba46cc6a3dfed0b01d21b5960302047c435bb500663064023005de92e680f91ddb088ff17dc5c485e688877451c0ef41d4b4714e9ef47c6429f0e61a074aa5b362ab72c0cf5833396902307c0e3d9dc25d7c7a7834bf00385e84db344464474f72c4c91505092e680283444352631fe95ec36cb6b60f192542bc0d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310080589e7216786268197379652f146e4885a134bc1163f665c265f9e747e2f13360bd996ae592ee3bc8fea288a119474a023100f413f2141b98dd8dd4652f6ea24500ef3a2bd5112d58df135e776fbf7d025532bfbf88a97503212b95c3d5ab70c5d8e00302047c435bb5006730650230481498bb82552b0a8c467f96eb203b705247ac9bde1812fc989297b2b0c2471173bb81bb9782c8cbea76f1b3245addf4023100bfc894338fb742ca731d599c9b9687d51a35b8791a6da0fc7d99f61d1890ec1ef1501f1589418f35d19e256c66971e950302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301f763c4183b401437c3805c70bbbbf2d4556eb4f7a7c808f47e0667cab6e4a315b834c898d29574a420c45c26845fd6c02304517b28143aef50f8317a4680cc13726e75a0700b29a19ae520c64887f68bb0a3a7b558ad4ddcdc3139d5f909f3be6260302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009682d6b9f2a89ab3e5b987c49afd431fc8f4cebe5f7a14d9d196c124cd03469e6d8759f5e1b6facfd9c6c10e498b0d350230429ac73de70acb0b4b079e339575371639c906eb51b36b25fbd0a7c8b3e5f4e586bdf01ee9de5f1d68ad14bb4a3ff33d0302047c435bb500673065023100e529e10d781e3ac1e51ccd9fc0d84c5bd1ec1dfbe09fba17270ed3a762d7deeb8e10f3d004da66bf5f76356c45b757d50230055e71552eaf655ab023ea42e25db9db20464f6a8c57ffdcc99088d817f62ff4b844249119cecc61c04b5a6f47da393e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100841926819159c1bf8afdffbfd08c1d7ec188dd9018d102104ac914c44f9a5c9eb5711579081603953034c437d86d81f7023100c4b901168b7a35d1cce69bd3ff6a735a959ac67b602e2c018480f4fc8a2a23fa3adb3d3358e03f36da5936e764181faa0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a10588ca463c58aeabad83f8e9f878208636c9aa5fc4dbb270952472693052cb28bb0fa1188b337cd032c0c72b10d61d023100cb56f449b6ad014dcfa1bd1eb1c9ab7291336e8734af6af1510dca13414a60094465d752037fc51ccac7df0b75577bdf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008df0f8af230dae4eac6e91058c4cff4e0c5186d1a11cc5d6118bc5d7094b1edc737eb0ed6de462f8346ce660776ee846023100d386f72af5c1c38f011f874cd36433a0ecd584c6a491a580f1a18abf787e38e5591d9436ad17b3e9d731d8d5a953697e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100adc6da9a739a4ace732af980890d94cf9951f09eed9a9b70c17a090efb5e21a5c44e88f99318a0ae574a360cd575341c0231008caeaaf4971ebc7150c1ac4d0f1afbd6175822c9a348216be518d018376b99cc546b291c95ba0cfb3ba8147c030c04f10302047c435bb50067306502300265a0737bdabed2d2bdf10550b6e20e442f7a1108d564162abe2a453f4c1f54909b9fdc95c14d9f8b093cb0ef752e8b02310083dc60dce77e2a1b7aff97a3243dde699f93cde40f683996f7537569db9472ca80b7e7c06c9fb7ff2798b9b6a003de680302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301e4cfff8268141d0bdb74f5d41eab8dce6be0c6c51de94d65009d8949c32df212f112a7c48f6da38ffb3e049282f68b2023100ddba6fa69f16181aa8e9e03d61167ee36d63e6cdc502121ddd0981b13d679fe49478749f5cd5988c264026cfb3b1067f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302f6cae2b49d45d80ab4614b85761b29c6ba58acdb4a65773fc5e76cad88fd1effa1463d358a90d031efa2251ccd3947d023011d77d2903fcf9aa6a01e2bdfff6fc51cb77c8a60afe10789d45f82b6486efd0b3f0e22200131b5eb5f83d3229f72b280302047c435bb500673065023100f3814980353626eb3a0b70dde8beba67cc12c236973343dcb89851d8875f4ed68809f777af5e00975fecd42e78b463620230591f41e89f8d544b130ef41e77fb597703132d0944fd46157155d3dd68b9b3c599ff2ecf860f805cd9026583f49c225f0302047c435bb5006730650231009e0a99d9c347be48a1311d7a26356ddd2deab9e0d32cc0f8baf9503a7cc7d1a4b0cb91e03646a73dd42111009148e622023071692683dc76acb8dfdc2d453b588d70371fb9ba7ce7760f7722aef581485621c53d47085d528acef5c1aa8691d839a40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310098e484ee39231f10e7ec7a6ab03621eaf633ca071957e9d0df901c5d0ad0c90b5bb837e5e816fa7b4850cd74ec04a12a02300a4ff197f3e1b86c7552c2aea7feea2adf15b9a43b121cc3f77c0dcfdcbd832437260baccd30a4a10d84f95714147e7f0302047c435bb50066306402304da5a55ef0d059c36c205bdd737b2a5dec20ee2107c23534aed2223de910863b0bb4ee4858d40d0836287fbf6976f783023039d78135ba24b6fb7567efebeda101cef7e03ab165ea1aa55d0c770c501984f65f9e1b30f7b12ac1187478292de6b0650302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100cb5a800ae12542e459e1fbaf038b51b9cedac740fb887ff9f12b73543ec516a16de4170ab8fa623433c154812783ff190230111c178db055c92ea48dea5c17c07da82b32946a054dd77b3ed53d2562c907cfcc40c2d59b2fdefe9e7c2b232fdee7bc0302047c435bb500663064023067ea53f897ec65363abbbefed2e49589269845c62275935ceceb8938519a34c7bf16bd99c8735111baba8ba026e481c10230040c8a135c734772c736661eeef5fd13262a38f791a6e690bfe9992c492e24602f840d244f7557ea6ed69390329a707b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e8fdc0d3e1dcaec07f9d2477d396e66246713a18675a6b3053885a7601371e1e8ebca6c7bb431a300af1a55c9893f157023016acc2c15521f3044f2071cdce8f5b3857acb3244ed9c254dea8e4cb14b754f98beb74637534b00354c04ebd2177506a0302047c435bb500673065023007a8154780ccb309f44abc7b95344d970528efb9471616b5a71a5ae5731517136ca63b8db6f02262f56520f7a3a572d7023100c837fac519c4d69353ef337d96a9dc8500c2e79b912853252a9b4aa50ad251107ff6754b18314b90b04b0502cd46a1de0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100efc0156efa01bf092fd65d13d3fb8c80111f3a872d51ef302d49c103ad06dbea66797d17122a7cc23a5a3c36448bc8f1023100e376e4b6b8f79ff8960897e6c9ffe964d7f0ebf8d1a888b5a614342d2fed9bb5f327918fd35bb43892193d82c24ae8890302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100834bf3de54a41b2eaf72153564e92b9ef3bada7220fbdb82d51c12d055d90dd5d70d815576d6f0734870de324ab26b4202307303cb0afaf24b3259c90bf59933931305d64adf45b54e7fe4257ab6113e02c22600bad85d59300c8e19aa9ed821eafe0302047c435bb500683066023100e5e014b7f5fc27cd7ff7d12f8841b15203f9fe203e32457a5888338921231cdfb586a010774cb1fd2ab4aaedeba47370023100d08f5f9d98a10599b72e73c8e7a2ea6eb691d6f9519895c56a122baf45650bdd10f60e398d84cb81944f3454b5f0c9120302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023036e5d683133ef920a646baf8ea1bb214669bc02ad0928064c36d9ef246504f24671dc0dcbd61ff0f1cbbb132b89be3a80231009093879526a140cecc9ae119666ba8d57106f58668ab8824d86966b1a5450585e92e62dd238d17b8a2cbf372f49085ac0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100bd616a1bd855c9e724fd03e6afb7d4ee102092d557b2f9ae60f03228d899b9af8a5781f83392d3af2c744ef5bd2ea29c023100bed00735d5eaa1e166ae80b86c4066e24b44b6c410dd16a668a77f2284de6fde44e876c78c4ba587c62d1fc22a2268980302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d261ff35ff391e244b992f8c9207beffd90e3dba00db4e2bf59ad20f87e3059c5ec61de8de5ba7bb5b9eed7299dfa8b7023010411f97fee3130a1cf3c22d4aa61dd9e7678333e11c60ccc268c1ae8be659841982d55fc575f34d731bc61d5fc2c3510302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300d769963909d772562119aa88aa0c9e46da90ffcf9d3b7f3f885240c5648115ba76c05ca997361b16475d36699149d13023100d839099644b200efc6ed38028a80c6e9b8b612bf25f9805617bf5a7751cdb0ef24e6e4b59f87e142b4b80ba7cbe646e70302047c435bb500683066023100fc35f60b666cc2433bdf75d8d9ac366644e41e83dfd7cea279946fbadbc8a76ba3601ad2fd77ef0c3b1318a7fb159697023100d5e99eb843e4148f351f497b72b5cc75834913a1eb28532c5c64ed7f3508914e4c03dc29ddc0da9c84447dd102f25c670302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023065f1bc6838b97ff7f472e90f1a66eb256f39974f4c694fcc8ad724cdbe6df50495dbb4e5fb0a9c7f6bb9e257ab0ff5d10230222e761bf6b3359d80e8081260e47fc8240b3138b54ce10356804ddd42cc65628aa76b96eec4fdc7e72fa4d9a5a2c6860302047c435bb500663064023075f050d368dc25f31850c369f67169289251085e790ea5d95bf51bf7b072dbb1a46c66e35717a42e9cfffe8a33afdf3302305c477ffe111f3ddb728044a3cfff88c2d7213d2776094d544c99c46022515874ffc20f1ef9236c8abad1af56fb1171850302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023007b89d190d0309ce666542f0a7c1be3063ca8d7533229faf200ca31948b40ed520d54366a3210541b3ef42e6b048c9eb023100830432dcd205505f95a2d60c5dea52b219c74eb4adf4c763095f531f66197e9e038d6454887d2593d1741a77d4f8a2400302047c435bb500673065023100b003ca96b5dd40eb3052a93943e774c1accd96f7084d3d11691abc38f8e156897699f44c5c9a3ac6791493e93537841802306c45dcb8d0194bbd3d9ddd564ae6770f3d5ea3a4628b22a3c712125f9da9eea3b1f6ab3a26ad63e51ce8232705694ec60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023048a2e38a395664e12b7b5a5217e13989e330da8b5a0ddaf77b4521271ad7059f1090a7bc922c85d591b7fa402eaa7313023100f127bc3eae4f73a77800ef8d12671070b4dab01402cab8d79944364843ea884c995184f86bf1d586912694e621465f5d0302047c435bb50066306402302b2d2dc40818312931b4f798c1be4d48660c52a2ac09a30d9bc15381690479387cefdfdde49edb9a6ae29a7d302514b502304cd42450b4660192ac94da49cb9894f5286e92a03a61b293db4c2f9cb6d9d050c845d61acfcaeb0cd533b41dbeae4bab0302047c435bb50067306502305f80d18b42a4e05a52ac602172f31d6568cd91b5d0b46315f9836fa18bc0eb7799da423f9bdfee0badc604cd9e435ac3023100a362878ef7bbd77d432b778706a8c4ad07b44425b6d6acfcbe280da3fea2fca45b54c3246e10b8178475eb7eb1cf52e50302047c435bb50067306502306785c49846e0b458af23ef31ecfc586d619ec63b06b3fb51265d93a8eb13adc720e6a929b0cfab20da934978c516ff8a023100bccd9b385f401631ec608b4cce7dd0ef793f97230b45bddf02f9c72842114f8d0e20cfeeff8cc01f5a9b69ad604635610302047c435bb500663064023047dbaea9bbcc33ccc8e982d375db7c8d02255218b0b8ecd9e3392e47e53997e436c3ce0cbe7afb05d4e82998eb79f39502306326f34d5213580ffc4a4d1bbdbf97c042b305d15fe5ae56e9fc747bd36bce75e19acaf42e1780214a3d143e8dd4a4130302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e7aaffa6aa11df59c8f58e196178d96e3681346ee27636417082e851289aa335d7c7f2c9e4744686f88e722a908b882c023100df76cdaf5272af631e16716bd1c84273e51eeaa07ed17b83a4336c3ec806e9d621c42129c786593781eef4e822b812c10302047c435bb5006730650230152a307f302f01485301f633e23628e39888a630073fae26351f05f1e720f3e9bac574f67b66303251ffa814babe447f023100f253d0979dfce13d35565a61669d5504408344f0200d196ddae8c0019b416d82c8bcd23016d906732a0282b0bc069a110302047c435bb500673065023100961c3fa0f2d77c979c1a56d68105b845d70e413b2abb87d7a707b63adbf1d7bb0100355646d2c0c7494426dae44f9a4102305054ff2b420f13a3f56b1ed82dfc96985b23eb29c2e46e7f44920e6a65db6acbfb1ec0d112df052ab422c84a94d1b9ec0302047c435bb500663064023053cbb0c91c4a428eeed08e2cdf7935fc72d13929e9d31abaef4cb5595a6a64b8e78df30209c087a4b2eeeddde57a8d5d0230765326bcd029f6d2224f6ace44b0712736d5ad3ecca3edb4251e95f17e78f1d4dd9bd4d92254278571b82a8bc97dae590302047c435bb50067306502304f1aacff1a87b92a9bd760e909319f142b8b243110d97d90f23557efca7b298f040963fb89293fec910d191bd2253958023100fe6e72c0aabd0a09d03646dc8428735bdcd96e59714e4b930d5307b13b81ac6c35a94b8d5d6505149b45064503e231840302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305d2916c5a1d9a8725b51d41899f72c5fc2c4b1961ec590ace6fec5fbe80471cc42fd1f6d91dbc4918369129dd0b809e2023100b1dd809f77d9cd6853188b659606d8ec22a97ef3d030f43c3edd9c60fef25065d4cc9d6a5ca7268a6bce2caba70c42f00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bac1e035f59b78935d4ac02924a228911f77509006589f6f624aabea8ea6629fdea4d9a2da81d77f951f8be0ea4991ef023045a196e5126a3f5609c7e8d0dd9a350ced8398e0cacfc1b4db6748f326883624962cbf82be0e86fe83075070a00e4ef70302047c435bb500673065023100b298b5fc657168e5e0414dbb5a912baeffc9cda9eb40ecdd6c78c372d09280a18564478755346b8883503ed2a1a44b4802301473685c96c3bf24234b4c683b3211842d85f608229ca2526e08417fec38d9ce6503d10f7d6d2448963718427a742dc40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009d0d6b1850325ad961d2e548b7d1391317ce6a072929890181b024b95dfaf81c174f118f3ef1930e617aa76358654ec6023100df86756454891f6ffe78d4181c5b83eb36bf44a08e21e861a6efeb824552b2873847b8255d514f8770b9454b588cbd640302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302e04318d99b5745814159cf427f2d3f52b326700f1746222970c4f2f54056b4dad54783fe4b67d4ca2c1f13f4dbfb61c023027e51c21a06dafc22fee63eae61679260c7116530b96f26c4780c1aa9d78277a33a111325604373da4431489e0fe52db0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310088ec3866356ddfcd05011a743b790aa50ff1c02100b6a87542b159087e6fdcf70e6234e98204fe2c23e1d34627acac4a023100e4a18c474b71b6e9c77a12520ad77e3c34f198655ebbb087f0702d72d557d9b43b42e2e137121150b8e3a43cc48576680302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100dad0f1a4b617798bfcd902fe497904d445fb2c64f609450cf240dde4c89a94938cc398104a9e54e349494cfa3508bd25023100f237de5b4e2af1bbac6f7b62f6b777e269d13a55f12a13483718b32c94b253f39bea88c8cba80173bf0ca0b222cc11fe0302047c435bb50068306602310085cd0fee391097e3361e081559ad6d91373d520c34f0bfd02be5417b7e49eddb090ee48a8c938fcc11969cf04fbdceeb023100b0ba588db5696ce1783cb7072c0edadd7b22158cb6086ee7d48e8a48999845b80e8f6d90e735723fadf92bae222bfe1f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023016a26886c689b3bbff6207e366fc6c2aa0c933d553edc4138b27fc7f79ecef65777b2ec7d65816af901728fe1233d78c023100808c6468d3761cf2db143a5d3c3f57f654b42356e6d4e36dba8cd66eb0caa1d25c48f155670f9128e3d8625278570a260302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301bdecb51a4fdcfe4b67a369a83c07fa3fd37cd30c320edd2dade6d55e105780ec17b5a8e6210ac0eeb03716d31b0e38302307a3e209075adee72db5082a91039380e0e0b3d352d40d9089e5315966bcada141d392e18c5e96a4a0199bbd45882eca40302047c435bb500683066023100f12714a1abbd13eccb1633f6484e16996b2e21e891582222d9a50254b838e19cb2aa6588bc50d596ed780d80af78d7be023100b06112559c0be4a38ecc551b26a270a6dd7faad191c77a3cd38c08389902123b686c3d7205279cfe5d14e0e0325408a90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023031ff9ae30dd53a5c79f91b6a166849e61112cdf6be2b32c8caf79a93b2a9905167979cf71d37be8b04c0fbfde8032c42023100aa102c49877a21fde01fe18c18fbfe418201890708c6ff6e44158267aea3804d96d9d58086409f1f3c582a0eccbc20ba0302047c435bb500683066023100f16e1bde512bc3d39e7a4ad318582d4ee875dca1a98bc6d37227169d9095fc87a9fc96a243297958f64180f5ba8d1453023100e788285b505bfef8d27d0c0b144233bd977bc585732a4b0dcac506a8b8a3a0a2d7d32018de760faa742dbabd3b8ef3ef0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301de0ce19c3c82c1c469319dda4f1565a9045bace00f6297a520919b9729eafb7fd4133c7f2584e115a4c3bfce83810c60231009c036ae728f5e9b23bbffcfae6590cde2fc47b4fd45aa7b3e6c02f7b592169eaf0ded1177b4fec7fe06a6292caa7c2b50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008ccf0279c2bd0a9aaf1390ab2f87eb9351b33865200a9d73ff4667261ea4a2086eb056391c8f503ece2b6296dfbe1885023012ef5be783972a148375912d5167ccd200a684ce1033378e34b490780e4181ff86f351e1820d116c20ccbb42549ecc850302047c435bb500683066023100af7482639cdb6fe36ad511a1ae1f30b02d7f5eea61be62e3585f911c1c7c0454569a09153612f19abcae1aa8c437a575023100fcf7c2a93e147727f53dd1c486e82229d93070c58f49c2fd6230e59dfee831bc58a1381c4dd4c0ba9a4270d96817012b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009f6ed6c667bae9e02f3a497a3500b8917b8e16f3333f301c6edf5f72612b01f4271409865fa2c93868d954f3339d6a7102301f7f9e2e66701a4c31854c71d9b3eeae1e7ba55990cf1850968750314abc052609c1c85bd677899922f585c24057a8fc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e9ec5eff1f9fac2e69c72784ca7369e649bd4ba872cc8e8aa716997bae02ffeef3ef45affd8afa0f2703af0de721d844023009ed3077d2bb6fce0c5b536ed4dff86d4c82a5de352ac0026eea5b47dd023c4dece7ae80ac3f4b54ddac435e4b8483060302047c435bb50067306502310080d02207b2952b9f74c7c53e2503b41c56f54862a5b26b78ba00b38d552173a0a590fc39eaa066c4750b37eb2626d8da02302ca9acb63cf4aac94c6eac47ec46b2129e8b5d938cae1ec44abc8dfcbf1aaba619d66b39ecdfc9ee9cca953cfee046a90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009438ce3586751741bc3a3baca4845ecca73858dda518b8ad28979e3e360aa7858d72a5e550311ee2dd239647bb45d2c60231009b6b6cb628a4a5a14fa16c85502e0e2c65f799a5ab2030b57dba4c8fcff8e6e5d617546f169bf5c111c89e980ce08dc20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100cdcf167647709ce13968e0d64ec1eeb25891db3d1156d346c36fd9cd84fbe550dc2d1a2bfc2659b0d18be330b7ce3073023100bef2621f7c4617ebb7d8a3a920a98a4cfb0fb2d3126e9c26c2d4147a95aae05620dcd2350a27b295733e242372f8a3c30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023030bdf1fd358f247a9f8729ceca4ee11e3e9a3e2aafd9bf3bbe769742d6b1f07f44631965777b43563ecfa98be5f92f5c023100bb77961482098aa0388f290326fbe26198b00991b5d3fb3004e14b60971a53d20c8632ca56492a0ae457cb8c2cbb7c6c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023057916452d9605e91db0d477368d9fd7a93b7193242651028f366d2a78257fe07fc24afd6c1f7872a98d3d01d06c0182c023100ec4c3997470a9454a0cc56b934afb2bb18846f52749a471d606fa507140ea9f75e51bcca0eb6918df75bba4af579a4390302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305eaf8b9372fc28d41a7f3e0a62ae5a2e24608046e9da48fc61d999a304b31acbba014a0a7348c317c7d06f4e567aed8f0230512fd70e216e2db1fda44356b9980f42694364572bee60813917847b4081f0e0e0505b65ad75484c35de0ae743fb87320302047c435bb500663064023062b7a3f18888a5d5cbf7f3d0ec39446e2cc18d653c7e51abe9243f23f28f5c901bcc2f3924c33165ee35f9acfb08a1ce023037f1438d23be5b8d2f491e89c40e889382a666f8d64b9bcf095729feaaf6ac14ae5bbc2cb93703e0095fbc2728b19e7a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023076e8c7652c80e22e54cc40736b3c41fd13dbbb97abcdcb26f54ff650d15a0caae78447aa9253f14cde3d9f58d61a33c00230213a02a3227bc9c49327afbc242494ca5a550c8dd877adfd0f25d6d220887f444e200616416c00017aa2b347cc6f56940302047c435bb500683066023100f82c1070cc5b752bc6dc3089cfc987678bbe23ca7bb04734aa6f280ed164d7d4d60b04d60c3c19e91ee56b055b6c60f6023100ebee1e7626978865748cc91f73213d59374193c125c749d35517edc87d0dd2d5063751d8f8c8fa3ae355e67d7e50bb420302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009432556aa3f1d60aafc690cf5a0c9fb93f6c0c69d03a8f1a3c233c6e75062aa8f822e6965cf3bd336f823adfd01f153e02300ad0de526ba6545ae273ac06d0e7dc6cb773c1e594c37f512552647841c9c7a5d27d22d33712b410c3750f679637bf930302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023055f2f31a8d4b60bc8897634fa5ba16f624fdda7cda6a7a5f7b34eb140db42ea067b96ea83c99e29a88a6b8cfb847e35f023100ba61f5b84188a29c8bf40dae2be405dc93a1b77de8913e32fd3a7b78a6c854473405fd53b1083676b40bdea61e2d4ed00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230241f22163e7ae79603bdcfbaf480ae1905944f8d17fc19e8af825c6a86f7ef37bb89c57453b5db0da8e68e60cd3388160231009b7c40cf5bf4539804f22864b9f90ad979f3731ec9346c0e39f420aa7462118f01c6f69ca6316f298ca8503dda7c82150302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303ffd2d37a1422aac3687c7743f0c8b854ff1b519823fce6d50529be64928d146fa5f315f99a0754d2b1dfd3046e56bea023100af5eb085e54e16c03a4f84e2b3be4b049ca6e63ee303b3e5779a47e03eb71b186c49118c767179c04f623b585dceefd00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100af66b9b013add5bcd22d4d991a0d16720b1a07a34c96171549153a95f3b85bdfe2895df1ed118841ff573203a0a5a5fe02307386ea8d704f520d64a807df21f37cee52b63ea056584a4ca71f35897f691ec69224eff3721371ec96cfdaaa334372fa0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310090deb0d8b6d40c473b55b5ad1730cebf22a0089fdf9a863909e6bbaae06f08786409038eba81d5351738e8864bfadd64023100884d7fd13b5d25fb8d90ab6eb75f0076acf848e7bf6962a2dcb39f0811fc0800b72dbcf2927c8fdf906ba39bacfd39050302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c234305231c60da43660531536eb843cd820edc240d7f6506d5ad9807650881178ad0748447c122b81ed85951100c48f023100902eeb09bf285bba78e509b2869c0cda67a2c27fa504e5178063fc4ace1bad62614092b3916f7b1548b55e410d5760590302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e312a15ffd9e64ae8b5b2ef2af8397a9dc5514700c57fdd773303f1b0f3945983ee03835cc17423e17b4aaff0b3a7a2c023100fc20a2c35425172719737f66523b5aeccd707966040a32d67adcfd9e1ffe0f1c27e38ab9078e1332e63c2c2932eca4f90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009d33c9c26c9a90d4d09ebda6f439756e2742a7e482995a8af16de0609fe5ec5cc81105d12e79d7aca68307630740a0a5023005bc2b546e0bbbd21e278fca44ceb78e2785fb74ff2a70ad62bbb24b3302cf85a657ecf797bc3a5b2b5719dc89e85b2e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d5482e7717ab07c7cc5e0205b7c68d85f30e7c9e8c033a9d38a1c5f64a147a19d86b0b61b4150a50f4019c48351e7014023100805a971ebfe44d05423d80d240136ccccbd4d5bdb9c6fd81f222387d7832cfa461105867eeaa4ce5abfa71cb837495380302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402304992e2601eac5e615e8e6310e23c03332d036ca81dd5f759a61562a1cc5be3b8a2ee54488f957d2b2688133faa7687cb0230315d1c02ae23c740e0648f79ec4bfef57c0b8fcaa5ddeb2545bac7c0bc41bb36622e45dacce8aaa704267d11a006dced0302047c435bb500683066023100abf159dc12e27c2f5a2c18542b893bb0b2c2e846a0911fb687ad0ea779dcd01afcdb62a1c8151d55a2b4d996546a8735023100e623377b635cafef245370203c9744f12263261ced4cbdc4e1ea0d779d416edf6bedbf386cc8cd63c1e8681fc6b2464a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c1ea6ac64e72dc380c977540c9a14a6ec212e5bbf8c75721b6dd886844019f02f9ca029078eb12bf8ee2a6b5869f0990023100acaa09ceef7fd26930e5826e8d17d9a20e8ab24f2a4fa54cfc130eadf2f2285704d14cd43cd5003b6393878493f22b890302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305d52d6633b19a0b06a4a7ed9ca442befac1e5673f7f75c00944ec2ebf209be0ca912a09e6486418f498624855c2dd600023100c83c1d087040606c34c3e3be9da59480ae6c3a50864cee03d74d86b9a5c90ba37f9246acb467ae9cf8c130eb77ae82d30302047c435bb500683066023100a8f27385e41e61e853d7d04b0ecbacc5ffbdeb5400ab626ec6ef1373fca45fabf164a6fac73c30b06d7d87bca09b077602310087f4428d3d9fc4ac7755e10b92ae9eaae1d2de221e81b04bfd31059d519a0c11479e0fd12ae244bce4a5ddb6537e84640302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305a1c7b442b67021f046f910299770630b7bb8c6ec797a362304441b62d60ef6ee01ddc140a7923acf83fb61da86ccafe02304bce503cc86c3e2b6793fa909de6d88978bb1a85b07a3b019cd5b38e22efc362d498f070bc4c3ede7054834f3d9802e40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100edbcf49e414714a5832126de4ecc6f2bed4d2c3432b6f01346ac750c0898b20357cec1941da8ec86dd62a94cf4d41799023100b315f3941cadbc7a786c8dc35e6e9309dc9ddd98235b9a7397c7b119aa90c6a554a201fa538dc03684864db35ac3c0e80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230687cec80709808a81032ca59a81efef497ff9da548d5d84a3dbd8984be3a1b99a923fdd3e6082489eb44e97ad2bd6df0023069ed1ccb826fe595ea80c84aa48263a065ffb50a30693a2e8672b0b4dce1646f8ddf30253211ede5937683d32a3af2900302047c435bb500673065023100b191c4eada4625903b8f5e47f11f3ef1bdb02931b537c109b1cf776ea10bd6dac9b3a635b7cac3471c75b738f927acc2023009d574cc14e80ea0ec0927ea9c54a0eb71bbce189bc17157a4d1fe3aadd64a78f3070a4eddcc9610145b6adda64670990302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100fbb728f899d7ee825b2fda98c89838aa8536a7016320aca2d8279c35f09b5f29a577b2cd2a22abc9c87f52b304696af9023100ae22a81e24d9636b7dd463d4ae78f057a786ca02e7854d9fab0267cbb4c777a92c9ad8d4f1f6359b553f7bb7e04e99ec0302047c435bb50067306502301585b6fb8a422c24cb252b13093083723d7832112a8c1faa2e271a3bd20cdb073f8c8ba5c763982f6002dcb7e85d4ff8023100ac4b16edf61cd10e4c4a0c5f61ac1588db5f2ede933cce8611aeefd050149127149a4c64a4381c0a2126effefcc606790302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303d1380d179b273613c9e49bc30a06b89d5f6338ee5e194a6aae4e791056f71de9801ad91e7d553262ba594bc344719b8023100c0fa27d1a55940bdc586885cd7ff61b75b797c37dbfe4cbb5acf414c01cb8e5de901421c8d7ec2225e5babab50cc3b4f0302047c435bb500663064023012188ba7169b095da07c35a5a07023aa2cf4d51e4bf7982a42b1804986c073618eab4938ed0691df2015ead4b1f16ddd0230134da3caf27dbda52342357afa3943de603494829a7713b7da2dc32e801aceb16e4b1d63016420b6b8f8a477b6e6f0030302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023063d09d89df82d4df1b34fe091a3fa35a18dce17adb0779d82c88e586d16a5e955069262403f7a682020f7d667eb69a8e023100845a796d4a867545b40456ae6fdd89298493a9209afb10b7993533decc6c13d877fd496ad5dc216050d25b852acdb7250302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303123b81930cf931091401f23e454ab4178ad253e799815fa95515bdcb0fea7e40a8ea9063ce1a6fa522f1e978717d341023100a2374f1a7b070123ac26373d290a5bac953be17f405d48bebe1a4f58306968aab51900af55e002637dc601e2ae78a77e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ee5f236b51583d13ed7d83b0492c7a1a953d0db003134840a9a2d7feab15692b2135ac589a3221179143fb1e47c79c7b023100ec3c4333ed76a1324f0e34a640d65374b511184773797250ed5449faa989a6d3ae85c9790948bd2f4a0001d89707ec920302047c435bb50066306402301d65d4d0472c7cb2b95e65682c20f3306ac34bb8aac8c3f8c59e6ccecccdfe2645f36723235a5547f4efca71c535f0d9023033d95d2f49700d919f9a8ffa518ca4e90e5f7241f5003546780fcf68d1ffc46fee662ba3b2a81fb7641bee6944f0b1cc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502307423f93fad6e62385145278606cd652e4d3931b8bcabec57722e3b0fe0d03f69ac0a042e4468bc39a28f8c5f6c7b339b023100bd4ca31dcb1c05cd5abfa8df5892e82b7be747332ec5336a58eb284a815be87bcbd35d6c95b8a005fa1cbc166d7662110302047c435bb5006630640230649fa73b03d5ec070895c53a82a6f8f67d2f74b281b6b6ae712886911a611dfd4838e8d6b200cf24b3bcbb4a9fcdd860023060dc73250cd7d08e37a099393858076729e0801b96baab18d0b8f0fff972c93ca2cb5d299f1ec257be94a0efdd83875e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b36f8372a1ae731cd8be34549a7382cf1824450dcee9155843090ea6bfefa7155fa06d494b71122844fd1f4b3b121b5b023036946145cd313abeee1ab0ef9717579cfe685cdfdcd08b50422020c611022a112d1c82b102d611b598c23142bd2c24330302047c435bb5006730650231009bb2850da55655ec897cb2ef8a7e03ac979b534577bdab14e277d3960e7b8e50d65df64309f4f4d61158a21c2d8fe83d02301402d3eb379c114be322291a3a8bf83b94ee3ab519b106ae9f0a4f8f4a0774cecaa8e6647d1364c905c49aa565089ea60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023007e62720e4ed7de76945e1c1333e6311aecca7707ea93fdb4b7763bbf6d043f4a55e613cda4b859bcc652292b4ed76b7023100aa39039fcfe563c471b9ed9294a6a96248ffb153bdd732adafb9b2a87f3552803ce3b2945ad1d3de710d655544754f120302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301966a3da26c1a361647d085ef285336ed45ede50f4693f81728e00e110839214b4a50982a9ced74b31bd1f186ebfdb1002300b2201122d469d34426c69d1b0eaf909432ace1f8591b899f615b67f70ad927bcfeefc02d13a55b83f201ebf0a7504bc0302047c435bb500683066023100c4a624b613f1a29ae5c4cf32d86892967640697bbe7cc1a4085b4b9cd3013dcc864514ef9f69c2db548aa4db098c717c023100f60498002d2997c05f392a3ab9266f9c29e4519aa4ce4ec48494b435220e558747caf2213c98fec1fc04f73a879a93960302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310091e63b181e8e2788e9a16db3f439305df05906a1dda5cf85ef61bacf105e4a1b899b56f8960ab3c8f0f214747a07cac302305e5ba0fbbee04eca0d7312c7df3e221f4cdd9587a549ff85c338e1a7e45c936485949d94df6b882a98a44217f767c08f0302047c435bb5006830660231009478cc89f5cc7a7d97ff857c5e96a81766737061bdbb93fd0accb992b9e078003c99581546e0651dc6af74d31f4ec16b023100b1457f9d14eb2ccf8f2eedb278e3a73ee1fcdfc630b93efb6aade2669d9f7833bdc98fe95e94b6bfb2750c39a58499f20302047c435bb5006830660231009c6f710daab2d891a57f9c0dce8c807350cd0b7df7292ad9e5f6b0de7a3a76024b8474f8dcbb260e2bb5dbe915ceb8c4023100cea9e1514c3867e59b835ab9e525a3ee996d11b360d23a818a03a8951c034c0cbed89ee43bd91f9f315c53d48f9ad4900302047c435bb50067306502303581c115fd24d5575273d5aa71515c0dd30ca2fed32845bbfc3e97d35986b4fd2feffed366ff2c81193e0d02fc473ec6023100bf86dbbf4a095b180777cfd67dba6a47f2b6e4da4cc91f1761d201a7d7e005d79386b19a81cadf2aaf5c5fafa8f82d370302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230511d3406b402262a03cdf56f6207bc6d90a9cff8ddc5ecb81bd3cc83ad5dbc378cd3c5f503b94e815e06873ecc6d8ee6023016403e3210fe3769d91dc6b83c26b9c2166f095944a423c943440e107a1d8c45353c68500f18ca9f80d780cddf2603230302047c435bb5006730650230755bdaca3c7e1832ff1bb805812aea0982a1aa3a8d69a35c0d2bc2bc9c46e230f821baef83b37d6e1ba8523862539f04023100fd55fd538ffd06bda4682a1784bbdf648f888176e501f91610168ff0a37dab1fc51ac32d50445ef6734c9ba3478c5add0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310094469fb4c0a8699978b04bb16a2308f2068e48ee045ad3eb8dc5ed12cbc55c30a75533a802920ced7eea5094e739183d023079061c848be7f67cf34b217a1afca637f167579b121dc5cd67802156120188e9978d2408fb978b5a5442e1f0247b1c160302047c435bb500683066023100a5529222412875bda762a7ffb187e0e36c79ff632500ed5ca373e2f7da6071eb3b491fba859db6a019e33419b804d3c2023100f1443f40b0de4faa5e2b349aefed2af493403e5c32cade1dfff83a0cfdd7bf038827fefd8a02d1ea9dfc2b513a6979840302047c435bb500673065023100a17f5b32eb748acec6bb3cfadac61eff5139296bb2ba7ac98449bc93ff8d2af6f86e2e1281d3736bb3efc666ffce3bca023033f9cea4ec3481c33d3ba7885644d7376516f98b27c6ac2ce801f3a86e7ce65dda8d8f4f81ab16e40834ce78233307a90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303473feaedc7fa430831bfa7cad4dc1e70babab7ea46b3e3c938422866a0baa5164ec3d11ea10f2e28b1f51d729416c980231009cd7f051484a7d4345fd65a961b838f1caf3afed5814d089e105a0c0def05536a19b9884d1573c5502a9f60484a6a17c0302047c435bb500663064023014a57f5b2c33a9a7d57d6c35d00bc207214e975913fba6b6a9bb7c2d7f3995d4f2e477a5d683dbe6deea61df9061b89b023032f055e925c6ea8ba659c094332f7487728372497b18c478d18e1e0d2b3a6da0b4b6221ebc0d61a06f614f33f5a408130302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100beb768599e4627fd149cc1222cf6cef9c4be94536c0578d0d5b8fbb556b577cbc9fdc84f95ae74490b338a284daece4e02304f703f52c10e25e8c59526535dfeeda8200cf7640ebebcc08ca17ed33418ebc06caf56bef663e24efaf845af5463b0f40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300a51efe353f6fdedd367cbe80e8a2cad10be2323eea00fd6051ce2ecd8cfc768236ae3c361e85432236dfa4c70592ce4023100b7b9bec4e46c5a1a265e14f2b95fa72563cdcb80c66c6f4b3e801211609353f49dcc8299f4f4562c8896ef69267f4da30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b86fcaa6054c2015f080167b472915ebd1fb43a8b853e24448aa8f01ea970ed3b24ff30b07f3f2797419551e79bc413d023100e1e9a3d1eae01b7748ad64956b163925f3d64cd38f5fe4278f1be0eb91ac0093cb060a9d2cae88f72430c7eb91f05d2e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e8d8c64c58ac41f9efff91420be514fd99def7afa11d2b6d8181c0e0e11b6479bc98bc897f050fe7031406a0b9a2080f02307e414005410d7a4d268c1cceeda96d1a6db6a23eb7303b09493e8e8163399bdcc61eeee22bcee73020d19fc922090f520302047c435bb500683066023100847ac1b491b9014b29dce2e962e0d8cdb8aa151a3728c99b378a54eda5323c7f5488fb0577e150e7e1cfbda373d04a9b023100f9015c3eec39e0db9f70ffb336d83b0d77d17b5c1ef26ad77dea028a6f0dee647ef5b670c292182bed6e53f0acabc4330302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d813994f258b75617af7930f5643a473064512b22f9084ed74b2b2c44f3c050790b48a6068a629cfec84ce2168a8adf902301fe81a1ab016e1e162a2d2944265deef6b3a7f9c79c32bc4df4794312bfcf88795e8e9ca989d925402eac5422d63a1de0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310095e5203588aa2ab659af26943221ba30f193c8595c88fe3caa80cd770e1cea55634d18c113a61ace857f8f8a2cd0ed0902302bc1c52055fdf0c13f4c6e117519e4e0229735bbf8097df821ede39e0a0f5858f5111908fda50bbfdf894de425d5c3650302047c435bb50067306502310082e680d6c59b8c0d20e5d2f52f32ad1142e88bbd3eac92ce56f35b1f9fb39e8b515265bdd3ae38764fdf6e2ae131729f02300806b5d5d8cf42a98cbb34ee421beed193d79d2b841f57faabc284156848a25e4ad70aceee17577b3617967d767c539e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bdf8cf291d527bf3ffb791bb7caecf99f6f30ae27032d6e901dc8521bd50fb3cef5f271bddb1015da2b281ca4afc6e5302302b9b29a3848511c219980e59bfc510a61968418d9dae4001d184d53bcd46b439e48c0585047d296d6c7fe4f1c8f331460302047c435bb500673065023100f93a6b56694bfe88025206134cfc3c6a985bb6b79468b2cc0ce741e2689fc3e3cc7e69bd5f424e8369d8511267bc812602305af986d04ba49df9554ace6a27a313525b1f0cd3141f84775a5b403b84796c7138c5e4905aa65bd469eee6feef0253f50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ecd86eb85d669a7aa5476278f8214ba8c8a77530e73a53c06fbc528a8e6fe11cf1418b2e20584ca8480c42049ff74bc5023100f88638b70bf84945c60abc052be3c3b15c4bfa7ccd441a914bdcf0b91d98b89047186b6965726a51660e701d3b206fdc0302047c435bb500683066023100f36730ca6b5eb73476a928b740bc4d8b4f23884f534317880be61e5e16f4009601ced025a1fde83e0149efce6aeed974023100b5b5bdfce452d79d1cadc12d67056b9199ff1f9937c70827ba9f62f452e8f49a4576aea6a69436260ad5c8e118311f260302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f64edc0dc905aba9cea8c5775f27719652bcda69dbec2f10c46224608bb22260c6cd3ac6915ac4a972cf8f5709243a76023100dd6d88741b739fa6b8caf965bc003e58dd7524181b5bb941b31b1dd14504ba81e87facdd5c74cb51b9bf8c4922df6d170302047c435bb50067306502304f0e3f698929148abe126e9da9730c82aac669372eba1b481d3fd08ae725526b2b3a7d5f1e1f7b6af1d1ed3cd85fa47c023100b72e407c9d7194f3028eb368eaff66d0435928730104c0bd12dba2dd6e3a3b60367a6af86fdbffa72ac21bef0118301b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100847a494de99cb2e9d2cc0596bf30c4fcd3f08a8174013743e968393a52468edf2c0c29aa8a383e8acf352ddf4af6948f023100ef273c1dd46b633b95f711d6a64f4207d7e9d3340e443e952cc7a370d6244921ae4b666af63c64b552705342e111a5ec0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230415284967a4446678d0797c19cc341fdce8a00d1f54e0a67986b260feabbebc20a7d11b40acc52ddfaf82dbb13dfee1c023100cc383c76adf5d9ab8130d37ca1b5beaf3621361b4eb264a014f6390054232c30106d0124e5e918feeb0c67e2a54486590302047c435bb500673065023100b79f371adf1867848b3af98a4829a9f3ca5f482cbce7380734711eb75ed1776fd2ca0ab4bf5aebe86bcdb9c4ecf6e05402306671df06bf49d2c72cfd5e121390c40954822e7cc7f0851f5977c8f9eb50c1d0764fadaf886b5e68f79a13095ab452bf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230732280ddd644274ee8bc680abf0e846bdda845ee94535f5b0a846de5446747742d70824d0b91074895fc2c2d6eeacd8a023019b54de4503c98649386cfb7352cd2d5c1428acee98e7dc93311c4bbfb65ef0737a3d3372eabbb8029c4ea3c47f03d8a0302047c435bb500683066023100a075be8c05986c88d3d25d588b7963b72d9f1afd3683e77fd574529108cf5bb958984df02c2f1a101215aea8daefaa60023100ad8ca9e9973860e730208dda3535608dd60b5808a6de0ee0c9718d20b3acbf3608790cf1ea5d252c2f2402c4722b05aa0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008f07315635fdb2852fddad5957abbf7174cc23a56cc3d63736525872a06721b358325f35716dbf73a587d3eacd7eb70002306beb3129454728774076c5378c41f180e2e27179ee551391fd0557d33ea31e1ca6017ec6e7675ce8b318f65accd4d16f0302047c435bb500673065023100c2cd4a137798fc0375aa172381896a33269424f286e0504c4e3d3bc6d3974dd82b8937ccb1a3f37d45eca505f7c9c16c02304fa6d76c20a6e898c8b258b909962fb2cd7456ec2438dab981d8767e2d3d1c942d13f6c51c8480cb846aa9eb741098950302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b8811e7129a4a30033a57f850a02473a457b4ad400f5432feaa5893a5f839ff57e50a03ec724969c825549164e1e83f00230310cd60a63f67815dea69f2d295bfe09dafc7b2be1bd619308e650440312b0b6206cc4f80ed1eb0668ffd9d6a79962fe0302047c435bb50066306402304c373eba233f12b1a39961ebaff3c43ee67833c3815fbf539bbc848c7423961cac4bb64572a86ac36b4ff5d685826a7a023067616f57e52d89da0b22eeebc2cd6342233d906275305e32076570861c8a8531734e55f0e93da2d9f582e71106711e2c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310094e04d775575ddb8ab79e4ca99a7399bd0c41a6e6a4938963eeed447ca737cdd19c9341af1ff95e5c6049e45f08319e30230458a64cb2263404f3779c638075bde235107c34c45f2916776a2d8e7e80737ebf6b55bfe775c8ce07b32fbf17bb871090302047c435bb500673065023019c22efc61ccc0b998422be38b400f282346d661bf3c63bb17720a4657feffc3743a26a353731c0c7ed31c840c1a2e1c023100de13654c9260f73f0d9b6be8ab696834854c4dd7c6c2be9e595dc750355d54485469089bd9a343adc5cadabe4198a1d30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100fbeaef75ce03c70dfec7ffcf2486fcc642d8ce240b4d47814a8fd8f94ee2e860b97ebdd4a2c1aa858f4abb99eb46239c0231008ee1e799fb710c3e6610fa31301ae55a3192a310791428af2f210004f4fbd5962f87f12273621d6251913af9961faff10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a07a18c755c766d7616d8855d1983932d0c28b16b1657e73a16df578da13c8ff361b050de547c9be675210368e11c8dc023007994540219dd8d9400eb7f93761e8721deed51f5a4729fc04aab7021ca2ec1633ebea5597810afbe8a720143b2d963c0302047c435bb500663064023002e18a47a7738483d6791e29a2889dacc85c30ebf863f7e9f075591b4b9b7426b5577bb0eda6bc8cc2ba17573d2cc76102306382c0e3fc4d1f9fa278d59ba3764b2732278c9f4f7163d185a750619e895670faf26790becc301dc7cc6c4cad802fa40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023010ba5f5e7b4b1abb25b093cc90844fc74c3784ed981eaaf654af80aede1063f22dae53237ff8fa2e207d879c5b146e3a023076bfb6c13499572ca4826edf1411123204c0aba5b9787736e3a563a1a091958e2f89b87f148692765a4a7625fe948f300302047c435bb500673065023002a868b3f201601ec031b53abdac753de6c214870191f4248d9bcb2c850d2306dbd761a8102b98e4111cbd2fd567312e023100be65c329c8a0b79181d8d9d24180248384aca15456e07fadd306f929255c38a079d30e293a4f2756b0bdba475718798d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310088ddc466ee6fc0c0218d46d8ec71262723bf70e40e27749c0a9dd8f28469f51a410d6444962e03eb3c5ff1d9f30046db02310099c378084e97e3d29d22822ed72fd6a5394903377bed644191bc353a5311b3956826ac22b0b14166686f52bbb38e9ad20302047c435bb500663064023050e8094ab2977c616c69c27e999e0e8f061d63ac08ab8c93c99afe554f1b1b3a77b73b5be44738b8acda9252796475240230619ff0990d87430a8ea77491b6221f4b7b05418bb833ca5047a60bddb92b2897ce604976c584b2fd43a7c9eb3721a90d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301f5254a39c5b52d02865a796cfc9da74b00c300a06671d733f603a935dfaeea15970dfaa1a907d3c010429ac64695068023100eb287d3401213ee32ae119525becfa7026f6942874f06ba8c9f89159573d8ec1d0af94eea9f57217048593b05e916a4f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023072d0991631c736d50993135d992aa3c3ab883ee02b557d74f6b6d50b439fc0147fd6425f6dc00399066ec4d2c614e315023100b416f215dd7e8d96fe2ca3a11ea38983701015d695e7b8d0419187fe23748d2e6f4fbcb3d574064a731dd867c0e5ef060302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e804ae8e09c7ea034fda7c6f4d31e7a4a5b1a3f546208d0f753f13abd2a27e7e8498e9efc983f81cab09d051402323b302307f19f012b649f7c8a24c72ffff09010f170c0aeb8bb426f61f9b7fa963dc3e0e9f0327df91af30c34d91e3ae15217ef80302047c435bb500673065023100bc9d680294cb0195c34b33c884f6952abe07db1d9d81dc086c967e1c95db4ad962c44d13f37c4b1657715acf6747ec33023042b4285e05f6c27fab88983b20f44821595fc886746498fe10003676536246da9f137afa4a169534c0f7a9308a03a1ab0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303227ae41c3c29fd32795b54b0ca0c491df73e14a8dabb41c3751f5226e7ae9ab1fab24bc1625fd4fba2706c906db83b902300f9a140143253632615abca3ca3feffd6e92ee9883e6b5bb9429197ed8a4db4f39fda219a106cb271bec7920e372dc4c0302047c435bb500663064023077b3a015219d82bacb42d63d1478eb53b72eda64b71dfad64412d23fd9246a4763fdac433e19811fe586d146a0b47f840230410d77dc525edb71963a20c0b381357eb354081c09ecb380563bceb35c85b4ec6d4ef8a4db104bcd39f4362a0874f66c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502307e7c336f10fb0bd457a833902e60673aae5c1a2c73385fa622c27bc1a4068597333935af828cc1b583ed5180427c207b02310083cf4770e3fcb1fcebc425211a5a23d0d1b5903142ba3aa44ef31f7a5bdbad6e75170a148104c394d0f1add498a49fbc0302047c435bb50067306502300f736dd999178d3d93fc1d7b6e5ce7d191892a9231f99a76ed662a489a4f90e90dffb1d9685598de52a4a488d677ec29023100e85637d78d856ded006612d3a39072db387758635251c7400c60af1e029fd8e78384c0126e6b24fdc098dc224cc2178a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302d6d03fbc3dfa7b83c71e4825bdbe32f47608bc4a04fc63a414f02e1a0903b1e6c27cf9459a024cb2527d3c02ec2ac2e023074be11c0f890e5a27b083d28fb1315b105298f57e72752da0c0d59b7a2649d5b93267b96714c26ec9440012e49009b5a0302047c435bb50066306402303f120cde9ccb0b3d3ca506149e10f341a10ae5a653f9a6700521ca9fb67be5ca1669a67e875296d0cc6662a095d7819c02306bf2518490c1c5f8e79c05f3036e3f644a1dfd4ace77b3b079653e13a455543165a388f6a08944554a259573cdd879cd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e1e69924b41a66a211f3ec8e8b2ccfe9622fabef51cc0c7a81548caab6b2e5477b2d2c7eb38fcf2477f77d0bd7ce41600230106fd7d0110b03144a1df44f48a45398ef18ec531863ed2fb783d3c1c6d14512c6c6deafe64a22870f9f24123a9df5230302047c435bb500673065023100e1f6789ea52a0b9a3d751d99481ada7598fb3821968a8bfab4e609fcef00d21d0076df8e8b74457a909fc188102fdb4602306567155e4f990c58d2bd948a792fd933136435f9035c5961916bafca2bc21915fa2f491dce64a2e921d132b911cb61f10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100fdca58e292593e7ca0a0883b476c016952fb9be462cd2eb2173931bbaba6551bf964709203f347d6dccdf6cb34586e7902310097d1709f07dd172ca2f0824c77d82e0b40a376acdf5437877111baa95071f1721db1e40b0858ad89ee173af36f7f0eb80302047c435bb500673065023100de93c85c52fb04eb1a3f21553d7e858b4182d20ec3e21c3e2ad5126ceeef491f6e613a4ca32d918308b42e3ea470baf2023074dbc80fe0765ca10454965de55ac0204d79b2ef3dab2f01270a3e5272d313f681be07be408e13cbd6ac0d92793a5a040302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306a5134aed8c05e7606794d9097b48a0b41084ff31479810df0832c7afdffef73b16bff194fed95ce58de59a841c66a9c02302f7caf9d3604a61bc68ba100bcf46c542e3cda99b1977e4e37b59a735acd49f07e731b760413bb05223236c070230de30302047c435bb50067306502306270eb339df68835280a7e5baedc7db7e9e70964668fcb9e7387d3dafdac4f4cccd6c212eb6537f427f0c4124d618287023100df82e388e3c63997e5a531f41678500657351044bf9871ef98c444c9a0eb76ea40a6d33c588f3a9c67ff242a138cf3980302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f550886a3d6a64d06844e3fd956f7a37e30b5d530c98f77776bbcedcbe01348801b9265e09a9b70c16b6b690d7373c78023057fc365381b7ba4b28de0a92446ee5e058a37ae180ca56db961ee6dd1b46caffe35c74488a3603a77be292630b860f160302047c435bb5006830660231008fc451378396d0dbe22f84cc82f53b8bf46e460e11a45afd753c4a8f10e6b38bbf63b740f79b1b6e3c1ac908aab7de320231009dd7ce7de2b30a385f3dda0f85b134360ec4b1878fc007671ef5a132ccfffb876d37fd46841133210c57b5d1a4da71b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310099b3e6dbd3e6c2083ffbebae236296c4e385266f30bbcc9a9e7477f73951bd70c23dfddac7ec552bd5c1f6aae5bdc17502302d99751aad8b60a06a8fe23079c29060d1357e8a9754e4aa01958b4279cb2dd672038e0da458a2e9aa79522e5497aae40302047c435bb50067306502306a43608bf134c5fdd29706ccfac8be139abdb36d3034c5750f3137455e0f817523cbc3bd614687b7613a761401f4d84e0231009151c93d514e92bdf18a756bc14f098a26b79c99b0252f3600156cde9ad39622eef76f4fdeacb3df2c4edabb8c25ec6c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502307bc632ed4bbe0ea2fe12fdab4f5386bba8b4ca7413c78e35d6d4c26c0c3d323b93f9ad7a780215e3cb80c4496b5c0b42023100a05092bc100f96717795c39425f1d91dccb0c7f2efa4f3e63a2806649cbe45fe1d18b548f2e0b635ef6c2233e3a90f120302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a40b2a4cf4ef67a0111ab88132d13d94df78737223d87024023793dffae7f91ee4d56ec7b6edecace36f2b43c9ef204902300bc29d167d29ad06faafa432f061dfcb65aa636ffdb9b9192ea9b435300500e0aca7731fd4f85c54edfd3499d54b3f480302047c435bb500673065023014a21a9c1240960b464a735ded0d58a9879b773ff858d8d1a15dde2023fa8ea2e3ab487476f4f906ada04c9db1b0f9df0231008d5e2be510efb8b2de980e611faf32e831f234357092f208b274f88107a0207a2bc1fc1843949626ddd41fe0fdff3ee00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305b159e215f3afaa0221d0e14f0b4456d8e68bd5e2c358696e76ac9308fa19d5e96c50963f3994f706467be4622ad6db3023100baa190585517468952627e5cd5395b9dc741d307fac61c4d377dbc61a70c34aa6a7b573c676befb23978037c4ed2221f0302047c435bb50067306502306ddd6c92239ff2e93f2b5fa549754330192283488ca766caa55b9938b37db789686e9bac8615cb4e15929958b2ab97b1023100d07e083a720f14bd6c12e40874e5d15af4ad2448a6806bc29762ad8a9407f497701a737047f844aa46b9a9c0ba9de9520302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023031b181e35516e1b86568b89c312c9784c0df3a351b4f8230859a12bc7f260e7abff9cfa8dffd862f1635f74edeb377050231009047628fad2d6012e33748a61e0acd9a92f09c72391b2feb817bd589a521b6f5c62467834857335161f70ddc958734cd0302047c435bb5006830660231009bad923ba05fde596a18d40d845660946e02d858a739bed4a38cb4e41b392dda90ca67385bad3707bf06211443f43eaa02310093e1504457d632967383fd2cae348cecb22862323e335ab68087163b2e3d37db047cad92f1eebc4f96aba7b97fcd9c650302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023050ee032cc20df038305d086e58271624a0fa506f02839486b368f90adfe5259880ae515b9e9a8e417d66a7b2961870c502310082fd1f5189aa1396f6e34aeacad57d0e8f21fe6da539243a12350f7d7282853e427dcec741dbe52f4e2a6e46d6fd53350302047c435bb500683066023100cbfc595cbdf507ec868533fdb2af3ede240196103b88d20463fe9364d3222c255b91102b26fcc31d5096f53691b3ab7e023100c81f08715f46daa66104218968b210b9f62c4ccbde62242d86eab181e5b4d0d6a7eecc198c6a6b275fe95fc90e936ee50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305e7a579bd213b40b0f189f6a6abc98cfda556dd461b3dd35ba9d5be4ea9631fa3bed36e0d0f920193541f280b9ccdab3023008a789dcf4d04f1d116440a2a747a1c7d899b2ced7c069c03ada529919cc965574d0da98d697a6f87737d0377f3a2f640302047c435bb50067306502301cf705eed5f0ff24c61d027fb24e0722989ef63234fd4476d238e61dc5caa456caf288c9aa130e06ee07d310a61e4a09023100a5b1db29a75ddb93b92f11e7f2ac4416e061b3c015eb9d0338cea1202f06fbce90af163553e77dbb2468c9a1633317e10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023026652f6edd43962507dff320813156bb5bf35e8e006a61f44b637ff495ec231c58fd42e4869ee8de322db47957180671023022476274f4a5a587ae13e804ecb29e012187a1988e6bb999f2cdbbe461ae29a0fb947af95819e47434dd6527f4e33ed50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043ecec895c27d2e0f0169e8d3f32ee8ce4343d22ed3e7a59718a85c3cc6dcee09a5c7e2b44915a1107616392a9580fef023100bf26ed58d03ebe23b417346d57c1644e60865b54213b92e7cbe78ff397b8671bf106a683c3aacf68ec95b41cd9ac632b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302a73ad1277a6d996f796146b5a6ff5df852570fac83c7cd6dc4f8dafb05d4f85d42bbb354782d48259e7ca68fd02d516023014e2ea74639550b1e43df9bb39cd53ef49ce86dc8ade82d3f5e6da79ea074907b88da2351f64804189cf40ea307daae30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301ae9372e3ee9daa5057b367b39bec63b3df216e409cf7de943a6e2a6e1b89dbd54f5295496f41b3b76f6b8462f800f1702304ac8191fa93107bdc15dce7755eaa3a7c9c7e43531698f09226ce409f6c731332103280874df31f7c6da9bf3304f9b6a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a468c2941aac910ec6c3d785770f221d1a4f40c9612b876d0d23bcb59245f167a317281c3b85d88846e59d40feb4366b023100a6744e3a0933175b82a881acc5b0842e6ce97b8f3afdf09574cea7ae694122e9b9d9c9eedff8c3e2c832be635393ede40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c17ac832f0c20684e3a30cfa751f169e69d6cd677bc1cc3f90d20b2360034a89dfd84ca30f646fd7a642428cea368860023074272ab617852cff039a65f47cee03d17f92f868d006c85b40f8eb9c2d3bcc6c810dc74d66d97d6dad50d270e72840b80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e22931a24fd6bff31033727ddbd9c5d02fb58c982655a38240c4dafa1157f09e2d498acbe61eb1db4e8bb537cd79a5b002302cb09f690c697ef06867f33690636aae8d5f7b3fccb4289a08d7f827132d1f4ddb561ad489092d125942e7cecd60517e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ba12261861667b543a503c7357bed7e57d4daf74756373e29de474b0eec967e1572c4f816179dde05e66b3a78a5f056002306b25790bc89e02e737485ef426dbc3f64fab617845d339c85a64b3835335bbeabdbe7a3ac4b1469c73943ee9faba4a5e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008521e0e0914cc4beceacca795adfdc2bdd948703f0021154ca98516afd100a8860b62e0d1b7121a9bab8c09ac22f8c8602305e1343ddfff2d195f9c60c9bacb0e73686e6767bc4d22a010f584bac0313b0908c0fa4f3d93c774d634310a899c6cb460302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230254724f6a431916097102421acefd38a85dc4c6732f60e1bee7370bafb267c0e8af2e398958fd4d95d5d3115a73934060231008f4a421eab6fec85d583cb62e9416e3867f8b173ecaa5fc322116654b6ef4d7d0943ac043dcc142ae8e4bfbbc41a20c30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310093e2bc3457dee6947a46773aab7c427e795eb385f10107bc6755657dcf7dc2a3c06f57b3ff0034b09f8e59abec2e91ef023100b0180659967474afe483a6912fe506d9c9434c081d1a28ee3e203d3920c6f15f1d4dc87e399124869f49dc6e53ec0d2e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306b2a42e0ac58e87a474e1839a71d2cb6c1d391eee90d8eea2817d2ff78b33cd922105c4b394e055fa59ca3bf6e7a7b2f0230772595c1e210102784652ca2c4d28dd1fd7c364780baef02af0c50166142506160f8df6adda38e7c3ff8cad817c36e960302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023077db1a7ac450c8eff0e1a3afff09599e0cc610939e2a63a0e2ec3107faeaf1095748bc56899ed31a48c9d28fc27b8da402303ba7ac99836b5779c3f1d1078c034a1af8b57c3207f5d14908dd0c28adf002e7c13706826a2bdb2ae2e3b8b8a495e5510302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302a4033fbf86372d88d7420d4fbd0d6e27059b49384deb5f40fce8b00ac1f26d62c09212a35e02939ca0fa45ad04af809023006edcb3d9d1051193dc91821d7ac9b0c38d22bee3f55b2862c4d9e1cf82133618908cfb855cd0f344c1480e281b47ac90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c1e6ca6314cbcf5bcb0535906798c0b2315380a0baabecab49be4417c4c5bcbf7b1120f42ef3d5e99d86a50eb5ebc41f023100846f67f5eb807baaa3f7b92bc1a520415272d8d47d19ccc754957b2331c0cfa357e84fb0a699cee033474f860cc5eaad0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c39099ca4c5c8cc615d68277608628634f22b00a7ba927b529768a20b54d90ae31c65171eb1f0b8903aabcf9796510d7023037dcc8c01d47d0b392a08eab613037bab5a622a3b45afdd2fd1ce52ab4a53b5e81b95c10f203fc1119740fe62dfd5e280302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306ec2528f39237940289e39f4228cf226206b92c489ef5344d22c32a3ab343684ea0f7d973d0136b9c10a11810fb7ac3d0230563519fab89a50a1252fed13ccb4b02457682bf12b330605fb36d22e6272a2e19cc665fb137281a30454f257eea1cb4f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402304c6ad5cfbd346ab79ff990612b300d772fcfbfbf1af1f9106b0f90556dee9d23b0d13355db106c263fcd909fb0f1a1a402301dd17d497dc7404b194bdb158ce600e09c6484ab208182ac69195b9ca26798d97a738369498c1785d69753c5b71f42bc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d1007f85f230f1072a970cfd7fdf3052c16b1f3ab25802f294c3fe7115d7f1549a93cb9fcfb0298b4ea11fd6e28f003f0231008267f80aa3d743d5faa319a4bccd0bc3c971154f1863f7f64587b536e4ad7291b0c01a65aa2d248170fc73c16640a1020302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402304c8935717fc006cacf4d015c1a4a5238461c40d5b357d5e35fd4bad655fbb2e4f72b0e3e1228311ea2d9229348da055602301e1199743d4bbb19a5c987694ca8f7e68ed4bf5965bf1f0625bca1c35d7159740252984d4bc214ac1f94795f923255eb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230063bc828e37a278955ca345726e2fe09fc3c8af89bbf9f04c3f46c38330d2ebbc7a837d7cf033cf1e24ebd3e972b37df023071b3e2cde1829fcaf4075fc338fc4c9356079a6bec52645cc68a127d1fe3a4ad3e4a30184c67ab65c279afc229f6bad20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230683161465808402443ad09bafc1b2c9518b4c6f0c62173d78c7aa9caf3ba495af2d223a771f7ddbc09656543e603d8f602304119dc117fa425391a377db1e3d7cacaa8c2926301c474104d9214e86c7010f60dc4a6e40b3a6dd6c7a6272788a73c9b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023033e18d182c8ef89610a67723042b43643c74450571489bfd4ebc89c7b5544e60417743b1740e728f0c638d88115c9bbd023100b8248444a05ebb2a2469238081932bc9b6d9e9e4f06b907f9b7d7c3e4f87f3bbb149529eb8a782786d4434ea28843a800302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230603bc23ad2588558248e5cda3c153a82a881896ad8a4f035df05834606f0f79dc4b3cfc070cb20f430d4f77d889384d002302abe2c217e7515f9637352098ecd1e2a7d941b90e3e823b168b538d94ec6952581efdb359bed79cd536fb3072b78d45b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300441c0662ff3da45a4df91667f1bbb2997766e4004e9189e732923c1047ea28c8ca83a826eb020d92cb74ba4a2a7f76a023100d3235c41e1a9c7edd1c2b28b52b3c4ef463ce90c34fb93ac629135da61dff367554aef2143c272903be8c61c9142ed810302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100cbcbdee0d5842b9082d48dbfcaff527c146b1e69e2f34a6b70c7f634389cd5629f12188203a4e1a885537d6a06802f41023100ceecb5c3c41297d8f54cd71800803c1fc27d6b3e33c7b201e2f7ce97dedf58d4a7c9d364fae45038f423d22da1a3ed300302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023011c2ff721fbdb08071c2d324ec555943021c72dcac0b4c633edb967be86f333522d51ffbba7cd8beb89c9a25cc441aaa023024196fccce358d7f57e8360de413c4829dd2d805c93394e531302f50bc86e97d74a775cc211ded186bd17f2bcffe9b1f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023013cc03f21aca7afe7546ee3c003484de6e8b5e61fa400cd52b0b373adf2f735607040cbfabf0bbe88fa1a7ec65a332f7023100d8c722b83a84fecc388145185e8d12417f37b998dec21afd325009f9cf50c8544666c122267dd1decf21b04a873bdcbf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c4b3dc594698c8cd8afc9d486f8280b6f3307ca82990c2f17a1c20e5bbf0c93ef6962156e67ac6f96045c34b7cffbb180231008997646c627e476f781d326218d577a9e0c4b2bac33fb7c31df1be6569bfe0176ef2726dbb4dd2e4bb8559d809e3079b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023013c1acc3e24db60b92862f9ccb9e0efe626304b4474051ae9250f1df85c0690f1e3773adc4199cb843e74317caa7271a023100a27a9444eca89d97fdf5c73f7a5cd1ebdf1c5c7601e81a2679218e8c91dfd1a3b160ff2b6262b3b6dbc6e81a69801dc10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100fc45e9ec304031999ad4b6a2a57b545efc5b75086fc691d375fbfaa62f5f511a03b62b396022c1acd7b7842b9febc6b802306360a34ba8801ba0485b6b24e1e1d2fff20817411cafba67a403f300ab9c08439542f94a636cc7853a47cd519df1d3320302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100baa9f4300fe856c03bf3c082a0700bbbcef26c83240becc74db7385e6dcc40d6402b7e2966758acc04af6092fc4c06bf023100ff23b27689259a7ca9d9948f94f574dad09d8cf615c5b5cebac9484fa4fd47428a8206e5d7fa7f52ae72c61c981e39450302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301aa2b70b535a026843caeaab18b046fcf66f3bf4c74d28f848ebc43ab4609ae459529b60e97403ebf91a479c347e85f402301e7ed0564dc2075a50cd1ac04acda9748c772c3d7313e8d8cf87afd00ea032368e72de8cda18d3611cd754a7659f78350302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100eeda9bf867b565e134ab5032ad49d8c877b896f4af1f60764f6ff4e3d46352fbfdabe3baac5fb9093a3a0a6c8cb87fae02306d15d3ef42ae63eaaeb4bb9578de054556c29aabb597f2e2ca8e4813011072be7c5c562c55c34095995c49f1423018da0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303e9bcf2f05a64fee4829d29d5fdbe1a9783ff2c5890756d1a43f71a9c712999bf3c6216141ced2eaafc93aa7d66823ce023100bfc18f04d74c7018bfc69bf7c373ad28e27de505cdb2450e1057ee42a030d9f5fb3e1ddea67be968dfc5c90d5d3e40750302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023037509c6718fcfca653c07dc5640b1f129b89eea92cf142823b0fb60010b2d2ded405b88e3a5f41ae8e24522aed59abe6023100f299b059d0bfe1d234fac83223b8fb87d7efbefde291cc92fcbf27b317b6455f74809d55cecbddfc2be30308e49e745f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023022eba95debb72e1d28ab791137564db3dc1d38a36ec46d433e8c27553fa3155ace6d31a8775ca8e307aa65f09a804c5a0231009b730bce0eae8cc1de05cd47f898ec6401235458545eee68f4b31ec2a43b517100c41d3a0c8084529ec87f1258eaa0710302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303b7a80f948db4b0e717f2aa6e30a054d13c0a613c822ffb2e751fc84f18146f529e5dca55d1ede4cd1c5893e1603786002303becbec6616bb74b596465af7445fbb6bdb6fc6a08cf792b777ee26fbb3505afe4fb42c9e6f9ecf270a500b4b34274950302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230724c4c97840366d9d21a1e03b7da16e902816e7085e32163806425ce649251311f1719719a3dbaabdc240f6ef4424d3a023100c9ff74f8e6c56a954a0551b4f41a6ba33822980c7351d3063c714a046add4112f7c137cbf3bf16fa737308dbaa8f3fc00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230120396cd77bcf3bb1b63cfa20ff12d0270eb5d0b21379c17861d3d69ad378d2cece4114a85102a8980f21eb2a9d62605023079f889f62570d5ad2e3cbcab1592192ead5092d416f2428274f8c529ed280ecbaf7d0da884c9729da05187b6817c7ee70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306ddaae01c63512ef433cb138c22008aa8adb755422f077756534241b4f39efc8cab8544ba9ee3630aa63b3c94ca61ca9023026e2ed0959ccc1ec9cb0c117e9abfaab72dfcf5706538044d2084834ad73f619415e1a996b471caac98c1a6a8e6fa3e40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e81a2ed5e09fe66952308e600411e83882f32dbbdc97ad2ad96e448472b911db60af75cda9b79972ae9c62ab6cceda98023100d574577e2ff0d09709234385262c13fd013a2b6006f21e7c86217acdb92353b70a3e216d5bd343dcad375833ca4a74f70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303600cb46c09161890c323649f9afc3e79785d38b4500afe5f06497a3ce9595c55faadf5a4f12110db333ff5e4626694f023100c4912e1566684df48cfbddf5c57db04c8759e11ccae35f1a18ecf0a441be199ad768abc4824ded56eadced72df55dc260302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023058bbe733ead3d07663494f4092b148c493acce775b1482bfebfa493aacb8206797a3bd004ca528995a0539d3574936fa023100eb16bc6182a5734116f3c83ad5804d8a39b9b3d2995d558c73425069a65e805625ce6d7e00b01f2dd326226f4040ce2e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023050fd369f88f51ac0aa6a6b203477c64e6b36b2b9b989a4818fdf957443f98ec3cfafaf67405c9761bb341e499f3f33990231008d0b805d08e4a76ff3fc73aa10862e4e81c64d157b1116a61a1848ef26295ffeb43e4ccf8b04418117b5b8104c95f9290302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023027eb4c771f6ba8a9c9c3a5dff5fcd889c705794161e66a76cd6371769f3f7710eab2fee4f01fb14be95e0dff2f34e756023100cca83c406382706ab1814a3cd598ad649c4caac456297c61a514dc40a29e7a9307a9cfece91394ed95270026c61f54510302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023073deb716046b6fb10ce32ffd3fdc5dd4876a4fb3cc9e70d958fdfeb9b27573fdca4f6beee52720f5452986fbd9770ec9023019d33b55a50a4ec24d2621f2bc4cf8b69b4b1de45aebb25f2f1727331c8a234c495cf672a0acb28324114ca83f6925b30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300121ebf13128c1dea3e505ff2adf940522e84b484105311fb3da7ef4ad3ca2abd6cf2cc4c2343106b19c813e7ed9f5c2023100ad22ce1dbd95bc33b508bf2eb6c2da1aabcb61dd1dcbc57864e29a368016272b3e1c792a9d896a400736d4ea43b5de550302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023065c28fd83d6437dce7a94d256961491ab2d03788447db4543dee5727a46fc50f53e1d4f6a4033c9d438245925015bef6023100a95652ef877b62be6dda79ccda21601195ab20f84e1d4b1e4df2a75738e51b58713bfbed8bac852771ec77b1941eaa660302047c435bb500683066023100c65825d07b82f181387ec82336fb8bda8e4bd8bed39b19c2671951252a3c88b0324260cafcd07989308f231ab6936ada023100c61855cc05ef9a69952ae591b8d31ab6d9c91ae04c918399d03360295e2cce5d6cbc5b0b0a3911cabcef45c15a8b1d620302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306045f8b883cea602b0703b446a81e9fc656695ce2f2092586603d9eaf1d35b8d692724869c9777283b0da56ca6f4c7990231008cc3d6e290daf803243315908abc108b0d01ff16c15aae8fbefca02b4f38705c67cb2040792c9b61a7d8f47a9b0606ee0302047c435bb50066306402306dd481eac36d2d4bc7092219b6158d79a46597eb114f763c21f0b4a15f178f50ae4d62a643fc4619be93819c3de9e35a0230752d029e0e1f8799cd7c6264fcff4c933f6b039ac3d204f185a54d7f17566d9fdb20827ead3f20f4bf38806dfeef0d920302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305540edb4a3f5ee6557d54bed0aea2845faebad6ec00f1376ac728ef5b78f1823962d4022497b31af7bd7eb38634f7c490230759c268c8397f476b724732640652d5b6e32f503a79bc378f18697cea198df043b2f21da47bec3454ae56bad9d1484810302047c435bb500683066023100c251302444f24e65c10d8e68dc4cde8a3f0c16e467b668f79cc69679c74fc65c0f989dc8ebc00a12b49da1f5177ec336023100f48207fa9eed178890065513f21e3254c36f716e22438e62d7daf63fb80b9faedfa3ed254980f19fc72e7226c1ac7f5c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100fb36d6c202473e65b061f78a1845d2fe143dc7c6e8ec8ee2b014c24ad72e4206912b3ecd12400bd805c238f585a60677023059c5d5e6c6517b5b18c7d5f48e7e283f87261139fdfd324e67a05eacdc140ca689f7bae97a306953b52365e69e90f5870302047c435bb500683066023100c0207b1a1572ab15a7b478bd8a23c545f9447add58454bf751dbff838fcc76b36022342492913dd2a22435dc023b70d9023100b0a5bdd16e2d69d597f869b8014d5ed5aa1d870b3da4b2418ac57a3f0b79c2e6677b89a0e38f9844ba03fc67be79c1350302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500653063022f366257b932c5ea755ffda4d2d045eb244e266cc9e94ff50df6593a0e1b03f114d4b98681755242c14c788501bd15ef023000e80855863f40c60488a0e898e7b040e552a5e2562c8e7a7d563bf67af5afc646bcab679ae08cecdcf3a8b2e0e199390302047c435bb500663064023072cd9b4c8d666e0496a0af75ea2fbfb97946ab39b5f985b79799a071d43653557bdf60948b7931ee507f7d30263b84f9023073110bbd6f70adbe55fb2826955aeab53f3ae9f43753f2fd12608ea8e6ec71ed9c8de7ea5d3414e70386474709c1c4df0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023007b7164f9f8478db70fee2a91ca34434ec6a447377ff9deebe001030d65a13f6b41a0abb4390267597eb46c8f8acbd2b023100f8b8e520ce8e21bf7945de6cb290f7bdc8fba15cd6ee8e3daedb376c585581a3a65b43ea66a903d5d1d8f5952170f2870302047c435bb500663064023010de5cb9dd2589dad9450af4bab0b88630a2cca038b10b04a14d2343bc7200853cb9c872092e73835c1f022690bf29bf02302671a173bd20ae8df687f776ec6483d1348a37c5e4e7a02ed55b857f56d953db917aa4992dca35e847d98a78634fd7d30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300eba199b779b552dd2d3f936bdaf8a0eeb9c723117554cd46edee6fa2f196846c970f88ce28a975e21ec42343d9a368e02304ad13af51cf0acb45e1b78d46931b024a4223587af2a6b932c50820bff14cf2049f3b333e10a63d46027fa05cd6cda9a0302047c435bb500683066023100e8695b2e157806d4206a6f4cc82b16b7d0138de7e7066336b6ee91575d5c678aff8e99ec5d749872fffb67f333f95cb5023100d9103f3c84bf26d7046ed825570e33d0134b790587e3d16e1ffc1c8fb21375008313716c30c1d1392c0c92a4f0419dad0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023061cbfc4046afbbd41d0b3acdf3dd806f9810fd5795798b5cae0ade61184dce32ac63c93b84f9c8841d7fa6b736a58412023100c12c21f56918bf7b383df19699e10849d897ef4bf51310cc97e5a6a07c02d6f380ca8f257794a831e1d75d4e20636b700302047c435bb5006730650231009d0e2a8b8d7a3469437fc0a6b8da37b3dbabf7540b3086e577984483ae77c2c4fae05f1b9f1af272064bed7f68c29a26023075602618bd389c4728f98017729ca4842f8395ef94edd78f5efda493951f6254768f81d1762e2531a6c6c1f8bd445b8a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008dcfd2c8b0691276f326b53cc391a4bb0da01390d098fc6e1fadf10271bc0cf2455997213a00be839077e39f542d32cb02310087636fcda6aec93b5da681dd19e18dda6d08a799cd92cf3e63a67015052276e13a37886f9f1c00a13c9affcc2c754c2e0302047c435bb500683066023100a3e4d02b8fc58e9c20ad0937a9dd6f6bc3a747f92b3c093ecdfea9450452c6e85f839df65bdbbe4a0c9132624a454647023100c93cc850e550fde4c314af73149013c354cb220eb067163f6d2ee5235e435a38957a12cf8076dd392dfd36c39b79806c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100fe456b1e434c40c89798c9358338702282e063b4f13ad4ea8b4fa632fef767aebbc08231dd454744cb4ce66854cba405023046d5c9064947293e76ad09236b33b413aaeebcc572c9e0fada2a11dfe8d5bdadbfb623f53aa863fb31e69b0d629f88930302047c435bb50066306402305d2b4e14536ad9abbce3dee72ade28fe9cf32e272bb5dac3cd116389508c3d6c1db487ad89b56548ad9125da51fe912d02303f254ff04cce0be3c624bd774719ea9d26aaafb9a4dea9d95e77691999714b642f0b7b04b3dbafe858eb6abae80c58b00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230454417457f2494b8ec9d3874c4182e29e0d629d085803ea6921b4bd549966a65ed32a4a75aedfbb6973be83bf9ca7f3e023100b6f67a52faddf0512b0e20ce5141039ecf04a4968d25eb98817aa48b4312e0f59c0fe6574ce43c928e003e1afc5541750302047c435bb500683066023100ef774e094a901fffb45e579736833adcd664a548f9fb5a7efa7d0a26adaf4633ddbe5213c7230e48f897799b252ae636023100f4ca7163bfe1ca527a2dfcc1c7c39239f06f463fc3a76b286ab36d31b566b46074ee937b5ec1143c7d1b2a9e4142f5a70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023046a8e4d6b9cd7b123fb6882252e09d085600400e14e774ea04ceb5c74a2feb9b8455732283ee7baab32adc6ea0501798023100c0f64dcfa1d459b02e63b0e21a1bfe4d71d08ed4166cb4b5e3d2d4037241173d286890e2d856d9786b2bd272e38213860302047c435bb50066306402307acb32b98cd7bfc84a6b7cfbc481a70e6ea6b94f3f24a7bf01492ae47d8a267201bf1b0e02af5909c2330d2ff02db0440230024682d157bf4776cc689cb888c5735f4a41d10a93edcfa6f0762ebdb7ba1deb3a0ccfd3d0b8f7b6b39648b6e59a891f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310098d2969c7b1e230883c6295ed96318f36983a4a14e3663bb03c134867a5e8a5b9fe30fb56ca0ca5f448ffc76c778c73a0231009642bbd7d3d083ea5c59bc934dd9af5daca09fdaf758bf1c07a611273973aea0fefd0c609e6e37ab582e5555cfb7e6e60302047c435bb50067306502303f26378160dd4472db8c060ab12b61e904bcf6e41803a5c78fb545befa9bf4fa016467ce56eb863d27e21ed603962b0c02310096e61eecc42e199dfbece78feadfd5fa0ba332ab3ff71fd35dfaf3a5882975556b6390be24d1a2621f9fefeb7c522bc00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d17bc1b5a9d70ec82938f08a51ff8c68c08ae46ca9d2430e83d459c69fbcbc22d9ac32ce8d3ee2cc9145f42f5c5bba49023100a15d4d7accbc4cda286c4fba233d44475101af8d0ff6bb067f583cc71b377a72b5e08a33af66f8cb0951ad060a6157880302047c435bb500663064023069f69694447e57befd5fa4845d2ccd47f2bc281a0dc8d4df795fa8363161c1da5d83d9bfdce5e78b8cc8719bf3fcce0902305bf147c61b6a18c65eeeb70639ddf8ed7a39637a3cd26cdb65e9e888284467f4da7f117247c1950c7ca4f1348d3d72870302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100bfb2a522758a694fe6629414042572556559252931d61f9f67a293a6f250c20a8e30f2112c36da14483704ae6692d8f7023100b4ac6570ea24ffe20a3628cb68fb2a25087026462ea26a836e5da04103333a71cb17f1721e93d1096860c9bf61deff890302047c435bb500683066023100a4e49b683aae90f0b762a39875eefa03fe09bf6652a922b76b5793c48de631020fffc537d28bdc68f89e8c7b257e64fd023100a59063c9695928084341a754eeda810fbca9a3942b3066a64db3f0fc63cd9d9390929aa16a8a8c4c02b4ea336296e5e40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bb369dc36c6f0956c52fe181b9684bf51a2e3d27e70c67b292e5d602634fc2005718ecd9dc78cb43da309cdff5a8234c023034688c53f00a97ff6fe4574bcea7f73cfaf466ad8f9d30584ee70061e5523cc09dbb95e7e0838aa11ecc698cfebb65700302047c435bb5006730650231008b4c48a76e61a9b0ab58cae2aa560d85bfbac34e7d61142042b8f47b8b4bd3cd3286539aa7cfc74c84f66f4d83871c0f0230596f29f5af4c2a317c48bb9f2dcd492f37b288d75e40daffa86de018a475ad933ca31dd7209132ef3b9da5e5918491930302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023074c9f4af130af85366fb134065247e8ac6fe73ca93e678f240827a8437db72256ce6726665a1b9549bb75fea0706a80c0231008ad2bdad031d53a4d75c96461044a30c7717fd8de3c375c5c63a7a7560296d97846b6aaf1ed09b310de92d8553a017470302047c435bb500673065023028d173403c24da6ed1d516958e20fe3ec1085ab3b85f26a818787d156ea786bd5f532c23a8fcd21de07d72b3afdbe9620231008f1d5875fed31d26b5689df34b13e3671898a99cec17687e7a38aa591f431a785c7818cb92ecb18c88498b333a7ef2010302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303930e9a3af8960f58fed39546f984fe20e78fe9874a3f4a3dbb9f405332a68544a685540875bdb824f338283ebe34107023100d59d13e59b904e82e0a4befbfe5a3b56db1fd7276ef6d908ba195e1229bde9037892efb1d43a3fd3d8c9d9b79a086d530302047c435bb50066306402302ad1ac96ac48697d69149771c4f813e7175a1e258d077cd830718d0695757e0a8650fcad15fe46c7e09d5f08d52234b602307d30dbb1a064c348e87d5c951589357aad6f0b634d67dae16488de972e6f1099f7701d652b0c82bccf2357239269487d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100da8375d7e897364b82b9a9b3abc16a2454c0bf58111f86a80272d56b82264bce41f94333b4d356ee584d2ab5602c9a6a023100d6024ddd23622b33fac74ecc797161794c80139da110cc4fae55ca811fa8ac9906162c16238bc663478543e77e1ab0300302047c435bb50067306502310082695b85763bef39dd9104d25fb9ea1823174d3bf8608f6cb07db4906794c07da2346c0e3fd39d5d4ea26a7007c76b5f02306a61a020b4c05dd92d5c80ff895333f5437d8801fb7c781812deec4362e279ed61160d45b13286ce6c820d976123f60e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d6e344407f89e63f90d4f8bff1419cd3916f13e760ef333aec90cd48853059ec01bb79662444dfb42bad01516d796c1302310082389289d306342ed0e9cc993511a0720afdd2029db05ae058833473c9b2dac0a5f34f0fd9990958d3328df0f9d86d590302047c435bb50066306402306e09726d4a3f1afc4f4c1d1387d825d6ab9bc084e383c78063677bf35fc10ce2d12ccd9764bc9cceed5fecff5e20d8c1023051399f03154ef472e3c87a5bc1c871ff93847b3f534ab39f247658517661a03587af4683294bd765abd9868f728674d30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230130259ade010cb702edd9ef2dfc729025a1bc48e79f6c597acd0a3bf2af02ad58319a723b6ea3627f3ccb4989faed8bf02303282bd5029653443c751640f2a47f5af39c5fd74ee1da22538031a40414831b540e21e283b87f1eb7efdead5f9e8efee0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008a56e5133fab57f84730c53a3b72bc4436462917adaf4b1c01450ac701eaa675668291c5a904b630c5d94be73fff811e02303f88855caf2cf8b1a4cc4459ef3a38220d9bf3277a42f8e6832997581790ca122c719f7848f29960a2578e8912d75d920302047c435bb500683066023100eaa00ce809342ba17f2a7296d95dab61dc4a68b5dc7e430b701a75494fe9334e7befce2f39406371fd8ac3f743cf5dba0231008597c15c2cb37507c836da61d153838db3c5935705b73f87d53d736d20ca678c866afb315790e9f5c268c3582bede3290302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302e4333967b924efaeee8d9e8d0600e7f57c98d4086dcb89bb97109137bd114ea94b7e82ea4846fca3c799f6ea5d1b060023100dd266b3e5aeb191e346517d7bdbb6ba4e11c0fcef973cad419b2915da48e02b48729bb46c945beda77e4e6de6c9026190302047c435bb50066306402307ae72d49b8eef5d5bff469f8235a190fe3bceb41199e91dd593f76132220292308c6f6cb98ffb216cc025f1e185c03fc02305d4e7ba8f9155a4f99c229a117c20e46f85740b47480269b1719f3e80cac18cc322cc5fda43bbd225ac0df30de0e298b0302047c435bb500683066023100dbb86d4e38858dea7b7ce9621522749576b9724bae8f9073d4ca3a9e568fd9a10497d27a182bbea811074f8e8b173746023100f15cbac4fb56e34e2d954f776875b222d654a2f3eade4aa0d370330d5d777e9eb9642bc77af18873742bfcafa92358c00302047c435bb50066306402304eacd8f614fe6b9fc850adc5f8085a41a978d8b470014a712a4b7974a8d03516689b6ab83471d97ddfc044e3f344b08d02307d68c3f8b0040a80ebf5d934933a8294c784dd7e6be66b43e999b5a7177c443c385b55a30f1911951aad7e104498a9d40302047c435bb50066306402304cc3beb91350e1d93b55f2612e275678c823e1a214eca892e2b8706e974058522cde7732ce0f6c0a0ec4038c14d64d820230585f34e36937162bf45486fad32c87fe72ce62cbf1d5bb4abec25e045d9ec0055f408722eeb29df04452db6e7b7b0fc40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310092552ceae992f45c24ec20f1992b82acd0218db950dcf614b1615f6b578df65bf8db7504c72d332b6f3211b9cbbc349c0230221ccb3030c4e5979b7f0d5add58c3695446469ee7142de0f57d4f02295b8b985f6d0c7289386699b64fb485e4c3de920302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304c9125371259b5421e0c338fe420b16c8732c493d577bfbd0e1ae44d3f42c4c5b8bfdc542b18465c6c847322563161af0231009f648023f97deb6481c80d1926f3d979272065d74bf31ff9bafe7fb62e3813ce961991386c22c61132018136d2ce63840302047c435bb50066306402303959cabd0660b49ced852faa45ea9781040968612632060d46944a7c4952988986129fcf3a4aa7f5a863a5d80156650a02304e77f25e6814cd75267d472f7a9e8b360909bcda381e158269010d64113341382dd2be380ec7ae3d8551361634b3d0c20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304b327e652b7f213db58b85f28edc84d13604be4daafa2d72daf596127170f8b309367f6141b14d53dc1c2b219242bd97023100c3d06f809ff64dc81a94f33dbb62080bcb3f47650334d12e136e4b1e87ef403ff89e43a42006e93e423b2e3a8c78339b0302047c435bb500673065023100e812aa46f3a5b683c03ea747cb20384d18a3f1ddc5414538cc01974b64d4e7820625d50a73fe19af6c75f9e3eacc3bbd023018c552de5863ede3416888a4757010ee7218b2673e1c27ccb313da472b41e6291f4dfa1975d8c883b10197b5cbaccfd20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a8d31389cca81c595a7418ca35456977403ae60e6cedf36e19dda5338e7d4fc539184923d6f0942df25215479feca77f023100afc35c1c24f4996df6c154c40b8491ba4ba1b3bb6837128f616965e3d898d0cedaa24871ee195b88ceb2a88b68b71f5f0302047c435bb500673065023100e706772fc8a8e3f1c65ffd96f9dd040476d794f725ee02b1f4a484f94e8f71a11f1f4f563f87f793e42fbfe67c52b4e40230016501dfd5b18f4ee4fd961242a2d9522399f16baba9e62373302861ac73aab867f4db8db3aca397291d8614b582467f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303c3199bd7ac1cd8c4c7e76ad0977651a5aa08eef558e513d21c8f77df227a1f47d82af860d964b4457391b3f5223c6b9023100e53e402f9306f4462f1021518f128dc01695c09b5a34e0295d60a3010ede991d9c8c74d6c756d96ef8ae0cbd942564860302047c435bb500673065023100e10973afd465efbb61bae1d2d298b7042a92de193e63482877d5d2356a2b9318f96fa638863462ee033b276ce41f74330230571b35dfb85d366b9e92c52ce0ec31cab37b998e3120c25aca5703609e3199107d265a0fe5f3ac84969f23bd7c7062ea0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100bb07870ff0af46f85976d6b3e376af440b077a7c404f0bdc1996b0f0c277828bbdfb236b0f1c2e869790cc7e0cd618f7023100d58ce843ee67b68c6aa7fc8d80557c16d68037b5d8a37d492f7bea78509cee9146936a2112c5f80e8e4e74293bd7edea0302047c435bb500683066023100e0f9d471eaf8d9173b07106dfe2c7c828ff2399f428384a880d9673a2aee6227b1be31495362bfb9f22ed84d8d817390023100d76c252bef5bc1628988ed0fe775426eaba5d40b3e4248ce52355738eb6ff2b1c104d0fc0cfea5fddf09afd7156451d50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302e2c1fba1054878637b3ecb792d923d3e2e5dbd3cc23a806fbc26689104a856fb4ece9a349e192279701d2acfc51dd8c023100e844f18339a0afbde394bbfbc566c9cf26ec158fac345a098f28b63b1bdb517e2eb1f94c0219faa9474cb2cea0deb19d0302047c435bb50066306402302b87714dc6d5a2437e52cc2bf9e523f272684234d6202f079c780ae2b604a460d274a7efa9ff8d8eb0f591b58d7553f902306a98a90a634600a91fdd21978489da2f1f5e53e6d2f7ca1d49ca64c494381c473acf32101c2feecaf8a8491356e58aa60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009d1ac1cc4f2494b57cd51fd7113e6bab4b498dc31e0d73c30bb3514bee181d7e651ddecff97083a32adfefb7ed4c0cba023070a7f0d9ec34d4843ea584cd00f739344954b3b4f328e778d6681b87eb480fe7b3e63dff9d11bb7f362a7e378441595a0302047c435bb50066306402304e6f57088474ef99481737546eeea7e0eb9f5afa0478e944071affd2bc0b50972a3fd6585d15fce8230024e306301791023021c09e90b254c599b94c3c3dd35bfa36b99aaa931c7f94c68772ec5caf0186b33458dafb8f12de35d2f9b0d27b6674920302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b21c47e12752fc6946df6933864fecace97ff91cbd99923070e1446cc5f4af91974d8d7e62689276b521099b3ffb1f0402300e8a0e265657da98178f7450d47a6ee1dec62d4c6d96848979d19099dde93781b16c8133dd6347ccad5c72129f76c12f0302047c435bb5006630640230341da9d479a1d168fd0fa3ef386ba16e72e466a4b0ae7c5a3b223297f94994b12f05feb3781771b704c40caad805b7c502306aa98bda3a0f668464150b7f4014ec4368128c4182a8a1d4b2b09bf6365a78c45e5fe49b2cbaf35d76f6fe905d85bc660302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023027641557aaa5d4b4e6c0f70c008fab0da62bb5eca35a4fc32a05675a4bc3c33c87aa2d2d59e77ba8b8cd76b40c5ee224023047c2b39b5b7d9084a06a2f9e1bb65e6dbe48e655a450de59b7b140d2a57e1342c46bd355879f65953b3eb2baee040b150302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c27da47ffe3241de29c1e4091ce6e0d6673019ed020eea7661b6aa8fa6858c0e7869ff603a09cd030c81117323855732023100f071e355926acd9f7f132bcef2171d2e240e2bdc99593a73b03752e50867fc23437b817b2e8dd6f691f3aa1e790f0bf00302047c435bb50067306502307dedeb03081726f234460115579b59f2a4a22c002d37d102256e80a8826e109e63713652f1d3a6e26b8b71d101aea88b023100ddcc117a058deff997d5e98be929de376e76554454dd3a712a41795d22eb824d0e736c8c3bfd4559b89d6d262109383a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230471bcf87677b28a54b101a918612aec60967d72ff5093b9fba4e81b57613d102031206571b7c532a494bf70d547d93db023044054d91f6e0e2d24a1f3614f4863e1a204e64737d01c193a97a6c66d4a5835ae0571773e0403fc119bec1a0cb6b22950302047c435bb500663064023071761057ca41e6535d98578bc6452ff5f3e3f9164d03d4ee4bff4f48b58dad14a5b113674939161b0de992dca8a441d302300349733148c88c6e259394cf472b0f0fbcbfe27e8bcfd3bf85758e9a698623eb5993c08bfb11e3d3197a7811b00cd8f00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310097c8e11ae1e538085b07fa481e5f7f8f544cd23e6d62ae16b8d4300117cf06a1ce122fb6d2107da27c00693aeedb63e7023100a2ed3e0acb1d71a0f9af04d722eb61a4605b5a7d6757661574a70854bd4097cdb757c88ee5f7b6a8e062f6fb1699f0080302047c435bb50067306502304ef385c403d5df05c54491318b56996d2070ce7b65b52c2bd893b9ae4e4e04bacd91d9aa22669c156a6e11d3bbb2771a023100d9d1c6fdb7f76abf458c417feda757e21be7ba8f53524152692164c2254522abb9bb2436fa4f508f2665d78a862f19a60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f271719bd48655376171086d9de67fb778e34bbc72fac5c28e0040f3a207a2090fe0387f7a5d9feb44f54e30666029dd02306ce5a0fedc8ced4e6b10f50e3bc1aaabd9d155fbe099c381624cbec145939580cc2959019769efca6d9cf40f1342e8940302047c435bb50067306502300b28afafbd34c3cbae0b335cae9cd9056ebcebaea9069fefd8f731a40cac07744f8b5e9972c2d72e43a74bdb5f463a28023100cd1904715f9687a45d65bcac752803a9b84b805c90fcc24dda3e8324e9deb7bccbffea5ec406efa8fcb8b505cd9addbe0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009519983661655cf5f94253486a80acaf5bbe171e82038cc9dcda21d0f0b70b59ea043ed526528b8c85a59be4c20ae6bb023100a4f54abdf52052ef26cb82ea9f3dee092d5139293215b1c4fb492a9a0285d0a764a0c8e4ddfb29a5ff5cc9df8baa047f0302047c435bb500673065023100c2afd83639eacaf97db929b575170bb72280f796a977914998a57cee9246e6aa2b50871779a6e28ef8226713e9be716602300b3b19774bb0f61064ef0276a8f6717e7252e3b11a03145ca190ba8000752ba839499934e3d871eae5251ddacc32cc140302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f6c0a7452bd6bdbb5f1f61ff4e277d885a51d44fe09b4764c4e6af2fb53e987adaf1930f6af7f8624b33ec9c250527a902302dd004476ba67eba2994e1ce09a204da0b44361b975908d63905d745648fcafbda016c7c68b01410765e7e5a537e9bcc0302047c435bb50067306502305b4115639435ed4278785ef40fd80af4ff4fd89f9f38340352970b0a8ebcce3129e4b66b35fb6e300412e3f8b0ec56e302310087308de397a47eb9779c812501783d3ea6dee4851ab9fc4ebdd198525f6a072fc5d7378438bd58038afad46c2b0fda7c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302ad3212e6c2e8bfe6990ab88c4b69dd939a54494375a41dc0ea1be5560a155cc90fce16a9f2f45432912bfc5926068b202302db0dc3d0369e048de18469d5c56bc0cf693ea140cce0ff12e118f8026f81b78859170091b9988c8e0932e984e72f98f0302047c435bb50066306402306ebb273b9cf7e1c5525c96ddab802f2c8f0ef3d7b0696fcb12dcfa9a213f1fc9580ca06dbe758d548ef279b772987fc2023050a4bee8631c29877548d1ddff239de257d3a1a0086cd62b87342dd9edae52b8049f31bf88766ec2d312ed71dbf6b3790302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301830bbb7ad22bb9ae6d83fa6bcd69cc91861e04ddf15e9921d36e4618dabf0e400cf4e7cbe438a540bb5e9ca8d72c78c02303f86f3495b28b7eb8fa52b7852b1fa4193d89d372e14eef6e191f316ac6344a95b931d4eaf7d9f6d927ce2310553da700302047c435bb50067306502304c1d1522a03daa2c0533c3de867177f5fd66da054ccfe641526d24d8c0ef03493f87264e166f35e4a86c5180d78b5f6a023100edbf3bb600481861335a08e5bf2d67c95e1a8d223972cafda1804549740b366737af33906b37072f273a5bd585cd5cc70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230157994faad9284d1f0e28f50821006db38458d207847bc54cf6edda2314b41a2f644e7caeb2c6f625d80675a95acd245023100e108a4c5efe5e3358e94c654bc20b4f63f70f50851951f54121c2d36f61dd42ca60eca4f13ddbf722abb04d5e91da9940302047c435bb5006730650231009646ac8fb6bdc73264e29239d4d61c93694c902806361101e4b762e7a163e6bf02766ebc106eea71b822bc6d60a48d71023066bd43c02a2d8c277433ea7e53e4d5af6db25c68a9e28596f7598a2f014fc7d259caae2044267fb18200ea75367b61e30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305004f5fa9f4093ad5f94cc188a7488a4dddbb139031e9cc30b37a2cd8dc69ad69ce6f1e1259e1fd589832554969e2abd02304bcf7b58f45f1d6e10d32ca04e9536982649976bcc3c6e68e64e68ce80c51a8f4788bf5995b7647a2cb228be1695c9070302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230696b01767989af00fecfa8804445a2379a8e29f42d54e2a59c52c71902af50b59b0783056716abde107a3244b7995c8a0230448d3c13446b2412dc6d735cd22265999f5a5ac44450c9a9d63f69ea35067a819eacc8a7a9ccc4d68c5309ba099e4c090302047c435bb500663064023031cb4a54ece5d00cdf8ea8fcad71f7c718482b058bb9be77fd60b606c77c1833ec1511bba8a6794b21991d2a4a123ed302304535752396fa87c267c8a17db175e9f7aed40e996578984b252ad7afab41d9567c08b4a4713f0cd75a1bec34be6af7320302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100aff5f42adc260c258f53d555ce9b899775fd455bc5e5cc59972da70aa68c9772ea7c9ca18cfaf0ed07d9b6030ecd7a3a023100f5cd793d7ee1a2137e78e200336c7b7a794c94e3730ea608aab0cac1df7c82e277413602caf3ef3e707812a3979030d30302047c435bb5006830660231008a678ce86187d4759da8fdfab01094273ad0ae342854531a31b8cd9d204a4bfbccc4b0e72d0d2279db0779a89df4e3d1023100c8f5e03033504fc23b5c7852d89bde8f8015ca632b16048f6989b12f6a8cb61232990a8a523426d8c9803cf12fe3c6f60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230208d6724e78108fa6cf6a38e860a1adb2dbb5dc5d844d9ba02c003872572a3fb3cf603f829bbd0f61b6ad6e1bb9cd9fc023100d7b32bfaaed11154233937487096f7a7bce229ee9bb8aac1c77e8f157ad48fa24b0432a20a163d1c0a55361d2b6221c10302047c435bb500673065023076afea9d455981bdabb3e28e3208a3dae05291da81d6d3f0ed7f41f888d31efd36318a1f6665835bb57714d22f77e4030231008ab3449617320a2d3f47929d07a685673b274014158e2c07750a36a2627c84e8f3c918f84ae244f3752444d28a3ed4880302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230615f86c3a2e10a7f721a5d584fbce4b41e476de9124d8c626f6efe3afd86891c0c9e601e5469b4b477f4b561beefbe97023026840b8e121eef65c54feb4662e426af1623c6a82494b79dc1e537f72b9ca2f0b6eacc9752ce0709f05aa6b77982d7280302047c435bb5006730650230457bb5e65f87c3a053cbc697b25fd7a50a18c59f504853a68ca418ad493f02e6c1259c1d89fe2fe68f4fb422f238722f023100f07ed93bb5a4e2bdf8c115aa956f76d23f60d8be62af40548833d8a0ad7cffcf9279c4211fc69f3110e192e2e7e783a20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100da4ee357a1f3827a076cf1e5fae606f6e6ec14de518963318fbddaadf974fe83d666bfdadf0cec04b381ffe1077686a50230689f6b9188c2ef3c4df8285878ad67c03673147dc713a2d8662f0caed1779febd7f15db5d6c21c1c34c41b68e57b7f9a0302047c435bb500683066023100f44a952f8940f3a817196438264cda2630ac94b20b61799508bc44ce73bcecd2df49ac012719ffb8e331b6e9e244df06023100d5bc383cf628a05b1a25e50fea4313d475535486f00f17c3f9b1da7b74bcb0c04e0b21449ba0860e7454c8c62eae031a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310094e289a613a0eefa3e958fe8dbf424dd9ee1aaf490ef395dfafae37beb169331cfa872b35ab886de5b359f8de104a88f023100ad51456e53ab6331d5eb582748d3d27c866e5071700451f8d19df90106816b55a9979ae904716ea7cc7fc77aff567d0e0302047c435bb500683066023100f08caf1da4c6ac26cd6e31f0fe1074b090047574782b28d067f3bf2b80b2e0c5f4a17c4b921688c63e568106e67901540231008ccd0951060c8de55bebf36361b72c047b59a76e62ece69971098ab02e3fd362f5876e02e3bc523de536f08fe2c61ee60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c22a9e14ba6d54a9c83e760805dc1c2df8fc3e92b9c31e0b120040d2e26d368da009ec4ad73111ccd11b443f5fcd4df4023100e204767e1b7b7eb88031a7facf130dea87f0ddcbdd78e70b86edb1cfbe227679dfd4d64993827ece66cdff636d4282d80302047c435bb5006730650230699a5987730a562c326e2f794e7d9573bb878c907b3fe66a0056baa35eb13b5c3deac10267434b9eacc3a94998a4b0a80231008bf230ea8e34036787bef36cc67b859fe826a2f00872afc31ccafc70759b8ae66fe6bf13dfb95052a3e8f12b7ece7e630302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023042b6fd8e09162331b59858ed9669a3413c3218e0ee784664922db37dd3b04b81191e00aeee1347d5e6e41079128d93e30230454848c1fafb3899eaf0455df989917da97f02af2a3302300f932f480ce7049b37b4b712a48377db6d46cb0ed9a9dc2e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023052add3be2611c58c83bfe006d9e66ae4c01fca06bba02fae377cbc9250ef46fe4f6713788122912762f46b7880fb893502302126911d8d31b89effefc8ead6d8a010fa261f7c250e441ca2525aa9e240246aab5837a958fa4bbcae1a685a7207224c0302047c435bb500673065023100a22500accee545c4f14dd9596fb76bd46f4b084f8a77bcb5a10faa5f182068398ccd1cb544512fd42b53050c59d4f96b02300267f88230d59a7478a13a07c7a2ef226de56bed0782758986503ae03dd92f540c85159cd039498c0d5f61f8819b0d040302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230126332c40249908fa68af1e7a278c0354faae29a393051f8afcf0e21c715171098a4f7be7db50cb4b5d1eb904e07e071023043776dbc1cea3180ca5eab63d315a223ba3cc38605d905b6b67f535baa85cf5b9ba063f1f4234d5805d5d8d94cfc35850302047c435bb5006630640230072d9c539e03c5750c2cff332f432ed2f8a5506c8a45088f1310aa4a40e5a94a9e3863c2e181da6d3c277dc41ff0422a023054cb8d7af91fd870f9c3840cf6e549cd9c1c7c2f5b0c145764115f3e041bbe5b29723df4880b242f456a969efe41e3630302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b049e6b0253c91c587aac5a30eeb2fb1f834e40fcf61e5d6e594492777e94ba4cee9e1e3fc885071b73043686ba50b2702303de1a79aee6fba233122617483af26d6f624c0ffbc2cbb626896b06816a3a6c0804074cfa759804493d2f184aaf17a8f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ce5e7fb6e5d583ec5a31e1b83667ecab21637cb79bc5012d99d14a361ac53f6e33e1fcdcd495435fbc2218b25df6dc77023100e2eabad16a68344f807a874fa7a19049e69ddf145f6f38384d2a16d1ae30b71baa96bfc22f3cfb30c4f08f81312040410302047c435bb50068306602310099b93f0960c5e6925071e19eca31a01fe5e8f87346a43f0200bf20ecf14d339365f9153dd30b9cbb9fbd316a1fcfefec023100b6c0ceb70d2c69918cf3dbd958c7d1c5a6a3432fd565d351d4c365befd83df3eb648d7639a97433473dfba007b05d6630302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230177609429d144fa1f5b2b1b087298d170e5e975d2fb20f25956eebcd8b1ea4e061a44a40c4388fe9248a0351e6621261023100a86f5a18bdd27d9ffa8fb87b02dd72ca46c28dc1317454d576368a5669e63899eb37776ddfad696dc3bc29725d1a21aa0302047c435bb500683066023100ed8a8ebc9e64e90e294306f84702bfb25d15a1d06b4163c8b6d00589ecefc91b5bc0c172e2d3dca5ece8757eaeb62b4b023100ababbf0d622df941cfdb7e82b88a9d58c0fa830cb65ee1eb5e1f914412982d4cbe1796a3003254a35bbbfbce12badc0e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f1ab1ba67388f1aa8945b9ede0cdda858a4b3d025fd4ba9280507cb4b9620d0c92edb1b494520a4295a685b0acf15fc602303072b243819e48e9718b4bf7913539545429c166967386e87123068820b43832dfe0e9705f2ee2db0859193a8fe9be6a0302047c435bb500673065023100fd3d99d30ac55f66bccb33152c8e27b9f4b853cdeb4c7da699a7f26cf7f66e3926ad935dc0b2aa15c19d7ec4e58b617c02302747aed39961f01894aba85ab8ace2febb74741bd517fcff39d6ef9da078049c0b7d623bf649ac21702458d84163414b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100cf0705c7075318210e104948a0b5f9eb491316be3f3baed50b3f6803db1402512bf58e8463e8d4de14af2e5ef543c5eb023100d92f208bc6e3deb446c5990aa699b7bd31d906ab9f769a6cf089c197e524d0f6435a14f9dc096a6c1b3e69412e82febf0302047c435bb500683066023100fcf2f0863fccbfeb8c4fe40f817e92715ac23cc90db421c29f3ed881c40be11f4b1cc1df66eee6d558ae0f266cab3a40023100c64be665c0514f638e896491fb931030493f04d1bb60eeb40658d0c6e824397521dacd8a24c10829ba31d6a644544d610302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008163da99be224b541ec9961b5150ef33be4e8d8d5547d15c4318e1122ae34e67c2a2f9fa6fde0679c705634535be031e02301287c2dc572bedc24b9638765349d499b2a8f6854fce5d53b159611987dcb4f86c3997b1208771757e09bc5bb4f305210302047c435bb50067306502307da4bb970f1ece63ed3f500bcf20d7a3753be1269c4d4cac78a325ced479fee55123f5d49767beef00b170b4126d60be023100a9bdb5073416adbe67ac5a306d73b1279a53da85121b8859c0f14f1cf9b2fb83f7bdef125240c42ae4e72f2df4123a290302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023047213d72863afaf2aa5c28d4949acfd477c54717b52a6e2014fb3a6407e84f055637e47e6355d97e2cc9a448e6e29b8b023100c1ff946d9d342f33df59e0bfe8a77a0eaf82d2a2337e4037f62359e994154c4c90bd167481de6fcabcf39b8b30ceed570302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303f8e82022b999c743181156c9df83cfe2a12ddec9a467a528d2d11ab9df9beb92d1b615031857e95f4946f1ead0b6ae7023100fe043bfbb4a13272d35feb19d3e9e809cc76c0bbee9747cfcb4053607553105bfc5326e240aa99781e1d22e5badf81110302047c435bb50066306402304882b3bbdbd18fd268777130f97bf2391c53421ccdae45b69e23cf79ed7551f8e3e7c3057676c4d5085d6100e6097da3023002e79fc74a2de47f83206aca5d41085a5781a4d7bfb52b04923a1b63656f2aaed60076db69b665faf55a0d05f1f90f6e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100cb63afa15e79752e89dad815b10c51087ee170ac2bc1206ff02790a4f68b2118742fe5658f569da684bf7581d8cd31cb023060032ab2bb96a06b11ad8bbd8ce506b068347c039d1ce0f73d1b891dd2cdbe042be67c166634dc13578c7397e269e0110302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402304471241e43758edb0157fef4d4777f46118eb3b9a9534fb239eac350543f6decb5074b896cda59291efc6e48d61a917d023012aecb84f211f32963ffd709274a12e7c157ff643bf7e29adc3f0886c9b7fcd68679ea47251c94c599022d990e9812530302047c435bb500673065023000f0f64ac5e4c487c08f11a3ec710cefc682d8538d56aa0b9723dd58c73f0123bd70f3f7919af06b165960bd4c318a80023100a6caf89922e31d91adcb10c6dc14553667dd905fb142c165741b0da349676513f217f65a481526e7896aaddfbfd91f8b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023064fb7e72e889b8631790121bf25f27f30778ad18ee6fe3327a4257edbbd79e53b99e9af511de83c9fc6f0469b955f2cd02301fd2391695fa9e580d6befba2dde3b70bb405ef093eaa3bcb45d09a9a1a798de589fa8e93ed34e73d14e77b6fde619d70302047c435bb50067306502305bdecca26a9961a5beee5c39f906c2d1d60dccb3b19d54a0222d1a13090afc988cf45307670f3172bf952a46f3281aba023100a6a0055c02cf371ca64bfcc1f5cde17fd0faba705d74f65b08fde89f4e200f6e3c6fb8e520a729f4c49e58f29672bfd80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008508665db64885404393806bdee794fb791ef0fa1c92b0e5b729665db7b2fa30ef85aa85c43a11bab4b9cd45fee780b002300a5c8373f6b982d0123a51e0f755fb044f1d1696a5f97b022c953c9dbad9a79282b1891d34cc81ecdfd214169a4683d00302047c435bb50068306602310089033d791b30e110688f5d7cf7b519a85350b07b86c148702694b813f989c2acb763f6260012a988e68651cc848d28a9023100c41b5ec9cba6a528f39b123e9afa20e2852876f0fe8678a13d1a519676be2c47116368a83a4d444de7d5c4b6d256ad7f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e7377fcdcdf6978df64530a5e9f92955fbe4fdbc6030e2b35cd08d706c21e9058ee45b036d6d7de702b5db267217aa6c0230775a96ebcea28454f1d0fd5189c507e076c19bcc4221fd71e33fe28ccfc587cc904cdd795d10ea621827f91a82e10da50302047c435bb50066306402302443c5aaf411206b736a6981b0ce47376f63c6fa632c83c15fe1151d06a19a61189b504505771c2c69b48cfef660881c023034298c0b2d6effe99d1111e38844d9ba826e66f18dfe5db712640021c0498225d2245fa1735711b0a6937540a8e43a7c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230213efdc57d2195f3f4d10bbd177a24563455226b9c0d3550d361929acf2ed7466f78f809b48a85d8f1d4477d9a2121cb023100a58a37db65183993274f6d40780386eea7808fb2bd0ccec056192fdaedd2647f007785f9af0f5d457f85acf9a74eea830302047c435bb5006730650231008b87c908586b874a70246b0d219723c23e886443424af8074d7a4b66b2f1d8e33fb0ce03490f1bdef70c2dc934a1fb010230351ba9aca36d7064dcbe4799ca73bbcbc76dc35281f9d6a3cf079943e04426ba71bd589816ba07e53bbc34e4586babd30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100eb1cd8a8ff0c3c5f30684ee9ba59270e43bc125f053d2fe3501fa09d280ab517b02046c616777efc062ce24dad0c49ec02305d4e1ab4d4b9c268abcb8e5fe3730876e891879e9eced66f0296c1107dcfeeb587d119780d5878fb57f99dd5503b80110302047c435bb5006730650231009e262f516f29d248a4a72c0b3e0f6fc3224f6b8b2cda81a9f2b1f02899eb5fe8aec3da9ed06f290cf0c69fa0c67db1e902301db2d595e8be5c36d3f384cf5db36a14051b4121f21e5ff342ca49ecd4c53a7e691aca6b832da55e9fb0ba3a963a36ba0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300f9ff5ea67a144396e1774ccdcac9ef8bf88ea49d799efa58608751eceb615309f040238b862b753f0b41d2160935b6a023100aac4a8cece0703df813f4b27b7022b8893b6218ddf774c635866caf8c15ef31f191c11387be3e65374a1fd501d2552a50302047c435bb500673065023100cb3d3fb494333b4ef3fb03ec4026d11277f59e0376e7885891a7481c7dea82a2be244c5cda1986b92cd81cabccadc2830230080aafd921f6c33487c0ee9cd778ced6be2fbae2be9ab158ab7d31305fa22a142c4e66f70b88415e72fabafdf561bed20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023027f921daa7ad7fe1c9a7a947baa3f6fe74e517841eea8012ceec664b76a4bf24caf095c9a155f41d21aef271dc555807023079a08c2b3686139a9a017f111f448191d2f52bf1d95e81894a32141bac8d247d6cc91cc7e514cca221f56b31815c66c40302047c435bb500673065023015b1cd4b4cc6826c355805e836a3686745f8616063ff0761f268786398714c7fb45c753f9b6d877752eecffe9ec491fa023100a0a6140261689cc288ebb7f8386f4058b537a9594771f6b3b86126cd36b04c1f781dce0be275a9d555a56840415500e00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ccc148ebf412862de109877fdac27abd8ca0a7734622cbc414e54ccdcedb36fa7d4620c40678cac9032f2404ca9615fc023100afd584e3b8a489dc087cd982f4147cacd70d173d8e810d67bbbd67de429ef61ad902033bd456985d0f640ec2c8db8df00302047c435bb500683066023100cf284ef3ef0b9f120fdb68cfdfb89af06cbf7110470f7d499eac2cdd96f7af32e1850fdc933ce60b99ba0d776ae2c72002310080cb1cd0bfdd89faba9780f5912a1732b3efa6b836db97aa294373beaa793b709678ead99b5bd14ebd4a26dc0fa7710e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100bd07f51f7a5f43950a9697228d44bf04a8c98536fd8271ceb434a0e85d95c2056e64a355a5333d1e55833cedfabb5598023100985f84e43260c48b7aa0627a400cb8f199c3947a8b96e338e1a471c72d51611c8a4f8d4c2e4b9743f51fc9f01f6e99f10302047c435bb5006730650230581e3a24e1cc56ea1730b9d56f4da24d6e325f8ba9a09c4d40883f2d7b8df14e31a3da25c31f6663d65e60910a657bf4023100fb9c0b292a850efdcdc6b366e20cf9ca7469e06b0a24290449723d9ad5c3e96b7aeca5b2fec7c9a2e0d2f8c105c125180302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302aed5dd7ab621fd03fb8de6ff948fce9c2ca170ecaacc84ef5d849e1069ad5324a046b945f21240c2c1c28d15700d23e0231008c9e8c93b6f861ea2455da83d6dbc0b998fe6da0217e79bea5abad3ad2728128cfbeec683e5dfbf4bbf0a584727a59860302047c435bb500683066023100e36acb403c1cb8703cb222bb706079e7b87b81a72ee5da8715679ca4c8c4060627be043cbd4594200d22d757f5081fef0231008e2120b23f42c6d61df9c0f9a37da32f33dc4405abb87694320426c7065012e838ed7b7d2e0de0f9916592f0e8b6256e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d0fb14c6d9e3e905c66e1043980706e9e4b115ae2930c0fde669bc47e5f122ec8252a507b8f2e7a4f5c1a3a6e9fe42c8023100de4f08b75b328b1abf9906c848f7a0acbea03efc6993fd6963bdd6069e3a6520c8c9df335ca6839c1ea2257074f2b1730302047c435bb50066306402303e8dec78813203fd6f3956ad6c02c55c4ae7356e1c2231dc3b3414fb0fb3e97ce9ed543b62b4bcaab86f65ea79d1b65702306c120006eb3bf47998ac455ba555d31335bdaa24ee6954f47ad012a02c4756091cc76a6f04510427ce522116602754be0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023075875439b805ab9f2d6a8a0415824898f8083ebccbad8661c1f427174de331bbb18ea2b07016ce47b2c496e1830ee76502302f3760ce15e27820fccdde3091a2c7a3c1f70149194faf74d4538700a93fa382762aac878b62470ad50c80592157835c0302047c435bb5006830660231008792e8df8fd9f320a402a5e834add6afed3caa3cc1adc90172ae055fa16e862842ac1ae7ffb840867ba997e10b9925cb023100ba18248c3102b13a41dc87d8e2fda3f37acbeac08d334ca0fed96824cc6f5c3b470a4f1c9f99393297ce0eecd980eb200302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009d9ae56227b92bbadf89bdb8c417494c67fb68ebb1f1aa1f6776964d710e272199d2ef784962569dff44f6f86c6f0bfb023074472c0b2f86c2f9389ca49df678782815603fd20f0e15eeceb62c2fb191ee1d12c1adfaf24394444eb174fdde43c63c0302047c435bb50068306602310081db1049f379366ec3610a4c5006d2a41f3d928cebdc29c13370b498b127ed1c8681c760bcc0dedcf2116bbbe219fe730231009c6ceadb65ef8428447fa691af8b119b4008e76be05ee15f5f3b01acb8c20eb7a3b8ae8b2d320d57ce53fe7daccbd7830302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023012f692f9ccab18fddfbec82761829a4db103ad9b22d2604ef5c347d73e4cb07a730bf8ec5f7e5859455dcde4da4e07d5023100f7e002682d2a4fae0f0ba41b945c894ef77fa6cdc9c945a505e1a61a8ef5d3169024f9453e765e0305ffe9a740527cea0302047c435bb500673065023055970e7d781ebe0d71441c59c5d0ec60a65a2943bdc157d8e201603d7a8a50c3e7be27f25344e0168578232ba3cd0338023100dff2a7d05225f724f519ed839fadae2608fff529b5065b8d675e6eca717b9bbc24565dea9c6be242d0be7ecb0027dc1e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230669e4febb1c9c7acd4affa41620f59c9fa08c4ecef95361daee9d340ade9689850a639650b9bac57e64fc58bd28bf684023100f91c73f281a305374df2ce09171205964b690655bcd68bfb8cfe6242d408bf32fb4bfcb2f9953f1e68284dee2930e0b20302047c435bb5006730650230306fd2858e60f63ca43ceefcb611b6fc60f5807a17f1d69283cc9a1bddc00be4ef33e32142f924f3b22b9fd78746892e023100e6871c511de3ddfb55309e49ac856a6207cdc163ec315be28431d74c0d515f8285818115c50e8d750bcbc13f8845c8b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301773763633d68b80491ecb1bcc10627875282fab4a8c1e1cab4675821d0cafe470c2c24e6e315c855fb989f37bb84ae102304b9a9497996dd66d31ec2fd955dde8625c85580ac8cab4064fa261614178d16c17209414ea20db177d538a57537e7d1c0302047c435bb50067306502300913a56660ee9b420b2379ab2459430bc0e8f6ba910551fcd1b896adee8f1e725e57083f0a36982f3d691b8d0bb5ee72023100ff7b0a30cdaecf17d42e5066ad92a82fedc52acb0f65ae86d2708cdc6dc2a670b562a9a38803f80b1421a5cf308bbb0d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100da109cd3841fa86a417dd39dd6a4118e4507abafc8f602a8c34364fb57515f3e9d55f29b6ea4366c4b5bc11715693bc7023100924c36e3275d4872bca63e7814b9eafa348540611a89ae8c109baa69cf037985026b0837cd474029212f57f7998296bc0302047c435bb500683066023100dc7f4b6ca5b72a0079a4d2eb98da6ea0486b018901c95bcbd84827cdc63ed7d5357b4eb5005932247f709ba65562ea0b023100db6552b08d8b7473e4cd91e75060b2cebbaca6c42f9885c69ee2ddff3ac0245e65d8a9ff3617c3f78036947b22cf637c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100bb1760525d31f5a821e104b9f344e6e21db0f3efb2d4d6bce11540b3b88827a3aaa0ec759ecca4cb48cca33f99540d14023100a6fd3ab0c3caba201a750631c913c415b03f54a293443566308a0ff82455b970b69371d7a5fbd7213dafccb057e003d40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310082931c77822ef21dc6459e4dfb2115b244aa019f4d0d7360bff9a84708f9b7d36ff164dfec32d13271f8c4c1ce063e72023100ea93caf263a0e283d0621060e2f15e8379520bcc35f0b7f8af223b1a467f89791add03d66563723b22429a3aa171f7410302047c435bb500683066023100ca971661f1a0aee50ebb6dff1e7d23f35fd4a847b75afeef3c11c00b49ac6ba20834d922fd147f79bda34faa46f690ee023100818c3981081ee87d474b7f26dbcf1c56ed45dfa6a8d922fd53c3a32c445fed1ff3f2c2d78d14a2f30ce64071074976e80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c9d9e0b1032f4cea31cd7fbb661c2cb512fb779386e762eaac62ec1a192c8788edb0dbd8ea2ef6d51b67796a9b6d49b4023100940a882e0c52d9945b7ef91873538f7a1faf939f9a1a6446411427da2f3ccb16b1aed9f1ade86dd84270b9001ea57bee0302047c435bb50066306402301687b6d51bdb8ca9567b887b1c0f5985dd0962e033074236b421ec73f4192d50fb7cf918843fa2da78057e8e472243e402306a4fa78181e285bf27ec5c921a510bccea9dff847d08c1ae22948825deb29d6083e2745381915f100ac0b6e5f2b12dec0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100860fb37a3cae45e0adc151380bb075103d33c3ede3071163a8279bad1821f1af89238107d87a3648a8a3b1f229049f3202306ed7b02c2058e019cc034ec48f2c75c3ebc410cf5c06cce886c0d705a6b06ae37f9ade91379f206d2352af014466f56b0302047c435bb500683066023100b838261951f02752452d06a847c6096ab9edf277b16549f6cea2100f8179343a35307e2e4d8bef606d90a445e5202996023100abf9c80a525e1247955c8d2cc5a3f33734313fbbebd900f2a009153e39d124bc2c9bb453ccaf55006cfbd9cad0d7054d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023015f73697db37c4373703a0cebd0d38509b0166a1b78db7e64edc5b392acf526d39023d43bc406c52cc287003e4b54721023100886280dda7afdf9bf0e47af17a70ca1357777eba3f979f95137a7723d5e75eb917bfbe64ffdd9b23f5ef8e4dc0e7d7f30302047c435bb50067306502307a22438393ad8dba11638f603ad4474ccc14c390ebb98581c099fe03295d8ee3a5435d08d6d41aa9546d37ddb5b34621023100d2ce7593bdcda9ebbc8da26610db3b0886cd2bf5626d6b95fe4c6a44738f73d3b77e16e0b41082f7adc8dfc7d6624a660302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301f539079485ff923f01021966cbb1270ffe46d168d9ca842b3ad1562c30f3364eada22ebfed5f4d849d2824ad865ba1a02310092f72e243560f798c36f2619294b21a1b1aa0d4b329060075f292aab23c6f898fed628893219032cbfab7bb83fb59ecb0302047c435bb500683066023100f6e3f5663f73427d7104814f2e75b85871544e878fe4e89878b123a2fb4060e3cbbec8fe04b19cb28b0b7da092359d590231008fcc85a65da8211f4b87d6c2cb0a4cb718291aa58032a01e7542cea35250e3f4171a63475414d7b4ec7e8204366617f50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a6ec737aef46cd3f9a56f4c930e1a10a06a3b4ec0eab0336a9be4613696b142acf790ce0dc8cc8ef9defa96ae34d199d023027fec5ede27874fb671449bb5b878afb8653c5960f55b9b5291ff91c6f127f5d98dd72a22d15ff6efa1c79f62472feaf0302047c435bb500673065023042efbf5ce4c231062abddc94389e9a67795a5257f4550856075f04e82f49d6e28dc25aa78314dcad7efa89a59ba556ef02310089a1e73d6249c24ade0344f641242451816f80ed256e6682915881cbf0b5da8180af2822d770e0f5aae0df636a99cbbd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303eab3c6f5a0506979b1f4a250ec6d947508d49c237d4469787b058e08f47d7bb067f4f8260c101f468934ddabacb27d702304a5ee5c8872758142ac72a5d39de0cc1c627f6db736930256eb5519c9a490c7bb1100c74cf705f879ee806d974b9da990302047c435bb500683066023100ea0296182b32c16827b5b7b1ba6d2300b5869173805509ccd03e4ed231ae433b058e4eea7b7840bc935239b2fe87ab800231008caf82208fb5082f47567107c07de44c075a5000228180c5c17cd275bdae981755200cccf2b9b860273d4f01ae6aa4270302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230466362045e736f978d8bd42b9250eb5484f1d3d779c8f5163a152d7d87471a6141522d215c0f54e2ae3bcce3c934cfba02304a4e3424d0fadaa89b2394b602d04a01531de0b32c98b9176dbe8e3e044f7bf59dbb177cc3ea961dbf0357c20a6782b30302047c435bb500683066023100df2a451394c882c530c69f8e082ddc98f880f5c39f8d7a7d920ce2d7f6d7c47dc27d88e704b311b137ef500a1099a3cc023100c915fe220aec1f3aece44acfce8401a0b254d6b3583d1c533eef1ed3f5754bfea0c37072901bc1f5fb50ff6499baf31f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023003522721a40edba9bc14e8b38b210d14ef59dd39585f13ff2a6af3bc2e00e8d469d281aaa0f9fb9685f776a53b2dae1702303e2740da005ed87e89f3420ef696d7e4ab1646708c7d7a7a87090ada1b281a4d90ffdc0dc2a4b176389736f0a32a73150302047c435bb500683066023100c203caf4ccda07a60d30773e4183d8ebf5da2bd1acb8fea126cf25750ded3af7950e1198c1d7ef8d08adb023efb8a77f023100c3f3aaff2c62a0ae22fcd843b5c91680d3b53a6335baebdb6d2b0a3d1e2482371670032eed5dbeafb0daa6b33881b37f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302f7c0bcc1ed216e3cab84853a425c20632c34b4a028aaf5f4a258f8560481885aed5318db10bbcecd55aeac7b5eeec5d023100e96ca51d21028ba22c21c0081b75f3c679d5e372161195539cc698c0df0cc4d4786f5d5fd77904fff4d89b780762d4980302047c435bb500683066023100fa3f168e73a52ae03fb65d51bad075c768ed36ffcc45897ebcafb9f6308dd145fe018c8be2542ca44d21feb931b5a4de023100b97af176987bfec78aa4595b67124b43bdeea3339d5365cb6e124fa9771945c072ca2d9fbe37dce0621fd07b063654360302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304488a61bff34406183312eea4dd721ea2def2f802942b4a84de6b23e70329192c7bfffc35e2977d31eb1aff62b5e8804023100f608f0a6d1b528b7713ea430a44f9f7b7212a595431e247c25be2fa83d6dcf6ea5efa3a548fa9f67354aae29b87bb3f20302047c435bb500683066023100a13f110fcc46219e95937ac9e6d01def3d32e64e95aba062c86186092734788d92fc93553ae0760c483ecda0736355d1023100a29351983493e1bd3b929c746662761fc3e680ab3f7119fc5d992197d3d8ab599f4e4eb0b3fff1b47282335ed736a0860302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023059021a38035dd5afb74e418162ba1b1001dae55d44b89051fd412080722d98aa5844d23d1569cf46d15e6e851e64e4d202310095d2bdd2e1f2040a62425cd66f87c35ba2c473eebeb4bfcdcea647b457d3a4ac3e842465df75d7f298d3d677ca12218f0302047c435bb500673065023100c2cfd4eac22964616f32df3794a89be1c6dc63d254f613c4129625fccc534e74612f7915a6b8eeecc552aef247a1e3ee023048efe18aa63472624f7ed243942a509fb2722c378380c3c3b1348ca635155150bac1d8f4f287d34e1dcbf5dc6ef719590302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bb3e885a85effc4934d59eb39c095d6dd014ad0fbbdf00bd372e11e360dbcd57c9c943a1ef8d1572c728a084f138aeb50230045d1d58d8c6c81343641ba6dc3acacd1b2dcce1d94ba6905916bc4fb604622a3e800293cae2e5618456b4ca664ef1220302047c435bb500673065023100f97b34c92faa754a3ac9408284670f24866249ffe326fbe07ce79e8e6869e9378f1d806819dd304e607574d313505af5023053671f686863e9ff0a2521fa5a1e91c0644c110cf0f1df5d95eba712f7b646d4d5a3cf973435fa8a8301042b4c5e8ffd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306962b9d2d0210369a37acdd5abfdaf15d355615c47b358cb3997b175b63cc6209bb51b6694bf581548f2a46570faf77f023100aebf1835a36102967c2ffd35e179377d3674ccff35be8324f88e32d0b0983c8579a4532c6e6ea9a9cca4d6357578ccf00302047c435bb500663064023027a75f95aec7d54fb126cfebf579b711d619609f1b5fdea1f683b87f1c2950214cc5c562a30070cd5e11f88bd6e68e5f02304066641ca39234d739c56ee8712d155689ac1f6494db3a8b1958001aa1c747e0625a2aca09fc42d727a31f822cf67c5f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023016ec6a662a99518fe1326f9077e297cf1d757fe2df6354c192a6c431c2199326ac5d26b1eb073390658fd3b470bedc9e02305176dfdcf98e7a53846f292b6d625830c9dacc3a4d78d22dbd535878596331b19af8fce074445ca1a2973f66040fc1e60302047c435bb500673065023100e56518efc8634c7e1035c06faefbd051509eb1369407a2486f8f2cc51f8b12e069e3b5d261652f15363afe74d2bf139102304149c6faddc64e8c4d574ea28fa391077b8cbdf88f675e875a243bc0682bac88ff4693334a25e6a59501bcce60ce11660302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310093eea707b98645d24a8ea46d2bc8369db4ef005acc311fd41aabc45ad43100fbd1b8f80aec8410ea918c1310c057881e02305ed5b8d8dffa50567d4abf7bca480ca8137e967582528f170e5f9af0edbc7c548c2456840f0d0f156d8db0d402bd89e80302047c435bb500673065023072fd193c0b3c7605d4812903685bdd070bb5130b64c5b8c8083c65cdf468029495a5a1273d2e1debf98eecb91b0f05480231009710797f918739a6c1726c186b0a5f07e3198b6536e4100f430b599b3501c286ba8a214dfde0a8a6ea0d30ab67ca598c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a6e65493a352a8b64dc17f65ec1c1d4c3c4f1c857cf890bfc7a217b808e7baf7f4ebdb7c24ee82a4df44f2f0368d755a02301d12c14050e2a4b8f2c3540be76c33569c8a8b327b2ef82b173098d4244efca115c568bc60422ff89526ba9f8a7a9da10302047c435bb5006830660231009ed68c772b60cca1aadcebdab3f40596f25a918f5d6cc28f578dbdab1a6bb8b4283d21446576fa9c81011810a36602a1023100b1b6e793627205700bc136acce330e9a0d950224fcb77a09d381d5a93fe0f3d5c4cf899cf618d5140fc9ba631728fddf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023053a73681d27db8179665fe5b6ff9dece09f5fec04f97c720193d2a2828cdf2f2bc7475ac6d3a8cd320e3ffae322bc7e8023100b9da9be2e7949131798705a765481095e8a3217fdf7a104f8df61e97916d54b07cc4dfcb0ddd667221b7caa5bb83d4470302047c435bb5006830660231008e00af5177544f1b8b16b36e76d7525bdf699bbf7dfdc69ed67647edea809b771c522f81949d79831e7b3f1d543c1a44023100b379889bba1055690856036926a5603a6ce3d9a079417decc21ec64021adce40a3f68a50f2af058bebbb1f7f94ca852d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301f0f733548bbe564808fb626688155f4e3baf83fc53bb91000155db941a85b4560893af6582126d6da17a98692f7665f023100b0e561be54578e43a5f66d34d074c5914ac3d666468ffe4904afac2e8fdecdc9180225dbf9f5ed7d1be78605cb2dc7390302047c435bb500683066023100a9560d5b14ddb9f7107c04947a3d2fadb44a7e3367b623f1b31d07597b33ea38d6814d8b13b95b18ace5218321c28ece023100eb32a8c9146bf0f6cb200fc5bfe6c9b82850df6316ebd0951ffcb1ab4c6e5fda69b36432054c71af390ade09e5c2f8960302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023007df7dc9bba552dd8f85284ad01f0ad8da7e4f72894e3321452f6d9545f8aa8e3941bb516b18139c56f2e0e6f896d917023100bbbd784f5fb5b1fccf987a428947cb59c388885b7a074e509a9c7979f382d574338b4fded7f4a31a90475fb6baa979a80302047c435bb50066306402303639839705822e42d7747f14418fa4b1c793978225b702c507ab880b093071a275f9cd3d57bd7a5eb2b031583a48f29002301f164b591bb6962bed7497a6ef40ed60095686a4d843a7e79470e404cf12d1ffd1d4d9806bac5a1e28de4a6299bbc75d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b32cd9148e61318b25651a5ff49281d3647c64aa8971e9d6fcc41642c1a5f8ef1efaaae24b81136ce3fa20f09bb7557d023100c6c93ba799191c654925067e6936e79bb7a9bb66b2b65324edf99398ef40f3e2d68540d8e26ee64613f37dd73b1504e50302047c435bb500673065023100d97aa6200a800159b2996c713e3609d9e34fe27d9547143e8739bb27a8577cb169b19e131e0cb2f0954788647baa361102305173b2d73694c3d29161a04f93e1af1af1ed0553084a1eda7debdbe9092c77a795868eb84855d201723eee1c34d0a7f40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023029b72dc114c77c656d9e493846cf82c7b517b601b48bf3f0cb8325e62bfb71f98255e98d3c61dddde7115f27d3c9a4fc023067279aef932c6b052d711ac95dd1c516f0908758d2423e729cff495cb941a971e89b94c444659c52490cbde426dcdc320302047c435bb500673065023100ecbc4c58cb2a11f328bb7583f0e5d8a893fd543c24301a2083d5b901974adca322dddf6aa49011bb7154c8b39009d354023050b02b06666c73519c319c60eeb1c7849f437fdd93671568539060e5d57d59f47c07fc180bece363660d70f6f8a5687f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023032bc3ed115c9e8ce44fc8f5814b0a5f57a3d2d626b1b12fa8c1017d89bf0c480d196431b084e1c70b9d8433f96722ef5023100d018daab86398fec94b51ca9a34f5d1ac6c877e70c95f7000c164cd1fba3ed8110bc4550453c46e80cfd6b2121a291990302047c435bb500673065023055b83a889820decf050d19e83dcbd3bc23b78a862fee2a111560967ac54e2020b7c5d9bd9eb02c77525dd61986ff86df02310083b37fd3c7aaa615336ddb59d8cfde38a5182439a88b7b8a232cfa8104daa146a5cf0432d81c43a941a9ba4d973c3daa0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023038353609b86636b557f87cf96b895c61c5a1792e1de7aedb95090a23da1401f1e137a447296b4c3517d592e23d987cdc0231008901efc0e21fccd7f3a404586b5cf63ac8ab346af5e6f39258d97e113fba9bff3f697004db7326ae4e253d984b40485c0302047c435bb5006830660231008257fc3cc5b78993264c86dd929bece3f32f7194955031dd8613f624226ba9476349c3cf6b2071bd1cae6ac6f85edb07023100f8b7b2fa8975c0831ba5c850396285e824aa86760e40b5936e0c6287b710495a93b430a48b80b46b0d2c255b7b1d86630302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305c0c10554efe6f2997c9e576cf6757b9b7d2bc28d9bb0d0898a09765911bc966730a9f179c608140bfe3b09bd41c3e76023007816c95a05d166b4fcafb6e70737d6dec45e6dcdbe59b5ffd85b6d2cde27717fc0079b877337530d6ce1838d008dc070302047c435bb500663064023079a20c79f0a4c35264b167781d5d894fd4f2186386674160fbffb7e816fcd8a42b3f9ddd0b8560ab81c6a469087a57c1023053cc0108d020a3a26d82b054b4a7feadd189f0a4e3a7f63f515f51731a545a55d89954a9d3f69ffc9f0a565a037a64ed0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502307571e635c98da1453e20dbe7d4decbfbf17f9f8a666501d8832f161f3c37322280ab91350b8f0172d6c6ef3076b479bd0231008ac713a84f5c60afa146c6fc55f395081af6133450ff5f307a123454c42a85724b7abafa36d687a8848a9004e5834dd40302047c435bb500683066023100ea5ea12922e00234e9cfbddab7e76ab52c5dfea6a27f71032897cae73d128a070d1e974501c62a7a9698b4faf1abcd96023100dbae90c42edb05471ccdc3458066b6c97797b6f4a9e126c1afe67acca09ea8786dcd4f195048be56182f75c67e2f720a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100dbd156b57b61f73f50d186d44a77d6f64759d9838c5491f1c352e8ace1ff175ee8d0df656b1f5b29f3181ce175e32ea3023021a23e2af62de7ae0014fc140a7ff482d336b706c09d991bc0ee55564b4fcff6c91eace2bd3c8424d713ff0460e11fdc0302047c435bb5006730650230477cab446c695c50a415aace15a5d4b53f65ac18e634ad41b3cb7c4d5d7c55f9b1f069e2054845fd6e36de3a64233493023100a63dcfba1a3d4c6d70de2db844e465e1540c4b53653078f52c072d8e68395317d2f6249db33a9c8eb51476c706889a250302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310082c2a1f005484c2fc5e97e7686c88d73c580a47a64fb07ae9eec7c1b73c638293a6b2edecc32452bd9bd4e07d395db2e02302f02378e1b78ad2f934e148f808d59241fc39faf78593f49eae8b820f2441388b68dfb51b851a05287f70f2a3746fcfe0302047c435bb500683066023100825742bf0456f6ca1beac1181aa50993b99c8e807ae2d680d5c9a9483515dfd1bcf0db16308442b2b040a823131adff8023100fbb68496901674681a45d226751f98228176ac320a9dcd4fb16d10c5d0659b10dc69be10488f6520f1b5cc58088c531d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230322e427c4fa77eedb7874e4051e5b193053e92f4197cf355bf46f46b0eb948e098adcaa3421b1b74fe2068c0ddb8e52a023066e06ff77cd7702bfe65a0d85ff7a450b7611da33aaaa2f06b5fe7f1b0b3f387d04916c4cab100185ab560a559d7f51f0302047c435bb500683066023100af8422a44dee00a71e39a5a6d3cd68b12e7422f350a57826aec0ea850dc58ce4ac546c3ca4638ff7adabbbce97a9ac1d023100c4568d401008a0867289a43a3f1f5691a98260333357a5bbdfe9e8d2b224ecddb1d17fb0743f8a25fb3dd737673eff480302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100cac6a56c1203f2b3f3cf895664c73822df39d8403c1c0502ab1f71d3a3822c63b8657203ec02277712995feb2ad093fa023012de0cfd14ef1d4143f2a6a856694eea906de30617c2c3ace658d075d2792660d51d846e4a598e1c0b689c5bc70e4ecf0302047c435bb50066306402303ef7a218bad96ee8c3f16883773e9756d77ae93b9ac8cf137fc5a3a20c0a3e4caec1c1e6e5db8b254fba2a4e17a6a7e2023051a09c1bdfe9025aafe2b8c8785959c155e43fd3ae5c2ede8822260df2e62c012fd70d7a83235c33787efb43609ec8020302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ee87bd134d22b8a74e62b6ac57f99c2df3d04ab0e9ee157e39b6a9d022a788e06c549e72c6f03ed5833eafb1f9c78d2f02301988d169565d16b0ab08507081e9dff9a8afdf1a32c8f7d327600671eaaf01c78f6c66ff594f05f6bfd82adaaf68fff90302047c435bb500673065023033a77c0dad250e55bfd1933c1f6c188e47028efac1a7a5022d5c3bafb7d47c54fad1858f53493ee530ec43a2dd3ff8ac023100c0a6c7f941e8218b6894860752c6e6cde4f00d48687a759737dfdb991b5a6fdca235c41fa33d08fd042c9c2703023f600302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100fda4925764b1025e0324ac985258c58dfbae9d75e38f4931cf2b0b53632ff3e3bd3a9b9a448a63e550202296eaca563602304ddc2155ba0afbc62a0d9171fb96ae244ed592e59b63ae8221986b5ae39e6a93c753070a541de60015dfb69283bba3be0302047c435bb50067306502310085f9181beffd39aab9d5b7345632692b07ed3606ba72de78cd6e46bb47ac1165dc427f6352442ff8e7f3b987be97b588023038c44c8e47145cc124b77017c7b949aeb057f34abde60dc7e4d2748d050bade2478eae0b712e2e7d43a672dfd1b171970302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100cd8d7451ba7b469fd88a57ea1c85afb3d68049bd763f847c0aefed6d6bd7cd87138360537bcc7d531048bdd9302fa577023100e23923611f4adb17c267bbff5bc4d5f7d1cfae82edabe952846cb8437951a55a9a301d72550dbc7cb2f66664a08dd3c40302047c435bb500663064023014b4d9d0bbdb9443c11499192b902c9cdda44656d625df4ae4763e3f708723836ed90665ac1b726e77c2f4505de7be5b023002ea76a7b1a7a7276f3b361108cefe6adeb853869f02a558e7f8a9cffa7ea45fa5a7eb90747abb58d2c9d688155f714c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d3773e6c014139db53fc93267096c8303ecede672d0d80cd827bce62f8b73b5c01cd728779c01c4965efd347595f9508023100ea9cb1eee8160f1a29b47d2426db19420c0a7b3afc1a3f9d4e25171f19631d95153a369abae42d880d2db32a23e8c2040302047c435bb5006730650230175b55bc5e939e52d1ffe7eb8b060bd8e863fef9ddd12522794a2f132d65cd3dfe00bccad064e3baa6ab69a4b2720fe60231008bd122da9e8679b8a6d96635eeb1158b5842a4d6bc1292354c16cff303036b43f805d1a6e936ad995ef0e68325e609360302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f7b0c8432d614050fca07474511bff111a5f8a1d43f4919f3aa3f4cdba9f4bb33372bfe7d43fd833b794f995c5d18ed2023100de27db9b06d7af3d77c29de188b8d6c62e93fed95bd2a4b94c4851b29b5d9c596aaaaeab24588a3159f95430739556920302047c435bb500673065023100d16c037801f7defe3fef417239e1b7f90604f9c5303e6c5a631df6be0a498f77366035b96fa486f29bcebd51fe4248f8023015cc4b917e05fb37fff4aec124cb465c37fc4b984c1b57b0cf2be8f39db1f63e9482df00ffa47c7c3b6042ccfbff62e50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023014dc18dbb07c6868b783b9a1ff8dcac071f30b699447a9091a7a5eb9dfa06cce5e5b02914dfbec60e81596201433898f02310080becc1134654f92145575354d12cd0e35d0bc3f3dc91533f4dd1eca3c5c0b99db34663a68bb288e9068788e83b9b6000302047c435bb5006630640230737ed7e29cb487f8c11eff677247806e326910a510d5c7163ec714f115566ebd0b99fc01733f911bf0fec528ce696d7c023075c862f46e940442dd56f608988bb82d66e026aa9c8b188d5381f28b4f0ee5959eff1b5e093b02b2158650ff26f404130302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023071b65adf3f3564b4c532c0ae5b325f696c8c68483634dfb56fc5d53acb9bc0bffb4590cea757adee93b87d33cb41625502302220381929b770d259937be8cee8b2febba55af1c82446314fbf7fa690179643e7af0386fdcbcd29c4ab945193ad0dc10302047c435bb5006730650231008db905d8ce239e3c0d52a8d6e7d03e1fa5e6fc2a9eae3ac7ec39f4cdefd609cae3d8a6e0984cf0223dea6dabfc31ae23023039880400496e6e8a10562a3d49f96f121d6c412f608996018cf46023f1c4abf8f2678dc8214b125ce15982ad34e340980302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a34b297e5e012099d526ecb565b558535cf54e39b35891e67fdfb90cc6427cfc613bb2901674287f21cd747f093e825a023100b58338f84cff60fc910ad512f044cbd59b044ae110b0e43ae1c095f13355a1d9288327d4ff6ec66722ab31271d7e39c80302047c435bb50067306502303620fa743e950c173b2548a136ba72b711472e512921c534d23346286e80dee13c4248fb81f28c308f14816c8825766b0231009d64f6e358b743ca7b6f4d4572a25755ce96861c0f22f4f07a9cb0b5b43aa205e2540eca4ee17b6dbbac2647f0223d850302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305b0a6f0c17fc6a1949ec6aed47dde8811b0e0c09a25a76a48908f07f503df4f93c6c46c8e3ceb422451814f86b6ade200230203ee0e8b7a95a562637a55dfcaaedc31e08513a9e7b262416d3c94716971ca622710b3804603c418388dabca2ec75730302047c435bb500673065023024120360b11a984822135f36592daef5ecdc6820261a2e44a6febe6f9ec63b0f9aef6e956e64c89673ea9a061ca49595023100e19aeba324e73565f9ea19b541a884b4b29af0bde68ff7c81bcc32990947c7f8bb8bf02aa0c132e67965cca7aac85e8a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023058abc35b8f1e24024f9d5861dd9b85b38a43da73ead88bc074f9fa336167b5edf723ab6dbf2009904a054c7428b16077023100a0c5210a38c460642ad79d21625dc6e917c7fcd94030cdc8537adff7b09260efd747705b9cc09d1e1bdc29076d84523a0302047c435bb50067306502310092d26392d0811d5625fa0dc711154b16a26dddeb52671ceb8d429df37897077e1e947deeb4f88e601595904b4556432a023037c899716cb83c1ddda4a70e650c93a7c9f7e645812af15d714c2e35811d94fe79c2273c03261efbdea6300af931a8a40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230312dc4a04f65996a1322e4f35da261e21e431aba7ed4f00df947b5adc00ce944c67e0d06c0cce8ee0d251c9cc4ca231302303947e9c8fde0767080a091b218d0531a08e37e75a2a8535d229e27e586743ec78cbd7058c4ce21912ef6cf40874f3dcd0302047c435bb50067306502302b096d8c1b7c5361328258c79d7e7795eb3bde90dbe0777f6695ff5db17119796daa4e86e1edd58be168e377d851367f023100ac4d38eec45dee0dac90e205b3c73389b8b945534cce81fa02ac813eba9a918d897bdac5e2bfbf246ed08cc5a7d6207a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230600a152d51e0645d00d2cd28311e21471a27bbf4fb48eca760b92ba85686ad1ee67e0da24282febc511c3f521905abed023024264cecac357341d2e5ef074cdd3429f7ec59f0271ad765bec32c5d74084d1fd8dd784977640164bad79b520981a7890302047c435bb500673065023100e2141b2f5d8c699d000559a4a43b6665a7e841074ae2f16e51fcaba0c6ac4c5b9b4fae922eb54fe5ff75b16f58d744b00230338ccf746364c30c358972719be042bc1857173b8377639772acd400b390e560a736752c2819017d725ffeb8bbf154de0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307f85b98e67de0459e3949d8a31e5cf632aad31d71d1e44b63058df891a21c04223a627efe92210a7129be00e32a6ccfe0230018936510999bbe24a30c1a2db2995391eae430dbf450d16ec99c31dfead39a1408301bac510416461ea9285cb5aaf940302047c435bb50066306402301d6c4e47744b2b490f0a1b6fa105cf70ba1aeeb71b52c93998e39cb07a57df8cce12a067125d0ecb07acef344bf6539d023061abb2539dee2e3ce24e5803ac64b147199480bbdf6937ed6b35e493be1fe727bce7df95392afd12eed482ba3122d17d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230246eab52c3e4dfa2bbc13067c8b86442f42feb8f6fedf24d3238ab84bf710f1c5c13d60e5829a829e899eeb8254abf24023100c674556c813c8211adf25fd4cbc20920f9b9a0d5378b0ec1e6817b710b1ec215c7175daa0e810aace9db045e5471f6160302047c435bb500663064023063e31e3ed2ef1905a92c50d8a6ffae8878dcaeab7e2b594ec15ad54c714ce059192ab8ba66c54f5add5652a40471a95202305a830d921871c50e482f78390be5452fd27ad689806cda3eb20afe25f73924e192d6bed41e777c90940c603610ab05370302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230676fc0cb2ff7d572e5bcbef87837ecd97b3e29b2e17c24e22e0e56f0efa3d8fefeb99c5b47be4f9f50c8f85cc6bbd977023100a4412ddc5ce5a0b27a864c118ce269f309b508d446cadb60652223b6fdc49468fd436291916ba0cf517bd9a9c4fcc73c0302047c435bb5006630640230546dcad8ba09b5f957bfab9553df774d2834fea41811b84cf065a4b73ef94a981194f4e6e99be6f5ef04a516447b282d02301607236c37d463b22e43cfda89c730468bf0229d2f7d176572d7a8990a26e2768371e3d2f6840eba0c5722d2fb77a31e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023064e2511b03b30de477781d8e803b670c45aa28d6e32a9d01d500f8faf91c128144d15e8f9a3f56f1c2c6702e2bda05f40231009ed617fc5820f6beb5d218ec8491fa982f75f27780a5f117cacc784d6e06bc93b36133d061cd9d231f54ac61ad1e6ec40302047c435bb500673065023100d526f6415a3e76001e053b3ae9d3fdb5f7e9bdd32d2373c427168f04a350b6de5c51047e03c12c8fc3d5fc98c20e9a4c02300a42374c12aa074573c531b218ab74bc3fdc92bad697464132cbff6eda8a6194e3aeb7700e398cab3b7eb799c85ca3d40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f06d45132c8c1a54b675d813f5f0a42e4abbee9c00c0e2121ed62103acfda7c9a9550398d98048323382b7ba0570cd9d023048aed5c8cf155e48bc4357fb339ffc428520e823235c643bf409948245e1a8296f3b5764657f262440d2d8827db1ea470302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008eac6e868e6a9fe9fc0cfb392dd18440b4deae4ca2fa4e31d941e369ed3d724c461e647c88ef9e6b5cd409566007b9420231009a51b9e513fa09c26d1ac4628171d0e8eee924cea407dbf0b4da424bcd791f62315b69afdae2a27b9cce216c2562ea720302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230343925e304026b2038b33af7139251db701b198a2029dde18b4704c42b142f6ccef1978acf0d7a6385709356f5a1dcbf023077c6ef9e11366b63e4ca910f075c31fe35598937b6a96725ab6ca22403eb27823b3c15a38bab236896d8beafe47806350302047c435bb500683066023100db586874279ed4aa6509d53f9e5e70eb0f2e4d10aa07791e88c7e0f60db13f55d171b6ea8cd179163a1a1fef366458a0023100c44a1a238d4973b9e8e239d508ca0a53325f58e62adf0c5ee1425c4e8ac6df7ebd4b122bd2b66f911e436eb0f495a4ce0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023002ed68df74c9c6cc97c04ecda4f01d25fce7d6979e7e2010b444319c646e67427bfadb564ca10fe0d7e104afb15f0f1f02304ccf3878f4847486d941580eddd25a9fc9dd4ab50348005bb96b0e0729bd88bd3cc33c4b08de65d2da17b88c743acc280302047c435bb500673065023100af6404efab51b9b53c0a6f7efa7a8dbf51237d322bece25b997f189d7370809400993f2df03e1a141a7c1d838862d98d023078a8e400baa7d1d23d99ca672703d49811462ee5c4f1d88ed3bee3e8f430f74eed46b15a10f1bf6d6479dac3ea2ce8050302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023023a462b559bb4c7474d874c461af88fc0f195b008382b02dc1ea7c621d9cbf43eb2a6bbd2cf7326e645d728d3b509ad002300e13b16df65555e3f6d62c3b830930962f4c9a182093944d024a92fbd27a4a9b6018c0fe7c5a258d4f67df4c00fc241f0302047c435bb500663064023073decda72ba9eac87c72eb29ebb28f4725a8e52c10154677135e0d0d3acbaa99eb86b527338ec5945d58e5b2c3959def0230517810b020c032d50623586c6e7757078882512ed688671610071c0f7915281c7d97e3f8688134292b3084c29d6ac33e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310094e304925eac0b038025d45b3ca3fd630747c0556da7c148cea4cba3077b1e295d59329d54524b31548e7e4c4d15ff58023100abd4930f07996a3d3e248f47ffa7f1802468fd5c765ea27c115613ac6b3e0332ac3469c04415e88d642224cc8fefd0c10302047c435bb500673065023100b584b9cfd6cd3bf2894e221571317765e7bd63c7d4aa69d00b96e524725f464625c3fc7f1788e3c28404a7944ad8c4d802304b2a65cd83351ba1a8f24d6a062bf1f1f472419cd625172b8321569ed4a3687acb35d07f83cc228bd43a49b966860cf00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230533a217a0fb2452f2be40f89c3ff84d82be803d7edde9b92e5d1836d34a8e069d82c2b9c622f8b71c06cb2c615fd2ae202301229d85583751541369e733d4a36c8c9c6daddb54d47ae2eff4b71dc00c28245005069fb7ccd98ef7f2d74fcc8ec9bd90302047c435bb500673065023007c01c031d3cdc1fb8983d3acb237e0c47f544638d029aba5e5c690e19d71ab2d93d92896b12ee5701266d8f80eadeb1023100f012dfea99aeb1258534cb55396462e871ad5a911dd04c39ca793adb1124678964614370aa0879b55a3749bb1294cf740302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307ca6dda8b4256a4a1b1102f588ce0709bd04e2f473fbb8b482e7f4d6fe33790da1777ec000732dc6b93f01b9bdea275702301f11e3acc9a6a9e1b8ee1372eaecf89eb9da7a7d414999b0c6ea48d153c820bed2505546d303722f20656bc4ee93ade80302047c435bb500673065023001708d3635146826fd5d2bab5e2eacb8d81e546ed405fddc9349c0b6fbb3fe1386a18e9b0d29156918ffb8159200da66023100af66859ac7a53991be7bc35f4fd84a43b8861786bce7990dd4040d9d7d4372039ce2d35b2a3cc3c2c927d5e47cf9e2f00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a77e7eb352a286445a66858802885706f12e7751f8c881fb68bb019a0f5a6e594ffcd5e4c4eb896ba7378d6940415e3e023014b7c29e0411b4400262641ff60e859ab11ac15502ffa3c585ceb573a17fea41f1a1da7439c41cb25e026fdadfc48e6e0302047c435bb50067306502306ecacd2b84294556c9a4c6815a7dc555b8d626d5d1b38f0c5b23ff0272d03e43c2353ef088a23f81fd4aac6f91768af2023100c0084064215823950bed6d2b1ddab5bddf12f72808ef4c367ea32fec4434cf7ce48abf8dcc5e9c25162ce62427e83ac90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f47dca5291fb3051e31c8e760c5745d05eb398e17badefc468b484acb6f26a796930dcca3ecb8e6662b991beb3b5a03b02303fecc62289a5c1f37db89d2dccff07e1559f17085561bb2786e2bd8c6f06c03679192c67378ae83beed6b9e04e0c14550302047c435bb50066306402304b91a508f016c405509a524dc14a1031b6fddde1f678ad9cc3a88f08d486275ce53111c7a3c3adb168d28afbce0e42a1023012781d5cc2a78ff1c0bef04af18db87ce0859945de6e9dfbda0fb3e5ac8d428c33faea0108d2ffa4aebbb918251638860302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303fc2053a7e949455e58920d2ecde32d7491697ecf4f19af2cfadffdd808a82ce3f0174d5bb8ba292c261e4f3a30b78b2023100efc3137d69b1b6cc237014fa31cb97322ad01f3462b0a6fbf23f0c7b4fe0c8119f63514250341170c8efd3ce0aff17680302047c435bb500673065023100e0ce0e95d17b0e308cbf84e27fef59529ee73ab9980faf0f6659fbb08bc8b34a80561a8551fdcfd8065f548e0410ad4202302f81ed1cd42437527dc93dfb49b9b2f917c293035653925677c73d252dcfff47172663882fcf90aa27c45a1ab05a273a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300b58cd331ed72ea669ef669e4e200e7e8672ba881304226455af4532963d2160deb4ef7811f001fd9285a49223a4bccd02300eb05a391cecadc7d8e310b604a587e1257aecffccf3f610c756c0f4493db11078dce9552867485af015572c0bbe70840302047c435bb500673065023100d7dcca24c7ad09650d2a533312e4469eab333881a2fb419b19f495634d2322ffbef138f712e2649a89b8fe13cf4c1cce023020ad5bc5e548997e57e3de8624912878ca3a7a0122cf3113ca058fa3ceadcf836769f7632696a6650f736d1dd089b84d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023019e207accd674b8c641b4ec40327ac4484b437fb9c76d91853d07683e9eb0a45b1e1d4add0fb0438ae4083f04dcd58f802302a5cf75fbd9ecb2c303f0ba62823389745f0d1f39e530666f2e3a8cbeba3e50f64bba5f90bfd3cfce3830e5f8e786c460302047c435bb500673065023044183aee1f490263b8d3068537598e695b7802ba2e921dab0e5cadd38ecf03e85ab416b7337ea43c0c11ff3054bc3218023100f3d020f7b98076fe3d10b0594e503f430f76a71c0dafb4a388b9f95cde5464b40ad26cdf4110f07075ec428b0b62efa80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100eb33d8d7ff12d82ce4d96367110e1bb6d66b24319c94f2ced9890a9fea2922769a0f22c35ee4321ba203d0d2204e313402306ed9f5a64c9482aab8381c9e216d97437c2959dc53eb52565630a5e6e30a2b5ff80b10218d1513c654e3b6bf7eb290240302047c435bb500673065023100f409f5c3a17fe9b4233adf9d13bb0625d1232a1f9a84a167c47f5d94e705a8510da56519ae41bdaa55343cf178f6d710023072e505841dd77de343e4c13353b6f4f14f3e7fe17bfa15f27f9cdf142ff769474d08918a06f77d8696d008ec1f0ee9bb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302fa258746cb4ac2a0d6ac1219473392c076ebbadc9b9474be124a1c0dfd1d706664d8a3307c676940c1496bae5c3444c023015f13b352b7d4cc23b1592974471c295049508b3a8a3a2421469c44b4dfbe02efa76cefe511a3d37522ed09315ee095b0302047c435bb50067306502301301ea0e98cc7f270e38cf6f907b92061198a492da9649bf84b2f2869c64d03312689a64baab749b2b73d24eaf94b6bf023100ed2fb9201bc9ecb45f6a76217655fed153f686ab45cb4932fa5b820150c0a47345aa3d36a1c7b80546873ab1e4db7e9b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023000aa343c465e0ae5787970afaeebd65fc0b2dab21b6b0d0d575bb2476c6fd118056b462df292770d61ddf312a004c70702310090eff1d332a7ab22aaa964adedc1c88c8dc8328dc4d08f11b9eb7f6864f9c84c2966376702cba58c0890fc4a63d387710302047c435bb500673065023100e774ab09fdc74225694a3a85fc163b4df0fcdff0b434ac0042c4ea413205eb4459b52396be4c1e696fca4d60128faf2f02302599d30c1b1ec6d27571db86419d8581297814aace72ae47b330d61f8d0c6129d66c099a1c5820cc4d61cccde83e51db0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100eea7b0b47c3878e5b1fe59c91b637b1d4212aea4e8e91b0886e44bb3a295c4608ddfcb31357e1509d9ec4330faa3f23d0230612183b2cb4a343e59a4370e18b1e5b91e77c00f00c1c7a23ad1d01c6925cd15c707709d8a8e2fbff8cf99d0b879cbc10302047c435bb50067306502303c4fe40d64b29fad488f01af3f32e91d8ca66dde658ef8424419471027adeb2947bf6627f74245351c0142a39f085a02023100fb77e9e9b23a340e484d867a1eb8bcac29fef6df8e1868c836945c5d82bba4a42353ccb17fbd017d84b064fa45826ce80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307b87c3b062b6e69b52c6fa59fa6fc77fc476baf67dfbbc7d889c76f1c68109e4d2cd4f9639b0ee43fed1da713dadf444023007008a65d77f587085831fd33aacce3c68f2a9ab7269027c34279d966c3b2c9a0fb0bb46a93163f5fb97145e6c53b5390302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100db6a77d0ff55df13a3f62ceed6fee76ef08583fbbc6a6d0df35d9fbbdc2720b59f8451e3facbca55650f71d9dd16574c0230090ffe8ca5b0a302be17eaa4c771468b230621ac8a2a410bd18970959df8bc773e0f3cde5b7a1641215171cb6ab6e26d0302047c435bb500673065023100e6f24a69500690b4077c36a81bbbdcece5874007abe1f4ad5c7b66a20d48821571e73f08f727de94a325ba6d24c1ce4d0230066efe3a7e46583459c636148f0108f84471150b2dc3986681c2b979e7bdb9d8cf61f0616fcd5faa8e29807851faeb640302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008a8fb637a04816f899b0f2c06970262acbc9b6c49a52b49be9ca72267dccebe69d9185695d69d4cec22b0023d86bea3e023100ec3b1209f46110068f6c59011e0890727066cd226a0b2b94748e128bc7d7d44d12f17dcb9c04116ee2e047989a43c5860302047c435bb500663064023018342196e31d8911ed25a13bbdcd4079eccd1bc80f6914f1666fdf27a00218752ab0855d9b4c19da9063f5282786e3e102300590cf71e81d9d270c15aeea1d2c7b098ed590bed00a6580dc7449e2a8c4508cc1f3749fea5cb7167011277427f7c0630302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ab0b0fd36a01480895d6218519f722c920d9132d982b4b8e9d7c48a56539837096a8c72dfaa1c1cb0ee4803ae08c874702303bcaaaa0e44661c547e5d1db3896a1474a89d683a267e4d17cb5cc8a38789d5a3285747367f94d6ac13d59fb0704ce370302047c435bb50067306502302b66aab123ce5a45820f2e4db077f9377312150900192a01aad312e0cff28db53bddda6607bb66f4cafe57332ebf6579023100ef5e2b49b61b857a49c7e526edbe7efb2cb062b08ffb382854702af8db63528d22f0081440396b436a54a1ae5fd50feb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230159ee3d22cef8d315a731cbc2238bee02862db077242855c9924607244267e47c7d06a6a9da57cad9ce1682284a8fd76023100b0a208a925637d41a4df98764ec6f1cc83da945982378f74e6dc6e21e89eb1cbaea689759785a2ad9d740ac24e8128f90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230209758ef53ed01933d42da057399f2f417c7b95beca25e3006e8e0064c57a9f5e6389e0a68e4e0875436bd357cac02f6023100ff6fbddd266b181a4ae9f38653dfc7d04174d43ff89c08486ae2537b4c14b4afba69f097b1d455683871a631b19f813a0302047c435bb500683066023100b91f21882d1395fe120b0da3bf024aa3577b502c06dc703c7df3b137f1dc6cbe2dc8d458d8c0c2f6e04faa3d38d1c7b3023100cc1166687199559d2c52cadbda9e5fb213e9683ff6c36e7fd30a1103a561d64b156e0f963987bd182434f91f366a28e90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100daf304f6ef6daefac4deaf58501e9a76daf5c11aa509d21e5f0b005ffbac5105d631f12e4a47f4a5863e8fafbf5c7db902307aa4d42af425010104e480920ad232297a47611158d7bd0985722be6a1a45c1cfc8af85bc742184843117daa52bf04c70302047c435bb50067306502310084c06f4964af079719eb9b957e16808a81a88f0b704371a178e80b009623e3961313af276c4434d4ef2ba99b5a045faa02301b59dc61e717a3e101d51185a86882aa1a5e23de9b54c1ca032d552b8297b0cf09e5790e798945660589fd2fcb71a51c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a8a2722ebaf57a0ecb11f60f6ed6c3934a60edb76d80771a381a43822a08f854a2e02e7054a034aa46f486d38ca2e04f023100efc3d110117e0a5d917f25b28706dbe83a578bd22af0b2eeb875edfc7916fe5979d7e02216910612c9bbb165919086de0302047c435bb500673065023100b846052e2e00d7f9ee3283f401affe61cca4e0853263e142880aad335f5bfa6409ab15e93a529ddd666ff9fa1c5914f302301240e3ca026b9e07ef9dfc7bee279a7c204a916ef449d72673a1878a591bd1ca65240fc2a04f4b4d6df9498361aa82b30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306d83bc1eb9ac17aacc3d0a768ef7be79b20fe754e82697d45d531dbfcf5092dffc955ea396a479a79630cb1eb3f7d1420230307ed89d90fd584ac924d9f248336ef3ccd22d7cb6990d67a2173184637af23350d775a3cedf4670c0c3f8909cfc66440302047c435bb500663064023052fe6a919f8f400cce25ad5ce75029a0152339fa39a9508378e628be422948d04e378c20f81a3c558a359b0ae3d97608023060032ed8c627d5fc2853733aa7ff709ce2c71717cbb3234c5889350beab76f000920cdd27b6e7065047f11b3b16f2ddd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009328ace01e69c10796737a79729ea13b6af1e3cf383f215d7262143a58e16c172dbe91ee96d1375739a1df4b9a00d33b023100caa8fb34485bb7edc89b5edf64f5191fc8ac799fa5d956e7cc0fa55054982040e4360d7c347d6d4678f0cb5a18ae1a300302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300ee6ca85fffe0cbbec9420b3d4550fcddff0ea0c088c1288d0a2eed70edae62c194f76c6676e3b612fd6c854bc7d7ca2023042dadbcbb36727aa72dc6ae9122b41ae9fe5e8bb1b792781e5e659d3e5727ddd6e4f16f4d784ebb391c37b557d174a290302047c435bb50067306502302383c3c7ecfb365ff0d3ee5164aff8b257d46f5e5ff52d74c0c237a1d33c34cdaa498ef451d59547d915cfa50f9f4950023100b74001f0d37fcabee4397d2b6399e11a3c96b47b01c8647f9aeae8643df75421a809fe46d75e7d49118a2d8e81741d340302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c0358f7259176a86e02ae6776067cdec72c4cb6fc9f1536030f2737cd39af408d53eb198f4f111dabadf72fd6005f021023007583dc546814ecd51fb3d8b50246be68b623864829a8970a709090150ca0d3ad38efb722dd9ca34548897b5825c0b450302047c435bb500673065023100ecafab601399a73b3b04a8d1ed8c2f16855d5d96d01d70cfe9f16d9980622d47ed26f10c5d78b80a4eb74c6cbe8a5e66023059e48830bef2bd0ab229b53c3f5af495159ab4416daa96e4515351d9bef5847e0b3b50d21a1c2a1ca3770b667d9d103f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230658abca90285187edcc6b94b576e7a4ff9f0fe061f880814d8587883323f919f09aebbc0ea70a9f3ddb0c0c62d96f51802307c7e2e3f62a85c9e5fbf637c08fd03c2c55eaa5e593a816570a9402900f7344288e76ee79d53e2f1399b56b9c31460520302047c435bb500683066023100c29c869c18db741a91e81907ecdcf784d8857b02701d2f89953ded699ffc1e6de2a750c8fa8911304da5569fdd4251f6023100d7741f60d6a7a56069ccbd60c4880f27d33944c9592521d5380f1af5745af5a522199cb9cf3857022855c783fa87c52f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d237eb1acd4c2426a7d54760eb0c84890a55c07e561f06c3af95aeecba87fc38cf2097077b71766522f34094da8d4b6602307b85807e409a62c37e61295d45de099305469b5adaa5628041dd5320be280974c310b0aec3dc89edcadefd3e52108bd70302047c435bb500683066023100adfdd6682cbb866dda9c9aae8512d99b9b611765e54258045f07dd7137466c72f1ed87a94d39eeea6e73f39f77e887ed023100cba9268066518ccb86ec47c828a94aca2ac24eb1cae486f78613e4b50ed2bc3458ce875e23e643fe19f7cd8db5fa126e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305b4df5418175cb1808fecf5e43474df1bded2e549dc9dfd79e3a9bbc8276ca696d2619186845a4d7603b6cc3bcf18d7d023100ae238733b26ef9375b1821aae7c5dbf5a88c870987a3f5096f1de029b8764b82694edbfe69d9de66ef035a011e37aeff0302047c435bb5006830660231008166788c3391231e972d7f15497f9c1680401d9093422c41065eb6be82f86416f62606931daa419349bbc4559370b035023100bcd9b3fbdebb86b4cad2acbb77f090f2c28fce99a9b5cd7ac53d46533a9136be63b95fc87305ebcba4c3e40024a2490b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b654771b24dccaaebca72ff6d686feea087b7e5df875c9314c5bcb8939b6ff2b5a2c8a0ed72e53e17c8c7050d28cebe1023077fb6bce42af2b177af8eb9498d2397a09fee91151772ce96e937aabd49363cdbb0d4821045d7e94ea55dae9ea42a17e0302047c435bb50066306402301bddef04e04c0374bd16b7ba28e0d6538bd764d92740a20d6a859ae1c87e74f79bfa7d69557c67dbf7ea24a1da3d2b9f023062341f397dd5e75b662144412bf656e089f1bda9b44dba5d6871649afb8349f6624877b303721412537b068782b1dc460302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023006889c4e599dc83cf772b69291c70f94707fb89b71d1199c00cb3cbc9219e0b64699244aba6ace1ab3e08db6514449d602310098585b125f437068aa46ac12f58b417191e3ed95b35b8a2f6d8ca0b27c3f45c124a9c8f3587d9180a289ac0f84ca768a0302047c435bb500673065023100d19ad369df7244648b0795faab28be83f83507eb3f946c5a85de8191aecc97180896a7ac4d3637180e43451e95ada680023038acf6e96085b8172118c4a274ea1b2f8a0c8cb03edffb69041e66d9795717425e71fdae7d5f115d406f89de23a724730302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230351b996e592ea36311afe933d04be7d311d7b8bf4b26f2893125090a7da0dcf7baaf92329a597722cd2c78702cd16a050231008a8680651c993fc1855598e27d5e033d025be04edd9b98f7277f0d703a4d5fcbe1fa416c3fbaf04088e73817e5db66c60302047c435bb500683066023100ab257d66f1dbc457c3ce5a2c8d62248736226b61ed354e23006efe16c63261b5c563d56d5e50f130ed759eb1a4494f93023100aa7d224931096965ff162a4e422a08d3a0d961035a8591af89715f30ffae62936117283343a1bdd73bf0a639277e834c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023002cb0593680bf6e7eb0d4f7d3e8e665f980cc0b1f6dee13e14515afca20c733ce7258c0859fa076f10a54318fb67b25902303248b4f7e3d5228dfbc31012df7fc8edbb9b17f5b83480528e289ef37227413d7bbfffafd14e4377dd2d209a39caf42f0302047c435bb50067306502301ccaee98967cae8e96827239175e2b78d505b8f61dc56319356ef573d02f2245c71293ba886a7a2e79171e80a53b6866023100c62fefc147178530cc7b731144791e5c5a5f1eaeba6d9b207e6a595bf486a954b16f5fc3b9b8101ca3261111680d5cfa0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d7a83d8f5473bc2fbd13ef1b7038a6d29cd85e0703d4dd836779e2f3d606cfae0dbb50bf457f3e8c7f1008a22a64238502300a7b3326b4a140b56d5ec2975856345a89a84f2afd5649f0130340a9632c1f22b903ab1818f0ef95f25d29de4be7e4600302047c435bb50068306602310083637d4fe2711c7d9466a472acf15e04b04aae53c92d418f0bca5e688122592414586ce2c1fcfc320dd2fce2bc236642023100df2275231c34677f839e7b118946782082e18b9feda4622b5b29e5d525be2e0921048892c6291938c9bb1882249bfc850302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023050c2ddb9c978ddc50273e32f746f19db6fb58b2ffc9a7fb6a10cc819701d60aa477a5ae1f45d107d8c189653bb38cd6d0230135178464ea0ba844dfa6223c2c0022aeae0bdd5e8f05a86bfb15d6ed2b466545520f318e080c1132e826d32bb8928a20302047c435bb50067306502305ba541136bd3279c7425fb26028532f9498aaa8a4fab858569b4ebc6a4b200a957ca1b6da8713580d75bf69e924f1de1023100b7ecd9eb07950da83eeb46b144ccc36d8b7cd793420a0f5412dbc04a0df88347115e969d7481dfe3f399e92d53b100180302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d16ca9791de07e3cbf14a5ce84348489025e9879af0128b87bf118becf4d1b48e598456923b3d88ff2a9b6d9f4d71f5d02301cea8b9efabd645ad211811024d45100bbe168d1962e5646d93094569e07a9cf6511c662e096d9b4a42af1763a7d8d410302047c435bb500663064023015faebdbcd0599020fa3ae7602db7ea77fd6e379a0c10fb2cd13e0868d6db5cef0d97cb3059be1698283bd418f90b99f02307480b760a129da5325a404c2c18bc46ff15f663bcc5e5e94557edb38965b80b35411edc56f456767393cc5cc5bc0704a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023050040cb874d56bff48a86e961d4d83e124cbac6be222535075157bb63f5338129c58b8a5da82c4d32baeda45178de372023100d13eca13227ab87f412ae2fc8a165b6d87353b1506584690821e7fe5f780351af09386c3497d46ea7ee1a890f6a0ee330302047c435bb500683066023100a455de4ea5d6f17bbc2c782432377b7d00311ba924e10a8768484c07fd240efefd5d880aa29370b2b6bcf63e5815cd12023100cf0aefb22c3a602cc7ac1dfb58d4974fe70a257ab39eda19f5acdc0c6f08a4a548fa3d29da692da3dc26de065350d1530302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100df19b856519ed58a6ff8eb4437cd8d3f410e714ad00ed2e44cc5a6ea912873136a0725ef4c787a54f3fcb12238af97110230603646a5d398246d27163866feabadeda868d74024b410f4f8274e1a534520d03c5342d39fc1f98576aa5445161468a40302047c435bb500683066023100c0adab718766bccc3efb25b0b1b48d85d1c249a0efea6f57d2cbe382973993b1e98887aa28eb6459fc79a57e1a929c04023100df9b12bd0fa30f803de97f665f3498588c1a2be4ca5a47ab01219399e734a0869073f67c37cd6ba7cadf40add56a87ad0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e79943f75d0b3c2eb7309617d7187c806a46b17bf26594aae55f602a3590f19f9170cde89d2df92355b9a7ba43774afd023020ff0f8b2f03d95d90c2295e728bc9b85c8f7696b5577b9d98d92eeba1d2c32ef1003b98c64ee0d8e575249fdde9c7460302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023036f2cf1255fd24f9888d5d701ea8aa9e38e4106c41cca1f436d7f56af5f283c241c7ec450d6fe59d274e4fa2752c36c7023100a4398ecca03c4de67dd5f0620c5c8423d9d7f5349324b11cf5e3d6d090419eb542fb8b5417cfdac86f7c485b158667930302047c435bb5006630640230713f271e3d2288edb978e937d43a931aaf1045172337e6ad18055c1081c20353591e214f3424685fb4db1fa6059b12b2023034c0095ca557abb71dc197dd7c5aad6bb827cfe6d77cf7e065d78af962887d5f16cd36ec9fe09617f32cb2d56cff62380302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300e694eec15aa32dc2d636a369a4909a0cc272380d56e08736e5a627d208a38d1228c6c843c236efc9725e562d837f6ac023100a995fb9a418ea5821b960d5f1cb8566313a93412de583486d498b576ba79528e55c2d7c1444a021466edb54d030d57de0302047c435bb500683066023100c8aacf5bf507061527b7f991d060fd30de40ce1be5b5b3d4b3c3029f8e7701ba32331061e20547c848632c51f12b183e023100d61439f1d1532221643711748b1db6aaa2c5f7b103bfa2e8801094c9d75440fa4f315e1fac3f2102c85074a38e2b38770302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f13d4184a5e15eeda68fbe4f728817fd0331bc0d0cb8b62ad6792048b72c1e5310b30470a9a2c5e5be4cc0f857a7da40023100a3d958ee1847d593063b006d1a854051d064afe6c9d65395456d3940201ce91cabf0c90e10cebc3ec1490e62dadee7630302047c435bb500683066023100a80b8030f93485585d37522e79535933f455341c141f97363f60ac5a35ac6060c48c466054da3d2ac43a3b305ddd1bee023100ebfd7014d78c81ee699cd79ab16a1517cb72cb7820d9a479993a19d81455718ff8bdee8320cea4d96c633c43abbc5b050302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b432d3eb6270e124e353404fd76f80c2da0b1ba78912b243c59914d2d6733712ff49a4ce3ea1cd5c13578637c41cfa7602303be7de1d4104fd950bafa4fbc1f465dd7b989c5e30c9dd0466f8b7a2dcc0a86e8c3a085119faf4aa3d785a80b40541e40302047c435bb500673065023036519cb9999cd2515b5f91e9ff641b2d6a97e057d45973ae100cb997b7cbf268075cc984f6621766bcbabfdfc2cb06c6023100f5fb8d7ef49ba6d3a1633143066b45397b1996cc64f138451eeeeb572aca3124709c008c071bc8d29b122ed9d5fa74790302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303fb9dadac8707bbdc363c50c7fc6f597bae18c9032c878514a9f9838cf2e16782e30fdfcac06f5b04abcaae2ac66050f0230634e264902ea55addca96545f20ae97001ebc3396c72a32687a52dc2f05617ac1a007c8ad3e62b9feb8581e68de388eb0302047c435bb500673065023100c32cb1992ea6335440a238a8111b531de93c4a90d0c47f126df40f8f28ea2b83200e07d0973a67f892fa4abee043710f02303faab4f4989a7a84f7e50bb02dff4d72e15dd369451f5d90584b467e3083330e17d6a44b86f6c99754e1abb658843a470302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310087c373284509ce163c23c873681ce41f4183555cba98301b31b22ca917b76f00ace903a1a92c5bcf394d08f6fa970cc3023100b6794f058defb43aa4dc027725b61d3c156544af4dbc9dd8f9e380619218a9aa8cb4948c31521c83768613a98316fedf0302047c435bb500673065023011e74360f515790a31d4140010519f2651f2d1356cc3ce97449f6185a1f485a5987e4ecf624a8de90ffb632d73acfeac023100e7d00019b13f56c0ffb6f9699234229d3ebaf55af5751f0d2feeafd3fcfc0fb51a4d09a71daa12e15c9ff029e0dd173d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306c086f9eba9b87a23fd5ec07d5ec05c8fe41863c580bb65dceb23d19811688a321c2d705d23edf513ae27e59d6d9a1da023100e019f355aa6a022dc9537b44477c4cc0c1df69b0c472a10857a569a31e92cd2e00fea5fbdc3ae5ac8b0895ab6b90a65d0302047c435bb500663064023072a15fae67f9e23cba2b9df17277981f1c2655cdde511ae700fdd28b1164ba12af08ae36699e1ac572fa0b9a61db5f9f0230637010cffda0a31ad34743ea50a613c032dd86bd911bca424ed6b30f21f6590c2cce9c712137926277b43ce9041979c30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100cac119afd00d0b60a57f189a0dda4cb631aacb9e911cc73b9154a1fff727fc91b6c488d9e6c1ff997c3c04a95e8eabbc023100d05b3238f436793654eda74a5be5b6553c0be1894422970aa6df3bc5db5dea7a4344e7bfb32cdfc474b62c92992950760302047c435bb500683066023100d5a47090bf1221c2699e80d8d7967c36c382ed889e4fcd21536b7512e84a501248d5313488f5dd54594a43f190c6f8e4023100bc1b2385502b08b7a7a2f86b4d211d9786bae174b80baa81e50efa8fec15ef5122ed83a033dc7bd1bb5b9d96429b0bf10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023018b65f308c71ed5eec17e03399364b5d24d331bfb04600cc1c402f6b593647379fd5e0809685c465b3d770a20dc7f0400230138b10e4eb2b132ee7eaf53533aabfffbb843c5b9b28c95e8660282b9092e7fa774f0de21d1f6b42235a2426974bb1580302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306e3617f618f14b4b61ecfe6a047fccd0532d0c8168f4ea680bd17519b805a61df78ba24ddec2ad8a1e14d85b607e6103023100fc022e511880861ece01f1e17ffdd89f05f4768fd01044b45e657f025bd88a400c71f370ea6c979f91824c9e8feaaabc0302047c435bb500673065023100e3d23bf1d4f8794f4ef293634e8dd7326439257bda1394d6bed2cd87e9debb63a180484e9359a7b24f512d8ace74190e023063c8db48f83a40184332c189862c09d76e9c16a8aa6011acf6566e3442ee4f9ca0a97f40fd33826c24eb80e9ca87a7680302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e303f40811a60dc5bcf509ff2a7d278b08e7de75d7cadfdab4f71939273edbb084c42ee032d7da5aa450f180de60464302302d8a3362741138a8f183f23773f2fc644b58acd599edc48c1d36f1939e77ee1e9fd612b0ce31a5b95bac6062f9d90e370302047c435bb500673065023100931ee48c39cc30f4b768682b51a22abafde993a6a51d4f078c16133321a02533309c2cbf315eaa9c2c90316e5c3b241a023047f4cd7138a57df87e25f10e5d39d978ba9e6a84e7f3c48bdf5e2e741344acc805a0b42f12ed5e9a020b192f3b8865b00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100eca173797a4b0afc8b77ca9bc89146fd4ab8e71a77bf17335d2f9a22cef8df3051f6326f1566b4f26f6e697723d22b4c023067f7c4829fa3c899aa280fb717a3706f4e2dfdada074396e1f2b450a4aeef23aa1cb0039d352d845448a6bc81ab59f910302047c435bb500673065023100c325c23589f614df433e1889b5e43279b0a7ea3ae3aa9684960717088a1bb2009bc6590470ca6d937fa9047e6fd3f5a70230668cb42d8154ccbb65c3e9331c2da357e4e62122481f24c9e2ca05ac4d477220f6a40e340d3c69daa767d4030dca94b50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230214422867855517bb5a3c1a72b6bb19f97aaa352ba846185ff1b76ad36dd57279ab00fb2782bb408a71d8f07bddbc76f023100cda58ff243142574753b006a7b20f37bfb58b1b6a8b2b56310816d3550047a2af6f49c7dbcea97690e0d01c79303fb620302047c435bb500673065023100f101ed881bc82158317be175d887e3d887881c49656b7931137694f53bb841033f72440520fed24cc97e7230f70440cb02307beaceb76b612fd9d0b1f3fa4ad93735aaec50e7a1a48b4888941fbf11b791e19e1b3085952dd3dc8f3c59324a87c6fa0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023062b19dc089b173a775c7770e8cde512c8adc265a49c3c7535b8515e9d1ea4250412a95ae6556a6fb904aa83a20b3a38c023007a7f1883f6d26c2bb6ca4ec8d9c5b39d727a684833d2aee13a73ed61729da418059859a3c4b420716a749e474e304cd0302047c435bb50066306402302f63ac2c00a0a22135204ebb151448757cd7960b1d1895929a518232036350138ec7256daadbb652cfa78e9669e2f052023051b292f176562f61641a21a14ac7ba8a0949d45803ab8ac6f60e9e95ddf0567a100e54d71e8db051d624a16f72a627b10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e320904a506da184c23165e4732f80227199aa5e6a3512f4def7b90c2ea7e1b70efebfbe80ebd58b9df17c224e16cbf3023100abc857f2a93b96c830c3b05ac0c44005e4a157f08c2cb7c1c2841ce5670dd911c9991f6319413a0ad5c61dc95cec98980302047c435bb500683066023100946acadec7408d50e43aa9d41a0823c6f42a84ca06835476a686b814ff07d141ab3c4ca97dc74491498845b6b6d05bb30231009a6a8eb592bca9d158411dc0f16b195a8eae33ae11ecdaa7129c9412531207f30c412283ec2ae37144ea850f94a548180302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ef90ec813048982d0635c75869afb0a4becca94e2f580788ec861006799fa115fbfbdab1c8c535edc29ddc3e9eb81da202304cf386ba8cbf6abfc91c6e425113b2d8e2dc5441f174eec28392fba17ea6791612c8657fbf7bc506b76043a362e0274d0302047c435bb50067306502310092f8e87ea97002609ad8417215dbfdea3d0f0ade961d271f8db5c9b4fa838e1b7b7e07973f685429feb9623724a69d2f02302986caad6d9650de1a6b966cc819dc5cc27187d99bf60ea83110faae41a25a434f93e8dd9c90440c42f79d68170dcc650302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ace98005e6f15f6fc64f57ce8f3ab43eec9df532fdc6cf0bdfead710c3886404543f6f1c43b62e04894b2e0abca8a9760230772d6112b5237e9d1d2f626c1699f38f2d1696f0676ed92a9e78878e03caece7da2809c89f1f5f9cb66fe3547913558a0302047c435bb5006730650231008697a783024165a6c9c452362745f0ec7cc4d4a310085df24e78eea21a23c37be3c11955ecbbaa94688421063e7bfb4602300a95fd9196e431898992f051fb50e0c6e8c50d94135561dbc9985f63e6de12b613bd6ac1fccb2bfd75a710cfe01ef6500302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306d9d292ff05f2d85e57d322152d24794448f38619c20ab253c7075a708d4a3a0a33bbe02a17c6a5bc64177a602ddaad6023100c54d9b6db79e8a6c835ce919a8523063b6149c3a43f4c15e3919cbff6cf0a4b3da80cba5abb4b08bb1a29b8aaa75f81b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502307f8daf15748e9a255c9dc7164225c294047d602e6d4358f0bba86a0fabc6fd5f13047354a378e12ffdb7238d64ced18202310097add0faba292003dd135050518ca7df506f7b353d0fc4c8881a02196b99adde4fe2b0f6462a3a3f2d8c1c21dd7a48c00302047c435bb5006730650231009a187b918323cdc44795b2c4b473bb2415db67cf98734714adaaab394f5c7e5de5f222c1761df1f5287a02c02d62b2f8023078c4229a6f0ab73a4f4b4be4e5af8b7ed78cce3f537fb33e25939f52f04c13416142c25291b0fa670681b515e8478e570302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ee4b1cada02f60500707032e4632b4517bc059f5e8d7dc18d728ec030be6e3e85bdc9525e13af10b8c79b788d35ae71f023100e3c62ab1ca45cc9693cb2c81acc15175aff082585e61c41983a1d4b761cd350ad3913f4d82ee8174ee69e5dab3293c0a0302047c435bb50066306402304fb21c16cd00cbeb9f9632392a65a1fb4990ae91f19313d5129a246190530ade8aedce27c31a1941d98515e7c900ed400230281cf65131870d0fcd6647c8f0e649236f656cf19c07ee2b34dc825cfa1c08189994a4117f544c66df19f55d1e8f7a810302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023015104a6d3a8524b7f0d98dbb42995d693b061b522b32f1b62cd91a1ba4806d0b4d59ec848972c00c2babd3e1e441c83f023042b551b169774f5bf0cbefd5cb6b29c8142997a6fc75bb47b3a306f06e00726f45fbc3879a667f06aba15cbdc37d4f2a0302047c435bb500673065023079da4897635418e5b6be3a7e2753c0e1e02228e1523511c61b1d53a428790f9962a7e01a3b53b459e573f10c6307e100023100bea1dcd4c9ed3903732e680c1c8aeb26a533d5ddc3f04c4d7c9632c9f1cee42a3fff22a07f54aebbba092eec9e944e430302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230081985c4d39d222445068c924dc8fa43c662d781d955ac1df6ef3a833424bf72b99c1de05db9282abe324c47fce0e7050231009630cd21e57a4d5ad99dab4ea1ac8c89d90f63704c50077843bb245dd966482246e5b07469278961ca3a7359ee35997c0302047c435bb50066306402306a5ea0b95a1681db3a03cd60b16f20bd62597094eded612bb3e78b79cdf8205401412bd0ccd849b177f8ec96966bb3c4023048b7243e16fd60543c7015a25c100da3c342b42e147e1684d0011ba915d3a72dafbb75bf73d48a31758e54eecad7a7050302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d4849015a4120ea92bbef90ecf51826e4fed355622b56dc3bf0e259ba73de6d718fc1df7c6e0a1806933866f8a5d608f023100d5f26efdea852413cf14f000e362b08fa16b9065b1a54cf12fd06638bb6d190c76317fb6e0a7e20b66d4f96b9c7a6f9a0302047c435bb500663064023012d4e3bd338d733819fec1772ac7c8517367f2f1d0e634d476670a5db15fc2cb91c332a3156b82ef7da0f267f7f232ca02307610a745debf5757e277aa6d35173af0e744f8438d1642d20a1440b3b7bd3e21d476a47be3d32c72b0e38449b92cfb0c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023000870f59a1669fb4f41abc049c7ba422591bf3875b006f16eb410902a3472067cca61c5f669675a93d3d06eb00464f0102304244fe3307fda4ab9e826406e15cf5fc402221470a1235b68a7d206b10ff076dc030fd1c16b2e40fdb7fe246c00065c90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310081daf73b60a0f3042d92fe528445a270fe7cb53015a89cc2a7187146aa175f3dc6e04db8f4586bb58a6f87d2048712c1023100e376169ee7dbd05c8fe3f09ee8d4e6b3660b94a5d68bf9adc5b06f314b1ad7500b8ee3cd428883b1d84bb1123311d70d0302047c435bb500673065023034b9d09b3ee6f0462e53f42b98624a33e8e42f8bf0f3aa033515952843e6b5459a29ab782afaba92d3f575852737d070023100ccb5c2500b5761880705717399a8708a7c8e4088ceab9cc361d36c72877a2c49ada573dcd054ce33f5e8b81e00eaec6d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310083d33507cf26fed2510bf26f039dfc78ba978729109f97552e0dd3ecffe888abf26ae0df31326b5fe8bf3bdf2a20cf1c023100e62e8a8921a8857588a628412edb8dc3eae6d77eb042d5be9b56aa3b2b71f2f5bb34d79cbada4972f998f8ee598d4c210302047c435bb50067306502302081d1dbaffb63afef79d7463ca7e53cd005faa4e74a7f30d50e5bf76d477cf7ee10500b0f99793ee566e5cb1d355274023100b765b1f2b2bffcdc7dc29e3d4734ed6b0d9d15ff68c5f254631669a918e12f041f6132f78f080e67a12179c95b9042a70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023049649f3f329d636d2f9bf80c3a9ac73c6600d41cc0a2249fe4b643cbf60b437d5a52301413c98533f1c9ab0b97c3833102304fd345763b2c6149b33704bda5221ea275195a10fc2efcc96ce0a86b557e612982c4d397cadde09e8e5347b1aebc0b250302047c435bb5006630640230351da2262b1b158357774f89d81c02365b125f7a130ba5656164dbb52e63b5545cbf4481e8db2d3cc3f94bee58a39ca202306a480164654e0e51b9c24eda7c6e20156ad4b80fe67097ee32dbf2ac9e416a55a30152cc04ea7cb05975c13ac0b4110e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e3db351a056b7910e740229cf24742440b952bac22c03c3751288d909bf7e93ad4f89d448a979f7ab7a102d0ea9d23da023005b9b5808080439b3ad64ab7fcd4e1dca8e831896de9fab0f263c45ef8b4025fdddf87a15d3bfd96837c98f2b014864d0302047c435bb500673065023100ba9de019ebd946cfc265fa8e1647e61cea39e001a96ba93230a8c1c12342577082c521b8d8704c5704693628c42fb2c902302a4592a5dc47806ea1ce82504e2bd707abea81f9fd3fa4c639b61b9c3c99f7dd610ccfed2510d4953b2a1e4c55880d630302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b374e20c548ac7ac04c734e8a6352b7a0edfa42ff064828ad12565f766d4f477bf6bba14d8d55301a981c496edf9f623023100c94481a4d85685abc64ce93e5ac889371dfc2b05ee4b3e6a49606061d84e98f4570ceb1640d00e192ae296b93a7358ea0302047c435bb500683066023100ea5082d6083733eb0112fde63165a69e4eb4fe669cf0af1261c3e0316c87347960a0430f35a7e104833e4f5bcab5f3aa0231009d7ebf653506aace4a7f0f198092ab4e9b3834807d00440e24f96e5c3adb3dca9ac278fe54644ec377dace01a627d7800302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100fd7f91d67666016f554001ddfdae44477629b66bfe26db179e26086c1a7f3700cdcdd2868b739fa6676010cda27a9e3302310086e99645eca7d7effddbdb37bf16579459104e6f7613e0e02386c559a98d3db6cfb12327229d2749f1afbd1dd36983400302047c435bb500683066023100dc7cb415d32668bddf271360fef6ee4eda68bded901f6e2d05f5fff3c1ee944156661d1f5e8dd231a9bca7e86c030f8d023100c15608543d05a04114153e463f3a180ba3e7dd1de3417f613b6f0205df28ff40e45cb8d001b6db87439438ee9e3deb4f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f3991078a7501c0632feb77d4f24e20afc98c8b3eb5813a0dccc6c97aa280d2f1a42834212759a92bf1f69e0f2fce43d023021dbef3f84788407268236fb58d11ec6521b1b595e565ff4c4d13a552514873146b4dbcf96782216eaee3c2ad74ad2620302047c435bb50066306402300f62cda1380078a05233a24c6cbea08665c3c53b81363555a064d380a4a41584c0dca3f99e63f9c815a8f650697b5dd102307349190df4b40e3fc959068ae687fa30628cab0e6fb5ab2374612e780ec4e67e9309c73765e57e73311327001096a49a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a61de88dc72eec153fda589eadbcf9ac17892a9bdbd246c9c7514ba1afd493038654278bd9aa230b45457c95e96a9f23023100e6e8fe6f5a1488fb9c1dbf534117856b1cb8a17bb0cd0d6a17dd13194bde529bbd0340531d47817997709f905f45694b0302047c435bb500663064023035d01824306b9adff0f540e712df6cb054392fbe55565c875ae2f3c45468b89aacd9477a879218f4e2b6b5a5d4bb48f102305e4095a6b19ccb82e94ce0657fc11d1027d38dcebe25ee1d21f9fe25c37ff27c74c6d64b8dd7dbe5a16438cedcf5b0ae0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e4d7addd9878f57a5455f676908c590c7c6049aec63b62fa7844981f97d3ffe58f066fa936e559377f7ed87465ea1cbb023100ecfa801f1457991659f411490371eb901d8f098adad85829eebb62cb2c6dddb085869cb254cac305fb0323d31c606c080302047c435bb500673065023075e3e79d879a59bf8a3f9a6ef09f5a4a838e8522cf8f745cd4b3257d886450b0a2becbe48619d9bf6541dfb31e4c5a1a023100c692d205bd57837e14a9a59122027f059b654ccb72fa96bc45ecda61118a0ea506ae30ad468676ec720e73e30e03e9f10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023007ed2070395c8e4a319cfe876a6fcd57634e9e55be06584cc943f97a599e773f69a388d0b526fdeb1020b592fb61d7ab023100bc555b10227b5bab6d50add9c3858896a472ee12b4d51a894c0f2df3b4ec295c230e0086df2d8c48c35c0be401f8f50c0302047c435bb50066306402304720e28dd34418b7e5e3e0187d9ecd59daab11db5de83b0eab1b37d3f9dc3160ff4a7a89f8abbe9120eded55e1b9351002300ec92aeca11b5b14d9d3caad3d878779bdc232abea6b2ff93eaa2b439a70cb052da1a4e33bb05c516cfecba2800ec67d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023065dc4c8cf3d3dc5f3467f39749c5d5be488d8fa1ef4eda9a3c892b09b88b29c4c9a8e545c99b9d9ea8a55d4af5e7956102306b81b9e7f81647075360f776f4978a1acb6999dd1861470b79c1d84d5653d5417de20272f2c947d339e88d22b327b1c30302047c435bb500663064023031ced4cb8a8c3026d4245040fe27857a60a8d11517ad50010a8a37836625863968f2d63c308370b8b44337447af327a802302931c112b7b4dae570717e7be6eec3f6c8043e1df865d7b97d68c49ae97788464da5e9a93b7c6b4463ccc6dc36b268f50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023078d2a4942557c851f0b41d7057a257c433b02bae0046db97990754cf4661364566d8ec1a62795344b433f2ed7484be5d02301ef1b1e6df864d87315b653f0b2489ec149ad9de133704e3764bfd619a229f38550dbbc1ea48ac883656dd7e0a91a1780302047c435bb5006730650230204f4f0d0e821d9f6eaeab0db493f4132f88a94a4a6a7abae32b1f49c3a6db2ab948a9700c8e71eea02ae242d5eeed2e023100ca917edd7828829c502c1834f3c9856bf8969a0c0a3f0a3d41554efc2dfd424ea0cdc4779086fc471aaff68d9f6298fe0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c36bb39236bf20c9e0c5b4ad24650b5b8d15f5e2f91989d830e08f3c2d53c127f44d95d5ef76e0cf0b43db84a4b064df023100ae9ffa32b2c40e18b96dbab3a643b232acbf1d2bd04a2907c3cc0a17ebe0515fc2e4aeb60bcd04f355550b313c9d6d840302047c435bb5006730650230229c9461182ea34405bc25d5917b47aa21d4887e33c027e0b7e9cb65d7db836bda8f7c43a0e9f5a453e1250bea85b3b2023100c928ed4c11403243bd809b6f29c5e86ec5a648a3f8788a691e8279650b3427672fe31afb0ed75d07b19feb0c463d1d9a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c344c1e44e01230e0b50cf8cbf64276122493be3c5e1ed863b3e3c8cd29bc900ae36cddf797b087caf5bb204771230ae02302a69d5ec2b3df51ab5bab77522a624b7013a4bf4dc883f3b4ba843c74a686968244666b3b95cc761e616f248b6d9bef50302047c435bb50066306402305d85b04d7a58b832413985b477faa84f577cf81ad03d44bf314154dd16f7a8efddfeb4df8720acc18c85c1c993b7e04d0230464a07b9e0779e42b194152e9b1d9bbb3bdfe5e8237bfb056623b32f229b176382b98b8f19752430ac29e380e31c23cf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307bc9cfb521bb32968053f4fdf06dade20691884b618223690bd3c6e37bd23a0a02ac7c448f4bfb4b97b6c58a2c14e2a5023000b9e4344119130acce223edd6068924a6d5fa2eae0d843135b57cf6142072e5b0dc509e33800fc26d51a525fca2f4600302047c435bb500673065023022d3ab6810748bcf6aa65d15fe66244b21c662db1eb60a59197a94195bb70601086c3f911326f4bf82db1fca23562eab0231009cede79c5ed989a4920d8f20b6ddf85b42427815091425b688cc557157a6694ea736680ea8b9ce7103d15d92f128f50d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305debe058bc6b4b5d6644864845164e938abf42eb6437df475dc41827b9bf011e9e76fc27f67321f956d743cd63b2c5780230086a79c5aa01af0afeaff3b209ff6d2e92ce65d95b262a4658924601b472a406901c10c0476e9cda31b018c41dbc091b0302047c435bb500673065023100e9c437ad50be1cd138e60fa9af6948f269d2b75af54ca8a65c1522d9068925e621d5a35fdb048d2c8d6547dd63d607c702304bf37580bc3c31c0676af2a2c72381e5a08d9db317e6b3cf13c37834588cc6bc2aeefd5977da2f5b95bf628fdb98cb940302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100dc503277189142980990366ce952622f8417e8f2def30c4ef0966984565472f65e4a32ef345e9b788ddc937851108751023100d04b0b28dc53b745fdd8802f0ebbda4109561fb3812245a8ee8663d05d6771c5133ce223d8f8002412d48ef6d78b9f620302047c435bb500673065023100ee1edbce1081b8656f416201beeaab32150f07b1bb8494b91336dd7d8ae71991c8904861ae5683719d5b76996832a8dc023058e4d74e1f3972e57ccca4fd8505b75e985b80f3f068dc371a49bdf54ca06d1976d5299ed7b583ad94045b47449728610302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100910ba9c983b6ae31d0e707862b23aca5c2440737553fa157014c5d226b67cca061a4ee5b3a537245c687d4ecee3b79cd0231008883b4c5c811be7a44c37c31b3ae5e9bd8f23632795184b5cf90406d385419de2932b0534fc6553195a685837984575b0302047c435bb500683066023100881a56f53d7042c24fc3cc6ce327a07efe6d368fed5fedcbe04225f3d587002a0a692ea7324dd290964265c79f96aa63023100e329b23497861a71440f243265f0b25caa12a349065f7124aaf507d8c622e70c88e9e9d66a8d04e0904277567fe5956b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304691d7a1639cfe87e5185c7ad246137b2ff700d9f201b9ee130c820624ce1cb6c20370e53ba42352b6cce1e30df5bc86023100ad2d5feb828c033bc3437f5b3119e74bb5a0d4c955a4b33ad8fd4673371a8edf585a5870768117ac38feedb04ab10fba0302047c435bb500673065023100ddd1ce4b09161ba17f58e5f453965bac1f897ec0d0069fd12b47e3fc532371650f7ff4caaed955f99ac8bb2417ef3a4802304d99177cf1c7a1398032c57dbb4cf36b69e51a1b6048cf5b3f8223c8886a3297af1ed5e42f17bb6c122e7a0450f39c830302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100830adda64a8781efeadeec33e5eb04bab1ba028026e3d13f5f2b83d2ec4962ff8fee42a5bb455a67ecd42e1fd5eb405b023100858717ad3575d1b226bffdf972a33cbf34774b2d75680c8ef3846115402a62547a6b97936dac6e7cd41bb28e91382ded0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a1f021e7c74f8928905200b5d7f7cdd253fa1fe7215aed4d9364595c5a62869076470f4f245bdd4badab8ab16672fddc023036880bdfff9767b0f53ce47f039fb4c0aa0d845d274cb094a4239858bdfd4c4e253a6aaa2cb8379414cb4c8e22c9762e0302047c435bb50067306502302f883b3ddd98b63d60c2a364d6fe9fe851c105b2f3f5aede1759714633404bc30288e335ef7341edd5b0acc5b831c7840231008becd72faeccddda6f8ec3f9cd39d96a28c37c809198edd357b47fb5b867a0166c408861276841b50f96394e161deacb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a9126322d6395cef251f866b26151ed7c1eed2c2a45449c377b75477e0dd8cf6e19f28a1e1e6b982f62e8d7611d53b5402310081689a7a56af4fc92caaf76b1afd90d9f97ba76824525ec81f91f1d757ca4fb4c56fd46062768545abc2c17443b6c1330302047c435bb500683066023100cdd6b8263ecde88d947363af4a6ab82c27f2462c75a529dcde6979c47b1d1ff1e44fd03e13244e08fa67d446504aac75023100a7c54648dadc7d4cef907df2866a6ad2ed7e6d7b688c36df88ef5f1677e5fab01352ee4c3d0aff42a67ef33ebeb193810302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008bb5bb884f8ca5d71367c0e34170edd5bdcc4804d278e0c30a6d509482b35eab4ce98a4b2428739a029209c2f31531dd02301b65df5a410b9ed39cea945805c05f3761ecd41cc8ab81001ca869498bcc115c405d488dd745ef6f21d9c4bf1d644f900302047c435bb500683066023100b5b94cbf732337a7042a588b7415144bf26b31d676d38bbb04052533fb2731433182145760a11474c5c013395765b7430231009bce5f7b59597810dd32b90870c43b7fd9784a158cf6b45c5db9c0c47f8755352bc3c64436e4f8080abacacb082ef73e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023050ae21d23d00c16b5a52fdc3729b71dfb285936fd5ac357f74d467a8ac69ee3d20a232e23e84a4801deb50b93942277a023100a82503d68d832f43c921ba33c5c8588f7855b8a22c7ccd390b6938f50279795776bdf3057b99c29b70ef4020cbc866ff0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023032e88dc5eb88c51a9be4fa7372d716e92ac676412c023521189bca4625739a4b47bb79963e7df716422dc02fb65c037902306fe53bd97beb9b7d59b4594059529757336aaeb8c61a6f86fef4d70b6bf8d6cddd959e622727341d635903110daaa6fe0302047c435bb500673065023020f02e16265b6f522f7cecdace1ba2384d1851bc71c5ad2c781ba28c131f15627b6a4fa047604e9cef520577ad4c9ad20231009461735882578da56b1a49471783cf3ed96b31de85973c38b8037d65f9c046263576c00c9160f4979a370a4fb80774080302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c2fac3b7f0ab53cc0b07a142e9ffb72391455c2b43cba59224c9e5236687a05b07d98ae765154b269a9fcbbedf78e91602307d49c543ae144ea556ae8432c271263b5111f79dd9888f729ce78bbe3481babe2ac0d71168e36fcba125453be930d9ea0302047c435bb500663064023062b7921455cb4b0c04d4aa8b5438ebeb2b053b17d9d130994ec25841dcfdbf4ffe6b4ea268de2ba4b67d3535c7bd1ef302304b15ce9492bc89878d1a636d79da0c38e4da511d2d2813dfcbe584da6e1e4579e774d434096b3aa2d3bd11eee9e99d830302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023079a92b933d96caa3695ae31144e534cf8baccc6300da08bdf58252c5ec5563de74a884ab5883e909961f0d7cb0148f1c023062c9736b9a7625d312c1c9a445f8d5221ea3b110aa55d023a11f350aa4aa76014fba2f7dad9047b45b18cdef9459dd240302047c435bb500683066023100e19d2ac768fccf8b3135699f24b016f9f904b306aaa2fd084ae02710a775f8443004b105c7471e3112f620c209ce32b2023100dd7f556d27a1054f5e70bb537c4c01b7eca5d5516bc5a1d8c6a814a3c20c1958c370a5fef4c22667c3ffbe8ede8112c60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502307d7f99420e4e23ef21452d2ec0b834254f7ea5bd4f081cb4fd85a6131c771dd7020d6a7c4b117e03829b4fefbd32b89b023100a1de1ec98caf95ba0ca742d588e6658c15febf2532a5a37516b77e4af7c8049bbe3ae022223a937a6c0b018e43ae28a00302047c435bb50066306402306977f4e545a2dcdff2709207e959c469efee27200efe29dd4701ec41fd2c2314de931f6a13b9429c33897f99be17205702306bc84c696c72842640a0d5716e7587525f452da82833e9413a20c71272fa3b23c4bbc36c95875f8fa2653d8e25c2227f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023063e0639f0deef66ac10269c949e9cf9ed372ae514a51602bb1e00da5a1915df9d32582285427ea0288c533bac104c53a02302f24a2fc62813e206b6561752f3fd2db866e259d706caa4a9b4fa2d3e713d9317d65ac74bb800650f7e5b3cb8067c7f10302047c435bb5006730650231008affc23e37f6d86a819c762b439b4e3423d005f861c14681fe9b239818e034f41432039bd16cc2a24f5a13f0f3469f0702305211ed943f33440a773e0695c5ac7d6e3a9a3e9d3dcc3a99fb7bb7ec5918bb339f96135531145eef9a1eec607b1d52350302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230276ebc735aca2a316ddb267a9ae478915e3ef5f41f5cc79bc239e198ca33d4056a57db76cfaa7d05c7b701e9ec544b35023033801ba1eb2f3e93bab64250dd66a75105a8561ef8572686599f63792d87349673111a06043ea59622bc2358064743790302047c435bb50066306402305fa8150ad6ba0cd43112c564ba21288344a2b9158936619b974023790ae512c7d10257efb5ca388a263d89ffdc07681e0230209555f4c375b90bdf87dc4f07f613ef3789228a8f7d9796aaa0a9635600d2cb8c0f5078524a9d35b7d8ee523dab93f00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008e147b4dd41e5756b1f42828e68c825f11784b0c0ebce8318fa4b006ebf6ef4fbf7aeb2826d127e97a3421976b84c1bc023100916e540423b5b62d6d4b3258d82253b1bb68715a0d3882dfdb5c34d4611a77fcec4dc8b064779f36d3da55daecc4cab00302047c435bb500673065023100f9f41f494aa3fa53ca8e9f03f323a8116e14126db48e4c8d55a860ab6f51bf4bc3449e603d3a341be034ace82d321dae02300ec730ae9df3cd4aca236b06109c171aa4f25311b9e24721a4d691ee2c70fbcf8050d3235ba08c5731025a84b11dfb7f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009dab4623ac76a6e62572cf6180a0c09d279fb08a4a8ee1164156ab1c8071762f02717ebcd477d1613ffba25e6ba9541e0230753665a856b57ecb50000252d5d763e380efa2c67296e79a9c9a0613bf83aa8a470e5987486a27eedb4ca14f0d3081670302047c435bb500673065023100c56c279c82660dc18a00ad6b5bf1fcea2f6e077bc3d8766ece4c89b35a052e5c8f9431b948180dbe713d0dea7dc69729023027e8725fee29f34e447f85ae6c396f73dfa8f6de7cddff6666e8ce1cdb451292cd3ad3a36b74160b6a3189f6b7a0b3900302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305d3b246bf4fa98f0d654e0a70655809bf46cbcded740d103f3a5ae23cfe12b5605489f2a2f02c997ef68ac0cf5a2351102305a91e98ffd1408177cb5b37e055501b09c936a4714a176b76278e449485cce3120bd3aa94604c2d22998d9d770228e290302047c435bb500673065023100df852bbf72565e1b41cff4c84bd52a812f4d80f9a9398306bf49727444a5aa22c29ba468ca664ba8c44fef2b67a99b99023067cd1bcc4a39042463944dd4cf0ea3d4bf1abd95d9dbf46e6b3f3bdaa04ca796f56462383f21ea56efd36dfb02e1409b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c70b530733ace381d6c9513df806f0c290d815e1df9f29a27a395e07a7dcae0660209f5a3ec9d7cd1284e25824117f2c023100ba2f2face9b383a354722ac9f1c18a0bc2e549cf19435fcfb7a381e8d392c226da4319130a65985d356154322c633e2c0302047c435bb500673065023100aec70abd90e5721f11c6d223bfee79f03d5304f78fc01836be1d447b82b1fcbf61843c87374250ce7d5caaec61415ddd023045bc9d55faf9b3b222963c7268ff6d36ee00efd71632738ed95eadb2e8ef5a5f26d76f6a9c452caed6e276651e2760430302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300f1ea77b1355a3f36b129a2e27c97c35090bc55f26f5372b7e3b195fa62aa049ddb473015f4cb4f98c2cb0523de341bd02300942013350c9ae0f9f1899cb6dbe98876c2e19cf58673152f3a8557e2823e6673c27c152969428a2660e4ffd47479c160302047c435bb500683066023100922bfe20e846bfc0d6d4ca4d2b433287f6be3068025b4c38837b9dc78386fd9629f13abe823a9d0993219353cd52f31f023100915fdfe5a6a05bc41610ddea4b306fab4c7d6d66cbe02e779c6e071561720d273634798f448e3d1580610e833c0a56880302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310087240f9312d009e9036864f4f06286e1699ab63db3612ebc80fc5d7f4564a8cf5f17826d8c0a04830c2491cdc2225e0102306ecbcedd735ac5e188342229521e688f72cb3781cd03732c2f59258d1c035e7c0e165e12e488eb4b9f9723ab781427cf0302047c435bb500673065023022869df38208c7d5040c40290f9092f2e137c591d0dfc2be1a0853a4209ed40536d1f6413d977f53463db9951db87f4a023100cf5f69d4549e9d1d9d6848b6e83673aa352690bb14812702a3767f6671a5ed2b4f95b3ecc361c948754e6ab00f02a4150302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f2617d411e3ef84cf09d6da4880f61ddc5149ccf539ef89dddcb9c795e3c7a1bef4c906f4e6594a009d67ae64ca2b9da0230560729d9c5ce75acca0f5ecb0672992c0a1781617aee95148b2bc87bd7f4cd74fe59dcd2b6c88d1427945191551a9cec0302047c435bb500673065023100e0598bbb6e027bfb2d58f9d92d3cd1800a693d8a98a2c31192d0ed55e01091693536e17b40a7992a007c40e6ca9383230230501283053ede80304a48cd4450db14057fcfd6c2bb5558a5ad2c800d4beabb6f27ea0495f4dcd085cc7b045e92cd93c20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100fb2ae41d8c7b11744e073ab89a4e29dba5986b3e82de79524e46104c35599e4dcdb4431574aa34f1d449beb74a948690023100c8f4c6340a3a9040ad7a2c92952c29334a3bde8d09ee3a430a87d81caa043e129ed4dea800d8d55f58da4e9de744c4fa0302047c435bb500683066023100dd962a037a07c3a5042ae596eea9b341e2203fb9aee9c7f5d6f01ae934ecfed61e740a5f8137f064ee2480f2e6e25b62023100d0099592c28c149803f03aa73be22f413f647f71b61cd1379ecc29c1ab903fae84a8f0674efc472d760391b5a379486e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b2058d2a7d556278110c0d5b7651e1a4cefcbb9e9036f901e3779345b2cdc1f13c3979eaf8e6832434d7f399b5c5a5ac023100f27a2a5b0490b4a0c6a54bb992456cc67d1a1260489fdcd2623245907a2ed51a3db7753ff182b44168862bbfac78001e0302047c435bb50066306402301b245c210978af6db47f47d3643d12be152d33aebd850477b481bffc4ad833a8f5d2e283faef8fa2b269b8842e0222d40230688c51361b7d4614791db4baf9333a2460b672f337de45364a777c1882ada30cbd9b5990e331ececa766ec7cf5e153bb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306e74bf8a5c3955b79cbbba0d8ce32816cb2fa9cf633d7c2cd54be8d68724b67836ce9f9b0043b9128d6f0f3694e40425023100da97559db4c21344dcebf6d860520107b11b5026ee6901aa79b5b382093e5f6027674c13ebdfad72455481c6944dd1240302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230798835452d5e1d6a0f6689bf97273a49ce6f07bbcde7ecebf4bdae1d685ec222e46af8f2f5b4e7acbf5eca95f18394df023100e63ee923bca8a01f9d72dc591f32b0e7eb2aa80b52ced57a5ee405e30b21d8e1498eb9204ded4d70fa76567e04e7d3b40302047c435bb500673065023050af41e60a5f61953dfcde3f149e4d0eaad1db75a24082059716da7a0b9b4e3c345c696d80258b97a17979a3efb45b63023100f45f6131e8dd55bdb6477662fa683561e78221b9bcea185372f3b645492339d6fd52b35d4cb03a0da706b9443ae7ca650302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c1e14b36cecf7abaf2047c795f405edb6eabdf009a81061a25b83949ae4664ec21e2780ceb56265cb40029aa15ac03920231009fa7acea501f93edda8a9324393bcb5e1bdf598a0152b92518548a0ccfcc430f623cd9072d9ec79ce01ec59525873a740302047c435bb5006630640230470cfa8859c5a71fa76c0415d90ef3555a8a3c1cbdbb63122de55010c6634470257a533c716ef34d60f619c20028963502303abd1b6067123d2263702f41da7a67b97d74dbe1a07024f43e2eb143eab59c61607fc6743d795991c6a326158e35b1fd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301443528c80537b9cf94ea4389a506f569ab2a80ea1bbc38791e1d378a751ee6e2d52f7738352e3a0417531aadbaee95c023100d03e0a403e147f1a619aa604b7093bd924f395ab311f68f011b6beeb52e9b91c5057443d5cecc565684130b61d80c95e0302047c435bb5006730650230669b4005fbfac246a1e650d7a099356f7fb09e7d821e4badb0d632ce7bb02bb065fff36a6af3e3d54084a5503442436c023100bc07e99b99fe7a04f8d93861eb5215726a1d0fa5e75337162e72cff7f18eb2d5d72646e28b5a5c5fbf3591dbed95a32a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023005691cd58fd99609c570c395f190a781c5df670622424fbc28caba35605150068fa71f6bcd2af8a06d1707129b08891d023100860711cd1534475ebbcf1a1ef4598e213ba31653654542aa80a26ea0cca4c239d4f7f6fd57abdab1dd257e3f4c8c45ae0302047c435bb50066306402302173e09c702e4727f61d00dc16cc2c068523a1974d8344946537e1b90fd99f370cb120f0957bc988017598e3d6c05d820230646034cdda7a3973e244ffb466ce799883fe3952b5b41cc2cda637bbf91d87e45b4eb5bcf0990cb85727d1648a04e3d20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100da7408ffd35c3845c1c75ecfc19e667b54665ffa6594e9a004c6993940cfe6bb5897255b021e63bc0f3779f8573e3978023100f3dfcf0eb3fc51d578cb8a4e797dcc71cbaf905d4a53ed3bdc32d198c2729562516e0d05688f287cc3c8da8e5a323c550302047c435bb500673065023100d48b7926ef152db0a410f72096b3afb5834a2e653097c011b4d2a29598538f0964f4702a54cd296f30bc38dc3348de8002301f4f0943a42bbb4d2bea49504d09a125938cd0cb3d9bbddf86bc24b4507ce2e2896209ced6469fbae72970dfcd16f8bf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008b85b702a89403ef1d825a1a2373e9fd317df2a95540843862032deca88edf8b5db71087bd09be9de3b3dfd6b4a55bfc0230593b45c1bc96629ad06b5cb8f801105999b989291427a667440a0e19b9464575ff3fd5e89337aaf5df97f8e243a8d9bb0302047c435bb500673065023061600a16fa995f8b2ff8d19216fe6ae0f3041eca89f0cce1ba945395159e1aff36dde4220b398e06edc3e33ad7f41902023100d833dea5a0c4474d8dba1ae424c445906ea64defd7563d749daeaeba5101b599b05b350103e643fcf7b13aab116c03bb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d4e971c39561fa13af8af64e26c9a5321f19dc35ea3b479e6049124a5a290460e6da36211e3045584d65b0012ee95293023100b2dfe0953b268eca2e1ecf7a76cecc6681cbafdf76ff9d4d4b344b67fa01bf115eaa38149b63562348b29e7421e687d30302047c435bb500673065023019540d73ce45827e5f75ee4605b9f51a21faae6461f1754ccf65803cc3a89e386c29aae0e69e399713659019a842e140023100ef6d0093df5d07af6cb5bbe1cb0428ccfa393326314dc7ad1d5a0c058bc4d72f13971999d037d6cd192dee73d2d9bb6a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310086891283eddb88a212b12c39300af7e27456dd59f63cb3ad29d48a3d37c4e4c98235d502e9058ce3faa0613a5bc2701f02305ee717f6cf55d254f74bf9ba5e5196ffd61132210ef854f9bf444a4f0cebf9789f8d1674606515118fc773946f4652310302047c435bb500673065023100c78752b5bb5f2fad5198d11a9c37b121ed84d0def817f1bfbb3066ba55560b195f68c0a6bd0bc84ee0ab74c4987cea9e02301121ec16903cac4ed8a7d9c402766814406953f6d88c90bd869375d7abe7d42d67c9b0d562537590af4b126f8b8ee0790302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008bf8b0c1a8cad0b5d19d67f45e84b09312bd4af4cdfc752896a598caf14cdd2f3833bcad1eafbd76e3fbae59a4b9ee6a023100e723a4d935c8c28711ff518676e0949933a482d9cb0d5bb56997c54635b6e324670e26681e28ceafe2eb15574b5ea2e70302047c435bb50067306502305ddb0c8c8ab7af17e67843686168fdaf58bd8b9c87ac35f15a3c1a2dd1c035ec92bdf501d8420f48cbc818f1598b37eb023100d1de69d308d88e9703c52c641b55085cab8f4ae099c5ad59a6881e142d33f40eae1c823fb680de9619567e44cd17aef00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e37b0b3415cf2baedcbf8c2fb4a69bb8f4eb4320817ffc8135f63132b7607719f7c2283ac6f4e35228db21802c6f2ba3023100c81474a3a24c0fb8c878377689d2866a72cefeab4ba385a1a52f8c19bfb6abac6f52afacb896e41c3a662283a66912030302047c435bb500673065023100e9088c2a425d8b84b4424a4dfcfef60ee6c64a8b01a3f00460374f626694268db1e856b50afc212230d66a81b524991702306635b084b2c1261e3b02648a056cdd236f5cbf22280bf9c55303efb049e701b5b14f264b038fb9d82dae50fb4685b2860302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b6526f09aafb109d224355f1469a5d5a67c3c59f193e65f32623762320be838f25c9137ea7d030b31d83fe081314c63b02302289a41815d5625d706b7bb435a1727b2fa6f51d074c4d03dbf51b86b34816fc5f25f1aa6b963c246f7f3042cda9bb950302047c435bb500673065023100d357739e3f756c774ff0ecf64fdf040ee69b41a335e6eaa602bf17fbf4162eb736456ae49b0af243931668807e46faa302304086b55275fd2c43ffcb19f016d9825331de8e2e16bc56d6be69582cee5425768f55262d53e9d45ccdb9f130471f1b180302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a4842f2be77b0ddef7a429c8a17f4eaf43417f0510a50b39f4ae6d9ee57d3bf4952c9792ddffdb3d9c414f2bbcf1cf8d023100ccb37ce0771f8ad42782a728adf06b0148402f30d17fc3c4a8405259b80bf3e6de8f9dca222e4c174c3e5b1ad58356410302047c435bb50067306502301c325b6cacebebb222cc4e48d024f4fc6c81c3c6bc55f3003517d4b5a6701f80f1281ad3d6f052ae1658361a4de835e7023100deaf16aee67dc298356bf3bd365244fb06b5c873eb3208a35720680742d9ff0167fae3fc8be6efd333cf2ae3ac6e532b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100cfd0379bc0e69a6f408b5aa4443ebe0c18b6c7e99a49a358cc4f8817a8d7da3b8af9c6770de6072ee9bbf89d8f4759bb02303a23d62d67db97d8c797b43669748c50c4ab38ecf367501bd0cba60ad225c83809ee7108514a728d5f8977016893c6f80302047c435bb50067306502305bb1fdff2b9475867a905d0fe3270d65999ae8d90bdc008fb2e612844bf7ab978be2b469c44c9867da884a0849ecf06f023100f816b8b50a2b34df0219b13eaa2eeba76b14d35bdaa29c25aa89756753cfa1b13d412bb9cdeaca009f12469cde4405f90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023050486050bc86ab0463afb0f31762f6d6489ca88d75402a0825ed06d40a0748114bbce87f9f262e9678a4ef4ede2d88ad023100d3011681b903d843e17dfffb81fc860c412f1c0f129b8ee44e71cc73914c0e6c4a6ec5aed45cc45b65f37ae2bcaf19990302047c435bb50068306602310085118db6cb21da320446b35f439cbca0ab2a28ac95301642b4b687d6077aaf9fe61f02f8b23c3b2fcb80243a50e31413023100d8e9216ec451a2f9441a1ab986a20a7f956d2fe3a60ac144852ee4bbb7c7445ef5256ee345d66007a56473b8eb2dab220302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023042355c2bde229f58e0f11ae26e1d539c64e676473c89fe1691f90d21562880f4678335e098fc1c4f1e346ca9bb641617023100da7c768a9f8a3e3829b4a58979fbbb1b63021118dc6804fcaba27b1b7c9e1e0035a9fdae56a9864ffefa862562bb9cbe0302047c435bb5006730650231008e00a282fce68283272c52557c98e76e560469b2f28700a2cfd5d53cafc81125f288a25d477868132126338a6ba97e5d023061572ae45a99398b04c25acf046e89685f79f6ec7926e3e9fdffe0809f1ec05ccede5ad5b1edc8a02b7b5e9a203599120302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008a23beec5fab986bccba5a28622df9d9597b97b6f67a173688fdc916147eb541f2d4e978625b252ada0762d64dd9af8a023076e54d569d2860c65c47f6fac4a2875029f0a5cfc9dda994909c3684c4821af4de950274d2b49ca95a255baabb64febc0302047c435bb500673065023100d2f38eeba2a8297a7fc80846de9d5eee9830ab20d6ca88cbfc8b989ea0c06b9eb240641a9b848c8efc653e99c3cf383302306a1fc08d6d0ad9d504149b6753213dbc8e2436496f88229222d984e102192cb27fbc066650cc2f8d7f6c3672239b97d70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306e9da841574edac2635105138a9c97b6dc9e113ba0884095777227649cee845a9d17d4db7eee0f477b704cf322a67c62023100b4f9750f61e8bc21d8266b3860d45dc11a3093ad21655b8f3910ce6cfc4f1c4bd8d5be33dbc9980395570831060521900302047c435bb5006830660231008b09704214e4368da6877058432876c70bed5f28a30b3edb0d8c068bd1e0c5d874c266e88a91abe7bafbea0e8355cb7e02310098cccaaa4beab2f6ac51e210caf382528a4d7d138b0d1117aafe51d128ad21e35759996ad84b8d6a76f22ab588191abb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b230e887557d93b395c296d5316461ce5af1c8bf511e80986d6be235354843f02ce9265e6429e9ee6d389e19f1ac9e82023100c81468c1c1a22aeb1cad86793fda4f6e1ae9bd2d00bdbadc071fa762a42c91027dcfbcf0e1cd8dfb7b6ae7bf274213e40302047c435bb50066306402307b02c82106a66460d0f30349f944983fbe68b13da488c46e81366a3403da14d64b6eaebd33e5a42e31656ad6708de345023003e5be79253c001d6a8903d332dba897ecc9a3be97f5e30ababa623feeda6695cb97721de77cb901a4a6bddbb1afab030302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023019298ab917a05df7cf3bbbd8792a741159f6b0bb5e3c8354673d42ee22cca3ce39a3abbd56cb3ead4335cd94e35155610231009ddba859f0587e3d65827542904f68698bb55902e2d78695ee6e5f31f35fd6519d02954d7db1bdd72512685f723b643e0302047c435bb500683066023100c539416b0090fb98002560f96bd8b259661d75bbd64d4046fe45ae0fd6c9292ea5bc52edb67c692ca5953811869e6ab8023100a95ba2fe921cf4b3e9d3d47fba85b79b4336f22cf738e26f9cae71ce6cbff97d03890fb7fac5517fe2b0f637495fe16e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023034eecc402001a36280ecd45bf3297974b735ab378502369315048eb3e359e6b46426490f3a3590e5910a3f6cc2133d07023032a811b436eabdb122c4e8a282cdb02ba303f15d4dc73db4f36399cd7c9e5528f05fac57f95f085e193253ab4892319c0302047c435bb50067306502302a327a6dd3dc264c02d03ee80a77479f160a6d6d44191c29020381c1c5c28ca46d06709a1fe2f87e71469ece99a1d043023100e9f1e94c7d4587ac9f1c1bc79f03dfe5560206b6f61bc7e0918b0d3a3972071f82359043b899a8fb1be9c733c20250b60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a500dce1a39f8453b96a4cbbf14edc7966ec471ee356e58f82f64642e98cc2bf034c760b0961decebecf6ffca200bee302303aea7c360ef772c40c30c3ee84750e124d3d1d304a8dd2c636f04d526df62a736210c07af0274367babdd4dd083770c00302047c435bb500663064023064d13ef74e5ef5a133f5a7e49df084c4564a2495c72a7a25859021ba87e6fb8d0000e9c859515269824fdbb63b6f63cc023040058e16f5fc4f14ebca207066516229966603de51b5aac4f01cd2a308bdc288f8a3b46a4228d69f2381973cdf632ea80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023000941ff3087f3f172ec67ba3972e275b0fff4ac6f0901ba08eb481d238792736af1878f30164a080f34c3a7be6e2deb3023100c5dd6c073f00f57617f4ea62f8a7eb159813b04b3570fbe98311259b0fdbef50860863e956932014de2fe1dc5b9adbd20302047c435bb500663064023065f8b932ea79b02f6cd3293040f62a3ca1d98519121c90e428581ff726015877994ec37e8d97827615727c7db61f870502307b5fcd4af244909cc199daac8e379533282c8c069df0eff0c6e66b5cfaba9b06c421c031c955556e1e0a900017c28e1f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100eb42dd7cea086e3b44eab7aaddfc20b9a50af7dab7a2a7d2dc60bbd2512e27c72ca4ff4ceb73ff54dcda25bf36dece00023100f11f3f9087e56730cf665db130998f487312c6a6d5083ed675c50e1a3f480ca3c5a8e156bfbfadb3fcb82030d7de0fda0302047c435bb5006730650230178c6225c7711f0653279a8e2835100e57f2de793b2e7a00e862bbc14ad776efd1402c6fdda6e1388aa5ae6b5d2eba61023100ca5ef171d159859ec86620aa4b00088d1a38b5eb650f74f209e9eea29c9c1f25786c80779f7c5878c4e690a275fbe1dc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ef4c008facd1af858c50f1adcb87c62ae7deda116a40d316b498c179f0b62bb45a5692ee1e03665eb1107b8c7ef62a1e023100fdf9e7041a209512f28ff8080513f6a5c10218c8037fc16320e5dc0fbde32372caf9c90dedd6b9e90368ae7c56a4c2210302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230119434d111a43f39705660672e84ebdf8e0d7428bcb7d7db4872177fd35d4ecb5dac59715a85e2fa16356b5f33701c32023069c80c6c93b1f58deb8902541d1d0f5f07fdde732b7158fb0a5d381bbc56803a76f23f04d7e2e18a16e30c3db0c6edeb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023030c6c39eb0d0f518ff91fb8d4cfe5da9180bb9f9bce98ca627d5d2621d3b7d5f45f9e08a3f3b7917be90294bb0c81382023100bddf28a2610d34b9d6a77b8588f874f0a4e8c71a5e768deeafc0dd7b71d10bfe6fa0cd68de5e98b770675f672203d7cd0302047c435bb5006630640230369595a05bbe87501c0ea441608c676831afa89a9ae697cca41912293e731abd85f723629135758746f4265a1e7e2b4b023013bae0181b8a7ca41c12690def4b0aa9e7fe4e6024dbaa4b8279090f84f9b1409bde330e58195f977a56c0455452ffb90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023040b0cfa2a4f329aeb8a4c368fc47b7431717d3cc408b6c8f45514b997f449a80c978c8fe1864baf9a11746e63e5b649602302e09581f46ac63f9442a010ccb334c4940d74a1f8f23384d0c4bbe8abef6f568ffa06ddb43ec445d5ea3f366015111320302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301531bed94d82dcab9dbb9399439e41bb84569a99331b8bfe1929b4f9e442974803de47ad2bd6e4ce03a1dfe277b688f5023044052ce8af611160d771e03baa2a59310253ac347eb96970ae96ab114b22edd1a2a62412899e388c12728f30929695c80302047c435bb500663064023036eaee5406b601edf8f41d1134f7d8b5b7e8067dd4ef7423d967e35947c67cfce94d2ce46b59e1627a55ccc2293bef4c02305740dc9534edfa842cb8411de0ca0aebc447bdf17909b2ccdbf62202f60c7958294bb102fe9b1eefe4dee8f8cf15bc5d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a05f2cf9a29cab9ccbeccc3d1dc40ccd5a9966bb3b483a58b6eb275648c586b6170e828d9aeb1b0df6897251e90f51c2023067e70a0dbd1e5ce0418d875f7d6810b3aadbdf87e67cead40d31e9dfa58e68cf3b60194b461f30d05099b094217c78150302047c435bb500673065023100e0829092b04e7d421b78c606627513ab2a0f85479ec1dcd9cfdb89c2e1740820518d0076c5481b4eeadccfa35232771002306e68be6aa8401e140bfc28effcf592533ed6247a5c78eb9a6e6b873f1f5a09d9c77173a395ca924fb6da9c0f6b3d079a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310086625d06d2e788f75372b8fc6a6fdb2f12fac85c560141f74f2672b2531909294a39cdff746cf9134b2a25967ea6fe9b02310095e49aafad3952b1fd9115eea139193ec2c1ce413998e753a36d526236620ecc2862c8fa488c734495f768803e1b1ffb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023009897d1b70461f7e42d491896d1c1be9f8f85dac7427df014914463242e236ac3867300d8303491768dc27fdb5d8d82a023100b58b46f2d8348ceb131c885ef316983857d5c81decef58dbac5dc676402bb82ffb297f4e88b4986dd405fee2b0b6d0390302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230537c801e17d309c36e1bb352754ebf7fe0d8139054176479cae47d309ea540eccd3ba09d0ae76413ebbc08dabdf4935d02310095166fbb9fad4dffcdc83fc353cb8fa0b94ebf5394a67641d9025a2f749e2125aea5e76901604c27295dfc4e733c63df0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023001937bfb9e0fec748bef2458aaaa14740dc28880cf074827460069fccdaa6d363aeef39ceb44b0adf18f8ce67e65c101023100fd2574751a3de0e9aa64b3ee3c154b3a02554718411adae0e788e411cb2eea01e66526c50af272ab260fcee9a85029f90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307b5d226e4a1a3a2b1f25a5ad3be661764fda13d1d61d387b01cf5fe1326a3e8c35548e55207e905744727bbc97e855da0230529e9a7be873bbf4f9c26b321365f59486754f5727f2be1d4b93f352791c4e230c5cc6982688b143d8b0ba17b10a9dbd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310083899a1019ee677ea2c34206c5647bc6ff6c10e108712e4ce80060c31828c7506573cb750e8d9198deebbf8d72fd116902300ef45f64cbb278f4ab9a0bcda035853d068ac7252b9095ca4709ccb248bf47005e45a6afb99502198b88df8b6c0b73b90302047c435bb500683066023100fbff97b8b1b634352be0e6d0b17ac028b251c8f21d2e8ae943dbb894634a97adc5864b284b6619420900a63be4a867320231009a6cacf18681dafddad08e00396a8a175bb1e174602632125eedfa95566d8b345b6e3ef17e7e4a2198d3c763ab4aa0590302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310093f68728b8f507776967c6b4fce151714242b8e652b12637fa681a07eac4b889e657d59a0a2f1607a315b0208aad200c023100e611c750d6368bf28f202fa2b93593e9976dda13eb79fc58e8527288bf61dbcc6c1d995a992afe61b21edf6c23791a210302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023036b426e16eecc63b22ea6f2b6957372ce55c7ce3f24493d84b693094957148c5c3bfa4bdeceee6b2230eafd1395c7f360230123da29e27b263ac515f7f84213b2b81c4d7477263d3c1f973b9c972c60352f0dafbccdfd2c5d1ccb3ab787e559e7f6d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c650adb93994663e5e9a9551838cf7318c556e5b9a21e3b84e909379035dc3e97da2401e33d3c4f9cd97e094dd157aac0230447a78492cb74c1923f4b3dd897fa3dc76508f0de2008cda4427ed893dd76561f6b4a6115c00bd078dc59cf22563ce1f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023043e362208d96e33a89b3a8381e1cf4179b3d75e5a40a0798e0d2a701a8e5fabf61edc62dfbe112e1b9ece7ec63c9c36602303addee6d30a581e8b7834b0024d674f315a2ed81807d589d10f5a49da514f9cfee4b0e615a3724577d3e8ff3ceb756e30302047c435bb500683066023100d9a6f4402b49410c2c706311bb9c1c5551c9141556f718153794ff05ba7e8161b6cfa5253c5e28d55883cc3238689f70023100bc5b387670bd7e7ce42f0ece008d278853e05709c1498fffd7a5913b7fe9d90ba97c67d16f9d4e6a7ecb291cfd0baecd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c673e6dd1a67bac623756a69f1dfbebbdf02c0df883afb2aa913cb9e5e2ad8ca7a7aeb035e97f6d6a75eb3264e5a5a36023100dd61c08ef943e88f31f89f1f8387ae38d5279731e945f6882e7c2b97f832d32d1d979dd55e200a22212234e6b60572980302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100877bacf7acae86e172780bb26cec6f99fe745b38e5a502f0408f707422ff0fbd9af51fe7c822d4a043b53ebc81534f910230682f2786acafce94984e2f1b404f9375be8f9c10c5c6d175523607a9c3603d03230e18ffa8a77bced57acc20be314e910302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e3c77e3321bd1892b155cdd5fb314c9c3fe60e4dbd679693ad3e1992df3d46e57cead8e2ff2d61216592a38654d3d20b02304cafd43efbcdb75afebe78d75bbc8b0f425577b539d5c25132780ef873a2b34d565c8c90bc58e8220eb4456c065678820302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e92e019b7a37e31baafbf3acd4f7598aa0da1ca7cc4783795c5500ddd73aa89ae0fc305fb271b1ba286c7f0eaa8131f2023100ee6a6535dae8979e65729fe9803bb3563c54dab0b5b7c53de9fbdfca5355e14940131eb2661df03c03b6a958d0df25a90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100fbd24122d4034e0842f8c413856f9980432a26076d95fa19105a1e7ba0f391ad8e0eb038a410dc6324f34757f7c275b60230448441953d5cbb4d5596c72769341a973d15a62e45dba78ecdf779c8022e88ffde348d0cd1645d4ba02b75c5408cc4500302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100fbb3f98cbb8e43a87a27b352e9dd45ac4bc708e20ae7e53381285afdf2a82570a65f1e16ae19454e58b3eef46e8e7285023100f751fadf00aef5f4d6e425bfe69c7bed49b5cb47776e263690f346a13578f45eca36bda2802b8f9cb0e4f24a2cc24e4d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305bf561b4961699d408cde804c244be9382a788818982b2832ecb3e873947bab0179ec3749dcc85ce021ffe3cfbea8d88023100ef035e9004a6f23b07cf0df5ba036f7d62a4e2085bbb04cc9092e44271278b7950a94302c1890366037264af9e0719ec0302047c435bb500663064023003087f5b89709936decb505e037b6309a674eb7707681e3db1efe4601bef9e8c370923d63eab98070966bc7a263e2da902307f902675b7275f61b5c9c8b6a1248f9f5ba71466b7ea7358dfea709154f2ad1bd53443618308ce5ded1ef19f43ea0bd90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e9d7078e5583debd80331b0266ede4984b51382bb06f2886a8e3b6c1be1a28b0615b28d5fd7c4e8e3f79662c22133232023100851c4556ad9cc0834fcb45546001d21f0d37ee3453284d3e684f95249258d6c42a31fa3f3e990d5b2e5b1eebd93435640302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e791dd5ee5c6dbae91c99c25ab4f3edfc723922f78f1cd372aae2416c17959285a96d9c943e007fa7b63c9d93ab5f2ff023026f51d7f21d285665c1172c2ef47234c76427d494854705852b4f59aa4d2bde4b6413c2706de4fef014a46c7b1082a990302047c435bb500673065023100fef411b29cc98e79c864dbe6c4abb01b75844afccbb030e689b74d6e0a26c49ffdd04dae396b22043bbafe914d30350602301f0428140dd55d1255c65ec583e58e9323b67d1671d924d3a0fb2a61c6420ba4bcde177596ade6b3b8b612ddea3a8fb00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008262f3ccba4bb4ec6d35665a4d1ddce310a46bfd93aa4e87faeb3ffa8d2071e8deb0cfb5a1b637f8eaaef0166027e2ef023074a3bf2848fc7852d6a4f55afda6ae7dc3735ed7bf9f812712ddc98a95828932c19f262f484a19b5940f537bc8edd9670302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a35ee1b574849435ba33f23c86c359a8f7874f5c1396b9e0d3d04f797c4123bc8e5a460199ece523b7dca10857d34d2a0230119c08f5f44bbb421090f41244b1a7cb633d513ababfae62c4f84792ed2c5204577c78dc7545f2e402246e0225b8a2520302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230611092feda8a10bf9d48179c113d2bdf18f4ec9ed397d4f8db5493a9a30a7c7818abf42ad6da11f903e5cb60ac08f407023100f59865c98cebb03257fe3e41b82934b14c53f59784912eaf250c1deba0d8e2d56418e8ca72c467186d4b54cc239bc3810302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d7b4af231b5028b4f2188150e6d4dc257086c553e260100aaba7af5b2058deee23aa03c9c14f9a85cb7fb906f694d7d102300340cdb9dbee02df21083f56bece9da3e003361bb6d877edaded1c9ac1a29dcf75cda6e58bf65bbe767004eac3e97e290302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023007626ef35490b5e434dfea0d4410289993f1b28bd750fe1e92bdd18a070ca21874bac9da11149bffbe58f895ac6d8ccc02305d61387132cff09003f30182a38518ce08a3d462841c769fae1b6fb27bfa01ce7a19bb1e44244e21da14106cd7d5ebe50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230318ae174d50434df3eb17426f88fe5cb0218fe787fe2bea5bb38201be1b20dde6ff4a2609e2e7d3da7a9f0b37cb18884023100ba702cb3e903a5e20395ea73b91e67209c6ef27e29ea6c26a609880ba241a05590554071ba919c8c2cea1bbc7610edda0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ee2d61f4dfcb26b9be316caf790b54d078a4051f059e9078d83b222a27f1b9bd4c5bd925dc0fa2025b9b93ab81e563a9023100a64cf92884c520465eaf4d551ff960e2825dac8aa980e0c3cdb4ebfcfcea1f9dfa0aaed0c5a021f808d24cfe8129a47f0302047c435bb500683066023100a5e00e0bd413ebf6d883457243430798c0e28517d746227e40e5a8caf4a5ad585e5a9aea3295e99da7459ba0be3b0882023100b87f1237eeb7e111cec253c44a69e0bce3c5758402e4a7ea1bcff5a7a22fb7e496b7d9a7f642ed56a52977e46457bedf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300eb818ca0a66d5557560aaef296d4b5e768b6284b2f5ee7b927eec6444150ac4d8ded7837eb767a17f3c48a676266b7802305b1a2413ae9bd8e9abb11587cc29e97eb38581e0d6b79892f8b0315af497ab906885f1c7925ed011c30f8fcf5e426ab00302047c435bb50068306602310080f0b671296609691f76b7719b1798981c0cb640a0a98cdef1fdb0a45c2bb5505673bacee9314d97e107ad3b1b90b5bc023100ef0d522110a91077f644b2ee429340a188e5f58ec41946233ff8be64050a5197215b78bd94016e0140c71889ab9801e10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100bd2e1c68f29250ffda3ffe767a1dbb0bf903103cb086e273593e94e5c82a82af6519f72b84a6da706f6d50c1d751d983023100d2436c4273b2ba15e4f409446b3316d435fe20ff622caa103c1fc700aa58324e41480c60a5a78fd53296f88994debc620302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ab10daa4f497b0c3e6f7647d8e783e4051262210d5466054bfaa99691ac960fcbee3908372c4fec9446e836e77c82f93023100d2482cbd8405e47d3a41ada47c5e17251d2f48e51bc3972a522f3cee9077404ebb134f8e4bb4998ec112b53eaa8328b90302047c435bb50067306502307f5f13e1f3199fb9afa9a7b1edd97f13b32cf4d13b19906017caef321b367a1323426dc2694bcb0426a1a8e35a3189d002310092157f9cbca77f33b8693193afe56d4ffd354aab125513adb5016ac5f0c21bc69e51ce05e50c081490951e4d2e7e26c10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305b52edcf40ff39995fb45bbc3b05f6028f9f5825ff21c5959612f5de9c02528aa766690bcb85b0004f9d48f584abe36c0230616042e3f5dfe412e7226947960cd4ac889b0922c8f1bc0a5465ad5336bab2390595cb8896e80556b97dbb606f02ee460302047c435bb500683066023100a6d26fa11399b3eca699a170ed046ec4340ba896c761e6fa587696277bbf3ea8a9fb8363fbf7c480c28fb11153bcacee023100f09286760844b010ec546e14a930ca53ebecc1b69b57d1e1170c8653c0fc9135f66be99e6e33a6570a6335e103acf8600302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100814ecf29e9205cba7b9ef4486ccd1976e638652bdc9f45a22f4f4d97aa1cc7e34b6aa471658a7326caa08ea895009b2b0230181ba4c15251f6735d36e07be80af65b1d986ec35e2ed1dc96f797c20869d36bdd937380a79af97490986c7612eb686d0302047c435bb5006730650231009cc6851764b8f8e00f0a4eff8edeb6f80c8be2c19f4c6f8be73cb27b35ba2bc42fb0f8cbce697967b638255b067b31d20230045efb19ef433bdbe4e1bdd95508f44aeb3a4f4652396bb4695f78d9f2b3906c2484f8ac43ae27a6acd279c93cb6a97e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b5120e787cce96faa98075d21157aade1e944b89aac9e025446b87b16577de827c407f30484bd056c31118837d2dc605023100a932299fecbd78ef81351af733cdc8928bd044e68c8ae4e79f9a184fc631be79d7e91a7d6c67bc16c32e78fd24b208870302047c435bb500673065023100967564c501ad693f68ac3d8a867f081678f9d3d6a2ee94f325469a4ffba67f7e5f7deaae213c8ee8348557567f89b791023059f00cf4b5d61143f1debe315f953fba73a658fb676f4bb8e18d26e6f151adfda7c10527c0f131fcf5e46036c2eab88d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023002d387abc9cfe44094117fbb2bb9f548789b039eb1f73716308cb7c6f573d40297a7eafa9bd53f8f16be2bf36614f07c02305dc5acdad1cb9ba3a62ee3b3e8d440b9dc886bdb626d0ca41e3ac10cc7071686ac68d3a1eac3319583410fa339ff34120302047c435bb500673065023100a2d1fe8ec60b6475a35c544c4074ead751251f9941d955fbf8322f7c6d29d1c195446b0937d3d3623d24084771af403f02301385efd30773ebbcf9c38866581feff4a198a49f99d6ccc63787d52f6ae7939999268ac83a30d23d34ddcd2a0662ea960302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230279a7ba80b89b010a89606576d8d83663fd79af90e4864bd26b7e57073767902c01b458c39aab2c2f6fd8fb58ecd09df02303b6944db040d1958ec233274e612ba96d08b02eff25feacacd27e260038110cb69d21f51f1be683b0509e45f5a54ce550302047c435bb50067306502302638fc0822e7388eadc7861eb871bb21b45eca8d1b89bdf919b84871788da20fdfb20d87df3d57b83d32ccc2b21e31c202310082a954128bda10c79ac4d17edc1e2c4fb8fa7b327abde4814dc4b7c919857e3c53586e4bff10f5a7d98422a85f0e05af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b5f6bfa5e327a494cebe9ca8d703068bc91d2bb034ca853e0dcb02745036dd4c7a259b5e85e05157ff7a337ca5a3e838023015994843ea0dbc4285e6e684c003bb0af624369e7e440f315b9eefa3b06a8853e2a49d3dc5ac6f7d92eaf01cbdf9008a0302047c435bb500673065023100e2b26ada09f0951914d6ac468a59a30a8e173bcad4287768d13259fe6172c60031cf843477a420f2fbbed265752c1c2802304ec1af476ea56883af7eda03d6ef8558651363407f3ca329df2f86c4e918fdc76dc09103f1d04550beae5093475453d70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008a202a986570c586bf78638244b72112071dd06edc1ceaed2e0ae1082a8b3cc0489a137d5b9d2a583d04abf5ffad12a4023015361de1d746dc626fb14f4188d3836115afe974e8e5832d8cfc7e0ce24bcdbfc6672e7a64ed6e749948aa4bf87550030302047c435bb500683066023100e3c75c23ec06a6b04dcdde984b9ed69f42994cb30219d14d1b63ec1be926eaf260efd65241b3b33fb788f72ee4edcea2023100d75a7df8ca9bc0d7c6cb600a0ee89956a26474b930f79f1d2222910363f661621b27373b02a87a242ec79ba5ad24e1100302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008717afd84a39d7a55b7e06b7905f792e0b8cbf0497034acb2cfdd1b507636462b0a7eba1354d6d6b1a6059a215a66a47023100ceb137a20d78b049a70fa6d3bac8da0b5d1deb60e694cd7fe0787b77fd45b6a972610c94e69e8ffc18b9cf773915e5140302047c435bb50067306502310084878dd385b2b1f857d3e84e6b5473b7afb1de55758ead1e522b3acca83a97802f3af821858f63604eeb485ccc224b5a0230288ac2841c4ef6c43ceb7dffa7ff3c15e87d44987eddd3bd99a610c746e547c5b3c2a57afde047369acb2ef876ad00c40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a001158c5eaea7bba3c38c93466f24291ba885e064208ab661f02ff2e1e4ed498318d8c250ed98b532218a20de65da4d023046187882491c0c1488da92a3b361d4389cf9e7878140256caf8493777fb6a7fba8ec331a2e965aed3b71d17849317cf70302047c435bb5006830660231008e749f747b93b21307c8d14b1deaec99554087caf0fe77fcdca80d25d0c3f2a6d721b4f62d052a7b13daf1af3d39fbc9023100d2d61abe225c07d6786ba8f3c1b34e24639680c77aab6e71e959c338b38648a749f30974ee9576272e049399fea240410302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305bc060309bb83e05c91973dcda577735284ebc3d307cd93601ab3dfcf44dc6d538cb3e25fe7297bb8d0c79a92d524d17023100ee2552d891fe9d0630b42536a4793d6e2b7484aa968028362c495f7467ec6464082a2d35c25d4d9a26801650f632d27e0302047c435bb50067306502307a206ef3b48a85fa4934d8da7756d267364009f4916e811d6920656d8fda000ce4eb55eb976e7c7237eb71e6d2b4f9d3023100aa6f06e14aca93d3c54cdd916e90d4d7f08ed15874bc08884f32eef141b7996b751d12c850a42b11982773ff8e7f8e2a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f9fa468e28e4d94f4eb3a71b30c6aa051bded633a4839088ae4ee136185beeb37f7a1fde3c7a9fe6f012708414d16725023100ec507001ef358e97523a733ba32c3aa3bf3f2530b328a6eb11851fd1f8002831d46bc20ea90eaa3b3cbe3b6b3ea766d40302047c435bb500683066023100b878888866f45545ce91774d87822775b08b70f9921f0bdf62a82c65d5a6b550eb5e2f427bbb39c878629a435d99834b023100de4d777ab866c333e4453d60fcc005c33d13eae8be1f6df6dcc9cbdea8eef9069f2032f82487b350f9b2519da17d5f0f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301969dc282255e76d3c49025df2d51e7aad782df70200b35da814f352667b0a5eb802526560d7ad52e3e963250252e4f902310098021218f9625dd7ea544131a7a927ee38f9fe11b2ee2bedc61c246d276204eceb6638a456f91cd0b15f9aa882ff9ac20302047c435bb50066306402302402c794dac231ca3d3cf2d0da12da97ee426cd44e316690960c874aab1cb2e26efc56b8b85bbac6cd79dc887d50533a02303401f17b6ea9f7b07f37c3ebcafb26ef40d44cff50474cec600dd915cfc1ba77f873a9e10f6bdb7ddaa3f364d0fbf46b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230158cdf969a56112d35eae98966cb61d1c6f929555d54781bef7d8976d719d707f104a0f4e170458a1ecb7f3af835c39e023050c9c5d2fe647950a52da5bf98c94d56cd18a0639709c887c42609eb0f42e9afbb97d6821c988ccc44ad3b74dd6bc4700302047c435bb50066306402305e1151cf67b85e535d3c16eb2d4723011eb8a289b73617a1dd1a86d2cb0fbee8942f2386ded275df1e90a2752cdec1d702307a05030ed84967031a540d68395777b80985f36f33bcf9a5d2ba33e8c6dd9dbefa8340a296675ad2b7cce28c1a7e618e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e81aba251e6ed091ec65886612a7749330f10fb4331b4daf4d78ca3828e74fdbd827d0764a59bd31f5ba1f8a3a2ac6230230714ada87f6e9d89ba818635414657e4de0f20b1ed4a2cc3d389460377671ff2ad2d2b8aeb63f710d9be04d770efcb4a30302047c435bb5006730650230556c2b45abc3c8bbd628681cdebc00ee50a58e436215a4574dbd65fa05206f40079affd73af8fcfe8e2ac4de8cad996e0231008640df0a12afc80c533f6ced92d71ee178087062f93e27c06ab4762acbd16eb0d4d4a42ddcb9e2ff72feb1fe0779cfb50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302f9fa039ebd653bfd21782167ceb7fb5a008126f939e73410e123850d91c58bcfbb8821a190617936ae3e525f20b75eb023100da661754389ad3211215145a8f1dfc7c2bce92d574cdb8c9e00b7643238eb0b26936d21d322fe5b9e617683532845e4e0302047c435bb5006830660231008b9bfbca7fb43dcbfd3af955236912ef9fbdc799da5140226d8a6b040cbdf07ab8908aada7f859de4516f2bcd5f83056023100c0e5f07fd3c1614991a80eba35e9715f59db51a4941701b2e93104ace72ba419fa3a533aeb1245325711ed59d399102c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100af3e2ff728680f95be14fee90e3983948ff37badddd53c6398e8b841ebd4f45afc1696c45178231483296f718ffc614b02300803044d344b23f6a31ebc2e5dc16bd4f8e36390d41d5f8381e46886bd1e4a5bb84841b5dad2f5d2c98b950597843d980302047c435bb500683066023100ec026aaecdc0dac35a6b0992862b469fd9a4291266e262cc643a95388c44f836eb6662e1074fdf919115dfebc43ea3bc023100dbea30839c0d36184517a8a3145752cb364585d14b324dbe3dc3505221dc99b42d26a58bb3306368ca8bfeae79e6c1470302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d05f8d2a42c56624a8e8fd69e0b5de1b577685e00f18e0c8a25940f69dcb7ba61f4c2e4e5ae430082fc8b282be6cde9002304500cef611939ff6b8ef54bea7c1dcc74bb8aca1865d22db7c2e9e34e6e439759f4d059b9f79df56d4366454123e8d210302047c435bb500683066023100c1486b7abd9197e80bf59206662f9cf450ea4e9ee648d3bcfe6f633682e2db2598421116b49e37ae9cb2f077062d1984023100baece99fe84c3e4fd7c2a154280777f9d68096e108c80df71879a0783f7442cb96289c422cda8d55c4e905e112c928a70302047c435bb500673065023100e1b5321e72e9d217cf16a1e4f6227569b4e167e088d6decbcae3fac2139cdbb07fa2aec2c819403536871c8ec5ad825402306343a2259ea7765ecb8c9753737d5adc3b86e269ed676038cb58a9042292e3dc66efa5c8764fc2d83ee133b742d03b730302047c435bb50067306502301d70f888b3e741011fa447fe93e14d9b73699b9c4de57e665fb64f574b571e2ca63cab0132c5ad1331babd6c2111c93f023100f423f7d60fed4e32d2bd47c8261bb19dc0075f3f09c24dbb25957b385789ca71a174d86b927fab749567b7c4ba1dcb5c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ae5dfd1a8a0dbd40e8b73bc82c3341f6dd5a3b534cb770a5a8a863b3afd2d9b82a89070fb2100fc24416d05299abe93e02304d426b16115ea98322371ffa790e5b9a9c99f1d649a79abb5f6ce799c76cc5bc358c332143ceb8a92c6b566108abc0d70302047c435bb500673065023020d0f8430e5bf4b76ee439b96d98eaf465975c707596a411b15ed6060bdbd243c78551a092207310375e0e06f4ed0830023100b725ca52898b5024df6fcb11dce46ef7de2b096b28e7c1689f38bfce324050f7fae1b694147c8e92c4e3eacc8df943ec0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230075eba1d55c34435e0f0f32649d442566929c7f40280e12e8d06ef5ee70bec5cd0e04f8d41ad038357bf1f0d0d22f8ef0230391827b4feea8991f46d5f72f4c397f02c493be36b99d6a9ec7907d65fdd8e3587ae9218e9ec9b1bb2a7752b4c867fdf0302047c435bb5006730650231008d10183377303d9299813c1091b035f6cc29dd5e5edf2849394dca82e8f5e862637663af5e2f7910d087d9871a449cb00230341dcea6677fbdbcbfb7cd3ed7b708b0786f998b70cc1fd624e772b6d2609a9e56cc5ceceb0e80183b9455f3ae50981f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023056739bf0cde1f427ae52289217a405285457791a54ada43dbf9f3f0a13b0c67b12555e3027e5d57da2cd4142452f8a9002307aa650f14ca81c3157c859d664a608226991c89e8a3eee3522de65edccaf03b6f394078c5952bcba36ab2b467d2ed2b90302047c435bb50067306502303ae0b3850da2c28b362873daa913300a7808dd9afe1f4ad6bfd2397096b8c248a95c4ea64b6a7ac0cca2f07f64b4433902310091dc9210b0c7a78f211ded65d2c425aa4d94ac7fd12df129cf0dafe453ee89c3fbe9aed6affbc51484c07c64bdca0f7e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230733b43b27ed1a25bc2fcf792403aaf26b0ae348104275601b2253db24504f57d0d650894ce392a6426198e66de5a63f702301bca44c61e6d586112b13cdb69657cf73a84711df85539ae81646d6c38a98c2660d0a05afdf71eb4110a53dda8f8184a0302047c435bb500663064023051f5ac7243b17abdd83e50222b460243c88dc4d100fb4d6590edac2aa168f54fb19e4c3d82c7c4e02bdd8a5ee1047a4d023013398c65b5e2bbcb99c3312d354669efa7226a133ea1436c6bdeb64f272a4ac0631554ae1171b07a4d0cb6fa4b2f5b4f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008f2c89132417297cfe4882b8b0a5849caef16622af5865af17078aa64d223637631576c6c9fcef70f00a4f55bd25e3a8023056e49a23e9b9dac324ef440267aaca5ba73eda6fbf2bba2d2f7f508c1666fbd425ffd2429b6487310b2d1d590cfbb36c0302047c435bb50067306502302f3cccefccf341dfc59821ff0653d36734cf978133bb1e340bbabbef3593127fb408ff752551a3c282e7c8a41c20db45023100cd0919f04fe85134f266ff10315f1150112a7e6d3a6edb23734c7d60c6a39168c3c8481ef699f8ad97f34eac903ca0a30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301beb992366aca4605584d8e38eec51dd8a5a816f5eedf313830ae6f6150004f1030d0758464ed12cd637b86c6c396f4102304f2c16441f13e74d0f38894ce5fd689aaa5bb5a66967f490bbd3eb157e7fd41d835388de6a51d477e978bc2dc80081ac0302047c435bb500683066023100c8fdc5f5ce3678024ec4e7b92db7446cd5389b1767db7c55211e1cbe35da7ae097415ad7a13ed1934ef897db5782bf15023100a3ff0b9a9b77af3434c8781a9f66aa0c54d44830ed0f9c97ab41b3c37849ca000c88914365aebde3ffbaa667d5ebee0c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b21b8e01b6622a4cac74556476e8f034a580eae3ba3fbf7dc62c3635613dca67cf73ceaa1076da7859dde07302c7c0e2023020c8cc206168b81f40ec0e1f21a43a55a873839d9e92dc538cc6a8e70da9bbe8a2eb69eb5d2a017b9a427710271316590302047c435bb50066306402301ad0a05c393fdaccd9dc51041873fda063f31d83b202280872a55abae1b18395e683d1d3e973c732763acd747587f09502302c80e35419189a4d8711d82c88387571573637ef647d520a00685fb46ac3c4a512dad93577af4da9c31ee7bd4f86579a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230052325fdb032b0f5eb43d8825cf4f2dcda370860ad9af5da94a8bf9c4d499f2099b078da16a2329129bef2535097ed3b023100a5ccee3d32b4a77832cec3d41b6991f96bf1aa54ac814128c403b8506e075dfa629675d3f1bfd9cbba4648a873f9da050302047c435bb500673065023100c5218b332114d49c6b533d6a41b02cf6237245805372c1be4cbb9d88d3739d4f74dcfa0712a5f81947002643648678ac023041612370e72b41c75f1ceb631ffdbd00a0f6c722f6d29b0a1d616dfee4763ba1168ea6cf3fd2cca541bdc02ec3f4ead10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008028e4a85e7499d942d80a3321e4aee4dd2fb360f43aabfd8fb11a35a8c71f2148c5380c0efac2e01e73f6274f5fb2c60231008920cd22baec7e937fe76ffdecfb19486e49fab6322cedb1612da3eeaaf80d957a9a12ae5d49c3ab60e3907da87fd9230302047c435bb50067306502303e75192664f044f60a385be7a9a0a19161baeb5ad4307cad412826e111396807a7f336a002f5f88f6e588617cb3b53d30231009da2af11dc725ba99eae2f95478f321ea07f4401d9a327c7d2facf3fadbcf1b2352058ad5061a5cea7eb131f8f10f8ab0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100beef251f1eb39c7d581cc608ac91e8bc851f520f6078e8c03d8671a26304ff156e44fda7f74419c858c092f622b523c30231008d2eeabd8453bf22a1863d740a4047f4b9d20ce43b6693690e51a6aab6a7e2d3bfacdabb57b6cc144a2a7c8f044409ea0302047c435bb5006730650231009585895f3b43aea35f54365773fb17dd8aafceb011774a0b65b91320a03725d02467cedeb0970f06123a527b4fd4b8e702305311776a5d31830883e3eeaa5dbfb8a0352e2d18671481975e51ee1946a231444e86ba6a6ea3b5aa2bfe9b7c5e21ebf90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c979dde6a10c6c85df606e09ef9c615262ddc6e06d41fa8623da7ba17193dccda9858779b3753cfea1fd99dae483b1b4023100ccafe62b1f151580a619bb6dbcf5db5bf1ccf20683d6b9526bd38d0ea881290fef8d407fcccb0613093ed7537c0634b00302047c435bb500663064023036f4dcf1c193e63e210ab1c622a9e1ed960324ddad87da0a226152e36eecf36f12e81f951d55acc5b03d1093325bbec00230268ac88007deb2071c51cb1615a78df13a2d8fbb829f5d903eb2d2b1c2b4ebaaf74cce3f16d57fb88b2a0ff13163569d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023016a2daa7004b1d6ab420e82846d9f00fe55e02966756f24ecd70a219e5b3156b1a57e23ad527f78fa7fe82d5de4baf3a0231009cdba1916b2571703bc3c0feb147cd611ead72d9718cb85889ad6237e2e3027f3767f75984a4330b95fb47125c86596d0302047c435bb500683066023100efe83f7f03ed319aaec0ead19fb20e6d863302c886f3bacfbdeacf3be643a621fe9c3e5a8ab3122e640db835dbf362e5023100d596e046a1cf1513d5d72bd9d4e245ec2e2e7904c9b0290c78625cdd6942a06596fe88043076abbf3e91281ddceda6e00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300907d3c460f78ee7a0f883ed50e99958492eb008c73dd01052302f04395b89cf2ddd71a5a95df6af023e510b428bc4cd02305b263a8dc4754fb064b993c70601113339d6a2ea1e7e203f3c16f5c90e0344a7f72dbfaf2d16d5c9a6869e1d28a2c3c30302047c435bb500683066023100c44e16af34afc4625f0797fc3f845b8dd60b8e4b53c962b91e35027d696e0c16e97542ca34279a6e794ef6104855712402310080106ca63842ea73d6d30248295e7bdd6384b9ad14a9502a27e5a71c1a6182b5380415d34a5caab8906dc03fdb62fe680302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230021f2b8a818bef2b31e67ae2542b73f49212e41590cbebb700b6871b0c4e6a9d241dca97da3de463eab3e04c68d57e5a023017ac1f4e07fd9bdc5071449efede1c0878037e8fb2f3b87c4fe6b29e17268bbe72275b4142b0c88e23fcf47a7f3476430302047c435bb500673065023100829677e024dfc7380a5aca86db8f7317f185872ddc75963c36ac454b63979a5a8bd5cc07f8b666f9ed16330601e7223b023029cc1469200ee8d1a68bbe6c55be86b109b30c9e397d6a21b562083846417196f5635a2b7942e638d4c92affcb33b6fe0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230164ee54facd95f899099be492b56797b4accf81a6d099042587bf6d5a55fbb0641dd59242494c2ec9f193e14b222e659023077456a0d389ea637b69d351f51741f815e96422af869325ef2ca43eba147324e487fda5750187112c7a40afd70206ce10302047c435bb500673065023100b536c531acedc715377e251c7c08c9334ef0fce68d259ec6594e8f643d7de7af052e10289ab3793a6b08a193ea6851ba023073b1b095aff52b1c8b977c3b6e8e5c5f240b2c025e75d06734e0cc5c7fac5bd7c3037cabff105a3781dce9c430f707d20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305f684432fdec46c1fa53d2a3bd7b665edcbc0d4c6fcdb6895961bd4274e4d1490b078140f1b5a2bd043f0907171b5ad7023100fe8c241a0397f45a5b52019446ab6fe8ffa244f3577734ac8ced3261b2a2c2c6d4bb3bad94e508158ec3db869cad0fea0302047c435bb500673065023100bee28ad88f9afdabca374c3283a9d9977459e4c0863925859b095e0511792e76c095f35de365850dbb47fef59bc072d60230325a4bd6fb678e96fb043f486e8dea547ec60aa847713018f2eb1154d5dfca29ec6880d20eaf43f599ae998f989b67760302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a72db32183e6a1bd609a8e13df923a8d009f77e41d8ada8805b4c91d056b4159301f74b51d077f1766620d4e2896b8f1023100ff02f114b4dab85843536776b3fd16c89304f66e66e2aa31ae7ec1aa4a076aea7b828fde15e7aaa74275a57c1843280e0302047c435bb500673065023100aed3ee7c101af7dd771b2b7a20fc9a641e55c66173a1e826fa88484060de4ce68e694d987923abf8f3d3d70ce905f2d60230565f4ba31aca6171b7bb9144a73f8e96ea1cf7d259a0815e00432f830856f7a917211f0c33aa10acd5d2312e59b348380302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a4952930953f5187c34889b8962faa1768cd1ec4084c171427f1c955efa6c87ccc744b8b2be113c03db90b920e85b34e023018c72854296a489e0a8fe1ea946d74c7bcfb9c89a0d342734ca6dcb62829a190847b4969a1066d1216525159c82a2a980302047c435bb50066306402300f2692917190505f1b3f2e4a0511e072d475677d372802db821e2fbecd9d9d7616ce032a8cc072650eb27b9ef4851ed8023076b19467c933fca6c0a0d864aef06fc00c792ec4d159677a61fd139fc4fa60ef950303fc74267f2384c6941b8faa0c3d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230769a5c7a0b80864bd750c05d57aec0f939ecddf51b122a7286170b53941032ddb6f1174ddad9e8aa16f5d7a8961925c3023100f05bc0bcb6bf10313dc3a44a14933a0ef7608edd571f10e13cbc8a4c9db7bf9c34ee5d152b1a3fd36d920dd56a05706f0302047c435bb500673065023100b6c7b621677bd912ab3e1331579eaab8bd6f5edcd0fa7a2984322d9cdc82e73a8dec9836b27d0bb385ca9d304c4e22fa023005612cd8e816267a96f535d5811252c0bc22b33c6fe3f1e2754f20a30916bd38e6f05895e69b3ff8a99dad7942be53080302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303ae9e4aa39d345773eb3455511ded92fc6a446097cd302c12dd848df346a5776f7ccab0ad32fbc9dc7dc600fe292038d023100b4d32dc9bd9784498eb79d82d0b7aa737813f3dfd8a6c3ed90c30ea35909db8e28f9e7bd952311b6d7b689e52c81b6a00302047c435bb500673065023100e2e32f81f21114171d5e073582f25c7752f5e44557c899a04d325e94dfa073fad565be026841e4451372f2aff2563a2d02302f10142b658ab4be465a4c97c9333702f2a84a5ce4ffba600af19b4c88aa81488913dab27ccae2328ce162c1b289328b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a72e1bab113a392f56f3e304ce52c5e491a8d14922bb524bb7a1ef0ac05393861a6a455797c0b4cb93dd299daebc82630231008fbdf51a5c91b73e4b70115e8b40bfa5299b19858297b0740e3cda67bb941fbe9ee8b512fc772c7337a7d35e1620d5ab0302047c435bb50066306402303380e6425e1d4671e1f7bef45c6b19c55084b07b5af3b2c48a4254c89f6a6822943284c15319f20dc8727bdd28fb4f6b0230265519d1bdf2a3528a7f3db6764a3ec5aa547d9624008f7e8cb95e7248775222413406c3bbe6c941581c1e39ca4cd24e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100972b8936fc09c17cc513e76ca0e885c2da2757b494cefac42c3527601b06ec15c15d880b924b8e410140101113c5417d023013b78ab956f889778cda6bb5b7488f1f52a2dbcee27cb95ed91f3e622308eae70c1c64e501bdc6006f6e0c22d4b2ad7e0302047c435bb500673065023100edf65e6c03fb2e3bc6bc7e768d6e6c83c1dc1edba2806454fed912fbfc213f3e215355e0cc19c9a50e292b84d33913a002301c40504308b7e358d757c77249f23e14f92d3ebd8d4b241d6d3d7a18250b8f573da4d82a73f787836b4edc9a5cb975ca0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a86929558d81c1e54bcd2ed7b50901a9b45c9deb0b4a8ce8a2fe9305798b435fd58d4afe64106f05f3855826371ca79102302882f80903f3010008572670acc371390768af160a0c7303ea28cb82e9b0f67000dd5ce3470220d873f1b80df2014fb00302047c435bb500683066023100c89115074ad48716e76c2c9615aba19d2dc29907fa1da1bf241a7eccc16014ced0288f6fe2b08e89ef8c90b68cd267850231009edc7270ec992e4632462cd237e1479b67d12ce1842be8d781d98c9aa7271fe9893ff2772b3778008a5a74ca5d760ca60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008307a92d14f9c8f267c0d152e6214fe9deb2f3992600e10cfed3388b5d649f51934e0204deb2a10bbc4e389d1e92f8b602303e7a80a0e53d9ce26785a3277e854af1f1b0fe27d498baa671bc881cc8318d90bcbb2ce698b36fbec527efed00b13ef70302047c435bb50066306402301cb9ee744069397ad33275eb1f8cf4595db4b9e11c5b69bec5684b645be332825db882bf0adfcfc38676b4e4246b1aa00230411f0feff69ab6b54278d163a1af2182fcb8272fd9ce7d441b04df3378fd427ee8ed454b2ce0c58fe0c6fc6ea8267db90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023077a1c335ff995122939760092f96c72e8f4d00643812978ffc083944a5c6f68f02ea4cd1fe4134329c93c3c25ad8ed53023100bc8d5802c2ff81a0a78ecbcfaba301995d9dcf44b406a5ad09aa9dedca6dc5f1af887ed4a605527d421e8b8de0215b4e0302047c435bb500673065023041d20156d384b4d8bbff1946edfff117bd365544dc3cfae314049ea809cfc3ec33b1245137466a2a5a18acb58d91cebc023100963d4f31b42b3ecbfe497b9fcb2b46bb0a1cb5390613149f8f3d0e32d80543a73977d4c504691f8c792b0efc0443b0990302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e8978cab40c3eb93ba5fe8e1b24eab154976ec2d72693cfe8f6896402a3d068a672f79d4e4ea504674aba396caa5db20023100b1df4b73f3b7b8dda5262a2feffe83f08e4920228d35b4ef8ef9a07bc2e645a72f6d9b3cdc26bfd9d8755516adf1db110302047c435bb500663064023074ff058bed25110faab1f750400681cb3a8a791f75fc798ab3ff738bc685b76c0ba8a6fe9d35e9b63af2af4e564da2b70230416a7aa019f390d143851a31f02afb4728f8cda83c3faf6ab6ddb7107d69fdffb58cbfe1a940ae43e298b2304a1b9a180302047c435bb5006730650230226fe460637ee2bd32de6c836bf033796c6c65293979bbf4134d72863baae51138a3d6e86a250a7b0c7b8868f72e75de023100b8dcbed9bdfc5233231760d813041617275cb1534635fe5f231f27cc2d958e046012a96d7fcd39a32431a22373de71190302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300d140f95a188edc8b9a446d841e070343a083f0746bddae59111b30173a65db1cd3845a791b2562315d04ae5f7a8e3ba023019a4e78a551c3e9da0c6661d009387a7e4ba244e58dcfbbaa339b828f22246df6538111bdfca195fb6997924bec4c11a0302047c435bb500663064023015b11736ed68b9dbdfd649cd25cabed978dc7203de9d1c63328c61450529b49b973796ad7e07f01b44091417179ca3790230073a44a7f8efa8704f6106bf4654b9953860d6f3e26dd26037082b3f364b0299bae8e500fc20a278533828df8179f6300302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301049850cd669ea0c988dc850d9bc794c9eadea3652c805a18ab3fab6b14fd06f21699347a350c74c2be0669a522ef9060231009c78fcbb185a94e41628c3d05446a0073791e39b4176be057d1197e6e42a69037512fd2475ef0339c946c97ee9f9af350302047c435bb5006830660231009c1e926673e215c0bf133cbcfccbc4cde08ffe8a0f901c6616348e51b11ccc720c2830fd434d74d4ae1256a74403b9860231009eee292b2449451b9214b04c7b0e127678a2688a00770e775070c67074bb86aa51b92dadcec6de6e2572f7b226aac64d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009497387cc7859b9b228927983f69f9ab2263095959fd3df3c3b9e0ff711dd3863e14c69934f37cd6f8c7f68e66928160023100e11c667dc44a833be574b0b4cfbab053c1d177b5b1bd75ccd0debb0e4284a7129ac5a471bbd500e7547c0bc1c4b03e260302047c435bb50067306502306dc4d2d663ed3c59fdd17157762802a39f6ed280442c81b9f2a9e5ba4ff47bf4354b673a389fa1cee984361cdd5e3f64023100f1ff671cbee4969dd1b2b2a9650fc9f9654efd59e18d7ea30c7a0e5b3f3b30f566d5897439e2cd4326c60829f250f1f60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402304f2ce4e8b7176e4915fc8f1bfd0adb14207f81ec66cd1923ca420f4f19e74647b274047a690419983b4ecf88e52d5c0c023054e65cd57796c340a7273c876ffb47d4f1a73f5bd11ea1a79b73fc674605f5c087b2b83e6ceb45a22588c0e39f8b6ec40302047c435bb500663064023053427a6d1377093ef65347539de74cbd37656d47e2ade5289fa075c6237f716b59e60d891e2f357965bda5c8eeebb40e02303c86ec55127c1c5fa0f1bfa459f00ce93cffee25474f40f3b03a41723ab376d78c19226209ec18879a34eca1bffc49a00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c4c9c06be99a512c8e3ade4a0b2e2a2135e99a5c752a471748d4061b0d7c664ee90ed3ada2dea8f94c77bf7cb6a0305502300f6809675a4d75244a70ac119fc96fdb1e3da2be12003ff2dd647dbdbee2ea3dc8832371dc3c4aebcd89b1c1827596590302047c435bb500683066023100a2bf8474cf74d9a67564bc926c07b00288cef2ac3a44948efcbea43824497d22f0925537ed529961b57488e422616490023100a01e2ccb1c4f63f693d5bb458067d769e365af07b805246241b3a317fb4a4218f0ba6e51b93ee7b75d14cfec435d42ad0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d28fb21659edefe28c3435363adb1fa0e4b07481a36712fd2b03e764ee293df7b025b3c1ef98986f80f5cb6ebd91f62d023001c87f82b77226b31c54f9f00cf2ae73c77682e65062e74722295b1d5ab546a0c4a391730c728990f76c58da87f357830302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300c3ac94d105cf33f5435639697e53b64d807374fa05d4961ea7782e4266c5868e27ddc36222bd796846639fdf40f8fa6023100da2810732f2f482a205d4c7d9374e5f0a9e1472b127f500f3da9d4d31292021fecca1a4f983540aecbe9f9ac3c0160610302047c435bb50067306502310099698a42986318230e2cea4f68843f648a8ee1173315a30ac6cea619380c0c7659d32178ba063cfee0c8dc24c1ba90f102301140215587b69ff1eb9eaccbd1f7b7535c9ad87cd29f6e5f3ac45301937b76f360f8c9b83a8f20661ec455125eefb7300302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bfbda2c84b366e3160245a643e1c93e306ae275e28f5d22b4b40c2d3ce28694723b546411436b8a3734994786d8b8bff02301c7910dd271e06069da6a52e5ba47800cf5511ec0f21e5a1e53642c93a1c6a33767dead2f59d1f9c270cec3650426a240302047c435bb5006630640230171ed78737b0c2e9b32568e79e220f809eec097ca5e4eea6bc5ba99e75528d56bfb52580318a12406313d2e8caa35cb6023045ca432627ea5b66b24b518564672cc1ca9dc5bfa084b3dc1ae36b0860c059de2a02ee14e5499265f8d7c297c7b281f30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f7df0e6b28320f74923fb3aab71026d762e3ac219af3ceafc18bc63160b566fae123645d314ef338e38d48cbf76ca8180231009f993d9ffc17ebe61d2e84090fdcc50aa5907da89491f05bea9e7f89f1c67e6f7d481bd2e27a436da6c0f242827011a90302047c435bb50067306502305fa34b90a6e468c18b011bca1685f8a033e07311a62c13ec268250c2d8f2e12e03d73a7dc27be09b5f51259957a45e81023100f383b29bddcc112833f1998044dedd11c250efcbf351566b4a786bd78cf0b9f64a1f1354a0d2b99afb8c79622e61e48d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303eed97f419d58405f9db37ddccdbe8e528c25764c47a2f9600f74c5365a3d59d319a7db677da9a18186228b0d5c0cdfa0230096b54e02d351102dba3e6248dd02a9fd56a2de939024ffe2c1d89b042327bb631edfdae8325a1198b7ad414d100cfed0302047c435bb50067306502307801e96b0582ae35ef0e23756ddfd5605ad54b327ea83c3f9a1013d8c35c07ae5beb04fa5a33081a64b8a243f8578b49023100b82f3bd1a1424315deb8c162963f6faff02a37a8d7350d70f211193434eb70143edf3f422456bcb4507ee7f195774a6f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f0d2278827c338a84509f1d30a3c7e5981cd0456c68d45c6b42dc09160d4b1ea9011c5736889653374acd1315eaeafe7023100d40e5d69aebb35fa4f6f99eba646ace872b23f3f2201ecb795db2927f5175e2eaecb7df7c7b6a554047316372738c9a80302047c435bb500683066023100d42b59f2829993a286f92043c0300fb4201a7cbb99d528f299d64a1dd1b8efc886bd68d6ce1d83a88d3c581f6152737d023100c1b70b3988eb6c4d4af27d315348a0d2bcf6f636e9a554b76c93bf65ca571bdfd39d9141b58dfde8e5896c199b01faca0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023027a4c23dbe5fc0f54895c6e20a0f332dc75aa5f0dd3012410517ebd26eafe9778a0600c96efb7b3f81c102ce0173160a02310093032948ffb97c62f3ffbcf0749f295f10d024ec7b85f522cb28173c1a8b980e8cc7e9bf389a46dc144c5f91a8b6c9fc0302047c435bb5006730650230706f31a32a4c81ceb2c434638f7330c8c7ef9bdcad02010dea5264af8504e4b0f78b84f427d185bf6ff88ddaaa42f08a023100a5566144ce69a037a09aa6799f92c7616671793510e62b6516129829c9b38d596a30deb196753d7c4805fd353f20d4f10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100fd41d34d100041fc22d935274a15062c952062a9f456415253b3bb06adb3e75c74db3c184f7c4893764c2123159345b0023100f49ba93521dc6dbeadd9144f0a3f7420ad124b319f74adcb7e10f3ae69d21cdfc90a13c572998e9679a22ab2c3920bef0302047c435bb5006730650230719dec11c04b1cdbc0d6462ce4913ddc5445c27cc41dc86f673d236240fc0c47489ca43d0636975389c3c11913af060b0231008c077fb21e55b30ca0cbafb4e59f1eaae4bec1c76a7b8d67320a110e1bf0617eb0c5052b7010b294ae952f08293ea1460302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230670f0a5d3c83e2dea21fe5b22cd88f85b2720916ffa5524935bde25838f3c0d17b3acd55b5e4757500c0c99bb3f42773023000b4e3c26258b2110106884a3045464013071eaffdda1c4ec14ea199d4ea8fe79150ad6a161bddeaa7b896544b1bfff70302047c435bb5006730650231008523454231801eab4202d8ca7e81dbcbaec18e2434249272fabcc3982ba4837c651d4c24c706cbf23cadf8e50c46e65e023004c5ef7053c7c08de5d1bfed18c17258020ae656dce4510e01c85ded99c7628b20b57008b7d886aa3f5392d3adb34e4f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100afcb2fad37138e559aba01a507a4cd868194cddcc7fb7be041a4a2bc85d3768ac99cb2eacb0facf694d23410a1301b230230109bcbebeca1f6db0eee68d7abeb3830710750c45e9e0112f2fd6b7b2cfae49240ba89aba904c72043e02ad5efc9d1790302047c435bb50067306502310098f34b3a0a5e14462932a59847b09f4bf7d163d682d3c6e63a8177744507bb881139c09b1b914596ce1c1fac9eb9b35a023054f2a5c970c111e65735fe071ffc71397a0cffe93457c8bdba17e5c4e8909eb2b2f6cdc4476bbf7d4d7aa8643985d2b70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310095ec12063366943a56f50d13060deade0db3e2dbde24674e875a15fcc3507a555b56e8beea75f70cad92ce64c4cdd334023100dca080a331dcbbc141aa0331a8704816edc26d2516957a08104a78fff557089275aef03be013927075f9875c49ed75890302047c435bb5006730650231009236cd000b1de5fe67da1db3660873bb2b89e3147dc762ecd64f95ab1c13a7f09b5d187e662be585154c4e53e6d482ef02301cf713f079dd6bd6436db165ce59c5d691d3a15db60c2ba2d34826acd92625e7992912514dddf93b9822fc3062fdbcc30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d8f5183f34f4fad4121fb0a41654e7e3413cb15e6b8e0124d26920df260b265ae49d5b8f34afe2883e32f7192c7b7d2e023062d24679784f2747f0d30cac17f3ea1680b16380cf3f86ccb63e0c284fc96185f78e30e2d3d8282e04c78bba142996ed0302047c435bb5006730650230784d2410703c2d933faab24cf7001482245632eb63fb6ccd4d74e0a952633d1ff7579b3ae39ed76fe80d9bbda3e11b9c023100c6ebef083f2ed1c922d46f828b04c672e10953a0362308dcb95180d4e2383372950c162d94a6a10f4c3838f2bc0cbc610302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300d67faf98fede4198aa707016b42ec9385960c388d5aea46404ad2e7cd83d8539d0a89b60e88ef511fd2eebbdca8d0b6023100c4d4ec9515fc872278b2e175ba0a5ab90e1c9796f9401256bc7b1003317750d37bb6d30f4abf265270bc050d1cac14240302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302f7c2fa55bd618e8c4c48d256360c05977b37d51c9881bbf7956c3e3c16a8d6a5ed1ec2053c5dc6759174db8bcc53c0b023100ab182152653bd3f23c83c3baf3877ccc2952c6514adbfa4f9817cded4540598620af76cc568aafa758966acee093bd400302047c435bb500683066023100fb7858ec12d6c207a531c28e719abc1a7914caf4f86da531b0a3226bf37c35b3973e766205b78f77b5db73e480dcc178023100cd7e214c1ee66fa05788f13e647ffe242170bdaccc26ca6445a186213bd6377bd3852d1ea70b3d2f2e454c78ee333d1b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008e98eb07d068eb7ce8541529a23cb498aedb963c50eebf5cd6ba555026f686d6f84467f86a814a4b2dd1a33be7157be802306191860df69077d95b3e1cab915538fb5c89233f0c97277f1b96591fca0489959640fafc8117835522e163d387c724ea0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306f01d02b6fc1ee4e7b4f20a8eae6f3c6abe02e55a34bfcd158f2d3933dd701436418ca51c520b09d7ffc620110c813d202303e35250b208c0fd300c6f95371e6a2d4935175fe24ea5bf2b56ad567d7d0a411bae8fea61ca51275cd36581617dc9d360302047c435bb500663064023063b93731cff9b0b8647c287abfb71291222f2cd3a7966abb484212c961baa5b254aadc6c859273823315274e72d3ad0702303647c1bf569b239e5f7c6a28e3c9cf6ee4e8ba2edccd3fcbb377a09c156766d68e19e57408ea8b531da9c8a21ea6c9c20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a47e8606ffc8f6dd159ff10c77905dc90aa9d2038c22e624aba3688f6f70fe0847c65794c624e16528d89973b768e6e702310087c7b98f0863070d42fed36a1583d01b83d9c288dc496b160aae93d405ed31780483b26c9e6a121657f57df2cb8d355a0302047c435bb50066306402301d13c1c8e428651cebc51383ef5b1243d9018a7a290dd3a192cc4062ea80d53b210925711a1474ff923f4e71e62f8c8c02303dc272bf959e260c78a4101c350e9f3d08d0068b50267f390a5f8769f861a72c227f3ccf4d3f39ae90529506fab067930302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230771bdf236ed36410badc38a02a601c0bea956a0a0275cf32392c57258bbb73e7ed584b5adb00520c677f97793500852c023015b9e5f38a055c1547c02cb81320d9da6fbc85ffe861c1611f69f33a275987508f10d24ccaf6278a16550cfbb6d9cde90302047c435bb500663064023014b1d8153e33f09afad0a08121d1cab73544529eb460e8d2057f00ff8ccdc0db882c4ec85b2c5bfb61628a8397e29dd60230298c1c8bcce8f6892e8fadcedc00246f4fd5fe3b1dfdf80fdee3e43a35f5b7237ab8ab4e90da28c29d72e42105f9ccda0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230763204ed5337ffddd67fa295d96553e75c2727bf39aa09e2b44517fada3bb6f549c5c36eb687aebd7f59b4b4ce5023ee023100ebb4dd7485cac71fe778eb7e4c5660ec8e64922f115eae7202f661bd3702fd193d1b682979e4eb8ff8f77ed9013011f90302047c435bb5006730650230092b05e239d4417477b560707ee7e4aaebb2f27d379c2ef525fae2f549dba15a18ba83e61160f67c00d3e5cd5920adf1023100874cbecc1cbf080f9abf299f2c907215c7c6db339d20542ce494d0f9651a76c5657f11713a05d89b8d99f3c9e48220d80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023007567676b75e019365b2a79f5e22627556c001fef8a10adcef2054f1aa6ba0edcec44ec69f986a708f3c581a326453800230279def7ea93a2e6ec93077100fbfd0490adbd577103ae1ce76216345eb355ca9760afd4c4d1136d3e43454ef2b88f8c50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ecb65f96ea844e6da668b1f81027588de3ef5667cf9523e27e239aff3639ae8661ccc36e4ab7368df4e3aa55c6a33c44023100f4f8f55b6f36e0813a5b45317ca45ed10e81bfd631a253ee857bd6b41cacc6094b26300fd1ba1dee2ec8939213f7ff000302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303fcfff5e0dcfa09e1acff1785cf33b2d443d6835ed45e60f7cca0713d0f197acb24cc430fdb919010737d0b1c842e0a502301711b897e16be498fa591a4ba2a58045b6333fc32ca44aae5e1d675fe14b6b328963ed981b46ba514a35eca6a6f8b3200302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d02ff374a69d20bca7820905aa4adcefb6331e9ff46234dcf9ce7f45b76c1bd42755ae90b98a7633bfa3e9547f219dc502307abcf29d3266924762fd370b94e2aa66204849bb26665bab1777dfd65f03ecc9e1ebbeaaf2af1a1a73192f8aa02b92de0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023058975d40264b180146f09fb06ff9ccf5fd82f1410cee3f20544d66bd840e3a5f4f85f6747970422b52dda80a76ebb9500230155739717a802bfd12970a920ce77d348186480f8f0722646a1335298b57d8252dd84bba537288bb7c2e553381d4dc690302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100fa5141947cfe2f8f30154948fe8f103c05fa21ab7dbc442d9cda2e9e601b629f75a0665a31f99164e62e535f32dab9d60230745ff07a047bc113274659889980c0b7b9bffe8d09c5e8712cfcbdbd8a8996307828eb4b708b957e51d885f8a79a94f40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023051b335792f0868dc4bdd49546252e2d4f5102eca3428a8127d4dcda37197d40a62132199c1e5d36c163183cafaf637af02310081544a7cb463c4a2dc5ab9861ee800a6fdb04ae7ff59586c4b5dd60471359c8b676749187f05f2af889ff92e1a9454210302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300aedbf026a68dbfcde2442c92b6ac706f5dae1254d9e7d703ac9da76cf3038c3344d6ad93cb410619c58f5a072e37b0202310094eec3283e37e0c31d23111af141cfda9b264f1badb358f35482d5687831f45bc10fcb046e442758c46f29f0edc1e0bc0302047c435bb50066306402303555511f21929975b146146e8d51143c5073f135225fe07494462cf88fdff21e21058daad3e8ccff11942d2658739bc802301c5917038682839b4d7c563e9fe5f31f86683efc9c719eeaf720b01dc5977483b4c90f69302ca4b860a9c5547ce6ca270302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d9ff76e8f3ad1bccef4853c81f9e8e0220b7f6dd97c8cf45f7958a8487a71b995953b5c53bf33d1f22217f7bd0cdc15802300baa1879f7ab2ff7d5ab0fbca7c97c2157fe6ab39a61f95ce0bf06fe73d911b7e3e38150eeadff04d2a5fd3bc9f793e30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230470033a6cf48c389f0d68c011484dd454dd05930b310a00422470c2cb90efcf9ec1ce3da640650cf8c3144afb345d648023010e9198735c0f530c5937dc6bc8e8c6eb00d23958d54a3b9ec359c40ef29325bf22a146ef97ef0c2ccec81b7abbc64a00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100cfaa2174ca2e7d441fed4feaee50c5c1c5986fc0c1f2a0dfcf8fe24a19b76faae1dafd32b397cb945eb7a3acc36a504102301ff9f866421b00eaa121f453bf3a3b000d2fc239f475f900a72b2d35739d62af71ba9637e71fb2a4f47698b37f7decd30302047c435bb500673065023100cf16a9001ad105ec7fcdb07f6a494a9817e3fe0364b839d588ff5fb6a14d67690f5132e37ca9ba6edc4eef52a3fce8f0023036b54c6f8f40b6c1258b8edd591a80c4c91ee953d95b0c3c5df17fbe5ff8948ef35928668e45ebcbbb8dbec1cfa43c290302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100896ded905f3d5be5fda12b3c3245764ba136f5df42520d8800d2a574de2fe8d2c8f4e2761e522101ae06d4b708767869023100c34bce4389a4e11e9c0c5064128167119cf812e6f72831e7325cf573a49f7774fd92cfe09b63a8e9dac41bbebae6103f0302047c435bb50067306502310086a83161e66efa908a998e6a3ed1b58499ae157cb26c7e27cdc019d8ad6f6af823518143b3d2c93d1e73d097d13eaada023058066706e339c7f20489382e4f6dff7b4e91a61cbb9c1fb72650dfe62991e57b3fa653a258ad3d4fdc6a1de36fab9efe0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306fd001e2ee2770f9755485112ee6edc72bede79de49f49f0991f554b5a635d2a2819cebd8b181ed7a8e94c98730ce510023100ea613ee3dd0bb3638961d1818a62da6f6a82e96ac3cd69eb412d1a0c2072aef55d58670a68786e3340a6821747fee69c0302047c435bb5006630640230130c71c1db683e11c599ca3fb0f5dcce9a5b58f90bb45dce6617650404699732b5ddfd459e3b732a61deb82e4b0cda9c023065c5f78710feb53e09b3a02a377a34051e425c29f6422ac2ff2181c81a13e442f364606166d837b678ee442cae156f880302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023049ec5f970158e5c2085bfbd87388fbd539d856c904a74101500306712644508c22a1fdf29d9b8f62874f382b17c50ef1023100d6d8792c212a20c19c3143f42b6dde73cfcbaea51cf5cfdca16b3a6cc59afa1ec8d916d86d5d257a8447e952ce6788830302047c435bb500673065023100c2989dee9aa208e5919bd74061a9a4ab7fa8fcad6e37744be981f0401a53962023e769613974448c32c20583d060f48102302394698c89bce6dd5df20fff6c24700663732d0e96a394ae5498e67ec6ec13acaef651abd114f0f6aadd58c6a870be2d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230350f660dfb813d9af00ef4589c84a42a191e716ec3b8942d0f60738e512e1341ddbac6128a945352a356760f7f70e9ab02310095562050dedad839752a1f6e9ba218895cb0de289f7fef136ad8cac638af910e5366a386265fa9980e58ffa4ab2f31140302047c435bb5006830660231008cb0e0242e9d02afcc6e76cef0dbcf769576d0998516c6bc071f8b077105faf470b431ac6af314a00cc246dc840d43620231009a92248281dfebc8c0eb11c95ac2dbc1ddaef68929d01fef7aa75394d1266198831e9b5f8bbfa5ccdffed50898f01aa60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306433e5bf78dca717b1c241fb45ab04f24674908d1382ba5dca0bf4fb97e99a5990dd98626b83f05f8ebf45ef4bc0790f02310093ad3744b398f7998432e258f2ff7096ca6fcbc0bdb0bbd9f61c0488ed769d44c568551c2a0aafd2583e59b027637b110302047c435bb50066306402301926863fe7f06a95e577097234f2ee92165a034681a7139eb23ad45705fd9a332c429fdbefaa7f5036189d9d054bae6e0230568eb9cf347c95ee4c1c05812f108072820965db2deae8a63a8f129a6e7de72565f4e002b7cb01217632aa4b418f07d30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ef7f579d061694a422daa7d0d3aecd41c6d64bd120888f9a0434a0006b0d2b58123f750f0e2482b1170f86dbb4c1cddf023100cde523d1fe6e5099b5f8d0a7aac2ef49361eacf20874cc3cf3e7b7931822e62000838503b36f21f5ea50115069cfd9400302047c435bb50067306502303b94f878084f675a96ad97943eadf21d2acd71058c4838a0ea17bc92f177f4134468673edfdb3ece56434a13de64d0690231008b11264fca6c5bff73dc33cc057a79533494f9aab7a05858808821d2e7b96c381f872e82891e9d96b63136169dfc41dd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009a4c65ab0764625dbdb8392ed400c88218dea92a487eb4158e1e43a0bcd3cda666b94edead366e524e4aabcfb95401e702305bf32c251c04d73cffbbaef8029becf29b09acb79fe31c8610129107351b3f90e72b9681d5d01a3dc17175c3dd131d1d0302047c435bb50067306502301fe5f48394565248130b5919b8e58cd89f158dccf1efac9ec140f8b0eea114084f263d17a237433369d57f7408746214023100b636e1a2e0c28189201205adeda1ecb1bf70803c51813d1abc84ba68c4f51a271245207c824db79981bba6a8aba9b9ae0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300ef7795b4c01355ff87b00737d628bb63aedaee3ab20a8fa1e8af5933b5cccbbee686dbc3ead07376f12a6518c94550e023100c39700f5cbf568c0d392069dca02a8a89370b233fbe4f28071096a91fd144fed7cda625c062346be4e756b5aa6221c450302047c435bb500663064023033f76a52026e8c55b4dc8aefe61711650dbf9be997521f5fe17b41d189ccb8063facfcf36ff1c97d02724cbd69f35cb302302908906288515af763700609f5d348bddb055b2c539ce50d7f673f606ad6cefce533a8e85426934948960bc589caf4400302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023000bcefeda06997bc4207643c913fe762170766d7b352ea730537fdb1cce75aaceffb9f35ef0c04399b14f644be6d5d8b0231008e19ee53e2eee2f3c85761f22e3c8762945f1caf31ed3c8fe49acf6170e441e7bd80de9e44c43400655c25313d6f71610302047c435bb500683066023100cfb420cd5cd3c7a19ad34ea8a439fdf680d18a97008185b739cfd214b54f13cb972bc3aed158d7c6779f15c25ea2ab2f023100d6da29d36277bc716a4cfad458fb51b3b86d0c1db387663da02e0ee7213f98a33ec8917fc09692f88d82aa8376ce1a130302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304974418113643567b7641477fc7e49c56a356fb682e1235dacb7bb4643e369db3a82ab007947ce13a33b28b4cfb0b5ec023100d8033abd306829d3a868134cbd4c0451e82296fa40e980fbe9648b50da05708c6f8e879c36ba8d134a74a9777c2fefca0302047c435bb50066306402301280a47fa26a72e0ef9fb60dea7af69cce86877e20f82b42d1f2b1609d82c1d7db7bda01795c2a00e544fa6ff455bc6c02302e5a05c50781b056e2c5a9852c342143411b59389ab8ccd00229d8f5fe3a6c74b205635c18894c49dd532a4250c48f7d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a6bf85ef8e58dc53389336df61db0748ab6d5a7d7510a3ba4b172f14985ad7a55fea2128b20c8a96744aee026245b3d402304cde511b541b755611b34f1d12f786525f4f660648a6522b8cc2c488f370db297acea1561b5de2881ca426f625662c6a0302047c435bb500673065023100ac05e6583ff5d5d8c181eb66831991d13aa566854fc4828d930fb88b075af4ff0c680f00481571a8fafbc18d5146b7f10230221b2aca5ea06a3518da68557e37e17f948a66a76e4fb744d567c5836c7dcd41ecb8e157afd84b4d809566b464b19b6d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300b67a17aca5d05a7ba72345ae14c5d061e22d62f1b7f3968791179e03872e280a69abb8a7eeb74f34d86d21557f8fcfa02305d5fa55ae05155e5ba1be8b3e49a764cb2fe09ab7cf92143e8f417ca99c90a5ba26e685e7e62a6b81d4d869d752b31900302047c435bb500683066023100f9b80f171c7ded8269035d4e88f6a07be3c248487b37771216602d10fb4e7087adc387b00c0fe82cc840adc25840bb23023100f0d957b9c03ae390a28af3cf06ee24111c4cbc1b0e67152b3018ee3b93979697cce57ea91e8cee63b8c0ed1e0bad10100302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306e5b8923dec67576e83579dd09c8f66bb94db5beceffdb683f127ba4852ca4832af1495680b9a3841a3ae6e0ee6432d4023100c97942a801abbc5bc134921e633bd1cdf6d4813fcc85d9b3836fa4727fda0287d164e19a542bd5a03ea517aab57ba9800302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300c921218a9b7cac720292494ea5e2562917585a621cdffef9b8322e4ce9f560f58f214100163634344da0c3f56bc8bc8023100bdd0cb341b3f9c046bd9109fc6296bea437fd4bb2ba6061ce9e44a38139a776c4fbe57981c7b8862477554ccfec9c2870302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e653ba4dd3e05be94dc520f15b0083dfb03865d31bb35b88bfcbd2380a8c2a59905481df10fa33793032542daa2d8a6202302f7e2a0c89e73e03c559a253f8274aefd3fd6a8cb493d71fe2de6994755bd95f646fc392479bc5c3aeb42ba7f9939a4e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023074aadc3ed7c943f6e2646037a59591ef55dbcedb45e9903bc7968d0e374dffd87bcf26436dc04e03742ddaab164857b20230308a3651426a0a46771a93f040f51b137a4561b4e777bb4a1c56dbaa26ead337e6aac715a328f23ef134a003525f74680302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302f0556d3c5325eb35eeff1aa67e8d12c1efb8e7d6fe5fe19bc8721fb9e93ca6cd01fce2d791141cc0de8d2a6622aea62023100cca01d80504f6cd7258608f390dcab59f3af91d07e9a8192ea44dcf2b27c4cf34f38abc046388db39b877d942a84c5640302047c435bb500673065023100fd8f1e9964dcf85acb058ce6b105de608ceb8eae4bdd4f28af1c0a545c01811532df9d1fc4a209cc0d3a00aa6b8976ff0230553cabb8520e28d690c01b0074f9adb598df455917357a998793dad5daecaf2222cd15dda381e0b1cb17a92c846831a70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303a9222c89cb250a5072df84a92c82e3aac2207aa06ca749ec4d3bae32f406aca448c52009f2d98337e4d1333d99a6c81023100dd7087291f8f59715288431d000214c57fd1bc3247a9e892bc1a63b112227dc09211e3b4cd9820771b93a76bfbfe27d30302047c435bb500673065023100bef137887ae78f850dc40eb25690fb8d6ed29849deda666c618d2843dd6dc4c61acbe088013f5d1d356a91ac685d58f1023061911cc121c256f6c2b09e867c872b5c3c7e1316a615184a68fa59060c73f3db98fe244f0654eb8e2a89b20984b793fa0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023075c60a689557eeb2375f77c7bbf813f220dc5deb4d25ac28cd8689f0b9a9d3c4931cea12e3af1fed5fd98e05550805b3023100bfceea465874f5071fb2c0b0780f5351ff7b93dd230416697d494cf1b18b616262a3911d736a6aee4b61a3b8c6a9e84c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303e7d3cc435fb392e36876ed4514712311bb21595e4ef682467aedb8fc092cd144fbb4c87f49a7ec73da6cb54dc4e0ed8023033f97bf602627b00c88b8212769b5c275875d4e9c8b0430bfc8beeeb1f3aad2d37e3633e6d5670f995afba588bf58ebb0302047c435bb500673065023100ed76a6e7b3ab595df5db5bfe1789f34641637afd6ddce3cee3e6d5c48cc87b2e416cc635f147535a3cf0c651bde918a002304ad0ed78ed3eb2db230bf30a854d2baa54cdba6a13e9f8b0ae17e974759de79be3bc5c0860a042f5d428b0830deae6290302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b95b2ab69f4f6476b1d3c605f1356be3768d1df331e00eee8b79ba6f73104ef06ebeb805eeed7a24a8f08be7bc2fcebb023042f369e1fa4aac73855f951dc7a71909279aeda44ce673b1465ced97a2c5b6b6ecf684a3651c42d7e62ba715088a09ba0302047c435bb500683066023100ce8baa65e0e42275516527eaf753e6323966c6d904b1ee5e238054b1e6bde931e847146e393aeaba25d732ce020807a60231009786ac06f529769e6b2982809ab9a0fead92659b1b63c47beb76b3c7fc317ea59264b43d27ba8649fa542ac5d579159d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230525298bd7f6eacc3ad20ee8f11ac57e3e5682ac7b0527aa0322a2d244b72a65d41b47e773294cbb1c57a8c1b885e242302310096f0aa948bf66932a311681ecdffcf862860d1dd1cc4fc197a43b9e8abe86998f2647419467578b076e1854162e479f50302047c435bb50067306502306412e9666593b9554418441df94580202a2bf5cfa3099a0d3884c9efa51f0e8c6df1c0364b4a15b92c21da81e9aeb4dc023100d45c1a368cdf28c3e1b25eed3b2fb6a2bcf362d773d8cdce0cc942dbb48a3157875d3a68c04b158cbdc471eb23ed9a610302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100dfeb4e53ced8e16811ffa08c2ac165ba19058a4ebc6bf2cd741e050374db1df9c182aafb443f673e0f177abeac23d4e502307d703b7750bf98cef359b0d8e97a9bec8f084751d0862fce86e0b89a8a95525ce26619b49d1f4e44a700f0b4a622aaee0302047c435bb50067306502307e0e053350c5f1ae78e4a00d4939667cee8fa128cd393d5fd4e0bc665c2922d420888d959f15b150d1d8bdfea093eedc023100bce5abdf2bd18f94a2ac2b0fb40783465a719cb1d55c10b7ef336595bfd91c2937d70e3ca2a4638ca60de83c0bd75be50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009edb1aecedd463d8f3ade1866c136f233a688d27c820e2ed84c4b4b60e542204eb9ae354b70c21775ca48404c39ffa2402310087e96e757d5d48264ee7d6a481d281aa329d0b3fb7d24819260b7156a531344529948ec582071bf6e3cca27702d109e20302047c435bb500673065023100de3a5872c1f6e9275ab1f714836790a4d23cc8c95eee1692a343b8adeb754999751b9af0bc1fb3e506bd139cd1b695b502305f9a3cd78d52cb8dd66a5cd32a4d2f6dace5643b8662b8cab4b410d00dca2f11b049a7ac704075b8d1150fff5db5696a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f882b2b23c3dc97028fe77cac41f7dd2ac727d723cc77e2d564adec87bffaacd541fc688a6362dc233e87858f6695b5402303b66b6019e7ddc1ac2f28152078428779eb53df19dca300671c2c1d9a61f964c852114410271d1bf7131cd4ea9d6c6a50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230327f73159f5033cb4b3ba617d2f300938726a7ff9d34dc788ea20f36069ec5542f27f30232ae481ba8928c5afbc5a49c0230577aa08d07895f831fc46c2e1237261aa4663f80219009233ca1970d1c66eb515e7edc33d754af3890e585607ff58ac30302047c435bb500683066023100dc276afa872b0c3aa20e4ab22491218052de07003e2e71881c2b0c4d76cd39aa777d399bd643c4a5ac5feaceb89fc561023100cf6fc9791cd8859d0f880f0d049700167513d5c29d9e2106988277fd5602eb71001397b346aa9a556d6e018e2c7a6ba50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100cebe934066aa1743da227bcf000bdd1bacfa56e0f8ce3ed13d14173107f332ede3089135c7b75fcf85dd5715fd2eb34c0231008d2c5f279a04b6c9f8dec61bbc28b796e8dedd5d3aa3b06ab686f964464b052a270e3ad16b00a1a262959d3fc3f605530302047c435bb50067306502305d7438a0633f9e0f1f258e309bf4f14058ad19e164f481dff81a5d0970fcb5e701a466b122d24240878725a0262208aa023100b705f562622c2e1d5ab22052f2b4889ba8eca4bced4eef9341e5edbb4698909e726bdaa9e210d159d614a01bc64775a60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f4476520772d7147f451568cf649257853497a8613780bf055f1193a72968ae0476cfe25b945f0d8ecec0b77d14d3e18023100d9089cc532ec72352fc9d3da5298940d250c0cfd4c90de596fb4e15d0679948c0518dc0e6e937dda2213be264adb92ed0302047c435bb5006630640230773d00a79becc1ed40992b04894206d33b32d967289cbf768b4130f4256e5c167ab888840f0bd0b9d7d11b5a39b598b602306e2cf641a839f83c4e15427366291cb90ff6d7f8f3162e31101aa490e40d18a48ffd85a7ca26cd802c8e0ebd9ddb78290302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307accfaba9f051b7d025083783780c22802925d9fcff3c6599f30e721865d79ae0b0933f0788cb378700cb3bdf4bc41ea0230100ad645ca0aa757b12a2327a54d68128dda8838fa396745839940596e6cb359c9f19d29ff97f8a4aedc4c3fdf6adb880302047c435bb5006630640230758ea6c1ec650746a423c4cc980d3c2c76b54e5a7f58ff3dee890ca9e949235338e35a0b2c399c387b311d4b6a77e5e40230708eb0d787bc6529185d819a3cebfe6dbc1e285982f8c1fe678a34f6a499a5ca6dc80ecf36041a30bb3e0a9f18fc5a0e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008b6a982c5ea533b0322c82818722a003deea0ade840844b1cd3914ac5a3a8efb7b519442bbb195f33de79f3f38fc2a63023100d3fd96098a689600acd657f6ff0a915279907b6322b08fa359d02fad481a65f0169d7edf8ec5da544dae8a995b81fc660302047c435bb500683066023100b6cc406664a8bf59fdf38ec431f173200c432620eb87928cb977aaf7f5f988e13cea8536d12c62e625403fc03bbb98c0023100c8cdfea0b1adb323260ef9069680040a511ab7aa93a5a93ece4f6b69a8dda3089b161961f329474c7ec51aace5f0070d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310080354a9cdee5f17d18052c58f1e3313a79dd9714768cae4805bdce877d9bcea054f733e9232399419f6ca6210e3f96eb0231009c5cc0267c975a2f168960c5fef4d964bf7cec9657770d8bfa7e62907da46317d6f125e1694d449a5f8f3508db9bce3f0302047c435bb50067306502306369f34cadbe074ba1a17ed747cdf0c2035aa509c432f6c9e7934258d94661a1d98715ba0f575464f296ce7f7bb504f5023100bf948ae7967d7ada27cb887afcf8140912462b80765ee49ab8c1bbd618458a09e5bfe50702b81bdd0909a74bfeeb70fc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230211af278978181211c3b54483d95ff97412de6692fdd1e858250da3c3248ad83a1993792a64e65fcc829f1effc52023b02310086bab6a4197dc0c0f17cc82c8511a39ef44b6085b4665149c81a2a2739963ba9d0f20ac52f37c72c6288d8593d3639ae0302047c435bb5006630640230065a7ea94606fc23395cbd7cd4b8c60c7378ef1950d3c4c8503f5a302b942b42608ae81e498f8b7907fc07d123036e050230278a44548df6bb128e58199ba39d7122caabd4b03af9342eb9d578bb20b049d59e704b1ddb41fd04f39dccb56cae93a50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100843919981e3ae2f46b850a01815187764e6dac9b8d1cce63081e350754015d2cfbefff2d9cf22107b87060a47cd53ef7023030f2f54ebf68ce18d1041e87bf6b52f7746bb8250ecd03062a5d25a385b66f2ae9d644c30e0a19b70cb5459a9f2f7e8c0302047c435bb500663064023047fdab8fa62ae5f515ea01bf63b22cb66809d0016507cac37e5ffb877c67d89cb739331239be914d9651f8476b83ea02023045b3f15b32d357f99ecf547be20f395a4281a29d5ef675ba4629ef3fd4c0dc42a8e74c2ed644d725a3a0104317f39d330302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230190e3a81ed67f03bc3eb96612ccbb7fabb87583980f8d8f5fb1239dd534e085597e887a4ed8ecc6cfc4aa8d1af2691a4023075dc401e663349aa3406083ffe5deb930eecef9ac341a0ee3ff23c500e94f58dd160df134a73cfd970b684216dda14510302047c435bb5006730650230300608ac53556d0aab9df11683172835ff43bd7b23fa30980accbf1c6b7e7590ab109e1b3e1d99f7aeb86d77d535467602310084c32f7c429fd96c6ed1fabe7821dfa19caaced0ba743e9011f8c491b88a1f0f8c34abbf6131beb01f034b436afa2fa30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009b5ffbd63396939845d8c4ab12549b23283e7f154bab5733e30b9d4760bb081a651de6a678bda93963071778afd6c4c00230063cfdbade444a5a8eb1daeb08a6a393ec20423ec219546ac86d156783b8f614e953dc406f341ac7d8d3ab090cea28f40302047c435bb5006830660231008008c1224409129c80f8bf0b654f8342fecd62a6acb0fd89ee9827de42c03341d00d71904cfbf8eef3b9a214cd908e740231009bde2cffebe1c3db73aae3b62c4fdeb28ad83508eb9dae6ce44748caa4f85876d739e1362d64ef437901a7c770b129790302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023021cbe0da3654e8ab1694253e0107a97b9462e913ba20966ca2e0c3d539ff2fa25adfa2b276e830a69dcb315c9c04e45b023100cdfc8599214d92778f4ef424f59e5d1b271ef7e3b0d3cddde1935da20b7877042ec57a117c12d1e2cffc3537b73d73530302047c435bb50067306502305f1c6a97823944bda78f64826de175bdcd9d50df4e60ba02145730294bbba42e9a5166122ad41953aeaceef3b7c2aa48023100b1bcd205364303585129efe181855058dfc520e97505bf2f55dd50dac98afd6e0ee3e3d29d5596a5cb32acc8d9c38e160302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d8f36d5297290e98e74a07af19ae043234e5569e0956320dab569633dfc7d9d0c8e174c95979b8b5bb20dd9148dd80be023100c8a2df2b2de18b0aae0fd175a0a45eaee6e5ac956a349e93f77b0c812ffc3ed400e69219d55151b78a15e5cfb2a188af0302047c435bb500663064023010476e3468c766e52ce941a227686218665aec105d76d80c933ff3bc4f732435ef400e7684c34cb1d1a39b45e334f05a02304af8dacd312b51e895faf947073d2c1780b3be5c30703dfec425b3f31f424bb3c459ba9ecffd478c900b5e6873c996d00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023004670b8f53e6f974bee4e47426ade7cefe4131d6e6e6de06db74f75630cbd84be9a1e63c07a0412073bac72e612f1d50023019a410ef16a63eb156dc9d3bf2c869aa0354263b2633ce8abb8ec7f262aab6f7b88b1d431e044d929157cc9cde0bee370302047c435bb500683066023100bd0976507bd3b74ad11469093b53e9a4b328d834ee0bbc1539cd25d8fa1397c42eeaf7b863ac8f7f1ae7a85530b7a540023100d9403907740851cc587792a0f5ab472086b41d3750597ffc1e476c1cb4f1869774b10e63224df0d70a5cb5f270844b960302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304d3a0b1a1c12a2049667bb58b19d0c2334b360984243e284d94e9892b4eb557d59edf55782875f668c44944932d557e2023100da1fac1ae31595fa4c5bd4c57e662cfbae81c0d4288be7dd2d5a4e864012ab091b956945ba850e0c3c315d448e65d25f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230235ea3be057308fb0ad0b9326604c952f8136c13810bab4b94f45d61d29a1d9dc5d200f1d4c4e714cb2487623f807c4d023100f18fa831813cc80f4223701a5e33a79759422598fdea3ee767fdcf6390f6978a3c85d4d7c4f4ae7a6dfa76e759aa5ca60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e83f26d479745e8329971a65467a91c955f2e8b8789694c63251e6fce7f355cf2a44ce0022baf6f0ea8d85c0ec0cc68602305baa75105f67f56ebd0f54edd69d8fbd36338c17094d9e5b8dce1a372cf0efd11a675a1ec60f165fa7c2501889d66ee50302047c435bb50066306402306231ff88a209954b34e9092592bfbab222067791f51b1a3937dc697947aa2074ed8bbed156a66eb81a1a85aa18976b18023054f27065212b138fc6692222fe29adb0da18ee0f5e843291ec08da6ebfd0d1d05aa7c9abd43adf683f73a04eac35c9b80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023052d74daf144488da6561894bc889b6976baf2ea73a8905c786675358da43ac359b889b8878a7866b279dfaaf8126907402302360037853d7c591467875428004181dc87357cce7e68eedef2d66eb4c87a2202546f401de838bd9da46d3324b676db50302047c435bb50067306502304c21016df5c727f7cb7f194817ee51324e43336a1270b07e00f2f5f680f871cc053101f0bf6bae0b3143c9dd126c0441023100896bdd54dceb15b0905c1fedbb683ad78608e6e61c89f96a39f4ffa6eb7be01b9bdde1d55db1c5d766ac43f1fb0e64650302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310085d695627ad5ac3f592b5fbc98ab33a0e15a1f9cb352af4f7b205f8752e400d9a79b9c33e1fb75b372c5a4593b6eddcd023100b19024d7fe5376441b5d92ac90d68d33fcfa1de8d037e43f72f10ee0d934ab7e36e42a6f5a763527c362eb4816490fb90302047c435bb500683066023100c97e8bc63f486d3ac2d6a2a41194be3e434dcd6c968248d4ebb1f73a4dcb1b33cb75b4b9fddbe64f3ea8a0e236bbbfa6023100c17547811652d347e3ee4e9962c002f0a47ee471d6daf5eee5544c6447a84ba15b1800618b5a3fd97d8eba4e992442390302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100fd1019a836f5585023751786e85d079e48434c19a0b2b9d13c71d4291543e242117672c23a3d74383d5e48d36da9af0902307fff0e624804931eb6325fac0c528312ab44d5ef76e4ca9d40e3966d551a548c05171e4226e26fa266522660948483140302047c435bb500673065023100e89d125225cfe87db8385fcecd48936979bef61b74168c0d8005573a05c7b922fca1041fa0f0519a1ea7b16a6222f9c0023072649b8fda6f11b55fe666366ef9ef8a1562c4f76be33afa99cc221903575842a45379202d36ecd60fa3ee14c68fb43c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304cef6b36ab2854c3040f228ab8d2b9c9469e90ed1ea0bfeb22793f8de06bc548849af80d6fc7bbb2e11bc8274682565d023100e55a1709438bb444af0609fc8d7004bf7e6cff6a681191ed54ff07dbdc1d05f97a6c26161648e0a83d6739fd2c020b550302047c435bb500673065023030bd6b85c2f7c509dafbfcf24a786476416251814f60bf6f0d282172eaee2823a3872835df1a6c5122db17224278f655023100f0fc5e516f8caee788121aae0bf09cf7313d13f61e8248cd138322884b96daf247c2f33f86c32367f3df303d9b6865520302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230717fe6c669a60cfed54427ee337d34d99dbcc781c4cdddf24069d168f047eb7727251e2603d9eb59c0cd289d1a2d110c023100e865e8ee453449fe060b438bd1b765117abad59aef1c16c7095c6692885ed04fd885bbd2981040fc4ca3a883ed474f390302047c435bb50066306402301827f4235248a150addc8a7923abf678774062f9e9fdb4ad6d05b84d602d96ec30ae850a7f67f49b8a178475f18d8289023062186e15e865a7567a901cc35a765f7b8bef3ed79540cba84fd56f721325c0f13c2cba13caeb20b9568410921d4349d90302047c435bb500673065023100f4f4dcfb91a2d38c3af563098a93dc389e98d5d1ae7a20106fa4d4acaa2e23e72d0077616277f4441f16a3615a96432602307986ca70cb0a4fed0a2e79056d31dcf295eb07da49809b6aa016e8aea124f277d4ffeb46b30a4fec5ee2fa50667f31e30302047c435bb500673065023014a6e07b4ec562cf765f842c11e9ee12b49022f001c9569f77353275d7662ced7ebb03efd423d5f82d4a9fbe19ffe505023100bcfcd8348e8481fef9c3f758993be65d6d7a08dae86a9579921a903e4b3ccde52a0e3d37f59a00b30b815b6490a991e00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310098cd08a71fb34302e7ccf06f2b677c9b869e2ef93a7426db9b407e4e49149ef9b87afb2f7dfce7bfde57f572c0e4e5c3023100860af0bb8cb6b47b2a98a7e4e07ad7ac66c17458e971c4e59f854d5f00b5c23499e1f40785da036f6b2cf73567b80edf0302047c435bb500673065023100e66eee05aa496c57efe12a6f5ee39e451739b88d0072e7a2550a3edd15a78813952f008fda5f7e4cf15a5bd667cb63c902300a4b6bc8ced0db361bd81652cb77f36e21e8194bb8a76000ec4402639dd2993178334e809538e968a7489ee11751d2de0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302330412098b2c4457d6bface1ec40d805036b6d432f332a8d9fb60faa19b3099984c59ec3e4ae16df37a09093448e063023100dbec21f9b45fa08445d7040f59fb29293f0de1faec22835aa8e92cef491593ff83e49149f2a822972118b1a92a2fb6740302047c435bb500673065023100ddf42bd223a6cf682cb24903a4bab337bf66bbc545e9dbe4595d863f68fb29d8a950a76623ed188b0ec0471b2f8c50ce02306978413544ae2f86b5f6d28959c820a63fc06cde9a8410db9fcb8c1269545d2c04bae33b86f6a0582191b39c4d26a3fd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402304709fd67c9f0aec6ccaf0716518515f35e95429aa2cd71226c2c25ed792bb775afa287615661df299455fbb1b97ff6740230746c74f1220eb4fa49017582a87efca32bbf8ad5d58f5986a9f8776f28082765c6381eb453a4b058a17747c7c0cb861f0302047c435bb5006730650231008bc9445fd8d3ecd84dfeb6902ae5d5adfb077288df01ccf488def29c69fa0f54c8868cfad4c5f77557aba815664038f70230677ff5a7d0e34a652e0f75352a42da56ee3ab27fef2909d16e95be599f76945c2539165e3a29e7f4f43a6380e24626e00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100fdeb92dac061140d3e274be1e157d518f8e6e0b1b57ca6b04d3369b1534cf8ed3712e6c90f25fd7bf238e1a301b62ea2023100b25b99262547f8a69b715c24ebebf2971d2dcaccc487fada0c0f7748a07c695aedf8eaa6d8cd330e70e9c20ffaee42240302047c435bb500673065023047aeeb25fe92e950ae6e3fe5fc6ee6e16a1ef0510ceb16391a761cf158b9355931510b809fec9ffb6348ce3d1d739b6d023100b5283cb4e3d312598c37c44060ea7882ea4a2429e9c0cd27c6769879ac75a7aae9611762f9bdbfa1da91399230a8521f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310095bd3874b0a8cd296c53db0a325d0231440d802c42c1f718337317a6ed321b09127a7087567de0b73e74918439d17884023100bc0dd04967d4acb68f0f3899a480fb74cf2d43f482c17a2409275ab192a88d69ed57108ca6a6572c82562532ad2cab420302047c435bb500673065023045a6013735fba8d7d1f0803d9dbb55fc252436f1dbd0e079ec3aa425d6703b69037447922af3684ab1890fe26d5634e202310087e792e09feab0e1326eba046e26ac231b634e20166656f04c03c4db2726e2653ad7ed507609f67502f983320f8cabe60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008514876496c02e620e74f6321766e045205a0a8d3795b77aabd63ce21423faba5f063fef71a1fe191184153b1a343b6102306b016258a00ac96c5c6fc8dc73a21e3d778ef856bb48ab7c8428375d619c60dfdac3c72ec08ee470c55be736610073790302047c435bb50066306402306b01b015940b1f694714206271c03f3a5eb237cd7878202f12d530d86b4816b19858d9ccb49dc8cb7eecbb186b4bdd8502300ccae0427471dff4e1af2dfeb936e0f866d4af9403b348bd71e5fe81d0325212465f2ef68449cc5d1b8a31e9de9f3f000302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023009fa00f9a73ff5164568c58286e4d6b3680243784b112e3e1af1aac1efecc109a8eec19134d077e4982081cd908d80d9023100d57d0fb037a5a4fb0d82b9d9e18df6aaa1a9fa5e46a1f4596c806f1d0e6163c3ae0d57622d082b49d4231062a5592b8a0302047c435bb500683066023100d0c6244c78f09abce6afcda7e5b7123b0272097da2dd292b3bb978db3ed36e2549be37eab5e02870e65c04c320a71a2c023100b07b96ee2fba6bd29d7a72a6845ea808b4fd73ae8ab0c0bba056203cb1dfaa6a73c7eaae659d32490d46176593a7df310302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100905d4ed5a8d98c8b3e211183819b1198c75665831e18f821d7a84dfcf64e4895997ad243cae6c950a557d941fc73c9e0023100e4d3a63932761d881a725c9f5e8f452ce4dfd115c7065a94a06568ea1e512ba6d63e5120af0c7e558d84dff2d5c9aadf0302047c435bb50066306402300bd551131ee55ea505eeb09cdf34237ed1469b9b467e08484aa2d86910f1fd9f80dc8f4c4503572c00a402c65c4177ab0230020e0b30c31b397bb67bf67da7e234b8efc2a8e7fd3ea56474f0e99f64839fe9c62d4ea29925f4d9b4d6b7302578d0a50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307128c28e5f70162187ab38f01f59696f7e89299699f75fbc93d35c2bf107cb7309c37768690c5ae906f7b22130f339cf023010c4e437dc8ce392cf5f2bac7f065404294a292421b8e26095eedc8857233d061c3b8c8a071b58ee91386f3625c018230302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303e1dbdd9f2ec8d69c6f5d323603d2411afaf8288321c5626b43372594a45f0aa0dc381d2cad46ad45e4828e3e9b32071023100813283cd9dadc3cac35d314135d9ce105c33d534a05dc91f086ccad67e6e7cc7ee5cc0cacc004a79ed4068b37905b62b0302047c435bb500673065023100af568dbe6846301493e239217b8d70d4ba1494ff182ea5505861e067ba7b040a9dd50f335a2d08e49ac39d861d4ed29e02307dc4cb85e4eb8a7c40ba18fbe72d835f49a05b84853d86d701e2239121cef548cf174bf86bb522a5391ae1bd149db7050302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f2086b5aba60cda231a219d196d8b9d870ce8067353209ce57cfc0beea428b7acebf91cb2d4cbf8d8a46115225cbc835023035eae8d4c28b6c3c61caef471f45591651c603322cfbeefbd5059fd4349b26e15ee27ad1a62a12f21abc0a46f3006fb50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023016fe3d843905c472e5b21b4995f84291d344ea65be21db1f0f46f6e8badbffb35efcc5fcdb28867da2ded4dfd32cc38b0230399f0fd42bb301f9df69dcd3a6671472a5845033ac473a84c089f59f1589a7bd5ffc36d22e1d1362201f57e4dc2a79420302047c435bb50066306402304034f3dcf712ce15f981ef1c6b8e3d34c2dc8a1994d192a72faa43284220b3ccbd767dbec37ff3a0ff0f1f5a8e634404023035063cded7139ba90feccbb2288da37fb46df947febf170ddc36138b4e9c92b93554a2f4fe3a72b4bf62285a7b2d64e10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009f0a2f715f9385bb6a88e6acb815d4e68e00d4fc8cf4c8daa251150ac91ea9db7cc8997fe76b6312e28d5bc8d220693a023051551dfeb755cef18c5287e64d9262d000530a16364c4e917cd4c2b9349e22c27279659e0f2ee8ea4d1c4e341854bceb0302047c435bb500683066023100bc6474da7b615419018e09a415fb00043f8cce4c7e44f28ea7aa2b3039790e75fd64cfbe1db281d5fd1d57c38bc57878023100bd9ad7f2e3da7d372a7559e2bd16a39b69187d2ee9f4663cfbaca93cf4e49f7ea5f7d4be29088f69fd00805f4aa4af5d0302047c435bb500673065023100f8fd579ea32cc75de367f60eb7210bbad911737a0877ab05d45bae76d7f7fe72c31392b8fb14cc9f607ea489acce62c702301850ba4b387ef672ed4f470f9955cbae32e8f5dde61dea8f434b597981657266aa091b881156ddfedee14b8e965445190302047c435bb5006730650231009308ad8f1cb6a98a0ffbe88a11b2c17177e789a740f9d350d1c4336804f437d2e83ddc9740f177943c311dc946b886b6023063bf0e1f8c665d637b394f5a8f9e16844317d63968e16bf4ee49157de6a90c720b19f2be1ec1e105134b7d23954166640302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023067ed1d334e15d54e451b26b1438e6a4f898741dbe1a2332afa979e1ff4bad82392fc69e9533a3b481648a92f84c3460b023046711ce506c2f32f03de94f420697546905be5817a0cbe48a609a369a452dedf4a0f0e421ca782e6806042c6feff67b00302047c435bb5006730650231009cfaddecde12870c56e88b7df35c32e621b9408da2fad54826a85e2c018868f367a688e55acc4bcf67978bd61f653f51023066e7c3f039143c124e6e7c1b1ef43744dbc1b9f5b485016fe15c8fbc2bee2d8dc1eef248d11ddef18ddf9905d7662c890302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303e8d1f7881c1bd24ca99d4a0abcc85131bb969cfe88badfccf8a1ee39610971d0fa3b848b972af1f43a332cb9d35059b023054838daa25d0aab5410daf0642bbbe537cdf236c83df6f3286a6704880f9cd344b0b215283ef709954a4181e275edf440302047c435bb500683066023100c71175eb0afa02b04e36b9b7add3595538b6f4d9ab29046b270f9f268070320d136277346641adc5d8483538160163f9023100bdcd664424e6eca35d63b83b695794251986a72324baffb37c73d45b1bdae433f201333a075cb14bfc2c542b47775cd10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100cf610713342e83b7eedd7aabac04f2ea0afd7971ab9ac1dedfcb040553379e7b57f3b699ee2500038ef39fcd8a94686d023100bfd4a60dd05a274e468792379f770121e0287cd8cf7b69edd827ea12797065577699b4cbbf0ac5e8152bbf0ae9e598cd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c10677cc0f629431a797cfcdec5ba750bb92b8f134d1b067d9b15b858364859f9669e7569bfe230245a7e0caf7818bf9023001401151dd904e3518ebf2a85670f5ac06bed1e05989196da135b65728046abce11e3231be6406194432de9b1cd80f7d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304d31ca16cc8e1ce7702058e81413b9d9af9855fcfdc5a7a8be7ba30a2cbdba9cd0afe32c79eada1a9e9a36b734a58a43023100a4ec900c61956065f54b5440bd494e899ae42eddf8fdc25a5b18fbb1baebad9a1844772297d0ce5ed6145f7430cbe2c70302047c435bb50066306402303c7be95e35085ab3f403683cda011ea44331d66b994421cc2e2d912564178844af1110f287676a1f0beadbcda8a88e0802306a0d3fce2a9c2f3215744a27a5f82ee204bb09b1890405079dacdcdbfecf4f11937a97c334d06d64af6492c5510e18d60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230258cdf476f40e6a77a525f48d957a1cdd75aead95e2607a6047f98b040b8f32953cd3f33e13b0c1fdec83fbcc0c83665023024320bec23831b9debb82ba81c43bf6b742f83ff8a0818ae003571de5d4e42a4bf51535bd99b55039a610b4ea7d279cd0302047c435bb5006630640230635a287ef614d9654e9e0f62689e48d1f74bbb1eea5494e61173de73181b29f618f90e9aa00eaee6e4391319e7de2c0a023022fb61e1a5ead9d028e3da7457d68a883a84e528e7bee37226e405b7cfa508bbc28f7618c930188d016ca6e7179e78a40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230473385a7999663532e0453e58728235d7d53f87185b9675970c84ef4ab2822236a96ffebfd0d49d9c7cfd350dc42025e02304655eaf3fa072496219fbc99232048b9c7e277afc769aecd3c3368a29673c7cb80b06942534dc0e7c3fb1f90f7cd9bd50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f2d72c26d836384164cc0d5039c5086c41e0c0402d38ad8c9216c10b03b8395291bf8bb50b1d0a20b9dea24aae684d70023040bd15c7c6302ab1970b265b9b87f0222a6a55032902cfbe81fe851b577f06df47b69a20e58fd3fa00fe6b1bde1228be0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ced1fba9c455b41913b27979e470a97a20b798298554c1071a7ef80390cbd792ef7a82c593273edde92b66ffd8c6560802302987d155805ae5120a9f3c1dc889e3d04628460b14a077fa37b222bde9f4dde35aa309ed4b9f646b3dc28cded1a3cea50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100fc60f624e170a3bd303a9a6dbe18f0c223bad469fff00ddb25d822aa9b166a44027c44585cdd916e6a1cb89cff6d814d0230056909eff82f91fe52e3a536e90ed6095e2d70a36fdf27315766e5f185f5f27b172032b025125335c7e01af96aee3f510302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305ea4d4268c6ec9d908d5e9957b5304671de79200ab4c76a52f619ecbd856e9ac15826fa549932dbe812ec217bb8be0a3023100b7b855ebff23f99099e5603880769efd688e1f6654893e3033d44b6577a5f7f1bc8e629b25cb3942349d3e4f1029acfc0302047c435bb500683066023100996d40635bc85d1bc0fa41aded2a39c17741e4f5d87bc8f7bd58f1843a6a0b3522872b0644a0a777a370ca892f139bb6023100d469d028a7274dacf6195edb464e28309e722939bb74465500991c3820ef104a72af053bc5a55595053489e663e870c80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c48299c746d03a746db9397b2e88dfa2c9b141991d9eec9d07fb7e4ffd454835ab9b7ebcf8a8fd85de016fa06fc1c665023100b4dd6ed39153379d1445b943893c688ddced60d79c7421a27f57cb87c3567d41c0513c55069f41e8d178061f4de71a410302047c435bb500673065023100ba29820a3b5870322198be33ec4de5be5ccf7a011434b3bf00a29b407e5f249641e453e86fac4ed6823f40257cc12c29023070d485f073199e7bcfb3ffb5b4ffddc78dde8e1cf787671d06e6f2f34b75a6f39f5e281efe3049de71b5409b1eef7f960302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100fe2cbbc2a86a577d01cba72b61661279398ec32cf798caf538ae737d3f40a10bf1ada1e78e10d4bc75a6d9e2f127bc2202306993f7df6bffcd93a5cef5d2f2d69c093ca5b033c2c3f7e85e864c995f300d7f0ff4932f2ce771450b553d4e7fc705650302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023067aca22d702576146c310e01f957b677c922b1af78c1e7ad1958ac4f1a487b0c13c9db2c181d6fd4d16bd3cdd4aeff0602304eee9a254b449a86edb57e1d86a19d32ebda7385cbbc3da7d86cff0167f8ebad10cdb197f63b3b6203e9720f699b6e530302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230009777c0a174e048bcee46e6ee8f38a85b42da098601c8f67541ab5539df9da3910e8ac96c8471e59e1e2436a4ab39d60230480531c943b350364658fca58a6f0fac02fbd50c8fc9ad82a0bab32a674e1c92c75317b8133071f3616245ad041769630302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c39979dc42426f85b670539b254a91dbb5aea343fae037e7b43b1aaedf976164a600317c87af6ad78d32bb8ae5392b40023030f602b47c024e4bab2d2b6e356d39dad40ea7a04dc2d141d028b838c55be82c56a8828aecd0b168a2706c37887175e30302047c435bb500683066023100de1119662bb234ceaf045e24073c192a326269da9c2faea77294fe293eab247b02da81ba6b4c08b1bd646024f1099a50023100fccf8a97e69112a7f81b375c3d26d1878dee6720e4b92a810af5456427fd09b0d02ac02c3ce660bffde4adc58e6d1a280302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305a8c52a30f79b14ed175d15cf2f937b684340dc46c4a3104f26f56fecc6fb90682b77295ce58f49ed89c275dc7e09a7c02304570742f4bca8e87478d3c8da488d647f033e3f0e5c3c356df30c67fd04fe2f0d99ab41f4039fbeb1159f9b16a56e8180302047c435bb500673065023100cdfe5acf47c6affff2596fb262d32a92f0af56e645c095940cf652d9c68abe3aa74047373451806b1aca4a3125ed991602300d63077182a4049d5f174058588e9ece7f9f94360b12be70481d142497bf670c10b65b991de3c4529f9f642cbbcc22b10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a6e6d54399e46b2c3185cb0f9afd6e975c2daa4afa4ab2d0341a321e328f7230ddabd1e5547716ec00573061223ed2a8023071ce9ff1ea4f7b159067a69b41d116fbd013cebd35e7c38db27c5066c367cef40d35070745b2782d1b351364a15b4d130302047c435bb50067306502307124bea130abbc8b71550195db633a4574969b35446e11e6e5221075f4511e6c34046eaf9568f9df34365aab122cc1df023100a800dd08636c1f601df4a417dc9ea11cb51fd221c2e37cb43a0b4d50e45440d0a5aa36d0eb652ca75a93b413174484d20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304b75b8e71b8271c5a753a3c62202b3efe5499adbe8ece7efda2e746ebec24e990dab80d033a9f7c368fc4b3b23fa1e2002310086befba915a488b8e598ef84015705587f3f0333189e271950f7eb256c83604dc5ba99bf954e7d2e5918566344b2e4370302047c435bb500663064023056210d0dd3cd86d2f78d9601fc1ff58d8b41c1ef2dd9094c4845de82a85634ee093b97f6dcb95717c859b5d85937d6e202306180fc651dd0ba488423c088341b05ccdd2cbc356db7194736cc11c40b225f4f84b5bb8c68de6d2f076c1674b59a91a10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303e655478e6f55e9e548e7f1df63aeddce1b03e77ea74c3328005b9af8d563d8a3230dcd6028178a5c0f341a2e49c2763023100df06c115f1164858eb20bda63f4d818e5611d915e49bd43fbe6ff9201a31c8805266b5510cb897963ef3d0214a52c89a0302047c435bb500663064023078e302170cbb3668f2290e1acb948b4be39661e148345542e73d0c3422c5a249e50cc522590ddd3da75567c8eb9cbafe0230557d939110073760c843d542329272844f15a735eba0d2a2352a324d00461a2071a2c38916f8580276d01696c1e006560302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009c203a241a47b4baa60a43ec849f68ff854ed082cc6f420d29778f953616ce7843315c5f9ae9cf67c92604f4eac24c7f0231009f25b5c4f9e4d71b44dde44d51af73cfcd668055014feccc256005efa628381e1d58ad9b9fa9871bd311eaa411c2c79c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023032ce77e9114d9ca43812864e4de4d1a3bb7db84a8464c4453c48c579dc0ce73012ae17df16d8963802037d4ed80ac4ff02307daabfedf699ac09314eb1bbd736740e7490e12e65ee7c2ac2718871784929235eacd85c4dc5f785b985e313e775e42e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bec95c08c4a0e196aca9284916cfb01fd4510d9439c465eae364805b04cb5ead18b4b28578f548b1ce79d1e89c01b0c402303a886a04a5fc00d93074ea09b878fc8f27c34f23b0aa5b432c5c37bc8787cc00a438276f06a070c17a8d98bb18af2ca00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304880ef770f3730a3475603f2978c978ae4b74d2e2bf8f599353339e3d1ceaa4d0f8651c96cee0a43dd15e936d3e40866023100d6b5f18a69c3eae20fd1a728df49337dc4a6ac20e5ce9b78f7ee07fabbbc1d4b37f8fc40fd5d63389e6eaeaa6432ee600302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307798c7eefa1779d704eb73b3efeae50b8b0d45fbba015b38178fddb7b8ff6866b70a957e75200ab02966431886e500f302306f651549695f83567e4eb0875e213bb2fe1a204476e0d003b98ca8af13478975133b18e6914a6f92229e7030090455620302047c435bb50066306402300f96d07833e759bd3bd2e60a330d226b1d754365ed80b80cf41fc5600faffdabf53691475ce337bc77dc61a72b07696302306bf8511686f910da61b87e5bb01642e2e239c9b04e64a7c56fda244645a76159c86762824f3c0b0ecbf4cf74d0d437660302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304e0fcb75d14fa1210511379b52f9a33f29b51785006fe9e69a3c30fa7ba517c0edfe62221faa686a6be84da601aaf6c6023100bcd87f20ef4abe6f0ffdc0be21cc1e16f82114a7d9c6155c9860e9a03d821918c15f7f9f4f8fa5b289fee1508640a0ad0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300d16f164105cfddfecabeb930ca9f6a3b724bb51ab2e4b91b05652e18707ea035f6cd69d92ac838f7eec729348f7a08c023100d4690ca74d61ce9aa85267472c8598936aeec072cb70ac5ce0fd92da3362c0eeb01edc72a58421d8260454c49a42edba0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c66da25a182d6fb5306c4e8341ef45915f192cc4c6385cffb751a9ae1f617ec8a1dc594e2b998b2cfc132094767397db0230155360b789510015ddc8286e4e6023b67560433fd92a79aa64350c736862e8f8a13c5ac54f1f524b417b7906544aba360302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023074cdfa60b00b6096e48938fd21c3681e0dd46ba742c374a3c440903e2ca35eb9601328bddc01ef25c18d47a734a28eb4023015fe86cf2c9407fa91c653acc1a1609523c721cfac18841de78463b49b15e1afaf50142c9715e9e8b3a45e3238fc9bcd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023059141316f7a3f4a7478e9d4c99f370c06f1f20cf7673bda536cf5aa981fec3042e85df644feeaa81f4456991e76b9521023100832ee49a2ccaeb4e61739c9f23466ac48835d47b3a70c676805873072d71dcf8c8df142508fd146cac1a9755c4995d190302047c435bb500683066023100c016cbc19961f9a06b519b23bcda6683dd65415e2f11289b7a39ea1bdc62760e4acf959db7e55dc16ee3b1391e73d5dc0231008fe7e20142d5ed0c862cb98f8960e7285b972f4f2dd3d6cdfa92b4acb1cc43d296618df2d7db2f2df25439d0880d182a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307c39764d3f6b94027236945ee5ce11da0b1d905d9f2692c4f396008e70cab27a673e4978b3236938440bbc79afc1e1bd02300d4977d33a933deb49ca40f1848b097b068d2907044920ca7d411a2d8654febf82678a002d3eae019c058b98a395ae1b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100fb14bc6150a171c8d4f496f8af299ae490d4900f2d4e545feb620d20b0bc5b3c95992ec642c80d3508b2c26b0c7974de023018ac0b97d320957f94337cf8ef2ef99e60b8c664dbc25881683543c37d24c1acbec17fda5eaefdf9e82f777b69abed8d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bd569cd8d7b995de6c37df80a807d1a21a7c0c4f54148211854bcf51f2c72ed584173c1978f4e59e6b4178fee2a1c39b0230164bc2467a6fc31eb9e64ae9dff5a46d9eea9c5a1521c271bd2eab87a19332d4aa2053e5755b969932ae083a12b7218a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023031c8dde8348689ca4d390cd736060ebdc29d2b6a18ff376b00ef061e0661e110046a42227881154a33177d2fe41304f3023100e87a04dd4c5ce91d5a98215074d920234ecb46854734d85258faec261e30d5d4509abe69bdfb4b9fd458da869d5edb070302047c435bb500673065023055da1e8f68dce286208980e4c2211c97003a8ee75b4fe336621c177c20672ddbe81caa9590034b39e394979c675353c0023100c13cde7375fe60d442809464b10a48913f923a117a1b5f6ef508f143137bc987a5a38a1f3ee9249f8bb2dcb4330107170302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100907dd12db9f37fef3d8a0a409e2773f7b068b618cd79f9dfbc48f2271ded8939fb6c27f9d8808a619550c1cce3123f3a02304ae848cd808979d0a229cadcbd2572200ec06e13edbd74acd9fa010a524748e8d04af4d70995e67597d7bded6aaa33cb0302047c435bb500663064023000da1abc538533e585ab4a7cc27929d07be75e253e66045b2a9c7a63ea7461e722518d6cb46a2416fd26ca9e4dbf599202302ed5ff5044f80a29f3b89247758cd1f3a99ef68206ad43b5b2d751d81ca78683020e98a97a74b2b27979e642708267050302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e0a379d2f971176c7b4f678d7d0c66b2a20dc0054d01a37b11b8ed022c9164e39a6bdeb2478482dd57be0e97e93dac2e023100f2b9b475edf4155484ea0a42949688f1314371638c84922254e99efaeefd87b2791b9fa646fb1a9d212e7d5646aed9cf0302047c435bb5006730650231008109ab3643f4104bb57c71ccc64a6dfc193eb6912c0cf89a0c5a3207758975898016505edf779795855cb755b8406dd402306915570db0c59d508cfce78feb108d9a6e0695be4de6b7f7a231e3d0570885f968d374a119fd149eda3b920af635a22e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a4db284d94eb0b4c74ef2fa7ef4554b84b4add717d924ebe1f5c4bdea71a378b5323c12d43d7f8871ae1648542722798023100bcbb2076fc74c9118c118674cd39ff194f411c7cba177c4cc7e340dddf41ca9311ce88df617e824886061f06665495440302047c435bb500673065023031fcee2c8891e5bebb34357a5fc583cb9f198a438d441f8334a3a1c45cc0400419da18c8524b81d2676098bfaa5dd459023100f461135ac175cf31f54ec7919455e1bcee01cae66ba6df5b30917b74a323dffcc78f1c682186ef2a0dd01d0958ba37ac0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301da50f59e7f56cd0aa747be7a61c4526200b93b19c3808a5483ee0b03246f7abafb7a3006704742f7cae3a02b18bd9a60230040ebf892f48541d50c9f34c3545110bb35cbaae0a1075f8dffafac112b92e04a21752558745484f5b1faed9bc95c2390302047c435bb50066306402300a5c3b087a80c1a38229c561673c8d99872bb4091f36254b6ec977e3fe22791699e6030213d95362bf0dded3bb27c84e023034de90eab18ae3df351b09af6d783bc32e63fed4951b2ff56d9f694d911ed2feffc357365ed8ef1be3f975bc89e24fc90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306382204d22411adb66a2130de1a50b8fb49f450f9b72980e0573cd4053222da65b3ee1c435a38456fc9726326f12496d02310084435042ca795b09a9553d9cbcbb233365a7717e4fa6ba41c76be0309b3c59bf84e9314d819de002a676c2b8e31bda3c0302047c435bb50066306402300570e39c267943d3d24545d8151374235a2a097a84f7e443bd8290d38c12ba5e71b01d888af096b544885e04e7c5758502307efba76840cb3b4867881bc72bae6f0a80089a9ac4ad3ad6ded1dbe8d5426ec3a40cd3c7a9169693081046a9329117030302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008cb43c78eaa84e4ca2f1918afa4e3fa2b21d5cf2b6eca4f4982c6ecdec47c69160787e3fa8dd1c1bba6822113d600de1023100ba502720fe6688041aa009c33382190457814aa7efa57a57ac2a09102b39c068956f5eec127aa85fa338359fa70dfab70302047c435bb50066306402305260e36c8127fdd7239788c56b2024ff26d4db41d8c1dbe5e2abedf3a7352ecca677ea0479d0436fe6861c2d0d012eb7023071500111204e493e40683d8716e5986b16f4fc4b654fe6097e30ebedc11101087fa717cd8c14334ade56c10d3cfdec2a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300f5d30cf0ab363722e6f045c17dbbd4b856c1b8370b399e5155f1c4fff01a3c2d596721aded1770bf2cea8310e876f0d023100d35afb0d92328913abd4c0029032c588a087398af7c429f509c473781c09541bef10b1fe6fd4d4470ddfbf6b212c0aaf0302047c435bb500673065023100a20ea80f0bb6d14b6d87bfa900db59b543d8b22c7182800060e50e1a6000391269e80c0f8cc368459795ba14440d425e0230547cc6c407f1ae50827e9cad7699c0a74819f73c608d79400e4e602fbab1c8eec025a3b80ff7478648bbabb1378ec30e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502307a19c985a2780832b1d6a3930629d3080ab367036fafe31aeb9d1a0037ccbc5c48f955a5c62e894a02f2f8da089991a8023100ae42f7a16bdd778b12daa3eedb42c55218d75a56541f572bd5c7a46ae5abf40da2550c2f7a146d4c334cf99f7b2952b40302047c435bb50068306602310084e2781dc0c9edd22ae9aecb1c945120c547fea1fcfe9a9dca4ef1bcf381109b524c1814c640199aa076e9796556a453023100bf3d2ada0c1cab1ab1937bb71819f82e225e1678c4e0d559c1cc068e0e3f52820fae223f0d3c956dee71a9677e98eb730302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100814aff7f5f7a8489326c1b60d5c6a6088fe50862b12133d877e3febdca8c9530b0f7bfff1ecef11141e43b2e5d769255023100d91e2a58e61c9babe963a5955877d3264fdf927dae461bbfb2dd7a27309f8ffe330311f69386a519a1c54ac0c7112da90302047c435bb500673065023022106c8f3e8b2297b88b3787e6cfe608fa8132e54799179b16d9e1ac58b52265fe970421d123bd4ac390b1c526afa6000231008e98a910ac657cdd37863cfb7a9f82719a955360860fe9c2bb23079cbf7afffa5b140f6319c664da97075bbd01a953010302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100833cdf97e0cf611279a22051fe8abad4d2dcfca13cf24252a7a3db0738268eaac73e3b680c4f051d4e223ef00daf665e023100f44eac752ad52a10bd3cfb13bf040076d87359bd6e267baae7da4fc298421185839820cbb7a77703918809e8da97786d0302047c435bb500673065023100d94da96826023a7daafcb410bd28235a7a61d39581fc9d18e619e152e47012f57ea8a0e0d1b7ad00982040b0539d833302304b2ff89696146f8cd8d3c0d2766076a5aa8916b88824df618d4e4a86496ca68eff6cbf1321ac6fa86cffb2281b04934a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100fc48047c4f5d37765b454561aa712d565e5283fdcb208c9711dec68fc5586d813578bc0db3ea2872b3295d94c14ec80f023029afd350cb18ac1a96f42c24c4c0383c118ecf5263a3a270368e14cf7d200598d0e23013b174513d96b0d9102fb369f60302047c435bb500673065023100bfcb2c8fcf378460540747a943375d0dd80df0962e76c0500ad85b3d39dfc15b761931ab0238790e1daee8592f398fe6023007541374294e571728f4a9a65fb04ce6fef4a640399d987d5db530be1515b91093eaacfa00d2eae48224a690eec2ccdc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307f641a9e355b232f129bc8bd1eb815c68279b871495a040ab7da4e07c7e3f87c3fa566b1d66b527ef65e5084406510b602302314affcf5f18cc1e6b85167bba61a73dfe9934c05372ad4b2d34bc907b2e91cb0ea09b9d88c973b2c7369c704221c000302047c435bb500673065023100b24672f676773b30c9069827502af12bd24f5aecb70b32c8296f5f16365f03b985c46088d59dc72980f561e7a873e8f002307c56317bf68af3b2e659b441ea6480abced3a0324deb4214799c03c2314758a81f460b59d050fdf33700adbbb1fd367a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d1d964c6d8b164bf7b5eee9e526279c22cf044e8941228fb114f0018df6bc2832caf3d83ac256614c97a236ce2ea29f8023100885c834ab114a725c62b45cad246470077651df1bffe5d4ab12a77cc02a940502cdc903edcebd020f8ee9a69d13abc770302047c435bb500683066023100c9995f3fdf5cda132100088a26ae52fe9d1543f26d33e582320c5b0ed4cb4a969c3c21138d0e801d87c51a6603caffd1023100f157639974d11a26d3434a427ec23ebe0c98289f14a5b6ad5596abbf1f9ab314872294538afd3f41d96f45bd509d46c20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023038985c191d598582755c6730f1b79f25a7cea5bdfa69f9b7e70d5546903c286b76ede8246be2c954744b4c9e25e2b7f2023069f0bf717ef8128f0aa053d0c0a8b576e86cdc1863ea88fe2eb31d3abcaf630907489b551b954b51c60f86e37d12e2380302047c435bb500663064023018556741bfa71394b355bd912aab562a9bfa83bc059a094e2b20c5e4074eaa17eb155dc93b6c35efca3a354c244fb01c02303f4fceb3450ea8c5cc15aba03b3b48001784cc6413874b57a013cb58ef8b16d079e760e43a2b609629588162d9c72c970302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e47791fd84658c0a9fbae3fcd4cd40bf2e95c8dba2aa978412b9a5c965798410cf2d88018afd8e238f647ca0ddb9469602302dcd6b5557ba84b2c92513021e5f035367ccca34c4b688c7f435001dc36d6f473a5114157a99c2ddc36be984d4e1e9f10302047c435bb500673065023100c5bae5a5d08c072a1ef005df9f5f190ce8ced7e06e921dbe3002740a970ace2c60c1e54c42eacb53390c805cb50eabdd0230437726dc17d69219fa49d60644c302627c9aa787c36b822fd9bf36e4c963ba270d71c93f83e0664865981e3acbd10f360302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b9f57a3228dc5837100a3c85be91abcbf93c0e8c42531d530bb6ea63a095bcc54850cc3e7e31a9f51219b67ae6ab60ef023100a51baed9192a5cfc9034c562c3bc8765206d13d90e2feb9585416d7e35647af37726c2420c26e2d6547e9f07d988f7930302047c435bb50067306502300766e9e171e5912e37d781544363982a35c805eab5e79d7384cb007ce18bd59b5adb3d7dd8d5ecf2360e05632d0faecd023100d2f7181ba96a367ea16efbc8522629ce21635a0c4bbe1b9314e11c44f6af8faee3d7145ba44b7bc053d608da963f643d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230549540e46bce93f778cdd92362746886aa462c75031afb15e85a24dbca08b75d8b086c4ca57282ceae180681566e1034023009264dae4e253bf0a710937fb19f9ffd8ebb787de362dde5a899203b9f0ef1495f5d575f18e9a7d1490af485bb3948140302047c435bb50067306502310085d21660e2572becbf6b87177277bb838bf057031d1361e13b109d672795fb83d3c860ff4a7ea7ad66b010bf902b431e0230097e7f6d8670fa2323220cda96503248e224ecd4ccd0840d83e30e03bedd844c51942254ebef6636ad6b00aa15abdc3b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230343cd76f3a03e996780e98ed1b0219989ab5432286cea1d7243df54b6b520a3b59ff49bd94986bfd776a62dcaeee6dfd023100e28e17debe1c5e54d29cc52ffcac98674a695c977efeaef4551e3f78542bc35b076d07bb7efa1608a69472b96203f5f10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023025dcb2358569b294b03bcf2bc75bc6c2a86dbb58c359cf554776b135ed41098a894579f16e248799deb5c63cf0b7f2a90231009e1f3b5bbedbe4e9e1d299976890ab5deffdc41f1cc89b34aa0b25385c0666fd78bcc86f8c6f49af0379ba58968ee9690302047c435bb50068306602310096af8c9568728553ae0898d9e9a898b1fa27df6fbef0819b7380b02695168ae147d545a870593091f41b31b892c24e5d023100e6b0a0ea49eadc7023a054ee8ff7b38d999e879000f392b665b34f238687197abe467c9fa10711e7386f511ed88551b90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230093f49499c091e893abd7e31928a1e0058e886dfff3ba9cf398dd632ed2e3a542b72707e650125109eb9b3f9fb85ae6002310099dda267bf6b73e1ad99460af9ab8a4e880a74562f7a93d402525f9b73c3915a1828ccf1e22e4779a81b20ca0a72f8ad0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b34754da8d9304e1ca62f28e7fa357fba73f5a40490a866a791f2ef88170a2aea3d0acd376376c374f30886d4508488102310089f9ac2aebf1088766e719d2a9e2bf0ec99b1458df9e315544c83ff15955a5f8689a5f1c38ddc97fd577fea4c06b5ca00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100eb00198c17c9da176ceff7e4aa95eb84606b8d8efd35670df428d3235bf2750fe23ff8f8e79a856e0a45b476530561dc023030bb3b399905f81ccebf0af4169504d31c44fe6f34eedb839468b8d3ccbd4680d46d3e2538d3aef82935ac4c5fad95480302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b7a122d0f0600a8ee1423d20d0bffb12db079e0a27194c822730642126b792735b5525fc008e57ff02358463a0ee898e023100cb089a5bd51426b708a4a40c85dfbbc43c918a1055b129f708a28e87615dc1b662c934c957b13e1d66b44cf51fb94af90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302f226dbbe47f3ff07d22682c2327e60010c2dbdcdb1b5467cda371b1ecc6acc3347ae0835dc93e2573474b15a1b858d3023067fcedd1fd1634b3419bf2707fc1a7a53802a330e183d42ccd965c403245c9e3036238bf1c0482f48f1bdf77708189400302047c435bb500673065023100d20449bd65bfffa6670fff3ed1b3e11f04c9c8a1724edc16e81604aa20f28cdcd869e14aaf01ae8533442b6b4eb142b002301d524c5dab5e2e8e52ed6da4ef7494f8fadb462b228602d58c19cf446afb210bc4e9510b73d6a96fa1c34513ce4414b80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023008a69bb34c3a483265753d8f9db6f967a61c1203a3db723632cd65dbf054d9084e662b18881af42a49e9631560b1e6e60231008966bed808e9d06406e20f04a6d47a34cea68555959a5c9f8bdc6b85e7cec0003ae3901946016f42c4811951d707abf00302047c435bb500683066023100903ad3108c9d9fde9eb3e9d9e1e187dedd5ea95bc04ba0359ef356d375a91b5b6d12c633e220fc5225ad007000ead9f4023100a7939260054e5072886bcba59378e1b9df1c37ae36e6989b0d477460174084578d6864a8a9d888958a3a685bc7aae3000302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023039e0e14ec754e1750ed70331d25b124c353eea066713e2a542ac8fa7d0beb7aa3e94d761dc4d9400c68e94434cb7d65d02307c01c6a3d387e10fdbc28a03f7af9d1f7ab456ee9df3f3db1294a2adac2feefb08d506d0b9bdcbb8c900dc037cd26a430302047c435bb500673065023045e99ba9037ce71571514730f5a3a310609288846634bfa7bd569b794f86925d34ee318cbf2b267f18f650a94b66d83f0231008853429c8022590524f9c19ca8d50dd08e14a155185ac98426f1e547b07975ac3c7af4544f16ef6973ea751745ab7eb50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310092d66c87c54fbb8ac827114f617937b0a53406c9831db1dd63cb5f3b347307adfce2c670d41bae00d8d6fa3c5412757e023100daf1b934e5834348ccce5c75366c8e8b66225bd9bf33130323c7cf22cda5794731193a8c45c6237fadffb95f71435b5b0302047c435bb500663064023073f2e4bb038e6b1e139299e25c3340c3419d3f7399eee0633098c8bbee6ea4eb5ff2c8e939d20ee643b7e8f7a7c4b43302306710a4dea7ee9dfc75502cd8021ee54e1ecdc6b7af02001058b951948c73235f84e7bd3746bd01e1827319cc175abca80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ee8aedeca5344f1455dba62ca3225c6492fc136a0989a8ad8bd00ada4276908cc61b4bf8f47202292c2a238b27e13fd1023100866456cc214e78d99c2047ecb04a63f772d36b3ab1f2528a887a3077ea3641717da0dea158907df9c67f976ca9eba4560302047c435bb50066306402302d2494eef61b8448d0734b7c4fd11054b7d5a21138ca19ada6ceb9806f4007989b27feb049a7107422e5598aaeeaa0d302303d327eb36c44bf73b6af043755aceb21814dae53677c5b573ea113091e91d021d2e38d0d46cb748991c3effcf66e725d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100cdaefaeb54d0a11130a33c2d87161b04eb80f5a1241673d71817e2b9597d709fa21ec16ce09af6f0e94946b16de7dd8d0231008adce143f5fcbb3c28bef84407f1dd47f090116210981050dabe929a00f77f21dc4f0c3770047af582b27a5fff4ebb8f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307fe471ab43ddd9420dee5c168a143d50fc47cf30cc7d82c7b37ea142743c65ea96d4193a26685df8ca94a1d0ba759064023071ce907d5e70b17c061b24c10ab60aa1c61ff706ea477171d3bb9f772697033bbf82f57bf9266cb30eaa09944d3538080302047c435bb50066306402305ca23b9f08d5df6a7648936f37a11aacf811b754fee7cb9d50c96649b343d7347e5f95f9862284e348d76764280a062902303a946bc42bc0c70e485d8dd11445bd06e0b5738c7d99efbcaae79ffef7ad86e656be24e34c6c4da3845599818c533ee10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a4688342fad18c57fec6ca03dfe51d6ef119ad8d7ab219caa36ec83bb10aa13d6b939dccfd0dc49ba8f2273e082964e4023071b1eefe303547b50b47df6bb13397643cc8ec62855c2af5782dfa8c085cf3b24a1f85832bc6a4ca7cf8cc2fd06c21560302047c435bb500683066023100efe13b978cdacb3ecdb8cea97428760c19e79c3fb5ffabafabe0b8c76f979238d36ce3ad3342a1e1ace6fc325288da35023100e9236ab581357ef30c42aa6a2562c7fc030cfe9b853aab717925e2c40157ece4ccf020ef6aba73a1b79bda937bf61f7d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300d73d6f6deb2aada6fb400ff2630a23d57dbb46a3ea961173e91f62653adec8236b0d2cbaa5ab760629c23088ed60b6a0230457d705613c0454fe0534d4446e12f5d56ef8cd10bef57949693784a42a380719ff175fa428dfe499b7f18c4b4a57d360302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c74a1b6273ddeabea93123c7724d3aa30880dc02b86a095300ec5b58941810296a5ff33d33e9be193338d9919b0c425f023100852c1b2d62e7dca2e06bf89756deaec03f44a32a7f0b67d1dd37fea18ca75310091ff79e9146fc97b69f0f97be51a0a50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023042efa09781263f7a3f0dfef8e82436e5ef692c347e065e4b7c78351ef9bf0e13cdc0bd431a815ce7846fb2187bbd812d023100c66d3065dd669db2f08c3c850013b06edef84ce071de99c1a88bdc9988fc9e2519e98364e2bcfbec62ab63a22b0291790302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e4c9428e92117084c8fcb36b20471c18372bb22c83bf725f7ea4b65bf1a98ccb2a552622386341d7bb601252622697f002305e48eefdb8b7d4397b439dafa72fe167a7cdd398b8cae45aec8c6905af0e78ddc68042492df5cef46a0619a055b13adb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303b749388f28be8bcb5f69f538c05d5220a5616e1d1601192e3d8c149c0fa8fe1db869545dcbdb18eaf8c9abcab214ca9023100fdb1356cf70fc1d350e3f588a0cbb8ae3b9f880f41595c4077ec5209059a03dcbfd34000eea3b25949c1219558e07ae50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100886c841432936a473bc6a251f4fe4bce2ba612ea8ac9143eeb8388e10976bdb6a1ba93367671fd874cf76206a8d64c28023100fa514b8f6ffde8ef8c0492ced1aad92278dedb056e3ee442289f27c21f7d44ec51ff4c33570fe1d5ce8edcff4feae2e60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f5da5e2e617f103dcd654ca9893e9b0435c9be3f773ad8b873c9c841aaca3759c650f6eddeb0d843936e41176f805a14023076a7c6384d68f5b5e3e2449ff1940216bc6c5a9059f8efa9f0fbd6bd7a1ea36c552a10109ff2545ec1741e629c6572150302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023051085d60c8ffb03f9ed43b05bb07b241c485ce1632a2521d4e9ab1ca68a593f206bc8dae8f6415b938323612865b1aab02310093b5185879d5bdc0372a30d4f4f0ff9a461f97584d1959a0998d14f09c9f7676439db366c3ef535191469f22b198fca30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008ccb1b5aadf6d77cbf0d2d76415273f59e4699ce0770ce7fce4cc4d8ace734361a077d99506ed57c01719927944eaee8023100c3e303e15b9df375e25fde98d14c3251b2874ea7c4264188371a82b7d2c02614550f74662410ee14050205957186db0d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a6f9cf8ea5f6b08942ec7ce9e835a54a8ea4a291a00be0228fe7b06fc61a739eb860c5fe53ac58bb86a47f358d3f131d0230253b2cd3dc4d4dadbb8e3ef81831c61d69bcc106841791820e7bdbaf60327b9dedce68fa612ce5c9313b5187904dd1420302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d8441ee791655bece4f3f8735c69c69efc892d5b0e4c54fb3898b3dc88ca67e52ed6dd6cf77c9afaab49fc659fa244f7023100acf9b2b99ed9f2d4393fa62aa3edb8fe74689e222bd97b927e976e0ce9d790614c4c8095776bf3825aae6a7d246dca170302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f3ebe46efc095019fb5ebee5f8f86866dc54e8b4db11cf19159b1c031834b54a1c6357155965eaf2b49cb352a2a6eab902307de18abee4f0d3e8e6f188bce2a9e5ab0189b9d48adb3e2997e1282f4fd74934117e1a4aaf6f8ed2a55964815871e9090302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301a523d48bd5d603bdaa164ccc17a377c1bf94582b7294188637c27992326f0ba8f0b9d6ba306faa05f8f02840b190a200230236da24ddffe6affa40550c49196e8a98a6de56b0b11a0ddf1aecc535452a4e06c41fbec04e8d50f5dd1472dd9298c370302047c435bb500673065023100cb039be3ea6d38d8d17496c7ec4c489f705034d7d74c91fd3af8e1d76cd203de636392fd911faa4df1ee536a6a24453602307493a3bed4f44308eda19aef60726a9c37fa548018e9411d354c0f04f412ce4eda1beb799306e69a23026c783182b7220302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100dd59ce6661ff661edb73d0c3e5edaba3134180a2f1815af9ed5d4c43251f82459c334e7ed4b89f901ced390ce3ef49d802307204728779ebfd578f8d203a429c34e26b930f4320201daa436218c6e285a3004e4d9e69e7747d5bcb2b9a1bc0a50b590302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f6fcfd3e8f38b82b2d98b31975f0b9d02ebe70f90dcf2a2b6de26cedb4c1a4bfd23a148bcb9236c1855021c0cc0be7c8023048b5c10ebceac2df6117ef55a97268e3c8064272ee1d171213082eb81812c126b2c55aa879a24305db584c5a6f82b8b10302047c435bb500663064023017501317abcc0271bd042468dcb3211f9d3f7767b61cba2bc450fa2e8b334740770d3537ba6b1d3294a0182bfa6a6fd602305ce0448db67377c98d5140b7bd776795985d29e386e9cdb99faaeaa702e1918dd58c7da915ef78f5310e1cca685516380302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230068dea85bc71f8973b4d6121cd2bd3b5d407a1975d3401e3546bdd1fff9047b39f803d2d489c2d5ef8cca1d7016a19e5023054aa20ebde5640e8ac35bd341a979808d464d119f8f129521fe79dd7addc2669f18bfeb98f584e45767c5859accee2400302047c435bb500683066023100f1d71be75465b9a89fec98f6e7e6f627ddde6da9209acba3386b3a74e19002367beabbcbfe9468e1e6365fb9d749e723023100bbaa7aa3fbe1b37294be4a9f9bb5b75d55daaf5cc3cb4c83529f20f5bb0e2c415283a0a621d661bd46f8f156a98d370e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310096c90da892ebf3c32a196d4729326e821a1ae97487de09f5b5e6e64d7312ac8403045890b627c867e37e753ce1ef6576023100b2657bd94c53ac00ba11c16649ba390d02f7727481a0a82cd54194b2f9ebd8d6c98fac244a1f3f4e29e8967a2f57cd750302047c435bb50067306502300582eb5aa0aaa1a9b832b7cceea9a49da2ecb9690ff3199a900c6ad33a10bcd44ed7cadc29583c265493dc5f806fd49b023100ee50c26a3c6ffd61ed6dd99fe07d5a1a4ed43874396819ab552363d5297bd1c4630cb5542764e4daba4f2a06cec3a7d20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303d8637203ef9836465a929753ef7d6d2ca3787d1a6045efe767f214e36406c3752ff68792f4b4333f5fcde44512a75a602310081f8e43a67c2ac92f6883ea7f21dc25a1ac5ba01ff154ee665c24d563f986f697e9b1adfc643baf760eb44eb3c60ff580302047c435bb500683066023100b8fd8c17f338b534b7b7f53b8bd73f261d4f4e3267bec53948153e47521eba5445a32a933a931739c8c23c618c72b9e1023100bcbffe961deecff35d2420bcca9114228cc73b0f417758578eb65c5df4abb8669517d033a9e901f32de137463381e0c20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023030e98635928aee9ae9d40b1c7d841803b820d2329ab18841573513740e6a25ab47038c5b66434b9ee4f3b32906a9e9220230135806b66de7583b99490548a031046d6aeffc9ca34cca97ec480dea23ccc34a9576a96ee455ff5bd8b23a9ceec7b16c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023030e98635928aee9ae9d40b1c7d841803b820d2329ab18841573513740e6a25ab47038c5b66434b9ee4f3b32906a9e9220230135806b66de7583b99490548a031046d6aeffc9ca34cca97ec480dea23ccc34a9576a96ee455ff5bd8b23a9ceec7b16c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023030e98635928aee9ae9d40b1c7d841803b820d2329ab18841573513740e6a25ab47038c5b66434b9ee4f3b32906a9e9220230135806b66de7583b99490548a031046d6aeffc9ca34cca97ec480dea23ccc34a9576a96ee455ff5bd8b23a9ceec7b16c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023068e484a3fbfbe2dc9c204b708a68610b15c7ec5887794f3995a07ff9c4befc0fd24bd7e645716fff07f6e3cffadba09702301fc0e1e2b6bd73e315cd5f8b14fe2c1bb7a0d61bf9b81a9325680f7fadb360a9fd2533a26356b5448d7742fd3616b2bf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023030e98635928aee9ae9d40b1c7d841803b820d2329ab18841573513740e6a25ab47038c5b66434b9ee4f3b32906a9e9220230135806b66de7583b99490548a031046d6aeffc9ca34cca97ec480dea23ccc34a9576a96ee455ff5bd8b23a9ceec7b16c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a40c8cb874b223e9b06bb576439a3ae46bec7284a45fb14a276b4d661f5be6e74eb158ddd38ac0c5ac05090dc05989ee02303053055d35f8c6b14c8534ac778b3f52d22c2bc9fe46df4068a0b127c6f99cc400bcd849cefec3abd568784ea2421c560302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023030e98635928aee9ae9d40b1c7d841803b820d2329ab18841573513740e6a25ab47038c5b66434b9ee4f3b32906a9e9220230135806b66de7583b99490548a031046d6aeffc9ca34cca97ec480dea23ccc34a9576a96ee455ff5bd8b23a9ceec7b16c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023030e98635928aee9ae9d40b1c7d841803b820d2329ab18841573513740e6a25ab47038c5b66434b9ee4f3b32906a9e9220230135806b66de7583b99490548a031046d6aeffc9ca34cca97ec480dea23ccc34a9576a96ee455ff5bd8b23a9ceec7b16c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023030e98635928aee9ae9d40b1c7d841803b820d2329ab18841573513740e6a25ab47038c5b66434b9ee4f3b32906a9e9220230135806b66de7583b99490548a031046d6aeffc9ca34cca97ec480dea23ccc34a9576a96ee455ff5bd8b23a9ceec7b16c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a40c8cb874b223e9b06bb576439a3ae46bec7284a45fb14a276b4d661f5be6e74eb158ddd38ac0c5ac05090dc05989ee02303053055d35f8c6b14c8534ac778b3f52d22c2bc9fe46df4068a0b127c6f99cc400bcd849cefec3abd568784ea2421c560302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307a249947dc5a8b7d684e248d3bb9b46a0791c909654170ed7096a20bee0a0930a516e523252a286d0c45bb5b3c3745d802303d3af6eaf8ed19ce90013dcfd18de54521545c6767dfae49ed01cd7e5f9ece8aefb19728df244e8d9086990d8abb5dbc0302047c435bb500673065023100fd6d76fea19ba417a0b05bc0e94304f5e6732052b8a35cb2f10afe4463c6da69043c6d715538bab4894b54a1d05a9e0602300629e6661cee0ce5bb549e5defad64a16272f0f700894af2bb544fae22608a8a60027df082b650139cbaad2e87b45d620302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230108162b190e6d1a336c3cd8a73b3d694fe2a193aa82d2f7e7281310aec07d51283f7e45f9ee8b6bc1aee40803c17c4030231009896be8b23e39847094e71c0a27e50b7763e1edef4616835e696389d2ce6a19852518700b3e3f4701f1cfa9edb8716b60302047c435bb50067306502304491d84ed1d2997b3c0713388f4a724fbaf383d56b22faaf7de73684b4f0f40c9685744d48d3f7a29799bfa2f742dc78023100eeebb530e68a599a257f4bf83f5bc1ef561eddf02acb8318b0372a264ba2214bd1bc5a31f99194219710c628b65b16a70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023060a4d9a251549b573cdc94d122e916887ad40825dab34060b6a160a7d15ba275b82679d776e8ac10235e1edaa0e2b735023022453f2ce524135d9e18a44d59972ef0c832979f7f24d8ddbe6c9977f45fc94a1ac2994c218dc3f02a81106fb87008780302047c435bb5006730650230590bdaa0ab96d21049aba0fa81e853d5435d2d721c5c4d22606a20f2b7d1f0bad0905c818d28191501dd52ac3afcc267023100cc74411461634166e730872bc170077a96a6a2ad84b5c27651c9d3743bad547fa059e73ba08d4a7ecfb7e0572a5bdded0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230385a1bdb55476533c3b95485b1944ccb6f3db837430d0bcdecd810e88f4f0203649d1bba02273136e527d40f13141740023100c1f6bb5f135dce4eb4c4efe9c721a0a451c48379f2f313bfe49e9ca808c9f7474e3f185dfadc01da98da66bfc897bc490302047c435bb500683066023100d61bc3456af0d51e9321ba3d3072e1a3d4d6ab97078a1f6dbc6c4cb8f4d5d3c771bfeef2260dd507a9324c699b2d0582023100afd20998d808016b17a15fee0b7f4b46353fe51e2ea16ad144e29ca9d06a5a503bbea0be28a76470de4a437510d2d54d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008baa26f8524df86873d2a4e5e8b99d526c5b6a4870f121c5977f982e43830277db28c0290e28f9791e74d781522a8354023075ef49c74f7699c105cfcb3a5dc630731b32f0372ce7e25ea5ea52ec118e022a7a913f5ec01eb6beb761363cde4e3d890302047c435bb50066306402303afa851f13679499966cfd79ad960812a0203f8cf15d2476f8c18e0f3263af839d54b71899c47d58af133afe31e7ba72023023cde5da76a480a72047002543c7fa657e746172b94a9383f0d3c52ba9b6e1a9fc7429d7eff6eb2389e74e5560b581e50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008ca5128119e925c77fa64f8b38d8172b2dddd601b5501fc9ded90dfb934ba07fe0aeea8b6020aa1a0e41bda008d488eb023100ece762bc328f46ba223c2695dc7fc2c710bdc3b4c66c4f8b9aff9d4a5feed78882c4eceea8c1f93713bbbf53af0bd22c0302047c435bb500673065023100ba8331b00666cec0e1d4e100108efbeb7a8a509c42ee1cca83feb1cd03704f192d9964971f548379c6e4009941d671bc023009fd47e10946d39165fce2ca954d3fdeaa7a51638ce2e0db1e668719eb101e18547a84bbdcd1ff0739f2d65e0015a8090302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ff529a9a99a98eb79a92f2ad51edc2bd19b1b9723b4a03b544ab60dfe4cc66c049185e4c6e8cb301a6c79138d781acce02304ee289dde4bf611fd3dba9e345b80ca33917b479188a0741b60bb41a518a39a351f5113eadca16d405a55934955a9ce00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023056704e970a2ac75dbf1838c31ba87e66c94788b69404cac3954930991c24912bb1661a28221739e010543be1f64c00a2023003132c88ddf36f6369ff47ec24e9efee9a443ae732f1316f05b233191dbef7f939141aa997628f9290313f70323d593e0302047c435bb500683066023100f99c14acbd1079dc2c53b53aa265559bfa91b49f27a4911fe779f940e3741eaca99a899357d072203b19d6518784aa010231009d7c7309fc876746b978c4bf07f5eb0d20e60dd3a6c69d493da13fec1ea0a150843d82e7d3e48ed26a0d207bf2d7654a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ada016c03d7c2f9a678f7e3c9147431b841be22917ebb10c87e4bfbb5e04dd0285b262d81a09a58b8bdf4ba87654fd73023033732690dfe1da7795535fcc9d828c88b20668d53211c096f35c1ce6acdf4966b3694e22759e33f0b70e801a738ac1ae0302047c435bb500673065023100fc43ab2a26ff17ce7e3ab5083e8aaf869603b390e2369279f4469bc46cbaf7a812fcf967642523a0fa2717aab56794030230335afb978ce7f60d920d829a66c27101a51567518f74e75bbda008739b23bb52ad54c80c86396ca1321d134c3fd9f65b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100af45b0637a06a11f2f96f58571e05628284d63668df381ebff3ee4c05009f85d2df4f47b66599bc566f9b86cbb8057f8023100a5184f8a2217efc80c0f8f140a1f5677db424aed0f14834ba62fc56ccac5f84a8d97f5c3933a4c07f3c36f2d08dc04850302047c435bb500673065023100924beda9529f2ecbcb2038372f305a4f32213504cb6005d23cfe38c021684aa1ad4f7038fd168c98e03bf138cef0d13302305f220addfced55f2a316607bd28bb40ceddbd96c525bcf98e3d7d85519ee16cdd4845b79b8f2db28b81ce8dbf098a30c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300764df7b3ce6014dbbff89a4e2c602b458365c3acb8996e33997cee1a7ae4185c3aef6ec18dffceff09931e3eed072d50230452da5aefa0ae727d7d58eb2ef5bca56a20158d2c3cc8800b43d03b13576ebae6353930119eec4c250812993edabe2de0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c2759876b1e9ee7bc32c665906e8a657058641a9db192bd1d8b0e964139af6c3ef3d9f0e35fe26cf70490e95274b27ff023077d0972316002b3409ec74bd3cdf6c564fde8ec90843c44144ad55146e397a72f8874b3c130ddb5e9e5d21e2574720460302047c435bb50066306402304a5324edef43acd9dc882599903ac5fb423152d4eaba421c10a5478c410ddc048430bcd51e08cd37842a734ba7a9e73002306e44a370f5568a9044e690011e8833898c50c58e87242393349efbc51e533f95e617a6adb1230b0328bb14524d4ecdcc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310087b55b40c242f3f9997bb870f7fe74773bcdf61e281c8cfdb893671cf5e57f0d0888731b6e103103d95ec6501e60320e02303be0db807ded6ec7e0101941630684bd0d4500718c11e81478ee10d38e7c4039e04618e33781d35625d2375bf8150b560302047c435bb500673065023100a1953b9df441a42c06b974f41f4036f265b00db3bedea1c2e1eca3d79e5353e5da45a393eed2b83faac48322335f3244023054470010c10228eb6087f3ede14703bd04150a1b50fce838017588d89125f6ebc68565096aec9c7d238eb97a6f6fce210302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009789ff00a2c69387a048697e4bfb10b81242d7780c67a78b770bb463733c113181ff92ca573a6b4f21e4c5173a77e29f02302db1828f8eecb286bbfbde889ddf6999ce020da070a2ba4165df11ce0c9663dcee981360f3d7bc977e7b11fdda9239500302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f405d3354064f224b27a272b7921f4f3795b4af82f4232fabb5a1f325e538936e9b03b3b53189983bd770bd81576a9c902303ff07b10d00dd1c367644338c9673423b5aebb3da0496f6bba23b48d590c5542d458cf9fc714dc26c54a26d0d19435e90302047c435bb50066306402306548aed9a059cc2cb3697b2e030117896893765f1e7871eb195287edfcafdb6fa9b0d2b6180632f295f258a2a144e7c902301ed8869ffeaf74967f26d8e5e6f852e1a2247d5a8d7dc95be89edbc32d73d1b19d582170a1fa6897158e02ae816eb72c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a08979b2292372b8f69f9569afd680a96cd4001cd7300d244cf4f512c353e74e05c31dc0374d16c52e9200a3f2e7a7fc02305906e49bd2921043f98225e424e9e387bb78c0148ece9fac7fdf1f50f80e59a4c9c6eb285edf0a1a60f7ec67b8d4c5130302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c10677cc0f629431a797cfcdec5ba750bb92b8f134d1b067d9b15b858364859f9669e7569bfe230245a7e0caf7818bf9023001401151dd904e3518ebf2a85670f5ac06bed1e05989196da135b65728046abce11e3231be6406194432de9b1cd80f7d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c10677cc0f629431a797cfcdec5ba750bb92b8f134d1b067d9b15b858364859f9669e7569bfe230245a7e0caf7818bf9023001401151dd904e3518ebf2a85670f5ac06bed1e05989196da135b65728046abce11e3231be6406194432de9b1cd80f7d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c10677cc0f629431a797cfcdec5ba750bb92b8f134d1b067d9b15b858364859f9669e7569bfe230245a7e0caf7818bf9023001401151dd904e3518ebf2a85670f5ac06bed1e05989196da135b65728046abce11e3231be6406194432de9b1cd80f7d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c10677cc0f629431a797cfcdec5ba750bb92b8f134d1b067d9b15b858364859f9669e7569bfe230245a7e0caf7818bf9023001401151dd904e3518ebf2a85670f5ac06bed1e05989196da135b65728046abce11e3231be6406194432de9b1cd80f7d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c10677cc0f629431a797cfcdec5ba750bb92b8f134d1b067d9b15b858364859f9669e7569bfe230245a7e0caf7818bf9023001401151dd904e3518ebf2a85670f5ac06bed1e05989196da135b65728046abce11e3231be6406194432de9b1cd80f7d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305f25d658be5a17ea9f03b3a110c624421985e76eb9123598c9db041909862340627bc62a4c15d321cabc7e52c9bcc816023100c5e972df691eb4d03d985fbcad4fe0256b27975a41381c6813e332aecddc81f7ed616773c300764ea364095ece73dbaf0302047c435bb500673065023100a3f717367f314417207e294a1361367dd52cf8bf7c4344a868936fa9b040ffa61cefc68793480623983bd3e0f1dba703023042998a4e92baba447b7509c5bb75cf33d66710be2572da4ba31bea4a3cdfbb17b18c957dc9a40eec1dacd7d8eef0eb430302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230201ab5efc846572b187b68d8a66dd1eab4ba8bebf8d4a914642145c3a669ff1937b8ed22058f97bbf8bbea5ef776a5ca023100fd72a7b0e98cab709b4e6e25150a1153ac53de830eedd8b1c29cc6fa160075c42beef9ffd5b8954321546115236da7a50302047c435bb50067306502303b34c3747139b4f4626097ffbdd464de6742553cc36c5505e63c084fc763b08a01dadd16f7621a92a5379fb6eada2eee023100c2ab6daba51d7b364c2821125fa63c568f90414c22dfd53ec873b43a87fa38023165719c081e65032239100c53cb75460302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023059afbc10a225e37797fd06154676ac06dec0d8fd1f3be1c1af46e561b6a789440c217e211edea02c572504dc78af2297023014e9d5a3db0c013421c2f778c25a405adbb9bd75e654678e8152155c40f19ef5a1a47b5c7659c26b8c699dc8bd68b7ee0302047c435bb50067306502305d1f608bbc965d763d347cd28324be05d11c10201f92ad03119cce93e6eb4f83c0bc4a066cc85b9224208cae2d02e3d2023100d3ed25aba7e85280ab7f7411dfdf7c8a05572e3f2129cf17980a3c2e9433e66f4356bcfe6e82266d701001858c01508a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008c2c4faef5837fbe39e636c7503f03057a979054aeb5d5b3174795b2522213eade8c708b0e5ed4a0cb0d142a2ec4fa8202300f2af180155411892b477e55fe15151b75f27e1c705168818208a0b3d59a9a64dee28e9bdf48aa37b85864ddb9a8ed140302047c435bb5006630640230643cd9c09602870b1f84b01f82ad42e2b590cef8ce7e6b842a67e662aab2a46922c065f346b6276b7e020b6e3ac6e5ab02304b4a4db4aac3c699cf5781c927efeac641f7af2ab2ed68a068f338403506e70462cb1f49f3192050c6684239d7fdbce50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023016f106397c1004be033648e96f2a9a53ab8d6b7b9af87f50d5998c928a2fd764ca786725cfec45037ae8fe0a080eb56d023100c1487655a39a955d3a2ec82338f965d257016400b18449f8a81eba03691f7453fb61e5c7a99f871fa4dcad63cb41dedb0302047c435bb5006830660231008595ba40240fe5e0d7869013069447b90e45c44b1e5b488111cae6bf4c1be5dd75964229ce3d582c8b7c9f8f95581dfc023100ac47a6b6f4ca35034f95c118820c84d6f71bc643d7575bedb1490464812072ecc00193a503c65d7e8fe50f97079b10a10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310097cc8dabeb80326f53f939d241c3e8d77f32935f326119d11b8b94e9833c37464b177744adfeaf7accf3ea1baf8d1bd4023100b6044820f4171bede9f4615d23e72959169c291b8570ad1ac1e723d0821e2d4e2c3236f3ab58207018b9c4a60f6ae9ef0302047c435bb50066306402306ddc13ea5f1461956d61f44356b58aeae456c401fc9f0c9f2bf8ececa2666aa634bafe1f58aa94b0e693d04aeaf7e5da02304faa29c99b3bca3c23ec0a5770961a942f929081d260e0026c5399002952e80d35fcfeefb0e88e285298f61c5ca3f5d50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023039a21994fa14fc4309b1be48467eb96d2d410ebde9c0b9b4522e2ede2c8bcc59f0c1f893841dea3005bdcbec84058e7b02301d354f263e8341c7bf3281d72882ddf8bedc1267e0ca8b12247333bbc28cd889cde2ffa9c07426ec8292623dab15933b0302047c435bb500673065023100c67d0300d588dbf7679f671234b9bb8882aac1fd6ced7cf7689da83d1799f646905d5d8df16f8d062842da2d8ccec37002302d13e999cd38f4eb46f7b633348d536ca540a1e97a8a070dbc453681708b968c0c9a46658fc7da7d34cf3920d508fa260302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100de1da87b0ad07a30c309c5fb11eb48a340ba9e76041452d98c88d94a0c2e6c3dbdafe9164ae4f34a767ec21a8fa81bee023100beae2816b4476df020f5ef670409fd777b4380892c0f24b7fc58e420410e659e5f8553746adeafe6ea3472a1cc1cabdc0302047c435bb5006730650230392430cac6036d877ec84efa30a6a75af6feedbcb94935406c4a244fdc0ecadb463eb6fcbe6e8840fa656b4385eba92f023100b5c3589f9a9cf8696443d51f6a4f10a732da4a21e3fd181d6171bf4ffc7407c877f8f8b2ba89014d90bf9d23ac34341d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303657736f030e80980a851fdd63eb2586b2143eeb31c06449c40e43558bbb666bd902ab0a66d40ee3e54e7646051e30dc023078dc7c71e866ece8a47c5d7a486866c48b034b38a61ff2ce6f413924a6a540941ed058eeec16d02349ee8dd3399c47190302047c435bb50067306502302ff712fda7a395738279908741ce034f6f404dd170d82343b2401b8539da0146bb620e2936b3fd4feab59bb45c7533500231009ade1fc3e1e24cc40f8ff5e82db796a640a8cb4f23ec4cee02bbc3f3688247aeac692de9d27e45b99b1c2f8e9a772f3e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009e1f9b63ec6e993ee0074ea8b52e6a0b40131fed7fb0355aa0ea031bde391f05cb827bf785924fcd16e18ef13e199f8d0231008307361739c60d4c0d9a4f13d8c948a112bd6783221f60818dc73d14d80d587ad9e54bac290e3b4e446c29d0e0aa48080302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302b0fd2e1670ec9609d21cf93af30aa8acc12c8338ea822fdcc7cd89b50e7d58a69ef87f76aa8242cd238f671b5627c5102301af39e20ff230cb2f48c5ab9469096b2134bce891c1d1e383adceaf3ad944aa3568342cf45485b0115245eacd619579f0302047c435bb50068306602310084b02d443c1ecde15b7328583d542cd9160b0b95518a99bb53cb5c94fef8d49546287cecd66d7d54b80bc18dc30111cb023100eac8e007db608cea0925e70a084fd079bda1053ed76c04ed2a84f3fbdc4c804ca3f9733074d2fb8617b0971011dc492a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bceb999a99e7aaad37abffb27a5858917a570858267327e668ec7a57f22ea69a5266de6e93ebfb72da78a2016243f1f90230433eace98cba47a0d058d29b24b30876385007063c983700b79c0186acaaf245c34b8716d9125d787ef1679ed08fa0940302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008177cf92f8a2ba51bb43e883f268107408ecae83384950264baec7ef168bbb94337b297e62bebd1fa258a09a1efc632702302058c75671d0193fea9f12bfe2461a704b4f901da4ee328328abd84105527cbf22f8d6856bd567beff7c5d481c3adba10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230091989a30420a57ca5e87cde7a4d76fddb30fc1070d414564e542241963777cce8a35cc4b2b30c81367b9b0992ea1a41023100f06ff9924d26bba4fbc497b17bd98c640bc13d0c1690c540053aa85ac570338046e2cd035041e294c7d97e08571a59770302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e3ed3c1fe834f3c7f36b37a76d0b3650d08fee4493faa07ad70209f38362888dcef35ce3c8ecdaa3e8a393a2eaabbe3a02304eb9b9638537c6b03c0b7f4668c8400d0387a8f7bc545fb0d9d34fcbfb5f1428939ed7869a78b55a6f126f9dbccb06b90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306038c8ad9fb9b76e7472421714f5c6de17a2f91c74f74c3f3f8d0ca654eb86f37cb9a7e466d86529b1d8ddce7d055fa6023043e7918839440d2110aa4eb9c51c2083a0a1e28c4a804b887e73c2360a13f3a61a9e7132276e5e16ec047201a25fccd70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023030b86c1d423df80ece31b4d587a6196ab443999175f2ed887bf32dfa9a2ab9bde95c6b2a5593d2ded22da5120998f64a02302a770b93308074577363aa5ae25d084d3512b65640c143600cabe78965aaea9a9f9edce4434d1be46d686f29292958bb0302047c435bb500683066023100baa36d54f922999ce1cca9bf2ccd313a2bf9f922f735164e7561c4271f47d75d618240093cbe3c4035ce70d32990524d023100f359e632effb8204d49ee7f98967eff21d91d64001cbc21b6308fde1f0d77c425a2c7d0378e7487bed3f9922cfdaa8670302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023044b785727c49b183a85921c935b11cef2130c6eeaaa4fd8daf0151e524bdb0aec0435422940a92f56d8fd7b77f17d5ef023010f244a87645b01e4f1c862e628653f8f463198856f57ea48245192453473e84260718be23c4b7de445944e480dea6510302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b26941c86cf6d6721c756c23116d9bf068b78ca088e21f992263862aa93bb55ec3605a2eae31e461f158dbc6a5847456023100df7c49b94a8e8eccd86e57ce21456afba1ac82077d2f471f2c2c99cc2394a2c11ac46a87cdd630732d25dbcf469e451d0302047c435bb50067306502304188977ba7bb3b181373f4a2750b732f0edd4257bb6777570dbf3e5ac35fc3cf47436d9b883bea9d778d546d05f20c4d0231009a722dbec0c48f31a03c193fa7e22f41cd8562ae2fd2ba06eefe95d7e10a2b21438ebf77cfeb17a0e0af45777557f3130302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e0cffb16591424abac544d64ae0d63c2bc284cb0b266b16c433e62b5472d3270ebb6134c4ab57954b9a8ff47fae35421023100a56fe53233d91b9717369875385005b3bef7ad42e7f1d78ceba4c1f545b6c104168e0714f779ffbb64cb13b5ccce9cbd0302047c435bb50067306502310086c428551a0f42b22f72e4f1bf8fad5337037562cb48654fb1f93798e1d762bbb111fcb39818c0a9c1af80af0c0ca487023075eabc0c7792426d72ba198c8592dbc064743ab624e78f51161be452f7370588e1fe3f5dd89ddcedf6bddd55013a247f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300c14f625a141eae5d10783319ab5e4abb684f0961463aea2043c1c1c9e0622e6ec896c2cc69dce9382aeb70ae308b193023100eabaef1ebb20e7d0672fc09e7249e011c6b19d50297e719c2dfb74af8c58a29ea7d92caa07cc7ba891a0631c2bde91a10302047c435bb50067306502301ceaf776cc6900f4e161e7c8228265fb6d84f27d4fddaa953240fd873e2f823933d4e605e5f6be8b2e9193975c711025023100e4e61b8c1b8b8ce0df0352fdc6ff662cf7cf38a3a66e04d8a2a6fad7e8bf81b510966af3c170ff36f0c16eb3d637fc760302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f0d378c18c80db0fe786171536d3c9b7a11ac221a5041bae28422e378112f17965edc01ae078ed6cee51e9b5cf48067f02305ec8324887af047f50b6665014b4f43b22ccdb4131cc30a665d6657ca112e170bff540a591a5711f7cb51100cf33f3dc0302047c435bb500663064023058f25036472556f68b9e505bd407cfb55a25f10f962f40b0bb4c8f012b175e6098c94f40a879a7e74acc1a8e1212bc66023057319d38466421e13c7d98d203a4c109dfe482ee36db402223e273180353714782d7a1752530ffff5affe527c47a174c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305015fd6d0f2ccb3b2b11da67d585fbcebf66d6a8a68fd111cf369789c0b6716c9f64d1a43927772c06d45c3266abc8b4023100913f9557f49f846a888a16868650d3e3654843968e03cb7cbf2b2f70be6657d0adaeabc23ccd97a8747a36e1921321ed0302047c435bb5006630640230025e638c806fdd41d8179f4e05d0113cc1e353b014ad918e0fe596d845b62ee2677fd8ef2c2fbf8e4bbf85df32c4bd2c0230385f8bbcc21da2fceb482082f8d3522b18761c358f83a9f52ad116ed560497550e3e76157ee92b7b18731c0d72403a560302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c806e5eb49abd091475e6c6da40e9541fa18b61855397364d07594d3911454562eef1168ba0dfa3eb74497329175ffe8023100b9310dd33e0e2d396226e46427b9aa90ea49a7e31cd2762c024c1891a68151dce664cf31e79c3d09107544fa34def1b20302047c435bb50068306602310086aeb425b8af6c8d7c80cf60cc67a2bbed87dceef912667f9a7fd152ba68e1a095c8c8d51203bdcda681687ca70489bb023100e2354e517b55210963c3a45ace8709d0fc1a55a531bcd639b0149a32cf2d108b12d93c03c9d616b8c79e2baf97bb8b900302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023052880cbf5bf55c79374becf9d954d12d302c5b415778f953547a1ae6c7b446e0c876e015521b582fccb5d243edcafa0c0230122ed8829466620311909858a4e4d06fd6a1d44ac4fcf9a65f144523d60dcb9af985a18b21a57001318abea9bbaa3fa50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a201bdf0dfaf0bc508be4dc7c442192ed8a095e6fea61b201a40346520695034e4e5d375060557276cd08a1172b2689c02301993984064bdd325c7a6dd34c1fd8a91dfef5f861e9b64507749ece1c5ccebaa91cc21bf2cd8f15aad316f06428f12870302047c435bb50068306602310082f3f0553d154094da82e9ffcdd2e8d7b28aa9cbe961fa5ab49159ac1b59d248ff29e67ebb8c696c0ac61a6252c363c0023100848aa80875a546c0babc32f3a00f7868846acb277c6187f920be95a92fcb6a3563aebb84ceed3a9aa30db36f72e115740302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304c6cfe8c3f8566069c79625ed0983bdf2fca90d4e211892abaae35c81f74e274c135716d685e47a91f4580f3d6de99f20231008c3e279cebedbaff3b0a313c208b1861f41a20ca3a2138cf8ff5a193aaf01058a72e4945f0677f14a0594534515ba5e40302047c435bb5006730650230764631c4fc5439a927b0a7e5c917a4ac59e97809def88a647cdb0019c8f19067511bc8f863f0468bc850d7dbfb1808ee023100f77fd8f5100908794d809326205e26df71dfdd5691fd3f4f924bae3762446cc536800948b05266dfca8d1a1d27aaddd50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023007161b478751a97ddd621e13f417cf0d1128a956d7c2def1a7afe7a44e4c58c7bf245813257a2a49105e4906d6d896de02300480cf90a0474de7342f1aed841dd551dc0bcfed71490c01b83399b504f5bc6ac9e0bd269facfcf05cb44e20b890966c0302047c435bb50067306502300ccb5b89169cea1305765c2e535b21bb46eda2fa26abf42fbcaf1738c9bbd220eeddbd9bf4e9181d17b0bc21014f419202310098dfb748460a0ffa963e88a6d57ea27b7ce24eb7a10033da3e491ac918786882d2197fcd17b7f644ed57ce4137c3d8ed0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230386d01154fb2d55458044f65237a76944de3a507acc962b371bc09be01df558b7a3e0e2650c4198c41a86e5a9d07600b023100fdb6679533e02c8fe8282a5eb156d2b7fe10935b1793dd201495979be0b2678e902a34a5c3d7862a95e436e698971a9b0302047c435bb50067306502306a08c7166177d01a277b3bc6ac189a454b4647d141c6b7ba0d5bd2839734606f467220428f08571b5d2dc0ae7e2d9849023100b45e2536d4b2e62465ace034c24adb1f46c427ccb2e598d5f9fa98f308efced054b3c2022e0f0b47cac9b1e37550ebc60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023074b130c8bfe3a6bde40d9416e42ac189d4f780a31618a711a2ac633d8512711ec5cee5055f144ee4591c78491b8de61a02300e8e6d0a48554fbd8c415a6f9160ed4728703c0183ffe09ddbff027d658de6efd50d7363ad5a64c8962a048ce61631b00302047c435bb500673065023100cd4794f465e340912afe4543e7c3fd1d234c90a1608bfe14df76027fc2752f4edbe78da70c87dcac41c86853770d403502305b2894b87cbd1c5dce13e5f59378e7f9671cea16d040eade2e08139121ff26cb68ebda41c18c1379c45b5eb8faa406b50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009ffe48c6bb152c25ab7ddfdead8220bf364e606c3f108228034d002f7ef606f1729a7f0d6843682262896fb00233f19e023051c7a1cd676b4c315b910a6ad8a2efc461090819cdb6c838025502cf1c7f0603aaa712eba153597d6f0131b1ccda5f430302047c435bb500673065023100fde439a566a563dd6f8c50509db6c735bd16b9650adbbde9fd676c366642e362a206b7044d614d7845f900971bec364a02301bd17d719010e7e12b2e7eb706adc444fce50f3759c9ba40c94a7281401dd76d54fb92503998e61c9950e6ed4f79c2be0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230657b2389245898b21292faaf27ac2dc4d675c58404d450cf0d376c7d3169a2f33a861c757ed1c2c2f1183b763cd07e6f02304cb4aef4ce8f39c2d91aacd7a4ec13a3c22ed0964a66015548d1390868a6b91c2ec541246f1bfcce52b048fcf0b2d88a0302047c435bb500673065023100ccf2a9a05e30a7af9f61b2a4a18fc7c822d8ddc6a35435722b4c966a81d7413e9efaa6b9ca9ae05712e121bc9866c6b3023076a4dafa86151df6efd9b87d263cb983dd55615086696df556a193944befabefc314048483943879a75175db36f303740302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100dcfcd128193c0ccdfbd24a45e92b4819c96a8ff58234a5622661306ebe94bd13b672e063583899a382ba494f95a3c4f402305f1d89b88f88cbddd6a1979bdf2f0ca9bcca85a816924b2758e9c190567f9353236b273343f72af955256a8ea07591360302047c435bb500673065023100a2cb72a1551cb337da99e6b12246b7d90e7b732f8226c3295ced914c8643bf8140002e72f01bf54c6e7407c5118fb53502305e40d12f622697d0d6afd5b1c2391d7c95e167e63296342d9e896b615574ea3d4c44304dd094c1a0140116f4bcc53dd30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d6ca4bac94a5419a618ac7f97ee6c0c912b7fc94af8eb1a2823203a15d3463cae0015db25d8a2fee028db1eaf38ddea30230700917690bfe0b65e33a87f632fefdc89e6dfb3454c3cc2a20dc58a5fa74730fa2414f9e8750306518f23ea2942244520302047c435bb50066306402307d935a0064ebe1281a6f33f16ae9b2c4fd538df0ac126f2574359b74d4a3ea014c27df23f5e44f6aff7ee584e287ae0802300313d3a5d911c6c7fd58b61634179c20bf2c73c074e6254965d1dac4066f315bf829d52de3c4bf59fa57e7db611e412e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023075847978b2ced36fd1c662523ccfbebb75b59c1ce446a47881425be5a60b8e841f5f177f97a0ee460635de824c905d71023065c59f5807fad4ebe1f7aecc7bb047a892b7c5524a08f248a8f15d92649f1768b2e86c9631492aa3990c6045f62220a20302047c435bb500673065023075876af04dfab346dd85a0c36af6ee2f9cb53ebf1be5a58c2cab42e65fa033b2d16fcbd1a17dc9ec0853d6a04485e69e02310086d4dd8eb463988082885a50210308f65ff9748b6441cea0912c0979f2e34c02f00c5f07fcc3f045795bd56efde322f00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f1b72612318bead5186f1f9b5645fc456e783c07c6a0deef9334a1466e921e34eb294dc8016c14ef8427e730a25faf72023100cd2e5c4ec2c5027a41d652338e6cbdf1309ba0d43ca0dcfcc1658822d8b1c0dbdac1ad18b79f5f6faaf318dc040c16e60302047c435bb50066306402302bb0efef882924c2844c27a58c26067eaf3fae2aa5239e9a2b50ea148e31c2e2ec67c494b9fc37ed561779e944da088202306793bc889f62da90cf71f891f24fb5959c978f0a6eea4c7cda4f7fc9b660749f6cbd0dd49495c52e2d9530f249b6088e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d65148a24e41f5eaaf0d4bebc81111d02a7fb81f44110d1ad16b661619fcf253e88c19173fe754aa044a894066da4060023100eaccba8294cf276500f1d0a18e3ccd9479cfab9f8e06c449f1f2b6dc27d823ac90892f28d186c7cc45353cc4314bd0200302047c435bb5006730650230261dbce8317149ad59a87c8f962728cf8e2aa6a31d1af540345105b54ba19caa7e2eecca5bb4d11119d5601a43b40d7f023100ae37d3a119b881f64959650601c24985a3892c1895b031002891eaae7736ad188b190228081b1e3111700cacfb24e2c60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100df016b2a68e2e6539fe54f914b33792e6edcdfeeda965d67d44e49e48b6553e6a6bb259276bd74025b927adbb6560735023100c4231217c5a51cfb944dd4061e11b53e033bf25ef1b8b2623f58ec2abd88689d7ad91031949f8df702a72967c498df740302047c435bb500673065023100b3a3031d0f996e932a47a28a2849b4b396055720c2aeb337b4f6a043786b3ed6ff97a7431fc092b6af81d0d07e4fd9d902307e9bfc97006d8fd12da2b0a41d2fa3edcc2276a19344c335e384eabf8c8cfa3a81ed7f0659a095f0865b0aeca26aabc50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008bd62e12e7d2f7c907c12a6f892cb92dbbcbfd237a689251f45e1f71f4b9c2d9b88e838756d8262d67f03db9b19c2151023100c1cadd941bee2b722d4ea2a6a0482b1748cb14229307a07ad319873523c7cdf12b12024d23276bf7204978974e79bdeb0302047c435bb500683066023100dff35a37aa2abfc4ff3236f3d155b739119fbb260c0e39be8df4043074b5b4f2259ecdce15fe4d87bcecf007949e8130023100c8f23ee4679819e223a5cc957d9051b2176f5abfe7141053d77f4b3c30d5146ca4a8f946b42a4424b310176ca85aee520302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bfe7785d9c9b7720b6b08f20a0a8e4ae8341e8a7f2570aa189e9b6f1eb65a059f42ba9f6fdb7d0ba58044c0b9a7e5f5c0230421dffff0cf87f3cc1cd3fdedcfa26221161ee2faa5236102401e73c9679d3d2d59210fad44e8c38a73c41454d45b59d0302047c435bb500673065023100ce31bf59b25eef6104e2a84b6402daa9c4f3c04ed19a845cbc5ce10dc246b1b0f9f7734c4792ab85d0067a97d7836d5602301e7982151ca4bb9f68d7b9a69d623b6c30d6eb83f2a050631458872f37c6a31e47aaaaa1ea10e88d49998cd3a896118f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100fb5dccd2a580a0aa7e3116800e7777ea43ca734be3395945ead12ae164bd1fa28673f7ce138f9b03fff11ea2433e3ab802302cad5d31515af24c0112daa6a7873e9989da0d16a3d17a1f14353de8e64145f701f5d01b9259989ffb54e67ec8df066c0302047c435bb500683066023100dbd887e2edd8fb28edf2e55c22b9702a02402cfd57253f4a95614ce1119ea1ac556f0342ef1e3a56260b9c909dd11e24023100f72640c4fb48c0b65b05a1d88a5e9202d77fe4cc8ea557400bf1503d44b8d606d6a9627d71d2e429515d21daa6b0e1cc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e4fba635fa57c9795c9af34f92a4eef3fb8e46c2b5cd6ff3e3143b45529c72a5004f19e5cda36f4e84f2117120f1b0c8023100db3f043bfe5e3561716c071d001c7fbca5a95a3062808f492c3d79d641a0a179cef03011d0aab79a53c9c83a9eea1eb70302047c435bb5006630640230320aac8596a9124cf07e13a76b759166330c04a1acd7dcc0d225acdb5ab790be3dc9b8126953941c208c69eed9f08ec202300617397de323d4722d21a63571842374759d5c1b01b57b5e2edc6a2c003d17bfb5b66c2cfa5782bf11efc133a7380c4d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300ff9aea015b4d867a79f9f3abe33fb3628e26eb00d39e58127fd22dcff651a68531de4ee3200bbe4d15a4b59fb19360e0230020202f6970a9999c78cbc43ef583348ebdb84272d12083d66e35b593bd1ac344b778d86f77195321d369b210dc9f0370302047c435bb500663064023034216926d6fdd92e2e170eb061e3a36ab413bd40d8be377bdce870575246f65a17fbc0557f0582d8449942ce58e68e2f023020e1ec4b328787bc3e07d43e9e3af4893b11cd20b9963a8b7bb61764871d475ea01f03fd73bd32edb2807967488451f10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302426977c66f042f23935a8a42eb0c09ef82116992124d01a8753385a63c432cb21d77bf9e29ae72d0f344af04094a20c023100a8baccf5c3ab873d9802c1b27688bbcbb6d298909219ebc97a11a6798387259eae2cb64a50946d6a85ca5e49d79ba4e30302047c435bb500663064023072dc7818cbd9a18ba610ecd485cedf6c3f0c943ea2f27519d3d789cf052f3f94537f39b6e9991f8ef12ecb9c0ae00b8a02302fc66fca899d4e652f22f0758f620da5f5663a5465aa177b0b439021edbec22b65eabce9e541168039c92b3c819d62900302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023055e8f37cfbd4fcb9aea3d007d637e8d3886c286df647489685379a6f0190e02a924e676aa4a8e9aaae1275b23d3c7282023100e2638340d47756697816780bc86fabb3422e504badd9d73b3fe5b690337bead86daa1fec47eb7f074e9230c8477aaa660302047c435bb500673065023100c05ec77638167a9c5b9572bc39dbae207137c06fdb03165e4f9de29bc620232580b4539c8d285bde2244d1d698c295ca02301e200b658cec4b81f2848dbe6987a3ac1397c79ce39896706dc4da00a64aa45d225dbadb8f2082248849530a4b82b0560302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402304693abd188e4d902b1341274b81ceb1702dca09521fe83a76fa32c87982c62135bc0278e48250bdeff6d2966cff90406023039ae14de916f3f5c5e56f47885e14de29cf3d5c4dd42b66a54b2e0fc1dac1707f30770b72d7067fcaa7a8ce0dbd1799b0302047c435bb50067306502307deb565af214f44315b5f5483a9f55c77e6bab47a38d6b5d987191bef3754b747509bf0662e093d05dc085588c6b9715023100844744c205231925f91500ed32280def05a946f6793a7a65164b44e4cd427c76d414905f1f4e8a561399b9fbbce6ebfe0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100af43433713eac55266fd38712d4b45772b9471e1cb73c6dffd61120dc4af00edfc869c19f878efd7dd19d5b5fe9678f8023100c646e9f619d045ab11dc9eaa2781b917ace0a28fd70fcb04c6985dea73c98c705b21c4989563034cd48ceacafcf061a50302047c435bb500683066023100a8fef97a7970536ecbffa3a7ba17ef47d69c341883cdb26689635521a5ac77c66fb5def3e75e30cebe8f12efd0d008010231008469d8f9bcecea6078f2928bde16b30069a59fef832428f0a4efa1920a753877cfa184ff25b3924a35432586b98d5c0e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302206ca4ece64a4ae1567dd46a34cabc60ca3643a723af3ca4d857e68814e6348935f5db2f079dac389ab129cf5924cce023100a5e958ff624a90da04e13ad2ed7fa13dc7c4433d52d85f95f7b257228c81a773d2a608b7436799339ce305c214a33f280302047c435bb500673065023100f94c749def539368080238b714b945b041d9603cd9c87db92101eec81e723dde99f6d0d342a7c786348e7e096be1315d023049796d8d48fbd5c429dd13184d9719d9a330a9356dd2accf1a6d43ea69ec6a931c78bbab1dbd407f42d6c591e4e18c310302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230734c9dedf84fbbd3175da6a27c8350671d3ce43597bf199a26f052bedef4888bcfe361aa0d8764af399902ed077072ac02306de223ec1c8f7e5663ebb2da67204fbaaad86288fe90659bf592bfc9fb96662fb927b7b50c239ca5eefffb335a45ed830302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d5f51a92aeb316462332a3fb281ffecaf879138ce5eb08c232a03346153961c2df927336ae534b725b232e72a320c482023061bc29b987404de37886a057618196dda9464bf0991da2a2075e3802c5870aecb2050b1012cd3a1de50251189a57be430302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230570ffb26f2857a0b1cbf267c566d8959ea80d550ab65f219955c8c8bcec9856850e83d303e2c3eeb1f95d8ae6f279fad02303336635003700f6665f5d6430a2dc9cb05d95115b5f17dbfd2c552fc10a5f859e09ae09eba795e86f0eaa3b5d845a7490302047c435bb500683066023100d82a0d4ce9131a2b27694fb9f23aa05d98f9e06a042ea7cff6c7f71ac913932d06fd08c556b2210d7c772ab0983670fc023100b8bb26f73c25c9a23900e44d569aebcab4d83950b0ba678929cd718ff02584ef97c601568b5a56db6a24d11bc0075f3a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064022f20f5ab2e7f5c006aaae1e1f85f7861d6401ff96f950c2b7679cb64c4ae2e0c9c062c5cd5084e38d4182e1bdd11af5002310095898697537a5652abbf200848b6b2b8f2368b9113199bdddb378e9d5f65baa7674f6bb1333518c78d7f6ffade4fcac70302047c435bb5006730650231009c345069869b1c257e471805cd45b4359916d46a22adce5a435b3f6e1565bba5ab978056b73f6602fa89e889cebf5d460230408f97f24e0fdf855d431192c5aceadaf1fabb23fb1a53639a9891c0ce08ce70314b326a2b8ac177f081ab43ac69d14e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d9270a0ae15353eac1a0c38f2a5047ebdadbc795e20001aeb6460d32a753b6a7424e7ff3de4750f8db1d66301fda302102305e0328ea1b425ebb2e2c15d9329841388ee1e1a921f19e9f866133629a390791057f503ce9fb433064fb5cfe989c48f70302047c435bb500673065023100cde4e9e48449315ae6ca880ff477e073e96f6cff32dbf4c0ec1897a5ffc43ee594f085587b5ea07b58e487e7144b98bf0230247fc68928f867f58e5f32c85b7c89dbad4b4d605ef1f071501ba0b17ecd14f04bcf855f4de32736b57cb0e3ffd7710c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310098226eb90738f82d1c4e1bf228b1ae77b16c402f6dfafe29d6675766c07a7ef47d47fb09d7c4f2c0e06d3e66294940bf023100bfd954bd66ca8ff9fff4d11649b8cd979a486fbdfc28cfeffe36f7fc2d77db05143d31f9ae8869cde9aac56e1dd9be840302047c435bb5006730650230379ccfa06dab5b6cd440434592681d485e96305c67a353348dfba7dd11364e4e3045af569c4fef5e107880f725d1a0f6023100e28c82f9f58022eaceb3275aa572123979fa5efd2d9f161256066bd04d1f786a18b0558245ccd325d5ba75329a4c500d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303701f1096165809a389d5d98c404b0464d3e5d03091696a0b276d9ef9ccee1096b67084e7ab6ff43378df743dc7c5b2e02300ea97488917421857b347274c8e676f6f60a5c976ff3b8cb52f40da41afd69bcf3bbce55b54c9455d77ac82e98d65c670302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a9bd96f98504d3b15a48b6734e62feb7bc7b3b6ea333d5e05590287f90e2101547edb2e845f972a2e1cf50dba424590902306a011caacec9a37fc78d9b5940bda747ac861a4d669999e952e2d77a13df46fdacf8d993f42ff87326f0e7f0a1e055660302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b21554163ca8c14d918f9ec9c18a1c11dd068dfd1101a63618328a3d38deb3314f87e01e4979191aab901696af8b92270230353f36176f9615278d4ca6aaf1548bcc819406c6b9d61ec529d65579686e4aed83d744e6be040ed6413c77442ba725b40302047c435bb50066306402305e78d3817f1cbdef7417067fd888dc46187df89612f37e5d479fca451e00e642073749e8f4313dfe80408ef66748bc71023063c3353f3e5e37749d906a6c158b32c383b2af5d177aa510d13d8e26578c814801cf7c0b77993e5d646e2e9e50160b140302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023016f0084918e8add4a1306ac4ef2afb22e87a20792242bb27bc9388a738071cd126e0e0da68299d972fc2066385fb5803023100c62e7893fd0d2936433a6ca98e9538f6e976ec1b5d420ee155bfc5813abcc5205cda43c72f733a640ba952e9e726d6c80302047c435bb500663064023032d318da3725d66d25bae2cfcd07fccc279df9358a68ca146558348da6223f228410c7fdd8b2704e3d7a0ebea15fa98b023072d33e7ae5622183f32a9370cd12ced6665886e4e0f82b126366e2775554a56c2dc5c4e8bffafb9e36e84317e53f32b30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301bbaac0b6c86c0c39cc77a7328f759f5ee821537d9e193fe481a1ff7d0e4c743b305d63aeb8606379ad85ea0959024cf023100a093680b3023838b635fe887ae7270169fd1ea23439406a6a4a7827faf19f935a92908fa3eae2ddfd6606aa0a9b723cd0302047c435bb500683066023100c06c7788334e3bbc1db50501116ff92920d257ed42df3deb391555b62d341492d0525e82140abec0c19b71dd16f9e5f4023100e70112802ba8db5004b4a2ff011460246927914d0822cf82e137f384b34940730e3c4db699d1155a7550725764bbbe840302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230351ec574c17fa3cae454f1958716f29d91c7e39131be359afabb68023f813b8174a3071f1a844bd4b0ae524fbf9517a3023100b51d8e3a1cffcbd28050ad21258856917a3d2f3a9719ea85396f8cb9d093cd802b3dc892013eed24c288b5429ae1a50d0302047c435bb500673065023100dbffd071a8faf23a123f39599fc5f000dd38994ebaa4dd3bc9bd6d871571bf5d9f96bafd150e415b83a54b1f87d6251202305bbd04b969a99286cdc91610218cfb01c7bdbe3276901f9e7225aba46b662dcc9e10d1093939f3093fcf8c54b00957360302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d80a876f1bc1f08b16843204d75cf8e740f3e1c7c767db50d4989184b7486910ac203b38f3b46fb77b5292a3c4678d3c023100b89d7e88297f683933f7fd51df64eca64e55ac7f281ab7d94aa5b8c10419120d000ffcdc43acc71a5dbf9c284546ff600302047c435bb500663064023071a1a1b812037057781dd7e66369d2cf201054bed2a210fb063fa06a2ea1c363cf07279273a923a1f38efc7fd5b30791023047079a7749065d33445dc0d1576bcc1ccff77789870b954b7979a0c50eddf365337845e65e310ec0bd83691383ea93bd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100cc107f537980404d93d877312a56a97cf9eac40cc1ba18818867a9b9e8be9c30b8b5dd8d31ca418af7279dda21046e130230188af498ba7846a20aac60588a327cc3199aef91acca4348e0edf10b2887b1f08718ce99c5119a08e9ff4ffb5445bd880302047c435bb500663064023064a6f5c9654718a1f6736c67c716ae63bc0389cf80e0ebe04464ac8be832ba6c9861e70e38299b927b961218eea86a780230121d78a9b35f1431746e2501f18a84aee3b7765493bf8b6d19d26738eb9cefa3f591406ee7826dbd4ea25b51545ea3920302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c02cdf59faf6c0e7089a606e646fcdd49d657c3277d4cba8883ca459af4be351af232fe5ce659e758ab9573c37066b5e02306ccf9efea7c9ce4ed90d6fde945ff23a52620ec57370535e382af435478b5792fe0974fbdfdbf4f2dfd8047cf66cf1910302047c435bb500673065023073a96b68e30b0bebb9faa50243b19eeb74e6c22c197062875e51cccc379f6d0e02f690dcefba9c833cd17b393b635c85023100e42efc4dfa6249bbf92f219201bc9e6aa8c79d72347d103ed07d478b8b6f9c31ffc3e3ec66eb601b0dca6709625806620302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023044f1119f7677072880d38314743b367fa35b08ddabd864cfff2ecb1199dd12c0b60570df7d4336e40b6cba19090a8c81023010149c0257aa7154f09b4b7a14f39ee250cdf9daf7d01a274e4c687a854dc8ad21988646452e778d130732da7e91f8380302047c435bb50067306502300caada42f1648bb288d4be6596dd7f9d444312300a40d10e553d6db39179343d7990ac14f9e33cda9b269763a9398425023100a7c8e396826c0e18674250af7965916d8bd21341f88974e4cb567bcedda37897db698da9d57c68a48c942b5caa30e0230302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305a1aa14511587b8c430344b0d2e43e18e063c7d104d64dc2607a0718a6c7b68859588c5b22f30f543c814c5f43c1e850023100f2965a0268b0e3a54e77f19cadb0caa4474d1ed835aa9e73bad4f9f9575cc22ea3b3619c3733bbcba0eeb4832d812e430302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e32a9a1eb375c2ee74950efbad088533d450b253ff87f7b1a087c84026a063cac52f3f2400386afadcb8cd13dad23cca023060e4955cabd69a105a797507a7f58bc37abf810d13b0825894b535bd3b16a60886ce2da2f653d22e54134518bc2c32390302047c435bb50067306502310080e20fbdca3517c936787aed254a5e25a02fa480e1b8c64da1a8434fe97fd8b7a01603de69f7462195d2c97a543aa70902305d1489f4cd32ba4169ada0d03b5df4d9057bc3af7044a6271a0d6290c2da523e80af530e8b15c093410500af11624fd20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023054bde0aea13097296b9bfdf17c4ac5273b83d85dc4873814b2830fd7c5b5c5e029504f1224c48b6515b98091e09506c502306affd8b78894e06277d50f386cc9a7f4f012781af008c014dc1e966d4fa76b936488f359c8448eedda9c1cbc3137b3760302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023060a260730a7fec896e427a53ad14b401a279c656d94606952e673a3b8651f806125a0d5e207bf0abed09e65ffaf77e82023064f84b397a80e1acd77459be7fa78811d98f84773f2d5ffdec363d193f2b71c311fe4558ca4b4ee1282b2e33a4e91d6a0302047c435bb500673065023100e07dad41de05ab72ce65924b2b0c6ee9d6acc876ed20b404895e21bf8b21f27277cfd7656094537e153df20e4a6bdf2c023046a74d21360b954a3fd721e5366187068700fe78d8975c8a1bb08863096145383a76a896588d31a9b7ec642231ea075c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100aff833734e36d971e4f6431fecdd2121213c9c6a8b279b382aa39c785c47f96045fa55d9d5dd700d0b8b0251a93559e10231009155d26baa3c73d87754fc442723f2501ab301099fe994dd028d950f358931b3d4f1366dc2b62c5c935ce521bf92e71a0302047c435bb5006830660231009e230c631c1839685fe7419b3032e8afbe8eb0240989cf96e7623b923bfe522688b27768bacfe7db2006c70066461f6b023100f17df5889a7b707536ff98c07d77d3c95775255be033c01c4446c78d277499804b8999c4e1fd2268ac5086d5bbbfaeb40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100bdb66522a8951a5b1f597adce8d3f8c6d0015a80373ee7edf9d42fe91917ef4aa37fc501bd7a29e79126baeb754056fc0231008e19a6f41b1ab715bf6df699c52b5c4f05e8a32701c90d8c3f98c4e80a4345bd55a3fca73e1acd1ee23174d4abcd1ae70302047c435bb50066306402305ec4ff4fc7ef0ea08b8c91d01fbf5a981b50df3aabe4ca70303de7cbe49f2a536f29c691a899634248e3f9b5b270bd1802305f34818a22830a6235667d5d04eb59d872f278f493281721c78ef47c52c32738c5ba949bd8b98279c2c2cd0326a51b3a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306dc38b754d2dfd1a1a6403cb027233af8ce164e1f232efbd568fb0dc6a7a316911afcabda9d837a676623a01f7e6f71502301af1c4b0145c1bc36ea70d1d619cd9a2b4d7cb68cd68d0f185729c06de8d45da152223552cf0cd128d24e871b3b857980302047c435bb500663064022f046685cbb8c2692b5aad8e9af1bf776794f6e02bd7a1272e2d1728d140e137f436a03ecbee791e26fe0592aee113c7023100f7ccd19f96514a427d4de4c6b6e97445a7969c61bed44528b1e0809ab0f914d1745c30c473064ca88e9b21b5759f8a660302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230604e984cae2f85bc916b3f0dbcd6f12449a42419c946d1bade092eed5c80ff8c9f56df68b92cb17f544af9b8f85cbbf5023100f853c30312fc2f69073ee6795e56b6f1b73043697e8f6e1ced5652ded253727532579f892aef0f9dd3f1af16c43743400302047c435bb5006730650230769ec15e620bf5db111433ccf0113f74a576b6d035cbe7f2f648ef2f83b7191ee430ae62879b35a52adcee4aa717501d023100f641581048df9cfd0c3c37142cb3d3b2603f29c5ae8a23d85e1d4c346a6434a7e7b8d7b68c6306bf2b2dfec103c99dd10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305fc773ab75d5c50fcb3b24a8fc5521a53a0de5e3322a0ef9e1ce61eeb2faa22292828b560d15e444387c3cce1c052d7e023010e1cf2dec599be8d03352e8f3de610039f762b20d24131dc2206203f90bdc0814641f3d9a635989119b4ca14115af140302047c435bb50066306402307b896a026700eee9804de9beb2c126641551ec8cf54d6cdf862cfe4b590dd5c6a61e5f306cf0ce9d6161b57bc5be33f702300a2fdc9b187a9a5d603b97b39a010fb9f824bdc51fc61e1fa17228f7d9302f6c9fde3a4265e4d4446e5f7006095cf2520302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d25197af0ff857fa6a2059617ee02307cc5c4fa449aa59de627be47e6416f6426529d657c6c4db369dd2f181095d37c30231009c405e8dc1f67c26883f7f8554fb7b5d6d0e054cc8d970342743cd2332a6a215774d1ea1547084a5ab05ed44a0d1c14c0302047c435bb500663064023049d36644cc99d182d301a981558bbac1aece4a2c83431ade6eca793886468dc7356587052f260a587501babfb8e2a8370230780daf2c03b204b1029f65f52f35e48a248d1555dc6515ea3f0fe5b837f807823be9da4955f6cf0e53a6c3e1d57c79cb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ba23c10bc92d8bdc8deece3bcc013a03c035ffe47adfe8cfcc5be2aadceed1e05a7a92016f5f0ead771ac61418e4e0fd023100b8f26622d6f28b314674b9a3fc6fc5ccb1facd48fbc645968c436d893047f4583f662720a4ceb6864faaa7a0f3ae233a0302047c435bb500663064023068ca4d2d572e7982a5bb6961f213a13e0e40ae973c2b0c3846282d2eb8b01994dafd8604e6d461bcce5efd7f57ba8c2502300977ae1032d39570db5843d2804a04d5d3295ebdac83f8f357ab8c196b911713bf1f5f50cf4c9950d3ade6d918a7a8e30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d4e231cdb4edbd70ddb31eae88366225a3d7e0376c5b9c75f299d199afde931e0be30dde4162aa5efb5d32b304d86b3a023100d1668d6dc05a9d7d23a53c584bf299d4e42b8a156209695a810ee9f5ca33b606020e19b6b0848987a68bbe26d5b410a50302047c435bb5006730650231008f4a20fde136f630ec30d17d95f52f4bece91a22b294888f2239d6e492fccf277f3151064472ba0966acb7d19068838902305b4f2b2d021c5c1cc000b4ecb8fe19712a2377fc9f1ce12cf29e9f3949d80b5bad300287c2e206e522c55372c8d6be4f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301a714d53aa4a442b0317e0ffa3c7a76eeb4aea0923ec1946a8614da304f2f98a0c68b35dcc7cf1279cafe5e977c4da19023100ab18d8d17da4583a06939a43096f884af8bc7a4efd6fbdeea9fc4b8c54299934cc98a815c642f00324dac3820e0118700302047c435bb50067306502310084c5f1c0e1a028805c357d31382ddc588d4a28122cef27787eadadcdd774ed3e8b67f6900073a2fa10c4470e041aa1a80230159de0051d54a3356594841e7184e332abb37727629687ac680545e046f7bfa60632f8c187768f7160317d50d1bac3df0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100906aabed10497fca6fa18443d3486bf245f743a54eb380be3d5d277c5fcf194186b79930506d9cf2f52a8e38740d113f023100990bd7c00029ca9ab2e4156a051090b1efc164490dab105eef15e307e2b599ea9f81fa662405c2adb4fa89743f17aef20302047c435bb50068306602310097a7ffc028c6d6115093526d372a1efaa1a12e1bd5ad5c2705604203f30684d360173de02ea2b28ce663859f23e027f6023100fe8fe88e2415a4001eec12db3e70358a7e379ee11a767141185ac0ed2bc21d118116389c7c1b9ab985907d66e4ffda890302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008da3d2989f966d6c43066cd2658b663ec6267f7136db65d0212a525d0c345839fe01067b9bbc4078a147c565fbc8734b023100bfc3ec59b52a30a0a2600f6d1a367515130e2e1482200e59e0eeec57885772ea2b3f3dc75eadacf4b9be4ddd90a53ad80302047c435bb500663064023067bf8675d651d07db9d6396d7757283665108cc457f202470742d20c616deee2aec259ba7bc1dde17d9a405adc86e9d7023053dfdf71a0f6d90f9a4a0dcc4edf5aaa61155456bd54beeb79d3a472f4fd0872027132d7b4dcee01332ca407e37a952a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306c692ad532158b7392a65c2625d69149b5790fd14098003b99cccc5f45f8b022ed2b3adbdf0c343cc3e1e90a679af80d023100de6e07beefeb727a4b9e8b5b4f2e36eef5dae83001140998913bae39578aa2781164df51b04d61ed084f545b857f08a10302047c435bb5006830660231009b3a0aff48f3790c091b7597b57213bec07991d1608f9eccb8f2b747914e4b873ac5bf1c516ae14f3922393f7f9ff7b30231009048a4f08bd7ce0ed1bccdac1bb6461874a78533f507aedd84a4cb867b5ab3aef34660c3c66ba7f40964645913a6ed210302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f69b12eb087c06717acbc5c283a7d969a7feac57ae7bfd5669b530a5eccce2fe8a7d2497fb4f461b5f3c43fc42012e9f023006d4cbe967b3db95c33b29148758d2e0d4f94aa980daf5d797904c2d46e3b66f3a0803a4e6ae842385a6a6b9f1788d990302047c435bb50067306502304b4100175666978106b506346b4d35c61fbb0e58e8f939c3d050cfda9abfa4d6bf4fa1c7c45a64b501087e3be470283802310098342f380d480bc0b63af107e5b9f6cc14a66bf57f8f156b3956fad49997e68046c643c67e28f359d1aa00b772e5b9fb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c1d3c8670450ee262baa4a6455c099f810014f1e9fa92f64c974f9f152006328886b955e70f014002f8a3e98805803a1023100a721d426e1c2e69350c4944b9f10cd1969d9335d18986ae977b6a976b7535bbd60ea363c65068be743a73884d570cc3c0302047c435bb500673065023061b69c70b63b3380338ba87f5a89f9ea3344be51cf4c5b6bb3ff50fb1bf902a3d3e5275b3cb15aa823c95a60fdf69d9e02310080dbccffa21a6e28a7211ca8f20e34b7ce4b4084a1165ea860352a6d5abb05e87d8371ac29d8fde7baefd3e4f23f62930302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100abd3cd65d2fbf33a50531bf87eb7e2892c9c923374f42be367879eef8128ac2613520a7f5dfbe10ab6ebc8dfefd2024b02301b5a4a50eb0ed84eca1d59b3212ed9b82c514d05fa568f0d8c64bc544eb4d6dd073600f6cb46881a4253586b4d2e19b10302047c435bb50067306502300b942a0006ac6f5faf08fe57f4109d346706ce04995358044243408d2ea27ec38e02b1fca7022a4eccb547c0b67ec8c10231008c9c60a960d524812d3c353976f645b2d07256736266d64a4c0f1df4e1d3643ef0bb927ac2b6cda70a4b67990df04ba30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023010346d963e6251171142e7d717d95391e701d07dce01ed9d98f66c2db5a6fb8562088dc16e948962afcd4c4967dc3929023100e2add9eb3267c6fdd94697990152397e29b04135de60664f9bb7256491decaa017ca83da49dafa4a765ef8b161701cd00302047c435bb500683066023100f2b5325e42f1a49533023d593d63c184f95f64954a928fb1a233e3aaa078709b947f05f5825c3d89778ac44e4a3b8a73023100dffa4d56c8338168a21fec8eeff92244fb7e265ddcad1985f57577c17b5847004a6654714900fcf6af63eb72937d71b50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230021eb7b6e572b1d3a915ebf248e1a346ac30b816e82dca59bd24c554658f38c4bb0073867e7759ce233dd281cef05d53023100dd67154d20b47998f2e71036e10b587092bb8d857d99dce82fe33cf629a5bd4a52390b0c4875e6ee081e9caa417300c20302047c435bb50066306402304c8a0a5a4be0426869c8a40d041702f632af2e0877aad7063c5cf7ef54ea45fa9417eeb7893ec5926e08ee593d5ad53202300891d415f3e58aff04ed25e9b1fa73ed28831b44a1eb5cbae8f10af7ec578c0a3b3a4f3906b2de550dcef6ab20fd64590302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d4a058fa2275f16f35a2ae85318cbe424972c4c45a8042b70f327210b170d606022d9b522add2da64b80db1c08036e0b02300935e6a67897ab95aa71cfd0d54491da6796b2fe3d6a146b747352d194bcddad9fe549b7c1a490475b4cc28680db39e20302047c435bb500683066023100c4a7ebcffd6105af490ec97766b5a7f2c8df8b03cf2a7942b6e043d4954d6adb354b2459dc4aeb1f35d350c6f50cbfd3023100a89b92b1abc5b76a9e7d29b75eb138df9e9825948a2a73657f335b8da4611eb432ee13f28b428c141d415903ab9740a70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303670aa6e50223ade348c20b412d4b13c0021afec6d49eebba3ac129c5e1787107ada6a0e2009041b44d0724f3a68d32a0231008305463d6893a3a79afb57fdb81751a2c79056326f77d76b4330cb3c6070c1a8a1c6c9a14007915cdbadeb29377230b40302047c435bb500673065023100f60aeef89c33e859078adbed5462fbec2b0590b5e1657f21baed3fd62c5419a6e498b229c53014ad559c7eeb07a71d3a0230156371adcfb5ec5a24097f01caef8218bcfc8b0eac8d28003e22bc1642e347878612e622dd51c3aa0ebab224083f49ea0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ec1e59f8f3890a9657d04ac7a0ac7ef0579f574ee9aec413e0332614eef729a3ea0c0c596128428c7ee2c6487a9e4a0f023014500feceaa9945c75ce74d83984d327003a016bd2398d3c164bb3cd484d8f7a5e069c1a630b3337348651d833342d920302047c435bb500683066023100e0e132b27e1dbce60540a1757ddb6075c828845300a2fea8919f5a740f0652d4e94857d577797c2fafd74dfe7d9d3900023100f3c503f61b048f9103da55d8a506917a6d70aba335806d747c80a21a866d421113b05af06e45cfb04841d91d310a26110302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302c8fb50dbee33fce0fb473a7cb1f02c7759346f7d6bda4385f56d0425d163868363cdc7bab9f3e8ba8159991e806dd52023029b300788921688a319903a893a35d848069b918d79b75f281e2c4f927f2b6d23a6dfa3731855510b4311f6a48350ead0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300a23e3d990031a760f389b918e3bf05da3fcf4c5fcf5761da83040a8e137059bae7d85fcb92c758ef70a2a2cd13b4516023009416127c9492f5ba125b5b43dae82898554f9be96a6d3a3b93b5a0ba0d55d42f2fda4e5c081fd8972e0be3ad8cfda5b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e13fab77eae4de07a4ca00c889aaed517f903064bd0903239f5eec139efab2a2c448e4a28508b584ceb0f5ae3646743b023100cda84b2a1baaaddb2e5b81e71282d7fccc6da111ca48db923694d3ac06b860a77d67eb96dbf8a48aafc54ef58d31794b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100895a24ba2e003cdd9272bfa5388573628bd7fa0b8439f795b614855b13b96f9274ba3b57e35ee3e1723157752987710702306db7abebec471b8570ba050552e531c398d2b9b3ab8dfb584f87d394dc29621a2af0df1155a245984a808f844850bcf40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100946297f74b8d52105b841ae138ff54f098211e061544ccbf5be3d28407c8703d9b819a61e93758ffbaa49d2d5cab37a0023038b72cfe32a9be8cdcd4490645536a2c167aad6cd89d47e530bd355494907376ade80727fe2a31b6f11818dad8f48a810302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301c80bbf7034db0528671872e78fa7165ea0089cc84467bc86b3785d88ce2c6d939fc7edaa96554eb72b7a5d965efcb5602304e1dc386e0d69be80eb46cb808e09313faa1d475f35e7f5d50264bbe2882f5529bf956e9b1fedbfa4c51dc1e6aa137e80302047c435bb500673065023100f36eeefee14fde951ce4cb3f06cbaf65d06a4e7b1b37679c79d4776ec3377e5d68b9a1956a27ac7ac84b7203655fe55d023074d19d83863a8d587f22c409a6e941ece04409e85b9f37adbc9955b048a97fdc232de275b4b2ed8a4d508f98b9f52d4d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c2c0f9f1a8849ea7222d0b6d573a32994652712c6d0e6022cec5c2bfd28629297142331b8b5aa5de304a5e111e12ce01023100f00755f96badfc7b88c83d1342c8c719024cf76111a524588a610d0a9bf080ff6c084bcabb5c64a88adf00ae5c6c3bd70302047c435bb50066306402302fafd36dfb32684c0784b3a58fbe965c6bfd4d734e227ca810dd0143c8334d76e95b71d540b387fc5d06ddf6760221d502303e869478545a445da48abbcf49f96af5ebeaa81b4a84ac3c01d519c3a0c3a96b7e11847898d2ca7993bfbba5d5da913f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310096a1e4ae8f707dfba50204d080cf44b383099dcf51dcf4542acf688e9efd25d723baee1e908225bad431b90fd9911583023100a10d7f6186bcfffa05cb95e6f828358f1375fbc5d0ada00b81b28b54730909bb15a3fe59647134e890a875f433d016f30302047c435bb500673065023050bb84af7ff666e9650fb0b7907d5500424cc10753914357cc80745d1b3cf9b857d5b853fe6df134267bcccbed843d10023100f1b8f26c5980420b7cbea7811795485de7215ac63ff161cdc6f062e60b3a7c86d2698cff0c756582e0f32fd647a0a4a00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310081238d9eb7222f46512e836c6e574186c1d6f001e3c92f491c0f49e1bf0be554191ed43ce38958efcee630e839d1c285023100e73757c2d8edb2dc39930099157e328c1ef4306addbd8e99321447093215dc143bd5b513a6f766519a7f9aecab62212c0302047c435bb50066306402302cc341b59af979d261a5684849034158123b3a45613115f87aeb5d6e6b956cfddf488e86df951e71a7d6cbc98373897102305bc46c9a4514e4fe6328c6acf6a296ca54f79dc476f9760e3cc3ee61ce4d2960b46b0b33de593b5abfc6ef83900933640302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bd8b6f9a2bffc99c46baf6ee0338e1b4c2088a91a15f8ad9e5dfe6a4a84d21baddba5d127b14dae77dfc8734579c63e802306058ab3e8b11bd757d95950a123d57fae965ba567c65343d74d63d26b1536e602bb5a3584113f2a997c121c85e8ede0f0302047c435bb500673065023035b16a4ffb116841f3c528634b36a0e421bd351cbb8361c4cb0e0228c7a4ab85a94d080ac1dcfcc0bbe6e5588d476cd1023100aab9a4e87dc0aa52b33f3b2c0e4689840cfbddc470d56ecd92487a9672c75499270cff7fb02b3287390dfb258da2cfd50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008334dbe8e791cac26aac90670b4b59a4c46a94f8e2cd55271e897badb8f819d4dbbc24be2133bcaff9fe3cd4395dd8af023100d5f85a8397b4720d04087ef3e8ea2c9019e53362206ae725604ceec9036cc48e6e51a0810fd3b54e8e5912d793a78e450302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310089d258f83b3519ec132f7dd6d50895afa8ed59f6a29311f95d31a76f8e129ea2e1abf513db8f5420a2a25b286b8048d6023100c1a78813cbbf1a1a64415695925b9b451fce5edf200f5c5f399ab8b0df3d3c4b73b8d810470ca524cd358b3e1a3b7b580302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b22df29d1434918e90540e3075cf7f56b5af77e704c599e710bf0bcf63f553889dd4818982bbfccf60236bc08915484f02305e4f3b6de00157eaf175f6c65e1b025d1f41acf3b19bf5ef74a8cf5569d95f06f9b7f64e6332ac104d0587ddfe7ff90e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301d5d3be7a68a9693a8321121ea569e1c41e59d86b84a9f99ae8ccef63ab407040e99b31c2a09655ce911488c6bf8cf1b02310080b85e394d7d4a7b5bcfbb100ea461e388d159f92e2d84e1481169cf19d12be546c5b5b5630b1aa12b4f885a30b5adaa0302047c435bb500673065023100f3362edabff5f99b680cf7229a5faf8564e725c74bcdb22d875090d9ea2d9ef7eaff6edfc6a49d47f7c86e6edf65304302307105433a3efe28c48b09b6aa30be350d8d40a0337aa07d1fcfe71203edf6924674191caca0c705a957f34f3beb3f80d60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c32e3f96860f27ca0c2efdb4be1d1748be179ae052e78a6d66667caf825a8e6e4b5231307b9de2a168bc23a57eb6b944023001b69fa75280c6c500ca02c586cb713b892cfcde3a2984d75adc119f22cc14004ab475a3d444c9cfb72a1de0964cff060302047c435bb500673065023100f35aa239686570233ada9dbc33acdafbc963dc1ed19836b752a9a2c3b6dee75d17a55a6b44d3e2be9ea02e1517983293023079133266ab6b066ac9940b6996af31dd4b5ef5697d3b09fd9ce854f579a2b74e417385520625b05dba36bb2225e9229c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a23fb835324b14e42116c947b4847fdd7bb432660cb9b870d6dfc427f8820409e45fb19278f5caa37b73411c8213b51a02304cc55684226eb1f1af655075e5947e8c23054365726022334c72043953b36893008e0784853c7358bd96f7397a7e71b70302047c435bb500663064023058303da7b4c2c895204b9153a274d66fc019141245bac1883a0d6582ccafd7c0173c05a66484ecc8c5cd48bb8f75479202307d18f7cd5c0948368910c5550b85bd2645c7f207cbdc89263a88f019a622710e717edab0d8a3c06b61a3c5123f90ec910302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306611a3f19baece2387b6ba37182a375e15368eda30672d487b5c2609bf99abe2d23838939b717c6004d0ccd04752c334023100c690896f612a27ecb6ce44ce666ba4eb9b4469bc426c5e24ab9667d1f80f0551598703bfe4c4b76730263cad8981a3f20302047c435bb500673065023100963fa8bd19ecfa2fbf7d8b024f46c311aeafde34710ab6fd3ed2c5daf49c4226a72213c1b0f05d96eeec1176a920c0e802306635b64d88ab985e8084ebd309721232868d16d1f9dd228eb9dd809d639afab79651d8efa90d722f66b4eb669899c6b50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301a467469883868499479cfc1c699b8e240a79ea9732afa25d304d6b60c58d148e0085b71fdb982e0d05d383f1977331c023100cdcf24dbdcfc3d1e277718128c33bc9c6871d182b5b2e473ddd2923440492f708ee3b2f71486a3338f8d7313e5024d420302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009df0e81f71476cbfe4e53f39608de0eba38067febec476d78f14d48278dccfca60e5ee7d75d51dae011beceb3c3b90a402307725eea0de4034854f340adbaa9ade931361b43d1ced29e673713d5d27601d3cc9f119d1ecd970b47e560ce2c10fe1f00302047c435bb500683066023100e9992c6028d77930ad56c890c278ca2fb2baab9c52c51748fbb01ebb4515b94a78845a0b1eeadca61e5ca9e94f6f2bec023100db0e04635b21d451297b395b39fbafb894a275fd18b2b3c6b802f81d5eabb8cc3efe9f2cc39afa0b4091d05b594d92e50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230617773898a3ffe86eb88eb5d1df6167d7070d8f9452f96c7f7aaec5ac246df6067c598023505154c28527fe9a3829e9d0230070a377c5db9e4d49095e7a018e57fcdd70a1abaf352e0480a31f6f073fe16f78c1fd08506631d1287bd38f1929a82e70302047c435bb500683066023100d945a38406204c94d01285dfd4d7a20afbf122b98b84f02a031eaec5edcb2dd1a594be4d463a0c9de9fb8e1b5c8255c3023100f2397bed0e5aa3275bf24e39e3ac0bdf439993371e7c67ea9aaa0c2de6fcfa60045f13a47182cc0353a112305c8f89da0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304052061db95e20adb1df93afafbe8b065e78d94686ce6cc3f4c99c70ecc5d9b417889058d017ded72c09cf1baf00a653023100ec6c3c0a483819c9d1fba9ffca9d90dc6b36df2728e009689f3039cf10cda43b869d6c789447a996827a8e3cf53ab1080302047c435bb500683066023100d0289b3cbb9078286a3aa11fd95624c6d9eace4ba8279744a5000f033d752fed0746869bcfdee3ad75958a922c2ef361023100b3832ee162d687717802c1ed996e830726ed07a830004a4213d229d28d0017dae4f0d92b5c102bea8aa4f69d2e8171a30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b69489659d841a733b8673e4d18f57c73e92042acdff6d967efc5fef26bb58aacd76e823a917420529386c3592713a65023032e37f8ff57c4b592c188bf122920496e4d9d8ac6d20a5f0806a8ee78b4b15cb23e147208467436f84fb3b3d756eaa010302047c435bb500683066023100c73918b8300c715a05478bdeaac80780b40093b28b32a833a115a3302ee11d356a1609f8c6f36e1acf7986d3c758f333023100d56162e09f716319eb397c19219906871e6d1f3daf3b85b7c25b11c61309a9654f054f71ab50249cb96c3cb7167a61150302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100eebee36ae5c2cc3e7984ead2434e497bc87ebb18fb89f092490d2e8f9af0db1ccc5578c0fa122508caa9374c4a897440023100a3ce85d3f2fd4e7398959c2b73f6bb6e2aa101e2c2e7d5e532a089ce273d25c5ce473a40b2018864ca8d1899efbbfd150302047c435bb500673065023100d083bec4f7869c2c6c31aece081ed6cb7107c0ca20ff0a81b9e0e027d1e8739ce6c92312d6c143f4d2e9c0975526fc9802300323fbaa70d9271a9d2c4790c0d7ee52f27992a2b4d6c6d6c929edd58ed6e24e176b23157af2323a466dd3a52ba86cff0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023067c5af0f65696fd94e284baf3f4eb4ed954ea720b651faf0b6281f593a85d695aacf6d9f079732c48b4024f0080b4d0e023100fc13b658add26df83873e4f6555146edd21c8f78386e460206d8ec5f89abef02d2555ed8f959e9501ce3b58124f49ab10302047c435bb500673065023100d7cf329f89428468f39158ace9e485524231eb5ce48f0cfa9306cf2f2503945e55144942630526a61259854c2e5ae0da02304b643fb787cafe234cbcadde611acaa7ddcae94a1b78f295bc83276a89adda6a54b7e9b320b214e892e9c5c44f756eb40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f2130c24bb5d7fd29aa5124fdfeb19623aaabe883c3c35dc1a90708298ecc66fa7444dbe97c13a53c6d274b436673d71023100e3ca5f248919419e8c75338b4860759a07f90aad2f47e2e1f8f6ccf740f5358aa589e956baf9f5dcf10f93bdec99510d0302047c435bb50066306402303e82a29a10e6c1d021d67678f4fb740e41c93d4a3df0ba31e3ba9271ba5a78a80be16dd3a4e816202bdc30c33bcd33f402304945ef4770e6d2abd545a81479af77cae802eb26c8c0e6fa7c59a5b5c093f095d830ce08df2bfe0a3ec39cb70b73a9670302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d9d7beaaaed1f003b499f896537a51547c0a7651204c9a26de15c49793297eb92243dd5075b7c27ac5528db2b503307e023067bee268070f203e0ab515c32c422b1a407218b1311ddbfd99b63e2e7dec796a908bb14a293d7237d8f9012561be554d0302047c435bb500683066023100bb3e8e4b51b503738e80787703331cc7d8a3cc0620c046f3ea609fa47279403aee3d8e93c214857cad5c750904dfc492023100c89d9e608bd1e079a52c213f1f0c95589b677d20970c40bac15280e625b0b93cc0e3cd4f058b86f86b704b69629d1a170302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d5e9245b3d46a37c292a06adc861e24fa327f3d845e86939a48dc706be8f184cb4ae521e7ab93a64cd3c53e7cc82bf9f02300e8db1478b9a5ed098130cf1aa8630ede778e63e513cfc3206f0b4b80290817409716ecb7bcf1725f252b66ccd02cfef0302047c435bb500663064023012e5b7d3da6e52682d65752edbdcde09b0add24b375cf67d28172cbaf593529931cc42848c90eef52ab19911dc9af63e023024359f2cd1af475ad05137f0a520ddd1db7289084eb1bef24504c8fd8241841e1b543e489634613ff36753f8ef24e1bf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301062e07f094ed9d385ed5b44d5d24fdccb8a07e0c726a66e8519b82b47c5bbe14151f60bbd6f329f636cead0899eaa34023100c0fa68c2ef68cac331c856c448a59c69ba040d37558dd69fac6f132ba17bcc8eb4b8892ffcc027def0a6326c50cf31c40302047c435bb50068306602310084d552d04af003fbe6a33c9be41a3a03e483f7a344bb721bfb7e7f2d46adb66b1c3da261074544fd0f22919f25b45115023100a3499b644e23f6fecea03c8e803f4c5c5da580ee41c8cb163b118392ffe72d45bb19d7242fe6308353ca3c9181b45c780302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100cb7d9ea8a9997b9c5aa33898381c860aba938f5c89ac2e4ffd7fca37b7642c0661b6337be6e42382d820d6fb1a232f18023100c800667b1da5d01c5733d73936d37157cd3981687c83c9409a85f0fbf9bd94857c6adabaa32a542336047588c89146700302047c435bb50066306402301ab1e8f8ba2b8f990cde59dac483fbf85077c5fcfad76b26d1603e1eba09cf2b9e1dfc42278d72d5990f01b66fb501070230577c642493e1ce3deba07589a607c0519c83ee3733481ed509935263dfe1868eef177fc31c6e3f53ee27a6498f18fc550302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230766fe47baa725a8ef0a8d136ecb550a70eb0aeb8bb6b8d38bcba142caf2cd13939f809de54b8ed1a22b2b16be22b4706023020ca163e716cd05638634b7dedcaca4cc14efce38abb91698fe9bd38027bd00d8d058405ba6422263a0966af1ab8e7450302047c435bb500673065023100fef46dc3cde902bd5d1cab22807ca4f2b755ae41a9714117ff58364ca4186581245ec7475a8fbf9eda858789bd3b370b023068af70507f33e552d9307fd7971fcb44bdaead099f236503ce82d2f4fb51e9aec99cb5bd5d7e5f0460468524119058580302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100df36f9934c5011c0e8a4b9a639fa0de36b7014549d9764d1d9bd5b1b1be71cb51c34f9305c82cb7e3b1f61a3949a2c2102303af34d6381e5cc457ccb393e7dfa9ec673131a9e7c99b9d1a30d2a81a27e82a9f319b43db53d07aa8e87900574ea81b50302047c435bb5006630640230333c4405e3971106c823796197d6884d1f724de2815572f580574d3f851e04ea70dfaa221073790b976981a17a9c899402306cd8d212c34440b59a09dbe22223b30ca5cfef1a295a1e6650195abc7a9b0d2e39aa417c3d31db44f05bc79772153f970302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100be440c15d9a7380ed0f85b2b41431242d6efb79c28c30fb388a501071880dd1020f59bd2fe06fbfbd779b214d8b67775023068d792c5b41696680632b369f16ffb2f354fbfc9e0788a8e4121dbf56b80bea770b08a8046052dacbc6e0ab3da9533200302047c435bb500673065023034c5fe2d63d02a82ad1be148fb1ea024bf22cd1496c5c2f64612abfc90abedbb485a136670e11bd29ac3005726a46ccf023100e8755d6f9afe80df39cd97c152c201d97e81cef12440419e9d6ce97226bdf375e91b9bd9a910c57b1f8fc031ed9d67570302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306d3636d07ef48a1f7e23870811fab73448f826c85f05652183b9082038b2348650fac2c351df74f8a5b385ccfc23704e0231009cdfc0c352d948b1e81f6421ab8a747d66499f225ffc58b5647cac93f912c19a1522267a8b7221d2fb7eb718a4bf34320302047c435bb50067306502303e9921d4f36d03b4b29cb9a4be682f016bcd474b62ac69110ccc4b3d18749256612b0b1c8e54529907985cfef2954719023100d69cc0e0cba2cac9d2bbc994618ee204eee31001124ea45b08e40ffc89fb97f24343727db6e8e6a010a9f6ad67b5336b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100cebfb590222558893414507a97f073709f1195ec644e53b23144eca00cdca5bc03b6d14762af9056d733e30f5aafe3ee023034d7f22eae6973d79ca88e9bff227a1d0d8b2e1fc87d57ddf9dde0efa8f74f6c4624654961af2c2201911a4bd45c92c30302047c435bb500683066023100c687f52ed513461e8275ad33fd188cab48c27ae4e72e11908f76dd6427e924cc564e7ee443f7b80ab11e1c976869b503023100e7edc5851c84f04a4b73ecf89ed4b93b2fa8e708b65a3ef0a28f0d33f9030bc0942952eede71bf8656ad9dad4fe7323b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305241e465c89c7da16556b34d5561d749e04434b421cd75f85ffd02410c9bc9b0dc03d2ed553399d5437ab83522c26a1402306e29fde77af0a4347f8e760842cfdf685f33dee322f30f5e0f3beb8858915ea6a3e87b4cf8f5e1b79da081e545d907190302047c435bb500683066023100d46ac6cfadb42d74c47a478a8080a96b7897c21862e4ce41e975588985059bed6be787e33e76367e41850ae287f1cc17023100db608843f66f4cc566db16be95cc9325cc81e85c101192f5260d3a8faac1c6f86d30712413836ab7cba20dd68c0bd8e50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310090eb9e39b712502e5dc5bd19074f21f06e4b20506c90739dcc17cd48f361f373c973821cc94d089f648fd0075e15760d023100c525b30ce6690a44a19a773cf01c73c1d84644702a42fbe29bf6b8eb80fb77d4b8996c3667d1d99d48e991e72c7090ff0302047c435bb50067306502307e7e82f0c21f1f3919b13515d95a4cedba06a490251ee47874bee9ff1d671a26c69238c7116012297f7fbeb0a18667200231008efbdb32c5e6b513cec7694c1978e8c86309aacc00363323fe325071e905a8187ba8bb4f7a763b471dd5ca92ea00a4880302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023060cc44ec586ce7d5ff2cce357488c84907190cd7aca0b696f0a25018b02806c1c36c03d7b72f7724a1fb79cb88e60bfd02302b3ab28a235ed93e3b061a5441e19603264ef0d53e85fe207ef5ef6c37071d7930c7181b72712060f1edee5489e4c2570302047c435bb5006730650230228e381695d39733efebc54803a7389332443f830399f68fc26ee85bbecd3a183a78a116581bc614ca9803708abd2907023100b2b652d86a986d576c343b416c5ca2ae375d86ac956369d9c471a9522e881d53be695d5cac47f414d0fb4f3a7c5ea5ac0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ab5e7d19ac042baa75e4dbf2972a39beced1ad13bbd6caed8fc3c258c69d22ee56c18137235a23322501558ab6e78d5e023100b0dd959ee48ac87c304dbd42adf909de056628f250733a27a62c13e1408485c006a1eb3c042fcd70ec4bd48e92149d100302047c435bb50066306402303e974531ff3b3ecd1b6d84750bc7ab5d1c66fc9ccde1682dd7addc5bd9061b72ba78cc6cb8a9492d6cf2002c778f8f6e023032eac2cf648c6182c79c555ea3454fcc62f4c60006861d41b560f846f213295e0cb30acba3a72c5a04f59bca1ec17a000302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303e1f11c507a70ee367a9852ded784b638f3ba01a3e2ce945d3575ed7d0755e7f2e2834848e33ffd7c76f85137be01dc102303b4e8e3bfcbaccdec15f301204d6cbe249fc347c34536661f24d0d72e6b5f3776faeedc2f0db6135ff6d6b2b37a475d90302047c435bb50067306502302daf311dcaa627485a1dc31be8d61fc5070f61d39a2718aa304055a5aefd7cf865a0a46531860fb6f26fce9eb597f871023100f9fbbf1b6d1b9d3618cec13ce136c4ec887c0ea26b0a6be4eebc2c53f4a2ffd8de873dd9eda7aacd18ea36e1ba45e3020302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305caad577aea04eb9a40e9d19e7a1941e5e7c852d92bd557689d324dc9add108f0db2d96c4aa494e7745be6c26404fdbb023078446b586fe76443e1be336a704fbf67e8408aa48b832f96d95c8266fcc65804290ef525114a535df2260a20bbc98e670302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300e3fe84e72253b53ba5ad9e53ba1a1cb05e2c5978d3cae76f3373a18d006eb58858bba99dbf995183db6e06af18aff64023100a17044f5b41fb9560b19d2746c89067df3733b6605adf31682ddb58bcd145381417b9c5c3db5d9f6191fd070ee2e9ea00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307a44126bcf9e38da8aa039098b9bc68e577ac31a8eac7b657040038e9f5e8449a5808e590a0ccaf90a0b9f6089b378e9023070e68c300b618e0fe19d00b97cef91b66f3b8e15f2cb429d74e5ac503240a387502ca4631bfeedc8e5ed062d3e71d8620302047c435bb50067306502306ffafbe37819d1e56c3a5b28afc238a0f0bc618ed024ea4d3f1bae307dcec6552da83c36ced4ae81be96717b87695d10023100e8287edfd5fef338d4981c95d0e988ae50d882474c583614fcac4a61cc4d2d31b98be3cb480bb8b3c9ecf8c1946990640302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023063b969f8f84c48a63ef344e5babd6d26d83308f4f910ecb8bc1ead5e725b34eccd97b49bb2295ff9f1ff3aee27421b3202310099f88059b972740b4c8cb3f1fc58d2fd2793b6fc52193c8a360d6705283bbeba185721b64bebe27f11a57b89494b8fec0302047c435bb500673065023061d2531da8687f95d09bdd6afb614cd9649abb6c022abf640f655f4e0d7e80383968053aa1f4ca64893ba4ac432641e6023100dc011a9d3e52cd3361517d37c68b3b29defb08e9401da339920195a09639dc861951d96f2b605b0bc2c5c67234cf7fa00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023040e303487a5dade2f7d469275ffc960372a7951b869704882a5a902024d5c95a09d887077d3df5b43d8243d99dcd32cf0230536f831515a496da99be6c524d9dab92388d1d3cc2258d8d806b7693bdf8813004a670db12a8d1b8848b3b44c56d87fe0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e4306bedad1408591781a821e92c2d8b785e6276a2f671e2f7c7a17d9bb2f13888eed97cb4588dcc4cb819093db26231023100dfde2f33b75a17daa1ce471896908e9149b4cc9834236818c2144cd62d99b2cd8d23995fb6a94fc89cbaa5190e3407ff0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230069ea266b9510fe5bbda51c43aa5bc573e10f160d1f05e78d17a8d9bd39486ac9f66aa67a6169b41c4659ef995d7049e0230496e215ba994a8050f322955e1d4f7bf1fadf5d3f35606dc90c158e95f985a0003bb631754117b663ed2db8d6c51f9cc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a6d8dd0983ad7141ef0370bc38908869423a625f3d86554929d845187f44c6db3b486fcca5b76116de9679389425ff8f023100cc380699203e8349461139cd6132964c9006a0bc9f924c8bdc56ced884ca3a6ba5545e77b2dedee80b442a211f79e5730302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302a8af219706902c56c82bd3f21597da477f21c547d77b799811a08ebdfd48a7bbf1f458c701c4d6993c59e15ce618232023075dce7b98ce2593653530da9260d07e8a80ad5fe391181256ae8dcd2039404df9e1b0fa8f4398034dcc6c2af7dd4f6190302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023062b40e22722f9d8068b0196a3d22789d6bb6aa89e305a97f35ed46b08bfc18e1251bb259e452b7a4eb137591678c4e0a02301080c4d8831f600c81f04e241afb05d3439ac09be798fbef4d96706ad8ad79257927951fae500b3f14e676e4a896275f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310089fdd4f574077830b456cc422df2e1b6030d34de6597e475d6cc717c4c1323fbc3242168bc075368cf1c103af7066b89023068b9291e9d6734459d90b6fb30b0982e99e7884ae314651ab35d405074fee14ad07eef5d07c41ffce7d6d6586fb363020302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402304c141c72d5624e285dd211dbfc1b4e6e25ce05e7592c7e8e9eea28e48ac86b82ea31b9ec174060fc3cf7e279277be10302301df215bd2bdfebcd56735b4aa884c7ceb0d05b98b4f021d00805def2670cddcd9edb87103abe51208d5271ae8027579f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301cad41750046a970be78f627ecc9ba4cfc2292c5b74324ee3104f50075cb0cdf33d87d0cbfa8cf64a846cfa40e10ef7f023078da7cb7a1c77887a91d88624f7f5dec82804d3e7772c6645104e4da6adc57bf9969952137a5260e74b720e0f4332e750302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304bcf74a29b33803e522004929b25be965ae9ea66799dea262563ce8d1428f222c05792bee0d96dc0fbf9fdcc62d91003023100b4f8c24fdb909b2be59d7020275e149c5414ba94c00e188fff48f019cada9ad2b3e46f54adc7a9296a333d299eb9bb180302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c651e492bbc5f5d3746c856f35e01dd15b37d8ed2b324907da1f4bebcd6bfb63e8ec2129db99de7010d251264fb86edf023100b068a2ca7868017542e0d508d291c3be9d8a15c15a851e29336d264700607a9304a4eb7c45f89a353f8484b4c54b1fb10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300d0c63dec7decc098838f0bda5bfddcd44b1d3286ee5082ec71e61488496a51cf9177bd8b29c2f0e23809c766f641dd70230030ef0f187d20e7e80c16f7da7aebc14089f572890191e67ee496b2c278a34f5fb8b3e1b727113f3ac4e24dcb30fe35d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d4d9b00104e7ced3ebc4afdef4c32ddfb875820fd88457a4d81591f47f2118683bdbf99b1f25918492e79c221b470c860231009655453644c45e070fb1f9183a42508d8ec8a6f32e89fb2da9cdfc781616f0b44dc7ad1c7f754f97c6491f12a710b9910302047c435bb500683066023100da698fccbb76c11e547aac5e183cb13bf2e0f42150f08f9e4dea2b3842b3189c9550b889494f261e7ad34a5b18572f04023100e49bba85648f5c011bfe1fe849736d0404573805fc4adaf3eb2b2f2d26917cf5b89e27d84c4b45ba8b8ed889f1d87c630302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301298dda8969b4e3fe896a24cb09b877f1718cdafd7b392e6e8f2336e603b4d032617b10dec90f76b651c2924ae48d303023100a9e9879e085ad397f1003b824596e7b287d3b53c035306744cd05ac66e47e1d3915b3e7a74e7279802313118c6234d650302047c435bb500673065023069c0f068f7c705a9c15baf549e2b5dde9d55ec91a5469948b9bd6ba4fc0583153fb46c0daff7949a207ef282346b883d023100d45d3952e5c60f36395e464546c92417ee82c50ee17b3129fd0f5fa9ba37afa8bd680d54d6da86221150996bfd61cc810302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100aa11e605a878735e4eec6425f3e127d8df30f707cdbdc0c9416541813e6469651819008cc1b3a31cb0865bba8d18b3110231009d79ae0547fdac5de2899dd977b83848cf9e0b52d498b7b53518b019303902781b70ee2e3ab7a19cce32bfac1ebb6b470302047c435bb5006730650230578907252fe60c77dbe882162b8be4b1da00b2afa851ce45264fdf7c75494a699263938d6b7be5c5b1c30bdfb088350f023100bb61bbf11461c817fb8df42ca3cce0ab2ba5d508d0e842ad9a3a2cc8de28f0002a7d280583b708509a6ffd4a2e85670c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a6efc8014839c11aa7682564c92d4d615709bfdd47ccbdd854d6073362cff3b47dc811d68a014833cd5c5f2914d5768a023100a83e029eba8b14b8d7a10de08a80b5658c2e550b68722bc995934e3247ff07279517ea0f41caed14d209730ab9eeca170302047c435bb500673065023100aa4ac3c29942808759aa36141507029a07e1e7201dcc6ddaf603b1e13d1fa41dbaf1e65849f94c0ec671d3a042a5c77d02301d731fea745f6080614dcdbb37f26930a8094cffdacefed80f920899e1a3552f0cc23aa2b35804a5b5424e6f8f53bf1c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305f63e7043f41b649b07407b9c3cc84085968c173276f2e1c87b4e37cdfd0a1828d0d3789d35eb0c81303b007f380c7f002303b21abf92bd3c56fadc517ec52846dfd5afb093723005d3541178d2ec6be521795f2f416e4f7df6b2eb9e65d443983330302047c435bb5006730650230426594a7cd53c293d86a557b5435aa63bc62aed3f62217dca3bd102e6ab5b347e6d4d2b0212f5c95b5a6a98813c73a1b023100ad1fd0b34f27eff4b41d6a30c3e6d2dd3219cd7015333db14bd0e4107cea5c8689cd3ffbeecec0ad02f6d582085fe7f40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100eb8362f7a4767ce235935f3ca2ee7c89fc8388846e08d177b8e7498a3511ec501f283d333a91c2afb5af7fcc105155ec023065bb05c964263e81d7776c0478c5c32571c2d9926dedde3455162d268de75582549c9e550a831f003b7ebf1b2d8a9a6a0302047c435bb500673065023049c3c04dbe7db124feb1c593e91fd58b465e78bda945a06f276308de24433d83c24b2885f338c2a40a77ee2e8670f415023100ba76df44c9c8ae430bc306cdf5c47fa98d1b2c47341d12204d4824775054c35c612d6ade25512f435466a52ae50e0c470302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303c8a597c85304455a439949c98478560e2b4e847552d45f9a3147939c5c22db98975825bca1500929acd288ee9774aa502305912e9dd5bd2c8b7d198dd577b248cd061ab13b642481d0886250d36aee0c1c5cb4b50679b6620207286cb4626d4ade00302047c435bb500673065023100bbfa62dc4bc6f1bee2af66c78254d90cb018aa44064c1782b2356475c56e29b444846984f2dbb936305ac765bc8096f802303c7283251ad9316312ebd343d3960ee21323054acc8787ba961ac697b8bc9123aa9f178fa18f5867c71c733bcb4efe0e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023003dd38a0c9574883fb20812aeceba6c12654eb7220a29feed4d89c1e265d801fdca002952812f4ec884c6508cc6462ba023022cb400ff7aae53521d194d6fea650f2a03c667b95c4a9cbd4e24e2840c99f37827be1950277f48914ce7a312ecae4530302047c435bb50066306402305ed12f14feb8f1580b25e1a29f5f88f019630384db5f835e5361a68b41468371ee759a5fd9d958381742c91343a77fec02302e83086bb3f2a4a5dad5e699b44e611430c5d2a43cff0386d77b746e63442b92fa1c8156ffcbc96eb24d51b0b55a92260302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100da16254356670ce596c2d47df5001ee897199a394558c17e832d4921a737faf43e5b77b8a0bba8589dd22ad0bc74719c023100c3176596233aa33817c643cc64db36ac32feff528d625fa6a2e6a6aa1f951c17c3d8cdfeae1e640c7e165dedc905d6c70302047c435bb50066306402305bac5531519a2973952b097f05c14332335c36d4280423ba17cdd852f5f8f2009c16fdecd181d4d12edc524331a3a14a02300c02a795bc39f05064c9675304bab02c20365ea71e40dde043459b08ef98d813b27bc79992295dd0305672d2586f240e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310092400640a2d5e9640d34c49b253c667ca6ec22bcefdeddffc24a4ce13fbb43da713b5ba8cc994df69dd03411b993a838023100df8bc2a44f9f433cb8ade2051189165f3d9ae9736d781288de4005a8314ed370310a3cf7dc991a2c15386ac77f75d71f0302047c435bb500673065023100bdd2b0ca38d9b80bba140e805a2d84f6a7eaf7b5b104a3d4fecd85cb0b397afd0d7201145eeeb981d943bf85ff40a13402302ec4ec892782617f6312bea078f481dcdfa81b2047a05dc1f14adeabd36f098e6b1bc8f498aa1954b767bc765e9c91050302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009937f902974d8f876b93751a339291f66cc0308f28351b6f99aff25cc309ebeb83c1a61e68623f82393115310b6e8cda02310088c5d54b881f834e4e0e0d74bb4fbf1d775d208ab58c3f49aed99216873b8bf33b9657d6068bb36969a061ed3d0a6c4c0302047c435bb500683066023100b439a1083d2dc00637f3bc6f178ed1520975b5f00eed9cc116b77ba3b280af9b3aa1b561689f755ea4ade3a0d5fca552023100a0aaa35e3f6bd5f80f392df35d7172efc6848be0acf4b9fc6b47a816e1ab8f1d2053bc75818521917f62f60d9bc846db0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301c417cb901c96fdebaa94b077586dbab2db637f1193e0ad72c2357784aee5e28dde68f0ed55ca2138c84bc9201d30945023100cf5123f017bd0f690d135551816564fb426bd0d4234a7598ce59695214e63027c250b26232df65431f93eb3fdcfddd730302047c435bb500673065023046489de3453c4087cb6c1781da6a8c2836c1982b30569bd677e08a39d6f421f35ea0ca6bf934d4382ee4e9fb1995d83d023100b42403f13fa34efc6b5744bff04860aec8d3c352e67ce2faef91ef3e55128e5b30b915a755e409804faecc22fbc265ed0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c6d3489214ec9cd7bd239bfe024c1ed621937f1e5bcc0bdaeb5f6667650648eedc408130de4533f3b1a798b340b58b00023100eb906f3cf640408c02696c03e66de41928970440ede7447ae8dc4f551fe33b3a290f308cd41befbabb3bfc674460d2be0302047c435bb500683066023100acd0b8cb1779b626cb24a6725d39a54f4c7c025909d7f586ae64268b7000a5d6050c7525e82dfc423d5ab3ddca9ab445023100f9fa362027ced8348cbcba87b71c85bd569efcb02bad23677f3d032320b29177ce2e06a6113952e99a042f6bdb5bc3610302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009158831b382872af30bc98968f5970d14e5faaeed62e1bfe89e114d39fbf963479c9df4fabb4ee649652970335814c1e023100d853e1a187eb1af1020953b60fdceea7d0f88bc5364fcf97dd1ac481ca53d54bbd561b98f7a7a90ae33baeeb592739a10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303912f43d89eaf76197b075bfae8a87358c6234f1697627fe87b5acba0091bffd9657a67080130335d8ab6436c814dc8402310088536bbd06c8fb1fc3df69f9823dd3bd331aee52a7dc63aa9c40478c49f8425ade61a49210461528cbd725f4f62dcc510302047c435bb50067306502304c6c96d665dc9c5ca7bb5ab590c1ff14da753d78eec1160cf71d88dbb116b1c076e265bdb4ce7bb220eb5f46652a1bbd023100e4f3199db334bfdd8b764327c357dbce4943e5eecf54ef7ba2fe5444154ff3acfd0b023b1e8b6a7c71876600cba008280302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303ce67c1d6a4e7bb652785ab7f047cff630e202009669f415b653b7525310aec5211ac87bf6bf197ca77bad351925bca8023031434db55985a522b1f0d8ce420258c8abcfa2b21e8c387581a8a6b9cf230254c5853980c048d1c0c8f4972a583d16300302047c435bb50066306402300450aeb97f3a2b317754fb7fb220ec1a94d62b15415644ca4723f4ad00f2df6dde25df2b6a5cce24a253e82646c33755023024ca26aaa45977cb64f34495ca873249d5d42a58f8c5948ef989694542a335909a0d61f0963904380ec17a6a7ac894260302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230312a082edfd39990f11e05e53b27a94ff8eecdea063aef8fddc715b809dbd62bbe15f5ca68bc3923430597620185ef1202304afd4ce3cf7db1d23593248885c36663abce2fe374e30c56361e6de37dbadee23862c029d4315e9a37906ab9165914360302047c435bb500683066023100dc5fd49eff317a1e725a1b0ae30ee3c345b9ba362f6b379ba5e1f7c691c3fa42046c09fcfc9f48c9eebd6ffe14ea848a023100b0a8054ba9c82facb8867c98fb036b2bd39dbecae438aa6312dc9d363e19f8f128d844a8bad9acea9e986e5ee55c13810302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023055fe70f95c6122ea8f9c11011244bd3c76de3ccddf890b7f71940fd11b2255701125d4a9bcf405ed286284e492bf8d07023100ce72291b6662e09ce0a5f273081b5c4a67af9d1966053044087c502f283df1ca865780cb139c793440a822172c88d67d0302047c435bb500673065023100bd5808d560901e10b40035f1e8b770a703488d0016d870efc6463418a914017b69cfc767f39517da537417cfcca21b8d023069b5f54d8b9134a77b761971b180b104093dbbe9f57b788611dbc49cdf4cdf9cec7f3d67898983e44cb3cb6acf5c67340302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008ddab6d7fbc38b0bea72d3f747d58b6b06a8d9513934cfe26764aba46e5ded0f37e61641f187247225e9ddef3972980f023100d26dc2623e779a16b021e852d1f8aec09f236ec7c4e6535d8825fbbb65af4e846079f8c32e97dd34900f0e4cc393bf360302047c435bb5006730650231009fe19cde4b9d6abdfff8805b8acfe49eba05f696ad28433227cc818c28dcf660a6898bd07a04e20d83e4417593f4e92202304d24db84fe520d35604f1f89ca47f659acae260e703a83390ead38c1585fff39d0b632cc4faade13092150a56716578a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100bd82614a1d7490e1ee0d0a74e7172677feab4eccac27dfab5e1f3b3c169ba7fa948f486276b7caf8294492de00f49643023100d6b19ad3e389424ed6650768042be609851e0097cc21eaca971c46d3e738208986aa7ad171322e8b7f077e8718183af90302047c435bb500683066023100c6520ba4e53432300f3a8b4daa51f41aa006c0bedbbbc8d2aada9ed634cfd3421b6dc4135df94375e2977a8418200bea023100d45e6d4a28f28f4daa76d389bbccd9836380a89f782e0f8f2058dfa80cbe9b877a42f789098b3756b773329d636349d30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f6e7c8a0aea45baaf337662771b452c88c65d74c861734cef75d9fcc49cf9815b19de3312394b0cafe8159d1f316386b023100e148d1bc02c1af7c6b26a4b6be46e973c73ae086d57035ec331c35c1407b2b52c4160bc81ae52690e6e61b168c3d3fcf0302047c435bb500673065023100a39da17d248ac2f330bf24ece8412238ac04076cc2515f0a9399b14c1b3a2a2c9d6f67ac731132f28093734b41b65394023038e310aa10c6329524a209cf3f89448ef65419e27660f350223d6da5ef92f64e02b1ab179c6f0e35a446abdf892f57b30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305ab6e47aea6ecc98ff6d45b22229ab399043332402bc330798689aa21e0f5831e1e6007c6bf910b2d619abe94b4f20e4023047cd9bd50e73c2d62039fb9a4acba728031ed00305c0d56e7447c2ef1725a228b0e0ff0919f3a89e7a94202cb18e0c830302047c435bb500683066023100d86c5c7ab300c7f5565efff1e30e190cfa633a7169c8e4736ccb6950c99c990189e60fa8a6b9ef43525076771d44b20f023100eca8ec527cbb0feb20918a475e1498a0e16a674f0eacb8e782f1f988a0d589700e3c6c353a692149ba74d4854a81f9410302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230057a7b56feef16917e9f63f67dd2e932751f916007945948f71254c2fe9577c139b33837ddd91464ed9c0af358fc8cb2023100996be9efb0b5341a90afd312a243b656415ea1fb4381a3a6381e1110ba5cd31e0f33d9f166ccfabf9801e3de4435b75d0302047c435bb5006730650230064cf83f643f89c6bfebf6ae51276f6909f7906366d834681b3b14d86f07ae2fdcb9770222c7e0b6cfd5950f026faf2e023100af6c39533e68948d92dfb62ddf8a9e7ff9202ae790fa1573a33725ff4f6190f9ab2bced165ebefe05cfea07e6dfdba4b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302f53f61002786add4b1f9448b0bc8c367f21163307b3b20bcc666c0ed120c39b35492837556ebb7f112c8415fc81f6ac023100f64d2c4125e406ed5acee852ed2118a4d3d36f132e5866727ff4c6314ffc4bde1159daeebd5f3ade4c7604b4e317be6b0302047c435bb50067306502305ec0661a98b028053f76e4f00570598241d444b11b89a59d93ec9da948eede5384391ed8342092ee0bfc7f62be0378c3023100fb9e3725b6058593b1eca5b2b742d8765f0b9b4dfda7ca0ddb9920683ac9dd9219744588db72ae91973d382342daa63b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301e1c47317bd33eeab991c31130c28c5d8635159706f172b0e3251ca7ba687e9dfb7d546f1d6af086534a88b5618eb7fb023100fc9f1cd97f62fdeb542c412ec4dd030a3b7a7e031376cc88d1f3c79a1a015883c19e309cfbe623af9233d363d2288e6c0302047c435bb500663064023018ca9c072a7f21cb1b9028709d36d355d65d6e43a5cbe3331a40a080412bc58d658201c39c0f277db9635e22cde7649a0230398414bc1d85f3b2d273d8237cef911b6c20ba290017918aa32e0f0abf7fc13ca323527922cf9f6c7c3aa5e86b64314b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c4ae86052dbd7960e0d74e4cd3b96495452d58db5e9432ac890aa50783fa2648f913ad34942898ada3fc6635b948b551023056fb8700c17e60390882af00f7f6f2e5c196430d5d019d402bdc498213de6e50891fff89fa3e8629fd78b31ffc5c4c480302047c435bb500673065023100ea28430453237b8a878f3175166c45fa0e9bcc108fcde2e9f661089b1ae1f3c18890dad47405b0c2f6a405d6417f194202301d861195fdceff0c89d8fee120bae9741220c00b0c289293a1383f81f8e0169a55e73d89fe636ea4103852820881a4690302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008d8d53e0dbb8dce6927c95947ec6e9dcd9bcc6c13c7eeb00eaa3095de2372f0088d4d33b0247ee310d9e1507f18f9200023100b4006e84a86a83139ec6e2ce46dcb591d3d9f5809340afde709aeeaf66771709a643fbbbde21e60b125da79e0dad4b0e0302047c435bb500683066023100a737a07c49862eefec505ae1eaab243bf094d3b13c8977d6450a75325cab51af8175dc218f56bebb03f21dab939024c70231008fb2fec9b54bbcaea4e07e610799423832caccfb0e2852820ec16d18544504c5d75b396d68d00975a3232eb97c08293d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023023dbb46d73804d1b4e6dea34fb9e818b4bf54c73a92df0b6f3060665bfb53786c3fb62f942d98d3eb27a22ceafef96f7023100ef3474d690a9bbf494b08ab962609fe51ba65afb1f7a10261bfbfe9f8dc22b586baeb116fc3ff07b5d11b7a11740b5090302047c435bb5006830660231008a30542f2f2a6649574ec6ef441312bcb1e9db21ea20cc28c346f332630fdbeb4ccb6952491960fd6bdbbd9a0969e2d602310083bac074b25f8dc954e391c5202d794c92628648a44356936ce783f6275e9efa1ca03e35238b8e9e4e77918692e51d760302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a680982cc38a480029366fc5e1db189d95bb4da0eb0ed3ac8fad06603f3df2b8943a283c40f810d566a00d627cd958e7023100b966c8cce1b29c3f09091122bc94e239fe3da64408f36b8205c4171e78056c8f68c4c3f15464e3fb72e23060f45554010302047c435bb500673065023100bf81f80794071842c973d3705a4258122e4b4936ce0165fa9b8051a52a4ce542a5e59372563f5518164dd4126abace2a02302ef192fe9697291c85c89fb8cabd5f55630752f2262cb69f4451b38d1d10b3bb05088a0c4c7d2953e5fab246945e2c690302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a1d61cc311f58a75641092882c1291fbeab6b156b05c8fd4ff4abd6640ffdf7808f63d83e3a6f18fb567110da5ded85c023100a0c475a6d4450a2e2ae57fc515b62f1e70180ad2b22553e763087c3cdadf8186d5ff1c1ac8381aeffa345736d4b4f10c0302047c435bb50066306402307ebbaba2d201534628834442f57e5a7fb6010e05b860d98d972458c3d5ad34b500121a59ff43c1909f7b9c06c2a831410230128cb81f037eb3020646130ffdcddf7f25c8f1455024697facd7a6ac9d0373df5057a8545770c283e4ad356a0c3b67940302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f2569982c3e1d815bb26c05b686ea1dc4604e7abdb3282a0228f9db390d64502c54a49f49f6a4bdedc869efb232fbedb023100ff212fe52036b548357da1caff6cec1d65e36376f457577016026b36abf9aedbb2eb8d5cf603801e9dc17f078a740c760302047c435bb50067306502303de268d2d4ef7d78681890eaed89cc290a0ef98ab620cdd382269f3a0cc67a070135a0f19f1b641b27d1c71d8e82e8f1023100a74da2de32ed07cd465158e33d2589ad520e57e02aa62f58f3b66ba0d70a4e48f008f901dc56c57cd8f4d3bf8f730e5b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100879cb8d283b70dfada7bb2004510e80ee69401e3fb9593379a0a3a7ddd0c42f5bfeb3daed0b4ff6d6353e3516c8615c9023033a9c1bd9735bf87308a758ffded5e9b256a59a690ed5d0e90931c667152c758dff4291a7b665212e8cde2f57c3b7a520302047c435bb500663064023032959d15baf96ece2fdaa1a57b022a7873d2faf17137809a7bb425cb19e45266b003700420eb17f2d95f77cd1955fa4002307636b5a55f72afcb48fb8f5e7fee04c4d1f706f9930f100931212e6cb496c587b6dcd717fc60e2659c6c2af1645f4deb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305b4fd8733bd92f4058334ddff3088ea23f36161781643c4f5a11514b01c1472800067982ab4062f8765c4dd5d572cf080230756836a66a045344ace722c692dffd221a9525fe410544c2a0a6b042722c481b311405e55175c5c15afe2c5802d48d1f0302047c435bb500673065023051509d7ba2612babbc10d95b1c94ce8553bacae6d9de75607578eb7ec869f218e7ec73845bae2d428aadc3565105afad023100952a1572ac37283833dfb8539be949161fb3a0d717dcb5cdd6c70b59decc2d6af7d9f9601f6597be36e529620c814d060302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502307adc790731689058b573d1b342f4bf79a5fdb7a8226a6d607e4719f5ac98a546f7db1fe9d0344a877fc078baf92c1d97023100f6da21b1a538a292ac37516ee6769dadce1f93f5f9cbb96b70b089f71ad22694a311d5633c5336d3834e9871da6e7d0c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c7167d92b0e37f36bb42d696cdaf64fc7f4f6ac324f4faa902161810f9a334bc70b0c5e08e0b7e56f66322048f29b18c02301b7c445b9a20ce89d3539091041c8d180359f07679a731d7f22a5e233bf902dc55d97f5eaf61302329fdd3a57aa353180302047c435bb500683066023100b21a817d932bb5fb17b340871891b86430cd2f66cd74da3eb9d2773701dd083d7bfbb87705794a88e6a1de23d596cb81023100a609ef94c65ea77da15c7a95a159dd16c986fd79c8949985f77ccf3e99f7390c314259c8c9520250ba9e0e6b1d88f4310302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302a08107f5fcafd095d0502bfbd9491c8f70dc37536746cab5996971e7b0ce552bf0a74c53e4fc01ba6dd1ae45d142a610231008e1e6cbe36e33e39094e76deb254526ca8f2c20e0c8ff548c5f11de3b31549597ddba9e19609e413766ba9429b2139890302047c435bb500683066023100bab031ecffee03aec43fcfd1b9fa062c2be65d2b70e7a6aaf132808a8deaff3f64b1e93949084402688ce8a3be766047023100f618cde4afc217992f05bfcafd444af0d76f9ec673e6a80482cbacd9f477307638eddfac3efd0957c24c2b8ad17488e40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023070751659383db6f66ddcd5259af1c5fb36a12b137d943937ab2620d0c9d694dbb629394a0e132d9aa37c90b5ceb13921023100a3d0bd5ae6366efc33e9d238fca2bd9bbc9cf6f86bdc67bdab6705091e850296c130ab3c4834a4b881e6ff55cb9ca0f30302047c435bb500673065023100e63e9f4a6240a7b8b1df3c2f4c1b5ba542837ffe86353bda84a19f5998aea964ad2ab151b69ee4d77490e633d7d88a8502301937a813fe2e30e24f89161af9477df0794f354e4bc9f9e81e599990fb534842e2bb92f13d84d759d64b01807c189ece0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023020a6dbf5e2a92ade4df4838db151075f56ea9533616659af94011095e6d04690eb381fe0d06dc2232dd8b9e87d4bcd3102310095d97e999b6a931aa96b0135d3143705c0f10333bfb7e10ecd7e9111f51958b99c3bf005effb3d03237e919e5e6329620302047c435bb50066306402306d784f7c089e0f01bfebaa7e494e79ce8b1ffc985d9b9f7a1484d0ab6bb6f1aa3ad175f06bcfe2cd55c3df7199c82dca023068afbe06eb152ca106abb0ca71a97d2ac374c86606f6778361a9f53bd43eb2dd35f785f85365986b93a03fdc284efcb90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023055cd99f0512f08eca79e4dd894d6a241ae4463191d769cec66f62b5cc918c28f27cf3ad214d673b6ee29f222f94fa1120230269e72249c77d4417583651790d81781015114e06bde776cfc8933e5468ba0753db30bca14937026558bedcc60992cf80302047c435bb5006630640230615c8584f5c5a382a63e84f98c302dfe137afb1d8406a3ce1d80a189b4424c53ee4768cd837b3c9c7abafaa8ac43938a02300d3cbdf67ad247cea52682bda2275833307e6d05fcc143df488fb59a618683255e173e8d8667a266450098780b3a75830302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306e27882b6fd65fae33ae8614dfff935b328898f25d3a5c97edad345ca55beb19c2f86215a7edacf6f92f2d39eaf48506023016c7a89e1ae29b344353b8e98952b8a36e3ff1ea1e82f0c0db37e8ecca51a7d2e422b7921e7e75b23cff08efd23a778c0302047c435bb50067306502307e9397da42b98e9b875bf5fe5aa18d02b45bac36cbed540a6ac71da2574cd93a7cc5613af5a3d812a025bf61b5bcbbec023100adbeb6cdd5d525279fad5b39b3369e284df80224749674855000fd4ae716650b889a47d7d35dc48564df143f96def4430302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023021f3b4e66588857d14001d7c55ed9749a6bdf871a4390e0567b4b1525ec28e33addd4ea691b30d5a6e81ecdc56a1316202305fdb440679737a1297a50808b603f2ba73a32ad3a21ba0bc6dd15e6432ad266b5ff4f66acc2b9587cd61b483d040cbae0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300a423304ae7af28471d73936c424c884065e7a58cb627dca464da22e529590ff2e0e156e4f9cfd4eea1b54b50873e35702305d353e798e9cdf70e10db4e4d8bde87000640510ebfdf543e7cfa90ef6f354afe1f7cc66ea81f04735c8fc93001f17c00302047c435bb50067306502304ba9033098879c83b186f42b8e501ad5189c140391b38001c044a6c75afd84add7a23b49141f804f2d8cbc2cfd688469023100dc5b20cd542949f154a18d6b912ebdfd5dcfaa8209f4d5c6623df9b8da621f18c9ba828994802c0ccd5aba99ccef12d40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100882ba52f44cf737c49b37e9d6d978f47efc8d09592dd7d537f66bc8a10301620564f78eb5906f5954df51dc22536dbe9023000e106f41e845619a0759ef07c89fd4624c8553e12a8695f1b9e3222beed9f0770e7443a4a0185b83ed4ceb225b4d70f0302047c435bb500673065023005b39c855c722f54f7632c68ddb29962114bfaeee190cccfdc85acc0a5d7fb292aeeddb86441ce8cdf9e81666858da05023100a192c7d653ad56345a5bf0793e59f7fda65cfb12de4f9608769dd5e364de7bfe0244e46ca9b0dbeaad59e2d93546712a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310098ff00ec3dcafb0850713bf5e9c1f389268e25c4a7e2a38524519061b759122c45d7de6e25113b5398fb831a600726a8023100bbf43137234fc0d82dc9c39f6651a1d7255b3328bc670e99c36e33713c2600e1980a9e54b4f80026f742f29e81f21dbb0302047c435bb500683066023100b3ebd725917504641390f6b7b46b71c9c838dd169396af61bf1b3932b15d47bea11eb6eb905ae3108a3477a98969a4d70231008b4ea2fa8373060ac20581647ff0c635343683785422fc6d5edc28f903ea9428bb3fae72ddeae992686b42ab780ae8620302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ad49d8dcaae1933ceb20d053a72a169b743d35e6cab653fb312d0013a1149490a9d37240b7616ab4ae38fd66656a1f0b02310092bb976e58a07f6476eab855cc5a685797cb37d8ecd846f742d5a79a2ce04c5c5e9932916841c3b219af0e3c7c282ca00302047c435bb500673065023100b98e0048bd73d39237bfbe1543e0b91dbf377b6be3bae83c9002aaccd0ab5ce1f8af8042249e3805ab72c0e6a37e09340230141e65baa1cd248abf3d3c53620c3966c3c0adbc02c530665d96ba8daf8355ce8e97ef4127d9707c5491702e488779da0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100da2f47f0a886166df00c6140a93455b2bb053fc193e45e55cb9d6c9d5567250e7d9ed200de34fec8e82eff9cf571ade6023100ec04a30ea6670ed41fd37c8f37606519f838c945d24c7b02b975535cb64825b0185e90563094798f5fb2b840000862590302047c435bb50067306502304165e7c244a358d5e84e6e8b358893ff2aa24089e1f95ebf19c09e039714b5940fbbe5a1d8438d764f9c887a25fc2499023100d12e99c9be5518a5d0c724fa5f7cc2fe49fda17be51bbefd3d377d68bf610d513e8ba38c6c322c311e032d4d37cfb3b60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023066c92c9467ea0f19f449ba6fd88294c851de4a56d9b3e24d73cab4b2329c8629e80169eb67d2749f608ad2a03ca30056023100b0fe643d027414c0fb72141876381ab6b664e07b20dc6642335fe72ba704f8aa5f184c95aad46d62b8fdf3078e97b0a10302047c435bb500683066023100f73c36f7cb8d37dd6990ba5ba4640d49779d0b40f2afc54557a924d96d8f9e2ac03c33b5e2f31d36faf43908e168ef3b023100a56b61d18a0ca855ece9e8c5f1122c2e68d33f72a63cb1a56870eaa2ee27fa28118b70ad24a6bb5593777eadb8b2b2780302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b6e09d862ed0167c80d297879c62b36b8139472b5b3f1f80a66b148b5064f8def40f5d863fcb4cabfa6be9556e23d73a02305012628f2e29c634d46654273e34ede66119e2df6b021e285c1a7723970ae4770032441771596d45d4552a60852037330302047c435bb5006730650230196e8debc92a1d79fa5faf13071352ee2454548e39a6ce8b7ce1031d3a2f9d4fc15b60629de48741291783d514a02cae023100fa53b5b0a86c02635d57c2024cd331d2660197e23f58bf3701f842d5ad27a4aa9db3a9a89ccc6fd249ee7730bab1e4400302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023045f42f912d3de64e1d1fd1ebd7dfd52a375ded351fcebff1828b86dd34d85333e267683885bc90c61bf0fd483f5d4a3a02306ffb8c8d3f7c1fb5e385b0d8a12ccedbba4d67a235b8c675f5a3a9e293373fbd42b34e2061d83205233a1abd1ba168790302047c435bb500673065023100bf24ca735d0a478e503d25c242eb0f90f5292611872f715e93b83fc48e100eb257c87e48f936b6613b7991b58fdeb9c6023017340067f59bd0c1e13837fc440d9414963da1712adba562f303bd35cb12a4699ed6dbbc8ee838cdb4012ab32e214e390302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ddcb043428e54ca19bdd097285e30293f11553e3d674a623633bc54f231655d74e90a32368df156cefddd7bb9d51e545023100c3a4cd2ac640db0168c4cfeb1ff022a8e11934d15871630c93a11c2d48e04a926ca5bcfe388b53e6ec2552ead997382c0302047c435bb500673065023100a3c2830d3eea8b2c22be9c837209f64a8574da3fe3545db459580209b49a319eafc6c37a5236373e2a1b0da7da4dd644023057071047d794a1288f1b6fb73b10e2ebd5642abcfa662ed9c2a46c6b0d9e3ba3c8804d9aaee0df3e698987ecb8c4d2490302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302fbad4e3d703f69c1ffe73c41a8f2ebce06bdb3bd610790710a3c2cd94ead1fea219157b5b49db2da940f5c04c3c5e3f023100b91dd19955954fdf42ee8b46c35a3bd3c9efcfeabebc2de6055de284cfd8e212754bdf44111743d04e943244d392e0b70302047c435bb500673065023100b37edf9b04a2912a50ac77cb4066d8ccfa354784bba7abc00733a5494c25557cc228a308b1c3a4886ecd17f46003bf030230582eb69faedabed1256029423b21d34cd70f3677a16872b5bddd9eed4335458677d4f6db0e144cea45ea62f5ec183dbc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023029e13d68b44de496651d6c9eec92d68ab55ca64bb2976a2acb9c653471cecde750d7f454b045fcedcd50d158be38fb43023100e3d8b952137abbc033bd4f9aafd9d12d72d27653b70a3f21e097245f525d3f3711f5117f970c022ec68d3097d5531ad10302047c435bb50067306502304f089f044eb68af6497572d5abecac8a0f17acd4ac9743c157ebce67a29a6f23ee97bc739ef12dd1061d668cea383b39023100cd39254b433c0b68f38ef7f19633472e334ffc9e67d444f99a004dc2cc36746855a24e344129bb4bd296fe8567cbec940302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300a7df6dfb73e0c6ae9dd2d144caa9c4a414062ba4c8a8235d46143345fc1a46b66cc77536d4af19b7a85875bed26c4ea02300ab901ae7262328c9af4e39d238f861cdff2a70e3ca65516de69a2040cdf248892043fd012e4d9690f07d309d39c7a220302047c435bb5006830660231009ba21bfafcb0f11460dd294b15628b822f3d12c83e31b314777006b65fec01e0112b53a9d57c58125c8bdac82ed4f027023100b4913b758608260092dbfaa0d5940637997556f261878e7fc78b593aa3da663e7e01d3357d1b1f364894ec6037f833bc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307a4f046c29649a49c0ea010eb37bb24d5e6bdf538f75e772cde491b6c1013c59b03d9d332ecbe3c5f77fe4d7ca9b2de10230522afe3676eba29cf8810286a0f21efa4aa67c4386eed93ba0ad533465df0d27b17e5784122c6612e76ca2916e9f7d020302047c435bb500673065023100be3b3c578ed4a0a1b9f156b391d45ff272deedbe07b6ce77bd0f6337bff2e2eaf1fadb0c971893ee7bdf091fd6945899023018d198f2ea3722dfa56a2cd5483f79836a78980919bb978392593844afd5c466c17191040bcad901924214c36ca3ee330302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d23660ffa6773773f7f033b198f6b69abefa0c797e7f4c06ec0a79f756357536e3c35141702c4533db3324499047e3a1023040e6d19b5981a33e41ba9123edde06ab31daca80cb21b7f0a73c08dc849d0d06737a42b129a5cf7e74a79949bc4b67290302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300a0c89fd7a61d3a0551dc1ab5a5ef815a6e2996108f85aa75ae0809a060767e5763d7cb653a5c7bb8a62f4942f256a18023100e3c3f11a45035642f87ca0d70d8250f76d0c916c3226a84f89fada2d3202e09f64ceb7e54df8cdbbfe3b3c1b5ccc062c0302047c435bb500683066023100be970d04307b24be95e2e51f314387d3b749822634c54fa6779e1b9144490918d1148da9014a7e62a46c4923797b388a023100ea41b4a4f25991e3fc74e7bf5b29a2703f482dc78cc866a15d4a7f38a54b66fe9d240c92b9317b975cec55ab1280906d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c881f25b6150d00b7c5a63f8a687e4bf7ef1a414024bec3d4f3069eecfb0ee28f4bcc514db385b033553926e7bbdbdd5023100e50c7f861ea6dc8d60f70fc3fafc3bb2d4abc0bc5691187828620d92ded077aa96ed64bc5ebbdbdf499e7fd5f08ac3e90302047c435bb50066306402305a3e12c3a5411a2702a5afd7571d8b39fe5d2a213f9a1c8375419d462fc8395aedaa08ecbbce4ea4447ac37b70f80bde023079af1def59807e51758f9d4b69e53b37a932ee2873c7a26c438670b5a75e518b6f2107c5bb90bd6b923ef6fb591f0c440302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306d8ee26b59813ef8cc8aa2d374ad45a34f4bfeebdaa84152c5099dc368846b57001f6188c5865d2e17e4e6cd837c7eb3023100d620526c18dcd4133c6d4e0d6fd9d5dbc71e4e8f21e09e87ecce6bd98924bcb86b7bd06c609ce647daa6480a9e1459330302047c435bb50066306402300cdc8800158e59b761e0459e1d57f18af4c3f2314cc0fd041dbaa6478a8eb974bf20da0196da4661493ad0875e0eee7c023053ea4364a9631cc9681c54225f680f91813ab55a0dcbbcfb9a7d73d8732a371050566fe1e18e38c11dbe8d2f1c9185740302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008f105d06248bc6c0048648d9dcf9f269477736c08f2905f0a6fd45fd25fa4154d2ac6efc2c56d75a990daa93d99670160230425a7207d43ca6490d0570a39a7cf011bfd71be97a1b3d14c8d63fa12adc5ea875ab591db878ffe2e025e0179c6ee1420302047c435bb50067306502310097fa1aee29bf00c1b65011ca911954b4f88369cfd9e9b2b93c50e6a3b2efcf702d883f7ddf852582f04528f5bb610a7902303ee7713ed2de655623ed395b31e25ac7dd4d1d176513bdcc0b5890ebb9726c74fc6e73a544c37295c504d4551a9e29700302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b82a3cb21b6b6135ce5e12bf495eebfe8cf7bc99a06912f803d5a7c01763e54bdbd8a6ad49267f0855424d088e95a52f023100def8fc940a3a152b74f2266660bb06edbcdacbf4fbca12895b80ea00db88cea6ff421140e20ced507dab2ea73a2ae68b0302047c435bb50067306502310084ffb16a8062fa5b1e1b8ad917b17dac26a89ff8c073c54292f1d4c6c1b552475d006daed17e7fc82deada2e0ffa3c6b02305d0f699073086ec995b1b1f81edabcd6ce7271c1c4b0f5b1b16fde45af274eca2a9fe94a8556f041b2bd30a16c07530e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f38d3d571009b2514b4a6c40255cb4ef3399c9e5263db9e9f3541ba735ffe09a3e6aa34e75823733d011fb45a87ea1d10231009de2e0b3b4305e57cd3ca8da38612a625a3d0287bfa1f836af8a72211102b21d3116e94afaf8db8c9c835bb1e07ffa750302047c435bb50066306402303ff87423761454ed266aa693aab8b511335500dd2d2a2fa630264932e38762663fce15b045d91fa0d2557870fb8c395602305a699979693b5be2e4102c7fa078b0f0b2ed5f3b6e32936520967116a942d369ba6143f511ffbe2e956a18beb6b22a1a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100cd16c4fc1b4b9d13dee8c4a70f3c6de8d0d3263acb524f942c336d92d666ad1b2b6491f2629b6d2b054660a0ab9e8b3d023006493ac4a5cda5d4d29dfc43c493ff44269bf9d00cb2e5ec0d195c2639af6e600ae538cc6ab40d72db9e559b697660be0302047c435bb500673065023039014fbf36afbbc151243d571214183b4d68761add1196925f60d88f80787b0bcdeaa3f731973ca034dfbd3c7077fc94023100ad0a89035e0d463991a66191c431fa6076644989c069a7b208e934e70f22be44e4a4d15de7ce98eb75bb5af7396a3aa50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310083d09cd1d564e6177b167d299431e9d7b1e23810550746d9af427da1ec3aaa0e8b12e931f3b64e0853c5dd72949f17ca02301c8843e748f588edd8352ce1410ecf27faa1e25c48aef38521fbd85b00bb96f705b5f06aa35822ec3c2bd3b6b2e10ce80302047c435bb5006730650231008a56c85b142ea45c5d47b3a86c72175480381cccbaecd8fc1fd4d1b47cd3bd121f991c1eb9832201909447e4b9aba808023046ef5492fac09444085f757be6bfa2458e67a030b16e471f430918899aa68790d133d5adc7a9d1bd49c4351824f494780302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100efa10b9e57729b8ae57102dbdc1492e7f551ca9e135edab09a1a293d16bef10588a5d8f051dad49c4778b861acb9cece0231009487ba93e4aac1592b4a817a5819be041faabb886096ab2ce59465c90288b37b888ecc3edd421e64e6fe7f9e7272e86e0302047c435bb5006730650230595155b1ba9c666faf788a41f721a01bab8f7695849d21a5c62687e4432a08858d841c4752be25dd32012741d28367430231009b955650269aaef7207e30006aac4001887b6e0d99941be0f39c0ff0f5a2feb6b329ec03f444189511cc93452b3e5ad50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230743ca884963a49c0ffd1156262f96976b7129bc43dc5e2fd7fbb7bf1178778308122d00527e1d6098750db5ca26afd15023100a1414efcc2e7d078371407f2f4c73681c62e25e85a2277db8248c6284087a52ecb635806cc19e402546348d9777e37760302047c435bb500683066023100aa247cddbd8e5a07c41a9cbb8623f77f76436f681c815852e0441f4d4c1cc4fc9da2ba8b17880c52762d4f7b396d62ca023100953044f6ddd0aa8e3004e622cda9583fff5f57aeada182a0bdf6057e0c3f9ed5f842f5631f5fd282ca895ee87686c7410302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c5485e466b2c0a7483a0bc950c8a30a6dbf952b972792c0ee9dd7cf1a0af8321fb0b752dfb6b82582c98f405dfc5e6f20230644270d2f735639c14ac65a47a5c9748983d706a76473bddd6f2c4b1f56c88595f1c4482edecc115000d55aabc819dce0302047c435bb50067306502303582b6b6252d3b72d550c11d680be0957fc362d3d002ebc7f34c195d1e8df0c5160c81c89cee1eb2cb7e474a248b1f560231009dcd55ab530a94a699c2e7d34fa6c7a901bc721b93113df0b0e2d844ce5d7aa998ab79e7b978d7985ece28383dbb557b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ba265fbf61cc1c9b558bcc2b3d3f576a75a0de7bc7b14fca60a3b4d0b7bd7d3f05879b196d87efaaa08d61d19c0fcd060231008604c344ed29493245fc29b272e11e29979eb7cf26ea96dcfb8a3097f4a2e2c859d24b7471b7d5279a9a1cb63d16feb60302047c435bb500683066023100ba1cd3525731ac0d6bceb46a8cbe126120253e75ba8950d9693ca5a1cd0c89a7f5119537a224f5884f1e75c8b2b6cbce023100a9af564193058abe386afdef4167efc5fd407d7690e3c7dfedae04bcfa062ac6898541a4594173d293061917d482b08b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023060c9a4070156db84b9fa99d009f5cd33faacd618c0da404d6224dfbb8a9228aca04696f8fd218c59c7e79f7000fc0a7c023100fab62fc4786e41814d041d84bc8b0761292e759781b9a33865127a5f085fcc066603b470419c4000af8973b140162a060302047c435bb500683066023100989bcb094c7ec1c3510e207f1b9fa9f0a256ef61fdbd79c15452ba4a737d6071c7b0b948ff4b5a465e56ba06a3c6361f0231008e7b292e54b24d97abf6c9b953e73d5fe870967c2134ff627a17823ba89fdd688cafa9f10ebf551d67d8ce5bd94538ca0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502307176807bfbdeda790da5f26a948fbebf4913d7fee9897cf3b9268536abdef2f360cd10b583af0878e0893ba1db891d7c023100dfc6388a04ed425839fdfa6c6a0b1245070c7503023c0086e62628faecc2b3a76eb00c2cf31d18d05d7aa8978ade1c980302047c435bb500673065023100f9d36978be43af5719f838455f56a87ddaf519279e4802614d07f7409ff84760d1c6bcd6186bb19276f7e6977d8478d2023046b70c15211728e6f5605967ea8297e04b5cd1b1783cbaf9e452c62e0274581bf18ce7a0a73ab66df5bbb27d3c9cd3300302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a692b2446f58237f96a260d20a9c44a36d9f43e4a49571da069b14c7c99b0c250e01c068295f91a38ede45993d7d32010231008a683760663d4e7790d3b1c68beffe9c0d7ce7f1e48c82fe2ba938bced241e22bd186e3a2d29a40948e0beba8f08928a0302047c435bb500663064023048d2aa8a50b5cd951972876d1b82d61a9cb610ea490aa3035b69162344ff2826ccd1827d65ded5dc6919cf392a8f521a023069cc4733ad33db248cf9d60b42e93ce28e075fed51e1864ebe3519a97dab07983ef097f57be5045380dd5edf01a755040302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b1b4a90c4fb9fe49ab76210fb2ff449576586d6cb5e8ba7c4412416f457ef2c87751d50c77e2096257ffd319c23a7c9d023100e79fb6462c6b452a24a6d51013ada460cdd57616d2c5f700a1722141ade18a22ea309c54e49b1407cc86c9967b453a4e0302047c435bb5006630640230347265ae54cb0fff219fbd023bce3f56dc2bd972a4509cf1e3af47bf7d773d2c4a61d0a1cbe67924050f912c460cd6cf02301c6b53e9a2a190e595708aeb22e2a9d02e0fcb3e2cb6927171381d5f73b64011a56adbe499f9b1233dc53f096cb34e9a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023028261754ca8dc1516909b18ced5c6ba779f440d9cffa6fa45211875d2250b769badb24201509609db3eaebf475e3205b023100a95726fd124654be5fabe1f29f1db4c932a90d85ad36f5e3e584da98e5f01a3ef7a3f314d31eed04eb2f55f69afc891d0302047c435bb50067306502305fc910625642df9ab16b5bd08c5090e5a15e31eb55a0212d19f3a6aa464e8854ff652109c50aef5db59a70481adbc7ac023100921fd321647d63adf778b5e6863ab37899b944bde2c179bfa231dba36f46bfba87d45a4c2eaeaf057314aa60403e05ef0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ab549b53bad88bbfbf0cbca591a1866ca1960d5487833c759554c46037b90b6804231337f48eaa0b8d3955c03a42d5e402300e793f14fe9ab081bbdb601784a2960b81e4c442bb4ef2589ce23fe14c16bd6e99b4c0c775fca4118af65004c10d02d60302047c435bb500673065023022634460991071e75b5305e3ce1f118172019408569916009f165ecade6597705e5b7c2d6be6f8721b684e9bddd98eee023100a1569ad15a9e6740d50a2c5cc0f00f7b942a85cc8f7a46673c7f2d4fcfd6328f17435cab2cd11aae36825438659a8ec30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310087dbbecbc7c0e9b86f7a6b4a54d1af8776d0cb78bb67ad0ad6fcf41181a5acea583d839fa6554cd8977b05a7e2e6cafd023100f0678c4fb04c58bcc1726a88e296489721770323fb0c86378ba2ceff68f5ae09a4e6b13272e0fc04cbd0ed44801e16c20302047c435bb500673065023100d2261b2f79f3fe1eaeef6c1e1a19c25c1cb79a088e65c7fd226539ba7f117eca7926c2c16644f21684142350d76aa8a5023039c0437010bb3edf6833c3ffa0352f4d75a6d56e0295ff4e569f8f0dbf768b6920afd9229d62c7f7f784a2beeb9c53fa0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100da0ae46d6627b394e57fae56ce7d75eede6186a8de2745d2c0486c80dd332bff68c4b6babe68d672e01807211a9c034d023100e13003e440690f9bfdb40ae40b29c981207e8db0d3fad6958ac271e0a05646707194ac94671fee57f660f0c59b5d2b960302047c435bb50068306602310086431802fb3001166882ce88df4fe380f886d917a5815c66809fce47ceca51580781522317df52c83995310f5e2d9844023100db405199e91530b65158c11409eb31aec2eccd05af2db04c267622b8fd63724c0c94580dcc755cbc332fe5b16559bbf20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a7709f34a3e36709ecf8885a9ea0a44992dce0b365c733bd73397007f48afbb5073cba8ca7ed912ee4f04030a1f33e5f02307fc8e4a1a293ff1902c370b2a12d72ffd005715c7962d6550cb0783d17e5d399aee08efd3775cf57138a0961249c3aea0302047c435bb500683066023100d7e019acecb32cc45e580c1ec2bb7f4c8b5548e052106104f58b95ef1f4334ad513ff03dd38d4875bb5c02aebea55534023100e1d554cbdf6121a872a6b7539abfb634c264c30eff2c6d0bb8cf386ad2070f24a2c5ab25cbb48cd0757c44d60228aa3e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402304ccd84c01d4b4742b9026e7e654b0bf8adcd1c33054b025f68758e9a7e87cd08e0cb9db21108b1742a35d8ba51eb052202306a8c50c4085e5ea1f79fcb9b38bcf45d98c6c7107ed22d8a3d85721adfadbcc58198c062db011a0066e7406876b3769b0302047c435bb50066306402303159924dce6a3fff1204fcbc87504fa73af20e9bf90252173269094ffa5c7606addecafc976ef5049e00d9ce238247b5023074e9c30dc3ac93f81778b5ed97399f92708e2adc3e5408f7f8f03b32699d3e3acfb4ccfc45bc1014859f33ef934027530302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c526a049a3cbcf4189d9044ad9daef1bd6c5c71b5c068afd8ba26f73b8af224ff9d8447b395e792a045f217e7490cdc402307dcc6718d07702891cc0694a34125fef2b2a436be4331d2c7575b8f61ad8178f57e16ac3491682cf403b3da7cee2fb780302047c435bb50067306502302296a48c1e066bf704dc7c902ac9ff7f3aac7ea3599dee7c2e382ef61848b73236c76f2dbfa69495750c4c726c3359ed023100b987e2ebb760b13f230ec07b3844c67408fdcebbe9444ccbd39dc45a9f62e2e8b6e6cd0fe38733eb81da920377ccbc9e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008c02fe5f942083a9a46bfdad6fd2105c399c5068e4351b699d1aa379a07a618173ecf1b1fe0d8a0da096e53611f1830f02306313cffe2025a9a1af0ab7b2bd4adf659801e7806c732b59e56858f8bd5e5c9d6c4de37d51596257a15372899a17f53b0302047c435bb500683066023100d00a2d7a112dcc1fde0ea879983ab81a3f79fd9ccfea626c9b7ce24ee5e9f353cc91f21f9ce73f0118f29daf4b874057023100da916cf4c2cc977ddfc7430e00a9bded2c05ac5bb567d607cd5f541ce6db1a46f4193d1c0315914b52dbdf8e773de02b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100936e532e9d88074521149284b2a8c052b0d4263e952b6bf2bf0d012e6ca845d76a5bf63d595a77d5ff8314175cbb28fd023100f94778898522c606162847e63fc17b22adf54401f01ef5bbf2ccb0d8810449cf2cfc85bf781bbaea3e76f030cefc12470302047c435bb500683066023100cdea636de3aea5e2321e6f4335216527155fd9e8fe553a5cb935a48ea5e43b4e0397da7b47bcdbf895012b5698342b38023100d9a3f99f3cc55212cde06625f9ba23593b11cac2ff2cbb3b46bed904c482868cc48bec2dbd8b310eec7a4c3ac19598310302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402304e9b30e6d7675f86b7b61fd5a6cf896aceb21ec762f359fe16f1039bf2cb50217729cd9abd23b18c9bc43dfa1047d3830230678467c9906f739679ed422f39c45997701a520504fd6bd61478cd36bde0c31c3926f646c029d926d6f50350973906ad0302047c435bb50066306402304210909977f968419f1b4e256d1e884385186780aec26e347b909d074f2025fa472d9799a61a1f0c46aa80fe153d52c80230655c7aa04472fe1b5d9ecbee79e9863b4d2bca7b6245cb521b5bcf16d66d278d23655b95d2729e1f057c58882825afb60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023019f5b5b2b18d40094998b7143555a98131ec7a1ebc528615e28e6773bfbedbfcf3e43b8d7b72c58400e345acb1f99ad1023017eb4430bb7edfe61167e5ce68d25a97dc21441d5546130328072392120ce5a49d5c6878b0188a195f2cc7b4ff6093e10302047c435bb500683066023100ac588465b9d9a1f43bec06572188d323ff57444b988da2f3d17eafb66d2de4390a260cc64043d0b01abac27496324b35023100dd7b5faffe27871fd769b0c3e14ca8b42060beafe1f5e065e1a92e58347e9794c12eb0650a0171392a17e6acaca03ace0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023038215715296d261602c7d43fa406a6e2e24e23060ce00411222cd2aaff7891117749b4fd6058044a14133ec050d61dcf023100a945d8f62e3c16f2ddcdb3159cbb0c877b7f14188feb4dc201207b47080881ee815f7fb51fda0be80f6316706b15c6db0302047c435bb50066306402304c450d6af9ee202649c70bbc24c4172c3ccc7bc696c89aa0c2291d8b00ee2d3c32d318f33f07efb6f40273fc46240fad02303ca17311dbfc351218e0b03f5f4639297cd93b192fe8d45f5c18b4d65413dd202b6cf4965a64ca71ff1f18e6f27c88850302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230079f1d8f46439e39303484f8b944c8db95673ef327673a30c8a3f93ebf4fb27aa0c5b9271f88418f902931ffa4826f5402307ac0acb07ab80067f7e11a7cb80c517ea47a72e65f2afb492979ef681f2289552b30145a2300d6e61b09463cdf0bb5810302047c435bb5006630640230340ebc2f500926b9522cbd64e8ca4425c854a02b4555cbde92c5c33394e8b0c3756f6573ac3099235c6e35ecdc61ac0302301a8d8101206046af3b020e7c0e7cbd0c351c8cc8f16c2d796454a69d358540bc7b476e7e6a9e377487be797a6c201cce0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b885c49508406755c32c33ab474bf56488b44585cf741040abd97fa401bea65b78a208ed22d6c28ae138156ad962d94502310085f40b874365d82b26fec423a400bdfcbe1f2bfc3f48a2814042cf5d9332c066a097b2f85d3dcfc2d58a40b11b2272d70302047c435bb500673065023069777fdf06185bea0320fb44e67c7d1e784b178f3ec95b60cc4394a3f3c5a471ac31bce850aa2e959889c20d5091e067023100fd5be45504d2156d34ad79f23cb737d6379410db8e538056623517aed1e43bcedb4881bad83ad9403c8c5411c6e822430302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009295e0f29ce20afd17adc602c5e5805bd4903f71ff25fbc075e515974b8a87704e8e7fd72c724d19f80627a7c0658fa902302251c062fbf0538490262e37d6b47b5efe0c6d96bfb1e9b5ea482bfce88efc6867767f0daf14b1177cfcb8400cea01e50302047c435bb500673065023100919bdb9e797488e9fbcc78755d72f894462b22cd357a62a227f0256d2f5bcb9c5385c0b3bd2bb0b737caea4616d6d4e8023077df214fbf80f72cf190ccccdee46677b7226e8086c94b1ad935b8bf322febca9ed17f3276b61f39ee04db38046784480302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304fd255bb4584d63f8389410f07efd08008d3fbdb9b72a1ce6e11aaca198c9e30950d93cf23d01317c972dd8140ba9ed9023100e2bca1d830fb3dfbc4479124324459ae467760b1f5d22078b9c110d6d405ba28f8a107b87bc46d99d6a7de1ea30134450302047c435bb50068306602310093f4b36e94d397aa6e2f316c67a98defa8c6c4a4b9134acbfba34a84577deaae4476abff694bf4a5c67f48cb65d53cf2023100b423f43ddea36e4001d7b104bad3c709b2610d233ce4d33d61b575cf012c8ddd34cb6276436166a3afc24eef8f81c6520302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300e10d3e55da321c4746b887a1b911ffbd2c7cc6a18d4a87d2bb0e1aef519bd6d2e273453b3abad4c5a0e5f5d211e1a30023100de56539421d646c4b42736f905a05df132687589f77f74a511e788157f121e7703a409550987e46064adf6983c77c9630302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023001fd75f12936862247a043f33b0e2ebe9fa6f5fc8dca63808ef240549d976c192a464fd16247544b4478648f89e0e5e602302c8df6ca5081ae2388d2510c79b1ba7d91e4c44663d218ce57cd8574795b9aed4ddb37ca3777402edca9fda6fc4149a90302047c435bb5006630640230729a3f344ed859ca14b7c84f5983ef205f99a03e496ade45a52d580e018763742ea306bdcf3b4014c30d92d5614ace1902303ebf173ea7fc0fac03fddc58dddd880d8afba7c4af999aa07b68ffdf9613e0eb3fad8ba6bad18c8d2b3b962e57175b850302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310081f94626aa8e9578ff5c27ae057c731b52b5e59ec80b879c147fa06ddd59a097ce7a2d3cfc7226d006245d6cc00d9be3023051664983f961464458cafe6817d403100ee86f5c6c550672fd2a53c77c0456cf0bbc6aeb9c1facea7a9322dc2a31d2fb0302047c435bb500663064023067f24acf6c69e6625dc6f81558069c627f69f32b06211fcd14fa46bb1971c35d6840c385f337a98f4fd35f1ffc85b6c0023073b58a0c08c38c032c7fc88cf5b5d50cd89d44a223d0cc6145e6b8560cc28757213434f906310f3f5c70dbcb7388511a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300823d2d37e3e513964f90886e52499d8310424aca78cf5888ad2e001b6479d7dfd32cec368592ff2d41dd36031898c7b023100b6ad1758d079ddd82718a5fadc6573993c16aad29eed81e01507c6c2a7083f6256216f1c20542cb1dae44ec99fe67a1b0302047c435bb5006630640230763a1eacce91e3d54825257100baeeecddadaab250039c8b4d8c064f3e3779dfd79388462fe6e6400267e013570dd78002302c67a345ff5b228024f3591c0f400ea8593aef33a0601311e9e0a8f2c5bd3cd01a25fdac519a03f4ae6a5aed3d18a0840302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c6e606ce0f1752b8895915dbbb19eae54afb2c85fb745dcffe1c026d436a7faf5f93431f8457086296477f93802a4d4a023100edb500c8f86f3109e1c7fb31f4faa23ef4f3b2a16b330969bf6bba4327f5c625d56815dd6e1a5a3473c33335731ec2e30302047c435bb500663064023016e1c5c53628d0b9041446a6daaead0afb8cab13313489d57392390f2c0646fbd64d0fcfdb0c379d9da401125d7bf15802305ace9c3708e286b0dfb536d1967ceaea06ba31b6398f0ee49ced61fba9b7ac391b3a917d5e6c99b111e1d3fa4e9c56050302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e2a15af55728ace9467c5c805c956f1792fe3ef0a1698d6168b1e543b9bd6fcbf70fbb1c900e5b9bd2f5164b28d5372402301b8778b4df7547dc8ee00462da6ee5ad8d899d9974674af1849a462a53fc4c05894d7987304b11e55e9742b1739dd83c0302047c435bb500683066023100ff6c4064a5d51498b4ac513e1decc5be8f5bc91ab1900ba743f2eeeeb7e7bd6a2de7e2c20af71751f94c78b65737ad8a023100be6f5b76a78391fe4ae8138e65e73446234fc48523fbca029426376cd3c6563f1c162d27986ce3d5f8076338269d01fc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023055611529991c131b33459bd8cd903c900ab9a90209c94d52e4a0e52de2e2a09abce5192b3c71b6d0b3fcb9cba924f05d02305c1b49d83f6343dc5e4ce98fc34fd6ba9bf373a7154034ce54cb427a4b87db923c1d18661f50acc758686728de6724250302047c435bb500673065023100a19a633c1381ed7b4cf4aa7e70a552dc672edb5ca57d61863fea6339b0f15e439758af3eb4458cf40255eab15c30db44023079cd2095ef18c1590711345ffec77f94459713a1fcc7da3958e56e8a5f33f7f90a2e6f541fa7b1ada737ba04ef67d3ad0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023077fba72ba000ee97f681c28c9ac666d864b5bbd019e0637ab9a6c90dec098d9ba9febf3bbb2359febf45f98fb1296c9d0231009fb2124d2614d10ec685494f612112df84064eae47d1c554babcde66639b43e837734e856d880e8a6419027d010af8610302047c435bb500673065023041443601d0836325a0879aead963bff8e71954c3aefb34f67ff0999347484df56817d3bcbdc72c273507d5d396e97fc30231008526c89155ecc8ebd08cdd651b00784c1a276e855a84b844575fb5e6d8500ea94c432ce87e9b2254b7e675d4bf0b9ce20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310096e1ffe3db2e4804f91b3183ba89242e95246cbd10e8b16e946a550dd78a64fa14f513985bd35d10e44ee541f81d4fd502305ac2b8401de65d7e16ce443684df0307a69d3ccbe8fb39ccf210ee103b8d1a1ac6e4119a462a1042a9b94f9435aac9c70302047c435bb50066306402304958fc72b7787ed88073b48a66216d8f3a4a9c98d14aacfa276a52b39049e6da0749af8cbb4227fe0cd7a7fe72e46b3802303a862a229f18892192f4fec13971c8f02b449651963204b5f8f492e72d320d1439f1c122283974ae2c71795e1f0d5bd10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306dcc3785f371328bbdcd656c394a324fb6036bbf4137ec863fa35de2b4a0c8fded7ad666da1f3a971a37e0f411a08645023100d9d3be5d3dedae6be3ee4b544ab9d149ecc774de0ff4be26713271f750b4f893293f3e4f74304c56b40659c197a718540302047c435bb500683066023100a1562de443094a45aaf49e02b39f7493b195cace62849132a96f661e551af48e4c44e3650fedb0613783da5dc09806e1023100f8c8fc7b1baaaca1174535a04563aa04b783e4af9a8961e90871bab49b92440270ec7427d8a5839c728235dd0a1f13800302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f6b8be1ef840689b0769d521daf3adbe1f8e3ccc524e743edbd75489be93fd39f10199babdb236be0ab68d6b2e62d53d023100c4248cedcf453cb99182bc94b97ad247ac8049adc6c8ec84f8687ccc805d935528ebfb2d38ca497683aa0ac0c78b26960302047c435bb50066306402303c402ac819e43f7d5fd735fbfb52ae6d198736ce3799e0003c0a33f4529d417d89c0d38cc10929b5ead0c979c618606002307ce7b2ec6c1075361ae2265b8a4e73444f13f2134b92328859b658df113bfc4edf1b5568a5e26afa04a9a13ed9ac1fec0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307d650b2421987638cd52c2fa0c1fb1132b4a0827c079c8351ebdf5398b79f31b80def221f059c94195d8793e6ed4f9fb02306064cd7e6bda4f618b3b6e89c7a4f21de130dc2868de64e21c21c21aced243974dd869b377e5380dd05700dee427ea800302047c435bb500673065023100c889bb8b0f6487c029d7ade7b6332949ec658d49cf06253965882e0c51a9f08d48e9282d700b9f0732219b3c2bf8ef6602303b9c01f82486a6c687f3f256690470626d84f2c7f315d4d3b7f0fdd9a1bd39cfc2066bd465526afb1376cadf347632230302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310085ffe0854d402ec7cea9c559e30f027974a0d8e0dfc6d3f2300033495d5a1c4677b35c00a2d69413264e0fb86af11a76023063c0c6b997074134990e2dffa203138bca10cdfd0d496cd4d3c2a91ce05850cccfd816c3d7ed90bffb4578d471ae63ac0302047c435bb50067306502304f37bb1d8ffc528a80a0f60f662f50efedc513e52fd0f1c69bb8cf0dfb931c6cc4fc9a159c055782c689b81b3d4bef94023100f68cfe575cd90929d99f1df3c535e44f4998d393142babb5080bd6d5d66e517a9ab0ae1c1210f7c8b7ec46f6d1efe31e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d888d0729f979ae036f3779176dc55b1a7cb1d73fafea97dfd59281aee5a033b27d74b4ba6687ac5601e97e342991a8402307c44ee32b6b81d834b1334156933a75b5e6d59a2a0e6e7428688e2e36da27d9a91bf0b99ca847d805a18446cecc2cf3f0302047c435bb500683066023100c3d176a5a1bcfb34976a69f9970a7d1b803d151a4635f457c89b1a9c128d65ce374a7f1ceb6a1beae5819dcf8ee3adee023100ff8004008a430d363d6dd1334c266ed5f915ea686955fbe2c68160aa96be4e72f979b668854d90b5029b3c9c278619c40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b678303f9d9e8b2262228e0144b4ef2d182da47d462e22325321b2e216e617dde45d029aa6bd3636e2647aa379152ab8023100d91f3a276fd606e440d7a96c98ba8c09e9c91d0e5e6b3f0852e4d24774361c52e494283ea625ecf38a8d51d14aff9e9a0302047c435bb5006630640230105db0c77488b091f3a6eb4c15369765ef41c71366cc58a8b971f796928a8350e71f32b0e496a771bebbf5325f711385023077311ab95cdf6d2c983bccb422527eb20a398633b692d8d718caa0d15c5d7547d8597ea01161cdc9b2d465dd4a685ed10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023075eb8546364b7ff86cecb57ef9a50b7ba3415c3a32156b85c5f47191c2f48bed147a3576ea22ed44901ab31bef462be802303528d5401c0823b83688defc73101868330932b3f0e46b3927c094f2f89731114959a33b9483ba7f28d126fa933dc6f60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023059399b0c2a0e3b5f707c0b6da0c89ed5aa1fcc97729907914ce45f4fba95ef2ab100fe152c6bd0a5feb4cd76050e538802307864807c3f3fda259b5643055fb52de36c730031acf6aab2a1ce7bda7312339577de49e9b3063c686de7a1f206c4d9cf0302047c435bb500673065023100a9ca7af84aa3a488f94fcbe1c4f8b7daec78eefc672353d7906af0d4dbcce58d6974af78dc948d76ef171e752639324502300ce81258de89df63da0b8349150943a8022a2b7609153f34008e2d9f0c665f3e377e5b5ccf47f869fddfa1ab5e491cdb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a56815a63604422cfe662b8e82a98cf6bdb411cc03b69fad5d85c043c061e78a16076a7fd15cd6d4b68a2e9307733d040230210b747c7e430defe01de2a8b37cc278e15c6d0b7ec926339ab7e45a0f08c2289d3ea3f3047bc85527a15f4cbff35ca00302047c435bb50066306402301cfc0bc1994bed20bcbf33bcdc290a78ceeb2bacd5535d8e3a714fe234f7c1c622b830390b4bc23a36af8aabf4e9819f023073161db02aa8f6250599a4b3d950c121dffc8c7c9532f7ddb9e920b4b24d7094e2eb249c629b9b6fa15546c6278c1e2b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100bd9174012eadc6d2b1f0efb4bc198e0d69044aa3b640708ef361b3e87b6413402819411540f916af9cde3c2b634388d2023100c83e5a73f174e7230f8085dc8973aa48313bc587e60da8f12b3b69dac97cbd4776b7e25aa9e6614ba8570d317e1a595a0302047c435bb50066306402302d89b75601b929480c1d54824bccfa63bffceda08c8f1fd7943952cda71f69528da89c9ba97080a51da902da2bf173bc0230428c86e08333cbf023ef1cabed203b9da27b1710ffd9684f6cbabbd6adde36ccdb061b0ffa6ec67c8a2ecaf975edf8290302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e6bb2a64bee4ef3c4334827170d1b4acc8eeace05afc1de312bef516bae072f5b5ec78ab320fcb57012566c6724fda1102303a42d26bdc686a827689747cad906083ce07843536cb8e6933b21b566ec68982424f46a48198c277c6c06466755ddcc40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ef721cba2a78a29357a389bab14324bca77e533e6d46fc66d6616c237ebd2ca710f212bcff48183e03f526c86343c24f023052934d83ee4528f91ae7e4d298136a7821d0bc4d00b08f40e62da5aad33eb208a84986f68cd723cf37f241150095a9d40302047c435bb500673065023100db3ed99dc206ccd3661af101b14f3db708d86d4535696c279b1e6e7a4a1eecedd7cf8ef408e43ddf33ce3520d905a21d0230635133403f47ec7e03da3785c7c2bc6ad7b648c12dedf95428dd5451b88a30ca3078de804a5a81e3420094842bfd19e80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ce8badc1830adefb8cb58a7a82441b68ea20e9e0a3ed2809fce63cf7269c61162193de29e3a51c13bf65015e2a63ad3902310081f69a40c94477a405bce7f02531cbe538a4568a16a537acdb2f975c8b647d3fad898df84d62bc5e11f3f2e4e35e47da0302047c435bb500663064023025e9642d7bda9610c401e250c0dc6e7aa499c0b7bc61790d90da3c21cc9a265f8d73f3ae1e15859a8b2b9e308354aa1f02301d12570a99fd463a25929a40d941ac1234729bfe8b6848ce1bedefb1abe321ee0d7bad8543ede9e81c6cfea558f0eca60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100bfb728ba5b290017d99c8fa9d76176d82e13f26d61d0bb4e896e399f01fbeebb778c9bf43875f63bfad2ec7f038af82b023100a3f8dafc6b71ef966618bd3782acfa5b344d11bc241b4d24d4ca7a14e725a8b7e35c746f77734f80bcb4e1fbe66325f20302047c435bb50067306502303400b19b63da4c421bff18e8cc0261b0269ccf1613220caa1760f17aa48c1ea4f7f0b750c9d6f6388b1c568609b7458e023100ec011b2f3464b0c8176c39cea9f9547f226a86d7d36bc2e6969c046d7f613cf55193ee668fb2d6403854f31f19d95a010302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e5b1d054e77103fedffa34e278ebb6c09a5bb75af708cd4b644c440098b2009b11d81189f02a8a24f939754305b0242a023100b5029582a82e5480aeaaffef72d3b7352d8faef15971075cc80c091cb8492542df2ecfd48fed115651af88fa46c4f3e60302047c435bb500663064023063ae8357efde92bdc153290ae03beef65801476bbbc743e0ab2e15e31f64d6bba330017a6eba2ceb1ad36ee362fc623d023076c4ced658f5a2db906856c208f1b5e0efef8eed1d7f9b707871a004fdfd8f81b395d2a018f548cc6f544dbf7d376eea0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100be033f792fbcd89e69f4d083f5fcd58edd1761f8f194c90d1d87462c1bc588dbdfe3d73f5e2986038a4455c61ab0463402306a8048c24832f4cbd0662291bdf7cc7494420a44e494ba29604989a5b64a1094dd21efb94f98bb0c01f02d1993882b490302047c435bb500683066023100cecdea59355322c71339411423dfd829b52ca1c1445a4cf1249f9d3b0b640d08e375871454bc236a9a5bf3c85abb9d25023100916eec8751dc7c5583a5e13bde0cf9659463767897433543d2026e03ed17b669db7e09f731ed1053c057a2e0613f24c40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ae32a462443cdaa2ff10bb702527ff5eb044c3ee5cf2ce07561324a5203b6f16ac891972d025231e9085f5e296d3a79b02303752a5badd6c60abb5aa54ac8ec4f976635c9a59e5875bf8f86971cc36281fb00b1cc31aa53a6c89065a4e953b26d39b0302047c435bb500673065023100ad0c483faab31a07c2606fb92afaeecbcae0f8e19b891b12b9183d6ab873476ab8cc98c2572da4695ae97f56f4bcdae1023033b595e8d1864fe241c8eda93b8593a69160d71db0f9fc7b22dc61cffde1d0750c375df3a2c033934fbcc8d3b551ac300302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100fbc14c4dfd2c130c913442944582412f5d7cb00147c82fecbe246d6c84f064c150101b2b3ac78bfb3ad476a33392ed9302301b2a9fd533ab1d4d5b0bf2799547f414ee5dd75b66d958c4458e80f922828175d89a804eecada859ec442b955551d3f60302047c435bb500673065023074702314261817d5ade08a00e734adbc812ac2eb58e2139f0ad5d87fe0db7da999c3dd9faebfc7afd6823a99ed8b1956023100fe94d5fb5a6154b5631391ce06c401b2814efe06edc0f717ab052b74214a51363d8b81fc6bebf86f8cf364f20f9b3da10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230790e42a89b470e68f7cfea2d8b1da03bfa33e89b35b26dfee1076a4e7928c98d8114009fd796151f83eb6d4b0778486e02304eaac62ffb74ee2dde30cf74ac9d61fd33725600622b9cf0851af43a346f2d6317b8b7db1adcc563fb747553a8b56ff10302047c435bb500673065023100e188fe88a64491f48c7dfb821eca5b5a609cb94ae60179a2473a468dde18d346a440c451ffa1753836088ad9023c6df202303833c3359faaecbc644a708a45a77cf43a1f7cb10f1e5eb01e8eb0465809016bc1b096efa770471130dad10e71be600d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ea3708e52bb82f9fafa01721471b6989162d4acddca68e5e9983245d577528f341099994678e01f95ea46b406c30f5ca023100ac1e69573b2599b11bfc7c48df84df1dca60a160ed4e56d0e8b960737f7f8585841b6ed48f7c3a0b8bc93c0ef274de200302047c435bb50066306402305ac38532dc36b208b1bf17827c3a685af50cc894a3a31df03a855bbd25dc79e0e1c2a1485f59527d25c116ab4fd381cf02306975f1d546b48ca66241c5687d640b53a48d72ec5430e9b937078291cfba303169f326514fbcba58a18f495f6213f2ed0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023065b6a5389f898293b44360c85407fff5b53994e646f3190f91d37d22f7e534858d96b135d71a96e48dcd9aecea3ee008023100dc748d050795991df730f0f8d309cba7e518e417cf0b2be4aab9e49c9a3dd37862bfb2ee5a6b92256d237cc1c7a433750302047c435bb50066306402306fcda1b1df5deb305624f4402e7e5a8f2a41e4fbd3380d3523020067cb5ff5c8f5db8d658a2225b22c426f019442ab55023035b2f9aa33675c49e9e4622c10f044c43f1bc71d39e80e9132f3001930a8f64a967edc6b0ef44da5ee6d7519c7f766fc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ff1913dfaceac8a8b344916e9467291f084d64fb11636a806c41e8a059935a27f4f841995b4a0d07b24db5d511ac2d9c02305a8ee1b9f20de1a1756895c50a548793c8449234c8ec4dd666a5f100305cf2ec67ed45d4af4477983ffe69b1a9c6d4df0302047c435bb500673065023100c6c302ebceb424a2a216af3550c0719676ea352c0ea78a2f1707ae78a4cb8d492e676c38a0e9e875bc6c95c462ff4e1302306dbfdc0ccee44d2da92e0fc1a2faf69b14c81e3741a9c1e24fb1c012a905b0404d538234142ac92cb2df5a9870ab6fd20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100fac0ee4ebfdc6f3208bc20c15ef9fba03f9dd2f24ab108284d0389bf4a56c6d80a315fb17ceb047c0b9413eccfcdd17a023100f4bc9eadcff4e12e94470108a5242e84b3eadcfd5f0efb29c868f43a0daba8d19c4abd71b78514e059525a897555211a0302047c435bb500673065023100def7fafcefd6ac70c5dd0a60ca564f4d5cfe8f6343193f6d2ce55414dbdb4336b9d84354d0dfde70de596ed605ec177002307119afb4c5ed7f3e12eedbd01237a8564564c6b6e9bce7f379242d327f594e5cce6db2dc49f3f8b9cf2d8d89758785080302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402304996bb37e21c6241704c37ad7dfa65eea14fd883112b0ac363cf356b0c470649967ca62d3bd18077946bb2cf9d16696c023059ec0511d96d7db2403a935ebf1d2aff16b8225a17552d2690d9e3cff1f3c499d10ba85c4ba806d53c6ef393c86af6580302047c435bb500683066023100e0f9c07a35b3ee317ce366a6f2db6a584a5fd40bb4507aff3968075e3ce3732b36cd739f404144736fd6f6ec8113b69e023100dc2e887ed6b885ba0aaa36932997e793e93f64efeed677d7132db07d3bb602120c7118d649d876f9ebb05df2ed789f150302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305601d7b45da04b509acad7d7d3b3f73ccc04544fa9c2cf1604b17ce95dbfb7f08761beb7b2302ec826fabffad1324a81023100f6d82e1024f92f1a3554306418df6dfc5f5d82387e78bbb702c9cc7a7638e26f575e79a83a815aa0565469b3a48e44690302047c435bb500683066023100ae7b7af881788a958cbcd74fb25160dcda25752819fc6180d221f562c232173942d38074828909bedfae2b19fddf93ee023100e8db38eb404f793279dff64db28a656ba38b7ed0f66d3003782aa837747b6e48419239cbf4023790297c8890504f955d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50065306302304f7d74e1720784884a7a9634199ee7e6792d02024eff7abfd9a7e87ac5bbcf4ab8f5cc8c3d3b981c53e21c7c73c1b2ac022f21ab5260b470b23795c97825ac50752e9cde65dc54044673a91acb34a1cf4791f3d340df171a081419ee8c7ba20e810302047c435bb5006730650230405cf85de15b2252d6c1621cb4809c9c651752248bfb2aa912c11513a64b33c763da4e7ef424b86c10537a3cb2927cdf023100a735ef7379a0a4d0fcbaa0d277e1cd2126f66b39dc8852061df43adcad37a071443077f91577af148650831512ef851f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023076575ba88b84a41e51b7f6863b0059a9a694a5d09f6e2e7b3120c34597a77fae4d843a55a9de79a3b0eac36aeb954203023100b1d5db30c530118534dd2992260884e54cb64427e944bc86525a7babb377b481c353acbd247660db59491e8c3526fa430302047c435bb500683066023100b3b3c3bc4880793cda8ce89f645c2711fd7c483b45fda26d0a18eae73d75ac61ed647431212bb9ec4f987f4677e3aada023100b0e6b808981bca2fbfdec6ce50721f1610acb7a0253d36da28499ae57c7bf53d01607732c695053b45e72fc48c2b460d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f7188461097c62fb2ccf4b5431374dc515453eacaa0926804aa3166b1ad6f6ee0f1f45320e8a6d8f3b06c8a526eb8242023100dd9d64efbb9ed664d06d5e2e9a441899591c34fbfc4ea2679961679ce99807824c18d2c76f34c23706c624899665598a0302047c435bb500683066023100b1b5c5896ae8978ee2a7ca52bb9509414ef9329aa94deda5ff1978be4b0a6f5bab39d6106e1167eda53e5cdfaf8c5dd702310088357daeab225d2940cd846764c53da56dac9689ccf3813ca666589c5cd59820dd468d0a612259f44886d7a12ae16d670302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e1f49552fadbe3bb9514aa64cae95df4eafa9c734cd7bcccac4e4c3a48346756d8b7256de2a02100af00de354121878e023100e53ffc19f70ad1d2b1bcf14d0b44c938363a4bdb4ea855bb9763ef3c3214527506faa4329c42cf2b77c7e089affc6f0f0302047c435bb50067306502307c6470f5d562282b7f81aa99446c805b4f5dd264af022f64f15363f6a83185263b6bcc1fd284f0f690c3633f558b8fa0023100df81baa0244d45b7bb78c06490dabed55e00310c451902cbed989ade41ba5d02aed7a2c63a0fa485f97a671a5391e1bc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307be4ac48d5c83047b1c393a5f04587d9913bc433496281e57f90ca76b0b11b9670043da26fe2856855d5e56c7efca76a02300cf2c5f216b9d5eece3b0de846d0e038e52335d06f6d20ca9a080e1c1a3b10da141871c7ef92e31bd89e9ffdf79780d20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b357fadb0661d5a1b623629a36c94826a7823a57a933dcb2ea22c01c7d3a94d83a552d013ce8bc2e7904ab723333f60f02304f98d20a783d628569faa91559fc4f9222ce004c27f08114c85350e4a91876f2d5a5cdcbbd960c63dcab8ce4a659b39a0302047c435bb50066306402306aab5bc58d539c56125cdc51b6e62d46e2d42b9264a0d590249559a8638a6839b92db43a6c1613255d8f146e174f646e02306771bc50e90542aea35d494f39a9eb41e0a4d08e0a4a85b3cefa30ef7a822fe3e1190e3fdb9c1fb23ec9a895c801e30f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302694281a72d9dd707dcb520c0f3814313a36b8437b7bcaf45fdeecb16b93640b7a6add835b33c50e9eb946996d699f7f023100cf7ea0be43aa14303cf8c732457f54af381c9ef8537016c35ddbfe864e25071f8df9f3c9d18070a7ca5e787b8b55bf3f0302047c435bb500673065023100c66c25e69432a00f4066dc6f9221122bf191c9d78db4f336e0bafa8bb4e5848ae254b5ca9cdf8f56078d322dcb2bb4eb0230347deb237a21cd069299e0608e2bff26768cee581e3bc11566e7f79e9c02f5e550ef562a2c5cfa31dfc9a60a63f34f9e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d8f920e697b2d573f09067b7fde94bd136424d14689c128af8a1ee7f94683902b97b1be489b62f5a4ffe0baf27f54baf0230564f4c9e5969e16ab05aba51ab6d17ed994aee19703787185e8c8313bfd3a1bbb5d8d48c88143dab7e3e78bf1eaefd590302047c435bb500673065023100aed41b440dd2a2f7fbdf2591089bf5eb28bf37be0f006f681c90ec75f85add6afe542dd7aded45ced71cce9b8ea980a002307fd6a165ccbdd361d756a0870a5a5b5122e1f19db48a88bd1681238f281683b5868418ef094298e1e2bcdac661dd76050302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230027c1967fb0bc443e8c26094ad703d93f047ed1ed6254c37427808a743f46ce6b1140ba9bd943671803fcffce0e9f57702302b7f067ec7799a5a6c6e99d31bf3bb4545d3d884b952dbb9def023780493fc4a69ba12623eecb6559e7aba771ac0276f0302047c435bb500683066023100c49cfc8c2f405151997be7e8a16b1d2cbe86106a979c8ebf9a411055c99ff8138ef4e924f0a0d8cbedab4672fb61bc88023100ae4aa6de43886660e8b1568817c7b52c3324b6f4c268a07dcbbb258422b4edaefd9830faedc94fc0b2e2912f569985910302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d40274c29bb4a4ebfb05933729ed7703551633816c5c9da00c1da4362c3a9a442b0fea0d2936e96b9cbc82aba59f95210230526b97580e73cc4ca7e46c885651774663f709080a95432653dbc669b92a41f5c50f9ba62b14658eed2534215361bf7c0302047c435bb50068306602310084a7e30483bf3945d53b5ed1379718e8dbd5a9901affd1823e27388a7072aec37a39fa7cc98400b542d2eff29bc72f17023100aa449df1d994c80b21d84e9b598f8c57730ea09921cd1734b77f05a1ca8afd5a31d26e5a668516f8d6f08b7df55da7f20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310095c82b50b440f2af91768e085fabb547ee784d11f661b2a76791fa3f4cd7112e86ca82f4340a2338af30f1205fe0fa18023100db954628094fde7982781e6cab079a8cebc5ee4bb6091755508432fa43a4b8cbd247e7a53e4be3bac901011f3b2b911b0302047c435bb50066306402305567e2792264b8d3e76068d541bcde65d6e1b1746a3d0fdac301f50e4866ac8693fb766759a289da0874be4bd8f6846702302f6e126dc2165fe28af09067ea564bf2f57abf7e89852fe32f4663c6639e1cf15548f21f35512d48bbb6695545e73fb10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c7aa6c090ef5cabe17ea9a715fbdd898aa814ac09d5857084171551cb94d589ecbe51291c6bd39b8ad626b0cb0cbffd2023100e80159489f86ce87ce9a49c59785b05ef1effb730ca94249cd9fc6ab0d201b1bea8d58c8514b93cbbaedb0fdfd08c8730302047c435bb500663064023004af0ba5b2e8e8f8ca3c3a27601a4f98b8c45c2a314cef8690d7b4d264fbb0e3d8bdf86e3f8438bc6dad82e5ccda7a7a02306965ae1e57ce61060878d6bbd8b2fe22f7f531dc220671786148beb7fa54ebe06ed87cc91b8ca049e2ab3ac5254c207f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023001b841690ce6f15f2f4f3400a022348e6a367762f80334823b34bc4c474b4e19bdc8575103ff9da7a748c93365660add02301feefa9ad67d88741f267f9498b74a3c5cf756120b2573411adb98fe97ba30940563f3340973fc2804f9628ca9f4bf3e0302047c435bb500673065023100fd9928458bc49b45729323e8c1ae5de9cdec834819edf222ccd7e5e4848a175dc4266c9309234675b8684d866cce4b4c023055849fbbe87bca92e740b4db6a062b7b73a7405a96a92e1ad2123e3e38937ea7650ab9fd060551071efb299ad19b80dc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b8433a262f1e0dfd2368a36bbef59bf91e7b3de2ff53afd8ba3005c0fb1db696ba0a474e6039046c832a0a378f05cd0e023100d1f7c9eef5c71e9d943fdfd66c79443ff15a494cb97f6fc1bd8b075c750e0933b01502597b5afb2212c80dc162b5143b0302047c435bb500673065023100a5f327b7f1fb5ebe36af12740cb1693eccb4965a40415a1e3ee62822ab78863e357b8fd1b4150aab05d8920654ed8019023021279a3751b7b45435b40c8997a65975e5c6d7bc07704e5ee63a6b869b9f131fd149ff06905ab958f94b62f3d9a1acb90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300abe8662a8ec3a0d83aec51d1825d2e1c369b68cf23dca63e8cda7291fe36a639216c7d20a31b2db49eb178559c1cf65023100ee3068fb94cd767b4b8e39c0281a38231dea89fd11b805d6086b1b5171d07ca15ac6fdbafb8150808c1b03f57d4f5f0e0302047c435bb50067306502302e1f3339fa0b014fe6d5b55ee88036190b3e80bcf50680e69f1ef0e16216eda4bb78a2603ba9a10473012dc100a7be3d023100df9ec959745f4678155fe27b3987ac48f50ef67da2e15c7d692d49ca6204e61b3b6a4ae267de0e2903eb76160795c4230302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230771087f94c203a6c50e1df96005f8eb0694642d85f58af4eea1f0c536c95415cd23000958817e2e3b7b2fdd884a570bb023100df1f2ee1da834ba7fe84a036b54af957959d8105c85335440fc1d41f159bf4552d0bf559fb0191143c869d9cdaf101090302047c435bb500683066023100e50fbfb8bcb69524ef056ef5f56cae1a0264668bcd0f059e83795cc43421f13d02c8edc3c60d3f62794153ea81deaae0023100b4d28672990ceb35588a34c99430a96a244afebd56ec366903ed5621d7ac7b6349339246f5090a4244ff08926540145d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100def20affa4829c83d6a3281d399a30e7876c748123491baea93e78e19a9a1d90c6415b583f482e9b1854ce259cdcce220231009ad4256a1db2ff9daa25f447e7b7f4b8b5e541f936b879ab3aa17156d0b2a8f3537a29b02bfb295176fdb2458c1507650302047c435bb500663064023041ed1bd08bf6e28feff2c4a3b8e2e5246dc1be33cfa3c61c047d359ad485947e150867ec6216f46f4bcd1271e8f3ca01023072dac0a555a82ac3a144e30fdeefced0eb37e1aea1c07477a14a5b9df76daa5357a53dfb2e07a0cef13419e63b2603ec0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402304e1d521f59887b4dee45a32d93e6b1a2b2aabe882fb4e89b05836a979d2423cda29dcc072c8d293360155242c0b1728f023024263ea7156f06e518d03e2542c621136647ad42700910ace917d7e5ad51d4c218effb6cfd75c534efc34ec3bd6491c10302047c435bb500673065023037a33a4122132ba3d547376128658c5a8e612ac08f876a8f5142ebb4aa033ab10b1c6e5d57a0dfc6120bcb694b409c87023100bf7218534d0246bceda0104b28a5dfcec240428651c75c0cd92f87888879502cc9dece43047246a6430edc15e3430c9b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023070ea1f9396bdcdea2ceb72e25bc90b50d63b8d09d2b9e6d10c3e288ee4d2155bc87301e06748c8514c7b384263ebf901023100cb3843307ae6e74b37c55bafc86729b4566e6eb2f3a5637791ba651987a1cb83ad3f609b565281a347c2020935bd816d0302047c435bb500683066023100c61be8a51b4519781fa6295c74ca5ce08bb2438f74fcd295ef59eef4388215d34e35272fbfb3e4e9fe51cddd4feab74a0231008eb79066830dd686bc4070dfc22182e3fee1e2cbb0203fa84f4beb3044439c5e292172c95c8df90bd4a160fc7b10ff1e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e3c482bce1e028e70a5100738fe9711d6824bceb10d747006f28c1d95676aedff71b7a310f039bf41664645a5e75ee1b023043f85c6e74e4232cb0516edacaf6283a95bade616e1d99a3f9c4dd5decfb49c58527d4a3a3a4a4829754dd2b4c0877f80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302b4a300207c0a6edb835be37d51b295d2d85c69307bbd38cf17c07d9c1e630a8e30cc7d5d03abbf009008914c52b9e5f023100908641605d2eddc77be67544f908172279532736166a184ab3cc672db0dcf11ff75a1850b9aa1a4f561829c45014e2c60302047c435bb50067306502304065b0308eb06dd1835757ec3fbc2b6e1fabc12b9df8c29c9165b82e6fd413b9e0a16a8949701185ff6dd4f701f1b4f7023100dad41453b0175d504e95040e9a63c6e052d44d6870e5e09f6eb59c6cf973e8160abce0bd95c69b5501c2cfcb2da4935e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402304a0afadd593c29142609130d4e59840b65afb4ae7ad816594e0f85cb621a08b3751eea9d4a47b50c206f95953066c422023073352c81afd3d90e5aae7ec8e06f46f324a8a4b81cdc6a56a5ea366f18056702f209149a28c758305270fe0afae261490302047c435bb500673065023100e412a9a7524a083df7e23a339bea10a73499afc539dd2695c476ca1de88aaedcc8df8c4500c7e3a47d2bbdc5e2d57cb60230447fd82de4e0f2da00cba9176ed758d23ac335b6980ff737037256f196fc05ce2c69b7cbff3b63ff3476433b1d17bb510302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d70ebcd3132fb4489230a8654316343505ce81f14b81ff98128a05b323d16fb1698ac368864543d40b00b059a1e7ac01023100cadd79570a702f07d3759a34701676e6d55ca47697e359e7ce76504935135657c6a297ee497c929cf50032edefddd7140302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100cc777f392737df0997671a0b6b489538576210ffb1386f5c080fac0dee2d712da473c165e1530b488a144431b10f98d3023100efd8e483c8bfce77b3b4a195d9664709cb0e7c03007caf3ba4e924a247148124851abb9e6e4e763edb59c6d42c692d900302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302ba98144ec4a35e463f20489dfe113e0b7b0f1167236c5741ee9091bc6f574690f1c7318ec4f1c59de4ee4b5604b468b023100adaa4e33f326131c06b0adefee09d329ec57f6d14110de8d24af9424a61020b9eca5893659bcbf2b6ee8e2c86199e49a0302047c435bb500683066023100dbb084e0bbc1d9b9db5704830067199802e9c0fa3f6257e8f4d6eb20db09fbbc7c428f6b346d01c0daa46a197bf7c553023100b9562662e35fdf5ec6775a479b2e54fbb37a240e4f3a9ebd22cfd4939361e3fae26db2dc1b9d673559bf689c52ce82800302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023016f56abacbc6e2bdfd48ae001781c57a2c8434f56ce02d759adec22a70478f164ebe0c05630daa2d9db3bfeefed84bdb02306820960a83f926e52cac411f8d8536dddbd7907717b3da38c020ffb516e0980db4adf86ca17dd4edc05a60685b84d0720302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b89aa69e1916aabbb0d3010b5f71b1931edd5eee1aeef52d7e4e3a2de1d51796e7749c3aaafd42519d55263ebd3b7d8c02307fd1019c531b6337c0d98b89d710b1a20ea44b0e5d11f0687a7f099988721c535884243b1738e9d86dff8ed2d7eb74b60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100aece8348cbfc6142f7e36df3dd2de19f3e6d08fe2836234bf334d366fed925408b6cacbc002335643eb41d0e6a5a653702310086e9930668c4d00050b1c5db2a3efa4d4f24532498684e5d37bc53983f3b6371bc82c67f51e98a58c2f1887ce0b4a3f70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306c249f01b3a1751bfb04d20e9c9e8f6bdc988f5f0b79f70b57f1306a32d3431d998e1e36cdb66e0d055baca7394cf370023048470c2ac3cf8a8b3d9828a19f2915004af377d3cfa78438522fdc392b7866e174e8e8bf4cfdb96936e9d8fc6d9924f50302047c435bb50066306402301f557016ed4739a0c019d17f9771c1d47aa8e18c164cf44144314a33aa447502aecd5d2cad66c33c6dd544b405926fd20230162b0388a73e12a3d28f5d4e5a5e3e94d6baaa1eb47aea17095f63387d796d7d907e99b2e1b7c618897e3a912abc0b2d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100be6238d46cda7ee54b428f67f62ded628432824b1406506414cd3d785515e6547ef72fbfb0b418ea42842e7fdfd715f2023029f7b7cc03b46c80b13cb470cb02426a575e4c4baef280e8eac8f10351df87b80959cf7a85de7a857aa06e11809c90310302047c435bb5006630640230198937e135035ab1527356d776a4bc1765d8eee8165dd8e2402657f95edbf2c9c038a7af7d4e0b34395e2c5fcba7b98c02304c0fbb0f48a8b00d737fcd118b95f4fb8dced5855a6957aa86fbdc61b32b588bdc4e08514f47f4314c4dcb0e1b9315ea0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100edeaf1dcd23dbe10398963948ba9c00659cb177443f22e46d4a61f49756632d22c832493544bfb0b8c2cf3966001c2e6023071d9136b939d35458476fd6c113be929881534029be955018f10c7340dbed420e2dd975e4a03da6fc167353ce9974d010302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f3ab3bab1078e9f0ea2c896d7c7c9d551eb917da543b2dea783e176d263923ddcc7d5ac47eb27b120d3372391307dfcd02305234424025f23d8bd24214f2fe578eaa163d935a3f775859ba30f88ece24f7782689e77efb4decd904dd33155d1924a20302047c435bb500673065023012bba76b8fce2839ff81be724f29101748fb704c3a857dc155b5edba9cb174457f250f342c4fa00f058a330d697600270231008617009779a8a89c490e3bfa9fcf44ff2d0136621afdd00c9afff000f77cb1c9822e5c534c94bcaf608829f9448c86700302047c435bb50067306502310085b6e7a32624ed021f0b20407b9d58b46c652f29e1b92df16c61d96761f124e32c207d5314f700a08d639138e6e3388502302e007bf209efecc0bee865917e35d19057eca0e3859cd7bbfb7e8b2602c0b45bbcd616b4df37aa0cfcbd6918316086c40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023057c2a0206ecca60f271e8c8c688b83709761ddfdd69984c4e69634fb60850cf53931af35d628e0173070890e7a40f7dd02302838eac4a53871a2f5478c07c4780199acfa3a2ff3064de16945bdeef1bfb42233cf8cb746cfb448a8d86952877072e30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402304a77765c4a8656b4b11174b15ac2a28932450a29d28c79e02bf1683696d57668691ffd19bdfdd5a0a0403ca56954a8b402305df26680882a8b74c2906a236e058fcfdb1abb75904d5d8306e170757ed8d8e9191c969432c6b86ad6f3ffbdd43c31490302047c435bb500673065023100c5ddb10d892c4a94e9bd054d061186742731ca068cb273cf1737ba5d9d726ae971de7dfaf90b2730108c4fe6f57d3bed0230618fff6de78180ec7b326690a2cc46ae7f302c280a243a8c80959cc73e2e07f8b99704fad8007ad536dfdecdd139f1eb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100fc57b998625859ca8d9cceddf99725d0c37a088b32988eac7113c3d2b370812918ac7b5ee949653bffa64ec04fdfa0ad02300dc6f256fa8f36fad57efb95699edab40372a5e9b1dbdebe2d1196d0d897765e62dd9eda54e8d825c4a2046a4a64ed380302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b2887e693dc61d7597ceffee330918e5ddf85f1489d308b760b70052d6a6fa26bcb9ef466936bbb357c0427057febe43023100f604a7c8e28e1213873b87031aef7d5a64eeb27a1c1855c07bb0a661c6c94a4d6c5321c3e832759f7253d5f070a658db0302047c435bb50067306502303157e295cc4415917be8fe472128103b8abb4b3d3b4c656f1d9880cb87133d2bcbcca29b05a3a73a5dc3445bb5e258ad0231009a17001005c791e0bb230131914bf1b03f3f59ab25733a69b8ccd908ca04718dca130b74f7859f9dd78830b24d807f5a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023057837fcbc04374f6b88bf080f22b20f161a62951dcc045cc7c5fbba989e1f5eeca3734967aacc64f8bcad739c5aec6b0023100d86c4e221d4db590ceec262312737a970bf788611bc19aa0696ec13e3a4a076e408adeae7efb447e25e9527254ce51620302047c435bb500673065023100b58faba059854b0225d61743982ac7d609494949255ce82ddd8011a7da07be60efb8fc96ce7233fc1f9b2681c8dcf43b02302545c27bad45ac3b5cc4aa0a4d1c7cba3d6fd6c574e75c72004d081913dbc5461eb0a0fb3f6237967e50e8b2088b69d10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c7079223d5cfb0a196e8d0d06b0dded853e894e53ec873b5f77865e8cf895d08314716b3e9fd2c470c2bd9390f8f95d5023100936dfb0d1c50758e4d3f76392aad0a52bf7d645dca748a3522f3a77f2d12948401eecc3d665c46987e6392a973152a000302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310092d33f127810cf4a05dd1849e9181ac862b7834b3287a768522b8ecc87e808486a5db9101dcf49dd8d34ac45f6fc5a190231009f1d3f808b8cc2c97e2b5d5d8837054f7ef1778f899e845736319b7a57af9e87b935a477e87d2a723dd789e91514aa720302047c435bb500683066023100cef1fd7e5c1b53be28054c36760eb931ada0d35daf2559d28bad61dffd841d5937654adcba7937f5b65c50639fc3788f0231009727601a380824d9eee0f63b81e9e6aa5992f629d3bb49d7bb640566fecf2ad6d234b7633174cf55ec523a51f6397ee20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303e4f46879cede958e21ffc070190d1297046ecfbe075d98f87564a2ce707776eb6cbc7ac8dfd05617d7f84fb47c1e194023100e12d447b650b9e4154cf4e51cf2edcc1df30e8bec5058e5f1697ba68d60d7b588f45236c3b9167344dfbcb3e57c30fc60302047c435bb50066306402303ff5bdd6d391a8efd54c7966709572d189d86ea8221e97961cb3a2cf0697acd6cffe3c9eeb7fb3595cb90c1939be4730023060f4b0250f21a53b90910743600e54b03f8b9b5b15017f970e8a838291bc91a1d94c6a6fae5e8e600500a3bac4373ea80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310094921050130ac53ccb0eb7ebf5bee482be453098d072b67d7d158014465b4bf751aeaca91aa6c8dd8d63240a0e6e9354023039f62fba1b26cc2f2cde689019e90aa158aabb646fe17608477e3867f772ed24df66b4827439d55bc4f1ee677ae9237f0302047c435bb500683066023100efe4edccde8f9cb5bf39aace20edc8db914e04cce49d4b547ffcd4c4360da179018742f84e0891134d276dbeb5c8f3f8023100c399a6d03812df8ab05e5998730781b8c36a3e3e003772ae59f1406945e260e6c287f4187229d400c936e8f1cd6d54310302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c29f98e378c0a047525c21e755f13bbcc6930632511a51195a6d4693c300978c764e8410c4176a3f1465dbc50268aa3d02303f09631e021c4d58a4a936aa1fbafa09d2d959ac0eaef44896a0b92b5ff3c2fe06e94ca9c72600870d4751a74b1701060302047c435bb5006730650231008b668ae770999ebfb1d7afaf091208666e7ca8784f31cd3e82d0c912ace2def9832067b318d890a9d80764720e0812990230305df1fb6be298066ca7471cc87c6fa118e2a31f25d16b02ef47e161b0c454b780b29426717f578be400e7a75c051eb00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310087073e4301fc1cdac93f6793243bc6535455aa390f08804c825fe448edcc88d42eca2af787eb63165b91d7d0e2db26e7023100b99698c7f1eabc55ff2310f8c4cc9a5f01d332d46c966350905cc952de666cf6a0ccc6fe2168efe7e043ae146cad19a50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008a238aa12fe5cd89a91b9b8c95de0ab2c083618ec14d82ffa65709567bbc75f3057d31d83228fea1a90bc4def5f4513802302624794bce4a84c6a39eaaa0b25e55847927294f0277895daabc8e9ff10cf0b817cc518aae7d839b2deb1ba27708ecf40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100fc183f260572a06eeae1d3647524fab0de3d14ad7d46b342519836a224d2f018f5d091bc3cc57cfaa23aa584d1debc530230554451255ce974074af8719715089fd10dc7b7c6005c022505f11d2897f76c253d5a0008114a1aa63aa0f8e4d699edd20302047c435bb5006630640230535f5210f57fee30b2c5d1a2a2601e6fcaf4f14e0337ff8177582c71ee24c5823a4d8f72f405b59003a018edc52e6273023039e7a73f340a1c17e4b28a1c29a6ee00ed06e17a7ce00f0d80be5ff97d905ceabbaa97c3b2646b07857696b43321ce160302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301eff1259d0722ba1d5f85b430730e39ae46515f5074a13fb7edccc805cadcddccf38718502873ba9746ca5fbd15dde200230287793bf50a778e8c3cbd96ae64ffffa57b2ae1262f23e674693f13853af7bff1006ef7e1d791efc4276e06344d85c390302047c435bb500663064023026568be1d899c50c99b72f99a0aca10204c116f943f5b52ea5dc2508e8ee490707bd899a63775e405a81de094e11710e023004bc14253d92d042da08571829c923aa7e47404f30891382d58db6b1e192df4a145f4b3f4d4e5027c4d50c6f10caf6df0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304796cfcfeb736787a4f0cdecca4f0176ce3beecf587c167358cbfd533cfc9fe72137112b0b77b42d30275329d532b676023100e63e2443f8e43f57215b99115cb0136d31764b3f3bb16c8f26d0c550826e607f4f68b85bcac4c83abf43735cd9277c4c0302047c435bb5006630640230432470d0696ca552d8c5aa9f1ce74dd4ef13c2405358396f732987bad4c20e9358fe87a790199b7efa23b41a937ed055023076e516be084e1b11d5e652568fb6768a360c3e9364fc3d4af245dfe1d8efe866ca2189a4608eefb9cccb0361b965308d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023024ea50629ae5b552087c007b080dd39ad478d4cd12e3583d571855b1b7ea01449936ab7628dad32686f947550b8a2eb60230415edc9cabfb349e5e01268c0d862fa7a9e7bfb267e488f855a19c204564fea59c934ce9f7df6711d2d2e0c22f737c890302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a44ea823a84902fe89a9b4d8cfbc0d74276db4ea6b1af25e1f933ac14dc4b21573b0da06f7514479e98e195c5afd6786023030125c67cf9bdde6a8d0180f6db2c4ae8a27afebea1d3723c7d5a66ef5788f03d76350687e24d502201d06d649fa11ad0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d34d55a7e693c23114f6838d2d9fdfce5f34dbfd07157d93d892c12bccb87ff9233b0f1d02abe73785ad2ff47091c2b402304c68fdfff541e5d90103f3968cf2681751a45cd9deb563735d1fd5ee62ad0becd9d0be81cc9d117c2b51e254a3718bcf0302047c435bb50066306402303ba86507135824ad2793a092363505b74ccedd500961985a4ea70f818cf72e3c029418a550b85f68ffb2f7781811161802301e10d2adcc7943fe414a715b7bd9d5e3dbc493eb8b6af1eef2f777105a2a7ee50d519284d3dba924da0d16aab85c74680302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023021b97dc0737bcd41a0d3987b10253b119944df87c957d030ed22b19a249bb785fa080d8827c176e05410f0d722c7ece902301185a06b960e0acef4a26729e6c42289b8ee657490c467e09d2819ea8306577294f2fd67349910f4b1b7a43b0b9238c70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303181fd8fafd665217ed143f2b4a561b004550744803846df2e64951b9ad50dc466f599c786a1fac4baedb0139b3681d602302824d6f8dbf2bdfa2704add36a768278289b36ab3394b29b6477e884c1aa18787b930fab01b2f8be7d1115ab4788bee20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023013c24f929f955b063a50edf590738e099116976f2ac5b8352eea6a9e2de47fd200730c9dabbf2dd2afa21959bb3f783702305ee75026c1759c51d70e13a59688bcc071ec8c8de31f3e8f1cabe2c4b208ba60bcf7f13cd18a9082f63491486ec81b310302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a612a233cb44d36a148c84627bef02f2f40b196de5fac692d8753da7215164b8211c7584b868a712af7b6b4cd5c099b3023100d5e58590a6303e26fee147e1b383296589ffa22f400434a974d171526dabec1abaad5be1d547bd146d5c945ec2511daa0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307815d85af4ed2f4d20d6b377e50094bba942107b8f60c5bab7658a01c4db7b61d283e6730e587cf8daf46adc894512f7023019d55d24504139b123453acd213740699235ea6237e6664b06cc19dfb919da9a72f11ba50844cfb7a2f61ed94896ceb30302047c435bb5006830660231008c3ae84aeb8665bd8ebd18e0260ad7d46a5f33d9c5c0c0681bd651b2058d2f3c1c585e1aae27c65c368bf1234987295a023100efed72935e9b29728a68aa7f580751388a4e059522a030603ccd98308ce3d4c6d7b97a6caa2d6c2ca53733b9df368aba0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302909fdcc641124623dbdefe214815358ae6a657979cca20f258a452a31bd3f0bf612d580ed14a2a4d1bf93867817efdc02303b031ac3b358bf7f0ff9d4dfab277592a59900d4c1d25938c310bf4ed483827f8c7169d5290245e3fc659921e515dd150302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c37c2edc6f29c30b064495973996274b41b5a46e5a575facda05e6dad9d2267ed6ee3df75e9d360c3d8c7ce13c2a27e402302785365300895d5504415867256c4b90c93c4de7b7e003f2bdc94cb56b2b2dd59364f625ef6924461893922c715f043a0302047c435bb500683066023100e1332948f45c7c9a020bcd600e22de781c556c4679ad8edeee45ddc9cec1e05d5786acea36b1073935ac17fd46d1b24c023100e595513e39f5831dd78c0b9bcf0c8deaeeda9bc5eee6bbb045bae3ad565081253635fbb35adf63183c6deafd8aa9928c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023069bbf131e53a8a1b35951231fb804b409b25fafc3ae794a351178e55c3ffbec3c009b198fe9f93147272ccadecd6d3e2023063897493c9ba82dcb34d0477b7605e68fd423dbceab72ea69cbfd403f14241b9c8e9e17341fbf9f3ee5b97cd5a8da8d30302047c435bb50066306402300250b4ecfb16f698553fd78fe71943017ce616340b372a595dcb7c89d34937c9563f2a73a908fe71eef253d920b289f00230329dcba80b20ce80d17412a273fd70dcd7903cbc9cf25fcf43ab472c18f15710e3f3086df1a76a2e94c03a10ed80fc1a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307bf1cbfd2584f71b7abb300f43296e585b4adc58b151b00e2518cca3b6542a8ee12fa5d0246e274a1e1dff5ab0f6e475023004cb1fe2e61e56cdd93d30a540eefd852745a840e04b2d5fc2bd86a4ceaab14755b07d3d3f5cc5dcd9e4c41c3989e9a40302047c435bb500683066023100e7dcdf68a499c191f772e487dbee2303bb7e2825daf4e39d9d1342d1d8af3e3222c7c0a1735b08aeac02bfa13c2d26c8023100ca14309dcf1147792eb18bf3bebe3a21f04ae8b7ffa0f7558c160b679b0accca44c9079dbcdb42ab307b35314befedec0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230271ecaf251ebf5c79ef63e1ef98b9c8a156dbd9227b88f6ba600e8f428f7761cc2db385afe284505a3dc0e8d092c7169023100a70aab22938c52762f3898f0bae27edbfc08bf8e3b555f48206bc400fc2f984779ba63762dcb4ec7f45ae56c70dc24350302047c435bb500683066023100c6076c78f1883e10d44ef2b4c0b38af881abb8cae734143ff97b0b139e74eb67fd4792657be981ed401b01346f02e30e023100e1e2c287108ca4b40bf61e4d6b7383dbf025caa28cf454b2aec015b4df077b3e1cfe0f7a04c6d809f2892bafda93ca250302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023018212982202e25c5a4e1cad5fb31e9d2c1e16233e47a717ff53fdb85fb79ec3abc4a6c5d57a4d7d58d968bcaa0c0c14802301c8d5f9da5abeda6ac957a2184f3a64d2a87f5f59457e8e45c60fb9907163303ccfef88f312ccd86c9f62a7830596cc00302047c435bb500673065023100bbf9cad8ee76e2adc7b3148306b220f6be67a09d6df80dc1ce9d1320d01561de45c2a22b0506242e4ddb2c877f4adc2002301c5a7038b07ecd915a5298d7b26b275314b79523c42d7e8c04c4770fa1b418cb3d5f9aff936a63cc1ef93ac6f062a1ee0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100fcdf0cf6422944ec915aabc49702d66733ad69f07d1903fc2d814ccf1f88285cd5701a044c06117c69dda268cbcc9f8402303a50eadc8f65c6598d1a31f32193dbab614933ad8fe5cda473180ce35905c240c73780cabd0f6724b12b512a40693e970302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d4a5bb14b7b8e901606dfec8f2e93e85f3c86723defe09626c3c97fa40582f2827db6f0b10e7c46a47736efa5387fcf2023021e07c13b5a69ec893b22cc887dd5840963640b71fa0e6dab62571be6914b10509434caa792f8bf3fdb98b7d982f1b3d0302047c435bb50066306402307068d5fb77fad340f8089f136a6779f5f421dd51ec814e069794b75807752faa5cb77a64b82c490496abd15ac3c78e1702303a5e3f56f3b775c413defa7736d7b1d714584e0bc97df3b336d969ade77706aea29c3e588105833a0103e8f2373190740302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100def8ac29339aad0c4d7834346fa934bd6afa97092c25c2f8fa24791c86b89891ee9a36d42daa7f4fcb60a33d4eb2d2ca0231009678c88aeec61e32e990b04f1f4c5065dbd335cf0048f4019e4a815d68206d5abee7550f0dd6d772fc67abb7ee1e29d40302047c435bb500683066023100a4239f7b9ed0a78c7a397d5fd472e5214c65420b424f274a3bb94b28eb955d744a02c6424f34bd4e8651855441e09b69023100cb36149cbf1ee0ed95529c920527ccfcb8a3312023284ed1987ab664142d33dd6daa64c5cf20edd87e82e19e7fac20250302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ee27cc64567f56782067b1bf29795452b4d726e7ae4451626e03c8a8aed5339f8036985dae4698929cae06862166bfcf02304fb1365b8c16fad36d6082a7378851cebe533dc371320286f4f8513f661fd1ff5388a9083ada9a88b9a46ee02d4435e50302047c435bb50067306502305b202401c2ad8e3915fdb4e8f9ee2cdd721953c371d03b79d9fdcd7035b5583cf96207b4070ca061f95a876a6f1bf5e1023100b217aa84c73116841659560ef50a49eb49757b783767e93ed66b72fcfd0411e4c19130bc0df0d3dfd48c4feef1c3163c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f886597de156642b97f41a89af4c44f3b91ab9c8d2bc76cf75d36412cc836a88ebe65da6411f5789f864efb863c337c2023077e8681da7a1506f538ed56eed824e89ffe0d7735338b102283d2bb44c990c5462642c54a24bf3a80d758d319bea07f80302047c435bb500673065023100b6cd6a886446f941618aec7c28dcb9534f8e29a195107b913b575d0a0e9d162048c9c5d9b26a71f370dab6708ff70ab502300c0a5d788e3155cebb8b13d35e2b0a6b61a425d0a3a190634f422f584867136ec4387b083472c6bc74c61b8a02b310230302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304c9bc3b87ad30946ce7f0e12dc9bc140496741e76d40b8c85d2ca00f1df59de9cc8fce4e90dfcc70fd7ff54b872ff9af02310081bda81565fc0586c1044ef8c09d1423a5a46dbaf44fdc21b582250d30316aa1fc94a7c77c75ef9f8e35a31b6cd773790302047c435bb500683066023100fb5b7c3bde8c46761ba00a1becdb411597500c81ac424bc93cc1daaee0b102dbdb946eb3cbe74b37a3404e720d5aef6002310099890bbe705c053ca06794577eef41513664ba89d67a2cbc0b112987842f828d17eceb4c75a1d2d37440eaa916fef9a10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301b9dd8651d605cd84c132f2bc5642b9ac405d6b1b986fc39f3e0e01fa919e52ad000dfb4cdbf3ee1060d20263f0ff7f6023100d289278ca64dfcf3bad68098c5ee1be5a32c8c458790a7870867bbc2e2702043550b9c02ac6f8f6efec6454ccdf1bfe80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100de03f45f31d554a31479ed255580e586043931572534c6f180eeba640259e5a96b0a5248b4420660537fc7e6cfd1b50f0230691084854ad7fd4dafafaa4aedba83daaf30991151be7ca958ee6cf78ec5fb8058b870e6d49b16015b90417dc058607e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305ac4eef10dafe9607add5ae98888270e78e661a456ce3d08a6edf70c5b9375f7b11a266dd3d24c721a8bd56660c3b816023001987eb6fc3bed3ebb4a2431976c903d7cc8b0ec7ef96d9c17e240f69ca0f47b5f69225c1d30eda1eade3d43b4e4043a0302047c435bb500673065023100b6c5aa9595d42d322add937485fca40f6b58e119e72d1847b7b719f5af26d061b73defac066503c920541c556955266202300c2f73dc63a0e1be34498a77e5eb9feec155f4d75bec045800ed1eebece5e2dfd01404f1f73c3abeafde194c5c7e8aac0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b892a30600050e379b446595d9212560dfb95109c5bc4fddfb8ac1b882facd4dded61d2fa0d606a2953d317f9bf5aade023100b3a88b04425ca63e95253bd630fa977e8c6e57e535d4bd83ce1ab4856fcb98c4f48d5d4a3a932ecf8668d88825315bc00302047c435bb50066306402306d3661329213a0ba1c5f13b4e95a921ca4b1f9b29cb22653e762e40547bb6a33a358675af8aaf842cddaccf1812d7c8e02302cda8dfcb58b6760406c695a389f70713757592259654c4061cd08e8ed12ee1c94d194cec215e0e4c624913f167d96970302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008873f03e30a36d8710360d11832b5302060801c408b3376d9898acb0cdf2371663c8092da8a2e54228a585e1c978919602302aead73942ed75eb09a249e192a9310942cec178413fd59badb79f515ef755e16e80ac940df5a49e38d5ad0433fc9be90302047c435bb50066306402301920543339736d7217ffdcb745220eaeb98544f960a65b441d71b07dba6eee3aeeddda9ab06c6200f413a36cb323fba502304d91a7a1f7fe700cbaef7797f8100b8cea96d7a18dbd362d22ac5ee133e32b27a8ba1ce84a624bbf19a931e6d886ece50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302fc7515b0800a6a5f1eeca9815755f337aae26f847a42aa8f1528182d43b65d4bd96833d31f77cdaa75d0da4f9e7d419023100df0a8c7cc78590d2064d99fbc6cb4ef427b3442336499a77bcc0fff3a1d0aafb18370eb91db46170fdd6cf513e90ea4f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023021738bb066a0b67a0d7c04194e90ac5216323a96afd0028df553e1926815e13b224df63b8de0d3f96e60d370db3310aa023100c67b2f7b3cac95709e3f2d72c2063211acdf45a0d44079aca66ea7429a65850e54529caeaf6bb5a7c36cf40b69bfefd00302047c435bb500663064023034c505840d692cbeec66c849a39e79bb82d9b98a3eeac443ae326ca5f0aef5569ef85c8a34ac9ea133bc0950522d067002306cde3cd8d7a679f5363141adcf86e716e76ba9f589420b34a5c89f1f2ba3037cb16633ea69a05b203fdd5b4c3161c2e20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301eac01a221c6fdd8dc331feabfaf8795de5ed7d00fb22a1910bac598c5d12a493f060f83a4e17b2f9976e817bae4a1b1023035ab478e701ba9d7607383eef2f10b7727a4ae1486e1400ceb44ad6fe9b2a7f250967e35879af1a7c358c426598faa380302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f3966b9c4fbd62ffd46be668525cc317ea9dadd88e25ee269170c478e33461cfb3779820c80624981b7d8caa99d30ae6023100cff07795592da2a15a81e4a81d6c6f8a237599f02c373db29342a7442bb5a69198921c1ac0866a673a880b6dbd79f7cd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023033cb367e4b55d255635dafe3471ea27e5ae39dc12766f564e7435e95c18429fc191cd81e3061cae2640e01b5883511900230755bcc31c6a41615a836feb04b0a5e88f7b2ff65a612373bb4208920478333e0fa6808804bb7ab8f259ec91e4632cd610302047c435bb500683066023100c589d4d0bbb3eaa68d292113ac88d8ba142a5e624be2e24150577dcf3b0b4e216f110215561382f3a593ed703f65824b023100a0f317faad0000d9e9c95f1108e85b13e0bcb1b1164e920c1d0e2be465fca86e3ce5079bd338d28d3c2b11942399ba950302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c0760d6475f275daf0712cd8d6feb3ec681290ef06b806556b38d7f990f9f49509b83ae5f96f62a50eed7c047f64593f023100d4da3379cf2230db6b5e3a26502828c882baeaa1f5e917dde2c5bb524c3a969198018e454cd93c00f0c955656c41b2820302047c435bb500673065023100c161a58683da7653efbfa22cc73219c83bc5715df90aeb9cb8570a05a612ccef4aa1e5f21a2625044476b24102153ab7023018c9cc23d8d0530d83e1c499446b1bd7797ff4d13ecc838e0d2bc4d976a308b398d902f8df31015ee036676dbca1d4af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230023a92bb74e72327664e71075d95a34c1541c30bb68cf3a609a44cf321fc504fcb8480a4d2f630639214da9cf57df37c023100e297971089401f5d6d6baa01a6956c84b94b4893d6ab408951fbea35da5a536a7ea9ad767348ccbb10c27b3e3a91dcba0302047c435bb500673065023100c2fcf876465c5c788232114f8163474393f7509ab127d56012431b6f6873f9f5095de9e37a363c7ae74cae67ffb3584f023039c265754bc69d51d3c7661bc6126544a4e75f8cab5ab210e612ed9babef0814e31972881dc2b70163bac7acef2cf1570302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100fa3ebe306ad17be260039b96c08a1d201a5196ee86aea27bf220648af999b93719e012d0100f1fbc42a146c6b6b38b6e0231008eb82bf1ae9bc90b4cb652d3fb60c71cd4b4522551db521d4c01d04c2853f71b5cba1d529cc2cacc5b51c263a895c7fb0302047c435bb500673065023100e260e4438d67a5f23161a8ecead403dad0b06d9139c37313a2eaab5e33728cbe6e3b2ccdd449e3fbfbc3ad1e59f0aabd02307c3f9fadcd4e5a56e43822d53a2ade7d7750e2be37bd38c977b7dd64d744011825671af6e8856f0d07fc914e65eecc090302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230689682a89702a6b50156181d007204a705b7c62f53dd7d5990b271ee2e042f668b45505cac10cc6ef18318d41a2ed370023034c0fe3eda93863c0a362b6989b6d7bf2500b1e21a3bfe07186683c8de8a08edc1d602d036ecee3aef77b9e7e07ad51d0302047c435bb500673065023100b7ddb6dd3f500d0a41b263edd1fe4f3ea40837a842b55e964d4f64b13958d369c576eea19169f8bfb985ff48a8ea6e9702300f57ca9889a729f80cd8262bc3eedb0688fb56780adf83b79599013320c7bcdd41f75ec2cd3231e2ef8c26362aabc06e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230323d2318f2c445ed2f638c394a076057f526cdcd67cd848d32d1a454b54eba622493ad9f7a35cb596c676d07ccea518f02306aaffaaff994f284025f38f05322fa0efbe412d26f272867d3e8413c0f2d9f534a28915f2aa6e5c6b13c6cee32292ada0302047c435bb50066306402301a84f4ab8f6d0df6187dce1874b326a5f7d1565009763ca062b8eb470591ae0b0eb130be397a3e083b60e73d5b4af37902302004de40a5ed669b677c5c096314ac366b771ab87d0dcf653d2017ed547bab0e60d0db727b16cf29f9a062960b155fb90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100dd47aaf761061cc6d9ca07e1887ee447a7317bf94113cef8739250f45795db76d8b36abbd00666bcb67e2683612b6b3c023100f64b3f4e7e8afe82aa7a0a5e8ecb4faed3fbba809d8e42328c70ebf8b7f52a0e0268f00bc2e2b6c3610c83621e7677aa0302047c435bb50067306502306edcc6cf0a5b1df64800197592694489e86f84da5201010e88406256e2cd5e095929f8c67423a567ddc750b8a47cbbf20231009ce0277b974c37ce53c68337b7a2df6e681bf79fc64bddb3cb0013ed13a8cd0a1158b48a421651b958a45412a2f0dfd50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023028fd72daeaed2050959134e1f454ea00da5a7e3c755c156139eed2ec3a13470fe523654e82611b4bc586f4e37c171a0802300710ea064e242eeb3f58636db106b183729b668db658dc528aecac87d936d28280f8affcd56ad53bbcfeba1a47bf02580302047c435bb500673065023026bfda7eca5fcedc8776358025c8550d75c42eaefca6cd43ac155a240c3d6a5edf4a90569fec031d26a8b240ca792f4a0231008e4ac0030259f434107e4165afbbcff1d33f77df91b0e9e645b3e3fc89cafce31cab1b4e3ca23dd827bf936b4f9202e70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b4f976f4fcfac9563ddacf08354031593efa51f474a597e3e55443f4e24e4d3446139d1af7c333c7e34f306f1513edf2023100a14e6a6a118c40309556896d673e6dcd0a532db4eb9ccff9a3e3b20536ad88556fef311a3c460fe6376089b4b0146d480302047c435bb500683066023100ad09e497df83172296c25ee455419f9aecfad6782bbcf9c59461b47e8b5bbef69b326b41062be63bc22e89f8f6f99bb70231009bdcd4e7d19d45ca5320a7cd5cca9b011f2a2d1c978070950c3606f0b3e750696e70da235fa93a7ca9b2887acff1e7360302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305b9e28eb7e00cdd6c91c97287c0f950db27f985d809b32f227428f11121f112135e5ff4bbb89fea47e581d0d2b8a16dd02306fd2ab9da3d17b4c2afa3fed72c33d33c7cb64cd040a646df62087281a2e281ea1dce3ce3ef6c565d7460369ea7557930302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302172727b162e0588523f7a7d259d41fd92c8ccb2217058b496147b2cc9e66082deffb3dcfdff291b641caf08d7ab783c02307a734b6b1956148992f423b4042bfed7d8a3174fa42bb7fe56b4a0754650ced9899fff8d5dcb3eb9691f739e6ce2a2d20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402304ce5904c15f1d4eafbe9e82c757165da4c7ab95d95c4078a54dd32bc0e463a17cbfaa308c30b3818ccfd7ad48151386f023011c76b9badb786ee36fb6ad4ee409b87aae9fab6eee48a2b0dbf6905326522a908fe083e14c696b396ff557429bc0cc30302047c435bb500653063022f7bb405674231eea5901221bd44dcce92e89af71113af000a131a395c6f4461bf494e4c6a8271140abe62fd1875148302302f2d94a2a41c03fe0a1bcea6754184ee517c303569a790b08ae37c98bb2fd8732da501080c2aca9ac771a2294b91d8660302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023056999b7d410aea2a24b7d9e1644131ff3abe0e3c615a11d26e98ef0bc709d2f3b1000c4728a728c79aa1dde5f0efa9a5023100f8d753d62ca79fcb1db39fb5f2719430d0f2640cd0e9b6cf47a80506679d1e8dab83cb003b4d30c43a806aba3252a8c20302047c435bb500683066023100fa1bc1f9a2c08ee928bd5585afd46ae5ccc8388b84f328a756f4ec9fd24c45256aa5bfe0da7ba0e75e0da8517127848f023100f65f920d02df1ef9b05ac19c750fb110fffaac77c4f7db8dc6e49d4066ae76350d7225ab3a2631242b0f7deaecbd59630302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e1c778afcc992050f3db45d55a5d9a23d90302892c9461d94ccb05bcd24bf2fa9a991f7edfa5196b4820f910f86a96f9023100e6487519e2d94b2172ad55ea59bb9c7737dddd26f15d479ca16370c0a4f37c7066419750612881ac57d4f3edbad3e2400302047c435bb50066306402304d2babaab14f9c7078c94dd7c7b515180ad029b78e85f4ea0244b345f93d1190813b970a9ffc1f6507a842fe60cb98ef023057c8c4b3d9c1010562fbb752ad8582636ee052a2f3261af24ccd1c5f943bed3de23756bca4c17225250ef357eda01c540302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d3ec17065df2282f47bf47716733220cca1d8950dc97cc18a831deee0f7b9952c2172e315de77e44684a71fb7d9992ec023040413a37a204cb7057b8f7088041899bcc1da8bffa1c8fa97b9650b79f7c4af1ce6c19132a4115c155495e6c1e0fa5ad0302047c435bb500663064023052f4f5b4f6979660708c58a2748d9b9606beffa404644c2c5ec1145f2ac889d300196444bcb3ac8a994712420125ef1f02306209585adf91bbf671e86e1fe52283bc5205abcb0e94b489379461764b2053fef767f3eab21c363144305ea9916020720302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a2678b16531f92a2f033a4910fea2622e3ec7a949faab2dedb6234b8bd19ea1a30c342778a5ba870a5a61369bba4e58102306cc93bb0bd58383e05113189c4494580ff3611edb90255c16cf755fc898fedfb8e997e5222365e4655b59a49fdf8df3e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100caa8f1de419c0561fbca4b73ad4974b769a0b57adff1bbced8f057c04ee9efa7d5eef526c275670062ad4c432a9d74e6023030aeba126f46f9c493a412207a3852a3265083f51dd22fa8f2f512d4c0860b7fa63d582535368ff0d2dfd1755019dcdb0302047c435bb5006830660231009e0e6a5dd15cfe242bd82fb89593619a853bbda6449659c92787bfd1da97e247bcf691bb31fdba522d568c3ae35363e4023100f112ea911be90ab6edbb21e54ecd6e259ce6492366e8b621de01a319db5f296bfe33ca337e7aae06bec004349824aed40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d6302099786e91f216bd6cfadd7b7573457c106674ff339472d04bf03e27c3e62b7336cce9565a4bac848828c06bac3c02307c6daf59813d7dc6e958ff34cfa22a887a5f499f993c94836fab46b72a0ac696c1600670ffd9b0e6594219276a2ebef60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304061dfac9ad1359a4912a4453112d0b29f35ed1600dcb3cf587d6c7d6ca231b43de71ed9b13dec15bfe286b2cb6053cb023100a421a2eaa19c2d0fa05983aa5df7d63c6f79bf7cead573baf2cd9765522eda2c3474920715a2d7f78051334d9a07e82c0302047c435bb500673065023100865fa087c1c30659ad63ee067b20503999f33517020116510560fd356542b790c8670949edcea340f20051118225c5fe023017922bcd40005b9f985438c5bd08c85189ffd77cc60c8697e56d1f57c918d0bb12faaa9bfac28663058dc44210d0576a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305f5c7dfc28ce68e6302eee767f43f18b026c99beda0427552e20b4530971e31fc4b3742d3fda868841d1263fd3fa38d8023100c7c81e45e5478a366be98700f5ef2ae2f5f80cbf701a6670bee772b33e082e140e50666cc06011f8fb629a25e3edb8060302047c435bb50067306502310088d8a3238f0eb81456bb9ff8ae6743a9acc7f774751e7ceca90f24f39c6650e53b4240f82aacf6d758f8ddc9d68186b002305116bc476306874c4eace6fa5283ab34b61c66a434cec48d2c5a4236650fc173113c7db34460ade9f99d4a8a02b631ab0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023001fffaf2fbb5a15800c59af41ba92974f58142356ee8353e0176a6926a922b2a73705d493712fc970c650ce238193c5702303e39959a5c5b7e8ebcd48ef963e7ebc46a66e7266ff72af87312cb975e291624419fd4d5ee7a0a0017f5a6fd2083b94b0302047c435bb500673065023100990905077440e772955f788891c64d0f1792ec6b0c44f63c109cdffeda215503ff11c74343fd5a7fe355985b0c19832f0230576c368a684b561fa523ca527d8d3b02be673e966dacfb5e9fd8a6dcf23725cf85efbb8868650e55436b3205b8a02d520302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e2c059926daf1d86f601241b3fadffc57724c68e14b22cfd3959762d3980738b3cdcea198dfc1bf46a4802a5fc12880202310089ce7312c84ebc54b4a414b57e448cf5aec643e493a59bfbdcb6b5f32c8c13a0007e8bf25a0cac8476e284af1e3e0e8e0302047c435bb50067306502310082fa1f4e4a4b6c860b9de5692872a27255784b224bae88df6aef1f005bff7ad563fd2f9e1a58fb779f57dd35e2e0f2300230017f3d1c67069a83ba190b834c8bd2ba3661621befdc012af79134527dae9443048f4f4fe3170859de225c594821ce340302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d3b268ec3c1627dc33523778b1c095294e88567be56214b328547b09225cda7f97c984464a3fe4fbfc0b9f70c3303156023100b51ab2ff4e16fd419c2e1cfbe590ae7875432b32445cf30ac3f72dc8712c7f06c55ae81b1086801028adfb2d876f02790302047c435bb50066306402307264c45138bcccea0a331615f45336060d1c6c5bb8bb3014ca066a811e8b4950104b94f6a997092db68ce8edd1f1e595023017b8e2249433f28aea0ee692d17a27f971da2e268a613625cef0c84488e231b2fd217f28691a37bd479c0c269090669a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008d51e9870190f42dd73da8b9c18762483082fb6711414b915ab12347f5f2cfe88c4cc14d1113a89783b2437cf0ef52eb02306fc40cf82e1b99e1cf08f51743a143d5e602e428471d2233ab1515d87a771747cb6e8d8c86a8ffde4ac114cc46f9e8160302047c435bb500663064023066aff4d44aeb32ff2edc7b5ee5a42fc6802c6f73ec1f010ea1f02fc378e98dcb9277b21ea72cb69260c5fb88bcf7ec67023053ab9cf7dcdc4a926e29a550c165298fa500d5805f66695a93290b19efd699f7836d4cfea0b7ba1b5090a65ceb86a4780302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301b315fd629918707b661df7118c7aa1855ac0ee633f259692e09bd50522af2ed55386964ee7a71f068123ca5491747ed023100e45044a3574394cfc439517a702f06a738dc9891d143297340cf593f2a8678328081c7a3a43822d6309314182e639ae50302047c435bb50067306502304e73e56171bcdd9ed8646de45ac931075205d625d8097d1833a5940c126c73d53009a88b4b9012bbeb7eb7c7ba678007023100c23fded19d9d7d47d23610ae20b0a67df5e70850295e0b22e6b1060673974aac2f06ce7634e73e49db1e1b02368017280302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230448dc19df67ac818650fb84900adafc103587c36411b3b87f60834d2900931295893285219f07283d8fdd6a6c14714d80230682640dfef9fb8503956f15b3ae0f2e7a498497f090ccd3527399bf7494cf976c612a44c5e76cacf89aa514b3f942dec0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a35c2bd159593455d5e76616bf5d852b6d809522b68c38098e64f6531fbe7764b00d8031b7822d2f142835cd14cfeaad023100c186fb5aaa2026dd98bd981c9156e0b80d38a23a04748c254602a76926c3c694861f3b2abe6cd8b3ed5a0a66df65ed660302047c435bb50067306502300ce1a115f205ffda5ef2dee72df3e96b884b48dac6087be8ca87f4de3e83c6460ab59eb2da5bdb7141e3bbda0c3d414b0231009f153e7c7799cba9ed1950a4dad9622e99aacc12c02324127e033d2c8c25fee2c30456b3bcb7c746cd5949898968d1c70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310092a8b316ff15f8b4d9818a0e78d20e452d5c6c5a9855b95a90ae2cddb3b3054f45c31b5d7b0ac6acc168c9d3095b164202307263f86ad70a464e50bc56c95091172be2c272a79baa827840b9a40a53b40a3b60dde7b9fdd6187a76a8bde58e6aa4230302047c435bb500683066023100872719880b6edf0f6a65764e5f01c579843f51721066f4a1f837db5a99f8e0ae2d424e0dc622421add97a0905cf01bdb023100c05a72bdb45ca1352847ab87ba1c5844bad300351b04ecaf8d4b707108afe4d1afbb871843f066601fd1941fbfaa72480302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c42d028324a4b2d74dd6c8c2cd2745c78026e9039e13276cbd9da668777e909ce82bab66eeed22bf0c66d1de0148ff7502302020d257aa3b5ce9b1cd44918474d31dd5764120617ee1a9db0060060c08a083879e98cf321311438fcaa9694312faa40302047c435bb50066306402301a25424c784867fe8a2b912fab268fe1f285a53ffaf49b532aa4d9339217fbe2deaa83b8fac14d04ce5b26c86d582a06023077c48792d76b6e05c88c20c96e284c82a7a6da332b60381ee945eee8cdc5d27f2f38b9b6824f63ee6f7b55b1e85fca400302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100aec010194312f799bb71f9cbcc4321b056d10bc2f158355fd8af695b8ce3401f3fcd47eb85bd8fe6e4737db4fe5d4eac02301c16c6ca4de15fb6f69cd82ed6c209ed96de1c5dbc20e56844e0470a37c9878b527891dc7b193a7038cd18d64ce757510302047c435bb500673065023053794ece541c9d515646120f1e6cdc3e358f609126d4203c020512d822a66da8205793931630e9f56be8bd1ec08cdac4023100f3aa1a6930ae1cf382c3388ec78af41da1ad28cbe198321826da2b1c3e57ba9bedda9e87f493de4e7deab88ed6bbbb3d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023015fd518dd92eba27bd689e06f843ef95837b75b8599bf71535b9ad96cfce77d7a90f1f11c208d72ba1b5362fcf843d39023100d272420b2a8fcf98775e4789c9844713735adc6619513d50620a4d5ee671e705a11a961e5050fd933ee773a1e6b201fc0302047c435bb5006730650230054ce765af8efceb85dd6e1f4729b13e1caf7b37702ba08cad4ec0b4299d125a1b4f8e9684c42e861c2d2fd96b96d8f6023100856f63c53aee81b0c4fbc02ddf9da231a0abe8df73c87f263221fb00dfff1948812f0531aa4b8fb4b09a38756c8ed4c30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100bad0c8dc53a78a77bd0a3d3cf6d3e3a0ebd6b7955fa6ee22a58790a226d160db58ae790de1a75a1b0a9a6dad5bb10c80023100f11ef5213a36ed1c186ed37b3d5f6d372fa4bebe5835f87b603f072aa0a6907b0e1c6f3093c66af4759ddb96051900c10302047c435bb500683066023100be1b64445a35a3b3614905b848cbe82917be02f0ef38b12a4e9f35fb21bdff6af06b21090575fbf25f481fcf0aa4d13b023100af0a8e0640f7bed3ba21defd68ceb15388f39c19a9c56ded18761fb8a01e7ebd2b8ee9a145a2985f392c2d85b70610350302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305afe2e059b8d2858e9b824d5eac8af691fb985cc984c156e81862a38ffa22ce4b7f07a772c8609060a166a3049e3fa2d0230358961e895d18ac05553657ae7952d0d61e6b9f91f59f5fb830699f71d89baa84262f0d4422f257f03e9fb2a48ae43c50302047c435bb500673065023100ed5441fa996e6482239c12d4365b598e9dda3aedbd86c410f2c0595d9e30d7d807a87bb02439123d489200efe5cee42402303df7e58743dd7a473064a010d8871e6d8a6fb36dbbb7bfe26e4bb8ce3a8cf5271ccdfd15d9af71337730e9ebaee5d5e60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301b6e7ac48b8f34d45cf2f044c9307d38bb7f29f4f36c1d43b9aa1103a49768ebedb57591e49341b1a030a12526c830ee023043b0be15bc1f0a1e58a414555d2468986311f0877d49b73f38b666a9ab767e4ebab6ab349f7e33b03652ccbb2cabbb320302047c435bb50067306502310091b103ed4049fe5e61c40ac1588bf7aaa63cb57a1aaad221f6f29507a3274f6a4933b8f06c4c6da31922644aad09635f023072749e68fb444db9653dbd21870e64ea6bd42e92a7618abcf1a8f6e3a123ce35f92bed574ea515352f3d28b02da2f1e50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d5f8c1a899191246bedc1fc28b6ea7486884c8f11bfd07a40b565b9469e7ca8b2943f884dfa6e79cf0f889c459ee22d30230416c0a59adfdb1e7e982da9fc47a4a73c655e84abfad9aa60e235c6da1a78bd896278ce481571e613bc5e6aedf15eeb90302047c435bb50066306402306b257de3bceccb406263d4921844610b856147e9fab1c62766b65106e69f5a0f5f9ce3f7a3b9f38dadbdafc261301bb702303468aae7f094f84f23abea267add4d8241af8f036fa9579b60c2a1072836087c526af8056c2ca3e959c6842ac45dd08e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230461d428334e9797b2161feff5c77045b42388bdc325349e2732c91c1f18d44b122a0294f00cfdf81e7adbca684ef65ea023100fc30ac0eea09cafe710cbf9588f97d4d26e343d98fece3ad014b04b0c5a26896ec337a168604c49a333f18ded28288ce0302047c435bb50067306502305a68c179b5b258997dc04ffeca72d704263f4cb4f28796594155127be8fbc55fbb8cac5f6ad6ad5e4e21c694d410c7e3023100b768e52a570c9e8b5f7fbaa08a0bb6b27e41dce505f5f8a24d276afed21faaa32a19274a0b161bce514d61f0b3b2a5930302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f493036c9d81b42ab57027603c39e509c193dc075d0a6833ea969cbb9cebca83da3ad39455f158a15e8d00492dc85184023100cfdd98afa833320fcad4df0f1db36b7c29b370723eea20756ee0fbc3fb579027fcdda77149fff6e3a72a8caa02d1e3540302047c435bb500683066023100b214092c3e865b53a7c119417e9188acc0420c908a0f91ed24fef583bf061bc34908e4199a618ede79f1a99eecf9a961023100c166bd99c4939a8b54c53db09c7ecc0397905c9a6b9f741b0f3fceb22cd0925d8dece7c88106fbaefca4bbc6f0806aaf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305b51db0f611f89548b73d4e4495e5cde43cea15f80ef52667c16306e4a83a20b4abd3d339417f31e6839b6c0797726e702305869b66008ab1615e55db4304a8fa44971b78948c2b5db52c4f0642201ff674679919b36c76b4c5fd2bcd2f15aff51920302047c435bb500683066023100be44b48a7664e2c7c43ab8eef1141912eb050316ed3677035315544a85523637d402dc4331391ad7a8f5652b288d26f3023100d9f29fa495b59a9b460622a82c02a74573fbc148ec6bb113aa56654bae4c1ed25c976bf3c0937ac665d65a33c91ac9930302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009a78e08bcfbcf1daf2c776464cae2a56e6a4a90d3b7e20fec58455eb1254767278c9f40c1aeb37eb7c68ecad3156544f02303e6b2f0da56ec3d19840b230e14f07e2bb0129a3b11e82fc9d42a97e714e2186ba55af8a9b3ca2e946b5f6358c53a5a90302047c435bb500683066023100e7241800c345c53de5599a65bdfeddf426543093bac401ee00fcb11344496afb5c72539369c85ea9af2cbf4ccddde709023100f670e2a83db46876a65c0d1ce5a2ab78d6d89e8d6c281a79c24e3a589cf8712a266d58b760dc1bede70e9d4ebe421f230302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302f97eafa3edb4844234d5c40261083ff80e26bb37c0ad57f68c2bc3b2d9389bbc7b38b17f1af9759e3f7691456c42d5d023100ec9432a5b4c5f96f3f0c4b7188b1501df81f14cee06d19e454b8f9a80dcc9f2170314e9186f60166af9182806217b8c00302047c435bb500683066023100c02afd4ba0b43911f1574b3489f3f96415e88681db0ab9919dae67568ba1e132d4368f40fd0e1c3e975c4969c127dc10023100d2c02368996fb7997b7ae7da0da940bdc49aaf2e48786aebac171d9408816f87c2b401a97d64183f15624e34836a27b60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310094d8a4df8e3e6c526ca8514a1c475df16d592bae9f61c0f6562d1379b894b61a1c20ef812f7add31875dedda14576fcf023010262e41b2c118286336f832fa25aff1ef7275b57a0e3217d00c58ad21118535830b3192f446bcbe1e85ab68249f2d6e0302047c435bb500683066023100d2a9b5f3c47e02e412914c2803fb55dcb9909541ac018844e8c725ea08b712f27b3125e058dc6c641cc5090406b49158023100ec10545669352508043cd717bcd1c7fffd650738ecbc8d19d50d61f882582cd41df0c4d637e5b47f4b0482d3e6fed6a30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100df0c41dbda4986633f4157bc817a032d57d990bf55c240570cd43e5b60cacc135018af6a93e2e6beaeb36b679a74e21702310097f9c469b945cf0fb56cd23c36ca2a25c96c1661d51d534b8661adf43875116371c8e640b14966d26c95878e156eed6f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023028335ba08174bd27d2b1ebd1a94e0b504c863d7350620cf67a06ca0f9f8d4d190276c4583859b1d14a58a1284d2188c2023100c285858005d14cb347a02426a599d46230b0bce0f43fd8ed9ff96eb8aab19ba233d11adff47b64bcf6166b6ab73dbf660302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023053d9e509edb5691385ed0981ab4570ea44ddadbc529e83884eeb309dcd18f5eb4a161b6c4d8c35282bef0f7407fde80e023066ef77c60dd2f40aa94e534726798b7b9401ab86ae7860c620181cffe764fbf6d4d0d44bc0c66ab63601bbd1a07ced540302047c435bb50066306402303c6550c82664dc01f4976697ddf20428d1b8ceb8595955eb9ca777db20a5378ca143e0cc0c9b2c4f4726207c411f55d1023020141bcbd0706dd3529de398b518538378b5e5ff313ad16afad572b530ffc67c8fedd5dfcda69976fd071ef211e309530302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023042b490d5f17e880805a2728b510654d4980eac5e2e159f8aa6a9452e11ca2f8aff710aae6f28f0403075e57bb5f974200230101f3aa6804261ec9d4140365f62722ac2dd804c841b22862345d92df915d0306d7fe2afd5a54f5a4c45ad03a8176f670302047c435bb500683066023100edd619a37ebb34086a96ee9f5a0d44fa48a88841baa3c22f41360082233aa1af0f2352cb98cebfb3b4c82d9ea9ee5ac0023100b8612b02328fc514fcc21bc27955a097b840b2739feec147b580697e697800360edc57d4f8c9df726131b6787384afe80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a399eeeac5f5d851afe9b31eb2eba039e0c8f0eb560fb28a036ed736c37b1d6e6bbd965e28876d8f11a343b38d0723f30230597e3b691895be893c85e399b79eeddb7fa9f314f74acf51ecec584f83fb1c81f4ac356c2ec6740b59863e3fdc92eb7b0302047c435bb500673065023100835dba99555563007d56a4ff6b0e53c67abb52c7a5b2cccf2a216ed9333fa5f9bf49d8127143aa2c5a7e6d793d337225023007165c61fc43c93a8eca1b30824339b1b5620c68fc9b1ffe3dd8772fb3356a71b194f672fa54d6bcfe2899184551915f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230409edaef319b1eaf852c0fde72656bdaf2143ac5844c0b465e88056ffbe9370aab32f0a00d3e55d8c5293467293050b402303c53dd26751e47bbda963c365e576589d924f7764d982af4d12a6ebcaa3f80659a2ce64d418a2dd69ebe3873d5227e9b0302047c435bb500683066023100edba19e86fe8a2de4e6ab81e4d2e6acb731621f89bc770aaeb06ec61e60109a0f5459c2dc1b9ff9e439b0d262f12b0cf023100c30f296ed75c388b9d50c766d2ecc44f983802b38cfeecddf69bca15fba14868a584f35a468eedc7be6044a22c5eb0c80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f04da59de641c173f91bed024c209195cffd7ebab8b31221adece30ae0e15decc1d0d63a89a2bc11e402f914efbc5763023100b0989e412cb854f2b6a6655e09daa1ab1fa7729841326cfc39ee913bb09e95babe3006ed8c93b3063fdd6560fbbedbbd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023054ed87c3853f452a2ef62e5185fa7631f5597ab1633cfd10aa45a0422f1b38e94568481a704d916a3bb14f8c0901d4e402301cb61c348b9f9dca5b95dd0f073663ea7b5c7dce6acd8a3bf9dfa12abb6bfd5704421d5ae4cd747b3935880b2514dd990302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305bc25bea4754efda907ec789bbb6f612f6c5adb85448846b9dd7f05941f4313a9a90577b243c3bfad25b026b638d43d702301bf7fb50c706ee53249eb725b7b664e1a50a1b9b6df1951f9624ec8d8a00ed54ee2a5bfdd471199de187ac0a9e17e9840302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f73e88dfaaba33292630de9fd1db9d0b2b8b40a5f29edb2bc44699b1ba58ac1ee727c045ba80072486532985c651414f023064f657afcc5b78dd49e9bd9b79ed6788d57c76ccedb2ad85c919e7ea3c3e2d37e20fc8be8ce2e3aa3c144912a3cc5f100302047c435bb5006730650231008e8aca85c80b18b69c81175cdcfe8cc062117bbbcdc491bb76d251237cbf523a4d78bc977db30c2be84abef351ff0d1302302cb7ebf335547f58e016af2efe2f1b803d31628535b92cb90e84124082191f685d532fd53f03aef03dab98cb1082b3b10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300e5e677391c09ee2f2926925d051aa3e446af752f1f51f65bd354c5c507b5aed0b18825a623ea6ec3cffaa7032d2e8710230302d06a62b51ba6ccd7182fd9d42b6238d2cb4fbc61076e2dfc36e695bb0a56e9f9510f7b66bc75fc58007c7d1dcee8d0302047c435bb500673065023100be24dc8c377438523951ba0b94faca4b13fadfcb9d29ecc5e5787dbcda551aa02798297a4ff63f9d9fb2f87e2e69a69a02307a33553277fa539dd51b21ecafcd9a98c33309e66bcff37c45d48e3b1158b54f0a3d844574098f8b3e0dd6f4319e48b90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502307dc1a0df9c7e56a85104cd955d19bf60d2f32ae6e958b0f8a97707048094546224f0b6384bd559f9a4b91194e391ba0e0231008ec9241b066740f02fe5d3c17b5917ef42b3e9a9a7eb36cbc7dd7d2c4cb6feaa26b7465b555543020e76a66d8e77e8f30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023063234d5af65aaf8f116110d209ea658ac73a5594e127b02103b222d218a0b7295432797d6677627a9d1eb2839dde405502310089a73f87ddf68861e4f4f3bf3088a76dc54a79c11e7392227c00141d7965ad7fee2909c325b7477977182108f34fb9090302047c435bb500673065023100ff7c1f5cee31233984352104c98223d9bca2db689a61db8e4e3c3684aa118627f459b1871e18baf63dddb1ad04ee5d8a023056b08e089b8219c83fe9d702703b3afe904be59f4aa6ef481b2b9ee19d4b98b726ba65e2a40c6dbf2a8693facce3487d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310094cf6520149e5eddf6b029ab603d791014c24095a3dd1ec083b0f8463ca5cb4ecce9dbb96e774938da92923622f68a1702310082e641f4886fa13b454323410db8d0968aca10553bb709e83897a79ba6c2eff078d92ec3dabbd361251be6773aca23fd0302047c435bb50066306402307e7e9e227a3843ddc0650c88ff2f101c310a980233ede71faa9672ddb0fba18395b05bd9ace0f0fcdf040387337584a902306b81dc8388ec9c5b1edd05d1b8c1546c917861f83d4bff5402e6f9a91826a45bc79e202611d340c10e3b1599b9b3b48a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f13bee2930e9e269f72fe92da05e87c514bc64211252f09c0974b0101f6d58d93eb762b57842aaafb77496a43553f783023100fcd295270bb597e4b79e8c9695def05f518473cd6e659520e57f1a15d3eb5b42903c012e4d2865bdf1e2db35b477eec70302047c435bb50066306402301ceaf9e396328d4f0d03d8db110f5ccd02e14e7d253eb53ba3926d64142389972c6799b75c3dab80c3d4538d2078f8cd02301ccfc3151683f354d571bb8f3332633cfe8ea2ace1ffb6ae9aa8d4dd11fc18fbee9045451d6b7ebf91de9f9d73b01eb10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301306d48b74bccddce18750c79b3c9b64a718887ce4c634dfb89540f2e705c63c940dd84fa170ccc25b3c7a38bf7a61180231008a19c31facd079c0cfae7e24c59b7c2566a6dc3c18579e803fa66438b15cf6864064cd32675810f80d26ddb9ed5b39090302047c435bb5006730650230193ad6d00f6e01d8d00ee557a546041d3e96b5636c5a0284f0115867155a5aed87df1db5ac0496a4cdbb47f1837f87a7023100bc2648b2c386f86ec167347aab8ede7ac46b4c113e19ba12760770951b34e41ee74045653d6c636347b298f1345417dc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ba876b217f10ff4120124cece3702cae825e4acea3829698db3fb750a2f80e3e2f3fc3c0d862313d018df72cb503d01d02304fae818b19e7026d55ca25921870c418c235eba658529d3d816a8abff4aaa82657336f8f0d46a77bc832f3250f5f34ac0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230185a4304d3f7779e0d21fecd5e411de61ef2ca56b721e0568102c1d99a894080e252f65ff95148f1b4e9425c0429627e023100e598419b7837565f45ccfe2dfc7fee89ac6f319eeb03571de2b77de80035a1fcb64438d9bc8def532b9395cd9022bce20302047c435bb500683066023100f25c3a41ed3deeb3ee0e29b59840ddafbc079e1fc97418f8a0f32b11f69fa001c62f7e6664550ad8872436e8b23631d5023100b8078c0c552a207009b0b2c3d48783f81b4196eb5de6bafb6a274d38bb7ef38e5b961b30db98ec401ddf6742fd1f9f130302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310081de0b69297662f041567a16bcd04a7e9ecb533e0b5fd25d000900ca73d1ee80ef0dbc4fc81f2c32bba4e120ef77db1d023100af3fbd85b30ab356addf33d73ab155688719b1f40da784d6455cf8569df6f8ac5ab45fc72e85c97140be3b0a0a36a6410302047c435bb500673065023100842380b9b52d6416e9a7d7be6f3b4d128aaffacb45e8852cb3545699e2563d03daaee98809983755eb3166b95fffb4920230617f1c553163ae266e45eb623caffe15950f24da5f28c104127abdc0413e42bc986e18dcc04016758c0bb22aecd625550302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023070e804663425759d292b397adfc6df0c1442b9ea4553826e5b70d4a55a16fe485a0edf7973961a537916897a0558f43b02306ed114372355a04c4cc6586460c80d187220c0b09b6e2a9f6cecd8949b00ba920f37cdfdaf0b407c1513bcfadd264ea20302047c435bb5006630640230797ab47460d7e02ab960b42ccc9f93736af51e51bd6bc92e4e3ed909ed4a4b8a3db6aa5ff199f0765dc42412fbfa01b802300ae2a8f570cdf77d71c3efd64a9ada2862eda80d31d2eacc3de6df740c1e662822f1e8c728c959eaa6fac472b42ea95c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502307ea588ff8d472c5221b87377c810b5c53576990c92b53e294e81ffbbdc49897b1ee35b8a1bf770e0677fa6c2fe8e618d023100cba12541ab0fc8879031d6f38a3c3f9f034d52e2d983aae3b63a4e1cd1c39cc72f4affd1f2f6ff44f06295cf328a942e0302047c435bb5006630640230557869232fbb488f6a33c2de3693903d15c29c592d0e9154954559f4af4b771c746c2747d1d244335f12e0e3860be9c1023066c55e1a944c2f76321b343844375a9998f0e672486025018707ec331fb43e649e7dcecc12ca85c75a4233b9b4b9db650302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307bb4b208fe724fd5926f56a5f60ae8367685cc03b4a54ffb91ab60e7293f705dbeff15bee346cb153f62f3b8a86f5dc2023073f5a9324d4f663309edd85b5654ac93a4a3ad947f43be95255f79a23f6c1e641f6987fd8d4e4ddc1ac22f64750fb7690302047c435bb500663064023057810712ae71c79a087731af4eb72425be3b47521d06cc7634098787111920476ceaefc20d17b8032e5b9b093320a55502305c5647fa45c5eabf8e3107ca2e01fb64c3230ef1d2a16c39fbb3794e6c2475b46ae91fc62000527239bcdab12633c72e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d99a9616e89b17123dd33f1a324bea782e4029aa004a6d83aff5c8e46a4909f0689323045d59b7d6e12d3270f771f4df02310084a190838a8db25137925edee1edc5d500f57f863dee8465c6c3575ddc02b84c65c465cb25fc8e9bbe4636af913330320302047c435bb50067306502305d9afe3e444d3c62cad281a1cf83067bf6721b5fb4e557326c00ba6cbd5beb69ad2bb64986327f0943652725dcf1de74023100b50add852b01ddac5bdcfea4f0be289795b0c06de17f8861590e1b78fda4096295cb823d3563b89a73e64d43c6ada75d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a6582af716ef9e4bfa8a3aefec43dd1d6533792e8958d2f7cc3c32e49d022488904711c8bdbbb3ac61e1155aab1dd62f02304d80e23129167a9f47e2e91fd9987f020ff9c6d8a456f533bec5df76cb67cd8d9e13c22a89ddfca5a81f8cd095549eb80302047c435bb500683066023100d4fd8a0736dd870ac5a2fb4df0c3e8bf72e61b78159146f300c06661c4cafd41efcf9cbaae8124438f737b6e76ae34b9023100fe10aadd26c17f61e2db5b7485b868ce2de7e9f4db13f85fa57e382d637f601bf0fd54b1852a08129e0c057d4fbe56e40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304fb46854b9d815f4b00b88f96a9d96f15e7016f700b26e287cffcafa91245e8c61d0ca76e416507db12eac78d61fbf0f023100da48b99e0d01cb9dd7042660f8c0e5d8f46d4e66a545d0cf2620ef99bb7f67451bf401e69219d89c9e44c04e2afa79da0302047c435bb5006630640230703aa7af195d7c506bf479bb505f39ba78c45908d733af48583371865031a996575ea66712fd0bd7d6cbedf95b8ea85d023043ec2bb7381a611d3772ef67fd09bd53dff13c4ed8d2f9d6f3be46882f9ac4b234edc6f7d8ce967645486a304a4f30b80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e8ac7d18aa1c85127e974afe0a9e3d2a0f8a4699076d731f00e5bc40652aa90b80fa572d9dabd3fb10780bc7d6dbe77d023100be7565fef0138dd28fc1ce578bcc11b41dcf522e440a41ce4b71448d465eba450ede1d1893885fd7b2234066cabcfb4c0302047c435bb50067306502307e1cebd2f3faec5e4a5bf9ff11747209628c175f5876aa47bae106389ba86e20aa51815317098cd336d1589515edd56b023100edd13a063f4963c00f34a140efe62fc0c6f904ae0f67762877bb9adff4056a7c0e558d8315435c699a5dba046df4962f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c798632aa12412ef3cded96e4a0f6974d4f89f19d859316426f402934f7ce0fc8fb3210cb77b5e9299ee24df22bc653c02300f5987a5c8b2e41615d07fd353524383b00dfef7f847df696029589dfb074ed455e0585692b7c70c3d5a0b4790ebf1990302047c435bb5006730650230291e0675fcff4c90b7ceef179e25bd0b53e0e08c214ae514553104f97e9fef2557c30e65887962bfead62b2630782216023100c78fd25c97d63db2df283fa829cec33db6152eb557c5c1935537a11f99ac4e5fe05ae6a32633499df01f08f123098a070302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304d6482f9c7f0a491963f35aeb7bd75a3397e0002366f7027c0bbf39f60d78f0273f9fce96ae39c98922870a91aad2d09023100a8fa2bb3d35145471d55cc273fd3aae8452a71a23c02ced6d5c05046485cf8329e481d08276ab0d3f6572de7d4a4a2f70302047c435bb5006630640230064cff01a88089aced004cff9af7073b147369f2f272447f4a68be71bfd9d770469465a6b4ed9d85d6e18cd75a10a0e802303d80ca163a4211542a5b2d1c9cb7efcb8fbc3a3dd33aa4b75e4b519728a1ab0396771325d7389961a2831191aeca0b520302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008f74a73aba3c8fdb9fffe0a3744a2336046e8a798f54ac7f2eccb857d2f8d9030af8a994cc5669deee12dfd7054909b002304f7406273b8548da57ff063428417aadeec70433335fb7c12a6f08365b7001886018a97045d0f9c1382a221a72da12e00302047c435bb500673065023100ec067fc76cb803784ed1df23783f62d47bec5c5ce98910c8e5bd8ca03349105424d46c8b0550380c73a34cbb5c41abd302307bd559f734c06384a47f30790b1b6aaf26e6f046b64a33f3096410881b9099ea7795d77c52e15dde5dc2a829ac6dc4390302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100eff3a352926a340bb812a4814833fd2aeb16e7829a7f02a4841b58f79c956f42dfce1f46b4c6d61998c75347383fb3e102300449a2c2ff4857b202e78d6cf42fb89054a096c72ffd7bd7e90b546e00677681033aa3938a6d006e80ff049fd22e354e0302047c435bb500663064023041cc7e96714923e904a0d7db6b4c6e4822ad439737c22e968df51ade23caa31d076c8577e54211b29579d542b373b6f2023036b5941b2efee81c79dd1b5d03bdccbeaffa25c71ba13b6e342320406d6d93c8873185f5d21cd2425ad68b1a8bcb77410302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100edfbcd87b044c22533aead327320a6cce6900625de452c68311db8e59a548ca40caeaacad076990681d39095bd68b7ff023014f89597812e0d4b48a1baf50a9898bb077c7a37a92bab7e8c0e8df8572a8b9ceb436e6a3a93f83bd60b5b1283b839040302047c435bb5006630640230383d27857184388b96ad4ed1a49cb711489b9bb8116af035b15c8233acb4eeaee4b26812607ed616c86e5d5bbdaebfc4023048aac29fa9075479c5a3dc627a79a98a7eb3b4ace4806f50787e297ccde6bff128c7f347ffee5ecf332701376f4e71ef0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023045963a290959df576998d78eeea790b14ab144b9f1d2465139cce894f7e652bfacc4d32685194958dc37afec7d4cc483023100992f31bcafdd50f75c789a3ae2d5b6e992536da953b76b6c53aa65b90e300183cf2ae91289295aafd8f78d3bc97474ae0302047c435bb500683066023100be3a99c10b8b0c54a90bc62f36810e7cb83252bd805e7a922ce7da705bb675004354b04aec75427045f6b955d13970580231009f890092cf47d7fe9a679b05e917fb3185b7e452b719b89de910361f1105fb530813888b71a305efb30da784c08bdf3b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230388ea9bead74942107c19ae7f7d2558ef3575bec2ee3ee894a113d81dc1aea5d4184af5436034d6deb13450ec60946390231008bf46baa46bf962418f721e2d0d29e6da44d863bb54c8e6c8e1785d7e1fd394e6a28b5178b5925a682a64007f027400a0302047c435bb500683066023100877c26d552f5ceee514050ef703f791d7a9dc460ae2976b126e93ac56a14c8457c146114f59cb6992431a908287140bb023100eaa0183dde7182c3ae89b7f9e4edd7771a8a2b80eb4702f12af83a49bd36b25e29e6bd20f28cf8179cc72b8b5b8d12e60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305eed2c1d7e01752d966a04e0b6ac750e75ffa9f2e601c8b286d7e5c6379141e9c42e4b791f48e06b9d502e7cb8ce0648023100c34d187c90301854d91f27084ba6380cbdb18766c42b84f57ece328fbc3785a43cb45b094b81f872e561c94d922d2cef0302047c435bb500673065023100d8ac33a7464f48b1fdb088200c7f24ae4166e0959da4851045359522be32bafe3ae5b41b5c76132594ce3855e356856402304236b3eb9275c261aa5e6e469cb45279d335d48b4a451824a6863df8ec639cf5d699407ac1d8ff7bd08db5fbe8cfe1bd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310096259e06f9d4bae6b92281ffb75b60209a6aacbd52b36787791c76a5da62a99cf5b0ea76daf58db81c34e7ed6abe4bd10230231f452c109fd84b3e320b1cb4271e0cfd1cd6c2d5fd9c8bff4977bb883d7dfe75de574c1cd3f08d0c4bb4abced597920302047c435bb50066306402301d55ee06475d130849599856767ef27dee6fee0cb391304105474328757814e541d4f936fc14de66e37a42e72c9b342d023053c3af4d2fe8b8860f06b7baeee97328c1b579dde97075e76664b65728b779cbe65a6597ef94a58e7501c272fae577b30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100952e45a6224044037f14ebac1d6d3998ce5b843ef9d955638e1273f24d2733d638fe1fa17f22769c7032152a8e93a37e023100b9625852ce3e046cb46e425c0af5ba4b4aae45f45e9104f7fc7ae11d56226b7cc9453238324aca17bee67b185d8f338b0302047c435bb50067306502303bd49ddc5b6551e7e779517bd5f6bae56f613d0d80d4f9b3f9e248ad168d17a65d252d038e0c354e32e47e59d5b23420023100a73985f65ed758bfb89b131315f8a4960e31964d1df637b609ffc535964afb3d5ca7c76612f76edd689997a76d80104f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023045bfd58e4c34e040757f273a6111d53e8427bb3537c7f6f2dad0b6e36632b111ee783a64fdee18d3d5138d501d0f0306023007de8ab34549d9b84a968357d17a64bf250830e4bfb30873cba152f2dd6315798bf0d4fabe2dc4233af519769288e6ea0302047c435bb50067306502307c7defdc1e2f42f79d1c2ec061a93948de31bd179cf882a9c38e8d3f88f108b7041afc6355840f5aab62b436e0f67496023100fa8c0ccb750c8eb9bd17cee373c384cc6faeb0bcbec556d97335a12837941404c3927b392bf096a059cdd44d0231ea270302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b632428a8d5bb8df21bcaaae55ddc859b2d6caefd28db1715905f33488e227cb90844b6ea8ee75fcbcc52299494c495d02303f7347679a321c3cc1d7b42883d932311f72b3f8ba1f0a67a49da56f113cfa11c1842cf085d0b07b483c0b17404e7aee0302047c435bb500673065023100cd3a342c1a87ecef2c8fe3f67b71d9f0e8142e5151383719351d1768f8b3349077cfd056a0e612d1ceed3e3ddb881e1d023077bf638c6164ba0c345c234d12f0ae121a6b5500b26af0d7a8b50692c86ece8796a3e16c7399f677ec0e52c5302206550302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230040a84f7e608c928071a642408a371419a9f38f5afbc3cb9ce5d54c81bace660b3c2c0220cdf77acc46c1fa9e2f98258023100acebcac71a06f9756d53e825ca4759f70d1f950a7a4300d701687af975c38059698cb0cb54b4bd3408e93229066e57710302047c435bb50067306502305b708a5b6015c3b0410b926e7edbd43b29a367e649903e14cf63b93662910e90900a351653f1f3f9bf1cef37eb67d139023100dd2b4cdcffd0a63d4ae2cd9b0ac76409aaa72f6d6a7643ac0efda95d1278089719f75cd23787cc94e867c502863d0c5c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023056f5fbe9a7e8530d0502932aa5e2faaf53d864f4939dbc6ec9ab54a227082f63598dba9d927f74a438a23255f5a71c1502304441c477f57a7fde8806f15806e66f5f83c73ea79cdee06fd0de61890743d12a40c6815b6b52623b659b0fe606e25eba0302047c435bb500683066023100b8d5d43c96c7417d20649d5b9a8ac0f45c68470cfc84276c35b342035a52825d0493d9cead82974c540c2c96d91bc5f1023100e94ab0b1d7410f3113a2815d0800f622ae0f7399373fa8b03f6c75b8d3ab40833a11c697d44f663f40660aca056aee890302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300fec8d860fa8fc9ff82913b78252b53ad3fc93f65d7beffbd33692a0e08695bde3356604399b396f54bc4583ec07d7090231008890fd50ccc58c55176676e5cd35c785f9fa52d1921aac791dba5fb3e84f24b0324e518669c0180e27cffcd6c9c056eb0302047c435bb50067306502307b578dea5ca71068749963ee142766789b094240920d6077fa802f202a8689ab8a660e7981264e2fe3f7f682d527c2d60231009cd8d83ec29f9ea8f7998f2c4b32f89c937242cbd1ec7d6f0a5e1d3a84d916db2dc523f5e8a9dd37be0a202ea12980e90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303e41b39776b679d6e71b493378e4880d8039640c2d93904cbae24d0ef3de65c836c7d4eff78c46a2073129e956e9fa700230110ece0a4b26e468894022b00d9459d636a3bd0c882ce8708a92adfc51aa8561c45810759841b314b65c6195f69809c70302047c435bb500683066023100f8af4aa5d29ef0774f6b482fb11ee483992da941e09497df84e617a616786a4bbd16880f2e866eb7bc78fcdcbeebf0310231008850b80c998915a43935e7fb5b0c009a2d13b044b31e4b8bb0d15f5356998616250af7393fa7243a7552b56568886bfc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302cafec46c8ca24f143f4c67bf55cded9ce709f56a3c823e6b939f318bf7e1ce09be0ab87bd3023eb39dbc4bb2e36bf6d02310088e42453d1e64402b18c3331aa55400947f43a1be0a2737d11f5c8a53b00b7309fa235e94495ff9a7d492ad622d5b79b0302047c435bb500673065023100ad9e47b882782e66b1732e9ad687e72d8b349aa0f232b92cc692ae4018c9044f135bc02d70b7e46af28033546ae3f11a0230115163d7437b9adb12b3a6ef91ee336c5f9aa9cca06a24ada9563d4dd994d1e219b4b5bdc5609b77880b07cebd048c850302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d6a9d3d1fe7a8a84f06775dc03f98731bac0220cc6589d2408945712ced447995059e4ba12396ec96114717b92e75a02023100ca252947f0780ee3693f41e38653f20126786297e2be680ac34cea2257c1bd47b43d7138c664bb84e2c59a67adfb102d0302047c435bb500673065023100d6b7617ea907d28da16ef6d7752e86ab7cf9bc3dbe9b6594d26cac2266642543dc9d3500bdad32e7e1561876835f76de02307ed213194b3650618f0a0d5a796b76a3bbb7c2261048fb8a492287d86e427325d26709a902ee27440e60d1e494c380930302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023040d31f5d34abf96ace1cd21877bf5c811b04bbe07ec23058e0f13a8007d82ce8ba2e385f9e799fa38b22e708a6cb97340230441e96994705a96a406c09ef8eb55a87058bc894cd59dc6b764737688b221a943e65683d589c7a19e6b2d7984b7b64950302047c435bb500673065023070c69e56a9431b7a10572b15b6d475e55f6874fc44505ea2a3af2dd08780b0ec4afc376b8608803675a8fedb5d63e01502310083bc1b82e88a1b41e6b971ed2d25ac8a5121355abe32402bad33f0bf70e0d28b068d2643f74fcb4746ccda2b510055350302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230052ccdc8eec0cceffa0771e8d0635bbd22ed8d7b672a81c960ed0be016205b6496c49d54d2bdef7aa0d16db701f8806402300155da88e119a09367adead139df6893e1216a24eec8ee730a1bce808fdf9b57ca8994450fc083150248874caf6ffe220302047c435bb500683066023100a7e29af557349330e1f9cba2e3899da2c96b815aacf5a78bab9576fe0ab16301f67497aba2930a224455bc8fe196dea0023100de71b7c7fbd2859ad3f1e4bc09b1a1a3b658280b6ed5c6800f0d03abfe2207af6673ecabc549a3e41bb031448c32a3bb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f0db46de75d8a1eb5316a26d679b05c2511eb135b9c0a1ca25b8bd8e8e322106f2e008057bb1d9cbff8f233308d5635b023100ba4a681c2a7a62c6a0cded5657d32014bcde9e1c4f65318262791ca942f9aa9884a7242d4e2f0c7a141068bfe615af500302047c435bb500663064023063dced62be2b03581724418d783bd8a09de43a0a372831f890a7dd49c9987c765fbe8b345a5cbdeb930cd9c0a67c463e02307aeefb868c4c4b184aeedb7633358085c4300b41798b5588ea004980b086991c1e8d0ff896e3bc0d337aca7b307c0c5b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100978ce3786b7788f47e156b74e035a321826014a965c2c731afba4d595f0ce5eb80af5ba85c57307a4d2fb80449eb5d38023100d4eadacc5e1871fb769dde4a8af140454ced95f89a8f7067814b94c84ee342cab49b2db6d41be3cb7cbe3d2ec1c922fc0302047c435bb500683066023100b728ae21bc0065ed4468885dda24a35e73d4080a941a669e756feb02a4af479e7d28910e6d12027396733f222867fc01023100f8c8d2d350bf445b0b65833b7e71511a3211f95beb480bdaaafa76fa8556c6a7aac8ec21e4b7f72716a66dbf3b62adb20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023071ef6d0f62d500f7d264c3338dd82dcbcc077747e7479bb716675b88d9fc8325d2cd5a924e2879ab988307fc6a66e9e5023100c7f362e26872ae1fe152b51fd77175ce4b0334730b6ebb8f4cfedbfdb6ece162aa55fff5973e39d971f7a67a2b06225c0302047c435bb50066306402306accc3e6240dc15495c02abb864672cf265041ca30ab90bc1886219aa6fb56f65455e79635ebf07ac0feccffd70b2d23023069e2c3d37ac97760da77c5dad58dfd5b578f1ace78f0e219cb756342a275923f8ec6e9e86bd720eb778ccb7ea8d0bd960302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ed05b175a8eac9dd8e494874b881b4dfdc2690f0d57c6d41238ab0fe869dc9b6fb51d291897dff2ddefe1f5ec1640f5a023100caf75d6549b288c4c98c9a44889baaff373a3530e62ad6d028f32015cdcde35fa57062a6442f9e56443b89c62f0104d20302047c435bb500673065023100ec27b69b7b1e8edadb47d180ce495707b97c79d939fe44f0a37e24d7a0e3557cc3d8c7f5d5bea4838fab77f12b442f0502302b09066d0dcc368b1593d095cbfc9b72140050b1919399e0826de20e4df0432638928a6bf98b11065ff4d0a742f780c00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ffc09afb834293cf524775ca960c759b3545752381b7c18123cae12f4392a96598a85dab919c7ed48d85a624c06a51890231008a1ec4014319923c65ab63e5ec2a80fd18d31f8d997b17ea52e9a0a0354d51b9edb80832c152021fb52409ed5d4773ca0302047c435bb500663064023056cb6344296e001fa6c82b8a2e208150a9e502761c6d31128a24faf3bcabe2de72973e9f9b1cb4a1b248b774a9c8eb8b02302a3905d78b1448a0fc667a18e65251321e4a2317c098838eeb8a3d28df0a6ed1ef5a980c0ee38a8fd17a6e7968506ed60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b95b1eebbc80906720630dabae6457ceb4f0ebb3da4f1de3e9ef1da5c0bfe15a8b158c2d6b8c9c670beca244dbcc53fb023100fb59413d3c8ee94a9a8b5e5a8e83cdaafbc1bd0dd2e75884aa9bb5c82e598b6f998266441c6726b961e32b0dd1b496a00302047c435bb5006830660231009de6256ae7647c1f7963889d6f031edac62a6d0c8755fde7057416d3ee7516a82f92a9eb48b7a4549ff9c133f10be916023100a3bf5fd7a72afec1471e8ed338a0da79aa8cef704d102df4a68eb53d7f8e3218aa5cd6045b207e45e5ff8d090f34709f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100af70121ba1a244b51f7851bd7a1904c73b1fe76c94fdd8cf55ebec6cdd16b7ec236930d1b3d5be59df257cd58e350a57023032c69cc71540afede3b836e7c6f04405eddb35b81f708f9fd09a6b097f0f661ae14683bb7fe8ddc76c9f367037a78ffe0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307c52cdbcf248789329e22e72c5d1fa6b65e05c92565fd14aa447be539d670c7d8f14624ccadeb0adbdcdb63aa753b66e02302b98e4acb54aa7b2bbcfdf76d9759549081f4bb6f66c8ff7de274b1b9b798f1ef825686f2d47ba85730bb1050ec415830302047c435bb50067306502310093b0194f9070921127a9286e4a45d6e450da3ee8f6c399cab101fea7aa998677757ad6d7dcf1dcd2dc671430db1f27a202307146633ad977c519232f51007ca62b87adafd84784cd560568a034537806782d82276566dd1193a681e2e541c06efa140302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b9e833c162054cee4890573cff2e274eba216f39a457208a2137585847d1d8696b3b9135596d6dc3c3bcdd693337597f023100f59f0d4f1aea276286eec4648bf7b656e4888b7b266434c85968adcb7923de7a6c17145c5ad9cc98d35535b1d68be1d70302047c435bb500673065023009dc6c0295eb8dacf3c0d23800cd3a863dd9fc94fb79501713dc76da4bee764847485db07b0b53df7c8b722f5c98dfc4023100adf6df40b73c89f0cad6b5449c372edeb5bf2fe3d8d09f15762b14a3580a80dbb4a145ab9c3ae64aab24500c56b7b5c90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f3aea5a2a69b4304f04baf7a02715496cce4b989f66d7f7526bf7ebbe458d2668b06eb087d9bd0965498efeab65f076d023100ebaf190756af3c2b6695238705ae3bfa7a4cb9f784a4d9bb08483652a1a4cf66c2b6ca502ff6a0308c46563286eabce90302047c435bb500673065023100dc942a27ac8cbd797a1c11316502e6a74b07e421beaeb2531d274019519ed0395e080233a9d921903967e2b0f4a1d00f023002cb4d183964f51924414bcde45e5e016bd9adb09b9723e3edf02b3b1dc2883e577462de8108f9158d1ce3741337ac4a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230505e0141f7151ff17479a8b2f99d47ae8f25827be3972a241d9d73a7be1676380a4167ae3ba1498ac1c052b1282e234e023100e4a421b264a68e75cd38d1638bc4480c735cb894d7f22ce7742e32ff501be1e46ee95b3ffdd34be87b7ff7ecfe70a42d0302047c435bb500663064023045be8e3c145cf5484b40de5f7f938820c5e620cacc0074e4e4d5fcdd4075ddc411128f5718658ba895e835eff0132ea002305753a40df00a916842e3e9a16fa662ff3c6e86aa6702740e3f18d9d08e29db07f871ec1af4d5d50b058052b0c87ab63b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22db88fb4a6f6cd313221a3c72f58a41037e7c621a292b30e8414f4da1f958ae41f440fd248173426784dd0b7cbc35502300c4f5e19b94a8dc7b76db940500ea77731aadeea4e024d0f29b1f7f95c4e5d5f995be0440831005d7647833c433214f10302047c435bb500683066023100b4bd7582537b7e5864cf276c6e2dbd85c671bc405fa46dc2b8c22248c960801fde5759aa4dea44aac90a66dca16b6722023100d7de1ca9072f6f8ee999c004449c38dcc58837adc1187b75848c2409b1a533a37d67b34d92f9da9939bdfed1397a68fd0302047c435bb500673065023062eb19dd60c789766fefd0dbb56be26d22a85d308fe1fbc9928bff14409f7f3fae092a3446937d8f5eba429d7948fa44023100b68d0cff6f83302b3429a1a1f0c94fa15bce3af49bff4258e5339256b15a8b1c4c98a0c4f6260e5e1d00fac8516ab95f0302047c435bb500673065023025a5889eb36c4552293874bfb382550dd5b3ce74ad1df7d2b526435436248b08aadbb81f360f3273405ad203da525549023100fc12431ac983ed0eb3f96d23ad66648116de5a5c81a0c29413fcb82b2e877260d60db71d981f81f087e4b429008aff140302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f2393c0e94ce01d8aec599a7d26ce2e56d951f10f8eda3b9dabfd85cd7a09699f4edfc495f65289debf589898b110ead02300d6d9547848514e53ee616902465edc6aea77c1eff592ea19ff3303d6eb643aa28ebc279c28abfab42b56d5f6dc9f1980302047c435bb50067306502303b4ab361a599d78adab61a1bc344a6cdf67fcee4246bc2d694bb87fbd5e2122993e952e59645fd5ee4af6f02745849ed023100bb6515a3cfef9c8e6db8338ed606c37379c7620678819cb1ea7da2b85b297c5f5489cf5a6e7d938999f5835cfea46dda0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100cdd6a5686f9be797815a2480ffa361efa7225eaf105c85af1ea84c9628f5c2444a0f783259c9fc8b40058550c246c53b023024005c6e78f742c68b93b7e1adfc89b6dae0e479782f525d424c388b33c706a01f7b7284531fb611e823f39e587be5cb0302047c435bb50067306502302e987ea47bd59844d9893115bb1e54ab937df960999f2588d4def9c5f5b6e5e3de7563e23e04aa767b41724150718c2a023100bf4aa6f26117eb440f0c0ad231c64db43e4748d8aa087698049a2cd78dba3115c41b2207d46ad1f6f33e24a84da8fab40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100dd19f5337144494cb69094f0887b5ce3b14d32a60a526911852d55e6ce5a62a42210e36ac0d33ebf420cdb044794c91502303a3223765126d1cef46fa37c04ede3e8945b90d43cbcb3f305b9712c5d3e648f9a5f7432dc6cd23b0b09ff0cdfba3b0f0302047c435bb5006730650230343c09028878d8b1d730cfc2da3794680d1d654dd6c956da46898ea5a1fa89538d06eeb116481deee4a8825bfbd8e79a023100e097fbd21633b8c05b9ffa6b5c86e857018cc6f8361e2892c8ff2619b267250cf3276ee3abd5e0a526cc9f3cdfe13ece0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230422222d511d14cc91230f61e9f140e0fdf1e3a78caf4e3debb1032b70948be78065e008fb3114fee4910c72bc17cd97b0231008189e822fbe00329e4352d8db5a25d5ef48d38a437d875acc4c8f07871ed00bf95a51a41b17ba1416a26210ad4058d5a0302047c435bb500673065023063ea62afad95dba6c5a3c0f125d3639e53166fa9984c7010d9b3a88b4e810d169708007d638056d3e7f4dfa2703b9b71023100bba7b42260e0aa55aac2888a54dd0bcbc1d0158a5782ab8a63aab1df518cf90e202c4fd933b357132e5b5c00e501a9920302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100dbb68edba42ddcfc075c24c4e888a109d46cb20b0f026728164708c8875b047f37ba7a26f04dce8df1a1fb3f8429ab35023100da485e77240fd6acf481470fc2b260b0788442697e7fe8812ad61351f5dcac58e5de7e4a4ee582f23aedc398cef36a730302047c435bb500673065023070375fe362234a141084a2ad4e66edb6c4aa4c4352c32e636d98cdfe17767d2979599a607b693c81e4cbb4ac6c968049023100e5a2b413526e5e366eb6a5914d3dd611a3edcd274581d94c6ea3a9b136a993fe188b146b425e9c268f5d880148644d7b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301e7c2d1011f63a357fb0b7978c8d5d25990404caa1522df6409be5cd62f5c3bef816abec2735503e1ff96c1798b81b30023055da6545f2d18b767571b6f91a365d53e20c6ec6d083ae8b5c3fab282d40c185df58a80330d6c1b51e67ecdc9023b42f0302047c435bb50067306502310096298fd756718805a132786c593ce609ffbc6331f9bccd05c8d0ec158f2557bc26e389dc3f729abd539d0175680b21ed023064f0d7eee3e508f4e89c00641f20029c42295e99d788c7615b620a6fd682d7a7ed9d72cdd1350085190aabaad29e04150302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230650bf9055a56e636fc9353ac10a81912b014994ae1141bdb957c7c66fcd150e019a65ab9a472964eea9b40ded7b0613e02302edaada6b3ed10363aaa3fe54fd8601839c6be3e1e8a452ff939a33062226f1ec62b75e8d8aea406c6a8db0d1b604af00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100dc47d52dc799f7661eb10d824e10f8224d274f2701a0b917d340a15c6c3c426f14e11370d1c1d22dc3b7bf951e9ccb5c023100cdd36618d0a95ce812e04bf0ec4c93ba0a206af3593b9e9e14786a965cda1173aa3b070566a2df2f92f59dc3ce9c56fc0302047c435bb50067306502310088f968ad44c8ece749402ab9506a5aeba1a6f27cb8afc34b4ec5a5f3d94961ad75ac8ea75b4d9f956eb5995df861fc66023034c214beb565fe7c854afe88dc0ddde017ba30bd30140b7b914d21259b0aeb1fc033b22815e44edaeb03f315a9c5067c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023046c0d9230f272f4de4b9c2d065bb358fa5bd36fbe7052329dba6a52f130bb0b28542c1acfce367340f154c423f3f0976023100e0c6fba7e45739a006b2b9119fdff5d5016cdd3fa90f7db80840cb62b51661f5f268d70870528a0965d234d6e96eaf370302047c435bb50066306402300ec7795304ac7131f0f81b4403e46cff38089547534d3d7e42f3248ee7a1e8098dbcee9ce61d810950fbeeb3acd8c2c9023062b739cc2c8c4d261e023627002fada0f8274d9e5d8655da9d612c5749b8b3e829011b023136257f36be71164f5900f90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307c26e3d50d5478aa4cd89adedee12337abdf8280f71f093377702ecac6a9a8db1212c3e331918ca08963502bd54272e8023015c695d1b8285c534236e0ae1e5c1d7d777374cd1b710bee012fce76b64aec0318264920686293b417bd5b2f832b8ada0302047c435bb500673065023100a39796bad5881ccdf8cd456f781ea51e0738339ac11792916a527cbc2812761ddd77f455e5078492eb6f01b88a90422a0230588d086be9521d08263fb6d55d691e2fd6319873fdf9c88a8e281857d8c942f289e28e3453d7379f65cc8a6170ed86d20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023076b67b342b5cd98f50fe4afcab919b515a4e2f1f31222e1a632c02f8ac5cb0599e8e24307d6ae1cfdcadf6f29a8979e202303aee1988ae3087af1370c84f90738d1e87e0a60779b046fb2aa5086dcc24da1a86b79aa316311383ce8cacfea4b253120302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023064c1270cc5b4002af509b871b0a441530aa17324d1dbb3ce742280807c34126b95e49c19b0a63e540dce13e79ae36683023100951ea557ffba57d44a60f37c19c8393c5b50c00c2477b9de14a03548b61fd5b65c3a06a21c4fcafd6fdd19a9936b7fe50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f6ab8eb2d7c5e53f2eb8d52403ed593e5b8ed56354f25f3ba471d197b6da3387802fc1410015b91baed5868936898255023021658317bb0d1feb7f250d96594315211e577693d2062f68cca6a7fe04b8123d13fa2de6125d39d36b006eeaae20ff190302047c435bb50067306502300b63c34f934aba0b2ec07c2d1d523f5ab73026224e4ee44646e3eba5ebefb478f3b7a1c239a75627eceaa91bf4b5cceb023100f2abb6cc7c992da89490e64fa842799166c3a18e41e3d8b09fd61844bbfc4ce60baec1d51baa2f5291108456b6b085540302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023013adbe1fabde5dbc091fafd1d45a8a40d1321d59f3967235374c5264ca898a9aad4aef1a93f85edde2a1c4af4b6fc083023100a82e6435e0e1029ab820f9eb279a8ef0373e9b03c6746a535a733a5b95ee47306be8e6ba7de16a7b90d842ae12a3b8090302047c435bb50067306502304995f2f7169e1a93af3a9f64e0f38c06833783b4b02c02ee7882fd1d049c9195fbd72a85002658efaec8bc9fe1858779023100a3e1f31acf92cdc8b53aef94627505a246063533b6373bcba3e1bab28364a572dc6912e6a0ccdd3ae249ec492b32dccd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b586bf68c44237853d923e9135d4bf5cfeb1ef15703d4823d6f5cd324ad89f56091cf98c1525209fdab8037fe3b6e9ea02304d9e235e949f6afc9d39cdf95df24a7d25c28366ff8d7ddc13eb8a7e0314bba2d0b4e61ded3bbd311ca848d1be3531650302047c435bb50067306502306dfdc6f9a822725614a02504b9cd4df49d2526368004edb37537a116cd3bd3deac28a3eb359b39ff396c1320c97a1736023100b542b26f7c17b7ebfb96fe0337d697435d80f67b7316cba936d192f0b8083695d3aecf4a15c1a7b3f21194a9d6cd40db0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230305f2acfcb61a72ee218ddef74fe6dd242bfba06f10afb3482b332cf68b98c41837a51de25dab151d568f0b661b1884c02300606452221b37b8837cfe53896f12fd9640e335669b4344bd753533f69116121e6abefb00670ed22eb5fbfa670e1e84c0302047c435bb50067306502304504d63fecea5fac3145eca26ed947ef4e3974ee076fa3c2f67e9c01b5c720d59b93de11733c3eed5cf67fa516db2d13023100ab456a8294f101bbe05bccec94c38ec9cf7679a03f36817a298ed6551849f4ad30ad0711f5919d04d8df5eb4f2803e380302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502307ee59c2e2e4a175530708e4575bb22b4fd0a765b58a7cabca0eba255c2ad7db30a3b1cc3a4a756b55b35bd3eaf2adb45023100ae3d8794514ae7778a68646134b37869509e4adaf12b905f248408e91722b51f545a8a9aea2c93ae633e59bdfa9cbcf90302047c435bb5006630640230059ff804629be085641a5d7f12cee77ce1b6216c60e9686eb36ad55c5ddf5d9c3e45b76ba5ef5504c87002cb11ed78c40230068d24e592e3662341e19847c6759eddcc08829b86af1acce4f9e2dd1b97945e4b82c7e49d1753d8daed111ab0e808060302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bd1fb910027363a2a2da179c5e18a60f1afb3009905a8539830f234d2d3d85a52fd436f8fa34f3d2529dab2be1547a7b02305b45d3dbf1472c5700e5500d7de3747150c3d71446b26aeeba769a81a4723f2df290ee293443d559f218e643bd280d420302047c435bb500683066023100ff6018d8225f8c96b970a0bfa1ed70586d0bf10011a9fc95dd813a4bab05b0240509743e3504338fe31913b0b2453870023100c19a5ee351119f7b255026f5997f9214de2dc3c6c09613d6aa25db5453447b96fc5ee6ac6f2c244bec8f328de0ab82dd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b830a8ea1ef31230f7f237a1651a89c4f0692bb0e0ecdafbb99bdd7554227dd1a056d8a3dbfd6ccfdb0dd470fc0ca8e6023100e65665d0b09e1078cb0cac0419dfae4ecc06498c63339f6baa6ecbe1bf7edcd5a77581d6d446c67149056fd05232b17e0302047c435bb50066306402303d4e0034230697dd9be23fc77be73494fe5fa0cc97eadb9b06cdcdd12fb7e74e11e42aaf0344bb10353b36a3ef91c84c02304ec050ae72ea508c78fe1cd88eb350b053c5ff039f168e624f6e6eed388b5eb5228b5d2bd7d45e14cb6953593da3e1c10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023023a253d968606aada822828ec7c88fadc2aff71d91697521114b905d5c9471a4a2f443ce2876514f1d6b833dca9baf7402303a4ea459636d8033f41b4d426fcad1b4f8aa5c1cb1c2e28704a440af8aa4b13cc1c6810225349ad7ab488165b252227e0302047c435bb50066306402304dff21cf2be40df7687ac218840a0732a11802dfe0e8ba930801bd49ab3768ab33b739c4d6a5d78b33b3e955472d9db502305f09a26cc8aeb4728e8a28dee6f9e2f4ebb5c2ec31f412ae11efa17bcd438163ad7d0e795a2dcc5c5e580485861ab9e10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301fbba8adbaed16a40d822dd4f2f68e30b0eb22b9db272154b85fe90a869a108703560a37a36c0d68e627ae68a6b9dd4802310090a6c9411dfc6577de8c72467f90d6a2c6a1f1852d8893f47cefa2d15df8010b849f8d33666648342ab89f16bad3afc00302047c435bb500683066023100ba862acbf45d0b12101e8e54170a4cf59f1e3fa8b0880daa98e2160ee78dd9f18ac4e71e92e435fcdbf5741dd68d9cd2023100d42e5d0ed6075bb0c20340e0aafeb04be77b4b52bc5a9148892d89eef04adf10f8f8c1e8fa2cb71c2c362c552894116c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d9ec74855665eac22f11c1df85580d8aae6e1f02466579125c897221c06040480d3c6d7b513d24bdf8cab0f61908b6170230316f3bd6489f4deb1421ba34d5be21262ae4c558d9abe7917a4f039b1518a05905a827082b56f6f5e4eeca859372cdbb0302047c435bb50066306402302b22bdd5d8238a067244d347f3d65935e0a63286366312828f1bd5daaa03b94df0807bfe1e4614b4d79645227a8213d402304262e2e9847580fb11d05640f256974dd09d2e21a4d58170c5b0027ef607836b3dd34627f28ebb986a7e679b27093b7a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d9164b9302161b46fd8cc01216fee27bfcf6a5fbb9766e198ba6d6d4ea7be1be15137581fc65e09cc34290e2ecebadaa02307cec90dfe4ff567a72393f06fba34144b9f52dc43d79ac0a962c3fcd35a2d907535431106614bcd714d04e6887685d220302047c435bb50067306502305d3a10c637a206ac9b4690b150cc577ae8a6d3214e93e62ab0064ef8cbcc52a3fa05a0fd6daee4a014645d93a88bab74023100a8e737d469baa2e37b8b0b9daad450f9751425334e47cddd70bdec247b2124cdf3d639b4c3c7b2a07ff22926fb2105560302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100da74aa51bd1510d63eeaba8905de4f888a3c43403944505f2c4f584b87ed5338094e0c041cc3d72360af5c3abdcc08f4023100a755589c864657b9b7c53e17764c6d3edf19b04fa06a0bf6da9787eb81b5faa0c454ff9e083a776dd0507fb75b9e63de0302047c435bb500683066023100b51d94b1c5446d4eadbc6625ebdc35e0fc89c2f1ba8f9cef2483ba90088446a6f56e648fe0517aa24a1c5b00c6ea6947023100b2dac06afe9a09d1e35582524e6a07dbb421bbd151916e7b812860154f14cc8cec10118d1946967824709f498b92d1190302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100939ae3ed301b7aee1e70261949f1d08b6737f665bd5d0e274c504c2a49933a79e76fa917657788ccf1b342afeb16d77802300483fc0f1d2ba8d5f39d9067f5a756e6df1f13f61b71fc72448907eab87afa3cde9923a6fa6ab463e25e74c2923f65d20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e5fc0a56499af0ec89e2f906e14ae99aa351a173eb2473ac53ac257fcd42bd3c9481a6741687c9fe124f1c78b4d64e9a023020c458689719b6080cb6857a9e29ef11ac1a8fed020e77048ca40bf3c4e127b3a6e0ea64d2f4d9805ddba15aa706ce000302047c435bb500673065023066e8691ee898e2f090b495b51044a2a0077ecf7610e0b477346ce7ecea6d413527bc1221607aa136500cc53eb9c6377d023100d3350583d6e0600dd8c4c68d18316033ee2d8d9b67758f664d1ff34e844b068374c79b1b5b8bb04fd02240c2d64012e00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302318cfb0c4a5db4882de256999c227a2b19ecf9e014211a3d86cdae4231b47cdc9bcbb14ce68e677d9ea605478e02f60023100eff3b092ef218be311a3740a1fa7d46e3ca778f60f8471612a8dc8f5d942928fc721ff23424df843708eacf3773a9f480302047c435bb500683066023100e82f7190c534559880e4fd4dddab80cf41a732d27087a65877182094966ad14ece019d78bf336fe2f24be24e42620864023100c6bb1f6aee12ecb55d09f9fed662ca94ef3cc9c868ce6f8052e14b3996e659ebe2efebdcc435121cd94d2f5ddb392a210302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c6770f3195799060fcbc7d686fce36336e3933648e5bde8805069fc33baedd59f97c8a199fbb155fd73f3ae25093d29e0230637047ed8b7059d1e177590b4cc903f9a8b972ce2ae8c9af7afb7626fa9a60cb809ef35f33415c3385a0f861ecde0ed50302047c435bb500673065023100d9947a09402bb4cccd4e0c40c8c9f2840446892c6b53b0bba07b2d1f63bd2638890460ac8a4c6b950d672b75421a5d94023055d97287a7a4e80db7ed27b2d564554c210fa4a60270926aeedcdc526cbbd09d556a70cf27951e52b5c2d2a87a6e14c80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f1101285a22b7e80a94b37289f6ccc68638b92ffcfd1f9449fc7dbcdf856cf10728b027c88d3f45a8a8b6acfb0f59f15023004d34fe16dd583d8d6afac5cdac6f4e6ac817046d9bc5a21932d83fb0fe802e0c42d523e9386401cf6ae9b5f51e001ef0302047c435bb500673065023100b3d9a6a8835793170b47aa785083677728e12a41ad4d2fe941edbff5bfd1d15ce0553afe7f4517bde525820ac225e3c50230575ec76b68ea5d14ac67f11c680d82d95ac5f93ffce46a9b54c5cd5b890c3c88434389cb3e4f5ad5353edd362b96ef530302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306d51a24385554612f2965e4f78e98faec43ab4dfe33f73ae14478c59b5d1353f9d4688e7f35ca89116636ec63d4765e9023100b5cac41cd40311b53401f91b924b1e79d1964b8ee029242b782fec80b0b29ee66bf2b0e8b45e300919174c7f4873aba70302047c435bb500673065023100c1b139e17c57262b81e3fc02cbf897c34257eb65502f6e9fbed58b24a219b83b60d38d54a95eba5a45457070700ce3e502306643cce5a7bed743cbe8736ccdb4c87da0cd4d3999e77b8f384f3b9d586337ffe67bfb6a7964ad23634af20ed1acb39f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402304163e1fc73c1cdae43ff8b67d957dc079c29e5bfd20b630f67b9014efcda6c25511fb7f7d1a0aeee27e01aac482fd123023071c2eeefb4243a5a00dcafff719d7fc8442526bcb0fbcb811ae4ca3f607f0335543e93b7840b2633b7c1c0630b8fe34f0302047c435bb50067306502304a8951252e9e8ee949cfde25f1189ff1e82934ba1df20ed8056d0e3aaeb12fef1c0f630a9a0daa36f69da4a6e87424ab0231009844e679ca5bd0aea45d5d327fec813d8e887402098898b29d5da58eea9a0d415b463db4f84f84febdbb07ec11d479840302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f1c64e32ef20cabc18fce3a635ef9bf77915acab6cf19ceb51478d545c206ee530bb8c33d26f51a750125e268bcad628023060f166e2a49e2062c9cb66fc8ea0db220a4ee55634ff32f5d51e2b2392e27fe857e62ff7f640679a7082915f3f2a389f0302047c435bb500673065023100db60e3e98649d3e242258badf34722d2e137ac9a61c7a9968d9fad21e1d9dad7553c41875915ce60afb2546d18041104023028bdeb48d1b4646fc42c82c5793aee90c73535c3c6e350ae9ce3a297c5a1364cc1e8ef05a8f28cea526f3d650e96801f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100939c17e788144d0e778b66551d95eaeea65c308add12603888dce7eeffff2e3da7e5e8147866562b4003296ed6a9b9d50230140ce81f0c222f8620670321b7ffa7d13aa2b3b4ebd66ecd6385dae32a1133a956de9a579be5b1df709a07a4e17211e50302047c435bb5006630640230766fdeb2adc6dc85a24a5f925a3523371297f3e2bf82043ef22268aa2e38b6ac51f1233a248ba7288302c16b86fe05c002306810392e01c6b97af82e5e8396df480e49c261ad2905caab7fb067ec94ea89f5ac60a01709f756ae5ee06435581e93160302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a9863d30e2e16786916fb2bc4d64f53eec6a9c647eff6f8472ce84cd2cf5e6bce2b358247bcef8eb27cce4cca64803ed02302fb9a1106b79a2e7f249a92f80bf4faa27d7b9e85773c61ca5ac12de62fcfd4490e796b5a871142342edc811352b48e20302047c435bb500673065023045dbc96df44e266faa355ad8e9d2eb6f9b1a47d6f0d23b5bcd7ad3821095eee964c739e20b888497cc592dc3405c82e3023100ac0b03d92a513ff4ea9b1674024fa61115641833283cf2c9e3965ed253a2b5a022a146d0eeb18f4f22df6b2be34d08a20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306d2639343c17afacb3ba30779b0e060620611210f19bdedade598ad4ff9ff73029d956ff1db1242afd5dab62c7ce3805023057207c0dc5aa67d265f2a553355851bfa0eca9970671797c7839b3b120a2d2c846473b11f9daef818b1bf96efebf0f990302047c435bb500683066023100f314c4ff518852ccaef53527cd6e1a5d37b745d76d44791feb78b4dba2f7f665ccbdb8d49228578806aad056cf0ad829023100b1d207858a4efc52ba4cc33ec1fe5a36c0ceb1847838d669f0df092243d21898fce0a5351711acc8af1cd403d35242180302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e67a0fe508c4ee8a450b5910ba4fb76eeb43abda52201c6190e3723de825185a851492812d8fee80be3f6ae9957f6f34023100c665cf8cb0bd63276bc15c19f0ab8ad1532941a1254df3f0e7492fba5019de6606e7dff722a8c9d9a5e298d8bd8f55d30302047c435bb50067306502301efb9c39166187a9fb104dc85279fd3cf67680dbd073b2d72888f3bb697b1feb759c869aba1ce9b6ee493c23148c6c5a0231009820d3acaa5e3ce9550ea2d259f02406d1761752751c7d26c12d0882621e237d2794f9a75a4c902cf124fc228a5d5a1c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305b903bf4e320cde8711765924773b2f920e5e8da467c4d73452d8828cc359582d46446cecdbfec6d8bb21d47387ed65a023100d85d81df79df4bed34a5b459474986cdd3e7c2aa696bf3c563baba8ef7ad974b42b5037b3688d6e26c6ad45dbd9fc9d40302047c435bb500663064023042a035d9c03ae29cea10f90ab98f8a41a2ad3e9a940cc84b0317f60ae09252111d0f20a474db3c422848a7aca44d057102301baac3ade7154803d3e446ff76a9bcfbf72a1bed5e5a8ffd3fc718fda1ad531e60db27a4a13bcc048418b92bbc950aac0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ccd031a6f3f418b57f27504cef069652e9f792228771d2a86a004237dc4900abebbac469c98eacd36366b8c6532add3b023049e85cc27889d2772241b77d125d599eb9065c81e2359563db659abdb6caae3de3ac908223004b1dcc3aea442cb98a280302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230134300105c06f8471a1d644f760acdf3edd25c561ba2b5e79998655949482693a65f4ff500c21f9b750bda674ab50230023100feea3b09d779b85433e453cf7df7f63ffe9437652a8399823f86029eb250b586c175a8d98f53de1a42ebb6de9e02bb5a0302047c435bb500673065023100d90d1b9f7a3576bb2791ba850b59e2061f39ddabfa471d28c87b274510e0cf02c270ba76f92eddee10756ee6258e3bfd02307ed67d76d8fe6e53ccadbf8e010d0226a27ac380ce4e3f3465f2aadd4b8d835042fb6059cca78742124a39b244ed22e50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302afd381138a47eb2fb7855969a054bb84a0e908313b6d62cdeaf1c9f227fa00ddd52834a0708d5588d5dd25f75c8eb06023100e68a968ef4a0657e26e08ba96240a017b620579fa15eb9277959e53faad23d1bf133ef6a4bfdeea6cb13f8f675e0e7bb0302047c435bb500683066023100ad92663e73ceb2e042522839af9e483b7ab8f73244ab57552a138b8dde0da14633640c480a433ab68016b59ecb91310e023100c02ff3e8e5f51195e9854ce7fd195d7ec436b43ee2ff2dae3ac6f76a7f15c7e86ee4c2fe2c2e839730108674a8c644580302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300ef8061aed9fc2895299a767fe79f4d41bd1aef2ab749a9c0433ca389082128e96bddde6bab3677a3d493524373521d4023100f51f6cc101d543c14165f3ac2ef2cfc90d41f9fa8bbe4919ddf9c959b6d6b2a3ffd83d75943e27d58bba6c5ce17db3a50302047c435bb500673065023100ec7cd28bbe37b7298dda1264f65e5623c2a7d12345515a74356c77504a61142f41f75086028fd78c75fc5791d0a0810d02302dde64b1f91b493fcdaed2d152168ca9c0597f2235f51c6894b87ab1528f61ec596c30240be6b14da723255f53ef3ac40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023052a0d3e1977dec9b622926e766c138cd6242fc1607e3941925e9df872ecf1e702553e73e543e8187fbfb392c974568a30230178eb61d2d1d93d47b66a83fed023515ed592af32c633693b2e213c631f34edd2e5b0b8bf6e4be917f015d14e9c69ef10302047c435bb50066306402304cb4b05bb7ce00223b4ea6c45851eae5305c78271575355e4aa39de148eb78826e010b62a40d3508d8bf67dd5004fe89023044bb120ed4bfcbfa50091d6f848237935861b318a6d04e42cea656f41d35eed0756d062887cf16ae50e4d5dc90357b9d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e0e160038cb41bece0d04a9a754fd676a68e33fd1755d5d398f9816490f739087d8cad45ec8baa261d1552757d03d197023100a8231abaa09df4a2368df4fd86757f4b4577ec170e803771db6d55fa1e3985a2c562ea8eae5b50dc1eb8fb6aafc2ae9e0302047c435bb5006730650230161aefe21a26dbfcfb444e0dcfc8a3831ce0c22aab2b9aae867d3321104de972915078859f8ee74820e40c1be0a6dc8d023100f62eef8b6ec28aeef6b371d7645dfa0218b710a33033edb273eac28582101f50ab382705975ea0f9ff13016c2ed51ecb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502307a5e0e99673f07209ed9dd9f4630d0c49047a989adff1183b2245645db3e504381c0505bb9a7ba7f9ae58407896f5953023100afbb0431a5141f52b736f886d881d65c2455cc87caf99e695de0487c127e0d13f56d7272d43c217bb23a7587faeedc1d0302047c435bb50066306402300fcd00c4f7bc50944d195e3046d888de51ec2786d2f7bed2370a2718de7deeeee29586898082b3b46ccb2de60941d9b2023050531d7d44c39d63eeb382592b643b204c3c16413074ab012b1f0150018ebd4304ba34417704caa8b8aaf91cf5a38f5e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f367c5b93cd16d7f3ee5e3af2cfc02dc9a5d9baa01de3887ee37c1fe72f2d3dab13b21e691405614e08f852997454ac7023014c917e787b79f92fa7a6dc7de557017bd95f7cfd59ffac009c11d8d67a938184453a43fbd0eae571c76060694eed6f30302047c435bb50066306402300f2393038c1e8084ed11fca809262f5ea0ee8cc2dd67d0295c3ed5668f950a663fd4e09d89ecd2e4f863c7c27b30eab902305be6864802333d21a1b4f8a6aa67d684f8c03d4b8d23b2b5057e391f996eab6b7cf6e7a53404c90f0c246bdca256997c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ddb94b969f427c46f2c7baaae0e80f3e1842f74870053e5da7c3cf9c55cf2c564057d46e32121c9d3a9432a7326e51a4023100c430a6b6f9adcdac958f10992532b3048991c35222e00bd7f7d5c7f5e60da682ba3d5c3552322669b47af69035b810170302047c435bb50067306502300aba64f10af34feb958feb0c4ff4a39193c0abda8882cf7e9786a1ebabec46947a41e07146e6099703abe23966cb0f46023100d3075ffa6b15ea672c25337a7f625353c0be84fd0457d266bcf9775bcb111d0d504a833a254f40eed77e9afa5595e6bf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230091f075934af9c8fbad4d927ef34eb65706efb3fdc97df4f7c9161f1442edbde3962a224a0b5a07c16a893a8c75cdffa02307dc4fa502a38b94caeff9506cc0a5ea376835360a9bbda3f3d9a59d2f275721bc0cc87ce069f8d68be373d2bc6dfd3620302047c435bb50067306502304bca69fcefb424253c74bf83fe50c8e494b840729db0f33fc7da0d5f1505e806d6ff26005caa5d2cef1e7310d5ac9ae40231008a078f6c24ddd14b91b59bf5e972953231a29796a8f0055056c2e56b65f7af727d99b039f976b7408e2eb9d91bd719750302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ca69cb461035b73cd95d8c73f7bcd6d2455064ee076ecedf5473053bbd0413c0b6787e639b99b82bd11f0d041eb23558023100f63b36eebda5c889c9f9c661da5cccc2701efee900ff85d117f3e15ade8675f386c174e6b1f625f6dd70482809e26aa20302047c435bb50067306502303d85be85914f712afe2a1ab2d2b4e22bf2b75bcf38cdb260a31ab0db337f9547481eae2ddd976fb4f716a4d80368ddc4023100f1a23704775a9d527754b0894977774bf180f92485a1da962f41c3d172d32df7f1fb6731a29b68f62f50fa0693c2a9f10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d6f70bb5d7b0fa5e65ac74c813bcf24ffb598a43179bded8584710138c8ca0ab485f233fcea96ea6d9f5e2beb01105cb023100b1133d848c228c9233f916ab9b2237d9a80a3064596bba5bcccb92c8caf35edc65f923b0df001ffb395eb4449b9deeb50302047c435bb500683066023100b53571b0706135eeb46b8fce9070782c24aaa095178a0b00429c506916d55ff01826af3890b16e0feee017d450d4f758023100982689fb4b856277a4c7a8566ea032fa8638f3084a019260afb446c6b9eaa9fac0f90df3e48a037310e2d085daf3b1f60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e40bbf532a1f7e1dc13f2d9c1e64e34b9f6aca39a7369f1808dadde7e9b7e669f16d2946075353e17a72c3b805293e23023062fcf6b2d1a93add416279e16d504b8b39f5afb3196c3b314dc7e33e34266018aa1717d27884b365c41bfd0f4d02f77d0302047c435bb500683066023100e0d6c7d77116387106f989a0289bc1315d335ac6c6bb6ede4ac36ffc2fd47d8c74052245a372e43a1bb244856029164a0231009ffdf847f9eb435cfac0417d155e8addd298992a10cfbc81f225c390847bca656b40a936fd151d074fbc009dfd7507260302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230091d5834caf90228141882089e618c1bc2e3ce51080099e195f7db555d1b9b52b53b8e16239d38476be204952af1284502301a888f688d5cc2c59be69573fdf28ee1dca240e8c7a0bfa3781ec057729c6f135e6aa13815b1cf42f03504351cbf1b880302047c435bb500673065023100c689b9223b95186e95a930bfb4ecfe1d2562e8264d107580dd79efa7160e73f89b52e4f5d691581dde1d026b34c1cb1c02307de609d0e6ff8ddd995ddd519d585fad840201040ae990b4d163a62599f4609272674ccde07eb6bd87244ef8457e951c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100daaa752e052c75f3aad9276baf91d7614c534105ecc57f9fee5fa7e6b6fcaffad0d05847c4c179d0d774e897f987efb5023100e0f0c97078b7da4034bd85728d7591edd2db5168bc6dda45f862b945b39704cd9b7fd23cdb267ccb7c32d30be1c3dc170302047c435bb500683066023100abb2c1dce180a002fb141a98bcf4ba00f9a08cb908ca48636177bc93d201f7b10ddee3930e0f49b5622dc20bf1ae80cf023100d1d3056ed67252316f8e9d3c6314036f65d198bcb6aefa110cc3f7cb2dba4dc8245d691ff06a4535446fbdd20aa098fc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100fd15023b5b4d7539b7c561df892ecb2fd3b70c0bf20c1fce191427f4470d920aa554525f3a2acae23a4c91002283924b02305dcfdc71d5d6bce4b911254c31930e7b971c573fcc463465ea9d8e5ab471ea0b30dc27b0977d479cf1b8305aee56f91a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023042e24f9c27fdb15b7a30022295097c08ca6e287282fdf7150b8b89cd403d4001b9a43853a333bb490622d812daed8eb10230022a2e40129341b3147c66bcb4c44c085d260bf692ac74108c9035d6fd2a0cfc3b2c9f65b29da8d61afc107c7d3e44320302047c435bb500673065023014736b1b06d2d0b4e487c6ee16e59ecf68288624dbfc729bebfa16b5b4767c58ada3211b06d0c36703ceb5ad61526e53023100d99e157fe254eaa467bc78339a673dc68b4e074431d07f0f93f986f46539f428cc54d7d4e5fc1746f6cc7e07301803030302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c5c39306ae841f7e0114c3cc1fa8456ba19822c8b89bdc6af728b0ea5300aef7619a9ca2ba51bff32b0132de5cd9c832023100bb8b85d3559b0a17be885f699069a6f7d18cfcfdd9a08795e72e149f68224f08e5a7121162ea937334abcdf8a035f9020302047c435bb50066306402301f88df2f5b7a151f5f6315be965b842cf1d6058c28316db6279e1cc4617bfebb0117fc58f02f79f295f239d517f1857a023016ee65a251abefe697d21d2da70b27313d6ab9eb0813c278749827a087b1397584b43126b9b93facdc5b45a461853a210302047c435bb50067306502305f4c3d9986a86d17b76c2a92a1bc232639c91ac119622f5802a5243d23fddf408a8eac05fc00371d7ba8073da6434837023100a3238f0d7d09fada8dfbf1a1bef0ae6da471ec5d1379f116f202c4d55bf17b343472f99177ef2f17b246c3b6ecfd2ebb0302047c435bb500673065023006a636f0873ae456d7fa4c574c92b5f3991f1aebf85128faff47e79978892ca110e2b337a48ef8ac3257e87f535654bb0231009fb91a7f09808454fdaffb64c3e48c5a2df56954ed94f9411e766423ee6a8a322483e888205f770d7171cbc128e7ee540302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230679a8e5b0d6b8239704267a217fa591fc9860fa780d2a3caecf08a2a9e696f848f9a2ce09db2eb2d6c8dcef2513cada0023001a8553e8c1188473a6377ab4329806babcfea0d63780c857b23aead19c5e7c1d0e43c2867cc74b402b84d4b2c6279410302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b36be1b60d99a524df4a4940e00e49c4cebdc29f942324d8ff016e2ec596fcf9e5aa81070977d84e676840983941baa402300a22b85208cf3362062b1b0a83d833f67457b3cc6505548185247c0429dddd42e6b31a1e88bbe2029836b5f86cc2eda30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100cdc5fcc55774f566dd3c9ce99c3508c37d324df9c04e0b802964e46d25b4d83723df9816270928b850f1626da34ae573023048a423af8eb43c86a90effde482fbdcef2c3233ff7a5aa2f4b9346b1b2df67a7f3de74e08a46e47c3046f42ccc4263040302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a3aeb4b805345ea0d21d0e37c7719552ee478aa12e0d97029aae2650f94dac83cf7aaf0bd96fbb0c93df37d5bf4004eb02303199755c59d7cd5221bd75b973f9246fd0e14d3659351a510b8cdda0a8bdf960c365e58c2754f38552f952eebcd1dd8c0302047c435bb500673065023008d8522faa9a3172af6420b87f499e589a99d648a760d63e1e5c6868492aefc17dabcc9bced218fe244584fa40e617750231008b3713ec71bb0b037331706b5a9bfb4c3e158ef679c7416ee71ddefadf9fff700509b65588caf0337f98f140f5b1273c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023068db7a21d32a3184c64a91e85913ccb4ce8d71977ac71654697e726cbf151a521ada3737835030cb8c3a9bb84f244a7a023100bc4e79cfc6f26cd241c4659ed5defd28be45e2fec10fe86c54ca9a5cad29b2bb84a9bd662c5cc3aa1e6e893e6c5132cc0302047c435bb500673065023100c0d9b7e773ace37997460b3b764dcea47abe804c543a91aeaa8eb2e5e0409cdba599d516ae70b98b3ab94d4ab2f262740230637893286b3b1fc616cc1a2a128a64e91f1b9fc87485786594874531e8b69f05fcd9e815b8c86a9f257cc1dee8ae97670302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230292b7fe4e80ed8b20826609f729b9a40543c5c0675f20497c0247331a127c205b39b11d7047fe0d1df528ae60b273732023021c45c1b833915cc6f08f08a791ec9c1cd2ca2cdc8cf177444e90447ba58afad13c5c11b8023b04dfaf01f2bbaa8128a0302047c435bb500683066023100b153d4a9891578d05a5d43aee6a72f008a2d1bf61b28a1f9276873e8c6e18bb4f40124afff7c7b48106fff005aa6228e023100ac6f673702579f497f1dba401b5a995178cbe6815be5e25f95ab7b241454431aa2adae693a015e5dbd24b761ec360ab30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302e701320a9b09e0538a18d5fb4d71833f5715e2597dd19de6d52f58eb49069695cdb0a12ee269f1cf3d1682218b1c2490230376e0f1a59a83c5a0ce96a7dd70dfc36644d310dd5f94886fa3de0eb8ad913f63c0ec3c6c5fa576166cb7c96b073339b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a6481b2abbf37f8871b986f6ecea9e350be88d3d75df25be4f5d54f2a7c6350f890f837da8438e72f60865d02803b5ee023100ce1c116f6adfb2abd157c0b28e53791eb8f1652374db7802708f168ef211ddc20fa96de501b1fb3af0079fab07381d540302047c435bb500673065023100a1efa164fe5be2cab8d711f8b0f600a5533204815e580f476609f1d810ce7bbca9cb8a4a38ac1693acd65faac0cf205c0230016e02d56670a1ee4263d2e0786d92936afe3a41ebcb7eb7ad08ef85ed321d861b73f816183d5e1cde164da13f894e5a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008b7d3b1cc6890ffef12e86880debe1fa2be8828fe0c7bd13b52ef09b77c6dc48047e3058c38d18deea9d46d3d61db91e02300aa88a13f9491cbd15a165f1005a3a61c0ed7dd4c0d809166ef789670da4a7427cb8f98c0950fd66bfd5071704ef9d960302047c435bb500683066023100e3302ab365d1b5616c4ef2dea56036d3be4464ada1e53d37a3d7af55260416cc2c70c8c5ecca07c0a3ac7a8c5c8a3d32023100d0a2c969d164079621c648e582411dfa61cd51904639f711780d4a23a099bc8b8fdf846e31687ddf8fbefe94e8d5ba460302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230393d299302a0d4a5369584b2d55784821209c2765cd244e571b327b7a5cc9935e82df0f5d54cddbdae4106761303b1f8023100b509e831477105685bf4deccc95dfe198e3df5b334b06bbfe0218fb4e1c4fac7705d590ad572b42b9dcf80d3fdced2f20302047c435bb500673065023017b6557ce94f6e6b7fb97754dce46ee32373516caf5a4d514755b17a4c34470c96e8289797b955c4bfab7983114cc3b9023100b00629241df32dbb9178660fde40f20494d09b1bcafff5eca798c74e7839952868b027240865a2ffbbfa98f3da59191b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023079b5d06928fac55ad0ab7749d88385f0b4c2a2119251f3a798a886dae3e790f146f70c3649a9f337ece900595e720ba6023100ed2f1a1bbd4a43cf60a51138610b116f24963d11a55a42bf477b9fab148d046ca4511a691b6392af790bea7385db49570302047c435bb500673065023007c237b06b5e3300ea76daa8ba4e35095690e40f611c6f5548aea1892ada69b26d3cbb5f66669ddbfd209b06617986f4023100d5e762fbc6ecf58ddc9a7cbec993bc31db7fbebddd1771f8a325bdf539952282e8fd238b1d651588f11b200f1d861dc70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304f0173279e26726b7df37c79c4196c75b6752f60ace1307121a6a3c0cd2c3aac1132866c2d56fc225ac61a9128c63473023100c3ccb32f86a6e1cb484723b8233c543c550eea9d75982df4343a7bba957a584fcc595a9a68f501db487127a334ae02eb0302047c435bb500673065023100e8dc85dc8225e1cd7567f2fec2f13dab71cd4db14894bb6c09ed728a4d5fb87e14684dfce811ddf24dafb20ecab2092402304eaafa42afff6cf05bc7a4fac014e1657b29fadd1450785c65d1e1b415b37db8c2b79bf96194fa6f732176f58486560c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301e876eaa405480d805cc9bbb8ceb1eeb59ebfdef855553588606861945d63d35413913f35c9544de66a90d75460d2adf02302f919d38a84b0efaf011012c4231e6b8ea6121a338727f76ee1e8c960da44109746acfe39b10a00325dc2a9cf44157c20302047c435bb5006730650231009fd4dd9628b11ecd628b7ac5ba0b85549b692da833d9493f309344d8914b66edc982ab3d2bfe54171d88dc2fe272364702301af873602b048db97367025400959a2348391f0a78d1b402777be893aa18711f9c176e745986adb9fc271f2049d4b5840302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304ad97d911e2f40940c113a710af2a4b8e08afd91d22f1bec89fa9c6d05eabd51d32122a8221ce55020481a714c3e793d0231009c1ebe5241368eafe6a10cf4549acba64bdab2b20b6d4dcd88afdbe6c6a1c8e66b6a92aec38ccfeb26b9068576808f660302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023049455e98fea469396521a0a4cbd23ea35d3333668af3bd33d6c8a4564465f69a586cdbf195584daf7b984c1e7316d20e023100aa955b6dc948a0a0dd4e7048a368faa0a36e7b8cd7ff62b5ce3b6b60d74b209daafca5ce1eb3b0ea03cd38602bbae9f70302047c435bb500673065023100fa285e1af68c4adf4f1aa88b4bea8bbb0cf2341bf37d53ed550a19aeddaebc86f4a18016a811a0269de28e062fb9620b02305ed01ab60c9cf785e029fdc896505744f21c1c73cf0ef67981fb70d688f495df8ddfd3865774421798332dd3cee2c1a90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c0c16e47e4eb8382e9c323668d73ecbfe40570bf1f25d042f5814cc3f28b4cf7a17f2ca92e138660ae0631446fc950d302302e9b0337644b793ab9727df3737013a4d6e4f33b94a0900a5a485b1823618f1e3f48b7dc40ef2e35d43e93851c0626710302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305cbf9627a1fab88ce7e38e22bd47db27b4690bdd604e52216a8c0bf55e5816c95b8a6c471d096b19c64415f02cf4579a023100ce0d48793cf67a57dd1c45fda97e5ed8bf9398ceccef8319c25d96300518462310d0f3daa1da4fef800d4436303723480302047c435bb500673065023037d71f8e0c067c0de8f288359a4d24662107989cdbb547df0f7225cd2a582b35e02e59d251d39bc9aeac8dc8c8060617023100c0eca0bf39a9fe56b336fb53ed145dc5a951dbff13f4b27d6ceb9edd876c8b67b6eaea440b28f61b14380b24cfebea930302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230326406720f3a6e118be24a99ecdcdbdf2d362f80b88580eae27ead84efa5be4bcc7253495a11b40951619a4ed906967c02305e05760a95236e4953a4f9e7ed13a9893ef8640762e86fc17ac3f543d2bbdc8379ce983ea973f1867e53213f29b736d90302047c435bb500673065023059f081cbb9ecd9ac08ed697c8d765f231992c040dab818107750afadddc8ed3b13a33286e22c5161b7b813e40f8a8b0f023100d27800fd55da20903c3334f6eb3088ea269685423627d2378d95fedd24ac9f2dc52c74378d072741ccc6b493a9972eeb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023047d4ab7d4bcaa1f433073f237d63bd4d2635c4df305aaf700c3cd041100625300ac7738a7381d081831fb2a997968ff2023100bca72bb9fd95f1cf3dd1eaff7f5ea62d16aa612f431f759d19aa78d61120abfb5ba0c0e8b41b2caeaa5224e49d838f440302047c435bb50067306502300c1ee0396bac89328223c18d429e07d9d391a5befba1b27cb09cf721667ac0a2d7c197b5bf0ab513c4c92de7cb89982e023100cf7638c7b66651b36a6cf7d18891d51c77ef3adc6baf4f56c20ccf7f40ba5077e6ea8f511db891521580c0b3b7590a9d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100de88dc3d839a0900df8071f95ba72eaaae4df321ea649446cdf2b3819565ee9e0ee612c304fecb7a45d0b38f3601c569023100c4b3a44894d928e81546bcf30ce90e1d3b2fb486a93dd358b809b5b8d639cce18e18e56da79acb72817bbc78ebd61df50302047c435bb500673065023100b220d9da04bac55a2a8a479ee64f0fbe36017bf413512f242bc1eb03b174605aeb7d12775d37b1e888c050a631813384023057767f9d3880a35ff12d16ad097bdcfdc0df5d17ca265bbf0723979db555fe453bbb1cda5e16c89f02a567c44e2d3c2b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f357475e837c5a63fb9a1b624b26d8a76ca7ab1d54d31f6ec6eabfe87180b05be396ac8a74c73d3cc3a7716b1e615fed02310094c205fe86f988161711ea9762495b6b88762d03707032d5a48048e2f6537fe293516aeb2decd3880ace8fd746fc8a3d0302047c435bb5006830660231008fe25bfdb494e1d27a139670395925ef668f622dcedd085bef1f7d43e0876345d36dac07ab7af6d56020a61f824fb3bc023100ac5c27e27fd9b517aa4251d931cf7efd16ce32758fcd56f01a934a4fb8023bbe77b2d4d5195bc857d3760d463f56544a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023053ccb5ff971ce079e6edb3e0ce9ecb0accf8490919fe6ae2501c8ab2e284a293cf4f7d3b9140e55fa553f46253cdfd02023100eaed4b02110265e28c371a829021bc2d1e23bc83968604db151c84c5536f60ef8fbad9c59e20a78cd11a0b4cc6dabb980302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230030294a7953faa9fa674a954718bc5535bb6cda87a90f77d3ea476753ce3b00512b4bf8e5ddcfc7f3a27d456fc0ce0f5023100cbce0d1ba1253bea91b360924cfd93d8374833bbc5593c5fb7ad85ec00638e1c5c20cc9fb179733dbf33cc4bbb4ebd9c0302047c435bb500683066023100fccc8566a789a87b43543a41cdc6d3e8adcdb7ec7d321e8045f57f5f2b6614c95d3a95e5b73e62b54e35951d4e4f3f0d023100cbc0591df86843fcf47f2d4d7d62c747433b4d2a622d0219e56010ec5842f5c1d01169522faa8bdb14d76bd6cac6532a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023028e8fb7e0fcaa2d605b36b0cda39a8b260aa64f26d751504642caec14a9124b6521f22f1c058cd8f6f580a3367387fca023100fec4ff4a30f8c4e597cd1cbbaea7c5f3a01e988ad40ab67efbe8297c440ab8425323389845ab1f223884c1ba0809237b0302047c435bb500683066023100875e5648ac4ed3a2c01280780f74312bd6be5568bc5fb7e0316b71b5a7e04ba3c24b22af0ab9eb4a43f8f6e09594a3e9023100ac850ef1dd73f6d386c050fefbf3e3cb97c9d1ab8d6e29dded596ee08daa03604d2d1f54b9534c58106077e583e6d9750302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305664c9c1eea6b3f78356bfd0208c9d516e92465f3b2c562637cadd0267e87ba922b208b3963b269936e11fe4424cf6c0023025706360e327b207052eb846b7f447e7431b47a9fbc3ae535a0dea6754b6dc0f7a441e2ddd0316a315f8ff129af0be290302047c435bb50067306502301b44d158cfefeaa386d876619c6626f41168e6caad05e92a7a2b935f42b1e2170659ec7f9db44827c95b14b996590912023100ad3248509b796dcabbfa44fcdc7fb03ec4b65c2d47414582a3ec87a4756f94c7110f0ce39483689c3b4c3dafa052fb640302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023010ad91eb42b9d724872f7f31542a5970da84b5ac6dad6b70ea4a4a5d08f25619c5af6d466c76f869114454bfcdc11205023100f60f5a043ebc7fc054d67f676927aa1047cccf2b5022ef3ac87af607f7b4cb165a8eda466feac043b4c6654498c42edd0302047c435bb50067306502301282d586411c5064b4f0bb3f4d4468be4d965892b701396ada36c3886cf745e6202a6448ca36bd01672ea356fe23b7bc023100efba3bfa7d17f45622ac95ab1653fd94eb7496c2c8af41c077c8d3b59fffcf845063b05f468530bb18d872767d2847c20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100cd03d49c537bb693f8166e17b9a53ae8c0af7bca6e66562390863a9fd7d9f562da4a80dc253ad68e34d60c8bfeccbc020231008cead8232c1f85683dbe1b1f48015557f258a208871b51c4fe447b9ddc0eeec4a1aad6c288e936de8ab046c444aa20ee0302047c435bb500683066023100bba18678ab82a7c4dc31516d3a4af2d6948345c51279b87ac7d49d7e3363854679dc78cc5d90b962a56d90ac28ca506f02310097bec6c007f5bef4f3ee043dc07cb481514bd5913350340ecc726b8e00854c49e24ab18a08c6dfd286bf7d7da8977a410302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023074a5b1f6426f5a5e3a6688f366d04c306503330d87a577015964543ce2254d413059b38ba764422a9ee45a62270ed3b3023100a7635e4ea8d15eda57f80016141998f40df2a555d641ec3350db42c1f2a759894b7a787fb9b95ed78d882e734278e9050302047c435bb5006630640230380423ab1fb55dcef61cc8eabf743613b4836ada51761018356e7bbee2569f0dbd5151bed8c543958f9e494ef7e87abc02301f4f7a487c4dc1e186b5f54a43528be0f06fcb1ddd61027c1dde033d691df522b2fa45578a02b8bf340ca69322457afa0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306aedbbba469c265449e2e80bc7aac3a69585e43bf116eefe10653dbdae5cd9099d10a1376c5168bef2204a75c89e1b07023068751c8077d864959ed6c3f83c0314707ed6b2f17bb2c8ea201c30c88a16201a3d27c53659ce657cfa3c8f1611bf934f0302047c435bb50066306402307eb990d296d7f184ba8e3ee56cd793a8d2dcf504de77bc6e902d56c125e5ce954ec34dea37c8db8bb7e69962a6b4cb1302304d499eb668ecb0f75f7b8cf5fc077d6cb7987f6231cd8227946a5ce10a240aa559970dd1b922fef1582cc28d0858ce270302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307c108c0037860cf5bd83a97db2885512c4a9ef6102fc23ae1b4a6dd75b17fdd9f183a4a5f323d8beb9e2ecff0294496702303d45ae34e645f8a6381050f162d687ee176ef01098b52597ba5762255b86983eecd161c160235693cf969c3bc84cad960302047c435bb500673065023100ab0545ea7630357187bef72b5a8586bf4c3300082ecc18c26757837905c09037acccc575cc2e365c7e2502230c838b7a0230372da7f1135a4aa410926cfc9f6bbc84de328211661ce8c1f8398d2eb038a48a5d87f0a5bf2fd44fe4feea21117bc96c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023021c2b700b9b25258586f402ba8562ab21a633134c19b38e09fe70af492a8fc2a6c42f65d4fcfa708213be4c9cc6f9e6e023017b7369fcdd5b6a6ae2c2366d2993568571516e32d4c12ae5a7770d2b525937753fc41178a6f538af85a4c819373752b0302047c435bb500673065023021f840b1949fe3bd0d81d3d65be31f0ea33366ef10f22bcff7f01fa858d8b0a2304bcce4dae0fe1b2cf5ccb0e8a9abbd023100e820fa6e75fbd9cb312f0bdd0c8fcc55859b21adcd78ea2f2e83fae4eb111a5ade32476b37485186164f5e7f4cf423320302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d785639cdb5931da792f9f3f2f73122f4f54ba06fa08f8782828789a3e1db9a312c707801e1e50de3e79948602b68b50023037a8123a69a1434414c8906643c2077eb5f7dfdb0a3c2de086072ed595528aaf1f8919f8076af1cc3f97f119a9a628520302047c435bb500673065023100da14312e20c21dc0d3e1eafd10c656604b28e46b8157c85150a2b8df0cfcc2bc37cfdb14cf35c5ba51a387cff585cd4f023074a4d5e4eb24e935324bc4948def431658aba1b47129e080e2c7f055398c4ae6dfc9077448dc0f8d8ec68fdb0deecc7d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310084b216ca19c9301c83c6b37f4f9d45945618f108f8c3f975ae5fdfa2cb31929dd37b2c248ec7fc56034e516949896f4f02307c4c56d6904af499701377128fc5a007c6c917a3705810a6f985504a819c9517488bccf31fdea76398bb9bb35eff00050302047c435bb500683066023100d8001c7accfdcaa0baf1cc06bc1a48b45fa69b02f8c6fc0ecd70e223d76f5f76924dc42968721eb8a71e2895597bc3ba023100eeb573b86fee95520d402847d91c4f381cb17c49559bd2ab1de8d3cf8664c9bcd11ed8d5ff0dad5ccf99e1b68a79d7c60302047c435bb50067306502310090afa9cbea94bbcd9df8db3f888a17fc80b092c2ca7a7b34bcf3312a7533f0539fe7cbe868c7d81f5501f0ec1de42bc1023021e82ec825055c64a7c3bff7dab6c0f05317aabd29a6bab5f15c8b73fb1213373561bf0c30346ab60fc1a53bf8c737360302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ef2b31611177dc8cc4f943000b70c2c3e69c53f911a0b481758083898672ed8c3ab6c347f9862ba07a8ba89919e12ac8023047aa3f0b502cfb1a9c56cb9f4c9da70285d47843878646c59b53f3f91f86bf620d46364afa5cf28c03a176a49cd690b70302047c435bb500683066023100b68fbe94c4027dd64d179c7b47a25a738efe1b2467d50d04c4f6836fef11efc038ed228492310c4ea1d4b9216521fc93023100cc8de34607660ed51ce91b256f1d8e08ab507ee3a7fddb56673c99467dd973a79d075de0d4bed59312ddf30f2739fa560302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008a4abf45af0a38ff87042bf71dae4ec22fdcbf40d8b4041cbe57882baa8f8801eb98ea6be4be0ade7518b00f66ad1a500231008d6d28e5e1f727c8daa811b334bd9ab030dd60992199ddd76ed3f8428082c5d6472b6e927417c950580e7ebf7624cd2e0302047c435bb5006730650230162651ffe25b7f3e64a2afa00db359ef0d546731038194cf058f515f801d5ddc3c29cffc18b29dad249b70945a5388640231008bee5de17ff6c58d948722ee25b2758870f45a5ed4b2d67934250edcfc61a10a32f478c049e2e7af7fa5cc4d0b83ca550302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023003fe7b8745ad15d72d37d477ab1b3d3998b71b83228d6930aa790d13f826b859c86b4e49109acd58a31c5837ea31d5ba023039eb7d1cc55a0dfe78463a18adb095ddf3540881eab657a3979caa9545984ed8cf036a3d2fb8c8d7c7341e854a6fdf930302047c435bb500663064023063c4c4ed6d50b420b9d886ed7c5e47bb8c10538ac2ae1b3aa244089b05ce8483c88abaf072feff822e37e98cdcd939cf02300e16fc0342c89c7553a6a89134902c0e0524fbfff31bd46ea83f675d30fb6a2a51832f9cbd3f30d6a86e30829f56c5cf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023001ba8ce8af5cf184a4b6da1923889633495144c6b7e5a78e76b0ae05852eb8e91556bf8205038c7f9b9d869c1eccf7eb0230331d289ecab26829468288f2e3c03685f01ed284f4c54d9c856c74ca024b39b88603890d0b4797f002a552e0bcf1eddd0302047c435bb500673065023100d1cb24f5a6ebfa4242afd118ce47528410821a210455c98f2d2d63ece24005f8e3467dfa8d201869e3543be4dc01b907023007f27e863040170c40a3f0b37e01abcc8882a8ed04ccbb7e88c0d0ce1cecaf1b9c2fb213ea3d1be7fe61a7a57df4a9bf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ea70e07e38dcd9dec6a5e4dd0961f4cfd19fabc652cf4f3e986adaff9a0c906a7fc8c542537dcdd57cd42c80bfc32ec202300662bbe493f71ae04f6b9a0d712152dc3572603ed5361d064d33df8e0a2b95a5288a5b67cc1f9567af9d9df0057c259f0302047c435bb5006630640230336155be9f02e6de5f2ab2a7b8c689896244af47dd3a0e7a41e49bb3e752c4cc58e433c04333a285e2b41c14071aada702304a04a35c38052105fc84a6056f0dd0dde8095e87a774e20e65cbfcaab19d41926b75d5811d37361ff95e9ff851bb60c50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305a6b0404cebab84aade6885f9a2683c44e7f2103b58b644e6a42d445aca96cf6ba37f21a1e3240431571771fbe3c950c02305309458e22a0af0e51316facb7999eca322ac86dab10c66080b603c28f227bb0eb351f9a1b6952196d23fb55379088760302047c435bb500673065023100b8e41f2c90733f996dc0c1a84f938151e5127292b553527df58576a73d64a168cc296db107538e5d339c9c1cc8e512b702307f1d09394f3dfb6d2075a9c062566dd322357f903440545b78b7a4e76a9e3837c7ac45ca9748744c450a2c147305dfc40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305e87a0ab10df74b17b68d00b21e3a95281477a9acb7832af480631dc3c11774054d72ed2f3c51db79eeae669ffe50729023100d11d78743c66a0fb0d5386a8eae4e3c3a49f0a77f2129f4ceb9ffe4694a10eacbcb972aa7655fb893a9c54c6f213f6ed0302047c435bb500663064023005cbe27ed8c3bd9ab6b8a14efda559ef202ca6f91e2f5b4d2f6ca67cdcd756a2e0ac46b97fd11455e2761fa4c33c5ae2023030680697ee6e640ed0e72afd6d02ee2ff7ad4ba63d5089d5e7d3931602545c0811dcd0cd8def2c8792a2be5ef1032b360302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100fae1956048058999bcaee21ccd5e361bec6f4ec2cd122a850cef18c266e109def2cf46930b78cc546fac15a5bcc72ef5023100cfe5391a6c2f8f6cffd7d9b69de8e691e39f2a6aced36581a8391bfebb69ea1939b78dd22a7de79040fb0b6b4c9982380302047c435bb500673065023001e7b21396c2e3853ffa9405e980086fdc87e25fb69287f93668f2bb57dc50b93f91581769b708052d0eef8909328c17023100cb2cbb1349e44f6ad57a8261c2b2c5d9f9c0c4230339344b6a3cab8ad3afe86592505019964b4a10f9be7f38f5464d720302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302bf7b2443c869dc0b456c03197ceba33359d1c866cbfb02ab4abcedff6eda03f286eba0b0a2cc1c7937dfadf0774fdcf0230105a9fc95c8d638a514ab5438de7a1fc15176ececf711b7222b2099c4c62519f5209a8b6226826a39f0d7fda6200253b0302047c435bb500683066023100b94d862e46d8cd660ae9894ce54087cac4a4e69e3646212a2be5ddf248f9cc4554bac2a1c69a75752974fb28a0e4a1df023100d8b920194032278c09e9b31f7d54a8c5425110b67cbb71de33072b3b94a16cbfb76b43949c41b8c001484d4f090a82380302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100cefc6e101b58116c3322ec5ec3ef14afb830ad6a32a877e8adb5c83474a89b64e69058bd3418d9aff67688f7232ed561023100ea72b8d7728393c2ded98eedda4e7565acb0fe4923b3e26990b2ea9b25943a5976ce9af57e7cbce0208dc7c57f441b280302047c435bb50066306402302957240161f749d3abc23e8a1aa29ad2e7b40dc21efbf75c3779d20ab8bcabc3dc08fae871ef891e6a1357ede2e552ee02302d9ba67ce518ad09643b2fe06971858407eb62b7f5a374fea73674d679f6118e0d2754a919467fc9a1ec38f12819be4f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100fffa180708d7a88abeaab7e1ce7458d28090eb35f3c2531c845c1ccca8a3e31de72049b8064549e3f59b26a98c2d72cc023100fa4539a0ba585f4d3a7f3e2f7a059f32a3f8346b557245d2e9a283bb304123879ea45777a65b14778ed3b1b8759d989e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023057ac5ceb371300f872f16c7ecccc112ed0a34a5f0ee37d555e4634bddb93c1304c509ced81b7f5d2d833de2a1041982a0230526e7bebf8ca99c249b125efb9c94286e4bf6b9a9de19ebd4536ae57c7c1ef637d7e47e61ab0bdd098f6a177abab648e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d23f20d67fdf77f72e359baf4a15053f0018044f99c5b72c3c902c12b507ede56133660edd9bd3e45d16aed8d19b002f02301b66bd55aa18a8cd215fb26a271df188661ede137dcd1bacba32291394f3ef03fe1a1678551e5b4b1b7a7f6a79b1f38b0302047c435bb50067306502303610b76192442df808d9d9b23a63f9fa4f1b4784cf002e0632f194765322aaba19a612b3197a79fb7b0d29c155880fb3023100fafc5a9f0c883490128ac34c7bae4bf03c9beb075e7df807b959d3fd73256c1c811aa39a1c620dd4060715c4275b069c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a05f78461a446e2f8f5ae1e27ca025aa085ea1132d5f0edb787f2a498403c4d8972ba4953d0b2c2ab0636c3f8ed585bb023019548b1693d556e02a85730769b76375d7f49e39566215538f4bbe115ed0decef7c4e6f158f751be8b606380d8dd87070302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303c7a10236bef39008c6d2524699a2261ec56f1190d1c3d818d179837bc862c7879e91dabc5083f90e528bc9c985ddf5c02300b9e6f188ccc5d8ff65f298dd32893a411d13e3b2c44d875e6efd2e7dd15c4938e0572fda9cafd6718eb86b98199adc30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023050b674824a93b12d002da9154f6e121bdc6f17c45b8c29e3613d93ae4efd8a961fb40b976d26f4f3f8427f4fde0a264b023079718b25dde161b85d293b3c6c63abc5e3d9c33e072e29da5b0803c3b8a93617e66170ba204478cc75061325683d90740302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ebb2c3d2272f49e5281f020c53cba8c9306f31d5400839242fa615fb83601cea9aca2e22fd3b4fe6f0aa813bd27a7b53023100fcc18c489bc33e8418dd0f61a587b3ec8fa909094b97806d9775ecd72b9ca21d51eaef8fe7dde257dbfb6a3d3c0108600302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306f301aa7933a61340e6d5f9c9d7961aeddf64fb3aeb216056011fe7b67b01eb174c7f9fc2f2b87dbfe74df78f8569c9d023100e6ba185a02c234ec73358689fb53d9ec2b7b45a82c9580a928add91ac7ec6680155ab99f015ba20ecaa3a99aec5356890302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bf11038d853ae68bdcacfe4da339c28099fc0357ca3df43b8ba472c9ac5b976792bf04240d4b8e4ca16aa5cc2f8a507102305cf8f677eae009c0804643e92c4c23cd7c96e72e8a7bd9818355532e1a3918110fae461aa43c49f4a867b4c8a7a997c30302047c435bb500673065023100ad08a29b7cc2f9a52c30b28e39ec8117135a03641c0660d9b1149e4cb5143807743375caf8b48e36a35c980e4f453de40230362fd78e34a080024312405f656ebf5a958971e11a1b6d399611a12d48e1fab67a35de058a3c8f814242c669b395d8770302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230589406894b5a4e312ecf4d6a2482d396b9761b1ff5d53e5a9b9ec2a24dd85e41e43359bda13c7f77c0b64b970c614365023100e1f71a03f91320f3639377e89b8bbab9c481096b8e68abdb222407a8c27e47b342444d37ee74c0dc49966bbdabf833b50302047c435bb50066306402307e0adb6aaa87f2c838d9284b078cbf40ed5df36246948e16c1a90409849c574ac4ed59c1249359c5460888244abf3293023074f02f41cc15add9550803b92ddedf11646e94e54660633061c40ffbc05665f58d89a811e43bd672a117f865d4770d7f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023045634fef5514e8dcade75b551bf89972142ede597ced04fb6a88685bc1b8548fa3f17e36c42efd7b402388a2582b048d023100cf40fabbef48f94e51844571abb7c90fd524dc69083e7f84b7f547c8096ade34cd7c1bd8903c7711ee8d9edbeb93e3840302047c435bb500683066023100c5c21b0f9945473fd5a2af59f60d4d8d5b66410cc620ac68481ade65029947942e916dac2dc766812328190ce626f6a7023100c5437277bb1082be2e95edca2f1e4378fbc959be9094bf89ba784730ed834d9d91d3777d12b440f2da8b2c799dc32b100302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230170a5adbc774a3bc7b3a8f8108dc69522ee1a7f45cd32de439a81b38c372a2fb61778629db2ce7742ae3dff7db00bdb102300b70d23a1d024f478235c7c41379f56559976f035f6f1f249ffb02e096c9b1dceb55999849613e29b969c92aaffdf5560302047c435bb500673065023100a0fa3feb97d663c1f25b80ccbba72b7716763951e22d0d71084edc8939451746fe826fa0222e3acf9d1b1cd7650d4ec1023058378df4d0952c7d6beece0dbcbe935ae14162c99d24218a422ef203580cddb68328707c637249ec3f33c66b4dff3cde0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100fc412b282eeda4b194e1a25e6d8f977ddce46c6b9d9f48af2c7d19b10fa326db98e6cbe0a68369f3f0744b25cc5fe63802310086f87db979e94a415f27680b9ab8b781ef123f73e7e7b0479abc45bbc69d76671dd38ee0fd243a7ec411c5cb5c77e0c80302047c435bb5006730650230578db1a842d6bd03a59534427d175537e4b578f6eab8f93e68cb5b244d33e567e8a36843bcad50dc8d3d5a9228bdeabd023100961a6e47ec1d0644510b5a343ab582fa39afe0d4baac8615894f0f78079282f9dc578068aa4366aea25e5fe1aea917dc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303637dc8156e5ae0e9b831ad74dc3b7169fb7f88ba74f590f85ab9921f53f0c231abc97e6fe25b1fc3858a7da84cb3e03023100fca0aa080c5ce7eef95592a0a16d5456a52aad83819fe20d79dc6788092295a133eb7fb0fb8f04ea0953509918b3cca30302047c435bb500663064023021de235a810ddc528330a11e87de7140bf8bf73db42af2e37f852ff737093f8cb81e1697262e7df514002efb538fd29d023060fa719f5cbcb3bc627602a87c308b1b6cb2a10f8537e8927fb4ca57ee17b2b99e91c633a4a489d005fd8ae5aa9d28c70302047c435bb5006730650230322da3479ff7482ad833eb7c8226f00caeb9021093fcc12f56f4e07849b32aaca530226b53e1f6d81b202c595c184633023100f0dba9b31e4b0ccc0fc65bb6830789edd3b863961599cccaebba4b3a56ef484fe53ce0440b29b77c2277d35cae878a360302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300a1b62bb75f65983d6e8cef9af1db8b9d7fe44f5f508436ffda3583e553364464e0853511d9dbe70935bd1a25bfc7b9e02300488dd889c7971ef250e4ab23ac7d5e1244e09a9357209ed6a85d05b4acab402f16b5129113a6654c3a2a9de6e81abaf0302047c435bb500673065023100a0bc626b6d2815a3a66679d60b5673d3e4533b0588ca9690cfa758b6cf9e6b2246eea66e9298451df6df091b14dc2ee702304544bd6b7cfd80d7b819005931d90462ec3f8850a6428778ce925da04c29b01aeaf8d9660530ec44fdc582438d3dfc890302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100aea75f8c7af7f38046fcf7e6bbc81b9464014243778acba9e96ba95602f35d8a45fb4a339673280ff7bd258b50db0d260230127bd5f71760bddbf85738e5d9d2cd5eede7409490c2cef87f595e8fba55db6050ac56402fb0a1faa79e81931867728f0302047c435bb500673065023041048fb8393ccc95fe35894b51cc6896e289c26e449062207a052d562bbc813228bc684efdccc3eafd97ce659a45f608023100e62922e47f791c42b40236602a4088014e624ff62b03c3dc86e17cfee1a12e3d96891532d33c08383ca58d7a2bdc82770302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023037850fe4570407cf2a65c094358411c05c3b8ab8a45d105f6f0e044ec613f49b9c0d30785afc2c0126a1da63b620861502310097c6e6b345ad563f5023c005b41848528584ff7c9c82c5ed8d330351426d690d09c5eaf3d475ee0cbe8130dd7815642c0302047c435bb50067306502302678894c21d580aaa064c91f640b61442ce5ca648ec81b0ae25a062f854bdaa2bb10cc8e467b038df30d6b477c833cb6023100db479d1238655f258891497e4ff75ab20b976b43c08e2a5f3f0eff38e57c781d7a4f842dfcab501e9c8f167b203a652b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023038e53c807ff1e0237b2935d01001c0639b40f0587d2ee2d1d772e5e845cbefcf9bf6ae2457d8c44b31d4b4b75d8b1597023100d0b7d980f57c612111afef997ac8ca95e3f8bc42359b45d49cf50d85437db86716757bc467910920adb3066cbe5962140302047c435bb500683066023100fbe5cc6dc87f0ab1e7d5f2059416fa7a0273c29b18a154c0a3920707b4ecb5df38e6a2744b4630b733dd59d11352ba0a0231009fdce81024181261e5c93a71b91ff53d41bd375766d6a3f4371fcbc987453a399ad55a3a0096d87c6791798751c283490302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306afe60a80bc1525a1d42b263b3530120c9ac6161465c6fe2faae5631f75fe7cc54d4fdb228d0ae55f1532976149d75db023100846c56d1b90c957b9f1fb0e25f8a039aa97168bc2da7dc9e1210bc830576709c50cd8b6f59b2a4afd43be13f7330deb60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305b0e401b94350f834b81a586e69427af1546843e444f123c2df1a28dce7c2da9a251ff43e581c808a78119a43b604326023100cc2acacac394ac0cfda8b4d1979492806e0415fafbf402d1eed6fa303e6357a87ac3728682b45da7c9bdb5fe0cd2cabd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230137cbc46b6b9fb85eb590fd31051e24d4fc1edbebe927bc632248ad1ba2176b4776992a8f11864fb5e193da767026c8002307007337910eca2b9bb40adfab1fff1b38653e12e116f205ab84ef731eaa2e8891e07d3e1b681f2d3a8aaaaf6a5ad14f10302047c435bb500673065023100d027a86dc3558d5e4c3f28be11dd97662d7d243a597dc26eda02703ad689453bbf7e4e1118b155af190bea8c14127b780230248e1a8ad2741226f6eff55cbf1663f1ca7703a30341e97515e4a48af1e9825728a9b0b16b6af03aca329d5f8f9477430302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304dd946780bd0ab8d0f203a1fe0b04c0e3b5c4781ae255bcaf8b4b46483fbc4dcd85e3017c094f6699c3ce1d4146750b10231009f96579b85863211a24542a839a9c58af519699716d325d8ca563532645c9bbcdce4ab9167dbe893aa2fbe236d045cb00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f4c1a905cb572406503f24924b78bc228ff6948c3f67353c42cefe8cc12e09c3bfdb5a4d35598f99bb99d945ddd9ab5f023100912b3428d5d782a1f94f5055f3c392fdc1f1752f2abaeb1daab5b239d2863c9e051de73d5f5f355dc30c13ba7bdf8ec20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009044f5ae6413f766e221da3eccbe5f5ffc3ec0bffdb2bc83576f63450b1ddea1f8456705e942d69d9abe606eef06dab6023100861fb78f5a543e8cd351a9759f85d7e18f54e1c631118d95ffbd425303197ae7afb2b0d802c631526027dd87438c7b3f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ba5191b66a33c82f46003e500109cadda0da248699b210db0c9b6ecbb26697cba3425089d8ee0b99ab151de0e2257eec023100afcf3c9795e2960fccff1866a8ced59d1ce9a1ee0951470966683d49adab4488236289ba007af7e958207f53312cb5c40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d1fbb47bdb835dbb3fad52db553edecd93330fe2f46d2ade5952f4ab8b9bbea933befd7217ab9180a7089c07c6a2bf1d023100fefc3f9b432b3720a139ecc76dfd1ce2b30e61bbf7ab78c0a1044a512ccf5aaaf1cc95fc6487cd6d73b5f36176c7c5b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100aa45eb573b6b76798b1a44be6adb26b9f25c0717f7c9942cace3df84235dc98cb47f72be829a9f6e07fefa3b95187847023100846100e8c7b5fcf1f2a267f06b2cf71a6f49873bccd099fc4dd94ff3a926e17ba9835fdc1f7f967ec513fc69764a146d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d2e31b5780a6fcba617c424b314325d00d6d638c4ba13d38117f9a139ad1b02e0d40284a3678e7229ea3e86ce072f8b0023100859674ec9634d4226b686892f4b39174833e4b1c40c3dd485165424c3c24a48e5ae016312ee738ba80d3542da1b7f3130302047c435bb500683066023100b0a890866fa65bffb4727634c0760be6f2cb975687b68ec21d556aae552ea66ea645e32aafb404805803e475044aa314023100a84353a3c456896197616eabee6d563a1207e76e8a381c12dfe9c18e7bae1f89d6cf7f77f79ce6a6fc2f208bfbd6939f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100dfac0298ff2789e07ea4a034e0d3bafd3212d3c541ff77638900469057c09f6e8e7bf73553dd93d1ebd805b3c511be620230337479da443192f9dd1e83ac0bd74407ad7d82e14748827bd035d4f65b9e1f6d500563f9f20815bcf84a1277e86943760302047c435bb500673065023047a3194398e599c6cc1becdad212c92865ce0fc4cdfbf1343801497eeb232d3803119838b55f2206a763639f0a9a04b7023100ad1def664e4eef2e0b74d58fb4a83749935b1b1bdb79e1f6c3bc11d714d5d477a6b0308221d97805317900ee658636040302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307feca5b641f1d24b6fa1bdef8aec83ee62445e33c97190ef255ea745bc863e208b7775da7db3753cb0eeb957633788ef0230785f4c44ff717c54223bcffd119021383faecff74560fab5b670b9b6714f98b01335fa654f5f7b01090d6b6057c168e50302047c435bb500683066023100f0b8dfd44a1e416ed1b1ca149f614f186dd69af390e384e603bcaa581be0ea95cdfa1e3f6fffbd98a60fce8dec6c1b15023100ae3afd43843d7fb79b3b982654684804080fc4c7331c8b704a52c41141b1db147e902f94dd671eb0bd6c1497c082b6db0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304197c3347bd7394527ecac942b2709779ae1aa066920891e69f1a534c40eb029ea8305e6c23ef05f7421601fb22c6585023100d16db9dd836500e024e522d7da3817416515d27e092bb8f7ced838b61002b8fa9faff06bf0aa67e920f0738b66cfa7780302047c435bb500673065023009cc7ac7231545b8f7a3797e467ae984ab65d0f935e4a8793c7756928e2d7a16b389f53cb1546ac6d2424d0297a600c7023100ba25267a26888312e09d9e63fd11fb3e20d152c82ed2c5c518b007845157f7513eba94cb29081e5db45eb7fd998546d80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c2361bbf2bfd5411d2950e704d4a7695f6eab78235ebbe8b79ece6fc1cae78430bf675be33c93c072ef0f7e6fbf8367b0231008a7017182b9842183f8d965abf8a130d77855b30f11440ef657522164865d28800829f4a0b7832efd22095e3ba9093bf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b19d21d9afd1c284b608959389dcab536560140a84d4d94c4b48aa1882cbe21f4aa0f979ed05f8a73126eb55d2404a0f023100a3bcf875165ab85300f50b8e37e921a3e5e28c46adef5f64616513efd0b7e62bf9413a248508d6358c1c3b796309d98b0302047c435bb50066306402301dc7031e9fed69212ef0b7df6d500cb1ab5c0f2a0765a5fe557060f161b14b46170718b315f6dec33f795d5342c8d25002302310c2d41a31f98c2ee9cebe9317a0a90433d3400815b6d29fd50362c45ffe2d6ec1e939fca098ad7964f7c30fe652470302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c4676e935b2840e8184c71bd6e81c45d1ec7241c7bd6cc8be24ca3ee0b4077e93874c833b90d93845dee0a20639db34502303b07344ddc1f10533dfdcc50cb68b03bc14a81a97f4813b974782e4c7a540eb039bac761028d5bf76f0be2f6fc67f8490302047c435bb50068306602310091262f529fb317616b58adebc70067e2b36ab115226dc219fca4601e986b2226ef32af9f46c572f8556c0390f36f1dd802310088b081aa83e94147dfb6c7808b501a517d449c45fd7d43efb6dd0fdb2954808b35286f92e7226281aa1f333abe73eadc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d807e186641cb133ed2b6c63625ee24158111b764dd284cdd2542e334354c76ab770d0a23cfa28d580c3fe3b3dc76a0d02302c7b887c5a4c7a17a739e91ba201a8b2a17a25d55a70b89af7c4c5cdaedf9a1a4060935b42e6bc2721f779ce6f3b218c0302047c435bb500673065023100c456a80709cd5aba516b2cd804bf8619f4f134574692f5a80df4685b3089187b265d3c8361bd5701075a04625d0dccc0023048d509923328fd329512c686a2b10b4c039a5b7f387b6472f7239eba54b86a605df67c7621b1f6acbe22a52244c9aaf90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100eab8672646a1095f24ac629d2307578c7ec37ab76f710f9a7b0b69740fd8959a2817f9a256118ff99336a742e5319a6c023100c696b4f20e811accbe6a3768fbd422e421893d7652ab671f2192e500aa9a892a4b76ef83a44bce35a223be97981c835f0302047c435bb50068306602310087015044d1e2c221cb2f336526ce2f0345c878e50c87e34e167826182066cbb0422d274738b2bf386afca8b085fc0e88023100f39c417e0194ea9ee66c6d97a36cd792f63f626b8507813db373214a1f0e5e9ea905d097e8207efad1635ff10d1b247f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d49d0a53e925fece79e1f72e480337e09e0504af4d9a7b4d5d053b231a005d4e059c3238eb6b3c68c7efbf4b7716f2fb02307efa409597fb490e84605290c5ac905bd810c30307339547465a60a4a78177f92e2a8e2297103c9b769d13bfea0ccc6a0302047c435bb500663064023016113419263f01b4b717a231e01ac5c7ccca3231200886e07ae28f92bdaeab98b46f90ba8495d00a0576ab1d216a01d202307244484906de3eb5acf09bd17531ffd419d6328a523396cdd2cf2237ca10dc517aa3d0334af0defa47f3e9e5da07e5930302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c26826fed3078272557655aa076501802befc5f63fdd4249294925202046849827fff78317890606e12724ee9195e369023100dcd200ff5a00c5d4970ff29ff649586223871b9ea4c1949e1ee4374ed621d6e35feebe6f5d6fe17de0984b07a4052dd50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301d51c2695c8b9f182ae19aa5554aeb5a6ce81233a7a15005621eeb9624927e8737e4613376dbcca2b2d9d1e0dc90e39a023100a4d85f1917365b986b6a32ddbd32e918a11836ef959a1cd8c69d992c6f652131cfb67aa46d03afa3e23b571bb11fc2790302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302fa2223b92f482b4027e4b8fed803fff4f4b246c09cdd10659830273c9c0056711fc60c639f8987892eaba5b6f1a41ea023100ba7539c2ef53421beb3088c1fcb315ca3df01f8cac53da8bd19f683c964c8d4421e6d92fdcce1d7a5a410955fa04ef630302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bb4d6b59580f9e718eb5c7c0efeea8be242b81f32e7f81399dc1dafde799aba30c1acf8490817265b974d0cf71009f2602301af92866a48576eb41e97b3a0c04ec2fec9dcb6c456fe98ac731c412940603a2ce38f9efd024060d20f87b42d77908f40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230597af3e32dbe058ed71e0587f50fa69dd86af6ad0cb2892b03c1f99ecaed6a0e25887ede7935844390207985dfe7d61402303b4b0ec166e5491f2342cc626dc4ec68ff9d9a9192c176e88cf63e02d37ed019b97761131a591d2ae9197a0bcef1c34c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100841881ab0d4181fe8dd0e385c9edda406a2b2bd330ac3ffb3724e11f7ffcbe06dc92f79676fc39415aeb7b9d6f10fb4d023100f3cab923d74a5e54812c52fa628cc23c721d6a0ea5f7318d7df73e677ef5f0dff3d966e771d8fd4305e0ab2a34a1a09a0302047c435bb500683066023100d7e031fda7fa40bbfaca23fabf1e30d2c19abce8a1f74f76df63d91fbf4856180ffcbc8f19396ec759e3c95051014ce0023100a2976f46e333badbc56758230d52e1f63438246d76846fefec0850158f93f6fe90bed0edf78ae090771ee6ba589a493a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100cda809c6d0866fac7af841138733eabfbaabc41335559c38289108e092cb9a96152fe0a674f302f19fc28e0cbe9713fb02307ff6d76e66ae99febc1c2ed1af367a36ce1ea296d7ea0410b661dae483440a7d218c995c57ad98e210d74bdc44b5ca9d0302047c435bb500663064023056d2ef7899a9ddc94e7f4c7c64d730c7881809c6010f13252b9e90d159bdbe00a044b55fca1dd4742e086bdcc06a85e302307ff237e79fbb82f04a2b948b94ef2ac86e134e494ecce93aace1274c7eede1043f44ead56ed74bbdcdc1498ef70b12be0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023011eef8c9a72ebeaca20ca9299a27a65ee4e4fe3f63d04f22dbdbc68e5c00af415468f7ba5fda171dcc96e0f54cc8de88023100e74f57328aaffb3aa925b6e43a7304e6624f53d9cc3c2874e41883156bf7693b343a15d244a5f02e3f70311d6f4162df0302047c435bb500673065023041f400a55e819fec3d589c92cf2ede888ee194850e34c8df1fcd9c16561a66c6553b06aac710aaaee65fb434553cbeb7023100ab4c40feca323173e1e74bb5dcabba4a5d91015a23066546d42313229b8b790b933d28618c7ae2338199981bc588b6680302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023026596839622027538a073893a49277e7107d0528cd47cdfaded669dba1f359280b59c27ff9df3e2621db63e877057f44023100ba17ca5cf13fa1cd90d1b0a3c29e7cb85ff009f54d852c4accbd0ba1840f0881a44d225540518adc4f4ddf99840018d80302047c435bb500673065023100e5527cdee6e8c7f44709396b553c9a34d5df1f36e1f4a5d2172d046be0116ee23a548e70cb9e641721bfa29412813b2b02305ec6d1d1a4fc88d2ac5d7a33df1cf9e915afc76a1478d85df21582514dc3c28a9f19e2d6caab67a0068f97888a1ff6440302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306e18e1830394887a7bc97ad23c41a64f7d1c61aa82fbd466b3708ae2ed5a1d18da00f547d4ba47423b078cc97409c0c90230348e0b313d21216f2638fbf43ccbaeaa8cda220c1f4065ea4c4a8ab7e928d8f9548f98e4a3c104a7592b526a8c75ad750302047c435bb500683066023100a2ab4af3af302709fd9e291066f33de0fcbe8144cdf4b28114295ceac389cf93202a815a96bb66d81ab7ca70a1fd47ac0231008d493ac61808c97d5b70fdf370317054f2dc7c8b1fba50282d5e2008663607f4bfa484a6a00156b4c2b0be5d5cf9eec10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d747580e5677b22db86c1a55000060b37975576736f6206c0457f191af8bcc1cb1afb2bc1c5997ef5b632aaa3e10a795023100a84d7c69ac13a844da9d86af808a5714c55c86ce64bec62539b273eb7e9f741dc635b66629a616cf7c6a74a11165327a0302047c435bb50067306502302cbd0dc877897366db2e17f115756d3e43eb3a751d32a412acff73ce686ede2dd4a026df77ec74ad29d9f4d125a1a86c0231009d643270d90069c3c8b8dbc686224f93419646402bb05d367a2b28850a03f21475872f6e1647ce74af71362144e622500302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e40a7c41c9b49a7282efc997b675a33cfd67d13c12af2b1a5dd632232358a75882c0077586de41279dd39117994649b302310093a66602815748e961de20831d178040d1c8d0e38878746b1a5f9c90a80563045c77ddbb8c2eef7f41f0b52596ca2bdd0302047c435bb50068306602310096e13681091ccc37c5f1b5ba86b7eaa717db07c3b254ce69b3dbdea32b9438caac252c446f66b1c8c1497aa9e678da77023100817a575926d9586da3ff75fc31be85c3654a23208d9e818735d2a79833c6a99836fd668113c9adaab0d1e84a8c2880bd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e41982f1309a1f9f13889025a420c855c1cb9557edbcf0b3a953df5dcbe94e65f6bace9f77f6c288cee2d49c4fe90c0e023100c45975ebbad0f04c0d671a6cfebd7daefcce1ddbb3aa880f76727632bdde8b213cbf5fe6d798588317327cd650d455100302047c435bb5006830660231008f3731d53076803259eb9bd81b7001f2724dc710a97c0a08ace2bddfe897c6f0208a0d8997cafa4b6ab5272281b1c180023100dd5e67e76b8443a6ec258972ae53b759dd537188d1f14d161107f570ce37717ebb04a677eb921fc0d35003fc31756bab0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c3942fd6c19c2fdd3456992b1f5755ca097d047c904ddc2f93bf7a44e5cb0088a6ea42be0e1f8c22aeed43d66726a6710231009f9ef10ecc866a83d9e6d0d5f47edff7f03510c34ed6b7f74c2469d8157dc3b3f4f73dd5778be3933559bb200cd82df20302047c435bb500673065023019781999e111d8ca58663ce18ce01e3ef998a4ba81f688468fb0f5bfd04ce992860c04ffaf7630428cb9b4d3a85c44a1023100e4444012bfbde2b4e18db91ed6bda65ca5f4c6597d81b45c8a73da78d65e3b3d7ae305b179406e129df4657d2139f1e00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100fe0f359cbeee905f5b224b8191b9d2b0d8e246d80bb17a6656f8a724bc075fdcc634243e9e3e454cf4f4c886a0d2017102307586441dd2761a381931d552b6f3b1e98e39964368781538102294a81b8bac57a55a4369b79174249168fcb0f326f4680302047c435bb5006730650230071b2ab5a4883a7e363442edd926e7b2d468d6bc7194ed2fe2dd81c6413780a6cc21cc68f7261f0f480185df92f0c72e023100d9d2f5dbe23b243eadc2cea6243461d0928db9c1dea71c9a1a9edb5da0daf71247b5481516fd69bff50e0229c7e7951c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009af21d9100c8cc76f2ccd1f0ff4399158f6a173c224b04b3e75f1b9788a46fdcf4d183b7ef13b42ebc870094c5a3754502303a2c083542d4ba5638d724f94ee3f744d237c40007d81f68e138087e7105a4be5dae9669fff8ab9f60ddf74b1f3fd6e90302047c435bb500683066023100f0ae2b2ed7651adda7c6077d15f6d9921007d2596c3c9a8564965758ca38f4090d4abf441a4eb8369b2bdf42cf5422170231008b5918632b66061e778436bd29a572ba38e21170c368c8ea6b5ff6be63f7a9591dc19da40a120030c70c5d059780febd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307f664b520014d04fcfedef5cc55625613f2ca3d42dcc6931c2eb2fa3d7f01927339679df456730bb619eb4b71e9da58602304922e0df228e331f492ece40651a560e6120824bac7ce05c46d97c825d4a9cb93a66a5d733a1033fb4f0bc1e65618b230302047c435bb50066306402303615367802c9876a0ccdc3c040c0d7493ed4088f8a1b307336a2597678907eacc60a3536b080541d9633b78560168963023034bfdeda5462615f0f9766f49b4aaa42a88ad203b9e346a2bc7c7cd996a55a9e6df6acd8aefe08d8a780c071d978116f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303bebd8391d07378c2c35efd4980ec0aaba7c972f8843fecda10dbee197f1e5e8941b5e3e2b3e9a4f640075a38ffdf9b9023029109a0bca899c43daf381b8ce240bd814da93041b31106c9a49859558c91ef2bd0e5ed07a2a7d09b9fafad3669b11550302047c435bb50068306602310087574be4941c191155248481b67dc16b5651e6fe88689007b2eeb1df6b7c8f377fecbb2dd105f4a5988ecbdca375fa38023100dc83874afdba24208f96c4e497f3147ed62b64fc9aca56659d6da8df4c1d4888d9431867edffa7043bc46d74045c2ec80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e7031591c3a0e7b6d6a9e3c097ab24a630e2448473573fc952656c90bcfe11642447ccfc6ec668aeb9a5057dfd07b4f702310085b12992f2cb4276ccc247f04100149f58c1302e8dcdb4cf5b9ae2e750d66b8097e73cb182f9702dc6e127cf4f90c94a0302047c435bb500673065023100e7ef1ea7453f54e41aebe6999fc3f376282348e54fd1a4c75058643788a7f0ac7feacf1a9b34a5a9e858aee3ff2bdcec0230144917856d8b99ce9a0889d43c6e499fe64fa887e29179277818ee19d7429ed43aabed1d6db4e2c0b44683a00de791090302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402304a05f56b3790fcfd2bbc3a6d975b0347727273a8430995685ef3f91eff9f760e6029e3ed775f76b4c352782555b657a70230450288bae6feceeac8d56d6c40d537397d6ce902c626ecf851366a0a4dd023a39d886638e24631bf63d41806aba7ceb60302047c435bb500673065023100fcb3927f48d61e1b956b78f071f2cdf17b37a8b9230590be118c3fa49fcf53bdb63e3d5b6b6f1e31da092f644e232b0f023069cc770a109756985972798b5ae2ea175a3b7c509c7d95e5f731729a7e200ca918f8e5f1861023fc9dd9dc2e06a62c7f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023009c21bcb27f8c39b51552eb1e625d848c247b185a5e81072533a46b2b5e339d2fd7515cc6f4aa74ec20f0ad477c92988023075822562c224f43bd3946f251fd26d9e0498a2733cd1e001c14d17085ac864bf09e61c2fff5f5c2121b5064dd4f7e31f0302047c435bb50067306502302cd9d6b7ac642bd7d72b145e6a95b2936e798b0839f09ec6e19245b3bbb9408da2ba717958af9829c4bdb1193dd11aaa023100ec4c9bf2e7436b0b8db634f1e2cf532a3c39a243cf1dc807313104433c64b198876f4e426a583ee273ba89f333150c310302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305a1b22e66cf6f376b3fda41555a4716131a99a00a2c874b91df6b720c876d86861d16d3e94a7b6932038f3a1d5beb96b023100f5d0c95426c831d0b2d12ed9b0a32152eff43f5491a817768e0cbb7d027142cc8e3670df4347cdd0f55c9a7c023da5400302047c435bb500683066023100f40af386c446565ef876949b7739e21bf7dc49e884e25b5076bcbd99fd8d3ad445a3995b73060c90435d54e30887f092023100c2816c27e8872ad61c9526fb460ae65bb0526149461b1ed6d20ca3dc1451e681115821119cc44d859ba83529e37a06240302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c92aa198f3a6e37f37ec24025e4f8fbc757875a9eb5a6cd150947e1a02ab07010385ca9f50fb1dac6f70d6d17feb0e5602306ddd76b6eec5d63b04cc1c78484a7e4a91b64b4a0ec8833685137fb4f2dd5d9d157d41dfedf72068a85fa5a4158c98eb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e27d2bc59f971c7eb444266cbfdb89e0dfdf0dd7ef800af21d946e9260b3ee691b3b8a7dbd74ba8ce0085f0df9064aba023100fb774080023c35c835a81fef186621e02523bc693df0b30627c9e290e7194b2b818827595f8aa878df5a6fedaba176390302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023055bc280ddd3ef76a260c69e3d45a4dd53a472aa25dcf44d0b6166b5168957e76bf429cdc145e28b038ed1a15a6584d170230406fb303376590d57d932714546218c1de9378e4823cf10264ebb8abe4ef4ab173605ef05e9a6c073b333f3cc795c8310302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300843878f52731c528080537a894b5e19b5fa118cbf749448d46ecb3e050099f528414bda0d23bb329f5e2b34ce583b5b023100d5d9f5d324eae8a542c49ef84983eb6d651bcdbee7f91a59f0f01eaaf89da547362a8bc09050dc0820eaf57ff47780a00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e58a2af5d2dd34d63ef99678b582954b6fe2ea81ff97cf70260364ced0c1ac0110afa35341a36afe115e0738f5bcf7d9023100c77f6c45941193ac71908d92f26cf1ac6e1caeadfcabea1843918aa34e54b79d4cec81e73a0bb65500661242b92cd37f0302047c435bb500683066023100a064a109ead36c9326846e818314ad0cb08926dab7d4368e16cc342ed51e8d397d79654990640d8ff5cb636b57d367d102310099a8e96c9a6bb8739fdb7ef56992ca2c2b870f5ec5df4d62d020b3e07e54d4d663c47c0cbeffe020fdb97d47ac777e820302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023069f63243e9e70226041ba5edfb6d5c1dee9d4715c7441d3a64b5fb4561badfa45e3f6fd0aa40a30dfbc04a43c466ea6c023100a18365ecb0735c85a3ec3f15e937ac99d970f888b6d8733adb99db852d551b24bb1a8623b58ec4722c7ac69565b3baf50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310094fff070d229fee66b25800b7cbc5dc96c76d012b8c0cc8d3882e48a532bd785de879aefa624d98b589aff672f908136023100b5f8ad062f502979daf024984359100109d0eb2662478216375b96235b71a3a251193e51db0505ed0e5f2f407f98be290302047c435bb500683066023100bb31f2c0433a4ad6d62ce4c4df6a5781bcb72cb017a72f520c1c91e3dcf04e7d3c5d64518e6a63c5d84ea503c022582d023100b4fbdb1928ad607770dd501101840648651422f123be0ba79514e0b2a2912e56d93b53b06f883d65d2a95957899c757a0302047c435bb50067306502305e03035465df6f7f7901fcb69dc52b862131d38ee45904c558ff893b1d650d93edec3e9157b7f93613f48af095ce0567023100fb5848d6392465fdd46c0870bdfcf57d7d84865e7abe9a6fda1f5eaccb643731e1b6d3a30dafab019fc3738ea480889f0302047c435bb5006730650230594b16d6b9fd2a427866410b42b4977a573e5c3ec1ea67940e13aaa14c798461708da056129df545998c46485f68862a023100a33732a2730924b68e9bc926dcfc015329dd3611e08e549f4cf3f49644dc2f2714e00efcc3e3618d5d41b145369552ed0302047c435bb5006630640230674e0e62be56ceb15490e2ad3371c311d774d96ac510ba22fcbdec49896dec2566bead03fc1145c7d41af70d6c7eea0502307781722894ca6529d4e18ca67da7e55df50128b82c756db6ca35a6c59f38b4594f64b6340354dcdaeabd5e40ca9079ca0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c832253a56137c3be553800041f27ac783885f3641089f1c1af335ef2f40674f2e157531401c2c809858bc304339fe3402305dd223290a76b443c560dfb09453edc5dead1f0994562033c02fe7e5e4a0f63fe11cf8e85f4f5c3aadea01f616f3a2120302047c435bb50067306502303b41e36c37208c803e2deb9d54fcb4dee6815b3b2fab19ce6c53b69229bb6686763f366cbbbf3bdd0574710a84be7d24023100cc9e7528c139f706ca170851bae6c85f1d2712e40bada693526164cd204923184b786d7e7b3fa41016e9907fb891ed2f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d88798b4d1d38a95b4861523d59523354b06101d475a4fc1a6b48e650fc62b828f27e798b3ab4bcaccb67e9c857a085d023100c4f060a8b40f05a647293a79c2f9533fa29064ea37916c498c36dc588b97ecaac5de21eff9c07e60ce4f9319688ee04a0302047c435bb500683066023100f847941b0e7c52d295e2c65c6945e3a73f49fb5367c20b1c5fa0372bf8ebb73fd30c6317d666605bca26096664010fc4023100e35710fbeeaeeb561f47e4ed97952ba1e6ed43e24774a24c24f6992eb0fe83af0c0d0da8a91fa1663766a273c80679cf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300dc96e36b07963c5ea2cce11ed3591ce64c3c7a1841f116fcc3fb19561b94062c1ac87b4be96d2e62bdaa57aa648f7e3023100df4051f0155226725bf8d35da13c8a7b86376f04e68435a5d0bde48544e95eea175a4ffc7558e98ff51bb1677f121b260302047c435bb50066306402300e94c0e4505401e2e9ddeec28cb56ac382cee150009d59a754eec0e9b13883e6392fe63f92a16f95430acb156477a1e10230446c9139a93362b56b53ad88a15c5a431ed8c40e896805a374d76e046116fe609611d2ca07b9d92f8e3e4b92c326964e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502307c3ce76147c9222b96b7d01f4cc419dc350d13418286302e990caed8402a90864fdf22ac912a70cd5f6527be6578bf3c023100941f8a21b6de697fceecf82b1be53ceaaaadc121354b12ccb7a458ffebbfe13ba4557237b6f5fdf105cea8cf2d929f750302047c435bb500673065023100db900d9c241e8b1dbfbffdaaf02330115c6d38d07a61694b5ea4dcfb87179f631d8ff8d2e94fcc93816b5a97ca30173802303c3c9e29da4febb49bc101e81b5441d8f7708b07600a1a95fe172fb4e55020ec538d04d69cd6d328868a1f6b79047dd00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301b0162793cce9219ac2e3a6a0cb5927c68eaf1ac2a914dbd60a7d29e7f74c8646259648003900fb25e0cf18865306597023100a1c71ef277b56849acaeac049dd58fe013bf2470900bb0f68b17eea7ca6b21309d64e3ea3d57c824562a8d61ac7d3f0e0302047c435bb500683066023100be5a3ae12c7b587941ec9ec5ce3673bbe5ce14698dbe8acd57bcf0a4ab757ef3f8295298d425b5f0099689cccde259a5023100f9136ebd86c82e259e4b7f43704efb990e93956b970c626f0bbb19c5049d3b8af5e8596e2ca7c08145f00fab081fb7e90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ea57f6721a546e0c9447f0125901743ce66407a5969f36b0cf98451f7aa9e98dcd74f05a1ea876dcd7089c5be9fd4a2602305e35b9f0ae7ce1cb5d29c64f691c245495fc00eac6bfc77b83499b79482b19f36399e51aa8f60f2d99ac08b5de1ec9930302047c435bb500673065023100e7a0ce5d46d85cd1c2995e8988e2687c7c1961aab319d7b4e8ce4f89f837b7cbb86648baa0758db442cd34322e2076e902307567ad9d39d2ecdb326949e8393b7e09cd7aa68bfd18d745d9b7679dceb0cdb0b9cad79fc17ad17ac2c78c5bb403e3fb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300791bf419a416ea3dce8072a8b733c1dbb96d8c914a6145d1684260122bf294856af98d0009b5ff2b25d863585b9a854023100a0c95b723c1dc47b5a345bc882cb2a1ee606b22c731bc8bf818ceaca240f756c60a87989a2c9cd9b5d52465ebe29331b0302047c435bb500673065023100b6a77645351d100b60c55c8dad89e89605137f8559892ce1e9363a9ff045ebb0f1f4737df17e2805e4e65563399f273f02305f27396179210978bd816a8a7d65a98ab83fac74ab031fb2e5207e44b2e64c4a00919666bd507d691aa92c6fbdc3ff2f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305a766420e346f640ba95365af26992f61fb87e38ba6fb13ee88cb021a73efe046f7e6a981960047923582c561dbcc5ed023061090f9f9a32e4079c6489ff3c5105f498a3d7c7374a45e5d2adfc6725acb1289bb85866f9a51188eb3622c8935405900302047c435bb500673065023032185410edfc3438b94520b7a729d36495dcdf74d1c29bc33a47e00a281c2265e283dd2d78830b06b519cbd316337cbc023100b812c06d444d040a8469c6d613d6c7ebc3df8bcfbe8f3d1d19daaac251a6a3e32e4661174bb54901fa09fe5edda0c6fa0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230051a1f67ee2597a02bb0d63507dd5dc9357786de68c7662cfb181e39eb68d128f205fc5be6648d0e6cd4aba04e5e4bbb0231008bce575099c20ac3b07a7f07b7520a95a63e06a1b8081cc675b497453e9c34b7fcf23d2973dbecec4c82e726deb831130302047c435bb50066306402302d879846267823dd245072020884bec4fc7909548e95b62e0eac70f4382dc1abab070a9b698b949269ed53fa95166b5402306f1d4cd2220f07aed25ced1a9099cc1f619190eccd3055773c6f75727df6bf9c1244160dfb5736a533463e8cd628f0c40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009a0dd02875c55a638d7b990a22bd2775be51b7d8f7c9c360ec9231242563dabe537f292eed4c53797887370b030c949802301549a30d2846e411a70570e2eea38bfaf1eef5bde6c162be8002b60923c84a87bbf5c7c727b2cb89fb8833ded971df090302047c435bb500663064023027939a5b741b727742d0f3b8dcff971a40f01e982c30d54910056004a59bfdcefe4822d82f09a8daf9ec987215de233902301e87d735fb42a080bc46c8441707d229511872a8aed8d70453afed02c7261eab2baed59fbd194600c83b2dbcdea983360302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023048951fa530fe50c855bdaf12a7851a85f1dee028f4e14fe17759045582d80f6fe48bbf4b2a3c829c7de7571f31b3917c02301bd368b963c0ad819d8699ef0ba1152ec8039766065c7a84a63d476bfa961312dd558e33b2412f97495e026670e9570f0302047c435bb500683066023100e7d3706fad8d00ba235cde487fb4989a82b30ab89b92c21b58ba682bd4377267750ae24f2178c861e82f884f7bfd6ea5023100e8d1eca904b9e2c01c3ea7dd7817b7e777207ccb2da8b9c05ef8c4dbe8649bb4c0d7488796bb1267dc762c23ce62f6480302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230403ea6869636e207eb44da5c965de1e1b18c705b51b9e4ccde70f6109fc14d2648c89d50145092ba0207f0c019694de4023100dfb8cf36309f95ceed3665b2d03aa8be712b5ae62c752aec5758e6af4698d1292fd100c496bd57deedd59c43ce28d1db0302047c435bb500673065023008820901e5929eb52c71d0de0af44d78451d9e76b586acf88e1aec9bca695aa5ced9043831bd097d5db6e552d86bdce4023100945cdb4dc46d08fba8f6f9f6c3c6aa0a3c341e6d0fd6c6269e5548aae8c03d6e27e0111e0c88c47d3a671667facaa1a90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230176484e0ed3e4086e9b3db03f8aba1d652cedb0cc018b98d94c1fa5bbf1904fa050c81a5020fbec9a49bc0a642879ce102300b16d75feac7a3f84ef16aca561ff5267f1b188296d311dffa8f2ff11e6de4df7f0156062cfc7e78c5cccb97bda9e9b70302047c435bb50066306402301ca012c5ed8c6aa4eea3fd3e70be47fdcb31e0dc597c07d4211eb7f010a15cf58d4c0ef150ad1e182dfafc6ea106ab0c023004537993d4c356ca6bf429d6f6cafb9b42ab15c32fc1f42b3cd777d5faceaf2795285d81fc0a2fe4db6f7aa6ce27c0000302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023037ac07914c155dbe27b396c21f1bf6f9c5740edb5e61cb0430636b33658a4b66a858275fc6ee2ecf63f97ff8b6c7699f023100af16951a5076f4ac6fd6f9a1444b67d605c424ed89f25af8ccad20c5f1253d33ca29afd101977c919895c24ece6b329b0302047c435bb500673065023100823e389ee45de3212ff3c1421a99dc13bfdfa292dcb5c2b24e74b23fab44c15839fda0da41866a30f5b6cef9b41903ab0230260d08162c74cab25f5088341e99566fc40ab61782f516e255ee6f1ddcb89551bb7ad666d84a43a427fa1349e8d38b310302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b85f938fd748f1ffbd0e05be0fc85967abd81b06dee667b6aabba9ca608b7b418334d382ccf30db9f40ae5a4ecb4a0e002304929d0d9ecf8a96d2696f286d3e230366ef2fe2c9be3c310a3dec4c12f7adc8bf91a3d51a09d3e5821a7926a290003180302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023041afc24fcd109d00cd6503077a6bee157136cfeee409e02138c713f0dc6be3d20e9801abd023b60a46d65d0aafd95261023100b4b52970342fd8f9beac8d975469a1633624342030ca854312984018357c734cdce1cc80f460dce997abe3f878b814b50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008bb6ec253954cb866712afc47f527c9948d0419da6cb5d8b559299ddea6f2de65e85fa1a2d6b18c704f832477919955d023100c170b1145e4b949b474f0aebf794ec53fba1d38fb523a6eb1c75d05927e6bdb126b6167c7b76290638219aa04c1ed5af0302047c435bb500673065023100f7af91609df5802f704ae796336d75d5b2d8aceb03dab4b4894972f53fb1cfacbc97033a041332ea4e737ac70a9d24df02307491f49ab3287cdfbf50d5f541a994ef03780215ca9bb340d49b75e666a06de82f14ba640f3ca86f39f6f9cd819884790302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304bfc1fcbb7728bd3ea2ece3f1dab5125e0fa97c27d33ba5c28d22ee33b89b31c74741cce9b34544f22e3eb2c0db0328c023100b3a9976580c8d83b88ac8b8dfb900f60f80e17a2320862b839b317457ec6ca929af887b535151ac33e7914eb7a47cbd50302047c435bb50066306402300e5edd0eee7fbda232252d4862ccaafe2fe4851473ab36333befc74046a780c5dd781466a5b6bb48c501a834f841e671023038da9966809ec48da1e91136ef0495435c13d3faef3635211e8233cb20e88d1b920823ad9f510c6ec5f8cf7db78574710302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100878889949cd40abe836c044b14e01e981a2c30d4a5cd3cfc4bf2b664a179bd6c58ea72c8f54b1fd703342fe512afbfb002302826e5233d6f70c446e9e4ce6961a81a47a5bdd127e752790fd665d092d9567f45250db420f7ade7835fd4a80c6255d20302047c435bb5006830660231009c6362bfcc81e08eba740211743ddc74a9c4712f865d5e3e106f5f45c567f14d1bb2fa5927b29e2e9c49c58e747860a8023100e68d4ebf466f1b51c87ce296c86d93afdbc7befa7399a288ceeffb45d9f7cb9076096b73c8bb72d0facc1f501ce724380302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023041f85123f11601e2031e2bbbf663adb3565c5d68c73d7570ab8dc6338f50fb1e5e22db1ec94d9546bfe257fd590a8c6902307dfd43a7fa53735a302e2fbf778126831b55d40c88a55e62e07ba51bb2b3cdf3f81cf6669a63d7b1e938cbf99adabace0302047c435bb500673065023015dee471388d76ced57213e6a12ea59c82b981b3cf7049289921d681eaa000f931762ef202977cabd19b5c65fd9a7259023100d6cc5ff6cc99b0abd3d3c88d6a0425c497429e98f808b320c59025cb7f031b3fbca673497e33a476d1631e90bce516a40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301cada34ef2ca60b1d4e56fefc7a585f7dea6741cb84af105568cb028511e8c008e267ffced1d16a9ec1903ad0d62ab33023062466d8d54cd0498978894e794ae0ac2a2c50d2b61178b503261275f0d155e63b8f32910bb27ee3a1b85b3724e4da2f30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230549806cab52dfa0ad03fd6a2195fc276642bee3509957b60f97713693ec282a14b669cbf3ea83bd675b174c7dcd214d302306db562c73efdea82d19a0d3ddd6b7f9e11151f14ee8eaf71919347061f481aefcda8323434b4839ff7e43403b9c0a0e40302047c435bb500683066023100d224369e25f4d71a786a36e53718e92a186cb6c95e665fd57a9e2a419dac347028b5ffdf6588d29fc2af144948edce9a023100bd3c4b48c04eb1b0d4f6fa8f231077b509109ce97a9aeb9ef3aff0e68cf77fea7e1c4d64204acdb4d6fe861f093ed0730302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e7c71d2fef95d954f9dc6c1f985950ffc896f39eabb30878b8db385019441288f672a975eeaaa3b93e413e1f336da5fd02306067ea508151af4a2210d3fdb58179747dae33414ed0ab957bcf23c39271a6b703c9ff83a66a831c661e4c7437626e730302047c435bb50067306502310098e0a6494da4f51ca3a5a648550a1a41fe2e4dace7061f19f22ac610041ec317ede7b5268a7a550f4ae9938acbb5387f02300fe68cec008ded63cd9968f106b61d1cba1dccbc235599550513ae02e221af299e0c14724b00053af932cc0aa81214c40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304290d5d886434c934e19bd10626fb01fabff3c616a2b0760d068a4847c4c602f651c9b6897eacbe5e60fa7a29166a208023100e6d9edc7dec0f4544ad882a7fa5fe2b6959183031f6e7db731062bcd03d083df4d33791f8e4a2b651f2dd37a9698a1310302047c435bb500663064023011e7096fa894e7d92e79dc30656f0d044f8af0a07afc2b2bccc519937a5eca8b22c70ddccaa97d3a4cbb0c6ced5d39e702304ad74a23061038394bd9d3c10bf19cea32549bcfe9421775bc2e4c06539115e046dee5f57378088deb60d3df9ca77e810302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008eaeb7990140cc98be90dee9bf5b87cac50797a02a61b947a6c0a9357a07b161647d90608441a68b4f27d55e74676a4602304a00fb83e4a5355cc89c208c54738bc5c5419ef773689347615fa96593a4d79dcb49c34ea9ccecfe5ae9161cf22734760302047c435bb500653063022f4c3c2ccc04455dbc1c868464d8bf8cae872167ecae81301b1535c1ff6f33b3b4693553952c0d8b26f4bffc79903bdc02303c725045510344dc9dc0390c9c11fe157925e19e56fcc4058921c75541ae08504a8df3c4d2b5cf622faf6eba0161cc880302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230719ade8c376719eef0ea04eec292d491428ce364174adeadc8bf6b6e3b23a0985ddc592310480a068133f1ccb4cae1a7023100cf56af8ebe0dc33e0c36e7f42a3f2888d0ec0f3d404f3fb13ee03e7bf4c5fcfa27e9d64d49722abe06bf8f12d4c560920302047c435bb50067306502302e031c61c91d459aa2be0ee471626db83e718962d7e7dad6fd0a49cb3ec1e38d6e5a6c3c4b8d34854180b875826e569d023100df7fb19da99afe0413922a8c35ad5c15df880e8db1f6daa06563364ae1b723c1874706c805733150afb3cd2cd1640ba90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d06475b3df3d052f563b48f10685fec9aae913b1495557cf2b7b6457703d1fe1aeb467483bfec9a9ae4ffc9ff1d1d0e4023100fc6672ea164c94c546dbfba2c3cc5ef3491d0afc13b05e7a53ed807da9478adbc85debe3f6c4e7bc7f52df0cef7a78320302047c435bb500673065023100fa44abf50b457f8d1a826de6111e4cc15d7ae0bd547af1a032a678b066be13a6625013d5bc858ca077629131e8f5c81f023023a6259250ebb02c4a64a9a7e813601d668100d96d5956bce7e8ec8d03d309fc9f8722c4cd2bb004807a752aa2e735090302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301ea0cbf975558b6e497b174b42f11319d16684de60b97816809caf564460a3437e6eef53c753a9f65addfdf809f8963302307c1b36e5f47af4f802ff0adb33a2130b3a4e6d479a4483a92b7c877b4b6b980d07cb31c13c899914073e88a9679117100302047c435bb500673065023100e554d65f51ce7067e655d94b337a4dfb70d36331a2eb6b07689b6ff94ae1b71147c38cd2f0303c43bce7a8a7ab2cb13d02301d6bb0f5e5ddd606f017dfb11130a58e21f8d4308e5c74787849dd844ee9c219a7dc658d7d3f1cc42f095830bdb5295b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310083a366c58621ad777347274568b1f54d8cce52e076b8bd607c526e4d85207130b33449b48c50f73383714c9c5fe2ddef02302e9379ccc11376d81dab8e0f3de1f3fd591dd907a51dd2ac34590b2845c772ce6220c9fda9ee79814c1a48c2e5ee12290302047c435bb500673065023047ddbe74df5af212f6d8481a6126fba3f15a090853f0619073d3851affa49e2f39e8e89d0af33e3bb1acab617a95957e023100a9955673ccda1f1fa2c3ad12ac877ba466bb072e4778eb0971d4ca11c716118d8e73b9c50e24c47c58c7d045f2395f660302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100fb1ec67ca305208b952179fd1ea1991fdce9783caf241072cc027e7cc6dab239ccd47e32aa4b2186373fb225d3313519023057557e0bf607f7448a6a80aa8a2c78035fa1d440bf3dbf8f42c0b4eb87793235d3016b622142144dd2f5f93cf589e81f0302047c435bb5006830660231009192ed2dce50e7abfe3a2bf0f2c49ec01b31bcb58d13a0d81218e80536fa34348128f14cedee69af0687734d16cfbc17023100af1e315653b04bd64b7b71dfd04d93a53dda308c62b79f4279ecd0b2ecc464b74315af57f4e41e46ee75f97c92a0ccd10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009b66111e040af7be3edc5f5d5e2356f0d0e47abc04a96f9d663b9bc0f5ea26f747d795a54636a895f71534119fe16d72023100d2889d0695cc72d2161130feaa6920a1823cba3b7af052d8884080e1d4c37766a87f5e1585844afe5350e706ea5368e80302047c435bb50066306402303b4bedae4d71b24d337420032cc3bfef3e4f0fd4ecd81442214420de29852a8ead97f016e7418052b5c7a4ace96eeadf02303d8d4e2b2d8ba13b9cecf8103c4b164ae9c796a9f08201c8bf26b7728a93ab76fa1ebec8801a4f3faadec3d7c9246af90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230106551912ef6c7c74d1fc62221770491c7ca9b2ea032faaf52bf4c051c9bdd922a994fe34c90e611e83c31621ba196d90230681e97a7889493e48b89c8a1dc7792197c05c2cb49246242ad053f655a055dfff8207bdc040d2af7afd6deeef62983f40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023010d275f61ef99cb8fcd08fe58235fc7a0f1a5ea17da65b804f99843fe0740c9c97c75fa83722c17fa935a954637baecd02304ff0f5eb78144f0fad026af4e53c986f3e65d433d0de28308c7574fb80489a24e31d9b7b3e76636a89a5833b7729489b0302047c435bb500673065023100da78380ec1e4f9d846b23f0a8fe9fd9ff40d7e174d442ba4beb93c2311b3eafac1a92a96bcc8f7a19dd33418d9a463cc023002b7baf7face37845938b54934196321a3792e7af942e3e430bfe6faa14a85f14a639dd35ca4b342059f16c2608f83fa0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100fed2801a97650305792d21953706713a37a97f0a56f0f25d11e5646d564051577cb812b42b560665258b76401aaf8359023100962109576da745f40808332988b7d6fc63926e4ef1516d7ad079cfa7965aa36fc134ce9fe2473c2ff028113b2e08c6f00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230362db4896d17808e9e75ac71ffe2d11b88ea9dfbe84c86dfe3968e463afe4ba22933221b5dfbf54ce0c8aeed3eeeb1b9023100cb4abe09d450649c0cef5915135370eefc1538f6f0a1f4cc497651a36a38e8b158d4742beceee98e0432838bee61aa160302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100916787e8b344f71ba3ad199002bed1e84d43d93e09c5b0568dc89766d486a260ab79dbe5aef8b2e79be48967f24c1e230230146146d14019c9c3e024b9559fb1f1d890a8a0a7f5f3715c88309d58f95c26876ac1f91527fe00f426c9746d7cc3ad5d0302047c435bb500673065023033de5e6d60a0a1cb753bd1e416506c7733433e784abb41561c3848287fc914cff75dc30053fd4f59e199e98bb2402e17023100f4bcbfaf455527bef0acbacfb3318c791aba762667ee71998c09942fe0007a13294510634236bfcf276e0a6433f09b5e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e3f4f1273b9ae0b31e01a9103004bd6a7f5139eda4105567fb4e5965458ef2ec0d6ca6ecac29a3778a2b811ec063000d02306977fea047f692d2b499add3980117838e0823c4fc796becfec5c7ef32e26c065a3d2eb01132d89baca300ffa2a6a85b0302047c435bb500673065023100b3bdd3ebabcb4b1c6d2d42c1ff25197673733137f4259ece7135be1f61c7ac1acc27743f571b1605340b3a1c3b44b67502307737ff163159c530475a596494294e83e97bf489d2a788dad4576c221c52372ab8f7be5fc31c1eb5ddd06d45b73e1fa10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023052f1d61a2730084f118c03ef6a602c1d2c639fb1f4597e9aea37ce5a8de3c9482bd048fe7d0b64478e9dcb3c68fa46ec0231008b338e51269fb5217aa700707001b893c49463b622b57d371a545e313c1c792a81d8cb24c5889974137de119739586240302047c435bb500663064023079926f5a8bff97ab3343330e81b3dd2adcd25198083a5b95441753013bd4e9b5d654b0cee0d334d87c184cfae191fe3c02307d1bad13d444e87a6acc3c221f0b8f26e25ad02b38caaa52cafb2c95cbe90756d52b1e7d81a3f19c028e2c7c5ac5f66e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d3d09c4201dc8dd49dd40c6e6ae0106609f963cd5c99cc1def8d59e11f7bd4f2959e4f37bbe4128739246b066f41203d02307631e3ebd1856f96914a91424d1efc49003460777caad030601137e153fdc59a1f7ed8393e5872057e1d32f23d9209f30302047c435bb500683066023100ef0d1cfeebd84af0b7cf15b439ef795c18de1f1063080455305852a8792dde23caf7dc6026c005b358882f8cae158e32023100d49073841d99851ee076ad1a4c4164495a1798fbdd29ed348ae1e9fdfb76bfb39e20a81c24b9ecfc824c77c1b6bb8c810302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c2d175867d88cadccb3ecbe5f0c6e9921d56b2a5e339dd36ff996b2d00b731e3ccd11f14ca5fb0a777bc93052e9c3f7c02307cbf2b0b7b600231740fdaca54fdcc1311caa652f5ba592255af5c2607ed28d20cdbb560d14b7eb0ef058c7deaaf5f470302047c435bb50067306502310092fbf953cadf55e00f9e57e74e776c07412e5296f8e2fb8e6e308a77fdb29450370b6d793ea7229e0c89563e1c342e2a02307f91041cf5323efd9b894d12997f44a637587e360b5729b58b4bbb245c207787eac7c0109a2766888c4a35cce3412c9e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f8f7225f8c4e8572627377463ff74fe1e562248b839aefa89f4ed37291b98859be3dabe33c14ed5d941f99e7fa4bef39023027bcb7410630ef1bc4faea1651db581a1b6a023465d95ec47f9ec382669a399cd210c6eb50c9bea7f61ad7f2a558fe800302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d6728629b24cba2bfec062a17dc9b9419782f8b7b1911f35e01ac160d8403367b5d200863f26dda82845d74e520d05670230273d9f175013fb314e67b288e80cdd874511c93c0a7388f90fa58bf1a06b448e9bda62575238c76c9d14400a4d8004050302047c435bb500663064023009add2b7e6c6a1bf1a096dff50d780858c4c2c0c0077f5706301ec01ae28d0732702c45e2fd7e73560ced4e7cb5f43f50230376f3223563478adc0d002fbe9c3ef54760d0f2b09bc343a790adfd8a0721f2d5058c3a59c68b00b39334f9d2895db290302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100dcfa11e2024387b09e0685e612edcb7c6281a740c94af75f4c684a503658540dcf46429aa0d35f3c8bba15aa56aeeba9023100d269b6fee95307ab2c019dd96996a1ebee58a396e77ada2725ffc6ce20441908fb78742c4b727565596f6204b3a932ea0302047c435bb50066306402305119dbc081d9d14d95de95aba9950646e5e62c3df02db4b18e0cbe81b1bf54b471a0088fa9a326cb1526eb9f729da25a02306be876d57f7989e69ef3218fef83634c84cfc40a2119994057ba36b37867e7d71c0a2f2fc5c192856f4a32b48e39f2590302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100871b8463197f337ebe7cdbdeefa9513db4b7b95b77a4cb67346b6560295c8f836525423bb03567c81f8403799ff08563023100ce8a42b6e39288c36fbe69b5b41c34bfbce8a9947c74262183f676659d9807a3a359bd0748dc0331765cf0a0a9e612f90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305f2eb58a473b63919398b0c6d2e6c4e386466af79c485430fe532edd34970bf6ec449320833e1370553fe204388837c802301a115a6c3c4595a64d72138f7242abd1939542bf01bce5a168d69d345cad65402d185763e86c7d8cc06294c04e4a8ec90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d5f1bb3bf76bafb8108d1968c147e8b105562480277551b1e775208f8e6613888d556dabf7c51db3e2aaffe238b65522023100d1d5bb9901fac356c3a19bbaa6415b9973821615dce31968eb74a02bef0796c492d39e446a59a6a0a1d8f753656aead70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d32d301fbe08c73eb6b402972e748ed69ad6db2fb1bad5fadb50f171717438452944eee51cca321d6d3da99a0b27e909023100c4af4bb7d3a0efab926b8696894aa7e4abda44d61a5fbf90a6bb9e8c7a517bd0f4424091800a6e8fe429473d3680cc850302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304747e5e3ae06db364e48ea0a50f4b8570b7f584fb87679f8e636f1220247a2f62b776d8b74649c7c7688cba96d69ecc4023100c9559dc3ae0ae9b1c4fc4a2f9ccb3ec81fe135f579b54acf3f9275a843848256a23247eb4f68fe34430ac616207a1a770302047c435bb50066306402307e3cb158e35477b65244bc6cfe1198d2bc6331762a50aad6829857862eabb1c615d1206ec00c33086119d91081ff9b0d02306a1352bc9461d95fd12b150d0740f2c120fc9c1a1c1ce2c30303ec817bc17c33ce9512cac04223f2adf880c50036a6970302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230220ea46c090bbda49cc4d5787a7cec33a0145be3a100fdc78bb2ac7ac381248f6f2e26a29c90cc88c7f8f93d849b5646023100bd5ea25df161f75d48db12ae162a5d7e08a4c9fef4b51ecd631688b690d3b882beb6a5be52681e61f65ce8052780f8210302047c435bb50067306502307bcccde27d287ab307b665119e5437018321f8997759fd5236143ccd039bf7649a38f8c85f03f6c1aced0b52a2acef7b023100b33ceb54d46ce330d21ca02b2d45126d34d556c3fb353345073661e55c3e9a73a8c21169aaf7ac7db6ff11442a8668d80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023029db3559ba8e334ffc19b16d4f3a3fc10697fa7ec1bb329e55c744ae1a271d7af9e6f2187721cc97cc87d8eca183d5cc02302e80b509cf94d78ec2add66e16e6d3a9bbd7fe0c65d92f35251aa91e58c398043122d890c8b10323594633d62ae4a0ab0302047c435bb50066306402304648062e888e7a3cbab0ef3db73194f4a68afdc7db02ea480c9f7972af49229b233579a5bf3bd2149c010b486ccaa67b023011830783b2fb13483d42a512c9267a16643cc19dcf3cd615b8f4f14d59d57f72c02657dc7698e70708e598ca7719f85d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100efca8c357ff764b0c6cc963240596f9198b1e13b2012fa962855286f9cdbc49866b092ac3b91e74be4d38d35e9328e42023060c840d521e90b79824451eea383279fc19ed61ce5a3749fbe3829f97700e3c3744c39a83063a50638db3f0fd1f4370d0302047c435bb5006730650230448c71dd21bee4b02938d3c7d33d91b2b672e2cdb2207060ecb93d81f06e748fd04d82f12dd203d71ba73a64fdc947cf023100e54934cac4f82676e296f2f9a7257a78f351ea647d842a90cc63c15351fd51ab04ab0a2d8fd45dd805849109a41282d90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100cfdb461e5c02f3974875debdc0e899bff4ca123f859a57b58b946a85271d69304e709c8c65fe3a987aac5235c83f923502302b359705ef7fd0d3e7cb3f7b1675ae5bf120000fac7bd1949e1256be7d33c1d3a91547598bd7e3ff3b9c2ec8287b653e0302047c435bb5006730650230027b3fc27afbd25a8989c5ebaa4e84901e9b607d18b9a5746bf90bca814758dce99b0a0fe0e81bf0533cc8acf326a0b0023100dd90a594eeca433987a2a057f351c891f03f1923f1d275bfbc542d50d3e68ff021033710858b98d76553737cb7d7fd220302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f4f260352d7974a34326169317a47a96fe4b2359e11bd121fb3cb9d5b8e7a0152e7afc7dee5ce183b7e130c3fddfb84c02310080bee6900cbda25f212d3708d471af9f8240d043cc3d984eb949baf1d98c4f313d4a849f0aeee7c1ff0cf1134dcc41920302047c435bb500663064023063a0237d72f99777bcfd7497dde8932555bf8cc33a0ae25d87038b5c50c1d8576b6af6a129ffc51a327864b4dae3d04a02304b43e731bb6b2ba9beccacfbed22dc8c449813a246e08a686f8be194feb9f92ff52e949c314127e16d8051c5c3388d750302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230128dfabe0a6b197498052b35cb67e38c686da1c9f3303905a7512d7bac1e81d8277df65984a8a39b9779d0c26ae54c1d02303a6f5b80f1cb5b28bfc75a98980af30c77500f939e1c708c0d66875d5ab4281cc09a7858a54d5e20dccd54c8e3dae88c0302047c435bb500683066023100a760b9c7b652e3315b798340c3ae960171caa72a8e15882f18827d21f97c8be651fbbe2edce3a3a67c4b9369e71892eb0231008a91616194963adbe9126c9e19948888ca564ce49b3e8bf53c909863386d9a94e5d89ee7b11552cba103a08ef3b2f7ca0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023036fbfd2b5e92e50e5f0315cd414396c93a7a9cd1cb1f631b8a7c1ffedd5c972426a4da73822bcd7814ac316f7e158a70023100e7ea64b59bbd926caf72486ccdcb82a6ac2ec9cf9f023c235192a9a960796618250aa5d2469d31a34d03204ca1d132230302047c435bb50066306402300e041e22c37e4f48f5fc4342ad961243de54fc8565091fa8383276928fae2f63f9e4f58ac3c6277f46ad1a7ba672b8650230559198ada1806a368cb7c646e444ad7aae629e6fd01f9882b5b8bed7974417649bfd03aac6db8ef38a13be7e104a54030302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301efabfb71b1c3e46b02ca492ff1c121f88d735f0e4add0ceaea3ce178de5b9e8cffc4b1a94dbdddd349c0f0a31784be8023076c6b5f5a17bda01469731324e94fd1b7062576456ac676a02326c5b54818d355e02dcd2fb99aa2d8400402b85ec33560302047c435bb50067306502307085f9673e872055af0b1160f351b13f1b796c8b1c76b23f824dae38dfb06f1e84a7a2c85062feb8ba1b6a0871c75f63023100d70255883f4027a0fdc5161fb4e3fc3eb5dc68d7a4ccc0b048ce794ab6eee0b2ae4e7629012c41721c12abf69ea46fd70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023063f32e0e6bb7dcfef30068b3ea088d2e99a17736196d57e04c48f74868b53ba8596c105c4f36752f3aaba9eb691731620230752826ae23c83b212e4a9c01e02cd94e2a969265baacf64835625ac3f591e0c4201311410453006dfdf77c05aa7896c50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f087bcabf760b51eaddf7d455681bc3685361013329d0ea3ae2bb5bf2df0db79ff4a2dede4cc6c6b982d4689c301aa80023100c509d886d4c891d50a044519336ff5fc93e0084ae78345330eefa55a59b5dfdde163be435649d9e5abc7b11a54f089b30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302a3a2cd40ce1068061d6cb7ca1778eefef4b7ca5a91a3b45814c9b2fa5bd5e6299a361401d2524b428c417abe6e326510230618ecf0f66fb6c41d7b5d0f89cee64fe900e056dddc8a77f74793eb92f1031e040029286ab93a1e3ca9bcce0b3b75df80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b4e9661c1bafc8a4d1d59cf2cc994c2382837d60aa00a6b9e382fd334a7c34a3a741dbad43a95dfb9629472749f65be4023100de579d9ed396d6ab93bce9a9457d750c615d6fd4235dfd95d511a6ef6c99e57ca4d7f0962473e7854852d21f6384c86c0302047c435bb50066306402304912ac411aea5253c3315fd2ce9ea99890245f0321f07f071b7c4dbc2572951933cdd38483328dc2d25f8f6770c784ed0230317298d26f41032c33e88a69936bd1b7cdb857e351f35c46d0515a05daf5f5bf10d90b43fc23adcb09c9e6398db971990302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e1614c3d827647d92bb80395fa7f4f313c0e2983d8b734714438c19589b434a81653c9d3482dc82e3f6f6530f7c28cd2023100b6419f332777f1bb5df6b4405743343c26ccc4a663cf10f7b629fdf447b9b7e15aa1e4f3b84ce8f861e6bdc4833aa7340302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023047bfad77ceb99f15ead0b260f601989d2a2df149a6fae75821fdec914449fc2efdf5ebfdb1ef87321059bd8058e6993b023100811aab2ef6a2cae91049a03dfebe396096431510d677bbc711a9c1359e8690835a1575588ae3f8a3af7e87ac3ab308440302047c435bb500673065023065e6d7f7e42f256c8b50184618b72000b8aad236f28aa28341d8b57d7587cc4129cdde05190ea6d485fd265faa0145fc023100b18d1a83188822a4a5174e8cadca6672d64bdce3cf8f657f880cd1f7c1e10b58073bd774f64645a86169b7ec4a66038a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023055a505cd0de20cd71b74698e72b9981f371e3ec3737fe6daa3508d27a40a1126e8af796d8eb16509ed8b757c6ac298b4023034ca0adf748782acc2a0435022ad342ad88aec7de8c6735f0cd50367cfa0d6364e4afb487d4fd5aacb71ff74b3bad9230302047c435bb500663064023037709df39a5ba3b3496cc752a090db5c893ba1017c304258611467a0da3d0c027a879a35bbe56a32603b5d383a37a7ef0230497c2fb9ee1a4390d9b526b1675c8fbeb6d91358e61455ca6b0d726b688f84101a862f9248a5f9655d621b78f3c198060302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e39e8b17c69d9e3c6f2ae6dd4597b1e95cfc3b305f10823823c31641771ce5ccfdbd5bc29c23f3d9c7ecaba305f4123d02307e3a4715d754bbca238a1b5aaa0c32fa417f011c9bab00b991cdf7b7d1beb5c7720cb8f055213016c92432e8a12e3ab60302047c435bb500673065023100c2b0af3fcd96ab239f37a1609cee7b0d3b4ffffd24b5a4f8a36375669b97e788881db0afae12c5f80d0816d60d87ba5f02304ae7f006a8d72dea8c073ac31416b1be5c5177fb1b40d030425476b6ccb87259b2321dead50435bec8fbd418b4214a360302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a7a8650ebb6fe2489f222a0c9bc21fd2ee8310146bb53c704ab3603c2bf1b397b0e1fd1cbe4651e3a88361dba6c09c6f02304bf731782a22d641247a8620623fca9d5c8c2d3fd276cd3b32415c486eb29388eb858457fba3e22c361c158469baed7e0302047c435bb500673065023100a4bd50e377c98bffdaf32a945bbddbdc7d6fa5614f29e2b4dbc45a69c977e37d59c19f0e4a8b93675aa1b3fcf187c135023077998074ead97e8f011f73b7b500ae169115006ed17e164313a5a7dea29a097884e3aa239bee9259c10d5528cd92a08d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f8b9f7aaff8b94888eb30809e4a83f9aa5355c2c69368d65571584abb67b4eb6714857768bd830d355d3ea8e9b1d450d023100d14fa5ecd5d3b4b5a102631cc9cedd07a047ebf497ad2d98a3b58cc392e9d9ee40d2dd0a5972ab15d0d74e3e3c9eb2140302047c435bb500673065023100b54838341a4a4d8f88c82a4a8afd40d53697197cb38986827f6cd364d9da394d0a74b402c9e17f1820d4f2a61162454902303b424e44320c677ebfacde65f921fa1f084e320ebb7d614b493e37dc8c0d77de1279cce31321d59c22f69216feeb9b2a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100954536875cb9591cd27f0872ddd9c2011e001e9fd2d0f2e64105694608f77b630754664d5f683397aba4f1076e7fc9d8023100baab973a543a4bb429edb92d7bd5b016b8637e2e8309d0ce45583569456975d86a35ff0d05b4d677d4614dad64c9e77c0302047c435bb500683066023100a2dec96622b2820ad2d617492730906f35b8b9e04dd08036de3f7990d263f2103156e688fc2aa0e7b51b8abe47d121020231008b1de660ad7b02300aa49682226d8663c289f333641ddf605f276e5ec5f112bc913ed118c00da9656841d33f781f90b00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008bc3d0d93bb10fd829e53708bb7efbe0ac72c196327a2b6fb054aa8ab5cfd4291dac0a10bfe070111b4a967fc4d7ae6402301121142f01d9bf6dd17154326433713062b6cde2b08644d3da154c788c440675154478103f2737e55948b8c3b76957890302047c435bb500683066023100c5158eded3eb1c0cd7fd74aa2296a160960901fa1945870a4ee5d0576af5d3ae046c92f44ce4408be106e3763a82766d023100c7992e18411b2b494b19101621ca29e97b6f69e52752eede5a5f75eee4ae177c809b6b2c95e88c5b1c250e9d7301c87f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304bae979b59093b82b96c81b58a498188fa42458c243fe29ea5964a73c61217db4be150758520dd7a1d106c011aff74df023100fbf9e41680819891d5d42fd9314689ed9446e5fc6d9ef7de76bd42d5df789836e166d12888cd3a72f973554180dffc900302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306b40b648d66ad8a1a21ebd5239cf187841504521b92a63d208c32d6d292c5a9e29142da57dc7add09d57ee66700609a70231008843a4097b29ec825b9dea7fe4290b18d357c2ee71f8421855510cc6a1d28593a7b66cdb48e4e5ecbc2a97c5c04feffc0302047c435bb500673065023079281b947020345a7fdc8d74c2e2dfb38230f91d13c867504fd0c6893e425c2165718938c40fa8133183b095e947fa1c023100e87cc77dfcf1eca167a541adf0bcdb13e40193ae6a425e53b75a691076f979f8de1057c7905d71c38046b9b0ca4e7fe20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301b7fd50cc344a00abcdff5d97c603beed8773444c44ffaeddb564bd35c734f8d81cb33feb83bf89ea75076ca7a5264230230177ed0ba6bc819c1ac04b1a5d8d270924784becc775211c9b4f55ff93203c4177d16b1d821943a28b14972bb136b12b70302047c435bb500673065023050f152fee8c34dce36226561fb870bf64f8ae3054cd0d8572b6e2e79fdbe90cb9156d3502ad0e0a5108fb4c80e19b27d023100fb62595d190cb39e9905fa8dd6bb4bb895ade401be701ead08b35ae0c9eea3b60352b7fac4cec4bc70beae849edab5060302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302eab9ecb77c375ede420ad80a9dfd330038c945f18ebe79f5d96eb18836e47b75c5de2a6cc3d24f8f64fc21ff0faec7702304da7221e15f2715a67cd66c423389d80744398bbfaafe375b521dcd98612fb255fcbd581a992f1da3fc529bf2ba404ea0302047c435bb500673065023100c5b998a9097dd2c3a08933515bfa8b9c44f45ec11d564651b9cae99bfdaf8cd6998d963b87b4ae3cfc2cffb925443ac002300a6e89a4ce9c9eca127a40b7093fe4cf0b0132f55a65e7029f86c350ffa1e49b6eb1d2513b4c0c13fac3e50e06d0ead80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301676affa4e180c04c30e4bf85e4728d648452a90fc434ef3846f5e343d42ffc888beabf8309665ee1deefedae2598b23023041b41a768de888ba79893ca6a25d8c79c451d695ecd8a31ca3785e365171a0e507958bcad4254a194e73c38f2e84cb380302047c435bb500673065023100f8a5b6cb277a84a2870a2bbf638bd9a554e9247b421f47b515b823aea9af459e4cbff8bf176cf8d1c65c74c70188dca602301e39bc05bd4de58bb908c8f0ff5cd5fca1042d8a432fc43e54046584ddd497b27449e350e52f3548b7649a3ae48e703e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230349be4e874dcc22ea5d637a211d03a24bd3e7cac3e1d0e2c7d40b2715fd1ddca67b43330e77b910c390c04cf73fa791e023100c1321c824689e3c3d278ece4cb60427620dde55f5c90b02d98ac7ab3ff12ca9805731363ddf122a0bf48a516588755e30302047c435bb500683066023100cd7c763b7dd28c7c679df62956be19c8aef0d628e354ca3ec4782844ec105a3f3fc40b9c164765e81e170d90a7cfa9ea02310090035ee67b00a5634e992a9625e80802fbec9d15733d25b70437f0e01db98f63a20b5b5505edc8a0323157dc158454820302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f6e4100d1c8e2c0d0b671f13c09c3bf4c4600cd8855963412171cd6e3586ef77dd3d93dc56587cbe392b4944ee910c65023100c9a7f6eff38a6267a5406087ee27925466c313d07c49aa61f140a25faa9974cfabb801da97554a06ab4aed986fbf43870302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023030f5a375a82463828d2ff4022ae9ecabd7a83d1c965a791a83c2be4665a36ceec16d26d703d3c5e11cf414f7824615e0023100cfd49c2106f4cba97c03f55bf7941d9fedf4608055d02e78a5ec1c9148c7a6f4abb9facc3223661c2a03279cae7b12d20302047c435bb500673065023029679d7c1bf4c11c9cc7901f10e6ea6cb9b6c33c7264fe3700808f45dfe7714ad2a75c273e48dacdc748aef2099beeac023100c6b729dcf0a0d5c0270e00657f06b0c4bee25a0857391ab1f1a4c1c00e8a61b3b953fff8a7eb605a02ad4fd39be83e580302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023005f88e984b1d7800031631ef7e3ebee60f77a5554ba0479911b53adebd91bd8caf7c04a147d3a5f94465367c99749d4302302c8847a13d53ac8ef15d608ee50fa20b10da43b27c668522c619f1edd0b0a39b39ac4abfc52939d496a4ef070761a5120302047c435bb5006730650230437494b809f891ad59854fa59626c5e290509c9746615965f3591ad6acfba642d54fed533071b51bbc176ac84a3019b8023100ed13df1f49186a845dd9d8009ce19e4f874d6936b042977347172ca94e0cb2d69ec13a0ec3133286c1f0ed7e403949b40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230517841782e90432a86450a2b3ebec5111cc64a6c4bf879442cff8e0efee74237200b4640778df9c132a59e05a5b5ebf8023060d8aeaa27756d5501043d1107fb5cac5394b7fc11c410ba234279ed1d480353c63c9c69965988a4675c5cde9faea1a50302047c435bb500673065023100c4fef5886b1099658623ba868719132fa76b77b19495773267886b9a8fc9c1f3d8335214c34deb79fb77d7cd2d32280702306a54728b575788618072bd2c1c50ca5b2e13be487732bbfde55473530872b13c4bcd2e9c33442c2beccb05f7798310d20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023052185ac8e09e742719891bff11b08bfc8dcd2588058ee77888d27dd1a818f94af6f09c052f8ca0da533b72a9ba376824023100cb566e2707696194088c25775771e0ac2055c64894259a4b0713dbe0a15c4fe055e4d82d2bb2743d04f0411cf7a4dc160302047c435bb500683066023100931703ee3fd0d92974cf7ab1111bb561284c36ac3aa6f0812a8f2e13da10e17ef360206ea75e198d2ee1bac016c19cd502310080318297c3f6fdad772999a1a5c8b30e3976c5752ca443bc51881680c61f02b9817fdf93781d35c31ef4d97546ec64830302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307b7f3c3ecd1f78945ee3a35b57d154e0ab7536a9385287b226dd9dbb1eebcbb8156b365dda38c0be922bef5ba30a5b8102306ca41ab1de054e2765fbfd08ecd7452388e89b2d6d6fc5bc6a511314a3cf13a726bdca6b87d34490dbbb5cacc081137d0302047c435bb500673065023077cb376d4bb1618eae498bc004d81abb98b56ddbdc42e95391291743910426cfbdb27c49f1ebde67b191f4530df101eb023100e9b13d060f18b8b3a5f6f22dbc521a2fd2b9ffce8d56818acd36c47d4be0e40ee68c7dff40789cefdc70608a9d5e6d250302047c435bb500673065023100948448d005016b8efb386159a7f9678aec73b83995102196cd102bba3cfea6e4592592d706c58a756d1e0662bc15e7e202306bfbe47aa9cbb13fe79786674bac5a77ec141d9ae22faceb021aa083de331e291b4e7749bc87e0542810df11ef6b1d0e0302047c435bb500683066023100cca1eac91d5ac6f6af41440d04d7b10cd900aaacb58e1fbb7e5e3ca19db978f0f836515e80f66daa7811018fee7955cf023100e3f58b5cb06b481941608b489af149adcb37a6bd92e4cc9408e87cde0fbe89c7b4873890efdf5f60bcb4bfe1f34adc3d0302047c435bb5006730650230156b124155a58f9d1361e66d13eafc9c07b96aba19852736c84a75e9d6ecc221907ed1d5e661b3b723897a70c70ed08c023100a82b836546fe877dcb738f5636ea34ad3ec4805f8f2d5ca623d316b22b7060b5102f83f332fb4c4ad96c3885cddeef7f0302047c435bb5006730650230132e627f57c3d4407819be11f8465f23324e8e660e6c808cdb4451851409f38736ed92fbe0745486674b14313f439856023100d073b7034ed92208de42dc59f2f73ab730be7b726ab02138592def961ed7263682650bd4a9ccaf034b818f96ba4bb9db0302047c435bb500663064023029fb176467cd348d4002f672034cf95110b88e662479736000754725b03fac8839fe0d7122c0b3fbd98a8f19d2551bff023078619c875901995cb7048eaed33a7b5b1e4bd65de578a072bc71484ab9de0fccd61cc6fcd29b535143d60fe729e5dd760302047c435bb50067306502305937eda5f252d85a9565d5484ba7596d75662fb4c3569518c214b271bdfb07e71cff86a2ee57aadd5e26abca8e2e30d902310088a5029345221afc03dfabc9e8e320732f3924b5f3a8149892683bfc2b02d11f4df3f0793415ae1703a1807fb9edbbdb0302047c435bb500673065023050297262eca688e3987566f01b69f8039134c854bbc863d3b1c8a709f45dc4f96c7921b5a0716d4963da0c03d06d5008023100c1e412c55b69f5ae2e3943d399098bd83c6b83bd6710de187c104b97ea38fa49483636410f455a865202e29b5ae791e30302047c435bb50066306402302ea64939963922dd02794cdcf08fb3c4396861b9756e7d21f55bdf505f508afc148db7b3fdcb2717022725a44df3bf9102303a79358c11c39019520e355f92ec59cd7a73b0586320540530da0ec3a5f208bef9f5b37469284551ca54c20202ebf8970302047c435bb500663064023078eeb2a2b3ba690bb7347a58abd388776143cdf4dde06f563c77aef8a78c76668e1d0892b42b6ac16605cf207d86069d023049358cb752a995226e593513fb83632fcf9ab1927c19c548a860ad901e6cd42b7e528084c5b668eb451872efb5c5c75f0302047c435bb500683066023100fb03115237e54d0b596c8e2caeb0b4f99c239f0c7c4515d50e351bfdd6124517f9b3159489059a3e320858bf40e025120231009ccf0ba94c9a393200047c72020a1e25ed9c0b3c1c8a70b1a22fe8881fefa22f3d9f1cda7658f436c1edc676f9bd882b0302047c435bb50067306502306aa2fa20647d7973b9acd7ebb07a87d1b11094526ea21e20b624f20849f5550eca5ac81ded117e9f8819d9b931ea647f023100dfb43761901e3d6238323051cb46b814a883367b2460569ab24d1a165418c9dd5007890c86e87146f658c0d760939bf40302047c435bb500683066023100e388cab52502870b09e1eece2095d9e5b22bcd29b38023bdfe7404f934129cf398b5de431f761b3a59dc1be1d842d0bc0231008661d102ee08880641672dcb53fd7685ca08513e08b82548ef2f1340f3b76fc7067c5d115dec989e8e32f85c1334879d0302047c435bb50067306502305c91c7e08fb524eb730e6ef95c9f86d9bffca35ea999605a0fa4002ba22843e047730320dca5bfeff4e2eca827efe83e0231009236c3190819bc5bd9f3d2cbfe4b99702ce387d109e3fb144e96124a8a17e103e673280e8ddc4e55c8d191f704a7d6120302047c435bb50066306402305faaf5556313c5f6505bd04f6859ec5bfb9f62c03d8d1f9c5241d687756cd261e6bddcc34bff693b7abafa92db624e3b02305dd1f0088e144a3c643630b751aa024a0e3599c479350c4f44aef2067fe8b2465bd9a90114638f5c503b9aeff96d085f0302047c435bb50067306502300e97a33c759ede4137f47c4d5c5451a3ace934d36d42839514b92e094432fbdeea0fb099c6cc566bdfb5f8ab36b1cffe0231008049094d3c5d7583e65db880c17d4ccf56b9e874c807cc5d368eebcda3f9e4637114798e9bd6deeea2234a6dd4f8c1bf0302047c435bb50066306402303b76cd5c1dd0c66ee55c37006dc4d0282bbe90adde49322d625b4fa4c7f007146b86ba33d45fcaa76d6da587f454133202307f972497818ea5ec964c6eb5b8642cb092893c3ef26dc8d626aedb4dc69a93b4caa39b551e468793634235ab7f23e0740302047c435bb50067306502304b0e66d4a9310ba30906da8f128edabf39c8f0d423e9ec10400cd7429211471a81706497b12f1b62652af2ab9510fbf1023100b5f3c73fa6b8d4add2e6e734f1fadc8ced768572888e253d34dca0485c98646b15c0cd5cf823be260b03d8c781d6a2940302047c435bb50066306402300e6f49b14e67aa87d95bb40c717223c71321ed33e5c0e403ec149473a1123a51eebd37cbc5c6c3edafc205f55610fab002304d37cb91cab179e3437a80ce34a575e4937bbbbfb60f05d0010594235b97e526e6abdc5c5d20aa427ef0e05987da19890302047c435bb500683066023100f83afd9a6d1af750af70b473a7a18c31263f95efc0c9c56e89f8737d661ee772bd95fd25e6444c1ac2550887b100b2cd023100cba5cf1a0696e570ab21bf5e89564257945c1f1d51f88742be11b0f300bfd7728f0306bcf89fa032ff6de24122c1c02d0302047c435bb500663064023017f2a0073b22bcc023a1ab9df44ff6fae7fad05efbe4ea1f9f02ccb7d42b40d8b22b44acfab00ffc48b884e0fccd897f02300a8f0c35fbf97a1af63a154ed1021cc66e44a66d818ae6b60f2d61525dc4a16c0780edc6c3615ae97a2b11d18d4acb6a0302047c435bb50068306602310094dde0b25ea0a9fc75c3fc2b928b24fa5124b1ad7923a5dc0e61b701ac665c4ff3ff96a602ea0b8fe70f4f1d9d3fdf81023100b4b59109b84180c8900c683481f5a1a942e1f05ed0813ce2557aa85c841a553768ecc91ee1afe8594d9c601128f55f4e0302047c435bb500683066023100ff9f8534d9bd5b7068e21cb78a21f77fff037943e64085fc1b3a2578cfb513a680b2c4328fafacbb6830e9ae1fbbbb47023100a3f8a0eee97b5dc2db6c55847a6ca94177624324ad1b840ae57c41ac6cef88169242bf683a065cc83f17bb3ad4a126b70302047c435bb500673065023055fe7e7ad17d01e6a250f26096e53c42493fa52ff74f8b05185186476ff39253aeb38927c5e6ff6cccbe089a39c3748c023100cefde99a5ba4d2b738a8213a999f1eeaaa217d3622fd66e8ac94d68a5d94e03248c74d44f0d9403b3861be2c3e0be60e0302047c435bb50067306502304ab2a115a7578489d8e6cedd821f5cd4b82a64abfb5ed39d6bf9f1a48be0c1f2b326672b7ccdb9065b6bfef17f4bc0dd023100bfd7ee44650b3ae880c76d00cabca1f3b55ead9b50076afc77005998fcf6be369972951cf5a04a25f0631040d83458c50302047c435bb50067306502301ae0f31af24c3bc9931c1b28ea5d2d99834db12ac07e0dced44226cc995c21afac0f3ca983c5b9e2eac553e2e7df69640231009c79e0ee0192b38942277641e39219f73ebccb6b5d9f5ff0d1be9e749e961848276b496e51ccaae8b1d163727a65bdd50302047c435bb50067306502307958402817feb90ae76dba22db1edcd9a9ed825a1696927f8863da3f88ea526ddd8734f30f4f7b55465ee57382b5fbf4023100fd6f7423320016124d086bd980b79cf6df2ecee26339b6f11ce0215322d6721313a2437ea69937c55135d1fdf6a8fe710302047c435bb500673065023100df303264ba75085c85df081c9884f61e7218f40b2fae0fa598b94622dc60f9e184ca0e423fdf3ee4fb140c4d1ebf99ef02304e823c4923fd6263c91afdcaa6f6a2c3d9f8ff7c37c14d54ff74d4b89e4cb079d934b282d94157f753c056c291480ebd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100bbec871c09d5aeba8f7d6378603a6d6f9a2209fc569a5fa1a35e560713ec7852e3156ff62f847786af021d46bf45ebe9023100dca63f6579b46e5acc3dc64f60086cb535943c640d4bdc08afe4392214a383a890065ac8aa2abac3239cd17876a110070302047c435bb5006730650231008327437ab02c006394595e36bf30082c00f49f9e04776cf6a85e293e272be5002966bd08853923f7e538f7785005984802302979a4bd781bfecee4a40022ef3e2ea403eae466ffb679922b82eae30e5ab02273fc4521e916402107fb7b09dc807df20302047c435bb500663064023011c859dba5ccfe6c3851d237847fa9d588d8e3cf1031a269029742fbd7b3cb4a1aa96dbf12293d07e0dfd8c37408d486023011c8db27077f70a06635bf2b9ae0f4c57ab15956657cde0ac393870bfb06d46e24ddea913f9ed4f934bfc000c185212a0302047c435bb50066306402305dff4fe8c733ab4f294c0ed84023a8423fca638c25b51df001167ab6c8b3a59029480ea9dd102066cc5e2c5b47cdbb8202302f91a4fe85835542b7d4e14e9c4df65c52a79d86b6dcdaed9438c607a25191e28b4398ba966f6940f3372153d98ac4de0302047c435bb500663064023012dc216dba9d66a9c7a2f581dd080cd69a84cec2dd04740473e07fb2483ba8ad49416f97d730871393593b23d4defe710230153766819aef9f240492b52db5783c36a9de02c8dbe609e19754c3b89ff930ebe8ce68614f9777c72abf1ba306e9dcdc0302047c435bb50067306502306549185182f4b880baefc69f8a54a99e56e9e2f3c2063d0f7f1dd7b7a513893cff1c06bdf2355580334b3528ef68248c0231009d540a3cf2bacecda8ceabd8607e0d804f7202995a8d026d5c0b300995058271b0c7e07c55d79d28c4b70575a18f9abb0302047c435bb50067306502310099658d49bdeb08439b569e880013f48faf8f85ca3d6383d8fe77d14f24d9c2d1567ca22dac268713912b1a6ec1f40ace02300addea2dd0c0d441b703af66bb6eec80382bb44650c7e4e3da5abf764fdb8e7de65f40efdf13143fabc814a33f1f86dc0302047c435bb500683066023100dccc18e88a6146daa1df9b7981fb2f62870c2f67f107cf715b7149ab9557c1b54022f39f4fbb8c469787a3544743a87c023100ae0d1820f44ad49cc33a2f59956477e4cb776d37b01cb559fc3108fda73739e93b1535edb8ae4764830a106329d245c70302047c435bb500673065023100e6bccb1f21ca5bcb156e321cd446441a879c17eb21ecbe62c056cea1bbf0a4de6bfc706fa6ed673bb2378968ecc933eb023074dbb784924e1ed5edb24160c27ae117acebdbe39350a379968896daac1e0da677feebbafcf0198d3da32d903ebd1d780302047c435bb500673065023100db8d284e906ff892dd42967c6256c7a4c439d899c9390632292cb02289abea935c5a61e11c52c6630e32bf43bd1cffae023055deecb8fe905d63e629b02090a73e4cbe1abff73b32e2a4bcee2dba1ec334690ec86e4993ae64979accd0ea94914b170302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303a202111a20a7185110ab1c4d08e7949eaf9b15ab7e70dc6b84a0931beb6681be293711cb8db055c4ac3c9c5086aab2802310099c976fe5025bd6d0365d98ef91b26a322ab98d51e623d616008c754d45e6c16bde8530b4e5d7366652ccf165c51a6350302047c435bb500673065023100e3b21cf8f8821526bb062224e022e675a67bebb2aa9492e56ead8fb681ae454b827188855d8fa9d3eb8fc099a98f9cde02300c9e5ae91071cfea28011facd120954c79a85aeced80d9d4585f88919841e72897b881e1fe7e5cf287caf633aab1dc210302047c435bb5006630640230593da817e37405e7ccc3b81f09e9977a360c5d7aa903ec53f55b56c67e5e02461bf8a0b5c3527f1169753322f28d0b2f023026674426952904d55a4aec200afb96f34dcf4f48e986606cd557ac7f2ba4f9db2d8a482231b1419e0792216d33f3ba660302047c435bb50066306402302aea8a4117eb505dd9acc23f1b9e5e867e67fd346198ef549116cb9a8ffe8d64782d696ec3db2c7da29e63e713472ecb02304c4ce8e3863041641d5fe5d242705836c644315f099d1891e2a0b183015195263ddbbd9fe8cce16f3d645042519587d80302047c435bb500673065023046760436e1e389026b6427259dfe8ee64666c74ffd81739cc168b7dffb760a14becfd2c561ee8f69cd4eed01e7ff1baf023100d8e24e421c2b68b83cd23db90e9f8a76f006eaa8dbcae39e5a564e65bca808d8e1449476023848adecf7d2642d9873ce0302047c435bb500673065023100d6784e7e05bc95974e68ef5320869d03e189ecd7f3e74df29a164df6b16fe40fc44f68613afc6473c22eefac11b33fcc023023fe51b30de772674135e1fa1d4e27138d993861dad267625ca5f7c19b9c105fa09890bb519ba2b946695295b90a29d50302047c435bb500673065023100d2eacc475254a95c3d9735c0e48f232cc233ccd56bbf47281d3eec61cbba827fc97c48cf1e3dbda14b95fbf172a8191c023000b581b0f28fae694f651f24584987131dec657fa8c26f695b99cce1caf181f601047bc60f072bb9db6a327576a0ffd70302047c435bb500673065023100b280d1455b007383d4e77ef927881b577aca6d4d3bb4ee2f8198bcf07bb3a6b649480c92331748bc57a5976dbe7909eb023056e5eb35ceebdb682d31e3f0cc7f97d0eaf980f22ba33c3a82b399c6f4a171b02a070bb2b85ed5e38acef075fe2cea880302047c435bb500673065023100e33b89bc67bcf30bc7c1203919335415f53cf9fbe1f18aee67a2139541673fa2d200cd2b3012e3887cfe075bc59fb69602304360f82d7c675b08609afe27580c0dca427536b79673b8cbfc33073cbf59f25766952a0ea65328f5bd1cb322998fd6c20302047c435bb5006730650231008e3efd41c382d0b53a6fc3cab62a4107cbf1e4e3a6383ade8da0466e46688e7136071a18a369ba955581534b3b68d62f023009d1d5b272bfee39b4f231dadd04f34c6dfc306329afc6e7b1b867f08ac7f5847928a7deef4c03e4fec9d436f19e8b3f0302047c435bb500683066023100916df7c4090e2c03358a837e72876fafc34abe646041b6360164e86881f9ca0d7437aaf890968b3a81c47b30f9b42271023100b6fa5f8872eabbe8fa5a657cda1f3014889dbda7dfec9320d0df5ac1db0bcca2771d8b31a682b2f37707b24728a338420302047c435bb50066306402304a8236659c8ef7f015601e890fe6cc03a3a25f1f83d5a3cf26ad08d84f902c7260cb42ead59c103846c0c0e9897032320230436016c4fdbf6de851e4270041a03047244721253e4370c9218757f9ba0d939c9a7660eb571ad98752864f629f29a7740302047c435bb500673065023100a8c0d270a2502b9a3ee28b5541668704b09b1f429dbf84bd42707e4ae8797b73a62d94ea7d5766c45733f2a27d1c6f860230730bafee8a8e95c76b2ec994f840a3bb58dd03b9af559935f6e1b7ec6b9787eae684261bc616e7790407ccdcadb1ed880302047c435bb500673065023100cba05729508d5d513b2d4b383407d01fd9b714c35beb1254a8edc4c3206ccbe2edb777068af345d4c72a0ebe0992286b02307a2f9361fbf9904d121f47d1b1851c889865e2da0dd809828a92b1e709318043915fb6039e34cde6b5506097a90e68fe0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230565de40a47443dc5ec91c99431bbc5116de9fd2e17f46f7e5fafc2e01fc2e2b305536281b29282bc9cccea7308069477023100ba75cfaa4d7e8edfc76f89a9cab1a5f6c4f07028825ae1d75ee926eabc126aa9f4bb62ed61e2e1d31ee17b65d77f7c140302047c435bb500683066023100a7e5e9e0f9620daebe54e5123390624a59eb0ad6f9ca535d84f3d460653a2dfa0989e4297bb8fd91afb94820a560e821023100917a01a8a43a4101b6c526102c1120b255004409277f06f0e464f65c0052c4342695321755322728f6276a759c8836710302047c435bb50066306402306e8198400940217582a2e94ce1a032fd0e3e6f9b0e1553d6dfbf699963c87793a41679b8dbb04bfa05e5dc122ac797fc02303d7697e394d915986f1d06e00576b20cf5f7a6feb73958ad5476c73d0a1a66ac150bdc4df2df431ec03c4fce142103f40302047c435bb500683066023100d408f85ac8a558021c1d23a4dc3304f5c7951da603a6879b2cf342f28521846bc6ddae089b6bf6a0aedc3b9ab238b2b3023100c1a724fe3474906834fd51212dc883f98718c0f12ea9d12268c0ceb59e6d9641ab0e3eba0e36d318312698080926c3340302047c435bb50067306502302404ef79d1bacc2548801f8ede8e05b33cce6fdfa2e023da7c75a8d6949174097160375771a7b2169b2866f747027a69023100c0f19e31a8d02f39e0037da32b7fa7f723b5d40ff50c2195a03c1d617bff4fee7a4e537bb0503ce02bde403d73b022c20302047c435bb500673065023100b3d2c2c7ef01b42ca190f61bbae975a84a822555933f3ec110062b3b65699f40b881683ba542f9a399ab08f41f96e1850230662af02234b6d2525f08bd21bc93db1e6e56ea051a7f047845dc2d88aa08de0ce1838ee79fc30e20023f83c01ee941f80302047c435bb500673065023100bb91b7aa5c28201c0b54d952caa3ce6a09fdd0bfe7db82a83e38415766cb1325a2eeb025b8d78bb7ab57d1a2f9ee650102301b3de4f9f602f3a97672ddd74c2b97bdb742353c51811c57409d5bb9f9c44e8c3a57af87cfa8f5d31df8f3e680da77da0302047c435bb500663064023035eb4bbe019fec53abb00e9bc5bf65688302dae8f4a87986e39c415366139f1f2275bd7b0d7df6aa3e1e9ad2b49d04d9023075b466ef9bdb9c016e621e67a2590136d74cae42a899ad65d33e29e02128e62d939d88425e3c57d5e0c5d03bdc5b8ef00302047c435bb5006730650230410101aae2dd460af3b5efee0e3427435d76722a363ecadbf81ea76f0b24274cee4cd7a55db56ef944d8195a9094da07023100f5e6fc831f59fff5b933df8f0375f8a68e281c64179ede1e263c221d5d57dcbb0770c2029035a9882a7209c959348b5b0302047c435bb500673065023100f0895c7d50d7118b3b77d8b1ed72433f7db3fd0bd0b3b20df18b4dc521b7342fdd4c37b276ded9303e58c3079fbba0a00230665ad2ba805162788cec432ac7a8ec834e8951af6d94550a1b669c8a1fd63f53ac4016a1db0f7896697be859c4f1f2710302047c435bb500673065023034956c98a56253630f70b4786713a535de74bb6aef43c167bcc48e3c9c99e18fe4c5e44d015d32fdf9956a18fd8b7cb3023100b7181e21d386334152e836f749f4d10346f798639d5244038af1f8e6c6fe8c1c5c2f6d7582d4adcde39e6ba1de50a21d0302047c435bb50066306402305d2ce4f9b517f94bedce9843fd7e5a4528f13067e2234d304582fc2a1df77475f866e906834388649a875d331669f748023012af14e343dd2a5ba17923d034d546cd1f85503e8cecabbf4f12e96b7261d09cceef871a7c893c144a44bc5a9292079d0302047c435bb5006630640230334f253d73ae78a4029fb9fb72b3b5b6988a423c2d0fd55f2c2a52f6c994cb304f1dd62e84dee5e4fc756e3cd1b574f002305bc5e60bf4e509010bbf47362354fa92b4d016b5205d196b9a6b8ee4b1ca384528acf5575b1cc8d2fff52bdf8fb9f9a40302047c435bb50067306502307384956f38f49b80d241848155b7cd7f942f5f4217b04d67b1f3e6f946537437ed83c2df697bfc712612092a9f48c511023100df64af6c7f74a31a08fc3682b6fbdd25abbff5eedbe5f12f38094289817dc1e1a6b5c1f7db81fbb53078255b080a1fe10302047c435bb50066306402300f66ae21f69a0b75e42d12df582724cdadf7ca080ccc9a8e6d59bcddb440e94c1947ee3185a495eb31865def77847d050230555782f91823dfdc19b7bcd662accf99f440254f0a0f4918b69b8308c96feb2d83b67d1f1854c7fdd5fb0e679c88a65e0302047c435bb5006630640230717dccd428766dcd1cf9e0d32895993ac2b735598a995b8037f53dc26d4324921515f0ffab49f1fbbea9789e635d4bf502304eee4ca7861922ae3c4fc955a22f9f7ee118fe0e4c0bf5cc999a356cc60a82d48200f69136440d20e38c0170aff2b1980302047c435bb50067306502310093a59e1444f4843e31099af29e4e07854eb6a566bc01d3fac58c67286fef04396804b976642ca544f9bbdae15b8a0bce02307362ab8eb79ba42387ac5640e00b0a2df515421b8df8480167f6f64209e3d89e5b7781df61355ecec8c7fc25dc3f58b70302047c435bb500673065023100c8ee8147bd1676b25f1d122c8244589e10fbe4574763e1ab3e8f7370b3740e12d75849ab1491ff1121e10fb52f88d50f023039df708ec3755373668a252b9d34ac1f699fb7263051ae8c97725dc2a7c7b3cedb1e875c8d6dbd8ee8d74f4cccaceb9d0302047c435bb50067306502301b8d48844512bae3d7bc5eef8d963b974512a51f28d7451243b2bc4c9fc7d9b85057478f2ba37f0c6a55555f9601fff9023100d502e8a06a90784eaaa97e23eefef451284434dbac4bde8e3e8fa12342cbfdd1e463c1f063e5163a5267541dacf1dde70302047c435bb500673065023011a8008b92d3af207b690eb8c47863e5c6360a7aba5fb25009f23899161737d52f371625b3c3047d7ec6f11b59c2cd2e0231009fcb1a4c4f5906455dac257c79a5e42fb0f71884a7b1abcdb6979b4d9c72335933e039e9930d7acc82801bb822d450390302047c435bb500683066023100c0144ca38579b0a6be314f6a1537135ee4326062052f5f4034c603c6e5be9bb00b6825a25bb03185d3f59187bdeb57ec023100c69e9905b4ac89aac0226b365a39edc2ba4812b9c19cf0f00af3a88d921fde1f865888841439cd3f269a7c831a72ad0b0302047c435bb500673065023038390099c2c1824d582241851f91d9b057ac6ea184c5142ac8eedc2779dd5ea4b4de1c4b966b6f72869aa2b45da7f6480231008137683b419f89f5f50a6806755c49cbdd71fa66463250a0de47d2bc6fbd542223fcb049a326a79903a750ae56de86a50302047c435bb5006830660231008afeb6a5c44a7266fd2727123c371a7ab7a64b87cec7e1d4385a2ee050c1198b853cd411558bc760ab4ce682fd103bb7023100cc8d573e57b05cc805148d4c2cf6aa4eadd51a61d201de61a280d036e68895776ae05c7e21681a0a95bb41e58db2d2000302047c435bb500683066023100f540a0a24a9f3f802a4e679669e66c6861a759c8f3ee81ddb264b8bfc03a99256fff9959e63969b0326c09637c290f6b023100c084aa21de7b43251720d1a4f7698ed29cb7969ac23aee5e568642d90d8704b00630169b8b97c82eb44e2f9c6409dae10302047c435bb500673065023100ab2710f75606a0cee0661790f2c6ff521309b75381741e3089318a71f5d7d9fc2a814507bce415a782e6543dbe7ea493023063f603a6da4185778f37eff8b08c433848c658f64b4cc580f9e7c350518b6ca6dec31c5bab8982e56edaa6b8291f22210302047c435bb5006730650230136e8ae4fae4781125c6a222d5c7bd342d2ef0730515551bc3ea2bc46ac5d0d5041a02c75b0cba7afd770ae981ef779602310093049c19f8dbf48bb0171aef030d24d145de2117d084053e636701ce296b1bb944d65a745e7a6390f97c2c85fa4831950302047c435bb500683066023100e7662050117b57429665aa628661ea04b4d1d247eb8ebdb9f090734ff761bcd2b36451b7bd67a745f9fcb1978d824bbb023100b7afb22f409d1ceac12affbc32125090ac5b398195da10c713d4f186085884c96977e315e5d42d20f2632772185fccd40302047c435bb50067306502303a92fe86913248a325ca71159027f4426764119e3dafaff5569347d33c150c827413940a5d8bd99d02a3c5d15f89a73f0231008555838a08b93c6122abede8c606305efcaba0a4a99bb2a9f634679bba41f6aea6764637ee6bb7cf9e4ee44e2cb5ab110302047c435bb500683066023100eb982b2dd6ea1392df5dc5c1dedc8778e33f50aa22253e4625a84d0c8b0c2a59c1d984c5c04a3fcf1330d33ea91718a2023100e5004d24228e0a58d9e32358bee7e9c8808326d1053f779db9262e1a744fc0badb35dec6d1ae24aaa691fb2ba46c69960302047c435bb50067306502303f42a9fb786557de07c24b2189eb14f2c81c344122e30e6057dfc8322269e97b8988e53444ccc9114c3544821de141de023100ba13a39fd1f6eeb70f75cd4b27edd8e53f6b54db67a0e50a125c7ebf253015a02f33153404df22b2d4a8c1f1a2a5372c0302047c435bb5006630640230292108ea574e0a17e2a39d59ccf4d5f3b85b5733a2708d85ba00d90b2dcd8a574bef98e30a27c86b55a2df4f8c715789023001c630c5a640eb332e5e516dedca0701640cdaf93c841017eee2a692594cf15e05188d7ec7b94b6cc4e42b5bc69ae0920302047c435bb500673065023100aff5d36c77760e713decf7a77fdcf3d98732c62c80d42ae1e55272a21020ea6dcaeff80d3fcbe12997a046831dbce76602303d60a93668c6f8a63bb0536803466791f85e8b110a8d8f90a2e4ebcfce707eb50191fae4b6bf8908d31d2245ae0775a50302047c435bb500673065023074dee7c640fe6bf1d588cd844ca1e52ef4429e243fd413b3a1a455169107a25bbe6ba700b6e27efbf9d2f4eb68adf9f6023100f27bcb67659dffa3109b42618bf7d3b892a2a531a1cca4a5dc8ae8454740afb39babe1195745f2b1b88c60695d0ec4850302047c435bb5006730650231008f0b22280ce79ce9476cd36974c771fca20faf1172b5a579dc140dd7de1678d6ae57ae13286a9009210257dc3361f14902307782ea7c8993c2f6ab59025846df5377ce958914d766df0a82f59f9a4c82e816aae23ae22e7b109088d6f15fa87b06730302047c435bb500683066023100e9e5f92beb424c87f534d4d7624eb9d2e95d0691fb1015f2ba9ef6e833525895e494f72e97d94f391fe8fdfd492d96c0023100daf28c2a57c4c1e74ca4d4fde205155691fe3c0283771b5630aa1743fab196b53ec825b72e17ccd8915bd37b3c990f770302047c435bb500663064023049c9b1f5d40782a75449a634092d80932c689adb991321833aedb02761655f80341ab0329d0d253e6dd583a8e4c046ef02306de51ce23fed2bc350db0df575292253ba43e6c11716eaecba377aae0dc84cc405a1f901d075a827a9752a272833f9f60302047c435bb500673065023100905f3a7107e2c0caf2b0dafe63cd5077995ceb22c80052c6854f17a6525f0467d58d03e597911fca05c25f7024f3879102304589d77c15e44d8429b7a2ce0924e073952ca2fb3fab5c729abacae907fdbe1fa85cff43b3adbbc84757e0ce03da2f8f0302047c435bb500663064023060cb14aef8cb2502e356377d65477cb88cca842074759c6b8b59b42ddad694ccbcdb4ea49a6b54271a785b503862fca8023035b117a813c3088765be7ba9eb574f62f1751edc637e07c88473b4867d95530fb744ce4b58f446f783d9138e6020a2310302047c435bb5006730650230418f9cf2b20bab9b53c21a5fb538ccc5afd901aa9ac3ecb60d70b137027872011cb16c8bc028a5c9f2aa03992c337f67023100eb328924f07ca259ec0a98d146ebd5ce646d56aa7b2ea03a7fbf0ea7256fc42a85769340125f616ab13722735ca0ac070302047c435bb500673065023019fc061e55074d6c4466c56b8ec715c25728ae2ccf3b3c4634cfb57112fb606a98f04a301233a2e80964df68fafbd66f023100de5fb5d170805021d66e40ed3346fe0e98f194fc526a23528343a9ca158d827a869ed8f30e10798144f00d0b69521ec70302047c435bb50067306502305a089a5b8578b2f885f67fefd2dadfd4a82435466fb6a0dea0288ac298cddd4d03c86d05c2771e890504a0c5b1349cef023100efe8ce5466f44b7ce084f8a7ee3bf59ba490176cedfa9c3d69a5711c7bd79fc41c4e4888f52da2b5d3525f7e1d515fea0302047c435bb50067306502304c409c4407c642e84128e25213d66679e4c7d267b2dbeda476854aeb738b1f3e664c6db150a58fb3af64390355667d73023100fec604174cfc9b542819f5babecc5466cc76c180096ea29ba42c83f38e6b13d9534f7f0f1568afe8780a3d0465e3298a0302047c435bb5006630640230339090df88ac0f1c82b478e8dd827696ec8abb4acb10491735a27e9580203e10370d3456fcf00680e0155b604ae80a38023007b5801085aed33939d0b93870a0520d9bff8f992591dc4920e27aa956ff6cba3cc2a814531426ef9fc97943256430e60302047c435bb5006730650230309b64a17c512bd0e9928a47761ce0947caa10fce725350a512d15198479cc0d63596e93c473f2e0e257ceb40de100e5023100f00aa60e0a436ff2d0f2bd9fdc950a083832b0534f760c0ea02a60e89b5c20fed9612fd5c9fb145b7cb25ffe3d6406c30302047c435bb500673065023100dfe2b13ec2d52e5090e356515d0a31311790d580d03e38d4100c225015bd46b03a86a0c54a3ec035f09fddd06b21f0ab02301b94469fbd9ec8f22d845c60be6167eeb6adf8c48abb9efe586363229562968fed4e399db454dd960566fe688145c3dc0302047c435bb5006630640230430c140fa0307839ba017a3d8ce8f31ed5a5c47548f945258c901326db9165a35751941a049a014f89207ee66539b9be02305e76b8725c6560e60f31dacd9feebd1eec602ee7ac575fabd947596da3faa4b36241ca8c3bdd24a3b2cfba235e371af40302047c435bb500673065023100e6fdd062a2fd8db4d5c0359896f88a73eb5b6d146137f609af031a0de17bbf18e1b3c2fcfd150f5d3b53b1ca33032b360230128404986f2bfa206facabfb97cccd6e5d1b94b5a95546806e722920a387c3e31093f05498e30528a64e8bbcdcd3cc1e0302047c435bb500683066023100ff5a4e586cc30813d142673f72a2ee8e428042e489e8df2041387025ad625da69fef6b4a5bd42879c458b3dc22e9d245023100ff3e6552c2b52f70d56f8dfd5e7652db153f5e621578c0dd7a93b1bc8010894a3ac55f5a15411aba79db600a97fffcbb0302047c435bb500673065023100d70ae2502d1602b140d1e2b2c45eb1c910cb2038dab82e1f7a63b32ccd0d834ac146967acd2e3f21879298fde527f307023023072059e7b0c0efe74222f6407483fd15c21ea83ddfff2a6d1b148fbf12bcddc10eabd242b0f09fd9579e5d86037d800302047c435bb500673065023100b033ea003828dc76ddbcad20853c7293471fbfa85b40a2b00058742f3c749fc0070b81fbaf399d43d2c2873a83bde4ae02300f0683bd66de6501fc9b455180d4c0fab52838a8771945d856db08362222da0ace6e0deef1fe9a91c84d5ee06a14259c0302047c435bb500683066023100855d14bbee5feae8423a40525fe2f53a57cc4c8b2b8e02af1196640f9e4cb4aae293fa70beab85dbf5f1c74ec81a52b0023100c5bac56972cf45fdc05d506b5bb1daa42004b949ba943421be80eef41fe85619bddb2f618a49e747e9d5d5c1cd238fd30302047c435bb50067306502304434837c384a62a241cb3791d5132d175b2dcda5bb8060e574c1745903dc25aec1c05cd3cf33365c031e614b1520dbf6023100ec8d674a7eaf02f03bb7f1aa3c2a450b346eb20abb8e4daef882e2acf974af6a81597118e7a6699fa539a03f4712ff6d0302047c435bb50067306502305891681c817423db783829aaaf080101d95b161d1b78271480181c544fbdfd953b0ec56a9b76c4b73bd486148dbe0aff023100b5240721b5ca0f537268a771970c3e2509acfd6f8a8e6ccb1b220fcfd650e4f2861733e77450b17bcbb3cc0b7dc8fbd30302047c435bb500673065023025197c43d6a459582d450cc336737ff45b7b398419c8aec01660e0383c763a8ed63e4817d3f721afd280cab49365938c023100e30a29035745e9e472b1ee0e09a4a05042cb987560929a6f22e34617b6af76c5e62c27f8bcb8c443495ec86c378898980302047c435bb500683066023100c2698bd396c72824b63e22ab89edda6caec14025f6e079412469d6ed0fe479a9102f2dc993430ff075d542d3b9d976b9023100bbb48a64c4163e227e48ab7116521d08e0b7eac1348518e7d875cf45f6eaab21258849347898d11c60af032545a171900302047c435bb50067306502304da494d19e99f06dd64f27606616368a3b9b8540ae53bd29fc42a4f607f2dbaa98d5b3001543c4efd6acfd205c0487d702310096b577699f3975dfde51f3b6710151452754930563a98ee2b65fad202b98b952e983cebd20c3726b095c003adcfcc5af0302047c435bb5006730650231009362c6dd38c00c26dc6fc8e816f5e9fbfc09226de2c87d8de80a7e8682989cb64713f9357f93e22d561fe82d83d8023c02305017d73a39dc78ffdf5dd7f09c5954a27cd44e953ba037628733568f0038a2992cd3e24fb283fe0aaae3361acaaf2bf90302047c435bb50067306502304ead15a5474b29b71e7e39a6261e94b0f5792268ddf1025d50904d952e3498dfd7e9e9e00613446f18c9fd625e2aed130231009122ef170201040b3239729b10a51fb287a7ab5426934054f71556403197b2746619fa7f29850172d8d028848a07a5ad0302047c435bb5006730650230587f4ad84393297f58c8951012f91f2d3621ff72231037d1e8690b7922372c25e05efd67b01052cc6201194293be94ef023100c3df345a6761844d9a9b7a5a7031ce4f83e8b9f3cc06f93705683f33e1561a00a193970adf4004c1150527a2f885be2b0302047c435bb50067306502310083fd898a270c13cb19f309aff917ea101e71a0860c9629f63ac4c15551d946171dffccd0651814034c67436862dcda8402304463cef1a212478db17de94331aa08a357d8d5e50191eb63b0276723be1e1ee3cfd71d7de1165a1d24e285daa3694c240302047c435bb500683066023100c6865ef961288864a5f7db26cf36d5c2bd81bf70f55b56556ee60fefbb8f9106a80356b088799c42408105de412b3f7b023100f5f41a30f1bfccc8b3dea14afdca82274ba02aaa0e8f9a5fb9a336d018893609dbdb3f3e3da08f28efc2c800b94a91220302047c435bb500673065023056a64e3d34f118ad3dc681d22e6b333cb6d8f44188839fdf32d2c3f55faa20ea54a7d7afa3d01bd993c6961d08ad7bd4023100eacebaaed2748dfdf0df672e13271114872cfb27d27ab18250297d30c8bb9c6db4b9250280d36cb3e3a5b60764e9dbaa0302047c435bb50066306402301c0dd0d8cf0fe4f7659ba73a19b388960678c4ee6664416ffd47763cc4c8234813995d14b8516eeab810f59aa454e419023001236531f789c9c3d26d896432c268f9b7e37eed362ff8852ba98d2f11535ad5abc2693a379116bd740386dd70654ac20302047c435bb50067306502302802bd6baa588245c66069d9d2855be188f144b6d2ed288d8b467dfda3390d9db74070a283b1b8295c3bda464a2c36e7023100a4dc8d071612ccfb4e7a4e4b9fbbeb40b6e20fb7a7e183bc113eaeda2e2ad42ad13c52354e4b36701b4cbab33954b3010302047c435bb50066306402304c8fcc7ff4220db3f8004b0e601f67b944a448004ad4a6b5c85124c474d963a459c2d9ffc1835f1b9b60fb14f8f3226102303515d2299735eb45255c7fafefb5b2caed28e92eb18a681c45048aa9baaaa9a834489e0552b50f77086f32446b41ae8e0302047c435bb50066306402306bbc1c282099304e5aeab13a0d1e52583a716d7d3b63ba5895f45cf90a75a7b7faeab6d575b876c655fd40061910f12c02307e74a7c0476a226a8eebc03d1cc94d214cd96fa784bc1f62804d82dcc30fbfce1e32a778bd47f97f3d442181aa42973b0302047c435bb5006630640230693d7e93a16afe883e9dd60f58262f3faaf398534e98be73ddc6c67f476a249f64ba098b129e2191ad60fd719cc8a29702300ccaa49b7c3cc20f1ab62524d438fb6424cf9db1f31a36af3f1963670fc1100c565dde5f25ba3d6edd0d5157a66bda5d0302047c435bb500683066023100975cf5883ae2ff10a9b79cdf7636b15e9ebb217fc24c5eec8815ccb6f0b67196a23f518feb0649089ffd2fc883eacf35023100ff243912b1832172786f31e85b5f8633c9e1365143fb2a6220c3f7fe112b24e2c5ce1fafe9d713843e77823a8fcc92470302047c435bb500673065023100f79f2917ba585a3c87dd38b81c42d93f6030a484fc6ff4c1deaef2daf69aa0e7812314eb6e581df7dde09250aa433d4e023059f975aea4c4c81e24e19f7483d8bd4e248aa8417208637ed8ecd05eb35f10ba1c771c20b9dc99e011032bc753d54ed40302047c435bb500673065023100ad92e15cf2d9aa84de56c139488a9d3c44536c443ceb32fe0cc161fe5b48e513ab6260aeeb54d212e36b3a8ae7eda9c8023042d66c3c21d4f4e67cbecb80664c21d66dcd16863f48b5e4d54c3448580c6d2fb9a011fa1e23562512b25358b1e1e7fd0302047c435bb5006630640230567d49fbbb67666ad464399a0faf82a3b1029edda3a81d8ed392d8d2f55ff1bcfc0b967e677838a48e6c64b6e8ab9b6d02306f8cb83b96711a0b55af1e49d599b76af36caa1abc51b2616fed648a01725d53c7ea86b7200bac8d7de1d311209cc3ef0302047c435bb5006830660231009ec7630de2da22613d5cadd154965ac755c8cc984d584888b24166c1f94686af0b66bee3d1ef0844ab92793ef5ebc3ee023100e51d1964fb54644dc1ad322ca985ef232c7a3196bc91cb70e86d70bde7640ee0db989bf784ac219339b55087e5cda6180302047c435bb500673065023073c238f98d6a1daec4ca5d18f242c45088b68a8fd57a78e5e313b872b9837ec4f88cc710762f345129be49bd731e8a85023100a5b4b28d3a0f8dd72dcfbde5f41362f805b81c7cc1d41131918fb27932d97f7b1ecc8672b26da10ebc33275d34e6445b0302047c435bb50066306402303c2496fb51263df5c6e356b44b28a971e2157ce3f95133cbc95a05b050c23d0c3aa20a20625872d125cb55edc24638f302303b26900239344c07449973a4dfca34d59ff44d966515d00c7f0d4e68b12d61747d6e71838ec24cfbee2133a25d7461200302047c435bb50066306402306746cf4ece7b9016eb34755602fa2da95b741fabe2a1a5df9ebf545c25a07fc004e063d9af0cab520a13c781e622e0370230789ebefe3bfe82489f626e1f4901aefc5d816483ceb89a49ddf0bb8d63ced5fa725a7c6fc2dc880adc4271361848ed9d0302047c435bb500673065023100aba281a6913ffb7fbce8b5f7618ac28fc8177d259aa620408946d8b9223533f908f923a8298a2b3de1ed71734e4bbaca02300d46a644f0df9792f9cf48bd165d02889623a7824cd1cab669ce00701a08e6716ae895c167b8cc5f3dfca0619db6a93c0302047c435bb50067306502306f22dc4479df97e55020639f735c6d33150f6951bfb0b49dc41ce7454b809eee7bcdb24e3a11f8c4e5e3fe70d9451d33023100a494ca549b887c4ebef9720d7aac2055636a6d835a86b47a272c70797037c569e7c0a50f2b89cf6c69ebc1983e3fb3820302047c435bb50066306402301182e70f379c64120ea1c5c7307306de1af5b1552f6d759d1145fc157606dac858020a94c9c7fce0c8f710325247b83902304823111b02c977f27ec9e06e721861128885c4638f8112848e33eca562e735ee7dcdca391f57c6e6a1e086633502b2cd0302047c435bb50068306602310093517c6fcf9da6257fb99fc52ca40be8dc7da5e99cee2b4ca3181e0d7b98c7f663389d0f9a685da4e813d6a38123026c023100a2921af06eb5893321b7a5b0338018607966b412d7ceed89f0a8b5c17c312358505406db898b85b09b1b567df58512ea0302047c435bb50067306502304269b0998f1610f2fe1f44316b9df3eea843d26807b559fd0e56af384c6fea5898bf2f6c26f016402195cc168fb1ac2402310091cb93dcd9430ec4526ea687b4c166a31288c53f6d6b1f545e7a4c312e19eb9877a71a278414424415a63afcfb14e89c0302047c435bb500663064023038b2c552cea0d60ccc9ad2e3882b3fd2768e4e8bcc96b2080be60ba85540fedc7fce1ba5e32e8dd0dc3e5628a89e504702306331355421fbcdcd44f8565d5053f13c393f5af7edc8c42e523198eeae2f10842cdeb42a65d34ec6cd16ae00e6e80b9f0302047c435bb500683066023100cc567cde6c9a78a27ead822df2be263a59db014508e9f892142353bde3eb5324a70859c6c38e4e86d6e95da7d17cc128023100c56a85e9525e1b3231e90dd412d12e11cb7eea5eb61e749d840dcfd4c33e2e85d3ce1d349eed252fa17b65e0f2b9b5a80302047c435bb500673065023100a613285b70be88beb5c1f242ca2a756fcdcc5d05c2bd12eb1b97531b0e9944c40d9b953ed84b3582dc0bc28a4642cdc402301713944f9cb9a6da3ad6add7f2cd4c32d5cf1d5bd1d46b65388fab18c4463d7af89d64ba898da7254973f895d3a567730302047c435bb500683066023100fe6a3355bf09adf0f6cbfddc4ad48657fdc61078d1cd4d553928e03831b92aa83bc1fc14ef78b4f914e4d3f79aafdd16023100cf3bb371daa81b8c5d37718daffdcb0c793c0339da0546b69f55245cd797e8d936cf2796facc056a19208d007607dd590302047c435bb50066306402304c7356546d2caf5198d900f1da2fef6dc3b3a6ef5d4276e2165f25e9e1773e795bd545bdb7f69f97f2d6b8c51e8dfd7502303eeb10a82dc17d3ca70eb4213ba7945962ff06cd64b0b7e9cbaad553c51d23ecdd722fe1cdbec0eba29214afe7041e210302047c435bb500673065023100a86b3e5dc922a6c19611bcfa55880d87db8dcbba6c96389a9e34aee9893a5a22dc3760f84fdb4f0c125f305b2314449b023064a49f360f6fc61843d805fd71a1296be0690ef15e80e0d2d335d866ed0f3a72707d8209243850e59ad8438ec4fb65570302047c435bb500663064023032bb497d7e5e5f4b505ce1b5e780ce57e5b36f7ba811ccbbd1e6b1066e3f0e01e00311981fda0c5515c7f19dd0f32f6d02304f037ae7f4fbbb1de90acccaeb90b0bd4384e0f258df1be1a03e2830559759cf5cac79bf0c2c4644c37779a10463c9390302047c435bb5006830660231008f456f3a713981c7ddbc71cc21a6e07fbbbe97a1e0c097798fe2530080d9cab19951f61ea03a2ec65d001bb038b6b61c023100ba08aafc07b9ceb632cae4fb6f1bfc8c897dedf253752296167ff6484434b21530fae4d76ca258ff87dc3cc0aaa3e27b0302047c435bb50067306502305ebc70388b7cc95996bbeda726412aab17db8695dc896f2a78480391dcf338167c1a392e9937747f8b34855d9aeb856202310086cf0d68cee0e68aeb0d842c357550202fa43c577f690e69f2ceb222c08f25b5b93cdd851ada942a859c7c364db8b9090302047c435bb500663064023065f9913518b91eaba8522a0fd94e073e61292e0cc601ecd86199b238c81637ecc0229ae6c9abc43fa14f81feb38dabc6023063f7e0fae024aa2465630403e426e053cea9d853be93c1bbb2da4af770d55cca612e23934aaee70031cbeec80e2802a20302047c435bb500683066023100ae7dee26faf65219aa1985a9e39e3a7b3001d0b20e254ed76009532494a673929068bb438efcc896ca11de2909f865e00231008f11ec8818f90e7f49a2325f2d80eec026a5f152b0fa88899825dfac48fee2b6d1c3e83f0693c585f34122a32363fb010302047c435bb500683066023100b3d22def91e70d87626e6c10924adc4b2efb68c92e5299e0b65fa60b591d9134c6c5ebcc719327889a9836829ff506fa023100fa5a790a634b888431d97e1d3c015344244e2cdd0094fec73aa47c6151e87a07e70810136169bbbe726436375f87c0570302047c435bb500673065023100f2f0f5055cb1eac350754938bd5f2615a4ff57487facb25046269fbdc0f7ec32dc70a8f8be0f63be5c559b871784ac62023011360aada42e44c8c642d8238f43e5e49fceabd450bc6ab9630650b65d7e8cc9582221330f8e1490bef7d907fc7c63c20302047c435bb500683066023100b85897ade017cb3036071e9f2316faa91ca3f179a3e6d284c6228fdfd530dadf4d535e1e220044f26c0ccbee146b0249023100d84bc3036b7f7f0d973a4bebeca9ffdd7c8eec74109b66261f61337c40938dfa6aae0ed981eea0ba449a56f587d8e9910302047c435bb500673065023100afb70a50bd4581d5faa24949e8d90da4c91bf2510e6682fa95dc84818cc1acafe7ed389bf1741d57df8d830b8904ac2602303cbe75d56f28164b7ef66fb61a828a2141d7905f1e9357e1e12f72100dbd7f4ae139c6ab71c2213b8fc49b8beb114ea10302047c435bb500673065023100bc480bb4aa831b7b7037dcc12b955ea7dbe1babbc2c1089a83665725208a24832de6b03bd9b33a8c2c4fe06a8ce3b2e1023077899ae27de65c44a3ef9442b940032d6312925c35e8fb5e1a236e0abfb83af44db497eeee9ef5674942a3e6400b056f0302047c435bb500673065023100e358005c82432567f1d93f88de97359e5443203b02c23c287a5436490b06057e3a113d43fcd0da568b0da9daae66927b0230021986094de86ff2160db9c1b01a34419edd755e171f0a5076eb8ec6246c8d9c1f3dc4059a455549a134dffb49f053d40302047c435bb500683066023100a2592dfb0d0dd7ae48599b27228871f4737a9b2b7f5493f533b16d7c3370dc7b4ab05360805c41e620d091823d5da4b2023100cb3935354399e80128b7fe18bf274ddfcb6f84f909f19405251ff1b19b0724d0f1c87591c6257ec23e469d3e46c216130302047c435bb50067306502301ecf191390cdd7d34f847fba8f41ad208764866d3f599edd8aafd2ab31faa6f3f35a58ec922da5b114e928cd1111ed2a0231009f88904c7442580ca77203a966258f5f764d266a7c677dbc43410b472ed7cdb962f3d52ab20d248d2d0053caa502d7830302047c435bb50067306502304366c0e2b955fdf04485b586b89fca76e6cfe36ff11101c9e5ea19294201124b17b12e19227487dcf90fa6c9f94e32f502310091ff3a35503da11d83282e13d964f639272e481639cc6126346b6402c73c15de81db14def04a70b90fcfaa8b4e25a3410302047c435bb50066306402303855d089b20a3886b1fcf9dacfd986e0b7c53b49ae63bf12cc999c7206e4d13ca5948b4240802e86c8ec82dc395d51de02305a3b77918497b2004a0fa06ad62aab0c92fd1833c2502c5836c381bcf4d6eda55bb93f68b595c9d7246218e9c67564de0302047c435bb5006730650231008b5248423924f0d444a45716d4d0e6151799bddea1a4c3cb7b2b2a65db666ba48a36513733f1466ab8d305ca723d96550230046eb724999faba7efc84266ba54a75ef7416fcb63da809be6d5e37b915aa8b302235bcd1c4f4cada12ec848fa403c7b0302047c435bb500663064023065e56587d0f3b86000f2ec9a9c52a9cf300cb977015e51c41b6d724055424cadcad28605408305dacdb01ae5ab23ebf202302017f39acab5760654ed1da612112661d1df49780e87f1f269bc1ac15b0a1ce5ea3a57a87e65c4d0c52d20931069a9920302047c435bb500673065023100c0d214f7f48afb994be5667f2dbfc362be720fcea86be275fc51a65e77945b73afa697de06f9300e8faf51df538547920230215136e6e758dd3ed2e811ec8dcd086a5a9ea01df19a7f095281fa65a97d9004bd064e7bddb60d09a36fbd7e5a3937700302047c435bb500683066023100d8aaefe91bb620a306130e3eaf543992250641def473b05ef2ab008f98186382686c02f31fd94dba3e68dcceaa2cb4aa0231009b6a77a09d00e2422acff80327cd4598bc4f370a5ec55163a4a1eae7d72f9d275659a9f24682c460aa18ec45f96bfc180302047c435bb500673065023100f6ee55342a24fe34712a19661fddc3d593871b79743b720d29eee3043c2bf458352e48bf7b8cc5282a2e49cd6ac47f3c02306f817666e36ae5202ed9f6d76765d8643e7dfac16abe3481cae2698b0fe5be8a562759ee0441aca220f291263e9a87aa0302047c435bb500663064023031c557cc998b90af590e2af73ec7b7cb2f414e92fb7287faa03a5fa58bd9c3d31b10dc7487a8671ae17701db6aab8f3c023066ca11b3124a6778e441e8cb103be4c18d82dc8915931dae51e44a1260fd3d2875a8a82814ba37fd612cbefd6bd443a80302047c435bb50066306402307341d33a9035de69245908cb4ac84d5f26d1a114b9f0f9d609f03080b65d9590e490c1c943ab4459394d53a8523dd67e02303fdd0173dd138f6a691dba417968dacbc55da58ec5b29cdf9ed04145814a39e3087f36c96d359e77c118d5d7c5c277a40302047c435bb500673065023042018dc31c7399a1d7ef8df5be28bc9c37f50c73e1c959057bb422882ae23f803836f5a60adaffa1fbcde7a015857336023100ea2a4f0beb868f2c0264e9fef5d5397df5e1dc19a169e5aa870a4382bdc05fb3644d518ee217bf047fcdc487b5c733730302047c435bb5006730650230627f5bb53439793676bde5ac1b77a4f9ac6b06650eeb29f845c43099069611d60adf5a329794317fa924e1afabaebd15023100cb6ffb5fec0d131ebb45c43b505b3bba745ecc4a60e31e662b5478add81a53c31b7b81f70917a21b7686dcc98e5a8cb00302047c435bb50067306502306d942bfc0f89a49178137391faa3a7297c2efa00d722d04099752be904268e6ce7e3d6da8655b8b890f025266bb34970023100d7db2d5aee754f9fc2cff0dedf2400ce301339177d211eb50a658f81e28d2eba20163011ef71e0f221e97f9c3cff3e850302047c435bb500683066023100ce47d2df09a633907e6e8d973cf748eba7949a770748dd5afd4464f39cfce3ca03230c369d7785c9f8096a4d0813f9c3023100d082d6eaf09be99350792ff3d6c2cdcf842a443f2f009a0166b64f90f9e5c5578ebd1d659a84fffdb258d270c7436bd20302047c435bb500673065023100f9cb7fa345fc80e092ce460f8287be66e2972b9671f03e1b8d58e432f18525b62bf3edccb8d04490ce1b5be5023ba64e02300db46b5a067a9f130809a55967228d32a27f59965c8ea7c305b166f70cdcc6da14863fb066f97f8e533138fc0aea63420302047c435bb500673065023100e0eb208502302cc10955a9dcdad7a11775c001361942c5838812551116e8262fd0d30968c3dee83ff7335136b90514420230793b2429126f2ae18b0f71f2aa62c3b77a0a4479046352d0123f116246b612e9e173c4677c62c5ba440ff1533f7183710302047c435bb50067306502310089dc2a10fc5589de24dd4301620ce4459c2f30c39b2fc19aacd4964e56c08f9cbaaf0496a3106d38bb9119d4c4a68bf002301e0eae37087aab297ec4c07ae08689ae6b11c023d90746533ad423ba2b968c90968a921387d07ea8684cc568760963920302047c435bb50066306402301da4ab196bda62958d9475fdb5420d201aa2d38243799b7e4a26ef47be7f0afc3994a0aa6f5bc6e448406878e299f7880230423f25563d1681362da4e8054d7d43611fbda93a5ac77e05ed7f95c1781f560b80b1c8a5fc87b35b785311a8fe6276c10302047c435bb500673065023100ade7032144e91a33cdb359527903425116476fb3f3940ef2f1283d0a14e8aa9f9d41ff21384036b4f4f40bcf31be84f602306f0c72fcb2012184824f09134855ca41e151e0783d5b665b7a93887e37f5a30a3bda6681562c3a4bc84237d27d49504f0302047c435bb500683066023100f444d6fc3700223cad1f0e9edbefce42e96f0dceb1afaa091d997fa9480c9022e22abaaeaa0afaf986d2b28a41a872780231009842dba3ae2b52aaaa862a5ec0715188007103bacd767cf89468ec59a42096feb38cd0b6e88f730d1be35fb468fc97c50302047c435bb50067306502307b7b9056268a8c8ed0a490ae5a8a59d9a25d24245afd09719a069871476ce56d1122322510a6148b0b8d362027cb1f98023100817112e84114dffa99a889341ea798284d2c6ccef088d07aa0f033bac1373fb2fb5e71b3fd82075696b34c162a399f1c0302047c435bb500683066023100c61e2a36fcb30ebfa11ba3db669e6279d2f9fcd3df6c5cb4cfd7840f583a0bb557caa1b5c3f2d85d3262c67bdbc81959023100ff922002e980eba0ff68001c06f92e1a23ae95005eb1411a6e85079429f24600d44a3368436ac590ad03689624f9af890302047c435bb500673065023100c25209212e031cd4ff2e0211ac14c274c8af5524dc571dea50481498f8bb8c60085edb059126309858e97dfba4144c430230119d70c77301d83b06c6bfd7ad19fe5a03eab8f4dfad9fa10b81165f2cea0e4a0a62d0ff58f9cb29d0b6e94ef05dd88f0302047c435bb50066306402305adfa3204671b71b5e182aa3edd8f652f876c650d0780e80aea5a6e9f6ce7ad4a87f8b378a10c167c28a99ede6674196023033e7666ee87985142c94babf99197f3695f74b67942397ca07e143c8944f48279661349b6096ad8dc77f6fccc9122d9d0302047c435bb500673065023100fde64d925c5f70b28727cbbbeee6bb46f0297e9aa23d1c34a37883e906a0ebb31cb0535e4fc54f17d2aa0373977cdaaf0230014344edf0da09dc3895b6bb22f1106a3822879644b22725356dc9a6816e750225d12f0e6be645e989ca0038e04f46060302047c435bb50066306402303617f56b854108cd116155e28a70dc402d3107d7878fe3a921b5ce477d39dc9f478e02088165d4d839eacc9ab15ebf7a0230100407e36f081c60d6f06c97caea1dc474be6e4e8bc43d6840e84e51ba5f7710078aacb1c6e728439526150b5bb1a2080302047c435bb500673065023100938a43b131a6f09c7a8b133abd6e37b6025bb7bfff6f86c90ff6f623e403d26150050cfffb6021b64e3f7e6d39fbc2e802300850134bb31ff281d89ef5b86e51115bf8c1086f018f4e56c70c93b765f99ca3556d5962d8bd1054e5a2e67d0e73be250302047c435bb5006730650230575ac872aad68a259bfbf8eac12d8235ff45c12bce12fc87b280fa44de3c87e53d09e26f49c3ad27951cdaa60f5027800231009796dc63d7422027c400f752effd66f204140f41e5061151b14862bf6e6d62a3f6c3d9121a30ff479a1a955d7665235c0302047c435bb50067306502303860bd134d5cd939bdf36455554ec27faa2ef50a25c0c4baede95b8250a33212dbba41f45b8ccc2ae13da47ab2c4dd43023100d4468d08bef78b2395db2db31a360912b6ec520f51cef39785c922729cb2d81dea95030aad8f4b26ca6bedb4369b70610302047c435bb5006630640230212eac7d13962f949ff4b18006674b27b48c201454aadea28b14390aa5707ae0adf8dd0846dde69d0b55cddf007957d702306838c8fb6286445ad7d21d33bc794ed60b039260310514317719521b135cf662a2feedb4e99ba10f1d873a0c2cfd04290302047c435bb50066306402300d94475f0f36a422555ffafea5009a251060fda033b11c88f0fa954886ee8e4c939ec70c2a36ee4a4ebcfb2f387193e202303aff33dab3e119d996262dfe022109348662944d37a8ed2e3a05e23c85db8455049a14a2e0418d9c3f45e2ef1ae9f0b80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230559df609fb277c72a16c613c8f62d6fcf4da2ba3b4b2b70b69c17bc9ccffea7788d6bf8827bf33ed8875897d589324c5023007551c11672c461b4198684d2ee5d2d4e26240948a935c1d8e9510ec850e952844338caa02b3819ba840b0a1bbcf1c700302047c435bb500683066023100b9d44f3fe5e1c5a8d78c1999a20937654a0774185d3c2b84c5fed93361e448a5aff0400a92a634ebae5f8824b14794c90231008022a5e2050685e96c2eb764986c48dcfb4a2d5855b730bd101902a03a621a7ad18dc66c4e5926cb2e231bac5ab586990302047c435bb500683066023100b6c21b3290d0ab6fcf8d78edb6ab08a729852e9b5edc03b62aaba590bd3a506aa9430ad642f1c32ac8467187a0974ea7023100e6407b4247f2f635cf39a09fd2543477fca898445ba15aeca940d973f04b1cb6885fb78778e98d29731a5663fc533a5d0302047c435bb500683066023100980fe89d9c6a72ad03764d4b151d02d01989c51a5ca289a56ad829d9aa854c5c669a1504112f9316814d660de9878015023100babde44986dc3e1b4ed8ef768fcac128d08420968c6bdd42c670b7439ddf428854a2c6939a9c908bfb3a5c6fb2d0f19d0302047c435bb5006730650230344fd14141a2f92a93d6dd8ff034277b95de88bd59d0f44f7f6ac09c59791302fb8f82d54e7458de0aed03436d1d10c2023100e4ac51d6aa4773297a3698e9180a8e434bdd99b8ae5e89c84d34ca4cb1786bd39dec2074f1c05c39b1ad81210acdbfd60302047c435bb50067306502301b2124d4f71f34c5889a90739331bf20612560350f91f07167ed862ce8121cfabde1c7c0089cc98867fd7982978d541e023100ade5a96f4a02073323352764cdd2e19a7ea05733c82e02db80adadd6a394ce43d5e735331898e6218e838bcb121e0c610302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023055c538f7b2c07a6436588a2b0e1ffe4e36f8a9c88d897affa6f491b50a1b7bc92c0d1cb8cac1814e481a9fba4b7c7acd02310096cb33124b0a11db1a13843fb0e143bfa923cc7e56c4cde1727583f228c8b709197fef94af898067a45de2b93fc741eb0302047c435bb50067306502301fef0da7ed915dacc6d8bb33aef71c82c243b0323df6b1e89f5d935c68a964f4b98fd1b7a397ea8b5ddd9debb27201ac023100ab1cb8fcded1477f083dde4a47f9aad6e9e96a48754c8011b954c9335c46c8ac34faa68ad12193ff60b985a7d04ce6850302047c435bb500683066023100d0dab5398896573ead3178eb8489d662f790f4a3876e234f40366de1c0fdfe6051e6975fb170c5686c47de511a85f869023100be7fb75d443697bceef1bb94d2664a75a6e3d271e77da3fafb7fb65226153f5054abdd537c71a690ad97fdc2a1ce91b60302047c435bb500673065023100f2f50b597c04450af0f9d77b8425f582cfe195a8e3e9a1ccfda3955d3d18f2a2fe0f50b20f395ffe1578ae660733be5a02305e6dfa15cfd0f141fe0af08c608715babba1425e915254d3d83343c47337caefc2988fa7cfce8e9b44d8a68d737067bb0302047c435bb500673065023100a372c993c809cbe5d7543b1ab8f62311fa2e9b3982b7a263070e6e83dfb57632f0c9f5f3890a4c4940bdc1011a53eafe023003a16a4b8937d0f7c3de8fa02b080b0feff01530fc59d97610b00a8cbc6107562ac022167788235e1ec02dd084a5c05c0302047c435bb50066306402306b3fd481c76f7ea19347c0578720b152452bb0400fb5f41d17513d06edd3553bc6c4afc0d51120d9b3882b6aec3ae8cc023041609c255af9c850934e93fae5d3f2477f1d7a5646c3f73f269090aa7f0922135eb16d91f7c6c9d2bd83b97e7d454cc30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb5006730650230327476e981e9634ad1d502f54ba91f5eb6ed12551424021991fea1dfdbdb8cb073a58794449c42967e01eb58bdbf1aba02310082be476f9d4f0e0cc24d7991a0fea3b2b8fb1aa2ca472c26a3e732b179a116bc9c7c546fb1e3e647bd7257aa17ce39ef0302047c435bb500673065023077aeab59667daec0e3a28b00b1199267160f2cef029a90f73f426f8939c4411dea54cd09a65c3e37af5d890ec7da1a72023100ad452a669ccbc22cc718905694ae12bed99eb4709bb25af9b3b5efec9c4aac19371c0d2d83102f3f065b5cee87bdb1b90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100fc0263f222a9d433bf7e2107fa2fa7e7bef5291e89c4c0f621063dab0c4839b4b010f08cc798a3c1c0ec48b72e3daa2f023100a657f9b778daaef11aa77cb5388aa210217a4291e933972e8a883ff2df1f6a3a904496ff5e93fd2b1bd997e0c27d29600302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023024bfca33cf5337b38dc02aa0e4fbabf8c2c35bde9e877658bd445297ee36d108e2f3ef75a8941a92afbbe0da969c781b0231009a40dd3c99157b4cb837b3669a4f2113f5fc8d230e67e528895b57a25ea95253553d6dbc050c6e1d5dce9f780257e1b90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a1e3c14796fd7041b3ad898806094d2cd9ec554904cba1fd99ed5cceebf6ea3a6c0812e3db975c12ecd2a91aed1e74fb02307adc5604c5fa27fcb60c7689c887b61307a701d6d7321cacd5a84196d230abd888d17e9cf3ad335325a42eb8708a5cde0302047c435bb500683066023100f5f0479708b49503254ddd7e6346c3a80a81dc5a8871b61788ce9a69f6a710aea98faca00f14bc4b0a0dd079d01e30e2023100d415ed1f69258732c9b06f364e3e661ffdfc7d6ccfd6509160806a527b50fd75ec89d5d34bc257f476290f437e4e214f0302047c435bb500683066023100fc35b9953af65547c3e6210474c09e3b4c0cc58f5caf75f77bf2e3435e1ad701ba9c33bc652de08b5d8c3f61e1effc0a023100f7f1a6e21020a532b40f5029fd33bfa5cc36e687d698f4f962de9752b5f0415ce7a2f11dcdffeae4741f4beef4678f590302047c435bb500683066023100e43844274526c4ec8027a96fbd13515a0aa2ee6c78405bc9b7855f8298156fcaaa0902d2237a7d4552a4ed2e2c31dccd02310081978039e907c6c7d9f76bc846f2b4c86249a197582b074685ac601292f068d375a4bf5f3e7a8fb4b177b9090595850e0302047c435bb50066306402303027a88c3413787cc01aebf4fa0e8464eeeaa4075ce8105708c6aeefdff0b30a0c69f53c90f2b640c3fc311d13025e8402302046a28df42f836cb7b5534e34df21210016827778b8780bd59f904b0d1609421abf1e139624ee7c132f648bca036bbe0302047c435bb500683066023100efe9f207bd4bb01650eea0f46c84cfb7f62bcad893e497553c40bd0e504a7ed483684a072d0f14999e04fd41e24a8a20023100da70991ee77b39cea6692f823a57c3fb9827ac0f35c1801eb2c7310445aa1438e362451311bf74c994182a86fae4706a0302047c435bb5006830660231008f6757be711e27405ca46cdbc872526d08020f73966c99d4014b1e03a236b41d510d4843e58e444bd6298b300969adad023100ce65189d378a70f3d411abbc631db43efe6a630ab3364f5c0c57336bba1ce38c919650900b81e5ee8e14b1e7d5f9ec960302047c435bb50066306402302fff8d9b91a84162e17f95f503d8faae5fc9c8706dfdde15ed39e9eeaa908cc2eef94a0e50ffb680bf5d4a7347059bec0230655dc7d81139615e0cc00c80cbc2607cf0736804f0fffbf4352bc701eadd92bf5a9116d8c777db14ddf67b8b0e491bd40302047c435bb500673065023100e08905808e38fe1b378200926eab84011e72319e440c18790d1482d6e37ed43d697d05fd72acec1c610a8c7f0dbd24f202305cb3e40c48e9bdab251ee927c2fa767aacb23e51181cbc8ade21709ddf7bf1bc0587be787ae015f23d888c5baba37df00302047c435bb50066306402306d09ee270a65833c9eed58d70292e750904a8ba0a356f1c1089ca0a72cfc6a45b7a791e7bc92ec149ccd66e0247c351802301f8bf80139f855e82cabea419ab2ab14d8d0eebf1ef145b5f205c89cc2d18041f240fa256330e694f8d2281461a5d6910302047c435bb500673065023100f65e4379fca755ffbb2b1df0190bc9e8ffba01d3ca3742fcbd88655350f5969bd20763a4ac921bfcd494443271f9f60d02305594302553157c743e472e56ee9378cc22694f833a9dfdf7641ee90e6a38c5f2c76469b80435df5b3615fb047da757f30302047c435bb500673065023100e0e7bf007a0ff898cf8e417a99442450bb5dbcacf60f9d4f3c242e0cfb1a04a9e5030388c88e23240508bc105f3368af023034b0c5cff5d211cbc717f53885ca2b67cdf7fa571a80dc439cb417c7b0e8517c04ac957c9d83873db2b5507423f928bd0302047c435bb500673065023037f2a8463f895b81d133a14514cf3e128b5a6522b803da19305d8bf8dc5b35f3aeeb9f7909707499e9ffed4de1dd9527023100d697cb13718971670895a6dba2764d4bb3f6172c974381f98051a968e894724e50d82af98df34954d27ac6241570d0de0302047c435bb500673065023075c1679a50de608fc49514365d0f4aba46f73f129933cdaa03914184bd0f0b460fe1dbeb59d0510567c5e894b11387a70231008638057aa4b60ee8fc7f6b9ca2a1af32873250f414cf3f556caaf42cee888edfef71f19b68192c13d6f1d2be37ac18b10302047c435bb500673065023100f8803fe64dc5f15658d71a33f1f55ccd9ba76887d502df5aca91647fd9b2c70298692aa6d28e35822760c0e730aaec2402305e99e4188cc5cd468e3f836dde960eb4d8a3f60d2217bc924c24a1b6a457cac65f7de3600e647b03b430c53ca6f872930302047c435bb500673065023100c6c8b38532737558699490188d5e51ee5771f69c8a40dc47244c48f9bd82cc0362e7d1436cb5d06cca00af7b9a38d2c6023061a4ea5da1042247ba8ee5c704d8d47ab789779c3cfe382e47489266e46a696fed8b46563131adff3fcd396cb3719f920302047c435bb50066306402305fc40e9bb6e5df0f3fdd6e4860734ed6e8df674cb9de68a29fd118c2c01fcec6485f5f0419c70269521bb339e77e148e023014207c89376d84947ad25a88e7ca89916247d0a2ab3967fc9178701414693e257eae06c4cf03d10646135b6a3e0924fe0302047c435bb500683066023100aa0bf385ad869a812bfbeadb6e0bdf0b40f62beb96512bfdae94d4ed5f1ac31d9d8beeaaf9ef149e0b39729060ff58b3023100c9483c82f0a435b9e1135e43a0f327377b83aace839082634ea5a718fafffaa914bf04f0123967d580c5469fda1343660302047c435bb500683066023100d4e7d04a4d72952e387ce503a82b5ba7ae3b0cfb03b2e2a5b002ec47e8b9544205b66499d13cf92e42ae5fbf3f22fc70023100ecac920dea2f3a1f730417fe90061dfd37e1810651fee4ade7c75723e9c1d2bcc1034fb9890af0a50f045dd8dcdaec060302047c435bb500663064023034f60895b18fc5a745d0d6fa22dcc49c48aa17484d68044492637f2e8000204531364427a3ace677f09b88d73b5bc84202304030e38582415d414d9a43186c540338de6bc0723894ca49f9f3f5b716dd641bd9e4a22115828d934dbe528ff775dc9d0302047c435bb500683066023100dadd5df2b3c2d784925b19ded5c545f3779ba07417e7258330ef462091d8c32698e50c1e986ec2b12ae190e83208e705023100b859b19bb38f2a72f5b675f3b76599f909bcef201b4f9c6f9b595f00f8a347bf1468e27f2860d67260a352c3c1d6c16d0302047c435bb500683066023100c605e02ab5c5ae2f8027de29e1289e3d761726d5643fc028d4c90287fedd42ddde5fd17c67d41074e16f1b5d55194382023100a63e8a73cf1019bd8dc005cc6a925cd1c84db3499b42d7dde6a4ff57c59e8404b634ceed499e367401c916dc38ea67350302047c435bb500663064023039f9ecc454ed70d7a0127fd45b752da35e2de1c9a7ad22cf2041cc88ac3da6c6fb412e66c1b81f3f5284674c1111de0902303e46cf52c9bdba1f8055d2d21e0fab5044a13d20511888e34558131ea90ddae05f5701ea30899643394a811922e4b5160302047c435bb5006630640230748edf44e77336d1465963710a771e0e94c119143a2dafcd3b0cad70e1943c2b3528f921e596439225be644d9aa0b5bf0230454445efe3d44ed841465d908151bd4af4c30a3e6243944a351f026d0fb16ade932fde23a590575566e6a8f969b294c00302047c435bb500673065023100a101cd4f8a14b4507844e19926884fb9ddcd92f51afa6f463299f3e7f1578e2c240c3dd72cb23b9b95b8cb3e55ba09a502306d1fe21bd60d65dea0ebca2132c478cef8246003cc0f654c62a8d0293f00fdb5ea9e108efe921eef8d7a8b2a1bb32c1d0302047c435bb500683066023100efa76578c7d33e79073fd559ade1a51ab6a48cfff56934966c8e797a0966dfd31aa0042261f0d21e42efaf1ada4f7d53023100c39d3162cdd9f605150218a80e532e1a23a6a0508dbdbb4117892c9e66d6195c88a206c2ecc67ce008d7a7216babf6ae0302047c435bb50067306502303f0200235cc066c6572acdec8be4439531528afda79409c29213858a171c84ba743cf7a823ca96ac1e0d4665adda21ca023100960af576cc8f398a8a4437e4458e3503ea0cbeaa71ab470684aef8d04a642b23ecb9129a935b121acddac15c09e52e720302047c435bb500683066023100e9eebc8dd9477657933959e6c7f49d4629c5e1672298d6fc4ce3a55a0516ec159df65c90358b69f03859b206b874d80a023100f5a95cb3f0337b5cbae65b1b0d997adbba5012781da4489614277ae031d70a6e0f7ebcd112f13e6a2c9eba493cb70b9d0302047c435bb500683066023100bd8546f02246a09563661d2f43243a365169d1ea34bb7f5c76a05da0ee972d5faf4754ce9e2647d668047d810f19f794023100a53f47ec1777bd753bb983851d0444a96b576035a1695c8dfbaa1a7ffdc3c360dafc2629747582330172d78a399be0680302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d6d0f81b481d0d66b766f645ef2e5297083be82556c8077bdb92b5e30674403ba44cefc7428b217159062bf9029573b1023100a566fed077322e896fb8eddb3457ccf555ae52419419762781e5b810bbbdfb5667988333617ee800434df821a0834a6a0302047c435bb50067306502304eab813ccb3b91dd19997e9010d806e34de8e0e5c58b9c009821dc3e2507baf8f3810da1958965da9c1297a5b53ff649023100c926a50419682cf1bb8c199174d1f54077ee7f22a7ef83ade6f1aeec4fc3701564de00b175d473aee270f260b6f7c6f80302047c435bb50067306502306724a704a8124ee900aacb42fef80c339261335494ac0a9ad0b103d35d26f744f45e3e5fdb5e1422e6af364ae638c125023100fa509d0dee3b6121f76694c13a8f5938850c44abceca1a5fa9c58a2174a85e26bb7db1fa12b0f2789dd6e93ca57ec6600302047c435bb5006730650231009907e668e03b0c0a3b9cec23c5266da5d43bcb651a7accc6bc841f5f164a047c03c48052d111d2e4f6ee6c2b1a1bb71502303eb65ee3c018fadc233b3bab26f0685ccd6da91a5bdea79e9e38688193590c76df3cd22ebce1e2b4f87fe797706936bf0302047c435bb50067306502302504aa1a9f6fdd3ec13da8a95c977ad575910100f7774e95c1edb4608db9ce0f788d2a8f76eaf681b9ddc45d4ef69fc8023100a97e88956139c2fd1094359c89160ac6d88be20f6cdd0c033545b6ac8d975bf5585d0a2806482210053a9b6f0dded2cc0302047c435bb500673065023065d0a94728a8f1a539fd72a36570f7e4e6cfff5e83d67902b5ce8ba87622af970a32e77e555921004f37667e6642518d023100d8e6ef0f4363683c06e6b3e69e75539c7130cb0fe20bdf4957f5394a293756128b6517325ab3c8a67e32977ed454ed810302047c435bb500663064023009e6954c9e457f18f21b13c22b20ac3f0779e82c831dc301c5298268f0490a8f8154d7a6bdb4cab32af7e555f7f9ddda023046805be56417b0b10dd010f07d232998e7a7bacc2c2dc4d59718e991704f26d1e8a01894b4fa345f0018415685b783460302047c435bb500683066023100ddb147140fdff4d622e1006556cd201459cc7c4cf1931501e3f3010f104f16a486c57a92b1bb02cbf7a34ddbbc9d264802310082e4cce900b81b72cac583e282770dd009668c9e527d4441e2941283002b9df33ccb21c99dac02edf7bf00c1fbaa6eca0302047c435bb500683066023100e8bbecc17561a94f8a50bd4236d4e120f55273b0140e7245b7656cdc7f4b97659440a5f05b28d942fc072d39ff4c1de3023100c21fc2d7c6d7bffb9e0abc15c28fb5c1bbebb90b42b128377c692a3d24e08fec5521853809f7cc66f69ee4e086f68c9f0302047c435bb5006830660231008572459a2c9d9ee7fa28edd7520ed4bf0e611d8a785cfa4ab09c5071ea0970c02040b9a2e4139279c20cf1ee00f52e0e023100b13507e67d46553f276f71b7dc287c6cf12cc74cef773eceb857344849bca5f37f0f58d461d93405a95485eaaf7fbbcf0302047c435bb50067306502307b68fddf0cfafa94a5a570a643341cf5971b60b5c0bdcf8a0c2f9e4b8ed5b99c1c391eaae3ff3aa5bba59ff67d3e9943023100d78c1d474672d8a316d34776e061de1fae2400984562d801036add308b80ebe41a8c9621d2433ca02246deeb8b546a030302047c435bb50066306402306b10bc65398feeb2381aae709675553c475ed290ab9c8878068b5f27641bf049299f3ed7f678c6eaf0f4eac66ca7f752023014d2251bfd38f45a10927b2f9a27b69b47b9c95096e93a178d9d7e416347049d033b28f576e163e2424833ec8f839a060302047c435bb500663064023029e605284bc09d2855b1fc261a58c9f4f6a6257ff60b22260912c7778d804e758896f31aa3e432ba8697467cca84e1ec02300de7b1495f1d7776df09decf173616cbe0aa54c22ea290f8258a2b364c6d114a78f1671dcceb48f3b4a1c8a089dcbe8d0302047c435bb5006730650231009cf2b48c5fa93b04e06e20e1c6de86f04ff85a9f74cfa6d955befc1951d0df2148a84db21af69e878cc3f8f0bb784e600230296c268e38bf92a16474e950972ad5d37275755bab87951fada1dcab268e5b7c33bfed1467b7d3dfb676963bbd7897750302047c435bb500663064023052ea653775c44d288cb3fc13ce54ae5c3dec114bb23de118a46560e040668310243edff06b43cb4645f9aa1ee84614f00230457e3de2165f695590404fd7c2d2c8e3247ac5bcce526c76f996ded5e2725ae694be2142a46c10316bf81ae8856db3ae0302047c435bb500663064023067af98af6af5a332153471cfda497c3bc09dc5f289cbe93b633ef98e6026a7581cce5c54d243d6aa4f7a8c080e36a84d023019bff3c14d8134eefea41965e8244d13f5a1548bd029559db395526a9b55123b803845d618235e5559a69e01e6d5787c0302047c435bb500673065023100caefe2d43a0f3cd498591c5addbf7603df36a4b00f77e9a78994baa7449d5d86da3e447b2c1015174366ee0e41e351610230099d2a433b7c262db3306dd2b225a420b7544fe2d419d6bb967d43729aea25bc6c128f78a761fa56609aa0cb96d1c31a0302047c435bb500683066023100aeb3ed97aa8b133a79ae2b9ffe26cc833ccde2b14c114a4b20e81015cad30b909fc0633f294b64a575cf5d92bdfc753e023100f8654722b617b148cd093af6360fd7f84d088f1965dfbb691e58a47c579f605b02845c9d7dccf939b26cb1c3b47b7a670302047c435bb50066306402304205f4a4e5c583ff24e62036144f077a546862170f3518b3f30372c9084634befd7c89991ff30fc1202ccd194e83600702301e61204009ca0fb76f09ac70ffaf7d4a7db29441cbb79ffc9387ae4d2fca4a237358a0198ce45915839c0f66022945110302047c435bb500683066023100a712f411a9be48214f839af221f474398ab33cebc0bfa53889dcbe0b28e6cfa7a2ceab3c89a30182baeaa1e6f970ab55023100b8705764ed94c9a629877ae1d51cda93fda77fa029b51a8e8448976cba357509abf36110196acb5a1042eb797530a2520302047c435bb500673065023040291e63b89cd3c647fc9ced4f32db10e4e76ccb3ac1592950b061342f4772bd30e18be8297e5813471e5b34c81e4ccc023100dbaaffcc409ef1c401078972bf1d6afd587e7a4de1fbc08b365e26c3e47dbeea3236d822327c982c93cf3b664b8b0ba80302047c435bb50066306402306c01a5acfa4b04c903e981daea1a7a7cc88196337b1af23846583076ef540211d79b116da08ac73a25d8638c1be4cb72023043a17daf435bb0644d967457fcce7e4b6e79be3613c98ba7241ad213dc1b5fbb3fbdb3362d5854f4092156f57f6694b60302047c435bb500683066023100e6bb43079c3310f8386567e7f1f032232535f72bd73a0def0d6d661bd426d3b857f09cf08d9f9fb262eed5b6435b892c0231009b88d7ed3764e86b24512756be9470ee6c6d64e1c5404f28075f2aa3523c1170362b5202ed88cb84ff017368789284560302047c435bb500673065023100814fa5a3c4b27cf71a76ee6b1c38ec306cbea00ad37a5804e00eed0d82580cf906d2950400315c3ea0d54c2669a0e14b023067abf246bd2f6912a7adfcbee721eaa8137d4e64bdfadc1f2b36406cb38bd473835c97d17b80301154c01b15b873616b0302047c435bb500673065023000c1fd02f5beb05589c729adbc62cc52a95a74f38c62227c2ab263ba1aed131757221a784e389aab52c9eaa504ada4b8023100ae995d08c9a845c9d6fa1cf639bc971271952630b09a14331a082f5a4028ca1fb2633a5cf69131f6f142c4a66aadc7720302047c435bb500673065023060fd7796cf1a2a89be73666bb3bfd3341880ced912e9ebfe2fb9f03fbccb94bc3b2b6fda6f50c0aebe43701bb60d3742023100a4b5d5edf2ece42cda08eb7a6d928df80c452a2495303aa44ef7fbf54b59ab5afdf8f95c80805d7f065921245ef8cd450302047c435bb500683066023100a725d340d240c597773bb8ddf183490a26339a818c70b19a181306a0000387e05380b82ef8bfae9aebe9ebc454d00c69023100f0a74701e79470b50f52f33ed41526d9eb38a67619e91a319baa55b2891da47cb5d1213f5ae4e70551f8b3b21d186e140302047c435bb500673065023100a8cd9f8a7046927e1dd5a06e883ecbd9601eb6e2d204c31598716e7292a064beab38e7b018a41efb66204db8ecf6ad160230607e877ed2c4ef66e541dcbd2ddf3bdd4708543e9cf51cdd39ebfcbef70ee9bccd4f9e423d9da2b5c8088c7e9ae501db0302047c435bb5006630640230569e85ba58da86a7f7edc494b29f7ccc3f056e6db5bd1468c945d41f017571f799b2e545eee4ef1cae317e67a412a3e50230507c3b6cd2a964ad8782c62c1ece6169db7928d4867f08f948780fb792b34a1a9d12266acf6adf0300f906922d8a3dd70302047c435bb50067306502307f7dad1f76fed7e7d3ef4876593081fa407159a888705e6643b38756a7e811a7038cb0f171a5105e8d6368e3bbeb2cde02310091b78da42b1fa2470a5439cd7cf5ca2a9eb97bfe36921b41a68814593115289e85517c3052e9653ca5d5ffe97ca7c7280302047c435bb500673065023100fbbf8e5a669efc586797033416ecca826d885c4d0e0bd1323bb20f7b92faad377cfac7037f9ae26210671d5237ca086b0230440e02e7d1399fdf24b936dd9b07600c745bd07ed2bef5f1974fe56339daeb69fc929814531730a8f7513b9ac317d8000302047c435bb500673065023057e45a0bc1edb520bf6b3f84e4a16b4f4983e0aa79319f2728135081886bc6d1a36e8b9a99bbdc1f36aaf4ed30f7be30023100fcf131035020429e81ceeb737f6d553ee928d81b947926e32500b15ba0a8f03d4c7d5dd727f62c69231da081932d48610302047c435bb50066306402307d0ac842143fcf59b4a53724a8540ed1a9147a46b62953d39a1811d6f748f7fbdcb1dd2c59c16715a8272f487c259a4e0230534315e2f3c9aea7bf6338e1f61ba1769e9f109b993d5db874a29c7df4b5bf1e5743f81739305c6868b03a62af86228d0302047c435bb500663064023020fbe8261c167d607f4eac548a632b14acf16e803e1b33f192fd7d8d4fb1bf2f96cd1592828d4af6854a80022ccddd8702307315851601e75140653ca5e71fe14c722e394f279014156c2e37fe6090d4825b1b72815b247ba136b87d18cb222da8100302047c435bb5006730650230784c336e8c218f5bb4307a6a01b3c6f0456dbeab5d37dbc37d168c30cc83c8969fade1075048df4838c94b7ae9afbeab023100a85d8f8771ffff8ae18449ece21165aaa25916895cccb59fc3fde604164f96bd1a1dc3f1a6d3b6a746bfc1b30f6cb5ea0302047c435bb500683066023100b156dab63c794a71c463b35a1d40bdc2f12f0b606b6f7250b5d6a1e76cb63ddbfd8b195d8f636e47e75edc41b1da9ced023100b40beac5ec104f6c59bc7ac18d4d3ea21e228547abeba947f64c35b38e2a1d6f32ecc6a060577b79301abe0e8efca8630302047c435bb500673065023066962b90aaba16872bb9a490771b67e6ccdf465c3ba58ac70ae5b685b0e406b4b044ceea2df56030d7cdde5c7232da90023100a023be4fcbb0bf42a3c5c5adf3fe09e5e2ff64f22d12b2c306d98a6ae0284532056b4260b37bb1bda64da547473a20730302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023063bc726c337fc1d2b7d062d4a96025ebda0cb8a30b2018d2dbc6a954680cdfa72454f1e53cb4757d42865f19203be410023100fad91098fa603232d3ff180a9c6805ea150aecfe2f377c891582dd35c698ffc02b5d52928ff1fdb2db7c062cc84de7120302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bacbd29e758812d78bb8ad23383b1ed8b1c096183703e5637275d500469edfff2fc7b906a4b6f890f03b0d3f42b6e639023008370664e53991d1d4388367ad277039bada91224058e198bd4d1ff9a9d100efc40240e37661babc08875fef4f5494000302047c435bb50067306502301e7a2aeec9103d58a09f17116b758b0ec47e91178229d8aaeb2240e9c966893002e79b9a0025491609fa81a40b11c5fe023100a39e9f560b02f162bb09b8ea3ab123512dd8d17bcfc8cbe29688450d978e5badd4b8f9dde0d00dbdc2a3194c44d6c39e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230355d8a055fd1111a575852a7b32fa23a838ca6cdaee9740d7125e99c5ee694958d875736401603df943907216456517d02302a8ccdc9106ec08e2cd9e9a27e99373a9ca0eca0cd1b4c46d567d744c8efc3077cb485420b9beec04f3631768557542f0302047c435bb500683066023100e8b55652a7d5d80ccd613aedcae7a2a586ea2b39f798779c01f75c360cbf0cb761bf1a1fdf939842704565f8d15f512a023100cb50654bfc2cd580942fe9e25650cec7933d50b8ef2c0f4154e4493785a95a957ca6dc94ad3315399dfa576935a8d2160302047c435bb50067306502304a84f637cce0b996fa3d4d553fe37fd593966eeeeb3af20b7487260f9714d7624e8e4763e1622870e68baee48522d509023100fb331115c963c18ede27ef56d2768944ce5b96e7f343588e8f75240a2c7c556932adca760ce3c37ec4d3d32985bd510d0302047c435bb50067306502310089f48b7a57dcf8407eb50d7172079533de53fd5482f783d8abd102ead6f97bfb6eba11aaea740092ca126a2bad83d24e02303d0a7a36b003ef2e372927c098615b9307152b6cca357849497be044aa9f1fefea6a8694f9d36e57f109a1ef4f92bf710302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023047aa2803979f80646d3c4712ef217ab8d7c1368845345f1e36b23ce59e20632689575a9a423e00df0ed972b8b77acf08023100e0437c5b938c3e59aa762fd0c3e93243aff15bf2e4ac835bbb1dbf97d757a8f37d995b0874bbd653bfbe1a819bdb024c0302047c435bb500673065023100f87da857c7d5e9ba1ff74fe005d49e38f646752ac62614440dc4ea070385d0bf73271d181f6f508c25ad597ec4514ee60230748bcfe18ff777eaa15ad8886ab3558e82066cf79e3cbd67c57d569df46c103021eb40bcf3811229e9f6936fcf890ac50302047c435bb5006730650230319c56ef919ad5e96bb5e146c49f82878bf021f7a80f539b17c4cd25b7db5ece5613a0615c6ad599e0e165cd424a1aeb02310084f3309d48cbc3df99646bd1cb65d808241d363295f51810da095561d0ce8e18a86b6f78297dd8ab1d995e797a98d4130302047c435bb50067306502305241eccec83d83ce0f98668f91557d6c025d235d5da1a587abaf068a86a9ebfa0762f5ff2ada8f19d8ca5032bade2084023100b0a6fd1af22ac02fa494d18cd2bc4e3b4f257de851ea6adf57e48391e66872eaf2582b1682a658f13224f2cc9c2eab790302047c435bb5006830660231008fabfac9bcaf0b68b202d720e9199741cbec170dc2f66a00e114119e9e75be7cbfe014fbf0b6b0f5b9e8556c69f86bf3023100c65022166b08592eb3709cef726cc77568b99f256c045ebce57696d5beb20fb1952ff9383e9aa85d5cfd81224b0931440302047c435bb500673065023100dd01dfff54368e76b8f6d98b6b6d78532e19fc7e3d1d31964a877114b1647a570c558e72d684cd58248b7ca43b922ee9023011fbb2902334d5151afe02987b17ab97f492029ce40ebc888dcd8bcb2909a2bc058ba1db939ebc2dffb14b5d1e1a964a0302047c435bb500683066023100baabe194174b6499b1db31d5999cbd095af03250f3266547f2d4a59b4ccc00b7a093bae730a5cf4fd51cdda5b4b3670d023100953bc480875ccc53b8478ba7fe660461664c4804121f329ba564cc913d7f0a26650d2e79c015ed888e9f56f30f7519610302047c435bb5006730650231008252a0a946050ca9785ff796152d639d22c373afea0c5535703977f9d2bb8eec11dbc8fe2522671903c71b4991acef8902307f59fefda7b5dbe6005f7f62d6fb451f408d996ad44cbccfd7a1ff17592f3244bb5b92c5bc0b55ecef2b03dc8e00fcce0302047c435bb500683066023100d586ae35eb2b1933da3706d3c502528d1b6ac0cdfb8bee85637748f446af553f693c6d096c8448e2041c9dba28d86d2e023100b484091d01a213959a7a18e78d889a1cc499e2e7d926cb462c746f673cc15de9834dde127c24a5992fb59515c4bb693a0302047c435bb500673065023100ca149992cdbafdd453333b975d4e9046bebfaf6245d7615c4212f05f5517d6b6a34036465923656def9c5e5cfc058e4b0230396dbd7460920e51801468470df2f85b5c6f7b02c3b0ddb9e3daa56def4a710ea0c4533d41ad630d3bed237a13dc541d0302047c435bb5006630640230729de4498489f58014483103cafae62e272a25d902ac2096ee8633c690a849f5ddfcdfbb5d4a871b2f7aa2446460965902304a63f54d1fede45195c633b933287637636fc64002c16f58abb64a7e7a609bf3df98c4c8b9e7e8ace677d0760d1290210302047c435bb500663064023051b1ad3709266e80ace33d399bb7733a77f33d6dbeb6e9c4b66028bc64d06f7323901ce8dae70e4d0d3e26a52dea7ae602307fe075b72e9f8acb42f4f0af140ec84ed11126b04c2589dee5a73e08dfce803bf5dd4585a403fb630af0301d60feb64a0302047c435bb500673065023100b08be7dfe511b05066a18971ac7be1dd20bab0d1bb9226046bcf00ed654125bd04d59672feb6384afa45429e6f95ad1b02305d156073041193facabc673e20d194bc0e6735381118c437fae31504ac64f23d553125f8cdf83fd7b96c991a75e455970302047c435bb500683066023100ab2ebe77eb2fe9d0d4c7ec02a766a84ad5cd9b285aed2132797d904e50b0407d4e8acd075790e7c881e31d965453eafc023100df289cd86b537b5f4177d4a6df94998b84753183a73767d0ad7d57d11ff130b3aa8220e961c62dad9d3d97c32e3b02010302047c435bb500663064023061645f5e4c9e6f2575edb06e172dcd532511ea0d5135982e3ebe29e772528875f2761f7684f99d251476c1cd8dfdb5ec023032b804bca7e6ffe8e66bb74ee9debccdfb3a0ab961154ef66f39f0c12dd4221718335a501d2cd8f71df7794ef4281dae0302047c435bb500673065023100d639541cfc8c0bfa7bfa8d513de57927317b35f424cb7a58afba831e46d3ff0abfdf85ee592eaeee98e0a3bc05173a2e02307f481fb79ee0b093df036414e5d22482c8574d6504b3f4b9bdac9bca46371824f68b62108165ac687dceb5b3e8b193ce0302047c435bb50067306502303c14d6bcb2a3fba4e7b0e713ed65cf5fa435f1507206bcc0cdeca1b8193404a47709ac7f8829a7fba101ab7212bb64b5023100fec41416853942135a944d9d2fe24c5a42a38d255cfdf6c104d0d268ae919c95d48c884c9bafe497c26f160deec9018e0302047c435bb500673065023100a83a1a1c1a829d928d5facf9d3bf5042000eb70ea2c5b9b2de71fcf679f1cb8a2c200a58dddf56db20e80f4fb0ba88b70230657389e112cda286ec592b88ddb5f2258b56f51315a61cbc079a497a1733fecad7c9ace8d91ea4377d011dd956a2c6d70302047c435bb500683066023100e72a8f23c332b9fad31b5b369cb3187d11907601c2e96364d7a4d6046debb7f644f763120efc752462bc72a3cba8c021023100ba6406a37efc0e4353da7e8028ad298b8354ba8218b02430dc51cf5fecd761b756841d4d9f5a0265ce2056722f879a570302047c435bb500673065023067b9cfb722814a6848a6cdee8c59ff3c3bfc3d3c52154a986d349307c8f8cd9cd21456c706f2075c1d30e14cedc35bd5023100be2a934bd4dd76875ab1c3d10d0e72fe540a830891bfacf7362303dbdf075fed10b6afc2f6f50f2556aef1e990cf31360302047c435bb500683066023100e32c5375e297c8ce06ad8e83cc3e33c9439bbb4c5efab34ba21bfa18661d944b42b6eba255c325c514c3f8d4e13c5b5f023100e4a4324c37fa2be79e8139b7cb3e11d00b228537f1a655ddd09594a6bf397f56e251d5c638055926ae53b5112c7df5bc0302047c435bb50066306402302dd4bb7c2f07036bc7b981f1ac53589ce8b124a4d60f662f442a67ee01bc3b605b9aa29b1d1045d9a5132ef2c48025b6023030008b18cc1e01c4c0eb74d5836fa7d3ac6c959ad4fd2af474a365abd14876e20c98aded9724b8af7bb6dbc8e1c970390302047c435bb500663064023010f82a963ee2dba5fa94aee7570b914d595180543319cba40fc7359d778d20c84e3be5bd5da8fbbaf44b35ba95f1329f023031a4a4c78df32af73b962e610cf559b2efbe4c0682eae506e8639d7fdea8913098f93146c76635223f50002e747acd930302047c435bb50067306502304d53ccbc51dd89f6e3d50532373ac642c5b9fc5be5d5be92c505a49b810e18dccf089303fa181d3b0e0e075b63b50dad023100b1c7107572d104cd1545e27fce6d3c76d38b3d1b092da84ea355bd7353b16f99ce5c6a05238ba1fa04ae82bf7d97ec660302047c435bb50067306502302f40f91c50f430722f9083fc17b5dd2d643abd578810457f66fb73d656302b15d630fe3b1f81918d26ba0ad14ad8fe43023100960a9ca353e4ef237bd94a31726b2ce26679157c59bfa151b56e47441310d708b7c693a8648bf9fdcf70a8e77e385c440302047c435bb500663064023075598f432b32b370ea9ce3be84ff0e78f76999da9bc6a1b11e632c23abbfa4d6791cddda6e2ef0fd3e8820210929da20023032ecf895521c039d66fc50ab640073bab10bf1e77427015f9070b45e384cf192605be2dca1dadee08d0b71bfa27bdaad0302047c435bb500683066023100b8eaa7a92b9841b5a555ac56904e045800704717753718da87092d1297b1297dd9380435df34b4994ca70f765feb4579023100c03ca3e8ba8072096ae895569eb83faad294182e56ad6c5a5bb5e91351fb65f7182f7ebef7cb111fa1c90976547f78ab0302047c435bb500683066023100ad9cbcc0561321c44623b3aa16f7bcf3a9df6cf3a34c8e80957cd28fde8617c235632d29a7b81346e594f7b8336604fa023100c7a10a49f3ad481684a194d0691bfd0365a72bfddc1610c21b451be3669cd0e0f974c85037098811f0d5868a26246ca00302047c435bb500663064023002464d73840785bd75584152e489b45a98d641307366a15eb3f49f5cd656e51fb1acf15f9c96aba3558a792a8f216abe023028c76cb5fba65440c05218497af302f83b5f519d7bdd24a69817a8e6c0182a1c6be6f50b1bc4ab400f2018c8cb72a91d0302047c435bb500673065023100cb6901d4816914bbda2614e46f4c7fc4294a34ebf30eed3b676f54386bed0dae0c61bc6f1e6dfb9248e0500b65c14d9702303c57ada7475091af8608af385a6c793667032ae0539b7726d9fbf38be43f44001ce537bbc683e0cefb8edeb1ccae742f0302047c435bb500663064023028b6d308ddbafbaf612728c5ba04c52d0896894fa7d2bc095442bd2c21e7e805a816038ec86ee85dc95d95c2a4a714e302307c833bcf4e0c11a9e40a10980f87451bd757a572c69bb63c7ba1f623c5ed4f26b1ab13e01aec4a269a7933035eb2a2e30302047c435bb500683066023100811f99484305941386a185960810555079a3a60181037df57e76df13c4366a4f4717de1a47c688b0d25e2954b51f2281023100a24a9ec3a7b2405f76792fb7dd79efe515c3e06d31d48184dc58b013468e9d7dffc1cafe0a4e350cb058abae14fb505b0302047c435bb500683066023100c68dd2d01d318da3bfb7211932df6d554f61ea6edee2be53c87ee200c212dce98841b69738c95f31baa6f7e6b25f9cd8023100fd5f529d10265650bb94a6e024ecb0fa7a43b5197344b0be8de48ab5ed7f396ab78b6df83473ab00682afdbda01f9e9a0302047c435bb500673065023100eabd3845b35fada79eee1e1136c94fcb654664fcdd743d13892f0960cc7e77ed8b91da128ac6484e8c5428876d44aafc0230376d7c9cf6f3b7487742f8df2225598e3f1cfc0919b2a81af65dc80743cdb771c56fee09912bfe8e0aa92edfb12ccdef0302047c435bb500663064023005c250dfa891f4b690df4e99d70c8e91d2d0d7fd2e8203e9b996e471cfeed1840c93d0f9f1e223b5b71495547fc472aa0230567da8c85848f48cbf7ec8752101e7d68ef482c6eaa1977b86d41667e01bfaddb3d891a62b7b0c5b2fa6554f7b181da30302047c435bb500683066023100ca3e949354e611e998a9b10c9276fd4cd08eeba62ff1ddb0b3cbbe2e454d7563c7fcb60d47b1c6c803361e5c53b02a210231009b4f12a14a26a4df47b675d8b9b133eb3cda12770d3ab3980370d29bc41ccddee5ad0352aec7d16ca9a01f64ca0c72b10302047c435bb5006830660231008265e297395a627cf0a5bfbb149b7a3957f02edfcd20a7bf5ce3fd78375892e6a061dc005a833f8afea4caf8121bf322023100d7a3e7a63146bc09ed93993b67282bc3e80297d8bf320b0bc462223bb0ccc2f391e53a49065797c6da821a648cf553e00302047c435bb500673065023100c0902e551205126c904ba53219d8c0b7eb2765ce9826c9595b4b0328c6d94eb0d4256af5d1bd1091f934f086c5542b710230111fa99d9f78d4a509b4145b6f7d56b4057ecb29245a91ec021eb8e35edf716a5a70e3ad98de5f069eaf5cf6eb3820270302047c435bb500673065023060c67a04e912f63d2383bb25b4ac40f665067f27b37d92cc74cad9853d275c1ba3db7e4be32f9d298ec2680c18d76e21023100cad8472ec23f1e4a58438b835cd7d7d4fd8f20043412d5cc22a990a45b8dc0d451f71fc0273c5e03cc1e4d224789e3cc0302047c435bb500673065023100c475b8b56dfb90b5853929cd5368400f4db811884fa4d6f3e0ee68beb551c8ca4b181ec3c6605857118c0d8b415490ed02302a245c3969a8727a45924dc42daa6d085bf0c1a85606c1e1afbf03077d93db08c8559dd53bc4a653c2e3ba5f5328a6550302047c435bb500673065023100a0c75dd42a56f4f5f1b6d67d2493365b3c248b478663362700a5403b3f7789c0da44a410d28c5efe57ea52e6913c285c0230106d82eb6d478a8d08666d5070aacd3ac8d37261c78c388fffa2ee0e1c33d05ab900493bc3f36334b2ebbcd3792748220302047c435bb5006830660231009c8f2d4b818ed98f9d7cde41fd156039475c031342602c8349b3efa001726d747a3d94b64116ce2ba1967afe19551590023100dd71bdf003c81551b876d0dd857dee0d069e86527cbfc5feac507972da28f0171225eabbc95d4e2a1583dc8da95b8b7c0302047c435bb500673065023100ade765e49c00594de53055ee1c362fd4e81f88994267c7019687d718280233b929ae1997622e82bceca71b85eb4f4e090230678d17f7f5d7e4e777d2f5a4868f4707a67f9cf88d5c382b116c4ca583ebcbb5a2f91145d6823410b1438d9a0487135e0302047c435bb50067306502310095d20a34fb391f84cb6c23091a3aa91a926662dd499e10f5fe647821f0b4021e6b3612844cef8165f168c689d524796902300cdc8fd8c3e3f052747a13c1936ad96126a2725eddf973b083aa18e552bc4f189ad816e4d6ea302265d055a24b8c4ccf0302047c435bb5006730650231009f0c2f9d3c65948261eab237926f09d8b0ccca0f94708a88c06dd756f885b9cc51b4b2878e2ca10f100fcc4657178baa02305d0c5123a6f73bb4deb85d0a6e7b6bef8947871ff0b96c8b9fd3c7cfc17f91bab8caaecbd5e868370f7b4d2cf55765d90302047c435bb500673065023100f22dac2888f097e2222c99670e67a68e029a575d62fa3fa7ba106997e5a0921d36547b1aeb8cae8bcefdd631acb6d35e02305fc1d8270fd2626b323774c84b4693390d780709166581efc760307f1d16053b9b515938e7df7f4359af12c8eb4842aa0302047c435bb500683066023100e5ac95882c223c3adb75e62a5fb5ef7fa0dc25f90c2a8c87bd66e9060a33ae8ca8553e9806c616c5992fe515a941650a023100aad2c3723fbf15092e2b7ce136784c578de5368767ef840186867960f7ff4302eb78f7b6ce6866915f87981f6b9b5b8c0302047c435bb500683066023100db138aea34e6fcec181ca41ee71eb7314af479dd174a88770083fdd9a9dd0508f7df4ebc53a5988253229af20ab285000231008e2beb87e8cc9a2dcc868c4e9e3ec79643d92b990fcc4b20d5ed33ff729f29b1a71c89c217881c11b270e8d737ef08040302047c435bb500683066023100d664c8f6d3e44aaac0a7459efbe08bfd373db87d98061353c899c5614b2d8b2099b3c7d7cafe839fe73fa376e151364f023100db55b502b916c9c140ddf2aa752fc53c4525964e39f73a95c2bda0fae99468bfb1ec56ca947f102fc6b94cb676d9e70c0302047c435bb500673065023100cb9faaa81934a5aa174aa2032c53d9e6a985294bc39454d32a9e6cd671aba7d25034e977adb198c24916054cd4377116023021d9bad9db1344457e5cdbb2579c1c87f73b51467e33fa9e25236ff4aa74d91c5a0178ddb80022ef6a24ad9eaefc2c340302047c435bb50067306502305ce5bcfc9654a65e2803ed4579dc701829308962494fef5bc996dec5030479f15e608cd619554ebc4a0c8dbbcda31feb023100e6d04bb45f619c1cdb883d3937c0dbdccc474f09553d10f723f97bc76e9db5ea4316420086860daa7e485d791f8db5f90302047c435bb50066306402303421ade89d49d2edfe27af9d68299fdd74b273afad55cb8f5eb399c5f4847b9a93d2bdf1285a7b6d9fba93731edd271402304a2365d759429120379e1287f650d6b9a430f62e1130fe1eae5b790d3596678e8ac1436b6ddb52bdd6d4423adca8bfba0302047c435bb500683066023100ddace83479d3bd76a4cbaee6ff68aa86f4cbcdadde82317b6db46a43ce5f3f89aa390264a4dfbcfa175c29602b4da51e02310080ace0d317f6a5ec48a4586b5816c0c23438959fdba6e318496ae71561caeaedb60eedb06f22ad84ba744ffd6ffbfad60302047c435bb50067306502305412792121352b81a7f07a1a1e83b8cc27bd2789b6c569c97277c5ef96bedce87bacf5b7124e7b0d07ce5a752e52eb7b023100f481d916b89fca719da89f629a04576ae4ce4c5fcb61f71a9a78470e0357c0a8ada2f10d646950ca889aba2b2ec17bb80302047c435bb5006730650230205446f9364f76e840efde2d27ebfa2bd1aff8215f3dfd8d7848817997e237872f7f73ee6b5c5d75dd6ef48707788ad4023100d4a081856c60e8c28a3361d91c197aa909f78cb48b692b2a7aa19b809b413388c541808caa93f143ceda2e4f6697670a0302047c435bb500683066023100c8f12f9a59602a459c9c6510dbf1d2de788ec4205d7cb1da40be5ea21461d6fc6d923d9a5d8459d280ea451a9b9c661e023100eaf8162046c26c692ee475d7d7ae6ccea5225e7a2803a51b8873c5fafb19a41df8d859d413a256812606fdbbaab5cb580302047c435bb50066306402305930130e75a019d6499bcde73a4cae04256100e397fe123f9ded485fd4f199e78105048c74d56b823ee817222c86cc0502305af195ac416033347c9597c5f8931eeab6eb668cfd296bec7d5fb1b8bcb73d7b6bd4b89e2e7134019c6e8a5b69890bb00302047c435bb5006630640230717ef0daa76d505a54d5d757af3e645e4ea8e88cba014ecca0ca7a5ad58a74e58b7f946021f7da9970be7104e2890641023010ff67e7a4d00af9b41999281c6fd723a600ad338829edf7fe938e5fbe97bce6b18d3a70ae8b35ab3fa26b4858f0106c0302047c435bb500663064023065858ed86e7b2c843294c538e1f4daa986363105d6756677eb167df3a6a06e7723f2d356da99b513ffbd220e322b5ea30230702d0ef00f6c365500b9eca008ebe046add2964b1c62410a4c45409a287a14fbffeb6a0683869aff83569558e3fc9d7e0302047c435bb500683066023100d449f210f57a99aaca243481d15ce087d81e4908c815657fb6339ea617e4d963f22006c370b5fbbb69058a1c042b1fd1023100df5cf827074953cbca90b637f32072e511b2cb8b1b4b1073aa09f4afcac98bbc4b02d63a313d0fbfe13354348e0554090302047c435bb500673065023100e6a4bcedcc374f5b40777cda611a785632a70e72a5c667317d961f45ab25f2e793b4572b93fec919b0928e116c7dd35502304abf18278b50d1ee0a1936b0aff5ca87183ba77ceb37cb254cb4eb33b526408b53f692eab287df004011f9521767458c0302047c435bb50066306402305f98dfbce386c6ad7ed541f8d66b8e47a8fcf1da0fe146f36450b5e5e110e1d734d86ad328c6f68554e6c2a3653daa9502301ab8f2c2d15e29de6a6513699b96302cac8a3fb82c55d4e1f8f6eacede4496dcce15a1e769b79fd80ff372d40e5167bf0302047c435bb500673065023100b4fad00b41f53a9da8879748c1d7bc2a643e98bc8f05e77b87f2f98393ab5e0ae4ef6f6cf02d2dd0dfb79a468431ddfe0230784711ae33fa4c6100b1adc104bcdf448e1e48de06d839c6148f94d9f8b9b8d2eb3cf3893062645d02bee63d507b69bd0302047c435bb5006630640230581c40ba03353d1acaf6cedb25fdfd5b12e97168586291680476130ba5806776257c82dd3474d8a4d2a2208c34cff5c80230043a7d128e357e9661d78eb20bbd46e0e8946b41c5c7ea827464c6bd56d81b411df7c8693648eb01d2bc7608bac6df210302047c435bb500673065023100f7bb34cb4160bbbbbc8c7943f76d7034a253d4c5a15eb552289bbb26028d8a34b073c45d5e66b23d614726328849f7c602300136d52aa7ef8e6e623c4b5059e882133a916ac99562fce2419e1b5b4466ff235e0b61f61e78de941258890a30f8e5450302047c435bb500683066023100cfc720255f22600bcfe5160da7344440512141c3d2859bbdcb83a5eb65b73b1e5a2d91e4fd0e508172de4ccca85b24b9023100e578f0fd3ed5b08562d4c2f89f743bf0e317ce0d7a77396e56c7970e9a4ee61b85f82427593cdae3de9326f3e0b63b2e0302047c435bb500683066023100f9a1887bc6568682145ca79e772df55d74b0adc5a7a97d857e8fef735077134da87615f2f9c02c49535772bb31b30b3e02310081a6dd0f597dc99ed58ab4cd3369dc3b39a77dfff458f2ece926b0afae64d22ffb049bbeb148631552f0f1c53d52cd270302047c435bb50066306402305e078e26bf4991aa22a7f88be200839b32073c1e067991fe4280d9fbd56a266714d3d49b3d4282bd5376b14180ed0e4802305deb32d2a496fc6b3d3d7f9e16e9ef6462689a7e9b43d284e1eee599672fdd95b8289b40dbdcdd60e856e9ed3a0ada4c0302047c435bb500673065023100adc453413f91967c8cc09b250444441a7251f58315b71efc1651d0f77c73f25828649e7f462c3d916bc15d0f065f285702304810ce88291b4f41d7df10102866aec1044073fd48814c15f6b6ac82d64a3b111c88f157c42e8bef476dc3c16ef94a070302047c435bb500683066023100f9aada11646e15bf0c683467d8a50f58bc33d887b98b16c6695add9a501c1098335baba775b3daaf98f74710873dbddb023100991b4bfa5cf284a341831e5aedbeac9e98a0130b05ca1573265630885237adeffdea2be6f001e127b276efcbe5d1857c0302047c435bb500683066023100c78d32981f7d1f42afd5dfacea0b91d1696bc366bff078d9f967406e62d82f9fb8384662e3bc43cf63afd70a8c2cf57602310089003c9d04326fede97cbf43e03c474b7295fcab704139b792e477e12f1bf86618d38d824be5c9703a92c588003837310302047c435bb500683066023100942ceeff7e7f087718b56718707d4d6424f8a5fe16d3261f6018996146cc44cb5b438eae0180ee205deeb93d018e7473023100c78e5bbe89ac43ca17adc76fb4cd5cdd73aa339902468a04c2deac91f195c1649c5acb1f97edfbc96b694488d6ef030b0302047c435bb50067306502307efe4c2337e7892d649859cb049859f0653932a48d4c6db6c98bcaa852c41d17aafdc451833b68473711b22fd107934f023100bc97c1e2b10f62295bddc188d8f58b14de8f2285f6b041d3bb1c660bc2b85a1ec4d2682eca0615407e131b1837900a460302047c435bb500673065023100f2c05b425553dd71f0290d364a882af9b13b97db296c620130bbf3ebcc47c2834a9803bf3b9eedb321030e001dc84c8902307e6e5d25baf0e4e6e55f4e6c5c4bd3f91bbf85579c7aa03f3bff46b6a2c5798b0f858d856d6e9a04728fccd52c767c3f0302047c435bb5006730650231008423ecaee203c87869c9a59f51730f78823c99a3c780bfce4f4b85ed763a68ef10d8161f0e3107a6bf7373b04290c7c50230677bd5a16c7399ecd42cbcdbe640fdb97687fba14c4cabc135455aa935ef372c4131159ee1730116797fa6e1553ee34e0302047c435bb500683066023100b7ab309a1076915bbd61bb5e6bfada78f2b9d880dc07bd5fabb24e6f9b38ca760fa2d62d26ba4479bf25c54b3dd094da023100f849919c3e1c9bee08acc00b9fffcf4dd812abfce791ec84873e349eac23a3f3c912d580de7ac4c03e947be210d350bf0302047c435bb50067306502300ce5157e5f04a04ea571e7ab2ead3227c01b6b0104e16f3c7c788d1b56258e7abeb02e2f98fb26417d5cb3ffb710ce45023100fc3980ed158a0e680f02bd88a23895926659d2047ca7a431e4427c24f6b5ba2a7dbae2572bf2b3485e775bc17151c0f50302047c435bb500683066023100f1d1401dc0cf535638c1921357413a1d3aca6dd5e6bf0471f27e17df35f136b71457b2660bb82358a9ae77205b1892ec023100941356b9bbeb5c78822b730b52fae435e19ee39e39f04dbd30d5bf4688ded83ee4dffee46da210bb8ec7215db0146f010302047c435bb50067306502300432c43aa46e7ee1427de52ff4abd94b454db1ef86b8791210db279da86f80b00e68e6977a220829061be896f218e286023100a022ea63ccf841e544036ce61a2512b6a1c1898af3662871ce64ee93546beb0c63b11ee40f30f00fdd689449f37de1f80302047c435bb500683066023100aebe568f532b79b25d1375b55d7aae33c1b46dd125ba0b99f0287b9ee89cdba39c57ccef1f05795418a6c5cd6f7bd0870231009e49672ebc15f3f986f3c85fa35f5183b64d3b5bef1bc9761cf2c178394b46f27315f004e45d1807c05dc0f85916d27f0302047c435bb500673065023100aabda0aca51cf7ffe2307be39b3ae53814a2cbbb2cb26ddce2268a8670878e59c87d4982dd80dfe06897b596f178099f023027e5152be555b4bf6e4ab05e564da69243fb90e76035e06ab5b05eb5bb3229685768f56e5e230dd95f93def12f7d10520302047c435bb5006730650231008fa5a6cbab5570947caa8c0e33e48cc680c1fe2adc50c9cdc88403f531b7b8f405ff04d1fbc7025f735fc738b8cda5ab02304d26d09015f0fc1cb539aff5425d5c9f86fb479b504ad8e19a89d6d1f18d56da77e844ef84bf9bcf5c0cf30a466058760302047c435bb50067306502307b7f4b8afb4210d957ea43bb0379d4155e25d1cf8cf19ebcbf8fbe6b5d36976a14545a86761f374f866275bb50785a3e023100f7436bdbd41ac199dafaa293bc047939b12faf8aff2e8035eaf83d529a09da47c6f9257920ad7b364a3b76328f9d819c0302047c435bb500673065023100c8be263475fdd273614ca9f9d2d0ec299406dc5bf2d13272e6a7e3b5ab6cacbb2f1f2c94838795d3cbcef86338f7e19a02307bc25a41adb18a8f2541485f3d6bcbcfb8ae339783907abcaa8a99ef2025bc810a65e9eede427566a75e45506ba299180302047c435bb500673065023100e5041ce130c5062d6cecc64552bb4eec4c34e3576edc7c8830947ed23e698da3332d1a03284623afbb0e7720af27567802303711b20363da7b65d8e3f920e2c6db318bf86927c72e2a605dba85b411d4d86fee7fe9a636e72bebcd03efc95b6426790302047c435bb500673065023100d3adc3c76a89e5cbe6e052fa4c28d7c743b58069332b9a5beb34ded13cffb79139b24cd4654135a20f32acc1f49fa21d02302787aa3eae352d6ac2e0f8e3659c5dc60528835f43d57a6ad4f08db095570572940d351e425ac14e6587f372c9a53a8f0302047c435bb500673065023100d3b79b26cb7669b7ce83ce71aa1de53dee3f20635561a9fd0bf068cf3f4e257ccc11e2249d01b001c8f510f489c0eaef023047cac7ace3e522406928dceb411e431e16e0b493fd0f45ace394ff26b85e7348f23e88e71c5807f4c8d28c074b1af2d40302047c435bb500673065023078f24bc2d638e56f78991f4a5877a303be00eae2e300ac2d699291d8ac379d4bc04a27628b5ed2e2cda42eec29e780d30231008055e36c9a229d182eb783097e5b0d40e441eb3533249e6aaeb942d91849ae8fdfd1f7d82f3573970f638899bd6d18030302047c435bb50066306402305238d5d3737f319ad41c5ffefc9120f3e2448ba847ee7f43a85587c4f03bc1d168d95ab9f59661eb2de082ddace7f2d302302dac68a1131e6e06d27528aa50d1752e8003e2aae22b196a8031c2b78e52edbb49e201d7cc97db00d9010bfee3d9d4a30302047c435bb50066306402305f6e120307181bfa6035a039db90d913a56c86fe6529c75fedc8eb924faba4e58f99fe22a864873240ca3f036fed76e3023044dc391b070fbcfab92051e5cb595b3ada8af6fd303951e232d14103e4314470cf812b68a3fc12c1b85c1d8ca0abe1f00302047c435bb500673065023100861c6b530cec8128a1a58cf85e916c9a60f47a806d04959e851fda1499655bf0b9f1a4f5edf398d99119abf63f645ecb02303e7da51e229ab27e63118120b2a89283157433f814a825982239dd5e771d57c150fbef88c747f160b1afdcd4ea7325c90302047c435bb50066306402300bf68199b4d1a1308f2cb237bc7ecd74371c69f0142fcd66fccf31f349a88f870436348ea1846104723a6105cd8287240230137cf9cd27f5a3d5f5479afd2879b92744f653abb6ba1cbadf57ed896fb4454fba4e95d4d8cd34950f83b68a0423af4e0302047c435bb50066306402307388716b68f12537b765639ed8e28b9c5e03685256c257e0b1576985b83674219deef841966eae62d7d6959f346d84b802305d4bfa3b83e27f1dee3c54d22e723bbc09e7b2cddc72a7c86362aa3c08260418d7a21618a4d29f57be70acba111ae41b0302047c435bb500673065023017ecfa2ad2f9c1f332fe9172f876b692c15b5cb52629128147a8b2ab988d23fdcd890aa068533faf229aa8c88c75fc0b0231009faf95c0f51890e609d68870b49fc13877b9554689b57442d6cb5cb350332942bc3637c7c1b262663a80271401ae785b0302047c435bb50066306402302b1583382c62aa49145ebbe947d43caa1079555484ef0c58e0cac412f69c1bac2dbddbc4e06a4ce9087e1a54cf9314c7023051f8fa69195c325c9b052de1e435844f8529f3b37f435622456aac6db7cc1b523eb4f00d8194988d8214a2865803973f0302047c435bb5006730650230118fe2642c1a810064ecf4897e0f0ca4ae19b7429ab380165304f712bf09dc25203931a259f0222e53a60c05bea68762023100fa59fecf3c2bdfe3e14585c96cd86d674366771d731f48f070a1465fe50670fee8ff2e4c4bf099a55b1a0e59e696cbdf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b90f66d235951d474f368597a33d58049dad1e0e4dc495479f1961828cc38d63016ee3a724aecd764884e54a8e57e5c8023067d5e0b474489b87c58a820a2f43b1aed7eb80c64c5c880860001420b591e2c82920ad6bff722011c6bdfe73623c99290302047c435bb500673065023100a6d3536b0c520c0000bc889de54db545ca9db0e179e32284ddee4c82de1a73cad41b735f83a61a90e47aa93facdc528a02306fdab15a5528fffa9ce450e43b95eac1668acf4bcd249c8dd00bbcfb390facc87485e3ea3c6837d8e5dfc0153db5f0020302047c435bb50068306602310088d62ba359981c70f33add3e8223c0f8edb379360504cb72a050d0942564e3aa2a4771da49ce92e2feea86a3dd847e1a0231009f47344f9756917c0bdf6fb1251c00d009f683624fad8cef1569c6dbb72b20fb3972a1ba773dd18fe5a30224cc95d4da0302047c435bb500683066023100e2cdb8c857cf95f5fc00f0646e14834ed4cdd87583a758fa90a3d51ca15bec8ede86a6ba4dbb57146fe6cc5c6d362866023100d25cafe0faedbb2554c2fdae72d0f7c3d2e24bfa40d89ea0f8cdafd0c5a4300865514f673a9a87c72b60865b00ab8fed0302047c435bb500673065023100a694a40a9cd50e4c3e101596c288c48884d8bc2aff357cec9f7072350b74ea245c1fad87a62f1f1247a33327c40dc50b02306ae97d66a37b3e0cf7912b95553a940a30e7c8935692dcfe784fc99a1499984528c03a2555c2316793c3e92c08a8473d0302047c435bb50066306402300c382541be515ea56e2eafec6867574a0de93f0f706e7b9a0f0156bf1c439fd30740c8de9bf3197688d69705b419348d0230518db996baabf16d9ef1acd823c1dfbd6ef41ebf5ec81c4934b284865cd2ac3bf7be73ec942bf5519929f99eb74cc9af0302047c435bb50066306402307d42a2a0f579579657df7b2b4b089d385f05c56eca072349e253db9d338f0e7b0dec9dddb0a937aed4decaaf2198c0ad02304a53a3a363a7663130c80d0a42dcd467ac5b3c423d3910a42fcee6486b194ed0fb27fb9ef81a2108392ba38eb6f1db8c0302047c435bb500673065023100a105a82f8e0fd849f8a536f3cf731947f36243a95acd66236ecdf5219ef50962474dc9346988be3c6343c0eea1aeb75c02304db903fb4d0514e88d8e68978323910ec3544fd79fced68c4bef4c6b0b8d60a582b27d3abab1e4b6d4121737e6b3e1a70302047c435bb5006730650231009e2d60f8fcde4124d7476393d68ba29ad93df42b440d075ac9e38929380420460c12de81d54a429a9f601062c8b6353b023032c54983fda513ee1fcfeaf201c758fbd13610ff2259d17420eeac177a0ff700f2457c5b9bc9ff3dd27fb5e30c945c080302047c435bb5006730650230509bb7c4f759aac42fa1abccc8dd0ed29af89d4f227ee69d326640aab567fa50a0fa4a20537d843ea327b0b3636ae3cf023100bd2452475707209ab31574f494056bbdd10cfb13ca40462bb43d72b7f2d54caa01050633d074d861a3975c67108769520302047c435bb500673065023100b36f36db9bd21a52742b39015c6192febe05c8c3c6e90b03c8d2891687f8e8a46d529409a9a90ff8fe69162e9741354a02305e34a6008840d03ab6d61d80d9aba6603c5c7adaa30beacb59443d7923800d6c2b74634d473180f5207a697ba1c77db10302047c435bb50066306402307943b5bff119d8d6568721e710f06f7ebe1a3d5c25419100b5e12bc31fa109156a8e8c255c0caaeee5f39b02be9596490230588e15b956eaacaa5e4eee4aeb0dd0b80549d896caf1e2bd609e6cde146c56e37e2a4495a98f584af8e8580e1dce22840302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023009c115f446c6fc4e1733f6679ea0892c48a0536ba3bdb4e7536ceaa8f8cb41bc6b4e626f1111d8491f0a8f8b4a36a08d02307b46cd35617d7041314da1ec73516da3edf88cb76e013f954738d2af9975bf6c8dc983b91b7ac038d1fe5109c2af96e00302047c435bb500683066023100ea422b04b8d5b2eaf5bec88410d071cc6ca7cb957064338354e2a30ce0eb3216fbb8117c38312861f8189e76e41dbd6c023100a0106827fc7c5d161638f65267c5919c55ce5c73c38dd2339f5797a15a8471d69e1cba48f2a1338c46cdb7066f1b97d50302047c435bb500673065023100ee95809acc48977f7b4c1d582fa3edfd70e1cf065ec345e8b046a3daebf101ebeb14958826a992a602dcf0189334527f02305366dd463f34b87cf033e73365563dfb126dcbf9a9f755d57202a32c5576d7ded81f8e5288c956a5dca55e89b6a315460302047c435bb500683066023100e7e19f0a6ed1a1b8a7478fc93e3ebc814b80c6e639b8e1c989bb761dbdc93b35d0a12f376deb2973dc8d307a0bcfa91e023100e1cf5ed64ba41abe3677a974a0ac5e00a84512a4d37673a777046e26796ccc303fc22f8f27386b898ffbab9af169d1ca0302047c435bb5006830660231008fe238828b99b98adac6fd90f9588c82592b8f202e647419502b34e9915ac37529645fd1d15dc2a769b0b97585e397d902310086fb3f33708becb0c30617dc70bd514bfe4e6bab89b2a27dcc64742796e7b3ecc492a5db67d1f9acd57c037f8882eee70302047c435bb500683066023100e16fa2082fc8a0811a4083a89d674d8040ab311930d2098398f0275624a4dbdebdbe4de32e21a15562fae8f94b2494ee023100c6ad1605be02775cf599a2d3af4eb3c838b1b62361ccd11ecaf6756557b131b625aefcf2fff4477ab111ac35f97819690302047c435bb50067306502310089395c7d84548c727a3bf408527d0fab76bf97de43cfb1110ec22dd57bb3eaf76e75cb846e69e3ad902562237f09f9b802307c5261b1f5356e061ac28c55bcf51dc7cfe93f20137cd0104ecb1ff86dacd58b83d0e8268eaf92e93b6dc03ec27805b10302047c435bb5006630640230554d538f2d373c1b0cb41bb7ead6402ecb2f4a96ce2c60bf77bd3046768171037a40bf81d1c489912965fc685f79383402302aa2387186d42aad37549b05e70139a33bb07d75a173c6f125262884074ecb96cfc6e48ec4f58e46d5ff852a2cdd60a80302047c435bb50066306402301fc2a6b5cdecf76b9a1299c26824a6c2ecf1bd4d1fabc8e119f723ae53ce6d632da54ac699a1690e2f5efb7216be81e40230664ebfaec1d52d9abd5d208a82a6a4dcc945ffcf327a44bce4bac7fdd47c815fb3976b65256c1f9a51ef765a5baccf680302047c435bb500683066023100cf2936a330563d0ad23460a7becdd578dc601c58ee978628db1cf7fe0ce9f19ef1511843759d64505c4082ab98777e90023100bb96fcb5531ada62fbfe833451413b602f30cac35a8406e8682e3ed9cc008a5d459d694662c03fed11b3b37c508706950302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ef5e6ca1acc50b8beb17073ade222ebfc99c1de40c44ba6ba9596866f9ea55848aa87bc67a30d93d113866c51ae92aa1023100e7115e249601ab75f1e438209ae1cfea2946a8daecd73432db94f58bdb61cf051757adbc0dbe38890642d7e8b23ce7810302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023029cc5ea812409b959923f1354447f079d6723a1d01d6b8139b312300d24e6050c7ce9c1f41cb3b727badd22473a0158e023100e473caa25f21cd0c87be0c1306b1602e796a8cfcdee07cd411276a3102c90b9a1b8a92f0a186bfbf80309892973d57b50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300cf68ff53c597795e7cc8697565b8214fced8e80f3cf331c8b66b2595dad8e9598af619851fe1475d9475d031e885682023100d4d8f500e05690b49aebe2117090c92ed282d4c35f5b946cbef0087c5639eb13b5c05043602409658d67937e00db3e3c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023062a530811746fb27134eb0a070bb8bf17488a71a06a9203a275c764985caedfe35b3782d1acec29ef97d1223c335ff60023067129917a05b5d7d6c188c80bf7413d2f8d81f0c8037ac27c760f1db054f914091727e5519d283987650f7fc416821d80302047c435bb500673065023062f423e043c8480f1b275ce9f85cf140e21b17e917213edc3e5ed01fbed4e1b19a1498aca91d9af78b7800c486252cff02310090a393ec22cc817759d0ad8080b6b59facf3f80574862f54e23562736d9d71414fea4eccf31acd40e6c17c583245a69b0302047c435bb5006630640230040c7f6eefd9de3a1abd7aec0cd9a5afc1573741e0bfc422fdc0868bde8e8749c8bac6ddd451daec5b3b13a1fe061bf002302202a2d800e91d398622d24eea5967518a71145f63ec990df949f1f961a7efd86392eb5f7401816dd977fc2cbba074aa0302047c435bb50067306502303f0ee4bb81c9a45a4df00e0aa8be7c290c1a8f4eb431c3452446e4a04ebef17d54f0a06365c44d3a67b7f098f26b161a023100955d9c3f4ad75b5b62e853340820601ba819fa3380a2b3de8171b052b0a0f70c20e638f30c253557f66c5e018884a6d60302047c435bb500663064023049163711a3af9b6094a7f6b8a0ab08fda02b6b12f0a1f42350def7724e63492820ba355c03c26d3aeb67f638a87eb68c023053989814c09becf6038f604247225e0d9ba84caf81a1867f4f29906feb591e600e7fb446ca5d487e237f7a74a98ce5c00302047c435bb500683066023100ec2662e89982d63c06c560974958e85f1824c956a7324ff29a9776f5a1b9bc265a617cd4cd2dc371baddbef4c60dd8b4023100fae83b887d292e52a5a73d3ebc3f5a78a5f8b85f75d283c1d4a21c8f81fb18105cf5ebc7a8fa8a8324bee1f7428657300302047c435bb5006730650230361e42856a08999694ae988f44fb70a7c2e2b101e46dfaba6ba55f3532e19d9cd7f1ade5113682efe74ad531b0a4a92f023100d28598a0bc7e05ee3e7600f0751333ec584bec09b2e599498285228f6ec249b60ffd0b8a0371a6e0cce8b30dcf6f0bd10302047c435bb50067306502307f8ebd98e8d08ff5808a4dc413b67e506caf387b9c3f60228598607864e6e323a90190448d88f90905a5d566ee7cc942023100e16e5b62c3c64642f67f477c4b38ad0346c054377eb9e8c0b8376cf298431628ae8af1a0a763a3b0899cc02b18d9fb3d0302047c435bb500673065023077eb6dbebd9a9a92b18c3c84a65058b7a123c6a6add72c3418aacb2c19f8781608e67ba02a1722b3d2211c2a2c3b8de0023100f6fabc078f86215dbea89511c466e36f255f76c6d94ca55da18bb52d58d1d5e927868cb549319736ce6dbb45f75ac81a0302047c435bb500663064023028f1c8b178add4243e7f0fcec96a938b43e352c6b551fc57420493669ecae4ccd669e401e801d79a8308b32eb3d4751602304b4e6deacabb1f70aa06cf4b89cadc6529db77c69c319e7e5aa7c3e8707cf64f5cc7982d1e6773c508ec24dcb4f288cf0302047c435bb500673065023100fe68c371eeb03a98957ff2a7adcf2cb7094c077012c749c5723cae4d0c51d07c3453a5ef72651eb91fad5a109e6d2f1402307bd63dba64c28657c2b685e8f7d7a3cc5c5e2edfb69781cad260798f69da1c39f2bd5ca2643b133c13ec3bdc8b75a4dc0302047c435bb5006830660231009cdeba864efde08304bbadd831d2b808a88d82a9aa1d7e0c220fdadeef850891c7d09382c98431ca0d0496b3c53b163d023100c6d4acb1064f1e471d94d3623c267e8ed377ffbc586743f09114c18e9f2dd19a04909c70f4b9b89d976aa36ee394e5220302047c435bb500673065023058a927206e098f4b7b282de3d817c07a0944ef970a8dafe06568b35e24ecdf8f587ddd0c7e9e42e9a5535532136637c902310085c85a8e65e3c9a4e94446e4336e31f5583b5df9da573e50cca357fbcee1decb5a1c82085c39193d733f6e60b4c067960302047c435bb500673065023100b07a85c391fcea35b9595b077b650dea785635d556089fba1dbde3558918e0eb41e51a72e746fa92c45e780e9a5a796602304d3ea3a3ae70759eee41f0c1724b0a4014acd4d72a924eef01b3f6b0189db499eb86d980e0a4eb840b48a12f9f3a931c0302047c435bb50067306502304789f517917bd33de39ce77854f8ae84efa1ab06e095f92b2486a59d1a188772a311ceac773c47d5d51038f4a9c46381023100e38f3f75774ebede7476fedccfa4cacd256cc5b334d8ab2c226db621265930bd61a6a13908d8d9968841174dbee5fae00302047c435bb5006630640230582d48532f1d7db08e84585785c53337b5c29a804eeea45f95a2223f9e6c474f64e70ca8936d940626dfd5f122020a8f02304ed5718ef71e66522424dadf62b3ce91cb812947a4406c561ff9d3b1d92c7b72b219a8b3b6866312c5afb7e87b9260650302047c435bb500663064023062cc832fe8a6138b17b5864f7ca96bce3d67947d248261e2d7243a9519a4eef273235b2acc6682a97673afb9630521b502300b6b31ee1d687407393837c3b210f97754fd77cdfbddd56e4887c4762ddddecdd32af68ba186825068edddff106357510302047c435bb500683066023100fbe7a480b13cbe33d482207e407649bd2bd9b005cefa444838541551f8271b0047e5d79770b528144600ecd1b06ec7e0023100bad41ca2073539ced9ecf7f883d4e6dced5b140cb314a817a342c1b22911e0ea310c34a26fc2152614615c215572f2b10302047c435bb500673065023100e527b703d58ff093304c9688fdfe9fa5b7942c6269947224dcf2150c342776303870ed28550bb483bcbd7aaa7e76938a023002c2a079f3365604dab5e402fd6442693dacc4467e29219aaf22a279f7ef9cfc76989c4cfa025591718f5390d9ca16000302047c435bb50068306602310083e78d0f04babbf6094ad73b5288ac61aaaa6e25712563544eda900d8cad9784868dc8ebc15835b490a815a0b03557bc023100df0eb6e42ad60725e91150a21ca0d0f2c4bd60e4fa003e60540dcebc71b7743bd21a98120855e9c20fb0172b41c273770302047c435bb50067306502303fdedcb2cc71ddd1d17d8720e5dbd709aaabf2fe6d60870633564b50782ccadcc0da87066daac416e1eecbe9c413d8930231009d1fada2d23167c682a1d9366ba41c1d4872b6133ebc4820f5ee6bd4cb83ce65cfc47209ff8dccdf6a0ef5ee418953650302047c435bb500673065023067dba174e76a08a5eecb6c8e11334afd533f012604b8c475ac30289538da6d492a2d6204fdacd34dfcb1a71e8b9d39a2023100978757e88332d4103cde2c13c4448a0a37a87b23582fd34d17e2320a0f3375a3b6a5018abf4de107c5ef8232598d62d90302047c435bb500663064023054b060fd68694db28bd464ddd7627d59ae05f70da83b45c35cfd9caac554fbf8aff93b258718df628918b2b058cbc562023054046c769e6c5c44b44418cbbdbd6a9c178dbe484b690db7af53345a8bd029bd73412aa1b363c6ec568908559177cb5c0302047c435bb500663064023060c0587254cfebe4e8d77cd5eb1250cd7bdeda3bf3980d1d6c4e0f4b11d2df1cc9bd9303b814e36fccb5e9df940769720230287815c44439f6ffe2bd6c77229e31fd5e6a304f8df9dc2224a1816d6a4c2a5f0c68d8a7c51f7d3f49e1990d8bdb5c480302047c435bb500683066023100a18a982755db61aadf9996ecdf6315ea76160b18ada750f6f6050e693283d05be8a8862e13a78ccae1009b60b463d2de023100b56ff20158ec062e4194b654347287379173b8d1f21c75aea0da062f8f09eec6a0bbae4a58c4901d657fb50614274e490302047c435bb5006630640230220915967a833a6b56345cea7f7216b52ae1347052141b06e64d7d4cd5fd66a2b3d66287f7a089a761693708ca45fe3a02305bf961bceb056103176fcecd6d40fa77581164a8880e4da8ed10a7a186c5be68ac2d48a650505521cd1bdbf8c0cf1ccc0302047c435bb500673065023100854db2e75a2195d29d0314d18261c451dd67a86161fb22fda66195f1ae2ab10a1ba332f9951261b54bf11cc49131fafa02304f47978dbcad35754a2f874e408b8af8d89d825f59788ab8bcd3fca476086f37f6658d1dbe79bc14c186dcae3c4a4a2d0302047c435bb500673065023100ec69e579b731454e034ebeb3b6c79b03453b425342713bd0141f966ab8687f3fae66c5ca3d73f137cd26adb571568787023027756923984d8931da7bcc246e9cac244d911260422e6a723b6b35b9df1a89b2b71d8b8303c9344429b8c79272b9dc520302047c435bb50066306402304828c60543808fb6aa7d8d56132cca34c89d22313c1d872c1f5d10b546aa0e3de8d7ff5351963f5874d4a0a01b81967a02305628a180aec0b33bd836b4591bceb75a6a3cd47b26e8b382193908d67a3c3f2371b014019d7da7181dd5b89135492aeb0302047c435bb500673065023100df4e4034e22694d201ffa8359ff793b6cf60e258725dcaab39625071ac2b6627a406f49a3bbe434a601fa767eb8d594802302524693c7926da43a7948fa774dbde840802c55e9e54d1ef6310dcc6d0457b3b81e1b9aa6f65a6069d41559fcba7c0730302047c435bb50066306402302d338bbd239cb5f8b72fa284f3a9b740e26dc829cc3ab168d0a4ba3c1aed1523b4d087bcb93fd1327214fdc6585c47d10230637ca0613dee013f89ca106d35e57c2ef667cda0e62c2958a2bc89f0288b9c8a20973d7c6130e74cf5cc24b3b62479080302047c435bb5006630640230065ac51f7fd0867ec04f1b8a91fb394c99635f45caec3d635f298454917adaa8dcdbec2b84c69f86b63e93cff848dc9e02304decc751637c7b7f924a844ff2e1dff0637adf03772e9947a495d486e7c3867e9ee4a49acb81b2d2dcc887654772a4520302047c435bb50067306502300e2dbaf70b1a4d4891c8577257b0f0c15251299d51d726ddf68ea8a75241e6c6fa9adafd56752946b9bc38edc975dd33023100f130d4615800ffc7c421881f091d06063c7cf470a0dcff54ce4e8270d5aa7dc6c58daeef208e31e052895b90c2dc231c0302047c435bb500683066023100f7c667364bc48af476b0fd5d1d30b83fa63cdc76d8a60734c0abcd1c36075e6876fb70b3e9a588936ad3b0d95300742a023100e085bcf6a2b05e784557f6c8117d4a6823b4c315a957af05c04f1d525bb3a5e89dc93c227aab73676d7c4816bd845ce20302047c435bb5006730650230329f15bc7c258e8687699d574bcca06c49c35b31b3f2b624e9a9779bcfeb0aef769b681c877a1efdabb3674a2abd88310231009335fcd44061ac816eb0832e0bcce1569902486941a822874a845d0d492b8758842441006bea73c007ac6a0dd1fe2eb00302047c435bb500683066023100fd7bf51416d6eecc7a18a32e69eb00b845c4cdd1b72ea8cb182b094e98df07f88afac3f417a1884b2f33042b46004066023100a762d520b7f70488f11436ba6ea1251905e40509832a02e305a7e912bd2bc89e53480ea0996115e995097ec043af84930302047c435bb500683066023100820a7533a8332fba58e9456a99f067146fe7b3d45220e3020367c1a9b351ac51e2460f016ce01ea5d3a42a172ade89e6023100afd1e553b6f178b1662c84338780544fd15e73c23f6042498544eff06c158465d8704472af9e12b1088930636e5ea9000302047c435bb50067306502310096e36cf2adde887f19b21cbb8956983ff3d382fb4f59973ce0e468d4ebfe9236322aa8999098ba3b2ac966000d264abb0230567123a2df3e512edf5174ebe27913b4e36794f4d892098eac0963b9e4f33c1dde2036f18c8288c57c882b58ed95225e0302047c435bb50067306502310092818093f053dd637b0529906e4c4543b2d2b86830839ac597f900e02a4a5b135594b62eceea05315c4c69946ed6604002302ce4babde31c9ab3cbfdc010fcedfe4c216fdf40b12c7bc8faf131dcd18c33848226e9bb001e36a86f1b176440ed993b0302047c435bb500683066023100d29083df07a54a3fac817894e39a7a3058ad31ad868b48046d52ce6f06eea63583737c89963ec9f59e81d08504770b90023100ad864f2e0a015f1873192264cde75cc89d862cc2eee935676d9bb363ae6f8daf3804702a59e4026da55cf578ce986d800302047c435bb500683066023100c5b80db40ff0b376017453e0edaf879b13341afd9f965d07edb9da965469d4961777baa7e2d3bed3b1c69a083358adf6023100a94938bd2d05bec37b5ce9a02b88ca7cfee4026afb34f2a8512f982d6eff789cf5cae50998e7b5c858b52789ae04019b0302047c435bb500673065023014f73c562a4dff32c0941f119939dcb16992dbf627184fe3d96160c5ef442935198b4da9f272ec27b731ca2da3e8ea73023100e3c73fcf0834fec34faa91e41dd99610fd4d516bb32c152ea36644b020a58a466661753e2af719adfc2fdea87a5ad1650302047c435bb500673065023015277c40d4ef341e5bde28bd3b20088ce57b169883dc8d1044d94ca20f893d119a4bd81effa954566ddcd062c5808125023100a6c8ee27786744120c9e1bca92b2f19769163c0f2454fc4e782aea7be74194005ce9cd3c0d8af5513d460a7696b42f6f0302047c435bb500683066023100b675d5b88380d1932e055bc5e04f42214c97e56b0623a3bbcbe2acbe28ce36a71f71609b04db16461af376b455156b05023100fd7ecd212fd60f10c392c9e3fc85f51d6ebd5796af15e56867373c4aed9e2d361b9975d02c7e30e25c792754b3e3c74e0302047c435bb500663064023023b9eee554ef3b707fb204de7399598fbd6f5e433e8e04a21e4f8545d3546bbe2360868f1f5c19faacfc738679708e4902306d59e31663708beb166851c6a7cf88e30552f77dbe4b9e5a3feda1dc69efa3afda85fd727ca450f3f49be16cdac621f50302047c435bb50066306402304ccf5b8985315703cb2336fb99382d99005603d55e16909d86c5a87159a4caf57e0f03f13b455693f86766b66bd1b91d02301f2232ef383a0aa98d66ec520fb67aad893e58455675c5f0b13a62b22d5c9c76fac5cbb176a28ea45fee208df2cb0fa50302047c435bb50067306502303ae513f118b29f61d370b156407a2aabe1fbe2f505d8ea7927fe7b1167ba4e7518b82fe232e274a6aa2224e2a0789aa6023100e2774c7ab031b87bc814c67ea2a729512120ad6609f422bda83ded489f5c7b896a4b4bd8528b45791dc4448c0995eb8c0302047c435bb500683066023100b28adf404f7593451897914424552a9143fea7b1c2ca21f63d903ccd7ce8687fb7d37ad67bac520b12fd2d8e6197749702310095a155333b8df9d8f986c7e48d494f1e4405b5c753265731f86698de293433f43f8716956f2d97f247e19debf942d24a0302047c435bb500673065023100f9b90681be93e9708be3a5c86543a324adaf6313f7450e8c51d6a3f2b897146f5763c4abfd70b41002a2995e5cf257ae02301e74fc31e3e1dc2f79dcf925c51d51fc25f842f4af888ea1af13dd61660d3fae4de8b40cf86f32a4836dd4bf619131e50302047c435bb50067306502307ec6a00271756dfd68fdb7bc870bbf79ba7b7f3c63fe66e9be0cf2b25d1ae9dfd427e22fd3125fc1dcc48f8b64580684023100cb27c97a31d92f6c94c75937cf94be3db6960538d6a4154eccc52e72893e44aa494fffdb5861e2128f093aa695a638ca0302047c435bb500683066023100cd43ebee0b9460680f63bb230c100e950e5e9c445e772d7fe68fb6c5859ec91901e7be8f9a3fe599dafcb91912af28f7023100fbfb863055a010b8feedf634fe0ab266df36f4f22b1ee2f7d019e57d530ba8c681e4b027d75e1fe88fc9c3976c9fbeb70302047c435bb5006830660231008b12edab17f22896dc0d7bc4af0310cf147c54595bfd72ca16b886b90eb7005bc3e4f2d0390b5eaf68e3cd099ade3f13023100aa33827720afa84f1321a262a8339b906d2fe7d1f42c60c6274531ec0f0cbecff6b741ad315153dc8f36539ddc5045930302047c435bb500673065023040b8557bf38581117a2af569f8cc61966313f422993a16c08a4a57e7d7c19cc26c6c194c81f02b97b943a7cedd831c8c023100d66015e6fa24db22bca603bb7e7adbc555838134bf5bbac70ea26abd2de91165fbabcdc2d924b3a7b296e7bea4bec0440302047c435bb5006730650231008ea627d22c1d59aac76c3e1a4afe9be74fdfac11e3acfbff4c7a039ed1af5f314f03c21beb7ec0819b58ae6a1a67a20f02303b097fe6f0e631f27acea40f4a86066a0c1970737ed65708cf90d6c1aaf82dbb6b2d5c5a9d66530c9a5a896ad6e2315f0302047c435bb500683066023100d6e1d2e072f1782bc75aeb540e41bf3162691c44a63f70cfa22111007cc7b4d32e3dd7ac15a4712c29a7023197b83b06023100fc6fd796d7341dbc83f7cae81e9424bb66154ff8fa7710952d2a2c931bee1fdb73ac575df072bfc6f13d4c9d6a29a6650302047c435bb50067306502303203dd5fe94f037105fafac7678cdb13b2286ada8abc423f7e5a125c425c94b1167ea6a21b8e3edce642b4eae17a8914023100a0106265c49a9c7e61128af934ee464ed68019a52d0961621c493721277b9ec49ab3e12b6d054ca5924eb185e68412d20302047c435bb5006730650230035e93f0089747f658f5ac69b1b76034d200a620125ae1ba51b59efb12139902beea6dc597fe1de88079c69022880c490231009a3ef9fe380eb57837096ede633c085eda2d924e86ab9671ece650ee79759f87c1acc5aa65b604b460bdc9ffe2bdde3a0302047c435bb50067306502303fb055b1374fd5da6cbb16936d81ffcadde98c952a9fcd72de7ddf8116255b7e6f55837c31e4a52af2f284f782252903023100f442955bd27a1fb7a8ddeb9d7d6528b35386f269f7edaebc7ba1960939ec22c35274f8379b246028619c6c322ec678e30302047c435bb50067306502307b9acaabbc8662b8fbbfb8c6e9a406e1ac7387a515963eff364b7fa5e36b26d9a5ff78dd2bbd6bc04669dd26edc9b742023100cef9b26048651f583948c3afdfeb7b255f38a7678e1612a608b416ee8b42c1f9766c57842da4059a7eb00e39e73e66e70302047c435bb500683066023100c422ae87c0b1b8f18b222c3f009f7e831d6d3c0eaa8118718e046cd553488289811d2b47def4cdcd3dc412114e5a27a0023100a5328eb38c004af32ae6d648637c620da0c4e73dd66ce6e3671e9694710740b4a4e99afd14cddd9d5df7b1adda0ffaf50302047c435bb500673065023100d4150a0f9b0ba75c1d876d731161f4f6c5c8f916e7f7427c70c6b52ab193885e9891c247124c3dcb4a2345767d8b732002300f394af83a676d0b1094e34382715890b0e1a997c67964c04994685567d8fb48386048314770cd0469346a373638e0e30302047c435bb50066306402300d2e83688f45684a7ea8207cb8511519e6888351e57a99219704788c66df0f6394b7b630fd18379f7c822a42397abdfa02300ef59da90adb3384323634c44a2cb784964bf2a3693978de27f14f082ec47a50339853ff5306ef3cac03be1d67ff03f20302047c435bb500673065023100afb7c0d6b27e944ef4cf47a9ed9cf6a8b9d65254809019375c10404694712bd00f216738efefb7b0509e7f7693b25a22023018a2a419dc143c8a8cdfbfb94ac8cb5a20188dc1ead2d337ffbd354879ccf914dfc344adf2f872c860c3f65f2dd6a8a80302047c435bb500673065023100ce59aa7b11e0e3d7c11f4291e0b98dac9d96ab8ff30de3286a6d6c70367548fd175873d719a081fd1bf5bac2cc66331f023030679eae7131a07cf490f94b9b3c12139af472f60ccedb9284340aa2c9a4ac948c069e869eaa3754b155255e2ecca6ac0302047c435bb500683066023100db32cd6f3c9150df94d213fb5c3a4bea8f1ee89fff0d8ce639dbc5b688c820d6b6d43e7fe492899f00016960c1547a0c02310097ab67bf4e5ede72e59eb2710fc282ea9f4f7a93a711606e444ae0a9cf367985b96d49c643721d79623690c2a03988590302047c435bb50066306402300684099221e1a565c43ce6748d6718b9f8ee1619cb61ad94ebfba50db4038f118847123fe5a1ff5dcdeb1a5fe504656402304710146fddc4d45eaefe504615112f8e074f2ff1fd7e305030d1ba309a6707cc86a15f6eefc2ac8b2a0955f559520c340302047c435bb5006630640230104486a9c0f4875959bbff1967b7fd7a3ea4859e4b30bce703fd95317bbb75813f3ee6b2627225ca3d8596e3c909a568023041ae646779f5d98d8fd048b5f359329a60d72405b2a95da563d62660602ce319e2a4d5712ac7a85f77300ebef769f5d60302047c435bb500683066023100c39e13d6e496feb0343350dcf3719cb07eff57d5a5ac73d7b0f00a7fd05b5343a97e3b8f940be1469f2dd46e1b7aff00023100bace41cef49757172554fa45617bc8419c9b2f870ae36ab853a51988d96f2650cb9eb75b6a7b5dc6524dc505c733a8430302047c435bb500683066023100b45f3d70bebc4157362e608b74cd77445266241dd3d5a027957322bf3fd2db2b8e2c7ea3866b47c6fc37c1783cf99aec0231008102b0c219fe70023596ab6ec8314835f7530b94cfffa25de5ac4ae7781f27a95864a048a1d58d7ca2291d676f2207c90302047c435bb50067306502310098e072e5e3902acd2d6292d2a3d1d1174beabb95e4d3f355262cdb875aabfb99cdb26e4bb6a726833fdfbd3eff147df7023042f96857659f27a842b0f4822f9e51ac8979aa565d15ae4c629f98581d04f8741be73ea06c589ad2fcd331b632f448740302047c435bb500663064023002a7b38825720b0c216be7563b7a8d3a34368c8d3bb78e65ec83c0c542509690532f9e64996ccd2b30e729c1c6c0d123023003d0a3a16791d21625215c5417b66d988d64687a7739cba614fd5994b32dfdc1cb0a51bc89af2ac834107830ab7e245b0302047c435bb5006830660231009ad36c71dcd520c9586dde4332a47156de164de5c86ef6571fb454440640929ef31f3a475b020f38a9bf76d71fc6298402310097e937f60500875c0bef2e5b46b5e58f6673882b0aec4a7c280d49bb0a8fd5d493dbda172a87e8a2321cf1ada258f73b0302047c435bb50067306502310089cd86ef88397fc91e5469dbf8cc24a0d0736dfb670c37db44de5276249a3ce50f5fcd5813f6b0eb6cb75d2a388dab170230505436932d0d810f0467fb0f3c334d3d7ef917c85ccc7a9e075bc7d3c20accabaed4e061d2178dd5832f216d140ef5980302047c435bb5006630640230019ab01be0e8569be584ccc7068b376a3cf200a045c2296110c166210277d117f9cbe116141a085306464beb2df8464002301b59baab782eccf10b9e6bc4f4c860ce9963254f36539f4cf3ce81a3488ea13347b27c4c26dec457f8ee10ca409bb7980302047c435bb500683066023100c6f527b7bfb8a3ba8de00bf8803cfc3368e7355db9988889c0261252e4075b89cf9b69f8bd0f04d366c1e4ebf198099c023100966a1211d1485839115195a0643deb12e8fd9471c58f8125dc23743f79c063e7858d783d36acce230cfa43fef3fe371d0302047c435bb500683066023100bc9dfa50d3f749665893bb04c8d556e81f0c97514fcba0706cfc15016845380ad59c408794a769f9ca8e812eddbf29a8023100e70944b5158a11568d900115262a8461bc00893c01cd74c3972f8c38e2fe4efa9ab8b073d688a45e9e4ea0d6a39224180302047c435bb500673065023100b3c3908952dc0f38f7f179638c298651d78a6cd01502535560ec6319548941c4cdaf75559bd6c36363410e4bf9aa79ab023075122a9e3d3a7aea571e2d48ee41aa0e1c9950c675a75fa323357d3942b056163f0e9aa863a68b17c6832fedfaa573110302047c435bb500673065023100e11ef15b746da89cf7422df4f78086ddd3da146ea6164e3b01d08975501706dcec7d96c23c3b5667c3a349f2213e347c0230525cac7ea72ceff24fd114d0ef8bcc3ad8b287ad12184aa96e79a724e62bd5f99111c187c5953e5abf3b74d695f8528b0302047c435bb50066306402303060f2d88e369de1347d8da872707edb81f9e86748ab0cf475fac0e6dbed9a3c7779ac1e30cc0400fe628ef46be6da650230562064700061eb7589fc8b7fcd5cdf7612fe60489aa8fab8c32e2f7c32ac7fad247933e1231438d3b34b79c3dc6939ed0302047c435bb50067306502306f70b66c01b3850685f7b919f5ab2df428c513737217773769d87741827e1e5eebbe1e2eebb187afd4dff3ad21dedeb402310086e6499ddd46dbec6dc046f1e6eae7492872776ae64d6b7bcfb2896252ff7c7298fa07d0bc0b3f7f6c0ee0717719c8520302047c435bb500673065023100816dcc28720d7be3bd2ef5efb914763b141187f50101bb4615dab99059eb91798772da893d06acb45ab1149f51c42b38023064fc39a01ba781c9118b345c698c368de5fdeb72515db91a85507fb462af43dcf810dd748bc3feb204a4695e87fbe3110302047c435bb500673065023046fbf17ab64c0e784f1bca423b5513b94489e0e8f37b6d810e8f573a78208aea5f1d5f38532df6bcf832a801801b37f6023100b5a869c461baa5ad7ca4efd7b4ea2fed09e714f391387cbedb9e5af712ba6820437b51e3b5fd5a9a8c25cab262eb43cf0302047c435bb5006630640230157403777e858949d75848ce21a2356b708a1abce11bfaf94e522f1f2b63bc9c92e132f9be2fb230a98d7ebbaa0ba50d02305e3e2c9e0b16a7ba8410f97ae93118d936af71f3af992bdc1e78128533064f90c052c25325d119060e9d4c84297140fd0302047c435bb50068306602310084403ce5175164c9c1b23dbfa479dfa50902f5025ad905a6721db0005c686c9f9cbd91543a6c667ccbb2a40c24c7e94f023100859ea2f48c12bf55d9412cf363fd219b67cca1ce216361e532418cba970274615995ee80f0925f325a7a3d6985f995960302047c435bb50067306502300d70849824cff7541874e073b4f2562cc81e288209c21a7adc6acba07fce760c254474f313f9acea279c55f2d2fd98970231009d855f6442e517dc2a24a2b4e391693db7ddda8e06e126fcd51e7ed23e8672d393b0c2012117e578eb154dbf6ba6e3fe0302047c435bb500683066023100d5f1ce60099cb036f8233b4470de592932bd14b400c86d8747bf4588d2f2da7d1fff20647d35154b4cbda420b325bbbc023100d0407ff57d77f7c7f6af4dee04a3724aa40da022f8ae1098e2341835fddce67eb516c06e665169620d9ed7f3e107d9900302047c435bb500683066023100bcd4e4d045ce97ed52b510ec214406ed6a5705677bd84854f4b6e7939f77ae761bdd5d0a2fb8a67fd8d9c53ac85aa8db023100d7fb85df885dbe36b995c3caeb8635cebb29ebda9d6d841561c8e11c65bc8d2d2887da03ab57d256ea3dd2a6bfd2777c0302047c435bb500673065023100f42ea3d2dbb04e09cfeb74d147c81c512582720d93446c395cd2e95ca40637bf65bc37730e6294d3bc9af5881450be720230037e984f67b19b3b951f3b178897599379224448c81f0f12f9c345d68729300984b3214874238ca4551a512d17d20a900302047c435bb50067306502303490ca6230577071f700f4c5929c2e4d7e1008bbb72da9fd54c136598762144e6eba8ef2c5c81237c1bb1e08f900452f023100853a6981f22579596a8ae8ae21660351cdbad5b48888c43eb5cc6ea578416720d79f859cd943dd5893664b35f39960a00302047c435bb5006730650231008359eaf0b9c55313873f4c2b59df5d65969f835867d23d3cc9407032dc5e9b83c1d418d0bd566aa57acfcbd985419b58023055124cc1381f761fcea9e2d7e01e5a0077b9f8cf1b0aeb887ae2346ac63831e2e0e33cdd95bce17025ef4b7cd79444f50302047c435bb500683066023100f73f21bb7617291b2fda24467e5d27ef320f1c072aa972a51239b8944a7f7e5fcb0e9307693ec92b04ffe1902a28f5f8023100a7dee5360e0c0cd8dffcb523b5933f636446e143e335764d3ebc466375d117b9be45e0c0fa9442a17253c5a9a28d1d300302047c435bb50066306402307f14b3a300f42c521043bcf188c2bb9c862bc80ab9a9c42f911f3b5938518152fbc9e6426d9f607750e53974e215d98c023062c50ea0d36883befc9fcce22b46d7f5ed9e5630e9f4bf39519385fbccc757ffa8131b76ac3b845999632232c8ab4c4c0302047c435bb500673065023050ca5d6d0a2930f2414733b1ff67b94c9c31b9417527c5891cea3be81d466b828a982348d97dca4924c9b1a7f9590a4d023100f1ad4d9cc0f21f4ebc0a6286e9c9ae1605990bd7407d6d08ace7455c4b88e60ca8dbab27b2a1bb3cb8edaa3925f7f99d0302047c435bb50067306502306c59a2ad0cfcf58c768f8f157fc8e5e3ef762f47210bc7be581b2f50d98a5702b68bc768642e20bb4f1f4997a1274ad2023100dc33f6e6a7fc04ca028886ba393ba1883c3dd9d80a2474efd90cdee81a140190377d0e3dd93386c7899fcaf59f6469530302047c435bb500683066023100f13ea5663402e1bb4f07489d5aa5ac3a824fd59a78fab98e2b588fae945210d5fff8e9498cf70eaa28331df65a688be3023100d23e2c2150e91e3cc953c4fe87ca1a559fdd6327a40799fd60819b4f4fa5a9c8fb141f6e2edd30a0c18f553a107041870302047c435bb5006830660231008c23d7c29f7c9b7fd4828e55a01c88d16807bc6f7391474196c745086fd3d4baddf0acdf0d1175c3700c29949e393dfb023100fa5cf81f0b1bc1ee43ba52b6211bf912b25cb5d7a51d39ea63fce3fd3c8e8e983771ec5cf293039855a1dbedf4c175220302047c435bb50067306502300995e544b78d6189f622ceb44773faa6f9bd56f73f9c24d741340e08b50e874b77b357a625b682a82f96f454c7a47004023100a4fe54b4cf9b6564672737b13d910ffa83475ff6768124c7ef498837e63eeda73039e032c2be9501133758cd38dee4fa0302047c435bb500673065023012419ec1525cf2732753b5077b2ba38540ef2f6e045f36021901f40fc077aa6c5ff11e803a96769d732298b2897838e0023100b60d7f3d35052b585b7399538657fe3d9baf74a044b1e03d7613fdf669b3b260d73b9db2c68e876abf0abe7e8d07e3530302047c435bb50067306502304e91610e1ae172da8433ac6e28fa9be98ea5df30293b79049ba11902c80e04fa116512b54648a97087f9b090a0cdedd8023100d56bebd299abedacfb61c2b6bf21d38ff8a0b45a3fb600e2843025ae0804a0cee21f3a7014f3876a8e05c3302d2738ca0302047c435bb500673065023060d9a84596a180a61110361d851a37a88d5f546d4e11063abe7b9a4792e4bcacb5d186dfeb4cf547946e1a52e98ec57b023100c2ef27a24e4cf490e722bcfd36aa3b45c1e60252a7ab3b3f2efb02bcf931a7730e7a284826a411cb503c7f4da11256140302047c435bb500683066023100c9463160c1f6a7363458d65c181cca73cfaa093ba6e5ca6aacd72324ccac1e3a82cd785f13133e0ba7ccdf3f861c2efb023100bce81808cc17ad0fd856ff6cd4fcc6029148f91ef8555891a336eb742b0e481687aec36d074084058aca39bd6f4546120302047c435bb50068306602310096cbc65db2cffd56f22cc5eb65de6895821067c1bffd7ff52400dc7c0de3bab03e7b4d799af540568c0c0744cd6304b9023100e85598422d5223f8e13609052bd6d28d6d39f1b4712df501b6265df44462af2743769042cc73b328245e834d527948af0302047c435bb50067306502302fc58a6ab0357461ea41346d6ab1fcb597da4442235d6b00a862ba841b8fb9dde688f64bdb88cf4294648593b97ad42e023100f4d0099186b528f42492b58567b286cce1517acd8a2ec7a1f2013c91b18d7defb8c94362d436f54d9efbfe639582faa80302047c435bb500673065023100fe61108de4c215fbcdbbef80588c7677c0557429de6d65d80ee8da9af140aff6394b19154a36534eadd7fbd587001b0c02305ca01a946534057f0d50d6cfb40ef3342efb97edf5bfe9ada39aada89094490690531b3aa81539fcd6f127b334af7e360302047c435bb500683066023100d3beb054aff60aca83da7557e44579db236a48f320770a83eec98ddb3cc17886ea14cdd2138c1690edc151a34bfb266b023100fcf35fda83b649817baa18c036a545238e0576cc945834b97f22ffe730091e1614da1f442e089227f97b366543c8410d0302047c435bb50067306502307cb4951fd81f085d1c8bb04d1cacc5dd2f446ff1d0a27fb7ebd722bb21066dd04544082d6ce3b8c2afc597aec6903a070231009917fb06bfe40e122993596de8af4059f256477bcc143bdc10b2684451e357983ff32ca55075f7cf486058b69cd516e70302047c435bb500673065023039a2f7b932d9b3834596f373cf5233ad4268dd89139f819a2e2a282404719a537797f1d3cfc93de9259daf1b0f2fc17e023100d304b8f8df8844aac10e3ee7b21fb99a19605fe18e9fc0a5cc873ed3a0f9c944e3c3f05938ea0da2cab49c61f5886db30302047c435bb500683066023100a3461eb6a1567f3dd940b890dff3723054f77c436150faa05f2b2de62d57a728739e3510c09a6799d6da0e4899cbf46f023100e116c629ca1b648030f5ec5a203ada873d2144300ec48b13389dd0cbd68837c801ef777f164c94f3e1e4f865df3414490302047c435bb5006730650231009b82e6a907eb939edc8e4258db60f7f6a3a651b795c52f00324a0d070f14eeb0e264ea4c0934a4f61b53485f4bdf3e1b02303df1b812a23c3ad04d1bd259a8fb4e4d0104b8775955f27dc3016bc9987e3b859319b10aaa9fb74dbebe685a7466a50c0302047c435bb500673065023071edecd7ccfc5899175a260063ae2a29ef3e475ab1a3d142d80c9232c978accb7688c5b9b8c51ad8c8bf1a32316e2287023100e494f31f0bff6c96fbc9ee2307ba2f9618db847e9bd3925d0b4443108e994ccd18bde4d99e47335d29650bb72b9d32db0302047c435bb500663064023049dbf857936f0f9b11e8fdc6c744a18c899f6b8eacc6560b4aece51ea1c74789a5ed8013ed0848dd607e4f4696ce22ac023074562f63ed04a042ffed40efbf0282184da07ea9b34da469ea679624de0533d1eea952e5b49dee3280541896658c95410302047c435bb5006830660231008ea870e95297b4020b374c83dce3e5e9040146da9e674ec3b08c7cbb50a50ade90b85a3043ac9e873f9b30a848b0dbb9023100d216ec8cd768b6f7b260876370db10c951daacdb80dcbc5112e20d55a2ca6de55261244b1f60d2f7a5084ff9a5c4358b0302047c435bb500673065023100cd9b92d2bb9016d4272f5ba79a49a47b1eb0d74e055d19e79d311410cc1148fe5c3885c2d52f22b109df2d4de4bef1a5023042bafdfff993d99478c9d6a7d29e8e32dae4c69714537a5cfc76a838d8bc1c614a24f559539e6687336b3db6691a04670302047c435bb50066306402306aaacaa192b57496b3d14001287e6186a69cbca4e01c9a5e3cc849802d3ff98d94872f175de40904cee183f835ddc3620230091e99fdde61bcff5f5f3a8bc16d0111ac412e638e8a3cd5e5e449d1972f534a65fca3eb62d34c4ff1d8fcea9551845f0302047c435bb5006630640230557341f721e37adee7acc62a6cd17ebd1b5ef2f64ddd5c328ffbd35c3f3453a0d2f62ca8fd0afb88c4db0b98432b465702305799421f305e40010e624010351bd2353012c53214aa168a568bb01de41a7b9215e9000f97b10ea98bd724ce78b172af0302047c435bb500683066023100d6174cc2a72e08a620c5983a9450b287d06ce8d18629b2ed9a210aab9486df19fd25f46bb663e84cfa3ef4adb111e2f3023100dabfeeced37784489dad95d23683281e2e4f9ba5664a17d5c63008232be37b8cd3d3c30dbde3bb4151c155cefc5a96770302047c435bb500683066023100a309d8a32fd29d9ad5db38905117e1dc60880097694aa28f89db09f5a28051ebc0d9e92fcc2595a1508fad80b2604a93023100b249a1ae95e9d0441f8e5c10391298122afd7f0954f7b76d0652785ade9828c64dd8dc2985c198b45659c7d42b50378c0302047c435bb50066306402300600ba719ea6b66a2917332002d63cf9962b599286a5f0efd2ab001468e6344fcc63c889fcefffd85924eb6983474f3602301e246408b51427053a16455f698168f75aba0281b7d4a65ce5555ae2fba78ec68656af536ed25cf360d56a020e238e170302047c435bb500673065023100ce1433acbf2f526cd5564793617e168701702932bda5e8178bd640bf3f2db0fd32422e0a77d2393d8517ab2363ddcae602304afe41c96af532f489bd39dfea9ac2c4b72860268cc7c2512c3bf5ab90e936a351407c6cca0491a0f9ce427c3d52f3bd0302047c435bb500673065023100c37960920846c7be35987d9008057fcb13db9f4dd3fb6cb5b86d724f062f15c27438ae07d9dc160b6a803263e477740d023049c49ea4209b6f6cdbfbc49df268fa515f235f6d9ec531b0b0d4e8cefb0619033010c33f2b3fa0247cda20a23be952690302047c435bb500683066023100e6751b56a183bb6ad44c68fd782e72292ccea54de18d331dc833a1589433d7c35a1763733641f0215404c2906c142603023100b656b4a8a87b85ad7b0a954a32b1eb0b468896e2e84af293a627618ef58e57201a0fc15ba95549d44aa87657640045660302047c435bb500673065023100ff3f7631c7480c51f3f49e4849ff3baff8fac33892752661ff9db4087914aaf3bde9fa69b7497fa9017b7ea85c1a5041023056abff49ab1a343a52f62c26f17c4f847e729a3bb765c76382d46fa513e31d46e3f87634546ecd6803b933dd282261d30302047c435bb50066306402307315e02f7aae941fbaebf725bc3a68c2332d4a2f346fc422c8f812bc9f5b090899963142c113f20ebb05a22ba007e43e023059c906f6e59badba73ae19df1ee242be02d225b506a2f111f5ea5ea5b1c4d7fea5c34d6ab057f2414b78bccd62443b3d0302047c435bb50066306402301ec0c6ac1c3e468f9883e5b8835c9255f92636f72a0c68cff8c0ea5920c2ba128aa9a3797eca880b4c5ff2eaaddeabca0230264fe1b1ec8fb13ada5dca5056b7bf90f01836dc0c03ddb7e8669ab510ef4e81081f080f9c6015937ab9b6bc7f7bb47d0302047c435bb500673065023034061c7be0db4f42ec58bf36307b993cc51488950919cf96ed943ad6ef8aa67ee262df0eb659fc5d0c15694a8bc53350023100c9d62d327b21e926465e140aa8fdb96c1ce4361e6dfa8c6b6b9e5287afe97ef88941a98dc0c4e5d52fb3e24a8b5bbdf70302047c435bb500683066023100a39625ad6c13e13642d35a0d6530d70242f74a6f5e307f70cf976f0b098c2841b2b31fea4fcc27979e1f3f21c0f32df8023100ebb4448137148a9b435e23c7da12e63aad33b4365c6cd48bf11d9cdee6a676ac557acb0e229a3c17e7566f0e4827d17d0302047c435bb5006730650230356546932e804a476eac30cca4d26aaa8f3adc223018dbb8989e0c1833068f4b73757bc8fc7688465c3cec8116f76cc10231008ed20f36245378edae440bf62895bee1e92bab3e45679c03836034927adfa1f29f216d57d1c8fe2e4bbe7ef6a047a67a0302047c435bb500673065023100beed6a11fa4bcced41c65bb817be7b36783dfa0d7732eecfca04ad45fb6b0bc1d10e74cc76d8ed2f549b362c59689a010230772f0d2e43ac1c5f06d2eff6fa0533de1f7907649fca1d98f7925d53773319990ae56fc1f1ae885ba580cbdb575721400302047c435bb500683066023100b38e393e28cab723f0e5dcfa4046a7bc93de9c085f015729860aa5e1f830a331d2256dac4001438e2a2270c3abc45346023100987b6a3686c8f36054d58ccdc97d4e421932c3fe8c17dcd80d05b2c297e7e27529ed2f07ed66292888c735aa1099c6b40302047c435bb50066306402301ef648ca31946f7faa07f8755fdc2b2bf747c26e6faefb421309971eff4293ccb923f4201dfbd713e1ba03d6a3f4925702300267c26d934f5cd007dc4bef608b7f8c0e86eacda2d8d2161901b55c1beeeecf6585c0b98257739056be35ab36830bec0302047c435bb500673065023100f89aca4595c53d64d1de8916986085d767afbde30c6074497797145d1e8be9b9e403fe8c7287064d932f935a8ac8337602306b04220e6057ee64223577e4fe191fd916c6d49ebc6e08ae8528d1632e3e355a4e55e28dec67ef8ad60389ade3204d040302047c435bb50066306402300a28269a4a0808f2bb8aaa41ae957a558831af2b391043efb3ad028eb200dfb620e620e90b43125a00e03b6ab1f08b4d0230602031575a54f53c731fcc7c593b25061114dfe814fccdbf7f98ed1e048ccc60fcaf5ec00869a71b67bd19807c4f21720302047c435bb500683066023100a3fe2e5dfb80a0c67214eaae5e00cd28e9c145ec19f604f961fa507d174832a6896fff18ca62bbb04f95d2bf97f17649023100855f4a63b4523500c0a6ffcddc9b179a42dbed3fc3ff81eb605cc4df1b09af37b5a31b3762b4275a31cf02129c775ffd0302047c435bb50067306502301046fc64c6a8c8fc2340c6b07c80b07b3b7b2129812671677767e5c3695b6a2dfcb9c64b3b600779eed405a7a099d84b023100d8252ed3657ff95656ddf793869353ef7046c8dc415ece84c4a43e0b826d8546d0b53db9f1b890b331e4ec2f0a82d2cb0302047c435bb5006730650230255d183c7c952409e22f4f85efb69a72c995d40a41a1a043e953d1e88e2463e80bf7d336db62f0baca6aef0e6d2966cc023100dbd8cea51dd9a8857df00eb6271daf545c9d50b4e34b0f78feb7943585cbe19c1652e03a01cf46fff2f3649f2fe104df0302047c435bb5006730650230118a467d368f2bc37a8e121f6147643a3e6f0fa57b3d155e5eb7445a7413146f4e31dbef717ea87408e1f8e844f91391023100a4f5288000cfd586b48c261de041d853b2b854ce464e8b5c5b00c086c0de88f02168405386276d63bfec0154640991ba0302047c435bb50066306402304068b7cb4cfe337011b3f495da76bcf4738021f2cabab23ecac6adb0c961737472dd6fbf61b67395cf7c80907f7d8d7d02306bbb633d75b19f461241428f615cacebc85a1393985358bade7c9895803c12c40f7dbd2582355d2ae9770307e3924e470302047c435bb5006630640230407b837a5781260e3cc610f806cb6ceccba71d459de1b3203ca5c95eb4951394f1c644519eb4ecd51697fc9998930c8b0230473e9162cff223aa678092179d029a749be48fdc13cb10d19a600304874ecaf4c48b2f962e4970f65a16a95bcf670a9f0302047c435bb50066306402306822a93f4f2582833731b65b1117375df359345304688d979b69720e66167027de5cd8957b0e89cb1cb57a5045c4dff702307600e3bf0e7c1f18eb0223dc8fe42354c8d8b596da64d37100c209e281a61d2de54c48308a8e5dc430684add73c87fd80302047c435bb5006630640230096041a306673ad3cc88fc1d24616a178eec75604611c195b43e5d2709da429fa083b910deaa8550d1e5afee94fabd8502301a5b678e432a0a7bec34c62dc491f917fcc9f56f1713e6a082e559395a9024f30f417466bb4e80910609e4958da67eae0302047c435bb500673065023100f70e3e28bf410fbe8bca69dc382a02340e80689de0ad15d134248caf5510188b459177a6c4f5bc71bccf9730a10d390a02305a9443532b6302979d79bdb2b4c501a7dc66ce8b91a4eb6bca7e54c69d8c414dfeae451ee42a557c865709d2e69825450302047c435bb50067306502303cceb784a5181538cae2b203b321f5412dc64f00937fb6d01bd3457558a521c44be57e4bfae38fb3602c49aeab845c2e023100bd614ff4535b4c025b38298e6a3ad3b73fd9d9427690bed7a06a6fcd368a84b5d8e515dc3a778a5cdb275c2d222192de0302047c435bb50067306502300951c52c4039a0675c32861c60476cbecd5ad92a871ad5d3d8b86082608a5e2610fb2f11eea5eac3e73ccc44eb994ce60231009908ed94b16d88a8c3a3721acc08f914e72adc05f22adc2f5267212b11fc5a51ba8da28b21fca4db1169321a1833a3500302047c435bb5006730650230121ba9b46c661a495908c7309d4dcdd89fbbdf08f093c24d3f3db7c3325bc05eb667fd5d9c942e32117db75955bfc132023100c3dff4ad96e699b696b5b12cf645f85dfd6a990c25667d6a2c5474bf0c6e380ace94a070e5d0d0cd559d0cfaffee197a0302047c435bb500663064023043340e3801aacc5caddaa7807aaa9743f99613c12db7d106ead818aa0605309b3be10ae6e65138c546e24da15907f7eb02300ec782bce8925466567c6e56ceb366c61fe9e718bddda2523efb81180b362583568c79a1c9fe597fa50787205e2e1f7c0302047c435bb500663064023016dd41a15e64da6541ed122ff790b8fd8316d3a920c6367700c8af022b14417b8274c5e2179e4fe07809aa25ab012600023049080a93c6b952865c6fe0bbe7f6469e7d94dbd96d6e3c34d311bfd95ee3ef90043c3558b19ea5a2348dc6400b38ee140302047c435bb50066306402300eadb05679cc743520626fe1c6dcd528fb32b058177818477e310fb4cd9105a7c2e0fc29fbe850be11528bcdbdab80c102301a5442429b0776c954c1530c89b444707b6426353f2f3671dd6ca857463313b48a93f7445fb6aabcfc08ef42ad59acd60302047c435bb5006730650230659a25c30a2d24027e2e065c4c0920a84810b2ed5e114ac7f9b5963f62926943da1fca8c91927da13664ff3ba2812078023100a84dd094b117d3a857d1e21c48c2a2d525b5513654d87eb02d80df7d76e0c283aa1fe088e9489a1930f650ae6114e5e60302047c435bb50066306402302c1a2fe61cd6fbaeaeae4f37619915de661a7b99facaa2d4f122a65bfda908819d90670b271fce1b58ce41c4c2516c510230191baa9971b704d898648d75d13cc0b87300bd9e1e7aa592441a3be20dc7c8fce93a886a17ee570cb8cd70cab060ba9a0302047c435bb500683066023100d52874678f775becbfeac075acb04aeb7b63a8e60c0770332cc61126cc9075a3db8501534f872c5f54505e091d4e4fed023100a8c9e61a4e97ac60a3f77f75197c57b246bd11cf552fac58625da36c139bf72787ffdaeae6c7c7b95a0ea0b7c4d053bc0302047c435bb50067306502310092bdd54dd111592ff46190f60d1cef2219a5913f31adc2540f4fd25791bc323d625d4e2c5a964730a6b28367f0b7061a023061ed4dcf247ca718388af81c52baf6f09f69bcb5fbc600bc3ca639fd30b798e918a1fb2a8aa57b51775ca4a7f835d9fe0302047c435bb5006630640230460c4ff4c3b390699748d0355dc8b2ed3dcc2cbfd76b5b454652f9f1d2e6e2057f3c1441b60be4f7dc3a6d29c4f7e44e0230610b78bac87c10f33e243f243fcd40538409bc295db60fd146c2d2e3a6831eb333dbe98c76d5ceeefc552b4b5a88583c0302047c435bb500673065023100b279a904bcea043423e8db26baa8a05ffc71ef44fd1175b4206ecf2e9ae708107e27c08754455ada39b41fc7e46d743a02303d97f4f1a377d87612712f9c5ebff9f47e95f0cdaeab7604e7b488bc2495ecc1fab15adf356aaaec73589ee05f0838d00302047c435bb5006630640230449c7745e6dc569348e553efbd6c1b3fa46d0ecfbf55ef059f63c76277a3bc94806326402890127266937b1797fb27f302305e66900898b626aa39e4436607a1270726a4042dbf82ebea830009991dd24e454aba36998aa34574fb1f5c7d0d7ad7930302047c435bb500673065023100c08a9712b51e8c79c2e392b12cd77344de376440a10f4a667a92b7055d3a20157628106b70f2fc20da5dbe761c23434602307b8a69ae8d1b58534f181ed54dd96b10bb547de1f0f1400beec667d95558eda9ac03e40e562e37765f275b0c0bd2c45c0302047c435bb500673065023100c4ba50a7e8a4493a783706b26c9b3deb71d2be7a1a42d2d8dc82774f8c0268476c121b2697cd3f1d2a9490ad434ea1b90230652ae4ec951570589380cca1719d2dad9ce673d48df120cebcf837e3877fff53014b8a8146dbd7a21b311cad5b82ca6c0302047c435bb500683066023100d4011b835d42d7b360e28b87184eca8722e816d707a38d9d0bd7440a11be2faf18684c2559be84ec11ee672ee61bf486023100bdbd6122678ac05309e59d3d5082769b9885be5de2af0dbf7dbe997d4aa689cc75a861d3df48f9559201a6534c1fdb550302047c435bb50067306502304f8a7d4506e6b13cd0b0e5e008f1fcc2e324e1402a7dbef159a34c7df300e3e5f646248c75d657b5ce82ccf3e0a9039d023100c465e74c5cab0c05a2388f40c3d3aebfaa2bbec45b314cc7db21eb3c346dab78ae2fcb93d6bede1d0df0277e74c557970302047c435bb5006630640230100754814adac27ffbe0a68aa74c2eaa39a2a4f7cede9391430847acfaf175bab710f79159bbe478b7b26484aa634a8e02306c652a4b939ad6954fb7c17db76fa260012789678e23cf364313a3d52394705e6249ce5ef0faad3721508452df6192250302047c435bb5006630640230316ea4b12111be97966e35fc7bdac029898c51c945a3537a65df6be20293020146abf78760ef29d545cc6c5982dff4290230252fbcba5f28f305ee0e19cca17adcebd9b953bd36d39580765f96cbf405bedb2bc5a23161bb84f33c1028a3747634960302047c435bb500683066023100d4f241f76f94bde99c49394191e7d033fc7bdb97773f221fa508397687b1d99cf123ad56609570203ab0b16fc9e218e8023100f458c7443bec4dc42cad6c787f0f385ce93209abb4309fa23603f38074773b1c0504c8aa3454e5bb9614279eed3fbf760302047c435bb500683066023100c15e4fcb3086b477486798ed0a82c135e5574632646121bd7e8ddf4ca0e98742cbdf26d810ff2db32a713dcf9c8f6615023100d723c8fa237d899d94cb9db94b4f1156d7e0aecc7e48178c41f83e0bf4e856a0c9f0c07d010e297293c507a8804e01210302047c435bb500683066023100cfe59ca637fa9352d9912aab5a53e70fe386a9debb3e1bf3600ddbddf41bc96d70432a5417d25ab749154fbe851af3580231008de7726100084f072facf0c65287d0c9e378ee6bc05cc19c2833ce4f62d8ea22bf353ccd2a2287063ef6d81bd6f1d17a0302047c435bb50067306502304c8e35107a7c48e254ec34dfd4ad29757b3716c8fb5d8bfc6e4034a3cba6400d75dcaed4ec8c650ec164744c71cfb105023100d5f3a0990eaa039b3571ec4c54feb93c59178503ef441d716bf882e1a883ea50e2ef637a363384389559bd1f8be6c2cf0302047c435bb50066306402301dcb7392d76154add389cc68b3fc47ce499d85de4715b086e49cb8f629605341d619308d6abc3c56d32a027e9335200a0230320f22cfc326ea7d7c99f20825e7fb65a50ad74463c3b4c65d499f32668a4966d07f5fc0155a337c92f7eb0012b03cd20302047c435bb500673065023075d660d650591913e0529d2490a831aa8dfbeeccea7c49665d478f65361ba5c49db0f34b81b7f4636b300e6e5549b6770231008028dab61a0829d1266e02f109a3cdd96b063cc241c1fe9e72f12d7613a3facf34007a6af254b60fedaa3e5894266c4e0302047c435bb500683066023100bb4b8e236842644a18143d6918cca580d54cedc82f665615c546bc6ab056a53c15674b4b037e1b534246c18f343f606c023100ed5b14d6a597b2ced779368a8be419e967f8b9d9b7da03f6d9487cad916c9567b80d05ba71f1f811fdeb9bcaa2f155b80302047c435bb50067306502304972a09d1c147ed1abc157e818682eac4bcd8ad6f223ad381bfc91c3b841ed59397f9d82e0b264a7bcb3ef0d2d306259023100f94bc9872b519d910d76dcdfd5e2925067feb7d8cbb269295f2edae07d6e268afcca3bb2089a15271cfc4216d95514140302047c435bb50067306502302d7fb75de09ef9972ab407b1f9535eef132ed5df878c1d061ae5d2c225ee7b4ae3059fdea32c9a12606b9d2b3ae03caf023100f7cc0c77cfc2d0694f3b3f5169bceba0fcfa6d553ee6f419b60a7c63ce7ebe5b80f009d61dee7d8f68bb149ef04f7eb60302047c435bb5006830660231008adb744abb571d8b68ff739e3c9b90c6c2c118ebfffd3937d2afb37f367d8cd389759a5730f1a5dcbe5871344e7b58760231009291181e170d9c70431344db430d49a3c17a701ba07d96ae51a4ef5c1861f1afb598b6aa4e2224a5b3f9a7104d645b360302047c435bb5006830660231008fa44ddecd3b459b47b24a0974929a398fbe2ce94e3f116be30d2d5b06f2439da99627fc8f96c523ab0eb7a69bb80393023100a1b2a200c23f6934cdf36114170663556688160829275c13fcd7db4a3de95d60a7b627eff9c34e795b410f94a0b7da950302047c435bb50067306502302dcc98bd3e04296600b04db9c073106e33e1d468ddda9958c49487034dad5fc5c8dce5e00b155dc195091dea28c6c2b1023100abdd01a20623b442bd67903683d042052e16035c845a920110529b1d489bec970025b7f0e270735d71d571f0530174b60302047c435bb50066306402300559843eb2d33c9072702b0384742c571741d48f0d28fec2bd97d55e4421ce62487f3fbd2d700ee4fea7f82d00c3296b02301a234dac0d6fe0e178d7e0e5df3e44e94b63cdb6a6edbbc81b292e50eeb2a23be83292de9703af7e59b263c8b05b98a30302047c435bb500673065023100d62d051a7b2aaadf3720b8664a404d70ade7c21f41666226e52c34b66851a7f55c5588060c8f3c7ab3338024e3e8fed802306b1451ec03686b747d68dadd8df08905cc94423a353986c65d10739dc3b47b516fa71a5bff78e75add402cf78e8601e50302047c435bb500673065023100b9a1165e13620cd10ee606e6d81a41f17a2be8397c40a72872509e1120e297848c9fd362c4081c9fa411cdeeedd9c63702306e70811bf855e7490dab72ce3a59fd5bf2e4b8e12195fa311cf6544fe05801e64efd587b1de7003479e405fa3d04f3160302047c435bb50067306502310081dc24e5e2316008f5c761644a546455ccb0b5df456bc5fba4a2faa5e8ff70eba5eed9b559a1a3d053037b01983e49380230028ecd84e59ca44493db1901de9ae700e3c1611371da5908a81d592754adb9cfd75a2acfdbb422d6861ce6b08750ddf00302047c435bb500663064023075091e410a6208e1b8c7e9fbd4d453f28824ae6d749c95d20942375cbdcf5b61d887fad815349fb17ccb4f557f18fadc02305966038e5d0f1697b1a5a7219e6a6eae4e6abcfb125c48380b380c8378421204e9a771ad0c290037b4076b190ab70f950302047c435bb500683066023100e29e866b7a282be832a5bfbbe996165f48376be53f374ebfebbff486f6c063939334193a877ad10a0592ad83adc53291023100da19e6703ac0ba0cabf7b3392c13d36e82e0367d19e32ca84bc19fa66de541d09fd1b1f18b32bcb6412a27e0f1a466b70302047c435bb50066306402306167df9c245e455fc8809fa635e4998daad69ac81d9252f632a93c6c336b9baee3d3bb71d7df707d9199125a9b2a442a02300a76a4e4857a69e528528f50d4ea6517dfc45b5662f7bbe5184c67572c282d6afaae85b1fa72b5c28d60ca6e5dc832a90302047c435bb500663064023002c062c1a873c68129fd476be621a43b4912206ddcd0241fb5298bf5962d7b87aa80c3c806b6a631a35aa1ffa8a9a5060230614c2ad680848f0a326c59c62fb16bae7edd5651afdcef51be9af22d3a18a72d4d60db42593ca787e6048aa8fe73c8a50302047c435bb500683066023100e78a75efdec0aa051f472ba289232155fb73dc0ff4e8075cd85c88648e7c0992b53ee2ffa9f168ed75418835bf93728a023100954aaca37f79d6bd0e726ee279e2f9c4ddc04ffaaed9ff653e7e7eaf7a58b8d5e3b9908e4b0a4b5232131b562f644d880302047c435bb500673065023100d34ef3a3fb9fd4bdb06adfd0fb5104de69386bacb0fe9b793ab986e2fac914f4096d7538e8363b548070f3944885c48a0230712e96276a590ed608055bb53e34d04a274d94572d30d7eeb8945cafbdd785308dd38cea4702cf3c0adc65239b6f68d90302047c435bb500673065023100952efb42c90ab510d7e2ebd709fec8806b4d81f99c52b8e9c20fa1980cb71da5878d31ebbd79bc76ff7ecf812bc90d8d02302426e6f00c4c5bc725110eafd2e926e8b42a9057c86b3e3bd0055898f77ca539f59ed260b5c3bd40a521a06ddde5d9970302047c435bb50067306502306adb439ac913a960e21a820176b8442433108b164e77a6b47fdf7c54f60e61ee43381a4563ae20226c307e52f6317311023100c11e9522ab434d99eb590a370c99e8de8a9548827627a23fb2fcbde60fc858b3de01f2fff5fa2bf27cbe832be753b6c10302047c435bb500673065023100f1e817a70f33012b43e951a7ab07c78f54010a755ca18af5922a56c4ab67e21225dbb9d8857f43f2516d3e0b970515160230168797f56deda17e824b0865dd256b161c82e88ba040ce58265e241943005c8eedeff95dee28d53b3633ba857c5c746f0302047c435bb500673065023100b2f693a0a9cc288b1f30b3aeb5695b921db7ba5f9f571e5e6cb6af4cbb73cd5ada1a19ee6c0c7606b77f432a20eae1ed0230653a4683a837064e9ad36d60db0566f4208c004fea9bd50305a20180fb498239cc14f1635a0620437a97ad63b71da7db0302047c435bb50067306502305cae5c690d341dc5d2624145a56f1367e3402298959af2a45d958c63e1026b65e45fc9ec03065ddb59b7948554aff5160231009c0336ee35efb0354916b3636783026b5c9a13989556f5baa484aec38e7740cd04d75eecf128e08eac29424f81ffe1ce0302047c435bb500663064023032b17650a0c2889b3620e02e9f4fa72882b16694de43d76682e36cfb359b2f70431f42b6ce8bf2929946922c9c950212023042dce68cb8ebe8c576b4294fe065c597db544b3ffd8eba6509fe36f6211a99b09818cfd6b6cdcd28c59c611c698a9eb40302047c435bb500683066023100d0053c0350eeefc246ae84b3fb9eee952690e03c0eaf11ba14e96907e594cf3e99980cda56f0facf6c68d7274fcca346023100ef8b3434fdc45ac46c8dcfb70ae32bba40f6a4ca34cbadbce543577bdd0b9a2bb6481e375619235a32751a73b4afd14e0302047c435bb5006830660231008504536d912504d9ed6dfa6ae2c01e9df3a10a7ba33864cdc1cb9e1b666e6dfd7825d029f8cf3a0d6a873af052a155cb023100af8670a83dcb4d6457b8ae41027b0d0130bb66518a6cb8828848db1dc4520779c6dcb440e6dbd6fde2a05d63c57728dc0302047c435bb500663064023040d09c303e762225866a8cfc52f65e9002e672c1f8db619b14c00353ba183036e4736ab982a9f1bc2c9036c9c80ade5b023067b7461ca057d51b25d9c9301f79ea63cfb42d0c2c1954059d7f1defb9dfd6c970c12084b7331fce0af0faef6b64375e0302047c435bb50067306502300a3d36e8fb39bd8f3bff727a60d56f186e6f09670681900ed84ec52fdff32f489f16b7f3a017031e548af6240cd38be3023100cb7522f64398154f5cb11507329eb72b353e11a2baafd761939182c740c0ee3f8beb9ecc7d8e0eb493e5a965a04812130302047c435bb500683066023100f486b82d00d2b8a0a1f5f6d2286a0a92181bdcb4ac29c1edeace15be1b95df93086da265396b405357bc495700e5ab77023100a1abfe34be6c42628f88da0d472b98de314308fe2bfa6a641b1cfdf9ebbbf381e8acd3e3a9de0ed41e51bc7fff0532cf0302047c435bb50067306502305bb3d453a11279722f2b74e8055cd0b4acc6320911dab2055925d64ca4836d233d0d1352756229b691e95b918327a51f023100acd0d435d502c917452e51df6acd463656ef6f5e880d525f620dfb275a43eca16f841b0b34b6281de1c19546e9cae4c30302047c435bb500673065023100c27c861aa747e802b35605b5aed288c289eac639563deb89f8fe1a8fc6b30d3b4472bd5628f8e7c074358468352040010230607f9d84032c55242e5a6534399a5a91bfd4c418911fb0de210fa370a18ebe3eeee7c3bcc3f431741104691068a57e950302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303e47c14d7b3158dea243638018fdf69251e8b13eba124ec3006a5f438b0277bbd76200bfff5b56f1de0d6cfb1d3f9ee7023015ba945bc13580159bc21af927949457b0d29e159e1335ed0c463141c9606fc374a1d0d7ceac52e8baa1d3124a8ff6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100bd4ef10197bef9132c84ebe02e621e9867da8d97ff66f06b2540ca802b65d435474c96662c50cdacc1cad740547969b5023100efb741b4156dca3ff3a3833476d2d85d4c20d352c85ffaf21450bcd49ce0d319764f3b579d11be86d1305a6eb3d4a2770302047c435bb500673065023070999699ced93c41141c3f115322d2f0111eaec0aef6bd6da50b2c4467abf10ee8f32f2abbeb10618bba4c01db0c5d92023100af884a1a9795dc55191cee0a7f8de85593bf63cc2c36b430f44217a14b5520d4487431a1fcc225bf1c5944387f305c540302047c435bb5006730650231008ddec654ce11ad0630e01d46e49571cfd1d53e49c6b9615d1240a9bbee0efd26cfd4bfc0f2634cfc011e4da02c8ad61302306426ef90221cbe09d7ff7bb3eaf0bd24ffa406743f6503e5c372a452dca3756d0ee85773864a5f51ca46ea35b3465ff80302047c435bb500683066023100ae5673252b3f5e5ebdb4e8a0afb5a771c7e671aa6e88e2a5c90fd720ac0f876140f679b597a4ff4f5660a743b0ccb257023100bbe2ba17c4453d790b64eee91b6e53f8ed099da9d0f84bd8f9eea05d1ebef69194ed6ebeead54dea7b9ef03a257093700302047c435bb500673065023100ccede1f7ce1abeeb4519fd8569dc6ff57a6dde122309b704812822e2b0827ed197e6dfb785104a0e59ced30bbeae609702303c6fb3a598693ba858b7795666320f4f3b1dcfd45ba4d5c4685a999214786e5c08641b2a6980785aa45b1905fead532b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c332f3a426cf4825567b43aded0250e9633d3a629602ac748f556be0b4ba518e6bdc3d5ee8382dff7325a95e7fbb765b023014ed4a50e91de6dc7dd58320e187217ac7a25f46d817369aa27839e1697614bb541ad2a7064c9fcb7f64ffcc8d11634c0302047c435bb500673065023016cd4e14b7bef26c71664c1159fe42b348d69bd7aa79851ccd9d84565ccaa9cf158bbe5ec77cf66f2f24700665c78761023100c56ade412106b2e4202b07c27373e6e98cb9b243b69c3aea23350781c26b475c499ff8b92cdb874526d215dd2b94ca1e0302047c435bb50067306502306c8d8fa93aad4603972f29b58cbbcc118021dc0a51886af4ac54563e288fe8ef108ba0e5b8c4dc7bc82fc90595bf65d6023100c2522ce77f7018444ca28b6866229c1c8fd3832e4975124dacb97dd97db1ee05760a4c95f06880662d4807c389dcae640302047c435bb500673065023100ddf599d87fb097e9e7842cf33efd1e1915b9c89bf19dbfd203609b0e04892a69b6875e29a241ed82c9764e5bb4d8092b02303e213c827592fb252653bfa98eef5128017d7451c2ab0381cef108c9d0f121df7221bee11a9eb34a9a42f893b428e7550302047c435bb500673065023100995b02f7107d198fea8e17e7134dac892b6056038605a6c5e28c2234fa96a87176c8d91f80eba76feb4d6d850970dc5802301498c58fbeb4af436211751429c642e2691e9a059cb31275b1e8ef67446e17d43a926429ce0977dcbd10d40221d28e630302047c435bb500683066023100a3742d4888b9c950f22247074ba735aac68869603d4320130e573079f9ea7da5abe8b523d7e52ca837544d5e896a8c0a023100971759a326559f7d67ebb40704405651864a7fc12d78d0b9d0f723e319a25c6bd04e38a68940b83f81d1d6007ee64c310302047c435bb50067306502306266aad63f01965fe9b9894ec8c224981199ffa4538b83935b1492fc025192019fa5f63f600be653c9c3dc369e319335023100aa00d55ae798343072c71e9ebd899daf4b2010918eee54dedb336a2594a7db51c2853c07cf3176667af8ddf34741bbca0302047c435bb50068306602310096244d66190c53aaa347183b5703534f1bd4994ad0a0647b3464209b71778d28f9f67ea68f973496839a0893d098ded20231008b6edcc6262616f15907ed2fd6f687ee35299e1ac3cadabae8296a025527dd3c75136d6ea1806b8acaa6ed1ec37c99220302047c435bb500673065023100e1ba3e0a706914deba6c157c8208f444314956191d885c962edf2227376f66a015928c127f83a830f31f6c9def898467023016df22dc90fd97564f23048f6454760317807667f609202102e47c8a9c026afc7b6db771d7499c73be8637a8f63dfd730302047c435bb5006830660231008db3e4db81835015af6d0dc69d12383632090e3521b3f876cbb55a01c2371bd6354bbd003ab4c20ec3b3aaa89afac60a023100ecd628cbc93a8a2fc84281c781aeb14f6f4746bc801cf12117626859eeb4f95c1fa5936a6fe336ee45dc7d1d443084280302047c435bb500683066023100f25a163ad0c5c1cc55be8ccf9f622f172028dbdc2c11341e79835938eb5a5bf27849f2f159b9af91acb6845fc7308698023100b8cb01b500ff06ab2fa008ae90ae01c1fa56cf42f457e0c99756789d4dac707e1d6eae0ce73e8695a03dac441ce13eed0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023067f2cd5f79078a7e46b14e1b43733f22472a7b0fbff062239a49fcadc5b925de790ecfc753c50059fe8b554c52e7b417023018196b2f7e7ef541474ca9aad2cdec038d961f768c04d8c7cee7f117386b3edfde7150cfc55edbf70c8be00f0a7703d40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023007f7cb715874172a04a36c00b4658c684ea63eee2169072a7fcae436b328ac2cc12a13039589a2ff97a3cf20606f57490230582a1381db2230fa2cfa98022e17705904f61000fd59d81929db7132b3b4f4ee7a3984da5c7e8999017ac7580b9ea6b30302047c435bb50067306502303898404b9cc6547814d321fd515b264f0a9666ef1a61a73e07a1dfbad1f1b67ebf1f1dd227f2e0b43cfd46961eca1989023100baa37dbdb750987208e7f676fa5a57fcc9d29fbc0f5a5d1a20ac74ec761b9d596e0736ce5aa5afba01a4a33f88dee8110302047c435bb500663064022f4120e9d4e3e9b7d383bdb5192e8ea1a8f015b46401383eb769575d22bb0ef9d7c61e9555dbf7a58241ba2ec5094a1802310099255e66089dd439b9d2e7cb74567af191113dba92e69a63ab94f28df2ee3f927c3b1cea681002cc860ea229dcc224ee0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009c5a400c92da9920800f0c01edaae633862ef0cbc78c940ffe8db9c976d68c995540fcfc19a43512736122d32c430560023053461ac17db37a88936b783388fbc9d295f98e1fa31692978673590fb097d86505cf6210e1b1eaaf9c99b8b2af5e9f480302047c435bb500683066023100f24b845cf26f217c8d256cc040f0d35fb44a79ef263fd9a8be3e69a054272ca9b65c34db77c8a4509e26d5ecd41972f0023100eb91fa6d129c8ca956948ea2718862bbba73d4bc0153c732bb0ad0648a6d414bd000aba4054655dbc57b11a3f44c563f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f9deb0f2a271f01a721a99fd427a7f7211fe2c782a0d85a8970fbcbb37a659305e8b13572c09f65a3e6639b4ee866504023001246eae5b4e10d8882917b173a553534ecfdec7af6ced3aeb5ce3b02147955e56eb719d58aa8b08cf04b49cbdcaa0e20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300409b6ffb6343dc43884c91b57702c5084bd74a5f1f8be8f49d3ae8a4dd3e6bfb59e908c443c96ef54f348b95c8780cf023100e1e4ddbd7b527ad3061122c577823ff359fea935c12a35b3a0d3f0a57c10b38e6c342184a1091724634e1cab157de7dd0302047c435bb500663064023072996540485a48956ef82d808e4de0ceda97a1ad99d4825536a4a49d761482ce082b4cc7931f3fe1951c683936942f7802306dc953c2109c8ec67008e212b79879e93647684d3c97885fcf4741489d7707677f3957623f4119b9aab3b377bc987ef20302047c435bb500683066023100c375764f1e639f8b2383bde08edbe60d0598b80939c4f5c553bb97419b2101c000da180e5e8be7cf4c069e47d63b4c6a023100a83a4cafbfcde31f7975955981f0fc92a4e4dd9074642e7ae71efa8bad113f704c2b066bcf2cdb117aba14b7c354a12a0302047c435bb500683066023100f5d14c872e1e66b767523ce788a68b928a29d1e1dac6fd39e03c1ae8ad0168f1abb1942b149642d600c35da64782383f023100dc580d1e85b6ef65f1fea1701f28158842a52a2867541d1bde8971dbe96926563640fa0b888027b9579c989decf8c50e0302047c435bb50066306402302861990941ed8df9db3b0c3b55711225f6565b30e4347a1e98ebdab0139182314551515963e24a7415d00543aabfff6e02305de8737377419929ee879ebe0841d293abbe961273b7c712d3fc4fc93f21e910f3c300d2e7b5ca584b3386ce90ac81780302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230578c73e278ae9ecfd169b547f2dab8b5c08171cc2d65421d37d326d1936335bb68506432713fcd5faa7bdda462db7d7b0231008bcfe58c3513a1f4740d59733987d012d72a856aa326a567bd3ddb1e92996cf21e1606792380b291c4ccc6fbb2cbb5280302047c435bb500683066023100fd65c05bcabe21c649d10159b9340f12e1224fef775c82f4e3f8c1fd70cf7a60ced82114fe1b8e9430dc0e98287e0dee023100b5f96e466a2847e8266756733d86a89e508f7b158bf617c5e77afebea91a6f1304415a3e6db19c3b5e1afbd7daa9f3dd0302047c435bb500653063022f5ab82bab1b6d3758342c2dcee5b53fdbaea2f5228a6d7f0193aed545f66768f0454f1772fd6bfbc3875f9540de37b3023022ddb637323e3fc1ade72dc53126bd6dcafb65d858e4fd0aba71c03fab7f0d69e75076fc9ab64817e54f63b3e887cca30302047c435bb5006730650230140220fe7933b823197b05609c785301703e8a489f86773bb2bbf5818e198c90bb67c5280c90d146a4913936226a4b5a023100fc2a0dbe7af838f4adaf731201340b5b48f6c1d61f49d2c6eecff8669fa74f7a560ab6c764e4a336d636407f3b4021af0302047c435bb500673065023079bba71355ac2fe58582ef3dd4a781776123916927106da10e334a09ebf3489418741558d92d5c1662c62b16dcbd7954023100ff9d26d30cd1a73197e7025a15f39349cff887b0a4103683b421f34a0a9b58db7403a44a5aceb294e0ff0a33dc797fdb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e1e0632b261b464c259acfa9bdc0af0b085b00be46f517af291beff58450e80a66b268dd4087d1a4abd62a1dd55188ae023100e9609fe0d35ef6d11434ad892f221d5a52bc2a72098efac7cd1f6df8b13b6a193097f48f871ce786c8be47199cff4ea70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008f85148b2acfb4e1c2793f6a20ff87919552a83f49c998fc344c105aa90c2e72b8b35cee8cd2949101ef46bef05f9f6d0231009b1638485489b17ef03004f6b7ab7a5f1ca6d0a42d99397561b8937810e06847d895fb201cc7b860b268eabd5088fdbe0302047c435bb500683066023100fa3ba7ee4ec25340feaf1acd4399e9410c1c524a12d1da203d98a570ec38604baa2b9cfc1c0e8c59c57916f0563cfdbf023100da1d71e733b11bc6200e38a3ba8ecfd94b33dceb7d3b0282d6d5fce734ce186cc7fb48dcfaabae489c012cb89cc914be0302047c435bb500683066023100bc107eef19d66f238b8a4928048f1cd093fa4bff57ebe574e9f61d306b35f6ea3d10daad94fc036c20128fbb5b3294b4023100a7b1fb07f2d00766032ec5a18df81e24de3e42b351b53fa5e8092c858637c9413fc1fd17000f468ffbc274d6665b21c70302047c435bb500673065023100cd2947977553f5af49869fd7f6d304369954f2629df88da31eafd149ddd6f48d4bb4dd0a68f77f329f7605a6fbe1e9550230453676a624d36a605aa8458b0ec975d7a13ea83b25f08ff76ea840cfb04a92f519c5024089428a976038b58e1926fb560302047c435bb50068306602310092d3970fdae70dc95c04937df463a09d3b23d10b117a1d86cc95e73c151f624c23ae2642cef4425a6a1718044069447a023100ba5b5504841bdbbde2f47415092ca530671d530d99f3e6ccee096e344d443f7e0cfc580a039cb63ba05d58942470e8090302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303740b61e4e52d3be5d9ae4f62178ff187626afd098e16ccf058613ab2da15a5396c77d432ce9c7294d309c4b8e6b00fa0230652bccba1bdf08240d485e01ab0fdb6fcc82a808b0e45e727c7c5c5d9930c180188bc9e65c4f98f3ea87fd77d88f5d320302047c435bb5006830660231009e7019cfc86e46ee7dd3b6144f00c14d6be60bd6c3373ad97f3dc1ba205c6d797642e336ab349da43b96234058928673023100c7ea72153d757c1555f36f6b133a60eba03b8703ea5b7cc488cdc27646c202ea11b2543f716f228c81f9700c950525c30302047c435bb5006730650231008a1ea84c6e52626964a8eea5528701b00bbada13d4e69abc03b2463e589ee3219e27fef7858c1f046c04b390297c92ca0230558343fc7ade34d89e647d4bc295abd5b0a4e594f1505811faa254681338a983e196a1ddf658938dbd82772e6da2ad5d0302047c435bb500663064023071a337a7db1fe404c4d5170c8bf3027ac75f5be6fed0050ecc649315b064a3496d6903c8699a8dfa36fa8d01f079bfd102305bd80905b5761e2a23340da8e57fa72e1aa87bf69cacdc455d96fb6f45d0fc900f2be311e3fd72fb31f2f97c8172d49f0302047c435bb5006630640230722c5008155e9b0c9aab7a981ae8ebf666ba4ddceaa4ecdcfd53c11a57d48ed61615ad6b79f96e92a06ec1ce1f66d58c02301a7dbb7f80e3ab7eb8f97e4f6ce5c4b2264d826401edbe767b456d1d17bfb06f7b1bc46d7b0947d92bcc03ee6e5c9e450302047c435bb500683066023100f4b2a4be50a7b9c042f157d8ffa5a8f1f637b84b0700a8f52f9b5e754bf8c53b052214272d114f18e38d3f1420112bec023100ca1073dd6ea49c0e58703615170b5f48765ebe7525d735769397586fc60b01333f9ecf88abba1a3d1a479d2c3d87e6e80302047c435bb50067306502306d99b87cb76567e58600ea279ece79a71b26e0a47c25f7588cb1559a1a19b36e08a60b88a4b18206584ffe324757d3d2023100aa8a5f642befca113e480fab669921f9179f496c4cc215771d9dbc64ffd008e685788b2e7a0d181261db18d5cc004cdf0302047c435bb50066306402303f990aa162d74a4413cf8f50727ce9ebbbf652746f919c64f748f755cd7421620512b229266c270f08796223b3334c6102303161738eb0f78a29758ce811924959e429fc22e08786e5c23e266920e8e7a26da0443d4104e7f90258698307b7389fd70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ca3a7855084c5ffd8ce686d08cae549d5ee5708f5038403c0496a8de84264e1554a473491838c089aedc4bf85ff4344a02306ce5704ef8775dafa6ff0c142a351382b1facde24cea3e432e97a16c7cfe50086056d4b35ffba1d009746c906a749bc90302047c435bb500673065023042573d0f8a1afe3ecefe5089cc61ee901c356e54b88a2cf1da34176c91952ddfec2d078a56dcbfa0f2c3bc888bbbd5c8023100e715c44f490148733738a68365988664f70c7d37653701d66b83fd5567041087efe34cd33452ade2e11b32aeee1200b40302047c435bb500673065023007e556f912dd67e37f97c347341a6103403fa0846903c01a6272563a5ca93ec31f5cfacc5b5278b3a2b0008324395dbf023100a74f1af1e9fcff12d519ba3125a38d303ca2f8d8b93a7e703fac1ebae227c96855c80549061b1a9578f8c0cf4b53a5250302047c435bb500683066023100ae424c0d4c24330393c771694d465a9c3b048da1939074995aca82afe58b6e4e921de2adcbcd2c015c8c60735f6db5c4023100f7bf9019a30f9b85368e208338703b1eab9a4da589a3b72422a47fb475fd9517ad3ef103d37fc175a63d2a8d151864030302047c435bb500683066023100866421a8eaafc75078e4acc8cff896c590af8a753051dbfc44d80ec153046c150244d691eaa10d428936e79ec4dc2c4b023100c49b8b50b5de5c00705b8bdeb57eba6dc7e871e3c963f7636c411f00aae781e168d3279821cd3943cc095ded22c272690302047c435bb500663064023032495d19ba979e42fe4ec12a2b722a36f008e767d2967284afc6482141222d71e8ef184125f265ad56a4d60a02b5600a02307ca38bf6e6d1d76164b6e484ceac63f136b64c77632e4b15667f574473ae00840587cdaa95026b1645074b6af57d5b740302047c435bb500683066023100e62e4cc7e8b38798ffeeea2d221818ea3bc4f4411254ae036856bcf840f3839a2d27cd35ba2105cea6fdb496462b44c7023100ae0db3008b2038d37abcda1a4a6f5ac75943a72f205784ae4969ade0801181519fe52f8431fad030c6db5f9019bfb77b0302047c435bb500683066023100fb9cdead82e4d392f52b54409d6dcfae7473eed7f40775e631e9d46e5a46f26f486278d71a214648e4418d1c73806899023100d120a77020ff9fdee39d4883b7a02ca7232a20e230a0f62365806a3450c91449ee9721275764f2b0b16c163c496836370302047c435bb500673065023100b8ad83c45737faafcb22caf84a7f32905c3b9a3408cb0983ff0a53cda163a31a13413b529d4fecf5b67fe113b1011d900230594cacf97fe310999dfcf357568ab053f2a8f2df854b456f50763af38d17a54c19a77bcf6a44844f649bb5a4d41b9b340302047c435bb500683066023100a9f7fd3d8aeb46d741c25466717c1667fdd2dc599ea5f4a88d70d1742608c1008b06a79f852defee0ee12ec4d5f94007023100aa168ab5b2dd52f975dcc17f3ff8313b2cf32e106f9ac13fe8ebf428b2c3916518834e9889d178cdccb8c1078faec3880302047c435bb500683066023100cf80ae260ccab5c2ad5a2438bac36e81022e1d0bc58d92825aeef7c6f71be45091f326826f4eb6d45ad48ea6e56bd8c6023100afdc66b5c006a898f411ae1fc4655dbd6374eb0e8049191543f048b3384d747b647030292c56397de58797181b5fc8c80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023015087e7ff42f4788b8a3cc88b13254d72bd174a036e744b7c27b737409e53f0a600cfa3a9db57e024eacad5d3152d3ab023100daf3d3010eb4e3a9975884d6cab0682932af18f7588b2fa457e4899909d1c03af3998f5604fef914099f39e3cc04ed7e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230277e72b36fb1f8b3196116ec69a82c5b486bb3033827acd40f9e7b8f385e0e2b7d756bac8a8adffdee54b0e2c715cc48023100da46b4f0765169bacf59a51da9742d85b37f8a9c005d262a440a06c5e1c24f5331bf8d9f7f750c28efcf0c1ece42f5c00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303d3c54e914bf9030ed047a3e03ee01e6a85647d6a6a6f0e91e2897a420dcb8ce0d23fe320b8892871be8bff7a6a06980023012b9ccfaf8ac2c761cc16e0429449591f27e711cc27d446f9c182aa06c0b30f68482f74610989044261d33f1543a5a0c0302047c435bb500673065023100bf2ae3eb64632045ba21a266d4aef33c3057b44494433e440e2c2c9556263c058edc43077282b94714f6ed17999ebf0202306cf928a3d3751488c84b7ead50bdbc140857371aed9d715968dd949047f005138b003eae500832fda001eec10bc7f2790302047c435bb500673065023034615996bfcd90a3dc0d9974f960cacfbc12d9ae452b0ccc586920a8204688d2548d4b6ac91fc6af4a8d935d0531813e0231009935f18ed3ac1f9fbaa488cd21d75e8c820b4637b1c10b8f81ed1110ead1a5ff26f833c19c16747370babf15ff9170a10302047c435bb500683066023100ae2cd39fdd343f039c3b7c5415a4e571ecc681abd5b26b5b86171ab334ce3a656cdef07302b824596b275c75b767a1c9023100a4ee1cfb4a3a2890354ea4c219dee35ba17f20f73a29bfe30ce20a953085b88483674ccdbe827587d076a9d52aadc8030302047c435bb500673065023100db42537cca455a296309243e5bd77a7389485ba1f40222a406cdd6e430489ae2884f96d46b3115614e2e1cafd11126d302307171d35cbcb2fbac45f0f27160d349aeb197b613f15749014899db3731a63bf959b1315fe45ace088b0d47ef6f1eae9c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402304d19db3f76f12936c124c0b42521d4cf3ba25c4924e3db34c927d6502aa79c57ba2ed907c028bd8197df1fbbb4e0ba440230401b85e1281c373ab15eee23ca43e597961dfe5e100d2135568fafb777bae3c3c1060bc37d0e3d5976ca597e8a4d32520302047c435bb500673065023100f98da367991f0c264578c616bd0b37d0e7c0cdff32b35a5f2503aee1442d7246998d8e8a7728cc40135e7e2a3c314c55023020ef7e604ed4c806d304b7835a526991196ff501cd62257ae1a26891053374c4616164c666d5ecd5113126387d74dda00302047c435bb50066306402300c58223eea6bffaf7cff8f450713ee400dfa90cb3252d6fb8f253de66137775f018a06b020902d2ce5053c9d79499e36023022e7137e0ef5c540907284eb19ec5f958b9928f4b8b2be2248c641fef53297736b28f81526aaf38db33c358603b2f4310302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e60ebb0379511291020ac15b59c35242ba42284beceddccbcbb7335e836671e0945e9ad431c78c5d6ff2ba72a7945fa0023100ac5c6166ff706bd234d3816f04152a4c901a2318a6ef0f6547bb9f4b4a7e0bc0c577cec6862e7cddbc7108248bb3548c0302047c435bb50067306502310096d03f412998366b6f2eb04de0c3f2aae6e367456708b2fdbb378e55170b538e327d14568a6d72d6de5cbdbf55f09c6902302b76a53af1e2f52bc01d4465ff5a0335feff81a8bdbbcf4cbf555a84901dd1a25701d78ae6475df43f1832f5e507bb8c0302047c435bb50066306402305702e67b6d2145c09adcb633ab9c8fe0a9f2761854aab82d2ff9c2ac31c9ef26603d67cd871830c7bd21f29be765bdda02304643d43897f113ede52fa28a7eb8dc217ce74a152a1bff99e6ef08b63585dac046163203f7e030fa2c2a52a15d8867150302047c435bb50067306502306b77f17ec11df1feea224f2542e51e9444931cf1832feff60355050e2d417bcd745b8e0b683a15a06c2f533e22b88049023100bf0e9a78b0a17077494a54260459f0fac0f365f8f058ae7a0444a173874bfa8eefc1a1682e7dc086b5b2573d18b3a35b0302047c435bb500683066023100eafea2d56683785c940ab24f60ddcbb2a7c442377dfe83f711b0fd1c891df89f092a6cd1ebfb27d75c302302cef4525c023100f9b8847b50781d72e5158ef5ec74b5fae1902e5b55c15e1cd54b09ce7a98c1ffac82b110c0ccf311b1e8c4e006e08fe70302047c435bb500673065023100999a5dfde35f1981aff73f70b318cf8685cd894ad09000ca2a8d215c67523eec8ef5b77aca6babaa9e09475f7e16dd2902300bc2c430261f62ec6d5aff9d59509e05e7303b60a272ac3fc95ce0c622df8e75ce74d851db1855788f05590e493a9dd50302047c435bb500673065023100e96bf11ab7ff97440d617da4c3a38574053a5cd8f1f3494da71c3235586b00fb75213d4864847c78058d4fbc604e6db2023048b180db1967d528c5fafa40e06a31d090b82e8e1a50c5b7a49343f0936f1a433a98d91508a399feb236d6fcac75f5cf0302047c435bb500663064023001d11485ba3aa8fd398f370425cf9750c13fc86b7d0810ad0096d58b2d958d602d77ef03260591ffedfb122265a25b8202301f8331d82fde9d17a7bd809a0362da983700a7ee24dc579d81253e959f4b871b5ada414f865d8a8dbd3520358548b5ed0302047c435bb500683066023100bc862bd980971aa3c7c9527ad9f76d3a5da8fd9025f0a36e5e89e0cee1713018db7b25287373543738ead9e304eb83ea02310099c025be0254ccaa27799ec67b8bbd378f9d5b395b6bfc4302b89a02d8d4a38ab0c81a0288779487245fc4d6bad076000302047c435bb500673065023100afd30c564b2445ba08a06bd240ce11a065f87ca7c9fe87641bcd08d97989da9b9447390700e68789b49792d2e7d2a396023001e73795d40d1ac3cd3c4e62b451bbcf8889523a9a7a76fd627352b7dc8a889c7282e253a6c25772d10b9a0b594da88f0302047c435bb500663064023072d4fd4729bf464b66a905c4fe4caf4d200d30267224a07f93948986efaf249ff7204907ccf5624879f2f7d7e82b11370230540f1e6c3569e863ee9711c71d9b2c1ef33dc2e0867c71e51ecf9426c2b0849a816eade5766f326e27570206fbcd0d6b0302047c435bb500673065023100cc6109ed2b025d337c55f2fbad42e73b8f15f466bf9343750bd5199c53fc07c019f8498db128dd5f907688b2171879e802305f08ccf9df81efc315a0835b94eaa263cfcf016ad313fd7b95f4f76d26357337a50d47a820b003b0373b83ad4f4e6f0d0302047c435bb500673065023100ba1bc985b9c55d7aa6a7b0db548d1bf2c317ceee0e662ae41738046d64a590cfa807efeabd3a9706b41f247c445b320f023074d185919582e8f0a253340dff8bc785be01cc70ff8a329c0016e981842a898356bea35b3944cb234f827142839757240302047c435bb5006730650230157e8fe49b570ba1d09a392a6f2b4e5b2e70a910e75002d388fa4f53a73773ac37e726bf8a8afde2495542f03d77ad9a023100a77414e3d14a105e62ac85feb1421b069552bd3b47653616a2489af691968742e0a11d7171d26dfa131e5ae11ff219a20302047c435bb50067306502300f8dc092e96c232f8be0d0cc6da3058ec56761b78181e47488aa7012bc94e8ce298fd5074776984498acf3c7ac818a6d02310083e85e2635457651cc5240fd099af7a815fbc4cdc26c4388e995347d7ff1a0b5c54c0828452bfc85abfe04411ea55b430302047c435bb500673065023100f0c179dd0f534bc6ca9eab73d565da9f487e596e6d75b3c5203ad54153b0857c9f10b91f774d09984d5597c147448890023015324d6ccaa4d781a3e52c40abd5f3965894ed860e6b9a11f3cd75c1705c639186ea6300f92f6a9fe884f6635fc962a90302047c435bb500673065023100a18b473c33b8c2898365135941b17b5a1c5eae5a19affe2d2678f526cdde2ee37865e94b8b7c3c3cb885df8ea8f3819002306b4ee5cddfc3b3e00ea1fcb3afd95c9d23f64875c0da0044bb658889c6a70ca50217b05d9e2c9a09fb9f9fd7209511d40302047c435bb500663064023004e22989049d6501f2ca85f7c65e7d757b63583cc99147d8cef8eb9a2eacd6bee60f39ce7004bd8614f20938ea76bdc702300944436a121def5445e7cde6a04a42a2776ea3e1c9ab4103ec90baffee9e5044debfc0c080634cf2d96cf8e690a8f1960302047c435bb500683066023100d04676b23e934467bc8fb2fb60a164037af544021a94b0ed66dcb593a03ef98639472dea3ac12292c862bf21f4d2ef62023100974717881e3049f4bea5523fed417c0805f760232d8553382bd433356a4e07c7f8f0648272b9c418d50cb86a037cb0f50302047c435bb50066306402306e84df89163b0f97e5d5f4625adfad70fa684ed05042567d3f987c62ddedd1cb177a06a7941882172fde16448098c10902307403ca7cea9a5ee1fafedaa5fecf2bbc844358f1c2d81ba8de3f9373a0c994a8aedf42f406c759fba3bf52b50aefc0fa0302047c435bb500673065023016622c4850973651f82e21549721e785fb6459836b566cb8cf55466a91509235eb15f52b1639a071d3f3b238f12f5117023100f2752cdad61571590a660a3f378d3189bb920984fba90060bc7286a697bc748fcb514b984913079d20dbb1a5aaac0ae20302047c435bb50067306502306da02589b75ea1ad443858deb5d6750589ce78a2900871150455fb584bfc0e71d75cc5d8b7dc4bc5319d9f915fb76ac7023100a1a9bdd1b1de3207a0558150c545aa96bbfee378d2cfd010ffb9b73fcf2d763ea757c25db5410439cc0cd114858b07ca0302047c435bb500663064023051bd23bfc36f7992bd9002a577e053d6017eb542c1697b08d63ca2fc2236b35e94027d1ef37969b53c314941599368800230039d639772cf22c941be86f760b3cda1a10c9353d322bc41b1005d7a6f5bdbea5efb31dceaf429b713f9588652b5ecac0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023065ac129cd8b3208bcd49556411f4eb859ef2f09ef1049976b7c49199144fa2bc9ab201dc8c928a729de5ba982a33a368023100e852ea33a831e1f232aaa20edbac99b5a41cf87449b5696e110e3abc58f9c93534f1d42bec9828f2843abd83ac4104f60302047c435bb5006730650230455c7af2f73cdc93f5d1875763e6eb0e44285f9239e79de2b3e87d337bcf0c49294cd6e32f10e50c472f1d508c3c9393023100bd1560a2ecbdd6ec7e45c82d2990e2d9b324e98fb20cb9cfa0b6a9ae6cdaa1e4635e3944c7070e5c2085b40fda350d890302047c435bb500673065023100a24b1f9523f9091bdb56400cc2ff4bdf24ee32b3983b534dbad79ef490156a56c432ba402210619c3098c759fb307a2402305b3ec50b883f7bf9959db78d98f863cb601cbd6fb20ed4718480dbcdc6ca461996585ba1fbcf18c73628c0ddc2ff79170302047c435bb5006630640230380a1d90e948b0fa9add318caba5815bb89f5df912ce03e5591141e026387279ca1b9e8f1a09083e33f88624df65b3760230207e1ca8c4b121d97ccd1fce021e40e6218d3830e14999ca4b12c2aecd2dc7192d755e6bea82c6f6375339968abf9c590302047c435bb500663064023001635c3b90ea0076e03f3a817931f7165227f48f16ca276b05db4ded19fed3b908cb736791c92a3bfc8d60a3136515fe02303c96d3c133a289ab1d9bd8e52f590574e1efd96192775fd2456163f57c630716bff4efe437198822f24ebf3534e211df0302047c435bb500683066023100d5fe0d17b912f2336ae70b51caa92b29728176543123724cd47159aee9926e4e7f739a3204a785107161efab99320199023100f7722d943d7f03687304d3cfba0e8cbc75e9f294b1cd492d81632e643b30a09f4a09a354327dbc337df32b37e12bbf7c0302047c435bb50067306502303ae952ddf62ad58e42b539d67aee008bf8f00a086fa4acb0382e56fb6a16a0348fad1163448344aca6cbbe6da366c08d023100df15a227798fe7f5b8b8b44c6ee5664e4f674a189eb629288c547d36aba66d90ba74602b0a9264230166e6cf43d3686f0302047c435bb50066306402307f1d1a7cf252083ed68755455f505d4c9dee0d4e26bd157c9ae7d6ba5e15664006002315673dfb7e37236f39646da31102307e93323a42ad319eef29d3319f60d1a26b7ff7d466899e6b5df69db77ee5cfe2b6952aadbfc7d63fbfb574a96fa8f3b00302047c435bb5006830660231008d46717d6ac432721b8cb3e3b144b5d8130c8b8e61ab55edfbbc1863888779b0166c74a90e25f35c6c1cf38daa5697aa023100bd8e8bbe97d211ecbc1b9102eabfa25bd1c5fec001da09812ae5527726cc8131d3f3d865b13d2bb7ec105d48f97be46b0302047c435bb500663064023064ddbe1cd67becc929cf59d01e87b3e7c4bc2d62f01635aa57c2dbfaa0bd949b760797e9674db5348ca7905b3c372553023052884353cf2cba81d9a8ffa158b191607e0ad8ff4eaa40cd1f0cac08477a46c0d61682bf36c8c6e57217d04d73a085650302047c435bb50066306402304195b5158c2bb44dfd42d79fe728e58e61c61160bac2d974f229ee8877cbc33dd0fc3c6ef28fc5b243aaa482c6dc69f00230505475728ed2fa25d7ad8743f2726c16deea46b7b7211500d48994a3adca3f6bba8ed3a54b288b9b541ee919bd98148c0302047c435bb500683066023100f1a9738b0eddb70fe73e1c88884d88bcc453fef1ffa93527d673b6b913487924d1f0c9a7b0a8fdfeb8f5f223de2f95ee023100dbc2ee4cce280e89070273e334e3f5cd5bea64bd1e947b67b5fbcdf5f9746f7b957f02781613124cb93f445870ec41df0302047c435bb50067306502310082383b1bda1e2a479ac4b4ce24b038d6314a6a24214613387487783a7eade2a8f2f122ef117975c2673cea93a6af8d1502300dba4319a8163950ed158d68607f341f5fb3fa342444321d6046924ae944235b4fbe8553f2ef37a0c4ba1aaba5d5d7b60302047c435bb500673065023100f27d8064f1edafbb8e688114745a3f8410c23d53f160ea6a75c3c6d16564bafcaf6aadbb03a7243f51d05c9bd23de31602307ce8b202bc3da8216e5a25b049100da65905009b30afc16a554d959fdb35028e9d48c999dc36d90954f310c8dc2f7fd30302047c435bb5006630640230415b18ff5df3fb6d652de7ab7d7f4e95373a0c898a7695d416849dbbc9e346af214173b362aee42fa1aaccd6a3f611fa02307996a494780615987cd745c1722ea51efbcff0af0c55fdeaa765c8eb5060f0951c42cc8cc4bb1247d85afc7abe36d30c0302047c435bb50067306502310096c2a92b4fd903227bd9a97f721548a4ca37cebbe5eb19921e07b3afbb8475726ecfcff9e605d8c9353a004efd2189af02305cab5cae783742b42d341e9c46f1b50b52a848ca407d58427cd22e1504e57d5717ca1d72a8822ddaee750cc5355c78510302047c435bb5006830660231009cd5a1a13b117faf410aebc0369a0f89c0a8d4a5c3e496d1118a770fafd150a06febf872f4376498975e1952da5b535b023100db21522b30294373a503c1c62bcb062138d2ca6c7c69a882006bd160153e72c8c039d96188676b8b227e678180ef8d810302047c435bb50066306402303a29db79c16581310c392924e8898e0dec89eb66fbc2de28960bb208430ec79d7600cfe620d50557300a3bde4cf451de0230167b9d1928dafd314e0576afa28d066ffcb3d4820567f3f194bb52d037a63d24fdec3a33fc81896a947fafd6e13a39a10302047c435bb500673065023027a0fa39c5d063f55a466c544a5d32bdaf41a9b14a969d6866ee0db28529f3a3a7eeb2beecd1cf689fa1b94c46944a90023100ec8f03ac33c5221d2c46ddde11133bd01f081ca5ac257771f917315b18480e487f3d840deb3eeee604596b6f8b0593ad0302047c435bb50066306402301ee475fdb0eab63cfe7c62cfbd7a82e57edda00feb9a0ec5c0db1e33f5ff29b845d508d8aa5cf54cf0120cac4aa566d2023044bfa5ef0de23ad0cfb675957e8b62ffc1e699d3def2e09cbb0d02463f76ede09ed9b133dc577935ec53c50340b7ba9b0302047c435bb50067306502305969d15265fdf6c7ff812f5dda36f96c55b62e915e2e519be27f5ac9075d80a7162bfa4ed3125ea8ab9514fe5b9a423a023100dc1a624509a474a9bb60b2e86a801e503d6c6fb0491ca36d1f05388975fc7bc81e9094d1050031b3e531113f72df91710302047c435bb500683066023100be561279b2263be14bacbef9280bbe5aac00d326c026039ed7927cc51c600e7dc343523d9f965d0f44d94c8cb2f32747023100cca56a904bc0699fc5ab4683ecf629492d941190cdc9001d6fe62dc41fe6a42609f79e28f885271de3ecbc50432278150302047c435bb5006730650230772a6f9b38f1e88513b243898d45e50f4bb87fb60e51346e262172329fb56593b983f119190016ecd5a2ec3e14dd485d0231008155946b83ca3dad7751655b07841f55c6304f11a7e608e2c3ad4d3d910ff2aa163fa2bf48fdcd042b8c6b1e23be20d00302047c435bb500683066023100f541e1b57148f925d2b15b85208463e904930544d81d360c46347a8513cb19447c7756729f9550256fc26f1f79bc9458023100a88509cfaf8b91d13b58eff7cbd93bb6ddb00954e6464635eaab26487b7ba63552df4119d398206527bb002fc14273430302047c435bb5006730650231008795338d83fb905b963b7eef0eb82ecb562237eb42aa476b9bc4d35b153c110a47180b81c447132b2f43a1bcf12116e8023000b03a532517fc551aa7a45373cc9fea9eae9bbf6c518f236de6cba700ad9e3c928f533172f462f8cdab542b36fc922b0302047c435bb50067306502303a1a4b006f4ffd1d9a4cce400e23876261e7c9871d5230af0516f61a8284e1bd5ac8fc509b2a88fb00f6e3b80c9de0fd023100d462b2581e9a9bb240a362199d7866c6cfb62d23b4a0bb5635e6399d95761a26733c60b0d328b02e17621c56f651bd2d0302047c435bb500683066023100e5307922143c66859a688099a3a36160ce852dc62e647f7302473cd76ee782c9e4824e4c278ab053e67fcf869cae223a023100d84a533a4250e74b3c5d221cf27bb1f078e0837de8fd43cd501e5f1fa5d157867bcbc2b86754c6c49e4497aa94099d410302047c435bb500663064023038925330bc5b0764170977e5375420021ab91cfa53e8abbf3d72025edbe8bb4665e4d3ef06592abeac534ac13daaba50023028090e9c50fbd795c872d0f7b6699f36d769991c8429719ff98dc3960228911b61800fdbf154294c2e3ffdec1cb1b3050302047c435bb5006730650231009874234a3d0d7854c78e4090ed4742934cd3d5f5dfa1e536318c5b272695b09308911f79ddf4c6fbe520d6b68171d1040230626ffb0f868190305d063ea0d296de0673e3591242e29bf82548a417a214874d8ff70bdafaafddf36a325a5f3cf8c6e10302047c435bb500683066023100a6a93b7bcb9a823ea92c44a7d8d018cb68d43357555c2177690a9d72fdeb6655dbaa4b88232199431bb6f31bca14e0ce023100ed72c2dba31c7f6c814d75a0fa6f18c74817073d65a05fb5c854794503848f14e575fc5a88d2fbec5fce0f29341e151d0302047c435bb500683066023100d674cd0d564ecd8ec9825e1c4948dd57b8da51b9a943ae9147ee464d4280e5ac045dee1de54f68964d9e4b0b2b3bf73e023100bfca0b053aa6ed6643f81c881bdddfe81a80d5b924acb0fb6506a3e7b8966d3f86ca89413f259e3630e3856fcfd2e56f0302047c435bb500683066023100833c03204a25523fc32ef4392febb954f8f1ee576f8e48a9514bea462a1cc5b4445c59398a8eda23b68d5b662b3a42bd0231009b3d76d2db06f7e5a46486ae6a19fc3b26a0ab7dc163eb889c4fad65f4fe604e558658964a53c927b4e020ccd37487170302047c435bb500673065023100bd783626211a13960266a2bcdd8a2413d5116fcd0a25a5615d6fee2e97098938ef826764eb2c88ae4b2409539b3125d5023079f863290b60eb3826cb96049bf73c943a5eb0db654c37c910d8eaab3b7162eee6d7bce9775dd4d1e476b8e0832398b50302047c435bb5006730650230689662dd60eb2a150e04440e25b90a7b8ff1202033456a087f9039a4f697f2612f288bd75f0763fb6930ecc3011eb4c4023100f2ccb0f766e391695cd92e450536cbe0232b06c785ba9154cee2d7c7d795bd4192ed6d31c3be3cdd78cb68f7794764e60302047c435bb50066306402301f9ebc264384bdc558ca04088610cbb15e639b0d728614602f7ec8fa412994e6deae0540d1dcc6063a11eaebbea8773d02303508c76f7269114d7df9bbcba2b06e258a1189886b5efdac66e5e242aeb69d886ae8ee612c62ebddd3d81fb51d8485300302047c435bb50067306502304b9fe7c6d8b05fd9863e360d74cd51f1650f35a4c4224c7e13d5b3f581fb4cf7e1a417c078e84ef609c7c44376d81b86023100ac98c8e8afc6dfc1c3c7243acef43461a576f551eb25eba1b6972b403b70866327544a6d3f6b418e4e71f06e0f232a6b0302047c435bb50067306502301f9ac42178bbd4076d85c8da71e5e163b2ced159cf7a402ac893d3120c3061201ebce2d47678497a270bf65506f6834e023100a088bb4d0b78ba0ea3db7118ec9764360ed1f09845c2e6a4b28b92e0dffe650bd9abe8bc26737d3a8a3d31601970e0b40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009c1376424e9f77fc7efbf035ab8709da4505c7083ddc2621c7052622dccff7dfba7ac53f12fe20a0bdfa3b705fcfc6c1023100e0899bc4ec4cd48ee9f7324ba8c253f75b732a5dc8cb067231867091d7e60976b9dea9d48f29341a9d5107c02701779f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ef79420ade27b24d756643b85e41bedc2d7fe6435553c88397defd458aeca45ba3d5003e1a7b051f8dc5efb697066a360230315593fae2a31e078de0d00b5fcd9af99cbf59d00bcd7e490a6e46cf4e93cbbb1d4fbb3db9248ff048cca38dffc865840302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b5d6e94b719ba24385e2bb03a0c8953fc97241113f025a21c964fbc0f02f72206536d5193f653a11bee6428a941585cd02310093646ffd79da395ff957b0ff04c4200a397e46fc3edad852ee75d3a2ae51c5692af04aa5b7166b61c40880eac0327e490302047c435bb50066306402307c007d585e3aba740bb1ee5fd20c243bf79a11b52eb9cc758c6c2f6c9a5e097d131b169c65c05b07aacf6c95fc196e9702300b58db8f1c2f20735c41f4fc9ce0a8249f97e0797d636a170ef8c58db5caefb249b645dae799a89279a1884ab26d46a50302047c435bb500663064023054525ed35e137ac271ba1a6f34e9f8cab0710bcfb37cbbe4880ff9ec38702873f1ab3137073d5a08ec3f72aadbd5877102306e87d8b601a7caafb589cfaa85cb0c5526f468912ae780366810c1cf1993ba8481e6ed44cac283d992b62f4e3515aad40302047c435bb50067306502301e79fe222fc3a9c10ceac1aa056f4865b4530b3c59bfd8995a9dc7e460c8505186aff1aea16345cc7e3c7b9b7aede068023100e3153037853e74d1641c37c340dabd11de8a005612d6205fb803db9bdca0f4b9003e7a2d4a92cfdba2f3506559008ec50302047c435bb500673065023035ee3df2fe431b996e2c51c29198415138a0b46847f67d3d82b4e45e2dd2c4553ae6e697ba88665e8750fe957f370e41023100a4a2e78a3e15e09de594e549220c73bad0899724ec9952df61dcd6262baaa66009e1300f79f5260d55c04999a31d1ba40302047c435bb50067306502301a3a929e162c8a2e541e69520c289a63ec569971850d39d1c920c04ea99bd331c8732900be566378c8e944b9db6eec42023100e7171a2e0508a68a64a0517517a7ebc50c4508d290c8209c73cf699b0c3c18ac3e1d544c526a3e494ef277ce23a024660302047c435bb500683066023100a4a34529dacce3ea3943599dbf30d5fcee478d4d753aa22bb8f343a7d52d6317f51d72b2fb8dac3daef6e7510c86052f023100b5e83c4de4f9cf68af81d592e333d26440990d5ca368d6dffebef26078ded86d2a9a11f24fe1b2292cacbab600a675c50302047c435bb500673065023100d8a740da7766721a846c1897fdbcf10c0d85c77f6cfaaf8c7b5e443894fa5818e295a5ab872e6cd0a954cd9203ade98b02305c1a5399381db3de88278255bd29e0fae42abb867dd77a12d01baa2590a76b494cecb2d3fc4d2c3d5c7c278f5867259e0302047c435bb500673065023062c1f250c94b01aa825b10726245b40252b4af1cfa0ed2baf2cb3d0d3c73279f5302b5c39805002485fa02506fa39190023100b29ef27c301a9007b8ce01471de8ab75730006c4709fee2cb41ecc26731f0aed50447577c4570a1951fa8dc4ca38e6cb0302047c435bb50066306402307411319faf9e9aa3d01a62cd1ae0de741534e6c0bae1667cd8747935039c69c0dd3a13a45a445c3613771913164f846902304832814e1627327e3ee6dcd578b355e677915c90a02cc58804c3514b64dda44ac15f980f6f1cb453a29e8ab662f91b1b0302047c435bb500673065023053c275bf97029e4a4f394be4f9ec0c843eacf98d42cec64cd24609f19619b95faa689bb2241071a477d7a16a31557fda023100df3829ecd34e2ee0770c81ef927e62701af3774e11b646dccb7d0c3651c2c93651b8bd6955fdf9d121972753917846eb0302047c435bb500683066023100dda59e2e7510dd162a0c97a842950e2d347053dde9cb558b70d7292c86712080a7ca344188619777322f2181dbfe90dc023100dabe7dcfc9653674f95a4cfd211ed6cf488aec4f5db64e2274949e7ff2bfaa9e2256aa815bfca6f4299709f13be92d500302047c435bb5006830660231008fb3bdcf7159a1019d21b4acf93c378d940898ff73022b3875e3d1adcce294c26151933b5413e643e4a8bffbf2552db9023100eb59d9b888802c8bfd7bbd2cc3826f279791573bbd4614e40cd8ed5446bc7b70abeabecad61adfd163dec80f86da4e680302047c435bb50066306402302e7b428e12ca257edc93167d472ad5769f167a492a5f154a1cb26ec80b3c2f427665903a6c1aa22a4d0ae0b5a2d3c3e002303e28fa44d31ab4ef5260a75475d3e345875bf080c2ebd7483f55b9a83123dc188975f128c617b6a4b7f27c3e4d6ef4660302047c435bb5006630640230309f93dfa49612711bf3105ef3530b8cb005e987442e8bec3181ae33095e0d49a4245786c8f549eb82e5f943b53e35d902302a79968572634a74cc8ceecae3046c52d40f8f1c684f8edd4e71636398880c5e4a50d8a54eb5abe8a3870ed00b361c250302047c435bb500673065023100ddf37cf1ce6058781df13983a31e7b31f1623528734a4e5efecf14dd948929594ad5ff3c1d02f96952bfde1302c3d9b802300b629f3b996ac517f3ce2a960f4482c1333b23c6f662e2d8f989788d68ca884a276a37eb3eb9e6f7b3db4cd9523a7c2d0302047c435bb50067306502310086c7acdb3d2161dd4f24b8861f6367f54dd13ca2c09a9cb2bc7018c0fa88fe0ec7bd3cbe9ea1c4743543837331b4fdc302303592564e35598daa758b8a4dcc4f2534461fd28b24ced3a80a0cf2b9c602b954b25c8ae551aeea4b6fc4d116ebc760c70302047c435bb50066306402300ec02827c11acefd6209d0a82bc7830809b1e37616e3ea5e7339a55c7e8c3bb861e3e4f9d27b101d3e2664e761f22057023036ed81751e3e9e1582d72ac4c8cc36e68dce328ed1b213bcfd2ae19dcf013584a8dceadaedee0d7a430278aedfd995c70302047c435bb50067306502306b4b73a61f31041b92c9b3c4c926c11d7b6559775077c56e32e73ef7917309b3f3cdfe7dc1021165cad78b1fee68cae7023100f0938fa4e7ae21744f49f8ec4be59b12c04f4f4076a0d9c29d9c028b7f3a71e6be63d88211d144248b76276c62064ef60302047c435bb50067306502310082477b580516d214409998c8f44d00240599c994b2a9be7d5e88679a48fe95125b62ff4cfac9826fdf100d889cee81ec0230443531b8b01f0ef8d9656bd62d539d30ef59ea4b08be23074ea8803c9c612f72004e1d21c46dc610db7edd39dd0d1f0e0302047c435bb500673065023100ab409a1ede3fa5b01e8343f4f59fb0011e79b28b85b525965d9bb5bdc22cf08feb88fb1d11224d2bcea6707e916a47240230227ce1883cef46284f71bbda46dc88ced5b809ec6dd07d42e4fceb79a7e15565546db2f45bbc1849e29a4a7a950ff8480302047c435bb500673065023100ee73e06fbaf7a4d20107650d4ac246b38f835f58df15cad54bcabe5ac0212c1a9a11429990f42ce7928fb89b6215103602301581e506cbdb15db7354123b1e417dbdb122ad9b5d3815596b0a3dbec1f0c31bc99710a3fe6ef335b1ddb632177b9b560302047c435bb500663064023032f7580c92823e137acbd46547c0d7987d4bb2101b3c8adf9ca9c7f15ea055510acb1c2374b07332d8453c5165c2cd3e023050390774b7b360c1cdd79404a288a6af0d21b84b58573407b5e1183190b489b17453f0a503dd7e17aa404795c98d41980302047c435bb500673065023100b41e977467762b7e72810ae6ae2415da5ee5f26d0cf9f94cb203a6f5a6d4be4af92a1cc2861c54855ebf1ee6708eced702301fc9adf2f4344a882c442e67a1441323405a0915cd6a45dbf39800ee5325aa896817208c43138cfd09d4af17953467c80302047c435bb500683066023100cf37b91646458d4ee2a8595f28aca5dfc8b430e60476f4e990ce39ae501b836dc1f40df69374f2674b59644983c1de6e0231009e889354c94f0b9a47d55bf74cb7db7c7b98b899f0082ab8916c44b9e1e4e4be8054245199ef344f9d377d35e23aed990302047c435bb500683066023100c298394aabcfb5e50e492684ad6407bc188efb7f9aa1ff30c8d0c42e1f07dfde5746e2c5b53fccf8df04491138e5ca16023100bdc922956aaaaca0bc547324ac4759bc0ec84c532c83765500034aa2a04fd91aa0086e0721335d40b068f583e76cf81e0302047c435bb500683066023100da11664e9cbdc2def5e967b9c26303444d61de30ba696fc3947648184516224b198df8b835f9060ea46709a49d44baa70231008043dd0e466b1404ab858e73c26f6e723daff03ddde679eefa1d53bd026621d51dc350de02d92e50ab9666a4c9f667070302047c435bb500673065023100ba34a06d95b0dd57129abf3a5805776e0f5468d403dfc6b99ffa48ee6b84f05232dcc02870093a5042847afe9ab78a540230212136b4ccdebcce505566291eb242d04bc92ae7a25f590d2fb30160d22f9dca24ddc4be0479ff4db0237bc109b0620e0302047c435bb50067306502303625a04f6ffc970a95e8bb1fe2bb58867f0b3d2e9ffd77110471a5aaea50688e7145f9de58c0113c6dea298429c5186102310099186b678f9eb0f8d0ec097d9f16b5357407ad140214b407b0c4f0a8e00d42b87b7a53c5119a71b72f4ea26146c82bab0302047c435bb500683066023100c2b1b8f5c5e08f39070255cf5249fc44fb2b8157af9e5e846fe5ece4477ef0cd92beb8377af6a091a955a58ae6a495fb023100dc5c3b82c6069bcefad9f5b08ff4cbd315bf9e3649e3033c9fa57a8e0859e919ebfeee1c44c638220dc2067a67f72d770302047c435bb500673065023100ef2ae6fd8305cb94fc26e69eceee1646c440438be980bd8d28feeea17d0abee8e55877d11f8e22d342f3cff7bf2f342502304e4d56f24b18a6bae984b4c1a68f703178b7655db9d6940879a0b3365bac186d7956478a5288198a36cc8c50bb20bf650302047c435bb500683066023100c2d937ea9bb82343dcda41ec979a34eea3fa295ae568ae60766c75e7b456d8736653ccf7063a76ec7e50f69b6e8af71f023100b7be1d579d5e935a5b4723af5e1099f69c935a711124cd20cd8a6881035962ef4e890f14e1a833b2ffcb8d51fce0ea250302047c435bb50067306502301d46aed38f01d0bb352d2838f7d9ce4b76eb7a7106ff5eb4d468ffa745201b5b9fe517530c76deb6470f4a3c40a7d2cf023100d477ec3290b17a5474008217c37e4704cafabffa0de1bbf0bdc215996b08b069018af898720ed57094a3f5ed649b04040302047c435bb500683066023100847b6f50aec15c2a051460a3078b4ae06974a44428ecaa3df87efbefc58ae48198fedb1a019c05cdf27150fca39d61f5023100ed205a03a2d162c657f73a627d2f06603cffd4621add6b2b74b8f54f29b01c70c15dbc31b9e165d7c40ccb823b9b8c920302047c435bb500673065023028a69a8129458160b0aed93b12773dd6946eeb55e713023a485659f5cda9d1106c8da888802491a4cd586269a4aa9223023100b4671863a99491eaabcdfe634fee08dd53d6e286fd981ecc9cb253a4b6838d2313f01c616bd928d270ee3153fad35d5e0302047c435bb500683066023100c328d842147aba92ab2715cf00ee9dbb397b4dc56e082e685171f851d85acfb7a72a318d07452b4508c7aea6844f7d42023100eba1b240df7631552416f8b6acb28d7d424815779f2cce8083b9ccdaab2b19396a20ac12fe6553bf5fa79bef33240b960302047c435bb50068306602310096e721ae397cb2a14fc4703da13d4629d7ae5708b51833ad51e55427be8f4b986a2e8b51a4ee6efb7d85a787c2bcc720023100f3e1fb65ff790744197eaa28408fc2d30fc008cf2d6d67bd44cc61945a1b1c0c7ac71ca8deffe6e242ee7ad31455bd220302047c435bb500663064023020fa027032316db668375f3e6732990911d662e4582b17b2057f3d26efff2b150f9ae4e2d9cfbba6dd0a5c9e2b5ae020023049d085f09d0315151e12c078e6ae8a21e8688bac8b44559a6d091063559be0928fdae7fcdef204c3f4a5f3cd9a6dfb9c0302047c435bb500673065023100967f610511022fde7b9d177b61c4a94fb91ab1e0910e6ba753299d1c30c239e94c001ff7036a18e9626fe9b007730986023065dac9d5d2b6ec85048d6a07ab4b31492ceb37ad2b321ff74e3faf47e1236cb88393fc1e19f814ecdaa5f071a17267e40302047c435bb500673065023056deab69122f4dc71c61372675045f7c4ce8078f6eb41da97a44dc4b8babaefc07b25e6c45511e6e79eaa37fdaaaea1a023100c8e96eafc720a2c9487f1a3cd005eb5f12bb3a5c1e493e46986db1c97ea320efc0d3add0128d11504a0e6c059efdf99f0302047c435bb500683066023100fcd31af54a4335ab8dc28d1f1a8f5a2ff6cf15e45bcebe80115cff0e4e450d28538db7d268b7f93f18ed15fcd633e8ee023100b3c6d57c96f65a91bf6c583f83184b0632681880e07df22ff503c8bca9065a9c2b009ed6214494e94b2b5c0bebd5e5c40302047c435bb500673065023100f6501d2c25278c23d4aaafb9a92ad23ef64158db23d0b4688b29b9fcbcdf2257e5def3a77b366377c16204920e6a7ef4023011178c9af9c54a661cd465ae354f745598efa9955f3fdbfed6d3eac273003097948defe8b5aca9698359ee0f073533fb0302047c435bb500683066023100e71992e96a987fe53440539c8fa0b17d7e0e345cdbf56d2afb8c6c508bb588508a917df1a7fba9656dbced84c7085ff0023100cfdc6edcd22ede975200d394bfa18312514f6e20d46eba08866c40ccef8701bf473a92a8d2b4b5196bf095e2f6237afc0302047c435bb5006730650231009377df69523a0520ba1df35c7141e4474aea252bd07ebedfa40a89a0c9eafa5150b4bac1d82193cc073ef5e385d5a8f00230254060f1e467ef12ffa5da26010b5f0062cc313c1cbbda08af1f5bd5b38bd98cfb5dd8e82ed8f1231271cbba42bbffa10302047c435bb50066306402306f8fe6791f6cdca08b1ced447e64bde3f8a2fb2eea15862c442d7a9042b170684d4935befd5f43660aa2315ea9b8931402301b8f3e078be4a29f52f2fa0639d0584f82bae7e8ef49555fb9d4796bd021d8fb8b13af6f627f2c4e105c6c9547f3c2130302047c435bb50068306602310087599ac80b5613de19a72010d11603fd84f31c013e2eea037f1900f39a132da37bf3b741daf1e043f9cc3a5a38d6b4b2023100aae116702a0c458c08ac963d4a282b502d0498b85fbe7c4e136fb43a17799cd6030264e0092548fedc81cb0579ea56890302047c435bb500673065023100828cde4d92bf8cc8682b81e1c5e1ec3764c1302d149b29ef97eb9e7cb4dc0c4afd5216e4039b4c9b46dd942ecbf6831e02302f77728a4596dbd2f73834d6f8ea58ca6a2179a1c627794d6d852badd2fbffd151177a88d792368008abfa16ffc7b3900302047c435bb500673065023100c6a3b39097a81db1f70a70346c0b71a4c5b334c55fd3595b0691497ccd004a106dd0e602ae5d6ad5d9d776a072bbeaa802303a20c4419ad74944fa5d651479ac9b616fda43d5afc174dfa617b7208bb7f49b8d5359c6f5381ed5c9eb05b897676afe0302047c435bb500683066023100c5998b43cb7d2230b157dd507f64b73c48934881432e05731bd4311ddfb10af71b3120461cd0b9beb57deb3e2695d696023100b5494c8b178f0ca9b269fea1358ae17b69e1d0ce044456fec71f70b1fa5f97dc8e0b0285f2b17fe1c2d0b4065b54d5100302047c435bb5006630640230658fe339a2d44cc1bcac9d1ef2d8d09f22835c340c05684d7750998ea5d6abe75f2997e6ce2920e842397f50de471c9902307e893f1dc1ad751a49c62cf5918584b20e67fba59b4c618bd3497bf371a6440e5b6f1fd6fc02082ff0d258e8538f99e90302047c435bb50067306502302d0e03c18d63243bf187c3f103b72d2b982c1f6d08812a72832a0ca1f61c72b21020a8e6b59f3e0c60dd5cbd0ecd8b6d0231009c228f173ff9db08e9deab02ab86335bfba2c1f9d6174d8f4d019866674624bb46187fa670c9dd6003bb2857364cbf4e0302047c435bb500683066023100dbd9055a5669b38f5f279378137003f6a75210ef6dc6d64ee34d9787eb45d2e8490731cf0ee45b069009c24efef84d5d023100cdfd08132aee72ae875cee8f00cd9fbb6c6e1d499599cd34abdd4abe72b854a9829953ab8d1181e63f47eb915b5d29a40302047c435bb500673065023100df3a6b8d10dbed1d45be78356ec91ae27b5f4ace16dc3ee2a7489a9a3b8af98f424de43dff9c67006f5eb6dc3659590a0230321fd8c217c4450cdcf1b93b8505733b0c707e0a60de9bb65cb7a46382dd37e011ebceb8d2edca695d5e817733cf46570302047c435bb50067306502300ef3fec7fa3a7b389d801fd3e049010a8cbef1b634249ede5361f47f4a987f6fdc0100d55dbf8a82a54b28f30efb6a77023100fb560a78f699b7137f9f63649b1ff7e8c59c00dbabf4c19287544a4097bda4da864bb90670186197b1cf0705e76f919c0302047c435bb50068306602310082cde9579d99cb5643c1e38447bbbab0a349bedee9ab2932ff50824f2c586dc027fffb187e15dba65b6b5ebade214bb3023100c22b6d720844a8bed58efa8a9a4ceb9c3149c5500adddaa5486f6bbc79ba0e00d92683481b50af5cc22427d395b2536f0302047c435bb50066306402306e4ce9b14fb17edf97544a885992fde134a7cadb9e6d983475af8a32ce6710d1dac12e4a121ff9f2b1dff07a406c90d50230290cafb9afe7fa318c8dd864e8ac73995180158e1c18823904e7765e90f430a66d6382b96f281c6dfd5a7d0ed3afdb5d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d3ed994f84c68096f3097b27d043842cbacadd46cdab9a363b1cbd55128666002abc56f5f04da1426cd963654ff713680230071ac115bb4d211f771d086c5998020314d3ad0e4c64c4e4b9043d50eba1ec3f761a043ee40885e4c02e04e5a30154100302047c435bb500683066023100ac75bfe12d584ac61f1ccddaf7fa63c01563a068ca04553c3befd2ae50ce9108ce4783754d313f236b6115680fdec6690231009eceeb6f8ae69bdc438b93f9bf01c0e1ee84abdb1d85f12806cdf68c79f946d7bb1f380d6aecf07d57fd466f698cd2a60302047c435bb500673065023100bad2ca708de15952b2aa1843b98d22985204c55c0789bb8559f56bb094c83c8746c083f27690721298c66c8695f90a44023058cf999c104337912df11253eec7c3a9ad0649910e9f78019640e31125076b9bee86fffeb4eca6375566ff3f096c0dac0302047c435bb500673065023000912dc142f6e02c8bb61e602f2f1ab70a4c5577e417364463dc15add9a74f2408e9dd9426e98a53b653f9b417cc4954023100d821b8dc9d82d909a4325e7c7dba8703cb8a93cfa6bc38fe595e7f7d9c7e75797bc3a16ae17af9eb104ceb05934a54e80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302a2cab17d7a42590e00849eaa02b380ed7962fe393c2e09df19a7894e411a07de31fc2f35326e35ef2574499972635aa023100f1f1dc8ae66885370e037e71e8585ce2756cae173513d780868208507292a200b01a61262a57f4b27aa200650a01c3180302047c435bb500673065023018c28572fbfcdcb3046f967cf99972cf9a3caef08c94c57587284b8bc657d0b6944d837d547ff023cd380c9306260639023100d98e587ee173ae877c080e173956b6c8580e2536e6a8a79f46561682d68e37f646473aac887b68b0c06e2977a696510a0302047c435bb5006630640230650daaa0f473e66be2fabbdc95194a5f41317e67ccb8205fd0ee1baa486bf98586cce2e8cd5fea6ed0f62e76f8473e3202301e0776655c3a9a697b73f6340ee3ac36e0d55c8b7971de1bedb18e91c5ce3eb8f1e3f1ee2635cc2aca9a056a2b9311bf0302047c435bb500673065023100c623a4efacb23dabcbce2aaa04fdc65aabe14fc27c516549f4cfb68d6692e55ce920b373cf9027b1ea8c1708fa96504d0230761087755e1e78378821b9dc14d39aa11be6d2b07c17c4d4a8b1542bb6a43cba5e5e9473974614a0c3a30d1fcf7a1d4b0302047c435bb500673065023100d7cd3c2d90f5f212e7b616be41ace2150d11b3ebd5cdf0658d96eaf333b8fa5dcc69a2c96ae72aad812e887d3bd9d6ae02304cf0f9f5af39877d210ce04beec30d4a572e7f7c3162d186e34e2ae935d1fbec55bb27949066cbbdce36d7559b38a9970302047c435bb50066306402301d9ba5caf3054211e4e064ab20d47d5cbbf1adb2462637829b3c36dda5604a2a1bda721f68f4c080d8c04e59c8713b5d023029f765022994b28aebd293d0d0c933758da9bcd3e44b0678a6117ed71f9bc1fa63386a977982baa37bdfbca1a69bfbbf0302047c435bb500673065023100e6ed258cb8ef82b187a52eb5a302830ad869f8b95b5beb8d229705b75c810c37886ec66bc496d012b6f301c0504c67870230475831f4c06bf5125ce16f5c1d8039ab2be329cf203d67810384ef32d819d11cc5f57571f0f46e8004c3cb50078ff40d0302047c435bb500683066023100d2ea2bb97d2952b029bc1e10eb1f76af415eccea83b04ddf7f492327b28a305da6c23ec361fea755412904ad6e98edfc023100d18f129c231e0a6d56e52b7f70f9dd591eb13033ba8494f15d64d8679f44f8d0c62775c9706451acfc86e92353fd36c50302047c435bb500673065023100c94eeba8724a0a5c746f2f96e92e5dbcf5fd4580ee70509d7e4c69e8555034662013596b711b20b65ec8840e8f34df2a02302e50dd2c217ec8b17e2a6f02fdd0411db44484af1b1b3012c77f0d805aaec14f2a132270e589317cc1d31e9f46c7948f0302047c435bb500683066023100dc113abfae62662d5c69d0d50e8cb1f4d7146e7ae0c012ba9de3183a3c12afb74b122126b602de7f88fa13b5bbed410e023100df9fb43dabaa596129ff8fb1ece228fe1523c9d50f69196c95c02a0fc75495eaafe80b50c62501574a4620b9241569b80302047c435bb500673065023100d36320acfac09e65b0c4c3684c593a007f0755fc1c4e28bbc806574963cd1a965e94810973fb369c38fa684bceae43bd02300271d17bb9ae458f4c6c05b9f14078042c9318fe35797b33d3e229585692065db3babf9eeceb81e0ab918bd4768233120302047c435bb500683066023100b09e2d850433b3989df0ce7af7b500c07248375b843084fb79b7f41ae003a662c76851a28f36c55eb5d60582d97b387f0231009dd98ee09193c75660cee58bd780f6bf9fdaebd009e5762b5373ebfb680d3c32c6148aab3b4dc9ac57acddfe307c93d10302047c435bb500673065023100bbee9e1b519d2dab8a30c57e61e74eb3261826e17ca092e268b32087312d93962a650973b776ed12a76b6aec0777dccd02307e6135897568a9a920bd37ce51415783f98859d84ecb2599cca8252edae59241d2829692161ad399c561f6b3df04867d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d5649640a5555406a56dd74f75905b8887495be49c719f71484fe47099990c94c9b4375ebc1eb6e8754fee54f6dc7ff6023074d89c894dbc26e19ea25f1dd7e9f23540eb6088f7bed920c32167c4a8ed36db7009a3922b566cc0e1104aec030ffa470302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008caa4befd521b9053d4b7351231d561f9f5cbda513da7be1fc4952b68278d9860280373b5f825ae7eb659ebba30caef9023019d3bb7bfb2dcd0487f146c92448a2b0583a78556c3b7a2354c7a39a690312b29ecc3863cf90fafdb52fd90f94536b560302047c435bb500663064023073191ce98ced87606562ba5f94dd57bc15f76de70f551f9b991552ed994e12de0bf2a3cefbd1cba66397a25384b68d3a0230357a3a68a159ed6116e6e30c6785a14ba24b914c5f73f91040a24025b9168395ee756844a72ceb1d72ee1e508670dc9a0302047c435bb500673065023100c7e6957cca67815152771e47ce4cfac421cd826ef2cc1d50b02b4852ac073547afcdbacf668515e2ce4189e53ba6bedc02307c3d333b71d7c8f7685bf3020c236d781c4e8c3547335ad7709d8d17edd0235fe9f331e895f387f200d7ce3034d9b0360302047c435bb500663064023054b30bce1383781a177c8663edaa8c706864fd5b6aaf06e1a224edbaae809fbfe00e3601ef96cea7c69aa571a119493c023034877fbd2e8844f78d9ef7bb28f153073a83240d71aff50019cab346f6103f214cbf07dc600736a577ca2490cb21c1070302047c435bb5006830660231008d2ded35a45372b1773253591181659c72f69fe8e3c335b9e7455afe0e0ee6ddd3a333aa7c776ad9282f787cd9429267023100cbf4bd4c68d8f6b05576571cec7305119356ca39a232c5051d983cdae675f015301611ee0d3e1c7a69c9470a26e6a1780302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a6c9875ff2a66828f0b991fab8c0e049b6195ee96c32a15a96a79002fc5fcb5fa979d9e2a43f39eb48fefa96bdc2291b023100be83a0eddfdbb156f26830f04e8b1d6280e44eb7d88d637219baa1191f349a881c5e460404000bbadfb2f35f4135747e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100db5fa3cda846b8ef2ae37355cc9e7ef1b7df3837e83cc9769508ebdc5db1cf165ce6738bb612e7c2dd37bf9bbd8fcf5502303493c3ff5940734994b6beeda1f0a69a763e176d05edf6944716de52e0c02c6ac5d189b0623b0aaffea5d48abae414c50302047c435bb50067306502306546836e6dfee2bb7d7cb52feed0df152814f83937ceda2e74c3b613661201c31e197004a9d9d83b2f9ce8d972b3749b02310087c50fd81f147f57c442efb170d962ea8545719ae1db7e5232a8d7d00725ac366b5abf1cabf15e46ea9335da57e659d30302047c435bb5006630640230069af4c702cfb6dc4e60761c586fb00cfcc63b2ed45b1fdaf9019972bdaffc1ea6b3a1e9c39e60cd83e83a5e3026b12b023021c6bbaea29a76b7eab233c514c7dd8bac730b4cbd81ab5c80fa93700a408357aac63125261f2478565cdc185cbc56dc0302047c435bb500683066023100b821697b839e0b65798cff4c62b895a554e0f759d9b9a8fe11a4b2db3cc31f1a7807d98ede7d53f7ce6ddc424c49c131023100b55be78380c59c1a6417cc2d635ee133fe8fc88574b232f006ea6730aa7774231f5f0671e4a67324ceace94dc77cd6880302047c435bb50067306502310082c36bb122cbb293fe7915b1268b527c9f1af6ded5b22040485ff153553d3ef76defa1122352a382719e10985371f3b102305ea27fadb4e63a5cf03a85bb469e8c04fd9399151e8ee151f6f96aafce6d6537a3c213e6ab209c747bf0cfad4d6374b10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f23f6b6f71c1a4c0a623542bca9d429eb16d2f569dbe827a2e50cf219d2146467ef5fb436177927489c52b9aa47362fc023100a2325a38f425b73ecff392ca27b4358c2263b74b634d5f88ea88880cdf3fd2dd493847b322c3757113a42cfcfcd918d90302047c435bb500673065023100ebaab1884aaa8e27525c7fb9a57d1fb50feddd129fb4b83e4892bb47dd026bf5035cd3f77c1a8b10810d7b343c3f092b02304506cb3e72866c357231f2de4ab7a93ba61865e8600f7134abaf1f61bf122178477729f27290bba7bc089dde5e28d0040302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304b9138961429728e6a11354f09ee512d4c7fc596d30181a5b76ab9b217c5ff2c3000a982fd56c19e425c6f087f6ab9c4023100eead68376de1ea59329256136f620e6fe3944218c5b2f3da774eddea7028d9632815b0c6a6322a6ec86a091209c853a70302047c435bb500683066023100ea91e5221058377c4941af48628c043b16cea4e05692aba00b9f7a7cc2797592d3a73997778c2e8475dde1d902306b54023100d37e82a0f1e80cc1c8f42998d59eab1de24dbd2b4625d5482735e8743c46bed7d351fb66b971c33d4aaf5fdbc55fea400302047c435bb50066306402300cf5420b586daf1d18c9e07da68bec185c390d47b7ac09bd4c08ec5282a40bcf412ff851089ba8df73dbde7cd94b5b510230104953852255b82815011307958660682076a907f99a93328b5e2360d921070b6790c54930f4df7e864cdade0921615f0302047c435bb500663064023070e10fda4ed2aa69c7239a1301e2ce9f602beca1bff06d0044647364f14fdff875468af34da2cc0bc14329687f2cd80a02302961acc749178a71bb3afd925e523938c839b4f91888cfbab3977d7ce629c042fd1c3836b3c8eb9c964459703a8552720302047c435bb500673065023058c59a8b7901d4edc6f9d4036573dad7cdd683288c2b7f984d7b50105cc8d8a36360c15e17bf9f357efbcdde13420e42023100ee106dfd97a5f8ffb7eb8ac56629d9359de94afd8f8adc5c208095e4c9d8d44e5e80b5f735641caf41ab3ecd365837060302047c435bb500673065023100ceeabe6139a2fc6b7d10da7568555b88683858249a4fc3216ebf2b9d5e58fb8c8c6855114c12a792d722dc49ee8c971e023009037c1ec2d7ca3dbe8799adb9492e0c6c871bd6df0d9b4666d7202ae9d32d5d103083f3f4be9fd4601aa434b1a87fe10302047c435bb5006830660231009a34639527e98742fc58fe26d71befbd2139bab3597245f18fca4d267e66f94703dfa1805b4f306095da760dc96fe258023100cdb603c9f6500066b3361f50a4163de665f1d8ac13f95c4abc360265c8caba22a4b3099b8ed46c6990405fad96bdf87f0302047c435bb50067306502301c674f543fc5dc38678d1aa70bcf0c28da15ab51100d9ab4855a13385b46dcecc5a4f86b7ee9dffbd4fb68001e4be3c0023100bc6708cf337627e8a58ef56ae904eb5e7c4009f749cab2d7eeae77b0e02f06e23a054b84535742cae2c446c25309810f0302047c435bb500683066023100fd22fc36f1d707a9cb8e7c92303862767a9d53c0ac3195a90ffb7e238df29facaba6bced40b81011b6dc14a0cf88bbbc023100ac90efdf9ca04676fe45e45ff611ad7d3db17782becb7bb001ceb5017cad0f2519dd80060c9ff679e8c81296344e9f1a0302047c435bb50067306502306f5af61037be5a9f807baa8d35377e831c75ac48a882e2c623f2523046986722140d944fedb680169001bc0432401a34023100a5c9022d19b0994b31e31aa46ebeaf0149b3f8c92dd8d8675278f20ac95a4b2e3120b0c444243d0c8f01e61912f3aadf0302047c435bb500673065023100ac98ff6e8b9bd99c52a5253b45f620c9ea0aa4ac87ea7e34c86e4d337e2e5e59a495bad1e8ecdf21219025166ce7ca7102304d3a1baeee621213f2093596697c5170bbbc67a41c29b482877a59a6fbfbd0df82254948dc2e416b93dfa1ab4b932d7e0302047c435bb500683066023100fe5de19f28a59c75ee6d23d7e5d96a2141dcc0e23cf2ccf03c02810c94347e0f05194316df5579a9a404829590d39e62023100dfc06c896306061326e3260a417c15b4f4dc4d7d548eda20c4ae09bda403e1180129ac5b283d5db9b0f14b3b3132167a0302047c435bb50067306502303763318846248b722fb1f820cf786bd1a601f1fdcec65dfe3724c58b3209744585bf83bc59a6c7a024c0588cf3083491023100f8e2a1f84b974189c28c554e2ce43ec628fa02989b14aaa58d2142a37c34a48b55994c958a941b470e42489afd89cccd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230485906d5292b85076e5d8e11e16dc3fbe64da7f1b64aa7741c0a59619ac2747856dbef2718b8ac3614189d68a5dc2342023058cd7333506768b251a5853f70c8114c173ef1a355774a3bdc67820405669e2ea70a6729f304c12c5e0104113e9d2b7e0302047c435bb500673065023005eeb341c8d2547daa4c3e181183e4b3e7c717a57e2873ec4ab89b0ac7898a432f63063b06308322e7b97cd180c1cb23023100d38b6e2504190f53d8c399e7e02d568d6a371c6281fd8e983dc8c22c267d4ed2085fe9e03b1b8332ca35a29b1ac0bd300302047c435bb500663064023057beb8de054084c5becba340abc0feba0c47e946b8f641e20e5ae5f9defe39095c4462f003b5472a60bdbada06d80c8802300f8a14252e24c20c1a5cc1476830f25ae83f58ec7f38f2b4c960f7f439cb68328c5f17fd7d4aa7ae6a07237febbc06960302047c435bb50067306502300264fe6464d5f4e771473cc80d694c98cbff90d5e4d6898f699b66448e2aa7dee5d73b31a2c006bb6e4beaa78771133b023100b7052c8ef6db545e8260587f22d4b80a3f9fc68e9a660342ae22b15eb76a9d849ed54d7f7b1168ec8bcd3183ad1b6f100302047c435bb500673065023057fe6817f44736ca988d8138afce83eb86a3970aa2593336d60a2c3dd34fb86e23ef357e3d09d493a6856c4bafdf80cd02310081ad9fbf0732ca25764e66987f041f609770dd215d0fabe5e7cb5ef08571c35e4fb53ee0b2e83bec47eec62a86dd1dba0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a57a14a9ca4fef31d0ab9dc510793f229487ae7f34f499f8407837fe47a0e9cfab3938d2da3ac580ccad5a134f538d9102307ef364d078ce6c4e9c98cd6b098b1616a1a1a90e0444c1d91481d9f42d29f7cc76c502ae675c7bd8ee805ab9c8a7b9a50302047c435bb500673065023100df39b46c5135e9094dec9fba87d1ad8a7c4b96ec1e3478763d6ab37b8f4c810469d3821d899150818d9af82fb925d94d023002697071895eaf046fe14d0e54ec9be71aaec1a53cb5aa008832184d121738f4b6e627ec78cebcb529c131dc2e18ab960302047c435bb50066306402304b2f260b3e1c3c224063dfe745b302ca35eb70e3108aaa2425f0aa93688c968ecc41716f249fbbb2b3cb53c0c3ba6c16023039899cbb483be56b0c4784e1f48c39f398977e2f99610398cfdc64e8299ffaf85e2c032c82dc73b362f6941d5df29b5c0302047c435bb500683066023100cda7d3206e9199acddb0eac7f1d73e6acd2349a8888199d85890217170697a2cbee04ca80f1a6b032138ffcc9a7b1c6b023100c1bf4748e5b0720bd70b0ef54bcb9a74383f9793ab54857768067f2d114cff9be3779feb3e895f00c26d7a00daed8d1f0302047c435bb50066306402307a3817e2a318ca7db8a7002952121f1c06c307ca9f70d555e64674f99fee5b21bc8906bee80ea492112e27577eb57be90230397292285c734f401dec2d43522bfefa3fcdf7805088b9784d32fc2c6e4f5d41c99a260a4bc9cae81bdcf752fa0624240302047c435bb500663064023019ccdb40c77662bde3296588547cc2b1f76c7b8e7ae180ca004255430107c95b972048dec4b09d905bf46e32c9c3d8d002306b04db6d551f9ff51f5f7450dccc7ab35672ecc94a9bc84823038bc1721e1ac5e40da86731109751e7a346b5ad663d190302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300cf7f74110903a2e8fd0f2d2a9506eba089ce63db17a2c7169b31a8d1613a978f6f9a9e6e4b90371df3f1188a0852094023000e66d8dbdd4a4de6f2faaf9ba9d2e2ed08b596be576e1a5eb674c31d73ea65365882ba7ac6680655e1988d32920b14c0302047c435bb500673065023028e5d759549e48600ce7c5c4017922f155bfab2e9d96c13f09e7d566540ec27c509ed8ac316427ec9655c412b6fa1ca2023100c89254bbd6f6ace497f4f228aacce0b4e6f2ebc1acffc89c4a7035b93b1145c326a3a7eb08bcc7a16705360bcc1ae2c70302047c435bb500673065023100e9f691153ce1981fefe16ad674dbe287ac077043c771002262be8b136544af9f0bea558ef61d761f9bb8247d221f5cd5023041b04d15327cb9d55fed6ca0fa596978912d5b2f4ef8c3a56bca23df4187976d6564489b8aa89f37aab02d0fa2b9b69c0302047c435bb5006630640230234b1c50b2c50a6a10f3e4558a4332488f69f11f55de890b982941ea94d409845ad5b42085bac068e5da10ee660d542c0230077624c724453cbb451160d118cf9802c36ae74aea444e093bfb9a836400059916650a18d18bea7ce03f2ae112cf45b70302047c435bb500683066023100e63d61cdb727416cefab3f61eb8d1998fbb4c2c945d4e45344f046150bec683bb58ca992da9c55e69c6e933f971053eb023100ddca469b68f064b1925fc7c2e5b59f322e2af16cf6ec44efa0694d22718b237b130e1ea7eda795f88e61cf4e3572f3960302047c435bb500673065023100c83402205ec774d6424a7819be3cebf12a79735714c2ccb58ba934394ff7cce213e956757df6d2fb2004c4c69de63961023018e43204d0361ded9dcc846c02ada5e49a1ecd6a770e5365108372c8fde3c120e1a50c9dacae83d7c213b10edcaac6120302047c435bb5006830660231008c05ec4e12439f9bb4946bb50d401f1929fc71feb05c365ce267ade34d461580a1db3ec7e8df5629c0caf6f4d5934629023100a246c268c6711456e82d9997c22be7ce3bf885d244592f2af2e9908616421f7dde4edf8e82214ea8ccd3bca4b55391a50302047c435bb5006730650230245a9e20edd0fd513940cf8e317bd1df172ca91fb5b4bfedfaf7dc0fa44986b463a27940c02a1c1c847ee3cf78cbfc57023100d3de22bed7b5205f5e0b73e7228abcb90054b7811af657bb04c47f38f13522a778f42ed72ebe170ff514616231c026ef0302047c435bb50067306502302fa51932bb0b7f03a789bce9df3b04d07030d2aa2d00f40aa8f097e6236f92be82d7ab65bd3443659458b0d0d55ffcdb0231009b3ffc89d6a3a5c8efe8fbdd4e3a69f7206e1e95ec639b00dee35f7ee9b1ece6c7c02373c73867aad7c65f69535cfb880302047c435bb5006730650230693e4092c0f9cb1f67761bf945d722843da9966dae6b34781fae78bb3c45a89be2c757757fe55bf3cb3ba2100c6f5958023100a0f8a2be8cc850b0767a1b05dfebf4f1ca7608a43e0e114e7091c0310015ed0e5bc1c7a8524f5b34db3d030693bbec370302047c435bb500663064023006b41728bd77e76d3f0b71ab9b9532f75df9b1f421c2a4d7c656fad65180960529a5883a284f59f2319ab1a7a16500e0023044b0c36bac2ac2444f5d8e8bd0e28ad2d0c640ef894b18779231ed96c82076c9aa4b93ce10cdc9b5cf691d4e91023b730302047c435bb50066306402306c56e8a7cdc1a4f415c2d4f5c3967233bd4192d003cf7ea7ef11ab55fecbc68fe365c4de31f0a32cc30573add3df6840023060516133be1a411f5a9539e11745b8b0dd8d2a86572e7bf5c252aafbad5f533f6a27d250fb496ac61ae4961abc251a670302047c435bb500683066023100e28bbd9cdbbb777511464bf41f0692936c30ef4b91a0a26fdd2bcd8bbc9d62514b8aafc9c744405aec696607160a6fdf023100def010ba74b2ea7aa605fc567924691d3aad9a5d24470e8f00ad544750c987e34908cbe0d9d119b4ac01620889fde6040302047c435bb5006630640230200cdae19c3e27dcba60eefec2b21ff867effa2e9edcdcb7da8db662765cd32082933715aebdb53dbdc761e37f62679b023077dc5138b08b2e331092151a5b57b8320f2e5a7299268fedfa82272a36c1f540908d5883e41e96f34839a421425440050302047c435bb500683066023100819b602d86e7f52bfb30ef8a82f273f88579ef5d94fad18ec5e37edf9411168dc95b653e036919ed1dbc3ba1a8a5552702310084bf45d7878b55b98fb8c17a41ea428e2d8fc148ae9314042219404de2be1ac3a2d78798e446b2b5f9ee254d18feb8750302047c435bb500673065023100b065ce3db90c19501fc497c1434b13e9acc42c36908f2e151789741b65e2585a863f93bb313afc373a5f53761d656c1c023071e22e13af4f18d476fd88407c3727f90815e8f1d8ddb0f4d883a8b8d3121b446d1d87c86478493ea2c7698a758612460302047c435bb500673065023100f688064558b2bc5e8787282024e0ad01d040179852b694e2fa4d9e1d94c5ce2ea94c04d0abd774eeab3fa7009cd9f82d02303463036d36c746da696962bf7489467b70135973b463eb441d18156e29e1b2462e048c29ebe7d1a4f1fc4f3be756d2370302047c435bb500683066023100dd2afef19da07f2b57897d088fdadc501aca327d73a234613a4ca2d0fc71a538200fdc2f67007709f2897c45c5022c10023100eea4f43c8879f4dd05f96bc9bf58575a8ae2b13864aeee3d5660bc9a51cd82bfb1a6985e8e09585701885830724c0a700302047c435bb500663064023063785fc84181adb4bd13637bd552a431ff0bc21686a3a94a17cdc6f91cf4dacde40049c98dd7a54b7443b8c67bcd6a1802301d076ed19069120e532e0aa7c8b485f33c2e06c726104fe77880e45285708be1d18552f6fce137cf1a055f2b1edd0d340302047c435bb500673065023100be3df4d7efbe0c184304f3680e5009af7d403a485b53f269a1ae514cae0c1c82c5eaf1f6956f7bc73d168d2cc85cacd90230735516bba0edfddafb094a5ba7e3b2bed3b8319317386deadff94f5c8975f523614347afcce8be61280ec062a2f6b2c90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a05ab484377a12fec00b849aef8fa5ac93253e689b8540544f7ecc8b470d0f1d033e3212a0e4496b372f40217d3ede86023100fd7463b3fe74d65645ece47d7411d918a0b875a01746baa2f2eb5be32fc8c68ed6818215eb79327159f3e1b6ff854b9a0302047c435bb500673065023100b6e9c64172dfa5e12f6cc28407ee6a8eb6cfc5177a8bd0db17e05d15a3cfc002e833ca73771e5688854071b73bd7474b02303fb4ad7b603658838083736b1d4784a5788cd0ddf9e69ebd42d5dfbf22a819184105d8a6e02bc645e9c042a64f5c85820302047c435bb5006730650230138b73de512e01098718079210751c2e1f379307a82a8ed8b01b9fc84492d2ecc910068a2da5d08f64acbe9ec3c7b154023100c4cdf86267f5f61bfeb5a6d86ab89ca5860720d12c786d1e8ce096531a6e97c2696f95a642a001605c22ac6a265802640302047c435bb500663064023029ee8da1c9eb4b0b895b4f22b6b881de419bede27ee0fd8a6a4fff0220ac78cd4c9159be2bdead9eec58b5cd0cf310ab023039a0337aa7eb75e7202102d76521f9318f4b31fda61842a673721fd4dc1cd7b8d43d449b40c9259416e63cb07c1fd81d0302047c435bb500673065023001c392aeeb4b3d5d0e871c0b980a7f0ba72ab9ff75bd514ae6677fd0412050a37fac97d931bbaf382a96ce08bfb43046023100c21a8e9e0f339792cc5dd94cdd287ea082a40db81399ef1842511beedc4477cea9907e85bc2f99fcd17e9330aecb335c0302047c435bb500683066023100c2511654274d606f0c821d61c846a39039e769383b6015872a987368fc61a5f269f6597a31ed7c23d7aa14d3e7054b9a023100c324194dac4a6624d2c42321e6a225e1a1bff5b6679cb979d48e4458d5293cf0a3df8f6c51708fe829ca0ff72d74f24d0302047c435bb500663064023020eaf18386e8efab3413dd3d9a75551b1f9627dc3fd6a657f5f5998496bd2fbb05710aedca4798382d262cf4c7ee47c302303b34e98322c22e8909e53ff5f150e42f1455ca9cd793e0454ebab18b874da2236f84726b82583620176a90d7f6a1f71f0302047c435bb500673065023100d26c8c54929b2c00fb8d6f6c9aa302ac92c0e90481b5170174a90c987d5d8045a2bdeda67c1a9c9ebc0b84c94d291b9102303d681975fd4718f20834d5acd51f67c81c64aaaaa5397dbd6f859c316c6dac8affd1688f08e00a5ec7f3b61fda634a240302047c435bb5006630640230666974f96aff38369f400c4a82e0febbc148e52e9fb6a6653318d2956e6f9d84d86a5e4cfd1136ee71f7180c6864e91d0230704d3aa3ed20fac619c968f85ab4ae31b6021bb65f79c93dfb9c89ff15fb7cf8c87f338fd8a37da18c79161123c2bd950302047c435bb50066306402306321b8d0a279665247960d8e45d979cdb99e61b0d06276adee66df033accfdcc274f2a02e3069091ab22354b6b20845602300b110a1ae9587023323144d673ddeadf78a5dacff274c863b2d56e5f8e012706185736f70bee2b958404d2b8b22166e40302047c435bb500663064023067aad764d412cae62e8dcafdfd890ed89fe038a891759fc36a6d44d2fdbbaf594ce14fdb27d9428232d6ccb4b5a92cd102305c76af2845eaed0df6ca65ef46694a6b82bb0777b6157e3d2c6e8b0deddecdfeb9a2bbd815528e1a1d8d411aaada48d60302047c435bb500683066023100b3b782c803cb36496b92add2b45db984a199a347cd3bccb6fd5d7711548a7ac8326b016ed8cf0ec8462c14e09ef01f32023100c0f7c89ac582a7a47bb2f3b7b1efe5048b5d4385277733e934e9d1675dc73905a6c9125f38ab39a544948de61d1d52380302047c435bb50067306502303a2a6e80ab93d8adfa07cfbbe68c1ddb0c5f29fc8328e519d9b62de5f74a7690ad0acdf0225def0fcf5f84a30a1402cc023100cafc78e0e0ef6e311e31575704b175d98dbde7e885ebd7440ed47c96036bf0a0d217df7a214b42268afb4526b61c5cc60302047c435bb50067306502310093949abad6d46eac0d432b156f57ed4d103a59dea05c6791d9d74cd820d2029fb1b7250fbd5abf95cee6e77eb92274ab023006cd3f9c795fc93dd550b70e48da7f1c1eb5b688788f7a469f28b24a5b208885ba5605b5cc027475bdd859891ea8dd050302047c435bb500673065023100dc1a5a0c5fee5eb617d65c32ec8f3763e2cbb363ed2c0f52ffdd68e8162662ed1fc7d5ece3f27fa967208689a5c2241302305a5e01669814e33038bad71bdcfa2156ec86ce50e423c1c40240b6e24525d3e1a17f2308e8035a73bd4cb475d29abf100302047c435bb5006630640230741c37791cfba0f6f89403308234c2788b0c0b5637d679640a3a5b0acc74c85ceb066d93bff787fa3349d386353f11ea023022e9c522df5b7bd634edf945762ad2b47b18176fe6b91c76df96b3d2c8a8949f2f8d0c28bd93bc2f32e30685d439d0340302047c435bb50067306502306b11382a077e74b8d7a33958a05f3bd281500ca82d1db3fc819d529e1810c82c269c0e4c9a9619ffe642c7051267dd9e023100ada5476ad2974b43fa2bdb8020ea2a7f7adb0ceff4d65d330711e0e974048a46e1e6e7b6362d1f9ed56719c0ab72506f0302047c435bb50067306502304b5146dac2957fc91d5d998c37adcad05b190c57e06d57547dfcc843e41e750d0df5e5500ee6b28789b758b61823a84d02310085bbb4dac45a55ac644918d59301f2a49e23a0b061548a3bc96979aa8dce7d82a3db7b87d9de0ce74db5142b924f51880302047c435bb50066306402306683f585ce27a1c3e46279e4ccad63d9f61e0280820716dd1d33fa4e35b1faa2fbf42716a1a4aac6fb6eaeb968a73c3d02306fd626f6439f9d993688b7fcf28a912784d582b4b0835dd2773d9dfb81e69a0d5b95107edccc85c39c3f986bda7041cc0302047c435bb500683066023100a6465652b37efad13b5f67b50c9775731b260838c3e9dec9921363ce1b930c1924ca12f5cc48d43067a62188f5c97e23023100d05178ecc0ef9c7bcdb047873c224467e1628a6cf8c9d3ee5059e204d6d9c5d65974dc8e890692dd4ec0a55a1fa87fa10302047c435bb50066306402306da42b06c698a92486bb1ab4bdb702fe03000a298c40c2c1003678cd0a1ff4dd0d6636a3739e0db489eb1ef786f3d2400230530f3653467df50d6a2bf4fbc96e5e9b34682a7fddd7ae13d7efe60bc85d33d1c05d12df2f0c42b5942ad657529126470302047c435bb5006730650230460f44e2a899b934f31ec8fa392a801b15ab5e4d8230b0b8f02630d3d7440e9a8e9b54ab14aa88a7600a0e13ca598e9f023100e4c99a858e08b3f04a3c9c60ad52c7507471f750d1581eb4898cd28bb7a98d9b36832fc85773dcfd136b7e4d8337dc450302047c435bb50067306502301891fbbb8c024a3dabd2eb34a3e62b277ad5bb240bc0440bcb8bbf53fad56823f0f9947cc30aede926d2c7ba5456116002310099f7f064e03b4d06d40f66c94cba3452a9fe9ddcfea28b8b9055e685c2f4c629da100ab578ea1b96d297bec21a0f11640302047c435bb500683066023100debc5d66c223979c59d161edd3f4f51cc1b7c634640de4b7892da84c85807a9dec87c27e0404808cca4803a61210c065023100da9024b9c485dcbbb4b57f2e67c46f5bf8f6aadd82c7e034c4cdf909780e7350e2b302d9bc22dfd09b60f9f5479089380302047c435bb5006830660231008efa2774886c4923dd619f3573676302c19e2b0b2a91f669a6f8c1bf85ad5a0754e5bcfada341f789b0d72f414ee662b023100c18bf3dc1b8b2a0d659fbdd32477384276cb14985dff040f64463b096af708be56bb46962d70306f134a1f97b9ff462a0302047c435bb50067306502301c61bf9358446c6e0265ec944d6196761fe45880bf35af1331125958b77f8c01f2538666f00a91b0bfa5028429a3f02f023100ef3d75fa4ff0fc5f7513790c2a8d263cab38845bfa70a0ebb480008198541b0622466e983bfc6c87e729dabb08d2ee060302047c435bb50067306502310092f07d8f32172493aae87756d92ffe54d7ca8b4f80ffe4265a7882ac311689fe06325ce90a80ae61d7013931bd67fc89023015f5226a0f55443ca74590e7b3b827156ea46daaf5e1761cb4a7c919e6994c6dfd8af32f18bbad90c04eba8984ad0cc60302047c435bb50067306502310088d00a621dc53fd7a4465e3df4538d48784287b3b938006837cb2510811a6046811c19f5362ab1c59b003e2c6b8abe4d0230312dd3d13a55ce9344f89793100f82d7feaec8b524e3a0c1eded487d2585b01b12331cf2a100f7aa3de25fae5b8d603a0302047c435bb500683066023100fcfc6599f5d42fdb96621545657d9305c387089fa33e6e3f84ac6cd784813c6d4feebf756d2ea9d93ede996c4d01b2c8023100d139e66c255fed2f8eac403c6c0cf6449573f23fe450ff09d1c8cb618c2626264927afd3c937eebed0e585c2659e550f0302047c435bb50066306402301ca9e89aef37296cd4edbe89b0a958b1462dc7337d890efa85f561c0016d459ad02c45f460c5bdcbd2c971e6c8bddb4c0230115ee733d2679f38ba25854b64e307a5c8e6a785f2b810644340ebca20cfeb80b02fc7769c2126faddb8a7c6893ec5630302047c435bb50067306502305a3b226ec59dfc884a3191ce7fae90296deb85013a05c6604ae420a21355e17bcf4b2abc842043d2e978cf4d36b74b5f023100934aaeb7855cd6bd7f9a3f2360e8ad267e094ecfc3041be030874738a67c5a29b5c138b2d3d68e6b35af8b7a2b29a5800302047c435bb500663064023066d92ed2021f459afe6d0a048c006af476593b34c1013571e26d440973abb30856e1788a2f18827de65e3fa5c43bff4b02300a5e8d00fabfe300232ff0b3e0d7a00f8016f03084c4e57126c516d794fdd36d4610b2eae54308bf82e0b76984738b590302047c435bb500683066023100baf44223c4fdbd4c690065963c5f4964fac5684f27f0659a097a37ac2ede00b890273b36864e0170fa8e96748dc2e671023100ce541dff171ecab85ec05b609f94f5f7694c33320b388a161d7bcb003c372873b8431b1a3c3bcffb5888ece1878162f50302047c435bb500673065023036e92d635ac7b021d457da1855b5ea708bd4e6eceadf142a784755d4677d0dbfefef1246a76c0b024d7e4818eef499c5023100fe5ef3dec2b3ef7316a8a519d1bc2e05b6357e6d54b4ce3cd25162139641f0a778a44680af81a977549fbae6dc1cd3e60302047c435bb500673065023100fb881a4e8f8f2aebe49614c468429145606c0e8402ae3e5d872ec5db5b70414747de46c8f655e19621077dd8297a2d550230412ed97e1899230206462afe30ac11976559fa0f8d1b3d069fd629441c487ea7ca636c6205235e8d2d82470fd03503920302047c435bb50066306402301f512ca7a4819c9f336d07bdd87b527a1c5eeaddec06b4d912a1671c3e1226caac6391b1eada2ccbd9853886f3e2f72f02300c781e1a646924702a9cae213301a71e6fd3bb5b0adc52c29721b61b966d30bf9993872bf39ec87bf2b5394db59b563d0302047c435bb500663064023057d428c928d197c85c15db06597a685f78f1bea4f668e9d6b898a68cc923fe4da050521472a7ebc062987e5d9bf8f44b023059b093f3f6926d28aca415f3bccaad06eaf5a027dd1d4aa391d5e06080827a5b8ce31083c9a43a3abdde680073ba0a960302047c435bb5006730650231009b81d6fe456a8c42fc2f6f4d5e623e41448244c67f1e49981120b288433421682275fa64fc7263300eaa81f905dc8cd6023054e5e0e5c56e3e403cfa23ccb56329903de97b21e8c588d66a80b27f6c8b0ece4892765ac2f745bee3d6b95edca478d50302047c435bb500683066023100db18f940dadc44e0c8e53d5cd465f4127026d29841a28c513e22a86599c82489ea7e3fa8d4584339b5218c4901224a44023100890f911e841bd896c605843549432614af9dddecbec082532fc0f51ff041c4b39141847cebd2dbfa2bf6d88dc45c999a0302047c435bb500663064023077b4c5092bda306075ed47e8baff1a4390b64cf733a57b01fc499b8f977b0e2e5e9490edb1784c5d85d17c8276cef5c302305b136d68bc063d2e049237c352060bb6c5dc756fa470e3cb9a95300d2d394670e737a87172997caedd421ce8ad56b5360302047c435bb500673065023100e78fe3fc8e07026d1a78105edf5bf19e4aaa1659a21e4e6539199d4eb13d156a116c0cb9fc47137211ff2763439dff67023053eaf3b7d165d8f376c3a03cab33e1c836a9997a451394abbac508be737cb849379fcd8b4a5b91b801679815aa5ed1890302047c435bb50066306402303fdcb0bbe70011dc662fc536e7fd340dfe65bfb679aaec461c649cc69fc0fe9de1a5adae45156a42789f7199a42a3a7502303fee689bae5cc7bc5ef653171b1a5b12994ad3e79b35479e9f43cc20bd3f546d2417af07ed70aa6ddfc3097cfc7781890302047c435bb500683066023100ba17d0aa447c98b93cf872df4f6d4b7acbe6e2ac0adb34ae62ab23075cca226f0bf966b46aac6b834ae5acaafa523970023100fe02d563d902a7886d5bb1af282e7226e256e014601e2abedc9efa88c39b9232ad6d3bee2d11af5a49e2b418e14852ce0302047c435bb50067306502300b6efb572a56be3c3028274d2f72424f77a895a74095c42ac274999fc3d8404943d91a63b0374b6f373f4d66cf7051e0023100b5bbf8ed3d56b864f905ab4937d07666043a217f5ee63a9ea656d17670913b06e7a636baa21d54054ec1ffe60b3788b20302047c435bb500673065023025ab177b80dfa39d9483b6b5842e12daf0ee868f96b423c3ceea48e93943d8b44eee530f2989f490121e9d8663a0b06e023100b1d542c1f067af864e58a2e5a0e59761d38b050ad5ca77399000996d21e6e954c9d1b06399e7d1e6e51194320134a7130302047c435bb5006630640230617b565029384b58473381eba5aee87c88166c45aa45c1cac38134680773ced5a57e20324e1b28e9cd2de60e0dfb83bc02304f4a535e2b493e8f20adcb949f645f9f05a99474555468b316caedb056867f84edd03cb36c9580a97dedac446516e4100302047c435bb5006630640230055cc2fea04229b938585df7eda66735315f5adc605a626ca78d3a883e227208c35604b5cdf4d8f826dc43c6620527bd0230746caf4290458d58bf779aa1e3d4e80952b483254eebf643b316dbb8c9db410f9a3a23e8d44ddc83133c0a8ca9d455880302047c435bb500673065023020f86d0f8983fd836b3ca34969778ed9e4ff23397d7ffb1e992e952dd430ba3c984366e77ca1604512a509f5241ca2c8023100965f14a02722198eee940b3ad20337ef38bcd0080e2898c052f968e5bcd1421685026bf55aa0120e292be00317539c040302047c435bb50066306402305e176fbd7b76222c8d1ebc534c453cbc8957ffa07882702e53856dadc5fefc66baa7210bd18004749e6541a0988d3b0d0230651b941d9eeb713d64c29511681fbe13fbd89e1479ff9f5c185aeff861ba052d668859ddfea199ea85c49025092f78120302047c435bb500683066023100d62da0770710133216ffc0cf6a0591f1be12a884733836820195a154af7861bd8ea8e603b984ade2f37b7e1df9540149023100f706aa0db3d163c22ac84b09e23cd898768dd5d53809d745a125880bafcd8c3db2a1b74f4623daa21713fa729c2439510302047c435bb50067306502302c4932a517381e5e8b58fa6e2c03ea90b87c926413f767d1e54c91c7f995261a95346c64bd0eec2e3c49570cb9d7131b023100d2e8525c5247308d184eeca35152fe0e496a617c923cd66b1d5c291eb7ae5e6540df4d633b74b458bbe469e2d42d042d0302047c435bb5006730650231009f539cb420e9d9f5479f17806221627bf09606dd5fab16b705733708a02938b07380f57b580daa8b4fab26cf0aaac9be02304ac0b8e56e7af38cf09e6f271ec5a417e9db5581b9b02538fee0484a7a9dfc415c10f7f2a67fe14b850739b5585b1e570302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230643eb12e39f533ba1e5a1df5c45eef403dbdfc842ce744b3aafeb5ef4de660ec26ecff521e0f6b0a1a47e3ade2da88fe02304bf62127d14193bc7242048798187167fe697d8538928e301765f75118df88542b1b30b9808378d723aaa2d6d550fd410302047c435bb5006830660231008888ed309c4658d51e8359e0b054231d1c5bcccac6a795cc8ed60bf534df53f616c505bf259037501ac8c96d1e6d2492023100a28fcbdb14cb35b96940edd72febdeef9e91bb112db83f222db9222bbdf1f4a8ce48752eae5e9ff0fa4a3437b617d0be0302047c435bb500683066023100f965461355055f4b5e40c23bca461845481de7903630a49643896f7f9e66715458b1332d365142a249bb591001a7f83f023100dc18283342542a22834c8b87b50c2d8f2b036644e97208d4266819f76a9c5bb8001e54f4db0197294346edda013295600302047c435bb50067306502300bed002836be492a30a1a3260c92160b8d9fe58586223956da21e44c3206e7efc5bdc1f0ad872b8c8a7c19cb75c49c79023100a06848ccdb13fe99674ac22a62af543c04038e465527d2417deb4bef4df863bede76e225a74709bd2a5896cc4167be3b0302047c435bb500673065023100d56b937d0a984b2c4705dbf410550a55763383057c1a11f188ab2ad2e52915b389603431d4b08242f982eb3b20ad5453023050032da0e1137915e1abd7e4180a7725fe9f56a2e4d0b2f1b675fcedfddf018d5307f7b161dd63b81492a029fa44306b0302047c435bb50067306502310095e50f7d4c80e1cdc685439cf5053a9795292a39d305df00570f4c379010560958ded8dcef9e06095ccfab3be94c5fc8023038c690f3864bb0fdc865828f2eb9ded09cf4ba9ad65696e605b02f48fe6c4b8043ac40841e2b857a29f74c882a6ff0220302047c435bb50067306502302fbd2a3c517ac6ed0f81ee9ec94beaa97f2eb273c7378d5eaa75d6a20331f30bdcb117feb53e7c55aa3b5befe2ab5685023100871a1f28e8bca43164fa9a92a11a02d62423b73821c9466813e453f58d1e4a6efc850c7ab4c01102e3382c115a851af90302047c435bb500683066023100859d03749ee7993a5a3ece18a4b0ecc6793a7e036dab6d64ed7ef05678d93ab852134b4e253f04945eb7ff6aa3c92ce3023100961abb52307ef1e84dcd768d0c8954f0e21dbe048bf613ff7cab8b9dcdece3bfced908c1808a18da0f1aa14dcbe743cd0302047c435bb50067306502310098104363a8b44f22e92b20715d30682f81b91ba30526e61f6c1a1f350b0e0f23b474eb47494f623ab36a27b0796ab75702301a8f0aa5d3d2fd96ad7edfbb3fc44ae590ebbe9b0c6f47bb79f989387b1d8d158b5ae8dbed19d17f04098bf65efd6cae0302047c435bb50067306502307caa8446865077c671f3ce08999e9b6a4937159a2f980b3eb512770fbc8903e8358fa851a398764e848aa4044caaa7b0023100872154b1be8a678ae6ab2cac99e71a6a4ba7666d901b76f482ffc971d14b5c1d6bad8fc64972b1a38a4a877e2d1c34710302047c435bb50066306402302c55892963fcfceb04dd6a0ca28764daad8a1562e4cb408bf5e681fdb8f7a5c99c9194f01e0a1379ec469abecdecb29b02302f47544e04b2420e16ee66e31eadee1cdd4aba7a3daee14b846e5d0fea4134998f28b47ea74ec38976799e0beb1f71fd0302047c435bb50068306602310098072a207b7a7bbe4b88fd2c1c1f8af13da764f951b871012173b3f3260b7de0f448c536221bd2cda40549a073acc68a02310089eb1336a9f2b6c7b0c287bfa79e5c7f12d625eb7a7558c218c74120b7f8d9fc1b05d2741eb54ebe6a51256f5621d4ef0302047c435bb5006730650231008ef090d969bfb56fdc082fd8e09eb2c75fa73961c31e7a965f97ed2f95d91fd60c6790c2d959ae6766df1cb78219e25102307523bd30adb5668e972dffec58ff72320543cc4bb521ff68958417e4b544f610d9ac0bd8f6c7b71602377120320a3d4a0302047c435bb50066306402304a7de0f3dd93bd3cccfdf56f6011823b8c4db84e5fbeb98942b7c1a0eba6fad89aa03116bdb88028cb35abbec976a5c502304c9df9e64c51332631d2306b99ce26db9c77d03c5f71a44334713f3b514819448150f2f9f20c344b7a127d321b706f8b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c752cb207ea26f7f0abbff5a11cd6f4507babbd6744f99b11592f5f5679f544e292439812c2d8783e2039076abcdd06702304d0a8a6775ac6131fff7b0631c49a76bcd86042c0e5633c42c4304ae1813614e4dd7daa74fac4db9d787befe275494110302047c435bb5006730650230152f410012121987a987fdcd1749375cd6c3e5431a2a2c8c08da9db5a71e03f985dbcf8cc22f6e0e1956a1371a98ae940231009ec046780e96a58b6305bb009df5cc8083630901ff2b04b710cc926c2ec89082bd38a8158e73b4957720a9e0e4ab2b960302047c435bb50067306502300997b4f1bd72e35c0244357880182d8227097802772608dc9734b41273941989731ece01a272d8d8ef87806fd0cffa91023100edc9c2d645d7e6ccebc931db1aa954a35412bd0693cec15481c57c737560f766bde5e9e1482c22080a842e4d452123260302047c435bb500673065023006ad71f9789422a8239ac632b5ce2c55f8d76f2faf098caaceb922689140acd5c1ab073ea0f12701c3798d3ce386c36a023100d1258748bf1b747949d0b25c781028ae93cc9ff9f7d2d8b3db91d0874be757d8b1c15786e040bfb40741d2411b88ad200302047c435bb50067306502300875ab7c5c9acfb699a6a6da1a01e4f8242bdbcefa4f80bcb6284d3908a6bb8dce33e6ca76a312300f3bcfda49355b9d023100e4a8b6981547f947d4f88359508c16ce24d38e8cb682aa0e716767429a1a2114619d51af36053dd08af2641a31fda9870302047c435bb50067306502301e738afb34e4306ca18998e5d54a2465b6d1fd3cfc57a30014141dcb25c9cd3e36706749aa09a699930bc0a531d88145023100c28b559ae05817c1768a16cac70ebcbb8f6d9d64d7ccf967d14b0a8d7aacfd5fd1093db8613bcad60339e86ea49e98580302047c435bb50067306502300b2c8a923cf6ef3e420f621043191d42166e4e6c061fca53eda93182b0860f82333e8e40e7570838ebba423f78ec6b8e023100f5c64f93e19dc24c1705b988d5b814a8825416d5a5901bb1caa069826ba8a08693153d42d28bd0947aa23adaa239f9230302047c435bb50068306602310092f925edeaae0bfebed50ed7a584114ac9d399df43f73bb973f992193c08d81fbb54d15d9ec1b1839f14bbbc3e1e9619023100df83f5a32ff93c0f6dc6d1fdde732af54a687f03d1804ab678eed065febc8c66f42be6665de11d30860ff804e3690bd70302047c435bb500683066023100fa0591496bf4bcd4cfca508317444b817682c861530c5dafda82860228f67629b5a3a00a96110123a600e4bd67ef4d13023100ef68d94200282fda7ef722d7471a90b0374d27b5799197c506b0b4fdd6cb1dad255f2f1fa5d4980da97e3accdebb71f10302047c435bb50067306502300440a420cfd33b56a0618f93be0a5cc0af337efebfe8d94bab7d965ef2615523ff3f4f602ef3ab83a3497017d271aec7023100a8b0c20165ed2d773cb167f1c7cd23b5238eb58de7af7ce93094ac2fad4abeeb0ab7491f48f0ec8fd584a33371603adb0302047c435bb50068306602310091a172be54519f6dd22e12d044d59f4130e3f9f68833161158128be80986cc4ebb808c57330a18ae44701d46eb86ea73023100e8ba75a21f1978c1f0f918d49619fd5d8960b82c24247d33c65e34432fa6788c50c0dd8b21d63d2d39c23185c22a85e00302047c435bb500683066023100da942285ac5c14ef548692683d2fc9490a0d3ba319651b054ef2ca5dd6dc65ed7bdc68b18bf13d1fc53f048bce255b55023100c9571adc4a97118e14e1be4e7a5ed476d3718ca4c2c061fe6d3c6d0672e61165474b331336fac579325499baa79caf960302047c435bb50066306402307550a7858fd7cbe48c85c751d25ed3254b23dd8d39bbfe88bf800b2034dadcc915c7f34d32fb7ae54407de540aac18270230014b635c6400852519577d30cf7e0fcf1fa58a8e116cb9f76e258db430467b11c68b120bcd7bb6fce93e1e6bc731b5c10302047c435bb5006730650230715566c6fa795b71000ad99e688ae398d908b432a0c3c8ddd199fca2e967d201ba73eef72508f7762b9f0406ab68ae62023100e39170981242eaab80c99d5d8c8bacda8d834a69e3dc6bd74e33d071baca3afeb93684c2abf299ba72d4387ae26754220302047c435bb500673065023100a8e44d289c523ffeee291803fd821c114a5aceb5d0ab878a190f05978f710ad509523f849820aee9a44637ef401c765602306e9d3cb589a62e5f110c5a753502a630ae46383ce56a6e236188d2d4a76ede2680c22974e4b1c781481fd775322542050302047c435bb5006830660231009c74769818905eda3aab7effb3ad94b569f738dcc7d593a7da399edef0f04562ab74de282e75d1ed87650aaf44c480e402310096bd65da04afa3a58aae6da0043e81b4d0bdedc644a0a97e1c321258149d762e5204c0da0377ba0b9ce6b4aa4dbb2df30302047c435bb50066306402305ef3687fa688d1e9bf74d39a21a79158577388db3a489a9f2411c5ca30bf269c79510edffded9596d89b5ab8e4cc0d0d023077a555885fdc2ed7dd79f08fe9c02c30128595b62f357c6d177c81fc87202edc44f6c0fc0487100b55518d4814a1360a0302047c435bb500683066023100b448865daf1117f7d0a73566fff513e712c138e70899038e03ce6b322f73f88411ea2db78820b7df48299f09028997e8023100c233cb6533282ed8cdf44333136750247783e1be489090e29b16cc02be40685e71fa7e321c6785638142689bb18b89b20302047c435bb50067306502310089768ebeeacaa41d1533169fbb227c1a2c0e55e7090cfc343b35bfa558961856003d10bbd971318be97a02c8db66e6c50230262eb55678140daca060b3a632c32d2c1da99f02426fb7add94120d9505672a6bfa2c642ceeddd022a244085b325fb520302047c435bb5006730650231009256fde590c396358c0e6a3570258026e34e4ed6aee9ee70f343d2c21b7819c56f45007ecacac1fd717da2357834b83802303e4effd21684ce8d2d13138a9aa48356ee92d7043e800e55956195fac9c44ff18109d2f80f8b5ae3dc56724d3a5a53fe0302047c435bb50066306402306a2e9791ca356018d3f0b7a44b2d4f9383e4ef38220e93a8ac330482d1c15615eba4ab3191fe37fda1c5f06f2e4470eb02300d06cba6167071dc3fa06ea9b9edf5f4c569ea7241864e73d9f7a8f225d8ee4aad25d708325898297a1d31c2857530520302047c435bb5006730650230539310f7d3ccd36026b2bcade9a6996bc56099335cda6c4590ec4bad5e11bf48e2d1617b9219dd203395e91a47e63a75023100e603239ea99a22b898266af08aa306290c87e18d0e2abdff3aab920bb063935314989bff2f21ca9ae2145bf54edacaea0302047c435bb5006830660231008af2bcd067a1599af032a23812569e08da2f8317a727a52719a202d9ad85639904be813d955af5412a113dd607e1647e0231008e09548048321cb4877bbbe3655b45763b7c55c111220ae0ae7e7b77aa74d20da207719d825687d675fac41357ff7b8d0302047c435bb500673065023100abd3c7d126e38716e680461dd0427481c15c097f584489e499ac6e7fe546c65531067f4860ce2f446edcdf8dc67e67a1023046146a85e9e31dc8992615b7e6ab63405a6abc12eaec7aa910113228b9312f2a72144bf0b5d2e86575a7de070c00c4020302047c435bb500673065023002e627d4d2c1af75c5b116a4009519af0bc628b46a526ac75d66350c518b0914d2d01711c8c25fd4586ab837604ad057023100db2983c3e08aa937424680845ef1a6d348c89c9ba95646b2d5272e4525d5722071b27582414fd4c9a3c7c4b3510e45480302047c435bb500673065023100a212cdc36c9ce999eafcac6673ddadd5e919ed5035366f44f45a13ceecb3143748dfbb265062e2a2876d242e4b2cfa3702305381d3236d5615bcc181dac8a7e6a96392ad40ca976fa9c598faf21b2bd16c726105066d99d9393ac1ebcab40eeae7900302047c435bb50066306402302f4cb5057585259ce302d67699f5d940efaa6b4f8e2b06461a8410b88dcb71a8f75653f4d7b5622e1e3af2ae0427761b023035faf618e4b598e06a6498b7207cb68bbc2609fff5c013b9a877a1e936352eea6a213fa1a721ac375a30b4bc2160878d0302047c435bb5006730650231008f726579d217e940081e1eb473274b1ff855dfbd26f33fc94a780e0d76ef8935fbb458673b61b47970aee9bed900dfaa02306fc219301e68346aadcb9c283e5a20e602afd2ef1e47646e870ac2c7ac34540e2915b5785881c54ba77d75aaaa441dfb0302047c435bb50066306402307c69de664ed9619b5e8eccdd6740759b984876b60bb37ee9fe9a16a88910a4cd1a7cb7039492479e84af73c60b7678dd02304e2a209258bae062018f326ef7941e86e805ec516d4a2a41eeb27b81c6571ba5a7ef2e793ccf5dcd073551a1d4b841280302047c435bb500683066023100ca84acfd06f08c3a658e80a02af520f26e0b2c1fc4252f91b46e2ce9fac9617ddf35de7b281cd485d2e91a6826e3f870023100da92a4f8f8c412e5eada21e6f7ef6f424b0d6abf14ddf9b6ef19c5a111fc4afe7febc3d11a598cf9df68d9649ae320e20302047c435bb500683066023100f5ef8b342b46e3f3fd6b2f9ad49f3d39c0d614b7335a36d73904a7d2ffa00d984c0c0ca5819b213b3121e650add90485023100ee2b0a9962c4f1643a5e4ff94e96f3db8dc9df0b9239e4ad9aa79e157afe8cdf483fb87f22e8bcc8baf5effe3af03fed0302047c435bb500673065023100b165921afbe37cc2453d78a9bf46c10a2eeca44fcb711d4f363be0af1b4ca52482077e615f18a3a120392e0f58a8b40f02304556c5b01e0c53dcc952ca247a612dc0a036fdc9bb544d48322f2bc7849c63d771b1d5c4b39d277b79fad3d4402e2bcc0302047c435bb50067306502303f0dcd3afc88ee29224adfad5d708ec0098b8f002a67128dd3939053f83de8a2dfa0cecc9884bbb452bbe864ae768e93023100dbf483d9e18e9e4c116a4028598b4d54ed19f5491cb8ff47bd5b5246940264c6eac125cc64cde04c73e879cae9150e6b0302047c435bb500673065023100967d342cd4f9573163e7333150eefd99b8895d3543c948ae296f4ef12133e9638c13224d5589c4105e3f4353b123d45e02303cab3ef3876d0bcca34c9a1e21559e628014ecf8d576cb4a4cf6be024fee9d2c89ece3dd86c4ace1d62ccf8e94953ad90302047c435bb500673065023100e8a5553f16b2fb899c2de28dcbdeaf03c6c11413665f1dd1c061f1d10641804d4557e47b082e46ebe1a9f04ab98e446e023047a54a56a93c231c7706631597f32da74cfc67d8ec5bf10dacd0089f7ee450afe56e8111c73933593c79d6ae4f005aa20302047c435bb500673065023100a642b2f32becf85b0cc39841420b471f0335d2a76572188526863e82854b470f568c098adc346646084cb1705ac54b4802301c6e7540fbaa2ba322835ad512cdf55d163cce11406ad7f9a6f9018b1bcd4fe1af811455f24974eb0775ef63925a3d260302047c435bb5006730650231009864ade19bfcf3b593cff9619e281ec2da8ff5b37f107ac7829016877254249bb95bb81ed2d29733c219907bf537f1690230688314fbb4b1c88a966f9bfd5da9e23c7fadf527ea2236194d7c97c19b63b4378a7330dac050eea54d00652188853f200302047c435bb500683066023100bd2a51e9f783f77aaf48fb80fd8f1d66bbbadea536e2b3f193de60942ee3d25c23f225faecd55efbdf6d583e06a4319f023100cd7b58e311bb44ca7bae7f0e3a600d8c7ff939efe561336725b124c60723c799f0c84e559bcd3b78ce2623aa870b82c50302047c435bb500663064023042e6277fe1ffd6f56b99bd2051e63db5eef770c1183b4daf271a16dc5e8bc1554baea4941ca191da40b37191f9f2d9cd02307fe2f44b824d3d645d67da15ba9088d3b110dc345795f83dd546cfd6c99efdf8a8909ff3909e25a4af2f3f5cbe6ec4400302047c435bb50067306502306ad6b3c2c82de111105974853d83029f6aedfc5991061cad981f339459d0052c9c0d82c9d980f7400d1750a9435c6630023100f39fac27cf4add06cc29a63b545fa2e0503ec48c25d5f6f507e9906293177793473619782a1f8c88c90d72cb83aa0e380302047c435bb500683066023100ada4679e9f2686ea36decb0f80c228196efacfcb50009dfa86bef5eef808055a943040730973733cc95f83a559ea46ea023100ac5cdcafaa7862f0b06dfdbc0ce31baaeb0df5c4690b5162144cebc80eef74eae622f35c2b0ce51e1f2496923ddb4b0c0302047c435bb500683066023100bb39cca64ba4a7acc7fc45e098ef4064f2ceef0a48a046e9746c2a85db6f45005b82dc9df81b30810607530afd39db07023100bbb16437254aa7d5350e2122c7b005cb8e3ced763e50682371123ab7139ccfe2135fade747aaa3236dbd1817cdb058f80302047c435bb50067306502307cc223e37e53107fad5ba5a0b63dfe72a1a9b46b616a058c87ff275c65306df1229b197cf7363fabe46c89113b582ba102310088f2c03195f81270534ec083e08c84b228ed7c67acf9e8e79105f1fbc97d17c7c95aef3271d8bb6515b337c0702c33030302047c435bb500683066023100fb71a85c7a2e35f55d46e1d40bcdbc3d0fd9a941c529024dd2414a85e7e822928a062296fa9a6b0d83d32adc4d1e243b0231008648d37eb707f454d8e8a6fb71123e227cf2c23ad7a040140fd2efbbf105b78615b3f14c716c004dd6e06b561c4240180302047c435bb50067306502301e66367343d0d36af01475d4a9500d2509a0fd8f5205f83985d1cb66e41319067d6b7f7ef9797ced4ac99b883e1e7921023100dd54248ac01b59e6c9396706d32f133a40cf2bc4c6a65d50e3da8a38fee0b5edc494a96b24ee0e8468a9d1dbafc4e05f0302047c435bb500673065023100bedf89fb2a3b120fb36ddabdf24bd3ca6adca2849b2165e226dfbb6e857130ae31c45b84b0d3c5722d1c3483e2a16cb20230318b191bad65d4a3253900d354da4e165932f47fccc298ac82be499985805b6e847c3ded01849e78c2e57b8326d5567b0302047c435bb5006630640230761d8ddc33b934924f1c8f7ec71fedafe888b77d56aa311d1f645c30cd60d4ad186e3e7b12c7abf45ab4121b660fe521023034872ad5205b144c10c39246e3b16e32ba8a5057f7db865ecce82c8a8a4809ac32100b0ab0b767ae151f97f5c9d1f3d20302047c435bb500673065023100fccdac6a7dd44d978b736253b42427983fb077a649e1e7c3bc1efac10ec0a998f5be7eefca8c0060970d58d748d548e902305b26d7ab0eba7af6efd180a0dcead2cd0f400bd8cd5664890a2c66c8bee23e8109dfa74bbdba772c5680edf683633bdb0302047c435bb500673065023100a5cc4167a52006c004d5c1fd92d5139d8a0e2667cf55112bcf07e6fee53e1d7441a0d50b3e4226461cb0aa0aaae0636b02302b2c8f69f82894868bf611f80e622f2836d6ac9708db04953a0ed79ee702b8abf15a7415edd242b66ad652b7cac920960302047c435bb5006730650230358a1cac41fabf2832f64b82c3fc4f8773f2a17def5a1afc756191133c7bd9cf0eff0f910e35c4738dfb891dff747b960231009167c4d266c90cf2e7be37b404f6d0099e810b99ceba5d30f98519b395d31b38015e4adee5dd0e45de36cca0a219f3a00302047c435bb50066306402304b9ded1f58adcc3f92d61b03d983a472359e502d5483f3ed8dd5b9459ec0faf69257ebeaa624dd7f8559e45535dcbe5b023050ea399d7b11be34b27dcbef9e188406311676643aebf61c30c8708dce7e2bd500351adb956480a42102c22d7dcffeb20302047c435bb500683066023100e0954a5d4a02940c5f8e1fc6ad48e3b604257c8a729e51d0788cfafbb6a157f74a86e9cc3e54ac46f6bec233ae831c50023100cae130e08e4abe5c86408922e8f2781a1b764c76c80dbb8e80e9165ef9d7ccf1f28619f1d60ef2695dbf059f8af956240302047c435bb50067306502307c749c48e2925d14713533d7bc0339b0d1fea8cb27c214762f210a2d82b8cdfd5b25784303400ffc5b8c566fafbad976023100a72f2bfe6576a90e4969594be36d519c534cad48ac5b83c23ba5132d32e0a639119d35a4e71212d66a363bc157c326030302047c435bb5006730650230583db942bf3779496a42f0f768ed43b683874e5882291abea031805c951ddb1b16124b5bca191ee5cd47725405db7d54023100cb4e87865c0e748e07d98dcfde4b888b2bb14878a3a1677be8800213a2d6ffc3131f852649295f44e1449cc7107ceff70302047c435bb500683066023100d5ed93b66af28aba86264ae0c25c94c1337010c9023bf4545f2d9c7c188c25bfd680cf4b0bc54dc3cbacd7df2dee71d6023100ce54606979f63fe2ab009080fd6ef8ba426af2fc5c9d78ddf692259294c3ef9c264fccb051b940bb425e0658720be1d90302047c435bb500683066023100c10e6ccc9ee8b4dac7d3be472d9a6e7b4fd32bd316795da78fb06e637e780a465c6342c0d3b76ab4309c11c3d716a540023100845d6fc2550ff5d35da3c7ddd42c3a217146dd477a5d47b179cd9b9958c8df8e37ff3cc9613425b37c5bd55984709b5e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100cbf39a08831f2f53df5ef19fb65cc9feaea5b5fd97443db714ffb49f66676ef22048463e9252f818d1b19d7f770d788c023100e9d4224e668a624d727351a842411398755636f9d2f8062309f234c18e5388b0b98f6dd24708e3e427e5e1ac7aebb5420302047c435bb5006630640230564a33a9da6a12bef23e68709c1596d9eb1bb69cef4cb04a7ff05a43df9d7c0faf6d3570ef5740f8bc046ab6e423f9d302307a8de182a08941541e77a2af662f7bd05271a2f9991478903dc74945d4a12076b9fe4f88d2c757f51b831383cb43a9380302047c435bb500673065023100b69a6dfc88b20f810e7593b5b42b0a2df6b2b0cb1bae1295698ab2156a8a9d07403709d8ff308407a34196071fb1f5ae02300ae1cd4c323dfa17105937bfbded23b2c30cc771c673ae1c9dfe61c2adf6aa90ee198934cdd8c4b10bcdea3434a0b9250302047c435bb500683066023100b0324c7fd777d8a28ffc0090af0585a3382fd51ee41173f30f9397d96b889bcba8e9f1ad30bf3be044813d4013094234023100e2cce42ad15b9fa37a1e0078da43b28a5321d380684398931e5b88b08d68c1b5606271971a244b21cc8ea527375e525c0302047c435bb500673065023011342703357b09ea7425fead99c2e44f8ce24559aec622633f5f418e6502b4de105c8c11fdfde114464b2685f85bc5a902310088dba020c311a9f8e25933a3740b2fafc42bd9bbc5b81fb4073cea4f18f313d1640827846093f7fc76ad76a2fc2d4e870302047c435bb500683066023100831a3fc3bba5843a2ce6bc6dd622f983a40ad6128fcaf59c3179b5ca63a5131b6b3a84abcdfd2e661bcf2d0f72f7c2ad023100950c25f590b8bbaec7300c2f92ce60fccedb6ecbc7ac5557a92058d344e39933d27511e20fa3562a09cd17bc201222520302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f75923d9fe7bb3bcdf7397710340804ef42756e4b1e7adad34eecd4a41423ca442461dfed2807247c52a657b27617dee02305ba13e5b26b4c0d17480e26eefa13d32e0f732e846eaa13a5c91f8f18b37de8d1c45cc04ecdd968b9e166436aa9e5ab70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502307cb077fe61d3343fff018634e80388901ea5b25d578289e4411ed5de1de394f2c2207754280dfc769384219fcab9d050023100ac1918228a4a6f7e8115aee8af7ccd343903b53d94fb0be8b6467874b5cd1b2ef9bb4b5dad93449fb2057c2d594b74780302047c435bb500683066023100eb2e50917892171af66a32fd8745243e9be10fb7eeca9b2b15078c1d4ab84ac953ca899f50cf8fde5f8ae34c310f1af3023100ce3ef8684aa69c72322c6971737c724833239c7e3e2660462c34236bd557710685da8235270c8af5d5277bc7d8dabe610302047c435bb500673065023100b62073ab5da3d1f45d57f925851f8be2c5c4be861e9e63f3fc6954bd672ff3d550d00df38ed1b4ab15f4cdee5fe943e202303aa0c772f855d78e6e8572b117f529b334e47ae3bd58afc6e077da5b57231e839a2c8662599a715ba58539f866bbf4200302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305dc93acf797d92965f21f60501503338bd55f5ebadd3a6f0b4d675b300d5bbffd33ef6f354cdd71c04dd7523359a745e023100e65b4b9130cb84c05378b87e65ddd4adb7f8ed34fc312cfb05ea011aacc7e69890a8748c280fbe8aeb03683b4ade3adf0302047c435bb50066306402307f7b80568b6e597aff43fb066cef8b90deb79ebdf6bf988ba1d55f1d5a5395ce74ef36d28aff79599471c4e98950722e0230602edb8a576a875cb921bcd864e015e4f89bf792bbae6d8b30e7076b95fcfc14b86a47a22035e671c1e660a7ff941c4d0302047c435bb500673065023010412d26c2802d1bb669777cc335eb2bc7fcd86c9eb39a205f46ac8fb9d59dc7e334e16f435ab82c12c0f45c0df2e376023100d881fc09f8ae0cde7da836ca22db6b13a781a0d12540fa52237dcdb23a4ab59c53029c9e1636b57e9941bd68ab8fb5f10302047c435bb500673065023100b6c280eb0bfe5331a2dd5a6ce3ef1fb9385ee958f3199f4aa738203b3d53c47080f2c29d91d637c3276dda0ee85202c102305b038746d35101c2224e9837d1dfde4d363f3c2b47d1e298d232ef08f92ed54075c91644aa936a615b89b14c4b0a470e0302047c435bb50067306502306450d690498fb8b20e7d2533601668f26085e66d02b05c348ad4b0a879d0006b2a0c517a0731c1484c648eb7dd4feaba02310088d0e6460fcbfc3a6089649faf19e9de5812aa1c4dcea29616651b64120106b9e31a92ef3293ef1c1c68861859f10fb80302047c435bb5006830660231008b2742d943bbf61e659e3e777e9c501daf5b853f5ab5cb36e2557c2b08b79ccfca4950559b3f3fdf61f870c7852bfb26023100accfdbaedddbf3951e4d22067a329e7d4a796f1c5fcbdd2af70a61a46c3d90994961a583a60f1a11a775c31ce35f80eb0302047c435bb50066306402303a2b2de33ca7b64f7780784cffb584c1b5c78bc5057e9761fdfcd6e5b7ac79169536154397846f40d03ddffdc9e3e49b023070ee20482a2baeafbca63f31002f6dc27a00cd99d7f05d5814a4900d3c06c026c332cd7ce744b159f5497c6d6a20f82a0302047c435bb50068306602310088dd1cc9216cf7d8af6dfc402d17c6e6939030932f24cd0c254ff0f369c57262b5238731b17ce2d2eb01807f8c4d60bb023100f6a0c9538962aa0685af17dcf8823852269530903419ed37a81209561b644c89dc0bda41e5ce11bd19311a2c615688490302047c435bb50067306502303fca03c02146d5b8f511f437aecdbf9a95b9ba05b099a306e49826fc2962cfc641caed83d4aed4f024efa6bc268968f3023100ca611d1b365f38fbeacc0c78c3541c21c1ff65944d2b41e3514bf7f1f7e23e89d6f15e4af2fe9805ca644b257d7cfcf40302047c435bb50067306502310099a211051be8acd73ff738927eb481c193d00eb3df279f10d3ba4fed763413cf6a69433b20e218f95c5ef1b16452747802304f0121d7dcc8f354f15a2ab7f96873e75879fa1d64141f95f2de2d2323e34c8f1a9651a90458953261499ffd814c8bf40302047c435bb5006730650230267d0a2efa2e1a70a249df66dca9177b6beee3ae64a1d69e49eb29a44c160e6b62e90b61cc3d5b0162c1d4fdda3bf0b80231009fc47ba9e6046d1897a31e8cc4ec3629c8bdc858158611b7b4e54562e1b14fe641e70161d530bc4fd6c5b16fc952b69b0302047c435bb50067306502307b8badd4126b58a15c844266619550313cd2100dababd668e1719f3a79fade49e0e4af622b6a573a3e023cdf296afb57023100b80329ea2cd7d3a1ca6d14276f5dcec5292c63e943a46ceacc97463aa8fd9fd9f1b49931c01ad7dca512cc7d8718a4d60302047c435bb50067306502306eac781a75bc37151a8fee55eb520aa910a3c3f22f7fee4139daf37b13c3efe6d68abb9288b220c0dd572190abcd571b023100f4a01b5f3c96aeabb5b3ace510ad9ada1f987f8d65e79e9cae64e6235a1e94c1fa973f0c531c3d308eb50e40a00fac5c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301f69b3ae5e8a3b0144829874e35e58db6a554b9a3315b8ade4af90648cfaf5057afc379d450a7f7f054b88e7fd85c5e2023100aeb919a57bb45e9b5939f20de5a949eed6f0e137ce96d4a8bc1c8e41903a48227145124ba482460c978ec8b82a4261910302047c435bb500683066023100fe45d4dc0958abde87c5980103725ad71cf41801bcd56960ef073203660c5e0d0204197e8018b6381c08132e2faac5f6023100ed54412367a481c8073c62ab980b4efea5b29444b779ef1b554a3bda1a10975a2cf4753a7364778eeaee9bc6fe7178e90302047c435bb500673065023014d41c1310aee80079f02acc1e1d54fe12df01015345f659684df94ee0e142857307a5d2ca3a2dfa38b5f9b420aa36f60231009b60c8dfdfe79644dadffce404aa299c32034787a29b82caf39a1819b74e8e99da7a423c36947f7ba8000ee0a1f2d39d0302047c435bb500673065023100a568e0ae055dec0f055e15afb44aa599d1ed6f359f0451056553973348e172ac8fb3ee680050c4e76a9b7275c8c679ab023016be5f1dab6d6539af97ffb87ad559856350d9e287ef1e95a486372d00efa623085d895ec8d9c6e2d69bbb950d9ca3db0302047c435bb5006630640230136e6219a8dddd161db346dfbfe6ca77e06cfed7f1cd58959b16d97d504ff25f5aed84024c540b1ee528744a86664ebe023058c0bc088fdf3f42112184b56beb25dcab2b3981ad1cbf4c6252f4289e0f1ea787247b7cea5aaffd39875916b695c56f0302047c435bb500663064023010f2151b658b767ed7e3f38da09954ffd8cbc1cc0d82fd4081b8f5be4545565b98d0be1dbc5dc96da3b3eadd20a1569902305aad7bff7be5d60e1ad617aafcaf28515df56e86353226bd71a9ac5d0858874759d90072b495466c221f317dd57461700302047c435bb50066306402305365d65604443cf526ddc62f7b7a4cbecec89bfc57c0ba5c35358c5fa4f05ca9035abaf3e73c6ffeee444d8bf889dcb102307db1419346cab9f2bd04bbe187bc3dea9a0daa8a56e46f874cc3a7242ddf39284dca109214fa198dfc501a16b66026bf0302047c435bb500663064023023dbb5e2a431e2f9d09bacf16c1f1c6c52fd1d5f2614e8877e611230f68909b09ba80a52cc4429b53ba12240f4562ca102302a32b3d84c131e62e14dee08116f7c9acfe8136771357dae08ab1c0c2e2c6f687e0b9f9d69d292d5d56b00625705a0b00302047c435bb500683066023100f835363d2add7ac19212d5f05393b3c4a68fcffd16413c4d0fc468658ce76015ad2b92454e54e5dd3316e32b6d00c40a023100aba5729664332434e62187dbde4071759a7722e239fca253d44b743c97f0a7304e5d19235ca36425eac5b59be3deead90302047c435bb5006830660231009cb40f38a83a6e032cedfe9edc48a1388fda4548426f31056e11a90c61a01d2b37e561a14d5de07c3e6c4eaabdbc380e023100e348539520828023f745a5b055c18380b67a58c361f4b492b416df2eac9f580fb07ed8d6ac164bd9dd6fd7dae263146f0302047c435bb50067306502306224f3cbbbc0b11648f4b7d6830336b1841330f7682355527fd168d824049f7c136a434a5c4a28b0747977a0c3d95181023100a97d7a1261014977e7a844edee34247197661bb7f687ac35483b2da69c4c317937c3bc5451056d6549e6013f850d324a0302047c435bb5006730650231008e94434eec1b3854fc057a165be2608df05ac85bd937509f39170ac3dc3aea16f959921b8611af094ca448dac64b310602303f0ecc9163b9df6c3f291fcc1e2e4ec88d88e56d5f8a21fda8de14da8c11d09b0d73bea727794ea7f40be7e795a6761c0302047c435bb500673065023100fe4f8fa014746eb57eaa013f9d5c9082d91c7ab4bd190a0aa778060cff4e12596af2bbd87291c0436c74e8fb75a376ae023063ef45844dfa668627eca71caad84f23eededcb25e8e580b5c1b2b73ccb5e6662a763a6db11ed17caf63d017e05ce0ae0302047c435bb50067306502305e718938cf6017566131479990cfb0e2dcd1f7d8d09b312cbd85659ecf0452c14c83250c21867953b60cfc148af8c25e023100a1d4f12e7aea2a7c53f375c44fe17e94345a5be4a71cca568c951e082e1069b0492b8b113f0966a0b66e4596e7c2f6160302047c435bb500663064023013b2bc0c810f955c670fd9c6b307c51cdef667abea1a001b0a04e3aa67e931d4662e33043d601fc332bc784a1b77514402304b8e35f997f4907903aedf5fb23ef7b6aeac4f2f4b90289b88a8b182a8e90194bc1dea1f77e349d8203598bfadccbe260302047c435bb5006730650230121e2eae41c4af7301245cd435e8be4851e9a5ade01955d88e79047a3590418530e8bff5bfa74a5be54b38b8c4efabfd023100b3b04d3efddfd11647342f557d78d9ca148a54582a4ce741f10fd96c8aa7039323a64fdf61e2804b93b890840aa87fd30302047c435bb500673065023100fbed2631b9bd30e440336ee32483944fd184a804f10593027e1df8429fb56538f395a06b28674df64c42e341ec955fd50230543091800ea3a35a15a3b5cc11e7eaa80367f423c639c998d992a17876bb9be8de36e613aef340420e55ee06933075130302047c435bb50066306402306a59e7d6517ada8644b1040fadfe8d074d963279fe4aa89d8af20f0cdb48a948395023a519ba09b6b3ed0e9c1615e922023044f94384455b6164309f860dd33871af3ec171ee9322c0da762ff1396f36f4c94602a518ebaccc7643a5c16144619a6a0302047c435bb500663064023052cd4835a03652970ff43090311abf628e3bbffa41406a7f109be3488e462afe599f82f2c1ee98071beac6297a497cf002304298c314daa50528454e15acae6156e015e06586c578def5a7216e3f4c88d6e7a4eb642de6d4367398a7d6ed946c81e30302047c435bb5006630640230524feea35243fab0daf02d3d75667a0299d4722e8702b60403865e0cddf3078daf194ec5fcb1fb501b0bad97f34dc8f1023046ffe17dcaaa6d6d156bfa5265eb5aab237252475d6d03d435e88ae25f858675c5a3851d2272a1222e49a3acf862d4ff0302047c435bb500683066023100afcd3875268228cc499f649437dc6c63760ba89a20c90944c422aa9c3748b5e3806d4aa2dce4d4b4ee9f7394e9b802e8023100ccfbb966c0b36d78ad26e23e0e5ac6bf0541dc98462dee8f601758ab50dd353e52e70dd952dc07d91ccce50d0524861f0302047c435bb500673065023100b785f6eab59dbabee49c759a8737562caaee7e91b4240f0f7118220f5626ee840b45f2349a244b38fc120d23f5e80f470230410d03f2ce9b760d6742e57fcaaed29389084ca12d67f06469ca33c6936ca8e095d1ed5a48f82287c70fd751255494630302047c435bb50067306502302b4a8a0d094c50ea4018549a3ea38a52f59abd99a6cfad50e2687f3592f9b46eaa1a46422482cac7d2ca5d0887545bdf023100e7b460355523449bd775c03d5f4dea21e33743876042755f0aef83b79be0e3c4c51a4de5583db1f755ca9a0ed1c4ec4a0302047c435bb50066306402307a970f8a96b1c08f377b2847def17c1731da33ba9767318ebb86078f95cd6a52a43dddce961ab95ffc235024b5d7e15e02306bf3aedb3ac04854398bc55fcc135b0c76d71ff410f16f86346db047db96113fca7b7fc258d84a13d86c1711535d967d0302047c435bb500663064023076201a596d48369f82e81e46e53ff8c465e950071008f620fc4aea4a4cedc10c2153c420536abedf43f7abfef3b3d38602300550cf4360a5a915c2040a12110f4b763fecd3988c27db0acd245790a8a38fbb81adece1e04ef21c13d189f98f1428a40302047c435bb500663064023022884ebb8c4ea8294d704ff72ae164157098aa2b42eb030e424e0e0f6cf6d9a4d65e17820be9cf453a177d5f6507ab97023064d153725c35150efdcbdc465ae763d1e456020ce9522bb3776fe5ba5c485dbf0c5b0819b5fb48f00a358fc93c7fd7e10302047c435bb500673065023100e671c9f43d0117e838a8ca5c2d33b82804ea17bf9fcf3bfae385f0346f64c9d77fa7705db0092edd56ab6b627c06ce34023029fdced993fda4e1af0bf301a26bf5012d126d945a4d0c912a025098cc670c02e67719de91417dc4dc5773af075eb6d10302047c435bb50066306402307546f4dbc76f070a77dbb50944b0ece145b8aa545fa125fea8869078fd8dd08ee39106e5f8170472b31c8e3f44ddff6002306478bd9866868782bb26e58baaff855aa47989eddac15e71f49aef5aae90a0c24b4f5dfc65d6f58e8aabb3d1b4da44c30302047c435bb500673065023058f4a6e36de113aabce0d69750351b7b9aa538e9c3df1d603d75eca722f5e2805bd33fbd7478fd79559a40d72afd1e00023100b14154c082f415efc1e9ce06b54f5bbf0f6586550bd807e8bee0ce9d777815150e062b3b8d3ab7e8ad7bbc6b455f09160302047c435bb50066306402305a082739bddeae052115ef1828a2d0b7c616bd270f3c010b25cd8ed57e4249d1a4213fad15911e29e31bb906e9a4270302306603db18288586f06232370517f020fb8a0eb46212b6a59339988f78d16e4267d4b76eeef5d723c5235d0023215c042d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023005f48e5d5db3e3c8e93b21045287c82724885d6c0a39efee679ff3084940f9dc8700d98e568bc0dee924700987c4633702305a8ad152af2cbb09fc82570ca69dd3169b197422f25195e83cd4eab56f550dceef60d30a7711850a44002fa94351b2650302047c435bb5006730650230235a90c0707fd249bd5cde3c63ebb2fbc7c5e3b8aa65cdb7ce4388db321990d5d89c5f9cf4cbebde4682ee6b14f6b0340231009587b8777ce81485d53b5e11c60f846b58737fa66d4df323060ad9a40d7d376f3de4a08347efd50197be77ad9ae153080302047c435bb500673065023055de76d134a46c8046007f225d5393e7d4bb4216c9d7e0a3d8359198ad7d02070e0e57c05b159073395c52fd7b3b7cd6023100d4238ac29456e465634e4d0ace41e156e47a81077ba068b23e935129da8220336a553d3db40dfffecc1533ba610dee7e0302047c435bb500683066023100aefbfefd6cd8b6492d92658ec34d9566a140e5ffc94767b9a0b619e09707fb917b7592aa523f4a51bd00cc00e14d31a5023100cb20018b87afdeefc4948e7fedd4d6ec567d0565c79c017a1832e48381298b4f09610cbe7e1e895803d4f4c9d70da10b0302047c435bb500673065023035b56ac8aeff4286bd2e562f205ed96fcdc9982836e9bf887e13541ef3fe5bafd4f6c5309cafaaca1f232a9db39efbeb023100ca1c8eea07efe48739e0c896d085071b6a5bdd776e61cf511039dfe48559e44ff779d499f2e2c1af35305a09de1880bf0302047c435bb500673065023065dadfaa9d81bb60670bf024c386b550181b294e123f921a3e35ae82bc72f6094be698115911d4c371c528dc76892408023100b18f9b972b4a5988844b7647b7d3120efdbcedfa8484f75b3e3872e181556f3c653e153c195b22a6857e8f60395f859f0302047c435bb500663064023011afb6e34690a794ef577063aedaaf0b70df4ee5c956c6a0a39f34c6002364181605f83a701e06e02de4b3ea2f5208cc02304f70ea04c921748d422dea2178aed1a190639c574ad2452ebcb4f3008537c74bc5c453c7ca4573670021b31923381e160302047c435bb50066306402301126031ffd76e9da87d5b38e4f99b5f52e0582a4fa1c90c78501e1c18cc92fbcfd6d992d1a67677984fa95a16f0738c10230099a81edd755b2aa16ab4b757d4ec1ee69b82a0a51ae4b6e28ae788c33a0c2cfad680865a79348e889391bf8a67bb56e0302047c435bb500673065023100ed071b2516c19e6787071303cd8bcbf5f7f63d851aebcf61cced480926e9388de0bd48c56e96d82cc9b22e3ff99e03860230584a99c347c4b518b945087dc745c4e35d179676f44411302fb077fa900972c0e2cc2ef5da477072484238e3df755e080302047c435bb5006630640230301532b41b48cfbb192f6d434fad9629b0ea76929b24c9e2ee63efc10a30fffc6d37cca9cf99852848a52244127da64f02307dfede30c7cd94a1483d41e3871ab2bd4557b07fdc085217be9cab46e80e367bb2974eabbd061b86c73d6218a0fc743e0302047c435bb50066306402304408a66c1d17b43a56d37c2bda4307e67c8755dfce7c23cc76a0b9ba0c467165d89bfc55c76091da035d82098f7228da02301f763f149a54d0b01ef14c8bafe85bea7f4921fbc8d72f8000f99371614ad89596d07447606fa1bc4539900fb787b6260302047c435bb5006730650231009daddbd3c8a42881c05927ad9b05549e794df6f0468da3daa0e97cb15a7aa21bf3a05843081034f6d2cfe049de79eb9602305fdf8d97d3069a477620148075d132f00a67459d334d69a485bc002a3141143ac72fe134ee33109f1d83b835e95cc6100302047c435bb50066306402302d71a2ce7a7c4b04d23684ed1501dde94f1cca47691d17892a07536aafd1eb7585faeb1d3b3251beb919d76e7efe5b4c02305be06838312fa35b49bb0b54fe8a890677d97fba3de6ada39db3694f8754cbe71059d431c15417d483047499405a07040302047c435bb50066306402304352b72e94d64655b284910887a23772621ae618cba9150a0c7f68adc1520b2d33116404993eddc15ee17a8e1576a8a5023041f2adbc14d2c23a500abd57e7ca657d4f96adbb77dbcc3d7867b93236858726525106c5263872b3484920de08c900380302047c435bb500673065023100ff693bc98bb6e3d0ed7df88761ff8d7dea57bb10f9645b1322d509633c5dc995e73a4d1c4df70ee81dc7a9e1fc7b84300230721a428bf8d31d2623358c5ad91e2c0c43cdee43e5ebbb8da840b3bfe93cc9865e5ca2b9fadeb532733c2116e1400d200302047c435bb50066306402304c92be9e3e491a3ec49408e46587fd5562971b54848f4df23708e819b44f3300357fc45020abe4855d3079343086f2aa02306ec5bd6c04d11dd9fa3a935f55b643bae6c2503d3cf4233c6b950d992b4abc510a21f43d47b63d3db05880566f0c9a670302047c435bb50067306502301c914ed64f05c497a97a7f6817a76495ec99aadf1c6c888f2f30809b8d221ea6f1ef415021076f0258a87b0ad2b223aa023100b447b49f96e43bafa83964635f5cd4f4a9ef7fcf5bd099e3cf740ffef4c5bc873725a4c551a028e345f8c24c686002f90302047c435bb50067306502306b913b46e3bb8a3e4265d34959278f263d1a31df24c6002e4efa8119705172e9f129b5c3b109c2f87709f2e38ec4a63b023100dbfef474cb7813dcaf166ca8fc90d9725e01e1fa297b9f54b4397183e4cf784db449e0967fd74893493ddcc96e0b43a90302047c435bb500663064023012b4aa7372b35cfa0635e185387486f82519628dec691af189d575d3b84a07f776d52428dbcb77c6232a2ee35bccdd88023007b88b2ba5e5dee3adbcc4afddf9d782237f01dc03eac4410780f9c18835dce679769d47be79e207e85f0f84a67f668c0302047c435bb5006730650230387ffd7307e3293feab180fd94706499fda28f4d70b2fe75878adb853615309ff574219dd47f1885f9ace02ac40e66a6023100a575a354dfeaa92f63ae55b0e930b66fd4acda031c66dbbd4c349921ea2109b9ccb06b197df364049ccad1c566e691520302047c435bb500673065023100a6a537a20a9ff96fd7ac40350196898d234bfcdcb16897d2c602499590fa1a606c879e66f6f54b05c486f6cd9dae1f47023060c075e58c06c28afae1de22e3e5ad756201b7a8c2a158bf126129e632884bbb1a16affb21cc63c5e937ea487c316ec80302047c435bb500673065023100e4d1b26c3e0400691af196fbb2c324ac15142ccd8eb4138e87ff7d880dace43450d31bdc55e830cabb7db4992aab1b44023048178541749fc64e39aa4ee780fc7ed1ebc221eec228ee9ce81c757efdb35ef788b14245f064eeec9d44ec01cb8b17260302047c435bb500663064023053c7112bb668bcf3d94e963dab9fedc4fc9f4a76a9d326fae14a5321250f5ee20f49fe14efb7cfc4419bdbc907ad20d30230675fd64c2dba2674067e38990690ddc71ebc2252553b2e189c45f45b5674d48ec2c05829594de2eb5ade54a3b1cc72dc0302047c435bb50067306502306b798714dd887e9b59c0bb017187ac649d4922d8a0e090be3e243c02f9210786c4d1152c1457849e753ca6cd91fe3787023100b8f5c340f8dd795c9320cd456cdc2badb58420d7a26e01252360353ae41686d250b176ef79873e696f33018f8430affe0302047c435bb500683066023100f4d684265330f3790ae39ccd5a8e70ca44347c241c7000c1393ab965e60552e7182a6361da479684b03fea0fd32a151b023100c7e3209e2a5857f04f47025877126139eca7471c79c3dcd0453b552f8172c7310d310f454ddb4159b31eedba9d170d2d0302047c435bb5006830660231008ebb730b6ec0fc2bf8b7fe81911fc802857bdcc26be6d5c954a7fc5caca32acf90f1cb0556803e20d01ea82d6b926e880231008a4a8194aedc46230db3c7369abedabbef515aa1c0762753c9eb879c6a0383c0a4c39e39d62dd2f429bac7503007c1150302047c435bb50067306502307771998f120dd9a3bf5a9fe2e5aa942fff4151d0ceb98b131ec49be35511e75afbca74c7b9a7809f0f9f38df9020f0dc023100bf7db445736a2a39ace90414c77fa851bff48e9556adf1d7d65a8783b4b87ed3f2a06e23fadf815be46dc79ce3cde6fb0302047c435bb50066306402304c0aff0dd402dee55bad5a126be0df1c38317a09b654a2b828ca723457548230caaa99225f5b5d2ec368f39990c57a1c02302f342ea3022af97c6a8733fd7818e2b06ea59777f14ce8156ebc808cb22cdbf6a08bddce7011cad2d4eda7196cee54190302047c435bb500673065023100e49d20472dcf923cbf8651454bad25c065c97c6eed09eb316987683af0f57eee521e1aa208e3c67bf169d655001663a1023050120dc90297642e832cc40fc1956a6e5cd35901f7da3867dcedee7c9112f96dd99cacb2ab120fed232c832fdae05eae0302047c435bb500683066023100a61e07de52140ab9686113184174f89b84053ad290788a2a3cbb89f5501e2599044104d1e4c810a9448437c8238a9ae5023100eeab09f03a85ae16ffe157ac18ec5a8fac23bb11d85c00da3c83e07a28b5ebccad78d9f8f443611d57217fcf642e95f60302047c435bb500673065023042912aa3bb74320982ba2e146a07110d34aeb7cf3d95ffd4784660adb6645072c3056bc7287bb7b81d24386fa188622f023100e5c5f0031cd0b85ad6d56a36db6121f87741a1a26f2c890c83fe5dd905cfecdc1ab8ed7f15350b590149d90624809a0b0302047c435bb500673065023100a436866b5013f69e0c647abfb68b1ffbf6c6262fc1ea9125de7c3c375d243d9ab277e1f79e323a8c02feeed58fe10de902300591a88bcc94b47ba3c429011e823f99f6118e44e758e890dcda4767ca8bb57c4a5c89a49bfcc51942c5b5453960a5620302047c435bb50066306402302d1a7f9e63e25a7b1a0badb2ec54e1acde5423c86860fcca4d774c7189b16adb19d8e1fab646a9f2e73b622352b75292023005c8c1148c55f03b28d8d77f6f928472a097ede7deab2ca4b1bbd8e148052a87b0dae6102a8872ecc3522b91a77d2ab20302047c435bb5006630640230424fdf0ddc271bbfe5c163356a014df44df9b745e5fc69e399019d9058ad1ad566313215bf4f207abb9366c81689d8a002305659e93a31ebf4e03174e98807ed1b50c947b6e7d8f8582a2e4b54691143802b609084666548df4fb04d6c11460fa42a0302047c435bb50067306502303f4ed1de428d6b7ad8befbb47795b3cf120b071891dcc4de3b2fe1583fbe69439396bfcfeed8ca8965bd47070db25856023100ab7cbd355f52b61c4010f61cfaf6f75a9bf09e00445a379ee8c5f11a3774f20f0cbeeca80c40462e9f3d90023a9940910302047c435bb50066306402300afece958177ce7108965a3edd048d047c22975ff6dbfb9b9e0c876e364b3da88865a5fa265ee379dee0e26be83f0f6d02304eb6e4db0bc86b441bdb3b224df2ccd3962df5a40fe210691d941198e2230461cd2cff97ea389afe3b12e92c1f60468d0302047c435bb500673065023100cd19246404c692d144971b8e77ce28cf0313ec0e23fa7ec7f71b2e4a86a0ee4a0885eace8e0ed7dc416e492f66649d64023017572394d3bffe32aae2444b7cad68ffc05eea56a8c26f6fbfa70f58172aecb5ef0edcd9079669e7cdd78854b43818470302047c435bb500673065023100ea67792c72cef16e156ff4d051a2360f30923151ad4074f08fe3aeb2094e401f004536166f920169b74e1e344d10cd11023074c1df1942c03710c67bf86ca8426064a24f2556c3f4e4492aa70a8d52ec563b7b0266aac2a193febf064bec9a95821f0302047c435bb500683066023100e4e6f8499a819647c75b62434d49b207444c0d8fbcddd880dc29e387c4ce353384f04d420548e489d5950ba60710b83e023100be2f9151c429d427843beff6cb6c0ce4cab82d1f069fb1476d53f343e232003ffc02051f99bed302f9891cc83e6cc9490302047c435bb500663064023008696a33513d52db431fd8340e84088dc111484519ab5aaf22a7326b06e2b54857e5897c5fcaa63d9478b8a60dfbc06f0230111d09f99d4a08d2c4a911d2cc62fc28279b776095db6e820693decccf8306519c927c583fea83a7ee7f2fd77ca2867b0302047c435bb500673065023100963af42904ddd77e58f4b128f6df1da2efb5ebae7c75050b13051514a799ab51fd37f9944a41cedcf16ef2faa607b0dc023025df6fee86eb421614a76b9dfcb10f56442166f31cd7f789d2511775bf277314b59799732dc5c8db80f8f488226735f50302047c435bb5006730650231009617649d3446c0a03dd4ce38b04214ac6986d33e7ea7e2d6a34aee19f10f2c71a3a60a11de70041c9bc9a702a3deb6470230453732a6dabb28a0f0baea264849a27a1f2d680786a637363035feb7ee18dec08cd7447acc87e3b139c86419bed97adf0302047c435bb50068306602310097141769ae0b05dc8267b04a54958d5d23fc578a4154b07078295c2c2b020f852eefa6a432bc5065f95b6b52e2bb2eed023100e7d52fdfadf1eb7bd153ff19f041311303c9c387baea120c37516ea86d26ab736737a623a22b396f0eb71e8f400f40e20302047c435bb500673065023100adc043d4025193dab2f297a8dace8b13c7cf03a8c039952e98d0e953eb0876ac5832075c0af3aff8481811266dba8226023032f1af50e6b12b6671c6d9370ed82c259d349b99ac3676f8e020e402a06854f9fd31b28d392d48672676cdd44b2ffac10302047c435bb5006630640230095635b63f01e42ab05d923f884bcaa789c7f4df86b8e849c4f8ab294990a3193f5629b3002979b45e714ad2d85ce80002306db7acbb6fdf3d183924eadf77e2aac194e9593dc6e1de948e976ccfd856b36449769cb9a35432cb4bbc5e0d330341730302047c435bb500673065023040227f8252e955938eefdf282675c0f84a0ee9d0a2274853cd4b4e9ef6d8985d4f7d5c4b00ba13001ca420b440a47662023100fff1445f9d1c838acd08ad1ea8aa87e658ced144917528df6f547f26309e60eac198bc1cd21776dd6166ee8800de8ac70302047c435bb5006730650230770a5f662e4c63d71f1cd06a45aaa6698a39ea78963b9aa437ff60c4fd41474f99c7e472a719329ac35484f8792a008e023100b090511eccc5dead25d12eda587ccd277ba867d9530fb57b045ddd78f53a14a581d7e5247c7992b2a0462cc997b7c2100302047c435bb500673065023100917e2cc1f09dd2df31820e85d4d36859750a56282ad45b431f8720f36f84639f1406472bac7a6fd7cfc21126174c510c02303fa3a24a1a8b5e7366a344def9b494c751416b9fb91bab80b0f684e7a1ec9c43b63c99bf2bcc74c5a6ee4eb93180e74a0302047c435bb500673065023027b07cf0a273a8584ac49c3fffeca723fc2f1797fc03cd994d4d2e4c9f4f509351699b067eabe90f4c49144d989f669e023100f36dc8b134e4af410cde19108ee1e61450c2cc8995af0c091eb02b05176c4f60918e5aa75783e9655ae4663de86b4eea0302047c435bb500673065023029fc04882c8be194cce8a6ac0ef864619b19c3777286d0c6bfd3f6088ace13ca455b57999a06915b9289a5aa3adcbae2023100d146ac74c9cf3f8464bb56cab64002fd5413a1667aefdd97a346d02851761950288ef812d142dadfb22120724d8db2060302047c435bb500663064023079654a005a97e47967fa33696b0a98702a17a56c4434587be17adcc971dbef6d1a186ca505623ac240d82dce4573c6680230030ab3702bff3b78799dd0e0edd3f255596a251ebe75bb155a5cc807b1774a44300594cc0df1a5c91c8697e46c2065980302047c435bb500683066023100a4636fae698e082dc864ca8847373ca51d6be2f512d23ca2b89a9cc20372f685f501e44a8b27b64d8bdc3c333f6580d6023100e8f8c61995b22b3f2ee8e1aecc1408fd9095956579273cda076ffecc7ef106f5a87e34ef6b163cdf7ede5bccb4ad090f0302047c435bb50066306402300e3c32b1c1230c4382abff192ec9686cfaafe148836fd7e0ba0e1981e63b9d64452b78a9203da907eb8b5fa328d5fa2902300eda34edf8770d5020eb503d10682e80ef71fbd9bb356ff209c04cc03f535cc6f8c4d3a1ce053e48c332eeef3a2884470302047c435bb500663064023035defe8e90dd5bd1c483e2e0607574f8cd0cde28b6dc75fdddc63b4dedf8b028bb41c7303537de773aec7daf78ba788502306b805657ec71c0e7ecf5df3ce6a90e11a4445ea09a9b1082eff869e698d0996f09b439db5ef57850e96c4774887881e50302047c435bb500663064023027b97ea685a9cf09c1c403ad56e697d55f236aaa542d78e4ada91d5179528b0046f55ba4cbeb4136f4e228dd1fa996a7023029e4ee450aa41bc466299244df755af94fdeef0ebbb9f656131080adaae348386c4cee7a7c3be26d0030f6284b57ec800302047c435bb500683066023100a09cdbf430aeaaa7735fc71bbbe9bb9b974d1efe018bb022f56bda0682607268905a03eb11685b12c63757bde9fee24e02310086957b6aa387caaa844cc554082728c0c3f07a6d86590baaa5f3504a3aad3cbd28482b7748e0d3c39b2de87306013cf50302047c435bb500673065023028ab9732104aa89ee504ebf2ae4bdfee49479787bbe6f10f2e72f7a1ec4b272e5bf565531ed24abc713939ec027e5177023100c2aad009d5769255819b33e6f0ca912567ce5dd2b7d9c33253a011f07203f7ebc4c0b0c141776a87f68dc712b294dc670302047c435bb500683066023100ccf8616d54d77693c8edadd33b4d5b9cc91842b2912ed29a2461ceb5d42d76b339cf6f8da701e2b2327b86656f8a0118023100abe2ab7fc16a1a85f7ed6187e1661cdb38be1c919e143c6571faed2af5a6c8ea8771596f437177675f9d2771498c7a580302047c435bb500673065023100915fd99742c492638d40c7b0170fa2082afc26128c1700408a6390a9921e151bd75fa3d551befdb4d24b0eac8487311902301f25bf5b209e3f8596749c43c11b7de31a0dfbf322a883c794dff1de584c40eadae98261dc0709fc6bdfa39ead6d75400302047c435bb500673065023100f941e247aee524b79e4e327b4f728b55afb42f989b21989d292c3597c61f31a98fecf138b1848aa650d9ebc15339d12d02305802354e2aaae336d5f4e81aaf4a75fa53a4d492d23650335ce488b33780b6dd7c207343b347d7c77aae6ee25155cf9f0302047c435bb50067306502307fa989c158ef4b19eae48a3154a045c03e66874a97630465687ec0d32fb03c5d28499e696576703ff93db14200e1b523023100e1553bd52aed1b8dc4f535405090e95780c775b18b28cd0d5e0a5ea5cbac40980d598d01f801a594f36ff017e5e859260302047c435bb500673065023100f321773b97271409d84bbadc72cca85f30cfe5e262eae81968f49c7b641500c4cf52822bf3b5c49e684d84e61e1163ec02302e59bbf0f3d79611b84d8177793c4c6b51c2b151bf5cb8ecb2d221b6ca55db1f90ad2ed19cdb05e2e0eac7d38efbc4720302047c435bb500673065023034bb8a5bc98e138d070e71a4c8e1830c9279460be9912fd94707235d5da814d2cf4f6f3a7fc136021a5f8779b9d3ddb7023100d383c45ff76375469871aeb7226dbf5fa1ce9356adb0e05ca06836e5ddc2b14acc8a8659388faa7003b55302aa6530e70302047c435bb500683066023100adc62920921c6a21a373cb6c983300079a954cdadc94c9f2aa6b28e52414b9fbd2e781acede35d2a16f1fa6a0d1699f3023100eb70952e5f06e8c79f4d315b9f232367c8f6604d62edec585f4fa41b3e15b2f1b49ed6bc75ea9ac0f12b08aa365c2b520302047c435bb50066306402307a7b568776335c227b68980c8458895c1f35c38aeecf0c892009aa66167b74ef191080a63f7e9451586b6a90fde628f202305b4e9d17d279dd4802a974c4ba3fe3c708d1aabd3f84ec2e5397291ec0d6ea8953d31cb204118d07d74aa45b12d291810302047c435bb500673065023100c00ba0f34075f132d6d8d4f5fb8d52e218fee0a062425adaf0a165417bef2696a63dfe1dcdbed286206e1e42ad1cb435023017dbceda9e9788e45d414469141c5d0457c99512985952e705fd4333a3517f5919368b24ef0dba8501cf1fd074fbb5510302047c435bb500673065023100b82476fcb6b0ba22fd00723d52e9fd439333fe454abdcb998b79ffe78949856b60af9e0c403fba13ab28e13198f403420230375540cebbb697eb473932f99b18f5636537e3bbce0d64c6df78dfd78c4225ecf57b3ae9438897b29e96f1c385abe3960302047c435bb500683066023100affe6943d715211472659a04524d49c594adfaaf319a7f000ef9e04a4d81383ab6ade1556e91a8906e3485d86cae626c0231009e2d3ec33ddf1cdc2a74c64ab06bf1e14f466d70a9f3f98d08b4fed8834be3876c57fa41660b34cad77276ad48f1b5150302047c435bb500673065023100c728b4087c6ae01a7c7df0f1e4b524e29ab024ac607cbfde137b4aea6acc043dbee89649ee423f03902f24aba2980b9e02301f9cdd15d89841649d28ca5d329ce7edebf3c76cd40db54ae4e4b1933fac20a1216a2830bc07e9d2259bfccfc4d66c9c0302047c435bb500683066023100eb52a137ba1de93f58eb492c41d433c8aae0075c5b31f6a512cdf83cb14f2cf5e020423efcd08325ce42ee8192012895023100dd44b9b5d3098e93d864290967eb37631e3417d208cceaa0f8cdc0bd56863dfa88e38b682df6973a95b10bfc5e8948000302047c435bb500683066023100ed9adf48577361cdf8d4e584181c1d8eb3b5b3ff9f4a9b953cd851ba2d48c52b483461ebad4c749f788fb3c9ec291d97023100e58583c18a298e5f1b3f03793b2a5f206d3cd551d4866b8e8fbfcc7a2070ccecf6c07517223a5c7565dc5b367c51a2970302047c435bb5006730650231009baa6c02132be810c40fe97c1d9a88e383d5015ec76a63a796b9290388c7788d4bda22b7b81ce4f945051e43e8cf449002302fe1d8562613d6ca33317b9f512b9c5fe530f131c13fe6f0da1a1b337ea72f58bca31781523e1d559c772fec978596c30302047c435bb50067306502304811c845bb5c9030e2174f83f21381eb95a2d58d71b47c36df370e195f7d15fe55cd118f5fa148f2842e2074f4cf07db0231009af404143cb23ac827abd42b2b9bdc855eb642de4a69bb0f477036b75913f173ddc38d614418d6e6f5a6f4c694e6f4b10302047c435bb500683066023100a42eb1a7583cf0ba918ade5066208ed24e1e5dc07ad310289bbe516aa67992e529852ba96fd7111d4b13511283a3fa4702310082a881ce817db2dd837c5604baccf27e3324e492506dd0752d54ea3fa8f81937a8bfe32166f976647dc1d3c2f9ca50340302047c435bb50067306502301ca9eda95b1d37106f3a467c3841fcf7ee8ec33f05bc248497e412d41e5e49bd2586900ed0d2c03736f4fb2176ec4c83023100a853a2cbd890f4985cbdbf8e1f2cb1c550494f084a60229e282b3649992ef507e289dcb2c6ab07d837f03a8e5fec65440302047c435bb500663064023048493a89a71aa2ea2f43df7d1a810fa9b035aaba85c21de02685923229a0491f1a46ae5d68c6239135b0996768a729d6023049610583f976c33667f36b4d45a8f2b1c3a55575cb654d25eb295bbbdade3b3b468c5150e69f01418a75cd28ce32b96d0302047c435bb500683066023100b8fff6f36b2964a09158825caf721582cd0616f66bdf8ca4304e2f381a8e50a0748f2cfd72efe03fd76f6ada395fa182023100feecd7b6a0cd758886297da9bf5ed120181c723bb028b08f5039b1d8c9c925e39e5b9e8e7e5b83557c9cb700ac8bdf590302047c435bb50066306402306f7ae7dd8c91597da4aabd348d45c1a88e9fa31c380b8dcf96ec64fe494f9e35f8d04dd318396f93e6a8721476a3196a02305acb710160fdefad4381becebbd44f2f67bd68a9e1a0cef0da8d41cf3c394f4ee227dd5762bc0488e1d0507e4c5af2750302047c435bb500673065023047c4dd59cbf3b32703e6aa234f62e24174a581d3eef3ab7ea2690303f45a2c6ade1dcd18eb02a0bd8a185cc6628d7039023100fc9ab1bb9667bb7b5a8509cb007f38cd85d125f167e05ce7cc37d502cd95ce2b42a472d3751106b9d83f2469606137600302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307163185fe32258816b8a8039487954957b3669f8a4b95d9f875d2ff2fa9cec800cdd15a89da12b0b56c165a49ad5c8260230686f6c2f75d3c6e084347617f31f5249f3ae4f220fac8d92316a8c2532d7d4221706ccf708642c2e594cb9975e91c9b00302047c435bb500673065023001e2561838dca60ada907f607dc6c41eb6c4caadba5a83e5c76b7bb76650f86deb2f959ea6e74c175410babd644f6468023100f4467c186d09d70819f735710c81e515f201cf3751300c55a71a6c359282efe5ee57a699176d1bb3eb65595b597930910302047c435bb50066306402302f84d0c40f59efa25197ede1deec596731e2099f776d3fefe32842b5ed2ee3096700fb7932514247949420dac953271b0230187bd2762345515bf21f7f5733a7aab88e05a1a35fb0b616df086dc88e5b3cb4feaa2e5be02a58219c6d2032e2e81f6c0302047c435bb500683066023100853edbd0101763d21930008737ad6273e97dbc379bf77e449f0586fed85aabb41b5bdfb84165c19bba8bb0e1649a40c8023100d2dc464336e64af7c2f9bb3ec51fb10f1f083faeb8ee6567a855363ec3f0b5eaf3094ebfedd73722d59d3f1e2a985e0b0302047c435bb50066306402303823a29f4c0b41ff0b9e4ffeec600e52b5849cf1b24c2513a8f1186c65018166558a8454743eced1a35ec5866fafca2202302bdff2ed166291557678a0a739c4f209e2c52f6de1df8ca2421b3fbea2db2dd421ad40405e4b49b52065af7396b4bea40302047c435bb500683066023100a55f877c5230f2b5da6a78b50e73a7f3f424115ff68837ca49dbbb879811db2c4547ac95a137077b57965a16ce861922023100a1a276a406f6114353ef8a8178452cce7dc5b651e0ee8b5b4b06813583a759a856dd12e189762ac72b0029821c007f2c0302047c435bb500673065023025d32eedba9f21dac99b83783cb38bea83f01ca841f2dfe2920b9236aa56f1fcaeb790268b72d172940ef27275af9c610231008d38b553baff6d501aebf59d48df2d8310324cb4436f176e81823f14024dd29557e4ee1bd0b4e781acf3076db1ca94870302047c435bb500663064023021329eea8e028790ec38db7be2c1f8c8e0023d44ea5c1c8fa152dfb0fa943b68ee2b3240daa3814a6504529f1ca6c93402300c1e54366874f0ff17d6a3a1afc5dbac97318b097f32cb9226c3430e434e5c13020d9b0c36eea1a50aa2b02a8463df840302047c435bb50068306602310084f99285a0a24f584fcc8b6a448f83e7bbdf810771abaececf21db717e17166b83c200ee6801c5e999fc3029082f4624023100e49f34ac9968b03c4319d310b0dbc29f654fbadba5b49fe8d70bdac6e6499cb24c40b60d0ead88626f53b794b06e263e0302047c435bb5006730650231009ccd9acb3c7c2ca1e2f960589f544a9cf035481f172165e3f15290100213992a7848c7298be481d840c1214cc004c37702300fc70afec5c8db685038e417c5ecb3c2667b3cdf23188a525a4afd06ffe4add09a6dea354006c945bad29bc540d10a6a0302047c435bb500683066023100e4e24976d8cd1660a7cac2f86b5afed95edad84fe5faa8294220d910fecca7f4248bdeab2602455778c15bde58ce8b8d02310085607f5c0f4a9bb0f0193d3e40c07c95a1441edf545e7048b692facdbcadbe61ef88fae56f76185f9d3a05c11e091d220302047c435bb50066306402300b222810da13f9a095158dc8fb75f727f0e59c9f7b291de8d26c17fb31f27e7b2a6cded9960f91caf26f8a8aded2c5300230008ab199a4646fc66d2326b4acc714e941125db619a7f54aeab0dedef0ab87607efc8c6c0773189e19746d7f1d1a2d5d0302047c435bb500683066023100b03fd79f43f0492c258772c115d19a0775245d9f0e0382cb6f86dae747a53d515d1ab48a2bc94dfe3feeb7fa37d06af5023100ca3597c8ea35c299c69834e553c73626f0f9ae680ae555ddb4e524e8dc55623559a158782f17a929cb007cfbeb0b9a660302047c435bb500683066023100c1eefe3f83f93d7a075973ea93bb8c4000abe01c0c8231cae44103af9bdedbd1d86cb0ab553167bc73220ee11d08fcf6023100b997896cf24f57b68ccc01bd1dedf5df7c6e3372a4524d1f13e9585cb946eeb70252f4931f79cc7766fa5fd3ab3ca2620302047c435bb5006730650230782809c2ae79a71f8f43e9640d9fe5185bf68596d8b6ea394267937d32b2c2f7b594d71fcd3315cee84b03d1a53fbdda023100c67a61ea55cc54968f2a496d74df7cae0206fd61d45f4504bc9459c17d8ec49d8c82831ad52332a5706949b9ac4834360302047c435bb500683066023100c23dcbdf65273ff84c83318c3901d2cc94e3f9b8cd074fc8cdca639207d934f4880ea559c200847dc6560f29e6a3219a023100f3f94190b1c539c53faed9485cef7a963cd56bd1737880f4889feac2ef47d39edeb458450670eb0bef302d4e8faf7edb0302047c435bb500673065023100bf55e0c7635ec6d110f3d711ef91b3922c0b5a85aee1ff51b71a1b5318e5dab85be1cc3561400e2282d95838f4266b2602303708a6cd547d20fc9b3904b1f45d60dc278e402fa50ae97c3fa25384c9135e361b1acb7fda00ad6f6108c2ed780c58aa0302047c435bb50066306402304abc247b86867e85e24fd0defdbce8e8398df0eb98cfc80ea7ed6ca36b0a3c9d593de31c670856bd27ff07cd423282bb02306cf9d2a1965c4ea30b361153a11b100e8fbe622348a9cd665ecbb36d893bd0632d23337015c1d19c16a41affa52a220b0302047c435bb500673065023100d0e1bef41da81175603e49e1d0ebf41c1160ed47ae8e18eba3a70a223f50c7da41550c3e7b852b61b4aef1b376756b3302306888fc0585578ab5d92e0c43b51b86dfb5beb79ab0e9b66391aea7155ec7651fe630e8b6b0b74b786de714f6b3b7105c0302047c435bb500673065023100d9ebae3a7423963befa757bc1afbe9f62393d873e364b28efa1430240047cc783cf11c01fa0248aeb33b63424c0333f3023063b0a476b0ee6940c94416b62bf8554577618978687a1193660be04f7f8635736a9e91f86e12e4a133373110782ba3e50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023061aae183bc018deea7dae788659d1017fdf6a0ef629da904fee8cf9c686fc85b071760a6e1988dac97740f912c21a0a602302afd9a805eb603eb37201e69d1be4ca1547802bad7187462b83685e49cdcf470468dcb07df6c77f284fa6f9cdd5297c60302047c435bb500683066023100a5a489abc05d3afb286d1ab146206199970cb38d124b38dd036212a1330ee941dcf7f36d26e788f3b14f5e015c9c5bff023100a4f9cd112c353d63b55372c85e426da362f4df58f898a5e0560a5674058f5ed15258068942ffda47fd3acd01b69be5370302047c435bb500683066023100f27f827a5779c376b5b261c6a7b7a7d4e02eaec9bcb7007facfa4def781a394c3745df9fa9643046101814c8fd8596a1023100d4fb6e65ee145b8b01e5f247d928730bcc72a14ad3f25047083caa24ca170384899e4974e35f7e171f9041a514a6e2d10302047c435bb50066306402301079f20256d1cfbff62244658bc207c9df32e8a68426670322266797b13e42a8f2f62ff62a30355525f4997319e696b202303ddf9d1092a219d6f1284671fdbca6d022db019cf7b851e5197f931c42a8886ebfb9158b4bc27e0127780cc1f3f1b3df0302047c435bb500683066023100b4e78a95b447f18a034a959cc8aa6b2e1266a04a370c66d39f287d7501d813332ceb08899787e8a51a6fb09d8430d629023100b3ff1e8a07a667130bdc1dbd23b6f05067f134d768f590f6dc7640ccbe0d8613a153545c6e396b20733414299b5a90d50302047c435bb50066306402305e1cf2f01aa24034058a9eb2d4ce165b18563015e15901fc16e891db7385040ac4cf1e43316e5a3ec2a97225cd0b872f0230634932d5820530714f0899b07a6d5c5c1d39963b91e97bc60174b09d760a2f4cf47a65325ceff1923ad13669a771b14c0302047c435bb500673065023100a6c1876978bc2e79848c0e22c42c8f889a99aec78fa45aaaea244ccf75d924ddd458155caf18e40bf5b2008ff9e8e949023061042094f62437abd411acb5a318765a4049733b2bae69f8417518b60696cd6e33e7bb5db2005024b43755d99cb01a890302047c435bb500673065023100b1b9b42f0f8533c0ea3df689fe3515b78e1f3417edecf7a6ac8071ec49895ca655e241159012582f8fa78179bb18898902300d01ea205f074d9f5be6b086da57e7e85a69e180d65b4845a2967eb2eef2713f3020f2115fd6ca6d5dbd6fa09bb1ee200302047c435bb50067306502303089783113c1d127edc4d275ff3148697962f2ba41008e282adc643de5cb3221c3ec8c021458a0527bea157fe3f283f802310099a48f553c4f5b8fd5f4010eaacfa2fe97cda511865642f4421b2db90ebfcb06f7c4f3876ed7c911f1158b22ab238a820302047c435bb500683066023100ba7da81a5ba6674872c4cf5078507f0d57eaf26773adfe4acb4193a6fb38678cc3622abf6232e856ef48d6b1545cb27c0231008ceb9a064439212feb9bdd781c550c3a0d12788242709e5b6c9a48c59e5d50e9e266a25fc7d9b790ade77b463f01a85e0302047c435bb5006630640230284d949671c3e2a070e8e3e7b9ae580b8c9793821464572386dbcbf5ef417502b1c1e05c98631f912595cff6f22eaa5a02303ee8a0bb4e7b0659ddf9eac34ac967bd1125c03b49da7a270e4f2346169594e3ead993207a7d5114421ff8694a4a35470302047c435bb5006730650231009484dc6716c47339fdf0c096ffac7fe08a9c43ad4193c276f23c94a62728b59f76f87ed0d7b5935b7eb363f72d08727d02303f71fd44119d3ba7a736e507dd95943d8f9697a4d5c753b85da36dbe1ecf59719d8bc62319250bff6aee1def7e861f750302047c435bb500673065023100fa0d2c6471f0ef86d5e11753fe0ff950685e63f14284c154fe1902c2b6a403e9cc7016a869f2ca919436c96f70f523e90230360c978c8cc301ef4f7a9ceda686a1e62026a883280bc3756932efc39a7047e210e8cab5bf946ac9fd1ae470d23305990302047c435bb5006730650230375ff5d83aa59b4bfed867f2a787924b56f5626e154472e2d431b1bb1cab573b3ef0ce65dcb93daeaed46669b038843c023100c985483f4e4be114104c0274bfc57187436bcd2c7f12857376f071fa888c749a86eb29e9090b86a43878a66acd1464460302047c435bb500683066023100f7439ec33f29e2f29bdbfe45e585adb5758d35c176f62f85bd5641937a5defac5cb7e7b323916d22cd492a0f9f6e3090023100bfdad4c8d57092f9a3e92c734200010b34a607fb11bb961db0b50d3c6a0a54d5cdfd78bf45797982e9de16b9a25d8df30302047c435bb500663064023072f8c4ced7af1442080f26c9acd1bd27c3cd30df212b392119962f090db2a1c61ca0f0882cfd3580d5e067931f8e67a702304bdd7b8c5ff8d2ba868e8103360a746c438c115abe4af7523831f4fc0a10929175cff3a1907794ea1279a3c08e57060f0302047c435bb50067306502300286925aaa9a91d9ca407c74ada176deba1b0a4cb4cdd95d13a0e8e97677e5ca86e73fd19c25b261a501cf6733aba1db023100bc82cb2ceeb0c817031097c2c0492063b9bcfc550325c7b6e8d3c5adec001a8742a07d414bc6ac7e7abb0f965149077f0302047c435bb5006630640230753703655c48da202410d2ad5222ace8253ed29b35f02bef725a223832ad7c743a7b33c7fab9b7e81d34d3cd0617c67a02302277066f1a76526234d1f431585bd44b2947ebb730ce3513c93e0538e543f88405ebba41d043db2b97078711ed1def0c0302047c435bb500683066023100ee1bc8fe84267083f97f1ae6679533795524e81e71920e7424e40eaffb624d9353232b5c2357dc02bd191612e1c2a981023100d34553ed5ba664fb5c25cb9b648b8330fe08149826451ab728fc3c3622c010b527e3911b41b07a3519cd21c1f6677ea10302047c435bb50066306402304c97de8a9cafc3eae79f3f7674cf42198b1a380794a9a77b87ef673bc7d3fb8d62d27f10a0a61df06bf7ec1f9c21e0e102305b140d5251ab14bfac589f7d8bbd7990c6c7dff5ec75b95e81f122b0b6073f7a77c0c6cc5ffeb22a805a64945a9489690302047c435bb50066306402300878bf820074b9e8d9df48dd66559fdf5d9488326e35210a351d2f745dd4cdff8e8ca34e3023cac3031905d4ce4b4885023061bfb6e37a2625ccf2ffeee19aef7c924d887a52fb5e6e7a128f2963fd7c413439d2a2dd56b10306c3625fad869df0800302047c435bb50066306402303d7b6b340ca9ce59afb14b080fbccbc33479f3f1b78ab2a07856f68895d61f58fcdb7fbc7b4278580c466110a840acfa0230033f030eaef89dd5ce3beb85a5cedde90dc8d90e50420172400abeb02a21e5a140e1a7b75be92fa3bbf496971d9dbe450302047c435bb5006630640230550715e8416abf903d1b09d72cd0df02e2d49bd463fb3197b31d10bfbbac18b35db45918c3b9688d8329fe8ef7a292fc0230220ba794aeabfbed2c760793088ef589da72ff719be3858f1d3d86543e33477c6fd3ae2e9915dc8f20773b555f94397d0302047c435bb500683066023100cf7bfcf0b367e009da48818dceef2e646d7337f2d9b886160046b0136ff5f117ae89a5d8ffda13fc8c3767e93868b35f023100a7e9c2f78987e5003834e16a4b4c566be4c89a09b42fd89ad021dd2186e39756e87ab6b65459f65177a24e3601ae75f50302047c435bb50067306502301a542c8aa65eb540f75b7467d9bf5a0d1e76481ef6520ac864a015a2208b091c71f0f2b285d34314076c3a409abd9b71023100c5d2fce8450f547be12043328337ee50b88800559d24f7a39bc0128f5128aeb0565925df632ef2dfb19daae06b5ee8b80302047c435bb500683066023100d87f8d2941e93ebbb1899843e73ae1d849a2c6b9ff71d6afffc155e7b9564cdedc43772f07611cd19d86443ed7b3194c023100d16a645c20b16ac9954e61325ef72fd57cec59d368cefc36d559a63626e0377c7c3329cf4808513bb328be3a430e1bba0302047c435bb500673065023100a04189a41aa109cab96def3db4a35417bc9d998cd7db4705c035b68f3e5e75e6eeac691b75c5708914a5ab09d3ea2ba0023031a57117bb0c5f75742c32f133eb952361323cf279508a178a7b40514c4f02af1c70d54ce8b9b746195cc86b8e9f5dc20302047c435bb500683066023100e4dee5e9f3eea81b1e7e475f463dcb52f75bc42d6a8ba2457cadb031d924e3684560107faa0011b71bef540cfaa2299c023100b4fad4203506dace502d08210af07e0da8d59d40f6ac69d365db0f09c01b4e70bede11a7f43f2862bc13113600d837d00302047c435bb500673065023040cc6b104cdfbaad07f037c35b9f516df081e3b80cd242af9049b04768f8984a11c353efbf4399f4e26a3f558db7c8a7023100b5e06cae1695343dc10279143dda282a139f57f59205af8312e2e9fd8ee7332bd13b096bd95d8cedd11e7f9e5706360f0302047c435bb500663064023056c32beabc51f6101b9005263ce3ad45a43c7f8e6a754804c0f987272082047fb92c156bec7aea0547ed30a4b52748b102304b307f226da89a8b6eecd9f31a49a461c3ecb48fb9a89b4c9fd079f337c04b3d3baa257ed3729c272bd7bfc4f8911a5c0302047c435bb500673065023100e00c930887d234d15e91951deb8315a373e901caafb1331d18f96ea6fe966bbf21325fd18e03b065910c6bfacfe6c35e02304d2414eda7fff6883d503a970d531db70c8c5ed453eaed5d1645107fc3abb4673eb5a7e3ffa71ad422d6db8bdba220320302047c435bb500673065023100f64b6539d8d26b6b0a5001e7ac6098912be1d6670d1709a63e79faab4af9999af57dce4567505403938965669b2e529f0230462cf171dfbd85e9454dcf0cb4d15dc6b8859309f444e3a3a3919f8515d94778ffaec16aff6d4a70706f929270b352940302047c435bb500673065023100ba198360bf7cf5c4006f88fadcb628ee049e84f760214235a3bf08fef238d4fdad37ace5df0867312d4eef76c1df0d5a02306d771d786afe716b0f013d7e013fffec7c8528ab1a1dc7e53c97a649a73c660ca8a7f36db8e1e895763b170ee80431920302047c435bb500673065023049390402e1078df9e13e9bc2eb927920b7c15d276ece3a9e18d78d7d1b054a02b474b67690f4a64807e9960c0640bebd023100e098204e7f92fb1573ab60c4e93196067a972c795bcc88bba57d5d4c1a05e1b0de18a8728f734602d183260c418ec69a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306994f138ecf03d30ce9c9bb7bcd5702520f5fe9c1f9e76d21b7576a27c2b2c9ef385b34df3e45e4d04f4ec134d3ad66102310097b033bccbec94a5a21008d447d2fe1bb802e58c7fd34d10914d96d1d5cf0de68d4649540c32501d1d664069174105440302047c435bb500663064023003a5d110b07830783fe148b76ade1cfc7336a6d68c058521cbe5ee7fa3988b70889406a8089b644a9cd195f8e0b3432402304432a116fb67599690470293802e3a90ae6a7322d0101ca442c9b089e8e1419ae413a4f70902932ef48b4fb97a8576e10302047c435bb50066306402307e9c95e099f9fdfdecaac6bf7e544b59eca8507eae486742630d16fecd6843b28051e599e8e553479cf21e622bf9d3910230696a5bee1cd71d4f0b2627ef6a56c680c1a39daddc7654ef42c88183ba80efc1b8552b355db78a526f6e4734f4f9dd130302047c435bb500683066023100d067f7ef53a24c9f2aca50c66feb78e419174bbee9ef30702d9c2f3681bf74f15aaa878e96f4976c2bb6dbba3594cbcd023100d7edf636d503e3aca5e590691927ed128b29d8eab52c68f8f9365fd2e2d0c8e52cdb77d84a1c171bcd8ee51aa8bb33af0302047c435bb5006730650230662ace168fe071c155d83b6acbb566a2ce272600d2812c500328537338c99e0ca3ecf4fccf93cd0b4bd7725e55d00e34023100b3a91d222c5b71c6d638be28d0e64f95be341c80afbef493860b7a2e6316c5eb40a8c314391d52e0e866b3e5580fbf530302047c435bb500663064023050fbfea47b658129b28ef836f9f0b54bd08557b462ee12f42a027f02fa0081b6e9871bde19893671cc5bf4c502c80a670230518539c8fbff8d65c7d89685f163059f688e2e4f7fb70bd2cb2b14909fd9eb23bfbf1a515fb9806c84bd17d743f9d0d20302047c435bb50066306402306431c5e6312bea8d4d92521e761603905ee92dc68ed93b53f25711b94eee80f32a8cacbdb214340d0924a57ae5dd1def02300a641be19d7bc5d7192a61df5bebd943a416f2460d687b8d1cbd1dac0ab9f83d2b7ad7f3881acc1d9dcf1b93b71de5a80302047c435bb500683066023100bfdedc6fac9d520718ef43fbc4c18325767e8224928028e28f2525bef79884f107f1476a0525b51f56736ba05d64df4f023100c0188c2a2b8aa3a7e340083c15d4eb7104b7415701c7989111253230d036c903f98c200ceb645c6c6b6a05c526e495cd0302047c435bb500683066023100b6af0f28fbb155d0804b9ec65c97faa7f20fd695b1048609525012d9a86d0d0d6932b12dc2cd43cd51b5847ec642d0a2023100de89aa6ad5eb63c3abe1547141058bb00e8dde82287a055dbc7507795c7d1b1e3fd7c610086806f9e542935bcb1662420302047c435bb50067306502310097b9bd9f4da7216df090d9963942902c58081ff373813001e6b5de938bc31c310949929ae8fc7bc4a0d4c1f9d12d1b2a0230591226391ded287c37f8a33fd34616d835e9f31ed78b413700ffcc4baa27fb9f5de481098e2b93dbc924132fae75bf7b0302047c435bb500673065023100f24457f01d02acaadebbfb7b3d74277ac865b1e0b133fc50d80afea3615257591695dc740a8fe434adc1322c2dc6b1c302307ab148f3d48d09ba13918464016269334cbccd7864a3c97f179bd259c595d02320806370c2f5f2b584724a6e8b20c9810302047c435bb50067306502300d95994c487c79b3d1bba7fce539ea3c8b4dee32582d243d6a3a7d4e15cae288fbd548c982c7c2c2ec50879a4f52d8c0023100959fe619e049a43fe4752562171956bf66db86f15f3c2ffc4164bd6bb0bfa382c6016c74ccca138a9d743b73307aebc50302047c435bb5006630640230357c0b7049a76c830bad99d5b1ec7613435aa4daf6c8e32852c75e2cc584cabeeb0563552889f54b697f5cd27d962d0a02305a28a1f18621c58a06242402d14f2a67cea771c6c2c8b35d95bdccb27b5c6574aac7c6542dd8ff76c0d4a64d3574d5900302047c435bb50066306402301f20f793a87d950c0bfbe1234765b99616ffb30f120fef8c4a30a7e5ec3bce714a1c121a35bd02d9da744205cd428aa80230144483b21fb92f40ae056f52b6cf3401b016c28e52914674ed10e288fbe04ecd33d9982b5a38b752d5637c635197f2750302047c435bb50066306402306ff201b7a0c6087beb8d660f2a1b5d992fb89e57f8d8b59ccd57916d70d47a91870ed2ec05730a41cd08f4493703da4602300e68aeafab161d4eec1c8f580c5c022b3887aa2208c3b6ab028274c962ce99824d4b28b843d442a7b790a64cbabeb5e20302047c435bb50067306502306ec600f904a4eb859a933050b563116451cf6366fe6486dbc0b28badcd4ae47db12d3568b4550147c103ca5c6488673c023100dcca900bc7424122873e686d07b6dc5f3b8038e8da386c3ab675366ae765fd18bcd41c75fbdb782cd971bbd7cfdff7760302047c435bb500673065023100d916a07347f6e000f2e8f6b778efcd49ccfe62b79d4af77e1c969d6ab1f7088bf01c681b771be044e1f1d6c9afed552d0230250f0611c254f7ca749ebae3d169534586eb56ab0634ada5e267295c23f2399e1c7281494e3c2b6f04abe6c57966656f0302047c435bb500673065023100c39ddf155c4694da6df53cc59752ae5ab4dee05e8073c7c5be9342cce0b6f840cd1862c5b86a3ad412cfc2eecee4902902305fab4245082eb6a0277767140a0f5447dc212d6b7bd31694c1b960c5cff824afe048218b6811f1d06dba85b7c899da010302047c435bb50066306402300b44373f3f2abd3d9a975f85c4c982dbe0ad760381a26392753812f7f82a957488d50e5778b986bfb31ac926f86993150230532cae5901773edfabc6775dce116c53d402ca0d22b7b094456824192b357a5f88f87feff5fc0d46ad4105531c02aa630302047c435bb500683066023100843603c562982ee3f0dc48df11e0a3ce24366e130726e56ed554343c675b4e7e57e6d7b14d2e2e1f31cce36504ee0c6a0231009381814791a5354385cb6a5e9cc4dab4808e40664e8aa1824c17c8ed493ff80124f361625b80c5b5e06cbd32fa3ab6e30302047c435bb500663064023000ab27a6376aa9a6ec524b9fb62b1060475e2723c39163617dfe1e2218f313f3e9dff1d88158654c07c7c053be6970580230222dd9ab0c0a6b8272e0978c73dc436d096aed7747d23f0edff101e43cd6e6aa0f15a6867675089f409647702ace74610302047c435bb50066306402307e6c869ebb01587b7bcfd98a04dc6bd4748b51ccb19997bf32a7b64e0558267a5c70fe2e2c35ae446d9fb486d757ecbd023070cb40ed3722ff5eddcdc703468b5ba3e01f0b8fc9bdb8e7f2df66929d83cf67b4f139aa042e7fb124f0b387ed658ac70302047c435bb500673065023100de1ef01bb0fbdb01049fa4dc5ab236bd0f63ebdf069bce59028df42b105f4a9cb0ad55b9e88baed85b53bcf290abee04023032da929b165c03e41bcbc8286b0530422ed2c92c4a37cb8da931731dccc06688dd7aa4f43af1a5c6ce10750b1e18b9a50302047c435bb50067306502310095fe1ead0ef7aded6405f759c5292920480929711dd1c809da0e0836427e519083691bf1711544ea0963b431da0b7ff4023035fe1e5a456c5af9b02617eece936f33f437273e56c64c1c23bff257617ff2c9c810e08f6d0fba091dfb6ed6603c60020302047c435bb500683066023100f3648f73f1df09335fad108e0cf94bfe3a0c3096b975d549b91de5a26dd5412f0130b5f86c5f065ac8751088914c4de8023100b18cddc8f4ce2afc02e0b6904e0f3ba049cedd5a51ce2102795685168e8056b5b1cdd9a75e40e37a230a1ebbae71a61a0302047c435bb500663064023021c058269e089d4f85087fff8f5aff607b0c91346b58820fe07f4f54dbc3d3c93c6a0c363f60468f053daf74556c7fd6023071ca64173e5bbd5541b8420c0f6ef3f8236788320c49d751f6dd3a19abd0af572565c0f5ba4bc5445d614a657a52623b0302047c435bb500663064023017688840ed7719e4530e46f4078c220522a5cc003e75bbdd8ecfeae943da1979fe662d469a0e95becca2917d84060ba302307ccf8c117aea38ef4379960266345c2a265a4c3ff78915b1ac4400d81225a35d0de9d6bda6980fc79c9937ae0e6c6da80302047c435bb500673065023042b2750f0906b3db2402789eb64643d0546e000cbf07fcaffeb4a365d3908fde71f27920d7d52ec9d8c1353d2212c29a0231008b6e673b97100bd73055017351464c5fd81c5e541c3cebb68009d8fff7c4ca78fac06ccb6d18aeed0f450eecf1385fb10302047c435bb500663064023028ecd1422b44a29da1f5ee3fcc6fa811d98abb2517dacb8bee789b45a781682e876e2e0152e72d278e2cbf6f8f172d4702300b46dfbe546cdb74848b1530566a379987b677cae103bfa7005752a0ee23fa6332cdb8de728fdcabe8e2e29590a132cf0302047c435bb500673065023100a5b355359f4a887297d4626f1cf331405e67f92d39025d4f0da125f6b3588b6389cf0328a281c4c85f683a35bfb3d1d80230054df4d8dd470a70e268ba761551c0a977288afc8b128282198a705bbc696559c2eb347545180f6dbc459e3285a023fd0302047c435bb50067306502305b287c5f72d6e05907e9870ddefdff7acfa5c3008ecec627bf41833e8859964ba9b66ac483fba6a83e534e6a30de282f023100df257ed4641c4f5c0fbcfcd5906ea5d07ef142f98bcb9f72741db2104539cb7c7c8781a00a7c4b30ca510c0c84e72b910302047c435bb50066306402303a4d03cc134ab6ebc1503f2df7f1dae24b905c215c478de1fbb27fdabe020a42e8da0dea4917e0b34b19b3f6fc43121102301a87dc7cc65d2773c4a1f9bc052d8107854f2b469af61ea7da5e5ed87f1258046db499e97c931e1820688fab4d1f9dc60302047c435bb50066306402304e634a8d6e905e67722a456a332eb4dd4466f9ffe9e452893c06d71769bfdd5341bd19070484bd1888ee3389b677a022023034a7b774c5dfbd58f2879667a6ff27bf23a8a45ec27c9df6836d3dbd7bdf8f116f105ee7ad997ba2dfdd05b54ae90faa0302047c435bb50066306402301f2dc57d617d63711133bb555f3122f7435c63880e2f53e41e8f9185d30ea841d2db9ce48682758dbafd7ccadb0bf02a02304c96973193332f88f50dd83901fffe17843f19013b3d5f042e2442236155cf401b63209842a8881ca598d1e5b4a9a0ac0302047c435bb50066306402300a0f602ff80089f003451c30eef675edff3b07ade078e95e1c5bdd2e38947393ed61c2a3a4008dc7ae34f80d079652ed023018dd126b4a8a91701bdaa0b2585426bcbd130ada699afd92edd21bced78cc846425fc4c9ddaaa300e732b991bdb152490302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f68c3f5378be55efa0b9faec8276acfd5b4d21265c7f8bcc1b07be305bfb01519138a3528bc0359927c5d107ccea817a023100c0818c6a5bd399f45a7517dfeff107716841a67903828009dd0f280088124b1deecc536e517df6435d439a6573cb61dc0302047c435bb500683066023100cb812c77d1d338df75c75543fdac7511ad93433e85c0bb83bd9db8f675282c1e8a4e4e20d43ff36b6f2f46fb07479d37023100ccd9c72f5f2c944231f10632d2999ac342cd0efdc0355ec212cb480a75f0b82890e679a2227b72658b70a1794b616f310302047c435bb500673065023100e2aaa752f21a49ec2b41ab40b7946bc7947d2391fb9fefd3ef1591acc48df44c3d7e5a2fc1f88ca0abaef9986f2325820230576874b952ac1398910556592fdd186b2a02191b6ab88cb3d751291dfe3d7cfa69f4741954be518e81373968323268770302047c435bb500673065023100fb61b2fac5aa4aa501b4fc65edf2cc25d3c817f314bae77f2ec40e1ae8cfc54a226c463ba8fe437a3c6eef8f995d707d02304e1a2282d386e071736342ba5823f2506964e6e63ff78a06b466dc341fabaf51f893d5b37c381a46c634aa39ac82675c0302047c435bb500683066023100e3c177e420c9759eab4225f08271e031f9a695f5a63220fe0706985a10d7a5539be53324a39f0c7723577d87a8d794a5023100be7d18e9a7a4cc59c15012225bdd3356593ab710aaad28fafb80dd9170d3b8c0232636675be8863972854f2d67ed6b970302047c435bb500673065023100e149ee5a6e6aa5249f1ac481c5adc4508848d4ad0f22f99f3759334ebcbc0db6be026c14b8fe4f06f934bce58d4cb4db02306fed14650a87f8e9b620025784c594ab6576b156585195317de1187908bb51886385f1a052922e042d0a8d466ae883f90302047c435bb50066306402301d14f567a2aaf57fc3e2da253139739168091a56033c55e037f2ff2c3280900c5e759c01c9a63c8e55a10ab051df035d02302c642e24ad99ba3db06f7623e12faabcf067b2271de7d75e1a02b77494069272160948854f4aab7d422f549d8db93c850302047c435bb500673065023100acf1334937be2855df03820f1882db70d0410289df2d58789386b16220797bfa978fb9f7cb2c8ff7611fdefd3263641b02305a2c7e3327646d0a3c41cc5e7fe6edaaf7ed822809078137f18afc8190ebeb3ca0a3d9ec1a26faa62bc2b900c81af3660302047c435bb500683066023100f6a4c9907360beece6517be7ff6eb27b62235fbcd404dc7b3e0d618204bd39756a1fb47f37adc2bc84cde0b6d2f1e2e9023100c5f74384150caaa3f4675dc9a494e779d52157a76dcb9dd6a967254f2eb8dbcce1fcbb6279394fd3a8427ae1296db2970302047c435bb5006830660231009d2469a2436e2c7baaac2656359b6b3cc1dd77359241a74da5fcae2cba245fed3e181b6ccaef12258a6bb4312ecb534d02310093bc37fda280c10e3acbebae8fff79db4f118a7160dde78bf43207e41e0a8165f8816d59a2a7c654b2fbf27e8150cb5e0302047c435bb500673065023003cf4d077dded998fbb2f8be7638be990bedb6dde3a75f19328117d9f6a69280f110263838e5b6ecee4f424b7d9d85e902310080e98888cbcd0a6599b5bd9a69284590c563866a29d575843a51607680d44d9d207edfe1a0c22ff771d56dab782296610302047c435bb500673065023100fab265f272c936ac9245c36b421ff7b050739ca819a29ce270ab50eb3547c298b46f216aa2e1813b7545307a7c5e43ca02300833c61491604054ff3141eb8672906098f49e3ba06cb51ab31df4f827d489104fc1d611e206f6fb757be947f2cab1410302047c435bb50066306402307f1c579039ad8c85dd38145944308aa10bde54d3ebbfe3c5f0dc78f70a7eef15d75be299cea64adef58c848f4acb83e102301af831cca8725621f5cff25012bee0283d1902319992e9ad3871de0b4a0992be05dd0b54579c089a60b6eb0388fda11c0302047c435bb50067306502305fa3ca5722b8c0034515cbb804bc23fd35368b350bf75bd1d716fab6d46b68f998a8ce0d1af3c7546a6d252c73a9e6c0023100b88ad182353f4e99b288a6958eef179bd9af6639e50457ff7d19b24a1de787aa175c72d07da8acb2448997dee80dd84a0302047c435bb500673065023006d80e5e514b2a87c408a3a85d06863917cecc0c2ba16c4e3781d6518e1ec1f499797b87e33807f373055973e40304c6023100e7e08a563e5b576aaa63eeba4602417c4750d8593eed4b915d2bac648594c7a7c7a089c5218971f5ba42db38aa418e340302047c435bb500663064023061bb90f4d8b0c35a89881b06f5e5b2e80bcc48916d3438d0ac58274ab6518e3638dea5fd84bfa46fdd84e67ba1f13c6102300cd34cdf25fd99a8ad2bcbf55f2ba461c98ccb5f08012dde093284b0736b010e582b8e2dad3ef40e13b070e4a068b6420302047c435bb500663064023014ccac359a2ba377d2da4dfa5d453b4acd8e5ad25636ffa6552a4cf93d9292ae5d414144d8429c94882028d61db0a8d602305b88428d487f62deddcd1dfe15e8b6a34f01c0a981f915d4f5d3eda684870601962927d64e6564cf76eb11fb1a6ebe2f0302047c435bb500663064023048d395434994410efd254ae040038adb449088f9266d425f71a6be4c5c3997cd7603ba6074dae5edbc95925fb4b24ff3023020d3149aefa79345d5551aeed19c3679640799f078e46b2bc62e08e5aa1f9d540a0d42fb8fba16668d00d8c7afd82cdb0302047c435bb500673065023034d2a03d77e8470262a33df9795e773c87efea48c8168f7b1ac3a2bed02a3ae412c366b6f85a2afc7cee9cd0283b0d32023100ce8047c5b94dc1635e8ba1c2d798010812d44f6ff3cb5408a5d4cbfe386b61a63d0ac8c6e7fe6def7c5e98dac4b984e90302047c435bb500663064023064fd99364cf3b149fcd0a2415fe404297d67d379f4140177fc1ebb3360f8981923c1a7a14a38887596db6aa3eb2fec4b0230086ec8883e82dab45bd86567376a5e7605a2e061a3dc8525b761253c7df9b72b00010305286dcf22cc983637930d9caa0302047c435bb500673065023052f5b88166867e5cf72b2a24179c9879cc3cc90e43860dd099594bafacd087ee42e03c40cbe285edd470415a108797700231008d867d9a284175d5aba0c9d3189f45f75fedf89df64706d93394f98cf6d422c36dde2da75c4909dcf1bf06e13af7d2c70302047c435bb500683066023100ad1f7ba5a88fce8ecd958a2c110149295143ed2827e0ae021dae46a897a98d27a3665a8f475575b38cc8ec0392b95459023100afc118ef9bf45b4cc13a0602ad02b5852d0aaab8b7a5d58a1eecab03c166d2dd0ca3f463f7a8a32ac6e8a7d4915d675b0302047c435bb500663064023079da96275c3ceaa20640d9b94a49208f22824256b96d91dab0b37e138b416fb5687c3055775af1115b2dab80c67845190230090c6825ed298583667480cebcbc322e5e6ffb1fec09f11749d5762d08ec6f59cf16f5bc665944201c2c2b522ca7c16d0302047c435bb500673065023100a9b36d016dfb9b6e513fb97d0a37346d11ffc391f85554c602453015aee4aca93fa2aa82f8fc119c03f31cfb93ecd0bd023068c07468022d1ac56e64ba6048773cf2e82b0f0e658a849dbd906c502dcb62affe106408518300eb819884d68f4cbb4a0302047c435bb500683066023100c286af061188576cc9a4bfe03de3328aaf926cc6d04d61db9f29dae3c36baff172fede270e81d93351430db988c55fd9023100ca270c1dff32bc44306611a71ca9bed18b2538ebdc6edbceb46f1c6529a0ddf841149b1ce8f3140d2ad4ba6b395246790302047c435bb500673065023068edfe713de5696d8d4663c05c21261479ab00bfb76c5d43fa40b1cc5660fd2c64e3b71fb3434e74336c86c1ede9154f023100d017f1f2d4378856178caadb7be8ea0f8a6ccb6d3394b819d9b3e640c768f5d4ffd9a996ec5efe1f2361296504a63fe50302047c435bb500673065023077396f415e0a455efb1deca70e2d0c9d16c374911689cadeb096c8f7fca2a0bcf122d86e05c5e745e395c356eae6333a02310099540ec939238a38b50beb25c3f7e47d7f4a69ec69bf05aa41391fc52f7c6531b43e88dbb55737a10dda4eeb1dcbf5c50302047c435bb50068306602310088bc296a803aae8446d3fc7f37e62daea1957cd340c1d2ce3faa3e2a00c6088ed4926d7eac30c9fe77b38f71cc936102023100c038614db9d0c12996ff894beec302ed254133d54a6b29084e49dbe67bb9aaa59b33abb106a63eb375fbaedd107213ed0302047c435bb500673065023100f43c7e6864e177cf195486f3169c8126d24a4ef4b423388f6656adf64bc41be2d7f6d1c5a90c8095500056dc8ce22b1b023034aa75482e052257ff67c0bf1d2cf6921ea9324e2d9ec9e8e30d32f73edaaeb5c9c364598c3fbd764bb4ca6ec774fd970302047c435bb50066306402300b984a6cbc5576a768c71f43656d72fc835ed7555a54101faa50142fabd3893f1dabf06e9d0259a8bfd163614253e3450230037d1a515d5b554ce91fb4ed62ffbf0be47e6b707c7a64d6df9c9b37957c615f7ef4db6a9da82885e0045471182442b40302047c435bb50066306402301716d06f745ad12a5ff1f45ad0a3e15154c309924f44ad75b696d344833033650db7c9641d534db3a75162efb3e5416e0230054af1de4f99e71948a75fbd9f9dc9e5eb617b3729566bb6a14c5c902b55ead630fd3743e695b6ad26e5b9a77cfa88c60302047c435bb500673065023058cade6f476cda3cd500e45791714b34661f3d5adf66e12a17bae5b56f95be3e536b7757c0d7d2fa6751bccc306097e3023100d6badc3a3b71feca71967df291dbc8a44a8a273ca4395207adf711fb2818297057e84db20b8059ead3e6c2aff59345220302047c435bb500673065023064d94eb3d52971e9f08a7e04d2048bf3f3254172040be7919787f055903e395db2b8ec2490d16e41cb83651f8c0a07f4023100fd63ac3ce5e808df79608acf8c7441cebd61def35b7452346f1aa63f8f30caeaaa00c19678b48720562f5727cc850f730302047c435bb5006830660231009121de91317a08fd0985c8de1a751a7567c313f1a1d80fad6a2adf67124dcdb52e42fa51119c0aea984592cd40b3f76b023100c7b4cb8927b15312baebe662785cdd5aa6766efb18203cf042a8aeb5cb5cc03f6c447497f015d37ef6b7e4e2941ef30a0302047c435bb500673065023006269dc67920344a1230401432973876ee297ccc5f777a2c7a1e5a2eef717b55fd00f821ce5db24b3d8d21ace4dae88a023100b02b7c34e5a4451e4172494e62e64b8172697201e0d6fbfdcf57d758b30648763e2f52c3cac9cf5e58453a73fe5cec090302047c435bb500673065023100d45ce97bb9864f67d72c4fc3b2825e7eda6a9e4b4638e6945415b35950277c0179d7d914234b16f1481ca523aaf94ee302301f92d83a8619c19cbc340d84abab89230934fb95d818cd07bb5f34d83b311133beb10e13f506a2002e339a0d346d9a750302047c435bb500683066023100ffd23f6018f48ff1ec9304cc1179c4ce64903bbfaf08cb0ff420c1b18b5e20de9c815bb82edda7f8b1fea67f36a02a840231009850fc638e6940e67732a90f46106924b436cf74b127203056ed09df19b8d893517380a877da1caef08435b4b0030a440302047c435bb50067306502300eb329f750df741f25dfbdf5b30670af41d3d9faf0377cec0ff4b462acf37e2b0cd298ea40afd0d690642f689ff277420231009d9857ff9ed954f250cbe2e5354a185e4e91f53f4effdee975b7fbc6db78a5384243bcfe43215797f5095573e68c6f010302047c435bb500673065023100ce9cfcd94d6db7805230b0b82ad6b1cb86d6f01be3154e8c1892a62aaa5e6edcf1cc3e881b51bf31463100072f09138802303501c8415ecb5822d8b55c2b51941a9810367484438b4d1c7171763ca75b32bf6b1d9de3fb195cd143ab65c48ead0b5a0302047c435bb500663064023066f56cd0a0f16b37cb910611e80f4e6776229f8e9846114f3ce5d5ebbdc84989a3b4d4cc5f92c84c9d186449e6234c8702300a348492e278933e3bdb659bfb6aa8e3dfda2da483b7422f05257dcfe31c55db83285ec79451a496dd10336ed1ebe88f0302047c435bb50066306402303a8809a02d098d93afa4ec1553842d120e71b324a544d8e1cb43346191dbe1442c8983538ff94ecdf84d2c847aef54c7023030b2cd98cad09d7ec4d57029871ba7ba8ae07f832556ca6d8c4734c66c5ea5a86dcf22e842e2df0e70bd293aec80e5de0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310097fc85bc5d7b3f8a77612b4dc4c70185cd670a42e90e287ddafac6cbd2fd8ffaf8ae2fbd93751739ff8ca8b98835848602305788d633faa9d0d8661555201a0ea483a52fb5b30d0cf277d46fc03f8a1ec77159a1399e49b4287379371b3805961d160302047c435bb5006730650230319002cb870bb3a61902060852d68dae476831324106dde8dac5963f45629094e0b8a7f385cbfcd73b791c742182ef9b0231009b497887485297358b05ffe8cad67f85d33bda492f2d071f73282c787aea4e98a3e41ca965a3eb829e42aa14b4ac3d260302047c435bb50067306502302d8fce4e8858cd8d0e1bc802af1ca071cb1c0875b18ddea73705dbfa1c7c285ec84810ecd7eed5a490ddfdcc98ee2c65023100b5232215d1f8f8098a6363f448a6eb0184416d2033689f7e2ab4e1d31ce253b28fb1ac77bc5c485b687063b030cca8440302047c435bb500673065023100ea9af938bd035d43751353bb6945fce96ac94e88721ecba1f86ff205ff68ad41b8daf6bf9a20f3dba1b96916f4702e8d02307532ed22ff26ec3569340c858a0ff013da9e482a0375fbd9ca57aa2c4936ae15455d1bf5aa618485d394bb37ffa426250302047c435bb50067306502302af2f10705a4330bdc8e9d38322f4a3053a4534d3bc81b2c941b7e118daf8e90804dff5da2a47462af70d70526e2f696023100ac6842740a04a8a4176fcdb10e4a213dfe188a2c81149bc2e13205ffae51c0932a318d5ec5ed396c1c93b47f153d778a0302047c435bb50067306502300b7bdc6f66bfa6392b724b1c9ede7789bb9eccc75c2eca815eed9c19d8d01f18100dd5fcd349714a2e2901f6e8fd87ef0231008a450272780d6eefd37a2124c9a792c479526b5c40a15696350b490487ac16c05491c0ffca62dba2673c04f71453d7e80302047c435bb500673065023100960017e6a0b235d66c8ce067baef498bd71da83afc5e382c12ee7a4571e5634c6c4d9db806e46a37e2fa45c94921901d02306973c5e676c48d1b824ec1ab0db13048133cc6da126900aa417a330991abce615e90ff5714281e1a1d34bfefc030c1fe0302047c435bb500683066023100d6dd9f28b5c61d7d0c88ac80cae02b7df757136ad975678d0fd4d40906c2235e7edcd391e7fb3f0ab8e0226a9626e2a1023100eb2216222d6e075fde7a17cbd343330d238597d4028e357b31e2dc2f1b4e7c6e2f685b049322ed009b97ca2b753e03a60302047c435bb500683066023100f33111db1bcca1d2cd2f5c2e66534d7f8c0bc49cb78fb6380605d4a44e9e628e78e9ac59871a479fb8d2c4bf1d31934b023100e69f42c6753398741f565333587dc788d993e11254119ac0e5515c7f610f684fb00d4e04308175f14e7de9d49203cc620302047c435bb50066306402307de6e281f6461def3829c897354f42284f83a298bc3a034379996d9ddcbf93457d09313da9c7c56b6102b6231d1607be0230262ad85c488af2bf0b004c04736b0a47c26228efb2ce4c424b6262a25c871496dfead6b8e109ffea4aaae90bd439cdb30302047c435bb500673065023100c141c1293c507574dba30abef2a69fd7d75a58b531c355a1d762bd3261d44929578c7ae63ff8decdf418a69d8e35a899023044a4229339bbc172329b4e536f53ec42af84b9b89eccc5a1f50785bd274a555703b164e2bec137c55d7093a5eb0929b30302047c435bb50067306502305012f51c7b16229823665a10ad4cbcc2e1e369e1ad42759deb9ffb826b717c21cf37f5203d46bfcec4d8e3b392626749023100ff0b7cf623196a6b5870de58a006ff0212894b489f0fcfd998ab9bb345299c2102e6e9677bfc8d4a4884621973f188100302047c435bb500673065023100a2929dabc182575591f7c9458cae02375a40903f9fee7bdee28fc76092508116c3a2c1a6a2c329d7d531bebe68e0bf64023047c610760e01b5da358cc9f915462fbc1b0771eab7b3fc3947a426bc632c68e0d3e5de7e59bc75fd022e5ff4fb8ee4000302047c435bb500673065023100a4be46f4fd0f8f36a46f9b8a03065291ac19331899bd1afe8d3f4f0ab61a8f22ce2924ca0eb18a997f1eca37387ea5c6023069d4fe548a022b26b786de4d0083c99fbb96d63cbe15f23d1f72fad1958a92718ddee4dee991045a839ba2cbf95a1d540302047c435bb500683066023100d788ad55d436ca4fb1c64834c3e350da5c5757c38d80cc955240bbe7eb1cceb35b0a0899265606f5506cdeab90b2aa79023100c04e23b8f6cc681aceed48d2a26a86cf048e0cec6cc5ee7bd4185d4aa46a50ee0eae8df75d7177d8962b48f4298966760302047c435bb500673065023100d0d21bbba1e36ada2ad8a7b08d0210edf168e5239215dfc9f9fe29b4a228a51469658150dd2c136a9ed1100a36665c9d0230174071222654a5dea2551ae1800ce365031988bbdc1316f59680f9f05a9d4843db920deeb05242855fd8d55031b823e50302047c435bb500673065023100ce6035f44971a3cb3d28744c4ce4df51bf1a23e84f16bfb5cf778eb87e0c9bed2a0b9a1b41bec6359ec3536a6fc3eadb02304a9867cba24a2ac60d7787372d265eef673e8127c299983688c5ce5c155b240dec1b76de53a3f62506cb8466936537ea0302047c435bb50066306402304115623fcc2c81dd6816e95f1e32f0ef7d23c43a6bd36e4f723c7b0354b572ec6029a7fa2d9e9508c4e983c617291722023020e713689de0bef24c19e588c6be4edb3f86b67eb69ca738a09c7f9302b4cd9fbf18bdd52b7f336e12100829cc5bc9210302047c435bb50066306402301883222deb165f05b5f989e6b8cac75ae5f308796b939288f993d85dd737e7d338bdfbb41073b4a8c26bda9a3f532c5102304bf7ea700ed600f1049127bb9c794892792f5f0d07c96f124eee1be22eb1c6c7fe3caff4c5efbc96547ffea52d9a1ea80302047c435bb500673065023100cf44b3a9d77f45b10832fab3a770139d49540d3678a5430872eec824fba07d01f6c2390e8893859bb249e7a4d0ffc6bc023046960e10913b72e3ce403bb010e225b4af23306f03dae1a04f46902f2b7bffb4b5749836b9d0cd12bd729d19dc107a360302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230746ae6f8568094342b6b01792d7b2c6c4bb30092876cc73c5713b6dfb078f4fbc6fa3c7873b8342d170df9bfb2ea272b023100a64e1c9d3290f5baef713ec40196bed1dc1fae30bd53af422e850745012ee5b0bc796947575f2de0abfa0f1565c10b510302047c435bb50067306502306dd3b96b8f05c258ae2108e87f3f5caf2e98f976b506ca90c9f2d7cf424dbfa776e5b2c82ac3ed8bfefb9468be02e254023100a7970c6a4fdf23d9de3e1d3481fb269dff8cea483d2394c16e5cad9bd75ee39593f75b328ed6662bc18dbed03e8f23d60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305b31d8b277cfc9244e5f5d8c206b488fc8767be375cb9aeb25f79655ebd2ad446109fb08bc6d939436e2ff74450d9c6b02310084970b7ab066e696c4de3ed3e11a34573536e33242aed452a2b2dbc05c47180cb9b3c1b2393eae7fd0b0af80d25c993b0302047c435bb5006730650230133a45eb91c2431cda194c8054852cd803318a0d13c3220d6182568dd7bdd127c9348103c4be3f9a0774c12294ff65ef023100c605ca89b60588241e9e425e3c6fa56625aa3d5a43970112ee9fe20cbcacd32ceed361456e86b0c31efdb703940a9d4b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b7907cbfbdb357277d3bacef98d04e8ca157f804a72fc21a3d9f836cd638ff424c03fe486db7f58e63708c0905ec43ec0231009b9b5c7ffca2fec7638c96a63dd02e6bdcf80acf9ad5a1475f1c887cc1d261389bd23dc0151e9ee4e1341efe399903840302047c435bb500673065023100e76f352de853ed983f98a722a121dea6908403d8b157a5da4b0de57e8ef67f8d4614b4058c612c3cdcee7dc6b2f055e802306987de17bbc7db61d8c2c7913c7ec2706f342bd4aa163f4303e614a564da06815a1b06b5ba4514b569a32829b3a4b4df0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230624a208f00de7fb46128ee5b2fcd1ae0ef22e115033a9438cb5ccc4a2a93b0de33cacc51f7cc1587fc6ea83ac8f8504502310083fc3235d7c00a9cf365e3d621eb69664c0f4b41ad99dfc375d6ca675e823b314b5d3bf28c534283646517bd6c8bc37e0302047c435bb500683066023100ed1673a497040fd696e4a12703af586b867c579758d43635c84143d73fa4151576c36490a5b90bc2816ed0816f02b257023100d765ff085138168273a7bdbdbfc7f724123aa9f88d0fbb45743755769a72bb73db1c0791e3dfccbefc24dcc2ba8734a80302047c435bb500683066023100fb7130b80abd0cd612a3777ca0411743f305d2e68735d3aae0ddbb86d10d5233517ad8fafed9e48458d73e3101d7ea62023100fd8bb61455c9f124cba9067529d0ce68e0f66657bfa3871ccd4adab66238895315cc81117a3d0dfa26ed217b8f160b2c0302047c435bb5006630640230486b78e9c887a824dcf1738beafc5b0d6e199ea97738f47006c12863da6a6fe4a7375d599dfba92f483247a90922bc1a023066c94d431457f45cda65fbcdadc84e980d2d28f458748c2497782fe68568784d21116e864dd215c06d3e08ff3e2d16330302047c435bb500663064023060cc4f05da1f30348ce8d56b301a6690707ada5587f7141da3568aa41e99517691fc4a92900bbc09687c5cb919612092023001940a2c87de51ad7af54378af6b551a80b2eb6e50a06c7e7b015a28891a148fe983bbeb9cd63268153b0e5dd06a62930302047c435bb50067306502303c67d8e74899f3c28d964350f19de88426fc62a730b20cddf982cd09d6332cf2b6347ac8f24d528425746520be36489b023100ffebfeea2faa1d69fdfa5dba50d21b136b35741c2544c307f903cd07346bb2a57b5f26a6a466b251b82fbc48e6524adb0302047c435bb500673065023100e17919a815f6d102b06037308212c838bb7bf38040ee960fe0a8b98701a178acf70262aa89c752b22b9265a4628c25c5023047604d1aa15b8917c1ad69049dacded780c58a548297ff998d19e25c73a313c72f68a69d789ac61e9010676e9f747f1b0302047c435bb500663064023004cf9d26c8fa3d7ad46d49dda001b548ae1aefc852d38b1cdfce294b0698555724121c738fb7219fc8038249a78c87f002306f4ee00e0bb9227705bf2fa516f49d6842ab6db68a825f61c71238939fbc51e3483d24a1dfb186a1fc9c866bb93b56210302047c435bb5006730650231009189a7dbcac7588a0bd9213884dd2219475b6f52a56e9564583b74ddf154d82b68e4c1ae708a8621cd58bb3302d59737023076a1ebfaae89177f4f2ab1e0269e8d1fd73a24030bcf8f437e56a56d10b84a6e0c2bf9f68aa8bd3d0d0f67d13a0748120302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023056d13650034050c55b15b2f2de46b0285ae725cab45eac5a11c7cf924dea972395c2c51f69fa3f3a2aadaea4c00d550e023008c1dacc7a69c3fea5001353a964b941e5b8ec923291208db460aa56f48c7a0b419c2b39770e1a1607bc785005657ead0302047c435bb50066306402306857e9ef655c1ae66194f8d6df5e52f837ffe9509c04bb75abccb880d806802bc3ab42ab98d59b680d4dfabd26b07c6f023048d08838fe82199e050df63897f842d2371748560b04c6c9dda6460ed630e21ee54369dba6c4937220cdde06e19ae7420302047c435bb50067306502306adeed7ea7717afcc46a07d1f89146a9284cf6ad01cf8ae878603d0fd8c0b5e0e2e6b3e3b82845400682eafa52439dec023100cca0241724a3d13f5a95a9351d2059a263d7f2ffd63cf33e89ebadcd0451d51f356e484dcac7304f64da4f87c4021afb0302047c435bb500683066023100f543724f7a68a4e41c83ec7df424a0e93ea4f53ef7134a93a7d1ff6412398ec676bfd3cb30fd3a04dca601018d9f04d2023100b6da7c033a262b2563878196daebfc0f08de3e530e9fe0ac87442d4310412b2c96c4f4b31a36f0d11c2f4d53252cc0f50302047c435bb50067306502303b34acc916620701b488d61894bd30ab3c8ad85cf40238d9a6a66054dd17a3fb9a7ae0b7501d1b97e8c4b11001421f00023100cb7af49e7fff9e8caa88b54ba8c55cdb1b7cc7027a393d92d90b06b119de09c74bd9d96b252f9d65c0adcc111d96246f0302047c435bb5006830660231009b3bb44e13a8541d48b3be68c04f68e49d53978424fd5545bf359b9c4148c5a8aadeb2e692c806fc51ceba83b81e81a8023100d0cfd098aba255764fbb8593b3d70d2c9fceeb2e6d412c2bfb3ffec951362a84cb2d5ad8770066b1cf12bc99c1dab1490302047c435bb50067306502303235c870bcecc4e9a602198059b103654b5c66e7ef690c73f7009d54849154d5ec6a4bf917deffbece84525f70ceb4fe023100c52ef05dffe5a2e23ae69b595ee7771776493aec53c77ff331762aeb1c1427459f89cf2927b8ac2cbb6fb84dfafbe9350302047c435bb50067306502302ffe71953d9fbc2c1b6d1028e40f7dd7c9d05387f6ba6cba6280b08b7147152339c2346f49b03780618a2036f1e805aa023100a44bbcb80dca159ec803875dea87ece4edeba4e73cce1c989d8f513ca1e55067a64d7f54c9507396d8ad20387702d58b0302047c435bb5006630640230734cf9c2c4dec6e9e1019caea7b98ca9f865b47db26348c9d556ebd4670c6c792f3cd27972f7cbd08a32dc757df121f302302975a83558a51fde7781b02f50eb763d29344758f82cec04edc5b93cd4508e050baa6d83668a0aadb200952ca5b8137c0302047c435bb500673065023100b7402ddbd521ac39306685b583bd6482f69ddcd2762f1cba9412868e42345ad19952bb3e472c36d5e2b69ca3c2bbdac302302194aea130424c7a95eedd080558d33b1131efba08d42764bf17850d56eff77a5a403dd8effca0acf0923fab15330fdf0302047c435bb500683066023100d97e36ab9c2985ac11437d34cc57af853d7798c6fb4281b46e15d64ebf75a6c2c65de83ee7c7b7c760a05a578c74461f023100de5f77505dd9e5727b568934ec8b9fd87e288ebe8c7198cc92f398036c45d277cfc5762c992195e24039db5341f8ac0e0302047c435bb50066306402305ab17cf864c24bf0aa03cc298fef8a101a854c28945af89ca585433e5e9d9cd65268dcd32c6aea992c930f15b3cea9cc023023db9c74bd436347af87217e61be14fe6e3a2bc5e65e7e3e014df8c0ce2ee4897b3959fa2c681ef65d3af3615f2078e00302047c435bb50066306402305cc43f8301b97bfe78ee89af962331415113e2d89c43ff90a715506070c450ef0e3546a74a96402bd3a2a3d2a83a2ba7023055a53a7338a2d9d72258ddbdd18259710a072b1696a39d0015cfa98c45f920e719193f6c441cc8c3e439bef8ec61c1280302047c435bb500683066023100a2e930c85ed214c9d9a53a48072004da1e2741307c8530ea8537e3646d6211dcb707982d5fb3fcf8a2088b54574f8b6f023100cc1fb26dfab41c002776575512f8cc1fead4a00fb53a72de9000d9d88daa84a84cfb8906c464fdf16cecd28bbc3ec6f10302047c435bb500683066023100db070eae761abf268cfa3a583c6a58558656b17cf7d53cbd620e1ff6690e37ab51bd9fbbc36ed62ea5dc3c8fe2cf78a6023100ce7c25ebdf7bd51dcb3768dd10ec9f33be8b4017f38e346efb472f656ed7a655004794977848f3c695f6fa293bbb35930302047c435bb500673065023078eefd234230ae5751b07d53d832faf0d4a7587b8937a51032cbd5d26ba1ed4657a90db747af9f409444dea1cb090280023100b66f4489e91e871d9e09cb4525fafb2d38dcb9acc98c241cffdbdba424fea9f9e4949bfb8d8f101c8704a376afeff3af0302047c435bb500673065023100c8f229a6a4dbb7be656ff0570e2f5e1658adc66f2a2db36d60caa613dd35f385331be411ae51a62291ae8425e5676df4023010eaf152b9bdc7bf79d8bc5d53a61df3520a588ec4028c99316666a966ce15250da4d692d4254d4bd59b1b385d706a3a0302047c435bb500673065023100b167ab853a3577405eab43749a3e82c103b23d049abc2cb64f212dbfd27b5471021d937284f9a7a6325313e5098209130230114c37bbcbe7adc3c097b605782615ff638c1888de2a6ace3a5d5464847f6a0ba12f708b3ab62ae832ec13d9d5005c820302047c435bb50067306502310080754f1b535e066af90d57125f4aa63487e18d80d476fcc92ad404208042aa2e5f32fab16b1a20d30515844e71e2d75a023001207ee1afd98b1866c89c563b5e0b0dd5e9320695855b52ce7d3fd1827bc79ca51b1dafca3a02271c604c32e7cf5ff80302047c435bb500673065023100f6bb6f8b497d632a442441d7817ef2b13f44b0b8886130e65a371b6a3c9c24559489f00f313379346a623c6ebff6f8a7023057d5544774c29d4ad5f73487f296c5c9eb9fefb4be4264bc150f23205e3ca2a42458530a7b3ca89493bc3f5121447cb50302047c435bb500673065023100be2ca4732c51ecff4f240d29e45622affbefa8962ff6af5f0f4a9b1f79b129468106b6d07bbfab7a57d05c2159a5b6e802307fd85c9a9507488d080be22ce964850616c057573a78204f5be7dede24142ad65b51885b1fd186b3bf212be826d12f960302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d193f04c779c3725d2045680546dd4cf5311a1ba549640a708a4f42d52f48eba880a3562bad72115c754b3c90fba5d0e023069616bbf48c6ebc19ea93d137be66313f4e61b289ff14fba0ca71c7eb1daea2b8d67bf80727e844cb4fdc6f02c0f31210302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009794e1d092b5d02d9d7f2c01a71a38750ba1b74c3509ec43cbe1020be523f6b055578fd2f91230613c42f122c145f50f023100e910acf180ff9ae40a98137f6b11278fd2191ec2dec1c9eec861e2cd9caa87737e144022b4013157d6f5167fb77e80680302047c435bb5006730650230334bb28a2f19ca822680ff834554667a4c965c044815569d73b0a7078edd690bf8deef74054ab1fe38d7e6a09701478b023100db6c17b56592ae1fba4b3b425558335fa3498391d11c1c6a885cd342a4d530b2cfda7af623412f777e1866420f95ffe00302047c435bb500683066023100ec345f58994af1daaee3f24b8f9a4263e780a044127eeea3eb292347b2ee6abb68db19822b076e09e8c6e1b4c1e30690023100fe67103c7bb04b5df2f8c55fe85fc447a3ac07aa669d31b91c4b0abc2f951662c555201ad7101a88132a94bb6473e6970302047c435bb500673065023100b9fbbc6c1ae8c876bf38b5b1dfee62196f5a7d6a3ca2fcd0a24fb93aa788934f9face2daf6bcc33ff8ace470135f34350230615035a4ab54c407b02432e4f3b5710ff69e1c26ac70e3c10556a3de55567adbe5a2036027e38a9dc2f16828de56886f0302047c435bb50067306502305fe0a05152f73de09c40d812b268dc6c0aa514a43b1d841644adad342378a6212da2d661ddb3c03407d7e444e60d0d26023100d9dc8d33e6f0726b2cde06da25ed2c6e7aebcd56cc0a73675d219055a07cc0f1238bda4a5bb2a58f8acce6ebd15f4f980302047c435bb500683066023100c5b675df1fa218fc6659663b00194f75e74b4c7ca394b4f7b7ca46d6e1eae0024f6449a0796bbd148841b537b7ed3154023100d68b9a8a329fcdec75e4f845f3cf7d751cbeb6f6c63da8a645d35f2f687e8076d6b327157d5079dd6ac626d03cd8e9d50302047c435bb500663064023018f70d2f4ae97b85433c5e939a1896e1c4a29e780f7be8ecf063d08f42ac3a486e1d056b5f64c75f60f4e4885062696c02306df1a8ebab914ff30be40db167515ed6c0c995202af576da0a37a9e89758c5c60438be3182091498ebb3243dff5c676e0302047c435bb50066306402300ead7d4f8b2a3343690c2b672818f44e81f7c86b57936ff5744152e1c7692abf1e933bcd59b8744dc1b7b7f1f07b664b02301e35051906585a755b584b111a6b3027ddf8f86262ce71dbf47c4ed82b548b3b18b2003dd320d77b839d0ff962ee29750302047c435bb50068306602310083750692f87a783cf4d8d5238527f64d87ef1371fb6dff650618960e3536623f83c1589e34cb1fc48363db60ea7af263023100ce73d12b19bf6b131cfa92e84745e9dbcae6cabf1b291400d54c6f84e46e49cbf94d962d5f9a8268ab61033198cf62e50302047c435bb500663064023031b378cdd97a88c520d3d0fc1b29c072a54610875bfccff46c16b9dc99e7aefda28554203b5af01c9e12706b5a6a8ed302302cfa47d571fa7b1169813fb926db9202574f59a56f4121b514973247dbd13f6749b25cafb403ec73e61086fc217ff98f0302047c435bb50066306402301d8ff1b2240a119d508c43aac4edb4c294e31af55b14d73dff864aa1a2a04235c95699d2dcd8305732722c90d6a091850230319fb3dd0003ad0e0b8fcf64ddaae73841e50b7fe3144abd72a135a003cc139368628043d67a817d44ba6dc0a5b810ad0302047c435bb50067306502307d5be25ad178149ec12e157a9ab15ad1ff12d2703aafeca0baa0bafc178f95323f2d0c8aacaab455e4e4eb0da2f64b61023100bfb700b6f35967012ed6d437b0f037df1d506f6ca1f6583d0e91c4ab25a772b590596d046c008b0b25cc18f9dd7d63a00302047c435bb50066306402306f6adbe32051b23a02ace2e8f7b240b6d8b5ecde52496824eb297eb583b0e961e1c49ccc155f5ba0e7dcd445e67c33370230763459f5de8a9fb4c578549683eb71a94be2b31819e03701f3d652ae01244aa00b13f30d58ecd2d8a52b413b8baeb6ce0302047c435bb500683066023100d496260e14912e1a2bf52c0c933533372b2f4a3a82ac57942b3ccd5b78149a7d475fc1d557682b13156e36577b723f240231008c13a662273b1d585fd3f7dd3c52eb7ac722d53a0b51d4eea35eeaa049ad30810efb9e437697d710e63b69d814940a290302047c435bb500673065023006749abbb66c24f036150617c283a58af163fb4a300a9db21b1caca74e4207693c80384d6aafb4a100870db07dc906e6023100f165fbfe4e918b0a5df4aa0afd1948419202ced7f99ac90e22ae33dc476d0cdb27d4bb3de54b7280c17615de4547c1fa0302047c435bb500683066023100e6e4b24d8aa1c7f40c7266e973e18f1b71994ff2c145c75c8a1083db94eb1ea8f464371cb3f2a69c30837be88a0e39ea023100ed0ac61543487e403347e99e21ec7561e072b737fb04d1d63e1a0e15554bd65ba5be618849e5425b100f070d57f739d60302047c435bb500673065023100f14ff3b876c7550d0a94391d32fef98177b7914f6e55a0b88d23ed25e3b52846c48bc91cfb60734c0cb88b19624270bf02301781c563539108e5dd5890df3b32ae6f40e8b971dd843174b125633e2912d8365ebfe36d0faccd9862dcdbd9ed8113a20302047c435bb50068306602310091bf026ad4b387437ae7474f2f3da2fa3b348baf175c73257fe43b0c0ce0af7f345730efa494ef32744225051994d0da0231009367690e2e95c4e430a047e1e6d68b6d49e2e6121d0f45193f735d09b0c22a559b7c95f5da1dc2fa1b34afa0633d382b0302047c435bb50066306402306acf0edfafcdd826c6a7039ae82ef8db63d7e7160f57c125b33e7c4275cbd5a9fa1b23df68c74e43989647ac8432731902302f55935d11b39b97aa8c941edc321d75d7f4b5eaa7e41e757ed25f60a6d24e25ef6bfc743b8912cdb3969f3ab3eeb48e0302047c435bb5006830660231009dadfdee0bb3c79dea5c106ee5cf24db522b2bda8d306a48d035e3bc05d2af3327586f636ac6640c23e6cc0d5bfe3869023100e3cca2d8466a1ba7872381539858766cc8c3903619caea8391a0d3a2078609dc645273673931fc2fabaaf29d6ef091060302047c435bb50066306402307ca85681dc97960aa374d95812356d8f8b3a26447373194b1daff9ff5291ded3a774209b20b7179192fd037f35902d8e023033cb7e4762d94373d5eeab96d96b5e9448a384845decca65ff428df13dae217c05264b1a22f22e9d5b635fd8e29273880302047c435bb500683066023100a5ba2174ac7beec3ec45e4556e290e59c57561a9c70cc829cda028035ddeb6d9616f659beb39f6f4e12aaa01889072c6023100d47f23dffe1deac2abd3472820f852da66692ff435be52c13dd9dd51e9d0da6766abf2216c9bd5ded171df79b744b5740302047c435bb500683066023100dd83cc49fde022a8ab79dfa777abb4cc69e98148e0d12656ce3c2d7c32fd6a584323dbab3bf2e91e97c175fa6ae217e1023100e10ffd085a14d4a6bd4166eae6ae012fcedd5217cf8c47a072a9bdc74d35eececf9b3ed4d1cf63d511bbaa5109afb13f0302047c435bb500683066023100a8a143fbc02244e34723516a3a50c10d5a60edac99c04436316b29c14da4887f5315ef792b90e8a4d002f03d4e205be0023100c9ec96b70e21cdda69b90fcb38b3adca19264a8834c5aa685ae975ad59a3e48edcb0b9dbfc04c76cd2fe77059b39592d0302047c435bb500673065023100a1ee295e84f03f095fd0f6bb448320823ba652dd6baf4f2769ebbc04588977d9970f424f2129247262b72280a3b29540023076f4a7c0ee5cd16cebdf2c3685c47ba4e6d1441fea08f34c11d601354643dfbddc57dce4e9dba0e95703899fbfce09bc0302047c435bb500673065023100f047715b17680d63a8a7081f2ca53bb0f399dced337e63c33420ce4e571ce2c9e14ef5f2954c7cbfdca116147e59ebbf0230640622f3818f962ce0ae1aa8a117a6a886ea273a9698682cffd4395be6a2cb3275cc0fc128b696fb61d73808a8e4a7de0302047c435bb5006830660231008dfb784f71f2fe74375ecf04d008b97080fc1515b29ce7c8962672047adc73286e8f60216b817b283724a45e58be9daa023100dd083c16d9712680425c9efa0a901726e578497d12142b939fe8704761844bc66b1e43c2d57bbc1b2aaf37e564cf29b20302047c435bb50067306502305130536af38fe0e4afd3732fa324e8622ba11e00f5613d94504eaae6ce0a5a952f302959a6a51607f729950924fc2935023100e9d59b2a937af05c5706415329f4c40e2d7d5a9880db008eb92f52fddbf00ddea133d618aa41427836dd2b5a5d4b5a4e0302047c435bb500673065023100e4a16faa83f9aa9638eb88593ccb48983857540b83bcb7c210a27adfc0aa2140f8942b38727dab6e9e6f21e1af55d9c6023075a194f889ccae9d7a7963362619693ca9c8197a235429535953b2b953cafe507ac2cc6095982019e8ecf001852a31620302047c435bb50066306402302910fd7959297feca5c6af7ac96f95a5859f1e4921b4d9ee7e5312dd5001066210fe2e4e5742caf035250ac93228b66402304a8e81320d217e06de2841234e5b081e1033c5083f8230a0c0f8c03a3ad1e977c6cd7b2fdaa77715735ef6a346cef27d0302047c435bb500673065023100a17233fd769baa3cb15fbe5a12d4e8cb23e4358a942487bff066e2ae5e76de9f9007b982c50e6e5b00572a6fc5fe9f39023023c6a90eb023867a63d45bed75c94c0517b68e63d9487c6f7ebd95f6c75820001f9a3ab7cfd6478a464834219c5cb2620302047c435bb50067306502305c9eb5e544918dd26c22b0f8628d320c6e8ebfb7cf49942e9251f1863c2e64721e504fc972c08578b914f0ce83a110070231009522cdc4cea735c514755431e0c4541631649a60d52e3dbf33a7f962be8a4c807aa3f6bda3a327218f8421ec9f435ec30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c99e2d1ad792f9195526fde26af5e6ddf5d7f8c48e14410e2d860b0bdba8ebd7b33a76c1370813b462464c8e5218d876023100c4e4db84ebc17d78c571be40a67b039871177678bb067c1f0fd62ecb5c8bd1690f0982243c37abb559aabace740231d10302047c435bb500683066023100ac7bb4c1ad28b508e144e3455480de28491d1a41b6b1ab9bafdefd154978c7e35648fedaca2b0ddca98e5ab6c281c25f023100c682bff35b146f86354c94c1ba93e1dad00051afe6148f05527ab21e17363e86e470b5002b27b75da18c658c8cfa865f0302047c435bb500673065023100a1e02710d464aa66577c1348957e27ac7b5b3e6cebf59ad5c0bb00ac56f94f48b38d6ae8d00f27e7dd24b82d71f9c12d023036b58501aa09be6891b5958c764808b233e975bde16e404cd024e925d2697fd2f9c4ddf6d3b3cdbe4f8ed4d6b9078e1f0302047c435bb500683066023100c4e7134c9b07490f693d32e7480b52964b81d3705ae83d0c5e9dfad168c09e4445a7a9d0bf9925d79e88476b74f9548b023100a282a89547d782d313436366048c95ecd02507961e435eae6e95b75f5e9f35348f39de6d889cfca9bdaa0ce386ddcf990302047c435bb500683066023100d15285038ebb55249d309d0b3bf2bbe924d1c515b1eec81368af5a6c70ed8093cbdd02d11efe040ca616d8954bb7a0640231009980cfdc57fc157387be4743530ecdc90248ccedf0de60a6ec167ddeedc522d835200b21c57418dad3dfccfa37f90c570302047c435bb5006730650230251c3f0bdfc8d744877050eacd7469982e8aa0d68365cfa7bb6c32944e3ce3d697802bfe606d53365f2bff8d3d0d3745023100becab7b4ff2b758cc6970ef6c094f5de14cc7c24aa22aadb72a1677ea6a0907304a802a5e014433f7168f857b6b7fc100302047c435bb50066306402305bcd724a0b97746e195b10e58bb98e59386823254c85e05218d339c6da583a01fea381135bb8142756d893b9cc9e634e0230594a3f6153b52f5bed58a9593a92944d801dbc23304c5c8c0ef4d65d4fdfd44ba5bf50aeafa24bda728b0010e82bdefb0302047c435bb500673065023048e69ce41af140bd0d9162aa825445ac628d16ad0bbfd4ce213c42297a13bee25629884e609d5ff6b5ec6685237d24c00231008fda5885971ff4bd1803e56045ed403983a192917a07afb84af710f59663bd5992353911c063097bf3e7c429424bf3120302047c435bb500673065023100cbb6d5d71eebba32231aaf144b21cefb7fb5a5e0f55f7a861413762282c02dd697e120c475ab8741fca2a0fad49267ba023063c687e664f0264a10edf419ab2bfdcb020bd34e2598a01ab40431b850e2fa1d55871afbdbaa1d01e8e428fadfbcfdb10302047c435bb50066306402306430bc57745babffe2b1c82fb7c6d0477c12e730bd7294267da3221f0d11ee9b9a2fedbbb566a0630347e32d6f9b229c023058ac8e63d2487e5bc8f64dc9314fc61fea2dcbf419fa397f47d2c1ef5a3fbf56d6b5a2cec8956844bf2981e02d6d611e0302047c435bb5006730650230548ee3e1b56dacb301778aa037b358fa0ef53d838a3287426cd14bd2dd0696cd8a208076a275cdb36dc8181e5a4cc0d40231009a4fd50ce60d3a678c72ebfcc25d536fbea1fea7dcb300a9129f63eeede15f435c90aaeb2a8189f3678244c970e9a7fb0302047c435bb500683066023100824a6d68a9ab8200f3beed64b30381cb8559d06e23601c508166fc10ce9b93457cc190b7db3b574e9066f63f8ac20826023100c5230b930231b46d9983e83a8670e3c92cd6621ef25c39143f98cb83e956f165ad36d14f3c1a7f5619a17f40c0b31f4d0302047c435bb50066306402306d710430527d28136b32b91e6f2ec06797f91d0ad3a0870b88d2b40cefcc4831a6a1965bdfb371a4b6cdc4f06468a9aa02307b812fead31bae2c81a2f5cfb95d83cde4c0b97c678fd84cdb846838d3341e23bf0f5c7fe11db10f79cac4636d574ec60302047c435bb50067306502310097b5c365aad01bb266bc5aefd3ae3bd8bbc6f6e8a3985d1f87884cdf08541204b032fe1377988c83066dfe8e985c86e2023029b5e769e066ebb2217de989152e060f106ded429c80c7bf3680463ab3e847ded6cac10aced16a370c6b165d1d328c160302047c435bb50067306502304ae09bec09b6cc8f5e831febaa920d54655d34c956fa7e57b057b7cb2e458bed8005d38a29803fe3c55772b09f2d7246023100e37b671ae1c5c84e554a2779fd066e019a12fb8aa832fb8eeac75b8be8647152699701629c0ad010e81827c95a925eeb0302047c435bb500683066023100d7b390aa3c4c2c78c0afec81fcf57ca95514028c54b9241fd2786946d3fa49ca1926ecbd3c8f978e06caee4bd502cac8023100cfefb977ce9b22bab6f4468598cc0e008c15d429dae19545c9c6d93ef46b37c868d0662c4914c7b23acfd3c843f664980302047c435bb50067306502310094422c46213e22ab94c3158a9426b0c14546b63de4067501da47a3a9f076fef1f9aa2bb38c23f0b79a4a9eb40238960e02301396b7d403c0a6d9a20157a05248265f89ed859d3e4a3a884d2330af095d49cdfd302a6431897b3d7c16be7bd328338b0302047c435bb500683066023100aad718f0b8f7a86eb17cf92dc4b7337d2e520413c1ef64502ab7488c8a40348c0d4dacebf1220a0c0c7d4967e2173dea023100c0eb4a9ae9441bf05807c08031578016322b6991f89211e9c59ce1f5ae6becbdb2bbdeccefb5c99cd374fa171bf18f780302047c435bb500673065023002f32b02b85a630f9287a7e4677daee419c48598ca4b19cc4705faa953875c25ced7aa9f8db384b51668e707da9a3873023100ed68c5aab447a9a0afc552258002b72848311ca11b784b3d91f8bf95d90b8b7f13b4209680cb67c48baa7a26e6ad6e040302047c435bb5006730650230637cf3448c874c3b1971346ba790c02c184b96bc377c36de8e9677ac4df383a7c117e5351698754362530dd226216ccb023100a342da7eb7c059884bb2301f43ae53e28127c46c6c36bc415b2817c789cdcc4d7628bbcbde824d85f60b6e7d8d3d63230302047c435bb50067306502307fc71f91d79c3f70076b96676a1c1b0485d87381599f96177e925d43f5e92eec85a277b7be512c7cb95f1a7b845f9d1e023100a5eadfc74d85781f6af360f85ec40c51b8e5ac00fe04ac4961f2775043f829d4111d5c654fbc4737d0ced6dbe730e1c20302047c435bb50066306402301e19e79c38e4a17409ff8d94562cdf9d873279a44f2bd00f4b828ee8ef09b59e7e0dac43608f4d93c987a6f630d8f82d02306ba1be13c466c8a51a173aa80ddca2ec4195edd47f535c1d96250f987536d87713dc192b852c0caeb83596413849fdf70302047c435bb500673065023100e9bc6e46010fd8e666435ca09d88823e1a05f209c8de5a0815befc85901bac2112c32ba87ac8318b2aae3dc561f3daaa023042b0992b03e7f1e1019dd3227623ceb39f25212af7eb81c64363e8c6397f2d6db25197d3899b8f19d9989fa5ce6f067b0302047c435bb500683066023100d48b92321bcee3fcff65611ab1c79d5dfe325c3dfed3c6c4011c418481a864592ee2acac302f8d6f8ccb2a84bb28b71c0231008a99dc2b613e8c65fc0f49257a096e16978d5469e6bc66a0dc220d8d47de4076cf1a6fe2d610f994181908e6a73918e50302047c435bb50068306602310086ffb6961b6b15c172b389210e8db7cf4d497a7fe2a605baaf34b5515a427cc4520eca3df3bcd44963cb0eae35aceff4023100e2eff2e7aec19cfbacf537070f7afc845c794d38e758e54ab0a9ab571cac9c08d0e1de05af05090b7a5eab59232d0bb00302047c435bb5006630640230406278016ff4cbfa0b92999480d1a1aed9ddc353e547b4aaf9fed5f113aa547d7d393b46f8657f304b9d2578a8a5ce660230256493b9bebb2d08465fc6ff0c42dc88becead66e62b7f4adff0976706aa4f477224530512775467a9e99ac8cf7aed010302047c435bb500673065023100adc623c51d76a9fc0bfee9aef33f89058133367cddaaeefa6ca9381aec45403cb96037ca196723e97836793d01db55cf0230283b2f2756c46257b120103c9fa0e133cda472b340bd74d2ad2acd414144d5b27524bd06f9f1db013783710a34d9a89a0302047c435bb5006730650231009640eac6c1a1e332d29f04274dac650a64f1723a811abcf5ecdfe7431314997e84f7ee35a7d642fa1615a512079f5b8e023039c0dca034af98efdeb738eaf10a29cad4584269e9d63691b436215c94a95c20c64ce8ee588636e6b650f51419ff19cb0302047c435bb500683066023100ee5ff5b66c7a7db140e489dee07a169aad52ff4426869efd90fc0c2edb368a02bdf017076207e1f51a1716671ff78f69023100a63e0d92d5f39ab50c5abe1e090ee48074faf450d0ac1a8197d5ce7fff1b0b4d78497897e0d9c892b843cafaa7b9a8db0302047c435bb500673065023100bbafabcd8fe1e0c1363cfb9bcf22c8709601436098feb4830b430596cdbcc807df2f07d77842013814dd4c749bc4f963023058c4a576c57674f99cada3276948df50c014d272263c74cb01edefc7189b9485cd7341884f4ed165f84967fa6a1987730302047c435bb50068306602310091472b1674347d6b93f1c22d786f69eeb291d2636ad8ac6ce8447a83dea89afd1601de8c0010b1f992c1d21958437a47023100ecc45c59344e6a827b6d4b9101206ae2d7f928d57383972875eadc78518295e3094e5c98d64e24608b7e2f79125b148a0302047c435bb500673065023100ea1c9766f998b6b26b08e77ae25dac907bb25b8f571c71c69552fb0bbda36b0ec8c522928231ffc3e6daedf7f7bc6eb602301191d106bf7d76e8b5fecb640a16cb005d8e2864d1fcc381b6291da67cae646918bd0f2b91a731c286827cdc37d092d30302047c435bb50066306402301783b1346f535ca7991cdf93442d46e636d23858380b4c0213c4a5589b7f3f1b945441b30be09a169555e785599f215a023031ca98b2ee7ce8b4698a7e4e1749384e510b2913466eac5d67d1c52152b7dac726f96e90be255e0534a9221e34b07ffd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023040436dcf39800e8204182cdbd29dac16f79fb6d33ad85c05278892ad67c0851eea6e8443c5779a65be081295d1bdaadd0231008b8f50fef324dde653e87e14f96cbabbb20a07914384029212d1d3521e81abb36ea4a8275feacc4cc509e55acb7b63690302047c435bb500683066023100866be17bc4b209d8cc124a7056d665b461700f1a237f159632d2186ec888ade873ef5ac4193f3940169c9f0b0db4cc33023100953cb5a7185e89335360ee0a27d55a89c544c2e32e0f421dba8aa25552528eb7bedc2466aa673ff7b0dd00d0371dd0c80302047c435bb500673065023100c3a536167df8094b533c89b1cbd0b0a8f13b6dcc23a33e195dc58705aa96647f59b433cdfeaaf0c7cb2b0b5c3722d1d60230326db9b39bf9098660108205cd35d09f418a2d21bfdfaf5c9c58dc900b844dd9037d7ba27594841746b61bd824c8ab1c0302047c435bb500663064023044571dbbe1f3e0292894a71f5fd8f535eb825e52f0a7a6a2e95d6b42f0da712ba2da69be39f6b19c29679009009fedf7023063d3728be5055b5184be5d43c287180e95a885f71117028ae216d35abb44e03de0666fd8e837749d7e99d5aaee42e38c0302047c435bb500683066023100e1c8016bd9954864627d89df134ba08dbaabd5de9d4e95bad3a84541a800840f9400b2ec849599b0571e144d0e9cf448023100f775537173463ffdd8ba4f46ec4ee8bb58f7c975928d45f79c071a193915fc945e969a60d62ae4cd05de404bd412ed870302047c435bb500683066023100a7c0140ef5427cf83d0a25d1105157436e24083bd5124f2eb625fd8e419259e2ab600d47c1d7236b641874567fb08a55023100e1a72a3df2448927c42fcebb922b01a31da58c0ebbaaf07d8eb5e3ee467a105771dba0f75c2939e675c33a613a1450ff0302047c435bb500673065023100ba98fa3813fb53b9be8a56bfd0aa41a4db90cf5f57dabeabc3e8a0d0f241a892a6ddf9c22bf8865363bade0aa99dc5db023056cb70dffc0d67b0a0a4e719aed91425e237d399823f918e327eef87329d363663a72b9383d630ee3c76960a8c8713320302047c435bb500683066023100abb2323363dba436f84958e695a52ca3a725547d40f74b012111dcbef83f12eae59e520ac261ffd044e7e0100c6c7d7f023100cb2deee12e57463dca7ca3fb49f65cc838aa06b3b370aee5b2d32f6c5485dd2ae2d28c3aa522b148dd21d4215e841d200302047c435bb500663064023065f11c1fc906e6ebc473373c5d75bb60144579cff3f0d78d448c6ee2578934111a7b550c09fd41db32a50ed92d96473002304d41961dfcb90275219d7715cfc10fcbfcf89d58d4a920b92101624c6711d0273b75df06116ba40d8dcd8985d658081a0302047c435bb50066306402305fce7b0204671400e9c5f317601d9dfc092d73c1008271822309ab59446024e426bc1148c8e4d7284963b987b7762400023056c81f7b0bcfe51fe38e3219ebedfbd6bcee52004e45e2691bba3689f54f631a6642120dd6e6f741f460364881f261490302047c435bb500673065023100f3e9a4acabd7bdf0426f9623e709d896598d4300efc5a7bb34a9eb495a649a360ecd551fe43ee60eb40962365b8e8b14023055eb092da696ac6419f1b6ee2adb75abcc79f6df8e7427e33f6d8184cd0ec1439b3a944ad62171743a2510c09c6a59130302047c435bb50067306502303a0c3cb27d06f66eaae2cce7de5dc275736646012e47a8425dfee7a775d321c0b828c33e6d8deb824ef3ef99b15120700231008d7c675e19e72359993aaa720659b50cca494ec885e912c57ea02486c9bfa53e0537bcfe8877fd803da030ba7a531cf40302047c435bb500663064023060d213d8ebf12f38d60c17f4f32265ca0b7a253d728b20252f50fb2caf632bb00bf2535a1cde0ec4e445c2d318b72f91023054d43ea581d885b9f7aef1298773fa2bf4042c6b5d6cbf70286ccf553986a575b52f5daf18dd795b6d92385b03c69dd90302047c435bb5006630640230642e71a5a10e175ecef30cc308682205c19a3ac79bce4dfc747adb513ac315a35edf883fd1f8dd066b235ac27863bd1b02305bf6dc2d013afb0b944a792eebd2bdb897e2ec159c2c96f00ad91773da27b31eb426125828af35c4bc82a03f7031ccfe0302047c435bb5006730650230205c6d1115e0d1e5f97ace69c9ba3d211094e5999893ac914a92365aae3315b71789e2c07a526cb4229e6f73ce77a84b023100893eeb9767402a483c67bcecefb5784b29e5f5ee028d5dd0b5ea8c9a6f0d36695329966f3fdd2fa34954969367ec4ac90302047c435bb500683066023100f7eb02555551e1422b17a78b15dbfc5d759932dacc66f06d30722440f9b7b590b350f36e825aa21309d1c30a2aef798d023100884d13a498128c68eea85bac823fcd6fb9eb688f447e45bbe50dee9bdca8097ef4e0ea0501dbae36dd5fad09578c5f8b0302047c435bb500683066023100ee31179315a07b842102686e4b22c9ccdcea2253154376543adc1489c7a72e734d7e24ebed1894663233712ad34e2d6b023100c1b9758ef4ec60d561e17f47999f3825f063cf7f71a987f70c09af40db179fa62c39b16742a1df5555bf10e9b84ce5780302047c435bb50066306402303e3e7af68b317d37b0ce7a58e52bde1db01168432e3dd01659b872174595a1e9193b019fedec92733ad6b22fdbe1f8e402307f63f0da01ac78d8b4883fdfa93d83359cc6445ba4c12d2ff9d1a3cf947f75d63ff02e1595b15e2ad455217c6a6ea1470302047c435bb5006730650230163c3d9f59c4087d86b6bd9078e11ffa501ad7c7560d21ea032fc6b2fa19a63dc133c2196a5790843ece4277dc57e6d4023100b70e8545a6eeeb56a3a4ca2fcbd84d89c8edab271e952eea8cbe07650050f3f843a3565dea2be51c906a5f7a4a7cf8780302047c435bb5006630640230081359199ee8a9d02c5991c0e801436d5193bde5cea1ebc0287dc12df596f73f242007e88cd41da4db47c4efca58ea7102301c036a3e545a8b242fb9bfaace03cce096ccf1c76b7ba624af3ec0389e4abfa4368c6c14d912efe530bfdf696ee11db90302047c435bb500683066023100ba9c1d5182ec1ef4305cdf5f6c0d2ebd79b736c58deb6dcb514c5744ec4eaf549817cda67394c3cf486ab343fc9c49d1023100dd393e7a2388c6544fc73c0f4500db79e2caf0fcb755ba9ed671da6a78ad0196743a4534fa01a8d69ac84cc5ec586c6a0302047c435bb500683066023100edb43d6087906e7f1a77d9a45b35d34be2ec3e2e2a1727d225c610c07dd8991157673dee60361054704809226f4df61a023100f13333bc689020e3fc4a2f29c94763edef22a05f1c63f7dafd7cf37241e37cafc3e577bfbeb357aee67cf70b85c343ca0302047c435bb500673065023012e054d1fc73c0a9b4a0ef33122e965e2b00f42929ea6422ba98c6c8677b3f744208cfb5736d6a26f0d46e4e7734a5f0023100906ec4012308e2705ff61761a6a10acb728e88d289eab02739edae8643e3a7deffca7a7df5954a255fdc6c1c66833eb30302047c435bb500683066023100839487543388de2368640cc88fb5008cc375b3badfad9057cfd37eea7f9542db4f7db248c0afc4a44abd7468dedc83a3023100b9e39aac26743394a1394c9de001e8d807400b0c69b32a55095ad696ed60f904ed0dddd9670446aa533af68420fbdf060302047c435bb500673065023100b793ec8a9056788ba9e20f22a5e700c9ac6997e0524dd5685d7b85d789f2595f3e88325756a4140c29e96931a151f88502306061bdc48771c588009e4da099907d6f56c4a157e29ebb0cd779fcf449f885089a095fd547687b6acf153429fa5bfefc0302047c435bb50066306402300c3def8cded569aa6fa7e5c6707b27cf0d026f547a76d95e8548061df11402c120eec0237b325ffab4b4b2ae6fdf8b8502304d2fdeaf1150f18a2d23fa6f4abbafcc4c2e02560885e57a1c1d6c991755516f1532c6826f956f035fcfca2b9a4ba0b20302047c435bb500683066023100e18a8c2c72e26a08bb8930c968b0a654033263b9d2188c0ba6fa29c6676d7b10138344d7b934b6890281307d4d707d40023100ef1a11322b763627f665979d9b77eef1868137c7be528e71e4f572b153588c4b9ac95cb171be27b92d58460051898c690302047c435bb500683066023100c23ba55a529dfad2f5bbb336b1ff730904f4b7dc3de59099aeaf8f48a763c1d3e9fe129f68730cf981d9def447515bff023100c10a7b76538cd8a30fc66f32c44fde25beec903253d92c224d1a1af09193793f97897dc649fdbcc884c676f06c72d26b0302047c435bb500663064023060dd6b987557ba84a09e3ded73abdc72468c551c5f23a5dcbdb59c3f11f0f5d1a3fc7cc740e661bff5f8da346828ee3f0230751d338512cd43260d22cad79be64b2e8fc35bd4391cc6491592a009649310dc0b73e2631853547066531089b25af1d70302047c435bb500673065023100ca07a90cd5aa3be99a65d3f937f0b307f5e64fba5bfb862dd378b2f36f8296c91338454fdba655a8ae13dbf74ce9cceb02301422836f83c6e9b266b5ac6cac95c2e02d05aa23a7cf5bfb1114815c2b7c6c7a7eef3196edb2d5c38257722044552f420302047c435bb500673065023100e77c393f3b1c781519613568e83935a86c73e665b1c12cacfcd4ebf502431a85a81c973ce48a85fbd3afb31d1f5fd88b023045bbe04c333e16a492b9dd41cda3cabc44ae24723919cc7c8c098cdddc2a700ef3b1298f280a03b097a3d91083513a700302047c435bb500683066023100cf856534c51d3454f91ff86de190ccd9f13d8f3c395581089004c2c3a0c52924754a3c3cae1e4dedb835cdd1d9dd2c3a023100dbca112358d454878140289c8adbcc95f4d2a525cb2a137a86fbf6844554c21542c8fee042e308db3e1237525895baf60302047c435bb500673065023054e9d68a8b2f64f4888131cd1a43a16c15117d06e754c6013d73d934f3a2a2b2f3116539d3c975b2204a2981da34a5a8023100c275b32c3042878f00e5be86e34df7a3b564ca731611ec2cc2d849dd07c9b32e07842961e3d21c3fa26020635326b4490302047c435bb500683066023100cfa8765399e26ab655ba980c19d946c703f84ff1dbbcc466ec1db0bcc48512f5725a31acf2d71f29e82d1af3e28642dc023100b9bb7fd053019b30a3b2a804ecbc7a81818bab41aa9eb38e432ec7c22e75ebe9f555610d0e599f6dbce30a56a98203850302047c435bb500663064023030d90e0d6db128de477910e3dab7ee1d3aa967bb8b750b12014c605f38980422b418c2bb04732ded2be726d00322e75d02307e82422415e9b185c1472bd8a480c55dc9e61868b48e4e61838d95dcaae82f81cde0c67f77ef75166fb15e9d8277cca30302047c435bb500683066023100a2e3e293a2c8fe43a854e3a048936352580e03a2de7c2f8a383ae0db947624b00e682c5538f314f925fd0af82fed3432023100be4a5d2fc11f8fdf4b8c016b9693952e0ba38760dbc16ecaddebbe370c13ce796dba270b3c599865caabc62362aad5320302047c435bb500673065023031552ac2355f07a9149954c627d3d1a146cc011e2c1f3e6d1a89055ec521d2fabb1804f660d250fc3e6316dfa92b768c023100c0958c8b1b8bb0c1878cc03d20ba1f95f5950ff7339aadaf4eaee1776e6dce719771465f6414d33666b824ae99b2a8f00302047c435bb500683066023100fe34a5d6439cfa11349850d25a0c4428db50170247b688d6ed72fdaccafce16f43adb7a68ce076a892756b60b3452e9a023100c15c7e03a11627d102ba4b1b7340e7c895e50b0cd514e60cfdc63d2d72022766603bde9ee166833af964ba6ae6de0dac0302047c435bb500673065023100e18159c0a71b119b0bb09682aae3dbb2b36b503530e9cf6944aca40572fb919a70eba8e486eb2a27332f9e6870af316f023059d4fe759c617367c0a79bb6286a152dea09efa5ef6730a5c3cc0805aee519f822886535724f68772214c32b6a3644780302047c435bb500673065023100dc1c948e813fb297953da969ff2327385573fe14d9004de76dc719374180cecfaa19ff9a2345621ee90de50458548b1102301316c32226068d61f49386482675fb00f4fb8e70cc9d5a08a3e2243bf76d34f5a7d53198343ede4b9aba207331e1b5ef0302047c435bb5006730650230405c6e7face4727d0816e4f70f1f18834c9d604e0da93fd32d7f6c198036562ff439f8eda3e47f3da4a1bd8ee5c73f52023100e3cbcf553fda18110d3c87eb1fc1c33da0f1823cb5156470f0cb1c099aa400c7f2d95bf85f9f5ff450b09922124828900302047c435bb5006730650230592359c64f15ed88beb4d4827e1f68f3105b31f2ccecf38b81592e938317c078e81ed8f10c8cdc28adb528cd6da7b6a4023100cea73171f6f1e652f6870155bc5d54f18e5ea54a6ac405e35d3f21b86bf2fbeafbd495e2abbbe86c26d1afbf5b4974b90302047c435bb500663064023063ae27a21cda51e01b58c8517aef89c201ab3e98d524254e66c6bef8416ae201cbf38d1566c283afde0a7a378610291f02300d699021f76660aac19053795c278a7dd6015d1e557879f05e1b8a836c056eba6c7450586cfc429334d10dd8a24cca120302047c435bb500683066023100f61cb704e00b232773464f9693420f61b85419e9562f4770b2bd1b0587abf88e5708326e97556d1f706835a740137772023100fb581b9fffbc14c5171cb300fa520db0aa3d87aacd3c3d57755a8b271a2f6a6c0d398a7a9ae1c4f81801b060c21074750302047c435bb5006630640230459f10b6fa6539f439fd3f8d3bb2b2fe81fb73fee7c3b84a13b295e35f0369ac1405168485e91f692194d89c3c15e8a10230591a2eb954694d858d3c0b2da8e68ee03556091ac26e6e6b87ba28447f399a2c6d865ac314ba3ef381d4892a212c8a4d0302047c435bb500673065023100865628455e7d2b0150da4d9e071e1f97791b670bca2a2cad07ce8490eff80027edcdb443df2657e451264b305f0fd2fc0230322e4cc0a97a93aa70248fa25fa2bc44aa7c6b2f45f097d700fef6ec6190c17214e0a4c948086df28bb54013406a05540302047c435bb5006830660231008d6cba2a5492683a32e6f2c2ac746e3188a775dc8c25556c8be9a7cd9423895429c460bfde53707ae532c15ab584d7a7023100a9fc939df617eaa2499ff6a80549d536d0088079b57ed7846b372d08265d81d77eb394119ef5411737435ec55230f7b00302047c435bb5006830660231009f7fbf2593a93fbaf9cfea8a2b661a02364e671e20faa6deb494bedabae43350d6fe0819b065ed9aff8b9af480116dc7023100a95b2fb3e2785a54ca554f450021a5856faeb4f198327de4fc78d70db86e6d083f2079afddf4e8386a1279ac3af29efc0302047c435bb50067306502301d9755e33e1c59e2add10452052ebfb6acaf48690e269ce4cf2d725fa744be434033b126055d2c0a4021b474ae7e113f023100e24b68dc806ee12a51362659148ee60b074b18747c83ac3e3bff092d9a9042e06b13ab18ae0a025d788b95bec69c3b250302047c435bb50066306402305d94f25257004449ef04cf3766f628f6b6e8b228cd78119a5ed822d7f83e4641786ceaf68f21c9eeb0623417e625393102304d36feba850a34c5b5421b88fb6310f132d0594ba71dd03907847ae0c6efa8177f4baac9b5db6c6792f4b1acae57dd500302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302cbba72dcd03a4b352596a72c6fa0c75910e7a6e71ca55d1a118be68ade237f05e24cc74716da885faad860353843b1c02302e8475e507fb27c33b16ac3bfd5d8620f769f59aec5e21abb876b96a756dd80135cdbb087fc04f394a39ebea4daa49930302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e5c5cf7576528cf1864220ed22e5ba069a25a776ae7722cf363f001bfd623bf28fffe7e435c890c7d59960bed7a90eff023100881a152a455e92ae6485d47e21bbdb851b986f678ca6848f0c1b7d21dbdf7ea398c5f00204b1ac4da50a7564aa4e317e0302047c435bb500683066023100ec9443b9b5dce947207e471d786f92542715d8c530de203e758ae52b9dfb74ca6d210bde61edd70a5ba9faf7e37ea4f2023100c5794bde35805c8e9f2c82953280a477a971091fe9ccdb8bcbf2d8bffc11dcb2e1db1d21ff7fec45ae00a515fbe4e21a0302047c435bb5006730650230208de6d4daa8323ebfa3b169b43f1426054d179e20c491c767b332659533b221f0aaf9bcdf369b968ee62ea72a8fa3ca023100cdb60088ac68568518f8b4e1464ad52bf4b330ff5f9095bc2de15fc244a8b9f95d0de59ee14e4a2116aa6966ce436bf20302047c435bb5006730650231009bc0b2a6e9e44df61ed23bf856891232935099b906aa34bf5acfcb613e33352e324bf568efc5526d71166a4ca8d3de9a02302c407e9bde1d68ebbf9f8e6a9efb489756a4dc162effcbd63e7a1f5472ce464552b0ca08b7587a21f3de6f98295f70430302047c435bb5006730650231009558e35dd92d00bd54ecaafd149598a4da7a8bc7ccda3794f07d4254fc324fc6c66fbe9de99b1c46089165f0f669caeb02302d89b1a4078c3bdfb514d6f5297a4ce6fc54a397eba13dab6af77e2155823d2d48ab73144329303b003c455fe17ab8b90302047c435bb50067306502301f0a085fe4865e12c7b8d8200ae752b254e2addc4df3020731ef5020e89276845ced6bc60877ed1237b17deaa09e1606023100943cc24a3313066604775bbcc4215bdab15afd42c1eb946d6212a86dabf5a2f7f87eb31571f01f34414369d0e6ef44220302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ee52a9c394500d8f6f3df37a8aaf356a3e20ab2735788135a25d17c87f081ca6644cc898859f267e9824ff014e41b6310230797a446d04f7af2194d92d3ce045a99acef5812d6c3574aba80776d40bfb345b46a283466e0efcfba289d965679abc700302047c435bb50067306502310083ead2f87ff8d2e5ad7a98b7e3943cc93254c72fdf5c149864d9ba55a81159a280fbfef816916f41824c0af89e81e19002301ab2f7bb22f0ed36d3ae4bfb595573c6dfda8b6eefcc1ab9539f78f89f4dfaf884edc659f719508146dbe433a3ffa4060302047c435bb500673065023100f7794364be8fb4b440bf18f23814788e41ded0a38f0d9b8fc98b3c52e0b98155fa526a8c8c63ac54cd4e850af8a720a102307edd06daca7e659c358504caaf0a26c9166677d3a61668614dc1eae10334c18fd79a8dec9b730888edbc045b61ec03000302047c435bb500673065023100d2d82ca16610002016ae0f85fe823e6076263cc41893900312092271e5db4c3689c9ceea2a73758db87791f271931276023053d282b7bc547e1d7723862c049e30427fcc2fc39570f08cf75b8ebd4dbc46127441a95409490477b825645ec81e22b40302047c435bb500683066023100b08b25824dbab17cd880d1bdfba4aeda26f536f7d459ca1379875c703adba1864448649ea56f4b6ffc7b99de1730cca1023100bf787093375799ae29231bd7ee6893c91478ffaec5b78fd2bd34ca1fb410577c107de0dfd7817e9ccf1ba333658176950302047c435bb500683066023100f3d38232e0ae119ea4f8337c92d62aa17c2536a4945434285062a8a51976163f8be715512a0aea4dda0820dba93c058b023100f6518c3d842e842106171b82d7be794368958623f02a87fe56c51f2917e7fbf5ec38fdadc3a2a035857d4f7e3a7ebe0e0302047c435bb50067306502310082b2f59663c8c5c06d11c6dd38224c820bc247bc50f4ae75eba40ef60d87de13edb0b8e5b558d1bee3ba2971600a1804023039fc0166562b30fd5faeac23cd62c21958fd75849000bcbef80c924bf457588b8fb5173d6574c2b39d00b613010467720302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306a883dad35f4b03baf2898a0b123eccb6eb2bac79bff413ddaba5a64a637609f8246d1ad9f8d380fb46a1655e4356e91023029a671676832b5dd2c88dff2e31341fa2d6d36fb2829632470921943b2da93d74cb62242311cdfd92b85f7654887b7680302047c435bb5006830660231009fcaa0d9d1e40cf373985189fa08e444a79030b0d823cb084a6fb3512575292a67cc5eb0c3bf0dd383407708fde0a4f2023100cbfca707e1e1b112eada0fd9cf25170f1d71955cab15738f8fe0cf42e5a2912a5781518f6d2c7771c54262d06f6544fe0302047c435bb50067306502306feec95f316b0ca271ba2646f01e22b09972ea12f0c9bac6909441c438efd01e0af29d188fdb9cf949917dde274d2c5a023100ca2cde71bbd40e9b3c72409459c885c8250c02cdc8d9a93f8c0061a959c1ce528d6dfa2b811da008d35431b8d1cd92520302047c435bb50066306402301ee662f6528ddca72371bfb7268bb85e51f33721cf33457402b41a13c6e0d7fea0b162e7a729c9efa5cb469d78949304023006300937486b1973c211f4a13921da91020abf6e41082cd6adf489107f952e52bd2a4ca23f32d07e7d2866e0f9fbabc10302047c435bb50068306602310084892f2e085738e23188e64788167c0203a2441acfeaa4d9b77936c729399b3c7a3ad8aa569a46902191a3c2c85b8fe502310093e94632adccfe8b9acb9b2b2835f7472769176e0d08c6a749f8e0d811f0f732fd747b1c3137450018d6487ad9a1e9af0302047c435bb5006730650231009cf5fcb133f3b5c5dfe3464fcf1dfef49e9c1a25647a4809c85602a8aa0d99ea65703e1513aeee66c4d3f5e1aded741b02304301bc086eae85d26bff8640593d4d8277934e4f035e50d28685b8aa2f8803bf830b9167fad89ba5d44ff6bd308611840302047c435bb500673065023100f7033f0a2872b57cd50e00f50df76e908381669503d0aadaa15dd8cd24bb57ea60275f67fe2e5fc7fe982c326a01524f023037d8e0c60c3f4c3a16975f1f0ff7a4cff6757deb0a3cd0bbb3a5a6a5bbe52bdbf30cf2d153f5db87d8de58ea4baa22710302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023028c36f2bbd905c1fb80fab191f11dd51072101bb198198228fcfb5ecd56ac1601e845cec02c6e163d50a4751848783f6023055d51967ca4d69fa13078eed8e460a543447561defd3bda88d68011d4855b78938e5148f5d01d4dfeb160c7bda15c78d0302047c435bb500673065023100848d21e6309d159ae73bb588482101bb09324cbafc375027174edbc18a8ec90f0da7923becd7d61b34b3cfb3c2495d9b02302e15dcd11de57ff5936932304230984b77394d823f2dd891d0f5d351a6338fddc1c3f9996ed8895e5992e4194ee2de870302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306e223f52d95545312e47cd97e6a0772ad40abcd9125b780fe70756c6db9dd3c83bc9bd487bdf32306fd4536328d94cc7023100a88396e1deb2f5c42321b7fcbc5f5c5919a1595b6a0d4613c29417fb400304687510cded8228d4ab7319f0a76d31357f0302047c435bb500683066023100988fe6c30e77cfbde3e2bf7371e621046e4202216887a87610e7082c7419cad11a909967aa81d7fc14e538e91e1df1f1023100da34124207c42088a9c428c42910bcaf93232f5b35f836b9a774f0d8220827ba0a13f0686b2f6f3efc45bc608854a0d80302047c435bb50067306502310092bab6c4eedfa9b164f59c8a25e527ec8ba3dc36e515d84a366e994dc0ee44a4228af962205297401043cb850ebffb1a0230249b2f8c9cccaaccb50aff7feaf4aa23ca226c325caa2f147fd1943d318443dabf6335719afab778c65a69bebf448d120302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302018ebabf2ed00a88438c831c75e2f2f0c9e9feed1f3d7486b04651106511ab2431d45853e85088656933c4fd4a0f4330230640270f72c9c286e3869a2045b992e8f2d70a2d47e89505b49a9e5e77a3531d84396f5b97a84ae1690cbee7a7076cb550302047c435bb500683066023100e8034d57321a36291aa4e8d568a5cb80859e7743f93fcdf394ba411bfabad13b2b2d9ad06aed915a970a4af67be10f69023100f4ed8b7812a67cbc9519887a073ff54589c391d7544623d1ba3d88e8ac9b9e63dfff3e3b57143ef0adda1787b0054c2c0302047c435bb500673065023100c9465fdd8d10efbf2e9b6ba467463917bbd4aff8eff094e0ceba658e4c7c8e05d10b19bc0e4ec0a966faedcd07a73a3c0230628ffe56433ab8b01e0442104fffc4677dfa5d72ef4ea8d254ff87e7d8a7d77cae35dda7518e25f69d588ba51a92422c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023053571cf4419b401c0bf1caa751a72e650e7ada357c1ee70a8905d5082dd4dd933a5f18fd50ea2c9f87e910eed550cf4402310092da365bcfb9bfde32e9a7d60fedf8ac46c61d60247ce03d6247bbf1f916a60a1c8c352c76ab1d157a0bf091f3b4a3b80302047c435bb500683066023100c1d3d6d6245c31b29fc95d0c9f488e1674df9d18a635e38e11acd1dfdf648b0d8c0e284de514cdf5ec7ed05aef0323c30231008240739c04b0f4199163caf6b8c688d944f6b23c1fd0e6d56c5a956b9286d2c394928f4bd9ebe574eccac98f3dcc25600302047c435bb50066306402304edeeac387e2601ada488d1df879da940eef2baab5817b38e640bacfd177279bed20a4e76cd9bf3264ff0059516f3da0023063bf0f5f300cbb16b138384d075add931edcea40a2e34be5740627a04f09d448ec3cd2dad603ca2ddac03592ba654c0a0302047c435bb500673065023100a0bc382499726c0050c3ecf13b8048d183eb92390cc48a6243078b6175de017d9fb0203fa8509100ffefae5dfeecd9e10230777360eb6220b098c6b04f4d1592d406c43c2db9d2ead8aab33f40f55acbd7c1eed771335bcc3cdd2ec8d33653fd73d00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302a011e49ba240ef1a5ac5a5560f276d75139a94bb0071cda260046f5c93e39b7658c072f23536c33bebe6beb1f17b5f1023100f6f3480dba48403e05375f06261e2d6f4f1eddee40618840d9734d9a6e865718f7a43919e5f84100d86ff8f3af55faea0302047c435bb500673065023041f95867a1d4372f14766f3838ba73c6d1cea0fa3a242b97edf6e5456061ac719c8fb3e55d56ab96dc56ad825d6b6fc3023100e896a19a9936aa9e32aafbddad29a2c9a38c61fa00145fc7a432a9c0daa827e444ecf47b29b991e4e12a45aff426ca2a0302047c435bb500673065023031ea220c85f1c8feca786b29206848654089320df6dd623ef1eee4a46ec71020ee36ef9adc189967bb1f5d992618b69d023100dd3fbf4999b4e428c5a3038e65c5d2ecead7a25bedd1303c9fadc6eeb99d9650d394f48b6418f174a7e6e6075387eeb60302047c435bb50066306402300f345726245742d4d3aba39b8c452c9770a46f8247e7db43789f8ba43e400a9703589d4228b37786ec1c351407d3fe8b023035c64f5b530caeeb5431799a6016b851d35c144bf6e9de1ea0f3febe659c7b365670ed269dd048a2e8b294acca7afd600302047c435bb500663064023026378ec7b4e6fb30203ab4f850e12ba66fb4c56192770addc951c6f9d5ace2d750aa3dddf298247adafe119cb102d95f02307d5eaddb597f162d2ebb81ee7515ae3b5aff1b53e37c380a7b03783d078981a9ed6c696ecd4308b977fd34108f291e9f0302047c435bb5006730650230062037366dea20eb2f68e9287ab84529c923fb54a5a3e784230ff7433e27be60c79b709474e6e9af89088a436a25ff2d02310090998e00b90308b6d0d98c7edee2c5f0c7e03d4873120e0a42d525b14c44d31c3a67e4eace5044586920f76aec4147510302047c435bb50067306502304f7713e9f9b504c42cecbbd2d0bd65cceadf3611fbb9d603497392f32c4825ad354e6af776271868e3e52c130d72b52c023100bc74963e2761cc115f60b59552ad00cee55ec7f8637cbf856badbf90775b21ae5ceef107dbad2e3de870d1fd857ca5030302047c435bb5006830660231009880dfc990d2bb157d151024c939e0894391c87be7604b61c4c00a059ffeefb3f5207a786c70349e3e68001e4b683ce80231009e2ea057ee6f8f7be4ab9ed42fc8e420818db976e54326cdeb12cb588e93524acf9cb6d71941a22bdbee59c23e2955ed0302047c435bb50066306402300c97b8c878b391f6c2ccbb13ff92d96a7c028148a9773e83bb7dfb5cae505d8aa891f844303b93ded562c01e4a392a7802301b6af1a60d09d1c9f08be0d26e619818841c28ff94cb984251c1df2d37e978ae2c764719677ec19d5c6b54f455489ff60302047c435bb500673065023100874aca20411d3e65ae71ccce44a3c3814d64abe5101c9a33b0b7566fd9bebb382a141397b0128e7ada9dfe046fb73d08023000b948b96fe61478f6457e4616ecbdb49bbf5abce8031f8f8ffd6d7f82ba778654c4f784046dd7d8d48b778bd7e910290302047c435bb50067306502303d0b02868c39dcd8f600550cfad792593c325f626e84e8bd827c17b56dbd0e6d360cb33587df141861266166567f96d2023100df207bf2da00def6ee8858d57e519d9c02b8864de94bcc3db5da1f2ab5fad7bfa74ac3fd0f1dc7994b87a27fbbd214a60302047c435bb500663064023065c12fc5d1fb2698684b8f35ca5b261c7c2b54fdcbdf4f0c1800bdf4e2bc7e648d7912fc3f2395180f58778ab60b2bcc023033ec735d21b8a0c4c649b4bcabf126d5e3aef2d0ab7d93e2921b3db7ff443f66253fc66f34ec496c42b0d10d9c82a2ef0302047c435bb5006730650230753d53111c6802cc3076dbc01465145e6635c80e70a936612bd64f9c89c771b56f67b5757d4ac00d735093004668c668023100c6eaf73968c52161e8cf14969781f36091a99cddae3227d384bdf32e56481d057582ce9667027fb33d61e57e198235190302047c435bb50067306502301af98176bfb0ccf7749778ffc6d177b4b01b3775a5c0d9eb3295f63c56e8625909eb32d858cdb586ecf1b3cab98c9456023100bade0e19ff19fd5e455ef309559f992c06537e9aa93922ec661f782246baec297ba4231711848f2a95bead824fb975a30302047c435bb5006630640230590228ffcef93047877d6a9f361b04b0b381ff0e5f55fe84837da77117d16e2e9a22c0ce3bfb25fe7854ced5cc65bcce02304158258fe230ae2d458b2162b26f5d1878b60a4ec20fbb3eefce7b8d37df04e09557cad2743ce18e4dcc30b22e1f31a90302047c435bb500673065023014bc658b4c20d8130a2f8d898d69440a4a0328d9984e47f152cd98467c97b2432124a8f62185de2b2acf34c80b4666f6023100898fefe6d39585f83b10090518740a225dbca0e3821f4d342bc2d68f4a3d9dca9af1fd09d6ce6643a92804d1169e2c520302047c435bb500673065023100ef9cc2f905840095bc0d7547a83db827c63161ba399f866c59e83ab7d602163ec6a6e2ab4bee599d49ffc4552c9c191e023073bbf0adf1d204e3e6dd781d806102d9c7d276efc9f515772489939d036b37e1c0f31552f3ea58cdf7874e781de85dcd0302047c435bb50067306502307b812bc866bc0c9ea508455f1bc81bec95f50fd6725cc53bc2bdd885c6bba147f89362a756827ae1b003f77cda88d8f5023100b2d2ada99fc89c65a854152d175eb78dbed80de0d11e4f653bd5e53b87bcd0a8ec870ae6a9682763b9f5c60d5ace31dc0302047c435bb500673065023100d41c00cd8f3dd49d0fd79e7b44c4397874fde3519e53f465ec8831cb25d40bbc9cb14052b2a8a0a75ab4a10e0681cc1e02306c7495e28cb6a11342b33ef93f7b36f604416f907ba00bd05c9a888c27d38251addc5de378c4c6e978c4ab88255d71b30302047c435bb500683066023100801c9b818faf58665c9262b4b84c31d3e4571aa023e779c8f6ac7eefa9634b2adeec3da54f56dca7057e8e62677d5a0402310091873af5e6e91c509a20d547f686fe9b3b818a33f8ed4c41c1eb0973002ce6dac930889a7d3819431fd63351cd7b815f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b53b635f852b3937e6056ab3584ac9283e8a8e9122a32198b17275de0b9541956e6e57652dc9b2ead6df0cfcea622066023100af3e24e2156413728fa055c9fe7f69c81010bdf565ba97e2642e4873ab7d8647cfd154a41c60506403632f6ca23f4e160302047c435bb50067306502305247953f1b84051ca16227e4e42b06a9e22c4ced8081e0ebcf8041f69cced92582288f5062788a68e1d00ac9fc896066023100ea66a1a7bb54b73f4a4e1dbf2a31e250be7be659302b77d671e0df1ac3fbb1aa5fff4f9fe2df196ae6e32b22032e86170302047c435bb500683066023100c800e5305da07c90aeb22eae5fd5618d10c8b2c9a0f37d5f9ca51dc6820307a3e7c4dc7cd87fa2e8fe7d6eb261726e3b023100bddba25232aaecca8d9b3ca1ddaa55ceb212765bf18734ca3cf1b123afc8d07cca5e815417738e7443e5f225a782c0d90302047c435bb50066306402307e91de4a6588e81ae902e34a4f7d381a5fe7550d1e7db89cee7bfb45a41ea523b4db33b6fe41e5fb6721e5c2e0db5c8f02301e87b4c8f802fb79ba464ec757ecccbfa59842c4e558e73eb0bd44db0d24ffd75760270cc2a9da2684b4c87a3894463f0302047c435bb50067306502303d35d9cec7881ae181ad996115d3880e3a293ea2e3dfe51f97b6c595da3a3fd8e37b190b6f8be7e7774f04ca20743f1102310082545c75eb22a941b020e7b4f8b632e8ce7e658ee9a59f732f4ea17887cdc59d1759931bce1c31873c5e89951b2fb9110302047c435bb5006630640230305be45a1e156810653eef054f29cff1a6ca8dce9998474084adf2e2ce3f88ac52662f079b55e9fedd1a3199a006402b023032bf1edb6aa6d7f8076bab42226b8f4f9bbe5d7850bd4547d38a10f965614963396b1f6cbd3af430e380be423acef0a30302047c435bb5006730650230199008f08a80943a970a28537bd45b535a64d6fbdd0924a044002f7e28aadd7a8c7124190817d5ddb199126283c04995023100f4361e2be9710eaee500a3f9702031c43af3acd91400087bf3ad90ce15e7dfecf3df61f8e958e2b6e910d7df2105f3a40302047c435bb50066306402305550f1139b49adfe3948a407c607df43999259c72f19e40e05f2b8418f6a2311e8b4f2d9418f57641b804af45caea92d02306500b575bfd63f3582210414ef359df3bcdfa351e11dd7b6e86e72750df50aa1afe406f7fb24e3d7d6b39db5a93029170302047c435bb50067306502303e56dd51eb8eddf923f64b8f9b1393251664f0f7af6bad8764493055f5eec7da4f116de8b00350830d3fac3b0bde061f023100a62e42929d18aa3da342c87f7d86111f5d107c8e190c8137a11bcd6df16d1c70c92b4d2be0d7e830d3102b9e6367a15b0302047c435bb50066306402303eddda97f8a9eb5cfe42bc549a73070b03e725da340d8a25514fb339b2e64a34387bcad6f47d21475ac5b1044a82797d023036f5f1c0e8754924053cc1a8498248a61379b9d3a9b15798ab750cb1270f0b4dc1e5edcacea38ec04425334003daedb80302047c435bb50066306402305a0b3b1857a5df092f62538a647a88394757d450334672828541f4744235233ae746bce539ea8bde321571dfa5b3bdbe0230636f56db8b2af718ee9fab2b6fbe0169396892f7ae831131dc9e7ee9c99465d9bc0717b232656c9cdac3f54379c38e980302047c435bb500673065023100e9c69ba7177cde0c0c33b58221876be065c8ed51458a3e71bf2698a94a1b37094216dc0349bbe691c14aa5313bb11eca023045cb8d2ece4660b52eb40583d178f255a43b2bf1869e862a930ec474257e558a9add91ee16de77b11b6ff7272d6126d50302047c435bb500663064023070603158edb66d43e9a311889e2efb335274c36650bb69d20f03bd1c0d274478ded5e0da62c96c19bec82ceadbad731c023030f7fcd38fec2cec3fd96078e4ced8927b1e22338b80ef2569c42bc3efc9192608c0e6a068e20edf0698d8b6c9d4e48b0302047c435bb500663064023030d625463ea83befacfc44ba57ed6b665755c4b7085f8c1afb851b3dd860a40420408fbeae3e3bf097fc532ac8eec6d102301f08b62023a33736258d18c7ffd05bc4821399deab4a902d5a67669c54b02578750ae7fbb1d7a586958a38845b67084e0302047c435bb50066306402304501e58dc327ddd297adb27d2ae05052f351492485ea4968ca512d66ba130488034422f3842595467de87b9ed72a17da0230514f947dc77e00861497b285b3730caeb77a47edf21c9e38dea8d4a2394b0ffb37f9be09a85303b538fab7ccee3a75b40302047c435bb500673065023100d575953cd6051ae6e2c135e533b9942e91a264b5e5a01aa5576646946580b7dea0861f383294c65b9fbaea3e44e1b9880230542d4f1fead55a21b8ecbce08c47599a4f573e285f76daa03b09ce32493aebb86f2ffe4d17fa1cf1370f898fd218f9110302047c435bb500673065023100b7e337c0918109bc8a62e1ebf3a4fc202cf9e7ee605b4e61411abb803c3317f5284cb159b4a9a4546c67229644601cae023020eee6b6649bc1c6534d037a7b65a90063dc97477ba9876208c869d13ddf6f69893523084b166147175f8148d9776b8b0302047c435bb500673065023100f7b06bfa891a13d336a6f69822dbf1c23e179c67ce98489f53acfa3881b17b955a6d8face730076e9e0cab2723c58ae9023061d686045a5b2b6590f11bf8881ecac1df2df4458182ed65b5752f18da4f0c8d6b07c0f95558dc8c98c3c8062a1e6a1a0302047c435bb50066306402307b4158c6739dcac9e86954acf451bc14d3847746d45468cc95cf3dfb98875d6c1630aca64130b1c08595473220bd0886023012f718c174635499da8912e62531a0a81b1cfe50c692c915bf9ffb8720b6282b4c79c18a4048357741c051379cdbfc2e0302047c435bb5006630640230040cebed229e4e5412eb18022d8686483478c72608adc12391f3465e2b17ebaad2d724800ad35c87f88a37e0ba28fb500230314dcff8218590fff883e42c3a6e407c394271b605ec38c705c4edf48a629bb27a60f229dacacfb3deca21aa4c3479030302047c435bb500683066023100808b898adb19af3ee03a4540b5abbaaa244bfe3f989a10d531595227454d7a97bf448c2bb91aefafbfaf7f460bd25a35023100ed394584905a5519b960fde805f46087284f80f4b2fea20916ef91a5759ef019f1365becaeabe2cc1f58cbdfb067278b0302047c435bb500673065023100f1ef347a5f778e3510f60d78067cbb121d7dac02a44b12c85ae3ce566a5797504daa3a3c56470fb0483bc1bc9bc86dd502301c77551031104aa69c8d8bea2d42eb659cc95e5ec67e845613137379cdd4dea3c142dedca3b91502e34a79a4d6ef1fe00302047c435bb500673065023100ec116247c0fd2a40a8dba75de4def3bc4cdd5f99ffae6908b552c60a3dfbc4380a440b43fc17eab90e1e72025e65ba0402306e299bf17d7d7fd7ada7b0a5b208f2822a213924ad9964d463815828ceb2d17c06c8d7073ee753cadcc1eeb58fc0ccab0302047c435bb500683066023100cf7febfb58f4203fe2cf8cb96081fb5fb3480aff60cc547436c834bbe408d2b1ff0a5165c06a29b09ce2a2d290bea2b1023100d346825be65bf7c585e6e1abb05cbb5ce253a118bf1478220336c2db1194c6984c00156ed37cdc555eecd892c430ccad0302047c435bb500663064023072bfe42a0705a239f10362b3f67852d33cee76752056a152b7f9a8a9ddb8c445107b0466ef75f8fe43aba006f91c5b48023064d74c9643379da9a5de15e8ebcf3abdaa57c5cbb2a455c069b6f04f5f94165db333a3405b3c33ffdc6701780d905bc00302047c435bb500683066023100da8787fbeb73268c0bb080ec3951a9fe5d59a5b9dfb472a2ea9a7c3bd47fdabdbb712bc782603adb3e855090dcd18195023100a0b9286f4e58e658815bf6bf8bb6f3eb96b9b5c808cf759623afb96cb5caca59230b5362cebcaf0a35157bf70ca9254e0302047c435bb50067306502302de4be32ef029fa988249c276a80486ce77ebda0d2fa34d65ec7389936644f79f59dac9f7ec66231cdbe3728a57104980231008ef5e0333b1a50472625118861fc12247a66dccebd78adc912fad52120665ace5812e7b219d76f3a6a15d70bac06ca7c0302047c435bb500673065023068002a3477bdc857262c3425a2642fc4b09c3732aac86914d49658cde6d8302cdded3d7bd5e52ef25ac21165568e3ccc023100d5cb20c3bb3d3bffca62872b90c1d04c9c751443ac71f8a84af6ef5912c38caefdb4b969b9f7f0599afb386effb1b0500302047c435bb500683066023100f92146a0a3f04961ec5a8222b1358ff1742e78cc662da1aade5a7cbcfbe86ff14a9ef6cd10bebf1edef69bd71a119a3d0231008c26c2fe45b9def25a7da0e6e9b8f75fe8dce739d62145b29180018b6ef4045c52f62cd66ab467847eaf21667cab11870302047c435bb50067306502306df2fc1c78caa3c445eb0a4ffb00ed3ab32970e949f61e329fc372a16e730ef4c3d8a6730b8b23639dd9890a36cf48a5023100eaa1ffba6a2a792d53c72d366fc172d0b9b02a4f5c7458a632044d41ac1d53aaad20ef7476574c6f25277b38b4820dee0302047c435bb500663064023051e9fc72e073d6be4fa6c6d0704a00dead093893d06b91fb7ae925a7c2a2e164a0e7257c80dc68055cf9a8e2a9379379023062c673916c38b565b8c7456650d79867011160ff2e753672b56d7fc50e45e19466a6fd08469f2ca023b51a82f1b72eaf0302047c435bb500663064023054d159faf955b6a81ce5525eeba0037e86d0e591ed9a3fe805e204264ce00cd7f0b916d3cf3e177849383cd111f4326c02306abdf772cb9017c179057c219e8238bc04b7b055590f61387ca9b286319aa6c5ad0261752a362510089bf13d94d66e380302047c435bb5006630640230677924b4675658ca9aba460c270b9dac5f460bc093392ac0541d1a230ffffcd375e913da23d8b849b24f8a45c851219d023027b6ca24177ec3137b2bf2c73af61324351c45c87839226d2431c4d7de249906f1bbabcb7c190ad70f10b453faa782200302047c435bb500673065023010fb2a4c521f8a0e07c797c3eb70eb335ff1e3100c1b72a6e70e0b60fade6dc4aa9d4410c4e87e22b4915caf9facd9b0023100a6f62860b35de29961d4f7013e0657c72dc2a9f4a099f43222b2ba670718f3767bd4737ba6de34885b3572d8ee87e9170302047c435bb50068306602310085349d17af8d9e62e14b1487be0969848984b748e8a616a576689e429f3882b74e21777c3d42ad5f06b100d5a475e07d023100ded71427ae120db20913ff85936d060af8108bbc3afb0b0a12cd20fbb12729312f90d17a9b6b390cd51b7c42a60c39590302047c435bb500673065023100e2b6fa0445f612c406d7945d9ee1dd5cb4c887474b8f654725c70561cc3d6318e9af102dd16a86cedd4826bbe2291afa02300537122228a2f23f54117a9190442e3b06adb8c149d299056363132ec0fe2ea6a41aab087c5774a850bd063c7af50fd70302047c435bb50068306602310099dc9dd4d049c807a6c57937000c4498f07a9f5f8422774023700ee4bacddb4313ced4340acb12e206dba9e507f2668f023100c88eb7c12221de0ee9be25a2607a823882288dfe629c0f96a43dfb45d973def2a2450e84532951fc481fc28ab00466a20302047c435bb500673065023068716a20fed77dcb6d846b93cb8b6e2be26c4405db59bd4246a385cd12746d4005cf56afe0374c2955b9f87ffc528a96023100aa6b8c92ab288e8a2e3c99d78800e9d1dcdeec160bbf06214757cef05ed35e70b75643540784d404f46f847882611cd10302047c435bb50067306502302905ed4f43f51dd1a4af1d31af3931609bd67d71c674748d1fe8843623546ab5231236739cd5e12abb155702d3f04aa5023100ca95e14922e112aecada32a7e5e170c25ff57c822be73455fafe9ece795e7aaa6fe3ef6db8129b982733cb31183bb41c0302047c435bb50066306402306b7eef0c2c2653d19c8a059895984b2c485736feda609690b8606d39dc66cedccc5d87d0093c7d55a28d10643f85b87a02304a8c17217ea2324cb9989c1f76eb8d0e0d24d1b221262a4fd16a6f757c18939256596fb93cf8d7f723f9593028fbff140302047c435bb500673065023100ed03aaf95226568ee9a9f248c55b7fcda128e8eb0b826aa0306b6f2ca6c52623d9c7c5ffe5ca4912e74bc39f888ac0a102302c5145d7b955a0351e3255e0881c77208803a879afcbef46da2bca36568309bf04330b605301039436c252d6922611800302047c435bb5006830660231009d5989e0d96c93d9847bea7391157c3ee3f453ac7c88faebda58ea043a014b806159862e0f9e38a002f547e93487faed023100d4589a9f78194f30b85278701f2ef19b02e132c6433750140e9f2e59ce0dcf4089e31608bb5209353cf81221ff1c79f40302047c435bb50067306502307e3f605ecfb632aeb7b5b6fc8e7cfb8bebba92a1dfb7df0181e34dca5c0c16dd3de57a87383810e8b2fc509f4e65d9bb023100e66e0a3426db278ab7d73e779de69effddf0d4c4d717bdcb159ed30a132c2bb400bb09a0cd32d3dccd24628817ef90bd0302047c435bb50066306402305b74ea534b491cd4097e0f1b6e353168f66c3b2b54f6aec1fd876683c13ac6edc7a38003b9815e6d8b39e57d585764f802304471b36479e347f17c6ce98acf4c5bd1dbb0aee0600a21bc706179de246739abcdfccbf604d788f2e26328b753f298050302047c435bb500673065023100a98abc02aaeada6d539070e3cddd0b7cd72ffbb31f2d01c4119b23f0d7d94cb968154fed69d74539bdc77cb4d38d49bb02305258ae37025e96bf2d195b53ef171d72aef56487018820e386e02fd25e2c91d4182878263c2bac4525fb434ee50e8f190302047c435bb5006830660231009753cfd1d0188ea90810c0351524f60bee3551b8744c34894132438065b42b417a0c181f97b68f8847137f8172faa159023100f1cebce6b26cc50f2c0c1f9fa8a3eb56a84aa0c1f1ae4fd0e220d2d95d34159d2f278a556fb417ed2068acf06e551d860302047c435bb50068306602310086be2734a18c6ef50670c8e830ce0087c4838c6eff84ef12ed9a8355041595bdf1624031868d4b4cabf6ca95e4d1e741023100f592293691b631a45dc9b2f197199cccca5eda4eca58b0fd589f97099ab55ee84c0e45754f7689727f8ff0454d58292f0302047c435bb50067306502304f95e5b9ca30a38d45c7862999f935450bbf798229326e3ddf2429152e48c73436ade47465b67c8cb3a558a6498a26c3023100f4f3569869167fba653779005e2312e65cded53b489d9e157a17880725c99a2940f435a81f5194dc0ec5a2de334d91690302047c435bb50066306402305f8a846af96f6a069a4fc1fecc377e0dc3311176717fa58ebd2018e1fe38faa089890db7c177d104c5263904d1ae277c02301f3b84798ab92c1337ab90c0b98bf02f8906ee754343dfb61badc40ad93d52d4eb4cc7185885c67ffb1ecac0b75adf430302047c435bb50066306402305627c7bd8358f689fa08d9b6b05ed5c6742953101292a1792e3bd4e0ea08540ad4c49b5fcddb0f937c95a4385aec6fa802301d0119cd2d9bce2c8bbcdbed6a7ce87b566060b969c8b0e77b8d4efbde5ebf1120d963168cfc8273c57024ccb0e88b460302047c435bb50066306402301203afbd78ebe7355937654e47b5a0e40376075d121a2cb27ba8eda121e75da6768fb811825f936380b8b49a26227f9a02303a05ec427afe148045987b98e5ecc91cb4bb30e0a255b1bee4d027b229633b4e9da0f2e74294584d21c0b881c773b5620302047c435bb500673065023100d32d36491781bcdb037d44e352ee0460f45de992a687504e70f894785ca7181533894666420e9a8b9190671bc07db9c2023034bcea5255a6b65a13e466d9f3bb1f5336b77d1408b5c6116ae8a7ec587328799cbbe4d684cd4aad1cb17ab5c5f5537c0302047c435bb50066306402306a1e82725a2381a3eead682152a4528ea291e1ce9708383a69133ee259f819716029f96b5af2ff094bfd491eac15126a02306e8ff1f851251b6a028f4e8c4ac23bb655aaf0bd3a777fceee91586156664a48cb93424abc32231ee3f171c05f83f59d0302047c435bb5006730650230312536de9f6344cec6d1a575b5ff84ab9bfe1f5c0f3950dd12290ae330bae9021f199983dfbdfe00edac23dbd382c3d0023100ad3310d0d6617104aa10e4f6c081a26174da7298b2774d12aba9e175dfd9aeb62a14a502a39ccf93859d56c37e8546f80302047c435bb50066306402306ce7560a0e67edd52d62a0a32b7883eea7ec77ce9f5faa590e2a9772b977ff30fabb15ae9b3c6f9b3d4fc1911a1f871602301099a5809fa3a8b80057876c5ecb6116159c3833c7a584d857611ec87df867e57a1a58254599a778e4382ce6144d618c0302047c435bb500673065023028418209a2d1dfdef86d21415998aaefeb45f51ae2d03169fa91e9837b79c9ea51a6d24dbcb2620b82d2dda25172347b023100b0afdd7a7291fd718d4139f57dafb60c2add9d3ab4497235dd488312b024e5e54126af72cde0a9540885b5d33840a13e0302047c435bb500673065023075dc848b1bb41dcf34f1642860321edf34f776c9d53f57752c001a5f52bae6a4dce631e5559c1715d00db503bde7699e023100c145b96f5eef4f18af77f3fa58a800fe0e8535c3bfe97414267d721df674d3982f32f05b15f9c92beac7c9675d26d38f0302047c435bb50067306502301d026b2478dd01f6f9c27345f8c8b76e2d08b68428288d594f9709bd5c90d4bb1aec8206c62d4c69fdde63014757f324023100e935701a7ae88a6e04f04d269bef25031812ecc4d624c57dc19228b3f054e47a89c1a4e69a6921fa6397516d71c20c8c0302047c435bb500673065023100ec011302fc646b98fdc7ef6ea0125a3bbe609aab25c7f85b93ab9a2f4a00af986aadb4576a1052b77ee41997adc0fea102303ee67b12e7316c1100c2042dd3a2bb04d5b8782aa8426d9716133bd2556ddb7c3f500a46f5e8fdfbc26e1a213d7e3b720302047c435bb500673065023100a8e6ad7ca36996d9db7697090348ddee0ac01d30ecca299cb6088304952d627640c6e90b5e0b596c6ef40991251021410230760bcbedf283f4df13ae62eedeec745b079aa2ef8a98977053f4000239cf071b4ac1235442859d0703381c655c5c90bd0302047c435bb500683066023100f57f7daef2e00e5643e675f506c2a1cb4ba9d956dc07f7225773206e39719c332df67007b5476f72eb348b2d876d0c51023100b985d8ade06ffbb34bea285337f71509f718e5797d3a1f37e703fbb01f79c5dfa0103777d95959112dce8b198bf2007e0302047c435bb500673065023100e5c53dbf8e6f4575176daa6bccba581cd91d932e88026fd3588098e46fe95f11df8562b34767e70640a0ff7353610f9f02301a577228560df04dddc1fef1db0b8e5420cb5df48d149d1b7275e307e9a67bbb14c3cb74f067ea0f00d2e09fa72a1bc00302047c435bb500683066023100d616dd7d9c4e45351792d4e8dab7bf6dbc5f52c5c9f44f683b54be4f8023bdf473a30801debb55103cc9fcdea12f3f1b023100b4dd4acef82e6d4615caae0601dc71ed86fad8c96a063bc47260e2b44e19f6a69d08c7cff283940c5f50c0f7d925ce0f0302047c435bb500683066023100f51ec48a0ce13d45e75bd09fd6cc6b2849acc72675fe43d8fcce5f7977d33285a627253bf731079aad307b597b3ab5e1023100e548bb8e48f8d17cf111db1b6b6c15c72e671bed7c511c5951b308a2f91527cd930dec5ee7d27a9c070ba5735bdedddd0302047c435bb500673065023005690419de0996fc8dfe38badf80a928565e118d4f845a88f7898349709e3d70ed92cbea588ff25a3bff8a839568b35702310081912da85bb0e4a10fb35a351459332cbffd9b3c4709cb9e0954675d325d04a2d788732e92f776bcdc601b50cf101dd30302047c435bb500683066023100be3b35047d996762ee4ed2fb2d0e34cdd2cb78eb8b591abc4136cec8808eda324985bff214d02f1391707825a06d23260231009f886cfbabf4a1e3665f1a0267fe6fb0b2e6b8e1046ca3a27e48cb88c11b521b5f12e13a68dce673ee3d0553cbae42620302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d4fac31b09ae23598b53d6db26164ee60cba987e073360974d3c2f032f36e03bdfa26e367581cd37092f55666dfc6dd0023100c710d1ef29a92cad60fd79c0d9c6d842b152c13b62742daf8e0e94b3401619e32fecae7b00fa591a359d400b675ddcc60302047c435bb50067306502304bc035473cc58cf6990c865211e4b38f62e268358e90cca905ab12cbffe65bb61472bf91d03532c29474baabbef4fc7f023100f6e04901beaa4ae09e96945bcd810a54a7ea2c804be355456eeec7d4923a77b47e5d7fba5ad3d103c00d1bce806fcd4d0302047c435bb50066306402303208687c3cad56798c7a1c9ff6a74492727db2d4a000b70dd1b86542cfd84f6b685e80113e8c21ed7a3b5ce01a016e34023034585e658f550ff77800aa568d5565a3953c7e984379af96dfca5c5d35c9a6454c0cba24576d899d3d533b010b2216b00302047c435bb5006730650231009ce9db4bc37d8346eb883145c37e846414972af394481fe3eca36cde5e53576034128937fd76dca780298d3bba25f18002303d298c455e920c378af457903a1f685e67c6e3f611ae3c6cf959b38f4e4502cbf29ce7749575fdf84e8fd7634b8a9c930302047c435bb500673065023100dcca27733f4fadecbd04d406a2c6232c53e766a96e2f5649d3d98d38d42c357a59acdf4ca14dc6de095b2fd3e3399ea502300ff23ef02aaa99c58c55229840d0cad2373fd71ad57e5c7fcd2ab6a89044dcf557da25c5ce81162b73fef4e4e956a1540302047c435bb5006730650230209207059cf3301ef4338cef507dcc311dac54ae5d8abd2ac65241362b948cd0561714d36878bf60aad1bf010f128bab023100e8cee8d13e8b8c5d22de71dde971425e5da6b622cb534a5f425d738260f06152a84ebbe3cde44ac517b76368fa479fc00302047c435bb50066306402304c33081ef0501f530be4b92ef47b15db42c8be4327b4b4f528f84d1a9e7484e30cee431dba080f6edb618f3c6552b5a1023055a13e2fe0d9a3f388457d070db380bb68ac5b554beeda672af3d858e8ee74a3021c258022eb2fd07ec2b8cea54462600302047c435bb5006730650230193d723acf82acd0cbf2148dde8fd01cfb9d69512b159bc6a52b0256cdd7ec3e22b161e406f11ed99f93eb6046f215660231009a709c36730f25f6b6d97b2efc4f8db4198e0479d4b248924b0870b5613aef091b274addd016fde331e643093ebd75be0302047c435bb5006830660231008ab8bc8fb883f6618213679d8d2f729aa98895d15f60e9d3425055b6f4f925315379fc94343c7e8ec7493303a74718c8023100daf112523c52df873e6e30553a67ad1a3e99c3930b765018026dc0aa93d5664a74d0a69bedc5a825894f4ac92a73e0b20302047c435bb5006830660231008d69e46acce31b33f3012beb54744659532b15703f18183318e0519963d2604399e4c300b2df90d0ea8be7be67d87c8e023100df9498cfd9323ba7974fabb9e4a32febb388d80b4644e245eaa875560ebc62740d080b480c15cb90c5d7ccd93b9af2010302047c435bb500663064023041f5e62ab34ee047708c8d575cfc873d8144af94e33908e550d45895798633b853643ac848395904f52c7f82fdd0a690023051743eaf394a96813d34ce1fd150f49630e2f12341d54c1f8f4286a366dbd6da11f6de7f31dc3bfc0913afaae9a7ac8c0302047c435bb500683066023100a24027a9dd8c073cb652fe8867a29ac48dcafde4a680d131d4ec9b17ecc3a718c165b23d6f0242bc26ed8405c3a20ed0023100cea54f0a5b76022d1fc9c73f4ffabbaec9706114cbf575eedb5630ad4642ee0175eebd9dfcd42faa09710a4a7aeb9fb40302047c435bb50067306502301bd98fa695b44b77c388130c4481a597b5125ba74faf12eecc9431d77360d8f13ca4343c4bbe64660c2528363202b205023100d2158f46af04f1c46b450c96c92ca2cf5cf2f6730e1ad2f201e7cd2a0b9791514c33db3f9fb6c1d701bd851ff4e91bc00302047c435bb500683066023100d2625f9c2f6684db4e71cfef5b31889faef030f556cd93bd7cc514106350bc2e2ebcdc99807739ab849bfa66a284551b023100d3ce55357b19e18b9e0b5b653eb664a982848a53abe54b185531139f28236d1e1cd085e4f28d11e0a9fd054bec4e28ee0302047c435bb500673065023020019041add4648b35a3bea35708d4b09710e3e032537c5981bb5a5c8c5888272db0fd0b3b151199d8894202e4f1e7330231008e82edb3af71a9716719008be8b569c9e30d71d60dbc54bb04b98f79c67f1cd837bd0c8e9b3bb4bbb25e00a9312ff9f50302047c435bb500673065023100b301150158e70056c08e095b5c003c16bf19285fc3f4d51b0aaaa2122dfc3ebadd36fa65d30a8684380fe72d4a976d6902304daa8c8eac8bc66e4f1f6c891d34b96fa278fc97ac7cba8f0105d66cfeba46ce7b41287bc6b2f021df47bd1f3732b1bf0302047c435bb50066306402307b490d4f2261dbaef1adf6bba955dc12d4bc016a0dc5efa09c3a4c2b9dde3b29731d7f9437b647317f6f763d6523354d023057b86a1f4bdbd6a8fed5bed3bc5a30fba43d9610d2718b7e886e3f3cf4c684a5f26ff46b9636aaa3ef0dc25828f63bd50302047c435bb500663064023054f91105e703a30aed95a405338c20ae4c543ae8c3ebe749a481e9da950dd8b38b4c549aee9771510059ab5b5bec190102303ec25f29133b3218e4b901f6dbee28b6105a19da2ff5136a5f1ff2e17101c03ec8ea85eaa6d52d7ece468ef0bd8f93b10302047c435bb500673065023100c8667483c88fc37518709b6beef878822c2e545f81f0e066a01b804a72af1076eaeaf34760b9c96fb5fe15100f0c7d5d02303eb746844b6b121e049b0c5ab364d2e03308f82a0e81eb827fb509e5bb8b5db2f0466fe8b242e5d39be9b5690268e61d0302047c435bb50066306402307cf0fb5d67be7daabc9965d079cacd0ebdecd0c6184eb358a5e2244033b6467bc9e08b35e02c9d9d0c5ab0f877386257023015986e7e98a4ed9ea14a81d227af6a9cd5dd85c9c19a1fefff0428eefb41bbf05e93b0c8a9d4a8b0e39aa30f64ea72790302047c435bb50067306502303fbc40a90ccbae60c2d686d15c81629c89c4d7b2b295ded142f1f92dda7b869853742f245163d520a8dfc1249d938dfc023100c0afb35156fe3c8b391e85e867f6dbafbb024b540c24ef03badb7d3c00d8d17a627594794bd5906d85a549fe6b714ad70302047c435bb500673065023011d4f588d44ab3f2f652132a75e8da64f393d8afda202490f2bfe6d32fae686b26e3fc35198830a0dd0ed878fdc19dfe023100b9d2685ca13ffdfa35d153205542729265f84238061ca1e426ba46f12c025360f1875bbb97db4f30519f09fb8034b0f00302047c435bb500673065023100e0bb49661cc569b1a7773cc74b6a2cee9629fa14fd45f249e2ac102b13c5cc7077f59015db7d0fe09eee03e6271710bf02303d87a89351f90f4a2e27c30477cd6874790b80caf4ace8c7d6b4546fe34c291053bcafc64fb01ad3d8d14fec30e3a07a0302047c435bb50066306402306b67c726b2d681f066d8df52e596239f17fe9d0a092a4d64e8c9cd61ac3a7b43c3e301ded1d1785bd6ffc20e551d991902303df44890361e236745e76eadc8b646254c606b8d830de46ca5edc85344f71c267724c8b71c65270a80fb944e3491bd7d0302047c435bb500673065023100efdcaaed4fc509fadfe94970ab70f329fa026c758d1aff429046f3810cc242a2ab225029ae7ae78e0ed5d36e854bdf8c02304bfe8a6eba561c4a1efbae11bdd9f73a9de041a8074c3e78fda693c8fa53c95c86a3aa630710609b11de4ebd838758ab0302047c435bb50066306402305cd005919e3d66474480b70a4a03768a58df45ab9b213aea152f57e91dbf44f8015209f52adfcfd56c336819d4eae7fa023069764894f982faddabf8ba53d3dc6066069f3b4f0d600254e9fc1c3a77f298c921ece9c068f6ba84fd8243ad5dc3c1310302047c435bb500663064023062b7801443525a6109a2cfaba173b6644bf0af0d5da68df68e5ff1fd243d76f08a9b146c5ffd8bb3584288babef24e69023015894e89081ea75cf9ee37ad620e1c86af2188722d71bdde5034df76408dc9ad3c49e8e09c9f8839a16acec45d5e5f590302047c435bb5006830660231008d14a76502c854fca8e15402a485c33a41bedce504a0f161e8028c6aa7dde40f67a246283c9e35a4337c6334e09b5bc1023100e874265eea262a093ee684c452ca645ecf4551908c1b4b7409c78902e7f905049c25aa7dc37d60ab0cda3b739557ea780302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023012b8f085905987ef3c934efce1a22a4e56043ccbe23e3146f4487e4667d79aaa8b25386c48bd078e4596c99178a25b6b023069ef96a0c60d55f92bb796021e7dc0245862de8937edc148e64ffaa9382081b6bde9998915b08748f57c71fed2b5663a0302047c435bb500673065023100c8269c16da27ba73358b3496f3bc98dfec0439b53e1ffd984e2b0c0f025873849450c3cb8a1b1e4b111d43585f9f54be02304b803db3b98a0699288c7b33b987670d82246174f28be0cdd3bdf3198cd4a82e0364191c09974fbcfa901c6241ddddf20302047c435bb500683066023100f254452e721cea20cb3ce679d7b3fb021639c9b05e21a27ec4cd72259a500dbb6f45c6e498e5a82496899320332dcab0023100e47795ca39bd0513539b33b474b08b268dd552bef7ed77f0a94ac7e4dbff5e1ac1c6e0c4667b79eed35ddfa44259be7a0302047c435bb500683066023100ac4932d8f5ea78a56900d08924b3fc7efc7b6d10f168c510f4e09965677f727cd46fcf785ee9a84078f34ccdc7d9e7ef023100a0bc9adcb690adbecf12f7288d871e5bebef5b755a8bd87ddeca5cec9c346480a5f3c12f853697732b97a770d5445f070302047c435bb50066306402303e5b8322849ed97b74097bbaf98be9744c692aae5a55890af95d52331e816fd56086dbebb11bf0791cf4f854066c43a702307b82d701ac3548b28af86a516f9e77ccee3772af5b6ab1513531d87179489f8110a268e7995cbad45b5a29ba80ad90340302047c435bb5006730650231009fa648d6200bfc2970b0fae9fcb383309dfa0db17d0fd6ed3dbb6dd4e81e84fc8a509ba6536d5e49ac3cab13c7fd329a0230329649954601354fe2078efc9de0376313d02399cbff51d1be9ab33e77875c7bebf13a9d355a5ed5107f73c2811ac2560302047c435bb500683066023100fde53e895ced76447c28939e52cc3c331d2662566a020f28e0a3fddc030d8552e9bbfdd5347073f3c722b6c0172905e1023100939c700f4257d37056e2a764eec80f2a1eaa0a3c39729148456dbe7590987150d427f1639fee95e2632c7b3d25c3e2ae0302047c435bb50067306502310092a6f23c88f0a685b4c152e72ff15e956df175d9950c8225056f42f89f563f6ae2e9341d08be5d711446af1d18b0163a02302694cb1b1e28ad6770b08ecbe373e6eaa0a65e388706d7c087beb98c4e99ce69cea4cb7b610dfdcc813cec5b18e450890302047c435bb500673065023100dde27b8dc47c92e7f35d468cd3fecd14d1b752af7f5be99f5b569480304effea1eb347125ff39f3c336dcd0edb931522023042d7cfb08b9267170bb5274a4605f4c8da87e1db95c66749200f34eb0d79feee1e35f8ff6c02b7049f37a6f2efe4be540302047c435bb500673065023100eeea46468154f22801068778f2031508ff471a8a8348b3dd905490bb6815d3af101631be2dfd0e4d9d45deb6ecf127fb023018721973cedb9ce0c7b95aefe7c6db9e8a83db9e03ba13067878b1e7724af021c2d721e82c395f8dd206d31d81b471410302047c435bb500683066023100cbbbc046ca749f9623face4f6968cd681ec821dbee0b2f5e7ab6ea5c8bee7852844826079f199780a1c4a48c5075b80802310094b2ac189fa7a8b22c5980054fe21ef04e64367cbaa63c6419660ee9e488e54a3b84212d8b301da090da01dfd720df100302047c435bb5006730650230125df76983ce1c8512afdd0cf8331273a8c0643c2a91072a093a89f7133382a49615619ce804c857afc15bc4ad3c027a023100b73bbbeb1d84c4e510522f3409732b4285bca489afa2a52a160ab1f6deda4acf59fc39537ab90613ca5d2ea4450b45610302047c435bb500673065023100f58a321914bd3ba12bb5b64e103ab18319846695cc23fc99d67b6a05156efdf0db0b3d9328142bf10b23872799c5d1da0230320729e4432e29069e5823d250561f730f668b3f943e9da39d1a03337d000ce0d7e23bfe91d0a5b27ad5da8f14d84b580302047c435bb500673065023100a424232290ef75ba56b7af77103eaa4a413fc4f5d8dcbfca927a6b24b517ef811ca95ff68693c62bf907753013cf01b9023020c2c8fd657b845d6fa1998115dc0c683a9d6c9dffc0558343eb9c9c4730dd14b0e7777414eb78f8b2e7b075fc74ccbc0302047c435bb500663064023051d1854d0ff9957585cb841e2226b414b7d2960fc582260a2b4e4b155ab0aa55c479a6254b97ba7c58aec12683689f3e02302302c41e92c09fced51722be918e52dbc45591abd43b36ee82b212298862a9a1cfaa6c72ef8f453277ea3ee9fe9927ee0302047c435bb500683066023100a1d2997651e19a00b207722dd1284b037c11f3bd1b4ca8996f13e00d6dfd0665af9deb66983ebf34f73199a93b907624023100ed90e20cabc7c41ec864585d332130f324b88e117b600c042bb10c7bc9393634dd8ae20de0548d0293d463c3a30ebf6d0302047c435bb500683066023100bc16a6a859319dc9e259f5fea3b26855a979f637f1f1a203203eac5ccb707e8fc5af9a768e8075faf7c9f1cc245d65680231008fabaf22fa63f45290e1329fc99d6e39c6f631cdc68751f5afcac8fe2f97b8bae5e9fa5f4f343f8d33be1e41e9e387f60302047c435bb50066306402303db9dcfd4ba60383c8cd9b934000c23833b859c6d554ac2cf11c9c27460ba1895954ddc2fb3d4c8f693c303a2c1071a302306564d64ef3001c00e4edb7324a54b640dca8c2ac6b9931fa136c4d4b1c37a5cdd3fd39df26be6ce8f147ac8619f4a7880302047c435bb50067306502304dafe452e888d80b70d2e63e2c156556789b8f325b33aab1380f786f58379fb81f435d932387a34390a16a0bfe0ed653023100c5b2e45d246be53d2db82b2e562faa7dbd9596f00cb4cad00709dd178e76130b4e3adf2064e18f64d3ee94097841248a0302047c435bb500673065023100b210c37a0cc28fc39c5cf1c973cdb61720c5871d6cebcb61e264be65c423b97413b622eec2e86886d0b0b8f5a96321a402305a5f839c751eec41a2ed45461fa0a764b8b832f67e827025a6d870d1569d0198ef4ca59d05b5701b3ffea263a5663eab0302047c435bb500683066023100ceceae98c7528768d8f40e22f44b909fb67ca4142a9f2bd340615b355fc8410a175d9544ee4bd503d5c9d4196263de7a023100ab021b06b353d2e894973131868d050d03cf8556cbcaf557f70eab064a79b6843d4d4ecfe112f31a605c0f78e0b992900302047c435bb50066306402302aadaa97c2955cefa18f281cf477df2bc77ae5804012d96c82a63084d9c1eb860dd009c39f6895d75f646a903532592b023024332c982a2c2760c636ceb419691142d16c5dccbb8140bb976d2d90042b8a4209081e8433919e99263260808f30e59c0302047c435bb500673065023100904185da7adb7384d450f9f047be0262c26859235ee83060471f020b09649895b2a54acfc7044786e201221868c4c31f02306290e9f334d6aa4f3fd04c81664f84707124c05d5909812ba6ff7d16298fb839b3691b01275284c8cfdfb3626de32a830302047c435bb500663064023005031d4b4cfcf9fcd8257d3dc405e3894bb6bbfe907892627696390605a7f6d550509b13b175533a2fc897bf669f0c6702301a44df9b17b23fbde55b933719842acf9a1f63fc4ef26d8cbb2303686bf64647524c9f3f09b799a12307913ae310126c0302047c435bb500673065023069a4c4fa2fea24643b27668fa99791c9be352094a920c0ec6c16fd3aed0bb571d0e59cfefb94dbcd27c1e032adc756fe023100828008c7e0545f52cb7325386d15266d4bdd5684fd477ebc99ab19f42fc3ec819ef119061f8ec99437d7f0281f5dcfd00302047c435bb50067306502300cb7ada6d79fc3b861dcee25d46b0d935769eaa66068a34058fee9ee2992ed8b2e0babb1b66c4f55831b988e5bbcac3e023100f4df0ebedd482de01bfcd6fa58b0865b7bb0af2897fdb1f10481aef2dd4b2a2c6de2ca112fbef08a63230afb112fc47a0302047c435bb50068306602310089b7026f7a8884dbed5e502045e6ca3bfa1fa765a739faf903d3049240ccd674bff5ac2add0c135ef45ba995b72fa385023100975046263d8468eed9515917ca63462acb25a2a41074e8cc978b58b3be0d5896b57a1aca857d58197f1b1f05053318a50302047c435bb500683066023100b875078f6c81dffa8d88fd7eb7c2f0a32cfec72b3726e6574d652797f6cb3d35a8b5a006cd3ce9bd2061a7e57f299008023100c2b92a2f3186ad6270528ab4d6971189b7f9d3411d1e8499dbc92d50e9d78b64f1b994c70c303ec931a110154ab27fe80302047c435bb500673065023100afd9c5015942cdba1896136ef3526f14deb3582118604777344168093555c90ba7326e7cdc19a17376215b5013f8d434023046bb325fb31d052bea833ba929145fd1316a5d26a432d12d4216d78c0779dfd49a66c0aa1793ed5db2b6781048bb88b10302047c435bb50066306402301f5ae7b608e41a9510214cc7583784920394477dfe49af73c15ccbadfc1db8734c270ad55ab6952bffc90fb5887247bf02306210cd1bfd6e9d115d05e2fd70e6f864ff332ab8e07255c597487d612241fdc36578dd2bf7763010b4ff7430c526c10e0302047c435bb5006730650230485c93f9b77e63af0513e14daa45dad52a00f0ff728ebbb5e2a5f9c00d57364c16221c2054783794330619dd893714ae0231008a43448b2bed84c0ad8f87a833c9a66e80fc9dfec75194d87990a969816e7205937cec584845d0a82e144077ce3f60cc0302047c435bb500673065023100b76bb0ca4e236816c218da331823d87453fa0c6e53ecc25cc28e2ea7fb719057b4a5990a475a37724576ce7358034d00023058a61414601956669827992e3808ed029461700a2f6759d1d12a4ab57d2f05eb409996a555c94bb1381bf266c2cfb8e90302047c435bb500673065023100fa576c3393d05fe6eefc4330dcca27470e299f4ae2366fb49ddba6b2aa49838f2181b536f4ad09e8b158bdefdca1ffd802306d502c5964afa40d67145b3a2f94221916b2524c001f36bf39611c179185c5f46b7880622a825ca57951485e1b9369080302047c435bb500673065023100cfffc44c2d28668fac4a2052f5c84cc1b37c82cdf3673f9c72e354089d19dbd66578e2ff8b127301c3dcb7f5ba3ca2c202303e4ab486abaa4400b6ad8512d1f756cdff4a414d2b9009480cc875a0b9446067805415e20ee1df55dbf7ee58e4686ada0302047c435bb500673065023100fc6a11bb0fdfb038221aebe0cd994d1287b32de6bd8ea59b7f5ed593ea350c93c815c128abcfcae90d3904471779e0ae02307af8a9660138584137edcfb030622d99130b265d0dcc20fa4ce87ab8dc1345abc0b192dead960b1abe3786d71db5d1680302047c435bb500683066023100db0664a70fc2d01c3d2b6e008d8ea837ccb465e2268c7166fa21805377e8847863425268f0801a98833e7016dcb74f63023100a032de503159974d5a0cfb50a79769fcd675ce8e1862ce7cf88d4573648e2662ba7710efe6bca6d2e4d49a17c62b3f300302047c435bb50066306402307feb878ffd5fda655fb23039de54c041253df4b1f7f5cd15bc08feea1a6784ae4d8c88631c8bf70de43dbe1b20d787fa023016a3b22cd4a5a9e39dddc2a5b8baa54a8c3afa42f01e03f943e36c96b4ede2b06d5011b31e46192093111e052ade91b00302047c435bb50067306502307a0f285be59e53fd37f0a752f4148bf6353b22b9681b2f32f147d06dd240fa0c7446716aa7d9ca921258902769dd6f52023100edacfb9fb2404a327ead3e845a9ebbafbc2a657e170cb7f5006c2623f2b6a68441c736e5991abadf243500c770687d230302047c435bb500683066023100aeea6a4f9f9b7f64b0a4ab5de8b0f16a86aae3777586d5267863c8ccae4d6c06e2c8fff0128812e861da639b14f7c37a023100e831fe7d94309663765dd03b58305d63f72f7d7dcf86245a87155600320a159eeffb55543cb13eb45c002d45f1acac0d0302047c435bb500673065023100ba3f9d16d69075f55791b3533113ab0817188af6cdaf0ec49cec162239ee2d51a0d49717d8d4b394bbaec5f95bb56c7402306cda5203ca987e9e37752f7065ff93d4d1bcc274ad58319b173b801b217f4af289fdac4890d9aba3004eed2a60630b750302047c435bb500663064023018be788834ed594f9a2a3b82aae61f68516fb66e68a1a894b49a8e3ca509f1708f6bbe5cfaee53f1833c0fcad79ee1a702303ebf1c6408438004db07b754cc6457abf1ec3ccbd91e1d8857b90435f35262e8fb36c3ac6c98e5003ef18931e29313d90302047c435bb500663064023053e6d17b66f3866de1893674b4d7e782155691b48b4d00b2f0fa4d8e26dcb248bb883a4948c2471408a28fd184a436e202306137e269ec94195319b047fa880613fb16f85da48e6c98eff215ad82514c95c220070528f28dd550d66429a1862801c00302047c435bb500673065023100aba37edcd4d63f27320b4707d3db14307ac0cc00b8a53239ca4b41c48945dd6d6b4f02c7eb9ffb2205045ffa33a1e2db02306c33c0210053d45f92ffa7a0e3b54f5350f5c504b53f8a7608e5248eac38407bb42aa5403cd79bf491c6238ec64874120302047c435bb500683066023100c781cffeb30409147b8e6068c4435a2f63d7d3942a61a9937afb09d32fdb5da126aedbdd345f5f1c5b6db76208e564d9023100ac054e0b0e7d010a9b20d96b255da605217a12f6b9714b8b164597469ed6f386436a92cb9a31ce1e019d0eb8d2922dae0302047c435bb5006630640230347ecbe9bb9c7b4e6f0c77dc24d304c44f645db1273ebe00d25e96fbf0fc2ead88193d272482be7ea0a85f54ddae6da702301a3a5b8738ec65aaa9a89e557fe43b2011881ab81dd49715c9ceec3a81d2d0530a6386ac8e633080c8557c22aa4dfbe20302047c435bb50066306402307bd10acf05978e15778e7967a77b77ba26098b860d208fd7e81e74bde07d4adeffe24c37d487cb99a9940af000950da002302aefd6db9290ca5a7d919210446a9e349e226e432819ede3a1060d9667211c026847456925d2ce8394ad8e18764ced700302047c435bb500673065023100bdf24807390f681c3e0ea1322ab751c1637125ebab8b9cbe8a5f40932a3e25c7d0e96de21da6b459f58fd39aa4f65c7802303bfd9372e97e1b80b1061c7b91b495d54ae5de994acd865d4af4d198c657b535a86ca481f0eedb9804b3e90289f3b45d0302047c435bb500683066023100a22cc61a4739d6a50a5f6bb9d166c081d89e9a9c24b27265dbc44136db73cada4588f8e9c669c73ce398950107b155830231009faa15d4ce5f464c73253ae41f832a6ead389f7c3808c431e07a16865e7e4f2532fab843da711b55b2af0247dd5d42cf0302047c435bb500663064023008d592c0f3efde90c7437982aeadd2c30c3fb5b91eacf42cb3ed255e070cfc3690256b5a564d7d268eb819e2e9509d7c02302c90a5eeca5a94b9fa37254f973920ce65efa4407220992fe0bb4dd46d632a729129d995c984423a6e99153558a856d50302047c435bb500663064023015e3e2e1762eda07b1f882ee074469308b3cbee5b9aea7779629be3ddac4444f372f551c15c6596cbb296ba1d2b648cc023062578bccf904266da23928de210a381f7cf289cef2e4c742cc7450d1809605cc24b6e8f3010c59c4c9546e59445e0a2c0302047c435bb50067306502305eea4ff601bd972e50d67ed11f7e752ddda927dbbf1b15d49354dc8ef9baa52dfc90460304f6bc678e6a421326f9e616023100d6f3732a566ff8832d51ce5eb8572329140fd40849108485293d41a22061bd4498c33911de07fb0ad6e066380024ae700302047c435bb500683066023100efe9377edf792db81badc23888e9dbdf50e5345882777ec1f06c21ce64b541ac913723e62ff89715dc67e82c478fd96e02310087cff27ce002590bbb90c11c66d798c1049a26d2c2a961ca3d3bd4518ca8f0c9d6ca4be4b0a94c225b5d6ed38cb30b680302047c435bb5006630640230456f2f4de2b46d1682ee412d87381731363e70ec668cff21039386119822489c8170867033910d8fd050f9c267eb03cb0230660c86d94e829269124b174cd1555733016d215cccce9e4506c366d61ff387a8ec6d5ef825ec443a352ca61c2d9063ef0302047c435bb50067306502300d3ae8b66124ea69c08ce8205028770d6c5d4e49fb5edc2a6d6e42c211b55e01cf32aa14bfcdaf73f83f986207faaa89023100e38728595f294264cc605d4f7a8656d334329c9431586c4c25ab7f339ac20869e5407a4587e261cfa470ddc99a334cb10302047c435bb5006730650231009abaf70f3b62ec84ee48168f893eb1611a57dfae3bf89f9c627d320e2159ab1a9a3ad10cba9cc903e3f632367b7edab702304519d5565bdf7f6ac34a0b5ae3402b6a5657385f76872da173cf5c8c0b8d02a385c31920b82540886ed2eafd90f57b4f0302047c435bb500673065023040fc1100e770a9b3845b1e158f7b5e9b7cc883c8c498d2f4698d46d4b83889e9b0b9b536f9e764046851413be7a954da023100992c00f03a7b60bac38c5e5e5913452fab1cf5c7f9dd5a4adf52fcbd75215009ebdf67b1c7a7377a585d8e515a14ca6e0302047c435bb50066306402306e9f7d1884562d0d6669b77899a2957b79ae56d51487f38755356eb25e8024e6d753906006fe8785c4003ce1853f2a310230530571fc9fc02d5f133cd3f35c9fb94fd2bdf232bcd1c23ba587a36d28c645d9f7f876390b8d0f4ac32de04ca3d528fb0302047c435bb500673065023100f323e0c2f3db3b1e2826d58466040a53e271be312da6b20de0537a5c48deeacf69bb178a8cc678147d9ce5e98f307587023011f7c78f0db527daea619f99f281cf27a6d47ade2a8e9ba361a6f761f3cd5b4018bccfd704807e467bbb40bc2cd7327f0302047c435bb5006730650230387e5db4f8b32f4ccd6bccab1b73e9fdb50b4a54e0fce9874504387f03287ba1e75ca013892c0b11add8af4ecf9ab03e023100e20c480e9a09be1a78bd9adf44ef0814d41004f4a82b9435b248bba2390a7850c4f4723b893cdc70b4441da52672596c0302047c435bb500673065023100ee73e1d270c6d7abaa97deca2c553e2289ceda9ce77cc155c2456e25ff44cf69ce9a88bd5bf99f56d58626c2fa5e86c002302f6f4f658ab2bb7e4eca9ad2f3d56b2489e36a356c11d7c400ee95f6985d733feb7204e5bfe78482abc97a2529aebd190302047c435bb500673065023100f209c0f43d16a4168db32d14ab4b84ea34d8071c6e90aa529c98f4aa5eec9679f52f2217a4313f0abd8476aee92bc45e02305a32d164cb688fec742448a7aca1d9d3dbb8c79548c368a86e005a0962287324075e59b4c6aa331956b0e5dc9481b64f0302047c435bb5006830660231008586d156a0a330ba0c3069c624da7fc045ec52dbf94e7e8e4c90e1784a2470286d0e4d9e385c13598b623e97c4b4af15023100973aff1a079551656f68ac59169a0ecb32064caf9ad7c0934be28900cdf853ffa91e609f79e98c5c6b3398b9613764f00302047c435bb5006830660231009dc9aa0b5328b3db4c8fc4e5c1cd514c4b95c7d2ff62d8172adc6dc556cd48c24d19982dd3e7cf370f68e8613935dd59023100e944675dfadf9fd2cd7ec4bf43dec9051c0b6bd0f53b14315359ef3f4535540169b523bc30d3184416c5d631e26127f50302047c435bb500673065023100daf781dabd992441fa3ff1ab9c5380fad58a566d020c59e7b076ad518d21c7ed77572eb5f602e521a4c9b67429aed377023033586974b4e09950db3d9229eba5571b46fd9555253300afc55ad200b3f180169ed21d07b3e7af8c77b1242cc6b9c3c00302047c435bb50067306502303ef80d71f01ba58735ee0134bafc61411e575652c913022619f1609684c2acd0342491ca4d340fc51d131c4e0fa79ee4023100ccb84fe6ef06a7defbc7a4484e3d1c5d888c93e6ba920796057eeeb015c8a560f8ce4326e79a379f4a3355d4a1543a080302047c435bb500673065023047f29be5432299548c6f06d1950d86446e1382fdafcebdbb5aec62852c9e409c42f0ca85c3a0f779205a5c3385a992b8023100ad407de45d562b10ca1748e77c358eefc1f01302c087312693ade02fb4541ea1f0e6dbf8e95be5cd8faed9bc5b1d23880302047c435bb50066306402304d83bc1c91c77a26742dd93c5d5ce451f12d87dd6887697a0f0254e969c284845e5208a7db6c4b165b01560f697db994023054eb23b7ec7e046c3dbfb4012077727a6f2c7898954e10449a6c09123806a7df8a9aa73e1ac418abe75af21252a35e290302047c435bb500673065023100d84cd37f4642c93f7a50a71396969cad182f2cc81f8e6627183ddf14d422b8c0e54b267bc1a1526d421acc758a7c002802303638d72fbdc6dcef2047c9ed406669623a3891a0d9942dd8dbf46200e30ff08f1dd2302b559ead6d5f536110c49ace340302047c435bb500673065023100d6d48bdd1ad985b3b450ee2d9d7140f6c485c7cbead903b2d0aa205952f5172c4231f2f1eac51e23f53f2613942ef473023034a66ceec7ef16cef1930aad68e38f775ed00d27ccea12be4cf31019f1ab8a8cc472fd8d6fa9cda108ed8fca6a3e02c40302047c435bb500673065023029fcdc00cce229dea3be99f5d0c4b29b0b6d5426b919c1646d80caf3411c50020d77ca655a86ac3eaa643f3cd88af0b40231009f240d68d2fdfc76c325012b4106820314957659caac02c6dc9b6078672058d4f7a7e1f3ffc6f8c24465b3eb48523ed60302047c435bb50067306502305fa8e4fa7142eca30387b4af8b03361561b6423bf940f7684b29e2d4778cbfb162c59fe989bda19206f001bb1562599b023100a6b411ae119b3c0fe6493f20f1510ff8d66c1690e00ed1979e53964541a26212441e64265c4cf9c6932e1cd0f43852670302047c435bb500683066023100ed48464fd820ac90f6529933de3d0f99fd4f496da204238b5f0b79ef28b8d5541de01786e807a36c7dac1fd734ad57e1023100e611f36c8cf7fe6deb6295a899f2dfaaf31fdbd30d7c1a27f7561caaccf6138b54108679306a18bf89c1268d2c4d9c8e0302047c435bb500683066023100a8b8d4e132d1d1f527343e0e0119cf95a1010155c80edb2d57e2a7a3a6bc0627cc18715c63f1e53b05df9223d396ae1e023100ee1e25bea0977f0a6409f1427437b1368e643dfe08e0156fed3f9a11196143ae4066a936e9c7976caaa9baba40ca79f10302047c435bb5006630640230484b19baefa64959bed5935c52ff0e6d72aec1fd8b9a6c5f64f1c4d07730734f6aba9b4872babc86d86f9be5eca5235d02303f5ccc0b86db05ccb72ed9909003f7b06c4a395b8ee87c8829c5f8d7a232e04aa5a5e7a8a7b5b0d51a085f42f2c1fa420302047c435bb50068306602310097b653765d402ca6547302b92e38ef3cafdca3c49b9aa6bf81ef07b6a97111657890e6ad6732ad98cc6ffec9c2bd7047023100ddb0c1c7788b1f3d7839acec15bf24380a4dc3c0be5fc42344e581dff51a31543a0813bafed2654309897d89ccf7cbfc0302047c435bb5006630640230614d3058d4a9979853a4428859897f52dcdc8042bf9b9aba6cdfb9b31d6408660d34960aa86b845014b2f012fba5ebb8023076a14d356b2760210264c3acafe027b5aa2eb0a44a95a3116cd65515718440a18b087d7b4ebe8e728a0be81392e8b9170302047c435bb50067306502307935644c6eda45fdf6ce8c088142f5feb8dff206ed84d41899207628a720278dcdada770310915cf0ef9543f03f6a204023100ca0069c922df19a90f5719b25379dff728f03efa5d0523417452d5c8e987fb1ec9ffab7ff2ef9e287a5a45646718cb0f0302047c435bb500673065023100fcc79e3c61b7e7c834521dfa2273dafc71be7ec5dbb340d5bd638edb69f933289cd50ef9cf0780723f200b66a783c50d02305c228a16b9d6e8b73f2f66d08565fa04597e49cf102c2558d09131fa8aff1fcc8e9ae2bb68e579f6768548deb1bc4ec90302047c435bb50066306402301df6e04f89cc435277223b81fe5f9a847e28576497b877aea94a07f80312f10b3efcf3a9dd2a9d7702e5d352ad9f978402303c398b2121ae209dab337a5db2ecce24fb66174455099ea90a78e40944613cb26d2e0944211ad8d0cbba8408d96a67240302047c435bb500683066023100939e1453922166bcb1afd21e23355932892143b28b2f63ef723e591cb1d771c1047e6b1c932828b46153546ad4df39df023100bb123d24ebfbd43ec9c65381f374b0eadd2364b8a6ea808cdce56350ebfe90f772051c711d5b2cbc6a35a77c88a3e4050302047c435bb500673065023100a3b737ae4dd94f2bb322f22ff0b44ae9843df6433f41409af0869247b71097bd5ec2d2897f29e23f86ec50f394c3a9c3023050a17d2e56d61b2f8ec37ab7cf3781d797d819d0502cecb131e298b763be5cb702b1e1812f781a2975f5b5ec53ed7ea80302047c435bb5006830660231009fa0127b674dbaae385cf1bd530a2aa1e30b18da1ae6e52fd043b43adb6cbb949010a54b1157029d71efceca3133d195023100f3149f874c1d190bf7b0c5af46dfa1d11c9849f27c9c7c912b3b3f7211e2b53b28a5ac76413118ffeca059117affc4cf0302047c435bb50067306502306bc0c37ae34767ed3cf5109c0caf03299716b06c715d532094c7aab916f7c328f1f435a1cef56cd697e745e2657a9cfa023100cc79d33823705d3f636bec10ccd9d7bb04c188373d9b40042a768ee2ae3fa8c73f948ca635c52515314beb9bd00be1120302047c435bb500683066023100cfaedc38ed56c56c083fb1195fa6175740a4ec0df2c1abee5d1dc35a961c5fd4d83e28176bb2db1a9480a4bc5e7cb3d0023100ed79766372f658340714dbcdf759c62629205093d70794af3aefd840a7535f1f2a2e21cf04fba2e5caf1f74381014a9e0302047c435bb500663064023041d6b4254b738de2b9d0edb5c4247976832fa3682eb7831c72bd90ee118eb9773fdca8a87ec0a795e28a7dbb0c23eda7023066f2899de3d25020bf71c939a9abac6fd3d5d6fb0b42d614008ecbc1e1bf219b134fe93e4219cd80764efe3569af88d70302047c435bb500673065023100d04b8eb22ade17de6f60e854bed49e159f168405034e77f9a8c2995e3d1a0d0d420565328e735f0a54e5a339871ebb88023041f4d95ba714ba0546333a27352f7fb70cabc4c31e3792139524043b6f1bd1751f12f0e253b655ed5fb881ec804a257f0302047c435bb5006630640230523084af1cca2deafeccc4438404433eecedccb37426fb88514a84c61a9f17335df0c3f88988b17a9cc751122d800d3c023001ef1610021fc85d8e2e53a8269c233af04044057d37a1af5f75091c696cabf7e29fc04d2c9136ca4b8ad79030a78c0d0302047c435bb50067306502310092d6200b434c0200f8818fe682b68093ffa5f751c422d1a6ea11ee4fd4a490db139976c5172915e91bd84c16dd9fb3d6023015ba37f1696d27f65fadff0a533f85b48042dece14b8e7e742377fdc2afa45cf1bb6082e1c6ab86916e007b3d3e3e1de0302047c435bb500683066023100c100187d549959655f220248a4813f2d43c6b63bb72e363fcb0bfcde26195648411013aa42e3852fe54c2ae7d5f06f7e023100df4a975358e8b085188ebb07c37d155e208064096ab854487b8ed1c9184829be7cbd57364bf3759b35b414c24608c6dc0302047c435bb50067306502300e9f8badfc2108be03eecdc2fd573a4a2c3ff4b045fb3f3c4911505fb9409daee118d8ea1b3d41e6cfb1a30880963fd9023100acd48ce04b616f14a110879ad8a019a8cf3c75846259c16c98dfb4e3ad95d1cde2cc61259f4b79c260739c95dcc19d540302047c435bb5006630640230396a5dcfe86f71239d9bc382710b87ac9e195ea4c20ba7c69bd2ed5902077a966b5c2e5cd1729f29f8ae1fa0a227d78702306a4a14ed786df2401083ba05b9fcfa3a0f1252c0f96458fe5564f9cba4c1b88e30209edc04a3608fc976855d88b2b59c0302047c435bb500683066023100af7a7b1b27d3d2a375a66fb17f404ffa2e0b0899b5dadb5cdedd200e43238b791b5b22981dee48df0a82c3f7ed6fa931023100ca7fdb589d16a231e98cc8ede6c7f8978ba291ffc665ce8002e3ffd3a8cc83c5ccb87c1a1094ad0597bcd791209039140302047c435bb50066306402300288e5c5f1f017539f7de8c38bdbbe5524b7a99f2e898b483c887c306f2ef65f272ae6dc175fbcbcc63539c5155e9d2802306365a79d2a91a8926af6d1c9f0eaa155e57d53762563b74bff453706bfde904b724e41a993c6510329b64c82da21debb0302047c435bb500673065023100d16608d025b84524b220d4821d19a3c5478f0db7dbfce42500bc59226d24d6fd8ad82513a2646e43443850d9e403637b0230625f8a5e0884f07f68659dbfe9505c26560c92c3505538bc4ed5a676b4eb5802bd4bb9900e5c805be99b9055332dfff80302047c435bb500663064023008a7d328f620de936b3207f94f2767560f5391fbc30b6a266a8137041ee6ed1af98e46b1ab4b2ed3cce26464a79ea27d023012216524cc84f3a3a827ae1e6b56fe752d83d1347d7ba9dc6413d7732f381a7e98f6f7ce31b93d78db32115f6432cf8d0302047c435bb5006630640230202ab2f526b34bcb8494761bbfd3286ea0ad0de3766b34132f68721122587e2d4801de95c7ca72e570e008040a2a58c902307054ffda387f1db6eafff6607184c97f0dc794c4d3ab5a7adc78ee444908bfcd047d021f8b4f21c8b91e39a5a4ae64c80302047c435bb500673065023046e8239421f68ba428523571aefd33e98dfa4583b0ed97ce2f5802b284d77b9dfe99cdc46870056e15caa2d9836c1940023100d73da78d0caec3ad24bac469e72f5923f2268aa58bdf8e7b7f6398eee137c431b1734f0ce0bb49d56da4bda15bd0d0c70302047c435bb500683066023100fb47ea5e876e8d3ee807a5b07155aa72a6bf52f0d88270be5ced7678ca9ab50f8c0b43aac9d6ec7d3fba2f50962f20eb023100ffcaec5fe76a925c684fbabda97ff3005ab71f8bb421db2c031a7d0e6cb12d98908123de4f9f9eee25876923681a9bbe0302047c435bb50067306502306939c256177698477a50bd3b631ff23243787b4b57e7192be8b4cd0365095b66156f06c077394032b5d4542201a3891f023100973d6cc03ad8504bd1f31a93e9fd660c5f566fcdb99ad515b8f2e0e788ef98fe33257d8d88c83eada022f002b428fc770302047c435bb5006730650231008efe9ba42974f6131694e78577546f955722d0dd2fe8bfb3cf392235aac422c5038c53ab147ca9da4ecdc4ec4b3b955302307050af1e395261bccd8c295bc408f668834d2b2d6c5729e046ebc0cb9a78fcfacd9a7dc2c7cef4862aacd7aba97063820302047c435bb50066306402301ddce064a15c41da7d44423afed4a555a52cf8e4553be3916a91634b3d71d9f35281dcd91bca890d89bbf210ea1f0aaf023012556b2ce32f4aa7afd026befc2ab777e0d3b76eb4720506d19c1b7c21442943b47afbc12ccde7f32b96b91eeae527820302047c435bb500683066023100bfd51f23b7991c2323d2fdac2b124fa5e94fd4dfec3b8725652fe5b9311d4da463edc00986be7e9f7e2d2a905117119c023100c86b4f3ead9c7312f36a07ab7bd75ba45097bc521f74e29b8df23bee10628dc5a29fa750fadb464eba546afd6c03501c0302047c435bb50067306502303a94a30d0b817caef06cc7dd31f73926a432f9cd90bf4672e6329794c2806870631f04968d454991756a3cc96e5bfd2d023100bf58c6f17ac005d5bfdd990c5ff23b6544bd75d079f73b824b4a8cf19400a95265b798969838e7f8778e3d327eced1070302047c435bb500673065023100f08cfcb0c5e45820abd12777d014e1f0911441e72bd537cfa88bb3ae89b8447a14d42930ac7f27259d6acb5918918cd30230390b712d160be7aad13d12639716d15cf87c26a822618746d82f1dec3539d0bc0fbdab46cd55eed69061d76cda2edbab0302047c435bb500683066023100aa5cd0e1713f8a702f84e852b789fbada1ae0c56be27b7978ef080615cbea91e8120b02f69e4c5b64417b6f98b4d80e6023100cbb5cf1b965eec87b420c332ac4cac9495415d782ab63e60b26e0602fbf378db240c26cb23438478d45a1bacde8bbb790302047c435bb50066306402303500434e4c9626d2a812ec2c302220bb2264d8904e4868468ac84680940a88ddf0c74d3ff89166a7484f55d3d3f2612502300fa39980f45b36c2fdbb24facb52518149d5130a350cd7d16515bd4c5ac4330c66eb782734040745b7bf4793a417e8830302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300789e0b0fb8d54ae38ff0ec4e08d01321044a8506717b4b2a4b911569128515544e591e48f4c4732edd73f13b130b9e1023100ab8ee19c30c5205eb1eaab8b103239b9baaa7dd3f88819d7be852e090c2d4f80ac561101f26081073ee15b668a50694c0302047c435bb500683066023100b812b4d6166833fceb82792409cc99854b2d094a96ace2b81cea7c7fffc4db7e9a4e6e96942061abda30818f950d6b02023100d277be6b85b0dfe5f5727a1135874164212d98f6a95f8918d526615c22abcab11f5ea74c104f8c48ab9ac9edcb61de180302047c435bb50066306402300b62969544a44920fbf3e3a57a74cfe76a0d2ad751aad16120ed8557f004b472d789dc327123c0763f951839d2be1bc8023061b0f9ff7ae511a4d3f182cc2420edfc3813832cedbe78237a142229054fd79e55682facebcc5f997cec99b4775816db0302047c435bb50066306402304d19a696e4e35899ea4f3f85b7bb559e2a29d020606aefa9434cd98bf5071a165d16fa374d0c80da699e2157109f05b4023012ae50c7c0b7e8845d51f587c63d83c8df05bfe912988adbca3048ce37966260241993c2ea366001cd4363879a168c930302047c435bb500673065023100aa526743669f6f477f7a3cd42c1ce1b3a056f3516e103044ce3364edbc459d9f413281381fc96c95b3e87f8b946a7f4a02301268df9303510fb473c711d254f89209766c548e06848e3bd47d62f9946829f42997fd265c88422dcc0a68ff2dfebdf30302047c435bb500673065023100b17953f4b79ebf998fbd5c596a23cff32ca5ca2bea93772faaef6c2585bd93329811ec435077ff6282f09aace5a7cf0602307e529206083130dd0f6583692273cac7b5e91570b2b50a53da81b4884365ca785e7b5bc17cb5830583110ebf64c734180302047c435bb50067306502305805d379ce49a9fd9bc18266ce9481fbba6a25189a5af0f3598892eaca9138459752203e6ef5cda5011f06f8eff9dd3d023100e0899d96157fde11530a3ffafd315ac4e0ca6723c646153ebf1321d34d162c4ac98f36d1e3d0368e28cabf556c38247d0302047c435bb500673065023100cef0665fe5c50d2997bc05bd84569fe4718443aef8357b1da7d493f7db8009cb78af36494e4303c7b12b2793e74e6ea30230415c6a9c068098d991d7e193bac4cfe84476c65d81d14bed1998b6bb1a7b7bc073098c6cfa8461d649164b737f16a7d20302047c435bb5006730650230689962284cb7786b0a9e3de77855795af57704e30af99576297e204c0e41bd59e5268c5946058f95ed7d0c50338250e1023100baed43cfd845d85e05bdeb41eb62d915c289c081145961528ec3263462ba3bee13add68bf05d022d57a84d7d38c3f0390302047c435bb50066306402304fbbc8d0fc4f2e3c64facad2209d4139313af1eee8b18fa7ba612c3a8697c86fe813fa8d368e2d6575d2c40f1c4e31480230173b691d84185dea053b92635c744e6bdf5ad2f4cf59bbc00c3604e31ccbba1ef0a0ca88a8f09c0a12ae409bb767683b0302047c435bb500663064023030cb306af88bb96d894610f6e96bb73ab32f8db71da9f86e743682dc1e53b6bf275fe00135d80d524b363430c34be483023064b2576f173f22b21fe7935987ad6de01a7c4dd99fdd9767eef80133462934c05b5832e24456b2bbc6bd117a715512670302047c435bb500683066023100ef8a5f74e24c96ab9851d5af3e74c29d8ed56a0d8fbe0225bb0f37fc22d97ece58ea6492871ab5c2999fad575d710c58023100daf23908241f45c7c6697ca719fd12683f82e095dafd6cabf02012de86cb5be5a3ecb71ecdacc0ec929088691c6706260302047c435bb500673065023100a39a3521c32960afc23e9238dd343be404b1416e26b5ef8d4d755670b3806703f175ef1be65bc8b6308a666f061d482202306739c277072be5a42458182efcf1d2d198a3e0a49c642aa9963a13cc17e64bb90873322bfa2c843ee5ae075b08f327cf0302047c435bb50066306402304d845ddc398547397ede67c712a2caa60314e0fceca8f8d1a1cbe3f7ca18c48f59f62c0aab05a43206054d00371482de02301e64218600d219947d31773ba0003b981fe47d0675eaf76c528de3003d38b1651978a2a2d5f2585c82dadf30277d12b80302047c435bb500683066023100c7aecec633d4edfc8e80a92f24539eb73d1b177467c62105075e607099e6334ae3d81e35302c3ee2e1854eaa78c78cb8023100cee5040087895e356b390da56458a1fa11af78eabdb48f2a53d56b2708f69c94865e19a66c2f3b742d32efde3cd7203c0302047c435bb50067306502307f7df400cbc6e0511593547b60a08e965ba454982ec116287b2c522a506b117ae8135fc41cdc4d2e462cf8a15f532fc6023100ef1181e17f17ef7445183c67a0c77405c9806693d11831e7a64df0ac80267321341a8bbee078bcb0f6dd4a8328ba1c710302047c435bb500673065023047dd5d7e38d16cd9b1d95c57ce9257007ba8f698041120e06e06806c8db9fc19f32316c3a4054710e71a59021e20818502310095146e60bf5bd7bfd4f3a438c3a621ae2e8ac57d8b6349b5101da0a7a4ddabe1b1d605b83ac33c45d620fe46d7309cfd0302047c435bb50066306402305788ea4d74f2efdf74231fe995e94c27541ba4e4fb3a882dedb0ce35e27ba61e3cdc1c6c327ce3d2645a0f445558651e02305edf9ae7978acbc7849aaaa4f6ab162fdb8c41dfac6f57a28a7edfe47e80e1622f72a31f0edaa4e1d08752b9753cc2050302047c435bb50066306402305b535908c297f89e03edd31149a62345bae3ff57c6e8dbfc3ba4762ce0473067f4cd6a1870204da201557ddb9ce27c130230059016fcf5d122e30c01917a22899f096797b88bd87483d98d9195e9cff9a8cd17d1ef4eb1b8f041476f2763ef18910c0302047c435bb500683066023100a372a36551a5b8b902d0bf714e5d4be86507037c2882014d7269c710499207cab39cace7fc4049e3f8ee81ab95d005f7023100d6854dfcae4f9262122fb7ec3156fdcee030c3d119c0c843562c85c6d30d3c47a93b22249e9ac1b1da1fa230956da6ba0302047c435bb500683066023100a6d8b88bdce0bf5df39d02a2fc59a6e64a560f62f15c5bd4648db15e5bb3478ef0de8e7cf26a8aedf3dae7412349761d023100d99a9633a9f38540cd11514aec57546c2068b49a27966848329260d1d9ec7ec45a64e2fa209f1e64e64a0ce0c8b5217b0302047c435bb500673065023068b6505a66e645b7c268937a7e640ad68734d1396e224d11b7fb90d949690b9551ee05820d1494b9e80064af5a1deb45023100fe739783d9863d86f58379d3247eca4022a0d6c9affc049fe46ff2ad7d3efec3606c75f9c08c738aa49cfa1b58a791bd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c8e2584a2523f11259499702236458849877944cbf80f10860f4f8f2fe5391378dfd555cf07f281b6e5970363140397a023100aa6b399977cf628ffdd34b61260f2ef4c9c9d7cb3368b12fdd4e458bfa4e1bde1a92c833b5f0ab2ca7d1dc7b41c9c07b0302047c435bb5006730650230268b368d738e0973d4b08b8f0b5c73131ca9df011d124600d604810b6dbc9c9e90fe56743c6e76d6cf80ef041b7eea20023100850dd8c4e99904198eeb6e2d85701fef31cd1e6c60726d2f82783437392cdd7ff7444dd1cf9c653d33b2e2921d056c3f0302047c435bb5006830660231008c800d55f6a6f82b07a08d26653a8706cf933a63534259ff5308ac9556930a501fbac7bf6f0aba0f53aa54f5a9f14c4f023100d741c50636272555409856091adcefdd29f377737c59d42bb7ea7d27421f4629fc92722aca1fee5a78dcfb105fbdb9610302047c435bb50067306502305b2a1d06d915337a310f69fd01a0ed7b9a0e58424796c024cf76ca9435cd66d94dc96f31987067d95c5f6dde5c004f42023100a8e5e290b633bf2463df37cdb3c527e4b0d3815c7a14a3113ed3c27a0def1502d27426f85feed8bcdb451e1959c93ae70302047c435bb50066306402307e427540369821f78c1b26a37596a3c888ea36c1b47f0a81eaba4da9fb2d5630bcd47680ed4afa64d1d5293e2fb1c2900230376e5ea5c32f0ddea37e267f43260741ee31c1a7772f33677a615dd344c4d62a19b83aa355ae33b7421f3c18a9d9000d0302047c435bb500683066023100c58703d390ec301a4a5527c2bc8e98e18e991b592dfa923fae198a89e2ffac839cdb6fe82f8a4b0db5b351c9bb389d79023100d0d3dc4b700c83c5c22882f55d0a385b55d68f11fabcc00fbca3d76ff460b466d2d38ab253bb5cb83b31e1107c2242f40302047c435bb500673065023100db61792a84267cfa22871acb763e9f458d3b2b008d1ad11135be81536c86cf067d37bfb1886905b9a9f93ef99ad78c0f023047099c2fd9c69a5c6222e0adf9397a0b7b9fefe751e054cd6acf4e7807305b0b9d3f4f17208f5a68272e76a758dd2c630302047c435bb50067306502304c58b77e232622c46843bbefc7ea252b88ad3068409593c77404d403aa70e729a8c329fb07d375747864fc7aa0430dcb023100c1f80427455f13224756735d5ca4b89f1a16ec98ed0e052d80a22b3c720dcef75eea2eb1b10dded1c6ba4d8427b159720302047c435bb50066306402300bad31c89caa4cc23d835590ed6a0c994b9514d45871dff8d627cfb1143d4a0997647a36aa0494006d2760aa654309230230027558f70647dc7b4359e93776c5cf7096b0861b8e510a0a79a89da2e3d778d1a052d5eac2e73655eaf909e1667f1e8f0302047c435bb500683066023100ded3b79398b3ef9d6db70c9e57196cc843a9fc2940a365f15b6d229a98c2b0b3ed83c76fd3f7fb8363e4e4eee00a5d12023100c3eefbfb7a12416e9a9d7a9a951ce8863e64e2f99a1b375600b990d9782246d81fdc7c92ddda271c417802b587cfac130302047c435bb500663064023059c63c3d0ea25494d15466ef52a70c961d49dff285533269c773c57d2bb43ec4b8a1b00603810e3049f52372bc1ce50702307f3fe14a611d1001304a1a4f32191ecb001f93d497f1f43182d17e0327d97dcf3b2ea7123712d049e5aa8eae7ab96e900302047c435bb50067306502302cca8ebb8a7744bd1d610e9eb36dc085465de33981cf7c5d37b39ca2794436bf7e7f2357715816793b7be2086efabca8023100b3e210502e4e0438e5cea7c0b15bcc2ee8b520201f25a3b7c5e027aa056e8adf32fffdbab5dbd36c581b87e4515344010302047c435bb50067306502301d897008fec372617d9c67d3775fa92a0e6ae0ae77b514178f9ff2514aac50b463ad55141bcacf60b19c17114a613966023100e8f8a5cdd2ebdc15a6072962dda088c4cca943d9a5d41c17c6c97e5284dfac0e85a9e2278bd798a897595ce3e57b89d60302047c435bb500673065023038edf3041d5ca0d2aed1d49acff45255cb62e32a0e7217d741d10ec22283cb97f370badfe8b8974807b581313453e8c1023100ebd1269382c01f0fe64bb73328b89e74e57425d9a7a0735fd81e95111d7de4453ae7d298d806c0b9bc6ea9c45f60a4610302047c435bb500673065023071d852db907ad1aa1af5524498ae32d3d332651ea19a80b57a902e7baecbab2c70f0d17bb860de59204f00c10c476019023100a70a7bc15e567a248e4eb66f5180fe5ed3814ff86a1866e484af6b9c108110198b54a5ed935bc7e0d2d32e0056ef7d550302047c435bb500683066023100d33b8d47d771018f2eb2d82a44c4b6a29fd49f0e32a8d250bbd9ab60a89c52d4802ed4716d86dfbc097327f3ec346133023100dba2327d6075569b960bc3a8ace54b63d25ef5ababa415bb738e0211a3c07c9075a9cd7d7cbd98b4ca2e327157368d7b0302047c435bb500673065023058e0712659676ab0e86a5fe05d36845a0db84e8c8a2078c2e12d8cb1e6481860d8e2b50bc0dd368da5b321c238d2340d023100bcf96f2b18e9258e9b320e3552ea390be5ce4bae09dfd16b363aec7326af203b4b65db6d75e02b5abb632b0d3cbe286d0302047c435bb500683066023100ae1689cff6783c47646271ad7c5ca85eee5ee441f9154949576da0096a82a7cf0bcc86cc7222dca4c93aff7dcdc7c517023100fb3150ab6f148cd6af9e282dd652690829c92df6bc7ab3bd7b10c93f0747153617ea99744c2a63feb86d59ea92bf64ea0302047c435bb500683066023100cf4c92e5e806a020ed0e3632d8b716b43637f94dc3c6391cbcd5a42ce65e2e934514fb389400f4aab0f5c0f4db997b85023100c7a11989479a1fa943ccebd02d56a4e8f7b4d9885f5ec1e6e1dc1107d4cb3b5a9a2dbfbd47e8fc13cb25037d55450b660302047c435bb500673065023100e1036d42a0287d0fe8591fb5b5e9184bd39dee4742f074855b95e6e52205b2dbeda999d5c294ddc6568f3b8dae49e6b402303d3a7ca85e3c9822a75df61d3b754a85588fa0cf35e161eadc6430a1aff441c08565682d67925937ac5a34dd77096ffb0302047c435bb500663064023024045749f4e4935497a0d73247b968c673a1a79ca2bb633925e39360cb2901e833bfa451a012f7a413afcf8158e4ad6302300831a1bf4176390b2bfa70daad8ec7e5006dc2c74244e9835aba0341db2a4735543289cf1ffd76af28ce5adfc52124b10302047c435bb50066306402303e23e8323216856b37a5d06cfa5e6e00e89377bb9ba3ebed17ef51bd0563626ee75ca13e163e5bfabc46fd245621a17b0230759f5b934d941acaf13e729608585834ab65076df273e27997c8550cc0a4dd18114b4c082c8440f1b23e04d2939def5a0302047c435bb50066306402301597cf6946ddbded54ede124d788d67d860c868b4921c839dac91e94c8e0482f225c5fb82d9aa8abab8f73fcee8f465202307f68f265c3c624e90a2aa986ced3dcd43c18508b5129c6f0a1b3e5c6facd13c56bed18835f2b6c7af48d1248bd00f15a0302047c435bb5006630640230491cdb6863de3f4f63ed11f84a68107d273b3a521065815bc122a2dfab766a9e6a4ca246213a263c050aef6130b09792023038cdfde7b9f4be0e1382d9c267f656b839eb66077c372950e9f24d6de305ffbcf8d130ce7d824f77cec6754dd1986b320302047c435bb500673065023100c424093811f65651318cc6d4918650e75ed0129ebac2790d015f5ccb250177e7c64248d2c6189acafe8128d0fd2a63e1023004b46e4920099d0d6983986ef6f2ccfcf859dc6cad7fcc6fe5f7b6546bd7743ccb8c1d538e589ce0d59d3279d8f3ed610302047c435bb500683066023100e0976d76669f9d1122f33adc84c42ec1b7c322a1b945b3c0caa80ffbe0678288f5424baf4fc7ae3739ee42b1e503947b023100dd82a67ae3429cdd67b3743ec4a061948df0dd293702f604007fbb9a2f7e0ff75fd919230af1c6b37d44fea5a7b1e1220302047c435bb500673065023100d0f769d47ba213fe0f67fcaee6fb30426e10b04d5dc310de45e03b2ebaf91f3ed32870327ec298e27e8a04904401c53902300ecc27c0c998cbf170a7b292953449b16fe1ec7fd0f69cac8b8135d6d57381441bf91344584b6de5c716015f4bdccae60302047c435bb50067306502310092a9b8fe4cc85cb5a2b9eeb20370642919948183c23023695356d41d9cda7e85bf1267f728b6df0db017165dd4481d4d02303bc78acb844ac3f2ed62cc96ae7137b595a1d79f484a81e975cff38147d7449ff5c22942cd886106e5c97766c1083e0f0302047c435bb500683066023100d1bcc2c95e80973d2d595bbc14bd9ba1101b53a9d13343a8235d0161fd347033cafcadc677383726f4aae34d568bf636023100fd5e9b3b7c565a20ca02d120002f904fe1650cd6b993f30e91d9f77243bd22bbb799ac65f4312d2e3e010bd875f7e11b0302047c435bb50067306502303d87b73c70e79aa100366b0d1d4db3ae22eef565598f87bcb287d058f38babd3337292a81f8ac57dcf3ae42e7da205260231009c70f31e548b0f58ff1906098f165ecc1ff338445735d2b952691291121448f62466cd9296470f20d9a1b9d3acb3c1c80302047c435bb50066306402307c3def383f22e8e7470a7fa1c317c2edce70ad0ff81fa3d2d74979040c4863760ffe6e66a45e533cca0d5ad65b7646fa023037b3bc5c1d640da8b74ee6a9efa4ad9d444949d9ccf2b89d17aafa0bd4aa4985a64ae6acc7ce5ad071b6f2c001e38b1e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306e3f508059fd7eac3d857aaf977e2921a767f2f9feb4d62e32703db53617115cac4e186610fbc5e4654dbd9eb1a76d960230569cee0dcb3deb668a1a48c523b3ccf362a91f8efb91058d462f4931a215b6da59738a6f1dba8bd6e23e5dd3f6dab83d0302047c435bb500673065023100ebe0f7a8c181a75676320f7c56f1c2e3a345b2e717170a6937bb2637e547d85eea23817e8c056536ca4b388c65493ace0230479ba57eb0cac3d5434f4963903c6c2560331d1fb8d5a3ae13bc35524b4150736f0189d3db46b2d85e77adf7a0bb4e170302047c435bb50067306502300cb3d2e714660054791775bdb6d4e506cdb2f045ff6a7e67848c0bb15b01321452744b9a68675bc9b4b0a14e113e5f1e023100eee134a06150c59a6fa116cdd7ab251863f596c71a7318a639cc1e21ed49057dc426e8b41c2f55f3ff043f283e81b1d40302047c435bb50066306402301327205fa5c73a966787554681716bc7e9a5f97d6778cfe346aed534f499150ddaf985fc4e4410bbc7716be210978e2d02304514d796ce767ebe803e08aa85b565fa6723e9dce3092c07b848019a04229fbfb4c5e4bd1f1ffb490b4e847bca02cd830302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c0e265815f30c0be2fe6fd7b1cd17fc79bb0451e936f80475dbc53e3ba6f01523fdd72770459c62432456cd2a9abe3d4023040609d99c21a8d714119670af3ade9582719d7e1bd65f140d8271e5a974ed44dd2b88bf2e038d1d889e68775e82471460302047c435bb500673065023100ea0927135b0b2e320b1d63c73a9fa6ac00428cc5587959c3cc49c1917ad22da6498ef6ff872ed3375a02276aabc7b9c1023064380aca0f5c214aec722bc1d56ae3530983171fc35a663ccf6d0c3e525b1e5b39a015016a623a4ab19e8d4561cef5880302047c435bb500673065023100db68ce00cd49bcb7e8b0f5cf10bf9547bd3292082882f4489ea302038fa0ce3a83342bd3a4ac49732590296cba2a294c02305575636909d35bada51948ef03f0c01f58671a5125518269ac3615a2a72b86d627975c2885e8e16215313b1f8ef5c3270302047c435bb500673065023100ea4b0788626bdd8550f2f3700a215ab8c9c3889725d9563235710e2fb3d26d5220ec4a1374ec7f6b61df7aaadf19247502300f9e200189d36ee9ca3a8e7c17d04fe90cd80951fbb928b9263999de1789a2290a2f82b3584b4ba5847ab7c9e295a51f0302047c435bb500663064023047ab1665f8e2982a43b43ebd850af8411fe470f19290c463c26dbdd8ce2d99580e16246e3ab2f158008251a57cf7f9d90230044ab7bc56108b57ef37f04c3ccb012758ebd2714cf5cfb2f421539216942db686bce9b7fd6f39846d853bf6e6efc5440302047c435bb500673065023100fa57457867fde79f34f25ec25fb9d4cd32a804cc3cd767561c0da74e4c3eea599153a491a6049457e122f6d17b146281023066a6948a36a53236090cb76636b09d936756f53e249fd803ee97919b6ef1fb00b0a1d70579a694af90aa276d959db6b70302047c435bb500683066023100d53d9738ae85cacc28f348903c334f0b78953a85cb46e1d0ad28c26fa4d6fe1e1617c68fb358603638ffd423eaf016bd023100d4fcffa47056099823a89f161c31f0ef99decc0745c986c32841756a7979a2d36b5f5a90613acd53315640c18a7fa44a0302047c435bb500683066023100a96523455f22e5cf2beb1c9783661250d01199fb3feb580ed29023a6337dbab743e0eb69c3d461cc3735593c0b77292d023100a33c5bd947bcf9bb0ead034b73fdccdd9f82b7a97f5414762955200c918063507d2ab8ee131f64b4317ebf86f87853390302047c435bb500663064023048809a9dce66ecf4cd30c8314bd3032d9ed22eb0624da020ea2c21f5adb3e0f0b34ee6b98dbf6137d063ce303f7054db02300adc9320283e55108bcca1a76de1be8ee4b7f8bb6790ec36e89571c836111c1c06657e683d79e957238f102b06593e9a0302047c435bb500683066023100f66bbb9413365a65a5b9ccf74925dfe1c97ccb7bd616aff786a5b131efa3c6a4bff2799408d86efc3fad48cc9f09df630231009355cd5ff221e50a27cfdbc640983eccea17679f6b9af6d28e509f6425848963ed3f758cd0ada404f16990fb6d024e740302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100df8f2896b4fc4250be19b3b8826fe31200342d787f506730d54d5c22d73b2a1d536963129a821a4286ea378a90ec307e023035ec6b72cf5a91e2fbbfb120b09b6366a8a89cc5bce54fd6b274adb9d34cc54cadc0a12b1987a2fe9cbcf3e4b2655c020302047c435bb500683066023100a705e2e030c6913c77ff0b6f02616e487c051190bbd48152ddbc21ce393766b0b5f2dd5e03307838103cf0d1f4b88e08023100bfc7a4269981e745d0219e7be2f9b691cc4a8ad557bcb2906938e7e220d8e5f9e2a10cadeb5b135ce2a4039aee80e3c90302047c435bb50067306502303e2c96a091101b062bd1e226b5200acb92de13ed3367792554a657a45010e66a5ebe80ce7aa36bd91901e599db85becb023100beebfbc59668a12e2891749e978cbbb53effbcb79298d0a46b0f6c3ca0fcaff469a6d30c980a85da7d60ea17c8d97d140302047c435bb50067306502305340aa2030ffcd0a1ef3e696e8b24187c460b598f6c7dece7c0ce5c70dd94819813dc300c33ff835d432ecf895d5eb81023100b44a71a6756c8cb3c2e483126eab9dd4d9b897f960f246177c022b68e35dd5cd886159585977b16041234cdf0deb9fff0302047c435bb5006730650230172a1a62b90e9fc712f7d8643a84e8d889d2062536a25bd66fa222efcd91803f526fa5593842e1a3daf350296818fceb023100d9ffc0f210c970bdbb886af3107e83e2a3658d3d25a0eb25dc14ddc84cebb837906a1ca847260465e9a03cdef56799110302047c435bb50066306402305aa5c5ed1e949313a54a8883646e61e44d4743b2ea5cbe82a6971ad9317cee082b67d20f1bb2c09bb7244ad724df83cd0230731c21ea451cf16839a90b5855aaf53d831dee9870dbaeef43d8dc077eb7d912ef3827c14d21e148632582010f4c0f0a0302047c435bb500663064023064396218af490ce0ec60cbfeee7ba6b92994a2d88ac74a0853e6e037c63af4ed3eb96ab402fc2bea545f2740ebee375f0230544d23ebf56758ff03d55d9d66ada59a26b89774c6cf914061f55e90bdac847b8a63d512b4979d2aed49c668104839430302047c435bb50066306402303c078fecfe95564b723d2808e950c8e87e7e4b593291a483c51345c7850eb6ee3d7464cbd54c8b09688be25f0955735302300ae3e1cc58ed85f57d37e28540feab0926f9bd4a6c870e3e0580d72d213721d9b8618a899a7e056f8cf4bb40f5097fa00302047c435bb50066306402307eb5f2fd602c9d04a3b41ae38248f5ea5988479181fc51ef3177d5f5301da648a993120b31a4c9c7352c9141cc6a978b02306a97d7f2656bd4cc1999317124baacadb60c518e52ab0b14a8c33390c66a6aa69673fccedb56416eaadfaf636ca6f4510302047c435bb500683066023100812fd70a3d14951ecdb155b7d2c0b8c3cc0af3e9aa1ed4f6fce69d952280376395bfb679064d3823a06d6313c2f7d1a3023100e53fc8b0859c9e54d2af483f45af510f6ab74659d537b46e8154b66b5ed515ed9edbd251ae242339e0de9458365956c90302047c435bb5006630640230194c3c246160765cb80587c13597c3f86fb2b5812012878a61e4bb0b2a0445a3a0a3e5925c4d8ce1b53522a32ea35b68023015cb2bb98612eb653ad09adb5d4c45ce920dbfdc493a96e48e963007f49ddc5d9eea127a26e4fb12162c8cc7f6d1e56d0302047c435bb500663064023030cc159ef953edfd9ebaeb327fad2b5079fddd1bdb3e0a3a2401fa211927a4c72d95c762a09aa2e0cc40db004fdf8e6002305a79ec1a14ee7f5bde28eea5d93e621044511824d0f8231cfa3c2a699f117c13477d4ee31098cd96c1c3a3f4156e54100302047c435bb5006630640230074cc6a82a985eeb501c91ffdb3bf0b607c60c6a828578433ae29c946f2aa27164bfccb1c129154fff183779b4488a8802306b74a898ad900a83865122b53ec919c36fc8dc92fd82c831a3253750fc4889367283969b249094ff4254b35112006f2e0302047c435bb500673065023100d46038f38a4e616655333e1ca53e235004063572eab50d80c157a9c011eadbced1791d7c5776864fb4428df245eb920f023014d16fdc0d7b5dd90518686782a2763c5a71e321a900d9e648920362ee32cb134165dc2eaefb1e273cf6b198a4176c660302047c435bb50067306502305e23b112df08ecc0a28f0411913bb6eb7bf81c282092612d3f4d0c350f4db1eb6d7326c2c23be93b4513b5e24a9ab24f023100fe3c3cc1394caa84482b5db7129d4e8c3ea7a72fa392915ee97c7fb7e9211455cfd625401292d5bf95f1c300e8b1cdbc0302047c435bb5006730650231008d64fe1fd2842c11e62e2b57da77302b185a506c73eacd78dfb03a089e387d7a1e0bc32ea479d10e49848ae9c40ff76102300e37ce3f5f0d20bf2ba504c8ed6fede8cff39ec5cd9b43f02788be4e2a4bdb8c1ea29088004d4f3db68295707a7b49fb0302047c435bb50066306402307a22bb64b0630b950aa919adff0ab53abb16fe40529b0e259ab991a8110084b490c8cd13151af48ae9d7ce5dae154cf602303b31c3818eccc8a02eb0896820289c3e4524f9273f9b3c57fd10afe23108ef11dc931d07ab7945aaabbb2246efbe840c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023012e787289a5b033ea2f9f1abc1163726044e76b251c68c8e7a1e5229b0fceaa104caa41a0ae682ee4449e885636eb3e902307abce5c1c2074869bb511d11e988b6f497109cace1088371aafa2d4657152509cb592a765438dd8346ac57ad7b135c7b0302047c435bb50067306502307771328e12ac0826284acff49417149326bbcfd3145e4b5e130d40298b13fb95cd4f5edd6672f6c67c2babfab2cceae5023100cd28835f52d9b60b0fb22e49e29970c687d3d75e7eb2b167c072e18308ae58019e1caa6efd1973285f259fd0a9c595560302047c435bb500663064023045847c4391645cdf07fe2d6fc167de8e8535320bce3dd646c71ed5767e7fe8beab41cb3a32e72b1e26f8408ba94b3fe702302f0ac2cda49ec26b74869e7c57e9c597bfd6c684b81cca0f0029d041c558aa70171bfd426a0fbe7fefdeb23da0b249120302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310091e2257ab95cadf36c87476c450f2bca73209f6e9c434c50fa5cabef081f72bc1a54efa954c0d7e61b3ed93228bebca3023100fa95e284b6f2d358d359c26fc6c23f932a80625af566d94455098684ba9b8ecfa5067506991e78cd70f31acfcec3e2170302047c435bb5006630640230340e108ed94449932a0818294e80d0a27347e8048fa87c8fba31b1c038c134a16d0e797c96d6b0a35723229a1b9c9c8202304a170a2998f6ced4f7cf8ed1a0266f89977fc2fd5dcf36b258761ab2ea8f2e3e91690ea4aa9d5285fc9b11798cf1c2b80302047c435bb50067306502305f92016df360df74e27bf42f10d52df8481281599446472a8df4b8087715541631e2621b0a3716cb02d27d7a165e2855023100f0b6f745d6b3186913339288ad77ff1cec6c2440b1eeb9ff39b0e86fddf7a8b9ba575199ac8548de73f8ef6ca329376b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ae076fa1633dc3e9994e52b0ca1b17f5f11e1a1689dce7a86033ab273717b1ce7b0c38149d5bb5c38fde8939aa7fbf53023100e10eb35ce46977e1d4957cb58d58e8f80c3d092c21f3b1091dc15ee9a37194a816b237af701abfaa157f83e1dc2094560302047c435bb500663064023012d667dc2a4e4b5fbd5da68784a8834ed000464f574a546daab57bac8fa046d80891acdace96fb93ffbaa732e0a9b65e02304652657731cf4142687ccc7f4ba9c0bfa28c003cb0de1bede6982e345eaa264593481116e42ea084c2fb9523c1f2a7d50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306bae795fa27075485e49cd2c10ebd01a9da1492ddb2c898b9e0183e2a2cf4f9db3a53f1703d9e270a36e398865f13a04023100eacb1982e042b3702411f5e7f050901850a734f056aabe63a6ae8ff7c4d05387043a832d23aec1be8fcd7582c0f1b7610302047c435bb5006830660231008e461f7eb1e164c864735e678702fd01854fe4ffc2f574e0a8b7ba5307ad9354688b522f9ab84955e1b0485686621bcc023100ca66d084816d5b4234b1b366f37deb7801a2dc5d82d30ceacf81f32d7c2c8933f2da99b86bad6d3cbf751835f2f54fed0302047c435bb500683066023100b87acd614a302dad579d54f8fec4aa3bb19d6dee29bc97bdd39be969451df7fd760478d43489295d57a663689fccfef3023100f1467506d2c6daa1735d56027e5216055362ab3dbd5e46485f6d4a8739a7f711b54c2b5292ed00ed3a92c216b60a25df0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e9fce8a767162308bcffe2b071bc6df044d44934b10c846a3135706e3f1e40378750e644bc24ca74a8420d93138675be02303556d2bd8343dfa3c70aa599134742575f742f8fc7f35f31d16541fe9bb5fd46f570ba4fe0efa69b1f0c61516dcfbd4c0302047c435bb50067306502306815ed4623e4d9a7ac95743492f7216a0a643ee27ca5ab6f095b1880b363938900105ef923fe37d29d13c692fb5ba383023100e9bcec6201ee051720d6da18b157eda457722c0b0b0ab81ca5d2c66164c09578e62ebf0c622e0adf9912565b98f8633c0302047c435bb500673065023100948a6666d2869af9d924a31e0780df5d13cb8cac895dac208d9ee74f9070a139671422ac6ee0a27ea94d94f17e98ab4702302be57abdab8839661ab544b70f687f1ea213edd2605d6655ba59699626d1e329e2cb3732be436efef3838cdb5f34c1b30302047c435bb50066306402304d4c67fd43e02619deb6594ad9b64970cb378e6446498768fe41faa09703ab35bfe72e451d88ce0925c78553e56ebd9a023008b27e43bbfea4631225cc09546b651b250c067d6964daa55cf5dc1e91e8ee63aa1a17dc5228da639227239a4842f2de0302047c435bb50066306402303dae54fba360a39a48db59b892caef486793e041796d7cfba10e0d355b48c63921c6e25e803c767698a060eea6498bc902300c4a520b874fe873cc237afacd49b64a294945c2affbbb19a0a056fff911b10cb3a1d303def49288a0fbdcf9ddee68b20302047c435bb50066306402302024895a7855307bcc7d5302a0d8758827b4528036fff5f10a7c10b7aa3e43545cb7032683df4d988ade94e0ba524b5b023043ab24770e8fe8bd6b581fc41528a7653a9305d2e1514a91647e9a1cba5738579dca9b1f196808e4168cc0b4fa50125e0302047c435bb50067306502305a98448b402a3c2d122c1120070e54f209f8a833899f297c131c43ddbb308cbd6f2640975ea3d08568eaac8d65e1518a023100eae7e6b67e93dba0aece04f2c12721c1f980a37085aaddcd7e451a439f175aaea562b11463f6e809122d22286bfad60d0302047c435bb50068306602310086cb6cd4fdbf288ffe3285b4c973e2fb6719439da3778cac3e5f425da720fdb616310b0af832b1633c1c641888af7dfc0231009a0eae6fea1d15babdcbc9aa8830b916f96fc82c80b6c9342bf15c85b73baaa0d18a529604fa5e17646f8d497b0b3f8b0302047c435bb500673065023100f395cc45a45c23748a0a3268f2ca219ecf03a3288dcd2b2c1d23cc1bf5b9fd0678b978a68ade67cef70d7f2b823a682002304eeedbf08df81fc28a630d2c55f210596ebc202239030ec93b2d6e3daf1d48f5d3340721fcc27cf036297e6aedacdbb20302047c435bb50066306402301d052e20c3ae5dad7831f91c5120ad046c14e43f9a115b382a2bc90a57b3083f08089b68ddac01128f21cc5da8d2f1d602305a8879d826019f22088fa68b7d9e9c3ab0eaad5cd40042199a25487b459a05a9fd61e5cf941b0bcbb3ce0fbd7280fb550302047c435bb500683066023100b3dbd37cbb5b32bb6c81228deea8b55d99e24489c7fae6e42e1c350f1f0b07e8b1497e25261705726f73c55b769f6ade0231008450392eeb5504417248039d54aa4cdde7c12d2b4fe5831fdb4f0e620a5ca1c2e4e1a1250eb7f24fb454d9abb858a1b60302047c435bb50066306402307d3f04c8f6dd93fa123f89e7a48b4971a6733020175749da79109d4b89da27b25a9f26cb9abe3483ac4375ca35257075023051c08569b9d9eec825ba3b58c9158a54aad01630d6538278da29be64c5d46324933705b113face6e86540e0d7143278b0302047c435bb500673065023100ec2ca43f209b7bf3f46b1886331262ea32bd6c8809b04891c153174c10ab443e2abc7900cb05a1309a3d52ab5f555bf1023052399aa86ef63b67a1c16516f0e83bd61d3b9445e1434b4853318df4fd0b2c5bd135c01e900378f822414073aaa001690302047c435bb500683066023100fc116ac9bd356f07604cbbb4e8f2174cd54ef27685f067845c514548b86720a537407796b27d0f5c4bcc37cf47556225023100f8fd48c00e3bfb7f5b50cc7614e1290fc273a070a0c4cd464bf2a2e5ec129e2ab4a9f28a76b6c36c3cfc7eef9a7508930302047c435bb500683066023100d6bd383d751e139171c136d43fbb2d605a6e4e3052682a6d6f6468b29461179a594ca96a468b4ce5319b8c7051cc11c6023100e4eb7ac0a7a7c74071b914b6a083a9be2809af7953f866977928971a42dc7dd319c523d9281b5030507237d735c578a50302047c435bb500663064023045001cfd8dabbb760824aecd2582e22444207920d5d7ff393f3a4b19899c1e7bea8f401bfaef580876102a8dc046c0b2023058de462537456312569bddbf003371401ce008c74f42df67450550abb547c778362eb514e7cd9dd62607ab0d169e3e170302047c435bb50066306402303fbb5c540fe1cf19a14d4229bd2956edeeb74888fc89430090fccbc60c6256e31f4813ed5410f9f035f039e3ce46a09402306bcc2286ba3f4db0facf7024aad94b588469a5257a8c6ac8553fa400f3be7252458b32d85e6a8f3f906de7d744ea9dcb0302047c435bb500673065023100c1cd4fee7e6aedfff98ab61ef85c16452787f301a6149efebc54d4295ab6fc1df054bf7c9b538d35e0de490f418c29c102306456451673da37c272b48975d1eba96cb7aa7cf4c94a1f83599a42f6ade1e9d1fdb993263f62da77cf8542272701fd050302047c435bb500673065023050a716ca3d40633bdddefe94bbbe0bb3a3b0b11f39f51d12953fba82eb898892f291dbcd47e984a434a393848c722728023100d448c94a946a2a7f1a2ffd26dff23cbe54c8bba719f5f7c6c7a619010bc6a9ffc8bb5f47621dc09f63e9567ee183a14b0302047c435bb500673065023100d4e2d85863d26bf38ea9e8ab2ba1a465661f8dc02330d5b3ba746f27f42a79886c33435edbeaf4d2956e7cc7f4c14f8d023057b6945f20dbdb150b01e9cbee8b4c85e2a4d0683509785e8e59a4b8522090a7b7b385f304c1ecf7cd41053d756a6b840302047c435bb50067306502310099847caa84450801d16c906cefe9a42904ea3a4438cd4b60b283d2ecbe1a602eaa209bb4f8ccdb508c15f6fbff31050e02306602f6f8a86669f3e786a43befb15495cbd5c66a24be2f0a48cc9ab17af3f5b65dd051e18f24813bd9f4937c96dc72b40302047c435bb5006630640230270d4314c0e04cf156f30ce07874dd65f70ed7d88573533a8c210cdb79256f8ec4af9b9057403327030a893e7691a20f023010c242a7b91083160dcd2cf9c9e1be60a5e79525e46e6ed0322c95ad250072bc9a112d80c22f3a941143381028d580390302047c435bb500683066023100e5b1cdd114896d0418e822773a8feb16cad2299ad529de0b9f98c2b0aa48aa596918ef219ecf3d25410680902cfd8c4a023100e644ee1dfee72965d2864f382037f9dcb12371a85e72c7d48144e0966b0e8a78be92afdb1d75a1f17149d0c5396ca40c0302047c435bb50067306502300423cddaf39e6fdbdda565e1f5ff4ba02928f546410ea7650d45d6b4ad19f50b577781f649b087a848d12c8566273240023100ace3d1fd0550ffcb707a66f15ef5938180222f02a345f93859242e64ffacbd53f47e1963a5e89c2953b6908b209245b00302047c435bb500683066023100a188f335c27d2c49d852404ab8e12f2105dedb4cf051199e0b7fad962983e4df3f7f3bf213cdb7091a3bc3ffc96c4e1b023100ec20e448c6d86badad2d4ce0efb62d10f8e1d6fedb85a98453c56c8516a1307ae80301b4f066a366f74699c9d0300b980302047c435bb50067306502301132432b40ad1fd52b23b9bef12412012a7429e8808a197a39bbb2baa8d90471cf9ec7a33abf0ed2aef28bb5247c837b023100a622b149572fbccfc2f5b74a67caa46bb738da5475165b0a282a355a9a55634275a600f0c9ccb20d6603ddf698c8c0e50302047c435bb50066306402301a7c50d2da12c2a77e5e23f1d728cb800802f7f8710e125e67c4b028aff1a23f0b74e7482be67e1b55edd43f168946a4023010eec14934ab0c4588bc49c49d112de5882802790f561cbfae761db92e96812a1e9045063e96c980e87bf0ff88587f8b0302047c435bb50066306402303bba6e4c78de90bbc3aa3c97c0eb23d8a4510fbb66b79c6a519878a16cf5b132aa49f2e6c4c3bb2d5b80aeb426190ab9023006e342fae05b683b9d7a017df74ec1c2edb74a6405cc8e5a085e87def0b3b1bc8f3683cab84f60618fa4a0b0ecc27cd00302047c435bb500683066023100c43efdc17ba3490f675f8e02cab91dfc7c5fa6b4f8b12a19974cbe0475c23c5443e6dc694bac582a95b83ceb69ddaaa9023100cd194cd96ebe6d84b99c14db9508f421c1cd5aa19e588de0eb21b0fbffeab6ac7d67a393b5e8c36e4ac7614f7cb2a7600302047c435bb50067306502303cf381a6d2862ed0a3c44230e3002da4ea3d73d33b930a8d9ee2137adf9179d86d44b634ea96be5d671c3abf5dd75d63023100e8d102e7b0db678a46d8b9a8913fc690ea39b4f80183728b27b193aecb3115317f5898ef2cb181adc8ddb4aa9829d7ad0302047c435bb50067306502302f4392c25bfcab92dbdd05bff47d26e28db0d29d24d864dfcb5504530a590407377ce65626a00f93e0673f0861318086023100cb50bb5ad8fbbc79639a29048097d2799b7944d15803bf1f805f736fd85d357f6d3c1929b805cbe9f084cc66676b36110302047c435bb5006730650231008eb3bb3030d98639ef1e9fd9cdd132ff3c28e653ee8be992a52d9362043bfc34aae4f4696558f1828d757476605ee2f602304d34c9272c9d95efa9cb07d31fbf7d2d1e608bdab4b4f6835abd8f97045d76c2fe81fe825b445b380bf7d102a23ae9140302047c435bb500673065023100a6fc89ad0bccd58e8d16841affc90adfb05ccf2d339ae92a8b9ecf5da5bdb3b2734b56e8ced81a3bd2b5d01cc2f8ecfb02307c8f0f6f3336005a88fa21ad2e1f8c966bc5bef27ed371ec1fa3c445c1fa762f9eaa0ef48c72c84d58ab60d6dc718c610302047c435bb50066306402300db170d9e7c381f25edacd9a1f726e707bc6cdddb85aa956265f78fae4f2623f21db14f116df5827c245ef94b0e82c6d02307b8d78ba6b6b47c2b52a4bffc4137c0a0fd02c68998db38005481c140f97cd9a023f2f76089eb118f2a1a937cf98ebc20302047c435bb500663064023006a478a8dace38a7e02fb5c1a988a4fc14de0dad97eba56f001dd36dd6303987c4d2c6511e718cfcce9e10df02dd6cd5023046860003d54eba07c1b3cbf974d3de77eacb677b176d74f2b32b596bd2b60e70fa4e47951f305658228f115721db749f0302047c435bb5006630640230363bafe6e4c4481d57f24bc45bcd1030062f7c45bb6491765bf6f98d19f860a2abae4c89e5640ad9eb61075314d05d4002307c9c82095f811a5b8ed7d776283f11fab17a81e169b925149c4267509e153107f1454de09bbbb8550c5d0f580624e0e30302047c435bb500673065023100ab6da9853d75e413178aec5ed37c16637230c3b345b694da84792053dcfa2480a7d11ccf5833ef79a3bc2b463ed6ed2f02303a32c977797e29351fd4d95447d4cb6a2885c7fd8abef241702323dfc2eb3398f1b961ab9cd76d039a1a6360300932c60302047c435bb50067306502310094de3af83b844d82384d561fbb5d3e6248edb3ef2f23011878635806c7d5e8995fd20bf95ccc6cf054a08866eae565a002306aa6838625c7b0cf3500bffb9b498b9ebc471c6804cf09d62f779fd912776c60a1d4ed59cf4a410d700786489a9fd0aa0302047c435bb5006630640230399db6699e6b58b0b5a0d436998dd01d182d76c6167cde93309bc3e5f23022124625db4efab26f26070499ee22f6fc0602301563f357d2b36d8bf52d63e920c6f6958cd9df05cd7833be5434296ba86b1eca414f2dbad1b672e4f3ab47ebbde2580e0302047c435bb5006830660231009a288a57a210eadb39c335aaa8da91de7c07d8f2285c28503683bbb9c8dcaf687aeb89344215621a625cf2dfd02d4cb9023100b7cecac33e56dde180cad96e50c4aa0ec0d4bd567a21ffc283d695f0080040732c4ed695a171d01e06e4dd879793f4b00302047c435bb500673065023048c1011a23d30350cbaa3c49372b71182d25148e921be7d748bf44b2d7f0ad5bf5b4d0d02c084a7b099c3a1d4464ac0d023100d1525aaddb3f9618555f7d30862cbedc2ac23ad285349cdfb442db89c09ae1fba4a6b466748ace9dc4c496082bae2d590302047c435bb500673065023100ea665b4cdb2412e774e1e7ad408bab4339e214ad39cfe0b4d59469285e4abf71cd2cc15efec2d8ffc2881821ed2e1d80023051bf39585963161fac8b024a2aea96a3fa96e048790b9cb9568af62bbadedb57437cb6c0381882876fde94b8327ba67c0302047c435bb5006830660231008351a997726c3a38fcdc8ec0fa5fa1b3a4f08d96c539bfc0cc7df0983253ee7c024253fbf7b5de5463fdf72552e66e86023100bb68253080562e17373ba25bcc04d1bd5abe0da81c1b7a98bca9639b1d1bcc2c6b5a61dc46f68555ace48bbed78e3e040302047c435bb5006630640230262dfbfe0c3f809ea91a527c12f0f170702e5beae3bb017e9a4242cadeb54ae6edf8e47a86b95d0368f56437bd27667a023057189273687a263210abab497d7103ba3680205d8b0d419769f0539acf48425d947f1a1489a6275ae11e091092e2055d0302047c435bb500683066023100cc96099b10ef9b669be9c5146868974d6ea8c2559ff203dfbdde069f1ea44580a47787e1907570412d0c6b1d705cdca5023100fd46aa1eb637c21b15e2fb1818b1cb2b99494a90eb769981ce929277abe8c30e06a9655e0b16a5bb99dd982b387c363e0302047c435bb5006630640230398ec2b061d21cf8d72ea19a3139a25d793abc117085185d7d25ab659026babbaa60fef366679771f160bb42c55b2f8502302aa1524cb510c85aa68ed9727f7c39107d0dff56026d2366699e5b51d152a3758bb251dd8fe2f139632a777e739f70810302047c435bb50067306502300f5c449f5ab743ed465d5379a06532b1f0635d3e3a3b957b058177cbfe318c46840b0c333c18723befaf38578c9b629d023100f2cb85767d5c82d3a083c435df9ede1c794d07f0c2c01f94dc829008cadf7f4185b4a099faccf5c3a5c7b77a6aa796700302047c435bb500683066023100d1a51becbfab02a5f64cc10a00b6dde3750ee9ddf4ac4d4d366169a36f1ced4af83f7cd0be291da7667851493292a81a023100b2fe01d40c55c8ca43424a718e394db46b4bf50252c5b861ccfc23429c4228ed3444ebd78d51d48a2ed14fb64957ea490302047c435bb500673065023100ec059a821521b39607ca7e5ccaaf0dc3d34311db702ad630637eef13528ae0748ac2c8db87d36e3f443cebd42304d38202305dd571565731f7d37391112cf1a04fd2b379c9ef2761a7ab775abf0e57be1e42a524292b8d7d9f93c28a535fd82015250302047c435bb500683066023100b38b0d1ba02caaae6984eccc6b59edddd8978c35c36ddc4e3b8e0f513160aae279c63b1b622f3ddc344c3e9f0c08f3670231008fd514bfa3f9caf42685448df11804bf6471d3ae93ac187febd81429a406a8d8bd67d7d0aebf90ad952a2fb779c9cb160302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230048f21ab92cb702589e73094ea842c9cc084c4f428a8ee5512264c543902dc813d46173ec003f817985a4b9fe437a11902305747d93722ef4babc862be72e7f3a38d2864699c383eb23a181458cb9decaee543e4aabf4320e256d4321e99587595240302047c435bb50067306502304a91d2db5b84899547fbadba3f60036c233de8fd5e0f4286a344498cd204046e1fb42d2f8bb208aa6a1a0b97400d9069023100f95625b40f632a8a1681f989e83edda4c053be95bce210743b0149547e7b5876293a2c54b6f13463eadfcbcbb5b4730e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c163d88cdd2b7b75b740df8910eb985a17303452f1ad78c8474b03e9f773324e86b1d0b905f3c76e92e479f7b67a3302023100b98f4c7e87f3751c95e1fcd5cc55fef9f2159c2f395f11de37902c6c4d2340f1dd4069010fb921f235cbf2e7c5df61c90302047c435bb500683066023100d6bd291dd484c29a3034bc8e86a11cb016605860b0bbdae9a6e47fd517d9f55380b314b0afd60d66c25a29c36cad8a4b023100d7ff550add2e75a44a1ce802b76dce7f9757681e89965c2cfb142c0c5390d2fee0e9883c81e7ff4d8f3e2f406095782b0302047c435bb50066306402307b03758170a15c02099916b7b03e8ae1003a4f8e6f168019470d967feede471f7a6e2344bec55e5de4d26d54f34df85102303c4e9d37cea41b6a7047ba9b07f355e4b6d7d42329844b04245b45b2e6a670d1c54947a70bff46a6020a04ffbd598ecb0302047c435bb5006630640230171cfd6b3f52fbb850b782fe26a1ffb4e4817b942ea11494a3ebe16b10b4a153d3170f14539c2148293c12fc60ff576a023036bdf6ca796524cdc8cef0367a7081a7e00811e3f0fa85bc81f3c763e791e95b54ca34e85d746f9bdd73e7080c48eb690302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a1173f6a27eab6370bfe4cd440e9fc9e8bee988022ddf4d4b67a9effda998a56ab480118df09855720b9e4795a6e7d06023100df6fbcfbc368a067625402a399cd733737f1479888467627d23bca6f298eb40dca9d0446b385aa09ee0ea167d99730550302047c435bb500673065023079db230848021031e48cd430021c1d64fd79022bd27422f3bb4808b72c755084340aab560949354a2600f20fc0d9cd00023100bd5fff716cb9b90315893524fcd6b4081e2b7246940e1d8be80dc76d7647df0c852699879ebeca38b2b239d23fad231e0302047c435bb50066306402303d0c8e0a9c4b66daa4b8b4b0e06adda5c5cd2a16a4c7a85392b9df86a64448d706a0459da09ca386e79b453cc5fe5e58023058e44502569939ebf89329d65bc3cbb5285809adac3078d87816b14b3a00e1e43e23844470cb4406fa2bc5d2ebeb890c0302047c435bb500673065023100a697e6e000d2bfe298560ae27f56a99871baecf82592f586cb44e817f556b7782878add14a6690ccb2f914dc41f0910a02301270733e1c959e1dff68179d995f7d6a82c181cd1caa274cc6e0e23f3bd1fd1e137bee17856dd4482608bb75a5c819830302047c435bb50066306402300931693fbf33b8ab62a2a14ce07f105fde5752259b007fdee6adc5c4f5c61547bef9f2c5512caa211ad52f8e7f3d74a8023067eb3abccf9c7d8eb034f143f381f93b213057131cf101153af060553dcaa0883dcb1e8286814103af46ad0f4089fde90302047c435bb500673065023100e87505dfaa5812b60f432bff7799ae36a43d6c2c60a8de847b24523f10eb6d232d81dbc4a83f78e022df50081e6be61002301715f2dfe6325586716f220213f792b1297b56b61b16167489aa020ffecfb07e5b863912000d469521247326f9a9051d0302047c435bb50066306402302d606b32481cdc7a256839943e8d9a79c9d641b55af0c3acc98e6e673c2298dc0100c8c3c287a06de2862a8816b2955a0230571583ec45380d70880f88da26b38c315e1c5e358bb98af35c66604adfddbd6dd4b0eb694b9ae57ddc2e412f0464c4ec0302047c435bb5006630640230552e055de6d066f2e848b824fa028c9ceab22aef5562ac0a6d70184e6a0fa39cd2a95bbafa98cdbed25444ab7be2885002301c9933f1b67a91831eb7a633929a53d4f5d7e46ed8ebcc8dfd31dd720fce30cc77ec59450c0ad41195d0bfb3325f1a4f0302047c435bb5006630640230419ec5348f7be227595468db12b5af124632df3fdc70b6d51b32a9939a12546260f70c4b92c22dd997fd5d25be2b4b7002305b18fffb61cf36fad124e244677e537edbda2e6ff9908e4ecfac88847d1a896460ace1c57462a3c8ccb07af63d393ba20302047c435bb500673065023100c71dbc4222b77f25b1480a59a7c067d37e9da358cbabb7b96ecd194e8a9132321ff7ff67d22674141275a1142774dacf023005e53c0d5053c737c5a1537d063bfbbdf739e76d963942bafcca28815a213a2698b245a8391c80155883db7d6e8bffe50302047c435bb500673065023073be9fc8c3a2ea54b4f803074e5032f029a3ec0b165f34ba09f224f1a2b0d4164d9e1b2989e6087376b53740e210316902310082d7dc96c805e7a88db1d3500ed3ebfec9128170cf8bd28fb67504d41e87c374139ab9456e93a461fbca913bbde7eeda0302047c435bb5006730650231008e1b9760dd98ec05a0877f469106bf53810d7af502e02baa4285a83db83b4806a1b1f2c3ef919c6669c72030f7718a9702306a0d2a63451f7e2f45ae49455441ce1ac3767cb7a325e3a34f5d40e9a87a004e899c3c91fde5b4c41d600780e6be8bd10302047c435bb500673065023100d9a94ae2a85703f45e2f025faf6e5f5f3686240db858115f4176e4ea6806c5bb375618d0f8ed6cc99b92169465ca8a34023045edc31c9874651cc1b1c9e3d04c92bc7291c567da37db70f809573b1565f7d1212308106ce4b81f7ac1dfdb6d32d5fc0302047c435bb50067306502305a20ceb60813ede6e6d321cb936e83798d4e9f7017daa85fd1aefb30d360d9b4c35a479ddd6510d0590f543195328367023100b6b60b3d8cc533d6d3eb88cdff637b70dd132776fe0c325cebbb2f04678b56f900012b4f30fa395cd51599e4fd377c4b0302047c435bb500683066023100951100bd3c03c918c414c9f1005fd138ad438e2cb887d658e71ccb8f38bcd82d04355011b34dfb91f03ca73eaf110b7c023100bc504cee4e7764c42b851e04c91c536283308f25095a0122843adb94fe18da07c57006149697068058da030a41146fc20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b110c3c42e4aa49ad36c4b31d6349e5e4e1e1ed91df569ebda0efa5359b6eefc97cbbfa48f7628acb3687f6fe612214d023057bd7294199e7f28d4bd07b990b7458ec536ac12a1be40171bcc949e4699fc37b66cd35e350dd9536472c99f994d80c30302047c435bb500673065023100c1cfdf5ea05ff4bd8ec0ddb1c1ecf143865c35406b22605cb6d61fb1e59dadcf04a13e93a6cc910abb966502507e19f8023014435139d94437957953fe96148d699472d2f26932e1ce23f2ba8b106d6ff64e41d8cbf8a7058d492d79bec4521c0aa70302047c435bb500683066023100cba9d7b1342e4e662689b3366ac5cbd172aeb24834706a821c9d1584b88291d11ab1bfa73480f71a8a79bf4697e56558023100fca4bc17e088a76cba838344a7d2144b8edc586175099b9508944bd6e8b45b247bb4be5d3dd6179975fce44a9fedee1f0302047c435bb50066306402301ccded6dff627dd434c3920cb9e630662631325eab0bdb2d43f6a01cf9d0e461da377f5e6698af0ce5d8c49b90ae0a44023047ccdb430310df03e0f55b535c7a2da889612c39925b2d200e2d7ec11a8fb3bce7cb70617fdaa24336ed4a7f569a9d0e0302047c435bb5006630640230031ba89ac004551eb567ac6631962ffb62f78ac85a9d81795ce49c35c593465b56f051498bb1c3a9398e860a6af507870230571f47880a1524f70bb4912d826c4d23bb40148a4cccc9c390e7a2c09e6f17d23863fc18e7edcc53fcc2156529a42c510302047c435bb5006630640230010e8262dbf3137ae160e8ca3f60aab0f4fe76d1c2672f924115934e9830318f51159ec93dbd2d7edc685d47c25cfcb702305b529f5496cb0883ac957c2bbfca987112427608c77e7c5676e83169e4b65eb102a9303815dc3ba5b97dd64df40b69800302047c435bb50066306402300120280ed5db75736787993c19f765215bd366cffea68040bb40194bc0cb6d23b077bee3bb9dcece4f79b20ce238864c02300173cd1998058eaaf5a33a3c8847f8fd5773165dbbb162d6b747284b35e0f9f9c520055220725dbe0417e97a3194ba1f0302047c435bb50068306602310081b2d9353323a5d9ede893bd87afbb89013b00c73f57bb912dd4d78285100aab820563d2ce7b9b4404f7894d1830e0ec023100b83a0ff6e94610c099d5cd20d8f06c609b19ca2690934601328f2014e1f82355b508ccc1e0bbe3a7d10e5ac8fbf952100302047c435bb500663064023045079a9bfd4547f96cc80be38b44cfa3de0928ab65a3beaf5be4c8bc1fbefd169f5999885686b9ad8e559b367b094e19023047a9a2bd291a90398b22ed74d26654ac4494b08e8a929c6297998eecd2656b704bf0a2b3d074be2b91320474e1a0c0330302047c435bb500683066023100c02729cb5a0e68e35fe5988a0fa70d47cc1c4eadd16bfc84daa3663e92ce79254c7269d95f3b86c1b5fe434a4dafc82d023100d090d7153b8e298c07fa3b9ad7c58d62cb4547ae0ba12a90ead4d9a08c5497f398b6bcba7866e086e51535126e5f91ca0302047c435bb500673065023100dbfffbd790155e6ad83394493a422d1f56c21ba7dcdbad5a74cd65ced607dc480685eadf40194bc492a84ffbc1d37ab502303548e2bd979f2e9b1abd85b534ab8ba19ed92792d95964c160504f651b62ed3ef0e7e7998a6d6f7055e7249cb877f6b50302047c435bb500673065023100e39f140e4b5f032a9a64fa5891fc5472014552c32ce7b5176c68af0d5ec003871b75661bd51edf7296edd3f0bde58727023030c617bc0655cd372f00941d1c23729b23ce9f66a5a057a29a32054402c6d07d1481799812638571c8cc1e7e0e9b76db0302047c435bb50067306502304fff4ac0024f4fb357573aaba7cdffa2444c6baf958e165547c2cce1efed493373ecf29edeeaadab8666f4b91d01a9e80231008b775a3708bdbd4dd8b16de742fd2061ded7ca06ca927cb963288d2001a33596a2ef4dc59bbe2ae60fdc89686f9bdb4c0302047c435bb500673065023100f756d2b1e111f5bfb576842803f3e19848bd5eab499ac3237ea3ecf89215438cc2bdb451553c5a8960304636e8fa9330023073086acbc148d4c9629a63b78ed3d53ad8c9e984c2e65ce678bdf9bf2d4ac135fa4c7784e1d4021384c445cb299676610302047c435bb500683066023100c0cf9de066cb35ef03decf9bcd8668310f57a29a8e5ff036e2661e2c27ab982e93a87d9e2e26b93539b0a45ef5dfe129023100d7187047b1a2ca645ec9041bf83842a60e0774b235d46146b6355b1204cfe21626acb8ea725a8e9e36fe899cedd322fc0302047c435bb500683066023100d89b269d8e4fce81123b10657072f279aa9dc1b0df9f2c3e08e3022ffb845adc4ff520eede99f1f314f4a395712ef255023100bfc24c6e7c96fd391b2f420e1d07c8a6089d9ab4718169cc78c6e1cbb10aac45a7884aa5417597f1017d811afa248fc20302047c435bb50066306402301fd31622375619dcf7c3ea579b7b4080f868fba9c891d3d00ea6a4d126bfb9e6c7fe1f9a3e0d4258d2ebf6a497240072023015ea8b429ca272485c041086340abbdfd823dac31c1120e4a6d55c3fb00a47f63a745f9903551ae9ba3bc9e8163478120302047c435bb5006730650230442714431b0d647de365734dbff6a2737ba3a1ef85e7f5ad10bcf6d33a9c0198c915e763f3a28d7768fc6360408572f402310089a00fd644b749cb121516c791eb98f206e02ea7b64cfeb3a941cb2e1bb688a973e8246ef12051f792494f3728cce8870302047c435bb500673065023100fdbdc67c6cdd262e5988d4bd8fa8cefd2d68d3830484e80ffbe1cb70dcd28793d7a9faf7abb134b3b3bb18c7242b35080230329c7b8836fbcaac6e7d14ce1464ab15fbdd6588e69d56e68289e27996d81048026a032b7bcf306fc4356238934107f30302047c435bb5006730650231009e34ded6373f5fe35ae306cf1186ed556a899294fe4b4d724cd36e1c11e97d4cba6e7786c1f765abf635a7c50837445702306aa48f18ba53272aa736fa1d1850545b7138e006603bde9a7d076d60ac7f789af9f3c2a94752f501562a1ac13b468f360302047c435bb500683066023100e6196d5dd607ca1c95dd17ced81b060f0c7a2b5c719067966e09070a7fea69b07fe3ba11d36494a5a0862435a37a33af023100f257df82493dedb20a8fcdba43be86217da22a285492e26cf6f90485cdaa691728367fba361565a78f45e6ceed0630c10302047c435bb5006730650230387bb9e0b9998b0316c0e19567d952b5f433c14e862286449bb23f940d43a05d949f30a6e15b6a327bb3473c18877506023100d59ced14e5e1497473475af96f42ae2fd6b954e92468d6456d90c2611e9942da37a9c84f5f30f4a153b5f4eec408a6b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100858ff1cc19bdd290abc0d525c7800de4e287217337a627e91c1c734786adcb07296c1dd8ce0a488e3a36986bebe6090d023063bf53ccc3036352600f3678eece0e3ef794fb3dfb88e1dc6227e121aca532f5ecc15422cb751542b2c1432a586fef320302047c435bb5006630640230370e6bb061877aec895d340f4e7cb1a1346bc751d33b19a1139b52ea49f9e254585621ee4ec03d5f7a78daaac08fbb2c0230692a19658a23e638049871cf40ce2607651ba37647644ad302fe43d0462d55625cb47b16ddab644b2a491aacb6106b590302047c435bb5006730650230325df4de97d3219f4308cb2cb389c9f9e378dd2a6147c227b2649e384cb28557bd2df1a6121408139072e2e88e8e2b53023100f3b2673a53fd5877a4de8f78158f14191dea2c6914918f14ac88504432bbe1c140302a5045eef33e43eeb8832a8cc2130302047c435bb5006830660231008f6eac191ede60c11d12056fab34456dafd5558c08f432bfeeb6aed320a71592c46c3ae44754a103161c1061f5811a32023100d798110080cfffdbd4f4e884b3a3960dcfe70007b60717bad2a017a1c9e46a76b08c9faa52e7b65c4a83dd08f6f8df8b0302047c435bb500683066023100dec09f1a09db1f8650fa478924d39083833aa0643ba2606721342eb45f80d5fd0ccdc364d01ab8fcc75c6cde2376c125023100e330f37be06f9a0d50ec76ae4a14a5e44e1e4478b3754712ebbff0dd4ffaf87069fc686f60a72e51aca0736bfef728530302047c435bb50066306402305db4e402c60a74132f5463d26d7fdc7cca91d82ddbf50dd5c7cb4fa336e95568ead2afc52927b0281a9963798bb89800023036c3b9e304a1916077d4cf66879ea9b2ca20ee85f5ea8a4b9c0c732aa75b5b39ce1b3ae78db4373885986051b94f04760302047c435bb50068306602310084c972f19f962b13ef97401e32974423ab8a653077af81a9efb897d671661ab5b22c1b665cb7f572c98e85a0ed6964da0231008fee5dde91a6d5e5dcbb136cb7fa53c9d5ccbb121ee03e6977c7a8cedc46fd4c2c554720c5726b98cc7b0142d097fbd40302047c435bb500673065023100bbf907ada6b1e48dd432f03c373d3055dca91a42b741a957929c5aeb71c5b5f02e9a47c23609f53affb242a12c4d13d8023048b6b70b9b9da1798dd23e8811dfb77e7d2409a81963f648b4bbfdf3b2d8421bb9b3fe6d8e751709c275d2ddb95af82a0302047c435bb500663064023001cd03761b6ac7226b73985b6c32cbd5656f5aba342cd8422fa5cb312ca3dd2af597041e2b4e121966b084f0d343cdd7023036a59d4b53d280aef4c0120d3855a17b0ac383e926259e54cb914509bf82d578054e6be7318dcf0cf3401cd3fa4a9a150302047c435bb500663064023046c11c60493381f625d6934a0c5f104565ae024e11817dd11697d4ac7d847f0363f07c9e2d3b5d6610e4087f78dadb7d02300286601baf5b772c2b4b919ad68376e5ab3770d36914cd0440c886ed320eb9204130a40dd70f44b28433cd9a59fff4e90302047c435bb50066306402305563ebb248fa2d7fd8d7598903066e0fe6dc6cc9e45a9fd5595b4478cf218e7194f3d319651f8172d078bb5cf169d62802304ed906577607aa3b5a4da7ed2573b86754e9ad9137fa737cd662ba93a4c92abab870af69407132d6ebb8d8f612ecd8360302047c435bb500673065023100e51179c9bfe5a2f32e51dc4a507db108fb7208a5cef187aa80977509ec6c0b2de75574ea7ce528410b7e4f998e8bcf2e023068999e1fc13363b2195190710a4dd1272dad110c1a1b6035eb9e9fe3cc60f97f989f59c4030eb83c70d33284140854bf0302047c435bb500673065023100ee176286c23d2a74c334fb9f949829ceb1925a8de045ea221a569718b9ef06a72f389b77ebaf60a088c25a116b016ae4023017a76d01fbc9cb42c77718df565b96cffe1c815fb0346b5153866198f64413115d7d75336a86a1ec596ba8dffcdb909a0302047c435bb500663064023011626fa61053042750c23c4ce717410fb9b5877568dac8ffa54add3da6f98e2b5bd6c72c8ce1a5d9fb17b9174c39be7e02301e9b5da606eb54c1d45383afe2a780cdac165830cfc2ac018d7ed524552975b891949e7a9885fd1c3385bb4a84a462fc0302047c435bb500673065023100914ee8243183597107ad033757bdd5c6146e0e0afac8af6b228055860c4ba68902fb4408b1caf9883e861105bb2529bf023028ebf21c0da965272c50f8cc8d3eacdb50f3cb8048ae0ed53c4dcc94feefef889eeae7c22cac1d019e689a3064d17dbd0302047c435bb50067306502304a90b8113858fefb1ab377af226e48533d27f983504a62e15009aff0c54099797f28743c00a274d9831887a30c262c7e0231009c73fad4beb8a091b7043b67dd85c42eacea7739e49bdad1cd3741fdde47aa132d948127cbddfa02d91354c63d06cd840302047c435bb50067306502305017ee314eb49878ad1d997e853f645068b60e9cd3e1e537eca4e8074fcc87409e94cf1242ab34638179e712ec91146e023100c95b9a58b7c2c87194bda613d8571a1480b5814291173b6e099621ac7b7499623162af80ea86ab32ad57187a0222e85f0302047c435bb5006830660231009d18e384455cdd94eebadfafa9d00be0e212765ea5a9dada8961a0b331c77984ec7a28941748d6dea608ab8492868781023100b81f32259a486a7500eca2a52ae8b31eb7c52ac86dbb7d16843b4d625732cbd4c56f6e449676753a6eb80d925ff4a1ae0302047c435bb500683066023100ed8afd606727da51495ea4d63542d100df358279a7bceac1fbd7b330b48999ac5779eb69314a9e24803669ca1aec9578023100873e77b63f837f5196f0c21bbd0c3890f3dda3caad3104a69bfcf302187a4ea08fa922eac0c0e303114bc39953a3541c0302047c435bb500663064023051ff8d6021a4500f06f090833c26ff0ab9781228af760fa5c50e957e1e9e4f437c22bc3a17bf2d764050a1bd941806c90230386954d65cef6871a08ddee865b06f49bb754ab1d9ad7e03e9f4c02b4d9d8da5dbfbda3a1339b43b5bbc6575cc2455a50302047c435bb500673065023100eabb0992067b46b720de64982b41599a574f077d25ce396eaf8439946e72b8a8bf4bbd3c4614971bdcd3f785eeb4ff6102301eca060b1b2fb2b1da9f4cad55ccbe00d2b29613f3836aab6ea972e4df06d5840393e2efb0927be4375620255789a5450302047c435bb5006630640230663a8907d3c55a9d1f3dcc4bc0608bbfb7ffd3073630923b8918ebe3f1d35a02cc88fd71e17837428d5aaa807640682302303ce25c97e2b93f727c2f9666e20cccaf776a6fe0e5847df67e39f7c80ddbd4741c6bcc7e3b5e737aa794d4ffc748371d0302047c435bb500673065023100dd85340d17c71cda4b8e6db28cd74b1b2d97a3de1d11b61d961429995162ee637122c99c254abf336bce59a7de353d37023047fa502cfbd4c3a0f172ffd7265a62d33a62932e13cefe9df1d71d4099a32e2f59600dbcc128a6c758d669fcf81548000302047c435bb5006730650230572deb3e0936df3911d9ef7f9c6acad8bb50ee6d07de9089bf4368fc17b321a14d1ad8958b98c023090f69b46f0eb47c023100af0a29675469887d1ba045d11dca4de1f675e8650d978620fa6c08cd596b84de5e9fe7625b79efe5082b17182d3460fa0302047c435bb500683066023100826cb8af4c7abd96432a90ff681eb294bf0158a2782a2791f4d2680a74f108fee3fac24478114fc45929824eff5dcf67023100c5a900376238fc8008dcab9816917ba211d2a7c9472ed986e8cca898fde938083694e87217ab5ea0fc60e82a48acb6610302047c435bb50066306402301e05ddf20c0cf70d70912e375784ce09d50d59763f00cc20ecf5fbce9013250d25214318ac0472b9be23d79f128bf6e6023046abfdbee65b047739c3a8cc466f3a736345655b221edcd38be9fa5dacaa56ab352d6e93f321507fc57e2e83c06510210302047c435bb500673065023063dd095603c5c4a53541a9d23170f41c1b44c5e1c8950f72ff60395ab63c9eada7a8d9bec863a8f4949c681e785d7a32023100c8b34049ab9b98ae438b7e6bfe30cd14c22304a569d7eeda489e9193be81ff1f4c8c654b4fc4bea6d5a71d99a6ac24770302047c435bb50067306502310082e89c70fb80825007cf024ab78c7a936c1a18b59f4230b89d687f5a9e5bc42082e5b2eb594e88e3b465fb943058feb002301c3b60dd7bc6341045de78cafd0d45462498e79a2d27b7e3795016225003cdf09dd00ede435b49640aa6b11178bce6410302047c435bb50067306502305f3fdbc364b7400490ca3fd57538c55c7d6b4b4b8c562ee4cde794e35dd1f53fe0db1538fa8cfc29ac4bc57d6676cba602310092f9fd504a7291e61bae2463f684b70bd281c33118d74a2856d918e2d2862c6d8856fae63f5b438dd815884953289d940302047c435bb5006630640230738ee3ecc004c214a893eddbc4371ce5c3116cc1fc62b0b7dcc4bfccceb72e9a223bdb336e4b20a65685fadd1a68bd130230427d713c98c8130ba0661f89d733fca785401ca0d0e7853834d640db63a537f4e24bc5d717832e5df3ab7408c7e621c00302047c435bb5006830660231009cb07969cf4f7d922e41b7c4dc6ba365652d607455ff1dda3fbf7adf34a44e0880c043069075a897cd0424de2646f3f2023100824c8976885d88470fa5093fc8e9171148a6f38698cf9da1ddacc06837037c8d38a9a3559c49565fb65f9935669aafbf0302047c435bb500683066023100bc49d619b2af20cb51d50203bc34ae9b9150375bf08a7dc84c67f3f21e1ed34b99d702766153ce2eeb2e39e59007a996023100bead021d6f337a855588ed9a60a133ea71c7f8000d474dee141270733466d34d45aa90b0cea758c4175f2d9ebe98318a0302047c435bb500673065023100ded6179d3c125ef69a1676ee7ce4620b470e74fdbc412f301b93384bff0db4eb5fb3007d3cd9800d277924f9a4d4f4d50230194770b612618e4c16a88432d5b6c14d27a066e13ccd564924c1e1bd3400d24f62173f28f30d48f83b368b6b1623dcd70302047c435bb500673065023100b0185f2d6b6b491fe7b5f02df89a1e8e08a30feb852a376ba99bbb4903148474b3be2fc575efbe22fd79d2e356d08cf302301d006c98a02a1845a90c18bf1223062da1111ccb47bc0128c0fa776c7d60d5b0c7ca050b1711fe79a5b14d9cd7d520f90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306cbeb576ec6866a4395b5dbcafc79b3a698e307b5adc39f712c9ab5cf5a4cc5feb3521f6af354c37819450c49e7c7dd1023006c331e38e1442da6a80dbf346be3ee43ca8d6861db8a829a684ce934fa2def5e8d4eb27b65e4001834144069116b5d30302047c435bb500683066023100e011175ee692bec0bd6c39c1b353b29c068a1284fb6ce20d1f24ea9426000468fe5d94c40705e26958a8f156f98a9f310231009ad842156a4a7ceef22bd2a6cb8aa939ee685717ab4041ed9e205611a57d15a34b32087f462823b5ebf8a1adc06568fe0302047c435bb500683066023100b1bd1bae916600015b2265c91b18ec3329c63f49a9065947927ed455bb22e0b0f21d0696ff1b0abd87cc3116c4b4fb1b023100f610103f746c3caf9e94bf0e64233c5c0bba1b466c0ef675f1c4d0c58e6f46d380818a3d9fc072f02b090e74a78788d20302047c435bb50066306402306431b85173a787c8014cfb890bfb25f7a20f1ab6f03a209c596f6959538d0ddfb8a4d2ca7d679321a7e9bc11fc6b338702301fa89af712edbac44f9be8c3c9a03ad10cbe27ee0199600c8b87fdef6976b288f44700b87860b4262ad31c10b697a4f10302047c435bb500683066023100ec297ee2bcd70cdc5b9e230d0b989011c4b91ed6152ef97b9446c7411166b8f965ee723e72c6c5763df65697eb864b70023100e887d6458f4122b3a6f642c0cc6db7b496d540ef8748efb9b68a7d01c73bbf927efa718f1693424be62a583890a0c6960302047c435bb50066306402305422bb96771ddebaada36d1da7e1fecc2ab7ae15a152602fa590ddd2a87b96b63ace1881478f27dd9f7e8df179f8c51202305bedbc43acf63ab1d20572e00db9004e60f79f26a94c69001329823eaa27f3a7eefd2a95de2003995d6a1f1837d146010302047c435bb500673065023048f49260dd6d3e458b699517b2a14aeae88ffe445cbbfcb52dc28eab661ecc8c4de193f1b9ddf73c1117e21a347bf56c023100cf92b34da997e65a6986741e65f370d7741c52a6d593b2498c19c0f33c8360e2a14616f944fafa2394cf23c7408390d50302047c435bb5006630640230213235616ed5f052ec83fe32db5c16c12eac829e8eba524c2211f4f35eba919acdbe854a0aae834329cddb0f90f2dd1c023035fad1f065f0c62fd09136643dbb71dda94a863dd4f4f892f1a43c6b264f981303799cf10e16d9bacdfaf4699ac997060302047c435bb500683066023100bc886a5920c2a1120f10c2f8e990fae6c43704825f3b38888457d3427515f96d364647bd21985e5751e0165ad2b0b1e6023100aee0e4b2fb353a5ef2857da400bd9c3dc4d31426048986531a961769d5a3d7f82da8118986cc368cdd9bdb7f89673d490302047c435bb500673065023100fa4f9c13ae176c2071f29f1c144dcaa8f9a0e21e8f0a7c2ffb37b4ceb50b6993b974de6e828fdeae3fbe7322e1f9f366023049c30be1f6b83099c0a7b5d4ba16ce299b1df060f43eb05146f871c32e60552f3289c33697595ff70402dc52d0c9f0d80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c82d613fcad56544eec8496adf9192d644532881556e4f4567eb712cb78986386377eafd471edaf5d5216d1a3e1dc510023100db08bdca4683ee233f8c420bc8b25a7d2d7d260558a3b2f5b005b1bb947e6309032fa5e70df2780e36e4c182a2beb7b60302047c435bb500673065023100b530911c96a34e8c213437f32f1cd920c1c696cb07b3382e08aa978ab42a1a7f004b337f01a30472a7881563f6a4ece902307932e97cfd3bde3af2baa299fbe67dfb1522b1380c5d38a562b2c478c17cf1d94287ccbaa68623a6f6bc8301b70a7afd0302047c435bb500683066023100fbe890cf67b87d9f2b5d244a42a40dbd7bceba4f660fcd9419ab6d31abd1b435a65d9b174f56001eea05e2444c15fed8023100af7c6f2073d945ccd65860b1fafd5aa78b2ed4ea0f0d81b4815a7e82d62d2c1176e2b8ebc6172d94d39872dda05864390302047c435bb5006730650231008bc2841f6790ae509ddadda1261b8e3d3e2de685a58c07b59e10579ada4c66015b229224da9e94f9a5771b5246e71d84023073f242ef2985d7826fdc67d49a5afa17ce3c9fb3cc8235122f3f664dfd18bab713bedc03f8b1534a3ed5b6dd441f54830302047c435bb50066306402300811c13837ed038e98645dc4a3e69879f910a18add50a055bda1a2f1c5bd883aeb9336e0b2f4091dc8320a1c311cc3e2023003f98113bfe19f254b043898bc69589a7b6d376ca3cd73e6fa57e60ba0fb3ce20af78af99ca76395b563b46d0fb6ea9d0302047c435bb500683066023100d9b87daa2172dfcada4744933c598adc50d7ec5dced5a89e9515da2300b1643f65829f486c2bf381453f8799b7256ddd0231009c9c79eb76816a2a79fa1012971d4ef11e42ef4470d30c4b831fbd616ce679f23e19ad8fdcd3233dc3cffeb82b6110500302047c435bb5006630640230465bca1b8595fbb756338a379d5ffc289fd9f3404decba77e925d4408417f18f971a7d3d8aaa7462134c632f0386bed6023013fac2e6c8980715c561e2ee97d61094b929f8d27b1940479485a4be439d3a91dd5b109db52f42dff83ccab2d32ae1780302047c435bb5006830660231008bb099b62a43793c78736218269e51e335b360a07d0de72f960ae53643cec706b0640985e879998555b5551fe07044170231008103e5ff74f0c513f2e198af27a6fbfec76e8ce1109ff2f7ca202e440d450b8ef49dd1db66287a57326f96774cf1eb190302047c435bb5006730650231009ec46af4a8f1ce0062e137509963d0118995949082a78b6c76215b1e9573a2f6ae640edfac47502c4b1a0644f769ff7b023071bcae5f79edfd82dfe08ff465008fedd649c4ddf58ec1d1a89fab26b568e1c9f3d839a78b9d27c34e35a1e16553271a0302047c435bb50066306402304eed4ca9c6454be36e0db1ebd5770e87e5d07f6d4c9103757e53467a0f088420c8e1344162538b62ce20d01b42912d8c023028ff503147bf811096ec1d8121d2d27762e220c5fb2c8b8a45d365d13b1f378d3e07b73e672483b1e53fbcf5a33087f70302047c435bb50067306502310092934cc2fcd8407091d369cd57090fd6242eae00b69578fa8fece0f9bd5c92a312f238c45e4eb04b3806c6dac3132a3902300684e2a0c9f4812e7612c7657737d8df9b44ff49bb96a59444f1c5be8df6178364c7843aef8cdfbd341f0e0e5ff5c5da0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bdcf322f6e0a64995d4df18856e22cea02a1716e506a9a2181609292dab0457a02819483c5c8277d0f3bccb2ff64b8c10230281a0d8ccb95d5858f96d5e599301f0214d0947a5b7aa3453fa272e65bdd22956b33c1f113d6b8e352ee715fd5dc7c0f0302047c435bb50067306502310096ac259e23475b8b8f68033d463b5443a76eb4bb248f753d1206bed7e4c8109d961d46f14c3fffacae91013db390672f023032d79d74981f9924b3e057f0567107d628d5c4e76bd8e08e0081c8bb2df28e10bb690881857499ce30027e8a056c66370302047c435bb500683066023100ca679f2815314b9027babd53e55e68b2202bbc830b2e7f828121dc62a507aae4e83cfc2d1d6487e516af506b4cfbd1b2023100c2d015290b140ca4e13bafc126cae880b1e556a98fff396397ff5962176320c5fdb2ccc7f67f4f6b004f62ae5f5fef040302047c435bb5006730650231008b54020d1e81cbb67f576c3b8b0807b9ce7163da336c55b26524c041c1509f0b28e3f5578b8a2f1c62efbb2d6016aeb60230529649e859d073cb6dfdb9c7494b2aa75df31b9abec4b6b9ff28e67e4bce7ca8dbf4302c0a4968e6ecbc5f7c0e65f2b10302047c435bb5006830660231008be72ccfe8524a30209a07102896e93c48d528f532a0291d0a05a94bc4494c3d39f80b6254ac677cd40ebe10af71ec99023100b2c380053d8923a3eaddf710134b0b532b7c28b1510328f20ec7626204df9155b168ad278d6ab9c31203e091e5cd6f690302047c435bb5006630640230128d131ec930454745f18a4a1fa15d301a2a22a20628c79921cda9306ae59b5b188f192b1b931dc062ce4acba7f17e99023024e627d7e7ffad5835f8806cec9875735f61cd779ed0d01f0169d510d9fe191eb7843a9cf6c38c89ab8f6b8affa8913a0302047c435bb500683066023100aab9cb1916aa1720872bfd1c66a400740b869a48db7b85bb03518aa2236d397092957d1b1f917ccd732710c8d3ee1c89023100a12802f850161f5f31a73bc29c28ca18fafcb6d3ab401623b1a10e09a09004e336b81af0e9e340ebd0f5b0100fa7eeed0302047c435bb500673065023100a86327b706d6ba08f06ac066ae06c18be1daa6190fb5045934893fb55079e4fc6facce81aa01706aa0a5bace1f5d4ac802303e419e7cb8c2a595954f98b99a08a2936776ace055a23f31f63af6b232bf95105b0f6bc558eedbec2b89aa0345d25f0d0302047c435bb500683066023100f382c0d617814c2ad54370143ab6ac7e14d4194d4ba7aebf21426719d263ed326c0976e4aea30174c8019fc20e28ddd20231008641d918e9b5a2092724a6b7457da3c9beb070f707ddd7100d1508fbad15929efc164780f4d64ad18130068ce75d825c0302047c435bb500673065023060a8e1cdb3ae2b47071022598b134be623c08bd17cfe90e811d4027f514b61d9c05188f888262a4c89e9dc81bac070360231008ec7454d8ae7f452d2c0c9654360c0c860abd232ae9a8f64cd8271ccc2c3d84c477d9b36aa3d92687053d778286721950302047c435bb50067306502302bf47be4fbd14c8504e5702e7f60481c600e48d34bbb394f22ed49b3c17596c5bc532bca4be4402ee34694a22e4b267e023100e9a114aaaab1b10ba2e95fe99905ecbb952588e3b13c4f29d1c56debae2abba86097d8155e8f63c402fcf3cfe812ee2c0302047c435bb500673065023100868cc319e370a0cb5b006aadb887c4e1c57162b9cfcd514461b5ea86dcdf497d6d7c6eb695c39d33761c85b0cdaf3cca02300323a1e1a2ed7bace18e9809fb528316ce205772ef9f6b45334269144e315073803006248307ad3355c5de6de924aead0302047c435bb500673065023100afecb27cf0cea31e97ffbe77365e22e399d33ca43c948098a76decb80a58f733ba894fd6b805d2ba1c4bc93a80725332023076fafb4ee2af9a5f8f68759fdd4d1842317cce32315cd8cad164ed477f276457c93661ec480ac35e8f6b39b54b76a6f80302047c435bb500673065023100ec315f907fb62c5d88c0746b1ef04100566f1e58c47cc72c32bbd7e460add012d95b58c5900ae9dd5c3d2ec057064d5f0230261f00e05f2c9130ad87785544a963c964102e1eb7aaa9b6a42638501f94f9e0654cc7c38d0543a2d066593b15881aaa0302047c435bb500663064023019541a4d50d55c1ead567f26c304ad3557f8bc79951e72a1f08808b5b7205e0465893bc54cf2c9413bd3c42aaf2354cb0230791a45ebe0181cd8f8b27c1bc9a1a83ab233e6058cee129e5ad1bb9c39a79c58a74495c8a65efc07f182df9d854699500302047c435bb500673065023100eb6ce53349f85f2b2c1a04c09b5a887b3ba962b24f5f015991f596cf79458008c8de813c40e299dbc27b5c9c84af49cd023075eabb46b61be8ad6943b3faeb24f4778314ec6140eebafc78b169689aed7fa0680199a4093ec652698080a17150e0b00302047c435bb50066306402300974720700205a9b9e3cb3568ab7cae4c88376d3bfb7e073e0e04d9bf9ac24c4885d3e709793e62f8a3c413758be1d86023014a4fb82bc278dfc8d49316a62fa7901dacd1424009348b8a6998e4438653cdb8b4150c55e6e07102107e4e629cf84ef0302047c435bb500673065023100f5b3ede3e92acddd207d49c48ea366839bd44fd4a691e907ba82f2554ddd602ca61c283af4f1f3021c41638d6c2f8f7002307a0b416a617da586cfbe8bb51827d6f30b0e2d3687cb56944528e909af3c98b69de4a3391aa2d31115791fc5924c3bca0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100db3a40feb8b2b1aa82a0bc1c673b165838961ec6e18801b9e743574f5042465114840097ef66f882e683d117237b7f88023100f8d86c3b92bc38e845a0a8f26a5861bac308ce0c00c684cd46e7ba13ece2d8cdef8bc8c68f761d903bd5045204b85ec60302047c435bb500673065023005316261d3841d4c6a49a42b79642a1d3f20f571ac2d070137c50bb93d489ad900707b29f4b757353e820d43d9d26cec023100859f7b793b8724a49a8c0890086acc520c9f0370f92b983fdeba78502c7ec1d604b4813a434e5c2ba85c049114540b160302047c435bb5006830660231008a50ac94f93f177a2f47b77a2da4ee2644fcbb1a90135ed6171ba0ae0e1c80567446740f5fadd5ae6c22e32466d68636023100a3831df540bbc423a0948c0bd4723e4a86fb2533fb6dc00b973db695f28837e808d843b96af0c5f038509293217a572d0302047c435bb50066306402304f0baa2d25d07d624c59ccd4ce81696f953f6d7433d65f915fbba9c25ff80fa8831a7f7bccb637884fad5404a3f7319502305573b2ac6bc2fc7e40af579619b33d8a69d96a5a8b78d295d65a57cd14f70903293627ea2ea40bfd69755744b50306380302047c435bb500683066023100b34a2b9a72a873ea9e0cf4d0c5ee6fd0c48f27931b811dd8c89e60901f9c57a4a8045e4c448a0231bfa5e583b35eb159023100f831fe01e908f53924ba3160a6e1477969a1d9b23e7fb452bb513e419ac4a51adbd6aa92bd4e1a6882fa2db2d8d615b20302047c435bb500673065023100d057268606da11c54665d719a5356019a510007bd22130e35e08864b189e5c58826ad77f177a4ba21f042acb239c30ee023045a590ce0fbc51aecd27b42efeff3df795c8e5f6393ed69a1d391d967c559fb5e50e15f55e7dfe552a40ca80622d2d4a0302047c435bb500673065023100dec5d8d0c857a59f34d63a8e236c105169ef24aab5914981b1094dadaea9284b74439f38bb5899cf89800f8b70fa74810230787f82b70be279ef2f737697578a56321bbe6a785113c28b2556b46170a7e8922e23b9f28bf5785ce1e7632abc5fc2160302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009f9ad858447347ba13c937f9e36108d776fa9567fa21f826e510622243bc5a4cc8b9a5402d5292fe824cc5b70ba94968023100f7fece039f908053958c66aa00e22aadbe3c45d474c1e4560b2aa09544d63614bc07829f2d704ad427cb993164df12300302047c435bb500673065023100d5ee4d26f0221562b7a89714021a5a0ae50282c95afd373d23215b68ee427e563270bf43cb7749de7002326f545ac36d02304fb5fe5870452c15f89d999b3291b015f2cd36f6270f303af63789ca39475430768ecb6007b3e910f6c155ab375df4a60302047c435bb500673065023100faef12c68e9ce6127ce501ff10a265f9cc569628372f0eb9198256ad3ec1e7088fc76dac24bf67c98377484dd81fc8e602303bef0f384d2b61dc3788effc3542bd66afb3d789978df53d45d5386d158119d9376847c9dab5f4403ef5835c6f9bb7260302047c435bb5006830660231008ae096198404d0c2f99a7eba77ec3b82f8818a5fda9b3478ca2c0f9943d6c54ac3242790b079fade960a9c86c684218d023100ee3012077bfdcceac27076a0335ef056a38ebae4c8dadd4efb0af11a7a7c0f94f1b5f8615ff444782d45694a94c70d820302047c435bb5006830660231008da42a0d2a7d61ed9521c0d8c5d0a67f428db17e1fdf7ad58e3a384ad0a0716aba2c8abba5f847781c8532810ae0b81e02310094b7d797e73db03f4db26b330f584e699cabb9005eb64df32b3eb8b95d9ad8025b4c27452d97bbf06a0c11b570e0f1350302047c435bb5006730650230718ec7c607272fda8061d9e57a576787533940ae934c00ab901f3b0665f532cfea3368ba7e15e0d123b84bf364ab714a023100feb8fb95addfc52f421f936c96b2e6a3ac07418b9cd1c12443abd3026daf4552f64b67eba5ea3f836c8e24dfdcf101ae0302047c435bb5006830660231009c675873b89649e0b8eeb953b61eaf6f22988c39dd9744b6727d5e0d3403b9854f2e4154bf6a22974d278e79f37fd44b023100bf8bc23e4c6bbeb52a101d886441cc9a98470259c0cc325bd30b544375eda064d405f736043138e596b698b6898458dd0302047c435bb5006730650230249fdca897c149a96b87727843769a380ba42c7b391aaca77dfaa2a08de8310856deb51338c4438b6e06b3131e798886023100c1c520b96e18d28f4a5018f287a301d6b8bce35acf208506e97c788f6e73d5acff4a35dd0a453a452adc82a821d2c5fb0302047c435bb500683066023100b09a0200085b494a9968e53beaccd633169aefee0b8e282e1c968038098aa350ce104169fa000901964f012696470c16023100de29d27ee07108b2a5b5346f53642071a9677a9d1ddf282603e3db6d51142f927a1c91d888543ce2d0986887dc324edb0302047c435bb500673065023012f23979fddadd02318dfc0524f2497d5e07366c731b5bd174b7f2185a6f991457ec9670b39775451fa57a21ebdb143a023100f735370a348386eb77c4e41797aca12e65dd8377c5b30303e47a68d757a175bb9962d38fb60887af13f5d0be2713fbf50302047c435bb50066306402302517ae637d890c0645f72a478b841fd721a9250370b2a5c63edc6dc333b3ffbea87b49f93c246df84a5015c4992835d602301770a29f9fc471425b2ef78aed20c09a4de1771d6e81160d52a55442e202f0cffa742a5dc333650ea34c325e6de521740302047c435bb500683066023100e1f87cb4234eecd9b3ee5f3dfacd936656e217832205f436f9d1a8ffa9c0e966a8fcbf522f2174497fdc5d61f71bb7810231009a0968dfd3f815426057cead933f921b2ccbde978e3ef31c1961cbd540cef21967681b86d6ffeb1b70d643c16fb8bc790302047c435bb500673065023100e9e41d903f2c3d8eaccc86d0bdc27cef7afb80a3fefff7fc32468491dce86f4e08e7c653ecd1b7cef7df94a803cb52fc02301e52d076a268efa75f70dd502104b91f41ad8b11a32c68044f5b8b26f75d6027835921a85de475819d6bd5869deeecc50302047c435bb500673065023100e62fce1679a09d38337e6300ae1d18c9ee041ee11e48b38bba54e948f4034a13b206dc033ba2b5291d1ccff743cd9c23023025746ab7cbee609bcc694b4f8e27b5f04b014c81680f96fd99cbae8f09b8ba8949a2c82ef80a043341bbaab91227a64b0302047c435bb5006730650230377af3e12bc14f06b2c50c0323a6ebfe7a4356d4d406a7e1bb06100993fba15deb8fd09e4b0d4ac566b178ba9180b8f9023100e0b5079a9b8ed267a81a641265acb2953fa856ffcefdea679b1a1ac3e268189ce3572378585394de7efa86d930dd64af0302047c435bb50066306402306ead1b900131a8600d8d6a9f0a733c5a4997d7c9eca4893e2d12ab1feb7f2ba5fc18d1b0c9d5d60b21d63dc2fa580c1b023041e16f75a8c8c9517d1e7b31fca2e78c957639e41aa4bae939ac1936a6a08ffa4849ca44424080e6d6b0d93361202b2c0302047c435bb500673065023100f83efa495aa5f244068262842989df804e13cd8071910456e4a0be414169a16e26173be680cbb1c4f26b824330c286ec02300987a13daa90047b690abb97dad78690b33ba46f4de0007597c5ee8a998a50d289055c97ba83a8b891bb298f27af451f0302047c435bb500673065023100c15a98772bf7b9d9e3ab344c4b014a74b811e523a876108485c7e6e7c7db60693ed85976a424314c318974632e428d4f023037a638ffa809db6a68781fc0182a01e36608ad2ff825c3e77523de7ca548284720171c29c6c3047a143c50d20ff3e8850302047c435bb50067306502310094141533b8bac1cdf20ffd834cedcf3cf4fad699a9b9623aa6a47d31e27429de9720c8b692a215e5d58f38cd218046a9023067cdb98ac59d387ef52b55ee6ac2b2f97e170891a664014716d997d9533e99efe9d01ab9a35099b83830cd3db13a66910302047c435bb500673065023100c2109361ae9277d2ac395f55af2a60de88ccbe4cd2a4d6dde2ef763e5a9378c739f3a7e1223741721b791941832846f602305659e7103f031b4183c10dbade9acfab2666ba67fbe63aff6f305f81469fe9aff05d2c92c4b46910ad8e3375779c5e260302047c435bb500683066023100d40cfa4639d5f0a3a7bfb01e5f2dca64420efad3c8fade6d642324f39bf6dd685bc603bb3a68d012a8d3be1c2d203e96023100bc23a38885f3116a266876f6b6a4b9d10ba32a098be647aa15a1938b457b413a058e2e23066708324e2d424dec66d77f0302047c435bb500683066023100a5bb54e8e508636e522426ca1161742d84c926c52e451457483335d666070207c816cc775e0f7b2190c141e50a397cb00231008bc4c61249b617bb0732c6e4cf7577a0144fe608c8dd9b08d5b5517587ea4f5a89fd0db8afc1d9997cd457546ff0a31b0302047c435bb500673065023100a4b4785104029c92ecf27332941c7a3be277908eea8cf0050431d902f1af7dd69e9e7e5a713d71a8135a3a80f6a085ac02306899143e200520a9dd30ce5da8f45d8631598b7b25f445b4e1b8cc9168c9e66ca9d08b1e0b2e99c548e0983181f1f3c30302047c435bb500673065023100e3d104a47990596b9754a5529316e59cd5d72efb73b9d40d35a4b962437817cae62959a360b3a335e3f85d84dc0587b702303c0ab8aa95ff19011b705d4c798005c41d1f8c9c6e370c003dadd79fefc0a8a4e83fc6375dc080fe7a4347519b99fc810302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023013a747adf5ff61de70f9b7762660678c46493cae1561500492d088de32c19a11f7768109e4ce96a97ef4475db8e82ef6023100e78d82d0bc87dc0d0d1e7ec3e7329abece15f486a77fe73b51228509e25c8f6460636de199a18271903ee3431e37bc5c0302047c435bb500683066023100ba88a675be1fa94f47d92a58a71d6ae59958619352ae2c17307fec66cddf72219fe675241ef4ef8a05aef84eeee8389c023100a383e723e28b83a24337dac2953f8ae6e329e483a976899a0cd7b471d0a7997ae0fe57560df599ef214da8eaf08179170302047c435bb500683066023100efa74dd0031113b7941a7ac3d754d3ddfe8131d34b814a304191a2c8b185bf7a8ded0fb1128b8d9685394af7baa1c502023100e098dfdfea632e7f2dcd041f2a1816634750f9015da9f66563fc95fe533f71234f7d8845cd7852ef3effe72deed213490302047c435bb50066306402304ae68ef68a6eea3a81702a21a858265c25a79265e46104fe6473c44c89ec433bc379e73c2987462c0a804d48cb14416702307a7a75d54328365376b335e5a53b56e9d500012b645c65c393b9ef0a44e1b7923b0a8e967ff3e46a321a2083ea4390f40302047c435bb500673065023030e70201a63fa3eaf071903a62b38e71a62c0370f720a927cc9e316f2f9df287fac2ce0e499417aab264f6758edd332d023100f4831c436de84f4bafd73cd854c59cb78de7b2a2ef53225af79e09f5cb9b00e2a40f0f33c747cd8e60244e0c040df0ca0302047c435bb50066306402305378f16ff3981ae107d90c9f3804dc19bbf3fc20bbe5d0d3e65d995b2ef5f6e6dd69962510476276b220a43a8e5a07bb023038545306ae382d3bbd8168ad315ff1f9a641fd8335759ad3e01c9ad558e9fd58fe0a131d3df7665ce01f82f906486ff20302047c435bb500673065023051e535e9a70327c02c25e8ece8d98fe128c8d24058ebbf589b32e9be50dd67beed41e2c528c399d6733113b3646cd332023100f84ef950cdb85c80c5b2e483d62572c5e0cf4312e70f8c975f8052889d3fbf85c89e288fff56d02556fb3b2a4d2a868e0302047c435bb500683066023100fe437a6190845227cfc60579cb9fe1ca4f520d45e7549ceb44cdbe77ad8bea67741c434dfaeffb2ca89700fac6a605e5023100d3024be947fe24a0df58644b9c6bc2799aa20904c76dd5b15fcdf4690824cd17025f9ed9a009d2eeb1729e22917de88d0302047c435bb500683066023100abf35f1bbfcfdbaa5bac8bf9e8a4d1ddac6e55c878080fe1dfaf7ea753783bc0b63a9831a4df705fc0911089149b0681023100e059bceaf3d7be0ce8da2785d2a2ad029b6d8f7e22adb4f5ed9e2c7c7e728d116ba95f0340a401c433703b16f331d7760302047c435bb500663064023076050d10e3cc923461298a28c0b53fdb4857263fa84d3b6c12caede3329d74e806287d5200f1a3a639f455988f7c7a9d0230192e7d34387672f702034e03267b981c390f469b29a03e79165e7ec9387e6492dbae672097e50ca084221ef94ce575a50302047c435bb500673065023100e3037121d0f64d6f4079054c27b3b5113e41db83b7af852d649f12ae165e03d0c622a57ab0dba978e665e7a4453917b802300b460022af8d37488732cd421ccf1333de7efd5314b84aa1d8f1d43166eb7879028e721e4506eefa0ec7466c8992bd150302047c435bb500663064023070b16e0fd98dd8bdd23c68ae354e367269362a7b349d70faab461c9ff4eaa7f60b8f6ef857c59f791aae629e5e9ba3b60230300667643e71f9cd069a081d18572eaf6199e271dccee02bc3ca448135c89f61d286dd947d0797a0add2d35cb2198be30302047c435bb500683066023100b218d9956fa4183b4712cfdea4df4ade18bb18cb16fde0e0cd46b989116932f8c3742bb1f687f56cc9463a4f66837295023100b8c73606ba9c19b357ac71ecde9e216de788da16e72660abe9b264699411d08d42109d9820f03251b75c66b73b67a0210302047c435bb50067306502300729c2bc7aaa99d0eb564f789dd21801ee275a5ff421a7c484eec0963d26a15637b7d1e34757a427adcaaf860c6f6372023100aa20d9e9d55fe0a31c409eb90e1b03f4269009e12302aa86fa9ff011b8d3a39b424de90d87da7d43dd960efa08ccc4a40302047c435bb500683066023100f1e823038ec0272be86ab1c2016c10b353b7cde9df705271e6f223d510fb803a5ef05c252945bb14dcfde5d15154a25b02310095fa014ec45404a0cb0de79a3a81c0dce180ab32a781eaa0c242d0dfbeb5134bd90002f25d59ddd472d47095ce8fceb90302047c435bb50066306402303b8a5d021adfbcf2bc2633a73c930d017fcee137120ca13c2342f64b05e21892e141cecc4d09f131c710dd715bc9a8260230186f944a7e421755cef2a59ca9b518aafb164ac76060bfca75ee6e343238009a145c6ea63c32e903ca311decdf3d506b0302047c435bb500673065023100e4618e7555b0b49b4a3387cf7729e98b96e27575025a6762bf8a272c067349b3bc61f2d7d26c2f715766ddcd80eb60f102305e7eeb1b712b9ec2d7e72e0e14a493cbc9dce66925092e5094e5bffe401aef80ca5179978e846ed5b46ba699a0056a710302047c435bb50066306402300e20143390c6596fa49869d1916fc1b1a4dfb130ad2b3bb7a95d944ac5c214b442c1ca40a19a6a9f38035c8d81d7f9a702306e160f63108b128c4216fb3548ce4720f8b427a59b1aa12bd6d23af6f27c535c680ea50f29e6925a4b7066461fc55eea0302047c435bb50066306402307a687891b0e5adda85b5e77fb0809c10f1d180993c53466f47560308a31dab26eae12a2be14878959afbc6f34c3c5d7402302bb15b23d16fb06685983a458e40e78c85c144c51653cf23f66b09e10ccd0e73037595d0880c7f7ed2d223efcf9bf2700302047c435bb500673065023100e60e0d0e5ed0c27fc12cfbf9fe1df696dfbe401c4802bcd38941df95ad0ab3a98b6a633d3b560c7598ecd2b2fe214b0f02304a701653a2ecefa85d9251e377977ff41d77a90ce0f09a0607ff7673acd28f953b50ebf1786f734faa224a5daf3be52c0302047c435bb500673065023013ad641980b2cc024d7912546eaa2a6bcde8cdf633eaf6a3efdb7c42054c2503611ed7b1b1eeb05c754e37142d02ab89023100cfd26966752b7255cc1a9802ff91dcf9453226b5b6ad2df5291d14f263ecf4ce09114e4802b8b10bc56215c293ae21610302047c435bb500683066023100d0d9f7f0eb6ec3ae373a1e3044707448a841211ffc559e15280fd1e0c69573b4d81b64121f5af253b45db5dd7ea9412d02310086723dce00363fd360eb64b0469b00eff10421b2c2f29147371ff87efa66f900f006f7430c84aff00c2311c2c364e7410302047c435bb500673065023100e4e8f36fb9e6b8e64eae0a548e72ace6ee30bce65d2643c15e16643677fb6e161a2d97fba20f6b00fc08a22b318cc0ee02302c3316db4010b26f45ca87b138a2b354658d5a1592863eee10b626d2e11d529433d0ed6d478da3a4374f4c3aebd0cd040302047c435bb50067306502303c5aac4d5e529e7e2cff48a5214ddf64a73ce5e47f6f4b6c022b44ad46dc45fe0ef262843548e9d59a1d44204be4b387023100e8d96eca830d9c61c96ea13be45e7cbaca737b21867f2c8de3d87e0b66e46db61b87cbc27104cf70ed28e07ac31dfb740302047c435bb50067306502303dc16ec52655ecb3a408582a09f1a0a23a5881baec1db9f120850b066eda95ee8d853099949985425d0358e36838a2b1023100df50af23842bce97f6df6fc8dd49a5cf32a9454a43c38985c8ce50a3d0b264245b28553029a69685094cb1cef440f8a40302047c435bb50067306502305e0aaaaa5771a074bd6f222c70ea24bfc6e9df1a3108b849f1f8872189c4af4c69c1e893be6b6bf7d819587b64760d0d02310098851594269a03766298adf1e5a0c0e8b23b5e7ca7b9c3cec5cae8cf5e6345fecbc8c31cfe0791e74a56182f2f6d2f9e0302047c435bb500673065023100af15bdcbe93258dc8473e8252c9b3de3d35232a59262e4ae897297d1cdd354e248a6cd2c5eaebe16781f24c7c334cbc8023016457d2edcfa152cc77a16e5815bf6e7e31ba017c544da1781927536a377dd01f2eb3619d07200af285abbb631dbfd780302047c435bb50067306502301745322dc3e06c7561029d77254d97fa293321d9fefb28b75c919b978da0d93534091683bbe3c73c5b63a9e952560102023100f79840d008f2bbf7b4ecc5c2ed604e313a3079db5a3f9f948e040cae3c12130f1d532cd79f68e3684dc9fb12bb80c5a30302047c435bb50067306502306933959a442d0a250af60615290244811fc44e07be62b4e7ea0b07f40a2d3af2b60349ce8bc6c61607e69a66a405e175023100fda622a92d94d3eb9efe8dd589812e8546205c2d05034ae4861e7532e201338ecb41c6db71c98d28334751850a43347c0302047c435bb50067306502301ab8645438a6820f2e91984507edccf8f38e64d45695f0e5e474967bcb44c032f251977c4d9bcb0108a3b46061211c4f0231009b0b8f922fc89b9a13b46f6c3377ee9b26104d6ead500bb0a4d8c11085c89837d40708bf1f46d771022c7bba455a62130302047c435bb50067306502310082f3eb1bb0e17170c095e92fe5a40a5887633735086424f0d895ec01528d777cb9ecebf6f7fd7ba518f693fe1ae27042023069b3915ebc79f5d0e9d6bd2b36ce7e1dcb1f24b69bb3990e76d65757237d7a157d625291d435d4f1ca61ef12af91f1100302047c435bb50066306402302f15ab33207480f144768ec1fb9ad9b7756f0c341395edec197ee65fff4f1d2230e060ca385b34186a13839ae29386c5023017e07fe4e18cb480f1b256c5ffe6951a5b72de0e6e4ef30abd08944b036037a5b0ab3eee054a34d1f8a68e5151b0415e0302047c435bb500683066023100a7e88b5ff5ad3059c6dd2a12b08ef467b9c8878181a226831b9ccf9838ce610b7c6bf16ea6622d1f9a8d15d7e28a7d17023100fb3a38fb09cc30e6d5f7845543ae08f776d031460e78da42a755d10c692304e6e26de9f3e9a10fcd9bdd7e4536929c640302047c435bb50066306402307b34a8ba24f1a2b5f2626485c6ff502fa57a4eb54ad1a02d4fbb4d2be80b531c43b518d8fe4ad2485de50af8bfe7dab3023071821efb71066cb8ebfc18b7959e481ab96045f55657ee7e37705fb905f34433c9dfe918a3ff1ef409f11ec70ed291720302047c435bb500673065023015060d4a5862907553c5e509acfc19d7f846d3efc2003bb60c16e731d430750931f1cdfef0b9bc98e81aa9a036fe4bbd023100b7c0c41afc4e2c3f1c1fe749d7cbe8b4bbfc26b8836c126e9c8a8ee6437587819a37112ad15810caa96a368886b477750302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230200865517f09d8aacd97ed6d0f0019be17c94e4bd319b19e059f169fdb0578ce2a6841e738ca0eb1d5ecd89dae0be44e023100e11be0d28deb15eec42dfaf0e37d7f54785c262979eb64d21fa2e16519f75f39665297b2ce7242aa9a7bbe01e97a60720302047c435bb500683066023100b04b623bbeea794da269551f30dc05b3d4554d254d7fa0199443e80a366e6a9f03401dc129c52562da0799ed5cc9a9cc023100e1e73318a36ca80ccb6b50c2654d0b7557c2853b2c6cf8bab9ed7f68e89c5614073c6feae1926f26629ba218b1596a520302047c435bb500673065023033a2a13252a52e9b63c8865d86955326b30b3676fb36014049e6655551cd401600fbf2478dc08760b5ed4a8bb7746e7f023100eb009fe119cadf62224b0429db8db7439e5aadf34da28f8403f516380e9276e50467716ee3e3e2f5f070bd9466e7a4220302047c435bb500673065023100c720e45b4aa8ca33fd9748fbea1a2224c4dedcba736486d2b89baaeeb190d4870e5e5e8defa41bddb10285c5d5b69fb102306d5e490a48d0190dad590799922b88c8dd1a0003f93301b3b6ee4a1e7f5a8a6afd086dc14c6aed8f37e96d7c6c957edb0302047c435bb500683066023100f5ea3b55b3461ed8eec4ed93825f95a27bb8e660c9f40c462fcaa3c45952052f40a31633419a3bd899413c3faab2c9ff023100a2cb543fad624da4fc1deb993cf2cce4afa3f69317f1e109ff7cf67be94e1b45a13688d7154bad40c477430f8d8eeae60302047c435bb5006630640230513ff5236ed9ee166d9dc26ffaf2f063f175e2ce1ae8fe3d4f3dfef476e26830d94b16e3783e0691bfd185798373267f02304f13116c2eb05d440cf103dfccdf53ae397c5b9e8d33fa205819b73f53fc2ae2dbb41b34d8acb09ad09476a008cfeab10302047c435bb500673065023100fcc2af6bbea8a02fedc49a28aeab5e1ad609ac9bf6b4ba43a38d10371bb6b00927d894a09f1afab0b7ab23ba64d80d010230755fde0136094c4e4e1d564f39a1336917c7b0409f09cdca4fa2e3ceea4ba176fb1a6511a1c04a19d626476e9fd722f40302047c435bb500673065023100c617e743b792cbdb85fd3e57342a1e9232fcc168baee2a04cb9574bdbe47fcd946f764c97e09409ae6fa040913383f9c02303bcf980084cf135050e79a1b64e00f6651bf21d4496c039d749fa7ecbb5e1473460a35bd02354a47ab8854b728b6ede10302047c435bb500673065023100d39f99f7d19d2b03ebae319e6423d2e119fac69f5f247f140a2337d99020e5fd356788df6ab7f7a8afdef7e3743146340230705a86b1e16f3ab522bb032a8674bf4c125b380a588b9232d7c2bde842819747e2cb03337dd96f69fec4c08808b7639f0302047c435bb50066306402304b221b96af0ed241c83101c120886df3e1931069ad28a209b07db59589615f135133f3c8b19c67ffed7e845d1f0f1ea0023056d3faa3886e12a1f040ecf6b0417c5cea534af0274133e86fdf94db10d4fb55fdf5fa9ab0f2d5c817e3858a4743be1c0302047c435bb50067306502301f9f561b08f62dfda75c7ff6ba017dcddd213ca3b5d98db753be6586056f99234c2f912967734f62fbef11e71f53b0d20231008c0a2f2c75c8a66a3428f457e0a6d573af4093bff86d45774b36f3c67fb47ebeff9836f01fa025a47150a667478fca1d0302047c435bb500673065023100fee620306453920faad56861b49419feb9f82a04bec6149a59ba038ab8273e005f47b65eb49ec7303ba3a09864c14f4f02300ec000d500c170d77ed0bf38067d06b9e82f57d1d96936717634b55ef90f91d673bff25ea7af97014a2fb4fcf9c3abdc0302047c435bb5006830660231008a5bbb6020289053dad06c30bdded0e9c978b31114629b39bf08fc5a9f43c8fa97186d1cc3e3992d9708dc5628766d9e023100c56d00fdcb3176ec96d0012a1c0fc832164fd1faf213773e74962400bf482b7a700c8ab44c147d77dbe39c84b327c04d0302047c435bb500683066023100c2fbd0d2bc5902b2791b4b93b3f537fda74d04ed1767454c997b6f89e99083c7c562b7a8ee97ce024fd67d054495d2f9023100d3e42b09a400ce2029f2e869b52f3ebec48275ecafeaa735ef4ca9895792ec54cdb43e2a6cb78524f12b5a403fdf33aa0302047c435bb500683066023100a35f56215275d859b8974763f577aa1716d2e7ed7616fb0e8f79fa82dee28f6407671da75c94d486436a14479a6b95c202310080958ef572bc60fc6d72087b2ce9a3600c3a6d451e7e07482c95b47b441bc4beb30d5d36d524f4a85777b31fabc8ba930302047c435bb500663064023033330f9a0ef9aa7cdefbaa52e2782c97d69bacc8954bd7328b7829bb520673e1457073253a93c2a9c4d74c99c7e0a5c102307a80015e49c0a0fcbe4fb137290af0220f0d3fa9d22f24ffe816bcc6642f4010ab0677a47207f4f840d73275477a36b50302047c435bb500683066023100b3d296da1af80051af832d7ed0edec91663a61359c991f9cdf41c3795af99cb35d97d9a7847ff8c1e3c67de562f3cee9023100c4f634d43b3fa0d97ce0c31b8f7f033ff69f6e0cff39d5801bbef383e2d4254d0a568e598b8f9543c1f8dc12828e1d9b0302047c435bb500683066023100af715c6cc56978bb040ae6b78169288c5a07f499444cbbb9fa1392eff114c8bab5aa5400485597344d4d41d63a5f229f023100a46768b0eea9fee030d0f0e75ee9e4b0af72552cd5c713473cf0cdb67ee563d78c5f059f7c8f75577de1c1b414895e730302047c435bb500663064023079b9e8dfed6af2baf7e197d43ccf1ca29a2542e473c33023c0016aef201df09a0133602339f99b13146c0e5567e931160230737eb1902143d14ba039cd0bbeb54014d2d2d0376ff7576f90b2bc73beb9c1772eaf91f1eb3f71029b2043492e783c640302047c435bb50066306402306501fe1bf7e3c9d3d44f4538e678c3d4465ee60dc366be23618d29d8a1539df7467a5e829205516f547d1bec77d8d7d7023052a7c1ddebb7b33aad978ab6f7f571c9aa6fadcfca7686b51c6663687ca3be5c0fc08133a517cbdadfc32ed1b29026e70302047c435bb50066306402301882be550668d53d3d2a30b13e046ff5e920b2597656617f468aaedceb19e8c73ca171838fab1f5f71a6665ba4e985b502303f161aac63d0df95e24930a378158c7032d055b00989a0c365a6c404b47a1173cbf0c34b018777e75e19ff9bacc17fa50302047c435bb500663064023067d45c866a6519ddd2621b46632b10ecb7d5e9afa6ec9f773291f78e9bb0418fc18fd57bac5dbe938e1b1bc2964bee7102305a0bb1edeb425c418a7234ed6ca42817bae51ec729e88f529690da48888bf2e9b0afc2ee30756109d45da6175c15b3830302047c435bb50067306502301998362372c2bb61f3e5b3f88f2a6f6c8c9266950f3e76ddb7cdf47bbe5995814c3273554ded4bca5c90b0fb3ac9bd4e023100b207a08b028535c1bcc32eddbf875197d7652daef619fda252395e454abc37a313ab1029d3ffc75ded2d5956aa9738b30302047c435bb50068306602310084610119137a02a0ab53b761ad7d45122ab00a4064f68e392de80b381b3c9f5cf5875898e6913a8e2835cdbd204092cf023100b97ce733d37ece961a4e2347da13ba76d48fe0cc8636a90e163ede4d951cc70dd1cb8d6f7008b2f864f1bc59e58d9a060302047c435bb500673065023100c1bd9628752f316ff9758703be0df9c5625fa71124eaadd71eb11c6356bbfc2589032b3db245872be522be2aaa5c02e10230564eae1cc64842f4fbfdf4fa32a27f5f1dbd07d2788cccd0084f579548f2ccb71ac9671efab91af9b4c5c7cb6b9117ff0302047c435bb500683066023100d10ee98de97cc37b9a2db1b3650ad36619be19fab3ce16955efa59d0dfe8d48f2ab1a0544b9537d97faa6374489efb2002310090d2aae9e1c08229ef082d874e1c82eda048a0790a5785ab743d27dfe840d29bc827634cac6aff6bfecb89778364525b0302047c435bb5006730650231009e6b85514156eca7a4c2cbeb45403f86e0f7bb6346be186426504c88a3be7d0f9a787e395d30db15eb268f397e931a7a023072b49e085b75917ddd37a567d3a012e0c2daee0f29c5c8107474715f27e4df5b296eefeb437aba203fd78e65cab6b19d0302047c435bb50066306402306374370c78945f51d53ad9f6c9b5f12c3f0da819c184c3dbbe42b133dcafcc91df8a4a8df444ff815dc9a7e4b4924490023003be78b3577b484cd0f7b02cc06b53f616b5239f82a878056497feea7aff50d00a9456c07555b672ff93b2a68295064b0302047c435bb50068306602310089e52e78ea35176c915e4e1c41cf61ca410c793d090532e390ddcba7cf75feebb40f37bbd924ca1ae0810e03dc012427023100cb6b0ea099c5472629729701efeeaca4954e82109fccaaaee6ae1f9f59472da26d97752bbb0de0235097c96b77df98500302047c435bb500663064023033bb01712e039e39b93cb6a2780cfd7d158d616db3e877fa002eb9beb5ab62ab9664dcecfeb09941a7be806de5eff986023033616084b9e9aa4963eeb1f86a2926751fc9e5ed4db810b19bf35a62c6e926fc1a7d077d044216bfb4af7ca719487a570302047c435bb500673065023019c41444e97bdbcbfa8254bd24e421e778eefd2a40183b6a823e3cdc14527a8867104d7c4ef6da20fb393abff1a778ff023100fb86b422efa5ecd2b0e96c4e9a51098ac174be3304f3263eef1e77a316a63416478a7a847a80694d5fa565996e4f73960302047c435bb500673065023100f55054d0b82fc640dd729b8c5849973e5814b97bb20041c801c8c4d0ff00a9e6109c97f6863d7c017aa9620be5f2c1a602301903a4019cff0a16c5a95ad97486090a05c2a672696c9f489d5adc75978a2e34feb334bae73950129df09bd1c5b5f8250302047c435bb500683066023100fcd4949265f330bc961bda1ae9213a113d279011539579dc35fcb257e4da95cdef7f2525bbe831d9e85f4b358edf4ab8023100c8727a8b5c0a34459a14780467a22e9e2b32ac39ba3f5bd0c59689b2a85f740cd128df008fde789168b15950abdfd61a0302047c435bb500673065023100e3dde4076a73afeb6d08850d2ec9cdfaa1417a298b90d13a646a070606d5b69c1a22dc8b72819b30067c3b86a718a65c02302033be6889f27053d41c0ba368f592c3b4a020c98424c5542f69a8fa67c23e7d6baf4624d6393c6d7be6dfa593764ade0302047c435bb500673065023100cf9a8151337c3491e412caebfd396b8c36496dc129af52e3aa7efbf2891d5722047d0d9153992b439da6ff62beb7243802301e09cbd6579e613a41af4c174f794e96bfbb835d97172392aea9fa104b681804d7b4c6f03e13b964d48a6397346153710302047c435bb500683066023100aa3d1264bd8df0d647c4ad206c8311dbdf505142c3f05dae1222f1996322db119ae6f751059835abe86094f94bfdf9cb023100ff8b3072fb8499971305574d974e983dcf9ea70a4d9e67459580966576854cc7e1030e97b0bcd8d9f321b75860e5b30a0302047c435bb500673065023100e4596cf8329df880ebd536ac4595872ebd4136dab3d616a5d4b4e7994f9a5ac98d3ac481cca5744e45a12a495d37d94302307f23d9d22b6077ccbfa638a4b1a44ea17ee71bb92f8e0dbc8ba6748b83c653ee3246366a9088fb9f2badc79162585ddc0302047c435bb5006630640230568f0fd5b8c234d3284a69d73c411aaf1f94114b6448eee502c1b49555ec13a66bf8b5f9d93d79f60cdcd3c3feda44910230782b93003c907245b06183fc023ff60f3fbdc301ec289b15a4a16caecfc420c2f0afa72185f2ece3c584e75ec88dab900302047c435bb5006730650230701160f8b7ce35f755d8c1f5e93f4b7980db47df49e46f808e87fd5ed60e6533182ad7e02104ea06002cadfad72c4f12023100fb6cffb1e20e2d6342392c213da546356eef493e7880241ac326b30bab8f1a08d9abb2033ebf9823f5e35b3e11e2c1b40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023002b33fa1186818f6cb0ced974fab61a942ba787c798ec5f524bc5fc9a623f13fe283385cdf990999f58e394ff53c908c023100f5447d899713585d9511bc375f2f9d4562c1d795248cdaa638c45ea953922ff5d05f310e118660e1a23cf8c71e6de3cf0302047c435bb500683066023100e2d3042292e1f49b14275b7a43940c7ccc142a1998b8098f722da5374664a00af7b0f3c2732ef0d03d0c59e45c8ebcd0023100ae9e835824ba8212dd277daad6c5bbfc58b8531f436a395ab21bf5d3ea15aea479d77087fe0cd25033be905dd7e490240302047c435bb500673065023067cb2d41b398303acef6afdee29381fbc9ab5b03ab6056b0e0b7aff93c86e53891e1946522f81dc8da1c0af95be07c3e023100ab026897a35ce80a7f6cd831c91cd33229db05f9c0dd5921aefdb06b005a5c4a33f8a3da1e43911681d6bc7838767b300302047c435bb50067306502310097e4625c3954bd8566e28ffd01d424a9395214ff3388910c59016f7ca1778c262cdcbf60daa7d957ea3ac7b4716a4ba902306c9953e41306bc05e8cf4bdfa88764d32c5c36272db63316ef825a7963ef16de72439b0d0db0cc3d52b947620dc964f60302047c435bb500673065023100c2079a6fb4c45e8a128a78baf9ac26498c348e1606f84debc7c3c5ee4bae397f693851ac3050f2d2135a40af8ac3812e02302f9d9dfd0518754f6b3045f8ccd3632e6b17ac8d9cd9f0347abd7a5f8ae6f7dd1b83a7095ced45e9bece0131cab51e9a0302047c435bb500683066023100b04700b6a5e27a9097704aad34b85a2c9e2465edfbb1d2a2dff8627daa868d6036efe93cb4d7ed1cbf4e148946ff4224023100ba65377559d1041015fa3073d95d7c10782e4ae681c77a86006c3b89a16188a1c5ec6f5b981126b192391f4eb290596b0302047c435bb500663064023007126a07e30d8e6d8e0d9f97fef27864315a76cb723eb10e1db05a37d1db993b905357e49a714567295f5deb598fd159023027d30cf89ec5321a1120698fed466f256156eca4892d3c34f5bc8f1652243a0b6f881fc10ad44180343aebd62fa823840302047c435bb5006730650231008b27efa7aaf77fff22fd5c06bfaf01d2a45768003fa670a24ce18012eab33d590588d71ce6c3a1cd689574cdab08e06102307d0325eb198e3438b3913c2768978c6b9118bc39ea77a7f51452e283fbe4116faa9df23db6c8f368a77860a20a678e370302047c435bb5006730650231008383f2faaba7d8ece9fcf63818537eb2271e4dbb7df7bb8de19cfdc1b943854a6a3d4c64ebd56ba3d5ba358454cc792302302dccb36ddbfd521dd9d825502378b9c6a47daaa8d5814519a4a27870c78a278d4eb14a0213a58b9c7fb11088f5e03a8b0302047c435bb50067306502301c4a508989f196d5aed66663e4cc9126df1eb25895196ade387b2e51740a2fcf43e27c605a85f27770a99a848a97de7402310088cd4cfde5a254bc58286490d7578948008247d43a4d7da445c9841eedd5c872507a78a1e1829ede7ef770820e22d1450302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009d50323f8c1db0baa372e0a51e39ed15f0f07410496bf4298f7a9f09f3384036f7dc40e95c80f8b7cc7960157ab3b0960231009dc34e25047d7d8bff72d8e518e39e3f91e32bae842b7194afc2b858b19d7ec487648fefdda51d73dcd2d761f9ed55300302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008ac89532af1539cfda08b73211b909d8ff6705c88f7d2568065d9b33e3a0c52384281c3485b101b54b886595fb54f4d5023100a3205348b70d6557833d171099fb8880fcfa290ffc3b3427de95a4e640dd178ea689e49cba36d8bafe2da68bb40d352a0302047c435bb500683066023100bc668859aafcccf2ab2f697e440628128b8359c4305b316f78dcdefe81e45e38b279b595157b811e57972708153992e4023100ffefb5217c5f23c493e8642a27c8a2e86dadea451991d2670d673e0136354ee9cd95d83679b5a3f0e4af2047dfe614be0302047c435bb500673065023100cb64c902e9e13bcb3f056bac74805f08785af88623f15bbfb8fdf9342be873a744d979470e4091afa5554b20cbb6298d02306751c00301dd16e157860798e572fd579759d2c072aeccb85e476661e688fd5de1f8b28ff692576e34216026bc24851e0302047c435bb500683066023100f09f2ea3775e3a2ac0fbaeb43f08dee60efb3fb0d0908c71845b1f5d432715691c6a74aaccf6abcefec6b3c66960b2e2023100acccff99b340e6820b3fe577008fc9327d7f9e6d8523e816bbd95e8359a2e1b955b554d93de1e4c0411f8ce271fe828a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ce10aac8c106b2c1b81e0f9beb6771f0e13174ee9cd5451a1acc1ff5da7a06cbd714d07f35f2deaa715ee9f472f044a6023100de6059ec1aaea15d413416f7639b3cc589c3fcf20c2ed8a6ac1092c74b344b257523fa173250f8ee44f0290d1cf8cc760302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f4fb3c82fe9486d12857506401d7c9a596d2421bb4994844a685742b3bc973fa27a5792ecae811c27b863e3f42fed57e0230271aa50a05c1cb5ed5f0092554940dceca3e582e5ab3bdff12e54b8e89c7f55977d726c483305f44291f6105561311600302047c435bb50067306502300fd3c7ee1ad2778bd19e89e8ef18d181de785e10ee5c3b6dc47d26daa1cfd393aa284db61047ae30b92ca4d99d3cf1c1023100ea3fefbfdfffb78f1c5bfc1441887b7a8a33960d6593a8dafc8f41d852088abff0863a540a3635ce82f16bc629ec3dc30302047c435bb500673065023068edb9ea089bb1272a274fa4844afa0d51d87697f0221a6a5bcfe8b1d1108dc48cd61ff997e5c2be84d9c246c6d53cae0231009587bce7caa68418902b30360e5ffc80b47ab239da183e25e030c39f387cdeed845b90f32669d8b308d104efb0514d340302047c435bb500683066023100a4f40049f5f322cd8e72ef31dcfcccd9f0650f3d9ec0c6faf3fc56ef28037187f21a5ece613ad57fda7d1d3fb6a5dd7f023100e9091f12fa6748fdcda0544f1c0a1dc04884e64bc958fa2f047b3596cfb2cccba8b2b4b3a2625815c8a5e9ef32ea109c0302047c435bb50067306502304c4539532cac2b89a6dd372efb2baf16d9c8307a59f185a5611505f96b91ab75f568d0524277c2cfb9626f774694b3ff023100c6630704f2b9f5690e734814e93236852930f763f403d6776d1dbeaa6f48ef129266c767a37c3b5ce0cd1d385c81263d0302047c435bb50067306502307d21a7be85bfa560c48dfe976bd0ae7db11782705bd9cf4f5fab4ba8adcc7c47d5d26ec38b9282311e221ef7d65982fa023100c704fa925f693fd81c91dc57c3a8207aea0034c9fbe8bc897233761811539e94a433a9467ecd5ec06e74a22dc1c6fdca0302047c435bb50067306502310089077cfc6ffa1d000a4dfb0d05b9c6b7d7e457c37032b51062c10f8b7ff6275ba1eecdda5e861472de5e32f75c4bbe25023053dbe19c9f886494c725882929496c06b5b42c77f2649fc98f74c3850c6ae97ce8206255914caebe708684172e0af4480302047c435bb500683066023100c1b96d935f860a0a5297f43c7ea62445c695896e6c4120076274ba8170797dff35ea4413d87c7f10f176a282b48979d40231009ad7707e7fb1522b10599b71d1ebc223f989c0b90dc24e249b96925e097d7d0179d0fa35e6a97d23227cd8a2d7e3e1fb0302047c435bb500683066023100a940ef9b551b7da61250024b0007762ded98102aeaae9d1344b479a0f946587ff3d5c4b89b4e7606f1cb5ab37e10fe15023100d3684a0c80976a9433381468708b0187a3c70d29b60062f33b4f3968bb1f94d1619a0c965ac3b7eb7db265123afe34940302047c435bb5006730650231009f175213fc6d3ceb104d535b80ccf00758357d5fc4a2c10571e0505f08abc96a8b845693ab5df440e9d5ac7f524fd52a023011e4a0b3ce503876a3ab30c025227fa7df12362fe954df4d303141488f436ff2c4a7f04fd49c7e838efdf0b14c1e3f9b0302047c435bb50068306602310086d2f2ceeba32def8240aa72d257ffe5848e603c14e0bb8a7a6c2042282ca480728cc541c63c5306a21c1f5ef884723602310083cd0dba7157d5bf6208ac15220b7c04ebdac4e884d66764fdfaf13707bd516f596b46405e7543f53407b156c4d92afb0302047c435bb500673065023100f7cdeb56a2c371101be1a5d3fb0bc7bb5699eeb1d498e19d750feab543476b5125c3b83e2434129edfb7de3ff76a2d1402302ff135163fb7d5f380b50388e9f01afcd391206a748ce61b9d9e666a8ab193488bea973cff4bc0e2f71696d72a4bfb350302047c435bb500683066023100b08325d42645cb54f8d6dcbd3c5352392559ed4c8c8ac630c29ae7f77d0c77c742f4a55915e065416c0f644da7334bbe023100929df51f95911d7a52be54d43c4ac3881d87d36bc7be9559d0352c448213b5dbbf1ca868fda66e3870616523cddc3c9c0302047c435bb50068306602310099e6a781ddc547355bee16b52fea26dbae8b43907a60f597fca7e13784ddeaf38aa28a6175f9d7198b48f1c916c1f908023100ab42b437c746cfbad8cc2bd973694975266934cee82f190ef66e0b25b3d273dc324d48f80f293c24485eca19f1a7e9320302047c435bb50066306402303fc3de6c83ad7be86a0c3f389c4d838fb09c32116f91fc4c0683c17c73f71f21d031d5117f90c6f1a37b3d09c8b42802023036ee9901640f5c222020595b62f120f74c6f5a2e0b7b49d172c4281373eba461788a227b026b3338bc37b95969687cf30302047c435bb500673065023040bd99f5e78091da5bf60c6a0c4fcc3ade45627247c2ecb732e24880ac57e935105bd5162755ae2cc9f7d0d90d7ebc48023100b30f3f7f3bf86ed1cdd3c67e814865574cfa8d5b7a0c5f5cf029feae441f23f3388e9cf921f2c25685eb5391026dcc1a0302047c435bb500673065023100b2a5c55863866dad3cc056cb294a501d33f8e4eb8cb170c5c39ef18d9d16d9a280e308584a5a60f17dc6f3cebde46a18023068b73b6ae02784f7e3ce22e56fb2d040ad8cb2eca460d0848792df72e9fc6c5742804ce996d7c791ed0adad96f4f855d0302047c435bb500683066023100c8104274c1579f0c3e1cdb96e8c56acaca4b71ab44482503cde1da71467fe58187f5221685a3c42c11c16d747ccdaf20023100947c446227c1d34a14ec92a6808f1e468232548286fff9a9db0907be7530ed6ed9f56e7334a279b53ce79651f983aeea0302047c435bb50066306402306da47126744ad8762175c2b38126d9f3660ff55ae4ae48ad3cda27857958ade4eeef0215ced5cfe2c2c2adfa63c575cb0230701c518503f46e49ea59a1035f43e75b15716c01538efb0d069df6565986823a9e379b4410067acbfcd5e7a4f51e227d0302047c435bb50066306402300ee1c1de14e7ff8c01f3d16ee8e00a5a7a789ab742a9dddc082e8b734b15cb209707fe6df96d7fbcf4e2178686f149aa02307059715361b273fcf2470512777be94fb530a80cf410743d0ad0e7fb361c26117de944a69fd236f9fc1400be9cee21640302047c435bb50067306502300c104c3379f9bae06e65555aca6b24092c2ddd6366dc812d05edcbfbf4f65dfd748749e3098b400275aebbe4743a8da2023100c399fef30c9722e37dce8ced8d030c7028b049105466868bc9c4d211567f7881d808c9d501ef023c8453a0d35d61e8a30302047c435bb500673065023100d6532a9692bfe76208599401db5876d5c8c84b7d3c1d581cf8c54e2e978fdeefd442e2af942ab5c650a3073ffee90e4002304940ec6629f59d9d8a0be2aff77bcaa7cb2accdc51613f8773b578a4c7e5e64b68ee227239bc1da07e6d784cf38d98f50302047c435bb500673065023100910ac3bfbf7d601d43e4ded2866985f3d0dbcc79720748714538c0ac38f40177b1dc42214f7b4ec5d81bd5ab23574c0602307755da95dfa730deced91c47a9db2f7262a98035f3ddb4ae2a91727da31b2932940847686ebcc2f83831286c441867b60302047c435bb500673065023100f2b8481d84814f55ecf4ce96fd1982f866018457fe4bd0a54da13fda47673221778e11512a3257973ddbe20a714200e502307c62a351a3f7510a0273d78a4bde9caa60b5b49095c41ab0ad5e0c6af54559b97352a3b1587c60c22d99683a6182ae9e0302047c435bb500673065023100e0c919dfab0d19a43a0c75c24e2f180d861fa8cce8a1249f41da6c93427abc6456367f4e9998cfba2058647cc258b4d00230210d58e3adbb64ed75e527716b506a5d08e5d30d35808259458a10815941eec1b863e52142efd90073792a2465d0953f0302047c435bb500683066023100cd7fd604f34ef440dda9f8f17196f67362861927fa7f4378739a28f43822d2c8dc8c87bd409db1ec6ea9a9430b30c0f6023100ae7f8c5fa5529ce2797615dc8da79e5d1266c05959f1b0c9da16f4ca3050c0106c711faae7d3c8a6893042f6584861ab0302047c435bb500673065023100c5a9bce68ab24e6f19d0c04dba07a8b26da6dc1101868d322c4456740475c7ba47243d5781cd17d81ffeb31db1560885023070a452c70eb95c5fd7d33be5b18292fb792e896bba39525f300489de57039aae34f757e2804654f104f22640afa7e5190302047c435bb50067306502304dab975d365866e21fed499440617e2e000a19a2d404988ce28081133cd4a303da93036414a18dbf1fe36e13eb575aff023100c4bc69fc7128769d5d4a98cc7cc719ece431d62a2ffffc627bf007e5da764db3ed7adec9d98640bcc85af7a66476c2820302047c435bb500683066023100e37b1a33f0f334bc8c5110cb2e6eb4e96353a592ab7264c763866dffab50a55c51187a126480c7a871486a951dde5e960231008498bcf5dbb2f214652193c238b3d935569ee640596fa7c2c72836e2d20cab33e19e8b2be5752fef7469a0e942db8cd70302047c435bb500673065023079e5b8733b56428d9a81bee98191882265dbbb84df09e994c7b10cf7a0ad6ac0e8a719a7c8c594893dbe40444d36b956023100e12ca9660b7eeb399278c405a07fdae0ab0eb3ec3ebf7741d8b4383e2056f1a522619255a6ba687f1144780afe9ebd3d0302047c435bb5006630640230650267fcf09227e32235e8a5789cad53461f45e93328913d7484a73f349ebab8e205cb0d3a60bab62f127dc49a7bb0a70230422cdac8980d11675e03f17584bf1f85d0331ca08a2835176c8d57a66df61aa2229906ce105652a62972b8c83c956d630302047c435bb500683066023100b1dc088b2d463173cac0347985bd8e7de5229f651f47a0bda1c6a76d55e0170b8f501d82571e1878a1f124fd2c58d4b2023100b56c0c37b5a69ce289838e59159acefeaad7e2a9119d7b0cdad67ebebb33c7dc5862294dad9760464424a968807cbf9a0302047c435bb500673065023077cb7982f7c0659b5e1a36540cf28a183f26a9d42c0c202995bd68039afa306e5949455d12d8dd1550ad7047a18ef09b023100aa543284c5f4d2ba664ccda8b0efd4f215edfce57344890e5513e611fe19f494757ecd6b5ab509442c598edceb98e9e50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023046785c2fb548bc08540253c25bb2bdba4afc8075149a22de799429f3542a4013092c88168bd792f3ea05d83d6a40ae7d023100b61e5b7b2126ca86217d52b78354f439e912082634982f07ed5bae49e1172c6daeaa7bc1b147a1ee77a750a18673dd3f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100dec1d79ae876d537724327e754995866e0f0ab7521dabd7335c5103a5879a787a51bac2cdf5ee96a6ccf0cc0270eeb5302304033d68eb48adddef604675a92cc696b3ca358fbe90ae4ff72925e172149c701a2592463f6529d0d08704827bfe4fed90302047c435bb500673065023100fa1a628437cf9cbd7e48b84bdac117f98e477786a1fbe2886a859fd39c3f4a91452ca5f6f90684f5e819889149b37a9c0230009edbf37e80815cb6396113704d028df80826f282361c025a39d8db03ff7c1886703344698813b006e2bf089411d5cd0302047c435bb500673065023100f70e57602efc0a51e208f0f5a8f36eeb42f5840b9b428504300c55f1eca7b0fa45f7c4278e1d98fa6728ebc951b9db2e02303c8c2133a71393efdd2ece9e1b4f1b9a3726257bb38e7afebab31ddff1d3ce4d6732657b12c7c84ea2868993791f02830302047c435bb500673065023100a93f9acba9dfb636221485dbfdaf43b1f73c60c7e91d740bcf3494d3781e87ae8d30a773720865c3c1e1166ed30705ae023000d01dde32a1a117fca0d772e48c4f3106589e413e1299fa20d88f3583d0082778040c92cdb262c3b6564b1931b458a80302047c435bb500683066023100eb32596e82c58bb311174b4446953133e1b1ca7cfd9a06f3ea47022d93c2ab14d8fb4d9334ef4cd34fa33bf11a46d6bf023100876347a50e874f1d54e3ebe37df7f91db924ef4ec0db9854a7a10958cb22d21a9b5c5837740de495bd3b8653faaf5c370302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300e2a7595d56a9efa536e5fb1efe348c3383265a4afa032b127fb1b9b72f8f2ddc7ebbc9aafed1c3058605741aa76e76a02305dc736374372a6680262cfa9806f3a3c48ed73aae48be0de0384fad7e5e7cf979ec5f48a690b8483fdd18c0d5f6923230302047c435bb500683066023100aa69943615d1f8a91784ab172b41ede51372675dc8291ee5b240a337ec54f99b8ef0a9bc1ff6351c3209d49505ebbbdf023100859b97a3e45de4f667709a0fd0c39a99bbe97ac0197fcb04c3874ba5fa0ae6de166db5dbe800a197d50cecc91cea77c70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100850bbc8d9a828f67950ad99c093253c6e6c3ea4fb8a69922d985c030e2c67a67545f757e274e81b79c7faaec81386937023100a48e0e8dedde347bda3bf220f292b4e083cd47f4ce24a0be86325b21895bb7b7281bf313d5fb32cca02b33f99ca68b420302047c435bb50067306502305a4ebc5a3104c0da8c74f84d201a8722bdc13aebe4a34ea745c6be158137d86ab132ab7d24560365f2cce5e63aa4a217023100c45fe0841af5e9d666521d83afc9f1106a911f9066aa9754cb06445c5e19a3480a1e21cb3a4a711dff532bc8af69213f0302047c435bb500683066023100ed1f803ae70672a43523b102ef57d4a4ee6ec9fdf862b3ad6ce188996a965b5a2d2982784f65618f55ded0f938a82af50231008c8b04ee6f7423de2fb21760dfda53429997c7fcfa43725a9a9b566a816c5068584430ab71aafa94f0340f28eab8165b0302047c435bb500673065023010c77651ef88bad96932988096cab19e4ca015fd05dc72f348a3a564a331d97c7dc0b030fd327fe4d485f691569b2a9e023100fdcc6f614ee01914e186a472843f6120644c4f48ba36a06797cedfd5c3c6ff209f2ab99cee3da2e6b82e5545c476d0e90302047c435bb50067306502305909bdf7dd329f9b60c44bf0814bccb234e78945e029b6c22b10190a23dab0258d8819d2ad9b122a919dcf80eb243808023100e22e06792a6b643c5cd05bbb606abf1ff5f21a121ef031472549d2d963361bc343aa739c3bce37d0db52b9dde05f21be0302047c435bb500663064023031d04ead700a67409cbc354079ee8842560a6735719ae5cae18523aed41305503f3e1dc6ad1801914ae2b1de5ec4cc1702302319d95c09c776b3645719aeea14cd45b1fd6457377ed6cb685ae2c9298b4e150237ecdba0f7ecb7804a46b7dd3cee520302047c435bb50067306502303332352723d258746c931f0bf10102cb9e494e0abdae9e0f4d3e0ef6384009036651d78ef1b72eefdcb41c199ed9dc14023100dba923573d88533f09ffc48d88720e2bfd224b88af1f241ee329ca70d2db2bedf9fa94b93bb2ae28a44a11fdaa3c8d830302047c435bb500673065023100f074373be9b6d2d8f8cc38037f210ef7f5f563be06804ab727a00e7f067d21513be72507d12ac9c4b1d899ade09acb7702302136f0eec1a92c9d7a650522131a460bf8074efbbd61da95edc9a8459b8c8c64f9d60033f0e9c29ea98e63016ee3ecd10302047c435bb50067306502304df9e0eba6455a69ac7953fa268b0c38d24613626f62fc8528f9b4ac9160e964338675440cd0b359a4aa1bddc26552e2023100b4eced74ee4f4d00d03f7eb045c5c11234e8dcd6a12c66008a4f0e3cd7bcc50346b79c5c5f49f1386580586d48dd4fc70302047c435bb500673065023073d07aa765d3fe36f6618205fe517ef6499181dbf9ad80f69f38cff83fbe8909ee7e9b2220121f3ecac386a9e0367e9802310090f867e9b6ef3eb419fe86776a4279d7ce8cf234db3431482992785f87783d743704fb27a8c725ad2b84e00f33d427bc0302047c435bb5006830660231008249153dbdb4d62676c60852590ae38ce297ae2fc6dd305f51c1459f6dfa9ee4987c85a2a5dff869deae22688bd757be023100d1d48fb15679a12634226fbe484de5ba02476e33cd686b7c1a2102fa62f24715200c2895eca2897d3fb15ba1edf3325b0302047c435bb500683066023100968960a36b4b2bd04611b5d5084efaf0c43e11a8f0cbe01398ec4b783f640ab9deba207dc33892e0aa1a58135eeb2de2023100fffaf2a17be402b51c824d29ad217b05cf50a5b901a31e57b8c049499aa79a80e18aabd9d9d82a65373df8d5b40d317d0302047c435bb500683066023100c4c2c3e3285ef32d075f8c8e811942a35e52adf8b0519a19f9c190e986594e5f66cac9c8c817dffe5c3939ee2fde010e023100ac0a795a138c5326be1375f56fae94b942f91f8134f1b14d6512d6113b039e674397a8877434305e29f4cae17d1648e30302047c435bb50066306402300a3da8abe0092a642fc1d55d0ae088852da9a91b1071c781654e44fefe2a91f9c521e30ab7b030bed9252a7e336c540302303b804ec99fa2bc7d828ce11bb19755cc7f0342a16dd0cc5746f5d4af23b5a7b6915de29d74979274d4752e794912b5350302047c435bb500683066023100824b69d48512d24ff2176be51c4706af68ef49677c823475dabf4e9bcc3f87915e6240781927f3d44ca1edb2f192c8d3023100fbe4f3a0932f5ae05f35effa2aa4ee2f7e42e80499fbe1ab1dd15b9ec190bb3fba5a33b18b7f1fd0993da9a91d7a02810302047c435bb50066306402304ea2874df1c2acc9a1955aa94579cbaffa3d4ee25bcfa6233f5b7d0603bd071d11e8e3ae18be48418a631ba77cdb99b8023009b2f64dc2e4290b6133f402230fea32043549bc40097fd94b168f2e2efe8f5da9062f04deca785def1723b7a9b8fad70302047c435bb5006830660231008444f4e788d1d28f8bedca947b7af6c17d5077acc79466409a24f711c99755929465b68e4c5d1e34e4d0cc7c4140f6a3023100b75168831d94c384bde27a7d659952807f14d13fb9ebfa05f598e57a62c3a7a74505f235f57e649144b21b3010e287ab0302047c435bb5006730650230789af1281419e4c3110b6cb6df06d1f656da2fc4e224b8400e0154fbeb4db0c0a222660a44af5f8eb479de2544ab8cea023100b00c01ab9e077119328d963d8864280550e81052c56af3b635d8d8901f1cf9bc6400f9f4afd7ab3a6c14a2175edadfee0302047c435bb5006830660231009ee1c59a2d0132fd5e6de6c7dfeb81a1ce01efd0de895f15898a53be9f546e5eb5daed380ffc9a4aeb3d84855aa03094023100a09bdd5aaf5a98fb18d283366f944e1cf83a585bffee7a7ff5f71d869677c10b4456f1468e4960651ee9b8ffe7fa2b280302047c435bb500683066023100b00dfaeccf7b5d0808fec1355867eb2a8a109a763fb44873686efb721ebf184a1cf8c937add8206adf2fd17d4603c6e0023100fe8036aa053cdadaf2240ccf98edc33489964136a337c29ab9d93a3f65625d09403f5e3bddc7e469c992e8707371e56f0302047c435bb500683066023100ad989518ff9f6eaa2672ec89baa5d4970a990b8ccfd880b4dfa1b1318d8573a6f3a951cb833abb9df332a8c33267429e023100eec4f60c423a03ffb46249ae93e197ecac3cecef1351eac58ea9ceeb07b3b5cf193725a4bfd6fa3f1a1ab16490eefc1d0302047c435bb500673065023032411c4ef2538c13f0989775091b318967f344342149635cf225a4f1f76fe4cadfe4e39cc988c5de3a98e9c8902dd811023100aa35325d9602536f483e28adc9b82de292ac7018f01e762be37a43742c9cf1c43466954413ddf6ef6d08d607170a11f00302047c435bb500673065023044de7cebf0738929cbddae453c3ac2d3343879f97a9c472428183944d0c76362ec384408a3dccfbd70067515b57174850231008aebbc818d92416a04dfe88782deead0012ab4af367f8249127edf2629e1acb75700482c5389f7784906e4732f496e0f0302047c435bb500663064023007103ede59bc0b14e878d4899b1b0789c7492d8f175c5d964868677692217d904721392a3d4cd4736f1a2b369d400861023060c4b6c283b3aff207c6535c580f4250c89f696fd0a78706e23e27102db3ecd789de151c7ba61b7002b9810e8cf7780e0302047c435bb500673065023100d1c5fff1b417ddc8abe2db3283ce8e27e707034b212447b6dfc0a54704af51a1961574cf9fa8f793e9562d2c7b9acb98023038365e78c43f5baf24106d2d3fb10511a21e2c83d49c3af3f15fdc1cb872eb43d62d188598ea347596b4fabef0a73e6f0302047c435bb500673065023018a3b3e16c2dff1dcd6b85300f0de842cebe150cb9e0a5a936f8acf96fb3ae5c14a05bbd4b36fc699f59ac76506611c7023100c7c5711e566fb021993b9e8ec2549e3f33688716db7da6019907fff9cff46f7471a52f7e2a3babac9d6af4967abdca480302047c435bb500683066023100f989bdcfddaf74110e18f3385b8f27d27d8210483642f2b43026b5e8d71884781497a7b588f02f97424a1359b99943c0023100a3f7b61750f215bf5605485f521761366e329de022c2d31d810b5e4c5d4fda5dfca7f89a662b8882fcf1eb17b4bfc4ab0302047c435bb500673065023017a5751cf98bb1da22217eb3b4e5d28f8046d409186703677c68cfd6e268b16a69e9582ba23d597a3e47024bd423bac50231009e43be796a34f2906bac9ec98633d0ebcf49ae84b7e6acd6e36714f7f2687a90d4ac72ad088d8ad636d89d55cde4e5c20302047c435bb500663064023063709f63332b8957f84434208aeef8f9b01c5459d791f0fa16910a18c21bb41f6ffb71a128c07a8bff2773503c0ea34c0230359a0d5e061d515fab44c6ea5c7f5aee4a3301e6b7564bc0922a9bdf7fda2952132ea4285e92b61f86bd73079bacf3480302047c435bb500683066023100c00daf3de4db3edbef5d6ad1edfbb3c2b1145bbae60e5109d56fe29abec7867b55b32056470fe06f23566b4c098a2a5402310084cd1a21ba93d28964fe34421f67f73e6ad01466592ec16bf603474c844917abf9fe1f3f0c44d5d818a3d29ddf4e87a20302047c435bb50068306602310085368186aea27effb2bb42fb592212c5677169c91ee77751656a88c96244f161051a60ab19b1fb339b65f6c6e3625238023100f5c48e0fb0e19cd9015a16838ac3e59c05370618c7afec34909d7b03b86c80e4d806f14fed6a48ea54c246c05910e71a0302047c435bb500683066023100c3f2ad565950961fd409bb9eb3848a4ca1fc948bbaf121164a43018167f6ba68da46a84a30f42e484111d45a0cd6992c023100fff462ab655d831f859d3e378be484df141656ff1dd6290dc444fc2f55b24b87ef1c00de19b3d2aaee97416a889696260302047c435bb50066306402300171daeb0bbef0ae89defaaabdf357161249dca6379f0b06856beb1f35e289744fb8ef718336174f9ac9821d22fc3c7f023039609c879ec55bf7748965a49041ee2a7bdfe056cb01991ba525ca13d911e83f177c02d71a4387e80a130d029e4797c80302047c435bb50066306402305afc5107383320caa6cfa73a19031ceef054f9326a1af45501213ab55a6f9c747f7fc6b68b0a5f033cbfeb0518618c7f023070561727cef43dae201aab7b7dc7bbca40ab237552ca1e95ce19573083d5c9a2d97d213dd1ca5f8a10eb8ba81415c08d0302047c435bb500673065023075666e267ce39bfecb8503c621dfe832927d6981cd67d929ab89f0620bea2f0840f48e859cc15a8ca3a7f5aa79dae701023100c3648041deefa943eeb07efd752feb825d0dae76886d1fc7b018d314a8fa315003f51ebf5952998cccbea2dc6e79e84d0302047c435bb500673065023100918f8b6048443a41ef7538054aec25e1339e11315bbec893a860febd11de3ea8ae5e97d961b8a8108b1774f94255ce06023025d0661dfeb8ce955e419e0f284b1e4f39fb1e4fd2c02b080ad21c239fb27a87f7c188a9e45f6c02f083bd077d8b21e60302047c435bb500673065023100abc5a01839b865c26d5fa5a6d4efc624789af95d81456bd90069900266ec74091d64371773d399e226ac7a471ec50b0202305e56f6b5f09c93308c0a290377545a6104ce8261e0d4603fbc7858e21fd398f8c8cc105166d75e1448e332111a6362190302047c435bb500683066023100f6521d669ec8898e9ca1dd1da4e78f834e262261d04ba56ef3fe2b29c5889acb159b4f386bbd7f2e5a550808a7b5c652023100fc12f959304447b616d222160742a90d241a6a6fdc8477b3f7d7607264c6f26506a988d441b907bc8ea96f62f061ab080302047c435bb5006730650230191b9363a3cab67eed38fbb9c34c09a3b1c15f8ab0efb7a63fe33827666ff4ea8bf1286ee64151b2ec6d602a7a3dbd63023100ac67e0022f49cb9f1338f331fbf9a5db50fa81477f1a33a99f50b48d5952d90e3580499f8aa6024707af29ca9376f4570302047c435bb50066306402300fd78e6ec12995a40608612f6b2fccccf6d091f592b21e9c34c73ceefb1c9bd70a0bc8ebaa807206dce84304844b535502306b17429a842aa9a8ee1d1c89205454ed22d88c1a7ddf851bbc1ece8b1b6809d115acce83b1a8ff640fd071f25d8c8a7a0302047c435bb50066306402305e644611be49acc744cb2c3de9328b622ebece7f8943454eb642beea87e2c7410e9e2a6334fa5ee01cc66123fd066ac502304cb136c1c0238743bc7d938130e43931e505ed0f257bfbc89eb2365e80111d617f91f1d4f544d1babb6a7f4a2b96e9830302047c435bb500683066023100b746c9df0231ded896f8265295608a9c548d42b892915f8f0b0205911f4b575f272c28fd3c20b23ba6cd592b4b228892023100f5d4b59f4a6f5a457ce1afc057e582b237c3d26ca67d637f886c2a08a4cd16ce76cd99367fce06d4f1a028b39722c9b10302047c435bb500683066023100d02e395deeb3906b765a9cae84c7e6db98238c99d596fb2f589fc6de9f88f7986a1e9bfce89ce6cc33823af4f99e0723023100cead5d75dc347fee9a57f6bfd55ff303265f4ee937f2423f4513f76c73589193f3a4190e968463021f3ce41f7619f7bd0302047c435bb50066306402304cb9e989f4b299ad2827a2926bc3d9e8655a207b3862d642296e8a1e2de46b6a70fdc24a0d7d9f84d06ee2e6b43ef76b02302fb1ad6234701ce2ee85ed64caba37ea8cfdbd2e21d7388579896ebdd51bd99e678562746328a3756d12b9869eb27a7b0302047c435bb500673065023100f7878890d9f81086be4e81ba7fe223671c7ca3e42d3627cf769e3dc829091f6cc0b074f5286c98fe18dada54991fe0b602300518233d334da887af622100d1f5c4d5d4c5c65961887c5b5316b72c3875077cdefd6439df7924c87f07703ce5dabd320302047c435bb50067306502303d6391f963708bcae2f819f77b173dbf2fff1532f7a9b1f50f7612450d379e3e31c84cb3afdf59fe8947c12c18e1484c023100aa441d1a583d84dd570549a398cbdc9759d6dacaac4a2cc1949e57c2afff82f94bfbdf122a48d4582c50bdf3e64499950302047c435bb5006630640230534fcbdf5b84d9d80e1c15a42d20174fcac63d59bb31559859ca8c7018dac1884620e98390000b43a8b4809071f63f980230528f6709de636d7fdd0625b0f058f94de642b47e3139078769242999b13fd9d88a693dc23e22b3d7e146ae25614ef8630302047c435bb500673065023025d6def48f680d49b110b9aab132b24bb9b3d9434dcce6893232d83bc6790cf105645de6796c7bede6911a0b108e79c3023100de5aafa1638a6883ac6a6584330798e3e1835d62a9ad2b9a11a74f30fd23e9f157c32071898519c7d7e177316cd3ece60302047c435bb500663064023059e3c5bfa3e6184216d6590034fd72ddfff1be62f7d14e0214200819ffea2bf0fe8d4c88e2da2c3dd6f310f31e1f6e3a02301f67578ce886c8261cf67bf5c90c28f95ba24721229791726e9084811c885531f39f5c4dbe30ed1a3fdc405e091e4b400302047c435bb500683066023100c26a26c3b64d8e4567bfe8b718720cc04854cf1109727d6864d1f25022deca842eca163fb8f5211dc164b6ef00a89500023100948d713ec7e7bd9670b8eddb3afc2c307d8c6e577ee1fe5b6368f656cc5cb8da6f26c831f15d84b90b4aa9e4e53869300302047c435bb500673065023100facf18a3b2c7ed25acf5aaf36fe8201937d668ccd15f63658e5acb000b21a9dd0469082437dc4474038ca3b91321582102301ec020d128edc33c10a2e34cc1889da4538c711ee4fafd0d316cda2de652bb35de2f9aa8b2cba99781b1c0988757be860302047c435bb50067306502307b9480942164a5071a8daa338a1341341bed533a8080ca72a24080e8487505cb00f0b5258544ba886f55e1b00942bda7023100f2c5a8053068847b041902745ee3ea5c5974ceee4052377a1ca06919a1445903b6c1fe365d0986b8acdad5c9a37fdc140302047c435bb500683066023100a1d00030900b0038fb3cff752bcd43633ca03cc5fe04e456a569e0088146837535ef90cd0e36f794dc8c08235197a77d023100b406f98007650d0190f21a87e8c9a91f39f77e19debbce1f7ce5a5565111537754068c36707fb9fecf96db92a7ce522a0302047c435bb50066306402305f9bb6239b0e0d38e10388e0d70b4b0ac2c6d43333dcb762728a7b3d33df29116b1846a1eb6f53186b6a221a631d1c220230036fe9d9b80dfdf67e6f42b0554c7ed7b39b4472aedc1d9a2bcddd7cea201de301b54140a5221cc7a64b4e2f55f8b90e0302047c435bb5006630640230182eabc32a85d5f20f934afc2c8a03ad1e414bff74e6a53e5a90e2172c99e274dbb6f381a02cd44278841c73853193f302307949cb02c88712176c33c34127dd7c4413df211d8cd96a2ca8b8ba7b603f41821bfc8a38485a4fae6a7a1245f6d8153f0302047c435bb500683066023100d30c41a73e20676caf12cdadb0bce36e5b5656249904e5e7966259a9845f753d8d9f23de597939ebffea5768d1fe7eb60231009351cb93344608e6d9c01b8d207af89b053f6ae6b35bd68afa7be2558857a45f286e4bd427f2bbbb84bffdd4d655e4040302047c435bb50067306502302d67301ec0cb4f8cc9b3fdf49d152e89bcebb8c218aa5cc8bf82924bf33335f58dcb8554c0d7465fd38d7268d6b4ba2e023100985fd62cc09e4da63029197c2fe58516daf0543fddfdc9b80352d6fd9a69f411800a2e1fa560f1fd7632660af4f0c86b0302047c435bb500673065023100b2244cc14fae8e256de19a25c48477a7b6619e87af3419b493a83814ac832b80ab0f1c4262834c164cf5498e47e2031102302f01b149bdbf619ec787260fd374fae1c531ea198c1c653bee663db7b238d5a5fb089a002a87f7af017797e57bfa738c0302047c435bb50067306502307d25b3febb7914f99ab78d3d44163e81e9e13a65ae916e7892fca6210d44f32c07c96f489d84288a2c4ef72276fde282023100d8e4f015518f4459aeec4a3c4fdbe65e40e262032919455e5a1deed304d8605489767d8c31a9c85096a67bb11f132abf0302047c435bb500673065023100e3d4a383048e6d5d3a40a6a5308d53c9bcf3e55e8a1e266568ce1385528e912b3df2bcf1125658059204c09cf257048f02302ffb92a47aa8662daf248a65a5ae0df369d126f183ab2635d89ffe8373c73089eaed0d02b502c231b82902a495e703ed0302047c435bb500683066023100c95981c8f163b40005980dcbc2122aacd43676c0f4b5a4e7d0489dd7e3bb44958ffbfe510535b165b1d1f98d64cb8d99023100a0e43957a097576371597ce8b58462c1bbb946535cbecc3f7a1cf622929ac6ec84d1e1dea6f8bae89b96f6967a87b7700302047c435bb50066306402304f97b383a32342dc904ff1cc228c282d0fdfeba3e515feffce0f37ca1e15163b70e3851f50ffd015c7b5051c9c022f34023003d83b634ac0fca9dc78ab33535e2e42a62b41518ec7ea17a7856c86d1da7e211c2c704ee70d5b626f57e0701182ef140302047c435bb500683066023100bf7de3df9f7b488552c44b472d766dbf99fcba588688f5019e7e9d9ecedc705ae1299f41da55de4fc459bdf96636916a023100feee72c1dd7ccd32bbec08a4cabd5b9bc84f74b15c7ef747d1f08ad961b73916fcf0a4e9282e50472672c4569a74beaf0302047c435bb500663064023068f3236cea3150468225e36a013cb7e125d6376500dee0ea6d6773d38bd72df44b27bf064c79d09bcd6c8fde141b791e02304cfd4c6e279d99575f3315524795a40c28e6e624e98ef595c578ed89e546026bac1a6cd63df6cac839efbfb939732b140302047c435bb500683066023100db258fb808f4bf20b06592ba4635ed65bbefcff49f70249f9eaf7ee9200364d15a0fa857d46a7e5ab73390004a350302023100a83f0dbd05da714cf22bb1095bcd97f543e256f1f0827cb0392b6cfa4c1a5d17595b7f07c9c81885f81c2a2e11e672fd0302047c435bb500683066023100ecfce82e250635736b52b7564b1d5727a284c2fb1344372e1d454b4dac5b4e82fd1f29d8214c7e9a9f6fd7b814cc0341023100eac3464b4aeeb9a5347b7a9b4d2a814e04117eeae20ba115bcecea9c8777f5a1b79d6b9332aa0d799a185b5ee1e2194d0302047c435bb50067306502310090b8bb80ace203ad01852c867e8198ac4ffb27afa38d4f52e857a2707b16c6e8e7a202720f13a3b6c00c8fd71717b90f02300d34a3345e0143dd3b433dbc9674ba95945e1e00d860bf2773d44d73dc8c8a61918d03e395485688665330df01c0b30d0302047c435bb500673065023031b5a94d6539ac02f97e26ea92e35f6c52b2ff0d28b8562f12eba8b88f5626141ec7a2342912690273f12fe0e8dc7b71023100929e6f5d5bdc960f030a02d707c71385695f6a992c3c32397607ee2c8f4fb08fb1723f26674176fb99bf009b5248b4430302047c435bb50066306402305e17bd95c622cd44f2840585ea26312d6abf6eb6868d5040725866639199e19b81eb54ecd50acf4044ab1ade6054b65b02306fed18d0ed746681c899fd72a19288ce666917bbe21f8b1c9ffc80168ce888560f4d95b9d3e2238686a9de1398d529ce0302047c435bb50066306402302805447e2aaeb557f87752248652316abc90a0e53b0e434891e001ae88e20589b7bddb3ad76071012d07a338fea970aa023075df500d2b220649bd5a5fee29e0a42224812c661cf10f52693c4d94f55ef492de1f294987526f5f7a2374ce5d14ffe90302047c435bb500683066023100df1a2818cd13ae66a2432271eb2c4495a04279b2038add037870343637a392b7a0465c7bfec0105a31ab07e8be1203510231009e7f5e966c40dfd19f80ac7ae57004d28d2fdbe72dc8b10f26551b4438a6c1549adf6f5658d8e55425616a9d8dbb01790302047c435bb500673065023031dc14bb1f2b36f5649cfc1ea301c924a764ffe6c32b32f39ee7481dfcf3c05e0a45edfd4963613134466fe8a67e30a3023100dfa69f5e6e0c279dcacaac7d37739d72553c1bf3cf42c5c8f1644484a0470dbf7b1de65bea2a6afe5d092f7d0cdbf32a0302047c435bb500683066023100f3fbf733065e733391c57bb2717bc7ac1596a05536a78e94e494423c30e820205cbc0ccc38ee8adeb96b4269874b6570023100920230e3115d7864139d202e874df5a1de680ec11c7eec693f657ebe8fa6c5f9a22e7bfce01b706adfe99591d00bf0250302047c435bb50066306402306fe35aa6a84f087191510a6176e5835c82176928b373734955ddcedea178d3660d8ccb515cae8e0e869430505776519402303ac477d17644d9a89e9e423d085b0b5b2f8009c9a32a13aeaa0da13b02d32c92337bdeefdf4b86f13721d3d33f483f600302047c435bb50066306402303e20a4d3e81ce54768416e1b4874fce24c3dae40826c498ca340c8b74bcd13f9a6d7ff980cbd988de1f0efc4f9c0644802300b6e5e56ad7c36ceb57da6620346d119ab16b6cc9c472f88cb6a6b15abedb07c6f20470eefb1a6b1c39a6cd823c037120302047c435bb500673065023025ef6fa282ed1e5e109f0b74c7448ab66da6611409cb1f7795f7df15a169a9618d1237a60f1122db0c81b90464fb520e023100b181414c23fac7b3cf53c5ca9997085f37e016329bbd8e720ed4d5bdd1d5c9e9d70d43539f97102cedf06e6a00d775cd0302047c435bb50066306402304388882e4e0c3626ad321f8ac2d17a3d73fc2ce5a66e88ed3d3b0e32ca305cc4927e0b089d678b448c34109d1ef45d6b02303c7a75290106672ab2ee8b6fe59e77da1ac15d09f71526cfacb4cc937f467d050102d9388ed7833c00d0135d213095860302047c435bb5006830660231008426e9c0d82ddd4dda41d85240c28d1a0428c0a809a431c51b45278aa2caecdb7e5f4d2ebdbb731b03d6aa0fa3083350023100c61dad052fb92fd581ff16ccb0e9fc60777144b5f7648abe6a6b82ef64ffc32e4edb038be19b6c335e746b4c24f07fce0302047c435bb500673065023045196f5f7eed5e139aaf8ebeefd0e586d22944f7c5511b13cda74a70462d1f0a8573bd7f9ab4bd10d90d7782d8b8f384023100d9a5af57757f39b62ee60a60336d310e205a52b02f936da9510736049a470f12176e5bbb8a3f6f09ec6bdffa3024314b0302047c435bb5006630640230754c557c20f247d6b0695afd7b65bc5c600d2e3f80587fce7c2ede94e812ea7c344b08a6a07596babfb63b6f073ddd9002305b66ffb6bb87479d1fae089347403891fe82ec3188434ac6c772f26ba7fd3cc86555d376c8e3e3da04a394a3a7aca4f90302047c435bb50066306402303927a0152417554c084c8b637cd740329e9f661dbd7da5c49cee3fec06bba9d287744117de4b804925673704f882269702301f9812ac57fe53169f035560f717c755dfd6166f9f9bef63f68a77a347e0ba8f2ab46afe6e70f0444309183f84a079220302047c435bb50067306502302cbf968c9ec4ec08e88afa54bbc7bfd80db028b678cbb590bf18db9519a033a2bb9ce33985d634e1d68c44bab0293412023100fbec6cececfcdea6db2920d8d0574b5b76a0ac1d550e99c7bbc34e3d02d3d177f5a989bc0ae80e29adfe34ef572184bf0302047c435bb500683066023100b9ee2a078dfcc3b3696d6725226ba240a94642e25c7bef22d5e0addf5a8a509bfcc58ae346f39165babde3426b2ae1b3023100f9beca6ecdf2d786cf7484826fd47f5075cc8dc32324c5e554becd663bb23a7c4807ff2dcea150d6f75018c37b0ca83c0302047c435bb50066306402303861fdd171dc174ebd154cc989cca48c41c19bebbc84ed2384046dc9f68dccc54d70b0a52439f772d3443fd2320d6ef1023020c60a0dd53202bb87f639b2ccc999dbe44bc297629c19a9634f6c2af365aa6aef378abe91b8971c6d373524beb958350302047c435bb50067306502306a430c8172497a07c330243b8e9073c42ac04128a9b7f396ea19e9988165f7ddda27690711b6e92dc234bc8d5d18c488023100e9f5eaaeb1c7add9f32c50e644d4135a9454bd1c59eb9db5c581d8966d0478d33de1089cd5791b1c490ff828705635080302047c435bb50067306502300df92743e97fd50e80972f35cbe71ba4c03907640c9b823e81c4e49db76806ac7ab80c7c45a999ca8a8548b61d870853023100b5e6b88ab4a8465f4b661c3730a016d63ff930b13c128ad355bcb655ab6228cfaf27a25701fc3d4d9f98e0027d1e4f030302047c435bb50066306402301330c2f7c94d58f3c073e7d83bb7adc3e7a3e4dcfa9d7b2c298181fc9b4c476a54c880debf3722f16115e0abdb211be402302ca0684f63aaf29cd257fb4e922dc21ab16c86e595cbb3fcc1aea1e363b0391f59469be622c705aed4916fe221fae44d0302047c435bb500663064023060174bf3cf0117a5a645f0c1f07323565c8eeb84ef41714412fa3609253639eff21b14a1ab65fc3e17106ea80f60fb5a023019174727452f302fee794bbee37ecc5cb6f3d1ee81efce36bcbcfd106f34a36277224f441323591617e2d4c4af81023c0302047c435bb500673065023100dd92a9000d40e04e6a9065cbc444d32eb64c9af1927a666cbeaea6b1a304e3aad56612f2a86cbd43e6f3fcb717f15e64023006cbd8725415e04b43abeae3c95ea9835d255c23da20f8b37d48099b512b2bc4004880999d2a64227f9713bf11bdfd000302047c435bb500673065023004ee4d47d21c0cced9e558435d97af16a3b8d3a65aa88f45ca187780eca61eed2765e5ab919d89077bff385b4f1ef6150231009f41910c5ac002a51603fbcd5a9f4517c2fde11395b0104640d78adfab34324a95dd1d27c5809ea2652fe7b0cd6773040302047c435bb50067306502307394224dc201bf764560281f54bfe29f77d5078e60cb22638b1cc7f68e43d2b534ef0060dc1422964cfafd61d71cc1f8023100f689c58bbad1db6c499d1904f955f3c65419345c85fa6b577fe72a6ffb611883bb79689ef58b470e1ad7544c5cac18540302047c435bb500673065023100efb7f89d53ace03c3f90e729cf6d319aebc0faa853f38b452b3d0b2b1206cd51cc553d68aa40b1a0f0fd5bfcae5ee9460230778d4e9e5e506aebc023bd13a31334e4b3f1d5aca0c2c0f26978910b3da465f00d974ba2ab5531cd7303e73e7d75f6c80302047c435bb50066306402307e596e6d136294d01366192ec85c0a140608cb2004da7e987350ed113982d1fa61fa915583d6c576d8c949d98a0ee85602300a298cad5bf4dc9d5c3988f6a85bda0074a5ced22cfe095c5927f2f1de92eafebca7b21b90b6164e4aebf13903be0c050302047c435bb50066306402303f184c45a36a8cee542668e0e11320e21eacec282fe3a60bc5de19f7c5cac4851e42c8ffffc6a1fa58d453e16f1ce590023008674d3e2a43d4b7eaab826491f10a55dfe8d7f744e83ab164d75156737a77a43e45179e3f4f753e8ebb84cbe7f5f3c70302047c435bb50066306402305eb8658b4dd0c2810ea934757b95c19a8027087dbe7a46e788a9656a1a988d1088a4b09fc355669f94a8ff1b311ae17b023000e88c4e60392e70e6cb555a66bfecb9737becee417f8da1ad83a4179e868c0b10b174e4c188442bbba6a663575aeb6b0302047c435bb500673065023100d952977d115dd56c0bcc16e8374d3f9c5ccca604cf366fb2469df30cf0d305c99e037e967e1bf74fe87051113c8fdb6c02306fbd675bbeba0e6a2ef5d323afa6c80a8da49bc0fe5a287ef741091a90fd40e5f58c40621ecfb3a2bff5a5317cc4704a0302047c435bb50067306502300dba842f9a7debc208b20278b6e5e7e4435cc4910ca420127aa3138a8703360fc143af02bc34c5b761fc495791e3a203023100bdd8fa3b0e0f118603d2e4d73b84b8f1f38f0f37e3138684024563bff0986ae895e7b50220d6d92a35be2e5df8af1ca20302047c435bb5006630640230749b136449c6c79b2701af8e6f9eef030955bfb2fdfee0ef9429e017b020409980cbcb12b885149c0e4fe4564b61569c02306ebc228fb1a7c0a1f56a48c27900a3d914d6d6379dd84f20fb8c09310fc9893c43bcbee71610f2c324906bf574ce7e9e0302047c435bb50067306502310097c0f9d1e72c5596dea6e2915d7e7b02c12aaa7d18d0a4fd002e640d7f1270578abd5e345d2d9644e81e550bb3d008190230318cbfa0a2e87abec61d665788e7ac309c98f679ed3ba9e74425291b07fb9c5d3e6cc7309c942bfc3606f2f5bdd2e57c0302047c435bb500683066023100e07f5c2b5812aefb2381d981f925fda914f552db9e06f907206f7d6701c8b9cb768b054de8fd7fe4468e59c93964d174023100fdbf62b9f68a24d7a6c6878d4825a5a09dcada0cad2d3ead24a82f41a3cdd32cf855e28f8e835171e3dea9467df3cbc60302047c435bb50067306502301499644afc73f45ca7256e741ea3dfa0482beccdee963a989b218c6490975dd68b3bbfb0cb1054bcce47a9a3f92ff31d023100ea2ce6041d71f8138315ed152b21d5aa25596c9082414b734e4cf4ada9de5c252889653ff3ffa6dfe01ec460fcf5a2a00302047c435bb50067306502304a3fea7c7f41372f8616c351ec3b448c8ab0b670db4ff7602d4d11d7b02153e601ef02ee69838ce73ecc9ae826cbfdeb023100f53e49b6681d0b9108f4973d5c7bd1c08589a45d2051dc8c27330509502433e8350468361d84e2894f67ec27de2caf4e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303bd50ad67a3944acf576ebe0fd48a71d2a12ed151f309613a8e8946f6ba586207845828864dfb4e14eb5d8b1fc37bf3202304156b09e0108d84da83337cce4328e3193ff3ef6925acc695fb9c078d4a26e473d1ec29d48d1685e591ffd0ecfe903630302047c435bb500673065023019c8e6d489196edd378ae2964f37c77f1e91650bae369d29a5c685c3ced81543cd901b980e98ba7d99eefe566165d4d9023100b05348be956d1346c5095a2065dd4e37a78d04df9cdf80fe368cd861b0fb307f74d8db6fff048b2609990469deec5f960302047c435bb500673065023100dbcfaa1bf6e5763e5574b7de9e97e23bfe394692e461fb4bc4ddf0c67bea2e26dedab0e19cb153314cf15d7664e872bf02304579552baed50e0c63a48304f925c8949bb974bdfbbf890aa17fc1dd5b87a143d63d2a256c540243c7662805c5f13ba30302047c435bb500683066023100d90f0b0252923d9884086073fdae3586c6946348da9d5c19e0fe8919db3252ff484e026bd1452a61ac7e29ec5237f5a10231009354149b1117a0334b281fc9620ed6d83580692e8e34a5e2be68734fa4badbdbc63395d8b175bb5a9624cb23b995571a0302047c435bb500683066023100b79a3146b975c5add2daa4d459edc38b0edbd7663e5641314ece5118ebb5ede8792953d455cb207a2f78dc76b000fe2b023100ae3710fba28b66c0b05aa59fc6d0fd99ce89d7eb05c37692927218a1ed363ff9e50da0ecc0431fd9e1781a33a4db0d310302047c435bb500673065023100e0b1f11d65c649d7835b45ba9e9b92dbe6376515636342990708efc5ed54ae2a65d128be5c5bc51db107adf704e622b002302e67b45b691f489ca9e7370ecf10da29056215f826983965d56bea0038f6c74a42fa371932d4896bda4c23428c66a7bd0302047c435bb500673065023100e918493b11cde4f4e17f91d6b2427963e1ebb5c6cdcb17a357c7c97699e2382d722f579b385e710a8d31c4bb05d5e38b02306f808f571f9589327f831314ca602027d97cb5c07ec1dd09de5db7ba87605b013df7168bc470ae9f939a12086ea1d06d0302047c435bb500673065023100e40c64a060424b1e2d05579091674feea0d3d5340393fe8eec2e8f519bdeb6a0c9fe6f2940c2f1367a8cbed3792c971b02303bbe60015c0b9495e5b13ebd7f26294495d6c26b8645981e16f6dee77bb073d3d266d0dfd79e1313a5826a81db8c53a50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b70bddd501b9d9f8f035eef20ec9b11a10efb511b9f2ae0e4cbe906f4ac2337cf3cbb4107ee9c9fb041c7155993fc2fc0230298b166567b1b20d91e90c7fd3c955b51c861998a1f69da74360261bc9fb6d4b17d496ca4a82b33155ca77e3007e17200302047c435bb500673065023062c954d6ac57f33a94f38d01defbf52f2f089df19aad3ef88b2a7361b409b9f006244adf26ac8d64e47e29f28ff03a9c023100919fa6ac869def65a8346486e76a8f5e81d81cba30db6da1d91f3acfda265e3b2ecbbf4b1807b5f121b38537e115df3a0302047c435bb5006730650231008b89925a2e3ee19f1a401bccb7cb413aeeea456b17d13cd8754c80ec1cc462ec4da9439af342b98336fe362c50f2a82002305fa779c8d1806e6d8d72b4fed951ca69bc9e0ce25badb18b3983f0c88a752b2d8ad9a496fbdf11e19495eab9993d4ecf0302047c435bb50067306502304a6af4c26cb504631cd67a97a77bb620bb0301e6d0f2b31b598311cd43b34ab4caef19e3ad6aa0c76c1e13274d5431e1023100a1ce8c65d49f0a5e9d876fde4f2e9bdd14b8d4201fce8ba915f43d6c34c73ece0357c3a43d56d5686ec2fbeab4b9a5bd0302047c435bb50068306602310088fca2451093cc07abe7848ff670b048ba018ebd7501492fd36485c5d037940870184bdbaedcd06b7fd958f38c720b1a023100abe2892737e02518199ede3fbd14231c909d99f1f3c6aca917f35abd351460af60af988267a949f725e157201264f8650302047c435bb500673065023073f900db2f51ffe74df8cd8564f90255a35f5da398db3b78934d18b707d515ad10c259340d4617ff2bfe026b53e50541023100e898fb1278fd6b927706f51489c8dc8beb424fd94312679a770a6ed3d4e470da73097a5697617abbcaf5c2ea95f0a3280302047c435bb50068306602310098ff9259f057eb2bd0ac7c7eb0b75246d5b07f165c6ad4174a32303e7989746dd504e91ca2b7dc057f9761677552b910023100a4b895dee5153ba36e4ed7c9b6f15f55e71ac766c263dc24614375c111bbc249121f193a431683988f97848827b090ff0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c66c04d4b5675c6153bd722cf506f44b965d24679c48432eb23887ef74c1b6b5ef2fe5eab59c22230291e3dba0a758be023100a8d19f520095def37253f571352651d1f7278328e8c9918386da72ce086a93cff357f9e5d8675ee836caa5d5dee28e810302047c435bb50067306502300656fb5c1aef1ae081d854904701f922e4f4150acbb84cc350c2557b9c519c906df257da251adde53747f2fb1c48e11a023100b0bf8bae89abdb030569b64e9842866bd3f829eec8094dc82fa6fc65bb26addaab8dd5865c3891249b098c7cd71b503b0302047c435bb500673065023100eef9f072c1c30c01740070209e2990b09f66960f471e82caa4c8473d3e3de79350b779039e8b1a1df1982143662d023e02305f70cda64ea9a669cc290e2ed265fe86092cd826c2e430b3ca57a7de1892d7ffa3848422bbfc4b0a97a035ba1f2b75350302047c435bb500663064023008529136ee595d0447c22265e1903034839dc3aa05251fb65e92a007096de75a2f46e2e86dc000dfde13850f19c1e19402307555dd46ba93ee519fd01c2adc12eba4862d97cb513125e491d494cf2af50a36edbfdc8e6d7279401ed1945d8b9d12540302047c435bb50066306402300c894cd2fd210ee94734c9065681180d8788331be844f9fb009a8ed1cff325d102abe4cb4222671d75972283852b5e870230068b7d060fac2a0165e068663807f2b15b21618f2d8a77bc842bebe5b3c5f060954414641008545b31deb88fac55c06c0302047c435bb500663064023056944761ec7197a6801c98681877d8fdd884dd6ba7c862900c8d1ad29f3383bb0826335241b6f46e08317f80dd2d0465023070aab0747fc9527ed56c4b08e827e68dec08a608ea02450cea3b00b12d7183fcee942b2fa78731828693feecffe7783c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307eb324e1ef8d31667388f182635d8f0f0d14d1cd6757d5c1580a2fb2f523669db8ff2c14358d72185b2a09ab857481e902307af2f9702e56d9359552296d9bfd572ad1ca8af100cfd2b098068a6c09f40633f54aaa98b7c194cac47b6b59582dd3b40302047c435bb500673065023100d07ac03e776c1116f81a862791591738b4f36ef9108d9c3d87c27a4c7255dd33ebe3a2bf347bef383644be072b17b4bd023064aef75d7f3e80840c5cce80cba428652fc0bb2750d2ef29d10fb387d69fab67c2e2f6f6f88489da66ae0a5401648e1a0302047c435bb50066306402303c93203a080bd7d1ab3f42cee9a1df829344449560223bb9a2e5f0b86520cb531e4f2ff1da137221430dfcec7b0f56bf02304f95ba09337cbaf0b18881cb0707ff7ca258f4dd988f77e3a11072c903399dfa8fc010172726d3289a962cb8172e000d0302047c435bb50067306502301f0c19c43e4a9e334a374dc4958744dd665ffab391e05a171885a76bb960bede30a4fa47dcaa078af5a561ee9ff7cc96023100d82a247eb97f113f3e681db5c3055f8f125521f8628c7f301f79fdda4494e02f79cf726e13319d5aa9d73fc01044c9390302047c435bb500663064023054391f994634000f4b3541406383a6799f15449a077d038ab476b194ecac7f40e951a8e624bf78520f81ac32450abee102302753ff8f24b0febcd69f50401f44993216c3f957d01951a8611c3111ba5ec85a75b5996509ccc8b702ffa9d74409d4240302047c435bb5006830660231009f4a78075769e6c4f1aa029faba3772322d23eb723d85a278e669fbce65b7d0b9fee4d86b4480f297d59c201f503c1d6023100dbea0cf741a7a34ff0de1940b17ed16b7784545e3226ef6d9f5ac16098ca6643b9799895700aadd523e09dcb65c27d2e0302047c435bb500673065023051ed4bfefbb54ad2bf970e1e0df455c5f6daf2b134be903f8b16cda5e53df7293c3ea72b757618e868ed7d92ebbf96e1023100d7b6f9735e17d09626b31aceefd99a89eb6e85a63a79c44cfb81f37d3c960d1777ee76be097051fd2170c96d1f3fb6a80302047c435bb50066306402306376dfaf04327bd58ddc3661d0a49bfb707b1a066c8f012caa7caaa0e2897538861f7777fcdf795281c2022033448d900230493ecaf8bc8fd935a62674d3c8e0e92045972bc9f67336cfce12b89b09cd449040fc03b4aaf588a7bd2104985c4201d60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e5d5addb7c8cfa01d57384ea015d9380a3c1688a37cfece053ecd198477cad172a46546c03b052a38c080bc43b947ecf023100ea79cba34221437a0c138f719c8eb4ba91fd8d73c469aef26b0813732dba0ff2f9ed95b4277e071f10f53075dd642aae0302047c435bb500683066023100ddcc6af6f33c52deebecd2d327453bf13aec19407aadce62891ba4751ca4a2fe21bb029c1c035c46df95474e572edce9023100a2bb3c8d46b11ff492b2ce332504e715e43685e8c226ed04cda68de2a78edf24696dccef8c99f0fe78a352690a65572d0302047c435bb50067306502304987ca94fd405704a35de30e222da6fe0d94d306c061494396e549b91addbe80207b817f3773c4daf771d2634b4765a2023100b8821c7daf26f243c9e56b3081a68f6ef6d4b0aaba4d625d1a8a2228563911ebaa9a41e6fb809f76fdece0bbee23c4ea0302047c435bb500673065023005ca7a3ee0e0213fcfabdb7b3f1f68bab2b652abd26abc7d2c795c7a515915f8ef14f3d0d37425fd668e007839e4cbfc023100892f00bb911e55b1b648229a7dbd7cab49413d4f74b8e73a0ec5e32c33cc4643da72e9ab824c3db8f18d4373520e4ba70302047c435bb50066306402307c26efa2a03baafeffc846cf06b90b68dd2e6a34f6332d2ebafbdec6bffa615d49f229caa5ee0648df5988e7f2cbae770230323caa755cc2f9f0fb905004349a079ee51a6dd137f2b8738914bde3c569ee44eff16c101fb1950cd0bfd359ca7bda5e0302047c435bb500673065023100a17899b79cdd2724946cdf124075f9a15f30c413997865426eb2daa9aed80b3c471633d8ce991d068bd0c66d4e4a217002303b8cbc569eb2fdc993f4f5c71978899cb0968f6b8471b6d4842b04983803007f3abdf9f7589ce0bea2d8e605a43523cf0302047c435bb500673065023044f8e948c6c52bb848a76c7d24dbdf703243391330c873a5c5c5a4013ee5eb4d5d902b497c0bbe8b5c4961f88802a2db023100ab06c605325604d352bdfdc72f9c6cf024459675b6a82b9db4a5152df7115e8e37d97cc5655aca2068cdc57f7b0965960302047c435bb5006630640230098227e7c4887c0315fb5efd9c8f0bdeec3af28a58445b27d71fd17067015de5c6c2164473471cf89c5806c1fdf2fad9023016d0de6bd622dcfb9d50cd8bde423c80d560572a72debce82d2e613f0ae1b7691f4cd72bb3ad85f65eeb3252c804ec5f0302047c435bb500683066023100c0e412486868a19e74b47e6dc467d931595d1d66967a5620de857305ec3264710a8bc737f1c4997a9e587a9e59ff98a2023100b48405aea2ee1dce62ec319d7cff435b644cfb5c5a7bb6568d9f9a1621230bfd246ad691a393727fc5831444efd221e00302047c435bb500673065023027486763113c079c8514a2ebbc523943e882f199c16d47edb7c8763995e24e9bae2897844d0b3579b97984e13a568aa70231009d3f6c22d7aaa32c9252b015e5452196a6e3092404f87344a1616abc5c2629195ff9ee5fbd5a8b8f78252b9c97a1e5540302047c435bb5006730650230585555aa80f9b6a7dffe86ccc673947632da60b4e9e77ae8cb7a53b9bde95c371afb2fa0f4588ff84e7c971766d0abdc023100b2f7005ee92a272f1ab22004137f3a6110550297e123b2b15f272160e167010de7a916f7c3d5efdf4b4758da8a18858f0302047c435bb500673065023100abad994d3a8b5ec5c13ed97d7c4adcd021ce93719d9c7272e718d17be2382e5e9c969a1ee82ad68680cd94440d2720e802302b899ac93f04bed0569f83402d4bb5bdc70aaaf636a7dbed64d58beb56f0845a7dd1758b93e6882e9ef45206a4358d920302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306c0b2e422a3b7c2fff895088cafc3cd6f3dcbfbdd0999978505220de15fe0a3f3aff04f83f0f6be3e64431b6b25d4cb3023063189547a37e8d9d513ebb4b62acba2e2ce28fd1cabc1939922a83e3f13ed66d898033de8604e86ab1e0e495403b0c780302047c435bb50067306502302e554c4391ad81a30aaeb00edaf22f5402e73d2e30e8e039dc79ad9806dee8d6be44c39c8fbc712abbc69f8429e3ec4b02310094ea232352ebfb8314236767ae0e656c8339a51dbef4bf81a3d3a59480cbab110f1a2f5295cf1282100010e435cc42ba0302047c435bb500683066023100d6a77fe17fe087029a1e5e77298b7207ae28384615c58c26918e202dce4a4b0b054bd67583bc9e61bf2981961bce484c023100e9639cbb971ece9082076766628464a434248aef2481616cf0a0600fee110659aec99ea8e7770d5144eaf7186114e88a0302047c435bb500673065023100e2a032377553a06abb6a952e98aad715ceb00f700b21bf1afefcf8a28e4a74df62f6326568a4f773184918bb3ad182f202301167825404106e101c819417f77a399c93b31ab7ca106e0ee8fa84315421f47e158c02ab48283ba01f87fc71fc92c2270302047c435bb50068306602310098712a7e42aa0955ada846ff89d1c54ac173c6f1c06c833c5a385afb1d91238888dd34b8a1bdb2ff7d53fe3fe17d7272023100c15ab128029d8d3a8c9a104527615f6f102420f8ba6c7212e5c181fec58d8e994721c16f85fa922fa4e66cc694a3a5240302047c435bb50066306402301d07752cb7d01703c697d5c8c55352969a2d5f3d772f02deac771c00af846b5221b090d5feef9887044ba222d2b554e40230264b67c0d5eb71236fb07be611ed9cdc1ba723aba66d044bd5f44c26f8a39a94c6365473f394470db05b65ace394ab990302047c435bb500683066023100cd103702543c56c7cbd652221c935d129b77877bb185b4d7792b7fa4a7ddf9005e924cfba31e54224e2369877e562ea1023100a27f6a8911ea855d44932923bd05fd60e7ce105aef903f56e4f5c351ed9922c071734d3dc7a6a6b620720f597d4ce1a00302047c435bb5006830660231009d29df71c99a569a3996d02971e02ce35e6fb53a4fcc7772fb85da1f4ee68e49271fdee6becf3c0c6f640423cf19ad5a023100d1838adf2d4b742e3b793332e74022969224abdea6ea9ebdd22dd62b6fc8a4d7dfb814724b7367807c6c93ca617675140302047c435bb50067306502300b7502b3668a7245e98e616ae76b913a9b8756e8b073200528f9beb98832704faed0d238d9d184123b43a64672e5467c023100d669ef8ee93d24429ef41c122a72c38df1314409a583f6eb249c36f5fd673e8ecc1ddb3bbf9856ffd58e3ff2f7bc80a50302047c435bb500673065023100a2408a62d2d22d418d001610dadcf53095f2bc1c2ccd527509245785e68db6cbc0efedf1e2d5157d018209d4f5f86231023066a05c076c60870ba61c2d980e9ea8d8e131234237f24713dac2774a2e4bc0c7a75ad1ba7a09f41b8f8f059d45acafa20302047c435bb5006830660231009127986c2af3161c51353d97f5f85296e4936bceef88dca57a4b6bf355a80d28df1ed77563986fcf3280f262a50fe274023100b37cb65751a2699fba314ab3677bb9087c3f828e4e25a716683f780c7e1071221055bd838fe8676b7488b898108dc1100302047c435bb5006730650230687cb68cf3066e3cec9ae23b380809745f48a6e81a17d1d761c333a26ef6b280da1c5ffb868b5e0fb5e5ce71013e55c2023100da4910675baeff6555d3f2acf898bdf8d23cc8681c4ada9b1fa4346c1832d62367a9f63fe84d960797a347ed909510200302047c435bb500673065023100b472c21d7e7bbfcabfda8bdad76b82662b861064702d0f55ac4d804488a9c4086a498a042eec87bc0a33b3bdb7628bd802301bea9650037e2b15fc7f14c1f829a1fc6d21d26d35a9dd1d82a219815330049c19940d985c10d5b2e9498fc6c4ad77910302047c435bb500673065023100d6df7323653d674c5136e580f4b753e170ca37c56aef6051f9544b4a3379f83846b50f2de546105f105e0223e30a59360230537447bcbafa56d826bc80ec24a646ec273b7ffc7bbd73ad9a50f23439238bd28301b514704a73cd1ac7632d65f7a48f0302047c435bb50067306502302e0ba07982fb89f292d6df100cea0d6444127f51510e1ca1fd6a8c77e78d77b82a7f007cb7eb1fb9d220abcdc42ac2bf023100de420db2dce176351c81044db830753b88310ab2b9bc25093be81ce7b0736ca6be874f92ce27ba08c00f02189dae19a50302047c435bb500673065023100a15aa8e19058be57f3b82de21fdec5b6422b718e142e388f27314dcbe0fc627b79c4051daf9b7518d8ac3f151d12dcb202304ae2999cbd70eeeef5f281a41450b7dda22f9a680dd8a6cbfcb83c940be4ca2b5b8cbce259bf4b4454b2e99fb2ece8250302047c435bb50067306502307b251756ac6c43b2dcdc1aed37eb284a0f01c4c1e83056bca0dd42622e42b8574f3aea2b470792664681008668cbe9ce023100816409e1212f3bca6b7bfef9f41f597e78dca3ee1ab00c589109289df2918466777e5ebde959b438c09e3d59353669db0302047c435bb50067306502303d7281fefe913dc2c7b6a47320e70d42a328623af6cbb50ccdabc8636c5e53333b8f7c69a984376e8526990475d391920231008a29b33006f25af2c306de631444d0369271ff0d3f036374ed2daa994136ba39f81b564230e3e9a9cc6e3767f60364740302047c435bb50067306502307decfff6040444bd4da4e9ba106f5f254a985182eadda277690b92272dd2813b58f7843fe5360afb5e46988f0cdf5e8c02310085d7904ca4cd2667de0df90b080994c76464811f98e66fc32d32e19984c2568641c57ad3bd2c4b899f8a368020acbbdf0302047c435bb5006730650230516e33b8f671ed015199df6faafb9440e14dfb8f619368925c3947472ebc6c8aef0573ca5442e8f08e70db72b3ea5ec902310080364e230ba4ae20d6c9ca1f915d73d14db85ab52f604753d0b3095ad634697e1ea33111386e3cb240dc373592c56a1b0302047c435bb500673065023100af53949dd2a25538b01a71ed784fc24164b8ec897c99e24ba30e9270273ff060cd529f4bff7ce41377d54624c1d26ecd02300d4efb1c33bad4286af0167ee54326661e815cea498aa75b1334ab5df8292c1b075196e2ddd32a3b2756320a5bf5acb70302047c435bb50067306502303faf11b50981ec4884bf8c95986f30d5897fd49a6ca7b29ddd1e278f7cf537f98fbec4058b3959424515bc41b79285db0231008d5963f2a0e72a11b306571fb794b812ab20e9fb498be6e8a5f32358e68e80ec667ab31649c70ed2e01bffcb54af81f10302047c435bb50066306402302e86d86f71dd30a93bb5996bafe72f1c5662c89d1a61e097d8d27df7daf5869489ef93830d0ff84780e39d4d038c48130230728a66f5e3867d5092774bf365c09c739d361a3182ae036d18c8d13f09af02268adbb6d82ae2161bc2950a95d11dd2200302047c435bb5006730650231009fb88093a70baa3f832871746ce58ca2247e2d1fb1f884e4b44c57fe15023a85fb7c0bb2da2afc4c9f6684aade9dceb4023079b2888373f0a2311be4ce2ec9ea809130c2f737426603010a30382aa6c2a884d77ff5961a7e868c968d2e6b20946c7f0302047c435bb500673065023100914e786bf01901a0de23cee5e3c3482c225151e09f65289e22f6332c72f65c12749af594a30938728fd9ca644e4f6f9102301e34c67d1af20ab968c7f6bf2adf6422005b0b7d655397ccf177ad4957dd87ff8a590b9b8ef5735f4e943c29dd5d62dd0302047c435bb500673065023100b1677b65056f62af863b6f1aaa0e61df5b77beba00d466e520fc310495054ba823ee266c41a85af403cb07dc8bf886a8023026e480a0cc54677e46ea521b1fc12964d4cab83f0e2fc85d6b7505685a4406a32a8971e9cb0f96883da88b55192aa94b0302047c435bb50066306402306bd947b900423c431673b32e9b331dd5757f02e4e4ec73f9571b60611791e6a263571316c2d425a1f7bb85693f9161800230465ec2519674e2c00e0a1849dde6ad35dde3a4301f45b6a706d4bba9690bc1fe54dde1d36873c98904457006c19e97c10302047c435bb500673065023100c2e481d3d9591f186a6375e9b60c9c0e2aa64c6b048ace857b1dc135fccb0d29d67e2f18e869a9b7c5e81f5bbe07082a023029c29afec14b598879fe0c4ce5421786bebb6e253baf155443471de581239f9085d9fdf4d30646c3b3dbf81ecab392c50302047c435bb50066306402306b42e02108e4c72e09ffb08b6e1d99893ec2f307861f0ca7faf082f402145fb5070ec6df91d2f87276305e40ff4dd285023051eb10ea7b0a49f7b16274e5df274386fe9a449b4d300dae9b5e512219b2f1a971382af015b87a48a61bdfb36bb3b8ad0302047c435bb50067306502304c35349fb0524e8a92a4580ddc751ae479286b75840d39a529570dfdd7b4ea3c83dd54bf3701a768aba2926e8ba05d210231008bbc969b2ac8cd04920adc0207dde46eb3de58ff21df63a673b87c49d7a89b3f560137bcb5706ad1367cf1e4cd62c83c0302047c435bb500673065023100f6a209b1cb82311a366f0486114dbb3c724da3c403a4a635f2cb75e9a1d49a64a7455ea819a135bfdc9aea3ab115d80b02303f562ccb2a634b687458a561f2b18cc887a67545bb9131fa15f2946e905b4aca31fb13ebc3092e2ba67dbb3bd39b98000302047c435bb50066306402306a759ad94b105f36ab2fb91a77c31e72145159db8dac9a66dfd36e8f699ec09b7c1e06dd1fbbb867e8bfbc1bd90557c80230031ce04fede288958fddaab692bdb2701042a35105d5cbad4b43e53275e262b1fb9ae6c77048d3e8f7acf328b323c3880302047c435bb50066306402302e5687c20d5ff4b0841a5de10761ae26d28ba09a8c6d1092c10f214c080c047504b20657dc17bb4c7e480f55533231c7023055712b4d08c19fabefabae41cda7bc00887a9da6df236860740a2a624de1bee1a95361c5b61bf644a1afb5a28d5e29e70302047c435bb500683066023100f87b174869cd81864f7d0e358c0b03a2ad2409d77cb59eed4eb0420c8ee3b4f2532c46305c5a56338446dea38e0f17040231008dfbb7569077646c5e0ed6a7845119108c0619c90c73975dd5db52d24b786b12124a456a5d94ac1fc95e52d94012b03d0302047c435bb500683066023100dbb52712123f667b4f59a53cf66ec394191ec1c680b2b39a0b756c20d1a9b8e8932347dde98994ae71bc80433cd81cf2023100cc375ff70b955f97b107ae7984ae54c91780e5e0a99bb632aad1c70cc9ac3ab262fc29d87309d184ad73a06ed45f568c0302047c435bb50066306402307f672e83fe53c594a8cc3d4e9f8878a4e835539c25edd48c2f9c3a1f4ab0794bd09eae3d825f39332085a30fd6f67d6202304c6b0931af680ae7bc6e484f9e7bddc1445b63dafa896a355b7c372eae72297276693e8bb9cf8db6e05d3a4d28fc1d1b0302047c435bb5006630640230683f2eaa330634deea85558547686957628bbf017851b25d0df8d36de1c611f1435f4cc17ac4095029cabac996183d2c023040f2051c8deb2964c0bc6ea2c6641bc6c9d844f805acaa28eaa9ec6dc887241ada73133c0cf6ae6a6f84f21edc3715ac0302047c435bb500673065023100dd6c14f30d9122042cd503739af19fc02db782fffcd177df5f88b117eb0b01ebc91c970bdc3ddd5d94b585cf86dc8e7d023003a9bf55205755ea711132295e8a353d4ab9140af62ef53aa7851410815cbf85bcdf154cf2b1ae32d53e9d7b9a0460dc0302047c435bb500673065023100e54826a2d146701592c773ba33d87083f5a86c3313d51525937dffc693d8d0df2808df3bd17003b09bbe47146ee3aa4502304a6a66bc0860c4f050538993138083050e670319d3ef64948491de0ae1831d05dd5ccb349d46cb155dc8f974488699180302047c435bb50066306402300fe103ccabff78f65446f0085db1e48a73f4b733b83c6746b5ae543f71164fc04bf7186098720f96b8e14fe448194c9f023024cf1e7ca38cee9ff47566a610ea69c2635b05c7e9a96a7e984a99d8b4ad2b5db61dd0ba67d669242c314ab0d5acc5780302047c435bb500683066023100efef587f91879a8e9d17b7e0508069a7b8396550af62a080c165c483ade1f260790fa2109ada364300f3d3044a0cc357023100de9d4a2d642cf8b9450186e438383f9e6521aa544aa3a376223333ad3b82c918bbf211619d7516a682b4e46b73ef9bbe0302047c435bb50066306402301d5a636b06cf4d77adfed695d808d622bf7a6c0253327bf7108cd5577e0ca4c4dcb1e4d9d01f905ea9fb59126bd57f7c02304f6934a2703e4f71a5ad2b32546c34aba4cf9bb8d9daaffd9891cc0f5c3fa7391ff0513116898a6898e02f0863e236270302047c435bb5006630640230624c31cdb880243198641f10b3349ad3a8f2b9b8da5cca8e8be9a10c6d2a8b685b6933d91d67119fe3ec62400d82486502304e35bb392b32404c7380a14843571ae7ad58f6ed6aa87b5f479830a8ffa3d35cb71559723ae6ed4c16a3c077be8c546b0302047c435bb50066306402304699313114e6252e9dcf19f247c60645657516578abac79334a5b0fca10c3cc32246c4a821a8791a83cc27b33941138f023064cd26bc5bfdcc7b00e94457dc72ef2a4c1c64648807b7a4bca6816a2018f2a323cd47e29dc80f9976529a0fd02d32a40302047c435bb50067306502310089e7923e086e97a254f2de4cc666950d5ce44b9b849d51dd8db9b78a2b693b235bec5d266c72ddf27014f2d43919f98402302e98e7c88bca515dfbed247544428d8ed8233893b8667bf0abed94244d19165be71d4edf637957b8c9caed89cf0dc6400302047c435bb50066306402305537cde378a70f57380bc618b32057c95f0442e771d2939a6a90563913a55e8d597c03720ea4813b14bf9b96bfa05a07023027dd579b2f87b342e70bf68fa1145609fbbdb25251d9858127a37e85147e7dd6491063df5cb1330a9fdd58b0a9d335650302047c435bb5006730650230715e8d9415e42f8b20e4ee722652dd06c939b353e87ec960176ccd82df167653aa82725fc5ccba8f01fe3fedfca3390a0231009e26a7674cafb984381f559419add53ba30a4cb09700a308b010feffe359896a3847f14da11a8212ab307c5f973594570302047c435bb500673065023004467eb72dc182aec7cc89e57981f12564514d6c0cacae55e279626cf01726a20edab39489f0efceb74ca422e3259f8102310083f0e06bb938acddd5b5ed648f4e347efd2bb32889551c0724627ae9aeffd30cd9111a91d297bfd705876c154bc2231d0302047c435bb500683066023100a93450755d4943dbed04174ae8fc3ca33aff0ac90953fdacffa3bf20af26862b9e0aa883a189587092c96639fe5f4432023100bfee3b930b8ed34cdcbf067e93db2e26d7d6bd502a760e3c4dc969bb72c22c166268e06d93683a0556a8d238a0f59b9a0302047c435bb5006630640230347515b5d3d8479d6542fd2ebf6b65dc70f3ce8c84970844aa937160c96b2b898031a0367db70ab4a3946239f941477902300b9ce9c4a4d319b95fd32db7d1b3b87bec739cc175ed86226b52e54dc773338a2945cec3792fb08cd37075e13e94d4460302047c435bb500673065023100e4f4fca0018935750466238f04ef3b8539fbd6102c9961fe43c2cfd9616ff645f71ba06d8a2d20c63894da1127c9048d0230315b28c4fbf883eb38729ccba9c69ce52888d6cdf143bbddd478c58e9a427148001da1b8614d827e5aec38b7676cf7e30302047c435bb5006730650231008ce4f89d2707b05779ec0c1d6819b60236c33263f67884c0af51a70df606594465593bbf5324872b2aa783d464a3d50102305d51aac7327652a0e9de15fa2d97ff5f098f19f62f2ffc83f9d1407638f7c4126290839171bde13b753edb5e0d282e440302047c435bb50067306502303a6e0f3ee267ea48702d9eee393c40520fd7b06638bfb5c2c3436432d5aa26b047088e9a2e6a84f97eec6b10f008f6ad023100a818cd408d9b21d2c9b3e69df18dec06db738c914eee71d38263dddbb6fbb94afcb275cd2afb5aeda6312c102d7bb1d10302047c435bb500673065023000e0d2d351652c74b29bc63d91dec3d416171b3405110dc1ba2b5afb886c363a2c67ed5892f21746925c3b9e49bed6ea023100d09e9f3f69ca5bf206b088d2a50fc8151c403dcf1c8a48e54cb23e14578332357ad954af01d95f85f6fadc8165fcc4430302047c435bb50067306502300b354f968a7d0bb52ee8f01a0b73a7a045a57ce2dfcdc61197bad5b0dffedfdc880139c6aad255b6d4e590831e516057023100f35cd40d0772ac96959c6ae7fe6ce50e95170b1d3bd7499b0bfd59eb734da7b1dec3cab23a38f01e9e10d81cf702caac0302047c435bb500673065023052cd59c34c75b1dc838baabeca694fd33bd9650f9fcbff82410f026ce41cc36680d2ff97d0ed5a0e02b5ef23890ac568023100b08becb4361f68833925435bdd6f393b7f5856f3b6b0851783f3e26fb2236997cf37a16f278a6c334147d433eabf20640302047c435bb50066306402306ea84c6f9ba6a44ac0f7b281baa9f8b42ce9492442be1b084cca6e8422ca7ab85a2b3f826ccad4564719fec5bfbd7c8202303143f2fca9bde6e4f198f2082cef19e71fb1f90f1a642c36de76ad5be9008effc77001ea5a918fbcdd54cf24d0533e890302047c435bb500673065023100c9057598bba1bb44217d04b2922c902e29c36e270ad64dda9ec598fca1cef08e0e0f2743ff833edf9a8ef0a65b0bd2c202304eada4e39120c1f12deddf3b61035abf16084345440257e8952773c82eda587b87d4d7dd79869e520392d8132a4780da0302047c435bb500673065023100bee237b1bdaba9465f0efe0df25c6026e6244d2a77d33cac28fb79cf177f344eec081429328a4539f4bcbe85463edc7002302db3c8c510f3ef4134eeaa0e2a68115484bf3fe8ea15a1a97ee7a3e0e06381e53eb6b8858577ae2039dbf5d662242add0302047c435bb50066306402307d4bec234ad968ee8a73943a1e9524b22f0df95b797692f6189f8c2c203da0dfb0f0d9f2233d804f3b54f034fa81cdd80230516d4736cbbefef0f390f967d6ea182e97369fe2effab90a426b13de847e107029b28861433cac88515032865866f0fc0302047c435bb50066306402307d0e2a8b0c321ba2595aa38e30bac33fd2c74991554a0f9800b5b9f8316fa24db184d08f78134a3a732e4daa423e00460230045291fa26585254acb08a32c134902d38ab4a3ce437d238f426ed4123c1c0cbaa867ca33eb42320441cf94340133f0f0302047c435bb500673065023100c27eaa3b570bd80c556abd389adc8a879f38e61be5a6a748317365b80b033beeccd078f8f21434104d32835f295f94ba02300af140f3db9a675620bd9f2976df9d6043f25739350f9ad8914fc3502cfa1cc3eb51d7eee9ee3826289ceb5d5dfe54b50302047c435bb500673065023011dcef45af87341ea9d3a05a78967c771e7a58d84810f07e6f44830b9a85abc6635dc4be792ecd48e8431daf97a7e64b023100d86e32c5a72f5e95b1e0eeb6ee2f9f6cdfa9a159cab86934508d4eaa36693576848357815f56fbff6733fd0bfa0a3f870302047c435bb5006830660231009d5921755534763b4af433c802e3b07ebfd41fe45d86d3f11140118e9355d175e069e045d584efbd6b03b1a1c0b937f8023100ee0b4e20d2891efe2e55f2f73a370533906c15ec0a0f571a57297aa5b387a1f7be54b5272b47f433976d51d9b77b7a9a0302047c435bb500663064023070c436021f11fee96a27ee6130c3942d6ba9e0a112cca4ead901dab9e0bc118ab3544da4cccea164cd77a2f74ee47ecb023046acd63d3ac5a76b78bfbb82637da9d9af4d87a552de7a79b087a9dfab98a7ff99d67f83cdaca0b46d3ea5b2908e61130302047c435bb50066306402302d0dc8fbc7bba2496310773799aeb2637050c53cfd5f642d6f60a51aae2ad94a6ce54a0981ffd4bdaaada47bf788235c023044036ab26a7722d36ceac0149b70d28356997210827b24ea4d4caacc0630750b04cb6088bbc812cc9dc5d67c7513b8bb0302047c435bb500673065023100be6f186aefc5f35f46e34b657e8dec38bbbf10ea3f6655cf701a60ef51b2979254b4aed26ec12573a634b24c5e31754802306b4936dda5e018289b43af2b9bcce08540c26f8de85f71cf3e707ca580b6fdfed92fc1954ca4bd8f78e50bbff3f812be0302047c435bb500673065023100c4b8cf38dba83695df16c943c829471b96e2699d0016d5046dd6807eb50726f29895b75fe70bb5f84567794e3b8c69c402303f56cc3b8aa872102b95772a2f515d98bec9cd25edec4cfb0a6cff473c7876bf5b665426023ddb7b797aef3ecb7f42410302047c435bb5006730650231009f7a4388d2617a48c65e4973095289fcb3a295711b13ea92b0bd08c15e7db32f90584d2f3a2edb1fd32eb5eb45d590e402302796672ef8f2f08a5d54de5399fd924d46bbe54c68f3c5e01bb8eed74db743e1f1c35fefc5d75aac4e916525d20acf240302047c435bb50067306502300ef60efbebdb8b9d9d8f67e15f50fbc17e1930773c26102c8db75742a23b3feb8b0b4cc0fe9844b5ca58182d5e1602ab023100adeb7075137764f667039b0bda9bbdc9ed9762ac45a32db9300eac0a47ebeab018cb4b03854ed5f986d92a33226d4e4d0302047c435bb50067306502303c28377a3a1a1657875c152d4d87dcad27cc2ab9a5fb80ee95f6b2e2718560c371a16d1d0fd408259b5a2faf41db680a023100ef85cf3056dc87e20852fe05b574b5326920ada56f72738a7343d8724db6934c1c2b02581123eb69f2965dec5959801f0302047c435bb500673065023063e8e99d6ea80bf5ecb3dddd0e0531908c6c247e5fad4b268455d003118ea09517d1615fc253b5c1b9c923b0f252d6b2023100df17949959ba99b57fe450579735abae21acd5aa28850923ec8a5c913637add49a5141d9db5ff4ecc31c9c2073ec69990302047c435bb50066306402300ee3f0d4701c5b9a400596a7a7bfaa5af54292b7d1ae75f5310868e09dff2c1472893891cbe7712184801ef9c7da69be02307f0a6722e2b415cba246a1f22b9db8082800cfdab440e31c52431d42d52507dcfdacc81ae0071ec02dc9131b6af813130302047c435bb500673065023100e64ea53cf4eb2a8c4aeeba71b744514e354edae7004d4ed260500ac98f52106a51ab82ddddde56aff09ef8536b5017df0230533cfab6ce7d4cead0b02a28d6708d83400f9b87cfb9feba1b3458a034b4e4f8dc77d81d4ba049da00af10f19134650e0302047c435bb50066306402300d9acef7e0d23f5da5dc7ed10c09669c37efa311248f3f6a2963bd8f8675ece6ed5b6172a576d5b4247e1e6464374bf802301b319ef9e3e900ea9f741f9bfc96724a0b98ee0cb493fe604a9bc39618362a6cfc72e74b5f9b77dee2028c7ff35603e20302047c435bb5006730650230666bf8f0abfab4a82111b043ae5acdeab9fc7397db29d86cc20c33f10be11dfa935476165208de408d5bb9cc7b3b9058023100f6d2b2fece927baebc0e8dea2bc15bf495dd640756a88b5a5a74ff8924debaa614bd6d3ba2bdc063e7f31637f34f339a0302047c435bb500683066023100eec3c4da4be0aa088c0b88db1648b3ff049649e91a4fe5ff6fb261342f6a0e894422bd3405a81921dff98e2cb8bfaf75023100e89b7c07ac8bad95f6db73287caf35a70ccd2a2da2a4967312bdaead91ed124b5941879ac3ce96a698c46624a3aee1fb0302047c435bb5006730650231009e7f9dd003d4666e6c248c550aadb4f876b84c1ce54138afe7f83217f4499246c0ff497665894ea5760ca84d8e511979023012f1de9c70fe0f9740b20bc60db3c6ac97ca7a174ccc3ca96ad10905b6aee1ac3a240938adfc104e716a64456e84cdd80302047c435bb5006630640230395c09f62c202f05e5f5825aeb7aabd28c6c98e6b682d9df47b63806b2a5de9041d8bcf198ad435f35ac74cd7e94916502307f5073292f1ed11042dce94c790f39865b373c6cd0dd4a571efc835eafffc7ba3cf9296adaf9b9fa14bd07c5c638ff760302047c435bb500673065023062fd99877f46baa55a833ad9850ce6a4a1a14a69da34359d389d0fd45ea0e8bb2572e4680d635e3f18cd9b7c8f996dc10231009f457a581732b513e378c33ebb2a148c26f9adc7cdd7956481a8623dcff87da282bf6620da5d2e1af833882d071af9440302047c435bb500663064023071f63a2486ed8bee3c4fc657a332f6fa733228cc475cdf502ffe5a13a44f381f0ec019526c8e8b8d43e52911cf1bf5550230108f1837bc08677d4fa2e0163978b42fd765a26bdb3cab839ff9ffd2b998299c6a8c6a70076da57b09d525810da0a16d0302047c435bb5006630640230552666796896787802c5599cea810e10632d58f1e0d85c17c579728ada29af62e76555dee2fd96975e58e56b7bc3bfc602303b6ef3818294649dc8a1360938dd6fe21c8055bb1ba91106c77307a6ae322c0ebfb5f26b897ce485c3fd9ffd3d85e1980302047c435bb50067306502310099e154d56e9cbb5c7000379bd9f332014f0b9d4169f50a6b8fd19cd0cfa1b2d7a2566110d1984ccd284e41f654ef9e2d023061d80c1fcfd495e70961bd6a30a507def928c28f44571e019dea5df5d729b7f2819de1cf36fe8ffbc6dc359608397b4d0302047c435bb500683066023100b67c76bdebf823222aa6260f21e91cd16860c62c0d7a8eee1a7e397472838518b1c7bb3d2fd4a330f7d16a639bbad55f023100a8629ba7d679da42ae793edc00b5ffd808dc01ca764a5ba3216b4f4a1c6a6846a5498fb21071bfebd4b7ec851da5d00e0302047c435bb500683066023100fe8a40b1cb3ddb3037bcd55c1ea06b720415b03fa02929622104b9ba54bb7282a00a46f81a4f9bedf48241ea0931e022023100eb3c1ec5f1a51093aec1657a4cbed53cfcde818865707ae47235b658b2b6d7fb4710223266d11ba4cd694ccff466b6830302047c435bb50067306502303fd7b0a6ee3366519d28fee117187e1c33a5aefd40016830fbb8a1ead5da7092e369055b29bfdd0182606021f3ea39a7023100f2247f4abbe670ba6cc2b7336dc602f0e32d08bed4581270bd0cdabf0dc656b4b660a69c3802ba583d0a70727b0437840302047c435bb500683066023100b8142b6d6d97f102647656c7413969e5fce346e51d32caa13fdd738384e59dae573d6a3f49ffea0da2b81bfdcd647c970231008b76e62efe3b20a813fd65602cac9ec8c59e00830dec4e39589767e2ee97064ff4a4f989254401e62d42483c9680a3790302047c435bb500673065023010c3ab6064d4e18bd501001d96472e8bbd0b7d7b059371a88c374f86c7f6ae3d28c151b1255c279779fd7e2d094b0af7023100fffbc670412038ecd3fd74715f595a11d701504c4d4d95443ce100efefd985520cb2043e7ee8adb03c80c6c3602829ef0302047c435bb500683066023100f55365e0168cf2c4c50d44b2199ced71eb9cffaec8b9252c1c8d48ff0f9675d01fa9834107207a3ed0880e2fef47d7140231009ad681c4fffdc570c1a72a9a8baeb0930b62be8aa7a3745846c6d347a242f55bf4b1c927f296a8edcbd2dcfb10da0f010302047c435bb50067306502310081075107009f7b9ceef42895e48231f0a2dfa4f03713adaa940d86e300a9e816ab330d58813bbf746adb2bd06e42da460230760183e8ebac7fa212de8f23e858ec472ac0b636dc61382f2ff1a594e6f634b05cc5f50aa28f2e01442ab564c0d71de00302047c435bb500673065023025d2d778f87a92a83250dc9e3ecc9ecf116ad7df70ff2e1982e63857f309f9a8c4759f01642bf3df451612bb53474640023100c671cf5d5191adf1cbbecda9074acc6c1110d2558cad1f1275c14f8e12904e9deba85800aacc8824f82781912a955dde0302047c435bb5006830660231009bd20ae8182ee46ffda991b4718384190665d10a5c0e8087cc3c94471960a070e9c84ea5bb2bc474af8f55e7773e9c77023100b8c3dd85791ffcdc39606265338948b09a67aeefba2cefe492953141f61a3ed1defd29c58f5eb812b5962f77cc3183fb0302047c435bb500673065023100bec675b7d9da01729d9f2e544433c5e7546ba3fbd256b6823082f8724cec1ec11a52060fd7a02e0251bd5e188949ab7f02303bdf61d7e542c0f700e7daee5887bb624754fe0c92afe5ac9a948ee22d121f37536343ec6a444b3717418698db8828800302047c435bb5006630640230654a57bc65e6bed6b6a1bd7e96fe7a2fb0599391b4361359b04bd6821f185dbc2bbb9fe3a0eca0eb62412bb7deedb13b0230012d8d2d4ff0ef8313eb9c94d316fc10a2c34d180456a33724137d628e29f8327424bdaa70b7524543a52842aacb05e70302047c435bb50068306602310097a0ce5390a0126d8d748691c7087afae18d851998f297d146a92b0ccee086b8bf8c0696756b449a6392dd83d1306c9a023100e5e6c1d6479a34936e3ac9f2e677282ac12e7458de0fe6de76737ead732b28604faf55c436f9ffefaa47bbc2840e79bb0302047c435bb500673065023057fa9e7487a3a173235fd791faa80b425c92017b0720df37504ac2e813ea39feba9106b5467b7b29ff4c495abdf8954d023100eddc6d21e24c1134dc91094699fbf94f99268d3cc7f1c9b0952d552c8a05344b7b0611aded9c1fea1f5f284065c616890302047c435bb500663064023072e90f56a9cfa3cb10e1ab88b5ff9175b397145eba628fbc657be8c514e6640912bc7be678e9b61b64f6c917eeb320fd02307be21f9cdf881e6804aabc1e0bc453df8a918660260ca6e3728bbea1df93ec245b712c33ba52af6d9e405a4cd26b7a320302047c435bb50068306602310099fc4d3042140df2d6acd623e089e68d885318efd3e159383a4b343cee8556d9c8e3dbfc1fd68c9dd790a7e2859e08c2023100d0395665950b1d5a8e6c45c9be895e469cd0fe349c5233fe7736a15b4703a1a1501b2476a9550ca32752d158d0a911e50302047c435bb50067306502300424b62eeea797a190f798660347d2313c60ddee097785fdd4001cbd2849fc1e8f958715dfb1b76cef0f5be8cf613bc8023100e5489765f3149f641883859e8dcbba142955b69e07c5b17fc73c12739edc5e8b99c03c8ea5c915da712063d3d4b0a14f0302047c435bb500663064023027f346439ab42ad80fb5e6ffd19bfe963664af68beef0d3550188327325b72e3146ffe7956b6968a55c892896b96294c02303c9f45c2c2ed30b907b5bcc3d7eacad650cd9fbbd11175350bb5cde892fe2ce43beee1cd6bef0ce9c477222f060f35c30302047c435bb500663064023037278be02d747805b9ba2adcf5ebeb66e38de5fc706976c66114f6cd3ca714cba4b81235de89cf5133b60182a3985c31023006b58525b04cd62723d1110607997789a43960d8a05eba53a3cc99c3d9dee9005b0c38ee5ca34c889f56d82b1f633c260302047c435bb500683066023100c6d06d5912231ba1b44a8fd3ed01b3b751ff032ee927aa723b2fdb2d392bb12a1f724d4bbf7e0e6c3ee8a5d1ac165ac30231009e5600e47baa43094d4ae5f73317154e189dd1eaa88b50fa1179a7374275c0873b4999a587a5a5e9f57b1adb6fbd087a0302047c435bb500673065023100e79bcfd7774b002b9af4b9d1c0fd324cf4eb3b5038008f10574b8ac09764b27d7421e10f17811bc4d4f851b1bf889512023060cf672779b9158fb371d86aa0299bc28f4b540b603119c550f5aa372718771e0b6752b9a4c6e1deeaa9681e35c508120302047c435bb50068306602310091052e02e901e1dfffdac8df8d7b5e64241be5fa92038e3ffd5f9f328f15bc8cde4d7ba36ce7754b29463674da64d160023100a6df1ffdbf77c6c1438870c1ca779763250edbc0ca036cb33abc14ec0e63b220c03fbff92b149e40ca71b3a111ad3c970302047c435bb5006730650230702a1622f6ace52469e76b494590347ddc5cfcd65a22ea5cbcdde1ff7fd164b0b292b9384496f5e42a041d6445a99bf5023100ca5aeda76158f7e95fa66395cadbb47d4661b8797e42a59a4305174f1ef112e2088eab520b1acda07aef1f1922175b540302047c435bb500663064023058842f687ec3672009b3bec2694d711d5023e40f54c0ee82c6fe6aed3286d148558be1965478374d83cfe05febabd64902303e0259ad18b20d00a5f4c1697d77f1f140b31020be944610c10eb4f91792784273956547d9c3f433dcdec98e7c54f88b0302047c435bb500683066023100d96a7759a6fc77878e3126bbd1f0e52802d70a3556c1a2b5178c54f23af3195e691e01b9df5bfc3ecb1498766c330997023100bad3d891ec8413add9a1fe86a0d52b4b9087fb7d73689c097ad2a1a012590d571111f25672b87c0a31beeedbd0581ddb0302047c435bb50066306402303d42c9d0ab17899d8bef683d291d6e51513f01200dccf17db3821f3022d3c31606a492846fba236abc8eb27d11d3b11502301005b6e372d857bd450967860e081be0d67d0fb7a029fba6397d6c478f7b220345221e836b71d2d621d3f9e1352d0c590302047c435bb500683066023100e00f37b192b957b1645335f25f39f295759635bae4731adfb9b4b70ef47cea8f578de9fc29adae925a66ee3fc0d8d6e3023100d4962b0a49d0798f929b816d7ab5e1fd546ddb1079ef4bf9456cedfbddae5117d359d6e744ef669427eb4ca8adb02f810302047c435bb500673065023100ca7a164d15fb20847eb948a6fd2132b72f797ffa86734cfadcd609e2639aced8103948a8326d416191584bb72223cee90230061eb0ad51007050be89201a6200590290a00c77c943ae86b87f1e023bea32bda8fb2078b8e64e951a2d4e4c6312ecbf0302047c435bb500683066023100a4c78147ae95561df43d5c5a6ee6515487e3fa768adb55f0576afe0d3ca5d25f51da595ed9c5aba632e173623c4ec954023100d610665954cf05875e1657d1c222eb4a48dd2c2077a97a7677f39c8c5a5399b471d3274a136f262be08c9edebfa8e7ea0302047c435bb500683066023100dfdab5db5ef345177d1265546e382bd7c4cf667738e8962a3f4fea1e28054bea5a3aa6326dbc6da019ed4c186a0ddebc023100904a84d9bcdfaf6308e0561047a1e409a231ea1aa19a507c9ff9fdbb153a89e6163854c1df3bc62e66da285e4dfe51d50302047c435bb500683066023100bcd1d9100854b5cabb0e352a372b90b64a5d468a6fb771cacea7dd0f55214e37aafa5b91bd07179437d9031fc393f539023100cbbc7e5cc9ec1a10a1800a35a64bbb853a5268d8b27c540a057d141368b74d5448afedf8cf65d0540c1b60eab7092cc20302047c435bb500673065023100ac151f1c215c6caa8de10ee37be4e4d2542c07a64165b9a2f25a4e799e19d2bdc48499fa9d9b8d41547d5243c04163b40230690bc0d27f2bae08a91f02afcb6a43923e0ded5ad3fd2435292b55b09d79e55e27f700dfe0bfe5be6da815d4a8018f380302047c435bb5006630640230431260c1d7adfc54821f886f1eb36daa9b2db8c6dc2661144cc1e063b824a717ad7db407265526bd5e08389af07ed70a02306be038ac6150a93af318a3d2fa524a55d753f27f05b69136b2c791a740b4219ce9f272bcff33028fa7565239951cc2800302047c435bb50067306502310084b04acc528c932c2a5deb8a2a2fbd4499684edb502535c7b239fb4121310cde31a2ebaeb78a72bc3cb205b4aaaf19e00230166c858e60dd75ee553e17a3c894f8568bd52aa25754a2486fb959038038345bed07c0b62a0f3143dba4a9a221ec8d050302047c435bb500663064023024cfa7056ce174322733040c2352f95b69d6d7c3a80c14bc7b4120ffe2d63002352801dcc4eb660885b43355a0b882db02304fbd9fa3fbfd1559c5c52f7cda2090d08991db4f8eb5831be6e87054fc997a2a2ba93001727e3d5f96e8fc52596189c60302047c435bb500683066023100d2c8a6dcf93edae33ccb04f5e243e5f69a0071cb82023f67f5d0de9e2a939f748d951aab86b622dd6958dfe8df632376023100c8e3471763dedd7e170b34dbacd09a5d56ec79d6e43cb9c25a2b592e621d5b785b17c74df7648f471dd320ac4ea511c10302047c435bb5006730650230283f32fde9259a3329731b638644fdf40475c58af30387094f103c7e5641bea0d444d3e15d0864a785dee80447136ba2023100b7156812b154a4b8809d6429a6fa562ac11228ec22260b673457d35b6b5b8943e315fbfcfc2c738019c49ec6d855148f0302047c435bb500683066023100e5641462eab587a8dddb7d85edaec8af356f91150f2310cabffbc55efa950b3cf66cb27db2e800b50688a822642ded67023100b9d76e3b7a97ae188bc4b4919532c1c1811264c82c1f8805f17f25f2264a827cb24172342936215d9084f61e66745ed40302047c435bb5006630640230518df3d5709139764e4f4b31ad92e73978e22b15c6c58476c8af056570369176f682e2667e7a3633b30c7c1cf484553402307e6306c1acd7b38729649670e613df9fb93445c47e6ed0f8c66f14d0625c23a4fc423bddd6120b9ce1243da4fe5d01f50302047c435bb50067306502301252f900c44cc8592f7a0dc782d64597a6dd80adcc940add16170e8a661a8ec269dd5457ad9c7de41bb3112d5bbde9a3023100add4db7e4886aed18c265e630c1b409c252f8a93722d8e39ebbccf8bf4074c73dd46d85d102558c606d31777f43cad4b0302047c435bb500663064023035a8f3999b0d4312cb5214ac792795316f1acac2ff8a90194a0d7006703fc0057bfa2ff0d705ba8a6587bf6b784547f402305ce9d79b70996c6f00c99af1d2349e620b3e46336055d84eebf71a257366581e8d6f872474bdf91145c898d858166ed60302047c435bb5006730650230514a62f9e7c0cb57a86b655ebb92e9be7d06536877650a08d76c1bb4408b2ad4d51a0b1b40b5ff3338de0b6a5bcdafe3023100c8f9763db5af1aae1f32fd16d2fde3051efca27f3cca73ece9919baf36b3eef4de2871dad3b38fab17dd7611db29bdd90302047c435bb500683066023100c95acd46fc652ae89e2acf7e17b1983a48cedfc648899ef218f9fa3b5551497a4d44c095cdeb1d3fa6abe8ae6bef627a023100c08fa9039105ec2f442f6193c6741302cd5b5166add994739acfd55225f1ca554816d6a60af5d76c8c9eb3403cbb024b0302047c435bb500663064023049f5c503221e9896b6b3bf390e39b9c27e66d133e2bd7ae04ea84fd3ba2bf67ee8d4e24db1dca5ade8a9c8ac43788122023006961e6ad3ada1506960d0625024a0d158fa57713492eea9eaf77af58926898de05e3d2a6a6ca652991b29a518d5bce60302047c435bb50067306502302bc8bcf773c8dd4c89701fd9705476f839235449c2817951bc5e3118e342f3bb5e69b8ffd3b3374947274b5466f26f98023100cd917a0f961fdd013400a35e0af212b7d6156cc99ebc254690c4a5e6c41fe58899b891ef85fc5da7e95ba0a11f641ba70302047c435bb500673065023100d124c634577c666f72dcf38657e3f058c63c126f094085d5714ba25253d138439687b5295e09d7101a294fead0226ead02302d773af192668d2541d52bb55e202f547a7c0e4f3703606c44394b916942ac68bb8fa1b5b744e3ec88412ab0975e7dd60302047c435bb500663064023047e23da38105138d137bf375bd5657043feaf788e629732cdb095723c9dc536e642e879ff02fa01026220edcd8ee70d602301d0dfebdea0cfb14e9137091c3d4a49cb221b5bb7dbfb9824c44a97df71ca56d58b7fcc3d60e93060874f0fd082680ae0302047c435bb500683066023100c3aba09316d5ea592bb34d2dafb86ccd4978dd871de4281d3cb2540bdc5cc36ba38a3133a8d471210c0a384716a22af8023100bf05751e048726e88ff8f25b0ab29ff94ec75c1c5b7bde619168bee8769b44d04f82cf5efb3ac10afe1521ca4de74d620302047c435bb50067306502310087b4eb2a7a2b1983f2dab21cf3a83316896c30d304b20bd69e5afbaf178e56ed30ac4d9dcd3e99b2a68b7d8cf46282390230416c7d68726716e25dd13343d8255c7140886a93ad51ca44f32f75c110e4c98b66c70149f2f4e6e89b947a2ac295c7600302047c435bb500683066023100edb1970daa979e7a1a351ca5a7d3d4e289d4f647b1172d7b4ab04bb1d0ee50ca1c108fd5838b0d1f5b0ed195601fa32e0231008c964cd14aa563ec339b6297acf7cde022f097fb1044f0a1d0bb71cd71d0188b08bd5d1e5e285ba9b0dad20fa86c49720302047c435bb5006830660231009c218a7b9e494415af72c4b45297e9e86e0a48292551f435fe679548f35307d3747d145c85ecb31ce142d8ffc19325a0023100fd961a1dea1d6e2967a619ca5df54a6fa8d6eb02335ae0bec6c07708c5af2f31e541bc642db6315f7b7fb84bf5d5b4f80302047c435bb5006730650231008825889f13705dce0e7b51f31ccbf41ebc779677583f9afaf807b87edbbdd3b50742a5a7af017be44aa474483e850535023068b747145e0777a4f3bc48919dd85b53368f91aaaf683b1d1b8edc89964dbaff58971e8416fc27ca6980c8d5efc67b060302047c435bb500683066023100929dff0395a1c1826b52fc3a1d204a998c96172c3056fd1437db7af7d541308cee22b6edf3ced4807e265eab5b0420b0023100ecc0eb369ceb893e74a9c812d82077e53ebc3bc77fefeb21a0e14ee8423b0641f3330e87023f71984f7ba8b5dd0ab91a0302047c435bb50066306402306ea9d4fdb9f2154b62947586ad0ea971155525964d10fd6ef37c0084faf8f5684d8c7be6dece023ca79e94d9325db44b0230308adba2453e9a892e5508960b511c9f9d73fe9fa3766a41f6780b7e774bcccc5e488078cd98eb4334822ed47f4832b60302047c435bb500673065023100ad0bac67ca1488a8dbf3867aa6506c0c999957d32cb17d4c61f2c75858b364d84ed9bdd008ef3d6d883767a7ccf41430023065552096d5c3f62ccd36b6a9b4ef085e167620ff4808a1e71fb7a5b99d9e8b608eb71c6529be237f6c54d75c0958e09d0302047c435bb500673065023070220fe6849a536b33ed05156233ddc13f20bd0ddce6a77c7d5426a48e7c80e1e6a3c2437a0110801ed367d89f134d51023100ab37c68e837f4f278f4474f39a28d0f1dff046b222e4f4bfe6686bdd69c1a8935013eab58583c2659e5c7cf5ee73c1320302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230364a632a1e4c8daa49433c10cfe51956101d2ac08ea27a07f15a8c1ebf9b409c01f2b12f1217fde59303b5bae45105410230518aa719d32106d71d5d33e282bbe6637c9f4c9c45268601aaa5dded12541c67e14035ed103b7a2f2c9ad9d2fe7956030302047c435bb5006730650230737258bb72dd11f6ce1d6004a85ad9fd33b17fdeffad98fc3d50eef34c1102a6e9e4b8d6c42d65b64b3efbfaf4c9a30e023100a23a30b5813f760f970051bbb20166d197199aeccd54ed63dbbbc8e17bf04d1c202bf0c7cd0b7ff8991c8fd0196a5b830302047c435bb50067306502301e6fcaabd6bcf541a731e01f966a264c7f132550b48e1cd5ff7df821c20c6d57e79ac7c8e0daa3875668e550e354aee2023100c61a8e9709fc86e13c6d6b967feeb75207ff1c831c3bfddb3596be669a4c86f67dc37e800e4a71df4fd72b1124b7a5f70302047c435bb50066306402306709cfea0bc3d3cd5dea59216ecc7848d6eb3d78dd03b133d9fb0c9f2ffbc162f6ee901c519aec6105878a2ec4a0a77502304e008ba5d146065f8bf6fccd3963651c4dd3f2a06f28606839c105ca14837e646412bd4c8843d27fddcb7df51c3ce7b10302047c435bb500683066023100eaf9921228ae663ac9b1c803b928dc8d913809cc27c65ae16f57be26f7424cab5811affaf5eeb07c7ce695d2813e8fa9023100f2b81681280b0da78eb004b2409a5a4d3913ebf0db9f60fc618f1354bcb391010b795c0ded88f07c59444d56232301ac0302047c435bb50066306402305991a41b056c20b755020760459c2a6181162bdcc685bdc72ab7675257b8dadf8bf81cad97e5e8a8c06a51a7a08ba1c902302aa5729ed3262d0dc0371a61b51708907b0ce6d49964c92239700e20f8655b94d67b5d8a6625bf45e62abaa421dbec3e0302047c435bb50067306502300d9016c8172803d869e15ed941b577ef1a1905720c4ede1b583d429142ce28cf3104283daa66d19c1ffe00b1ceff4c000231009697ed416137ca7420c80abe7bc73afa2d10d43ef9206febfda39d629df55a66d63feec9cef3dad4492dcaeeeba021ef0302047c435bb500673065023100db97f00700d47ec9bf366e506e6efaa80d5c2ec1ed14bdae5ed87e5908eeef3c09e875fef232672dcf3075869829656e02300de953e3a6f389f5285a71396795ae3c063bef7ec9d08c9fdba3bceeb38cf84ce85805ee93f01983f15692c2cb6a13210302047c435bb5006830660231008f0c30edd8c37348c928c38bee675af88c5480e6571aef378eb4d3f65778bd94685689e78e254556f846813b24ac2cd3023100b450a398e3b89c97032215583eeb445c34f84b8828186ca07ae6ab8e9e117436356bf7fe20694cd506d2da7391d10d2b0302047c435bb5006730650230096aa396415caec4cdd98737b8dfb20ee8f07c9a4560fffca070f248a338ce2e753fdff748cfe4895ac8cd7a87307fd7023100ca82f453a0021af435f7f1f04a8e4c4702226e9720ee32a0d7d60077b66cc5cfecf6f5874c6a1525861949b4c970bcbf0302047c435bb500663064023017843df0d70cd0a312285dba706c384c478e54f8b5044e8f0abb453e7f3352ef498079bbb86931fa96d0cc4d1324904c02303015de1e5cf4ff874d1abe0278c1539840853addfdbbd813b32e286839b80e19773ad2067b44a3fb91cbfdf44afb67f60302047c435bb5006730650230118252087d608c867ef2642fc05db1324b0b621b226a70f884e3ca093d6176309091b7bacb45bdffa2cca3f8e94803d2023100f9828b89dc799d68f49cb5221226b8ff8fdc9246d6242938feac8c7f516b5bd901564839a9cdfc6b577ea05e066ac3740302047c435bb5006630640230144bfa9a844faa9a325c81a64c1dcc19ff4142af899786542f652067a99198111c04e134135e137ec8ddb8b11ddbbf14023058365e7e32a0b7a81f90a9c2ec897ef6db3387ee40e45b9e05fc3bec5e13771d2ee8f15d531bd986409af78a5d647a9b0302047c435bb50068306602310094179cd2c0f61f4ae05174e6ea096ca2da4b1eb43935f9f30c0031b8c3239c235d8486da12529f1dfd72c013dd9eaf7502310093a6a38cfeb9b897cbe0ffebeef570d9e0de048d2cc07493f3fd6063e9942c893f5e3886c8cf52898b43948c3b6c85c40302047c435bb500683066023100b91f2022b71c9295caa431540cd60644e8442233672c50e338ff81f647836b9049d744fa3c912d8d77f4f8863a6ffea3023100e64d064c8660ce631d1960d599522bb59395359c4ed76d4919b7ba8566ae7ed0f0b5142e239a2f3a473d7b792ed5ac040302047c435bb50067306502306e3b8a9d5b2d224fa6e1663ff71d87e4f6a754ee3c7982daa1c12ac7b537821b06240e61ed508c66cc3b3ba3ecd820d7023100bfed27cccc7c3bbba5f4192023e4d892b504816191ff0300a24bff8b8ba1f54dee1bca2c4f33bfa7a50430f8b9d6f6800302047c435bb5006730650230130b92adb467ebd32a982a8d804947964341b7939955df1260ec9843dfb5496a7d770d8be425ab0dfd75e3eb45702fdf02310092b77e99afb2ca8933998abea1d86827b7895ddba72c9cf69d317186f7642b3a5a63230b09aeba7ec2d9b8441009510b0302047c435bb5006630640230524122d4a28eec1c6900e9d1c6185abc6c653ac38378fd57d34850e39d40b7768ae07e2b36ee76d639240db3aaa35c4002302f10d0e4a53b6dab31908a3dfeb2eaeaaca83c1982067a8504392c013af9b3142861f220e15554e7ff20defb8da25cd60302047c435bb500673065023100ff605731418e89ef0c45dad54702fb0d7305f0dc3e58d721754f0685f15789bd5c8cae013121dc8c47c1ae2bdb1d9a1d0230297b7b6c4972357b5b673c4bdd799b27ee08045754153e49360e984f3cf40518dafe41ffa2b28167a0c0f8e4c3cdb1a90302047c435bb5006630640230569ab228fe61fa756b2ef41269f9cdea68c771f492206ec9ae1520f94f40ca00164e96c1c1f6adf9b88abd6f3ec3f333023027c4015eecf55b214513f0bf309f0864b0970c7a3a404d483b1560426ba6781c6ef1a12cab9c7d3b0deac2048cd0f2240302047c435bb5006730650231008295228af4a37747bef80914a5cf6d7daabc0f9e0e06300e7d56c79c720183bc962cc482f4737f9f525c51eca037440202306c30e7ebc0cdabd76258064b97d887bf3e7654ac4d7d79cd6f340815992be3fca1a3d01adde2fdd53ca7bf750505a42e0302047c435bb5006730650231009ccb4af82928311bd2e46b1779ed4a1d6d1f16cc337a2cf9d87e11e40ef1504f29e32b396fc1470e4480147ffcce2d140230185ec81ac260bde38e0213d40ada37ca4a96068bc9fb209923f63230b5ce4293d2b61bc31ad0b5634d477641d4376e9a0302047c435bb50067306502304db4b183c61a69e36c4b8d86b0ac715ba19fdf790207272427f8b16adb8cf16b4bd04090f34c4cf5c2e4d88bfd2938c9023100d92b5971d69eb4087bc91d10b2fc63de1d0bd75c6bf35067456d844891a7168093092bc9f47a91a3f606f51db79c2e810302047c435bb50067306502300b4e92dbaa0dd52e46005152f59749e18c92a87786e903be0b9f63aaaeffb3ec3b0001624791ce90220a4ebe47f6364d023100ceaf463966df934acf0fad993c405370f8c2ad2870370e2854855fc6ca3c24e58f3ded4ba9ddf5067892a44da82f8bef0302047c435bb500663064023025f634308f4e184d2570c47af61111b1a7fc2036b77c46df1a0687227da115886e2afb0aac05793dcefe17ad7edf011a023040c3aa5a002786cd88ecb43e4887d5a0094679b6d149735d6e93e4425c56df6425b532dc7f4bd80244054b2bfad2a3490302047c435bb500673065023005be7c982a8a825b7fc3fa3356b4911c486349f842c6143b8f1d3f240a32603fd8723837534b8363f64bd16e861c57c7023100cf41873418835ffb376fab2edbb35ed6a31dad92601706e22c9cfff2377dc585f1d42a273792ca016ad6f932c993de290302047c435bb500683066023100d1fcd599e26b74b70c70db9d94c8614289a081f058176a1f6fe60a644b47213ea44a1f7b0730d6110d56dd7587dd73d4023100a56abb344f2e0ac17c2fbb97e85e6aff2269bee9f62ade6c6950f5fcfd85592b14e0d423ac6373dbc20797027ace15a50302047c435bb500663064023052b7ac7bf7b29bcd5bf0ff5eadbea723a834aa2d3be128caab4b771c6464f75706cddb62b20f94746d79aa3bac10f83702300482f520f1cb8dc978edf5f00adb1a051d29d58bf51045ce487ddb69b32d7fccaa5227aa045a97bc5a0715d0275ff4260302047c435bb50066306402304b25867d05e1e9ca26d1c7fa12bd96db48c2920b95b60ec98354820270e990b5a694892aedca4914a7a8b6f3ac9c5e970230552c4893a79b9cdd468a3a8da70a96eed1eca192ea094307e853cd839aff2cc4c7462c0112b4c1dc4657adcddd7f48580302047c435bb50066306402306cc5a09f724d1f766453d5d11b938ab02f3577669b1ccc30b74ad6cedc4c5e5b12988f402d1ca893a45c176c67449bf702301095a0259fce5c641a0b79439723467b868007183dbe9458a49ca9b6cc76ec81db6ffbb1c14ebea06b83dfc4ee6b08d30302047c435bb500673065023100ff4f242bc334f7514de4e9d5cd3cd589a451b44be1e5f6cb1274345adf68e95bb21d6c67f2b6c40deaeeca3a84e4773d023003f4e994ff5b3e6e6278a4dfa29bcd6a1208b82fa3cbaea8bb0c23a42e01eec9aa6d4ea73e25d2e02b01a5b8af6652f60302047c435bb500683066023100abeb4c40c59ca935b8a6c880fb0cc7f8a88b07a0b2d6ec300abdd6b1ade08ad1044b3b9f17c085b1d6741254a76da22e023100aeb83dc66d58f1a456f6ddbc53dfd2959861690216a43de72cf777c1d955c1aed03115fcaa1efcd155da1444250b2c2d0302047c435bb5006730650231008d1ac33f701e0ad6e169620f1d558eebecc117a9c2213cd536e5e7bcf5df5d8540ec4a0963e06fcff4881b1fa580c1bc02304d963ebdfb600089e66ad95dec09e98ecc5270d49084911964ac8d488b43fdbd42028be318ea62fcfa1bf1d20d50fda10302047c435bb5006730650230626b35f041758fcbf63696a8e2607b78acbe8b7602ea27d06535b4083f9db890ceab3fa24be37baba73328e7c52b350e023100b5d643317a6ad1cbb4915262d31cb52ca2099a27e47b3116502c39bbde07ff9810c6658d3645182a9dbcc914f14204810302047c435bb500683066023100d3e7c3dc791e329b7f211c502bfc1457d02a4ca75f229a299b9276bf2cbcaf481b94e71822f7827bd62706568cfe129502310094a1415351c2d0699c08b92ddc71f0b9356337b219305467ce2b84f04d9a6138d69a36c776cc910759406003118d5cbb0302047c435bb500673065023100a8aef5c54c6b2fea9f26627af21fc12628bedbc554190aeb2582e3e89d27047b6c6bb8991829649939231da2d5992f5002306ae1ef94e405254b47567e68405bb6fec1c853f91a8e92bad1795c709a7bb8bb60be376060a70e70c2390b157e8c55110302047c435bb500683066023100965cd9a053b2f4975497d0d7baf76f8cfcdeed8c7b073a44c9dcdf04455917ab6f7b0657417f7654caa8a0e59536f1850231008a4ef512f269b9b694c546d64cb2eea6eb2fcc138e0d9bb60669479c297000b34b995cbe4bf963bcfc5be299fa9726b40302047c435bb500683066023100897e0413118de3d2355b53ff63fd48c994ab737f7b3a5708dda99cb26bd30bbb1e8c85853a78d95dc316b8d8b999d6cc02310087277c2619a6fd21d90c4b944891a6670e59e93e39a8df46a01ad3db8ef6a338733346572fb7da99e09d2dc0b8d39ceb0302047c435bb500683066023100cb72229272bd379806f0f876aa891f4a47e4f3f2705573867a6cf187938a792c4a942914d3077eaf08c8fa8a34c647f602310087564dc2c1fc39a9898544bd73ae49adc6334a4f1063cc842a24b99eda26395fba68a22b47ea497b9f326b5b419fc5000302047c435bb50067306502304d01aa727897478b9d2051cc0da4dc2a0b3d6c5e0dd2fad1bec9791752a02f45a0985de75ac7e23669afe8196e28cb860231008c4a4f74ae2b25e353e1a0245fe62ec6bea62097c4d2d223ee4179665d826b8f60855fdefa0a84f16a041e248b21b6c70302047c435bb500683066023100be32b4c487b513a0a8e516ef7abb6d37814d7f59745f56c1bdc7a24cd56a42e8a570efc539c3f1f68574bffc2c0eec5c023100faf4603b64321340a24af6f244bb112c0aa84cabe5801d991e1b2ab529d7d545d953ebf1e03024e9bc7d2e764b6658af0302047c435bb500683066023100fcb2a663d133a08cffdf37b84c97492be6fed156adcf77872638b3e3850a0a0de5057a156170fcf958113610e8bccf990231008a82cf9aad9b6fa15fc01088313fb2a7c7d534eb54bf0f93cb7837c080f8ec071916261d3247da450d796927b87ee2d70302047c435bb5006630640230480189b24682fc9756b0abb02b9f85c0ccc8f45f266aad5a757ec9838eee8900e965a93baddc26e9dc534efc7dcec90c023042d15915a72488e529197618e41c11d6ddbbef39a014f72c49609d12d00cff9c7ab4964a231d7e284cab557cf03209960302047c435bb500683066023100bb6dbe3dff21a5547efc71d4a59b5fbca4e7f302c4cbcb93f20c7dec97157f489638ff05962246d9adad6e4aa8d711b30231009c345feca426a1cdae154a80752bc5a3d7051186c222b4e16a3cdf479e780e003599cf4bcacfce021ed8268a54a7e55c0302047c435bb50067306502305587a173c1d75c4776aaf016d2c26b9c933de79084509ba38f3188e9f70ab227b776f2ccfdfbd3b472f76d07865d990b02310091f6eaac929de32ceec63fa4c1628730753dbec7a7d179ca7eb6d746cb26c71541503508ed32cf0ec453654b0277c48b0302047c435bb500683066023100896f9200a3526d3d5854fac828d2458b544880c851cba8e354788b51b51aaf3241106b5d133254eea9bad8e75808d0d9023100995f906f80ad71b244653422c66127662fc1e3bef60ce8fe6cd66f25353d4b975e3ef85c88344baa191a35b90cde83d30302047c435bb500683066023100b47a69b95253db80dd0f727e055f8d0fcafb2e3ee3ac76438d277fbe5ec5ec54bd67e7495cbacbaf763bd06438e0ee6302310088384527d934d93bc3c65d5cf461d13bf2e0f7c4c526296775fb64f21cea874525ccb453eb18f5518e897cd241d444620302047c435bb500663064023076e3cf79fd060290c377906569f85f2dd828dac14ac3b343d75c02f2d00d6fb292ba68cf3fdc61c4f7547af75c9899b9023063cbb43c7a0e0ee2cce90a2c51807b95ea9a8807811c108e9a0184d8f6a3801f86f5c7db203de58da8f2ef72fc23b5170302047c435bb500663064023037bef2d77afb9a15920b6050629a884bbcc9baba3b5849401cca7a547034791d78c78cd9859348d263afedbf7d238fc5023011d2a399cee98ff8c2f11242277c1a1fbe35bdcc2fdf0633ccecbe90d65c9fd388856710735e60df6ccf5ae674d785fc0302047c435bb50067306502310094dfa6c1e0085eee9f0bd5609b3f4df9a9f417408797c54d973dd609f54908fae49239fb1f80929606dbac8e2c533e24023035fccaaed1d14de9da24265aeb241c8ccf72b57efbb35e663756645d1887b3a438246533ab21938084978ec4dd8d73080302047c435bb50068306602310089b45a69fd921613846c1ff333d29acdf5d4d595df3b28f179343abe5b5330e28995f41fb99aa419969d231623ee3001023100a1409f0fe0204f58fc6ac10f996ccaa1b9b404cd1615945fe42008ca8f99d7975e888c36f31b979b7abb7599f4ac377f0302047c435bb50067306502305d85407139d40f4058ac50d1c17e036a03aa81a175daf5edd21d78be421522d6d8ee010f0dd19d90da5619e93dd14ff0023100e8d8e2f303fcb6ea56fd0228603a870e41fe4ee21714a29638083ded689587ddef69059c0176060baf14a56f178112a90302047c435bb500673065023100c425400fcefa714ddc9796c557798a803f9fe44851fba7bd0a336c1cf536f77c40f34e7117ebde7285add65a470dbfa502300c77f7dceca0939277a63998b0c167495f1fbf99b8545864545a32fd60037603dd2cf38e8e42ba28456efea4a1455fd80302047c435bb50066306402304341837b24392468cb45642dbece3b5419e92104b10bd84cd5de53afaee291a2cbbd0ff07d2cc7f71746286816043a740230037d449e5dc33bc663269b0a756fe74353194bc038243609f398d4cdafe2adc5a168e2c2bf986f52780bf6c1656bcb570302047c435bb5006730650230563ca3d46e303791a56bf389eaec22751d7c79813ec5ca46d8e55a86f9ff2a9d5dc1fee964cf08888b954efe20cd2d2a023100cbd85f33b303bde01b01e1f9fc2b0a47f95527c018183fc111c700c268e94d3ae051c198f232ac0314410398b2c8380b0302047c435bb500683066023100a449a95dbd652ba1af3f970b1a3b3a620585118ff6450e5f2c82ff54223f2ada20725aec9f5523aee305b55270552253023100c63a31cae40c530218011dfcacb1344bfc24c685b3ba2dad9b344ff4e1b028455c21f2468e33396c882beb220e8f310b0302047c435bb500673065023100f17406f11113dc4940348276bbf97b66aa16449ed119aae5486510c43f5660934747d4a32e8162939f2f967e09a5c04202305cbb7e4d15705eef289a486c1b63b7ef70438cbaf6ec106c872d6987ed2341102bf6ce047b56fbe608b8514e381ff6520302047c435bb500673065023100e9e41f8deeac01d875c30d1d834b9f7b69e49fdc95034d19f5d2296561b1dfb9e840ae0e6bb35e29a1f946f731b3edec0230777c1a904af19fec226196169b1a83ebbbce11fb3857cf8897395dff949d2f9948cfdebcff199c093725a23da06b921f0302047c435bb5006630640230482cb1144aa7b4254c850a747dbe2f3438da685b01a2446653b567c54e5e9aadd9652370eb7fd75aa95f7c8bf9ad874702304ccd74824a0dbb4421ef1e6129c3565335158c52d1bc77cb669cd78d7075db4640395cd7848bdfc16ed9140b73d691530302047c435bb500673065023100ec873e1161aea5a462c7dac19d40b0e5e4995a14d52a27b00511305a049204180738857bf5aaf9664d18152e80ea1db40230158863d6fee95eac486dbe39109c332dd977ff7abb9b7fc303b797c2ae9d628b1b747d0242f4aef202678da91d5d2d310302047c435bb50066306402301000cb7b2dca01cfdbc169230399dfd48f49af47bc3ac5480ffd359afce573984a8dc32168ab543fa190ef479130624d02300c1cf5e2ebdd78ee02efca144be391b121e2067c9b4e88c7fdc30a3b28f706407bfd2d78671fa9db30aaefb5546f4ea90302047c435bb500683066023100fec5971677851b340df1ced72085c20f7dedc78d73c49afce49d3a4e98ae52aa8f487a662771692808cc8e8ed724a802023100c385ab09ae08dd32e3dcd54d1fb733c7d46776137c500c2f8db16f4eee74223c3fafb7e0ea98d0d11f1fac03a6c066970302047c435bb50067306502307e0cb4b189ea1e8db3abed11ad1875850554b6fab31c455337f690d441c267bff280a71ec7643e6e20a0a0a8b083b0d9023100b357322f0e86909b564a8e468ae4b546cd06c288479f56489bbf78e79406e8c994d69e6bc626cad15ce0ebd9688903200302047c435bb500673065023100d96b80c3a05e435105d7e8d3f5707983cd9c164a38edf6f043fc1ca40a0a3b7d861c17e2f17dfd29c54ecad7d02eb5a5023064ddfc4b8708f20ed2a5026eee6ff829575f13c41cc2fb45f509ce7b09957923293e6757ed6b884336fee1af04e6949a0302047c435bb50067306502300195638bd758b84e969109c13d25d7035e66ea02e3744cee68ce479fbd9d38bb5174217d123d9ccf8abab81d29c82d05023100e0ac59478b7a6c16e891c239c7012cd25a3ed148e7234ac3412708baf802af1852d983cf3d9483d0a533be5406df5a820302047c435bb500683066023100f7ca5bfa4d9a5f3f045c3b12ec50f8e0fa4d05dbb3ae8da109413ed214221d5fa3c067e20f8de9be9ba0580f18d82190023100deb7fa651f442183e15894f0ec15b99d1b67b782c670c38c7dc85bb8057599458b5f113c90df154b0a01570aa9d09d540302047c435bb500673065023002ab764d56e00ea32e480cb6f284b73bd11917920fd4af43b7b8f83b25c080f0cf95229e0a9963f642d48ccd95161f14023100935af8a70bc418e30f1e1859ed260577cc052af8a4a82afc006b560b51845ba699c3d1f507b76990ac7529da138037860302047c435bb500673065023100fc34aca0d963e32a20b6131606ea01e8b3b89b69af46e5acc71fa076ee88d86430979f0f2e550f9d9ff5d5af3e80a8a00230319c3599a8256229a9cc281ebab5381bfbc73b7b060c1f27970e4d5587c9123432e6ac48e4628592f81313fa882458370302047c435bb50066306402302f18f9cfd4c7438eb3695daf536bc884a75d770f140e44eb6246bad56625c3b0e70ba58210016a15c00fe4c361236e6f02302f2bfdc49bfaf7f1943ec9aea5a2b4609fad7116c0e093c5dde8471c52c976118b31c5f72c2cfb8d065e041e798a963a0302047c435bb50067306502310080fcf3d16490b592c90fd4b2673c753175086a36a81ad608a24cd2f836f8bb044a62bcbb23e2167c4634276d049b92520230629102b82fbc3d0a395757634a227bcd53103b4ee88530a0e75a52ffe5b79e8c265b31d57fc4300938cb8ece3ba2db3a0302047c435bb500683066023100e7d2701ebe9b5696a834bacf45e3998496678139d83c74534ad2234682dca49773f788a88aec36eac5c054e5125842ab023100ea5550201869c0ce2138b9154a7420ce0e6f0fbc00fe7ffb13dec104b245f8fd5ababfc829c5b8fa86003e99ba1442010302047c435bb500673065023100e92d4cbf5f05eb3365f5828f91846c88a0bfc84a192d799a79cc1d30062bc66b4a38ca1b83e324778d4f41e6e095dddd02301185cdca359ac2928cb91ff53ea432563d01d1ddc636a4e8e83184499b6e3dd481e73dce0ca357b74656a2b36b02b53a0302047c435bb500673065023100e226e8ca4a1a2b33cd9b59e17d217bf990721bfd26a5f970904b09213090204647f26094dde28f32d926903af95bfce602301806deac6b98624e2990a3276d2037e12c18dfa96a9d479f6491edea9fc8f8de4acedaa843490895589c0e746e4eeff90302047c435bb50066306402300c7eeed2b502aa473fde1a890982052d8a7f7752d6e7ee766dbe5c946c14da6124698fce65cb979bb1b64463d725931702302648a97c15eaf927b7ef68dd0aaf8a7b8d24d483eb92c1ba87e043bb8ab279db7cf542d42b35ca00e71f8c0718c089b10302047c435bb50067306502301a90cec6269b1c3a4b2055151fb2d8f8bd368a03fc65c48f6dac432a239dad642e9d8e3fc59e6a0b813ba2965c7bb4c20231008db0bfd53c90978d3d2fc979358793d01ed3062c5342eaba1da8039045e5d4240b109d9f0f0b1b3d3ce0ee264e757c660302047c435bb50067306502301f62bd5b801cac514d97febbe199d7719bfadf982b10df3784d8e8f0407b28fd3a33927f3503a13fb2c06183724b70b9023100af1d4bec4a9de71864cd49c7025919c377ccc2d07b01047c16213a76f1e6bc828ffe04a091a778a373090e8a54b6bd840302047c435bb50066306402307c9d44d698e02c0f815a71593c38b46842daf84126e51a658b3bd284c2fca01f102b6d2572dd3c6aaed238b9ef51d06b0230429e1394be8a086e94bb86301585675b522e2409f176630cc70040e78e781615dd4856746963dd6f577d3147db57f7df0302047c435bb50067306502307b38add756e5d8ea78ace1ec4071ee26b1db8a5925134e907b283e5dc058f1e7249119906188baee7f591307b2dc541d0231009e083ab5909c4848c7ea97d681ff23604a34695b6f5787117be157b857c923f13ad7ed504789d1cd3be17826226a5f580302047c435bb50066306402301f51b61cd416bda3840b8a65dcc96f0d24c41781dfaf353c26fbdcecfe3de57fa36e9fb6e0070d990813e3ec6fc421dc02302c30cc251c095ab328497734bf48922031489834f2a18b716c30a74753747528befdeef379992218cb29ae228eebd0e50302047c435bb50066306402302081779dddbb5b485554d84036e7ca482a42ac54fe04839f9c180366b4cd951e87f8db472764133e3e3f1d1dc89661ed02304d7039be82a16a7815f148f052a2fda7f3169d313680e9352b6f2682b68453055db8558203331aeaa5ed5a8222e84fc30302047c435bb500673065023100fc49801897ced708fdd0dca22b9df673302a59540d0a58dd06df84890878070ebb74afa566c0702ec5e34978b201e224023068a6cb7c032815243bb83903d4bba39faa978f7ceeb18ee107a463b4d181743c0b16508e4ee972415397ac66a81a585f0302047c435bb5006730650230223ac0724a05db535a829c1a43169942780cd1d2d95c8570c2cb2de165dd001c4b8115acec32d90f3683ef8547d3f8e5023100f5e7cc840c13618128a56b1c4ec928556992290c60945c41df744f396587c45967b676057f57598e387e251ad98336cb0302047c435bb500663064023072b96137e9c4389387ca43ab1af1bc110fd9ab1ea3ac2c7c6088adbd45725bbf67c6e3c20f042637429d668e711c6cf802303008588969c0c8337fafb8567d8e86d7578757d01dadc825024a12eab5ba71b326544d7337036ec8a1f002275965dd4a0302047c435bb500683066023100a0af0549cd97063fb810d5bca5d3873d771c522266d12d74b89936acbb45d34f112aaf6697517f67ac04aea4473e1ca60231009e2d2a29741621e3ebb011ed8986021c0bb483e6dfefef2fd6db5887ac0d42fac6c83ac8375efffb5c37d5400be8bcf60302047c435bb50067306502302de212ab09e12a3f0f44be886448a82a967ae0b2646b04eb9afa0d90ff8c26fc3ab1f0e046af8c03ae6092069ba9e1ab023100b780a79566400ce487978290a3d6b8deedd5cec1143f78d5288f086b0559ae5eee094b66518980113b14aeb879ba64090302047c435bb500683066023100856ae4258ee905f35ac6a8ba6259367ebc61af53527ab95e8ce153f9d3095fce7c5fbdcb68bfde30b0ac3e82fbcb9d82023100b4829628f6868245e82872671531e53477868a5ac4b2eb5072e378aaf9c99804e360a4ec324a36436978f32d0890a59d0302047c435bb500673065023063319eef5a6fbe6f0dc7049bf30d18e1a5fe2b06b35f8cc409133b421ea9df224100e1f7db65abdabf53c97f1ca2213b023100a64dc714b17148ed9ae3f13fd3c4e4db7802a914a0a262f58b3e5021f658db820f117c0f74f7cbbb3f021083ec6d24e10302047c435bb50066306402302a7d2c6b58114635207ec283f43ab8917ce8a91cceb3081a021ed4a29d8b0b23b9e9e269aa1b3e597ee68fb30a1102da02303c52ebe6a5f261e35d63b2fdf4ca11f91d9439f69d8fa8f29b5a401184484ca3f765918ff069b6edb23a4e2b08cc4f950302047c435bb50067306502310096d972161784463e6966760d518d80e899f96892825216d7bb0016a9f2c4cd41d4ba58ba437c5f482052e4fcce720dfb0230489e68fe7c443824d459266b77dfb622e8899e1fc98f8fd06749a9d766b1c779e8660e0596c5e796d4f9067da220e7940302047c435bb5006630640230348559d0a89689348244ff2d5720ad94be913169bf710ffd61be246d4d32cc720fa25c84b2cbc00e06ea22aac58eb5dd0230632c3128502ee6657c6f4b18ed164d048eb487df6e64808d11f5c59a57d98cb4e55a090812ad9137cca1938408e515480302047c435bb500683066023100fa6ff087a64e86ff378fab4f41fdc618bf6f9b010f6d5ab5d14d2a3b20c8db67e302da302ba3f4d35a0b2c162be3a9d1023100db2d8e684c259540f1297b4a2863cf4786ba9cb4ffd9bfc4e5c9112590a4446e398e1f9b00b81cb0897df22e0581859f0302047c435bb500673065023100f1177cb295459549aa82a958a5b6a3a99a7d6d827bb5af1a13f04e0979ae57ebd256c402087c3a1dba8d25dd3912918d0230758c20e9633f5ce34702d98c12531f28676e090af572e82966371266f4a5f9bae3165b4dac7a530e8a7b4e2794037d3b0302047c435bb500673065023100c83bb8dae1306ec2b147eb3bf5342086c5841b13a51856b66f65c0d04b839535d423ca81ff3b28059b90f1438522539d023073368c474513a930db425b5d3089c5ab51cac4d3488dd42bd85032fa83cf62ed6b1e8f96c8dcd827c58268bb58a54d3c0302047c435bb500673065023100b090ec088ae4ebf637b773b3666b06bf9510a8752c5f2b6dd2927216cff3815259d0eadfedc2376e3a532ca8065ce83002301182f44e5eb39a2e921ff5b2c49828add1ca7a2755bca132f6b11ab410afb864f6472d4d063426eadf302f8b946a8edc0302047c435bb500673065023100b8c4471facbe4f7ce230f21a5d1653c1eeae378303e6cda2242d1aee3d57b1049ed4df5e63c75faf92b95dee94952ac002300ee234b6e1ee8dedbd771e9613808bdf835931112d74ad338ead631143c524ec7cd769e68a59809cb5d7a269896cbdb70302047c435bb500683066023100b04b8f8d9b3799c8f3432b505e2f56385a89a1236281587a6b9fc4afeb2811db63afb9b8abc4d38826177523619900ba0231008f21febe4ef5ee68769a32a23803b0d05da3cbf19143a5ec2f5b2b8635ff0be2ce452f567348bc32c8c3b4239f17f2410302047c435bb500673065023028290b8e557abf7b54bfc9421891e747d62cddf582a1daec7185ed7c0cc8a379709902e862524579ec113c9e4f18054b023100cbc01749eb3e762d8fdb1a79830b1b6942aaa09c43760eff3533c24b7e4260d31f769128fccf1fc92fe0bdd9220f43f00302047c435bb50066306402306b30d84d8f80a77305b2d0c31bbbbecf2f0ed747996f53b394015316689c51123794491e4ff725320488fffbf7c9c195023025081c8c7f3b451bc53badbc917ea2d01d013e043518086e7894bf024e0b97f9cdce0568ca9f35a23b1a8f990fc457900302047c435bb500673065023100d4545bc29476e3b7391fe58c19abf7a8b60d7810ac76cf0d4b45f60a96683908502a865e484d1f1c0037bcb1e3a425dd023033cfd29a8e8722a4f582670fa95f8540ec1866da9d710548ee7b658a31983bcafeab3c7483d928e391ae6dfc0f0cc0220302047c435bb5006730650230168fabe52f4566788c4d2e682b97653c688600c3b4dd7f3c9c9f3185ef62067c206bfbd0d09a52974a66156203ad9649023100a093c0e0fa0c4f185b24d173abe3419c93bab43e3ff6191042fe71fca1b025a64c32dc6eb1950895aecdf76a0a1b68320302047c435bb500673065023100e44ac23ca544375e56070be4377b34541c8dea3938a30580ff8e069c62604854c97fa983338549eda1fc1a9ac56fd37a023062c2c047f36f4e110ffa4a9ee7a33074075fe6cd9d4721b40aebd8f189b2e75fdc298d8b543c9a6955f837c73dfc85440302047c435bb50066306402305acc2bc17bc0aeec64b7fb1a5b3f621767954794181867f10e434e931c49951af6796e9c3e61175b7108b5405a79c2f0023040eb2192a29ef206ec920a0a689be1d60fcba12dc0f1bdeed4a6efb08c6270de203c478b5fc86da7739c732e31a9bca90302047c435bb50066306402303e1e857f5f4c80c2668a852c6735f917cfda2c75cfe88757ca6555fb49695abd0f2a3a4b6086ea8d70094c34bbf9289202305495ed57197819855fa32ca8a1d4ee9cbe98421351bbb8901acc32e4b113c69e9d46d46323b01c2a99c39f2efb3eb8800302047c435bb500673065023100aa64bd6da733131512f15d123a8978f90faf72f13c2eb4b2df5ddb811e12a110932bd50041f6358c854d605d6fe8de3402301aa9cb3cd5a05e1eeac9e1035039444ff0da4f8ca30a75c25f2b9c8bb2d7de7211a6245448cc5ca1a6a91f9cf72b61810302047c435bb5006630640230443c3476040cc5bea531496bb58c5fcffac74284c0a3b3b71afb74eb666be63a7fc65a1a891134032f33df16ed00f12c02300ea2d0d006175010901a1fbe1f3a671d74c8002fda995d790f04349be9b03a9caeeb501aa3026a92fd7e84858a9cb9f50302047c435bb500673065023100c909821b56a1af777011b2702cafb6f888b1fa1cdf90841bbd22368f49c8b8d438b2a19730c169473585c0d014dd3d810230405d326442fb043918ca2fe37ef54b5245c04c35210d33695e0b9d49f78d5b50fc34cf24ba2627d10509b310295553c60302047c435bb500683066023100b5bb631f7e8a18690edc21758f1853bd74f9ad8ad0212716fd20224a7fe25a518bb12f27754593e544fb13a3fe896bed02310085309bad227059b639398a365eff315dba0cc49c37109770cbf67e3115c391fdf43a2fa0fd2351e819deea373b0806310302047c435bb500663064023006f4ac9f61d2de06f00641784df2d4b7c78d22e542ffcdb2d12cbf5ccf2b36257a291753e241a6046c7684d8415539c602302e0587e7b5b0b00ed018664889f3bf4a64ef86a6c03e58be1b60020df3ca8ee6aeb32f28ac46bc01888d6ff0dd7d24200302047c435bb500683066023100e8023aa6ff138a11981ac89321e329510f6555f86ff1d095dd490e16369032c44f408dc62513f26d8b1030cdebd189fe023100f5b31e3d2334d433ef29d6eb3fc046e7599b4248fab3a709179e15d220bc46d3585a7a928025428cded42991645ddb0b0302047c435bb50067306502302b42a5cb4b0a40bb56521c93aa551e8733537d9fdb71c90ccccdc7bb149db67809e1427797b5cdec41fb17fb7f41f732023100bc92d5fe074dd41136e98628f3db4d29f52e2e24bc8abc6c535956bbf4da79986441929dc2753b0da429900c08d8fe0a0302047c435bb5006730650231008d5ff503610341f852f1e275fb14cae8ae72da7d5fb163b54403b5184fb0657d00c2bd3ee2a1a6ddaca469a34c123b28023049c91feb4b51f783f3b2df1bd8fc6981412c580bde3fd9daad81b8fa19d3da25b0252fac2b50ecd00ae6c0164d5cd2c30302047c435bb500663064023072d9c4a6bed20ea3b7fa0a6a655469a164109ed184a8866f96d345261d51a095ab3fda09c1c2287a45c4cf51cbd1908d02304934d83847aa1528214d2217e06f40180d45c66c161e5b135e0eb1d3dc79657c1287456992483fbd91bb3f47972f73ac0302047c435bb50066306402300ace49ec9a67c9aa1c4c0767d395ee9bbd751b6d9eb228ed18e66c11a654f3a76f1208713004db082882d3d846434aae023079a25e0f30a071f1a4057f90053ce8f80f468166a00329feb84382c165a93e65e02347764960bfb020d7a1c71817e4cb0302047c435bb50067306502303938a418c550c93575492694afbedbd771e9709ad9d08698babdf10b55f7ce3f1f0a72383e9f63ac5a25ebe272fdc9af0231009f8d6ca4ab8c476a192524f2801a5e4d8cf698bf323582fb24d9830f0bf0963754b78d24110814093779321d461e53730302047c435bb50066306402303c7575e220ce424194144eaf3dae7b671df3dbbf808ffcc99337e3e8a12331410c8c6f67b3fa4172ca144b2f5b59feaf02303c0804fc228fa4f9d8d6e2d8af3f023af977f6bc72a6ace9e3058bac10c9e01b5ac9c394b3ade6f6f128d28925bde0250302047c435bb500673065023067b560e07b0d170165ef775e58f1862fea7213500904f4730371974e9d4f02a80146bba5e61d9f16bc041f3de3846caa0231009797c87ad06403cdb3f1712f391d020148162cad25e3f7e47ff4b1ebfdfc890cfd592f97e852bc614b03de56edf11f5b0302047c435bb500673065023100e55130091aa543f05a560ce7a2e92bb6be6aae44ec227f382ce82ed036f0ef070fc92997d16bc32dcee77a6dfe4eb79102302a091aa0322ed703d468f1651c0e10d399983dd65af9775c8614cc39af33bcd192f3e348d3be08ae9b86f93e6959b8700302047c435bb500663064023006523c9b265d7e5587632e05429e7d183fdd078758e281e90ad6229fbeeb94b1c94776840e5fd9d1a4e6d0d8d8076004023062f79d0280667bf140c06216b1adb7875e955ac538d1c0198e44945da2b4612414c8bab6e55044d0aa8179794500210b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303b2e04f113e2f2e2338ec212e5921e84811ccf7ed97f31797d02ec2da728e35b3f12c96cebdd353e27e3196c73ffeb1d02310089f76c2404fba52d8dd4e8f5860252e6ee197ae16d0b18ebb56e80721d339f75252006fd2e7ff155e473ca1971531b250302047c435bb50067306502300ebd22e7800c5a7b1b62ce3075387941a823a6f7fafbf1aa0d21e5e8067a49cee9f772a6053f0791316a5c3aa2193e8f023100949523cac3dbf59445ddbfacc426f0c749bec43c75d2cd65c5f9b9d0dd74268f0816ff9536de9fce6e7c590ee0accb710302047c435bb50067306502304903e0c63d1640318c1ed738705c494cdd6085ab8ccd044247949d21ecce47d09246df2124bf35773a7fe5293201eefa02310095eb12f089a4907b24d7c23c75fcd93984e1a0b5cec6d02c2cd9db9010fcead5cdd8a993f58e601337aba8f1da6947b50302047c435bb500683066023100d2de7aef118946c747358f61d9c197f8c2ce343fc78871d467d1f165a98b1a75d1c0ab8c5d26f976ba41ebff84bfda53023100da8fd09c39773d0446aa20319682f9ab657f8bd78b77830f70d0158bd6204d981d4a55ae15dc85153ab34598ee37f5e10302047c435bb500673065023100f7dfca1a9bd5084ecfacc2e52b96c9824453f157459fd9489e045a586bf192c91f99cf32b2cf67936b76dc237055025502305c222e0228ef1bc7eb6e67a84e936c0c18d7d2103b18a76ef36e43e7c0ce7129ac79502d34315f6f9595ce49228213a50302047c435bb50066306402304bac4b8f98b53992b2392a4bb4d3faabfac386b4d1eed32de3c9734f9776dd218791b7715ea266f9e7bbafe5461725200230730ec140c2ac342e9d1412bf99ea6d14e555893570f4882da50ec832f542d07f1f8aea60bcfa3017d61fca59a62447be0302047c435bb5006730650230382803a24dd43415ca8b58b744f0ca9a1172635b16181a3cbafcdaca1fb516a23ce0cb7980215306d9c88fea80e26ce50231009bdb5951565d82a2c1b65df30d141553a06fd44e32ea104511a371a2d77757b62ffada391315529fcb5794fcd3b99ecf0302047c435bb500673065023059b5d9f7b08cfcc2c90ad91b54cf5f4b1dcfaddef05883e2137ab2623658323c20b0eb79fdd6b6ccf40f459544dfb319023100bdae364645e155369281d7911b08524c20f54b12b274cc17ae5c376963e70d7b3d21aabbbdb2fc6b1e2dda0da5c414b80302047c435bb500673065023100b2d9a75f3d878172058b1aede1f5fb5cc231f77746eb372b1b4d356094920e9539a34f097c430e7fc0cd6c2e6b0e14920230258c8845e2804bbbad9cf4d3468473cdec80f4137d7c76b0a833599110e24ee4d81a9ecd2dbd51663ac429ca611bd1f10302047c435bb500683066023100cdf30a1bb228bed28573058ead87f5154d0b1163322475c6afa2191667f04d5a8cf7a9b48f0bfa75a73a2553f9a5f402023100d037f2521969050048438f4309bb64b06189c2d15c6c0b5bd2ddfa44458357b2f8dd7b3c7334167c104266d4566250120302047c435bb500653063022f3f7bddb95f969224ebec9bd6f852c80c649782521f6cc37accac95fa00be095fb5563d4d1b07ec3e8fb6b158283ede02305fdef07c01375260124221d72d099ea6ca3711e7672c4c80ebac5a7577ad8dda904c7e0cd5effa6856b58ea710bc55740302047c435bb500683066023100876fde8c26225ece62a8c976ebbb8ce574b81ec23e32cce8ccb23d60a97abcec8d96ad4577ae4b21ec662ffdc9937d660231009773a8fe0af5c5072385103c4cb689b77cea5d4225aedb9d64da7c69e96f83a29e8807b75396f4a04b75ef5b04daf5c60302047c435bb500673065023100e0ebc4db8c1756251194a8fe4e597a64c08aaf5b4b689429fa4892d6bc0a4ad428c82a5e9f09ca19f80b8adf59b7415a0230109c5c7a9c7938014a6e1e1a3cddb26749376c1537204d9e570c5099b7264d4d539cd5154a895f4f75848ab62c8f01620302047c435bb50066306402302104d4b6ec88dfe50811b109ecbde23819f84b860780af0a92c3c711b80b0aa5c18c4f3bbcfa78fa7eba6d7d5f04a74202300e1c0d99a639429dd557bbfbd8fbb572106ed9c3fd2659ebf439bf0286e5d83d622e096710ba7cf4efe57a71f61e462f0302047c435bb50067306502302dd2638a16c4f0e7b8d178710b34fb03f8c5b0b84f8915d08391c527b5f3d3c511b23134c7569efb0a8c80770b3b0c94023100f3694fb422e84998f16b5f6c3efc6e262f613e275759640bd46b0737049af0c37c0c1cbabb474dab8ef445323f6578490302047c435bb50067306502303c3af530caf531985b6b2c311b080065ec533107d87226c5759ec7b9ab27ddf3ad3de9fbe208c82e1b4e851f660b45ec023100eee1d9b54d85b80b14d5452300e54a54d438a9ea181e8bcbb8964b95fe7215ed0fcedbb11b1dd5033d138a5e1bc7a5d40302047c435bb500673065023013f8ae6d95ed2766b51c9ad99a99a9d8df8916db3645f90e86d010f24a5b980ef02b1d59815cf263aaf09fd115862dec0231008d2edf91de0e9ef274c0558e26b498c96555542e55500f37c7f2d9f66da6c5c49a9641c9d89521ae61a07c81635e9d8c0302047c435bb5006630640230389ead6b9d4c1d47fdda8d6dfac88fc2eb7b8e04dd01d02260a1a1370ed00d4082a20a2655cf4634700df5fa9c76e1cf023020014e3bb3d5249af3a320e5b339e03ad1d96331b8efb7ab6893965bfbd255eea82261560b250c1122bc2a29983fb50f0302047c435bb500683066023100f4ecc75f666dafb8b1c7d502e1ec998efc1ddce64d527bf5ddf39db90293d38068091d6538db1585c87320acf9a46556023100c9861fc39402beb96986c9a9caa202930b730e18514b917fd32117156862481f5d87038138155be013da3a9cfb3569590302047c435bb5006730650230230e7ffa792e18c9f4530c2299214347135bbfb069b3d09783aa8f3470b5cf3d4c55fe4a8778298ae5f297d48f867d75023100d3d6281da6d6ac2a105d2eb9c0eb0b6865db1a58c589c128b7ae885fb864c3ae83225c059906879752919146384c74210302047c435bb500673065023100b01309ed0a3389c17cc3f674ef5b6d439fc01899dff1fcccaaddaec6c7d5550f8db4dd5d9d07ec57a0e3db67737a5604023021b6d8b648e908f5c80ca8d1a76f31224b77530adba8ccd9681ba5f362c5fddfbbd239c9689552e3a63ec773a14e5d080302047c435bb50067306502303272e0845a67ce7b993a26eff8b9705467d2112ecc2ed22a7ff67ee21295bd1c99f6d9d329a5fc7ffead638054f32ba6023100b9161d978987becf6dceb923cff0253c1e4949d4e1ca835cff55ce97b85913494569fa7a7bf8f1076f9746e6d98e21580302047c435bb5006630640230241a3d073472475821e125eec0d75d24403e267140882148fa8df58f4325d08ccd586273fc6b508c13a42708af49cd130230665aac67e781955a930a1fa7a6a83ca18ecaefd01dabf96059c733a3994b7430d1d8929a22b282631de27e628880076e0302047c435bb5006730650230157603e5e295fca8b8bbde2ec22c70eedd2c6568d456dd4a61e96f224bf7736429b5d6e206fdb0806a27e187c849ab2a023100f54403fab43f5e2f22564ac321da42890b250d2a3b01958a0c871ce5ec4be319103820bd822dd5ff27d2c75523c10a7c0302047c435bb50067306502306e2ce63cd451d813203a65343524d481982e23928b8cc37b9b85b6542065999ef4a5293883eca7219b95ac456211373e023100fe06c03c850ac963b6f160de1deaff0e0c40bf62eeb23800d9cc401f005efa137e26cdda79fcb3fc2e133ad6f1b2e44b0302047c435bb500673065023100b81f551534ded66d2ed92d2379361bb69fb616de9fcd3e950e4c4c9867990b286a51ec37ef15288156caaccef19b16590230250aaf53db2e19fa04452bb1e33b99c198f37f1e715b7b39ee2bb0816e84c6a6ae0e95cb28663932119108319d4cef700302047c435bb50066306402300d2db8e2113a2369127ae7cd1d21b18e8e583a624117189ec3256b252adaad0119f29b9d8f5f4156d947ecb18ce3a06a023000c3938bb4298feb97a4c4e610bee6667c60e505f4eb7d00f724bd3f1186e89de23590881bdfe15d56d21adfe7928b7d0302047c435bb500663064022f4755483ad4c419cc496fb61884f265c244dad78a568625ada8687273b85d0381c095e2486dde7eabe9568b53488f72023100bdfb9a35c4278c18311e43a2ba0cb7203adc8bb00ee74e63252c5c2fd88b7532a7767a846a94289c1bc02c5f2dd5db240302047c435bb50067306502304cd833483063463394a42b77672bc63c464fb37e24c017b11e829236763aa70d00047330ea434a5d3267243307496816023100f07156401cae60de90018ae6fd8ebdea4a296eb2834d3146a0493f7f9a73a9f143579fa3c02ede0e531f2e3323fb7b5c0302047c435bb500673065023100cf357d66ba8dfd08fedb58979f16e0f975cebf6b75e9a25d541a4cc7eeb026d97e1951aa1370e81f5884ddd5d1a2883102307b93d94b0e730ace34cc43857e5028b170d9eead6b2a2c9eac45a4b49828388cf14aad3ab965333096c37dbd6cd8e7ab0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305335074218cccf8de05f10d97f43cac2f0b0a807f3cb9f0fd7d374729db1e78d1daeb59d36dc275ea40ff364025367270230543464d10236c55ae953bdac91de2e6c3d7bca802eaeda8bdb603e51746752a37298f7e438a54c1e8f4bdc6b97b6a78d0302047c435bb500683066023100eb895444dbd9f2e0e7f53fcb702f8d7d8d6f49accce04c527783e82a69e0d8ebd18edc2d6c78513ab11eaf5f140c584c023100d4494dc6bb7682b433261c5d590993ef3667560630577a8e70ce2d432c17e6d8eca3c82ba6841a717711c69424cbfacc0302047c435bb50067306502307f3898297bc735acad5dd5aa2617c1453271f6a95f1a1abfb6e4765f238037f8793aaec8b54dc30d7cf3a5c657a6f09102310098930476a2216b96ff9312445a54644b07ea41cc941526dd9777a2e53b31d3b00b7bc480b5908421bb6f85ddf5ab3b3f0302047c435bb5006630640230336bac60b6755a96b639c6171db376057327b8938d166908c7bb03ccdf8bd55c136851171ad8ee96b2e4d7127033d9ef02302d0cf624b64f638f087cd99c0475ec42bed6ac35da24e8bb0ee7e992267dcee25397fbd8f8539593979ec7adb450cb130302047c435bb500663064023069d84e7f564abb86d9e432da122f0888f3bb7ff50b8564e2dc606fbf91a42f3623a8fcc43b705e6aa5796fda0fb69f7102300c935569789eb56fa4051340ac69e832fafd971606e73acd2a38085b15541c3b8e5b95a39d5709c470259278e6cdd7c60302047c435bb500663064023001dd8e19b3b0316efd56e6b6082d9c2b7c133a6aeb0cad28ca53785d8654a1f441acc328f78d537be8608fecc27b905b0230619271a6961bd906479418996c2c4a4c22206782b8316693f2008ce627c1eb06ff34982864c48ac2fcb435299b7272640302047c435bb500673065023100c40fce9291ce4d35af7c88b556f5a0b006de7355941fd8fce2c6ada623e2c2fc97c3c6a36e4eadbd9694a3e39d2bc74502300d6bff2a95a613c571f670e8bae7eab52f9d682b5952ff2ebf54f5c560f965ab9347216f61ac2c32c574107f73e114dc0302047c435bb50067306502303c612b72854a848427c10b12038005de05ba428dee3e2cb9dd9ed45865c3e04d11a7dab54c97599ee53957243e6693f3023100b0f479506860fa59bedf1c2a9b5e4b0fcc4743921a1ad5343d4b063bc191ed4447d0425ee343d25d8819c4955d0c145b0302047c435bb50068306602310084318fc8212bbd619c11f7258b085f26aabaf4e61c064706baf314f9130d53ca2fdcefec258122c691670df1da2123f6023100f3c58dd4952bf4c532a9cd15d8ba9b66ac85e1e627d02d877eb0e318d5a5fab628d0469f982bd9e931f8c00dfafeba8c0302047c435bb500663064023027ea294f53d56bb28aecee9f86acec4c01755a71c6938b734f1e73b5d427e84436e6d3208f96f8f75cfe4dc924932b5f0230379430bec79b068dd86b819e442f1874421fb5a1348672f51f88312fd531c4be157631e9ccc95d9aef3f322edb87eee20302047c435bb50067306502310098026746e39ce70c66cca1019e81ad796aa5a6479d58a1340ede6ace8554112c5f38b55911324998e2e6fb3030cee9240230504460450d38eaaa45b6ba0f1246dd9d5cb790a3e0afbe2865830600a4b6c57500c219afeb76baaf0df34bda249414580302047c435bb500673065023100b75e6427b7fdbfc4b75f2e06b249001fde8fb6f2996e7761c6f31ad2f378335d7b6a6eae862bc4c74d1762592cf75aa70230705ca8e9a45467477b40144998fba6b0a1541afe45b52c78f8a07d8ac5a8da4ed17bb2cda94bcd2c689b10d14a77edd70302047c435bb50066306402300fbd711cbc5f2baecc9390eda68e30dd5a42e017c45fe1261b75b84e3a3a91c7705707190be3248a11fa9627c1e74619023006cb44e1bb6cc1d495877730a5adbb2638b6f91c102d88d8530a429a5a7a4bc2deee1e19c762d2af4d6cfd0e95bdafc70302047c435bb500683066023100d26dff4cdee04052a6cd63793b0c75d933a7b1463ef3f689b2d0e88a86df9b1aa74ea532537c76d052b0113f4a9f5873023100ce4290cdf510c06f65ca81c8f23758ce025a3dafb6bc7c39316ada9c68ee41001db39d654536b3cd87d4830eeb194b700302047c435bb500683066023100df3bd02edb87595059e21cf99fffa29b7bdf1e9abc1716c5289ffbb75af9b61633c9e918c58bb1e94c8b407497c2f435023100d1fcdf5f24582ae73963c44beadaf0ce468e52cbafbf0d5ff3da41cbcf0f29b3a5f012df85d2e4e54fc6ce7f24dd8aa50302047c435bb500683066023100d92867678f5d682b6fd771fd7ddb77681a4f5ad7949b8d4b5968e94eeda95c0bdc40267e9e530e8ce6e4e11d043dad65023100b93b9f84440b085dd41324a529fbf7191b271e4ebc908b3c406a4af84604a6405aa2c7e7f0155d604d9ad215da5e29a70302047c435bb500663064023061b31e91a6e6704f045d0aa754da43c0c0153b3fccc03bf8d4b0a89879aa444c034ddd3fdfb1b159ce2014f45309d23b023074a11ffb7368e9d2387d92d22efb23e2f142162b209c9b41665bf043d959b663382183234ff8b17b57bc0024b2efe4d80302047c435bb50067306502305cc9ffc1fd9de954b151f7cd16eaffce31506a834c74807d2e7b158325fdd4dd98207c3edcada47fcdcc8337fd1399cd023100a67622c2795e4c154925188297c881deef79897b19d5ab8dedc645e8b1c81ee82e599247933fbbfa691e09cd5c6f37320302047c435bb50066306402306eaf23e59b0bcfd8a6cc2ab2a11cd2e12163733f5c94e25d40ee8217aaca115d428fe3b7aa0079fadf950c16d885542402304d78a98cf4d38df0c5d0c429c46221ec2a042fa6fbfe7e3ead0d6411266acc2756371c075f6155ca42658cf021cf7b5c0302047c435bb500683066023100d4e6cfdda1a1263c032e7419e7f317354b6e40bd79e18375f0376e00eda2aca60b2a131691bdd17d48d456e73102446d02310089ea83b0445430362736b0f7ed3f9f77ce0cfc866f3c5c3bb31179a3a0f890be48da229b8ac135c6e36b9079f532b9450302047c435bb500673065023100bbe1746e88314e8c4a8f264c2d0b4e49aa6a2335800fd2570392f5cd93ee1268f083aab24519cf399a1b0bc5d4e8d70c02307550d3024eeaefee6367a8c198f5638c842323b244d6fac7bf8fe3f138c5694f313ef67d5a32c9b2a0634777374f0f990302047c435bb500663064023002d74f9a5df75c1c8ca310fc67569919faac7007bf094f79dcd2f9b9726add736189202e138102a6896165ebb7cb3420023077d2a2f452a050c6656f238d79311c7d3fe27c4e23f2b56fc34bcf234e3a67ee31ca47f0cf42f341e60a9c42587706f80302047c435bb5006730650230552d8d9133f984c598b92f7057555beed830f99d5b5ca9f7550ba4fb791c3c4f6cbff4602a965b6ded51f483fc73cd2c023100cbe26b93f5f22e71831c4dc746860ba092dd06bebd025b2a3e9e1d099d04e4c83ba9e8462b0610a475ae49991a80090c0302047c435bb50068306602310096e3ae2e614c7c4e9e9d72fc61adc1ea9d19f815407ead03f645b7299cae1c14c9bd947e7269be55a89af36496547a5a023100f182742cfbff546409d80074b48ba63523310c2299e3508e79ad118d6862f97d7c8261058eb571e5091f7b7a50bb879c0302047c435bb50067306502310085f7ea9e209ab2698819d5808b1ad7cdbf772d7d14a2941b589e48ea8550a8e7f265a8c0dca1cbe8bb741f8a800e056202304a8c2ed2d9fc5b1ffdf9dde1e713e85803e303f215f32717a9cfed0ef23c3e748f53e01ed6814e997061949f69682ef20302047c435bb50067306502307da3359ea3fb33396924d13f9507d162ed1201c2497068ad02143493e2aa6fc16c639087b3ea7ef09aaf43dc42c337c8023100b9f2c4140d1cb5e780c7672de4b299d313648b22fba19d70066221c97e54b305c51aca9a4573be10ab33f2a597ce59b60302047c435bb5006830660231008b36cc24d9959b3b2cef9cf140ef36e1b370ee9f7084a7dee815c35a841d6075baa1fc02a8d66d9f44bc80aff5ea91cc023100d6400d6dc8bc19e63a5484f442fd335fa78f929220e808eb5c28b9aeaa8c50876374edf2c6ec1cdfbab66d2ac6820a1c0302047c435bb50067306502304c4bc47889c8ee7abec8b6c5d5d8b9a34f6225643741462c569f7a503c64db08ce23c4f857d14fc40a99a191a4ef9c7f023100fbea92c22497ad408215dd59bc86a5c5085931971aac3662b9946a5beae68757e26239d7f2fa0736b09f9e282ff158660302047c435bb5006730650231009f9d539002f95ec5e73a30714398f2a965e7f8cee95a3b8c9c47288f491fba235ac7db4135c727b6779175762fa8eecc02306dc508bd7670bdda82b879428a978824f9b3e4c1465070f50882936903a6a3b68f77666d065e041614335f51274691e00302047c435bb5006730650231009128a7d0f81f57d2f1000c6d10296191b6ed5e5a59e675cf2085314db95eacd796b4ed8f36ca6715fdf32889a8a2365702306cb532b33ca2c3b1485e599929982faf33471cf2b51dd6089552eddf3bd804998a9a9a3da6851018463356430243622b0302047c435bb5006730650230224d470a73f0c334bd5715617f6da55be02d78099437155edb7ff66dabf7cb98f909e1a761eb7c1f538b48dcd81ed3c4023100ceec96e532a9023e9419f2879db7097bbdc0b78934719ee3e0bed6d302a979160f1a534bfd14fb02ac7eeb1a02c60bb90302047c435bb5006630640230329c17e9f716b812a18c52a32e7e6408a262c541fd40a1eec1f40e10b7070da2ba29a3a572a2b3e0ba6585a303b2ff6a02302de622fccd1331203eed8330ed6ea409a08f998ceb602d2d1fa978d094ad4192f858c23d9a01ce82343042c1cf6a07650302047c435bb500683066023100fe2243991e781b51ea1f917e39e654c87fbb09e9ceaf85653e26a9f8129fb6bf04519a28f0f8dddfc8778fcd1cbc2e24023100a7fc6c15868b7225ee7b02d00d25103aec8e01dc7ad92775ee0f1a3814278eb5938f6892897ec11817ae1a4b1d3c9b950302047c435bb500683066023100b3c03e7b34eb92a32deac42fc35b724d52ca4371fd89dc21bb4575205a441cec8b0b16b5bfdc52a449deea699e9a599d023100d170e1d4a8822253e656ce64cd3bb6352a206c9d51d29fdbaf31f9d4842ff96603272c316f9b8d7d36f515a9c5f646bd0302047c435bb50068306602310090ffd38744ec87c95c197b0e982b2aa21098c7dae3338b42dd08e2ad32865e3ffddc6e14aeb979eeb084395a34f18900023100cf7349e8dc10456e4adf9059149e077abe52f00fd6b5f56c08460db48e9817735576b9596a40f94b05aeb7aa98d66b370302047c435bb50066306402305b902b5602155284d204b5e1c8600228a03cb4639c722c621fa59706e31848bd68ec8ee28242b48f6be7de9cb3a1241c0230189c7a1ea3142654fe6be5036d19ee3137c06fb48d674f5b991969cf2a9165a798b05b0d842d45b4d4ae663bd4225ce00302047c435bb50067306502303220e2c53d14055fd2c2c74c989fb930ae3ea80e0e4ba48df84ec262dbedd7f94364fb1e55b5a02d7dc0f225c30ba56c023100da42e6142383aff8061dfac09d8dca5b2e76f6cb8069de93c7e3b8600087c442d281a036e2e7799b51ca92f87c94254b0302047c435bb50067306502303a680b9a53f9a9e7aa64292d0fc8e8b7153dac5e702701352cd74252c86fcc535b7eda38588509f15948e986ed226b0f023100bc8c8ae6e83ff7761cd350e4ae00ad33d516f8c082617851497afb63a10563a21cd38cd368aacabe8e346cb0c8597c480302047c435bb50067306502304eeef9d6a63a516a89d009f307b023a83252d1a424aa731ab25acca7480bde7bc67a8f5e37b281d1f339991360fbd5ae023100d3cc51927e066576b30443c02a7b41bc9f05be2c0d3c5e7350422760dcfde27ffffb6377199989c4baececd06997da370302047c435bb50067306502300f2cd01dec221af610faa9cc6eaea0803c4d6bf1a47d0ccd50b0608159e50821c5c4189250bb0d4fc041e7f69a973972023100bde1ce477bbae92dd0c947f048876908ff995008fe19718f80084b7226ce4c44921dedb5b850cdc7ea8dbc31283c54520302047c435bb50066306402307acfa8cda6eb4d22597900685e47c0175ae298a78b92482a209a360e69a99b5b1f8a7b16bec0e834729f815bfeec9976023049582c74e3feb30a429ee69fa4fda2c8a66b701a033bbafe67093843fe7032373c4757ad3216e759649d20edfa11e67d0302047c435bb5006730650230084689afd6b87218c6e1f8c3c7a70b0c68c3f069d5af897777e5c8aa4382ec4aa9a8c8f77bcf767655d38cc8500d14c3023100cfac91ac1d38cc125bb834ca029882e6da07b9e257d5250b6765074b4e3c1109c92dcdfac1bffaf3bdfddea6f1c36d200302047c435bb500673065023100803a7884dae0853264901e35b2f6b9d5c5d8cd409dabd79e042758db6b66af58a4897d3acc6bf124bd433ad949bafa86023075b3b5e421f093aa7ef54cf2b1db5bea8378411ff71c6ea7eb05da981cccdef59afd9aaf77c99debb9a51dbb86ee591e0302047c435bb5006830660231008bb15691feb845d6c471d8dab0b13955da8a80185d1d8d384ccda249b27faa1d806a139229e3bf23758f0a50d517476d023100af268fa9e7169276baf205b8c8b8a33f1e93f87c5a9663cbdb27d22edc863ed4d20e280e07945d31499989e13317ab990302047c435bb5006730650231008c02c8635c544b35b14b215ca33b8aa7b28f4f12b4590d80e072d6ed07000b53909a993ebec73169d69677525431c1e5023034b1aaa4cf55ae6c9090fb2a5e8184ffe20590656eeef3a46f9fb0b5fffe55e006f999e93461b100e66b211af7f8a4c50302047c435bb500663064023077ddfa10ab1654a4cdddb30408225bbfe21ca63494ed453a509dcce04c5d60842276d7c531916a8f7615db93e1c59bf602306ae7b906c4afd87696b63708fe114bcefbc3c50bf55baa74d901f67758cd5d37bf9e7de8d9ce975049c76c9839dc8abf0302047c435bb50066306402300a1e0f41f2aefe959bccee2df4f55c095a7dfaa8f5b2e31ec73370801b585e2a9b685b4af4ce4dd9bef0d4c9a42e6f6102301e6039763507ca91aa149499ba0d62a28085d7206a9656b09464a39a84c4357becbdfd338892a7a189be863857d086c10302047c435bb500683066023100c5b7da6b0d40d9de5d1ffc1d93c7446346f4bbac280e97706317b0e19cc4f4642db7344bd73474ed9347e07a441220c10231008a648bb6021f6e1023e4c1e5ea27397237f290b9704c4f7e2091cb919ffb841be6062692c2871e3ebc470742e2eb31e80302047c435bb500683066023100c63d1150bea6851aa5699a7504fdf4f028f7d70f14c4ea0467c3d19183ac23a4fd61d3cbf29c0cf30117cd4661a3921b0231008e6e00e086f45b032feb2681fee0141163f401e794693a5ef8b00e7a15c1bf2777d7f28b015ff85e291f6109fe4658710302047c435bb500663064023023eb7bcb4356718615b002c696d678336bf066c038c1941e829c25ef8b61a82ac0b380329639f393de3cc3afe4f81000023021795a92b1c056f1b1010e783293850352dcff2ffc236dd1202c290a992f2bf17aa4adc3edb3cb8639b5101832555f2e0302047c435bb5006630640230273dfaeaaad8fb029ab976557c86655f5d66d0b26a31779fba66ca06f6aae429748312253630762bc5825a168396a7f00230205a66bf61c115f63c290b2687f1814a6e8cdb37d19d6d97727160e7bc79985573dfcd8cf23ce9b490185eb4b18216ab0302047c435bb500663064023058f69c866414e18e516b99c1ea016a8911f2d09fbac01a7ee377feca853b2fa306520f84ba655351dbc0ed98a39d18e5023030fb4a4b96abc20a40593a5e0ddf2f6b7f7a66aba554667def31f5125acb54175a50dbfe16c560414e2ebe327ceba8e10302047c435bb500683066023100ef27e2844b4612d64c1786a3b2c86f9c7345d3134f684beae491004dd591662cafae6a6972249ce600456e276a7b9193023100c67f23a0dad81e8cde941d9bf5b59074abaf83e1e95b6e09d8cb36f0da8c5963d0cda63b6d826ed347287f27b91828190302047c435bb5006830660231009a0bb3c0af694dcac5f0f0cb37c38366ec4d86fa2b89e96162ebcb20695677f3d66491878790afed53d5cd03083b825b023100f6560bd421c594c87e97fb80b9c715d39c16152ddda368191cf043da73d1a48b58dcf77ccd3b636898ed25da0930698e0302047c435bb50067306502303775c5f6a3a31f46735b5e2db50089b99fb21a98cb743f45fcfab64b1931de86604092ad64deb8133894337e15a2f3b9023100e0220be0aadf5d8135ca161fbf74b435b9c4cc4dfc123dd4498e87b5560e95148fe517af25bf141c07201585793b32dc0302047c435bb50067306502303e671972d0a75ba7790433bda054037aa49970b3c186c4a10c27c5de3e760abca34331951e5b40a95a51806ad5f83655023100ebf26ddf36280e3a00dea981adf09ec6df10d3c0744c524113d79585761183cd93327cee8fa454076305bd75b0998ed60302047c435bb500673065023100ac001f00765a86c612d43e01c17288580aeb3181f33432319ae150af5515f0cc98acc85b40d8c57561f5469745704517023041a9e630bd03ece7fbabafa20512283428ae50b18bf6f8522af0c62b80104942e28ea36ebd2316b836448d41e9156f6b0302047c435bb5006730650230715cb3b68c7c5e6515ad76353dbca7ef42cfe510deb1d4d2a48d5aa352a9cda794dc17dd3ded9136fc25c70f30f35a87023100fbf92709f03b3c12b88bfab0bb845f08e405dd0e2d18dcd1840f30afe47d0c0573f51d9e9ee4031e81cc70352caa5f910302047c435bb5006630640230724afe35296110e6b63e725f539759f4f9c95857a8d30a18f8cae7800f33c5471d162263d25c9f78c8d3a651158144400230290c8a96169b60548ad90ef70e7c78f4094a9044485e3704905dfb211ae3415f235308ec3e9ecac52fab3a7c8f36e4f10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f7a705bc9b16b48ede763d88620c142e864a37bafe87dda6ebd3d65c63c5f94606a44135e7d6e4bc276b35432c4b4ba802302d2b8a0a30641bc057a0848f32e9c9b02b8238b8917fb1694d829ff26284792ddec34ed093bfcd13fc439c7623b050ff0302047c435bb500683066023100f05098afa5c05efeb9dc90517daa8547332fac53e3a377c5d1c9590076baa6a51d178dd9ad91be41f7cba9e49226714b023100f98d2485a05b073e9c0b79828d13e6a0cb72bcad194412e17bbb9c007e82a9d6abdf5f1eae190b8ac2c14b0475b206890302047c435bb50067306502306bf1f70b3b9d8c32aaa24b0152747c0993a642c4ba9fd5aea96340c1374dc29d1d8433a59c12ce9de5835a4e1e5799e302310083b72dc9bcee9cbb81dcce0ee2f5b198fa4298b736406e93abcfdd512cda3823ebc55e2ccf3f34b52bf29c7b4d00a4670302047c435bb500683066023100cf2ede399ff43a3be9aed4984b08d2114350303553d7999f5b9d4564e0efe4a6ee41d1ae5fa5a8af88b1d30c656d2ad5023100dde1bc1003071b9adc47786a8f6a07749ab24ff296d460f8530111a352a6d86b3f17fac03aeda1710ad2e7b9742e6fd00302047c435bb5006830660231008f6fa9fff26b58280e87d6916f239d2d9268d587de4264959451c2eae36e8b0afdbf405e0e3e58a22357522d3f02ea760231009fd9f187e36fa79f178442ea728c44ed3d6f03844bcec8ad282b16dae5b3bb619db223d7a9dfda524b3114bcee7662880302047c435bb50066306402304aa923d60a078fd940346c57ac66b48556c526903bab51abb35ed35b1ae5ad15e5f72d70fabb81d6274dea729706533b02306af9a75ce4d38daedfc66b09b37775b2c2ed1644ef58564d145345960118d3fb775ce92b8744f3397af5c7b70f356bf20302047c435bb5006730650230660d7adad73892f66f49713020fd37aa9d8e235f5871d42414c311f3ba0ffba72744b6609bdb9fbe3cb3471fa24075580231008d5c3ce50fa3e24d94dce47dc41e2bde0c34864a218324ec2f108b22b1229ca9fad8e38f115c44b6ecf652abbc95b67f0302047c435bb5006830660231008c432c5d1ac274d0bd94c4aa6a1eeb3ffec52c4c5f8d775f7355f8ce14e1f91e6392105476bd754231361981bc756a42023100c3010bf47fd28b3c81280106d08d53128147a64c19c57932d588d2bc42a5c93266cb43844b4c3077ac744280bf71ca8c0302047c435bb50067306502301ede791fcb9fc6b93c8a3c1eec2b8f70d50b346de7bdc1401bc6adcba85b7eba8a18bc98e2fc64de1ee9be27037c235e023100947be6778f21cfd90f1136064072f37d8330a40657992c54242c09154f7e0e193f9f3fc9f89c6868d7e9b0ddd6376efd0302047c435bb500663064023029ef59dc60eed3e13763516add18d07153a5a8d0f0d7cae91d6b4d2efe221a365b1cfe3295689556c50003a1fe6f65a20230163cb3a080d00b45c594dc987020f80fd60c010b0374ea3056d8bc5bcfd4066ac1971d52c1c83fd8247197365df832060302047c435bb500663064023001a26ae9d81e79aaa36df297f7f0ce92d1a8fe98f193298b922dbef191fe723d5803101148a8e3c3d1aa37cbd1e853340230118bdd7e51e22a6ea18785cc76713fa06466034059d9b5ae24da4510f334c4f5c5b34c9e2a65bee89ad992fa78502de90302047c435bb5006730650230323d070b444caf3e2aae0ebf5d1a55b68de5c717217931d4afff6271bfaa2b0a80afabbeeca392e4d5958bfde36b302f023100cf250136b3aa531051adf80a34e4f528161d9d2ad448dbfb6b7c027de1ef57872ae681cef8d9961adce2ee24f022a8a30302047c435bb5006730650230710d033ea20bdaa7b8b6786fd9ef1807381e9b16e2407e2c3d50427937756b3f08b7a8a22210007bfd0e49918c3c415a023100e777e939495e4430bbe1aebec76b0a83fedb93948f504c562192e86ce4f4c5702e01df28d5ed71a115ce04e3ea39d2610302047c435bb500683066023100b4cf4101d28259a5f4723c3dfe437b41a8854f88bfd84409b86076f0d5b250d78a7eccbe5488430539012c62313e2e43023100fb940f7935f48be323103d0ab2b315e7f3debabe9e7493ff4c4d1088bf0c5660972c0ea0331ededfba5d2a7793cc22160302047c435bb5006730650231009948fc44ba0019b79591a06241d95b8af4a74a2751ebc913e96854ece5846e21bd4a51b0d7c8d87f568fb6f7266a93dc02305d4ee433b1630d1abad9d30d1e7a00ee15e5e31c35d1e93ad7761dba2621701f136e8b06b55e69049cbb639bcb4f44300302047c435bb500673065023037bb3db01bcb398daa66447c2f75d9ae4d742d88958e79a471e00d0129fafd0da97f426a8a775ff6f32466c624b934730231008bd16d4df5289b204e65fa42f9ff62e0b02965fd5c30d83ad69d7f356e35623439552ef885199c1704e92b94840a69f40302047c435bb500673065023100fe96b84bd8f1f9b0a67dede12e9b22c81eeae265ccc33c732a7b9fe59c82631581821f84a2dfb1fbab6250192f462a4e023053db4367d525a2a42cdab6a3ef2d336bf8e218e03067eb60daaa3aee64dd2d31577b49a3e3c0fe8eedf8b4aca417ed990302047c435bb50067306502300897c7d614331bd7e5b9e7d5e2ed32770f51fe3b00d6ec27bb149b1fec2e331cff29d23e91fb8a71ed2beb835a51593a023100c2833479a61dfa9efc154c561c57baf0982de4dbcc7270e548d88eea13d42fef5930fbfc744857f631b1d46a7c013b540302047c435bb500683066023100e6a7d2a8bbb4baa0de80bd672198f35be1a11f0c5aa112e49099de25cc21a28f3b9929bd3b6e71d0fd6c7ae13c9ee95f023100cf738c569654fc24c5589f1a57df64042059acde630071d4623c7aab0965f52c90df52e1483181bfeb3dc9ec92d724eb0302047c435bb50066306402300ecb6caf7d2be6bdc1915b3cb7d8d2d68ea3391a523207ef0118398365c5f8f5aee885cfcd18f53c392644f4182e4cd8023076b184001c4fe2749a527c44cb192a8e3a25e5abf73d014c0071b50d5b6ccd62c68ae4c9928738f682f054bea57f23060302047c435bb5006630640230291d97e8880a8dc529ed7ac9fd9f9e4e1bc3bf311c0b12bc80196ea043f377168772970ea4f9bb6d7b4537631b8292e802307fd6de7806f34f73f7f344f8102597052bd289929ddb455f55ce08719b696b589b0199da2972c6c047f258d804aceaa10302047c435bb5006730650230019bdb70e69f09e7f54a31946d1d068afc3cfd835176ee85a58c1f2a26849ba244a239af00befc8bfd2ead034f280628023100a0161b5f38998bf5ecb67e4eba6092d0bde8ced2fd955d29c12efb140d38d09c4789837d42188b8d8a910755a625225c0302047c435bb50067306502300801b6383b240162b3dd3c499678500e1374af2d7a5b9a4bfed1d5d2265cf90e16e9a9b94a62771a7a5323f0570ec31c023100a3917ab19a0dc85615b23fe2b06be725022a171426754b7c55042863b2d4e17add295d07531bb74ea12203dbcf49bf8d0302047c435bb5006830660231009ce81566c308ed3bc392ab39d17764f6bf970bcc000c5ede84713fcc38a33679412ae01417950959b3ad06dcd0d48a61023100d1e3dcec25186ec5dd63935ef6fe9f111ee935ea6dc3ea2eeacea881f9a14f067fd5e7b955a6594876289e7bfd4010570302047c435bb500683066023100f358035b9ecc53152146c25d7eb2657da9320af16437953f461fe5d8b4af1fb4b9e15e3e6c93ac3682d7c84ac6128ae3023100976ccef131664930d56a7b93bb6895faf5b7832c90791b1cbf3f90f82f8d57059fa9754d1b6d29a3acee9c8dbdc0a43b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023068223364afc22f70c7d38504ba942d42bb2ef32cb36a93f94d4e2d1a1035939639a416151abd3cbef6d5b31402a96bd702306c20ce43c6a37804de0b8bbad80100cc27161f7b09375adfaea626566f8a8cbd2db08d1676f06bf8b32861089862ceaf0302047c435bb500673065023100ab58375458b04b45dc76d91ca2c9be592d79458d3414d216e94622f152162ce7c67d2c24dd79350cfc1c46e47fa2e08802301a2d143c0b01fa2369cb3c391a0a64388483561ea137575146016194f5f842691e7a0085a07d3d7d228652af1c272ea90302047c435bb50067306502303396a247cc6f4b5f06fa4f30da8216861c05bf7956e4ee67aceb69f1dd5d3a65bb40d08f774dda99c18ff5fd44b6e2b2023100f69b2b317b80b966604f85d98142d5433c658f79846f014e3ca0221b186698ae2c8f9577db3e378997a2aa6112c4b28e0302047c435bb500673065023100ce47f15942e0fcea9a93272e77449c9aa95f85608614e6539a35d031950a373ad0a40af93161d83c47fa6c5a75e6d91002301d13d21d017267b9332ddea0e4351e9bbe44fe61bff520ef86f4963fefb331a016326149a6f48d1d0bd29303de6c698b0302047c435bb5006830660231009ad46c1eb0a078b0d1c725020eacfac1457d0be65a380d947f21183eb76ed5276c34fd1ee97cf1ef1e6443b1e978a6450231009746edd749188ef77f5ee3e3bd494f777b79576ccc82514befdc9a7dee6b8ec805c87be6885cf2489a750266c3f86a850302047c435bb50067306502301367a97bb43c2b900b3022a3110bc31d19a5f223eec014a3367080fcad8a23fcf92c958f6d9692034c235c99f213d5be0231008d7f6cfb7362c202a3c188e28da59878bc593764412c9f659c51cf69ad4d59f5673d189391a971977c84602d5bbdbf470302047c435bb50066306402300bea79a804d3e4eff2e32b92f18854624117e7a84568b2fb319991dd73dc7ad880be1023c07408d72840492c3dfa4c4e02304a227bd218d2b780d2052d689cd01a1e389e7615cbf88eddf8fd8e7ca48004e56fcb9d27f4bae520b88a2a9107f7a52e0302047c435bb50067306502303325412659c4cb1689be8785347e3b0d346e757f44a8e1035846a3a59d8e6f371871747667af81f59f901a63a0642ccf023100f8a98a4381b64582bf3f97d46aa4124afb36119b4314b7dd8bb3a0232b863b4afdf5695b748df06636ab19e9d8189f340302047c435bb500673065023043fbfbd53b6eb3cd5759b1573e27370f5ba16947994b5dbd413b63d4af282359bb073686c801c21f54ea2bef2db172c80231009c9c571018d423aa56624154d58bed413586dd6e6575b69c8f147e2556aada14b418095d55163caf61fa0eb266627e070302047c435bb500673065023071acf12798fa1fbd81fb1a07060f12e85cbc81d15fb78bbc73f91bf423fb19615589befaafcd1fbe9035c8ec73ccd867023100ffe86aa812e1ef3f69b6910b52c07b14d16724cf7e650c92a0a32a76eab6351efc5e34b4e768b584e39641be9f6ed5f60302047c435bb500673065023100fe96c09e031da446476fbb2c1ae2b08599de42fb91abbd086f438bcb1cecebd41bf4f2cc20b33a2a798fb6f9b27f232002302190cdf3c794f868f34a52e6d4b8142859c61c88eeff5f181ce56ae903e716f6e43f79606231b5b5ae020c7efc59b46c0302047c435bb500673065023100e444fe8a20586bef828aaeeb46fb6bb38d85da56b53bd3b3d198cf62339cd1e150579d30193fa12ce1302ce521f104ee023005fb4e6c94083ed847888e5814a4264d5e493db2dfefd445b924baf67d06d46af53b4691859e90dbd4d21540a60ca5e70302047c435bb500673065023100c3babc1ec08768403d456e24b467f8b1fca5c1ef34738c0056e9ee4e9ea3bed7e700ba7f95a4b2d6cd6ab1f4e8104a2b02300366e746c72f70dc704ffaf891deae2359bce559b1d08ab41bf201d43250aacb7d877812faaf04b1532c6666b45a3c460302047c435bb500673065023100a5cb176663f80ed833ab1d3c94f88e6c748094d849b28c2ed182f301577f6dd5272d2c4607318f7a9001d1d8e585e86202306424be35f1b114178ebb8331fc57bc49427089c0d1122a8f711afc3ae56358063e191403f791c3f1aa2bbb8bebfaf2b60302047c435bb500673065023100db504ee7866167240292694f164b1ea3a97ec5d29a0eb1ae1e6195376df912fdfc14287b5bcbc16d48b83598cf44c16d023070844d32c0490526f48cd0cde4b5059afeead995872a9e54eda60534c955e848d9109e99252f79855b8fecdf01cea8c90302047c435bb500673065023065b49e32629ec4a8bc006c4db3eb9f663b203ed969dcde7248ef487c037c81162b5dddee27b59560b3792117ee1391ba023100b1324688f8c180b648f818975f5c9f1e9df0db0c6fa3367a1d41cfcca893f97095de1abe88142f9bcb8c13bf9374a52c0302047c435bb50066306402305742ae7cd63029d14ed0b2d9524b7bc4f3863af01e817c46dcbffd4c308c10338d680976dface3593f5f72404ac828bd02305cac06a8a9a20f27ff684d83cce6ddcb2c077027f8c0740eade169ca2769fa865b0ac90eb90bfa7541f0f2ec900771c90302047c435bb5006630640230386d5e7dcffc5b3e3be122e8f2ab2509b3075e9ee9b52c442c8d12d00770c4fecad98b76c2ff523b87c25fa302f7abfc02307cc5d304e54a3edc7f0a5f5e6cd4f13b087c1259de5ddd9574fae67e215b18e3748c0ebba6e4283f7cb10c8b4ef0b4660302047c435bb50067306502302c6b826b9b3987ce398924b207df6433fd07e3e269ee89cce17d8fd35f627e9cfd5f5a916389567605f2bc749dfb037d023100f1f70a0cfc39c790dcf0e2bb1a12d9f4cc16b2d42b2349987812a1262dc67b1db6cabe63cfda2acfd45e6712c40a97470302047c435bb50067306502300b040ce95bd0616d5dfbe61c868f45fcbffedab4f6f4ce61c940900b2d0a5af399faa682a6e8d41c2d16542acfdb1180023100f1aca68eaf3f946bf62cbe1ed0f2cb780a60398a45dbe8eb3f05206681a12055861eede7aba0271c0be9e8958fd057eb0302047c435bb500673065023100deaffca07177b8dd5801b705d4d900b4c7fed1150e67301ff3497ccafc33b20906afe9c871512f71833b45511afaf0960230348133d3d416d92467f4f73c93ded5ff65f5a85afffaaa826d2b22eeed85a29a56df2bcc48db77853bea101fff81552b0302047c435bb5006730650230338481c68a391a236d868a53d7aef424c248722300021f623d40fcb672bb2b5ea4f856819f1fedb4e9665b0b465e04e3023100baefaff2a0fa0f23fe01ebfaff14accca5dd0269f04c680e03286bd7829116419bddd8c0451fee5662a405402b78fdcd0302047c435bb5006730650230030f7d265d2fc8884a1ec0e48b0d456fb57d476764f9eee09da266618e5aa43b2f6b5bdf5740fc20292e6326490938e7023100a8af3a3c7b479a24b079c4e52f19f862b230e074b41e7cb91d1205a30e5930d997eaf50ee7d27c81c86d79eb93b569760302047c435bb500683066023100e0d2b63a4f7812e11ca38388e61d078ad0538cbbf24d9e1ac12ded0c8f04e86fd6d1ab1b22232f841c359429c3c38a2f023100d760148cab6cd68fbeb12c6b3e51cce634ceb1f52e20887bfce782ae10da8d4367a3b1553979c4c120cea2f744248e260302047c435bb50067306502301ca29efa4deebf9c3d177c0432726ed6a979f4e4db83daa4dc2ae2b805aa5cab8ae3975acc7e87d1e4500b321c395450023100b044cd1aa5f53a2ec130a2ef96c2e812e3496ab1c74a59fe4f7952f01828ac1627b9ff595fd54990872802ec2f2dd0f40302047c435bb500683066023100cbdb273b8a46c5de5a648de10c0fbb749e9892a6fab4bfb20f052f8f1dfef7cea7b5d4e994e3ebb48f60a24b70b58704023100c081e7e3643943d777df2fc9e56355a8a7d42f9ea64e40a087bdf46abcdc2172ada7c20f1b94362ddbb50887abfc93880302047c435bb500673065023100c4fa6c8d57027148002aac23ea12c84b7556bb5a2140ee94b1ef99a794f6b1fa66095ea0e767a1be3d062ef48b83b0be02306dfa2e0da0512b4e461876b063d09cb4116f8ddea048787e089bfd2d430e7c35e9afa3eac2a37ae1c261ef603e09ef6c0302047c435bb50067306502301a6d7fbba8912559d329f25f2fceb76944f71f31727a8c1ada18a6a7ec84eaa5f44e01563229760b66d50d032df2e3c00231009cea6229989373b1b96705cde7f386a2be15238b2273d1d5f3ede6961eed6f4b87b7736eb757a9a7f03a61124c8ecced0302047c435bb50066306402303a39da0321ecb8bbf733b2c32f37e49654d9dd68399ff8d121aab34314f0afe7c21161b9ad0490ec3e6c41d6244d2c53023032018a28d96d3f477dc62f181f9f4020251491814ae80c39a29f526c7f2c529af43351d316c864a1a6f84b50f3ea3f360302047c435bb500683066023100e7b6fa0fce0be05ffdded3e8673049eff35115aac30f25ce8b42ec79e4c0c4f37e8c9e7717aac99af3f7d141eef4ee90023100bb43d694a62fbb4794d40dfeeb7d144e305dd68d837425d1a45dc51c93430fa091dab2cbe80647f840da8614a49343040302047c435bb500673065023100d2b4a3487bd7955fbb8865262f655438a17cdb361e0bbd98e969f7ddd994aa3f78be9e6f4f4515125f20565686b4977b023059308f27079da5dd1ed214a876662c7fb2a5b7598b265646b594432dbc2c18a6263999396af68953473c2b10eafe3d7e0302047c435bb5006830660231008b7403edf0b6bb8b5f6e5f3f46b946e856544af2e3529b0963adc3784ae66fbd3c313730cd835d955a06d8cb2ae681f2023100ad23be6767b946dc03a90983aab9f6a3fbcb5ff0d233688dced7d7151fafe8aae0bbe272054754cbafc76d313cb0296b0302047c435bb500673065023100862aca18eb12e4350286bf67eb4b004ecfbf2822ead42118865d98453b7356779a4487ce7ab68fa670de91a0fa610090023033723591984a35d96a69359f18d94bc8fe25b78152e48d55ea332e058708009723be7bbaa69fccd46fd7d9c16dfcfbbf0302047c435bb500673065023014ae7f5cfa89725951fa069b3a48a6c6c5dcd973cacd6d15811fe000b3a7a50681ca8563a0ab52924fbbd6d867c73f9d023100baeb9a73390ed74eeac19fc1c4e3554551e54dcf3310f02ee4d8503d68d4e8323290c20b3c8b02d00ca4e8a9cf544d420302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100cfa8f3cf2eacee9ec99edbdda31cc4da8463e3221c12d130aea98744dd7f46c3a83d9b1cc9c4c804fe4d182fdec412350231009397cd9fbd506b9c590778fa50f473593042978bcf1c3a4b183c7a2b44699ac9b08d6b657892b6659362e033368bfb200302047c435bb500673065023100fbcb9e7ed37fac9c6624ac1d28ee40131277b4249d772180037284f5705983834817064d49751db0a2e4ef6a4ee975080230036497b04cc6899e92318ff9dcbabe46dec2d8cd83209ad69597e265b9c2614332c9bed7c5bd35b7bb5ec83bc06cb99b0302047c435bb5006730650230344dc5c0f378b664fc22a8e6302c58a63cb99961e766199f0ec376adf01845a4e4bcfb20cca3059f4df4bb3f9f036dfc023100c85a546cc0c3e410ddb25daa41601a76df4dc6e72cadda76920f128a1b466c5d3feba3322842304b839ded0c778161410302047c435bb50067306502306c2fb79c8fa3b02ffe0989e91d0d8368ff0c065b2a3d10e72950abe71fa0a8828e82faa3636fe47b4b93348be80665a1023100a24699c59b618ca6d1a567dac06f160d1354cfaad065238935d6ca22549e9ae18300056dccaa2cfdac0b89e83dba85630302047c435bb5006630640230049decff378e4a45fdb8114b4b7f80ee7f40b2b63e6d71e7dbfac9f3a487ef4fad2976d1ab08cb1817b06642aea5a37a02302e2d98e4c404849f959cd7ed40f8dd67e3ca67fc54b1c859476b7a27f215bb21110abd8a563513233daf5ba09f33c1b20302047c435bb50068306602310096b9d42cc500676586531641119b278d46f84a39a8d04bc389d3f7cceecab2a3fbcf1ea092d4449c4bd6ffa05b62fc51023100ea9122fa2b3d273ede72c1cf360c36e327ddfda149913b47d775bb1ee83584b65dc02394e8cee83c5c7ce9d313a450950302047c435bb500663064023068d40fcfc6b30144a9921d8426221be372f0ef7ab497e3e4e5082b13d81f6d6d0478eccb3aedebde2cb1cd8e0d39a43102302486507de9616b3dea99bfd3f39cec40d23ea50ac5ad45c3bfba2d104c3e8f6fcb2ac540b4ee63dbbe9d147ce2b977b90302047c435bb500683066023100898118f95d88e8e5d3f986be637c702b8e51e92a283d6e0fa87a615a0e2d193db1680be9a634c22677cc060ffeee1f8f023100954eccfb13c1b9d46078580e6975d017d986aba1173575cd1d05407841b75eb0eaca2b5fc1553541da24695d3c19a55c0302047c435bb50067306502310097dcb0252d2c413be7c9d956345ebe459c6857cce5812c4dc973b4ac017e976d6c18d8c7e4d96fb272d93bc61c7b292602300ce77ba2bcca559a04f6ff9078743014768daea45cd08a4923081d8d0da57adfecfdead4c6b6adc59cdd89027487ca790302047c435bb500673065023100f5c60abf46d1425838690921ff9307c658b6060651418304c0b983fb79ff49d5fecdced13ec23a7bfadb33cf1e7e462602307e6b3bd8ed2a9470be0b47d1ddb738a55f6bd0367a35631e25e769cd7e4d8f3b6f2c5850ca05ef339ba54e297dcf36d40302047c435bb500663064023026aee88a106e7cea20e125ca682a6f50b2f2a58639a5f1a5c738cb18937f865e3a69f5068d04b9f0c6d418b7e6cc605d02300421e4813237afebcea739e05e8deb20ac6edd3d3c0d7718738681db4d41b9174f1af1a17746607bf9d48786723058080302047c435bb500663064023054ebbb04a37385a2e1b223d941d71601f11e3213f122eeb7018b2d9a516bed05b14c10c02f361c76d14ee3a738a32e29023042d889232b6f40e83ffa91fbffedfdb40dca2c2347fed454b9f02ab60f7cd3b1e5b3738800406eec452bab0e852370f30302047c435bb50066306402300cb89865bb5b27b9fd3b2bccc37a9dc9377f70187ddd4ae4abb7a723287f004631f5f509c6fb7775eeb38027670782da023018e4fb3f737d8580663478f9bb1ef512bb84d289de212ef28d96099e8c46910a76d0b7b96e66943e254bd671b007fc7a0302047c435bb5006630640230637b9323559a4ce116632c5080361361765118fb524fed8405cd211b80755c329789b04ec4a54b9c2a8d6c346d68de37023047cfb53e12e1db80ab750290989e312fd588dc6a47c2887933db6092fe4e531dc2945c1354a27c6b8bc543098d3234e60302047c435bb500673065023100e5bda4e5fa7cd2b6cdff2d93e1c935c9451b786a69e2a046dfa3abb824233598bdbfc466aa69f9404f785b7d2224c14202301ff39618b7f50490218f4fbda8faf640201ffa691d35e30f19c6a02dbfb78b1a581389d8cfe1a0c447f95ab879ac8b720302047c435bb500673065023100be233015304f53e8fcd1b73504dc07cad146f8950a49432cd6b14f5e9ef915419c67a982645ce60c3860c5e8e57d41a60230385c78786382e837618c78dc86f61e41a2f749c37d488fa59ffe222f66e2172a4ddaa9fc4c93c7529df7dfbc285184360302047c435bb50066306402303959481819349a307ef205f3e1f5f42e2372c8c25865a712e8e394541f8f87c34f95602b68e2eb137da4aa7bdc32485802307f99303cfc2971c08e9f412a2e09d0bdaf10cb1c187f33f5aeb7e460ca9244c4a7d664f20316291c6498bb8a23c2283f0302047c435bb500683066023100ec5fc5802938eac404414d5d59a53ed6a367cec5562c0153a840cde37e71eabdf45124ae620518ca04483a4ce0456935023100c333faa1f733497f258d96d44441a9a273838c503762f044ff5c5346233a796683de6f0d8811b619a5fb43e045b691850302047c435bb500673065023100ceef1e9aedf54ec9b70e1dbc668199ff91df04dd71cde7db54f035f0a791b171449005e1b4c579eb3c4d25d9a6259b960230372ccd4d2c35bdb9f73e33a3a6dc63ae09fc2e48b81c857a68e6103e06cf9153063771d7c85b8e82acd62b6a3b1527c60302047c435bb50067306502304e6a024af4cbde453b3ce43ee4c3656a9bcb1764a01e81e30fca448da3b0b2c8922a119356dcf1c8e2a40f65846169b3023100b16deb93728af24b41201254e961291a0f55d728bcfa51d0615e2d23c0d2aede0b5df0745a33674716de025fb57043df0302047c435bb500683066023100a5a6df4da8f1514712b1a78fb02488c4f9b8337bcbca1befa58efedd3720ca88d144be88aa92d2329f314ad5125bb470023100f5985f8b3e4c76aa959f5fec0f095ae39145b0d9b2ec934dcb9ebb87addadced89b8e2d15b207b92e653e7ca39778a070302047c435bb500673065023100ac15d019f9cb4a8910c02ad6b43e363e6ab761f0183e6a0a1495e1b0d7948632bfcdbe3de2a3448136813958a72835b9023064468ec165f21f0be4c4bd4df2d1845656a23bcaf3ee762a06ea8357e6b42d29611b3366dfa123d82d13a83b7d7e68880302047c435bb50067306502303deb78bd0457a76fa65b00b75de8c8b3a4e0d31d50f8b5720c1648a3800be1604fce2d2ed972765e7a9c1401bf412a63023100d65db0883e3306ef3ba7e5fee11729d325dfd04ef29844d9b500b9777e7c7fd3d0b3ece81dc4544b40b1119c40cc6eea0302047c435bb500683066023100d452c762d5069dd650b700088ba842399ee628fdb1a9180a6cb1e361dd2a306a730940a46a66dc07d9a0a319b8674ac9023100e59c11cda069aa1a8c8bb83c7a3040067289d731c1e7b9120f98cd45238d3373ceed2aec8d4d258afb1295b68bb658350302047c435bb500673065023033934241e3a0d6cb953414a93ec1f77d4e4007d4fcaae74d038e97e55b0f9e6940bfde993548700e75eba4771565e3db023100c595015e266ea3f2a947b9191da6444da8d8cf8c75403a2c80b14f13163004710f39a236bf3201ca6829ce2bfe533cc00302047c435bb500673065023064c39a0b5d87299f1afde7c0c9498cb55d8a30112506994e1320fc0a3f6699e6745cadb97dc06ace01784e0401c4447f023100f675c8c56328cb031f19f92134fe2bce35f56c69f17ec6cb7bf95f73e0141344ccf233d432aa7e24a4e4450a66dd36340302047c435bb500673065023100bee922b27fb5843204d4424967873aaed079605458ad160f55749f97869b8a6c3b37937adb48079159c50f10131ab6d20230437583001b40d581cb567ad772835f46f87dad6ab7ba15ca87ff9285ad88dfe5b67fe580e1446705865c892f56e8c3d30302047c435bb50067306502310080ada2828339d4dd7e70ca5d835d5bfaa2ed9101540182ab87819ccfb64ea07fcf7a18d468378b80d32fe8aed72afb35023019cb0d6e37eb03e38279b55417d96138b6a728ef6987125ca3b2e932f2603b84bf7837ae20baf8894becd08b88824ed50302047c435bb50066306402301a0fd449eebcf0215d430a7ca0d891346dbbd840304b19f0f2cb148856e6604715123d24a7b5b49e6852fb2c0fa17ccd02303ec746fbd9324fba7ed93834dcda0d1e640025c1b5d00aa074f879d9d41d3833fbf2cb72a92bc17f44f2e9409c58e8140302047c435bb500663064023064839ebf84bf9a90b23239b747673da786da8378531aa643a0db551199857e6b7f1ee3d549b2cc7c9403ddba847ea7af0230261404228d711d37335d9815f693a78d0e37b42592c8d413cf8926811f63bc9e8472af47c6658b3e77b59b23ca30c7750302047c435bb500683066023100e557f12920a3789e5b415c0268516b1d13b6ac4009aa90f02a541ecb6c60c67c82828e213db079f0e65076373b31dab1023100a8ad1a92e7ad433fff9f5d4f52bba2c2473db4da77e72778e094d6f012dd66f523274fce3a4ebf6fa6f6600ee6d6416f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023025b76bbe19995a46050a0e7178b58b30db9663a2abc7bdf881282d0495e1e5a7cd105b0fcac404e8eb8ccf61c3f3da22023100b10139775609ce0ea0ca0a05fb12e913d2440fb416c455fb20443acf6c61872381d48bc43d5c2a32432935430343d28e0302047c435bb500673065023100cb524e80892131f0972fff44f1e03978c9da7a5cbbc7c4389888b103dabbc6ae8e549ece8575c0bb6db156a956265113023024557a378384854a101cd9f1f3e6959da42f672cfe1668692283a9611b8ec0e18ebddb668b2ff9bc52614e214e26a2210302047c435bb5006630640230200ec56e0b7ee2e01084a0de46a497d1993a523a409aceaf0a8d89233fc360e977dfb9b2a2d84fc11c30ea2fabdfca390230705cac2fdd614c13295fbe869ad5e860cbe60b3524dfa63a36091866c97a298abb52a120b76e0dfd4166af6d3b875d530302047c435bb500683066023100dd7f43f749477d492f3b80ac7d6db09766fa3d000b6defc1447c931b7a6388ee90dcb2df30ad44cff2c15cce9f4e9c31023100b8157a49cc4c4a40a19de9d9f99c2ce60e5074a8acba8ac3413968cfc2497ec2f17b42da11f409c76488460a251566b30302047c435bb50067306502304a90cb58750a66a2e038f1457e06e4260ea94d9af742a7ee1dea0df81197310349ca2d26ddc8f35830b543dba4bf0ed4023100e1d8aa966368c736a64af80b18891fb32cd87c58663112eb5f9c66b3c3b0607f6fea2eeb95c3817c39cbb152e78b7ad70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e5a344ad7add25a705025f661bf99b666260448a549b232851db0deadba168b320c7614fc98959ad1f8b307a126f6fda0230199629fe4c24b94f17948e270a0f8f9c5d304ffc12d052a65245e98fb1d31d937eeb528f195d05e4454ed98b003241380302047c435bb500673065023100dd788e3365ed1d7796bed2858998b000fd15a256ec1c21ef6cce5d45d7545f16323f383b14c227adf18286972d4d0be802304becb3081ff716f8e327024ad803b27afa686062b4b7f8d59ab7484a240c94c2e50226e1d8e9c0652b27219419ea4adb0302047c435bb500683066023100bb3155b6177bd10cf1b2bf74017984618f011560dd20a4a786d065c31bc9c6a979d9563b319ab2226b07cc342a9c2632023100e6b0f7d84385356c599173771bbab39b228e5b3f816b868f5a6dcf986ab594f62814d667d9d285238798d5f133472b940302047c435bb500673065023041391e823bd9445683500aca94247c7278114eebbd794a98e0fcc1806029940f37aafb57555c71c362ec0a0fb47f7aa6023100b4069de7b474ad26a0e9d4fd2758f11c004a9e9c9b0947f753db05c39f488b16bd0a6b37ec4348eba080cb7a0367b42c0302047c435bb500663064023054a383ed7234263a415cb924cfa0ad7159b53c7626472203682cee732b52858d3d61faee7f734bf58e418123fe202a8d02301d0c1d94153147eaf8f14aa811f5261ef30dab5d9df107ec67568239a52ec7f5eb857bb3cb06468cda50d18f4ab019000302047c435bb50067306502302835f01f1fffe34d086ba7b9a09022423ebec508787a6d357c24b9dd1179be4968888556c49a7d1483fd18636adb3dbf023100a55e04f9cc1de5f6076918592c9b5697764e6451d065476df8c60ed6191816b3b5e59341e5ac7b3efa7a3802844192180302047c435bb50066306402300cb8411231ce475fbd4a4abffad565e1e5b16d32a8734d5e69b046ac6b4a11cee4b8148a81c365df0a30c36cd3a37e380230040721f68bbdb64114fa8a73656eaecc9b39d5e606d58d6b085100fa509ca7558a56be05e304c95e4c35383446f1d0dd0302047c435bb500673065023100b17a8bd9e7250ed105ee54e786a4c6f6233a330388e4cf193c746b02d4770096d7c22c9de37f611f31e3456315d87ebe023034b4db1a9c5b873934cd2f303168f2b4e9641e75f45c35ecf8626270fc437a5acea70da0da370b16b52ca245f2fe11fb0302047c435bb5006630640230074a526780154a4c9db6f786bd7be95f71ae4a7dfee56df035c39510f79d54195d65b818ef5a8dccc4035bb421487c6b02306f7015241fbe241acb96719351bd819e226849375d01f5dcbb4ee99cb3f53a71463b5c7ab864f5c18ec050fdf576a58a0302047c435bb500683066023100b919022048e4fadde3ffea02b92424de4b623ade6e0e3714cfca5c4bc2860125e04a772183b57174a9e652c75e8adba1023100a933faf6ce116125c3a8a5f4cb2a0d71223a3b79c52028844ab5c6a5285c56b5a08eef23bd1ac56d253af60da44a42dd0302047c435bb500673065023061e095f832c30e7dc2da66d21056e33b7deaa6e14ec0c29ddd58ea169d82451f32e354ec93b4d6c57de0abff75c78acb023100e656f0e00c3955cb9f94571bffc03cfd4dfd22547cabe51903aab57a5bc003ededa959e718bfbcdff01ba77c322543650302047c435bb500673065023048b26d38bfeab083aa095b565e6aa2aed73a3c4976423262e93effe33b51e137521d0f539837c122d76b56406833ecc10231009cbca88bc44c61b74ca1762014eb1acbcdb2bc6be2f59e178d62d0f36e47b476523bc86f74a055ddd8dc8035c7fb7b310302047c435bb500673065023100938530a1bda8dbc5c925e494a547fc6ba5d9c360473abad5a90d519f056838f214b512e47b8e710bc71630e698be30ab02304bd60a27f2142534f503fc378f401ac1314124b13cf55db9e7b2cf9bd0d368baa01e5592e23b74aa0c7b59a0b2a08f150302047c435bb500673065023100d0c324f88cdf872db3cf7759413d34d430dd853c64e74fe7bfdc831bb1c4f06f7bb57e0be1d33c2f3163b87241c70c800230244f36100203a180bdf076f604e0c2b8373a7a3e1d1d1339cc8f8b25ad533bd3cb508bae0072939f4f46d56752c4344f0302047c435bb500683066023100f530d8adf8476af0a43e3d5aa13d292387605b84caf9f6772a8cc4d50c97ce0141ed1c916d8dab0ec7c4c841e9d5c49d023100e360fc12e826801b266e9577aa8b01c83a025174af2393a26d0cfa679fd11ac660c7899389ef16dfdf4960ce168a5a830302047c435bb50068306602310097388dc3a564d3f2bbdd668c0082fbc0003669b9060851a4b1fb322ff0201ba24cfefea7323e49b4fd3bc44ca7c14df40231008c295e3d2fb540868e1503b7dfa2fd20218e5a646b0b4ea22fcc8d317bcb270af6b3b4d9adbc578ff2ed6ff2d30d73a90302047c435bb500683066023100a1f73dc9d6f1d1ceb176360e28976df8259b954c2a76c346c718bd0dfc908d9c82df8ffc945ab194b160c570ca08ae410231009930f8f025263a8ee66dc8e76567c0f0fcd8d39e66d4760f5f37f3698218b338ca36062e47eba12f21de92e7a67ad8300302047c435bb500683066023100dc5ad6e3ae3082afad4325ca2ff6ceb44b30176b686a09875627b24d800a361b489abdafd3b139d4e2cd0fe19a165864023100c5deae653d7e511ad70755e90ef4c557890ae68ff9acac93e286a404c432e15c0eb8f6171e2999dfae62200146e980c00302047c435bb50068306602310092ab2a8512329ef7f1ad3cdbf46dc609d7520a488698980e99c9f159920980bdd01091a3af0a38309e378d4b81d4482d023100c8680517073a322fedc7a4661eae146597df732e6c67db522a31368c4351e2a82fe2fb2846776b85e91105faff78fd160302047c435bb500683066023100d5df2136b48db9ad89da078fd14366a1fcf666db2f05aaa38b58ac5da1a48feed24c168fff2bb6f969934523a4b3b94c0231009aa2e2fe853f00da53500074f67226eb4eb645c50afe5728669a19d361e01961fdf00a7222674594c33a03adcd9aa5f30302047c435bb5006630640230705f21f66db0aa66532deb9288cfef9a5bad1708eb49e899789f27b4497ee4bd24c95aac281c1c8eb8d56d698e10507802306c06995a7cb911e13238cbe35086170acc025f5b8362a3f58517714923fb97712973bf516de141bdb782a033bad984720302047c435bb50066306402307d09ab3350bd5ab70f154a3a5ffcdbcb851d7dc3ff42e66571ce75ba1990c67cc394095c170fff0babf63bde2013d3610230045c6b0d1c3d6df6a30a02c5417fd391fe53721fd50d4ed2933f1ad201b59577fc844abb6ad3202b3c8b0900c865887d0302047c435bb500663064023037b7a000d0434bfd4b768775a6b9169f527f953579ea5a3dc5828911762b2827d1c13cbbe5d3e43ea1f1ba681144e6980230457c8f2ef39adc6a20b784abe389c425afe195d9fc9763d03eb4e8eaf7cdf69881b4d1b6a1fd50e15bc22158be59d9350302047c435bb500683066023100fd3db800ea53316e1865ad4580343a0027415bb9523aceae4ecc7bba291812cb33abcfbbe9360942b05c3b41707926ee023100bbeeceb962f62e3a70e1fdd9ca627088c30abf2408461bebd90ef5ea3dc1082c33294c808c2dc855b2d972989b7dbab50302047c435bb500673065023064bb866c7ee38442ed5cab416ceb1055e9927f53c87a4156c0f0438f0fd9e8d6c3ee474cf2743551c6174fa708ae08480231008776feef26e19a85be8d17aa070de06e54d6124d5466addc5f6239ce21284d75dda5f4cdaf2678ad31bf3df405c15ca80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008acaa5635aba271eceeb010f787bc024316c115c8e03b84ee88d0dfd9dd73754481295c20594f6299f0a605d1a71e828023046a9c6e23b85d6b2650bc9debae70d5053ec80ca696c0a82837195d0cce3eef983d85c9d8cad84663cddfa4d5131d9da0302047c435bb50067306502300f938bd3d35b984108cac1a8d3d925beafbf6ca6abe1d86d9fa9e2cde3c1792a259b710f49acdf1da5e49d288fee0f82023100d083edf27aad15780e561386dad5b71ffe962396777961fb527dc2740562df91fe565cabfd175d40c7b6c3dab1cea8790302047c435bb50066306402306c996e5db638eba98111ff0287267e08db651340c99386a9522e55bc827f249a4eedadf62b1ca09a690e6991916b9b1d0230455127aedb79bf47eb476acbe4acdc8e84cf4ea9bb731cf4690f530517eee9b3269c06451da5bd29d32ed9c8258cab4a0302047c435bb500673065023100943bc04f851f6f169dfaa76a8c76708f01908ba8fc175feaf4f47d57038ffb9fa38cbb50bd2d1c219173ff3296e8690f02304faeaf7df75448b30c3643e47a3c23ca1376b88acbd6b2014cf543b121abb44b6c32d534175440bed9aeb130860bb2610302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230279499dcfc20ce817dae0e54dc9c2d6f7be0ddd88084d6047047f08752a06cbdeb87bdbf6d6cbcdea62e2fddb74b57150230308d5251ce4b70d113707adf44f910bcb612533e56f6b483dcee145c66bcc4d87f777b83580d9b3cec92e337381c2dd60302047c435bb500683066023100a80bca063c67cc79168d5504488de54d12d48409a5733da6633b358e00270ddb15bd98e1473ab9d581f3fe2c74830908023100e71505767649a416394dca4e079e9752aa75c912d5c814c8d0051a49e4d91d9f34d25e2bc74057e2190549f7893fa9a20302047c435bb500673065023100bcfd0e6425aae3ad9eaa7c0f2fab943dcf2319280c2f9a1309d69166d366c082284d0c91fa570bbe6537da92b381ae6f02305bdfaa70ca5b722664ab2768baf623e4c6151471767f9b3eb7b36507279eb13d0ec02e85e2dd8c43eb2fc4d5a6eb30aa0302047c435bb50067306502301dfa9ff663d7cffab5735a69a70036e0dba407798d346dab8c1a6d09bd78dbf9777e2185055808af10dfc5d5f8fb3262023100da04e13c2559d160e0073a73676bcfcd12873d48ec7a136f207b570d4651fb4dd0f138647db10f15e42677c9e099a8460302047c435bb500663064023031cd3e2a50dcaec021eb79fe93a784bcbe63600beb00d894b2e44186993cf0a5f877509847754e14689ed52b03d7d3800230225b78161742a634655c7191fe228bcca22c0c4662f512e14474c9749c1dfc966c7bc62caeccbfe31a72682c254e516d0302047c435bb500683066023100c49b5a136e7d1aee2b1567dc978e198b2b5cb75999291f3612721a51d629b8ad23804cc08feb8094e4dbb7f7938da94c023100e17d0c71727db35871fce6872339f14170b7aeab9ddec44be14a175e68a9cfa0030abdae7151931f7a236604ab1a60e00302047c435bb500663064023076be5c10cea87c41a77a1d173ec5933fa239a56762e9e56f07e18c8f352c3e1bb52574c671f51bea9889af3682e2de3b023066039d1b1d9323a4ee14e2aad75e99280f72ac20b47116747f9b0f179a5c76edd63ab9d0bb45bb93121fcfbde1072a940302047c435bb50067306502310086125abcf16fc6f1ee97d8ade544e6026ea86f1e54a835367830eaaa7ee4d593f49fa69a756ea4afa7d7220d44674ea702307c1649431e5a690c8af1d9e2fed5148e88151bb9dad35b16db50a7f39dce44d5301a54468e39cdc95433f3a4cc469e510302047c435bb500673065023051d57b99a164816fbeda8c612f3f565d105b1cc012f5c17c2f034d406674b48b77d8fa08feefd84d4d2116e49b0cb12a023100c6ba9d0a09fa7510059358b68a6941177b346d0718c16dca702000baf618094fff63fbbe735e17e26587577112a8c3050302047c435bb500683066023100b94089aede2918fbb15b4f446fe8f95e22b5fc1ea2dae48ea18be862e0986ca26fd7c64652402fad39ed604fb0778a57023100d5e0e423d384330a88aa6f53391e2f18cf8566c5df9455c15ff1e4fffd0f341eebf9a90c43e5f2c777a4508e8ac0a8ab0302047c435bb5006630640230524882fe2da0a6f25899c05b1d1c805b3f1b126624191f7ee094668451de3b547667c2a96dc9799f060ed19df756825302307667203694f49e3b84e2fda5e1725b1548382fa7096fa5c18d0a04b9f61988c20494472dd7ed1bd13c8048daabb464bb0302047c435bb500673065023100ea186b0314b5f2f1d216d6afe64d89af5fd15219974b225b777dd29954a33af1f5c54a09092e929b8e90b886bee04dbd02305210641cb119bf17e4e040cdaad128bf6ec06be63a951663a1ab93cb69339bafd71bbb8a3f90bfe903cf883c099f13180302047c435bb50066306402307c75d23a60f3de711cdc5257d733a86313a35142535154a449ab939e28958855d2064ca1a3870c85190751c414a37d12023059aebd9908cdd647eb4b7ef8e598f3467708b22e309c3c93c7f152b24c058f153ec9b2b64c7722868bb0e733efba773b0302047c435bb50067306502307b5e105f0c7677bccdb753cdc693d288568fca31585c9978bb1610529b4b6131b92ec37b46daa4b290f39a2e9b6c29e2023100c00efe1f7ea0bb7e3fee237d9dc91b183e4ce93d80e19fa6ee7538a355323e43eb8a54afad7c76872ce4485d8e5ddabd0302047c435bb50068306602310093f0bb974f0614a328afeafe9918d5f8b39814e1e377efb5c9048b51a911952a23d8fd33e76a1b78cc033c78b362bc29023100ae01d969ab1d00b461302338d52d2e28ebf7caf56508d4a52b57e7b178a05658547f0cf474f279fbb69d59aa09669d3f0302047c435bb500673065023017c7b1e481508f67b9a6c84a52c9996a2cfd5e41f3782094c657853f250904f31872f9e1464f7ccae37884a3fd35699e023100a91b7dc4d98df82945307ede2e47c73d0126dd758f3b854d20845a2bc9b153186f5a13c882d9b1e6d2a3af959c1f55c50302047c435bb500673065023100ff07d6d5a93851476117ca44b066423ae2879888d7cba19d632b1e7eedfdb73cc279688dd9ec47cff965c788c83a50fe0230599c5fad9bfd7892c5d4cf03cd4196ff745b7cba5463d17ffb789c654948a9c8c679894b61e0fe53483807865863a6df0302047c435bb50066306402300541e64050296e1d9ea3fd48bc4368b9824da4ff838d4e846aba703550fbc5a176b1e87be342eb50ada8c27405d483e902307337e3cd067cdda1e5dd8a5ed6579e36154f260327254f9e6797d90b844e8242803a0ec5c61f11c95261051e004b60130302047c435bb50067306502306236258a2384d993916b65e1702de5a4c54bbdd1ae4a256c2082efedb0c2e83687d8be91026de67344a8f5acbd5b26ba023100c74bfda1343757ec3462d2b059c3bf75f5e02392b84a38d321067a90066cd37295aafc52b92914819cc6a263315aaf5c0302047c435bb500683066023100b3331cf0356b11da3b83efb8ee2ba154ff6c18acb650318b914c03eae3edaa0a46c20f01147c7fdff221a1332d5712b4023100b16171fcad48073a3656f2c7150cd294110b77a0f01bcb5c546ea4e875e5193339fe68529dcb3706f94b32eb799880690302047c435bb5006630640230306b8bc2c20386dc705e2c53b98bd042170c23e40f3c0ab5d7f25d1b3f72f85e5b4a52c5b372a5ef6d39d6b5bff8212d02305443db7b2b0b82968483add936bd41d3975f4e113fc29d97ff02a2a27e4b3fb545655b55245f044c9b35f9cfa44c9c860302047c435bb5006730650231009abc5d4a35b6ab49259fc826019d9f64065638c873d77a7d728f8bcfec9fde41e2b95dd9a75bb3b9cc8dd4b0493e182702302d6c44a916289381c406001adc1e28f69afc96c23efe0d4143c330ac4f408f01489dcec4b44ab3f52e380d2d59c069c50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304824242d35d1eb84a27a7718da48360102d56d4dc127d76bf2d0718e33e0b43fe88e42480750e46b03220511fbc0b29b023100b6d32edae9adc31e19d7cd3b660628a66e7a0ee55cd5e7bd5b3cc5027ea2171da45301a8f12c1dc294ed91ecadb37b2a0302047c435bb5006730650230658c4262f7ad2d73b197b0396647356dd9b03cef1be5075d9cbf9b46640a07dfcc826a0d1c5e57bf83caa8366e4cf000023100ac33cf1216af418904ac42309a33ac9285aeb2a2af0b9f1818157a37a8981ccee363bd8769c7607241002594e48b9b5b0302047c435bb500673065023100e2cafbcade2448b4bac84c0224989f13fccff2788ee453888836ef9dc85b4346cd45f3c94979343e0cf5d94572ff06620230168cdbdaf9a8c9ff798985003b9f9806bbc0c4ea75fba8eda8dff418c1b9808b52c4569cbcc2b31f7f5cc60311ceea260302047c435bb50067306502301e97e01cc46cfee0e6556f0ad851e9a4476c6e4288f76f79f34c46b03ed021c304710f354d2af6e1f784b6620616ac62023100bf29794b88fff81a81046e947a57f0168794fec9728491e1833dcc75b8b2f6f828f6ee55a248e408c3836ad53788daf80302047c435bb5006630640230178ec0961b134d103c445f958be8980d1aee8e5f603916f6abd710a446f03029922e6f4ae7e4cfbc5da231ea550cae04023077bf6c512059c2eb24d8e5c377accefe2721f653db2297e358d7d2960fd4265dc202bb3b63ed6f3acb5dc081e9ea005f0302047c435bb500673065023100bd89d64dadfc2f9ebdcf762be186aa3485fc0d3c48bed9862e26ada0dd5fb24969586b747eb0c75a0c0ae88820c0f41f02304b0f7ec8a4f906429f373bf1572a38fdeddfa0b368cdd5409aac6dadb5d5a59a37b0c48b8b7fd34706d54f926d994c4b0302047c435bb500673065023100b51fda2816cf88ef2fae6f4aa580f3aaaddfaafff59d5b90615c2dc808a0f01064837824a1f85be218839ed9130c73be023040667038bf001beab56d13742b003952965d0fec51baa04faa2f540a43d668d9168d4a8fb3a3562b13259fe8004e07e60302047c435bb500673065023022552cfb76cc9ad3381f52eb19ca5bfb5ab08f8d2e03c48d30eec367fa5ea15a128b8d4a1de3d8736c985d338de95ef502310092c6c96cdccacf094762fd3f9ab4798ff0db6393da9797313e17f79086ee79cefb535ad98e2c5f4bfe972106ac01ecd50302047c435bb500663064023053af42cc8f96260f710b1cf83523ece674b70ce88f1083ad13f9a7e876eb29205680ae951685d053be5380d06371e9e502306e613a588460b683c3490fd395c2f6ae998f09daabfe98c3d1bcae89517ec7908699844de61c79744ababc359300e85c0302047c435bb5006630640230468f987ee28ad561bc89ad743118d54380b3ea998a4f5cf46fe77af159d351d95447d7e87a803c336ae39a3a29c2e988023005ca2b206e1779608d4a2b1f73c0a43d1b97533ae86629678a6060430cda938dbf74fb763c639261ede00ec45c6216e30302047c435bb50067306502301bd7c4f1cecea8139b4d7379a782869af6d5b1c1452088e39841ccdc82e2eed512cbd7961ae6fad00ae40b46ec05de1d023100c7b91acd4397402b49a233b3228eb44d4733d639cdfeff121387fda1aecd6936e1b042a0a28964f8204a5348314295e50302047c435bb50066306402305fdfb73ad71d57634c514d53006a435756cc9cf95a50b22c7f9b2eb660470bea2efab14f15cd18327b1fe2aaec55818a023021649bae194732a5ab7c1e84eb1a61d87be2d6c0cc2772ff388a2c4ef7475020811923d1a4168724f1e5c51925d7b5d00302047c435bb50067306502302f46c08b0e112e3264af18b6dcc983769fc443bcf4a28a4df0b3cb2523fb1ea70a021870c0cf0398bc2cda53d46a5e600231008fda09513d73989de365f71e302b2ee0605d36f9e52a92ca388c68b78ddc8d9188d9176fae0be87d45b58005b99b8a4b0302047c435bb500673065023042256c28ddd61d402c655d92fcb6dff0a50392772a8266d03eca060caafea72edec764a131fccb7a5032e43418a2c7a402310084e8bc0a5d024aa345748a5145ee2cb25c0dbaf8f21db20cc2ab92a43b15de1d7a00613e11749f951ceb6e270b305b3b0302047c435bb5006730650230424d747b453881dc18f0ad57280d341ef8a771f554de391d54562bdaa01a30c4d1790347ecaa0ae0ab184225b503639902310091e4ae7078b5e59fe982d2ced2799b851d8e9d0a51696caff69e07bb19ed0c608938ac613ef290eb0c25def1fd4e60d30302047c435bb50067306502306be016b4e4c82bf8ea98fd2878966eb21c74fb388e979434e8351e0ea4cbc52a78f23005ad34aae489c32ad2bcb8e1a502310089d0daa03efce56e2254dde4176093fba49ce2bcb81ef7e52eb0744ea04d4a5e8a0229490aa6c861ac257b71f0090e420302047c435bb500673065023000da18dbd7f3e1ecbf773c1573fa890fa29f229217b743ddfef175c45869c704ad5cd05bda419870ed684a98d10fa7de023100c458130efc31aad8b918308aa130944aad3b65b32697caf8930a2f1cdb54323c490e1950d510439790097d30f22e9e580302047c435bb50066306402302cc57e97c402a702ecbe67baf0013bbced982f8e8333e43284b852182cc6b9aca328406c8d1bd2573b3228ee9260c17e0230721a90b7bf6d5b96f5d464d03721478de4d2a0a5cfe4eead258455f35167f2c61e5cc10ed8f1d37ba6818cc6d4c3b1810302047c435bb50067306502306941831ca0ed14f23be7752dd805f2213caecfe23eb01feaf56058e338b9efcac75de366765dbbd009ac6674db1891ce023100d1b97f4ee0245c98ac8315a385c251d08db2819ac569e3b8e96daa28f93facd0e90e4d9280c7398805d53767f195ac130302047c435bb500673065023100d0bd151bf7b30a4494721aba01e2de4cb12ad14c396ca473b6d16b24fafcf0b8314d49f5731cd55f7e35fb4f87bab25f02307c2f3ae6d1b2d2b8fde1ee5c648ebb70c7ee8f5293bdca0b4396cc45af607cb40bcda05528af0b77e7bd5cdc09506adc0302047c435bb50067306502305d5ccc6f7babf67ae7c4796ca86571b9d977fe5043fbdb1f78210086e02670a4733887aed49bd3575bf54dde4d0b6e10023100a21d578c68d01578269871818af6c727cd55b558c0ef782f09a5146e897c0558f1afa4d4b1bad1ad570e17d4b60a5b050302047c435bb500673065023100d83d1d49679a61697e4cfa48e73dd2398a6d217dfbeae550bfba57e9ff60bc882843c0a84248552aa748f304e391c8d502304a4d40c99d042917faeb7f1b25ca75183c6db42fad485f6f5374ba30b97e8a57a4e7bfdf202708e50b6f99a51f04a1640302047c435bb500683066023100cf9c913ffdf4eb6dd60970b079e90105fa4bbbb86d953a5abaa8cc2d1c603c888956ce342f0996e68bcc9994613b3d49023100a5588c1aa7a0002fa807f4e0d390f87c5b7c15a6b0609d71765c23a6c72d1c0d4493fafab4ca62ecd2a775c353a231800302047c435bb5006730650230080d607462b3470b59c069627b75275518d8ba0559b6ae7ff20f7b0b70c8ba42aceb5657b4184d6d719d909accf2000a0231008ee930ddf6dbda3724408eeb38a4f30df856f86c0ebfa7f9fecb4c537a368875d4205e04c840e521fa277f6efbed58540302047c435bb50066306402300b3457541ff89240a8e0615d424694107ef37798e5e789c8abd0ebdbe75678b5bd2b535412b3673ab55d74dc90da3cd80230668c8bd94ebd66ce37106b8d0244d18499956b56330bad1bbb9c3a7fcf6021fdb715d5c6984f123774e08ec75c75f4e40302047c435bb500673065023100e8c62a85ee72f3006be002b2d7bdc7436310c8115fbba46db335bfc427c9d0af53b2ee8e57af4c68b795c9da3c37097902303e1e6facc67d522f831ba4ed54d778e0b5287601f555b8e9189c1a80b5de7bbd61625221be3e4549760f37d502ede6b00302047c435bb500673065023038398e5310531462041c3b6857a39721effd0338233a8dc097a3a8b5c041ad35d05f4b13a24d57253d44a108d17a523f023100d02b1c803350bde1631a3c88d54f1d3704d92de11804b721be6a0429e669130b9f48635998e26286a9e200a6d79881830302047c435bb500663064023079aaf4282b7a50b69de73596962b0482ad0cc7b9c6f101eefb163c3f8ac275562cec02dcf515db173e7f371a10ec43d80230417cd0dcce9698ebcfa113ee9a94440072a93d3c24139d72abdb789984df8848f0420241243a533194571c0db14c4d090302047c435bb500673065023100a4b5b44e63abd05bdad90abdff8443977106041dc49611122615da669ae1c95645b468476fc785433ffc3e7df05bfe07023065d0eb79ca3d38759f050c4292448fcb0dfdfaa5b835c2f39884640e2a9a3f69bccfab772786a7d71e1c1d76b0d9633d0302047c435bb500663064023048714ed3221dc9404ad19f1ff9e391ea8b53fada50c51e5d55698f9ef2c57f47b62953fe6e21c320e5b7dacc294f96640230633ea8e56a9d707f6f15176686dda1468ae0c1797e9bff40ad02a0193bb708441cc72cce8374f1351021664c6b7bb4ae0302047c435bb50066306402305aea1c0e88c8aecbd15315e5dbf0d6d7ed58f861750054b0756f689ef7880a17cfce1ba481226a315f826a42f248a0ff023058a01318a1d7ee36c66bcbd3fabefd79dff41bf8ceb188a51662ac00910862f3128e3a125c2bf88ec2663bde0083e9d70302047c435bb500673065023100ec36a0e9f54d99a44d9cd4917cf793648eba114d7d85f9586f9b4c6b57f131c981cc35f8893c211bb2899b8b83ce0c58023037c3b091c1ce75a94209f9c85f8766e749d0421859eeb8cc20f3a2c9eb3149ffd1fc4e7fe77054f8529ad384a3e5fcc50302047c435bb5006630640230536630b79c8748628fbdf9d4ca9802b03c613fa6ec7652518c6407953a639e1256224c97b41e8bc2c449c7e34c9079e502303563fd8b8f722994231a6f379a0020b53e5362e3787e4c4f8775e346bf1fb589c2fb6173877f7f8487c2537c8bc3e2e20302047c435bb500673065023100a130733bddfde089d300a4b8d3387fdf0d79d2198520aa48203df3635f9adc6ede132d7863ecd20f6589bf944b2e56a70230493a01e7bb556b70c35bbc7220fc5f64946d33bf76865450ee8e41b872624f7ace8b2e54ff8e3ffb4cf896f801e0ebbf0302047c435bb500683066023100e214ecb5c1f63e184d40f4a07dc7f3f35661162b353d95b63029f0e2984b3957ce3bd562a459fb15b312e08264508c7302310096785c4f150117fde7654444ada69f47313f99bf0f421d7151d826589fe809546b7dc4223517e2fe5a593011fc4ff9d50302047c435bb50068306602310082dbc7c46d3613c6605dd15526a0103ae3d54555eac12079f23797193bc8547e52517273b49991c90bdf2f55fc668005023100e14acab560109f2be906e8117df100058d38e71f90825a3b4af00d98c21d9b4a879ac66f6ece5e60ae9f1b1fed5d99c60302047c435bb50068306602310090daa233248de5c59080c05a9e0dce7b04b4878f5b47b13a45fa1a45ef545ee60cbe67088cc5a62cd4efa40473eb2482023100d36ae3cf2b0c3888dc4f29e50194de1980765a9c335a363a291faa9f7acbbb53c0780357565544aedb016d121f7b4d510302047c435bb500683066023100ad988d38628dee040dab6c10271d2c84cc92c5ea7b4b2d18700637f49c841486cad24232c2e2e602c55d37fb18787c9a023100bab09aa0274b7e878f36b8f77825bfeba653fce7e01d054800ceda989b722f581d2fc2b16d789e23938e4d1c27f101400302047c435bb500673065023100d12d98e9bef502fbdce698e4af511d3d5e2876e12a53f1232e522ac28b9a1dfbf88b6754cdbf0aafd391610557374eef0230406fa50f089549387aeb58deff099f34fbba1e7892de1b55dd500b56313726f7c70e15724f699c3146af32346d31e6130302047c435bb500673065023100dbbe88b70f4eff729e664e5ce88a71ae4130b829e37b7f091634e53b06164619afa3fcd3dc91bae61d723fc3314f7e9802302a610cc2e668f2046abad276a36b7763b63457fd1c37eed137f12629b08fb67e967ee83a8f9c8a7a13430014cd918df60302047c435bb50067306502306e22a30e9fbafd323d21083f016296db8cc39b8bb2fbebe23b1fe348784ec02a2e2b15619dd74a4de0a193ee8a264aa90231008471af238bd44c50cfa6a4d1c3b84edafc0d8625716d1a168b129b92bdb5b47701a252fb9c902d542e6482dd247e97a10302047c435bb50066306402303cedc50194704c0d7b646497a95b74936e7578ea35602af70eb2e2018b6f8d374c001473219d53f718276ac2c355453702303575fc4ff3e760bf43c96be73f2af6d5bd96693a84129de010f0bc991f1fb18151a2376b79b78b43e9c871a70892ddf50302047c435bb500683066023100a88e71668aa682dc112d9e8111bc16ea1111b86d17240b447038340527217c17df53ec4e8c7f75828c4c62737aecc81b023100e0b53f8a808142d0033a74a62f5cc58f4262f762e043fa1a2924a24ea1fff82e2e9860606e25ff77259f0509001e55ad0302047c435bb500673065023100ec946768e1c604b6943bc69ab2b26c1d6ef1244a24f50d8d97708b5dac4cb77e84fa84455552c8f039ca26acdfb6c66802301764e611272099ac6ae3c8852ea4657a53fe6ac9b2594a9775b1cbd74a27e26965b36768c3eb8dde60e2ce169d7451580302047c435bb500663064023029ac5a067e20134b83141c2733020395542d1db8264e0f2a27d5c30c8f5900d379f341c271d3ff49a7de8563e044393502303470782ee9cd87b616fcf660c2896f82c586bd7a3555232e7ea3b73ab327eae2a11cedd80c4a1496b4db76118e5de5be0302047c435bb500673065023009b0c7efed71b50bfb34abb3fc0938a1281c3ad800f14fc46bfad538bda559846602dc4caeb1b44302ba6cdca7207a1c02310081f6b256465f5144dbefb97b3e242ab822833b4ae9f24b111acab06d075bbc99b055386e06b40ff95542b8031092b27f0302047c435bb500673065023100bfa622c5d62dc4aaac433fb3f247fbb80fa445676e8eddfe62be232defd00f8d39e26428864c1d85be5031e63fc8e96b02305338f9b8f0ba1cec0e8389e1b43d8407e637fc708ec8f56309f5ab982dac12d46f983011ebb6d9a4f6db282c0f325bbf0302047c435bb500683066023100c72525a0832d6bb5f0782ff8aa1ed36573f2c78b48c3ebfeb7364bbd751f02d37ed7bcb9778f043849eebd1b7610d6b3023100f4bb7d7212a9232b87a995619785e77b2eff2fedc3678e26cfe7d175a00ad45e385aa772e709c88617c67a812ec9b94e0302047c435bb500673065023100bd1eef07ca7a706de1d35c03a4175f7696d7d4836561f59a0cd560f9e9173fc4279df9629567986756024f282663469002301e3e0264ca754242a6a9607745aca9c595db8d2ec2b44c6f65517aab071e01239e583909a6e1af86d049ea4db28ef7210302047c435bb50068306602310081dda01d708acccf2d108c1bf5054d6045a0e95446519981f56e4733772082d36738153a2939ca62ab8881b8236729dc023100dc4a8f377570b0f563ab2536b8ef7fc782872fae34739974052accf4ba2b45ec90b1ec6a01ef313ca551f36a19a247400302047c435bb5006730650231008f8a70a0d77df8a125010331092724fc9b8bc93d61fdc96a8ee96a556748e8a6bebd2e7b92c949c563f90ed32d10806002307a0fbb49759310ea7b406942e939742a9f1e7e2605fa0e42e5695d1fba870040f1c99245809d2a1a914e218ae16e9b9e0302047c435bb500673065023100f288554da046b2cdd136ed6df5ed47dead73dc01b1c9ee0f5c15ae5cdb97f42bc5a6740e557ddc58f1d1fdf381b7676c023076ec2c7d2c2fc1247a67dae7dd50b052bc46571c35c650a02d0fa97827abfdcec3cbd5d8773030d15418b7dfde988c020302047c435bb500683066023100887f2645559df460bf18fb06fb74361d0d818ede0de053f88ba2a9730bd478725d1cce7cd0e31b024124cadfd800141a023100e92bea7d21aef5114e08a8ab8057a1925afaba48800f7e73e4dd7279a9f7b48722eb483401e710acd21e15ff5ef277c10302047c435bb5006630640230418c41aa99c2120394cc5f01aba4d81d5f27923bb71a2012ee2f0e0592d90628cc961d88f33acb81de45fd7e98d7da38023040a26e3133ff5431e47d365498a8bf7accc57a1252a6d2f64307d4435a8ec79e4287845cc0b636dc3ef1eabbd21817f50302047c435bb500683066023100b569e8199d701335eef7494753ed05232bf555abdbda77558205f856606236278f0034cddb46cd0fce79d9518b01633c023100a1ec523f2c4a2dbbd240e08573ff2b4a61433090fe980bdf87a96df685908d4863953f6d9f84db51fa3e863436abc68c0302047c435bb50066306402305d64a56d0e9159eddfbd2301d7b64da3a817e185fce2f3c97191cb819277e655e8f58cce087a01ff3cee6b3f20fb48ad02301bc71ac9f589b5e2ca6fdc8c061445acc3d1bde167b2b2996199b8d51befc65d5f232e565a111f1bde89be1ba20125680302047c435bb5006630640230779e1bec177378c51eed86d411147ad477caef1ada1f59a84449c5a70c8c2bb78013dd91d86f4ae9d601f4b76503aaf5023016e1e688ff21096839e21384456955d802446b38e680882fe806c09697700644c31aeaea0b3495db60ff52a7c3ccbe170302047c435bb50066306402303c029fbbbd51f8c48c073adc201a38eee40d53e21479f9444f6b2aab9b5de0716e9e80122ef2ee9da57db1ab0da442f302305987d1842432a84defd39e75d3e6adb885f560125fc85cf5d92185ea9c149d26fa18e04dbc65c189daef3b5a7c7c33b00302047c435bb50067306502310093deba10bf21e58307cf36a30387152ff0876bd1ba20baf7c8cba5103d34a6a61e317b6a7bc63b0711f058e8f9240f9602306db6d5fcb66064dfa5c150b549df75205e595ed0e21f2ad64a0922860de51039b3c5f15f3dc939ed5a383282ad1385f20302047c435bb500683066023100d5eaa4914c22c95b5c6e976b57b414b1dfafa2d13f999ed44d728de2553f146595f21519f091d3b001e9700dd86c373d023100e6268265d37047881f42a9e177c887d445c451de3a295116eb4144ee4e9d11d8b15238ef52177ea5088a3161fed871b20302047c435bb500673065023045f56d36a682d7990c4fcfa4df2c43fc978398fa46422211c5c9f1a46655de5a97ed9cb192a299202dce373d52a17792023100a552f8721205acf4d3f01f91d3e52e602554d161753392e6cad70b8fa18aa4226a0c5b094520b065481cf9d93cf807a80302047c435bb5006730650230205eb805d5a596166b5b1b71c8d23e49a1f3a8b0b44227f0e9c63d83e3131b3bb137050c1a656fb759f9649a8e34d1bb023100f81acea666ea74cf42be0355cf42f629368ea64e1cd2aa5c048bc9f0fd2c33a4a760bfd97e52bd93d66d5363673c60760302047c435bb500673065023047e0a49f21b24f75794935a38d16d8bdcb024d755549434cfd2df9d7eedb3b4c53671f4a341d28e6688dc834c31946cb023100cc1fe1193e357196e5d81b45a6e231b211c94cbabfa943e43e3652c947c5d3720986afc5f7721ee9e622551c154b12fe0302047c435bb500673065023045812197ff793e73cb82e26906650eaa5931edea3ddb6620441c8006e5c620036aa6bda710fa809e61f35a157266c8db023100bc91a7ebca7c2cecb2c69d9a12e0fafbcf8c7c623322ea5c04ef59cc26b0208d53a0b6763794bcb58df41216028d30a20302047c435bb500673065023100fe2b3d075624439277c2fac3a5133af630aba897811b8fd9db7742144176d4c7b731af03497c45402824b9fc6f83821102300fa15032d36d08dc9cf7d4e5422b01d0bcc344871d1be0e18933dd25b70dba8ba9365c043229b3adfa9c591279c9f9360302047c435bb500673065023100cf5feea77cc4476f61212c25b4498cc78e20f8a352341ec01fe3cd3cf9a04718ee15fe76b9a61fc6e4db8fe980a5b97402303250acca92979d026e201ebb62bfcff9f75dad9165b8a2d309a21dcd58e94ed5f0fb96dd6cbfa49b4acfb5c11a71930d0302047c435bb500683066023100fb0e59a75c6e04fd43731ccac45df4be1562a675e7808bc96036d1b7ff0c80bcb494431474fbc4cb5f3ae017b1192ef6023100c97f99fec8d11cc7bd46f8abe5ad6e5b522137977ec5a532c6cc7694ed7efe89b3eb5c9ef45e950bee2723ed4e28069b0302047c435bb50068306602310088df4f50e6622d6ef6a4d72ac5edecbf9efa6161522fb24db7f25d062df2471aecf72798bbdb66b9b9cf6c1bdab14f00023100d131a21a014d2cda4809d451da8ff9e9677651ed62d3519645bde0af0eae9d6fe32f574422a1900a54517f3c74b2ef180302047c435bb50068306602310095e03f1cddd5da93193fd68158634666b669bbe5efc2952ec58ec9e202710efa809fe7ca73b139f803ef93a78270c18e023100d199e69e2a118cc8b50321f62da356d30f0d7f0282e8ef4ed500c72c1a38deb3dc297e87a8f0f8a12d53189eedf374cc0302047c435bb500673065023010db045ab57d940c9c87ff2687b273513c3ad5ae02ab118eb652cb0dc7604b170c286af344c6ea0e3c9c9c6636f5735302310082d7e8f7e1b4ed4c5078c492724e947d6eab649342575580448f02b8e65ce939a1d6873a62138dc7c9a1720a1ce5c21b0302047c435bb5006630640230167b919eb70380ec48ff9124e4b4442a7535493302820fb0bed1dc85594218934ccfa59ce45a095e283bcdfb049d021602301aa8a9369e5f5de99e56643b939dba64b9249f1c68ba9dabf54f0362e41a89b477155bdcb189f554bd584090b43ec73c0302047c435bb500673065023100e4b0c2f0a31ad1d0b93020d07f9b4552505fc5d692aec15b461184780f1b8714c5661a949c65811a7f92361acbdd16f902306fc0c577d5ad62134b92e4f129e8bbf45ec482676a2d7e95da1d1355193e197d973c9df6f5d072f7476757c02f8177030302047c435bb50066306402306ac8b8d7ed539612cabaa666610f2110fd07f33d35d1f39dc1f8baddcd38b252d91d9265847b43fd59644741078248230230386383718ed6ac17eb6fd9fb013ba4b0672fb069415ea2c32fbff6e3dcd57a3cc6b0d00e61e45362b8a42fb8a52551560302047c435bb50067306502302ce2e58dd72e0e6d9e77376b499ef1d515dba04fa1ac01031e1c959bbf1e03b5d60884d443a50ec6113b74bf649fb8460231009d6e1a1320052dae5e042f2b283dd70581c5a98c10db4b664546e1117b073f090e700ac7fca0c2dfe29011c2070423aa0302047c435bb500673065023100eb27f9cb3051d065e850a9c25728475bb63304aff210735e5cc426683d424bf1302c14348efc879ffa5917ddb9c8db1e023075c0ce04656919337f54100a4f4d922bc23e0133f61f3bf08a22e4415f497803941c78076db64d376bc6c8b92d8d5b130302047c435bb50067306502306cb2079fcf3f26934101ef190f9b270630556042e23310def3af3e1cb6e9848d1474a64285069d047e0dc522c746b2860231009a8f774cf2763bb34cb47d0a3cefc48e544ed8a7cb772e2367abbc47f78b580566a0539e1064996af8c39d0e4f2f67880302047c435bb5006630640230552ae54fd2ed802e01ada8af3ac3760303598ee871fbb48ea207575f09f2fbfc1fca1074da25e97b5f40d7004ba14e080230459900be4958ae0ff17d13328f92245a6bf13afa4ee0cdf9ecdb703f965596875ce4b36d3cb70a092a61f729b276bf550302047c435bb50068306602310089d27bb2d8faf933bb5419524138ca9e92242ab1722a6159ee469620c55ecc4c585c777b15f2d35c6cb22050a10b2d0a023100b81697fd4e7f735bfb5635cb8d438d555e953400059fd04211b74c8b2bb03c891a489a4f5d99bcd7d2ef58fab1eb14620302047c435bb50066306402303e063cf0a6e48dc99c7f5854f05fc2cbfa8ee5bdb812d9d1b8de05eb22e85ec3b47115c1d3986794454572b120a73eee0230112de929971918425d4d30c33b9e1ac586a5dcc64fef25a7dcd9fe0b9b6f7d1773529b5b3547a7ff229e1dc841d6255c0302047c435bb500683066023100f8f3d20dc1bb9d6ffbd533281aa8b99c2b852bb95e24b4f40f6a40178142dd5779a064cc96a4431f4b06ba9eb47d2800023100bc710fa566912d79d3d6aa9eba13e18966d24c599996bb4427595361d7ae422768bd4db0bf9938325aee46e80df310dc0302047c435bb500683066023100ace8300ddc074fd74fe115d7dc23a30fcc290a0537f07a9d9f0ece9e73e4ce249912812e44582dcb56c4c930d6f40654023100846a6f24317c9d41a61d3fc92583bc7447d7967a3b9004a1a3099eb0fb31026e84c3fdf00246bb1c19702f5cd32988860302047c435bb500673065023100d09cf0911b237a68102848a2159b21999a251da70f979f77ceccef24e2110db284f4c4f3d50d5f593b92249a078ac449023022faeea72bae4a5894b2013dc1b1da87388ec58128aeb18fcc85dbcbdaae191b31416d2303355e029ec42dbdbf175c1c0302047c435bb50067306502305af45b171c8e8ef4946cc238e91d7adc6cc8187516e1f07bcfd04d1e3bf9575b15449891d176dc8d59003b9fb7dcb8e10231009de2ed96277792758033cabb516feb3b6123b8a57623f4853aa1ede9b1d969b3076a102e273a2c15477204b3102bc4d10302047c435bb50067306502300849c4516a2eda57c5ab6b32c3c7e4d0e0489ef2450416ff54dc73ddbab65a1a9c5fe6188d920c7dab3369b24a9e42e702310082c2d018da0be3a68b79893af283c490646b9862886d5dd69d2043a6014b2e8642ba377658e58df5fe858a42d5e29ba20302047c435bb50067306502300d8185dd330f998fe7e7e05a5b10e1b4098b95261f15be35e71734d69ada553b66032fd4b18ceda83bf566cedf803260023100884b12c80180eec1c2662e856c917dd9b420045122e9ea04405565b59d8041439892f401d3be40a9e011fb7034cbb6a20302047c435bb500683066023100e7e28ebc6e2105544ef262645ee7a0bcff6fbc0481ba981aabc858962e0aca61d71bb3e64d7cde33e47cadff75cd67c6023100dc7361cc7edfb02bebad89cd2dc76f67902804f34486b437a6a375b931669971099eb3d81b953a08356f3767016daccd0302047c435bb50067306502304db51555c35d6ed8a90d2c8e86e0c7a2043551244d520b41863aaa8c98f374243cef666394548881e50a24eddc4846fd023100b93f1b70d281caebe56638059255f53f1b66d4c0f19a1b1fecbc0938e3eaf2f79d1647394053ab6eccda09ba2b0f761f0302047c435bb50066306402303c20bef600d40ab7c7691fb7ed717ccaf35b4ededefe195417394d7241382011f4b9c755fb725644749e4121a1465e2302302f41f7032d7c95140ce4af3201f507674791d1749a864a0aa569d4a97629c37f9da30e9b85b640d2e4399b751717e2c30302047c435bb500683066023100e7f6c7bb50a38c5734f6838e6d3b016e939ad632d21222668d17a47f63550be5375a932bb19323f7190818a8176897fa0231009b95b490289253ba096549e0f21b7b46836a3de86ea50544e5fe65c391b21881c09a5fe500525cd4f85a9be3b3da87dd0302047c435bb50066306402306705ae5d709d3cdc4b658171e2deafc7fed161407805bbb29394c4cf10b7044007a84e407fb29c793e02e855940b4a5502304384f3956a22bde8ad11058595cc87d3649cf03b287032b85874b6ad6ec446c454eb9bdda53135f3326618ceffcbe9ca0302047c435bb500683066023100f75612a08f0e68869deff9d885da4641a76c6d3a8886875b998abab2520b978c5b13445c2bca9a75aeddcfed7a9537c9023100df70f288d45a1c46c6653650edc7b76fb474f6b2d83a9f31a9b8734ef763b1b9ef8c5c4a5ee6b91781ca81d3dba45d800302047c435bb500683066023100eef69aa100f74c0438d0f93c9f9d3df2522e55ac78292fa39f859bd7f9cc9a33c82d8167f12a2fea233f675c679c5435023100c49c568676013fe0a8cfa387e16a2224059098ae3a74236e867768a17aa91da7cbf8647a13f13858c110f32115ed0f800302047c435bb500683066023100c34313a0a6b99de31e3462eeec0124b453cad52916d6f40669a5333362c724738373738276ae2e8dc5ae94677b750d88023100e9a90d1e8046eee502f47fd41c21b7b5315c398001804d471c294e973610e19a439cc78091521ea293f78cf05f03fc100302047c435bb50066306402301e6b9329390c346633f4db3c4a4cc95ccf68b20c8220289b0dcd118f9f0cb58138e0ed46c659f1f6a037346e93b07cfa02301ed9ea4d0da6dfdcbe5224c5fcfbf13555e52fe98e83d19d6f723191758018d29bcdfb1243685346fdbabfa7b7699e670302047c435bb5006630640230196b4d9846b6257b89cb73287f8e666f19db6f5402d1cea9773c1ffeb8f88b3bd5e1580f76c6f5eddab0c031ea66458b02301e717796d97e7b7355ef09fd37a1d1fed12353f6f28fe3bd1fb3ec0386ceea8faba3a3d8a0048931a80f3e153e68fd040302047c435bb50067306502302c0726cb3df34ac4571797f758841cf1b2a7cc92e4d6b2df461c3782e45197b00b48e4d7f8da596a679f59cdfac9cbbd023100963a14e9cdb99572d795d8321ef224ebcd383043e3719735d1c6dd4f68c5d12fb6bf45d568a08291167c763e1e07ad0c0302047c435bb50066306402301dd514314f70c07e1b51634629a2fe036175f6afdc5b0ce7489888a9fe152c0b5bce17f90ac0a8ee05ba3718c6bf3f6e02301067addca845ef20a6fc72dc84a559791db898ccc7fd39b4f1a66e7532e83372ff105ccc02e8320e8748b92c8ba152950302047c435bb500673065023100f8daabec3fc399c083df6fa8af4d837bc18d60e6180984ba5cd4041689e1bcde597ea74e5bff665099d19fd5d56e2b3902300ca973e120cc10233e15af764c85f7a856225c3b28c7856e077e166dbc3a6c2efc7dc92d6cc99dcfe9a802787d7b68110302047c435bb500673065023100d686f4405fcaa66bae656666ede24312c2f1f43659f6dedbac4ac72f0aa85dae032ea2d8de042b188b3ab118bd3b662002301ad0bdad979ee582de95a1e58b4d04febdad1edd23bb015631ef8b2d7951811563bebdd4cc5df1e12004e48e4c6901de0302047c435bb500673065023025f7206a0748dd031e07be44c0c8fc9cc127ffe5c873e08018a50f80979a58f9c73d221abc77ddfdc6a2a2831d57dda2023100d95c27094f2cca670ae7af746f418899816e59f7587cb4db330e4b1e782cfd00cef4bab58bd4736639a3ebc78a9ee8f30302047c435bb50066306402306c0c83fc3a2bd71090be119f886fedd6b2f5ed4beb7fa1c8b880a5f69d934cc94577e0bc2862e1b654c84ba2fbfc823f023020a0f6feb280e23897d251c98fffe42dcdf5e8ca264e742c4709023614d66df0b295dd58f442c6d265593d23c3c2da910302047c435bb500673065023100ede43faf345d75ba2b817fb9fbf04c50ea1e9233dbe2a93d17e29a30f3d6254010461e8d3da77f5bd541918e12112fd1023020bcc6ae178595a2468a727433843214c994a8a1698823367dcd08bd216534d63e743e43215ce581cae2ebfcd3a876c70302047c435bb500673065023100f6a449fad0f455f971076620c651c71bc602e1a82efbea4581242fdb79828e38b555ee1281972471dc6fa4115675a05102307b4906ecb01152296234fa42f98f03db0691fda3058aa10bb1873147469bb4ab4525ee6518297c30bbcfc10a9df8a4110302047c435bb500673065023075817278118276650a757cd1c31d6588315664cb5fc40c75e75072dd78b01e7c746a41f3e8604715ea16e1e3ed8584af023100af603ae4fb1bab94d4d3e2728ae8923de8e1e081782aa3c40049dec577a321fba206dc6755dc9e4c0ca0391f44d5b22f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e1409b20b8ba50100d50564da1cda2bc05f4d9970a503bd52baeabef5f906d128e66cac746272aef2987f9dabc3542990230225e2029bf99baf48f9cf54f4adb5794247b6e827bbbd74bfa6925878ad408f5807fd6634a0aafe6f37d33a0135399550302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303d4712a66a14f473956dca3518021a11f8a85578832eb411e8841dc9b33e3d4d71efc56e926c8816a67c0fc864a91f95023062004a541eb07cb3e37169dceeacebc33dc945d8c25014a1b693e74544861aa35318a9dcee472f072a02a6830da2d0e40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bad460a84dd425da413c032d9f1b54183783532b62f885b735af84e2e628bb291169088fca8f9319e9dec2e383ebbde3023052f2ea09207e77c2ef4224a3fa62c55cf78b282f9813c4c1a5eaffef0283356debd6e5eeef95846dab1d6c95a7f8c25f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023018e8bec3deee25d515b47075bc4389d3f48b37f9ff423eb72aa6494c9a744659db7f209a8a070693426807d5309f5a5e023100e8d860598371308c43bdd92a56e7dfff5f3f9b4c8a12a90910a0c15806dd106362a7fd4558a991aa0119a6a4871362af0302047c435bb500673065023029b9f66bdc261b0cd86006c4e8ae27e1bce1aeff047583f6eb1f441e871e6fd2db3c0ddb5d995a53bee0e99e0c7ee7bf023100910810286c106d7f8516790cca691cab75dc79da4b8390272ea9af69d08f3ad717060a66a80c89087dca090365f89db00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303518ba2e401d7c28e4b54d16114d984823beab90d2f6caf465b3b7e4b3c5e48082a9878de7b2beb2885a832d18b02762023045ed6de8ebcd4343cb49461184d2fd924594184b93178dfccf8d08c7bc5b2a5bdedc73d4c1d561a99b6e2715431f3d800302047c435bb500683066023100fffb0469ae8aa82665df73634ed11fc77580f5f978f5557e76abaabafea89dcb091483870cf26b13f3f7c20e3f98316a023100a0485742df14c76eff6954be0a050ead0ec2cc297195ff22d248ee65fbf5a4bd19ed8f3cf345f6d78e373c4ac31711970302047c435bb5006630640230365df31e7df8552c1b50d07e427b2ad5d31f0b3619e55b471bdd8bda68436c94eab6cef41ca1cbfce326acfea83448d4023034501e25b88c0f3c6f2e92ad6d67ae200e59c0330062269b8510df237a68669ccae02ec7e0b5b2268e7cf6764daa9cc70302047c435bb500663064023016d8b59d28cbb109746a0a2b69a7dd2e26bb47dc93756556e0b495baff04f71ba731b730df2522c8cdbe714b2abfcfba023039989ee5cd0b18920ba6b9001a6db826e67be823366657b75039fb6a65e1c00384f8c7a7bce5b95b1a387b977f2d54a70302047c435bb50066306402302311896942c4cbe7a0d105328f567d40557c660a84176908c481622aade01fdf0ae82f62943ba9f04cfd15a3a3b71d1602304e0a8def51cd65a3f27867c7490fd5d646fb2189a2db5d26bd38f016eff21811145d83b5b6764ee9a3a2890ba5b14e790302047c435bb50067306502303b169014008ac881b817fb954d880bc2814cd7b1948aec8670d61d56f88c23d4d554f50b486571b30810b54374d7a360023100b156536acbc3576777823ff0f9377921d1ca3e6cefc651912a3dda3fec84f1243798818bd86e6227dbefb649e9a032830302047c435bb5006630640230595c51803237b7528b05bc8f91695c49fb2d80af438d8c0cce58e2d7a2e77c030c76a171211ab1f229dcf679ed19bde702304bbee30a756cfe086f843106cec45c60be3625f3ac8abeac2fd6f0011f87e85e726aef330a37fcc6a8b5978f8f9dae380302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310090716b9f2c253e6d5e2dcef1d3d6ceb0216b6d244d6b3adad5b0af24dee0b254564c8d79ef95f828f8c5d90f19382b7702307505f47530c98fbe48dc91b482d8aa8d1653fe107e992e9ba1e6acdbba50609428722898fb5fb9a45b037856dc9d7e360302047c435bb500673065023100d32ae16ddfeee41c4a58a318295fe598063ab18841059aab94b11c41392e28dd8a4020f50c84aae447f260799e63d1ff02307a061c05b88344ffdb2b813869e12b6b04bcf77c57f2271d527e399060244c8bc1f48281ee44221043f5572889e7ca610302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310090dcb69cfe5a0ec89d49681179519c88876c0fe3bd8097c2cbe69a2b626d51cd9895baf093e95a988d531d28586b13de02305f4892dd1c1e41b51f4db25cddc77e3aab119033c88eaaa7e9f32ddaf0292cfcffa673f64a021fc601e966685bbbfbdb0302047c435bb500683066023100f842dd52839aed1114fe601cd9ff0dd404ff3636c466d5c7044b0523febad4c683d5758a2f41780795907d86a87c4ecd023100cd33f66b30ade99957f1bef15eb19cda0d246e24b148bef7a2b862cc23c96046d6c17745830eb16ce3fbfa47b4a0c9490302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100845bef16243c65850946f49b9217441885edb2f739ecbf892df8a84f35f79327f6c09e020066f034affe695f0efdebce023100a62d9e29a6817252ca8e96e5525c7575eef5eacc20e23b2d487ef41d2b4a97f24e39c32e2ca1eeb7b4968e3c4e4135d20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305d7a726edea80430b34eb40724a220cfd634240f92ce212f768d64eec0376993a634afdcf51f748730cd00c449f6569b02306e56f1537f849eb2f8f38aef7b8c49e872409d6ddf4863bc72912ed51b656f582efa7b2bcaee1ff2c395ec60dfb044140302047c435bb50066306402306d5cae82b51ee0f8c18d387e1b851045c415759a3d5dda729971ce84fa7af172c61d26f3eb8347c054ede1d3763ea0fc0230207d5310d9bbb61a86acac684525fd00297e1edeffa2cf81fcf999efb9e0ab4a6f8a6e6aa31c594bb185d78929bc8e790302047c435bb500683066023100da2b8bb1fe9112ee85eef2764eebfd4a982314336a7704c3d932ecdcbf1715e71ee2ea819a105b55f5d2214bc9e4691d023100f22f637d4bad12f32c8bb290fe0dc7d1c0ae4fff5350712a0be39ad7d29f77e03ee61d516ef0028480bf7cde437a4f920302047c435bb500683066023100b9c18c8c170b7cb147a7f1ce2ceb3ef5c20f9f34ab7254f08ccbba89ca4962f69da12f6d860f8aa95909963912797d6a023100e7a58168c69513046bf8f343ed34ba36e4a576d4347af76f62661a2471e76d5f713ce2ac8f205247a56395a6df36529b0302047c435bb5006630640230295e273278abc9f1999b452e7158f66d2e1fe9bb2fb93d0ef2c4fa9f138371a43cd6512ae8339fc849f3f95c963e6dbe02306a5addd89bbb0623cb004c03e5bf6fee553ffe2bf8559bcad5f8863b43424cdc8ea16330880d582d2d40858f0985bc5b0302047c435bb500683066023100a147485a981523f7da78ec59319a26fd4295be6cfb6be555c4f9265edaccb033310f4bfd400cd145dc715d9e80d7491a023100bb69b9983f61b6dbf162f194c98eb959bbcb9be507414482edf41b54bc691f3a75e826a77467fca4244ad7c8cc490f4d0302047c435bb50067306502310088485caa08a6631cfc60021a196b97221d524046cb0024e537e2b34c923978edb2b91b69a3cfbaeeb219a3fd1dc1c06b02304a9cf69626772554a4c041e96e9b233d6fd30237d03ae096b4501f1c5f5d05fad28bb961378d1aa61601ba69c48524410302047c435bb5006730650231008c6d909f1c081acf347c6fd46f2ea0f6dd8aa7afd46edee0dfabf59b0d88110506a92031948adc3a1401bbeff7c9ef6402301249278a86b9f76956e2c5e0f13cefa0ac74f5f0dd4ee0d083cf1f76a13f1e454cbd64b291fb990ac884b9a7cbe64f0e0302047c435bb50066306402302d4db8aa1b0ef5d07cb5209d5cdb81f8af20686060e34f55dbcd0280d6c7a160e9d0d89a4b18ad5477040bdeee01954702301526c459cd489c7fb33b6b14df687036c53803a2c16f9a553e7bca95bc900edf49c0ab02a8fb24faea8d13286546efeb0302047c435bb50066306402305cd8a654a3fb19f99fe7689c8f1c6a58a4771919b8a6626d38b66cf0f6ad3cec2c11eda58847c4c6e217fc686fa391480230592d89f87d3afed1c6258fddd5b537d596c1a29792acd1f3963d4aa05f64b4bd2116dd2133e8f521e400204defe5adfb0302047c435bb500673065023100e21a70f251d847df0f3058b18ce9d01d08e39316089f02f4a675cf88f9174a9aa436e7f5c254bf4bc18ff278de7999b8023068f307c2325cc9e6f54b1d16d2c43648d2c18d557402b8dfe1e2871751790633f4081dfd3512ced9783b841ead84df2e0302047c435bb500673065023100a487fac71574ef7acfe535f6b3ee7b143b8ea103302ec4d36e276a0196f31ff89b268444398b8f81870735633a8e90c5023006f151d3650b8359b33fe9a5dfd0b30c4fb0ab58fa5fd794178e68095eb696f0e520594a5b7db97683c82834234562800302047c435bb500683066023100cbae3d10b599e747943d260ce5e62f20acb9d105976f9ad536f676cc4abd6fbcab3647dd059dcf3af4151591c3a90d6e023100d720c05af7630f9967e8c7da5a782ddf5683e68d580ba2e897665f4ba09428807470d8bfc2b2853a60f70a232adcdeff0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d346f30d14e8a6925946b651137e0ad16446847e70a503d7c9937a9d505a97a1225023699066560323cf1f4594a2973f02305ae982bd5c92e18b65229a3e0b1e326af1b6be764fe7320c3cf7faaaace7700f126a10dc45a2c04503c305c71814db3e0302047c435bb50066306402302b2b38107a6bb64f81411e8bf05ac3e7d80f724534931c7e7681abadf9bcce033fd7dc6c92c02373044979f3a2a2076d023040480e295c7e8b8671c035d3db93ea209c5ae7d91821be9fc95dca5efb21d992335028eab6e1ae76d8abbffeea2c06fd0302047c435bb50066306402301d6786a4afdd5e319b6c0597056873ed16c43ce5d1b7e58392663ec303d7b6c208c0f8780b582c2d989b71f621a7aa1202301be057a9843b2ca9a251babd80eaac4cfb18998685181aa114a4ee56add2dcb2618657fffb4b77cd30d25a8e5c86312e0302047c435bb50066306402302abfd2dafa940ab9bc1c25cd0a02a04e16592d7a70729a88f5b4d8baa6d1532e1c832d1b39ce61f1940ecb61349025aa023053f0dddf9b46cd921a2dc61449840b798eba27f475078e04d4974613e105951db8fa327fe01e6670fd4820af43927c8a0302047c435bb500673065023100aaaf9605e197510cc36750e41f2c61968fa72f7a1f3bbab58178e110a9aed07b462b4e0bc76feb6e7e0cfbb80ba3b63f023033768048406bcb53ff0495b404335faba19fc34f1dd8ef6ab4269d3ca9bb7de237ee06856be902710365c85a595994640302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c6ecfab06def5a712d5af38d9745c04b3667b785fd36c6d594d8f2d2a3b4f202a53eb1acb54aea3d61c62d957d6818ba023100e26eb7e125cc091385125f07641e8ca5920474577f5f69337b660352194fdea81662cd7a4e0b42e5172b5d664c6453a80302047c435bb5006630640230669ca79b2ac99641d054a41ca0786a9f60f9aca2512b6ae08960e707b3dd9b12f03c98194b1a0a76aedfe76cd48c009202305afefb9d98d793ab80b63a065d9c2b9bcb80801a1128ef217cc6b3a6d200f5e4304ac8c6103219d3a1aa4a25b5ee0da70302047c435bb500683066023100be319681d7ce90ab66a984e0fc02827fce4adc2e9d68b866f6d879c9cb01925df46c2e50e3336759fcb0740b74e92f34023100903fde98e1433f8b4a6d73a90e571e442292a2fb6cc4b4566cc7db15e37d58cd8355b040259b6d2f017e61276b36c3150302047c435bb500683066023100f551d909540bf316a855a99c917449601f0732870d89fc57f0a9aa0417d86d1130e074ac13fec264e1e281bb1e539ae70231008689c68a1c4dac7f6a3941f1e8579907a207fbb97f7fcefbe1523299c92d87b3c137ef69ee6a1e3baab04e7aae36e7f20302047c435bb500673065023059574254524bff777e7c94d58db3fba9334d23a316bfd784610a9a0cc0d6fa999fc3bc871cbc5765bc3a3df33332f4f9023100b89a4f80d443e6328617776dc30c1d4c6fe3014edc352be3fdf0f06242646494385d97b0b77e6fbebd04799eb038aa3b0302047c435bb500663064023060e7a24f14937501ab4c13f2739bd8eef57753340a702be471cf11731f5d7ba42e189da25c5e345669bdcaf97a130971023039bc3efe444eab36337f9961c54d66ea98b8b75e051d958c3af656044123219879abe360c06682f291c6d5cb2f1f9e0f0302047c435bb5006730650231009e08c9cc19d60d6c9582a9194fe5343f075c69a7f90ce943f59b085dfefbe2574b1407bbbf43c3e96c7554437aac901c02304a35e377df7dc648ae20253b022cae30725818336fd3fc4985c6759523fb656ea972ba262e0ac12fc25b5c0da0ce61d70302047c435bb500683066023100c185f696538c3e4f58e2efe59bd028b4350892bade48290321b1ae53dfd7b5de420455a22c1e776fc2fcbc04f621864e023100cc440106865b9c16a7c8da2192a4a177930a6b30abc51e271fe77d53f19751f1a60927abc50f86f480ca6720b56c7c260302047c435bb500663064023070229b35d0c918f28b1ae74b149c4ad66e9e7651c2f8fc225af4916e8b7a9a73d4d98ad4acf19fd226a6932334b7a4030230763a55d68e7ca926643f3ea880d2c6ec76a894b26dece4a498f9e643ac9f3a44828450074ba27c4114070f924e1733460302047c435bb50067306502301898ea965fdfb174a01e601985800f5cf332199babe189dd8983c3d81d10bc206bc1c74f2b03de2e6ea3ca55e80f172c0231009a87c4993c49a664eb2a9c106164bd0834c72f03f279a3393960d1aea9c1070160b749895e9bb973872e5a2ae672156d0302047c435bb50067306502301d1bf42d7b0d5141bfa548871232b481e7bfef4284ec2ac4271e40ede89ea58494dc0f7e1c2fbbce1b5b5e512c9840e7023100e8d5c4f743d24a2982d032126f2661810f04e9ba3454e9e0e6fc52435734adfc588c4f804bab347b7bed40e4747f1d010302047c435bb500683066023100decc73fa0f2e2ad10389509cfe03a227d57280d2f80cdaac7edcc6001792627277d61203291474dbd282c0ad17afd628023100a37d25133a9632614c06771e1fd9553ca539d56d9dae52dbc70da9f3d8587f91b95f9c1a84455a6ada3943f7add3733e0302047c435bb500673065023100a47c6bf9e335d33a6c17c75a67dba7e26f428d317e7efab3608317bb1540dd97a11714f46bc79e6271242f74ba0e2566023029c21468bd3e7664a0cc6abe3dd0e83342627ca4c69ef1fabc8d8b02a71ee2dc691444df3c58a5447118b569742f00260302047c435bb50066306402307cee121b177b446950c9f2ea6eb3244c42bcdb3dc922146e813fab2041f13ebb400f8ef7e01d7a5958e6f3ac75f0c15c023061855efd0d8c48f2b0c26d22790ec50d5fb059f30d27d19275bdbee423fc7974a7ae10d1cd27236de39bcd76d825eb8c0302047c435bb500663064023069c7282756e6c5f7bf3409ba852a06e8190a361abb49b027dba8a3c243e95ba095ba7086f7bef38ee2cc956dc72288d802305dd7b99238f3604ee6f45cf958c49fd9af742d43a4a37468104ad9f193bae018e0c05038698e17f2d4016767a6693f4a0302047c435bb500673065023100d7e3af2fccd2f8a3efe36f2c83933b816ed60bfc79d66361e9b8f12e2f81539f6ae861b726a5877701f4e4bcdba9988d0230778518c60175b1120c71bb34ef4232c23f827b7f5b0a5d2d0fd375473f4e66d13339905ef0dc589d7a323abef04d28be0302047c435bb500673065023100f37672b6d37e778921eae90c81178f417eb9cd3df37ff7c0fe78645d7ffa194bf0daa5bb7bbfa3b5afb2a12f0a68f46d02307aace88996b468dc617e32709bf0dd8aad1022da829ef3846af2810954c649761b4ab3ccf5b6278447a3e3cca9c2d2f20302047c435bb500673065023023651dc996ce9eccb0ade6b72ed0e491024a703a1220ecadf556b5ad619aeedcff0720d2debf4ed8d6f1b871a06059ee023100bb7ae7e7c56a3ea01cdabc8bdaddc21e8a58eac54972d50c355a9759411d032fbdbd883287b8b35079baaca2219793410302047c435bb5006630640230228c8e596a1b2a0df540c8aa16210a523d124a3ab39814f89f02fcf97c44583e8427c5a0dda7f569afc8c92694bd7130023038b5fa015212c174c2e4749fa2b4848a12b8d92e3b6668a2573ed86848b80d8f6df3f217479279edf44758e6a87a681a0302047c435bb50067306502306523f23086a62be31bfe75afe574897754fc9978780d7ea6a67ad05f6598ddef3899acd473f06ed7f4116852cd6e90df023100fb47572938c8ad23893cd0a88024f57e7e340bbc47d1cca87e8c70a945c8009bffecd15586d26dff9f78e84fce84b1740302047c435bb5006730650231008008b5c9f1e79543dbe078261a86cac060d5711fde3db9d4a6e2aea6d5cb31356142605412ef941ba47ce793a7b11c0302302071dfef85a418835764c11d2d4e512febda273dd33faaa677dbdb0d1bc8c1534d7226c882eeee0b6f0a3a439d1949640302047c435bb500683066023100dc09416522e776fee88c7d332cde440d5b82e2daf28fa394d60f916a56a92c43254159a61cd4730a596916c8ad297468023100b4761ce6beb4c08ba4fc97e446ce38a72fcbcef222a95734c500004e9bccfa390c80d90586634212b7ceedbcc819f7690302047c435bb5006630640230494b8c79a04aadb7a4c3adcd236f7ef6be00ae1299240c4e780b6e90bef8160acebc7c0d2924c41e810542fee73821b302303a5586723b62a4cbf4d070bf40afc9627ff74228a7861e756f4131afb5057f24f9822ea51b3e730f9b4de090344da42a0302047c435bb500673065023039425fc23946d7b552dfb95ecbe2e1d2c11cba458187764830a7459fb5fee7e28a11c2b3a8c68a3dbd274963d315cfc2023100ac5d64b8c0a49e2d7a7c6797c133ebe4dfa73ad202fab6cd366cf43e8622263b48ffb7358db4b7ec1f7ac3ad62d3c59c0302047c435bb500663064023009c75447236fe499ec4b2ea9e6e332c24b3c2dcfb97cefa7cb0a46bb374e43124e5aeae9562ccbb683998f4b0a4710cc023001ae8c3b1740a2d7b1007d4fcfa463342dc3de58b68de04fe87cb698f0ba7a3dfd4a27ea41567b2988e26ede2b63c6b70302047c435bb500663064023029bbf3f59244119df342f1b38bd663e50f3f01260cd75fed8e76bcd69dc2115c54a98751e6ddb56736f5823164ffe89602302b8dd2e0784dbd8ca34f5ee40169ace3d915ba4b9f8a5c7404e0b2020fac32ab6965f9a40569df4e81f1757d7537c0f50302047c435bb500683066023100b1e26b0e27828d2228987f929cae8114bbdb46614475fc2b4f6f875153c21820f3995d561937af16e63e2c8a919fce22023100d6e5f85e9e26bbec98a17b3b6e589b1858940f2174da35b799cfa2e46027e406f53dfc55e4d17fa83cebb40c7df97d180302047c435bb500673065023100c9502df32891119d207d76bfaea449ec9d99d72207546644441a4728112f02ed0a672cef509e8c21175f5c0cfab985af023043090cfa3152c6eb926fe49d1b91e6a0f3bf7e1658d22c304c83644be982eee5e6ae6a0bb6017577d586e8859c7647720302047c435bb500673065023100a9b05874660537c69e8316d4779c6855b35b8effea017ad7b5688769a5533f681b67bc23fca638268d860a8b9cb5abc902302c53fa7b89e056f292fe90e7e54d3a91842ccb002fe267c1471c6527de9f3f96829c3ec94cac0430acc8c97f56960e330302047c435bb50067306502301c6cd77eeca5132d95798e9ec962beedd638bcda4309aac5f33889bd4a28f23b1a63a29098fe2a0bce397b1afc9e8aed0231008c4ff378dbeef6bcaaa4bb0b1e63a5b4b7c1dc60c8dd49e1d64e420aa9ababbe4a5ce81dd2886c65a8c8c415c67f016b0302047c435bb500673065023100c41648b1c037ac5224f7e2e94a9f7c3ea409cbb0efa3c2878489cf1dc5bdbb3b3eec6cf66f69dc224b0085891427db58023005644a625d9b0bf590515c87ae069fdab7179ab624efe256336facc28a12b9a54e5d63709a1af882875bf7dfb962d3280302047c435bb500683066023100d44c5a51dc056375931a69090aec0e501ebda7f0b67d85f7b09c2cad13b324a532d495be8c1a3be30c02c7f640991b10023100d27f5078a89a26a5d5e6630a51026726a06cd0c964841acebdfb7a33f729f4cfd1a47a165392940f15e135532e81a6ab0302047c435bb5006830660231009783563c7e73084638d43f4bde3b1ff531054a35c645e4a9b82b741ffca13e8d3a7b1244d5fb614a664043e88908cf02023100ca936bce97ffb70bc490313c4086f7b736b0417ed1acaa6024e45e5e448bd8983561e86b6d36a4f64ab42a9d7a2fb7830302047c435bb500663064023024e413fc16e6ec3d86546d1b5d555cc244b9a9c84827625ca84e44dc01ab8468fd78799d238bf45c2f2e5bf5dbd8ca880230404c9bc16ca6aacd3b41730a8b8a77704dbb13af546a30e5efa9a6d5951af11f7436a3d727ecd425e77d2788915a29480302047c435bb500673065023100b52af95b3e86fc7211945f24eb4c093ab67b28d94b76c16de09b934a87c495e8c2f81d647323929870d7aec77cd6d02f02304688d548e77078ea098165ce871a20dc6b710aebcfc61306c52a0c52dbed234026758ad7832b585fcf55e96d7dd55e280302047c435bb500663064023027f5e5debb88c8c2b968ae7474ac5150ad30a79b5d6e89aa561db8ad6428c32556596e56c9f444f33fedad4f4d74d3e00230610d4c518e98aee75e7f9511f8dc861505a4f097e86ece59be34554b370b7c503e3f784cd72b953d2d47c61bfd807db30302047c435bb50066306402307da1e443aea2aac04293b80c6385706cce8c29a9ff6967877edceab4ed1a840aa28328d486e7ae82034df312b7c34db90230676daeab6671a6aa52c0fa381bd3824c275dc78c2158a7d4ee897596572de4b45c2dd61a399c0595eaec197048405ff10302047c435bb50066306402302703ecd72ccc77ef547562b6610a688801fc0d6d07ab8136145d3265e07c70962679837fb7897a68382c7da1ecb00caa02305baa2fe088c6cf94c1abb2aed2c8002c29cbeefda11398483aaf8898fe07a208f07d26a542124bceef3c0f63ef1ac1290302047c435bb500673065023042dd80bf02d932c85dad6fbb56cce7ecd1b40641fd103a3819907bce3825dcb4c2b15d361fcc3953c35a8eed1bb65487023100c5c2de4eaa8c47c2235f541a785d95af6ff5c724c48c6413e215fb65bf1dd5f1366869c8064a11bace5b2631f76fe7840302047c435bb500663064023043bf9d484cc7f1d2ea658c3ab361f0d4b3d8474a081608dd21112069ed91c1435ff6e8fc2201043d3d48ac52106f8a8b02302cefb319e88875475774a06e0dc1865b94d62d55eae2de1daa6e2d394b5485595434fb5f2d386b2dc33ffc2a5c4d23960302047c435bb5006730650231009a9c8d2583f1e4379d46c5541f41daa4320eebfa1c8a8bd2ec96106f968330f08e1b8093df7b6ed22062da525ab299c1023002645eef6235a209e30a5e4e0038f90ae89813eabb17b0d1ac356ddd62ac914b17086f657e2e0e735ad1467047388b210302047c435bb50067306502301a266e5f8c2302ee15c21f96d22d7ba03d5fd956fd0b4aac37a5f0c174efc8714841fad2364f89cc181a9d09c59fd93f023100fc5b5d6d723e32af08d5c841782a935cd73e2128e559d243d970226ede45384563e8967bda1b67a2ec38bbe444059f6f0302047c435bb500683066023100b7650a75a056710786e9c0ee95099b25344dbf69fa864607f92224f758cd6af9ebb12c1749feb24477134a2c387812c1023100eeb1ec324ae8fbb726f2e3cad1f203833851ed4c8502a95d55381f55fe77e05c880dab426d2ae1787f5d43302cd93fb60302047c435bb500683066023100dc2a0d28174cdc9555ddb09da973892d1b94d2695c0eaa656cdeba344fdad6b028befe23f776f38c6329f460dada0ee70231008c59c6c44e287dbc3fbfcea2d72e3b7eefbff2195f9b593c6f68e04098938f82ae882b8f26d20572f3b71c5c8585bd640302047c435bb500683066023100fdda5b49517dd150b01e560ca5a2c5dd925fb414f8f2325718b31cd0333ee760a31434bbff44dfc7ed62e6958f0e949c023100c3fd8ee48bebf923f243ee722bd230f6af56a920b0d1e0fecbf9c337b7d1ee170941b69e6cd5b75f2bfd84df85c92dca0302047c435bb500673065023100bef82ffa12ad21c9b43854ce4d6d9b05281d5477d8f53e80257c5ff10001b5b228acc1f8316a6583fa3ef3a93f1866700230650a36d53f1314a5bfe0f4072fbd644008457687453cc4a36cddbc58cd0dc9905a1522ac3f3ac71870b73b67a1e169430302047c435bb500683066023100de38a9e9670cd50b0526d1505f6bbe22f908f3c9f10f804ee8914b4cd4dacf1eca02bab6fc19967e1859a2b1f2d6fb7f023100b49b0f16446b15dc8747e9c0af93ffa63812d57c57676e3992c43c3ad72f811bba4e6ca1f717ddeb1ece2657eb7822260302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f24dd6f148eeaeda2f84b4042904bc75df6eed433586f131df112e8898997fa04849dca95cdb9d9b535f83fc1ef18ccd023100ead397e5894336e81006d3ba50f48f901b11c834c5afc7ec868a33d8055bb2ebf7c7e1ebc2784f601437a3e9389942c50302047c435bb500673065023065656903d819ebc65ba261f41feca124bfff1be50e6170cb8c3cbf3fdcb4bab405586a5786efd9f41fba338c1f0e58c702310088f592224b7f1a3ef037a772d936b767e30e9b2440b2bab8a80e738e99f4927283f9bb71257349636d032eb8ee8d05440302047c435bb500683066023100a22bbb9fbaa814164b45b0bafcad15e866397927c35e4852a8447a35b2b96a45db4ca00d50c98e8a3d5155f570804c800231008b5f8d772c63da5aed2337e4b3bafcb569aeef269f13c6489f5b566e9cd66be5987ddd0817711ec8ef366bba74cc3a430302047c435bb50066306402306fd4cb968fbbcb6a48c6ac50dde1841a5d832ee70f2f96460abacaffc33ff8b2fb9570eb23617499c9e9a3bf36dab94d02302a5b3e7d2dff460f0f2463968682e61738ab04d300963ae54461dcdaf3b97d65b789f79ac1caeb4728ca415a83d147a80302047c435bb500673065023100dfab33ccfd91127229736d266c77d3397acc38baf77c30025e8ea682b9ae32b3d58cdd62da4ed39f7e088a0fa46e8b9202300864edaf1ef5ef7cee5526f9eab5921a68a838abe543a28a93059088ed2d77aa3d01cd075b65c330e567586816a858df0302047c435bb500673065023034e862e18a1857b956795bde4c0c09219e258900d5d45c8b82fe4899c8009e99e265a1cfd9d2de56929324442730598102310084bfca85399b0e71bd2b147dc58f4abab9d05390bb7b5dbdbf18a8363a47abcf31e3bcfd7f8dbf2be543fc545c2676920302047c435bb5006830660231009fb7e91c1bc51df826eea9d6495902b0a99c31e73c1bd7c6d9fec3e0e327becbfbfe601f7c5346e8223afdd709a766110231009d1e8c7d43cd5eaf26b034c1bb7922d648587399e03b16cbd8ba4f6cd9157cd65322350f5e8aff5f7e066b3e0365a8870302047c435bb500673065023100be1a8c65e0e3a2ee7e6545fd3fbd557211ec9067371a4797cf2343d7af1607a1d617f07559636e8b401e6f492a3a74e4023052569f141392953edb4bb1372f2fb6a1bd8805b804de327beb8f8437e0ce7b093f90ad422c0ff1abe7ab1c7b0ed8e33e0302047c435bb500683066023100df50162997ab2c7435633aeacb4d3094e20e0faa8b4b883d52f0e3a3f9927ce2fc565de8cf382d01bb63a0e2f38e5142023100b1265b5866bf2a3acba2048fb9666183c5be42efb85535790bc31ea65c2e9cd43c6edd762f09ddae1e4bc66aa22cd7150302047c435bb500673065023100ac941d7fc941827f448f98b204eb7a29192d59cec7520d896a5fbfbfab4cbb786ed0b0203f5612362ac2e8580ffdf45502303a8848722afe2958fc843c96f8fbf6807f1531a9e9522b1a8ed867f7bfe581aee735ca35229589cf177c3b4dbb704de10302047c435bb50066306402300f2e5c1ab42187ba99d762bebbf3d6e401eefb8e3592407a206c7ca34a1a9f6ed7dc9f6221cf4a4dd7c4a9be86ee57c702301e4efe5cfc2f865aeba464140a05b4c12e12d6c1450c2d5dcc119a2a473dd14f0550e79768ea614f5d13e8c3adfa33c00302047c435bb500673065023100cee71ced69cc575dabb2046ef84d7e0b0a417d081272309d2a70afac8eaeabb605948dfd22d541319726f4db7da59f92023028efb86c99ef11fe378f662004a1c92a7fe5c940b16d9a9702bead8755b05ebde7560ede8bf6636f3b07c44cc3ed83560302047c435bb500673065023073b4f4a590fd3ad4933a8a8c000b461f35964c8406699e9b6e90984c1f054fd9d274d3d515c8d2e18a8c96567018a01a0231009cc39b88cb83478832b04d94a286afe971bf7afc781a00f270ebfd775bb4282da6b7b03441a63506fedfe87d970946430302047c435bb500663064023036f8b4685f0672d445610ecafb404e17fba32b7dd511a8fd312ca9377181d01fa25d81d848f71672b48bcdab15b59f240230711d83f2f5de0cffb1c45c78e1bed6eca8f75c6670a4838071ea4fb38934b195d9c7b03948e919300ccc4237011117d50302047c435bb500673065023100dc7235d11fc231b4c1dd7ca59fd5355215a5e395335862698b87d055ad3dac9e1aacce04741fb940b58a712c271084420230285ea2d9bb0448a4d99c80055d6696907a4ea7f542bfacc93b247793d0b1c50e758c4058ecea98fe5d0540ed5921b0ad0302047c435bb5006730650230185d147dd8d38b77a6d618d8a50291c88cbd763cf25058b3929d6d3713fd85023f60730d2d7dc22ec5fae274eefbfbbd023100b7d8398a54df765b352a37ccfbf9c878baeb6bdc70d4bbee17b6bb9f13eea0437b88dc6cb85a7e0ae2da19f6ae8eeac50302047c435bb50067306502304af25fac72edde6e47a89ba4bfd9486bdf9f2ab8f02d6b4f59b351dce6c0e0bde7920ae97b92310c6052acba889f7003023100ce027c2d325bdb2b6d0ac860076e4f486f8658e68d07090b6c283c666350562f52890d4585eb25c50f0052b1fc2d557b0302047c435bb500663064023040c1257e8609d0e8899917e9fa783a13c173276a9f6fb3dc29bcc6d2eca0aa000905dc8949bc62351b4e4757124eafa002305934b0febe3e712e5f758d4fb383bfbbd5426558be314a45cc32c9895d7bb9997e70528f67395c051de53752f33cf3d70302047c435bb50067306502302f9b76fc3f5399fa02fc0aaebd94d438f2714793e24f88000d698855c490e11be9a248181f1cfad492de1e5ed139127d023100ca543fddf918462a582c6430728ebbf40e68f9b687bdcd800496b1766826d0bf37e1fa6c2da3479426f59da42130db120302047c435bb5006730650230263f25c75949c9b611034edeb674b67d91f124006f255fc903008e56fee341746dc0c882810756dcd35f46a3abe28a85023100ed4b85d29d577ffc3b2526638304342407188b93f5ac84ed0c18e07b9458ce64a7e92295f09807d387c94d9bb9136d5a0302047c435bb500673065023000e7cd2e78aa2ac4ff80f4dc9d9b7ca32726d497df92b3fca6f1b24e67522796ac8f4a033f57c235e83586f50f694c64023100a58a9b9abbe25b1b9ddd7bd65d78d46ab264435aca5ad69a726687a5c335a013e2aa28387d40a413a77c5ac35428ab650302047c435bb500673065023055edd27aa4453ab774e23d2dcc1c872520f55e5a7a60284999e8caea506267be3650209a7bc6b92cc13344482c4e869e023100bec04bd57d5e6065e930da6f5f5e7f239549ad957bdd21ac55e8e687b941917b09e1572b9b479bfaee25507eb9c0413c0302047c435bb500683066023100c302af72acf0d7febef11bbd6b7cc1b6d74fa069d041073a3ed72748a525b0b88ed6bc6dcc612ade943e79e46b99bfda023100b63c953b98714e0e2765e4a59543853a8beb59e43ad69b7578fa6d1f374b065a5c8d3f23b9e6ea282d37419bf801f3cb0302047c435bb5006630640230231536cf718c892969235e2104d253d861eeaf938e71032081e9da53875439e58597079293debba255223d5571de90ca0230614f144b614e4f0c48f8ee46553162c25f085454bef859d1e8640f35a302ccb6f769ed01315f861b3c312ea733b1b6ad0302047c435bb50067306502301518d22962fa8ce33904968137dcb2cd64c6483f61d882ec395c10f15ece85ef5522bb0d6656739451840c874fed6b1b023100b1c89b7bd176246da54fbd9b8038c4dddebd0ac90c37764ccba701cab2ccac79cacfa7a8ed8009995b6617a833e4ec090302047c435bb500683066023100e92a65d9d3615e0c27d7beb6ed27d53108888cb1736183881110ad5db069ae637f8cabf68d8e0617c8bfa67de9adbe42023100bae0eb879cd74884e30e1a8a4dbbbd9e13b2e70780375cc1ab88f8e8f9f2c4702ba3ee6a0401e495a88d29d31ee84cd60302047c435bb5006730650231008198793024655170a24348090bf88c579eb17ffea548f6c045a15d3827b11916c5187947e4014a86cf86524787c877b302303f2433b05f3f41061ed43bc11012ef5edb41062c65e2b097cafed49858a14e4f06c25f1e1c39d9150a2962cbc7f89e0b0302047c435bb50066306402304a62611ef8e3b685e884394f4946e1f7c3698eb8e10d447a65fd471a75ff989ee800b7c92a8e3e820b9bbdb842f72871023042437a502a3ff6f9063092f825d1fc4e06aca89287891c6a8cec0f916a8af8d60375b441c75ba266d693ceecadef179a0302047c435bb500673065023100ad8027cc3363138313b90e7c420a22650311faf96167699eb5efadff4170d1d22b8c27a5a61d8804b34dfd76bf5e4616023078c7af2247efde065202fc48891fda51fa3054952c439524a447cf49e1d20d9936071f663ab70b78523c82c33c34ae9b0302047c435bb500663064023014521d900b12b58c63c13bc8bcded7aec56c432758cd61c0163e5d4a1057e46e76653ad8971af25dd66c234518dbab2702301d3eca44c8cbc82d7531af1003cdee8439417dba2e797a0cdb0c5cd02835f1c7530d2f5916fe7a751b72c1c74614fa900302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301f482bb9cf4fc1da5724efee3c9c580ccd929baf987be97209abff628a934259532e5c2bdaae054a992b387c34baac56023029cbbdb1c63e592de2ac7275628732316b6ba1ee2236a72baa06c17a2401b8832122b05eef05e17de3944b1f8c19c4480302047c435bb5006730650231008e70bd39b223ca80300694da84c1f927bc780b9dd0fb6aa16d73c1d150c7dd495229bf3314db315a575213f45f54563b0230177d0fe6d3dfb68c7058193558e8430607534295f8b82e43b31a7401e439c136ba0ec502208951af7c508e197f6258e70302047c435bb50067306502302eb8471fc4ce5030db595aace4d444c42c5592560df271a50f4f11b0c49f844892c3a2c97594eb66ccaff31a1f32ccd7023100e19a3fbff8c5c93ff17ab2be739fa70030438558798e0bbf52ef934273b9cf52ddc5fc55925e626aefe3a23eddefbaf90302047c435bb500673065023001c30d10e11e098beac33155775bc6a1fbf3f278e93e1b0ce696d5e9cccaac9f6bbdeae394708c1ab0e8c02ab1c655ff02310082c10ca5c855e8c6dda53a38837a71903e67cdeb9064e2aa45c7bf9d8da2bcc8ced5bfb9654d2e0baf1a66b225289eaa0302047c435bb50068306602310090e838418b02a073d89a355d07d3eb99441d21ffef083dd1c91818229919a888ba3477828c14ca12dbb01bad50a3e40b023100f2dd5e2acc2408bf600a591c50f76906477ba8370ca82efbd975e33d064431766db0f59c016be5265316c5ae0546ed5d0302047c435bb50067306502305ea67cef9acbe731151f63d06902c6f23debfa3a67c31e6d99e0bacbfd7e5cbd0fe8adce78b88eb19fc275eed084242d023100a1b2025b4cd1221f348abbcf782d0be70caea0f6e6c50025d4f08d5ea496cdbef4b2d803cd36397947781adb6ae60f4e0302047c435bb500683066023100ef3fc4afa70ef4e7fe846cae038e8d4a37fe5875b339d098842d9f126d7f2b11173bf65a766be60def38c7a20de0f32c023100e7f8eff6e20ed23c149948a156cdd30dfdd3357fbd71889e3e8a387524882e70b35875c2606199256f48d81d93d22a5c0302047c435bb50066306402300b14b92dbd0e957de2ab0341fe94f6f0ddc274de1b42627b772a50124a93b9d4afc11eb45f490b7d0c865c998aa7b92d02302633f5b61b94942f45102856677474d62c293bd8f0e4ae32febe44872ad2e0e6a57033e6151261953a44bdf5936afe380302047c435bb500673065023100e970599f071eeba978b101a22d1698d341bcc9eab00746670af5b3aca944b14667a97410ce628cec6e25ac9442d8e29b0230600b65148a1506eaef5bafc362c7c57a854f4750daba86156aece18eec6326ccbd118ae9fe8c338963c15744b67d9a3f0302047c435bb500673065023100c3c271687887fe5591c20c4ed71067e762afde40f6143cefa08e3952b9ecfd41eea914f4335556319fe5469cf9675e3402302e3a8f2127cd8ddfcf36c94a8b8ce663b711cba08ec4c373ba4e763cbcd00a4760b2b2dd24cefbec60b4d4b373148f4f0302047c435bb500673065023100bfb1e9b6be8c4072064dafbeef762831e691e70f83b7ca6d9f2a012b438683fadb636a32896389e9aaed7129d2714fab02307d83cc30ab12edb86ff06325bb381d94415ab2728a19bed349c7d1c28a80c158e373c75b4318d17e5c273c2a5283408f0302047c435bb5006630640230521b53b568059d3f9ec36ecbe878cf198d4d3e667caad4f0b9f2ecadf7b488dcc2e5fd4debe184bcfac86bf145c75c9802304c864f923dc4cf1081acbae7b76a226c7eb84449441602a360edcdec7a3bd336d19493ca49916e608844e71f157944870302047c435bb5006730650231009d3c281c04b5fe989bc529349b9616884f579299cbe5ef46cff8d3856e6b9d798472cacdd9556c606e414361b2cab68d02305ffc3fae9e2ee267d7f6c3f0f309d704eff74a90bf4efd9fd2b27b746c572f9d855839b3f0af22ba3ec63dec7514f4480302047c435bb500673065023056f80847701875adfb074d36fcb58b086bd02c926bf3118dd0ce1fffb82fab76132068cd224065c1cc97b36d7d7add53023100cf13375f7577de29d9b0e3d3f715e004041a28b6f133d7c77450bab80eeea4bb0986c24dbacb2499b7aa3aff256248d90302047c435bb500683066023100e8c1365980ecaaefd3b4b734b7357c2346a488ba93e655623d90ff72e95bff4e4bb9e785e6d708cf7535908253c04f65023100e611b19cc24ceda3b7deafb1de79aa89f2ed78ea725d4027d138d2c01b93d2324f80e7471c275bc8c9beae88756f9f480302047c435bb500673065023100de91c23727ae314a44be7778ffeb8e23bf81db41028632bc1cee5067f74f9cdd179cbf6d355a2cf9404e81b6c201a22902303a77777e40c300ca7d8771a6df7d8def86ca0a2078976aa94ea42dface5ed359be92d7e93c2b2a59656c9550f64de03c0302047c435bb5006730650230023b7824e00b07d0f141d64feffbb34dd70ddb162dc114905935fa4e943e8ed2c6a02ddab2390cfa15c16d0e54666176023100e2d422419ebf7c6733a4467088130a8c62f525761ce3cff20a99a86a409e6ab343962b000de889e2f6b2a1d252cd18250302047c435bb50066306402302a6b4a40270fca123f8036ca2ea495b0514b6a9a822326d6a4a824084fe93c5be9de1ed92b1a31c8295af7765a44761502307547c41a4d1a5f56185837f5982fa2987824dd0b9c5f4cd825437458aa2c2469f06b9dbdbfb73e2cd62e93f895c33bf40302047c435bb500663064023027b20ce1fb6d25d4d6ecbb32f423efed10b581720ff3c7a75ce01b254f59664dd3abef0a39e1ae1cd03e28bb8c21de750230109c33ebec81a8c7fb9b6335984d062077071d7154c44a56107cae261f0a2efbcdae0120fe46da81b6c2aba97e9ebf040302047c435bb5006630640230573d0d631fe810e85228c3fa1f166a1ea284d40277db7db97276afe364883bfc4ee42ac83738f02aa472d763781bfa2d02304741168f5a7de47baf3c78d08c261e48dccfa02146be502c586d5d3dd76784ac099d4a216a017d1144a1672af4d156b70302047c435bb5006630640230728504b8c4c34cc546638a13ca28849697e2a54de06608c266165e235380550a67bccffd3e5d570bea7b42436b00fb4f02300902363c11541b6102623dd5a4f1c45ca3f371942d85ea5f7505ce19c4b84a2c2ac8fbb599ddc3ae07d18e4e601ba17c0302047c435bb500683066023100c1e55ed3f30b232380b2481233a0fa62aac993858cd1d15b728d2f9cbd7f674c4a41c91d254a6e453e02ff05d763cd35023100d529f3dbb72894739490355a124d75bb59e3094aad3a8b4930afe0de656498c267c326ae14e4153787d3d133d34d2eeb0302047c435bb500683066023100df0b6a05d9f89dd4cc4935fb6f71c58af2991c6dd0cc6a371d5aa969ebd870f2b4da732a8e63da955bae1e6584c5d96502310098588a0d2c66b2dab0d263d09644b5a307e82460eaccf4a47e8d85fea8c8c50bd2a1a6d6ffd8e410663952b2d6f560f90302047c435bb500683066023100d7fecbad0dfc5644755ab771a3c80f81c48643a3d2d22c511d4ac82eb86525234695614308273bc7013aac3d1941524a02310098512d865f06aacd1e064cdc7828095c66b0361cef9ad18b61b2e03d79e5fbcb42ed39a6611385a402f875e89050a8210302047c435bb500683066023100bc92de230bb9563f9030fc333c4b6308572497304f64e2d8a60b2b53ee612a499ac020b28101e3c4d272912c523484c2023100b0aad9589edd0fbe0a22f0d07c2ed1dc81b24c62d7865b263cddbf951a17d9800e2c72d4c6e285e3dd2b27c99e34c0f70302047c435bb500673065023100fc8c0109c2b8a5467811630dbd61e8d7d6da25a74e885b4900bb60e69864e412d8e760fe778e4b73bd0918f417cbccad023067c4bdba4ab436ec32e75a2e01e0d49f9d883873d6e2589149efd8f684ccf65d79f874019972b4ebfa4dcc5204c57a510302047c435bb50066306402303d7f12d40aed875b8d78887f1b3efc661da2dd423a0af0779342ddaa21e8178ff594d348252ce22ff10da67aa77de3d202301230156b9fb40d901059a783ffe0d2ab19aa767b6c0f9bcb7cbccfcea0bb321c0d8383eaf5b70075f16bc8757df017890302047c435bb500663064023056c56a1a1b4d5f2da25d7ef1f15197edfbe9419791b582a78e76c1633ca96a1122065775dc7ef3c425b3e2eda091ec18023038112fe82724b6a31c13e69338dacf3b53678ef73ef1e35b201fad0f7a6348a18566a492e4a7ca88fd28f81cacaee0a30302047c435bb50067306502310083c5d2337e43e4ff532a6a8ed73f1f85d4986dd7f3c05203351fb9e7d8749ff20fc2027f96ba2aabaf6506c3c3aff2b40230231cc1d5b6aa15b0a6e354ffad08354ecf181a5cf822f62a6944de3f20586374bebe77a10e0b239e56defd00c5e3af110302047c435bb500673065023100ce001febbe299abd1573459942f087ab9b9ee705b851e717a6cccc920e03cb4e763a5f3c98eb7af05cfea05c8071c7c602306b1d8f8decdc0671dce90ad8615907fd807a0578451580da60f8d49ea2d2f4db7afe38d501ccc3647647f73aaff24fba0302047c435bb500683066023100a1b8fe2b490059773847368286995bcd992597c567c83204022ce6660439b715e9c6e8c7388206bdcc1038af23f535c4023100fec59c32ca6d68a4cbee0c60dbb34b08ba0e68b9fbe0f5bbfdae772c5b48189007298686479c911fa75e5800cf5e607b0302047c435bb5006730650231009be261a2949d81f7403f448c123193e1fc2b931f92c05e7cb0dac6344c2a165f67358b5e19bb21f9fde8df69cee8c9e002304e9a6bfadb5aeef1355c9dc534c38b6f5dff80400bfca6c932b617a8b21142905f3e8b984001b4a55351f67e6d2b1d930302047c435bb50067306502304329ca97ebd7aa63525f36af61bec057c398f8a77b5e0d03ecbf69d84e526542a970008127805c47933d09fe162085780231008b2cfbaeea485b9509338d0750e7d65fcd489a85ef6e0d936eedcd72085630f27deb136ce0425115df427747459db0040302047c435bb50067306502307d7a7521d6945879839616b2848b85d2f4744b0665f6d2056050dd9402a1a221eb242502502f507d30a8e539e9e71fae023100e445c4e0d4836403f07b335dd78443bcef5bf31055d28e4f95dd5ad5e2d5a3d90be292743e2a1a3aaad184e2554b2ddf0302047c435bb5006730650230360ce8868940e660ecd20411dff851ce8490d9a71fece7e42035a62b64618e18184c3d83fb7f70f0c37e616b91fbf14d02310086805ad70e11e80af2db139ae29df47582cf2b0d58bd0751a99319a5efb4ffba68c84da9a37072b7f2d0a349aae58d320302047c435bb50066306402307faa95560b96277703a6bbc40c85b6b10acff9351b1a6eb8904a66ed18a92b57896c8a58f739d21918278f5e3c1c2fe002306ab9d1115c743f6f9f34ea605188cf644a027c46aa41cdfc59b871960fc5c280942d740247c7dcf3dce4b7f2ecfa15420302047c435bb50067306502307655041e41df457439e77dd36aff36b629d16384274c8520bb8243b235c19de779beee08d724114d7e8a67f341bb547a023100face070b5cf8a08fad55e13a7cf154d0a22f27217af72a3984c187c82378a8600452095491eb7c971e45d06f338bb3f20302047c435bb500673065023100a6f7e073c5e283fe95d316fac3fe39bcd11cc2b813d2d4434d87aad11ddad255a91c45d1331ce57a396200f8c75d1a140230087f5393073ef86f64afda79b51e56eaafe2b376b3c5d803f6f664fdbffc6b008f2dca7f624e46f4479e03cdb9fb77040302047c435bb50067306502302c7bae65fabd0d7a0f99e381233df45b7c7878e747a1050732f6defa2d786565197f842d3b0181bc9a418239d31f5426023100fea6b716325e005bf9ec86b8c9fc27c9cb9a23e2aa44dde3db910bacbd41db9ff51c5e8d44aac8de47c14f2085c53fb00302047c435bb5006730650230377386c0b7ae578f149e217c0952ce928efc9c0089c0905c73af26a58138b461b7e40bb6ce9247c94d815573d5d32b45023100f1918268bb32e6299cc9e0429854235ad8a3d478e153a2c0e4e88d74e9ca7bc13d0a509cde7ad19163c2d56e2706f4f30302047c435bb500663064023015db0ad2bb04c12e61bc28e2d8abb7176ca73daabec109eb09285a1f03788b47424679130c93c19b47faae9be2137790023074f63aae018488600ead342b623d02dfc215a340233c873c1bc38d40e567b2b538341a9a87bb2c617a3feecba532081a0302047c435bb500673065023100b1f751c94e5873fd4b0b3f63c1179ed85e18d8fc85bb0352b40c434a321b1626c18c0234b6fab2ea2925a3d447d5421002306902a0ba48e3d4534a248df3bd11b18c67b2dbe74758c0d9394639d5a27732e22875165a1a9144ea437ac0f8fe9244e40302047c435bb500673065023100ab5f38d2e52c549dbbaffc549562c9fad326ea3cc4b937d69dc63ba58625b458116b8b0cd91960e49b681aedf97fa8a402300751dabc4fdba34fae7aa9aa8a5d39a46806466e1739d2d6b9a80e3d3c2c43ecbd0144e78342ee049616dc2290cac6cd0302047c435bb50066306402300fee838a74cf0964c4cf60aa15049e901f63522134f1736ddda28e1f06a8321765e6995b561df76a21cfb9fed14859cd02304f460b45dd4419951b65ab6b66b544c2b8b729796119f09461867387d145df8ce18e11fc1a3f074d31ed98618b5602010302047c435bb50067306502303230b94c6564ad6757de1c3882a120a54701a046d001f481900527df0c1f55a0fc5e4678bd6b1ab73f0dea84253fa12f023100c1603231b95da03c2b47605c8f5b1a02cd98a25f27a7c5afc089ff37ff6d0678149d8fa759d411972e9fec420d87f77a0302047c435bb50067306502306d039a52a52a19a92edb9facbd812b4dc9dfbc7ae801dd0e281bd3d656e55bb0904e6ddabe1d8744bd655d6612b93ad9023100ab499a564fb0c5dae1ef49f9953ac5b0365d47dbb91d12c67bd8c1122906ba048a315659ad024fac267d436eecb7da6f0302047c435bb50066306402304adb57b29cf0c4ffabdd26f99cc697cef66f41193ed1c9e033d5ba012b8690ef08e55e9082895f8eb708ab63d8c6ae2302306adc956c543b404e076678b2e0c34944dc186bd06fa4da4a1f1c5a80f528e6bb3c8d05b217a6eb9f11ebbb507e4129720302047c435bb500673065023058ba823c1731745541b051be2820e1f23c29cd69d071c77433e404f747581d3591021e13c8969a553ba3e1f8d851d2e6023100ac3ef2620450f2903346f842565f9516f9302c2ffe916eeb3b244df8a5931469efd4933198b3cae2848e2ba3993502d30302047c435bb50066306402302417db6c1ae4ff843f0c66559c765e1982fa25dd992be2ecc7ee71b8be7b6321f5238b8c31feeb9d7bfc4afd1327c5d8023057471ce52f67998680c1a44440da8f2745ac9cf31864ae9fcbff7dfe998b2b1bf8544c8207dfd65db820861c7ad6bcb80302047c435bb50066306402305ce65492f8d3e5618b8244e7672eb63525c83bf2a807705cad679d3c29386279ba882bef84041d29a07132a9508e3062023037891d64a702f6f57008b12dbbf92ff13c9d5039cb507825c67f13adca4424d65afd355b74e8bbd0572346af8cbd76d40302047c435bb50066306402307751b63f5bcfb32f678b374fc8353d7d14f04bf17d3a9204a4d7b7533ece59939e45383097464953a2c6edb858f6f92b023006537171fbaae8d64c8ded08378f18f9d786255c633f9d6823f9de0d54342505a59c47dd78692f9d1fe22e540d90750d0302047c435bb500673065023020764aad8d0f603846877f6ee9c35cd76fd388ed897f18bef59b46230722b2d8439976365d291a743420471ab0d3b207023100d289d8d9c87dd14250d06a2a63f8a52f1b73702a898394debf0844ad62889bb38f89c1f383e4daa925bf40b68071d9130302047c435bb500663064023049d0b981bc7fc554206ece01e04489db422d78b5f3bd5745fe43c758b263357c90c7c03452221de099d066e789322ef902304bcc52227dbba0ce38d190122b486f3665bcbad42a974eac8ccdee803b9f49fa31c6c2f4778e0a55fb0bc5be9f6bc8a10302047c435bb5006730650230315429552373c2ea4683f2c77089fa4dcffffe6a0c87a64e5a3875f4662a7bcc124ff16674f4d3954153b0c432ad6e88023100a5fa78e0a4c47e3e8c7576dfe3be8ac152da1b789f3cebf34119db50b9e4dde4e57e4131c403a435f3ea8327d50b6aa00302047c435bb500673065023100aff90c4d772e38f7296de85645489d6d38b181089d4522045bf91c07dff7c4b5374ebd84b19963042913a9c3e625e5c6023048be8a3fb35b8d672a3993ddfbf5c67009e2a1d2b866489aa85008774bdf8e5533983d4bcb49a8fa718c56eb3dcf2fb60302047c435bb500683066023100d9bc8d1ec5b3a21654ec194d0fd5c9c9a8e8470b802a52f6e1ceaa8dacb95125d75e90a080c0910609baee8c0ca94726023100a5a064a681f3ea48999f4a4417590cdbfaf1df7f4b79322a0773a724dd3b85b86d8ae975e60b89771f97e6adbd26fd440302047c435bb500673065023100ab9c2853e51370949033cc23a91cb76eeb9eff6e560912932819c0b9b1108d4663b80ceaba225f301d8c6de9be6924e602303c6a5f45b58809f29d43ebc83d6149519b28270cd7c4317c933445dfd13e423904d48c068e3195f5fac6f74c91a19f3a0302047c435bb500683066023100df737e25af2cb7b127fd204141f33dd89ed57142ce51773ee91e1149e720fbc8e8afd2adb03af639a29f5fbf1802c7a002310095f0f9a4aad61d418ef5a2c38e94799ee03b33b813d5db7ac4edb1d46230f16a9d19f65c7d371f3ffd813f5561a21f280302047c435bb500683066023100dc9f6b8001d000a924843c49755ff0acbc569c6ae40f2a1f7a2865c919914b5bdc0e0ff5aee64a91cd54e8833917e602023100cee14a429b9407f1df96eab779262c527722f107c83859b6f2b7c40119e374565251d91ae1f54486c70f041144d3c2f00302047c435bb500663064023069e9a8c63e2fdfb22c2f8411fd02bbd572b47a3fe43841040dbf2e66268305af0ac61a530d640a9fb5b7e9f0af5441f602300c2f843485de68dece94b129a2b1c367bd48517c674443f004bb0f04319659458619f7863f345961bd23c4b844e5603e0302047c435bb500683066023100c5ace35de033808d968d5b0388395915cb5ce7f55fd02cf340246b6cd2114d1e1ddf25622dcf47c2e13848f04e9846bb02310091b5292c616cb77aa270b56add5797eee7717d872a74f6a2fadef3bcb284138b441560bae308de414d814a52abf9422e0302047c435bb500683066023100aa08ae383f85d73395e0c039e24b63e0fd0cadde75fd0b51e6ebae28b21f3e4492e0f19f0513886a83bab9fd20a4a10f023100d3a2e03113ed411df3ac8f1856104c69e79b6f0f39ae3a34b1630d39c76d82eb738473d0ef722615c953e7237a35b4dd0302047c435bb500683066023100f1894ce0348bd64a1e09408e2df574e1ce1ba0a88f86d216e65c1e1dcf1221b33e930747d06ba687f15bbfa981a4a0b102310089bf8e07736505451e87762e7a78ed3f91fc958bec55895c521b3907350a005a455b64f0cee5838005b77d6bd7e3baaa0302047c435bb50067306502307047c834f2b61c48b128748623ff9fe027c668530bb46f73bcb2fc39c497e461d8ccf0827eb6d41386729ff51a7f35fd0231008260cc7277d29c748506d5c271b785f4deffb59e7ba367e4861f9cc3364a4108d957f4533198caa7c0dc5f199113408b0302047c435bb500673065023100a25a576e2d9c62ee0faa49a34af5892e17862a6c04f84b8c4ed893f82ba501e273cea7fdc0adf04ec5ae4e6d775b2a80023074bf0775c0202ee6fcee3ade1dd315a90f2099571fd1adc87edcc950f87a212afd245f5c5d48ab8b912b46665897933f0302047c435bb5006830660231008aa30e2b1c9f0bffda90e7c00ff2340a1447702cdc2bcfb637a49964a5366ac119a48a3eb3c404b0da45bd1e3b27c91f023100bb54fd685788b3ee7f50ac1d06b36134bcae68bcd3060e4bd4b5deca68470766df8e9f7331a956d427b7174f580b05930302047c435bb500683066023100d740087fb20953c0d445f94080d6842c3ecdd4c6aab4e419cdeffcc1bd492ce313a755caafadcd2952a1ce343692f3fe023100da35611a15dd780fe68f9cfc385da4e1b406e384c8c46241dd885504d969f18ead0ab6773ca66cc4f8c70b943d421af70302047c435bb500663064023010b3e6db21a45ff5ec43c9d727c844545711f5a307c614371ce0831cece6f2bba5e5f757593ab4266f28ad5087a1bb8202300fc5434fc01df999a08f2d83a3518fa93beece9ada329d5e54320f84b947e8eab3618f73ca6e4e2fcbaa73219a432c8c0302047c435bb50066306402301d8b53b7f78d54043f5d039ef7f088c1f38785dd0672b3d00f1031e38d7b2cb2c9638dc2923083239beaaa52f25e1dcd0230273bca68e645055a4b7d711648c7dd078a8a35be5b6e4cc3ba5ee5035d58bae3752bf9ffa5a153c683c759181c2c00e20302047c435bb5006630640230775bea457d1364521d3cb7ff1d3f1007df728fecf086dbce789cf86410b53c76c19ddb8a947ebdf4888f86b62aad2872023008ff35938dd72d0890514f4654bb4393a42d388566f2b836cb15b61f2500a77c5af06ad488d6972440dd5af9015766640302047c435bb500673065023100e8ca10180a47be1977fb151425109d33a155b7d72ded141b47a4075decc3644ced466ef0f4e45daddaece810b33b2428023014d6872c3ad14f4e4ac4e2a9f8fceea91fd5a807153af342b676f1b9d877cd6137d412bf5d6241a166f7f1afcbff0ec20302047c435bb5006830660231008e9627879c0fcb107752e34fa1f5ed71984417c0cff7df31ad58ce4aa57a68538d89fb1c1f7c61e899e9c1e9a4fe0d1b023100f0fcbc62d971977cabce7b6acde1516916bafa0c4877c3f014505a809cb225e78b2c89f2ecd3f217af49af06a53afada0302047c435bb500673065023100a180e3eb4c37ce0fef1837754b1e34874fec43160dc2786aba199e453acb2709ef52e9268035fce86ddac8eafe80257d02301a84c8984f78e155efb347d25ddd22f7e4bfdead2bbdc93beb43e681be19d65ad1b91dc1c151b920881d472c0862f3980302047c435bb5006630640230372edf6f2c6b4be6d4b87d63288355f968de0416fee0a5a5eadbd8f95eef320b27e65480afe1cc8f297ed1a6a20ce825023027038e84d8db9ec19881e758ea9710a7e08c6c191f07be026f4af770f08e8915fe43103628ae9a957c5aed750d716a7a0302047c435bb5006730650230771d65d0233c25e9e818c0c6d5daf7360506df784398d73f3187b4e1b59324545a71aa42f50e1f16d6b43f87b94bfb8102310094f2e05dbf2e7608d61182f74e8fa02ed2bb450bd9b5ce47b297e03f078c6be87989d28ff5336dec6d5afa83667594b30302047c435bb500673065023021b5cf471171ccf0310e269ccd3a2832edd938d761506534cae310936d8d234c98209d6599f6001fdc651b57d7a8661a023100b0ae931d20ab7df99c038284215eb174fb101e8a1e4b8e035eb643237b3555a3bceb1a26567f6a1aa0afee49b787dfe60302047c435bb500673065023100ac14311de89b42f7278378713369510f2852b344ce7090f17eef3260a3dfc79feb2e14f76e61b3fcbe180eb2bb8472f8023074793b8dae096576f465d89983383c0396827a9ff0340569becb5437e3fed7d49467f7851ce5cd5007d8c8a560a9ced90302047c435bb50066306402304e1ad0fa3826ebab4e8c5071dae89d741c31b5ebf426211b550da679aa012f2964a51fee138de969fd4bb986e895dd8c02301f6cf1ab17ccdffc830fa21a5b62987d60ef8234cd663fe815bc8d86e5e182723e4120adc25f24380f1077a6f8056e150302047c435bb500673065023041e6c3988e29c4fad7d00fea6c032236ded71faafb99e15937f0e9c2df9feb824a757fe2612041a715e3ef871ef63c240231009ff0e0d98fdbcc011be839ac4faf573e30ee3a4a9934cc96f55f0e7763f6b3c0bc6ddd766004df6d1a01af7187ebc5970302047c435bb50066306402302d9e0d0246d36dc97b20a414948eb8965ebf5e40c85fcb314645c50e69aef53c32259347ab75723f7642c3f954638e1902300e1be39d0ff11fd203b5270a73230c6f80fd77cb6a6072c0cac29e8850274b7e2ddbd36bb8270bd841b311006f69d2c90302047c435bb500683066023100fefdbb2cc8dda28becf9f0797087752cc2300fc03e05bd9780ce0f4c709753ebf44a8936bf417caca7d0859cb8cad56d023100a645163ca8ab8ef8987a82f048e0663b9a8993d242ef72d64ab025e60c7555cd2fafcecb7b510f8c1b96bdb979f284600302047c435bb50067306502306735ce7da6f3a16488394439e8e4c6748ff45f365db8d492b3469947ee3f722d1a8749443a5476b63d2b7ce3b1318228023100eb93907baea6d617f6e759ae0635e57d421469f01595a4ab7cc37129509600771560a1b8932328a3949ce6e2afa7ac740302047c435bb50066306402305940817a193e5b694db55a0e0f65f8b2e2bbb895ce2cbf7d7af8165121158cacb3620078bec7e49f7bd0163fc75accf10230512c6b3431932584acbca6f4f176b5b7d3c6f06d3a4f18c6c69924a174d24e419598cc63a98a3d84004a3ae034c735d00302047c435bb50067306502310087b417c8e111fdca1bc88423dacd8685364b75d0d3837cc59c1c3e931d3dcae521699c7edc2ba20adb431eb5e93e6f0202304db02b63211836b5557f80f09b56f7e8588201bd0b89af255f1946a4ea1ba0042c7603e3e789db7ebd57d805e1f0942d0302047c435bb500683066023100eed874c07275d02efabc0f790c64618b6a3a7436763b5ebf595d6216a636c4e6c542c3c06395f784661b801c32a958ae02310092c49aeb6718f77cb6aa2fafc1658a068e8c62d708269e0210dd640ceedeccc142a7d6c51a7941bad76b449978d0455e0302047c435bb5006830660231008ef09300345735b34f937b67d8797684594f19638e9e4adb6a3e4e124973d278faab48c578c632ba3c952a4ac38a5cbe0231009bab6dfd36a5c521b5b01b5e8a897ea76adb9d6432f9aa2c0c9fc3711a652e8b927f83cbbd032de873bfefd7f2abd9e10302047c435bb50066306402305646bbf223d08aadd99013fae811564da46967fcee6bcf9a0c0fb0e097967c2a2df4bf6b965466da43aeabd830717ff502303cdcacaacc04886bc5464c230d11234fa932492afb13a3dbb412f01462715cf38734faffcd2302b94f81d5a9012fc4e40302047c435bb50066306402305a0d294ed84f40a94a160b2ea6d59129723ae27cbd153c4652759d1e096e7f5006927589a46d7c2712a44e571cb21c48023029aca4ace48dc5e4166da15af5abeddd1bf6102d148ed2641f9344c1d51facd430963b3f1ae0ebf3f933c0e35d2f013e0302047c435bb500673065023100eb9a05de4cad4fdd86cdfb4161b72b63eff4e22e84c462e34eb79b8f4c65e43ef857d66e64f8d442fee11bcca1c4517e02306d62e542cd29d693b0606b9a0557ad85386d1f546cee6a89ad6b446d613c762d4917a2e926064e2486dbca3b88dd43ae0302047c435bb500673065023100ca2b3afa0bbcbb98bf790ce22efcacb018954bf125b2dca8732116c29c3ca4443033ddac39781aadcc93701e0e1a18ee02305b59c5f1200dc47d84ea35a8e718737d946cf6bd096674f3d3127f636dca5434a253da450ab52dc46c1e4cc4b5d082490302047c435bb5006630640230492797f9639c6a9ff462a06d81779919c4ca59b9eb405629dc7c4ffa7852d56798940685facb3892943f349f075b6cbd023070ebc54296420b1e377caba5f74955bafc72eeb5e43eecdadbcc20fd68729379c5f71dbbda581c1e0fc60489cd72322e0302047c435bb500663064023066113a584537c99ac28248122756ac4178512b51a4eb36ac4acf012dcc58938c9dc16bebc8364b65c35ee6b792e624a402306b0b3e419ab4065f568ea33da491d425abe2d9785eee0d45e050dff2793136622ebe35e588fcc15fd4ffedcb4d762ba70302047c435bb500683066023100ebb561d4196718d420eb81d863dc2f2096ea201da498d8e8c3018459efd8a7960ee533d4483f326895c86a42df6adaed023100b5c7a38bcd73e5ddfd099498be9b347bddd5ff6a99997cc6c50630ccc279fc43f19891d97e10ec1bc42e7071e882e8800302047c435bb50067306502306ffc8b1f88adf66bf05579feb0c63d2424e5ad42a485cb7df062f34061f05c14acad13602d2a83ad0080e695146a2d5e023100ddc89075c1236b293bcb9836f11ba6eefd7ee38898a29a16d4a3d161c9b24bce13fd8e516e0485a65c531869343027530302047c435bb50066306402304cbe9c9a446c8921a75f97288ca5371be95a25b63efa514a8e30129fd382d2f3876c1ca86998b15cf78b9c0464e31c640230628bf753a58245dca7fc5bfb5a01fff2def4ce3c1d8eae5495e8cf8b8eb9495f469f47232e5c731f7db48bf69d244c9e0302047c435bb50067306502304ca4b6f6c5ac543182d94074b37cc500435e0eed863a2153bb56c4e997c4825c3119eb03cda470e26bb0da4ff9a00d09023100b72f7e041205472e0db4af46edc45b29fbe5b32c2fda5608c767809b4e10b1429b4803a1430a82f98078e656e3fbc9490302047c435bb500673065023100de772e85716d574a82c256b1d4c7d457d74b4f63074bb641f2b28d398e7f129953a016a9c0c8b96a3a760904466871d302307a5343ccdad62035721386347dadab5952ef48d87e57145cc7b3940d5f03c10c1f9fa3aa133f16786ebe151d1beb70e90302047c435bb500673065023100de48d775fe4d943e7f16b4bcf178ee4c223ba04ce793b05f1ee5cb622a8d40996b1b1d632d07e54b88c87fb318b0276a02301646ed973deefe2bab991cdb6186f554902c7f1d3aa045fead098da608df7599fb85a987d296731c5c7515ac402af6050302047c435bb5006630640230412664d3c800a13b793c97827f105733ff911b7ebbb5bebb490ab0f4e116099d0703f658932e6a2ffbdb22e03f5f8bd302307311eb4bc170afc43f2174a6b0375545131a7a24149948f525f53acaf2ad9441858e5a024316111823f890fb88e5a7b10302047c435bb500673065023100fbea61916e8464dd93025fdb1e67205f8e10e738ba037cf1a0edec3b638ca49e59381f6e8ecba4f6ee9557500e877be40230177261b7243f801a07c0d49a3b21ff8e91e891fa230a81a73a788a5a475750275de6646f2f3c002a7b6a2d9fe59a744e0302047c435bb500683066023100a731c3585b381ef2c59511409453ce0f3e619233a1038ed0d5bd3d0db75b6a55b9d3c4a2eb8603a4330088b32076fbe3023100ea44509c2d20cc92585dcd08e58d95e19f43981153b5c10325c8b3a587a14937e7262c27066950bbe4029a5ffce10c170302047c435bb50066306402302683740a05145e6416a235369b8d8157635363207bc68fc96c4428be688cf01dd20db0922a61f59bc4b4730d1e72e78e02306ca0a98fc3ba959c25a0265bd96ec66f10b08efe4533d1f745313b1c6062ca69d20d898f93a98ee6459e8184d48aa31a0302047c435bb500673065023100f5c903b824f52c5fbc9ae0189217f14472855001e9e7f1c643dc47cf6196f4be1161619c793607989ec0c4b4d44e363602304e4241bf2c9d38544192792efeb9187ffd0ef43efba894e07b9278cc9fc5198ef6440970ae0f5fd03de32df3180324200302047c435bb50067306502304c1a3f35e9446c215b2c834a8d5b17a9c819085342416e06b717ccd467b4ad03469398121556379545089259ca04f774023100b7b86d7a16f88780860eb90fc5518b0a882b856056a5f91bb1ed26a601bb207803375d28e4ecc7d5fdc8c33f25ade9420302047c435bb50067306502305d6d1efcc98ce213728128022dc83c3505d4e1d5caa48c1e7f7d5d8df3204c9f1b4ff93cdf2e25bc430101e9e7e8ecb302310095ffdcc749acc6bcbb1ae9d6bef0e7740c116a42ae5fcedf59dfba01a51af6abe61efe69b1a0c0e9577527cc230451b30302047c435bb50066306402305abac0f7567598bbd66bf3e478eda3a4064f389efb46a03ff994826a5c17eb9e5be01add2b989e027fa9fa41d8d1bbba02305fa76aba90d0c229332947295f3dd0f1fc12c41dd7c2a3ef69e7c89f1aa592fcb1710690adb24514f7ad35a590b046820302047c435bb500683066023100ba271f27bd5a7e6c009865ec242f8074e98af95cff0ef03a9314517a9bbd0044eefadda1901c527b77dc17a2af8258dd023100f0c0b2b8ece09a8348bd323d94387ee43e4e2e8a941f2454e5cc07b6eadad66bf931cc5941c34098ff00531928d55c9e0302047c435bb500663064023015b59a3cd69c888e4d699b782da5a120245d4dfa391f921923786d21a3fe53e4e0e6664a8088dcb187dc2d84a8a007eb0230376550abefb4416bf6e373833ae0eb5158aeceb5293665653a7cba66769130ea2662821c7752231ea8a1bccf349592370302047c435bb500683066023100eebed0411060e2360c6bffdf78a4642b92d70abc8cdbdcbf8af5479ea32061ee667eadbd9e40de5b51c8c67458b522e602310088dcade94d8a724700edbbb6a5f7934d15133b2ca654374b506d44f2d7fcda4807390c14876a634f04e3b87bebc0b6730302047c435bb500673065023072967e98234f8f606a8c8057d72da063ff02f7048c4a8f0797688ee7697c763f567da9605867c0a9356afc59a2e49187023100c684eb7b81fe84349ef819e3ea0db42ffb86a2879a484718c914e034e39a3bce65dc23adb40be93cd984f22ef69304c40302047c435bb500673065023100aab39e5325598c9565697b687b1fb9bc63764b54b0b69dae6a1a98622f8fbef3090cbf6aed846a9c932a9792ccd51d8602304e2c60941ce2f47c57404e8ab973bf1d6c1a3e79ee1e8890784e26996232ff7103b7fe2794911d489339812da1d4c1f60302047c435bb5006630640230456b1b09a1eae9d0294b3f4e255e8d1a3138cb693bf8578275df98efb0aace2834ceae6d6f804fc57be6d8d15940427002303ebedfdae7b03b42746f1e5901cb639a4908e5c97a383de3fe42695fc4173aa4f31b34fb727d67b98fa3399e5c99cf730302047c435bb50067306502305c4cb2f001fa87f3c1cbdaaad43f3a0c151b832ea1a3dfef17c4df58382cb70448f6e634150594d814547cb3f0771f9d023100e50e3ccfc6832681b0e66ed1a5e41349f11dba836912d29e4de6c3d613c7e2b8bbf95e44bf3522feb088756d4b7d0de50302047c435bb500683066023100c150d20e7e6b2881833c3977860f89d77a6c5f317d3d97554890e0f5100dd7c1102dee71ba61deb9de24e17989934a95023100a71566d51597a0eca09b10eff0a7a3ee439976b416be40bbd85e86ea85e61a13066f510c03c1886d0fd8761fbcbf88950302047c435bb50066306402306c87df557e1f398a2d14e066c428c8a175e1cd81eb63b6fbfdf8777a76bbcef4d82e7ce53bbeaa0f595ea3cbbf49f803023049668baaa09f13cc12671ca79f29eb3f3bf0d5621a41578b15470d603d2b526a31c1ae30fbe0135e372f06e36bd4b1640302047c435bb50066306402306c62b8ffd7892ea24b2a86a0106fb2bc862114fa7e00f475201bcb9b1248f542b2371a286c7111b74c6a2fa96be220d9023033d961be5a5166b895296591f0ad3d17d6cfdabf400b9073e6ec8d3fb8c086be88b61b94dd5e69284a91def60d0bd96c0302047c435bb50066306402302866f7ea8832c0a0eed8657ca10541f1882703dd83c633a9b24cbd66cdf643e6cf1a0d4659091a729d2e169daca864730230364d793ae688e9b6f6fb32c48dc46533fc40aba7d4fd67abd4f9f5ce5c9a330fd826afad9d6b9923d4fd8ff21f8440020302047c435bb5006730650231008886eea042de0e765b67118dbe4cf74eab66e2079aaa6b467a1914b8f913aac21241f666c0a554bcd591ae7b44d3cb1102307562483accfdccf4d11a553542325e1f1a9e2f77c09a6da2e724600526237bb0710dfc2d8ae06ec352a6a4094d85c4f30302047c435bb50067306502307cff7fa9fcc5dbbcaed002fdae802ad8b45d48bc7a1a269d8000173c8f6b82dbbfc18c2a801267b39a6f760c8b73ddd4023100cd5849f4caf0cfaafd4099b2ce050275e64ded893ca13fa4eb39ad38b72105e6f5a3d2774f7c8d0de6f4abdb748255270302047c435bb500673065023100fe4d6ac368380dfc09bf8400ea48a7f2b37cccbebc55e864b002b304f175eaa54826126454b997198340193f923980e4023019b4d0dddf1a00174f85aa4c18b6cf5bc4aaed26c3ed9edcdfc4594e2552fe8971c67db263031f05994eaee4ed91b1150302047c435bb5006630640230707b38147e00898149bfe8f73c8a97196565a95c7435aa9078568a4d4fdb1546688580093fd87d362682ab6fcb57742902301cb3e3d24489cba48e82a731c05236225374662f59b513610dc98776bfb89812e3a687830f3fffeccce67817d10b7af80302047c435bb50067306502302800471e1631edd20932caed70ba9b8af2884df8f5f17d76a38e2cc2e5fa0f4d19511f595df8215eecd95cb0e6ec9229023100a91bf021ecf7daf0ba46308bb500cf7f6dc45f015cc7b60f9c44089bd5b9c2b46407ad9c3d24afe0063a2be49a47600e0302047c435bb500673065023100d202a1f152d068eec43d6a8c27e81e193f09d2c4dcf52b3b4d6cdcf443f6a2f1fb3e9acdf399882bca81470c035cf91702305c38a85d21b688d0eea7aa237fece4b7984600fb1ed69719c60277847332d78b7b518e8ac991b5ef17a4e50e1592141d0302047c435bb50067306502306f838e978919fd6b945c8876117405460a771751729f6e562aabe7dbee648e45ed93023ecb7a3ece5ce3b5e506338e40023100bd21eb18dc3b2097cb7abef0dedac4d5bf10d038a5e1b7f37c83edbef3369528b74d5fdb692fe75fade4f105cc2ec5770302047c435bb500673065023073850835864de906f39a101f31f3d01b653989c2b06767c97e046100f92887366f44e0f7a17fe000c4d0aef7b241e931023100925a818becc8837456624592439c27c1a69fd6d2ce9cecf8230a41fc74bb8691042d65faaf58c39081fe19f9c588c97b0302047c435bb5006630640230604debeccae4db1a5859e655487bfeced95f1bc6a22019b98258cb5a1dfe85dcd92086b28e9fe77052561cc7aea9cd370230411d80f2b13a27333295f936437859fff85a12d2710cefcee672626c91130ee631bd73cac84e74fa592f637aedfb5c5f0302047c435bb500673065023100cc5013a97667e3c248cf455365cfdc19512a7664202cd08e14c9c9b064568b3410ca64d3f27b9b16e4ac902a99e7b30f02306d2a0cfbfea0d31304a03d4a51979aa2d9666ba2d87dd13b68d4c82638eab014a4d4295bac25bab50dfeb42625d0d76b0302047c435bb500663064023075b745d12f17d36911c2e87e913bc420ffe61b7a65224efcf7d09464fa2176c40a142ffa8fd6d4597856c05c2ca9bafb0230617c7bea1a11a19e0ac0d4dc4286c652901e5dc00ca713461ec953609997d0bf46b792d3055f0d43d0f5ffea10df95de0302047c435bb50066306402305cf727dd679ff6093d05598b5aaeac26d03b0b519b8070afcd48c4a306a78296c90a9248baf695138b4fc7576083dc6f023015b583f4e4723a955ae55cf33f0b2046c05324189349b8a8967fa7e03653a1b407e09a3c08c770929d4f6ad2779ca5700302047c435bb500663064023013dfc96bb59b4f47ae4eec0451d5fa5fd3a0bde5b4efb4ef0ecfe88dbf1ff8c10ad151ce84b720acc74af900a3a81668023056b84997bb6c45fb01ac907b8c61f8e84ad6038d33a4835f8bdfc0cab781f1e7777e5cedee5e9a881ac655e0e8af4d860302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b32157f62fa47141f8aa093deb1910adc204ca28c533f2ef89144f57b386c2f9f1fae63cdc164d2644f2410cf286a0c60231009f79236709db973a62c9f03fa175b13b1e70f43636c1c00921a8e1e3456dd45ee45398f039d0e8eb13d12bec6244e18f0302047c435bb5006630640230071e5389cdad5649b92f1ec698be897b395dc7b1dac98301eb83990aa14083e661df4cf56a69c1b0b5ca6386378aa7c10230413f0db481baf9fffcb3b68749b718e54407c6a3f192c7536c463454f82626b14fa2d0b07a3a7512e724ede84ffce57d0302047c435bb500683066023100ab11642ecaefc07a4177bfa23eb1a4ba2d20a44b8914bc1dcdc7c3107a1a894070f45e5f4c047147963e3fc4acffe47a02310098cfbb96d1b7f5d8cc8744ecdabfa1d33e96cd2907b682ccc9be8da2dbd24241fe3c21283f2ee090583a560b327fb7f50302047c435bb50066306402307e42df5c7c876cc5df9bd6ddf268212b88cc6ea3bdc3806b606a96fddf4826c0c61aded58259622a318576d85714296b02305374bfa9b3e479ea0c66539fc5d270f65a06579cba00d300fc319c625d962742e57ad0e8690351bfd5113b8374a309d00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100bc577b6b7467fbb3dc7e97ea31203d24cb23fb4bb853e9519d7b40aef95ddd94364acde816e52445d9044e3e2fe4cddc023100bb9a2d91947f43f7a39987d107d975dad0066999e01580ae52de96b53efb5ab82cadd93bab3c3a0b1fe893f4cd2d524f0302047c435bb500663064023035bb6c4a47e36346382c6102130c55ec72293fbeb33f653dcdd850a74f41c3a87fc606bb16cf272f2bed474cf1c729ba0230644058188274e5e63654452b624819b5e5602d36188c5a7e9dd1df267439b824d40856c16e0c2513a0872fab54e3b2600302047c435bb50066306402303f30811c0208bc040b54eefdbe1e7d26f138483488f5794432a22ff3d30e800a61c5dee6e5b439f2df7dfac89f265878023055b2b15158ec2a77cd8d073f618b651b497fd6e7dec2928d70461639acb0be7640a689fe9b5d1e6903858487fe53c3aa0302047c435bb500663064023020cc61f64d24c28c13e352b85d0fc68653f479cfb2abfae7808b57a210f1b2c871659462d39b8beef228a385d8949c4202303d4586f891b59493989a7455ea595a4d4f60c581e2a865c19aeaeb68b3adb2362bdba5af66e1371499421156f09de4b70302047c435bb500683066023100db989a625f6a3a029c509cb08233f5001e18a1e5b9c656ce0d7497394f1930e070a526b896f77fa77ab89c0505161486023100984f79b0059e806b61bd80b3ed71876004dc57cb1a1ded3bf72e593948e2910afbe88e1abfd95dc626b6f5b8c7115c9b0302047c435bb5006730650230516a27de99df04fcc759e1655ebd51149bc8b2f697fce30858f88554c49a12eb13fe77afa8b8f973c22d5f779846e886023100c7a403bfbf99cc00bed5f6f91f9d4023689959381fb51add35a3ceb84dec384575172d74f49dc43be8db8f77ecd05a880302047c435bb500683066023100812a11d28073c094354f3fbebc12790edc10699aff1f673243371c71688d62f313a0998572397647ee6b51262965da8502310085eef6d766aba8a144a1997a23bafd3852048a332800116e4fec8d775fb205c7a823bc73dad0ae1985e1fa2234be36180302047c435bb50068306602310089460be1cd0cb0b4b81a0efdd120abae7a3cbccbef2c68645700592fdfb90d99aaa1359ee20cea348362521f15955e690231009b47144565f8e49d6104e059a48683b1828474f049658eb42ff1ad9a242aaf0be51ad1a1a1eda64340cf6471fd53c91a0302047c435bb5006730650231008674ef66b1166b5be72a89b0e09b729ea0346ecb32e8b07adbebf1fbccd4e874617e889a90b81af6c291b53240c624d502306f383f64376b5140b0780d3ee9a3a7027d23b923f265a064c90a68b9c00cd9fb2fe58390d26031b995d7ad4f6108ffbb0302047c435bb50066306402304488636d8eadc842fcf4a590b39ea89afea68651c28f5d54c55676e1bbc17454ecdbdfeb2c3fc43da3e8aff5b48cb4ce023019ce79c81485f6a721e960e013303f71bfe1a0ead1ebfc271590a105298fe57dfadadbecd3285ef1a341d4494d395d250302047c435bb500683066023100f6e2abfd15f512813b11ce86ec574b197d25d82c4274cdfb43133398a3329a4b749a465bf7a2c2e215ae9cc763611070023100baf83df5381142833b6783ee23ab1423e37706b4a268fe03487e2ef2ce84a7313c2014f8b9e331226e4a79b55627a59d0302047c435bb500673065023063d9bb8e61f9204f083259fbe4ce5d6600d0f5ba718028a72d23925dfcacbf776c79a192d9677c135d763fcb5aa238be023100b511cc5a08c336523684292fd0b5130fbaf8ac8d0b9b1069221438ea7b92e8ea5084ee0b626346d9bffa8f5ae48c2d360302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023078cda9e3536437911e6d03c708e106efea9d60f973dd20a0fc911608cf757be349cf2fb903212db154f48a2f1d12c331023100ff26aa3b12095e42c36fb2815ce20f3c9a0f15454e2fc7984509fb988e540ccde14e4324ca8fbe4c4e2968e2638a178b0302047c435bb5006630640230138902dce1fa77ff5c3a95f2a3d831549dcbfcd06da527c42e24fb9a745ed2f5f54e94189ac1b1be22685c183a45d78502304d65c181e09387907870dfe974beb130fdd8d01b03c77dd92b9c7102e850d4d61e92bb08670929cf3e2546266a2dd60c0302047c435bb500683066023100c63f9f6aca8f113d55bfa69516588ea67f860c597cfb4143a8b5c433be5725299e895049b7c93e34d51272ea6bf17d69023100c35eddb1f856d3b60a13e6b913dcda456b50792cbbef24a4c73f03212d70075520fe2abfd7a313704df7abb31d2c750c0302047c435bb500663064023078da74b80dc8b4890e8d9e8c0ad5e05475a72749677fa15fa9fcd75c8976ab0fa2d799cdfa6698ad2b550a249ca2abae02301f7e24c90744c98fb78e6436a4a76a1e3be8099605d017b3fff197a5c7b27c1f2a12530b681bac0b3a5b6db8666b97e10302047c435bb50067306502310083348456319baf2200b7d49ff77fa9559e3a82a665b10e4c79801d95c333a5a0961f670d8f4612bbc6f6102207e72d40023040bf701aecb9b1812a00b39b08f7914aa7aa070e9075be0c7632892c639f8133a44e74b9c03a389d32af9e0fccba8bae0302047c435bb500673065023100dc068f766fad7aceb5756e3121c50cc84744b2d22c7d7ad7e9af7098540b77e75f9c9cac3b66470eed728d49b895199a02301a6ae149945def50fa5ed928902774e5f12fff83d61bf8b497ab001414e7d1fd7dde4354994fa4fe5b36eb651b0ebad30302047c435bb5006730650230075fab5c6815f5e309da12a58feea5ae527203348f8e3aca2b43f94576291141b248b730a962937699d60908abf14bc8023100e960b52711b22fb8dd18a1a4887bfbd73351bc5bc5ac59f9ef13598308bb1f7f448157ceaba67574dc0b85329609a7900302047c435bb500683066023100b838763ef67e24ee3d2ac6d9b14a736a4d9bce0c2682ed4d592b05dd9467359cbe9d5f3e18b82af3b7352363bf2f0f40023100dc10b079e6fc662a02b04f3a110ae5c3fa5a6f0e3d1496d18a05c7ea7c9a145ce116677b5a57ad416828192b10e684ce0302047c435bb500683066023100f271bb7ef99fb0862f1f0b8fe61cb36f0659363714502b0414391c82eb5801aae0286159eb187eb452cbef0230da1a26023100a90dcc7bc097f96c804472fdaead92895d8e72c68f7d839f7cefde6632de3d788d6f380dba6d003e40a7b8f6ba4454770302047c435bb50067306502306f8a72132fed03f5af7ed6613d3bcfa7a8b49f8ac1ec932765f735fc24d2a2ca44f375e9b4c66102cbc20952646caed5023100b93ba82b007edc28a7e1fcbae6a82817c6faab59ac71855f3ee0d7c3905a3d477ef8d24ac7c24acbd1d9e41f160261300302047c435bb50066306402304ea4579cf2298c249f7d58fb0b075759e97da2e8f460b5a9e0b22e049e4757b05accd99364305c336ec7d027cc89ec8c0230329a7c50f21edbe6b78a1f8ed54618558b7119f8d13bfedebdcd7e9a380aa8db2dbfc1a896605a58c013939edaa1af2a0302047c435bb500673065023100af928fe0ff1fe023674d8d0621b64fdd89a551df75eb1061656817ad20983ff54760c8ab2ebab1baf97cab1b38e0673302303cbfd067f5b81e0126c2e8b7f7c3c863cfb063b6ce3975e1d98d620631e44c6ba779a20619aa13d81a993563a481d7d30302047c435bb500683066023100c60d73d5b64bc50c8e9054418f07e54763fd9c178dcccdf8df2c7774bc7deae7e2682947522ea3edc34ae37102454360023100eabaae2ea3c45e14e67705a11a93c9cf776e477c26672bce047d5e65c7fdad4fad66f7763cee839ff595f3ba4b82060e0302047c435bb500683066023100e579757fcb855a9f0c6477947845723c51a597d5e97287e8d4bd7c051dc3f330e9f3df172c24e88ebd99303f4579065c023100c031e469705d6375a60cd0beac077b4948dceb0c06f9aa5f6cc556e1b9d5e0afe4c13601988650263dfc54e7e502c78b0302047c435bb500673065023100b1388c1c4de2c674ffe0b5709583fec829386b2ad72f4124d144b1f545fda0892dc1c7dfe1d45e5945eccfa18e5ebb3902304eb652b3aa4f1fa95e4f4a438cd5a645e5c8884dcffb03dce59fe4e12c687ad3bb00c7e6987fcfe40a8050e38f85d25b0302047c435bb50067306502310082924819f6ae493a9a6235735e9f2332dec294aaf7477e70f52316f69ef31c538f5a9080c0ce1c154bf308f4f1e199e5023022328762823a16c1ca95a27c58644f8c8cf35eec26d1d4114890a96e1bba18219f82306bca32cea0174ed08ab3abbe740302047c435bb500663064023041ed28719da0c392831a646fbf9041a36fda1aac76e707ac6e5dfd0b8ef8ca3abdee402ca536207583fc156b563724f0023062deff2d919c557bb038ad850829d644fef80f3d742691e6d4180f9b8affc911cce5ff740e22550219cfb0b2f7632af20302047c435bb500663064023020b0ab36f931bc52956edd3b998d277ae07ec55d28c07325abf4b23cc52fafd56d8febf3c9bc41342fa9a4f2bab9a9d50230018ba5092055bcbf33a43e8462bf8c2447e5d977ad9201701f2fc1751e21342376d177d48ccb464bf6690f8543c48cf20302047c435bb500663064023002b21ad6d3631e8abcff7d222c866cda3067ab4b87041664341a45bbcf3eb34409c474f72ea47d3e3fdb7d6dd28b380702302ce2ca64ea8c0945c46b637136821495a5e665391faa267f530a36fbcf01339d4f93c6d0b7b32dbe6775943aa02441ff0302047c435bb500673065023100951d22054d200cf0cdd52582fd40bdff7eaf2650506ef39c909d8c36c0f8c9ac2ac914c3218b3f5cb91a2b8b1d3ca0d602306788c57455097e5faec255714bfb3c1e3bb02a51b63cc9f3c4c31ef98b84e4b9e334b095e128a9721f1ddcf24564ddbb0302047c435bb500673065023100d9cf47a011a34a9c5b3fa72de53a05d23f9de899106868fd9f9206799f5d0cd5a53aacf9f33e94dfeeb207e8254b3b73023039ae5ab66ef7b48ac0a13a4a2f64b0b2597f022c2301b0db926d06ae0726387f4ad064e34c6054ae0ca102096cbe40ba0302047c435bb50067306502302df6009ea65d4af1d8235e5c52be67515b1b3bf21d81680c89f4d89ed25760eac9161062cd181c752ac3d97ba2a2382b02310098cdb411136c255ba270fe49368c33225f1c8f1e6611c6c39401269fa760af2503020bf14e7487735c2ecdcd9b478ba40302047c435bb500673065023100bd292083f2e71f3bfa073486cd5f1dfa2a1df13fd20a9b889c53738cd59fcc879fea5b8e1d7879d3cf86810e7299f61c023026c63adb948e87fb4cdb7104be9cbd1056386f2e38a8395405244b3d976a7cc6bbf297ac716933043f2970bd11574c570302047c435bb50068306602310080c62221268c0a6264675cf2514f3aa8f4b579545b8e26590f7b434f901ebc6e72a62273fa9104009620a49733545a65023100f219924721ccbc942e5ca931a15f67fa86213b3f7948fac3a6b7436701f18cdeafd264744b303b32b12e4b2cfefca5630302047c435bb500673065023100de15eb56f105f849ba13cbabf6830f0f88d94a909b8a8f90a9bbef031a7c1b74361432a59cff3e84ff88ef7ee73ffdd802300ad3607876dd9289b34f3d61b9cd837098a14176a9fd0530dd248ca796ce232c35d6ce212325a05d6f4983f05d1822910302047c435bb50066306402306a33e520b9a08d9a05d2c66fdbeca5c038ae61f13653754273463337a6928cdfd21897decc156f03d6f6af93be781442023066cb40b12947c415a4f2c58b7e6220c1718b7aa46da2243faa7084489b25f06c7c482ec037ecca2cc00c5474b242d2060302047c435bb5006630640230062781601f1457c5112befb74f473f9e87da20b6234a78f173e1ac61ed64084386131859b081caacc3caeb9445ac5eae023035a74c2e8438d986aafffee1bb44eb6d951b7baa6411e291defe82bbd2f633434ef070ab5d816b2f5986cf7444b2e2f40302047c435bb500673065023100bdedb65e22078fc6dad457d9961eca2cb974b1623eb4eae641df5ee2115295b7d3fe0aa8a771d663a558f6430bd4ddbc023026f159c447c295ae3266025c181a8a7494488e6f9a706c2db474293ebc64b85d7a363f4dc2d6018a32b291a0c27acd0e0302047c435bb500673065023100bb874343e40b1227e099f3de54e2f8efdcd7439980b7e3474de7bd30432c056b503e0629f9621a56702d10c7e58a989e023022bc9e666b7957b80ef10adfe7dd6af3842b1717b06f05741ae764b002a8cc0f09ab83d48073e5b1f8acc6f030646ac60302047c435bb50066306402305735d0588919e3287e96c60d452d30110a3c149cc1a1fa98575793b2d7728b88a14358b42debbccb3f16d9fbc29e7a8e0230233df0aa5bc0ecdc09ddce64020be41a38ad93bff84400fdda450b503c04deb94af782dfadb122de2d6b3f1b9621adf80302047c435bb500683066023100a5be030bec8e1a731b40050679100aa81b4ad0497c5afe554b7d3df0ee25d7f5967b603c81e79ed337893f1637a56214023100fdc51d9a701d487c47cc70eb2bb2b2ae70ddd28d445a7083ae8df59cf1769b9edb2f58bd94da73e77497c5a80c32f3fe0302047c435bb50066306402305bfc110336c176c7b1b574d942a920776e311b6b76e125290a7f17e0e1293f8a2e1aa43bf92a5f3a458fd35609dc8077023055f4f9fad4f82c09f468b5ac3b417390670ccd6ecd163c775b66534a83a67b9c361a3eb2a45abac2f687bead4103307c0302047c435bb500673065023100feda4bbded5beb392fcbb251e11514601aa1e86881ba71d02f0cbfabf5e8aa150e26d411fd2f6e259c879bac259fc992023020bbfa9079737c3fcaa19dc75ee2505dc489e660fe4e59f6c08d9d201fc9d86e9d4255be4626530eb7b90dd47663f4750302047c435bb500683066023100dfc123d20aa8e2354c3c8065ad99dad9ff989d67ef8015c53cf93006d54268e40ce833d748d254c7bbc7518682e003e0023100dbac95b75a9ea2ec2d288d219b8fb8887a7fc78c97ab940d4e81e640638e462a2f1e863a0957942e2b239dee602e92250302047c435bb50067306502310096a11739affed6c3e2ce47a101c27e37c769ad319824e3cbe73822f4c26dbe04dbda9ff9c2f13265a3512a5d428ad67e02300b9a37a3cf90c1abc0c66b3446a3bf704e17383536dfa35964a9d2bdce21ff0ff80a3b6bca1b7ffd19f90362cf98a8340302047c435bb5006730650230577ce75b5aeed2ffe8d60ff01cb3b7a7dac3e8db290f6a2e665e5904df9d2847a3639c40c7f6bb1e88d58b2230010353023100c00b1e72018e2f857595bb1cbd1e54a0c1d948d19ff2461eed0893310f69af2307a4b57735b74a6cd6531681fecc43530302047c435bb500673065023100fc19791c6a91d1e733b40dc0b6850015779df3555a6757a6299763cc9f9c0ade7d55a13e21d8208f681e5b1bc33e5e16023037693f9f0b4e833996c0abb90c0c635e350be52ad20a40e1dc0fe4e6bdb1dc5395f14c4978b0591730008d29bef54e590302047c435bb50068306602310089aca3d8040b6e6707953131b2aab84516984b3851d66aee8b86cbb4a14830499473671f6bba2a9d643e2c68c7e3cacf023100ac968de8298443cb4d76058b72297532a646d8eb2df891156f16401f8c34d83a17d8223138ab828ef5e5a6a9d2e275cf0302047c435bb5006630640230516ff8b59703d0a6f0e9fa12b6aed586263b59a67dfb19e7d8993491d6769ee836272e1589bbaef8717469f9c581d2220230627e94bae96e6f08520e2085fe34118f0b079c5567757cd70aa1a680c3815c9d39a5f102dc8a69e87c477f87b90805e40302047c435bb50067306502302772d7bbf6517ca61c139fd109ae6ea577d230669743b47d39f9337c10ab9989547580219735041df4200e4a38c35702023100c5871d9befbce33496f1c333dc135d6c16b3278a7d964b181734894b13a946651ced26c3f5738b708b74b141ae8eb4be0302047c435bb500673065023000c95f941fb086a00e60c905f5b9261b892489537ef21e71ac9cb3eccacfe6be5904fcf693454033b80291a0eb5822e20231008c4261b540d655cd02f53f2a47341cafeda667f492ab1407625a3bc3b64fc1ee8a3dc3dc89ae335335db95e97f90ec280302047c435bb500673065023060c7033ab35708f7d9a4e8adcef62ff3cd07e73f20542d9e96fce0da23ec266e97ac5b9d1b7a7846e16cbe73e3c55dd0023100bd89463b4786e393dfb049811adcaa360934be8897c6be81cd9bc3bace206e55b52e6456e1477c7bf22ba1f6291cc1ec0302047c435bb5006730650230318326cb3b817616ce537f802947a4d7afc0286ec8bee61792bb051c1c406414e08f95aa4fbc19f3827118ef1ef77b44023100d8958c9b5d2539933af0a7d590ede01323d2a584f538890e21867ae3a08dd1fa9c6933b7b2113300028732e2a6a23b670302047c435bb500683066023100b327d397226d422d3a0c43e63290e27dc7d164304a7b6a340ddba0ad88146370530d0746f6384b452ef899469489c5df0231009581d01e37af09a3aed87963f7a3b1a4650caca80d45c9e0fd136e5c675f792246371e46e0d30d83d5ddc5d3feba54e40302047c435bb500673065023100a3791e0c5d04f3da5f81eb8c3473d75ec6e5710b97078a1ddcae58b4595385b247701eabdd55bf12ff99db61fafd085f023021d4a00d06b2e9da7d2387c93ccd4deb441440d3a650afce6d9617b76d7758b86e76faafc7d086f23f4c7216dd4ad8c00302047c435bb500673065023070cb1b04364e03c7e65d352404d3ee63c0dc28159e47cb6f9d481fa6206c3b9be806ea64a2e5c7fc550b7213fd3ce893023100cea95672d44ebde3bb2fbe9c0ccdd4b506138fd7214e45c30c896eb884eabf0ff3db94087a59b1271f4c98d646073b220302047c435bb5006730650230158df22ec168564b1875f0acfb5ab30cb0e009e09b325918604e52a6f2a2ae3c3cb4877d39aef31ede43bcfcbad2307c02310087ea8f55344a39cc199f25c20787eefc6d8992605465fe815e7d2d7b7214687e7624ac9d1c24ed1df058a518fd2ba9d70302047c435bb500673065023100f8bc03fe6d430c146de147deaccc04f5b971ebe57fca3baf57dbe2331db83d55a965050319f23a5269ec303c66aae4b9023049175a2706a97e9f567cb834fef808bd29072c4cc3ae9e882f073f0fa06e733698512562030bd6880cb7261a61db4f100302047c435bb500683066023100dcef364676d082aea3722a883839a9c5b22fb90e9bdc7ef9bf115e0fad6ad8dc4499b73b0a76b77c2d02f6bd6d76c5ce023100c4930d4894cece70b424b7a74d579fbddb5b34bb6aa9f0e8358c47eda4d0ae13a572778d1e1f5a4a2deb81c1c97e20820302047c435bb500683066023100e4096e9fb45ee6fd3ac27e773f8343676a16913d74a2dabe1e797ccf9b1d1bd72e14842a0ad6c954e7741cb1e494af69023100ae0e226b71b8d1a83cff95d29a4a48a5595f0777adb8f1188db53dd490ccbd69f51ba65692f52ee97c48951a54eadb870302047c435bb50066306402306d9c468111afa1bbf7a23810306323d464938cd5e729b3fac5583a282d2b3796c9bd1b1ad6e9b649056b784847298b4e0230323218dc04d904f54619ff55b7b279ee1c722b9b1493e89e988eeb9bf845292503f8960641a365f41b9aa6ee4be9b4ac0302047c435bb50067306502306ba87ed1f3c2282b8dba86919b96ed5fedd78adbdbb388d3e2b240a42995c095c4b1e4ce5261f1e47300b41a21e427b5023100fb518c526b7d3663fcdc6e6de36219f556c0c1562e13ed9e2f2cebf0b47505638468b6e52d93822a2b3d15d720411fce0302047c435bb500663064023066055d563b257b37dbbd43c6a44df8e30d8f09aa8c70801175b5b8a15302f445609f547bb633c0977bae24b05e6e0dc002301bb96e69bb52142e4fefeb05c85d077185ad8aa5ea79038ab1f08db75e68ddbc8b7fdd37c3070a83c3fada049b17ebb00302047c435bb50066306402304cf98e926740089ed46ddd344b96538e84b5a56dbd49a14628da57fa4b39214e3dbdb0ef7653f051b096729519310d6d023065690394cccb2af8ff569e53331c827ef8155c8be8bf805fa460c1edec110759cb8dcf82cb907a78f2b647e3903162600302047c435bb500683066023100e9b78b7af98b59d5f4aa5a45576f4f6e0b49d67af52bdb9d21be59c3646850f2b2ae149a5bde374208e5a5bad2b1ed38023100d8d4e7f33cb50d5935bbb37c388181e54049a99137a1ba6de8557649002be41c624f5ab8bbe3f73e4d3e6fa293e01f890302047c435bb50066306402303b8e8f114dbec3475d9747f31e5fb815553139a0692baeeaec4d5360a90106c81a427f113c95f8c1d1cf07b339ce8ad60230397c6a7466a7e7f52aeb2d41f751351239c44fcd009857ba9f117513cc88a86595515b968dfe233fc91808906d9e91050302047c435bb5006730650230420540f64acee735719654fcbb4075fea6862a8baece57c336c9bd5ae08af6c945c8c7285ccdceaa389f909a343b11c2023100b3c9643cd20e43a3dc6ab9b222a7b63250ab9c653792db36c76a03f2e5ee489520145a1db9d8a39aaf59559dba2f74280302047c435bb500683066023100dd9d2b6543cf0f1f335c905c034f292aa87c7354c6023989bfcdc94fffa06e7b0bbce03249ff49db1fefe908e42973fb023100b6676c1b3e8ab6d1c18441aa5673285ec6189366e858d0ed67c2ea03db147e9c58c2eec18420ce73e75d6268b03a31e00302047c435bb500673065023100ababd8c3816763fac7e0737ec4feed62febefce9e7829358fcc9192514d47e67a28e0ca48961ce59b2a95f8554c26e8902304b8b91a872576610ddc221ae211fdd470dcb6eb518dd55911d26e3082c192e270ac5c9b263f50c1ae891e71644a553e00302047c435bb50066306402302440e2327a1847198f75f5935c2593ee7674b6fbdeda74f2a9ea4bd6c49e0ef73cc54c3bd8a57ead032d7ff075c03a7802306b39749e201383864802333d1edcca0f2aa0f3bb942a32c44c5d8b28d1ef2fe4a2e33d099d1a95ecbf87ee443b00d0900302047c435bb500683066023100b513e5fd39e0e84b63bac1232ac5869b8a19983784efeb1b7d7b11cb6d3c941e84f8bec0f0e379eab63febe51b9bc6e9023100c0c6b07a34c469d3e6e2ef4df4220a3045e6bb4eb0115b6749a04f2bcf3b8c0890971bcdf3b1a8327d38f78284240cdc0302047c435bb5006730650231008633f8cf277606a43fe2d1cc4d9d1db02015dc00429ca12daed3bf3ccf5e88c846308476b8eed53453897da3f576fa12023018e4157e0e0be21ee22fd3d692f9428032db035ac0a17764073e864caf61f4cb6eb03ef051790fa6d0835d7e55e37f030302047c435bb500683066023100924c7c8c1de9d80e4c93329da3fffb41488640fb4974dce4a5b84946457571b5505b8dceddf016de90d335ac28e3d066023100ac6a91635f7077fad19474bbdc2e909d6738cebccec690c5313c2e68a3e05319efb078ad355cba090bd19c7eb0e2cb1a0302047c435bb500683066023100f10f9075f3a990d28e74b5228560503c641c55c49e02cd52040a4ab31e74c62c876fd763f484e74e71803ce28cf03274023100e0783836d50df90bd428c6456d3f49558570d658b453ae330cc92eed5426a4451f0611654d50650b93f94f98ef4865de0302047c435bb500673065023100ee372570e5c7a2c5946c28e833c8a72e60537fcd5b20c3b8ba72cb854d76189b0c5776000f0764db7fff3999b11799eb023074703655670893c95863eb163bde0c96e07fd1f99758a055385e26242da6b92f5ba52fe14b44f8650119ac21a238baf70302047c435bb500673065023055f4bb9de022547e8f0357f9a846291fdd36809e23b04090d55f9781656fd5b0618bd4451012d0005f2580de4ce06029023100b4b9fe59b30522fb446108d071ddff4c2001d4b9e8e0456c8cb96a853e641bf0c1282282ae2a4c5e0e99d802267698ff0302047c435bb5006730650230153b16c21bd43a05ca638e01fa424b78e13cadbda706d784fe68541703bd74a059fd6f663f51197d35f14c9fb24401dd023100bdc6c0ce3ad525a0743339d4ae6fe5181a346746a625b6c34e571fbe8a284bed9884905d31c478fac01ca9dd49e6c5bb0302047c435bb500683066023100b2b6a8d051b788a8561c72aeae599841d3e2f0c7e8c1b5cd2a21946ef556c1a0b4ee8664e4125a3e93c7d4fc338c81ff023100a893beb7f2a1835d4b85b1da1c0b30d8f83cc3d35a5cf46b213494ff2b82cc54533eb549a7d94f006cb1656fe9a8226c0302047c435bb50067306502306de1a9a3ffb6f1c0a8d034aad35c9ef195c7b84c95637883f2d9c53a9e06a48626bc77ef0e64b36e52d297ccf054e007023100f46d73abad98b4a1c8286328ed90a910c4e4c34236995dc3ccbcc808aed3eb8514e3f7eb27353a55ce8a35ca360250d40302047c435bb500673065023029cee325c9b7db7814f8905b6b143c2f78862306929ad925446c8826c4c861aa0f0725cd391de0cf8b597761e30961bf023100f66771704e847d7cceedbabbb7ba828a8ed876c35ca8738e91a03c19a631124e2ff2b8836674a79dfe12074bf0202e5f0302047c435bb5006630640230795765e70a8c83c602df37ce6c5dfb40a7fe0cf695864251b945f75d38a9e4ceb8a0fdc862d8df13b87f1f0aa1f0320a02302105388461a544de1b8fba0e670e09974b889787198b8b9ee50a8a0665fcf4f1eac5a2d1d14bc32a990712a69a28158b0302047c435bb50067306502303ab41d548e9fb735a6a272ba12a865e5e87dc7f4ade6cb6b9ee32f44fef6984afe2ca28ebcb20f84e7f7fad857fe0de6023100def5028b5bf0602416cbe0d786ae1fb0746d4810ebaed596658ac315f8276e6d75f32e0264b06d9c5284fd4b89f06cac0302047c435bb500663064023001bc4112bd05a5b68299866fced9ed27f76b49c8900b08a3816226d1a2e0e3915bf19c950d36548f5b8e90b216b1ee5802305dc772ce3c6227a031eb6c191a933bb4d72c1543624269205b4193a2ebfc4f247aee79c0734789665239b839406e88770302047c435bb500683066023100d51a1277a9954550dee093f7bc6b235dd150f73f72db6c47b5f2315271b90e22a8bfb5a16d4a90a0021839c1c0768d54023100f345a121caad1212ec280bf7391ab0e8bdbb16d80c8bf517600ccde7a323da62612b06af38fe5083bf9e4bda804d4eca0302047c435bb500673065023100fdacaa022509bc6c89d4d226c715ba70c07c06279e4bafc85ab51d1cbc58a33133eceb501ffedafa5e2ae13820adb9b60230640e75f3248b3e1ba79e78119d3d4b65d77b09f37d5ec5334d2b516023624c3798be990fd2716ec2fe915de24fecc4c20302047c435bb50066306402301730e46dde9c3c8ade18660e39fbc55690ccc282e58c688e3e853c61c12e1e82a8326d9f4e759a1077ef61159a384ece02304b20ea1f2fea6dd5906da225b1b6721412de2c60ca9e52c42497d1aedc2fda009210f9d77ac9fe1860245d6fb0b2c63a0302047c435bb500673065023077801bfabdc8ab06a5de9c480cd55e21a615c7f0366ed8b781b3fd086cc7e0bdbc4ff0b5dc36f09e0ba2abc4b7dfd2400231008ef632eb4a2fe15abe7444673ee59c9c0c9368b1655eec0bcdb09075cd2c1c7119a455872db7d16e5727f95bee2b01290302047c435bb500683066023100905fd23b8059cc963f78a0d82870bf242f5c895bbdd6efe54c0333d0e446c938d83e7a3a8b44f65f273b9a56bda9f2350231008395c1abe139ef72015d4c2783e67b768367f91003517de7bfb53e8e2ac2fac4f789f235138c95a57dde558f345bccaf0302047c435bb50066306402303fd18111fd213e301e53c35fec7b14589e4af2e6ec4e9cb30f6eb70fdb2224d7acd060b100bd6c615e59b52837b065dd023011f4b1316b8b355289a2a2edd048e860aeae90a64c05dc0ce87f5fd2201e78f5e8b139bb4919c0801f034e0724945fdb0302047c435bb500673065023100a4499d98468cc0f0c188c15f1a1e38006664bb0706a43684d6536afd6ce629b4b3dcde3749438e27f67f8f82e96958f702300ddec60db1d2c2cca6a6bf074ed09fab21e69eb0f2948c6a9b8dc5ea00832872ce32c19fd96c25b174eeccfb7403fa7f0302047c435bb50067306502300a0f477ec3104cc7b4ad1d85efa31112a1dbb9a37b92b3cd1ed38e67fa7d68064d3a9b5cee14b62bbf7c022adea40932023100dc3d7179f3f084ea593d36927819858ae52fe2d879704276a1407619613e32e7231186a9d0b78628d0e4f44805e7e4760302047c435bb500673065023100ddcbaf6528bb22fbb106ba2bea71665d1c7c75d3f6c85955b082d54c0dfa740200d259ea9b50e0574c97cc0eafee0eff0230532f7c17efccdd45722f9e7512629b73d7e45e20270ee624b9f598662027e1a6439e2fde8ea27ac643c47657dd43c11d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100be91ccf7b47a4d0e8c29b0272cfa7a23f8226289877ecdb7524d677d729089afd04533e8adf0d0e5bf1f2a7beffb40a002300d09eb733c4b396e8172e734958297adb9e75765201ee4ee856d3bddaf4dc02dfcfdfd36a4314cb0383be7061cc1549f0302047c435bb500673065023046a5f3a80f17e688ed3cadd4e89b5354ff1c4717afbeea34438c341567477bad35b6cdffc799061b4cf6228d122a783202310089d000eb41284f5e9e40af3e65d2b10ceadc0606f91ce3b205019f7fabc51e3bc05d7163495e4399f59620150ceac4fe0302047c435bb500673065023100c79659d11d7c3060042eac90d7d11ec2b16ab78e898d15f9d31c85238a8dd61f274d49a471fad2ce63fbb4544d3cd40902301abe2105d4516930af1dbef77d42c7f31d8ed6d594911b37575afb92f416ea77ddc8761a07fa768c1964082044f75def0302047c435bb5006730650230645cfdb1fc6f41943cbe29f0b3af60ed6a0da75b2558c36ea2ab56dfa6e5b70bae231a668d3462fd56c41d27273a5c6f023100e965f3037149ba2ca783573ca074885dc07038551d625eab5fd6ea077c8d9e7aa50aa1013428d9cae16cf4746c27f7670302047c435bb500673065023100fcb0fad1c7f9ef8b0bbe4a963fca99637f848b54616d6dee5f3572902676ee74adbbcce8672dd77d396e7eb09d17b5c402302d3517750a0c80506cbdf67d92fdad0f89ce32ef06d7e14afa63718851a29ee70455e00861655c4716630501ce62daeb0302047c435bb50066306402301dc5e05a5237e315f15e06b0ae178b7ec53589380ef0c6f35fcec4d02bc6bb39a1304a7021f88e795fa448d4ac80d8230230715aa4e77ce32051a11f008b212951b0d18180cc12e7d2b16a076946a44d8073cc12e1fd9e92dade02c9518a81206fd50302047c435bb500683066023100eba1572c507621df4ea60257c8684fc3fed8f8a5a1c6f364fa331011eaf796469efecdf429734f88e88fb834f3d6c318023100ef423e69ef1fe2e9514e221f8dee5994c3310e26038592cbe1dfafc9b6e5ba0a5fb8c1400a37c5d1f44ae706735fdba90302047c435bb5006630640230502c6977142f74954b29a810611b1b95611a45d345806d6b9cfd2a66a3a61c69ddb964777cd5849b39b66d195fb7ba5f02303ed69529e3943f0172733e40a1c7a875ac16e6047424f70fdba91a29bd59b3a24c73eef0e1418f122cb2350786b111cc0302047c435bb500673065023008189db75038683fb64b1076335e99d5403eda64c0687d6f605ecb630cc52bc272a7e23cb7886f3f31023f5c341d5ea3023100b6c32cf8804198da4038ce0808165ac0665a7dd9e3377b33c3e0dfa29dad2f8154a1731ed2132c86efc8882569326ef40302047c435bb50067306502305086acae5167557c66900ad4c4b754539ff1bdd1761092a99b4dae789181c7f87afbcf7d4b8a930bcf393868367ae7c4023100f4208c3300936c751f5b0ceca511ea347869fab9e0993f61d801d976bbdfc4ef61b90e0279442418f95656973b5c0b6b0302047c435bb500683066023100ae4e886e8236e3a7e5229ef2f7962f5c136ebb927f1644781f7b1938d7447fe8e8acb4dfd3c170a38175fb96e97debc8023100c4c56e985dfbd2dc069beb70e21f15db208ee26fbbdcc6dae8f65d4cbfedf51626e749614af7c8e16025bbba5c412c320302047c435bb500683066023100ebf227a32fb7591a4988193d376d935d42608399b6acd1e87253c749038ad89af716f2867902feb157a39e87baffebd1023100d8cfd9a031a7241c98cc55fb8463cb786bbfdb59661b841f562efd7287938dcaf98ff46cd03b617d968c1f52642f25820302047c435bb500673065023100daebff27fcb7ab295442ec2014cbf1f3c61402915c42ec0fa7e7d33271a20635f91bd29449e7f851e1a1dedb1a36700102300e138100e1ecad44473084be5aa8f17d124c7864c1192f8dc8e293aa716735d81c2221659c3b47f136308e88ae4d128e0302047c435bb500663064023005fd9a551d2587c11eadf45c829fa73d228429935efa09c1f70ec986f99b1bb414c757bba571f0819bf42d9fc5aee3cc02306ce11941cad0b263d9a7388f9c4cbbb44eaa1788c80c832eff9bca2b8d8ccf3d9b0a57a290088c8aa902a73bbd369e850302047c435bb500673065023100bf51dff6692aee718e6018c5e6eb21c54af1640112d9393e52e88a2b022a6fc6fd55c9d75236a8055eba61f5ae4db4ef0230033efe0c65e3620fd5fdd569155c668cf222ff0182ee9a75aaa3977227617555d5c44e21388c09eb7a3f8cdf9a5b27230302047c435bb500683066023100e424d015fc59fae1439627ee789b21881855e83fcc47a9c4aea126c691eea52fa779326c0f5118a70ba29a273456e644023100fca8c4fb5e8ea66196f79f399ba6b83a4eb423e4504490388a6d04947955b510a3ca91aabcfea8a4bba01dad199677970302047c435bb500673065023027109bc1c31c4d67fa6a216c55d9161aee5bc18d7e993bf15bb39d23be8db523552dae6f4b9b2146264c137695780139023100d688ec2862881f4af28e8090259264a5ae34291d1d9903a64cfa8aec9f7be485a3ac896524eaf6157f7ca0848465df840302047c435bb500673065023006ccdb1ffbd575965e69ec02ab924f2c42dc8bd58709eb81a75ccedaf73e9cbcd701a12c47c51739d0258cefffb4da7c023100f7a823c77170fb0d165b03f60002f69ebd537cb09d14e4c95f0af6fa86dc63ac9284747aab91edb4f1c715f0d7755fa00302047c435bb500683066023100fd6d0ce405147c664c0ceb8d9d059a2a6672e952e5e07f57ac49c6fffc4a0a30ca53ebb012f5b5a342b51c08eec0249f023100dd60aef13006cdce3c721923b13c406a8bf1b397b1f1920903f871942941e1834cb219be1125f155d7ec4a356d517dcd0302047c435bb50066306402307c8fc01b6c3f962193a92f1b59091181fce8ce2d352e41712edb2282e91b06be9d06943c285976335b2773481154e0040230373c84ca614195dc345a54347cbc888a1cfbf23727585b0d4ea1d6db5881d8ce916bd0d05c6c5b1c6567240f6374925d0302047c435bb50067306502303ba0c2a9018c1508346b77b326a2aad3ee3a39c39f17c6c06c42a44e7afebf9b569467609e9d1955c27a4336c3fc6420023100bcef763a27a0bf8d97dcdfd5d8148089d17a0f05ade575e650da844ddd622b5decaf2b77711e8f2fe1c9119235695c440302047c435bb500673065023100c333a22508065b74e057e6f8198896b8264389039aa41527bdf694d33ecf85326178e97cae975da7d2fd285f733a2e3e02306cfcfa6ec2646e2b167447360f5705cb0eb5265f9eed7310091bac594559ea3ef05637e583baeef4aae7d517b7adc71d0302047c435bb500673065023100a03c7d15864c81ac22600fa64556b86b9a3da5d571dc5b54a415d7056c77e80f3d9e8d78b4f7af663e849a0c393f5e7b023005135b3579452a2c92c5863402a17fff8ecaae060330cd7fd287996e7946f0bc87ebaa689df9985acfd2df8693687b8f0302047c435bb500683066023100e007500ba1a8556bd6ee40d45dbe684f0b90efcda55957ff17dfdee74c644a07e6db51ebbbf43455cea10ad46514b716023100be7dab0c5426f8ef0042d2e8b20467715b18420ef8592133f0336391d2db58f4763ebff476e9d771546500ff98329e740302047c435bb500683066023100ab7fd4eae48d11b63e8d8c4512f9afb2ce689dfe7b86338db8cfc84c89877485eb294c138062e306b41c2efbb04877ce023100c8536f3f0556bf2bc8df0cd30d3c2b262f06f1088df6f451b86d19baf114460e7320aba04c97d7bcae132dd8b6d59ec20302047c435bb500663064023000abc47202d4ea5b645f6fb54926537ca72e13431fbc83315cfee16feebc5540ebdcdbf533bedd9aa71b7fafb8a448e302303b24d262955e7f0edef6c4c45288058fdba91c50f88d1ca3573e892cc1fcf60c17115b803172f2a26d9a1485a2e0ac770302047c435bb50066306402300904f0306d1e939dc4b41f19f617976e312f51a84dba37b563e2cb727fa2950bd0698b4b64d0d69e54d84e0e362b15ce0230344ba96f7b22bec6ed4fc389ca73c6eba3d4cf98390152ada906829421e85351d82d9bba1243d80b278d53505736d7760302047c435bb500683066023100abc0d2618c6afe37ebe9e175ba1040423953cf928c4bf74a72a4c5b78d332e00b48f8cec503cff6f573dbba431b9158e0231009d606eaf7604c72acbfd4b8067466daba66cbd7be8ebed6e0d3db3aed3770783fa6bf0327fd661670c20fc61ea3c3f690302047c435bb500673065023100e44c4ba706f941ffa67d3d6c4ab88bec7c194d586a2bf89f48be4402e8b3603e9220e948e3743ce3203e82b461104a1d02305925f6165aecca22dc4177c3e30ef5bb66e0f8826eed9f17365844fd30d88f8a358d397cadf0fd6d3be4b8a31579d1630302047c435bb500673065023100d0630bc332ef6d9c6cc7394b6523c46ae9dab359277b5a4b537b2879855aea7e9476a0dbc11eebb6a8a47e05fec1b3e70230369719afe2fba69c1eb0922afc19fdc969648090f9362ede31df4356412cdb52cf8bdd8a0e8309af88b2618e3e480af50302047c435bb5006630640230674530fb8932fc44b76eabdbacefb13e5125acc00783a644ba1bac817f7c5bf0f9f6668167c0fd7e32bd62be7b53854402302b52c594fc675caf7a67076a38ef629912e8128c5ef52a800d5f9797d953fb98af13545cf25ad1dfcd7ae9976970f4ff0302047c435bb500663064023044da745516724100c28781d4ec9ef177568f3d2268fcf14132d81f2603295223333512e764e5dbac82056bbb35f0e82b02301c1f79d6cd96a85ed04347da032412e11acf85cff6b63c36441a6c06e7b49ad68f1f87c1ef932e6c0cfd3b1022ceb2e30302047c435bb50066306402304628ad0e88f7cf71449d280bfee5cd81936db864999d1b08e3b1ebf5564a5ff5b7a85277a1094abeb5b8de09cf382cd6023013805be15d9fea54a8486c08defe7308c951a9932abd0f904c6ff2e0d2f39b72841c76ce4826343ed8cd454a1f645b2b0302047c435bb50067306502302cfd350f43c09613827ed6154fa7baaa4acd20e63a991aa32e474f8ee18fda0a5f9dca3d30c91ebdb0b1b780c3696ad9023100af88577ec1ad418be164152b7bf676708d243e23e56cb373f25d83b24435d365e3d10f9ddfe57d6acedd7899387718e60302047c435bb500673065023100f87ff2eb2f95a106e1f9f55fcaf4322cf01a3486f735f325fd63d015958ce608cbd78761258cd1b4234f6351b132a9b002307e7ba060b1264120548fe2acffb49549ced38cf36349d5599da831b4a6e76de3759dbe9d9a01250449d2dc5d58300a030302047c435bb50066306402307f28f5e42a063c34fb9dd3544bff9a17ccb81319290af1b69476d1b0341d90dc9b8db610f4a27071f1bdb24bb25259a90230527362aeca16b4bd78f3e73d24701f5a988d765780d06ab04b7157779acd274143a5b12ad6b1cf90a10fcc73ebf16b8e0302047c435bb50066306402304b58a4a283ee2884907a88f3655fe47b825e23cd49c27a07594fd93fbf6614d2201583c043a31b8a6faae393fb57129802305884ba1b71672fa3511a9b3fc0c8c808faa02ed47c45801283bb3da49f6a28c47d98cf0d0a5bc9fb16ff2003ef0312f80302047c435bb500673065023100fb459c17c83441cbcabf38a4eb54d115c4368ef40fb677bb250d6e6de696aa464728babb54a64eda9f105763338072c8023045228ff8f7856036b0726c2bb2805204f563978ac3fe87ac23a9401c79b7a2c4dc7f89e5e231348ededad9f51845a99b0302047c435bb500673065023100f27afff2af371afd75586799692f201b43ac5a7155d42f670cf40277449c8559f3a898deb731d9c3f25bfecd53f71fa802300ea26de3cd4db3970b3e58f76f7d3272c80b433d201d70e7b6afbe662b863e20952aa00c0ad3e869da16209e9bf138790302047c435bb5006730650230352729209c2890f2d2d5958eaafa8d1662c7c3cb9668ac15d6c0ac12c737c22eadb292f02bed24c4634d9b16e57212c3023100d5ea766f21d3d195166b0458be0c12a90ea5e421a047bcf9430112c0d9a15c357a1df46d5d1d0a10043a70ca252172c60302047c435bb50066306402303dd4bb539b7ae7993babf86562a941360646f09076be763727b105ef4ac09361d07460b343d22076ce8cf8913d0016450230660bd6d479e5754a9685d174e83e14e0c632c54505efd41ebb4f86b1c49f204a12aa09906d28241eba2515f944d01c940302047c435bb500673065023100d3329f98883314b14ad38e80e63b2b153c2c89fe5156105508fe65944cd1b228e6a8d2390c748601209052531715817802300291835773b7af7b887073d4bc69b40b96f523fd7f76fef545537e7f393222ad53c4b3822ec1a9814d87ce8a43f0f7f80302047c435bb500673065023046f322937de2b7ebbba9ed407dca85cf7bb4df278fa04a5b43fdfe02a106c9a86321070637d56da793ae781edf35c4d2023100aceac2835b22e1ede68602780833289bd2307a75cfdf6fb71f406b764b950bd1628415ff91e57aaac373d89cd9085e3f0302047c435bb500673065023002d08025dee5351aaf1e3e98da0b00741eab18793a6025868e19908c846f2f1c783624d21db1df42b59f246bcc63bd03023100c0d52fe3165172dfba996fcb81b3dae2099ab33e3516a95c3ed9b2c136a0940c142ecd511da2fe0539e352e0d86de4040302047c435bb5006630640230540be4078e09216a6b1e928188f5a119e6bc82b926c58e84c7c1daaff2df6fd068628b54f0cea5b653daf2e7798d5c6e02307e276ba5db087f2dc7136845d8f0dd155afdf42a814e761e171ccf891475c4a9bed5531419125b3117020e828a7ebe7d0302047c435bb500673065023100eca5139454d06fc2324699f565bafe961143ccf788ad2c3028b7ea4cb15bde93aa720c026cee2b78596917bb8ca221630230150b950f7995e4181627d5e1d78c1975c8027652efa0bbe7960627db79caf552499ffa37d6ff1853d37d5e675f271ea80302047c435bb500673065023100b0005ad428f5be45f790c1abd16147de670f80a4505cb372a4cea7bfe347a858bae8418b44c53c0bf05b6cebaf1ffe8e0230041fa049adc26ac55b4a1147cd15e24e8cee7b1e8fb244677cd6b1e38d8e91673a750a4cf7a9651699885ac5ae7cc7730302047c435bb50067306502306991bff5c220cbdfab59ad7b47cc07e5f7e965973518bf59da3e83135d23d02e814b33aae9993f2261dec3c0dc42ce82023100cb60f672d932d52edc61500d878aad6ab9829f416b720ef935431bca6e136a855d738625e598af5264f219afed41c1590302047c435bb500683066023100999fbc27e4f6a70958e9df8bb1ac48dbf320c4211d2cfc4c0a9a7af1ced1a1a59c3d079d439d41b811212651d3a8321d0231008d4abe1e419cf68bdb43f0e734403277f054600d0e985dfc97d6fa07679b4e01ae9e440b0053f0ff8130db7a674b0faf0302047c435bb500673065023029606df43838db099949f263727ce910715676d70de9f4a9bf012c02f68a71dd2ebe8b23dd875ea9de34a56fc25dfcf6023100ba522b3e8400ff452dbea0f1f6b3157699def087ce39ce06b87af5062b7b24aced4057200b758ab301fb8b7de47a78020302047c435bb5006830660231009a1312022a7b003c44ac1283ae00b19c036727709eb353648eeff2a2f90a305c05fc5068bf88c3848580a65b1e07201d023100fb5bf930d13d6de5892b9ba853224e8f97add8bc7e2d424f1bea56804db8e6b0c1de0d0913a61418257671ce38a54e440302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023063590ade4fe0ec3282b3f5f2047f45c122f147f4677b18aec84f353eff05fafde22ceb593d222cf382e526bd9ff3091002301257832d11d75baaea13ec1b2870704c8befa5c28daeca499d34d6470bf867a93f3e4475030972eaf0cf56224e7858690302047c435bb500663064023017f7af6f78f07f2ea0ba544cf59405378cb1e7d1e71f0da79d75085f5238444b357919b04a0ffe660a6e5a5f2908d55b023019203a9d300613783efdc055fd2a881c166aad598db8f70986150104dec015d7709dc918936195806231e75fe8258b680302047c435bb50067306502305329d6aa67eebbe75b94f1339ef801810709e9372c9dd5ff63a476dc69c37fed1d03edce61aa28793288d9624fc3dcc9023100babf18c1f3b2560fcd41c90f89df4280ac17276bb8818a3378ada723e10b00f97d6a29ecc45a916e989ee6e27fd3a6920302047c435bb5006830660231009807b428996d85c3a87a202ca2aa5e6da46837deedd0763ace41d1b7741c06501ff0ba545ac85a4ab33ea3533aacecc7023100bcb33f02701f785f4314c08cc4f05542ecf38f852a866a2d9f3ec46d20e92624007e9dcb4a1a031f91e63eeb7e8adc3f0302047c435bb500683066023100c9e92cfdb2776e32b9d74c90206888ee079d694917a5396f1332b25eb18b953ee9447f884ae0e93fe4800f6f32a1da010231008301421222a8aa6e4f8b9e0645ccbcd13d2d703f80961f46f8e43995f43417435474bca1445373b0e76a45085b95ac100302047c435bb50067306502307c94731b845bf8f4a40b78553934aa3308393abf08985a63871aeb9d80b436b5be60c448aedc8eab8d074a0515b91f8d023100db8a72ae1c4c70d676753259945a96d55c2e9dddb37a808fd763f67f8ad7d6d09dcb0e9c2eeb5d566acb5eb407adf1410302047c435bb500673065023100a84b7034cdb6a77f8d663fad7e69d0b3543511a21c6836a6fe58927e086601b7b87b1b42efc615d8de0acc7ed5a3a7b70230538dc8a305b7512ae2ac79a0908cb3194000418a5c81de231f69fedcef61f8866ff26c253d3948d6333a8a35165660d50302047c435bb500683066023100e343b14f189cf346c74354a92644603c5d80c10ba5e6087359776b9c34e2d60179f5fb05094b34a72d201b1b74ccd380023100e87c597a4f63dcf239ed22bb120031fe7af84c3435490c250b27130a53190ba9350e2ad8763c4cae406319b4277507f00302047c435bb500683066023100bbd0fa030f7a7b6b88289fae368102b29b4c2a71d37c6f05f57bc0cd9618e98a3ba1bb4341cbd75ed4c4bb8e12d84ca4023100c5d4c071554b7b85dfb39a1ec9473025b20f206c9818df11e613e2f9d26608faac766e207b00706a27ef12dcb912dd120302047c435bb500673065023100c24be74ba15e50f64c425eff5782506ddb0cd753282032fdc361da3d8c03f51d8190094e3294378ec5c57f73aabe48f502307f8a4cc3a3998ee685a70f50e8c8fa6eaffb47b2dda3a64d18a3f4ea6644ab4eccdf74060b23a4fa4245487f774d77be0302047c435bb5006730650231008517ee868c57d79691f873e140797f6c0ecae3588e9348baa14080e593be69084a415d106724833a0329ef39d7244234023057611cf7df63a7c98d864865d74476c52ae5fb013177eaf3d173c28962192bbafa64b8bd2a6a2e03ce0cce668c4e4ff90302047c435bb500673065023100a9f22f6e1573744a38e0bf4d7d9a99044bc693558e20ba80e6c7f6bfd18bc67b063ac981d60f58f4592dde2835743f0f02305c270500b2a731c36fec5068936b6b9cfb597d8f44c6bcf966d8cd3e702839c84ba1641f2e2bca6e9b1bc01a94bdd1fc0302047c435bb50066306402300c82d4abb63bd406c77bb869ad2048a2a3410db7956718bb097b44a23b1956ed42aa1766768938a8d6de235bce2463960230134fd32fde1942f18de0fd76debd04045d0646f1ce156a735bd7678b88ef05df04da9a7dd27ea30fb01d9f3bdd6e51000302047c435bb50067306502310097dffd812faca6089809cb9a54c8353814d704b5a586f7a59be6d366e61aaa5f137e82ade5163eff55bad28be434159b023021c4cdfab6c9dd87b83b3bcba2de111da0b5c2a89a59b06fbc1337c4a4f3369884a0a0556b3ad9e8108d00daf5b610d00302047c435bb500673065023100a280068a6957b4a5e0729bcb9688ee69022f2c7643416560bd1b83aaee882e416995e3785d4ecca3115bbf690e1bcebd02306d9aeaed3c06dfb2f48cba8bcfbce5fc16142a92575b515961720b76e8f8909af449bbf1ff99d97faa948ba1f525cc870302047c435bb50068306602310090794d82bae82b3698863a85b3cf5f5ae4dabb28d5e147ff7a31cb0790777e7d9838361dd12126ae812714f850e97fe6023100eabcc948d5ea7dfe3a20ca7fab4747a521ebf1d16ef600cb332df8f9c32e8372062df9b84aca9ac99734f2508efaf0df0302047c435bb50067306502307c4842dd11261da75fbedfe504ccf964a80c66b67e2205c30fb574623a7f761a3b692e60a0d42562ba9c7691b8dc9a11023100eb7f0c3b9dba789b173c8f44da7f86152342db665c3c5f402079415fd22f72352d835eb2d041652d3687a358f10bb17d0302047c435bb5006830660231008fbe968ed7932352aad85ae40af9b5c80377615c8e66240f7fe7f3952d0db87fc78d20e9d21e54062bffc9a55e7667690231009cfceaaaf323e7ae211c3e6fccac93457d126345825261f467c508255559c0b2248d3b31214278abcb459c3b25036e4e0302047c435bb50066306402300f5aad16a80e86bb593c31c7a3e86c8b0eb245d58acee7de5225fb08af2f143e45e3c64ccaaeeb0b75b5153c60405d4a02306a030411294ecc9cf425360edb5fc04cf427b7a8b5827af2b2313fb093d92c48d906816d5fc2f1c9ae73fe18eead473b0302047c435bb500673065023012671dfec35c3698dfda7d0343357c4900745b2b1f8d5fc0bffbaa7514e4380e128b96fd6198cdbc2fb798ee68141ae3023100add4668a015004daaf3feb2ce8640701fff6074aa696bc8276b70801b4c4125c2e6b5aed2eb9a1492c9415e770a82c930302047c435bb50067306502306778f99718e07fb8cfbad09065956c87fb945156da6d7c5b1329abafa7962cbd0acaf09da74f4549c02d32bacdfc66db023100f7c6c68c2512482ec269c0f060a7a6821092957bffee9d54f536c6abf4848d44676ec4749048afcb7f0456d8285931370302047c435bb500683066023100b423a8ec1a3c520dff307b0ebfa9b0c84816dd0b3ac7f33025dbd8d2386457de237ba82f569f136c03546b49ad80219d023100c13742f90b628f50301da412ba926ce04b75b2dc2f170b323095e156a83440dc35813c67ea8d66e8771d72b3e39d4ed00302047c435bb50066306402302097df3c9ab466364a07b0d234aa80e94ff87803704fb8cde3c938e8a19a96c4c6587df26dff68ac2bcf7e45275c56780230046700bb966c69f8c1d478897c96b73a5b991924b0f4a06e3245c136861fa424c59d2d44dc8c2678a7fe0a8b458c95b30302047c435bb50067306502310092b08180ff5955164b07a5d8f0593cbed9210fba06b7454998e714a256fe06563acf3b1fd63c4b85b675a275cbf1386402300c0caf80c90ee347d51fb01efbb4ea851026de2844e4ce87c6a9284c1ff90ac0037c021e00e2bccddd4bf0fa9f5b8cd40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301a4c6c2142dfb6eb93add3afb55cbb2e82cc6092eba18bed465ac9bad7480b0983913937ad84056b59576e72dbd0c321023042debe072b8ccb84c58e24eba5ea5fc0042c8e184d9cd4fcbcb805eb97f288eb3d82be3dc910dc8549d65c190ab430390302047c435bb500673065023100e3b25689a668faadfc2bb8e63be1efb72550857e2454f41f8d480502b055548a26d9fc3e46622b135326d3e4583f5d1002303e513b98c92ddaa84b97f581dc63cd740acbf4860bf84b6c35f295fc1b82f6c903f260a4c200a69f4caab19aac4103000302047c435bb500673065023100cac4183970a0820d13c3643a610308897139d2c79aba4c35a36faa1c30500155e4e1c22183b0dbced09c7cdaebe4c27f023038f274260554bc1f36f07fc48a0c404a9644e850599478e6cea6b19df550b24ee6f26c238a1daae8662cd6c9d3e717c90302047c435bb500673065023100e454f337a5781b8be9826a442cd01293c7599f09d6b21e5fa32e9e8e9544e548245f30e606da0e539ffdf648eb8d07760230611d7458e97cd0c7b9effddf6826d7c5ba0b09af8d590caad83aac6e7bb72f1c607f6b094d41009b3a77929f22ec82ec0302047c435bb500683066023100ba61a8060fea17dd8b219ad817dff53aecaba878140434a3cff50c5d8897a4e035d007ccf47fa2459ce8cdd8047fb025023100fba9f15c314185772ac1848a27df751d33f1b2f89cc92f1283618641231abb6f8b437f3995dbccc9510d7421922957410302047c435bb50068306602310095fedfc0129b5270a942c43c7730b9b77cb159a00457394e8bd1536e4ca03a54c5824018686986152f34f5e9712f61dd023100bb44fde07439cc6ff6838e3bfa011b71c5436baf75c5486326d6d28ecc15bd6d2a673d38f00474d9d2677bef9402239d0302047c435bb500673065023100bf4bce82dece381a831d321a7dcd970f4c80f31bb67204d1a0471442e85d87bbd050a7463960eed8e0c38b05ae13136802303977dea27235e0cce05f6a1d1b16028e38ac0c4e1e478a49b12202f08f36e989474a52060422fe52e01a8de6f8e099540302047c435bb500673065023100f338841b3e71e89f183b1d4c846d6b6d41412802957a52e59454a5e888d410273fc0ed23a63970c000de9129dc7ccce102305d8a8c239a8369e5972781dda44dc048ac7319d5f8cc8e9eebcd8d9aa2412f38087745198d0850dc754c72028b18ce4b0302047c435bb50066306402306999712e865e9366b9771df0f5290fba9a9561a7a97ba78b7f925e2bcfca03e51807a9e7258c31a3e7a6ddc9892977aa0230573a951ec2b2da77b1db4800f7d7358004fad380d78236a3361519807cd758b5d1411c0c249631a9b0db9545b1e29a830302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023010b3bc220870ff78d71448d877430ec2c1c7fd955415e87042cc757bb10817dc0de55bd1cf74fb551af585d2fd37718e023100fc86cdeb96bb1ba14e5870b66eaae3068bc8c0deda25d5ee77eaf4b57dba342bd7227415699df6858973756cdc1f65130302047c435bb500673065023100c32e3d8271f928360081c64a3f8ecde122c7e14babe94423e2b9ff4b2aaf39e82a0b6072fbc02f7533ae1aeeaa8bd4cd0230089bffddd7532e476be3b8eda66a761c05274f3d0515ad9187903e77d30dd8251c9a6a97c72eaa06d415efb5c358d6d90302047c435bb50067306502303bc5914f0256b289307905261fdd8f24240239d1be4b60147f007649d777e13066d9f2b6fca0f3d17b82424604a1aff4023100c4ef7cdc4e98d5185b2ba34b3e77dafd256f31e68d9b2512b6601355b60f93245d533eb0206fbe8aa331994c5dbdea430302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c2dc1897c08ff710a8940bf417d4f283d00603aa3a4a7de86998046a328782fcc478e0dfe2f53a49f8b65518150ba51f023079fbbc1d2ce09f457171f4dcd278fdfca2f6d9256d03a1789f4ff07e1df3432869cc2baeac94605bee6064f6070ab68a0302047c435bb50066306402305aa51ef211285b96bb832d669ff47773e3133bae69a4a4cf846897ba120909e49dce373a59063211b4ace0ba1e417b100230360fe32df0d362b51506dab4cbef00021bd213ac0552821d4682d42a20992672730d256be4398afff47479ebd91b3de60302047c435bb5006830660231008c2a4a67276c3ac536b923d38aedc7c17449b1e53653080d21e463c71046105809d4f9aba69db9fdaa9a91d1deb402cc023100fef1b856fe68908b47e10820fd37c6a1bc91aa55321802d9123883333fa01e16e37db6ebf6811bfdb807a98125cf1fe30302047c435bb5006630640230789bdd30184be3d6514ba7ec29d197127421ae58cf4716922caa8752b1551bf176205213978a6ffec8fab0e6976b9e0502303f31a2ffa584e05841014eaf25e7acf8e2b6a50c922578b4f35099740563a28dea30ce02ff411218301f38ce3df547880302047c435bb500683066023100933148964a0ca001cd7e9c960d523f3432f04403a16025d42693f1272cafb88492696715606beef4616e84ccff8ceaf0023100efa64e34ec1a428fd9f14fb287d49239c31e0ddf9eb3be35ac3ef8674fa7d3d839686ade65b0f1b5643d9cac3baa804b0302047c435bb500663064023028cfca8b53f10498a33c73495f8879e2c167f8c465d5278d3db77030fdf5055e43094fcb9ec3d2e669cbc7ec8b79989502302a32178d24b98611a93207a415c15a2ba4f365a611acfbcae372bd1420ef5e328528ddf3f2e4ae566f72e956ddbdbff10302047c435bb500673065023100812442b08fce9f62432b9b6adfe510cf1bdc53a88723319251885505fe48d150f461015d65db0d46ee1f61326e493fe6023047a8d174b0caacf809e2e1e4cab792fe8d55957b2bd1bcd8fe5366ffcd9f16c94a649f0a486498754c988eb072c9c98b0302047c435bb500683066023100e8e1f6474c0c56f603094cd101d02c991da4118571e56bd1b5edcb4fcf926bc61b9aecb6b2e16c452a68fb473253695f0231008c8168375b64c9fdd6fe946c11b8231708954a45c09998d1c96331b23a2226fb71985411ff4367b7d1aca73b520ef70c0302047c435bb50067306502300eab645f9648065838f3d9a7c85acf0c2931c7a19275e4b0d19f2bd046d22621881be9827be90b2bad9d8df0af1ec650023100f296d7d7de31febe57de8a571296a617e9f0a8e0278221d3ed88aa1f84216d8b039fcac97a90bb6a651d25c945af5ebf0302047c435bb50067306502303f1176713f0f6815d5e5a13fdce66f1c88f8f38e7b536beed7e4e05379cbe704d74c0ec7c7997a8de98047cf653b48d40231008ebf261276ac38ccc229422c117f0305134db0e30d7798e930c3404f116be598a0e3d9ca3af2a03f8507f9fcb6e75a540302047c435bb5006730650231008e16d809c624b7525eb039b9fba21566be9fa40814c2f6ed14e62d5aa447c8438e77e6addd850650f26f6b54cd1aa1bb02305153734eaa2d705e47a5b381fdfa05cd7ce0f46e86438822750ce52be81fed95d46751fc24389b9d2c8f9131f4f361770302047c435bb500683066023100837235c968448494c6a5c2b07fa4b7c7fc6fbbd77e27a26a54b3bb589dd0fd795bd190e9ced8777f19ffbfcfe2b4d6ab023100d71f6a654a2cbdd411f61b4eed60f6192f85c8f5805967a9b3502a2d2900a9fb78a30e84715ba8cb617d7b59361866760302047c435bb500683066023100859d910164faec890f48f05bf6ea24a7439814e9daab979bf175750a8f0c49b336a03dc10ba4b4d79f90c675f43d876702310096a919212a77ec0b0168ba87cc8158bddc9305f6b918a916f5fd960c5351f3a66426dc7eeda5f76adf6096a3a6824b3b0302047c435bb500683066023100e86a14574daa6f038fdc6d21defb15269bc4564d2c415c1e9f8e7931d3bdb837497cadc7a2176accf5b80be7d5eda0920231009db1a12b54dcd4b7f4d96b041c767268e2cad743bc22df3375044adea9a61402e5788e5e9631205d0cfbfae1b38a0d100302047c435bb50067306502310081fc3e1c0f0bf217b4fbcc3ebf59198541c95c307d1e8be6b5d0d4acb424395fb971cb3f39a111d82b813c6bcdb0d029023027fd8e15161edc163625b4efda542a5757934d980c5c6a328dae6f78f78c718d8a2f750079b8a1017a2485bdbcbcb3ab0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b95d177ad930f4497c4ca943f2ef7f3efd54ae248b794a096f39b0c8c1f2edf9531552ec03580412b00bb9d8a40e4c24023100bfac0a86b05f44214388e235fcd5aa2a95c211386d5e5222c7e9618fa917a7fb3f6a6cc4dd726ddb8061e902116820360302047c435bb500673065023100bac32e897e136db644d8aec6cc3403bfb1463697792a716aafbf210ed62d0bf78a60a99aa64dee751c30bd81e0556c5c02303ba9f559e5b56043e5cc9b4733793140f6d2c688e30399139ed3288707be8ebe0d56230c3e74dc5b5474406499a3afdd0302047c435bb500673065023100d52669cba41bd229f1390fe6a0cd20c04cd520c4ec50f449da7b56a8d8abb472239db46c7aaff0e2395cd0159a4166fa023073368c12e06182eaa090797b7d57fd474409337c590f182c86971e9f0c35da85817384207fb442f0aed7c3ef84e2fcec0302047c435bb50066306402303927b83d0f7f4c99b11ae81f50537415ad11a6353258a31a992c72754a89cd907b495516272a8a38fee30472a1e87e9102306687654b8e8b2765dd6d3936a82184cfadf27f1cbf188f4df1539e91c00dff99d0e60eed528c7df9d395e62e6ea578020302047c435bb5006730650231008458a0bba000b1c9d8aefb899174aee7ea71024b949a04dd1c487b5004a03bd54275ac52ed7317147264030fc882091e023073338683b7defcf620a5ddd42c9eaee72047c803cbfd6765c21ca9017ce99ea70f7bb892833451e85e4a150cfa51a7940302047c435bb50067306502306cc3afdfe3cfdc569e4d768acff9d2246fec142e8d5bdf0247fee5707d303382773cafcd686f806021309dbffba6b23102310087c543696b64bbf6783c2ddd86fcdeaa8b172f698d5bec77225792bede48e4cd78c5dcb8517a5d34e1d761aebd3228c90302047c435bb500673065023100e204a690632640f5fe0944ab15f5a3ec30af809f6c4f7799705551aea76f11dc370395eff93b27e1910991eaf44f055a023004d33ce4ac6ca73e2727b43864e151fe946a1d23114c117ed294199ddcc10a01e53ece6c01fa9bdee34cd63bf18990930302047c435bb500683066023100a6dc3a0825269c88e9952bdf0a9eb65a7324bb036c151d274bf1f9985d4d5510a6924a2fba9ebef10b9599a7c0e40fb6023100d3d7e11704050d3a56a83d3043f1b39316a88fbb94687a880c2d8fb5cb72ab56fa3e6a94b049e2e4144fb26f06f249690302047c435bb50068306602310090b5bc28811a291d0326b5e0e0dc04b729db265094f67fc8c805fff06af706177ba0fa79f16dcaa156445afb5e4b8694023100bd54f6aaeedf632e71f4c9affb50842db661e1b4637ca0c55f6fa967a8b33d8fd7d620ce4a1751a92463609b5917cf410302047c435bb50067306502305b62601274604bb9a63ad4ba78c5ea3598bc90b4cdd8fe558488b699f0a6f7394f22799bb14e4082da1cee05d4455bf7023100fe1b1f3fc4dce9e4a410bde88548535367bfa1980a7b6af0a94118889cbfcc658af52a94c28adba4902cca8835f316080302047c435bb500683066023100923a6235bc5a3264f997482511a1432cabf7ee028f82c5ded78e241747d61e41c799a5de9163558e90acbccc53b92e68023100e6dcfb101f20e6cab3d4db617a5cc8fdc01990800621f3768347fbdd09fb094cbea7a5d553457381b696d12234ebef7d0302047c435bb50066306402306c07a37c0488c724efa4c66a87d387d72912cb6cb4d1a032ce5e438053fe54fc7d57cf26431fc408ca5fea754e148d81023076d0a7c41cfe406e71b99628fe146084561cee660a670d778bfab45b56d594bdb180a6efc26b381f884d999bbe0fcdcd0302047c435bb50068306602310080743d99782062e633be902a57d5dddcb7a121c60a3dff9720b1e7c588ae025c3dcf3239112782685264f8adc9898aad023100f62bad1b8aef234ae65d231639061834c64483f53dc483b4826335edb2559c3bbf14c17930d40f1522324bf54f28c7e50302047c435bb5006830660231008fdaf0329e6aecd84740279fbb8418a9e5d210e90a3a910e28de6a510f4711fddf1f9323837a2f45de9f32ac05b0589f023100f27e719d4e90a38de84cb49dc8ceba87c9bce7bb77f16f8a50204636bc9c27d1553bd9d82755e441219e196d737b29d20302047c435bb500673065023009b4073d05b33f4e00c616d20936d51d47215968991990c501c038bf80b8f550689d8b8293fcdf953daa87d103c5ea45023100a7ff29b733b2c7a3ddc0df4ca3f2bc37a5b34e4d6fff6e68baf4ea020c5a432acf9726aa4aaa43bf80a44ff8e8e665e60302047c435bb500673065023100ba63c8ab337e6834c4308fbe03e24b49e1fc22917cb22964564389726c2ac11960c3e31fc1035e064b9f4ebf2279015e0230549746d4eca6fb942e963664478f9c4da5f41dd7ba19de61a49abc1eb303cd080bcf53b15f2ac03f72598c5f9411d89a0302047c435bb50067306502305828c0f78f412f9bf69cfac71f57f383bf838eca482cf3a99ee338f9cf3df7c8ef140a9fff42808cb49839d03c40adde023100e21010b163f46431b28d538d44b457a319adef354a4f81fa57f65659894686ec022d1c49928b5f07fc4ff356aee807aa0302047c435bb5006630640230116af25bb6960c0c7cb5d3d91e826148f421e0da0ebe621f45032d35cd3ad7580afd033b8d5791761d985333bf6e9ae402307ea2be99bec0ae091e5b07cad12866ac7df000f35395a709254bb18ae7ba0855b5279d35891dfe6b386e989b49d57f310302047c435bb500673065023100fbe7a6281dcedd2e2ac6df6c6f6ca7ffb3a5bdaeece832e8ca2db0ddd26741ba73e7a3864320a800cbe92391e44547e702303085b8b279d62950f5844f462fb30929d987b040bfb1b5b34fe88e8bb85173bc9661fd41cdb86b37aa81820a9d4f43090302047c435bb5006730650230485c2f5a8b84e6e2d94599fdb0103a686d8450e6781c0f838c34bc3fe1ade3c2a4356ecbafb74c3985eebaacaeaae628023100fbbb72601eecb9f8f180c2db7445d594f9a9e35c51fb0d35b0b372b013f04cc9ae9e2def21d47a493beaf7b7904072a90302047c435bb5006830660231008e5cf1fcad0e1490eb236203d9b7c98c66f7f9aee4b343bba283d7c930fda6cc83c7735ffa90ed1c8dec2557faae7cb9023100fb6e72bee43d7dcd7a57561aa0148644c1fb2f80d5b9974e10e9cde0d608bc2196ee821d094eed25c2bbfc4e55cb9e260302047c435bb50066306402307e506a20244023679b32f881d544fd6a1638d5eae1265e9fb369af8d1a91540699096b9495a3b0576ff542ca08952c0502307ffed07d552c540c24739d28fae5640237d9facef7cf6cfb9235844ca6d189910821a5f2d24dd52907c8c68d8d6ef04d0302047c435bb5006630640230245d5a97d411aca1b8f4d777736745cb9ecd0b7974929abd354a5582c07c67a1d51a447da1c677313cec59f54e54ea3702306a9be499f093ccd33251ee44036dd52c3341bb75b73a7975395deb789cfa89b69b10d4a5c4a54ff074c489fd891a688c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310080c381630d5f3b6fafd34f43910ab83a71a2da22bc3d6e9289406f6cdcb4cc38f8c8dfaa7ee58261d505c7ef31e4b191023047855ac9937dac904a4317374f2b459aba64d2a1dcc15310092bb8f0339278a38d7f0644a2062bb435ff4767c731caeb0302047c435bb500663064023069f472389a1a16dff506d88f830134b332cc522cbff607a4fdcc622104ea9591c75c5b9dd16aaf3dca9d12b45942fceb023077083c00080657177f1d26f20758145ded54fe747043b148c036c616c0488dcf29ed57bb91d009f4c7879b1ca67b28970302047c435bb500683066023100d439587966d8a391647cd011d203385c407c15fe4be03ecc07df8bcad620f7d42be16b1b5f6a8b59a40abcf4a92a424a023100cc7a155f3b6042cdadd264264c3290d048213f807d9da38edfa91350f598ccbedb3712969a820048f4f59dab40d89a1d0302047c435bb500673065023100ee4bce1a0842fb5248fe11165c577f175eafa7339093490abed0942ec6cdad72ecd466d87b533b676953dac5f0620b62023034d2cb6cd58c1205a8736e792a3655db0c72107e6c21ff5995039a98144070139c188d81634f9a2906e9e795401228fd0302047c435bb50067306502300ba58c45a7d4888e8e6e317f69841195c82006a6b4f232b068eb82704a08d438f61eff257ded4c7cff5f57ebfe30eef8023100d139dbeee1c4f3b17a9da4dc508e6c8d37d34c46073e5a022bcadcc86517362beab05f8fcf8850a9039306daf7c8a1010302047c435bb5006730650230087d1d2ed3ced63a655d3eb5995b61803549bd6a32bb658ffe7e67bff5f796d70c613fc56e8014fe219d81bc1b9ff103023100e7ffdea98175f48124f50bcdfcd55f862a4b4053c100d2c64c3d6f9ee601a98fd1c02dc53fd3d29c543be76ca6659c450302047c435bb500683066023100e9555129b71895565b49f37eb825a192c352e06fd002601ccc4664312390a4fba2f36c9b36cd08fd9e324098128a2fb10231009c1b399114f39d12c89c8266442590ad5484af584230d6d7b84d45ef2ec804032de3313f8b0c142a9a0a6445b91f42e60302047c435bb50067306502304d570207e814804e67d73646ff7ed7c313d78be45691d85bab9cc31100a12ac64ab175707a14eb4476eb40308eb3d684023100935217a2369b2e3e16bfb970bd1569962a6fa5e09b1d33707ae8ee8119a5bb4f4a7635c343c7580dbf2bbe02c8080af90302047c435bb5006830660231008801a1c83df14742d1d5b32b47239633d5a93ad21b101bdeaf2c4e5a2a38a8363bdefdc7f04d334e3ef60329af0e447e023100fa3f72a699ee11d8c10aa6025e0b89435c27f60ddeaf6aee286998882ae33c3f8190833f7732d0b4b9d003da5d5288820302047c435bb500673065023062b01b67018489f57237884c134617586d5ad00627d17d4df65daa54ce2d53cc80e93d137352b50d9f8d8f500dffbc07023100dd75de26cdb2f4e67a32ac270a6cffe40dcd13bce2a2e82436cc21018cc93572eef9d7286b85d1985d190d8f02d4263c0302047c435bb500673065023020d4363f68563236d38ff99cec3a1980bb1714c1fb882bcbab79d33a60ff0176fc36a01208defa5a13469c32296b8f29023100ceada9d5e0498077663d4dfcbda1927255a4b22a9d3b5c0756d692d266d26a5ab41ec0e5517241cbb5c8174495d03d720302047c435bb500673065023100cfdb2a84e3406fbcd038b4f70bd11383d970ef99619eaa7a48b0d47f3d888ea5a783e5764c01a3ce35145ec6b3c4c96b023067ce69162e5ce995de2cc8bcbf03479a25f004186f1fc8ec01c118bf2bfa845dcd48d4596a27e04fcc8f4d77e20049450302047c435bb50068306602310085dd8832f11e8f9d0976bd158a7389f880f364ed7ae537c772958471b8bf44f2acc6e7896cc487f819a6369cb29c207f023100927d3bb8f2ca8487a1ca7aa21963076aba1fe264e20234ed9eabedca227bd697bef2fde34c73d9e871046acbaf5662a70302047c435bb50067306502306cee87b0e6ac70dc39a2e50cd6d0a3f86852b7d84d3863af05e6c746944c95f433e9139308d460c7eb14490cb9a0b0ba0231009d58f6b57b1202417e96eaae0303efe6a732acce40063ed83b83e61dfa1bd0c9e55961af0e53141b07b7bb8dfdbd26130302047c435bb500673065023058e95c0598cb1a5b14405f2f781bd0a51c963b41001719551a8b417e8bccc866153d79092402afa8cd6ffdf8ee0a510d023100c0ec511d6e9297947631e5cb77c7d79b91ae1d99f759b1cf89a1f7fd8491dc6ff153d15100e3b080fd61dd5fdbdd6a200302047c435bb500673065023100c07d93c185feccd705af59e059309b315e3bb78ef766ab20ec680fa0f0e12959b783fe527d158b4379ce55c432b168d0023042616eee35ddf86e84a1dd75887fc5508bedae80c62b1823be4b80e23cd0ed77f7c5a08f2a78b7509133beeadfad1a5f0302047c435bb50066306402303548d74913eb77e9c8a80d7201c2155c2a487b425c8bc94a0c36b7218606cc4787d14c692734392ef5fd987578eead9f02300c3e2a00bcf0c2ba404845bafd19535a577b5aeeafbc23f5e3e24a790e2fcfb49f033a2319196d0e35e3260ec64c0cb30302047c435bb5006730650231008dcb1be122744bbbc9c99e286468a15316a4c5290e3758114bbb9c81b6508eef934b25f98e8e1ee4329181fc2f13b29502306048f486213e86f6dd5e712d0c14c2d693aa8e2a4445be5ddf4fee5d192a01d1b6a267b51921b3ec4bbbb48ceb1feb670302047c435bb500663064023022d5f65b7c55ac0b4d59931f364f874f030c53ba6975132e9ba7e2a421f5e50d14d745ee12ff5129984ad1e07faf25430230568acb4a763f1ae7af9a57bfbbf557d3a3be1c489128e0c9ed27cc32d95424f92032298c04afd0ba55611de70c75d6820302047c435bb5006830660231009f2c999c388b13b46b4b53ccd98209f926973918fec5af498e99e41e498a7b90adcb4b4e6fee50ed70a09679bdbef2d8023100d55a70458d55821a054c2d63ee103dd0ab8f2303bbae19b5704cf07130dd5706354ab162f46af886a956261682f9bbe20302047c435bb500673065023100f1e9983aa0b57a328cfa87706e359cf3a1fc3cc407f9da9c78bd692d46d2c040048f597584cce02ce5b6014a4ed2720b02305cdfaff43337a59dc554b2fa47358c6ed7eb344d2738a37557f2fad1bd719b0f35fed5bd0725a4ff2dcdf53402c1504c0302047c435bb5006730650230029895ec5b12f24ea5ef72b7e5b2678e4063257695f79f8da9c5c9b86c2e12eeb2bea0fab9422968c6edd7a2d506d195023100e130df0e36568bdb36f971484a273fade65f3031afb78f4de0b8c1d32ea4ffedfbd0cbf9fd412475cea90ea904e9965b0302047c435bb500673065023100f32992657b0609705aa3a7e24332bebc8966e7496e70acc6d7bbcdee2237c709c9fb9ad3e357ff6b322edd614b3a4ffa02300d33197dc1d7ba9d7fe8bb378a7c021710396c23a1b37454cccdc86001be442a50fa11a4d801976c8b43250658b9678d0302047c435bb500663064023004a20cf00a216ffa359ba319d444a89719ebbe5f3721e0dac0e6b89a2adf1d46263b47ea9190dd9752c7227b705a053602304815cf988b7b97e5d802f4027767c2edec93fa90c08955f78d9623ac1100a8314f26e5d6f6cd8bd38b6c46964d73018c0302047c435bb500673065023011fec70cd81b85bd9734266c0f6399bffe52a40b60bcfd213dfbfe40927eee681a13dad630bbe36e7c05bba3b9344a96023100e1f15f1a2a9a40bcd2d3be4fe2738eb348609ade2a3ab019ad1adaaf2fe967b73c231e8c28190ba13f203f90d9b44fe90302047c435bb500673065023100cee004d3b8599037a226332f3bdf212665c8263fca330e6c8916852978897c0a919c37149af7f7bb4b6838f8d8c6d85702301db9d479a3939bf3567df3b4419d0e10925f04a53a8227361ff00ee71c5fae05ad21eb4a2082ef925edb7fb2c55a86f80302047c435bb500663064023011f0c18f53e4143cbf077f0a7d54353bb76aaa693eca98cbf43612286d1a2cd184ca4c69d16f96f1a676be9fc4d0468a02302855987f812606c67020aebb17d93abbb8bdc73b9e01d6d4508270473ac9aa5f3bf326cb085b53b05f19c679239c92580302047c435bb50067306502303c91e4c74df534f6805975a8bf66203186424c6ac23b164d305f06f59de3e960a42d0c7e57c379950f43211a4bab576d023100af2f251cdcc68b398ca6b01675b4a9bab3b01002375d5b74f0b204375ecf020c7405d38ccaf40fe1c25295ba98e978270302047c435bb50067306502303fedd8c6437455a09d849a4b74d95caca24e2319049cc3f1ae203a26307d8178de77eeb2c7b5aae47676ca3f2629ea8e0231009da9a87a94bf9fdd7e5eae592ee22592cec321653c3d64eb5513cace9478942e8dad9f4322569e8f5f5d3a03f3426daf0302047c435bb50066306402303520e7ebe7100aba07860f4384978240d8d2de99e31c40eab92a1060b86fa1a323bb087c668ee6a86597b3b36c35590f023052d5f61eb285b3a1fbc6961b88686a2c62b58611f3f087e14fadce095c9ccae9072d248c2315f22351c0e082548b3b220302047c435bb50067306502300858407dd04fd775b9bb4cce8c02d05056b90a349a22436b25c638bc98a6bde1dd8bd781ca3dba4448cd04f741585a1602310097549da25ecea161331cfa02543de1508cf348810cf2980f34502982c63b09f04a010f3da74bab92282bc1e6135c492f0302047c435bb500673065023100b49813f061f5f5ba4d97596e3d7d529e44e9b81b09e0283ea72265bdbb23d7ecd5051713381a42b70902f75d1245c08c02303d538bd22bda70850177776cbb99e693b0f6499d6ba3d00c6083890e0912ff61189dd1d3f173a2cefede87aa29c7b8e10302047c435bb50066306402300a73cf96fd63b3949df26381a51ebc7fe43575da0f5251a54a31cdef040e452021d28121b0f605db0e58d38ca48cf04e0230307978bdb165fa06fa234306c080bfee326eb04ab8df059a585c0f95ca4ba2f3fba4a04e6df3fe9cae78134eaa6ba22c0302047c435bb50067306502306d00b29ca06b333ae4ca1d6a4f2dd2b5fe68dc5d18669e2273d592ec59ed4ada71fabd8664d80d5b1fef75132195ed4d023100952d70549994a82757c5bb8e9b3671f7dd166a8b971a16327de677e62a0d5167d81e1da7a5578193d91bdd6af661de940302047c435bb50066306402306e9e5b385d78b181d72338d009137a7474e6bd24bcc95558b64a95af642a6958d19f8bafbab5d5ca777db7bd4a2256f00230021ad2f129b4424613ddabad3c7c90a34e2606a0b1d370b277038c86ed91e023c657468c176943a68dad036d903e68860302047c435bb500673065023100dabfbb160fec18c14337abd6e94a111121ef850a83f744001253f3cb4e996487b7e297c6cb03c1f55cadf29f07a9abf802303a93e856871a7ff5cbd883ac392078f7bd0412a61447d8ec9b3c4e8c62eec64ad49e1848926951944b785ad0fdfbd7510302047c435bb500673065023100d1d46aa283b3f7176be3c41a394f96e1c8933e899b35e136e782069f210efcfa186f14485de6c455a8e31a59279db03b0230706760ee625636156715f73dd326bbad9b2038ac453c4aa9cee560260f0b8909064c9a67ef6a6086f8341b6f9a2792d90302047c435bb500673065023065549bbacf1fa9c65fb78584f0c7511d731c619b87f1cde0c852115be51e03e3c8ef4d8a5c743772399e25698e250210023100c7f586e9636807d65577e8c446bbb64c8685cbc719bdd1be9456cd918974da3bce2a6684b7c4eb23d4f5d161b318ddbd0302047c435bb500673065023027f2e27abb974960d08a4f6775401cb179d79ec5f3ae4fab77ba30b34be466ce0dea964cadbfb12ff79572189517d316023100cd16beb9e8d70f21921493f224526659f7b563b8332a8c28838095b2449c9210ca2512eca1bbca3ff15734e61b0314020302047c435bb500673065023100a9904e57d676e852c6f02705e577a63b5bebff4fc74acd88bc23c0650fc3c376958c80612963637613721dc3fbe4eaca02304bbe146cf3909158f03a029ad1117341ce5abe492bdad811de184b436838cb14fdaaa8933b284a74d7485742f551b5a40302047c435bb500673065023038d77586cfdb0f9ee8f99987fc1ab18189821de929f7c5b1a250aa83cad29b8250a50b6010c983732c151e049c8bc2e6023100eeeaf063e90f54eb6fe564f8782763aa13ff9751d6e90d7e0ab8890ca6ba977d7e31cf55c52e2fed3466869ef0e0cfe90302047c435bb50067306502301ff92846b585ddf80e48fe42243c45e5898578fcf597fd17fe366072463c726a1cfe88beb1429576d750f70dd8be0280023100809b2843fe767b83db324d2ba19b9f704f3ec131980d25bc08dd3d8ff4bad8fac7528e5b2f4ab82b6ea61b2885169e3d0302047c435bb500673065023007bc303c6eadbaef67d85e9cc1a4e999e2055094dd8f62016d3653e280a132fc6786532ffbea021c0de60ed6788c6e3e023100b882d2a841721599bef58a0d202fa163cb32af4b95d1da97d146f9e718027ad1759d06e244048f0a0ce2402a0da5f3740302047c435bb500683066023100e574b6485350142fe165ff7b50b0b6f751839982e5eec43e34cf6ba7d289d88b1d2c3bd60a78270cd071af2089d20635023100dc13d04a34625a4965ae3d2a14d99543e8e764e5cfb220d4aed9c6366dda12cfc01d732a170300fac99cc3dbb56067530302047c435bb500673065023100e891e0d2421ff8dd83f866110340fe2ce5540494fd085574f7d158dac7b487a2160703d4218757af0936fabced73b7fd023037aee055e48b8a8203f24761fb4b2bd2550233f5118d3f920e198e81470bb1d781f27b3969c24fb5d339a5691d1fe0770302047c435bb500673065023100bb510448c1c1e045cb7df6988c01e0e8eeb24c37784b89fc763f8afae7f779d6c302bcb71eb41e7151fed35e90ba84e0023079bcb21f0904b768bcac88098cefc5fcd834d33903f56d2863fbb2b1c656b26e4a9a42b61a6f8bd867c6500ac59d15570302047c435bb50066306402300ba23a53ce2cc14ee24cf9b812a684fa39b7c9c616899b71afa82348816c014b3582ac56526e06db5481b150503374d102304c605daadbd87f36a58d9d14f5cb90f3c34f33f7381049dd7a2f7138b68f8ce3d247313fed783a70d3fd9ff8f12484e90302047c435bb50067306502310085d7e95146870723f372e1455f5d59296d83c83f97afbd3909055f989368f6f80ddf6ec3a1f4a01111fb36ae3b13932d023079bbe1aba61935aebfdfae2f147aaf8c772fc0dd31a3f0745872fcd5482e3f3b4a749eb653c458eb206da13e5bbc7bbd0302047c435bb5006730650231008f7ac0d71d1cd93403cc6fbd1954fa3221942d521da9da0905f68c09826ae74b70f70f0ca058eaafa8dce651f45b2f38023003b60d66a4ab51380a5810ab80f759e29585dd3b9b4059e466c6e6dd102c2395ca1b8bd5ce85a092a4a21b4e5a467ea70302047c435bb500663064023039c257867e98cb99cf317995c59a4bc894a314f8e78378bdd71e9eed7fc39ab054a93eed0c138bebf6a5c6ed72b6da7602302d124d938ef9a37c79f35d8c9b2a01d1cc876177fb3600862fcfd6b1e9c7ed131a8e832b4b4db062c9834cd5356c62b00302047c435bb50066306402304eeff32c40014603fd0e7e94059ae0956b059b5b0495fc99ca071e6457c96160771dfdf616a9a1248827f67c51bbf6fb02305701e978582f969c826c71f8005da4c91a5bd23a3f678aad111ac071463ba523f0590fae5355b43c61365c8e54e4bea80302047c435bb500683066023100e1ca4830b78373fd4b5e62d8317c8e7082a91df259c1427b2043ca9bd5ad192e7a615a4b39155a821f339063cafc0998023100c371b057812e227277134add3c87dd3d13dc822fecf692d807fcc57914c110974b1c429e8bcdaffc2a8de19e25b01d020302047c435bb50067306502306bb1c598337d0cf85ece874b5dc7dbd7ed4c1280911f9030f674b5beb04d7e81b3b78d7ecb0934a6261bf9d069dc108d023100c1c69e869458726af12539b131f29b10cf477a2d1cf22d452ebf0416186a83772e7de8386a7b25bbc076edbdb09200e70302047c435bb500683066023100c21f8f59f4d1fdccec872bb3192810b476edde03bcc7cf4377de5ba78a4dcbf3974645007896786ff9b3183f21cc1384023100c06778aaa083282a8fa598a7b63e3267784a38a35e99b260ae6ea10d438c4791c099ddae506d24562d1ff97cf3682ba50302047c435bb500663064023006c9b593b4973d2e4ea6fefab14abda0468361f67c22e8b3798fb19fdfe30f3e05060b9f0cd38ab716ff4cd209a22eca02305269df1834b3b51ea1fab01e39e0415bd4bb5ccbd245208398eda8b035135a6a513c450699f3c5f8f16c684589ceb6a10302047c435bb500673065023100d7822d82c84e849d653e78d2f73917f8ba037df4a848c68efa6e0734ef55fbbe332a45fa9e3e1670efaf86ced072b83c023076e3ad0938132014737d2ab1e2ffd4c0109bc9a33e8142072881d49fa4a494fe8e15ff5d52b5eaf8fe2aeaed80a740510302047c435bb500673065023036860823a1c7d753bf70a38294c947e2202e0551041e9df99696c6acdcf9453b9c118f48b32c1971423f8adb4d8bda6902310085256382834e696443ac48ecc959482efea3b4ba6339f012e23e2d7c3c350feddbc4dfe2b43ec061cf81eed0d169828d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310089398d7ce22d69d52c3c9bf6183c1923232037b3d0b3a0cda07afcc81ca0ab99490b2a4c392610d31352db57fb75f623023100bf2a142313ae34f2733128a9237922a08f2239ce72fc92a2ab23d35e1411e4d5de3211b45c507fa0ae6321409f3fd8020302047c435bb50066306402303be38783285275ee83d11050f919e9b6ca97e07421f1b728ed99791916f767c09d4dd7d8fe1ccb427ef1215af92422bd02303e46063d871a717be8246728caea11c5ccf9c84e8b2ae99cd5f040bebda7547e859d94490cfc948e537be962bb57bae10302047c435bb50067306502300218f30fc623d3dc4adb2667f839b78278ef3aca92b3dd92277bbb5b092b3e111b4fb80689b9ef94ee4cca08fcb67ed402310085e5499530aa70790c3d5878607838f764338ef2f65c6b2725d5ac4b870a2551e77f2e3a3077679e5adf60ac0c4d90e00302047c435bb5006630640230546925a3c6d42bc3ae00465562467609dbbc8b2a7658ed3d66a4cbe9afc47e10b62bec8dba66308c0e9409bd543dacc702301809162ef711a055e4d54cbdfb969367076f65e8735946c8aa12a0486a74d6042589d27ed39baf1c5b5d4c4961b437d30302047c435bb5006830660231009c9c539e1732e47ba28efd5682ab8fa2dce24e691a10b658950bb7b325f7b68fe3c90472e0ceb7b7c3f3e74be95c6981023100837d0f0a230bdce63a2a047db6d93abbe50bd5335f2b7e6cb3b0dd65b91c280b2e34d7ee5d5e5d6be821e44e672ea6e80302047c435bb50066306402300851222a400be2cdcb3ecc6c8ed763dd9d7bd5c406fdeb471311d3564a2df7b87593028b6d593aeebcbb50a26a95dea402305c8f59c32c7bbe86ab9ed63be0a46388f72d6d7eeb0ef026c736037a60c3bc98cf2b66edebf37a67951253c55810c0d40302047c435bb500683066023100cf9a4d7c8d85efcde960043dd5fd8aae5e134df97d30d17345f5af6e26c52b28396edae8061f88e2d5ae0a06ffeebe16023100bb11d8b49b27e00442a2532b441577506dd34134468951eeeb3d01a7929fdc3e7c457dfe8d277a9e151f188fc61d185f0302047c435bb500673065023100db66af742e229f1ad79fd70155090eb919d0a108e78602ae38d5e508afdbb89aec42659243418509daeb10743ece78a702302b61d39904e30ea5c5fc06cc1c41b30121ac4eaf38f9392b8068febee84e9a8ce37e303e440fd69a844636fc055129840302047c435bb500673065023100e65e68d213b89895104cc657969e748a332836143c05f027d727b4af0c215373c4a2fbeaf3483f7dc660f2d768418b48023016b196fcf098cd1ca02b0eab867ae1c93f7520590d1be2f8172969faae66b7dcbc43c2b026b178770c5162cb9e5484a60302047c435bb50066306402303ef2f4cf08f8849389fe3761e733bf3e144c935d201d4000e416870d1a8f160404c8009f4df4187f8c62964b2f58b94d023019d5462b54ea618890b0da3d6c842eaff09d561accbf4bb92e53a1c51892730698241d32396f92802b431f79d6968bca0302047c435bb500683066023100b4acadb223fd289ee708a49000734143ee04cbc59440943089cef1ba576d9473ec56a701b85eed8fd1b584babd85326b023100c72745c0680c4c80b79fb963d53d2fb86317b85717020d1fcd6c59870f1c9b498a1fa0a54e95e4aa2dfabf50fed3ec300302047c435bb5006630640230008a02dcbee23d9b48de69545817f6447fc16b61247232003e86abc4ec07c3e65318860bd4c54b4dc2346401429772f6023067a504426498184e0600e8dbca8bedafa89aaf0020d270b9a9b8f09bbcdcf75d48980072004d3cbdd204ca1a0d51e0e00302047c435bb5006630640230385080d49afd9c1e82c74ba23d41eb5f05e817f23d7c15457ed69a4ac3c5d4441c23afe60086f48d1c7e6731b54fd0b60230446d4e3019bffd8e5648e63fd529e8978d31672f2fd4140a6919ea2e85949ed2b61ec0f30fb8c0824624043fed9335e90302047c435bb500673065023100ada04381606682520e14187b8dbbdcf144304b545a08ba0237f553b1a14ac37dbddb3e017706ff76b95d3a39c1b5c431023000c8c2589aa51d99f8ff2681d145fea9d951a7da56cfd1a180368d9539eacd2acaf65a717f5a6454727088a165ac3b9d0302047c435bb500683066023100ebe1486f9bb37cf909218f263fa82e209848520a732d6fec030fa2b1041befbea423d0b148e6c6f9712eb3eebf4b3721023100b858f2c3f38f281f9fc340d6e769c04424056003b191d8eccd20d8a6709ca825c8cb365091ab0b65f1e81cd3bb7cf9c90302047c435bb500683066023100b61a64f7b39ee06267ac9554ba9962946f030fc815dbdb5b4181492e4d9fa67a621f579b25a1f88e6fb209e42eb6a1d7023100f11059724528d807ee2ea186e93256b51f3c4143b988d977c10d9ef283d85da69d0ca5fac0894db9496e8c6388e9ed0a0302047c435bb50067306502301c11898e8947f9f9194481f9872cf4450f54657c3771067d86c17b7333009babebda3d9cb94fd2e4cca455b125dfa9090231008f39bf41806d1ab96c4a7b9799c80a6e3697dbd63ff77c8243601c0ce141dd2a893ba6eab9e20353bb6fc9faa3c19eba0302047c435bb5006730650231008ad9f2f9cc8774c9d1151791df8d4877da1c2e68f464f10f3feb28532f1a87dbc44f5ae8c271d7910873487520da8faa0230437fa454ad1fef2ade8a453555cc2dd3d711a7e025fb4fe3fc11f5049407a0c9f7f592ffb6216e50b3a3ff439a66b6990302047c435bb500683066023100a43aa6729ba1a7120f35ddd8ef157684c536e6deaaa4faa6bf2e936898a0eece7e6faa250917b10df2464aa4babab20b023100da6199e8d1119157248d0c4d1ce1fe317cd56193eb9c670b24f00a5d65ac1925e6254865536d5b53e1b0f7c7f6c5bd680302047c435bb50067306502307125215411c79f0715c4b11ffb531a9ca0414efd4276d4f75d5cafafec225f46784b30a96a70bee50448a66f82158fcc023100a15070fde6466c7cb50bf636c802f62fac4b9a989c7a49776d217a37ed81369f290dbb396f6d370083dd4b0838a050c10302047c435bb50066306402306676d689cf9b5a3f1cdf94ace7c9488761e5129f307249b1ea8f570b00ac5c2cb15dd2d919982ade1619c6b4eff1bfe602301a8352a013142a9f2b9bacccb1dee5fa42ed77bb0052aeab390d907fce4c6593c71b0111beff6eae63ae5df5ddc983ec0302047c435bb500673065023005dd360e281bde93a118d4ae8b3224de8ecd3dc8c1dd6b948cbcf19eb43bc30b5d77a7f31306d06df8d6509b2a9ebbcf023100a31d093b6588d3bb20b8ff76841ff8cddefe778b8ef75afe31394a76b0290a9d1a99f4a978af1be80f480b1c872262950302047c435bb500673065023039de8c779fcab899082074aaf4705757023bd1e9a601c33d97aeca102f6bcc1aae6772db2342b89b17c6348c60021cfb023100db255e38d2c536d9685e4facb91e0e4faeb9119d4965d4b79f263d2a65df3b79f6a0269803f9c978a5a7866ae6ef08fb0302047c435bb500673065023100e2e5b7ededa9a3426b9e6c4b94322171a93cc4ddaa64e179b947bba99912aad8e6f6d6f931b5eaee37d64eb2a67a7efe02307575c36a75c8f604c96e8e5b9d54675fe92ea25599c5a8f02c72b2ec95ab26913812ccb1fa3e40a249fca31fe48410030302047c435bb500683066023100b80f11fb42ec0f10da55ae90bf5315dead41a7c103bcbc7aca9ad4cff58719c0c1ac07c2569247b31cbde8c9ed2dd235023100cd20c4398b2f25ff4a2e224787aa3163634758b68cdf2debc3230eae9e0fbf79c441a5c81e33fd2793b3731ae0c25a050302047c435bb500673065023100e9b8659c2dd93b9956f1029573e17e1a31f614d2e3fd0ed10d01edb54a7581a86f8f392d9ba59c9d1dba17246cd5ed140230179f4babae41132ffcb5a5d3c588720c2dfe44b300877c39b41768a8e1e96ea5917695789f4802c03dd1d565d56b738b0302047c435bb5006730650230177e9adde7e1a5a059ab4c03c6daf6ea5c688cae17c04274646171bc0d81fae8d37f589ec79f6fcdfc5f21d9314eda58023100ff3b7ca33b683d38628bdd07d81effa613e47e737b0edecbd076ff227e79347f35e69c6292ba895b98a68f0bbc075b910302047c435bb500683066023100fc1ddc5524611f0b06ec5c2d978d32ebfef2d3c3d409cd00ee4718fee9ae5293104690e121f300f83783d9f7a6e01727023100eb995e0ae1e4d17fbc0b532beba42ad4ae311553ae7451d796a5968935c56f0102cabcdfa5d5a49f94f453b276334b140302047c435bb50067306502300f6042ed15ac9b60831e8dfefe238cce5b7b5f317bab2726b626ddd530a781e43cb8e0c7e6851ee02e0565c8ac019bfd0231008b7f85f0689a3499931c70ba2cf7eb4716498bacedb20ea24b21b594d18b92dd225d462df9db2ca64839c4390f2c6b230302047c435bb50067306502302df8a0e420187869a83fa9f54a253490c69df754229ea118ada45cb519e468acf90eabd8dff5a6c5adbfb3478f2f6419023100fa35a0c9afcb2866a98573bdefa2f3cf9863a7d3d09b05eb48fd6aef2c4408e1282c90f4d061818444897e622e38d74d0302047c435bb50067306502301341aea19b8f2dce8327aeaa7f1475bdaf273ce5e21104a9ab6e771687c1d4971e0ea412e1afad0b4a41a6c1f1f34797023100b1c82f5f996e858804eab5aec4b90e9246ff1809c02d07ccab4e79dec1148c2fe22a50f2046a17f8d07edd464a192c610302047c435bb500683066023100f4d8f1fa9933265f1d02a3f0f646cac11135937e050db24eae96ad4d3135cfef6f65a7793d3240aa0746efa051ed1d1102310083a1b3fe0cf78d9bc7c4ac397aa159616f7bf134e8376700f8729674aac0af6af2614845bc3e896632966e051b606f600302047c435bb5006630640230309a6f17f48899e053440e603df95165e578f551d2c5979bbab14870ddca1e6ca00be158e9083f227b5276c7f1227caa023079998368f649e35f28c0cf0a2842812be1bb5e46c5ccc9962ab7bae72ceee26dd45277f6e1fbfdbb704b0e1b13db96bd0302047c435bb500683066023100f4f9defe83e94894f04340250badc1c220731056db5f8e74b545bd581af7f913cc33dfa6cecf5290ce2cac7d1fca1cea023100bd380bd319633c8bf7d75256a4dac00cc9e3cd8518d351ecdddb71080ebe440c9319f26e0fd93ef3d495d7340f4e088b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304922e5739f7f67018d3f5161b446b5b22f13698517ce4e96f9ab5b9fbed5eceafee3f3b41876763d68d0eb5a07262729023100c72782788dfea5d3fefa2c7d008c9a6e774b001cf6f37f422bfda4e92ce815c1febb437f8a6ccfe251081627441afb260302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310099466876e954b3bbf4105a8df7bffa0c40ec692b83feee8427921d595d64922fadd86f4053b6a23fc2a7ab364ac67be8023068ba8ee0f96e11cc2f2432139d300356d7019269dc360c8b3d60010e20b20d501c8786e0d235f7987a5668d518db97950302047c435bb500673065023100cbcf096f14710f127018e987cd9a6dbcc2082d4833c18743ac1274189138911b7cc377913ea69efd2fcbe6c20ac151d50230600ea8022c326eaec1172641f9e7065b07ecd352a012e71291729af5572877e189ae4650b8ab438446e1582233fb812c0302047c435bb50066306402302a69108df7f7e5b6d05333865f09e69481d63735437808957a7a88b9a31fe30e7232155d2532e457eaacee57a43d39b502300aba6e65c31d78d284425150a250c261fa65810bb51dff21222087362dfee3587f1680b2a91ad4ffe15ee963be55b1e40302047c435bb500673065023057b097d4c5f26a11335f32a381cc95a0e43d48579044ea83d83c76a2cd2c0f70d7dc147a218150df6408eedd8d42070b02310095837c9ac9419d5f3a5fcb08622f72a3f1c32b315d32a2110e9296b0b91654c2194224534cf324c0fd35ef9f780a99cc0302047c435bb50067306502305bca6651b9f5958765f06735cfad7d084c73855e6483a221df07ddd24c36b145f741582da0c7d884984cb628d4ec8820023100d1d6dd956610f6c70198a09820f41132c0e6927c369a0c33647da6017fea71a8d8ff3d160cd4a15689ed2844de18e6600302047c435bb500663064023015341894bb81b8d94b91b8304eaf7eb6a6a5b6fcb2c7f4ec6d8491b70ebf4afca7aa818c1d9777c8b1a835fb730916da0230469a30772d7a84bdeeee86818a6473a66c209cdb7e9fd7352c075c90449dca80845778bbc6cbdf7b7a700c7a4706bdde0302047c435bb50067306502303a708cce20262c39bd29c76056456b02c4bbf58404aa31170d3bd4374b06560df29ababc9cfea8efafd847dec265899a023100851fa1387f50f07bdd3b01c62880972963ddc07fef353fdacf0d5d17e22330e1a301a711a67e5c68049bbebebf2c4af50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300629cc4f4d5bcd9189a987d732f6f58037f8d1632943c4bffd213bcfaea37df90d7a16f45fe5dcae0737f0c57ebabb8102305cf9451b4e84751273708e9dda5af84d0df4661f1ed3fe1cba0d2602eeb57c231c2a3efdb80db31537c9eda549e256aa0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305d74cbaccc504e67c8faeeb46ecb172338fcac260f6ca38833558e5fdcf7d211eda5a9fc4b2c5aa0c05f184f2998914b023100c53a2fe274f8d8ee2f516f5d87bff5dd6e06d396e02a350c50f5c7c455a55864793e568e8e9e813453508131f349d0630302047c435bb500683066023100d45b55f94ed7d22a11f30e232f56f43ee58036c3db5d646c8a6c99d37cc436593ff119ef13bd53125a2a5294c8374f4d023100e3969cb76065478e6fbe3992a619e856e2c4d02beaed502d77e5aac77171491a8e1c074a727b87e1271b29a1ab939e690302047c435bb500683066023100f82dc83cf13f620858f3fab79e052a223bd8c6730a39882cb9a8a871759cc2d3bbb54f313fd918f78fbd084d237dcfaf023100be5e4706daea19d7a01479bab6afea8fa97df2021e3ba0f3d215c038da5b8e711be1a87955b4363b0f202be8bf2e57300302047c435bb500673065023100965386f08f96341a31136243f5f729c1eac6a25abd0048ded2f877427e52a6c3c460affe7311e23f3b971fcdbad178fd02302ebd8a1fe7d466d1d253ab3ccd67720927b4937be505c9846a67d964978e4b9811e72315b27eec4dcff8db417a75495f0302047c435bb500673065023023b6d5970fac00956ea1cf016332591690d5bf6344f76b24ae768584489925e4faf4385ee5437e1cb50acce51f70a3ce023100b72f55e20f1c748306f4b1537fe5279a473678251fb2bb2659219a228b7067ecf6494b39479fdc08aa043c273b148f5c0302047c435bb50066306402306b493c0d6d6e8d65ecc8a2f6b1cd0d2e41e70f3ede4bf3a68680a4643538a189675b637b5176c4d52a2098e36d62ae9b0230077fc65b58c8a77c85474e08fa694745f813382b3c290250f59680b4da26967407c585d76dc43c5f693b79ae1a51cc740302047c435bb500683066023100fc16d59bd87d7b4df6867b32b8834378df3831d50b6430e3d10d054120920d825ecd9cf2cdc6423bab887e1a0ca348f9023100fbc048d99bee1ba23e0ff4fe71e015deed283419c80ec5efe14ad44fa12e4cce187a4b797eb1100955ddf7a716e737ac0302047c435bb500683066023100ac79da2c5de2f4322e1801b538e0abb732bb9c7fe4ee597b506bcce94369b9a4726b1ccf77946c4b43b195780ba2f90f0231008c9e1dd2ffd4620e706942377b2d3081e3624c69da6c5a84fe9b268844f9276c3d7e91cbfc0377c41de8e5a6688c5d410302047c435bb500673065023100cfcfee05092be86c5d209b4fe1b7797d3c9d0d27cdcacedc3898105461e58494b770a8ffb7cccc17b28850d46164ad140230233778b30d0644d304f93c5015db0024f09c1d431ec4def4d3055e6aa7314122c8d7aa6cf50e4a5e828586b0f02bffa70302047c435bb500683066023100ea32c1b1aa83d3df338f88e9fda6c7c274579861fab088cfa463c2679076eb10abca551446153e51e0cd04d81099d101023100dbe9ae40edf358648021d8882a1d6495038ff0958422903ad6a21162fb26b1f1e6590868e840e4261b363ff68bd75da50302047c435bb500683066023100dfd0c0b7102256b0bf2cb8c995d65d801df31d83b3101091586a853d5b1ed9d72a1c7a167def88b325aaf3b0885767bf0231008c77b93355648289c924042dfdafe201612d60d6c7c6df54eef03425a817b4d3291b32f6ec71e27bdfc0303618f7b0110302047c435bb5006730650230292a7103291269f5852d253f2862afb67c5d8a942eb15c66115216c67e5a9f5ddc82c22ec1cff15d2d5f450fc995e4960231009d88d8028c50bdd512ee64661623becf9ee2be76c9b250fb9187151d911fd1f588250ab7740dd69c483e6dca2e00db8e0302047c435bb500663064023001ddd5c8bfb609c3bafbbca496ae3cb7c7eaaf194753316627c279d68ee23c4e901ac8370d5bd5d073e535834454f28c023076e59c0e21c6dd0fc7cb3a149e50f377ef16fa6b16d51f2d88066df190e00a30366148a594250aa9be00d7886f7a3b690302047c435bb5006630640230402eae2d4f0015bab0574e43a01ea8d6f8eaca648bcbf413ee8036fa3c90094aa2f214bef79d70c317fa536248ce731f023058b5e8c541477db8771cb4f89c9a55771b2ce8d6953f9fd885b42aed101cca874e982f10f57c9e1452db3c310a757f3a0302047c435bb500673065023100fa7e9f66856af0153655f58ed2f7f07745d29280a5946f1fe55f5900f21544b9a3abf34b8a3df82c00accae88aa8a0250230317625b20c1343c957d845418da14ccb5de4b0d78960866dacfff9a838bd85f951bcfe3c1aed80ad55c4d1752ea209650302047c435bb50067306502304116d9a2df7bb39cda8866658da52a90b3efa9a439429e638f6d2159c33f318df65d4f6005b63f3ce76cbc3ab92b7403023100e8e521154eddd8d0b8c39fc0b801c541d7bf4f1d153ce2b2c447f0629939e9ee7ed7d78dea7db6a93ca8a8a10a52bf8a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ea4184edb61aa1c4054b5fd3d8082eef595eb6c0aae22a4a2f74b26d1aa9783c3e719c4b16490b92b6cd0528ecfa2cd3023100fb085086ffb395773a941963f7f9ede58f32128219302eb8841afa8b0edbf2ebfd372946d1bb0b7e1fd530de9f01d6f90302047c435bb500683066023100d033f570326368cada0c6fabf39e90549e30ceac3fe46a2bd1d1ab2db9bd8cfe36ba0f3bcab016baffd5bf695db2c8b502310089960366e3ef85a1906c64eaceeab0a9ce01753eba4d298ccb3a63fd7ec054e376c8793f38e4f8d0532962aefbe4dabb0302047c435bb5006630640230211a8fcfdaa4c3d820b385aab5cbe4655fdf4e2c0b253c53a73fb4e34f579b14fa179fabfc2f4ac4b9b9b92250e77ee102302906da161a0d481a46abbea8292d3ba5a49faba68bb5701cb4c4366d88b0ba49e8651a9e0ecbfba1f95f5a6bfb9ea43a0302047c435bb500673065023046422ffe991393a57d327321fbec16210d5b1c45594dd43f9c3a0b853b2e2fba12ca41934f1bf5c8af96dea9a61ee7f70231009c3687b512ae5df0c96c9754fdb2aeb4d42a6476b75f91b109b4375fa01576477aec5ba4c7509d8eb7090298439214420302047c435bb500683066023100ddb944baa866b77ed3f8665554ea236d73e220a0f3ed4bf9b2534f2285974558e159a85e2f68666a5d9c9457469aedbf023100fee775dbed7fab3875c772290bd0d237a00c22ebc3016215fabc3fa668e727cb6cd60778793336dc5b822e43d4c0b0610302047c435bb50067306502306c35fa7c276930807f661de2c01059dbf7ae92ec7c9ab7607a35d6b7a9052f0015ac31738666a5bf74bc199e80a5197a023100fc5b8031f67ca6226dbb1b0d46568c58f6d1d74ee13474d4647e7d2db26bc5e250a588ea516e9f1b653b4d94ef2983db0302047c435bb50067306502310082bbcef7656c1bab670023406be130d58348e49dea216bbd8af2614dcf520837543b4e3e57a5b101cda7ccdd8e9a8e2602306a88f0c5623f021875c8d4b06517b2df87438fc5d775e41a04209986a4cd8a603a8802db8e44cffba5018bafd6d8175a0302047c435bb50066306402302f937b3d1f68e9f174b0349488632eec72f6e1a73a627608640d8be204c8659bfc37aa2e4861457b2bc6991ad29303ec02305507a0211de524c7979b43ff93023ce9ae81387583a4518864edd5fcfa0c85ac27adbf7ee175904e008d4d494936e3150302047c435bb500673065023053d0714de3622ae7ec0e79600e1b5031fa424f50521823554d3cb941c486ada4ff06409bdf7b23d5e6db631d05c1cf4c023100ec3ed6e8bbffd847bfe7709ee1febee38d35d6c6ca30cdef1cdaa38434fdc238fe9140711134132da09f9465258a09350302047c435bb50066306402303f5ed33b4f06dad4b67a4bca9238b9bd4e91931d8e8c42ebd39ed1d28471b7030d60e33436c1386d3d7f8186e788d90102303b0d0066761a018946293a13872cc7a2b561ef09f7037e1d81d70a5f5950f1fdc99846a9040737824b149d70b9919a8b0302047c435bb50066306402303fcc86ef1434e627c8efd28ccece491fd2bcb59e810d3882463494c369bd2dc8403a0fd7f9e3cd0c467ac383dd368b3a023066135de0f8e1cca6d389a34cd23fd006512e739522805ca3087055946d3452d5fab2f31892b661015da3b7b65afcc7d70302047c435bb5006630640230463f8755622dbd0caaa7ca388df2e238ba068357e5fc3b8cd25d4f21f4922f773fbec4ca77eb3cea8441f964f7397a6d023048ec0bcbfec806a76a5e3b7a11bb699ab5eb57e4687eb36dfbe0000aef3dbd7c4a25c7bd9a22af89a06b5fb6ce5972810302047c435bb500673065023100b1f178827972449ea51071db81e6fec0f7b92fd4a663d458e0052517160c56fc57d8c4d6274ad1c40fba96a86af87c8f023050af0e56795e8568417796e7f12281d010b86b5aaedf8f235968a28ca19f6a9d8f86345a013df61bbfccd21dbdab923b0302047c435bb500683066023100b64f25ec716e83accd677ef9a088976534abb374c5ff5c2a8d6bf907d6df9dcf6cda8dfa803d435eb39abaf6e58c7441023100ae7b36c3a9425bfe4a6eddc8f89714e767fa36df31c96371fd9ea89541dde810f9d268f2b79394eadd1037bb604345f10302047c435bb500673065023100d516448d8780266ec7b5575ac86acf116af48cb0ad077c40636e5f77e2c03cb145e4493a587f3759b1b8c4ecd57bcb86023065cd780cb5fdf1df4e715a2104e0a629241eb9505772a78b3ccebf70aaf49b90d0e3cbe25420b4df04d91f3d641a0d420302047c435bb500673065023057a1e7b144c289d8e513bffe713f105dcf72abc26c91dfee51a563517ae3dc6a40351525e4fafacc6ac5927cb185d616023100af00734552357f4b5497df4b7a5c95f0eca9368352fb8580a639f24fa0aa76e67ea30b08982a74dea9a5a8b8716037fc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a386ce8846620e9f9d042614c304742c2ff1d175fba305fb7a5614fde64286a7a1e043584b0e98d27704ec12b7927c06023012babf7572f3009f0d9587223af0f46591f1c01bdcf191ab5c61816bc972d71adb899824937b440c09d034ccbd6f1bb80302047c435bb5006730650230325027f6ad88260f1f5874777350665e05f66292c419aa7e1c62c0db33963ac7020eef61e22a8040ecc0071bc79cc6b9023100a6da502fc1b5c8801e426330f1161c4fa0e03dd9a41e2cd8d36268a4d869782f1bbdf5cb5f51dc0c20ebe0ded638e3af0302047c435bb500683066023100dc19c9877b65f136e10e8c3557894c2d3bbe76c49b7428522f3fa13a0d082c523846eb81b92e7f603b2397a1d0695590023100fb2d6e16d86fc747614711f279e518658418624167b2912b9437ea75a0f573518c00e506b6b44d40daf0ddaaf8ebf30b0302047c435bb500673065023100e198c6159a7a0467c4ee3ec14fbe35c7e93f698659b6d61fc3631bdc121e5cda8222c9650f69b9e6bed12b779f018d1b0230179e20f627c8114dd768df3d1e4724d37d3b063cc2134316d1407c10011c54606caf9b941ad011a129dabb2a633452bc0302047c435bb5006730650230061819da698089a5f3831d95fb885363f6566b0e402af9bb3a4f5ccffc141b23a156252200258ed72a619a6e34f99a2402310097573f399ee3f55209396bb28e0b85745a23f381464819a58ce77dd77ebae3aca7cd501a9807615a7c73412647963db60302047c435bb500663064023067b92250173cb8db63467b12b58fe173ce884354e48c5b65b4af0f0e05f75fabc4a0eb59a2a9e3cdf97cc75dc5cecae5023051427fe82b19e34bf52460e5959a30c2004be6db902d2f2d3512e2bb7f339e02ebe2911a989f0704cb95100aa7313fed0302047c435bb5006830660231008511021bda4a4ea93263f2bfb2e2603ec4cc48b4d05660fe73fb5f3ecfb67e0826a52bce3d81833d10a3bfb0b2b548d6023100f0cff797b6d35286b11aa6a5c2a1bfef4c26e8fe34ba756cfde3e87d5b4cf16e0932f762de74a6bc49702c5f2280b87f0302047c435bb50066306402305896b737d7853a0b6c28bb8a219651b8c9d3044c99b875ef39af87eb5a5a7756a29e048cd828177a044d984044bbfdee02303897669f6abd4f67e78cb41a84fd932d342e13019bb9f71c1788bb5fbc3b34b3dda0923b7a6b0d0b372bd812df92d6580302047c435bb50067306502303abc5c4283c3a938c514bc7025dd7bb9546b79315ef2e3cab4af0eb24a964bf83a068fe9bf136bae921e48fedc99b9b5023100f3bb60ed7da3fa9e0c936e157c24c64a326fcc14813cf3ac03a960f6ce89734ad255b44b7f85876b1e487ab2efd850e30302047c435bb500683066023100c609a251e5bb1067d1ea6c224f810c3345902fa9f0cf2eae93a765be18934ce73e0e10d1a4fd484d3cd4950b87c2f7fd023100a956c357837a4df3fe94a5a70cfce764e7849454b91436a9849d007f651459e06042182d36ed6b020adc2109b4d21a7d0302047c435bb50067306502306c38fe739ab4f769fc142981d8c562ac17d0f0b70598ca83598a9910a7c8054ab38a07f156872cca3e126ddb56d21c20023100f30cbc98e3794f55538a059d61b7e8ebd2659904608b18fc272480cadbd2835bca2d7d3092037bd00a7d7be38ab542a20302047c435bb50068306602310093728f99774bc2ab28aaaa55dfe7f771989801675fb3ca5f2d37be30928b52e5b63d3c40bf7bd272ad322ffbe9c2ef5e023100c2b3fd672c4f4a41266b1b2b17bac3ca1c40f519af1d348ecf42f8af0a875a9df7a3c3c989d4166ab6641626c033dba70302047c435bb500683066023100e80c4dde5188929036fe3adc00f5381310a7166126bd78f55c2c13929fbc7b29d6481fae78f8f48f5aa172b88ee634f1023100d6fd23bc86aec6d25147fb90d4f3e0ea8f8e475c350776f6c6d6188668c79051fb68e8f0e6babdd83c5e225f62cdf5ac0302047c435bb500683066023100ccf228a90bd7d9bca75ebf34e9ae6f703491e1a6bcb40fc00825a00e7080ebc02df77364a9f0c5d66402e307c76b28bd023100a82b1212e8a57d5d3b9cc1816d282cc4c52ffa925a1285ee3a791981cfbbf5c158a176015872bace3cd5e8d3c537bb4f0302047c435bb500673065023100bbb8467874e87fb14b79fb0b087c1f4e2ffa2e64f2958ae8238365a3b62ddf826808b2b348e68e3c5fa0aae35fd704d302306fd841bdc905d99579ceab81883fc52b1daa4a990eb5cefa1d6e7accdb063e4d87db8ca972dc55c0904a01caad2af5c50302047c435bb50066306402304f90a1d02a424ab0118e180d4ed7380eaf04e78e8bc13e3e32c3f26c5a1162710ba873123f42af452a99e34f1347b7530230148c5971e81fbc74c6268f537144567a5e6c6faee441cc6b990561fa8410d7a138bf7a3dbecd0d5fc23cad177a9776440302047c435bb500673065023100dbcde80c1dbb38abba54a31ca6080097d6b5721acd8976fa2fc1f8d5c4a793ed15befd508d5dac3a5b293d4990cf4e66023064e51687a25a652e67a7fb7053fcf616bdd097ec2ac68519ebabff7a6aadeeba04c1d696742b48cd852073199fe9204a0302047c435bb500663064023073c736bfd6de80c7af494327ec32c7fa51c4b1ab291ce38d671ec5b2f67e3de7b8947835498a814d39f26cb8a7d58d7702304ea417aca552371329cb57df1c199162908340f7e07a4a6b404cf8998ab255a2e130e5d04f2076e489c2044027ff35ca0302047c435bb5006630640230689b9d0181a42d4f9bfd74f71657e1725ff7ab817a05a2894c7f671243996643159dffc797cb34f6d55a934da8e98440023071d9537256474bf4c1244d223a316491467e4f524af123e394b3fc70c32fa630445a99d46e3ef9baf5f49e63178739cb0302047c435bb500673065023100f25444e0a1f676b2400e7d0bf5b6a3353047caeb6525ea3c2f6b8acda6cf50850ce2e147d637d1556a5a1b27c28cfea402300f06570a32e8d0ad78535355b1a9db12aef125ef48e7d604328b2d3747274ec0e5caa37c508ce0aeb9522308d53e57fb0302047c435bb500673065023100817e33caa0236828edf30c146ff1e4837193a18cdfc2e5273ecfcd0954e4fbdbf1dc971bec39a51d95e03c4f2200968002305386302c85a156113b1e19d74d3101c337b6a652644f2e25db167e795bd743a3e04073fc4d7e5eb2af403219cb6f4d090302047c435bb500663064023053ea68d517b513ddb685ff7ab41c7424a327c60a0c060cc6ffcb6e4f5598f3b73c9bb8f66536ba0713977bc9c43a93ed0230053f1443c93d401276656e8c8835ee3005e3fbb217e151618bf78237217f62bc8d640944ea4dfb1d268f92085a3fbaca0302047c435bb5006630640230538b14424930907f886f269c583ee143c27e6c9fba904b291ba96a8658ac987d8626fef36a225a574401b3b926b9f3680230144531c648e73634e4abd1a81f190396f3e07ff6be9174156d3ab303998bdcb6bd6df33f4e60bad1f43da742c58134d90302047c435bb500683066023100ee8f3fe82841adb7174f4bc3daea4dff2cddb09455ee3fab45042f4c798f36dbd9c1ba2a884efac0929c32f2aaa3e727023100cd6eeac7a29514b275a0aec2a46d30e6a29fc1ed7a093496912c56dedfee86dcd94891e1b187890638cbdf9ecba84a2f0302047c435bb500683066023100df3bac9d45f9a511453eec7afed40dc7515a97e1ca13b799525c543cbe3eeb92625a69f0cc01e47dc79dd3f4a505b2900231008b949e306f61a60c2949184674a7e337c2395f05dd2a09e74206e97a2bc90719957897e1bb85c5ce78485c6b262a6b6e0302047c435bb500683066023100e3974cb474bcd309ae8b787e3c618b3737b6f740d1c0f58a3cc7114ccfc0c6ec31d5df517365c7d8ccb6518190f15bae023100f4f114266862fc795c5ecda3c626a38ccfce5fe56a0572e1773c8866d222342b07ba9bd81f69e6d6966dd1594b40b0800302047c435bb5006730650230763f620b9338ad4d34d2bded7d39721bc9421055600b29f6ef0767690dcab9aea00e88403d26306aa0120a756276307f023100bcb8c9e39889e3d4558e7eea59fad5df822e6b14540091c8d04854044f3df48416c4bbd512acb6100938f7c9bef502d20302047c435bb50068306602310091cb646fb2e9697134f658e4f3e4738008437ad2a076eae1231851ee9f63165f85bc3f6780d232b8ea4043d89021537f023100e292a5ccdb461370752b07daf5c5ef3506361d6f0950ac67745d44dd1334e4b0843cd17f73f2b00ea26fc75314b1fa540302047c435bb5006730650230417b3bfded71aec6b00a051c63eb72e4ca7df7b3340c0678550feec0d5caa76bb57f6c0b2779f0f3d60e3ab4e5416607023100820c1175e10a521a0ddb55a06f65b2977b739293bb3afa9622061a5db921ee1024e9358eb7ce376cab15c8e9a1d5a7910302047c435bb50066306402302378f419da6d2b64209b6c234f44c7e89c81656b688efbabef16ab2c5df3ae8d21216cb7940cd14e626be338fdf0f6bc0230453b22090647c7a50212f4c6981f0240696a49a4941848988012017829cf1e2a903239c742dd67557f5c61f7c4e84a2a0302047c435bb50066306402301f861519c6f856ec4fd007124d50f33af7dcf8890da265640274c52f78ca956857c5230d2dc4bdbecdc28b2f982f973302306e54d0fb09b524d096a4ce9caeaf4b316cb9bc28fb4efc6b20840b6ba828d5f11f30b7969b339dcf1e6bfbefd4e637cc0302047c435bb500683066023100979717726988b0330f0e56a67de54cd4cd87266521a0dc9d555f7f19f44703e9ed7e1a536b500fa123de60f6e2fe0005023100b68ac0dc6eeb2f7f1abf48a7ff86388591433e8d19da8679286a2c1529cc50d5a25988dd33f69a822bb82bb6183ccde60302047c435bb500673065023043764e7988e4ecd322d36c75087e6b38fe8dee5cbe0417ac297a108b79ad0e82ea3791ec0a0be9030d3085031228dcd3023100b374b4c989808380f72f4d48ec94d17a7288017440a1c31d248421ba50c4d3a99a29e242e7473dda4c644919ce6263d80302047c435bb500673065023100e573a1f3c8e8274835ea8433f508eaecff9ceb51ea92d7abb5251fe851e4c3959ff4e08e7189152145c310246bfb847402305ff717cbf7fd56ab7f1d5224c4c466cfa3cd2191625743890c8764abae4239665c175a6cf166a1893ed3d356afa82d2a0302047c435bb500683066023100c17110a7ea43246d124df1dfc40b057793f3004b88320119801cc62c1d72e923832bd4685ce735b5999df1dfe9fe2b0d02310086b13254f6946082f4133f451f09f65c9c066317d9436ae24d96d53e8037c6ffe21aeed62c3331fe42b1a0f8d2c6b1de0302047c435bb500673065023100c37c3326c2cb89f3691b3fc902b9c4cabb892bf23099a38cfba134e1bc1af72ea3e62557140911ad355f15a65885f71d02302fe3bf9f434b98ca0cfeecada42c9e059f579f021c1a336e56854f6fbb0fe9e894648b9d9282f7e4dea91046a76d70d10302047c435bb50066306402302ad71a011f7f3fdd5dc3bcaf968b8037c7c29bcd5041c0589fd3059f93dfc9b27b07ed95ea786fcd69b28a64cc9674bd02300fab1cf40f7655c9ff904e7bf1933a9c74b3c0d983850dde204d37657d8b716d7e36501af8f254ff4daa4fcb03ced13d0302047c435bb500673065023060890b3ef2d5d1a279099d0f64c1276ee7763849c7cacaf97e6488b11bb265b24bf16289015581b6069d61462615b24c023100ef89f815e3bc09f1c359cbcbcce685fc995585dce2323336d71f0da63c082944a5de18008427429bf7290c9c001008f80302047c435bb500683066023100f8be8717d390edee8c5a687a59887db6cdd536c211d2e2c601fbf91f687f8b9ec64bec0951d709f2e048dd9f6079b75d023100f41c2692a5bcafa3ddd93b545f53be5031d15cd6026d346106520cba479690a0a6649da43959675fab4d1f349ddb39480302047c435bb500683066023100f95fe1f9f8bfa6b4054aaf98b5a2565ded7f1c7d49f285b25022f223487cf7e0f0c22574deeecb25b93e64e31be0a7e0023100cf122a9d7459a5a47df2a65d11b854a92194e1780a342547b5b02a781dec2436feb28b273a5ff7737045ebd239452bce0302047c435bb50067306502301c24c5f70764b8f2b2ff77d2a1ff7b0dfd67036a4399d35811f78f2468a8d598cd0f827326110332ee5251eaaa85f83a023100caf711303ecb9a29000787e019d8753c95c87602c8d5a72948282e3065d91c5399391eb93f5739e9f3ba9902ffc2e8e20302047c435bb500683066023100913a5b439d566b57ffa30a1b070fa147006c2241f6df87da47e96818e7fcb06b831d177f212fce77d5e853cc1a1f21d9023100ef178ed9eaab016d985fe392de90ce772410302f7a3a19b8ec67755754d31442b560db96c0ca86a192f2bc9eb630aa230302047c435bb500683066023100a8a93053f1b45263213839e8bfdf8a23eb68af0eb432343d090a289de85a10d9ea0dde4ab2f592105759a7faf817fc0d023100f242e483c709225d2031f25896f8235ec102d12014fec215b6105de6d1308124f60ad84e9dd19856417c42496828ff670302047c435bb5006730650231008f6291106e01234771db9192fdb001f78f68d20afce62752eb98ae3d1dfb8aafb60370fb100103fbcb198a16e302377b023042ce9c607b756cd62036bfa7f339cdfb6188e14edeec71d5a7e679b1fefb0b41b779d8890f4cde61944a043ef69c0ca20302047c435bb500663064023044225c5a43d03b86fff3ad6fede8d589c65fed4d4a87a2d90968df1468e2f5f59b74233810dfc1dffde622bfa75c34910230572cafdecdefc38bc3f878594fa154df80ede963d79bd6e2f1b0c86ac995e5d7346cbec971f05d3b0a15adbe39f6285b0302047c435bb500673065023100a8457e11f524d2934e73e93a0987ffc0a6adeaeaf5b0e5066bfad7f70a06b2a290b59ca388a01a3983f4b5e6b0b6070202304cef9f39875daf5ecceaa3fd74af9379221464cac4543cb7a062f25ea92614951e57b922fbde7f2889cd11c8656a14400302047c435bb500673065023100a0cbc873482e37a38ce38c535e8e30d5e97e133f3b5054ca84e6570d5b075e4ee48468016b24ef45ba3ab453fb3e65e202300559b6f984fdab37e379e16749f813c482d3e1157c3d9e6e21f32edf56fd3089dac108af928de0a33d490902e08c9b390302047c435bb5006830660231008c51d3ae7e955d3ad116524b320e15e5431ed88ad201de17e17756dc6c8ca8c779cfdd5cb445cd2d384decba0a8689a00231008a8e1c8fbbafcc2dd5891eb0633a157ec7cf3c02c795fd5ed61983fb887d97f2e52ac56e8915ff4d98e97ca0b9ed86a30302047c435bb50067306502302fde22022e639f4526f0c553356f39665c60f829509903e440c6238e52231133fd533d97442d3c0f34a49cee16c6a6eb023100cd9835b106fd12951dc21db7e65b37eb0a16b29b1094b8666903e41f93d3d802c38adad89fb1be6e138e1f918a4c8c2d0302047c435bb500673065023100810610fef19e74eaef1421862d2191fe14fa3600ccc814ffa466d34a8fd1d1bbb51db8d1a99f15cff68c314eda7e09240230779be6a1321d1c66817d71c1af438e8f5a7d73a2239fd5696b48a0157f305576be366dccae3f5f036c3260fe035c4f710302047c435bb500683066023100b29576dd05b5caf0f8c891b354fcbd39fbfcb9d1decef4b8ee9f4c596e846bd5bfbc55f1aefd321274182f3f027cf6e4023100988821ae5c850764f6b8e4d3657f5e592ebf57bd15a9ba3e8cfecadfe7a70e3fa68694e9c140dffd58be7dd94163e7b90302047c435bb500673065023022c77bb960e3443558d0d57a52337d939aaee8e1d4eda19028e3b92c4c48e92a53be3284dbf2fba79a6dd2269b8914a5023100bd7251ac4ba49665690ea6afd303e3366ab6d35af816d5214455674ef862d33188c4bf02be802d69e23d7b25d9e1562b0302047c435bb500673065023100a752e4bb98ee1a9798d661130fba396297f1e05148acf221e1e7bc7d8fbaed45529e9e2011d185009524fef4c87ae8db0230430fbcf09698f9c8fbc2e4f495c907ae0a7e797f0256030563846fc49ba0d71a96fbe7e9adcfcef84162999e236e0e810302047c435bb500673065023100d4f732c6a61c05732b385a4ed99ebe10b37c33c8e6a4b516b547adb797310e5223d89af8856e4b9901a5e34547b5e24e02304dfd17b90dd2da5efd78d37c41340b7c8bcb905426a9478490b2fee4d233876c34d90e528867d11a9c7ab491fd8b66370302047c435bb500683066023100dee12a5af339caff888cabc7dd999f63cfdbd16704b3f25ce9c1c7c24099ef72fb74286cca6e7567c57416506c4a71fe023100cc9e46a919956de63817eb55c0c174d98c1b0537c13704c4abdd495b148a659ea7026b9aca26af6c7f27e7e64caed8d60302047c435bb500673065023100c5d2cf8468495a278cbd2cd3dcc3e575a5df1ac2117e9b258be626e5f79aedd0d5bf56c0a6279d38e5725f54f64615a302300a3ae344e5e767126b4d02cc53a268f1442574091fc1ab10c5941c704b8d85a060079d130540196c73f35f5afea4835e0302047c435bb500663064023056ae8f8ba1f9d05bdbf05ffd38e349dcf0aef5c962cb279e39b4a3baaee0ff2058882566ae5e36c7eb675db90e3d636d023047b672f0990a202f9982054df0a0c58f7f0f59dae172506a9e8a73568e8205088863a2b8cff4c30a98434746ba0bdc810302047c435bb50068306602310086aede087ab898b0919c75194f48bf97b59e2477b6c9fd96f8fe38b6eda28c831763da51d1b2bdf1b437857ee983ae8a023100b4c495520d90d27a3d1873ace393776c3963a6a693e026a5257464da6a6cd21d0f1bd0bcdc9bd073231947bcc9ce61970302047c435bb5006730650230638c15554018bc552a22593e036d4b1312fc6950ef98dce1d7f0d7a92221c3ec0e895047dd1803fc9bc481296acc92f8023100ec99e09e1847896841ceb209fdf20a358d2f6c24e242ff79ead13b62ab2689bc2e154d0a722b770b7db124bfb944f2330302047c435bb50067306502305c4f6bbbe3cadfa30b2235404798ff296c7adbd9d81d5908cfad5998c6dfda831a416d5f69d6d154de3686d3d2a4c9ec023100d2d25b563a5a02777e75c73af37ceacf6a996b583d5186f15cc5ac67c78563feffa9695b0ef724f0f0531c0513ea4e870302047c435bb50067306502310096ef51ea4de7886d469ec9d488f2312962bcb38b48833d8215a99edd4bb2fd5e61ff6b989995f8c7e848b2d57ccb750f02300f1675afef062996a4eb7c0c38537634f20d1f94a4a5a0d6a3f00e06934d616bec8698c58411daae19ae1c9d56f077ac0302047c435bb50066306402306e43c61045efcb69ec6da6c9eb0dd75db74c599f0ef7724051415e46bfc2e7d0ed0e15f51159ae90db1bfca7b02e8a2d02305274d4dddb523e8629560b7e61aa985e899940e447564d498d925f4c5c20c8c248da14f61a942236dd2b9a46cadba75c0302047c435bb500673065023013a191d711080eca3ada852dc3b79a81f2a26c873bb032bdfbcfd6d20a2539edc08e47844a774beadec2e3b4255e2b0502310096cf8ddb2af40c307641d0cd25ccac1be7380fd2edfaa01d249a2bf8514f42235195760e5c1fc73bf872ffe66fd7c8450302047c435bb500673065023100b25f4d4a215d6b8a8b2e7b05d5834da9fb281768d62db552f2fda3096e1bbafda90d315f4a0efa17afa83ccede4c694b023066847b703b53a9da6463eaa38585f27e21aafc38705d0b5816de412dbf33643649ccfca72a71abf6c059ab97190f7c4d0302047c435bb50066306402306076b032b3d509eb86ab637a1e115d2a4e278fd7ccad82466513e60fe0372bb7fcd8816e5c1d5245430c270c35544b23023010d603a9e846179eff0b437ba06f625fd1851475d04eac5054de6a912b2dab5c9e0984d19bc3881b8ea23ab776700d6a0302047c435bb500683066023100e10fa1bbe1728368db33e53e94d36b0d7a10ae37666066eb55302f5aa68dd401f656cd48eec8fefd6dd4283c4e2621ff023100d4758f0f28ec91214ba8254ecf9eea68ce7dca2f946c306a94004ee9027950e881007c116594c076843b04c3faa362270302047c435bb500663064023020dadd5f2295fc47fe6004887c7d001b6790e7305383180bb88c5cfbc1090f00b4aa05bc017cb1120d5353374cb720b30230677f3c588e1424ea172d0eb3a9211016083e256acbe6f4e23aeab4fee81887861ccf67ce8444a7c2ec6d90266af1126c0302047c435bb5006830660231009076e0e2fa6cd260b7bae1eba026b9dcaa87e52c850e1aa5b8a28a2a397ea12c186613c669abcc5c07dd514af16c41f6023100fd0919435961570e81db11d4f08e41557adfc6d60cd7044b1b384e481d2ac11738d1f347d3207878cd4e006ac4858d1a0302047c435bb500673065023100ce04ff7f8f01a6517b836bfdd8aae54b7b82f829f3f7c5fd4b3b570d18bba364a8d016dffc87444c45c77bb3aa34fbe702301e891af02e6e9a1b3d62db0d7ffc4014da9ec91f6b306c3d88c1f938077becd7b821e9d06a492cfecec299d479f5895d0302047c435bb50066306402304de093fbc7a4758da369b105fc83202595c112bdfd435d1510a70d9f5a74dfa7e96676e7018ab7c2dd9b9b72b5982f0702302a332d910dee5ed6de1977e33ce7af6d7ab9abb2334fd51685ecbc6c9fbd5516df70f37b945a8f04c8ec360e4b7be71b0302047c435bb500673065023100d9aea70086a6a5196dd392ffac4f6d1b43b49087a5a1dedb25c326dd177208688a361b291ea4447dbf10a745d2e6118302301ad0369d84995ae912e2c43d4aee4d4810e7aa715eca3886105f631547e03902cb275da7ab24c96273fdb1db23751a100302047c435bb500663064023051767120ed7ccd3c74d7c3d101b2b21b83f054b223f2e9d1c3ba732f61bb017063a78a14270374d0f424106158d8dcbe023038bb9d959907d5a1f5ad51e9e7a379c23a4644b2fc7c7376eee1cb5f3d98c234d6cd1354b3b7436126439591d2cea8180302047c435bb500683066023100e7a24fd43322abe10ab38c71e8b676b547ab1eaaaf037c52634a7d30d411a544e2038d6b9a81c3d45a27c41dc822e10602310081b72da5b818b8888062af2754c57f8658fef130cee2681cab4c5a7ceb420ed6084a3b17b4a92f020d73226f89d14c9c0302047c435bb500663064023064ea2c5d60677dd124f0ea82d7bcb1a60f1b1d6ba2829a2c9bce3018b87b8508db67a167b38221598c8c846c6223bfce0230219b1c5f7f680e94e6d832d85fdf949138ba2120576c933b5ccc5040e7c32921b235b8117c0dd42fd4d40b9a7687989a0302047c435bb5006730650230088eb79efc9c5c9ca0711f35692f885cfb5a0ff1fe7a82590f1b6a87cb5d6dc845309ef0852975def9c2ad0c8cfec8e70231009749cbe0977fd30fc556e8c40b8f05399ebf1bc8811c72089dee2f70b2655fb940787f7812f09bed03b8873d2898e1230302047c435bb50067306502310096ddb7ada8a9b436aaf7264034cb91561c9a525cd7cbd3570d85e6bc6d200e3958137a9c5d369f4861bf5b19d033921202300cd025f1887fa06e150a94010244b1707b00b1d3f955e815021c081fe0a37cfc311622dc6ee999068d1a120f530671d40302047c435bb50068306602310084065d737bf6988f091f1012edf8243e6dee80dce1828cd4c3b98335cca0aa6a0af1c509b8c2291d76542d23405ae5ce023100c58fe68865870c0719d33cc848d23cab36e8839ce9c6eb3f64bf052fd5a071aac9ecbdbf8c4eb37a915f0dbb71fd4b750302047c435bb500663064023040f0376271a9f3f4cca1eb14011b30cdeb850d7137d6b8eaa98456ec2edf3a91d6206b4029ac31ab23ddd07f8f8f442e02305cbf3f8ad622d2880a382e0a6255437419979388f8b65164cbd8b61fb786af736a33d5d410a97413b6aeb898ee073b3a0302047c435bb5006730650230737f8c6b3f8c60e2e35dc78fba2ea2b0e9fa856faf6d806f46b3fdf10c3323cbe2f934d69e0152310e9d44c68cdbae5002310090b780d68f7a50011a8436c61dd947d213ff136a30203769b3f96e6a6cefc93afb43b67d7b88386655054f266983ed880302047c435bb50066306402305c6d261ae6d472f339662d7db6dda6acffd143874fd5bc0caaacebaa60bf1248c645ae83dafa4589167fc5cb3379a2b002305379977013a4b88514d777a9f48c163213661b595b7a9368392c77fb3a7559c3f580900f2dd3f3d7a9c69aac89c9ef150302047c435bb50066306402307189f5afb2930c70c82642a798d722c555059fe4e6476a13560b2972a105a896996b7a6d3b496f74921c58c290aa73c602302c7c163d87f94c5f860102aaa5ac66206610d0107cd9be2307c753f0de58fdb416b9b4f5631afad3d8ac629fd47113080302047c435bb500673065023023584acd58f475bd6ee7af17d40c99b3e2e592b2e323056e63a9ff325f1d16657726d25b889b8af6290818a5f3cbfd930231008089e2c270e19bf2aec1c7446947c54b588b427a052da9afe0ab9418d111e2d3fba55a129ba86705bc22b35e9ee068120302047c435bb500663064023051a5e8c55ef551b16b469bf5644f446a3e2e22c4fd68c16a1245c4f8f1e7723e1056a3e8e53f2725f9b366fe70579e5c0230330ab7a07ae040293a6abd23597e2b440e94738f5dcea29e7f9efdce5c76ec44ae6267add03d14e0a32a260b3c3bd2170302047c435bb50067306502300d38abd5192755520da9d51ad292008bf70885b0577088d14cbe29f7bdc878fa5948363b3ea25185ef539d85f59fc57f023100f234da521333e1cb2ab6076db4b883ad17da44a1b224310e44e1836976cccfddee726b46b2495f1db03553901b72a95b0302047c435bb500673065023100f826563778a8df4e543dbd21f1b0aaeabd95f0d08a28cc9732300f71f9c8a68f951b96cbb683e2641f8e17f8df36ca1102307f6668a9ad567b3d0102bda613fdeda4d58bcfa60c3de3754a4dfb9b3879f4215bbfae891ce5d599d40c971045dec0c00302047c435bb500673065023100cdc80c5b048cd0e8922600c3980aa5bd2779840465a426c065d01fd9d4a441dea743d31cc64b7fa4fe30d6e3b05b949e023002cee8755e84dae2f32fc9646fc95444a4dda1e75bebf3b7161b9256517bdd3f217365405f7b4b128e85a68534e8576c0302047c435bb5006630640230754e1defb67d1ee50c79ed742decc23f5582be571072bd5c306b3f4b2e353bbd4e9ee37dd86351608211d44ce6634a5e0230417b1344fa6aee6d975211a3cf7d8f5a765f096de8300c7aaa625ed09ab9bd329c642467c6d28565b9100d5a61be671d0302047c435bb500673065023100a8e30552bd4b289231ecc7e256996e75930c2f2afdaa64c0fcaea6c18db74f6c7e8525df0157b592dc76a1aae2b69825023009e7e3ab76028f8bb63c4c9d68972505a3046e82e642442dd253571459c9a39f7b217e78a444da19edbca5b7122f9f470302047c435bb500673065023100befd30f8df18f51f0221ced6438a57e316223da28698c8410be0f9a76cec056cdf8915387476a04ba418406a11856c510230422a86c2ca336841ada2ce7bad0db093aae60671297da81daef0d7da924c1e856cc4b10d626b0f843c1ebef439c6a39d0302047c435bb500673065023077147127f33309f26fff60bfd124ec824693c79cd8695107b9397608474f4691d7f430c322016a6b4aa3b9498bbbba39023100c86c0cff59f279e2e461fe96730d8d6ac970f38fd961bd5914a2805f093628d3f5dd4f83810f0302c367dba7d9b89c3b0302047c435bb500683066023100d182c73b604483fad391dd67ae8992ae4d34e172a362bcf370aef505a9b5141432ecfe8933b05eeef7ea46fdac010b64023100fe4aa8ea53415c6994542dba43194a13aaa98f542fec99872104710ccdda86d0589a17d43135834a48104e4a68e758f30302047c435bb5006630640230343b1516985380f2313aaa275e303c2a0edd25f82afc3b19f795681d9c57187a39a42fb6449d392e27f3c194cb4a579e023062e05bbfc9a46c69635ca953baf0fd6b46fc3c9a2cf6a885e82286adc3b939d54ae88a0b84b89ab93674b951515a52520302047c435bb500673065023100960e9e5d29e60e0f7a7f6d4a665894aff29e92633cf2447ca528ed9d5e29205a0eeba4be6090c678859adca765dfc5d502302385f0db404542cf767bd4f113aeb6584260ba669be5b9526eaf881f81de4d353e4cfaa7a553a2b77acc137b7ffad7630302047c435bb50068306602310094fdca0be12ef37da7edca06c23f9a1624eba86b0fdb936db14deb1e914ee196141e63d50a35d5e10cbd88868b450e44023100983975ceff9de413356198458896f24107c288fb1a964c235ae3da6e3f53fec75043c88feacb6dce497b697fda71d54e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043d8dec0b49ad83afbcccc3820b7b78fd6e8586e05f977fd8f0b79fe42cf5947e214c3466521faeae21d698dc445f71b023100a558e557575977a1ecceed74f6e5c8e05d1320f38e04093758bf7d47cfe97b6ed280345bc94754889b3effaa0dc2fff90302047c435bb5006830660231009e9d38cbdbd7b614fe3ee267dc30a271edd8998fee073273125f9dcd9670e621a710fc5cb494dd4e8aca00c53e87205b023100bcce7c89315259a57340712a12251e52da7ecc15902bce4ede1d1213e2dd972f46789f91441918f27f684d130b015f510302047c435bb50066306402307a3cc90335099b6f125cb90f2847f883f17b0e44eb220681c8c430f7b6008a5ec84d328f07d7ae94ccaf2e888f78332f02305e2a1dba589d24d55cdf6c965bed6908182f1a171f6b74bfc82cc170479070ade6a23e373ec9191d2b2c85fffbdb7fca0302047c435bb5006830660231009fb40b128c33a85648c9d59951a3017e0fec2baad8cf5aab76be94bbf5e0bfde06718518b5461ae2432e4f7ffa351cf702310097594bf4980ad08e42a862d64dc1ff7e8873bb394b5953c4e667a20394f68e29e5c5ef00ca4a284a0b6a2f1cbe0677b80302047c435bb500673065023100b6fb73ad215eb0d0d30c19cdd8e76bb9602886dad91ec976bf232b5310a4c04728a8c5c8176c5700f335bbbf13ad27dc02303a18c9aa2eb4c66a5027255445fedea31470020ef48f4ee0fd0c7bfb8fbd3851cf151db69c9db98f0ef748c4743008b90302047c435bb50067306502303e2386eefd56c3825a553fac39391a0799e91dc18b3dac3308a93dcc38aee26a155d131abda5454370c3fcce361c8e25023100ee76ff5fdc3a92ec1ebb6a191ef2c4e75837dfc35fa055e26bbc44abd9aff09cd01bfb8bc4d081b10449ef7d356efa780302047c435bb5006730650231009b16dbb6924e142b1e7f45fb5bd0b72b2f696e4391beee88de981fb1e2f4f293caf86fba8494c13ca04ed4681762d26002304c8c9278e1b3f6b6d72cfc08c7b12321656b7b154f8f7a2a7ec5724056cf9fa8f661b09cb14a83eeacefac4f1a9fa7710302047c435bb500673065023100d0ed49dd7d0de559ab7ee6a3ac657c6ddcc4884ad54e1a5cc32fe4514103dabe8d618b1423dc50742cd7c0545a15bb7002307ebe4cbea502c04d336368d29d0fb6b81124de73b4e76d4beb977d35375465fbcc34d48a280c83417328f15bfe2796330302047c435bb50067306502306ffcee099cfc83069c239cca70d73f3b3342a11742482bfb1a2d7c78b24e008398876f75d9a423e4a9684bdb531d6871023100a47b299b00376cc5b4058e9cf343c9759175c96ff249a89fd6593e2c4a8d09756d2709789dd879abbddcff483f94f9f50302047c435bb500683066023100e99dfbfc1bd2dea30ebaa27d0e3accc44d35fb52a9c752e41dcb4089608134f3bdc44e4faf045f6e908fd8eb121125b30231009a69df1e87bf44f9478dba0c79c6897e0c9aec1fe05c688ab30af6bf80caf05af8f6a89981559c145d58de56de9c731a0302047c435bb500683066023100a80a2b32cb617e67e44ccade583b314f83a081fc6a198c8453192d2cb17a4a7bcf181e54cb2496f43767dfd46c65f4c20231009922c2564549ee91768212b39ce69b893740b5abce82121dfba76878cebb1c2f5251b82e742d3c3e7937f3cf01c4014e0302047c435bb500683066023100f151a3e18cb544c00614e4eefa5d0a57c56ad73e5a55fac334782ad200f6f08f85e977363ec63d38839e32a35f9e121a023100b372426e958984e07153165b0bf2c099de57390d5bda668dba2e7881d625a7dfc4c645acfb6e8a67638b5f56f125d5ac0302047c435bb500673065023100a1ea0e68dce88526a25daa903fe4073635733704e042862b84e74c842835f30b7ad0ce0d0f353ae122c582a8258f16d302307fe1a5fb598c763cf18d58b5f179509d7d85cb5e54132213240679038d9ec191673bd97b1b8f9ffad31bc72d25b0f74e0302047c435bb5006730650230682c614efc2f5c909df642bc98138d530253c709753114ad78377f552293fd49ee47ce233e25ebd369b05953b336172a023100c3d39790e6752b76426384c4a784c6a788203ac4e3940d0f75fd4313019e7af60baa08e0c0cce1aa3964a7c1b6ea180c0302047c435bb500683066023100ed1ddcff2df6d77107b6de87e58c60bf5c1e4e9f194c26bad131075381b996e3b0d835d00d5aae17bc5d616dba1a134002310088f56b6f7bd7af203655225d702cca74575d8cf96a456eee590b071aa55f4856fd074aba8e8c37a8d9b874076c3daf4f0302047c435bb5006830660231008059a86788a12a08638766520fe29243e01411a6db37a3f5811bd31d9d53984a852be7a0d669f360a820cf3d66f6c5bd023100e128bb704962b2d909c37781d1328f1d3de3d73323b23e023435d120c02dd95b442daa1061e900d0c11d3cadbd18d8f90302047c435bb5006830660231008d4b95f73e9084019d9a40eb6c59be13ba5a4c9d68c6b6612f4f0de43a7775ea6a998c9a5fa0c6fb14bdbf223fbd70860231008a8fb33ade22b0276f3237682e2735003471b82554f8f1e0b12d86d0903130f7f4022c44aa434cbf02874bf03e9833a60302047c435bb500683066023100b15f708d4d73764625236d08cb692831fdd006788227b05098b5741e9b08e9c82508425d6a2ed26dd2c80f2230a18f4c023100d90e5ab556ca5e58c4ab41aaf4303f914a060f898008c915824a4f8311abd5bc521f622185b59b5f5b22097c10c5378f0302047c435bb500673065023100b6219bf77193b77411e9b8c68406333aa48ea5ce1436563fcd53c2223dfd61436d19931e1ad97d169aa6d5109f1d33a5023037bad441fdae01ece89c5448ec3ce42136119d125265b7590de43357c8418fb3ade2965ae283f3a67c1e631bb77e33d50302047c435bb50067306502305522843c060541cc587cd16b8686155463e8d27987d03685ff616e87afd482fe5f4eaef2c0f4fc315a8c5edc184b86710231009c9f685832ee6a2a7ba659649923096d2150467f7f51b897707369413f1c3d5cdff288a702c23540b67b0c231b3f359a0302047c435bb50068306602310088b12e58d931dda592419cdacafd1ffe394454f468215a47a64c76ae3c79a2c0b5103c86a9234dcea9fcd2a6468f114f0231009969d73855801ec9e168cd601b3bedbc731696343772837194725da9cba0f2e346df0b257e5c10837d39b25a49f500ef0302047c435bb50067306502305b4bbca2c66541f512fac567fd561c55cf0b3e94528276c1c6ce614868662fd6756568b3b17f8e87df967672912950d30231009b9211b18c73566ad4859d92041bbf11297f3c29d27d852631accbb5b0882e80447d2710bd793f95a2927aabbbcd1c3a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301065f5ff18a0539c08c9afd8456c85ddfd6779169d241753b8b663dbe58317673827cf499c31298bef8327ec42f8d3f0023100a83a7fc74c82a15e7aecc0e1e790ce0495fce2ab143964047767d56765b03eda6a8e6f9760b7e551faee178b970a0add0302047c435bb5006730650230158133d11ec0340f0e9c8090350d29e47be707983d13fb38dfcba9053c5598fcbcca54e1889ce0f2af537e7ef5534ddb023100e69b9845ef3b5da2996dae7b85af564f2cd95b6d71ffc1ccd7479239996bdaff6a27e31b69d876f2fee763b65eceda060302047c435bb500673065023100c7b3ab16f6066e354e8660c082b340eb12812e823a9ef4464303beeb43a0186adc4f427b899bf2d39a7911f0a8b349c2023009254f4433197dff89af93bb94c99608a176bd3c31d47f0035f180107bd3ac63f44546cbd423b4fb9ddda1e7d63e68cc0302047c435bb500663064023034a2aae75d6adf9288098b522ced07bee9427e55ebab689465414b8872f274959ed4ff94779694ec8d2e7d9f1642e474023023825c8d8378a8bff7639f2085c4157821133e2f768ae95e8917cc05a1844838cfad0e291593b2df89f74af5b16f0f190302047c435bb50067306502302513ecd3979cb41cc3d815d9fb576238cc0acd2ecf74a3fa3a28009e5ba89c091884676701dd0f712f0e677727879438023100ac217b79bf9ed2a764d23f9cd118f412ff9bfe5dd321b8670b5e5f2f54759652a419ac1b82ef117e5e5bfb5a5d5fed3a0302047c435bb500663064023039a9ee9062777a2b8230cd2f61f2a9ad2b989c5ffd576b9281f8a01c6f61dd02e604da00ef7434ade8e5b58293bd42da023066a7e9ed69e0a6f47d027cf5616166b7effe32424baaa4e53b6ee7d2d7a7d03db5a7ca66850a48ccb7bfe71f32289b220302047c435bb500683066023100e1b56d4bb23f6a736ac66dc4421ca5a6392d3632b0fa760e062d8b4a33adbeb822bcc5dd924ba7ee3312e7d5464c70cd023100b2ffe79a54a9916d11874f4a350a402566a0fac78a5cd174e12180f1ed40b57749e859f0676e3d6c6fc39f36485b54e20302047c435bb500683066023100918e038dc3e32df54c8862ae5a6fd0b3cea1fe6e39e2508ff9d89334ddd88debe5298e54399b1ed375a3b2c36c80035b023100d359fa3e1284cbc7821557180079e35a66316d494e764bd4ce108e6785f2556e9b89d8f0a2a24abd73540d54f17d51b60302047c435bb50067306502303bace8ae2dcf1022973b2dfaf3ee2da9dea2db03b95326f239e7ae59e0f6b569ea1b937fd82bf7ad5e2b037d43093b89023100b77c95de4e7d923171673ed35a26d51c08a91bf6e2c9c6aa4bd274a003c55d5d481a018263d3093b109f13a7b6b6240f0302047c435bb500673065023100e0af2dc12df176cfbf96d4bc530faa1024340c0d90604d2e67e250f23b1d683a3d4fd4376583eafbcada69c075f1059f02302dcc5170d32648aacdcf3dd38a06417d90bd38b9872870268cd5570ecd87e9fa0d7bf8a3c4ac3088d9e9a169d0ab47d70302047c435bb500673065023100d959c4e4ce6cb892ba93925e86443a04ddf5b2840453ad9c3f8fa9e2a718435e825ed8186a4c050205f064b023e463000230181313aadafb593b384f49c6b39d96cf6ef273d3321ef2a27bf9caec1fd39e3fc0092e1d4c441290ec6f8ded3b74c6af0302047c435bb500683066023100a81992b66dd5b439ca11c064b4aa31e51ea54f06c4929ba53d87ff56df99f32ace3f509672559eb540f0fad00368d370023100912a6a6eac883bae9703b3b142efd1283af8d04cbe2555a9a8fc5262e841d647bfe441401b359f48125acc234ee8285b0302047c435bb500673065023100d3983b3f42cf7e81f21e51eedd3eabf9f88047bd06314c139cf969d2fd8c77851e3eda026a2a31065bcee8284d4fcdd002300243f0c6ce08d2d9e0db7602eb3d465e81a06e2bd1768b164497b7fdecfa85232c96ff35efc01926564398528ac534570302047c435bb500683066023100926ec8b75792530d763773d4bbb054bab2597bc31fb7296a34b15660c499e33678092d37d9bd3e010a584bc312ee16a7023100d941b742efaebb4960e668ec01032446ee515ff63a1f1ed56a95d320f83bd0070909e1d418075f412e5eb61431073dbd0302047c435bb500673065023100dbff2643e55e690eb61f69b434a12a5e159ba0847375f1902a2d952d09da704c32ab4bb6e7f8290f53f9fb2311c9dd510230643aec0afcb30cc34e7cb700323df706cf4081846798e9723c2f20231695262c4bf1c87d6a4377dbfeab9f71d458c98c0302047c435bb50066306402306b2ec54cfc165e32da56dc1c9e708e1697baa3e79c7d8be110250fee56f66fb6558e629d94f421a44db588605765a3cf023078b3f5f7fc1fa7ca219aab00f647606c279eb9e636cd84dbe24b9e4fac98b5edc49bde30da419ed2858c6260574070db0302047c435bb500673065023100c5f803952e185865b21cc67cd7c1de5023a4e6e1c487a7746c226080b7317979497974d82626f85f171672984383ad2f023053f0d198ce67ab88a626783b5dcd4c2e9a7ef9760140447d1d9200ec9cc5de726c19b8a603e5e4859cef767e6cc337bb0302047c435bb500683066023100c94335f32ad6c2d91c60c141e7ecae68595a3ae8ecdf464dd29111fe39af709d24d17684410cb412e01c7c2122c916b00231008e8a77a4a5813e740d2662e9b5c15c6e0f17666395f67c232a785177a84d28f0610a95f23a1e284248ff51036d3eb1990302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305e9ac0c2e01b00fe6b8604c47ba652797decf09541b6d7292492260e3636eddc9ccd76d482b5d2499309e85e10502736023100da4c936ba0fe098f29fac16cc6b196f37cb536c56ad0fee79734ce209694cdbecfd7193ee740a9d0d9f03659a88dfc2e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304aad7a7f33d713de2e8fdd762befc82cb12e8aeee1de62c3288384592e1f2e27b4e20ba11591f2e6c42aa6f3c3e67d46023100e5f67f119e4f551cb33a5783ce0928816f633eda2e7caee65b828e976036b1eee09c72da43824e3fe2f75737b67b12940302047c435bb50066306402304fb5f522c92cdb18a982ae21ec6d59e5d50d8fc3817e8821dc1a080adbdb705d8b58e935a1e8f0f8be625634e3de0652023001ae8e11778c9afe0c27a456e8c6a8dd81812a994c896a0dbde2077ac7f300cc7dc4c74544f0e668c11faafc4e684e770302047c435bb500673065023100ffe0c0d4aa3ebc0250e7e3f9bb32241298f9f8c1cc48a9ac5b37ea3395ded67ae475eb07532c6cb956e8f84fe3f2b5c802301c9513025a7b5922a80ccccc4975a0947e9acb0f7a76bff5f078dcd36ef65c0477bfe3d03f03c77418a761c41bf440fd0302047c435bb500683066023100be523f2bddf42a352c57ed27fad8d67b58f808824a4d5260994bf2072c5b1b5b443bac8e6a64e19dd1856a2e02434d6d0231009c1bb2bf4b33d4bd1004f8b1ce68be82d98a7dc870c7c5caf9076548ac168cd78d80b67664a02697c884dc47f56c36c20302047c435bb500673065023017da1abcfabae776110e9715bbc55f3cea697f5ad44db36722ff68a7d9311dcf31c77d6e90be95bfc1a96873d82658ec023100d44760f1664ac9c28c8fa5f4708b9283a02490eee38147faa8dd249972e2607536ea2fa47a8e27f066f6dd3932a3e4050302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230188c74aa38f0786d85375639fb622c150df23597aaf3c6593bdf1d688c105f326b7e217d0af7ab6d4994eca1948fc0b5023100fe2b9f72582348e5c3cc14912d9594d6ae12c74d83c2dcc099ebe6c53a278d7a481e7ae93211ce7cfaedd9acc30f5d890302047c435bb500683066023100eeee4f37d357fc410d55fbe3d3fdc2d09fa47fd51b1188edd321edee66ce9e93762bb44519172c80c52292b3de236ddc023100a1574a5d7083112e05bb6292ca564355ce1b9770f7a6fbde51a43361b16d9ed9b353f1397880953b4fff129274728c250302047c435bb500663064023054aab4ca7bef91fe2b5f9734a65fc021ddd85173333178bb438bae02cb1a0925f1ba5c550ee4fe82e1db59c065af5c7e023026765f468769774dff5134ea092c67d20360e5bea545fcb6cb6203974d2bd85044934e4a95efe0bf63a80325526423cb0302047c435bb5006730650230122b707429bcdfeb3235cb6bda9e7f2d47709a3401490df2f5e0803c086837cad8ed1da899c5949e9858c2fc845fa1970231008a0ad4c736c5b91f885532046e343df1da6cfb7920ad46e65dc7915db5665a169eda6a608ab79a773a7e1d369e012c940302047c435bb500673065023100db36cc6221455b2c1b9248b5478f453b7258ee1e304c42666297feb5ff63226132cc8856053914fb03bfa0c2bd84ea7402302158db86308f15871ff344744c19f5188d0649f954cf17a722935ae39855383f4b4993d179ded0a6601919dbfcadafc90302047c435bb500673065023040e13e4b6224aff4eaace6480f7ccab9ca106610bdeb33c0f4997999a86b8dbc26d1da062bca0e03af0b43ec7f716d2902310087a27af3b7e5557f242b730ee00fc139fce021420f0c052316aa162d55cf0ea9fa80d0135d11e54309979b08b92cc21e0302047c435bb500663064022f046ce9cbb823f95dba51d63e462239e37250a32f3a6cea0d923c283bc0c8efc472138a82a855b7c6aea3f3a2c868b4023100b06f74020d9c29902cbb859810e0e9e9f83b7a364f272b7d9555327cb88a297c516d888eb862b550d023bfa0d6770eae0302047c435bb500673065023033230b751daabe7e6c5e285e197085c088134efe41371f9bad4436c6eaaff3078a6a4da47e6cceffc01a5ee564f208da0231009aa7146254ae32c4f418ef1eeec22885e975776135dff4fc7647c08805706de4b5acdba44df20f72618ae2f2d75846630302047c435bb5006830660231008bd5683fb0e2de678680e1b96c6f684db354094e98a248ef1531b4fb96c39710461cfe7e2f820696af53b99ccd38768a023100bfc6cf560480a1055af6ca232d3964be42a4eb08a1a3ae053b708d58f2adfa8d254bcecec344882f3d6aaec4dc5da6a30302047c435bb500673065023060037b3172660f66772f4aac48aa9a85578b32339287efcaa454914dfdc56b8cba1bb4fc99a043411ff264affcb5c2c2023100c44c7ea70a84aef1068750d699505af806069fbe0fbfe9b42f56608f6b5653737a1089fb0f02376d6f2fc9c9d3b1a20c0302047c435bb500673065023054bf3122dd762d2dc2c3bce40ab0d4e2e638652418859a233f3e9153e95a227a90001faff2c148fb5ff3e0d38ab51fc3023100d9dc4f87c49733bfa4ee7f08f619d8b66d3a8f4925a65e20b58437286687e22eed577d866a22ae0749baafb14953a1360302047c435bb500663064023048230f697d1224e8feeedcde6cd88bb026a3c0e02c24198e84ae2e491ff3980b7484bf877263a8b2bab80813a15fcf3902304e9a7c45afb7a156ba675f5821ec45dfda95bc53bbec375154d6139ef2d2f6412bd6c7b206fda4253a9db3712064558a0302047c435bb500673065023100a2ab9a984d58df8155f3f0cb3b0db4b77154c38683ab7217bf5bed0a039b17019ad1db7b720a6747ade0c55a25fd754e023066247060591be48a4b6070beb66c9b178419f877ec23914c88a0e08df7aab1cd0faf701177bb26bbdad8dedba08a7c780302047c435bb50067306502307eef1968645f4cfc86e9366f1569bda4afb34072edd5d541caf4e15f9c4a8332e9b2b08e17464f5e0af302f0ce2d6116023100b8e5d86f9cfcc8ee12325a6189fb5985ed66cdfffe07cf2243ccb13db34831417f6e3edeecd665d75d5087506c8d095f0302047c435bb500673065023100c52f472789bf9af8e671b080afc2687bceb84b986dbdae5da6aa66209aab94c9aaf0ba39a0cfda61d25d6c30f4764bcc0230599cbc937fc942103bbe43bcaa437960c21c9e3caede3b5755f2627d2fa2bfea2f3f4163c49fe4df57c50022ed91c7f10302047c435bb500683066023100deaa7db58900708481d7a9909e2cc74c3113e4314d3816e26b9d0369eff5d2d05170424f134062f6314628552a6823f2023100e68ba7ce6e084d56752d97e8d21d74932efe36bf13f0e95291e51d9ad822fbb722bd0b21ccd32249bb47f06750feceb70302047c435bb500673065023100d4eed1e2c1ff9d5113df113acd94d1e18ca070ef0828cb0e65b8a80f23ee90134c779a8c4edaa0212f02c6ee71fee06f0230498669253292daa45e885655b11b7cb577a4616f1feefb72aaffbbf8191a269abda35c94a6ecf07193ffd345449997080302047c435bb500673065023004f9c51f068c54270aeaf69dd9a28a0bfdf7875b3c4870bfb50d5ee1befe327d1a8b83a5c424276581edc59699ae4749023100df249cc99e2c5152587b95964acf0ec8593846da2504759e31eec211ef1dae6a3be0207d06ccbd01f398f34ea1b1a1be0302047c435bb500683066023100acc3e21452e680462131d6d15d96fcd7f787f54693d801ee2ac82a3c7221f3a5bfd8112a48661f01d4d54d3f7bcae73b023100f8c5a85eb2bc390fb249c2d6264d660ec9fa2d545ce3bfff5ea6c54bffb8882fb1112e22a098b588a75423443891ed9f0302047c435bb50066306402306269f49048d4061f8309ca7a785ec9b207c3f58b25bd80cd70cd30a468172749b08f9da4c73060640e1f6d50d921a1660230032fc9149f9999dd1f854a2dc85cee050b29c234eabf0cfb9444b2e4e5d07e7e2807e06b57c11d38b4eedb445e65133e0302047c435bb50066306402302061cc0c0cd8e458d67a43e8d39a573ea0f452871df8cf8c75207f505d3ee41d49f40587514570189fefbb5cdcc5caf20230772100e5289b7ad05d5cc1c51186055660adf47e2f7fd00f440975f7e1c3c7cb8ea4638f0773a986f8ca214f1fb892230302047c435bb50067306502306294c03cfb91d3cfe2695ea59d475f474bfb7534dcde322b940716baa425224b86297ee80c839c4071352d119ca8da8c023100c403525fb06250338266686ad5b8a5546c307eff2859c5edf0549c740111ca056115476a45083e0c228ab82809b6dcea0302047c435bb50066306402306c605d4694486ee8bbcb8179c9c62a41e5b2857011f934f6122b012930584b4f47882b0f243982ef8f4bfba3439d6d220230596ee9c878a7b5f52026c8b5cdff50ca7f6c14a75b1afe7e4f3d8e1f088768e541146a3b52e2a63da33434e0eca7f9fa0302047c435bb500663064023062b3e9cd480bde40ac0c1770a6d89aff3f897321c586bf27ba1c4513af27f05e426bec0ed9fecee3a55f787dc13f09a40230588aa5288ff4f5273b1abb54b6e76f5cb30f2c8ad7c3195bf080aecd04e5034a80d679e8c5f96a6c85be7df3865e75660302047c435bb500683066023100faa3fff7a2ca19b416e41dd9a907739962c8330f0d703337fa43af94206133029afd3ac7113c1131fec26f0a77d9c1f40231008259568a2008762914679644238c2d68ff18656ee08b9e786af3be3d90787c85cb0a4e0dba2892f71ce45d3480c36bd90302047c435bb500673065023100fb0d29ba4c98a7b5e7d0a9c22cb8b568bea629354f893a2f9f5b9f05110bc6bc3fe466581d336d52d3274bdb494a9b2102300d1bb33ba12baccd91d340d83566847d3d10619381cdaa790b1d51b9d0cc65cf3c9dfe0658a889099cdc5da1ebbf22110302047c435bb500683066023100e32cb7d184d2e6ffa4e21fd7805200498b844e0b3f5196128f698107866e6ae2e3c9fa13c25e5580ba74b8e9a65ce0df023100c8ae3435f32e384e8a2b53e6e34fa9bf022de6192d9345d5946fab2149485ca532728148908c2a78e222f07226658aca0302047c435bb5006830660231009e74c7397be612e394016a12ead7817a6f9678a678b50fa24ffe439589533798ab0da11e95b03cf85f2cdceed569670b023100816bc9422572f538b10f9386587fbd206a1949e5ba1362cd991b01dc160762cd18a3cab475a5e334defdcb272294b4a70302047c435bb500663064022f597a2835fc5caa6a2cc5923b3af18ef1fb0ab31b717f4e092f360f4a522753f64b17e8104f11cebde222f7a223d2ca023100c168368dd0d65af1c6614c8c3fb1ff8e94c7be28ef8b6a9743c9713be25d175f6978189b215011bfedfe1da90de9cdf30302047c435bb500663064023054ac4562729589e0c8d1bdd57fb8b0397909b13e300c8e74d67f6bbd1df49d83e19e9d6e175802fdca8547fb1307abbb02303ea847f0cb68a3a9cd89ecda5d514881605b06bce7cdc07dd8ed89e9b0f483f0009aec9b877369b5f60db24422af1f230302047c435bb500683066023100acf8dc7255a1cc282136845816737803ee56d91f08791ea2abd08303abad789b7000526945bad6ae4a40d5a66c3d4861023100817d725baae4929ef3927f0c0bba41897daf34a00045c9b29f359a7a37be525f018458014093415a8961fa721d421e9d0302047c435bb50067306502307f5090874e10a157e35b9d4e523ba7ac8fce58e72044b40737dd0f2997e832dd27ee9d7f4df713141d6f9e4d3226ef58023100804210aaeea3e2e9e04ae8cb74135f34c3cef6953347ca6ecfbb4f62c04d7d1786d78351671d8ec366f225236c1f95710302047c435bb500683066023100c0b71aa472e3c269e680405c0c4a07b89860d23a78edabca5a4bff92b63e8f21742ec0a9f5aabe96aecbfaaa757ee0c0023100d438334a3e84abd81e8605c2083336d98a8274d0e445b8f00979c84123ce70245a2ee766ac9a6aaed4442c8a59d73a320302047c435bb500673065023017e9d9f43ba705ed347697b193eb7b750b03f785a31cc87b781be957f43c0eda2549e1eeed92cff54b3414f0425750f5023100b8bef8316ac864051b555d16c2b481af2b7ab7a8ad091f132129474060e0f052ddae3f3e7a4569614be9875338736cb30302047c435bb500673065023012d86e7d7004cf1c0d72ff96ac7a941d48bc4cc427b405f1e6d37d8c36a68a68dcfad7028d680f63620874943d2718f9023100ea1474dae956f77243e145f854c2eb7fc0f34928e14705be1a38f84d4398b3e512413e456781ed4e4d32cbb9f151f32b0302047c435bb50066306402302bed1ad6722cd59e87c63533561b8f41001ca1d790b56fe87ecee55f35b894d3e6dbbf19e5dd9e921667affdda339175023036c7672e2c78013d68740347817ac73d6bd1f390c973abff2612e5af7c67dc636a4cab12ed0b010d4f6ca46adcda38420302047c435bb50066306402302febc9da9c20b85762934ce7e4e4c52e1e1f5c843d8b501904d66a430ce490355bbceef4ad1a94ccbddbb0bf0ebb29ba0230377cf6c108b848b6519bd741812037d42b3bf356702fc5d19dc1c4d3185e1329c6a5ce9af83915d4f75126cfcc228f870302047c435bb50066306402302e607b0627cf807cdbadf9b13dece2fff2652ff6abd628859eac90722dc80b94f4aee77074b68d3db5d30b549ef461a20230635cb6ff81732a42a742008dd10ca69a32530bf7120c67f406c87cdfe43182f378479116c5dba23bd2c5aa71972a10600302047c435bb50066306402303c4c5829e5ef7d310ee8d1a9425b0206e8bf13aaf4caf7e69c4bafc8a1c51d6d85be15fa876dbb119d112872a5fd35350230284cf5e8a9adb518c57e4545808de9115eb62215062ea776a9e7e5b2b54bd7aa572303a87e4f311af6236af2324440850302047c435bb500673065023100f5069206b7c57fe63e189b4d631b6da4a06b6a0f095ae8ff6b876207ba8ce03df9758d9eb148e5256b82d31310731e5f0230494e1f1434c5311d3fe9ae8e85a0663801598233402f451a454550427ac8700bac304da571b15079f88b4e25dceee00f0302047c435bb500683066023100a1175b3631de8f671a7061425d98f7f87a18d309b3ee7c37a442ea1bd14bdb9d60cb1887726635caca6acdf226025c5202310094d92a627be015d3d50b8d66467c8b2af0c04f5e1d6250349a5a2e13fa71bcba74b41710ce7287bff7201798d35c4a710302047c435bb500673065023100c453d8cb329acbeca183be39af816bb176fe65c47d80b0a567c3f457c501215504c1338c4e757e07ce94d251eb0ab0fd02300fb1a6d2944ed66e6741cb0383e319f495f360fbc858c2ee56f8a3e810835c62acdb91289de6171386ea85732238c5b40302047c435bb500683066023100e985ef3defe070d00c9c1b5fe13b65ff3615d4305a40853750a76225bbac19e649dc433b110bb2ab88ac09042e12bcfa023100bc1b2272a446b53ed56ed3c4df017570f66306bfba8d04ec4d8c1471dcade1220a71539626f8b3f14d2f2dd72462441c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402304f07613c3f08b4a0bd44fd81e8ab0186aa54e7f4d68763ba622d303471a8fa1d18589c22b2ce42988d989995ba2d398302307e83292d7b03e13b94d44b20fb3fd0e63018568c121340ff1288ab8eacf5bfcfd418c036317d770ad0b8081830410a6a0302047c435bb500673065023100ee60addf5f53e767674c2f5eea3b91625fe587a4084a8e0d7a1a7343029e98199c5376046cb9c38d6409374bd44206b202301073cc0c58a034153acda8c9b2b2cfbe5f0615279d89b7f558597a2ee45a15050df955a4a66c8bf614914d333fdf9f6e0302047c435bb500673065023033add9fb06f56c8451b76d80f1a022259b175e5dc79695dc1b97d4eebe34b6d78ecf60f3ab253cf16ecb67d127578bb8023100ade036d0f6610f2017bf1ecc7d9afe425fe938035018d9a088babf9444555faef8c03049ae978aed517a1a30a6a6e4a60302047c435bb50066306402304f5b82b643d884fed73cad2b8dc949e4cb7bb3e58289d2857a36aef27554b801d8ffdece5fcc2e2e3496d75bbfa33cee02301b03096793d4cd8327dba50a304a1591f8aa7554b99cf937b6be0b060484e697bd6c91f1c355d37feff7fd947fe19de80302047c435bb50066306402304ef1fc7f449756a31adcdc507da71051340954968a4ba46a2ce173d2ec47022b4fca7a3b2d3020b9602ae915d475cbb302305ed6d89e32efa00a8f3b1c728160c642f8351b95baa4a76d1a51c91cc8defc3cd5037c2f5a112e8c3cedad5b47b52f810302047c435bb50066306402304a03da479bf0804e6b6b446f50c8dafbe2a7a0f198028314c7d4e0e0e7f26ff911e06bdc44592027492d0ed9fc9f42f60230052b1c27493eb5e09ce64d39e3a91278783094d529769e36fb8195c90ef5dec6149cc9235da727cfe6a0386a8332ce350302047c435bb500673065023100d3d60744a45f06551d630fee4f7e475418568d2b20d626ebca539788f838f4787a684ad6ece9c16ad9491b480ad7e5420230519005fa599eb4b91e445c7ceb9110b710757515b658a01fc51c6fe6f058a21ae7d62e4626b4ac54000475624ebbc3bc0302047c435bb50067306502306d3f20f9f13084ca133cbfb77480ffbdeca667ddea05dbb826900463455b80c2f7076588734bd735d5a601c63faaabc3023100ad4ea848db390362d4046f8e02226d9e873694767391133fd82b14fa88b12862ae3dc311300542b901ac93011d39f9f20302047c435bb5006630640230057897296681365aba9a3dddbd14d73315cde4d51c47121cba106757f10e997928025de1fe0c55bf02dba2955f90293c02306061bc62137604bf9e40125f8cc36f32b766ea5cec55b1a31efd9eee73382d1de10ecb5c8cef66029b03c4bdc2f7f21f0302047c435bb500663064023046b2d5354ba136979feb227d139aab17f6fb45fea3fe290a17e9bb667fd8afa45625664fc58c1dae3f780f5b0d22ba65023011792cbe313d30280828477bc937bf432c1cf01b7a486e2c964718dbac6613316e363f13d268d8cbe74f5ebed80e9b920302047c435bb500673065023042f93ee9e39c194e5dcd71aceb8e20ae5e1283c15e765d8f65fb92de2ff6c48de42756a0ccc9f599df80952e7ffa1f54023100e401d7ed0061847bef617379ae7f4552afb31240b94c8a61816c7e27846ee86b0c5856545630789cb543858429b6a78a0302047c435bb50067306502300d3789f4369b860e8a51129e676781d9fe32525d4d429f96e60e9c3f7c8ed78e37087cc2438b725ea98c80b68dcf6f45023100bc9b4d65004067f5a16905f4ea418a0da25c9bf2a7e43068161e64e01e02db4510a06bcf70486cd2a2471ddf2ed3cabf0302047c435bb500663064023061216f5cb80e51676884a40d8bea36b0a97a49e161603084c8cdd6fa774e9f642ad828919b01c451961f3ad3af43c0140230355628caf938542553cd15190a4fe874b5b78a34d58c0748eddc9e3538e5e27c7a74be4b0446bd8849925c24f6f860f90302047c435bb50067306502304dd616572dd57af2cda16cc866dc4a4bb8d267e8af4a8d1baf39a014ef9c265539b847573964f1d47ad7f71ca4407a45023100f90618c44cd7ef018c15f75b04ddd48de28abcc874c9814ef80168a746f5022b718149b886e13e6bf28731997025b2900302047c435bb50067306502304335a1ce393301b72ba37a4ef4fb343a5e6375a4fa5fad20cb05c44314bec2a4745d96be64fca291d7a78e0c33f55a0e023100882c2fe79593bb9656a47592cf4e0ee6322581c1559adf9fff529a80be87eb226bb0eb81f0e9eccd2f7530eadd14f1ce0302047c435bb5006730650231009bad408b3b1de224998a45ae4a1ca29d35c8a79b9b79cb454001275839065d45374a1a8b0e58645f0d1b3d153524c0640230704a6273dcc224f8fc8931882c4dd04964306e380dd2f69e8b84aaa2c7e7729d3698a3aa9e5460b53384c59a8e250dc70302047c435bb500683066023100a2a202a6cdc274294393e7bdd69aa5f3757a50e9d45dc99834afa1a9e0b1e5874e8ddb8e73f4603d48596b1ee851e343023100b174eb1e163169aa4d3467209e289753c4915e1a89754ed721251f21bce0b82835b3c043863b8c93726aef196b9349c80302047c435bb50068306602310099c1eb2402cbfdc4064d130770359637acac7cc6d8c3db1dce7ca57e1c7fb562f98fa70c3a219318fdfbbede2a7ee87d023100e622875f47db46cbc87058433c75e581a7fd47914f3e7107bd5ecea1f1508fa3ca759c07ad9e81643fdfd1929f866c760302047c435bb50066306402302594883f1550b0c843cd24d157d21ba51db8f4e2ed4752e5ca426f42901118f34ae0f98445ebf0127ad598a1ddd2c6fa02305c04fd6f850e416a9c1f01558604b11c62cb3240d168d5903fc751bead50e162b7d2999c64cd3b892d42e11536090ca70302047c435bb500673065023100de1e3645a077a36d6ec9de52bb197d71609439383d83d236e8f317e7c5c4fb87328a0b45a9fdf7b9a04ba446f607f8ea023004d682cafe01b14059465428970cdf1a53cfabdc18b2e58069e1ec3faca455a8628a257bb9445becd24be76f894a6d8b0302047c435bb500683066023100d18727a9d5849c4244f665e386edbf8296bcb88db5f89173a33bdf3d364f5efbbf4da7cb66ffa31bbde87a6a72af413c023100bccc12eaffefcc0018318d145ff812ed9589e174e8cdd7360ea3d92675d6533740a77d7d9dd2356ec1a4a4cc3ff9bed60302047c435bb500663064023062086e454df9afed2c316ab2c13151d265921fc91069f6c094a39701585bcbbf0457a6bf072ea48dc89f0fd89571c09b0230342286bcd58f52d3e87739abab7b2fbd65599efe571fd6ece5854f73a0b1859599a690b110bb8db77f611184096e11b30302047c435bb50068306602310099b88ac0a3cb53f1f26c62963e19460b3f213dcd0c1cd52b0ac0124abcfbae87ea6ec42014a9a4342c79aba9757ed5be023100a604632d650315eab06277836acf6c21f7a8d6f0916035243e70c190305156eb392f8a239348dcceb1a384e70c8fe1260302047c435bb500683066023100e00b357fb625327b5ae2036e71d6b1b2f647b183f05fc183653cff822215bebda2b4ddfdfd8fdccb26f8111563e938be0231008e563bfd0021e5c5f0611f4ea7facd441d23bf442810961baa1c31da065e8bcbd968de0bd9d1f023baac9c17781a1c6d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a485f6efe98db79331a0e82dca0f3c4d538e81ff14070c8cef4a828a80db43f119ba8cf1712ae6227a32f520917a845c023100ccf491c2fc2cfe81912a72f76674716c9a322896a8ca6154e2762cb8399cb49e2cee97b64a09b9726055aee283ff5dca0302047c435bb50066306402302d64b7c9761d5f4deb0326073e007a36c320cea6b64a850f1ff8990683d3dcfb2a7d77399890c52387e73dca95de6d5502306661e76e4709ba0214bb8d51a4fc3c978ec5ab04431fc8a98b665d6156afb3be5c42d93809ef0f9817aa38f4b110da920302047c435bb500673065023100f991da922eec968be0f3bd988a84ea6fb38d207965bb3f1446cff9a217b484459d657429a20403c1eb270ae544956123023047e8dad31a73c5678f13c8e614aac110aa94d5919ed1756dfed9ca8397fd2ee85e5d36aea5a74ea65ecc7f5d8d0f81ff0302047c435bb5006730650230747da948d346dec17ae2f0ac8427a6d96eb73642aa9881e36ce49a4f688e3c0ac25665c26ec71e26c9fd38dd1d7db38b023100db23eea9ea0baa69fb8ab0feb423537c7061eeb3c4996308b0abfcab2bf7c661578122f4993913d98d1d8ed69d870d430302047c435bb500663064023068b0956a7954bcd09b8e63188bf2d6de31af2c0c42baecb81269c4b3c88061f682526157450a42b197d41cf47098badd02307b2c02e8ae5198e40b7bac52b9589b6945dd1d65cedfb4708059046b8f74d19d3a3e15612025487e282431e166c689aa0302047c435bb50066306402303af975104005811872a9799f9773a6c1549f339f5821f6f5521db3a812c78027bcb0456d9b2d127d916c39107bc04d1e02305767af3a855a9ac9571646698af0ae76100c0d48be55adef573e9b2736db88e62deb58d025ae14e8e74e17427b7ed96a0302047c435bb500673065023100e0442fdaebd93645e48496f2cc732dd4f6316c2e0e3dab3b9115c6627f470cd2e5092de7ddf565e962e0f2e43fa654da02305d38e343b3dd1f0d339bf8827a1d9f4a356060c44b50df28f808653af9dabd4077da6d6804e5d2c05489faa604f8cc420302047c435bb500683066023100e0b58723488cdfdc508eef5e72c8d6903758ad1c20a18331e0a568296d768275072b8439391d19a9507d33feaee2b957023100ed47b0de6e8bc3bd963aa31a392282402b3ce20f85be894723e6160ea193c79c62e4e31bec1749d68abbcb6c11cbfd7a0302047c435bb50066306402300a1467d2b85e8ebc2a9f0be0b5b6d903789fc34d091b6eb9e6bebd1f6d362d481e45e46f4f90857215e021a2ef56fa68023071e5169066c654d53cfa875f9fb5ed0fa8ccaa92cd080dcb4540c99dc7f6579bfda7ab71f685f8bfedc23279a3da4ee30302047c435bb500673065023100f333132a6f4ed66c5b0b560203e163ebf2eefbe3b458e2329a77e774c82d7847014fc47bc357aa53fff3f8bf551feb15023001194e31023dd8464b7de4175ddaea237957095eb0512283952f2dfd3b042f2193a53337923dd02ace81b7801cea99250302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100fc64c1fa969dab1174fa3f6dae44f0e08787c4ebf51e1923466c8130e83e850342249030f431134929cb4253dc4130b2023021bf893245aad580eef34a4498512993007fe5050595dec786dff48b1b3938f544c19d22ad3cb3e188241f8cb5cc51260302047c435bb50066306402303d6f019d374d92738399c00fe870e48f2b1a2d6af4aa9be6fd322fca72f68a0706c295114389535146070c0b67655d010230655afdb3e67e6fd9cecd12babbe7de0e94b483e3c95540189b7d43d811ee0b5b878c249f7b156119008591c3f13d38080302047c435bb500673065023100f7772679e689b9b354e42b88f33630522d0549071e7efcb016e12147ecd3de5a5840f51ede4c5786fac6cccd4d00176802301521409f5ad49b7ad4f9bcb8723e8c856ee02f9faa2bb0bc504b0d7d880247ed2e3c968e4657e518015a8f5bc6fbe2d90302047c435bb500673065023005e1bfd7d50259c266616b67352c1c54d50061cbaa73a02c55071e8cba84668c0ea2cfc346a273613676b9271f15c921023100bfa2b90bf25957c7dd1db0f70b0ad051df22bca5d6f8e8bbb6172eee08421d987422398a7e73e9964c00395ecf3dd8900302047c435bb50066306402307f7e9930ca63c9cada30d13bdb18006d81cd29e8badecc54be298d8eec1770861b5a61e5b885a9d705a0ac58258cb2750230132a4799e2c3fc38f7b52c78fd543835eaa241754dfbf501ce69b47516951bbcb130fcd0d4261b22cca1bd20852056470302047c435bb50067306502307b99f66246fe9674ea685abf981df3d71954b3eb3395f4bedf81aca860de4ca08531bf0329a62e0aae30072618af0ccd023100c75edcfea7be2458334ebdc04829d47594976d845c4e93fc7967d97787e2b60346faa9582ee9dd07c019cf56a85c5b260302047c435bb50067306502310091f031665c4f35af2ad7842cbb090bdaa566b8b186a3ffbdfe5a5891a38f5d49cf060b2ee54cf7503eb54435c8c911e602305d2f110a94e8297efc6ec4bf45ff1acff184a751f73e09b7e6db189fc2a2affdeddcab33583b08e61f5375cf87abb4b00302047c435bb500673065023100ca559a401a44f6886618267948b0b123a449fbe739476e34b11c27c0bb4e62b4231be4cef341c2bf823394848333896a0230377da701318fb62d6192a0e99d523b2a5251b2d7c27343d1a3c648281099e09acab3a006de7e35435609b394ab97200e0302047c435bb500683066023100c5a1b0803d38d90ca5b7a82a6bbd85f7d339cec4a36077048ffcadda82342148ff2debcf4ce4fff13e47d2020d2814de023100ec081a8eb4696b35711c8f4d01f4b37f40fec6863c8088c2fb680742a6941f649f2d6a37b0b48c7e02c64007286403e60302047c435bb500673065023100bf10fd8435a0e5198b5b4e805cabab2c7ca49372257d62db02bdbc65c660a9f2cd66950fe0cc0ec7b75869f66640d5b20230671bc70de8d1394e648b8253c63460e55169ff03ca9f7d658795f3d568152ad101b598b1d66b1715dad7328a6f6d8c400302047c435bb50066306402304ec850eb979238d59be8b341729ce6cb449f731e779ee50d165f83dacd53cc6e4a13231d32d68d957bec3087418a520b023075b928cac45836f024f0093e4f7bd396aca82b9d1bb8b35c5c3359c15ad4dbbad44e3b6fcf24ccacf961142af421e6840302047c435bb50066306402303e7a9c588005c7910558d912cdd5d51a4fa3c516c533f0057d7c564add1cdd607aca9d75fd50a76482726690d5f8985902303f3971c125ff26413faf11c21bdf903c5a56bf570443e240bb4acff14e865da7a1d51f6952e6fd8b01518c283c5abf920302047c435bb500673065023051f12ca9a15eca32f3d71e3dd6c0eb9eb4a6b5406d63299604f42877004de65d42666c0dac54db5011e07b343ccbafa1023100bd1d37d0a936bd760b4e083ceb210eba40c500306810c5a52b9115a837c519607b6fdd06c2c8e7895de30f67f98cb59b0302047c435bb500683066023100e3f3e8e7f2dc5ff5ebdea96f6bd9ce059d5eb38989dda98787551c018e4f050b5d4ddfd616ace6c6a57fe3fe399e96ab023100fbff43a8e6c065618d395122373f1358ff85536b4959ce669a625f0b865ae2e445044df5b2ca0bdea04d82133754ee2e0302047c435bb500683066023100a8ac027a4a22a065450dc989169cbdfd6e0cba3cba0d83330ce45c6a4811a8053700fade31477e60abaa96cf83ef6c9b023100c9f97fea8d7d1a7d585c2992cceee0439890b77c77d035755e1439ca654f29c26282772ea8edc8e2df166022ab1cabc60302047c435bb500673065023100909612683b5b0e5fb338d2c4f72622198872ee32867d4cfc2ae8dc03eafeb0a74de3a18b31168d347ba268672cf332db0230369250af082921f98d2f8c9f24d8f26b58668859c58e743b5f10e8179b0359b99f31cfd15be0ad0655bcb54daf2c8a590302047c435bb500683066023100fce853dcbd36cd9e17e082c908726e432ce38e434fdec1d3b6e1333b71933da2c6cdbfb882996b855d780cf836b07dad0231008c5c151f2e81b92d5e265a43a2949af232707b6797c9f178e332e276928f5da160e5522436c49ddc5f14a74b2af83ff20302047c435bb50067306502307fe75f89e161d0851be1e59903deb4f47cc2910bc629069b08cde82b0295e03570bf6604ddbf88127249afb1c79d74bf023100bf3a038a84773e9d623d0d95ddff26c911d14d798752a4bbd0a53696c92686286229dee782a1a425e744bd565b06ca280302047c435bb5006830660231008e2b5000bc06b20d619179f8d35448f30b8f3129d2552929db70f64d22ebe34ccccd4ce89c3dda9c5e88143637f1164e02310097f938bdc99217ff1ddfb5334d4e1145535de1299212719cebf085b2a3272543390f38be0d36f08583419cad3d30f4bb0302047c435bb5006830660231009db43bbdf66d63b251014c3ce3237e1393c031b753cc3f4e96f03bb6df6d71dc285325e98263721b8cd31fd90c3060fd023100c331451857bfcff619fd57bdd09e0f33682988b9ea8dfefd55768cfb65c50f5e525d0edbc8aea87d129ef4ed683ec69f0302047c435bb50066306402305309e6bb960c32b6ccd7d2f3d805b1bff58aed6b0583336fa05461f0b768c730a64863e709cab84479a761a81d17aeca02303fb5fbc6fdfbf7a5920b7b3712453c39ded57b124278b25e4dafc286a1e069ba87d2e719596e93eed493107f999e8be00302047c435bb500653063023033385bc6d516b2be64dfcc0b47b354e59475ba8da8be55a08eb1718696d60718d1d429209576915d7665b272cfb248cf022f724a6c6c3a8c2ebcf2223a5489488e537a918a6f8a25eee001a04c3c40e929cf5a047b6e9c9111e27c94d9bcc2f6590302047c435bb500673065023100fe8faa562f11c1548673abd31142b0f6659f7b58a87f19ce3e12a1b5eb284b1ab045046008651d3553431e46e63a908c02304d1b140f591ab08b810d6b941cb9bad1bb91db69c5b953fc99b9514ad8ef07e9a8c2c1fa32515d7b74443ada0f13d2f00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d6c5131ff88fdee5dd4820f2dade86abcb97ca7016545d801e6c7d94314fa5217bb1f80ed2296f772a55413a3be1016202300cbe780cce83779766d0045c20bf8c9bdeb12dc8a4da58c0d808c1afcb8ad1f1c80a0b1b67cd1918e564bbc010e7d98d0302047c435bb500673065023100a0397c507ed883f5dceef51b892ca26145daa47d70ed2ebe31a74d38cb167b9dbccb5cffa98ac47338ba14451fdd5423023056b106be7f6da3da813b09bcbb62e8a505600198d599feb96f13c5e441d59601d1f3338f5163fb5c80a13707a2d8d2da0302047c435bb500683066023100ae6319a821e4e67c71f8f32e254a6d81bb85fd0fe4da1f36049bcea1da75c1b6c69d4c228a981033b985abbce646644c023100be364cf657b9bbfeaff78bfd0e27e13afbfeedf46b1db96c416e9d75f399cd1e2b76265847781dba57b8396917e79cab0302047c435bb500663064023100f1cf88d3a267216d8e09d7eab942512c8aa46f744eca5a17ecf669612147792f2c0966d746217a9754b5ed71df3d220e022f69007561818fddad5a754abebdeb997b9c363ac589fa63edc0f53566b5aaceaeb35ec3830964cf65eaf97602df1f370302047c435bb500683066023100fe39f96f73f0e2d36a1b00590a47b0aa6ba32a0f9deabccd3ed8c3f84024222e4d21157715a05535abed2bb52918f943023100d50cdbaf97e0200db33e5478b2502272b8cb1aa46294b451583b8e47a428286af67509267908943a9adcd688c3d62c2c0302047c435bb500673065023100e1e1597f4b9449634a0a1cfc33d5836e8590f3d69317a8a82d2b530e32895cc473e3186e4aec1c0b2bf2492e3102b91402302bd15850b7c7b6f81f3d687cac22d2fabef632b55aa22b2c1f6593c40780a31168866241634bd0b0120121511b4efcb70302047c435bb50067306502304ac8d089bc6272cff56cfd60003dff51a59abaa131657a1089a12ec68f27723b091db49b0600c0c4fbb4262aa1b29cf8023100f3303b44940f25e8dbe8844db04702975655ec18a8e72647a432939bf25d3e552dff942d31a53ae3aeca8df1c231907e0302047c435bb500673065023100cbaf16ea28f06d417b8092dce836156fa7b786e05edb64a7c8d915173cd6ad99e59d65bd85adc779d332e54d5b741b71023048a591f53e4662cc6f0ad468e33093d689fa0183f69981dd72739131e2ea189e8b025009608983ac2ff83307d6b741860302047c435bb500663064023063982c2c587e4146a237ff60c70cda5b2cac1df81f01ed9aae30f5bc670a51266f87473dff81376dc978baa0581f76d002306892c3d8413adf4ecf7a578f5ec46452da917396abcdc2ff59f218530e35f51c038f25b9e66a38f751810fd00e96562e0302047c435bb500683066023100b76d286e2c4a9805bb4e635408acb2d9720d21abfaead30ff4414b39e627914328799073aba8f3aef5b9b0c5bef3fc5b023100a1c7a72484998f9f477565aa7c36ed897c70976e49bf7b46e13d200191bab92ea485f1fcef48309a2e9f4334f9bd27090302047c435bb50066306402302d0b459be1921aedc331cbf376c3538e172c63255988c17567a0caeec02606e56b2fc591b5f260d64b0dbe9c09a656240230560feef94f549bbb4103709001cdb7c369827f4266453aea475ed2646e147789cfab95c53bf530de3a4a17623097e2330302047c435bb5006630640230515b3105fb279b4ac2afbe6499123413f38889ec6b0edb14d3a29d9d83172987aa585bc8e3f5cf43daed67467420e2e9023016ebe354d008a777ec321cd086fb6aed9746069f6cf39418e05e773b3975310be2fc380348eec3fec7ddd4496021cbae0302047c435bb500673065023100c6f22982df9d62c020f86e183d92986204feafc446e873aeeecebfbbba6268d020cfd147bf35bfb9d1721bfdfac14876023039c99ef09a14276c587b6a288b878b418e83ce11cf130a635e00e7bbad89d25ded661d818748ccd4b3c875c8f50bbf650302047c435bb500683066023100d5f59601dc12d2592216e142c70566aeee037629db27f2c50e31d51b8c42d41e68b5ae6ace188187b2e23c1a2aaa3063023100cce02bb10a238120722a6a24826f93cff8213034ad0b524fb6522763e97517b911d3fa36e52df7ac1b7828d7d71670ac0302047c435bb500663064023013a6cfe6e287bd8c4eebe9c7e37caad6d93cf9c5edd0b556908d10342ceab9eef8250e9d19df82699393fa0e2febde21023016a716d3ff451c9db89435e4d76be6d188457ae2b9fa4fc8750fe598279f427da4baf545b303dedead41a60bc9cf64200302047c435bb500673065023100b7f1ca908ca23d5ad4232007845401234c3be430d1040c13b17a21246b0d33a83c99445395218252369046a3d76cd6e302301d5df8abfccf6c8f7c2202dbe4daf2ae11a905e170de236a0a814d5d25f20b46c1eac9dfc94ecc448275a518709635190302047c435bb500683066023100be9f582942961a96fca7bd2e5f1bdb742abbf6c9f5a9074491bd308ddb5f845f6c7ae8fd0df571476dc46407fbb770f5023100a0eb57c91cb2c3142a89d79a85dc7182ad00dda60639cc0f1dba36de50fd22004f538b2d6b286fee2065c9d601b009e50302047c435bb500673065023053331c71ffeed046b7e95b7a17b10265c1ef69aa8f9338783e4c977494b3be5a18c70bd159ed23c8e2a0c3fb12602d83023100db760606552f808b451a8d547f7d49d68e99c2eb236a988e2219247a77fc0ed17993f976fea32746767c7937e4e1a52a0302047c435bb500673065023100af29e582c7e554253d947fb9733a41cf0baded8dc4e6da9aacff0f085c71c9b7c24a6eb613d289acfa297856d288972102301d62f6fe252fc638484d1939886cfe5369ad3dc9a6af71c5794351e9359a6dfcf1ebde38d5a71927f306df2a2e0e961c0302047c435bb50066306402304164510011223db251ac6468e305f7f62acd463195280e0e0643434161840b902276523cc96c872b2067d2564aff95ad02307ea62ecd49bbea005d037b0c24f3a668f491bbd8724d029408c7e2f4424bc2d77fa50394f019b8331fdd4cd27376b93c0302047c435bb500673065023100e98687f2e7ef14b72a1c96657ba4478cfce032c3bb7180368528471902c277a6a6e4accbcd74e8bffe796e5f45285ada02303641372acc1e825dbcff3aa6ebb34b9c9283dbdd4bd8d5b4ecc855b9f225721009d458ea3abd4b8ae8999d2b01ff1fb80302047c435bb500673065023100ea63c2a19246263dd967783d3c96da70fab3ec07c1fc31a1bd9ea07dc0d599c9846f741975464c83869de8e49a27a61802305722b81216499ece9ae360ff081257077016802590f0161c3a5bc5d05cdd2495fd0647c7783ac63fa1145318c589e7450302047c435bb500683066023100cf82d91abd541093987822017d4155cdad96b45522aca7dbc7a0e76cbcb1111e85f532749cd9070656c2b444c344aafb023100b592814cbed8694fbc85e73a855b6a53cc98dcbcf7331373cdcef138cd1427014b70e32fcefacaea32f946b022d55a790302047c435bb500663064023024293de291ddd4b779ac19c3bae8c6089fd4672d016280ce841989718ea6f8887706026879c7df2108d365caaa550161023066fad9d7c916578b9c49a79da2f54f93ea57e7f259b8aaf0e725f3443d404c06ead62ee242a436dd88d44d0bff9153b40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302e9fe50c38aa9782210d04f88d9779b099aea43e085a06ad955b00724ed2379f508f0f0fbf73b59fd703eac7c3efa909023100c50555dea0c58fabd54d5f9c7afb8d1e769b6c8c3beefcf43a80b68c6e8e6af9b46244ed277043f93cfbfee78a307fd20302047c435bb500683066023100977db0333e6397fe68cafa489d02e61c720ec88278c854d516b64f9b5437d4c85ec3148791ecddd76f8cd6e29ba5642f023100d151666f6c3757d0d27f9a67c3be8939eeea618f363d106dd60f8b482d4a1d764605b98fe804e243a7167250557a1c180302047c435bb50066306402304eabb862e5ab6a1072f84a69518f0836669ea62fc2fe6306078f240469ee60097f9dab094a01fbdad5a69148fd0bafc0023018084028875e6215dba2de60f2cf2b46044251b33125183d00aa15720768a65483ac847ac617b50a7b20c9d70ad4f3340302047c435bb500663064023051da43929ab70fa0a2acfbf16c5079629941a39f0420f256d5c1082ce21b453bc77bcdd94af0b79975ff20670aa8e6ce0230229ee0ef372203be13fd4a37a232191845a9c7bb6d617c8b94cbfdd5ee22e64121da46c506d30e9beeab34f03e7dc3220302047c435bb500673065023058b2ee8423a87e851b4378ed98ab25aee0eff0d428c89316f5c8d2fe04ac8eabb1a311c019a9c620aee922444348c6c5023100dff2b1e45137b73abeb4ea0ff5bb906503cff13200bac9ccf79d851305dff6d1a52bbdc81ae8533114af73ad285ff0350302047c435bb500663064023002cfe672635953cb22c4a09cab9cfb6a380735da0d78fecead924ff0fe825cdc4e457533513c29bd4df35fbb738843bb02306b444d9dada48430eae426bb8f8a4b6e3d9e21998ae58d3ebe43dfba08c9540502d7e83319813824429525ae145a627f0302047c435bb500683066023100c87b390a6e291b637b9c95b0b5f625aa0fefe7e4bebc2e7c07673196314743052c7a0cbd6a5c912cf87f1b00cde106f702310098ee01ba3f05d8125fe8556db5b370820f66cc76c5380ae7af89e9d03f44a56e2dc5af5112b20d0520cb6409b002605e0302047c435bb500683066023100fc1ed1e26284944d0b77478a431526c487cb6be897d50c3080f56a665cb5dd65609c73fec41241d0df43cb85e6af6765023100f18da0821f31facd31a8fbe71e6c39d0f0d00aace8ae2a69f0fb564e04714677999b7deb598eb5c0e9ae5970fd2e131e0302047c435bb50067306502302cee8523b14958b590ea390fc4874897e5900c821585aa1db16d0b5320535bdf05d6c736cd44e2a7f9bcbd32cb926496023100a70c5850fcd7b89414f1618e1c9d015c721009114d4165fa8014c39aa029688a25940510cc444cca43d1c3e37a9a8cf30302047c435bb500673065023100b0e369c67edc914f6b3c11a7dd000ae70ffd040b5f4467d070fe04ebfcc20dcef8eb7fb1ec27c8ceabcc22bf2732ca9f02302aee32647c173ff93bef1d44813ff54a463895ca29e48f94843cea154e3f2263e1b1c4626c21430efddcc13369a61f110302047c435bb5006730650230050c483fc9a209cccd6811f0a2ec249aadc923a547c83956dae91d736825fb88595c67545cc82767cbfbc717e3361bb3023100bdb82368eeba7e41153c57735dbafcec98eec10cb055834daaded27290fd03ce3d727358975bc634a16bf68024d2f1c80302047c435bb50067306502305c22e3275b6a2c81e21458176ccdd68b2bf44da7299c512a5134e5b3a15e1023eef91eb3e9cb52229f47e6d1e1f2d278023100cd78dd016af3182a86de212f13c98586293a37d906d98bf14e9d0d6a54e973ff174e66775e5a15869f5a454e185f9f1f0302047c435bb500683066023100ad757d4b1f37db2b64cb7bd8f18ab27e74f5fe58c75537807c546a6ddd2091540e66c51aeb2f9389b5e33563c282a875023100ab9d008af50fab2410ac3c6aa959d0cb1de1e5861701382e842888e939c2768d6b4065e58ad79c0be6abe4474462e7bd0302047c435bb5006630640230201ae9efff5d066b9f2e250919bcf2ad956e1c624d97e6f818f39c03f9d90767531eb09663aed0ee9ec4e24008a590630230662fd47dbb2fc8e18289e80befc1744fd60eda6cf13681919956729a6f6f7b6ec32d15dd0fcf6a2c2b276397206e98ef0302047c435bb50066306402303388fa05627ed414be0e631ca24fd6b5b12b2c2a3664ea096567ccf1eea5d5b7aab667586c958e80d07089da423c807102305bee8d5590ab7d0825c8fe288474f164414a8fa72699cd8a7de1d483a8310cf16f185230e58356fd48d9abf48dbb4d140302047c435bb50066306402303f2da933b64d84a57cd217cd0c8578e86d53b28c67824aaf157b0bce7fffa9cb5d038ec07cbcaabae2c5578127e0a48d0230645af2c0ed8c9dd29163bcde41d95ceb786b7268d2b83880bdb898d128cf9792b7699e288fe47361d30a10aaf99f51130302047c435bb50067306502307938a99b86a35a042249a3f4f8d5c03538f474e964a1d5116bb422a10454fa57fda949e3005501890ac8ba6a4fd94550023100bae6f9812a1b90b973aad55afb257bfba9c5a704c5aa448c8204a4a826c0c7e12e2e132a16b2143c518556b897b90bfe0302047c435bb500673065023100a7efa8017de7137f1db616404d3f44569d9445156f58e695641b75bb92345f677ca73b8a0054941cc2887a903da72d7702304c0b1cb4953f2211e90ae62b465eef30ce14269e2e5f7165c1c723f89d93e2f725d47b3fea64d094ce52e64956db17560302047c435bb50066306402304b38a143a2b2f42d0d3e31578da823656c626eb6aba9066e53dda7c6ff80c1647fc94512dbd5bc9d4d525ddb757851ea023025ca53b287080ed7d369004dd1f7b7313b55c1923d52d5b3aa5ce9b6cfab355a587868c48931e3d451dc40eab75392140302047c435bb500673065023017473460382073ab7710ae11968d0895db80b1339a9bc900597e6c3981e826d6217935e9c72b5881495f231de6065a9b023100a25b0e70a7f12e7b2945f71dd58c0bdc1c88d3f1ff8db243d122897e366526fe560ad65e4aba8b99ae971a137540c2420302047c435bb500683066023100d2884f7e72c5ebb39e200224d8e935d9e1cc82a817378567770a09ca5670de845a0f5cf7d94fc49657d4373bd37bbe90023100a5b5a9c1d6c0ad3dea677c691db92e79d495a3a61c6a531e06933282782035f8710964f310183e4df2abb00c12dd53af0302047c435bb50066306402302b1143049009e3bb0b3b0df831c8a6b7e4fb3244ecfd8bcba984e7f0466b862a4c04f5350b3fea2517f15b2ab76df4250230578dd5f9439ef02fe60299bfc77dc4c5ce6e0414cba439759e180e9a7bbb1f93a1b3cdadfc0f5662f0c8846cba102bdb0302047c435bb500663064023033a01b9ac1b17d2d948114c6ca91464780ebd9c8130a190d6cb82c51e7c8e0f8bab32e98411e6ca0ce0175bdd8adab690230049f9abd4b4efd8d9e9d5b14685cb75aabb19ea5b4908db62a10551eec4ff914a1501da3eb584508d59762a1f5bf701e0302047c435bb500673065023100e48fd3dec2bf0a1fe7006db464cda9e31a0c59202f7d1146dbbea60fda1dc88f85fee96493b9c2f981c8e24f260000da02302e4a40833e571a4d5edd791bb4e2aba72057305687ca5867f2f329670fd21c25832065b1b83898d266298d33f89759f40302047c435bb500653063022f3d11bb04023743d3325663dd5fb7a98707fdf3c50d730d034b0a60de4f75d0fcadf611f20bb52633e36eed6a2d29ae0230662f99ca348ef853b8a9d85e99422bda6b62539335ac65d2e924050d7babd2249f20a5e2476c762616070067a24405610302047c435bb500673065023100ee94f7fee1f4b99786bd664796d604b4324b4b6337f2846156215f86d402d4fb6ea640c6be1a15a911fe4519730ac15f0230131076a17edb0ea4238e38e8c55c65bbe91aba2ec5bd1a03589b90a217636e5e2dd9e89e528ecc59ebeee48cdeb7a3ae0302047c435bb500673065023021610d695a4933e71e8325f3cfe250f6d43afc70503653513c7be1c81532f7154b9a4cb1463dbb3af43e7c0881272c3c023100fb6bf4a37ca6361155fafc21dc9571e2462f627a4b106012106ed74954e91b964de92e3a20ff94e3aa48809d090dc1f70302047c435bb500683066023100c4cc201718a68929ab28c1f600201f5969f02721231f91eeb6135ef5d8018c9d095a9ad46fd4e1b0334623d8c2e7b2820231009ea4c66268a879813af25593531e1ae50c85e0a824211c4405f6946737af1a1aa312bf4c0a8df2114178932def0b5cb70302047c435bb50067306502310097239e3e2064c37bcc37ecb53a300c9732a8b778d885292cdfeb69233111868f7e57908f975178f022446e10ba7b7b6802301fb58881aa7dc5242cc309a4ff31bf255479e54f557d26945fbbe50f7405a30eb5f9dc9d5e4ad0685bbaaf767224b6c20302047c435bb50066306402304de7ae46c367eb268a97e2b4cbe4cbab1459426119e0254d1b26fcce4ca25c6a8279b5abd61b416132a0ff431b350ec702302e5fda247731dc4ef8bc0d3c0745ec5ff66349b1b4ef3b864020cabaf8f66d22a624b247490509eea8a56de71dc9f4270302047c435bb500673065023073c7780106632c17d9b6b6960f4485b671722f2c472aff65440959c18082ec6967d453af36f070f83e400995c21f546a023100cc7a499268b819f850f50ab65b2ff10c60edd7fae6b0699a5b87d1d44062bde98b0659282a0140d3980284fe762f48010302047c435bb500673065023004290b3bb95b5cd6a5b59fff26a2d2b28cc701dd676747592b0bc7e37fd2e6eae394858d0cf5bebb9a341a3581de2e12023100b3d072920506769f84c652465c6dcbc184e79e36818b68ca772b466818a22cfeb40abb3b3b2d8c03ff295bd1a09fe9640302047c435bb500683066023100ee5f074c1737320dcbbc37c6927dca5c713a010110988797eaecf9637546c2360103ea02cb98e0cd6c8731a716ec689002310091314d0546e9d66933589740145cf8417cae72039de68fa853cee8d4f8dc7284cec2e7e6cb1a099402a836e81cd25bee0302047c435bb500673065023100d00427a4de94fe14b50312c68e40b2f8de0084f3df652d39ccb9b10169524bd57e610f9d834ea37e51fa6e003772adf80230402f02ca6ca2a83f8495b2f147e07aae71e92e694b03571e89cd77aa904c690c187e9e48b51b584f2f4d04cf0852b0ba0302047c435bb500683066023100d80e6a79a5f8ea3d3da220cc91dfb16c57a5b51f939227431dd2165e7295ebe8762b07ae9fb9e9a503ea0acbfddeab81023100a7c380d4a49927b97382dd29c6e717772e54bf6b7983b76594015cc465780238fd459428a4c12cfe1279b1131405e3380302047c435bb50066306402302c55420bb01ba098b1bfd27210865249d706cd3e74a24ca2d5cb3b34b3142ad934e19c043cf4fdf64a57577c7961c55902300860377eea797550548b4d353ce97404f4f9336d088be936330e87351bf07b11e0b051aa16cf417a9066f7df15b789b70302047c435bb50066306402305e9fdb68729623c4ca6c65ed519636cf28a03a27c9f1a97ae8b08fe779f20b74fa31eb478bc922f2cd873ccd5f66d48302306d11eeb850ddd64c36a8f6885960bc9b620da80b735d805ecbfa040932b833a1eef55dc364dd4c18ebaa3e4f01f95ea90302047c435bb500683066023100f2b6754e170a4baa4cdd6aafce839ea28683dba4179e280623e53b56e4dc8abb1c4ba693b5240fdef2e0c96f0f4f3efc023100b0312f6bf72792f15f8d3c7d5309d0c63e1fecd5dff1ae2aca6383d526127d868e02a8c21134e431f9a28917f6ecace30302047c435bb500683066023100c7256e82a67b589f54258f489d0391384c2e37ddbfe5889b54ea98a9f4f0b185e260e175118f446e410673e7fc42e031023100a3b2bd31144c9034e4f4e7ba41992c2c6f178f0a091d5faa2897f0a6bbb9d209e33f68383f8892db2ab844f915a236550302047c435bb500673065023100ed694a10c2bd63fb0690f6c373b3b93210a8acbf4c73f481e33fb6c1173a254c3267c1f77eaf580861af9dcb00fc8c0c02300e02b8f9162cbb563feecd9bb9c8cf91d877ff80a2854bdba8b718768a9f251551013c2bd1698ffab6152da8a1a8ad180302047c435bb50066306402304eb52e943fe098582ba0ab15af0a9167c6b2db9da95e2063fa3a3b59fd0546f61dff7af62a2918cc7425a25ee7460f2f023079fcceee79dd911509b989e8e4c52802c318bea0f861af1d5374853789cebeb0d8d2b8da0f157eaa18b34789ff760b8f0302047c435bb500673065023100ec115ff2bc0209752534fd1895ef6a2e1268a13d60079d4dec3f58b4ae4d12f5b54f54d1b9bcf9e23c73ebf355e9dc2f023046b479d4d46701aef1137eeb86aeb46b2f2c361013c7e7fc154039a8e921325ca8c1260887d136928815e4f393d8c7360302047c435bb50067306502302807d923c397d1553b2894c87cff1f4690a548e1b48276093819163655743f120976c9ddfa3b0aa78cd190229135e34f023100c67651bde7b009125a585183c8557226138f9dc870688c10ad32f2e1bf1fec9e46bb55a57b46fe7c17306c06ac9138150302047c435bb500673065023100fba3225b7beef8edd8e9866f3497069eeafe4fb03b2365a4f2fc4a49c75310bf8f0dedfec62727c3557ae524b8878a8c02301c1bc9a8b02345dfebc48e1c97723f0c42575799ccb89d6b67e969c776cba19a3a378ad13aebf6ee56d6b820c4aa47e70302047c435bb500673065023012e5fcd6116739f0a82abc12977aaf31dd1c55e92439366ae462b8f8995a75d196a626644f14f9b2a142d25774e5b5ca023100d1bd4d6e47c87c1f3c3b7ff84c8afa9f8b9dbe3561aac8e0ca7aecb4e414c1a538b78ac2529030f3aae674b9c738d9f30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d01e76732a7385a259f8c55649839fd986d3e7fad86d558e06afe1aa409d740cec30058331ce2c97c009057aeca2d95e023100ba4924d410791d855d21f40db194cd0514bb6dea4e2f3129463356d282857a8ad69c1970bf563659175cb8940194c2900302047c435bb500683066023100ed55b3fe901cd3fc1f3fa409b2160951d6911afd2206751b0658d690e8136af1696d9018f522b1ad0f2cfa02320288cf023100934e89cf88e8a47e33e1e4b17ae26d7ac26facb9e15165aa26b970c32a3a209d7cd73eba90d048a2dd01a200490923850302047c435bb50067306502304ad4d149cf192380b1542ade638f3d36ae7b04a7bf916090d59b62538d72a1a609d6400084312de6468810b1b010ae33023100c5a9a5af57f57d9f333b73b37f97ace71305e99ffa379c1ff39b90f38fb8539995dbd9ce48d3e8f83263faaea745a0150302047c435bb50066306402301f17f5bbee3a70e84cd2b75c047ca4afc2bab26436b2e5c053cc10f6b68fdd5c2cd8a3007c5fe3bdf798334a537da800023013b845c42e91abe4f6a8e5ee1cdeefbb2cc85be05de38eb32ae829af88f5ec80851a12b5bf6b8372f79120acd64d05780302047c435bb500663064023037bc1ed00cb67b83785219e76c83cd4ea68280131e2158e7395119caa707a46e7f3da10309aff15ac4d996aca9feff4e0230781f9ceeaad843be568d9f8bb22f5c09560298ed8704d7e984b3418cffbcc14943056be2e83ab86401aed9c9691856400302047c435bb5006730650230545c18d88214e8f0afe70bbdc00d5cc244a83e7ac309364fef2aab203efe0133a7a0ead53c2c824d10362dcc7b5658f7023100ab284ce183c52e97ac439d1ff1d729a5677438687bc348e6c8b9088fe8bdf5e48a785060a18898636726aae3b1eda2ff0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ddd01ea31ec441968fac9a7da6d020c20fc109b18f8ff6a995cb32812bbf8efc9824f26851f82e446a62a5a8fbe39e56023100c864a72035728a7ed39b5b9ff4b267e4f3f18459e28af6ba7fe08dd7d7ee803b5282a0b1761174d61a10774347c4a6dd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a51086fcfdbb5aa2befa7b97e0150674bd29a7d2e284e6c38f9a5973412c6a0857a3b6f9868af0f220fde2827cb8561a02306502efbde7e35fefd4348c9cf766e48addd07434e9df49a5c7e3348931097f634b9e888604725c2283a6b7da6e1803ab0302047c435bb500663064023014d3acc99637d5d8d2c93ec15db5265d39153c732236b88cac00fe988dee8eb5c32e122390a2f4fce443da223cefc60702302b8d25010723b4cab6fbc0845f76f38b56d48c30678b5b1293b067801d3a0accfd27c88bc8a26c54f0cbc4f70a7c79860302047c435bb500683066023100cab864d30eb7133f8adc060f43ea94f8af1e8fbb638bba20435db7782ca06f20123dc0955de8513d846a1b546fceaba9023100c54d54b59711baf106dca70e5baf95d2d1f993199e532f45a428e9d2d40a51c67f7293d77592f5c4db236bc5726f46390302047c435bb500673065023073652eb62dc9d5e415d3256a4e64f20424de28d7cc96b28a12ffc7442d71ba552afad2b134e48a5d3de9fdec3f451deb023100c9952ec9292675e7939099c118490117bb26025b737cce28d504140fed81cced6f0731ffb3c434428001ebe3d74f3d6b0302047c435bb500683066023100f72f46005566f96a2e37ab905a3cec02d520378325745e120a5dd05315185851019043cf456c9f5d3fb0ab333f4f5b5202310090fc0fa794066afb65d6230e90b1cd0ab316248e2f27cd09ba65537c9f3f5fe9b838cd37b57b7bbeea60f42d2175daa20302047c435bb50067306502301fcec98b81cc72f76c54ac85096be8265c309ac5fbac31936b0e0f19386aca594f44e445aca538df6616941d726c9a07023100b59cd8a098156ac4060a419b84d7054be0b17d90a8aecc2bbaac97a96840582ea2957f5bd232c170f1a15de71bce594b0302047c435bb500683066023100c4ea18ab33bad7d4b1a414590cd15f09e8e96eee901f3c812f0b313be2d5ea8ef59fd4c440702e6ad3c3cb4f03ee3cf6023100e7d4165f9455e2eea7e38a97138b0fbfb8daf79f7e2614acf75fff0e3c61092d4fc7bfedd015c76afcbc0899d287515b0302047c435bb500683066023100b2f84f2bade2976712bd085e20cb0e937fe8f0bd4e67f2c0ebf2f6b15869cb6e3fb78834fdf601cfcfda221a3737d5c6023100cb5a7ece66db717e611783eb1b1aa956e31608ce3d4e1e922dee6d94dc6c5f91878421927eae16b0c7d85d9b9e579cd30302047c435bb50067306502300d1831078422437fac5606c15c12e29fb1bae01b6ee1dc1b161492cf20106172f6d81c8f3d9a1bd3ecb0977e38dce1d70231008f98374111b350b2be374dda2b117e4938b9a45f0c810f13ffc70c2502e6f3677f33bf24cc16a6e4502a6bf1af94dda40302047c435bb500673065023100d352dbf484f51d9dd032ee0dc89afccdfac0ab1b2cc6e138da368d49c823f161fce9a4a5f5e2cb2350d75665b069e7e3023023aa4abfd1858b64fa443a4c9010612d2110cede64623943ce8c97c1e6309e04f6a331889d001ea2a64cc8559a2a3a7e0302047c435bb5006730650230555b2be85954d926e3d8458277c33b58f81af49ef50a96c4143a29eab08dabb9ec1cd11225146019bc79e3abf64498f20231008922b1d3b9153528cf7a06f19a82fd5a1e08c5e4eb81d9bc33f16cc6ce1621da560cec891dda67dad35daea9bfc4076c0302047c435bb50067306502302b1f5f0df2ceb9f7fa19602189c7f6c6d21568d5017f7890238e919ac5d441a3140e0ffde26d1aa3a539595477c8a9fc023100f767734344bccbc3b59e460a04348f8b99b1507967dbdaf19153ee10be0be0a51f7c79a553a0cddf75415bfb0e2453b60302047c435bb5006830660231009ee99e4739d727b6726fb3c1b1558ae38cd96afb0b7ab4eb1a329ca687f3e57c6801b00071be078ffdc255605d73b6c4023100c0c74e6ddac2c4f07b4addfd3eee2ca147096d5166abe9474c66729f2788bbb76be72bd842694773b8c35fde81e2ba440302047c435bb500673065023100cacdc24b755e910ba5c484a45e543fec9aa6655007525e996098a4782e23757fdf211b16daab001ce282cec95c7c8f9b0230293c6db30ab326b9d412153f4af6eb1dc6ecc7fd5bd2783cfc399d79c8849cb1c9682dd59dfaa8d5f92f8e565c6745a60302047c435bb50067306502302ad1a8e90a6bbe90ccedd1b25b8a40141c41f3e2f665a8ad2b9948cee77848973a607731c06b93669160c6eee5183ceb023100e95805510d9de2a37e0a96e561c21ea7357e582585f04aaee6016d1c8efc662b9774e333f33c24c709c86c615defc0060302047c435bb5006630640230239a6f9502f8f2aadddd89f21aa5454f7758fa032f142475234139aba8698bfa67b634ef0bd4f45c59ffe70f231e7d68023023315c2a1972a437230a2b9137f7dc0562b37661d054cb1a9256db5ab3d4fbb055d4f4b1c3bb51e03fe7189e98713c780302047c435bb50068306602310082a262d7c93cbfcea639313e04d4f9a1bdd7050a73a93a1f7b4b0129a402b7702765a71b478fdeb9b2f46f69a6c700e9023100b0f3440bd8a9a25b8daeab2c95f2587e1c84d24a81a0c55b1951c0dd0746c2706468657eb3e36303f15cc8c9197dbcc90302047c435bb50066306402305935477034639c3e3bfa10a389d6ff4f3e352ecb87041c04b16c000d57fe11369abad428c78c4fdd154695353dc4d69b02304bb0bd2be299e6f453b728441422fbd99e904417a7eee684a918b4df313de1744da955ddb0700e552ddf327de82aa83c0302047c435bb5006630640230653acba7b9d6e81dffc1974b9e5fd83bca3a2dbf94111e24d504315375f661aa7767005ad462e0f8f68b83fae19be17f0230238bb740aa8e4dfa8086d699bc9048398392fa55efe89fddbdac7d34684b198f4ceb3b0bcaffd8acb6efd675eaa80a6a0302047c435bb50066306402306be14cfc9a141169aaede0683a567342a769cedea934dfffcc3df27460755eb8f02a300d1a1719f8e3ddfb73dc9c9f62023043125ade3b9f782490e572ec6c4c8d93d3978e4b538b349161c81d644f8fff62b6fcef1668dc41f05c7d5ae3ccae5d490302047c435bb50068306602310083b5cba50ade9e0b39dca8c9256fd7efea2d5de9e1a64e0610639f9b779a238e915f72a7e5749929326f3705324b86d10231009db4099af966f54b13f8adad502b208ae63975cea0617af903ee51b324c76ccc0042ca7ee73b1c8b0b0f8510b3785d210302047c435bb50068306602310093fa91b2b5ff6bb7d201353f04610d3e4e6be5fe167d563695b2565b50fcd81000209a932dcd5b597eb2b0ebf6f41ed6023100cae88c7c09208bbe7eeb6c5d9252c0939ad98c36ea4d1ae209062b42700547d4dedc93884949340a3ae36622b12923df0302047c435bb50068306602310085ab5747e05da0ff4ac49075ee06840a03f49fd5a271a59b4c7616137ecec01908b47c743dd0f6b4f078d871b5dea89a023100ea41daf0a13cc6cefeb22dc88aa2931ca11301f85d2933cc4e4929b58ac71f468bd0bc3efbdebecec98161f1c2e681940302047c435bb50067306502302e50d20b3ef95a1f24d83096b05abed89ab6ac858e357f9595e8def432510fbdb3fb8a7b066ba935e34a7207bb072aa6023100d914d77153248bfef18ea9b50a622ef936f39dbf8f4d3b7a72af527865d035ff68cff0810fa63b12d9d82c41417cf6680302047c435bb50067306502310080fa1ee5cbd8939bc425e0f4cc71820c033473cd9eb0fc1cf75a0c484e6ef11dc59fb35ab5a312231d57a37c1c0a12f502303a859e822544c498ec519cda4ef95c15a61d226590b764d64d52169f16160a03b21d3a6072dd59f3d4f018edfe195fa00302047c435bb50067306502300f2de02de3142dbdb79d89ebdeb9cf0114409d75a2e956c69f670ff1d39be5be46f89d0e303c370e7c8199fff9972972023100b0ff2c9bb3073b7c1b11197495ace20955a7b59358875960eb8965b32348348ed1f8f74f37eb3fc793c75750f58924ac0302047c435bb500683066023100db21f3cd3e6e04b42e273d31155e6bb5266decc6d02c54c4ca00dbadb09f0823d2735746ebb66e5c0538d90ecba00312023100981a983fa96c083d3af722ed4cce8e66943efa8c2421db65b486864874e99dc41b25599beb45e51d383376dcd125ea090302047c435bb50067306502302da0c6d838d91d2a4d4f9830546df4712d6bb44649e4d85a5439c664de8801803b0c91473527c5e518c1e5ed68166843023100942ba4ee2e48a5d5745442128f7b822471651ee4e837ce2c0ff45e489a6aae6074dfe420e8f901af45bf3c912c2a53320302047c435bb500683066023100a473d74af96d09e62a23c875cd63ebf5a3a155caf3537cac0c908dc40b61943634ae648400fa00b7d0dbdea5bbc45f1b023100c1427c73c659cdf4035c5aff59c5f68489e246bf48f0677d2e9d7851f2daad80a73349f4a9e31089c716328410b824390302047c435bb500673065023025e5e30008ede7c3df7e392ca51ffc1dd0561c4587f07ce7e3be741cb766157e2bd3f6469e8038b41bb4b92097af6a25023100b38ed2484a426e231994b5eb51ff127c8a25b3e2cc0b2728f86529f28ad89a65171771bf464de72cd6c1f4a6a46b73d20302047c435bb500673065023100f97add446035b3c882a144d29a353e1816e26267d80376b38aafabb232bd8b379308ff5da1858254c5165e2942cc8ea1023026f7116f860ed5afe9e02cdbc41ec7b8497221f02e188b7348bb4c3e756f8b1ca7abd224d31057ad37424348bab46c590302047c435bb500673065023044b9366adc752b8dd2ea2653763feff9984da67234f656b0ba5a469ce51c87ecb9653330f80978ba9fd81db1712e1f01023100e471724633959d54da9d1beacc201156e6390b8f10ce3cd9e380e804393ed7aa16cac625cb21a3eca28a0229be26ac320302047c435bb500683066023100f6c6040f7bb2eb41a59fc8f74b10f4050968924b113a3af45e5855d0f9415da5d7759ba02cf9110e8f2c2d37686f6631023100b9a6921245f28eca211cac4048a771e1619f194803d0767e3cfda56702fc49ceb1f88ab4eae960f6fd21bb466aa057bd0302047c435bb500683066023100ef504a2e1d6b7df5603f8be7d3e7a88959f027989ca717f88bbed78961abe1f4c8b208755c36a5ec0c13057c8ba4e968023100870f1cabe7e1c7d7fa3e6d41bdc867c47256bddbef0403ddb5d62042b5c78bd3fba24aabddf606f6b7bd65190999e4cc0302047c435bb5006830660231009ab47c2073335226965e29d13da08a81732f50af449f4775cfc2643f94576cec2e55c2900d9ff7f2b5e3dc377ad2d52c023100b9e817de9fac58320c23e7b4c6f7bf65e79eeb5e6ad71d390e1dc59eaf3c0c1b0d5df9d7237421aa2e0eedcbd5b16d600302047c435bb50067306502305c60cc92b00fef8bf3f2ef70f967707e4f59d9d59dfb49605fb767ef19520345f0856693c55fa2b7c3835f04f938f93a023100aa892389027e5b13db19ebcac824b8e6aa2a55958c32fd301ea8c23629c85b04a251d06db56a7f4074d00fd03e6e57420302047c435bb50066306402303ed4d191071a2b6cb7e26921b027c2b707a695f6137775c87782eec965f48820a0265cd4decb92eeb6617e6eca58608202307744b08c12b32d9de4e028a258633fefe45b191e4d6838a9eff3bc189525e4c6c01322baa86f97d03bc04d7dbb15f4ca0302047c435bb500673065023007feca334c487b79604c0b991a778f7250c4db2f254597bc130e3180387232467080bbe66f26fd886710ae0976c5e5c1023100c5d8dc875f60196076178d80d7fcacf5d64b6b817f3c978c5b61ff22b6337367199f422bd9f845700d5f52479d9d1b100302047c435bb500683066023100d6dc4d286ef9dc457369c813e199f6b6e77478ab9d3b0186d4584148263d724bcee909a2ddc12da087c3687774571d31023100bfc625dadfc247001e86d9d9ed5cc01df1d642ec92fd5a89adfb1404034eb296ca31c468363ffe040917171da8e04e510302047c435bb5006630640230684ebb234775fd6501a8666f6d3f5cc2c0bcaf5c748703ad9bd8f4b750b28642d038fbfa34f235489e94f81656097f6e02303c6294eea6f1c375194df30aa5b12e36b09d7f64613b80491054b37f85e102914dc4b3255f2c9b5bdde9f4206f1f945e0302047c435bb500663064023006e61970e8298f01ed7c39b487b478e5ef40719454dad8fd219b153bdd5b1bfe947aadf3e4c9e36e8066f074a8c8e264023065bbb1b31c9ef880574ba93dfcd353b10ee4180140223d9f7a5af074189ff698222d7a94f744a0a58262e384151cc1f60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303d1a235d5f60bd54bcba63b07768f02241d02e175194a0ca58201695fbbbccecab3a72ce57bea3d65cc6acde5e2ec772023100b3a339df2b84fa07d5ce4ee667a587e87697b2cbda32fdee50fe196ee15909df84e173beec1d1eacedd37ca0e6c1f2770302047c435bb50067306502303a4a020522a6278e22e1ecb4b19590481550607f36db6d4fd1e8f8283a6657f2b92ebf473670c3de926b1670a54eadc7023100ca399bb8561ee94955d87c2b9845b9e711d96ad0cf96efa83cb06cc08b0c06b3b96f42babe95b767737e804deeb0a8380302047c435bb500663064023054227a80650ed31b664e9cd123209a14a2ddfe1fd86dc40bfbfde3d159c5802fce1fe99d5bf985750e00d4d675f856930230448119a1e73a4d4bbd3d97a9a18754ab6f8b39faf70cff635fce728e1ca98ff415db0fe8ce2345278ef798dd479afd850302047c435bb50067306502304e11fc82b52790e15665294ba02b7cd690b25d13df266a55c9cf06fc705989bceec73ee325483fafc9aabb9b0fce77680231008491503a2fe7ae4e55ef655b485d5fc62ca633905b02349a2d0f32231efe91f9e465f0efcfd7d255894f77b10d1303940302047c435bb500673065023100eeb39a23555ef770ec1a8162320e9952b7ee5d1bab29541a5b5685f11183d065ec0f29b1ee9050cff53be863913e9d6302305470e4749cbf71875e20ec8016bedf3dff424ad9fd7f553aec73d823d88da4d4103fdc71c30b0648c29cb6356eae2d720302047c435bb500673065023100f19a217c1d53aecbd32fba323a53f899dda53ee69605132400870db87d5bc9c0008f85904ce0f92f970f54cabc7c701a02307c23dadf3dae75854f46efa8e649bb45ffb8b81a487e8a2408eec21bb4d8a5b50ea3151f40f387d9094eaeb37d0e761a0302047c435bb50067306502300a70d69acac2754b42c7476fa94ce33e65dd5228036d3168a9abf55101fe2e2216b0e31f2329ccc9bb44ec1a4c436c65023100a0eefcb479fe4e09d013e9117bb7c371f7aa6bacac36855b196a314721f94372c3d5bf4c319eeea364189b6defae4eca0302047c435bb500683066023100d83dbf1a1777edfdb806092d2a9858fa441a27a20a22c934436ac6af708d201303aa7f91d96a0859d58cd6acfeee9d5b023100e5c4fe9ee4afbe5405b829b2b32ce841d2dec0781aa9bb03fc550e807623adce03dfda9c4aca5b6fa0a835f2ee2580eb0302047c435bb500683066023100cd2c9946e18b1d7874c1477e16d17ad31a99c5c13665bcced1601199e29b58e7b8a6b5a59be1f7a744f8d4727f7000ec0231008617495f86c869e9aac82bf055973f53ae362db905a7806f7af0a39736c4edb0a435a845c6adf33002813af9aec81cd30302047c435bb5006630640230615e79654602411f260d8b6e8228067d0204b2ea7d130f08159d6a138324eaf7f7a87b2757943a8fd3843a8ff0ba6f0702302185dc4d6ac4249e721d9172614b5ca9e419887669954c2b36d5c1250e1c900bde2b47e5dbf8ecd0c5b879741a40d8c60302047c435bb50066306402305292a9fa9fab9c24744ab78014c12c1b7f610ad8100b6f421d1ec15f4d4e0b3efe1808fd28705d082a0e4d75993378b202300c84febf253d88afa8a3f923774061a8c0a7efe93962a424f15050683dd25c28b48d1b796e8d5de0c507cbcc741f18bb0302047c435bb500673065023100d7d632e83e5243fed5f3d4af5ebbdad5cce76c1fc5bd5de133496b51d9badb29d61be89357540890b83d40487210717402300830daaf58a46c83fb79caeaf621d8009d6146456a9c8feab1a82a7fef6042374c29e49660647e586cd41f3897b9cf840302047c435bb500663064023025fa4eb47987e4d97fa16214c370003addfa2c3bf4e78f1c48c281487f0f79b043ceabfa587595645e45b48e12e67a300230268d708331ebd775638ad75aa190ffeae3706528735252d01bed6e9dd3cfce8a698c098d4ffbc64320d8200f4c4f52210302047c435bb500683066023100af0e549a45ff3d62644170a12a8966566ee16a4595da981a9408d8cde7e83a4e009424b5b2314b45273e13c26c58e6e9023100bae7de8ad973f20c073c637b248457506e858394431eabd70406d114de7e35455a12862ec0d79e4ae4c996a06147fca40302047c435bb500683066023100d76dcc30b43f0c9d7c10053ebfa0726b85c323bc06949eb2df74c86d247f4729e132fe38ef1c97396a186d0bee9d0af302310092eea726f3ae0c1071e4ee6a411b5a3a5604312ae37a69115a56eb9113b3e434bb30a5042cfef3e955626ba4379605e20302047c435bb500663064023071959bb7638338a1d9ce8e72bc76c754e4033a774c4a2609468eda2329720d040df3ed18c64f2fd9ebf60e5c789c25bf02305bc50f3644e63cdd71e8c330e1a8e8deadc8f85ba09bdbc8409fdf56fdcd2ca56f6922a1137697990f82742f87d1e42b0302047c435bb500683066023100cfb62e143ce499e3877fea62edef71c5ede499a10ee14f21daaf72b658ab2dcdaf2687af7209cdff752e51c934c38357023100e6bbbdcc44f4f46aa82a6f3ba7fef8c1a3ffeb5d44525ff8e146c9f6b51f9fd19748931eb1008ffbb750238f7b2c4bff0302047c435bb500663064023041c62a5dd43b4d2ce1fdb414fe6ef1bcdbca866fa50133cc86dea1bf1b3c73e5c1c11bef963d6a563e0eab4deb0e7f450230541050f52373c1eea011eea688f4b7329202e5426aaeb8058a0b3f162c4cca15745d65af716dd98766dbe7054447c31f0302047c435bb500683066023100d7d4859e9c6ea39336b611254fd258270a2ea220653b9fb9ef5be167135560ddbff15a0a20ebcacb3c371e67074bd18c0231008b8d0018d6db3eb3ef46464438923ec5d0eaa6dcd288ded6333dd27a4b6b414351f68e34f8a55b59b9505e16ee3ea5630302047c435bb500683066023100c93c65f0efdd39b2d9c7091357106d0f244181aeea814a30ac37fbc4be7615d3b3cf1674e6449987ab9defceb04505b5023100f1df9dc0c64e5a8653c5399fb396f7faa697ccccba98235ae2e6a1f18ef44ad363d07f6e3dd0a59159a60748bb6d71250302047c435bb5006730650230119d442314f0cd505e3e71d6944deaae57d71a0d340b9fddeb69a8b1518fd87d4c4e1d3073f4b0a82bf91881cf4d3bf8023100ac1977d6102c29c3e6ef849a9a727f20fff2ee084af3495237df956875de704a3bdc5a16460e3d027e903c969fcde01f0302047c435bb5006730650230508452d41022dfa3a044fb6ec670010e0b557e494a5a1a48cf9c5d2360523d0ffa2495e8c22ce466b4d143e280171587023100dd665aecb5296d6b9ad931dcd6b82c9c662febfb15935890c208086aa678456227e843f684ba7f11d5c9029ab1efafdb0302047c435bb5006730650230235ce8815a6f75f5663ee82fd6fcf5b0268eab6b43e574a98b42b392daece7be843b70dbe5016f688dfb69909ada96c4023100be81f527a3828465dfae57c0acce4782560eeac75d60e805e73ee0bd6a8b4ef7a64408e53a73c649801e0c46714f8f1e0302047c435bb500663064023003d20f2f7b8557ce0aef5250616eab335d2a4796250d0c4ee32aea4e3a358c64f2318cb639847190704328e28834ad400230549a8aa72c1edafd2034fc464fc19531fc76799de24c9c5c66da9f018602249900e67e514c53f58e21eb302e5b6b985e0302047c435bb50067306502300ddf6916b210dde371a723545e2b7f956772c00a1724724a0bfdbd871524346b93896afa3248e23eafd75f9ccc06adee02310097409020e55c0ad6ad173a8b7de8f30c8b0f0b243ca5328aca014f80e883526462cac64f6492cf25dfa6702a4f08faab0302047c435bb500683066023100ac1b950e47360005a7940e88f96e8601da4ba92bcb4b5325202f877c1b19732c6eb43a33a0b91053e39ca4d4be88bd3a023100f94191c440ab0889a510361e9c789e7e04ec71bd216c064a050ea05450aabc9578e9d11d11133bc6ca3d4b901c4c96cf0302047c435bb500673065023100bab3ffd4e85a12a009e41cca2ce1c2b20f1c234c0fa149103368f7113a97edd4a19993f54b058086b09526eb67ff051902300e7c6563ae1dce35e4ce2ed6738d3cec3d35260fe6974c3864fbea9e12dccd50eaed7cef8f36b2e8aaa5dbe63f792b800302047c435bb500663064023022f63121353e3330fff4f2beeec861cf36c53a16c32377c9e99680563cac6470fdc1ef6c791c13327b78155d3a733ac3023043540aa112882072ce7e6da5a81486d22f5763915b2f621041fb4875c514bb0156745a99795dcc9e7b57cd3b1bdfb16f0302047c435bb500683066023100b287b289532ac66e0fd4b07aa8a26b5b8ffff6516ebf7d2d6a5f2267b14f5e5f2c4f6d2a83ef44ab610b96e63c73ebd30231009875b8526ba3d39a24097cc996d1c50ac9e28e1d3282d501b46535065a826f0399c16d1fdfea97527fd63bfb83c5911a0302047c435bb500673065023100dc053b1898412053d6511f3b1405f27310185e6b6fa31cb1fadac854a82dea498de52bd74f1c660f01eedc2fb26a9baf023055d234ffc3981634ba2bf7ad2c9371b807e5f81088058cb328afafc843e5b5938c16e55213a2e890d243724e3e180c640302047c435bb50068306602310081c15b3776a5011c26e8c8464ba274adace5df64730220607619bb9a19de63d790620164000aa9f479e274366af0b09402310095f57852dae25802f7e96bbf2e5de5e72aacd6ae71f9a2f5d57b50ead2c42801417404489403a9f4f4a1c2010bb720180302047c435bb500673065023060420d7b54c6d20cfa237028442f889042f218c2cdf819c834970d551e349020b380ed9e97030ef49b4ad9e2869b547f023100d511e799c15d96463fbf032d627857b4dbe15b71d08a3256324ca78f5d8915176a9032eade58438fec22c6e033821a980302047c435bb500673065023100c5595f7afce5b45b9ee2eb9a7bd05227ef293084759aa575f1e93a40d8b7c5345757aaded3c04f10215861e5f75ac37a023024d4816fe631d21280ca2c97d8735506a2c690f4d3b17b47c53382cf9209ffd2eb1777af06be07538ea6cb2116472f2b0302047c435bb50066306402305106f3378c280db682246c861e20dd621515e3effbb39ac4b47a989b89cbc09bc9e9c9038648437888ab9426a5cb6e7e02304150300dde92becdebd7f8d9808e6df367a8e7fac12883489717997bc5f2fbdbf94602d9a1a93ca541f77d64e2644aca0302047c435bb50067306502302697557c4cdcefd3f56e7a95aefc109bc55c495bfc4dbf04f29536cebf4398421c35341d9556a0b83deff5c9bc09ecfa023100d2f14c75b9fc43540b3c89242d649752e6e0cfe5a54bdbf50d9de73fd1f638a409c85cdaed907e56bd5315116749b0890302047c435bb50067306502310096a5fe23e3c5d7fbb2dbaeb9ff8ae4fcc19f88c4924d16533613781ab8b55bc9bb485c3e4e3d2f44f1b717008bb8c68e023040ba9f0bba76cd5bb60ec8034ab87f7bb42931f51433fc25c8405e9f979a4fa99c2beffa0f7d6f0ffc3e7f65cb0687a40302047c435bb500683066023100f07c4503c6353fb72f8dc9524b50f2a2398dcbbb86c27f19ae3124fff78404d4aa72facd01161342c89076108eae65010231009f12a9247315620e2143b31fe7f6aefb5a1f67d6f7f7496999bf32de827ae4940da169ef3737721207f488cf0e06e3010302047c435bb50067306502306c223a8fd98e0ad3987a560644cfabe5675057b86f8e871e2250a14f225ab1462ae1f852d483092ec9248d6c2bbaf02f023100c87b74d5e21f492ceac32e94799c82b6ab002877630c358a3fe8b7af43e409fccbb16b13b6c09e6126f6fac203a503420302047c435bb50067306502307009c0c56f9cc73c3175d712be4915923617312239afb6510110e92f348d7abc63cd98f9c1dafc7d664eb75f7c8add7c023100fade3eb8ae5cc4e60cc6bf094e21ecb8e77312ba4dbe238dcaeee3bb60c0404555d700aedb419cf939f1468968df756c0302047c435bb50067306502304e4c33b2ef2c56a5cf493d12b54b390760888e25476e63f34b361268ebe70dde7caba7dd744f4da3aa2d9ce687da271d023100c5becd48fe398447324116f42869d4878716bc5712e6cc520aa9a8568b302b201966f9b8b303fed727c1f93162d950780302047c435bb50066306402303e2eb0a749cc2a00863f0802fbf04656f855325032b9f6d7b15830fc68c5bba47d9b937f44b7e3da9b7b6c7209fcd5870230445f19fb5ae466677f4089997be6df3db327a9aa285764e5b3dd7367023be8ec60a7d8e33f587bc4977661392e0f13ff0302047c435bb50067306502306e454b53fc09240ec34e4a83a2890d306d3a4aa85ebac6ddfd503b3b9124db82ec2877f9a2fbceecd2c2a854386f5c52023100cfe119756c3279fd8cd76cb6224a4e7afe68244b02e5187b0c2f8bec38c4512a4bdbf2fbcea368cce0dc8b0836f2e6d40302047c435bb50067306502300a368545d4dd0b48340ca103145ef4169930f00b0359b35e0738e7bfc6faa290e748fe9631cee4c2ae7a6a5b1644d4a602310084f14c5ad71f2f6db42d48534fbba3e869ea8487f8576b3e1c1a595235aa97ece893273b5b7b11eff09d92b5611659310302047c435bb500683066023100b914aceaaec0ee3e750a76a3934bc045d11adc0d759f11ecde6c9732c71b1d8e6cdf84d75297b8ab8e6c989f8374a4e8023100ea0ef745ae6f4aa4492c54fdc5db35c8f77941d71b024ac9ba10bbc0b1afef87346955aff1f5d08dcb90cd5b9ddb9ed80302047c435bb50067306502302e5abf0854c09f8e85a4017e7ae5f880c06c1adb583fce65abddadfe95c6a54b8cd7ba42d6f3f90be40718b74a1ae6ab023100dcc37b4c312057c9c1fcec8d007de0dd70a1cb3b1d884311ccf1ebfaa76cb2a19d5519c836b65b4fb5da2153e3b279440302047c435bb500683066023100f550622a088909bcfbbdb73d8b9ba6c51944d57d066553cc8a8f589862a1ca75cd1690ca2ae5cd35275240bbf602f70e023100b471230b5b991ffd40dcd3926b4619dc94618cfd7b32ccd744aca8bb1a9cd653f8ef612cd8a529249d31fdcda0ea7d4c0302047c435bb500683066023100c666d9cffee001ce72a0f1c92d89fd14331f9fd24482d94a53cb2ac59892218cc7ec33a5023290e7f0dadf1afec41e12023100cf1aa65c93489626f887cd19d65cf18153a935e1c9aabc662b040e120565c3041cfeec75077c057fa618ad07fcc970880302047c435bb50067306502305675166385146c74c1c85c438a86c9fc4abff26530a4a8b04c701658bb2a540f051c863d54063d85bb33674dd2005b1b023100c1186f1866ff99ee2eafecbda5a150d3d241046d380061549652c5b8ab58c994fcefd5ed85f102cc75e4536a3c22df3a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023074b6bb864e95ff5ac86c8d83db753fa6677608a9b71fe43af01d3875ca84acfa66fa95b796a088c9123917a0311e6291023100d8d57e544e4dab3ee5ea7fd06bf7b9cb3c5d1a06b45272d61760a29ff2ff02baab74706b97d2805fd0cac568928b80ad0302047c435bb500683066023100de530d5163d25d434e699ea78cc783f53ad3efa56e15b989450d112cf2e5102ca7ec67a937a9aa039ca3e9c5e926b8dc0231009f74810ca2c6e9febd35b1471a49acc6cb837740952b8de323223fa6b67942b6b96aaa7db15da395d6f955027600e5440302047c435bb500673065023100fa77f466e4557089bc62c7d0443c406e8aa51ca2347543be728dc79b6fb5e966176eb202c33e0ce4dd7788ae833b2adc02307a24448658e4e1e2c2d09d8e91640f133f8f696a733d7063e811c4ec687709e58c2e028ab825d05e6068f6af43468d8e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e557ffa1f4818e1f406376666d39a0cc13f1b416b5098c5dd3584a3742e103b46f317d1fbabd4a133fa269c444eadc86023100d5d0e17a7420d2701423244d8069a172e35b77a17b4ddb345c6dee41693609b3befb1a821f62133dae17233f796b62510302047c435bb50066306402307e62422a56f28456859fd241242378f939b40fa576299d470bf30947ff11614a8036ee64552bad90c3c44b3d76372ce502304f80e29450eb5b9b414bdd774c64bc51ba0e3747a0009b319364a1063c9d065ff228bf147e108041871f7fe765ea000a0302047c435bb500673065023100b0a07bb31707fa4f9cebe9ecece5661352213788ec793aaa89ae9a27de198db5af337ca0026f668c99c7eae8d044cc3f0230290b9937d794c6b2fe07b8956ae7c6ac267fd018512c2ffd8f47bf63832af6d1892a5920cadd00686704b9372d1239b70302047c435bb5006730650231008d08e435a10a0175f564528df102b512a000e51effaf614cd36514e48c5bcbb971110c2f73b83d9d8179a403ff44595902301342dfd511f86ebabd3ad845e07979904fd73717fe3ada682e43a0acb857ffa8f183fccc248cb33de63d9f8a6f220b630302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ad5ab70e2d679e3ba192ed5c7c825fc2e2648cec82fbaa1efd60659c0a24df9355e06ad14a478418337eb310c3414f6d0231008945ef8900b2117e1c941b153b7b799e6188a1a9b760c7949c8ed8c2c36ded5f2c407813ce15568cc8718d04818c83460302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023049395b8e428b76a9390fc9c07ef96cdcdbb6d0120a2c390730476b6354326cd1a035eb5c81da4043f5dded7dec4b07a6023100d02015cab73d1b878e6e5e115b6c003e0425ed78873e261935fd0513f587601d5aff3eb69547805889ca5ee016517abf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402304af01f5032675a2b00680030ec5317eb487664cb19ce9e61e8eb57d173779fbff1ee66147c6a91268dc834a6eb049d55023002af4f2c9f7be70d05fa03d2b7d9e1530803195990139c7876311fc213a7a43147c88bc5f0e05e8dfcef7c6750927ad50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100926956db11c5b4cfc600eee29ecb87c511c4440cd7c515e1ad6ef554ccab0a8c7463437d66a668354fc0b9c66399c57202306bf2a8fd515c110bde0eae1aa3cf0b02dd40a571edfce165c38494342798ff64625badbbe7b6fdd29b6a01d3c46e99150302047c435bb500683066023100c63601426769f7b4f3190258b1679231b1f0b4f25fa3eab79a0f2270cce8619bd41b834ad25696b66969e8dcd88d2d7d023100ee75b9754ee8f8d40afc2ee430e3dd0d10af90d2400787d7a9c462581c4a39b5b765fbcf8e60757ca54cfe89bebdac150302047c435bb50067306502307de68b185c48689adbb9151ec5c070a8e380ef90ef85aaee3e5b498777082b489180b8fd28ed254a9f3f68f56866c723023100efa479ce117704a80627ded25ce1eb1179b6c20e3f96f2297dc1f22a5e53392aa50d60aec58f4ae5208bed3ab9f722230302047c435bb50067306502307b6ba82c4eca7c0362ed186e8c80a817426d1084fcddbbef08127eacfad4b0cfadec39672dd4d4b2a71fcd79ec3ac1f7023100ef21562c0e562bef27db0e80cc7ea7a1fbf7cb851a1624fe4537f16eb0189528adbcbe3a0d4b6beaedc00b3b134f5c980302047c435bb500673065023077adc1d3877b69395ed52198274b08c6382d80cd675f278cb2ae56a7694f4dbd989a7b10ca7d5014db74b761e38e7d3d023100e1845f7706ddd31f9ac03c04b0638191e435848dab981babf5946ad70a83fe8bba7cde90e0cd6010f811de76fbf1a5fb0302047c435bb50067306502310086fe8f92ce88b62d40b388870db13a274dee4a989ba7ba3f26e4c3614286d9a8087cb0b6c74314ac5fe5903e8b5ffa3102302ae13cf3984155eeb93e1198055c7f85a03113789491721b3b4faa715a6af680626d54699d55a36ffbdaf2e97f07aa460302047c435bb500683066023100f2b045eef650bd9f198eaf9984a6fe5bed005f2e0a5e93abbb6ff62c214e3df75ec478471eb0feb42ee1abc5993a96f0023100e2808f3c9f8f65fded5f10ba30089e39088e8d5029104034cd1f2a681c3fae95073870918cfe3f7b6f9cf48c8082fb2e0302047c435bb500683066023100a7c0cab7ba32a3932ad7df44564fe3cecbc07df9c9bd075fac21c79f586953853281e78d00932307b70b67d3a45861a20231008a4b3aa8fbc855a02b2f6f228ac2734ef81f9b50f87163fa77482a30a2791a0136893c08946c582ce110b801e386ae550302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c7b77e0ccc553415cf82a9e1e946c5d005820658f6ecc57f05501546fc7079d161ae9638a6ce2fc488df5cd8b9432661023100c041b7955bcc9db0416719d5adb6e28e73849a0c336be9fc7e8311ed10f045419806cf21e4f06bd6702c7cace0a5c3a00302047c435bb500673065023100b24866f41a3556cfc9f4f6a4d80fc8582bd278045b68f4f7491b8c0edb8e94a06329250e27728ea7445f361b09cc167a02300370548376c94f4a88f82ad92912812fb51d3d5a0d90de4b95a986203d4a67de3168f59dcce2cef5101c0a7946ffbd780302047c435bb5006630640230030a4c1d15ecf0392efdc783cf10f2a1bf20891fc5d559912ab33479cee1baa8ccbaf9bbab5fe059a6c5edd443785af8023066a2263af5c283c9c0f75701a01d3661f55cafd6c87460031fabef731f6973c02c2154484d211c6db2dfc6f3b475fd380302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e6c529b267e79ca58eff2706e9b0c0b2a49f3a37caa2f2f432b68f55030f50224b988b2005a2114d6f752d0e60c924cf023006f670520cedeeaa4f5c4b081c68f21cfce34b3ef99b319328087048465165c7574ea096896d234b2f7785ead3dc37c00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305470101bba0415e5361f9914534448017c7047d915e140d8089c3be0b7724d4fc74f0dcbcd415d4b418e97f01fa0bf81023100c3508121b26699a948a42f4e8cb9a17a1b7a14a43da7abdc616eefcef6ee9182d244dbfdaeae8d49614aab36e45b82e20302047c435bb50067306502306b297ef60f4b4580336f4b6502deb08a5868de015674b5e522e78a7be7df9aacf08c9a4b677231bb0ed060358337e551023100f8b97d1e3266eb8a964de4a484d46c43dba43de80f28edf93bf6669ed20394511b7bd8c381993eec0be5c0bead99265a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306c56caae79dc20d6883e84528636e9e2574e1ef1c66749475306c4a35e04caf87465f03430ada8a3851fc5df72730980023023babcb86e3283fb0e13d5b3740ed526c8a4b5093af9804f7bbc60d06cf285f6f4e3d42906cd205ec8eb9c3dea9813420302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009522eca0c2bebb1e072933b6d4ea4f0c3a97bcffcaef79d6974c07e464300a37daa8da52060365120a26bfff482a5faa02310098ef70b56f968ae53ee17fa42e758bcee99822577ad637988219e66098477901699bb94b1b1623e379024f840a1a69bc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230553ef6ace05f21f1e988ae315339db20d0c557d581e0e65a2b5f1e6c49931b42a74e602ba712069815d7f397a006995b02305cd54ccbe709b078355d7af869f213002fc863675f0989bc1e1f6950b600589e66500b90841ea14ac6d9c513a7cabf400302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301615eb082be8dd16b1baa8df659b91fa7304f9653ec26f8c9148947c0c639017342df67ee4958aebdc57b3c72b654fba023100fc4eca3876e6e65ad1648d81ce896de2b8a1b14bd94b9cb634a7405295455fabb309e96635d413954010b8c2bfb6c88c0302047c435bb500683066023100b4118a897411d277e7c2e42be263c9d94ca019e0c5e905eee6d82bc2a9fc9a0c815f31fed89c084a997fc084dd2bbfac02310094fbc12910fd40b2d03af539060cb7f129c8e73a4bf8e82ec4150e2658954ca803c0dc7519186008cea4fd1947c758c70302047c435bb500683066023100ff97ee974f0afcb888c3418db4c52e2c19e832a4535a1a81566dd9df6c63fa5b3408aaa22839c46bec11d5bb92cee26a023100c5c0aee974472a3a801e3d2c3348e521e154e391e083c7a91b7aec3c9bf240608804925b2a4be9ba50f11245730113060302047c435bb500683066023100dd37fc7a27cad1492a97136a8e7276a92fc6e19c8d3228fccddc1554c8dbf17b7e2da95a2fe465254db917f35186b86c02310089adf908fc133113384379c1990b20938ba0c8b42beab8980de649c55efbb83df8d57c6f3e5b90a0dc4db234042b29140302047c435bb50067306502310087f54e459d682e2b5f0d3e6991c034eaa5629b02e41707aeacc7ac4d3f5784f4ad948fc9f5f69fbfee8e089de27ffe750230437d94a9946a45b9be5d1a873e499516b75b3361873b7e35874671f28291b02c5b27bd7f9ce2af6d9707fc32c4554e160302047c435bb500683066023100f9600483bf1bb4fecaffb1297ad0d36126be628f2eea6fa9ff93bd7d268310ca3dc7612d5708bddff8337fb216d585cb023100ec8f143a334f0e9a974e920e437d992fc7fa00384c62e9a6e4fdd16df2cf087f86bb48dc30d2d012cb71248c2fb512480302047c435bb500683066023100a8fc849a3c3950fb765aea190e2fdd27626343b4948618397ec4e8825da77a102aa404b9b0a1a8f46e76b387baeae11b023100a74c91e09aad7c5d21f4ef888dfa5a842905c4377eea8d8acc113540ff2038b6779b8c7e469d494af3644948affe96b60302047c435bb5006730650231009c44da2f5dc82b2678000efafee3c48c320b947e2ab807ef66b25e091efad0a8bcee08c1390a2fe874cfad6a0cbf36d70230778bc71adc62e4ad9ffca60edefbba526137a5bf871413561564b2ae3ddf3901bee4800fb60f03c42d83dcc7317c31a80302047c435bb500673065023100c0ba133a64ac580ac6b52030f595d1f7817aa9a6f02933a2a7acd129a5f7b2f8772b14ec146884a8664b0fd10b8f468d02306744782b1974d9557b656e3d6baa64d03a7aa0943d3b8ecf5d0234c7b164cad730a4e0db03afc4517024fb3f5bf2d61d0302047c435bb50068306602310094d50ec9b58d9c382ec0e5f0d965232246c40dbfb4f3b863c5dbaaa5170936190ca1e3349541aa386dbfb5260667bf25023100b0bda252e2ca43fdc57ca6851a3f4537d6af4d87349a44d878c804a00e517760a5e6006c8a249360fdf4879438d41dbd0302047c435bb50066306402304c831de8a0272c395e3705017acba2881e248cb851d698411bd5b87b0f85a5cd8326803cc4389ab1b6b6b65c419426d902301ca7076724f82194696abc5345ae514742e865f5b282373b1aa258196410256ebc04d39aa9d3504cbdf9c2e0cda48aed0302047c435bb500673065023100dddb1228253ac469b1afb123a6a8c2e6a6b2eafebda13782f8b03fdeb0396832fb5763e6a7b30e734a9194e52a65dc7a02306b86ac88c316efb7351abeaf7e7e9313b37272a8aa1d52daf46c30d5915a7dd8e8c575ea1b9039d02a6c230f54e2731c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300b74eb4a9744b0f906c92f8d6f924d2d74f0167943e4270cc2c5c9f2245deb93f2ae80e52c75bef52abacf0a95edc2ec023019b4209fb870bc251c64fdde8ea5788daaabbdfb0c82065dd49ff50444061f6dcb45417cb57fc193eb5e42e9aed457670302047c435bb500683066023100ba8df7be291b95178255d2f9c261d192932a15bf3dbf0735fc1b166553bdc38c6eaa1384a6f04f2bc4884ef4d76694ea023100be1aa29679d8e8ea24638e9512832e1a81b36201314f7eecc5d9eeb78d6a653e2a8548e11a3edb3837597a50f01db7af0302047c435bb500683066023100bca2711c08e0345240cd95a7d6ceeff7f0e864d105e7f8672e83c605ca5d1f729c5717697f7b6434e31e0c5e193a8d34023100e7a07ce9df8d25dfa96bc4f743a683b7c68069d174c2abab5089c4d18af260198a0557402990be59712002929617969a0302047c435bb500663064023020063c13324a0b0c89effd06c9edf4354f2f2add5d7cc4f89a5ad0cb9b462dd6df7e3912e32eb9fffd8f72dd67cd43b2023048e57eebb0c57d237eb9f4a72c71e23db3fdd7131de4999ad6417aee1db6a483ac1cd5dfdced3f392c8993e64566957f0302047c435bb50066306402304baf1f5d5feae01154a879b5aaf22fe994e08cb83d4070dc7101eefa31382a9781c9cdb4579d4ad3059ea466250b3cf7023030c4bc426f76f28016c8f9614362460223e21aa9dd8ea06da2c5ff028025a15b1088534d5e5d06731f17dfa63c81b7130302047c435bb500673065023023ebb6749d0683f5ebf47f4340630652df690fde7fe0fe143edb2968afda214f9b9bad91149e11292017d37839dbd762023100fec2a308014fb00b6dc57e9273ab94760396e324473305e8475a8efd40179f363a86c14c04518e6c7e866ff01026335c0302047c435bb50066306402305ec948f8dff64426ee3fcc6d9680fe8f9d1ea26461f76d7168729e14e670dcd6f4c3a399f852737b59703972544ef70202302c595567e37cd600f9567f1cbf36ee53a0bbea8a416038390725a363ed8c0ce7c50451b403be2523b7f5a2a6f0593a330302047c435bb500673065023100dc20279b9a34dff9dc469fcb20b786f1b1ecb446f86f41b943972c81bf6e5e0d02a13c4f523d12b839a8754c9c5c199502307837369ac46aa20e31cdd3c5b10ebd3a6c69d2b6229802f3e8fc1db4b58132e142074ad549402a2ba716091db7ea0cac0302047c435bb50067306502304d74764e420c1383deac4f42a90fd82c0f9b540dbcfc6eadecf12f411e2f12db324a3254565b2bcf8d2c48e607363968023100b89002f211c52e03c1f10ed22de65d4d6a6f752183e5b6ff3a752c4db98a28e5d60353987a6506da4cbb59a532aebaf40302047c435bb500683066023100979ac17e84564927fe94e9ac9f1b4586f4d78798fe90229a39ba35df10b6469b03da87800ad4b5529947c6683c7d2861023100f55ce21de810d91586e848562df30e1a7d9e75cca4a7140facc20e2122d34379aa6107297269a88b2335816dcdacc6e90302047c435bb500683066023100896c173f485140db51a30a4921693a3766f4e9bec75fa375b0e1a092ea83d5ff6f3a483b7342b8556afb72fc45a4fffa023100b06c21f28c967248f9b391cb3888fd614adb78725d3c26e1cd8eb20da320e3e6c497cd112e966231270caa19364570e00302047c435bb500673065023100d8b815c57145b93923e5829296f5fc76cb57696aa9cdca5bf72ab79093147efe5bed5ea7cf67d6660f29899279b80ae602303e7cf26c2e9cc4e51504cfe5ca56c2639e57fe620f994ea5207bddb5e4cadaf37a7d88c6bd1bdf513292659fbbf0c6920302047c435bb500673065023100dd53a33578f8716b7894cc593b61d050144d78996e6704afe9cf2fa74198f39d6c25b60e061d622dde36ef54816b2fcf02306f8c72854f36258f0fc070a7f6a6e868ac7a1a47311bdd74d7278ea5731d534bfffbfcc6981cb53d574977a39968db3f0302047c435bb500673065023100f13328e4dc2675400e01dda7724bb34539ccee05bc861adf4b1206f9298cb3848bed8621737d54887aca357a73790327023063b712f870855023781d9d0a88f24562eb894cf6ff7884eaf4a44f9bc4d275d122151528133e88584451efffa3c85f980302047c435bb5006730650231009dcf8b6c2f7618f427c58619ef976aadd81c61f8d395f268bc579da0cd6c2a8fcf582128fb2625b75c9c89f19120089002304d39309e140cecf4e01e0242cba825edc354136ca59b23cbdb7f8148bad99c8e2280428a58207f9cf97458803837f0620302047c435bb500683066023100a7f15d9e7a93fb1d707ffbe07ab43c032cc5c8849ef805839a6a3ee67abf957f4b91668d760030e8e5bbb784f2e09b3c023100eed63ae5afd0acea4771466e28997cadbb85853e34ebd47bbe3b0bce868f6d440a076d6d19fdd114a47280360804f2d00302047c435bb50066306402305f154c5b902bdd984b5dee12bcfd5f61ef1fc41d4099d2ed91d90ff565a62f90a5bb06163e2b5bb834a76b9a5e6efc30023065f62b5df4399e6e1b53f9a052333b452a2eab428c63461ed0d2bd5155c3a57e593185354bf53688289effa9adbc25090302047c435bb50067306502305ea319a49eaa5fbb0131b6d6704e2f67b7f755da94e52c721de01fd345a5559244976b77963e7fc2dae50b2a6e1fdb3a0231009536088aa268aad2b3730b8b63d584c848260a3a3f9d673fc9049293ad56d57d8e9b96703a745000d375953c4e5eadab0302047c435bb500683066023100956df38f1f64b4a0206db8e6c8ba682ec1ece1328cb879bca2a9b4af407d203695446b2152550f366de9b86c051985a0023100e1985eaec70fc8ef9a1a14bd9cc9a0246ff59dc09dc57aad23b4240b6e5d2b407bb1219166aafc2eec4383757ecd9f6f0302047c435bb500673065023100a12a986cf7fc1552d2f13c503e331ac128a54db401d39c5dddb0bc68d326103e6182722f2de11fa9cd8d1ebb94d6a5c802301e8df7654a29507007b630b451b6e1f9768ff0f53d4902d563eccb0c466d68275e700505e1450e5f15d29d15b1fc27be0302047c435bb500683066023100916357bb4da1fc75a342e8a3c04c0d47e264de0659c05295e6b450eccdc5b5151495a3ea51b9799d69cb1592ceaf712a023100e0445c0d83d59b54d47407abeed9e540fc2054b2992abe56a9363b6d568b9ee42e9e7cc7b51ec751ed13afeaee81c4170302047c435bb50066306402301d18647686356b824633e28c1f215aa959aea6326882c8ec119b944516db9ff44144ea47824c4ca607b68ec6a168572e02307903702c871f6ed6f4e4d001104cc2e3de830ad4d08d86e22510409135906d5ea6b3cbbf020757bc6913851e7b21d0120302047c435bb500683066023100cf2c4bf2f9927c54c0bda43a57d94a80e6a34c13dc808991823a40a08fc5678cbda26413706d351dcede3f80a855e83f023100f63f407a12b801d9861b65c16190015164c84bb4d7de47a9d5f4e1d3652e5b9ec87ab5dd74983125dfd7b60eb3d8248c0302047c435bb500673065023100fd634f9266509972e2524ae6573ec66f2310366d65eeed65461d7ffb61a4f6c285f93435315feadc570a02e084944ce9023042a1f78472ae57a079e2036a98b0c25b7c93c991fca64e820053a6fee8bd53b04b684e943cfb491446d348aa5ed500030302047c435bb500673065023100adb999441f908058d9c7fdbf43db43f277bf69416bff1467fbd7e357a63b1df41faf9dea8f93445bb86e947a12b22a6f023068cecd06674ffcb07003e79ed7e9f066ac56aaa92ae1b0d006920bbc9f516dc5a3d197ff5f57115e38e6908027b473b70302047c435bb500673065023100c7082b75893ff0bf71bc43de19a6d91f30481145dad5b1ffdea5b78b344ffe8a1469090265a68c89bba89fb2584a0fe6023043072b3cb5d560b924f39c33c7417fb122360eb0cb2a8b94a463fdadbb0302a4e4901368e5526d2fe7aaec294fa62bea0302047c435bb500683066023100edf6c0073c9dffdae495cafaa3f76a6fd56eaf196b08779ba8dd2f14fc7a71dd723a12b15d2c3faeed85b43282c4a8ce023100c13e205ec9e197cb159e4f221997b02e533c101c8d8355189aa205fc5fc5d648967631e0427610c990502eb4e8e372e30302047c435bb500673065023100ec70ecaa9ee0f177d652cfa23dfb6df1e9b0c164b1f23b63da2257ba944c5e5313b3905c2e8a3d331a64eb0e6d81588d02307dfe98015d7fcb25f000b0820efeac08e59cb8bd1a4ba5b5fbaa4a57a05d2703842dad9d6360892d2db1db1fb1b8279f0302047c435bb500673065023100e0afc0a0cf8977f940e83b1b29e324b89c8dd5640bdf976df33956ce44eccea5285e2c47e1e084189e3300c324f925c3023062de0723ea3f353bf51a4de7df2362da8d857be97b3039d7379b12cc9fc5bc24ebb87c23162baa3cdbc577d1f68693f10302047c435bb500683066023100b5ce85d913562c9162db5a009185e4742ec43599e593234b3fc92a662742faf4c7a3a6ba83f5856f008bc36640eaa003023100cea90a45f3a857f60a36adcd10348f76f8a3520b114bf3f3516f59e6948ffacad8441bafef65ee37e41cb606bb2b3d1d0302047c435bb50066306402307ae59dc867955c048606c798af0c12bda60158c02c659d82d23e0f6c2fedd995cd10a2a1e736bbf2854faf6ecd2e1f2e023077d4218a3559f0351a3406fe020a96357c60084f1052f8c7d886332ff4f396a87e510cc3b119e841a576dc095e87a4c20302047c435bb500683066023100dfadf78e4164bda424bbccd7a3e4be47219c015b61783aa332248a20629dd1ed0aa180c629fb84f215625112198ae528023100eceb3068c3d7aa6417da47475c7d9cf518da61eccdc1bbcbbc61483601f788cc27ee02a19eb2cace4bf342f1329a5dfa0302047c435bb500683066023100b393670876af4bfdd580cfc05c592a7bbd7fc3c5e52bf0b5e99b2dffaf19e860c8e90887ce436ae8b82662d98604b887023100803a82db490e685f944ee6e1e3f707e94a1ae423ba8ef14e7a0699ba6a74c5df5c9dde5d59ee1502c503ee42f51b0a700302047c435bb50067306502301fd531eb4e40683a52aabbf030d7a4314ca815ed94391c854566a61483c6cad9bf82c5d59e88cb88ace933c7145af9e4023100bae6adf3225e50a03cc13626d5a24ac35bbcd782c93d4e22b28ff0ee65f4bddfe9084c6578e1ae687965057f0d5a93f80302047c435bb5006730650230139fe13d985c7e061fecc99bf1db062896f884b39477ea264628c8216d4a1279b0f5556af8c8f860642d2610c6f058bd023100c5ac01e8e6e02644e3475be263ce60b108b531f9a5086e349a24c9d3e02cac35cca2c3e82ccffbdb2d7b349e54a6fea50302047c435bb500663064023067f96aeadadefe8ae0dbd2a5338c13586e61b1e90dc8f4067b3bcd282fdc45b73f04c986db836318a36f47167d1cfbef023075cb365a81487d4a86af93a76e4940219775f95c83ca582b3b333ba544797602944209c30c598e879f8086940c18504a0302047c435bb500673065023061b13beba1c0d89d4ffc64b7bdf267d20dd05fe0d9bea5e3dd62045889b0d567201ca6dc374853a44169fcba6c762ed50231008d050b307432f9ca582dff3ccf7d8c7f18db6ee3a6eeeb80bfa8a994ee9a125caeede43a07de1da813abb044fc79ab620302047c435bb5006730650231009c583a4e600149605cf7f03023ba95585b53095545480173ec44871f1e8ef58f4d19e27c919d41e49dd5fd28717e9b8202300969708b257207b0584e7b76457070d5a34539138f66a18da052ed03be8fe06c380d387528aa271a024508a4cf134beb0302047c435bb500683066023100bdc199c6561f6ab87f9543c5522828fd7635cd2a3ca84a476273cf6699d9ad1230ec7d95ba406c01615349b918531e2a023100dda3086c79d018bd17d23b5894ce3f9b061eb9eab8fd1561b3d09d22da9e762af3eb0421dfc3f028385063c8f7e38c6f0302047c435bb500683066023100ddab87b918929e3642ede67c235451887846dbf7012c4611ac90e8015bf6b3190f3982cf8bfa60fabe6b0915c75c4263023100d48a96c2d4519f90148c580ad1a3eee35fa62786d3de20327cde0cbea3e27ed85b3a7220f0f970f2754f06b42c44cf820302047c435bb5006830660231009e59833c34c61548588c4c171319395e5a6fe58f5de54c41edb85a969d86aedf6227deba3191af43ebc9dabdc6b3d3cb0231008492ee1c5c3a61e4c58c710a5f9458ab086d134f127dde2f7364878a31bf2a9ff4bdb554fe685a162c5c5624b1909a2b0302047c435bb500683066023100d8fdcdfb3683a401821a6bfe83d1f82e834e78a5809d49c4298a8c2102ed9b87a77b5300ee683640a1580369c1366e140231009f761d7080898a3857145ee99e31baa884a292e400f5af2cab416ecfc3fb7732a0c679026f0d3e88457f2dd90c9f95570302047c435bb500673065023100bc1e3a5e7ef360d52af62738f69458ae8ffbf4fe77d8d640f12d77de8ea302c71267550bb10316b746a4813da8858e2e02303ba351e960d53764ecb35dbae32bb81869051ca00a3c78eee1104ee2dbe95d18cec93f71035026f0529df6580b0639db0302047c435bb500673065023100834ee73823c23415c8fd1566560e2935769e5a432c8dcdcb11072fc0b020f5b6cd8aa4e295f2bf9242deda379b45ded10230576fe72843e76d14ace9517c6a0ec73c92ee83c636a81ebe87a1c1452967ac8eaf34956cfdc044e270a2aef055ab0e0d0302047c435bb5006630640230606b08800e9e9638cc1fe42b41fd925f50e0715be92b09c168dec66d167583ae54fc1ae27fb00e39edf67f82b347883b023037938a5e24bc19fe3e95ecaa5f52ea63d3cb702c700a4f547dec27be63a76f20d59b597ba4705652c3b34aaa2b58ba5e0302047c435bb500663064023011c4ada4015584d6890a0042230a569a2f896d86deeb2caba2751f3696469ecc438eb95a326f0fe14605f590a356b2f802306deb4e86516ee70bbed30c0f53bf63dbb049639fe59049b0fb8b48821ec8591e8637f538657ec6da1ff90b906bd0cff60302047c435bb5006730650231008fb694c882cf73c58081542cc6b5b8b3025bfa89488d29a7068c45422766d4defd2ac14ad6ab37a895e6058e6373bfdc0230322b54651f207090f7a73527faa1a481c6ea93deea14c742aaca4b181996ee96d849db4b6440353437441e29da2179080302047c435bb500683066023100a861cde7e2748da6ded6629a842c86326c36819716db459fec2412cf0ad4eb678028e4f6891aa250b9ed03c5b968edc6023100dc1212e784a62c6ade91bd03864a795ba1899ac00df6f59a1cba72402ca5e9a15bbf416b89f3c08fbfb780ebdf2550330302047c435bb5006630640230340cf66cfa7074d4889206cdac0d90de9388c4a727cda832d95a973c1c08640ab3e92b280e759ade389af8b69f0a7601023048d7f7da56e7ab1580d6f7c394ed07004c92eb9bb5d5ff38315a635f4b7ac8d5c96b9267f80fa7b232e629011a2c11e60302047c435bb50066306402307c7e1e467c1c66a6cbc15ee92a96a0ff69ed8889d800ab327b580a11a1e4be85613e2b964ddbdcabaf46a4bc8339ab5202304d90cfd63b53d38b8e5828fc24a7f5441c56f2cd09a3bb5607da12e7d54e4322838a4ea41c8e244468fb77d0d7b8620e0302047c435bb500673065023100b5ffa81e8a55d83e4394876435c49719c32235f453a49e9e83b417079a4d9f3a34552509e341d3a1f1960f8bd3de9bac023023af158b99c27587c9b22f2dfa5ac11ecf904bc971dfce5738a8b5c7d63c37b891d448771fa3ddf4435f2807a8e48b680302047c435bb500683066023100a2f1f437ba7da5733b9ec1d829d1b3d969e56e8a89aaaa5f4708dc8be81b34ece44f22be61903522bf5830c8d587d73a023100b8da1944f16a83acca5db3d0d3aea4cd558604a0a54ecf5fa7dcc051042406256e1c7df30957deea3dd8cda5c61ec94c0302047c435bb50067306502301d613c48d2b8026677bc2c06e9deea4b54b800480ebb7b68b15a4a852880abbc02ecece075ee2b14ad20983d5c1a10c4023100c61c02f3e820a9e3d434bffb844a8012634a81477caebd5d1979c8c59c9d2df11fe72f1ba1c0d44c70f7c08424fe45860302047c435bb5006730650230097bb9d581dfb8024e1e2b30cff7e62805df5b05a889b6377afff65a9e91669ecedb0487af859edd9ffd9f046fcc48e302310099a82a77f34676afb3a16c9d652bc3f01908746c3d7270f3d2dbc7b526e46bca87215b042d0a1e37ac95f0b03ad7fccd0302047c435bb50067306502301bf12c867bd765641fad8340431dcbd1de418e7c4389336dba03945f7c9aef8687793314668be33d4385457566633f5f02310091eb03c215cd2c28359620b72670fce2f6b3d64cdfe03b6692cbb06365ce0b101b74ff3541bbf2325974f9768090b9e20302047c435bb500683066023100bfe6805632e3065b91c51dfecd1f98a53b7794a327c3c51b4bfc9761ccf95be0503394c4fbba1038582c274aa15c6af50231008fdb2cf635f187ddf55db4105182be5f48fa96eb8b6773b157d0a5704d06b20ea8247c036e2598d293ddd75c436cd07c0302047c435bb5006830660231009b2cba35d8be3ebefd59e94d0cc1832af2b6dc826ffa5a733d374a931e82a377dee61f5c30887fa1c41de41e19066893023100f9f486eb6e65b5181dbf96604caaf94e0349edf55e7267e7a6ec094f30ab2745e20f8f6f6b3732d94b6bc971755c9e4f0302047c435bb5006730650231008c6ebeab02637d439fa454491d64f0eeb4221337c1cd9f2e4464257cc95b2774b662c0d69890b7bbf8e7d6fb0fb0626702301018dfd210ea6980c557be9cb493bbb69956b8135189a50c5739b0374b9654fa9f9b0a0213bbd9c03b1b88ee181a2e270302047c435bb500673065023070579013ac2faff9f84f7bfbe5ee903cc1906c27e4fabca32e4478ab770bd5237fbc4b34e8e484c700f3ba090fb49739023100cb6447f5d95f33143460b6d42e89e6703202880c00505c7392ca51edfd27acbb282ddde7c5e85cd558cbd0bdfac53dc80302047c435bb500663064023053a332250d68a997ea60dcbaa4da873af98adcb086d3d67feee5a2209cc8a29da6fbefc3ea4fd52a1c459fd7334b49b7023042cf31de527c1ce8366db022684f0d74539f27ce5fd38dd755dce0f4b9254f3cfe30d2312668e5f859b76e799e9cdf3f0302047c435bb500683066023100fce9389622cec1ac982f21e62bbe3898c01a227050f0822f7168252bb4c0f82cc2e9791b3d74ce6e4405f6074a94825b023100b5ecec546a5c4df0e8b0efd13598dbc9ef986d2ab40dbc25a2b713c0bb38eb02e1e28c8ff6d2b156d649ad9010eae0d90302047c435bb500673065023100cf3f38ef410d4e853eed70f64a7ff7e15d51beadd82245615ba6dd7e16141e4be2bf12ef69e4e67a40a19ab09661286d02306a150cd666c3b4082485cdaef6ec044c31cecd162cbc5e74ab1aa777026df4449b97b4e58eb4d83122df5890f95b3ef90302047c435bb50066306402301e66f6b235813763e0ffdfe20fade794e96cba0c41f8049c115900c15e02391d9e76ab634779a6c0aed0d58e350cb6b9023061573bdfeba840ef6dd7c0d90689853d1b0ba52315c1a0b3ea237eff60fd9385eff6a42fe614927ffdfe61d2b6f765080302047c435bb5006830660231009b4b3b8e848cf87a2f056b688669c8143da2fb00489db1aa72d09d77a757b507d5ffb2b3679a7572ced525dcb45bdc29023100b7e07b7d9d5d832a200931767be6e8f2a017e41cc90e1c54a4f34a994679a5ecae81a97fae7187a0ce586b341d3dff750302047c435bb500683066023100fe19d6701225e9007716139e2cf13738b4824bc7442a206e94ed9a431c41246f25cfbdd9168d7ddf3639b9f1e33f0dba023100dbd929cb445eb9ac565bc9e93b06011f93e7dff548d4aa4931f6e3c961f8e3b33c64c3df3b8d8e4de3bf32add8187eab0302047c435bb50067306502307d4126093f9bff69f283385b2ad86911f24c3d2285779dc12dd3f0ed4253471b60911ab962282d7807871d4bbbee9937023100a23ffa817e31ec68539cc550d4274168766a1c64eed627330851dfbd8da194e514aae2e408b1ccefa8096d01f40c31ec0302047c435bb50067306502304e57f9f90d9048c7cc546a8a04413e9183ef1b95ba028696fa4c1c15e6f9039d8680ba6c085a2c742dcd47f3cbd5b7e70231008122a06007878abb14f99732bb121b21ee4aeb4b26e3b4922c5ada8efe64ef7f9692b02eb60175f32aa157e01b231a8f0302047c435bb500663064023002685a7b6ad2abf5611552d9bb010fa7aa645d4fbf62e262adcdc4aa72b882f923fe93f2084f0b71f77f51379503cdc702307efa3c807349e0fea512b2973bc02f4f6c66a70ecdab1b6b53e20a359961ba09bcc6f47a347063a01ff22369747a45ce0302047c435bb500683066023100985c6986b4312ed9cad06ce2577191e4c9a01a5787652071c4f49991c00984d4b23d2fcd113f4018ab64834ba4d7e986023100c2cd881430cfce3e36f8544863f4a302efd38401529e74fca300fba3c0900aa2a9d76d964d4a0d4a902fc68725baf62d0302047c435bb500673065023011a131a4d5034f53a4827976e3fe5e19d998aef217bdcd3936dc06d43594436a64885a0aafad268f8aea3c47b02dbc1c02310096e4ed0085f045b4e19f979c87fc31422a63f67ad13929ef348b5c9727c6f28d35bde660e6c700faeeeedd5901e6a06f0302047c435bb50067306502307432af07f968a3e8751042dc84fdb687ad38c9ee7ae9af8802ccaa93f0d5930633996212c5178d0f4c55c7d5161278e702310087f08a26fdb47ffcf55249777f0b97b29e4054b41902593dd06c8378cb686a20e33784eef823ba08d3a972937532c6b90302047c435bb50068306602310090b4e649d0018e06717b01c55f3906ec16a80a3b4ae70196c3a8989ac9b4e26d3eaf3586b42443a67eddd33261bd5cba023100ff7e6335d840deb2486dde8918e1d6a1beea6d5646c6f66ab537f6fb724fe4f5a5dc6248a356d1ebd913b00de316794a0302047c435bb50067306502300532f6625c61d9f8b27effb8ff0e501549016b44731d9a2727d677e13490c969e40c3b830b1f7ecd9e654771bd422c98023100953d3304a0f1ab55d578d8713219f22dde1297f8d0d2fd4a5248800fbaaada832e92e46617efa148c3f6e9e37acac9960302047c435bb500663064023011d695029424fcda86359bd37ad208b2220e7a351cff518cdf19da317e6e50c527627553fc2ea9f1119626654b9cf41e02302a3017138bf85393533076fd847c068fb811af1b01e406bb2600ed7806b79e3000445f1db19429b6ea2ba8dc208aec030302047c435bb500683066023100f3ad6d9c42df27b510762c77786527154d85d8bff3b583ed20ef5e5c1bd14cdbaa5046150de2637fc44a4ae35fd8606a023100e5c37066988077e796bc83a5eee89460da27a4c01c83b1e1d99d81f59dc5b29fcabbb4b4a2888358dccac0b2022ec4be0302047c435bb500683066023100f59b7a0fafa955db9fa6d9210e39d247135d5ce0250183276b22948b0d1f10b9e9f2e37ccc4e6cb04a983f9ed5722abf0231009f39eb49a170f925d543d644b5a2eaad23549b47ebb90819f4660d8ac567458b5c2bf725e4c17fc087999e4f155c5a790302047c435bb500673065023100f2475d0bc89a57b3c3d5f06e689ef49cb75de9fa97b8a3ec1db0efdabb4ac79d7b9d94538bf881580f3135f7601681550230542f66553faae7fa0fa253be2f167cef74825e40dc133660baddc1d257a12d0c613151e7f94f90c98ce8ea5326b6a8400302047c435bb5006830660231008c9dab509dee69038acae563bb6c210dec6b2d9b8904f1dcac783a32d6f7e7f8b3efff06b55c8910d04ab4d9ef88a9320231008c27861d6aac90649cf4f36a3046d7d4ac4ef84fe58053be650759b3ebb6dd44abe1d0ceea9d9af3117b5ab8150981c10302047c435bb5006730650230564c474eaf2023ab46fbb26fa0a5ca30095b962f5ec07f09e3f7b93689de8165aacd6f036348687f990d19690aa42c9602310089b521c72669e655ab3ba0f7927c32dc699a0ae66d67eb43840217584fe05a4b8935fb0d2494a24707969b90a72fdde60302047c435bb500663064023048a91a6f27ba5ae91728473829aab6872e82c37d4c9b8970cc08737839576bed8145480f12de61e75f2c42c6d16d8f1002302b4860b5b16faebae2b5001d0f5e53826a326d683590b9a66278ac7b354b8efda937008acfdaadb110cb75165b7666d20302047c435bb5006630640230112da76ee8ae3e7ac88edcbc85843328f714b6a2f41c0e86478183ffd907e591ae7b3d63bf3c7e1b89677735761caf0f02304f0f53827654ce9398940579604488ef20e21f9a2c5007a78b3d5e1aa4199007a0d1e45d7e0306572c17ccbb716d52220302047c435bb500663064023100a7e92da455e62c688f15f4b423b64ef69e55a4eb6b019858ac19f8b3a5d06041900219cd82154bd6a6823273190deffb022f6b5fd2f2a4918083317b0f29b8fd59dcb5a0db775353c77c2d99e91ac26c86103d84f77c801b81c2d6b9c3973b68f60302047c435bb500683066023100a5fc14476513362acf973702da621274bdebcb2ba83eb3ece63fbd62715782e62e6551d32ac2d01e4f69eeded71d414e023100eb241104db09f4de43ca820ab999fc7434896fda9f3e2ee2ecf28af90fda3ffbe94d4ac3f0f01a4ba758a032a77b4ce10302047c435bb500683066023100cb4510bbe66ce3a706688f01d5fb9ec7f70372fb6516f7f7ba81d583fb56ec92334af71dce970b9f8d68091a5fc19beb023100fcb07d940139fbc2eea77d24ddbd3f3955c08c05dcaddb85ea56ce85e1a7c6ece272c0f6d5f0b54b059dc5a231438e700302047c435bb500673065023020d62a373e0713a577b28ad45c33328503ec65ff4662ebeda6189ece02f05f00a63392f34d29d1f0567b58d9332201d8023100a048a851f701927389773ffab7e3edb7af1a4c87c0e6bd0fd65d6c0a8f58432ee89ebb25e8aa183efcf813ff30b471af0302047c435bb500663064023030b3355e9165a8e0ce5e5b9d1f3628c25ad35209982b595eab3c0618c29a5fe176b823dfdd76dd3662563355ab2928e502302859db486e47cc358b4927fe72801d3fce65905a344ba164c1b59487a9b38bddd968f2d2d37f9ef5c029f24f5864ee5f0302047c435bb500683066023100a9f541a42ef1a47c654060750c45da47ee6a7d4de5e2c030e07b72abb8f97e2bb7654608fa4621ecd0162c6c33ea29fc023100dbc3ee40eb8335804397f4e9a20c34d75e86f6d140bc5e07329380e4bbe177c687b0ab485ec656fe3474b2a4a4c8148a0302047c435bb50067306502306cd15b8fe1e9aed60156fe5cdc5f053f8a3f86ca5c338efa9b03ffdbbbce139b237e2c8edb70350394f756584652fb6d023100a4fc62b66813fa2466996a3b10191ddd6bd9ba40008b907cf2115580d53366bbd9e70e036876f10a5537a8d9ade1bd420302047c435bb50067306502301dfd1e5b5d0207d873ff6157ba3f1bc07e4e47b5b8a8a24dfe6cd4fbd528d7a0c0621948a7ec5b354268239cd256bcef023100e52759100bbc13cd1dce435f5f2491c88c27b0b6fa6ad3f75a4dc1501988b610bca8572d204d9597d59253f0eb67d96e0302047c435bb500683066023100dd33ecee2473ce2da70c44f784076749656f463f82c1ead4e0069924912a9d2ff1163dda8499ca4e40453e9a33af1fff023100f9375ba1fefab4f91afd3e3070938b341bbd2df2fa33ff6435a542287246f6b3dee061b0b57127108e2dc09c3af912460302047c435bb50067306502302f21629b6d9b4e33157d757956f78498f14ba9b4ad7eea647ecf67f5521c104fb275db6371234cd7bc105231e9cae2930231008ee66cf9cc943286ee4c16afe719af1218955c8d2440499d165c21d7c70591ef9d8099b289b46c3a61d418bdf88059b60302047c435bb500673065023075223d69291e3db9d324dad7be7325b6025caacc1d676d0784a951a6b5096994fc69d9bb449e84a42e540c37f61eb083023100b44b5cdc5e639513863c6c88dd9f2cdd3c5152e6923ce137c79dc2c3bd13c4fdfee4a5286c1b6066f5fafc2d51ae11ef0302047c435bb50067306502302c27201157905bf1759d13419418de06eef4147094c83fb5092c7d39166a912411e2358749501c07b46c6b2292a4f951023100d643dd019de0dc0c65d282151fb21ed667b3b0a425a9a9eb921133b34a422940fdc30c0764a6f1d4c88b0881f89b147c0302047c435bb500673065023100f14f93eaaf5e8a695aa5f05fc6d31447ed258e45103df9539da9cb7675cedf5304a940033b93af721ad58ed81847733b023044aa0638d8308a26a734c88a1036152c90a98e1f59fd2db9afff9537a21c0f2a3b67fc387754f3579e7a4476488835de0302047c435bb500673065023100d8b2f49e817eb096de0fbd9b68ff3ef9619d22ed720efd63741c00604f92004404a9b13beaa6b4df1cd788ae653104aa02303c6cf4f141a31ffe7583c68c817fb8b906739a2b6f2e9c6758ab490fdd65ac5457962a44669de4176694fff31ae49dbe0302047c435bb50067306502307db9a7d750bfbce1bd602153172753f4b449ad9a435c15e4707ca8e752572b21e481a712241f8207329fae33ccdc9184023100c693c3f078b2c6125fcd059e836d53c87e590de946286911a230e04da1d05176277137600fe640d119f5547e10f60e800302047c435bb5006630640230366d95f3fa5e6a055e210aa61b5cd8040e73002f25b1aceda1a2935962f57311e74c57a1e076d5df249443937c3a1b94023065a94c47c3ff5d840d51a84326fedea73901a6740a9e4ef7926c4f6987ec0a0baf46cf8a7edf1ba40ba7fcd22b9583d80302047c435bb500683066023100e9d4ef6d9b7b3e8520aa9c6a5198e4f5bf25c368b8cc915205b78b46e90f726cdce81fbe991f6d6cbba32f9513e48759023100ea238d0a9a2259a32dac9a95e63cd7f653e0f089bde6c792e8de4431cbf5e66331ca1e8db21010e7d56d8dbe437c95470302047c435bb500673065023100cdc7630d8348e93211acf6142bdc4460a17d287042456aa66823e058a686468a11da7607dbec904ae494dc66cd61e9840230613c675583af7d4c32dfcd7d7145136052215eacb888e01d34d668005183748b1cc1d29b88ba7efeab7fff6314828acf0302047c435bb500663064023044085fee24804941555b8f58e5d550f30be3cf2b964ef5e1c144d1f0179f938f965ca2ceb92ca0192c2056471b0d936b023078217f8adfd3bdb50bf219346e9297b37b6c539ae41c9277f6b5733a25b6aed3eac441d665ab749d782b7583228dd0190302047c435bb50066306402306a240f0c707ae7afecf39443f74efaafdc8d0cd21a1ca60ccf1d8a8af31d9d4dc63070d01e247ea484d629b6e12fe30002306a7fc2c61377434ce657b679cf58029ab18285fc7f73b32c58af06b1fcb4327fd1edc01a9d3776a4967657b76445c55d0302047c435bb500653063022f598d8b80bd7e522f7fb682e53426ef9083f87e7afcfd78106aca9e394ca6b238630c6ed3a01c8b6490f474a9a0cb5402302c42ca83d81b1b8e7b986c57a9aa28ca4576634f2d278d04fdd6cdaf6aa6fa94f8076129f3bfae5e3fde4e1c63da176c0302047c435bb500673065023100910a8e43f66aaa06933ffd8440136c52a97e0ef95da55bb3c54a7f558bdb429ebd057badeb25ab721e138c3791b36e7102302d1121f6f435e6b79efe3bc2e13c6805970aed75617456b878c8f19e4bbfa001603c90fc1c17892b4cc4f61ee13a56a40302047c435bb500673065023100e0c0e898f7952d059d115109963180ca3697fd1024168b09abe25e1149dd30506f468baecbe08c2346bd87f4bc28259d0230282ae3de0c95fb93e3569dddf9f0f46bc007251a28de578ed6978aa1a29c0e1b4cc217c121a7091904d416fdbd5ff68d0302047c435bb50067306502304ff097935163bee5fb513add3089c27dbeab40731cd96101b25ebfcdbaf914276b737f350c4a6856785a26f73c8a0a32023100b9a48e20ba1b772156a3ca903750fed90ac2931d221c78fc285ab3475c61bfc985d1bab17a437a196921bf293917449a0302047c435bb5006830660231008de9f98b273c57453fdae2bf1cdab1e56373a996a1b3e1d0164fc817d5c24be4844ee4302d681375a7ea38d8709139aa02310085fa3e6fffa6e4308fb0b56826177863c53a86c8dc777ae79111d7ddd5d4201717b13af1102a87672d77526476604d220302047c435bb500673065023100fb9cec69dd87a6fe2b85cdcb9aea2ee22a6ca83642b764afb3ad980dce11b18a1b0ac0315c1a841247721ebc67f0dde002303e886010cd3e3cca94f7b6dbac739c98677a6406cd60ea7bcdf1e8a41c7ba279076444b59d095939fd91b76aba64f6570302047c435bb50066306402307c892fd3a14dffc2bc80941afd3ccd4e5327a6d24a6d97c152428c1a88b3441fb6c0dc2d89e5036f7edeafb70e25f19e0230227be0cbd46ea77ba8bbf22584efea6f5f87405f14613402ff88ce9a7f54fbab29156796d9e58e3e6cb52d675bb823b90302047c435bb500683066023100e07a80d4dd10a12e4ba1eeaffef3834a9669f789077df13f10e05e3c6255f6287354013ef09b24cc52b1052962abac57023100992d6f9fda62a519a094d0860038e17ad946e389f63732d1c431cbac300eb1dd2d8c3596d01f6b48c27baab917313ebc0302047c435bb5006830660231009be967f2b84e52a3767ffeb630cca2b21864e93b076bd056da1d42fcf05ba69a6adc9e5cda8f6cf654e6ee15dcbe49e6023100e8e510cef9a4b667acde88f60de1678fe64ea0585974491ffaedcf237293f8c8164d2405ae8cd8b39e1854d0ec5ac9c70302047c435bb500673065023100ed13a83fd563de5e4fec335e4f43b0f422915336642b3feab03b63e40993ddb7e1db490866d08267876321e6d93f197202302d772ce5e9af7a6034112847b563e5fc1fe8f0b644d9ac6dda87a827a4561a9a4c03cdeba322a9197aedf7816c3807f20302047c435bb50066306402301b4d3c1118f635a647a5841ca19c2277d03d8537fc4e5f196d912f298fd719997beb994cdf9f089bf0a8c0dffb0828fa023021c881d46c566d539520eb62f0a4a67756628a611e8479a3ff394fee3abb04c87c71546950e952308ecd2e8819f4eb5e0302047c435bb5006730650231009124007973a8986c82b171783810d360b2e806064c55811702e6328b9addd7208d2d5eb8120cf243e638bb6ae58cfefd02302d1f34cfc34a50f3707cd61e76c8c651b3a0965cca43bf7d0d5659fb16c98c19fb7dbacbb2c57ea3f82dfe568d9ea9760302047c435bb50067306502305c5de6b59417cfcbb90700f229dd5481ca2b8082892f92e2150b7c0a7f27828a607fd9ab0c4f5619348b7a055c80ffd3023100b104e90a291fa18fb44debceded19e5262885648c7528984cde0a560bd75426e59cd27b182ec8fb1ff2c8495b149de1c0302047c435bb500683066023100bb6ad8b69a103bf0435044aa88fcbf51b048dc08b49db508157f34c078dbe232e9a51ed5c01585c5fc2380fa1ad707b702310087ab7f25d8f8fe156619eb1c1adc5a5ccc495bd81665abf04e6633c2aefa4e74eb4cf513f92e8b69b2f5b1ef59900ee70302047c435bb50066306402307b151af510f4d696f6ba0352f93e1096466ba1056bdc3d5cd40514a4f963d3340af5ce3c9a2a4758dc6f0b11302e330b023034697dd5f0253096fe6ccfb5f26d1243f8a63ee64b7f17427cf97f2af268d16c4dd3c516a04901cc4ffc5a3884b732d30302047c435bb500683066023100861ebcc7e25139293a79e9ea7949a64adeb9126ed1caeacc14e1be76bf800924f75b69915c2fea03746b71beee984cf9023100f110aac4409ec010a11317157e3e468537d72d9b967ef752dbf61239edda6f0984d96dddeec46e4915637afea379201c0302047c435bb500683066023100aa176be68494276f89938b37d651e62f899a13095b783fe65ed43fc4b3b957db2f710fcd122e90d613952651b35536e6023100cc07dcfaea9713e72adf4de8f4e9e7834bad4cc2aaf0c151f1e107d81314e481acd83e09b4e2ccb70e7c7460e554d1440302047c435bb50066306402305a3525f5a63cc3a115c23d4302e044b6b378c70bf0a5c8beca95d25c47d83792c22cae342b6afb9bbf21cdf0a3bd9b7c023057d1ce06a9462f3c52a217632e553d121ab2f2d1bdc7e66613e1d7ec7cccd92b29c5cabbf769b7ae37c4c578645e42230302047c435bb500673065023011375648d7106ba883180442ef34df6be4019be85591c15a6030cf3be3e8665a0dc8f583289d9282e1e78b10e73ab62d023100d3d9b55240d33d29b7649b444f17ca25b6f2fa94906218d3df4093043557131b46a22ba0652b3d4e0ca5babb0b5ba06b0302047c435bb5006630640230735828b9504ab415e8f53ef047f65628417211bc1fcf1ff68b35b879839534c43e658c223654a3e9f00289c51b379248023043c068024a00ef0cc04e31c268d920d86ffb69e0ba32cdf6099c49985681bd994d91e933754049fff36cfe1931126c3f0302047c435bb500683066023100d74473cb79a7a6ec1a0ace8f4f4ebc671a6154034c40defccca989582272bcf7b748f192dc1771b25cc4a3b024f1333d023100fd2dd464530b8c1de36f58d132398dffae3b5e1e45d58a050ccb875c24f6a1a6a0be967566e6c10aabc1753a5e7be5030302047c435bb500673065023100b3ddf6d9077cfcc1a0fd70a8374da6d940b9d9fe473c328b4f3524c4d95d66b80da5a8e4cb7cd453fc0d45ef38daf8c902302e421e2d6f00e1cef2ee46acf610ce6510c3f039c2ac1c52384c271be49ba58a755987abe51d4affb2dc14f5ef5863f50302047c435bb50067306502300230b596afb209b00d7a89be2177e6fe1f544f88d6f43528305e5a486115db1d985ebad1d8f9e3fafec8f0baa39049970231008ccc96963dda6ac2957c0a731d2cb6ccc813b3d36d09d61516aed544cd3d126fabc16e772e5ad2e834a590fd9e472d110302047c435bb500683066023100dd379a67b9728036635cfceee6016a5c537d68ff4a3373f8cc18bfb04c5e8377b8684eccb31e3a223eaf583c27786a40023100843befb73c26b119b0a79f02d67969e63f94f14e5c6ad763e6a48dc862719c7787c6d779d53aec5e3a93ddeea7d879280302047c435bb500683066023100cb5b88c5e974b750f9e48f79ce7c2b57d7682fe0793d5c04f6cec1d3655c29799dcb613a3c2d23cf247b7ce5bde602c6023100d601391beab28a596895536915241e7a6e59dd1cc4c3b266317e37492ed3a8c047c3894ec8abe9e3dc63eb1711664e910302047c435bb50066306402301af2bbc31a962086842fabc04affc2264d835b7e2e9ba74fc0e284787314c17e76e9a78874d439f06ce6b307cde96df20230798029aada05d20fc1901dee27f8c64b2b803e3da3a71597062904f1f8e31a881e65582b74250f7ea90bb72f17263c930302047c435bb500683066023100ad37114ec94d7af94941f87e5eb6c5e790167e350dfb357673f6ccf28d9a1bec92c3ae6207801996e7052ee21a2a9721023100d659dc022a62dfc47a757b65ad95646ff654a82e6e7903f4cab2960bd6ca0bb93c7d591c615b15d65edad86f13d6403b0302047c435bb5006630640230169147088e629a4c704ef40c3e74b834d9fa6277bb83cbc5c80deb487624936be34741c9fed94ca369fefee71bb71a1f023022bb677a6a09306126205c0481447b4c1f25c6b0fb3e8fd69dda98b063521ebefe572bd4c463c6ed394acf13dd5c3cd50302047c435bb500673065023045b1bacc9b0f89d4829d22eb7214ce182962f49dad010478f1d572ba7d1180237f7bcb1731bc67b82436d9fa5f1ca886023100ee7c4bdd7f86f02f49c099f5895e5b80a2aa3efc890b58e49d609766b2f2feb87bd63a6a296f79809d5db3a27643acdc0302047c435bb500683066023100eeceb872fa78f919c9371da49ef494fa8a7eb51e444a79fe215fc5db33de267681a71ddc0696a96e66c4586224513426023100a973ef0002b5678d95b8f3942818db30ff420648336193baa4bde550609c4165ebfe211007704d47015aca49e74ab7be0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c3936341728cd21340b17f2a0539bda8daa01c7bfbdb8b782c0b080a5073d736e40909ddcbcbdde296c8220df6b0dfda0231009e6a08174aef081c0a4d560f74bb5027b294379563e9048c04de221f1e21c4f704129b124359c63d78b10e0d6ef132c40302047c435bb500683066023100d2461a3be83fc077c38d9f684bc0ad5c00b4c97c1e004b0149980e3cafadfac5c7891a9993f14246bebbffe6f709c3ed023100c9a31d8b9730ee1a268bd355a862c195467ebb756d428b3633f8ef702f69e7f627a1e1f98402b981bdd6986f6bc291190302047c435bb5006830660231009e55db7202f8b23ca9098a71364d581ed79daa2c0907b8124909766d1860f68b9a3ba91e9014dcb23e45905d46897f38023100be6b05d473760f43a5333b057fbe06add046f5de24624f2dd4a4ad14679db707e55113872faf944815519ed86e3c2f770302047c435bb500673065023022fa401c39d47753a18e385c14747b26ad734a97ba6df02c4faf6314f78cafa0ed28212d53dcde578abd15dede31111c023100c431be5ae75e7240272cf80ee6997a7885f684d498b59112ccb583bc0f19a4f42f61629110d960806ccf059b5c94e05c0302047c435bb50066306402306090e379140861519b86ba913cae48021942e10f288e6119caf2c644c549b476dd0f31fa183d6a485c025f84584cbcf5023025576c268698858643119f54097db2dc297c13ee82b82628f5415b3cbb86fbab06f47169dc455939740b549567f06f350302047c435bb5006730650231009ee6e47e1b797da33f89b24f17e2464a3590800ed03653b10bbd29d5192c9691478196c9070e5b42a5a68f1cc054cb27023019f99e04401c8c5e5a3c337ba4afb5b6b87310cd85ac9c4bfe1f0a9ec7639365849e92c2e7d0f4e4d665153e5200351c0302047c435bb500683066023100c06cd2420402671faac589f56db306946a51692f92970131a4c6bd646f8d15deccc65fa9dbc1939995f79a485e79317f023100f9caa4893060205198e8a8446b5b743595ccb9a3a97f7b7ae3385ece85365b426974cafe81af371fac80a7a41eb9f4e30302047c435bb50066306402303023cbf52892a7d8116994f2d58983f040c95c73609f272e044cfcdb7e3ad474ea48023b65f0f372e9b63c9a6cf279d302303115a9d4a8b6d361f717d4e218198fed8d52b89b83cd9a87956f89d2f34d1efe2988a159b94a4abe5548bd934e8cf5e50302047c435bb50067306502305e9411acca8513ca9a2fb29be4cc174d52a22548554ca97d3b79d908d5f5c72aeb232c76369795e1fad0352108be15c1023100a354e233b9a9bcf8d601b9692eca9411c59573e69c20958a3cde3fef0279641e47264024527b4a6328a8c13de618c9d60302047c435bb500673065023070433a4d8c9cadc14ebb6192a863f85bb3dea701466abc5a926b21254e708e80017b338686d6da3e0802fe36f230df9f023100834106be9d0811112541f781734aa47ec570b7e72e412eadbe41c488054bc87c988ec7323f862bddf59a8516434e5c780302047c435bb50067306502310081e847690b1b843e4620a0850edb6adac8cf0d3ff54d6f51187af7459f3e7bbef1e057036f1ba78a01760a8cced3fe3402304cd0715fcbd452a2eb3eb75b8ad85803a798da9e8ee8a59de3ee8a58f80e2d0b0179221ee89c19205b27ecc44ff1442b0302047c435bb5006730650230569fc8b7fed572c2271818ad004283985218aa420f5cac2c383241e3dc012975f1e15def5c6fe0471d8b463fc4135cd5023100fcf8982b78f9a23b957f074daf87790d8b0af1db0a6577ac74b3196602dcf787aa3fe099787ac2bfbe839aa3eaff78ad0302047c435bb500673065023100c563633d6ebd319521c11594e7322ee05940ecda34e026f2edecd354bc589d866a8092aff278085f25e82c67793c894f02300fb3f67f0fcd7a89f183fe26ba057145f4494d32507d343ebcaa341c258a8c9465f3120fa8e97648af70fc394593642c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310081731b731f69245f2d14484aa4bdc23f4406cbcebebe62bd4c29b4f47fc069fad4b4fdee0ba172660a51182ecc67855b0230312beee1773589cca03bd95c4db05e003ec9fffd2f248e167bf868b46420ac760aa821d97157a8714fd576722a70a1870302047c435bb50066306402307c52902942a3acfe886545e7038484e333a16fd7e4c84cd00c25ea473604a99e741a8448ede5b218ad8d6446c0702c7d023024baa6dd25200e1c1ca38b301107bd50dc1f0fc93c657d48011504cf11222d56f6825ff293ee43ac4be7babf851fff1d0302047c435bb500683066023100eb22cbe4b0c4af318138abedabf7992cc874be8a842db0866836d17bb27df80c37029912eed6710441acbd8966dc99220231009c8f3e1e42ef9faa677fc7996a517e39876fa87d46c3ec9530cf91c04e4e9e3fffe4d72dabe38bdabf26c5cbf97f0a570302047c435bb50068306602310081a869829c0a5fd9b5cb29e6b3f2de5227072657b7c00a65adcab381f27ec6929db921fb06c67b4f29fc7d513b1309fd023100b79c596d3eb6b364cefa481439453778ad516298ebbedff83e68aa1e5d40ee54a5619415d3b8ea256caaee7fc27b5d6c0302047c435bb500683066023100d73cc8d3eafa9a124bc3d9c4e0525957b50667634e9392be7ec0d2defbb75439294f0c4050a74f67f3e4f439a81b09e9023100adb0c62fc0b67e8a97414a9cb200eb25ea0b89c840a802150d3afd1f0f0c3726bd524b12a89efdf25fd0ab74030cd0c10302047c435bb500673065023043c78f036986dcef29ce83c36409c4bfcdb37c8d617f050eb37e356a6bf33d79852b0177fba06df311c4ac07ee4bb648023100e4a4f439d213cb08a156ffb1892948bab3cdc1674c87238d94e14ee962616946be7985636a20f4fcb678f3b205d81e460302047c435bb500663064023049f9b56200c5dc41fc23f628baf9ad4edc02957bd9e449b8715b9adf73eedcdf576574190c5529ede130434b2150392f02302068324271062a45efd6e9d9ed03341e8a9b267f4e6b14adb94f9182695d4645b67b598163bb2d00eb9dde80ba5912d90302047c435bb50067306502310082b6bd5a5b6823e090fa2fa0b100738fab336138b7b0fbb0e4b1ea9068f3b196bdcc547f77beea57160419339e9788c40230782c7cbe158f50aed3af1fdf1c1056067a39131d5e6f1da7f2ae5a2d2f76f5ee3c73ae52fca9a2ecb60fcd37946f85e60302047c435bb500673065023100ac4f6b59d38aeac4789abaf2f2377e7ff1194de32016555a8c60f2e568c21a23bdd15fa03bbb9a34e4744d8464f3a0b0023066f224418fa8fe279828476249abc540f16dffa8206c9e7262d911c0c29fdfa3b396f89a22f66d955ba9e6f04e5833f50302047c435bb500683066023100bfdc03a8fc476b2185c9477a2f30f4439ce8e1850e9e1077318b6923fab4e8590cf45413d9ce46d081fa7b725bb7f5d8023100e3b4a3346047cd49df973e96de7fad7dc93b6092fdf35b3a128078f23499fbe5470eb7fc6bef3ebcabe2756687cb99f30302047c435bb50066306402302e199f74bcbbaddae066ba09c76e11c23c15378becd6628b39affb6012e7fc7c5e50cd9fed8a953cc4dde2a11fb0e71c02302ea86e76fc093b1458f6daf95f5f0b11e5e98b06c009ce8ada98df4d876d8b37001eb76b37754dd9448411b417f5ec1d0302047c435bb500683066023100844c30c81649ebade5650c74b52e0ebba4134071a736248bcb03254ec2386cf586549de079ffb0759b9b5227d47d85e9023100d2aa97ff84b0c5f8c5fc70284249bf7f31ba26db568e0e4ea6ddd046f4886acfc2e264e4dbac0c80ce723c6293a8e1cf0302047c435bb5006830660231008bd2a069e51c820e425bf41cb6e95a8a82de3233eb4fae946f4e530baf97db6da2c42decce5970c9a0e2f7a286a65b4d023100abaa8c0749daba510bd2c60f424e6c4c23c8639c61364e5a0bbf19ff7cd8430a0bff5fa376ed9cb2c1578c9c86a6bfe30302047c435bb500683066023100c0d45a9a55059065fb140af0b2ee86d338ad9de23dabb2b924f7a04c1fd9b1565d4cee46cba47a9905462b442c95915f023100c065bfbef92f54a3fa97e2c22b7116ccbe2f00c54b239ae6aca0c84de10db37b727ce56674da3583fcae860a90ec17100302047c435bb500673065023100fb50d6a9dbdf13b5085e4e8c17c51623dce3bbf099b0e0b4c483a713413783b788aad0dcf6fd80703ce323aa5a85943b02305013cbe6d5fa563d95cf1d3cac840ad0bbc437dc74874fff2f9bab68086da57d43713601ec1acbae724168c5ae70f4be0302047c435bb500673065023031da1124616a8aa3f34c2050426d981d428d3d0512a8c4f65e0d2bd45d14dabf0d467dd158af45611c27b91049656ea40231008bd4b991b707406aee9ce85b578ee29e1e47266356baeb1388a53614fdf715d37e05621b51a0a008230d6bfd5583a2370302047c435bb5006730650231008b9a8d0d13298f6ca8b0e595491c56acbaecf2d845d97fca5e3ca3fe831b56a087f5ba5e86461bfd5ae6ccdc447d7f0c02303d49c3d4e2dabd0214dfdd434ae248997373e3ed74ece67f7abaa8079cb2c028776a760afd6f925f6993b585ca0c7dfc0302047c435bb500673065023100b677888b2986d9f82c71ba23f546cc555a827ac7d4c405c6a41eaa6bb697c5b6518d3bcae40a9d106eed0cb58baf3d630230516d230a4441885a31e19c3eb0e610cc75df6417b553e7bdde3eb9cc9d721add757b2f5f047468b2c46f4c245d2379600302047c435bb500683066023100ca9177005d978cfcd277e67e77a7b0304d49a853a9ffc5d6a3f9f922ac41e0a990c2d1c58a85bfce5f781930428fa1be0231009e9f13a2c3ddb447bb5b59a2cded8119c3e3de484ca994e47e05b7e34c5eb808fc6a279f1b9d768a5848f1e4f4ac6be80302047c435bb500683066023100b31193f4eec6df602aa1afc1b92a23feea33a16e676f128521f4e47f4d857cd9e96fa9090dae249a0ced1ea274f8601a023100e63ac209ca2df6eda1383dc1d07bfb9246706031467a5dacbd55a94db424dba833509345b75a6545a7c4ceb5e9f4872e0302047c435bb50066306402300356e4f531c762598542796fc060d446efcd927bccf1f916ed7f95d80fdcea9cca5042d83a562c825fcf3f0c8be7aeed0230693762927cce02fae298580ef951b0805882c142b2f2c93fa25e0579c1a4faf4bc57f77cdf72003f0d8c40f7ca520f9e0302047c435bb500663064023052d87b1bef526937018b39bb75b89848810b58d77840fa40affea51cccc754cc206f61f6ecc31da3f0ba57169569f01b023040415b21b2583473877d460362f515dd83cce55d15fa1fc817e1f25b230f0f074c4c8e343b950018fb0def6afbe6dfa30302047c435bb500683066023100caf733d7d8abb82fda6f5e979c17066902d3ac9528f966de260fd3e29a6e80e3b3965c880c4aa2c0573238ef639597500231008df2627b6682cf2dc0b4fb3a9484a0210fe8a2932afb7fe45983beb84f6230f372be6757bb0c1665d2744b962abd238c0302047c435bb50067306502304ea818c54a52fcfdc537f30769156e107e5e84b9b38b651912e3735d09a46dd2e6cdc1b3eb1ef348a7f10d75091bc575023100d32b973d6e3c956174ab44fc220035efa45c51c9a0f9b15d8100c32e0c59925c68c18dd92e32b7d1f8a341b9889addbf0302047c435bb50066306402307db08dc68a5122cc199f8af570f20a2c9c0548dc61b2316a2ab6c9130aaee2150bca2b57b4610a447f711813ba300a57023016f869f39fdbdf9f002ae5dcf7799fd6ecc235fbe6f35999e290f2af30a9a2fa64dab31b595d5a2e541a05ec588180010302047c435bb500673065023100ea34b9c9cb1301540cb0b5ab41c7efec52c7d14629f28482d25395d52386b6a2435ac6bf33ce80e3a103c7f3db6ccabb02306f2d3582a0de8817f7c22768317db800eef73a50ef9d7fa936ac109c426ce23d8c95c79f3f4f95a877b260e48dd28ad90302047c435bb500683066023100ae7aad16797b024517de320f56b543d41cdffba3ad0cfcf59fe18e66072903a226ad2a0029997536af01fd8cc9b0b8490231008ea3a4fb216094a375c295eea812cf4355f6d1b44a177d2dadffbe829a229d2a33963c44fd25019a3126337cf42a41e40302047c435bb5006630640230782d54e97ac018b92a848f4fbd13b130c5f0577313692f870602bf610a97a629ce8bde005dc11b111f9b6586f6c9e37602305324318b4a86e156f0e9f7b2684c57aab54e72aef9728f6fdf1cd8718646010892c07feead6f88b01d0997302b8b6ca80302047c435bb500673065023051023d63b53a761513a552f7bfca185116d09d53e5470c32aa1cd36c3f664e5f96e0fb5e3897b53dbe1dadc214495fe6023100c707d129d60ac33de2eebf505428a13c1e2af58a3faf55c31f3ce85b4942a9b2dfada0fe0f2995ed44a4a6147488bc950302047c435bb500673065023100ff19b42345291a6f49b6722683373a1086040fabb223e51517b019c0af86889f237e2b51df0da67b77fda62eb9d31348023000cee885e8afdc85ab76a78eb4149cf62d5c625e639e6d8fcd5fdf844577a0bb1c1c290dd21cf951f876d6c9496a5fd30302047c435bb500683066023100fe9eed0b2c3a68bddac175209fab332f493d8db7a5a288c137777bb41c2283bbcc3257a3a80ceac338296895223130d7023100cdacb05c72bab4951474a893605674c557b1f5a906cfbd2e797c834117431b8ea920b1695edb00bc68779af842ef5dc80302047c435bb500673065023100f78d5a2fde8b33214a22746fef8e46264815c6722658a47a9684cb3b19b58e49240b43995a9d1698620647c11278f61e0230175518a47bf1ceb45829d5e13d579bb9b63d676f9fd13fbd85d901358ff4b7dd3c3c629de531f8f24c832b1719cbb2b90302047c435bb50068306602310084cda4782016a4e3a2a480fb457e9d0386979fed8f93a64ca8033a55edf7b46ca7e737873cb852acd68c8edc5a8902cd0231009edecd0246485f2d004769b3032df8d45cb04a2fcb1c73c8ea876e5136709b50a6269b80a10919c3629172ce338ae6d90302047c435bb500673065023100d1b4fff5004dcbb2f6068022d546a263740117463e49143928c33311a0df3bb9eda54acf4b698e653a5aa963165a676c02304938ba57c745094e059d954b9986c561168dbb1d56b082ac83d65a993c24d68e5daa89c66a56d959b30fbc2b70e3d7200302047c435bb500673065023100fd684b7098404aae532152e5f6b48d24134df5614f944cb91dc38704d476c63b8d84a3c42c390c3506b852a7f632547b023073b75410077281c8b396436dc38109711785a6c3346124eac294b0f6f3edce5f309109b940a062b3751879040ae5169d0302047c435bb500663064023076405bfbba5b27f5383a153250b7c863ca373844053a5a6a4dc621377d390afad44387d83ceb99d17b0e82ec0ae283b402300230e09f6b60b9a71cd95067e62a51fd885dd06b4ef0392184f2430399e4884d47da22908d1c8745007c1f1d3c3c2d8c0302047c435bb500663064023022cfc48803830e77173aee625687e66f5dd782f05b3098920ac4e4d018545afd65779eb26cfd3508b24ec69b3175c4cb023077344f069554796fb504fff8878e16c7185d2e355001f58dc2558d7e437f3e8bbd4ad62b1c0b8a288c6a918450a154730302047c435bb500663064023029db02afa58a614028a6ed18f106a8570e7ca4c79c709370d745997c3f8db51460148fb208a88d3664e6d2da15ef1ff2023022265d1034b9d34e7f92fca15ea7bc8c03579d36447f7fa55004523b579d23cb9ebebf2054626108c270638242e4d7800302047c435bb500673065023055fc48ee0c07daaa73ce40cbb800abee36e72ef33d034bc29d2e37a3c7757b3906ebb35d2075f66393d0ba109f753c7f0231009c958b79ab01e7fdb1ba8c5e1e4d5841c0ec713220aed3e4cb465537789e8520c6a6a7094aa8cd1476cd73581126bc1f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008462cc46d9d6adfd028c065a6c4d98b0c3beb97b96eca21c137e441665f29a195fc8fa927f9cb5d10fd1ba69b7ba1f80023100aed16776acdb688cb437aa7aa2467fc0cae08be4ceffb0738869552aba792f64fe98459c7dfe820a7703c5d9b08747a40302047c435bb50067306502310088c2b6b1b22f1891c6e8b35377a87701f551ee1b8b3584286859c27391396d062e0a0b24b3d36df44fb015855448bc8b0230232b3e51d7daa5d6ea37b9d3b15205c01b7ce218fc019c7bbc969c9f7c816a08510a351b2e3ba7a04aab1586cdfb8f020302047c435bb500683066023100853fb6d6381a91a689b6f08ec21832a214b95c7834528a93358cfb5d8f5b4e642d21f8f77726916fd84302a1411b5e90023100c2eb3f65f217e091e418850a60bcbbcf74162964f8bb04ab831c7f0013fdeff64736d8a41eedb212662cbb6060f162150302047c435bb50067306502307f416302254534893cf2848be7f199f67b7977f5a87556778d63486a944a8c8f8398c0dce2f83c40df9429141babea8b023100bb8d336e75c31af74172249078896ea416b4a3bd46b6d5feb383841344083fdd57ae9ea157f52d2ccb525fdf5153e8490302047c435bb5006730650231008515d4acd48432ddc5ea0e14498567a279845ef19fb8531df69f860b708059ec8616e70a6044e1e3b597f7332a449e8102305fb55f2941e619257652348423592fa6e753306ac186cb15ea19f39a39e189d271ff29039dd847f3fba2bb9ad89129830302047c435bb500673065023038b39e5d33f44dfb7e1d6361898586f35b69efc87f26d2e790cb9f87a859be03be6cfc8e22ab1e6cb53d736301f70272023100c907baa2cc09649ed5a738a8e66e990c5b3551a8be461a687c0d5c4ff775c99dae62ab5f9cfb446d2c8fe59bf5dc40c70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230363772e6a53c63a3cf1fae96fbbaa836f856a10a7eac106cf9f9fd66889d32b86b9efb5db30c30e4035ba048b31dfff6023100a7af252f5df250954a08525051225d01a206a2fed2941a2fb97a4ee6a2ffca4911c81c74407013874d019ff1180a885d0302047c435bb5006730650230352fe405d0b36c58e0bc0e5d5ae4cc1b00e2d4d65de5e86ac72df784ba80a94090c6bf64db6d7858d19714e21446ee1d023100bb52f106251c2bb0fbb5ad8a0e127fd126f39cfc4ab8b99610c30209f7e2165e9406d0d2325bafd6582606d27ca7b0650302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305ad6ef6afd0f674d521247fb93917adbc37d1315e322ca3dd77e5ab09eb74f9b9e9b506f66f83e53821472d8b1b1e4da02303cd2c55beb7a37dd66eeec6adf5cb09ec95eaa6b1a0fd0eae492e90223bb89126ac4ca834fac222fd03981caf52089e10302047c435bb50066306402305e6e751168dbbcf13f8d4cffb989f051f39c05c0fb8c81f43cd2724fc99c9c4006b15f13ca5371294296f7c07492dcf302307a9edf6cc5a5022d653f3f834bd65fa4c16bfb9680363d056cbe0c5a5daea9383a8d1d18c819123e628345b19b31810b0302047c435bb50066306402305f15ab82be729c682f038dcad235bb9b2623d3020273b11651fd59cd416590e7b404c9ea3abcb54b70194534d1047047023000e60c85c6a23d3d1c4f5f1b8557d764458fa44bcc9b8104499d804b6947a914edf0c54e11e9756d9cd32d87fee7d1d80302047c435bb500663064023016f21f25629c0dfcb7a5f700dea3d7354a8efe633cf5f455de4da30c82bde6769c9e706804687512f2f59af3ee93519102300a5dbb21c83ee7e126bd24c666ece31de1c1ad6a82c69d6c53abe07dd26522526118968e053577ddb0ffa8f2a45b9c340302047c435bb5006730650230496638c96d6d26e7f41c1a0d9091fa7b7373a91b697fed9f068cace9d20264a1b6c35984a67222f7b05f191bd75f3325023100ca4dbd2f6b851765bdc15b15a14bf0183c330b1975d541cc5a09c5ae7917478d07f3e0a9cdb07f5b4af32578e97008c40302047c435bb5006630640230507dbbfb14c957909a25abdb7ac4fca5534a8ba10459acce30a456f28cdb53f1763074979c40e7e76199858006bdfc250230390df243561df06d00ce06647d3301e40b5024f3419039061c7c68c3432b6ca1c5755d9223ccf4ff5e3dd18b3e667d3e0302047c435bb5006830660231008047f32099b3623840dde25382f788bda20ddfce5d8cf11b5f9c7d716850163bbed9895005956843f673e77ce79b335e023100e9b33fede80afa071cad066fc827668de0f78b5f1677b2062f43ecae2b7d9147c42c13748578b88c5c847e80d99a7ffa0302047c435bb500673065023100c973491d932d96c689c7df92c24e2d3af6514c98a919e953ce260ad681795a0858685e7b226a14f00677269826e80ef002300557f2b31a214668e652b0e1cb5a04095f9bb94e5f04da048e8cf19adb4554ac1f94df0baa0f64d54baf1f080f477de70302047c435bb500683066023100a5722c1e7c0ed0ac0033ca16a5f4b8b4a4462a62271c23d9ffb6c2ea927c814571f065d2e06c6721de58ac6c155d2e8d023100937418ffab9b890530566ccdb4e520b2d2a1136400ab1780f70f11bd772cf32cfe0c01174c76aa035c392f56b2e8b59a0302047c435bb500673065023100e876968c8ceebc2df980e21fe3e37dcb66615a40bd3148afe9587dc55a56e17f3995ce4173fc38f8ac64ce29b1c4315b02300c15e1d72ea9fb23b72f49dbb70540e6f14363eced9660a05c74fba24c3b00b3caba9803656b9b09efe1daa94f7ba3130302047c435bb500673065023100e3f476550e3bfd321f4c296ba0e4cb07b0cc5eab83013e41bef8922f1694ff585e1b3038242fc78ead68dd78c3cd736202302b6d97a301f6c30063dbc9f4a00a64799be8d0b5e25a1ac1ae8f807b4e865b6296a8ce7688427703e7c369771754d7e70302047c435bb50067306502307bd8a0f0d6d4ae1d88c0be53e9611beeb54a05da7cc0c1b6018713e83bea6301391ca16a1723d0e05add0497f0af857a023100c799baddf3651ae1428ac15515ba4d9cc4e2adfebd55200b94a05af1608ea3526024b57ccc3e274335727cdb89aaa4740302047c435bb500673065023100e5623a012148c21a0d42169ab3183159c0e669f26fca7bc7b3e351a39f43876348a377aa4b8b77c0aa68bdf6a49f2942023066054a5d27230efadd3c5d1eebd9fcbd38389ef7511beed1ebca2915febb7004bc88a6ffcf060d7a8568c7cf8e087d180302047c435bb5006830660231008f8643a6deb7991712b54a1b8c4c3b9e6b834f821a53745aedb3f46a89bea771763a25ab39af326b96eb1002780789160231008054dbb26673c1643fd74dcf21759918ff0fa413f2be6970701932e5f4271f6acf1767104cb1ee5d2f7de7d08a7388820302047c435bb500683066023100f2030301437f40b457208dac1499798c13ef576f2d71814701cf46be193c2790bd1aeccd63c1a19d3fc796f284690ff7023100fc13e88cb5183fdab394802720820b80af848376ac3f42a965072acc1c33caf16cd24f8b9c25389e17dbb2884f09e2980302047c435bb500683066023100b2cc2028c5f25b86db441cf04e1ecefc2f56883ae8e49b868d9e456920cab6e9464a4f7aa82dcb6e0fbc2e73d6ebd654023100c9c31ec3a3508f4cd207d9343ae6426d1d1e3e7ad7318997059efe5c7594fed4d2dad823bba817793b9bfbdd1a51c2dd0302047c435bb5006630640230154beaa6a8c98e4d93af5130914dfca273fba5ecdfeba264593f939f225528bb030f0d0646445592fad6f8b90c8366790230770af45f5bbb05260e4f256077940e94c247f44f7388f4445724285a6ffb762d36b48b7863079efe1a0d74abf0c048010302047c435bb500663064023010fd54a7af69faa306b5c57d8332f25571468a5f7a6898fe3e9ddbaeb255ed0042d28b0aed8a064a83e5e1f4cc1d3207023040a0d3e08c3e392a6a63e0aab6b25cd7065036452efd822e5cb1ffca00b06f407809558e3789e8c4726a21cbe37dce6e0302047c435bb50067306502302f2b2b4dc1f543f4dd93eec9277662cc18367141adccf9de2c51739dfd3f85907a6ee08a5fb8ee45538e05b343f3d52a023100b8d6c4046d74da797625639ac89faf0a75c14d881e489318996f8136e5f4779f62b2c105c2852ef0df2e87bd2a1c6c600302047c435bb500673065023100e35467391544e499fcf9c156361b72609619c99e32f768c764d5b1f8514f381845c91b35e4ea41ae6b3e08773e52b281023012b0a399040f8c90851a7ffd34a5f97cbf32ac705b9d57ef92ff8e3ba7396d86c230753a8fdaf31b885c79857d4900250302047c435bb5006630640230362a03b35762107856b0219494fcae8cc8cd9b3dfd9047ed0b2f8c8e0ae5c5bc5c62aafa6ef63aed57d083b5d529b36902303e58b27a1fb8d22908720845d9c386ceaef790f95473669275ed565e21ad5831c7ed057d5ef272c3eddd26968c370bf00302047c435bb500663064023003123171dd85938636b614ffbaf84bd3aa8b8f88232d608125b6c0372fec4f504cc05040cfa42e824db1c6e4e93d488b02300cab363f6a55114af7c36a61c532500782202febccb93f09fe4a9165de3c9fc53f3b8970a374a61b2efb6169ef5a6ee80302047c435bb500673065023100e4bcb5159169734d349a8ca8a5e9cea628a66f8920b4c2663b1541708243ca159344a5d3fbb157bf6271c124ae7c427b0230268a1137fc3b7f756552f8bf14e6811406a7c260e03f3a9df15715efe484c44927ea0d281c6905dc8572d05e7ccdeebc0302047c435bb500673065023078b12a7486458c60438a64c40f3d4967514e09bde04e2a9f294c41b04000663239cbfe4e48a9e0b14f9b8522aefdb7c9023100be719a3189199383e0f3d66b453c98ebebc12bbcf262ef8473c2437d420130c88852080483f9f34aac8d7957ba494cd90302047c435bb5006730650231008abacdf3e718d155ae5666e4d1c0af11b22cbbf19bdb5de7879db9f8ab8374de289e56b2b080befb1991657a48a9adef02307472dbaa9cf357aeaf5c1659dad62c61e32cff59f460ecff5e9cd34c80afd9e29c78f26fd36244feeb05552603d0c94f0302047c435bb500673065023100ca9f77d01d710f40765e9e5e16a5cb2111c7d88097ac22420f8245b41354e0faedc3b4243096f370941a99fed8d29699023026060272003bdb4de8057700cd1f3bee7e9cc74fd772b5290fc7bdf595997f24ea2666787f0a9662bc9ea6bc0dd105540302047c435bb500673065023001a57eb9ed818edafecaa5bf3d84398ecfedfae2a125a411f37708482f8b354d008a77767f93644f5ae61faf0e53a1c40231009c5aec594fa3942f45c74b9aa444b637a4493b8f8f9dbba1259f0663daec7b1e672c122028de25856de23dadc8832e120302047c435bb50066306402304503cef23b08e61a5660e70fc69466004ccf6d9204045c21a5f2f1669c0f8ba106e9ae6169d3c0c81d6d28f73e60a1290230088c973484d94781d874ac3186b9854216f61b65d8a3d27451a0d2c0c9837ce3cfdf1e89a28aa4297bb53d47b87d62560302047c435bb50067306502304a22dd3954e2beaa6971e0440885d94d03c5b60479a753d0ede295f2ad41ed6fe3477b52720155ff1a34089d932dc9f3023100ed1143bc496d5852d3620eeeaee7a00f59be9babbbb48207a2487411272e94ad059fac5eeef40b10b94474eee5bc933e0302047c435bb50066306402304a4376e6d17ce1f8f41f818b3d25a9f94a93f33ed6751b530bc8933abdaa262776c26ca90160216e5f113ad00850179f02305f65eaa24d0696fc3859a13782cc9ee9c8cf3a7999dd629f7506de6b3e4846a277faf831ddfd497fca91d2c0d68d961f0302047c435bb500663064023015f72ac7f6ae14a175ad689e8c2a918c87df6eaff497a61758860256c154244456117d4c6bb7f693493ae946bf2991d70230754ba4a3d14967b516b55093b52f42816fb88e041b31cd0db8d4410fc9299b92181770ba2593f7f688b3bcb9fe120aa00302047c435bb50067306502307b48cc9cd5a0dcf46f89a01fe72119b8d5ea347f31d56b9626ec9084f7a4ef8a6cf4e340be4cccde3a300cde05293ad60231008683cfb68556f63fce0435ba39602d0a0f36b2a963e4465db9f1566e99498dacfdd1a2587a8525d3afaf215f9e9104b10302047c435bb50066306402307a360c95ec493c7b78440b68ad7b2a625093461f13cbeda60ce31312d2edf28e2ae3ec74f93ca535d99dc0415afc6bdb0230704394d7ece5ac265c71531dd00fa56220ef85a5f51bd20ef9eb66c916efae25e127023fdb2cb9abda04fcc04569ae1e0302047c435bb500673065023100dd47214e78df5a41584b79327f013507b7eb3eec3e50d21830f072fab76c868ec4ec9a411bb51ecba3d55b05ecb26c41023016629a82468d0bb46e6e8b321f43f2b66d84f3bcbdacbe34b41ee7ba4cbdcde09558c8561e27e10064afff3c68a029a40302047c435bb5006730650231009bd293516c99a560314db704afde40001f6e6a6195b93fd82af2798684f5c5ffa6902f1d8f83566a8ce905602d303d6e0230071549dc77613f42da9c3df27fdc8583996816b76c82dda3b96b6357be2627df150fb67965db2ee8c77c100a9578734f0302047c435bb500673065023100d4682791779bf0893d4e0a3dc41161aaf227136e0b7b88b1812be61a34d8004ca8181b8d29be9eaa75b1243a3896473a02302e4693897cb222bf97f81df0b0078a4c0262ff15eb576a473935299f9f6dc8af8120011c267d5ab2b20e244bd84411e30302047c435bb50068306602310096f62aedb560a23904c212f11170a2d0f61ba59121c5e421821f30d5825b5d560a4fd30b3811d1880f430a990264c2c9023100fcbe80525241e2e21d598a9c63aad5be572bf103ccc7d8f3e442cbd4f46c20e2cf85243035f5bb9b3e276e12a7b2e72a0302047c435bb50066306402304097f6cd3e67c04e135ac10efdf80bc00335b58586fa9ad34b43d66679ea07d6ffea9e2405480cceea1166cdcdd6774002300e01b44c8a6d281f8f4ecebac499e3f7dd1063032413493c2e79d40c862527c289fc8a67c3f5ad66b5ae8a085ad4b3ab0302047c435bb5006730650231008ab5dbdd45ee154574b3bbb87e4b093e1d76a9a892d0a9c382b125bbeb939781c63fbe6b1838b645d521ff4fbe51981c023021edccff1278cbf29de19fc10f5217911fc60b5e41adeb372480fc01c0eb8001c5eeba42cff0447411e9da7ee3f311fe0302047c435bb500673065023100e9ed004425cb045c079b41b5233ed98ec702790b8726de1139e45c626f6e0eb000bb5f69fb2d6974bf54e4834dcf167b023019799530999e77dd57c5857db024dabd143df858e9e0420fa61f194fee01f9024f159e782017379b4c811bf5d46171380302047c435bb500683066023100fb5eccafbb94180d02ccbd460aa3cee9700712dd8a598a66d3b5d65cae9652cf12ae2af20679b42830223267f9cd1bf702310088deb69217d765e51d129830b7a115361eb65358ff29c96bd762d9c6f25dab0d7197baec4280d11fea32ec36380db3e80302047c435bb50067306502300a06faa3627de58d63f034621bf9dfaf8c29dc915ee6563e0077ffcea41d621a496236113bc660b9d433c70ef4e2e648023100b1e847ad4772749092c2758e7abd670404cbbac4d3e457ceb8455094f07caa51f97dcf68ebb211237d76f8b7c9c112ec0302047c435bb50066306402305402de6b8f776251e8a8fbea95b69784f685605f1623d623594abccfb5edb918a16a0d657d86c1e440434ae2a074bfd902303a3c3b4eb42aec3da3bc63a480a0a601f7c174b8730a2987b31780edce4acabd11a8cd4ea9a667a74f094042dde5fa0a0302047c435bb5006630640230114fd606c15ef47cdfa665a94f764ba4ed251d7d0450876241deb56819c9f97890cb77c000781721c89ea2996560187b02302719135c4da55cf50554a767e56f9493a30688a28e9c863ffce1ef07fa779922e8a45ff72e092e58315cce7d0b5717380302047c435bb500673065023100ec1e9f268a8a9f1e8f17b9bfb3e33f0592bc6cc77735f4b328b29cc1afdde56bb4c7f9d2c6c0a9ea9ea37311a00b83460230068ef719be2bb4c91d73f322881bb73dae11c9e782f62fa50c7c398b21bc774c1238d78caede0e0d4f0fd832488918850302047c435bb50067306502310086d434d997798a60713b81f4707b59786d88a67a5777d269b11ad39d947d607fb8f736038eee557afcd3f4d559de7bf6023060d358df100ab5fb4c1d3df7b53c2df3eed082fc060b3659862b2680745b6afc0c00f307634f328d84f3bde0a53d0e3b0302047c435bb50066306402304461f521de967529f09ae7f2beac3bca8684fd2118946b822ddd2797b03caf2b660b1f986ff475ffc189221b2ae4b5d202300eaa55e62a32af49c24162bf36c19991c0185197791593f7ee8b4911ac4927d361efca80732e6c8c84d85855c05416050302047c435bb500673065023058bb98b577c1a57a19f38ce03a363d9a2ae36b70f3647f04e3ef3d4d52db6bde7531a927840f061e98c55e1050607e9c023100b5166ef0566a9e104505d84e9dbeee6cfbabef53b6c90b51ad8ca8f75ab3da85680f7b47bc9b65c2089df9cfe250bdee0302047c435bb500673065023018619fdfd0cf9b0e98f339e614b7d39262f1f04205a4a9bf21c919b4b3ecab40c6993e663a7996a850cfd471077fbbad023100c040f4be97400614d964d92dcfbc1b4a9e55fae32a2c9c0b819d70b99ce1cb399cd88f560044fbd01cec41627b87e2fa0302047c435bb500673065023100b6fbb9aa83c76fc6af1d4e6d9581b02354a556fd00f48b28cb92af4567640e17a343eec83b7ca2188985600b5dd5bf0d0230535b990bb7eeace2fded63d01e216f8480dabab1b0b011f8a73865292c8b1ea268b64fe7affed7ee00d596af625335b00302047c435bb500683066023100de120ac0f14c676f957443c910435e6a8a16bbe84635fb9573bd3a7d4c0fed90a2b05f981c14a97bc30133488a17004a0231009abba02a5d9681d9e79a4afed9c6b6d8d7caaba466ac8f81711f5beb4e5b52f13c89a023668d8a3a67d66655a4ffc1330302047c435bb50067306502300a5c7790a162c58259c12a81cc7f088d4d73d9cfa2336707fd3040eff128c5b1a85e71dcae236960a0a3a91932985a79023100f7c427c1bae435c5fa75415423b5b40a12b0a8b874829191c46c69f74f6f5e7d374c80bad04beae2c617d3a398635ebd0302047c435bb50066306402300bdba16999b5dc05e52b5d8f57cef0cdba50af1b0d3ceabcc72c25c05a69941226d2e7f94732051e2caf8043892d932002304ae81ce7e5aefc3f8a1aacc366d56cc9d5a1f46551202757c660394703819e61733a84e468e192c9999353ef2b511bdf0302047c435bb50066306402300b635f838ce11563930e519e730c1c27a6f7e6679fced7adcb07d072be088578ded73dd419e63f3ce6224f8f3f3d936e023021951b64eec79f9fb7fb78fc7a7990ef218fb7aca500c2712bed759d48203797c2e9e12c44507b9bcf0dfae6be3598000302047c435bb500663064023075947642e4d4ef7ed06ce84c34c0578d4d95782f29ce88a3ac8e145eaed18251acc1e992d0921198577ede3c794d1cfb02301c95ed6007ffa00e91b4b546c93bce75403ddecf5891870cfabae769d7a0089c6267d2889897c6b539b7809967b728030302047c435bb500673065023100ac68532951174adeaf4821f35f881c7ac36c33acc43d0a7916c86bd2d93cd3f9c6429a3f8898b2a73d2d8b16e756f47e0230670fa9ec7040e13dd42b9e88641dd04c1a8157bc904045fdab16e93f02a687ce1cbcc24227cf55da7cefafa1f189730c0302047c435bb500663064023035b142ab783d2c6d5f471081d8159ee746f5d552308077e9834f364e18fdf0eb03a2a3c602d996b6c27274f834bd2f0402307819fdb299a91ec8c339b1e3ad805d9908cb15fc0dbc816ffee7b652067a4795d5048ec81d20a141358af6b3634422820302047c435bb50066306402304f9b420cdd71304fc821ab5331fb614b6f1cd1243efe02344fe11fa6ddd7431c4ae4d863a89f8c1c3c13d8371980eb4d02305e2ef9a977398b2f2f91e579cbc42a028d75fe52ca02798a2ef32f36e569290ad754d0bd9aa189b7447ecfa5a89fb9540302047c435bb50066306402304ee99b84b3d80ba5e07779547460ec5400c521265aea54bbc77cc0f305a5f4fa572309ea89f11e7b8a97b25db5b0f449023074dc79c39a2eb8518f29bd2e23b2a63c491f2cb158714379814fa9a7dbec27526052a9814c0c8fcb1ab1f9901f48d67d0302047c435bb500683066023100a3f6198c632e8c8c95989e3b199561ea41fb3730f2195ef1e58c678b9886576a7e5e5ea7e959088dc720989733065c50023100d6d1e224996bd106058f451eb5fec946f30d16a46a03e4309b510d86f86e4f40b162ab035fdb520472419f6a0a792db10302047c435bb500673065023100c536dbdcaf5ae5fc24d4a6816ad6daa67f7d9d4e03ab7ae1696816d6bf317d4769c081d953f8f96bbee43c123ebf1abf02307c1a91baf86744f9c6d106c5fcd7de1b40d86e3587e5d245685f5fd041c77dc0702d34796f63c2c724600800105fcf150302047c435bb50066306402303e4e2b24db5e3aa8d6c666bd076e6ed73b78e5cbfd45f487e8483c48042ef2eca62a90ac4712e06b06d16f7b5f4ed90d023002333363a540927b232d1e4f27746459ac5225c2c5e13aa4ce4f79a1f7d6ef05215f3ece8cd58bea4942b6c47c6423680302047c435bb500663064023027b2263cb95b10356f30aaf745bcca893290ff26d29e08f5c1bd5ee8e7988a1830ec7a9a34cb3fd3b27354af05c407f6023044b9eb14ad2a134a1c0c6ebacf171e966cf42029566b0b85dcadeb0b59b7d0c4a5b9ebf481aa8ef0b35e6957920a9c980302047c435bb5006730650230281dfd4d8d1d4ecb3e4ad383350c8e524261fe5ad1eafffd8640354ba502f38b8a97b2a9d41c477b96e81a5f36522466023100e902d51daacbc58a941e41d994dd3f2edb594fe1fa3b3ec8e2aad6cf737040d820ad42ad0f5bc3a85ebaeeb1055cf1b60302047c435bb50067306502310098c9c8a559bed81d87ed248a5efd9ef055568fa5bb9e8a027c472c48cc0b19d1ac32359a403aa931ca465030f9fc7566023068e56870ec6f0115f1f08091c8800eb14b32135d0761c4c49b0146cdd4083f4c41bb7bf36c030d71b91ca217861dffc80302047c435bb500673065023100c039661f022905ef551fea9b7e76438da138e5c1c402dd86c25935679b62d4f9d0342f73b2ea3929d41e99230bbe988b023007b715b6edd32807ad9e70b3680fcc2fc41248da7d4b708f3f9503b236b5a929b20a7a9f9c68be67edf5edd00d5bb4190302047c435bb500683066023100cf4817831547243c5215a22552e369e938ab3f4047d71c7ea225577cfc402e5fa36f525f8ca9deff01b5ba5b0d91899e023100ca0179c532a8dec4e0cef8d199c77e4e41ffff535036dd9030b47ad120f4acccd7f5732aeab15a202449c546bfcaa4460302047c435bb500683066023100c749dc3f68ad760171ae9e4e12dc8a2bc66224c99aa48c402f944e388d82ac68b912b31c01c0d5e186d06e78c8850bae023100a441aa331ef4b29a1f520cff261ba96e673d8187d68bf8b12466053f02261a6176dfcf484a5231434b6199ed1d5c788c0302047c435bb50067306502302837753f7e85a266f84ab60949e8a5ec494a045cc77079486e4577d984f545b6bef7c12385b48b32c88977f0c20e028c023100ae10d313a7e615647c63d404932f0797273f87f2c6dc52f7d79a245f5314d3f64a318003a3f89600efe73edb212569560302047c435bb500663064023041da6181a27017a3ed25f5b485ddde552916a662f5224912e1415c71beac764d885f105674c9ec82cf8394c6de690b8a02307f3ea96094c67a614f21125913f6bbeb6c1eabc661ac57ddc13c699f41658b51eaa160179b8940437226d03024641aff0302047c435bb500683066023100b5cb20fb190259b4a0296b57253ebeef163d3b0e78d317e954dceb1d43aee3668a28ca70ff4afd5a965c9ae93b754ddd023100de5cf0033819a6cccffd877406d20502798b8e696229f8e8f2fb970901c0e8e6028a61033bdcfc43e89157d5f52a6a410302047c435bb500683066023100b80bc9d1988313786802eab39808ab54fd65fe5e45c38153fd7fb041c5da5ef352c86a9f6707236142f5890433bac5fb02310099ef89f2e95b8ee61053ad3c30d15d510e98625bde88afb73b96cfcff06eb3b72fec9ebd9f8a50b304e154af218f57040302047c435bb500673065023033039e8a763f58e5defaf8220fa7133667ed260d79fbe0239df649f201ae7eb6f0b8ff41d502e03985de40b8873a6eac02310086337c8e526cc825263f4ec5acc048d10f199eee5782c80dabad8eb6f0f44ff0abfdd7536774c06fd91127ef5040fa3e0302047c435bb50067306502300b3cb2a22f76420bd540f461503e70bbca249693e3911c514804cc26b6ef3d4fd225e701afbf6fc06100d3b523a897f9023100c1478a1a705f352d42671e7bc86bdd646f6c2c3ddb606ee6efaaadaf6d52baa8a22b9124157007f478d43a0df3ab870f0302047c435bb500683066023100c25d50e812eacae91b0e57e9eda2c41fc3e601459af9059e1337e94237c593421e1de65d0d2dd5b29663bf913bde181c023100c70a15369e09d56cafa2a4ac9c19e7c51785d29c06c6b30926c5879228f635df582c8004f056c311605d0de00ed7e42b0302047c435bb500673065023066770222cc8aee02fb719d2f4757abf9152f1afc2f0f4a176249c87b07f9c34cc2c8acc8c3b0988d1dd44eae25d1d326023100a3fd72cea3245d5ceceee68c76c1e9cf952584332ead179ce358487bf323074529982ef405bf7ecbd1790e031d9602640302047c435bb500663064023071a8fba089b980a25644e05b42799b5fbca7fe0e4b716d193ff4e53e37a5d4cf4047ad740b19eb355c6d51c794608d41023043e6bb4a56f084167072a3fef7dcd72cf4dc57a6f2ea3c8e8098fc91965ef6f08eeabe7e1f0c8cb36910d68bf57950420302047c435bb50066306402307e2c6e9c7d93e6de89e157359cf64d3baf1cc2c7d5b5cb581c4524d6a49d147051c349fedd4bc93f674f2143f2e79a7b023055e03b775d6fe41144dad23a054f4cc3c3ff52bafa1e1195954f025bf65cd2757a1e564e8cc4af84b963f5442731dc250302047c435bb50068306602310098a130f4b14afbfa955d5765dbc07bdde68fa9b6e1f7fa632da58370dcda9f6989bc99ccc1a123b87f28604fc31556a3023100c009679d86d71f6ed9a2e0e24815d0f8f0862a1dbdf9299bbb148dbb2973ae6a4fd16054d4501e57e61ae6874d39096b0302047c435bb500683066023100b90faf7bf3e6722ec6bd4554087fe31d07ef13aefb7e28e5e44b0c23a6c9be3be43b18817202a724d1c0a509111cf459023100a6af75e52da4df6285a36ebae1e4d03ee40e5e246103784546c136cf9a6beaaf770662c22d3d469f1451c0e61e43f42d0302047c435bb50067306502300ceefafbd2492ffd3b545a37e5e4b35f3cdf940861f40e64334c6ae5aa3779df48afcf44c6c352b4de689a22d04f9b36023100af57da86fa4b99b9d9ebad4775d67d9d2bdba340b9336eb5b0ff994f3eb6215628105916df08ee6142b08e2b29d9f3a80302047c435bb50067306502301d8bf060b0284fcf94a2e4096be3e075a4ca7a05e1395ee77285a6e5b74b903918a48399dcf7ee8cb60b90c254ef7d58023100becff7a845758fe046a089b0019d646c8b6b6b59b698d5158b2f45aa102f5812f9899cc56e408e8db494d07095080dc10302047c435bb500683066023100cb60a0abb2f7fe2fb135fcfac22bd452622aa237ece34c219c1d53ec8c691585392cdd3d28105563607d7967ab911f20023100f122cce2c36c5f246dc3da4682a853e1ad1de968cddf2b186bea58c1b602c1f055f2b3b8b0873976a6730ffd2943f28a0302047c435bb500663064023014ba52f4e02b948afc2cb1179790fd1539898abbcc85b2f9fa7d7ae36e10391c890c9d6f2f6532ebe62cdedd7bdd145c02305d36453887d864744bf5846b9ed2733598bc8ac78d8528925323a0d6dcfa544884e437373a32e45704309b16ad1c99490302047c435bb50067306502305cd6d1c7540dde382acb761f1c825913b194869b8393ce0ccbe8ebdab16d8cdb129c929dfa160d0b5ae235e28bf682c1023100f18acb05273fd31da45b9575699dc734eccfac204920307194d931d250abef652535b07eef0c8c07957282323cd953bf0302047c435bb500673065023100ff21ca3f7a11bae5277283a3033d0794fe1b32feb3e0f0d6783c646bd58da7dbcfc077c2babea354edd3c6cd0edd7dbe02305c574e81e027f5d61b0c5ec1670f0623cbc5d0350d8ab7aba0e338c8a6cc95d3ad46a2e4fc8fc8a973449abbaea3f9c30302047c435bb50067306502300f852485ac32eaae98d1f116521cc8e4201db544b449da7551a2dba444fa6fa62b6ca58574ad982ab4579522a1bf16e3023100e9b52e9fd6d016970937eb160d0218e3a383b904fc5ef8f0ecb673d6ff550ea3b5c1a65577efa038a2f8c4d1b098bfa70302047c435bb50066306402304a7941517e6955222688d742a658c02a1e4b27f25045e105d0d993bd8aca68d254a69a5e881aaeefc6e2ea80f0f3a2a20230214bf446683d76224780e6fd4e558f2e0c6542a14c0ab68f873163821d82959adc8d30eb28618c0d3785bd653b13a2bf0302047c435bb50067306502301163aae10665768fbcac4d6d56bfcd4bc7a514997fb7a5af17b85af9c993b402ed7adf39c93355b08bff45c31c29dfc8023100f8785f2d8b16cb66472b016108301c6bc42f97afded973da05bbe20a7ceeb400e5d05c35f1e76e391a0d998fc647d9380302047c435bb50066306402300a31fb90c568747808cd26cc9641987eb3cc882dca8bcb04132cbd14091ada9515001bf03be7db4ea37232c7b640b9c502302bc2977e0d4ca9d917e07a2c5413f43343460dd9e1bd03181729e0b8d188e9593f5c00ea17183f2dd8fb24a735c323010302047c435bb500673065023100a4ae33e5c311154d89a34e15d808572b862a382275fe99d6e5ea1df31a4b569adc7d05ad79b59381671755c3d39c994802305a091cdc94e8c8cc78808305b21efb0ae613dee415164ef4da4dcd6a28bc3ad2a1a719ef1ca98671e28b0f545a1362750302047c435bb50066306402306c1b311423f30f1071b6384e8119f47d0615588f647f40a671aa7b390c893e0340ddac856e97c0d0dbdf2c5170390b36023076103e7d13d5aba9e093f8ee588d7fb3d05cf8339c6d8132f2a45271d0f66c795d93153fedf5a6592438d9b015e324260302047c435bb500683066023100c18b14110e3607dcb1b9486c7466a0d849bd06d4f3ef95e2fcb788101c37e76bf0bd0c9eb973dff896461f6ee9168cd4023100a822884f779704711fc03e0da5904796a291af711712052e99addd0512736649984478c25ffb7c7fe52473bf5adcf1210302047c435bb500673065023100fbc47af007150944c5c4f9c0fe4f7666f81dcfd8553c5df38ca32ac5e6c0a0e7f05ce3f32c43388dde71defecf9a6fb102305c241d1eebf460c007e774ca3d92035e66988ed421b90ac024e6ab3744043725aa226cabdb4787381109d037e0105ab20302047c435bb5006730650230045079bc1a419e075c4e952eecb469c9fe3a0b7d04fed066f9575a7faea2c6f3f78142316649b1bcb88f6a1c922ed41f023100fcc5c621f1c0f827f8330219f3d12601a4dbc49bd2382c4211864908541fc9b82f086e5f8bd9878f3a7782c02a82d7020302047c435bb50067306502303ed08da16ab6b172726e3803903bb574f560a58f9c6b44d247c97704a0bd591636b01e8a991279ccbbc22cadc84d09a802310098d2663f5adfa581abc47f1dac2155b4b1ca387f6189bfbdec6c5a23a7645bc2752b38d75bdbfc1c2a7a6e3832045e620302047c435bb500663064023005587ef07de743a586ce25636c2aaa1ac1dcbd90820a5a4d0f9d8c36ba5fd4ef7b540d020ac4066a185553efc5e9fce5023050f6cde5f85935e47bf96bd282e73a875455d5f4bfc9b9d00cd286f93c0238549aba4a995b7e689436afc8c2f60948c40302047c435bb50067306502310093017be838638d8da07b00337fa11627c4f93d14efbc6e8a61b9ccb808532087067687b96cf69fc53ad3f6572c7b002102302737eef3f0fe6e9fff2df1493d57baa60cbc202d4631771136106edcec0bb4d1128bafabf12e01462a1cc3e1e8685ea50302047c435bb500673065023003ece1054a444feba8f60841870dafbeb704f9540e086ef6e7461b346bcc8f00438f84c9d0c3ee22b661233cfbee52f6023100b4caa66de8a45818ebd2ffebcaa182473e96aa65bab24ca25a0afca2e77717da727ccfcf8df2e5e8a46f8eb1a3c4acec0302047c435bb500683066023100ad4a4037999bc4fe606287b816589291f02af620c61cecfbbf83091efd5a3c0ac943811ee7c84d1c417c7963a78d2d80023100cba9ab2c16d410c0266df6331b9d6a2377bf8d7c6d0bbc8a0a021a25618e0dcd005edfad9138bde788c0a4b061e756d40302047c435bb500673065023046f8eb730ef5e0b51b178925a19336ae1b01017313434ebcabb523d6eba4f1fc2ab5bf4f596342d843d7fbdde23b8f5a023100ed8aba7562a6a2b459c60701228d99d1795ab0a0a1ab5e42b646485fd01d1f5e75ab8c3907a7a3e4c8a5a41b706485df0302047c435bb50068306602310084261d15667e15f61f31b03967b5cb3c492efdf420c906f92faeff3413b1179b9ea6750751e9def7f6bc1c991906848c023100d16265206be3e737e56b88617c43751daf32d3c7049753543dd80021b68ec57035a26b28509f3d338b96f0e2a0603ae20302047c435bb500683066023100dcd002f22bd41987ee86414a8b4a5ec8f3b67e2622ea6a971425277b18522ad7231abad5d12ac12bab4814bd87260080023100fcd3cb6fbcdf3ce09612561af676dd3cdb0b08a84baf137070787510e095ecfe5133d476fa0041064c563c6aa2f1efc00302047c435bb500673065023018e64678cfe8466884e6239124981951051874bbd057823d987ef6c469cb8a0130b418af66d01337c5c8869e93312c4c023100a683eed56d451c5db3892a8610e40a567b95635b470584fa884ac0b27316d11f46b8f1e3153fa9ce095c5acfc8780c700302047c435bb500673065023100c8e5c638c4bedc1e2c34e952b6bcbf5786cc2b6f2450c7fa5b7c8c0d2e690fea4a46d7cd9022e7a5f8728789b47cbfe3023069e037c4a4fe94d514b120dc644d59dcc65ae1d7c9198d134b99a369d0c5b88d8a96a260c45d44ffbfe3a4ccaa3fde5a0302047c435bb50068306602310085a55b9a6cbe6ba20ed4a97a4ba02f643158adab985e650ea6a5c1843e46697977fd68a8e090d16a8c069541a4cfd29f023100cd29c0c3a3453df23d7ad02497c3f9155462bdfb583a847bc4b418b7ff45a6674a8b926c3bff172dd0e5762563797c440302047c435bb50067306502304c21afd58fe192a0f05dfbc87f391aea96553c8a8948adf052350e4937156d31cec909d398d26589eda302db00ea551a023100bfbc51580168bbe8d17e773f8893da735cb91bd185b3a6cc34aca28c88ae769efbb814dcfcf107089bc15bdaed82acef0302047c435bb500683066023100cb83d4cbba2bddb3bc94d0d8262cd58acb09b387609cae3fa9c6c06d415ed91b584d7da5be12b715a43d1465a677eb560231009b3f192c6a58c4535dc66b5bacc2989ce1522d1a9205bb130b84ec31ce42f73903fee310799ffd1234b61fcbe51eedae0302047c435bb500673065023100bbfa8c1cc5d39ee583af727689e58bcdb0fd1e3f97669fbd1690dae5696c8fbc0fad82473f819bef93cda2d8357e830802302a366d40be5865abc037cee728e32cc32f061b5338af9ca0958650e80361049bb534548c02b5a4300b10343df6d50c0f0302047c435bb500653063022f66fd11587a105daa4d41d173102656c82ab535196c20f54963a7323f4404bcc9bac7b388c5e4ee7d849f077d2f5ddf02307b4ab51e05224e719487dc0f59ebac90ad4b4c7fdddbfab93d51015d7ba69b08f8bcb12a48b599d7999e6a8f2080be5e0302047c435bb50067306502307799b9c1ce93cb34e6c9887155ecb84ea5082766de8e7c10e4679ceb7891d30d4d3295015d2676eb2aa39ec8f82d103a023100bd9b956a5bc751f667b3d646efaa3cc6e0abadef7812ac64e804169a26551a2524a76eb1c4cecaa4fe4f7afdb94ae6bc0302047c435bb50066306402301c3a5c5864bbb07769b78300941f5b3eb74a18862c73ef3a7465c99d616f85d2553e960a5b9c4a2088745603c6d1e9bf023060a8d266f1e6d997ba52953b73218072318e6b1f76d028b27fddc91fbef452d5c453e1b16e65ae3a7feaa3c80f6b1d4f0302047c435bb500673065023100dc1f3c7b0cec43a522026f96465987bfa7498f5e23ff39c1c4b789d91f47bb8de7d36bafab8cb4b468cad622ab33c797023022e9e9f68db3af86651b6a1dc246c484963ed7194de53918c8f4a5b0c2dafc08f1e0913a4de5ccc2ca92e3547983c9770302047c435bb500673065023056e052fad91250559d27ac2c8d6cf14283b04141d884171997323ee2f0934f1c19cfc18d21d4843127db8f5c249529c6023100e20beccd38fff06c2e36aef3077050e4f1a5b2317655a884f62d29d5af2c53d2bf1e1efae23851a21698346687e7091a0302047c435bb500673065023100e83aeb08e7e17adfcf540482552f6790812cd19fa02716bbeef6460ebd58fc2d2d6636bbad95e641dc99a800ea0acce40230392c9dade51c06ade051aa90b73942bbaf2beeb766c0121b7cc55c1756f173936f544414821a2f404df36abcddb7c3970302047c435bb50066306402303528856001a56a981636e4f0670da1b2c615feaf27b25442fbdca53f5d4ad82de7326d2d4ea9ae90a25bad5cb2d7c1ff02303cd091a93ef6e6484ba9866024d130a8198b4e19c5c135d29357db5b6e465d1c368c5d35b7cd1cf2f253f424065de58c0302047c435bb50066306402307f3dbffe9fab29730e79ec9d7e5a5009ead06ec88eb2091654e255d89c5b67f38209176eaea2d60bf200f3a35ccf93de023051e3484036c2fa7deba0387a8180e2419b4c3b4bbdaadf4ac1a9977dfada6e03f8783a053be6a891a0dc0c1f3c875c010302047c435bb50066306402302038c09cc024dfc2389c5b33289557edd18be234f33dbb792b693cbc030648388b3e8bef9da221afb1e2a2aa87bfcf4e02306b1364247f077c9a792c23c6dc474c95285963d349ece00395a49e2b17c301eed905c7b66826ccc85b2d39ff6a1ccfd40302047c435bb50068306602310081644a1dd37671bfc63efb0bd27a89098362e155761cbf6030d44d70233e820be865131844331dd5cc915a0da1332a2e023100c9c94e5b71ce6da717be0d20b563be9d0ef39022617337c8abebd0b46228e5dba9332ac35b5c5685f7ea7857e8cebbf40302047c435bb50066306402306ab85d4a3aa276f185ef34cbd0159b977b510f5fe50df5936f0f58ce26662f591d0b581cac5c1a8eaff76c5763d05016023003f778482c4644926a3b35e1054fc47fd6964b07169862b0862b235d3dec6d99ff486a4bde1f8184dd92e9b1a5ec12650302047c435bb500673065023100a09e0a1beba57938727abda532f15c558e6806e926b8bf243154dec46da69bce67f0b199d003a0faadab83e199869dd602301a0184ab90082877b72bce32e0a525da9b800f03498e78e9a46b7402ec050156a52f970ee57369fe7371c55839b623fa0302047c435bb50067306502300eca6e8054be4c8f7971204ddefae2f46477ddcd97cde60f06a772a3da309131035f58d15e351a560c5e433942df404e023100a2e04e66e587aa7aaa3775ba81219ccb08dfc2c0779219f83385192bf8326933db261f493d3ee01bbc1166bcf3d0a85b0302047c435bb50066306402305bcc2facaba53ee3b2671a4856c7c63468dc686683be199e5f200851af1c7ad6f4f7148802006215bd54b3bca768de6f02304121b44c5150a400bbc7715547b8283eab8f6507988443814883ca151025df6f138d6a9125df0ccb2bc6fd843b47da370302047c435bb50067306502300df1f906f76779c9ca451924ce66f429f6944065cfa8413e52937651c2bb35ec432c64bdb4f6b19752c44a23f24d3259023100b4dcc312d606ec79e16984f39900b214021ee92e1f5ae12d0e21b8b3d7d68cc4f2aa8034f4855bb778ff5eee856d32510302047c435bb500673065023100d12b967a425d0863243fe5f6ad414c422bd4a2d0fec8bf431b84f3a66471a629933f084cffa38d90ac052765b7c88d260230081da000c8c4b001adf9deeacfe59745365f1269bed339ff028154bff332bcbddd812403a9d7d5ddc00eb94e419224ea0302047c435bb500683066023100857b96bd7d10b0cf85022763b417f99cd0287eda78e4a7229426e21b60eff3b86e6b0cae2815cc632853e113dacf1fba023100d5c5c2e131afb235f58292d7cdd67252080a1f7c18db6d3cd81f1fb87566b407716cdb25cc2c04114fbc921175fe75030302047c435bb500663064023009c9dd7340c3512e9692734e64555f80881752e676ca918fb6e7ed093abbc7dc7beb5ed8782d10b338edc108afb4720b02300a5d5cd787b31416b082dec676b621d426194a1e0649c58060b657500df059dcc6a2fd0bb2cf5c5666c4ed272b7982790302047c435bb500673065023056651bef73a4a0da4f9f4e576e9539ee3cee1c46639ce16e51fac09c473a42b2f29f024222ea82114de965be9b67a019023100b7de4cd989277e193d800e788603acc10a973e8ea2a79bb6f848d92531615b40800e3d30fbf1928a8e6c6d4edbd078810302047c435bb500683066023100a087833c478d91003016ee12f16fba8355d39d9240442e42e7160f21f795b920cf09244829683742f3916a2661f117ff0231009e4da40e1aa457d8a7b447554b74d22ec891ad836a9b87715e58e5353d4ca08df5ded76314f61d904cda05e63ab8bec80302047c435bb500683066023100f4ab471376b739a9acf0c3bdf726ee3852c6a4f9e6ca2429032ea370956e7928c80882a2d4d2201fa1fe34a2c956e8e6023100e57db803c49953cac72ccea6376cc64ec7cc34754bb5b32bba1347e1e029695b032f27d575b77aba3a87854f5539c1dc0302047c435bb500683066023100c8424aa89ddac91cf6f8724046156fd0e626a8fd6fc48bbe457b929379f25e5e4d467d7caea18d043b76304eb67b4f100231008090cc1c810284707c57d285add1d6d40488706b43dc310709a13197761da1ca657021dca5521326af995ee14fc18f040302047c435bb500673065023100bd3528a3bd57663bffece45841060f21cd54327ce8b5eb0b0b42ab2bfb9783659ef324f3cf1090b4d94a9dda4591817902302a2a83e85064d905e76eccdebbdec1cc46cf509dd91488bc07f8a91ac8de99ffe678061074d3652a6c69f885e79e8e970302047c435bb500673065023100e554cde9c16e308b3dbed3de6dc58faa769443cabe0468f7d087e863cc64b02a8b03919f9e2ea25a8adc4f7a5713f1c2023005a9a5d2b57dd2efb3486f7c0ec4ee86e59ce1979e1f07853a450682bce08b61d3c40158b9834008b29603d593269c1c0302047c435bb50067306502307cba43720cece415d3551618f8cbdb71169f15ea96aeb6f152f7244580a7e51838be5fca2620a559b873b62a4cdb9002023100b60cb7e6c1b9b0a48943299d1f23045d172a54708e1a5075e1a5799bdae52ff4e599302d8e4b24efac7385822bb462f10302047c435bb500673065023100a155f47abce411dcd4bb6ed18d81a9081191fa84acee967c9ea933df19361ffcf4ed6ad107a3032a3de40a32ddf3847d023079413b01eae1d5b8b9e851da4749dcc53a547d1eb25a80f2f5d70f405e5f503904398eeb9990b83bc1f4ec475db1d2880302047c435bb5006630640230330c3e306f946c0c384022a03b03faec89d24567020dd7c5ddb2f51c62d1f74238079a117c157a237161c5f17ccca99a023000ec85de7c9db5c1a86fff55be1a6501e97e588ce448d6c34e45acc77d8cbbbd98a768946f8afdee2a94a449eda46ca20302047c435bb50066306402304776baea739adda892f36aa9a45e1c097389d0c59c47574ab1a15cd2422327329ee9b11d6dac6bed5973f733eba42fb3023016642e43e3527c1f47abe352ae7f70a59d959255ae5e305716495965dc88ac89a792c969617a82cecd81bfcde323776f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305016afbff2d4f576839dd27ea81f6860f4fec0be6ad6d49c9774b47ceab295753c87833c70403fe59fbd5407f33f15d3023100cb23f316db7ee7094fd2a2a1aa01abb8606f58fb3c2e17ea291e0eff5abacfe324ed4d6c315e911901349808218597150302047c435bb500673065023047a82397da9a262f73d2e4bc8c04636e1091e4686d2e343fa77b76a91065da546f894319eec1b13a65b70a37af9a0d53023100902fe58e6c6eec610d1e173b0c1710c3464720885ebcc57b166387144f0285d4dbe3c82b7b9464df12ad505d4410194d0302047c435bb5006730650231008860de5daf2798034e6bca482fc88b0fc84dfb0bcfd877cf46341acc79be8810abb51d5965860b1b3147855a275014eb02306030ecb1a64b64766a2008485f5074c75cd34ee27172240733a97adb84dc12a6e6fbbd2e330b5f140550a743f694b9940302047c435bb500673065023041d64f9faa18873b1f11ab46d775bd7f28e161f3d5de46ad59e360d56dc2b42ddc4258f4f462ce2490b196f1c05a240f0231008a97002ff0c87dcac947853d76eecd74d9dfe308d08ced484a07a102cbcfc5e4e08ccff7f25bf88b406a180467401b890302047c435bb500673065023005380fb153c1e10fc141bcd9a857bc3d2b1710dc88de57d912009472e54df1278f09dbefa65e71e7bcd2d35efed782e7023100d40f3078b1a16ec3c489375cfaa2a18c61efa6fbf7610d67bf3e13395ad89132dd163180332afa7a9306e407f5a63e270302047c435bb500673065023100c1bf1284067b995a4c6394b254cb6c8a195af049aa22a4c6c061033975cc5e490c776f5fa6d2acc5efb35536cfb677bf0230282411369ff67d6f4e7ee228e768fe422eba6a8cae75f485a2cf17eb83162f25fab15477e2eac0a93b634ad6400e5c030302047c435bb5006630640230016f1657ecb52391aee65e84a462c1a9724a9b310d2fcacf6668dae53bec23d9092240598edb0f393fba6edc0fc47caf0230370eb05071af776af6909d612e78e0102cbc95197bddbbefef54fa5c3f749d022e4168f4af9964f0714adee6e6c435770302047c435bb500683066023100f92f3217eb612908238dd7eaaf9e11d4620420165b9436929663c428440ed6240b1168c26977d71e7bbf91e02ebbecb0023100ef778d683808a55b3309e820e921ecc51cf560bcb766f0c65057c569e09327b842f69b036cde5627f359ab69533cfe440302047c435bb500663064023009479d9d7123a42e885ff615595cd84fe12ddbbfd35539d1cea8db77f3775c3218411aad0df51c18b0564557b4818b67023016cb2b0ff217979bba5dec59ff31e88f9ad73780a4c0392fb391bc61ef40bbf1bfac958000915313e81ff7f68f41d3e30302047c435bb500673065023100a129ba5dcaad8035d0e5d2f17fa8c7341ee89a90d7bfd3816b709a470f2c7f55618c0dcf3cbf1d4a385c51fa3ca0553f023077e51a31c9b2ca2ad4a3ef765ee451bf23d4f27b13bb4c5fd38bb78b2ef0ee9deff270f860fb4868ac85d9dfc140f4830302047c435bb50066306402303dbf8cae9d83a9bed688d16091d60a431d913de65cc19a495399d1248c8ceb002adbd567fdaea1eb6db6fb0f622c8afd02300c5a4500f5caaafc68eb99543c7f350c34d02987b8ab3cbbdc15b967dcc170a15df318d96fb59d392d578094185846f30302047c435bb500673065023100bd5603191d23af2402e1f1700e097d9c3a6df694f6e94888dd44e590deae57e9d3d049b2338821ab81607b80cfd0e987023035c9ce37ae2bfe997fda043a2b7642f4e93fbb322134a1970d75169da2a6e2bcdb8bc20193a620985416a7e6a749d6a10302047c435bb500683066023100e9931abc71cae56bfeeef327ae4d2080f563cd358ff11ee4a68d6e46a323dce984749031427b052356ed3085b86dc98e023100efb8183e297acfcff97b1131251bfcfbfce1711f594f45364ea464ffe664e12454af32997b1d068370f1f58282961e840302047c435bb500683066023100baedb0606951710dd79411650868024b144398050429c3a85b2ba05d71a1144c55c88df98ef555dc056d4e107a5f225f023100adbd590e65e0f7fff93187b66099b440d9fe840164ba81f77920123335683a9891618fcdfb6d492e03db540877e850400302047c435bb500673065023100d6e79c6f8525aa82619db87122277e86d5afefb79c2f89b5a3ab751a8972d9801002555f3273e4ff1a9b012aff2898670230741cfe63e4eb8c168e16f20b18cc0ed584a5e5a30574f917733870ef0ff816e1918c9e8e8aabb0059f95b93bbfe42fc30302047c435bb50066306402302486279ba2f8cb88f6d62106b745bd89df6aea751af9f3fdf03bdbfb9de2d0b53e00799d346850a10ea15d7c24c70a26023030cefc56627b823552c820343884ba41719120b94f05e5e630ee0318d1b6aaad5fcba6f3339aeeee09436623c473ad360302047c435bb50067306502300c12420e8dad37ba6dffd9bbec4874c01b9835d7309ef6df8b68df02c0b0ea95d0d8b3ad45b33f2ebce3458494bf53d6023100d902356801e9cbd91543c1e99040f06ee9375142e926f4c881d857d519d429ec6c94d672705586e866061a127ed818e10302047c435bb500673065023100e51e9a5021586e5570c1c0d925560da29b722756e1de92d1e1585ea6cc3e4c2684fbc471be5378258b5d67c2e787ac33023028bbbbea545cc55aa25af72499b9edd3d5eeca649e2c2f663118aec294c7a7c119b06428ccb6a9d305e9adb0b84901690302047c435bb500683066023100b5b3e0668b3740619a0cea60d655248666d09e58905bc24730f3d9884201028e0c2161568694f022bfb98f12feae231402310092c44568ec7c568cc2465f7154eee425d362704009eab1b6d26b973efa5250f3107a5d53389c0393559905f7803dc2930302047c435bb500673065023071d3aa208fbdd47681879be8fc64a68d50013dcdafe86ed966209e439bc8c37e88bf3ac3aaed4d88bcb5c4958e249dc9023100b8de6d2c8d316ee92d87cf31137dd929bf6eaffab59e327a686c511e023ccbbe106011834964111e0b19125d29143bf00302047c435bb500683066023100a8e1ef1ede4c8ae8484a60befbde6dceedc2332a811a857a03cabd8f8e889997bd5b8659ea5a368aa135e684582ab68e023100910282937e8105dac88265ef166d67c40c8ee3961ee5991778fc8c0d5c47a01479c326a7edd0eb9c7df4dca509d74a020302047c435bb500683066023100913b5551a62367017d8e0e3533770dcb81a5a3ea5c160b3ffca5515384a10d44a451577bb7a938413eebc03b0c726dcf023100d44fe081d71a3490a46ac7f28d3b199ad34cca500333ea669acfeef827c753682426d1b79887b8da42a6ad6ce5f826b40302047c435bb5006830660231008552a28c8f0df9e695e17fea405fdb51105fb225b66aa7a225a4295c3ce5f02a613f74492b569e2c84f8f2310c55bdae023100c72a4a7601de518594cf8577a487c6dac14b56daf5bf2285d722a48cc69fe15e6790402962b1374d46939d81e0dde0370302047c435bb500683066023100a65920f5e5c6c5a8b41316868e7384587a9561d516587ad88f28688485c964dda191b4d09620245091cbe97ed83dbc0e023100f4aeea299984e7036c384b47b34c14f316f397469afbedc189f9b4015f1dfce71550c0b8df36a26ea5a017a4f34557af0302047c435bb500663064023041d9b8871e9704b44a76c45196a996da8d0a355802c8b5eed2aae616080b4d31b262fdc9f5b887c6f8d1f5a4f8dc98ba02302ca05420ea9c5646c5deaee29b88c885a9f3b447c4173dffa587efdf3b4e7292681b7f378ac07306037b71e9dba5b04b0302047c435bb500683066023100d397637338ab3dbe294679d7b84372cbe928e5bc8011f6a9f1bbc237faf028da633e44fc3c0b403408470804eeeffd28023100a8f82d42d800ab38058f4882fec19faa2c603325c996f80373277e51507de9e80137fff3f46b1adc7eb57c0fcb09cd3e0302047c435bb5006630640230610464bd7579e838e5c2b793c23e04eea65be486949cc48a58a688b088ae8636e5610b239181b7b813003e0953c2ab370230533696ede0e5be342fe4a3341dd5d8f70ed7d491cc130caae549074144b71b08aa776993d0eca8d1d7cb60eca8553bb10302047c435bb50067306502303548cea6dc266a18a91666c5a9d7555ab8da163576e1b9fd68d3a84a2e7ccc51fc1b9b84ea0c9807b3a611407091435002310090654794066f85f9ed5213cfd9b1be18e842c8d160c85a003f952049081e21cb8a70edd19f65eb1f92046767c6df75170302047c435bb500673065023100fb42197091fd8bae9cdcc09866994598b6178b510d92e585c4a4769a55ffbb3b78f113b0d936e379730908ea4be3660a023029a7c8067b97f55031bf04121b86ae89613f410e913b340a560092c779d624ffdff4d242c2e2121d994c2084e16f424e0302047c435bb50068306602310088c1e7c5f7882e1c5924ca11940b7c2f96f2b5070a6a6676da0522a6386bb3fefa20c2d82ef771f252d48fe70d8ceb38023100977d1867562b788be10cc569b5c187eb1b518bd63f6a7b1ecb784801863b5c5e1cd4783c21cf18bc24d5c865363e4dbb0302047c435bb50066306402302a114362b7fdc95b1b31e229dfcc8296898fb29c382dd0052a9ad1ee35895c9a412a10b2c5e567d52878cd50512307bd02302911426393bea04356ee4997228c567b3660fed463b8ae9accd2af527e5cafdf9a7c09a47d9d7e491b35e5e8f0b1acf40302047c435bb500683066023100c5d8757bd8bcb2a92d5f05b4064fd921a1826ed3cf9a625a856cd6a67cd24de35183fe61b9c06a8119e29d746d073710023100cd9f098168da7c531d61486a5d59aa776f9fb707ceb91b5cc88a642a8179de1b3946dcb093cf62e3e8c20098ef4a10e10302047c435bb500673065023100a3f5dbf3178ca10576e0d232d6901b7270ad0ae749192d05ee9e6c6397c218aa782a51bce03fbcf46c3e773f24c0bb2f02304f3ad9fd6a047b27c98dc1226902b98ae24e8fa89dcc39ff524658cf57e25c1b66d2369081f4b87de82b727fed4aa3050302047c435bb500683066023100a2c7b7654e138bbcf68ffcd74a0ca25be1d2fcb6081c9c5b9461eb1962c3614cbd8935696b6c7c55aecce4e03ead3c8d023100ecded6c119c1b3d386c1b1cfb980bac3a441357d12d914bcb5c525d3cdf47a2599fd885fc7345090e7c14701ad333a050302047c435bb5006730650230665b64177ba6c7e84a49292a0357114e94d1486135841d6e7ede1102f29458cd699c6fc0e76e4091b6e5e4396e9d310e02310095b8a1a389342634c30daf5b5d7d074b188f2555e5963cebf184cbb1c6c0306c37da30134e45ef0f6f43895e2faf033e0302047c435bb50068306602310097bac0fbe563d7f2d72ba3f7b983c34df7f5156425a039bf5b85eb4ae5b44eb3746b737ef1b2a405d7583d9950766863023100c8c25737d7902aefe1694edc66dfbf1177a2d91a66c12d59baeb41d16858c85bffa784d2fd97dd3a4aca05cf7d7e299d0302047c435bb5006830660231008712501d90a48c91494798c87463758626db9ef69202e976d7ab69d37729e023b8862d670dd6fdd5dd6182173234213b023100c68a70ac0b3db6200f23d6e692aca36aa523953bcfcd20b5f2088ad9cac2f047d170448d106c54acc2ce59040193f2400302047c435bb500663064023057d9d0e2d5f9757a3ec4af436837e265ca8cdaaa38828f8280465c55bdaf0ad1830591126d9cb7020611aa59ce2b7f65023075442c79afcacd1c76016d9348b5b576f518e6ab1f5787155256f1d91029fd87ff444f5093189da6cc71ed91cc42724a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b1c668ce6f9ce511ab91cbb0b8365b9d1ad1de5a6b737bbe604610bfb4cb794b22ef418e87f0dc46d3a98278f1d30ae602300984a6f35f1cc01fc5e8e7917116a8be2a1531166f22082cc444b00ec93fce107b0d2166936d409c39752f67a1a685340302047c435bb500663064023030ee719b5f59068d4008b7847c2e2539c5ec17bb17266f329fcab3b0e4033f9abb8214be7b6417ee08eea274d2e88227023076f2d7bb3e83e5256e2e0a50374a7a0ebd6fab7656f2287c7c01e0a53fe8c52e0b9a47b093b2664a6344b1b37724023f0302047c435bb50067306502305cf4df726538d270ecab16173b8f78e020d44dcccd5078398bb2b62ac85bdd0f4d8bd758f9b91d764ad006cb443f5205023100889897af2a2b9b137b0058079f24e1836a57da4de70389d44ccdaac0c8c9abe57cf5eaf83779f2add00a2e34b4f61dab0302047c435bb50066306402307767f59c8a961d78fc37e6c65aff02279f40b6cd6a16e3b6d1d795e9ac3ce025a2c4af33130dfcbdfc9a4f4fd5a1adde02307e44c6c77c291b1463f7c78a9ad5ded3aa145472f35fe45209229793242960192bddfc175f88afb82c3ab7bcf342e5070302047c435bb50067306502306721e7cf652ec4d56383e14aa210821ff7773184d9dc4f3a3983705a30d35a018da90ac8c1af843fa6d4f4b91828565902310091ccb9d3042f0318e15983e45faae89b69510772137ff4f9fb15841867f910b9b0107e24ca6e517e8ae3454978ce342f0302047c435bb50067306502303879519ecd7ef195a06617b498fdda816a6e6e71d8b824f51ac1dfb4a1e54ee5a045529090faeca35bca5862c2faf255023100aabbdf1c20873df33fc094be38592c7f9c99e643ed0b9b45ec05eabaaf768215fd1511abd252ec5faef313bc24cbd7820302047c435bb50066306402305c94927f765548f09199eba2e601effeb77b143802d2b835259b4eb3d9a4f58a2f1635d3a20d50762e35806a9ef144a9023028da0555e99e502842b62e359190adcfeff119ffa744e1379aacc6d8141d92c5a2d3cf0d3e128c145151b33f80522c760302047c435bb5006730650230022757140b8293e16acdf4326cc40c30e6eafc5ba60ebf1a7e3e69f0ec358f717f00f3bd8c3e55dc6d428258727154a7023100c5a5715cd24073f4cb401a9542114fdfea6f3759f0ed6f9b2a04c4bc0c22eea5dd98b334f4ffe72cf2b426f27090c67b0302047c435bb50066306402301c8882930a8d9e751d02769216e6afe422f70d4d277e60ebbcc6b4c8d32188808f000d602703e6a804f81759e9c118fb02301634104098dc13561b6982031b03b3af12beaa78d1b91238bf1c5adb8712409ec6b47ed2f6c5e10dc67bd67a42455df30302047c435bb500673065023100b0b17b12355b37ea0764f6121697171fa54dc6707fb12e2913ca9aeec460518af0225fb0fe30599c58f9a80455c3d94b02301e0094a03a997349e22d11093a3e06f88741c7d4c7b81092da2dd4ea17b178a4fb73ae8d33f627f6ea08513ea2ce428b0302047c435bb500673065023100ea7f88a58317d9599fbfd87db77a46f8385a849d18ce788b347c2524f45f83a20033f24b93382e7c5f90f6c8d4bb8fcd0230239b41afee548e1aa8a36fc65f1d5f2fbbacc0a3aca86db34031c7483427a9171b6512ba826158e016b45015b960e2b10302047c435bb50067306502303dbd4f1c1a528785e0b2a54d91dbadcb4a79668a643494cc381a4e17241292c18599375ac3b80762778409c6f1c9f4850231009c492e3e02140e6ba43910e3b8e8799fc006b19e1a623881bd85953b119c5c89fe83f2a376e460f6f52c7691cfb14aa00302047c435bb5006630640230422abaef9f6d237458a27ca143154974ba532e0ee8b3403276f68042739eee53ccebf1038dfd98b002049476394a86bc0230235f08aa1c7f8e68e51b732f2825f0d3bf14b278d9b3c8bd80820f8c12798b669be1084493937130122d9ae3d49b5eb80302047c435bb500683066023100ffe00194b1b48318c9d9444bbcbb58d11d126cb24b8044e7e1c6c77c3112e3a57dcb39f46045cf02ebc24086d5658488023100f5db1e09606ebe874b8186ee79372ffadbecae0af96899789fb3ca3f62c49b6b8239eae2e41a5d5c88b1e309c0ac0cde0302047c435bb50068306602310088981f04f8facbc6d6a9ed361b953e05c3c3bd98f81c938b9cd9bc77b2905976c55cea02c601020ddad6ce9b459ca3fa023100c93237f92d2538b605d49c5162a499633373510cebf639bc48b975c281d22d1668680d36e6793d6b8cbf2c298a5bcd6f0302047c435bb500683066023100b8350e81d17cdfde8712a55946695b88dd519e48e7df6a9044d6f22e7c9eb07af1fdbde8c050c239671e388e1b406674023100c54756a3c7b1f09a9a70e93b43a89aaf0893dd7b13083b09c0e9217846b4b50d726c53ebdfa5039a327b0dba3640397c0302047c435bb5006730650230353aae2a5c16e36808fbb2b6935205d7dc15fd31b202cf89ca0dda0d76aa51e6086bc9f18902dd9a558cc0abc96ab64a023100c351cf5e573a268913f72b3cb50cce3821b45f37732cbe5fe0bf63a4a8756cc03ddd9b52850f48e92e2a0ba0e01e18d10302047c435bb500673065023100b131a8003276367499071f1d938088131a6ef66005596d0e1bdfccaef0be44bc00b7ccc2372836668fd44d0d57a67f3702302154fd4ef59218503e7b1cd27db9ad175d9817a7fd7f2932936477c9ba25fd00400df32639521a60687ff42ea0c52e330302047c435bb50066306402304e0144540d5ca2cc60bfd619859fd8fd00bd9b67559e27aa9e821e77a65451691ec65bdeb988f2340ca918bee8e2320f02304dd93d0492af4ad61eeb05d63311797ce2de4de4337c533d5eb22144221db625e85b017ad4251edca44633b0a659d2010302047c435bb500663064023063ccf193d22b0457b02341b65a73decf6a5d0bd956a386c7dc8396cbea5dd998be44719deecb90f62aa812601ad48965023037ffce2dbc866531648eefb6c657592138fd781714861fbdedbeb4c0f6092e53fce0933e2bb21bfb43d21dc5dcc181410302047c435bb50067306502301cd3b3fb5e90702e03a3a84bf97d05472993dae99d92076017f4a59834e2e5ad10fd8b7077089c52d6262ac1ce007460023100aa149c89f1e44ddcb67716cdbbcc9300d4072f0469859a134d03c4fbff1a95d9865150c9c565455b552979162c272eb50302047c435bb500673065023100875843d1139f95d7a509557ddf8d054e6545f885569a3656330a565f0936abedcce19cca5706e7ad6a1362c710ff649f023066fe274aa9b2a275a85bb502c91956b4d976fdfd79170bc81d4abaa09cbf0d209a40f6f279022f84cdbcfb84933c6d550302047c435bb500673065023100b92ba2a39b48aed1c5f03ac9168733b11a713c1bf77a8ff187f48d1e3410a59f23ff8948f26f83955b2cafa0049587f402303d22ba00afd88998277a62baad384a5f7ff13170fd05fb81f6a294e8304b69786ede139fb3bb85b51c8b269d7d355f350302047c435bb500663064023052d244900a402cf63848b1778c18a7b868f157e8129e4ff702ef988a218fbfea524a5ee3bf3a64f57c2708a0bf52ee0a023013cdcf5688c45d7b7971b7a961c46a4d9ff37202d76ca05e83b16defd8c2ce4371155deaf63ca07f9354acacc020e0ce0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301e3e9ca4584304ec6f1448568f8b2142a5f28affe4077ec68440019200039058d7862094eefcfff1c0c517975914e5cb023043f11263ef4d97f9d6d9e96e0ef4da4407dc50c6bb1beb9740d5ed45050e3effe979ee113a0eae3bd7e13f2abfcb79450302047c435bb50066306402306e080531072cc8b0017d47e6765138b636775c60dc3c9079a44e1136ab78259b740ed438fad458f5441b35efe1411a8b023069f0b6f4a1e80b180154d8e71b35389f3e274b0a0dee7cfce83d4cf31a3a9a88dc271b24489b1cc769eb6aa2a0095c670302047c435bb500673065023037f958a63d0bbaa1149dab2e4da03ab0e23c93cc1b04381a5d5894782162d4aaf57d6f0a950ec046a7b4bd188f3c734d023100cb69ecdaeb3f7b3ab76719ab0fcf0af02fbebbb3e28088dd4884bc41759f9ee248d8996b5eb6a0de234717e7371f5c530302047c435bb500673065023100e9211876968c68e64aef30206bddfeee1d23f433c684d8cc626c4e9753a96fd3d66d97c586cdd6b5dfaf0097cb226ce802300ac0e57c431ecde5687877d3c91123900ef6c0326e42268804066738731f2885825da8cee657b330fa157b70dc4955800302047c435bb500683066023100f16bfdc97dcd702e15cc91daba43cf06d389da4dcb36936460d16be40c68dacc5b76ced1fd7412139b1d426bf0d97a510231008cb9e6419fd136ef19f2b54cbf8dbc9c1290eea952939916037eab9c4a90aaaee9f50f2719da9f1e2815704e7ad31f610302047c435bb500663064023067e72d5945943e0a61b0c6f6d2dc07c98ce91a54e61f0648660e27a0be00ab5351eba37906b644087bd9d3943500853b0230651f210488c520f6872a6a6b46beba05e7f6927fb8f50e3ab591e0e73c02b396d44d139611bf74ba8ee68ec2246a48400302047c435bb500673065023054877cc3a4ae45775099c8b1fb581f93978be5f075f07297e98f152d7a60e18d946638acb598fce507908b4e3e80ee71023100cd5bcc0e0b794971baf8b92cacaa63c779499dee43b7d9a7a05dacddf21a6c3497e72a58b9c157e3c48f239467ea60460302047c435bb5006730650231008fb66c84b1670f1d6602a5ac1a1d4bec0363a6e7f5c603e46c467e03540453a689af75ddcf5062f426f711184c20cc0e02302e9f52f4b0f0a5a2b49adddf8447576e5cf5f504d08b2ce1b999ac3c77ee91a11eace86b55ef5b442fdcb77c2126293e0302047c435bb50067306502305fc78bee67e916e589ba0302f72dcaa6503a25bff1b44c8b990fb35154d49f4fbf9907c0deb82f9b88355754c6ce57a3023100f86941cc7b3b6e55748dfc9a0e1dd2dfdf78ac52cf7c48f1ee987e65523705b14ea88e7663e78fad5810758b051a36610302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230561942f4070940ad96552213f963f45b49c4a8d966c5fdd31f72a859113523879fc1e0f8dbee7195c74bfc0f7f3d998e02300354d3503a8ed92eb1bb6ac3f8c607057b19643da3cdb3e2c9efc57cea6bc9a15355a2b46fb7052194d12c33202006970302047c435bb50066306402307ae3bf7c8e5cb941b1b1c41407b6a804e133b8e696071ddaad4542ad8e325d161cc15dddda2a0cce26f8e5c7d8c817a102302bf0d55328c5d2b274135469f44977e23257c499f29c53a1adee592dad00fc0850140e0b9aa26c18c25c2bf90acb5cec0302047c435bb500683066023100de94d0eab7d37c0d868632a57c53c2e7a46998639a0e4fbb9974a38fb1cc54f34aed93c8e162daa7d3bfdd2c796f2e32023100ff815d66353727901abf216b105de5fc887080d87d6c00701dd1aa2542b7f040b2ce14e795a24acc90e7044f4d7fa84c0302047c435bb5006630640230685ddfacbefb438cebb9a369527d60c0d7524f4960e50c485f10bd7240827d29e6a0e6e6c97c2aafb840078454cbb9d1023022eb70740b9f3af652d09b9290747428ede5d3212d00dc5bf3ce719560b5129efd8fc0e1faee8009b9a21882e6c033d30302047c435bb50067306502305f71ed9cfe42587e375292b12da90e8cdff93181c12891867a54ee51a2c67022f6bc4ec0e9a9e5686606e20ceb67bc36023100a496a6d59c65a06532ea92ce87c527d0dbf131e7e2624c68508ecf08b08fe73d065eb8f5c25f3019d5c72fb6e7ab77710302047c435bb500683066023100d616737b69fb9a0c7c0aec8f8acab9741dae4aefadbfb34ba145e879c762c892641f37efe3f5cb0325ff28d39cd19e550231009f8b013916b80bcda354281e46beacd844adf2be05a0764da05eb38a49ec9f9ffdc93cc176bbd98fb694788943e3d61d0302047c435bb5006630640230366bbd0394aca3e1fa657171d66c37f13548321e8c6a9b67641fde0e2a5c96ffdef0c0270bf2e78f0a03b2895c991489023029e0620e631229646e0888733ff53d57be2b977ce12209d03893d89f12f09e8cbaa92f4294447a31de82e8e4daccf0790302047c435bb5006730650230080ed0ee05f21bd884059a6a1a703d8d414cdfc5ff241bfe06e850dac4f750e0f660e184143a426c3a6eaed9d82a572d023100a25ed4fef085d65eddd4eaad32ba7c87ae6494a6879ae11e6768dabe07f5432f1a99e4d4342ccfba6823d05ad870adcc0302047c435bb500673065023100f2829aa958630776f78da3a4921bb7a5d7e0b911f0082d84e984872a06be698b538a664c2fa194f33b9c5060343959c302300f4e064e4160bf4fee438badf5c116eb0fccb0d828f680fb409b3a4567fb87196f77d100d11f48f085c03273151b22530302047c435bb500683066023100f99faab30ea0a246326f4d2925ec4a72a514633fe57c5b542fa93e13fd930ee8891bb1700c46f99cb481739f168c34970231009cda2eea15f1f228796fea37bca8dc6f34e403ba7db3ab6d1bbe87b0af2846cc17d4fe1fbbd4b0482d6e77ba3c23c7c10302047c435bb50067306502301553f7ce2fdafc856660323229731ba0b202669224cef2abaa118084c6331e9255bd25a654abc2a81a2ebe96e3683ec0023100c266e69c47dfbac0a3459feff6027307715cb19e8fe182040370aafbc7e321008c881574226e92156a92fb83ae4dc0d30302047c435bb5006730650231009c28039fb7397bc0ba89b60df64282784038fc20f384c155b28ee7163499fab8562d02b76c61256f6a8758582c811b5f023014e4b4d009fc34096ec2aa309a73cc2fab02f9be2a007178487a39e5c8866c774fdbd63e94aaba8db51394a222dfce5e0302047c435bb500673065023100f12606417acdcdcb5bc9b72b586767b90435f06e66e1e80ce33e793e7b2c90c8bcfa26cdb45fbd691030d9f8f07ce7db023062bae347522b4ada976ce68c48bb1ae352a6aceb524dbeb048a2714e6e87f4e04f97b4c11a4bb4cf04eb4547cb05ca1e0302047c435bb50068306602310095a6b68f3d1730c74f4bc5d465da03400fffff5893bb5eed51c01e3b431005f0482206da6d19a7e6a1c273294aeacff40231008ddee975f8d04febd5591c608af81993abc03ac9c7406a25e7efd592ea1a7250cacc1108b829fa105527fe505f12630d0302047c435bb500673065023030cbe1a775f805b42a2dff18adc97c0911a2fb46e014b33e9a8095773517afbc38f41ac024a60a41875617c59f2b4fcc023100e39208757875ea6c8fe891c53e7c1c5bd67833785e9f4e066d7752824fc516718ac2b4cc970e6e4d2f5aa27e003a16cc0302047c435bb500683066023100bb4948917edca4d297ccc6d8aa67aec436fe4a504d44fb15aea6fdfa0bee495c20ff7488e3571a7b1ebaa1d900ab1321023100f699e6682ddf3dbbeb8c45f1a63afe1abceed7250b1749c744cade21bd936c0067b575edf72baf5e77e566ed1dac2f870302047c435bb50067306502310084a86f013dfe58b3fbef95c615345b3312f1390dea3c7c3da5037eb939fd5aaae2af4483908eca4e542a6245c516212e02307e182eb24a0b96af8549137b250ae563f5883d820239efb69c537ee8a8a8f959dcd2fe961d53f161e59320c55a496b350302047c435bb500663064023046b285522721a83b65d05705d2d9177c1e17dbd5bbaab21188318140a79d20cc41c1e3669611f68d4bf048c0a31589a6023016cb81343823e643c4e6477b60edb26d623a7f6052a98f45b9e48136c520ad5b0a836f7ad08fc9535e006b4f280f4c4c0302047c435bb500673065023100a6d70d4b0a70b9033a3cee4386b4724d91e0bd87ec1e811f5fe8c455800a15eab06cbd10d17b0ce3f27312fc31e5095d023056603aae6b201acdaaf7d67f99265748a1b9e781025bd7f6015e12214f7c33b0b7088bd239a8a21ce14e77ecc25e4f360302047c435bb50067306502301181bfa568022ab23245f61c8430a059fbd6160dbdc54da3aaa4a855bbeed16c53c063fe9c7204dd9d3674227c1556e7023100d074e93d348f983cddf65ea23f610e061dada3505fd5220ce6d008cde668386ecc36b0beec75c201a896df90826f377b0302047c435bb500673065023100f3130e58edd6086c3a92141b5bbc0d5f08e771d8aa913084ccefe13fb5ef40267066dcc09f748ed2379dbecb163c24da02306635e2e9e09defdcfaad34998b16ef4cb0c5758e10f65dc4811dd28055844cc7e4d148f7a768109068a18aad052a794f0302047c435bb500673065023100cb728edb9c7655d4e7f0d06c55afeaeb4adb6702efc010124f09d11ea6b79ed23293d709711b486da1c6132af7d3286b02300de62595daee99c75eb3b59e87a75e6658e7d29188a6f9dc3f2d2c63272f49ec0431452d19290056634cc747563709020302047c435bb5006830660231009f6caf6f21033ea0799cc1989e0eb00aed0a4bc0138de1ceadf78ed82d35cd280dec0549278d8c88f99db88c198f407b023100e2c9aa7d00bdabf6a1b203c6ee5eff5dde25741c56b224043a41c31d5ee9aab453b03ba0f6918cf6e635031820ae2a0a0302047c435bb50066306402302cfba6cdefc921baa7b6850f2587ed686cbaf000c3c5b96107d8806521ba296cc7a32507d66ccbde090ae25ebf2559ff02302900380e090351073b26ed41bc4ece9e401e918b0b394c04c9a393688e0c6643586647d94d5b4af68e7542872cbda7bd0302047c435bb500683066023100835137b46cecd42b37bc3b779c0a2fbe7dad390f4aeb169a7cfe9a173854e4135291bb516254bc05d794dc2e41f23c46023100bf3747e3703d41320b292302fae16302c3187551985e926733e7244e445f11cda867f8a28fb5d8cbee4cdeaace3629000302047c435bb50067306502306c6a6f940cd256228bf07b528ad9667141d32038dd752dd83d096b653ebeea63aefd9a75773016c8d9e6f8592d71a6a0023100e73d8bcbd37cd069e85c06ea23b1c6fb81aa4278104c06223ca02a13fc5c1a55edb6163991960f6d554bf8bea4c3e8720302047c435bb500673065023100c1c1cf16cb9095a5d9d51f06021b663ced784356ebec9d97fed8019935bdb3c7182ec63e217cea500f82736bece6fd1c0230200ba20088956146ef16705bd0d52ee0e870b3f4d725db99c34565060a42ecfc6bd3b27f040852a551c86d9f0c5466ce0302047c435bb500673065023037b392e254dd67e5d0da178008692e0186fa3734e4bbdf697eef6f75640d2cf5c2b83b2c5a28e32e13d7b793f917ab73023100ea10797e86bb8967933238601e6e02283f10aee3e71d4d24ec6a3b876832b800209f97384826349a3f847f3e5f5844630302047c435bb500683066023100a6f19ce58b8ecef30b42bcf9313b50b0785d1820a2a46c6698bbd6f98e6da7a55340fc47aeb7b72c64174a60831b5acc023100fd2bf75321643a3c9ab16d2a2f4c9bfde3faa9f06e21cb73554714a65c3d35c1886e1952dd6c5845634afac0b44c95060302047c435bb500663064023063a6aad5e1d5ff4bb7121e9cdeba39bb948d269843a633c5c1d7050e403561821fa8f1e7c562a6c18af3de75e84973350230391530ea1944006f5a2f771243a54b2b493fed11a5a9538c368e95093f547fa3a8e642748c9eb31b1cc7179472c16b770302047c435bb500683066023100e92d63327697a88cb1dd71fc3ce6373149694b81d40e6f9f1e0d6a46e0e37d114a6cb96187e9e04959f5d10c08dd527f023100cd14cc14f639a28728d905eed6fc3b8897fcc72da8e7fcaee76bdde82f29c98ea58ac53a769fd008d115791629dddcc00302047c435bb50066306402306c006e31ed50298dcada3898b87b4fc2fb223a3f03e64e56154dc7dcc29049ca3014ac020a1f07ae31b5f1264f7ffd51023045ddd9be9ec80ede990f4fbd521bfd73b8de2c5a1f0d4982bcbf0aeedb4d5ae8e8113031c53a7c1c238f65aa52f663580302047c435bb500683066023100897b17413dc1e63e73fb484cb87efcffd70b90d7134a9a245e792d43386ce2379e96607b261b1cc4129f79065b91c630023100f7329eebdf875e8d52642b44b105cd48df5039dfa5a1c16cfacce93989181ed44c93528e6413ad2a62485c34c4dd797f0302047c435bb50067306502305f4801be54a5d49f37e6f51b6cfb75e5c681da1ac912fdc7360edeac5e9017c6d8f071544f7c45b1e53109f5aee952d302310090409649088c80cc4003f38ffbacbde7e782c50fc36681cdc88879510adc31b61f42360aaa8b823c5748bc1ad1c894d50302047c435bb500673065023050bdd5272aa8442adec8ee41cd84fa43aad284456c011aed6b95b91444d02a90ae79a6273cc247df6fd369f30ed186e5023100e929fabd1638a3f06030ef3e908b53877aa1cb4e6ad7d134a7cb89cd0df0c00122a92a9b2a0c0a187ca4547397c323500302047c435bb500683066023100eb2fe05280dba18aef3d615a12f2abd7c58c8bd4fd6522a4dd300113db261142759f9ac2a99665b187ccd567140a99d1023100b930b40b0d55ae233aaf088fe77656c781fe97fb8f22197ca1e70e3e76fc2db7ebf0e54f8b676502371b41120c738c7a0302047c435bb50066306402302887dc110996e7978827cd2deb1fda7525441a5098eeb267ad7ba01f13c1bfa99c31e57c8971862f09fb95b12173ee0f02306d52a87da3b478943aac732906cf1264d5180f71f371e0e711416e3578ad03d951f866fe07329935d4b0f90c650305290302047c435bb500673065023100ea4aecbbc8f98b23767d84b7bee6fea1e465dc073390765c00428b4e1a17af8496decdf384116769da9f0df5b8268335023037c34bc23dbf1451a63bb0cda20a4d9e45d184528ed3d93f14920c04022b0f0c5512219a8d5bd8c2b5ba25451ce42b8e0302047c435bb5006730650230440d857c0a01cde04e3860ef2a8b66e1c2dc5fc1a026a59052b2b57534225a7f651ab2306453abd0e5dfcf093e4895780231008db91fb7ef0c99873ccc6428ce312dfec10443102866411b06885d668dba52055157bb084845597fe8a29543bac0aef50302047c435bb500683066023100c791e8c3057fc6f6e301d4bcf6eadbeb975f699f9e8146951fac0c9ce187893068f281a857519360ecae4fdfb6f9cdee023100d00c4e4e9bc11cd78858021b1f4d7c651701eaff1a3c40baac7c2a5bf20eb371a7c168f7b8a369f468c1ac0f4e41b98f0302047c435bb500673065023100a180ad50c8ccee314cf64a919c8920e96054df7656ac48c607cac0b9ee06bb888c3e65084871ff0d3acf0f8a459609d00230116165fc6c6c2c607609fb8e66c3781cd7b28f2cdd4369512f516ae6ba1b9e1fbcdb5f743fd2df43991f6a4e35675e970302047c435bb50067306502310084fc3c0d6caeab312a1ce15df6cf6bd994012a523845b51b3175a8c1f7a2ebe75c5554ced2dbde0e5226c91770e5cb9a02301af795578e2cc25df7d2656eb829547e8559d62ec22719f0a60480f5f62b8cd05c3c5001e8a67160c1711993c731bbc90302047c435bb500673065023100f87c8778f9c471ac2940572df01fc3d0dcb478b513a1f872ec06bdb1fbed4faf7048fd26cc500fe6950d43e4de52b967023016a10bf169f825a9e0c884b872a00fd08d311085955006b472c5834f3926990555a0ec0bfcee1a5ddaf7c19bb7bb39200302047c435bb500673065023001d355f70adbb14f33631376d8c517fa6dadfa4e0ac3072c25357cfbb551a3d2a34f5f16b75a1edc13a044edbf260e95023100b034f035571537f0715cbd72c0868461c2ecb8018e45f1012ef69f862e93c8735f11c6592242d3e439726728280a5c820302047c435bb500683066023100883c0c4d74394ccaf73c718c1bb7c8817050446bbeac3c16594b899af2299d74bd8261c1c303f89907102b55de6cd751023100fc0faeaac4e9f239d63718933c718b04b72646ecd285264a4facbbddf4b2e0a81cac583acd71137e1f1658d8a1699df60302047c435bb500683066023100d5fb1679be3085034149024a5ede959a4069532e7fec470470fcac7c30a619635a65d4b1bbe531bb7458cf1eb71e6d1f023100ae711dc9c2d6173ed9964a97e4a14661aca34c1b204d79b9c0601f49bc5e6d46c41ad5fef8d094795be1d532b5987dc60302047c435bb50068306602310094ad410e866413277b800c4348175ae7fb028783173b90906cb4ec0876651fc28265a3079d346fafcf7aa7025d814bc5023100d2ba66651fcf13ccf8633c6aa59ec0657aca568612977156c552d1bece1283d394401073fd1afdd060bfc35a0bdc3cc90302047c435bb500673065023100f562eaa35433c47f8e5f6d416b65245ac5ec7fa40571f6669b5b3e61d50daa1e8fbc6e201d6c5fb6b40d531002e70abd0230081cced70cd93cbf8a5c734cb6294e36f9e153474fa3750b55470b6033fd72e0dfcc597f771eeee3a3ad613d45f6caa40302047c435bb5006630640230040327f531ffa74dc0e3e8f5517a9ba00b1b92de3c203134e7cbf2ad8559dab12054e2abed033ce520ce4175e09f5c1202305aebace25c3a909969040a82e621c3c7eedb7de8d57c5b18b1035204b6ccebc93fa220ecad88232609234a5d8f1a6aa50302047c435bb50067306502302c531a2cdeec629e487a0dd40687339938f6af6ba74b2788c9607656db1d29b0aa9fd45df2a56a5cf638b871f9d49d33023100cc60704f4b6d13811db5484cdc5ac9730b1b14de8ccc0436a84142ec1871c940773f78099e709205b3d538774fb677130302047c435bb500683066023100d6e19877c1be9fdb8bec4c3e5d410a51369ad16ad12f44c29605d965f7434884bdf5754a1282f401cce3e894e5fc8ce5023100b18fc77b287e78b3fd418ca73b75f6f4f4e10e0f4720ce57be92df54c36d7c33b598dc6e4c325fcd6f585523aeec000d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ad1f42a951ebbbc5b647e7219b89daf8bd36b2bfb9bf39db90b3202c66b92afad7f738e3c7fecde7d75fe70c94fb92e702301d311e927d0558835cc50fd8056d47b999e4b36503f968c7828788768a69aa686265d440e83f2ab77d4db035b619ab730302047c435bb500683066023100d2f7bbca2735797f612316341d1d30d1dc8e7570b19a0bae55248f1fe225d34e1775b5b4867bfdd62e6013527559a4c0023100de818d6fb2f5bb611f9ad63ec4e32a44e2442492243055da691dc049db2e04962505c447e700a84b8bc1c354261bfd230302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301771dbec561a0151432ea01be9c63fba45908a9dd4ad703e530dde1c9b8670be1a56fd1684c82abacc31fc26b41d8d97023100b8ada932c7a52858571232e0ec94014dd166b4c01a14a8828638423d3d48740bd78868a15fe9261fba98850e6ac08d450302047c435bb500673065023100e4945ad9f895427773999f4b30e2c67feb1f2218458bfa83da5800bfdecb1c5ad18c203c56e788c46c0912b41664af8102301c95eb22009c9087e1001ccd6820b89d5b13f95ceb4ffacfb42cfcacf4239ca64dc3344f4d48d0d8816d38fc3c6689da0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302b2d4ca8199f11894c15e7e11865a7fc3e4c762f2f5631991a5587323df3696bef4d5044ab9f4d3cf341b417f9eee3cb023100d315a0cbcb4b4ba640becfa8769f02071de24df7ce3eadd12d62d68e649924d284ebf33c8feebe7275115635fc5b66c00302047c435bb5006630640230577759e39321b9ee8757a085c2339a9ca2ec4a60bb4104f4785f4a06be6b49fd13614db9d255359090ff590ecdeb6c120230166cb57f821bcdcdf7b7a9aa9177ba4257f3805c79360e782d25a641f28479dbdfe31997c8b5d950ded0f51970fb240a0302047c435bb500683066023100fa1239944cae744e785cc4310855e794d07ab8ef8307d8a9a8ea7f6725b62a40f55910227e1a7cddae9d4b722f46513d023100df037ef7e68b12f71c81680196dffe4fabd1552eec81a8db259a6fee22809b74ebfd62aef76d56715e13311e93b980f50302047c435bb50067306502305a8edde975c58953c3b441d53fc741cc881e43d10fd8bb83104a4a20ab1a8e060a5f97be29d24eaa6e68e87769b0a2fd023100d30e09197eee59d88d4596d4652fdfb2d78ffd2bea2ae5f3d289d0c9dcff61a31a4e383901b0efd41c39bbc1d7296f920302047c435bb500673065023100ec5d277b53cadf3aa1269cb1b079ae5e723959eb942ebc029095daeb5ebb3d484ef597e015f49dab1a672f15f403399602304abdcf6a71dbc6a03f5773b706af93df940f53966dcc36d97376de5e69a40cca9f773f5e5dd8064f74c96ef52e00dd060302047c435bb50067306502302bf6b551b10fcb0b751997e13449097a26c8db4c7eb2e56397826694e48928981c730bb636eea430640e6231ce552663023100bf0f7653ad28337fa5ee7094d2d8855f5cac9fdc3252c75a42a4c2aceda073bc10ba4ce4d6e15e4a14cde90faa119fb40302047c435bb500683066023100f4da8affc0f1ec0a235a38c0f03612bfa5706ad304d148acfeea75a4d2ba652d7257f66ed682bca1ef137e7185543e4f0231008f3dcf32a2059bedc43d43f10c15dd2cab2c8197ea1cb451b339f92d6f126007773ef0634bc5cff6272b7f77bb75313d0302047c435bb5006730650230200463fab6a5bea47cbe764b8156b09027d2ac7b3bd4f7511fe204ff6b66bf35d6659420b74a21b798096a51ae5f0fe90231009f6f163b79f434433feebc3fe67d7e7fbdc61da10545fd73ad2e40ba019b3f1eabf0eed7f20d42079d9b2677389f48ea0302047c435bb500673065023028dbce675ccd46f17b51066aa77f5a7d9c3e656e734f37d23f0ab0b13ecfd6064884808b4d44a62658187f9fa710572e023100c8a5ecc76379562e7c9b6a67758c216b6da4636aa7f994eb8880b32b8507aaef44a4738315d5ce41dce301dee59122560302047c435bb500673065023100e62d1333ca62d6bee45fd73b3829c312667eea49a0c7b14da6b651118698a89c27c5451eb56f2aad5cfd0845247fd99802304ab4c413bd8250af6b3e4ab745074c71f13041ccefaf1203204877e0865fabb119f783207e9b3997a14d4506e4af5cca0302047c435bb5006730650230695c450b7174241b5fd99c37f7211de3bf2cd93534860456c69dbef57cee6a7e84216402536bda0e752a734b2dfe4a65023100fdc48b8809f5677389a26118c6dc2e353e1f5773b5b6aeedae76eb802ae1ff6c197c5d2f709c0a81a49a2f2af6c9fe0d0302047c435bb500663064023043465576d9f9e5edc770015678a9a76c43f3cc18f4d38b03bd66037844d0fc4c382bf0b3152e9834ff3f4120f7da86ae023007b7985eedd8af968e6f3625f40c3a9ae660310ded079c766a8aa403b3c1549a3682eb589332300d62ac87b9047b94b20302047c435bb50067306502305007f4c0da94e5f94988177910b555c30176c27c7bf0b458c5dd6f82c8c49a25142a5a8085ba628bbbc42e83fe34fbb8023100caa5f95dc4f0cbed2966979e7d1b072da8b6153fc24dfed091f22136b9adf2a5dacc7b49f32cdf1a2cd429edf7cb0a8c0302047c435bb500673065023100ba381c287e0cb32ce50197557c19b3db468a297481f568b7cda278c37c35c013958986f51703125aa6a7e88e0d7db7e502302287b36d2ee3fe84667c3499c16283704c52b741de780a834a127fa96a262e0adf71af159df7dd856c36057d5bef32380302047c435bb500673065023100e834922bac65d6fabf7e4732cdf85579ac30554d2416e9c347a505bfa92ef212755e18dc75cb0e974fd4964621248e5902300e4df0075136efc8a61d1d08f519fe41e77585c802bf6be769aa7d52dbeab6207e027cd53f162c1a23a254d445def2fc0302047c435bb500673065023100a6b271f72e88b4aec43ffe4eb451832657a30aa4ee5807b03f6bab9cd9c837c00cd2ec0eeda3da713f3057fe6b1c66f20230070e51440cdde5bcb30e547f95e6df6d8a456a6413a45ed6d9122ea415805b554716e707b30417659cd6f1080a6d5add0302047c435bb500683066023100de52052d513fbbfdd19b75854ff12f24ab868dbd0594ff1d119177b859d45a53feec464466e3422926313f3bd835894f023100bd659dcfc99c1ee5f2e49423d103f1aa20708bebc7fe295a54e622c2ed47e00b222e271be70d64110ad4a296e050ef590302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303852fc8610fe8ca0b8d2d25c389e7e16f9e3b3294171b038e248f03ee89a91e6924be7d1886f923130a6bc752aa0d0b702310099be08d76daeeb44f7f3ad29f5620998f69b0015ef1a587408696ca0a0e2c50e618f8e556a558600b9c8ff3d1e0d26090302047c435bb50067306502304ef87be317a2e429338730cd8438a027b6c083d2e70d10cd73fceb547482ce847c31b7676922412d2058d3e020d63782023100e6b39407b9f684821f42fa10854e4d706b897e065b8ed40c7a421ec7f17b868cb7886aceb5b89b3f6a9eec681af3273f0302047c435bb50067306502307eb476964499a36d827b7a9e96f66aa15e89963de2399f43ce85cd74d0c83275fecb45e16b3bf47a0742ddcb53b33127023100821f3a1c0c85d3b165f8d5e556d079071afbd3fb0253eb3a0194cd0292d0648d3220328589e1350428e9cc0e8e5e46210302047c435bb500673065023056d0f46dc6ee943fa70375e3a5496cb603a20e59c9601c8a7026d7f393c59566aa7bf568c8aa4702ef967b5e336df0a40231009cc484b392f9d39c4c1e6d895c3da0174805336bba345bfe9a41f8fee6bfb9509c7a1c5ca5e8a4aeab97dbcfb2b991c30302047c435bb500663064023062c3cc1b4dc774598c295090229c0e46a2c0ec5f6a6dd2067619937f66ceed5a1124d2e70ecdcda2dee45d5305ea7743023048203c10254bd9455d165a268d4379cf1859de3f6322c79318cb168371dc2a40c8c2a0d5f4f95a0513de1e1000ff13160302047c435bb500683066023100fce0b6bf06e97859361d0a662f3d8ea0dd8447d9236c8efdfc525ece3fd7fa38e730d6a3126c79f0713d3197f72498de02310098d3ce3c3c3a35a5deb04ed997c75eb17490b016af39bca453454ec7c0215c3cabfcc61525f246b9cd8037943b33edb90302047c435bb50067306502304db157743b65e43b4dbacdcbc8851f4f73f098f2c0e2fcb252a385e0f2ae55af4625116e9d1a0fb7b6ac019b518279cd023100d32dd5065f794e0b9fa73655116af9886f58de571f4b1e6154aa73ae26b3f15164ba82414392bab8ffd05720640922e90302047c435bb500673065023100dbaeca4daeac925883686c1b82381fe32291d6e71797f09b88884c930b784d569c060c9af5adb6804198354873d581d5023066fe4d91c9779f71559a1c83bb5bd56199b5696e8fb992305bcbbf87f5d2bb0db30c2bda49759902a7e381f2d33c0a720302047c435bb500663064023010e5c0df5cfa48b1bf52c2a065ef3071f766d414eb7efd45fd4678d93a132cb2d5956dcee01d956a02abd5b30f83966e02300d6018525dd7af12409bc0f526648cface9effa9f7d78ee15a988916c3eb084f98f5db37576c21195624b5a59c22e86b0302047c435bb500683066023100c022180c93189c4689e639beaf043afef38f2cbffa8dc4a14d36c0b1643f0e821ed081e96aaa8f8f4d2c2da8af9f1c9a023100cc2bdb8bf1277836664ba9c516fe1aac616692919bc9044b9006381ffa263ffcf8ca22df09760466959c9c08d0cdad9f0302047c435bb500663064023040dc655d1c72bf41302e2ab5dd5e1655f875fc8a3cd3e9c24c268b6c1b73973f28b9bcfdc568fc6bf302ee14b48b4ac40230766b379fe1cbcea612ee840b46e015a17866d6a74dee7813a852ce749291e4b6bb854ff935868b0e08340a67d02ea27b0302047c435bb500673065023100a9f22543feab01238e1480d963c0613010b71da8e8839e4469345c622e10e593a3d1c4c37cce9e68ffb386255b0961d102300dd636085cdaa907af7a0a3bbb3ccc2379f72f2c668bba91822cde97a9a8353a9ae3f6cbe9fcfb01e85bea2704f8e92f0302047c435bb50066306402301ec6477ac1d3fbca8142d33cb19f594e7537f82e47b4a620c49282910f77ed64698cccea16407d36b2b8706f313da1db02307dd602c5c2a267e13ff76b00a192672202126a21457184ba7865c48b835da9d4536c145f5d673937d7275e91e3295a670302047c435bb50066306402306757c0299023ba169d5f3a4c71ce93f407575e01cfa52ecb3d87c7d6258e54e4197b014afea9cb5f7811545426b94d21023050fcf642fac515ce056862f4197c08d4b019808c7cd9a71983c4192b92b3361362a87aa822c0f1d4f87a01ec658199bf0302047c435bb500663064023027aa705291d70608641afc77acd09d3f7487976bb1e1f33312a35ecd23dfbb44a55f39a62317a38618a02be5ddaaccb00230177fbe8db1cb5e1356b2dcb1749fe3905cc62c88b636303dfbe6e970a825d758c4a76b0228f4dc91eebb1c221dc725330302047c435bb50066306402303c0dc0e811209d788ee272f02a07766ed10e8c4558caeb5dec9c8c25d89a60e3b246a1f8945b4c4adf948d562280b2fe02301f045f6b77cb392e9146e41b1845d9ff4ecbda3f5699bd44b471a9c612d6fadf99b13422b079bf6e5c10ccc25bf929700302047c435bb5006730650231009470800986a8c885e8f03448e5c78532c54397f7b42a121963c348fc7968424068fe9aa6a14bda227dd3bb1054f7027502302755b0119f8d198d271a7fbad73ec2a82a106e3c1e81ba97e8f4792c30bd8a6bde46e4c9ed928772fa2b49be261ec7700302047c435bb500673065023100e0deaf9eff22123520f7cb3ffa164656ba15a66cb419624d81d7863ff07b42eb9c8b38aeba37571170bbf2ef8d24789a02304677b51b3350bc84d1bea0f848ad6c2c6039429f126e197b4d858c477e36c455992787d0817acdc2a385e1db680f970f0302047c435bb500673065023100881105c31a9bd5e472297cef5f43b7f2c74e16398a321b0d121165b2f7f93344fbd68a9767a0eedf8359f94f779d706802304ec2059e28beef754848a0215c7b4c6d2d17683dea8e607db5a60564faaa3ad6bf893e3e9efca6d5078917f4aa9ed5100302047c435bb50067306502307a10800aa4fd7f4359106ea6a16173bb6d61e44da4375c6ada4ed5e342072e6f28b5bd635b61a2f3303388f3e8d6df67023100d6f2a1ed7f581c3b22124d1b61853233d51668a70ece0659d355df8ae813b52e20d095d01155594aa4cbf5851f64fdab0302047c435bb500683066023100b785faaefa3147c58614d73f4201ad767df44bb2925a600d717214f78fa91d5d9f552e46471d3dd3af00fab9d19c781b023100ca53fd4b0510e9f84c97c0bb9f167bb2403ee0ba585894f2040de0fa39a07bf8f8b68a15bb57c135b1c614b851f8f0c60302047c435bb5006830660231009f884456c3a10d09b7ad5858f7aee27cff59480df6f58a3b4cdefc31ccdbd0c93cf17c497c8a491524f66ddc47f009b3023100dc16cbf54ceaa709d75418e58ddb3e1d6c9af2edb0b2a8e532bad97399fcf20a738bbdc26d378ec537275b6a967d85610302047c435bb500683066023100b0d86d10f9dc989a4a41c1c9f4ab229057ca10e3688139e18cdffcec618f7ccbdd20886ed91119b20bcde025f05b76bc0231009c70f528964f9214757ed6b2547df472bb987887fdd0571a41f22a0483e82023bbcb5aa370140aa060463bf5294deec90302047c435bb500673065023100b74f2cc3eafaa589902ba160135cdcdcceac61eee535b056f6c2b1c15bee51540deea2b23384411dbe42744c960f46a10230395a8b3ebb613574e2b85e876dac84c8faf8f2e9bec0bad6a4ea19e6be98cd164d9eed9a82bb76fbbf81b94c1bb68ff70302047c435bb50067306502310097b015165696227e4c51b1b734976030a06bf09e1f8dc56fdfdb691f25c94c7cb13a68aa5d84478c5ed94d6e6a8035e7023042323b1166bd2343e3ae4a9aea1bdb124b1755c83e9b91b34513880517dff08163123a52e6b9bc616b3cd6d43367e1e80302047c435bb5006630640230136143eee1706025d6fa6d9bf4705d71d02fdbb63ef89986eb6d3fdc22f47b454448eae12555fbda5d0719e5458c66750230725c0a26ee183af04ed8a170a81e6d57942588c9b0a0c1599d0a58ff18844fa4afc75b2797152eda67ba6a564c9d8b6c0302047c435bb500683066023100f2c3519200b192788a75d957c23c3005b3fd6a70966f9f90f877b2509fd23b07ed1802f397116f4c27a5b7d9ddd96723023100b488963e81539216bbdd9759a7e94db0c0608db94f7c8f38f252a76b23d7b0392b3cee9274606227a902ddb213f349270302047c435bb500683066023100b91d2e1d618c119627a0c6ea953e32ab004d21af8ba9b1b77cee427dc8df444e462d224eb715f575497d6df134d59166023100ee9fcf940e805fc00566e134903a101c36cb30b596fef77da3d3e1aa53040bb1e281a9ee5a805265346c135672bb15780302047c435bb500683066023100ceaddbe73bc2dc25b20d099fa1f1f52ac0ccab70aa901bde4e7ae39571ebe6ec8330e5bdb9db2261224a62ace554b27a023100d49cb4ad3eb1dba1e8158eedf6d933cc68b6b5504bcd3322bdd55e02587d2df8d73a5814ba8c538a6e07dac2b53e7c4c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302c2a9ebd4bd67e3cba84a9afcda05a9ffdb557736d69265d328877470ea951f57bebb661fa9b40a069d3d924727205be02306996fe3b3925180e0536b756ad0dec9265ab5c205d06842d063749388f531f4027866db70841b143d57c75038d9076e90302047c435bb500673065023044e6ddb50ca71bfab45f14f7a2d8fd19d84d87324339937d753c21f0e84d437579ccef33d0ead2d7824da09118e42198023100e43182b84165876ac98c4d5da583337b281175d49aff8abae76953f7de30a51ee1faa27735ce4cd2b0ee01208d754bd30302047c435bb5006730650231008ae50847373ca1bb1af1aab0f9267936a04f1833c9ba3907d0edbb275f6e0571428a1740bf452c5f42e4a3c936f557b0023023187366730543df9186f6502eb73cf21b65facf5ff60e4369348560da06868d2402d4098ceb16a0fe06668cfef1e50d0302047c435bb500673065023025490f4a8623482755bdc9aa8a08faaff6c424e726075de81df82cf310912b969645265f841218fcc48f03dd0c8d15fa0231008eabfc124671d5c3fb78ec58d0a5bd84d20d56cf52e5f494e03389988f3c16160c694bcbf1e7ba06a4792066cd6b5fbc0302047c435bb5006730650230308b25aeb3d5884c42dd9814d41adb3cb417606204a35a7156ae6a0b4cdd9ddf0140abc7a327cad01053ba73e93a0cb6023100abe002767bb1f891eb5ef5f94d54b6e5fb4c66ad064f035abd4dc2598ccfd7855048df310dfd5dc259f99739a5eaaa630302047c435bb5006730650231008ee55642b2d48e160c84eef657288dcd3368dc45ae315e2fc34c7808dc4c10beff86b8c477b6d14a5dfb6ee0b294771b0230748b582b87d8af3d70c0ccf1cbb7c16f0be73492eef110145f1af6b22a82f45995896926e0c687a655cc51b25633f3d40302047c435bb5006630640230556e827b1efb1d665162de489d23ad9954a0eaf452710a1b4eefd8ec9032ce7e54da94ad9aba329ddad683abb87e3c82023031c7e4b6941d8aff46738eb5b2f49891d5f89b48490db5b3712ffb655666a24df4e225d7015231370fb160f94e272def0302047c435bb5006830660231009121bb6700a99f2ae3868e9b88c256ab564a9bbee6e9ef49e3f08c97c424ed6960f05abf097d2f0e59338c6df537497d023100d9cc661bf1113d762f5cc0707aa29c141af8ad181e9b9d9a98e44394d1e134fd8c90f174c74379cb5200231957792ebb0302047c435bb500673065023079edba48a60a879fcd3021458f3fc1dae8a4e94de049623ad6b71ebc1e14db777ff135d410c53503845526ee0f4b0265023100952f2e7614490973aadcc75d2f28782181fce5c7f62b581cd23f52afeeccae82e7804fe572c4ad60844c217f6d424bf40302047c435bb500673065023041719b2b0f68319290a1af0830522fc5e8c8fd5335c7239cc106c466b3770497a4b13f5fea03fa08606af56917d66d3e023100910bdb4f6267764e42231142cbb9e87d5cf8257ca2a48c3b6538571c68f7f1421ed8e387821709c3f67efc3bf639fbd20302047c435bb50067306502301732153ad2ba89611bc38b6366c9df7c089422f5cd3ce6fb91cfa526bf430a05cc62c7dc91ab8c30922565b18bdac6b40231009fe1d867a3e1a78e5c5884e00f5c4c9428af540ba71eb15c3a7d7816823dba666debda69adb67eb17af1dd0baab8c13e0302047c435bb50066306402307764f57ff49a30c4aa16c6ebe78d1b57f8f5de628a2dcfc8c329e5207ccc781e39382bdb18a60cd3c5c7d4e5179d14a80230498f2482069520a45eaf870019a2061c0bf37489a5d0e0f070f848c56542a1664b57a3400ef48e0a2c50220d9af40e7d0302047c435bb50066306402302cfb3f2e71a47a5a5bfbb0bc7c91405d5566ad04cada27492626a90ee326541484850f91c4c4ff2c1b92d2b3fffbeeaf023079d7fbdcb1fd95026f39d08ab84932791dc1382fec6befa12bd7b7b2249e03fa01c60166a2c48e16a3c9284f029182e70302047c435bb5006730650230307d76b249c534886053dff6a51bc8c79e66ba566c8469d020eb374feff448dd014ac581ca1e461c7eb2f8454fcac286023100e38e23fd064399abbdf84e5025ae77a2ff1201f3fb289ed277cccdf02c3a9d823cc4764032d7f76af00776278a9bb1620302047c435bb500683066023100cccbee0a97b157cdeda8c7862167f96d324dfd76987fbc25d3f04d0745bc4054771387aa872b62b9f99e7511e66844b502310090aafca99d215710e82c788d12c12a36d8c76d0c224f1622770ae47470f5eda470af0483503b6e1c7f9f6dc8602127350302047c435bb50066306402304be383cf473b37476d69e629e179b5ea691fd439c75108ea82e4e990d75d8f4097e485a6abdfe2deeb641382564541ea023066534f488bf91520a93623e9c1b0cae6ef5d942e7bf95c912e2a5c712c7918ab61c0ee26a633040d15faf095e9268e430302047c435bb500673065023100e93bf6ee581e8637a6df734e3756e2c1df3de26893bd34a7b7294a4b3cb38aa15ba71a365325d39c98003777605494750230102487acaa9f5d34e906496e04fc49b9d08efd6fbe878c11f6e866ad9718887b7b7c8d1e42518322b3057106975ac0160302047c435bb500683066023100a89260329ca42409f582d40f3eedbe63d5f05041b9950d0bcc6eccb0a06f05acb93ff06ee84a14e0d128df055c88ea96023100d0aa5e6b9ae18c833d569cdb1f41e2d37775c221c250415583b0baeb1d7a0ad93e8847d143e8ca2cb42de91ea9deb8e70302047c435bb500683066023100def3c02d16a4085d2c70716e7ec6ccd4f11013792298e88f1852406bc7479ac73a2d0cf0b656d25e54c1166755300423023100c9a8577345a7e753d2ee33a4370cf596fb79995c95dfc8ca4e1e98c29dc7715bb71d32a3884ebf3fe3cff4427f03fed60302047c435bb50067306502307e1536193e2bcffc46aa9f4cdd2b955944ac8632aa9d094e6f3febecf187fe4a6322886ff8cdce76546190ca03ed912b023100aabd2aad04fb669c2ca869d7acd53ff35d447fe1d47826847773bd29bee824e9fa3178d8d1c44ed165972d16f74822690302047c435bb5006830660231008264ffab3ec0dc90e39c74ef6ee2b4cdededeb3b34e101b8d6c094f790a98203a054e5571f96db00f3962b0a55e95c51023100869c425e2cd626e3723e0b14cb09f0f25d1484fdf749831ddc5aee3aff1d1de4b9a3cfa5ab9c74c8be207dc62ce1d9910302047c435bb500683066023100c7b92447dd60d95b60b190f816b4a6fb91d05650d45a6a14ab3e3884b4bfb9f304af86c839c91cab3033ce6fee3ffa1f023100ae30d8b8c263ccac8658a563c9db6e22a0c6ba81bb3b519643eeff788b48c134c9bc299e009ce2e72f3947ac65dc0c5c0302047c435bb500663064023048376df410796ee71e155261bc529b226e2725a3189e0c16d91ff68cbfae847224a56f421dca044e873eae573236bb58023052ed3ada2fba73361b249637a75bd4627b11673ecb460de335375eaed22acd8b06d9352b88a21cc1d9ab527ca0affe240302047c435bb500663064023067320d1a360f9cc49bf6d18355d59660be03ea3d1fbcb6f6fae06db1cf5fddc5f953407f9d5fa4007c7dae0d280fe045023014bacd29d7fdab86b32876ad5bd4b696fa0952d552a38f14708782c28759e5915859fa23f31fa57f441bc74ecc22c9ae0302047c435bb500673065023100dda8ca6b5194d084e3be7afd1282536ba07097d2f2817b3f15002bb8dc925c6b4b60645924de5741dffc05f145065179023045baafa40ec6a26e0d2b147ab7fb81a6a470b2168f92eab3b226765114cfa6cc562213c93d58f8eea9ce7dae33b1cb560302047c435bb500673065023005bce386bb79bb51d2f58161040fc22161c99c072836c8f5cd64febbf7624d614dd4dcd7c6c283dc818646b7b4d702f50231008999dac78cfd210c67283cf44ffc6f96985f76c7bf337b0a835314edbba147010f7933f41c396c4d580162501ae701e70302047c435bb500683066023100f78f8ad84c2b5370b402522c59543dfdf7ba5578d592b12422fd31c6ba07c9ac9a6752a7301a53b1224d3a0596f4b62b023100eb8729ff3975f56c935c670a59155ac982de861a8a21e0dd9406f0bee2ad5cc9a94511d7cc7468c8ec37ff1b7dc017860302047c435bb500663064023019f1bf57d02d77eca5e36184e6fafb9c2473bacfc10a9ee5e26dbfc2cc32b15e649df542329bf48670976968d5f34c160230076c6fda733cef69abbb456e1570c77f89f0fe79028fd79cea5fe97fd0b6388455d05fa84ea70ea30b2ca4dd5fb0312c0302047c435bb50066306402302ebd466754bcc430f8a96dff7880944ac442c0361aa1a890a3dc72a0e37b6cc329f891a6dca3e3385fc3b75ab1897b0f02301db9160108fd660b0100906b0e96972b7c07d263702c4c25b02d4b33e47b679c9b805723f049f6a72aa32c8fdaba66240302047c435bb500683066023100f30f31fb030bc52279a0bcda164114c36dc8d539b6dfe90f81962cb038accaeffa0de45c17af532a16048fc99dc6679b02310092ae5de221c56fd89014c7e6c953a46314a26c0a6afbdf1f9892af2c5172510a3099d6dc33d3f4be00fe979bdb20298b0302047c435bb500663064023043901959f8248468daaff60d874a4b22689a4fb9caf5e84dcbf5cd4cb6fd3aec663fd1c37a5885f9e111347c721cb874023074ffae80e8212031329240ac7e4730c6c8d9a32b7024aa7c8b4c5a561bf859b2f46e1c06413c83541a709419a764d52b0302047c435bb50067306502302846d1f0c158847d729d65f132bcd963626ba8b4ecdccbab7249d120212f0982b393f1e6747fda5e6101c4d3f34c67bd023100fea99666e131f7f535122e92d020df407c1c947331050b95825f85e24343f68da6b370db52fdad669e9d9dff4a3f47e90302047c435bb500673065023100b4c5fda929932a9d2c23364f18299129f3a23edb628d7f9d6dad88da89d1440defafe4352f2de541e169e743f5c8f59c023038a406884df582d74c412e8f63ac9261d78b5f0d861d55dc360c6bbbb553ee5df9dd916dde55e705986eba6f6f8e3de10302047c435bb500683066023100cb6593cb73c74db9bd625e7896fee6506cdff925dfc797b966383e2d07ecc8560479fbce5a48dc233fa7c673296f888a023100be2cc6f9c9c8b9218a796f3c50a8b11ce28245640c8e2517678ffb729755235386bead45642b922e42995440166f3c090302047c435bb500673065023100fa863eec77d9c2e7b44d1f314e846b459d7234a7aff5e9e092ced1543a43c04c6971bb083d9622f17ed3a10570e2cb0b02307bdaa54723279ee6e841e8a887be170520eacb74e60ae24eaffa2744a2b75f3ed2985a5b46147f3adc9848996530eba30302047c435bb5006630640230018dcbab830240040a1159801f2ff649a82af4cebdc0d7f61f145c2336253bf47d5f6806f52efa147024bcdd61757e7102303e8c5ce4dd97fc62c1b7af8ff404bb5b32a26675db299219b657b0fb488978cd600dc62b021d024aa4b590687b601e600302047c435bb5006630640230334225483b316c24ea1b5a577ca55d63ebe4237783f52b9103556459b2ae51049287db82e615fda8275f61fc6751b61a02305b899e735f234037efb1fefe70b12749608d6ff3baaf610a6f63f16704975e0acd25a4ef95471d966aea09b32a7472250302047c435bb500673065023100f8710bda5db28cfcf2f6af0317b10af37d0458a727944d2c41f17cad9848c18c4bb58a3ac2597afc47d1fc992072797702307aee491603667f99dd1061db1ff4a4f26dc6cb4b97a840abdc47e562b79b596adf297a9a55e7c549046698e4cedbb6a70302047c435bb50066306402303220e732df17cc57f16889c504317e27ddee781d292cb2b126376e669ea68a4b9fec7b0611462dd2a69e60e4b820cd240230252e26551ead62024ca9917ccefb5c18eaa414ce7273a954acb7bba34b52d3b5246287a480734291057df3b3e458bf250302047c435bb500683066023100bf67bbf9bcc22000ace11683574adc7c7ae499dbc35b8bc54561af75a81e6ed5b7d9432034622fc7fad6d09b6710bf08023100a397f1db6ad7d2e29675e50d26ba8aa87e19daf2af07433bc4e53cb6b508ea2e456075b827ae17d783912e87388c6f510302047c435bb50067306502307473e16c7abfb28b467bb08ac70bb5185b80a30de333c6e9931b65ee573b36e73779eba2b1ca3aa249689ac291205b43023100d3b0960ab3fb249dbc40135e03d290a225a637161cfc10377057b17742262bac1a13329d11b4cfca0426c7aa501fbf540302047c435bb500673065023029f0f5acd3c2119f50f13115fd7b59fce7dcfc68940f06376bb06b8caec6ba48a0a49856da19bc63cc50570430156a45023100d842ebff996b78c0e2ad1b9d43ef5654cb1a5edcf99cab6eac3f65392569226bb416008879ac64bad88691c82d14c1300302047c435bb50067306502307a08e833b862cd742adff36dead14a23576f0ecabee2528be7a2dd90a030fc63233679e96e593406b52f8f54f6ce2e9302310095bf85715d488ada747396b0652dc3a866d17de77d8776ac71d89722d38fdaa21f93c6edef0349cab88dfa011d38b8c80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302b3057284c19555dfefded3f13543c91a2088b7e1028cb58a7494e74b3b922516a1d2c94cfb1e05f0283310ba27caaa4023035583674f45b5ddb4b04fefdd9574d127b4a92fc1223b274340dab7f748cd03dee3e8b123d70041174be7411615a5de10302047c435bb500673065023100c15a1ae0ba61e127dd94f49e18357bb25cbbecc464ec3ac8b0e430d99b3c07c2398cdfe1eb25d25651f375af9150878e02303b33b1fd2d3b3f7b87b6f716573d034789deeb52f1a8aa0562e7d0e4933cabf62fef51a81f26289ddf1e488ce9ec976a0302047c435bb500673065023100f6d304671997aa0f9ca16e7af70e7fd8c50a4b37ce7119657578afcd4b485a47e7f375004a00587f154ad100ea87289702302a22fd0507df12d4f5d9b3bb5702d170e3ee42d3d1662cf5ebc2e5d6d186d0e80f4375eed098e6672132337ae36b8be30302047c435bb500683066023100f56dfdd183f4e9caa151f946dfc7aabf02d542b282bb93796fc1de8439a5150ee2e58ea879f86c328216e202b1a9dbd502310087f8ecb1632877978ee07aca07fa6090e5c6202ad5149896f53a18e0bea63a5aee201978059a1f16480d5479befd483f0302047c435bb500663064023050399873448cf546e682ad6755aa4e87979977a4d73fbb086046f760282d97472f173eadec6ef8b6f63c76bf390644cc02302413c3b1e92ae3f4e3dce6d3f633399ad69edcbb0b365d52f24498be2ea2d321bf164036ee7ea888049db6985df5ab830302047c435bb500663064023017eb88f6bc767bcedc4bd6d8f5c4d5dc619c23bfb82fb16eeb0328af2a4a254c70c7fab9baee334b4e75785c06a3e18802307cedfe92d2367e59e6f6e78608eec9ddb4ffc7a30fd175617b861b750750ec9e0b5034641df90342b5bb88970aee1b7d0302047c435bb50066306402302c07a99c6dfcacb4db0ca0322f807bc45271314fb0bfcda1046db9a46dfd80eb4de1f6df3b96c1c0fe2736622b9be9df02306d35ea9df45c2b063812d63dab79b8978fe59655a634d5655ced523f9189b9ef165672e12b984f93683b3e2c526081640302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230493116f70747ade8084af1a811ce50a0cac63bcdefd37927f0b2eb3989ab3e3c634b01bc3ee2bed66cfc73ab4266eec90230430e92792e55b7c9c062bfa02d0e9744b5565c7905962b9e00abbcacab4d592d8a70c2af147450cdfea287083a283b3e0302047c435bb50067306502301efb62efcd36e9453be46a85ecd528a3f169de47d362752a4d0efef84c9e553fcd15f37a34ed48d7d052d757e647fa8d023100d2de76daa8730a7e567af6f9cf24fbf76560a780629aaa06139104ff24a44b31149e0d5cdfc637e1ae35d03f7eb0e66d0302047c435bb500673065023068ebf808156cb1d60c42fdee921429fa616adb96cde155e312630c7afb399c8bb0e2ee0ca19a125b0fcc4c22ea96b49a023100faab145e366ff882203f34d51dc2f92df6d49d5b777654185c481f37f34fe0ac262fcc1edd6b0456a8609e9654840aa30302047c435bb500683066023100ed562a1aee556e12fccdb7cd3a07c5f75c17bd2c659c99d1ea052614d78380fc69f588ceb41b288f47777839bc31a962023100860bb8089b3eff270b0dc930a4991076ba089dcf76be25c421d7dfaf6f693b509dd07adc5ae7af97eb76f78e093529640302047c435bb500683066023100ce2ba82f568d11d6aa8bc762e7a325642a764cfd4058f76d2976125883b27cfa22dea5155be46a6211b4c04156557e95023100ffd951c104ec86d163718baf0eca8122ef0d6db6659a2ea1ca2b4fa080e43af7852b3bbda4bfb348a01afd410145f1bc0302047c435bb500683066023100afe3fc53f74a8fee314911833db41545b7ccaef5f2c84a8b1d2f3a6da4047979cf7b6ad27b81b994b7a740900400c5b80231008db22bd61ffbd3381cd979435f6b66602606e8c6a408e1c929a8341f42746b9f61f7d7ba084bda823a46f54eff4a9a4b0302047c435bb5006630640230099959d74bc5bbb3c52f5f3f92c2b2e7dee66033655d8802e1dee010aad6d1c6f3c235c57acc6ced5f79cfa6c4efdfd702307bdd0d3e1fef162ecc6a1ee5836376636879e41635da4ca3f66d38055ba17ce671ff00f47876a790518b069ed9cc7f830302047c435bb500683066023100cfa1ccc7247486502c8771b0ff122448cc65d1974ea4682899a54821a76064d0efe1bfa45b4f8450ba7853963bf4c96d023100b6d0cc2edd6e4284d6d0f9b46c73d89fd46f2c6fd0859d61ab948a1a103e670c8b7d95b9b8a148f297a42aab2fe9db720302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023017ce6f4ab5aec26b4dc7aca4a25ba82ff6c8552da2410d8659cec463b01c65f822b5e331e0c7145b7301e4345deffb6602301bacfccd6c8deb6308c3a884b6ea0a91ef5522c1ae7cd34de4c12ca820b3383c290c5dd4863fc2e00c54dbae266fc7600302047c435bb500673065023067e3e38828851a675dfbe9c59e65e6c1650a15011908e090f0f1a2ddac4d414de8beb38e12dd87d9f6f30505f932d62c023100d9d357545a33f6c3edfa58dbbeb5e77f4aab0852fdce03320aeb7328a2771eaaea1c6ace4cee3c4958ff2d712aafa23e0302047c435bb500673065023032e8ceb9931c17b20da75c434e1d260ac884048094997705a63017672ad400eec318c2d53045a9d352561b2846a4b5ca023100c11a7f929d5091f7e57df8cb52959ddbbaee84134def61f0f63528f3d4adbc28f4425ef13ef56de5019f3e41948994ff0302047c435bb500683066023100c54d13ae9ce24791e1a2d7d2772d215ba6faf903727f17434bdd5f750d1055a0748f6895d1b5a2c84e3d2f5bce570465023100c655cd72e91bc3ca239ae2ebb7c9d1a36ff29d6f0927714e2481bca06f14e677611e5fcaff068dc7c489156bd160e9aa0302047c435bb50067306502304f9941f27dced10bc6f6c99684396a59ca599cf2d977528ec9099e2625202b423e19982b06dbf08ef6ceac83147984e2023100938466e2ec99575929ec9b92ea53c0bd22807bd49d3b4a54ab58049576adb1baf9941c3f53f421bb34a1b66df634cbef0302047c435bb50066306402307c01f873fe9ec647dc0533bd0b7b47805af83b7eafde184e0654bea01717bfa900a5858d8a2bb924121eed8f474c3a5b02305d19fa8a33f7ef2e34f1de10e1c54017e9fa3973966f23466ead61ad1a919cb96770765c7507b43c69ac4f75d20402c10302047c435bb500683066023100ac02f280d4961ce5155c1378a7291da6a67046f9704e95104230fa3bd80235548f5ddfd7f9cab28dfff1dfdf34e0b7db023100d31325a90516b4713c35ee5cfd0aea8907f881d60081ba6adb0a69e4127dd066c5154f6b95f28c0dda4211576452d7380302047c435bb500683066023100fb8ead16ae14c2c0df42224d6fed02d181cae115a86651504311b0c62a8a8a5c51fbc7d2864f760e8be7ef264ded0d32023100aaa5dd263e85ea5d99780d0f84b6e367e4860ac91f1e0d43f8238b1af7fbb5037bf452fd4eee8acc5fa9a3f0806fb5640302047c435bb50067306502302f567faf24d068bf38186ccf7b050cd586bbefa83618bca94e2ee10a9ff5fe5d3e7e90bb87456f0f6058d7a61aa8666b023100f5f41177642487cb3b9f30df5bdfdeacecaa6f73bdbedfac945b3a6323d8f7c3cec9310fad246b0193bea392c87d7d330302047c435bb500673065023100d2797bb8f65afd25bcc94484a86f7a9966e43538f780f42fc590a6a5f5762b23662d9206f0b3944bcbc59ff015b61cc20230799a28638d1d3776ccdfbc3a41fa208e2a4838a542c05c136d828138bac75304b2495be54dd9ea06bfe6dc7f7784e1410302047c435bb500673065023100a2131605204e375fc1dc7b1b824f2d173c859e9fb550b1ce21f67827e67a61031ea84d9c57d7cd823388f3a633603d6b02301b69d6b8d55e1b07c31e4de3df1cd3f7ea0deaa0e31253298c1c34d290802dc2f132c49ff72613b5f997e107f2870f780302047c435bb500663064023018ea21939568c0998c11bf8b743c65ee41a62d6a75ce47b2dd8da4e114f79ed6d3066347b56d44d6ca73ada1d293ab94023021565344efed246d5fa350cc6b6d8e8a306bc50b6c0c840c076c3d08f8e1c8a6ec6649f168c130a26fdefc955707075b0302047c435bb50066306402306f660a6dcfa2dce5f19b82b8f46698abd9c34c0742503eedeaf2113dd4a5c0c0805a1f7d9bb6adea0e3440d2a420a9a102304c9d9db2ca315705afced09c9a343e9eaa40c0596c68e6f138fdefdbb3ce2e46a08bc30e05cd597d22719be5fb38bd0f0302047c435bb5006830660231008fcd4a90ba898d43990054a51c6dc79cf9775f3fdb8b86fa12d59c679377163cc34a63e76fe6f701e86f1362a5db8290023100c8c8c6319b1999543def4389f010ad800c49446f7f0dc43ed9b7a0eb9a6e6031ec07f10be93e90f78a5dc4a24511a4530302047c435bb50066306402307a200a006b09650695ade4c3af5a29098eaecccc48b3b37c460c780877acb7d0cba828232ca4c7545c2e153afa75afd60230503fdb2acde793644e12fb16c86cfcf0bebdca5d466881ec88d35045317f7502fba9917dc8e3efd2561284abd3974b8a0302047c435bb500673065023100dc1d08c8bfd42f6d42bc484cecfe143738e5750a2cbffe645043f6f58b4825abc2c1320c7919c6eb926bdb211911690002304c42d51887848068b18e34f7bb2fb7a9f9a2528b1ca44378de0753769361578ae548fb1691e111b90fcd6a1ab19fe1140302047c435bb5006830660231008971b5b09310b49199b993ac3aeaabbeea7f5f39cb910c7b3c5ec3ff99cbfa01c034f039c933b6ae24fcf80c90c2a991023100da8793a4f411eee9732ef825b25494105357b77c48d6c43e6ebeb11d62f1802da0530adbbe75c4536d9b580b385edfc50302047c435bb5006730650231009a4ab5396b76e70d5f72037cdc30fa665384d1139ce0d477759c5beb22b953d185572cc320aa739aebb034ba4cfaba2a02304dd97f0ac5432675e1848ef32f809455abbf45e8a52fb6e94fce2b6bee8cb31248496855b5009c227ca2a07d095f1ce90302047c435bb500673065023025197a62dab9b7a12fdc81c731797b1e94b3d6b36aa518554c9d94f841f9a7b70bdb38c7b24977878e275a3eda5c0c52023100c1a90f70f6b1a65c7c15454f5aed9b00956235f1f2180f5623510b9d97dceff3a68248e178a9a10cc1140b9cbe9a2d770302047c435bb50067306502304f1e884bff7cc050ac36c0e4882a7729ade2cd94670836f95a8de73ccc284de7cff5c390df8280196bc39ac7db65bec90231008857894d8bf173d6893c333ac27b0093904ed1c06e2bba75d6ed427001ac0ea03ba9974c707c2da135a6a35f6d7438650302047c435bb50066306402302cbcf8db5ae45250c8b9dfe6bfc561926b323510157b6ab973491ae068240792e09b75e869701ae37c90eafa8424ca4d02304ae490f3fdcda4a6fc8720ccddd1c83766d6b8f35d84470588604555f4060f8e1efb8d9952263f42c3d4b600368ed82a0302047c435bb500683066023100ca1501cb25ec389d138243cfe1650fb421a743e949085952367ba255607cc20d29d9c923c7892db2f39dd58c37831906023100c125595a1f48f4e512a1f011ade16f25a89156400932211b87313334dd2d531dabbe3b75fa40b423efb1074f45c02f590302047c435bb500683066023100ff7f792bcf65c83af05061b481450e02e3ec55d553ac8b61248ef11d83608e2e517e9b3e7c882fee6500ea83e4e7c545023100928d19ced1d3bf132c157aeb3ca791a37cf31bff69fb279991cd680c4b966090712179de9b2f2eaca0b18532183945a10302047c435bb500673065023100f76428d20e778d0cdabb8a722def6bbb3f4a9de62f56eabff6e6a4c8d9f8652422bf4b8618e0cb6ea231ab2457f1701c02304022754fdee73392d6879ea7a7de6b8edd321373ebabf15adb670a00c099d31a3dfb77889f30424728cd75f334de88150302047c435bb50066306402304e601cde6032b74cccd894af44a6124756660266b1737cc0cdd84e7f5d786546d7628462b1ee933e2bd360d612128e8f023042d32cc3faed4d13d8dff7e08c22cb250408510c6363ddce9129f996e1a19006f78504b9ddfc7fd99abc80a409a6d2a50302047c435bb500673065023027e67da14db233f2fdd79683542234525a679a382b895356fff6cf19dc05fe64e3fbcf5bd809d80d4205e7cc06e6ac9c02310095e635a0e91af682a6090350e9851384cde2daa24d365b87fe116d21d9ac7b16def65363ea12de76d6867a0f7684ae1e0302047c435bb500673065023100914a9679ff4e46cda0cfcb3ba0028c1684b2eb6a1f3dfdea6c86c4625239ef6fc3d0425808b2d9c5f396231de805524002306f7985f6e554534222cb9d5ad6e410a0b0e882042bc0bbea90ae5aa8ee71982286355a2431be7b44c8bda8dd6015771f0302047c435bb500673065023100ea32bfa89c363b819716fb5f54f5bdaa4edb696166143d5cd89bbcd0074c93c2a80f249ff0dd911cd5f4b0bafff42e1702305b472a88fa904eef30ae04455564820036ce3cc64db86f8810af13263ba0ab96d6e2e761a4dd10599109bda602ed02e30302047c435bb500683066023100fbdef748ae67e07f1bd6861de1119eaaecdb7cac195c98569fe4af7a2ed4d3f8708ddbbf9f191d18f61685a7444eb1660231008fea128f07675c89c1d8308afdb41d17aaf5f5a32d6f5ffe2598bc53653fc89ca4b66d3232b5f19e30f00ffb73e7ff820302047c435bb50066306402307fc0c32f99571c931ece699d39605c89b4408f5b9e80493caace2677415b5c6e55bb941e5587e1a89300bdcf7c0c32a902306afc27f59809c8aca67518898c58c0e6fece1aba0df4efbea00da8df1dddf896e789ca1b1828d241ab7fe80445d9310e0302047c435bb500673065023037b929c90fb8976e9a99502c66df020483aeebb4b7b29d28f30598c63c81b70b1ab779ef6c856a2c820920be35ead832023100cf133b296245ffd13b48ca34218b81625ba911e081f7315a67c792efffa578ace6979fb50806d8d168a05bc177b68abb0302047c435bb500683066023100cf55b0d4d98ac196ea3b20a661b08a77e70d7e9a8e6eb6f58444a8ae43f6ca698a0527bb70b712cd0cd030f82f762001023100fdb9359186ed28b7ac7973ec67accbdd6c0b14a9cc46414e28cc7b07f32cd8c2b31433c5968dc2e133df9587105910a10302047c435bb500673065023100a3b7105990a46c68488859502af48fbe31798cb7bc8528b11e869537f32f9f21ebdbf476aceae8367180f5fc6913b09202303c7d29d109d8559a525a809ba67d04cfe01fec348fe15a706b24269e9de30fe1be3053c2ecc8a8f93cd4079994ca17bf0302047c435bb5006730650231008c98b3785937d999555781a7467d30d5d4a6cca6df08ff95930be7f26061a1605a0a30b3b473dad644a92edea2fe6cb402307739384cfd0e3429d52588df9ebb96f623608ecfa1ce5754596d8641f2baf66c8102836c499f41f58d9a3a32f3e644240302047c435bb50066306402301a8edeff444acb600e7be4a127e5cbf1869a3461fe974652a914cf54547b16c2af6476d83209acd16f7a31b08f5ac30d023067dc343f407c48da79ca15a0dccff966a28237c37e866fe23538ae09decc70a92b32f75f0365861a385f5f5e2b73bcde0302047c435bb50067306502307571735d84c7cbc5279a530b8fb0061ac737609e040cc58ee53a2ee046c80badc8fac5583ce3c2d42f7e1d7249e48fcf023100c511d9e3c5ab4aa48bb7547e31321c5637854e09617d6850347fd8196b3a02ccd86672a5ff9ef9b289fc873f77f3d8720302047c435bb50066306402301980c28a020d1978974882928dc403fee08c0c11761cdf12aac085c3ee96c06a30cb89d8c84ed71c24356f9f41930a6e0230230c0e6235470d057b16b0fc921a0e63a20832a1771d286d3fe6bcae54e8cc4543daf923fb06ec25cabf1b2be66ca5a20302047c435bb500683066023100ab7584ab7305eb80de110fc5f662d273d846fd3d3b8f2259d2ccbc87c3ca64b83b95ebc13ac7a57e8a67a4f5bde05d8d02310089dbf48e89d4c6acfbe2da7913828823376e1c5ffc1772128fa7d031278f41d626a09943a64e5d239b0e47ad82e7e62e0302047c435bb500683066023100dd33e7f630e62ad68b33ec777f1d1444d61fcf141902b724555f86a586ad1ca0cd4b7693192a0ca4fc6b5a755b1a6059023100a2ebd1c844ba6cc4e85250439c4c839d46d16e50e7be624af8b21b850f456b874474fb682067b8d802ce83474f28f5ee0302047c435bb500673065023071f5607b2605e12dbafd00513e1308552d2611a6ed870dffcaf1627a986228b30a27de75e7a47232e434732bcb42a1be023100c5362b6e00c38cc20aab12d29abb92aa028de386f25488b70088f6d534a3c8cd30ebefd208518442f80db496191740770302047c435bb500673065023049f267c9fbac18cf040b2a0abd029075675d04f1654a683204702b3c31bba4053d7aa5da458e8fb17ad21efc3764baf90231008d820be478c5cfcb29fb4ee4d68b10b5c57e8d3882ccb96463b87897773d58ea5a624a53eae665cb85b50701d03da2930302047c435bb500673065023100ca06fe20beed633bb21f57ac17d67836baea7f2c6c5a5495d79a7bc295498feb7cc5d43f2f3732281eefdf648bd52287023005bbbccb256ff562d182158d7358aeac6c366d75e8e44f3fac2cb435614b0ccccbbca67ff9fb4ddaad9b10354a6018080302047c435bb500683066023100929745e1b96a7545a2f1f6ccebb5c9680a6e6d627df90e637f569500e5e0a36216ca1fdce4fa093cb3083595cfeef5d9023100f7d0134fbfd31667917626b7dc4919911e016cb067d5020fd502c19ce901084c19971c5e48719f7293564b81e7095b5a0302047c435bb50066306402303a930b6b203f317d413b99e99ef3daf1f070d4e93c38f32068206ecb27c5f37ab089fafca946f2fa13f2914372d0212702306f934d48a4242423d6f4bcf0a14e9efdf8611f6a81fb34764fc58f7cbcdbbe24d829fe0276629c144be6e25c58f4a4490302047c435bb50066306402306f7189a0564617385eebb190c316c87a1276501f517fe2f0aa700dfbbe40ce1a5502e1cd370497bc5b6b45ed2750c374023041a38312330024e0afb39428c7df1f7632060b6e8d323ea070b8f48c97dc6dfb6091acad81cf08d0aabbf9574d7357200302047c435bb500673065023100914f50d042160baf0af29f01f85972f54da8d8e019c99c22ce9d285e36033c6a78e776489a46cccaa622b70d0116f9bf023040176ab4f93652d6cbbe2326799a9b435b5611ae693c85ec1a923b2884a38ea3908db05861f35a508fdba874c89bc6880302047c435bb500673065023100e416d32f366fe6710921bcb0ec1ca44dbff4f786967181306000b72b181c9ee24fbac51d87c1f8fa4f7ad85d1524babb02301564ea9c132af0a0d3135d480f9a2129c2442f7c73c84bc904a5fe0849d083b6a9e9024f267902ea1baa60fece85863b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a7efb220e2e6b8d27897280acaeece2ffa37df78be181fefe893763528f2091ff4a5eace2ff9fe2f688ec9c65812783b02303f96376d6818684a3174619aa438ecf9b78bf053dc2a7b25d8cc1c6bbf6c655966fa4ceb15c988bed486ae6ea12a9bcc0302047c435bb500683066023100843ad409a70d9525710f038be1fe239a5c1d2db5fcdd617c214ee4c22a62099c915599bbec94f38649049f8f63a22013023100a4fae1ec2c64f3a719e92216870d402fa1c92c6c3701f8928be48a12d66db38ad2b0ea16269deed70f80a575fdc5c7590302047c435bb50067306502307fae00dec673a288ce0f512eb999163ddf21b427f681f282d636c6a5ef4ca0dc451151029e49090013f8641b5971b8d9023100ab8d20c83f40f3407fbc7f03f5255994e70dfb1e060d895bafa2de14c98b8ce7b6cbf5066e8cf03bbafde0d3bb4436e40302047c435bb500673065023100f2466827da29c69fdd7d41cb6820a0ece51080cdc92ae45c6cefa478e66dac581dabde89c0e1f842b3c9171abb727ac3023029dfce9af485f686e4dc2b9bfba954353edf72e31c3c279a1b5560585b0c54a8bf4a294bc864c25f8275f4d60a6c99e80302047c435bb5006830660231009f0b0cbde6c8c57e597d9dca9ad7c7d6e59d4fc99776f652347e1bb29d601b658cb7ccae4ead11a4e39f4820acce915a02310088225516701cac0a0f25a9f0617cf081747b773a7800ebdbb14ff65f1fa1344f21d7c65987a9895820e6325b3ec220140302047c435bb500683066023100bfe12628bf1c572a99b74a4fec26fc30644cd2d36aa1f512df248011722fb2282f1cb303dc774ff598461c896e0682d7023100d0f332486fd292b1bb54053b5524c252e3f657f29ab36a5ae8ca105d9267a29302690570d48024f123bfdc6c2e07da7c0302047c435bb50067306502304cca8c0c3d36a0a6f6dbf19e3b306deb9ce7394253da6b2cbcadabf3b360852aa826b09c6b112ba540432f5f943c5b30023100fc6056e09e3904161fee8f93fdab755bbdceaa7522c952a958bf05be8d0d11818584870836bf87d2abc557a33a537c710302047c435bb500673065023058aef5d2d0cc46fe3a6ee1d09967eb5333b8ba876e3684fd06027df8cfa35ec0ba2a66b676b56f60cefa32a0f722a06c023100feed3a876e41e85d0c177700be5d5546e7895a56494f9d2ecf8d4ebaf019c7f90381692257490066768b79a8e74900b90302047c435bb500663064023008b01341661da54756cbfe2d4f253b378cf87932bb6444b2e63cccce117fdd9d24ed30db09a0288f87fc02ab748e87e902303adf5b4183d530945c0f202aa2fd9386a2c3b9f1157b801a672eeec1ddde3ed6284664aacafadb4667d47e13d86c9ef30302047c435bb500683066023100cc531a5fc748014dfea73a819f1d1123bd491bf61f6e10ed39e8ff2d10580d27184c7240a538f784ad30a1df569be508023100b277fe1e1ad2d61f5c3f9c1131449550938b36d3526ddcaf7d20ec2ec889f77ef374f9df1d5766ab0c65cd39b808b4660302047c435bb500683066023100e86a6b43834e1d8943d1b06ba3fd56b2575d42491e3940c77f48e35ccd75f22ab309b95bb7371828d4d3b9f4100e3074023100b6f5da036a35399e02f43ab32e4652cc42696c9f827df5bd695eaa83ec1c4cba280678f4f2f232226772ba9673d738840302047c435bb50067306502307ecd28ca72ea7e0ef1ea3d64fe46f08e5d4ea84ec0a24d27677cdc94672e5a016d11b290bec927af572a9114926fc669023100c0638ec8800aa06705cd093854fbf487316333a4259edbab076467ad7692a447dc9f44b71f81b7a2d2461745e81d36d10302047c435bb500683066023100df8f6cd90cfff83cea2b9db67f55c8723ed313927016b7b6ef445d0b7ffdcd1f1478dc31917debf3f86ecb248d6c9f7a0231008a676ce50b6a795e03aff5bd13abc2e01cd3ce9dabaf50cf907721266bbf1609863e43ce72b9245cdb14dd3b3f6526680302047c435bb50066306402300a3d94f5a84dd35e36d35d6f7cffb9be0a14cf3de044b3e4c9dfc20fa60e1b2c699db7200ac561a412991eac2ebf268902303036c59b859fa4a2282f828ff949a0c3e42dfd7c912990364194403315b00a8423da6604acfef01d23882fb36c89089c0302047c435bb5006730650230742cd20945f7b9cf07de8b030735ae1982cc7096af6cb2809046a3796a67e81f5e0ae531acb31218463d24de62ecd92c023100fa194ef0e44a69859a8e1495a90bf7a116e7f002855773f7e55d30ef108bac6a9f5dcf606384d2e767c96916c3a3fd420302047c435bb50066306402303190f70f7fb13ddbcfecf7e3d3e2e928a799303594f5eafdf52245d61ad11950333e3d7a8ae502120a41f146384ac6f202306bd2579d20e727fe3d9d6d1f3748675bfd6e802651b16359ba30a472dc075796eacb85daf24a4e873d2a2f2070be49be0302047c435bb500683066023100e4800845728670c866cd745c5854a92d5958efb2ad80ae121df265064ca34d9fc24642336e53e9e8eafb93a92ce85e7802310095352a1d1e0de8169d5e9bb135cef7a485a5a30ad487a2bcd49042c11303502b048cffa9de8d15b1fc6473bf39cb27ed0302047c435bb500683066023100a28457bcfe21ecdf7729ed14855cfdf016403c1f022146acb12b5899f852c5a4b622380a0ba714bf26a45aa8b94676a102310092a42668f9b2d40faad7999ba77dbba844be7a1ea91f65589698ebe7b9f8c322f3a684d0a46edbb7570fa756604189610302047c435bb50067306502306e2e564eb7f8e369c4b03136e1e29d2b92bbdc7719f0147908d43ee684c98ce8ec68696e3c4e952bc83cbed71ce73e1b0231009bcae4253272ba51a1491b4949a3814a8a2dad2a822497941e210f31691f48bc064fb834288ab8ce9d84fc8270e998880302047c435bb50066306402307fc1bbf810f2e9c6acdd0d48be3210f770a7ef85080a3cc8e23ab7f5b6c4e51f0f077b8cc8ae6bf238d25a5b5cc00bf40230036b7e36a95c866c4aa7383aa76f38deb2a15b3537faee58ba3763cc247a5d851a26bbd63780192c201579625f7e44bc0302047c435bb50066306402302527610c0edfaac731b0270fd82fdb05b16b39013542750b377b48aab6e090bc3733be5224c4a548879627118a7a1628023027721af2512b3ed000e7c50f23d3ebf62c1536bcd74e77973fb61499ed71ec14d824efc8e935379cc6a668b9c54659760302047c435bb50067306502300e353f67f671d51a7e2e0f65c8e6313f22b367067d80c405ce02f6e611fc99ba905f7fd39adb423bac0bb65099e7bebf023100a0dacf161a674ea9d4a0f1ad3d79ac08d0d5064fa9a56e7b4439637a1e82bf95292522fc421449bcd10788d58a7bf7f10302047c435bb500683066023100f6d8f2580bf2e09cf62b66c61246d987853faa36cd071a9df3beef4f066bab76f08823503795ec7f03f3790ba9664667023100c3f69ecf69cc02cc564cac36fc290949f83606100586f401295221e6bcd8324a4d9eff9f5d492b1cee261219fb1f38810302047c435bb500663064023067e3ab84e9d7bf405fc9bd375e50d5c5777b2819e1166224c957421b578123d8d4a5632d332ac9e7229f12251b1b765402300336cb89cbf09a40359b34c90a37ff3704358b9834625bcec22c307656645852766e48e3cc27a8a728760c154ad9bade0302047c435bb500663064023045537bab3bfc79d2405b212927bc573698e5e6521dced845330941b510cb993937cf098198967fe26ff1f2169b8ad1650230597e8a25038aa569b9a126125986171e63806ad32ada955bae0cbea5dfb5fa1a1d8bc4f8f0777dfd726cd1959897f30e0302047c435bb500673065023100c38c3f7b6e651d096d081bf7deca8219149b85e7c8873eb2437e1483c9a9e52037f3a8adf5fa7f9a77d2b06d2851b215023059c8c1c1ca2853700334b8aa8e4ef7e04cacd4a4fb26d047ebb635543fcb2a5e94689e131c335ba7b2369203685164940302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230022d9617dd3995859e0adde1841c9895ac421b7b3f8fa842c27549649ab2134a47f77912717586927f8043c3315cd6770230505377013cd3d2f6e8e145190f42acb4930ce7e7f973c564c86bb3a91ecd0d551b3bf5f2f3243dc5bbfc9456ca463edd0302047c435bb500673065023048f4d48e6de3c4f515a4196bd8603840988161c340e0cb406b1b9de5b26566ba2ab82b52df7e38cbdff3ce27e1aa07ec023100c0d4f1a21fe6fb837b3c338af25c1482220381024f593fbbb773838a5c97ac8fefbd1ba49e383d0f7684a06a2abcb6fb0302047c435bb500663064023079fecfabc48ffed79467fa382b5ee969609e8131c3870162d6cf534cd92470bccba556e182732e5a42eece6240b0efca023036d59793606e4c2ab6c41705b313a322c6f8846f54a2678924023629d0602ba8061575483607e7c1b48a890692ce638e0302047c435bb50066306402300507350eba779f08ce398d65bd1052ebb272740da967080e62a7b859950320c1e6fb30ad02d638c27a84edd925b18303023078524589dbdb2fa49e51b8e6befbe3b0dc932174b174cfefd0c25cdff3f0d1458164e6d91a28f7f7218f0f782a978da70302047c435bb500673065023020211ddf0fe475401a7217a6d57f5e70f14c4d154ee3453130dbbb0d414c9e71982bbd95e21a6b090534e2ad1403e8f9023100a36b23459ef59887c2e6ca4fa07900c4cd4b0fae061bed2654ea769bd86b6190de0bea0ddfc23daa8abe326f364496120302047c435bb5006730650230581cacb964817413da0b4eb1b008ec4fed0b4c4b1480d90464c18b5ecf3e20017a09476f6a3facd6fd890b03347f8865023100e51335c51582513f7f13214e156e64acebb2b21e15e12779beb65cc584a37ac8eb272e0f587615c9d876315eed001e040302047c435bb500673065023100d1d72b2012c331413ba3a3ce25574c80be1a9d7cd68e30c992d12f0d68b7dcdee83a13fb1c622b64ec1cc4243d57960102302a03da28362ae93e9d18ddfe3b575a08a892e82d7103a62bb0ed71b0e904c3223ebfb7c865d2548b151bf726c3b7a03a0302047c435bb5006630640230169d82789f46ce3bd69b1e9a34d1d7d865874e5cb11eb206e17642679eec7eaa2b74e36f4fafb8ed0935dce85aa5d71d023038abf7323cf024edf9607068664a10177916d5ba3fc10fbeebc19695150c0dc19f938d55338ac19b5c630effe5bffd4a0302047c435bb50067306502301bedb04f63ad6245e5e22c7fdc9a6daa45b8bb07c9e22018bb967801b57431814e5ed0362929af938cea5ff2e4f1d31c023100a0881f571a51dbbd9b3e764f535168be00f59728b05982ce2b08a3757b311059e6dafbde07d1803ddafbcda8260ebd070302047c435bb500683066023100d32fcae55de9592ad1496bf03e6de4fae3cb5029f594fc27ca4a3fd9d63e5b0fa1ab5787a5ab447654c7387c223a2b4a023100bbcdc7572ffff0d28b93faebe2a9172dc134c77cbbc05aa89eef3ec78e70937b603f67687c70d0d71f853005c3f9e9880302047c435bb5006630640230453a760117e45ac6d3f688b261f71bd22c6f72305a5df8b875510adf8cacf39ae80ab849ae7254c99a6a328f0a9887e002302a61e85e34a01f8ebdf2222aea7a30a42d48fe15b6f6bafdd5eb4da41e20a9670b5c22c40d23c0866b56caf0046036cd0302047c435bb5006630640230016f1f68886a4b5ad2db4a4af1c3b0b7211bd8313f232c88ff436398aca2bd09ffd9c49a62c95b692bc21021ab024f88023050c12544fa379597e74b0b3af027c90d4ae4176762d9d22b41d4542b0962fa9780b2784c6a78289776ec16b64877e7140302047c435bb500683066023100ea25195252412b807fa63b64a9ffa1ecab565a30334c83ea3bedebb799a6662c8996e5221c721b52991e92fc079178660231008076405da90fdf91b1e68b6dbc51b20d5e7c0733064305c7e5925f2d378f228ad4cf05efd90b7a45c538b1b73a336fc40302047c435bb500683066023100c29ce647ae42bd4a7bb262f0c8b8bafd1a3ba1f2fa817e0341ddf092b8a7faa2578e01d8d61adb315a652e4c8e2cfd440231009a8cbc6e77e2fc1640a8ce9da536f1aa14a15397a5bab87d32cd65ce206aabe24ad797dcb9c182d428224b77e98e2ae40302047c435bb500683066023100d50bdd00952fd5b8b1856fb85467ca1ec494d826d2943755df3d90ff0346944058bc97bc75198cb94ff8ca47a8fd48ef023100ea68da404694084886082cb12f32795c9e2a007b45101d0202a8e15c138dd5f28384e13ecacae7bf9e04a634fd4401bb0302047c435bb500673065023100e8e210c1e5a745a2446fb60e96b637393e36b1edc4906ec23d67b7ac8019d9b06fa11e226f4aa2b874206b8dcef8a3ec0230558e37db7d317118488b06a924c3b65b645f1181d1c7f44c613c27958ba21db047423833120b2a6884e42e49159f191d0302047c435bb50067306502304344f326635d3ed5b8f90a41bc2fc3e27f64994967f05ccd53957b7465d7f98fc261ccf492644b98117d45aa958328ee023100b7da2502a8da0e9ec80cb40b844411950b2ba37f940646764660f78a58457453fee9277fa2077fed918aca8c1d43932b0302047c435bb50067306502304e9efeddf7e62d2eb78192c4ca841a3b704b4e5768714f8f780e2559b826662a9b7de81d3d9817943656ba550d51dfae023100ad4e007186a8e4c51e85de6fdc7f06063ec55cd6775e0b088b7f732f3b5d1a4fcbecb1b5c146e4b8791f3a57e4467f380302047c435bb500683066023100d51cf84c0cf5d1424ca5ee8efe1690a512b17e84c4db06f90e55dc43125ef622da39bb9b0a02c016ba87ebaa0d690e9d023100fa632313adb64d41671b40e91923ce7501dc24e79dbcaf970a038b8405d6500c05b31f3d8263c0a3791d43b51af24c9d0302047c435bb50066306402302a2dfcb18e78a26c4fa21589b008d0870c185852e9ade03baee2f38a06463585ca77027c0a780e0a367872b28c0396d50230623463a5dc08548ed2c4eb92804f9f6aa1a18a660ebc86446aea917d1884eb2e6484f5a776f8f1a7d49e648f894f99b90302047c435bb500673065023100ceda4165a37829729b355d1efdd681ff97109ffd35a79098e07abe07d7f148d97157c7d6570e49789879b402fc0f6a5802301941745c500bdae7a1c9999aa3a88958dc10c3d85ff18030671b2f96d6621746792e478af73dc7f19d22a6bdf116664a0302047c435bb500673065023100cf9a017f8e6551425b9b0117dcdab9419edc3a7bf42d32066c38cf5ed8af12d57c3251907793ea65184373d58905dadc02303d7de3743d726b054a04b7dda8ceffc1b503af26523099f95e0794b4e576d6ef9c2bcea4d40bd28f4c8da40cb72e44b40302047c435bb50066306402307dcc3dbe301e7f7f17db0ad3c1f6320437bf199e4e711ffc1de4d1b1154ff940e59d0b8830b1a828c624125017580e6c0230655cafd64ef6fee898f6af075c194a28bc579f8ad38b9f737358e851f6abbc223c2ea5bf07a38459f10192ba81ad54f30302047c435bb500673065023038393025309e1dd45a541454c960eb2fa345c2482cd1b5fc7edab3f2aca9f57484726416e0c6aaa98abb9367dfcb9d10023100c08f8af04796268a6a19fe29057053cfe7c7144419866130c6592f897a75b2bc8715d82629dc61ef9e161cacb39c431b0302047c435bb500683066023100b5f827d5eaa0942c213e1c73245861ebc49dc8d91b6890f9576d01d679e96a8496a8b8645071284d1ebd179f3afafab502310091e8ba3275128a7d975787bd29b21b6d542083116b88c1330fa9e83496c5c3ee74ea3dcd13bb600c54a72c9457dc27e40302047c435bb50067306502301ed0feaf22927f9f538d1013c8e3b5030e5f99feaedf707a8c02f5074ee2595958ca7e07c72b43e3c16795550239c1e0023100d271b816436df0fb9bb4ffc62d4f514b418e9cb5d02f4718250095efe7bfb56bc4f023d3e0ce9d3427d2ffafb25ec5f40302047c435bb500673065023100e4d6ae4bfb6f6cbecadb7c0aa81264d8c0639efdb9cb032be2d8c4f27d8d19325fb070db5a58a5be0a217aed4e555b71023008c09f7eb0a86c9319cb7604f67039fdfc91aca6b578dafef42bc23a0f0e55c39db49ee94aabf17048e061560516a7db0302047c435bb500663064023044970f286d706738280520a0472a42b4dc6e9ff132e33b2ed018b5a27caf8fe160cdbe1f97868db229d0128d0e6abe640230029cd247b0518d335a6e9a6b186c79d5e34032e15f296dc6d6b6e02828b5a7785051f49df6591b7a20bc82c39a44d10c0302047c435bb50066306402301c24ab5fda80a9648603e77d69594f7f6a14b4ed2f91dd9ce8a6a1b619c9c1774978b48263baffd55eddff1add8dcfac02303e807a0d2b503e6aba2873b96fb1620b93c66ce613686fc458d2854dd669a74eb7feb1be6897da103a458c021a6011420302047c435bb500683066023100d5c9f902ad2bbc75393064566c0ca1a055d1a9f80474e37911b17d92d02a42ce6fbc8060a53bff7b40549ba74d18d8ff023100f0889001027ce3593462fdf2b635074df817216c526ddce2fc0800510746b9ed24e56602ad37a858bfa755f66000bb940302047c435bb5006630640230032b41087d967400594e6ebf2d023a48c472b49745360e57374f24226deceb1234576c6c33abc1553e397a1bfb32c161023068c94362787a99cfa08ef47f95c9b325594962fd6c0d32f39e5fd5ec90fca6b83c4b1d503771db7d000839f134f5a5c50302047c435bb50067306502304eac4f54f788b88d7ad2feb532221668989e73618e1435936fe932efaa500927c2f2661a680afde2a59b6ee3febc2566023100fe11e0f18d8eff9e8f9fc33eab971317cc64d71e7d205042bacbbf2c696b2909f07dc9c4622fcc493a19bf5432e97f9b0302047c435bb500663064023001e36f09e28fc52dd375e99365a7996e64c100363b2f40dfed0d4d40823440e1115035f05e68b2faf5f565f166d2ae8b023048a84c1e4bb09e192cbf655e744b5c57da8219aff2abfacb40baad5ce1288e51cecb8537aaaa20c7120465ec0836605e0302047c435bb500673065023100b31b2b60a9d225fcc83ab9a8b605c893744bb70e942f720867c5dc6cc075d9eaa5d456eff2e1d356f8c55dec2f22a3100230303159434afe52e4e6ec67f702add23c84eb0bd1ca41adcf0d6c5e1594e5d17205be9cf0418aa5472c6d059f3b9cd24b0302047c435bb5006630640230230028eea70aabe3e021d931fb26f90808db474495561ed11fb43c53e887ba7ede4441f66c286175bd86d2ab4e6a72280230714ad7d1f9ce056d0aee7e21301cac0d44dac68bba141c38062efb0da431337f734e65b309d961140a10904876e692fb0302047c435bb500673065023100ef33f1ffec07e146876c9061c5b85dd104333d742896307dd66af28f5e47a535337211d7160f5f5a8b5f88cff5a78d2d02304bdd9d768921a0f2d004a5a861f7d7e406aa6461237a6cc7f3c77d47dbcad42ea9caa527d3c2bd2aeacd006b7971ec4a0302047c435bb50066306402304e390c00b3ee405dfe27aaa948e7c30358eca9afe10f683169ac3d6ce269b8fe694e54eccacef0c46d379f61ca250a2b02304324138967ed86307f25231cee78a2390bb890b3bf81e654b14fcffe783251f84bf5db86f0b3996de1f8534f83ac4e090302047c435bb500683066023100bf4f3268476e76c280469439d0515798b437d074ead1765cfafee74295d98ad7bc325ff5fe208dfb1040ff0eeb89bf500231009e13231b86675c3edb5f8710d6c5e482b870c89791e602147806aa042f23831fa14bcbb84f42442091a752f5e2db5b500302047c435bb500663064023026ad0985ba4039bc92dea6ff798285201aec047cba0d88a8fca5f0f02a547ebef24a71a194049145f06cab0f2fee39d3023015aa7c6e507998384f20f8b17f308326999d434de0033ec44004cf5471a03cd1b9d0e49a874f39d4dfe1b5fa827bdb070302047c435bb50066306402305b0248461e27a3e3212c8f818021bdce3e2f5cb4d1142484d4797bd2b7230cc019049b185eb746d269b4d6e2d716165602304aff1b15bdc878cadc6f161a947158b0c9fce2389b46ca0a950f8d7be91eb38b09e8abc98053c772fc35a8f15a44bb4b0302047c435bb5006830660231009dd14afe06f692a35d9b68c52d0bbc50fb2e8d81a41c4bb8833709ca82e1d7cee0a0b79dfb66192c0f59fc9cd42c1555023100c88676d75b63017f0885fd188787c50756f2e47916b1197a7ca2ebd5f5e739787128dc79cd05f3ed09daf80266499f300302047c435bb500673065023100c3a58a445094e2614743314b1ae5264182daceb15e916b18b7620fde7fe93707213d6fdce1be19da9f5ad3eccf22232902303e907b367234769b8df055f2d615542a3d89f682fa9f9701ef940b6cb3dfe6a8f4aa2588c34fd73bad204a075a5dd2d40302047c435bb5006630640230664b5790abd2019c95365c547fd713489fc619d78b91b342fab2dfeebeb333fc9c33c114398c79e9f3fcec30c13ba26402303f8a7b19b731ca333cc5ae97d0bb5a8681790dcaf57efc66d25329b39c6bccfc2bb4f8a54f524c5b2f9ee51d87092a420302047c435bb50067306502310088412140b3fe3a5729d9df60a9e7db7cb87aa3d299f0d2def05a011605d26a494334993bc953b4332ae81a7c7fcd9b1f02300de619c2cc1c7643a6dfa2d5f25a9f19fd31f6bf62f464091c179489b763a2384fe6bf52386f2e317bd5ec1573cfc2c30302047c435bb500673065023100c14c99b5f5529e77771c93eb4ffd3969326ef1b8fe791dee6477a54ba60daff866eab5915d565725ba6badc4b149751b02306e99de29bea1fba3279250ee104417e6e679d1f14d7e745af92e49653088dca78b5a8cbba553bb7fdcb23d676ce9fe140302047c435bb50066306402305a32c62f7673ca99fc0f450a1ca96b0cca65145ddfabcf2e8f8e52e9f08e5e1be9cbc59092871245616536828ec54f4e023012d3e52f9f7c1717dbfbcf38bc271819f0508d29ce8738e877c6ceaeec1ddf02cccc3fffadb63c8bfcc64c2255042da20302047c435bb500683066023100dff2021b7e3f5bf773f134d403bbdc38094795809c3eea75334ffbe8013ab90acdfe356bf1d959694a80e3cfe7c63105023100fe83bdf58449ba34684e51287c5997b4fac79339b3109d11322db5b982ae1e0ba3c03f48b0e6622876f1dab0a7c0a2fc0302047c435bb500663064023073078eab0051163698c892a7075f7a33ca341b0b6073a2cf0486204461a0e752cefd3a9f0f115c196689db2ab7b5ccba02304dbe859e65a30763376418a4469a6a800cdbc009727dd359e9f33582b2c49ceb74537d83f84b7b9fb0af8f74cf8121600302047c435bb50067306502303c400e0e86bcac8dbe1c60374b87d5b8d695c723d24f65e48e2deb7800206f431cccb8d08cadeb709f95c9264cb7b5bb023100feab58a83896e117f5c49d66b8717bf372af63e110df7210a40da2b0b5148780da907a005b1f313cf1b0383efbf73a2f0302047c435bb500683066023100ee5432096ff10a6d2839ecfb258c4b6dbf57d300a7795f0fa3bff2fb4b74ab81c973dddbe1fe27d3a7dd59ca4ab98bc9023100b56bded9addeb0d7a459e4bf8cab0317fca009c31d323304d05148f8c0bae3983ec561dc9be2843385409fa699104e960302047c435bb50067306502300cdb36867d17c0bf5f1fecf81fb3b2a0e6343d5570a4a281ef81c1efc7414efafc59993eacab3f35d16c0a2005c2d5ed02310080fb30d3f1fe0a278ed9d3ccfd080024ab6771ca90b6f70fe9a9129d3505ee73eac035df4fb25684e6d0a98afc17508c0302047c435bb500683066023100f2c65d75e4f18e7089d7cfbb181ba866d1c9ae7bd230c69e06b1627517f0bf68572c86ce6d6a5349b33500b93cb345910231009cf5f44b73b9a7c714853dcc74ee770feb47f09882d1ffc486c82dea115f88e98a4f0cc5b52a3ad484e3ffe2238d16200302047c435bb500683066023100b0cae48a5f7c8f59032411b1f6fbc01885168d66f525c506c50c18f6ce76e6f0eb51deea98e1425864413a2ad68f78b3023100d3148765504d5585065733f9493eb0a24d03b960e258f7791f446cceac3c5d05015606c326b4acdd7483a20570bb7db10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bfbc4a408c8fcc289994e7a294851e6de101486a25a8fcca1879d8df4c906581212dff7025dcec891007627ca115e5c002303ff80bf807731fe89027f518bf6fb03813614d1737fef7ff6c5d723540db84830c7494a444ff528d0e7cb9eac97606170302047c435bb50066306402301918b9c8ec1485ebf8e31a830ad6ad49422976a9f1db537420c464160557abcd9f8bd23f0394dd4980e850fa986e159602302d530e538aeb0c38775b0b092717728b0e113cc4644bdf9b01a0a7111572bae25b165f867b02c08016c922f3ebbb50a50302047c435bb50068306602310081bf08fa001d6cb7d7128d5c58244e8bd636e208b2f178a91fc081a26589c8b7d7ccc79ab60fd2628c175f77efc3e849023100e0de211896ceb0dec081f107fc6c53e84549ffe4aa8a17c6a7694e94b419ee79e7d5a0b75e1e446eae5dc58f2653a9290302047c435bb50067306502303627ebb02a3d6d0dcd364b21ca92a9d42f1ab985532a7e336eb81aa36a64c9188e53ddc5e2b671b6db2e50e3b1a7c4710231009051908b47e5a0fe360420af33aa77df29733bd6d7f5ffae07137932f81f42ac83f55e9763a725d1c3949ea3a8fe13620302047c435bb500673065023100a3f1450d7d11d6bd958fc888aa3337b8904df04513f4553a08298791dc3a5c41fcedb779207780a84ea881dffbfa17220230723350d9df20d5000949c9ec2c7496b25d7ca0b5f66c349bc1d3ad6ec59713cbeff5e374ec4054db3c50ea20d0c8be2c0302047c435bb500683066023100c9412ff98265233477a3328683e6d4d4d1134af5ff489fab8dfdf8ceb59e28c487934c447bdf0daa4546730007f595a0023100d90d89a7fec3370b41b83472e6cdd65c35fc684e1fcde2e037790bb919f3d4136a65d15331bdf9d55c5e1280ade7fde10302047c435bb5006830660231009e3d2df89ebea4498e22c2d4ec5343d7ad81414903ce390e708c3dadd89275ba3cdd29b0944e8986773f4f3e78f4b805023100e4a7bdab8467d22823bc0b3ac4cce491bfa27cca9f57e0e8324f3e5a3fdf024785f5328e043619e042a8d5d0324b02540302047c435bb500673065023100f3aa0b9396368d70e09ba462d29757d0a540a1d31d43f6fbe78a10c8e45bed8ff0b6ac1077fd985a1be4dc77397ef996023007312578f0ffabe6526c3795dc4fcec262067e556ccfafb0def67b59e8780416ea4e196bfb7df6d2ac699ccb67a5d4c90302047c435bb50066306402305c2ab0339dd1579a2b5ddf6b6521997e47500953e1571f37faf88d6e31b55719b8e172d970d3fe7665bbfa4b1d7ecda2023007cb56dfe9858dd434ad8eba9261a252c7041eae7d34662b887eb593507fddc2429efefb08304436e582708df70d02980302047c435bb50067306502306d3baa7b7edc94893106b796f1616f7cf8f9254c166b80f094cee4fe5c1be5b5b952229c63d3d1acf5b2d9c325dc8413023100d1a5f3b7c6260a43ccbce01172891aa025bd3c10c7afc2f1059e3c50caf16160887086413d3adb6742fa593c4cd804770302047c435bb5006630640230279783942f2e219275d85aaa015256b9c26d8e0e831b7df6fc0803c3aa859a6326e46c53cfe181fcea385b630f25034002306072f8fea822851ddf8895177ee1b0c7d133710b945f7429dfafd34424eccb326a41724aac5dca6f1aaa3346592b0ebd0302047c435bb500673065023100b6990e87874e46b9c126422c47d89cecfe056d290ef57b131971c2e9bc0538b8c5126dccce8a8e6cb9e55957c1310d3c023036002f06b16161cbf7ea85a6d40800d0d822c776a31b996faa1572d6504bbd39ca38fa6071c494303be9741f68ab64830302047c435bb500673065023100d695d77c82a2d4ff7995a4e60464447ba8f18aec26eebb77155bbc03afb9c267d7a1a94b1a19a32aa589905a17d3238602303b98398027204c8204c7aa8f1886ebe7b604f9bd7235470f2e0acb95ed0b17f662f015f6caef0efb44c989fab32aa8860302047c435bb5006730650230767f7c7c1552632db39317d443bc51933aa0e19d159607fc1df99b710a616dd7b6a4b98e207fb0ccc0661e2b354b8f3a023100d3fb2cfab205a847f8634970d4addea830051459c554efc586d78cfdc3beb45c42fb6008aa8304367b7b5328d65886450302047c435bb500673065023100cfac35e5c66a072180e89d4ec6c4f80c4777e5639016d20ede40bc6399114999b0b705b8adf7ce2bd52fa2c85504a83b02304e78cac8eb35b00bf94b680ec02a79ab7c2b5c5c0ef8076ac0f880c947fd0a2f388f4d48e35b806e5b674e25b7c2b6350302047c435bb50067306502304681778251d1d14a47561ad37ed2cb5153c6600c7b45592a118a648592fcb8cb7b3e8899c03727dae2a5716129d4f247023100e99ed68a918affbdcc8e3d5be32df5d503955751cb0ff7f70fbdfb181fcc70f013ff80e60575946ca237d9370f2769690302047c435bb500673065023100cd2bb631a3615e7af2b513136d4f0f35dc4b93a7d40cbdcfb504e5497c3b1d9c3232a332f87aa58baeeacc53f6e161c1023001ea268278d2e05387531ce5b50ea0b9acbfab048893f4a53ffe989aefaeedef0122db82c8ae00bfc42900dfdf4663970302047c435bb500673065023023d70486ef96b980d64389ad21efc51147ac14e9d856eb7e16adf850f2f2de39307239337cbad22f8f5eb9a1481ec247023100a9e6545ebcf7a7112c65f5e4ae0b15bd898a1996299fd66ff6b596d5a2d6d34c592a7d47803d24526b0cff3608f39ab70302047c435bb500663064023040ae15f89dfc987339abc9bd7049d0eff5ef857a290c0823deec1034036f25329f67fe8ed82f56f9d5d30a52b813ef1d0230756bf9de4c2a90e705f47e183513a9fccc2049522e5f2f3eb6177d27e4a5c62be9a137b4680e44c563be6e1c137f9ad00302047c435bb5006730650231008d7f383178208703566b43ce43c1bf3f5354a789f3fc83626f4c60cdfdf2173958b67abbf8fc8b7a0354089c4c09c1490230442ebbabe00c9d9434f906fd11a0c80b5b28e87f99d80e420d7bbea23a90b522184db754dd957a79e89977c99ca4cfc10302047c435bb500683066023100e4f79110a254a34519d1a48665db6e58d2a98eb8e4e1277e1fdc5bff679e58e3d2e129cb38daa6211af1e3e1b62119bc023100b1281fa48c31d6dd724bffad5b4d07a9701562c2ed6cecdccd7b98b8e369e6657417cadcc42335fadcdc2136b11957bf0302047c435bb500673065023100c79db77a1fb2d3461416e370779b6ff26eb12be03d180bfaee58f5becaba59d1ab7d56fa9bd479d2d76dd1a38fb50e37023003306b053e183789edad625705eaffbce3d2fcbfca17e3a6b003f556ee0b20c1ce7417108866d712fe786a8916d94e700302047c435bb500683066023100d1c487ecafac055fad5a880153727cc9420f5870dc0e49c4fb3a0aafc50a40e3d4008ce852c987274eb355c91f9e0cab023100ad7d1fe717681d4b1589a2a9e4c5212d6a01caea44491578250aa3cd61fb2b9ba767ed87dae62a518bbd16ae56a0ec0f0302047c435bb500673065023100b9706568f03941a8274ff556b433f729f3c87fd220dad12ee9dd752a07d2fd29850313e7a91bad736e02526c495286ce023045418d3742774cc502b1be305d4f41e3afa155368cd7d8f35d16b50b501e7563db5fa691d5c260b94cd251a320e895430302047c435bb5006730650231009931f487cd1db23ec9505f28fe069993c8fe6dcd295d9b3510f08f7578f2117856968f92dd116a20e769a272438bc1af0230352e7f30432dbeb6dc41e55e97c8fe2c11ff17e76e67a2afdd4d05a8270fce8d3988ef1f90fd6d2629e34fef70a3bff40302047c435bb500683066023100fe39edc1849425e188441d552f261a1fa93233b7daef075bc914fc287cf5bc252a1a08ced15906234dc8dcd6d24c3e63023100a17ca7e0d675b1cd2f670de7995b7a2bf064dba8aa5576f4c523f3f76cb4763254e13cf9df7c9a52be4c20a6f310be510302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023037a59104aabdd415e5d8dc540eac04b790c38bce45423f98690b79f51914459f947724cdddedc95394b98f5750464a3f023069ae9f778260f33241c9da378c19a99faa79cdc46ba84a826a709e9e8daf28b3829fe291731afea961449758c8585db60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300ad7aaf9b0313f036172cd10ea0f034f3504db4951abdabb49769548d5a87780b57ff80d34b770f877eff5bf968c2f270231009c32124996511e73de167d74b28060c6edc76720feec3d7704566c57f5df17d912f8ba3e52fb8675ce59678b6a875ab10302047c435bb50066306402302b9aa312191d278833fe06e581a317339e3c47307189c3c81276365741ce5a6d73d016559610fbe9835f084a90d756a102305bdb0decaa8f583ee540a5ac261fb4579d99d99f8b1272ffae927f612b1c7f4422837567492798c02cdf2b9d8e887e620302047c435bb500673065023100aa7125aea1bd0ac7ff0e95682ef23949e054e044aa26fb64360f9cf16686f44658105e724111c15d9f2c606fe0cad11d02305fd2d0c98096de9defe2a49224dc4a4fe4e4cb7ac037a156468bb50dc0d609a03c2102deae3f1637771b06ff8084a6a00302047c435bb500673065023005aef1717e9ab80f31c2edfda66a1919ba0f9fa76a4f3dd46d54b7622504606fff5d3ae13f291ad544cecf307e123ca6023100ffe2069610121836c81a69c5fcaaba33bd2db36bc3419328c4ee419fdea74c3e05ed73b9d0b7d6d62967e8bc10615f540302047c435bb50067306502300f03ee60364b0bb3fed95bed5bb38b935c2799fe92b8cf9eb796e83e5cc30cca2721555bc8f288eb7d92030b6bac3efc02310082329662998e4c99443762d01693006aa67ef801a11c18447691d25e3838098771bbe086601de5814cae56125cfc082f0302047c435bb50066306402300c6138218f94d68e838b15b71be3f55439eff1a720d0bd955189e561365fdabac32997e3e8d70a7ede173efc54586875023070d7ec91d78f9994a5444fe44ea25c0ad8d894f0fd1c53397f2ae1a976c3a6ecdece0a9032ab359a0f27408d5ba1d8050302047c435bb500673065023007ad79aab7a0cf68092a4474c731611bdd87a4255506d3959db95517d97cdbebf3f87788a7e6694de29059d2946c15140231009f34fbc081570b929aa0dd2e50d246bf42429e33fb2a87e0467b41508eb231d59078de0c5dbce7dac303b0e9c634e8f10302047c435bb50067306502304eb50f8564423d2712552b935496bdda2036c63e3dadd711b33a228f1f57c810a54a37d4f348c49f97f7ebc2555669ef023100a607ec3657e136a68058944996b4191094d8c5dee3022859d0759b2fdd1f95f748b12b7ca3e7e59a47e86291eeda206a0302047c435bb50066306402305f86c9f9961d8473ef9ebbcbd919eb64dd6876fd188d52fc2d9455ca17c47dd9c0b8104b6a9b4c3f9a28653726fd700f0230174200efa2e4d65364dc6c22ebbbf3c6562d6039b439392bb9db9304e5626a49a3a643ddd161a899e6b0fd61d120e8a30302047c435bb500673065023074a2fb409b2c35de168b6d8aad24f4060944657368e19533e003018000379bdfe4b6d821b23aac401ace8056497cd845023100fb2af688a4a574afc8249988473da1f289992349675e176f7d53e31e0b02dded526bc215784df99bc1d7f9a1d95bff230302047c435bb500673065023100c2662618052e6f4ababaf821b57420c43af7bddfd890fe6424829a7372cc34280262e649017a8a63899d6d14ba6646af023052528887fbe580e1b0edb7c5263e4c4672f80141a1f83397c06a02a5f66cfb0a8fab5d7e13b7fba50f0c330d9e74769a0302047c435bb5006730650230161eac1305ad0cb9d0282d027448883712261ad22759c4cc3bd36de59aa05898ba3277c5064129506cd384fcdb8de166023100f3ebf5f4fe8df393b59b1a7beb1ae3a5e680eca0d13455cdaa79387990fba5eb1db94a5256481d2d9440a95c71b8b1c30302047c435bb500683066023100896090a8bc4e4d2104afb57a2088174a8331a31d8036a3be66a572c5b1d4693e03905acf77e0e8236ae65d643a4cab2d023100bc06f2a1025581e9547b2bf9fe523d13b0f410a2f9297bf91dfb990fb4c7f3adceb967a487d4dab1b1d5f045f746c2510302047c435bb500683066023100aa7a6fa2dad9a5f3f30d62c041b37cdbf8f05ed786af7f523234923d0238240715baeeecb8d62ccc991a7197834ac4f3023100e230b769d67c75f6180e1f1609bd86f64283a5ee42ec62d16d52d662cf475d84697b530c06cd5dc241b0d72f125e0d100302047c435bb500673065023100f55fd216a78c089a20efb56ca6ad6f94515f4e17be1b1834ddf1e623b4508920e301e6940024fe450405badf6c7733dd0230579ee42bdb951f94ca85b4684d74c9b27951a43498cdbf01a519cb52d6d8f17b6fd3563159e7dfebce88707bc55a27d20302047c435bb50066306402306e144946ef54aa6b3128db108e980a6ca98c1ecee28648f4e3a87f77c4f601edbe346b5f83d062335c9d7e8e7e774dce023004e9f2b32bf333378d8aee18dd456ec00e6108b7c4eb38312dcba8bb6f831c40298ebca77fe3375078a5e808525a09000302047c435bb500673065023100e8e4d60332b58067d432ac7bdaa37cefa8a5ac1ecef0a40ff32c907b0c854be71c067bf48f2d8a1edd56a9d2828065540230504dc3b516806c3f647cf42c23ff9543222519cdfbaa85eca5246fac0902cb3017c2d2a559e950665792565297749bf50302047c435bb5006830660231009a47483ecfd932e5b763b5351f29590312d7f0c7fcfe40b232c12d838508e6d3be23dc205513c550ccc29e98ee2d68c1023100c88c6b7b6b84ca00d71b3563e65121feba95d15f1b0d62d698168778a14075d80e8107390dda076f10d6c917ce903f240302047c435bb500683066023100fa595d91e4e48a7e844134bbc310befa42636a8166246d830f0a06207cc2ef2b9ec511278eeccc5e13e53966d726194d023100b294f3f987e2c1cf05c6f77c2f68cb735c21c5addc7e63dfa2cea8694b11e87b6f4ad506b2f8c60aee3ba630ee3819a10302047c435bb50067306502303091b5845aa66a56e74a2a4794f99825903499ea8208023380660097f6f93aa72e2c99cfa53f736cea55d67a1452bc42023100c68062bcd449e6f62477514326dbb578cac6dfa9270cf98aefd95b556b27c959cf0a2f4be95a12a6f11dfa877e1ce9f40302047c435bb500673065023100c680ca2c20fc7061f53c09fa495873dc6b9702f78c80787fce9359a64319d3f836188df61eb8460f6c230828b7ab2c26023035eed284c0b0d861e6e46d0918a1c8002ab957aa93fe5bd6fbc91f6dc3b6e59ad9fb8bfe175fb5de18e673125e8e17350302047c435bb5006730650230403f090fed9039eef99cc52055508f12eff91aa1c134cd06f64ba4c67828ac51503459660deb406a3d1af3a053b20fce023100a9ed8fa9a78a1551ac5aedc56c1dacf760a19c9cd4c1dba3fd785b2a1f084d6409d66fc95757afec5c08cdb5480e77390302047c435bb500673065023100cc9ea3881b7cadb08fd6be1a718a5576f516a719da1e13550c476b4ad802b7f70cf52f4b7ab30bb6aaff10b9f896c0cc02305eccfe9c5e4808994bef628673160484a81f9559101595416d10fa7ae90a6e662bcc2bc3bba6919caa30fa22e5f852f40302047c435bb500673065023100dd48699ecfacfa0f3f1949af5e66a2ba5dfd8f6fb5513c2d78e543deb400d34968c779b9aa9c38e4bd71e4b8d256ac1c02300c987a15eaa3fefdf2300d54882ad0ee2728bd8d2a90fb5452328d8465322852b9165073222d79806ab866064322e3d10302047c435bb50067306502305dee8c7316be12c3807cbb009893bd78a10739408677a6ff935062876cf88dc6e1f548ce5770f56fde41b33b09b096ef023100853e8d44d92472d8044582c0c45ab8d96f09b3551a481aa26d160d0b3b807153bffefa736dbd5c82b1420a6d54641de40302047c435bb50066306402301f234aafab0ec70e344caeba188749392bacf245d3b365e2fc3efcdd013b936c3710d8fee3143d978194b46523f28843023047795492b7ccd9d144b8324be4cf328d170421b550893179e5b1c7e371bf207d0467f8ba65964a4704f670cbad4e0b250302047c435bb500683066023100ccb0e2333429f813e51c0b31e1393cf22c211cad3e1a92711e116c7ee5984bafbcd4cc6169dec2c05392352da5fd66cc023100f032dec0bc7a1cd8220b94d64c57e5721e76abb59a32977f8a1c5977717f21b1ebbb5f6ca8e9e7782e554ae631fe5dfa0302047c435bb5006630640230100f0f7dd4e33de4283b4c66ff6b638af90ee29e61335b72bc802cef4c55d7213bba3ff59d8e3480a4bf30bd90a2fb9c023061baed49f7013a6193edf91e1d886d924c40620a03b8e5e8a9fa105ce8fcde05d953de15e6b3c1933985a27a61d08af40302047c435bb5006630640230465d27e75061888ad250961e44355ed32228a04056d83039a3046f23e8d932e47946a8a378fb9e63185500588dfb855902300fb1726d5fbed3a58fa4777e4578308f0b2791ce8fd34e322d607518aee7870e202b4c2b4264efbe3cccbb2aac99f77b0302047c435bb500683066023100a226949213cf657536c5c49dcc218bb79d1bdc6fd354fce4316eb26ec2a8401449d447f0269019252334dea22d6e9482023100d6d7565889dc543bf50f462e22f2de6c9af56f701e64b552daa0353aa6fabdff2da2e4486ef6997366f51cbb95fe532e0302047c435bb50068306602310097e644cbc6b580cbdb749480139076f39a77a2bac95e6ac80a56bfe5e0ebe09727e2b9543e4b485cd7168b7e9fd7daa3023100c24731dbe905770e48e44deae120dc88a3a131dd57fc434241858a378afdb72963ade50737747a133c3aa9ce5684ab710302047c435bb500673065023100d433386866cf694c4e637824a33c35ca0dc20c8f418b3731e839eff95cdd57bc85f99639f92b510c0673b7473c45f09f02304ed378c181e4f2af5b2ade0bddfa54c824b9fd3e0e6580634d7dae4b56291820f3ebf9c2977c83ceeae6fcccce71cbd60302047c435bb500683066023100d154030f104c68e0efd889060f80f26e1c4463a7225c9fed95ab7ed24af17e8e05a1aa401817c3ba8e8c5303f8fb25c1023100ce2e2fdeabb51ad5eadd27b0d31c8e17870f3952b466b90c26683a4b3cfb0875693be74a61d3d5fe0f957e5e93e3a04e0302047c435bb500673065023100a45c7595f4644570a110cc236046d0100725a75db8d821dd91cd6a6e7829bd8e9fcfbd0298b11cbbcc1288afaea9999a02306a4c962275effde2279cf63819fce3a656f9120a2ffe5766e7fba22b9f3f3eb814403de4e910f2f55640e5c9d6968c8e0302047c435bb500673065023100dbb053c49dbfbc576905bed1d5d0f900847f46c782fa7a97c1f97ed71caa3181712d72a8419319cb968cbf9c220ef3d302307d58a097ba6eeb528b9a1267a7de9f13bf28dc4e84301db9922ed36ef2aa549f4eadaedc4b88cb661a805b6f4ef5d27e0302047c435bb500673065023100e4f7d90e801242bb0e450804e937c07f9ee5d6d1f8db99e00f2e2d7681f6e4dbac156deec44d9c27d74e6cd30aebbbc6023025135e489ed15bf0f12b544ef10fcad829f417186f4a6d9838224da052072664e0662dac102fc8868796267fbf4fed090302047c435bb500683066023100b740527460af51d611f5c7bfc9cbca7de0f1d9d3a166e484e1f00158fcc51995892ea15310ab8cfd28cdb6366efecce402310085a7d37db28d35e2152baa7cfbf5ba11aa2064c0f531f5e5f6826e3007a7742e3aa1229a0c2784a68784526bee12067c0302047c435bb5006730650230030bfbbb816e8e43faaa8c7b4ed3b2be68ac9bd88fe71543952258c8216fc68d2610cf441b2e51759a8062f65e8515c0023100dda3d8554fd816ec7bb1a5f11e61241cc20d5fb804757cafb34f53ba7339abed68e32068aecef7c4408221660a81ea970302047c435bb500673065023100d32aabd8b1f1e17a894d690d2a2f79736a9b617f4cd8b08f49bf33ec01887837840f9ada96443b14ee93c8087db0c219023050d43323c090f9b3959d4593e523313e0c8c277fe65ec68c4fb6f79d5c9ab3411fee2f7ee6ee2938d5d8fcec1280f2ab0302047c435bb500663064023005a5fdd561848a064801dda36590957538e2fd5157ecea84e4fb880d8494c6910eaade42321b29977ad7424e92ccee14023032023eb2e01a2aca3667c101487e71b9538ba90ab8b46d9ecda08ef7ae912543b0cbe02cb11c3d76e01a3ab04c03524d0302047c435bb500663064023023741605df49156ac909664121e5030ea8f61c1a353c56e287e7af2acf8414aef72ebb2b7ecf9eab59b24af5981189be02301ae21d2228b8250ff9f831f198841946596170e1fb63f3737a39e77cb9d05382105b95b696ad518b2e8b7314365d4d110302047c435bb500683066023100b00e6c35d22c0147d67a98f731cf3e1e3a810af28d73c74e8cbfc9a33ab00d04c39ea5ba35852f73ef3a660dfcab110b023100b807991ff2a8a128c32036eb4c14446b96868eb1f2d746354f27f002a170c72b5e6f4b9c2960e2c9ac6c75240e2e8b7c0302047c435bb50068306602310088be9e3b4bf3a1f31249fc8674b144993e096c109554cc1210ffe9336b99fa1d64ef4a81520650870b26189c44e96072023100f3fe6be1710aeb77a21b02652682fcfa464cb1e6e11f77b267177e41a5765b1c2838a7a4016df98cdd3a5dbe85bc63290302047c435bb500683066023100f2ed597908512fe58c46a856d90099d4473d6be27cf594cc6f2ae3988ad7f67deca0f09752248c31ca83780f5511039c023100eca4e96e46728f4fc740f3fc5c2534f5e041d2a526b8277a6cb0c53d3efbb20318323c967be41ef9db1fa6d9cd8a8b0f0302047c435bb500673065023100a83a607144e2856302bd19c85a886ba8bf392fe24fa4fb6c8b38d74d55706a7c469904ccdf6705f0de64e9d587a5946b02304f9a22b0215b4b50245f99959e25686af2a351554b7ac6526232d0118e666fe76e02d41c24ac279d7b29ac68276838ee0302047c435bb500683066023100d7db7c33fbe100bc7c180e0503aeec23dd0d4d75869e7967d482ff1bf217a8d184f0b1ca4b6b8101fa073dd2e1faf7fb023100cf02ac73bc692dc62630600ff6535c4fa1915c7026a7ea8c77bb4016d898819d818955a5ee2ecfc94186aef8570d788b0302047c435bb50066306402300f5f0047b4b2ba9cf809cc5bda9ee649e04f174bc4bba6d006ea1d7ea7bb4f0cb0a5a993cd6ce6cd8d7c18445919f2c902305062031111a064c8000abee2fa0a338a8cdda91bdac86745bc14f41f24aad56ac904b34b191aa15e19a45de78e54acd70302047c435bb500673065023011db070444175e1518b107645dcb768843cb84a43d2f6a47263750661392ac288637ac49a496e96fd21c3a3a1a484a3a023100ce2ce59c751195d1526c125bb947fa7a2bca69aa1b9aea557987f2da70783cb1b1141d1740be0ca3088f6a9dc652ddd70302047c435bb500673065023001f737c11f93a8f0da82a0d3ecd4573956b04348cceeb65798e19f37f18a9a33ff983ed013bcafedb2acad7114daf6b7023100994afda512ad9740c4ae10f6adec75b2c107db8e3574c6c58f12ee9de0360e3210e46e74ff17549ea95261d48732e5af0302047c435bb500683066023100a95dde04aa6c1d6758915a01629d2c1cc37d0a135d65f48430ae832893c5258cf629ed6a85de6912f99835a6ddb37806023100ebb1f41250aff200311a6ed52462a8cd8212e0307cff04791d853941def7653ff7c0347e919e2d2c285c68e6c6fc485c0302047c435bb500683066023100ac06f08799187f07fc20af725faa550699acc3a5a547ffbfb892b67fc20409cba4f761be44a9884c21228c747badd449023100ca83508a148dd5d76d448286b215bf0ee38c91d5a5bc59af97940611a37f4bada80c5f27b35a54ca637c480ad9bebb730302047c435bb5006830660231009692903d429f32eee6209760cd6a406a70b8ab35e2637aa80f2da1e3f2f048f855228b1939891cd3591f6f8a3fadb5c6023100817e471052a976dcd424362075a0c1d4fd82fc1fb60663a30b21f5d051dacada452b07c599180844f0dd457166eea0200302047c435bb50067306502306f101fcdc8d5adb537b5353ce4078fd2dd7c310d5d61d88ce1c15a398e0f9e6facd0cb97caa0e8a854d0242859b328d00231008eeeef5b4159ba357dc1dc1982f271e923dc7af2703a1443b8251fc92c498a291897520d045e26e9543da5bcb8d4d2870302047c435bb50066306402300ea312f0eb7553d3e608d5daeaace62320c3753fb8cdf8c3e5b2c96cc1a9bec1a79b08369dda4bbe16f665d33ef16420023021e7f31d6aad8ddf83d50cb8d84657949138ddd63ecf6c6b2e3f911b26e0c77c15fa9a441e77a048a8ec6d89522ab0a50302047c435bb500673065023100d1fbb2316b25234153c02ae6971d1bb28632e4050b625807384f784392dd824dfd736ff84e3ff031708e0735d9ca1d2f023075480aa17ecc20d052c4fe84ddc0f7b85f8218496e03b51bae8a1f73b05bbb74ce70c6f8de6a59546f0899a2ec6fdca00302047c435bb5006730650230065c856b94b463879e814ce539befc0b63e2f77fe10dcfe74dc4e7b3f09838d61eef8d96702ab8d3a58cdaad9c6398e3023100e23e488c9ef32956ff5283de2cbd5206cb107d218e711403e75f03fb1fe03bc630003e4efc9c80b1342bf99fe2acb5520302047c435bb500673065023064e7b35431f75e9e2d31ac8ea8a99b13dd518fa6b00dbd2aea01107e3a2e2612f0fd0e2dbe97ea594109debbccd4c5eb0231009ac147453f3ed99aa8631ea7822b896ead2f600aa3c325883fd50379172e81004fe831b538774f34c4434d434cf21b540302047c435bb500683066023100d8d615bfcb468b0f1424ac07279e9a0574c7bef969261c9d0e6ce8e70cd315b7af5c96cf65e25e59ebf986929ba06f2b023100b4103d66cc9839ee98ca364a80d58654dacd0038243bd56b8623cdd04b7bda24e83cbf3d796304163909484f0841073d0302047c435bb500673065023100e1402fa084c5dfeabc96dc29eb7e3a2593b59343b479064e180f666ca1966f4939c9f0cac95585ed0fff63b124f67b8402306908dccdfd6b6b85e4a0698657fbfa86c7c7301ba9c2baebd2c0ba22e29abd45362439f96e10e52fdfa5210c876c39e70302047c435bb500673065023100912446ba850f9b2b1488b36e9b3d2fb24875fbda40911ff8e53c1fc68c0a41e7380b6261f60fec2ae63b5bfd5c807219023044ec116e2ff905e85d09e1ffe9c42bbd98730b661aa4b6a765a6051d8e51a9cb23df7608cfac9f58673db87096bfd2120302047c435bb50066306402304d1a2c0f42f707236b4674c0991df7eb5d10ae141cdca701ca1a167e93620465e1e76f12af70176ce49dc130eedc53a602302ae784b431e1f521ef8139baadb0c35ef2525a1cdb4c50bedd1234c5b504ee13a91b222fedcdc758ea6007bdbc88fa600302047c435bb500673065023026aa0b0a56e4ceecd1da9acff8fc6d6b8f06bc6efba6c57a2c1dee8dfd183b82f12beb284a7150a78624aa0e1f9602ca02310088caf127bb2bec7d0ab3a7cff675be5d8d9a0748e817840adfd083303f69df338b6ac54153818993309efa80382daaba0302047c435bb500683066023100a8fd4072cde69ee5c74980dbbfc947b906841d17af102f5bfa7e6bf7b7f5392f8fff4a959dfd3ff91f537ef9b117b0e5023100e656df69fb8a3a757a896b92b05d965de3ed14d50ccadfd88e4cf4c603d211f35b9a5e365b3e189ecba151c035442ca90302047c435bb500683066023100ef53ccbfd2d686dbc949b3a6be6028205bbbbb88a7e7d87ebaf3ef507aa8cd689a9acfe51f350520733d4034cd7a8dce023100fd437b2393137471ac2c6f6430ce337054e5082c95a8da681554cd3357e364021e028539bc146540b4e2dfb772b15d0e0302047c435bb50066306402306c4e57f54ca974bcfbcf378fafd42377b7c297982459895972f0608fe3588aeed29b5f5e5cdbddfe877a6bba2a374fd1023031a679496dbd02097ddd02d17d78e244ad1e3dca8ce580bcbb9605317fd35effb8686e053dd8dccc3c4b7a3e4ab276bf0302047c435bb50066306402303da23864ccf2df5e449e5fe612b194f1557a24db14018746ef5c1bbb04736fdfc04134569ae1eae48ff674cbde794ad3023040b49b136a9bc26f6d1e20773840ebbb37625e605ee209ecf90066f2fe0d080b0da44e849509730723fcfa12c0272e060302047c435bb500673065023100bd180ff8fbeeea6c1f9c330a583bb60aac2c4e00ac8d1e3904777bc87b538e560e251c8df86fa17e8085dd58aeb2466f02301d75cc019169311a7471a1b9de3e3986729aa7440d5c99a388250df99260f40eaa8bff13ba202c782fe8395895ce742f0302047c435bb500683066023100a6762c9fde08cf0bddc03c1444f862b40149df283b1370cba343815da224f61703fcacc5c0bc05f0a4a8b0d8542e193a0231009e513914a8b7585e9b5fe23c70cd05d2b2758799c0d5f164bc136ddc51f2955d7c5e91530ffe743f947d36dbd3ffdc2d0302047c435bb5006730650230278e3a036683ecfa3f905fbfe125d84707c0f27d7b1490a4b66abbbe2f4f0d682b4f83577d9f051ecf0f424c59db47dd0231008ebf23635f128a65c653b6f913a8292b49a905ae7e40fa170c08c16e760013c1f7fdcddb10b63d0b414cd81fb232a1470302047c435bb500673065023100c470adf44101ac585603c814545bc01e03c6f5043f5cebc2e6fb6a4f2f7bf68a859890811cda13a0c606f522f2847b540230039d7d2a0fddc1b7ac87b7b6279f87b67913782573ce4e3be1f061da30b0808764f8e37789a6a9e4d36564cd64d448970302047c435bb5006730650231008a906e334f21357e4c3ceaa531b399ea37950337486f89665f3072d468a2b508ea258b9f403b92d24e0e6a0ca6dec05c023079edecaa7662fe411313dfdfc2e91677a2341bf9787c823f3dc9014c1cf6ff794272ab39e3f019d8fb76623ad6e0c1ea0302047c435bb500673065023100963d8287038daa42c9f9f003623b38270eaaac0318c88b4e972ad5d8d9691aab31e5b4c87b3121c10842a57c1e75a3fc02301dcf0d5be76ecf4dc1ab09e77acaefec5c0caa0054a515157e690873828bc522fec07ed445a0701b27e5a5e629a048730302047c435bb50067306502301d0ef7e7b87b3bc3578ea9cbb55c875ec5ed0bf3bb18b4fec85c05b106b7d619cf2af3f1a55a7c6a1ef636d77c9d7f93023100c52553d783429b695d6e0c2c3cbb84326d22b6148293141965960ae0b91c15bebb84c49baeeb1d636e76210ed8e3f5790302047c435bb50066306402306043d38cf2f1c85698398d846d5e7a3c4eeb127d60b3e5192d862d4e1318c51384e53a34f5d4a310efc35743aea6dd6202300e5c381508392a26a596665df6f8b83fff360f952639acbdec3d188fa3fc32990f96405c710534bf47533c9cc30f41ee0302047c435bb5006730650230723d3667ce01fb074e6539e04e6b6b16257cc24d250b7cfa68447e6cab20fed277a78cd88399fc81b2f72a834bd9db6a023100e2d5ceb2e8f888ac73a537d85569be2cd750b01f454d24429e1baeea909f2dd89f5771cca3931999ea2c0849c42191f60302047c435bb5006630640230119f8d5fa70eca74552b8081e667aff3f449a4d0d5d86fd9c4e273c072dd86a12dd633c6f3731859f484db6c36f99e44023016a79f56831e953ebb381288dc058bb0e0092cf3c5c4f023bc267bfcdd34d38581a976494e289236b1a9172da2290d920302047c435bb50066306402303696e1e53521ffe8710de385c0712d6396cc29fcb3937e507826a701863ca997e4466cf7d4a72b9414e51fedb092b7b6023065d608afa869b12c1e84260a90392775efb475469f7f11b5bf0d0ca77ab0e014f57fbbc9b0be75422c0ef3b1b8481f610302047c435bb50067306502305eaf41efe85f477391a240c5dc30bbff7949caeeeca13b8887039174e182602842b906161912db4aed3779171dd41081023100ad97e96b3e7319584322689f0afeb12fce7648b798d8f28ee956a9374de7420de004d2413838d8867afc22d927683bed0302047c435bb500683066023100db9325911a13f263be36fee4bc5a4db8b6121ad7b045000d7bb5c3fb2800c94f7a33fc95c52be8dde1d73e371c68887f023100b36ccd234bc0993cbb5bfe5535e7111afe5b0aba4ceb6db092e5cde90626bb5a61237f5799850ec566abd99199a98b570302047c435bb500673065023100d4b911da1884f885c13747a60db707228dc280b00a6ef7a64a734ccff4542c49ebaa73e977b449aac974a588f228b4920230510e857ed2479051c3f6ca58739fd07aba54786197fb85a590ce058d57281ee3ef2ede6ffd440681095552246672aa790302047c435bb500683066023100b90b196a7100ccb9cfd0aebe4da0ccde40a6914d761061301c0279efbbbceb6238f007beb2d96d3e9be164b5607778e3023100a5eb3f23200a216f408a5b0353d26438729b42ea82e50e6c04a16ba9232f841290efc4bccc539d2ea3414cb0f72a171e0302047c435bb500673065023100b9bd497aeea99e70d79cd38baa33f91f15f2b3b464d2fa6a4d9c29f32767d30265d3e01ff6eeb06f19e5b26efe50026e02306dd22be0dbfe51584760496cf4f9e2c4a39e8cd1558139efa2831af00fce61f00f5851c7f8a6f152950fdfd2a371be7c0302047c435bb500673065023100b5d80dccd15efa2ca4b1af262399bc3ff185f7f34af2a72fcb62d77059c9ddba5c826d4dfb99f1bd6582320a8a10805f0230339691018f67704cc7797d9a03e2825ea133e4a2bafba49fda2662d18c25ad0b36877f0694aadc926809e0f8e0e87df20302047c435bb50066306402306a17e06711bd22ef8a6498cbb75ca5809e171923c1f97179fa51b8d591579ba4486c9d2619f421d9d51b237450a758f902306bb99bb18716877c0d238ff281e92708b8dc761183de06ed948368dc874c5c81f4ef5320e8715385974a00a1904cbbcd0302047c435bb500673065023100d5cefd39781f766423527a766240888ebfb48d9af9b8e7388d252cefca5ee234fa9ef3f932a78029a4fd221e18b8f73802304f4424f0c8db18c7bffb60f3b1156f7230aaf3911f5fbfe9075c4db034f34a50019db18bbf6b38b4d7182f135696d5070302047c435bb5006630640230237c8841f9f44c6ddfe89c6121e851e0128a3b4183e8b79ac1b98ead9fb9f5c1d7fd2af59b0cf55f2c86494b3a0ffbb302300f64802d5f2a5ce6ebfb5bfe101fcca6f6ce7bb8790535c7cafd726345fd738ed3e71be73da223941050cf0f7c4f4d8a0302047c435bb500673065023038912b029e7399416f14634ab0c82e5b541335e89052c668add7d826a5be0e0ff2b78abd42b9b0d04f6b8339a376b044023100f78e5726d6ee1b300a05d316bd7e9c3bd7f5522db9c8cc993f1ad1bc3bf4e70ba468214ceeab028c5964ed3e54820a7d0302047c435bb5006730650230049fcbdaf42f3c0001b3ea80b25c1881b5c384311a207846e9bd7a530edc575c62efe264b5d1b237be16885e65b9e083023100ea60918045f87383866cd3591c303e2ca89819040ee6b58d8bf12490da5a1c9fd77ec6b7e1cb9709aa676183543f95f50302047c435bb50066306402302995bcbff854c8db24f3f5cc25461753e8bc14df9ed460b84322431ab5d8476572c6271a6a6a9b992c841bec8ac5d12102303c9610bfacdb8b9c8fb1279bbffb7a2fd9f8691f40ff30d015dd61cb62026244f3b9fa8470a142d154504a79441634dd0302047c435bb500683066023100bc6b6ff04947973b0658e76e7ecc85e7ad82960325ed6f6167ac7aa408a2d81c89d5c274989d7dae6546a754fe2151f702310099a67dffbf32d4d6079b0c73d07794cca157d610b01d6feee609544cc60c7671a0bb663d99630c688314f3a78ed2b5a20302047c435bb500683066023100ace58be29693768518b870f39f1de9c311dffd06e266f5bf1be9d239381a5ff8f75f1bf23c322e3feab7d294a59322fb023100ed7b4e2677204dbbc01fe069e583362a265613ce3d866a7bcc82f29f348a6ff4582c52e7b130a5c3b9985eb2bb8d582c0302047c435bb500683066023100c697366e1e14ea0e5b9b00c117b0dbcb5b4d274a63b1bb6aec0bfacd0b0bcb0e6aa6a7e383e7060e5b3e382e81e9a0d5023100c8904bdaf84eccb7f4205314fdc96f9fbac47d3b6f7a736c18e27442cf357900c6d958f54923ef577145fb74cabf59e20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023018cf50fb933352332545dd72f667f436a22e75a0b0379926697297b098be2989c7b2e78d36c79a25b8717939c841c904023100cd11270c18fc2f8a31c820bcde384679a655937b02495060282302ddca269877093eb1ca65a2496c71c478c44eb781f80302047c435bb500683066023100dd7e5559e0d019bf8348d18369023b28727d7e05452771b0e4ce817273eedab88953d678ccbf9396e8a74bb57f64c211023100b2a1ac9eefecad0109a9eee2ffdf57a9936162c62854304dd888efd4f9171794735edccc9b30a31c1c245719bd14f5960302047c435bb50068306602310098c9c134b34ed58f1860bdb7936ba52e22617f8fe8b8f5db484a764d79081ad56aaa389ec909b1c42741863960bd1fb3023100cd4677ff655362018b7eff1aec159c14e98b47769f6c8b837a4b3d1d34e1fd1f1973fe1c1ffcdaee3d56d4e057f63e1b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d5f1775a1ca83612ce9a704f8666da0ca0ec8ecc89091c0f0b7e4770f13539c38ae0459e5f24df365eb046fd835c162602300f1e3206714f700ad4bca9bc1d6c3c6283c592683a739b02feea67071ce4e9f0cfb5ea4621ea63f93284c98af75658820302047c435bb50066306402305b60337049d5232fc184e3b139691f14dfb4f1babc308142052fa732ee202882aac3972cd73fb6182e51ae50c01c9d6d02302c6da44b2943c9c88315feda53f58e093f4efc1782e493f408663a7ed96f22b156cebc112be22f42e25a25c2216d03e50302047c435bb50066306402306690d6b6f212677beb27b59be810b4293d04ddc9cb13c62f9ac72684257bfb73d51581ea87d7aa77b2ba8f5e69dc91bf023049058f109cefe64e10680237cea4c9da55d86e1d62d0b93668a7fba2be293109c555d35e5ea8182de0a4ae0bdb1c17e50302047c435bb500673065023100c9b8937834a9c1733e35da6cd7e0861cf3770bb99e0b90cdc39169348808a7f3e94e430eb25d71d36b15fcb265ea76da02304b70037e823ccc3ea5d8984feeb172c55e5fbc1abd61c60c9e9b6302e036b5a2e6981669c28dda10c7ed2013622c40fd0302047c435bb500673065023100f3427968b52753d467caaa870de0946f26eaeeec1e82b5a8a534af098f7fdce38aa44ed0f581b70d6387816ea3e4ff370230468603de7cba42bf4eed528ccdf23bc4a2c14b4a77be12541036b1736bcd7f0902c03cd8ca6e35a4548a97ea2e6cb8a50302047c435bb50067306502303a12d879a37b02add6d546d7a215b0ec7fd529c022633c09a7310cb387cc3b19e3ff23c8a5cb2035acd476e166550fe2023100a06eac5e246f2489d4ca3efc874bac8b5499e553a1dbf6cd1ba5162d337a430183329ee1ccfb530060480801ce5958930302047c435bb500683066023100a0c52ab3b586b5f7e936cf21f20b0b1f1d865850e52fd60b3bc3ce87c85013e048c15ce3c372d455f255d65c5888276b02310085bf372616d644cf27319b2b84aeaa49d4734aad1ef3c687c24f4881c3054a2f8b987b149a0e9e416421e7f3547175590302047c435bb500673065023073e6ac2b227894515c8d8697654d8e3c2d01fd25dc9af4e0c01ce7fe5375c9fd78ff45c01c5b1c9a6ce978c915fc065d023100b4a4f37129a0320b938ee447bbaec2e04f60efc7f7b4da695f4a5a46c23880d03ee49c93aeabae685bacacd02cec583d0302047c435bb500673065023100bbcab5bdbb243d3e83e62d050f86363ce48dd68f2df52925f99c17aa7275b5df33f0f4d59d9ea48d7000b5f292964ccc0230498d6e170ac8b436433f465c7da4b62af4c117c9c62b6ab35b6a86058fe374210b9d9bbe423078f71269818e4f22d91f0302047c435bb500683066023100fc45e92fcec164e63070437bd16c02ba83ac75a4b9c6df8dcc3cea79b6f9971cca90786cc7720c54eb1a1089f452279e023100878110042c5f61da4f7773098f9fbcbd886857c9a285ed09a839d6ebf463422b7f60c52b4d494e7726bce5dff1df3cba0302047c435bb500673065023100fbf961cb665391fb72137d393065c0c3f532e4a9e4718aafddeee893b6b5651b6496d7f588263009655e69cbe957aa0e02302f145ee94fce9062b8093ab67c4ca041ea93c43a3b59304b75555065c82d8889ffe0a27ab499fe3f67a52909104d2f790302047c435bb500683066023100fc78f273e3bcb435751806dc3186d8a8095fb29764fe050b8a01676f5ee1bafa5fa6990ee582f422099030fe757c836f023100c6e2bb5ddd1e99963fbf1838b4eca2a1ec4e81fbf167fb5beb31a4cbd4a14877d73b3d0da48b03a97ccbeeaf8cea16180302047c435bb500673065023100f2f60a5734a79f6ead2ab31258f4bce2b51af7805ba1d226e9d5460aa660b27a8de05a6da8a0a17750f04f9268e5d40d0230025ccb25398decf424cc3839d3d8f996934c10597ad2a9a86a298561b547db83bfb894bb83742db4671817479c684cbc0302047c435bb500673065023100db1587588c9572fea09c57bf7e5b21a42ba974e03366c8e7c5329afad117e9e85d9d267a5a45d2249a6b062b9aa7e7e90230426f3df34a0ab7fb213c7f1b7be5f1cec7cfe2ac2201f3c5fa4a176d59abfbc80305dc18f0f7422ef26999a984b9532e0302047c435bb500683066023100a8a158428f58bfc370dfb0864325f45fc047423d3d15fffa04a6f27a977559e4836b98334bc19c86a0319deb1a254206023100d73a4984a9110f46ff33b92298fd70a4f257ba87c374fd928cf8807d2604d52a7f4826c89a4a50d87e578b30f593aa410302047c435bb500683066023100eee99264c6d63e73ecc108c83a39afe998b8c4582c485ac8d02882daee834e2779f920e4bbb42f57712c17695b23e16f023100bef03b2df39d6d006c25dd076b4134dedbd094945f778aef612f9bedef7b75a9276075591c6d068da3dd88148a4579560302047c435bb50065306302302b5e1d820fb70d3500233f6295ec6dd9d017c78e4b4cc0a7ee579afc3f8a39ae36ec020356d59794ef85627193edad0c022f6ce2883bbab75b28fe297733d2f7114868d08b0c5f3f58c00cad6b4b9f5890f39a7f8407137d7e0b62c6d03c4522410302047c435bb50066306402305e1db243e98eaad21505d159fabf4a32f21755401e57df5163346e3b5831c8114a796170b193af80f20b1d5e51b949af02307996ff0fa0140e527aad6a54b71a2f364a970fc38b95b9d3cb3e3e0b0c833b7658a5ead11f98ff31bed57d94efcb3d200302047c435bb500673065023062b32acc8e031abc54d8872e0adecb8183132415449310f63d80ca0580e9b5985baf6bc4802e18f4c3cf5035379f92b6023100a482d35c217dd3fca979a808ab7fdd2951338f0d1f2e9dc96a81e2434ff06677d5f2c9c8c6d77acc2e887ebdd7b51fc40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306bae88db28607daab12de0bda0eb2ac346248f14ae9225bdef4944dc86346f8314122167f3aa52524f887c37a7b16f940231008128e908c5b0fd87600a2469fdb72b3082ff65fb8b818496238c91f799353d45673ab7217233ead2d98a50d3622548660302047c435bb500673065023100e93c8a8f264f437912bb8a01af1dae4727cb17c9736ac7021c3163c97926e583dae986d90b1a34804dd9aaf9e6d38a8402300b184b5055313866550e5d8485d90e90a8ed4566fab47d3a891fde0f97aef1fe579531688fa114ca62f2c74cd0adbccb0302047c435bb5006730650230669cd0ed5f64d3e19f3f504b3c89d9fd7f88eb306d88fba18a3a196f4a795f47f83fb17f34e86a910e0fc9f07302e558023100b91490430c9886128739e6f6f213bcdab365901b1abe49ea5d4cdab816489ce9c69dc369a159b32f279f2cad655651480302047c435bb500683066023100a31ae755873a2e6d251e41d6b489dbf468b7341dde6ace03435e70d7556145e7e7133ada49dc2c85a5eddd5aa6b7ef88023100f09c1207afb0c5e290c7fe2a3e75b47b6090665f420aab34146e8787ea3e505f7808b24f952591b972e8777fb3c352830302047c435bb500673065023100ec343093a7d9f794a2203c3757204d2c55d77c0a6c7140984c921e3f8a615daa0a7cc24d7516b0cd42426bf713f34d91023061e94f62c33c4423e53466919ed12076b88355384f49ff31d0ea333a257820c7d2246949eaaa15033825a2f515789a150302047c435bb500673065023100ca3a0dd55e5c80edc437dde88c834a2dfa3d167b41dcb6a114efac51675d9364385686ff9628ecaf329a2bdd15c7da3c0230377e152299211a6f81f72524fe46f9a4d530fd71fa73fddf5a1f17f029c8a9dbf66c7141f68c99b7372d7c77d29dd9d80302047c435bb500673065023100d6c4add488c2bd6212af441e093bb6410a11ea87d19454fbd6580337f9805dae7ae3a1ae5285aa687bcb9d3bb0d12bb002304e9a5195dcd416840e6ecc74a942a0e3f3d75038ede3ed5ef124362810f7ddb7e7752634d9a2e3ad3cdec7d5b2a930bc0302047c435bb50067306502307388cbe141dadf8fb4cabf2f231203e226e56585ad975cf223d5d3714bce916dd6abd78a18b3a3d24c1e6fc11b74bb68023100f23c47057a639c68dd04402e8431073d84771a6af2598de15960d60f7e8d7ffb15813db0accdd72520f740df4729aade0302047c435bb500663064023005e720c7bc79653b82f81ae64426c2e7e4be7a5bc9fbe695e77603aa580980a57f8f476c9775e9772d71056aefae0ca802300e3c7335a73e85f993dd89b49a8fdc9713dcadba81eedeeb92c3f86ec3c9603c98e9d74b099b79c0fddc11a78bc344c70302047c435bb500673065023100a5f600d6da3cd274315bc19f5bb74a8c39acef20ef4eb361a2c7378d0dbacaccd3c39cfc5292e5bb675ce526cd46062a0230788f20c7b71ee0e11acfb20c26a1615369f20ee59cb8bf602defa12d9f48ade48bcdbb8f59937a4977460f0a7fbf71330302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f98e90690b8c2ade09c10710b5ac6f06c13c2359c93492046711932889639806286464fc9bb1043bd9510c5fc1ffbac6023042489f22cd71910c9f07f016e5102d8d42114aea570fcfb0c25aa09ee9dba34826bdb3aa735efaddaab0a0481e42b79f0302047c435bb50067306502303e70c94e3449c846b09e133c0e75d9bc139ceec1a7de91231021a2134f06b3cd6ec070833be2bd53048c89cc1f01ebbc023100f97127b29ff2d175453dd9dac40f4d08d7f256aa57c58591aef2d911f41998ed5d36ee1d5f490afdd9c80e1847403e720302047c435bb500673065023100ca9ee7b779910298386925677dbae418d8b20f019cf0d87fe943e63da4322bb644a64878faecf4a78c0a70d8eb422ea4023073a54a22e43ced6ef9160ff4b06986f531b7d4be2a259c57b6bc49eb4482a7d60241ca2ffbe6cc00e674c0ccec6e242c0302047c435bb500683066023100ab5d2ac27b2a5d9128fda262d4b0cff9d66f0ea3687ced3a2b06de3798888691cb5732ec3d32590464b7ee27ae0e3218023100e62fd7c566320813f080a221ead31e47295bdc0b1b75c94ff65b3d6d821118132be2a51776859afaac6971ffe4833ecb0302047c435bb5006730650230160f816c1a6595b108896dfebdb5a6792fa4c810ae1289c3e095a3aeb6e047a63bca0329ab470522934e8903a85a5f0c023100b4ab5ea5fd4892ae9d3ecf761fce1de819e3951ee6091323453fbcc90dcaa66180770aa549a9b28f3b000fb8650dbbc50302047c435bb50066306402300ae2dc277da7d3bc590664062549a45efd42ba50916e3495e69bca911a51d7bc8c5c901f9ee66a0ec8703cf5c4b4b3aa02301a6775085b655808be6f94589b1808a28d0254080c32d90d55d7c2bba909c040825d588e0e0f563cad96bfa289302dde0302047c435bb500683066023100a229781404abd59e13b54561fd4bebdd74ce5e4f6a2fe919dd7e52a20ff727a97b880a7df14fcc411fbad77aacdde62802310096a4c2fbfc433177a3115e6075e0c8a9697e03ae27a591369c6bdc618f68f58776dbbce475a6f090b128ff5bfbfeea040302047c435bb50066306402301334cb0e6ad8120c304ef3093ed6dc1439591d36f80b5661a7f150fef47a9143ff1f1ca940ac496c1674a0124c5cf4e502301fe62e1b72f274f5f695e558427ce35bf38a783283b096c0fd15d44444f66673a846a4852094d6cd066015656e271df30302047c435bb50067306502300b5ae1257e23e0cec7aee91edf9153b7433630eb4b8455149e13f764ec3532f58615740350d3e8d3c463fc3baa6df240023100fae90a0e20f7ee2e6ea2a7b11828d8a5f66fc670ef36b37a422daec32bfc190150af7fa31e2f6b11e15dd0e81344971e0302047c435bb500663064023009ee6d73c245b03e8fae5d788596df095a95bfc748292c72d078167d66ca3c2bc06436d5cfd879b65169f3a05926223902307cc349834d65ef3a55147f830c55a2100d8937e904f96465956d2e8c5c51e793c0e57460526c34ce6d92f9253e9c09d50302047c435bb50067306502310088968c2fb9b6a3446515a273c4b9d19602973ec70a6f0ac969782f35057ab016ea21c5971c665ea730460599fcd1496902301b29232b395ef811cc01286c1bb697e8e4042840ce3cfafa0a629e2e9de22e6e953ae93a584c7990092fd48f93ee75d60302047c435bb5006730650231009d1388acd2db50deb15871a547f2f95fd96de2ba22040936ac2e9ef3ececc3081f742d1c5fc4bbdadb63d0d5bbbcf573023043b291f52b2fcb8eefa23902eba46b3b0b51e1e2ed575ad15e2201b6d027ddea0529091a58364cafff630b32cc522ab70302047c435bb500673065023027caf0721845d70c9e35f6c0317fae47bacf5adec778dd57349857fccf26fe4c3e4c07eab6322516c1e8661f1038652e0231009fec4d3fe0a868ed9902a717ad5c9eff1ba09b06db29fdbd67502f5d99818cd08e4dac91b8c25ee385b450157b2302bb0302047c435bb500673065023100a7cc7b5c398459983f459884bb76b9e6224f43439a36de0dad32ca240b9ebdccffaa2a5e1e95cbfcf7e35543d55c90b002301af8667a8b1dc5575e3da262c242085a07550650b2423437dc582232af53436cb0f39a609735df01a59654a30d70f4000302047c435bb500673065023100c0632f5be0d370807e8e7d53011d2b3024267b2268abbc148a08c1771dee22dbe44d5f54ffc938997925bd752777b8ff02306ee41b81f52f2adf78cf4152689e78e5245aa1625624cda2ffa465f7c60b462eef085ec4d58c58ad901655ac7dd848580302047c435bb500673065023100c9d403b6d923390b31fc24ab580d22d6fefcf808189655b52f42fb270d48597c21e82eff574aba42aa2eb684d7fb53a8023041552e58df353062cb7243327481ba34f722e4c18d054bbcd85b6078940ecb1601ec9e495789231fe0a3d0da7a0ba4080302047c435bb50067306502304502a1e7d8cbcdb4a3d05c758ee4fb96b9a52beefb98853519e67d5e6f320b83ed5ceddc1a742c651733accfbeaa41e7023100a5b2201ef0a10cd7228bb511f464c0078f03427e5f92d3bb68e64a10f4358ed7c82000c3b488975d766400ba58f729e70302047c435bb500683066023100c8ae0edfef72bc4a5243243fc5ef4c1b2bad3414babaa5bc76912b272673942b36716b0844b793af6e5d3453cfc5aa16023100fa6c0d67c350025fd005557879b593712caf327b6074a9f43f550b385b5bcc07fcfb9cafdfe66bcd70be95c37a0971770302047c435bb5006730650230637abe1b81c08a78fe774743d67482bf9de3a960a0d42fa8df483b9fa03ebd6098250f5a059b969ba5f2071dd3dcc640023100d4dcfae4a48914e45c76f39d91acf908d228fc7c1d8772e7e2a5fde57d5ba6a985a643332beb210c7f65ddcdb763f98e0302047c435bb500673065023100d28e45eda61f6dd11574961de9c96da651844f8ff18dbafc82f0e8a07fbf0afb4a99fe99a0021dccc39c2efa8e8232e2023075cbc00c2702f22bacaed934d0b1c9b48dd5c47877d6773f36503c21f0e76c8e51fd034b8bcadc0fa4cba400886b57060302047c435bb500683066023100c830314572af86bf8d6fde1defb09f057fdf79f6572412595ea18f409bc826e9b5149c5e0160284f3f5dbeddb33a7fdc023100ca16755a30d0e67cafad6d8f2bd648985cd772a3332dda913384346f9fc99f47ed9829d3a383adaf2565e742976d08530302047c435bb500683066023100d9a7e04809652024179b877bf88d82e2e101739228619750034a6c39e6d0bde9ea8fe71ea36203e99d9d724555e27779023100c8fb7fcce6d8f1497e19ac856d9e85a1133ed9f4594b2afd2b62b5f701e59ccd782adba1e59a9731a5cda2ade5fe64420302047c435bb500683066023100afe51b2713c981596582dce787357e16ece4d80aa69ee09add7342f1bc37de884356f8dc8ff0324dce5df7d55554267702310085c6334c74fd421e9df3b6385ee04eb1956ff4d079bfb8f2e7cbf928db8d44b519a0260a859038678fda723becf7f9d00302047c435bb500673065023100f4204766da586ad9ab7b8893a414dc83d420f57632bd95c13808e2d40995c5cd58695c64a166ec0127a24ceb6d14966702301050aa4f77840700d0c45680fcc51d25249973de0f28cbc78868b47b65829134f876a00d2d4a8ebf26ea5e1b4fa901db0302047c435bb50066306402303e794be2e94147828578f705f8f074f2b1eb94372e3017bfdc39c9d97fcfe21d11c74ee6e0ada2c217959a745c7cb6690230384c8fe205d041718951f5008219ace01a27cd8e0a76c6eb283a2a15053a0aa588e3f813850e8526b22ebdcf9b891cbd0302047c435bb50066306402307d072c32d2dabd0cd2b566ca26a0bdf5970508a07273c168efe2f003fa448740f52d49e0b1d438422502d8f420ff234202300e0f0f4bea99b8ad058c0460c0a1ef5bf1c3c98552afd9d4b322194bf04d703fe39de552b2b89bd72de367318536abc20302047c435bb500663064023029c50e2a2814be1e23c870e0c7290aa0d948fc80f6d9786d9a3b146b78977505da67c08534378c67cbb192324870e2c702304be1bb7e14f3e0dc8fc435b007ea633b97c9fc611fd59238f816d0108c527f87f58536d24b8ae4886082582fa6e3e9f60302047c435bb500683066023100b8816fbe4922349678e564a139def8457904f5e5a6ce49000eeb0154cce3c96a701ac394aac6088e9d54b2b9f505463e023100b43a986029df266c9503a1ea6099e5a017c48725fc8f85d096ca0ee549b7cbd3bfbefd45062ab41ee8974092978181870302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100aea1fccb8117d509537b5722aa9086012d78b706d5ff73df599727e92e5370eb5b8e5e7d3dfa15cd19022a6b941a8ab9023100f5ff3a0e35862853ccb6e4ff2a305c14fd96e85cc55960bbae8a04b5a582def71a33f8607fdc0e628fd823a93b37c15a0302047c435bb50066306402306b2b086b704380ce961d35fb94baca003842d787b291198ad0eaa113b563ae6abbfa00a5e5cf3ab02b5e677bca09729902305e887333508ece61a653b2f31156e44119ede7a57cb81fc60ba6fdded46953c30aa46d824ac832a09b3be1d0e7642fd90302047c435bb500673065023100c26ee2f213dcd475e3bf487ac7e4aa15d06451fb02a118f7cdec8ea70302efb4774032c4bb30ed3fd3508df705421eb802303ba5788c188e836b87ff2008a50f8a8c5084861c0924632974447b5e66490fe5a63de951f637e1d61fb97c74b9d9dc1c0302047c435bb500673065023100cff71d45ed708377576c55da1e53ded93710b0967c7be270230b45188159a104e2aba78db89efb4e556f0e95b0bea5ea023047083ebdbb44e750b2fa37e0646ba2e877e8640c8321985951bb453140150b5b3a91414ef41d546ad25b84e9c290bfac0302047c435bb500683066023100fd61be69e4ff078e7d79bd8b94b594407f1acadfb1d73235fb35883a84543b4240bd8343ca6a44f3f819d339224e8b7d0231009a64bdca79921db10f780fd06b246318fea583698102e8f2fe37334c5946d97b637e5e85b60e84fe9a20a2c8eca39efc0302047c435bb500673065023100e54987726482341533b2542fdb3da0dc049b8555aa1cbfd43de5e9e02aeebe24f546106bbc58787a402e213b09c153ca02303f7f0087a584eeab5329c228114001df9b78b1adb1456b3f17ab2670ba7ed72ebae000e80ade2f9711f56927546a0efc0302047c435bb5006830660231008b66bf555f9484320f17010dccb37f528d493c9e408989a15e0ba8f08cdeaba915f8700084092d21f90ec357cfed17c1023100d1cddd83c19fc2ef5f747d9309c3e39bc4412463fe6b3256ff2f582030fb408d82dadd4ff6f30e0d852982dd6a0848c10302047c435bb500663064022f4a6887ca3a41f965a448c41f5a8ab8f8f8ef2fe4e9a03188613f415218663bedde6a8d2ff14929f5073273b32e6da00231008097ca8cd3e77032c844d1df4a34f4df489c47b9b1af9b27701a8ee8bb67975ba765cc0f542a9eebb27ed0cd0328a7990302047c435bb50067306502304ad0475dc17cac0260021d233dc0e06d71472c913cab01b3e0382cd4aa159e90b25c4c54791ecd2930c7ae4a57b42c4b02310099ae9b03dd1802e21bb02e0be57b1d9f19191ca79c219a37ddc8720a4ace9a959e1daf0d218359ce3cce856601b522040302047c435bb500673065023100fcbf46d2f628929e21f1a2106bb4efff77b25cb0a09e92e0e4e285e3e257290c4141e0d255116ea41dc901847ce7fcd60230412eef9a14de3cd736d9bb9808cdf278fa0f7fa076bb6149b5110d6a6d528f4bb7433fd59ce7d1cff8ffc34b0848451b0302047c435bb500683066023100bbaf295e751a1ce0bae490bcafd912072687a68679f3186dfbbd2510801d449f6fcf0e344bc5b0fd0fdf0e76890a310f023100c070b9be21c62c1576aa6c4637bda9fa742ea1888d6d1960efa0f417586d72c9d9f3b75e04344c599829f8d709722f3a0302047c435bb50066306402306ba52aa6e6c70b8747b3c8083d6e93263a539f26f23b98d8b7a763e854e59bac14ef69fa09e917fc11a80b22727f191c023001e8a731b93e0431c4d96254ce60929c43e2c139f6ff3c5290bcfb2c55fad8b05f8d7c6e79ecd4a59c7fa24d809d9fa20302047c435bb500683066023100f756d4bda8835915a2d0dc5fb75a7c70a493a00d47e0c765f229e4465cdeda9f164893aab5a991eb6d0f555525deaa98023100848ab43fe3a7fcbf6e995b8c77aa0bc6645c0a976887b2c8a39fbe9f0f085c693e50cf84296d3c4bb69de0a0a8dae3940302047c435bb500673065023100bd72997f6a1cf043d4678eb3a8fe5a32720ea9433418e126f17c76bc7c5a3172f5343a57c021453b9ec97bced406830c023077401c1f57a7400e9283fa66a9a3a0cf497fbfc56e322bf91876038fdc726eefe514eabcf83025aec2a3323a5e70a1a00302047c435bb500663064023044bd8e1ecf9875e856d93545bb315bf956845cddaf573bfd78b8e8b3743917c21fef133d0a7b23ea086b2e643566eaf702305e7b2b88efe744e0b548e0168c4aea4aec3b731117417e9b64404b0781568f7cfe522b2fd15683f8f0b9647eff8b7ad90302047c435bb500673065023100e8ff967c677d7011f24ef662c998cd2d92d0f982040a06de6fd631682d81d9eb1b5ad074a1980aec2f2c9ab49c40456a02302634132c20d9d9e6b22f94257ef7a2a8967ad30ecdbc2f932920b8da3574b7e6b82ec881d0cb7fbcb4780b6c220476a40302047c435bb50067306502303580badfb547ce7cef7084ee5fd1f1f864a95b97d7d95251b4f94d0e8f0e313c19365fceddcc825ed862fe496aaa8e92023100f799c9683844b568b07496732284b088de0db5ac1a37f7edafbd35c457b0d2c9e296a9918a67378fafc964f1a81693230302047c435bb500673065023028a5c1c6ed25b87a195eb85672fcaac5cf9c8a2c2ddf924a7bcc388be5ed82f22aeb7818f5e85894e553bc1a0f8569a5023100f65bb5d0efb96980e35ea24b9726c5682e8a7c5e8dbf5864f5e3a5c9e28bd3367420184d5a603de5840c274be430a6e00302047c435bb500673065023100d9409ec01b5253dbccdb7b397d7da21a9c700c328359ce0235196eb9a7dbc1a0ae0b18f49ead43943b917f160ef742c902305c3b09920172b2e01259e171370d7051feb6c32964fc46f33b1b0e761c16b4d08c13e136793bf1908ca463ed0244086e0302047c435bb500673065023039688301e84910dce4d87bb1078b6be1c37ef5263d8932859f715eff107b13fc412a79658ae8e970c701ebed39605051023100d233431f54072438fd6af15d616586d5cf9a0893b4f886d5c3acc1f369da86445a0d22d65dedbc4485b5924510689bc50302047c435bb500673065023062f6c7649a387b3898de369cd49e32e3c06ffcc006db10ee41fb4eaa8ca8f91f42a8acacc2269e844500597a7786721c023100c935ea576a898151a4b5175fa1958d52beb3e8dc252c6706725355b432e5b924c43634d67c75c43147c3af87c7a1ec440302047c435bb500683066023100f3dd22d87e92cf45453d64569beca9d3276298e0c58f25d376506062332dbaf968cc814efdafbb9f02ecb9fed21bce7d023100f302ef0d1c12ebf2c6adc0c235d42822eac7359ec4d3eb788d263c60994baf3f176de4795bc8a1bb0f8bfa1081e511cd0302047c435bb5006630640230586c32e7248d1064d645cfe7811a5afab5d63247cd39088d25dde29e210d7d3e5916778a8cad1a6f947d45cdd2c25a9d02301cbef86d3b9ba2fe50402ba77ca2016268874d9ca63c613a67099f7c42f1914d3271b8109c2cdd9ca0742ce37e2923550302047c435bb500683066023100d2844436d433355b9d14701217e399e54af369b11a9a09e1d11a0a3ce6771700e74fd6158112c1e9af54e0e8feedd978023100fd1f21962bbc1a80d4d713dfb23e63d8347222d36261d5cf15a3b0a3a4e7fe2d27c597d34e2348ce044380794fa317a90302047c435bb500683066023100d3b37470634a8d2f1ddee7730ee58f604e46a7bc824db2f2bd1d11a15a3202daf46f39e0427d063fec1191c28b094c51023100cfcae4b1bd4898ec1b832335162678dd697001de7c5efa2e4985cfa8151cdf47f63c1a3de6128f5936b2a946df6478820302047c435bb500673065023100a9719acb8ff35266370da398117ff0f4225c0ddc18b6cf9933bbc92d6fd2cb60321b51a8ff1c50276e5069092aaada27023051e47f2fad2b4574ee1381230c816796def09ec1e257c5d37d596d05f9f732f7b624a3bdb2d472732707eac4d532c9b30302047c435bb50068306602310086a24fdacb136745f5581558763be65aecc8ed0a05f9b37af53e5181666d54e36f4d1a64ab61158f1fd5f135a2b1fd930231009e77e836f4c5a4fb995f73c92773d1fabc7624a694d47c64f4054712798369c12036c72566bdac053169bcb3261832a90302047c435bb500673065023100abcd8e8f5f51154e8119a15f073b1c1d1ced0a34d02b555e6f4e9151a2f63883eaa0f685b2c9053ed819e6a367a84bd502303a39d0a6469bbd087e223b5bab8e279e08734aab088abf25ad22193121aadbb9a257ec8c36a2f0369060259b544b98c30302047c435bb500683066023100dbe64465a41ff4b98fa21f68ed6de850fa16031b002a4914c0c9b5cb7061a16eb0115fd173b6fcae16c9214d869ac017023100df108119e99e9fb5e763d9c11bdc841d78b98ed9c53fd17e510ca8f09cc2e4017d8e4e678d7bb3746fe81b08def3de5f0302047c435bb500673065023100eecd5769aef20371a1814617046e1c13ed9aef74d1a73093d6e43ab9a76ee4e034a2cc82cf11dcd4392a89cecdd251b602303fee8d42ab12a103885a3fd4eef98f19c37a6d5a8cf6a9000b55c19c5898d03a4bbf082dc2aaa45bbc098a7ae3f798ec0302047c435bb500673065023100b0fcf27a82d64d1c1df47235aed2aaaf3ec1d91f7ed629aa579c3ef925ac9e62bb97c8d7f13cec6093200457e8d0564b02300b546bdbf3a071d7ed571db9d8b5d59e2e7af5dee76994a336c5ae2c54b43b9d78aa46ad90182d3952c298686182271b0302047c435bb50067306502302ada816f156d79fcd2a6d22951cc1c73e50ae56bd9868067557eb9bcab32a6cbe35d5ef4f000c465790d28927148cdc102310086426944155983635c84bd4e97c24a36c3c85f9ae26c38a2d02cc982986f052c01c560748923fcf75577da7ffd8b67790302047c435bb50066306402301b30a72873749266dcf1ab1473b73c67d023ca4a9977564be9cc63084650c9d30c05499d7f7d6c7025d3b15d944ba86102301e0e52e3426f20a054c77722c488f26437d425a53cb697c8bcb675f93509a5d0d1d3d300ba3a72962f2f02aac35581540302047c435bb50066306402300a2d2653eb481197adfd67b3a506b0281e7bec7aa3888a544a67e2c2a7672624cb060cbfd7de9cb99df7558b90997a3402305ef9e25870e4ecca5c0b6a9a7a9c8802e83ee1b6fccbe069c9d46cd2d7fb6f259a31f865e42c580ec6d37daeebda0a190302047c435bb50067306502303e78102b0a69b4cb9f06efbda8fa23976d4296571a1f3c815ba7d64608e77179d2878f815284961b6e395b70abc9b2a9023100ce2e8f2f019f2ddc1ce200b42630076dc0435b9f358519667a4036284ed9b06e3af1ae55b034d683c51ba739aadb77b00302047c435bb5006630640230138cdbd78e543a49e2c8132a67b443757f86cd77dc74c5ee2fe737b30d93b6fff5d568c3f01cc96f24b7976e3c467b70023049e5625bac2062a5c4861398f58422b4cec5393ad8837adc7bd90dfe2482547bca983ab8362d65f6d6bb2d4e677a0ba30302047c435bb50067306502310095276be58153bec5cf0375cc2a791ad85b659858ba72c7b05e24fe6a336e4e73232c1123b478ce501f8f37e0a191337c02305913b7da7b147a28ba7e6f3ed1b2207fc8eedd7d076bbfc75b856f795e12e00e2d7f83919199ab9ab6876b17aaf302660302047c435bb500673065023100ca24aa625097f5a56ed0dcdc3f3475f793645bfd630cf5d9da95f8cbd9f26aa9b9561e6e221b406425aca324c3faba6a023063c05e348c7c1c40eb41293a5d9e3004a1743d1f92ee329a16b04c9133c994eec64a6f3676dbe292b2bf70f03c968e330302047c435bb500673065023100e6126fe6b0cd24a55187fd585bbaf2f00c9cebbdc0b917f4c7f35508466b906a2947760d4d8685e6c1f44185670eb7be0230084de7ef58799b80618d1a174c98aadf5984afdb1bd55b72f8b479da76cc7b00b5eb3ae097f3571fe79a3b95dc56996c0302047c435bb50066306402306e26d635089fa376b3b410ccdf533bfb838f598505a51a0370be29f3cea6f014b5176f804ca5687986070d608c6d1e080230073b1592512d51fc154df0f0b978fd8696a36d19f92b936292ad2bee639641b3f93e6155ea02a680361e628e1c5220a30302047c435bb50066306402305ca2d1a138d1028c591e61e5fc061785cef61df88850c7854a5c21d2ed79ae3216fbd668657f27deb88383eab0c6e483023024b5c284b2cec0c65a8e6948a3956aaaba2d7f9db6fd57344daf6a222025b9f79ca881e52a06ed5a07e8d775de8748de0302047c435bb500673065023023a9a4f41963078d0627d056e72c4a46dad71de201069624de2ddbb82cea51dc5f00c366b82501343186ab076b4fd70d0231009c0476454b00817bd3f3c1e45d9953116270ae40d03309bcb197f380816d6d25c76ad5d4119a2eb3f8386de06e252b210302047c435bb500673065023100b5babd3d55085ecfb8d8e421c6c63bf4727e23aa037375941e7890fc56904aea10ea0a29c480b1b55d1df4becadae9b702304e5af21fb2c2164f0bfa152032d86364289b6cf927d93bc5e71bc966520b02b5c44b600f8f5954f5615d9818bf6686400302047c435bb50068306602310088d4e3fceff136b8dd8def1d91a6edc8a054f61d818b7fd32a42dd566de601a78c4840961f0019451d50dfdec37f23b3023100c464085899249e448807b23c40b1bdaef1d7601de7145ab2b7fe191e578b5fdce2ab2846c100e7f612160092fe0604240302047c435bb500673065023074354aed19d930b9807203fad9e394c0daed698a111ae5afcf25217d1a99cd9a4eb8d71276cbac1960a8d93f355209650231009f710979c52bc3ff88b812853c0df0ac007db30d0e31f5d1d201107c1c784647cd82b0e795c6188ee2aa195757a6287a0302047c435bb5006730650230429765a5b6284f4834d5e0cd6601c98547c4a43e805d919f7c81a92a887b1e04ee1e1b7870ae14e3dc1164fc116380c7023100f3a8895127936e9272903aeabcbef48f18191eb34312a550aef3dc9a9aecee0fcc427d3988751f1ece1138b473dc0f990302047c435bb500673065023042677706eb1352a61710ad45d8fbdfb4ffe99687239557ba1c8ccbf8c258824521e8d89b07631b4d87e57a4e0a3b7ab1023100f585d09dcfdc4a16479f3172931302ef0a74f9fffe1929669af9cf25579aa7fc245f7aeba79b17fe74b4fc8be757345b0302047c435bb500673065023100ec36df0fc0ece07dbc5cf623bb494985034af24d40fb550e3b5cf249d5419e00ac32c161a408d3f2a318923922c3e6a302304f7ddeb48f159f0653c950092ab73770102b8d8a9295bb9e615ca557e06772fde085a9a68d0bf625bc4924ee5167a77c0302047c435bb500673065023100f6ddf23cf671b6d9b468694e8563010c22103888d32e7b063fd97807b7a4acbeef2f5f792c11a54b74a23509e0aa0aab023077c7e491b0190db75441992a68f67c17974d8f0aca26758a4567a5b756c3384b30e3794253a2e5531145bc67c8fe34380302047c435bb5006730650231008cdef51f40daa02d3b6ae5228f34e942392f59748f331ee69eb332d119d142013d3e5f9f54967a05bc8e323b85cd04f202301e3010fe457d29dd04279b05acc50e5dfa7d9a50dc058dfa59f5cd072541da8c99636fbf7b3765bc043c7d8087b2e1c40302047c435bb500683066023100a4e375d19da76eb4f09eef85d9c6cef5809694c7b66c4df0fca7340acfed0c530bb4817e4cb6b69251ed6b9519b39baf0231009bb09d4332e1ff2691e4cfd69cc3be39282a233852f387b682b3d741a6a352f02a371d1de1a59ce40bded2eb9581d07a0302047c435bb500673065023100841d80f3204576e06d308c958e6c00674d389575bde74398b92b703ac37d2577a324d04f605cab9da483d6601828e44b02305e4d9fd161326bfed4618947fa88af17dc7319e48e9fe4173046a5bf36b34076f2d5bb098916ec6953de82af74e0ad940302047c435bb500673065023100ce79c3cd87d84a22a202b40332516cf6666753c66cbeaf60096ae72324be9f421bcbe3183341818c687968ef12ad079b0230533697a15df66fd8c2558d3081e65202bdc35d2cda5c51f38b1eb0ad49ce8ae620fa07e8e31b6c746ebf6f9bcde4fa870302047c435bb50066306402300d689fffed9880a9d58df6c98965b8f4e5a540ef5db3d7c2873c1ebfb21450d6b5f66eedccf7f37c0f011812c3338d7202303fd6c9ddaf6812f2473aa05180e488b323ed972f4332a5b5ab171be22781887dc76eccf67114e23e62d08d0e17b8a09f0302047c435bb5006730650231009087613545febe4931641bda20ddd6851b01723a4a91eee177df57c169dc4e028ae0f5487496ff3604770673f37b4fdf02301da91167aed3460fe7ad1bf487f275b42b46a5582f3205d448441c3613672527a1de3ea03c5efb19a3c9b27f4f80e8720302047c435bb50066306402303e7be95d8d577a4f263e4fa3b6047ec533c573919e30e51702f3932cd3a17df7449883a542cf1f5894306a4f6f0c5dcc02303f7213860a85be53406acfb9c50717729ebbef479d958147f48669b4b5377821132c3a82f484973610c4e7ad19f38df60302047c435bb50066306402301f96dc5d8d46e289f591540c26d4408811334613c3f07cbecd5355a6aed20e9898f73d80e315b13252caf580e59fef0102306f13badaebc5dfe7f92f41073ccb297c6cec821eee3f3c91b0150dd97a5ca3e01aedcb031e9986bc0e3e759d1c9cb2b30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ee5be293151f79f86ac522ba4c7ea2c1b1fb6e5f3fc38bc84cb81b2732ee91ebd0a8aae672732beb3c4039e43c008916023100a4c98835143b5268428483112971457f06bd8f641b0e60bd9de5b8a6e887a0c3a8047854fd524f580f43dc6dc514b8380302047c435bb50067306502305bf8ba43081272a095c34344d33f718275714144dce675cf85e25a1675b161c22bd9bcc45fc2237efd85cf1391f07175023100aed37b8d510ea6c14fdfbfa429deea513379032ed1629ef38b91836cda5dade9786d012738400dd8e2393e47e08d2a290302047c435bb5006630640230324645a82d2bd854dfc1f1890450de6c5c9cdc9e48cf4a67077dc74aece2caf42d53a1dc7d540c601cf94749cf0d12e70230715dfbb39297f1687110fc3f31d75183b89dba45ba2c29b9f367d2624fed46d7cb5293140640331ccd5cc1887a3323ed0302047c435bb50068306602310086e33ac9ed7647252a306dba6d7905779a76841a1ee245404e6695fc3daed2fd229cb0770c570bc8e552a6f64061396a023100ba06ba4fed02d6f3ab395e1382e8ec96a0dae9d4e5f1ae094a890950830bf539dc8f88f946b279e1c96602c7917312ae0302047c435bb500683066023100ea66ff73d18a293a43cb4cffe09e6d1df8b2eab40c431b9de63a17be5c79a05833b23277c6f361075d8f2efebc1949b4023100c8edcff139c5dcbd24b1bf677f1847f8f44c37223d95c184f94e3fc6f07c008adce57fb2c3ca06c4672834ddb9ada6310302047c435bb500673065023100a26a70d5e7f0076d2c47906ca799ac21ca0f1be57a2bfc8e3998a87f7f8b530044636c67b66eb023095c5dd3e5fba90202305a67d2293d8f8bb3c6a19363cc0e797dee688bd901842f339ee37b7c3c8e214d0e6e4671f3c8f9c41551799f002173540302047c435bb50066306402301bbd101af28521b762aa199e75de204d5e340afc386e7e902a76cfe24cc3c8c6cb8cbed25952c486e031d8887619a430023018904acd145eaffca35db08b023bb116ae4293c967d162df7a0ab46ad378fe05a474dabf014e27349594c01f73cc91f30302047c435bb50066306402303ca6a57239e68e8cde0d87c40aafc003f6bdced0d96b5717f7099da0579971c395a31a06af2e612fcc70618affd2c6710230726349fbc3adc6fee56ad8e0d7c669df60dcebe275f7ae188b02a3855535daede1e84f9b802f81927d08cbd3b9b09a010302047c435bb500673065023100cbb8c1e79a2f61dfb8a3e1765d7c15ec3c91540cda14aa00804b7a2af1258d34cc4ddd7d8e66d487c8208a1d2034e746023057e6e12de7d17fe3009f42f4ab8606dc0fc453b1221d3027c18ff9aa3ac87f22c1d2c8eae90bac0cee9bd0add9d83ee70302047c435bb5006830660231008c83987d13d36ccd2af3d4d1fa331b1c8074b84bfe59bad1cc78ece2e6e3751b2a18ff1f5aaf9da9fcc25dc14a962c77023100e29b1353943bf206938e856df41a78813d57e923d33e879b2b522fad81ce607efda74bdbe30b85964dc358d4ac0d35270302047c435bb500683066023100f31a1d9539875b26bfdad487afb0f52bb410416f99921c236dcebac3e3f7f05e55c51bf61d38976dafe4518790e4f96e023100f46c5e75292065be795c797eda316999601b2f0d2725080c1d6a3dc95c81f97353484ace44f79cd831f55e75a68560b80302047c435bb50067306502303784239171eb4073b28f9732ac8614b4e7feb82e44cc0b3b536310c4145365716f65be941059b8ba2483028ec1ce7db4023100f83f4e5565699889fb04cccd02507d01984c70e7be241dc432adb8ce491a688ff9d9543c5f862d8549adaf53751748940302047c435bb500673065023043fe77c0898eb2d1fbf47c9c265989b5f0eb1705969de1ff43de9e3e72507dc82869e9e5aeb5cf2e83994d49aff5e1d5023100fb9e5705428df60ed6dbe5d20bdb2fe5f26140949df5eb02f1a07e30cf6e85cd4525431e72c2cae438457f0d28ae668a0302047c435bb50066306402306ec73c30813ba2971d73a84eff55a4e5341496d4ca9a3dd28a32ee69d12cd90e9bcf3047aa0fdad10153d3bc32d2eedf023009c361d049f915e7954ee02268fc1103173b425eeddbd24a8f0ae8838040e5edc5e5791d62403ae554a51b5979a3b0170302047c435bb5006830660231008634384e0c699dfb75d4b24b5fe6d4d106bf20e4df2b6226745e2c33f50d55417416d21635ff2e17a5aaa9e1652fe1be023100b97dd3baa82916932e8a5bc1652e1b0cdc10fba8521c165dacf319c42cd9d63a4367de8b5e383b4cb59606c185bc62990302047c435bb5006730650230452dbacb032c088d1c4274ee63d6cea926b6a0f98d70146e6b4140a6dc53f4ee0c67728c0f009635c1c0c8962d0c1110023100bbada73149dbd4a825c639d1a333bbbef9819d9d0c3eac08481b13718406dd35f9e35a1b0cf47f59b1dc2b7657997acd0302047c435bb500673065023039b1d99cc195f205f246c882e4f207d821c6a274b1fc1de2b421519a65c5965c4fdbd3f77e8dde0e8cc79c284f53c19c023100cd270c99fac3323d0bb5a50d7d70bd616a77acfec08f2021becaaf2837ccc5e931675c1f519ec7d7a14949a56cfae8ca0302047c435bb50067306502300dd7d1ecbe8970a3fb34daee3928d3b2625f46c112541b41ed4febe7387c62726162b5c5af35f1027cec318bdf8528a8023100dfe928686f3e6c937c89d464217b4a7e1458d3b1005f3a4dcf2a3ba5aed5e4fa62c540a9f566b3e89339f69744a9b8d60302047c435bb500683066023100e3337366e4dd0a97ea94df5af521f99fa59e4d12f47462f4729e9c238e8708262e3aefadca1ba0a9d3c3daa151c563e90231009f89bfaeba64df402843096af8626a6b988b3bcf633e8335cd48f983dd11b7add582e3f1cfc8b53729edb73dff750ae10302047c435bb500673065023100ce708f90caeb6ec4f07f4e414b674dbd3adcade2bdccd1c23cff411e307c787eccce944775b15120b65cec4f55ed429e02305b0a916bd4da91108afff614f68559d5cff2c02230f59eb83c2fabf9f64312923b3fd9ff31d23ff40d6c91b2402347af0302047c435bb500673065023100d401b5319431b1699d06cfc869097d29efc8f0bb4a4ee6f84c1b2080299699d885c0a7d333e87b8a97af207dd4c472e0023043ca268f14f98cfaf8d1451a9b20f86e6440d4e57e2798e568ff587d6919405747c92f5a469f148a6d2b848e1f9d02e20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023047295b220b3bed11dd78be5a910ec013cd2750819e570c6b287df3e5aa2d125b143eda253c62591a817687d5d4825fc0023100805def64944f1993c4630d7d1db767cf2bd616629736c26ad274e25c6056ec890540bd475aec52f453de7d5cc829c2460302047c435bb500663064023053a76c57de9816520dc20f2a29574e98d466c91e0192bf62f84cb682c9bae310f6c554575b973f390461918c0b88fe59023056fb773b16259e9103d3407334f60fc44da82bfcea9224d13de59394129eb0e0d70d119a72ee588401f46e0a4a1eecbd0302047c435bb50067306502304e7602ccc5d21e46d7fe6fc345cfa7828f820a34b9664bb3fbdcdb3b4b7b1efb6f2de6a27fd85b6b493a796f61829865023100b06a96f835f95e8017f8556dbf3e99abd46f32d6e0fa72968a921b50c7f3baa6b59b44baacd340bf0ad35985790e7d6d0302047c435bb500683066023100fa3241e14a7615a764ea6944fdcc84818da727e43fe68a5d9d9e1ac709a24ea13a4f448e0a4fd92d59e163e0f21c540d0231008f9c68583c0abfd5a509e2dc395846eedf56ea97c52c9395ec584637649c850632feae14f8b8972242c34c6e20cf34120302047c435bb500673065023045ecef4df28bc17ceafabe3895a25488b4fc57b8442aea40a37197791f6280aae179c175aed8809d52b790fcf29b4c1a023100babfdd9d6b31b929218738df5616b66f7c15db9c4d19625460103da0fd82c4f4814f81903f55f1b7163ca66d0923b8e00302047c435bb500663064023027b887e7b0541ecd2710e558ed2456d550ea507a5b2d92a9d6e29a628292e98ed3ce95e496c9ed0de993891662013ec90230401fdf03b0dc31edbb3a9603bbce53e152da08314ed3e207d2b8d04f6afa6f939f4bae9d8db863eae99913dc042e34bb0302047c435bb500683066023100c8e36778d2bc5621b2886de0edfcaac7f1a4b34b8086a405c9659b37e2aed135479fad8d8a0a3edd4152a9f413a4e5e7023100eaebe19c7bac37731fdb5aacd9e20635c044253824bf3779c94cb3732b3d2b3a0ca04668e447f8f8c942ad2c30c89a2d0302047c435bb500673065023100e78028209aac142437627f80135be4711f0f2124b7c537e1adb91ec820ec02dce8f947850e64463f02a8dd707117dd890230135ac43ff64ebb2159d6dd5a4ef75b3c36a93015d1f59f5511dd6a71e7dbeac31500bbea6baa50aab5ec86459a33d1f30302047c435bb50066306402306e0922cfbfa756762b4d64a8d314f7ef2590f6c369d1dca0b083b669df88f26d375d382b78b1a23f7658b33fac87de14023068ef3bf9fb93c2584dae86d2d7d5e14213bee415eb37cd21907b9b9998a6ed01dee34ad979725e1ecd544de3bdd57de90302047c435bb5006630640230062dbf2621596a6e246c4c41900c005cb298e779742b5db037bd97e22db0ddd046869d5bc6f0f4b0d9dc5143e40775270230744fd66c41f59e50651b5f75dff7809db6b401de20ee17f5101bf3bb9dcedcb24a8a38501570690592414f1220c9e5640302047c435bb500663064023031fbeb2777aad7d6c5809ace041d4b98ebec1bb2c0962fc042f4ae773e9e9e78196715482bac7ceb008cc324725d38ea02305f710c023edec7042dd6f85c7abd710184301677d97e8762316f591bc2587b33e16ca53c3fa8f79adb663176f8f9ab570302047c435bb500673065023100d054bf5a74fef7b8a8c69be19f16b5f1ee8fb5a395b4cb6a8499ebe7808ecb4e78424d2481d92e28c540d15f8157a24f02304fb4d680045f1fbddfe90b8aa11ef028b84ed52dfd160037fc524e130268995eaba0ec290b4480ff49406a3098d0e9ce0302047c435bb500673065023019af7df00ddb7ae385b592b7df22eb2facd5e98b16951c21275159175e6f146abc25450f5caca5d686f691515b83d75a023100c681d51ec447cc79d841c3ff643a3cd91402fa2d2fcb1ab4ed62c056d691d8036f672463f39fd5dbdf611dfd702d9c550302047c435bb500663064023070da82e7a72eb2ef3e8ca6e19f1b39a81f132cd32860713a32cf50170fd2a428b746e3d087f6cc02049f6bda140ecb0d023054bcf162d32e47a305874a1a11e59f572c180c34ef2742d796572ec8b553f5b5c1206df988fe9160f4c8d9c60777859e0302047c435bb500673065023100ff2deff6c4d7c513b4a31496e9e9a29fa2d9743c32afb0b07d84c07983df3f108dcb5d318ee83b7c45e45a4666e53f59023018b3029fb2f5c33f83c0fd0c5bd4d50fe1e73dcf0ba8b23895f6c01269a409fab9bbdf94b5f89373979006a4fe7cf9050302047c435bb5006730650231009405b1b5684d7a0a04b01975b59064f34948066258ede56dc5c57973cb85192ca58df471a742aed563b3ac70502fb49d02301053f0cc29b931c5f39cc10906be29b111747252f3aa87f023be02b184301bc9c9ca03342aa752e2b794d599423ca3d10302047c435bb500683066023100d7fd4de04cca94de33e5d5bd36a34d7e8ff691fcc67ee9340a6362ef4b85d18e3998a3a794ed4bd1c3ce70f3a98a87bb023100a5496617d910263ed6bbfecd3f175edcb9c4e2c36c8cd0165a9605eabee782a92bf2f1aa50710dfac31cae7e069936130302047c435bb500673065023100c5bb2f655b9701e3811e9d68cca38d3912f27f4299066b6ced32cd5ca1bbe30bd7262ba1630e04295c55135ad871cda202307fd908437f83e5ca99a2b4a67437f716327f7816e29a9cc0c8fe7288287a070014f9552fd1c36f003713c2ff2ed274200302047c435bb500683066023100e811240c6a7a91d64c833c3e99c0717a61ba7d138f723b7c7facec85df42651590ee36fa4fe14b74a0f395ad24d0746b023100e09457069aad59afcf43028003f5b2bef403baefa1cc3e88113e63d0fb3e2aaf680a444b06432789cb074836f24f5eb10302047c435bb5006730650231008879b256793565275b42b88e480d468ce74d9b9b1dcdaade7618945c6968e3d59ac0d5c6a54afbdeee53b781e24ab08b023057677591537bcbcf585fccf56f5ff9f3cd9175c450842db2cffb49947614aa3eeb0bf2f46a4291ccc458b803d151d6d50302047c435bb50067306502305d9aba53feeb05be711aecc5498409a1e7f5fee5c9b5279f5f61de6a8acb997fadbc453a5405533eaa7da43e3c001e35023100deef034810642353386cf1afc6baaf657e8410e1be652b76661f91aeeb6c06fec87bb32e1ab12e1ea5386a198f5dd1a30302047c435bb5006830660231008f1fac9954afd3e4f0bdd0231381a1c72d97936d19fd608d2d33b59679f3570107f92e4f0ed310018e79e55f10499823023100802e3de326391c49842ce7a924f055475d3368b7e9639d0d59e0342f5503eeae92d5245c28caba95c78b9db8312fbb7d0302047c435bb50066306402303e2bf7e8ffb5f7313de4a79162aed3dd6083317eb0c21687c5457ea3c0995120da823dc2103baae4e9ea247e60100f5202305cab14139bfa61e30072164e6924476137f244258b9d9e7c26681fff244c2a5c413f64fd256498ba2c65a7f4482092300302047c435bb5006630640230683ca7dae31a0e743729073caf189fc2d04be4632c7c1910a21c716692fcf44b1507ff67cad98eb06ffe77180f91571b02303d2a80ed09624e62cc4dd410f05c8b04335ddafa2d1496a1b9c1055d23de6891db0013dad31a7150f25ead949dc1740b0302047c435bb5006630640230208fc61a7a7bccfdc50100035590de6889cb197f4bb5fb6fb591725b5e5d3b8f6f5946b1c95f1855371896e981c824340230778b5e6f9e5952b8252a2aa642012f63d28784227d77aeab8e03a068ddcf55c9db205114aa7140192f802b2dc42df7340302047c435bb50067306502307deeb7abc356d3bf5397a5be808d069ecd95eccf25022f707e3a9d77b394f5e937263d8c4621e1de25fad0756b00d10e023100b2fea995ff822a3340e2bf00d58a298bf46fda2fdfe1cb7e53ca2d6c9786441b383a3bff71b2098f4eff52bcc89830620302047c435bb50067306502304246eb036f9df452bc2fd15357a524ecdf3ff94f7c8ab42896c4d350630b7011f4a92b14d15e146d612794869dddba80023100a787f33beccbaede3c08c7c28fbcebb50b8add8b20852562aa5ac5363e0c440337569770ae0b0ac073d9eef0ca8ab1000302047c435bb50066306402302aad2f9cf60c6ee715f604738c2446532737d362cc36e2e15e554c54374d3c45088bf9fa5bf63776b102de9a7aa6c12d0230011c731209a480e2c82d867ae476ded7683e935a7ebbf8c981ecc5164b7fbebf8cd263e707264893688b885b91d9f5e10302047c435bb500663064023075efac590c9811aa477e769870333e701afe21475c205198d806b1f5efee528b23943251696ea6b8abe0f4472a4f1c850230013bf348254b9af86b11487255737e450c5641e922ee2ef11baeee546502b235d486aaee3f196c20c6e18ab095fc03b40302047c435bb500663064023075eed6c40390e6bb0d9e2ea6bb4cf9bd0d19af60bef3dafcd2c27d67af876762608954076bc5a1a95f3fbb2bf191e40602301182cc3b0be9df051d1aaf643429e567961d9a886e4c2c3683e3d68745997fca94ca301f9c10e6e5b26129bb1ed480f60302047c435bb5006730650230790a2950132ccb45e30bfb28354ce028f9ca6aa8c52dfc7facf71c20da7f67b2e8c0036883637820e22ecbd90c3f7c16023100b632b8f7fe28bbe28784c20b0004ce7ffc41ae607e7f781e5e5c7268ac30495760a527681449efa6af1aaff81c68c5ed0302047c435bb500673065023027716c49e33eeee4ccccab22f102a87d8883efa489e8cb02066be4cf3b15751a198482b5f4dd16317241d46b29e13bab0231009bf93bdc7670066e9703abd5392ecdc5c3b50c9049c597c5624210727ee79af534cc1a9a629d4425d4f6617af096bcf50302047c435bb50068306602310089dec68550b37875260e989738475fe8ad1eeecdfe180b9e9056c62deb3c20bf1124302c607db5cc3d225871b65d1632023100fb4145a9b8d9709c18d65a54208d96c43248dd757c1631ccf68a7e91263c6e456cc1388528ef13fbfe59b3230fe81c580302047c435bb500673065023100d79224b45eabae8fefed43458cf8ea2174265226696760953b6f815dcf87247ad3b3022f5b3921a45de1dcfe17fce59b0230548443c4bcc469d7f24cb4f6da4b8a9754bd116525e0d1c2e5b8ecd076408504a4d64d2cc6110056f8a2765c110609b00302047c435bb5006630640230480e16a13a3616427e22e5fde02d3c34a1a9062ed2953bc26aa751078d592de3aedba5bdbbcb250306f15a42ac6fca22023062d8cac8c4d306931dbcf32d38931f8990a273eebba13fc5363cba85c9a7ff994e830029bfb9ee26459b93f12efae7bf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b537c3092665581223d91ca3aa7f77dac1bcf3513869b0518c2b2ea565a486095a4fa9c04139cce1fed7962ff01b4a5a02303c2a6794d7599de8ea6a130b7c5aa645534d2b1f2c664c9e3616f11c49864e7fe88dfe24a7a90e62ed9e6d9ed03675fd0302047c435bb500673065023035b41b01921b542fe132e019b495ece63e87cb0cac28dc5cc5a03765648ad5f2e973da150dfd53120ac0d6df9dec6b0a023100facfe75dae625b57c32c69ac53a0963544c401a535030ffe5cd9ab3709d39fc6d5de413d2500b7eb5b429bcedee01af10302047c435bb500673065023100a530b853c6a491e7f2417ce2561fd01f78d7b00bc98378d1a29294561aa2c9dab1a519022ffa5c937393ca628351456802307bc41f42f66d61ffc638d34ce6401b0b4c757e2f4719e97b27de54e75a4fed21e179b488094aa9a570b373b7ff91aa430302047c435bb500673065023100c8511a280a47e59a8a3a6ccb7dacab26b087a1f172cb289db0a7a7732d37b3b8f4bf0f51a8c272f301b6c6dc385cf33e023073cd8bdb653f99a4d579ec16b4ceef597dbcc45c3f57c49d9424b97db820fa619cbfe23637b28d6b3ea3cb63e3627b010302047c435bb5006730650230076d29b45109cb6b3fc113b59441fd0bb15aebbefe4c1f2309403c10de7b2e4243acd79157ee7590b983df62e4fb121e023100dc53b721982520f6738820a920e2b9e3e442291cd200d3d73603806b52ada24ae74a31f3517b13c6789fec674fa907520302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009ab5697f0c10798467be31eb270e09f5609213886a9328411ae186daf49f0be28c797d7663f65563c23817ff9353711c0230681ae1fd5dbeefb6cabd5e2a17b4bb957bc47f1c68bf655f48539ab08e1d9979a3dc407ab461a75edc85728be9f0d96a0302047c435bb50066306402303bc5aafa6ef6523bf447399d420afb604b365d77c6d183cbfd174931b464d2ddba2938282865938c18cb7a9a5647911102307cc7883bdd19511d7730ee822b2bbd4b1797b4e33898e37a1196fd53c5df39d2c595d1bb1646f1289526f3f76ddd607d0302047c435bb500683066023100c9910e8bbeae69f478edc0edfbca611f20858d72b1fb5963e28316d82af47c5f5f340ce090a36cae859023921557a0da023100efec91268d7ce355c80025a580d9e8f0e38ca4fe039a10c077306f8170a31ff9af0e2b93e7217a7e7a3231996db6f4620302047c435bb500683066023100af2383c378a9ff4031e8dda93e35227cc9e81e4665a5d585ea12e44b777fe3da7139541e83a34d31f4da727211056c4f023100bfb3322cae6ffb069b2b16e5c8987131cf8fcd3f0ba19e32e9ca931b7ac56425b15b507ac127c8cf1b5373b2aa937a540302047c435bb50067306502305ec57caa2d88a2d676b37d2fbf0484a7e3f703d0b9733c9f774a4abe86c138538f8f51a9e027a2439cf105605f830fea023100e7af0c974da3a553d32aedc37b8af0050984b706314511caeba9a2bd755905fe95b579bcfab97a846456bf6c73566a8d0302047c435bb500663064023055e78c6d66404e7809dbcf49d97898f4e5983a91f51c1a386ff0d636f780415b41ae1806e94c5c87e23326347f253f0a02302491b9f1fc1a85bde713512feffdfe465684e0db303d9dde1a45d3009ed1d7806b376855aac8feb4130352b2ef3744260302047c435bb500683066023100cf6ec57de4e58979f4054b41b1f5c18788b61462c3fb9257a1261eddc3d2de0550b1e37368186d0f341cce1f82a6a9e3023100e41b712fdb8f84d1d86aec05474a23d7bc573db315330e9e2c572218c638bb98633eb0e420c29cd03659c018555082d00302047c435bb50067306502310088c087bb8355b22e924971a7be0fa45f8f6b9788d26ac0c02dd49b7e1aea673f7ce7651fed07e651d80edde85546f152023050036c9a6c35727e0568f184fa210d9a2340ce98e06cdb565007b0fb82bb9b161481ccabce046de9da47c6ee81299c500302047c435bb500673065023100d56aa99c0aabc9b2e27076ea7458cc9b0fded3cdf556af6a3f3f4af9db04d13c92ed96d5de36e3f698b17377371377e50230344a8f0a34bf2e826d018b27d5c315f4926db3b9d63d255275d34dfc6384d22f775c21aa89cd4974e3d17a4d01b231990302047c435bb500673065023100f94d938d5ef904d3f87dcea91e2570d3edbed706f263e794ba83d11048cd040806239d88c3d5a98d7df8264fc53fe74b023007c84597a22f3fdcc461291344a92438bc8766ba6ffcc398a0e238c45e92704b7382960a32de02711a833a5cd292d72a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100832696b91468631b4c51195a708d44cbcc47b1b73804ab8e55037a43ded0527d7255faade61e1371c603614090895830023100c0367e0599a658dc2ad0a3a4104674da6cbea67ef87d8576f697503c277b60e25fbf06cac2026ad209f7725558dba97d0302047c435bb500673065023100cd994e2c9f5d353dbeb4a2e80d3eac1f73ebe01d3a72c09a41e5461cfa73b5e14a807d7d34fc5f97e123d9ccf326ce3b02300748e6d3951789c613444b6443b947a483916bf356bdf115ead5c2547cbbdd9fef3e1342e04efe640fef7ac53b678e860302047c435bb500683066023100876bdd3f229c2670e65732f500487567909099355a546f24bfe251cb7b788bcce931713abf7eb8d7f1c6ccccdaba0c71023100926716d2da2ae980d0852e0a5ea7bd1f97c4c39245350bbad785dd573b343e2450a8ea8c2eefa0d46fd4e3edfb83d3ea0302047c435bb50067306502306a6fb4b0a8276b5cd1204d15f9499909af0fc450d700bde88246dbfca38b062aac2b93b8bb2744e0ac34464f057be526023100eb1b63c8b65dc71990725d1966382056788562a4029b7dff502063d0caf7208fc2cf2161ea0b7807a7b78a7e63637d0c0302047c435bb50067306502301cd05a194b796c8fbd49c303f4c39bfc1b62acc296720c6152dd9b06e72617e278954f033d22a1c3c609937f403e5c23023100f8ff3d69a4821daaa299e03c891226be22a4ea91c9e6a47778d61f1ff5d6c9f755cc3276095326223e6043e47f3fbc430302047c435bb50067306502306c2cde04055a6aa3ef48f51c61ec1092a2cf338c8ca9f16e4faad35b169feb7f7f280a17910b0eb5b0a75253b1f5f0d8023100b40eafade5997f109408547263fd64fc49999c8ef680c5f09c69d50a621dba378b54ecb36097fe3de0a24af37d782f6b0302047c435bb500673065023100b1cfd3d90fab350e1eccb872506bc0e26fe2af5864c67a4668d3f2c001c9a09a0dd48c7211c9d6895db6982843572ccc02300e98b4524e06444cafc98a1f2c40aa457a39fa58bc8981591f9767af645647eeec375b5df451a06c21a0cf399a9c8bbb0302047c435bb50066306402301ea4f6c8ec14dc8b75c9a056b6e514ad0ed0628777b1107f9d58149357611c194030695daa237d370c55d1d6a39ae9810230797156fade4168891cc84a40d09fa0e99a25efe154bb3fc2e019073747b083f59a3d209cd766db8d15feee84389672cd0302047c435bb5006730650230311e2744567516a7d9e839a344d74216d7bbb94d56d3f2337d8fb429a62c8ab0156f26a941d874e5a749b79eaa4af9d1023100f3f987c1bb9cd283f8332a1810e6db7aaab1b3617aab1a5c2ab719759d86e554f9e10b579778b968f87e69913a832af00302047c435bb50067306502307efce1094afac0fcd18babed0a641db63eb3ea4adc2cd12b576b67154cc2e7b3c49b3c7a8874e65e0d4bbc0881984391023100ddf10d1e0f0ea057fba449495e7eeedb57ceb4eab20e7fd2776db92ac4d565a9b7496c588621f6534b4305dc129bffb80302047c435bb50066306402303db7951c4e65b5b42d52362f149372c444366cf31532bf89bdcc8252161b87424ec8757c6752de5c531f59618d486930023034994ed3351010ac1a0a7e7e26ae7236a0ecc43df2a24aa4a667c1780e2ff4804307cc0e9dbb0027e0832a84f66e4b580302047c435bb5006830660231009692691c74659d00aa80de134bb027f399cc03a12c0953d08776f7606e649496aba7c82a48aa3c5de696c10a59265e99023100aa1f6d9c69e2f8f1f1b6a915249d38efa51ea71549d0a3351165f281d86fb4ccac52eafe4f85504e3b3c2aa8128359aa0302047c435bb500673065023016e0219f74a0b5c21dd4967c98a4580eb21ab9cbcd33626699f02c6e057fc39abcd71af3453204e97afbff0362ce8508023100e11970e0797a31ab7a8ea0c876f8f0d0c90dc8ee4aab0e8df6d10ef4e7c63a27c32a036dad876450cb1585a2ec5573da0302047c435bb50066306402303544dec745e8f84a85f7fd71e9e795c5f93312e55d049c8c2e5c8198633f84dd1a72f4cffe89f9bd9ba0ee32d72cc715023054e9d3348f0970bc3f2a3c564b5dc5b2250eb1235dad0385b0d192ec86ae039126a22b97bf487cb26d9e43755b4474fe0302047c435bb5006730650230271b277178914ceccd2a107c8f1344be16e2a7c76bfa0893ccd0e89755579ea3e3f628c2bdaee6d3ba8fc3ded105f050023100edb17200e6c2a7713f3b77ab4c46dfff8ccf49bcea3908fec3e96bca85b58648b660197d6fb8f5366b92e6fbece501d80302047c435bb50067306502305ef134c97143c797dc7d179fe1e224ac6c2d302fbd84136358ea820bea2298e0f41bce38383444a23af9aef1bb501f220231009993d0902b2677a11c14aae8a4980513bd46ae33db8accc26438de082025556de7303f71edd42424c5afb02ab2b1e0960302047c435bb50066306402303a1f278bf0d5ecb6bf41d267a71cdcabf5813a38da39f69529c90f2f9a03f1ffd1bb4db4df4d61798ff02a8805fd1d920230387ba0239a6d7d422c311104b740aab933f01eaf8ab7a14a14358b9a4719748ecbe325b2b11dd6fe9622ae6d3e7ddef50302047c435bb500683066023100c9d78ff2a80aad119cac608f9fb792d437fed78f8c8f86d46a1ca1cb0c20278cd460d69a9492410d075479ec7aa86cb6023100edb3b2bd576cf83dd054c3d62a38d2ca8fd80fc5c10f9a5d6325c6fe0b6315b284b5a8315f218405a70de81e39ac83240302047c435bb500673065023058798cd88d688e49cc4d82b9aa5ddbc1e5f05426630e8ac03e9ebb98e2613e14d6750da84c215000b2d0fb594ba1df71023100a35d1a81d0a44ba80bfb052921ea4a2706b936dffff8e9e375a1173868c7996216307834bcc292a1ce6de5245e2381860302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305ceacfeb984c6ddb2066b5e4dc9278d13bf1fd0f53d745abe5c68245413af3a8427051d6d971c92822c80d65ca6e2474023100b9f7905a7df33a156bc2b232728f4a73732335508ba064dd8eeeb77ce979e744572afa3195fc7fde5ff2097ba93fda380302047c435bb500663064023005dcd1d3ea1b164ad1866f77fa8a72b4811bd3e4c9a7d5ab5281efdd453279c0f7d6fe8bdbbd73027e35ddb0df1607540230786069646e375a25c2ace62164f47e47332213029256cb3117914a66aa416a9731d778c80c987ceccccac56a884d5aa50302047c435bb500673065023100a76cc437e2721645780372b5f30eb1c121d708e5c778c1671ae5f210addcb845df2d45078660dba8159d0387799e6d5302300583fa9fd31ea6d67aef40d5aecd67566c50ce04b1ad6998e86ee5420f08a00fe1144bcec0360e728a31041ce13ffd0a0302047c435bb500673065023100dfe5e6215b8ebe077f519b093580464bd2497f8fcff0702568f71d593fafb866e2fd6d68d55587460b5c4a4e8167ec620230178c64f3b0af330f3ab4aa71e811aac713ab4cd3f4ac67cb6c4ef0e38a5d8eac9e7b0203eb4bfb0f40839b7b336594f80302047c435bb50067306502307338a2021d40444fe2892795dec2ac0d04cbcf736ba7fa9f36721b05e666a4eed3e04a469cea4e71341ba66676fb99890231009c68a4cb09555453f454c7ecc71558fd307b04e6b228d99cec227aa5a32c617958ef6e1d7b5f0bec67f612acbdab2f680302047c435bb50067306502305b7528d1f37f185a5d83e8f7e7dfac5343008147dc61c1c9686012ab2527c2481d235d7258c95e35bb629f6b8b40de4702310082efa88c7562ddd089539ec02c482d6409d24d3ca4d021c6a934f244e2ec1591e5e972b718cbe0a3e4a33af5128bf2e20302047c435bb50066306402307312a4fd12f403af1ec6e7a4d8f41b3f0196403d0b7d4a428bb0c2de2003a57b924657f7f3e19166b463b86a9532c83e0230676d348aa2955e0fdf48390862f9ef48763055dbf8e6d90bb9c4ede11e384902154e9f72c0e358412619a324403e2a870302047c435bb500683066023100e7f76bb8cbcdfae52bd09216550a34ff945c063b254878980007cbb97dd116572d9dfc50fa664f303fca08353aa898aa023100941e8205aced8ac04261795556075083aa79027ab333a14985faaa9fecf4ae0224c0d5ba515603cc81466138c7b2f2fb0302047c435bb500663064023010cdf2f1b3eb38a38f08ba235e99b96a5efd3ce1aa8216ceaae78ca99054f9b1eb873b88945f0c110755b078543a582802303f40080ece15bd3bb8a68d53542ea2e85d432d68c11e4042b8760661d43f047438cfb9975c89fc06e2b59e2262062d360302047c435bb500663064023062ed4a756912990939fedf99fa509b3c799c64591fc0b1a2e606eea883ba455e0b76c967849ee24509f69958d21fdfd502303d071f74e3fb0c72129eb4f56fa4808141edd218b2c3aff3a6f9b1195d7731c5a8361b084ccaa5eff54886c1a4a8b87b0302047c435bb500683066023100e1d3be080a93d26e1ceef1cbf77344301a89b980302028598c86c6ee96189322ccf4c712428b63fc6c07553ef7f14a58023100bad7d811f65194f68631fc14b6b24bf6346d14aa3d5c2647736ce95f8421bcb4ffd0d5e2f8c80682fc27382e2c5c17f90302047c435bb500673065023100f504ffc892226b0ff85b72f95262fc303c2a9de051d76a47d2bf0dbdd9b809366f7363defe0645da4bd782346914403002306f7f8e334828394f102ae6f7534d435a21427ef28158d01fe5db296da9b09e32680a9c428ffe80cdf96c4df051c86aa60302047c435bb500673065023100a43f9a40ef86ee09747b47cae31ad7d80e51390b419339bffd557167a73b4e9c9d78151c1fbe5b56e5fbe0c14ffaf7c202300112786cda233bc70a35272e10cccb4e562eb6d776d86fa70314689fd5381d1c081494175e6838060812ec6de2ce3f380302047c435bb50067306502300cdd811e992b6d567fae342ea5fdc67e7e00bd42c632adcfa9f1035f2af7dca103bcc49d9afb43d4036dcc4e23082d96023100b708b26f54a0e5f6378598f11ec38d14ae94b2bbebf1484c7cff05c5c0e4ceabe53e005c2421fa593a75f359054bbb530302047c435bb50067306502306b2cf0a0410b7ab363f646ab272b1d7d8558e7356f4465fd2e40cc89815bab2ed003a49cbeee3cef60eacf131f10e779023100d7aa3d5acaa2b3f6f8e81789021ec8b73b1444f5b66bef3e4dc1b465e48b4e0b969088db21ced52fa91dae8a225e8d430302047c435bb500673065023013ec29ea036a2eae75f2a8ff1d99fdbcb49d617c1a0e980ac6189b3a5ba4e369dfaa7d67c32cb0732c58e8d020d9e0fa023100fee0b64d9f9ec89d4c29bf776a77b43da3834f54a355e838218d3e4bb69603b4f8fb85754e9970779287131fdeed110c0302047c435bb500663064023048036fe7575d875630b634eaf0e0ab8a86dbfba695769ca49d8ed9bfc9e57dacbe85d81a3bbd94cba3a4804cf1de50560230462ff15a2f0dabf2f7891ee43fc83c3c1858e0519868de49b085cbd73fdba0f70b3d71dadd46f1d37e222681e71556090302047c435bb500683066023100eaa55f5787525cead0474d883151e85092cc36b2235bb8b59af105a4a3f064d26f1415761025a13213d0a3ca478b79d8023100bd25b6fa564708836977d0d81695a7b2d951e4c7ed8fd7ac45215b98f9e0c63013ee652406dcec4401f3d677cd45a7d70302047c435bb500683066023100d5a4e3443de7e9d00c6dbd4a4f95c1665a40e8bd6b627aee5c416d17da4ac43e0f114667faa35b7cb4dfddfbb299d81a0231009ad40a662c6b8d1951d6cc0bc51de3d28f9a46b33e899343618332927bf4cf015868a0b686ff95cc59ba0c78ca05af500302047c435bb50067306502303634b9742d94b6b5873ac3838fbc8ac59f6d8b97cf5e98068795f907fc70c664457990d24cde88dd156138efb7a98f0f023100de2552ea39e2fad5d9deafe9ac396834edf8aa52cba7c916eb2e1b26a2e632ab6f28e5e21b12a072f0e05bae689d66b50302047c435bb500673065023100cf18205bfb8f57e6603d5c89e651f07b0359b43018458b1c43a9f9847a0e44b289357df57b09c276f3ae622e75f41eed023013767396f84283cd1aa0a31df54a2f4f9445eefcbe932f4a0b6e1c8ff2caf67c77849720c9dd0b0d85a3e764d290bef90302047c435bb5006730650231008c1b805379c0d69ebd9e89d5683fa0b7b0774e4d27580fb5328dc60e011bfc52cc5721a98c5b8ac7e491163b3590dcc202305576950ead240f303b83781a9029a1512aafc3aa7f7dfbc891da0de85772dba7c7f9aa7f0ae8515e8db409aad7914b460302047c435bb500683066023100f3d0c0891fe43b7bdc34ada9602c11700c10793d91af270acb4a1fe31d2f455d8967fab27986145c61ec9a4360cf4f8d02310091ad1461b52625d6ec3bf624bb5113d25a7591b7c991b943db0de2ad6432e1d5a915ff233bcb319663245b339ad397fe0302047c435bb50067306502304cee11b0915c01b324f51120cfbd629ace9ed3bac563a246cd3a32a3b2011c0aa746d8a7f9edac1d1bc214e7251797db023100e2a484651f0275681ace0d89f57476b776430cc797c0075e15f7142fbf0df5166aa5c4dcb50ecaa853fba67c800c8d9d0302047c435bb500673065023100f85c7ad12a05d6f86d7db376e6b6177dd8754e8fc6b0217fae187dd325a95294f7cde8161c223a2feb7451bc4ac636a70230345dbcb96cb2e9c8315e87cbd5248a6b0ab2565946e94d8713fe0e0b06bf8be1dadd0dd4b2f967e1172f1628d2fbc5640302047c435bb5006830660231009625cf1da36fb69b32185df1c88ed009bed58250569521054fa5385c3f420cafe1d3fa8b43198174d88a762f04870890023100f055fea5ea2212499b31231b0025af7bc01d5394fe712ed8dcd5cd3fd7dd9f3a51245f8708d53da18d8fddcebd8554de0302047c435bb500683066023100ed468aac4ea19819f93d14859059efee053ae3204139fb0f5b626769e11fb70b69e456d79eed22d7e5a734e9580928ae023100a293e8bf389123f0f474acd5043ae45fbd703ca45fd0f6b28e159348658dc0135ba9549e7aa9a91ab7d9381b51f6566c0302047c435bb500673065023100807704acfc88647c0d6ca66b792a13040c2f7d5e8e241ee836ac1dd60455c2a7a22d8222713fbf9697f6b41b53cc7efb023072a3f050c9a6f84646459ba8514fdb92527cc2afe8a758ae83cf3e3dca73a13bc2b211d93dc961697837f119f23e17970302047c435bb500673065023048bbf3eab7c94943b6f5ad35fea88cade74a134a1b0888d9cfdcd4ae94dca2126fa2eeca696c9af2cdfa163db549990d023100ecb16cca773a55824deb39220edc6f64ec1ea986a3ed18c3f9756beefbae5744c1a756fde2307770703be7a280754dfd0302047c435bb500673065023100ce68fe1dd27c54c9cc4d4355e3f39bb844f73d07c0f4e1a32c3479fddd19f513bc78e2c38f16ac4ad52babc7271ea7bf02307e1e9c153a82810df59491762b42ac219a76d1587b67330d678e2425be1c33ca1aa6df0640f8f2a1862a22cb2479607e0302047c435bb500673065023100b5cd8cf16db7c1b9dc369c595e74ee1f95719204d2aef0246230449ae2728fa56c4ce0d0f7cfd926e7674b4775482178023029c685f23eb0b6e83724f704167bcade918ece758087e5a01ec1801e72d9ab6ea35ae27643253e500c83b9913f9da9780302047c435bb50068306602310096b48419faec9e66de645581a2ee9e6c78e1ee3067573bb0b5bb6d3b15d6230598222244ed724e9a51396933175ab9ed023100e43f70c9714add27ca20e855f24831704b2917bb36f19a4694a63cc26d123d4a88986ab041d23731168357f7a8ca68580302047c435bb500683066023100d7407de2adf06e7794f4c77ba4fdb4a3c2a1075d32213631d8e61c70aef3a9e16c1340ff0bfba676ef71736f24f656e5023100a64604876f6b70c6377bbd0f0615e9b2a306f59227716b4c74afe422c1a19fcc900bd7f8ed6131047593906f166a7d400302047c435bb500683066023100f30046b65ae01616c3a2df528381ea1581c9dbe80ac3002969bd20a8d49df8415e91699b13a89671c28b3f0a6d9eb1c90231009692898dba1cd24592c285fcfbb1ed18e2f6bc49a898c3d45ad756c6d847693cd1e79468bce5569dd0a67e066834db390302047c435bb500673065023100ef7e967a866861a671f8eaa3aae1ac3549ff4e1c5b02f21b52e19fb83e24ce0d1cd2152c3e41d431789699ffa498ef5502301c3e4d1e695bc554262835a0cc7d69d7a12fb3cd95493c6b69c5f4ab31fc532278c4d8279416b3ff7adb35b60470b1510302047c435bb50066306402303714b6949ff7ac342b1e00587935acc3e011a1a9ac5de60440c051c686902e70229dea1a67be4c65c25e0a34deb32e8c02301f960ef03d0b3d8cb30dbb42e218d644bf1ac2627ddedfe550deebcd0c30dad96c090d9b8d999cbfc0f322644ee599400302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306e218b12d174bb5a9e500fe0905ccecdf97173cd7e87433b216d87c84e5b8ea4e0ed5187f976a94a176ca10ec3404ca902307a5df2da221b21b947ea999a3ee8833e0287d66af59fe7ab69c9d69ede0e1e7067a1251a0929b5c64cfd2344429ba3350302047c435bb50066306402300dd9346f1a4424837f8eaa3a54a929fee9036407a2e0cf1298748e49300abb1793bed89d57630d10cc0a6516d2530936023069e8682dfec0db231c445fec2dcd0efb5e63740375cccff8630c9094593123869ec39ebcdf91fe35dcc83f09d12974c00302047c435bb50066306402304de94f167721cee40c0ec38562591930b9a86b3455e9c33e5d6ca21ae0e385212a0bc1b3ece17e734780efccd52555cd02302f6f5b3978f8cc2dd2dc3723d45fe88450fa420a4fa338b0e87f4a8912a3abe5e9b334e18919ca4824b82cc7e2a6c4370302047c435bb500673065023100a0a28d3e34a45612db1e0a2b2e19c0b7eaf99fd199ba3a6c8eac6be0b296af867ecbef2f065f42fbe8364ec452f61454023028b21c59f270a0bb9513f761050420604a3b1964bdca833abffdd1b8a2d1cf069eba000f5c9c5b3391796c8cd34d2e2d0302047c435bb500663064023004953d466a7fd97e1bc7f0f2c68c3be3d30317d212222febf87e525ae9b41663642bb9792e71ea9483234c4ad5e28a9502307aa5ed40c28f1a424a7d3fc3bee8e12e5223d7931e2ffcf15b17cccf78dabab51cf4266a540de0c2c9e8a86f65a4a3920302047c435bb500673065023100d02bf68204d7de34e08cb8e8de80e667e0e78b83458f3f9cdd9c89d3346b0461917f2a5f7a32df592f6cbf5214a9aee902305c5a6657304479b74fe05aa45cfaeb09b931f18063471e6bd63b424f284b0c66ca689a79448dcf25e2b3adedd4062f760302047c435bb500673065023023913139c7d0e4d04389cd07fff6170fa18d7d04915ac83190f1d6605707f306a80197cf4358308581d74811c8a008cb023100eb55b8e92382b8e9dcf8a8265f887db6268a9366abf0d0fcc1071558584e3912d690451fb4ffb9dd44eba3cb4c64c1dc0302047c435bb50067306502306145e4dfc1b199c20d33c89c3e173a3ab580acd688407ebf35886773836db19542093c065d73e8c6917ecc6823b74ddc023100a57ef6374fa040c8d85f2c06acf3f2ca2cf95e0b06e32db1a50c313cc7d56efb7227397f4a9a0cd6b980af6557f7f59f0302047c435bb500673065023100add06ebd2fb51121ff354a7ed842fc1b43370286b7ef7da83df85b2534b803fffe1b249a164a7cd6ef2f056a7c9cbeb602307c513cf05e6e50af6061324ef294acfcae08cbfaa59215176da25338ec980c592c8967d7ffa187ebca31d7e3b636f4ca0302047c435bb500683066023100a4465f36df351f4aa6b8f34460bb9ea67122a69e6d047a8cb2b88e5b48ce990054d6a319603143aced82c0eb2c6c4773023100993ad549803c3484c1f70395200536313d17f9ead84e455cf07ea45b7486bc63f7db6b7395a2b4f79444efa63e4765d00302047c435bb500683066023100c13b7957061a0029ff2c672246663c4aea0246ded7553c937791b2b00291262e6e6fc15235510459d049b08eab244b24023100a55f906d0ee182267ec8b2d8f2543f6bfb0713a2aca4d43d8eb7ae878e970d8f4ba5c4f7127317810f5c08d293a82b050302047c435bb500673065023100f57bf1324c2644ec8005c4af8d69452fad912b0cf52a5813ab8392849aaeca9afab0a34b76f88d1964439e2dd758000f023045656bf2cdd26fce66b1df0dc4c73804f5d37e831673b7090106564a7b5e71aad205af08d97141afb0f68f3f8acded250302047c435bb500673065023100aab884bb7d9615cf72a566f59dae240aaebb17cbfd87c9d38c00f1b573d3962e9f43708e374674ba6185d5722fbec2d502306fbbca08a02d86338ecf47cf328a35fd063e83cdeebe610dc801362301090814c76ad51f4a6c474f6d478349326f63390302047c435bb5006730650231009370daddd161fdfffce1fc7f2f1802e9e46445747cce4551a71f5ab457e587987cacc0661c68ea104cac7ee46178b8b502302827bc536f66a142564bce3f12af73ed3fbea8eba4b1a3ee86d80def5dbd623ca19777f35fa291c13c957369c291ba1c0302047c435bb50066306402301d2c2031905ae3de439957552262605a64681398904dcd9e70777d3209bce4815999566ac090c15615f161fc54936cd6023021bad36280dbbc6a7f17530f8ef40db237bf37aa0576d60cde54579f1768ac0a48aee1b79ce433f9d0861416a54489a10302047c435bb50067306502304c1f9dca290a5854de06779877ba5a5c226e14bfcd11655042f7795107a578e7676d0c315a72bc4479d76d6769390683023100b6407d21f066ba6f433d2a6af3181e5f499c7cb356b0d980e93f92d9a82eb94a26bcbcaab2180c6489f346d4acc18e500302047c435bb5006730650230116852e9b57a58fe3ba623049c2f4d31c454a8ca6954b939c400e041d5e0d4a65143a3b9db8df71ec425a59b0d2d26da023100ded50de1abf66912a2d770a7cd1ef74c691e5d9890c6f1dd524342c33a41077898bf6efcc6775bc6dfb43581eff5ca350302047c435bb50067306502305594809d44777fbd3f95a6fe2ce7caa582407058ccf0a1e540583380b09534bccf79566600d39044339955dd196ea8f3023100f3f4dcc8365c78486788afbb2f4aa2b76854b54a9c99508b92232f493bd088d9be6291996de98a525b3438910958f24f0302047c435bb50067306502303cb6f7d243d5fed4ea411972d2378be1a9c7b9c9d1a7f0be0f9f596bda9c3c39d2b662950de8cb0f88d676de6df8d3c5023100818ac465b6e34c60d89e7921f11940a9d47f1273adeb48de150d7175bf91e988a9b2d806f94a78c3afc24496350893300302047c435bb500673065023100cf57c3f0d072d3ed172b5c838e7fbb72245961891651c1e8064a513ac7dd38e0e9d2f2c8f635b1d6c9c67e9cddf92a310230273ce8de198faa14fbe109ef8b9814e27e4fde5d0fc215897da6ba99df6ab9658b8255659cf0ad7826a012eb8c8267840302047c435bb500673065023100b1c01a952d8d211fb497280fe17c1fae9a18bb225225618b9d8a9328d3f02058a4df623cbdf602b3a6e37a252a902d31023024352132511803a2493cd00203fa07a09a3f05a73d59af4815ff27769aa0368bdd4288e09c06757a2d5bf51a9877d1c30302047c435bb500683066023100eb092c4e2b7f369a607e5a5f7a17ea9fa7013e0d4ccd30aafe77c77a1eb10248814b8537d30ec2db31aa3ac170446fad023100ebd9d77585f46af508ba6f528ce5d2327290f346037e5b582e042e0d197d047e692799246411706e7dfe7e203c610a5f0302047c435bb5006830660231008a331494965a47bea3ceebc20dae9d57b7ed74dc9bd5698661d17d7051b93e851981cc0fd4e40ef29309a9fb13ccfe46023100fd6191eda6e991641e035a5ea315618e8fb9d61aa91d4d09d6c64af80d19281ec25bd7805bd72e8226bbc4759f23093f0302047c435bb500673065023100a408c8e82aacccb6adea0b856367d2755fc2e5cc63e8990970aac9caec5f1f2ad92aed204c8bb2d86386fd611288a97d02302ec60cd1945053a864bf9fee9ee2c4edeb5032df0d417487516226d4976bcd6a1f440977be997241004faccbfd12046d0302047c435bb500673065023100c964b957060a5db77ef867f0f0f0dd14e9072e4bfbf01184ca26fd575cc6eb33be75cb9fffcb9013bc8bfdb3e468b19c02305dcd6e42682ef8452990950634b55aac0bd19b26f8728149ebaa956db4ebd0698bd9acf3f8d1f8796d05508d15be5dc50302047c435bb5006630640230032cf7fbf1fa3cafa39ce6134e7d59e3708f0f5d7eaa9476004bad772130ab24d245591aa99598b3261a8e89966d0abd02307881a852727b1a5913662d2858c391383244277d164736820e4d94bebd45b2c3bc78a9f6bd9f431c1416f5a13af1af420302047c435bb500683066023100fa51b986d2245970adc2531f00be2c0fa518bee7b61b398c915168c65741832af11c11e63e919d2c74d8fff802586a2a0231008c2d6a3babd95d215ada8a04b2172dd885b94a6a844a034e0a5bca826109f59f1bf3559fdf3418901e97134e162d594e0302047c435bb50067306502306882fe89e883126fad5efb3b4eef3c9121561b56d5e68e6f48beb600ca0ef27f085e8002bbeb88f8463f0d20d6d20714023100a050e9e839a786c2aafb4fd5a49ed9676e043981ff0935c81edc1b5a7927b3bc17c0581cf2cbea3af494148e67c4d7de0302047c435bb500673065023061760aa587719555d40fa6c40a91490cab4e508410e4ecaef411cbfc751a45e4097cc036b699690613c170e566dbc30e023100be92f0b2724ff098711a2aaaf88dc7257e351908bc07be3c3035ac1f4b8358343708c54addbc12b5c32b2bc27d9dca020302047c435bb50067306502306444d4ef42545b5f33277a2f7325d35197cb709b326c21dd9029dd94156cf9c055060a726a68234ec79ff48499ff52dd023100cb7f593b776631d17f662d8400d5fa37e359c7143447177a0ed3cfddfba3f8ea86912e515d7eb3910e9b6f71e91dc43d0302047c435bb5006730650231008c83ef5d6b2f7d25470bbcf78024767f98e8b9220a8f86de5ba8d01d163c697000aad1c95df2d0249a98fd9fa212cf0d02307ba14d5d9b9c3adb72f7d26f8161ca4830c26a63c9b2b41939c052adb3ff9b6de40bd654b68bf265ab0ae554462488a70302047c435bb500683066023100cd16704744732fc5ff7901e091b034bd083aec4417443f6663f51a86a7adc3b609e5e95804465806a067fcf451de4e40023100e9b377bdb3e4b784ad8ed0bfecc91992ce97c1f14a20a5faa866f638691e1e2bdf4b8a3918f1a5b10633aec8f662704a0302047c435bb500673065023071782ab9775fe47a65067dbf5260d36f09231371b5bffaf4aebedd50291296d6127fa5ce8dc79f833062b6e5c5b941c1023100f8d1de5f239e3cdbdae1f4580cd4aa0dab99b785b629abd39642f2943c6adc1a31b8cfcf948d7477fdf88d2c4ad9d9d90302047c435bb500673065023038c7af92726eb6b23f89bd01d9847e99a5aab2da69e6b16b63d0f0e34d0453bf7979dad17feadab610c19761fdebebbc0231009836947e44bd19148bfc9f6e6483d4e60d025c7c1d317e654ca91b3099aef5278dfc051c10944b1152de29b6ca8daf7e0302047c435bb500673065023010edbf1499a452538477f28c4721407d63a7bcca998e2be4e55d241d33f4c38e7810b5abe205e434e2e0e21d92945fb0023100b3158e410e0e65d915fe541624f4fdc42f72e3cd733e4c1e3104973f08a4bec99ccb75be908fdd80c762d1447f8f01f90302047c435bb500663064023019f34f20094eee21e76cfca6c77aef9fc671eaf8ca043f748a276b414e57c760871cb05aeed42f3bdfe332636a6d955b02306cb8df830f037bafabc698f1f2b02f11b97630cc72d62e08208f3d323df2ffab5191bd1cf9214deba32eedd84f49e1b10302047c435bb50067306502304ff5acde67c6161836413dec0f73b7eeff16c884e948156264f7ed678a439c11c046675e30337a35ed1735e313d9d21a023100a7082bb17d27d3ae255673d17af84358b7146d1c3ff2f82c690fd15509dcfb48777ad03f60f2358400689ee5f2d5c52c0302047c435bb500683066023100e07e7adfeee8fe8704094495af0d807b4740d85a84bece29d63da671c2f78ffb49d71adf2ab96b4e2f121a52b208db3d023100e25758a888aa8d93d63519bd4060e20fcf92e4342e4a25b25c8a77f457fadf2c435b4b10745a92b9bb553cc68b0c8f420302047c435bb50066306402305f6c8808619f47aea61798648df432aa67e09cda55cb3fd6897cf906956584fd9805a521b990e7e5aad7f18bcc95d3d202301c04725c570d81cccea56530d49b99797013a2349269396b7e7dd42bc9d2f1721a9da5e07d50e277ace50ed33fd3a9a80302047c435bb5006730650230298cb11be711db153688a903354b6ec84fab1cb7956d68d0d633f88c8234dce9e8a37d73b699a26233d41c1938641498023100d0fd2c56c9102bda12a79659f26d4899a06c2ece69ba44334478a7e07c42c32681d18a7eaf2f48d1915a70e46f15db8c0302047c435bb500683066023100d1cd7114a6c28bfea28df1823fb0795e83666441bd7748faf29eed809d481ca19249fc6df53d9abcf070a978115359e0023100c07b99b988f500066fafcc8b34a86c173ff04a3faf9e9e318a7e30c78b9300d9fd6ca79a7d89a03309ecc134c4740ab40302047c435bb500673065023010c1d5c4f13a15738b4cf8aa546818a76331ed0f87f89389a4581e906c9e3287436f14f52c874c698d15fcf100337429023100ecb9afc37165fbafdb3766baa1ba789914e1dfc318a3f94b47b86ec3717d622677156959cfbbe8485e50abf90742cd0b0302047c435bb5006830660231008110c1c6032f31949b102a273d25422e1eb70afb039903f7a86c20581822d75d48aa99e48d798ae23d7eaabb94fd8750023100a730aeae90a687a3ddb3dc3d7d9b306d575212a1950add81be2cf0d64f8d5dbbb0ef8b0abaac5b407b8c8bef6a98ec230302047c435bb500683066023100a1224ce96662d231fa8b7dd90b34917fb6a5d34966ae157f7a60cee8b399388809e16b1e1f30ab0fa2d8d655584d6055023100d46965b24044c8c65984ddbc8b7939adbe8253b857046275f790a14bd104091fcdebd6d20e51e2c768e6a3ca5f8edf550302047c435bb5006730650230302cc91fb7df8c34e7e8388632778dc512cdb2baf7fa3ac3755492babcbb7b807fdbb75954bd15872c9c897ffadb5fe8023100c0cdab65b88bcb706e167037cce81a8ae5b373ef46be15b1ebf7b732b2504c115fd5c7ec48d5f541438d13785f80a4220302047c435bb500683066023100c3f7a76a411fac366fe74d904500c3bbe9b1c420f3eb063467bfef1b1e49bc0a84107011ae366e25592dab3b95a3f2d2023100963770fedf25646fb278c36b0eb808578088b1ccc0406bb0d94953fe4f7d1ad553335917e03cfcb73fa696d13fe9797a0302047c435bb500673065023100ad6d7ee6768af53969a2d50c67e3c34d64d657fc20ffdc663e1410c19e6d022965fed42b764653e1dc19ce430e6b1c32023016f0dab874e118fe6bca5810ea532fe61aa25b2df3847eb64ab0adcc320a67dc78e5ca130820619250bfe2138f940ec00302047c435bb500673065023100b6c6ab767864790f9276dd8c19d6da0e7bc7b0ef257bf41bae54dda1a76553c0149c91db5b44a86aa7d13dd07346253b0230284edb9d6e49d10b863a3048a3c022a60224f069081dca5f8149d99fb8257cda094a490ecf379ef840e0b254882ddf470302047c435bb50066306402305e51dd9099631886cd5c28c838a2c4a0ce0563fab46df936271b3c472c703c6f4d2ef9684976692172b48c0ef39f696d023071f2b759327526be9ec7dadd201892de4f960b2806883ad643912936bdfecb96044b2c1e2012179ce0d1dfa6a4fa09ac0302047c435bb500673065023058aaff4335c5812643d130996a4cc53e36e5888b7d4ea71a321bb61064d2e8e03c75995eec7d03f90a308bd8794a3b3c023100a7dc0eb3b5c6f131cbcee8fe2f32fd8eb0e9e799d61e3608ea178783734a4f67c8a83615fe81abe94f59c76a2f375a5d0302047c435bb5006730650230015d5da8cc9dddeca327d73e645bbb8f0fbeb6886328762bef663417aa5f74aac9c7efbdf9d20f6abdee2d41182ffefc023100b06020c8e6332ca8c9032b80f880377a03b4608ee0976266c8a70fa938a0f89da1f9b863aca59d62dd67f0fbe048284e0302047c435bb5006830660231009817edfee5d06e61147be0de0432aac1c4855f245fea1f9a50a198680119ea497e29f9aaa04ba1b8b5657ab9113f109a023100a460a695a8c2f90909574e22ffc8d0db38507e2e1a5d03069dfecb2f159bcb7656d1dc3967a8ee2413d39cce289968080302047c435bb5006630640230368f24ee54f4993801475927b4416741d5b84b8083d3048b0cd1ea356224f7be8c37aa67dee3b90f7c86bd5faeff44d5023013829ef99e469b1030c5f593ca40a69847d48d240b963ac48da0c0a77c0f6debf30095eab3049428c938813ccff6b5950302047c435bb500673065023100b9027b58a809ed68f73a75398425344a9d4eff3e8a98d40641d0e69787ae5aa0d2e55708c68ed68164910fdb7a59c01402306abaebefc34628b181ea3a6dec18d236d79564b474c6009ed48696bcf554dc9f8153c051e51e54ead9bab1e4c2cd586d0302047c435bb500683066023100ababbbf55a1edde752680cd60f03d02174299c835c5c0691a70e675ab5e626a7003226f1dddb137a2dfac335f7ac59aa023100f51480baad77c6631bdc711f0854f87e8e032e7126a02ed3826a2c79f4dc15d58705607256d64fe37df9c075812c0f2a0302047c435bb50067306502301bf74be6bd10921c2893f13839c36531fa20bb947a66812769ccab87fa429124db74384020b461146e510a929287ce77023100ddc8da54893cf92668c19e23a65b04eb8f95b8bf64a96a318a29d8c1c22e5e16f255212df5a1886bf4ae0f7cbae4c5520302047c435bb50067306502306eb105df6ed002249a1fa94d1e1c3ee1e181026fe9c14d86a221690843f8fba5af73d91cad63e0a7fa23e5be50f393aa023100ac71ecc0dc1e500a0ea5a0442351cc2e243bdff1cc4ada6b52c312ba6406a6ebbd57bd56e5e7ab2e4a90c0bab0941e1d0302047c435bb500673065023100ee87233531fbb75d20f4f74f39d1bb298c651c0a19888b0766bbe0b47748af60112b3281385ee0fb78bc7a2b870234aa02301e60e83c283b2f18cf8b9d6bb7f880afcc1d95bf5e9f81fed70ebe4b58322233ffff021a9eb31add385526e92b721b820302047c435bb50066306402302a9a48cd21448cb344645dce395ada4e42e0a470540d13c72d19fcbd2f93d29250d881afe7a868e22539ee5d7e892f2c02303b2208a3e93bf4674d951459c184c45ad643ec533d2b5e799adb82badfa16be706fd3566452c28cce81d58f0419e73d60302047c435bb5006630640230039cc847e1548bde60e673f9185eeced817a76243dd2d067bb4768af37cdea3dcc9d11531fcd15d53b6e6fb07d3ce921023063116e551bf577a9e9e529fcf7ea073c2122e613454af141b1e6da1b2367ba308e1c80d6914c5d6c825af04d0120b6de0302047c435bb50067306502301acb49896d262dd3862a25e8a6d4e30aead23f740eaa58279bcf1383eadf713f9a1ddb5d945c919d6e8104c091a4e1380231008e4e3b823a138fd264c1fac2491bb5cd31d9d6f4af0fa302282c54b336121b142431c2a72eae519913b20abf3d15fa5c0302047c435bb500683066023100ffbef44d282eef2aab37dd3946b18c06e689b40d14fa605f8a3e68c778e98e7fffe700fe4e0d51c08c23a2058bddca16023100e26c250faaf03ca5d1c1fb2d75efce981c27e954988dc70ea117d70e7f8606ba4885174a952d221fd37c3f09ee9869270302047c435bb500663064023029252e2b26252b7136cf3a5c4861c686b73f7104fd5280f6294dc523fdfc32e69662ec2bb3061652620f15b61cc420cf02306157c363f69db841d0ce63b1b7c5e3f4fe4c1153bba3b416b8581d95ac4efa0f093f4678807f289bca57231142b0bd810302047c435bb500673065023100cde31861298fc83cf5d620226daa62b3bef9c1fa76980361cc2ad5eefddf39a59db31fe7bdffb348fd62eaeb5976e69e023038639d3e26c3213c7a4433ec59f9f8bddfeff374fb14ece07986a9997dacbe19d2f6624086fae3fed001fb63152668af0302047c435bb5006730650230428f558c8c367458d8fb96d15087b832df7990a45f12241be871f1cb284890e992b596b0d062c5441fae3d23a6c40eb2023100cd027a7165b044a8b821b11b867ac69c09847b835a136d29af9e5dba8cab22a8c2c6feca38399a77e782e22b027fecff0302047c435bb500663064023027595bec2973586aaf0cc245e57b2c7c526e3dff039dc4f3400f17d7fbcac118523d7b21229f645dd8b2e58cea413f5f023006bf2049de6fe1fed51f5c5c1fa474972b3f755b099296f0405a0abacbebd5ed26a77ca39fee100c3c3c45e712faa0950302047c435bb500683066023100f7c82c2a09cd59b3739b237179d81e835551bfec2c1bde1a84107d5addbd3510580631dd429df94663383520345a42a90231009f7d76ee12f6bd91d804f9975288c267a3e868ef7e0842abb45f47055688405d91df70c3d3f4dbf30c4289db721c23940302047c435bb50066306402302d2144a2dadd31898ec9c967f15d13ebc87b8dfe08ccb2ae193f65f034e4890de2446c95c51708723e33426a2c0e8d66023032c934f1abb718de5fcfc50330c9beec3e6d3f738764928327bf8e52f48a8674ba95441d1a98e2c31b27e5967344af550302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d7d21079ca427d180e347c7e2db301221355804dcb59313a03b15eb90ffd7d4716f430d33e3f725344670a5fcfe6c039023066525b18148845bd4783ab43b67fb77051350ae07484990e0ff11b1499d60df82e115bd78507c345844244162643b1b90302047c435bb50066306402303d2382d514d660f2f3dcfccf27d194c0e55cf47457bba3a8db8ee818bb34e50bb85b16babb0483dbb9f1a6d92f770e3902302950d75bd094829bfb6a4a0e4fbe4e09052988e01380fe02edd419d4cb4b4115fd130e8bd4a6bf1bf44bcc3fd63c44b80302047c435bb500673065023100cb9849f85a99bf8e9d1bec160bd4a5ce5e9f6bc6e731faecdd405cae508500e8cbd8f88a3d7ee0d3c6f6de9b8720697d02304b3e732768e52721dab34ea5b2898eb891ae8a3b25619c14de774b4d0c532cb19359b48afff5660dadb54400fd4459070302047c435bb50066306402304cc17606f7ec5e6e2a694671aa5bee7e62f8cbb73f3749eb9faa5980d700a42e1adb1bd438315054757514be278e4a9502302d893be096e481e352b24a14a73d42c081d87c1450f8a1a55bc0d6c023da1778d78544b313cd0f48b1f668642e76c8570302047c435bb500673065023100f79fda0c4a6a49710e90306d3885d59813d4107d8e3d7a4e8890f868019ba97f468da4c2e7d447dd2c255db32dddb4f20230052943591cf51dfd0c01bf11ecfb8def5cf9d4da570ca6d3316ea3182aa77d1a4f6c3678dcac11c02fde79dcb4f58c080302047c435bb500663064023100eee844dd466fe18c74d13453a0f266e9ced21afc87cd4d58e2344583ce0e3de021cf8c0928f81266ede7fd0440cbfe12022f5954c570d03b2425a42d88e8e455ee03137c7f8906504f95a3d090280857981e71028089d88e13c2864fc6685c306e0302047c435bb50066306402301ee56d50c08e854a117ed8bfc856489e631af90d427a45873fbfec00f8a37a997b28084ba4f3aac5ee93dcf5cb4491a002302d59ccaba17149b364e4ed99a73409381cec25b44c205513ce120da62785ce48e30ab634971c0b27725cf26b9a3119290302047c435bb500683066023100eef8aeed81d87a1c4bb3c0ef8b754a013b413d7aac4bad19b87236f6a9b15787d69687b0d8e77c5dc97b5a89911aaa04023100c7a6125e310bb5db66d7fa4785d611d2644df51d387855897c4b47e6fa03bc97bc952eff87748b13377b4b7f57215f070302047c435bb500683066023100ba9f14721ff7eaebd515625d7c69f3f422f0c201a64dc1a9d793707fd60a0e6d4da8746d4cf02876e39c2e6f72c0734b023100eaceac9d437070494497664ea8f989be0fb87b36bd979285bc300453e1f7cf0e729a4800f3c018a8880dbfd7db04e41e0302047c435bb50067306502304befd578943f34705cc9f4834949b0de79a7a501d54a0a910700b5a63b67e9c75173a5b6d951e46600bd1dee73d5f3880231008351897d7a43a0eaea009f099b2e7d77f20505d71929b5ac08d4df4ea27ba069f58075de618703593ee0f0137e59d46c0302047c435bb50066306402302cc34bc291b75b5131df13903a9e7b23d579a5af5c2048dc2209a01034a96a5ac815e4ae80bff2c2b6e75fbda61d6d7e02302991e31a33c822f3307243cc00d06eee2e6e86d41997be091967af6e1e1ddf54a56317d4e3b44cad01360e208e38226c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ea26520ff14bd9f7ac52d48fe5bd0c2dc31e9999907f32606d2851d9a7782fb8bfa24ae8b3d855ffab8d124da4d50bd4023100d5e1b69ad54d3a8875860239104c47e1c7f6e66cc3d23cad6b8924aff06400407b967298854bdfebd9e3fc88a574ac1d0302047c435bb50066306402307fe2975abc3d3721390f384b2d97fdce59ed15e9c62f07cbe55116ea66553806106cc76e46e83a8ffe093cf3cabab9910230777f1d594df23ef2819c9fb271881564445cdafdbc63ab85e1060ab7f4694f6592f4f51bb3b0d83571d9fdcdb080f1f00302047c435bb50066306402302f6ec2ac501abc9f4ca012ce2b0f985ff0afb7a05089003772ce46f6a1efbcd38fcf5a970b7bbce67b814e6302b9c7e302305b3620d5b66e3d1cf1af1f35b2240597b7dcb7a8a8e094c1965b936e1025b86269fdc74849fbce0fc39358e4b50f80690302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100fc3be2421ebc9abc59de1db454c1bce51431c4b3e0a03d2cc3d95b8576a32409c4378d5284c957569caa964537879c2e023070c17741cd5495c047a0361ef8431890ded0905fc3493b0ae7b30720e4fd311e513cfa358cfbe914bf7b3d148838269a0302047c435bb50067306502302ab8c5f087e620c9b5950eeb428b7ead1720ccd6d03f61a28e68fa2ec1921801bf0e82abb6d94ee125030262fde728ef023100a96d854c597f117cb1bdc2e1f46bebbaf5b940e252d6328b78695458a510cfad3e6387f9081f009a3e20a5acc26be80a0302047c435bb500683066023100cc38fa9b83aef86a7189f997ccd12216c4e5e928a35856d4ee80897bb03648f1311d0942b37593b9ad0ad6257b7bb66a023100fb9020a8460b31b9eee235647c0259cfdab9f74fe5a0a62bfacaeac06c8ed0c11a55f1b94f2becf41511d603860ce3aa0302047c435bb500683066023100db2027ee1801c7011c973cc35d57585e96069f9bad12118770cb1b02747ead862bfd4b59c7e4949f91c0ecb8d9993c60023100ecf3a593c6b998375d3e45aa56fc7bb6b4478dfd4973f8206641b993725f44f1fc15718b7ca64b5f2637fb10ea587b140302047c435bb500663064023017a40946970931a3bf3c55ac031fd4fe7e7c43438930e88edf9117efab46e620754e073a4f3f45de1b40cd0be5a7b1b902300e43757a4e15b2e84f6468f93b35a32535fee49f1d1771cf78da759a6f0483f2ead73426e61b936d61b6c6333cc676600302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008f2ff820657a76c3f9137d71e799e23d9ef6f9dc395721b1c2067d76955e77e668a23b1fbdd6af5904ca51c4adb2057d023049fd3163ca47c2ed9db8c89578ffaa3f643e1ef75effa64939281ea9465c35fbd8bfbd6ba8739eb6e0246f6ca146b0110302047c435bb500673065023015952a207f8dc24b4f8ac226aaed027d6560f3e0cb43152ca0c7af09882067786b8be88764eb2457665aec529d7c66dc023100ba9f356d0b46b83634b4dac3da5d2b2219075161c90a934d03cf0c9b9a07dfdf5b264b7ef00e0b2f918b2143b771130a0302047c435bb50067306502300b6a1ddb5fb78577c007901edbcf0e47895cf0e8d845ad72fdac3ed39cb9820eefd53b90dd03bf96479c52d9f4b9c08f023100fcb962092c66f285082b8aac38286543ccc135ef3e4b47ded73e400b10fee7211f8ba63501bacb9d4e3e2cfd33fded990302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023009b6972fe886cda96a2c825c0e7834be561063e1e3eba4f3c556c56262004627c82db0e49ce058e992eb7c5b68d6db0f023100bab7d5fe99570643ce367d012cd6fc2e745112de07008a5e75f3e32fd8bfcdd05cdea8b3df0ac687060f8df71f9d28eb0302047c435bb500673065023100937f0f762f01293e36e187303ff2c8771baec878ab52fad2a80acbaac7939eb33eea6c7cb29d730942275ee55d13ca18023029c654fa3efb55d5c55b53db64ec13448c448138d7e0328cfe5eff421f514d6198c60eb9f6fefb8e81e2dbdcf97052d40302047c435bb500683066023100c7dc3385de474526004e6905ad0adea4e094050356b99541fec425660a6d297f29778ad4a5cd3efbf4ef24e7f1722f58023100b438f395c1fcaa18d1fd9b670aa4bb7ae129a71e0aa45f9dfc8d26cf14c632b3b26b52c9988f518f5648c5d50e5b3c150302047c435bb500673065023100b2138ea73c5337af1eae0efdbbece470226863daa71ca0c403c145eb7f57cc75d21126f67f361e7da770368679f33dfe023036a221c9b0d77fe7d08726e0e98e11f5b0ecf71e137fd075e033441faf6132d285521c6d2589d55667e245ebc04a333a0302047c435bb500683066023100feefb20ed7281df8bbdc56e0b053c6483c6880b6f36b87fb20882f0f368f6f566f4d30d320341cf5d8a8ee0b8c974cf8023100abaf17bc90a1ebfa2bc0a4b1f94c92a8b09e597a16938c8ff9bc5e503ed051af04bccf9f9860c0827654270a9d70beca0302047c435bb5006830660231008bdff86f79a62fecd85dd868a6bf1ccd7073c38a762861a9819a90a3992a30ac5c953fab552660f33454d07e96da5c030231008eccba617714f6142dbe5c0f4a708f263726a80736012b51bfea7e20f736eb0e5cce37d938c7c711922e6d3e78cbc1000302047c435bb50067306502310095373f29bc2d884f585718f4ddf58d4cde3836ff86f7e8211e85aa46aac86ef1414030a09425a9edd62ffe75cff5abd20230375223cd75e512fdd2607c4f268ba9b6505a26f94a0636952e16014db648b360ba26b6fc8875d03a6ae2385ce1176a6f0302047c435bb500673065023100e1aef1b5117e44e9f4ee57c4938a0622dca4f144395daff270fb966f9a5ce090b3de56def1c59df4bd467d13347c938e023074a7d55bd4fb3d4c947e381598c1a834050e6d9a9a70e6c94b9a1189b09f88230fd60bf0dc2eb3b3f20443916f01deb70302047c435bb500673065023100b6177037f16cb7ea8695801cf5a1913e9a751e0441c87f4b88d326ddc831dfe185146230e2fd83e09d2596589aa6aa55023055cc7862c37f56e587a85d067c4d8a57f9eacb14ed46ecff35b8e8cb66e4608141cce8a18683a0e4f1e8173792800d5e0302047c435bb500673065023100a9585fa7ae3c503987ee7ff1fa6ee97ca4870064577d7415ab93a9b25e6c5dcd9e1773b3710679e7b25a04e9a65583f7023050bd618e44a38edb5ddb820a5745a093fb75aee0b35316196a20505ad8061671b9bba7a0dd2bb14ad91cc01c96ef569e0302047c435bb500683066023100b5233962e1108e8df395507ab8da47a51ed649b3b0d694e2c056b4f755140748bca6bd80f7e8db3de936f405a0e29c79023100d1f0ce915e9821b9ca785f6d34fca0be47c3d12ed87b9207fb65550260d4964b978094639280bff8adb42ea0111487df0302047c435bb50066306402300f673d6062b359749eac6df6ff55c16a9652efaa103ead94bfe531e41133551f96a6f5d14989b1fbe4d5c5df647ef43202307e618ca480927770591b6788be06b6e87c0be5d5c5091337c79b01f2f891399454fcdb70825b71520a59d4aa97fd42f00302047c435bb500683066023100d98a011003c3f6b29fb60c4556a75999557c410a1d4c5f65090f7958a44afb1a8c143d7895337dfd3e2cde890d4f3fd5023100bd07d7d9b647e5e9859e72d27e182629e355159e7902bfcc4fbcb2c832bc4ebbc5f5c13970bcff77f3de8db742b17c730302047c435bb50067306502310082402313dac8e603f5b23c6319aaecd521a6f641e8961d9d554bad6e3dd4c1413a63c0947eaec94586220d1b02124ccf023058387cb563e0a9f8e785ec1b850decf10285dc842fb7933892d6478a3ee8c340639917e7eea3f8c9269dddcaea5a0f660302047c435bb50067306502303774bea1b76b379b1e85526013d917880b4491cf12b298ad2a01a49041650c0b4b6e1877baa0183e453eb8ba5c59f443023100c7e2e77fc79a5146ba0b5c97cb8cd6b055c9e0b1a516b563e556fb289fa3bd5f2cab752c49dad314f9ff204e3ef7167d0302047c435bb500663064023073c36f5b1d51b84f0a8c6833173c8a8b4a317eca2b5991f8bc1f29d96aa7427a8153d77f1435b954e43532996ee6eef4023013a0fc5d7aaf700e3d950e6dbcf874fb798aed15e246e875286704d4d67023a6888c916344235b5661fa27c3d92fb22f0302047c435bb50067306502306d7618d62b3723408654df7b1f6acd38e88af9a1ba9ececd0fd8deac7e149da79b81af895c342479a5fa4b90179e567b0231009ed3bfcb98d1835227f8d390ac6f496ebe7d9750a03fe5faab975dbb27008af2c69994ccba152116b01e4abad0003ec70302047c435bb500673065023100e21183af216dc4da7905d2fdd8a8c541bed6a98ceca6c86469e476d50fbe1d9f2899776c6a1c47ff015faa2aa9173bde02301d9b0a6cbe4dd35c642e29fe9e85b28b28bb6d718fe5aa07def980f18fcd5441d4870e7829ee1289be2d7dd8a328e57e0302047c435bb500683066023100be3827215a9f4bc04fb6f3273784a1f10b4c54c7e7a27182ef3ae4c5343d5bd1fee771f5769fd02e2fa8c5ebc0de58c4023100cff5bdcf815abe5258b447c34d11834fe2015434d590e458e2da7334edcac8715833adae25351927e6eba5dec609f3550302047c435bb500683066023100bddbdb4fe88e54928e3715c70a2936206a8df0963d12dcb4003c2b3827cfebe59fedc12a4d605ecebf5b890d0c475ed4023100ead51031b483c56eb5de97f97ed35a38f38a0929612ccb88be579f941d92540100152e517a7aeebd8522e1e82b1d067e0302047c435bb50066306402305c9a1960c5aa23bad1caca1be06f3e8c5093c688f73c1072c54b62e1da743d3c89ad6f72ccd080f45b0ca518ffb09fe702300ffb4f94ab8b2ee5fdeb2d833e79c3ce7584934130ea0b6eac9a93e0da1c0f6296911fbb5a9028817d058e4109727be90302047c435bb5006730650230112e8596e8927e89be9cafcb833ca8fbc8d574463a01135e1481027cfce3e9ab63a100ad6798a299cbf8086499d8317802310098d0d0cae0bf2cdbb6b37dc38cb987e0cea2beae71aa44f8c62f14b8fdd2f35b8bc7e84ee5b320674d883a00b57715c40302047c435bb500683066023100d0de13a5c0706268e0eb5a01cdf16afc1179eae169b8e7a1ec0c3e5cb5011f055826111215a9af18d06b7e28995183d1023100ebe1a17cc695b0f232bccaac6ba8cbe6cd1fdc641cca371cb1b78b4900c2a1e788fdfa596f482ad1c87adeffaef02a810302047c435bb50066306402304265b1ba2fe805686ba4aba85fa0f54428a2c2397bd9788718d2d5a4e8c4fb4a2fa9458349911631736c9ac5a53a4f1602307e5e6eb99933c2938569f374b942e12e97dcd6f7760ae2786d9a93cc35a6eca9c06722f1f267dd29d3c0e932536382170302047c435bb500683066023100c28e5e8946007ff31f5b5a7f35eebde0503e3f41ae37d8e7ba14a4f874cf6ebea781426c077509610e3c2b02d3aaec8f023100c834b3f243987710a902748417d7f782a8ec1e5efe2d4558b0a02822f4b3cc187af56b6773283851cb2394009ab87d500302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023025cf9004a6d0df4202a1e358e759b539ba5cb511b4e3a67a7bc317e5c064772586b0848737b49469910dcd9862abf3e002305fd44d805d9adfbd241cf92897a99c3364c7a5ac8b0b7bd8ad8b16d4510192c3d0a2a0e3b72017aa746fdf698e0abd630302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f7abbce4a5bd62e7fda07d8f585d047ce7d6583e83459efec216901dd9f70da429584586d7d9c8d3f9b57147ed18165902310088ec618785cc18c532aab91616269e316828676748d1a8a52b418307211993f1c91ef3663015cf2dae857734cacc6d840302047c435bb500683066023100dbbfc83660c6f71e4b151f096a32cb2b6fb3f460a9dd1ca5fbc71c97a3ef632c4216b67cc0bbf6c9f335aa9d320cf51b023100ee61eead9824193c2fbc2ad3e55e96bfe1c7453178f3f98b414eaa0be69a086a0f01306e031581f615564138e4fce73a0302047c435bb500673065023053d3b0be8d14e1cf217b3e425bd543c88f05769bd6a583c74e64db759ec65e6de9faceca14ec981ff2d3157dd81b8056023100e28a5beac9a9a9548879ab5602c996e10633024748a8f5b4ec69e3829d036884f88c86dc03eb5b50ee57b6cdfd31af430302047c435bb500673065023100a8ac201711b7f5dca144b69e72186df9fb6d308e069f1a6f8c44e20ae8d9147758ada3d392a0e6520958b3f0e9999d7902305e9433e6c0a96efa9ec41aeb683449541d564e43e8113f35873a28723cd94902276afd92578fd502a672cb605ba8a85e0302047c435bb500673065023100d6be5b9e4011e5e7df8d93681698f0b6bbc71d92694c04e866cdc1bef3464367bd81d55f27c77029e09c3d86fb7223f202306cad6166462bb84a4dbc75f32f60b78e17087cf33b6cf49f324c75e74de0102be6dd4f388f1a5f7d40a2bb4c4af76c450302047c435bb50067306502305acc1abf7d86b84d35f67bbb780ac5c3edb42c3b14d4d9edc9bbda5d49210e1e0f350b333ae0dcaa06c197e1eb403375023100a48f486e9d140a2c284687e2d4ad83f195447c7762fa00cd07b48ef4add0b67d43adfb90e8bb2f1bbbabd6e990cb65860302047c435bb500673065023100aaa2aad4db40930400c2ec7835823054f29d2d8003377d17667939a99a604e15d485f1b67976db87c17fd1ae219e1dfa023050f95663637fda4481892b0de5eb8d01a13b29a9e3078a2391d06b9b4fd13a6c582b2706214a9413ae1d5d5c02d0327f0302047c435bb500673065023100d9068e867c973b2a2ea9e991744d2915be2f8ee64e60abc6cf37ad8c5d1d47c6e19a8e4c839de9978da7b1c466bf46f702301ae84d72bfc3e13e69413a156748ba711ab7ea4820a0b5cd2d60b54ca35ce36f5660d07abb0e85f8596e8a1969cf7b770302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023038506b9da423f730e086068f02a580de86e0f285f06940716dc598f019369b28ed118893e4c5537765750fbf16fd7e190230442b89d4219e704f9db033734e1658b63a70523e7be33fc16472abfa1717334b4f8d5d2d48a84b5402c302a0912fa7030302047c435bb5006730650230109c55d5577783a3c3da169aa12949d192117ec1ea1a5798ff07ef23c342a850947324228c6662bd66f17f66b30c8083023100ac81233a21a75ec4ff127f3bc1bddcc080901b040e9f0f6e2cc9b4522eed356ca9f0a562bf382347542f4de17dddad280302047c435bb500683066023100e983f859c64d3404643c5918cc4c031d645820111f80206e92ec4d156f92e2cc923d55ddaecaf157ff87922c304e567a023100e3c9edf582ad2ecf23127567849972436999e55dcb17f251791732a83ab9ce4b623fd80cb58a05fabda6920b21e25a7f0302047c435bb500673065023100f53cb8e8f236d5bc0d435eb0f2c73f2a1e187aa80658d85a583d8d2c8dcbcdbce82db62939ca8364789545377ddea383023023f5fb71e19b7931fac9b127bafc85cf393326a4db35fb9f6081ea7828e933d08b3e2103b2012f1874fe5b24369046e90302047c435bb50066306402301c7133183aa4d778705e4cfd7b39a31e721b2bce905ed9157dfe35de27e4da7ebb75ce155ce572655b153c3fa5ca229d02300a4b7184543d358fc131b42dbbcd018e15de094387afbd0d52d4468c9309d4ec7efb1cc0bf974445f35dd84b84ce54790302047c435bb500673065023018fa75b3f4562846092c29ad290b21f311b59cfffe7aef17fd6ba2c3c571fe2750aa9256e84c0245baac18f8d0352142023100a3890550ae6d2c033e9f97186f3e1db546dcb37de1511f8bf92a542bdc39f0310861987c257f82eac29af583e63f8d330302047c435bb50066306402306b9847aec48c29035cae019339a0ba9a7d63a31803e62a5f0111aafd5290a325a1966a22a895891715bbe1ac06ff748a023013a06bfc84086b481b36b1330662cc846a2fb7c84430ac438685158061608ab56fe2594624fccfd1f0c3781b8d3bf9f00302047c435bb50067306502304a92f1d950172e57cc623e567abe0cb9818e9482622dc699248213d93a19a75b14a80f79b8ed881547ab5e997fa71b5b023100d978395ce1d65ac5a0bc0719e8b37470d3a6284789a6a265803ae5384d74635ef087072a0f9a3c734aebe3f4f933d17b0302047c435bb5006630640230115ec35dcd5f564d7387ea2d11d36faafe145e6fcbbb0f445c3423e1eaaf56ed60dd93e7a9b1b973ed0fe1b596c1ebb60230110c38b05ba3c51774c0a2281feee6eb7871146d877c15ef649f057d6a8da6ffb9517568dc26d13fa2f954676606cb7f0302047c435bb500683066023100eaaab4b66e3f1f654cbec692abf9216efa0b768b9dd618588c97de049817f7b78777294d74af0b23e9d12b1b343b002302310083a7c944e87b711b3bd1c7dab08de4fb1c5ebf4c4a8f7c9799ad546b89c5a54fe86ae02884d680acb8efc209f47ad7db0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100bd5591257d7b90e10527fb612adca6c395af1a5d0f5645a94704031b6480bf8a3421fb32e17eb5b8b05ec9acf6f30635023100a408ad873388d2e6cf13b729e247914f10ae3784eecf181bd433c70db60bea11fee54e4ad48ade4240ae2dbd454e4f560302047c435bb50066306402300d53a2247f485620e1eafa68df906c32b6b1c2c9863b7e0bbc0aea8cb52a976a72170422d10663ba0ce5ea017f5e097502306b8f8b9d3e8f16e90cab81d4a16bab946587d4f85849d2310f2cc9220d501f62e8a9f7d4f6833bbcdac0e39e136474790302047c435bb50067306502307efffd52f69a54f1335e26e8178201a29d3622c8f8c9559e8fc547bab004025131f7f3d7a09f4afa3d58256fb745b4b1023100ab88943874011edf61ec2f93d92d872837f6e220a67d4cadbca508b7bcdc05ed2e8529dcb54d3a6075f2f701ccfeec6b0302047c435bb500673065023100b86658ee4d4adb30c335188c769ddf8759d5bda283f955d83d72294af1f2ff70df840841f85e4d1a779225e52b0875f202301f36d85b5823b8c3790cfbe7d387cf2b180c2db26acb2b72a49815f9851e76bc285007302527c86b473f2643191a15450302047c435bb500673065023100a8afdf90489415b4e5a3d5b73ac05dc1a0b28023d1454c5f43a94ef06424a95f6c4bf0a51295c19025bba06cd84251d502302d13d3628a30f730fbde9328216a846cc502da0fc11fc1a7bc7e7f99e7a1ccaf512c6eb363ed6cd563008ed85f3b2c080302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023009aa83763f9f6400c09e4e6bf421023ada78b6401d20008314248355c12cf6ddaebe6d0bd3499f610c4703c3722eb8ca0230297fa1d31b7200c960583c68b4c25eed429b64c4ecf7b8b08b39110c28444aad5ed3cf9ec89167e490d7a4e2adb2b3430302047c435bb500673065023100c58ef5365a02500f6e22d4a8db740fb0acb8cbe2ad9135cdfec48a6b14937a0b717758db6a9c1ed0d58b2d2023ee7d5e02303092328a2bd94422d276c728410c2755cbca19378df86f4860b8996fb68cd4f2c59169e9956debb13f00852c49eca77d0302047c435bb50067306502307bd10bd39aaa925a601df78e4652c620e8d16f8795022ee50a58a3b295986307a1470102d0d16bad49fc9b9e760776d1023100aab484cb648f4144c9d2eefef2a447822f4e957d3954234705e36b018f5d1aa96698ff08691e41c7851fce689eece39d0302047c435bb50067306502310081c1cfde9a1ca26aa9d028167111eaa38f0f0f063960d2a23fe67b60ec745069df607418673794c328830175f558200502300efb48c747a0f21c4368441eabe5c3c26c002df934ace326ed71d8b5a4a96bf70039dc42e8b93a7642cf95e1665e394a0302047c435bb500673065023100f382b913352920598593ce18f78aaa6415cb2fcb717a4ecb8984741c0a6e122413d4bd38ca03b14bed902ac4e198dfdb02302092aac04645e163cc5f23f974a3faf290feb41af8477977b15fefb1b13e29bb8f87a8065639e3844e615b798c157bd30302047c435bb5006730650231009d1088223f36a86c73ab7f75343d4509829562601c68e2af65473d9fab69fd61292c1c7e120fb99b0536d4966cb0b53c02304c7104bdb3e048f2ce54c7c7300ef5b4dd6108341d1a95dfbb6a1fc9c98fdaeeedca62073120f2c82bed7760014bb1f70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a2a30a61323e31cf0d0e309b28de9328fb23df4adf4135c67ca81d933e3046877bec5ef99b3d36f1d6c00ee2a4ec6c88023058ed09c32eca5b9a92a000f242d65c8f64d67e61eaf79198b6bb05318de99440c5dc7586299c4fd8430a10957913c59b0302047c435bb5006830660231009adb3e13143d7d1bffe38e0c3a964399ce234fd32111616985d6f92409206fadcf8f7716b9a56b2588fadb78dc7924e9023100a07f7854167040744ff0c5bc09a73b2f51db59873e099767614f2375a8976084a2d13c5dd0d35a69b4e6743491f256ee0302047c435bb50067306502303c9eaf12409402bd970960079e035bded8dc43beb6b7aca1d99418984a927d0683c1b2932c024546c0b671704398bc98023100bce1654ccddc8b5efd3535e8fa712e7d39a7bc04fd0a30cc4a4bfb9e6a1d197f3ffab55ac4a745323f8fe51ecc3e3cad0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023024e0a1456610e5f104b82bfe7fa56054c540e2ebf462c0751e0f3f0796641f38968d6ef7732766e6d5425783554ea3e4023039089922c6fb79b575570dfa4012fbfcba28d5930ebbae176f26c5f860c48f5c32bcc1a33de550ca9223edebd0d199480302047c435bb500683066023100925d5e2b098e1665b650d3e0fbf8c32809bfac0d9a9fbf0c3fe257020a11194258c1532c6fcdce4741a13a54cbd26d17023100c9001e8450c9ca4c75947818b0c120f9a04e66304f989c66480e98418d567f0318748cd1ccc067d01af3e01a0d6cd4840302047c435bb500673065023009bab201c6f770a5e7082e527632f26f04b1a30d948d71c67f62b04da1b6188634c52fa45645c4cf722f849512784379023100df1ea4ac31e02e3aefe7e752cc950bbad7126f361a1ec0c8bb852b5c86765abe7e69ca8a38d54304c5b6040e2a3a25500302047c435bb500683066023100e35f03b8cb480a4ea265b42a536313d4eee956fd3c62664786697a812e5c5d49eeac13378ddb28c1c4796792af4a32e70231009d6463bde41bd87c5a00b0d3cbd057fc57238dcabd305bd3b1bc9f9aa4ee7ac4f7f7396be4e65b961a6e9fb001d2a8530302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a911dfbc7846055fdf3636908353fd8c1e6b02975e3d686fdfb936d53849ea2434afdccc3ba263c928712aa33eeeb06e023037632b19cd43f85d0def0753fc51ba4ae428df705e99b7c37da1cdbc452f8b192edcfd1def8929600b381093f11fa6c70302047c435bb500663064023057bb4cdfec2cc7833c02166a2bd13f74b552830b0e1dcc68bbd51b39e267ca8b44d2c9df007c761cd527b4f90feef1b302302f09df8af6e781590ad2597c2141d03db84a6b2d0e47349645c5e3924bca5f9ce51419809bc35415c51489418958e2d50302047c435bb500663064023048631e61e8dca91e8edb138e9e688961b84b24e0441c65d2c1ef14a83f906845dada99ad0f6bf8795bebe3eacb7102f30230366d5b3f5f13dcc505c0653138f1280721e774da87c4baa2b07ab33352c74e698f5e1e7c764cf5c7296468bd769c009d0302047c435bb50066306402302cd6e0a8442c1fd936d1c6c6225257c49322432c50855e5a0df2a6a469d0360a24215b463c3135d30278b48e635c065b0230277c79dc01a545bc93e6b67e76e7844cc1376b0bb25999478e29fc38aa9e54203759d3a943f79fd15f6a3b34bbbb926c0302047c435bb50067306502304789bc7d71703af31d360b644d0bdd4327b446995ca0bc2eeee885f283301e80f5beff1234a640db7ca63088f9fef408023100c95b7599469e32b9efe94439063945849efb2df14f73a10fe643111775aa8e6416eab079bd0975e5a594764fc490c9e60302047c435bb50066306402301631b39a8139285e05e69466de7f87e973ffeac130c8d23c763c5cc276a78950e4182a3a24e0d638f4da7eb870f2df7602306260c780c925152bc16e29276629e2f291e287b2261722504b3a22c6091ada84b0feb253a12193c02716f82bcabf32d80302047c435bb500683066023100efce64fb7ab71fc775422d61f595962b7956e56540528c510763316183b962c7233c265744abe8396573af70abd96ced023100a8d70be22c6959c450ec30c0636b0bd66104ef0393b88f1606558476b87c14e33f692dfe3acde6146d83ab91fcd4fb420302047c435bb500683066023100f66dfc80369e155396d8074da2342002ed9e56000997df22f32602ec4c2ad10757affbac7600beb731805fe56c7b9a2c023100a90ec1e0558114dce0dce3d32c9aeede4e3bc596460ae010380046c57183128fd85f630470f320583f0a7c962800962d0302047c435bb500683066023100975a3c8f70ed220d815e3839f48753bf990648adfecb927eb4a7fe0189e9332d4c3aaa3ed9c767dd3ba60e10e298d502023100db524865ea31f9dcbc34c124e30120dfa62cb20f171e8f46b6b05679cc140b9dd623dcc33da2af1d34cdb47e8563e4730302047c435bb500673065023023cfb8cd3d5bae3cc6d31f0559b3e9d4b331442b8f93577246932adc9b0551a07f0d05cea744068004a8452bd9a69e40023100c37ce0024a8656093bc7221ccc7f4b0366a085540c54477fe65b8f384a9f2ad50d9431eb057ab550d6236d77c2ae0cb60302047c435bb50067306502306ad2f1aa9586f15d0aa4970bced942012c04dc2a9eef16d43311942b5c3e0e2a40f8bb7b22a93be85a80b0f3e575b067023100ab3bc3845c11cdcd36f8764b03352962d8a8bb3610b88c3e2abb85d168f7c21d3e97221162f717b335b27d498edcd9360302047c435bb500663064023054906fa3fcff82c085f4ba374378b4a1f58baa1327d648aa46c8c40660759995f35c3ccd546cff0031eb66f5dc082eb202300809e1bfc759ed2f89739eeca2bc7205b40b7d3bb44310663c6f533658cc5a4dc284b9b0db34a768c52fd48ee4b1790a0302047c435bb500673065023100a7c1accbfc538271a824909684672c9635a5dae7c21cfa0c3da85fd8e1f0da1d2c855db1287c989c61514d0b4005921502304a36ebff852ec14ab4bf92975e702c4d96a87a3e91a585b34627864086d2b3d97b0af11ce5b8bec4c710dbe1449119b80302047c435bb500663064023059bdebeef8fb3323367cae13a54fe288c0d07345587faa13fccc7ec1161045989f47c68c2a287f085ac186e4eab2c5de02304cdec9fa3c2cb2b934a66f631c7b13f615e6333bbf5573107e27a426e67ed933ec20ca6b2296e19ca333d3783d0ef3d90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310092d34feeb1548ccd4b6cfaa48e1e48714cc626262dfa8f0f8e72b9039a924d65f3a0cfcecfb8a56e571f82c99621df49023100e30d40574fbbdd1b724850432919a1b574eb270614a234ed2be36537805e9355d25f69b2fa67ed27f5d25da22d0880bf0302047c435bb500683066023100c39b446565afa59eeee92eb8ed130076a355dd01492f289dba2dea8044eb8b75e5aae55c584e8523acca3b19f1e5dfe7023100c4a221a8203965d2e12646d747a9da537ebb851eef711bd6e37f80506910aea6833fbd80d7087c863674f5b69325a4210302047c435bb50067306502306943f0b185f77433a750a4ba364a030615c6b02fafaabeee7e84b4935cecbfc7a6b28c602391ca1b9c64fa35a6a54712023100ba999ccf3eedc3dc692e256b7820fa8f1174fe4efe3ca645ce3947474b45c23eba7b3601fa974e7843be1573626d62650302047c435bb50066306402303b9cd325786c2759d7cbb1027719ee52944b6405ab3f8653f0dc64b8bf6fcb68c7603d98dd63627a142c5b51f967115702307766caa1f2f8cd49eda05e68bf22094b554bf256aedf264f3765249b04c3f030fe7cf32ba610a3d767b6958f642a22b00302047c435bb50066306402301d7fe9afd1cdf465ad0764e3ddf183e7992235572327138e7d7c2765a89b1ec4b5cc89482495e67089fda2cd32e36cc502301cd5486fe57eef595bacb8be097e37f24863c377c4ff23157a1707b06d52df5367efb28c52989c433b7d5f7ee05ba6140302047c435bb500683066023100e0b9412e15c1d5b316a67dee8a17cccd02ddcbce7703067bb105e1d2e6e4f965e78878480acbb2a9d8b8cf90bb1a67c9023100e38aecaed9137de545b9d560834c43e77608f5defe8eb548f1cf5a09cd5cb770c19685290cc85d12e7d5aaebdbe301b60302047c435bb500673065023100963d42bacca78732aa030b8f50f923fa890e82c897c1ed8fa66dd0912e8317e1b28f8aefe7d90c5ac9b36970d7008269023038491fae191753980ad47ed0125add910513d88ac6c6985a408385fbc7b2d2b8d8780aaf442eca935a82ff8317bb44990302047c435bb500673065023100d3cbdfd7534894cc0e836f9c8635f92fc14886f6b8f21935251ab82e7cc0d53e02c2b3d34bea2294c23adfe48041ee8f02307ba750427a9ed46db88ab133a1b90004813a31521dd7dbc72da009f2d1549da3c11ca40a5a941d096574eff9a403c4f80302047c435bb500683066023100bd88024bc5031fb84e15262a21db13d3e4eece848ab02cf05f8263b908dd2c7d10e0936caa7f8732c47334263da94c49023100fee8c938c90916c3e5e70b63cf94da118d937a5e1e172674622bfdab8854acd75e63b7d319900671c2edd10b0b63bbf00302047c435bb5006730650230210133df30fdf5a24b9d47198c33c0f8a2c12ac2758161f3619169218faab7f566fb3787e4b5b49a0ae76a3831157775023100a58844c4bec856d13690535ca222593ae3f9753747f28d33e78cb1b65ef3f0e1a436d7b6d8467efdcaff00ae505fddfe0302047c435bb500673065023100e8e3e01a1936dd67fc847bf1a8cdc417d150ac9275973fc68e1ad5932a5da94dea4f4cecc456c5b65998b899dab95ce702300d8ce4d04362c0bf1142f2b1eca4e4497e79bac9e849c7104fc89508f8b891c713f3a982628525b770a90fd737ac81380302047c435bb500673065023027e68ae0a087d9820c4276ff78fe8e117e51aff6479c15a3c602a96b5cef7ebba5ebd625970af23b47ee43a363ab01cb023100e393e81b47c05489c3169fe5552168d1e8502bc797b3caf4c288637917f32d4d6db8a426abd16481695b78d77574691e0302047c435bb500663064023051c2dd5222d011a3c3463c7f6a867513cb08f78d3b70f4a887ac8b315d78a0402b4850304b7f822b6d9d8f1b98be13c90230074192abf22395ebeba2d0381a9e18035fe96ae987c3ce0e8f57214b651692d49732925a894258931173eb95937ece8f0302047c435bb500663064023073235d45ae30dcd9817e317b36301af97156b2bb8f083c976e45d8de101541ddc2cca6ca44cd4cb2f6469abdde841b7502302e3844d468951b5ad9d7b31a29d438618f0493cc33f287fb6414f0aadd9ab709dbe3842bea3f55db9c004759d7ce9f8e0302047c435bb50067306502304ca0adbb3d9196ca614259e9df355f1d385cd343cd1f1bec8ec674b688d446a566ae3b32bc45e18432ded58fc33ddf26023100e902a39c692ea1a3309da6155a870c8ded9782466aada9a7b5726efe1701981a12bf6d67d3d330770dfe6e1b4c6f0c740302047c435bb5006830660231009acf47423fd0e07d0a481f66680064362fa2603524b639af9b2dbb88b4cc7deb6a0e0b1c8d2102265328c9cd6fe58502023100f257ceae41eaba328db4259e1975484e1b78556b42e2ef1c23ae248fead4e7430f95c6122ad3e5ac6e469ce803522ee50302047c435bb500683066023100f9ecaa684cee3ec01dff5584c9853884e272c8f282842ecb0c8cb9f059f1c616c96ec917bd9b6d063465b31f6c2bbc64023100f7438a48da8afb32799e8e5612d4deb86d6d993b1e87d1cc662614b8a424e82abc1753f1daee716a1a1e35018318aa710302047c435bb50067306502306d26b77bddcbb2a6ee600ccbeee60b31a3b474587b2abbe7916eb60eba20984ee6445ebea1a5606094e1514b1f1a19b7023100ef19ed0b9d2661e0d1447c15f261557fd3c21e2ce0a46928146c2d836f087cd9aed37bd8c4a5749d33207bec2a8e1a800302047c435bb500673065023100a8ed12f8f26bbd7220d351f3b85daf0e48159eeffeec4cdb5e1469dfd2a3ebd2a2496f06983ab824bb69dca6871a6e9002306f42936ad0097acf972400d79b802f1bd90d574e6b2390137185b6ff7750de40ee75ba09ef394628c543f33e8bdfcbf00302047c435bb500683066023100fd814c0727eabb44e124b2343d5a9a76ab5977fbf8642cbb14bb4fd78c688a6f19a912fbe797b52e4744f6ad9f1c9c08023100c855c150ef4c730e79394a78296c986216a668f88f20dc07c64310175fb7ce9e57908f65ece9d602e58353599b6713360302047c435bb50067306502300133785354f5e574fd28d88bc8686309083df04bd0e8023648689a2d6e844f1a07790272e0b4e6a6054be2990563c3300231008415cae124cfeba055fe613b24d6b049e7d20f8e90d60028e344609419d1fc809747cd9ec7bfe3f144ec75211b8cb15f0302047c435bb50067306502303daf00d4cead79e89f0db5c0c7f4087a3409e1393ee825a807fbf19a03c75c864160f8ee6c8b9fc47ec6e87c0a3afb4d02310081e0bd85976d31fde43d53053aafcd8ef6dd5deb2842775a5bf8baf6b36c729637fbef26c4f74a6a0818d55ba43de7ad0302047c435bb500673065023019a93da42be3719ae0eab84f5376319287f1e42a4a2d8309a3a361840c2043a2201906e99c0db2b7a4715f8042f82c06023100c661016770d6d387fe9712f0837d735b8877aff8522ec372c023abc15705aa9bf313487a7ffe73d5868e2e205c59a74b0302047c435bb500683066023100d508f9c3fd9d4c4a79769b82bc5b850624fa40c2bac6e5cbbf40171a7ff326ae6214ec5111bcd4de69a20004530af24e0231009690f4fa97d032567e4a9f18f7044dc001d079be01b3ad52d7b609853fc83433240ec339c213a8d1978075c7e4ce5eec0302047c435bb50067306502301bcb277366f643d750a33c7cb6e27d3e12b5e5cd0cfaaa6e917e2c1f888adc9fa7c8322dc4b9808dae0c8dc9e857c351023100c4e80062537195d4c601265f8aecef248556d7739eda23512aefe25dacd987a0a18d65b0fa16b924f1f77164e6fca1610302047c435bb50066306402303103db8b5381747f78862743428cb21408b4f987c385f21320791b1834b39e51625f034c7e75e617823c933de994b69e02304436fb20cc3b7efe2eed297061a07406cc6c946fa60f2118507a6458df5b287da6d5647f5960c2cc5eb33c66e42ede940302047c435bb50067306502304662eacce21dfdf818bb8342442053f61712135875ac575d4c5cfe54dad47d50621d2fd298812dfa5dee2730afa8bd27023100a0a208eaf0a91b66d1f2d7c7f7e0d24ddc7fcc5de149f2759493aeea3b578bce28781fd6494dc468f58e4902094e20e70302047c435bb5006830660231008456962b331d646f4af4d431f41479464726948d061ee37a89711804f06a403e2f4311d245f286bd64ac1c3a4b39fbb7023100e29c0b07bd8c84697aee545bf9205703796e03177a50523620725b749332ceea3dba8a5ca3072e8705fab3fd9cd7663a0302047c435bb500683066023100bb20299f96e923d7dff1afa6196045d5a3e7f5984e33c14e469005db0646fe04b6e3f686741219416b63611e8f66a561023100c3f34b922d9775fd8658ee08899f8abe58f9ff05cd06094aac944835990132ba10f7acfbbea4430e379e4af87917f7d80302047c435bb50067306502303e2e4476e0c429bdbfd9674a0e54298af15c2649a266dfcdbef7dff4112bd4323c553e01b2ed848c0d0adcf30db1af2a023100da8d62d4d042876d062f26e9ddbd9368b373205529e6b918e7f011325b7d044b6f7f227f80c864771f36af4870ff54910302047c435bb500683066023100a5bd0d2ef080572c97e9ed8cc79e9748369b3c80f2c96df8bb149993cea3b71e9ce7eb353f2883519fbe4bd43b48d69b023100dac56a8e18632d399d5a454e9748aaa8bca268e3956bc4f605f26a104a8b4b38e4398d206bb6c1ee367dc291250f74610302047c435bb50067306502310090b80f01618fc47e1e25b9b89845d57ef0ca17aabf675c8ece7c795ec14b73da24f2ecefcbb20986bcde5eaf25b8317102303c72c64ab344160a2c3f44689a7046b27d7973c45c9661f1097fe6529dfc1e111b8b1c85d64f9c9412ef1c86f130e6730302047c435bb500673065023100f44b6197b49fd4487568ddd12e40029c86199b0d52209c2669d70c4677602c79445c297e617ee9ff8be01794eec4375d02302b4f88e1f079ce409584c287414e0ef1ef4cd25b613471c6ebe84cdf695f796af6d1d693fe946912e374c3fa2d3890030302047c435bb50067306502310085c130f50c45b2ad940f9a69719b958f163a0b1c84acef94e76cf12dccf4d7582990ad3dd453e704645e37fae6dc886d023001c5204349bb7422de8f5bd27c07e6fea5ebfe10d696f22cb304a60ca435e00542d991d0ee32e9ba2c34bfdea5bed4310302047c435bb500683066023100db794863de8ad2cc9a3413b794a529f5f8d293f13e2df28f27f939e20654465bfa8b8395e01e71b5492578e866c5bd11023100ea56e53b80adde961cc6641e1e358e0ea45cabe2cd009f730ba831252b686052a5c5ef73fafa3ae623495e08f2ed40d80302047c435bb500673065023100a146a7406db06cb222139faee9582f3e04472ef9705770a40a2daa0295796d5020abbf3d4d0a9e707ae18b664a1961ad023047a9055efe6af71cac6f462bd83936fc826eb7365fa5f800d8a720c85aae83138b28a577d1ebb8a0a6407308f26d8c0d0302047c435bb500673065023100c1981c9d2f05813e203a56e346cc277e452780d3b2f9657938501f51daf0a0d3e8db551c561d06649fda7dac0ecd4e8b02306699698f1268d3366f8817005eb597680efb823ced3794f4f0f0a72156629e7537c3545f1fba9cd356cf68c7041fd9be0302047c435bb500673065023100b99fc405604d2987bd8e4fadf956d33ff056d603b70465490c92612b5c31540650daef53cb4d82758bd7846ac22c348302302e383617f31e2d3dcf0784cd4cae8d8551011f753b0ae8c5eef66a9e2fef1eae7b5e93eaa44d4310bebb238147ad337b0302047c435bb5006730650231009352d51ff3faf50e77464c1ce66d10d7d86276f4e847d84e509977aab9b59c891c29274dde5d67c02fca1b434c85167902304f8fcf9d447a5c8edd010947a0e5e53b218a82775f62e6e4f41502f34a16507a23b7caa088190368fc33726a8c9ed4510302047c435bb500673065023073af08ff74bfc0dc4aee313861cf4ec3ff8fb7d1530af2e536bb7188a1ab5cb69eaa7aba5a12f2a32e5f12c5b6b58c40023100d90f0f92ceda9df007e1fdcea824a3fbf77086f755930a4f1c4f6aea3fc19d6a1748c16ba171d29285e6b456b4a8e5490302047c435bb500673065023027902670fecff4bc76a8309837e378a931a9d3b7cd86e2583118208fac7e5b101cfd026dc9f46f894dcf3bfc0d2602bb023100bacc25ff30528b456c6a0d9e2ef4a9f22329d77ff25130c30a62be4bbb0450e8d1bc124575b38b0086cf4d06b06d4e3c0302047c435bb500663064023000d935965711c1f2095db12dd79e4efcaf0599ac73b01ac28abcabf5e02e1448505fb447f0a2be17e9c2bcb8949f455d02301ba2782f44f7a0cc37147116621b7abfbaa6ecfbdf1bab505648a6cd872c35f7971df70b9746159863daa8f15dcce1f50302047c435bb500683066023100bd91441707ced70c594f8ed33617971c9f8021dfc7b53e3a7ebe3a68c65b5a6f2a203bce7a759f817f6176fd200541ff023100f0594664f9339f5bb9eb91eb876286e6b7e453814b311ec8ba9800f142589c7f6f50125b83d8caf7f9aa281c848ccf3c0302047c435bb500683066023100e297890cab9d9b2b98ddeee6aadb2f80b843f3127be73ce27cca10520837bdb669bda45d3242c5712303e3169b4a82d902310092bc3578ccb07fa1f29aca1050c221d285409164a5974ec204d4fccb8fb911a43d8ace64583b5276411e78812de49b520302047c435bb500673065023100cf4c26267528c0c4e3a5c6fbac061437bfeea88cd1757de78ec8bd998932e90083b6f37ae6ae0b5dcecbeffadd80856c02304059b0d8c9fc196a6d4a7b7349e871214c2b8b734ab3b3b4012e4847f433e5d0a78a9f98a2b1fc68444dc3e9427459000302047c435bb50066306402307f90a46a6f12430072a0e49d3717e3b68042f90ffb20ed2f2288b57b7f274447ee563bd19467ce35f2890ec20d3c211502306f40a9120dcd769161a22b34b2cada287e667badd5b4ed87529111ab36ec881077dd9ca86e80bd3867528e7b18c1d4010302047c435bb5006630640230665e0c641e1a10328a8e9cbf1cf6a6a75b8e453b91ba652ff47659425ca2f6a00f2264e1fd8ca2aa5f14b9e33e26e9cb02301b37778dd636f55f8f6759f1c444f7d88e259e543ce73aee7cf795b434d342b806ddbe4c88247bafb7f9083c09c434ff0302047c435bb500683066023100a7ca2032f5d84968f907c174245f050c5bc34b75408a81474b941cdea7e61c41bd947c31a7805c91db60dcfa0ecbf730023100dfefef60ced3990bd2cb6bd58ce8bf3ed49919d90a5a6592d1f5e9781b1433d2d6070df85f14cb0ba357ef3a1f9481360302047c435bb5006630640230660ebe749196a1a2d85ac14fb87b49f3a46e5473044cc2f1848594ae5ac99dd4bfb6853e7a8dc0b2802c7fb0f2b187e60230400fee42a4a5e8c0c2b1f01d4e5b884e459c85dfc9c428c90d158f5362a4cecdbd5506862de8076db04360b2d9e63d040302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230760d0a591b00b1374f48732b5f2ba64ade3c1f19723db0c4f26abe27f53ad22d081dc7e6375035206e4bd552406f6b0b02302b8759755819b81c45dbfb300d1a8e74e5f58b8ef5d7948cbb872ef612817ff80eff07362bb189afa8b5bee2edbb876d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300d01c311c83b166f4da25ca0ee0a93ac194740be23e2dcccd6f8cf005b921d4d9c101bb31c697bfb994dd8d4924d2293023022b7e56f2cd40950b2ff24fd4f573739bd2656727504814dd4754961b3bed539bfbe7d7c2e115a86a8cf05f2d37addf10302047c435bb50066306402306186bb761d8dc8d8af11d22be8e29ca8619752138f8789f42d553dc81a8ea2f080589cd7045ba61d28da239d94d41cbe02307dbef74ac382935a67836d72d4b75ad23f93daef612efae86dbca2314b3d2d6e6d2a6f14c4d870accb36b0c871dabe7b0302047c435bb50066306402304e1ada43037d5cabba56193d2fb7fa1db623892d29128e6626099f121b60b270d5d8da52ba7727c47176a093289ad7ab02303dfec6df2e5e81c2e85d1092970bf93b404b523472f733afa653c2d3b15e6d0ba9051e0b39b2577268f119030d0ec6390302047c435bb500683066023100ecddecb2ff839bbc451b19c7ef3b41ea29c0ef1b582507bcc6051f2753ff337ed33bed26a411406ca37195a3bbb9edef02310088ed76268b92726093616119a42a06b0bf69b7e516a08c017245802749c328b2fe23565df28fdb36486061f73b7a8b4c0302047c435bb500673065023100f5a8c80312341c14f25eb1726409aeefd41dc7fbde0f606daf4ef30daf3816599d59dde51714467664d76c4a5074f21702301108ce747f9c3b0f6a42f9a4220681a2b568ca72b2263e024260974cfb7248919f73539401d7c62961681a180fe8f9980302047c435bb500683066023100a2d1345cdb9ef65f2be57d9b394a0e333032b6305a0bf17f5f8e332eddb0e75c62fdea01dfd5b74cb97a643da5f93453023100d23eb16525adf4cfdbdf5bd7e7d3833126ae97fff579f358db0fd81dbcd3c28caeea66803125153e833d77fa45e7dd950302047c435bb500663064022f1ef3a53ac3e9a5f357252b6c1e177f29940153d6d1490356e96de6241fe62cd93b4db53ccf99077b1b983963283440023100c7bf4f93c44ca020ed594d9a1461baa7b21577916e8b6d6cef23ab919b3ee51eb1823081ace3f4249da6916ed2adb95b0302047c435bb500673065023021cd4de8843d0251964f762a51d371a7218b9a90da0c0b1bce163e34819a14d9a88eb88baf055de505c820ea8246fec7023100bf174c3def3f50b631e78fb5da77a816d9641db579e067d209c66530f16bd631dadc5092f0bb0b5235860112162679910302047c435bb50067306502301b0e8564f165360ad3e59c697aa97bd1ff0cafd980435bb10735f6b4bcb29233888ac16087e955246151a2d10cb6422b023100fc384cadbe7e983ad6843393348dedeca36f36317356c2989e5447eee23d9f7ed0e1017bd094df693b34245653165c6d0302047c435bb500673065023100eacb5626d32a8c060a4a1fa88fa642129bbd4a4ee85d74d8ee7473b6897f1cf3da299e2892ca41612189e399a610b1ff0230571e141a95f1697dba0c4ab25f6b6448947e7caa9fec5bab2db2faef5025eb9831876863351c43b15774a2a12f1cc4ba0302047c435bb50067306502305ce4a54d3f73ec2dedda21fde16764a9f62ab69c1f8673fab6308fe39004ccff7e2fcceea27879986c8645269b7625ee023100ce7e51ff9bdc394a6bb705e58840594f0b9291f148da5a3593eab694f17524a968b43272812006390a7d677641c2be220302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c3f3eca6d031adbf667728f8d73db85e723870d06dfb4f11fbbe616375c30a35ab03127f48c4f07e8a49032f0e40260b023100f08db33da76798bd5c486b44395e521c4811f0aa9c6bc047f1037318a74bf40ae0bb1779935812ed016c1094a69e19fc0302047c435bb500673065023036d69b450d356ff90cb5a0227fed7b9b161946271d8df8ee820f5bca1f392f1f7772f02002e89f41e56c47f1ccaf2be0023100adaa2d890b2ac1c97bd0ec8f7ff1beec2e184d2e57e473a38efab9c2355594087e428438e3446602bfa244bd50319d2b0302047c435bb50067306502305431fd501500816bbb594787a92089b0a01e2cb2d2dca5312e0a9c96ebb8b4084e7f79a35ac94ed3857d7ed9f54a45f80231008667cbadb3f69c40e5d6f32e0312957ccba3564282014935f70f71e36398b50091ab0c84967cee8e39ac6d7e70f933600302047c435bb5006830660231009f036e9e4e7eadaa003b7f611f5bafbf86af2340805015da307f403e63153c95104707548c890d312f6419093d3c437f023100adfeff3021dc4f5ec2d31aeb5464f19b420bb9b54a204a79cfaf62ec2842fe6f8e98ef00cd5efab34908cbbbe919eb3d0302047c435bb50066306402305661623fb3bf8a42674b15ed4b7db74e9010ca1da146decdab3ee5ef0016bbd7fd06df28fe6c1d5fa769cfcb32ba801d023006bfa0c7d9ca6ca0bcd8037d0531b7d7781c993a3675369fbf1a7d1ad75c88b1516cceca2292b96a568062154b3ab0b90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100be2a81d1476e288abd407d06c0d59ac7c99b1f0b0c832d598d4c7538f36bf78a181fdb4c53065fae90af07108fe78759023100a3423460dc2f6df864544a6f6f7962d680affabffe26ad0df6bb6d7a77425b6f7bfa767b3474a10255af866c0d7e48b00302047c435bb500663064023074036b44d24e6a66804b75202179504720f1712d53f5a453dae2b05e943c4d8e080c36836da6cbbf9bb98ae832b5d1ce02304231be5543b18700d634d9b66054f0da2fd482cade98ff3bfa60cb5cfa7f790970e7cdbf62ecc4ab8ea8e7497dd8a8100302047c435bb500673065023100e46033a2461f9dc9973d7c2f74be1babbe5030a020549852b4682b2922afd8fdf9e2e6f43f2dba7bd007febc3c068af00230545b4d5ff1b88cb4a9ae0f5948e7d3ef554cb6cf29c8c8d615570291c1879db2d166ca1fa47472a331d7f5a7a1ec91830302047c435bb500673065023100945656ee43df2dcb53973074134b0e0d05f6f01805856f5ee3bd02b928c59563eceffc2005e31a7f7929690bca13f5490230060caf8b5176eccef62f2400c5b6144e68bde0bc8915518ee66b308f23c5374e7dcd08c5f35c1554b6d2b396e7fa11530302047c435bb500673065023008b4fa775ea242bbdb34103099a55b7b1ba5dc437643697f90628c8304816e25263df5e8550998131901c95fa060ed1b023100f9e3dde9451fde691c73d811f8ea079814d18c7e83197a95194a9941dc44ef820c4e242359f27c8e6f24958ca8e1df1e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230575b7e83d871bb1c520153a4f9a0949382ada763871fa1ce0ae9617ff563a827b16d8548162252cf86e2e2e972cb83ee023100bc18ba039ce3b37e07b256c7677b19078d9bb964133c45b1a8b4512d0f906fea169e1b870a51108864a54d611f1f475f0302047c435bb50067306502300b979284227ee14083ed5e50ed64c94ed6382304c0fb67fffbbeb39855e7e13836a512728b908209abfd9445afa8155f023100ca285a5c6b76112df3e6299215d27c45c80fb63544782a165813ce4f4dc26f403f008bf909104c8547bf089da9fca4ba0302047c435bb5006630640230488782dbeee156a33a74ca67bc9d51a7dea929542b6d48fc58b1d921e3da84e8efe3eb107a3df4c62df04a0c120fdb2402304e3bf834bdd6331477bd377780cbea5dca51ff2bda2de2505cdbec0c7347a0e4798b90de8b6e177774cccef74fc5fa2f0302047c435bb500673065023100812f00d1dddde432f6e3ff7b05a8c1fecb69a82d753eb9ab94c0ab9b407ec258303500a9cc383de77940a7d224d002ef02302545917277f6fe352db8869b97119b88f2539d2c92609422d90bd76a1c48aea510cfc0b042100d6a7aec05adb1459eb10302047c435bb500683066023100a370d1dcbf53e219140aec5568c64882989adfb08d1d63c1ea45cbfac6db1712f8a755310c064fa64d84b38e96cf96e7023100e7ced0b70c44ab709e1940052050afbdcfe8de0512981320eba95825b9f8a2714f80b9599605eb2d3f53264d7d0605ee0302047c435bb5006830660231009c6a06b6b6ef01ceb99383266b6757af4bc3b792c6c744650b38fae2e437af82fe29b7101cdf5f0d6cd98605fff6035a023100b01d341394cfc31a478c301e26c24587365537217a1b7a963fb946a2c3bcd1b81ac232d5ce636a5f24f454edd3543ea20302047c435bb500683066023100c440826269aa80d0523448c1d25e04b73c7bcf56afaa8e4502459141986b8457c023bacc68b838091038652d375bb71b023100c34fdede48a143e975ab95d71c682b4bf40cfa584c106500cc8d1c07ea3a1eb41ff12adcfdaf21a506f4f41c062971850302047c435bb5006730650231008c4bb323af4e63083280e478ecade98be520e92aee9304ab2ad865f9918e08380d19774771a3074ef52af4004723936a023045b7b5aeec2b6a4acdac593b177524c7a07c33e81937c4333b08c6860eea39e42b5c11e1ec7ed522c19770d2da9d8a220302047c435bb50066306402302703e0d9553bfd3e97341f030e6f9454d4beaaae0651f3a3c0ea327b309382e170217e5cc3be3f545222b5c4e25dec3302305a850374a86c75cddebf366c610d53e440ef051348775bfd9cb9c58bbb20cc7cbeb681a94bea76070f4724f9d30e77940302047c435bb500663064023008a6b6c1fbe329d0725db07d0fe8d210c23c710725853c74b82431b9350d02d3b86060b16c7a1c3e7f55b8cd30d3f846023077bbab90a10be9caa1b9eec5f9e870d9567cd118adab9b94e534789d961fd1834c8f9af618133b731864c9a2aed50a940302047c435bb500673065023017e8a61a4ec1a97f55bd5c475ab0127906cae2aa97096e1fa611e3b7933be969e58b6072d47c45cf37a5b6f6ce5cefab023100b898dc92b47f2a871c4466ae476ec918be23c6572c578527e5b014aaa1c98d79452b4d54f9c5af8860778b06b634298d0302047c435bb50067306502302df16901fe9b341a75261bfd84b185442fc330d8e0e890179a962f6e2fa8825f1b918ec4becc319cf876e09bbc0ea7a5023100ba80e631cc9dea43238b3095205624c6e68d9a1cb2eb71ddc455e4a1634b958bd7be3c1f1469d4896fbbb885da0d4fd00302047c435bb500673065023100c470c6e5f5e37e89256fb2e7399f56310bdad94647cd8f8350ddd172231921219bf30bc6a0173c346172c3edabdea78d02301b12f6d6d8db1933719cfda3ca33fe91eb93ad8ea3bafb87c404af43535e42294fa5116bccd0a0da226f8443ee54ce3f0302047c435bb50067306502310098eb0830ae0459f4d682716851c12861b9fa8db7c516464cf9e215c70de174c9452cfa43f05b06dc0aa26a9fc7a0449002305651fb1f6b5dde2db0285cd104a57c01ed5d92fd94813774aa0ebe30127fc83823787f9192b28c3a91e6ac7535c712d50302047c435bb500673065023012e226a24886396608d870ea912123a54265238d45a4efd7fc969fc3616dbda7dfd263cf845623fe282e1ad3ef51bf7f023100d4c204237ecf8fe08fc46f260746138b1d9336f7c2910f163681384d5847052f3e7611082a5ff1350b7f7a560c86a7d20302047c435bb500673065023100b64e1ef5937df3cb9198566e3bb791100b00f9628baa43dd24d1b0a6e0f991f23dd297505f052c4c9978abc73ef5f6ad02304c42a0931e94b3ffe898911b1f1732c3e4870574eea8b70c01a0f90149e98bd3ad9ea093ac3592843402d055873e2d860302047c435bb500683066023100de20a5a214282f9148e7f1d4956c8c67eef705f0e65981fc5e3f18f00f21e53ee4053d9f67719a95fac4002ae1156e79023100d25f162c9588687634b599fc53f2b13cba61f5201c6c3a4b356bc2dedb152f6f974b30618bb434d8afd817809dd5ed900302047c435bb50066306402307582501978c0d3fe01f9c16bc5be9448ef841c7f419704aa4d82432976eb78bb4ebcb906c7e37f7393a3a4bb27dd63eb023030f69cfaac2d9df6dd2b546e98717054847b37aa590c85cad84531fe1ecad27510075f3263d883eca4de0952a94d3eb50302047c435bb500683066023100f8d8f3805861d0cb5f0cd3b76552ea04d46498e8c692af1fea0e2482b747335260e830e299d62ccff25a0c3aa0a3c55c023100e7fff3a06daac7129c3b67148ca55e119d4ef9437f01bb798f658f32c256de3572c05179c35f258a7e787b6da0bfd8200302047c435bb500673065023012bbc0bf90014c3e76e6e4e0c090c74a2d48b3295ce0f6ab271499395ddac945aca8b9567a6dc4bc030e9afe3676d229023100bded0988c4f8cf208441c965a11472d1fb20c6e224e13d3b7d34f0833d74238a8e4323f3ed21e8fbfad4442cf474d06b0302047c435bb500663064023001621774d10760822e8b48480764af51002f249abad7c1d3dd73d3e151f410c4b8709be89a77946e074c4b35061d79b6023054b3f0283808c2192f713fde543f384f3bb45289e4a5e13c111d604bc5f683986aba90d6b766b7a94747ff89a97005e50302047c435bb50066306402307b32859cb7af461cd2f58d05eff1adf3e1f632bfd6c1fce67e6d4fb87091eea67a6600202c8e80bb1b0fb774d42d366302307465d4cf8713a66fe01173472632a5b8b62d3af075a16b3c4a7bd597a0a3d0a6f1ebf34e9f763757c4fbac3459eef57d0302047c435bb500673065023072892b13c93b765795d9d7e384b4c87145120b597a78cd9f143edab1fa5ac270774308aabb0449357dd7c132d3299f4a02310082a58ba8c1eaa1117f10ae1e8cf69788f3419341d8c72dee880daa973ef9596155d51308ae621f390c3022262776d9030302047c435bb50066306402300b4c21473c1d7753f1aa9b5abafa7b964206573eaa2be1bb1e679a7915741bf9ce17d54754777076dc5e522cda9c5863023038b232801ddd7f0d79e05c36bb633fabfb525e0ac799ff2f948e4c3d2ebaa5a53dbf47cec988089fb6ef8064073ebbbd0302047c435bb500683066023100c11db51df58013ffb3ed75ab8edb8652bd38b5d711bc8e2ea42cbc244aa4d64c585bba022d4e074fe846140e3acedf440231008609526a5a2f48516b0a51751edd2a238c9efc63093eead59be243fd01f99784828b3465a18a6c9194e9ace1e532abc30302047c435bb500673065023100a36464581716326d7acc8408cfc4a8920f6041f820536f239e461859fbc66df6e5ec49bb46f1000a75b987a9db7e3e5a023054ce4836c79588027ba9fde0cbf98b9081b16fc6efdba812d1f6dc704404955e00aeb347aff56c96a789db2d364b64de0302047c435bb50066306402303f0a6594f558ac8b71a974b8d968a1cad6725bba8db889507f901d7e699a407b0140852e0627511c4f2df4c48bda40bb02302ee3e80b4949796ec4de41b6b8bac8fa2b20aab453af647f04f9e1a2fa97e0dba4f39d6ce53bcd8f2149154865a46d5d0302047c435bb500673065023100acfee395d157d2f01c644722a953498d3f6d3d299c6dfd4b8bbf6204dc95f4b895df1f91625c843790cb4b78d9060bec023071a4930e0d35d3cd8ea6cd63610eac1521bbd39d17afa64542b005016b9712934c5750aae07d4e74b546e2ffc4dbadf40302047c435bb500673065023100aa13e400cdc7fbcf1b05e49ee59a50ad6fdfa0ef8336cb34373959ad9815488745ba2708f8438d279ba4b28c1fb1569602303fcf98e34237cf96fc42792b9be4fad47c2d36fff70762fbd278771166ac5171ddd82265be2546c8d859167dc6c925cf0302047c435bb500663064023030acf48910bd68a31e812bda3607581f6b35f1290a9b5f9132247833733767794f6c1a6844b70c6c24740716f70855bb0230749b36966fb3a06a437bb3a000eec1cafe6aef690474ad1f1b8017d4a171afc72907afccb90bec317243f85e4d980ef30302047c435bb500673065023061adb216b6d3f8dce9a95c871f804b191ae473875af3df1cb95ca6cdfffbf7320991ccf5bee799470db836c2ff9ba620023100847e1f8198b8d27fc8524f3d92849aed9aa861d5f80d72858559f473d48db3c521d43d4afcb650bd34366aea953de76f0302047c435bb500683066023100c46b8f13e17ee5e65f19a139b423fbd81ff9875b7adbe637bcd3aff46a1c1793bf68f66bc614a4813fe50a265d839757023100bf67fd409a976d31130ad6a824e5d988046f95ff8e1ba2fb3e71dbd06b269c2c103731f0a73fdf630f1a9f956c019b440302047c435bb500663064023068c7100f57875a5c91d1fb93899d0b60ef59b20f44a3b928669debfb03f5e3ba965af81bdf63dc454d36a45542e3931b023043dba878c32f6def0a3ec1b627f01606d85d6b0223134b722f58c30f85dce75a6aeaa24cc43db54616a921fecd72e6420302047c435bb500673065023100ab3f7431a9e0478ce4be0e4aff825c780e913bd1f76e8e544193a661d36b951f2f201e4f30b6a78ef82603d0e462c5c8023049e6c703ae590b31ec96809fec78cf11876b7a2f87f345956c688b6f3c81a8d3e9857b0007b72360e99d8f52733f38f10302047c435bb500673065023064ae1109cdebec10a2d463d649a401ca9f473e28276f489f077fc735d799633e0374db3bc2f06442112786562862a994023100fd8f454b94610353b855c34b69a872994e568e016e8a47fe8c39c8f566178ddda799e8f2f22906b2cfe4af95dcc3628a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402304d12f1b336c357ab0a9ab4b472939d1a6aa353705c98b8040c9a6a02d07e2e1db03bf12ab661e2e5bae32fd1efb2f4ee0230401c28834554cc80c509214b6330a565f83fcc855ec57a89b3a68eb934fd84dbf6eee921c0514a95811e1ad20fae974e0302047c435bb500673065023038b483ed650bf0d3d9bf4cf2b2e71ae0715c3d1d96922f5aecfc53392e819f4d2c246a2580e025bfaab90bfb05bf1054023100927fb2567d2c8b8faae6f68fd20bf85c00eaee085ea1fce1c1599043b81e4dfd67916db303d076f1d1eb6014e135cb8f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230077d5dac2af50aee1d748eb1097805a17dd3e0e297dede34f45b04fcb7cac0896bc2d1cd2fb7586ac7dd69a80f243a700231009cf5df26287adab09d0dfeb941b616bb3042e45c38543b386e6e98af8c633f731a24b55ebfd64916e5aec13eedc0fec00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b6d83d0d422d128a845baf35f150d6be64cebcdaada2675a414f7466ca01db4615213dbb67d803cf83c8b0fcac783a0f023100c73d5916c6bb656c3491809ad5f77094ba8d19a6b3d2901be4ed2ec03bb41e1d1e346387de213664fdb038a367dcbec50302047c435bb50066306402302bcefe0fdb726c1712dae0deecddc5f038b4b5169f8565d12b97e3927e8b7a2e38f3d078e04ad9e5765056e71c679f2502303782ea155eccc871cbe12dc5076f58d47b2940b828fb0c99fec5914bd6cca63fde52e44219d459f7287e3ab89f94925a0302047c435bb500673065023100b85250295ecfc9684a059a5100b2ebec44b68a4a2e40246acb540a32bb485625d67fede5ae5630dadf4c54554dbe7ea1023000f73be3b035bc53a34c5fbccfb19dc0f4062c356372eae327679ffbfac37beab482b6e9f206b46bf0ea26d0ee833aaa0302047c435bb500663064023065db758f28a69a9f82bdf0c4dee1e7c6bf0ada08a0071a0845f036c471dadcb1784aaec1e081da2339b4684f80eea99a02301ea5fef79b780cb05b5f1040d8a4c5d92684c3e0cd120e1fbc19f8271abc5a55773c539525e0fac8ff9e8ec9670d6ac80302047c435bb50067306502300c9d2a55db3e9a9c84a5b9a4a769d0d18bc05c796085cc8ea7a4f8aceae09193b44d227f35fc392d9e994d9c8666a80c023100a6ce5c5a992634cc07ab86ad23c9eb6551c68962e794ed4c2c2ecaab9756ca5ab042a97626e7f7daf544b21f5584aa4a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230056115a5a247188932498027b8967441fba64b6e0f4085fde22b397abed064356c620e96cc07642e9a04c5eccf268316023100cfa3190509ba096489d44a42708d2190e162a25566942f3034cbd1d4c4d6b259131ce2701a792a99babda432147fa2bc0302047c435bb500673065023100c2224b05b2002e61f30659a9aeb1eeb7a139d2af20f569ec0cf38c93f34ce95eafeb129a57313d78644519141ee346d402307f3b01ce6b80232a20cdd84b09c26586c07a81ce2b853d181703a81c28b9fbdd77a004ec32dd1d4e764594983d7863360302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100dee9527c92ab934c1726b23f1ebfb7af95d788ce6dae6d3c7931e6646d7296cc3a94b006f974936db27e3650df578dcd0231008fbad5e8ffbb97ffdc3b201641702bd51d948c129e4141ccad936fa678dd5271f86845df45c8d5d3d12d3b5bf17e102d0302047c435bb500673065023100f5454709566d80a63adcd8af1ed21f3fd776ca16742bd4cdac51f8c47d149d89237b85ac8fb5f8914d4c2efd753d5ab3023049bd086e063b4020086da273e67432cf73be3b5db3ef0fb8f8c323397165bdf55288bd9c44a5bc5679f514f9d56ea4160302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d8fcf3299578800095d402732ff06488bbd7db1c0652aa928e71c6027fa6be0e7b8da2eb27b988170e96a266a64f3a8f0231008959efcea261725c5ff67f5e40c7b5c7b749bbc1baa5afc42ec756465a5783ea15e1e2e93b30a485fe512a15e5fd3f0a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502307766ebfd73bc549a2d5256bab82efcb9b1761841bcd56308386a80b419e4c25f945514f5260e4c244e50f96275276208023100ab1b6b0170ad9e4ec4b3896d6b4390ef1e626bdd04fa242e5b41a6099b5ce32ffcd5847103dda5c8ef58fb35c6370f2c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502307b7c5cbf9079cd5f7b21fbd620d003bfd973fff906dbba5138ffa4256942c9bc9ae4cc979d5dcdd7e0bc6ec2208ebcd6023100ff2b297c48dfbcf2b71ee44c6742627fdc08876155aa31ce654abdadb300293a72025d21d33e80f46b1a60c4280e23b50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023001d5076ef8c8cc05294d54f0f898ca75750247d7cd6a40a6c975e26e6b9c1b0e7524b04483668896d1884c4028294fbb023100dcc780868f7a24ded4b9a7b1176dfcee117cc15e30b49bfad350385e71835b7734c47f48805bf361288d41374e52180f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310083de511dedf50e1a52f4f9af7de457b059cf9a898b6f1929ba7431bdc4f202d91adaf0a7c43a86ef071784536bedcb2902302e4140d4d5cb67f352307d4981abab949c4159cc34e76123a62819267a9a5c5161a1cc8923b7e38e233e6c827717fc870302047c435bb500683066023100f4e0a1d4fcb8ed2a4a25b0ff298c43cb94fc40565a4e7e35828b19906363377b2b77556d670f1c14da6be91e326bc866023100de543507a072bf7d11fd0936316f9704c80d8d3a68db57b09b064c85eb7a182e2734b38090e0546d86343123f28c07a10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307673113b2a9e635dac7f9c5c460faf8cb16736c5d96c446b458fc7daebe6d9d539f20eea206cc9cb4fff34de99133ab1023006fdfef8c87b06c99e58161975fbcf83b9bcc4b4e606788b244eb3fe1978dc9102b05f1f3894f08f02e6d0cbbb60872f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c40fb41031f1a0d12e5f75457a0d3bd30306fc874a29d086ec24f86bef88b0e3e63056bfae82ff1092c4911601f2d96502302be84c8446438501bd697a048c562a413fe153aa8d0a2ab1209ecb6bb9ef47fc069563a4af2e258ba76b4d1446a7d2a40302047c435bb500673065023100c3c391690fddbd149b5c06485409b3e0605dd62b5f8be585494ca91c44e6f3ffd84cc245bdaa805432b3578792bbe31a02300e0ea75b719a46b6fd8505ad2ccc6a1c62b8670e971f8d28658917852976407c0c327be6c81f134bd7dd727cfc6b4e3e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300dedd25c82141be5bb2b11c2adc36996350fa43f2df57b5e0f813c5c2ec156716a91300589e64684bf4eae5489e761700231009bfb47b82acd858c269ef85fe140b65c27245d4c6c0767a2fcf4df15fcfb6a6c6ccced90eeb832010a73990e78e991250302047c435bb5006730650231008c5f2efc2f7b8e9535b3eaee8afdd3d2cfd90b8db42a935aa76b57f5224f8ab4c75efc392e1eddff181b3d7b9da4633802302a92f9e6480e7fbe42ad1da11b9696f070e20830b6dfb4a419ecbcb86e788fbbcf6eb227658eba5b61a396e69e6f4af00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303dfba9f14bcc551177e2b81d73623022a7fd4383f0cf0a2e7fac70c6f2fbd6835a9e6aefad5e531ca776db21ad8490bc023100ea68a2fff067fcf6f6610b37d975924f9c3dceeebb9a5e651fd1be480e816f7757cc1818fe60dacdd898cf07db9a492b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c95c5061303911b36fc1b3d9e57d564bcdbc1fc249277850b4aaf62e8e6e14cd32c767bad820ba58bd0deceba5f19452023100e9d54cb4858e1e79ea8794091cf513666aa18ddfa2e05677d49b12a3e0c911d3c416a38e50bda54ce12314ba8d635e4b0302047c435bb500683066023100c4889f0e32acbf6b29f4c2a294c0edb1dcb29fffbeedbfca89704726b0791e0ada784d8d28e2ca4d3d04a48cfb713b400231008c98242b7386b985e7b5cca953a8b212d45da1c8c0c5a7548f79b8ecf8acc7193831ce82a4985853b7c34dba3dbfe79c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023048e454f02d6618eb7942e26fd53a76958733070cf35c15da54c47589790a4ff9c153b11d1416557392be3f5496bab83f023100a09e4d085057a702e41e7225d36a40450feb563c6b0375bb176a54479e7b8e9c6387751e3bea2b540bc5ebbe8d01c34c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ff8352a8ae8cfcbe9e4361a8f39b1d715474dae1cab5f3c0d525342efdc39aebbb7bb84f14a5242ada3cfda0f7b36c43023011e47c958fb11677190d202efe03a938c168eb28b2822242825d58b76fb9a3dfa550fa0b8ff55fc273ad6f77b5ea35f70302047c435bb5006630640230197f22bccdf36c48567185756cb9656ebc3576bd3f87a0ccbdf244e35c61689020304918c79e6b35344b9e757091a96c02301af8c3cefdad3eaf7e74c64fd9e11b9be57387c71900b475d05fadfd96dcf7a12f7abb70fbf2fe1d10496fefd6392a930302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023056c6df67645aa1e65bd148333311414f99e963d06cffbc64ee66c2b3515085a50e51b8c462b1b873be2a852b8c88e01a02307fe631d5c3200e8949ed79e2a5c3dcf68d8015f52e075f411f8b761e9d247608bd2f6f78c62d5fdbc7b54ee1481b3e3a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023075def9bfe126656102606280150fd2587bb8068353964b45385a40b98f289ce9f1ac74e33b6a0d438655b36a9f1189f4023100e12e6bfad74b61d6e43e8c3f4ea993d8c465258e3e7cabcf87069f7e636276e55475d9845b8f63a5c11e31ff10418ac40302047c435bb500683066023100dfb415a898d129f55ec46e3469e066ba769f69d9ec4ca2fc26aaab8092e9d40551fb75c8f47f5033bf027fbee10ca4b2023100ba1f1e6dd69c5d3fcdf988f39a3920b3beb0858eab116d391eb7619d1a0d32c807adc256c3c3e7bf970207df7c59eda70302047c435bb50066306402300871f723cb67ad791b233bf8e00fe1aa96e94ed1ef20d218ee066a1f78a602027b084e1a31bc3b8d4694e0d936da8f34023017248203a98b187e7fcdb04590bd5248a0337c7f51c3074d9455af2c260fbfb2c2b8616611168d5cb5c25aec03dfd4f80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100dffdb778a23f3a487fc4e288b90d2a9c43c14da646622ef3340e8aa6effc14091805a87236030c56912a7434e9cfec6f02304e288dcf9fe333381077d9a10cf49685e166553008c1905b521cf58e009ee7a427eb53350c7d03fd9175844a0a49ce9d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230793d30cdaaf858fd2f0b0ac3a4079ffe2595208d5fee0a44566e1b8f6f633621c4562ffc128c9f819e9bc59669b596b30230390d612618110e19199a0e7de17f5d4ebc50316f950305784566e4457dfcaf9457f40e83a0d45fd4d2474090ab3498c00302047c435bb50067306502300b88dc967caa1a380e348a562b450aa3a87d17f606f3bbce8bb955b4f97a2b73b6e2f54e7b0cc3151d30db0fa85c81cb023100ba5a830ca7821142dd733f168ff412c4ad63e9e612e8d0db80a31491d9ff51ca3e82b897edac1849a6e72ae6ca595d2c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008f0c442000ce38a53f935be7da4895a819e439f2f8d06f97bd04cd6137fb472bea4f222c9b2ddc36a94b8014e459cc11023050f51466102be6bbdf4e817b55b7cb85ee205ebd5011522f6b33fa8879bf7ccb3ee0e2fa84b6592549f66ef0b54e42b00302047c435bb500683066023100fd4dacfac71de1cb05d6c98b74b49b76b0534540d8bee3c22cb9af777b74e550ef0f0933a165ed5684b1021c8b6fa86f023100962aeb8438a9e0fea49535ad6328f9031cb2ad6eb2023393562e325485d6ce0492867b76030cbe0f6ea872ecc68e31210302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303349305fad050e4824d03490256bdbf04191eaf620747f0a00cf0268814160ece13a7d4c1be095406f16338d8296fc72023100f43cdc48ccae702cfdaf5497dc99472146ac975a9cb522e2fe44e2f78d72d1de530179fc027b99625f1a7ad8d50ad2c30302047c435bb500683066023100c7848c1fa989aa000ab666a7f3fe1ce3568acd34ebb7a02c962c877b1a5f97b13fb90d03394e7bf747d36ed468e8f52802310091d20dd2aa8198cb8967d2196bc36822bad160a639fdf75bd4d8a05abe72510cad66b72e4e328c50e4105c1b32bf56f00302047c435bb500673065023063417b46eb9c8dafd040592e0818cf6602a7ff8d59edad164c9fd592048308fa05a8d9051369751c2179ce22518d0753023100bfa28fa8df8a23fc812169f5c28444fcde47383d464314fb68b75723d3cdf9e7b2442ddfcb8c7c00aeea55780fda56b60302047c435bb500683066023100f4df5a8a9028b25b9a13ec7241e93ef1509b8a227e335752bced89135d4ccc74176506c75e28300e38ab5bacf79102e2023100f73d24e1af8be40a6698e91622ecac9c540b2bd21230ffd8f321bd6685d19e55df675e934432b1a5f0cb4fd4da5a8c6d0302047c435bb500673065023100a0b171d9a466c97d01a62dfc690c957684d7d9f51ba29c3d56ab71350b6e89410387b580c598dd984f5825b3326adf4a0230211bb4bd9d2d76853dc65ac9c382d18222013cdc1b85cd4d4785605d718c7098bd5e0588e8b83cda3e6a9907b46fbc790302047c435bb500663064023063d727a374b64cdcb0488bda7548a911d2a4b3621f7fc7ba19edeaad06ab9519aec2c0f1a289fc7400b7005e914962ca023060be6491ff006011d488ee11a8cf727886fbc34539745866193fc29823d74a10cc9a6e5e48196dc2e65b1cebf6853eaf0302047c435bb50066306402302c58d4d7557a9beb496c484d09d193a2624ca11b280320780fd787b14120ff264e54c60f43972653e3877d468e5bbdfe02304d20fa6a685259eb7f40d0e5fedb2cb0b3be0e056120708eb229819f5be807649117bb8bdfcafb4e0c3ed69618f7b9f20302047c435bb500673065023100cde736995ec2720b4ffab705c36ab71aaf4a568583918383f19b56dcba46fc6656e2950b6d4a7b62784c91c6d27ccb7b02303831db9705e44997b0f6cee3fdb7f0edb8a26877d4787ad050e4c75f19058b7cf716d4f69ae7efb087a5144d4ba276d40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100cd094db81fb7197a22d0e5e524fa1b28074a27fff1629e201c02f043848d486cac77c7fb24244d66bcf82e3e3be68f2e023013047443a0b3485c8da2a39cde8c8facf32bcfb6d205a457448fe0506245c6106300cfde09d5ce2a40675b44f28959ae0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300c8294f5b4a1a2e4d51255199cffb6b227fdb59a5420849842287b9f484be525bc06c74e84299029b878f5f0b477fde002310098da39c66b25aa4049c11eb7cb3629eac1f7d89491990712f8ba6cce17892311f286f873373b779f91fa167c5214b11e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100aff0e230de9ef780c70a5f9f863bd6026f3868402decd4fcdb7c0b530402d2023a725c9addaff97f4a7ff7ffbdcc339402305c649e92bbb179d770ec70f2356014b6806c1f237df44ba4c9785c0fe6e37a1ed68d9e2b94519942e64b8d7fb8d6d7ef0302047c435bb500683066023100a3fa85deb34dc027f91d731a993751dbe7d8fd8aba4d5fe56ef5c42a938982c927d00cbab73f86ae8708997b459289f3023100882568dd017c55e2f4a7bce7b5fc1138d00471d7d9a986a87b8d4e4f2a8b29fe73334208d017cacf12ed41ecb5386e730302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bd27a280a34a8423e4feeed31750bec7da2a657bf34169a490e34ba12287db97ed699ce6d35511dfdeb61aa8360df07102300465a1a68812fd199c8d2e0588c943d80f3eeee03aa9f12868708ba5b6ad00410f0a233496321e7655e07268487de68e0302047c435bb500683066023100d5b61e4e879666b9205d56831d6efa9d97db8dc1ba1abd5dfa2ec46e8d0b1f053884fd86b71c76a1e1efc3f811a994fc023100f864c290f40ebdb457c6bc854c5b6322c451a5a1d6fd1f3aa460cda0c44275ff0faf70127ff9b0c4a1a29e22c43961be0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b2a422a106307dcfa754f39434ac82f8146a5b85e1da686e05114593bf25a7211012e6e159e9c4d22a5bb972e1d9117902306c778715c84338026da694b18052d6f809f7c8ad97c8fe6963c95e212ee89721d9a4914f8a1121e44d315ed08b30dcf30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c8c27a89ce28825a93d8f63260288a242241a8a0b07e30f2fcf9164a8dbb256ef88131fe8e03461e9a501620edc40bbd02301c631eeaf8856a06816f797f7b6636587915546a4195826d4303504a92002e5fea8cf27b02b46d3a38d86b5abd1627ef0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023078d40596a4b433d6b7710c80a9d4499d47fd06ddf7e22109b859d4abad77e314a667eb4fd8693b7fbd8ed1f8d242bda302310080c11280725080f2e5a9ea3ba1bc5972e3cbf79dca03b5e3d4adbb1768be6ea7c5a7fb546aaff53cfe67b79b16ff4c7d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303572673106ac4431b3b98c42552df0892a7920b02e5748141f8b3e7ee6f2ade59132c65bd19f6aab3a0d023846d1a68002305ff997c145b588a863afd93a956f007000a6d2224133efb572bb9bc4c8f66c571205e05a1fcdb932308b7733c81b0b5f0302047c435bb50067306502302ab39e424f9f667dd7f38b6b6efc5d04b6df8073e828512e63d416f97c57aeb5a18348bd621c1403224a485058cb308e023100deec3b58f96caceb7d185a1be573e7b3a13cfab912e57cf99612a29f15647c7a31fde0788652598f128c945faf2737900302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230146bae8a72e7ed55de28dc162e72f99d9e7152248579d5569d47f2da0f8a94233dee4f425ead34faea4d6a3f4e7b5e2a023100ea4ffa9282fd39d9baf85352bbe87166cc2864bd8071d5773785175bb3b22be27eff49ec801f549a3205206ff7a716ba0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302291db8175b32261bcfc36f8bf3ad33cb08e510fd47b36929f38cde50c983a67952b0b655caa99b7c4f8d131a840c85f023100b724b057c462b2b3f00cefdf026ca1109c528002cb7ddee5710761b42e94cec8ebfd0fceee6288cc48844dd808495ec70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300cbb60350dc65de49df096fa9e25b78f1755d6eed9194733ac294510392dfc4743b5a31e66b3f28846c3a740f51bffa9023100e3c39c3252cbd0aa70e3fa040a5e8bae226fc0f6428174adfaf43fa358a78edcb57d1294afa5c890cdd89dc1bd6631d00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023033b79c99f856ab646cb4b3435a22bfdc2cca1824611a1955b5f8c705672189823ffa77c34692316b22754878eb5406190231009590e4d87cedf23b8814fe512bafe0ce55514102f7e208d88f3d32219f410c1d2bc49a747f8f1022d0e3ae63f0df47eb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402304fdd1b6a57b5a54842e0a84713f469c5e38de51a165dadf6c8fc6055da28b0010031501047b292c1e8305edb0396e2af0230057c95a47921bbcb16e88507f4e58e0802dd785e4a8c30bc64c59d9e4b9e400af4b081ef39c27f740553a6338371a4710302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ea46708ad9cc5e7f03eb382a49596076c50d8aae31248d5fc6a107c7f374aa5c8dd8644608bfd2d603bd06b9e0800e3102305ac2f6a36f5bd84e7544bfaa7536962cf9c8f4e18a92b682d0fe90dd8e3233b16a120109d26caa4949bf6d2b70971de60302047c435bb500673065023100edf89820390de8ae0fdb8bb567e7ae111f9aa8049a462beb4d0fa93e8aec0cc44c587ecc65a63f974ee7347df91c9f8d023022df506577564e89a3a03e8a545f1bb85c48ce2ec9b11a28238422e0a8faf7035cd4f128128ca224355c8239a41392550302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d58c7567a77460f0d0e64c58078f01af608639a5244af9295850de1d281af9c599757638aa655b3ccd1a6c8acd21c16202305e6895df199f30aac07b28b5706ae7dcb5269ade5ac2b742f38cbae3ebe2b28cb63fbd50b3a6729a0f72c95e7531ac5e0302047c435bb50067306502305ed8a3fde20fd7656b99034589ec5a963871d45d025e586a26a8d212df8d78586d92f4b237014dfa5a89a5f9ef6b3486023100dd32a564a9b5cad3125ee18bbb1ca878216941fb84a8381246b459c239f80499d39440167873ce7f4303dfb8e3be02f80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023024d04d4d627dc6d1083c1191394ce67928b40260d27c6e7db79bbec6cc481e1493b6bf484ddbba0bd9b70b60a14d4da702302a007b0dc93d5ed13729879edc8d8b86cbcf7a1fcbed3466731febc92ed7cc8b1b84dbdce4fec9f645daee286dee019a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310092f65a78b11e5486be43016cc38840ea5ce014cdac8e54608b4c702636b14f1b1ee947ceecebe190efe5e591070114a70231009eeb5db032f5e669a929127ff491489d0ed2b15e84e0d94996c3c315ad7af2cfc717b1913307e1aa2c093e31db722fc30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e6cd7491945d30d60e16d820efed29620f1709cbfa31aa0c16732f2a52721ec7289851bb47afc4a2840cf4f371c5ca3f023100db321b639ce5819663d1732127556653ce4dbae69f01d86dfc0ddf43c8cf0c2748742132c63e2c32e005568c222b21f40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100801b6958ddfc999de91da07eb1fa08c3504c23e710c829829342a16ef21c27d731238c729d737ece0e61da55674d3b3f023100d19a8e55366a538b784e290b59a5a7ed96dbb5d4ddfc51e4e83eaf0cdd76ae7b234497c619f9422f9610f11f7565f8fb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ceb1755e422c34cb3aa1d5652a590400143cb991f1f29214e8c5c43b5efee74fc3cd77c83fcb8b31e90c3b867eb0ec320231009c6c893de3dbbd2a40019816e386e167c3b7f18b82e9d98838ff1df6017cf05b0d4151cd57524585444e43bf21a454920302047c435bb500683066023100bd5ef882aab633c0766c68723aadce54b80ec58cd18a7d2330e22e59af3f42893bfb9f89d90d89e16bc3876fa191d0bf023100d4766075444a6541268140c11655c9ffce73ed2cf12e01cd0075afa69f884c4c192ff90c013304f251d047e4569c51910302047c435bb500683066023100af4208d4901199fb985d6946e512a18ebaaa20b99e34a2ac6c51694003debdb01e214f4cad336f5fe3aab321f24fed87023100a29107c3a3beb1b2ce2bde12916e1e687de2fddd60a2967d915f4d3b64f5f900854bdfd248f5d5a154ecbe27376233420302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f13ae8b970068e3304bf29816d357e79e4cdb096d87a7cef49664599e85551c2dd78ebb2c5a7e310d63d46393b496d78023100a29877479fbccb9a68b17362075de63558434656beb7f671a8991e9aac8d0dcac3e25e4d195a562ac81d28d1b623adfe0302047c435bb500673065023100a002c60cd676965835cf394e7be6935c0fe8696cf8ade1df7e11467b522636a7f693b6bd80761bab386630f6ae48e55b02305a6c4a2e32021d0ac9c7c83935ce4f77e1f48db80b8776f78168d84ddf36d4cf69fad083cea51aeba8be521a32047e630302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c9be08a96b39ced8363bc35af5cb9f4538dbe86ec27e8c48e1a089251d92873db2f182fc5c5145fb4fc15abbe92a7e0b02303e87033e4ea3b01e6fe4bbb0de270110b8634ebdd1d0e49c8760691fe3f3bf96fabf869b31dd400013b43ae2abd4138c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bbd0ccab5ba6b58723a479daa8f6446754551a74f2c5a960419a0cc1d2549404020aed96147af4dd19edb6c40ade45c2023077f7093843e18abf985138f1afd72e0be914248ef51e9da845326554683609e235aeb3318674626e6db4d56615d2e7b20302047c435bb5006630640230404ce7e4e9280661e83073074df0e30dc219872d36b2ac41ac0599be42d614d402d8a5a096ab9e21d432950f41b80d690230220b8f86ab94b630cbb2e34a053ae9db58b7bbe0f1c2ec8c41f273037ebb7ecd828f1fd359489446d53f9bb69596ef310302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301af947a3432337d12a22f953ef66d9b46ff61e0f5b8bc561ed73f000f614639984f097f29a98576b32a68a30ea9faaec02306915ee8ccb8ff23fa219c4ad5cf4a02327a3e50743273a6667d81ed2497407c40b956a4de7141e3ce06603efe5326fe80302047c435bb500663064023033cb642aa61320b0b4806cc91cb4e84adfa43fafc3bccc4e191a38f18a7308c34dee3b09a4e1fe37a026d55aca1e969002304e1faa67c0938abe1dc44180748aa5c8f8a81bce28b276c3b16373eb3e1d1dfe9a4a55c1291e6324dbb2abf4b532dd7c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303b5fde3acacbc01fd85eb91b694a238f272aa0ccd72a05498b9dafed3d7b06a750aee256439f220c2bcfabcf6db62df5023060cfdb027693d455758153b073863ef2ab756210f44170f958e3015c61e54397d31923ebf075c10c6c83ed5e38a9478f0302047c435bb5006730650231009a0a7fd8cc4788252c9446a3de91f2bcf0d8e4b838b3bda2a9bf859a5ef698cad3e8bfbdf23a4bc7a9811d0991e46dff02302fa63d50611d2bb5279d192d9c90cfd5414781159d7d4049759bd1140fdc2bdf3d2c0315e3c87f9a243e791a2c8924040302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100efd20f8ccf0dd63c349afc6f5803b94cada78839970749abd37c48a4bbbdfd29eb22df422b5621ad122c46a1bca7892202307c7bd7fa324052dc32d77b43168c2ad459371c078bc5063634a461b0e7c32d905e7cf6c5a9fbb10e8448423a50f7f2990302047c435bb500683066023100bcf082137ca57d59dfc339275f90f001334df0d2ed32f70d98ae7486eebac818e5d86fb2710a3cb274cf813ae77c6558023100b1fd4ad510f94db2c0dbc4337d932530bf90541ef82b43e12616db77f7e74efada505ecadaeb8bfa9f6a3710454531b00302047c435bb500673065023100f1549f574e6f7f46ecad4904926d2a94e4a8bd7fb4c2f0cae0e067c50de160f1314c870fa495d85a58cc2bf3cf8151ff02305bd2d551413cc40c99ef97673da61dc4e4d5df5e6d5badad6e52d5912202f161808c60829f756d377d9e749775ac0b8e0302047c435bb50066306402307857d6cf9c62bdc51567ba6720b0e486b241310a3dad48833e6fd2df9ac2b10dcb591bd0110e76fa00f93cee721d5a53023014ba65cc7c10efa6afcf591f4f1659c36fc45ee86e77697af5f50bb59b7e25c854d026507174b17f27f7de14cf6249cc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023042a60ffe196223c01d23134ccafaab6c516c0e72afbb58421aadc7155c803e00441d35257a2acd8dd988563bb99bebe002303d29ef37b425c84185fb86423dc01674446ec9d746324668d083421ba650f25835769059a571aa9278096b45c90b55d20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502307f064351225f65334c504800426befd42317ddff8988e3df94017ca4ca4c494b915257c36f0f5ab42f55e21ec25e009a023100abb7ced960e50f1955cbe7f9241145c646e979e6a4fadfeda3ffedb1bf99d5401d881c9a9421e4236dbaf00bac9a64740302047c435bb50067306502301c9becc77bcb337c5996aee3502caeb5ff4040fb9f6b8b4a2cc120088d3625218f5e4106897d8ee24c4180666739cbff023100c1ca83fd47de39ebc6fdcb4c339afd7dd8d2c0c49462877f06c190b4c33d712ada644228253d500c8e4a8eb8a0f6d6fe0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a43ab145bab5a807324828b12572739151b290e311ce340e99ef2056cd4df9417654107bef61104af15c566b7f180c2c023100978242a7199d497a34da3750c812c014938e56b614030aac449ec45f3f524caca2e539bb93a3bbe9fa2a107487e043aa0302047c435bb50066306402304fe0e6354e1b2eb11da26ab1f571091c6b9e3f6d712d3058b114214c8f364cbc30b834987c070d57a5d0e0c200ea2e9f0230343fe7afc953b2732454e4ca3fd543c2af7031ad7654fee129c1f14d415df73976b7917b212c276464157f71b548f6ea0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023015c89e6d78d5b16464f99f1ad795ee81f506a8c72c3a6e71df98774c6d2599f4e5229033679bbe6aa662c4412cf1a8270231008ad9eee2a2e1c1a2c771de2428434b086a0ccdfc7e9ed8f3146308f4881d1a95c2a3183f71c3c44ece0af58e1d7773c00302047c435bb500683066023100ab64d59d755a2820a98ffbd0090e8ce745fc1d64d7ec30dd02c3f3ec4a17d2f41afa590373a476273fcc062d05f75f10023100f8cef59b7be1b4040a331cd221be0d24d7a1e7d0a1ee9d890ffea9b87bcf3897153752bcfe1de9baeb74acd738f69ad30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023074480777a86057cae422cab5e37ad43bed5fbfaaa5203f236e89cf7a5ba403a153529afde7c8793e3f280c2b73edf58b0231009214214130c23428eb40e6fac5579cd427adb79d144c1f63c3f246e3501830c2e17ad7b299cfb4f4521a62ada7fe7c080302047c435bb50067306502305cdbca91e3124955457b70d9b8ba445256d94620d04791b186c50b81954a86fc2f185e2ccac3a1b6a03502df1f314411023100e083fbd74de473aaa17978346f4e472601602a487533c2a51240e87a49cf3546e661dcebc48851293a13588a41bc395a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230364df673d5176872fd2c564b6d0a7431a437691aff18a67e95ee91d9a599b700d6a111785ad1ad94ff2ff4b81c7a8ff5023068b9a90c5854f7d981c19996da5940a856627739151938f335fa67b976dce72f45f7b6c1baece6c5bc1a4ac5745a51e60302047c435bb500663064023032c04f3eb7a767bbba51de1934c4624eb08be0fdd0fb31b7003a614583302fde1da070ad926db2b75ee26d1a019cb9e202301940a95ec9131826d7f85eda2c6a0a1c914ece0d1cb6d61590ea527067d493975c786af616a8bdf321ecc5924114e9a10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301639e20bb8cc80f0e73f41f7a540e9dcf6ded71c2cb18bafcddb5356e4bfd3ad4b4c3bdba8ede82b26aa246f802d20a8023062e6b6a79c70fe602f603d3b72ebbb7e44a7e80286615c3738a30d82e79cb310c76c6803550652828cf28f144af704150302047c435bb5006730650230409908422ed7c1c19034d306e82c172afb07777da98b3feab293a375cc8677251fa104d75a3cb0037e652bd8bba30cd7023100af0a6714e5c5a67ce0034cf59cd92bfaf90dd8f9b631ae85792216164104b5380fef71d7f78870908e15ce00949df9f20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402304de2db453abc38c77a912b4130f8a31788ce471f49eafdf2c8e2e9e61981eaa61295adc1f95268e251660dc749fac8ba023060bbeaa8f6f87088978e651040a249f09153e6e7449ab1389be66b2a58d16a119b27556d2a228936c3a23a6701c018f50302047c435bb5006630640230397b3e255f453c5e880d6941ebd68b8a5c632b23a1697d25d4755f79ace1ef900307b6b7327b8a7d7bc2ba08180ee0df02303ef0718c1eb0e3fc21314db83d7f6cfc2c018af98dd25fb8f8e6f2321731abf533366a5c0df83beb71cd46f60403f0e30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b6a3c5f2ed1cdd42c6e3e24d6010edda68a0b41206a230d9f5ea063d5cd03598a904175b3a7e3a74095cf70c4623ad69023050223b6c00357a87e2f2cf2f0381c38ecea030d89225c402df5cd2a255d94e1f5b20fe827fec229fc27c93cb4dd68f020302047c435bb500673065023100a699de67760b53f74f502e8e1b1ef6da4a8fa4d18d1d7705b6b29d60ab964dc3a1cebd89984f0e7497b2e490f956df9802304592ad739a6385ee463f1c47665a486b40f05ddbadb8da4bf9403ec75aa64fb5919c44239573d812fab9790396a8f6430302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310087ab722d68ea106c277ed47fceb2714eeed43b9d9eddd0f2950ce9a1c6b1fec1a032b980d8f4b9f60b2750e01b5fc678023100bde001b53acc720df4f5a4b02f504efcac1efea00d8e296f7d6523a4bcc3b7c6428f58baff641ee757fbb590135871230302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310082ae6371a4c5a0cca128bf0a39b830700c3649660da798ba445ff85ed1441ce54bd2ec7f32e5aa8382c87dc39e80e11602300625decf7f9bf2665599f90f92c57be6105b1bdb8c922d39dece9fba80e288f052daf4677e3f149cb9d0011a1d4ebb120302047c435bb500673065023100cf26e739722ea8a6af575dff2f87c3add0bc5b5e55b4eb2eca9bbedba928879197fb0b6f4d1df765c7cd24131a7da4a602305581e0537dfbfe57f1ef4367bd1c5dff0307b5dc81019d8206b0514e5e9eeccc5a022e40c98feb81fddc2a1c28da1fcd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023077e763c5283cae1182c23e0aefe165c53ec3c65964d44b2bf3545d31ae1b361b40fedfa5ec42f2ecf792527dd9ab35960231008939b2f49c70b3d522957df5a204a9a34aa759269ad93e4e147c13f3e5b226db46beaa86e8cd0caf07344325c30c035b0302047c435bb500683066023100eaa4e9afb81f37332d3b5be4961620eb5f3b0ab3a7106f8082b0d64c18c1a011dd9ed9ce0b7425ac2844abcf890fcc47023100f6ba265157f4a060928722382dce66841883c7e597fe388daf86ab692717c9a8fd24da88489b07b3514379c4c8b1f5c30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ed9b02eccee3d7b066e443268ee0f7c95f8edeca97461110811771445422ece495a9c487638d0c06d4f066093dedca22023100f21e8f2cde67f3c13bb6432416b2a8eb964cae5b7884ce59799071dd8f8f2f7d5fe85a763a49cfd0cb45a81978aaf33f0302047c435bb500673065023100c3ecb31e7700f349ca4698c75d65b375078c934878c126524e14c8961a9d4b7e09b7933405ba5e1e0111ade90722d83d02301434100e96ba4aa317d8817971dd9035bdeae10850c6d8adca290b1580f19d50e0c69607732cecc0bbd67fce67177ef00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d5e00fa5f13ac9666f0df970817d9a0d4de95a93f2779a1cc93928ce9d39aff145388459c987ef4efe00be7a7ef623e3023100c0489c1108431aad5754f814f9911cf6c0e164135a951d6f56fe3067072aa9365612973afa5b192c5bcec47794a9427d0302047c435bb5006630640230503046fe4cacafde1913363e82be897daa95ec88ead722a036dd1a8bdb060798f38140d62ab2e5396e5ed52646ee7ee9023077db70fada2427774dd4b2ac858fe46174c6234dc535c76ca9a8cdb27f5f13bfc4ee2bb66cac323b97cb7b875d716f9d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023057315d7a643eb15fd2ca29754c1fb02543f38fbf1bf12a57f04f92aa57366cae7717ae3667327668887f8aaa16d8893d023023ec13d71efc91c6ee8c81542d8dbc320c764efadfa0d6d2c927b16f531742304eeb3bc287ded48d41eda9d4855226830302047c435bb500673065023100a96868877dc83ad90dfee9d5bd756c53dbf8735c4e3e30a1eb4736d78e2f25fb1784eceb7e6bb56e9a9935b4e33a953f02307f65e33c274b52a04d862de20d64b2ac0fffe180eb14f8c5e0f8ebd8700c034fd2ba0d3561be73b99eaec7e37dee151b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310082328f52244f18700e130078e5336f97cb70f1a70eeb52ccd6886d4e6ad6b5ed1e05dadd188d2ad52e2a63275111e1c6023003be6e6627b84e8cecf037a6c6b6ad90b359695ee5320ba3620355c5b01138391042aa63b6c8ddd204f72c27d04435720302047c435bb500683066023100aa2fbaf5ab88f20ba7a10188314b1a92b7073875fd05780b7432f5768e167f261ad014bc2860d053aab8614ed8a88be3023100f4e672f0101baa5531f5c8080e9f29326455238ba9a2cf8ef66abc046477973f92d7ff87e4f87dd61a39ccb02dc91b860302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a57a753daed043e4d7f86744b88a476c415b8a84253cc07c6b7d7c45d38313372c6db48cc6c8da1c03cdba796f34450702304726f0d419c971b35fbddb46c200c4134e9fc80566bf51dff62da7e48e4b5e9ccc59c11873125c1b02e1116e942294ff0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100abe51374e2691b7e5e3fc82266adad216a86e64c22451278e180aa596784eb0e5bdabd7369f147f24422038704f45c1f023100a4efa472f0b68e06c1df85b30f0a527f10ff18a5a945f6baa5b695a562c410213418fc06265eed4d583bd73e20ba6fe10302047c435bb50066306402301146822df09f709f07de1a0a0fad9b7afa116bfdb66e43299bd6adc2bd3eb4dc4003dcbd76055540889baf3c55260c6b023022caf6e0c3513a957872a5e74c082f8bffe443b97dbe09fe372a3d951fb5d141051a75f8406ca2be5a462a30664890c70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100cc10722fb085628109015390f0bc9c3d11dfa496f039e3b8fd5b2d236e22033694a53d9c1dfbdf452f463863259ec1cf023100ee6bc28b4aaa61ae43e3efb6cc5c5038f66acbbcf830aa79fb9e07786c2883d9901373e0bc520f6f2a9f5c44461771e00302047c435bb5006730650230522c5f5b2e8cbddfcfd66b3a82015822048fdd109e89ae469e9e7907ab88e1ea74e4559546c84dd65e6fa11666e5e02f023100b219eb41f85e567d2d2eb5cdf3295fc81e307c8be34c07d26efe9b52d386ed7952da11f0bea3cb278c2a03570a301e690302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023011eb124ffdb87fe3e571e7a656154618b77cf83940004acd83becd479c9c441b77979512aede6f5f64e2f18db26c19430231009e42910be30db139ea143c22d9dfd661824fbda9bc474b43c5931e2d74529a97773ce200eaaa6175705a8cb8bab2d6580302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230529773519f32c8a731ad67424fa40e2137343fffe35719bbdd09032f66c27dbb4527a0ef612c65410ec7f0004796ff9c023100ebeb1b399e233eb4c18ea44c9e87e6be961e0b5f1ac3ea3b5b0d9d5af442658ef4786f343ec6c09e91f286f7cef952d60302047c435bb500683066023100db038bd73a13a575b3759b3c400eb097ae7c6e1c3572429e80d91b0510208f390541407c996cab1bf51222477d15aa490231008f8dc1f7028c73ebf47e77d82d0c8346782e2465108b61e7854cee08bbfd67868a23570c732809f944a33bcb84a2a84a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d1defbf1b26e07787d5def5e5c0ec8fed084a2143314abdafb4210ccd6eb885ff2e5588085d6aa528f0ed9b296f457050230115fa43b947f7debe94d90ac3db08d1c83a5ddd420b822fef5eed0efb421ceaa64367329a220067b643d860df131235a0302047c435bb50066306402307781b4e1926cf52b94dd6cf8b3f30944372cae6c7b2d2e58e9baa9eb3ffe62c11337576cb4ac35150d3d81e7983b6101023062b7ccabcb23916b76387e685d73db854189cb4c70cca06f0c1e9df9a3a440415edf83ca2edc292f34cd72095811d6ed0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b1bf0fca3461ba77d31d4bb73a0869d62cca11eea6d3d19e4ef2b5783877c0dd5f543e8bdea8135af40cdd4f26b9f7a1023100fc69d4f6575cba3d8812a88de2af57005b03770efa7329ffd09f34dfb39b59dcdb174ce26bd175d8e1f87ffc06c2ea5c0302047c435bb500673065023100926a6d9c76c21b785a538aae5fe2c5d470913ecf8351f5bc07e1aeb9a04882e784fc5479dae0d8a37885df2d61b5774302302dd6187fdf490a0424d027855026b16436aec2c33828511f36d76ad1a79b1f664ac2c89f2d04365a4ba0860954daf0f30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f39dbc9f85d8afd907cf7e14cb93c0b4e836570f95b9965871c9c17a6a082975e8b9ea9d497100eb521ccde458b2f0120230033fa58905e3092fe9b6659bb7cf81069b5bf507b8bdc6bdc1d4d72232efdc666f84ed3089b0b31308f363a86ef8298b0302047c435bb5006630640230588966742b0f9eb7057f9bb55e187178bf14050be6c23f09655e740578405552704d0abb238af41479ea9830f3ce8eda02300aa9947c9e6840dae35da5a79022e96937174e2777d4b80210e309d0d6cfbef58fc380aacc013a83285a2df84b56e24e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023021676199edfe69b24cdb8d58c69aabeb9679b3b0211db16365218207664cb19308660a46df2f9ede95537a02bf68d22a023100f87ca0ef259e2665ed38eeb2d99d4f334cd7d57893a9c3362d22b32a5b68d6faefb2a27f671b6c6baa0d2cc10115c21d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302eaa4942edfc897b29db2138d61b6f0ba4d5bb7201fb67f2c0105fcd1c8505bfcb68f48404345a0b6da3f608dc6d358802302cb3ff2d111a9d21fde8b15ea75d10a09a7c88c79e6840bc2a272bd43dcf166a0a6fbdd798f282196a1eef7875bb6cb80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b0f8e1c8cac1090b7a957439ce981edc215b6a71b39cb00dfb64d6679d1f800e3351d620e685eba027650d58ccbcde3c023100e658d998924f000a79e5a57445fe9c885c2ff0a9dc8b167115738b504a1ade344d6c0097270b942aa69f65c7551f826d0302047c435bb50066306402301e88b14974badaef8fe67128343fab8bdaea91b974e22fad256cd59b9e94763a2cd54aa01a268dd7106ffac066ad06720230335538d60c38c30149a3c74a81e60b02b02f6ccdf2e125a8c92a253dd21b0b1238d8f7fe62dacc528a2b8ce09ffe15c40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d29111ff8f9fba56980e9bcadd437df92ee5658d39c5ac4d3c4feca5422b9f3ac1a274261ca71aae3371169e01a6b77002300da1b711ce01d6f04608b27e35221576acb11fabb37a81dc62bc8e7bbff1b122f35ecd4cda74c624c426c29662852ba90302047c435bb500683066023100db8ff31429c2a77d781e4d9cb3796b82ac6f0307e086b83e047a91543de984f577fbe9c93f1a44045917dfb8d0a4bc15023100fc314419d869eaa41ad43e7c91871bd7cbaacd1320b6ae37783db4d68ca2ec68cf69818125a552cb439bc70d2d59eaaa0302047c435bb500683066023100a9e23d003243b9fcb1c71fadc2f86f5a6c4ab5db9feee6566a8b489a8cd7cf294cbb45a454e9e6a49018105f927e3c3e023100bbe8a4bbd70e482897afba6a566734ad9412ac17dd6414a29dbecaaf7ae6a52cf1a51f03d0d4cabca3b433c9806411f70302047c435bb5006730650231009fe3f27932ecda4f634b8c1be6642b25e2d7444faed4c45473e610b156a4740c75bcf8a8f74234ef0eb8de4363e3b314023026a8f4fc846c93bb7457e9edb5a7e8119dda2caebd99d5941d48689984820b4dcc4db581417df9c3100f2097a5bfb12f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008290eb34faf1576adfbff6896d9c90e8f32180656ccfa7788558779f4f2ac87cdf7296120da8f73963bc50d5cb41d05a02303b05407e705ab02fa45ec61f06f69680af6552e1d828abe56fec64200e7287965719231210acfd227b18a2184096f1ee0302047c435bb500683066023100a60930a1253c6e82fc7502cc37c56f3e2eb010603c454fe669cca359adbd1055df13c9977e6f8fcb33c98fc40bbd21b3023100891ccdded8ac343dde05d11f83d30a1f9cd69af2371c02ad4f7869cdfaf1fcf4ee5f13429e3764fe45149284a003c1a50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c771fadde35599c26aeaf69b9085e04c02bca04a48cd4b8d707af614bd3f2a819f5a1391897a4db39d54ed2db3ff155402310093c31bbe6de7e29d3fa7a634f2f4dca1bb40f645c1809c676302c823a18cec19314cd399b022df3e9e0ebcaa20fb9c740302047c435bb500683066023100fd34717288ca1ec80a0944e5b289ae7ba6357a27988e5583c527c32cdeb94dbc15f0b5c4aa7849fc2166c95f47d7aaf0023100ac1ef1b685bf1083b9cf1f43ea966fc7a004f1edce6a2d449b97af2f230f41aa3716272d038989aecf4debcd7b2f61fd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ec48aaba8da9f2a955942f23db340bc7749ded1b4439c4f74f2d4edd6d734b2c3fdfb34dc710f8b8e398e7cca42fa38c02304847c3fcc1b2ce34d8e4770c18e62acf19005351fd319a929ede8b6d6fb5e301cf3a1a6ac2585d285a6f10a43dece0a80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230685d30426eac3031064041ec4195772eebf02ff0e3c33b6d76b3bccc2298b27a85bdaf76072fd4095cd03c713f87f7660231009db707038b8dd854e2fa61fe1d21ca61514ff11b3e36f4c8c786fff30f3c5ed5f17b7c98bd3bf2ae774ed0319540bb3a0302047c435bb50067306502307724c53eb0850171b15ee9a00c0fe92da209ea8b9ff5c51d8229d0648d9688a1a773668c2c6c1b0e66ac4b0b4c841283023100fb0406c9ede7b33d91894d7c5fbb2d47fb41455ff8147f765880efb7ef0ddf4ef71c7078d8e58dd4e9f76dcf2882fc3a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307b444020c868ad9067974e2ee71df7eb29d60501b35cc183d96d1126781379b4ae6505e5ba77c775a562eae8a5c8386302305c013af92e4cf3e505bb713f5a98682a9bab87b2c983714c6ef6365244042a14248fa4bad2cb040d93cfc04d5175c98e0302047c435bb500683066023100cf6fdfa6910ec15eadced9250fb75c12cb464400bfc233a88d14eb203deef853a815be737e8b90acb54f08a60e93b07d023100840cd23e53b47a1d4b910e476b976fdbf4b119c7d7d379bfd5f4ea1fa1adb9a3887b84e6b7f1081bd1a8b924b91039640302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230325e688d71bd02933a056d878ae6c3af9483a8eec9158abe1262df79f1f9941be340c506e7005787f6612f462d488ae9023100aa5fc6e4730e8c405bd3748eccacd74184ae2d17b1e2ba60776c7ed030ff41f8c45deeeb73d4ec61012509bf1fb94b4d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230047f4d93655da2652c4b524cf6ce9db756aa7f5285a6d4079a3d81f9a8abe240d854f19ba96d2f6bcddb3e5684b3b75a02301c04370011fe30c639e7067e95a5721f1ba8884f1f4fc7d19dd025b659393c7d0668dd60777fbd2e42b2155db958b3770302047c435bb50066306402306dbe3afec0bd296d7b9d50f1fcd0b101cd6cad74ddb8dd34461a114625e6c2e2e0c01c9e619fb35fca03f259568ab24e02306b7dd9637f26b48a87e2def3c0c418abad5c895a02197c25a02c4d6753b0c749050f483b2d0325e5e1af82629e60f4180302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100dbfb36aca8362308c187904dd06e785ab2a3c155334f4a9c5a5e04be26def7640b35e2064f6a110725dcd2d11d365031023100dd537bb4506a47345986269b9e82ffc330dec3c65aba4ad1d94ee1831699f8efb1b3a3cfa83b2dcb3215be49308d40c40302047c435bb500663064023065e2253b719ee206f23af7dfe5fd35888086cb4a561482936d64e5369531864a1fba948f294bad182c7d170855e2433f02305984bea5a15bd2c46f4a573984d342eca6bfd9cd2baf0bfe09c4ee4fff4c0a72fa53c96dc1543c637771b6c3de8295c10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302ab22854b3477fce8b094b2b10e312a481e60dae797c0655284342b9e835ff68ef246e669c3190ca4988f81fb1473e34023079de5ce53686405f054e4fd00270ce0eaa10fb8039e27afa186a4d1abc3be087a9f33f2e0b37d2286affe634e018aea10302047c435bb500683066023100d361aee89ddde6f3f626441a8795c63ba51ffea844e75265acf3a73ce846c25c5b7097b3caef358462a7b95a6aa0a95e023100a9655d052a8855053cd3290b907424df0a436b562412bfa9452932c355aa608bfc7ed66c9dd23d1aaf6b9e6c81cb584e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b658abfbac98655eb3a353892114eb297ff02d0b9c8fed7a8b688baf9f2ca2c77dfa9bc2abc64aef753337dc3fa167af02301e56193878881df7d068e8b6c4cc4e179874717fb26b564e9d2824be5e162751bd3531fe4d4b0dca9fc0b70be73daf5d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023053aca83e8c9b74e838f782f018b7fa5d4330594615e702da535ad3d132328da8ade45b03aa48f736a938da7c09b466d202300a18899b62fba614f30ae03b3cf489f44dde342058074e77f74684de9890d17371d2d45b890967afca4f6f86a8b0ea8b0302047c435bb500683066023100f855f09327c37911c31d6dd6842f57e834bdf9578cdee4915a633cf8aebe32c3c1caf95752fc62ccc7a8f91fba0076ad023100819352e535da01126d4c3f082349236467d3da544e31aaa7ee0a0d57d489a4d9ed8d11934ee3f4811e0366efbe1f38f50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d86b7f14f0f2522de6b9d1bf0769b2fd6d61ef8ff4b2bd9ad6472520a42a70a1dea272a53447eadd5c94c2b686274b34023079deca91f9a9918067c4db3cea4bb75cc3541df030e96632623b483b395dc9d26032886d094715fe4764283fa11d4f490302047c435bb500673065023100ed1afbde7e88b516c1038396d103c04b19f4e3881d968a896986b09f72583833829c10003205282204fba695fb4d78b50230659fad769087a38d38a81f790cb1f8e17ce843b210a335de1e01f79f80d3c28696f9abab79031ed41ebbd6da774afde60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300b5f6258e5bddbe2474ee6edf3e3620e048cb3a2dcae08fc329004fc3102d530becfdea924be07461dc5f32390c774ec023100a47fb31764695044e647271164c74b45a1bfaf7dea81ef92b6576fa22984efa4cf67fc9f86a2bdacf1a2a1aca6767efb0302047c435bb500673065023038aeac1d3be6838a57261c44923b54a4f882739312131124cfdfeaad0d8bec792f385033d4613a0c8f34d43cb9514c3e023100f4d2aee6b77fc31e8cc676412ca7875674baf0d0c90416c1b2a57a95f9766365977ada0cf96a26b3d1a1098cf436cc0e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306368f50b15e040fc7ff4cce875d465e8febeed3642a171676e6d7c17ad79aa084dffb85e18fa21b8e00a37afec0bf0ca023100b24f6a837397f57ef2a5e7e8406c7ef4b0eb1c9f58a7ff6b440a20f0e834c1043dd90ab64aea42735cd1d01d96e429a40302047c435bb500673065023100b2f96b1bdf2c2a7d349d0b92e692d1eef810ac48f40a5cabd71b208f1b792c35b2135012a3713be930e223182c71ebfc02306bbcbd7419df211e665da20ab0498a15e4626c4b26690e1219fb285c55a6719627a360b5ffdefe103dfeb328e504fdc20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c1320976c575bd5839d8adb292de7d2b36294738f9eb9cd8034642d0409fc930d5cd02b0d2f13f022e9c22d1bc70af68023100f255bbc1189996b61c77bebad66b1afcb98df15d049a855dc7aca841a6757e41311c87fc282155323dc2c52d7cfdba800302047c435bb50067306502304963d7feae80f071cfb1f52c4ca65a7e620cb6016588159961aa46b2af46cc91e87adfa2ebcfe29c1148418f7c5cefbd02310092b469ed1e1bcb0a04e4a6efed7c5291ea449ca23c33f2bd9d35345662b0e7307b4d676cf407f902f4b5a232b3cbe0cb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023032a1935904f9eb21afd620a683fd48c180b637e7d3b5bd4338cfacbdb7e51055bb47973624b2c828d51cf3ff72bf6c6e02306001b259a35db1bc803ae91472eeb912c483d3e65769e15bc8430252f80c46212a0a7d7978d67f61031e393e4069869d0302047c435bb500683066023100e8cb57468690bf19384c5001e308d55de254f9e72cf8c0ede5fcd98933a802d7a6c3549b4b0d55c172e243088a890164023100b512f93a371052453cde878e0a4d3484959b3a4e2f4d86e62073783dde4b7209cf0252fc7a0f9b40bd87c85c5046ff280302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310091604db21305a556afaa7c30ff814eed176b136d13226159c207880bcec028a4a446ab70f4fef22f2922b7a41d9b05b9023100cf77a99efff122f31eea4de04664093be2ddc7e12c1fa8917ae9c1a44ae7e5d1d73a3fc7bc739139f5a18c343f5fffa90302047c435bb5006730650230723146c3590eaf52e49181801f0c3b823c5afc5e13fadff9631407ad21940ad0b1b499bcd6450c7edc6541f119474377023100f5d6dbf78a9562ffa64af0b0f0a4c800b51faeae52fd363d94817fa729602297f1e608ec3435d97b41656d401efd64990302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e81aa22ed24d35dacc45f651fc94d0e0bba71a2fa5a6f2e176abf0c64c7d7a95c2b1b7258c73a645b9ca7a6653343ed80231008829f336e1dcf32d86cc3ea5e10e5c1cd5a56eba4c2e4bfa2cc6894f8a4906a3502c71c1c955359faf98c404ab342fff0302047c435bb500683066023100d5ffc58eaac7b20d6c88cb2650f367bd20eb989241baeac5a88d654ecc6999e167801a25044d52b44d99377ab71bcfcb0231008047b23ffc5ce10c78f6b4f8740f93e0a2f40117d4cf08427278ef7f6c634a1d5f3d8e145428227035d9f9feef5ba2da0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301a1fd0ebdafc367b9c3221c0a1f184370edad183e01e051e0b7e3a46ca91ec48fd2b977eaf5f8798d51499971be034eb02304317b7614fa2259439de06d702283fb2d034f89b4ea753efb84884b115306db95696e57fa4b1501f14cee2b8fdc4b18d0302047c435bb500683066023100d18deae2ead5b2c4909ecf08ce02f6a516eb2ca54afdc4a55ee4b11a1e38c25fd2f6854c05cad38da56ff15fdcb73d000231008f9877d768a6fb95f09a0997f6dc8c4114b0993c1a929462cea0453afe00b2330cc1a81f111e13fd7a6d88a3239a355f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306a1b1fe37ef4618813b691dd38203d77660cb0120814dad6ff5c4e5401a96753c3fa7a2e5bdfd0529a37b520a165a525023100becb2cb7d94d3aa2fec3bcc537f1924d68890e2da35d2f0591fe0232338ef6f2ce3e11e24d000c15f289c6d02eb1f72b0302047c435bb5006730650230175878ac943ea8c5e5b8e1baf6878a80b983c25c4365ac26be3bbb3a5f0f423a42ec57dd1201e4d3cb18621148f8a5f10231009cc06559ba07579efb8665d2d2beee0e7381e432637a39c126ab0b067d85c3cea8d1364beaefe01503e372ba72b4ac700302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023018ae05ce40edfd8c71512c75baca0dab7da30fa9cad69e636669784a31d56bab28857d59d1ad29f34ece604a23ddbab002307fe47de687a222d78da1186e6da9b88071388f59e09b9aaacf54a761bd151e22ff0e0e784043860df5f00b8d2ca724ed0302047c435bb500683066023100e637dc942053e4a9f8e16ead061dcedbbc078e7739bb98bbbd186fa1180a296fa52cfadd183284853df8d5436418106b023100993d6c6ed47782e064a4708533667ebc53bda93d19e88df5249716aedbd5d40af241e014e7af9071bb85fb6c045965570302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304d093cf4e36a29e2e3986d718a71e8c43bb27a44e92f4bb276b838f042bcf737c704e95ba696bac1f46540ab9166e728023100ba321e618118db38a5f298fc8a857daeeabf86d04dc446b56d8ba307abf992f41ca4861aaef0f20811c662617a471f5d0302047c435bb500673065023100e0aa48c3986892463178a320864b6984062941436f89d3adf222409227e4b0db4c26e42dcb3cba6f229b112908fd240d02302afa77f2a3b80c486c01c7747efc9fb25b5f8b5501df7a7040d428dbfece399575c331dde37823fb4244cd142fead0580302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305d7a72c047feb4647c351dbdcdedfd574b6ca084cde90fedac298399859c570722c4b80ba03966faf422f5440697cd0302306937694e855d3eecc26de304b45adf529b44f67f6abed188f6ce8534eac2bf630eff322ff4469e5a1ebc166d01ef94510302047c435bb500673065023100ce3d28d88518ffe567b96572b0ede9dbb4fd677dd964b1ea51b2a45723e31f8124b89469acfeaa2364dfe63e9648c91b02302ead9a18d33b451de65131bf390d6dacbef1e6e3db7a86a2f912141db3c0b0828b3163dbc2d0b9a2df0b88fdb55f29950302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d07d9c76560747aa1702b6e94c5546a98c40e19fe0485d98e64b7817aa962a7eb4db2b2012903c81148bb13bfa9299ab02304665ef634142a42bf9327fccb0e335846bbc57f81d3c763b2c37392b44f243c8ed9004ebe54180cb51cd6a7c472bab550302047c435bb50066306402304a49423f56b007693ae9994eb81f7b1e72c7115aa26fa8ace58a365c2d421dd2aadf8e5283c676a436b91e140a2d999c02300e899b0d29bba135024117c635eb4510598375e42eca867533072580b46dcb92b20b3850447c2635e202951c5beb9ea00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302a92dd268a2e88c24a1d18610e48e496a9aebbc867d6df765d6a09c87ccea452a03d7f7772b7e0ebe25a57398e5e640e0230084d3367a1b9d56ab1f6c8fb5d915204c15d8910d4758053bc760dee006c10020ee3631c05537fd22639252a5e9ca8550302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ff2fbdbf491f5fb28cb43dc235867d069129ed3fe87431476732930ef12fd71e64e2f059308c61ed24928255568ad87c023100b4c1a2b04a16b15e00118f0627911a3b0217b9c9a466e0c1492c3f33fc3a0d7e413b980c60352cce069b69161d5b9e180302047c435bb500663064023001bf8fd40785d69b3af716c725515d0848b69701472e5a93bb616862f1ad959e6ed00db22da54ad97575bb0738ee0c4602304c7e8e0ad7e9212028cfdb4a88a768730f4e3ce144e09591432623fe72a1609d1c9dc04f7ef4b52ebd423865d5d53c410302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023033b06619e0ef108b9abccf60f5db6a645f874c4e9ff21ebd3ed1a83d7c9e6fdc1a7361834c41c465042431259bfc6f40023037092856e928c557f7659980d6b66e5225d274806669f7c17225ee29a14f90e8cf91a09f0d71d156ad5addd2500c8d370302047c435bb500683066023100ec94bc2c930cc7c2d23bc4b3c4461b86aa8f753c3b6734ba6791ca3313f22a969fd496a007861a518d26ea8be7d9b1b9023100cfb9c268332c9edca8a484361655e0f8922f02c291750f4b27ef2a1fd0b3e9582cf5b3a1974e809718032b63566e77960302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230361debbe58e5cc9b7dbe003edc134f867406115e0069913a2e447482d2f4946afa4908c335334909215ddb1e4e07feb4023068a68a20e3047bf8c60d962aaf2133a28b6dbd6b8ae3101cf56e261ce7bc43333b870962d68014b5511892c68331a80a0302047c435bb50066306402305bc754a4ee27d3ae3079f5bc72e16093a2962c06cbaecb4c39a2d40a3cc26ee157ea7ca339692f3c2ed992c17bcb712202301b330b2b4c43a2fbd55fc702f07592147036596c0b9101e90c84d68112a22d808305f0c03e3d1005d52b70fe7d7bc7a20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305407b21bf01d87ecd86b0e48eee8edfa45adcab8e4ae8a38e9b8a47ecc9be064852dcf362d2d7e3cf1be6f634aecadd502302f5b0f1f7fec31e4a2385be140512971ba5b35c4e605e3ed0cd75084a333b08d2a0f0491337fddd584a5ef58076ce4b20302047c435bb500673065023100c03ea3d6a907b759fbda3a6a160a1ef6c43c0b3884bbd68378aa0101d2d484d32ce7cfca665cbf46ff633d0d1e27210c0230105f301f126b91ab9eba6429b1948b120f06f1cba3d65e5aa01327acd1cc8df03f2fa2e146f6b19a8ba5f15765f2e9280302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100cdb3758b370bf3c9ee83de085b9611187c98fef94c83cdfd2d22334c40c36174bc87c6cea8cb96c9184ade589ca9a0d9023042db78227016de90f731e1ce63f4d5ae256e73ffd97f644f0d696388215e39a481b6756b3a15ebd8c4324633dacfddcc0302047c435bb500663064023070e6d33a6510ab80f9886a6195ed995d7d8aa6e180640e27a470eb017ca25c1cac054a3702934edf3a066b8e9a7ba36a0230030514755b9773967d1b48d9a71564e800a6ee70d853d15cf92f0811850fc201b89965c62ea6af6669514e7fa5774ec30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023015a814a71b9cae1d97458eb0dd3291d351ef06fd965963a58baa87e6d230532e2622a682ac93a05db08a63ed09fd1a7d023100a4c3b88ec08af09f5b67f021dcbc936d2b77894926d14f3c68200d4e826de1931605682a60717d7058ae137e4974e5a40302047c435bb5006830660231008b39173679c12172795506933cbba0e5a02d7ebff12798b76765d96c0ee3815f8c026a77914a0a0d49c322f81735bc3f023100db224358c566e8cf1e4f11c01266bd9ed2197a30b010ef8855ea10b53b6e752d60f5be85fb4bc470629a9c54da1da6510302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a922cea95cd13da1e3998a88ea0f829fe030964dd57af444e5f3e86b7deca85cda7d09095f0e1455de5bf839467c015a02300ad0c89041070e0b7cb7923c3d2dfb60d633c3bc9f632c24c31faaacb7bcf62c7427e473c1c22697a04a69695640ed3e0302047c435bb5006730650230030e70e8ce70ec2e3d403735f032c7c47c1eac4c2a62eb31e4a8614e48e3d88727bcd22d7853d930b9a8df1e2427c949023100b6bd20bdefd6f8cf867975e9066e0612ce94cb67577aa2c11a1507acbb67d0d711027693b4798faf18094666e197fedf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008e7fe3681d75cd172eff3750d68e31c6caa240ec2776f02a2de4bb3c4191e69e0b5670cc5fbc67d13ef7d65ca42802ab023100c9aae4beae346a7a862ad0d1bc17041266dbfbe2d0b9495cc0e9a35d67bcc319f6e09b55e03ed6322788aae8657eb7980302047c435bb500673065023027006799a14f32bd1152da759a31bd61d6218e6eee5bbd7089af0b164ea8b6e70a5ddee41568d92e38f76424976a847b023100f84c69cd34fdb115077df99dae992ffe3d1c60770829b54840a19ed6951cf20665a99c4ca57bd0163e276a2d857552020302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a47398a6f233da0e535b40973753dbfc086960d267cc6649526857119a8bffd06140d19ea17de9db49a16a2713de28bd02307f8b5d698de6852309ff2c069c89e294f2ab399333b3476e4b624ef27298d9c71213bc9f8797f229ba18679534eae0260302047c435bb50066306402301ad5bd3ea67ce34d2da469547f95d3e91ea7ab9288d386067881dd8e94a8431ae6485ed18835eb8a13bc6cf25888546602304bc7903b7940e31c0a66ddffe8cd21df8b411ddbf1fe9ab91eede44fdfdf589ca92d449a0e6e4fa1e396aaf84fd0d5820302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230192424b4860e01c9f7f39878a69a9ee23dfdd54e2e858c301a994e70cca1001090dd0f0ab5bf1904ee838f32c26861a0023033edaa345d3646ad63c1e1176e3ea6bed3e730816416877136a9e1d91c3931d101154586f3e9f2d0bfed53352c5146590302047c435bb50067306502310085f625bb23cedafb8a38b6aaab0fcd806b1668eba3c628e3019cd099ef617f1cf7a2b94b06327ca81a7250773c40182002300083959c4c84b6f5abb9da9fcbff2d0797b6d7318978163d84a376a8a32b2e3c6efe693cd7156fc4b0d9e7d96f308f7a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023004ffa909f950db1ffb8b9536d13390cef98979fef419967cce946842bdf236549ff71e97a0b339ef56c78f18c961b01a0231008e259df6944a252a1d36f35d872fd3ebb3d49665f369aa35aa27dacc815bb464fd06690b1667dcd7dde6e5cd196b18180302047c435bb5006730650231008eb75716705f668b4826a8253f9b8cdedf9978af64dd6d7a99fd46a2454a33a1b5838dfa79390731234e5049641691cd02306266952abaa7e3195f9c015192145238b8d8cf41bf7f2e74849bee38427fb143721c421024eac227fd807a4c0ecf227a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d72e16544592f18e0bf71bbeb8c3e950617c685df5c8a4f42dd22a91c0c717a05f74924ea8039ebf3ec57bcbd77583bb02306466ad19b9271dd7accdb2fbf6dcc01eb64731f7ebdda34209ae5e483a84dd9981872f37ffdfa7b9939c58782061e7450302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d2847313c782b149a8156844ab57c30dd17bed918b35034ae59b9bf2b913e1899966e37b8c7934eeeb7763dca66ebc62023100b2b15454112b67afa53c322dfe494f2f1977b99a4d023100cc963f7c0bfd63d103fa3aba0610038e6b94a66d4d09a48e0302047c435bb500663064023100b7861108206679dc9ca7f6c71908685c94c8c24c5aa4b9e6bc5930b4bca60596c086888b923b3f565d2e625506b102a8022f52963163bda6f74da9c52952557058bae29c48ab1facac7c6bd03b02a85d91c96cadecf93d2eacaee8173eb9865cd90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500653063022f7736bca922b23462984a616fedc93cc73c2b0c137187e5024cc328c441ee5056edb5aef8fc4a0eb6620749aeedd5040230700cd2f1c9f5564b2c3c86d245f568ebf7bc1c107d6459d0ea09c05e89a3826cdf3c5d93a8487f11563b39cf3cf46c090302047c435bb500683066023100bad6a899b53353a3f77187f39163dffbabdfcb30c727888891119b42c2c496e93bc38bd05e3cf8c3d921e96185812d53023100e11687aa92006458c9a9463880e2838bf64350727dd53f6a91c0f579d530ba00943553eef76a9ddb9da183e298b2f6de0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100820bc8c70f9f16b9ba43617aae23b709aef60745caa2f8f8f6a72aac613c49384876d868d0201c1e587706d49b3a1a0a02306423fe820c63bc30a33fcd8345457c9492b10dbfe0b4c99d527a81173ef5f6373e4d4715e2680d1c5611f81da60d60e20302047c435bb500673065023100a0661798c99d9729a91bc80a0b173deef6d35b877cef4bb87e4eab4c296b702f723e8a5380eddaa197673532b0c8208502307d0372d329e0aac6dfb8711a5107850bb25197ae0631649b5d78eaf6f5f98cca702b9da4987d2e82006af5422fa87f360302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bd38a747e21f8fbf486af6177cd6bdf7e8ca7621bab414ee2bd127a79cad2e591f3b03aaec588940abbcc9f9a0211d7c02301d5d22b2219cb1bdaf26504a524380671f2e7f0b74f7596c6dc605f1f78bcdba84f5a0f7b5f45558a9dc48499d29d8aa0302047c435bb5006730650231008b7f37d689ef8d0748b01b0efb2b5ba6ef0ebe07f6b5daa188f64f20775884d39a5cb91f375ec696e53bdfafc287c103023078aaea667a57cb4adeedc0c749f6313d90ed5a47047c91ae207a4abe4dc73ca8bf5f8b9e9b26589fb91dedc074bdeab50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bcf2d8b92353d3fb9e40b30a4ca8c379db00f821b7d1abdc4bb0ebabcf28352c4a5b6f8ee9320fb50b5671b07b95a5620230480cfdeee6e7d949c1e060571fef8cae4ded2788e8bafc65e172ffe29a0c23f27fba8a670ec8f0b857ab4561d4f982a00302047c435bb500673065023016a1913dcccfff6a27128900ac33b1f9c7713eb703b217f92fc7fd3eb6621459bc37d18f1cd430dc43e798ca1a93706d023100abbb5f579f0abbb7a43b075f3fb3f74c8594d02a8b1b6d2904912123ef02c4c8f0a5f7d08aaaed4ddb2f223cc4ff8ea70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023022bbb6c9f16444a3213c9d69bf8359152dac1a7381ab178c162366d8de03072296c645841447d7399cec99a8d3f77e01023100f22bc47097be3a06ed034b351b9f820148dfcf0872d982812ed8d332281c703b38058cc4696364af5448147439c7b9930302047c435bb50067306502304988e561b302b8865134aa8284c91a0ee9c49bb017909678c059abdc964cabe825b20c94cef4459867d23d19beb555cb023100a12d4c6b9290449c41ee673f2008f0f1025c125d80a73256444d1d8af477690e3ec2e591a847eb8ca8c77a74eb1fda420302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e3494f6a573a38a39c15c9d78c8f7b88bc0941eea46087e3a6a7127a66175c30a9717b25c5f67f679dd0022223ceb98d0230484c5f0be80f56a189b113e79b9366e380b36fc38077018e1414408c4548780656f1019fda437b74f52d39ce0c9aa2590302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f4272aff46c850badc98bbe8a76fb3da2d119379bd015972e2440a9242fa8208cdc07247fadb836c53e4ee9ca289d9d9023100943f2e0ef7db80efab8d21e33c97c57620febd888054b91a9bf8024fe5d29a3fa1cd00c418cd41bfe94c2d0a3f5c72a80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ab0cdab307b31498a3cb1b3bc0fadd4a26f4076f080430c9bbb2a0199fadfb2dee051829de02c2f0537c11f74c70b2a5023100c60b4c96a69ee8d991a7f5c4e29757c3780ecb7dba57f1554930e2f8b7e7c783e75642ee48bc6b7450f76bad5827127a0302047c435bb500683066023100d1efc3032b1f3e801ba145448809f0ca1334db9f3f3646c292e870d194dfd6e5e36cd3985411a1ce89a906e9cd9a8dc6023100e6aba80b44a44dafb36737623f836951abd006913895ebd72edb358f5561884e704ce7dfb02dd54989f267c4cf79df1a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100bddf6864b9e41c400d537a1ffab4c494792e9af0078568d9b69595ceccf09236021cf24dedf1e5505857e0cd096f99d3023100b17ba11f7aa24e00d7f5ea2b50ed63c32c10101ed9ecdaa6efb13985e34fbe406ba3b02c8c94dc174f5b3c1766f895a30302047c435bb5006630640230690eadffb5263bf4ad36b1290bbf02837502a4adb169949114b31ece472f687ec82be2fa03ac72501625f5cd220ce1cf02307cbe57dcd4623640ece36809318aace232c471028bdb48b1555a9e870cf23a82f604bb279cc9a80301f2c9057c1307eb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023061fd5e43a31caea3fb1f91453174b28fbc91cdbbf60764a6e5abd6aa98acbbcd1cf76b20b247fd4e34ce41e88ca396b1023100fc2432e222e766b3b2d7a5b445db80f45688c0dd8686f17facfa3f5a13e6edbb76f906af6a184472b0b65fd1ece9f63e0302047c435bb500683066023100f91494e65a1f9f010544492b12161115a7c706ee1266581c1a451684b3a34dad851bdef965da56b2e49a5c4a3368592b02310084e6deb9b5436617105ec26ac2d0e17664319f6aa1819d028440793dadf411105d4122d12ed01ac0df149fa710bf3f540302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402304f719052631a9a276af3bd64acf8f53faec10dfea76bf6c957531f714fa31f975334505f5ca408ff08c4be935f658e93023015803ed81973a9abc7b9762c06392639db8d2d04fdb045b8a68b0d23bd0b2392116c78f282691f7f644147816375e4ad0302047c435bb50067306502307ee047c711de74dcdbe8bb1d6ef2f017794b9f87a85202de2aa29675754724f434997b6ade121cb29ba6d60464582a3a023100814e5d0bef7d97f699e14662e323c9f9ccfdb34bdea34d26fbc45cf5f3cb787c9a7aaad152bbb9a9fe64c591bb980e580302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100dc61a53bb4e9089496ed58f6cf921832d4424ab57683491afd2b69dc98ee6b7755a53e1282a7e51065393d8fc5aff57502307ec7b9f0494d7e9a7b6791db5c20ad6f21a75e187a83a5d37d71b456f9e6c6fa531b8d8145d4ec5b4b8bc3da04cf981e0302047c435bb500673065023040364dd97909c952b6fa2e862fa65c2dc75f05faab893fff4d150a9c421a75b84eb41abb72b57c8bb362ae7fc17a7123023100c54223381202f4d46a2de08b1e7a97b1fa940d79cb8f641ab0bfc6e2e98eb00cd460feb7e1c086f778b076dedf82fc440302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305919ed44bccb583a3ca005fd5693ac93d032c75dd4212a9c0900ebff820a022348ca0ba45095e6e90fa019cb78627db9023034effbbcaf61cdb5de1f3a3a4480fc97da61a240d2fa50db2d0c6ae4b115620565bb3a7c45649202d076207f7bf72e5a0302047c435bb5006630640230745a5849691ac4f1a4ab5b618941fa022ffac85f9fde6996809811466b8b0f06a8437e3192ecc2e204200394280a596102304adae1ef7e58c1960fe4bbf9e6f7ab38aa4713f601322e3e70acd6adab0f770c734a79d98a39fd6eb928da0af7542a200302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300d6ad4935d00151744c198e8b090b52fe2f030fa1c593788c73d612127bc9cc6f80ee5cf4dd0b5717444674fce607c17023100b0c7ba5e4521dfe63d34f8dd2c6b440c75a4f9ded9e92c39526d8250cb9d1c932fdc69115d17cf64f4a6e1325fe2445a0302047c435bb5006730650231009bc92f4e87a71f2de864a06827da2ce811b9d5a9193c180c6e6fd6a4ee28897fb74463407d00252d8fb1f461c2106a9a02306d3ac00b72c290667adcccb9c27684358dc9454d7b6e3b398a87d597e07ce0b16dd550e6ab0cfa72a88bdfda9b6f50130302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e7d374c0c466ae993e9e55daa06fbe09a9dbe57eeacb4b99676b983e7b09154aced18b52914088d8551001638e841832023010d8424bde1108bae3785c88e4b00a4f8cd7d620202e9162111c56804e834d7bbf900047a20cc0a7700ec1c4f9d88ab70302047c435bb5006830660231009abbae986061b5fd1759a70ffdc3a2c4af31f515d898e63da824a8b0945beff3fc9e4ca62f40ad673fc15fb442dc8d23023100efef91c0fb78c1200e11dc37332e20a52e0f56c880a63efe225368bc7bd19989dec6aa1ff3f20a2afee07d419f6b56900302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300a495243b572866772d0539beec6e72b8e8f3484f673422f4b2e9537e70b74dba6ed4e8e8f4f5b4344178421aa0cfa74023100b095e593ec02481253f38da68c87018323e257f1ef7ad3648f1bb3b1d62a30f1757771c9a9bbdeecb3dfae296f5ac16e0302047c435bb50067306502303a0e7620ebf18d99152cb2079ae765239bd61dc46b0fb3e47795810d54d9bb373ae693d8bff900321487df52400da4ae023100ae88d47101f7e9a576020cda91dc720f93a2fd16e249bb1ab578d202f5f43459a8ff0a09b1df810ef3b0ac4487b26b8d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100af82adc89bd376d7348480c1c152712cf5d3f35cfa766374a7572e281fd551f79a7db02d707f1194831652e846af5daa02307b43b567c0802f88d9a237e006c804d438a5833d5f49a117924588011718d8641ba974d3207a98645de16e4cfcfcf0750302047c435bb50067306502302ebe2cc442613de0089385404a439f4627cbe48d575884f202e88f1db8ab8bd93bad6df16971395f16a438727d83bcfe023100ec0a62fc8e0094d79f45f25f7bef1ef1a42597b4f87bd245ee6a9a4dcec34c65ec80ac9d574c4afa6e978455eaa91e420302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301af51562142f5d311bcceb3aa8cabfa92e8421eda1e3f234a7dc8d2da7a8acc1b0580ac5e20b3922e8d099cc87203f2a023100ca64324db545060aaa0dcde8052f962f2c44d767edb28370bf43cdc1919fc2fc7f13fbc7c01207e5f75842278271fa9d0302047c435bb5006730650231008f43bb3a16280a57d3d83ce8a89e1393a09331bc345f51d06052823684574c2138743fee995b0f3dfc7f6be0d63a7928023037c99b4df093dd869ba79a540f0cd5792a792fbb09eb8feea9d9a950705aab60eeedc15d5fc3bba35d847d5ee5f63f730302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e358ce1abd60695c6d635b7e05f047a8516d632868119238ba7c5df841191b2581086355c604a5e6259f10f23921de0a023058e13cbfc2d922d6bd0152cb04038b7d2f01f31440a9f1f903b979a0968a69e058fafac9e65285c4d5093838464f1b630302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100bb3181a5e5a9bb2d40df7cd76a452faba65a1595817958bdbff5afc4363e08d42c85730155cdb89571d31a37d0b95ff0023100c6f9c223d1bbe2260c7ef44fd8e1749d42a7452e720efb5cf9e6256edc23f8eac6d916e5e8ff37efc6bb89b3d7b96f180302047c435bb500673065023017781daf7b23a7af49c06d9f04d855809823314e85e017e459fe420ec8988dd12c67dee1f89ff684b821a9b2c97d7729023100a4258a5c68db5002d71abc5da69258499144ed39f38b580cc709a45f6103b08a7e504cd446d26055247551353bedfd740302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310088b6240fb1071b61399e0bf9bff4f7fed847201808e6318118a7aaa61c7bf564217e293c57fadecfced2cc824a8e2492023100e2114f8a854ce5fe17ae66c557eafe3ee07c6493cdd432c44d09b7468ce2f194492221f78308f3934ac7322faa5068e50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a50db8547243d9520356d9f298c4eb19157c4953571ddb105dc96571eaf085d4ed06cddc9797efe394f9cb7b1f537fb202306b9b7a21d81f860eeec0ddc40660f7dedf09fc8fd9486daf065639e76bc8a5f566bef730e214ea0cf6457ff91debc9640302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023078408859a0621b0e0577f6ea96c147118165c5848a13885788af2ad4e5b16c7ac13dbe8b5be82035aa61d11d230ec7f5023100a6bf4832400b9f307d018666c1d657974edf9e8b96077eed21f37ac478bdd99c85bb8766a882936759bdac68a931aaaf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230388c17577f3204d2ecab0cc6daf1e610373d0dad139e2e975cdd5e487b64802b7cb2d34a7d4cda1b51f73b2a686b64a102301f4256aebf43dcd35fda2f8e30474b119bf5fb99f7225d062167d756a6ff3c7f577aafc029a94ff366c4e9926e3e113e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310085aaad51a7956c0855f70cf70d17a6c3c1127bda8c8b9005fadab2db23dcf30e4ea220a6b39f392f8f8ac7a36585bcb90230546c5d0df7cdf9bbdb02c2df5c2a26e29e11e551e36da2b7b88144afc2e8ce8afec82299b7022fee73a7b35253c1e67d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023052b152528b5764875c47c08bdc77a48d316722ab8d3f13d112c0b803b9d4df9ba611d5550f6311a052f506548e656ab6023100f3c17c056bc4d18ee8ee01091de5704a42f293295ad1b8120d2b3910a4bbef42a7d0bd6e240c53921fefb054cff31cfc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e3ca81e370b07c8ac54344bea33dbd556b8ad6070c58c7237fd29b0f64f1ec1b264ce83470bb1212093acec6152178ea023100b7b7f9483c7670beaca0ecc2b0c4080252809807abe1fd276a945f52ad7a9f12449b5730673b6fa82c95b6f5cfeed3770302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023006cf077ca16c2383c44c7c109d256e962dda880d90b0afa1f6c9ecf2412b807ea7294c8998a43f595715c451e2f6e32f02303e4fd7e558017e755eb2beebee73bcb7e603dd9ecbf7b5344ae3844c6f53468b8c0f5eb34ae4caf826f43d6986f144be0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ca0540c40c0b6240e07737748c9b1f814773497061caa2ac60177a8b06639eadef8370cf62c623adef05a3c9bb29bb1c02300e791f877f229527c8b34d77faa6c20476b63eb4f52267e8d2e1de83362dd505a97983268224512fb4589e752b4e04340302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302fe39f2b1ed92f026701f58689f7dfda35288798ba0e199bcfa1aedd0b3b97b3fe16aace312241b89b2bf26e80447e8f023006bf63b4646b23a398676ab3c0b58480c64622698d0c2077b76fefed3f9ae8f4284014f02e63f46cdc6189f1bb25e79e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d3cc7360c48781ab5defec5e8a17cafcd8ca1d88ddc06ea6f9751589bd46eee22a6e6630126dc1af452e58f6cfa6f3cc023100c82d86a34bb29a14541118e92830133dbdceeff8dd7e124c702083094e9d4441db366368df440851eb88000b7064ce320302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f85cd8f49aedac2df2f3d657f9a633ed3e9bbc11333a3ab094afbf96ba59ff5dc8da9dbb3c84222e6702cf48d0abfe9b023100f4dc7672332376c5b27a04c175c4ed6ba96c45f7ab956e88d08779cb40a7c03c5a550d8308d13b99f813df4f7c1ac29a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023030c8acba6b2eeaf5610b0fd2815d8a2fd02fd4d6ae92059a2feba07db75b465030e66901896cfa7b387bf150cbb90b5a023100b3bf03282a308a51c044dada6732e7337028fd86dc72fe986ab2fb1b4c7fa19868faa4d983bbdd3e9f9b3a8ea1145df20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230764bc0631fb632e7cafc6c64dac72ffe9624eff65f049d7b79473b587609611ac13d57904ebff17492109383601dca78023100bc2e1aa7cf06103883657880dfcd8f00a60e88010f260e429c259dea264e01cafccbb7b0b21f6efbaecedfde0fe29f750302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023070957363038e2de5879af55730e2a76fb3eb2f364ab7b5323caf8f0da595d539f63f4a3452951bacae7d9a27288d9094023100937193a913f0b9a7cc19a589768fec743f8cee5c4abe3b6b344ad6f4952896353c099d955c79da638494a9a211a697850302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e3236aaf55e13815a9c221403fc6eb3cfc20f6747cb7029215e5fafb645ed51cd30914fa4fa12a03e9d3e5991deadd72023029be413f16e4c447882e2cff4aa656812221e20a44c1c80848f88a06d92387da66035b05e127c9d99f4770d4826fd9060302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100af11639945993be2e5a6e1a8cf92b8d12bdc77511fb9500fb18104072536e45efa9cdf39a6efc6199ba54c643a00004e02304849a3917a78750f3302a70a1454ca92cbcbeccad94e2b44ecb40aa636e41c64f51369c8b6fc78c49a3f2937b7f84c980302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d9b6654ff54321bc5b5099a8fffbb073079eda770add1511a7dbb6d7397d23c00b2f75302f4f793ca6e842b4a7f243bd0230332375b312ab986d51745a359f4725caddba0a18460f8ecb55301d1615968e753f5bf2bb3a88458eea912414b8a7accb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b67bd79c0c392b345341e535ff329c74ddc5bb0fdcdace734ab7a751c1a724ab5b9bd5ceba60808ff9c84483ef4b5f5802307afe5d8f0bce56e0f89735c060f2ac6afd951c7c011672cd8a0e7dab1c049ba78effb4c58f21306284849eaca9e9d3c90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023014c1a20924cac06f8e91371626a68839566dc0a408ece6c2c5fd27d549d3c2695c728f7a8c250809a1f2e8729a27e18102310090b0fe18585ddf78c9c506fd58a118a40b5d998bfa184d6804fc262753b937a2c3cd90ab21072e29a91a1d48e521de860302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d02806b003d1616250063e2095f38d712ab1a72781618f5fada45b0298d9fc6f7cc0fa20aecced6ddedb2c21b2ed783c02307ed505ac7d1b29c9b24896dcda92c20bf4c829ba76b20b9efc6a96bf1bdd6c04f53e9055f35168821a81c13fe0714a910302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c6933e5f328360d4ca91063d50d59eb8433ccbb742117833b209e3c5f6af54aa3092b442b4c0055dd65770938fe062870230136bfd1dfa22ca7eb654b5502eee382a38bf558e3190d9b9d7013c4e7f1b5933f3055054dd0b99f636da7127fee5803d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bafad1b305d093f69ed21f8313ddee5948979fd0a935594b9f09184d44bd9d0c0e3871bfb8e0e6890403e70d7506d88d02306e239d65a46014c5faf0d651a747945007a11ff087a5548763f5204196a4e0b12d7ab613f3b59346b3cb423b08d70fb30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023013d2e3ed3462e633c56ed616ac67117a01cb8a347948127951e0f5302b1ce48923526f1a0e1e20021c28c055ce35ae72023100d9d3df4bc1a1a3ca945007d45400de1666002db450de25c08b8f11fffc658b98b3ceb649824e676b1d65c9042b271e030302047c435bb500683066023100be6341a5168ef8263fd7fe5e69f3e0bc5825b971c90af482de8ce331214731849fdeafe2bb91ede2619cf8235f5e5c5e023100cadf464e2c3f2beda725685f6391a29c5cedb512d362e3b437453c503967d97c0423fd5af2db7546b97aa8ae9622e1290302047c435bb50067306502306e58fbc68f2c0039ce9dc2529d70f3b1c4f658b2662ac965957ed42ec8aacb01a08e18a597d4dd3f26776274c8c6ef24023100e07f291da5bf9e2172eb4da39da0cc91aa4fe1536c088e5db1743253eb6b22bf5e70bc21694f1e81e2bfe790b441523c0302047c435bb500683066023100c000223f3cc9d4d92a50840fc4c3025fe0977fd67d10d18973cccc89757c4885d26e1d9fe18d157f6033be18e3d7c163023100b4a2ca9114aba126075d5556df2af816194773d3ee8e27f556bd55182de969fee27294302649f09908941e2514e69ef80302047c435bb500673065023100a578f21e4cd2791a40e1f353007d0ada348dabf5bbf6e9dc36af14ebfde4666a4b9b770b3636e93d55afe4611a1cdc5202301b9b882ff8e1b89fd77e618d8886811919b1ac81ccb9722024470a45b0297ff0e3ba93e5f7d97331e487b1b442a254e50302047c435bb500683066023100be4dbfeda45d1c2d5e8d8ed74288d55de8815ccd8186cfdab8063c5f716541371d963d26e4a297896da6a6d8f28a0c9e023100fe46597523364e7d1e6e3ca2155e587181ec0bf366ea797c1c96643415974e9a942c9e4d1270fc880ab26638bf4f925f0302047c435bb50067306502303b554c47d1c09e710a64eaa9db3186ed8199ce300804a321ce2f8acf4264cc10b0b0d602ad49ab96b96378aad8c1c4fa023100fde3d1189d5ff63e885aee2afbfb192e1dafd465570dfc851f4b7428d03f1ed871e219a4003729f96994c3ab1f89a5b80302047c435bb500683066023100cbc089b0db16f87dae59d14f5c93f724b2786bdda1002b1277f59a1f7027da0cc00a686f2359124956d974c29dfabdc3023100ddd744d09ad42a7d480544c8d32efe562c3b20c8b5dd7c1283f8e30be85e0348ce0ee0ebd2399ca52c3cf21246ae3afb0302047c435bb50067306502302bf0e13fe6bf290474acb5957f21c0ffc6f017894b7ee6059e756aedf947861a71a32bfa8fd6c32e04b755e9d721e3bc023100863dee52f2c91e751e0c5e8f2620584eea5940c1938f27a46496393df96019d6d300e39a22e19a2126f99cadb6938eec0302047c435bb500673065023100dcd6f7a1815c353236c7e624e537ae8a4b96d629a2f71849ef7672378e544462d2106099b0dcd6f50768dc0153a964f1023046d03026d077773fff6b3ce615e3fc213c3ce900652f22533f5ef6abf358d17c857bbbfe61b5393eb39d8e37f0642a180302047c435bb50067306502310085640006a80eb4647bd8d0eed6e0e92ca00fa8d47fb78c1f46ac43bb1038201b9730ada29237106a875afcca5e4076a802300eef9e3a61ffb19c5cdd96992b065d75f3d524d28563745cdc29d81e1b76e7c7742d4dfbf84f751ac5c5daa382ecbba50302047c435bb500683066023100c1dd65a534d81aa24e1454103e0832174743038fcc8056ec970fb45dad4db218338028c611557ee80502bd0cd0496b51023100bbd23d4dccf4c9adf70dd37715ab2f19d8d76e400ab72835dc21ba0ecc9623299968f889d9c146882cc3a5415078d8b40302047c435bb500673065023100895f0c3ba5f2ce594f4f30641245e1723ff31b2c27f6b169b61d6507f5f150d5c9b35e77a8b96086d196d9e0202670a7023037087671001bd61795509cb88897ed12d7ac321cf20d99fee7376b50e393f5b678406c0236b7556052c64ea2a10438010302047c435bb500673065023100a681a783197812e7488b52272800176d2beaeaa07597c3fed4016b3a9006ab09e1a5caf877e64630d125e14faf5c01e90230317c5dad23b420ffdc5b84985cd514a6e9e0cdd6aa49a30b4bff31d6c653738ccdf2d3f479eed266d5a543de8cf76d4f0302047c435bb5006630640230368f58a19b50b840a61d30b31bc43b8837ec23366fcbcf89087510b4300b3f9b3008ec8b4407d72a43a608e187f333bc02300357e581ba50e0b6c1d7a77fad9ef3f38e7903be2e736329b576e60f72d4ee6346005c371bc6bfe6ad047e39c6f9e3330302047c435bb50066306402300e50fdb8f15e4f36c617556059b64a209b2ce6bf7f6cdcc4cf15fa560edd6fd174a1b512713a1e9d9df7f2d86ecefea9023077d90e40991c8199e98fab7ce85ae38047891cab681177aae9e9b1990c15a81cfbb948d077f58f4afae2eb366d9916d10302047c435bb50067306502302c1529f061d9589cabbfe7d0fb7fb19b23bdd14de00b61c06b701cb21f767b3344bc2ac136f46642eff090e3965e2b80023100c38bda4630186563e261f3f7def844dacc250001f42ad2cd04785c945a2127cc4cf84f9d392f5cbd8dc99a2a5dc120ed0302047c435bb50066306402301c908f119c07d2add6c4ddea6651042af2315722134b0336d4881233c41b07be3e7f8020c49d69734396d7b9cc4f468b023057af76c844929c2cd82eb0e86b1a2fa0902c353c04b16f345355328410e0d4c88d218d58a0690c2e5eb001f7d3a610c10302047c435bb500673065023056170f18d03b34142918d229c84856da29024c64fbcf65a35db41f6c734e7b8432bcb64abd1b3cf547e432f92e8245ed023100c9b11d90bb8ddf78771552e39aa943370190bccffef3e145bf9de3fb72ee30af43225bd9f2b525fd206492a3baeedaf00302047c435bb500683066023100d67f6e09f2eb4cd05ba9298f43e365235687881c83532c9edc0554e03c26d803283bc4b4f485e13035ecd6b1f8e79f3b023100850770bb01a838f509c5c7f5bb86b5400f87a343c7ffdda0f375ffc721d81aecb0970629cc7a7cdd7826b45ac1705e910302047c435bb500683066023100d1004591f6b21625d1d944c23350b804476fd1d19081380f4bfe70cd99c5afdc2e40926072da70fabdcf35bc8251f7a00231008c8abeca463dddd78c174d4cc07b41ce3f8937b2e60c7b6070e4dcf72bf9098565863747349443d3f35d94c4d1909e360302047c435bb5006730650231008cea8a94c8eed2ad7eca5a839f9eddcf0b0a3f1ff0287fe7f407e066965d6cf7debbb65fa33cfe85ababaaee2e8066a402303c6cc85113785fe744a05669d188eced9b65cfd62430ead73a3fe79960ab88fb0a97eeb8fbbbe94a261339674f73cb380302047c435bb500683066023100fe2dbb6c48a9b9ca6a43f37c1fc8c4c2f6c51a3a4d31b6160bee1e2ae1349abe3cef707fee8df3f47f70768ce639bfec0231009f0d2af8900c0c47ba342950b636b6a82c725c6c6b593787435cce04b14aafd490b08e71702aff0dc6a971c51931070a0302047c435bb50067306502300c05b80c257fdeb16dfc0c029688af2dcf7f73ee37e7c562609754c99f06f05cd4c791cb9e772a0947d9068805d093c9023100942783868b538190fe5503a679c3c61cc431b176fbe8dc81edbabc3659cd0e1eef877393e0b17f0370ce1fd3f46c064c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b14347010a03f65cbf722aadc280c0512358c04f26d71d04fde5082d50580336db232db9292ec4319974748febea451d02302955c37c6d501c81ea33b33d82265694a690d343e225ea3afdccad18a3f85ec5ef475ee5613b0d3641a40b4526b62fbe0302047c435bb5006730650230646a34691654cc1ca9497972d26b1ebd159080925c505e115e6b9cc71db958ec60efbd7739e6a7f9af850a2e64e010f7023100c99bece769cfdace1b633a45540b88f2a9ef386697d78150f21721818006aeb0cc1a2bb1aad05c4b99a937e477bcfc390302047c435bb5006630640230337b2c0c150aeaf7a5a44db4cdc9e7d832216cecb6f2bb8853c460319284bf26e3dc735f3071416c4e3b3a079000ccc60230367d18a831caff0d22bd4129951a07937697fc414418dfa0d1fd619724094bac1bb79bf81033570e99e7071d186b13860302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb50066306402301ff210c8d7c8e108c0742612a2717e9cfc74f64368a795d9259fce200409d73e6c2837c94f8f8fefc280077231a4d2670230617255ca27cb247ab89f459af8f46d4ac7065af9a740b405bb1567135418df95ce42fc4be87fba371dcc8918c2b34a5c0302047c435bb500663064023026d082b5edd07da453061600cd233e50a6a0b6adc66ed31974d13a6bcf5efb95f6154f997e5c6ae83360ee8dd213f87202306ec9ea2947def1ebbab60e9aa35d7f1b5cf9609208b648e7e7fad442896c272e6961eed8860fde73546de30a755fd8070302047c435bb500673065023100bd80e8de1a2b1a5a2b9eca880f4a5e642740926ab48717dc697c26a40ac476d8b227375cec18b187b39e52602f160d5002305b763562318b2ae76e71d32e5cc41f73df3c3c4d0408a4c145df25c8febc223859052970f4d362af040f8a5bd4cdb92b0302047c435bb500673065023046d75e8c8df92953a988893f5f0c4c48c5e4d4fa58b687e4eec8485ddad06f60aa85d59a999b44f0ee2834acbeda47fa023100b0da90d848ec14ff96213702f53c616623c878151ac843fd272e4a815a81674f61083508dbb64f184c60e5fcb36236310302047c435bb500673065023077cd092452adb549049e8b4d33a2e97b30228a7fd931e5ce0591d9c05145faf88341c6e503491e2e7019996a6c30a999023100d451df3d4d0d8ebe6221d2338ddec8199e33de8b0ad9b2b2821d0e7a60e86842d35416b083ee54451d08c41e3539ce120302047c435bb500673065023100c62a19ebf9126ac15d4691c1ac1956cf684c9b8d9a23bfc9c0e8ded49fe892aff586044b132dbfdc89d8cd6a853e246102301d08ee78d2f761a2540304619e2b9ef3d9bb6f610c481cefc8df5a187f6e604412a28e77246f45a719cf180772f89b3d0302047c435bb5006730650230456ed6fdbea535a6739fedb2bc155aaea4aaffde0a5ddb3c1f9c6b1bcd63139bbf1df5e77159a60cc057c425c1cbba20023100d770ee787521d5b4086e65b2c754efded335f46a1abbe9f191f441fb50bcd3d82091a0a76c8edb2c109ccc693772c1360302047c435bb50068306602310097534a92010b9a77d4f7b0a3d134962a8ef23717cf43601a9a42a9f42137c183ebab9f8ee26c437dfb8318dcd0db22f3023100ce94f5eb2ef873dc13f341ac9dd1b889b5823a5532d23a7051a7107b7ec44f6d4321eb4d02c5918ac61b97ed604af89a0302047c435bb50067306502302b7328bda2558f2a9de72effa03a8999d32444bb5a2077d97abcac31c3d825282afe7143b9c22ac08319d3deafd4e4fc023100bbf240b12d994fc7cf6398842d431601aa1b95399ff8e220dfac2ee6b40128888d3536decbae38afb225925fdeb702f10302047c435bb500673065023064883d134f875cd69ba8a2847e8bbb9998f7d59dffe876f92b88e6a6e7195eb2b12c285d9441156c671d104e16b886e802310081ff20f8f0089eb75da6f56ee497acafd58be79d02c00639c5079f903107ff2f5aa1134affdb462f0ae44ade02f6c0ae0302047c435bb500683066023100bcd6b16f6a9782cf0dbe05b9af1547a9af5bf2bdcaa822b9f7de292d0f2ed247ba8e20728ac755e28646477195780e04023100c2ce5d167027585da3dd8da7e0ef825916d72a1cca70cdbfb422912c2639280dce6a965d3cac7158ac5fd8dbe240eb1f0302047c435bb500663064023017d4df0009b0c94a7d42d3fef5bfe27603a61f5cb58f7011b6a6bcb2f5047cdb16115e526102be9b0c8d3a84be4bd1d602304136892896542441fa56370fbede663eb8d8eff7ac42d142183d863cbf780b7ae598a78cc0dd3c884381c8c6471604d60302047c435bb500683066023100a2c3102345a66bec22fbc8928469e7f13b138754104bb05a675c1339c7dff419fe3a1bb3b18d4642529ce4ec4a79f58b02310094616d3600cbdba1aeff7892272180d560bea649ca65607b1be1406fc680547e0ecfee1823e9881a671425120e01e63b0302047c435bb5006730650230761ab3c2fb59416a4c62385a2b0860d5ff690436c3e733a3680047dcf50f3f31fe8add408f4ec1b5562a23e4f420d23a0231009fff70795aac7a7c7de03682e65ec626e850d030e1cf584d4874c7e678d2a5d83f380427150524ad064441c738af72460302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008b95c3ba7b950576ffb5ea6c26954b0c1cf4e00008aa86c59bc6024a10f19520026274b9c71023e1f05973a4438bf28602303cc26b66ace3eda7b091a875f3d3860e6aa6916224071692bf82c43a406127925240cba0c8354c4c9b7fdbafa525ea700302047c435bb500663064023017850a5a3fe1aeb44124234ff76f441d9aacadfa5075cdc2486226b2c0b0d9a39fe3212667d93bed7686cfb82cd507b802307bf6fd53b7ade58a1864d104db5e050463b177cb2d0883190a2d4d9103c062a6ab9cbdc60164a1984b8106ac9c2544560302047c435bb50067306502307610be5c2bde37a883b4657e99ca7ddc047dc254e721c941ea90c08179eff678c3be15454d24075de5b7075b1348378a023100f6220872b4f2ec7e986a5ca5258603b8cbb424d64e54e9a4374acc4977f3d6e3f39cbdc2a197963156f7e20790d5c8390302047c435bb500663064023028ff7a06e07a5fcc6ce3739d5a02240ceaa2ca7676815f46af0eb4535ff4e22510531fbf0bc0d39d8421da3c4a8a0d6502303f362b59a202c09c7fa2a2826b9c6333c5d8d2f5823814f20b0093c1c8d6975634ac7264f13be68adab9790aaaf14c210302047c435bb500673065023100f9f8c9f030cbf25a0a94c0e0f08d76d85d4fcc3d05a8fa861e1e6ba63d2ca590c31abe07a24c344f5031365f39a97a58023012af9ab140f0c2dc95ccf4f0942461174ea5bc13727e6d096a272040b514082171d78e0a9f4a2db87a7fd2aac3d630350302047c435bb500673065023100bd0c7c15fee4ccbd8a601b6c565d7bf24390a35bddc7e92ddfe82e3d9d8f6a67f12b149c800e5af8b9c4d6f20568bedc02304266b48332ab085da5018d44c76b9a25cdd84b94a60e70b697331b56ca46802a6dbec59d72b53aaf5b307d3a58e2c51f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100efe43b121c414cea9779a7455d691fc561d176338ef1ff89cd24da2d73d4d2d56511ea77f7517f90b3a21e20f0b63696023100f3dd224c9cde23380ca1022b0bb9886b6cf8090b1dee13a3871a2bc31bc8b553b60fc7cf4f6f2bac2bdb6361bb0c73b40302047c435bb50066306402300c888d43af6a84474f65645417f95b2dad86f016f5dc7e6042773c778b540b7ce5541484eebcd0fa82e7ccc3dfa9e7180230461dac2325030d1d320131e3b88ba747c913c951b3b421a8eac3c1dafebe3aabc26cbfe61b8b17da4c1d74643491559e0302047c435bb50067306502306da90a7c91f0823a45b986f02ab6ec9237f3b140f0b16a4d15c6b6052ed131ff7ede3e2de6bfc672d210d837c2a5366e023100babe245007de14c000b8b7dde677e3a3ac3f315e8c59b9f7a0073a417b3aca532dbae3dd5318a22c7762cb96daa931ac0302047c435bb50067306502306db557a6acade9fad437006b415e46022c5551c9078f4aabf64006e7814782b7812f9fa1c36a668fcf63c6b32aad7c3502310083c5d78aad704ad895e912229944852fb23be08bc094b00b986cea9367e0587934b1e59d05da5bee7d506dbcb1a8db7e0302047c435bb500673065023100c8529c554e182d144cc0c381e53a2ae6eef8ba2e0ea07237b8fdb921ce2599f67ed3b6476ccccdf86956eb8a07e744dd023015d8edfd10cebe47d19eb8e599160a04641c1f9ef7686c56dbaec75001bfce242168f71dad4b3bd92beba380b477417b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f1d138e7435a74679e5e259d3071236d196b7eaef2132a573da5f26562d1849e18e82909fc3b0c449b7af85fed2d1d33023100c567bf8dd9cb3db21dfe272d3b1420c14e6fc88918b14589fa56ae7d35569932e8b180c5e3096a25fbe14e5ec736dd4b0302047c435bb50066306402301d0417f95ceea216ec7f69ee8c09ba1dea90cbcbe6856d2e36899fb68efe1a1e86a5ac2d00afaadf0ba92aa0e1e6027702306a1b0ac1f73072050898b401a0918aa220885ce612378de0f5ccf1090169ad276d6c205c21728c104ccae4c3bd96d0540302047c435bb500673065023017fea52846e2cc9e95cc451e8d4a52a808ed1722e1b6736107b99b2af6febeabecdab52e29e4f2b58ba84d2c34afabdf023100ebb6526dc132093198cace21c2c45e683b749602546a4d286e5891146d63294f00f12dfb1e6c402955f341aba1454c820302047c435bb500673065023035635d66c5bf8fccdb5f962cbc451941839e14a88a90838d5c87d4ea0d200f933e8530a8c6d169b53191bd48f18e8786023100afb2273277a508040cd56a617c4e235f605084ac2334ed6bd1d89690e56f961da6f51f9f764cc5522fed2198d773e5650302047c435bb500663064023047f6bee46418718f19fb5e93fde53a00ef69ccb0c1a782c762b6def0b77ce3d023ef9bf72f75d16814e88685f11eb05a0230553bc6c1117b9c85a254156cf54cd50a7e65c916e8b5cf1ff09533bbb9cde49dcda44399842115ad15aa43c2348632090302047c435bb50067306502306560802215e9bb7b0b325405731aa71b26949bc6616cc2eea564ae518c00524e8873df44db00511569386c0dcc71fe4e023100ea67e5d0faf7b9ab96adab5fe2d376a438efd68d11d0e240090e7d08e49f7339b5502201c8bb99dfcd0b7ce9691246be0302047c435bb500683066023100fa6a099d8659ccd1dfe5c825c38163c52c88213948d3e278e07656c8073f7807ffcaf6e3e1adfaf0e82ddf690bc01cc8023100fd660ff5c6680b611b6ab63d9d4c943d55a5dde6c9ff2605e1a211a64febc529909e87ec9b4995c215dabc53596ea3940302047c435bb500683066023100e6768a77a260d57ec663a9c6111426c56387e5dc87c063f484291447ba1713b2ebd6534e5fed56e837242ce9831b71b7023100c2e7bb2cc9fbc57003d4d768f425d079f4a9110017fae19e35008b2a2e4fd0398b9028f71bedb627ebe77c34baaa3f8d0302047c435bb5006630640230246993ed377ac0bae49ee6e96d1ff5773f24404588a4c9c333fea54ec4a5dc6e3fc868a4fa47d510f282294793a9f93e02303d9235a5e492dca099458a090c62e3ef5fdb8729ca97b2e16e8f46d5cc6f4f54bc0d351cc7a6a221d937bf828ad6027d0302047c435bb50067306502307b28daaab7f544c26f89f92149fd80ea7e57ba5df509f44481e1710ce62fcf7a3072954ee6439a4bd7d2d9db3132c51a023100bc9d1a0db109abcf1270b94d91b657302c8dd6fbddbc79bd5c57a6c50fc7f929cf8abb257c4d0194262b629d059866f60302047c435bb500683066023100d5e98c20af83af375675d4976b59c58dc5facfe792d20c15881019d9638df443026a704e2ae744da30168fa8b580ce8e023100f513a1753f3ee99fdbc95cc73aca3b5bd168c93fb30a25317ba35574b5ba62b42c37a29c16a8c354901fa3840459862f0302047c435bb500673065023027ccbbde774a7a4b6ec3f054465ef9acf75a31fad58594e845dd704dee56be418aa783371c3b0278568304ed11ca8ab1023100a6d7e1d0f16dadc91bdb9d883c60380b41ddacbe560a77b658df106b6b2ef41d8a680b65b2f30060fa9338f327c4f8e70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d638a8eab47ce2591ebe3489dc646fdd42a7737b12fa44337051b487f708c17c290286e457094d4b974a0f1bee1b59fe0230704d3c99ab99be49bb8aad046b3cc18511de7f194bc1158b9f84b02de97c9b362bdd03059203b9b1e8568633110406410302047c435bb5006630640230530d7ef45d57f22a2f671085d9cebb92396e6557b29412669b78f1d27f21e517c86e88581a32f15bcd20d353ad4de03702303c4309321c9e82410e8cecc22c6d3e584ae4d933d25746b903e853cb9db947267919980895ccff1469ee09175018f24f0302047c435bb5006830660231009149e031c6966e2f763df9aa08d20979c52aff65e1a33ada0ba782f179a34e907cdac56549663fffd36955ebe9f54f67023100d605aa9f02621d0c0289731126e2060e334a6bd89be9fe6a53e3697efce63e4d0321acbe012fc5cfb433eedf5eedcfdd0302047c435bb50066306402302bdad0c1728c0227227451f56a6aa282013dc55830c4cc705156eb26b8a2edbbde1bc04822dd886033be95702e1b9131023041641d0fe0961c73877118f0b83fc4b4a60dfaa382749730d98f6b2a40be48166c143e9fb5b0a060f33fd4a57c03d3dd0302047c435bb50067306502307b9b6bcbc3489bd6dc7e26d00bb45e7cb08c0f12dbb786c0fdbb49233bb9944e2ee655416f4837f30f0ed108e825795c023100ccb60d437e466d830d544505a177915b5c178d3a742ae9c985f9427a7f1090a7b1f1f10e1684f696336cc486ceb9db9b0302047c435bb500663064023067c09e1971457575e45fc8564769fced3cad7ab3630f6ae4c2886c7d788682b0e13fc446b8c20af505dfae94fd05eb010230746e6f0e22aa9bd96c8aa51ae5fd2827d61c976c7c8271ba8979c653753ecbe361ad85f75480a99a68fe9c9f779c74ed0302047c435bb500683066023100a1fb19d8096f2641a2a8bf2a830400dcb5d2beaf6a243522ad2506b66f95a0f6aa41d615beac8ddafb362ef8a9767201023100873da119bcfd70a77a7d0c1ea4ba1c536b32fe47f78346698c453c3f04c339c5751848caa85139472434d453c20d42440302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230117e176d10a252fb3d5751c9634630570ab796a03069694448b817f275ec1eaaf598458bb0044c55a163c6f4201181b302303ab193a9fa024c9d51fc2ed672772349ba5bdc63ebc7d77cfec5fc9da60370b37dc67241990b84b46673abc9912a4d890302047c435bb5006730650230103fec2c810cecd4747d61614e155294a1c67a8bb320ed156e6e3c9cc4a895f424ab82b480e06c17c15860bccf1d9aa0023100dceac55992351517093674fc54af6c58c3076a687158a9da3ad5ec8e00e022d0aae8175ce9e4ba370c56850cd70be5110302047c435bb50067306502306edf72af55ad4e81a8f1e26840449b46e2992ce4a51118e48034dfbd832cc77eb8387ee4b9c5ac486c054c5738516ed5023100f55bcc6d29435e5c58bc9242204f04a0698bde0ee2c60408507901b55e029b94db554f84594cdc6c0cb8156ce422c2a40302047c435bb50067306502305487c189431fcbd1dcbdfad839ac08cafefbe30ba36bb0447f98ab57db112dcb0e293f37747daa832bacbac8ded166d0023100a09613927a6f18043594c842dd3c0d768ac69085f949914e88d91d739ab1c0f8b9334efd5b2486d23fa7b126cb173ba90302047c435bb500673065023100e5ac7be967c990b82f1b6b14784bd4420a5e6508687d36595785fe97b2fe40c22bff6326dffa75691891439998dd6a8b0230572c5d9f3db004f4f105f44282be0377d8eb3c0a729b2fc7d45a68503373a286e3776b09efe6cdb9e5c365f456c2fb140302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307fa816632187fc238b8d4919a7bb9a6cb09582a175d860abb9ac6a20710e1d788c73b30d24df42a9a3c05d675ac7f82602300da8b2d09b25a3d3c2b12876dd32d03a64a2d14d4427498bf30d4c7bc942bc8838cdf3036484f868fa1e166def0e7fa50302047c435bb500673065023100edaf6b41c7759dcd0c8bf871b979d98f47b5b5086d22eab6572248ba1ad2916315e2431dd470082ce19a124d95ee322b02304460970a96e7ee4af08c1f74b59a8c6bca24e9e65530a9946fad45fef601035973a4339c184311a85371ca2ebe32d1650302047c435bb50066306402302b1f5f087b895c8d48101fe52035d5b7b00a26ad914c61b83a581772575159e93da36f94ab58161f15b82b2c42ccb137023047c4d997a45e85284618b0e4adbb933eda71d66f733c6e1b4ed4218f8cf4193b23c642ff29e566034c8e2a00e82e37d80302047c435bb500663064023072cf7c89e988fd308528feaa1c0c783efef48db5cd7a43b9e0d3a7810c3938235edc9d418109a3c81a5fbd06d6498d3c02300cfe251caafed5bd4ef490ef9504684910f315531673fd5e224f1ff436085ecfe2df1270d1e393a51aa0f6de53bc52100302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310093acd3ee0f64aec58e1edc53dd0c62231a9bf56804ed44544dddb57854d0ea50d84b431c30cb5379ea59aa37505dfa7602310086398ed52a224d6d12dfaf10dc7cb2202de066ebf995a219387aa60f4096995c03b2b2dcd94b07d44a7009b97713bfff0302047c435bb50067306502303ba18d7bef7ede1ba13c3c588486df2f488f4c9647a742b53ccd45edb447efbbfdc602e0a55cb20cc75a1b505b0e6f83023100c454292039fa7812a67fced812de2ba9a4877ba88ace7a2eca0ac53da5b66d7f8f9ef80eac93a27511b9eb01a8a1f0d20302047c435bb5006730650230513b58a23eb423c67547c062bf1e938dde7902d960e451553ad0aaa97145c869d077e21d3d8fd1e6b2240a0c7e52737c023100b699c923bdcff3dedcda0a622a395b3a99f058c902963bbccaee73606d0e3d73eada14ca3e7ffb7d2e86755b56423abb0302047c435bb500673065023100ab3987cdf868da162c84302204c9c6037cf3a8be36f10d04b1878ecc4802526deff825d4459d44da2ee93dc953770bad02300a506fed6ed4b90496be030f848bbf69c6c8d98f5af68dadfda20c6e16ea28ccc60085803d44fd23de7baabf11783e660302047c435bb500683066023100a5984ef4094c15ced9656ad55ca77e41330603dbfb6ca734c6207f839993948903515ff6cff381eabf588f295065bdcf023100c5301cc4c54192d9c2d7512cd15e92b92db9b6d5bdc3e6b2cccb1799af4ad08830b892286d6a7829fa89474955440d780302047c435bb500673065023100f03603d240608271951fd83b72a5ce9f132180001e129f9dc934698be5bb9d7c04f899a6e10b9aee3c7231a87fd24fe102306836c76631263ba3a4c2cfa25c1a254a2b666efd433d7bbb1a85dedac8df6d621071e6260d6122a6e61dc74d866086e80302047c435bb500673065023100869b2339c9482e5c5b1d8dd882c3052f3bf2e99e25810c36894f3c3a88cb767cbe83b556082c01bac532cd520f431159023058f85f36d953bb1b4e6c3afffeb9c92d26bf595f189fcaa7c5dc8290b06457dfde1db4d547692de27a89cea1d265a7da0302047c435bb500673065023100b1ec893b6779a9e0ed5c5c65dc8a942ef0dc705d9e661c3bada7778b5d7bc49b2a12af1ee2a8fcac585b4b6d2ccf7f940230524a96d890e6ac17bc2d72cd42f6638c4fd8c33c4e67556764e5e9aea388a688620e324810e71044e7ed733dc3c0b7740302047c435bb500683066023100c2c254f13cd3b608d61a019c3d4928ff90a25f7fac3fd2ced3aa7b87125d2bb2661989b1b71d2b6b2e313c444aa5cd39023100bbff944d262512035dbbaa253db5309e6f2609045f0d775815295f7bfd2c69e0bb4e2c0ec3ea12147a9c2412f08609ca0302047c435bb500683066023100e8fbe1afc2ab19ad5ae19aaa67abf3c7dd64681557905fcd7a58dfb91b51ebaacc1d951ee55506d58defb40470cfb854023100e67473cb17c1d078adf8b2c506ecef119cdc56417d58a0a1763d5af23a78ebaa4f6f2ac22caeeaa57e34881dafd81eb50302047c435bb500673065023100edafde6f05a3727f40812dc6eb855232ffa5e8a9e7d54dd9db092b07a4c5e0aa86332d44c54ac1678fd7e19fc7b5016b023053211cdf57f81e05710c31416e781bac0745b81f7299474cab92b294e6e00c9d4c0b90adb44a08aa4af2de3a6047a49b0302047c435bb500673065023071ab67f0bc63237734f987928e2767e2f1ee12dc3aac1c522f920d7d17cfc62aecc36b8e0003853a19d282dff19c59b5023100a21e049a16af6f4fa9e0a4d3c80b3ba1f7ae864b15d392de7b70f2fb068e792f9a5dc4dc8444b83147692b650fe52e840302047c435bb500683066023100ccf1657535eb8bf43b51a7b11a33c3f3e43c2daaee71e8a99c5156a025eaeea0e3bbcf7d927ebee55cb739e0bdfb3f70023100d481d437b4554733c4955e181255448985bd25631c996255cc58186bb40a7d3e25ce09e7dd5f3a7ac2303ba9fc4dc5db0302047c435bb500683066023100cd6254901b882f838db5d25da9494a48ea393995b8ca2f128b5d35a36e0f3ca139cd55b499c5e9038f74c1b8afff5a70023100da6fed9c8b76df02ee2637854483aab898da2a04b13bb354dd6bb0766abfa7ff44c2a6109534fd1575db8e993bc3f5230302047c435bb500673065023075575b610c6ad99f5d044044dd28a304b5457235cee68a2db9878bf2be572c914ddc2b47d05b904cbe73691039699c55023100d8bcaf1a0bfd90f38c3121c5407127e272a87418423080d59148ce90a1a17036bece251f883665737115ea7fb277a5cf0302047c435bb5006630640230125dc9005961131de5921967dc45be70760e8361ef2e7ed912a4340fc90fb03dc0af60e28755d7c7c3d4d4dc041cdcf502303fedbec571043faa3c6365530d8b1ae029b1155f43a58a07348a40346b636b3fc66380885fb9cf953b0ccede9b4859780302047c435bb5006730650231009145e502aad2e1007975b7ef524848c91262a4f00788e2a07fd0cb4ca6e8ee131ee9fb1fe7058398a290367e91500b9e02301a250b83426f8b911817f00ee092463a7c575a61179d3ad12307f2d229b04c19de1c15d10b641ae2c095d4ab155f02df0302047c435bb50066306402303bb64ff2e6d863330b0617b56d055a417a869af8e1b3ba5b163143938e3d6e839008218c36ebc44b4cea1e7ded833a3602301bdaf1dd70b5c81765ff641d256c58c2ffb93495a8f154eb4076ff3d47350554cf7178da94f65b0eb124ccd1a425cf460302047c435bb5006630640230082cfee6917352086ac614c876060a544894ecea963d1fe6d8bbf882a25f1a0710a295661a1a80b3e75f5bf918ad7649023010c97b1c946a17a57d65fd1f815bd91e55745ad88f0da50efd252e2d77eebe357573d386a0808ff5d64976f085d3d29c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023066e04804144d55fe899048d2269b380f414b7448cedaae1f4fe1823bebe74cca77dd193fa19ab23d2357b372f2fcdf750231009422ba8c7cd6f82f9cfcc043c3a22a6944580787a3caf8d18085cb5ab8b20df84b383932c9b7dcc8827c7c0388f14cd90302047c435bb500683066023100a51b2fdf13f37f0c6394db7742825518f8e6f0b94cb67f03427d4b633b34df6f1d083f9f82d915aa7d6ed23982885827023100b2a74561a541ff2dd746f3921463ef577a541987164a2765da23398ca51fbd103b7d30f43015e13306a3f3d93515abcf0302047c435bb5006730650230110c07c48457617bcf560bd2fd78730ee788690aa6c451475b7544c0cc65bc48dd5b162fbf1b242cc7032a7e7932c7f60231009ac19e1ed7c343109e1c1dad358d1f0888adc7162921170b136dbf25ee793a90f8ef1298c378b634b307201aeef83f590302047c435bb500663064023052e8a2c081e49d30564d31821f62a2a531c89a19310aec963c66528ba0723278b64eadf80fa6483751daccc13494a5f902303699c86257252f3f1ef766e453bc3fad31fc0846023d1dab3056b18f63f328d74d134e73343ddc164d2ce3752a23800d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300c66d50b84a3fe6f046c574281ad956e06f6fe1a4cec43b8b8bbddc53eef885237d68a2a3d91fad38d46031df05b5d81023100e5f47c61182849a0f199e57710ff3db4ee1ac4f61b2b9455bfbc6a8e0334134454a1f759bd48646e1e10c36e5929896a0302047c435bb500673065023100f0536c8fdcd52f8e1fc23706f92db75cb5d1112f6afb9f9fd48c5dd3abcb7693be354c17c6a6a881e1a387648c5601cc023022f1858554b3b3f64efbe86f297a91a1a439d9ada6e972b6e399fbf084d2e1de4bbec80d920f33efc2579c5f8df03b4e0302047c435bb5006730650231009c8cfe90a4af33b3bc2507283f541f82fa9a25193fa5aa9dc87478b2211ad9607f6596cfcdb4dd8e8b72a3f8f0334ec902306c81e87bf82cbab07c7386bd151d34ffb70840b749923cb4c67eb1c6006436147d9463bb18af595ff6965d0d6c9baf810302047c435bb50066306402301767cf60a4d8ce2021874eecc6ba62195d45f3bee744efe6f5a1c5d640e19bf9dfc03a08c61672b2585a45f09751266202301472589182605d14c61a5830876813948cb1a1f5927f5675be9eec0034403baf524772a199613e62a8833bb2edf1ff2e0302047c435bb5006630640230366d836b6f28188568670c66e4b061eaf18d9214d27f2cd230ba2e383a674c9b8d31688e0aec1a2e357a332a8a61f04302307359fdbe03eadb4623a1cb2a53bd76398cb782ae1bcaeed1c708d3d769bbaff5ccd3085d63f3051665ca8e941e0233ef0302047c435bb500673065023100a9a86f1dc99a89469b9cae0cdf5cde6b808e69fa5717d29a725efebe52c73af79127d9010817a7c26065f2be3283ab2302305642e78340dda5ea3c8267f35ebb63b513b67ac1c5b1dcdfc50f3bcd6f2d163170b8d1d49818611870ee936e90f805950302047c435bb500683066023100df5db69e90fd5e9de0b73740a827db45c53a7cc9323afa7849ba2bf74d653dd1e074283449154cbeb673c29d0ca75f28023100a04482a43e62ecc699bfd0e141dd49c90465cb00bf8d69e8da6fe38e3110e9d533974154c640b96cb53ab14ef9bc03ae0302047c435bb500683066023100dcb51bf20b9eb9e18afa10ce864af83a09b6ebc0af55eec7f0cabe1c5f213cd977f4449fe78f95b96400fbdb03c976410231008edb543154e340d39eb0343307ef635fa5eecb2e7deb1ba548b2983234b580dbab24cd3bc61f0da3f35ba1b8a2d9f15e0302047c435bb500683066023100f2713fa9b35c7e2c399ad30d7310d7eb06c9e65b007ae80e238ecc84ae83fd81d91c46426ee2ae7ecaca4f7d661a05d4023100ad698277ad71f2584f3d0c7590e09c2f0afb8616c1f2a48266d7e0abbd002c767f2f7723110b7d19fc3e0fc0aac765040302047c435bb500673065023100b6ba7c7a7f11f2ec60c3e08235bfb9acedf0ef5289fd8b1dde61dfc5501d40db9e9454435af8a198e1b414c732c2cd9c02302b9c8d45e206ff6c994ecdbed90c085410ca7a1810d3a2e334e2795754ed7e16e55cef20179dc37fa866f0db6f1beb5d0302047c435bb500673065023005dcd2e379f9d5b7aa1ee8508332d05ef10782e1624ecc6dc452873dbf0fb7f808ef6c01e84d48cec5d22f3f9507ff130231009c7fda3fc07ad247cd5de97a06416278228a3a5cfb9de047407fd5f18096002aeca708a5ac8e2962b48a19e0bf95a7770302047c435bb500663064023040b847bc3f60df0921cda4c511ec99bef6a70ba4ef00c985789ab93b0f172281f8ec3aec06cc58c3057141f7bba1d57002306b6072cf91db5a00e0342dc49956a443f3774ec15baea3e653143b2a3699b632e7dc48e20389d2f59d00b64a97244b010302047c435bb500673065023100c9fb101c5740f8f744a74fca1be88e92c4c8ae88ea7e4213eadfac0e7af8bd29df8bf3a5da39e7d30562e5c0acad9a33023019f26fc977cc28f8788b959c747e53348996b24feff32a302eecda597a198a56761a1d102e36de6fd488cbcb4f01a04b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100cb52687446e6b4eba2b73c9d7fd50ca89fbda08e67e40280c8890326815edd92b7134d5223a6d838a8f6cb27ef84dec9023100c338823bb427e68f0789bb1712dd901da6ad4d78ec19daba13f9ca04f6ad79703a19c0188e85eecf0fe5478121d719b50302047c435bb500673065023041eea8b1c6fc95f2c004e91a2cc6bbfcb16ae94d5a73a640cdfafdc7b848ff5c8aacc4e3758f8cdcabf6c7e4058eeb3a023100cf499f68cf8e664019b62284bf72034e346867325f55615a84706355755d62262788fc77a211906d17dcb3f579381b500302047c435bb500663064023077ca155b54967dd433a157c471be02a7d906394723d7a972aa53be0b025ddb848a69c2c45fd5cb159db4e5697e741c9d02304efeb84073b9ed4c842145ca687882053bc7a5c3cec1e14ddf77bf853ff22b4db54b43b04f77451c9e56a8901db118ce0302047c435bb500683066023100d4257c3900996106b4f15e0c1d2b3fba5eb01245ca961890f9d5d97c4cbc18b1a35ba89ae34de38efbcad324ff46ebbf023100e407dcf090a8b2783e5b0591ed146340cf26a19d178542c6eee1f18ef9386234f7d7d760afb54a058a4747f3b16d556f0302047c435bb500673065023100beeb873537001c76972d4af0a308903f930eb6af6f28fddb3027f2bdf0fd7285510274b8f7986089e3e6fb773a5d1d6202305887e505d49320c1ac2cde2600ffd39c1a2c1f926cd6a39af4f654256d05cdb6e29e1639793d6bc3bfc55ae5b92ffa650302047c435bb50067306502301c14f4113f299558c30d1b1aeda5ab2f646858abd13defca92c9a1f29ac9fc20d7fcd37dcb3faed42babdc2058ddae39023100c3e6e2e0a3b5dbc54dde045905d3f169f2119299a7bde07ff807c7cc3162155ab0c048cd0b298d03ef6d94543856e4900302047c435bb500673065023100d8b99d8508b8a5970fcf7a73538a4c550cd751c3cce379b807e033cb8bbee410ea294a0e6beded04a8b4b70bccba57c70230199ba7a11cee52759f0d424d767586091f72c8ad46a1b1046664510d594ade835150aa6be3c252b894c1a4cc04715e980302047c435bb500663064023036863d603877f53b9aeb800577cef9e4bd012ddb1edddc6d64f7375b9b069369b24ed0c22af2b27389bdbce94fed947602302202339d789f166d444cb5acc42484c5489e1e9be8486fca82b8351d50fec8845dcd4887e9a0f31cd23afc67bba1a8600302047c435bb50067306502305f1828630423af300c9401bd9ec1e5818d910ce0ae58cdc05bf8d413d7f4877d2d969a77bf734ae44477a55472ca118f0231008df1dbb16c08b7a024f1a48a579df8e7f3e67a0776facbd0c60985212fe8244464279fcc1a9dc9e21e078bd5fff981920302047c435bb500663064023073c4a67ff816e9790921c3c0c4e2830d9b356be46cad6333e424a739bf67dacc4213f4f461a161efbbf99c0574b74e7a02300cc5ba2e37573d5f4c859bd6bf173d52ef09c8e183baadab8eefe7bb725d681d22684b88b79686eddc35e3d7786749af0302047c435bb5006630640230570c0c502621c68b2df5e9c928077f89571cb9e4abc999e176c712a6e494e4a9529640fd939b3186d654517562ab532c02307e92b2b079aaa84caa2bbcc76a4c145fb3632b0df18284f0d163be2e3f01a4216ba4fe23c851b8fe678b9fe2a29e3f170302047c435bb500683066023100c0cd9fbe8b7d74564ef550e021771d957e4af6165610fb62c6d6a2b0310f5f1964b4a818564e202243c859b8cdc899e00231009887b173dd7c65cebf0e125effa32c65a4cc6c4721450a92e7d746305cb56e068e2039f088a24073153a68a7d39e545f0302047c435bb500683066023100e9db5ab5ee6933e804834ca0612ab771b49b835b6483ac928a881ab823eeea8ce3ccca12d0d4ebd05dec12bc0107f768023100b4f29af159b8852ab8257e591e8b9789fa1265e22145bc20f6bfb19ec0112be5210c237ebcd4711f175e68ea436dc7200302047c435bb50066306402302ce6e0caa9f5b5ef7c6739113db373c07e96757a8f76f0de740736144ae2e5d8cc511f2bb6d90d32c33823eada09692b02303ced271143574022e6fe25d779a75fe4043339f8c7dae996aabd1cc2a831999d1acc2439148da3ee05223ad209bd3fd80302047c435bb500683066023100b134d1463b6c3483c88af79b7c283620fc0e7b6b159e8f6bc40793cd0a4763e163dba3b59f9d90ba1997c574fefd319f023100de45d3c1952b4b704611cf13a89d589dab3e23e25ceddffa9985202c6b95d8eac874d014e0a945a3678c18c44b6881230302047c435bb500683066023100c050df46fc60567020c47ba040584f912cba9e943088cd1cc5c8fc8d2ed9a318d40ae0aab52b56409cd6a5f9a4cd9fa90231008f42816315f88911c2d78a06e81b9134298f840e4cdb5432676c8b038ceb42e4ea627dc4b51acdffd0f6a03a791b5e840302047c435bb500683066023100b7f8f945d06eb4783e034e17786ce2c263a6f35da2e453e10f13bff5f01bde29d82f514d75705fb331af08b64a08f135023100b192d23aa900f628db45c6bac91bf6186f53b325dde9145f3a396db04b99e293c2a4ff6c108e5b66034241c88ae8759a0302047c435bb500663064023052078175519210278cee9c623149dbabdd11fffb577eed73b5303b4e48c095bd2c3993b0ea5c8a704de1f60019a3d24a02303b04b1339a1522af2284830355b381c0410285d390223c6b4e931e479d73263dccac1385e91f5d09327d2daad24ab7e60302047c435bb500683066023100a48dfdfaff35c2b9cd71563fee5da90c101264b61174ab7a4ab7800601c5a88ac9a64c92050ea0a017849c3f7482df0a023100a357b93486f4628e0b9ce7aef114faebb265d5d0094a5019af09f8d66bf38664e24eab1409b04a43b3de37ee5467c2f60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023040a6afcb23582d0f8d1c180e0faa073fe88c1bee9b00de7d18d6d4773646100948c3e62ec51339df198561749c343abf02310083efe0f6d33b00c1f6e23ac2d0744e7573318ee19216d92ec35226f09c2bfefcc2b3487681ca17d7789829c65396e8bd0302047c435bb500683066023100aead689f875e9f5f9c2d9186a61b0ce1fa1d9375738476d20d8095a8d9026e63dbbce16036bdb1c7df263dff6690fae4023100b614562bf51a700c13f4319448e5b3921f98c8d0033b5fbf71b2f4514c96c87d0d4ef9e75f7f7b1d3ef8f83491d61c420302047c435bb500663064023002047a6fa20c1acbd198dfca5c7cb916321156abf99915a8930542d05faeac530e534b854fcba1a99ab7a4922f7c01e1023067ceb7bcbe6a7c0c2e343be30914bfe7e0d1df59d51f8d23463538e524a9280544b98a91b02112417a9bc98848a520ec0302047c435bb500673065023100c28383980bf16831322d1a5725197be642ceb88322f9f65c9ce3b91bcf304b72905563ae011951588e502eade4b859d402305fd8b8a36df81c4a0e995f9c4863a85500a4c6853e38229915b44c940b90aca6a4e1b2af1f359e64844d758c99fc77a10302047c435bb500673065023100a81f8303ad13c9abe01a472a277d84e77acde2656cd967827c89aeb08c7fcca0a8274d87fe54554c9d32d0aafd583fc802307d83d656e8d29e9abda51848280b1c84bc4ba736c4929bdba8cb4a8abd49848b9d974b19012268c0e4683e9fbea0b8420302047c435bb50067306502307aebfee1c1c026bc50ebfd95ceacee947b32191b7f9f7edbdc1da2cc83c8e231ce1bc0f6417077ac02df49da0272c6d00231008257d70033b3121894b705c0da95c038bd4e51865b8ea77b806bd2441c5e566fff0156f01be045fff7ae5f5d6f31af1c0302047c435bb500663064023007b6bc2124c2a009c1a6efd8b4d86bea73088711272602287a388417644f4021a634b01ba6b1d2112b8a81ec64d8fc100230416dc19cb958bcb34b8a71bcb22c9532debd8377871b3501d7d61d481d99534f8757f1821b7c758ff031cf9574c10d7c0302047c435bb5006830660231008e3c00debd06a1ef69e646fd10114d7dbcf9d9b1a9025c45d481edad9d617adf2be71eaae4b0f12a99153fd03a870d47023100e1c965ad95ca4772dbffa58c1c0885b039b31e56a896979e265de604f90c98f13f69d9ad4765331ad466baf9cdb3723b0302047c435bb50067306502304a7ea129b12d8ea01b099b073cc89f77642c058e7543e2eba1230a9d485c6de8dc26afb5b182de86a64f2dda22f01160023100f2c04d3e84b65a0b5109bc687e8926379eb2ea3be8aefae43b7de4e7d9a97f0f7d6d35c818859bad40c88a4ecde83a0c0302047c435bb5006730650230775bd2c4b5ca948a1aa699b50b3d0e47aed2bffa2c67731b7878a05c5be1faa57030ab7eb25c61d3b3b03008a3181b90023100a6b65901081c09a48ff3ebd41429298e9cbd3cdb725f5de29f74a1cfa1e2f2130fef408ea31441298dcbe6a5d860c44d0302047c435bb500673065023100965e1d5560e63cf6dbd24ad2b3e25c2e957e24fa389682729773cc64e21e3606bfe475f541b6ddc7e522bddffccfc71e02304c5bb0b3786470e0a2d3915c2ac3aa2a0b8580c337875ec3982cd0939ca40a76e1d33b8e92441412d7e5702c9233a5880302047c435bb500673065023050efffe023609e472b08ee42887286037e67b8e0c04835457d0806bfac3b7126b72d495d369f69555d55ea0e3a058468023100b22ae88ce10945926b16793f954f8389fb204dbfa0f2a9cec194d2c6e68dd4b73b7a45d550480f3c968788ec5c8f25510302047c435bb500673065023100cf5ad54a83d15901b796a47137d8103b413e936fee5d634f69c9527ba9cf6fbe482db520eb7be32888709c63c5a9ffa702302d2984eb9178a50e522756a667493ca4e298fcbe6dbf11a9eb959e26de4d62d7a05bf69275b6c830320f5c28c14471bf0302047c435bb500683066023100f6855b739dc6f87b597ee623d0fe3ab235b60e7fa48d9999bfb4f9ba3d81919f762090e93cb65121e335f1ee0284a267023100e4e1219b926651d1a08b813561d3fb92e362fb7a1dc5a9fed58d3474229a7ee0726131d98d639b53eb93147501cc85450302047c435bb5006730650231009d89a35abe849762aa9c0c9baa72972357dc0ccf05a9596e9916be5d1186fb06c017f9865e8c9baabf96db5f5030ab6b02300fe206dff0d6b0cac6d8bf385a514b802769f5e20980ed7f8b84f36c4c1b1e02dbe504c276c04f376c500b775734eb2d0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb50066306402303589fd0988d8763debff167b79724786bc783a1f868eaeb6543e2250b0df3c13731073f2a6a0bf81941c04854efe5e4e0230526a5b14c28e3ef09cafa191416925be2bcefd717fd63f4a59d756121ef962ece2f559de856b515883f47c88686106bf0302047c435bb50067306502301588b8cd3a0b7d19f855f104ff6068ee7a2966470edf50aa0bed36f43eef328032af8f22fef7da8b992e51e2bf0066a8023100f86bafa9a230cd3b9f0b4de677fb5c46014b0d3e832f8e9d03d7ee94259b99cb0f12a50a20bb2bae874be83fdbb5eb140302047c435bb500663064023026912d2a907a6fbe8fb4dd1f3c2f4535806aae5f9d24318e688727a4cdf00b628868f123195dd1bf3bd984a7515bb0af02304adb21a782a5fbe31556caa2a52271566ffaa0813fe1cf010ebc376ad86805cbf8d69fad9b41127a4683670f862de90d0302047c435bb500683066023100bce44a76f5e922c36826f47158925d7370bf8e9cb3f452c5fca9127c20b6b134426afb6d131a857ea880365306c93163023100bb08a15b2ae936b22b2d4d852bb6e6e1bce83da14b0d7b0dcff8177e02475a5d0e7282c1d20dd9675f1eb49bb9cfe8340302047c435bb500673065023029f37f748d36d50e9f762bfe118219e1a533244b98d5c921ea493e60c52da181dab9731a810a485792e92bd17b97b42e023100f4db6d4815d571a5d5fcff212fae90be2e8895dbb4c61fceeeb1cb966640e843ff2d3f7f1d18f2f5cf455f4f78704bf50302047c435bb500673065023100cb3c87f40902d808eb605d1870721cd2b214caf7092af3bae8f9473598e30ff512fb23da699ad97ced5ed7f52ee965e302304d5172d73db0999f8187aa83c34693adb36e6304444b869036ea37bd8d375dd8b2222fc5b899b1f2d10534a7d49cccf90302047c435bb5006630640230591c274b398dcdba2447b13e49023d8b36c6b639bbbdf95422c603e3aada00951073ce3cf2ee9593ba1fde7b4d94e43c02301f41e23668e579936930c5d8cbc3a568a9ecf30a8bcc73ff9ca7457dc1a023dc6aa3c7cb2ff1a3258a2c77a71c27ec210302047c435bb50066306402303184ca962026d89f46f8334baf8f67ba0d3603a08bb15cd6b3fe8fc2d85b17de87bc4d029ed09f6e7c8a234c3de863ab023019d30a529f1e2c880cb01f70beb1057a62fc290e102083aaa1cb65448238561484d48defdae353dd25ca65522f74d1d70302047c435bb500673065023100adcc2a19b487c03935fd757363cd6a6bc48d7a4c9d05694aa6574f2ea211f107381d853d37eaaf39ed95d2a3d9073ed30230657dc81d5cd7695f55c782111fb95b35db7c9288e68deca13b02aa1ed717a4c1b250355511b1a20fbc09bc0923177dca0302047c435bb500673065023100ae633a2ee1362fac428af754d7824381dcca2b4fb368dab37c5ff7ff9da717333dd6266ecf59909962ad20c9dae30d6c02300f5e785a730b49c41f1ee02b85f8a42945a878e073dd0f9adc2cc65c05c6422f11dd37aaf6a21a33e82f6e1b347c040b0302047c435bb500673065023100c5932fb5d55fc15e0eabce570dfdd4a52063f14deec98a80b71fc9a7ca24c70c7538aea8e304ba8dbd59099b57b17630023036717826e71bfd4fbf83490415ee1894a935a0cf186139db7aa300784f6f9a0df7cfb8676dafd555d05f895b9a6a58440302047c435bb500673065023100fbc07b5456008a6d2fcbc7b60284cd654af1f3217753bf5e498cd8134b838d0440f4551316997dc4c8b03a00212b9aa10230620bcc08a23631c2a3b85178eb596bc228472a57330500e185a92f0d75e14155356a2685c7f8780cab577f02effcadd50302047c435bb5006730650231009e3a6226a89d2ff98ebb3e08fe9284af0b57f3b34b5ceb2d1c237c9ce8ed1b101b737c70f9f9c30247dfb5cef218165802304ebb918e93f098ff1c4e0ff63589279c9003db7be8c5466f0f301d4784a71d1e527440fabd5f48cde2d2013802ba5a8c0302047c435bb500683066023100bcc14cd5a886ca24f178957e3fd8e62e152cc35d9e64302fbd4fe25896f9897e317d8b2f11ad515368fb28b95a4e4d94023100b12c55320d2a4710e063ea045a9bc02f08515a1600502051ab62973b9e4810c73c6bb083476557b24ce731c939fc7ada0302047c435bb500673065023011a30be288591be8158bfc20ce7f9871ef2ede8a1baca8fa9b645f12ab07ff1d2219fc32ccee3c28325d0bb61ab5e9ab023100f6db6d49d013750085c67117b9272c269a4dd6cb392208122b1265643d802dc036cce84b36c41b8d5427956c35289b090302047c435bb50066306402303fda27668ad49a83beff2190ebaa03e1418c82f335079344ee42cdabb257bb721cc3fb05b8274f3cb48bf32c4771e57602302be0675bf47c22bc19f7aaeeaed6af716cc689a16e351bc6d3d9733dd15ebf830a18c8474ba6aee44f25717b23cea3ed0302047c435bb500673065023054974ea8b17eb6c8e852065648bb95115e246bf13de1ae88992b17eb240a594a49359081fb4ddd27d2fa582ddebf0983023100a84e81f83230aad04b62a453583d1c8e0fb364ec3217c0c576e7cf03b7b0138789c0cf1a450e61fc5de43df188ba4b180302047c435bb500683066023100f2701f69e69b3035be5fb3b8470c975ac2cf11a837a9bcad8aac4e7f75f5c0027751e03f4e0d4c6b337d67892ba60f84023100bb1b00d8902c68cacf47f5ddb8bc3ab14d9dc702a9cde8b7c74d0d0e730025ee2ac16cc27dddab5ce0943278708bfb2f0302047c435bb50066306402305101fd897cde83dc04096a037f8e7158da31e20df63a3dbcf751098697f038e49f418883de7b8a77352e10669c6129b7023012cd669a89fc531ecab2c62a11cdd71d7204e74a8ddc524459ba686ef4af3a3f1ea37d3e066ffa953d131d7fac0fb1ec0302047c435bb50067306502304068613a3792179449f33ef331c2d0f12c17c97a777eb1723f41803790793440b8e6f98ab84ed0835aee32011c689d76023100b2c8c36c496c505f28c6d403650b13477c4dd1a1ae76d9ac9e41a3a3c9ce26fd309b2c71f9a4d26b95fc716611be80db0302047c435bb500673065023004e0038c63de820bff7bf89b94ed74a08e656d3c8e9a49cbcc985f1ea2150907c28ef55b3597cd6b516df3de2700816c023100b15ed815881b917d36574495da47980fde972b7352a66dfea4dbd2187b0ce908a800aed18555f5f0cd5c703da2e4fdbe0302047c435bb50067306502302309e91cd162fde99d2581a5d5a5d2ab6c86c72c13caaeccd2810661e7b4c5cccde17a6786a8d363206e6c3cd5f08357023100eeeb6183cd87d4be568839acef60f8ab5ba79deab98f128bcdba33a88f7da705987bf5635900ec068a6e756f765763d40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008033ef80d5a8de7ed444dc267b24014a45d474fea31a61b612ba9ea8699e49d3a56f41a700c93e1e9cab0f8853ccb27102303c3032beea04e8fae152b8b5bd154f86c1c96e97902f137431f0aeda7fa8a6fc66c3cae3444841fbfdc1af2e9cb618180302047c435bb500683066023100fd32ed205ccf37fde574bbeeb144e329dfc0dae5151312f117d5dd87f639175e7a32cf43b5bc1c5f27d715de425ebcb8023100af01b1ce09d2f297916bdf5ec5519a2651820f2dff2beb6614d7099f1ce0cbc2245e0659a77b0c2c3efda46003cc63f80302047c435bb500673065023100c028b023cb92fd523352061b95a94747629019b3d947f7ab597a7bf14160dbd9ee3fc0ff087e0c2f23c7557a16069abd0230441913e3f5226042826697c3f0708dd50936307a9a43a468afa6386660a9f7f21dbeca4c226f4a8f6b742c4a5d9dff810302047c435bb500673065023100ab30a313e08d557edb0534adc3cf705e2c36c48418877430cc48c9e9693198aecb9aeaf0415a1cc41828e1338cfd479302302fcec48de1c9cebad92a2f0c088af08b9a6b956811bcb5f3aaf31a531de0f22c9a379c0b80feed005fdab0f96edee7cd0302047c435bb50067306502304fcfe709a5f85885880a0ce85c17bb683e29dbaa1472e6ef07841be05bc8edad06e6550c5bbaedf870d95f42d206676c023100a09b63078f1c18c9f449e856f2b5eba93bc57beadc363ff1974e9eb6bc4c0fcf4e3b81db6667934fafa31e3656ef042f0302047c435bb500673065023100bfb7e9f9910316e39e790d5f1e9782ab3ecdebb5a7733be606f436269ed9f761cfbb6b12661cb32406711c767945791c02301424a876a216d41b93582d19442f38a26ace40999dc4cf15c33dd4464b45dab970191de6c056a1a98f28f34cc2333f530302047c435bb500683066023100ad60520a9bf14000f7fcca48d233b7642a75644481a6d161eb3be71de32b1cee42f7305e001ac32ca12685b4bf680bcf02310086fc0af53c1a52d51183c9ee995f989590d44c759cd8e9ae86bcd390bba073eb1ddb57fe7096eaec894f59fff803bc2b0302047c435bb50066306402304a5b9c8686a5f5550a22af128a254061955cee37d473fa84c327748302d547a495587b2915691c5541faf24be5046b640230598316d3239c3631fbfc22f11a09b24d1f899aecf26352fa03dbfa6f4b507c409624da174d19866ec68cb7962062900e0302047c435bb500663064023028a5bc9fb3951798cc0f40039162e4d8532c254af00e31511ebd852072a33a9c59e67a34fe3fb4450324a00916c780c902306fe2798393c5d7fd9b211cabe280f46ee6064e9a9508cd8e43ac6ae8087002d914a833011a7ebbe3c1773a5725886f1b0302047c435bb500683066023100fe743e6a9200b4af2f3d782b9c5cc9803180d7028ea4681c9d2e6535c49427c81730a0f053e90195597afa30a13da05a023100e15c8926cda6a7f455e0f6c23946d513574942ffee588bebadbb312f1c1e75baa866d1a1695e07a12db5251711af5a1f0302047c435bb50066306402300819e5991495b190046bdda1cfe5c9d1967a30a51c62d91fb11c5012e33d1d7a9a39d01ea0a8ebf7ad0b25a9313a554002306f0d385874c20fc393fc2aef45325e490975b823575691c6b3526ff5e85734b2eecb66700b0de3ca9231184dc15e270c0302047c435bb500663064023040ebae9c5e2b05d97a0fb5e138726b1a60e2b588715d942d9737df415df069a9b54543a9de3ab91a01ea0821264d7efd02307c475a2a14a29e91636c7f25a1be9f8a4ffcccda68f7beb858051f9bf14a370af15fd27a802c635c079f6fa21f94af920302047c435bb5006830660231008a50a14c6899fbf310331c8340768c94bc22bd92f18b1eb423c9d34fb4b3eabac8a5fabc08102a9ad9507a611f4d1c19023100e96cf4e3190961bc6189376fd11b33c26eea0b735cc3b671e64f968b70cfe22b265e9a0d263b30e0b6f9e749839caed30302047c435bb500683066023100afc5d385ec988bd2322240f96a8f02fec981597ec33c549eed4e0a23a72830a920e521d4032e995e38bddfcf347eeeb7023100945ca9cc9f81c6a7eaac04ea35f2b888dd7abe816c464143055d5d5ce2faaf2baac285fcd146187ae5942642656d62170302047c435bb50068306602310086a0769a15326a44b26fec35f5a67f0e1aac19db3db576d6ef86c14183bcdcf582b81a630e1af4ea6cd98b34cc464611023100934f5a00df5030ad2154c0f80537c17e6e41f729b0270529c4736b31d361721dcb6f9d514b8ad75b9bf78826855156000302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100af35d88337ce3c1ed6b8fdacb82f17da3ab670d8846a6c8903bdf26a974fc44177b3c5d85ce99b24b2477583475090d402304b69d2c639cb19f9e885268738eb1f8d3f181eec2eac347e5570adda17a02d836326dc5e751b23537b5323227a4f49a30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301de25be7325fe0a0cd5b83610dec531e9535bee2891bd476cf8824a877606f93e09ba853e2d3c8815b883ffee2623e1d02306c14e1bc9899e178bd81dea63b8125fb9cd378de5ba94e8aaafa16f2c86356449e4a7b1a5fdc75c7a087b765710a6f660302047c435bb500673065023069bef94be8189a843824f535f3a0f28a12ba0330161e6ebd8ba933c066fb238a21b7bda32303e317bc1da24d88e5fd0002310092caf6e97e98e09e7466ea26dec3f50e11587676cd0838d6a04e7a91a809072b3966d21b08c637ab7c999309ae266f570302047c435bb5006730650231009a6c81dd3fa2d4949ad8d7155f1184126db13371238a487a841573a8d1984eef0fcb588d81780d3fcba8227ff50cfdb602306a88b61debc48fdd37fc57490faa48f52fd791a8003e8cfe8ad0cf30b5fda647ff6c584a05e3eb270a6f04eea2120f240302047c435bb5006630640230717ecd74018f793806aa8937705741a21132f3b5117477bf58a83730b99c7a7e07399de81fdc07f28306a1554b0f1969023000cb51ea026b8b412f199cb0be9599ad4ccbc8ba106844283f933241b9234bc804fb379b22f6868307967be54a9f59580302047c435bb500663064023074dc08851a4d5c878a5fb5ef352b60c8397995a0ffaef0b0c5f5bb35eb6f422e314e196ac21509314429d92b57a4a1e5023007da81fef78782f169a0dfd89fc57d3bf9ff0e29c7fb1a252a477d5d31aed1527e3a49762bddb8953d689e43bcac9eb30302047c435bb5006730650231008821fef785464538cbbe26df280a047cf1c000dc68decd3406a8156d9dd2bdf7b8c5258145bfdddceb4901b511ab6af102303d14818157e513233e8ec6288645459f9cd6949f5e43d5b198c7aad2142c3192fd3c550ca77f4ec995b2f71b1383c6500302047c435bb500673065023065a2273349ade781a577d177d1d5a47327051ebc34f7d8326c9c4c492fb9102fa3364002787a5a5d4d9ea3b2d55f89db023100c7b664665f813efa37699d66d1aea40591b1ffcf267499c1abf3881952ac695440f971d1f86417cd680f646120683e0f0302047c435bb500673065023012e13c6b300524715d21fc5cb34e1e87e153a33cc6320df0e96ac71da1390be31b349bb190380e2c692c4280db8e540d023100c62fb948e549f7b549136018d7ffc3ff5415814ecba9aa463390a4792528ccfe50c55dd87dcefd61902f7c47934b227b0302047c435bb50067306502300375b044e976fbd4a1c13961113764e65e31599a052339704f577f682b761041fa82a81daee65e0b44eb3df590b86255023100f4da1ac91e88bcef8748ad2dc9f921149c9db89aebf27aa21d1c55a244d89edf1b53d0d9c59574be97b2ae6cf960bb7f0302047c435bb50066306402307b832ca7fbb49fc6cf373140b921a59ee1fd66a269e21ade395fec8423eb8242f82b68b06a5023e4d0eed54447e1344f023020f7ad09a2302b396fccdfb478a91215ea9444100e0dfc34f55f35fbc472691ea09cfdbeb1c2e20199cc35a33f7a13620302047c435bb500663064023000e78aa6d83cb0f8cf5bf18f2c1fc616cf4f15aa5ba766073e1b3a433af2133eb9fd140d737e7490b59013acfb9ade7102302df724b66dc6a752143d9a1f54a97eadd063a8b33f65af1a7ddf6e2bf0b2087f96a523c61cc5b4e9bb875313012744d60302047c435bb500663064023068dc72bf150d97c2e6af82ebb45a77864362894550e172c3df9a26adb8bf0168c970be8e1dabca916bb36111a2cda83102303426982b74f72b296a7ea60ea77ff1949421ace7f1564ee134e19b16ff9f666566bbc1e1cde25e62c7f9c3ffc27e0e7e0302047c435bb500683066023100b74ae1876b91339edd5916170f763342bb7d623788eaa5ae28edc0553c0b498bdcc919d9e1ce44e127af42ddb1d54f4e0231009ce668e2ad18fe5c16ffd3235eec74e5d756dfedabc77a2fdb819e987fd088d703c306ce71c8552ebb231f9951f97ed50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230495be9b03c7749268b683147d915d82c06b087485c861472719e7a207ae48541e578d891639249f4264f067e7e7e3dc402307b590580f3fe9df1168a5df403dbb38bfdb99f70e41d0c1c4e83d2c994b2f3a9f34ccdcdb3ba3d1bf72b57043e96f6e30302047c435bb500663064023029f641bf7c0733365a259bbad38e262a23150a2d815a427bd8be642e99ab51f36eca1882940667e04f44ad8dadddee89023064d71f459fe6fb844fea843dbde87e144ac8c2f9cee7a759bafe395a1d77c89467e9ba3a15e6e313fc7b414204786dd10302047c435bb500673065023100b0d9396f3724a030e3f33f63130368102f5b97ba44759b130113b1e44429fa7d35d89f221ac3622f56a53b222e9d7a51023044219e093bb6cc12e1047f8f919e5e0359385424a986a008389782951a03560d37419af19b902eb7f85588517743f1260302047c435bb500683066023100c10f497a4bbac652e265d1faead7513460457a598928a2a4eaac0dd48c0ff25e97de3260518b783c644157931ec73d49023100ff547e40e596ce9e703700034d6d0162fd9880a8aa5d780d49afb678357ba29bc789ea006aae60402d49139f129636c60302047c435bb500673065023100e283e54cef42941104a104297f405ff245323374a327895f387c2e01a4c1dca9905d51bced3404359b39e719bda7ae40023041ea95766e4eebde4d00e5b67d10ccce79b52db77fea503fe38df68f45ac61d064e27e8fda80e4d3dbfa362e783f86390302047c435bb500683066023100dc5fc282dbcb27016222479b15641107ab12e42b2f4f637ff01224dbc69e16eaf20b7af19aead8a42b031b0c85865c68023100cb3dc2ab8cdb5e6a84ef51844f0f58f8f084a77d930e7d0e8f3f406ec7e1b3931cc6ca8e7abac0a533ff09d033913d730302047c435bb50067306502303bf97bff59e1357990cfd0309d6eea65b946691a3ed1e821fa6659dc08b90af425d59dc3c7a64b880c3aac80720681ee023100c4c2c578768b8d035a9f7373a2ff92652e642303240769da63f347b8d3ec3fd1d91c9f99a2a6333305689876ac730d830302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500683066023100c97dd5cd1551d0d654a6c2ab7a359ea9c9a743d9e49def7f93670f21a48eb01ccfa34162a3ce01c192a124eb419f560c023100b046dc40011270dd563393f17794a33ab346b67b7957200ba615865dc29212e12dda54828c927ef4bde3b022263b6e9b0302047c435bb50067306502300453285caebae2e7cd122fd4edffbcc0a63b331c9a007b5d2c3aff8bcbf774853dfbcb853da24ec7199b7b83a01a68ba023100a81a29005b512efeed6855fd1308ece36d70e4e5abacd7243cfb434d05c0b1c980e3b6ea27504103e58408df109518ee0302047c435bb500683066023100c4518dfca2c3abc63a9b7fb2d5345b6c928c8adab79c14b9f7a7f8f5e8486cfea3f6e1a9500ff9703410d24521d6bfb7023100d708eab375b08d27352a9dc05508d0214d9ea7fd1491a8067e5ac342832b558a31de25ce00556e3ea53acfadc6e020900302047c435bb500683066023100d04097af43a48218910df5501fe13297364e61adc5a7651c0148bc90fbe942c76505a57013a53c33a82e0be4ccb1c6ad023100b627188fa0aa3f09b06341cee57853d27ccb282aa47aca7c31950e6186a6d20628221408a569c5092bb6a0421888d0ab0302047c435bb500673065023100ef635e856e63ef0ec4e68d21e5059ee72f0c100e6f4b59603715f90dcb6850fd89cde7e026f3e96c5d12ccac0939357b02300d61ec4793851601148b4664f02e3de32968046fb275f12ddb3842030f45a8cd8ca4f2bff7eef259521c4c4ad4c05aa70302047c435bb50066306402303af0515ba4386c130ba228e49f2b16735267d39124b0fd70e71fe4187c58b5bab1a6f17e231176423480673f6f78ed3002306514d69bee5028e11dfd6772bdef5eb331092740e4c9051763e9810476cb4838c33e937f0d64323512584143de8810290302047c435bb500673065023100dbe7973fe2714b7a7c55a943bf0a23ae73941d4c73d8f66ee3c6430fb7db03ed6ab4701bacd1891db0ac7920e9b70e97023067f278e2381810d4f669ae52c3229b8ebb10ba1ffcbafc5724adec40bfa5ceca7db983055ef0c3606a0fd745115f13b90302047c435bb500673065023100b00dd4e4e4e02fea332c1c42523aadd8c315d8376aa5489906fac3d64617d52ec4b04daaaec4d57667aeac2a2a5dc18f02306677d65735572afa9f22fff0c444f40dfc512b75be8fc80450017d6cb977d266cc6c95bc0b4941c4badeaea1e0b952d90302047c435bb500683066023100e9f6b061119394d1a6dff09b675b3cc6f128f4f43c6481942fc9d03a544edfbc0fc6d206fcdc40f09a976b56db90e226023100cd319fa5212dd15134aab9297c54d15b3e0caf27d635d537a7012c13f642a7908d3e5381c529b2b4750095b70889dddd0302047c435bb50067306502306b749a246e682faa50b3bbed97e009e58e7e8c341d54ae7ff67f8ffa0b25e563258deb88727c5eea36f3bfdf9292ce1c023100f1d0c7500688edd3d3e53142759a288bf7dbc71cba37d82842052b36d59692e835240e7c62aea7b5044991b5e77854c30302047c435bb500673065023063440f760578397a36fb4dff1108be034c726ccf5793dd871629492d7d4aa57d4d49700a43471e62396f1883de447ab7023100d27c1781bc422eba2890b0eb655726af63ad20452edd7543d5c69f3a9054e35baeab13779d284ba0b0e70c5e9ab8c55b0302047c435bb50067306502305e86908d77b05e065f347592161c0cda3adc2ca5c6d8f3befdf07276c186dc7bc495af9757a37760759ebc1ba44a4cd5023100a7d035850fa7a1ce69f1d35ce231f86652e11a1acd4274c8184ae01d705557d8ae43cf714e81dac388f77b0023e1013b0302047c435bb5006830660231009625e9bf5b24ae8e6710bc5fc70f24edb495fe79cb21d4fbb19b55ea5ade360d2b9e92df24494e647bec3a501aff38e9023100c39ab2089f5b4293d3c53068fb9ac90319f1527e08af19a0ebeb0ffeea8d8023e83b70bd84d8489d568750109916ec850302047c435bb5006730650230707386870ce2e64aeefbe06e173fea0ae1f50a3328537c1e8cdfae089c05d962075b9bad6ee43c3dbbc41238bf7121ff023100e15d689be25ce36680844c364f8267b1721a232d8200d2b0d98608b3b3da29a58f47bfe59a46c0ed92a017caecff3d220302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d611c5ae03057d3b4f27cb420067f69f4d821854b859a12bd7476dd78c091b08ebe6e122bfe2c07f961fff454b5a4a0e02306def0910c0d7fd56c32f84fd2a5ce2421123c3092cdbbaf2a0c006ba284a796fbfe47b1b4b21ddf9fd37b29427a386a90302047c435bb5006730650230671ad979228d4b41d5e131bb9379769dbf88e9d6dc65e0836a1a9155fe19faa0af1339f4c943b97c254c2e4d05062057023100c8dd1b8b45167c9c21fb513c49682a6b342a76ee1f1fecf21ee0b70f1b5cdd91a6d92b867aa63ebe8c9ddc1d1505ffd90302047c435bb500673065023100e88a0a544163f0110aca4a308bf6a80e9a322b6efc059028faba20422a67a12644152af311f6e34cb0a83632ca5004e7023012421b6d1bea196cd61f6641fe9cd4dd7ed9bcba96da846c9df879eaa8c8c6983629567f051f1068611b5129e545d1120302047c435bb500673065023100c67c8618c160232232147af35bc83953e869f7b5ec5ac504422984df57372aa6ff30ef3a4c195ff13f6b23d6a3f0133d02301f362991de6ffc608ed3303422f45989900389253969d310882a1176b52d4844cf2880b267bc8553e1b28a229c1d23fc0302047c435bb500683066023100baec2695e20e04f072ad22b823bf858334fb11eccd237aa3914e0c70e432854a733dd0c33ac7de3c56a9e151054000810231008b7cc1fb06f08fe7e538ba2d42e4b96080789af7baf99ba371d5444c7dd3f74e0fd1a17c7c1b8d2a81764c259e016d8a0302047c435bb500673065023100cb9511a8b310c4860ef6477685cd1d9cfcda2eca44cdfc8610ece82bc22291e797fa2f3b23383a890651cd2d7125e0fd0230787908b4b989a708caed3605c774d31996294813ba4598e8856ce953def413bb86069600299ace7676ccbf1cfc6d0c660302047c435bb50067306502304d12c9ef2663a0c63eeff0a0f30f07fa3e998abe027ec83372e7da234e4c239ede70409625c993f1b42d6aec49ff0acf023100c397f1b5b37e791c5ca05d9c48fef2e9461df72f2eb579e5ab528608ea148cf04719281efeb9a52d2b8b9ca658e625250302047c435bb50068306602310093528604344ab14f267087faa7d66285f72889b8a9ac4fe1542becbcf98aee5b958f69c472b3d28d1d50fb1676000662023100d7b755a6298ee66428c91f78d7a682839692e3bb39316484e9899ab15a3c8cc7017e77b15bc508b1799b691a9e66f79c0302047c435bb5006630640230722e34d21c2c30b5b9a86f84f0b1cde848af04181b7b8d071db2bc0eee710e99fee22d87152e6ae20b55b867242614d5023041fb364a84a0bde77d2fea613c676287cefca8429aa0a86d309d7f4fb5c5685d00e06ba547bfd73063fec2c3c7bcdba00302047c435bb500683066023100b007e94cd991d63c7f44dd564c59057773a015a502d26db2b2858ff9ecde0024146b97681216037a5c9f7ad0b11883ad023100c6309db55d64b48a7d9a5e9059cc2717eb8bcdfdb1231d60cc646886f87285f8179b163238a213204983d08272c9a42f0302047c435bb50066306402303728b750d7e8228071945d7b0c6afedd0cef642251b1a40eee31e6383afa18ffe1173db4ab7f5943f766d8162ba43011023052e9402be4deeefa9fbe499f55c66ff3e90bc4fcf0765e922ed0f278ebad26c0399b8676b623f046cfa4d7863a490a540302047c435bb5006630640230724519ad53f6f696cdd68f28bf9d9de75ff82d10f07c9302c33341bd04cc490cdfe77da11d6e8230ed4d7ddedd3040e302300477c076b53f49f1946764ed20c07606470bb2719a6368722fe38cfe81bc5c9526959ca68abfe63e6e4eabee69fd76df0302047c435bb5006730650230178a45ed07699402f6eeee0a5aecfa59d4832685db3f01836be0a669c1738b25edf23de75c27d3b95494cf1b14a8e5a20231009554d3cd82ebda1c73ebd3182e41a65d77b81c1ab89f639c35b5fa11120020df4f9e2acdb3c6d67c92c04f46c4dc319e0302047c435bb500683066023100bf1a404c2059477fd362392b434128eca2316f660605a0ae5fc84019a538bba4b4e9b7181afb91565ba876a3c97a9d71023100d7fc637f9ea6f87ebdc7691f84509aa27423bb457dcc0cc2a33df0be50d812792a6b69fc173bd7a914c576d2f06fca6f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b074b5823436c441287e87f882abdb5d6beafaa0b134de54050c49523870b129fc85fdf2f50230cccba1182701011de8023100e260d7a46b435609e06341cbdd01ef81783a46dbb6d2161a0e3835272b28e2dfebd98650ac2d6c237a533d25e0086b940302047c435bb500683066023100b71137a8b6a639ec09c6a36831c4357680b1e3be01d052be48dd53547f7122b8edab4f23b5cea5ddc0fc357916bafc1d023100893328cb9f95cfcbec888178644b5e739bd6fd78a6cbfd24514db73e26eefefcd4859a419e681601c2e3fd57033826e70302047c435bb50066306402302f8b061f3e1055ed5472a97c653f0b731b43321abb27bae6acdd6f71e8e112bc9d2afc232eb966068016f621a343082402306f504e9f00dc4f7fea28f65c31855160893e3c956ab6b1220b3da34b0afb8333839b7ada70e64a31e0406dea02db40380302047c435bb5006730650230123c16dec6e5a76131e28f26309046d9c7f23c4ac360d3ccd5db099330881c9cd36e7d273ebdab9bda5ac2873396e99202310083d5646bb69673e07f7b221201761eca7d54aff73b57bed4aa387d2bbfa042d9fda3bfe037e75cfbe8a3ba5452ed66860302047c435bb50067306502304d149ccd89c825fea03e5802a0716994a00305cc1149a109f5a8665f46b5536ac56385cc0f0119ab2e12ee0fa7f6ffe6023100c0dc55deb62126cd12e47a31eb08dcd49cf03196d5c8a4f195ef378edd90c3445f917dff804063282928a8d336337e110302047c435bb500663064023040a713589ade90d05abba20c75ab879b2972f965022a4e3154ad81accbe85cc4c92562e7ba9a7b5856c2c444f79d5b34023062a3f8678ea47cd6fc89c8e454f496d3459bfab0a09953756c3df89f9658b7dfc06db898adea660901082e71b42c8a9f0302047c435bb500683066023100a13c27669c07d4a50643ebc78f75ab66e3e6e0748d01e1a1feb589345edef4351e1a2da7367b63e55c8bf0e3b06f21e802310094004b4fb4da39f7632bee96aed76474510936e46851ce339a4ceaa988e68180b82f5b4a8ad3d2a63078a9cfe2b0116c0302047c435bb500673065023100e84604af1e0e956c929b5616e634485ca3b97dd221280b689e540864a95d220f7e4769c45d2e8c1ef89374673b34ecca0230558f15bbfd34c5e7fac81cf408a396de76441314400946a2d193de8427da33b02220071b5e3fb80cc624b661c8f996cc0302047c435bb5006830660231009ce251b4731d22336d9de076099f353fd9ae3c860c59256e38df718ad69010471303d16618703ffaee9a09351b9fd50d023100b1f72a4624e372cbbd3a2a93d59142bc5579e6a39fc383599fc9117f016bce299e4d30c02dd38ce1061ebbd212a4bec90302047c435bb5006630640230448496fce57152c1a014b178c9c92cb4199ab43c3f1b637a34c9f01fafae10567e915bf84cfa1203ffce594a18a0f0bc023079caa62203092b990e2ff2f496bbea20f3b0218d067397b1ea065906956f80bed656fe7f27e85022e3638ac6eec6aca90302047c435bb50066306402307d3e90b74b0affe65b130f38ef6086063c47133fe855dfcbcca113b6618564838bdcadb46d664daa680af8cad8c5d50b023006b7039fa7ef058987170d237085ab85c8b92e177c245444689c1ba3af70479529dd6768111fda2dda3d1d481d27f3a10302047c435bb5006830660231009fd027f39d19806eb6eb7816a8dd4f38c7bd4f567a3fcfd1e8d66778fa94a3e2ba0f3a1f1c0e906fe03c0b29be0ea51a023100d3fe21a2daa43b196f9c9ca1c1c8e37ffdf2569f726f5303be8ee407878f32391c4a643948486ddeb057ec4fba214c4e0302047c435bb500673065023100c844e2cc80551f2627abf30a74a0496d38b62992b15f443451950c396ba963130110c033b5ac69099c90f075a90fbec1023000e05c2790328af47f82bb31ef83a88344f41c718ff924e25c5f7392d6fee2ac1db789348e1e63b32cb2cd3fdc64696f0302047c435bb5006830660231009ca8bb485784479f034174fd0cc59c16aa198182be7d10a6b43484c7ee0d7498851be5b65e3a3b78554cf8041c427b99023100e14529c3efe609e147126bdb79d672387d443cf23618cdf58fe5afd11bfa7f72e71b5dfcea322e0df84872667410c8400302047c435bb500673065023024e93cbb0b23eb03c01acc2f493a4c3e12ddc8b933dd992e7c93fb7abdd9b859ee7a9dd205a1fc34c6dd83babc68a829023100f9f34da22a8b03283e6df76c8cdb18b825eb01bfeb7ed46bc532e8125f807070248ca03d5c2eb78a48efcfbf786f7b6e0302047c435bb500673065023044deba2baf99962349756cdaf9d6639a5b9615a97ca1fdd3f0f916e1782bd0b174a990169139030cf49d7223012cb370023100a168c48b860355a3c8bb51ac044eb3ddbeb77d518b5d7d4e990527ab378167a250c49e2c4a15e75a78d86119a0c0d7e20302047c435bb50066306402302652587aca0b49a95bfa0bc269b1f63699b0d47f852ad358bfdcf7d7c3f8e7e17a9592fefebe500f00e75827307b40b902305e8d5deb640d8745272df51d848413e299e5b37d23059cbe8418108ec57d247833cff7852a733cefa61d6945ace4a7460302047c435bb500673065023100c74282535a87084581d7b502109ca5f26f6353fccff53f4b4e6d1b401f97a21877fa7a42b89f59dfbd02b54ecf53f93802305dbe3e66bd51fc6f2d921d0655c0ca0fcb279ec7ef286a27ee930887f0ab80a62a8ac9f87c1f369b20a26180b97cf0c70302047c435bb50066306402302d30561b430e077e55e3e78eed70f549eba192cdabcf78ec71f04ae081775f2f5d0698a02765d7833d158f85394a716102306feb8c86d4263702cfb66e398ed0c189ac344ef84adb088f9910b151d68e920b237766d33b27cbad4c2d73cf14247c2c0302047c435bb500673065023063e72ae1bb038bb63d08b2b2ccf02a8a2e98b3644cef4a42d2f1c507b19a5e74afcec2bd555a9f0e7942b638be77981f023100a2b0c9700d2b482cd3a89e72d94e1307fbe7a67e85f06d6ca9b4afe488ed14ec6ba35ffe4031ac6a8b6a0ec683460e5e0302047c435bb50067306502310095f71d204a80e0f1123f0b4e5ffeb768a071026ada9b1907d0f5f702b15f096141378ec0cacf99822d0e09eab81d199b02306381a583389112f0a5e98e55f952e1779eb6c5b5dd3ec9364d155faa463e50771dcb10c594f407859c2898b4a6ac355c0302047c435bb5006730650230547b407b1b8630811431fa42dbac0f621fb668271b48b6ef78a756a22f0fc48ac4c0073e6a6622700b67af08aecd4cd10231008e2015762f14c43284f9fa82fefd95c7de0a213514aba9654d10961a5b941a9e9e35922b80cba93445e61a630a4958c60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502307d0b665597551f477c75fc5080ee2e79f7d54ff9be5d8976a6d21b73b4c8d6edb61441cdfb52333dec4f20ec4f8c765e02310090f5643b9585c7bd89fbce2108e6f5f7dbbdb3e5fa715166915dafbb03f2465530497e7707524b8907ee9ebc3c072a640302047c435bb500673065023100e404fa35b33e99d087920e7c59a2f0fc4ac6d06c9bba42bf55d817a1c1c736c181cf5c5db70e89e115f4f07c22366ebd02303c4008e728fee910ecf0ba17736da694c1270c4c2be0b3bea4f596d51f935c3924fed3cba38035801a36723a45e942570302047c435bb50067306502305a5f6db404ae9387eb8f9e86f325d9e9fa88f4275b5c4fa9804600f23a86eab94807d3d6c0535057d921d8abb1658391023100e7ed1f4791292afebecf6e55cd35543330033d1622dc68bf9aa18524ce7de8113d236cef2b6ae2d12f7096ead7113b120302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306ef01d79f853edc352a97361363eb44aef81ed269ef899d9961a371f5e6de1b6733b007779967aaf0e114ca0a9821427023100af89a831072b121a65a4839d5ba7ef697816847422ffb599c3ad2f192fa6203711e3642f2882ea8c9b2c9676274b57200302047c435bb500683066023100cb737672a852c39fb11eb5ff49d69cb9c5dd8cb5861f6a80a2634a9698706f82e278e57c19051db15976534694cb75680231009c63ce18b859ad25913a7dfba44e9bcbd8e5c3c11a1ed27a4b3e70aee2442e29b4b34c77f624f7925aab82d6f2ea45030302047c435bb500683066023100af13c09a4a19265ad455efa4a2aeb4f8d7feec4e24eddf0e467b0ed8f56258c5e43e15fb7afb4626b4ff9833fc5b503b023100f92bdb1f033ca68703bc04f29bb0fa4df9ca94eac8d9f49ec19a160bd775eb0d9b134b91fd66b3bd468891e63c1635d40302047c435bb5006730650230061f626464df93095fb00aa9b3b5494b8f242a23b2fa740217e1328ab740769ac437a422e759a04fb3bd73de0f1087e8023100837fb3e234591113cb4def202369006528a628a721b6bf24f517b7dc71f9e3be1727cb8d222f43509302472a5fd6a5fd0302047c435bb500673065023100d54ab417c64f60a27b25fcd1d1837206f3ab21bf0fbffed19d76eae8c8f4552442ca39531007ae91ce47323d5f53643e02303cbae9162141a2432899912674a1f36645991562b814cd989cf854daa0278821c8deea36dcb7366edae4281749ec2f1f0302047c435bb50067306502300809b266963a51fc83f232b7d8c7ec4ea9768705e2cfd77198f9e71a47530f0412a75a33388e45b8620bdf57ed7ffe6f023100bbfbc062b666add408f51b72814321d14feda72504a6b1ceb51f94f152758925618a028362868264052f15cb8ddbdfca0302047c435bb500673065023001cebd7319f8aebfe99368b753a5e5e2ab35342bd3137df55089d26a83bd09f86066515c5a106fdf1fc14468e620060e023100d783754152604527c945350e795da0806c3fe1c81d2de9bf0e765d70ccc556d3b807761ef3bc99f31cd9789ea39649bc0302047c435bb50066306402307419323f1d3ea9b8ec4fe4c3843c5c83a91c94cbe6cd549c4a9e597948a97ec2f5afd2a89347a5d1fc8ad736cd0e52e1023033701c3598092d3fe54600a6d13061b099efbdac69d2c2ddcd7f52290cdc68ca1d99832af6723b48c957d2838dbba42a0302047c435bb50068306602310082f6e6c2c020997eb95ff8700fbcf13d15be8740b70e846ed7e66d02c94ea8c64044e9d54747e1943fe7caacd4081c4d023100fa311bfab520bc690ad7a9408929528356022344d7c788d4ebc1578d4b7635732f52801eab63a9073ddbe2aa6c406c8f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009c3fd8a07b9ea1114842d52902ef2e8a31ac4908c21404954ba62c42f55c4a7b2f0d6ca3d2c167a9ff26c1632c20a64802303d56823f214c93a21ae9f3f7f79a60e8e0a5f3372815535d113e5b1fa453bc54b0cb8a5ff0f71d0e7a4391b48494f5240302047c435bb50067306502304d0348292a18b7262d0c93824d50706c98fbb159c95fa2e0dac4ded5dee29fa701fba6c5bbd073bf030a966aeda15228023100aa080e224c3ba501aa13c3ebe3f9902c9ef951c9987529abba04881da7eb120b0cdd14dd9f057ad93b185f5c4349b4980302047c435bb500673065023100c3132dbac616cbf466f4945b12dcfa3ef5db274a1095b96cee48ab8debe3a70bc3bd6968568dde87b44b7c2b4885b42602301a54135a08602bdb360a54c753ee29b17abbc5d17abee6e9655cdd4683cdca0e0d4df541f99705273b544e68f57cd74e0302047c435bb500673065023100e4c2e5f0c1207798943fc5b3b390118b9b4e7bb352e22149e83e72d0a67df43a1d9790e1808aedf004af36fc376ed50f023010cd7d3d136342a0b80a33fd25ff8f971da740dfe04c5ac26f34d548ea4c03cf600a22dccdd25a7a747d370f7601afac0302047c435bb500673065023100fbb61abf3dc8604f6192f5c079d97c9fdff0c72d2b85ea792d236ac99e80c2fd7a3fcc5154f17a453328567c239453fb02302877e0cb3527a86bfcb55ed0f79a5a43a66f8162eed52217ea37cd57e9c30b666b611dcf0e75d3c40fd84d555fdb3dea0302047c435bb50067306502304131ab5432290ec95ca759256dcfc437a2e540820550e96487e0a49b761cf5d158ce46cd8d48d10b3b9c9a549a1a5401023100ec443be5e9dd80242d763d2efb15d692829b13a0a213d739620c7c9b94dcee3688f567663b935cbdac647b68d4add5e20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100cca060e0f40548b5b74f82ac1160795188a07d4faeffb92e036431e386be636d68caed7b1972839126d446e8cdd5b57a023035ea355b02f11dbaff05118497e33364374f151da9d77367ffa20841c3b22dcc222433f1e7eee5b16e8b8c9c75445f390302047c435bb50067306502303f60260a1061cc182347ab31c2369877cf97603536ccd0aa03db4487ad569b28d21c4b7d3292674409f16409572f3245023100a1ce84a4de3df1d5165c35e1877f055df26a852a78eaae9e68f584de2f96c8678503dd90ebfb70c2f770ad2da628a8020302047c435bb500683066023100d4b53997fb0359935dea4c4646683a56614cce8b6c9640f0c3a3e123e51cb5023d70eea95a91db8fa39643f30b10bcba02310083cf3db163324d35418c65d8130835925f40587c87f5ddd106b5d98c5eb3357442ed667d616004079aea1d6bb2ce66320302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b8bd0a4415bf5aacb3c207c09260044b1c6c21894ad35fb1d9d05a2adcc92b8bc95a62be141b290bf6834724cf21263902300b4c7edbe427b4115a498e5b012423487e12cda60c6e9688302af98d33e52bc2d71303a2b5c7d9da0c42939810fac5f50302047c435bb50066306402307c34f570c13130c61c4f9679dbaf4637ff8ac863f708a98a1ba06fa214020661ef3b0ef97f92c0078a46bbd1ee3fd296023048e115f9bdcf55f46c5d215fba9dfe713e2f453c558a24c995bc413de83fc637104593620e5b1c339ed6a7b1b8f8b9860302047c435bb500663064023030c5b59c278cdc4a72989bf080ff9b443b1d5ff160cd078110fb80329dff0c7b70953c484fe3f16da2fa94e533b9fabe02303f3b39fcb64f67b34792323695926b35c86e064dbe60401fc5e7cc90fce0deecca16054272ba10efe37aec3174f4fce10302047c435bb500673065023100b8bd0a4415bf5aacb3c207c09260044b1c6c21894ad35fb1d9d05a2adcc92b8bc95a62be141b290bf6834724cf21263902300b4c7edbe427b4115a498e5b012423487e12cda60c6e9688302af98d33e52bc2d71303a2b5c7d9da0c42939810fac5f50302047c435bb5006730650230775f1bd2962613c2a5460b361d15a5322eca494a608ff92e59ea01f7433a9c1fa87013b8da0bce4b9e937fc1cd604b2a02310085be396ac437fe9355d88471c63ff91650a8a88bd609d64246ae5dadd6e76d9f4379f69c5db5f59876dc707c8d408a500302047c435bb50066306402303aeadfa97e3f1c671268ebb59c248467081c5fa6b7067edda7508e7ca23475be20b3c2ae801867c29acd61b4ea96f3e1023020166b8bdde20090d1acfce76d359b51b825efc1b0aeb15e28ecbc9cea9a4b3979f887a9ecbb566f0d1b7d6e9215c0bc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100fe498992ec7c9b478bb5f82fe752e88ddc4a1284388afe16d38968d24035efa5106586a6c9e4481090924d02ccc8e25b023100b76a0a6c3a23c9dcf4836280fd18af67c11016bc2786fdc220f5addd5d2211d6e09805ecb28325d77657a009394e4aee0302047c435bb500673065023100d4d018dbb746d0155c75e5ac44f2af17dad144ba77f58f507af4ae9f3291b33a57bbaf8db12917ddbe3918fbee33e9f9023054c9226dbd97654d538282d5ba660bcbe4fb50b44a2f04cfcbb48cdd2db07360252cee92f310f4ee0b786252d8b55e090302047c435bb50068306602310090e804231687f58ecb01ca6cd52126359dfe6fc56afc2393999e63c5789def811cfc9253045c17e870b4d0a57b7eb9dd023100cfd14b0f8ee75b8f918d9bf77ad9103b3a9e65ffb1791598d94e98c70acb2e0ba6b13614846b3c186b1d050c932e5b310302047c435bb5006630640230769c79e5c29b2f73532345f77398c14bb9502724aa75044a731d0be7588aa67e23c776ae6d18d042f9ca156e839346e70230729ff6177834b9be54b6a6059bce1bf132340a0a3e4a322ccb939f6225204ab1620e4321ec95eef8446df71b83fb67b10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008d45b79e2554b934de25852f1caecec036930dfa526a919d08aae3d1d2aceb360c55eb39f26b786804677253a25787d6023100a198c5f489f7b8dae5310f7f7552f1356c824767b79b25781511bec37722e244df779c0f473d7ac97c998e0b2304d91c0302047c435bb500673065023069f4fd0de93e00d7757b9e3a4f66aa316577732f196d6d74e7edaa5cbde59cb8a36d02ab88f37d3e703a7a1584ace13c02310086bdfac0ead2e3b871fbd2a499cbe0d7906ed70eb0a7526f42c6a86c0617517dd4d2a56848a3121abb03b9aa090256ad0302047c435bb50066306402307a536e4ed1f892a35c742330a3d70ee127c16caff71163d5f4619f01bd849936619007d1902c403ecb126e12fd2712680230636536cc76698a056c93c7e3f8e07d088a78eeaa8f6ca5112823e4d27fdc06466a62930bba0ffed937ebc439533c37b00302047c435bb500673065023100ec0bdb02c9272cd35d0dd0db240cdcdf425c7686b8e354fbb1c54a6fcbf56d18c89140790c4e9e60e573807f7c525bd802304327d8b4fc0a767c4be93a519ae3bf4466e373954082381e1a9e46a591018a34c9b07a15e7a9b9bfaa4905a18ad3694a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306e5a328080c90bb40f8e7917c7e1eb5972d6d07624b7417c275933c604e87445f642901ee4038a5c6e1705dc8d561ee0023034d70c6bc542956f02eb67023cca580cb2e501bffbb6c77d6aefb6969a0ececebfb4acabe37112cf3c552a4e3e80038d0302047c435bb50066306402304909c60900908abf996b19cdcc8ff0e91c7e05ec7e0b8143edf88c150b4e7d797a0e7911a367c99f5db23f778391de240230784b0e7f3f99150ba3084b14e3e1cfa6fc7b98b36d74d0b4039709f564ff404716f2c3f3c26010b59655dd579fa199130302047c435bb5006730650230114b492548a6015a58433321d83fb395251b6c2ef9c98e61ca0fec09a6170fcadfdb5031f7298595d59a3c865aff39c1023100873974acfc0fb1809af88fb16e2da44945d7b1e6a4f8913b861226a87879075aa51ea095166bdaf914890ccd0c991afd0302047c435bb500683066023100eca9e7da0d12072d399323c5bf424e874c9f1b238a4daa4eee2925ebdee1c96adc4dba6f8b5b0a1976ba3d3a2eb4b174023100f39eacb7d5fe13a0f48ec3ef0f4b25a249044d869c062eebb0bc61fac89e0f7710c2177fca206d7f2a53af2d14f6a7c10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009e0a0dc8d87fe5fdf53843038b1bf3c24ecea013bb85189d3d165125b09dd2d572d9f3971c48a1f6fcd89019fcb30c7b023064a53431e4d5e0b6821fdeabf603bc96891fd9bc44476a76134e0b1dc9f0fedfed81e89e5fe8a87a364bc891dccff68e0302047c435bb50067306502303134ad36b1f845f4cca657e90b55761fa73ab8347d135b519dba909b3db7c7044ed1c5a3250d10dea7be4b5f2a8ae174023100f2bb000ac2972c9f4c9fe8e8efda1d0f8b4b4ee4308024bc7d904d6c6dacfe8a25ec16a32744829a9dac14be85f2226c0302047c435bb50066306402302bd8590156a8d2b57a8a468c18d49f4d95c37cd5e02f93ec096f65b30af2eb8f5b4fde9e661d06bb87156d0bbbd9a7fb02302f3058724e847fd427c9aa216726829ac1c5698697d899e2db990bb8dc6d08d5895550f5a667b3f75f710b40d7c482550302047c435bb5006730650230798b8f6081da399dcc60c317aa309f6adbda6c375cd04009998431bd3e0af386d41615828c37e2413675a02272011e1002310094b49a7d36d4c024822323efa585c370eff77b0ca0bcf4646f42617c22ce48235a30ed24ee231218bd5e49737a43c2990302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e129bd3d95381761fc6238fd3f613d70ba434b7fa0a6c6e5262cac88eb9c769dd492e383bd59ea3fd09aa430b2b8a471023012a3e6e4a53cc5ed44e608581a6b7b0a00f950a5e40e3bec91ab7b1ac3b8ae26ea8ccc115a346cc6350f19f45e1ca00a0302047c435bb500673065023074ac50be61e37de63f14c0e5ac1a12b271b965c6db3487f3ecdb4a9c22676670420188af9e30b1769564dbf3582f49c1023100acc73f9e323ff313e452432a14e721fe49fbfe72da1a620d21cce7e08b19fc7e3d3bcf40902b08f0e3c0e5c0248a508e0302047c435bb5006630640230145a26a7152900e0773c6c29b0dc3831ccb009184d4a7ed026c7b84f3ed05d8ac9f6b83f3f5e5d715360b633b765bae102301838ecc8f55bef7026fa687ec953af9d64f7861db36bf91bfed3ce9f4423f09309c1c376bdccd5a992ce0c074657cfa30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100fba244cca874e8446015d8b8cdf7396ce91cb211e47de9b0c62514fa545efe38901d601cb1d008950939df0b722c68d7023100fc6f5f846ee54836a04dbf9b23b154b0ce4ff3a2a02886f1b31681424e84e2d6bc952e335aad7957d31015c56dda2f650302047c435bb50067306502302d7c533ad3b2f256dc6e330e23b10ab9f6e428b7b8c165a197c18e132f8fc4ca00f8e6e5f279b9027c03c3da0969f9fd023100f4bc3fd2c81be68f665d6b87184be44dd03db0d60b54eb24049721772fd68de5a34cff50cd69796291a536a7fbfe2c180302047c435bb50066306402306ad15a55b56741e265564f928815bed67cf33d9d2756ff000119946e80a29f767fef0dd1dc8fac57b25f3b2d588e06cb0230282ae2aec1f65293825b35f141a05513c24ea4b8c890bd768e113aea7cd9d2ec8a2d5bf535f76ce45e90e6a0162fa6d40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100806b77bd30119b71bb0967b66d9b087f05229427908738ee16072056759916e91230514967ed41da2b4255a72039d4b3023100854545d3fe7ecaa02450d72432876f7e081dad3264fa3efa893953e70d51249e26f32fca4e2a0d01a107ebe33a2bb43d0302047c435bb50066306402300fb964cb63a8e41102398c3e8f11e78589d668390aa4cf841f32002e7832e7069d5bb9345cd43e5f90df5e5f4865664d02301ada1e70c01c1a6b60278c173e7fafc65f3e08321d6dc46338bb51b14a28a6fb2fade8e57a94603646c17efae8b4be500302047c435bb50066306402301bd63669d59274c6eb1cec609778f2b263cc480e7e0d32c30b0141f9b031cf539a574417aa3178f95fab78a173ae36a80230402fc0c342c9a32fccc4a9c5b91069f1ef4ec1fc2634e4dad55c5ee1129cb056e6896f090137d5522b0008ad3c96935a0302047c435bb500683066023100ba9273df344a919bf840afadc671f3837d944196c7cb6a1dde8943dc50883f0c6af7dd64e678dc03d490d6b83bc394e70231008d4a533bf2145aa923dcb41998eebe0903c32f62a0a241c783fab57b6210885b2ceaad01eb7018fba0c1ba670cd4a88f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300fd86cde8df5908a5520e4f47cd6a4589dcffec6b920a7a8e226ce4f4c476b3efdcf592c47d188ab831d41e5c62fc0ea023100fc05cdc04926e9328c97c79a91de418f15fcd99a5ef0e1c18ae5c4e455fcfc4a172329ac944c9d73edcee60dacde66f50302047c435bb500673065023042939b84e2537433535b85480f69bcdcad4ab03e6c4cfed70f963b2c252891ab9aa94dfe96c5e824fe1b0c40f25d7124023100cd7ce54ea18233a18626874b58ce77a9718ad80b6748d6d77e80a4d91f34b9e9642e98df191888e30592a6cae9a8643c0302047c435bb500683066023100b2d3fef5fc0f0d0306f69d883696a71a0188d0f6d2a5ed2c030ecb04607414d86956253f40ecc6ff46617ea1c47897d3023100a337d25cc1d98f3f514569c16d294b628a99258e6c009b78f87a24df8cd1b5be31ab7fc9d3138d3727ecb8a2bb70e48f0302047c435bb500673065023100854ff7506538afc46d58de26f0f76e17e935e24adc94cd261d73455cce33caf9c94a0a273112ce6534c7aca5282f29600230602e8287da2c4be809c471f99a7acf95c6da8346b44f56229d5ce7d863a14f763286e0d51af5782db072f7e8c4cd24910302047c435bb500663064023054ca369b514913ad6e5fb4c7bde0b2bebabd6f0f243b6a9b3ac7ef330767df03d2dae3478ff965391370428e1566703002305147b1e6c80424330ce13790361df4e665d8fea7572fb098836e38d78feed25242eed661bee19fe8bb2f39fc6e2bcb460302047c435bb500673065023100bf56a958d409074ba7af03d865d5dcaaf05ed99a1b20373b7272256fdd4b538dfb3c2e08f6ed51abaaac61f9d706838b02301e8697cc57d0921cfeb79b43d05643bf1c1a622fcce1e68dec06d33e18097dce87811b1c3595c9e0da8b2196e784fa0f0302047c435bb500683066023100bfb9916d2c015311c72893763adf1847751b186ad40f66053d7519503ed3842d78ba8dc421ae52c54e4abcc98435f986023100d98b39982d548027eeb3d9c98866e45478231d3b6f15764d3968c4c3d4236c924f8fc9d24a7434ae0c1609e2de88e7ae0302047c435bb500683066023100b727a20c41e1fd67a369ca8c941023029f812f04618fff4a473125da239aa61c32c3ef657dd94406f151f5ff2ee210a80231008938d12f49ebb4141b4652bf4dafb3cdcab31d4477d935ae5ba68c6e8dd0e4c25921f25071496e9b024004bac8a5c8540302047c435bb500663064023019c2ea10115ed96d40b95aec6406c2074359e785080b63569231d3d8ad6d3985e0a5a5e3ed7ad8f10d939e5c8f97ae8b02302368ad4bccb44c0a07180bdc5a609708d5c39047f75ac1d8a1d38772395b8da22e4da1c20f12b3c65908c0e065b0b5290302047c435bb500683066023100d8c5d80f492c0b2a11f8b2dd7c2144e2e8414b0f35c01a6fb493ff337b9e0269a3e452d3671eb946cc7cff38a80cf16e023100be68c392b4ef779733862516df330358be53a4efdb567bcee5f362bc826cc913e43dc3535fc511057f2dd87aad5f2ce60302047c435bb50066306402303c49f0bb4e06d02e5d3c6d91f34a005ae4a254ffb5491bbaf7dd8b8a1af56f9fefdded6d44f2210f1fdff3877494922c02301d03cccc4856ad84bdf7ba93ede526ec27affcfa96e3d672494ee4f4cdfa9418d170cc8ebad139b0a4530b0ff6e123fa0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502307b36827bb1409086265cdfd3d24343939d66c736d6aeb713a01d3c005164580ee8566c9420fda5b0ccbadc0f6c2791da02310091e67c0d94897605a2eec5ebfd7ccdbe48542a74f692122cc74b9aaa82f447fd25f4b801ef0d8288da1f3ea539b834580302047c435bb500683066023100b893f65dc007b1aab44cb2f7e4f1abea044c29762edd703cbc2e4fb38ab2d74d6afc80e900a4ea1c6509476c5fcdef02023100f47d3d5d033dcf7c6380be0b7676f15df9ae1a805196b322c29fad76a603d5b0130de0893b0d21a7d4af29564371c85c0302047c435bb500683066023100fd7bd287a8e9dd9f973e91bf51edc19d94719038fa56eb5f4f48d2b57cddb0ee73bc71d3e8e5369b8d1753ea31b0c48e023100e5ea8015bbc1a2852ecfde4064f5e82f8e9e1788bca036fdfd7e5b479db6c5bfa3530b16e4de32c2a57e3b31b119f3ca0302047c435bb500683066023100f28a49bc10ed764ab40951a63a5dff5f260988158336fed79e73c4f7ff7a63975d930ac14757ed259ec7e713b889cdca023100cd16d9b07a9571d0388cb8e2f7e3c1d03a584e199054024887afa6c2f97b36d950a02505a26c43cef0dd1a6ad25143d20302047c435bb50066306402304b29a7beba70abfa85210a49524ab0860c70902246e987fedea76ade80787a7413f97538bda738f924e6510d93a19b30023004da284f2ca5e5818eeabd2d91aeaae91dbd491145e38cf24ed64756f6668de8990f4fb46e27e59578f849291b172e090302047c435bb50067306502306dfdb69c2cfa58dc946ccf48dd22bb6a860ce6c06d7c82f45b597c35757af6f849f807a9fe304f535a9f09a107610d150231009ce7da6204cc0cba11630aa467c16b67d26476b83ab644b6c2651f1541aa29d3edbdd3d9f7c104ce77e7a9bd6871b6410302047c435bb500683066023100b2f041b5307c95582e035995f5a5a56ac592e30e1733a04cf41f9e1fdbbef81c46d8075d7b3e37c364b0a38f923bca2e023100adbac0c23354e5a7f4ebadb5a81b749593aea0f5fd4f3b52dc0f702404231ab33f7e8415cf9401f903f3e7bafd6026150302047c435bb5006830660231008f46eb986c7b39e7879c5211ecdf04c77cea611071a0c079f8f40fd7ae931e7a363b6ddbfcd2b36f5ed911a30b4bd4b0023100f7539a63adabcfeac152e2c30dbfdc04b71911328b62ed595bcb1fa33aea1c6eaf8759e6d235800f1dbaf9f1cd2a88a20302047c435bb500673065023100d2049bfb3ce2db80400187e427a94394601d7732588da8a26d509d617d7d7dfd3100acf982ef237d8393de057f9f552002303a41dcee887dbe160e31e0f1b18e87c1024cc09f744f6a01cb4c84dd42b0f2c3498d25f0266ee70539a3f0b2f64156ea0302047c435bb500673065023100fd06151b2059bfe9338dc078fcd28a24a557e2bbae42b00ec950f86d7346af7dc9e231d4741c72484b9ee57135331450023059c2a7317da52c3f2dbdd0a4763e2e4d6a6ef31e92a2633569521e7d6caddc774ec07a4079d3592a9eae9a56d70688b60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023052fa9c34ca787414c8ba1ab69fc88841c3132868d8f7dd412da02af8f5d89074d1212ec747f1a856a4b3c8a18e96b139023059df6b11a727ccf4473f89dbab06c44650a0d5e2e09a56145144b27a14c89f15c9d55e7b1a11c3b6942aff081f3ce2ea0302047c435bb500673065023100ee7170afd048c127e07c74fd349fb48b179e73b40dc1fd9efa7e8542fea14d302e711634d3a024e602e6162dbdf2fdc702307eda7c1e4622e532fa1afdad8fa2e6e8c86289090a2707bac28b9fd35953710021a19e98fdd6854d87c8a14409554b7e0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb50067306502306d5edb25416912badbd64f2c3c8e8c576794ae15a132af244c3e611362521e5a24b69cae5d29a31f9184b53d9821b3c8023100afc0d09b6ee615a52edf034185516651b1202b9ac8d8475373501d763c2f63a64a16202aded7aa7054080c4c623487460302047c435bb5006730650230674a3447bf9349a2a14306a41012bf6599a6488ca7a5017f2453091e82667011ffaab693db7bdd891c3406a7979de650023100b632a2343a4429fe0bf8d1b1650146f26efc8d777900ba55a228b494d94b3aec78ebdbfc1227308f92ccac8e8ba5db050302047c435bb50067306502310080fe25a5fe115d5d9b700cbaf94f91ab6c2c585cfaaba20afc8f89062c322f01730e187efbcec259dbca1561a6f4334e02304ee16f2f149004554e5c5b573adc626f350d1ca2277e772f685ed44272e27876f2b16abae2d15b34697f2c22c1616df50302047c435bb500673065023100b7677119426ca745343f291db56c5a2c91bce348dff25c70973a09bdb9604b18846b1b295663c47c30b572cf06318f1a02303183bf574bea5d1095b7270154e596af17ba676dab7fe57b4256435ef7754a9d51d42a2f47bf53ee74713a26b382c0d50302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500683066023100dc0e882788e7f719ba137afdc665a130c9842a272b6ffe0e61a6c1ccdb67c34e8c21a02ec13411a77c51a5f30fa36fcc0231008941d0fb614ff689de7713b9cf975594e461a848cb26e2e3c101f3d58d00870506faae14d1b26a04af8d442a2672f7b60302047c435bb50067306502303843efe94d04c9ded69faae3397ebbc42bcf326adc9e3eaa6a4c668af11e849df97a10c92ea4327bef5763e392cd42bc023100f4d626471c02f0b589683b4211c666fe903609919a86a44060db4dde6ab5ccdde2153d4e85371e69d3d46ed7b90ea0ab0302047c435bb50067306502310086ac9694b4be02387f637b0207d2202ce21405f42079afca8ef2c25c54cbe0ba0e5cf680df092067c4b6732f6a76bace023008afea54dadce45bd40a6e60135b61b826a88e15b225eafd925df48e814f85cd6d45386130a351a4a010abb9a5961e020302047c435bb5006630640230592f6822249ae4c4d206700461edf62bac4d173a678d855c8488ac0685575d186fb407424966964fd13846122ec62de90230202dcf240d1c398496f0140480ba522acf1f7f933c95e2ef11893b7ac8f898d11bd3fa972af2dfd8dca6331b108147540302047c435bb500663064022f25ec6a13e25b216fc19ee5799bfded4758dd6d25789b5d620b448f960f6ff274450fc1930d2f4f1402a872b2b5c512023100c68b6ef34c75fc2d8814d4746423db7684ac5a0f1aca0ce7781ccecbc1231538219e9246e39588dc580b4518dfddf3030302047c435bb500683066023100dc12808a818f0c632eb945dcb1711adc5d475338c6d11384ac0b5d2cfb3233970f38a425458901f5e42401f9b46941d6023100d67a2c3e53063648a90ea88169fd21ba7895dc8d5b475a098c80e8a41452386289b3128ec33ce9c0d6328e80b1fb33da0302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb50067306502304a284f1557dda0977b9ad429d4c1274b47a21001cb4911c60291d47e213367306f073de72f2af191283ffd4a6938a4a2023100e27a6cdc01283cf4b157fd05a75cb1acab770fccd3627142c941e81b2878ff2da145d76c75588bdbf090d07044c0a1a20302047c435bb50067306502301f40dc8663a3b3e6e06158ba40c3f6010df7ebde43640c7c8d5a98f4bcf22c7320121a0e75fce721d042f57ea5f7cfbb023100a833134808f7c6dc518b9fc4e3a7f9689ae8b95dec014f6ef4975748b5a49b51518ba33afb0112a7c96f63c7dc801e380302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100bb12e416852473f199a121496a389493b4d3f4a0f2bc6b401468dba37cdf303ebf3208277bcc71712b94d118dc400077023060ad69a86fb048e5f34f5a18f855905ab0f34403bfc4d6e2b23c11e3b5685035cd6a54a1340782369121431caf5be3b20302047c435bb5006630640230796e39c8ffb1e7794d15e8dcb7dc4fbed9a912503666810b5ea2424b9d9fbbe2fd3237251c0241c3e1e2c92173f8c95e023034b960a73d4c91b558f89edd1b78cc466cb2ff65cc37ba9ae84c71a37d13cbfc85f096057a986f35d9ab4092d616d5850302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100efe305bbb845dfb8e20ef47499ba5d84c468c19c23c0b5bd49e633d920b95f08f6755de4a1c35d01d8380e6525e48d8a023100ddaac2d1ffa8c9537d99999682f58d9afa6ef846cd8ac1cfa10b18dc5d93cb698685fb94933b164b47349f7edb339a870302047c435bb500673065023011f15e236c071ebe05fa5f47663e50a753cd2f3873c079842d49dc362d0528048282dcc546322bddb12aaa8506935672023100d8091711c029a95139b155920d5ea617f603fb4a4601e0ee0c2fb7e6dff1b688213271b7286d8f400a49c35dae2e983c0302047c435bb50068306602310092849191d0f0e33906a6db10c7a9605585cebdafe12249e0e4c074f198106cad451b2e505f99d7b4b206ef4c8e1ca916023100db5ba944bb02cbfd877cf817c9403463912436819cfc5fe54d3ee0934c317695e661a69f64d339ce72491197e50fde9a0302047c435bb500683066023100ec07a51156f87f23a17959bb172f683c7a2c99f4cebedc699a365ec45e27e3b0af5498128f30c1b6100149646d891684023100fdb2da0a06a5aa85a486785040254fda793d34df6dfd5ced53cffff0672b86996321ecb36ce85a1ff56cd21ccb10dc8f0302047c435bb500683066023100bff6bc6f18e6055553e9c710d287ed965080cf0c2806a8801fae5c99f5151d2cd000cbf9b01e1660bb1589f8e1c8677a023100d8add4b8ac4b6d49f679b9e710208f47cfb190b88c50d4ce8e9d91d4d2e05c74aef069ac6b199cf5838d0a3b84dc7e9f0302047c435bb5006630640230323b4c2f0045187ef66e4ae688a759837deb3fb19036a3c40721500d08bf8c1c395df173b547925bf8b07213b27f520402305f76867cea29725f7d28a677217b11f13ccd19f1afad03a1d3ce33023db8fa12973a51eb7e7142c13325d15823acc04e0302047c435bb500683066023100bc3558fe4ef7cc779ec6b810a7e377f9f36cec1a53d5cf748aa221d06b9a740ae590817a8e46caa885be52ed4926079c023100ecb6f9975e415d0f073bbea9a2fce7f611bd6a94c4812dba1f391400369bb3fbd6ca434e6a0e4f98e56cf7eb1c317aa50302047c435bb500683066023100e36aac1a83b8a817ef1be716ba187121d54c1557794aefb34a334e4c93b3542e6937252906dcc34113429ca6f07f63f7023100be001838519702813bdcbdfd92a1f5ea84caf8cf39458cf14ab0bdb8b9040f173ed85d484ec53eeb921ba9136f18695d0302047c435bb50066306402303fc49cce0f480404dcd7274e2e2fdecdcee49d5ee74f8dcc5fd2b873107c97df654f2fa1e5c51c304baf0b947877b06c023004671eb2f7da7b3af5780afd1decd7cb6dc69aa9dfce0524a0b93dd24de0205d1bc6ec59aae1a19d6e2e97ae911e587d0302047c435bb500663064023032cd497413989727d707e9965aa0739dbb1204d22bde216cb11fa4de10aa5e60604a64aadc4ef5f28973502edd6a43d6023040bfc876f40634f8e3439e8466dc714aaca529828775d02295270ee2a73a6268633635214b9bfae93b7762d712e4613e0302047c435bb500673065023068a4758969bd9cf65cac4be8011ceec5b86bf8b5af010897efee718a482fe1ac67784f8b1869b648719e10288743434a023100acc96a6a3b70f24e51a51e443ee2f772205d81279cca66f384e6c660b48d388954f1160907f9fa2d12e7f9ac2b7720530302047c435bb500683066023100f3e27547166c8fe46d8368a7ed3cd49a2ac78ffea9b518a83671b0efabf02195de5294c97b49964f76b56095e617b293023100f28875da5a0185d12f4fc1fc0012fd749ec14cb5dec4abb581f6a028e6149f169477b899a718879cd155505abf115fe10302047c435bb50067306502310086d71b9ab9999676ef280fca0d1d0300f2a746defd97f8c88bf165f34efcc0c3eb6f5f9b1d96e0dd4f03fb93cf876e35023067d59e7537e21d69618604ec252ec8e29c70a537cde404f4c45246dbeb8fb2bba61da9b299c03bf5db36ec46845128a00302047c435bb500673065023046811e444b216bea870733a480d974d9840c0df5639925a2242902f361c1caf1ca65a6c23d43a3af6560da26306fe848023100c1836dc0f14091f1744354eb325b6ac840780b42b3598b0da9c116e14457bd0d2d5b3f57e924a6372eafeda6e6174de00302047c435bb500673065023100a1953fbccdc43dfb4a8d1c6745cfdb26f465866fd7bd2ea4c27defe45308505b340e6cba8cc62728c2b449b62deae90a023017e8ab43a7a6d8b0912608f4755237f33548a39285e6ae4a924305c4d3fcbe14e106194891fea2f7b7e12e48f991a64d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305f295f8817b2c80e572e1ef6306d6b9f98db3e08c1303da4a9fededa26bdc355713cbfefdb1b52144f4268d5989e2c19023100e47b7227dbbecafb20fb6f90b73d32f03102cd2ffabdd5581b9b83b972fe174c26c67c40041b684ed3878a12ef4ff9350302047c435bb50067306502300428437fa65b15b7b8661fe29bec13d3671a981f7dd89e36ccdfe258590523160c02f7f2918b542c7937b8d8edfd5f37023100b0865c7a0e5128d8a12dfac5896666efd854cdc432aea5fefba529b15a6b3451d4d059e49de93d5c2c9ae3ace1f005290302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023069180fda52824a2f368d167cf8f95dd793ab1e946b6de256b9e753efec4dc31a04cd96fe3d28c84a82be4be17143017b023100b87c80701f7b769715f0edf757a80362298bb17f517bc420e874e25ed1203019f730ca32aa735210e60345fc70b466ff0302047c435bb50067306502304909e015c79733fefdf4a16d361aa8cdee1c6b192e7a10a0463cfe8801a73a742377aae6161b0a4e40c806a60805632a023100b78576db7b506393d2cfa54f7614c70ea52ef8d4940eedcd6ed3543f9cff930d5605a01eafcbc493e66f226b25773bfa0302047c435bb500683066023100a62f7c25828a7b560f5a92a8f1dd41b1fce842c5bf2e3be571264cb8b6b330f79778356c239bad550e08c5e84a5775ec023100a6c80026d522f738988cb8f3da3de89d98ed6ed6ff8a977455666dfeea74efe3cef17a15b3202383e125fde1cffd98a90302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb50067306502307d6ec48b110745530df296aecb06ebe0a5fd574e27abd6cd8f6a90af8d729e049869000b2e949a1c17416482af4521eb023100bc598b5ef97f532cad2f80dc2f14ff1090a63d6a80af1932b5e6bc9f2c2213c5bf55492856cca36e431b5ae3e2e672820302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230289ec8b3c944738c87c285860353f232686426f275cd065e634d8b43bfbc9f4c6164b83b450d79d0ff4aa8c530be1796023100e37a8316b5fd46814b71f2c670ccc8556f725fbc1fa29ee6f9b5e4b6ea6f08181e15f422087fadb782e2602bcfba4ac60302047c435bb50067306502302d0e407ac6728d9f6167aabd4059b18263938ab934e74d75d5aefd2d4a5a2f8e6334705327e5fa38b754dbe9f77cd799023100c0e66ce28adf2226cfe5376095339141abec82153c21a6b8af41f5d9d5fb0a2c1a562ba3452063b7f99307adb377d4dd0302047c435bb500673065023073d3ccae61d60ad5551c1b9548977d6e48480f578e83da5befe5ddcece9b2b995875ff6043ee1fbfcfd76b278f9e139e023100f0ffeb09a17fb229f4fe8bd9a9f8ea5e57f92cc32a9052320d73a4ed35aa81dc142587ef3b09181d51d239b7ea5fab6f0302047c435bb500683066023100c2566dcd0769aaeaf479b15f6515d91987b5bd173fd80dfbbc756f4298fb10f362a96091f75e9eaaae121a5f49b4123b023100b12e4125570e446068d8a3965f3c02b7df4b85fa1b918f024238524407e46294f65d2f8e52f6c9718266571fb958eef60302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100a22e96b9d2e293f658e416e2c0aaf702c7ced98ccd543c4bb718a0eed706f7cb8ce985c736207655e66cda10c78a7ebf0230013705eb557e14a02dac495833a4688a08d809bc5182e0c23f497562cd7e7bc288b01e7090dd88c64eb34e8d2e0ac6b20302047c435bb500673065023100841d1a943328e1e786554acf9d31afacb7f1728adb696a006957f4b43f1fd485d2d93a686363cfdf4c6ce25083340fee023063dc28b196373192cc80ab866b96b01b503426ed06850a8c77e203e9062c60613b80e259baad58b276b21b9fc902702c0302047c435bb50066306402306cb734da2d17cad5e83b25353fb2fc099286fb5e715057c86baa3549641a1bf641afcc886b7970b48220482cd8d437f502306b8d35214b67d684f6e2eb842b16280ef086d453d5ec022a332b736c3d296fbca04a5483b11fb090ba278cdee719b0580302047c435bb5006630640230368f405c25df9f012758455353b6a74234f5ce1341671f717c22b3803bef7d3148b5c5ac6234d16da06d73fbad655a5e02300ef6fda770a8ce471dc9398975f183528e7e76f37a1a386bf95aa3ebd07ab39dae25e438f0b9cfad549ec5e2cd95745f0302047c435bb500673065023100c50596f8a24f956a37953a5015252491b06237b56199cb5bb3b7fcea30f1e10717a2a35553079cf94de87b6a5778a8a102307d1180e43687aae6be7d8499eb3e59f129f4e094e12024867bd5d44338aa3ca3eff7bc4a5c45ee70187f4c4acb9e64b20302047c435bb500673065023100ea0e03ca76c86c636b7524a039a63af9ac11ed2a3ef6c4414e7170866b8416aa3d9d369ee35cc7d6357a4f67a354c2d802301db06ba49e21f958d9bac5f474ffdcdc46e6f097584c49619d0383f4c747bd80520b87f288bea0b661fc800f62b0ad980302047c435bb50066306402307eca5b46f17621ed173ae063ee7a8a42024d81d46d233ba0fd9595670305bea8d5afa99298115d77baa66ae3756bf54d023060d8636ad39008737c9b871f0d055c5a5b5da6016f38e8675e70775621e3314f479ae58a593094f3df7ef6779f7774460302047c435bb500683066023100806d312174acf08a5255aa592291c956d00cfbab9dee60d29932f2985b66555f2c7ecf603b3bc43aecbfc667180cc3780231009de437eec1065417052a4e7ef8b2baa2a62fb3e11ddf3ee52ccbeea56743f883a9422e95fac4b42a557624a37737f4560302047c435bb5006830660231008504ab4b7fe5c6b7d49183e9261be379c8346aa7ad0e1f1b2c584a9d49023f4c315e048669508ad68e92b6783b0f4c3a023100e9e6f586f4fd69c8f51516576d682c10c06e8ff2de3ff884e89ab5a53db298077a6a7846715b9261cdfab21e0d8adb0b0302047c435bb50066306402303bb5c117bdf8ee68f5bed893a466765f3af54629459a55ddafcfde3d675ae7490bb0aec3933384f1e04717b98b6e8e4502303510a923ecc401c7fde72f220e66e54e9e5f054bdd5c0661dce04eeaa64604d332353723c90852dff31387aae527fc460302047c435bb500673065023062674971e43053983e07a556514db21c1c199700d621f43ce0dc91e1ccf7be20283d7385dac6608ed2a92ee6b6b2764202310088e62020a1a0e98a5cdf4e1cf121231dd232affbfc99e23172dabdad60d3fb88ec8920a6a7bf1097fe1513a90e64b50d0302047c435bb50066306402302274147ab94adf33b0756e66f186e888d9900b92fda8b6e456dfabd7753618b487962dd49aef49688d9251a1510c09f6023012a8e585134e672fe5bce0b0af29c185d2b8293e093a46f3ea36a2862f921153ea95af71e095fae2d85d327310cc42d30302047c435bb500663064023062990a4853479c108d337ade0ed50f5d53f6538ea4f92ea5c56843aaa7efe1ed3348f882e1e279709fce29e09fc24d5702303d034788a5a2e868e3f8d37f9876e9c59a6e27adec3f5dcb7c0ff62ca25ce6ce72753f9d498bb9224a6d2327614172480302047c435bb500683066023100dde2272a3ead351a47933b1b496969c7492a229d9f4222fc1a334c519628d64ea71c019e7fb77fb7642dabee1e1d9fa0023100d0fbecf2e7feb38188f643ba53f68174d6224db49abf21949d7a4274757c000b7ec102c04a78271112ddf90e609ee8120302047c435bb50066306402304080253254e26c7ddf473dc170379305630de69c11976e7e5e51c1bcee177838cec50f25767ff9dada4a2312531a402d02301d1756b43bc1d4218d66c535b63daf469dec09ed387e21a8f087f23c5d613a616e478ab283971365b4d63324e0e99d960302047c435bb500673065023100c2d0af2281d34c4f6c9ac76489669c0faeb70dff72363f653c3315295e66de7fb407cf3eeefcdde924631b3aa8f6eebc023068fe4c4f6f642cce9562f85434ce9df7f2b45e42ddf2e80f83f09aa39f018ab834ec1a16f5bb7d3432c1e8185bf74d870302047c435bb5006830660231009c0a7ba6ae314f75cb79ba8bacf863ade65f86bb7ea18ba903ed4079409ed088b9ac6562072775937e0fe75859f9dca4023100ec83116a687542aaf30a9e651a97367f5bcd2ee391dc49d93fd044ad1ffe722fce06976acca73e8c6ec05a22d6a36cbc0302047c435bb50066306402300a4cdff5bccbea97ca0df98d96df097c5a184685000805ce2d3f51ab179ab73f6f529cc946645119554fea809e550cf3023058bd2f506df9c0fff4d035edae82b1978901fc019306db591e112923b6a68c76046b6026b6e63d73bcd6fcd333f07aff0302047c435bb500673065023050e77c01999a5fc7a267e1e335d721e85761fef9e0be9801e899f459d5e52be809f8345201dc6c24aba0ce8626ec981d023100ae84893ef4c9c53e9ff69c8a4c48edeb511a729429744be0d3fbc2cc8d94f89d67039c76bad49f48ab1d4e563ed6af490302047c435bb500663064023006743bdff2202c409997e996c1332bf91f13f2ab8e5b05c17431c2f7f0444ee859bacbf677a42362ce7a6b2c6cc083660230662f1d5463b7e2aa994951470e114e1343d9a787c9c1f3bc10b43ea5793484a131029da5ad7fa00c0f5c75fc0c9e75b20302047c435bb5006730650231009ef40e358e1607e6b1b7382d3ab3b659b5d60fbb72bfa66cc7631359ee538e0c5821a15068339919112cd3f79c4b843202300e204ce1d2a95f555bc71decfad9d227fa88eff6d24ed6af3db7a90274e0327c24848e628dfa4f726bf61cb58d8677210302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e25e1a61f14ddf63baa63e9dc184da1f9ee6ced0768efb7db262fb0ec6d3ebc8a2c67a1e76b10eafc8394ba76bf12e92023077e428e0f40af2862cdfcbcf99294656bbf090da4127d3def1a90d84da60485d49bff5ec6d57bb9ac86cc44f54b4c0030302047c435bb500683066023100b5d2a4aa072a9a39cd06aff46e4a71cca2e56e2e18cd3a841bba32240a343515f46fff10889a8a54ec6b15901809e49a023100d9a5a7ae68f94637f377a2a02b9e89e177f74dedf4a1ab85d87b76ba023aeeeb1fbebfcada911872b3bf149b27ef91380302047c435bb50067306502300a28bddd8714101e9b20253b16cecc3b073305b4b7e839ed7330c9147b69fb5687c8e868a0fc84c8bb9595ca7286904e023100feb19c30909b36f463a6abe3062f94e98a09252ea2e6e64921a3547772165a495cee1b39058a4f683ca8d34c606440af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301319f257a1b05b516ed0cdaca818f09f30fb7162f34e432fbefd1bfa0030f1e97b14fd9ab5c0cfebb8e020a9449995b40231008b657bf122af5878d0b9fc8577a5806e04717661a3c0c8812e1b447a2232db94f6d8728c6f0674ac452b232d5c5ed7450302047c435bb500683066023100840c059d6739ab9c39d4e7fe944ee70f4ad34a477f07fcdb7aaa78b924c2d5c990db65822dcb14f7835934c2103e30120231008571583c017643c4a47446dea7248bf4d588dc4e6f0dd92a85de4d2dfb910b24df12a4fa1ab3e48e5d61571b4a85a46f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023061960e4618c6eabb8474fa95fc691f3b41e03b1a4bff6902727ef08c4ac310bfc1c145333c2db033fa0dc418b339661d023100c8ef64d2861058e2bf11c0e3a00753a7aa768d77938f9706d15c7fcac050d7e1a943569d43e798aff4b982a47c027b8c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ac4946556f795b6b9288ee5932aedd68cec1c2c0940373707f427d24acb191bbdb9df88b2f6c82553e051c415a66568f02303ae46ec13555f99c2b806fd2f2c669e5cc02166d912cc2126362a2bf3a66be749eb6a176d2deb2b24b65bc9415e967710302047c435bb50066306402305b9ca72a81f4102d636427371765706c4847632c97579db5983f9e1ee23d8c5acaded6391f5e95cdc896f20868dda43e023064509fbfe5b7ac0d165e641476578fb268a58c60f6a4faa82346a870020e3506f39babf806a35ecfae7353bf1e2ce09e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023074336061baca84832e075c59569dd4770e8b33244a005e5b94393d953ec9d8a026cbf3503a305775c9458485aa54ad40023100a66748761ebba90f488726342b9787e58c1ccd551682163ad8a5cbfda3ad43e6e0a3eb892e6a91b1a10ea2f7767fda7a0302047c435bb500673065023100c94271a15be0ab0203f88f5beac2c516ed27550d7c37f1a32a93195e958ac5223e89a443ba08d96b5e780ba70f656eec0230085b1e85ab2824e94bae034f73e9a4e8c2b02ff29a78a1f49b7cb8b3653a736055edf7d227c35cea7ea38091640239e70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100959ed8ad44e40ff8ea272ed256d14b2f60fe0ccdb3f82dfe339782fca655280c2e6df564efa6ec78cdc5e58c7b35df7c02305d596f186a5ec69f7fa312fc156e8a63b28bf6ee03beb7aec540b351fd946ff05310abd5afc76df78d5f85ca1283db810302047c435bb500673065023100f10dda42d5523002d4cfe4f863bea8e6c5a84f90148c45ba82fd1ebcfd72505878240803ab9d8e6ecf691f34269b747b023066099c63b7cca4df2855df81ebb8bced91f9c9e94b60fee9b95305dd08227149fb63f4af7442632eebff6770d1822dd20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304c56d0f874bf7b734baabd340fcd053f91446e9f817bd2d94cc888171627307f6aa0e0929848e2bfc2ce605218dbe1f6023100c53582f25de33612cd968e0c08ba654c96f274bae352c76f73a6da6c8bc5cad2baf6262e16c3e9ba163f6c5cce4ca20c0302047c435bb500673065023042b3a675d283597046576f9a817d021a111caea6acf4bef6ec79bf96514297af5b43a62fc4ebf4a6763f55b58749e08e023100874968fe20d989a474dfba462e7999c3b9ad7606d5316f80c618db16f8136f29b6f933e5a2dcc6eb1cd7702892ca5fa10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009e90def98b9e977c1494fdc7816156ba96f56efa29643965895ea0e60788425cea8b092503db2b639f6dd6fd8df71e3b02306ed4081bbd731e51557a06cccb13dae079b55df45c1b1530d823fc0cbf714f24064b54ac5274487c2e35cb28a928bd8b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023022827cd63d6f7ee748039891ace4c7c19437c8e5a582879acc1883addb9482458c538a820c1841886fe25591f6f47ec502304745256deac400e23b592ee0a526b5827691dd7e56fa2a2d9b5ea1800861066169c9a5eb2fb7c39d254e6e058994b9c60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a896319ea7c50f16da05fda87dd40abee73dec01d2fa708e83b7c8f2f83c57e58b4c221459dd5db8882801df594c1a0c023063985981af4288d2ca33c8f6d6fba9bf98b92e06488421af378d76f18776e43e1a62b14fcc553186c1a73ea4b5ce13c00302047c435bb50067306502306e3246cb9dd66293581ce88fd69440005d0213a3bddc21d3ec542062d42e2c1ca36e72890996ed3a2a0d3196a339cf2c023100d5d7c54c06a6e5c2ff36b9198a4b0ad964a9c756b0ae5d095fa0264b548528f02774d82b4b1fbd25c62640ef2e699f800302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100bc402bf14e8cf326677b8b1bc27164a7a3262c087d0162836bd16bc703bb3f6943fd62c47a6be5204f6a00e383ad83780231008420028c1e1a93335c9a771bbdc57065dc8bb3635d77988417fd9de2fd203d7c52d24b08ab76d549fb006773c574c8ac0302047c435bb500683066023100e24b5ec269925250209fc02f9b6fd6ee195297756eeedf1ddc245be467634df7b1e211b186e804ae5bb30a82e4e8cf2a023100848a70d5d410b80efa9d570fc998f17b326d3e10e26cbf2ed1ea9e57779135e8c973f5c5b1f232d4e20be24e498d65070302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e5fe7e31af81c0889ee426302fb3a6a22e9c324b8e25fc27d33b3c8a665dec1deff0f2e91e66301f3f25d223bc463f440230526f8f312aa9d8f9069580311e9b15b95d005cdce330c1522dfc177a6451b851e1641428c2a31f5878fd7d364dbbec0c0302047c435bb500683066023100df55d8695529dfc174201d34d2610518f072d6c9e5e678eaad30bfb883a865d49f5c941c0506444eea0bfd02911b1ef40231009cf21420c1d8a0f1686e8d7dcbb1a1bc3ec864bd65a8639976223345af03e201fc7acc5c00f9db7807675a4bf5fd8a520302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303089c5f6272057ec489064822fd93ca60cebfb31f733b85f544aec938238a983aaaf858d267417777177bbda86d34a21023073f4affc70e0a68cc62b11bff90caf0f48f1eb2580700ac0e24a33378b21e36f46cf2fe24efa663cec2faf5b29bad9f70302047c435bb50066306402303c53e2cc4cf580334e969bab32470cffeab8963741307ff5ef8851d23a400c450960202967ab73aae280a2746865df080230712153eaf3524f21c24a5ce0dd6cfd566412b6423bf89df43770dfc50fc6f96c9c3dee4fb6d05c5232baa60f2fa4d19c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b05b4378f2f1a3fd0ced5da76b362c294d4597a4b9886e83a2c8777324a1328fa9a92b26c44c7b9a56a41c72cde7d92502307729ac74ad7f1c058d4cc4fb8c643b89e90f71c3ea587e8c4cfe9408bb763f37da8d2fd8097663b5033961c99c6600700302047c435bb5006630640230554fb96eb7fba7f8bd0a4401bd07f5c6734d14c71646862847109637ac3f3bf1d6d22b092e883f623b8a1492de10b0b8023069f093734d5a27d83305ec0701dab8d5b32e955349a03fd8efa5b2f0c99810245221bcb9bf7fadf98206eb5e84becea60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100bc8baae7e8e1da8a37f3f93925d97b62df6a9ec1f4a8eb22354801c78c91e0111bf6bb43c184f97ba275347b8cbb71bf023100a96f0d0a2b760954d124cfc172ce3e472574c3f79c72a1dcc3457ed75a9bb9102f8abfb1da0b8a45d3f01d632df3d5750302047c435bb50067306502305961528ec5ad2d6d0245a00e66245962c08e661a0a880b7bc2ba40847bd78052651b7d6207fa2af1e366d4111e8fb197023100fe6c01dce11b422bff2f9522f51a3299052dd5fe9bf0ba3b3a215ef50d72b386144df7dd75b9287e6108b02bd848666d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303d16c805498f23744796f3ae044cc3e021920d8c7edc389983c1488053dc166268635e5e875707c13042e4d2ba9e3583023100a9c0eaf153ca23f04281810d4233bd8c8d1ba9ed0b8b440a65bd5c5ca26cad07701646fa54078ba14876fef839b2a8d20302047c435bb50067306502302b7ba0835e3eef7940ebe85dc272932be9ab054ed6671d3c6e42307e909ce227ce8a9b98b9bd3f95b1a3d5bf0cb092b6023100a3d42072fb16ca7b5e788eb08dc98d40572a841d6b72478a12e89799acea7ad202ec99b8c9d5c98aa79b442b9e578d490302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100fbd04c1571a67ec30069ea0410b37b51f7430f389f2b280e5dddadeb439461bbdae8e558c17f55d002c2a6731449b2a9023100c123106ec5b96dd332488656ddac588e2cf01748811f896b0a9d655c86af5827ac49c58ab9e0ddf4c10e5941d942bbc40302047c435bb5006730650230109ed19cda0d7d91b470353425b9abdd3fe2704ca96d07f7cc285e6c0e7afca3e3525e2780a4bcef5ac05ade7ee857e4023100e47918cac3141e428d47f512ee36da78bc7d2689c67b89a7b4df47a006fc054994144b7a656332735fc33dee03fcf3440302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a285a3e8391faed511f598493384a3efa77881c8aa4d26f9b5c3375a5afc6ff100ba9664b81657d8c5bea13552107e94023100fc3623efce8f2b98e065a2c39a14a4282da7019e07e2265595200b827b389e80b8d30e19daabafff862b9de70f47f5450302047c435bb50067306502303b444253620751e1db006adb0edaf4e9e86c70a7912ccfe8865cefac2dd80a3b6a02a97aa8e6acfd04da99fbde1b177d023100a0de7135e8269736947739756d749bb011480f696c518a1de10250b60cc0d6f6c80cf2ee793c46554ab897a9fca2131f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f443510f92e61cecf5e6523e2b4fe82e6e73799752e797126c3907cd7aeff7f1d2a608c179ba9b9a9c01cc7845eb28f4023100d021c38350ff05c001c3eb59cda46c5181477af1e3b5374031e1db59ee2f76823aa92748cb86d803e7e55040bd6ebdb60302047c435bb50067306502306de1fa71b8bffa119971a259318aa03b4bee71f3e14dff64db93d522e8115219faa03266485cc25b3f41900fddbe578002310087168eb04e9006ed028923971cc58bf72db04f208190dfbcbe76e97f51240b69f4b57eb49d240ad5f1bf15eb2fdcf5a00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bc84f111d0c0053df97dbdaecc543520a608f6ae7a082aa52830d513e84fa929def29425572ecea41e70ff6af56be7c802304eb8c2e984bad460090cfd22fd60259032cbca268cb682a875758841c37aa8ebe4d96e8b3d6ef1e843b1ce09519d5f1d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100cdf0e66d71788d07cf1c5eb78585b216b88336efb467de780a978d8824cbbef76ffdf7594e16eae8dba5d9d3e9ca74cf0230563ac313811fb2df4f5ff38a37f4988ca2281c0736683d1bdfd7ed36d151b0767ee025dcada3fc16103ff2df4853a5430302047c435bb50067306502300c75cf073d7fa23efa7bcd795c8dc5df81641bb11d72776379c2422b1cfff2bcb43a7c6efc567e30934a302f4e722e8b023100d9e204b69bee5511ca3d6a9b96bfb222e29e0ee8f17f3d0eda3b9dba157a6f0a0341d00de7c9d5bb9228992246b802ed0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100dec2d78c6bc21303276bb996c406a6d239c0a2feb1410d58b6b19f561d246622fc18150a373309f22f822dbb2db7c1b5023100f1fac4c4377c2484af320bbd66eac19288f90dc067685df188d4a114476bf6ea67a196381dbebe73f25a3a9ad73362270302047c435bb500683066023100e35e664f42a9f1c4752d5a3b9191b0197425288200877f094e03981c40cc4201528a34846fd82a477612794fe2972129023100d551428c99f2055119d4a63b0ea428f3810910a53f35a037520783f66d0bde6e3d26d38e5234273c5357fc416bb1a3a70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100abcb6b2693ca5bfc0e35eb04b9d4afc29b3fe6c33408c68e671cb9428004d56132541b3e0009a0f705017eac4d5d019002302cec8f24564e38bb1f701b9b1d80782e76a5783b67fe1ee217d3777e86a8b331040a60d57d6dfb1242cdfa4a950f01b50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304d030dc358aaed1fefe23429544455ffdab18d98dd4d0c2608f60c42ab80f6f1fd0d0b0d405240e4bddea662d0e7e0d9023100fec92309731c946952f316d675748ab3cd2281c55b35ffc52f05585cd1effc8be0cfc3816683b352dd24a621f7fee7680302047c435bb500683066023100d58891ad6e18e1fd371f5a0e8e2ab0647544954a8c9f8db3443a3fdc3763e4b72474b43d70982889c10a54656a8e966b023100c031cb40b4af100646c0fad6d8113d4997643f44fada959111953d5ec75f4bea01b2c9c9a8c54697d3db8cb97a4eb45a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230123e7d28b52c5f4bd316d39279b112fc6a937c89c1ea78702098298b57156aaf70b0ea7419562ebd758feee697242e1a023100b51e8c23c2dd96cad941e55bb083a0fd2638c68560cf07dfb6971e6a6a96d0aa6115fc18986770e8d74c1eee73225fbc0302047c435bb500673065023100cfdc427b3fc3828ba49ff828cdef19d9d172b9c385ae8c8c4fdee3aacc57172e547472870786b0d78e42e8f0650febe6023065bb86b57d46fa3bd87be4f75c377ecdd3a60ac36638cfac89360fbc8156e6ebab99efde97f8fc4e23d77de1d1148ecc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310081ab6056b858888c8b1d15f58729d5a3423242c724e684200ae3752a668754757b0622700e86ebaf38870326a52f49ae023100893685eab3a1a8788be2ec074bf89e021a7f2f2ae06767538201401163ac0807a132c4f53dd5dd50b2328d09037fc5ea0302047c435bb500673065023100eed8d77cb938b669520aae107aca27b707b24f168cb18ff00d1ba91bde8f91f5361bbbcc32ef9ead795959381bc4ff8b023025655a1b24751274464f869139cb8e5e0c8f3cc39ef3f0dcaec56bc6763552b1dc0bc69d1cf4533d64d2b4140d8de4a60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023058be222af39c55039f2321764d0d250134826ed41dbb404fb111ed58dbcda42c8c0f160008c1784adb76f7be33d7b7e102305e8956c0b5c8592440c529aa4c0df88bb1b2b0c4c24b31f2916849d9f53f62c61e55772258d1954e9b9ee53f831d1c3d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230537af8ddb3713869c0856cfcada6e9393f2fd90845dfd65d44b69156315d830d7275a0da1164cece843e218a9d7426e702301b019f6fc766e8b09a9e6596c2a807f14d7a2a971930b4a4897b0fa931cab2901dfbaca6cb45dfe0109d4fa77a0a12280302047c435bb500683066023100f714e10a25a103f8d9ab1eef5debcdabfe56ebb3114b0b2d7268cc258aab899b2fe5e64dd0f53a43cbcba4b344ecc9690231009f56b5bc624a918499a64a9ad24f9734476ca0b8ebed5822d6a95d8c4d0bb7e710848c8437e655b18a36629457b85a850302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502307154f33f829a8f5ecece4a3c80e782366bceeb758959af0efb33d0b08ebbd593a69a049e5b1b5429e6bc5425b17c13a50231009a3b25ae10557caa64ad4e893bd66f065efc2bbe3078a38f237ce7bef7f3090b30ed9efc511533cbedf623bd09afa3480302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e3390e7ed1bf3f77504482dfdf3db9b32048705987e2cbb41cd12b579d204d8704d10159972646b516b08ecb2782a0cc02302ed6bf3e76e58b4fa8ae16dfa1700b4beea8d92600d442e14bb11c507bca1fabfdd0a79e2c41ff04ee9c0e1ea2ed1e750302047c435bb5006730650230081c9a16fdd8b763c7168897571e5bee2203c17e8e41b7af1407c35999b8fab73528e5b75b2aa649c666abfdeaa38846023100d2833e082e66a6bcb96a3d6bf34140d91206acc24264befaf72a526d7cc213639322f5c7749c6d804abbac4b77ab38520302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023016a304b9d8d71e9c1c12a5fdbbcb0a9fe48f17c045e558e540e091f8b8d6642be91cb7b5abb742d97dc933d59fbab53c023100ec556809a0a5698b35e80fcee8ff292a55c956be6c60fb09d229dbf64fc2cb20be79a631c7e621f7f3fbaa391ced912c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100aeb83d76844b0e9450c3804babf843396705a3a6d306150b0e3fb836451526e5e785ec32eb6323f5a68853fc05b9441a023100ff7374193107b5db0984831455f194679e442d5b234dace8d68e9bec1d0fd288162aad07bff6fc2e463122987bc7a7d40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f75fc83e5dbf3b5a29d30d86a5df6d89e226256393d78e8d9fb09149ca582f62f206e6f4486c3b5ad521d8c718684fca0231008d4ec6d57a89e51547011b118611c3eac44120fccff676c348d2188e17253d7bb1d18129e85c82beac232e474e1afadd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502307679a8a85c493565cb6412638cac2a5b58d2e9f83e4d753e34cb290cd018046825e45999525a0f8d625ffa2042df0d4d023100cc611fb43be45ac34d4757326208714587484ab8273c28e63e330e07e2ac5a4fa669885228a9b4b7c69f106b2943a7810302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100cd1b819336a77092a64af57e16ed0cdc491c0ef62e0f39edbf924d9742c349cb32256a1b23438ab82fab14fa65719be8023100bdee396c92f2c58d5432e159db946514d43ae6772fd08a0c7fb233bba7a859b8a310ef5c13a0a534215c41bb013c5b3e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303567bbec51668cf4e320fb74e8535267e167729ddbeaf129973c7a80066a9b19c3667397a8e0aabf93a19313b8896409023100a6968daec567428ff3712e23adfda98f8c430df535b359c802f4660459e5309e6569a509987c01b99d0492528496d58c0302047c435bb500673065023100e7fcd7f0cca6a2824e633919409ff82b211ad9c7845ff1376b5996229696cfeca16d66ff3149084e40a658218528d5c102305b82c40efccbfb83165c888698a16b797f9faf749a619a785b08e0ec871df46580f90c924aa2201ab9d0766c364cba900302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c244a3a8570c1d31bbfdd49f624abee979ef6b689945fed78cec82daac41707cebbe11f1477302040d1b7caefdb5c637023100c01dae53ed5d372ba0c12bee7afbb3cf94ffca967d87b3a0fe105044f097d2c288ede4a70f873794f1e142fe9edbad3e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d4f78ac7be305d0c93bb23f1275776777da19d658ffe04f5de4c8f2cba04bdd3b2e458be227cbb4312219054d76d0e3e023100ae9c35e9c25b971c6112a94c642ab92ff8d5fcf7947a7fe0c6a6b1d1f5d2a3afa2c1f07fcbaa5e87564f59194065549d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a3f5192dbc2354babf469888e3ab1d78aba29ddd938aeb0575c47c0d262075612d0e01ce5381f5acd031ed8153b96165023100b198fd8d529fd652f3e4b0716f35edd64b87f0523af3b45d8a6d0a432e295c880a6c48f08affbca561256dfcdb698b520302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008c903abad3eea5e9d571e0e10fd43570f87b8321199ecfeb74638946ce6da634451a9aadf0a429a14c6831a9aeb8fab302302953ee5d9944506f30aab3345f7777b9e8264a49cd436f027893912bca9fb71d67de8ed1d9f688a5a081cddb5d1b8d4e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d31f589cc9b3f34644537dcfd8ad2bab95f0b8595d85f6b4b6504eb01aeff8ed44bb39b7ef4dc60e309bf33e71fd1e64023100e5e72b26b4493935dee79dee7400ee5e982a8e734edc5f78e2573ba0aa95e661d82ebf32092262834e6219685bc584420302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305a8a1916a764821c8c95fd7b5a2607b6ba2e55891da249607a6f1dd39deed6e2704268e94447d96fd228556302ecf8810230177c3ae33575513bc507daf56ed02e576c329c11e32b992029f6c368ea589e31d28d76ed1215ff606e07537c2b7d70e80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bd2f7351092066661f9f712f78b416562c14bce12add9e5e2e6b15c7f329af67f718af1fef1b3a9236a117e6207ce155023078a25e3169dbf19362bb3ec5015d85c0905faa161a5ae560912e8286f3eb36524f66ea670683c40e234e7bf41d6cd31c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023026c059e795b45fda5ff830d729bd3a433e5403274b7a713679a7375f4602014830fa4718232fc35c7d34f86da0388ee502306c5ed554d891cbab5697af5536aadc397f4c38e92d3512d93ac0037aa6477e28abbea83d52a25df58f7280770b08afd10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a61d6a3e785d1c5da5faf2bd6d731e5a400d161fb4dbf120e2014f61aa3e0a296fe54c7f47aca32f0c8124de4c63dd3d023100dc869746f2a32d332aae311159aeacbd39309666412da2adcc29099dcee7ce09c3c0fd9e0000df9ac4d4af3b06de6ad90302047c435bb500673065023100900c8395e6cc3e29a5ac4e96fae2f5b79d5d10994092b2c0a3132ae3acbee99fa871e3e5ec2e39eae051d3b134fa847002306c612d29035932202c6f9c0779057835ab4825b2ee73a07b9fbeb20f5e8aa85f92be290804a73d6ef99c7400ca5c7e2b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d77999045d41ac3f0ed35b8803d1338e4716035aafbb93807ec128179e60e812148a1a129d59ca52c2a2088607dfe74c023079f3cb7b164c6a5234453cbd1dc9998a85feabf4a97b5c1cbb118f7aa4260d720809fd609b3621b1158a39a75fa497f20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310098c87837c33cbffb28f5193c94ca4c044dc538d26e1303c57803e416937678b74600181ea463f269808af38a256b2ec7023100b1752dc44dcf2ae1ff0ddb684eb3c7e0a7fea1bde80d46bf076890d361528156bd557ceea5b8b7da23ba0ac502972c7f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230401bbc840dc22bdfbf936329e1688dd5078fe1c0587d90cc33aba4929ba6e894d29e142774230564d784d0a84f290fdf023100db92eb65690492eea0a0ea30052f96f91445e5d27c1ac6d60d3574cb990d1b06a4ee35e3fb108911c810e2435eb911d10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c4e8df72c7281bdd9c6c41c9144033ffe1fd85d934685df3e5c5b24af725ce25c2d73b7dd8c9ce61d7b92d6a80400aea023100a7295b66f0b5dd25bbcfcc6a274d7acd673f53316f4e08ab4ec767b6a9ed219eb823945c3879b55a3118853ca3feffce0302047c435bb50066306402303d49bd7f259ed8abf5af7d01444480170fd5b0dfa559b72ca0c37bd46a9df24ef780dee61030b462d84937760e18c77a0230379920f0b396d36797dac45805c0bf85f364da057383644f0d4d8a127bf62586d34a44f103ef347cbccc088d58c759210302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302e82fe9ec4fdc336471852de7fa6bd25108a34461a84f6e07eebc1403263854e7078749d91c6ab414ae8614f26b011430230443a77d6bb84b5f72d92697e71377161cd8f50eb68c8974607ff239ec4c813a821dd39665222492dc25e1ff59d55e1750302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100cf56417f1852a3ccc65c83b91c2c0080781d5218af9ef1f4c52dbf8805f5ff8dfe12c53b72c9b9140222b9cf8847796f02305056819f4444f47d2b54fa27dc079767ffae055f9b4e85985cf0b736c3615afd19a873565a3ff261aa10216f98ab67860302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023005c13a3e5f87456bb3921e427a95216069a57a47ad5241d6017f8e37fb954deffcb826a2567ba3990535f610067c69390230299b0d60f09d67ad67db948b91439387e3c58d105a11c8ce8b39a3fb69154970f9d68338b6540801272ec6ce0092295a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ebe63a8e860cf6428eae3e302655e436d403399cba1c2bf2910b1b97dde434d3077991302e0e0e9d75f634d9ca72cee702306658217d94505bcce9c79ce482c077081d53f75ccaa8bb9283d45923c6c178c55b6a0e96e9643d00e34d9f22b9183b7c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b195185ec7547e0c87737a334af3ca7b2181fec9e81d9d76effd4aac36473bce5600c122d5665ae6a382da11e7bb7993023100d1aa85ef543bd9c716fc21ad048821b70647ba950065da3b3e4cb2169f05bec7f3adcdaa4a4a78543a38f72c58d5f4860302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f3e760438f6d3449d05780713248944e60f9592af0819bd3c38a4fb7c57b10c16aa1816c43516092f6da3eef770b605b02304e75686d13c3d4a1748568bb39ef7889072c3be3dae5b8ce8ea74fa00a466151e56c6fe8c0902f753b9e028ac641c2110302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302251839a8b2af6d874c10e669b323ecf38dbfc46d70811b79468fcaf434d32a6af4c6fbe60c08f11448e4055a94fc2ef0230691b26d5f8ef83b1f545260d01e683639f64d5af3d80be1cae3281565c933281f97c6e8085390e5c159a8fbd0d05ca7f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023026dafdaba637ff7e05fb82ff940149ab92b685b971b05b0353190147b121e9284205e406d65b0d6f61087a2a869cfdf602301f771023b2fd8d49ecf283c6f410cbb0976dbde13491f00494de66cfc5fbf57cd00818c69ff62f5b1089a8d2794c70420302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008c79a1acb209035c00a936c5e03688d0cd91f1009d742bae8e811fe6b9dbec65e9e49d61bbf8205a200327333d17fd6b0230555b1056e397e60de877bc564288732640b3ee833bce8e4b7f911d5cfde2130d7c1a6d52d09190364a62e71908ccb8e70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310080b7914824e7bd132af952b1a4e2a1d6618321a250aa50d10fb2f2355e621d3562e0221abfee7a3fe3cd1668f881c8b202302de6a9783a0ad3eb05bad75ed89669f03ea7d3fae14571efaf2d4dab388c4837412c6d73e5d7bfb8a68b330ae2fe3cd60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300568f2265f6191abc28e1b448d45db43cecf98143cdd59945d0c82852f20c8129a65bb0b053c32686d83a2f13f70792d0230454c56debaf650ff550c8f132b4d5b8f546c466a3840c848ac2deb4c3defda457caee4a54be7925e0bde88b10699a46f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302685b788fbfab9163ee9e9b280932badef8d0e0986e1a4845af085234a31b224cd833a76d02e197369748904d63b5da70230112b83aa31d77f72f74363c5083bd64e87f09e590a78cf1c9e8457db456f90cd0d19fe5840652fd964e647ea37e336780302047c435bb500673065023016ae47eef97a441b8640ad507f8c0ca5f0004db43f95d524f83452a015ebc0289dc39ec7b22b1fcb11715a1bae5d26a702310099fecf1469efc4b748a647a2178b53f3f435f75c55683b10a162c98919376ce8ecffd3664b67eeaf0d3bac2d3a1587380302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e80d4c34842d0e72c9461bfda826f0c81141edd86b6137931492b8e837d917d3d6f9f3eb239009c156810d80423af5b502302a7b2f2a6b17db67a20dbeea3f845c4ae2637abf486cb629ca8af13805af8bb90c924254e12af00b91964365fb753c060302047c435bb500673065023100c33323f13c878ebf9bd769884c55c2c6d860674baffdc75150e27cb225794d2cabf7c6772cf901a6118894e088424d58023012a1f7adc5df1f529e79fb5dfa7ea0c46600a317850ccaab4055e6b2e894bb9ac2b0dd700418aa56538db15cc46d09640302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310088b886ddddbf6727d052ac06284311a5c3c3f14c6897d9dfcf6a0f03495c40a3137dbe01d1e60bb6163ded248faf825f023022040ab5d1d759a5a95636ecb61114ee4af9385185468b885b6396c786c51a5901c93675771a0a97299c0353e1d5a2e40302047c435bb500673065023100a3f38f3636e5aa0cda7e7286493bf8847748397127d2060f22572e6c3b094947876bb66643f44e3f7c2db31ddf7ea3f002301a06f491e4bfcbcad4e560b1660b3e7098b628aec98684edfdc593b6f45c69dd3646b94ba0dc71f36887414c7c42cf5a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009b1367f765d52f39d0bf31d51e5eb2cc117e61430e3631e444f1ac8ab209aee447b72c8d487cc918f70383f29dd90189023100a1297b7728d48befa150390524e8c95fa9c4020eda031a1b682b33a4121b40e9e0774124208df57e51b44ea237a761c70302047c435bb5006830660231008c64c7998c74fd37a7ee31df2f0553437e6a76f667a3130f0eb547585cfacaca31616f23a09a8f32bb874151f318a90b023100f91f467da1cdb712063682755e6add8d86b17522cba05860ac6ceecdb9091a9b82431a5b8bc306942f17f020636fed270302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008ca5641538b8d91eb1f709ea295555b2f803e6ebd0c251799ade738c33f260012fdd59683bc97bdfae660b60f99c415b023041e87501e8395279fefa64fc424b04e5ba091616ddc33c0377f08d59ce564872f71453b9095d012114b63ebc62e72fe00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230635e1c71cb2afb4e5a5cfaf1c01e73736ee8549b387c2c4e7657937d20b00574db5a041454b81952ae2f78b7a36b3e24023020e04d80e4b3c480337cafce16367274cb885ace5bb8e8663215867d32541ee9c29c39a77bbd24c457c7e168b0a048840302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100fe2bee59e3286a2d0873a2dfb95b1570d192218db9a7c959ebb45226fb37e36bc4182ee2aa3dc1d1abfb1b2d8de11eb402307a5add2e12b7babc9a650295d7aea622f61342630dab621f3538202eefcc6312547ce5df1f8c83021b0f4f457d2cbbfc0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008dfd501e6630c8b1f82ce499f5fc235121595c4168590397176af6b7afcfecbe11540380b2879590e99d3666f7dbed27023060e520f7e3ed60acf3a5819e4f86be2a671d39919bf7c6800357fc451eb98ae21d8658263a72ee4751b2e575f1f9eaf10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300302eea0d324e20093522a6c7370250bee712a238f1ccd51c75f0bc53f3f51b8c33d0452bcaf97e74e47cbeaa4cf3f7d0230289d4048970484fb86c00c86adce31c7932330a747e17f502830ec2bf54564853a61250270c3fde9f00681458353be1c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100eca35d7145371e25835d4a0f9e35d2d1a76bc39c8f09544206f5e81609ffb5b9abe3cde0e99b8a03c897cddf6ce1dd6302302111ee22889f5c4571bd79c181e9351decf1bd7b4c47c221c9557aca9b474761e232d1638ce678f150ef2de3dd2022c70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100853b8ebb2c2f933d4c0ce65399d1772155b3f4d398bd36441bc70ecabda6a4fd0485b4a60999e3cdf09c629538f7d27602300b3ece83774f683590764f16bfe2279205424d39a4d315e9fdfb4cbbc51bda706e4d512a5dedaa125214c416213d22980302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100aba22d67411182979b687765ba5d11b12e6d70e82f350b9b957e8e14a87fffa7608c9dc04feab672451ca5eb5b6a3841023025bc4035ceec168324bc0ca9adf95de2adaa69f38469eeade7e51d72531006e0620d7069b00171f4292f223d5778ea400302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023011472e74781cf666dc4bc480247e03fab7ab39df86db22add3e2de9609c28bcb0441d6b75b1a6b5a7704dad9f1cdf9e1023100b62faa4e32073f1f9f6d47e70adb9ac532b2c2462bf5315784d943c034376460d0e179b79ac7c1b8aae70bf89a66161d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305c00da8c91b88c1af0ba2e19f68155906febed29a6005bc62efd21c07a99a0f0006be50716ba0abf473729c931a2a5d502303b377cb22d4c16539251c8be72dfd256f36ca12c7189e534a07e67c96a6ab92b5c6ea49a621133ec49a25ab654257a8b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300d766c6e2e3dc6c967215a09d3d0ab7b92cd2a11c6842b66585745c39f6ae18a61642f8f56a34eaf85de781d74da8a170230207834b5cca52696ba22131e5d0c456331c220421ab5ea773e0c9a72123c69cfba48fa499a6f1285959f83e05bb097710302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230072993bcbf1254ce4dd21696cb3bf19697e5d1fccbdae39dbf92cbac987421a5f716d517b3db09f0430e8ce29cc0088c02305eb8d90e883cfa0ca8da0aa36ed8ff8f530f65dd0c8977d33add86dfd3f91e0a414e54b938825b223cc06e66c939583a0302047c435bb5006730650231009396ec643c37c213766b0d56b4f39f2c22033ba8d6eab13a3b715919f89295951da40d8e5468ab033f0735bd222d9b0402301a9cad645442919076a050d42d278c8c429ad171c4bd77659e0930b3982efba9029a295a06ef96299b78fa1348eca8910302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100fa82c944929370281c97225fcf3f41a62b5863b043602f4b23a8cc63a3d36456403282d32d668d70c5eb0f9424ba192e023100940ffd44427eedbb12c25bce8b6af6e84a6aa0e49cff094c41bbf96c43917c0a1cafefa07b75e5450eef445f4d5cd4af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023065c0a0b92c7398fe831b5e2a09f7c3e948f3f8c2ba99feb06bf68140f288b4506509e6b26a9374d2b652c80748126aaa02300ef00cc06391f7452f8db2c4e7c1c09b05b3a6e2666061ed94d667215a9df1ce08838810bad9def501fc5981739ce7f20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100af6ca71f8cb275659d79238cca27c4fc6db6860d321f3afdd5485385b7f62e3cc954b7d4bf2ffcc37e698af8de3e784d023068bbf18532641c9a7bfad4ff53a132792a5c889e5a956d9cffe602d8167dc9e816070f35be5a60f0088769143564377d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009638d45363929c73548648ce39b949ddbc0955d567da410f5566f4cb1f694cca1b1301b2491bf2389b9aa6bfb6da24c20231009922a3f87ab5eb2308c743f79b3e99bb033d7095d2c5ed649d3f0b5f5900510728fd1d668f43a4bfcc2c4b9d072520ac0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023071a28debd96716f1f588725340da51f5499f9b598601500345c17ec76b48711f2ffb924e7a6d0062625ea6aa3b83085802301dd48d670c2fcad5854d76022aee7f7f9ec28877d61e472c75c39f2f810d3737325477bcf3d542fe84a71b5ea12d42730302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230400a9ddf00cdbbac13184276c7f50ebb99a048d181feb47b1a6cedc20d5b740eb5e063a9c5c56f4bfd21b0dbd9c626f9023100b792827a960bca139ce33e77ea1035ee7f4fef9b8a0ab8da918858a69acc5de37cfec60ef40998486332c16daf8532ad0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009800fd04b05c5f0a90f9c3116e10ac42276251bd9214b54ef1af4e703314f663f7e18540bbfcabfc8024cddf189309f7023100e38434c0688af0e7c526762a0cf426fa82c302423f5dcc5697809b023c4670aaea59ac3d660fee64a3565d1a897436d70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100fafdcc0601f4007fbd6419a0479f63dfc3d5152717326c2c8c47599b6e63c75d676ba13f9aca2309d2ac8016f15c2daa02301ffab2f96ff8152a88dc9eeb7512b4567345c4b4bce6be972319ae617ca802c02f77a85a943e9f395f47dedb6fc4ab7d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100acc266c3f6bc27205254701261299470ccd8ae14cae0dd1792f43453acbb659623abe694048c16376664a66de2d006b8023100e82bda47352e8ca935fce2458036a5dcae12d5b086173d4a0b130f2f3a92c2ae2156a1ecacf536d09015a6629eb1cf9e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305522400db285df3278fe028bf80af9724ff43935c4dc0e05c36f260e8393323a78fb9de5c41605d5f06f6ed60b1ff84502307d1197fd9d29dce7af5dbb9e6e927ff0eead4c99cde16216d9ffe5d08c978c74d913f3cdf568b457534eb850b74491fd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023060665583940a791636d249ba574f72a180226da2fd92959b84da622284a39dffb2d3b0344a9d9449097054f60d97dfb102307926ecd04b29cccfda7328bf18aa39f9fed0dbf6d145ebfad50d99a1a09d42f47d4cce4754bcc5f983230ca2e73c8f250302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e5d374e477ffe8431aa033b67d636c498749a3eb9c5cfd5f23285453988ff74f6b9c93928b9b8bfcbc7ae9d7e63d25a6023100bc3e8c33968bd07bde0e06f762b7161ab50532ccaff33275e3a96138a6a05955940d066bf6cfb38fcd35b2a6f63649970302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023073b746b5816a3184e9ad7b62d66ccbb4c224308466cb38d7570aaa652221940375009ef9b1327c52b472075ba6859b4f02301f41fd448d015f27d0012469f12107b03d608744581c96a8dba52ead3a9a18610b3a7e1c4371943bd572b75a8efc58790302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302a960064b1d65f0738baa491befb458ebf6ff281cc4784320b84e59e350fe138338b8697f3c6dee8c4eacdfce38d853f023100a4181f5ab1a6b03e9925da0a3ccd4b7748dbc25121efbacecdea20c371fb338490f412babc4f9c88b67d3dc9cb1aee930302047c435bb500663064023077cbc764c7967ca25c6241ef18bd07bae2e39a5de5bae7e257557f81597fcf98ab6534c21c02d906bd9b3eaa16efe02b023068da5bf528fb1ddb1a4530dfcdeebcac87bea5997381c0b3a0d344d60662ef9f2288d9617b98f96929f75a91cfddfd5b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ff2d5ac420f519225cbab5978bb2202bdc26bfc7f338727b25a3293575ff98aebafc261ba8235ffaf5da787dd519676e023100d1b2a78baf1856f8b481817fb969646d196f5088a35eaeff5cc788bb0a0c079bc418c4acda46e6a3fdc76f6f1bc4be9e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230692f2544ecb363b20895d82572d8a9f9416e1aa39f5f8ae01e758c72f6239a6d30fca3249fb42f3b4864ab388700102b023026764951e21e17ae04b02c6be00ea08b4e91ba80ee34163beb17443c50435b999461f17ba0d6551ffdefe119c3e317050302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a3f18295cf6c718cb704eda35fbdf2ce14a83615ce82742be5eea4f74b7f41dea9a246ab03eaa966a5ec6e30b11ac5700231009581bf68035796d859275443733d5c6dbbc1f04909b277d5048075b3bf911ebe208f34f98c5139bf9bccc3277570e5150302047c435bb50067306502301170ab43f9762d3f6e20684c68cd0ba720ee4b1647348cb7cd67bd0640aebdf767e28611a007bab85bd0b58b75a88065023100ad86dc9d2a51622dfef2390d1e40226d2c1fba0c0bf14aa8952baadc8fd731b2393e8fd6a58e20124a4adc9475b14fa60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bee9bd818373ea32f1d1fc6ada126b3b43b70809f9aaec9bcdbcbe93752230eb02ed5c151a7aa934cf00d6c6885c4094023063fcf61e74a17ee0f59fe40e050300b079d4ff0a58f857ae7184458729048538bba9925977688e118a2de52adb4a09d10302047c435bb500673065023100e20003eb09d61b7bedf866d2d580cca6f0ea6c0d22879859bd922686073ae66d323cf579302b29f7da4647c0a99a0a8802307468f11ab9821928e9616f098e88decf44036cd3982a743b2d54cd586dff422d27fd709e4c1dd287c8f7dba8c3219c5c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306cbcf3e54fc3037eebd37bbc688e825bc4bedf75e92f92227e96695d26c0601b8299025792a6d6bcd0665b99d6241a3c023002e1f044bf3c108d25ade3ab54757900765d79eaf9dff8996661dbea02e554438af59681cf46d4eccf5df5c8d68b3ddb0302047c435bb500683066023100f2437842154c5e5e243762fd0832a5bc15ef8ad12de9363102536e4dd4b6b5eb1ed54870f110dac02eed9faef65ff23902310088d9325221bda21d8ac2920786ba62bffa0158055dc24c1ad16077805617314f528c472346304e85afa5f66d806010f10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310082c9e49e5fc477074ede05bdbff8d8dc40a1f7500e43165b70d7a65ace685801fe84c6e40228384480a45e820dec4eb3023100d49771de971a4be1fb6712ee4e4ca0c7abf244a34624ebc31b7b365756e4013bb1c04a83b5109a5daa831f5bc83da7d10302047c435bb50066306402305cfb694734adb8c3f693d615d9e4fa4096ea719135c7d7f087dd2e42a9691eb9dd5d8ff4417ffb01c0368ea542d0f49102305fcb3b3c91c2e6f7d3b2204754ef16ec23f3e28c308805434287554327956ead61c99a5c19eb92e827b186d4d39a1f090302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307bc8b35f85ef88d59c393a143d04c2df882f210605729a172c203d475696478298b25ba131e28bc47a771a46d4cae87c0230217a5bbc3ec7a86a03f4c1f0f54d203b4c95a5a03914234a2b9c69266126358c2171a4a2d0b69f3505527a70c61cf1220302047c435bb5006730650231008939689b070e791ddf4db27a5e1f0fa507dd797e9bff7e562723a1da0852906579fa6aa0e38618e60eda7c9540991b49023034ce351e8eced583371ad0b706442e4a07d5061586bf9ddd775dd91718bc595f2df3ab2363ea22a0755f895a61d95d820302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a3e7b6c4b6d1e0b8260ce96684dd01f766868ca97c72f29c0d342fc9bc9292ec9bf3f65f38b8df6ad4dfcb8bac494185023100db9e8236e33bf3e6d04528a1527b834c7498ddb991bba4d6d90bd7e2f0511183286f8e4f6f34e21f7ebc3f4d99ccf1b70302047c435bb5006730650230491dcd63835b37a3ae82d911cc800f2009c66296d64330f0f3449acc3c84fe98a6f6daa40eee88cbee2069322e585719023100c2fb027770947becb9498421d58eeccd3a1b5b5d98664b564b5bd84bb9d59b430c758cfcb5442ea99ff1574a85e5962f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023059a55406738741e71761fead7776787b75ce0e28a3db54f1f617fb3ce8348a8910351745aa50aa3b1f1ff646e8565e7d02302d17770f4f08ba96ae08317afc9f29c4f0a7af47f417a266fe68a85a6362783464c4db9ee1d0752c51cc6abaf962cae00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100fb8ce5f2e6fc175e4f342ec80f2b2788ba2f10af03cbcb95eeb5feb1754430d2e3d261d189b5e6e84cb439b55e7083000231008656f2b232e835c5387eb5e82331336cdcda1f205137c66a3afe83ae0ef7dafe72eefdf250f9d57534cdcc4c8b0652580302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b398d77b4983e8d98a649a74db444eb0b3cf74d8342f3016eef5c0a74aa526a64d2664ae3fcc1230d0e850dcccee97de023100bec23d17000ccf7a1e5109c7d2ce300e8620028ec0d33868b6701ad8a3c5efbffb80714baab5f846ce39d4bce5d85cbd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100acf56139a46b8f6057d562eaa9609d6d00fa7ed793243b8a1aff5ee0f28a6f34d2f230c068bcc66d5d927fddcf2bc5fd02303fee116f950f229b9418aeb286de713894c5992d616272689d871204fb69e93d0517b44c39b2a906b49e95a4ab093bcb0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100976dad7a14ae10fff6b78754971635691f817ad2523383a7bb25aa8add7ab78073b719986631cd477c31ed302685a0e30230753c8269994bcf4a923e7062c9800eb1fafff7da6cdc0b407b629d7c34163635dad8fb04b176da8a4e268fdc90cbb9240302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300394d0938f53a1ea2d27eaeb37822635c2a1401c1b9bf25976b735c6e15fdc6add7b237c7ebdadc738b703ce253beafa023100fd3bba83297de0e0cc5b3ce50e54b5493f5731798c84f893a1a0202eac1235055d7725de710005d2d183869a1404e3140302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304ce3500176a126584d73872381dd79373e50a753cffbe3c01d098b78ec5c88987c16211206bb2678a64654267d6b26e2023100b347a66da2038a45d08a2a67eac1f96d1024f2a17f64ba4a7e0bb15191d5dbd06e6931a112f6ac1cedbd3298eec545f50302047c435bb5006730650230134dd2ddbbf22031ac65fd827ff2f631252d2e799a698a6869114c64fc6cc2ace5f5618384d559aa3945d2b52a3d0a39023100d94b9b70d60c313d05f8d79847ad24d0fb89a0067dec31c262f6440537e62554f2e2ad6e3c6bef839dac74f366fb958a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230523507816bfa27497a157c25141c91c8acad1dc5af1d3b50951dff0690fdf4f2cc01dd910ec66551383634620b496b74023100b842bb6bdedbde9e58565c43c607b7db6c44d1f1ba9957aacf459be9dee556f406c4a8ffbf931f51b1dc5b545171772c0302047c435bb50066306402300130942a465b1b34a386b52dc9a29a563235534dbd6209c4512bb3bc0bfa39009d9177d6ad9c0430b491875ea2bcbca80230643cb944d531b4d3c46e0da48922d40850bf4573de2d6bc6a9f8ea63fd1e4bffa2f6ee32f22f81ac2432c82cac8c014d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023049242a77318fe756af367b80959001e4c3e47b3dc856522ae8eca1bc34a66e375265c9d00e5e7a8950a89de045e97f7b02306056a24baa2fd5db44eb09524d0f9ead20c56c2748152cad15cd7d40e2fa8487e49303ec8636a07c396e8012b52a9ffd0302047c435bb50066306402304d69c5da294ee8dea7d16e04adc2f374e0d72314cf744cf251a83874d2c0a9b77429b3cdbbac9d7ed2d02a3284113baa02302b6668aaced52c5f625b117c04b36a6614f8f203a81b712b9f2fd33aaf9af91a04270ed082c1ddfcef31c4788f41a0cd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c6885c498e3040864b4b4583c16203679bfe7260b8dfa1de01a3a7cf826cf202b5ac90acb9e4759b44e042403002f007023100c94861d86114583581126c5f4226966743dfd770db8de8e3ea7b678e1417b4887ea50f3ad827fa4f2d163ba7e54b04c80302047c435bb50067306502304d8f27abf5e7c00c4038bc4b4408352f3bd9c9f6035299d9c8ee869146698d5134bb8df9b775892bcdc75f2e0058e08d023100a9c261b2519e02d1d5d40457204de27a833bcd18cd749e76b3913b693902bc05ea12db59faa0c4eeb10b673c428d22b90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e8dcbc9214c0788e90631a4d5ca30a9f4b3731a9558c1f74f4f3f3a513a5d871b45f1329383184bad2eb4a73699f01f3023030e0d47afaf61c0f71174e43d3acc830cbaaf64ad4bdbacc5a622051d18497bcd761961f490506ce695ad2b0a6f086aa0302047c435bb500673065023100b358cb510c54aa13b0e9455b20bcb04ae8333baae9d7a3f872ebdc71440127fb3cf9d399ff94d807bc4a8aee664fc652023060c72e08900da0b040c9827bd6919930c50e4fc73410047513f2f3111240b0650203a919cbb738d2706bfd6a90241df60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008c50cd22154c2c544ce5b62ca3629812ae2ce974ff017e40dd97403f470d29c32310ee1a5b630a8653d74e633d1bc0ec02307d293ef7376ff87ef5acb49b825cdccd6a207bea8cbe81928c7026191446b655d82243e37a7904486ce321c594e680c90302047c435bb500663064023003fcee9c9b5daf57f97ad4a2555ab9d66730c3417697fd11be29d357d65b7ce3d1d6d0c6d97fc9c82ffc979cfa51ad9b02300df3d4d684bbee73c6a255fa9304859fc59ac55c4b4b8ce7c103fe5209597938ac087648913da1ab7f1a86961f997ef20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a3cbce57b1499e31be66db2d9d5246ad620065ca31e9fad639560a2d4768876c15b365d22ee7ed325048ec79adf4341a023042b5104d767ced1de88cdf40f59cc18acc22d0b73c0a05aeb893189fb33fafcd82685cf3a436461505949c8b5ecc104c0302047c435bb500683066023100d008fa9abf9708c157363d6f115ca357188767acad973b0cecf47abd353ead68d711a2b6ffa1bae50453c846b8c8265f023100f6bac3cacaca312dda5a740c54e0c1712cbdb3776fdbb8c255b5283e0a43cc706ce419d8b15855c47dd3c196bdc0b3040302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310096c617cf5e2190d3087793985dc39e5ca6e45f18e2ce839068d334e95591af02fc695a685f80b4cb4c32e4485ddb734e023100811dcbd0cfd213836842718880d061d777efe9e16caa17e58a7f2a079365d512f92a4ca8005743a7dcde7567bef146470302047c435bb500673065023100a79aad551198c28191207403ffab108883eb9414248876ccb01a93561517ce1303d17e892e427ce72bc61deac416c8e70230610d760217487799007e5dcc3b07475448224be94d23915406b0ff52cbf7e875fc6466b64d0f156d7710dd0fa99dfc610302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f1287eb03a32c96b82d0805b1f1f761a3884e70a2d25db1f9f4387cee8fc0afa8338c4bbf97ea291e76c5c8a5b9587ed02303046ccc74142be55c2de61d0ca02c24ff4303dfdbcfcf72e9ed1793edbd58af0614488dbf4cc3ea7c9caeafa399aa3a50302047c435bb500673065023100b47965727e295f56a7eadaa6f578791fb83039f5ce16520235984b12c373c1de8601a50847ffbb64fd52b84afe7ea95d0230014625d5e62c7febd071224fd9dae0cd2996e1a8f8a7516537bfe35badc344519422bf7b2cf3a7e2faed5cbc135b701b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305e32d5520b91050710d6e617ab51250586603cce180450e9817948192c8e526a3fca664f57d9deb72401b75b0ad571d1023100fd7dda9a66d07877b3a871b8cd9d7ba7937a2e6813f4ca9316b320a711cac51291f3380aed1688767b4975c77d842e6d0302047c435bb500673065023100efce71af9f4fc2093545e7fe6675d9d5889c0235031a9adcaec1b3a09822fb5a75bbd65a28a37a9dfcf3a6ae846b142e023079ae8c04ceb988d3eaea830d5cae34088d2ac63b188c9bcb5ebc9499a8910c89d9435dbb03fcad70e6178c303c3c3d810302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023024641e2c10a8f5455d602d994d3254056e6c998f33c8e4e19a89014f3f3686f3314d6fec9c887899d9b67638e8bfba4a023100f6bd836e7a335360c0894fe0269fca02e6b1950b35299a3ce8103951ca94caf068b3266dd19f04a0d30c18609eab7f540302047c435bb500683066023100cd9049ba0452bdbba9c32b8a9656099726e2da99379c7c69cb9646e27eb973ed697246adca7b6e232b91cc0c5a1ae75d023100c48edc4c02d48e038ee54095b4776c2bb9b788189389bd34b3b972a744492e9420cca65517f9a72815f76cf926c419240302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301732e0ea934bca4882d011e8fefbe534bf81eb3bddf8081ad49eb8e0c2fd58a9dffb6bcefa024afcec9465adef40a684023035e8314a1ffc0a09e262808bacb891c9830c824f57ecf8ff0b722d3cc6e39625c56a3aed8ff5063837a1c64642730ed70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ba9245d7b39b6b4af725c0e29c9d41b569d9926f9e6b734d6b944d3a633260796d65b7d921d482c2ad44a730e5fecf2c02310087dfc30bd3dedf00124a8751c7fdbc9e83b19b39bedb2f43988fab09bfbf37ef25e6a100a0e60159776679fb4082e5790302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023019b1756a9b6a80a65f0de967a5125b52822bb793bfb2535d54e6efe7456177b322b9c0258cbbbc0bbe0d0aeb13ab374e023100b17b4eb137755a1c650cd27bc531b39618516d9d7c05bc6dc3ac8b7405b6e1af3f56a6483d17c5793e9851dcbc48c91c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bd210c8172c9c894d8c0ce90cdbd86f9c33caf9cea4d44e0fd6b424940ab390c41427f41a9dc1882d84aa52de0a31d1502302d21ab9f8f63159e5f65dbc34df09f1e4a49c4a732e8c8e4e3b8da35f827c50311cad08027cd11980abef35fcb83104e0302047c435bb500673065023100c6bfe3dc70a09d7eada6ac4a999be8a08d9badaa491d3f52946deba9e7231f5259a0a9f1d66cf417d7b8052a041350c50230666d599401af9eb766e281094b83effe448ca15a70925ee0ad0702cd6e3bac83f8ed214775e52c39a568070088ead7730302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e8ce259ebfcbc9182563023ae9429c7455c9cf2ed90d7fb1f8f542a505876e77dd0ac6401c56c40971651d38f748d4cc023061978b59aaf35faa990e4972fce64dd047bad2e1ec0291d9224ed56a679e8196ad4897cc108023cc1818d62cf16906b20302047c435bb500673065023100ae5f1a3f5f6c088e74d8b27cbe592ca6987cb3794622e2e5b85280eeee6cda54fb6a2449b151522a2ffe0200742bd93002305ab5d4c4f4de650d251f238764db8aea180a508a7b5451590a2116ed24bec691b97d2f2cd0dc42219c90fd0a1c46efd90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023058d9bf740e3fa8f79b9e5a2c54ef6123f818ec99c5386686e71e4ee989dbc790eedd6ec6064de8e8e8065e8471f4d77e023054529f7f7573d503310a1abef9b34737910f4475bfd7967a929471d5145d1f2e6b89daf550a4e4a1d7fedee76409412e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023057651e916afd2cd16b7603d3df89f388b06e8ad86bcebd0ca719695348cf2af7d0ed1c5905bfc6595f09e2f899d5806a023100b3b75198527a1f6fe02a2b805c5e5bcc5b6c64bb7093f25d9eb9fb4afebfb22e16709f1ebff1185175ae6739651d520f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100aaa296016aac70d8717709229d70d0d9988f6385d68acc64ebd8f069341487d09be0489f19cfb6640f8ea4dc55a844b50230752ff0f549f95270ffb8b47d2fe84d7e3d792fb31b64fdb1f56fe4713b7faf0d099d1aeeee3a4fd2e859eb242facbec90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306b76c0b9fa5a1ef76e3c13e36f28c6e2e037b8e8789f2c865ab594dd512aa24846322d3801c1a3cde26db58f6036d643023100edbd0a4fea2fb0c091d2f5d5bf3c0fd996c2f62bc3fe7e4f0b360e206dfa82e4a45049b9848aaac8a35e1177ac83afff0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e54139e19b7954d145258b96d198aea6f47190ed56565c0eabe0cd48b16331afac633b54e53944235dcdfcaaa3e96b3002307149cc84f3fa5d6c4cd8c45859f09861a4424e293ae914db73eafe7cb874e06b985dc2708c84988c6d024359f1f6e7bf0302047c435bb50066306402304b03c9a4aadee33dfbef33dfd281b452a677aa2a00638e54ba711bdf059a63d7667a0a6d7d48a24cb73956206e9ae0bf02305b9e680abb60ac137699c0db5ee211ed7834960cf641b29faa409edf361781256be8fa3c721b34f669fe01170ecc09050302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f8abcc6c883c6398bb8059c9ea4bd411d6902b33ba4a2688a587acf78eda0089ad19772082320bffd5487854d18b0486023042dacef3a7fb3ab2b5dbdc6ac32f98fbc153eedea443c26c6c9ab4f69b8881d07915069ca6459d2b19dd0b5da12e91c90302047c435bb500673065023100ecc27631393934485ac06ce1ed7b7c12fa7fa05ba8acabf3cf4d619d5f60acd735f1a9c0b4628b6295b2d8d3505bf86402307244692e66e5c2204379746cb632f8ad2e269684e75e88de8dd22f96a0897705fab17e0229da6a0036be7208fb1d91970302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d4b4dc5b734b503f1453ae9cdadb5827953df218471bcf0ebb351c3b4494a116ef711c900c4f616d968e6cc6e5318130023026a4d7739b62f0a1bb22b93093888581313d1443b4b0285dbc300ea0cc8a1ddfba3055c85451a5ff756cd25f304787e00302047c435bb500683066023100b327e451a9115813fa1d904f2afece5b8ab22b8c3fdc393af7cf4b83a2bd2cee02c970144228a6af1440fb4f7eed0083023100efa5fb78d900cfd827ac449b021284ee029343944d7d77ce3dcf0211b12b16765a90e8f3b9de0ce41f815b59fc4e7a5c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023026e8595a62349d8b8226809b4f951c39260646c8044fffd5d20ee231635bb201e292dc0ef5283005715a8b00ac5774f9023100b539958d52dc97e0df078dfc47fbfdde6c69a3281b38ce7c8f34c9cc1642562326c2d014ed5fc952a8ecb3a4950373930302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303c8c4d80442daba19825b17fe0331369994b56f5f1942bcf0688ef5035b045639ffacb6d4426a4bdc1f3daaa0184230602304b98dcb22c513038d3355a90d17800108c63387316c26301dfa4abb359e6241474675cd24d56e0b10976716c807b57440302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230536b225535da39dba7477f68d69f76a2cbf758f66a592ef473eac321098fc4fc80925b0a7e2c87d0aa0b1cb814ecac0c023100dd75716d72677f2cc7eb48d5b681c704a8ebee101ac04cbe69313f947c6274875c29b26abdc97a380e7b742ff9f6e3da0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023011f4018c8a76824dbef41c18ea4dd262d776ba5c69d61e700e50972e5dcbcd8073a04b94bbcf523b561764a44fdea993023100dbac635b22072f313a79288a9b16a0618e4d9ee4f7a47fb5349842293bbab328cc18b44dba13812e0e5f627af53dcaa10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023063a959beba6697ace3e40083af685938fc9722fcd708afcf12175d128d90df9a01157d74b1b78a48ed307d8d0404c22602307714904f07a8db2bb7faf33f3dac875e48062e0096a1a18a7837023215a2a0feafd7be906151dee1965dacf243274bb90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023058cf78dc46c4ac9e6691968a5ea85359bdb755027d26d96a2076423b0ffec3279213593b3046ddcc23eaf95f20de0655023100b40d680f31687b326ed82219372b4e0ec84fd7e1bd37a1f72ec3f0181dc21d130c195b2b5bfc7acc9474a3432ce097530302047c435bb500673065023100d2c8415b8b384af759c4654c0d5717545b4392412524865f336501850c40bc58d969257a642e3a7ad6dc5414d0d57e5602303a3d4e21a168712b68ce69749b3b6a86d2ab7598784d0d9b7e283461158dfd7fabe4142392f413360fb754c1675e8e8f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402304eb78677b20711c179bab7eba8738edc8eaecdfaa8883d9eafcf9bd8362aadd08c46080d61873c8a1a8edec8fcbf1d85023073a04319d643846fb915ec661d7b9730939b44bb30fba9644d92cd30d557e9d398207fe3c4983443787c1609ec4d38090302047c435bb500683066023100ed48037000a588e623703857ae78219e458319713d6182155f97159a8fd8e272d6d802fdcaf34bff2310ef7300b2e0f9023100ed2c8d5d77695198b7ae9d708f35d6e192200d56cc7513075a810d963edce7c47478f05ecfd98482b27f9f42fd5c7a070302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c43d0c0d918a194f7f19bb64c654de31d269d6283debce9e138c8a1b9a5f718686a281d10af7f45a963ca32a0f56db07023100bc21b999296931b978d28f4d73f45f06d3ea7bf1bfeb1503bc0f51596e3739da85ef8cc9d8129cef2226a56b9f1a87220302047c435bb5006630640230150b3f88b23be82f7612a2b3aa2779e393b14d69b2a88b3c2ea8e8be9f41b75dc26c6baeeae34c98e00beb8117c7460702305c60dc59f9512d2b1f963cc3fb259fd9a91506b22da6b9177bb8adf36188cd2909859c28d14a66b06221808b4833e60e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023031bcbf00b4455ddb2c83f917765467a7347d1fbc7ef10ac5182c29a4202c10c0911220c202a3b1e69a8b4ff2d579ffe3023100d495a539072c7511dec1366ef7be92af05e029e2dda656d6ae6745c62e0bdca25ea875107c7da4fa8e004db99980b9a70302047c435bb500683066023100e4354bf7a823544c196ca6fcbf88ac3b8c59341bd240b1eba821da8d9b35192e24de40d71be00cdde0a59e5b63195de8023100c49ad5b97784222040525e90787e8a5727b040c7deffa6de7a5b5eb1329abb50662505605c05b4d8d0faded756921ff60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023065c152792149291ab07aad64022c8f4bb953ec67d1d9517a72a0f0bf717b43961e0a7f47d42ea9e0f31555bc82cd96df0231009a0424d31bea824afa618bdd5b63d0c65b5b9aca50af0412bb698c6ed2a70cd83019bfe1129e1fca4938fa28444068610302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d21d13f2b5b38fa43605589ff3daa215c8989f227d32557dee1188bf13d36571a3b467016603795953732112ac0fb01e02305fca7b1759e30a59b2126870b36fe93e8a195644ed368d6b831331bcb10ae7381208b9ba5f4a1f9068864830d17751db0302047c435bb500673065023044c7a6a58bfeffae11b5c40ef264188668820671007ba6bc483bf9a4509fb7c7359e5f01d764f650098a8a205e9503d4023100cb3ac394ef8c39dc4af6876fce3a66bded181eab11905e61e5e48566d27f596c6c9d9fd6a503e0271916802405bbf6050302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230058e7629a0d936a446cc65d08276d0f81ba01969d47fb8a511b6dd8f9519f8305abf0ed2dd625bd8c2d187f6ff6ba54902306c4d2ae6e2b110f7700d1fd181ceb8d25a02d10f1768d76d9b50b2c1b6b63eaf41db5e93bf57a658aa59d60eba0f559f0302047c435bb500673065023006d876accd128e42acbb727d3613222d8bf4f4f98ce3c2968ab48959e4b103f01e0be5e362382079da41f61b90abdd49023100afb920d946f80b5c3cc485d13f7b7f8fde8568ce69d3190ea988f20c8e42b189e48abb8ec83a786a182f64ffa00e46370302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500653063023051bf7cc107b7d87b25b5d8d1c9bdb4edce29e4e574f8f7e58580300528b038a9e4b431821673d47f58499d71ad0128cc022f48822107eb47439eff316a37b1ba7629dd36b129f34ae1a4fa153070f1896dc7a82ef51a08bd99e08a64e99a2a843d0302047c435bb5006730650230678a340bedff36cf2f056a4b6f22fd3aed53f8d1509948474aed87e9cb5b28bb5909589be2ff0e477a07988f527adb44023100e309fb22a7e2474c1c2207d62b0e9b33f9516f1b2891b7527c6bb357434d861c33df598e5a3e3c1a90bc8e201d949a6b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a485cb298efee20dc75e8cc3cfe6c061db733777bc48d9068640e21db1a7acaf1213dc63547f4843ed1d888b52ea13a6023100f9b7900290fa2e390ec613a0294826d6d7271a9b3cbc3a33f200065bdccd61c4d5304a6a6bfb91f65e14afbca7bb76e10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009a59c8b88f51bb8f1caa7f5a1dcc050e6fec504871bb4e5d0072bfa48b77677e7ba15f1cd3886cdc47c41821b571a62b023017598046a5216cf0cf082d6a366b716f00eefacd7beea3c9f5b8ae822ca222fdc87ffef3b95d962b49d69a1aa6263fdd0302047c435bb500683066023100e795f943b7de513dec8e4083a14ab20413db6c568c7570469849b7e065698d82f4c05458e48bc1089d58c15a11d9daeb023100a2abdc11e63ac60667ace593c43079f19dbba0be3404220fb41128b9bb1d9a03e69fd5ef8da0233948b95074d30988260302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023024e711672a97d03db574fc99900020d62cec9a51fa3211e826140ffa675399d3e002c9ce69b27b3aad852a0824e99d9702303951a2789a572bbbd2142f994de1c4ed27ab5941ffb7fc06610ef2b565b5d60cb0d900559025d186f4bf887e9a0158ca0302047c435bb50066306402301e58457f6b4905a482601316b1d00b33dfa6d0e9013dd836455efc257ccf6488ed2aa71fa517dac01d09ee1bb8957dff02301e92cc781be9d9b6c4cc41705af74e8c566963a57497c7d115ff8194f245528151930a57be2a5ccf50d8015de43d88c60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100dfc640f75d7d767544ded99626307abb6611e5b2b9df0db9453067ae8405ca85817b2c68094748b4fa6f283e29b30922023100a37bc7a01790ea97110b8d80985f3eab9e1dd28724d0e155edfe8bb7e0bcd49ceb933fbbf24f2dea49459c336767622a0302047c435bb5006730650230554fe94d3773840b0bc2e89aa2568ea4faa82cdf1586de8d8cc5605d03a05292822a3f65a776b0b68621ced5badad8d4023100bad70201c84dde6f6b2aaff865fb7ef3a50f00b7ff0f660f813ad92a8e9930c26eafc862604b04392d38556003b48b920302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023075a62eefd294ae65fb58022d9c1e5639a21fb2f6b864294962a3fb3278a89979fed29a546db87e780327ce23231fd299023100d94ec1a5db4a97bdfdcb740cd226d3e96c6fad8c1eabd6dc6f144a565e45835635800fb3261920374bbf7b88d5a196090302047c435bb5006730650230669e5d3959afff11374175b2ddb99485132a5b948fee7db7cc5a5360b66474737fecb06d48e2d5b5d2785f30068f868e023100d2fc67f1e334623130520f991f9bd5d3d710bbbd3a14cdff5d202a1c2b559224207d6779aea0b167c92ffbddd84ce60b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300721d6773fc2a8b94c1375dd274bc3012892de09bc00f6a5f55c6b680958e69070bc4cf74d066bdd9f07ee62791b6868023016e8e8e0e4608227550b338a6509a6f2bd343926f46967fbc89b5aaace101a7ef90b4d4579002ac084457daacd9f76bd0302047c435bb50067306502301c0c392793853907e5ca0701b749e4c011693a85ec49669dbc346630522ea501cf41fa17dd905000fa78f34bc57f254d02310081060b4cd0d9e28fe5ea42a84914ddf55e01c308e23d13f74780c113e48bdbc890cddb5be23199d0a447da8e367edc0f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100bc64d9bd5182ed7564d8a84cbddfabe93829cbe8c79d6060b3a0bf666a45312b904223f1b4ae72248f7100f283d52e62023100baeb34354266583f49f5a7da81fb4c27f0edae09a42ec8a806054acbad341bbf0e43913a44a3d269c70d10ed4bfd37a20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023031e1dd19f0b0ab1799c4bb3306a83f1a8608db44361a01b0fac003cd044958307ae38c0f693dcbbd28de8f9bce256431023100da4a53dcae3b4a7ca25fae8318cdee05883e46a50c0136242791f4bc224c2d3b5c4798e1bf72e31dd9f0dba9d79f39fa0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306d1f2804f58849a72dac5fad138518adf1d80430ea8ef186c2c7063367eb3f54caf8c20215609c712f7cc8352058f4d902305198895ccc8f75705791ac48e879bfabdb39f7acc4e0c6bc2747cde8a1a05dcf7c74353f6811cd10806ef2dea64341a20302047c435bb500673065023100a3ad27c5ccf3fc8509654c3855b6fe4e3486365ff3d59d9049ca79006789a888ec0b1a5a8a621ac279805ba1e64bad2602303d57f2f7084cf27cb82ee8b4b58356edd1d221540223fa72e254dd1f5bae40c183947c1d2d8b923cdce97fda87d034300302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008855be10400072aadab28cc10dd05e995ef8ed7a151409ab057283cb11202f85382bfa4ce03980fc00074b76131e36c3023100bb79fb086dfbd24ceb9c7336a821a250799b3c179263693679c65349b94cef8ea4ea4ee30efe3963e2b7e49cdc06fe390302047c435bb500683066023100b85c00e715e6ea8262e939c03c20acb646fd1afc18c9566524b6e3a7a401cc2fc0a5c58c15d16e03d2bff80c2e929281023100d5cd40bb3c92b9c7285e8523ce667ff38e3728f13ab7b547ff4835b6eb8476217d5691b193974173e15e8518960df8920302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310087e83d01df77c858990b1a859ca7a13060ba293eda494c732118bff5c267ad5ef0f3ecbbaccabb10e4cb0205935bcbfa023100f9cda68d0b6df2ca0e43cb18129df447b2e998a3835afedfa2f1fe3d0a0f75418fd096c6a3b8cd19924cf53ef41aedb70302047c435bb500673065023100c0166999ce86016f95e6c243554f0bb9acb74494f4544d6a3d64dea9d8e675e59b934d8f4abdd6b644b623a8ab4af29c0230116d2327c617203ad44b7f9668d3d1782d2fbc5bed49357e2c4f5472f256e8791834cc4eb16e032051e622dd16ab94030302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230098b4bc6b856712623eb220c26ca2f3cda61ff29735aa4d306b70bd8e4c0d7d4a48d5433f8025ae53ea2854798608cda023100aadfecf66edc9ede8faadd2ee2217cc6093eb55576e6276a9bdf12e51ada6357ed228f34c2f6162c54cdbb139ac0768c0302047c435bb500683066023100b4e467377366edd25a1f6d0c1e27ddfc7f930fcee0873cf09eb7b64e866df2375bcf0238f1d291ace35fb57f4cd39128023100ed45aed6d9ef3173b996923a9291cf4da4fb8a6b6dc8070a225fec26d8e6ff5c8c43c76885fe5e475744dc1c87d38df50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023033600f2ef0b9ba3d5fc7a4e52f37fce59ec9b5d92fb8441dba61366ebd4d2d8f1f0edad8564e97a94e14e350ad3f6767023063479bd79129daa5d766ce8bdd870c28d1e8185cc989a714cb488803ba57196b7545c2a9d826dcb4f30c242cdee188a50302047c435bb50066306402307d65178ccb07f193378a5aca155c063be89eebb853c8e5a586815791e960c74d207db74180a53d7f9b65172658ed3e7002304ae5d442ed66c3ddac404786a9f54e939d3d4f874f157eb2378b34c252e7e7c6033f2b2ce23ffeb0cefd4d6d2d7ff4300302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100fc01e445371d7d6e5131c02fec66699e533b401159026945fc8b2d7578264256a154593ea8ba29a0c0e7be4aaf6a215a023100cd6aae62af7c428ac548829154d24ed7c4f09f7584006998974eef48e76dc97a1f47a790bc632b182496f15ef3ae85c80302047c435bb50066306402300b7130c61ac56ba51cb656ac6ce81ec1cf05e190bcbe013b9c7c2e5bd375f752b6b04cd92869a5076a531e562f53508e02306dc73eba1a9a4bacbda25a43a0378cb47ddcebc0327e2b473074fe948cba5acba1f59eb8b1e3412dde956830d92bae660302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a3d9451b1743404a2eb372c1b962b96aed6a2d165787c0c901e2594ec8d48bb39231306f9fadf79c6d57fed40de5da730231008b68a199f9187d31efad94cae9ac29df674b90d79a742fa7d043ac56894df23bc67a0e3dc122bbca4b56ae89c18dba750302047c435bb500683066023100f7cbecf5eb346c7af27d646cde161305f19a4c98de8f96acc3b31ec6f6e13598afc8951b53e01caa39b1ccbb0878a51c023100e0b78264b80ee823057a81108b30b35fcf0eb66a8d0139c9c375ea5129871f48cccb3dcee4836c157997ae97089053dd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100de4c02a0e724705f77fd56e31b5ddf2cf5e5f0526737a9e4d00bce2dea756b0e56245d55a1bfa306bc9cbcada0e0a8c902300756185e3331713c98ebdd7a7959392dcfe739e28619067a691082cbf399f45d08376741d9b0802685798879787554cf0302047c435bb500653063023027f662afcbfd573769f195de6235907c95015f963cf3cb1d6b66f91ea579dc6fbe3e401d4aef6f66a0cb0d94500c66bd022f567ee317e142703ea38c13cc50c88aad6d2180536f39e80384aa35e9fcb28bcb4ddd03d93465c68735659a44ddae100302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402303208d8bbe4fd9b84f85c382ead187f6e115d10891fc9afba6ad406e5e42ea20a5d5d97db2604ba919d279633b1d78de002301bf92fc9db8547d8f7ee25d2ad9c02ddb83d68850415ea54428aa1b34296d3524cc922bd250fde98916f1c48912ab45e0302047c435bb500673065023044c04c437975d103597a73b19df482af24a606e4918dec0c4f7d68c35bbfa18d8ff4801d9a2bb01e8720d20a0dd7591e023100f6e2d04fad431c60dbab8b9718a61a3c889920e78a687ba54c5fb3793e26954e13ddff5b066674004e5bd5d8df7b8e8e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023059a0aa73070652bf4462f00d691e88ba553961bc1860e0b871f431d040575a8a13837c672ebcf7b296fba5ea7aab4fb7023100d7729870c7af0e87f2362f1224dfe4374a5a5117e8c2885898d1c93ee55a949d853306674363bf49dcdad54adb3ef4900302047c435bb500683066023100fc044f4610c8af248d3f66118598edfbd265e8a158c68c5629c56c4976fcc3270e6a936b15ca70c1f67a76a29dadf100023100844b47ff7b0c5e49f31a2ccb373f0a96e21be7ae3ce683e44336921c9b999213f405d7f924f1fbcf7b7fa5d1bcd90f6c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310092d4b35c372de966db6b8bfdd4db8775c9793ed47dfe58a2b2635a404b938c565d96d85069dd2108d799814bc9e8f0b4023100a72992bc9453d2f13be7522abe963fddd76544a4d77bffeba66cd2df108af7f189e52295deb40e89ba4b369d5f1f483c0302047c435bb50067306502310098c5915b24e080a49d46fa9c5ea4a1d7c41dc9fbebb21d7497e9b8967a6f34b24c1c904daac872948394fcea8d1de5480230050baf712384625ee91436d542ddca98fd1d4af1ccabddb3480fe1eb21285a223cce231052c54a820ed8cdd533949db00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009367c55e44807f78d7e0a6b336ddcc76e808644712c8cbbbdcb59e6b36dc6c5cbb0639f5bdc1960303cd083b425d244302307c9ee65b7d0c60548991cd0f747ba59ee7a6d750d6db782b57bf2c54f236f0f67be113a5d0ef92a00d4c6ac0ccd99ae30302047c435bb500673065023100b1486a5976b32bd3b8a8f112bcc6481a28f6478592e4e386a9b52657dd4d381dbe43ac6591dbb157f6b5f3889d661da7023071e964d540ef21f4b48fedcf680388c282aefca858b4ef336c3eae85d0a2f0dbdba47232361cfdfc9ebb9d43558043930302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502307328ca35dbbf55cac51fb1a97ac9fa3489e6c0179d62ab4d3aad5948a1884fc3079f296b89f46c6648b452d83f2ae40c023100ad96e055c73c18355796d28621616b07f32875a50842ec2ebe1156996d25b1c82166a8233b083637e0c28912d80986ba0302047c435bb5006630640230050617a36b195508cc7dbb19cfdabdb1e4ce0f646cc25e6b608887522417d33bd1846bb979d104948f9da27219a3a0a7023079d1b8bf9792ad401edbbf4656e9a03c00e4b5fe85e720b034d8d4eba487c78e3245444fc2baa54e4d2aee9c2f5861970302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230644f81847f8f3690f977c2d0093dd64404a53e3e4030d830a30578ef3ed3fa80c2928b5dc97fbd416f1e6b628275041a023039c837b7fb7ef28b76d1ad622568985132e0b1527ac327d7ea0c427008cf7a631dd8db25301f2cb05c6e6ab6b10ebb150302047c435bb50067306502302eed387dfc82b14f5dd25e1b8de0f4dceb045fe3ec61f07026715014c99d82c7632caaeaaf22d2180dd3fa5307d5a1a102310088c19b9ccb6f5be01b9e9503e46ee18b8212c4ffa63cbbf69f243f13b99cad09eef270c5f87faa38536a8374ee469d230302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306586c1df91ec3e22dc123fae5c374e50a5ddde851c8a5b2668d408a240fdf804ce9e07e88455d4146dcbc8aae648c6fd023100c187fddce0c1111b25c4c4f702603f7b7df4bad3424419a0375986ce05babdd32acfb50ed52286427b4b67db1fb21a6b0302047c435bb50066306402306a289fa82c4af4222bb51d10a206eabcfa00c95830887418cae77b6043d9661a7d932df31e704656706720ffaabec38e023051c958848db7d917a6936d446777e0c10b1040505eecb74917bc4126c9a0c2ce01da28bf68bd173f7e60f29b7b68b0580302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230719ae24355f3aaa16c5397e9cd6c6a36876e2de420c785608e540817f36e918e7bc3b68abf336ebd08f3d0e399f9088d023100e539529dfec073c3da4459b3d9a7490044a8bae444d65b0c2bd990969e86dbc6fa707986913d5df4cc3ca505872261150302047c435bb500673065023100a345d615faea10a156c57462423a4a01f480f539d44c4098d5b2cdea58bbb0bba2ec6a6b1269957ec701fba4ec29909702302bb73d001959ac54742b18e6237131e9ead1a0571439e85996bb395997ef91d8ec7c5f3bc3f2a5f258d1196c89a468b30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ab052f146dfd80096e21c62691e1bda26ab9282a22d1bbd5c2ff6f9ee47762bb5b0c012693c24a1a3bd869c42616d28202304dd9695f0bc7d355ec2e57fdc503a461cd0c05983796dc2b76f5b76c5b7b54d3b78a8ab33bf5a2c296833f84fff48ecf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300960d30fc13c457544bc35883ecea7434019b45bd3545c1c1918dcefd405cf5c877013c195cd39d536e58d098e0696bc023100f69e657df0811914323052cfb7b13475c03b1ecf05f0a748e950893fd684dfc22a9b6d81cbc64a5a53a58061e1c0c7180302047c435bb500673065023100c463dbd9d58a5c68adc5fcac5bd81fd258a2b933cebae992d3e62e478fbc3ab5a5e65b41d0e9c0f004a6da977aa330e4023019462bb6c8a16eee14c04c40566a8aea6cd40cea2721c6e1483bc5ce902c7dcaeecf0562371e04d1c4bf4beef44bf74e0302047c435bb500673065023100901dfc6ab7d3d2585b1425ef064ee2bd1750d9d670cae1fc99c634538d8bd9c7115e187c6a40a0ab02d0ca08d95ec04002303c8571dd22f74641cf55aa7f4df9640dfce57e6599a53d42fc144be46f07b8911422a0354467f0f3de4133f9973d53b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310093bb19e19e1fcb4c0f71ea2ec8c368a5dcb105684d2eae52a3a64b08e89bdc772d20c76b5adb0210183abb5be71726b80230390efaabe5d7099fab4cc71bd355a70094677ac802384166d90faf1c65ed5817677060e07bdce39ae909461a793f7f9c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100874047ab87b5f7be007a91d2eaaf91f1de52fe5da6376ad4fb45786d5c4bfdfef342ceaca950b42f45daa07a66eaf3120230639cc7207135f2873d950757bd328b85dd8169d45f4cdbe2dc9dd72e77e0bc8b001fc0d575be05370765532489236bf40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008903bcbbef35a0adcd2f428596c68ea3beda23da3d29562e90b81bb71913bb9643d9f5b59f4a8ff8b40ef0340f7084f6023043f543ac8acfc69e394d4190b93da683cf40107dd6245e4dbabb596cf7c07f7a13ad17de806204d746bf5a9d0def18440302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100cb4e832af6d49d29e6c402fd154b010ca11293d26c4823213d092c1ba374ad2670899411864408fabb8975a2c0e8d4ba023100dcba4c76e87b7056c96541627d0551da4d1f0af67769c13869e0f67ef487f887e9318fefcb5352afc19113aa5b03c2160302047c435bb5006730650231008d88b1737db0ded99abefad3c8279b613b7d1ea86dad69358685c7ab8bd6b563d930305079b653630f3ac7dd3adab69e02301402dc1d12f8c804077a78bba03c8247ec1e1220e85894dbc76e20b37444e3dfe95c0e178f6e79415aa265923df3e9a10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100adf2feb180a7b3e0c81de63ef9646b4326adc433a10addb176bed30ba8009509f91cfb9df49160840ff4725bc1b7654e02306e3e2e358d4cf42bfc6208b1af22238b61af19f37266eaee4e1d185fd48b4ca6cfe4119401bbf5cd77d6ec37abfa88c00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023027c9ec39939f165557f3a814baf384a8063716fbad530dec81dc3326f8652715df0c45695f67639bb5f1ef4c92624291023036cac7251341764a5ba97ae31b20597d2c61cc647c8f4dda273223f09a2f6568adeb4b0d0e76cfb655ec3fe949fea6ef0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008109cb376683c0e8da2e60b47bf94a2403c378078c6ae928c92ab7d366d76747cdcc811b18034c06162e6125b96b4f9d0231009301e2064822ed5d7815cd9977f5195949ed072d8319cddf8f9d1cb15080d752b9631790413df6864c702eab563583250302047c435bb5006830660231008bfc94d9abeb0900aba63c26c4fe19d6519f192ab105b33d251d0dbd9bee6cc287ec466279e09434160cc28f93d848b2023100d56770261526490dcc42b5cbab5b7db51a2da732e9403343067ce9b057a1078385f4261c1f9d6fbbf69be830a5909a480302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230219a283d625cd689f49aa62af4eb425c59356e9486c914608cde4bcb8058fcc2f9ab1f70c9bad7f65dea51bf7e0a44d4023100aa99443325ca4cfef5faca942a1d1f88113dd948176754549cd91dc51cd51544173b039213981fdb4cff4c9193f8aaf20302047c435bb500673065023040965af55a0c2915eaa64b8e754d7ea2d5229bca7177dadf7cfe8577bbe0c75528781c79e9183218e784d89772ab01ed023100fcc7f4cb7e04a35de7ac22474c7248e66f7c075d544f41f9f4521e6a752c5f7f373ef083e9b86af6e37ea6cf384a18f30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230525c6d65f2541be7153cabcd40457f684459363a23d7b6fc80de21159210ffaac716e9008f590e3b37eb042978deba76023100cf72698d6bb63559807feb38d39560cdaae28a8359152515ec5fbd3f4880d507d7cf1010261fad6a89ff9b8273b183870302047c435bb500673065023100ed6156385da1ca43cd672a63b3834a88b14a190b4a3d429f1055b6271071c6ed8b2863bed2f7dae101a2198d460f6602023031d0c61490948a1e1870585c9b4fd65cc498db9c43409cc5dc3081a6c049571e37434d2fde2519a95b42a95c1c3b7c090302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d8bbae41649b627a9c1752ddb5c54741b91361a0a8a0b5b594caa7153ec543044f2a5b34107307dbe3fb0c8e882d2f0502300348b4d915f107e043f4d55e2371f97c058ff2351c3562c7704fb84af3d060301dc8b279d6fadd950da01ffda6f69de20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300eb23c539de1c0b002548bb9523f487d8e878ac16975d6193a01160993b1563e75b77d0e3ab6c6371d42cfc432a40a9c023077d9f3fc220b80d5a04efc512355deddb2d502bc2cb626dc96830ffd9dacb0c584f70d646a9e9c705be552635c502c100302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009ee83e47ac9e4edcbf0dd32694c3b3e44d87a357bac706fcdec6174f9f71d4d90ea5a2327f8f89ae20cd1909c52bd1cf023060d33b4a0a5cd2656b6c8eae4b1bd0311034eb12f90006996c20a0111c5cf84be2a6a4b76e04c9ab0e67ef172fb2f83d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023007a74c5398a83bcf75a21f7b83dcc7f1190d174ec91b49ddb0db76b1677daf8a56198d1ee28d12461111dc24e05a87b3023031b51f8dd13c0323a9f996fcc277978fb1fe519fcb4dd4350ae5d02ddde5e6ff26e03296f7e3d33ee3695159b9d06d3a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023049f96d721f8e9c2a8deddef927a42a67f6ad359f2f3a430a0f7dbd910c7067f672c3103d85b452772216bb593284ca30023100f5be34f6f2aca799b0f2abece6a3ff1ef60fe4d46c104a4bdc1c91bc39af83b4faaf15a9425aa7ae00e333eb2a86aa0a0302047c435bb500673065023016a78fdd77fee35e179605ab6cc1aac23cb520ba34f077c2287986e2f4c27bea8dda804340c4d26e9ca70d469462ad0d023100e35073a2b51a4c5c41819f788dca83b80dc87a2dd7ae17c2a9195ccdc2fc6132f1d9fc0c82317dec85db34d6ff48a1b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307251a6409129147b31dee21689496db615ee23645bb74c846ca8f1acd5a3272600206d9e02517590c978554583233e91023002f40c72e149e2c6788383c64957042ccb499187ca86f3a2a1dd1a5763f305e1501ba8ccf3ca8215a4dcd5e8aa06d2d70302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230306169514c8686af9d46bd565714b740245f60e7beab61ae3fe76103708a11a0e803790e2d52b2ad2af2118ba05fa628023100a07850c198c14cae129f23e05ef1c46cf8070dd427a58095478f0f8c558e76315b821c6c91d325696ba25bdbedd425ba0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300c58838494b50ef3ae57e9c281881e553c320edaf0d926aa11db99b469c47a374903707e45988c65f1d2b743d0cce82b0231009e3df5c4499138633d3de5bc1eb714af51bafa6d486852da60dfd1725ef26701247732e6e97f3628f0b6ef97de2936f90302047c435bb500683066023100a1dc5346352076a4acf3248a59e3c42b98858696dc8e3a0d12cc1a0fd59533ade652694b89ec58eb57106d88082476e0023100d2876f0ecebc55ba3df8dbea012a46432b2faea558998e6e177fed960eb995c9350a0f994ae0ae8517d5a0594ba4d76e0302047c435bb50066306402304a5fda56f9156338f61657f03f99b36eaf0fc89dcf1a8feeebf4e5851c009c837aef40e6be14d803fbcc1a13e90103c002305b17c8218e886afc6f66b0dc46b318a0737d50caf6271c817d354481a43e30b81ee59233d371ab603fa43bcf3b2746630302047c435bb500663064023068630835754d0a0f2caaaf0c92503afac18cad5a03c42ac375c312076354bf70801fc3bbe4c0bf6ddbf716f7912b127202301221eb5e73a6812bd6ee6d590d1e7e65290c36d2770fa435296c4ff633f6c295446a39a71b350a315acf908ff936e5e10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f36368cdf3f0b35ee4c989cb51dd4589f6559c49b45ae758262a28e694b502881a423472e98ff2f95f02f29b8339c4a502301e1547c99cb54648e8351cbbe22f52afd86f65f32c46bf05f5cb11e96081721ceb3adb1449f5ce287b99e75d30fcb0750302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305e4dcbd31664ed6ddd4f47b8e9bf8d0a280439d0f8413b2e9a652da9fc3b731d8f1bf3a60abeda34ec3a4e04d8e7d6f4023100fc11162cf54ceb9e45386465e6e65608a04c633f5df31f146d18942ef2bf657ed9c91574be1090af3d2b8f574804adff0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023069f420427ab5a30d65001456169dcce481af2c1a8e91d4d4aea92b5d981c463ca411644289a4c5b8e02bae7fdd5e24ed02303bff547cfe2ca1f4f459466d1c808f5c4ad2b3c63ca776add2f872a72725090da08a385064903a588eaef619b0e9860e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230722bd457692b838f5c2c442a0fcd7c6b28c2eefccdf9cf843aa0f0eefb9b78ea049259d3947acca8980aa65a143f5264023100c1f5cfc45f74ed36124201140b1205d2d295ffee54f479249abaa9e6a0c39bcf31c86e90254d25308b1282c0c64887cd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d9ead83e4323baa0746b598fc88bde1a7404b47e0c50b8739eeafe2775d9db7511f1507a1b2a51d8bb30df4f25f67860023100c800beea0bd2f637e7080407982615817f4082332147c3e9f359f796d68909d6a3abc4bab0808ca0f17b9d391283ec0b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023000f80c08e5fb2b781ecfaaa6a99140e8e828f64627e3d87a541b7fd7014c606176e74119fa3db4d819c44511a31d1b72023063a9e0fdb1b7b9ea3ac36b1de6829b7c553f0937662b7c982f06200b6ab840db9581079e2e2dac533bba4598626d6ef40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023076ccbf0f6dc94883e5d1d4d699869446bd1e5f9d359fc738aa26962e3f68cdb45f1e9d509d72d07daa49b9e619601d6402306cdcc3b363650a7bf9eff5ae4564f8d324e87e7faa6cc10fcac31429e64466bdf3357460d3d2ad33779c80ab8f22a8a30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100fa3586161200764617b2ef23805908742691bcb983f4fc68d83d7cae1a7c12117ec197c987f3f8031d3ca46c405e5e7b023022b08cbc9a20603383e6df875386d617ed90f345d23a12be2c69817dfc4e51a04f6a74b5e0b3526d656c181b8525bc030302047c435bb500673065023100b1f56e43051fdccce7d864cc7dc7ed619d813fefb6ee935b35cbba5e0b4bbc94e771c80b1552b5df7ed37d3ed42b73c1023011ae5a77d3b6a53aa87a786ec894f0dfa105c24938cb8862256cfbc57bcd6130f5676109d000f16628e4ebacc29800480302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230540daa0c530fbe85ddd23cef6d2a743871a22e40ce66d35a3e4886bb55c170b5d338e7f0841dcf25167688840c4cf8600230570cdf868105b713d9e0c90b6ea7f120f646d24cfa057a17bf872fe03e1524f05922e4ec63bc2f03b2ecc1138a342db80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023001499b651fa3d540fdbac1802e976df3365339c8001d6cb0e0cc82994e00c2bb9d2432b392b6a245b9bada21a94a2b1102310095c10d3525a2dc45305a44994e605fdb751f0913ec4b602f0ad15a91f995ec25b23b712d1af025c787e18e12440bc4230302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306f55af141199e7e5d9f454649adcc761a9c136c356c6bc1568703cb2761d324a8410b35b6a50a0f8dcfcb08cba44117f023100cc925c80ffda975223a63a5024e8511dcae7b11030d06cfba8ecd9300a760098d3244dac1869fc0e8a40e1083bcf6dac0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023037b736f181c431106eeab9a15da4443c2d2d2e52e59262e1f9ead1476e487559b6e4b92b93c8e1feb93a16e2abfe977b023100ac9cb54c1d5cbccd79bdd642ad296371a725eb2acd0eefa3eac4bc0facf83db9b5418eed0fe20e46e8a56133388d19a60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300bff05445f3c7953e6198401cfbdd24bd410586c4fffa19e873d132224a51890133bb7da0e2695f6acdb64aa92914d1c02306ebb021d76c0e75af199e37abe5a68325d8b03d26fbf6a5325cc175b9220e2fa65d707bc153fd748c4744bbd1307ef9d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100af55956ac9e0246312a02929ca0140fffe8ed709897ee4470db202ccd57e0594b98878666579606dfd27715d00c2e515023100e5e3b8f19d4b2ba62c8cb2ea7601232d4299a8f9bcc0ac8539715fb9b3e81e6e152b448901bf7099b0360a3eef25b15a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023068720d8593bf2f066ad558a39e023dc0dd0381e751cf84e1addcbc4a3fd6218868878add306c3de7757c14a9c42015220230317f0a68d9f8be8ded139a7e4656f4a99c1217e417b6d4ba74e4b5a8fa27fda703301d9d23c5d221acad3f9875adce1c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b29e63901d054f46cfa9f1af2f0d45a36b92ed4293c11e96e3a9e41d753ca7bec4da9085d41e313cd1022a3869638ba2023100d268648830730fa39a0f36ed3240539aa3b0ce7e7a4ee3f0b8ac2315cdfcdc0fda4281bea9dd74d0da4f02de272d50f10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023075042e3b8542e39f3bba845a779977a9576bf02d537f997ae11b026555d71b0787ebbbb813781e06fe5e58a1c8a3ca6102306ec6612fa9d84ca8f76f1049b482e30e829fed1ff7de5df7f15ba12d91ccd8bdf45e865ca3fe1328dbb391a5aaa4be0d0302047c435bb500673065023100bfb1ac8e7843d1fdaf9c6ff404b6fc05c599b1f4fab0a6fa6ebcacc0fad3aaa2ad66e72361d77fd4e01ff3ea74aea20f02307f72f039cf730e577142299e89e4aeaef99a6375447c24fb5d1bc5ceb05358361b15b6e0ee605d9ae006f5e3e1adcd510302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d1bb50033702e7955819261cd1508c6d264ce8ba4fe7cbf91750ad82f45e5c8840b7ec7a740d47c3c7b27c2f6c9e5177023100d1b62586690c0aefcc0f945ad107d77f579ad595dc2461ead31f6c1c7738a40a0e1ca0bc503ed7086304eaace57f41900302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230791f4de08718a321a0675837bfa53f0af9cc5dffb03225ff80c8aeaf54c0045ef5a0f285f908654413e9f48c3c6d86a0023100ca9649c9265652bcacd94970e21009729b941b676f6ece184401ba5fad9fda11c3839e37a287764f4d5ffd01de1d98f20302047c435bb500673065023100a1d2314bcc212459ba969c9acc6621b64f7a688ea173047077073f6e0b571552f0abec83ac0680a0dbb506755ea081e4023013abf74d878dda1ab1d51d1a2a8c818ff7ad7569fafc4c8176e034ee2cd3b3086c7be260af2281138b5ca011dc6297d80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023059b3cabd8fc9eef68c48ff710a9df80f3ea08c09c6b65eb1931b895a0e9db659a07e39c5bd2835ce42f4c6b7e9d8300e023076a27806bf78e1ff54fc2e1e7a88ea87a2c6ccdb0ac7d6008f8fb9cc7a93270013c1e1ca51bb406c25bf34a21f3caab60302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023012f8f162df9558d3015a14657136d645de839e8196c6b4746ed885b7eb0803ae13cc630e3d3bea215e6468e3cf40104d023066fbf76862472298b8d8ebb2bbf32d1f4cea69facd487999004c489bdfcbe916e4a9e2d01b1e6e7e6718a7d22fa0595d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d3d7244d97942c96ec4a3e5d03494c6041dcf4b5c795a3b8ed07484c729d4f5a2e2aad66bab17b04098f0bfe7b3d58f6023056a3fadf99be0ee519457dfee844b2c3b4d3f67dae1f0e58a337a07d8ce81f5b00f3c9fe25bc90ed4d92ad66fdf372750302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c6d9980eb44511276616a37536e4415ddb3e6f68cd72edf5127f16be916728944e085237be8a42c6db36cba77c009fae0230375f7c2fad66d0c1760b717aaf989bd63fb3720443fb9e467a0e480fdc5ca2e778872d8df535c9cf2173b742a16441200302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100fd21395969c8cd4f0712cf7e558db9a440555e03efb462674175f7ef8a6df69b46760f29793b9076592f74880253f7d202300ff11bbca2cbcb268ed565e52744c7b2646e25a9d1e02c75e6dc601fd688ac05471b7f65f84f3fd2bed7535d17ec282d0302047c435bb500673065023100d85a199717cff0ecea69b4bfc8fafd5f49eb17724ade4147cd0a6f6b88be3c938181638896517a8fc9f9a51266683c2102303586e7958cf382e85038a5ed6960a73f7fcf5a83069ef33ede1ae3f2df2c3817f149ee99f63912304b7d460204a052f60302047c435bb500683066023100ba65072364cdedf9edce09a057b3081f97b4cd24bcb87791fe1d642c0e89ea6dcdcd1c58c2aa3c13d09be8235639858b023100d49fea8bbdf78af86421cec9bac044e09940f3551e8711a0b6b769a72a720476e496fa46337f65506302101599b69fb80302047c435bb500683066023100e666ee0446160b39bea78447b29bce718e15cad7c9ced0be7b40f8b697008035066fbb99781facc3163f02e72f7a2000023100a94e6ffceda3c1042d6934fdaf5442bc6822df99320443ca120d6b1116357b295479a055cd087948475a22028cda30280302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305d534de3d516c195a40228935693004f9647505681b56b90e547d19ab2fc2ab406cb181bcb9da63c38f818f8fb18fa03023046d6342f5e0136562a1520fbccccc9af53fbfc5acfae9c5e2a63dfd96228aa3ac149caff2743f9efed1479d517236d320302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023032113e886d03c610d006feb6b8ed56a2d4f108487427c27bbc2cca67a921859d3a0aaa5709c7c6851f7961eac78cb93402301a2cbecf134971e9c2c28d6f14f5c052d8f8c1de43ed7f8ce7f9cbd22c3cbfbc51b0bd56c6334851523eee381047071a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230757d1f726fc5ceeafb5fecfbe47c9b94fc9cc0f30d610e293f076e4d114f056758d2773f873677a90d76524622269696023056b00dbef38dfa063a2e88fff72a1777d6bdb6f037f8b51606418c2f807a31c374f71b0a54e7f35969813a54cc11aa820302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023073750d1eb461fa87f26797256ca0ea97584aa025890fad4f72e9b4154f3f2144eab448e0049b987ec00b5e05d6ba904f023100bd29478219c4fada11619f037da9151569feb32af1b7359477149d3170f914e73deab670b4348c566e0c7beb4606a4240302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100dcaa9da14a67df0a35f19fb8d5499e5e5c2f402682431f2af5bf256faeb102f3cb6242ec5b2d16cc312cb0851ee011ee023076e7c9eeb59788d433e7305d2abd0404f34be4ac7d3736f2a9e8a87611bd7d9388ea59f5add22f92dae80ca0797b796f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300eb2fa75ef0204a6147a82247db83b1b9b4d152f36d918bd0909b1e1b532303978b973e4ee1b3a55869188a72f38c205023100bb477f9bf00c886876993d3af6f23dabf8a2afbc521d004a52ffe30d108e51f14e937b5cca9ea55e29d6baae39352ae50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230757d1f726fc5ceeafb5fecfbe47c9b94fc9cc0f30d610e293f076e4d114f056758d2773f873677a90d76524622269696023056b00dbef38dfa063a2e88fff72a1777d6bdb6f037f8b51606418c2f807a31c374f71b0a54e7f35969813a54cc11aa820302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100be52f642b2557423b1f61c2329d92db8a46affc7a01983f9ee480f2b25e9dc3f92c2b4ca004537399abf06c1261afb5c023002d661455488454c014f4eaec3b50024eb14c0ac1c31c641350a2f398c54bbb352b2097f51cfcfd93be761011b09056b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009e9d87fbacb54760fc8daf2be10934e00080a2555782f5f1d37cc42daab011cc9ad882d7d8134a7e2e0148e9b0ba3e3402303a7c515f7a36ba7f044670449683df6b8cd9c9043ce4aa9f90cc1bd4fb1424b65a9b7eb2e25d476ec4c85f115b6e4d4f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230757d1f726fc5ceeafb5fecfbe47c9b94fc9cc0f30d610e293f076e4d114f056758d2773f873677a90d76524622269696023056b00dbef38dfa063a2e88fff72a1777d6bdb6f037f8b51606418c2f807a31c374f71b0a54e7f35969813a54cc11aa820302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023063cd3500aca593c107325e37387d243e2630357d42d18f92a2df5e240fd42de1d76dc7ee161c92adeb4cccfad1aa0f2d023100f34309fd9f065936b162b3808b67e3aec084f0bbbed4ad4f756d88c7fe7f4964957f6bcf58593bc6e04b8baa305769010302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304a7b26533f26b1c01723d6ebcec5ead68a834970764943933dbc84d2f03293e464222ff150e0b67879eb82ef06890cfc023100b26cb31bb5cda49fb4ae9d01b812276d29df62d4b72e80c2edc3f030375818d56cc8c40cf12ed3d28302b83006a3fb2d0302047c435bb50066306402301cf99e679cae151a4c26c47679e90e27d78a0e4f47676b43a8e52a8785c3bbc8c996dbb2c5f501917e958c5157708ba1023068538864572627e7fa4411212d853219e875d822c955ed739428144d31c1e0267680805506d7a414ad4e915dda3829820302047c435bb500673065023100a8affcc4e5022703035f4d28ac1373c16403ccb1eb3059e0f5b94ec176ac505cffe0a75b49b7267f731b5e49b765b143023025a50dc59507c686f09e2134845f845215e3ebfa520ff40eda291f055085272f4ae5ffc1312a88e04a6f5ed3e592b6cf0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310080f7c183d4fcf6de0bec0500936fe8f6fa09a1b21bfda405ae26d84f91995ea4ecdf4b5fe410b43c7a7b12763b98653e02310086d0517cda290050b5d17abfbbfc27bbf52c2dd6a5e32fba235ad4b1ae04aeafccacafc6d751dbc9f3e8e799561590f80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009846c561305db0621902c10f42b3f78187f180230b2d2971cbf7e0b98ea4a0e118dcf0e3c7074399dccce1d1225520b50230782d79c64989cbb2ac302451ef9cd22c8b98a9e48bc48d350b4d3c1297ded6461cee8a905027b6fb4b6b2190b90fecee0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c3c058ebaf02a4a929ee6ee8297e2d5adde5f7870e3602beb96c444669075e50878c6736c6a1d206a4ea1584faa7e63002307856648bf2efc3383e3da07571269d9204d2cc779c96a60dad6629228ba013e23baec5b813a1d45801adac4bc162cbd80302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c2bcfb704b18f84dacfcf946b7a3a971f24f2874e3138eb6c7977be1791c31685a2446bc0a60805bd7729b07bdf76739023021b0e33610dd4167b9dda21929567f55de574443a96afa8984ea8681c751e74388f2383ae6061beea13197a47ebb1f510302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a042616af2bd448f121dcd7de934b645080700db256c6354fd19defce22bd868ccdebe6a6afff752f29bea6fadb0695c023020a441814773897f7027f40294e9447d46aae4503782556af4be2f983ae83a1285cafa1f114d13bc3c7a152c54ddf2b20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100928e39e8a192038de4363e0e1aa9542e594976794092f203330e5000eb06a6b7a99af5cf2cc3b75e5b7c601ad2afe1bb023100e63e8f68dcdddb2115c1db193bf7e109650239c75d755430fb97895a766ce5b81dc6c25ab33bc23ff2790822d5827be30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303ff7c7c69f813b8ca79c18b1bed608fc7c640db4fcc64cb2f5f55300fb67cee9a16222b857692c30188636f0c4ea8c37023100a716bea83d9a6857a40229da86f7765017acd4c06e904c77a1e16555e6fdd87d6a78dd9246c3416226d72ed7202b91a10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230632dccae72d4725dd0eadf962753ff07e3e5e53e1673fc96e9d87215f944495e9f083b41ed75fcbe592dcdb6fe8e882602302abe7caf8ba564a063e81f91044131fc62634e15389d7d325d0734408e54a35ec68f9db2f496851a0e57153a0deae1130302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310093eb0781e6d31c376942a54c52c40537c3d3935d1b726496ed5b9a23ead6a4231a453403e803cf4ab3493271eb6edd3302305f5d9a4d772166d877326d1dab0264c68f4234c4bd3961f580fc2db7a6cdfa17c46adcad6736213bc6ca8ef150d3f8440302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230535aaa53bf401ca3e58b44130f2566a5ead25f5a51b36ad21efa3e13f3d489e9c9b5c0c13e2a7c82897319652227ba280230588c3abaa630a7aa01fe9c42bb2872099bb40a5ea6e10305f99dafcd00ba16f1e42aefffa988aa9d38a9d9156452d26c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301c94e295e2ffb8237492e1b9db472988a4cc313b3f5662974533c9014e4743bf0660800cc895da02e53b75376c8441b3023031c9322b170e5e4eb381934146e2fe3bb930319eedf3f51aef8f3e98fe661fb267f3cc3445b2274c56c02e74e1e8441b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bc3372cc6672702cbd3d0e09cb57ccf361a549ce0bd19ca38eed27cd2bbafcbae6b2c26fc2e427f130b5a5d77331d2c2023046d85709c4308e8c680f7ce6cf123ef27eb3df3bedf14ccc359c95ac5ac04400ddd7e69f35f211a6fdfde865072723030302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306b90b788199f259ec4a865e256a98d04b8e4aa3949a56d3d4eb9d895c4ac67264a9013430805e418cefa2d6f0810f04602303d799062570fbcdf532c00bc5e59900893e38d04e8884ae612fa7033583707344106002c2988811c53eead3fa66af8050302047c435bb5006630640230155ad9fc61eef467fda8f7278070c40515b1033d1df30600e4d72bb8947a5a7d71f7ecd6c618c4c6f1ec6c594de6926a02303f353c0709e60ff7287073c3dad772f37fc96fafffd8013f19812f9f2fac55a50cfd828498a4b4a7ca7bd91bb92e27980302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023053ec01d4f5f2e8a608228aeafa30b3e72295d62a347aa96de5ec396a82701ded5676bcdfeffbf4cfbc7f0356cdc473e6023100f3b271e35c66f15d2bbab340a36b109b9fc52f8bce3f5e27e065c8dccfad75d7fda512da531d50b30a7a46087a96eee00302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100c1b1ec69cd796d0fbe99d3a33d91c7ddfe56cc52271e9c910bdd30d21803af3559536871833dc0114ca825c50e178e08023100b0eba70627167ba01c4b9d324a08ab4cf2461bb424be112a3839fa19d2550939258272830f672c9c47af6f994a1d90700302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023053fe31671e0c55879620fe3fe42ba135f55fdee512c085030d79649067bd900f365e42c7204daa1b35f4e53a86b2d52c02303405157b8af34e5bb615b0a6a268ac4645e1b734def47b1fc68562f7d37fff07b513f145e494aceab89a87c6ecd17bf30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e3a016603e3e35a4bc5b05782f0a1802ffc1760a99cd9fc4073dac87a7b3ced6e85482d54885b346476f684455867efb023100a4a9e0c025dcc205c975c5b6576395cd8c9a59a37b90e698438ac5781e2ddea2e6c90abfc82753ca0c5b94f473eda1160302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e9a40bc9ad3efac1cf880fe1a59fbd2820efd29eaef76511173b19fa4f8894fcbe60a829fd93bc7c905a734d3ab34311023100fa8dd3d67c43a76ab8656454f9ecd64a4eed6d0dac7c31800b7524fda3913827f0dfe3522ffb648e1f368bd0e973e75e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300f55d1ed59395dfcc23444f781e39f051c691f2c8993e3abb93515e83cb9da83774c58fe25f1300505d25a6e7077faf2023100fb0da6e5cb904d1daab63b4f38085465d1fc72602792af39cd1c1d21c436535fa05f5dc7d0031e6f07494064eafaa4ce0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023065fb0da86d278ed1a6b4e2c1524e228101cf6d97b21ac8e5c289b8f2e4c5ba46ed4225473ba491eb1d442ed1e15a186802300c09a46a738a05ce7f2bd3befb6fa6aedca1d66b7c3734001059d584927e1e81b843482f6280ecf3f71eff92e41803990302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023016a1724f992a77985e6e6926a7cd032c83eabdded7be6c8c393637b32ed2dfcf79e7788c45aed25d86f20214bcf668e6023100b2d67746e7cc6ffeabb67888b65053321f52cd21e3d45290f686e4dd86efa8040f10fe133d24026a5d29e7befaf7ec600302047c435bb50067306502304abf4a4059d141f2e2a7e82ea8142929b21860da097aa89b301fedbf41cd53c04f0fba3f3b8e7cec1818230bdf0e50fc023100eb9ed99a069a467b45991857b39946782847f7361a61bd610a4ec2bc0f49fb91c15e256922f6e6e872480f3378fa31aa0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009d7dfbeda0675b5bb2dcf92cca8daf6c8118851d2707e4fb1845fa53b030f3d8dcc5f8f20c4a339d55f37e88141a79fb023100c41e8ab2e8f14b98d5aba524e98d6992540f7dc812439afed5d32203a9ef7198572f0938c3cd719ac692aaa5bb82ec4a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302b4f338d0782c5f1cd645e1cc8884438bbf7d6176879b1ff3bd3aaf987813ed39079108d7b37b188f62861e235c5584b023001298cecd5bbd79f1acb39f43f9dec1e932392d73d42685c42abe378dff651426155b567aa551dee93272161abf587730302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a1efdf031821bfe53a40a32c9f94c066fca8601b2eb64a28cda0925d7eb726ff555a4da0ff7c32157e6df86f2cd62dd9023100b7de9404eea19f5bc9aa776ff4875713a14cb0a9d685ea7ca2fe607aa7475299bde8ee3815dd4b7937eb729e39bc61590302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502302ba0c4ba324f1161c17e695830a5363878e72e4f8b4f8cf22a3ca45a35770c6d7e52ba2d648928b2295bb1d6441a18a0023100cb02e861ec88181fc4b2ff946b0564591f37eae2ce1c0abba1dd3349ead85c6228d33ba39c49088e5e15c22ea22f2a5b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230352942b439d643edddabb637d7fd0d52780f62e02e78bdb4968fae0913e1aebbd849dcf32bea6e94d37c7394c27db68b023100b37fa06ed3135aa005a16a9f8733e1ad0ce4de0fca6d299a2661ec397b3ee356e65810e6cf57272f91420c30e5dd927c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e892a0434697c678be6b21053c032fbbd931d85058db01f00fdfce0a7801384c7942639c574ee28880fc9a291975dc4f023100c04e184d6a82c6376a9bcd67f2bfadb5a2639e98b43c669a56998da0d923a509997d3d2b159901373489aa0e1783a12b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306e5c3f77d6c422a3eb6f2ef9f238e6fa2f98eb56b2e4c73334036451f303f6a5b3e9233e773fdc6c58c55bf9d08afd2602300858853ae4c8bf7f7cc8293c4e166efbc5717ae3ebb37511eb623cf861397c1d42804dfd4449917ee793ebf094fceba40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306ff1a085003e7be7d8b5bbeab01eda081611344aedb912929ee0c7b211375514e342df4f2e81373ba1bd6458e5eaf80902310097a39160f50a4b9c8db3cc9ebc3e8fe8bc7bcf7d4fa68693aa8a2bb1462d1c68e224bd06c877f9f5abe750c09e24d3660302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d57de0e5120ef208ff1e6c589af0b4b49751bd15c6591910b3feaa66b6393e494366566c0688bfa21eeeedf2df88e2e302304b64fe420123135b043ec8340b17c019b94aeb74111228d06d7e8fad2cf3a4aacc0bba9947b2a7ba06d52ad837ab69100302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100eaa4e217dec3c13fdeacaefd5d785961c88cceafd06d5a138e18bd2237cf9080625f85763d6dc4c002eb68b129eb16dd023100865ee477b2c31988feb607699ac6937bec5bb0e1cb731c57b848bf4acf666782baa95a3f3030e225147a4cc135844a070302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300c4fc8dfb9df3af32e912f8feb455d4f987f066cce5dc6f4d0be76c5c3b99da47c0e3a206fb5975eac29485306d9204802303bd73274fa4c805731d4ecc0698bc489e3e0f414ac1cfd2a3a4c9340cc1ada759046a65f6f6a2af7cb87776bd5e3e4950302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009406f921b2e53ee118a84230a8d86bdb7d8a9f9053af004d2fa094e48e46f5e6084febb7ac5d7801c4d690b74abfa746023100f4b6a94aceb431218f28cb1be7a6fd4d6e04a6152411f816304732ed544ed7f9a02216a83da92a993741b3055f188ff90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100cd7a9b43e28bdcf112598f8f3cc82bfbaa10125c29efcdd51eb673d9e733cac7703ca8e369ca6ec98102b41f583ce949023100aa54723e80ccf3b294a76d3aae936c8e28c9aa63d37a6a3eff7d666210b8d7425845e3d45eb206d28128d033d849c42e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100aa5a3cafc95526b98ad9c993648186e2339316590a2f6ba936ead52189be98534225b352f4642d795da0d8ce4f4d22e1023100ba06a95c14411b5cf645370070d0880b64f8f27b8cc6807f44d1c37fc938d894d1f318c6303ea63dea22df18aef15e9a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a4fef082d08c8713b9a3481e298983eafcda3741e006f1835d8e5a689a9d273b70eee60d57c568aa74a8ec99c7e2382a02300b4459e84839567b02d13dbd428f4f39a1ec5fbe83f197a8f6b841295060e43ee93ea924b48db3affd588cb61bf9a6ad0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023010f90507d5145929002c448f708f566bf90642e5dab9875180dc384c5607bc6c11a04285dae76f7081719c0048315a3702300e18b1a760b98d27027fd7b42675c1db5c054ec9527b828cd5950d4d7c403aaf13acad7f4bb4b58cb46150d053e549c20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230211be5fcca78272594f1493a86da81021e1a641772a05bc834287d53655c8e9009f26e91b22513e202d0938cf6013e68023011e612a5b0a318e6c46053c12ea51927981f50e4cc00e8943db904b57252e0c79648345d19518ae9f01fa1e4b648a4ef0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b64241ebdbac2d9fb34fd05a92755c580c77e1af2752ce3b003c4d89ca2a768089f9421ee042b3aee015956943c332e6023100b740146965a795df56cbe54c96f63dc56040a0cd1b24ce2169d9c5ae584f8ccd24cb9a818c2467e8e34eef042db66f1a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230013b4d0b66c67514b71b64e7660166d16946fefc3e50f8fe697e910e83f859f115339ad787a593dab45bc81bff28760002305c1436401e01fc2e97ae98bd0bd4dd0fa46873e80a7a5a35df2fb446f37caf76e538abb99e9a7165cd32417a13e776010302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305d6bf9c9bd999ea14d4ced45d6f28f5ec014739cc689a3c5b7b3dd1d24e5e9bd5614950c8274561c3957430fce554aed02302c7b49526e5383472633b985cd7652ec76a7c70cdee8c826fe99e1027468abe50dda06f57001715c04fc4ad62d40f52b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b137d21e5c9b2755a20da83b46532a2656b489f36e1865fbc466426cb551fe363d0b78de9c97a165919d09c47f726e1e023100eebb275d91008912845acd7341f45f6a8d246180bc69d206700425c7c1c80424946128ccee6b7b80a77d6720073e26120302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230643e2d3f412c3ae1e36c59cf5a2cebb2f13b9c57f92d935bd0cb66fcbfc523f3355873a8746c2769308821ad0f58350802310091d64f12a778a5f5bb791ed18811f998940d6278c2e670c66491eaefeae928169312bf4c36f1592f0c72720df335bf800302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230675b386a95853fd1cf4794170bb5cd589493dcb8b98a7c440a6a6b2173e9a84a38aa409c5908197953dc335ef33afd850231009c6b47951f355b6e61d76d2ec71a84c3a7adbf64fb6789260b4e29709807714d0f38b8406aba3c346e9a1970e5077d8a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502301071daa9c871baab542b907f1671b2525a884f6c4de0b91e765bf4d043571def552ba87268ca4a53c0ac60f92993df100231008f1f25a81f4367fbb8e037e30ad0215bc8c17bc5e5d4da567ea9a3b0b7239c7d4d9571a4cc82a71b37603015819a0d2f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502305f34e5056e1a42287429eb9017db11bcb7a81cc1f56ad8b5ee8f229d8754046bf0294fe8f1f08306f1e5479cf839b542023100c6e028d3915ab3677aab14e23bfa42e12c3763849cd6719160b15bd6e3ba864624b2bd341d954e372f884d929a8ca94f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303fffd5b43affe99e4c6cc857ecf1425498349170b531e3045588cc877e3e24515807e815d0359733cd26f9fc2a5dcb60023100daf02dc91a355c1a71747139d0e5b623ba44a99d7cf205d41a0d53ebe298e29a9fadfaa194ddf70db4e5e360e8b73dde0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310098c73ca0c7935162d530e79f1d02f014cac3cfe4bbac5d65338e7743b46e1985a22d07e037005e24795e45635227e07e02304311cf2c5b579005e74025318750e7b48b06be8483416c593acf7bb420db95363244fd37d0bc9a42cc84345a1b0380480302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230462c81790f14336d0552c4b3cfe440b35c1c5e0dd5db41c92c2d5868961e1b07858f1e0060033d42322c56e44e85c954023018c1bce3be36fbc4697759acbb604277b594d7afd5ae78dcb95950d860dc4884747fa17a804c677ad47d4eaab4cf598b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100bace0f18a1ae26b18695fabb4d52476d2967ee72bd9741d884c9691882229ea5eafcbdedf06a93099aa3419280fd88b0023100c1038f2e847a424226a1007b0243f5c82f8a82f4afc87a2f5da2670b4f1a9474fa48e5bb57d5671af6e8d0d5e5b1297c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402305ecb5de6e6efab3fa6a4f5449cc848950c27c63d28fe1793412627281a8caa30575f1ed8693335b975ac45c2d582fedf023034d48dc93c33ea0ae1fc7d132a8ccaa7132297e7d136b76e3bd87ca6e0b3c28df6490721686b4de5af13e067ee8463c30302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231008733e1d0247756dfdbd0db8e34b7697bd8fdf12e24f0c617076cabb6044c7527f93a398c1f5cf3b6a44979d3fba1737602306eb8dbc0f22b5cf196f4a4e22e4dc26ad6639f68eafb2f1c7601b049c6729049443cdc136ee7769aecf17fc22fd603ec0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300db29226657e8c3facf9744a4314d249ad920cc15ec29c0b64455d143691aaff0ca764b52981dba91139c61506d8526302306a2442160f5eb9182d7ddae1286ee54231a238e6e88fc75fdc6f0e418db3fa8fff6fc6da642859f2cc7fead30de49eb20302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650230319cca09401c0dd027272b354661998f98205ee5127371ea95e5b0a8c3828a8ef4e2ba8b84c00c6f776304e94df3a9420231008e7009a53e50b829d332030af52d2a3ed0116be74ebb1cb074b0bdf4bd6070b8a02a485d225c3335810b4afd51784b6a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306fd678477f5bc28c0dd9ecdf5364f73385cb8741ebf2b908b891ab30da55b258263194e5a21c85c5df23e7a8e1e17714023001d6fb15986b31848cbd270f6af28506622f97ff333aa2acbe41293ecb6b48c41feb6083acd85962ddb63873a5219d4f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100a51f653be838b84a6716fbbaf556a7b5a2f7526b00e707b0ad22ffe1cb64d34e96c814e52c2c59d7c91191c3f38c9b7c023100ee99a90dac9fa0c00865fc8ba63f45eac0fdc10f40497f008e99ed31d441a2f7c0d38a0dc8b1486e5176f826f949bf1a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230766de83fbd45e9210e2ea40330723317b94d76cb76f778f2dbe0d0de8343da4e096fcf10937118a7d745621fa69e083102302b89cb0542a67ec66f5387cf5a54a847fecae549767e0534f6d992b9f82c98c05fb3f21bc6eb7ec25be8f38bdd2515db0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b9b5a0627f7f84b32bb8c4839eb33054403b317c262408653ce348a0176a0b865ba807a0a415e1157cd45af36ecc58b2023075cb8a92db274d14886a160174d451e2e73a10da2f777249d50633f0c4c86349ed1525a26793984100acd31bb8fbc2650302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023071bdd7027def44a863875ddfc081afb18b4d056476ae70522929a0e7983bb6a9650c6c2015bffeb2b4ed59fd9e1018770230080fabe0a6d3fdde05a9c9038558c5a50b9c73dc49e6949a4dc6a29b0a9216cbc404a3d9b1852e90eda14ccb7ef913460302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009ab289f8ba7843988c95609674fb814ada1ba8c6dfad26a384899dfe5b62da844dbbfea0033322e09737497ff0fc735f02303c008b96e1e7e14c428adcfa38e21ebf8f85eae5a4a586ea4eaca3fee2dff197d0e2189eb261b6c42427bd61ff4bb2870302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307075f81b16292641b741f7154b1cd2a782b9e338859af277b01b7f99250c237c8baee45410dce94bdd73ea626612819302300745ae65558327891ab95115dd365d2e5c35864b15d3a437b2e1cc2b70082410189a5aba34706ae4af791ab71f6eb9070302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023060bcaa4629896950e5f208d1e6a6b9c6f77feadd648fbffb3feae53fa992ddecc16e0001e57052b341b1d49bee74623102306b3fd6f9b3dc2d643e77943a41df92ab33ef3da0a2965bcf215cd39f8ff6c9a31e8995196244fb362706c9dd487e8bd90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301940af4bd42e9c9c24935955e847e2c943426c0d8c1a1976db6bb0a360f22b1d335d2f464881b2b38742dc2a6644e55202300525aad2448890657954142eca1075cfaf0c05284a844e6f3e38b32dec3c24eee865d5f1f1a21dc29471f0f790c5cff50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304e8d89b7d2d3b89baaa6db2e8a062db0626c6a52a46e12a7d13cbb3b7d76806e9382f2706440373be4a35b6653de325e023100f36c04cb43f1f561dba3ccb8553bae48b582dd89ecad41d7b6017c55a117ab177496fe4ae13d435ac16a8949b5bcb8e40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307fb64116c406ee584388625006196647f64bee918e0bfb4942bfc4284d755a96e1d274e3ad053602b751d3839703dd1c02300740823ec560b302c9273f2598c98f79cef7d6da3bd9fb321141dbb7bce57e488646c8a99332222866a6fb251ce047290302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310094da54c3b77eee81fd03f55616f94a89900443efab9bca5e595c4a1098db5aa5fb5b9f1dd05e184f7f0595d80df28eb2023100b18e25b4549307524dc94f980daaa26ffc26603177e0839c1ecb5233e0f9afa48a13e6bbf92dd3caa825ef883ee85b6b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ae56fb4a2d10253735e407fc046f6a39a59ff735279bc161b62e15f4d0c7b41371292922d99d0369567af666a9583922023100894274b15a5ca29978e237018204d9b5d44f6adcddd0992c76b75e5f511763829a2eb9c48652631b226b114e202ac4d40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231009ea03748d32f17bead21dc027cc5e75f7532da75f35b834bcaab30d7c412b1afc292758f3fbb7f2acd8a7228b05876fa023100e1020290ac050cdb70a43e09d6e68dec9abb056fef282b51ef197c03bf66da8c1e656721abb97e0044bfa694a27ce13d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307196a83271553503bf5351cf9cb05b04fa5fec7ad9b2ca0d85ac80ca2b1cf7b6facd489f818c11c44948701b2d39035d0230059500798f4dad51a4066ebbb3cfda0d77cc751e59171dcd637685fda90305143e94d4ad075297647c452b9cdc4425230302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e96a803b4e24d5438b4596b3522f742943d6593aab21f61b3431214d9d539be76b799a751bc540be8a61ad29ae17ce6602303742d5d2196cbdb72dbb0dc2a355e09301274141e2e516d1cc440de7c56bbbb5ec1d3f2ce1fee3b359a8baf709b8e4ff0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302d349f2481c9af1b15a7a91b97b7c5144ce50eb2c99e4c28f9d0ef431dfa570ce7af8359d793ac34d8176bc8ad185e6e02306481e05efec95cfdb63e3afb7e4172f9a99a98d479d027122b46a1345fae9a7d374ec37f19331e933d5d4f078f1a9db50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023056f4e1f65abb38906c5da2032f2754cad48af76b0392b9dcfefefc51e49c0b5930ebf3378c4b3a28c6b0534abc92fa2e0230335c9fa036195324985593fe14131d1d35b2497c0de2599d1dcd41154dfb6911d70947c3738388d801d870f9dcec6dd50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100cd347ccf321aac173e5580bfa3898d606c985109b9495323a035d409df69d44d1855e26cb7e7f697d01fba7e4e2f16fe0230011790e7e53f255e4ecb7d3b1bcc7246724337a8539c8f8d50cdd1e9bf7d9b62050b241d7e943d50057ab16df8d0777a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d9eb0f874e6af57d41628c98eca3ccc63e56a4703091a68a4868a96f280d9321a0799cd2c0e79ab6505fcfd455d740dc02306f69d6dd03d81893443384889f136146c4eb9f9f1b514a4895e97c1f11b795472305cf13a4e3ebcdcfa2beb222f88f8b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230562370392d75e8f0e435217487258e3c2b659c6c4d866a310be72e4ae57448b51d20ae78a34170db5b2c82d19464b8610230115362208c9bacf39a83e5d6f345a538cdbaea9af3e2375171e0b3b6cf92f02771f1752473c22e8873afde688632b4730302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b4ea2b37311f5255f7ff734d43e908991461f7da363aa0f1e9fb2eb682608a297e05e81a806761e9d07fcf02a15b68b6023100a3ae53896436302d968240603c1dd1235635bc88193bb8f6637eb41b7c787ef7966fafaab6aeb6109810b3716561de4e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023018fe9ef140a6566309f68a5031ea2022a265c7a5a9190ebb0294621079a442eb80956b7f637765b623e1e0837d403adf0231009b55a06d5cb32d334f88372c5afd85d1df2685775527ea06715e16cf2fb6af1fad12f1a8d135dcc819268679bb55d3dd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bf41234654b0d61c2bb6876eaa8c51cda9e563a7740215309ebfc3ca730eead3dc5654ff6f1268bbf32d42571b1af4a6023055d236b370312f852fa80e7b87d08d0626fde8d144ca4f88628b785473c6ac3b340a1833822090f3900a3393c33e6f870302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306470d4a2c91b6e289468725c4b03adbb5f1d495e7ba7776177e115b310b5a87877cd8e4ab0bbc52da5bbf9d8768eee66023100dfa15f6e70b14778b09423aaa1c841c90beac275b0ca9a87c603148798c91ad98e074c10c669ad19b4147d1994cf677e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502303bac573b0b0fee49b9d9a34884504e3e8e063363305457cbd33df3069d5ba9fd0c22577d4099aca881c0e3b03b49cecf02310080164484b586387184aed22886d5199c8d84129e6372cdf7a1b46f71515659a97f42351538b5423728a3dae4f9cbff480302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100edd980d8f6396abbb5f492ad8c71c0470fe74f9c0767180b3cde858fa44b701a3f34dd35739322d7516343c4bc2fb44c023069734ca7f26500e059fd77f36f4649581cc5592f6929d4d427c3fba6566bd2dd94a3f70b21fce26d91713be2f7b7ab350302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008c40f45b7beb419ccf09379f3a3a008225db2260ae650835c6b4cc7d7b1ea7f74e347f93144b0446e178d43ac73128d7023100a1f5a92b4e583ac2af5772163588497fcf5c3e2fac46830760f3949aca05c8d3b0214a865cc9bf0e099ae2d6e53264b40302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302f6effadb93d0a36636b52103a7319e82957ff106b7c5b1793a96b80f7420bd416e331af4a520a67e98e9c488228115502301a8d78211fb2c73b770bf8fa87d4e4f3009e23b3a9f27a61a745d9fd98b799f5b14d6534530d3f1b33386b1bd41133290302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023070a382cb5864a257cf52e4c35761e924a0af95a408fc799536a89988d0f59346299b7ed84bf31d479423078a6a5815e302310098a945847493a5a92eada31c983a497c72fed4d36c7e2226fee90236264d31d34f7133ca7ebf6ff118dc7ae6db1ac5000302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100f6127c8369b3417a7d3b60874cc2a1a9584c6624e0050452aad64870b2925ec4fc94ff3366c19fb9e45ad012bf44aaca023100ebfea0f6171c746480c46575f273aafac0fcb6de83d71f01cfff8fae54128857f0bd16e19311ba76d91b4261c5ce6a290302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306ecf561b185f389c36cd675a9ade57e47115e97ab420c795b11a8d763cb3f4ef7662d558dcd904b45143dd1e80813fe2023100f94ff77d39cb376db4377519f45adea809adcc12d036e3e18f977947aa2d56b024ff411522f1b72844978c99ac982a580302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230727049992a33f0a8cdbd158e254b6e9c8d3f8e8e56cd1abb81b9da45786869ca0a9df1dedcaa92d5cb0eaf164de4554602300a178de68bfe0c49a806c13f9229ae4242b8b6a119191c14b590ea7bed9f972d64bea2adadf04c3da6811f0b4b4b2e9b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d27348ae8c647fa8b1e7bdabc2cae101d80f231c20eb074dba9fa7716c734c12209593871273de333891e2432e5ab970023100c576b224c245de7f72451e0d970c8d8e00b9c930941d25c8d9c0f070a4c19f1d6516fd47c3e4da05e853ae3cd92c0b410302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300122509eb6d1c855cda05ad4ce1ef76b695df7a921f71e5703bbfa088dbfb96e3d10ae176a1c9d38e05a5fdc0e98b6fb023100b3c23d5cc893961a2c57295bc2cddd722fc85bd52c669fc5415f7b6d563ba0e9383d103d10187b6c5ff2d71bdeda23ee0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023065964d7f1442b3c58146dc8d02120d5b761874aedcbd9d604cc33697b58c48346c7938f167b6f0f0d21e83236e53e931023100a0a689c97b01c95533bf2b68509d7730c39c8776dadc47372e7312e60f80cf87d2289ab16fedb5156b414a31b0ccdc310302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502310082c9fbcb4e88b5dd4e1b243b364be25081db7b952b0ec6ff8d569a79369c19d228bf571b68961d6599d6a456a7fe9d8902307e796474c88345f5a13ea823a811ac405b2b980dac9fe996402079e0d7aaac336e3495a8863afdb978c08be1f101279c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100e4313ba61092f03b8a267b95db109a8964218846614452baff4b71083b39f6a956743a9c19590aa6c7ae147d52e161c0023100e62853f14905c41c86fbbdc0bbbf27831f8c92e8144d675f99b7dfadfd0e8c64037b06542eadd595f5682e5fd6a787f50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304600d727aafd9a0d06c1bd4ae4e504efd25e12d7d1865814729b97b37e7a5b3d3cff03456319212c95026070f02c470c023100f775ea659792f9ed7db23b015e9772357cad3ef1d15ac8446087130c5d2ba9a524e3c51eb2f84de33afa6bd151aa2ef50302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230533947c0672b0ba81af4225c17db2cd4ca676daa72a2723cd6759f09c478a244e3f9c4d302560fd35101740e5e963dda023079aa09abeab54d37b3edb21c7ae7be9aaf9ed5ba1b08ebb997f34353f863b5184b74283c29219f342e3f1a9e0d8697d10302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100d475e3bc8751958118730622465215e6b61c98e0ce69f413b02d4a20e5423cda50eef9c56123efc17044dcab3bb1b553023100b0d033489add95e13b3466528222f9c7fc72df23ebe387ac5da8c8854b264501be1498d4ca5cc9c358937970794243980302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006730650231009a43aee8f58103a8b2a9d5505780a2b957d15ce8a102ce7374c231649f26caf7d432ed44f6fa4423318bf3230ae0a50b02301226fc1d48dc0ffa6b6a568dfe649e3e1265433b9d3e6da87821c44b86a0493964a9ab647179824cb602124b1d5451870302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100cd23723348b61e87b452a07c1e4cb5c43c1c5c9dcbe7f317db939f16eb84aa6fc164012e80d4c79fee0c0650ea5cd80c02310099ba256cb3248428bb0a6a5171b9451cf2590914917a191b56b2976e9c584292cb193f1b414df7df9e7f6416117bd2d90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023040a249a4f5eb77c5aea81a052f6efc0e7c418f35c164ba1386e4a8787650dbdc5f90f8a04283b9d08d6c849edf1e4cce023100ea0ce61f6e2f7fab29cfcef1682b15dcfb87664b301de0470edc5d3b93d0777c314e11c90bf985c9b40f6eea30ee13240302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402307e405e84238fb28af8592f3af1de82efc352dff403e80befb2e6da356512a59b0f381f78ad922b94227c8d1844f697bc02306dc06e488c26e636e26933a2185bfcef7f13f8726697c29fe4917ad7dc23fcf22154fa1340c69ff83b81f7896805f4db0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100b1562333b68f544b5e2e52d2c53efb55fb9818fa137a15f2681931f31da29c2b02962ca81d7e70540df598314c1512e6023100b06c2567d3cb48110f9b61469309df8a3657aec2d1ab918a164d78d1d152bb576985bdb1d90794fb5224e75abd29558e0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100ea2ae3040ba5b6bb74e1603ed25d762534a6917c94234727c5afb295e38f2bbcc3f7779e25ffeebc0aa404f1614cf6df02303ac64b63cc1c082b1774a676937578dcefa067ef81f6bc33016201307e7d72c364fe27a73dc96c86eb999f0580cf0a810302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402300a7a19f9db2eb5c09ec788f4713f5831bfac13962126a9aec7ac5938009e974f1056ed69349b64ac8077d49cecede56d02303aad2647bd1a3e511a8535497455f97c16117e351417421be9662425e72013abf988099bf052e6ea92bd7a7d487d99820302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023045bbe0567dedab12fd99b5bb38c8b6e1355f39560fff5967cd58f61ad220d0c2ab2cccc76464831d48f2da419425036d02300294eb64c06e26409d011654c96afebd77a7de2d8d4921e0ed312517adb43ee613d1c8a2e61a63a6c9a119b9453789110302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310099144a6fe1aa57530291e9ce99fc31fad4fab9d06f4270d8104124e3245cc5e8f9421058777c21c6699d21fa463a2049023100809275aff07f1a930994ed2a30bed1de4305dedb14d415e8b8924dfe31a32363573c5b5a79229a4c587630e796bcd4320302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100db4328cdd3ae33ee4a1df5401867255e391c00b6da46d9cb842cd643516f72371b262499263ae5da38b2935d1c7839c002310095e67e16fbe35690ce537b34752a69c3824df0b9431447ecb36389ef895e22d6c277fed41d30eb6170abb04ad7cbf6960302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023047199200eca134282ba3fe711a2ad3f64e1b078edebcb71f3b0f51323b821f226544828f84ad3fdfe5a673a68d7cccb6023100fc4ababaa13b2d468bc1a12fe95fba6ca18ec286a1ca3879633065dc1a5a7a30a863a0c084d777917980d8397fb1f1250302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023016a91308c3b33490ef13a11a29d75b5a0c4ff5c9f291f7b37049ef6c3c4d7061213efd6ef417fc5334e5205978c56a2802310097fac727c872881da9adab0879174cc6b38773eec3b3ccae994da19a15d286f8763aef0ef3d6f3afdd72b31f07b2bd1a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502300191a8bf4937e1355f649b6de66d858261debe469a8e8bff7df5ae8e172cc7433273a6c14eb11ee1dd2a7e3f18f63af40231008e67e62b113dd7712c06af82f1771b2e3c88048bc22bd41c45338703de032a785c61e25927a2866b949b8bcb6543963c0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230250e877c433e9994ec43a7ef770a4f8823eafb5464d32576de3fa623fe4d6bfc58b324fd4d6a4438bcf3aaf9f7f563c60230468a416e86b2ebdd6faad7eb82939e0f8449a25e44ee483a2e950a683c0eae4c759ba58eefeef55ac9d4d166f32ff6150302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100800e609e8213a8394dc0916be208775beb9cd0c122138d469b2411ef9aed1749cfdf25dec7f1f20738c95cc0da875f88023100b85878a786b2b181a931b27598ec8df29ab6b2b8bc5bc48650e68f8adc08669837065d16e47a2bd446a2907b12fd97200302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304bd2fc1fcb14a1acfc2cfbb82eb5df946892036cc925c492c06605bbacde7d29d66b7b815d0fae1d75daf3791653ab40023100f4053deee3937a4932a1ba5e9a8befe62ac2d3821797bd98b2ad49ca2220a3408b997568da0e294300333b9d6d03c78d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402301b2fe34ed09d63747719426621b3a12f0533f30c2a87967d6d422624672670b98da508c746f2f09f9016262d2c20d01d023052a8343fbf4fbf76bec47e6baceecd35e4e5f2539a2cb921adc0ffb385c80b8534866fb1305949925ce6be914ee3c3890302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100ce433c408548650e912ece813b75d488339e23ea181371c54c9e0012bf3441698e5ae38dd6cb03abd4014c88f5c909d8023100b00ff1683951b598a436d04ee2039e68d531c86874e76a9db6b6f5501deb7fc0dd9b0846334b1bd1151ca7b590206a490302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502306eb2698502bcc801bc8ad221c0d090a71e5241956bce9c1c830e40745f71ac9b2342bf86ac899e3adcd969ce0e82afe6023100bf21afdff6fae4d5674fc648d06de93628bb9a8c05331eec93ff19131c921bb68b8e476bd60555a087d51869482f7be90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064022f493a91324da2af36caaf5aa9f925fa7ffd90a5046f847b385a51c17d8f6f69ff1d27e36b33cb1906eb44bc99071502023100c489572d97d21c153bd76421244c4bec3fd4eb05af712bbbfce4572c651650a2ea69d8b350f680efbc3f436c32eb30030302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500663064023077cd6cf44546839f5e742e18bd9d4bb08003a3b095dae2f27f114645a2a330df98afd8ef9301b655ccecf0c40b2003c502304aaec455324d556db5c18279aefd45b304e5d525fea150398e3a88f1e6d8e00da3acf678e58348081c7907352df2c8e90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100854ac72939d1fbb89539c5350bfad7733478a1a239c8e0ab2e12e461630ae4cb5dcbb79623cb56f6bd5ba80ee9c40c5802300bc9977e2a7e4033265cc498a3e0bad97fe686834900b7a883b5acd52900bf306bb4a6c3482db868212d4659f93047f90302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100bbee9b184484e9c421146b16690cdd5d573a564fd0c1f05544346146ad5330a835016dd8c5a1a00d267515b09e5a5d2b023005b1c4cb8e131088fff4f08f0550e9f69e408cb812db5b557b2ee0893f3ee3be04c51c072f294c3032bc47cc1b42b8140302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100a6c3480490e5e64e351872d6c0a2c87cabc6b909877d30c90b67eb65fbf0776f0a5cc44f61f57519de5c30cd6615fcbd02301401a53166afff33efd2ad8fbb09a1d19fd54e62fd2714af999182aab22e39cc11790c3924125f2e751752b216d63f0b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100f0057c5532a9f4b448e7a7c18353cea0e67d97d6412f69647fdf4c0434fc550dbf1e05beb60a7ea233c6bed4c87525050230712948689993f3ce5c4350f4b257446147408beff0711731d94d9e53aca209c2f1219c20e3cca8082f761cb56646078a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50068306602310096d4cfc87bf8ce5a9a70b42bc28b0ef9b6b14fe53a40edfd5c55a0c6d36f7cda68a23c105c4dd5b608e479a936a72da6023100cca7ecbea62f5bc9cc1fc4d5c1f0d8f617e506e0027a56d0f7cc38f39c0b82981337f19f90e88e8eb4972ebf1461e57f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b9855aa89f14326b4c1886399108b05dabe58caccb3dfba30062c02822210a892942c83af8779f5673e8df02d7f2ac290230338bc5e7d36c8b1f03fd830a0060889778fec6bbcb88f8a92e93ac6999f25c48883d9102d6a77d938142fe0a910c278b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023024591f48204352e95887aeb985942b127aa28f7b971b70b09abd4aa737afbf514df8e9d108aa9b7b7a0dd59254ddc596023100c4c7808060baf49858803b8fc59fa22aaffd2fb935dd34f9d7a65ddac3a488c81188aa4351051bceabfa255fcf6af96d0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402306cf6939d902b04de6ac2da8701f815dc457a836ce8ae197fe131a32724ea819a5f8bb6e2b405653f46e9a3d289b2c56c0230745bb4467f810197067b54b6808b76f301d74739a8a7ca35ab9df46cbe55485f09164e4e15fe83e1092a832ef7fa9d7b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100e85427caed317101502e6daf1e835fd8a77ff9f8fcbb11f287250733543dc3ec792d30e1f56028b051e98a69cb07616902304231f8128da063d4e47397618c754a6b94d5117cf3b459f46c53b64f57b5c45122cd7371bcd7f42f972c772fc581887b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100b1e9dab354d9830df62ac5ee32a90521566eb2c1be2f3c6fe3fa963e6dc12d8aceadb67a81d1961adcff13adf55a9b07023059ba100a06cc7569b10589d05432b2a58c8664d73f8a5aca2efed5d3ec306fddb94517036502f01cc925d29d5ecb76760302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100d4eaedaa601932bbc5e7c0070e2921ef554e34c7dea55ca4dd9f64c2c1a23a9b7efc4fcd46c0316f52acc565e34b5d5902306d5b3383fa7ff00f8ad8a56cb0855d0128761773742a73e5fb4dd845c5410a81bdcf363efbd81235c7d6af7fb8d8dd0b0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006630640230224aced42f7dc6a6e5f7191d307e42ec9ccf4d45edc8452ed6fcd0b8333f72c895a3166df2a1b8505878f3f647cf0a3102303afc6a3cb406328ae6445274b458b0cb7c1e33c56cb9c7720017c8bff75b42962023f7db5b872a0db3debf3d8fcf15700302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500673065023100c590468a867aaa81eb61116043ec307b397114949e929437742c54a390d12a8993781a31c43b0ce47bbe61034b1b572402305e11b0f8f3028c9cee48364ec083bfec4634d2d6d22fb83744064cadd8efcb64a3655ec9897401a2e5a1b997869e672f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb5006830660231008179871382c07463ba45954c9d02c73166c8570b44c775760b5a46222b926df576f1f39dce29c2ce0fb917a6d0766e33023100e8b8de14e85d08f8f3f89059818b697a31dea3e21ca991a5f7766fb3642d73392e076049dc65858570998df52aaaa8680302047c435bb5006730650230607b2f98f061687d45bf27f64155ff34a1cd6db7ee0a203626c641520c82525b4ecc8594285f965617d70bf1626c41f4023100d514a84f227a386225fdf8ee98226a5aa56e5c2369ca24e55ca07c4596d091d3305200248ca1a007238af31f6c8f012f0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50067306502304b50cd3fd538070e564cb2cfa586d0cf9184610a0e224fd873ab40e8bdc53cdc67a9917e2bbf50400dac202255a75b6e023100ecfa64a06edc904780aa8fb1145b479bb080e1518656278ada4e90072eb1ec786ac75d55b3955631eb6946f97c40c4cd0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb50066306402302bf7d9688e16ffee95ebe07331e6307ef96e536e2abdb082c2f65c0a06e5956504320d309e8472d4eb3e5343de9d61d50230200831a210daecbd2e3176b507bf9b2ec3cfecd8a02ff2de3bb1ccc4a9815da837c3d45b2b9e8dd17e17f93577aa41cf0302047c435bb500663064023044a03a366d95275c5d24cee763d4d556e9bc5a28dd0bc618e33de93e6a39c666fd084f0e26b8c02fc95fbecc37962b8502307cfd0cb51e17b886cc31441c074335105e5f5c29f573bfa3f537f6236fed76bcec5cdbedd569f2864e5d14af4de18a2a0302047c435bb500673065023043209bb0f16cfc42c83146f06a741ffa6f2dcf5cee1c6a7323664ca613ea4f788dd654bfc81487bde080880d65b926f4023100a89cf6897c89e9c9243105ae5b4d26995a4bdb8ffab9cd075266e0ec4e67a4467d33f82b68db79f204ff648bd54b09af0302047c435bb500683066023100cd2be92579281a19ed1ecb9327f5413b979a2306b813941ebd28f0487aecc7ce715d0c25d42ea7d1f74ae79c54d3627b023100b6cfc144cfaa4f12237e1f70acef50187678f9d75c2ce6895c9dd9e259cfd1de23e429000e5601635b7c5fc7acd75fd10302047c435bb50067306502306516f259f55782527e8a63751bb9b7ef89f2b3f416279a8894cad6d7c684b29da05e23d8ade5e2796985917369a40f3c023100edc9f91f516dc1939eaa3ab1cf6ee63b4823e734e0e04811bb17c85287fc3ec387c6d78e08798cd2a8e40f74a1c71b720302047c435bb50066306402302e29ffd1a56035b1a8d035575eb6f5e8fd95fc9f385aa4f32f2f6887e2f333474120de6cf871ba32419c4161a09ba7ab0230520e415b4be69e5d4ca8364f0f13f9d0aaf4c4fe9c1e618fe7e025a96d9a94ed38674000de8c8be53b9defcd800f54f90302047c435bb500673065023100d94e97291ea26fd1d88b0d46bddc2e3dbd2a41920d0b8a2761177980ddb8314ac7bb7a6c2e0654b8e251ceb456f82b5d0230139ab948014c752c38598ce9cb5a7a8db9923406a2b8549f5b7b315a70b673c35668922c8ea238eda7359a7fb01be437w:`e^ U]c65jׄ' QHH+hX2>w42V67c=߉x_x KI{}]",-\p3k8r{ź L~drR繂ElBOVHZ1uHӉ{6Ek 2Pc!B(N/#XOX:4:h͚QYLx;>p>=h?=Xd  b ? RlH$H H FH hH ?H HHH"@HL`(8y9ly:5y> GHH* HIL,HXY\ H]H^K<bdefltHuHv+*<<<<= ==TCkernel-devel4.18.0546.el8Development package for building kernel modules to match the kernelThis package provides kernel headers and makefiles sufficient to build modules against the kernel package.e^ppc64le-04.stream.rdu2.redhat.comPCentOSCentOSGPLv2 and Redistributable, no modification permittedbuilder@centos.orgSystem Environment/Kernelhttp://www.kernel.org/linuxppc64leif [ -f /etc/sysconfig/kernel ] then . /etc/sysconfig/kernel || exit $? fi if [ "$HARDLINK" != "no" -a -x /usr/sbin/hardlink ] then (cd /usr/src/kernels/4.18.0-546.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 Qi<&$|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\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>dH+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~%=E:;M-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'3F)A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤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큤eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee,eteeeeeeeeeeeeeeteteeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteteeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee0e0eeeeeeeeeeeee,e,eeeeeeeeteteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee*eteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeteeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeteeeeeeeeeee*eee+eee+ee*eee*ee*e*ee*eeee*eee*ee+ee+e*e*ee+e+e+ee+e*ee*eee+e+ee+e*e*ee*e*ee*ee*ee*e*ee+ee+e+ee*eee*ee*ee*ee*e*eee+e+e+ee*e*eee*ee*ee*ee+ee+eee*e*ee*ee*ee*e*e*ee*ee+ee+e+e+ee*ee*e*e*eee*e*e*eeee+e*eeeee*e*ee*eee*e*ee*ee*ee*eee*e*eee+e*ee+ee*e*e*ee+e*e*e*ee*e*ee*e*e*ee+e+ee*e*ee+e+e+eee*ee*e*ee*e*ee+eeee*eee*eee+eeeeee*eeeeee+eeeee*ee*eeeeee*ee*ee*ee*e*ee*eeee+eee+eee*e*ee+ee*ee*ee*e*eeee*e*eeeee+eeeee*e*ee*ee+ee*eeee*e*eee+e+ee+e+ee*eeee+ee+eeee*eeee*eee*ee*ee*eeee*eeee+eeeeeeeee+eeeee+ee*eee*eeee+eee+eee*eeeee+e+e+ee*e*e*ee+e+ee*eee+eee+ee+ee*eee*eee+e+eee*e*ee+ee+e*eeeeeeeeeee*eeeeeeee*eeee+eee*ee*ee*ee+ee*e*eee+eeee*ee*ee*eeeeeeeee+eeeeee+eeeeeeeeee*eeee*eeeeee+ee+e+ee*ee*e*eee+ee*eee+e*eeee*ee*eeee*eee*eee*eeee+eeee*eee+eeeeeee+eee*ee+ee*ee+e*ee*e*ee*e*ee*ee*e*ee+ee+e+ee+ee*eee*ee*ee+e+ee+ee*ee*ee*e*ee*ee+eeeeee+eeeeeeeee*ee*ee*ee*e*ee*eeeee*ee*e+eeee*ee+ee*e*eee*eee*eee*e*eee*eee*ee*ee*e*eee*ee+eee*ee*eeeee*ee*ee*ee*ee*eee+e*eeeee*e*eee*eee*e*e*e*eee*ee+e*ee*e*ee+e*eeeeeeeeee*ee*eeee+eeee*eee*eee+ee*eeee*eeeee*e*ee+eeeeeeeeeee+eeeeeee*eeee+eeeeeeeeeeeeeeeeee*ee*eee*ee+eeee*eee*eeeeeeeeeee*eeeeee+eeeeeeeeee+eeeeeeeee+eeeeeeeeeee*eeeeeeeeeeeeeeee*eee*ee+eeeeeeeeeeee*ee*e*eeeeeee*ee+eeeeee*ee+eee+e+eee+ee+eee*eeeeee+ee*eeeee+eeeeeee+ee*eee*e*ee*e*ee*ee+ee*ee*e*ee+ee+ee+eee*eee*eeee*eee*eee+e*eee+eeeeeeeee*eeee+eeeeee*eeeee*eeeeee+e+eeee*eee+eeeeee*ee*ee+ee*ee*ee*eee+ee+eee+eeeeeee+ee*e*ee*ee*eee*e*ee+e+ee+eee*e*ee+eee*ee*e*eee+ee*e*eee+eee+eee*eee*eeee*eeee*eee*ee*eeee*ee*eeee+eeeee+eeee*eeee*e*eeeeee+eeeeeeeeeeeeeeeeeeeeeeeeeeee*ee*eee*eee+eeeeeeeeeeeeeeeeeee*eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee+eeee*eeeee+eee*eeeeeeeeee+eeeee+eeeeeeeeeeeee+e+eeeee*eee*eeeeeeeeee*e*eee*ee*ee*eee+ee+ee+eee+eeee+eeeee*ee+eee*e*ee*ee*ee+eee*eeeeee*ee*eee*ee*ee*e*ee*ee*ee+e*ee*eee+ee*e*ee*eee*eee*e*ee+ee+ee*e+eeee*ee+eee+eeeee+ee*eee*eee+eee*eeee*eeee+eeeeeee*eee*ee+ee*e*ee*eeeee*eee*eeee*e*eee*ee*ee*e*ee*ee*eeeee+e+eeeee*ee+eeee+ee+eee*e*eee*ee+eee+eeee*eee*e*eee*ee*eee+ee+eee+eee+ee*eeeeee+eee*eee*ee+ee*ee*ee*e*ee*e*ee*ee+eeee*ee*e*ee*e*ee*ee*eeeeee+eeeee+ee*eee*ee*eee+ee+e*eee*e*ee*ee*eee*ee*e*ee+e+ee*eee*e*ee*ee*ee*eee*ee*e*ee*ee*eee*e*ee*ee*ee+e+ee+ee*e*ee+e+eee*ee*e*ee*e*ee*eee*ee*ee*e*ee*eee*ee*eee+ee*eeee+e+ee*e*e*e*eee*ee*ee+e+ee*ee*eeeee*ee+e+eeee+e+ee*e*e*e*ee+eee*e*e*eee+ee*e*e*eee+eeeeeee*ee+eeeeeee*eeeeeeeeeeeeeeeeeeeeee+eeeeeeeeeeeee+eeeeeeeeeeeeeeeeeeeeeeeeeeeeeee*e*ee+e*eee*e*ee+eeeee*eee*eee*eeee+eeeee+eeeee*ee*ee+ee+eee*eeee*e*eee*e*ee*eee*e*ee+eeeeeee+ee+eeeeeee*ee*eee*eee*eee*eee+eeeeeee+eee*ee+eeee*eeeee+eee*eeeee*eee*eeee*ee*eee*eeeeee*eee*ee*e*ee*eeeeeeee*eeeeee*e*ee+ee*eeee+ee+e*eeeee*ee*e*ee*ee*e*e*e*ee+ee*ee+ee+eee*eee+eeeee*ee*ee+ee*eee*ee*ee+ee*eeeeee+ee+ee*e*eee*eee+eeeeeee+e+eeeee*eeee*ee*e*e*ee*ee+e*e*eee+e+ee+e*eee*ee+ee*eeee*ee+e+eee*eeeee*ee+eeeee*eeeeeee+ee*eee*eee+ee*e*ee*ee*e*ee+ee*e*eeeeee+ee+e*ee+e+ee+eee+eee*ee*e*eeeeeee+eeeeeeee+eeeeeeee*eee*eeeee*ee+eeee+eeeeeeeeeeeee*eee+eeeeeeeee*ee*eeeee*ee+e+eeeeeeeee+ee+ee+eeee*e*eeee+eeeeeeeeeeeee+eeeee*ee*e*eee*eee*eeeeeee+ee+eeee+ee+ee*ee*ee*ee*ee*ee*ee*eeeeeee+e+eeee+eeee*ee*e*eee*ee+ee+ee+eee*ee*eeee*eeee+e+ee+eee+eeeee+e+ee+e*ee+eeee+eee*eee*eeeee*e+eeeeeeeeee*eee*eeee*ee+eeeee*eeeee*e*ee*ee+eee+ee+ee*e*ee*eee*eeeee*eeee*ee*eee*ee*eee*eee*ee*ee*eeee*ee*eee*eee*ee*e*eeeee*eeeeeee*eeeeee+e+eee+e+ee+ee*e*eeeeeeee*eeeee+eee*eeeeeeeeeeeeee*e*ee*ee*eeee+e+eeee+e+eee*e*ee*ee*e*ee*ee*eee*ee+ee*e*ee*e*e*ee+ee*ee*ee*eee*e*ee*ee*e*ee*eee*ee*ee*eee+eeee*eeeee*e*ee*eee*ee+e+eee*e*ee*ee+eeeeeeeeee*ee*eeeeeee*ee*eeee+e*ee*e*eee*ee*ee*ee*e*ee*ee+ee*eee+eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee*ee*ee*e*eee+eeee*e*ee+ee+eeeeeee+ee+eee*ee+ee+e+ee*ee*eeeee*e*ee*ee*ee+ee+ee*eeee+ee*ee*eeee+eeeeeeeeeeeeee+eee+eeee+ee*ee+ee*eeee+eeeeeeeee+eee*ee+eee*eeee+e+eeeeeee*eeeee+ee*eeeee+eee*ee+eeee*eee+eeee*ee+e*ee*ee+e+ee*eee+e*ee+ee*eeeeeee*eee*ee*ee*e*eee+eeee*e+eeee+eeeee*eeeeeee*eeeee*eeeeee*eeee*ee*eee*ee*e+eeee+eee*e*ee*ee*ee*eee*e*e+eeee*ee*ee+ee+ee*eee+e+e+eee*eeee+ee+eeeee+e*e*ee+ee*e*e*e*ee*e*ee+ee+eeeeeeeeeeeeee*eee*eeeeeeeeeeeeeeeee*eee+eeeeeeeeeee*eee*ee*eeeeee+eee*e*ee+eeee+eee*ee*eee+e+ee+eeeeeeeeeee*eeeeeeee*eeeeeeeeeeeeeee+eee*e*ee*ee+eeeeee*ee+eeeeeeeeeeeeeeeeeeeeeeeee*eee*e*e*eeee+eeee*eeee*ee*eeeee+eee+eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee+eeeeeeeeeeeeeeeeeeeeeeeeeee*eee+ee*eee+ee+ee+e+eeeeeeeeee*eeeeeeeeeeee+e+eeee+eeeee*eee+eeee*e*eeeee*eeeee+eeeeeeeeeee*eeee*eee*eee+eeeeeeeee+eee*ee+e+eee+e+eeeeee+e+ee*eee+ee*ee*e*eee*ee+eeee*ee+eee+ee+ee+e+eeeeee*eeee+eeeeee*ee*eeeeeeeeeeee*eeeeeeeeee+eee+eeeeeeeeeeeeeeeeeeeeeeee+eeeeeeeeeeeee*eee+eeeeeeeeeeeee*ee*e+eeee*ee+ee*ee*e*eeee+eee*ee*ee*ee*ee+eeee+eeeeee+eeeeeeee+eeee*eee+eeee*eeeeeeeeee*ee*ee*ee+eee+eeeeeee*ee*ee*ee+eeee+eeeeeeee*e*e*eeee*eee*eee*eeee*ee+e*eeee+eeeee+ee+eeeeeee+eeee*eee*eeeee*ee+ee*ee*eee+e+e+ee+ee*ee*e*eee*ee*eee+e*eeee*eee*ee*eee+ee*ee*ee*ee+e+eeee*e*eeee+eee*ee+ee*ee+ee*eee*eeee+eee*e*ee+eee*e*eee+eee*ee+ee*ee*ee+eee*e*ee*ee*eeee+e*eee*eeeee+ee*eee+e+eee*ee*eee*ee*eeeeee*eeee*ee*ee*e*eee+eeeeeeee*eeeee*ee*eeeee*eee*e*ee*ee+e*ee+eee+eee*e*e*eee*ee+eeeee*ee+eee*ee*eeee+eee+ee+ee+ee*eee*e*eeee*e*ee*eee+eeeeeeeeeee*ee+ee*ee*eeeee*eee*ee*e*eee*e*eee*ee*ee*ee+e+eeeeee+e*e*ee*ee+ee*ee+eeeeeee*eee+eee*e*eeee*eeeee*ee+e+ee+eeee*ee+e+e+e+ee*ee*e+ee*eee+e*eee*eeeeeeeeeee+eee*e*eeee*e*eee+e+eeee+ee+eeeeeeeeeeee*eeeeeeee*eeeeeeeeeeeeeeeeeee*eee+e+ee+eeee*ee*ee*eee*e*ee+e+e+eee+e*eeee*e*eeeee*e*ee+eeeee*e*eeeee*ee+eee*ee*ee*eee*eee+eeee+eeeee+eee*eeeee*eeee*eeeeeee+ee+ee+ee+eee*ee*eee+eee+eee*eee*ee*eee*e*e*eee*e*e*ee*ee+eee*e*e*ee+eee*eeee+ee+eee*eeee*e*ee+e+ee*eeee*e*ee+eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee+eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee*eeeeeeeeeeeeeeeeeeeeeeeee+e+eeeeeee*ee+eeee*ee+ee*ee*ee*eeeeeee*ee+ee+ee+ee*ee+eeeeee*ee+eeee+ee*eeeeee*ee*ee+ee*eee*e*eeee*ee*ee*e+eeee*eeee*ee*eee*eee*e*ee*eee*ee*ee+ee+ee*e*eeeeee*eeeeeeeeeee*ee*ee*e*eeeeeeee*eee*eeeeee+eeeee+eeeeeeeee*e*eeeeeeeeeeeeeeee*ee*eeeeeee*eee*eeeee*eeee*e*eeeee*eeee+eeeee*eeeeee+eee*ee*eeeee*eee+eeee+eeee*eeeeeeeeeee*ee+eeeeeee*eee*e*ee*ee+ee*ee*e*ee*ee*e*eee*e*ee*ee+eeee+eee*e*ee+ee*e*ee*ee*e*eeeeeee*ee*eee*e*ee*eee*eeeeee*ee*ee*e*ee*ee*eeeee*ee+eeeeee*ee*ee+ee*eeee*e*ee+ee+ee+ee+eee*e*e*eee*ee*e*eee*eee+eeee*e*ee+eeeeee*ee+e+ee*eee+e+ee+ee*eee*ee+eee*eeee+eeee*eeeee*e+eeeeeeeeeeeeeeeeee*ee+eeee*eeee*eeeee+ee+e+e+ee*e*e*ee*e*ee*eeee+ee+ee*eee*eee*e*eee*ee*eeee+eee*eee*ee*eee*ee*eee+eee*ee*eee+e+eee+eeee*e*eee+eeee*ee*eee*ee*e*ee*ee*eee*eeeeeee+eee+eeee+ee*eee*eeee+ee*ee*eee+eeee*eee*e*eee*e*eeee*eeeeee+ee+e*ee*eee*e*ee+eeeee*eee+eeeeeeeeeeeeee*eeeeeeeeeeeeeeeeeeeeeeeeeeeee+eeeee*eee+eeeeeeeeeee+e+eeeeeee+e+eee+eeee+eeeee+eeeeeeeeee*ee*eeeee*e*e+eee*eee*e*eeee*eeeee*ee*ee*ee*ee*eeeee+eeeeeeeee*eee*ee*eeeee*eeeeeeee+eeee*ee*ee*eeeeeeeeeeeeee*eeeeeeeeeeeee*eee+eeeee+eee*eee*eeeeeeeeeeeeeee*eeee*e*ee*eeee+eee+eeeee*eeee*e*e*e*ee*eee+ee*ee+eeeee*ee+eeeee*ee+ee+e+ee*eeeee*eee*e*ee*eeee+ee*e*eeeeeeee+e+eeeeeee*eee*eeeeeeee*eeeeeee*eeeee*eee*eeeeee*eeeeeeee*eeeee+eeeeee+eeeeeeeeeeeeee+e+eeee+ee*eeeeee*e+e+eeee+eeeeeeeee+eeeee+eeee+ee*e*eeee*e*ee*ee*eeeeee+ee*eee*e*eeee*e*ee+eee*e*ee+eeeee+e+ee+ee+e*eee+eeeeeeeee+eee+ee+eee+ee*ee*e*eee*eee*e+eeeeeeeee*ee*eeeeeeee*eee+eeeee*eee*eeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteteeteeeteeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeteeeeeeeeeeeteteeteeteeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeteeeeeeteeeeeeeeeeeeteeteteeeeeeeeeteeeeeeteeeeeeteeteeeeeeteeeeeeeeeteeeeeeeeeeeeteeteeteeeeeeteeeeteeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeteeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeteeeeeeeeeeeeeeteeteeeeeeteeeeeeee,eeeeteeeeeeeeeeeeeeteeeeeeteeeeeeeteeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeteeteeeeteeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeteeeteeeteeeteeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeteeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteteeteeeeeeeteeeeeeeeteeeeeeeeteeeteeeeteeeeteeeeeteeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeteeeeeeeeeeeteeeeeeeeeeeeeeeeeeteeeeteeeeteeeteeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeteeeeeteeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeee e e e e e e e e e e e e e e e e ete e e e e e e e e e ete e e e e e e e e e e ete e e e e e e e e e e e e e e e e e ete e e e e e e ete e e e e e e e e e e e e e e e e e e e e e e e ete e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e ete e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e ete e e e e e e e e e ete ete e e e ete ete e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e ete ete e e e e ete e ete e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e ete e e e e e e e ete e e e e e e ete e e e e e ete e e e e e e e ete e e e e e e e e e e e ete e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e ete e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e ete e e e e e e e e e e e e e e e e e e e e e e e e e e e e e ete e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e ete e e e e e e e e e e e e e e e e e e e e e e e e ete e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e ete e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e ete e e e e ete e e e e e e e e e e e e e e e e e e e e e e e e ete e e e ete e e e e e e e e e e e e e e e e e e e e e ete e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e etete ete ete ete e ete e e e e e e ete e ete e ete ete e e e e e e e e e e e e ete e e e e ete e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e ete e e e e e e e e e e e e e e e e e e e e e e e e e e e e e ete e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e ete e e e ete e e e e e e e e e e e ete e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e ete e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e ete e e e e e e e e e eeeeeeeeeeeeeeeteeeeeeeeeeteeeeteeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeteeeeeeeeteeteeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeteeteeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeteeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteteeeeteeeeeteeteeteeteeeeeeeeeteeeeteeteeeteeteeteeteeeeeeeeeeeeeteteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteteeeeeeeteeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeteeeteeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeteeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeteeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeteeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeteeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeteeeeteeeeeeteeeeteeeeeeeeeeeeeeeeeeeeeeeeeeteeteeeeeeeeeteeeeeeeeeeeteteeeeeeteeeeeeeteeeeteeeeeteeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeteeeeeeeeeeeeteeeeeeteeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8eeeeeeeteteteeeeeeteeeeeeeeeeeeeteeeeeeeeteeeeeeteeeeeteeeeeeeeeeeeeeeeeeeeteeeeeteeeeeeeeeeeeee8eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteteeeeteeeeeeeeeeteeeeeeeteeeeteeeeeeeteeeeeteeeeeteeeeeteteeeeeteeeeteeeeteeeeeteeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeteeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeef33ef31d902e06807f912c2ccf9b20b89076183ccf01b9fd763ebe1f1438ac5f43aeea3120e4f6a7f729af20f13c584a79d9c7df4eb14b2ca01854624d20f5fa440327ef5d61924ff03b7680bea8fe805fc4420ce5e103deaf56db9a9601079d020fc945270486f5bb0d3ad6c2baa893d29bae57a555ae2a153e14f2f7411f0551934c75811d3d04b5981b824b29e246672c38b0a30142807f69e58e99255eb6bb96f4597ff8af19eb584387506a4540c702f1c2017a6f5398ff0b3f3fba873e52c88d3a0d2623e2d1bbbb9151bf41b1892c622122dac12d1831853a31bf54451203d1d9284d3d8db4ea0a741a1b03e300e2a9c812205222e8fc026a458420220a876bf3835fe06ed1dba1e8de3aa12fe18ea0d6ae505090357985cb29230933516f885d0b46bad87679dc9b36905731d6834d728f306848947033175dc228cf2319519ccb40a770088dd9fff78496466e7b3814766ba6f901037d098f8c1ccc20baa302107fe87d46fb7401d91aacdab82e2491c7c8613b0c95031da4e84471df89619cb26525622db08b81f27e7275f1c1dd64e57174c06e7bd79febdd6aec31592a0294c9e276b3d65987f470eaaa2dc024c33977f409a6026185bed4f55b571c2738b88cc09f74b4b84ff494f71bb93b3df25675a48178dfa7ce98244c6024dfbb4f382a643d538fda5df16cd9639085cd64f5877f63e4ef41c9a4c3b7b1392226f3c8f9b858f0cb601c14e0dc88a73e24caa743776fa424aeeb27bc37402e7ec7972924a4ecb50dbb7469221d706b958c2f2318dfe3d4adf23c6da0f2251ca2ac85309fe8a4bcfa4a53896c9eed83fe15e44638a9fd8c2d3c64de92bd5fb773d87e25758e5a2622e2fc0890c2ef7ed4ad61ee8c6524bf9e51fcda7ddafd6c4457adc2cbfb72505ffb25318a4507900b186542bbc07c8b2cdda872829d48a3c9737252cac2c3d060376051bd400edbfa60ba7ce9df19101937ecd26d11cbc0b8ba07e762b5c8653db0e025e5588b1b1c57d4473d4926dde2a151c147968ba5d0d31912cd6ed3f7ae6acee3066a462fde5d1142b8a16ea0b59510c3d9137f5afafc70fe18ceb5f7c8ae27de7088029263c037548ed3e920d61995c6c033915edb772d77604f69b09f9478711f2b058d925bf859200a3eb539894de28ce6ce536b6ef4881d480596d4a60bf3e28c53d0535c1b8a92aec6f1035569e8d5d99533bea624614503b1765259766e469cf6c5e53296d8d45f3bde15d579000aa27234c69e7dcce7ece7b2f76a0683969d5f19ebc4b6f52cca5bb792126483b3b8b75e27417e08e9473eced1c817088495033ff5afce8d9852229d398a081a4baa52cc7c6faec669260c6b454edf07c7ab2c7d9f020505323dcb34c975b96f5833e2353fb9e7776c9fcc028ab726c753aaaf95af857c9ea520784a1c863cd2c04be93d5b3b7a7e72c2b71ce79f44d8698d0392141704a8d40220b1dc14cbb8afc4c5fc8b24f119802bc77ba324e5e287d6d8056192e5272aac5c3cf236d563b9bfd5414a249f99b06d79604cc514de3981f988464c6a856402fa2b6869fbb4a37803df2db4a45a7d3624839e9e9cd0de0f3a4a71efe6ad3cc4171b2bbdbbe1ca4057f1ee8a70ec6f0698cc54b613f13a5b7dee8d5a8185fe2e847b626a96047bd046b1bf05714a925ff4e91a279e30cf4c855898d599c316f557bf7eaf8834e40bcae517059524ef2b4a1c05f86d32dee7c51b6c407532a77a61e6e6a9ac8d9ae9a71c183955a31a181ae2f3661446e7cf0d3c5d121b9e17fc2d4ba5049549331a94a5cdb297c4e17f08e8fb39f3869602d91d6ba45c56f0d6266846d7d73649e4f90b9bb55ea9055cb7fb989a27fbf11870934740228a94633042b9debf4d116cb93daa31b9e9804a50dc36b5d1b9a98d1afc924ef79089514bb9419a40ddbf9e59f91dc0bb81af273017a3ba6c59c894c17829b95edc22f0d5af05d2d5923f6b4ddfc7a97a56d5c2b52289c123b7fb629a993aba08362063e884fad36cca56625fb735388e8f242ecb3efa6b5e3457999e16499191985106db2ba5ed0607edadc1dc3ca059d67394db68a931c6b373598bdc9293fc55440f0ca9aa37f793f9652cc9cdb4a78abca35e1c2a5aba26d472dd5df12dd0ca97dc87df98e81e0cf070489f7683a8fc4af41d9ba7d0fd7fee699b1b1f5b287a4f0b46441e38bbc276584a543a5870f22c21bffa0ac6a23664905c3427f777c49a6a0ce66f8c8e94d64062a0c9d9b959c59560cfa011c6b031e4247f05e473bd1d421ef2ac855a7758d50e315177e68bcea86b2d2394fcf98b899afaa3614af301ca85900bd5e94921a0c32da3ab29d1f9aa277c91fc76f4a7075a6258d40d13e2e1fbefe346394ded3fca8cc2ae7eed4e0ab7c8a9965f6996fca2827a01426483e6bfb5910e695a97dcaab71b04facd18ecd60cc0e749c91db7638b5a841eb65b95336d4b0d2d34217b18147e344e6b1ffc7abc35e99fb24de9dbe2e734bb3086ff14bf0ee87813d92b32f982f893c09c86066854e5a39398576db00c2eaf8da38150c8b1008664c4e7362396af63ed0fee3633e2131bbc1bd9b1ed865fd62fa5c279edf8c7a8c4548b39a28a54a9992210ff570c5e3fefae68e089ae0ccd207d5203503f9d132d56ebd60aa6fc89bcbcbe529b292d59da0514367c2fa7410b7852108846ae3386b317a38ed57b1afae8fe80e1a6eab67b7a27ffde519956a732160aa3f96e43d5da9db72c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b091b6160357012089ff9d49d4e5b65c6481e030e3e44a7aa9fa2137db8c923cfd0e401af1daeb836ff1832b140f73842686c83a36541351db6db77f36b1d451cd52dd61eaeea7b8c4d953b52eac27c0b16ed7d18ff1ab1f0e9e0cb0c531b4a667f8753506a3a7ffe6910c4a9458fac0732336224d3a768e12c61752dd751870480295e6cbdf822209e231a9a9dcc330e1f3f9d31a85ba6ea1778a617e51c382bfd34699a2efc86726c058135bb47780c596e4bba2e7e36150cdf5c3c8f44ad58a2fb702168a0fa3b30211e339f672d83ecb8ed6ac170d7fdb892ce24b7ae0e6be8819850f8e3086ea13cc411c4292e2372c6c4d78153be10d4b49a3a6d54817aa7db17cba4c54f2c4ac6f0cedfd66a5efb0eb9aa936159352d58c66509cfaa4ec479d2bde838a70ad275f3cba7362a07bb342542ebb197b9a7cb91612d8fed369e773434837d1072f36511cf3169d149b1a56685ba0928c79fc19aa1369af071edcc1e42d288676dbb9a76c2091382d941d81a4390534173a01bab15a3b20a7a74b1c495fa94ceea35a1c22cb817e1648b3cb23cd5a43ce3fe4dbfa482fd1801f89897f6c0721944ab6d15cc810f26e03062cd35dbaf8e66208676e5ef7140dfcb53ba35a66d328915d012af2186ca2970283f9eab6d0058db4227b20260b681288ac87dd7fc264ddbba75cc8b907a68d3903faeb73f0c6285ae2714ca501a5a9338009203d0a85ede5cc2dbfe62e7170dcc7bb41c158140f0f8bc49bc30c85657a6906a9bcc2d98c66545f56a2abba69a214303f4fe91fbad1bd71fa5aac259cf5f61ead437cf74b68e2824fd1546847b4980a12f41086c8383533c3b820a12db422a78aeef7982157b3673603ec0ca9fee565867fbe916936d001e157d297a9dd3c33355e54fa815fed023ff1e795de6e5bcd7cc01554a557a1c7aeae31b4a732c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b09581e2ffce95d8e6d4d63f0c2bdf8ed670285d75852c56e6e5640bbcb4dc21e97d8f655df6468490d2fbd7c4c35832d36afa6d53523acdabe7703787b5b14f3a2001c45c6d08eb13141915e9f74d533b6ba68193ed998c6c35cba2443593b3fef881ba17e679f9bc0778508ae05304a2d9781a4065d02fcf30131045c61fa46066b573674703a97a2f3a2253bcf0e6157e08111f4c4f8110ab6987d918eb2dfcab649198bc7b084b6cf39d0ee1fbf9e7b6b32c80cf962bf4c02e6978d3dae99686ebe0eeb6da7ba61ce85fdc4e1c06d175bd2eac225d98f84cac909f15f3b947701a6b64719c1ac7795e29366d0d96bba4b873f936c2ebd7ea55ad3ebb80242af71b96e77ccabc19c609772c574c0505ad472c304776fb62d0c053def0d5a9c31e7fbf48ff91eaa348395b22d842f570cf2e65a3d2c1f23e1a4ade7b4897593063139819a78a2fded30dc26f27c9473aa0b190dab7d0ebcf4d07c8119d18b3b4e3a42ed1cd4ba7ecaee5208d419db9344311079fc4ce88ee02a582b1ee3ee0aaa27ca9bb2d0621b7929156064307b02efb0960ca3d503a534463180e355997d189e801c53cb769d73bd2204e36c4515a693312238f7a87f9111dbe3446ab73d9bd3de558f03b0dc75985154377932f556e0e3e521b4145431f84888c8ff1e487a58adfd4746975d39f40d3cf61ca576be689b68b057fa60ddb116a7484e6427c3e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8551248c3d28ce2b064dbc323a20fc7db527dd233e6598ed8b9d205aadf12cbf34e867a98ee769795a7c30f3acea9fa4bda3b846bcfacc461c3b0075c7cf548671cbfd0bb41c01004857246a003071747353b9c3c3ff4e59959980944f82e9da4e116f44af2fc552f49ba861e27e2f6aff9a7188098a3262dc1b34f031016a57713e606092c52e52d561e42d22661ab41ebaf1a23bf9f52059f6d52fe9827e0f6522489c5e00f9b2ca77a29bd8a07df20768160b06d3c501fa520ae2350db83abbc246c101ad69232414ab4567eb4c7fac81dbea0aa19f40c5b13999ae43519e9d457fff263f1e0f8856c379e63b0d34f3b45a6baa36a250ada6590961f48d77def3951f9f20027111aadd7d5258e57d2764e72a513612b73b29f8d1b43148548aedea9a36526ce61165286190d31ec5cd9dffdba092f902589bd0895c7402277b35bc9d5a2416e1923574d12225cd85a8f4e517bc05f360b00baffb74cda0ecb24c4b58917adfe5461569674cd4bd3e5fb1c3b789785157af8a9dfabcf645261f4a6906a9bcc2d98c66545f56a2abba69a214303f4fe91fbad1bd71fa5aac259cf5cb8135535be27c3f3bf63df0907d2971abae439f0203b6051affb90e2847c8a5f9e96a0f7838a5298837a89223271c28dc33ee74b953a11425beed7fbce5bb988d5de817fd1f2b6214d389581f02a18087946adebcd792d5e130c24e1c375f5628cb77864808d120e180bcddedf1b24ba7bdbe366a29f1e7e269469108d748db77eebf4792c6b106897628cbd5c63fc287921572a5d343b67d02b9d9e30793a9b40e1c0de092cf1200a2716642029620a154e98fb763ed63356debf7768652caff4bc1e665391aabb7d32b8f0e6ce0dfdbd2e4d6525d77f213f3122d825ca8701e97942c6e62becba36045bb5ef1c10ce86c80e16eebb471672f840a6046e5226330622d6b048f2e01b4b27064bb7ee3b94ef52ba5eb0ad1ca592c92d996aa92c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b092e1ec58feca23fad7159e41bcd36821549f8609e629b9822b7dd541c59f4b8c01bae3ff7d3f08121bd65e5a3e3a00028120fa38e17134194b228ba5f61a5d7e331c4877c641ffada00285181b3b67ad333e991cb1952a2ac0ba99452e22c48e70b5f1ee1bcbb28de35df4aa47377151c65cf75578b0cec72637604776a2d437eff105271ec8b74e1b382003e3117d2ad0becc687985c4c1c0c9c04ba0df73b9266f1251f2a62ab07095b5dcfd9f3871b6f075230a2a6e1c60edeb9cd10bb481853a6bdc2130822aa3d396849a82497c41682a2eea75152c6921d7fb936b9effedfa0765570c3138541e5435716e2ca77cd4032daf8d3903beca1305fca8021e372eff3fb4e6c5d271e792814483138256291bd04975f3bd5ae8bf5d01711d525bd83d3f21c4d36ec7014322624071cc5f50cd5246efc667dfd2aab85fea7213dbe1d2bc57b1f3736c6b7c8da5e63120a73db731e286ee61c8d691cda27a0086197bf2efa9fa8dfff63386b64aadd66819187c7f3f0e97992ef3e261b2806ee2db4710166ec3643f3bfc34da54c91237cfcf44cb1b9c5449d3dcb6d3c505b046d0c2287411f0b0b5af1b9fd23d866f77929e4ca6f487e0fb3f3dafa83afe17fa7e7fd8ca88056dc90b9be5840ebbf6b39ad1798f7340297d2bcd5e71583db489aa88e976d94e8fb011f3148f76c9596b3f4dfbd739ae6ada37505f773f693f8cd8fa394122d4f85ce337ca5f5b9667a38b2a633037913ddeeb65b4d0fecee83f9b4cc85b05770692b3d0f7ac24026a15ed5969ffec02816265107bd712aea8c4375d00aee5734ebf3faaa5df71a223a4215b0f9f33aaff5b6c38df60f33c3330f343423bc0a8dee4927aa1b2805931c1b4db3e6610e7ca9864f4b1b9196a1d97fc363558e36459552c683c46bf7496b93ccefab5300a805f92f4d75bfa9cbbf5a923bb4dfa37cd8c3aaa083d8e6f46cb47dfe5b273581f5f5ec48ba801389bfb7a3d28c8f6bf88c7027e7c2f5c0d63926ca604a860dc18d1c0da47a6fc5cc86605d41c88f9788f5b4e968b535cdd90084c88dbee598b460ecc86512d5176fe94d53924259af4a1bd8054ead7d8fa99256d7f1169ffacf8b089f185a72c2f8882abe4818b7140152df9e12ebf0eb329ff66c8e54409568570024c42cef9478287e3a19b78fc29bb30df5f752545834eea94b617a8b98963455a691ee196837de67c17e0fb2a509ab14e34cf88b269145fd4620109dc791c0d9060ba71ff06392bce8024509f91bf221b8f946ef96ad09120e03cf9f1e5b5c74643a8a0c0cbe9ad9d6f9f1d8d0503ea3dcbcb4fb6419b9538f3cf3b39e8427d9579194d439b82bc09ee6fd7426f77483be57887b1f717545cb956ae95d153c25db1cf898e7f84d71163764903ab8986107e42732c347d362656b28b170c1b6e796b35be1805c2cb59791971cafcbff1f957f1aff446f4bb55b093221e0f9f811feb539a9c48b53d7eadcfed98e1fd7518017da97a061318ffea1eed1efba137b719c02d8eb107f2949c586bd1950dff037375b65e69ed337639a0d62a6a45db7a0fda179c0ab317e6a8f51c750319c8a42cf956b23915f3b4b9ca3a5cd6a7d1583118ee1ee183996589d054b8dd1c2cc75ddf60c2308ef31e0ddbee3e4547afd079550f6ba1930cb028ef90b8ac36e9caf17f0b8fffceca64f1bdaea1c59ad595dcb52d5a4118c99f25450f5f2f0e05460cbafdf479ee3f93341f797c5b2203eb225e86065a99a675c912b1c24deb8c6ae5b88518a66530cfd999dfef7bcd4566296d23fc141dff1da5478c4475ebc25a64d912a265925573ae54cc3891900b62ed86e7f4aaf5a7e8373179980f1595775385a8d02b64cf7dc4b4faf56bfb45c647c046716c40c19614be9f4f63490b9bfd5a9fd913249782759d59aea99f9c47efbe235f7bc07d25f6db17ccd2324d78a983317d4a2ae4ce513827d803991498dd6ad3f897caea1fa7aa24161afcd9bb6687ce8f86ce457ff16a7b8bd0b9ce411f8dda285ec39734e320cce4388430c3df5b9a56ad96a6494a4e53c350585dedb10ef7a87f8bb911bd2c50841ccda7024f0f0c9e0d507c2010abf7b65a20f7f4c2c0487e1276029ee6a9dc29698d26cc8293b059ea89998e4b4936e799a934602b9f8f016f044abd4a5cf6b3a3952f65ebd0a7394bb649587fc1c78e3447e29c328e9c06fb9e9dbb5199f9ffeab97cc48f03ff348baf86dd745ac6a333e7f92715d8baf9c8a9f39e50e4fa7a186e790e82bb296dca7064be1392ae323f1b3a9b300ec0d1c816f8214d1b41695feef5478294870c8fd7c5633b34a567a514ababfcf2fcfcdf231c6783b46cb6328d9bf210076094050ed8ecde8bf92f5f51ec92f807ed2fd61e1a0ed330de8d7ca7936b179b24a5525ba3d61f82091f172ecde5c9d04cdb1961164c5fe0bcc6d8e00dceef4ba3edc4818fa3a6d708287f6ff0105401fab83f2f4dbabcd800629ee21a5b30d934656b77a707ceb0b523883a6013928a91901a70d98c4344c78f255ed2bbd8c9488d4ecfedc42c50ecf96e5d7cf8df8bc25bcc90d4922654a404924c104bdace338ab8d1c122bb16c6dd942eb85db2c9e4c34c3c88fcc83fa92d2a6e124c991a76817468cda0502c3b55192c16e52361981f88d88ef3225450939615177d3b6eeb078b96aacae7abd3c71c8458adbebd12aee94df2f3724aa11faf4bf7ff36fe49bd73d38d97356aabf0f7ad992dbf45c64a01f56d4232062f94707af8c87ffca19e5bfc9f621d25181504538cb0a6306b5dce26af6b81d71433d04da5b3b04130b23cc28051938f6fc0e1cbb45845fabf52755a1462f6df60628a1287cea5568528843b886bccf93429dfda810142fa3a17d7e02d71a2b0140b82e2ae62f6d1a4eaa716178d50d1b0f3194c47f0510f270cd18ca785e11e3b54e585661678faf98af52dfc43254b37bd566a994e307fc09bb9338125b8ae1cc55fad8a546e6832c4bfa93204665a9cf4673386f10c02f0f6f0e7532f8a772153057480f8eebd4aa0c3c818b13b389b4187131d792680322f742d89726330622d6b048f2e01b4b27064bb7ee3b94ef52ba5eb0ad1ca592c92d996aa92c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b09cf1dd922b1aa15f94bff94dd558b3d90f19aa827bf78c88ea5a47e234993c7f0238c644183bf69d26c5d020117b7493123b45451800bb02f2e4ec37491f32be3a26c9070e6159fd1b9984b9c5c923be9a81c00a101c7843ee1cc41ca4bdd691538a4eb01107d885d44c4ae527ee558a68dc7535cdc7b5b9b63496d8b85943ca05b3bf0d7be0f9bff118cf424dca0a685458a11b21b0699f91b1563410db1ab16d1ce453a059b15d1b9174dd8e585f7bdad036f50b898336b86eafd2cba0fe3c1aed6861809d72131f7a3ec83495157a54d3ccc7bbcb079cf94201083e4a42463ac71355848bbf51536f4cd9efa05d7fcd5bb1f55163bcdb7a3293cd201facbf597c772e91f106286ded2ca7eb704a32951d96d9322915ec15a7904a059007bc8e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8555c1ba96f8c127aab4bd1253c4992b27bc04a62c8f1f48c1644f8c9fe3cf010ca02e27bb8323440c05ff9ca7c12eef1c4befd7411490159690180d8dff8d7cd2b302886c44dccbac2bb65fcde830856fce571ac2246ceb0baea8460cbdb8262d5375bd286f47ed4b45faea85fa65bb2c99cc42e9cef50ca76ddaa022bb16b43483f2cbfcfd47566d54aad520e57d21bf89e7d4531340c9a2d7d4be0955505e42903071bfb5f0ab959a57db7f09e7bc88a02d84fc58ef0a07fc8691dbc8321935c2c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b09e651c6033c299a7f88c63620ad219b0da31b3d49240aaad819627ed446633708c460fd69a428f81ad0e00688b59bd8ec10edc2ab7847ca2254d3ad8bc71f6facfbe001eb9ff8a51ce65b0ee3b22ded44f8731a41efc0bc150804163f91673837603fb8d2a3a795605c1cdc4f7a3c03ee4548af9af70ec7b13cfb350693965f5afd7a48671c7db4b91d1babf5d30000e17b2361edfb3fd822d438aa2eeb79c551deafca7e71909b401ba47a4449ed2feb366912e6cd009f48d490115113f07b85bca9a15450b1d8368c4f2adfef540749fe232c0f6051df747c32d261b1d9b375e98a6a7a08a4f740f2930538a43efd3d7aa580737f94fc7ece1fd070f22fa75ab9736c72dd808f71721f8a0e8877b681e872f4e12ddbd37412af635722a583d091d0de0eb049e78789d75f488c41bd322b785c02c587504f4de99a7baefb621e9575c8a19a23a88d8de30100895ef78e526e150ef3e3f6632941c503aaa19e6cd5e9cd08e65ede30636c756e8b18a74087362fb0cf8afdc0ec2b1834b0d72a8c0b855309b00451fd1d4981988acb87eb2903ab091f4e7ba266b57f6fddd65d0628a420c46befff6e4b6d1a69745b018121c77827059895dba459abc0bb6640639765d809fb87c1b3914459fd78eb0b7eef53f312003aadb10cd1273db20c9c2a337f37c06373c6ecee8af65f2511192f049a9fda6983460a30cbf066527a95c5569af018b4434e9e0c2674722e2cc1a9bcc8accaf07e575ac7359569082efe2825fcc2e6705a0f747ac1afc89825ef355de382f75f4016f379fa1706336621dc976558869a3776361143f5720277c0b4cc4e92cf02d1b124e9c85958ad5508f501bb6bdc496382ddf07bde75a542e601fad63e78a0c550592ca5e60725112b3d766e03b2e26c8dd072d218a8d0d3081a63c65883546cde70bd14a8cc40d372fb9bd9170e1d9ba59bb5ca07f3e63c351882ea29229cde8ec29c43900d4d6a98138da57ba826cbbaed808a412d6a74032fe25cd326aa1996a84214e59e7ebe384dda3f6ead3973d63778ee11b5413b5574ef2a8031a695ab82aa6cd6097c1b255259cde54050dc49f32095c348864e9b65e66f55f961ac3c5c884ab1f136a770c9d5a8284d81477ff6a54bf6e5fec9d3d2f4043b59ccd67f04dd856787f685d44b0fac7914b195a60cfbd42d867c48abc88ffa07e426e0c295e5511d31fba4f76e076d418cd5df1321d227fac514244d41268ca89b5417a2e0b9f3431040fb4b8640432c10695dd0d2b367dc8abfbdfe3d8166816e749c5c7877c86b4f3f55911825bdf8e82a090097e85ab00aaaee4db448d2196a3efdda1497ccbfc4cd4b4c36250ff7f411721f118d1d260c771fb5dc1b588b43aab0e55a633bef5dbb9a5a068c097b61bb48d37f608d175503161a747b1d82ff60b381bcc0abe11e7797e3202547b9970e4a6d79e80d0995c11dcbf78d13fc032879a7417a6b5e8b0676a6ed2a1daf7c2eda49865ad3539254bbd74c86789035d194eef7866cb236531c8c060c7eb0b45e6ea33765f1433e2417a425bbc4df24e0d594ddfbb495d4e14491f8ba717072d647c5db5343d17f8023a3fe182576bdb3b5b6573871ebe0717c709a807591555a4ea2fa0beedb19fac4455224d867b5e2e20b861c37327c289f3fdc3757742882578abe56131d7f25ce3fa16b27f24b092e8524da179bb47dfe2ed6c0adfa7b8ca122af945102098c5a133ec6269a2a7f2dc3b184ad86b562ea8d8cf5b17013f2fe97b2093f59b5b5ebe27abeb40f259470453213b7f29c947ed443c39a1de1742a33e28338e6bc8bfcdfe09d6db76e94175d3bca4f4a8b6a518f4ddf3fbe5b6bb49e3b90f030df2e65b31052e551e938870f55c20d29dcc97c7bc9c38388a87ec386d130d1989150910363d31ad1287df84b8c2d08c3ee24cbbaa710ef7cadab974cbaaef2a0bbd824fcce29aa9b36092668aeb897c87dd8c2f824e4b3a02f6cf17896939607580cc0011fb4987a7a4fd0cbfcc1a3a229a3a418eee5a42030061e6f76e3b9cb4f05ec0130ff1d61fc23e80738ee3b1e872fc48ed386c16d5a80983d1182607faa7c9923a498ae0660b87ae104a313ec1607890bacba69a4b1bce31c2d62287565a2689a23fb70681d4298d6636adc59f4c8b5ed256a5d9483d25de128c8f195182ff998fa34c2fc761694bbad0dea7be854c1832049d45f1215d893bd98b6d228cea06b024bd6fda56dc83c6b5e8c8eac38bed306176a3f26b090f6f12e03f405b242953e552ab635213c071b4a3bf99593913c8116455bcb266f3840c65985a2d3b572571531eac253e1122f0b76baca907ff86d1b8d8881b8e78c19aaa4be7a3d83a5e30b3bbb288cda1805486798e78915487018d9018e28374334ddf5dae3f9a14c598dd131386bbcd808df7fd33de5b3e1726952335aa109114922c10f8a002a5358f0b0ff7c396be2fbad937611ab8de36a982dd1279ac45ff15aaa88d208687c91ea6ba9e1c6656e90de25d6030e07be0ea529a2f7ed1b3749030b67d4441abf7beb95e8752961851ccec4fad4827b0ef13e30c7a8d21f07f4ad8203435eb568a1379c58d26bb20e401f4da4351cc693ce7bedc9163df0beafdd4b39aad83e10917ace0089aebedebbb33c6b4fdc8fb5f5d617a6945887bfdefc307fd11dc37665f4825726ca4b6d591a87a26cca945ec4e78959fb5f29f638f146b7602df23f832895f9f9b6012f669a25a93ac0489cb047d512f522d56177d5c84d82b53e8676778dffbb6d9925589417c4f9f08400e946b021fa8682665486a39ff590b9bc35d968c85f772449421c1282b4bb734c468da9c9bbab1c7e115f452050d706facc841a8ce8ebc8f26871268ec058f461d0138f635b7842936bb0d1de5245267f2fe6fd714a0e75d0c946465e18db23b6a4c25f6db2e3ff8a9ddbfe42546fa95b40dbee2c7bac277aad4a0a708fa83e7a14a82f473e7821a91023746e8521eca386cc35270722a39ad7b71921cd46d3f1dde0f04245bb85d25c885272d1b2b9fd88d517c975f5b49b0d6cb395c0069e9a85620f03d868bc8ab8335fd79ec5791e75336eb4338d2a41c140997f2a4f6940732ba092ed4a8ba8e0467ac8e1174630f15379c693beaf25a8822ebb09293c8991a1a7f055827b1d985b55dcd52410485a8be805bbb7527f488dada3bbff9815e75218e0f23e93697b8aa9ada7236cb94a141ab1124d7da580a225ef7177810c047f9669227d5a06e5b305874a9de120b489cd814455f12e89d621391c216b2b76fd8652beb87e47fc9f49392988354bb9f3774710540cfd05f5e8d84b303c4c4bec6bca7df581d6ca13c9c8517e6d68963ca37ed7b3d8bc6f864df20e4240167ac25ee5fef5a6f56241d64b9d83bc732bc802a07c8bf87bf12acbf4e7f3ad1f1d328ba8708118940392d18d8d1a09a55596987c5458b8cd8e9a0f3e60d5e6172a93a2755ccfc059af8c8d89ea214cfc7da41848eae845d928fe80fabc91ac697df8da6eb6471779af28b21d8c39f4c5d12f082f79b404365e3f5be7396b97ae3dbb7bc36decc4802765fc0047eebee325c027067a853062317a965262e10aedafa2bee299baeaac43a434f79e96f4e7afdef0ac4b1cf76ce28dbe8ac8504fd87a8e63d4d03a9b253e2f1ef346b84750218b9fe63d6c0b1e3730b5be278fcf48d95c4c47e26d1767921acc0d05acfae4ff9e86ed22cbccdd54d1ae034e8c92d897f4b3d80ffeca765e1ddcde8e375db099156fed7aa123a1e67294a19c8c5933cfc6a477fb81b3a83a9d079bf6f931612427ca5070cd7f7130a3fddf07a123d99968fa33b4c1750f7c45232366d5527f4ce927b6e49df4eab57719d846daf2d0a782f9ff47f5d01769da487050b9fbdabfd7f1899d63ec86862d682c6b0ead14babb7f66192bf54c7f7d3219dbee88c163b73977663abc50e6b9ee95464070051d89cb465f13f1ae553bec7e8aa42b77c9282996dd009d0aee562f5a86af90980a628f88ee27f62b4564cbca385f9a7b339c2dd33ac699486a98c5bcf1613ec3e1ee9d44ac3c09438f905be8aef9a7b69624ddebfe1379f0b518ea82bde8ec7d9f42d0562c48579c3ecca8d29ee96b6c08987a6d6e5c19add316e15ec0687356e11313f447de5c92422b899b2a1f0565bffc4dd44b679a9c12ef5cc5483b436d970b7eb815a0b3f9246e206f365eaf6696ea710ec3d74c2d3918af886b4fdd410b589a24dc4d7397b319801039100a50c7435419d91321e9e39518a3b78f0acc3a313135ede1614d35f94fd9954b70371afb85ec079b2791d1207fb2612469f2858552f9f4e40fd630c8a32e85521200a85384bd1717a04f89552fc6cb3490d76c5e9c8a763b9739d464d1b4ec21ad8f5bf95a476c17b56b6bd2a3c20003c77430d0c2dee210418f9ff17bd9fb603290b237a8a68934ea3d9926a49effc7b5ecfb537e1dbf826b6146171d436e0c850bf0dad45c75075f6b8a4440c4bfead86a4491f6397df872c828bb4ee34749ac7d022b55505f4a29073fcf4be8b5e8af7be8f2670dc08b600c8664b6a6d1b81cd7fac4e1b426be179d03311318b9803180bbcfae4d9a6ebd4009b17ed3657a0a0fae1bbcc0243608db5dac04e28dcdd536f15b405a37e40f72891c13e37c0a703b1f883679c016bf7d01f8b122b47079862f968781d468da4b97cce7eeeefab41bab84db682c7bb0325adf4148e6328243a8a828e20c7ad770c52b6fae702e4826b6d96b1ec5deecb60b6d653190ccfeb18881f707b83e2bcc7c07f2eed1e914aa17c15c472e2b131b2a2aaa6a492b25add68594ac600a39bc76cea98d502acd1d75d627942c56633ed17ab067ab3e3d37c7e6d649b523ead364cf56f4944a25a0e10213aed24bf71d697941b5f741f53b73bc27ee4a55ed18f39d52cfe5d1fbe5ccf8140d07cda5417dcd6f207d9bfa0a654d55196b268d5eef0136c12a374d95fd911fc66048ae082e5bef8fdad3949d9054c9861bb3d89bdfe7647a1571aa8046e4f6f571e2d8b383f8370b3b610c48b65187c394d1502c0c9b33f819eba2a5ff6e2b9577b1712cc7a480d32497d1b78647cd1bdc312719579d3198356400a5be4f9164ba71efc9a447b44c9394b6714823eabcb4e928eab097318e6e108392f27ae25200cc84bca28772688ed2bddfa9615b628f26677f93964a9105169c6d589ae6fc63ddc1b9bb66adab468e4ef3fd9b5957cc19f95e0bfb56b4498aabf948170a1dad4105afc66b9319137366e6f4250d71223ae89693b9e863d4fe20419d6b2d66ff53c98742876a2aeaf0163feb039b43a9756867f92a9c5ec4e1b85a64fc66907239f6887264f70ea5dd790fb297104e2eb152c6815fbdd20764cabe1673b0338ce0de95aea872ce91c152a5e8500b23e4cd0acee608a039e922c761126dbdaad3769153589bd1c860219eadbb2319ae604547acf477a4a62ef5fd8fc9c2fa6826f7d765cc2ff5b899e05c4e675b83c00a7f20a0c522089a1d8dbe17ceaeb4af7cf28a96c01c8e17bd6c081e391edbe70b3d03f59089c5b6d32282f3c0c3816a2708d3a68a4615a1d6490d4623d2f68cb4bc89d220622cc53217022b0cb3657fc216e25b9a81c4574e9dde87aa0b388d6e908fd4aedad6a15e4a5f1a84c6308d96668e547a5f5536914a2976828387004c1bfaf9bf84a2256b071f7a0821b4bbce2a5c222ace880aa940e24b5fd44b1fe742ab04d85eb6e643700e7c911ea44534f7542fcf1c9f3fa79a119cca922b92fe8c5286a2112bf13efea9c026adbe3716f21673498cf0f7bd75c215097892cd07cc1e257a10e0b339c81edcb229375adca68360d9f2bdeb767fced212878bdca91c3c5b7b3f20e80d0b1b7f18993e2af99349160863fc25d0637e5bc6b7c9bb80a15175c7d4c5c88e9742c56d02fb09f142567772eada9e2f91aaffbc949b2577b99442859fc89061ffeac0ff6e46baccd045d587607ba32b6ce0330a4e966f15e8a8092aca8b07a7eaee0399d6563c3b7814ce0690b038d0e435b0898d149b43121ee778e73222174cbdaa9caf573eec276fbb0edd7aca4a6128093754f2f1b7fa151aeea7670323da4decd135774a9993ed3bc3fc57a267f48c0ce5efa8a0fd4b2fd50eba14a904f49974917bb3f1713e3c8260655a9e2529ca1c554b8fbf217ed74a4fa8b1d5562c15ffb86052d4892947909c512b6a5ec49d2ce3fdae12737db98210841ad16f323126772d18b7d5d23ab73de120f26b5c8a9665e76482383e3187e4fd2cb1562ba8052f7fc1b40ba47923edf565824fe59e468d6440cecf21a9fb590b0afd4b1a07d7c7c708e3f9fb0b45a7dd26514ba1e872f1ae4b60931853f436fdbe2aa0624e915af7de5472915fba6b7d5e201b8c81bfb5afbc3356baa7072c491737b2057740cc5e2e6acabab82ea20958d5e86ad815e597f4ac8d12c386851e34505a71d7c31cb1f67a13640bc31e59c300a78eedcff9607a77789b59d08084fe79d5b951994ef312dfb27040aceba9e0c1072368384442dd51296edbc5dbf62edca092db9c8e66d077cb88de49fe1f28d8a6f988891c9a4262ff669cc589b3e42242eccb032ecae08e4d230e827a18ee8cdc1a980b7dc19c6f50c06d0d2c543ae95b35c4bb5014d3e7f3ca6830fe3f84ddf8dee74a249d19f05c6623dad3853b9ba791c99093c878478b166beb8c6baf6e3d357af10bb7d5629de6ad49cd85ff4a4de02715d8d53a6448cc90da28c2b23cd151a5684532f79bce9035d0073b7d4d3516062918ee16243bae42016f010c31f80346b8268fbbe45ebec0e69b876622923796aabb90d1dce1af2a68ca7f80ee484f419438c64a044888b4d23521533abd1f58287909cadcf5daa72de6c1cd9b218e08c01372547ab2725a41322f2c95ed42cbfcb0816429f474c87b4d71080360269d7d185fc5b06e016819dbe0d760b39d5b7e2679e707955ec20889dccba3c3d9ba73de08355e6511f6590523bfb7f0c8edf60e7a31753a392f9a941d93c5f9c836ae2e1b8b1367af4cb8904747b58450d4f249436095ce561c2f3a5adf61270f592f4d8ad807237a85148c14c7f1b445ab6e1e4447aaee164e3aa842570b900165416f0a63651f4c11dc6cbc01dc1c38b6205576af6646e532dd4cf8f62e3255dc76a02222a86976398a31cd779e2d9d97c201290e8c9759b58f7618735b805543c24c5608c49ef6d8cfc0406566fc92355015cf9277abd3027c13edd0006387337d9cd5538921dac51dfcba5ec95df4dc2eba974565404d7ef8a60a4ed5505fb2f7c0fd019f0e7512f25525baf701e521fec1b1f9a8485c4f7d395f453976842d151a3723d0d66ca3a62b2ccf946385c7b5b3885be4238e1b5ff65e7c8728df020c5c1b97bb59dd547fa8c98ed6ea3612ce99da4ba90c20a56330c2bbfcd6716b78b09aec2f25ec151ef5e49dbd3936862217aad990aca9ae80d51d909aa65ad50dc6b834f8870b1e04d3e797704e4c39253652656d934d223acec95c8328d516dedc760cc6b9b310359be96e7387b4a0347e745ad4908aca5d8761e8809782b8923e7f05d255c44e86eacfc3ce8732aabb9216a1509d3f9cb5ee497ecdd64069ddc50d6e5173955a347bfd36359b1be231e6b53d6422692a351b00945deb11a7023ee7013bcd14c1d7822441f9663ab0f77cfac42bcba458d33c4bb9b197120eea402693946bc87f54e8187edc7a98a15ea58f5e95b1f4fcaabf1251d0193eade82a6786881e65dcf57ed54b801307e1c0aac61f7828779489326463922ce22ab832b3b26a532e9a9d8b9c594b71bf7367940da384dc7c972e0746e790b1ba66e6e7cef5fb7b3b9efeb312854aece4ce0a89c3a01efc6d89629c3c81a29fd1c6efc58fa2fb09c12f3447ce821a90b3529998268b32f1b15afde3b42ea2e0a85c63c021d3b682ccfdce025318488adc94175fe0a04f373322712ce3832e7ce267dfe9870927283ad7219a3a693422f648aac2db72ccba6f4fb1ca46905ae2490e1cbafc79c4f6a663519fd5f1ad51f95a9d04ac0efa3f44963596f890032994b71fc703e18e844a9b33534b7a18061d00057e8e4e0c458625a9e033b9865d60331ea04805d5002d8d564871724afbddfbd1a2624c7a0cf69099ba23d1dc784d224c5fc5cc2cb6b9262e590da5381d4faaec49ad7c0c3921be3f580c94b112147addecab9b4b41f3cb70d61226aa97b09a7f109f80d8cfd74b9d2a0e98d3165f1dac82f283a5803422c4b617075d803ab772f736fd29bf39ad61b392ac9ce9bdede3c7f546274a717a77aa0dac4bc150531c2a8eef5bcc53b3788d7d71b09bc220de90df85be46292008aa9aabd5c92ebcf7d7fbf5e44374ec6516d687e8c045acf3f7bf1297ac00ba2e47ffe054a5040cafe03a27dc8b7f0b29ad85ceeb9cf09d0b92bb9e7a2ebeb6e55ce27d527281ba37bc3446c39339cc73b6a309f1910aa635486fecc3befbf6e1fdcd7cc5ebae0f47a635f4008254ebd04688d17f537cbbcb08b26a8e47c18582a324b3f90229472b7053b9a6371f675d37b14492683675668d986a84c4b9097139e3f9411c1a0a424004e30a09d002772f17335de5369ac612ecae9da6042dd6c155a2fc19cbbbd651bea0876c2ef72aa4c135fddb4f7226f9aa86a3f597d2254d2fb5d3a5b372b98344bbda390cd60ef3d6553653608c1a7372e044212ef78a659d2c2ab73eea8cb5c115ca2160e6b6dff6d3ea27dcbb797cd64f5ec4b393d3fe064e9f360f237267f267b9f8db2f0cb2e436628758132f96a53e0629e30acf94557dbd1c8e649c1a0092241136e4dff3df7720ebc5dd7798b101049112604a98781737b98741cc1de4ad1fd9b7e282b7da41b5b02bdf815654cb4a29979d187b0e67bd029887a929d87de350597b4579ea2dbecf490d6936c504d3c55ec9e32b93b5c580929efc4bee329ae5303e93d020b1fa627c6db0ba3a8fb3d9ff71c494ed9e8b2ae7d739fb194f2dba40c9a973a525d7952cd8bfd6f50888f12ecb6f6da70d3a6b3bca03885ca9b5c7be2c02da7a32df1360c33e64c8f82d5a181d7de918389a115b6162e0ea2505f76c1f1a1286d57ddf4b89a9dcfc0245aef94d7842198dbd2bba5e52ce92b743a0ec0c5f09168e4d81c34cb342147a492c87cef529de0bfe781408e13aaa2a043ea4b53f3e545d7027e1fee0af57b77ed043e76fe7783c51049487f1b19c1448dadb3b42eb7b212dd2eddf3823681043327fb3220b57044c0edaf2fac6673678ccdeb99cc10c58f4ad3f56100ba84f68c3d8d8deab5a1c08721814999367d4e6f57c005ce3e64f33877e20e720670cd0ab56c9b4173544eb7183f74d946f6fc4386e62a078cedbcb42b3777c95a4ef6b7ddc35be381159d985657f21ab235233614ca6c1145464213a77b491e89f86cd3e26454c1b92937c914b83a8db322488ffddc662cc395900239d7fe05c4829dfe5311813e1e2e0a12b68303b50334f29230e1c6b148780bb45d7f2ae88f615ebe300e508235544294f7dda571413b1bf97efc3c2977430db2bbf33b4e6fdc8484a7087b7f220f538f46ad5f01216a39aaeb00fff64e47ec3283dc748d9dd57532b767486eb052d80a2a6cfc485d6b9dbec5e9dd9c311d187ca74bdd52899b4c3c9b21654cd435765eb29663615affa725de66f80359072d31545dabb2a7a97e264413235508a04cb313fc6f88c2394041a6cb1b4868a9d4664362206997cc06b697eb5c82b2ff6a3e9baecb455d91376dd4e317735784507a83a0a873d2f0f71d3cc4e499a5960891d0f8fb7cccb89f99854e51ea8ab302cb60de94c18ecad5aa1a88e3c52aa374c9d97bffe2b4f0357ac46579b49ab6d1f6d9ba6fd5dc07b7572c9369cfccfc39a8e159faf5d2004ca2e46788185317508d4c5a0fa617ea638d83d71df8838e266c089cd0b2b4a71094521f9f56b7aed87773ddbc99b9a3310965b0f282ceb1bf95b0d69eeb786e9b0ea8eefaed9855f8e48cc1274c168301aadfeebccf0af3dedb8aaf087f97755f9aab5ca192b3f7c9ba5888025b538fc77121610f7df259a06c0f903a80628c75544734c90253cf9eef0333ea20b9923a84238a8d010f5707aaab4822a53efe9edd7d79dcfe4126a8d3fc3da532a9b52c078b65d2921019177ae7e7566261371f99ffc5398b1c5a1326a3f6b96db2ccb4640251f0637940e1f751e81de226d94445100efb51228fc7da579ca586a2abee315bc6dc298434ad679373a356ab97f0ec4da656ee3aced46c84a9eb3ae0fb0d1395466db857db9f489f03ce969099e18f58cebf36fb054ac4cc448093c9b169351ea7445127b73d43bf5980e3bb0ef9a46194b81a7b15255ae3e5975219b4ed8a74cd22fcbcb38b23a893db4c18c7dbfbbc38662b8a8bb40173816e73c24cdeb4e14347d43173b0d34dbd557fcd5bd96882d5344e5e22dc26229b5b86a848dab20e45c35ff88f68fbc5b2aee00bf34d83cbf355e6b5c3d928168e2920fdf3fd87b32be62f4cf5c6e1fbbfff7f52f78eb36f3abc323f7e8f833472e69576b4607fff22f76cdfb791f06c66cd5bb89f345319b382de6ef974b7321f3b870fea452a9cece026ba76a46255548c6e05309b18e5190025430233eda9c4d0f72ba0cc3540b240c07f07b3413b99730512e69202d925c5087c543fa6de7a782c634f13a09425a16d7bd1e32583a02c62b7997d969b3a627c3c424e5fa6bffee448fc07bea817ec72c34941c030da6783ac7f3dc48074216beafc00a740d965c61e0fb15f60463537b6375cf798233b3bbebfcf8f034cba8e189778de6e2c7ecdbaacab145ecac4e5e4c7c04092f4d302a1379c65c28f28a4a100a268603a4a7780036f324330e86bffd157257fbc3e89c4836555d52ea9c6fd667631702eb57ac55ba3d5636a978791813b04070370e7222c6d892bdf4e89c0ed73adeb0e749aa47db0e9322e633f8902dce2da566986c66de4f28e29284514911280f7f62774cf401f4e2c41da6840672ec80db2efe101e91db5765f61f692114dfbff29b4251022fbb2ef7865bbb573bcc8bf977ec8b43ef4a0e3128e58ba9d8b35e7b1329a48a84517196559674739baab09c25f9d98cb4ad982998209593a22f9095e80b54bcf8d7b3ccb3c33ee59f33292bd6bf2e9dc4f5e7127a102c632c06d821111f5235a3f785d1d4111c6e05b65af34db54ce7e825b2853ce49d4247b27302dbec1579588b6cdc7177e1c393866e747ce3a38a8ff89fc8fd4f66ed14de4a3cc0ecddc3f631621f3c9d23f76d4fcdcd6144a7b0f7590cac04789ca54793d0e231a79bc8f1c034896a887ead08653b9e8ce53909886115bc8233d8e0138dda5e85c4b2454f112ee02b801a72d8b292e3da980e25afe6e47c2d7047f692e7c8d7cb2aa78f68436c82954a492f741ffc4e123577a26bc5ef60b3b83a6b7ab20ef4b21a296774cba1c5ef435c578062dcaaafd1548240770aebfbb54271f51ca06945be507989f7bbf8b31a7d2b80711cb1eef2817fee8070ad2e7ed27c3794854ffa46cb30e57534253bc351fe67ea797b7e1f889a70fc57ca25a6848f3fdcd3a2860a95583bd7df007b891ef7738fb1d1071659bf6885a725bf39db5ab218a14fb9f518a788a63fac9c7547800cfa8f0e6d4a7d64fe9642797433116ea8693c780429373f2d8a68a5b28a7a4ecaa597bac181dfd0a0cf098f9360df2e3f993c0e0fd92560446d97311199f595fa0737b7e6105488dfb485d54f8828e1f105bf4270974c200923b988d2848a18876a8ea2e4d951cfe8a0f244329398dc6baec0452dbbf4e328a238fb499f716ec150f8ee06daee231cd474c97bb51d3469fcfeeebce121a6c48f76571005206690199f92be5ef4ca3e7c123de5485ec5d968227d1ce822770ff6a1278b879f0a2df9d407174e406c85b8ff06a51a894514a719096130cead008a0a7200b30b9d5deb2866f39ebd942aaa5b4bda1e1615f032b663395d82816800f21ca8265f0661d1974f480b1bda242e5f4f85cfbb56e83a327ce020d32890d5d868f3b1dd9e8e94def3a37df91b703e6a5c2e928cdbf36751be24c4105d7523413c6f3836ae26f84795332487161e773abd775b07af6f94c3e82f30800f119daf8bb642c5b4c7392299e870fcd44e5e25fe913447c3ae3d7cc6fb259d9e9e55605ccefe726e3e7aaabe3df170fab5f4a57db832ccb19c705d3e3fa6c994d2a717bcc862e756b15ad5343178f9c152362e758e97ae24c5bc9cc1a7bd17aee4030102141a66ea9c9cdabe8dc78ec1dc3dc041b48fa8e505728f261519e7d79648bfcf1ef21dcfd009d15fdb9b5633f3caba2f216979020102161a3c4b47496ee4c441d2f1cdc0de411b63635ae3bcf9f220a9c824e1ddf90c5241bee9116405f6cf74ccb42f0bca656adae015248f114c4be87482723c8c8bd04b39d85471165843a12338196e4ef33b9e1d63b4d780baadd0010c309cf3689112cac2445f548440a94638a6859a4f78d5add81946b4ec840c80f67000079d77cb1678e815b8e61ac3699c04c929b352faac2a76b784022855e56fddf86f6de6bad81edb05a062c845085890483d959587b1bb6890debf869a44b2e0aac295274b6bb2ec5fe123bc5cee4b31fd734d7dfc21151365888f8ae21169c61edd419873b6cff916f3c8485e721a943f74d2b747f3e44256df498a8031868dcc81b8639279eb962b6a66ab89902cb31542e3d517dc1fb9b720e6b3a3b252cb5a29f37388e7cf4cf7a2829c80ad77bd39da3c3f5fcf25c9eeb0963ffd803d1c732e4b9ad0023e238702c908b6d6fa38134f06b4d123f8b9a612622116fc8a3125df8a05c6fb0ef365e785980b4dfaf6f77064eda451d10029ab51006fc5eda1f1be3b866861bfc1a3961136f5b072a7f127af6fc80865f599ce721fa53207eed8f868f53c7090ef65e785980b4dfaf6f77064eda451d10029ab51006fc5eda1f1be3b866861bfc1f7d272fcf770f1bc5a6adca9b42a41a58a4b444f2f7620fb76a047e1f2d0dc04d6e4a2f14a7745296e96e75273f9dd5216e6030310a5506b41bb1d4fd6f09a2fcca3bdee93104513a9e153272df35e0fabdbce7812782c4a531beb883f7d563dfd5957d5f2f807ca519bffea2e47c19c39c40cc43a6164ce2a7d10d04f3e0bdbcb584fcaeb966b18acf1470d69fb46551e75f67def1435b140d50587ed98933e411e00e7118d0eb1a4b5d3581169e76b988197e383238e7f8738ffc78d3aa310d486cf6c1536256bae77f7e21d37ccc2228f1e5b777a1336c43878d57ebb2e2fd486cf6c1536256bae77f7e21d37ccc2228f1e5b777a1336c43878d57ebb2e2fb74d7809c6c9f24c7ae89c9647b42a07894b89acbe510d1657cd0f49888516666ed018acf76703ce37fdd60e554720394a67f85ee17fa976f87ccd6f90a85fef755650106a8ef815d0e5c231df595b678f9d302a5e4a6c15b38750548ed8e51bb16af762aa022ea39f4776ecea22e8bac14deeb4cc9c1bc9ce45a77568502c5c2a090e9239328c44e297571b39e2928bdc5583dc88e76f4d47cd93d224b24a4061c861fc80eae7c95fb1caf75496358f0b0f174f8dd8fc8fe4ea619b8f88ce0f77cf8c2e90f69af4bf3d84b6eb29805e04d83a30cefb5fdcf044611941347fe4bc4cb146abf2fee0ea7d74ccf071929f83b0ddb6151657aa7d46a3ddd05038db7be367fb4955982d559b55835281056822bf814c02f3470835fd3ccb19a8ee16be85ee6290e7ad84ca97f7ccd05bea29e0ec90c26eb506ae15a5e95863b871172d1d6d1637730063f2d87b8e198b5617433d3259c7c3ae325b3e35b71a51e956b7cbef9712ed67afc2c356248c18244539fc5337535a562e5447fbec0e6697bba77d901272613d4cd165ddeec2f6b5cd29c730c5d85522cc9d97b91a86f4ede6c2a01b3d20372d5e70563c0fc36d2b630745f1ff96040b3f8fae7d78cc95d53c20a32d4af84080d355b2c6dca17a5a793c9032d9d3b401a917b07f72aae68a34fbc1fe26a578f27859bacb39e0784b9214942224af6229f11e07fd7d9cfccb4e4b08928929f2ab49b1ae381c088ee8783be29c717b5bdd353d615e7db652ae7b8a258812d2774113757be757d59435d726178d48c6b6988d4ff1f7b68d4c7bd824d74632b306e9b8c9e0c14df58a2b7c3ea445606b17fe5a9305b8007fa656a50dd0e921e0381dc01a1cf69366b4d38c3e552d86900cdaba1c9de8c5b69162e4c3810b7c30fd04710e0ff6ec53c0f0faed747bfefe21e102e0e8b3974a6c082ef5fa835e9f25b02344924cb6a6bec4975e319ebb147abc75611c92b6ee726697570b55cc21ea445d0275e03a50d697a2ebc03a6e4cbdc13f26698b02aa77a581c531a2ebf1e95e634b38e774d548fd04ce24d49bb407029a6fd04cb97ba5ae28da99043e3e33ff73e2577a222beb9d1ecfe94dafd108a35f87d8157fac9ddaadfce7361081470a89f0ee810a78d94e179976cfcbdc0e266a61f4a9798e60183508eb116e676a544b00de2fa949d33bfb66530c1c42a4dc9729a19011e398b81aacf3b3015bae64a55d63f4cbb7e77cc3f868d562f39a896d78e1ad36473afb6c9f95a8ac590b10cb82b36b3d28b34ddac52b68203321d2288479a4220baba748900d6f9e273b063d7eda052bd76aec671b34036f64c3be125b426d88465eb77681cc3f2cd386bc5f6a636973619802704d0fdf6a957d298b3c248117bd1266275019864e053d042369daed54a35ef46ffda4815b4e2f8a2966c13bfd4085b043e7ac5d4f94619deaad90ccee28cd7343c1e114c17e5a812c2cd216af36c9f8f57d767341d750a5c2714a09bb85eb40dcdd694fdb7b6c95dbdc5cadeec01d93482bf21c0c200fb0d681e5cec7cf649ca85c57f93eee220eeff6356165ac12583eb4c8947da45b26ce1c05aaac989c1cf965134c3a52ef5169e69ee8715c58095155efde37c4ed163bf3e0e44bd6b52be6ece68f4cd66e991a4fd72f6818604ee363ae448569b05f834130ff2e18b26d9b7730e44ecf85755200dd18ed2a58426a42c38278d7da2b002b87a2afc97eba5379bd76e03d50048d2be46ba912be53754e61c44e31f66a89b71f11109498b31bb803a8bffc3d9fada6d77432ad52d2397935c76820c76a21341f2228bf7ecc16374817986c3eba9fa495ce3b8b9b605b08d3cd1f78eb82055f5ff9d55396b1a8a53fd7e5ce0ab6a80ca4256c1df7eed2b45f72a12e84884d2ce0c6f7c2dd43ff58798e5731a003630be4f0c224a9e584791bfa487f469d880420d73c4bccf0cae600b3462689b0b8189f4191dfb8dffa655facb35e14c1f0dbce2af97e4c02db85b8822cb743269b8c31c23025d889d07641eecc7a5b90f19c21926b0efde7a0b53bd7fba871a750ef6eaeeb9cd5b53ad8d18d19a226b5abd22752de09b4f03a7582b36544e4f69310c8e0ad18c656f7f601391a2d0a9735cb8d3944593d4f7fb57361886d8128246e80719d9d8e485791521ef3382497c166c0e5ced0713b21471202df473ec431dad8a7ad4bc7b69d886cffa26ede9bdca9bbd1662deb0e3b8fd78ec886ba1918415db9e8051a6512d84cbe0e51ffb4446b41d01452f52b538b633e4eeaf0a9bed49539e2537e0cd3f2bbfe26f9610ec2ef55396441b9f3269170478f9971fd72ecdedb3806d45d78a9fa63f96f91d2ef67cfd5efeb9afc313b033447aa37c8e1a627b8b522e6a7fe234714b64ab096b675d84d835d92a0acd32b75b0b0514a9bc549ccbd5fb7cf4d32e3498a5f4a7dc3d788925a5e23e27c29e54888af946740169172d4b4a1a49c30caaac37a040f1b4670018f8237274b8791919f7816c44dadbdb2aa22025d8c5bcf42056ef46dbb72e9b3d529e46a022692c79f08b39bea9c111bdc5e3ff6d43c856fd7b0f448dbff667d62904c000e382c767d263a394f6ebbc7f6a914ff719e10f7f81ce1d0d0665169fa2da9be187686025da32794e896aae2ecd347af9e3cf6a55d5843ed7143402484c9462194feca5f9bc6bc6a8746a74762cc3c5e2ee832eb06ed50d9d40fda1dd24060260573c046ad651ba0efd1b2246ddfb4360952afab5cf8288ee493458a394b82bb692cc73badeaf61e1e1db0bc9dfd4d011aa1f71f3ed51575e83a8808e09a515804686433ff0778d7b240f6c246237754cd4f66f1642f60ce5dc8b7c457faf88867e22e6b200ba8bc9ba6a8444281d5d79ceccc4ed4a8d8f0a543dda61132bfb483f30ee6aa1f17f31b950256d77e11077b598adb75a1555c6cc828c21d13d39ec18568d58c9a08933f86b54623cd254d3ac801ad379c877427ea8ea0fad5fac2abadb34552b9f0b8ba3b94a300bd7395ddf1855772125a9c1dbd3000990934550b329cf82e757dfa6ad63f900cf4f47b0ef7607912c65adb324080ddf0124f2eeaf0644d2a420308d70fa7598ea397c5f566ad1bc1c070d75b8acfad9884be9f5870df25b07c40f9ab80ecaa8efaa70c859014ce1da0e746ac21ac9012e5d3570ade0ee737f43f415b13164581063388c0ebca2b44ea746e4123489457831b8ba7a5b5a312c39e578120e3304442f9ec1987bf09fd30fe883cef09a120f5044a42a193d30118764d3cf499e956e787cd4aff2e26444379c708ffcc3030813c019e847d2eacf471513ea9bb667630cac2c093fc22b4815b8bbe14ed21f92895bdc003f7b504f935bbd15d00331ccea6d11fba4f9693f538f56ce17fd1436da2b236d1086e556830a64c28830b78865172d81037a89502082067c566aa3c5b6aebc25a7a1675846ccab8f5c2f81fac991cfa67d31e9efb6be9516120813981e6d5105db8f5c3e4df9616316b59df6140184e3186d4127da17c9ab8c276195ca50c21188b7cd13a6f39abb2d725a0efa7c01d15d5e1ca5a9d4757962861c5e95d4e86ca84e087d41c4dcaac35c1cce1d031566b762694ba34238b3aa911c56f112d79fd3c696ff9da61b50844961989bd95363a2accf969e9055acb49c4af21780a4ec38fcc326ca8a437907463dc7025da31519c51b4e027255cd469cd971f3f5ff4a0e76325f1cf2a3f2d4d0fd5a30d8df21d8ad7557ce89909a35735be610a011b498be060333179f9c555fe04268d6b168955b52e5b0daecb9b5b116bdd9ff082a597a74274ed04fb8b3f0b38de40a34e2230fb4f44790117e6840545fbc109b7cd20bfaa6ff0b6f7d0f62b7dad59a0d3abbc6afd647824f3f56543160ef1f62f1775a9bbdad2b2003bd6f7e988ce0e6671687bc54fbbbbb1fc7a728709980871a63992f0f225346236091481e3a3ad8e0045f905a9802da1c6d2011748cfe8de59285c7bec8b14fc3297b9479f9e491ab176d1432fc3f0e90ac3358eb843395b29d30cdea3dde23378d546857f6d4775dc8fdb9c0e862bf062e1a98a3cdd2f8a8954348476f8c586c3cf35e19c7673fdd540557bc29e87ae1adba8c025ef57007cf9432adbd4d290648a29cfc8a8265f1febc9839a0820d10b7ec58a00059e9a3180d3ba835e1cb28b93e83a2d15ff93df5ccef6932722be3000417596bc38888ec392e36ed88a9ca8d716d0b34b8ab26b3528531f04befc36db1ace14f666de33a547d7f78371aec9cecafb4375879e729bfc85f7b14f2b2ee11c8f36afa56d8310a5a585d9970c6780881b156d2f00fe8d5097a82ecd898ea44da53df5b193f8759c1aa9bfb9660d3abc5e829caae909a0c191189e50ba3d9e5102ab34d148dc41340b0806fca463aef05d6de016cd33184d19e1b150e7fd480da86f2dfe316f26dfccfd47809ec592b1c286ecd2b00fd82af56b7c890b4e3926bb02d21c32da9a9c828a888d8e461e13309fc9a56a1378eb6d004ce97049e7aa8cf927274e35b640e8e9582e7e1f5c075e58ec07401a5f763239aaf0be910d05149413c313fc709846ff67d38f5003b0d6ce8d2e59d3938c3f9fd1ad0a08747128445e443213c53693804b0b6376e0b1fe6c2a81e96dad128868bc72d95a8a9a52b3bf8ef5ffda62593e4ace706e18bc1add4e447f769e4a24e5dda946168d991a92fd04a30cb01f0205e434e62c91aa3b35e76f132611c07043fc9a10ae0ea393ab6dc388be8076e9571c601d0562ab265ae0635f8c4d530d34631f46ad5cb7f9d413fd7c6b76980dcf79f74f4ee8950608df428d011f8eae9c471bdfb2dc5af274f0d683f92bb70d7532d15671cce46d8b57a7ba5817e03c064f6b7b28c2afb33aa72c9c303eae02121a860790510a9dcbd62281579b8fd318af635b4709b72489bebb0a984b7f8bc4fdab6649f511d976b5d311bd2be1b45c940f35a483c7b44063b92d0b6883d7bfc8f30241c0790fec70be7f57cb1e72fafe1e5d16bd75218c1c469705261e43b7c37900f1b995fcc2c5f60a5ac5324a0d3ba9635613f125358f363ef17ec274aa587510853fd5d0b555de7a979c0eb4933ee9ed7e6319ff86f090e9e80e0078f5ef5cfd2403f21598ed263eb8973f542753f7f59e783f94afb99f988fc3766af3b3a0fdfbf50d4d486e171204a8ff60c2b0301b1447225969cf14b1278c105f7187d16a732d08cdec2a6bcfbc8045df789325e414301a31af88504d17f4d246f8efe6273e72da06110cff4fb49a24885f211dd1b75a65276b5909afc986d706418f72ead166a69459805c9b26ef836b1bb7b3f1faeb9e37c4f46e8a82da3a4d6a6c53b6a9b8b763410ccb7109191d44f4f24dd105f668c32b7e895ac8df93d3402395980cfa05d5d6335c06f2fb5bbe1d84b191d142ac43e44f08253c1613b3c4c990f1830720635c02f5b2a3ec393eecc109edd25f721107a8a6ee7875114453c23e2b5fbf36a220ba9895b774deaa6b4fa07319a7f5598d861c5990ee81ad85ce0830ccc05f3994d74c2a0c0012832a57357dae41c4a0ee189efb04add028abd5b4df1d59f8a9eb190b3a3b8cd79dce806e1e8c45e3e094f3b14b5337d09da9c7aed39dc5855529f0fca2c2608bef8b94422e2899e56400087be1be181d1840710b76113b7b655a22c65ddf13e3ec7eb930cbcb1ebed1243bc726e72c69472c4bb250a5654247cd6b19f8aa82b493d62b5372f9df198f553cf7d8d5a4a74ea9c0b291eae6d21cd6ee91b03508110a0fa1c93eb60fb03bbdc14a2cc4f6c3e5830460ba63ed37aecd1b8373b4cb108471d6a3e438156fdc510064ce1b13b1be3aea45fd2c21ee44df54512a86775b64521281f34e3d13a26ae99c4542293bc1cd983371a2fa24878a452eabeb465754f8986cd8d7c057d164555c5288e933386a28ff4b3e36b5c5f2025e22388eafbf70d32c242bf41548c3e1edf4ae5f75a98456b7f5900e673eec551b1f75d04c91aedb57cc7bde5468e4f92a7df627bf7c2ac72262ab81a2f61abea573ea80e7923a101bdeb181ea104c35e3090633be8aef93759f3ff3b299c4b7995fd3fc9ac34e26229a7b75c0f93977164ebc306d88d50be83e0a030061af0081ec5642952058f28bed9a4d77ad962165c563ff729160442e64ee0f1ff3fb60fc4f9170c5561fd3fb0a42cd03dd78c8dea7ce960c859c53603537f41f75fd184fcbd1804335ce2c82990d73e57948022b5b6db2d7342c4eb359359ce40937e41531b9b4aaeabb5b5d1e6faa888075b3318cdcfcba74364f49a991029b23093a991784cd98fbc469ae7a749873ad56a1750f5b4182c7788db21a0e2b370faf799117685cf07bd02b52c91e8aba868bd153e076ab21d3e7e78ca2841a338bcff71ed937b87371d42f740ef22f2c1b20e89e198848e8bbdacbd113d3315c15b8810ead3a4635788f009d3d0fbbeedb4e7df3c06de5aa264385e070c07a25b74e1e9c85e89b7cfee8846c38a453f349c2f4e84c4ebd47ac29a4005ac69b3dda6346a5cae74ce97acf88f179ba82d0795c296e3331f315ffbbac1722ba6452c931bf95189b1f0b05c090a617035dcad58a9bdac63635509cbd81e64ddbbd1c55441b24d2723ffa4be205950ea6ce1e1acffdb26f3bb320166287d05aa1e1987dd6576feed92ab91c7ee23ca2644047376e8f1c0ccf0c28ae37ba48a37675e92395b95b746dcd1d6669f62e979ce5b28a644f24d559940b8a37072896dc4d2e53c6ff26b1fd177d5acf38a226b6f09f4cf5a577e1d0676a8932b883a871e92c1427692fa1c07de01a0678e2cb08cb3bb8d1440d4d27e3634a2f5a35e3c609382e6aa75598d678ca7b32b90b6f50d2554352f3071213bdcfcefd84a3a124a289aafe2fd544ac37cc6e9f3e1579b02d37968da4449957b4fe1c578a28e384abced83dfe07ef00e690d0c1743c3c9bef28d8cfe253a1f624adeb411ee1b39fad8a20a739ab969828a0c78f9705981cce47f2ccc04bb82ff4562a455a031186ddd0f34dadc5d59997adc83c4ccf706a86294fd7865af0b342ee23a6bc69c2ec7385955e7b8bf85d3c218408e9fb7343d8e48b46080e22fcf626e56548f85e4ee878c2df12a6919b753967b9a86392741b609e8a4096c0455c7ba6bb4bad5f1a8dbd7b8fd1a89c454285a6a81fc11af3354fc9c0ae9802f538510f5e6636fdb8df307cab62346e4608125b19c0bf67c1b8d5cbdb7a16968899edc5bcf8c7cd0d4d03d569108fde6736b72b3d766a4bcedb8bdb7a725827616de7d5ac81d8d7d959e08c5e0cebd028a52e8dc4b77e07d061d5fb1cb38b59864cd0bde35485e5b298ec78a08d5c5da9cdde2c649e878f1c765ec425283ea382da8b47497c408bc581d92ade997552d38838d93db2a6b307de1e75dab3070bf96d234b14a56ef2cfac837864d4ce35da4ba8243262a9031046b9a3ac1d61f4a25c3ffe1e4b4e628fa2ecd87da46925d14201f8c6fed656258a787926af0afb84e8a4359be0b2e57bd789aea63bffe2f27e0b3dd048e8a72dd80aab3ffb3a493ff47dc70a2820f35b44f7c02149695fa3129fb0599265f3b5eced13415859cd8b1d6e64e1569327896facf2e21d312f5ac9af7a77cbaa6c0479e40b358e75a7716738b3262af59c3fac30233e8fb30446bc1e12d00d0819791bceb83055db2aa66a1e943e0be03362031f9d198f6ece3796174c4307865ae2596283b12ce87da7da7513a5f1a8de8dbe61eeca533a464cd67a6377952873f9d574c2955d4466ac5d8149c0748cef7e566e776af903c8a4c28c229f272e060e280ba03986f65422068419aacac6d0c9ee0236d4f54f59cb9d1461a2945efacf5ffd6c1ef357ced706d360f7330a1b84a998b0b54ddc97b7bc93e053488d71ee140e57d1f5d25fbfeaf5d93733982be60231bb5756a9334ee8d241e609e23d0221e7d5e5dcbb252be9f2132064f13e142fcbfd35b75cd080053e1707d267b8d9b52c26edef9442dcbffdecfd663a9933ef945c74f5432ec75368602d0c24962073e8d421dae30932b06feb3d4c574751118652bcba5d2c4515f8cacda67fc34d1f35314ee49ff2658559fb148831d6e7820ecaf3040770121438f7da40e8be1c427a1f0a88a4abcbec3466b6a7447df3313dd3d896fb058c255ed4290c30de613c83d6751331a19ed3b916ef522b82859f532ebbb151ca54c42b1a2e44403cb1f13ada21f8bbef060e79c7eebffd303afe03b14bcc66f672de4c62739f81839931e32bcece570651ff7377efbb4f36d65938f805781846b82f6d7f0c5db3667900ed62d8ee66c4f73b02b2a8baa7846470f13a864aea45c2f1264c2842cf6b64fb18251dc7c04d9c8cedb2786ee80490ae66e7074ec2e3dbc52a5f2f208eae193c5b3baef4a2751f49b3274f3a6737a36e909241e2105c66276d17c27696d0463a67dc3d055d77fbf3d405b417f1dfaa71d817b0cb0a85f552604a1cb1571ea9a9de616640e9c0e98eb28b97c31a6df129624e91d3e2267ead9be01c3731939f5c5944198461ecb2d9911cb6fea764fbb5d1eced9db72b28c47a93e3be2593f69dd78d7d7393472aa4eb92461f1f109a31175bc43c7670ece8d0e53353f5afdecbcd41dcfc0103c397c6abeafc14d50152ab1a081c398b910fd06df081095cc84a156ae040bb52002abb88543c0004a249b883c8c5bf0e19e57e405c0a3a32dbc540a0e452c914553884d931e223180cab23f00a9d2942636bc9c35eedd3c8d05a1d4910f59f9940880a66a4e4ffde03cd7e9c271ae82153b9b6ab2006cd0554cc9163ae049936534e1bb86c2d7cad5ea7bf80971ab396208512b8d6d80f4caa6c196f4d4619c989240fc8ce33682ba89e57676136d6681a101cf3ab762f3c1c4b76cbdffda41f5cca332552d1472030a27ac2e96b96f3658f6c3e7198c913f6b8904d76506a2e7cd8bb764b0eb1be443610a7423dc4ebf140a71fd1fcfe7332bffe7d8960c81be147732552073499cab1c8b906bca6ad4df2146c26f8bab59cbe20a40a7924c794ba3f0165b6b3085bc413882b3803d914734c8b63aeda6adf0667f658302e11115a526568eaa23e4cbf836ae1f22cf86d773cdcbb95b9e80b5b1cd3c1427ecb65a41a47b91b8b0db3e68a378a3beab585210a073577e121c5ee54d2cd875de2e464c102d6d46c4b9666ecc690a76780639ac9814ddbb0f545918b9f8f56c3e5b07581ff4e47080d022c7ab54223c7e7712cce85b5ad3046f440c0b0503ccf3b543aff93b9838e5a2a9e47e3a9b3a690f78a61e5353e475d6a821819a0637498459ca8df5f87e427036e594ddad894ad5210d0b11b76909caf1817e17536411ceb6d41b20ab198248c60e864907653ae21bbc0be5a529db8169c9105836a5766e7a9b45762fb270b92f844ac1fc1e579a87354179bca1bc3ae7dca593353e929705b19080466c2fb04d6645d6eba842a21a3d2283f06af5f3260a2907e6e7cedd20ad0bd6ef527c44ee7b654f1b9b01abdaef33151bb1788ce96f4d42d642454fa06c967b2c3c7af620492a5b2df7f4fe879a1eb5f84b648cc3dfade4f2df3754e1d1bf2f48ce3df98c030caf4080b494230a7bfb0e37b9f4431d979735191aaae09b8927a05157b8bf9223c1500863d37316ca81b002d88e36df1e1ef265fbce73dc236ce3a6e9e208717105c7b61455c40a556f18e55d22f7cb448bece89fd6c6dbab3b4254b1feb82bdd0adec7f9d870fbef893c576d0333ca49a4824e0d8d3f0fa29be1e6f53c4227a716c270fdd873b7861b5efdd4b6328dc1058b1de5587af907bc8d547e9c9c961b4186117874163b8117be2ee1c481d641e528a9b8d31bb8aa314abb365aff9969c555e44ac44cb08acafe5efb4ceb7d891acc6424ac2b528e7c5d93f58dde6c01c1541bcb1f04c33612eb2f577b85b5224d7b40ab198cd7da796c0ef4441418692864eb9933a4cd4d1331fa3b64e0d91c4128e03b48e2eae7ee3d6a190e3f8c4ddcfd86b1d684e5c97e9d35d57a659a0a78a1ae42d5890b5d7122b59c33cffa021ee9f8d62a52ee3fbb20831dd2898c2575c31757854ae4f872ec90826a12f6638b93be7a26c330fe6fa4dc67f38ca1a0c07dd8344af018cb50bc5b680645ced303da139891475186ca4dd46f95d7cab675df0268568d21d177e9914b93e661e0a910d21fce430f8e1e7cff62f0cc4cc001924d4f4c30542bdb305c3f9cb76ef5e3b68e94874aca0b01fbc431f5a55b4b298ab10905368e7f0b596d9af26debf6ee7a3c211dd4a3b73e345f30183e2ec7395e3aa595837b4cc24f347cd36018ca28066875229a71177ba43d2ddf53cc330ff076675bc54d1fd5e776854032030a072a3306095be0acb68ab37ebe79d9858a262797eda1deec6ec49e14ca948e8b38559bc6aeec023bd4f4ca264ee5797ec7015c2ddd106b65d95e1ec15883ffafad8fbe741986efbeaaaaaad2c9a82f1d41773a9b504ad76654f3ae2ce4d8e68d69e358ef88caa86f1e2cdf0c73c676eed997c5fd559a58344610f86102eaacc7f7a45cf53f17b4dd592cbeb9d6aa1cf3f56211564b6aec28d3339494746850e2ae5048c8b32befeb056e25cb3379020af72ecdbcaf2ea110def532acf608032edd4f58a732d68f478c2578c22a348161ce544b7eae545375145c8962ae513c9225d87a4213b0331b3fe45b7562ecd27c3d6e792c512a224c2a80046c166fc96d769898f980c51f201ee6a1d8039659612762f1add3c9116c9a9ab2bcdfaabddadfc70ce18009d87367b8b7ab4353409d337e2278721c18728ebd60de036775b54bc812b863911351c640902bde7e01a37d61669fad7b70c9d622a8895224b2ced0795dcb7afb84525d64752aa9fca71e9a69b272a3c7c0172eca5ca3b9a5b1c2de77984f6e7eb6801551cb40f58ecb6494c975ca12aec1dd58d2e18ec63d6403365a1312af976c7e3a5b526e08af97fbd426972afae6c6a1821e707a1ba632f5e98239819b66404d7a98e8db567b0daa49db68eb254f61131994b47e67d6f1a92b1f27851adb4ee2f7bf8fd47d2e850ac4c4458e7c6932015bb259d5611c70860acb7712c923da33ab747c62765676f5740c0a7699f503215dc6e371e332b7a7f5a6fdddbac9c860fafe2a6ac1dffb6eda6a11e9fff2f8d41d958e85458ce64160e2daaa8d78720a3c80ccd18a6124ddaad8bbcc85c90b219185f0d8b1a54acda8952e0ef305aebfa78bb1b76ef78f0f22f8cbf1d64b86508b4b457d535c6c36db02c5e3f1eee65927f1e571c61dbc097e76599169b91990033ccb3a8cce18047274ad80f2d8c0d6311cfdbf709a0d5e358719ea7728a568bdc1a869307b6a1d1633e4ac55daafff5fac1155a218b232ba4113fbb47e886616791a6de640fb4ab875edcdb4dec2c752090c8864482f5e56fa0e88b5bb5ef40f1dc985e247ca86d74b0c929717c343f20efc6c0276d24e8f62c08c92bd283043adcd2522df8f5a57671c216c3736225d79c8131b66be99905b84030c41235cad081f909f6242641ba2b5654344762cea0ff54c8d61c099d242dfcd10fdc9723f1890f724834a464d0ec30a11f428b92d83fdffb7d7d618b969e115d5289d199365fae45733a473edce6abb4840951a05a1938d04dd038efa1294e542349bf17458da3119fd918a6ac995ca5c5137657c6f84379e5a4d025a3fc34b150298ab6d2bfacfa19622c0fbb88d2e012256a2cf77d11f767add6590e242b566ebe73aa29c309662f33e1fd2762a997fd3f16fe88f7ac4afd7b1bab9167b555303541f95ce4a9e99707a022ee0c2b652ddf192869d9452c49a6c17cf628b53539eaa8d8f2aa7c7b504dd29db49a74e051d82d7f4ab15e9ec39c25ddca064ef5b3a3e862d624d4d16665abcb3a4f958df4569c208606dfcbfd9df6d1f0d62907e43e6ec2bd9ff91d37fb4b3157ea34e4947a8f50f08c55f1d0558aac52e0b495008bbdb98d4e4ced809c2cf43cca714634f49f29a327d8f453f5cd9f71b38b5a0fd3147f703cb00e190239330118b9ba5f70dbae84caa52aa1f49f11a7d7399bf8e61d231411e8524c920e0415a52abe5e99dc3e4b2f12846f4f33707fa4c464ee51e8c711be4ed47bf5007c51018f0c3615dea623e3a204814292aedfba9e68da6f3e299dfa3b723dc975ced97d3d4fafffcc4601e17cb683cedc22111dfcbcbb420a59e90baee675459f7b8e7104a9b9cc118b5d1d9edb570b796fa5edf30832d3a2f664e71240b863189de37da9a4e4a9bff787a77ad7036314a30119149f2845b80aac78fb99d2c0d479c0cbcf9c17144a973a38a72fac4e3bdd349df1c38607d8f63e49754718ec47627d42b704f78e9692c5adbead872ba420bf8bfb42cef6bd4edae17fd89ed611f361d00f75aa25c6e5157e8e2cbbc6b854e520b58c12c5be2ffd22aae917c87245ddba128b8d31388b3b0d6c273aee5a499f33cb5b69c164564553d34c32a98408ec1a7f7a0ef0e0dd3b5f91ffd4627f9633813d5827fc12089593223cf78475b6d5d7f406c17d8821ef3ce94a12fadef6b34636f9809359e54434997c460a74aa665b1e447b6676a62a22221ac8a2528e60522e40fabd3c0b4da4687fea69b80b90059c68b4243e2753b901fc7a352aa59677f4666ae06cc85756ddeaabe5df939ce2bf56380dfab623b6a2889a20ddf003631a00458269694a1e49b6fc8e4572f21361943ba64f8a30905f2c09333d60c4aeebb6a860f2803c16fe3139081cde6ac9bc1718439f6fd735147475c96ba6f10aad34cb5b86d87f54fa04a50135fe7600cce60de36e557f7216a43acabbad4c6b621a12a7115e32415b29a4a5e90537d6e813742de37138851938686cd4397d87000aecdf84603c71f16eef9573c3a8c4a195bd25d7b8dd1521f91a35223fc6ce82debe22a30591dc413032082f8daab5f030bd4b06c931aeea6f4a551e16f73b9195e26c8bd1ca2bc844d8b6d0436b5cb33d3e7625399d229642c4d989fd387353f3995e542d5da565b446c8b80469af051ec2af8230ad8c9b450591844756d7feb3d622af30316086c503b31cae96dba2fa230af5c006407df65039f840bfc887183d690e335d5aed3f51746b5e0a46f1e2ab109ebc383efd94edaaaed14457e236268e0185818cd6bc2f5526104a65a6a7a5478b080c92c6d361ffade46596643486f1fc406a3bb138348b3811e719afb4bdf2b59d41fa92caaa5465b7944e2f7ab98092de65fc3e21760910a7716dd2aa80b977f5e3f190ea0e0432a583b6a8cbaab65c1c686c4a18dab25e32d80148ef7fc38da1a7a518df04ba4b353c931382d641ff16d0b055c8fa6b45a728aa4c0caa350e2ab2b52188f5db5e2bed84593f64b96f9520d2c712cbe23950ecb781f0562a49f5ef4489b6a765b128f4e144d720b8a90bace5645da0f4ba857990a7f61ef117b3143c6668e919b4e860f342cba2389277b17fe1e7a6903c1d4d77f02f841bb8e0b7042309473979251b2b77e94fc1cc4ecd2d280036bd23c1d2a279a7d98812fb7b078dbc0e08beda77f3ce5dbcfbd20e64b590cbbef131766ab393b1d9b2b1ac9ab9529b661030c1861ff6add69d3bc808475c77834873df83d3168c1e5e97b99f069db274cd06e9093d4ccf45854b3858321a79138629fc5af0cdadb66ad8e4699eb2acdb1d4f80f142654c667a6efbcc9fc0d78515095b4f5ad56ca990832daa33e3a5665e6a53ffea81c088e1ecb0986982af12e04ac1aad247dee39c17a3f84880f52eaea6753c23ea8bc886a986113d83e46bab0141cf151dec00e2fa7df5fc02ff91d133e7b74f182dfe441be3dc8764d51223145291d99753306077f9fd7b7172ff1b519e7bc7c9b82566fefc24f29dad144250ce9ff9d66c97093d0f5dac8e18f1b3e413d8a2e63910cdbc4885c7d82e5e1f6cbaeb04c7e9f936b0d48d15527065e06c969d6f98cc5137adc042c864403e0f671d7871b78d25ce7913e528aca2c30b617bb13dcbe0ff8f940241e32580a58c968fa68cbe5b3ce7996110b395f67633afb53ef74e2c97eeb22a1216010f0f6c42caccd9efea034e39335355296a155dd8f013b0b8b05fa5778ff8ca639f2e4593e72d7ab3fe2c2f7bd4df77f620fc3783a7e8b8b96fd32e2c336221f6e43d8cc669b71c6dba8c96e7ab4307c9416a3bdc0430bb2c8af56a20e5742ec6df601d6176eaacbdd1d7b9860c7f87de27d6f8b1a81f2014bb71c9244e9a94c270bbdf5fb7a311f1dce9658cffdf13d37b5d82e10481f7b7d09d4e6a62deb3a81a55e288b92eaf98bb85081b289827d7753bb1d756c1a9386b2794c21d14275896bb8144bfa644de784897c99288eacb04a1b31fe974760eb77ba805f975e0686edd44a60adc7f73174ea2cb45e2b8dbb81918f5bea661b9d287614b2522c6235ef4e702aff54065eec0eb74dacf65c9ef5b958ce7a9af9845947fef316afd33ce6bdfe58c24e6f5eb0c868c10fa5fd9207cdc1068e295c1d9603391ce1e8ff87d1e677ec2a8003c8e0fb69d3f0ebed16b41520762a1039b46d9e90c50e4169cbbe09fc79446fa0374aa916fc57b1ad8af03f7c54395cbffff0c3f3560d2cb22f42a770d2e2887e06960822f1803cae8ed22be4452b59a20988126be21ba7bc3536174451c16ac011aec52fa30131c8983d63a46087fc415652907e49813da2cbb65ba2ec0fb1649d92898c5b0ea415c31073aa9cd8c7ed2b8f446693383a306694b4d280f94849a59fc7cae4963592f55b6fda60ac3e3303922033f503c3112a54ed9e8b6f91b4e53f54cf48d654d502668405473bbf0a541b381ac68d2f6e06d2edf0d9504bc2948207a8e915dba4a9cfe25aa6a2f99b5d94618190cd5be0b51ae668bfd828788c4f1c12dc1c807aa1ae4f665055c95990eeb836fc759dc50939d8c460e4b3fe1378c5b5ee6ab76bae9e10e65e47aaa0c1cc5b120868af4daa6571c95cb60e8fd5a093a7084d0ecb8fb17c4e94233e4c1813e9a1ced4ea083c9f1405aa45fbbea9d77acd203e51387bf256ab633257ba90ce27be921f0c91c8241b083b35ace878c28534c88b8e2842295c11476d300013958eb4266df4216c16051db923c3db2b01ceb4606f6d0884f845983b8f0b48f7b17629e6ed832ee0a58e2aa9d7f1e3d09125bea91b1a2756c29ac028d5d095ec4ec2bf01fa4a76e35e67bd119b85b993030c123ee7457da88847301e7f5c388cd78b0d470c52b716841c8df93b540ac93cb35e72a4f7d901f0f7542765c75e1ed04bbd30f1bddd32b7e614494235ff153827da72d56647df9ca76522ae8da1037ce34fec6c7295f95cfad4751859480debdd94efa97583bfe022574e6ff359d3eae9a0e5c3bb1ae425e989a5268dc9b171e63cfc71c78ab496ac0cc68227f9c974b6a8ebb97e8de7d9438024586ab190f5cf0718c7d8ad3e081fc0376a9154db98029196d3771d2732750efd10540a70e9c4dd2547c252629d4e43e9a1cfcfc4a0f7f42dba35ba80e091f0f9b5ae97c9a7dc993c29e2fb22ecb62b8d21903f5a3ab313540968b04078c22a498871d21f746d5be9035a76f9470b3862544e5265d79dcafe24a8a3a8d61ada78e00f2bddca42d79658ada50feff401b4ce623ffef9a133179d3ac3526f08f63a90a12097559778925dd0515764fc9370ec5fef19c95d1d4b70c5369853034c9703f72fbd19208f22a27c74820058c6d454d9cf174f11b363f1f5dcbda2de696306b40df9aff263122ff9b7f513bf705a52bcf10db17057d8e6d66273f82549d29bb1c5d3170e52fe3a6c5e131fe2c0738af2b93ce7f82984f57a255263fcb47aac314f327200fd3297c4c3591dc16dba703c9426de66e7230cd5408ac43699c3c3e185dbed68434847efc9ba0245e0502c4284b40ddae428d4711a54c73e39d9493680b8bf4c0e4396954c1034e0b40278c95446378127eb8f8943414e5cc251613e46d3872333172eb8c8135cc8611191ed80d97351b83241219154bf53df9a820ee7db1a65b901292cede8bc9efcddd32495fc8a2d52d5e18369a22c5bdf21d957d54e2244e3d9d40712724658d31de73ee3e51f2970f730f75c5d7975460e02611397f97af5d0cd06e43389c7139de840b959b03225c6aaa890d07953bdc119fa38af692a860fd477a2ddb8c11ec4b5921a2175e0c227cd45109fe50442d1339abe383e81edb1432e9da9767d371ab813b4955b3a0be691aaf8dc64be0eb44e21a279b7c36948df0865af1fecebcd92735e583eddc11e13af83c2055b7b0fadbdb47a0f3da068a17bf4281bf97d49dc515f625ebddc66f4dc93de4eb4a2623e11c9317dce9710edc9ce646bba91c681539d749f6d9c6dc277843f8518aa51f2b74ec5e2f1848bf5892419799adb785debbfdf33d7f16483204fb922c0eb57cfe680b849eb68fb7742d29ff7a8e7147d7b129573f69907a28c6d340749023177ca8c656ec80aa883ec0e5ccf38a8810302b1301b4da0df46a22c62f8505521311e4575bf35f98da29af2ffa6f8617bbb76ed84a95570e2b1a75f8b253a08e3c25eb886f8bf8a7a445f1b1af5ec7cba84b00964536b6c1a60606a9e1ffe37825dcd33498c5ef2e508fa694b1f927afbb288f297345c9e4afec9fc476818f248c28c78e26dcea6dc2f6ba3e65342b727e62be0ce6cf050f5215dacdaf4884ce604e804c68b467895e646989dcc955c24b26206be47bfb9f926aa0bccc41e6ac7ed1fecc5ff534d028b8b40110efc494a6ce368cfc4f71a80cf7d3d87cb0cbe60638052e341e3c1fe8c50928d50463b590da59e51f824c39b6c43fdf3595fad71dede50d5deb9b08c09d48921d613f210ed0e0e9bdf5135e9b651c28de684dfa50588a132645e1328793df4839d51a7c9189b8331a0527d9613596298bedf3e058b39f3928d59a270a05dd64e43feb7f5e91d41ae1628f34f339a656e0b3c734ab29fd87fdc2356fe919d3c2b58f1a1842948cd86aba5fefd11411b397efe153228e850779164a80735e088296aef61538ac616e71aabc75966698cc69433ec1786fa7f300722cd33cc92f439c968bb4f0aa40e6a5b648473f6237dd73c94139d14dc80dbe5eedef578aa778e820988b1e722989b12440aec25fd98bd4f639f08032fcd2d02e2cbb83223cb023451ce6fac2f7d84d7356e8963e9b1b6c29666d8df29315cdfb687cf78ebc8b23ce451424dbce87f17672aef4946e9608443852128bf2b982060fd7093d87f6eee4e7b75c4bb398b428350278e1d1cbaa04183cd99913afc99551e5707dd4a8214eecb6c9fef9eca28d0ba02485a7d5bd3ee0d4bcdb6c8b511ca43f01d1421b05448a30907f4a35d626e2ecb12dd12fa52281002fd940cd8484276dd100003ce42b0f292ae8e1c12b00d6463cbd491e9b63d697cb02dbd4da5d6888ab32463c1a6e1bdb55b07a88e9bccbedc3c948fa44ad9acbf224f5c953259af2c51cdc4ad99649c6908f52f39010f288f474bbbbd9b13c358c6eae318fedb50c907d0294616b98e4e80f85baa450bdbee8659864e6016a45336c43e111c79dd023b00980ea90e662a4471e6461a99771cc8d5b99f1941d0b4873427d7704dd4f8128eae5a23a577ae16c364e919f855202a87d93a300058381c2353754bb9a7562ab336d016f35df93674c7fd9487cb1c0f9ef2d388648aa224258ae74d6b79f07864e67d73fe7fa2fcd447e99f1f7bbdda60a3d410609e40f0f772f01a9f019dc6e89cdb4c55914e135d3aee201291ffbf787d679e4b7a4d081703ddfd781ea6dbb5f46bc001315384c2abefb20b42eee8cec6a6733d9aeabdab5e05833d6531e5a41c8652e09be5ffc2fd353c43b760eba4c632917e45ffc84c6557bb915a729392415bd5c9818efe39a21892846522a2ab844d2fd759841169e2c5e930a4544319ec8fddda58fb23f503531259807ac2dce16ac4505bb75cc778d5a2da1cc028fd022002c0443ff4f8ae6772eccdc6e72b17db8b741472fe810195c97ccc134b0429468cde24a9c8afa1349b4b4381e872338fe8b7c74bbd5f7de12ac6f95e54f0c6de92266ba712b4d371b5468f300225c530c710d097c61c52cbd436a9c327f7568c64cbdb7f7083365fe5ca2bb2ce3dd0d718bef9483efdf6ae5120cb70ce9a902e2104f0445b596adc067e37b80c850e898a4213cb9d67584b47245ee3b42b2e5df950a01ce7c2374db7b971a5a4304646d5a4e9ccfa76395ee72ecd530f0e47ba5da46c052c26f4b9a953459ac4f6afbfaaece45a5ff82011960fcbd6c2f3f7207d61791f97406e59efeb90d071c82492f56a386ee54ab8c5edd864107295503e102ea339e0fd4496204c697bdd5c1b1a35864dfefe504a9901bb3801c1b6cf9d36bef650e297aff61dc1cbbb9789d0e667fea057a262e39e86100b67666a4d14507fd43f105a251be7d713303af0581a5bd3b0d787c0a2aa9fd4f05382315c0a32fa3d77d08b9c75b190bdbef49eca11f61520db974316ef5b09915985fb3f074dc1ebc48f7796722a162b3f0263d3ffab496fc54482b2494bfb40dfccf983dce09e3ee0f570f3bcc969d4bab8c1f3d4572ecf3b5da7f936d6bf1865f0ddba5c80877463ad6650d7fee66931486956a07884f53deaa13e2b80b6ca981303acc042195061225039c080c900169b231ab343c7e9ec6530864ea6d9c7f1ca98f275aafe3c5533d274aec702ea6029f8036bdb577b0c53e08f7d9175b80f0fd759d48de2f33001630dc4905ee3786cc6097fce981632661195691ac496b3bcc37452f0caa104b2205a8a19dde0196a7791988b3b74e23c2174c1e16fa4547451bf5656a8624083945404367142c2a1e93b9e46c479ca81ce2b15dc862700d6dd1c194542bb1b7d6078c829857f179d549dbca9f9fff56d1a9bbd4905b9550f7574b59e8be2e813904f46198fb093afc816a8df6c92211325fffb8cded840088f864c7969facb4e46c115cbfbde5370b9617e772b077d62be3df8f049d5b2b6f178eb2ddd8e0d32c2894d31051830bab7b131979a636527a32cd914be8c093277041d16fe28db29f6fa8f905f4c6b028c487daee15cd8adae17a81b6406e399005db9ae973c5ee9872dc996129d1226069578643f673d9038ca46a17203b4ad62ae9a23b466c6e5d8273c3f3525073c096b52e7b06e80f09a7f945f078dfd7b6d81c2aacb5150c898f37a17ac22be28d013d772e75f5ef0acc67cc624c910bf0e2584ad7709fc43b875369898d663deb8b1de1328e47cfcd5cf6d3fd97daab3be354e524f76657059aae49b92884a19fc1edb6a6bc11a8f0d078d321e2f12f4b25ec9424f5c34dbdaa5cc64e4137f041be5f18b3e6cb5783f0fab9655298e24d49ba6b81e85c73f96c38a354d01b2d6256edc97c7f3ace7719a65bd184fb4c9187a7a40e04231cbc3f4990d42cce357bb8f498bc259d7fac96928a750f3af2d93f048136e222312ccf4b73395d043977551a72fb80cf08e869aced8d19a7e71032e2010256043e2e2c3e7b91d615a1f0a27b096a4169899d971457227db50e17e15b41fcb8c021ab1942ed9ff47185b2decffb701acfc4d2177ad16f8208839c92ff5fc2a3b2bdd4569ff1ec09deb2abf8d5022feb768157927b0e4e2a946963525f5bf94c71b18b539e3a242717621b4c39e2503a8a0c8b67a4d649104fa0ae61a7eb14aac6f7fcb7a82fdd255f7c294be3785ad4c7ad8263f6dcb2505706e585c1d0a83decdccd78eab1ddb47903145cb22e7b61f941453042895bf79b0e17629b896ffea7726674edcba7a42e93b0352506c648a4bec7a491461ad710798765079f69a51ed864ca3539a5e044383f2d51b3c60dacd300f6a02824cdbdbb8675ef6c213901e454d4205a24b785ff54f2ffcc22e011f860bd6f6c2c7888132f6f53b6fa84743c0dbd8e13009652a92e8256b84b235aaf9366b3488f836e09df24e2d80c5af1bdd7228857acf488d5815d3d8244e6fd3feabe243ea8c4492d30b7b9566079d72fb32fc9ad7f6ee32d73dfeb15fd52e36ab7b9628b7aefd55ac894eb3186d4815f08ca5bac06543afc01fed7d2702b2053c686812486db0f9241bdb013fc1a961aeb0385d671dd3f8ac2752ae1af263961c4e056bb82fd29d46155c4b526772997cc9c777aee8ede713520f00b34ff856f4b8f816aad35491cfb852598a9a0222878967072ea1e544e626a52d6e9b74e201b9606b86a899444285e372e9c4d714620bb217611ebb360309d80bf99dfeb64e97362ab7e42d7dd18228aea7cc18da54a53549135ea6164c24fffb0f7d1af1d3131ad44d0dcec7329ed0d761ca45aad69614a120631c179d916de0241aa6a001eee6152d5084327fa6da28fbec48679900f86af802aed738fe903da54c6e4ee4eec51c55ca19f6bac958d0ee35eeeab2cdcba0faadb149976f7a187b8cc109f30317b990fd5122bf285e1dad10fbe50b34024bb77c35cafbc223a8b152868206b8875e23ec7ca902027b3a169bcf541dace358934e87534d35fa28805e85953342324ab19f4186537efb01ce800bf4bcd9eba42f22247a3da26a0ca22168e6be5949a87bd086d181f32e4094bbe4ca0fae94b9cf57dd166bc490365018fb0aac6ea91b9b0d89cfe0419771f05b9c953284bc1f43d334f4757132267131f7514799c7b17f3d0922dd79b1ff3284a087395f296821fa33ab0d607a504a20feab165347f8043170f6275bd0fb61debfa3cd99bfc996fa5c3e073557479039c3445683721dbbb7466be6509d7bf7f0440bedf08dd5c852e67cf1d531e877ad26eecd7fc46f28dcb900e903fe30544817569a81caff5852865252045200b560c475c8d5bcc799961cffddc074ac99097954299ef6883ecc2f9b0f2fbf3ddc33bc736dfb7dec1f6fd6f6fedc3d16fdf9967e1ad9bb640d307251200d9348285daff1d7b9810c323c26b9c67f1329e6decee251bb50650b7b9ff6c92fb0fde8f96893beacf91f5c55ef1b714134f904e27c06c030ec8a221e37e508507dc3ecaea2f86cb905b16851cdb8decd71151cb2a39a2c0ca0c0e9b7c807735f29f365f4ff8112a83d56048faf487bd6bcf1f921a6d119f15d5bd3dda21108967f6e3b1279f5e81b6dcac6bdb7d9fd8f5af4cf8e3f6f07099aef7d4e020f82bdbd6891005440cb6eb2c0ced786965e36da745834b3a4f762e19b88ce9a7495ca7d63fb93c18f4decf93c709679b78c2bceacde707070828b95dd915a3e315d963797bfba550d409a6e1d0ee7f34bd35d27a520b0e21b72e03e2bd056c42b754f17d75b1203d27a94abf103ac492442f8c288958dcde2e6d6ffc387fe3829eec9408a67a6ae8a92042d42f10a762999603ed270ba31f7db42c886b6147c0a530d37039ab3fac517efe5282a6f29a95038b8475d9e4afc6ec6ae5c6ace6954ff4cd42d50ed69f6e36c3723069e41b4a2184adc03d6f1915b08f20630dfc15b7f6481fcc01c6c722fb90e439c180b444db6ad6b20df44907a2bb9f03bab04ab7ce9e3ece7bf245514dce9f96040a81340e47cdd44775dcf5ee227df0c0748109dced80749228992f01af59bc8c7726d71ebd706709aaf50ee080b0bac909cd449646a4f550e47aa1009fc7900d308a821b809d8c2d0335670aad712b2c47b53353a5427f85ce934965909f44353f9e1ec78c4d6f2d09163f45055091edc6267687bc04a665d6654b891cbba3db4756900b338e86628416c7e4c13cfd9b0f652707414a754a855074be080fe188b3f1abf95cadde7456770d0316853160ca99285ca8550e9bfb5613143a5f1a24f10eadf1f611ce50df0df23a72e814f738e60560ef0dabc5f7f8ab3ad8e5e2f5843dac6f9c0c9eb5a16097751f6eee40f460089816f0cbfeb9c32f8bbd0b8e5d31ec482e85a9d1e840b6e1162042561074e0439e48d2e15678db7ee619cfb3caacfa4ddabc7d5442dbf20493e0a748868bd60e8fc8190a38aa81c1e2e2b43303f05c03b92ff153761076adaaefcf0004f75d9f21eb2b1c8abe4f0f29073247ae83a6044d2854b858860c99c72019aee538240dad6d3febdf1a03609d755b4c5e6bcf3563785d0bd92a6aff7583c18c1b2c56864a3023d3d3e9a9c947d2471942781d6766c8906f5781a9ba589cfeb72aa6e2cd8d59824f6869d70d082c3015396b30af597b7f12c68f3944251873519193c160684fd2085d326944cb70efa3873606da4cf00ef8d9eb85f080da2f5b97286a2f64caa74fa9776fdddff28ef6b7b47d4b9388049cedc5ee4248253c02bcfb2d1ee03fd660a73a098d884b90024aa1c9df5cb68c9143efe7b120eaceb7bac9911debb56a3ce009e353af53b3fb6fb4d5297c68cf86f0d079e9472100c6a072f5b200ede7429bc8977b544ff631dd1e0f3882e98d4594ae0ba3f31e763b093f76e1f6a3d5455c09b2cc1d4a6804256cc021d22bdfa9207b92562b571f7ec723d08404cd6959e1a662a66bc766dd379ba1bd8ec07e29b8aa45b53096fd5ab166c7a4cce0cbf8a4132e7a30446f94953b60e231b4c357f2c8d3968b8d928eb3303de2b3551af33f2e4d74d11419450283c3e12d1534bdfa1cb0e1a6a8854b338b2d29e25b8653982743046232b23574c0c4331e0bac59f1581eb70b9271ffc4b156fb25f6d3ca70f42b02159fd6edfd58c468807ff8dccbba548eb85ad7b27cdc5d9fd42d41fe50123ee71852469695eb25502eddf8149018feab234bb1a355f7d52f2434270408bfb602a56a0490a6cf7384d2f85c8b4a34dd92aff7202fd0ed6388f1b10f8661323faeabcd29a7ac114500695a5ea97ecfc19e11f776778bebe5119b633bfddfe7976b44e189c07491fdb43da05c140f99eac6169f357160a113f23bb2904ac26ef4d3e9c8b0894e45c0a0fd3910d5d8c9dd7a0f9f3f368c39027bfb2dfb89082795a4e07a10b5ae3aaadcbe3fadc7e701562c64f9c5f60e03247a4ef69b9cc56d40bea2bdcb7942d015485f7b7515c374cf5b86e634803d36295fab13c6a7eed44863143a106c9a6aba1c2873240335ea394b1623c858227325e07c74ada6604aba5a0800cffc902b89aa37096be6e66789230938c43307d14f2d10ca94a16d661fab3d3ec45afecef1fd39e73c23ff600e299947cf4f65cde6e39ef55a61ede94523b2ac545452ec7bef3e3fb6b7a0449aaafe051122037389d29881f61ff47595a506cdebe652c06d9772b9eeed8a45780baaece2d060c7ae97993411f65c51f5b1c0654cddd0b649a75aa6ab64497a25129226f72c6248836840f7022b215bc1d4807ce5c44fd16675dfcaa616ba0987dc40fcb8fdd81a7a2c2316c7eed8f30c019f437f8f7e9507e882fcdab408bfe17f588e054ca87082ee5952078bddf3726a74e09c9e490400e88a1a4299a443b94389a16f0a2710d55ec713befead2de0950a051b1c170022e22b96fd88d40db443e5c47904d1c963ef2cb12773ae2cf659ceb3b46cba4d9b00ac4d585123eeb99b0c8d7778c2c365380f1f84ed905283bc882e9e27953b7b0b5b489171a1ead9033b3be674c8131c9f26c6f2ed99f454cabb3dfd1ada43f22ca6f5843d571fd8f318907b632da1ab13a90e48bd19e6d5640e4a418cb6ba988578d928c0d5d481d030d47f86f6b416811af7b4df484105f4692e55b523cd4c596b1ac091b2ac0bfd4e63c8544fe2e815a159841167bb05244f32fb6f26b9490530a62cb759b43c30c1b59b66d1e550d7927271e40d9fc9ecf4d06df5c3543b865235836c834513e5cb449b8eda2a425aa5e5a9813a5bbda1790a2864cc16e41848513f5f93c427f85ea3b9aa7f65c1a9987cf04f8323c8b524baef2d99087f56a9240651f8c28e13a47acdc0992ee7cd38920c8647413c6942b9a6d99d1f7fed486c97b39d0f6171339559d85b5f527d983856bcdd6a1cce2abe81aad222f09e2328b006b4bef944bf540c3dc3d03866b697bd672ae330d0d1f7efd68ea2013cfc58a55faee4472bde1c73f04c7ec740c4e107002dddf942571b59a85c89f2740e824729c5ef8451fbebd05c5e95f06843486dd4ff01c49af433ae4c8ec378c3295930c066f07276e3422d150b7c74989a759134cf0ebb26ab7e76570caabe0e110f46bfcd9b4a15f60483032ffe7350f3cff417ccbd166634800230ee20a3bf74372774e27ece29da045627b27df1987a493034f9cb039a8f91a5600c2217419454ee50250cda276198a315e72214e193bf65f27b8f564fb80979befb4eb0870866f9e958e0ef442c65486e0ebb38635b6203a485078cce3fafa6980789f6232ed3de4d88e2d96bd648c4482e1069ec34575bf6739c270d74bbf1d8742d016de19c11716784f8aaab9a763d6b3e6d5837bdce28e77c4e5d772dd3adbc19ab23691c7a0973178304ae77271b9b6302f97cb8d88b92d1ca5c5517582daabc93fe7e5306fdfeb13e100666d2a360d620bbea6927ed3154b68ee2fe4be139059fafa501d03719be5bf950337d8213bd6b95a698ebd0dadfa8f1467dd72d9a26d0e2985ba04f08b82efe38685f688e336a1e3caf521fdfbe61219ceb7511c0ec8e5169c51d8a8e36ffe00fca66f557a0316d11cec60315e94cf1763907928b079b8f4c74c9539d7a42bb652d4f6f7d263f436d7391609bacdb27433565f5b89bc5cbc0d8ed97771e53f45fe29a029586d9675b182a06b102aceab804604d2ad407ee0619a176c744035c9bc33decc180f9d0d87fb4b90df7a08c1895add7eb04e728bf0b7528a635c1b6edf0dd423e00542ace09e739894d02300cc237c350769cb20a714357716457cd95762b9c8b9454a1fd9e9d4179fb3efc3e3f795f7bb7dc0dee9801a2cf0d471efa6697b02469da6ab1ee66fe985cc277553199266273b1e63314bd7fb7dfb2f3fa36a612b7e9865cccbc7d1f616775f54d6880c1be23a48799f2d331285a8890dd1ae01838b65d220aad3c622e3d3e483d8957d44ea54bb4768f298beb5a505f314284e2e8c8424d94563ae6ac3446a8c54ba9b13b6a2c8c28ea00e4cb990485cedc0f7b6bcc8b88cac51ab1f39b12e56d2ce2cafa1e74df206c2050c57dcd7a0f87a0bb00a662524d136f7b8e6e05c8e4f5e0d95c5febc1bbd9eff3ed2d8b41edf7ea9e841b27ecd147e89ca95eaba255ebb31f10d3cbcd24edabf77dd6a5513d9194c7f6555c40cb1a3c981ba6f0a1853e2ee8967bba8fcb6835548bf9a582dde5502ac05db64948ad098b159bfd8fada31254c530396aec4e87c1a4dbeedae1bc17b702f73d94a0a45a3b4088510958734d89aeb522b746eb51f6c5e8a5f25994e3906b94e8e801d34201df93f2beea12c40715892d46a285246ac59bd7c295bd2fffd919b4490001b04ea8cd67db8ccb66823729f87db8b86d25ff54b459904fc26ebcfb0b71ee6a83c010c3566275fe920434d4792d055a5282832eee0dea27eb757f00b29410f5879c572a279113fc1c4a2c75fddbb0b3efc22f8383098bafb694a3efceb1f1561683726b046aadf4f4c065b870207ef084d38dfb83cb5ac19adfdfac8ebf9cf741402d60c37fb2dff682919f6d449732ac799c38f6bc78241a356f860328b06f4b6fe82630fb40a45cdb491919e2a6822c011ba0da307850626453b1ce798297e501993906b649c5fe536cb0ab89c56c04c4668ce0d8e1ae1de21b28d73e1debe07e2c18938b57fe94bba4613ef1844c44f90f8510e47e41d40da5a55c669c93f7d6fa902760a52d4934579b631ccc9c6cf08e08efad36ca23330bb96412953e2a2ff544f06b2bfd4e58ef561fa20d8442142d00fabedc7191a26f57ce0c4379399aafa4425288243d6053ad62dcdda6f7d2abe8fca57b69d09075f61d4c852b36e26547ed0c9fad313db91b78ed5b893cd4ffc08fb5001bcb114d30a61842270c7afaa9602903e8ae9a78ff8572feb604810d40378540918cbbf8fdedabc73a9636daddbe619dff43ae3ccd4a1a5062a6ad276f6d057b0e2397cd1182dbcda9977c29eb330120077701465f2c257ceb7227ffaf23c648aef1e294156b5b56b9c0d2062729fb2e37de1a9ab243fb7dd7c408d855e41573d763fcfccd5278eb5457ef995b203912ac1afb916cb45cdccf25ed7df4dcc0cb82bcd5f2e5a020d5c1787897208fed394e0c1c18cf07f1570dce729f7b3cbe61fc531ba29faf4e1b88e8b818497106e90bb7f142be76862e5051c1990c929e849eaa42555eaa2d60a54c468e7ddde73489691b62299d329abe9ad319781b6cd521c32c370670ca3acf71680788683c258aec9d564c1af0046b6ae18bc120b2f4ae20922229b85f86821100c6c8d0e0fcd2fbb07b64102a7afe37fef28c1c3bd8284d8eb58ac76c29611894952b64f445ab782dfab90a54968d42e0efd870ceca7762b21fea12f8ea5c81695870ab685108c03859f67360efd1ace95fc060013d1f496674f04936abf3d5503b739cde1aac6bead572542934160e2ab3b9026f7beae7de82bb485cba9cf19bb6451b2e86ea54a8bd72f8ad91d3dcd031173718fa0b7fb5a86ccd9f2191fe6d59e5ec4487d60bbb3c330cfa66699ab47741d4c1bd21e7775861740495a72817b35d9ccba3c37ec6fb8f8fa88e30817638b7935840e8993ba837b3a1e4856612e3fbe0d7aeb85f5eb4cb872849a2c220228543a6eb2b69641fbcc5b2c3cb5ada14ee76afd2ce40d58acc70d2bd25fc574881a5b201ef6ee6ac8d993682a11a5c2600e4df6ab59e3d14d617b4282052177f433fb7ffafea0c77341832c39ad9b527307649fc33daa75858335c864dda533db9a707f2f376278463b6a42cd8c69ea4a53af0bd13e04a370556f3c8d7a38d3b43f59c4f11fc406af33538dd257357eb5cc5003b6ee91b0ab95063915acfdaa3636717ea4c29ba17a8fa71c54a40c72c582ff90b07e480fc2a5a9924bb5e071a21f370f0e9039e6dc18f9de0fb827b244a37a2224da0ca2df6b0f586a69dbc7c32d8204016f3d8beac7231427860c7ee366f42a353d00cdafd425908a33841df7493eaa3c24b3f4cd07c4739ce1092dc13d70cdcc7603963c071ebf94c6c6e63331de9741a87bfd900022821a0f57735c2372a7bc17d4cb837cc0c12c75a82173f01db422e0690c9111797841b1dd9dfb8dde4fc9bd507d6db1dcdf6b0e9022a7b9709d964647cac340d6524c76e27224a3055f13c2948010a1d301fd4bcc79e629e2c7b2712e500cb51697bd2e9f2c7f8991212e96c9b37cc292ec83a27e3d5d5b2521666b995ff30985fb722862fcd950f52cfae2f17169b74a3ab8ce9e294be6e37ff56c78fa70aa48cbf52344697892ffc3ef12858b469d2a70b5dda8bdb38dbf65d78c30b2548d1bf4475839b3399ad973a50ee286e44c260382f9d872aaa5ad9848648af0f327cdcd38cc3e9df6d20578bc694432f8943bcfca7c52b1b5c87d527e2ac3bdaef0a7c9b3eebcb333cc0d88f4dddab206c00f132ecd9fe8144f9efcd8d9a4f2b8aa12afe30599fbccb6dd0c2d619b8be6813f91ebfe63d7053ea886875efa24b152cb244e8a9134c718268c5f32f88949ee588339806a3b2d613a7d9316290f2cbc0724287f2920c28bed47179f1ba159e16b8fe083a8f635306b19803e52862c71ec4c96354986c58a2e8efb012f37fc3ba8c463fb73fc0cc9370f10a06f3caaab26bfd1c2424c139bfcf9dc2621a036f1c3a5b1afdf22f43c7b7106d5c556b94d5708f0251f495f2a5a5c57355d026b8ca27fbd5d32d3a9b79112c4919fe24dc691e4fbbde56c58661d0dc2c3ec3aed8504de6db24fd07c95a5f7eb30b85cfa554b32817a7d5c8915d4d9f04744495cfe576de600d0d1734d0ee46234d536ecebc50fb6d42177606a57f5911be2e4afae08ee08ae130de0a412bbb926d5ebb770ddc0b4adda14f63941f93ceb3c091262e7bc2690b29865818d82e8296812671301d23d9d2bc42a703a400b383b8c0c3085fa2894f392455b4feaa161495e55bd0b1d5733fdef62f3a55906ee30835762518c21a7c6c7fe0559ef59f10f191ea1c4aba43d7b6f57421006c3767f8dbea18dfd7faf1cfa41c83727a4294dbce735d20503bb25dc64cebf48de93b1e878739ede2a066d08ebd567d138ae66e647c8d880b8d71cb02d9c82433e8a89cdadafd8a750e397c124ccca598c4734e3c9bf372c92d76530e69d80fbd17db07da496ff1cba99cc71fbb5b35ce2382bc18b4e009e1f014168c598d99bfb5c9b87f9e84d83c61f247e84d4936c440422ca0507c9e3b17f5f5eddb242b9f7e72d4c3fe06dc8a6449a20edf566196239b827f54bbca889aef1f9e0ce35452ad99dfecc710e806badfe6abc9a160c962368e82e59367dee065e8491fca43c33336d612196a34d93bbd6f1bfd298b7589022d38195a49a2aee2e9d9ef8e831f59bea19a6351ce68b1e7e090b46802ee6e61c843c75b53d6ba57b4c3d5a5bf482959a4e161003604e752a0fc18f0923f53b74c4c4046730fa6c3180ba6fb5e3d7b0bc3b9ad1841f3fd3bae114db71bcbd055bad0c8d5fcb293cec2a0a7da75ed515c1fdbd76d2e8c9b4881fa775066a5f229f68c7a082c5d1db4c8a4607f04c2641413632856649b6c559a6114f6f24fe28bc8b8babfef15297248bbf9260bb49bd04f1dece0f612d544495fb0bda63218f62b561515f11d839b677445516823ba5a88eaf828f637515d2aaaf52f97303f43d3ff5c0522bd73c03587c2f75f563ceb4a1a26800912f05d4fe00ec531281b64d07fe20f8df716d7dca7dce1ac293d2b5af0d14003ad3f93485027a39ce2ccb138d89fbbb6227037209a8405bb57717875efa2aa14bc17f83e959a692e6df374f56b2a7ed0c92e7e23733ba13982b57d4512f52a92dad3801d23438e6a426228c3ad3691d9b141e39aead5684a7a4e7a17ee2cdff9d81f8103421c8a650c961a9f5f56adc511bc65402a7156e3406a21bf3ada4b867941e8b13f8f8687c0b0db629b76e93ff1fa57ef6d20c269543000e32d12f852e4b924d0fe078d794c485e92a68c9522196ddd925aa2daa1718a08db0c2046f4fc1f8cad6e78e49406107d956ff255e4a485b2186f26f37dd0740083d9b1c047d4edaeada215bccc0f8196e29777ef4b42fffc0ac17fd8edcbba7ecd385d18ec551917a82b64da47a9a3daefaf5f5e1d65ce592c106eb1b7e0889b48829c3f99a1bc089578a3260a0f49d63d0d81a13f650c5ed088d4cde90aa0f51111be153ea41249cf85ecaad8a3ccae8848e9655e569ddc6653a897a763d40529c54ddecb099730bcfd54ae51d053c8327d1176f548f07bfe0fd028f26f6f6903106a892f0f8a1f7348c9bcfb99280f14d7913d238a3f5bacbd07d443e69e4d8da8ec881c14728c82b64ead6f21b3400db58c8c3a749ab436e852aadb8a896793f59b08ed59c386d7867cc26878e9443ff85c18bc87e0841d6946b4c673de7c838496ee1147d813885e150a2277d9d7db1e1ddf21ba061f6fa018fb2582e6122d1dc4b5ac7ef1d50ac54fa9961f1445f85be92dada9bcd239c1e4bc4d7a201711e3c9292853986cbc78c356e200e66d33423c799179ebd378aa69a8193814c96de389f741ed020c3c14f005bdc12d4de549bb4cb57e322aa1043e0cec6d4235d49a2b2a835682cb2862d41fdd8bacc03da95512b086ee09b2533947561b078760011e3d232feb7061993689893ce0c52933110ac23a7f5f917f326df590928eea6e1cab3e34099b3e553dc2f8ae012b64423b51827002f014b20b54de562375834d5434834be500abd23d83cf8b070b69a1da6303877a66b353e31833fdaf9286903bf2436252ffd39b065c64e459b5dfa733f6cffeae666c30a7d0c36716a5847762e13dc89cf555a648208a7670e2dac95c7dd6d6f1cecd9c6ab600ad92ca6354893669556aff53dfa9c6d69b37f6cdd2c5e564e66fb61ff19b0315c93873d2bf1f49b2566cc085efa4d839b46268e0edd15aeb664a2bb8d061288e58805675142bdfba4fe41118b68e09334d1763b2a4fd985f83f0dec4c3830691c8e1f7cc5d9d204d6380b980679488cdeac5250718f7faa9e3bcc3fd1ecaaa2cb450f563d52fef98930b28ae4fe881134b0e753b3517928d09f13bc3bc7b10be354f499c829c39eec6a1b38966d26ff88125f937c39a819bff3cfd9d5640933480e17de1156254aff481471ff75b7421b49de344e829ab367f0518fadfeaeed3f224884e29380f69d35e1cec316c8c753707cfc938c71fb52966533e410fe3028d6c32a1d2b99f823146e7f55073d410dba896dda0581866eb737f553937ad3d00dd2c3b5bff4cd8e6ffc6831489a4167095f3d9147b59b6d268c59113075eb2ee413c118e067ed3fd754f03a1498b1c6093181d245f62df6847a6821c1bd2f6c6517d0870b0af69b26ff365284413d4e8c152c32c343d2560f6e212a1ea2eed90d4d132ba3afa6bc903619c009d12ea2ff4c8dcd5bf34870bb97fbb01dcca8cf1087ec2aaf0194c7fbb783b25a17d2bb5fdfa8ebcb817ce4242eccde15e14f6a2ead5b731811a1a822e8b1a266c21a38bc29c70a4b5096daa884bc60d1ab3ea76e37f5ebb081784d3dda750f1c2dd089fd64383151ae52476f2406f3aaf1a55b7ef8806ca71b7fd3fa4002ec8fe9ab2c6e398cb43aead43a48dfc045aa1eb3aa7787f9bf7857161e29f29f19449b479cc751bb5636849805d79fc9c12230fef2351a6a0d2c83c056adebe95e2d5ab1346acb7657cb164cc06b6e2662e2a6c9d728d67dcd51c5ba7cffa04fca96aa7d55b3bbf41246486707bb3d2c219109c9993bd9d7f586560ae6365d15dcfb5338b10a1fb06ab99e84512605c8d5a506b09048efb0b5403829ebd58add331db0a41fe578860cd3d48c48f499c076327a370eb5f315d02d08f0c22885de97f673a14207b951254dfd38e6a08f97541b70d002958d12eeb31b52fa0fdc4734d642e86af14bbd34a11444f0fb073ddcb58b16381f766972136470307176bc8f8c13b46f7cac6b117c5d2ba3ae5cdd944d7aac5ece7de7a3d4e3073559313db24194775dae829a35e65d94aede43901da43b52f8a50b0efa5aea0b72f8782e2f0548e0ee73eda13fea8ed57567f7237a872719493ac7481006999ad81df54ce2f8973d784ae6e2a1552ea6c042e16e9c0b9a60ba18fa9fae96474cc9c4ecf7fe722b34ddc4dbcf0dea7b4b2ed7a212f8cacc94a09cbf95a903a6f5c020de628d0a32e33cd307000dd09c8edb50eedab9f96127986e4be3323ca879b3d4aa50507352a39bc1678b5b931768271a7442c74d60073255e15920830a38872dd133848ff42759dd30a2024fde61517073a21834704b5b89ed0a328c93bb55fd41a5f13919aaaca0bd7ec949d9efc2bb2d8d90305ae5d364caa7320ecdbdb46f80c188fe3dbbb5b38fb464b4e6d9db5790db4385b9f84f86116b006fb153f7e9672dffb89e7227ac3354293a4b0792f1566717fcbe98436873bac1c976a3c699fabc5c0d7b477aa9f133128af324a95a09ac798f3132cfa5a16d1d7551f5a1a8d34d86bcde5b04aac2fca5205b58a5a4802671f29d4fd4508b81842ce88cd04cc55a2b73dae089634bd2b2ce43f792e0d2f72cc3810b9c8e2707f3fe0bf80bd45130f6007ce7c3ecec96a4285adb340317ee0ac037c58a7f76d9045ecda1931c125dbda11a03a3b954447da11a7d163e4f56dcd8b99879483e7fb69f1d336c40461066922d2868b91acdcb52ad523a7a68aba40e9205b22812496f31fa17dc923423a66a389d9eb91cb878662722eba30162b148354c3a3e66b24c0cf9586adea6621025faae129c4b9a58484caf37abc49aa5f29971daac89ee00c87d1b945c902a44f24d239a3ea1df6a2e05a176af36f2476ea995313c2729bc4c88d136666b79085ac3db00e48e9735900e98dee905a4fb1e162f4055327b5c87660136bfe42fb789f7dbebce796ec6630bdd5bd55c990c4318bad90742c2e548f02104088eb8f4db0d55bf982b18d29806a90c72f50c0b361ed6fa665b6526fd94ce2b0826e230115aa5d73279f74f7213a9fa3fdd5cc3b915b4ef5b60be46a505be3394bed11d6ededd76bd4b830ef7b09ccd4382b9b3d07ae50c2e407509ca6a1859d2194c7006696662f014ee5a71514f5d9d3690ba0d54f5ab5dae33682d786284961d7de79c4edffe28a1c01a3490ceb20811df1cfe5954b13d9aae5496cf022cd8bebf128f578caea3851cec11203f7a8ae6fab747d0e31aba4d58707428fd27c618a3630266b5fd94d4b8068c8b372f1703cb54e62c87b5e605acdb8edae624b831f825e09051b1de1edfcbc4946af4780401e1d023239bb456c78416b04a42d2a7e12b468040416c85624e7f99c742c785010a0df5f1ece5ac7f73f7867c90e7d72026c6500dcd948eea5bea83988add5ab266e4c682713d393787ae83cfe6ba699d87ae7c59e139d37c40474febcf1f2990e087d4ba35fdc2849ae172543023eb240e3fb7fff84c42ab276dbb0355f1cfd6bdd1f0401b34e33f9b405fe0c13552ebcc55bc40802529cfe9a3b1808088283096c4e6d70d57754e2a9d03c2e862bd9b3845a09bbd5bf0caf33eed8c2df58157aea57792b65159f4696943ae98dde48630a55ac6118863c7f93157124f147234906f43caeb64d19636ce9453eae6b2ca47230f87ef5e3da7bdc72b9e7a0dffb12c6b2323693f25069acaf1a869086550cc0712f88e6d210cd144681031b1b1ef442ad258c7fe242e5dd9ceb7c48cf303cdbdbf9544a07341c729e362cb3d276343a4865c914618c1f103c4dbce7d5cbb9228eb635926f39ce15929b93808e57e35427fda15fdceeb46b8387d08f0102556b01a2754ae28b19d5a0d6720c71755cd674c780831f3cbf345c9bb7b68b2fa841cf9ed1d8204ac05ebefb5ad1983deaead2cd5c71a960b4837d22946dc9d3b60f0750f3d8a53f443439d78b47a43e6c33415e75bf0ec1dc116bc66dfefb2827a827b8f415e9dec139af8cd48937339af8d4a914a236fce4ab3cf616108851890ca158ab0e8a8ceb89c28cc2d7bbfd7ec377cbdcf51e82c3502a8fd2fb869366b9d7ef8f45f1064d076c9589ea909019de686265ea92369b1e4c8aaab055353ce98a4485167eeb27738d89c83386affd93c2fb0a70046fa60ea0899e3b5e51f80081a44e95b22b4527542a8c7ebfa7df96ebf11a98f1e1f98f2b4a56efede17dd6ca0a8f5992178a899e35d02af5f704b0a5d7790535af471b5e80aaad49dd11cc8ffda61c4882fc48399345011702818437e16306dffb98ec16b62b2aee70551e48d7aaf0f4858182fb584af2a60df13dd117444d5dcf2586bd96a399a98af3e4ab4e1c7cc39324ec6a4e82055cafc705b068d6f877e362b8cf38521862edcfb7e7725821ee55aabda7684d2c5fa6d313ca6dea0a1ea54614c2cd20a756c923a12c056eade4fa898c81677958cdb13dbe80c3d57773cdd9a3b093a4c0f670b023aea301a1e664559ee1ba88ff1ee58557fee5ce27d69784a9ff7aac9daf810226065317dad81887104bc5647daf1b315d7e23133cd3ef1e14b026cb4a0b3d9030c5060baa8a6fa86b16b8816281f68ad0517f1299af5387cdea3518ebe8eb402b62160ba6386d05f5f6e1559beedc540167307473a1fc88f1dd0863b6bc3be1c814c3512e77ad9eb1c8b7a0df03553a679304c53cb767af8ffeef26e3c7f34dd132a67a04c9985187e7392b0a657bb0167f900bbd00e403d313b098683a9114cd7b8cdb9941fe1e1360e8718a8e635ebe6a06978a5ec5d988a82bd9629f52b66d53774f5ef387b2dbf535cf3099ed3bbcfc3bc9b1a62d4e07093960a216eb823704e12e9a6738da157189200ec6c66bb4d36d189104c2ee6e3da1cd82cf09a3f7a61c11fe8d9acb53be3b2f13190467c7653fcfea4611ef3b5fe8b929151afd13d7b84a483d45954cf44b0cb899c994e01ac5672856cb92f1295b7b72744d482e2480dfac1c2c7ca67424702a2e10305073f2e258405ba22e3c69c7416cc3484bc6cda50b73644b78c2769c5a91122a078d822045f872a98d8cf6d0fa0be4dfa530f21d31bc82a742186dc0e1e71ed3943b1e73169ebe91c030bdbded3842eca6734d7dcba1862cf43fefef4918935f80d8be1ce534537439385a0bc072b095fce1d7ceb81ba4c727bca08bca20b71fdb13642af122a7d4b3c76d8e5291c668ed687719ddc54443ba31e287cd1e269cd2e680ff09ed9593a1fe42592f852127079c181f0e54d42eae0ca0c7e4c19b3878cf9b1b70c65c819795105a48ed440746846b7c45aa42fdf7f8117f45ca6ab4b02ca2b9c2e56319cd15cc781243f332ba8ac4f2288eca4353af9c529d45d8068cf6ef2d9d6e92de847ed792e3b2da51186331bb022e32f9908783a7cb8c8c4f0be769140fedb72865093f98689e36ed0a2959777626a70eeb988d1722199fc7e92e6a8dfb7787826bbda017cbbabfa833b9e3925531a4afc45e9b1970a861d6369d2ed71482db72ad082092c11165dc3f8294a8c71d38f790ca511bc898ff643ffcda3e875f8a0b3b7c0d49497cc2d842135b17f4dbc1a4ec8c55bb67647b17210b4194583e046df9b02a53a7ecfc6b195229eead65e4fb6dbd461bef4f51b79476cdb544ea5ceeea7b4d906d907450d2abdb5f06443fa8e1db3944bbe0f5089ca20a649789e59adf477d17806131b682b7912c3c4e2de22a56fd817e12b16992f3c5f2f963cc64c24f958c55a9b3f719114e559446fa316e0fb83e5f547666a6b73e95c6706f3ded5e9bb9d0cd9619ca9659445558295b59c017b1481bfb1b7899580b384148aa12e5a60425f4998c02aa0a7c2ef5d85ee1289556d8cd86694dd9298b26f39d040f7cc469922e233ebd6abc7eac863946e6fe7d66c4b3b3364a54e9758768f8c2f51ef3cfb6ad400fed58c0c4a0671d66d0df6319c0e2b4ba11fdb803cb2b9a6246ed159c2a23b3206ed897206b8902eb796c142ac724db8319da5db61aa6946595ac7b9e40319d9d9d718db4c187c6782775d9a054a4d042cc5a1adcc779a40bc70343056bb250d50e357fa2f56ae37aea578d5eec47bf1ad458b669eb9aeb48c5714af7a8067dd71489fdadc66c81690efed6600e832ad5a138dc53f7d5881bb98d7202cec8a5601a87d9d9186598e771e73efde416d809ce71d90e3a4304671c3bd70de1de6781e3bda32caf3754408887d5202be0bbaf365498d69366284807b90abc934a8227e2328f5db131566494571aef8c99d3b084e82cec4c86f75d1e67eb15f5ee60ede4821ce3956898c5e1185ec592da7a68ebaadc1f6fb9c0f5615f02591acb0bdf32384b067f893a3090cfbd3e656765858a64644e0f62d465e9529185ddafd841c7335eade2dcb8e510a6f66a531f9c123bb7a65ad11e3279db3cfda65a0df2d52fa1ff170e2e63dca68be5ec79b84a94def6368304d38b44b13d198aa0816aee4b7bbd2a47121d7b47d514ed03cd7b5d1f879ff4a4eff3cee1c0e15d7fb1d0647ed5e70a06cf93c27b8be76efcdd288eacbfdd4a25553dab91be84393d4b69f78dc43d81d3653151b54e574c2e705ff2995411a524f92c02f883a3a949ae852ab8a26b3db87e588ddf24c3b2a071a52e9a642cca8a304d80b5ba4c839bbbf2eda48369d8bd9db5090b8df6bf9f69d7be90a75cd7fd012b18319381f8faac79f2eafa693e9211a91a0794e68d7fdb36fd68758f9d821ad1d6abdb97cd3bd396188de2435fdf4c675477e063ba8bc340702bf99be0999dcb86736a9b3564215317ff4bfac3e99881221d64249c156341751bd63643309bfd9b6b63361233dfd8dc472dbda83ce3114d1bb814b7d591d90d564b97a70e187d59d532aafb8259c7acb0a87c70f997e151e7f4d69ee776b6fab66fbcf88e08b065225162edbee234976e2c063d7d9854571f7374f35218ffa1becae5b7b4809e21b074e569f8d68d143242a3c5535f87791261c7bdd195d98b84498392e1ed1c3307399d9c37ae122df7445ee435c92a0f00a85a90cd182748cabb9c061f5c976182c4537c081a9d33b1ded532be29ce7d1ab6f21ce82a8726e2bc2e391d5dd4245b5791abcce02fb10fb24fae6abee0a3ce8a08cea70ee45daa141fdace6d12a63110a95c821edef343673a6e01f428e40416e3d68753ca99db69dd0b26cfe8af220e63490ea5e056751a9968efa99d1fb0f7c4a9e290c2bcbefe385b3f04866c32e8fef57d241fc5c69374b534d4b7e49921d871e9a809f4b740e9d3e53c313ab3d0d7afe022287901f7822d1964527cec5380d5e78b5b5294c253cee5432359f651e1c836029c961139094248a1258d4fe38f4d2221b4968179bf7ad1466de93bc4ab9dbcf1991c648402dd9d3006258c65f13409b52b029fef9b2ff6cbe141845cb29d27de79e23a28994fd8c2f08200b7de8f7d16303a80b46eaa1483c46a533541d468e0182d4566ccb812e7b94a5154560fc1b1a558ce8a7eb24d8eb1407f4f3c1ed4ce2cf18b6a365d5034a7cf9bfb1efc9b8a18bfffc8b248c5e8ff537718f736998e1d5dcd1a7ffb8fc1f570726593fd71114f0e2de1bf1ed8eaeeb1903c22fcfadcbfb9d4f7bff3bd08ef2c6fcdcbe238d463fc9178d943f728e8284130b0c9c5f4d5f5e09e35e6a803ab002e68c8bba40ef851a4690017bfac94b9d578cf91d2615f6412360794bc4c17628a1bef13351145544e7c2aae73ab61f7be0d1fe41a564a90bead0ccfa266258f24ab61997f45e88839375c0541d9a81152d57681044b5a4229829971e59950afabbc28788ccb05f4dea72ae3a4900a4c918353342e807c3208d21db1fcd6ebd2228fbc5d6d564190f7da2138de1015c08c160f59e90a50df72baa5e4a17eca40692ccd540702dd4ac88ef3701da609f07d6d5115dfdb473f51f57b061fa50a2c6fbab608e268ee278e4d0c3b4102f1aa27fc740c5b601f3db8245419189826daab749ed01a92f2999c63a37379609439196983304d67ad1e9aaa9b694e63af60fd5b5edc3aa2823eec9d0e5a491f608b7267d9e11e2f82966445f17aafbd0ba6f44c763d292637447ade0e8d666d65425d40389efa1cf091bea481e286f6cc1da8368d4314525adf6f7ae27b5df2c3efb4c9da8f3311a5812a15c9140e8b14315d7f7695c13a9a2df05af053d3a247e6dc0a61267e6173655b101f53b1688c5aa9354c8490875acc3bb47ce72b63eb5ec7adfbf66380f2550c418432fe47df1ecc0544187831e044d0d5729aba90537d2f390167b4ef46eab949de09eecc1e0295c76de707de9892ed2bc5678e5aaa5ff7bbff86b2cbf5f49874ce9162748b2a43851398f43f1cfcd95a40d0f4a59c72ca82e740606bd10bfaf61866821b163c536e755954275b39de82092db790eab5f89d37bb522268212d75cc9c798f643a95b18cb146802267338d37e8843e9c95093d51971e275a742ef8db39dfdaef0b896c4287507166344f2b51edcccd5f3bb5d0caf0e459135dfff83faee382d3e41031cc7d0316d4bcf466c927974acc0aec849905c510f5054c98056bb2fd026d28463f4317713bb36c073acd5dac662d45b5a9798a42b1d70f8920bf353051fec5c6a83d152e88dd2ca3c6c50a99d89c10c4c2a270ab292755563206ee13e2df9a4bef61397c230087f01fb05b4b6dc6c8f55c4dcea745069b0f5392dcd5fc3f450acf319e2c5b00d66a726aabee5436f4a2c67d357d013e161531384b23027f520c20d1fffcf2a7202b88c51a7c44b6bf2f63149ab71a0b58ae4dc72231c8fcd60d2ca4c48fbff243249be2c40361454bdfd58534855a90d9f8d9629ccaae1c466afba74db4fba324f439c97406979f01541ec0cf78ab96f5efb851428cebbed3aff631a044b9af96b4c8c2213e82e76f0c126eadcb71bace44f21ea701f19869492a06f2851af0dc7cee287f0cc5ae54f0553aad8edba40190c4fbf4a1180a9609324c28085ed718716fe1b903f21deb30e9d2a1ec1d94cddce0ea644f9d333fe4f212e315fe0f3d1d4121095fcd71838c224377a2aedfada43ce0ff1ba720f89d82bc28000c3994a56777e7f39a995f4c6d0ede44eb446096850eb341cd0c4d8504404d259beca37d35fb9d12075551370e388fe8ffbf704430dbc00a8a48e389bca82dfa66511f232c18d338da503790782db18cb358129155507eaee2a6bdcb2d5014a311aca75319f71aa7db3c8e85d331e3ff39f88cf9144a08baf3fd4e93efdf08ea46ef913691544cec56006633a08cacc399d2d355f6022afd735b5c32b5e50acb2ca7a4feb5f3d80fe72fe5ab0ea9cbb26f3efb52068d1924134856247269613e21ae4bcbe74d4637db036ce42b06df7d1bbba292e62132b57dc0b41dc6be3e01b3a5cca26ea4505c318ae6b9ae3b5c05e8bdb575460685bda6d682bda5a1337a930807411216b758b32542ddb76fe0421056fa2911cc7bf375cc745659a8a64fe03a9e2805bb9eb49860f483d9a0abaa75761402a37c66a70d6cce4924d0355c323eab95a3fd1eeaa209813982fc459b1493f32e8e8588cd81ccd146823e2728ea20af131699fceaffc0b0fefde0e5f30a7bcf87a712cdeb5b895660aa3320bc2be9bb77a40dbfe1277be1e7bf472e00a472f2880cbf7441d95ba87ee976015451d8e68dc7188748d022f5adf8195b22bb148c91af3a5a7e43f76ef8e7c8ea7cff557decbf412d55374663177a4427ae03ec7cc9fdede4f102d1b93106957756ff035553d25d7b80588b77e83812f566c31f6c3413864c158d270905190dc1798b86c958bf4edbcc516f999f16a531e3f76fe2333f353a6f5dc37a75a09f746c3636f46418bed291e6334d1b701dc6fc3ae907860adf00a15f5b66184c7441eb7b584fd196af089bfa9eae055a93b8d3aa9f07064514d4108b3bb39e3d3fa2a6129f9e6d776d1dfce884c3d4f836c7cb66be33c3d054fbe568a1fc0e65d97bcfe9513f38ca7f7b1e4873f1cb6e71b62c9cb3688b687a841e1e6d33ea3d23d1e700ba201883886628d3c42bbe9f82279851df86ddba256d0c00e07634b0f0af884a113fe2854fb61bced9b4775681a5f9b378e7075763bfd71968f5193cdbfa2dc967ed4fe10e2a2abb63ddb8b39a8025a5d68e1fadb6909d02de70ef0733569b10ce689800e71bfb270f42ffb6016810ada2f50ca9a887c07557455d729a3e2e59d5182fe1ac08c997d4a6d8714fc791a65664cd031c1490266d680bd4379f71b93836339e216975831ba1c153ac9adaf8230a6659989bd2e664d996b5e70b9720e1a0e89a2681873aaabedd1fb43c3f9046086de12d7fb49c2c62ca3e87c847948fdcb3104ea557ee969dd29a1aa49c6757c666dcd23c9474aa28a6a8ee4216b9cd9bdd49ab9be34f744b7ed164a180912dbfda7a0be51a0ab0a8ccf1548e36c8ff0a8ebc55d8f2c3cda5c522cca47625d310bc4ae2e378fa2b7fc435090c9aaf0e861efaa91ff71d51838a6288559722ade02f511f563664cff3a0ffb01855fda85687affc93eb0656faea47795f4f2f3bfdc8b3c565f52c58b20c6f470c46f9d1633df11683de880d8b9a6e5a3cd762a814103819e8a3d5196e84f1d46e50fddc84515e5e049ab429e9e7d816674b36dd46ec4717ab161824599a66a6e2f42613d556f822d4780b913f0a87cabe96d030c12da5b4876699201cc6abfbfe201e905eaffa65c4c3792cb297937620cbb9b9ffeb4122a3e85073d67a6e680d0a4d2261bffe845e98b0eaf2a3da1936096ecf46d5d521faa6009e0cc6a97baef88ad5d693ceb107fe45c6f31fc5f982444c75fba94d820179d3ecf8e4841da27c90b1f659561f8814d2f47118f650fe54128921e9c1c00498118a83592bc8e5ca2e1f218b9f02974a670a593d8ec985eb544f07fd193820c1d86932dd6232adb706f0c177baaee20687600c2b82a1ab35aa2b0f9c3313982fa6e634ec72396923b1c1bb72ee8d13f27dbccab09b11860af0a73f81af55cf43294ea9f81f7761108c61f9a14731936e88e4d4c2138db35691bd273ffbee4014115e40f06c6bb53663a5ff9f7e989a8a7b023295a3109a75a77154a9cf430bf67dbeb99fa79d5f4a01ae69bd7dafc9803fe41830d26ad564e9db25d64a33ee593db5be67e8dc352549ac9863081e118ad1393d6aa5ca069d14dadfc43cd8c5b9da7b9834bef98e4bd706d2e6fb9d768ed12daf0b5cc90222a82139ed20804b612b15e94da968f9dbbac5c3d1db9d09afa539a19f4e923bfe5235bf3846cad469e7764d1205d6882cbbf548f232214f7daac78135dfb4063b26bd28b5a9bfe89a9a6dbcd1e38d313e045e619374df1ce27e37f521a87b8570c628cd8e2cc5b2eb14599927c9c745d873ee641cf9e20986f39da2a98dd8bd6caad6d699c207cac1251f22c4ccb053860c424a520df639cde3e4e1d0a927d949e9b121b387adaa017943996db18278942bbf56e2cf5ac509df39892d830b015f952a3bab58a5bf40c7783b4a457af722d5e73ed67b27e2de5751fce4132c271623ccbe7ebd40531fbd24ac041f06eb6b124711eeef5b06e300fd88f67cd2335bc4abe2ebcd881163568c35aedb02f05af89144956677699a0c937242ecc1c4e0e862eb34999f32981cb63b0b42ff851b3e45c0aeed01018f67e9d78896d7b1e71b8056d6c8ee7f64938981994cc24d3c7691f08b6912d631a0e8a399d264fd0afd59769071fc8cdabf6f4a27bfd78e3f0e8768385187389f70621ce7a6e69f472ee342ff3e01ef7046d7a51babd5351efa1e43656506abadf699869e4764b11bb249886a86ad4ae00d90c51297f756ea910ebf485d3aef6cf3d98436c2e4d1dba5532d32f049d13be2037b5da9bf5f29d4565ce8c807db3cc90630029da9061c76d50a47bef8fdd4c8c022c0aebd9e4a9aa9c2adfbad60b957b34a2b34074197a24eb5db0a702e9bf565a8c4cf8a6c0f90bb72f3847a5a85f61963e40ab6a39cc283b3bc5ba3d355f77917df709c30c8d97086b8bfe66caef606d176e149114619e6ef84490576b6de2d7f05ec3861fce262d9a6f776ea4c2b07a9d32fa736b15c0637e38d6e32908b041c97807a61f599326336e855b25b6af6a39d0a74bdbd002eb4be30af1f6e6577072ae4c06b7f4b65901f78bc13bb051edce2cf30819cc642dc03c3935914ccbedf171723254fe0b64b958c3fcf9a0910a57034ba577874c365d99c545a622b5dee0bde2e3965b7d0c24cbbaaa29050efde94b660f671592e7cf7623580d89a952e28d45a9da4525d6f98844814d56d29029e92d19f7997717689a5ca574e48d8f49567e0da9b842f2f2cc0957f0d53d011a22a86497de0de7041b763698614af49809c17e82efb08d7c742ce4fbe04d5920c54193175020bf956b4829313481b546755f6c814823be19a0c017cdf01783762d12a79bd77ae08d3c39ab87e144be4439fbaa08fd0af76aa9b6f38a8adee7e25f772fb2eac5af76a351f7b9dcaf7e9671947374766b561703c754ef345b815ab8a7ddf3381032adfdf1724ba12b389bb84f52c364314971db358938b7215f0989b8228ade35679f99ac4c35f96f971b810a7ee273b20276ab4aa506090cc864027e4b11948ca234f4353c291a90cbd38e6e4dc97e6c745ed4d539ed39aa89d88dfd12a232904e5989bba5b71eb0526cdc34eb58ed009a9f46d12e4041387779ead235f142cb477e31f0e44e5b677ab7a6913de2ae9b0857cee31b62ac3679fe9d823198aae94d63fb096424f2cdf09229be839e7a2a8c1b3c39f6a15e31211b339e8d4762825ba7300222a5320fa1acc45e18aa607b3415c18f9a425da694708d5534de7fd83786080e7c969fc7449d5ab024fd556327bd211a521d85299251cd1d14fc528bb024e89b31aa135fb545b7f5ecfc0f1c3b86af791d7d6bf26e4afdea2faf6d94cc358ce5c50f24409cbc1ff9ca469f152f41c399a99eb5b339efa4386de7d1af357fdf8eebcf07dd62219b6d508decdf36e72064228b4a1844e0d20f67043b12a53fbd7db1b9d4403554e5ae8fb7b534988ed770751ab0d6f6414ddb494ec5e4a1f2f619dab2a4bfacf9b021041f0a2f0df6937960f5f8b64708c03869e674bd0ea3749a547b1a4c0bc644c98f521aadd392eaba111612709407675c2ddbe09738d6af3ebc9e79800e48a42dee07d05afbc5fa239b1b9d640f68659bda3cbc488e722995c2ffb70f2f4901e12d564bcb2920bb6145c81c29a277e22ceb4375288227a9985f97dfb7b4fd6be35032a4f0de6e77e5edb676483d4467fd38299ab866cee9f3b7cc1835db4a7a2abe56da517c1af9ce0aee5e2c8b63153d41acdc18da0fda763444982abb55134948c0dca29b761a601c5bd598a4c972614edb6c2543038c008bfd81e1db9c53009b5e661719f03c025461a4ecce280545e974b12ce565d6a1126275777f8de8c224f325d67821dde414b3cf020e85051a7723fa437662a591a39d278e65489cd4c90da2ce45e79deff6de213e0984d39fb7d3be7d66d6b39cda24dfb582cd0fef0b784efe0e31def20a9c7ce8f53761c9de7fbc9cbb5e9b9eaaae1e382377ab3321bbc7fadf5ee6f41b6d676743c3f610dd7beedd02a1420240e57a4deebc635304fdaf5a0716e5c5200e8a62e37a62b51c10a67d0eee7caa953df17bbbacd76f3be8939447b205520988746fd1bef45905c9cf1efb2dbc866b4ead37982fcc3bece0fe1c9723052059b1cf739d39394cb306db8387a0d990131c06c42f2e172f67cea28e469c8911336b09fe2cf580613754ab565fd41a973038720424e04a72f92f8dc82a43a8fd185244fad5aa9d937df8433ddcc15924878d2d6c319a5df3822b5e879df02b7896ca9bc4877dc8d2b5adec82fbaf6780ab36f8bc7b71cafaf9b5d59cef86750bcb276eca53a35472b4fb06ee1cdcf3a363e3f5b6ed07c2dbd757021ac2a7e6235f1207c0badf723fc89e27c478afe5ce8982c5d334f14fe1b49c076ab3a68a99140b27f285acceb01734eb708aec69d26962538549825a0d3175de875e86b93e29a46cf2c17afdb9ee6334c9d9ae57b60bb27a734412ff16e399ccaab07f81b58553a6e5b0709c12953393f48f78c1270c7c13c2d42f0c98d7049259fad463162ec551c0de89cbc4b76a25be8c0443e0b140518b3f2f4a087bd6baeb6294b10ea07e168c3d95154ef26631a0afd0af0a21ef61dd3cbd501cb14dfaaf76e0b3cd1e0e97f180d9beec1e648395869f0f44c5fa16b6d95c0f8f849b7f99d15eb3b06aab7050e56f058896f0914e13fb3956e693909f967df365f2c1d16f85d93c491dbb5b1df904ce3659fcb20977a62fac57ae645507fb1224fabd1124544eed9fa22bcfe919450a6e28890251ad7328369da357723a070d1f5a2430efad1a4c524daac22a705d98f7dbdd1a8a54c5d9385f9bd189c12f6f5d79c146e3bcd290fa6c7791e76f886898af5a3a9cdad0fb78d6de6bc2f8a723b16a4579e122e3a3db2ebbd1f9516d6a0a9b22366f8d912793a3a093d345966e3958f447456324a9227921b0bd6c71b3e7b859ec5cb9c59f65c1eab41852e605a6be8fbec66b293eba39662dc664c094962a730d661c0db9e00d003ed9dedca1f324ebfb3d286d57b0f581d88e81b13a86fca000f290913bf707ebaa00371541d9ec012efa05d94969d5a25b0fb47d1578695818facf7288a8731053dc4602fa2b4d0bd4e43d976e15f731a61d482e9bd43ec2f4ab24e137878bf7d57db09b5f96109d8b5979dd31779d4018dd25fb2b655333cd32f417d7979a4950964853040d4e5960a480b54411e7ed43508887591f286a6daff86064c8241a346b3bbfaee2ad41593875b15f702866ce16d3b973e9b337fcc45585bdad670dde851aafbd4c0323a8c6bb1faf95d9f652252d280d676b02a34f41d055bce2f7c39bd2607f9991d04ae448f4e7f2316cd27dcb8625be811cb2e96b7ae9b478186469ee1167b415aa13b142bb93c23f02ff6387a056c39a9908f2cef4cafaa469ea964ee9aba8ca96e8587dfe90745d80f68ff56418a7f7c63166d0c0909c61b333cdf70aaab60ee6c2a3999318b655b2b61a07bbc28ab614506a2be83c4ea281b9b8879aae3125f121eb17dbf9540681180faefa2691312dcf8cb0c02433a7dc58b2b3cee379e05a713003ecb63d3b1ee767194689f196efc43c9a4365030ebe992d035e0ce23fc87f5766f0c6756845b17b71a378fd73ddc9d16c2cee7b4e497e1f29aaceef840e8f17e5bb79a75d96cd74c49f606c0e0aa192bfa7959b95b9dc55d136b46e30c2babdafc5d8a156f0965447860d6b753718dfc3728d592e858b3789a8f6a3421f98973246e36316b539b5ce3557f69ada699b6997f51a32c5280691ecfe59ae4dbe0a2c29695e21cc5fa974aa6c5b9748180a99c192177ee344d17310071714edcec7360d68c9f50720d0c1ced43b2e4274bbf360db1a7d4f54633464f89b02fa970ce1c141ae06859f355652fe50f1a5efb51125c4c234cd797571f51c5a7093682e0a24f9a43fca95f6fc8936a0e50f1a400a3adb1bcdb25d336646e3529afd66238d1acc298dbf9a624778ff517bb8e0554574e25bbffe4356376d8a072ec629f4b29801459107b2e5589310aa9337eb3fd5da8d531099e66dcb749630ddf11e5073a2d92f94af51d340f9e2d7c63fbc10f6a5802d84f548132754590615ec1d12ce6cfe0730f5f4591125e4ffed0e941b291d6a8741e34f4f72adf8012f6e2f1d967864acaa44308af1cfdad311e6009c1edc3520658361c9e9e0bfac0bd66c9e1f38dc0a19259d8d451ce50c773ce3de997f17e7f5a41e84bb56a1b4b7f0931a7bbb515eb5292dde549d7303e546c7cf6a0c448c6008b84151a10a4ae427a57052742dc9bda6a84b6eca4bb2b7ccf6827902b9cf98805ecebd48312d0df35fe4417258f8b4302785564fb04e2be6a173b5183b0e0b641f939c8885010af0d64a289444baa70e33d530d415cdd7f688af92171b93cd0177ae41cc0db1b1e5373930870d4458071c9c2c22070367bf4b31d27210c3b87c56bf3c49ff91086f6f7f202df292d0a103f02234208b4e1cf400c6ea930891d8433666c96cc18dfb00456d8508aad617c6374bf2a9f1abeedee8b2a8e67297003592305e3c4757e3dfa374f6428d7e51300d4165fa1cfc8ee3640304b7c6797f2bb86bcdb9fbcb51824b4b0a9df5ca74e164b5106f8d42b70e09da9779631ea8317dcf42db9142447df18e3d2b6b179687235aa6ddd021f99152dbc731af6ce2cd000e8fa722dbd04a0fb28975ca262ab5a111564b09af10b50c66b788bd70192d45908537617ba10a9af693d6b00014ba84bdb55674067108508e7b3452d75c4e0b1be52eeb4fe800e531986bf24032c6b8b148c667c51b9a70714ed74591281ac916951f1b28d94dc336aa640f2710fc038fdb5ed1931257259f174108d6095456f528b7f872442166a95369feade1abcf309fd891bd05c57164e39ab1674f3ab0299ea31668865d40235c75916d7697b941e039624e69f25e4cc325fb4aae8b9abcb998f0b6a0700e547dfbdc901827024cbedcafcda27eeb97a5f69d2dca741f2cf6d4e2963b0ea50f5995ce0fe6a1faa46b3badf45f8807b47248b35fd346e958d18d58e230e2ecde554030e4d409176a71eaa3e03bcb472f86cd20f246c07ca9347db3efa903c311debc5a0ba9f044c71c86b5c0a87e29de6b6ebcf14a9df4cf38fe27c713c7a63f214f8b75d2399b058ee2af7a9e84fb9edeb5b4c095d382da350e3a55e4e9695c001a24a4ba9cb8f81948425e513a4244d30c1d2602383a3481c40f0a8372a54bc869c8bc61ed3a7898c15c47a3d445eb61d135f7618dc03cde610f08b95d2010af76c3b3609c6e30c693b8856027229c3b0148e96a9e8901081f5276fd0346b36bcddbcb7fdeffcd84db5f6e7834028758560b88308cf232152d514766449b0816a4b918ee6434d950e184ccadee592a680d0398e50a4ff8a9f891225493fd423962d6b199b825df3ada8c51fbe8229f324954aeec9c37a73e269676a0fdec071201f1668f5f12a758fd641a921d802d0c4bff3efe22617f2386947709db78fe0e44e8df4d095169ed432d1d0054e2c0b4302c0cecb480968577e11bfaf0fb11b542b3ade3360183132d86dc5ccf71efe92f720ebd10842db80b3468e8be5db5f37ffb73cdd5623badaa643a97dd7ffb4cf760133f0b9a046c45df7b726881a35a6d4ceb4ed16324d6d78c4c9139e9626e25f39887db0f5469b9b27141d98b8da7184f689cf924b7a954c278e39fc9e7ee1757248522fabfb0675c2c04de99ada6e42868647bf77468def0f420efdf62a029df18a95c17c618518253052b4e230514fbf002863c2ae7ec9299dae40ec79047275f8d90c37449539a56df8def159ff32345a44d470e9784a9b01c0564d4421f8384dcc2d997ad4c1b2c500b53b1096866f602823aa46e133f7d855f83c84aa063fd85e0907b41e4dafa221f7cfaaaeeddb35c84bd295f0fa1995822f7e577233f4780726fd4034c06992b73e38c6b0e936a7cc82164b39a87fb9f9b6719daef964e29f23aba514d5566eadb995d6507f7008d77285df51556544f116afc7dd855b50a5288e4faaef73681be8d6e10adf43e3926f097f56b58402b7d67fe6b974ec32ef1e5541fd141a4612cf0ecfc403cf1a4063d2af20f1830ce2ecf50ef309df5add3db85eb8558fbd0f6b0ce9788de56f5c6c21b973d97b2d2b72bf44059f1a5326d3d8864c0c5b2d09a1b748132b9eb4ad98a73219fe2296feaf34d2377a413d0acf2253b306ddc95af9162cff12d38651a444bf7501b1678eb2b3925d9dd80d2aee92a75faa8cc834bf14ea1459ff5aa944b4c1206cac2d989e4b0be61b2f7d1669f7458303392bcebfd745348fb7a448d2f20af607d631387b916da766e02641e43a0d8d24288fec636ac70a8e113faf3919f7593d8562378cbd16e3117211c8cbbd3e0543f7a0d1f61086dad200c6e188880a8ce034dfb8eaeb9b05f2181f5d3007e643b9bcb4f8fc0b51d59375c07fe4674e91d32eeaadf7ca8143e500ef92cd9ef2928d4bc3245ba5e23f59814452c936a56eb38656c8c787e46437a1e0506ca35a1cca34e2f1c85c7537605fa05cf613b06f12e676bd0dbf3b87ec2c51a9f150d352866890576523069911f7921abb478b37f3cc18e4c17462867a7ad02b21c21111e893ebdb6e7d0311766487f208e7e80596c583e9fdac2a2d29ccf3a048ed1e1f51bfafe935530b1cf2ab6821dfd6cb1aa6b787d8997ece53e3094766b82725628460c9aa1c615ba41e17c2508245bb2fbdbced5b311001cfde794f9e6400a226bca22c19cc2ef93c23279531f4c2099260e10dd2b9222621e33ae8df3ff22f0a862a6b57dfbddd025e1d14a9312e1f97c02e204872ed667bb3322b5f1767045727ce5acc1e30216cb1c39804f44b88842a4c29bd9c78e647be78a6eb3a2e42478376c82d589448a6bfc5f24a53c082da36b931047726850ccb98c1e71f8095ffbb9c441c0705bb8224e9aed7cab9453f890624293cf711efe45e310a9094c75480227a041fa5a821d5ab477eaedf411ad930e3a44a32ea5df2febbebc750260a5571885679f1e440df22532eb6f7c3c1a521e6e15dbb729b612568d1996561c85bc8696cd9a71d02e838711ee47380697005ee3d1947b1f009e3fc89a871a6a32331a908dc483852a7206085eddc0a00e53582af4c899667c775fa6e94e0a7881373760c66f32e5c90154748e97e5644f32ca1ed51d36a98b34b9a72b1d94dbe431eb3a2dd2c351bc5411ffd9a9fa6d7c747b0864e217af664604eb7215f25d27e3b7a9f6af3bdedfacf36330f56ca008227b6380f5e73be4afa339ea11f06d1eaa2a69ca86d78cb586fcc075235db00682dfdff0bbf89a2007078eb532e825b62925071b2180f4943ec2c3ba47a2365d71d1f3fdfcbc78c7a01fb5f18635f3ad46b0d07dd57d73964c12a637cf871f9ed06068e60cd53cbb56049f9bd2623bf83a47c62a637f5f3731814a6dbe8eee660d1d3c61b98489cc00b1684c071e565cd3b7188feaf06b902dd360836b77709bc8d4c528417a2a612f24b810c0eb060e88aaf2a0d8431551578c11fe9d7fbcba11994f68e0ffb109b04187e8ed7ce94a19813b013347b96b861ecf50c75dbbcac39b6e1ffe006942468b4a3c931b5a07a6e5bb9d492dc563f81f49aa7bcb03a9051b6aec5f65228a8acc39b7e473b4ceebe2bf37f5df064a42621fc9c4095fce203c8bf2d31c21501512be847d5758a48e54ba179b91803a2508ae8c034b9271773914322637fe80d60318543aa403704914c3a4113ef96996208571381806f83c8fba5a7e199b7896727403cd32dfd582444a07e287bab52ccf29963c2628f3541dd43e54853f6a0bbdef6773c4f5ec8cf2e4ea5cb8596e61da21f4d58c57a4ca055e521361a5f832b1c2315161860fcdf8be218b1519ebc96dd702f5e37c5ce66540484614c39c6b401780a493ee10ce5745312ec667998fb69fbf8a3ffed95a5458e926a7fb62ad5e58925ed5f6d6cbc800cb083a1f4a3365e91a1830d2ed8dd3e4f196eb76898457dcaff48f339da510196ffabe3689233fcb3849d150b36a6843b295a0dd5030fdd4078c942c596f4e27c47765e500ada061d99690e6603c0b5627e39aa24c0c3c2f2b787e69643e65536549729b6bce5a69ec9a0115e7b39472d1132d7b3e035294ef0b9d0e63e5eae4ab8eb8ff64fdfa734f70c0d02b87f104171db033ec9dc1d0b220b1a8886af87c9110522efd72eda7da300add731c1744725f1863af9fd391de70e731c67123bd486ebe7a3155519c4894f94ec96f310eb93cdc475eb1de36c3ffc2b9664e74e5ea7103040b2708b91f2d5c604c242592fd27671ee254680b4869cbd45f52cfca80a43d49172850b5d9b56f0779c984c1ece4ccbbdeabe88e544dbf5348900991d18477f223f5c70d602712c382a1254600769c255f4cd76bf83048780c6b837cd19ca7d3850a5f0454ca634eaf63ff06da9539c10ed49da532f1f7ded73eda753d9c4084c0a3e38e072a60f109e0292d7e970df787cbe7fad64ef41ea1a994c1b548f26399531ddbf35836e1fdae5412362bb70c17a8c716ec6823a4bdc09ae6cbff511c3d027bd860d2d01d83c28db8584309c0aaf7d0aa3c764552f27d9a1f2a4678c81a39eb40eac418254bb5064f1903634a7855c987a42315cf6547803fc6bab11d195bbd57d474f4738becbc13c65e049f1239da9edb54a9b984fdda737f2060114acc32b20ff495958edddff884ad4dac1c88730ee35b4747f9a5f72e2bce22ddf465da4b382f122a03e6a05643f718394bcc621a9e90154ee121c7f8e916deb52a6da142d42ac525db8b9c8a4d5c3cff78687eb70595b8a83f9425ea7d4d1fdd23ff4f6262990805d79d79cb9e9cff56a7e78ea0d90488a2567786ca8a44222d1bd09724e6c69c9d1a8a48fa6fe66ea2851d066c5af28d7427b2f3dede0074f51cd554db3e5d5f06b2f961361950a68e463bfee18fc13eb90df6e679459a6bc8951273c15a1d24f796cb3654011ea20886acf2d232d3e6d15a27f0df9bb04889b695402d0c45b7ab196f2ec556d6a7e993567f113a627d89604f1155a17c9dce7baf578bc78bcb4cd66883f3b2a15e485a3574a07724762cb94c7d4c1ce7fba4a3984c38e9e2287c8c53dac4fadb73024f17d529b67c428f68ba23f09b8cae213a4fa83db6d26d0adc1878d827a3f1d31f879b4bb162ba1c38005c71eea8a55e69391ba6d447b732cc458d0d3bf54a54029579edd9214460acb5788839fbedd87056d73334af1383ea44521b7a80192018f8fd20ed1e68287871e556a70309d9fb42389e576eda674bb566795e2ce0805fd0ada4f4d3f4d4ad83ecec28cce97b44688bfc7f3ca3a014b913de95e220174fbe253ec1a8a0f67cc62cc83efa577ff72cf6ad23b95fa3ba26b461d55219b6886afd49632ca854238688ba0081b3061c4bc4e587b6746bf759be78b8e5074020366cbfb45c0d9a9f12c0879df948350ac8b6fd1fd6d99421b54a6920423c0ee1101947c29bdce545f63d48e69a0d756619920ccb6564a58821a93c3148d5c0bb85f30f137d4e131c5c7f27604966d4ab84e6eab99b9cdd63fa6f81f0373d220a7589eb6b096530532f87cc7f2762641bd68495ef991d118564b0d6e054b3e6b7958f543e1c0248e9409ba01f41ac0d25911f70bfe6705d611d35131466fac50156e4ffc12a9d2a51a20daa8043853439d02648b2088c71feecd3b2194904d05cc13d5866fd62a806936fc510c1924a65df64f66f361996b5a497fc2aa42cd05aab7cb8cd03ca33905bc4f77ad9b277a9a1df964284f9cb85477c451c9ffccf4f32965d4df653ff4fd0ae32e652aad3ccb3504b8d9bc3f86215d50db77dd769bd80a8ae7d97344c74ba70c2a839cff7ae942be2b149925e217e42ed331a6e4f15912c5e114ae8bfa1633bd1a6583bd70c5f49df0d7098116e9d9be1026cd3e15f33fdbad00f4ecebe245c36ac33b57d5c2d56e22d17dccfd841cc28c993092f8bac95e6936c99d506c8fc605c0cf223023fa32de1bd9cebc08d7a9a57054e2b3c1152f7af6ea2a7d060161129a0971be74a8a8decc68d3da4cb2b8beaabc47c63b1ba7edfbe5e557ba4444c6541b056f898cd8676ae65496b9a2f13d83f81fac67befb13ee293f8a94170be7b5551ad95715510913ae2178c2cf55ed12b7348770b4fb1f87a184f6c28c415518b92acda27d75d66e1cafd67381e0ffa955210cef2509b51e54226488d7adb54a47dcf20eee51dca39e74fa0f3222dd2d5e8132ae51b25b38e7f766408b8198552ff79e25f0c22c872088be03c8a0140ccb5aa64f3391244574c8f9ecb67013029b62ed23822989e2f9f9ea2c9f4647c0cec6ab1edebac09437a46ea8ed7cc701f845b69af352a07191b5b2c5311c83c414d56f50e473a0b4f874ca83d8cbac2095ab9f50dcb7406c61504bc5c53601d7df69c2680fc08d14e30c163f06af5d85690e08e58e2886178ea9612729cc025d2fb030c8d8ae8089a5dd4bbdd49318079b406c87c29a0de9211341506615f2f5a10a9c04f3145b3c5fc303f34ac35dea5b16b725403ab52e864fabcba324dc8d67abbdf8a55b349a763e6e87531cf882c77d978adac4749a81e8be281d38d87ef7f002861fdba55d9af8eefe2bd0f2c2e17851ab4fa48268a1194c770304c7cb28fbe8e28e27c84b9512079a8796256ffdcb7c536f598234f215d06d3fe4b63c8836676bf35e0edfcef966f02b9c8c3d7f1ae9df85a4440a059bb01d6832a6516a7c78b5d971c0fb580ae4e1cf2105e261c30bc4f94b68f7dbc92990433ae2bb630ed2d45c25dcd7c73bda4cc241dae7cf55cee7259e43e0795cc8158fce789cbe511550f9ebeef0e3cd96b8f74eacca1bbf9dd0c02ed38786e6622b884cd96aa152e0c06fb108f7aaf24704dc7d8a129ed494ed9461dd0cf9a5fab8607f8775a9629277b1bec5f08959949f03116f5fc343303af1161e00d5b0bbf5398d649502cdf3d7842d2f1606adf6028d735ffb509d018d58d4f520f8a1324910650f2fecd0f05257b124b8172a5f5d4c99459cd340ed6a4e8c23ccc83fdee005c0dfbff6875e074f51c81c52108b568f0f5fee1787ff852bd1b0952a3845b2583115b1a5414a4dbe13469be58cb33af07d30b5ab69b74fb77d177d4b0b321a9ffc3bf7d2f746938276b58eb00e19954c4c81b5231a6d5038d377f27bf212a4aebb8d9f27f4481aeb8b2b0d280e5de38780f56fd7577116cc91f53d34f5166439ae1903d053b72b9e6ccbcfbec4906b5b233ed5b50d68055d5d679cbc1181759df3d9390d64b8647b4601b5ad3065318de37708cb7655bb4b0a307043f483331aabd63cb97ece323e9bd9c3f8cb3b198a73ce66777dfdcb415b9ed8baef405b3a99b966e2ce03f57eb87c7238ad3242c6290d02845bfdb10f6f67895e7e4724bafae599d2eef5b632ad399fba01a4726fcedecd8ed898ccc51ba1e123d732a7280ce412179b0a0fb56ec7ae4a296a864b2067f7ec15d1dd36c25a21033b5a0d2799cb03b29bba2cce7ddac30357a84e1153fe10ada25e2d74248dfec7aa9d89d814dcb87030a4ffaf46ad197281f5e11a4205f344854c1b7c48fa2c97f34d37726f042850900f7072c658a42f87c14feac681463a6ccd341db95459b735947d619c6084790260446c95f9844f122a53f80a8ba9bd211edabb4bcdef4922efcecb47498d328284bccd58e5ae39a673631eb1f8af1e5219bd42b0fc6e4bead99cffe8d1a29d5043a1fe0fd18d5816e0725907defdcd4011071709aa9ba548928cdcb40398f48852143ef9700a702c9f6b5d39369df559bc08f92aa1b6d16637d9da4323c82f9958044163ff8516d1c03a6364c1eb30a10140d4760c4ca378691b19043e69bee546ad434a23712afbd91839546f7c51d21129b1a8b307e17ac8f17f8a2c2d1fbf7de5fd08f818607b5ec8ba11939ad155c9b71d8de0332f764961c1a7f1d588253942fd59c3ee8bc168a74a04b11edda1ad103ab30cb41f107f19217e66c2e5d966399cc4add1a93a086421b16d8f3f9deeb97877e3cc093a5defa0418bb4301d07a2b71a17a653585adb958da35a9b221eeb537e901bf1f8d4ea148142116092e6fe5ea2b717565f5a6ca31533b998a340e75b59f41648f59d8c5aa20440403454008c91aae2ff70f295b4f54f4088ddeaf1ab0af0a81c3c6e398b99be7e338e8b6dc1bb492597d770f990eadd4aad6b0296a45da4d2edccd3be3d17178a0fbab50fb4a275abc947d0df1ffa7f6b40c204a6be77053e2af810962b8caeda417f21662ce95a71dd0b3d5dc7ec865e098dbad7978bd13d3d49581d3904150097193ca108db28a28ce3e4e29792007343b46c8ee4db0d71440438aa2355a54e5243b5cdb1ecbb1fb781e7ad84428022ed4737e62ccda2d16fd8db845663895f340219e982ef0c83e6005b57ecf78d5ba1d1fd901f2d7c22c407dd15e6bcc9e6213cbc41032bad6158cf792bc88eccbd481024a3eeeafd64bce9965b664ba573feefbce034da1b00e6053d32994ba87ea4d72fffacc5f2e4e986029447cdb31bccb6bc7acc121c4198569e3a943b4fcf4ceaf7b028bd012499dc670e65d894e1152765f29bf40140216dd58065852fffc183640584e0fa182853324f205da6e1d688ce8dc82c90acd5427d6959dbce8f05a9bdbb22e7d349291e65cf58df566740a65a01c861b2f85ad3c9c3738b0e31e53e02db4040590fbc59657e67d45353bd2af702ecafed24b8f62a91e4eb5f7a2fd26385f66b678f307508af514a6211274e984678bd3f19aef9660a2390eaf8f08c68cb2a0bc923adb6783ffb351e2ec3795b6112428816346ef9d243e8b940bae90e2983f12789539897bc3b8cb35467ff50575bfd609effbeb236013b7ef6b92343622113879d7e189d684f0c55e3d51877f29f9e29c7ae04d9bdecc9bb0bcafd12e38b866b23ad8d5b537e62268d153aee365e81fbeeb788850ebcdbe192eb4457c89dace75408f0c95174f594557d1a2778b584fb9f456cf784fd9d5a24555cf05d1858cf376a65763632615da9e3226819deeaffdbeafebd1caa5058eb4f2b81113db378fd63af4d13d975a5001462f353e48511b0d67916a248fcb1d6e076bde1e29e4d50c80d14950e8b8969e8dd5bcec32ab94269ac95e2910382813d2f9532891855a7513635f1c2a0bca330c4f955e85318024e4712aae2a0c84c65a925f987b1b9c2c18ed236c9761853b0799ff5953d5c87967d43e1b3fbb077018ea4f6e21260db6a0423e7d605e794555604ddf104a24ff9c0ed031b1d90159996d0aa68c986b80ede79844fa3a9630d1b28c8883f8e17e2222e0f60d33f9dc9fdefeae5a59f92629fcc8166a90fb62aba3ced6395441791596a1b2f06973aef5b3f533fe25f389ae9776808cf61b6e9991f5190e1b1ec29730af46e489a2250c07b50dd09fc73c33601ac9572c110f6dc8e6198e02cbb5c509a0ba4fbcf8bc687940b69d3078c1f2540c98dab7a019aac2ca841fd334181faddf619894f3aca055db653b11f23dd12d49ac28875896daf48e19e5dac46bb43b87ee66f4f45bab0b38116f4c26e6b117141ff08b7a60e6884763ea23922a201947b064f2fbd4b1696797b2fbe7ae8923e2eb1d91607f152aa8370f449fe8d9204893551692039632555a5c4afe98d30b65b87ab94852b0f3c4a63c7a2573b90be2cd6bf110a41239693ab7a117a130ae8d75e50277152d0fb9bca33d1d7e04b37bfe6416213097caf1ca3e8341ff7487f2377cc00becce1d5496fa3266fa2e537826e2297cb146638be4d9960a8be75b26447926e8034d70c9f9ea487dea031568df37334ebb6cc611130e2cbb2f14d90ba87925c09f8aeb61ef01c9af0f6b0a9511dade66bb4eb2cc95716e99755e2c1879191c6d0c67dfcdbb389c05944e43e926c20a2a93448f6ef423a63dd9652ebd08b206cdf96240e250f6df22f53203f7cdc92837ddfdb6de9ed3c1cb0a38908c19a45a381a917c834ec1e3eba2ec80931e964280b3339f406b6bb1bf878140c3aa803b72bcd75f3c0bb6feb16ec7a81c22699966d92fa79d33131fcd62603ca0676a52546c4d635cd89f76a7d57509c5d0dcfe052d9d4087770d35dd4bb953a196d9f50318a41683d1debeaee723f10fc220cb2d4c6636e957ee5771a82f7b7eb7cb8f093d596df1be24abd24c6a30841202457d95ea3e48225292095ab19c052d8f93144cbe3f36f1d46ff4243fd55701decd799dda358fe0fa58bf22da59e3af65e93f3b7303f1c225f6fd1e39b68ad9de826893024fd978f71dd2db4cb226a660926ff6206f8b04cba25e0da7532097cf1b0b777d71b8cc0b0cd729daea43fc489fa7dcadb43195c7a38fac32e02508149781e949c98ad1c8b79dc6cf39632e6d5a0552cac66e8e7cc61176c9456910d23172c0f646ba8a394d4025c67302c9cc71bbba8ba1fcde886854c8e9644584c572a3657fed47dab18eeee34ba859ed808b0a646c2fb83c05b21db3c0fec91016cd34d84ebe97173aff395781c7ff7343e57429b73bc7c7d0fe0af857509500a5843b341155b92a8e7881764c1bbe40fc4fabc037dfce5ecc8eebf21a828f5a80f3f3fc2b0a81eb75cdc91243ec02f427de5486a7c6554f5f3e3cb4e12b60076416388ece6910bac1fdbe4e50b02618d62954194e773dc52874fc55191272feb3d96303b04615bde0fb89c064e97c8dd8752b003af16dc92e92dfd2054d4eaead81d6e01eb085acc30b947b85c8b7a9416d3f88d5fd7125b2335e430cd36eb445ed5c16aaf381eb3a2ee5d00826179e978ebb3f39bcaaee1ba6d22ca4cd20ff38786f4e50e374aefb5a84eafdea645a1cbeac6aaa1ff2a029f1ce4193458b3390034d929573eda600c4882cf34bec3eb30ca622b77852f7d12e18b8d15cf1e109da0027baa951780d51a3c6f847c05a5e56071a3ef62134dce4b51cacb03675a1e76022387dc5c598839eb5daf6c47a49d839685f2781f00dba7cd66209f60483b1218d9dba88654aa39c3269c25fd6c7d0133530f4f8f266484c49917326f762ff9fab2e6b9174ed91f0b77097e3b3696e848f12b567a0436214b4f9d908819b90b81b8c919eb098dfbc90d4089a431a65387a61d8c302e808f6b9579db6128c5531eddd7085b99a9b937927afbb315baca204ca0720f78ca1b5e4594be67b2409cd78334b647c3fa3fcee0571517fb530282b5b9ef80918cf08ecef5283008bbe7f5c47a4ef587936cd3f1dd9607b1fb0031f3c8bee7f70c9da8d753ffd60278dbf48bdc24e3422187358128382b65cfc73b56bc6c154a3193a05cb7d0e19edba468d5079095405f76faed719d0d0049503226ac663825a7ad255d7c1556a3ff457cb5d521a2e964c5dabbc043cd14ae81b5324645db5bf30c1dd8933d22ad271e97690d683113ead0febd1bd6e9235d65ac10eeab7919e7158ff44cec24ad63492fc11471ff18a4efc88f117989d5ac3a217550089821a9bf694ae3fa2ce289d85aa17629f63dc2d953be0ec213469b727792ef7dfedfb5eea2464f7f5f3210427c3723919277f5af7c3b6a74b2000b4f2f1b4c9d6c05d33c9694424867a23a8e5a833772b39eb5537ed1108392575ee2355a679b50a75c4afb6ee064e150723e1d1b7481991ec7d6a5e9c69ad6f8e48731975514b98cf3b0a8925e97a084eaecb0e74a8e9ee86925331ef544408c5d0bcfe7c274365f4205a3f50aa92470fe8500ce3e8cca7ec3b9cb874c4d86997ce02e8176e833445ce4338c4e692ac9446888bcedcd3a8beb1c5d57abc50f987dbff91987bf866b1be5e033c46165dfbef4895065893789c425bbd2c13a35b4b24017d213a195e546110356f7ef81ddda8400dbf1402fb16209143891b1aa0164cddb0c12480d0f21b733ba26c1e27f6309cd7798e72f7e034acea76dc4a99df7123a07a057d423956f8913b193bfe3cd60fffd2678b7c14d7e5b54cd67d8b438f75e090662bb58e11b00d3b05a3ead869c6a113ad3b986c9f0b9bd4528eff32634da91ea1b00d64f8398ce4e162de344f98cf588bc6408fccc1c37b847cad235e5347ac449970146309edd0bc2cfcdf50b2845456062b37712904d8be8ce0279063041362a2cbb15c528652efc2bdccf3631d5419f11220fbc5fab7e87bfc702737e8e78c9d8384b10347d63a2e5305852dc7796b9bbc7311fd03783f589eb452e73b17f9d7f354b6ad5665085533c91efe4ed606f63498dde3a06f1da601a1042b1d1c608a76ea7f78917b5f8de783ff131340550fc838075190bc037d944aa9ff619993d2527e123e4179bb2c3827e6e4acc7f17a84e27eb73360cb119cd652b518f94c38d9129db7e52c2f9468ff0486ec0380cedb9378e6d934e0c99ae52e2ef9fc6489e50ba170528c958dbaf0352cc2f7cef08352a3adcb4367d455e52bd83f349e8759826f24c3dc0ed6ac7f8404bb0af5da140de87f74c4c859f218c305eacaa78f8c9fdd14ede23083ea294659d942586eae0905370ceda9a9cb4d1666a0dbbd8c0ad79bf4a735432a5eff1b5d5a7610eb7f4cc624d9f843cd0263456b18ab714f10593c935d5bbedc6489a8d8a0339b4bafff0f49d9440359dc28dd8612de0948ffb847ed91154c4dcd848a32d58077774c3aad2ecf3c222d83421f91356a1cbc441dff3e141e0bc90f404340ea881e4ea123993cdfee22eae9cb3b6ffbcee9097bea444cf0b85a7080597aed33c68a84f7ad691f6484a0344bc7e745381356b4bfa537e2da0852d8508cd687cb8f094ec884ea408ac5e47ce0cd2926027244b01176e9fa1812481a014b713e109fcc9573682c7250ac0d8fabc8dd55ce5ef4326b39a87c8c32cd837b833a1aa36268a931f809ab1a2113dac0595bc99c0e1b01e43ab5e7d1de72497d6b91d36cfd491fbcaf752c18083ab16a907bd7dab9eb5d13d738c0da34cdd8bffb1d4c98414951b0991986d35829d2053279db0a74ba87ac748040df2e82777305f7e42fe148b8daae9ce1bfcba47f073ddeb31c6f8f9ac53ac7e5bb7f0baab3df90a3dd239ff06c6b7da13afae97bb504892e6963396d6c49eff81054f826310455a8ce43cb5e402b3289f2d4cfe8ac6f26e16db50d26cbf5555180c4f4922f3934b25a4499029dab44c1c2e7703b6ddc075c05c8bd823c08fd7619458aa7041e350f4937636ad5bf3699759978bb98d61465c19ce99ecc1cc37a3f239ece8f8442eef66aa9ab107beb59f2edc414106fe9c7f3dededc1157725dd4453b85a6c8ec499a44b3bc2cfa1ff43ba71e794877d366bd8d7821671157e3774a179885883f6fa07c0558637d60c51dbd8310e1b3dd0d1c86a5f38574eab3d172e591a8476e2f5d29b0652ddc51a82673a498b20142ccbe417db9d507180a83dcd0ebd4695ef001a159429a491071e1c19c07cf3f3dc5957237b4fc8724772c2a61985ec32ab73c1fe4ee07c76db0e034b843e13ae19b7299962d7c33cee8a12ba8e50c57328f787ef1cdca8f2939e06ece8ee421e46d750582149f0d9e2eebfbcea928ab4ccc35216d78ea8e997cac95b63df1a395152655414ddccb5ccadff7bfba36944705f2b1c8d984613c2baca1ec42c9549e9da30171849caf6a2e4ebb56378e2896a4e90cb6e2fec04ea05e31c871011ef44cb50b3be928e7c2405036243a6f4c265090c44d9b22c3586b9fc84b776f98aad6144a36a8525f971cb19859a7e5538575429fc0b49ccd6b2473db23469f5ea61c320c2929f572badf415f28b1cd70b45b00dcc2c224eb3699ae1c3d88837a0151eede1610e24e8c315a74d848957ba035fbdbc7ae7df0858fbd68cb3fd5b8a0c7cb89cbd7823a805875590711f86206ea6b2d6f7d0f3bae0b5bdedf3a24dd0fe673e92abf97e877d57f6cd0083926a581fe24d67cc63ec5bf76103a9d2bc98cc5754d47539e26054b74c0a0d837332be99c3eec2ba889bf407815c992ef1d8f2965c76733173a3d68a047fe0d3b31b1718259ffd52613a87f6d9cb901b3e2e88cbedb0c952b6c857e643315c735d178dc6a20f596e84325129f116df2d285fa72600ff00c8f44b775cad186d8b7fc1dce5f0ad9576acae3a85ffe6fcc5424e908030f931b4ca44c1d4cb6989cf8e8a818cade7ec9590f9714d15b1a4884d70c5251e14413d4a1cedff9f71f7e056bdcef47218490cdd19928a691f0decfb1cc7854c56173a863a6b88920942d4b73259ea0c73f8fa4e0571de0a419bfd86945124753379d9826b8bcab6cc183da2c3b895ec584be9adac15e011ed6cb9a0e736b02f8d432cbd89a99d067721191b80c2a003545bb25f81432d66569e3d0e6cfc279c4a978b989bf610c2fafc71257d64b5ce2ad5632cc16de62a7be79c5c9091ae43238c75d97ded29521431d5e2ca63bc480f29205eca539a58459063648015b213a84005553c73a9ed94485115daabefbe456e840e9bc7dd62d4f0bd49fc63d0b8ed3f2e34e2948c1e8261cc755d90a9e80c305d8f9d1475d0a1e2bbb1d44cf004bdd754268bd697ad54f10e1cdf088155c55b97578f591a734fd6a262f2436c7463a32765aaa74da9854d6debd44abd41430c79187a9d4c7150dd3d1d65450adff282c2c56577d19950988a789b864017e9d0d949116fe7a7dd0529eee318c0e2daec9aa89613ce9791c680ff8b7a34ba4e20d603f01f81c484f4030e1225b0264281e05b63894bce76a278c4d7ab92c1f304599b8775fc0c9be0a8eca72ae14280d539e9cce22aad667320b27b5c37b74381bb6703a3f55d6192f7f436a288a28b1e63502a0e6d461a7862079ec64af8bb50c44aa23878d6539db38e40d88240dc6aec75119357e22c09117e9cb828bd90898559635a5a92ea3e6fc2342200aded2de23a047b9d1e0c7da67c015b26cf772df6527485c27a1031820fc771fc4d6ba983e090ba1c0b84c1db6d8f46087f70d0c1e41c02c45e8a38fcc2943ada8b096a4aa8ee00512469aef426055207983898aaa6874a15558aef318d7b82194001c0ea80f43b924483bbf60fd7841e467d9a2632298dee2085bbb95af00593386ea94f8b8c98351708eea0d52bd83e197a1e6c5ac15699b39f8463ad5c2846594563e444bd5d60b2d46274054e0f04ded0ec9645faa84f7b072a948dfdb26f6937c5fe174bc85dfe833592483dd173b4bb3f8613c1b8f5f4e6565043612ee18b338d4709f3d528e43f4ba65cd0bf2ef4f2fecae6d88df4bd8de9ca0e76dcba71b71cfdfd7f8296825d6696d214b95eab0ca162eb0913516e249b1a83874e7d52532ff1a3180463cb94d8efb41262ba49c795ae659a8faa4592a4499dc55dbe18f446f7bcee152597d27727f23f697a3deb4ef0b701bf01f3a249fbe3b8f8714893dc217235531b2aa4aa73c520daf3ec07486346bff51ebf61a8b61e80e8b72b5f35f438abc3b1698913c5e7d1f0ccd5f1a1dbc2a3c8f000a6bf039927dcdf5586ed9d217a6392805eebe6237202abe30b424e6a985f429b851c44dca16740133cd175b1f5da5dfe008a05fac833fcb63d6a5008ed3d6d53f32032eb76f85b21c5f5f6596e9ae3b69f5b2930a1c14771227551f5d9cc748ceaaae703bdf8cfdb3fe7316e001cc5e0bde335546aa567504a23bb4710d47f446243c5bb5251a78330cd53ff64df170909156ef94f327ab24d70726b1ba291e2a1dd78c61a95e529e32bb7be88ec7bef36c9a4193f57f7a87bc0f8b9b17b63263d1628595436a851163065e1dc8cb625810a8229d22d1d1f0804f50f4134c764585d2a0def12520a1525cb7a8eac34c05cc705170980a6c69eaf08e9a2789ac7dcd673dbea677b36ddfee9634011d7a0597a335fba7fb19c9e961bedd88f9e96f7425b3ff6a31df24fe168561538959d1e7e8a33ea0cf42aa6d713b0d1c7b3f4e969bc3fee47561766fc504c72ad80ea8688fecdc4be7f6317bb2265a4d1edaf0e961a87317860fd5685901bc45770be458bc323f6aa689742e131ecc0061d25703738d1af8dd6a2560c702718f72ca83f6b6da134274d0d95b26f144f7e83ebf761ddf50b7588196e88a77ff9dc45437c739a496fa0fd9169c55154a8314a1a33c585ad75d65660802c8b0c36603b9b487d7241650de56471984f092a551d367a83be043247b350ea90893d065aa52a46b5f69136304820a062cce658b64cdf0c8c8b62dc9095c5994712557c215707523a54b325e05aab64ce7c0d21dc448fcb056bff7f673b7f49dd95e280fbedfb9cae65704d3e4b48d03bf7632bfb1e9131785e1e7c9ff310b85cc54701a7ef06b36a590e703b01752d5d0b5396984323954e1ed8c9efe73e36c05081f43b79cabc210b3f8411d296f5f30e0a2590b8b0e848ef34fe81adaa17908c5f9c238d786d980cd872dff3a2c5260d2b96b5960600f6cc244847e8f62b86f9999099d1a6583eeaf177be4100d9123398e591124a8308db34c225cce6448da1bcf109fd53b8eecac35f85c6967e53adefd7ba012e06c4bd48a9766b25c066d445302c5f0336fe6301e1c73077bf0f605a95ee1ef7b5b0f6aaf9a7779b96484bf19bd6cc475f5d10b3f475c02c466a966a1c064a0b629c99465844876c8acfa6b29f6f60ac6d4f9cd0ee8b3b0b61850460edf83b840387d2cee7eb7a8bed72c8b99265e547f57b7845fa8d60eac7b49db758558bb5e24cd836bcf0b5f817a774645e6299a80c7316a2517b4045eabb51ac35fab5fffcda76ed1aa79b4fb49ce33be8dc351ae734833cca8525786b422dd4d2cec59b0fe49fdbf944b4f1e4a606aa9a23aec84102370df81f5564c7878dd9cb0a4c8dce6ebfe86f72010af2fde32606ae100525ac6e3b6c7f987d8a34a02ec32826f09d91fd02599e561feaac1c348e65ae520a77ce03d8ff33980492115e15d44571e53dbd186c219bd2c0503c471e618a9603972552c3e323f083c2b36520ee830f83febc66d41cba678238f1e3fb9f5b73639bdba20a8e128c8de28da6b3daaae0bffc6a7a5da6259cdac66ebf2a4ce3c5f0e591a1796dc1473266c6c9439095bbdf33b4c2ec6ff386216b6b1531e0f2f2c66fc41de049188a8de5ea8dac9fb214fa41b2943780db444e1c38700a7b43c6543f444fc97ae7105e0301b32f8a9d0672bbe066183d730ca7b6dce15ca875f7cf1f345d01c9d9b10a79f1edf028ebe30251c1d1fbd2eef24ee2971baa75bb585c0df5cf3bb3b87f8fd2682d160dacbdf3efbd1719bce199e539be071ea7a31316b9cf4dddd717a17834150979e5a641aec901fc49833d7ac5211a181cd50145f8b555cc01b27dc5b8d7cf272d6a20249523fc1e06242be9dac35efef082d7217b5fa54808626e1d3b8b97e3506c01b90c6fbdda832241df6fc0d0e0240da9659d4695cd1c6b5e16f141334e2957a02e8dd090d5841ad90f3bccce2d594536fce5ace7db6c73f46e610e9d09336a10dfdaab3ea8686acec6d0617a276249e58bfa510fed39f1e748d1e83cbf020c6f01dd7a8316d3c9ab264baae4b78407ad0ef3b4d81fb0d921352478d17718212b046628a95b9d35cb81abe605bc76d2d1e3f7adac5962ae5eb1ab44fa7787cb2504c865c1855392d9bb7b35fa004e4e886a02abb18b4cf01d7f311b0d3213d01bfc8ccc4880ab661f50b0950fca1c0dd9cb8d2fc27973b6774e6c7a8f2c117fb1924ae2450a90000befd9eded5825af6fec44f3e415cae58695ed9f187c7308be52aafcef9b96de0b08c78167f3c4beb441497c7f8fd5c1f72070901a699e26a71b46a0a5b2f22951d19727ce56303fa12773856405bdc756b57f190747d033e18d97e9e0cd3677e0668f77cc8b3f67c43e84459c74ae38e900288c7e2eae2b03a7432038659aed6dd61a2912e94a9f0b08ad7b360052be679153ed3e0219d7af747e9d72d4d4f1c5a869232e74dc0d9b4997dba3a6d3c5eca2698e99e0243eee69faa703fed45f1e6938e363573456d72cfc4782d838fdabc6a73dae338e416778e7d17dbea9d61a5ac483803c2f12de68769d4ddc136cec15c97854c4c7379fd0dca8a748af4a065dd88fa421ce35f04c91d4ee04a651ea9dbfabde7970190ac6c50b843909fa46fbe0c0673daf2de7247e8af20c756c55036f6fc8f62f8334838ba290ed021f8a6055a7164567cc8b9b6aed18da6d6085e9e55a4c7a9c654779a91de80b5186ffec8f663e9a42bea1ca80a47ac6361e166c860b481b6779ec29a08cc7f99671df63d8c65f2c38fb51a9fff86410d25c31ad2a5697965631ca449b7f5707701fd4126f23c8929d0bb4cf7f0ddb00c18dc4567f22f402b1565a1c8b99b527fff544c244efc8c08f9e36bf86b6c61c65118c70b7a12ffa8514b3fb2eef3edd59d226f3242308ae61b59bdd858d36d8d18a71fb103f908e4b6b65f55692c86d91afbb0747d3cfdef576409d86b888464bdbe3524305f8def6706222ccb7d63cdc234dd88ebcdf9bc6f4cbbbc488b60f44706c89942754e7f6b4ef68b68048ba28e2bce1befaef5b732e0e44ddade8efb0a44bed4e1dcfc9a99ccf8dbad358086b309ef8345b7229e9f7600f60d79d1172a759327aaa15e32f18238c0dc59062267d17da837251d8942892a2b045ef3429a986ce4527942b8823f6a258bca389f0723621cf0447cc4d30306beca7ab6089d9e29d687c36f0800b434da309989821bcc14f2abf63969d57f74ee57680e9b1f285bdbdcfa8da2d9f700e5d5303f9c7749d8c9cf075a390e4825fcbec7e8d9b12324c8e072ae593242c5da3836b8bd3aad76c4abd4dcb85cc7c4396323fb4b305c8b00792b6284907d0f63bf99e1750ff82d67318f23222de8eff713a8cca205e0a0299696b40d0fd5420d72fdfb5674207a4f5e7f08e0ce822505867019a608a870f88487aca4ebbf73cdb575407941e33178b31a3d46df6f6f455680675254f4399c5acc05c1edccc56223abff81f8b60e9ddf5947ee4cb375574e3f41c9c7c90c4d7534e82560245b59a3815f8466840a966afd6d4090f04831a6ed168b72092dc23ed8ae8313133412c27e086a1186a6daf5e760a665827c3e441be808672dd9206d4e6fc9c662603d266045a3d2c2178a1f87c4d7b94d3287be3d51899bdf5300ee1c3985eb2de398dac7f870ba0e2aa96bdebe8b03b779b0d46f5702743ea0422e94e6b445934262066aeb0b7b1ce823509f89136bc6e139b0ff6f95a9a5b28e939f2e2625d6e4caeeb88c20f7519b9c634cc8c389ae6e5617307114e39263695eb620a3c513173ad5c9c32c6befd33bc82122676cb9f07c8429e1d0fa76e370903f91bf543bdb2c1943bb73d9a21be68dcf898c13c0483e7810f16d7683794e6946dae8152daf3577b22b45b4561c9e4bbb89e94a4ab0789c508cb04215394326b7d62cd61d09f3c84afb216b4dfa7b4ac77f6ac76073312c2a19e9dc249aff8cc34b7d0ded362f2574c92d020a47d1028d89e0890e50fc1c6bdd76daa6c400f4d75e201887509476f304c31b5ead2887a465b2bbe852679b3adf11c52937c06fc82fe1a3c63bf8e6a9f3f5141a865340cc315636e4adb7ae9d5d87654dab0e2bbf3b61c57f689ddf6617667a64729c674a5b2aea2e3eb1e907d02f4f3cab22224e7b369e108a18ac29ce3ee5c35514fcf1b37443c12ac361b84053c701d0bd46be17c32c133cfaee5ebd821e77012fb85cdf6b13df3bfb6fa4ea1d74719725cee400005357ad23718a541a0cf902d5571b2980692fb3bd1fd24bdf098ce1158c104e9fc85841582091cfd1784088421ae22052e5cb8028b9c679a2c98a5fe7ba1282e43613bb5513f358006ca5b3f8698cfc9f61fd96de75b2f6de9d3b5bfa0c5d6ce37bb971e7c96a3e9a9e39ed084a48c000308dca090b722266f04415495bf01678aeeb8f1256f9c2bc1713b420ffe2d8cd41e4d62a934ce003512b307c23738340a67d884997f3454ee1c5f9b97d5c97a43c0b41dd676a384a8ce1cec8a7e5ba81b193785a5d3c6b725de6896c7eccfe4b6f8e0fca5937c28921015d3368441b3df001413943c867e7315a7f73ac4442a8eec92732a8e338de75c1f0658ab2919c1dbe736757ec0c0117e80ef6b7cd7f103815cef1524c47a455aeb7326c13f3f8347a0bd80920b10a48a979f3b0357aeb9e877bb9b159e83f475fc1cce17fb0ac27f1e9a6902daaf0eb413a3ec401e2f45a798df4eda3ad9a2b431c9c9430b99f8e1c24b5b78567cea8acb1789491d40fc6f25ca33a5fb243fa221f4a650dcadb761169d6bd0419b9ee4e871943e84f609c3b5f17c1f877d9b70e53a7ff1a31669e73b21c0a1fd8de5368b15ad910a81edaf743ef68495feba0df84b523ba77b632f8702b0414e6a4f897e3e0d5e56b575d064a3ce429d501602df249193b200af63780785091eebfe161abc537d4536692013e98ee0590c2dfb399c19d6fc1c3daf5c4f6b93303e75c4af605b004c0f0ee278d866fd2fc28a8edd860cc0c8be957a7b9e13b6d92fae89d45ecc94beef5d19f0945a657f2ad82328b829699328ff66c184d45da84dc0be1e42a7a4130ddc175a1f9cd592a573047975425c7e80fb0ac02bc7fec6a2fb04b4fb2f3d6e574bd613c82a50bb9404a50b96dc820a6384aacfcba7e664accc944335e5e8fa09929dee307db63fd16da945153a9427a690fc66bb7b84fe83f948320ab3a7104661eeb071206ecc31ee494330c41f6a2b6fd1e1ed952ecda197d4cc2e90ef65cce9cecc4bb0257575bf458db7b65c7bb589f853e5b9cbd3ab6eb1a289e72e481669f983a6c7144a1259eea418b521280a299e39f2cf8464a1172ee5c6f471590992574b57cc07ab58bafc866ca21ddd231244a72d9218ee5de68994c81fdebc6dd3f62c088803f54564f61a8cff7e574b474a4da03b394acb89f1a03a97ad160e9bfd10c9e26e4faa7ee9c2d1f63d21d69e1a1ea8f5f2ea02f4c13399514fd4be091897d36821b5ac9865c1a1b8c7839690339ee521d568979aaba5783ede9294f05c1be3e2f42923f3b5fb2b63a4480a086ff7e7bc8d3681d2d431bdb88094133afc27caeef4be06f874052768592096d30b4588f8d6a6f2f61c369b9180ee8f5591b3491c03f60bc4ec7734c43ba0cd727c28579bf189f99aa58ba0816927b2b6d7beb22c38dba9e5ef8238f7d0339fd3b8783c5dc974f7e44a8e6266ea8d14d5dc75ccb4d37ce3cc312d35230b53a6e9bbe5891dfac7972a13f50b2d91f539a2722576d86b98419c9df68dfe6aaf255eaefd07193f9a2096d457f3bfd9c728f9e1783bfc3de37535befbe4e4104f5c2fff65a6b477f791dc8f7fe773d49f5197de8fd93a1c8910d05318cfa3c278a341696cb707b97dfa5454ff98dca7a379d16e9dfaf042938cef24c3e8c24d730b8d2d1326c416823136212d4144a66471278270a02f883109fed1802604c4118c10d7d3412eef17cd47b727036838be68811636e08091ea11a9402fc5868edbdd52b8187eefea7fdc480ecc4a9da2e1ad4d541247acc3ee1cb80c59524ea49d3c79b99d44847d882f6a2282a2088d3e22aa4ca3d333bbe1371152d368f62deeaa73efa65267404c1e0f359189dc2929c4d1ee06c3e191f0f8f21ab48d65b4cca3eca5e464f42411f3b76deec91024a80b949202d5823d93ef1e7d0ff518a77b0d668a8d194d54d2fab2d4551ac4d9c61edca8bd5e19e4aaf4e2bee1e68a8065e750537345f5bb5564d9be3adb7c7f380534bf69aa524e8dec5d6da203c72c78204f1a8614ae4e41349886503c0e0b493c649776f475752d7458271e5fedeeb42b28ac82252121f66746ca6cf1bb4b927ee532b014ec3cc7ea70f586852008b6044b3236ecce7606dfa7a45a87dcbe215b3fdae68038629eb67ebaf4dcd0e14306bd706a8615197f9e48c9c70d96060544d787023b0b47e2d70f778f1812eef4b254b5d906f8bfce5bdfb75bc706261fa10049cebbca56bc36d4b1e198e0c5b6f76a930a48b7aca20bb20446e70ffd55db62a40eb7526c84a670eb857abfb51711f44877b10196d53f228561eaed2ef82a00e74ed97c3af0f0a44909f8da995f8c185649f4f11453b11283b4f3891452c0c19203164c121e6e86623df35c255e6499e96e747d1315e840a9c8efc01ce3de5826b19540256526263ba0570fb0348b1291eb02683b669867bfda56ba9b46bb4c973d6eeeeab32c974a25bed457fc3363967ce3bd87ed4af974f977f24b11b69640e4c8e00b17ce61a2d571772ad4b032c00bd977930af1bc987d1bd4107845c40d562d5e8969981afa971b56a78745f5391bb10422c8856ec11756d6181eaff436adb632fe16556a89e0198d2093dc7564b700caf6325227ca46c32613a40c3d6da0d5da95068160e1ff9de159600617dd3f461fab4b58c73192031b332b64036ce01b7a7f4f2c816a64068da2c11ef0b1fc191e8e7dd34dae7daef03efd97fde41026203ff5b19462f0e2184ea99a09a100806ed4aaa44774e907e4269e24fa24dd7e3aba04c6c7d0bd23f24845bb60155680099d82cd9fd8e8f1381af06ea20e90358d098d84808222486b705539eafb8ad6a186c2875c8c8ffc2919e8b64b32bfe0494cc1017507dedf6a8ed3e7de6f03c2626095507486b6dcb76e96ca757e66de632c52c82ec9a7f3571502263d1bfae55d6d64d948c8d273c41bb237faf7083d5efcc2a1ded7074857e792de438c0d812e331754998c7cabe66151d67168736545d191ca7b023e185f18beb700ae4e0ac0645f4ac5b622d412046bbdcbb5b7a32677ffc08e7ecd31a3549f2cdcb59b97b146c65efa65103b5c0b8753440961fdaeffb518c26c875e8ad66c406b9166f9f2d74e103e0a77c5ba234275672144a4ee0a2be1f4cf8a94d7f9f6689543ef18b12765b97f1c76d02dbd5c9bfd9fef239c64536e2d01681bc1dca1e5055e93e286a4090bd8f23771205fbf9b02482591795cc0be840fae2a713506fade5e192829f313d3c6c0fed217e8b431b9770b22eb4c673f9005e77e9f02cd83930ffdcc6e0356e2c19d1282458d2b0e264e58b86f19fe9166c3bb97508f3ce7c819bf195b6f4f3cffcf201545f96881a7c6ba51831de8e62045f08466fb74e360abbcbb6a1e795a1ed0665dee1078aee4d374af6d2f639b91f0ed643354201b0f3197d58d6134fdd193594564c31aa545400c2dd4b484555a6c4e0d118da65611e70550f878eb2847b9806fbd80326d57676a2e51985c999048628712949f4c39965cd262da3cfefd8345ed605c27bececa44e1db8ae12d4aabfa4b18204efed3e2d0f83f2f0a92312188085ce3019db98ba2d4df72d058adb0e1d152798a71b5d941b5afcef04b80297258f4e3f773fff9664b0f136876633811e1256d5ef884f4c971859e7027df546beb003d2833c6b2a1f23ad80b633cd31e2031d3d3306a0cb67fe0b05b3ea02421c4deef96a6f911034d014c0028c3cd35e4332fbd29381d6526514b2a96a8a6ef3b967d23b16fb8d362884955a6d56a99d0c472b65eebf45888aeb03ff1d004fd99b9524a6390079d2b11fc88eac83bc48be8e64ad06f5c2e9070c7cd02b39101c2d3cf07848f5b8bae4085adb4620e703f810c85504f67d3bbdd414b10188bee457b7f13b479f9c066f27d2dd11dccccd0ad430ca7c2bf2bf52dd8c405a6e2fcb7024eec63699a0ff0192ff376b9afaca53cfdb5afbb9f62110447942a554e8ff4a844d9c98bda0286a7d54c86bcd62d641ef07ba9b2c158e9fe02d50925d46c03dcd12371e4eefa13b75e0981d59ee59dafff018bba288214140002a8a1b5c935d627233b1e72a22d80c892fe23fc2f91a8f4f104a0b970c0ff68ef0b5a6841fd31b72375d767e9805f27fd2419342b76b5b73c497b5d669a0dff536107fd5cf723e13a0897df95bc8db13ab3b2c854afb0ed8fd73ff31ec719c8bea97bec0b672f5115e18dd5fbc23015f0313c20e4b1a8981cdc39968ecd499d6c8e4dfa114dc081bab0ee0bcd56bda0030a1cc4256080120b0a8abe2b7be1566116795d0fdccfcf1226275cc9c1aa494c65901934aac13fce6e8b16c4c6faedce34897de5a17fe2af702268e2a8407db5801078be52ec7cf9e4e773fb89acfaaf5ab4afefbf297293acecd4a498d55e12a8830414ff45a95c38478c2d20d40c3ac1ee7ed3e80f72c85a6701a57673242d34692dcbae708a8eb057cb326b8adde7a7dfe867e873027d2ba226ff0878d5224f61dac26ae13d93a25adb0bdceaff24c308914d1c4975d0439ebc4998e0dcd9c8fb91c44e7cce21f40e8409e0ccdf3a85bde6afcf01358fa84990892a2dff5b9c3911493c288c7f436b575a1112ac56dbd0a186d0a9f4f51ece9b7996ff16b42e45f843cbce57cb4aa4634cc827a62337482b593f868556eb4031bf149849666a8e5809a0a7885ce8d5ffc61ff347a25471d9fb68c0805bb3de0ad0a6edac5e73011096c65192b55784158a27a225a6aa17253406d360f7aa5a90b93dadcfc9fac82f2a1caf9fc30b147de1fd53d12ac9a0ed221a5edea2407c8648cf08d792ec23ae11026068569da796fb7cd72b8be33c687f072b4c0364cd973d2d591c67c7217fffc1d5f1187bc7a8fd59c8448a7244f0a4660032f8b3fa3adc45d7390e57cb5f3e2db52257ee7085d28900a3bfd12cc930d17948b107f877772670d8e5208e86505e6110bc7dd4166b765eb89c7c86a44ff1a1f0419e1e395f24076cdc5c0aed681101df817de8a894e21ad03e96a5b0e3c45ad027054543be60d7a0a6744fa5ac6d1a34b28ce7da6274204569bfcab30ea453a2f99d7678668b9dbff385dd0b386bb7b163dda7afd39bd6b3838b4fa24eb5988b88be016737c2d6f4b19a7643c4f5cf7f4f7008c219c71ca590eb6e85229c2ba7ed9ef1dccaaa365e9badabd0ca7b1ac07c3a187000fbe39a18901d2368d0250035d9d8169e4b823329c619fd18dab5a7ab806452cf63a6dd155901e4645dcc3c463d41b9d62d902af4cf7dd621dea02588d73f184417a970c5e87583cf020919cd425f0c6c66a135e08de31b5268a5611dd22400aef517de0cb0e711ac0b22f9b770918e35e2cf754c904b2dc45f2b1bbbadefd36ddd17deb4b7be56f20ecc8c0ba120ee36168fd433d217fed578e5d9a84104c5aea37a513ca66d3b3b50a70ba285d92a7f1ee894210b680203a9912bb3c70ffbdfca26300c755776698f42413b089cbb220070b854cf18787c7094ca81526468a441e2560f6c2c8c212c075b51aad14821070e641d9dee88403e7c5845c578c322bbc7fde54301cab43318205090087ffecc901ec020fce86d083bb3a736e9333c630e050ba8ab8c6be5ba054d87b1f6676c34f8573aa589427438e8b896c2c44ab2a33cdf8c02fb618c0e1ba692a7fbfcf600b28d3419e8515717e97bf09214d9348ad81ba345f9ec32802cfb24371887cdf606c0f3254a65fbf6a41f7651f86c98c1989a525e724c17a323feef6c64b79c576c7475ddc6538ce3edfcd6ac82a9851458a51e9601c8786f31a3e781309148d2347e453ac3d0a01e388d9fde710bef74483318eaeee75b7a01476a75bba0c21ebfb71618b68bbda5ea6c76ababa79e985b0c5272f6c1e8b7cd64c4c7eafcaabd9d7fa80c356df1a24cdf6a364eac472ebe55719f11d23ecae7243491b0a130541e43d5855e0d308ba93968752385fb5549247bf3801f76f4d115dc7bbd2f2dd6bd5e3d4e68ed2f2926a4108136526da212bf9e51b2c73a9747e70df01e6113f46b2554dc310a4782107bc4596aa96ab59b4d9a0af0ad8c740d9373f1ad79b65c1a3b0e1b6c5dd18fa5449037c88462700274bc005e01f6c7b9209153c2ff6956c934bea65b53e299433e7a38ca9e09b0a9b50aaa96110a25fd1705bc3e9824f8e3870932512eed58a68965a0c0aa3099bddf6ebacc2f71061617f0f461bae952fe5e9eb5c9edd404653d59ea485cf46fafbf5b4a282ec069c90631b55ec4f8f383b5cdabf75ded7e4bc92752acfd2f2e40cdb72965e73560fa5316f6439e1791c89bebb810650f0f4598e56d1a3888c2e023a8c41e3c2e13a57b98b579259dfb012efa808f24033f5a45e26a07e3ebd2aedee300b525cf4a5f50042547c0ec15e396e056d77a50a7ad4e8bb4c45649ac4b1c098afe4d991623f747f9c01dc1c29752bccef5618c12b2c582bcb35beec39bfbdb2220e7cc86ede403e9d700fd8df15ff4ce823e829eaeb0e7398c32ffcff0f8bcdd2290e3b3304d459e67bcc51e3267b38b2403311fdf79f51ec41f73927ead9595c73e4ab779f3c3fa6a90ea8cfa3da4abc0d7b641deb52ddce8f4620282fb7346d9b8218a6aeabb05b0ec8e56f4e543d31a112fec804ed4909ee8b31f5af09c3d1f10e40b5a0bd74e44e0e86af4c80fbeab8bfa197e9913faa55201048b8fc82e45582c9ae311707657910eb2cb2fd1df9b5eda0842287a22678ef9c6d0b34258eb83cebdc693b718e2ad055ee8c27710a113d3df35c6f2d8e757cf0d6c2b987ccd1abc160ce53803813bc06e5b12a57472295b7fa9a9555989c909b68134244857513bbc93bb760b55efcde4e92b9f86eb361e4ca4a2fb4eb3504ac6ea17279821e8e945b2efd7340bcc24795df7164f2405eb753433de8ce1648df056afa629b80482e3b05c8125f0345b189fc1b7e7715faf735331dc51113f7b5392b738a50d6c45fd2077290cb58244e52e1a1126810e039cddc64815a4716bb6433bbf2fb784f0fb887964031cf851258adf8a317fcf52198ae73b59e5c5d70e30b421b7da96a79f5be177085d21d390f5ceb5ffd559a22c31257e6a03c0265c9304aa59a2da3599cd7c9c4b5e69416f93b310622d0f582908d5af725aa26a7e37aeaa90c1d110471ca32e4faf45c3fb2ab75fddb959954ac50e2dee875edb6790c68660a5c41d5a03926552b03867206ce3340426d95ce1126bd564e3391038ee6fbc1b6ab1ac9264c81033b267a232ecbba8d8b0de3655d22a5896bf3545ebe6f161979be66ed3a5d2ed3d497bb6bd3cb4bbf53ef1cc838d3897d37ab187e63a239e9190c6801de2534e6f48fdb49848927a47b90e0e3aa0dc639da1125d5d90fa7669bd8a4114b6738d9181df1faf4732ef79a85009782ff45fcd15b0496c4b02d88b4435a1bdec41e6313f900e490087235eb1ea2045a12ff9803d6709dbf97872c080751c1180bad87f87f72ecd72f74f3f04c60cca2fc615f8d2d5ccdebc423b942bf42682fc67ed295fb021085d5004eb85864c262abd7b664686f50623c93c4c1874132567e1eba40e630e27f6f581ddcad38c92d56a411ee075dcae35db80fa8a8d19c3ad702d2c0c802063931e5852d561f8e0080c047395289adf620b9791b52b6734d57250934ed326997f966ab2c4bb4d65ad7e88a2d0f483026a2929e6f61becb80bc89e1ddee6d2968ae28b9a8eb59c0508ba38a8bfbcd2267826bf90587bbdca090b7b041224693f6d0166b4c02834681b7bb1b58b8b146b005ca50b8231b07fea37a49ccb1da9ebfd6874cad262359b764097a4fa47f4981eb082ff3cf5e9e78dc17977a9e444b9f232107d07fbfe2ff2cc1a3e369c7e76a5ff0841dbff2ab1e69084a47474922049198389dcf591c0c8ff982e89479a40e4e918af9e92523a39d8cac4376298372c4429ce15604b48c2f222b071b4e16f85c9763c8b15425458ddaf940f02494bda77d0596ae076e5cceb149cddc84f7a5a95fc6cffd59f2a30b77f56917c5d93d3a911ff8552f4f4f7093304fb03d2d9e0c2d8ed5a5963614756c8c95e5ea0e29da8011c44d359571c22506558e746ef081a2c5dd30b751e01fea027df566fd5712468c4ca55599d521d538e1f3d1dd5095797306ee993fc4c3c784a34b73195fb0c0f615f1c4334016490ec2773aa8db9c0cd49e0bc60553296f919142799b3c2b2d2d2ce24891e0f643326b1dc71d7f44e794e61ae500445ec2fba5eea515fea20a8d1845424475e94c40a6c390c8dc05e9fc273d29d5398be4c52d741bee911bbe56f016776697d1012ba6bb4cf0f573c8f5510d31e7ad80aa02eccad95c07acbd11ac139a0007eba1daf0d88a008b614125a2df4083aae16c66e8da11da5b93680abbb59688b37902def63369a56c783b0cf64a6774235e8a71f243eb6a203fef08db2c53ca154867d83053f8254d9c3de11a511b643b0b60e0fc86b136000db158a0092f1bdb460c14619f13ce2ebaf20e67566ab19cfaf1e6c60646387e72bc58dcac7115ba86e25f586f722ded694465f18016021c8081b81322902bab4f3266883c09e606a9778c8b266cafca67f32a1155126b4b7e01b95e4cdd580eae64e23dbaa56d924267584b251daedf72c7a7464c710c88ed4b3ed6889ad3285fcf731a4bc033fbe4c45b9cf03ae396e5d5e6c82124864b6dc49557656946d324973f2048ef496c8028792b629cc7ee0d589f3d12dbe4e77076bc8135065e9a203f58e74a1e30d782995e7bfcffb052dd4ae26d1840fa109ab0166b4c6c52a7101179204aa3da238fa9dd64ae5c8072061df93573f9a24ed1282de21c81cf0baeab10387be4239527b5c16f2c3d94f06257839110d75b06d660b2d76e5ff3032d85fdfd9681b00b1a95abfa16393056cb4b2d94c19ecadec0667b87dc097be57c47039b0e509167278bd432236fe3e6d84ab3bb83b0c28b3caa761944a9c4bc172a029e5b110d4f29818be1ab2c3c1bd951beb6a1cb9ca6f4d7ada70a102ca502eadf6c61b6f3d7609f9da494cd29f489dadfd3e21b76d2dc56bfeb0db76dfded4dea92387275e4a5443ab5c78cddb50320fd999f81fb88b074b55f467495dd412c212d57ab77439e8e208f45b9d26e89ae09d0b91ebf1e994d7c0cafa6539a4379b02bab0131364b38e3f06bf49673cccec26a3a878eb919cc17ee125ef6a98856385fca6b19b7f403b86958ac1256a945f1547b175c76dd081e78d98f3be8f966e96b6a252ac5fcb4224f676b0e2b2a66a1423d00af3152ba500a16135a9739b89824ceec90de82270dc084a5ea041d07a0fe9787221ee64816943379a3f7373a4a97915fb6d2db242a7928607323f3b6639cf8a42e0367b7acd0a44b874f46c0836ff8456a0c923bed7e1cda3ca8fc74c4b6d755b0ddccb8cb0977d453e6ca64fd87fc48a081e79d28db8d8883e120847ecbbc6fcddcd6cb998a8c7d8d96b0fc201d17d507cb23f11f7ee0d05ae26ecd988c2a4ac850e6909a45edd086eb88e57f16effb585fe85f76b15c3308f796f3031973adbf2faee6312b880de7b5d9f723f2bf32e06a1960d68cce846308c4286833d305a6c7e02cb1fef824cfaca2980e30bce10a4ebca4ce525efc6fa7cce86ea89284243b2bb468b626f2ebadc7e25694498e1004490614c38ae03b1a29144974a67d1374e6dc05ec2a8e2306a67c5f0e469753d39854d903fc72ef66af489b485a49a9600464e0dce7d8251cddae59baa8570146a4bd1d37c921ee9643fa16ebf5eac1ac9179cdfef0cd532d325965b67258811117ab2fb1b9b91b6f1cba54b12ddff22f7bf3713dca424b0ea01e87d6c421fb000da18193108e76bbb82883532efffba3bdf6c993032b42bfa7e63f39de9b86f695baa047dd0278afe7e7aba54530ee934ee4b90544b1b346ce5585502c7838aa07e3202536fdc468c8b1ffb319b64290b94c64164aa850fe0afa513ffb42fa1561f08526ec571a6786ab30a463745ac45e811a5630e479dcdef169b423ebe62b59f78fc6817901864f6bd632fc057053f4e1d2b789e15f66f4505bf37e31adf9ecfe9c5566036aacad9209953ba3ba0232655a84f0da62b82969db6c872ec8d47d77c09729e6955b0f29a0a80dedbd3e393b6b750631443a79661f1a08ee3a3442bdec4c2175d5009eb20d7e5afafa8149fb6ea5f7c2cbcddc37e17bcb8af5c0da549fb64c12ee85f16670f517e9aa259219b67ace769ea7a00c3793af4bc42923bf2978aa5d8cc35d370fa55d07b1d14709628fdf6981396408fca1f2974b07629009c2fd04e400e2c9a84bc68cdc00456776c9bde1a816bc8ccd1d48c2915c7845f294239195f6d4467493ef0cb6106a29a1c519f43da4abbec66ea00851a02317473d7d8797badc0959493291dbd9e0e10c9c2efadd99367aa7e542cb8a65dfca24afbb1bcb922a8e7b2a99d35301bf73f34d5c70114bf353dbbc6fcf0f2d0e0c1c9a7b77fe270134a5be19a996f19afa8776a2699b3244c648a364b5c2b22989f0319fbe79d64a307d9ddda67592e7e7074bc38cf1bc1a5b439cfad8dce977a7c9fe4857696008cbbadc291012f2b0bb55c4bd233b014cc983f847cf29f0a671180efbb5a363ca96518b4c464e0162af875edef74943434c9d4743463bfd78c327a4dbe22e71c25f3670543642ea7d0770534b691eccd9ea75ada1f12c5990dddc5fdd8ef7beefcb275507bdab23584ce8bfaca1dd485695a29a75f3a7035febb5a913768ff1d2530071f2456abad554d1da39ece586000d81e1aa5899ffb63f52da6906c3a6e7d2bf54b8e2f44178d2ee3c9493e1087d210eb90777264dfd55042a2b0644aa6685d03e424e9b12903606a29faa3619e4e2975a7fa1c2acd6f2789db9c322d252bf2e70ebc74c14a633c8ce204355b1e02368d825b40a4a61fd64c5fd83adde404beb2185d1da4ee836031fc2d28ffc5ee05384796235aa0ac25c27868cb9df44fde0af06a00d526ea0cebaa41f6bc0c00b165b70ffa1a7ae31bab842f1ad783a6cdfb59b5f677be1e64bd26c70084fdd6c34cd2eba40244f24f41fd07aeabd3af28acef46b4a7b3fcd8d1e1b8194d3f67b94df8f58318f9a9bc3be6322fc68c24e47cb0054f24f3c9d75be92867a83aa518ef1fa7057211c4cdcb675efac8d9d7daf3d33d985ee29601406a0b4aea44963ef4b9c5aad5ad1e050f9fc731220f376702e533a698c95f81dbf64a44e52f846b179a875cc02197018c43d47d7ed18716951108e71798c278642325bb209e27178e143d2c5fc7e6f9e54663cba353ccff49ac3adbf3aa0eda74cec6a3e135f7d44bf507c1b10fdbafa208d047cf3057f72705574479fcbf19d9638dfdf2d70addce64e15b0b705a4d3053b41fea8c3183e9fa892b557d5f2bc0d2d21f60df7537ed92bd8c2f83941176fbd55834df63d10d42b14db9dc535383e92f9f8fa59860f2cea87224e3abd715ffb96bb91d78ab60c6ee8b52442e1be28dfc181c44dfbf6a37085e00822204829a11a871b59a611547a898fd9ae0e8e7e1e6ee5325f55712ea9ef0b665e7a309f83cb88bdd8023680a60c1122d414206d1be9b194275905dbea59adc4b5beeb0e129649aadccc0f40d05f78da1df457aaa76bc6279595646f1078ca1a9eee8649f1d0383209d8d545d823c2ac02111a76cd729a9c8f4f9af61bb1606dc6de4c6c84b69481904636cb4e0b6103b00f2f44081297fe173582e9ffca407a11f4926eedef7cdea57be30a9a659db9dd22033de4b1a7d94131e5f9b1868cbbf0678a116cd4b9fcf9d6333a42eceb10090df9f3f0fdd1c9f27e18c066d441a1c3ade2d6c1b16690cba2d5a05b95c5829daf07463dafa9f9c72aa1a2ec4ba66eedfd8d8a4af153273a6edd612cd0ff80dd39b8ac8cd09a5ad3dd0256853651fc962c51df410977ea06c4df7ebcb4368a02145d78b9de315c06d8a821f708eda0a05fd5b2b6d199ce3491afe298b5672db63882c3b1ee85374b48a57b234f07b932cdfca55ef66632df41cdac80b8b7a891feae533fce9b9f080da248018a884bad6128dc8e558f796e1be8dab7f65e5944a20d3489329ca5508d328d9d9d1affa60c2fe81e08bc006efac3733b6202be06e5475e713a647506086354e10f6c70a8b131e1675a55110172f35ff036db1407b930d6fd895fc37b734c55a3e5e8720ff8e116e21aec7744814b3cc8578537c34bce38d24291977750706e4af35ec65e522e85b7ab63a5e85f04684ecb4770f69acd788d04be24297731668ca052ba3719711609bed9768a98cda10a01139b0d4e97711478a7f4acdc50eee491267412f302ba4a19285736003934ebd72b21e48d1ca7688d5a06ffcc00c3bdcef96eedcce8c626355b1f1e524cf60fefc727917e6b58cf9ed39311e830384ad10ecd87e93058752bc284bed5d0e2e0c5d1a0ec3ee2f7f72d0ba404fdb88960d685f10e884b308ec5d93f52916fefe3b5871ba3d5a81462d389067f112460b21e5c86a80135c95e56a026b8e33c6deceffb0870f75c9d5f90a97c74a05fa7ffb28c0136f261415aebe06ddf99f0c2af4ce1b33605afa945a96b06b07bc6cd0bfac8e18768cfbfef1fa978304ea5f422ed68d676500d043174e3a8bb07849c604367649e4a97464fb8a3061b0177a7bee64ae523c028f5b6212455b248a41bae6aad936e966656e9acd0f992e1a310f1f414fa77d3170f1208e81ee0d9dde0e9c5a4000b8159ffded7b0f6329d687f602cb67a33ce10a646468d0350d5379f4467ea0eab863db2a9a8acfdf96e0f6e452559a00848305b0e3a6c9cbbf6ae0263dbfe33e6d54e6e4df587a6c87d7b272515b09572e8a88ca061b7df1e5f56e20482991c0747a68804f422b33ca2630ebbcfacc6ca1a09c9e5a96c5ade0833b5ee4df857c314a9ec49b8fb2fc35b528bd4fe17a98d672a32cb3e0d20b8725d348c7e1f8792c2ca939c2ec44b8e6fcacf78b5a32e4534b31fb3fb9df43d64c2fe1dd0574ec7a4b0ea954ffea7b569def7df865fb69f8a28c13b5856e3a54792cd5ba32d19cecd62e034ceed9c54544a07c28725ad075af65f93c75a8462a30ae5aa609d1840856bb0f11a866d99785949218a2e5ec706ee1f8b173a71acfd97493d4a7406be04b3095e16a0838122d0cc8733eb6e785840af250453589d1082841dbb14650cc597da0cfe78a5d3db18134f0b4cedbc75467abc62960d01b2b8d3e9441ffa9361fe28ca9ec209021fd3f5e2bad4ed7d1d67ea711fa0e8256e65713af3290ddbe8588604fba14c69c06f6a8819dcb87bf1546470baa82accafc1977df6c0f25503023e53d4238608db2950574b9c8c2726d8f3a16236a2c78761fc4599d35768064e954de6ba25fc88f19460e390c0f3f1007a73e0831295d8ed48841d68ccd3f0657e9fdfe400260f80b4492782620ad512559141107a0ef1c14bfa67e432340a32e09430f0b71e2dcaac1d6c2677e8ab09249b8a1502848d50cd2ec90b5b5b6772897ca2186c7ae7abbe3b089e04fb0167b6f2cb3e02ced5d8594c7b120c432194532facf1149b46020ccf002f31b41a3dfcbc6bb0445d8dede0387895224d7412f7dc9446981b9312402f10a7e63e6103d75b3d79edc2e525d0d4a7565fdbd3a2dec339463dce2d43e5ef0f1f07286ddbcfbab12fe8b690e1738256ab945b7b1bc25490aaa5d4abc0e5e67ad452ca3d20fcb4f1ddc03796b727ddbe06c90f02cbc22029f84682409d405e0f3aa788b304f6f2a6f8d5e2a3bae8ea692544e1bca0260ef2b5cdac7c1338b51ed399ee8ecc46da0625c282bc339037869eeb5086065983480a577b4a0b1bcad08052a7542f8331169ed9d523693ed32ebe99ea6eb53793ef328d2c152050d73b6543c641b437909ac0377f75ad095134c336623aae89729ba2a3e32018cb270c68d24e6021809db6aeee0189278151edcf9f158b40e2402e61fc02456ff6355afd8280cb2346228042e3ed34b1f8642d8d45d786f00552b6ccc8ac1aed3899e4a675da8e126245a6f4c871f67b9430319fa38c6fb895e1844e0f8399185f00bbe534d8ef64cc11069b447c016cd43948cd7ec962c8da04208823339479cc27900979c837433eb411d56100a74501710733be8868c77fd507fcd10e6d2ddd6a24f1080ce610ae07b49b2b3886e3a48c1ed7ef93db51fd59abab788137be959d530d349073bc1d22f76590146b625868e0636be2810fafdfd6065d92bec6eb4992485f8d4673ef1ed95f2ae33e89a326abbd3e8ef6ef2050bb5f629cef6886a96ccaf74cfb1e726664580d1636c513e8cd83eb83ca28414aa46150d385b415f17b698a378fc0c8fae9c2134fba3a4c50efd52d6128295ed0a1fdf927f0af7978a75673ee958bbc4f9c2f7bb9c26e05a8aec90393888e05e898e847e6adc067ab76f696e426c34c72f3cba0afcb49da45f4a195eb27f5271a74bb98e4dc4d19cd1bfbd05f5bc7bdb864bc061a2d2ed9934e134e755d3b8cc17d5fb17549f9332c6594e2d770210722cebe65a040c59cacb1920b18f5f91f82a0addb43ef6721c5556d1931f8a63cfcfbcdbd0a69805f91736f1d01e10d5643ed9e61cd4794caec14c2fef8fe6eb460ecff965d162e132bace38aebb451a54b1e3c3128f370432197e14369f694bf56f5a04e43aba98c627f7d85398a4d2900e10745f54dc7cdbd0e5db9762630b06a6addbc0089b908098e1dd7036d56be62f9b1fa1e4112eed5cb28e0bc5b6804484cefe0a0c3e55ffdd6350031ca2a92be3feb030cd7a5128cce4ca85dfaf6f7a951b53dcbd8d61ad050ec9724d3cded3b25f8800e41308e4f853f74accc82266981975d711c646d722cdf986d85d6dbc8e8916e77c0fd8219c90c512064e792ccc9eee5a69ffaebec1a837c86afc3d285ed9dbc5c7f9ff0af7a79079493f9f232e8eee2245a7455e7e6edfbe64763c3276fe5010ed5d06947a1d3c7f8d59144b6ed4db749b2fc92828b33d273a1e00cc1d999ee2be485676f6ea814f37536e5a3dbbf69446aba119c26c5a58bb343a8345265c55d07c9d78ead5b15724af86d9e933f55cc88e9cc3d85dd0934cbea191dbd18f21e5760223366472c71332387b843178f8a4e5aa05be7025f976dd477261ae368fdbe8cc8290769d5011d59e3f31b32616766c4c3d66e820a3157acaa5bbc8ecbf6810a28640fff0db6229105659389e2b82aee8d3441dd2d50796b2766d3e7b717bc3491d73b06df34180311261bf37c456b6887135c8da2123c61a46b836980bb1e306d72d5b171fe8bb9b6460d0e867f4b92289e833b6092ef273e0ec9292f9731f7819c0144d4ae6fe5a19f3ab00da2777266f03bb6154401445a1ad682e95be137a6ea13a987da1a6108438d83796cc92c14430569c288faf2b46b4b2e3fbcd33a1424d6a24342fe42f1ffd9660dfcc0a4df48548baf312732de75eaf8e90e442daa44c11bae0ed367dad99ad3a4a8874b7c1828ea84052a77b9f436dc31c1a89e5cfc2ddb2413f5929f7cf168bec6714521b7dad9abeef92096b017e88ef241ed4cf6468a85f631115cf9bfdccfb3be173a4242e61822e2f8703b8dc2a83399e0a136a81d7d1e46e2a997be193f68ec2531693b20296934994e61f0208d746c829863b80ab8c80503048491cc9dae02094911fa1f27617569325fde79a428c0c5fb71aaafebea65836c951d27555be8966b98e2cd3d3bcdf7c0ffc75f21dd0fd7588adb17f288f6b98b308307895e9ec3c06e13f86324d3532a298b5b873a8379047f2bf05997bc12a00d2c28f7a8054bf1b1d961a7f4f90b9a1095cc7597e509e5bb1bfad3018057363b343bbf0269f4e56214df761d967fb21bed43b0bffdee94dc26a907e3d7f89aa32b8156893055d50e7863f3e689fc44fac892b89ffd12115cda79dfe9e3b4cbd336dc99b9174b3b90892447a11ce28948f7d53e86afe698746b1580f4c1a11420f3d8f5f331a64634017e6db9812b8d6a4be560cb5314da88f394709d260ff15ef5ca512a4bbc1cb38befb4a5fde1c5bb498cd83e0b5d7d180e4c8ad1378a795d26452626b0f6fc1b50d5eabf9bebd7a96553d70ee600126acccedecc4076931130a674c296697cbba89c4d9f485d65cb361bc71680f3e1d9a31e587a75f01b3b781c6fc97a77ca29e6cfce2baf0e9d013facd5ebe6fa4880fa51cc5e2f9e88ea8dcc7a86860a9aaab53fde5d195d1a167a2d442d538f675ef4098a574e6de46523ee10ac280b14afee395264a5e820bbf1bbab158489f52a8203c2dd7c12f24d7580acac6c9984b0d45a4ab9f4bc8a210a26ed8339ab9757f2cdbdaa36381722005a021e58b2af6297658c17050411a520bb1d61d641b142ed6d758eba978d1c40ca2d7b058848af7a12de45fb1cf233c8762e20a0b1ab0db0e7117207cccc73e047d70404359340b73fd767bb87acf89cfc2784e3b2995955786605695c976e0dbed74109547179af70bd4c49fed00feb5858bcfdd47aa92822a61cc1a7d12c5448205deeec2b94c73a82f3493c614a4ee4efe4b15a97910a18bdf58a8782e85e51ca146675a25cd394ae243e2a620f4d52ee451d1169895764594df2af6b0e132372760c3dd869bdfd54e558eef930694a5a29c513518c0a7ccd2164e6d5403750e28ca01fe16be70fd9c65efcc9ae0fe952c79650ecf9aa7b86a9813ffb3f7938cd731e48e2b6bec570349b1239055d776840a7c80b8b20030cac4359eae65f1e3ece2875896852e63e6bf0272859a80e4019dfe0a1445126a62355ce955a88a02940cf8d9bc6e6325e0ba16b60886cb250e2221c6a66d2d07765798dcc17cbe64a350bb8b4f859a1604cd6d5b8e2ae69914f77ea6e024524fa8c9232f9891dc4473b0bd6bb028a568d4bd82b4259b0684c08b4939f97a983958bbc1e8f57ec6145338825ad99f3057be321fb8679481df57c0051332b37222b7c90271340ab1ccf8668d8ff62357f84669442147e3f42fa8f3dc4f10ac2ecef7cd56d657d3379671fe416c7cbfd7e4af3b5645a56e470f480063306839d8924717141c53a07a1706c567030aad002e4f35bfdecf69d41734affe15f63e2d2333113c3307002dddae233d6ea7514e838a4df98730481aeadae7d6d648f59c12e3299bfc04670c076f88ddc45e4fba7856db90c35308b13b3fc4cc309a8ee115f0d2b4bb2928de4f2938ad72e1421340db8d21b6a93664c0c36a8ef8b5f0fdb20c92921c520947f876c0a0cab24bbee74913952ea5e923c0f7afdc54ad9dbeef60caf27c53c38c45343a2b68e690924568aba4f0b084727461bf7a5f171b69d4f7c5210f6d2bbc9b7a964a740aceb3259f2977fa32da3243eb5b22966d1a8d0dccbbd502739e99ba974c5ed56689a39e93336eeac1ed7694053eb56c4d1d41ffbc8ad75daa14b781c98548a4741160b996f293299bce1add6ab6b342e56b24df39091800c8a1e40848bc3a640aaf349aa7703ef00235d6b5ad319c98e8aa1a69c3d729c210d920e09bc3aa07554c22b2853bcddc454546e119135d33af2c31618cabd0da44c345587bd3c388a50de79d6204db8fc2b6788f3d5c30950cbd2e1f5e0fde55e70dd6042c856487299b74cc9260768d7da0baee80390c2ba045ff899c6fd0adc16058723666a3e344486b26548db78889a89bd46065cc1583203caefb655c0e3dc7bc3665b6d1af20ae26707fad61a934304786cc765d117693bd921801acf2228a7407289f3d732f29713f8545d80173229dfc4e5b1d49469bdfa99db9e56a72068515f2fe421c4acf18e885f7b924b0ff5cede5d428339f0edd96cfc845e703ee513afdfc5e78e9b69ef7953dea5f89a8264535dc8698771e306a1647abd0d3b5bf0ee0219c8364522d753dbf30af3020738572b9c5aa0fea2d44509379fb6f97e1693bd92d0172169f6071c7707eaecbdf5f10ba5606dda90fd36fe06a629e321fc8ffab4552a9aadfcaba83a7426b1b9e9ae633bdf77b651fbdc0c7deae26426a773835a33b07b5e6e3b41264c0024eb2b2eaff17c85a1cf2c3b673a0528aef374e854c5bf66c3c171c5b221f6ca17c0f00049638db6992181af4fc63910a2dedb3211d9a1c2ca7444a7ba30ce7797585a416160fcdd777024ab65cf6dc76d23e6391fb5cb6436f1ba3946622a6a80d0f3722e7b67e1a3db97a08d7781687683ef1b01aca52a152f59b052c5c6de14361dd8e00736428c906b14e9c678fba965cac4e2067f6ec49149f52543e9f03eadf20f01f5bdd298a904bf6b5a490ba9583b7907a0e3dfae1281a9e259b2f299536ed561aac6ef161cfcda3b0c6e8771e203b13e709a06dfd00012863084184e7654a2ccd6f7269b250778a835ce936ddcd6da001778a0487cfd83d3b4b3ca8a97208f92863dcba5ade82a166f8f9cd38dac8e2f797d752c54665153e0675cfce796fdea1e314a3cf3c0590b933325936208ef82791287b13a9c1325b10163dfebcd43a537d2c503c7cf0046bb45888ff923119f57bb60d87bb7924c624dca9a6a007ad56e140716f4bac207d9a86a3637001783d3f427e04d81895acf0a6e5af287e03c87f6cc564a3f6f62058d746b5173c7a74c41e7bf4ca3e909db504e7e0297ed95273ea737930a9d374b1c8848721132e6214a145774c272f4978cb8313412a074008bd662763a9728292e4de947782d2fa07416a048789a3b0ba69307262f9cb7cb35a98a7aaab28fcb813075fb3c28e90d499bf9b4f6f59d639526842fb05e471da8964331b1ecd248ae78c17270e8c89514207b3dfc5d65a98efe3c7d74418b0c15de64e32bdbdfc588591fbba3e9cd7fdee3546e568739e1cf4fc2f79d07f733bb0f32d26535f81b9e53782500c29e4b323d32086f9fe7076ead66014c1916b0b7ed115d58cd1928f414c4e935790134db022f7cb75f8996fd9a937e1853ac90e997cbda500902a8f281ea622a2770707f95471f0a7c34c8ab706652ba5b7c9f8facd1d82ecb42e29649cbcb364b4621527715f0e30914d0b63cbdd2e0da7b54b2ea3eb48efa51888e7a00d3d32b6462f110cdfcc252e1f37285165a82a1916245d2c2320480e76baa28188cd2c80574a1259e57f06843683e94fb76bc6c1765e96bb642679aa634b12b1c8b30fb282d6f4d0410643dbf2d298573b918e59a244244208f67258ae8611873b7d61f8c3c8df5b66db9a389aee92fe2f90d00025e638aad0b8eb119e25524ca2b218e022e3f59d3ec9acaa6e0354cbc343d054fe8fbca1506f4c2ab2320d350eec61ef78fcffa2c0769300023fc509cdd200d74733e8dd1566866aff3bd6ccba49b6bd8546a9d88f7ef948d61f72c4b54bbb07e1886e920ced2b17e902877579f8d8e863cc6df0686ed81688e8ff077cfaa43c41b06eabed0e92630119441a291c52df9fbeca379df4ac8966db2ce14a9c17bd3ea2b729120b098478aa90f5906b141d309623996228bbe490fea2dd3bf0f2b5ad88212725f5689011093b0fd5c8db3febfa88b8ba5d67cb500aa01ad718f6ecd2f1ba51e0316a731b9f36a9428aa90a9380da5fa0054aca7b559bba20d98cd153892cf93154b60211fcb95825afc4a5e3aa77af9915ef57b5c4d83f28405bbe58857d244f847fd3ac3417f352798f8e541dbd0107b298a2a214a9467754b4dff18d879fc8620741200a85b58860c71ee67f589c7949cb32236f6a7b8ae47031ad2aab245b3bf772c03d9deb6bed7aa808dd6f46b6215bf4fb8c4ab966f7c39598ca310cd0e4c2282b2131782e91be346c2b1cf3aa511f015a63ebeef2104c5752b46061c9c8f3a670d0f4af64b4f96718eae65c3bf056d8e65f8cf78779dc2e36972a96e46320f614afc8b684740e99882167f12387f50fe5e3f659dcb7d2987a2e059968d7a4957292ba7862e865f235b3b06669a091f18bb9faf1813d150ee685c36c354addb028f94ae5a38a947b7dda52c10837805eeac1bda0439ce79bf126a458a3f7f77f39cc58f2838ba3862c0c1455d8564ac593bf7f4c2cfcda2ce0b76dbf21c322e69deff36757d16545018023f2cb3f55fd6c16be14d5e3998efcebe7728b2a35f645d388259c5ebb71a583284316f6864103a589451ba6477c801aead688190a7d23063f02de1fdb61ab2a92fe4313de1b1964bf06772a4be424e71fc39ecb0d21d3f968940742b3c0c398f36880f59567fccbeb6d2c5b5c30b6a0cc48c5efd24f7866009b509320bec00efcb0a4bfcf34b1a34d060866db5a8d37a9d7f0bf0fe3e01bfc98be4660a4c20b40feb3e8ed22256f435eb70b62c68a316bbd770c5dff3a9ff7543da36f1ae04d01eccd9d4b42a53943d82a2ce03280946ff6eb3cae247f0bfbc4be83bcf8e40a31adb111f7df7f477f298025450c26aea88dfd57de541847b81f2f2239f778755b8bc8e7c5a455d07d8483218be04b48b10d825dc5d748dc1a7f9aef84e63aace5ae54a42e4f930447c5f43357d1b4e78cad2c8a21ac5f55bba85af3fd17ada5ef04eb4d7140d1230b7850c57b16cac7d624b927dbefda3c23e1108b533a5cfe5fa06c94d311c5f9baada2cbdc5601ef698f703c07a0c0af70c3795d1c879af2cdcfb71960be577eab0f6db22b923a36c0bd3e93fdfc59aeb6c1ed778b9f5c94e672186669d9101d38beade37d8622e6a346bb4fb72a59e6ea582b74cd8f42a919309760066c533182a92d221368c6bf141cba5ba04d7db240cc823a40653569c9454e70cd542ff40a848c054aab679492ae6416417fc7028f57989f782946e9be3efad63a63f34b0eff4646c136cb5a1eaf06524ff33efe9a855ffc456b46bbb55f20b080397dec05b13aa138430f09bbc1355109d49eb3080001927177991ea5a752178097fcacc6ed378bf9d118f6b8bf0d09e82bd56ea5110be57db7b50ffc4d4330efbf9238a6854de4f7317cc35acb65efe8d87656f43c0a488b0d81a37fc7e723acf24c0a7229fd9d252715294fd77f2756e72d67d083541092298ce9d86241dbee484570139b0f27f25ea995649457ef695e478de0db3e1a7b3f0855e0ef696feffff2f1f52810264da3412e520354ddd908035cc4abdeb76865a31cfceb5e28cdf52919f6295fd7b90af86a0c64e053010dea9d088c21dc4725e7b74428340bfa1159f8db90a1b2c6e0000959c5f3b9654f61cd8560f9cc625b9cdf31b9e457f70867b607c65b32d742dcf5bcaf9e838f11f454313dd45153779cfd85ab2b2694bc0ee56fef69188cb88c0a7b17ff35ca90345c632bc7f6412a5d4c5788e3aa55b0e9041a370b8beb489082b8be7fa2102bd65d1cc6f8d5dc4dd3fa02432a60dbe32be6a8261a39ee30d26669b7745c5ba297bb1bbfa3127d34b30b12fea8c98aa3d8e6b0dafd82af5ab3696d60a8e079d3936072ce437e784ff40c1bb3153632e854ef0cb4029a63192061a9597cb53dc17b567c3cfde20f1060805fdbb6180e5942dab6cc9dee2fed43848c4b2589ca42faee4022f54d77244ec98c487f91a09d9defc706e655fb026ff64cbc65ce6c2ef88699e8070526c1f878da508b3f75b7479f8d396e12ccdedf6491162d8a783983eb138e2cc5defce7e09ee81428dcee6200e9a6efbdd5f069854135a07bc98064cbc6e1eb10f3823464a44f406b785cde22e7006962dab34f20160637028570c55e9dfc28384ed83824605027298c8bc0a7bea57d7c596d20094d93bbab09a4daf35fa19f1d7d0f8f2052723b558f818d49376645df4e36941e2ab2271a0cd4563a710437ccfd8d0ff365b3c8ef9ae1e30c7dcb9f4eeb3f63a0c89efc8ad2262014541f4b5d0c9dd09d7ba6267ad78c306099ddddedb65769f9d2a5f5652845841b756fee290a28d510eebb2765d3fb7b55cc9240f6858e51bf084acedcdd8fb3a6e23cf3860b1b3b2422a720511380dde8e56d8bc41119b92ab765ea7f45e98e938b2af712497b22fe0c77f44a1d4805ea5e58d0f3fb5a11f0fae2d30b7be79ce20c640f0bc35402f065887177860be467c0c7cac59a011047c32ef2fddb5adfd67f6941469342bbc472138090612f90913b618e96d5f313ef7bee418c46a3eec48c1440db091d1efa320e2a8dbc9abe30ba4997d45695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e199d355cdcb33428c4d4f76d8f2d93c7ad6358d3bf1c9e10162dd890d6ebf13880add6b43067b443f8b3050a1b8a3b32955c907b46f4b52b2600051a4e8c977c6d2cc48f8fc73169df5bdd980bee258deffb2fb8ecd6693186d400baf128e60256188b6eb783240232d5c524ce56a801ba7d6c43de979f2c147e8d9faf67b187c4d787f3d6814569556cc879f6004390252914a92248672824bdac1579c67892f24d88863722a774e92f996e63bcd8d4be2bfe29ab7440d1016a37f26aef0f1151f6f7d6d6b4e5caa79805e177ab2558d7157e394a56feb4c35ee783f05e74e0882b5b054e621c8d80c268b751e0e935f84540a38a6e337cb88b4333d315b92459b85604315c9eb55fe177e3eff713ddc561f0b824e0a7dc21bfb37bfaf42647e2365bacf7ebaf8a73d337e163b57549d73537f7c5e7cd3cb16c32bf2d3a76ca9d16f85390e239468cc46625034b8a17ee577280b87c995a3fb2475b5a2e77d7b3c183b7ce4f053abcb96d4c18549f4f0b34b3279e62a460540523c2577a78bdbee96d4eabf5a20d7d1c860ec37529b6fee9130c6d261845a633bb5e5e54c8f4c5f5d138fad613a04b1c424b66015c55cbf227b6339adca97127eaf2bd81fdc835f3db730be42c2d14b738ca0e577863dfc9304ee0b8317dbb17bcfe4be4f28b41781a52c5d4f258a25af1fdf3b1aaadf4588f663762417bad5b5ff6d60e3281990a625ffcea68098c83c0143bad5267b58c618deb67834a666241e7d16ba258f1f669504096a34328c9c9cea4291731d9f1fce99cd0947e47d766912553f80a238d1c78305ae21dd2f8eb588c6eeebecac0e8a1c7fd696adc53c53db51d291aa989b64696a5934ebf044a4a0fdb0cce7dc2868fd42b198f3853955a6f078b73a77c26360d4132acd0315920722ceecffd1113af91a98b25ced9f16ac9ae81e59aea71b3aad8a70dcb0bb2c902e4c81afeef99edad2b149d2e9377f487d73171e25d4ed853b633f91ad35e5d85cdf8e0b6800919043c1cf4f67f9a15eb77b0e3118ba1cba206188a6ec3a21eaee922a90df882b15d31e2dcb94311be6e60db4aea17ab775d0e4f633f9f3ea41877c38af1809d338f4974f66a17034d18ccdd3f22471d6d27f9208e57bb9b8d10c8be29adb8cee5f98efac3bfe8f1c3c61afb4fc6393777223f71ecedaf4cbf420e97ede115ad13ee6a1192dc2d06a6f78f50d0907e351196fe820729d7ecaa7bd8ed50fb64c4125880be0ce8db85da7d97f68af33d79d599588954a0b1cf91f618d9ab4e390b2f5b5f2d9e9e17992b547b41f0704f61b424db994f59db8aae825942d50abcb79b0deb44897218061a2c2a8e0879611e7236547c81785fe0e57c1bfc9b009f31d432847243c6b828aadff579ffa5ad8f86e9875e2086bfa8c9431484fb00439a57cef8226145870db99fd08ba6bb9425ee0f59b7b8a76a54364484c6de2bc95ad81ec8b236f7339132dd78f020ac2091dd914466dd5f47c24e36a7d60d14b8a36bb67181e91533ce6105c8f0dff7f8143fc57a132bd5dd307c30ef906e7438e4478a8cd24a807c761567a7e9e4c81df2c073ca96b3621253d1c89230fe4b89ddfb66427259959f439368cda8805c512292b3da83e92814f79f777e4325b252cd0b70867522148de086d2e460b8d568fc68e3070f36ba9d915b96697f7d4ad5dd8a8fc67e1d8b998f9b914a1e58cab0cb69beee8f05617b200e2fce06723390e70076a825016c51572d6711c2c1a7511f16b685e6b35d4ec2c4f4491dcd2f1d0545c33e9ed87e5c74bc1a9b6490cea8fe327118f2a9b2b6333b948685bdb98f0b823b9bfefcc15e16f93aa6f09f2c5fd9ffbec89d4dd140d354d869218eea0239dd986f9edcd262ab914851a07a7a3952f316a0515feac364be4af1a88cc41a9178794d07984da887d831ea497b6905c8cb6ff82149466971f10b229d81678a2d63c4bb201e97c4b62f575408be233716ad6e98452708c57eb17b167a117f29779f6133a3985ab5062cd61c7f608d9befc048dd26dc49ceea4945d5ccc39403a66afad8dd047bdd1eda97dc3fb7d4dde763a7bbb5747d24b3d6f3063fb7e7200516efe8be63695973284a08de78e48c931ae4d934d1dda841a43411ebf1a4ff1ff0d3a37d16fb69d3507819a51802bcb19f3030967c02cf920d8bb1f5976f3bdd07c97ec9934ad5955e7b6a513e7c446ef2dc0cf1865852f69115e6dc08f3b05e1b91bb1ee3c9aa5d2254fef28bd5e93a4bc49bede96e388dd5c5eda67d5712de2bb8fa8ba0d14bf2572a079521ece7d82d11a5a03ffb05a1d400089602ed4914c7235e2173ab5af5b59546a04dc5741bb2b579684974040e39fd685e19814ddf5067a2befe825b9b17d53606ffc922ab853e4315712f840930e67230fd664e24bc93ac6dbe980ced53e823bcd879e963b4148af9adb1caa8c771eb56d31607dba1ff9579ead15eb2da130c87972efb3abde42bbf359897b5085b9a74008b7fb80eb3798943503ccd8d50c761e168825299c28df6527d1063d1afdf5016ac6d5854a977172a589981f584f31bdf69eb6e90000ff98dd71eab5c67f153cbbefee91e33fc892dfa8f94a99cf09f4962997684aae4d007ff7d3c7f357816f2343d6b460bcdaec21644246ee6813fbbed9fc4b3fd07723a914d6c2ed441821d4ab061a04a2c918475da9473872a60e166c7a649b9d6b5bde8bcd3b919bebbee63d8605fb8a97416d84e2657bd61127e5f64c63c554481c726cc5dcff339b0edb3bb75c6c5c2195d71209207b56ad1d10f8c2b6ffbdbff4de11c57ca201e2ecb869c04f773aa69fbc3f4f5b3b29b383b153e37d6023d7e1de6efb7cf28207fd2df5ef642d6984238a8ad702554acea384b13502bb86ed757ea47890d0f283eb7fde958cbc8ffa3a8ca21db17d3f2b9fdf18195db7547cc287d4c1fa19babb9959ebd8abf95e94ba5d45c2f0aa2f94b2bf335db010110f77fe276e8417511babdc61499b84375da33a8ad6997cf861947ca85aa1b12bcfc91fbdf5931dbe2496bd1702a2bbe25fe1468bf574594d5d10ef02cc29111e48cfecf27fddd90196da247c4c1d6f5a6cee476926b6b35a2a93cc3182de35b81a36b17c50031b900575a0164ce19c77d1329b3e73d7e48fcf79d47c49da5a3f0cdcfb7614234b1cb3a9ecb047ea7e1a8b0282b5a313715593900bace431936c0a096f28de150b94d0911dc3df5c8e15370c72d909a258de700abf0bb728efdf58c23b08094f0aa7ddbb182c69ec2da4b516e0c1be59670089b461d5fd5538148bc51a2e1f606709ac325cb97037f57ac7a460243c06c3a0054e0a2e4bc4e001c8e5e0ea8ac4e435260c2f11155f2bea33885ad1270f3bdfa4b655306b1d0808652b63186b851442bd496fbddefca6bbf4fa00cff65a9d1b3f2aebf761c66e05e3131105aac38987a224f561002903f209b4ca4974267c46554cdb61e7c84da842da74a7eced622fa24026e300e518964a94820a8fc82aa7d86f07467fbd41711521498f217e583f5b10a2f48484f3358ef7687ada5dcf3b23ba24af3026a22412538121d15e2169992315d356add041924aa96f9e332cf467b8d03d0c2c7ab381e9c2134a855cccd5fd3c0c7d126cbbc3ba1651506c983b9669829e971faad64af9060bf077e6f6a4282ce53c1428f78582fbe65abba74b46ae1700f63865202012e1be3660cf86b16cc70870ed5a3afab5314e516b1b596996e0831a89e606185eab183710a96ec07425701683ef6a1ecce00c1e4cc1c1a9925d7844ce00c10d7385f0b5af7f13836f80663e3359ca49231053be046bc45b06977dc1467e923c17cb37af63aa00b5d2bd76deb71518f21418a430b633de9119c686f5178c12a6e4b591a5b84c8f13239e661852429abc2837d039b68fd4b5d6266806a0227941b67c16cb70e3ccf8150e21229f027b76e0c9a3606974ed18842362e98511585e4a66f6a948fa6d9e8a835a16681bc60c6f11eece4a208f680fbb71b803c447e47574aaeb197e7cce826e3d4e92d1a81f8053b85053c8017607aaaa5d5f9aee03b93887f5c54f036d6b7eb61ff215e6250eda5bb7a16f8264fe1f693cb86c52d1bf1a68557cba1c0176bbaff614b8e8cc39e71f04b8085d55a337ec56a41d497d70aade25ffd1230700df485db2ebcaf9148e6f597a6797c2d80e7284fcd4c7346720b3b88af8acd115d096ec2a571f36f63f2a8acd17f660787849595bf75a28909f2bbdb4b45a22a3b05f7c2ad86944e73b2fe5355a2b440c4a82b77eb3e0e5216fb04c4e509bc4f5ac0742cca4824b2704794df4ae0592294e45fc41dcd079c003cedf99086d14160ef1131285cde3340f23616a64a74a5bbcedfdeb2923c68b56e08f586e043053a15374f6059d4750440720a220b044f9f3ad42cb6b25af4fb036fb040554b7486da3023e0f33e2a9499335d11518be40572a30c539b3c94bb7792a5dd0afaddf9e254b1d2534ca96e2d85e193ae49ab33c557d67f681912662d98896a01587a0eadc43c8d13df168bd4785967cb083f16c78c88b9fd55ed0ca3fbe0bcdb072cf635826fc8a66a395d845358392dd8e5a8d81c72161388ed76a51113b35d47888767b7d8a7da8070438bc35d4c75e69c466973d4e7e01526dee0c4827e6e12215caa242f42041ff0d57b82309a3ffd9df44071dc211c759d26a7915a482a698419812c6a07d9aef45decfca8cefa727ea4b322a4c5fed58ea05cc30bcdb641fd1b43851eb049d615c806b0d946ae29c560f54c5dbfd70fa90f8b0c04771d23a110e3e462a34e6a55a1619acac071afbe1f9aec2e86eabc12842db04637ce3e11e0d8dbb1be1accfdf45633a70faec505f368feaf41513185f1f30719107348e5e5cb1dcc8d20fe2b8d2e735c4e60876457543dae339e42f4f25f1753e758b88a75b32b9c3cadb33df26ea21e896c1124670c263fb0c8d0293f44c06259ad29abeecca630b68a736f749bac630deb9fbb1d71ed7be7f56d0674bbfb7ade817b034f1733e853227ebfe091228f850a71f249f738c08ab40bd6acd1f69ee2322ea7e9131f4808f9080407ea1dcf4c70d94e55d1a27b5e4979d89f14fcabf10d6591ff431dfe8a17cb767fa43b264cb5d6fb151b720bb384705b4cad1265d400a3d6d534843aabf6480a201ff414f05191f87739cf2f23bafbd07374870bc871c5d437a27fff3214922f92ff74438dec3c560f6f8251dcddabea30479eb51431ae1632abe9f28bd613008d37f939c8705c78104ff872e7e08e8b7f38660a0ae68593960d6d363ebac5fbdcc2f8098acbd7762346591013a5eb5360bc5f3dcd9b4ecfad62bd3d7c17b53ae7e9606a4b56aabaafa3f844385c364ed85f5beda8a1fdde5f7290a1c2060d8d6bba77f75dcf7568e3593a47459d207f537070f5c107c5d53b71d793a28c46542fbf6d97287b4d0bbef47ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d474dc8b43b03876a2a82897e15fb8477c956e4b18b9fe8453cfa4094837bb5517ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d98934f4d88c7294c71279d437720d589ef736ba3f9d7ff8d90689429e84ed41a7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d98934f4d88c7294c71279d437720d589ef736ba3f9d7ff8d90689429e84ed41ab1156a1c0d0f93c52b3e3e492720dc6682ffb32b275d534428a4f74ce1e2a0d5ff227ddea4b041a8a992d7b8dd0e2a529028418714ac4758e9c7203a96c14abe6e24c9031dd66ff9f13c047c3da673bb27acc341f5b63f557dd7fd78f4402898f77760056e559cec407344e118a2036a4ca3b5f78db0768a3e05afec60367bc986b6794fdaa3da9bdaa60bc8d1f8cb3e8f7ad8e05f86a41338a6bad769199f2cf4a19151429b1899b994833665d81e9b785f770459bdcafb15303ea9edcfae23fe21b3363d3598afe0fd23826999d0af2b0652fbbd1ed82280ccc4e5a6ffbfd440d8b729630d296c9e925184c6b24ed7f2ecc8b32b1941c6b8390dd3f16f471406ecdc7cd6744d8c96ad453d67aece0941ff5ad7fa1aa5d9bf0c144dfeca41e93fece0204248fa2e57a4fe09e0ee1149e4fe66d0edfd1b454127f1c6f310636196ff1826224be70a72a6d0cb922a2726d630372f7f5ca5e2fcb5a790a89f81a372b440b4ed2729f6b038ec457f1d43884aef74b06f129d324f6186514543e269cfeca56802f6fcfe22aff0647c756cde42dcd800eda4aa858c178f6cae8207a1a6ee0d0ef161fc284d75affbe273c9584eb7398cd37e611d7ffb44533684b4768410fc2b1fe9846d9a6cfbbfd2e2b51120387fce92ba1d0816f6bc09eb4a0a13a622b46ab87f917512f3cd25bc34be54b366f605dcf6b9d4545619297ed967a453b06f8177908399d9d6b06c8428574e13806a746ab21c4a75c2bd6d3510d5a7ba149f662557a0e850255de23f785d94e9617f76e21af96a1c8aa7d5b30f613a41f2cbeef9cd06e0ddd61fa8b9620dd37602e26a5614089d4826d6f739e0e43b05ab6e50e8da310596c5db02f727119d0289665d7e4303cae9b8aa7e8cd89e4cc49fca0dc8ed672f2cd9db291672426fe320ddf79ad971e43ee97b51367062810b49ddf0aeca9f297061e37a04714f3a4e27b93444e0e4168faa4b6bfe1a952e7def724a5e803c0f16126c8663fe14b8bf76bd3172839bd1c0afd1163fedf91534bcdbaa43d6d04efe4a8c9baa6acffda4966e72563d6549ae1c12177a0112a6263e800cb1e350691229a77754bcc56e04d5dd064b2770961d426e56f4e269d30cd5ef0a8049d17f81f0817013e55e54efaa044f98168d4e79b4bd2f940379868db80dcda181c7cd855b99a13beaa8aac280bc0dc04d3841a196e2abe55373da28a31735f2d7be51881f1f5763e9c93b1563e0430223df301ec31288437e48f05695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e190a8e093d58ad78199ec654abb363e1196f63118e4218b25e0d085e21d3701d394b8c5cd859bc7fab45107f2411c4d73bbb0045ff4735a0fe4e3cba8427ab58bd4967c9ba9d7327235b9a8ea6f67b6cd32470f11c3ba4e993d4d78be1962a27e0e71be3a051a58fd939c867febbb647773a0306b7767999ad35f4a845e5278d0395e32cb80ce43625650c04adfe72a99511b1debb362fb6860e3d28e40891590e6b0eb2a547ea62daf0b6f55eaa90e0f0493a72f90c995403adea20f06eaed5933b8981e0d759f390a2f076bebbf7e036ad680cd9497bef1b2a6703165ef4cb33e4dc84a602c00695598e6503cda22bca252db0199c5181adc73831c068933578bab672ade25f6f946540676a62b67f591070b80d2626f5406cda46e68ccfaa2a8061dbfb4ad652bbd55d70dcbf877f1c36e866beaa49057c9b21cf463f20871e42149dfa831c8895b0f68e24e8d09138ca82a27583554bf6aad960b801e990d30ae34484c5cf435cbc5c415811094973d17a4331be426f6b653d5cdaca28bddcbb15ac47a9b31970eafaa0e0bc53e2a6362f852a55a880137844f187ff6ede90061eb6d1d2990ddcb4e454d163277f834e6b94f4a028cf725d32dc56dc0920e3d90ead0bf88185be8301d5f664d1c18d740fe2d52c1e2f3dd5b9d784253488caf932ffcbcec4462466853ac900a172b95382b813f3516ada81e691abcff670c0e22c4816f6647fc66627192a60e77eb8f77170eb330ada6de06defa914faa80d5050cc0c4be7f27e5bd76ed09701ec5bd6f26d5df7ae7e18b02d347907b0d3b8895fbb5de7b416f55275e7449f7c781b0ae8e4cb3a61172ca7f84aec1647882621c9212d92692ee00590fe904f5d23da2470773f53df224e881654d3961d647ea79a68a397798466e774f586afbbb0583b5480ca49b141184fdfd2a7f0f98e04b319412890078eac8ff4276e4c11c6b3d1e921a76245a9f1a1fc0d474edb1d270b8a88747065de6e569dc3949835eea547ab23ae5fd2b42b71514d1aadee5019fa170e1ae8459425e005793ad92c956765c2e7cd27d31dab38a3927f6e498ff10983514e2ef9315420a90285e288f23753b396fc4304f199b4d976724c5217d655c67e01d33a9f58399aeb4e78c3444e660442808ad92aa06003606d08da918d80069a373dffdb5e775bebc8a953edebc427590cdbded1fe647150c7386f3b8cde7ec672a73e2e27a04bbf790066aae409799ff68f2b9fd4c78dc9348f83fe35734c484bfe05321960293d2176cb6065ce60be940513efafc819824f7c2a7320d7e20340c21db77028979b07388fdb668d85301149aabe2b96c303e04eb67ae8c314fb50562dae5fb0f9b0cfc68c9e242ef7c543ad10afee8061454ebf76567eedc380ac232fb2112c5e8242b1db581b09784acaea2515bdc6454ffa732fa427e9dd81f7b741bb02a3cdd224163258ff595dc1602b37f87ec978c74dbff498d3082a77bf9189bf2d27c37e10d49d8f3f1fd63711ab64e66e29164051d4b03ceeeae4bf85f86d9b18035f64107cf7a18adb3dca0deda3e3fe88a7540ef674b859e3e7842223a92b2ad723062c9d9393385c6fb4f55cab93ad71e25f8eed60fd384ccd2a26a544f0e84664cb862e1676fe89424ad6f5126569123ec78eaf1a8cede47b08916a60e7599e1b07df6027b9fd7c7c7d50ad176784b9d1c361039c7722358e94b9c9d3f7b9d57571b8b1899c5340d963742ff97c27ce376accd95ffce64dcf9b04a3a28ff7c0259709c395594a8b745a3b8807bea0da30c2b29a69f35c697fb47791be10bad3750fc899a74913292682a59a565a792ea9656e60039edf33bc3a5a17702b8a08549fc05cc2d611da811cac6f6ec1d6c0395a12cbac897e84d91e646cdd591fae7998d40b28de895a141e56f9a4a5c0e1f4ed411379d5bcec9856b83f72b3ecbe992872a130869ff3d568a36528ebee13b22c8977b7a24b450e5936bc627061e6ede3defb0cab2f1bf220c53fd75d50ed23eef79ca17f90d7aee9e5ef9bd906905c0a6553ac149148218e278579681e02e4f50decc5159a56da173783e03c218b05e6cae87fe73f578124db651ec7f4b275da1857493d9c6477e6b6cdc6f93ad75f5187e5a7c07a973a86b25635b7b46733659c562e1a95ea5e2d88021d3ce20f3ee178264a46cc22ad702a7e314804f9be97ecaa0079072021debe60e4016957159137c0ac9fdf2fe1ddc9fd33fc323421167771648a555bc79b18b889a74789732079fa44e04d91dd835b56c5a4b6aeec395923a44c20c81eb62869faff0ced335cbe32b493717af9d80a779f5fc0aaf7dfdaff11c2399ee62d78602c44b15cc96f837fdd896452af2f9262df5936d80dd2910e06bb3d119f285ad4bfdab902ecc9613ed82a680365e98f93f8a8880ff2656dfc98d2122722be875796ade64b574904ad78e422130727ecb5003606fae5787126236d3e153fa9f1622fcbc82a834b9a9aff1db79fe47b73b90eb0a450f752c1e1823bed3611de7c968f4a972c1494de707c9e11ec010adb07ffebf3c3455a7ee3b3df69862fc795d77d916417e4a15d7a5c3f9806afa37373443aa1b5fa0aa8649de283d0427caa00f92116d71afc6354786126556a50a5a9081cae1a47b458ed632bbe190121d625f80ff0a4d87e81a6bb4d0fa4409f30974c325ace8f27c3bfb6b455dadc4a741bc2101c06487e1553455c769068da9f705fad5e6e1a74cc1ede149d53240d936372abc91609ac44b692c3933e47d896f2e35ce23fb46c11b18472caa4f11e23f231be2cac9f60284f823c468633e91a4271c5105e728807ad16144d5cb3490ba4d850010d82c6cde6ab389d8d6ad5a5ecc79f4c8946b7f33f09694a868a7d600a83fc44865ae76de8c5f6eae10f9e29d41fbe75ce967d9e2594411ff1840301427632d4472f104876d8628553b299b43e26a2b49c30a00ebefa8ad7ad9879873f00041288fd4cc67cab2c86557eb86795d12581325cc6327cb60682855e6e7a06dda53909c0b58447f44fc80e1bfeed9b101c02846df956c0198222a8e5dad513fd49e82da7e717dc9be146b448a1c141e83cefbccfea15ad586cb9f15460ef13c41d70b1e3151bdb854436b763c860f87626209c62ccea946fb6dffe0a79a10c37aac09a571ed6a16ab6f25dbf280bd247e366e35fb143b75ab482f35d627631b671eaedebfcdec5944a327bdc99c65df8a750232f6a84cb313de49ede6abcf0f580b04b7e07466c8a2797d572897139b331aa3c283a5a9ce27066d78b52a5d3bbfe31d6f81529e3809c4bf1444320981c6e6c7940296c1ff92fdff759fa8d49442f4758f29d915eb409c5d53f1f3791ec4cb805d7d6e43322ee934c692b3d38f6ef6933f6ab67eb704f6345bec33ee632c5bed545fd7ff8610ffa9caa062c01eaa2b8a2950608259847e5e26f62758606073be9cfc65227af09b51880c8f1b72f5302fbd7b7b8d3fb772b4f5890dda8c80856b8e11862aa0f61997d7830ce851472e34094f7c6a1438fffe91ddfbe1c613464fed7a98e692c4dd4c58281a7a920c6191a37b98fcddc06147a6d8907b2911fe7c37133539e15d1500e82c41b9c8c4646a7ad967226a5507f0efbe956b03e0c39d8eec274af263ba22bb03f5de4b150681ccb30075c90743549588c78ca5b94dbe25d1d0650132114beb58381249b3389b6dc6f73e6ed1058829e500827715545ee2fee937877a5b00fc834cd1921cfa88b0d680c29f72fc0c839045f36166030d920ba610e8f3e112430cea74e061a7299dd929b70e702a4df82434ef6740f28475f25bf97415b5228d82eeaad8f0e889a7a8123287b111937507457d90615cc404e03f9aa6492a9f1a853637c7bd09136a351afd2095ea5c533d7a79e5a1c1075cdd55cb21e941f9d412b6499ec300d79275dcfe0338d231e5f3a0efeeea8a31168ed49e0db463dcaba806996ca78a7e0e1a4fa83249619c63ed1fe9be096c0c234d44146b475dea01cf557d5f4548db7329d00bbdc03fd2f52a34534c0f08e2d9caec0d7886fddc2d84a5682f48a4f252057bc1fc43abf04f73da8e1bff77cc5d0145355bdd81bff82ae193fceef126580b8b871271eb4cdea8d0a8ea333bfce7f3135180d65f33980ee2103d98872841b56ad5ee1f10aa30de0ed70009471f500a5bff81224a9af22cc2d3882be6525e3f013dcd73cb6168f2e54af4dd3e3d21ef96fa0935383947f9689b062d2f4fca6e9fc87d4df55d1b7755d78bea4c38bc5bfefa827cecc5b18b951d932f855791dc3a07078a093e9c109641cda8d5a7952ae7fe54b95adf46d2d3e8322efc6072d057fc5967841deb6746b5eb3dbb78944f652be4d6da704d832b356f1bafcd920b59393668ab50499de9cf4deb2bdb1aab0fd04b253aa6f0ab2817ebaec1b98db9d4e50f555d9249942cf53acd1605e5568394b29f519378fb92fb9cdbbb8b755f0ebb6af8e5757884b568f1bb1ef1a175f89ee9e87d9403c8bc9c42d0c4b9877a843b69d99adba28cee668c99c4ea6cab0774cd76a91e0b80d561dc426f628f94a60a582e17a8d0c53e6fe0367715471efe5bff963edfbff9d23874dc069750a1675ae861ef08e2ebb4dcc27ac79d093c1d5182a8b3f62badde575cdc1caa6931964643e27ac1528ed6663f34640816aee740b758aad8ef98a35e19b526b1fbf8e9ee6473db961a9b9ff7a8743cfda752cbda86df5bcedecab95c2075efbcd1fe15309af34ca0f9029297e131082d0de8147b9d7f2502385498b2c7e58778c1f929a7764066c6800d07ee778e3a13b2ab0239134c311d7e78a8b0ba93b61c72ed20533c4e035fa262c5c8f2693d7c25ed38dae42adb0d3756153c48b523a9d6510d3a42abb8801e612dc6b621b206b362bd0993122634012f480f48ca541a7e5f124bbfee669e71440bfe910859a93ed869a498c54abf4d0249d3c7d011fa273ae93f5c3e21f2ddbf477370a6bfcf9a42aeabfb4834c893483963d698a913e6aebcad26ee643a939e72949f29c692f2a6c102a51085bcb3131a7afb510e3bd8d4d754101c9811b56600c51c51a0dffe12671dab36af5024edbee2d9c9e65f0132d97b701e907fedff9200d1890d4b6809b314827f8a4a9525d2db1fcb00a59f7b5d3651bc6b58db9ac83b9b154410b7544d1e1488e1a9a744be224d66229e4257f917983b936340e3c78cde5c32eab0d9664a36ea649023fb1656a586eca32cc6c7e5f9470db7346451890b524c19c2886b3b220ec7e6bc582b0427554723bad48d53ec0f70acde980a6977b46bb9acd42d96d604ee7358d484ef6fa6dbd9fd37b32ef917db500753c4abd6c42f645c5e70a9627b7b0d8da7134691ab738f2dd098e384414e742cb9728634f5bd44a09b671a2d95459860aae7732064d5de3ccf2eddf725ca4739924d3495a4f603cdc4f8d10193c010e26640b1b3bddfaa81eeb5694d3e3aef600f04c37c1232c31ea82c75fb0eb29b0b7cdf81e1110c6478e347aa5bc689092edc088317409306d96e039c581926ab7d950e1b165e14d5082a12ee480040304f00ae0a711fff0f6cd59698e718d5b5845079192e65a5964825e8a5e889ad621e21f4677115b61c6951fe0107bb39815bf93d35686f930a91985ad75dbf64ee08652844654383755283e8c017f1102e85cf57565ff63b3237dd68d622a84e03e08e0c2aeb40cba0a371b078d93ea5bbe30c3ab193182c72dbdbef4e703282ecef133bd7adc1bd50cba1469ccbb175bbfb817a1a7a6b9e54989361d49a29e0410ac09deac582d8e8d451a5cbf457f1fb190b9b3a9c45d60f7b9824d42cb1a9f92d6185dffa63eec180a42fd5723cae2a61484237afe94025d75dbecf67e7de3cb6ef60a21c138a2885919aecc058d4381f9f2dd853b126ed9df5ca46cc9e9ac4ccca32a7d9b817fbab863b2eb407331f9a058bc2e8bcbd4a23179436ed7f96d6df4e438dacac64f81564fb3805fd8cbf6134d37e2e60375afcf3ba09d276c5f044045f32afff6d86c136ef86d37cee17a68d87c60179b2bad3b4d103c5cda0e1a066d30290cc74b76318233e0a93eb45ae80999ab92a3ea916d87d07e7b25a3fd11efa1237cb723e00d9c3684a6bff2d1a253f7f019f77e198826a19f0d7704108d837c89bfa4f3ba9996a39cbaba1a58e2ec054d8d0c01800f359a62a0475cde3acfd937bbaff9e7b529b1422650675aa78a530e46cff28c6149a8e001431d22a7039c557f9b1dd419aba43aca15609cc69ed349d2f091a9e198c1ef9d4108b244a5750eedd77a93f55eb82e78b4ac2e6dabaae3139eb65be0064f0f057e8944f4091e4bcffb61909b224c1b0c220592d7c429f6c795d8d93c10f0369e1ad18dcfb7668a5fdcf0057d6df2646436306f5a808d795994e58a507387bbd46cfb36bec4e720b2eb9480d9578b0ff0b9dd761de9bc941362a64c919bb4ed6da1408b3b28d9c9f2ce8dba847c60140cae5c7b5cef33eabee5c8edc6f00a88398b352e09cecf54ade881416499a22b8eeca336a7edfa7a9a08f2a7d59cab6c716dccc7a142f5d980fd3b14d12183ac8af79f68905dea2b245e23eb868bc7fc4a32a7618d75bd7ce2a950559f0b00d0265dd55fe58c22daf19a47bba29b5b468c7daafe7659eb4677b2e36ff7e98b8d9bf0ad2553bfca9edd0839b8b3831def12c635e550d179f487f1d79f075f44eb10196214d7a2860affad72e433b9554def64d8080742b4e6d802067c2f02d58cf052691189ab41f8557cec308fab9fe3fc22b0a9308a5b44a6437f467372238254bae169479543daf1902f71436b1d9ed887fece1d6aea35fe1510089052ddbc4773646f9b00a21e89862e80644346ebb44863de1406c61838612ffd78260dcb8fd8cc2f79f9d24c425338d4593dc8ab68d9d4865e61ed3289b9b31f72cea5862073bc7315b733a9a13e2a65ba9f47a93121d6491d18e9bb5882894b6f05b7262471bfe712cc08d04071c24280d7d1607f7bf3f1b6e108fb02e14d84c5743562678ca1045d5e137a8378cf6fe88fe145e3e7ee95359ee31da02506ab15825c8c66e8da5f6208486a55d847735e0d351e374a9f94646916fd132e72e4f994cbd57fa6bd0a3e3ef841cac5fa74ea264b290e6edaac22c7124936feff8752a4dedfa9701c8a5ff43aee9f1d230a30a54634f294b6678932a1b3581ba97241dc2062a7f2f2bcf68063fb3d3d3659bf7c166dfe1da7bf54353247c925578e961b3446175648bfefaa28a715d30be373c8771391c6d82d1ea3030ab5664f0335570478ef801090b14ffaef775198fa006ebef01b5f96097bc95f4f01d74cd69a195ea87f56d0dd6f232c7e00a91dcf0b39b29fe20f74e71613bd37a3696f5fa087e251d9ca590040e42286fd28bf62e7203ac087c9c0bb57e8f5d61320d5a9928b2ec4d5a254e39e5a456ec5c848f564f74ede28c7a3ad285329915a023486569be7f5de6b2bfb470db8505662e2e1c44c46ea81b37ec49bec570271045bbc306ab18e1274939bbe2bbcd2c3b5d5548637cf74aa692cb0f40701297caeab58acdd899a831e3b4f118aacedd22e2c2b498ae910fd8164ba2b8011ced0cc9c9727e7a3b42980aab4ab0c9a6b88d3244668db140e150193f8650c9259b87f0e10c8a1557a72671a3bdfb380ee2a64dcba12e7cd6943cda7b872b94389cfd625561d2702eb64265623690d11916b46c3b00034e0119e71de253402ba95952338243b848d24e04884744d6b24b667ce8e43a944cda1b0f1cdc02c89f2fcb2a60b43c18f7adf3f7b90dc80eec7b8977c0995a4be970d5e08eda7545fd8faee6a601d0ee7b6d3771d04fce7471975ac8049b4ce00c6ceb616cee6713d3d4a321e5532f7d554f5c60746a85f75e786d62aab7dbfce5bdda5925a17c5607f5967eabc23b483f3cf4c721876184e347e21358814c02a1dcf3b0d47a001d4011b22f6feb3362dfe50bd6518cfc10290ba4cd6e907958dfb36a323503e4eb872e913c3e5063a764217365c862a5a77c4663fae4873319523f9882bc437c9c67a15d7c19f0fb45dbf3e216e05d3741193c084a256aec795a680001737546d0b212256e8f89345f96be79179288c56e2b85456489afe2e3228c5b78f60935fc324fe11a1d49e16fbf436c3ba745d001c2c5e8819b64d220bb04192ade9fe0d47989ec78821e084a935c8b49128bb569eb218d207ed7d5e5ce68a17364bd54d793d29db620eb8819d57acfcf17ebc8d7bcb0e4568b9b3249f241de9029849095d7971c74a84d8446969baa9708b1b40af316fd8cd29127b8197ac91ceab6143f3267133f075780864a4f68371793646b526014f1daa8432bc5e937e4ee340625e9ae7640115614189588a04f6f9fdc19ab3a051ef62836b69d0586ea1188c71e42b901d59b1bfc4b30d5fd75cc5b7d8c62f79717b8be58b6daaa876e8fb098a20b26f19cd55e0ce7b90b26886c61e2555ca00379aeb7878dffc49fcac716d65b02f762d0f674f47ddebaccbe5165e2116eba1557825298f8be6e6744435c535912cdc99b17e8c421e8a34519af9e450b8cdf0ce9623501a8b0ead68c381f93d0c3c6cfcfe714f094c061dea84c8c4afe984866055cfcae7ef530fef01a138224a7a52c626889b4961878be12537df05c3145784939531562c1b1977daa8e663126bb2ec2fa87557d14e3fb4100347f80535f9f447db9118f0b7f0e982c718f97dbc604f2ddd3a9f9bd30308f554ac81aaf6f547ebca9cb910ab8dea81019debd497df72f6f4bec5e593be7f7634416937e7fb779f32b857bd5fb66b04c2be1111b2c6fa66c0fc8130fb4372d5972c06ac60d2d878c38043802335a1f77d2319ecbcd902af846e961c13fe8b581ab904a9fd90a470af8c38efe594415f4d7cb4afc772fb04a39f39fe093746355ca9fba436c50a09443142901b7389f37ea048e511a2375233e31b40f41b35d0197637f36bf9f374dde6df785e3caab3a1750b488f9dff841e0578b8c49a4682fd7947470d6cf0724dcf1da9b45e3fbc4a78470f5b85a4de21ff1872ac66d1be26ccab478f95d910f6217fdb5d7d9fe2b7546bb1fa01cf795cf4b0002c91321395c86fa97e3e8912cf45548020eb50a558ae8452c0d02c6ca4a073952d2ef266a14318cf20aed35c5bdcf974f51cf5084bd5e6107318934829f70aeaf8af4d8daed1503e231c787bb0040b75ae8da8a8f61578986fd07dd040db4aace4ea946c441c7e0e53c290996252fdd570de7faaffb767b63a867f026f61c45135f3845b49cac8a7a74c70c455b225b1d7966dc4938579d941e98db6468da91e2c09a41c08afe97ec3f90fdbe0bf8415063dc2102f01ec549daaf80f91e133846d4685e13028308e2074e9711b3adfd51f5752884144c100dad9b76ae43eb362e7326ab333ca296d504cc7cb59e3bf563f670bf793358bab6df78e1484815c85e91bac27c4d21d7b1b2fa478483dc01edbd6fce53eccc1a7f643e3d91b5bc0ec1bc0f2c7a504c20df01b50d3581530c3fca3c989f20ffbdb1ddf500c9092690d5261b706f2c02d4dd9663bc36be25395ab0fa7b9a7ff52034928d71c6a53118febe137e416143b67e6eba111c265420697796d5e15dec5ad0b334bfb4601257546f0a5fa8f3f8818f4eb85afa8ee1c9e912bbe04b95ab8fd4a1d89dcc3fdb4a1da5945641457ad4ce8c38c7a479d7924c59d1adb4b32e7dea0db4e900d02f1301e8e8965fb56c4423dba40c79347b644666020962beb28f35ff23cd9ea3668459ffafc3789626ffbf9293d76574110bc954bcc3ced0c9e998f8f1df4cfa1649e8579e3ce6915330cbb8f2b43627bcba62c1917c45235c815a5385bdbd91fd90a1b17d1fc47649388708c8a2af4b9ae7c69f2874593aeb89495117eb48566e439f11abd2048946f77ae09438dc95cb2d16cd8a0a017c815b708a20d71af486b6493019948b60e298499a3c17913b5353d5a8fc26f5acd488a7d0edf7ce841eada9b038a27ad2368eba0b804a7a020e14b858ca439cb740d9a322274e76102959aacfc5f0ca373d0a233645ec07809976a1295818ea5a01740b67fdd890f8e4ecc06c940d10433b8cf4f1ba210ac55f7156564e5461fb82b10f4508c0ee603d34b55ac671755d1291b94bba529d00124d48d54a9d273ae0da6277a0fbc5e78b6e0ca019d4ae6722abdc06903dda3a9f9b8f3ee706f2a3746c42d2715a8b7581092841dc1c58de9af7cc2de222a140ba958d18cdf778112ba2d2d5d79af162854c1aef2c5c1a39ac47639d734101f0af6c4cfb1592a555acf76b9ed422901cc6cd0df8f1f8a3ef754ab0855d145bbfdc376f6c7084a935b6e191244856b7bec5b316ad06b5d01c63f07c973b75785c74b977836a9d8e9d7176ad5c69953f55dc945dc7820bdeea69f47cb22fc46c684c161d3d36ea0c6942dbc93faf0a64086dc54340005242eaf027015543d54bc13abbbec51f5b47e9f16db40332bd39fb0f4dc2b079b8dd17a687993a37fe5e8f15fa81bdc714a9af80ddef99f65577c629c07f5887febfee652b991457e4dc0036fb195d2e53b6ba4cd503bd282384820731e28feaa93ee534bd4039ec32a26f15a974613b7fd70137f80d4a7e56b8bdfa5992a003a1c7ab0bf45a44dbaff9a1a61e99e9f0f65954ac38f840f4233a0baa4243f167d9bac54b6889132576ff2ab9fa39f2cecb68be571c363b6d46842b1920e59add1c740d0563bfc0c0744a6f2095f6d24d95e5ce447a460866524a8ab807505e8aaf95db01875a2291577137a0f594c9dda584af765016336e254c3560d854c80b7410adf120b34389aaeda9a504c7654786724cb1b2cc27677ab93c7f59ac649af1834cceb60ea81033ab43c11dae692d9631b5ccee4de86a35f8b9a9fcbc5ee4448c86e5b4a8935ffd19ea61243c2b48a61cdb1072d05603bde44788ae2200811131800edaa55e749f24f13ecb3a3962b429fcb8ae9fdb60adc0cb3c4ecb746ec6479c1ba99d616a0ddeedac876dead2c584101353f312b0d8ea10f0b6b37d07f1090cc30d4bdf5e2e36679923e6df087db05a7964ae7b21a55774933148003e799460fd70caab324a61f3b674ee43a55a9b9077f193d8e2b688f6ea938230c4d9ca3470f6a87351dd422005d76e72800dbbde607e4ccfdec5947546b8cf1310c8553980ba74924d6f87750299dd56c6785ec8da8f326a28ede3265523892488830aeb390d66f50b1d15f59000505ce9d30c36f2ab15a11314c3a9a9efc6b267ccd44075e7862037b09b2acbc6650fa4a815f34413544bd9789faaae0ee5eb80ed9ed6bc8f35d70ef85461262217352bded33ead7bad622762ef040058e2160c425c705eb1e97c9b6b048a3805ddb06987abe5fc7a5f5ad2272063d3db696012578a5916ef8380ea9350c5da7b61e340a65ada32524fcd9d684b7215cf8636106adca8114900b89254c8ac0b1745b3a144bee4e85157a6174129f6cf96c1bfcd4078826517010488738a7073b789a8a8d5e11c0aabe659f62f727d4a5d306f4a4172f45ad2791c09e50954da9eb9a01017e5b6c849d6035ec15607c84d38d66cc959c48b6b95992018fd2e1301fd076b17018c8f0daea4eefad1f3ebdbb2cee73667162316f62f4db2d00191b148fb81689616975e4085e37dff7dda2563f126620a60bcf0bbff00cfb9246763b322305966d948ca47bc8d2e2e81dea91d6d15af9550fbb972490c4dae700114314b4dfd7bba4eaaaa45031cc51b64c85997b07d5210f060b36b10e57ff97e37d63a439405bc0075498f78599da012a97de8a4d1c73d694d77c28c0f8751e7d223eec86ed50f50ad17a979192074d69e2f994b187d8c9853db0b8ee7416f98e45fe88d2303b354a656bedbc8646273357e7b33f199b62ac57899d565442046c255b596912a6686b21d242aaaa858bdbb197b8d176ec60694465b23994423fb29f94af331a5623c3c444d15643706e3bd0085cb8811cb5dca79434a17022b1a61aca2b27da0d20a64a1daeefe121e6c001e7b3bb388c73a5bc82e5f931aa89529d620ad3573b264e07dfb733cc7dd6a09c239cdf49d1120a3de1ca570fa9bfb8760f266e992a8211e27cdf3b32e1afbe6c4090d5913fe71ad51230104ee096f5080dec112a32287459c23f3b5257885488b3300d051a4640db217c08d8665f1b4adeaf3e11b82563a2257c6cfa694e96c71d6e70abe3b2b08cd886377760f24ec4b8c0daeb4c5905e14fdfa9ad37a9a46742029065bbd260ee23d37901269e13f80f1e5f390fb4bee6bb458af6d9761b9e6da0f8f66fb0364ab55791618faab639de2b09ef4d13420b0f7037f778f33e3d49b94a91883eb1c73bee6518e155f2343a902ac0c7b3d927bc461356ea383d35a835bba7779eee70b6ec977c7de5b48f974c655c85193ebd70e0ab69c033e5d100687f7334dd2ce2513a7c6a3b58b1d4e0a1a7a2714ef8b586337fe7a72f111b41d861487fe9fb14e1b418514b2a85d293c4ae8f36f75b22d7747b6130933d7b26db09753150803e3fb2613f58174127ff1a3c01bb5755c408c1f1405bf98a20969c0b185048c5487dc6a8a509e3481a5322e2c064a74b823044be76914033ca575e38d903417f39a500fe272c4566445b1cf72d8349e1a02764d4d1a0967ec5b00f38f03275762a3f1b93709876c0e4c597c173524f570582d1f6bfb9cca359aa95126594006992b0ca8ff02ab618db5437574299e91f2b002ed249753db1b0dd7bc6f23a3f6211f88b882bf7a938f322a444b91935eb6e957ee7f3aaad5bc6cab0e8deefd9410f6ecdaaf4385ac03325a4366406948143b459eb8d54f9f645b3b7b39a5ce677bd31032f1e02dfc71fef6d5d4bbb3701b8792114c5dfececa0c4844cda76bf06dabbc85509c37447799015851eac70edc3585682e635c0d0ad1f04ae79f6ab0202da6bf09dff99bf9c19af6bad7edc18d6ebcb30a880b7c22b7280e0a0e12727d267292b7f7d04448ca206aa64d4718bb873536d8f3636c9ed9003082ea1241446874be145b7e9dee50f015ae5f9acc76eaa34c7887b67e7e83b4f780663748daec46284980deb84afcd18199105b55cb9eb71c038c79f4eb27b71d880c0e73e07601d836947338667ed1fd2760fb12b5dc41acca3313a9b4aed4e404f118fd29f804fdffb7710f33bbee90b32179be5ded98d11e827c9f267c1ffe04759c98e13145ed3eaaa7408be4340dedb9bc18d06e3e779f24e5cf1f26fbb6c73ea582c8833f582ec82d3c38789f79a9604e966d31d6eca67e87845d142ec8c4ee2cc480c5a20a003f0c8290d6ea232ae06e9cd732b4522614071ae1e6c694591a1c21b2ecc3e1e45c443d3372818600cb11602ab47587c7682536e7e83ae3291cd34eaafca854f1c62cb71176d0a9bcc66df4e465a0be2b513ba958fa175de48441cb625ead171c2262e5ea8d32b36f1bb1e5b5b208bd08a4bead1dd14aeaf3f4b049837394418a1da41033df0547ecdaad1715482e02fff7c75aaa8d6ce2a3866ef2087ecf9abf8255d20a362b1905f624a3e2ef7a5a2b9810f7fb8e427720673a6fad7ce92e83a5a33fd31b8d8766ef06a974218fb6ba3938a226f858d786e79b767ee419f90d1d9f70d154d4b8717fbfa0494eef53c1a616ab64b9921ff4f2c0658b5498cbe703ac6262fcd05a08fd9c07f1919f714dcecde213e4ae2e7df2fee6dd0cf673f2c97e75e160627231ff8b0c415fc05d91246b6f39a82f9eb508e1683e6167a6c58fd65716f77d29f6c01ad85bb9a692f1ef4af6848e585118f673fa1de6544af3b4821dc74cb2dfa164253e28f98b1b763517fab6306a9fa614aafd30281a117a7a73fa47b95ef381bd5180db2805daecb297524128eb15cc66fe1d18a1a7c6edb14d4da6c81f91c040d3a6457d83a10f820d7f844b6f4a2eee69f3fcb24712d768e5b2ed4602f8d3fb6cc6383bfc8e87edc0d70c6598a0ba1aa7060608dbab4c5aecf83e2a4de57489dd98e6bf1feef7811c81dc166dbdf061b4b690fd32a9df3885b93fa5ce8cb7b8a6614fc22ab2de78564da55ae904eeecfb0a13beae680cd89f42b0c08a39b31f383efbf8138b2ced0276249c9ec38d45d211b88d9fbacd95a1f0af9b9fa1b4c11051889956e1e7ffddc98e280eff553e2d4ec813375dcbe7eb7c19ca03676c2d02dd86e0774fbfe4c01bdd29da9034e422dc0761c91215bf4793d98d76e8bc027d2d9e13c31e0b129fc06dcdd6d49ef659397fed958616bfcfe224c559df84568a92a80ec163a59e1108ec1b3dd03224d9857de955e42dca534d551311f8ff106c48a7eea9e165fadba7295509c83ee1487b52ebaa2fef89047da55e923e13abdf34a48859e2309881ed16ebdc093fc39a7985dea922b915929b5492135be978394c307a7615432a0afd9eb6639f9a300917964f0308c01d311ba39ab380c308ce0b141153221398440bcfcd2aa040dd76aae7cd630b11636b92ce51ed346c84533375b41bbc6a762947cf162353972a8a9254eb12eb23b45e939839f62b3f4980d9061ee2f80bfb9edc897d4575f9863245b459ca28a3caf07a2b165865a17c8f4bfd55053e68733bcce7a3369dcc0093dd3cafd329d99dd4e945c55f094a7034998600de2aaff26d12cc1452004696bb2b2f259fad1794c13dcda6c9dd311df018a69eb85bdc6e278543564da3952ce86a3e8905fecefc33ca5494957b7cdcacd7f220f80dea30c07ed01442ffbb809230ec17c591064f7847f44ad38c8c80a2facf18e3928324771a153572b35ba689aa5ebd7a0c24190310938130e76d29f4ec338679a7f115a9310081f3b648e965df3239704c639d030c6f3dbe17465d50a43786a492eb3f7d6bc8a5578d0fd5346bfa1423fe06c6b68c8c70197be1d06557e4eecca20576878031b5b15df716fa02bae3e9f46905d7a0eb05b000cb3a87a4de8f4df8d636db5a100e5e36d303b78dabcadeeca9fd70124237caa0d5389dd61edf03122a993808aff817c0b91b827b4b6086ac012597b64b37c4f76688fe977db2e494721df9e6eba765ca4d0c11edea74490cf12e81b68688d0ac2a0e9ef03e2a336c33f1e8873dfd73635e4c4a3c88a249b003e7b28251858dc2e61db414ba708419818ab18ab64085805e9886accf8f973e65786c9846f4df49d23b7fabfc144ab6b755083af52ae77e10ee31f806df82ffd86b064bc6ec7c6bf835c4d50092d45a7779660691a2e76c8015fe2aa1813162c8661f48c7e68ceb92d51855cf82ee401ac01d2317280baf3b2d392d9689de6c7b0f04f4685fedf27ad3e2c387f63022653080fbcf686898865f588291c132cdc284232d4b0c63a434260f7d873291d33fcdcd5ab29c200739843c287bfa263172235292aca28e7c9a880235de8ae30084a1cf82199bf7918acf23bb7c6bd432d9ec2155fe65c30cb03e5e5270ba2c7fc9c1cd4ee42cf030946c47065eb3a6dca9fd00b8b2ab3272b76b9c584b03d5cee245317a524d90209914986d56bcfab3e261093353da07e733a5dda58bd2478c1e3a28f33cb769c2c8073efc7d7fc0ad8a24a615fbc57d50c0e30d969976e9d527498f18bd248bb6049ad52f6cb8b69d4e505422c0f774c8b724188b61dda98d1cfbb0852f053049b9ed6d17d808771905161c7e5033c40dd7e3f8f93e6cffa33435ce358f9e8c7a314f638320021bf6317f602ed833ff58730c03b6c9c4ef22c342a82ad8ccf5a6d75377ba68c7c77e20c4f1fe54a90ddc1b4d3a49dcdfb7696979e831078157aae2d7b6224150cbcf954087569ecf5e81a1c739c3ba8be12864dd1eda3328a1877186c115f62376d980078a28b1dc2bb2d88f93da03045a70352769f55d9b003962fc7078677fe25aa60f744a728d05d51c954dfd77dba1d387bec0097cff365754fe20f1cfdbfd928a4fbf01caac06679585fc3a425f0ee9390a9009efe99a77ccbb35580f2a347459fe72f0a9baf5aa5549a2fb2758f1fe4b59ae4e563c7f67227500099148773187d14dd060e5cd912ed37dddc845cbe63eeda1c81cd2a8d50044ede5fff7a1164fd6fc6b93c4835321c24bdaab2eaa49fd836d84dddb8121cb3b10dd517d8aa02dcc9604bbd425c82146453064e9e1df75dff117ae7c4f16eff82b19653e52ccfe82419a785d53f509d38031bc58bbae39a232fc998dac1960ee5a60385009f0e9dec77e2d5a7d4c81435b73df6ffd89313f94846b7e2ff2fa0aee70e4cc489fd6a100b556903ae4e11e02d78f3c9d31f84e041d06435360404c956e91c55920454c87193959c2542d92b3053fb62fe0cc486deffd96c5d86e69940fc75f7bbe67324d149050bda7383b3a71b9e730496f2d80752f6c6fdd3d23df49173a6aea85f9502adab70b92b8d65de1c3d65f9483063ba519263a4a94a24b2d801208644a19edabd3c0810981a94b16822726496f13af129b9a6db27ce9daab5281786bc91f12547d1ccd4c2d99c80e4363bd692c4a1a527c0604e25d4ab5d1333b70be7879ed4daa89199cd059bfe386c9d518640090d343a657ba54ca6e8060eabcc3ed226d01d1367f81537ff3408175c2f6a95a69dd6b6a918300100b86992d0c87cd09ad270e4daca95b337b6134d3984b966b289125550da9e66c5790055f0e2e61e049a60ae1da1087a199d9e90c04dd7848136b4c97d9cb2e3fa473837ca555f34b128b452ad7e19a7dff3080489ffe466cc0be474d9cc6f4573af5d734f722831a4b061b5f30a3ea72be95beb50a3a455843d94d5bc80ee358a140b450d0229579dafa33674d6904618a67e0f8ec49836e70bd45d0ee332f61105b43991d0ead63a3da570feaa79e71bd69b9f53bcc87fe31351a6a7eb7986c0a72b03d72bc0ee22bf1c7d55c056379055951b58684ca87fd6ba7e2133d24ec6839cfa86a139ebb42f5aa52de1b4be78e7410112e5a378052c76a84ace8a0ba40fcbe90f06fe0d081bb83883ddf6f45d48b8811c2fb8e7aeb6d7dffb36f2fd85389e6e195bf5c5858561e53832d3aa7e46f5d041c9ef843ba48f3f76367c0ea6d1aa37a92f7bb968a53eeb6cb9f28d8195012c878fa7a7eb4a1f0d1e9d53bc65bc26fc35447f53469be541333dd6fc611b26e1f7dcf1ac9711060abfded12f1fdc4901577576472e48fc244f2f2c1f25bdf00e92cd80df18e01627996e6b23b1b776b50a1b4f1b2dd4e4124377c34385269fa2f3082711f8b0c8dbf60f95165c6ecaa63318adeb30acc00e20c7fd889f70fef093ad288db7f59201779d415146710bd19589a5838c4cbe6bd535c01e03115957208932a472428b5e5944503ef8e416b4112c93154d85a2958935af3578cf953db67cb582df73a6940547afb9b693b810555bc7d38629ba941252fb8217086a94e28cf55fcdfdc8351c22ba71bfbba18da3a9f20cdde148a8fef358848bde19b383c8ca6ebf1e4061186a48333035d880b53da40fc2f3eae96a599ec0681376dbcd1efd7307d85ce218b1108f0f531c86d1d62b28f4bc0561dd3ebc8654d5b28ad56192a59d5550e0f29ee95ad6dae6987d0276c242fd0aa2c144b84240d3e40e8170db3dd458dab022f89c06a57e90073061946ca3e659696ce1066ef46613b550a5a9300f4085647c8e97f99f53f635a866ad0025c3dcb4edb9a9f51d15e454c57243df3c55478ff3b3e464ad31bcd693ac72845063c8701f7ec4bd528219f93d2db15d883d12a06c237722840bf630b88d82139e2a3765749baa91231d199f95c78a60927992170dab48575dc3fffaaf4e7d191dacd421cb34b84d264a5cf0182790fcf5c5f531252b6cd8d341a0373dd016db058e893d452fd3552d55e22569108e83cf3aafae1975736f3d1f938566d80f3d4089ce655aaa87ceabd5574259668d39a0bf71a238675c5b3884d57929c3e932f8f4e21e3a52aacdffc32740ef2ad0a332b0dbb7196cdbc4b807899ca1b52249451ac5f419199f0401dff4d31ae214820a352a5c9e0e42f1b83bd71c09cf6b05d7d19e28900cc656dc720f85437e9e429c83b8ba05824e5dca22d37f4e263fe0d44f603f61af56ce746e4f8fac80c9119608152ce74bb38580b893ffdc7b2bb45a6f455091fb401e9229fae4acc1f0ce8b910262f088e7d6320aa7e4334705feddb22f01069bcc20918020f6b67b6d59beddd2a4edcefba908afb616ef90b4bd9f211e4722e0623d09e5136fe33c570a8f127b41fd814cca4dc05ec643d84365dac3688bb5556c303604816fcc956ffd2813cf7f19088726cdf396f5d68abc7d9bf4b4556bcb3eae268bd4617cbdeb26c2eaa426836614706f112308174931ed7b26eb68678064a0167472c4bc653a21cc38bbc4ec295110c19441fce6b5578e0865da9d0abbdc8819b81d364e1a165cef69aa1adc20dc0dcbe32aab559c1da3dffe433028fc2847945ada39d7e37bf4d8ae61d55352235d239881fb257457e0968c018e7d72be80d874911d4075a0bfe94ed9dcba4d99ae1331a4d101c3b44cb778e075223e42682a84f577d4039dd82227f9d7f1aa71bb1982205a5c0c0ab904d8c3e2eed1d4b5e850f3b632ea35eb2dfd8fdfa92727123f5df8e3e11ac557243997d9713fe060ac4ab4f1c91e10698c514d1b3a56e8e7c6fd5c8d47bf0026125ddf2127f216832badd4a0f0fbb3af166e64cee37bff51ea712702ef9db844d6aacc6f939c68db58b5e16fc4aee193a7886f2a5a994634ea0b409ee05974be4be5dda5ecc74f8541ff46d3c9763028c0617b6def6dec9e5bfcf75c7610dab9cac20c7c012d5907b049babb090a6e81d5c9690c71d3a4e8cbadb98cf8d1e32701f23bd256b1ef8e3d5b976da74faee4c0b47698b56e5689cffa430b94b89989c37fd9366dc9375d69962fd6824d88b3c3e556d54eef2a0ca3f4c8e7846c940c7500a624d7264ee6612f08bb2b2fef2fbc41b6d8f68c151ed03809335fc0182840b454f97f310f2d87a01ebc76adf181aaf0957700270d02ac4876836cbcb4fa062ed4b863dcc8d1ae5d6788b30af2a1d92b75fdd2e3c421594826fe5071e3c6e782d0bd8d11e5280170c5af26f6fa3401514533fc671d41faec85801a54b9e97e974d0691aeafc52348744c12e98cba849959b640561be19a1d695406442fda8e2fde7ae8cacc67280e7ee104b50eab01cabe16fd4c5d6bcd3271c5852d6ccac6e6043c66cf42d00a5b38bb44101b6de6702827f89d98ec55a419e3ffb936f8aa8be5cda143363497557c77d76144af157a5b074a3e67278eb8449418fdd78eee622b2a52fe006d47b07583f9f7c04355cd28b23b609728f977c80b0ff1503dff4e6416f3fd206704f3463a899f2e8a439948102760083fa0521c842a8591e3fc275e1a04d4d959b0060052128a39c9852bfe7e38baa4e8c778d1e0683c78aeb3f3efbc1640be6739d999faeceff70f545bdfa3920542085c55aff88ad7e92eb74fa63980023b40df7ae77dbc47ed712a7d18790240c81e153d214b78cf799a9d76ec67c43eb8e2fcf6598995c76de15a9d97f87eb510a552d03bf51476a2164c51fa9a7532c92aea11415de6dc4a126b2a362cf9f16ef60ce60e31088c3bd2efe48ae94c9f04b697c9c7e193368f354ac7f6b326bae08d85e8d3bcb9c125071a6a096b5cf159997f930d53dabc49ac5b189835499128cfacd9ad0bb89bcd33ebf6f6b6519bf9c2cc5d0511b6ef72ac35bd0959a5ca0143a250f3efc87ddd3e975c2d190b2f9ba194679f14eb9c16d5fa1070dd3b39e85a7bfb1125c41d834e9b276dda74e972951cc7d73312c6b32597d582729de020aafdc134dd4b153612a8848a19b4a759c56d798f5d60d4528cc12b6b6ce1799623b0e9cc51a34e4c79633af718b77fb037ae54b14d20959d7e4f7109b8c63e2d6278b39aae8d57353b3518522537a7e6ce2e5ce929dd7970441c37d8eaec739fbbc187b948feb2e0769cfc34644cf8f5602b17750ddbdd49236b0daf9b241623c246dba15ab9add8408e4c39df5d7acecdacb73bbcc777cf0dbe0140d94bc2becc1dee18281003cc6ce48ae8f4f66e64d2159ca58ca429d206449e53c76466f29f62cf16d119821df45ea0ac2f8d3c40af67cb1c8ca86786b2fc0e28a5b9f5d679762195121e536f4cddc2d7fe5e11223c5125787a92a24cfc7162f94f25b2f5f82bee90f17eadbc30e1d33b55644e4792342cd6eaf0ab5596dbe2f52c7ea7daba68af3ddd7abba1ae34c8ba83b166c201960d90f4fef9bea865d2ccf6452f95aaa34b0ec1ab576d074a638d45f0581d4a96be6045a1ef135a656a74f9b1798239904476507766a7212a243316a76f2df89b9ac8b7df4a68f0232dac3b38238b2715ffdacad0bb028a42588357e3fae10fe5b1541579ee42df588b38de71333264b81e24e387e1ce18afddc00ecfd8720ee145a48c61130c224300c8d2f0361b19bc541eb4e8896f7278f666083ae589456c9efa3b55b964f53c43e91a1a5d5e73887dd6fc4af066e5b5f65effe7d94d4ef607351e64e1f0e42099f1f51c425b4ad0e2d85c0adbb21cb1752ba73395743e9dbeee99f68aaf601435997e4aaef20a29693d942a1ef0dfb709c685a4993b2b0335a52ec81af2855da49e0c6e639ce5b8801526fcffd800926c08029fc0fab8a0dc501e673c6f11d58b4e47c3eb79c4e4196881866674b66c8c5bc98fd21b2629db6334c25d55d716c532ce61c9f6bc7c87a2c70fe70bdeb49d8446ca02b28f5a381e6ce1c9aae3c2d8f994fc3613c83a5e9a6414705782dd3b5fa58c39f774649436713c4fdb938dfd03ddc541c00bdeb460a0c7d15afbfa61297f37d5b60cb13da92f778d177344e34151293cbea26ae4b589a8e549382359eeaad44cb1f817b8e2c659d1fb2be40179a417d923568b63f6d41c3459db592e99b29a2c825ed4cb395d7e81388dd2eb14b8f2afb9d2889655ab4b9b1fc4625be4c17403699039f475fd5326665dd6fa5dd438cd3cce8ee6b128a4add69d0563b8d8f4af0b0a0ec34294a2a9b47915cd21b04e2229fa1f3f0c72168370ddfeb1a7c817c7762598ecf02b3a4745bdfa02c2e278ea63df9766f0547ced7615cb321b54875ebab601235a285bbcef55ba634f7aab4e0b71dcc60d8281680b85b5d19871b064267308f1121df62c57e995967851db78fae3adf806ff65ab9b3e372420d7f18bd310278cc79610272edfedb68bfdd6ffb54b3db1ec06996a2c70408225bf59a455e6c33feb24664957b20be8641a6ee420eb9e2a1a5a6e3cb0eb9d9e7180cedd67740a081523367930d48b902a0624395328476178475475b78b78355cc25b4aec2cd49be14420eacdbabc5a38795fee1cc95d2529e167dc256cf6fb488d7139547487c58ebe08c2bae2e0dbcd7558c4b062b45c1251e30fe437eba1a0848634f62f1c2bd905e517ff05f9e13a9076c7d128030f42d638fc379f0f222f7804b2871a3b7d223ea3436859551e8b0f96087602d1991909cecbb60ac1466a0938f9b328f0e2944d9964ed93bfb592d081844f1fe997d82c45b7df9827895f8baa8183333cdcf9676deb7bd7dc7909d65e8cb8b5cc996d443cffb7190f1ede8f61889764ee03e3ccd9a3f56c509f11eb715f0108b468f258fc6a8a4ef27c845b11dcd3ba039787e52801148f8186afb2c10d9b1e79a5a19ff902b613492759507acd89fa7fae88f751b17cc3bebbb5a42fdb59d2fda5480e2443a3a708179995c50720685ee97af41ab010016dc0ed4e03172261b314461fdd376f526519ba8131bea6f65e797938ffed504a6e79a079adfb6e89cdf7d9d353277c5809b45bed1d1df725dac8b490c65ce7269f121d6b1e5bac67fa8adb84f21cda2832e66ba19bf7a012034e6d83046c6b86f59b8765e45aeaefb45645152cf23e041988e9e60204a49db59586f4b0406e0747cbbfa7aea09a100ff7654908f5f7979a0a7e1625a078eb04397cbfe68b070d79c336c0771e429c929c7108ed96f213e86915bcc97aeccb8bf55e630ee9b0272ad9c6ac8b3616c528cbffeb3162bc8ecbcfe9f1c351856a3a344b748da9234ee78021c7792926895be6de8324723229b7e40bf658461424731af01faead15d8b1e466e43ff7844e2fd9037d675e670c0129f4159c62c774e0c2800edac8135e1c28f9856db3912d63d3d42f57ad532024418016d74ae092103a6875d26b91d1ca257f830d2232eab60ee565896cdcf0842db46ffb417746cecae3a22180c9978527d8d5b5883f718b9ecfa54ccac05e599e1336dbe04efb2d5d35c4e0973a11aa9932f13f5cefe01ed1570025d3227a1f22052e5aeb5dc3232c8ced20e7a41cadd879aec81bbc014d9f669ae12f6ca0adac5ff7a4b2b4643f2c58b4975dc8f8acdbdcc655e3bc98137f4f1650a8294bc5a587beebc5c52617e90a106a43195398ee26fdcb9d88b5d3614e77c9a03f0c1b4db0c2389759a8591482be43dc840d01aec2fb269e5fc40ffb19fc4ffca68a0c4516c8972078324cb73a0884c5a8df3f8d1818181bc9404eaeb437047119b5f57c7b998c50ace56593321871fdf780e39af4b9baad9b0dec012f1c8c029b668f7c1ce6b5bfe738f31ab0b7c42cb10bf8ffe262309ba664cab887b34f44817ab13fcc81245ea753670c4f74d40448a75a5ebded131c9c6d2302f4c506d3428851b5ab9bdab8a6f9ba0bbb51090eba3f5f43873a64f1d210fe7a8e86342b2c4e0ec4747ece636ecf1ba11f8b2b9a7633aebb52a3f7fe45d33d1bd36defd6b72923561774f0505ca8aa455f8fdd4f5b0d29e654d8244800fe0fd4db1636b066ff23254c7b5b4768671eaef6d8d4858b1ea4fd2c8fd6a78cc6e642662a2ecad3c5d159b0652ee70d19ba583b658521944726c88155b92b5f5b96d6810875bafad0d509cc1bf2a1dc8512ab1eb36399e85df48e7332ec5a6b177e239e0f9de635f55f982b9c875fa36e89539aceeb817b7aa221b04d995e3126665a9cb0de387b316c2d39696cfd8c56b6abbd8a545f35e745a8405b0445335713b5f9423e0cb0056226c5b76b2e49c2af4ab800e54d14bacd84e9e56111ff110d834664a99bf62f85248bc02cf9015f6c3d1a2bb2e1cc0921333ab22561fe314943ba3d7e3b7ae1ed326a991500c33857c3cd1bd4aa0105a46c0104002664a3dae6a35b817dc5c073c6aefc9067a06f22971d54248af5ce9c36066a24df476577ad33704fc31422d9b311f472edae7b843e421c9c479fb6519183c918cf7443dce06e91899df8799c9a1c08d4da3cf98f69e43b34b031e516a69832b99e3bd5e53f779d83c1334ec66aec50e6fdf5e23d53091aa88fd646fd3a5c270f1b5fa61e18634b48cd0a85cee44c2292d8b912253adb590c32458cc2bf3d74e4a23b4d6ac0832a094ad443c7efc37d0ea9cad14574b3ae1810b5c0a8466cdf8629107bb4ec2cd7327900b513b02d872ba0daea3554d494c87d6978f77ace6c4892a87428a0c739c0a27d2c4a316ca49e43c05d2c2775b7d869f7ebb91463adea5fdb406a021bd2623e2aef462da757cdcaf2a625acc2e0c28bfd2f1cc02d93c298d9055df761250b179c1b751a79ae49da175beadb1ab1565d2e5596444b97ebc7d6a86e382816683d7e86b2e594f1a66f743687181898795a652015577526242902ae44f134857e71bf23a06338f4f9f7418c0c3d4fea6c6a3ee802b247ffbcc9cfcf572ba3a1edcfbfe30a4ae761a0ab938c797c12012756f492a5cf7e106803827f9e6135eecfcd4ff0796fbef3b8c44a0553b996a99de212ca48f26e529631ebb93f005cc688d4345b608313fd4056654874578a0092715e11f40f91890f0057cae5e4909d91b75d30afa3c00ea047779f487f1a0e4ab2017bee29fd657f5e3da75cfd8b785cb7dabb78ef2bf02a8a20ff6d938db47afc1e7ae7bc5729121bf1c51d9f99f7472553a45838a15027b8f22d22cb28182054aade6fad2417ae44c035163b16a63f5ac25bb99415125f388905e07f905164005d850816033b1efbef171153301ecd6e6eb787d01135584b91847c3700f7aa6750ff0e64bac66918a722b6b09f3f39727db722ce4d7099b56438eeba5449462d0e25f725c18a7c9b495c8f4f9b93270a352210bb626f165d556493856e0ab6e5e57e176bf8bd23f69ce2fce1cddc32efd0bcb85301e25e67e5c61470f7f117a5523479755f22b8f024d61caa49278087c71a94a4eb6658f242534146a87151e156e846a2dc51adb38c746bd565ba7a26a297c0a71f517853184623a8d4dbae18dcefae3731e23c8c55e1e12c74ca4f1251862775a6a65d442ce68640f04ec474e15bd2fa00ff6b7012a1f4b77f310df394819290831f1c36a5795179f4cbd74515fd24469a0949cecdff26cff51d77759b81c0d64531841dda7b17a44a914c8bb2b134efb1a21b7e2a75ba6df7a0337015d789e69ba976ac0b94408c7d1485b518261df84c744d7bf60f02174b570c739c21e892b21ada4a7bbec47f52c68c23e3a9323e54bce4a68e1340e2dea1f528cc4e8cdfb790242f927b267d816c1c1b4537878bb42c899511fa023a88a1392532dea7442990af1c92d29ad6a0930bc130d81f31eb98c911b40985c36f5688ee6a4beeb8ea7b366398f12195aac9bb9719defd9809699650c244e517ac851785852b05fe77f7d33b21cfeb4749f1cd0c37fb2f584dc16d06220f879dbbd4fce477ed57f4ad10035f86a47fcd91b5868cc320b9748a38d34635a1d90cafff3d34fc628207b2bc9e193184806abfb4b2458b87bb39b2629770f3c4ce776fc1d441db331f45eba49297a29d0c973dec21381b1017ac9e6d612c3a7d2f0fd076258fdfd6c8f3527257a557654f9aa6143ae6e7b19635ffd1e11a1a98c8577c02efcd7bf5ace9ec03d53329724d0aaedc84351ea9edd1615f6af9608d3b94171e900054e1ec9eb18fa9f0e7ce1c4a13bd59191ebde70229f7f0516c1474aa92c3452cd52137fbd0688db23c69cc9316713ed1cc5005e1c4f263bb2b34d34f7d72b18fdaf3b5208536cdda23b4bc2791ff7863b46ca9e4a74f01bb1fa8ebd2da5fab3ffd9bbbfa60d5150f0b1327147566835d8847baed978b5a74ca3231857610823bc85681946a41a16b981c9225552f83a20150576e085c8ba7a57fc29a363c70f78c68ad7368e1c57e87b1b8b1be7b28d7c114bd4fa8136365eb2b2b77c48f352e7a52e70249ce364433f046035284572963327f143626145a05876cc3e6356c87eb9ef5c82f87bd4d21fecf62a1af835da681a126d1f04e9fa19cd1358341c897d2ec078a052604f35383ef3a46862e9523fbdd8503989ba4a3c940678ab674d4d0a5ed4aacf7b89f715cdd4dab39bbc13911b5e1d96e3495a95ae0d0d8124b16181d325d054ba4e34baf483d95bd34a02cf4cd83dd0baa779385e7eb6f921db3d731c18b5269efd46aaea8587ce73f0d4986fc6a2e0e484936d43fb35477cb63bef232b44ae7dfd627ad9cdef27d5a615c01d6116641bc51d8be416af9ecc6c8664eba15babc578ea9823f42bbe150992d9d304a3a98214b994912d6b0a873b6365e268d0446601e09fff82fa7e8be7fa4fa6104cf9f1ef9234611bc9ddbc4813adbe0a6420683aec0e09a0b27bac0adb22fdd30a4925659ccce463a595c1fc5f20172628a6e33a2d8f9fd0be6471ca8a4ccd98e06fe34c74b6eb9ec453159abaf8d441105acde99219acb322167a3d7951db4b439fcb90298f01868ac58410aff835ac3ad6ae7c43a77a63fc80da374008944d84559a72edddcfe7f34a89a92e17cf7c5657e84110c664c52dec76d62c0508e039a31ae3f29647e443fcbbacf0c8862030d0d104c167b095064a0854f513cfa53e7dcb2749fe7ecea3d29b42e927727d2b6b819b52cd1a78f0cb1e86b7743a7c4aa8b25bd3019596269d50e52a18c609a7c494bc2d7fe8bdea6d5aa046db4da5e9a8d6086467e3f99b84f664ed4890e26880a726c382d0f0df9e46d6f6c12d056c6f865c92f3f08ffba15e65c21e88e2859ebe0d7f11ce2cbfe8a55a1a389b05acc178be2c189650ad25a9ffce53f65dcfbe4653e5561959aa1ca0b96879d92ac2183f4cfc499c8e6b0e6587d5a9193e6d4a16dc113b7c31d5977dc31a025ee15c1f5916060b9f612e30de7e268c28e7a03502ff5bdb97002b3f04871841e251564527494b3dce8e146df0b644f006304fd74959cecd02fed17c39e0bcff41f35ab45b9ebfb1065d662bbb96f42542d019e97074e573aef524a1d23d825c089c0baf9858a06040d8a5cc8383e8078efae75f2da4bb5ca996282ee1517f5764818e376bd8a1ec00d9d4e3ac3563a1b813f5d9524f5b1843645acac874898fe3566c41378f819cfd6284604367503363750a82201c5d588843fef83901ca17b8169ded832c6d077a2f9ff7588d219c939efa47261ff6208c1bd3dd089f9c04dff2ccb7f50f53cc60b5f953fc7fb39c921770a52f8bdbb34e436c3dc0a50d257dd5d9a617bfa7219792e93592c5c4141f04b69213b3da41577a97915f5d53b0541ac701b2dbe8320e4d8aef6593fccae1dc417c7f83d4422660f1b0481c8fa78844907c9d0f786be8c3a7c5c4a330b91bc69d05d12e69fc37fbca59fa422da3b2325fcea04143f27900ccadeb311912b57a281e199fada5d8c6ff62fa5700649cb0bbe0495e50e375755c417571c9f4770f102e615cba91cf61ef5f9b9d55652c78c68568d8bfa93456272327542db4af05f9b8c4b393ca071d1677292c43478f67e988d7cd050aa0086f235da90d7ff69efeeb3c9f984d6ad3824cc3b13d6df683a51a1014be8cfa3302e978982993d3cde2be143d850b6b73cd12bcd9ee297ab49448cda8e2b67f8c40515f44a831d20d93807067f563bc523d5f81399dd5dbba603a1d44a0abc1a54f5ad20a190a41a3963e2a7bf5f3d35ece9caff1896fb079d7cfd23f4cddf262a1029717fade81daa78395e8571508b842b4c9af1cbeaaf9b5623daf19ea58c0a0920597126c57ff9aed9fa4f03377d8c9d449c6d36f4b903e6a52cb396730758d7b6be279a2bd80a3bf80f3220a52d321e24f0508723dbb5c9d66d9859d5794d84a9d544b53b9f0bab9f2ab046186eb04018df2e60a6df45d55fefc92714d3aeeef5b85de229b1ac535be8e7329cd566ff67bd8d7cd733ffe318588498cdd1d73a1fed1523f72e6c8dcce0239ba6f87002e06acf9b2ec96966f0534cd2ed71945e4b4d6804d69c2177f732ef9a6413ea874cf559cd404f997af1a2b4a47caaf5df1a927cf9ca3c73c58b96016c9cc2827dd8c023600688c6facbef38ea68541964201068183966b7fa4966ad74e52c09f955dabc800599979a04dfafbc58a9b0a6945df33abb44683974f5d4150713387778f7baf50cf53141f710815dc2df271679ff58cb1d8c1023a50bec40def6bd32e5feaffa4d16051483c6983c90930b9d60905bf5ce382ad6fc3731ac513e3681be4181c9e5f02deb14cec0a59a6205295751f6a42146c56d6594713134e158ea3895716a6d194249e3842ecfba590eb111c271c56bab1eedc3f07f1c413df91c63086d0cffecc62fec696132dfab4ac312730f8dd8307d2d5264290db32a691e22ec2dfcf1a268d03cf9c370d1dc2e7881a902e78f80d1a3139f07ef98d5c845161b3b6f9c73930b8fce65e4ebafdecd284955070fa945bf128baa25a4fae51a5b265220a06f60306bfe0f6ded008333ad5f9612031712655b3beadbf8305f3b5fb04387fe95b9b3b9869e500d597186e53f671a8b0ed0bdfb35a82fb4ed434dda91d77106398e1ca9ac060c4b17838ad01aafacc457312404b18b997c9bb7803747f881b3b83e230755333a76befd5ac7e16a9ebc2172d9c7b331cf06932430d60e1ba0fc2567d059d49e7f83643481bbc67f7592a1600d42ee1c55795e34b069350decec7a9bf2dd76708584f56bd85345065692904cf0cf280f9c716b27c45ed8c44dee8baf57839622dc9d7de26cf214aa5b3889ac3e113bc3357ce27fb7f30f9d1bb50fb85f188dbe47ae9fd8536f98d227b31e39481a29e5af162933b831219a3603d5d48a085c1b197c1b6a2ba03cd8df8494b60a7967712942378f5f3408710e6c8ca3fd5ad91cda3402126931d534e8ec8662b24035cd5c3a47deba380e25e05c1b5c2bbe1826a976e24625c722d6aa7b7487679b34cf60b5acfe443b18c6a58644c1f7a01225c4c98de88d6be84b4af4c6f86cdbfffb9249219508478a23607fd5e917779de64fc3f75a1aeaf31f01cc256762664f01cd066c93c66e2e08bb59669f1212057a49f9e324d6763de7ab81d0d684d41a45a60e02c2d711be7c66f8d712c9c3f4080391db67361d4d474c09e4cfb59a1936a9a877e66534acc1db9c08634dd295693e039e97a6c32a5fa0c4f52cfe53c7309f726699d73c6c553d1ee20da07b5dc0403dc38a26e08936c56254375f606c01bcd482620da55549ebd8bef8aaed43a7e79164643f4730bebdcdcbbf609d01f6d14c885936eab541c5a4a8ada7089a3f294afbf67d00e4a55dd513eea1f52205f2564b22b226af77cd5b2a8f14bf3e9c7215c1064434ed3b3e686d1ec629265282ac2e927c3ed4ca3c6dd63b2220a42489a3347a010b4a72cc7a39a9c9da640d465a2db04521888be35787d69fb59ecf3b5fbf563acf755ac9fabad93d5cd7bb23e0004cf855a900d878160df672001c8305a378b15a6c9a7ecfc7035e0dd78a16b3750463f862497b750f9bb8ed0d6e31f95866b8ce6435af30b998568da72a1145d2573d308cc47dccb743eb744c9a199e8814c0ffc1a7aed932aec96ea8007cf887fd4248bf69ba9991eb8f71f24decfd6a062be8028a6999b0d40789de01e2c39074e4ef052d3de99da76b0f94bcb81509a4a34fb4e9df435f892916930645dba35e8ca3022fa36a0c54da782c72b9ded1b31712abe62a2228ed8d395e71bf23b26e156df960d1d092f16cdcb54f9eca7cffb564a995fe045c671b4f235b1b87f1677b57556170184ec0641b862e8278bd2f6c978334fe7a88b9f3e8c19c8f60d9c1e6de61e1532d3ad0a4df386efb52911fdd32abd2dc946e4e523a4d1f9864614ea569455d3583b43cbd449e7c71b36e906fbf0fb78c42f392b0bcd41d615b598d966e277188fba43049064192e6b899fa383ae8d83cf3e9c9e387bac75b6cc261dc4e30d876d91b4eaed7e60dc5237527321d69518890ba8e7a32515a33acf390088171ccc14b001fd778df453978e0ecd12850050a6d3581df76f7adc0eb9101f892dd59b66ede0eb45b8301946bf97b175789466e4030fa92f132669a059aee20530f4ea98195e15d37fcdadb6ccd3c03202758b8c2b677f7e3ca444652d18c2fa2a4e4fbd269c79d7dc927fd83967a1ea18feecdeffce20d6342f45db525b4acbc752fb96190e3c7a8c178084dac1df90ae0b985871197ddc9e5cf0d1c465aac088b0b64d8b03c8239b92f749b52a359fa6a4217fc664cf6cbd020a52fa98b2f2af627b97c24b73ced25176defdb8ed4e47ab5d2f1c86853a23234efd0e9f68ac3612d95a73bc154e387b2710b8bf36542bf15001d4630ff0a7c1ba3177de17bc8c138ff067f8013832878e776715b9790e8e6819edccb2816001e311118408b813ca8c0f92785afee9f74e8a451579c65eff44baefe1c09189fce78e3e8d6b6fdd2de18d3c0553bbcd543842d9fbc6a7803b2b2d50b0eda8a8281cbd62a008ea577bcc6490029e81ab3a9eed69cbfd700687523db7fbf840b2c41f8452e99a5bfd70b610d76b07375518a8264026f9d1b48edaf7bc2de78095c19f4f2b9e2e35c90367ecb9605d7735fe62c220e6f685ca1f9e71d845cc47aaa4efd613117fbd124364cb7a13e3483d455142e2fc3b4f59bd09a500deaf9b945978cb4eefafef2adf36a52a43f690b87de1438df485779b4e8ec636974261bb7bf3a56c3f3b84a79ac2e76665f58751581df8fd7dfca3a7dec6380fe14e068ba1cbe4cd6fee1441fdc8328ceaf22603e0e90b79141236117e5e5abfaf601c5597468f5e36c9c31ac1169024c250c612bb35e4667c8c2da12ed2f9381b1c26db8ca171caf12fba7b9946b4cab98e919bf01781df594220adf3252d5be0435b7d426967bfed25cc32789cd97c63d387d0ef3d891deebb9028f5de14b994fd94004bbe27030a50b7f504e00cb61b34e70f976ac4d0ed2df772c1b495e65bbd97e993be010a0a68148efa1d7c238cac0d3139b81554da5503be5889ee3ea21c0c2f4208498f89f12ca9ba82808bef77c4a8cb34f6b7840b2f5dd12bfecf878c49e0fee1d8e02192d0ced39c578447955a2e431f6c2b53332c8f0f7deec71d568e9d9ad92975e1a8c263cd33dcfce55d922cf4ad71034532a88ecd5116d53cd65ccbdabb1af0ac74dcb4cf7f4e49077e27daf7e864d6082a856ddcc50844b832ec30db348babf9bb3d937db025547b0d3dcf46b0d5af48f7c946e267b4a0a58083d5bf3184c012d5d9243aa1516efb00ca5128fde618ad6db0c732ad28c78faa202315a825d67bc6ff95a3874b8051e2a48c8d7cb3b54bce2a04705c8d36b45cb870f38f64876ffd718ffe80d9b2d0c8197acc023aa3460e56fd14c11a04bd8bf64de312d693ab7445e8abf137eaf5308608f1f6c8484de1afa9252c76f3fd00ee0d583115444edc6e9df0500d43cc35c541ecf6f16a6925a74b596215f52a841586ee6fe11f46e34d7f399f14bbe41a855262646bc317c48cca42388f997be123dab1d33a2899d032a07d0b42eb6e9dc6a6901f2ce1b061957977fd87d8195515bae24807cad9d5e6c64b52a1ac25fa98fa10cc701fbe0f0f50ba061ccd46ca0c0358a4811195dc292a9d434b2b5b3098ef7a9fbe121c6ff96702ced5d2da61a0e55374666a13723ce5bbd58033b0607053f9cf29ee39233f95ff8189996bb385ad8c6bd2121827cf51b312e0ff602a9868b989c7abcc4eee0492a2458e737a4bfbd924a39f862dd027484afef35d33ec55ddf0fc2eb73f562edd6d61ad9be58780fbc9e72ed330235da8dcffcff8f0831157cbfc89d814f1930224509e431b4533576fd080c44fc577e6281e24b18a19a646a1cab716e0b187bb67a7395261c6c5fd50897f32e044736722c2e065b4366466fac85b861ce4d4bf03b05266716c34200ae559f34152a1be47f85c878284978b1befa97249ea99e8c8fa4a1318a4614cfbf7ee68ea38020a0a4ab6def7d2fa1182a8abe8690a6c2634a7f90d99a399daba212c695fa43c5d9cc7b77bfed82425d8b1e8817dfe791efc15a2b306c9fd4fcef20c0c691189815cb55116f32f180ecdf8811b4915ea82fe4bdd14b1b2838d2fa0f2d7f2271b01478007b247a50b81cce37b6666dd7da7a4ac95cf20d685eab4dbdb80b34445de16ac288d97ce35241c8691aab6398e2743e9534f8a7a104fb88f2c34a0de8b7ff76e6c1d9000981ec4d8e5dbc6f90050e20c960879e1aeeb7a737e5a549025dc2160db39b2b68f654f6cd1a4c128eb55ade49adcbeeb733e28bc278ae0011b52cadad34c175c58e16119d2c54483c2c95fbe3a20c864892cf4723acc35e2be5fd358fd38cd3c8111a9956ed62c7a9cc1bd08c6b473b300d10b174db052b6258807b295cbc2af802a31c55cc20b1cd21517eaf6cace35b9000e5181628522192cf0ac3f9f3bcbb0d1371701e9e5a5df4331d952d312951843c3bb5ea3bff7fde960e3c36971f51ac9eca188755d9217e6b0a039d1f530cfb6a851cfe6c3212c8dd841cdc790d38bc6656fadb65363359de6200005cc53e9300eb0a607971b778a44a337968b90058452e42f60b95e36d7041585b8cbf46b4f3ab660db6701453387456dabc441dfe28c3d2a9e08b4c338927011f882e0207fc7840be4b04ae75adc777cc52060c0921cf30dcdba0995c0324c3f2c69907c6d01ef102f9d9ce49d762233def1fe5f022b9e1271c25036dfcbb189cd728b61b29824c1e53d7ed4f4b30b7ad19c7788148066e4883854cdee94594e830b8ccde5c9da105bbd38e056d070561483fcabc420fcbac31f32552d0b804f2314e964926e5c3c776f5b53290dc78d2b6dddcb8cd986481f5e9390e287f5b7d379de6b721109eab4cd822aca533876538369f325ec2b2ca36accdc69a3803eb3b47bb54e3b7a94ecd7b289e4a4e1d6a393436fe164068e134b3e1fb785d4b781433a73661b3e9e14629c738c6059c0ca337b4182d208b10ba28c9dbf79aa3bed84fa0703d0b0c9b074b598590ad533b11762e3ae886ad1506ef5a2e50c18e906081718e5f24ec0ce17b20388b56a10026726de0f904288ab3dbe4837e26013e9a03368f90767bf95c2624a011aae52aae4d06e08173e791a95c4b4ae0cba5fc33ec081e5fb2056310b49e6b74535e8cf9f8fa36b1eb47a806eb06d16a589246ed7214ab5e8d9140513a27f95890dabae551fb8ccdf1500e227c09c6fab61dbb51325eec3e26bc903a02b009f03fe6200814983521485918d8aea551ab1cc2123dc120d5607dbb783e7c4eaeb0987a32a39c5ba9c7626e637f1964f0b2faf490b0b33020573bf16197ae15ab6df148e0910d8010a57c1297087ed5ff8c21c7d999ae4152653051f1604912953b0143d66b8c4d24bdb7279292a11744075e9b39256b71cf4c6c148caf70f1f2a3c6eb1b7bbe340d2222dbe3e5d0e875cf41db907e1eb3d47e9b92ef8535f5873693046365d7a56c148823bd79835070ffccf2e8e4c5ba58562469275b2850b0133cdf614d501775c5afb9e0692bc16bca5cf7cb6e5686d88a636a10c3aaeb76899cc7d569dadff4161b2b44b205d968b3f5438bdfbc3e8877976d1eee672dac199d339cb227768e6c34fb0740e4e7ddd9052e5241bc9075066e5355ce524721e0d2e77aa5a2f64a839db2e9fd947bd289d6adb1631bc9581053fefccc165d47ebb965bfe2838768134315e99e46f0a80ff7851907832de26cb544e1b338df6d831f9bb5a6ca9c86d264ac57d338fa18063b92d91aecbdc537b02593a0053e770188c1175dadf67a3e9721c881bc60ca4b80868d409e4674e8fdf56495174346e2f7fb91c850981e0516b41ced3f40185728d03b35e591e3adad4173f653822946d34c292d20f5e692ff4bdc166cb577970270b60ccfb19bec7a8e682f46dc8d2b0fdb3991f6b532c95cf5d68f860012fc16d5e1644150e058eedf3bff85b2df98cbe7adb360c82f81a3b5cf33aa272946aa1e9f529bbae53d385791baab3e3a507b783fd77bea7bda68d9828e47daa2c70c0d3acf9a6fe882b76a197a69f3036994e37628509e2a3a435780b034fc052d6e8aed99599e05e8ca8a3d59e7edc38ee878c1f5f6caa2a0d2b049f704770062db304b75e7385abf8f5269d710c928d559ad4a559e2b4a1b056f1076c28f6614cdb4f577daa691cf1256f027d2a7fc21ce90fbc6cf33ab02c644a808b1b965107c7c13d8d8f77adc4faa9740dc95eb8dada0c66c067a9921bba997bd6c9301818a4e2672dbec8e00e6109eb4620bf396aa8061cd1f8520064a66f20549f591318ba8549811c4cdd1c7fe7b87a6ef5fd5d5c19165d4d924afffb189fd66fa7803ed1d4b15b808b42452a1e5ce275f654c0821cd4d3a446c2f8cfd9e64ca90226c1472570a11541cbe380d7894d4d94a2e469c0d4c99cbd8d1029a0fb62e2ace66d8cb17b2278a88ea8a544eaa94e3236050366bcaef5cd49c778b2e6f3b58d4c02d97dcef41a3f8e294b48ea4cdea9319b94a5b87116f1a9432347c5273bb45a4335c392f9f037aa89b50cbcddc9d607b1397c10e336d09e22c424afd38f6daf69f1b3699228480547fc63719410c27859d07d933491d4146dd2640aa981535a09bfd3e245dceb799bd7a62b5908054f6684b1c24e0e05f1e0e31b0737ddbbd4e36526b3c88de092980730ae114b7ba5492a6ffef2169b9cd6a5890d3a9551c10ba5d4fdf7aee184097a09c63f4dd62370c7393ac7bd722b85418c111b4284c3879380e6a660d23943810f534a0e5eb62785918d9fb317ed1536178a9e4d49ed5d2ac919a84a7b157de23abfe437b44440f3098389434317a5134320c2e7a487d8013c2ca3b811fd09bc7efd9580bdf71744499850e93ad2564a1e691fd7f2e5ddab3c766478fd6a423d3d2ebc45535e14de1fe6fe5d3d56fe589df83a8633e326b08728cbef93a03f30f7e82277f84eeed8ca15693ba42ab438cdba1a508f21b1abfa12d15c9c7385e0677358693909b7f430f988c179531a6e7e7e677bdad1fea8035529c8c638de7cf7f0a428c6a3e986a657a0f974691f36f6572327de134cadd2cda7c86e56f52890573dfef2077ff54af573a95abef6e7c52e4a9d735e7be7c0d418cee0d760c900026dbd44fa891d2e85dc69578c290266f63c68313b584f4751d0f7c4cbaf0b9a0d254f1c36b6f0129dbb2ac1003f4d4f4f80b4740f936e176d5affb129e9217017b13afc5f1befce48d3d83f66628556eab93af9d2e1317e904441d03b8b746e5a1c2dfb8f4e89cac369394cce8e1cf2631c76ea11561dd1d3be04af5da49f418e53d262bc097bc7c8919eeb6e0d475100f593ddcb2cb2d99c7dba58ec863f99e9b6e31e19ef2b4aa0716149f0c0a295ba739ff0124d1e702bed6bdf94aa3632e1da1730ec8213693218523ada1693a49bfeffa7608368efcfe34280226297f64c78ebf606d3e005647905c60be625ff2d880647aca6130169847fb3678b747246dd404417d26332c94f2b1aec3236ff1fb2566cd47c12317d5edbbe13b73d34148678dd0ceb711037d398cb9abe0c3805f67503c9cc3e8e6e5d731a74bc3397b78237d6f955dc81a192b826b93a1bbd4589fd96128edbc3aa19f0f2279192e2d0893fc1663649fe5a4c282328cbc86ebb2fe03ed2a481894292782eafc83eb6011b101e0a9cd76b01cee931b0e9efa9cf58c7c8f2c0906527df1e7fc4c970937d5e43d4db6333e8ff3427f10df4453bb170caa39c26b4b1acbc92f07976138a5e741bf7e138fba4750e521acee639e4c78540a93589d8d53f2d98d8f0ff88e5874d1c3e52dac9c09eadc12378c857d735ba769e664f5597dfc85c3b8b4810e9851491ad3c8684d5b699846c51a92caeba61fa2a70dce284b0bf6cb0785f74b1cf12ddfb4464e6613073e8841b7142042850b8605a2f3e4ef3a4454889f99ce6e754d245fdec4041742fa34ff3ba1012e90ee5809b70f97caa977ed077911d3112ab6d56b84eec701adf074e1b6576d852bea25b6a817eb6c3ad3863d15cf72963470df5f544a5534febd462f443d714e8d30e9b47485a391a4702d12191631644042220c232af875e059c7da6c14b0d073b01562e763b83f2441eb05405e3159899494a6ba6992b4de0b563a8446cfdf4eabe905b992ed772f0c3af087cc4b2a850a35fc027972fd95647a7cd6c5198e351cd1fed8c10bb7f03e0af98804a109f40bdeaa86604a9114c7bc6a1ec8f079caa6d3296f3329aab19a84e6af1fdc2d2fd967801c5b41a78eeb45ed75c5137a563e8039c832db8c1c19b465d1ef06fba294b5c3ea290268db63feeab02e85339627b9f250b469584e4ffaafd7bb5b249b4f076e0f99ed52c8578d37f0449abf1afdb2bc663cc177e8c9ab1b7a1adf522a8602093d577915cabdf6edd05050497a3637f7042da7a9aeef44cbe1566950defcd256cf9b84995abe7a161eb32c2db9e033d33729e490ba86703afaeb38e3ed14c0de7de2b87403aac8c583448a36e356cd0e028ce0f23ee28cf935d03e58e150536df36c7eea4d0a7191cd500e9aa4c3e7d21aa01573131414629ace92f153b5ce6ea4dd7bd83f949a755992799c054104c864501272ccdfd636ecb6170f2109c59fa523fcced8485d55f392c20e8c3af8b500c86a78a82cd6c0a800c9bd582032dbc23f54ed9ef5916cac3f5778bb8c57d523f3164188a78aa78ff038414d91e7b69b8107910915733290c99b6fcef561b3466dc748dd0f3d1e9417d49675db62d190948c5d578a3f980d2c1f868d94c1a52346aa23b976dbf0e79717b203b3090b4699f6a76eb12db20adc0fd498058aff74e4f35a81f28457cb48e59d950a750f04278b2db19327b19294431eddc3bbed3bff235705b10b3948811f07d03badee543e789e9516a41d773356915cc6fdf348e355f0561a1a8222cd00cd623ba6868607f6473dcbc7c0c1a94dc58829edba05728a5aaf5ceb2c3f11dd4df98a402dfd54864ce0ccb835be3472140feb06c600688d4d213ebdea2358baa22b74a280a19a5782ea72241fbe5cf3d2338809920a48bb3896494ec1c6b5f9eb071454609e6936a5887bcc5e2c90830a70611deb889fc0e4e84b78e649de3b066112480823c8be1462713283f4208fe61ffc4f99a2ade0a0d96a2866e8b2138fb4f086c0a01c555a97f7c69cbae6e6aeb499dbaf0b7c09328d47ae12973737c801e1e3538159492cf83344e0f1aa2179de3c3d73529744f1a4a91c1a0230b2b01c2b692aa4272b96be075eb71fec81188ea919ed08779608b340e5527599da483fcbaf13b466cb2e4b92ae1583fb02b3c11eb95e18ae421f5708182865a9b01c49e922aa7183bb0b2a9950b76dc170a8388f79130414195eafbe0fc698fd8221c9329fc6dcf2f529f19eeb0bbb87ac371a07f99fa7700ead7d8589b67c51aa10632ec1d0106e1117568222899d31deb11ef6c32fdc74cea2cdf546756ac4f3780c2c7ba4eead42c4fa80612c42cf8acdc4ffcf2f15c5970635feea7c7d7b5638ff094d2e7153f2edb5a4991cd8164dd18a4cc60d097709e885fae7b7c511c30749d5abd882f9f97e7e237323e1761427ab5d28d7512fd05ede83a7182269fe2879784b1c3080bc85b03764098002beac529c98b4abba9dbc8ec98b20821a6774f2ba27b9453e85ca87b813dc2ebdc4aacc74a3bddcad623a85cfd097494782a3b2e90c2523f230a0cba5c58119f80a2f06c96496d42ea6eb6545cabed8ef78d9c232aedb29ca05c7b132112b73e16bd5157bf7d3be1b618a33279c7a6c9ab8ee4e3be08c9e74caf724cf2092eadc3f78e893fd015b70e54814f57bd3cd738420dc0a7db3ae4174c703d131e2300cd68bb9910fe56040fc3ec8398583c66b475d9f13887c1fe3aed4f44c3837b7b6e6ef1ed4d36e7ec26b0a5d977140aaff19ac6e869f8e9965b0b029046f29876918843fd820bab2e7fad7640e1d17fb2db0fbc9e66b830fc5471a4e270dd0b9191a4fc60800a0a49d0d7914d5df1890570c0feca19e47d65b5e9ea1e2d05185d215c15f0071cf933527cac574c6cf5b89050d6d8949b511a94442bffff0ac2fdda29cdf63dbfed58a17df72555cacd5b67197e7807cca4782bf16b925d9761e198cbb3d1a5f37241cdb2414bf379210529a0b0a4e37babdb60413c1e57a490da8f1cf676b950b4d6389f9455b1acbc12fdc1b0766f7936c47288b3a6c80e5b2be8a9a3e1471fbe8f2c137b51c29c381c70b3a82e7aba488851baebac8568b5e8e309acddbd4c33b83f97525929dc1f31095e024e98003f55b422ac06da9f4d55758cad35272b36d5a3fd6fa251ce114874147194cad7a1fb9a41ce45b35f8a16918fe07d2e67d651cc5ef538f08f571b892f16442544f36c710ee19dff5f6c9f2dce3b1303fa85e49d4786a040c6a589d9dca1db3e0ea7c0d7a075697aacbd551d65fe9adb87b26e8df37695baf4339f5db083ed420b929dfc5d2c6a7182263995e5da5e9e9028b46f82afc478a17dab2abcc2efae1d343877abc63ab396d2487a2017e7c25bdd936f15cbc97447af8468fc6b7527f2a63de97c151f0ecc6db5712765303180f9355b7a5c43ebba1f9d3f8812f28a80ed8c7af2636b025ccbb63f78044aa816c6852621f13ba8dcd23cee6ce9a44a8fd7c05be74a3cc5980ab799d13ea3ddb47c253660d97020801ad84e13252559db710141cf34928567ff66e0e5d49274447552fde79c7b06b0ee4ec81a9b8fcd3ac3c1577b1ceb1fe97678be314983fd723c400aea84f5e4ead92dd4f29787dcd3533d9ab98c3d66f04f36b40200a20e6983c35bb23a77eee6e04c098e98a14b84a285e2217d9696d7300f3aaffd196468116a11a5cd2af99040d9adf709c97db0fad08b99666f38a92cf0a2e7e11a36a1340810afff60a4cb8b360be372c2f6b7725f864e22371183783ea4d7193eb92c9a72ed64da7923ddbdc99d4211fcf877d324555c0205d46e6b9490b1356fc7231d1f0344f1108c79c52ff287b9db41d8f23e662ebf2ac4ca312d097a1150eeb4d641a40469f3f7ca131d43a254233aa5d5d256d8ff871f191e4ec55ac74fa8ba26205a25c3af616e138c788435959382f9d184f731d2c975512e9e9e251686bb9a1c6384f8870fd2c6234440a88ac846e85c3d8fafa8fc54c37c7acca8d25d7e878c9ddd5607170c9243ab5f27a7c3d4d035b27ba5a66c9e09dc6e3931bc5ae16f02c27ec415c586cf554bde71399c8b8dc7f2b8fee1b257b14fe156a35c2865e8387ab55bb4d679cc7558b67fbd259d2225dff0042034679dd74d8561e8777cc38ff0fafd45c05ea35444468a60d3f352ef2c53bfd7899c2aad729977a972c4e4bb2dc6ad57bc6e260e6c898ffb0d7abd6059d4e904146e6e73000a4e91301c0ce9ab7fc24a7236ceac7112a339da2df1352fd299e72fba2a46c0ae76fc6af7d446ea3c06dd4174e9289d80db4fb0b79fe5ab254c18cf232f0ca1f6aefb110b1bd089cfe9c25ce2c99f0c9ac5dc0cbceaa99c2dfcca80f60a7c464e8599d377aeeb7345efdf40d31407fea6a2f50419e3fc792da40cdffeef3cc8692ab01cacbee165ffed4cf233333ba94df43da81c01cf7089d67bc2963674b1b012b9dfbf4254a272fa9469ed69a1478a190fd7cc082064e3e0870cd7a5983a8fd677fc70e9abd9ec25352e8e266f56c1e3b118d8eb49834092063f17320d3d51cd3166d9e0206c52e9d3b1517db49ba67a6f946dd8cf2d30b5be000f43b3f9b11e983c1b9fd18e4fc8ec8befe1a402bf512f37da20ccd85b74f0757f3589148f3981a13a7800c16bad0cdb839ca96e3e20d7a81a6527d71add535595f13f120ee8712fb4d0ec58c58e68b3bcaa6f8f03ae2c2fe1c4e0e758498d884670ad7823e995425e544cac4dd495dd7543623e03596315664ee83a29023b4d8a023b95eb6558bbe0bfc06b8bf46978adc1fe046a4486461c9fa70b74e632e4a59bf42de3b7f56af8e9322f7aa462bca93887b78d86bd46a0babd8ed4b8801e647e1bfb2d129a817d57f6a2ce0ce960dfd721cef1e725b02da17d0d7a9c750501191a3fa2991fbcdc91bdcf0fc8c912820be7820d8fb60f2b9f5dee464b1c84e1204b603f505c564913bc723c4e09e311da5b2e5f99a31a2412e53658eaac796b1a2fd8499c454ebcaffa1de1b79963bfcb141f7da53a3c5402279a486d84d27668d591aa0bec1d42fac9463b14da872e57abd4845c1f1df08f5a8f1dba141f1c6e00073a3aa3dcd2383eb0d82efac5e21b6cc7d3da175cb6e1b96880775fdc2e7e44ea33ad535836462a2f7ea57be2f0befec8e381783136339f475a83d9a07532f5128b70746e1bc4106cfa60884976093f071df3ccdd79794ec61612386b5997eb236454bef75be15712a3b3296adeed62c136fde525c0ce6b90db11a7fc9e6fc1ab6f23ee49b2d3cb39fa58df38e730e4b93fe5ddebee22863d50a6a3f5695a44de35fe10257a096cff01ca6d6a06c65e97c26361b520d7fe37d3c77caa4d2820864f12182221e055727708eaedc97f743a48f7295786a46f366b7ce1b793ff350f91859f5406962e5bc38392be8ec16e861fe41b907c74830f6fac5cb5c827fc6bf3608efa370c3245a0130d8ee1d3e3bc147b4a605ca278f3878cafc7627079c4026c9b5ef340ab4f4994a78d09ef66d4b0af463bff21c6b4eed5c6dd93bc8a72ee6697410f01fb96365994bcc00062361f5a7fba090e6bb2a02838abfe3a3c5a67b326ef38103441f8b9f7e53ae5275b7304876f220a3a7c2cb3e7cd51b82e2a4f5500847e3866bd144521d458ec6b69650f0971942e42191d61ab9b15564b7c4617687148556463ab2456ca353a2f65a19ff995be355b53eb056761debd48cf257eb3a86ab18270d370298039b75d624fb852e659d50a6b7fb9634d90e1095286bec31609126631d0b84833d74aac85a5637d7e1bee4d8ae9486bbe78676227d760384922abd3fb9b0b95d8fedeea082fad833c2fe85803b8e6850f3e6588e1f918f3d8ee6eaa064075fd9b34947ce71676796a8c132eabc83752e58d25994559f474a501aefdddb47a4aa72afff6d4fe8cc84dc7ee7752d73bd09883eb6a07e3b5d926f9a57f97f5e1ed891d35ec4cb4f43a4b2b23205451cba3874bcbc82978243e52489962a63104da6a14d85cf3f75584e75e74e75457d6409437bc8bc64f768d87393d606691f3f269385b0b2e3a50bd56fb8fc1743d29ec8f548e0ef9b2638112162e716e18a6e6278e7f22549d3620477af0903972bab48ede3bdb481301e9d2bb9ee930b3e57bd47daa6e24adbc0bf15147c857caeeaad7f4b32df9dc807d3cb371fa41f9e0fce575e63292483f0cbb48f2e6f23df41da76520a3e6a10fa689a9618062216c2b5f52647226efa345d37b5635652311b0c9bf340cdeb92a96d97a053dfa38791d641220775bdd8421a7bce53eec8ea9377cc436a39ca51ad5d719ffd74b3551b35152ee769713df8ce17530962dcf98132036519361d2b6aeef2f27c084a7ad49f0951108e6dd3e461d4f5e29553af4d063c0dda54589bba671a45cfb1d21eb5401b79ad9bada0cf355ba519a3655643399900f0e5fcb31f0e965ad7a1f72d8ea9aba50047f019332287f33f7958f1b45e274cebe97b3e1e89379b356f582d28855d281774bf21e7d74f71c2204b673fca924d38d2c6f92a96bc53f69e98caf392b24a27175b32431894c604427ab4ce37505e03bbc249e3ae0b62411816a956deaddfe6b2e1054b3d8d10b78b4879bf6fcb2704a80bee22e47a6d6beeb7a58bc8cf1d265120dd984311a2fd965a9611f6f5541f89d4d0dbd9a9e86f867fde7879cf801302beab20f447427126f4420ef7310bfb6c82d045b544834fce602bb3b1a0032aa6a904f346bdd110b72a9e451f448cc91dc9dc5ae0733f25d5b1065270bb4f401bc321ae38dad78b6d260e524ef6d868e3cac20fef058ec810bd5324947225ffc6aa648479cc8c4f8c0505d36c65e3c997237c5924dbbb1ffe64fb316810d05813141f4ba6950ee614254110a938f5bb0e963a34ead652b2431b45da1631fa77b14dccbcfab442d0af96665746ad4b640713fae1b4c1cf290e67183545f3e15aa41956d7135054b04be3c0a71e1ebad6dcd0732d6c1118eb0c719334d93890e6d2538fddca93fbe938da85ab1c50028bacb9ef23783be162c9714643c1e60950920a507166c7ca285913717d40763431a9c8c7eeae0b6773820b1a7618ad42dd1a011aec789a73cb84b7c6aebc521a5c5569fa191b24b04303fc8ec4b91add984916616a8e148819965c0ba9454b44cc924b291b2b21b322d7e9d9d06ae4d6bb6e7719382ecde8a86c0efd8ca1c3baeec80d55c981857a7d18ed6607f2c1c2f19e358a07fa71784c76dccf6ac13ba01beeb6644fd9153a808c8d13ffc562d7780eaecc506a46b4ea777f9a3d15f363d14b834912051ca3b1043553c27d2bbdd901a947623a311a33a1ac7c70fafd395a921fe0c1762a720d8d0db710594050512114e51e5d7ea21c98049e50cff1eda479ad46eb8bb9fd1ed414b08b5f96c7a1ad95d02011a100b0acac6cdba7e36a9774747a812bcf1b988590ed46446530579d39148eebdd2a500794e1c5e74a91c7ad0b54587b7caa41fa7d7a021dd6663acd62ce11f6e26e44053e0b8b82b05b7860a4b04677e864a349e60d77ce7fcd657b116a7403be236a182271c47ce168a9e3563ef201189e8575b06756a4b7af9b9bbc1238b468d9b8341026e0e3f5afe8f6b34bdef815f595b9a3afdb0f21e48f2fc0a363c6ee8fd43594d22ffefabe43b7fbd28d997b0d364a56a13b11d456f8f460e69e94ee725092bab8caf0d8efd8d576b7a81b0d1f4e5df5820f43f3e29da675965b154fce31abf32c49723b63e0c8104d4c7d2a943cddb62c682a4262731a759808756b295ce97e802f3971775ceb4718338d543e072b73457f596971a486cad91a50bd58fc10506481d7fcc29557803e29f814a2a1ed1cce7e9622e3b21047690fb69f9da8becf5d5b3a6422cc41980983dac03cd13f5ad40938bdde37fa035d810bd2187ba9c68bd56a48c105950f8b91c203cdec9aa4513dd68d16704bd8e403317f838cf951f40923bb110ecd350339d46cdb5bda5d7de02ce3093925a0687a84a1d909bf0ea61a7fc33d376973db5f3855d9769cdb5bbc221a2d32fbd7c65ad014787fce1196c88d8b9d570d496ac109931a8c9378a24af0e6d316d9b661e3f7470cf3019716138e3f751d0d7853e59398cc1db1a0324ea7777562926218bd8e0db97756fedc5531a9a1c4b08c528e82ff7596e0a2c9ee89e4d71eb6452421617499b2e42c3fda6a05c78eadc76d756f1fcf56e3c00bea6137ab50cc98dbf222704e32956d3d09f98b67be0d01d2bb62025e51a0560da519e9a76320793a36c1907921a1ebb40ec4c3c95f45f3822f4be28a8422ef70cf1e711cbb14de0e8e338258cadeba061581bed9e67734e2b7fbd87672d25a046aadad186f3c6f80ee33e2b69c7a7452711f47347e7ddb769dfc5f11dea9a10c673834abd31112954e5814b92fa090e4942f1cae0fd9a78ce05d748937a7b27692c24f3c7e79d40b61e364e8ec2b8a3c06ed1d2b863f25e8f0740b46322af76247b6bd31337d7632b9e2971d4ebf9a3326f86886d87dbcc7bf545c9c71d95d4cf62e516511f2213b7a77eacebeb1a69ce642321769a15bf8bd8c95223be738ebd462d0983b58ca687ee1e610a16321ae7550cd68cf4faee4f0a4f8f89e0087df9cab0b821e5b428579a2c1845560e8a5f201e49041937b6779efa3795f6312ac6b9ae686b6324899404194cd974c16b90768451fb65323d39c7efde5ca9a000baed1e9148298e7c0186b4424515a4798dece69a76c4d86b93f52aa0ef17cc7a32fb42615626ce06604c1b95138a28e125d9cefe8a65d0b82b4e52892029eec3f5e9eb9e8030278ddad126799b329d430c8fd338856ce0afc0e3e5033df174c921ee60f39f78a84547811f50304224fd53657ff1e6353da9edeb4b67ff299e14e7de5a6dde8ba33d0e51abeed435defdc8f759052c1b48cb91e4a8165661da506bfe0ac8479142529d50107d81e2d5b54a20f6fa00b49b67ecb0d5c5f53f69e6ecbcf95c1c06e2bf380d06c9653fa0e4cbff55e4f7556f90cdc1d8889271da556be1c18dee73aa7cf3b86feb78c626551d7b4441cae174f5fb841ff04f9cef12361af37c54fce44fed8db69a5b7563d3e4261a285d4f820eefacef46bdc0950a29c28424d151a1a7322788342d3ed6659338037ef690d4669744c3b37a07517f6b76866ec78a164dc150a109b1243a5e6dd3c2d9c1f8a65ee58c1b15e1bed59e74a03e7b1af4ac5faed311ce198739a48a43bbbbad1c19fd2fe381801672c64c6a01a1010e6e48bc696a4379da0e77a17ee594f88604a5c6acf45e4bb308a0311d843037c5e5e38dfc086f2bb312ae2a2b219e5fce883086fccb4d42b42fb5bf358e2acdebe80314308274660395af2536ff767a942ca4f2b2340dba15df344e211d8ce3d372dff8233c02ae9ab677c3e5238f1f278d8913d42e441c4a527982b51d2874f7051e304ddcf90ddcc4959431859c4a084f22f3b1d0f6aa1e3ccaa38c499df6bec1b26c8c31100da4dd82020fed1acf612a8d8159175452eabba10ec9b8c665d8d62ae51d5b143946f8e227df4ab17bebc39adddb99f614fcfc2b14c592299d462eabb2df6e127c4c7d81da91e5aae01bd39a9e1e2362b006866155bd89c381c6b9db6b5beec77bbe37c3d3f70e923221fce0b509dffdb56041182f7604f79eb2afd49630b70193558ba8151a18321c4d71b141faf1400937282ff975799cef6df1c38b415c0a73d0281f4e5f49caadcead482e8fc0d5211d9527ada660c57a8421adc58486617e7dd22178e86c6fbee83c05171dce950b5e4b5d5900bd85b2aa0446403db76b13ef896638433c22df4478cf0155f2967eca1eff19abaafff2ce146b44edf66f24246c4b13c3892fee46757aae077f9b932e0cc492e5373635075acbe01139c98d825899bbe7e96786fe66750cb8462639c8bddc8ca445f41ab29a214f5d0ff379dcb8e1b44cae1f6e9540b389211a52cc2cbfbda37bfeb88020f605de4561a9f3e582c8dc72fef971d2b72560ab37c0e182c213c7e3f861e77609ec02b35664b710e1169dce107bcfc9dbe09042a62c481cef1a193d59f20f81fb7efa110a9eae1d13b6464082784a770ee8ea7f20b6bbbf20c122a6a2bc1c6a37be959fc88ef0fe8c4daacd6459b2ff7947b5af6caee3372e528b0c85b9f8f92447fb477a14740d8008d54a1237064ad32b4f83097f49aba14a2cf6f8377cd359dbbbcbbfcbe7ed225fd2a5569a80e4670dc48f17d56624971550e5e8e8d7109156107a5c77b50ab485ca3a266f895e8ad74a8bc111612140e5a2d0496f9dfe4d38bc1935c218da243cfb00e7306b2144a6aa35c1c0b61e8f2fed2b948461672b9de6ca78efea46b4a6a1b26caf8a74c4a49949e7b6554a3c27fdc5482fb78f54a9b222a56de4af6c4c70f90eccafc05c92bbf84b19fd86a0aa251d2363671ee043b20dc3ac19784291d73b274fc51c3ad2cd0da2ef63453dab5c6f4ebb8dc5b17a40c68408ca2079238e39fbd7e7166942d4eec6e5a234cfbc991191df8ed65cb298bf4189e373e5e1950d9040b63557100991076e887b94b7acdc0d1a545db391e0d352bbf335122e4bab47be39a496423e01e4bb2372d4c00c79cb6d7da2bdf6439e8d83d265b5a27f2b0a6021bfa35f660faa30277e156468e7ae38685b12bd6cead572a403c995f6b6daf16d674e149556fc6a743ddba79f3b878b9ac6dcda9b040b7ddf5fb71ca7e0e56898cd65451b054a575c7b872952729213cbc8bd3f603716cbe5abcf1d173b4e2f60c3dda30d2955acf3549c9709c0b4739e5b29bea58c52a8e18c3ac664a90c712f996e3bbb7ec71a38412b1d0529c0ba85e53acb52fc11b190d031ae72f16a25e6d1f1a6ce86a2a000958ad10b415ada246c55af1f6b0d8e01b8be160145878ca8501f64ef481e3720a3402c8eef148adeda87e4498c529f6972bb9a0a28833125414dafa0ad1f4e61b43910e67e9d8508e28560257dd922756d9dbf37799cde725000edc3d5700a60da73a763af12c772103ac7be6750283b26b4a94d63af35c72f6b8094b77d073232a0ba55b9477c789785b7c6b8a9f8136399edfc80fb605c51e76bc172c31738c0365dc9a9363174e005b2e31c71b76279a57589d29fba55bf7cd069514e440f1f0aefe6ffa31de03c4577ef125214d506ca3557433c1c349263bd1ea0d3e4a4a6a5d4e41a4bba5635c8b2a7401c90b2ff5db3e4169efb8ba10bb4bb34a048383af032744cd0d9db59923bbe3e18dae0683ec752897a48a7402d7ceb0c347dca5444e69f6262ea0afbb8a64a85faf2d1cd5be6e5090f437f247307b708c00bfeba1f9c8e31f1dd92769613c9b77460a5b2e4645fe2fd437e2693d905c8be8215c2d1b1c669d3a4351d848e2f7ebaaac364e1e352d2662d36c5ba9a75d3c14287bd77b4698ca5def840872c0c3a903e5d3db1ae326de60dea17129d200220a4746a4f7ccd4f7e536cf0428f3c2d34e4cc50175ce338e26bec9b11b4fb6ce75be01f3f7680ce1c17efc3246298958871118cdcd8577f38f22e87a3637dc5adafa5cf16e76f6b32a0ca30c111f58f600c551bcfeb9377b3345a4dca246ddcc1614883fa76d31496778dd69d4c087c8fd1c8ef65e5501fd2034f9fc1537bc10397296304ed03fdfee8eb09babde968956e0d5052f36613168166a55dc2bfedf7261f5aa32e04868ea8916758f407066fbcdcbebf072fb02447df06c80899f166c7e76897763ee01ef5340c403dcc4b76bcc29cb01c565350538b1a83b78786522d9391d531fe51c49f573a03a787f1df7f42412b02613b0baf87e190c23ab9a325bb06169cae16a8bc1b0462ed232c164e1822a83dbddd14d0504eadcda579114513e388500771d8700ea2c6b6234d54eeecfde94bd0c4922f1957b43e24b4da85be52a09b39567ff841aa3cfd3cacf51e46c89cf536a9f2e8e7d99d4e19453ed6890876ac3f3c4c8cbc19ee08336e9d31fb5f6694958dec09d2621ba89f435d1bd960be34e729238bffd8def7555140dec6889d67141bc7739e91b2715d35759b165e53e34d504cc209072cb76a0143b3bad135d59efeecf8e349623971160387b5e876c64d247027d354bbbf0b2054fde808a4f4d5c103ab0a010e9bd5185d51c311c2e4322b34aa5a06460738885950b5b569c6b99a1218acbed8eb893f217b5501c9679f02701349bc2dac58109f77b58c75fdebbe301af579a7844581ea76509c4277bbab4d011ea9fe4a57e1dca22d1fd92acd01d8e301281995d76b3aebf2145915df8c2822e00b21443944d27c41b243c694be0b88f703b9569bac26c5c20ace4217610ae1d9397d3accd5743659fbebd2d40c43e8485e31dc9e4d17a883091aa291457bbebca8770dbd4516b39faf9525418ba6c9fde383f9adadf46fc2dfcf3f13a809053e886a49fbc020380b7698692c0f87f5a7a024030eaf5a0dedca8e9ae8af43c55f3e6ffb891dd5f8d8a57fdca2706c5d04104a6830f3b3ad9ea2a8d70b1f276aab85659cc3e885fdaf67bcb96609014f259e0a7e47d806e85d9bc92215c57e2bb7379c8ad07515c910fa684bbb23bd3c4f852e40868bc4f29f97c5369512b9b282208996e1b185612f0d50588cca3a441775c6670af35ec340281f0195e51b284d818e27633e5488ac81e6275ab84dc7d4bbd864f6c5e68fa74377bf34d08f91c44230f1d9da04589d382341520cf2d9257cb267183c02363dd9fbce396f654671c8704286d395736ec9358021f0ef2ec9c81a23527b406890193ff3bac6184f6eff5620bccac0499ce883f5660d529de6323dd9a5741047da9a456ed3fd990080a035c786582645147a6ad3b0dc36f26dba0f3dc347751d889e2f02b00f91fd867ec6cd2e0eeca7a916cb8f8012836fbb3213d059533522e9cfdc3940df7cb58e658cf38d0bb52d6a8764c37c7219a055ba73bb44fff8647af375b428698adbcd725c90e4e75a37164680dcda19011f4ad24d0e039d5aec7bc06bb498bf234b5ec222b255831f63896d165eca4ff71a31395c36c816f45deabf124c2c3ea770300d8daca474fb932a357a213f11507df4ba67a52b226adc48858fbe6e81f3116572a5ec6e6cb4e3d7f9e5fd03b1ff8d82d1b1fe43120a3aec573459f90f78c3bc6bffc05afbe781ebe1fbfec06d76964bd5c3d66b99df5b97a4de6ba18f1d67750c6c60be63183e02abb822f3cb89a75b2b23a7216025b2a83d532a76331d5c195be06bdbf6382f5803ad5bd8839e2c8e99ffb3b314ec0bc9a2ac94a1911210d411b5e1eb677f163834961f8741914f522d8dfdf1f178a076325abd1acdb40419a58ba384568c9db64496b3c7bfd869413bf90111a6fd5197c46f420a1c50e975f17d53c601d8bc389eafa5ed496f6730374dcaa00f23f1397c4b9998dc261095653827dfa017efdf7e12cc6e5a835d700acf43947676927539033e994427e72a414a291070801942dd02f309a477c83f2d5035b5f3fef2e7beeb1b7a80a0336352187d8d96f3433b78dea80827b952b73ce3d36ba041316f4d62f24efc1f450129a3fd5fb4daba46fe843d839cb23f3573d2e8e505ddb3fb9b27513fb84fb72a8115440735763ce2ca728a61bb0ed798371031ffa7b1d6bd2f1d282955ae2d7a117b470bb646357a7d18153cbce5ba460b3865b71bf1665ca1f4611a60cb1383988deb57d3b106ded4a15a977d82e2788ac22aafff80d791982fb16892398d4c3f0bae1276705be6aa3f6077836847e1f33387e1125d86c0aa39c9c49729baefe94224b6f3747ff2d453f830d91d32de9bee044184e7f8e934d7abd7fe8fcd82c956fe33fa797cbc4815717ef5fd13c05fe2e49803acaf5620125dc07e5d00c85526acdac31d83d02afa895b166fb7f8d13f55bf3aaf87665a174fcc90c6e38e5c4bb5b1526ab92204b356726c66cb164997e5a029dabc87f2424ac323f483fa112ff5c03363f50f3477f031dd646b4148ce9b188217fb7ccd904e03ab70ee733f8452e5a2090dae8bf4a4eaac68fa7bcef238d07362f6a4c642eb7ac6dca3396d567e40c4c9489cfb74df51f808998bc53c38aa15096ef1058fa7708c4839b0a38fb21364f56d61674c33f336bc561f31de7b99ac365bd992f0f6400985eedcbd10b7221ca9f4af2da0eccf74920e751f9182921e2f4d08fd73e5b3edae87f1b4fee5bf661d0cb63e42021816bf23cd9632345949a5ed9f8842640d4801a6a8cc1bd4531cd3d047245d23bed24a8f107f749ab1e74984734bd29c7a7ad47cb3c15a6bd4ab4f8a43b791bb1b1ffdc789d986b4f732faadeec8b9e50c238dfb8696d3ab3e3d20c8a533a0c424474e00a72bfff5194aaf98c34dcf08fab8653fa72ecc82ad910478f1ec981200189426d5ed4cf0695fe01c09e125b32465b5997eb05cfc5eb27c1660d14e6fc08b5d6b40b93a98cc35b5759bcc5eaa141b99f62063a9e4cfdd7b6a2eea1dfac89619d719bdbd306be576f8f4358d885d7dfe965e11f6c9e5a0a4b406599f48f322994d42baf339f86e4261ab252163e9e0ad3f21656269669dea89c1a156633bc3983147d2f284ec0853b19f6735cc1960926c44740183635fba8c32ed51e1a456a8130d5b617f193899512a687f75c720f871173a6ccd0faa3e8fe53217df3b503f5d66d915ef047d412d3e1396ad58cfd8f76aeedd1bf3204428a471c156b6dfcc8c7ecdc5e4a0bc254622b149ea46ec205408aaaf5c7a81bd853c92d7603b7bc0751d8d1d315031bf66de4c1393bbd0a7b46129bcf67b7c225d97d14f622283f75fcd1bb3900f27c79bafa9d6e3d66f659744a080827f9d4cd666be03289a86b19ea49f7ccaaad9e550afdd67f5207aa6e59f2a8fc32cca13916803d1c836e55669e6c4baba7dcaed04e04baf0013fa348f9f4a823f3488a970b52814f49cffa97c77cf6d6725af6db703e83d6b9ce0a58344fa8a33efd90473f201d3b0732ee05bbbf8feeee8d7ea40c72836d3909f49b840479cadb73b675cc6a09caa72bb715e947829b1c086d62f579d800d7e1d23368cfc29f34231f9f757d4b5cc55f15c1e95426246cf4e48e713e753e8a7c6461c10b62036b7e524e60ec93e3e3a2f2313f218350c63b5512ee6c7d6526ee8f9cf3d63fc548ba8992cf40c67d017d52c3d73e1fd6e949d2cf22274724eb5da5cec6e1a36cb5807f37469f0a2f6213c5359ff55d91eaeb2c7bbbd5cfbd7b7a8f5c791683c2841e1ab8ac34ad2de776e068738d541108b08327e1b113b8bb900e3a705e2bf15c098425536d2b7cd64f300c8e53e0796474e6aa471ff180e5e7a07318cdeacf674095a0d1c09857faa0714a4bcef791a9955f6b916fc8d9eef605c0e18e3b16cbc0305bc91b466f3282b109b3512b31aa09766b670cd441e153ee2546ec2e3cd159c30fe1206fb3d901b88feeed3f23cfd838d86e6886a45c8da2fa2ce7a0f27574adc397d8252be58d3e42e874b7acda7e3c3f375259e55106f8e1cac746355fcb613295e7d63e643631048d7ed7ba11d4b4393d4ae46f26e442ef36edc2bde6dc1e33ee202eead81f29ceb7a73d883a68c7df55fb5fa20f31726fb14b8fa82a61075f27ec0d7eb4a25055a74321a3ad8bd0deacf112d438d0b4514d561bd290c37260ede515ff2076efed7d474aa2921c355a9eaceda3bf08cd18ae058d69690f1ba29d7c728e16df665c34524c3eb0437f32910c11894805d8645e8671a0478adacac8f15991a7f9108aafc1d8fd6f8830c4fb709b7ecf08037aa4ec65ec2112fd279bf2c03b10d37b9d3200fff6aed823f05b6150009ab2a55b65cc789061c4be5a8453ec9eb26796af555a1735c61c01afa672166ed28a6019c91ee5556fd2108e02e63ee89fcfc5edc0b26078fc71a4351b32567140d72836835ffee0b1ce7ab16c4587c1df99a8c6281671badaf2cd67d0847996fd4a93ac56feb83dd82002730c59bd4bf1484e77b265a6870ce9e67024da5de6d996f9abe19fb6f54ad1ec5aabe43f7a36d7f32a567daefb969a7234a0e9787f79188094a6794a3d78682b51ee57291213efc7ea295e6143d45e8444603d36a0ea98c5d959cbe3d8cf80d161ef341bc6a11265989696b8bcd96d140cfa87ebe007222f3bd2c2b1011f014abec17dd7714af677f151bfbcf742103e73a7d5278af5d2866717776ec27b318ca76547f4f5454672897eb6a620c46d13a5679d7c9a69549a14a465ebae9c84c5587c4548b897e3db9b224a11c1928189302c55c7df28943a2ea8627d35fd0153132f10b7c314e77451faea5bbf60db3c57c834a7b5f696a1ae46ff252451896ad7927b5595d52559fdb6b4e89b797262e1fbf5a8e1952a47d7f1aaf2c83a8528c0edeeca9f1431139b1863b915815aece4026c85058caaa3394e4c86f98c13f29d1bf514d73806f77e2101806489c281f838e418e17f86ca8ed99711afdfd75e25b5d9b9d748a8190881553b9d819482ae0115deb865c2f76dbdb260692b663adea3dea997f07f5213c2025838828d36d4f6bafaa6d27827213e8516616595643677fbbc68d853a6c5ec520e05a7efc68141e54a0c07b82947a9f20fbff7db66247662570625a2312065a82e7651da9993688eb3cadfeab775f5934ffc666c8ea3a8865f1dfb5e4897efed55c4bd96d8e1434bf1140554dd8aa919baf10b182511859974297123d84937843c96340ffd2f620f6823d55c8524d4238823cb6d952c7cd9445e89719ba4d4a29fa15ab28893b2f5923e67a93817b9d41b9aab6bae8c1f7c7e7df4d8ae73d506079791f56063b788f73cfbaf33208090bd9e63ee6fab8000c6ad2056769edf58d8f75a4b3dced7e9d80a7105c77e24a120c91683bae341471754f10e2dca1a279bd20289b0ff4863626a66e36f0a398382939e2648af8e41bdfead022561e37a6486aab0ed327e41d5bf5779976ad9081f012eba090a5d4c7637e31ca347156aa2da211c6fee450b1218384ed52751b7ec3af704b978afd60635c84122ad209f0d270d08abd8a177eddab4eae91dbd4256ab50e122514c4a6ef04f6d236b9269a49e4e475764ea22e71cdb246d7a03ef7c1ab4975a317515ffd20720fcc0fc4bef4dfadbd7f2c08deb1da807eb1d4118e71f9ccbada26319ba16517ebd77b7100199142a5adfcabc100bcdb4450708bade23f5ed0f07b84ff31b6e41ebde249391a2955d151acf41d24957321d3c89c22060390935ebc7721cc7519c675b6d13bcc9f4356370d73933005fab222306b2742d7afa06941febcf596e650e3324987d720aa7c34fc732a13e927a5bf38e3d1a19be59bbf7c4b57bcac43f4c2d29042d9a59d7506ef59725362b1f5529f416f973df6bac2c202727ef1295a518acad2a213f20400c610e8b91990ca1a86fd9ed8b2e69b71453e26d7d16cc6238937d19e918a206a517a7a1d7bf13071761f85d0aa837884fc9918864fb3ffb9aa122e22b49af61afd4f797f02ac22091be42e669bcf3805775f3451ed6a6056328947e8a4c72ff5cf017e934a632be0e397ea4cdd94f5a63d35a19972303b434f30d230518e187eeea35dad663251c94f02b16beaea73c5ae6b4b184d81a9239799d33edc7f6da46c08f844151fbf6225d24787bc80442c588ec70138af45da58f899eb3051f74d2947d4985aa5bd5b9ac27e721deaa41498b203e0e26b4485d83246cfb073e63952c0dc8ad9d7966287a44f98183b6f262cfb0ba48e0c71909dfe776d0a83372abe04efb927110af7a552f172b73ab8523bba2053beaa9363ae572e7ebbf47921813a21a40143e965a2922d75fec8b75052118d4780beaa9d3c3119fd870cd0cf1726dfa83e447913180dcf3764f93781b503db4f6b85aaf6e4b7d107e2c83598eabf4bab82c86ebe734de43f1dde30884eaa152d2f8ea3001c0163b5b153d392dc47d80953a94df4cc2d6eb96373a12ee5ac70ccb695820013381f4b398c7335fb094c37235b088c1f50465be4ba1cb4f99c267456597bffc7b24073227f9dcfee73a0900a8a8d8b8c583257538fe141a5ebf08002679936070337d27f6c44b13432796923feb4dbffe6009daf4df13db4c6118df5ed865abfbc7c9d9e49e8abb6fe5ffecdaa9576ac18bde81e2d31bf83438536049a6549db7f7bbc9e7ec5f05f7148dfc113d75d36c6fc0ae50ffb38edd6ac9b6bf611984690312d7c8253fddb0526ae4c922f46472211a8df084371bd8b853a624e5781af907b9045495fdce2da4a3c736eabb6eea97c771d2c4669fd62efbd5304f65ba3bf0d908693c4e216e9db76c784426e9c53db6e065828e176e6acfcee2f68fbf2598d49ab23ed3a917a8f705ffd64663f5ce84405f06936189f0e77a4d02aca499546e071136d5dda26eb40fa349ea4ff60f14a7cf4d827369d7f5a10007b58eea55760f46e71e2b3485d759d42db08f1922e54da0b4982904e3b1c94115b14572c2fc9488e55e7732b62b1b706f584ae089871c9dbf7470150d4a8db894afe937bd247dd13dbe18f0c21bcb18088639f1389328646b46a4f27656d4686ae834badcee5f42a9222d32e343433195d65c78f750f680de4fdfba8d3ccc9ff92a40123201eca1c9a216fb81a96475b53fb09568bf1abc2d6b4b391ead3bf4f3d0121f31bf955e41afdbeadfe702036ebbba788c5c71aa77cd6249b6a7257b13850eeac9d5a3632d6137a56aa4c5e20a1566155ac5711c263cdf15fa8a31aec83bbabf3b2e470cf457c287199e2345664e524946ae011e1363921dfe501f4125260d82044dc9f399c2f191c825ff3df7bef9db180a682e5a05fd7398eaac74925e9dd5f90158d2838d5a37f30f112c5d9b6a7c7d21aad64b171cde1050ba3b16c690a41df161cc340fbe8ec194ea8a5fde64a711274e87d7e5a6212b70f7f90906c6367d56e59fbe8b2a27a2100f4ea6e04cf88a2cffb545a8acfd0cb05a39f92edc9505e54e22a33020c4cf6b355f93d502cb37b6459b7099ff6e9f627592b938d90c5c6f8e29f859dc2e05c3faed394cd005b70d1f99229c49e7891eeb0482c7ab66f208bc767eb8b717e2a7323a615a1c4817b3f94ce11a8aa798b8fa8c96dfa73d915bb2410d462ba8f9e3cd864af7d6892a213555c5a73b6cb0023d3b7d59d859bf9528e708e9dddbf6c58ae8a848a7d7fcc896a4052a0147a81d5aa54894a9d4d6851c7253a2c64d800d1941889c88f4eb7b06712c00ae3d76416abdea39da64a713b8d49ae024fb953fce42f2cc69103ae325dbc8e79b395a6d787873be416cb72bd976a6389b70337cdc75c209cf0d62c10b69907d65de919889d844b07c6a2d298f68ee97b5510ca2f94772915ec11ab5a643bc4677b1e00183c461016f942deb8b3c6e3f087eec96c192af17b644c7769170cba3ac0867586cd47d2b2a0f86df0130fc50720af6f88707304bbc7804270ea977bc476d6a0f2f7c9fca4876a7ce03150dff0e0aa117de6a8e509668cb3cfda08a38d802b862af7ab9595afa37a67470fcfb0dd3b16e4c9cc526963d21a7fcb5f794069da26e1cb0463bf05846a8d2c392ca6778c8e9b462ffca1a2708714f8977da0ade74ebbeb01a738d214aed3a8497ff23704a63dc05d4e562a632ff3df8d9059a1ebb1e5be926ee0fc6b874c66bbdc347ddcf10280bed2a7cee28031643f0fe26e0aa0d6fec187d76027d70b9cf61fcaab62c532d656aaaec091f3b716ec332fe01cebf2721d8f64512ab3ffe1323f4185e1b9ab8a2f4cfcf96d0387d121561149ba9447541120783064945549bb9967c095fc0aff758284ce74de68021f22d4df5a97c98ceb85492fb924aa9137d5b8e490ecf5932c581506a458ddd479b17fc0de8cda6c4be46bb4cca9075eaf8c070002120b249d535ca6c81371c02a4dc3cd637c6995a622370a688b5f49914c7d2e92da16824ce0d06dc413e8b373703c180d72a406a2207ece53a8cbc152857bb6272fad4d1e35e560f03fcf957ffc060ccd93e94089575520bed9ecb170f6b1eb0cc82055b70a8e012495f644e3c0454fcd8262225ee1252e8f3f9756eb5de4c6a220f6d244855583a798f28ece02f14c08a2501fab4604f1f7ecfb8ae111f3c9d1e0762aaa2afb4be9f40ba511ca6d3b1db9a14f348f2c4e5882515096e940fb529c269e66b4e0771b6a08ffc1314f1421df562e83f88f569904efa92218a3ba352e213b8df67a374c013322c696fd4a8a029dd8d0604766acc64fbb75e79d80672029f869e07984194c2e0144a07dbfbf0e2f1224dd68d0b22c68cee0491c5e993d946c85dd0670dffcb04ad33e678cb19b80a3b3d6c8f3a6f267d428f486333fd84e61345f03cc80cb1f69dd8cac4ba3469c4ce03e9eebba116bd80700428f4beebd015b3b93dad366494982a48a84d926974a624367c6f07036322fe965709298de069a589ac94fb917e0032c8b88d626d02584b8afd93fe538f44d0d154148a1e9741993835b04ceb8cda5e2b3a9c548499464d76b2892501d398f3a2b2c219e81c5e9adf99504739e5856eb5dac4eed43895767254c132f47adf66b558b08a9e08a19cfcba97e8d8f16567eb28b39704cd5c7d7545b6591fdf9bd04e18480953846d423bb5a5c11253a37ce3f4e5cf70246a88a524484fa87344fe4cea47e57cc67954369577f5d6513639858c67b1d004c1ab32ba930ffe74f17cc5ff9ceee0146c4f7f51e67742c0b6dde2eb76c6d8dccecc26daeb3d57b076955841dc4671d4a9d97bb1cbf25a77e423640d579398bd580f06e8e7c2308231531c30cd334818af3bf692fd17b852d01c0f05ca999805b038c340b48d5aa236b40b7f85b1ae6534689d416a651636e6669dc3766caad8ec6c1d2eb59dfc0dc3365e7179b68f2725864cbfbe8b8b3d4b292ae8802b4730b0bb89c510ce11cff99f7e1c490b839d6a99fdc4da85e27e83e2abc9d003c4461fe8ad4953d7e1ddd0f95109dc53029f3f78605c38ed53155c583eef2eb632c0c732a04429c120839356cf3af7783217b74caac0618a53751013b04f02591618278d81f9ba39e01639a8d43b9932152fa6383a3091d7e2318c82c46214fcc6a813eb773b72e6712d50cf3f14a67ea0b6d784af67a7dd585d9becb04d5f0f23bc04c8dc1d3275cbf1ac7385a054762a3cf4a326f89c975315974f4465f770031453cbe412d19f24cb308eb7d3aa34a83b5d2e6dd5a0ff0a8f27f36bfe2a8edaa9776ab3bc3a1ae7c98177a8dd1f3c4ceb8aade8f8eefa42b18011265696a22beef499112686a3c17f43b7e3798320d20004b1cd3f1dce620ff008a1f950fa8a8aaa9145f12296b1178052bbdc888836411f3cbf6d9a898ddc2219051e2038a1ca39447f5b396a8988413e4b7e80803443ba934fc76620f629567cc7ff31fad9f19acf06c197713894fc08ff24d59493ee733510ed8035ee361363e3c4bb8d45c35cae3e6231a177a24286b8273eb06e246777347a16f58a9390c7c072d27baace1ba51593d1d38c405a03d6402ecac6e646d23e137a69e46df7bca3cca889f5d26d70d2d908db1e42f0b02a9124279addc9abb1c60e925615f8950f27f61351d32a381d3782c3c385b3b62fba36a2c07e01c80d8670aef9452dc9898adba4f5c5f151392f2e59ca5d658cc46b013604e24b328af307378f683622d4d29b9882a94ddeda8392322a276ed35c6471ce42382e84e41214d4c2638f59ae91766376c39526b2a8f39af1192be1c835878000442336befcfc6a39b2845a9a00ecde88ff11426a29e89f94a2ef4986603a0743c16c69d1ea92a196271165eede650ce2201f8c4e3adafa8e7fbd46fc784f1cd99aeaaf213f8e73082f20d39f803a065d81b65cc9caff8ed7d739141e23e0278437e5665365bc9eaab51e689542932605736dae32a89fc05d76a177996838a093c7e5942f84df58c52360eb36a7a48f6aa8ea3eed9fd3660d3955c74c6f310ee400d1d30b3aea49835a53738ee27ced4232c2d952a5b61ca7393146448319627811329c327506d383a95c089579f6f8e635a045a581ecb4d7450ddfc844a6b96c64fa002239ad670b6f913517b69dffa07627dc468c4a9725e5785a1b3361d97c86838bf197ea2b64ed29af82671d0c938e75f02105949abb75e8fe80faeee5370358c8446372dcd9fc6d30208173bae5bf6dda898da8eb84b909f1f9a8c8852c7c6ec43ceeccf08cf947d2a85e72c99b69f8134ecd9f64607087a577cc1bf76d2ae7b74aab73332308f43dfb6ff2468d4b2f32e84de31559431d7d954f260dcfee0d4bcc480484cd20e8429316d4508dea754a63cc0bb0f58136b903be14450aeaecb33a99be86c8fb6fbab99f7429774451d066dbd911bf392efb33562b1141969a18f57a9e2fc56df4b9cb481e8b83ab55df3d6dc9b6a2b961f71346ab87d12a432f85a3917ced413ba337507190f1d764170fb22aecaaaf540851ea2cba33d93b412cb65a649dc5f3b0e16538d68d754b9e3ecb3e79d1c39673f3270d96a98b815feb5115758cc9d75fafd200b4b0de6b8a5e06bacab72584e6adc79d85ea76b998b0e9f4f25d30af8cad29bb2ec948a7c538947c5a66f5848b2a21f465297307f098e44952257ce1e937e55c2e24137cf857a471eccf580892b7b354c762c93e2a34df168320c30511d680924c4387ea99c07c171a10affdc3b7260b14ea36ddd9dbb40932f3280655f3ec2818117ce342481f55be27e6ec84195db870822780a89462bf56bf3893b8d22c588527477e127ee6dfbc0af651dc957d92dbaa4145ac9388d35136be66c191d2221ffa23db7ea11156aa92925830e89f7ad4553be528ed7012deb39ea3051078e8e4a6cfa9a9fe8dd9832dd326d94120658a7b7777a6a4c92ee271311a0809a675137b0fc6355a51810646276af4c497ed6e8b4dfc2b8cb18b6211fd34871dd27a42daa84f438af55607650d883e7451e6b0a5362242ce2e6ddde2ffae71dd342c3c54b71104a3fa854c6be1310b86079841f991b9dba4f56263a36f0a2bd6dcf54a2cb6372ae6b8c42a11e270020ff70a684164d0661d5b247688952f435d29a7f69a219e85a9ab99db1a4a1665631d6f66d218679b42ef0febd6086479e16ff06840a7f09d091e71da83caa1df83be721411aca8575ac74934b29c7eac8540f7c67c156bfea8114131131d908317b74a43466545a0a81c1120db2b21b929bb2d996ab2d475675e7e0f843e22b8234714b64ab096b675d84d835d92a0acd32b75b0b0514a9bc549ccbd5fb7cf4d23e047d01c0afa8f190742b6f071c6e2012e9cfd0ca1ed13a26f7dfc4f26d2f9cb0da5b1faa3f5f8c19956c26c42c826952db7b2a874dc876fb0a5b4fde117ad298aacd136dcbec13c7058f0e7fc6a495108f3e9db4c9505cd02beb95b7ac99e10028b3d6f86f28be25181a272067e3cedf0928348e3fed00c7229f80bd803aa00477e800485a04fe133178453d56fa778e36b2556d3b89e9a6cad1e7842157fa5e8361d0445f71d405e759649850accf3a057be210014907da109d1c26dcebb38b2dbacfacbbe359c02832550d1d9da0d683aa5e86caf9fff0c5b9e8e6ce3bdc536539260d1727a5130417275ce1a92fb732a77e1d3ae695b944f4dbd4bf0ab4c25383b29decdd26c56426fddb8b98a5dc068c602c339b4f7561e2bdca654904106e4fe9723b2d76c8e6d86efa422ff6cbcb85bb44f216841651862a22a16c2116269e1a50ca3bc5cc05f009b03c9e3170197c4ad2d65bad1ab25b9ccd049fff4996ed0fe2ebef225f12c67e66e78bc80f61726c76fc33cc0aee3a4c7f252b7afa6f68bf11026864bcfed6f4b45b6f79b378f525a00e9e7ec91510061aff864ff647f80918d719be4c3c42e15d8968d56d4177b449dd9f05000ed5cdfa73a1a1d9cbe4ea0f9188d7816e59acbfb4b382183510c20765913970cc03f0a258466409a1e3a13097682ec788a0d708394a9fcdada6ac5fb264ff5c2eb0ec4d13be5ad677ef36640243dd9fcd6ea536a60cc584e31d319ae2b9d2ecbd5f5da66669f0f048c6e95ac8ac198b137dd938e55e1dd7e05072d2586c2623b633df4dfdc6892e8d1c5be2a6880afaf3fae99101a28ffba2d7d495da39bde0f1d457225ed163cea16916a2e67a253ca48216fa1e6e260324d3377946463e29a6f1aad7e16c4fbfb0693986f0c10454c7b44c3db72626796a0808befa5d07a77d38f2bdedc419bbc94bc89ae521e00be3fea4c2bc1e33fc7b4bf9b8cfd87df2c46236efe84c43813ee4bf04de8c65e95e9100329a7620abb09423029c544808e384a126691c8452f2fd7e94f2acdb0e8c7d9d90bf882db4ff2b1a4a377256c93508317c2d8216b8f63dccdbbe6270976a953d3c0b62ac6725e760c7cf8f68fec8fd73f60583d2670e993fa25298639d89f63921d0ae7e8bcb1094a4e2ffb7460187f648cc839b7c101c4960f679e43984c67394313693fa2834820ce9c2ac261b9e4e3f2d8fb5ba2e19225e6d36d54375ee566999840787147360b6e99c77b98cc09b5db2670333420e1f072ce18c79dbc1adecaae3a9937c53bf328e1c8ac6ff1cd427a0aa668be7f56214439269a08215058fa7d718c5b6a5a4ba3ad3b97589f7e8c397e3327675b64a895abb21fa805ded56655cdb39856f6459db453d3ba818736b852ec090278e1e6ad9814f69bab000367e33e6aa0997f353e9ace4069f08ee5f125f72fe8842930cb42c8ee450dea8f983675c7ae4c03c3f9bda7708cbb3e0b40e7639ca18afe9cb77896c5a7ab7905cef16e224c12ab2238606ec9ad07f90c6a9ceac0734214b8b17b2baef16d62abb66fbbce337d7b7eed07d10674eec30369bda3d0d70bd51a85384dc84b1b9d1007ae2cdda8bcb3b03d4338479f016e639e3524b5ee4cfdce529665fc9b6eabc7f7b63227d9dc61a681bc916558a8a9ca088d4ff23cf8092022529b8c70277be17e64db50e77f0e8e563b7c678e2655245b3eb5c09469de8ffbdf014802ead7aa8e5edf4a84d568b390dcf6b5bba20d086338928889d6c28748004988290fe531987f19df0d807bdd41616198c73614e7158ab000ad594975bb01e7a0d2636c16e77d44f1ef98ef36f839ac000b3e212da2a5b89f0d91d5e74db5642805abc31696a4faab24e12f2de171cf94ddba3d5712f7d92ea728e278e60b2872ba99647b2466e7240e76a75081e608a206971aed280d27d4741686b9bf04b2d02f8141692d75e6d31a940153f3b956eb66752285d24b8190aa4e83a1627cb5d4aac7ae022d2c4ffa1759cf0eff67ff5d60df492eeeefa1ec6378286021ed7ae90c1a649ab8a5b08f0bb49fec014a98caabd5a6f2b5af8e1ae29908d23d66d3c7450ecbeeeefd6f44a2dff4820c1d328e7e1848dd56405f6ff0a68c00f387e3728bf39b2474548e107dde4fad781cb0df1ee6f17f4484490086c5010a63a2aed750d2110a949021ea8a0ef7bc36a29f07591823eaecf80202558533a96c988f1a2cfcc02706e8f48295e039576679e083def245362b75a937613c55c31b59ef8a2667e2b67fb93d691cd0838cf2a646dea6f50fc9f37e89fb674e46cca0962b550437e590a4a2ef1b8980c80f28de0f4cd5f0863f73784299ec6f7da0cfd34f318f0d64bfccf60d9cd3836943dd3fd5da5a2aeaafac2888a855cf01f112f8f650548cf7850659033a6bcee34a38fdfd74fca77b3273a29df97ec289a5512e00b0b89dde036d6a2b7aabb267f68a5e920612b9475011eb8a590561bfe1421840f13bfa0462558bc01372705d338786c006c68847050ca7883efddf9ab9e2cff55f23a4be90e903bdac1d275dfe8df8c11e9777fbdc966c4055df17c460cf1241e4a1d8c8555322d9f5c01234471932d522cd67af3431555440b0c12c17f2ca8b4054cd93bf6cfa3e7dbacf0153d3399184fc30902d2da0d4c4b2077f674c2482e75e19ef9778d780f8d71b94ea58317988667fb84be360a6ae45018db41888dc4f3ade3edeb30565bdfef9e54751f5f2ce040a8ca92f7b8f2d03ea40b44bc0db074e910ed57705e92dfaccfc2a7cd3d62a098bbb2762e79c438423043fce6587fc34eec805f68e711417509267244c629bbe3138b1df445fb9e037a9ee976d08424143f169957d09ea4f1fe7384e31e38260ad5e2632c6d543d0cf3cf13a5607348b20fad7762b3642e3ab6fbf1b403532bc601f82703f08026297c37f7957e21b7c1838f1c11fb67cf0e954a1da4dc8c6636f77f8a0d25e37cf4a4e7dee23dfe74b5b77da419e706f3c53b3b7a7cde31e8544e7c105f91d6adf196af7b0af7c4175e8c749f2acfcda2ffb59b926bb6b665182b0d6d6720afd28e0766ac1202b3be14f983545dbc9230aad0bb70625520a474a8c54615ff3f5c298423cf337ec430e1a26272bada9fa2f1bd4681847e407ebcad1550977e9f3cad65748956ba0935cb73a86172806afbda84ac4b9eb2b59e23f4d9629ab314dd110b005ace5528671c97dcbfbb5cc667524fab71c3010d368aff4f6380c9d04b0f0e8ab3356d206e8748dc1f48649ee4747aa21c00613b317869c05ff14a570effd9d331f4dec93af4f0141ab2dba9883175f74c1222ec46f5280468af5b1fef0fbaa50dccf3e9a717724e399c8c0edb41bc06c0314139c0fe469a84f3a3e74c314875121a36ef377617616df57e0cc4cb6d08fd428b9d509a1a0f2976ff6a598fac6d8e12108d3aac7a028fa35e2d546e67e0df381ef0893910f749587f1d9bb0b8093712e0ac123ec65607b82a83caa8ca2a11322caa77c49fb8ef005188ee8f6848e505709ee5a89f22ceb8c99dc8fe41a6480ae9e7ad6570f398d218c3309d8eb283b7127f4c82cc8d92df267ac8fd356a2aa574b8eeca40c867509c8649ba4d076a1ebac17503819c230859e0a0e624793256a86b0488f94648167007fa1f6da99eba1a0fcf224246e8d03a2b3bea3a8fa1574724ffa7831d18e32139f823a9dfe4acd77fb3201b95f5ff7763d2d3e7136344ded18e32a365b849ad43e1b74ae3a62955f000de80484ce0f45ed54d20f37202ee108909b28cc84ccd6a789dc8435d98e7dfabe4c11ba30d266ede5f0e0e388ed13a984690c333568ae87d0d333756394c19179e6b000b2fd4aefc0821e7378390314f0f6ae381e89b4e9603ee951deca34dedcda97c2eebd6f3facb169998360468d0b555de2562d9bb61626e825cfa6b8171509bdeedd72ed802dd0ff33fd18693268bea1b5f7888d185e7cacdd599acd804ce757c32c9a0937f9816d4e921686730ae5bf4b58bff02632ffd68854f731e4cd20ba831e7cd6794e47c61cbcf94121a2f93fba097f97e2b24822074a53798fde11e2997459d372f46ca69e555231281416ce3a362fd2583b5ea0cff584fa524af5b59f59d921407406112dcd90d44afea026b58b1a347bb1b38a6dffc764f6592858d7f2f6f4e236db42161cb37506dd58109a7b6c35e364576ab1d58ed79a9d861b183f0f11ca2ba886ca3bbbf9f6c5f70927806220deadfee5d9600b25be613062d9e5650303a7f8a0c4ea9b298ef1175c1011daa1b3acdbeb2e9fa79714f981854e36ae9673dcb33ff4b58b0bcc42dfe76cace7556f0790b383b38bea4739b9814a351d6829c8d88da26e2d6f1949f60eeee6510fe524c350d6431bea93aab3373719202eb1dee8fe2a6ede3a08d591f8d436e0d6f2f96c546575ce9edf8c3714840ccf6abac12be49e743b7d28ac11b7faafde2853f65b6873965d039f3421d6b73db81bbb22e112cf08c03cbdfcdf4096f6861e5f8f6b176ce6e8ee11c8af28a36b56c709f8ffd15c73889edb67dbb6a76c9641e6b7740f6956829b95f96e071da97fe5ef7021ffd50031739ec4e42d1a70505eddf12d257515b8192081ae4488c169fed989bb96176226605f57eb0e861297d7c172e3d814a2f967bd8edb860f0ecd780f1b489f6530e48563ba595b118986f16ae92d43ed51671be540f9b44c735574930fe7f7d08fe0a97e5a99f8fa9bf1b49bf8bfa510e8067d4ca68cae06dff23a09745745a75c3f4fab2d202a8fab0f69cc7159de2b9e2ac09afb414fdf60242be9250718809129e45ffa78905b11eb4ce5733018640ad9ac848a9717dad98c2ffc8a78eae910ac55dcbfed2ec210a0652e7bfdf84f269103490a494d7dbc80c252593a9eef79d58d9349f4f7967893e225aae5d905dcda3db9cbba5b4358438d5e21d116112f52ee5acb12557ca55665059438341e45ae01d14a3bdabdac877b0527e3e5d0b552376c2b438d4f0b5bf98a7f8214df6b47f40979da50d4ff280272c403652c23ca4aaa4aec5ce911501c2d4fb724b06358b0bbaf9c078d350be4da8bee6abad656916b342c991d1d6c298d433a0c9bc6bef6c44301cbf23caaa8df098b4a95bcf76cac3334d10379cecf460e855d3182ec31290c986b705a87ec2ba9848d7a9bffa3f314b6b61cc2b783e2429aea138683405647a01f0149b35c54a90462dab9e4d1acfdc0ad0350d5efa9c5dc57ab8735b71d7f8825586ae3b9718698ecf6a1c30f15e602dad5aa908550a950302efc422e799868470997f5b40e87d08fdf4c0c7a5d41176d95699652d963cc736bfe46ebc3fe7dbc4929dc4418db4ffbe84adc39ff51c6cfb8f3bde8bf52d192a1d561ac43e380f16c5cd3ae88f5d349dc31b96b99c4c18b3e6e1fc870372c93f1e0d416bcacc314abb1f1334084773a7347e74ba65834da47cdef7abe70926818ed1d066e3f2c4e13d9f192651ffc17abb99bab1f551308156e0820ff5c875fedd4e10ca91062bca623c50f8bb314f569f5987a4c11ac123d6027910d6cf276ccfc2e6c46f44a572e166067059a3e8966bb869e246f6842832ef4285356d0080c732e955bf8a535c438dc379ecbe59e457b972c010ccf72cc64e524ce3dbe054de985a48665953b223e0625b9ec7dcb742502754a1dadcc2d55fbf08528d2f53a5ff59e30724f0ae785a31d4b54d1d57fc26e0fb08723241fdd735ba6ba20b3e58069fdd857fac1ff9b42f82b30efe7b4164fb13ccecf857d4836cd97cc4e0dbce6c310a4b394eaef5016e6fd99302c91ad55f6e392dd86be40af2418803632a436b2edeaa29a3d0a9db1ee3180cdacce8033367d760e0c2b19be175dd23323524fc21a1c5526cb088ba79f5bca18d151e834974d5fd7c9364f0728cdfde1b6711a9cb40993e63a272acd8c0e9180d89e1efe40f0f6c8905257e4bdbb379f9e28f6de8ca362f7af9ead902b6daefe574ef4fa92f7b1e7cee614ff9164fae93cf621fa3459877f8e8aa52449cb0b7b071d50495625be5eee77e11c937d6f5ce349d2a9e207c9a9672d76c12655edc28657e3a1ab0abf02b9e87d14d132503b096af95fd15ccbbb0993cef2758864543efd3b5622fc59fa0b3dbf7df0b3a570423b577a56d5ce225a4fcd8b1ccbf9a032c3630811796b6d082e363ff72edd40aa4af552a47b180ac9aba7e780a384cfc89c3fc5c059eef4033847734d40f92a5bbda6177463e913729bc6f0dc5cfe6048251bc41f8ee6d10fc09c453acdfd3415280231c1e889c42260120ed7058d964e8c9fc1640e2788afdd5254901632c1d6270f433c09f72a34d3516ef56480b6d10c33bc288c19f08ae273fdbeeb5dad2faffcf09d2c451d7e8d748b0e29cd7807fb65fa772517c81f6e5f161327dea102cf3208984e5c6cb615b46d28bc0cb66e10d530c88efe1f9d3c1566b4f51981c372dab90d02e53fbf353360c7473bcbd3d8189f20abf7a76caad487be012acddf30297fb11119308ffed8702ec4036f5524d7073274cd69d745842070ce76047fd1a378810ecf118764f22d7204e51f803086b65f68ebeaefff9dde82b857de81edf53951f3539b08a572b8da124faab968de18116a4ae7a81f63293a53461100c6ff4f0a01affbabb478ae82c7fb55c02d563a74c2fc12c6b8b44e98dbe0ce25ea2423a8f2277a707f03b2dd4cffc5a2e28adaa9ad909e2329b982297ade08671d73c58a566ea1d5f2289a3c52a9156a919b49fcf192676067ed0062b6a99d43feb4b97dc4962c71e1764dc46720d06d8939e1f1067bc45673ad65b7f1bda2ed3c5fe06eb9e701eb09a7f5adbb33e4feb647d04a1d45bfceb00255f6e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855f33ef31d902e06807f912c2ccf9b20b89076183ccf01b9fd763ebe1f1438ac5f98341a963b8223f2cf904e50671ea59dafa334ec44b5c940322acf723b60f78ee3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8556a90b04529ac4e8e76c49b9f65acf4e7bb01b142897adae58df2f1d2c06f88b0e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e1e34b03e9de8408f1cb0e355390b143f23ebc73de2f7f1748456394cbefe599e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8557a10fe943f1b136b9cfd3f24da219918ce107045cc2e0610dc7dbc115a3deba80572895e4a53ce17dbec7b4843081f31308676108eea4f41b4d27365aa890a247475b628d7821a1a45f672fab34d8a52df053ffb41e254721f7c8b2dda1cb3d4df84057a2ba980fa9b14aa7d71b85fe58c66956c026727dbee687d956cbebffb07448eb82fa8e6945899ce99cc2292c79f47daf73f6cf4f7e1d3114dc5389f0ee43e7020d67065497c17a6fa4a7973394dbd2124c88ddb184aa01b10cd5e2748483334808ab40b21729a0c1aaec92bcaa37449d498c9964c648cbff9f1c439a2225682eea10edd7bcefbf09bed85a7061f51b63f00bbd4a2595798b1805f77bfcd152b9bf1ed0f58984c45a9c8d38fd38e5389f1a6e3316b0ae03871327068a20fafd35ea1bfd146a78e5136d88dca7e17115e1fb4c10ba98bc82a9bbec2c0156497d60327a667f7f59952b5d1e135ce12fb11e274a9ea2d21fbe2aee80f679814f5052476c9e7ca67c3768388a8a0dbb9222e72d7ed2e5f42166382920d9b46d012bc472cb04df4a81aee68df7084c95f069ee437d1238b532671a8f5d6165b2dbd4042705136e4e297f3bb7f93e1e5aa6eb36594b0e63c8a605ffe523fd4989793c6f26619ca013deaca58743db0bedda694db068c35688cbf9016dc2df7a9c3bb24fd758e95f4d8cd3e86fa5dc11e8e989c4e13f2611c595d03ca7aee1f9620687ab212af2298d41acd657cca3fc4d3d469658fad39f5dbe457d887139130b6096b0491a18e3104c298245905d7edd813e4e378045ddb9fc92767338c2309ad831db68a64a30b71cdc33b5396caabf41b6b27c350b388813891ba6482ffa1315d956bdab5518411663cbce65aee2828c784b0684f81a094c5667c0b5384ae979f37ddb3943a385661164212c59527d178e6dfb6c92065c51c1aa8121c1b115b0752f542b34146aa1333da4ee0ec11c232b60fad7617fcaa8c4488317c1202af4bd471b72243e062ed0d807bd6099fb66b1042f8b437a1990440c37aa467ee266ab0907864c4a93d38f1d447a3619a2442641955847283d71ee5e4dd9378b64477f2e7a21fa6b2b73bf19e325049d186bfde786f1182ffe5894fbbae65fd410d1b760c54bcf36fc45178be00366e766cf24b855e9806ff746350cb0c9daa329cfc0e8fb6b1b61e49aa8169bf84c85224623732d75328a9c59f5a2a5e46aef5a443de971df651e434ab3864023c85ab08727f71f5cd7056dfdac01713b20b68f88883cd8d32a326ffbe3e9f8d9ff5ef0d7177e6bc2cd09ef4274f8fa7acb637884c4acaccee534cdeed820cc2755689a309a11256387ae5618010524ffa14e011d9885cccd54036e752684417f485eae51c53bdc670f075494e7dc8852a5ce67d79f0f221863804e69ca18a6ce3dca5a1157518f9deae6c89869eb8ab95cc08837cb649327e7cd3ff60b1533a07f9f1f7a2fb2ea9034045b0f9ad411c76ab970820f149cf8373cb3529f8270e640a1d6db9984dfc9969c07ed9d9ab99b714e88da2a20b572fad4919ebfa5e5db0e9923bf80859fc52e8cc019de731e253708854f2b39c37fe7020232fc0f07529a6b4c7b51eb6cf336fbf274c38c4e67be1f7a21cfac14baf69abae798dddc863cb9fd50e0d3d451d6a3b6ff687347b0846586e4bcb1b488b31a918ad05f57a1f71e26082a97e8502f49657f5cd0907172c1b766353f9e7db2d8c1df377977ac25ce264d58c80d9a83d728d0ce8a5229b1078f01ac7256977bff8c5fe5141a5aa1b070186885cae8ed4b79b8d4d22df809713500a6c98166e50d10d8fc112e1eb6c332fe9a3d9e4a92c43616a6da1983ae159642c10a8ef6c9e3eb9362e0f9c97892e5df399c49b8602df2e62ed56cba728f1ce3f550bd5e244237cd0f30a90eda57b8b00cbc24101632221d8c50e4c3f8be1366409dc0163c7ec0656e0621b55bffe57a205351d545076fdfd64b3b22640fe4c7d6f582fbb88419d1277c954c103c7f1b52194661aecb7799a7e020170338a7cd2566b947928a845595e87edbff0487d98cf2471b55e84404d8c75e946fb1afa65f12b251bc1f6f7912177976a4f01f1190b623672509e313b3215dac2e4a7c5129350161ff642782faa42d762361be70d22df0d4b12dfa6cbc5d4e9ae1d7e13e0b70e5424b6f6e401ed86076c97f83370d50b6729098402bd620ef53960def5e9f19213b908550af0da5f8581518b8889c5e66f9726adbce574e80f27078b383321c7356e87024785143c723d1d86ebf69e1f93da88af750304b01278d15d2e1bc855fe99fdedb3db9dd429e6f7c42bfaa82a76a0cf1673e8ebc7d4c3093b7742c11857eb0ff5a83f9affaa7cfe6f60d46c066f2dc42a7b7c26571cf162a81f1d8e3738e645370650dd7a62f75f6ad661a4ee930383a58d4a0ac9dea8e6c412ebc112520127a5f74e6229133efd94bbe007eb47cd18958c8d6874857763a73fc8ba7cd54a003b00d42abd3dd6984a10a588ae9e060424b9afdd47feb0879ca5270e208fc63c958e4b3cb2ce123c86431d936c1d8358d8db3ed955af7fcf1387a6bbeb3e6bc3a0759d08870b6661d5358018d500bb793a738d8b784bdb7eab8d9a2200aca0fb74225f609885001de21b1889019661f0a9c1bfc2e9d6403216a922813b805d377d669b443531b851c7458aa5076be331b83fc372bd7a1511c839258ecfc5f0a282f025e9f30b480cc70ba6d939db0b8bcdaff42dc1132cc77c9caded97d798d72c5456676fbd769c95c5470cc99fac694168f3a308930f66347d4023af10ea57dc501d1a7a2882ea9dd7ae2209eeee5ceaf792d20f31328e5c0edd96eda4b1be30cf307db518c8392ff0d5fc6c94a733941ae15bb72be8415adb56c281170002c80cfa9a72799604ed7e3ce9e3c449cc2cb5147b8d32d8a5ce402983c34913ec72a61995fc92076d4a4230f94037cd6871cad263cda9cfd7b83bdd4630422d3f58897878a0d926ab0858df5ec1bcfbd73de19a0712518d2967e84c4073b07b41f8529b6170e12c8ccc7cfb5a820c7d96e9fe5d81f5e61cfab56be52d3981e19dcb59e47b59ea46d04a9b9c0a65b63bf734800ca055488638868a22db4e5e767fbdb6806f8fdc27567ca8d0d33a7aecf1a6f4440929a75cb63b3766db8e573ca524b6194b141e19aa2dd0b588444a90ff7a25849a21cd0e1b6627eaa236645a281124f8e50275afeefe91234370f33f10dba1171d2afa56d8cbe7574c18cafaf74457172a81ea69a39454e40444504477a6318d3a967c1f2c777163f435e468d11d59026c289a7d0481419fd54f47601271c9e2ed3d22d4d694769a6e44b7066caf1e9a9c65dc1d9b0939d721d228f84326095d723289c2287f5409161cfbd0fc2bac2c1f523f232cc8fb9576a0e1fed75fe08a6050ddaff17d9127794bf2d2ab9874d84872a4ff723c19b57974c9c875a014a2e8deaaa2c8367e9eb48fc73bb619186f31267406d16684c8f1c0ce5e834db237465c21b9e0b9ced60612fa9dcad8be1afddae5b598d5f2f4233c17951c4198ed18b940bb93566ebb918d46801eb106236ebd951539f77ccc46485fe93b8abc8f2210f62af517d865ee282171ac2888d90dff2b3232558b03fd66286268dba399b34821080943858d8c34bc50af8dfa978c38341d818844e7989701be588f8ad464af638f4f1525daf1f71ca38f67b42b4a8035b7d5384d93a02cd9e09efeb895ada40dfd9236e94fd10ddc89309ac635005b707f7e2ec4bad6914032dcfd307dd0e1a52b2d13e64bbaa7105c30e5611ac59a0050bb1bacc56b8653c1a08e12f45009319633e60eb1ca8cd9d060a50e9b54c35b8527cd67f905c6fb41eebd7136c86481827157110f041792516b47dff2861a0bcd9bb56caa0de6b4a55b49f342cc87f70e95e48e04c217b1f258a6c30685aec7324880cce7de2ce07d954172f1a49042a9db6c58e065302ded387164725348e3ad045870c30cef7a78fc3190b5547ec489551b165ed56511b0b1c45640aea35ee60b4728335a7c264526deeca7967d90cea45c0fabc1d74c02a65b37b3d9ac505ec85362cbcb427e297227e3f3e059bec361fe6d59e60cbb84b118da265c0250d0f52b5ded63f2c7ff87de61a6023c228b30d69a1649de63ab1fa5d91dfb28bc71eaa19311b6beb6e91c47b7298158080133f746a47b37fcb9dbb1da3f98d58db0075d21b1a0cde21290c5d627d4ace05f044f937da3c78c0c526b18f82a97aebc74eb7e44e943704c63fd30aecc3c3b748cff4fe107999bf2de46f34f1d52a085c911177317b204aa3af0964d62d54febdb6e8eed10534392bfcf7a78e28d3ac4c218fd13238ee70d796cb77b0bc0079a47ea2626120d1dd4222c14779b71a352e239aa80536aeebc1e742cf552abb77598ed8ad65ba53c93fd6564c6ea38546ee7851e120864ef8d67b210fc29e5e82424d649e8b8274e3e4f1513ff8d1c8122b5a496969aa68be0e41d80ac368b2c77cc44fb71edf1685ce2d6e030dd81bce11ecce4ceefcb9a6eb0d4d8c50fee3e82c0b42ba5c4981ad6d05c61968c2354d1c8b492bf9fd03cd79f1e950676d3b417ded0c81f00db30ddb11af48f7f6497141ef9e2513b00ac51731880d0cbe606dcf46dd38715934ff674a7f4c620e3b1ed987a5076e9c6437637b3b58a8b0b4c5ea7a601b336653ed28f97b701d19433f315827343cee14d1214080fb2684e1e911db180ef500de4319ce509d9102112b1fe6eca13289ef149c9fb7824b42789e3653a0f89c7e89810657ebd24e07b2b53b4c5e80a68479c7a75e6a46aae11ca5ba4633efaf00b7555a97f122ded97d4b01054d98d071e0e9b665c8f31b43682f3c12a02ff0d93eedb31c9762911ce51ec49a09a5dbb1e4efc101c9c594b76d09186f84d73efaa40c3e7ea30228b0e6fa2f6803f3def27702a0c61807ea425acea87330291244a82f399815a3a2488219a4cdffadecaa47a6f574687c8109ed74c60a47d6f66af35a3f3c49050cc9a4b78bea8ccbe592c345baaf647975b8a1657350d6bcf9b4a671fde2736651a84102cc892a662637d410f9400f509726e08d15de0ddad2ba79cadec8326c79c6c46fc76cc4153f18614f5894562a6e387a2459df5098b941725b0ec30d04e39b47fe95a07bc1409d1fc7a5c3ffdd10b8f2726e167a99954ef879f46f3aff78a6f60e61ec0dde1c7142eff25b5fcecff8dd21cc901a2ea145af12d649e2d77207740117d237ea33a8fbd386dde2a64d1c815b51ea9149a98d923beaf421f19f7bcad856e975b6a82bc3a33102901c78873ee134b806c0c1ff06aefb6a08f0d719117acef4fac6071d852c5f2d60b4d0cac96d4184cbfe2065b406566a8b3cc11839da4a99ce7eb73c525ff9a8a688c5b308606f05d6c43fd66147c10f8e35234a064e3190641238537c2347b45c32fe6f08e65598943235ccb62f3e668c3ed4284361d4f0ef5c69f72ed5ce78bfe86b49e8b7245c2a6e7405bab3d5588048f8b1d2d37b1c3bd2da91fc2eb04231d90315febcb3ff632eaa979f2fe3f613c53a2cf88d1c2b1d2c9d5869c8cefdf35956f04048b4ec092d533fbb8eac741a64dd2f24532998a092c90571e726b7501aa3c5c2dd9bd7385e954077bc75e1f527bce9b0a13bf8730884aa70e92968d99be3e29a2643415402dca017a9517eeda6a2ddcc71d96fc0aa1d66aed5e4273f19b2f330226e2f93526c48ee0cfd5ee48a18567d03fa4c7ab69eba8f8d9d88805311ead826f75346f9a1dcfa1ba4a75524acee1fd48aeebe9668e2be3dd84e39884cc3aa79c3617e52422fd5c4d611089a87244e30674f13a4d4bd94fc6216bf96da8b423f10a439e72865ddc9b616320703180504b8bf4fa25bd5629bcf079a07ccef2677b81bfa5e3e5013ba5c908aa6e277e3beb011fb24e0b639f42656cd49ec19c277496bc56117502c0246426b9781509fbc19055ea5ca41c84400f23e0ed9ebfd50be64100d87b489d3d851023bd61c1eb32a65fbca145ab4edba844dbfa71e529de25d2af0488bb126d361e7042bae17a9cfe668eafeefb9191aa4dda107ff961a353bd9a8ca9f4431408067f711a82187d97287f9ca5c2c66fbd735607a56bc2277b65ed0e4e37efb036dae58ad725ac156de6623a4d325bd70e68c3c0422f3d64a511afee5ed05465c7f7e13605bf171373aa60ea7ec8b287f26bcbe32ec24c20d5b4e4449e0bec73a29dd5486feac38cf90e3e810958b09c675b6181ce203b1ce7ebe4dac917f063ad6120ebf9025997914138a8aa30035bf6001ae97d7a566e4790812dfd07aa26853d6cb95da455155ca77465c8749229c37bd0736f93b5899da9c41c21cd102a3a5a42ffa2be8599308fdb962bc7fc5ea15fbda7cbc1e2958244dc6892ad6b8dc42b1500134f318561fe8543cb89f28693fdd8ca54a28b8062070001f300430c7aeb0f8bf737fb8502d425a7bc0f568cc5718ab990bc67057d6bf399e27ac75574cd6b5a515eaf9492be5b03667949aae1123ba6e8b6efa42efdba5fec67c26231cee37716519d6ef5f240881ea12b7005094dbb0f4cf14d9f3f754957d05952499365c720229807ac67466877fde8a8939bffaaae7ea379cd40540fa88b180f106661f4b462963baec8c10d905a50d96697a3f74fcafa60298d9fd97ad7180297515291bfd25f571292fd7aadbf77225c2ea43b2082c499bf01d54bce407b01bd758fc29f788428c04b8ccb556af17456ed6dc0666220f1c30343f310e92522933f889e2f65ee2cd18a2e4dcf30b9e078a9d549e6d36289f5210f9d08b01050cfc867a5691f6667b25a548f9e50516404ba18ce060e89fb767141bf104768bc24bb34e3aa207d8a1ae267f0a3679f1dae7b189a36b41082a36fa339a645a14f4ddd7c6d5704bb1afa1b2a558580d727f64f113a657d0c1258f8cc4c2524f99c2379ed109d569aa0eeb4a592b2990b0e350158060929de4d884a4678588f51717ecd27aae61d9ffe390717204b1ef45417ea4ee90e096073d1be3c21220a5da75301faa25b4cd4d72036a25c6278c131b046b2afe54ce099f9edc57d04007663706aa6c8ded8921e4b0b596f04cc667a0d18f360c2e0e363e863c5e589338ceea567453b7a1a8d0edfbbb52c6f7b387710c14d64f8077a0289a8795b42a9150416e9c9188f844f6e237c43a1e05f4bae1ac856055bea24c0ffa021fb821e715183662f1f07405cd5b0e5094022646787ff5da4ece2caf4cd7282070c2464bb9ea4cec8c506a1494f7bec5e85af8f0143632c15c4852791eace4438dd6265f90b7ffb7cdfe613360b9bc5f7eb496073ddad8545b2d9aaf4567eca85d89013a2246989aa13e099da3540320a6252e7e8dada0c0b5c43361b0823cc76497508aeee275b309dd61c2480adf6086dab998fd52e5f30ecb735923418d83326b112a80ff5fb4b7dfe3afb662e83f41d2836e9bbacc527efc4bb05ac113e421cc3d829c86ae47d8825a7ab9b656c7cdde9d13c9e01068bca5e74b6c450bc2be7c4f83d580600e9e11d215db08a5e6690552adbe2dbfcd37d00cb908fc7357ea644a846dd6a3c6427ed45877a8b5d1e87da0ca558ece8c82d3a5d044f549ae001ab419f499b383d5235bea5ae491d00432139637163077006d751b63ac5668933b43841b419a544919ed5f203677fa9f80813a57f850c31429f428ebe3a8b36cf67b9e93e9cf760a15fd195014280329d14354e68131e1cb3a7bcfe49651ea3b57ccd87956b12ab935b59e9cd3bdc6bfd22f3291f7e97d3af937afb21425c5841afcac1186f52221da2d85efd29dc59591a7ccef98041ec600c0ff97dea5d06874d6293a5855c98ab4cd28b37babd810b5da50bba48430eb14b1a20fcc5f2e96689cbf7b193738ed6a02953674a73043f9b6e0d8ab8812bba8432be057e8bc7a54d9084a4f09b07c331e25bb9f3addf836d0f43bf13fbe0eb4d8fe401a5d895444a943e4dff4fae1f905ba39f3fedb9283b0a0066cf91e4cb1f5b8638e2e1ee9f9de050c59f025f2893e072320f088eb0c922985cd22efa95bc774d725e86f4a4eee1a1b969bbd28a7e4da101280a8da9d2ccece82db559822c0d153cb84ffbdeaa3e13bcf02cf2350cbf84b805c035c40ce21385d6d21c3b83c55c82d0bcae7a6c561658a41906511f58dbad56d8ebadebde1564a39e85162c2061fed7d4892d870ab376e2343b8f65c7388ef27e3131363948bd4f68618c28d7376d59a19e63d4faa318271ec7b0ff323fd5319400aaa397f97670ffb649e812cce7b293f59706ad3717d606622de0fa4be3f06d4a990c2a7222077ca10bdafc0e0ad4a7817eb270a9ff01b0e279609af5d2979d4445c1b78fdf2c12b8cb259ee428f55f88aee7c9edf2fabbd92ec02257e8ca28da825014fbafb6fbbc684f5e9686c301103ac687219ac9dfbf74bea102eb96d6a212a8470cd30bf85e6ccf16a2306453d90df16986805e8249569ee5e2da3dfb1fef2be1ed8bf798b913417ad7ae4f4a22e5371204e05160dd094d3be9137a9583f1fd1c73546a43b3d7496dfb1f7b0c8a1c96f6a105447941a14af7ce6ebbc05464723f7ebc620c82e034e33d9edca868ff3890a96a3683f388a025740ea68ae2465dee385fc2ea1684256b7eb318c74ca76575aa3c38b9700c919d168ff7731b161c3c26c3920607c99fff367454775f2819f2a4c82e27a45ee4c6d713f88ae3d7491fa4325df3a1128e01fdbfd37fe16b5fd180a9fe265ac50e3825308b7db758685a4204773d6f4f02f1f0353347f6f95c3d370d0c61f43a350341ce3825c2622a2ed50c8f47849a7c5f2c84daf9c1476fa350dbaa5e58e00083dc0000cf0567f431de47f94bddf8b7d606ef9ddb9aaf1302712f6b11611aa3dca09e906781a05f4ee09571359b86891fe023a06d3e25e82c58b8fa563084db5806352751550b7b447ea166badb501750987bfb2fb586499b70d26546f64437b5bbc859eff479f1faa314b9a17c82f8c7055e69b1f8b70ff01a264dafb179304f04c0a756e962768a9a912e6d60b978e159c16b193b661b57334d773e51f8aab7c8512798aecebe492fecdf1aaa884231e8fcc53df0d0e18947314e1c69fa02692c49b81752a1652e523d9f639e6a20f310097caf96ff24eff2b36b43497c61701526c0700576b66ca16d86c0e5f4bda98fabac972a5268409c76c04ccefc0e681f2aa4dabe5855dde3bb84c610b7219bc7057eec954b0104a72a5183af1458ad94ed1526d1d60664bd60379918d8503e2e88dd25b2888812edfaba145c4a3c1ca32fe2aa23bef3b3321033a4c5a36de2d6fbea98be63b66c4f65cd2ffd0e9f1d56f74d4310ef15464aa89a30b9119fe21c270abf856bc0174b84d66c7a9690623da73af6f469372ec91a41f311f4d1d8bc566d18a7f636c6c335ed7f60169f2b761e994653da79badd317ef43d80d6932e81bc48351f09199723ee2ab328055e59265b42f1c3b18c2e168d407304994f9146da4df348a3817210f08fda70c2f0699a998436e8a24b03d2bc240558c7f093cb081cf3b737b7c1a4d63bc21537f7441e3360d301d23beb3b64cd595a2a98ffd8883287dcab92a917a450c32f0457615619a345e4c1a0d1a0f2784a6e65db8ac8c935a10f9bed247428a3a1461f4fffc75fb2fba86913cba1c8888f5b677fac56f0f29b4a434db51daa922c8a83692d0e3c8aeda639d012d1a073efbeed5a50120833c77497067c97b93a3b38aa7b2c69d5488f8ce6cdc9dc7a509f2d86fd48ef44f35caf0601ff828ce79a9bae85ed0cb0d51f950f6896a7042613446e8bf86810de79d92e1b43e58515e46e8e08789aa0677661bcd3a21dcda24548ac9c1e4d937a64b7242fc1a1f5e33aca7c54aab4e3cc77a8025562999a02f1e256a322708ff6f618e4b26bc1d7982cc5b4834b93e7c0ce434c517b9b4ccbc46971e4a7b98ed72c25c8f85b7c59de4ebee48e6b717d5f302e16ab2a1bd923e585736a5600218bb8784d76ef309e97ef243fcf4dbacc4ace6ac104a4c91e9437f4fe160518fd13e7a03aa4378cbe0837935e95809aa220e1c7013c5f64d2218b1df89655793173bea38acffffa8a66a0739dc2755845633d6b3262d92b7575207de37b70b57941375907bee669a2080e59fb4dbbf0ec30f087a2b84e9b42806933bc87ddbd88fae7580f7714c34554fa10a2bcbbc20d4ba43f1943d9b1f6d9c3eca7d536996b6c288e4dd39459c793f112298f356712f4a43ad8ea7f4d99263508f0ece5a4fef123a7925021a10b75d9c9be673fb004c1e1e9013d88cbd84929cce5b6309f470e6b8c83e323b2da54b932d11eaf5606eb52a1132b5f8cd2731bf7bd8cc9f7d148317a4c2129f4ea02d26d01c15c4f0e3ce45af3388fea4d7e649653bc07aff0e55da3da59a3096098ac0b7e740efe62d143bd3d4cbd3c90034f7736caf62aea28260cfed210e8927050bdeefc6df82b66e03a01a2af0502eb48a440e773535bf8b432553462e784508dc69b44c4cdfad8e590839b1c4c5762f1e9e6ef614d72dbb0c21f90ba49d421804a7cdf07926be2dbf796dfda873e6b156d1d30dd2bdbd555fc41e19e0695a7e65ffcac9ef5d916aeb5e0f61c9830fe45142b7acf6048e1982f8c17f3b353a1877e4a3b76f73cc4db9dea32e98cac422e1e895d6bdcf8eba97ca5be49bc412713ae77dde8a212dbaddc6ede3e5c7b34f49ba806e1765dc0aaf07f2635d85206dc3765eb547db455dfb6ca5b32685926e5da9e01d5ae339a179185cb2fd09a517374ee479e0c3efd52409b95bd57b40fc0ddce221060eb47f65db44d5aeb5d10bc65192c216fe566f5a0fecae15b6f59e3388ef76b47a6ada2df5aa16bd855a2109b643424ff6581d7ca065aa4f1fc2a0305fd0ac6e5efaee3e26cb5fbac13bbebce9fcfef242e8aedd191bae65adbabe19570e818dfd94285e23ddd6cd32c170794b6f2e87760745234c6297518d617f0d84ccbb40e579f6ce289232bb6e324d0cba46fdef0af14db7d35de1890f445068321b58322304bfe3f9d30f6ab4e4307f75ac19a21933032ad748768efce39da6c1efb4dcf04cc7838aecad9811b04362b6d3eff40a0bdcd4b1c249159c4a69c0b81aa25e3d420f3f9cf4bc03474df109637295c6ad9a5a5159395cd1784531216de9b5792fc0992374c2cda24c962294cfd739640ad578145bdc3355285df3303bfc4d62e9477b2a85228242f3fa513a2db176e08445d2be2d096fe2687d8e02185d7549598bbdcf3ba250ed81ca9a047f8308fc215294510e890b2e2314f0d1020ca10ce972ffbca778ff0ac8fb8343bde947e7ed9d7348a603d0d0f3ee31d5126867b970e676a3d8566b1c0b9ce50f95d5f8d0fe6840be71e791672265a21888c918bfbbcf1ed08b07c07cc65c7a147a858251ec4b3bf1333a97533ff2554dcf88fbf8c6af103e88e252dfd8420190b3c87ee45d5b3fc11c8282fc975fa57788999dee31b429f502cda7a0e0ae90b460ee3ce8bb96389e96d226aed22204781ef351591ece4ab6f6fb6c21dcfa099b0f18895182446aa66773f8a1c401aae487a03b74e1eaaafc2e8df1707f974fd6d33a8289f5a5520f5e6fc05fea717401995d9b3816490e2d3282e269bdb00c0cb43af5e82bddc5bcabe1df6955dff7b37fa4c261bc0a5667381ad2274d034af99e5a39b2484add9706608824baf17c3046b0b4e65cd9e209b85e02125e398b390d54ad34c2a84647c0fa403a0e3a383cbcafab264b482e5ac25ede2696dcb146edb1a0766ce2563f8b81b6cc76fce68c3ad571f7cd98c92914fad89587b02967c41a933e7bb8683eeda23f8faa8bb9f99b2095df701b7a2fd219e8c6354511c174b167b90bc1584418f6af0a1695ccaa11f15ceb6080109515b0fc82fb26a330da4fb9bbb1b2b089ab5459639020c8eb05296e52904ab1faa1bb37dd08db1fe3e76d3cb1b7fbc2ee5970be4ca6de78f703e93a618ebfa78b9da1361e16a7189920b9d779f6492ba49a79a10011e82d7ac456b09671f857aa328b3431b5931bfb28c087dab837ad82b276df187af680f8741c5cdb323f66cf6e0a4a0390f8d7f9df0868850a09a10b89304a7336dc8af94d446314a7831c7603e334d098ffc8dda6bc7cc7054a530f3fe2e4bb961481b70a5574f62f6e936657c28c1dc17a9afafed5b2e17b2dcdae0378c29422a9a4e6745f35f645db3fd915833cd54904063bc31c2586310ed4f04393083948e2068d6dff6f8b71d281848abdf3753eb4e7ef9f940f6f33fea58429408b3e2372b609975050d53b8147e4bbe9f9552263f3c255ef771b846b0844af834f4026526261eacfb46b4e8ce7393937d778c6ee060e3d54705110951b728d4374d89f324ddb34fdde7651ac6f1cf2eb5e4548e18b5a53284063cf625a0f457dcbe598d3b27b5da775cf914f3f26f0b61431398cd5bfef19debecf7ed28b0dd68f40369c53ea550fe8be274e16c1a8c1c67d63ed3d2405bcc243f9c0e19aadc134d5fa1bd887f3487bce598e423395ffa2201631cf019c3bf43c29da073997f3efcf1178b561df9b89d1cd8ffc3d60938c1fde882932c056b4fcedfbceac8798adcf952fddfcf5ed059f7f3e6ee3bff747ec55110d10ebfe63fdcded7519321dd4f6b093cae29d732541aece8ad379921daa1b7fa75e58a8b3bc761f68128ce827d77d571f4f54dfcb95c941a1460f5f753235ecd0507bba475ac4ee0b709d513fb73eebb0f8dbcede7497255faec9f2194f2ca2aed4589d7812c4faa3fb1882bab94a7db8857fee13425084d544874f62156573f1b60e7665e3e6221c669ac1c928bcac58e947f646d7d2f5550b57813cdc4fc27e6fca23c91fd50d85ef437acb96883d2e3964f99745139aebc2e23dc536f55fad1badfcb9c37a5338709d210c92fbceac185834c884a0e27a410ac47edd8379309afd8cc1276e1b5bbaaf356e08a28e0fcdd6be6cc4d20e5a7ec75044f63487a1e28371f65d539059aef9c03e974431d2deb6058c38057fe86fc7668a693b61e03cc22bcff6a9b32a1f3b0e5dd40bdc3ec6e8c15bf469bc888011fce8bcbe19fea8b69b3c832d2eeee7890ff800116aebbb6824449c95744d9d631268fe4ed044d3d36bc90b55d64061a2d9783bf373daa4bce1d43325db9be6039d1fda2ae9b72b763baf06b39b316f53fa1226325a262c8635a2490ed21dbc8406e363e52386893175340250d8d74fbfff5743916caa60c05c46a2bb011d027869377411e6dae324d2443a1cef6e018988ed14485241f0d761c7bd557b0a8de8b6ee49fc16434d5fceb35deb6ac1ad811b01c90f84954070d3c20cef176578a49c4ae57baa02eb5d93b134745bb7f1374fc85ba515a3db27f44246ea86b47038333278dbe67eb95659d1430ea68ad0f49d98f98300d5d30454df14b3e982e7eb89e7f23fc9113b03043ece7087650d60641dc7c2d239ef0954b763bd21eace188c56ba6b3c65ea0157ca32728219b507ff16e24397dc4d427a199fe80d34ce4d41ecb48efd5ed26b30375cfd1eb95eb1d61d86a13027f33bc00f7b4e7d702e1be367dfffa112331b326c413ab70a98f528d687ce049ad37b3632c37e15c68d25c7ff21850e3a8dbc623e1f10a8072a88d6e24dc6d1f352477d72f5b9e79918f63edd8f65bbd205d6298e429b9c380beaa9692e474b2f7e3be00380d0d371b4f005036e5837fe460ca6212257ae9bb2f9abadac26ca422d4bae6419dddbc6919722f1c134d642e17595c00e2a01af1e254148d48a39150909c6ba9b6405c5f6b50c69b5dda6c2a97e7cf14bcaeddcc762d52e2f7cc995df2de759ef4b48a9b97c5a52973d24304a1d5e6cb00c7ad51376fe5986c9bfc9e8a1c295749dcb395db565b572c8bb7d0d1a4dfd0916e5d963f9856698ac14022a2d5d3f8581aaac0a5ec19a5bc2587918e84e0407f5752af3fea43b673ac6db3bd947bf9d0c920002f12da69b5b2987a7d516fe964647fd1afe002653f7fb1b4f123cc9255886663c7bc46cf337160659bf95c8ad8868dd99caf6ce8010b1eb23a577c5c63123e02da884fb31db65399bffce1ee9f0ed6b1ece0465f07903b4f05a35f19cf33bcee6fa590b75ab3f1bafd268cf900b9777d76119a5f5bf678fdc1b69171403d74b15e972141d3eb3459f378846e0776f42c075174ba7cc2ed42354bb077b0f7e2b82228233007c5119651d14035a1f3546d958d44944d879af16c95869f0a9710fc394f4b02c0b4add1be095aa73fed9a85e1e404212db214e325fffd0f3914e60b64e9b9aa3e4393ca1512ba9577b47beb329cf653b3fff7c55aa566eb74d61749f31456452dd1e41f4b3de6330decbf6567ba45b29f766861fb541f5cef1d0b89766f1c91daddaf72a53d107ab06578349bdeecfd2f975b5b26e6f86c2a4b4dc46a686d66a572c995365200364b183e91714978d4e6612802873f0f9c793327d9517361b7be2d89c113899dff995f9f63990b9a34e045a088cd625ba3ae82f86c5b28008673cdd79230d025a2569d08c87e47a4074b9b8d9e7f8a7c6c4561a8adc0be4fa9f522795adb6b5fe9fddea52bb311b7f6fd296f655c137b24790e3d821f18ffaf86bd146c69990a5f6c16a6b966231809a7f0cc270d4fdb6c0d3b045f0c8c2e0218302e40c1eb30cee871a9f1079a196350f958e8b585f0efb5102cee6e2f10ca9882db743516105b80d612f7028f3473017fd81e5f76bba08b2ba08430733503b55df6c9d8b86644040f84526f399d105f525d511da96143b7c0ac07b351e012f227b59bcec889d38d76ac50b0a55c5977761a07a6c112a1ad06da5f44c45a36cc0ebc78079c39445fc9f5e52bf45c797c9242e28a4ffe70df5c0f96228a1d5d21c648185d3d2c49ce3b03d2095d19e17f3e3bdaad34039c52154121000d675ca85c04f827960f377b3eb85b1fc5ac7ff08c9796811940ed82499efb62e6969dc12e3dbfd29889458ef788593b1719c842f6ae2d08af2ab4c5f0aea08e1a1c90291d82b0dcc49ed29b9b7426bbb5d2e4652f614db3c5a117f054ab243e6c8df2ea514b1f8914740aa341f74bb7f03c5410fc3e86ec19f519120993e02253f8f873f84e9bbd8906881ab5e2b5817f2733ca47c46e45330eacd12e4cee6310874f198fd1a4b457bb6095e526c18d6e15215f6a603c72a19190cb59cf1d36fc8a3eda4ecca859ff70eac58176ac25084e639a9f8ecb1609a70e9c5846e34f8d5e171488001c70499acf3a1bb89614cded3402fce87d4e4dc671856591c986fe7efb18178160aab8a99c14d753176cebbeda18d21cc445f5fab789780dd0ce4c33131b856e018974ad485dde7b15833a509bacece5def520b0bff1b0f8707dfe80598f6e379b679a12b6313b7d2851b413e14bb8c5d72ab17c0ab75805f6380ef92745849af25a3c3328d29ef64be84d1a6c6fca9faddad3d95a8281d6e5fe0b7b4306d3f595632b164ff50576596dd54bab0dd20958c18e6b7c7bc0b46e594ac1c079504de8dd24c776dc9b5afc9a6472998222940b6621d7d813d291c41a0c74d9167137cd83848bc7bf7b3cb06f5b3748f4c4a547de41d4fb9d280a0b76c001254ab650de66f8c3a2a3de01d1b5589abde26111cdf66e11e266d31946ae9e64afff2117d9380e9bb42d041e500a2566443d72cdec67b0396c6d2b2e6efdecb446d39d4631778c3bef479586879e59d7c62a30591e7dd232b0ae402e0e8c57e07fc068fa72e260cda07606a1652ce503424861cc192274d156f2adf9610e664e79032eaea2f8ed288cfc1dfb1086dcb8083774d4583a2e7010b577fad338781ea8d0376dc8327d82348d6e92a97e13f4c4aa1e8d4b290690c6539ba20401079adfa5213c1c754305bf3191675238681e52ced6b15268e23d579fbba4dc512be3ed6a0aa53e43d4194133a6c208ab40679913887866a1470acb594207965ec277545e3f932f2af2ca63e00e1d0c65b524a107b19821d32415ff77b460563cf189283a67a3b8dd1925c19b3ce643d0914da2f7101d8ac495886365cbafe7e04328d2c3276d4426b9605547b7ec663177f5f1971bffb7b39a26830bf122cb6e5f241fc10967fcdf274864db6509ca70017302c97096fce1c122b07a95887c40e94ff61f9b5ddd1ee971f63498788fa95a8cffc9e739529b1f02ab1e892e5cd7f2476c45707df4b40f4ed07568175bcc3c155c7305da0b883a7b3d7d1b1648c10ab28524992e5272e21afe545ca830b83fa85716dca5ad1fb901b9c65115419ece8e6391d8b76e2ddc77e6750a181b3b0ff2523f4a18511cd140779475746e2cde39b0cd6f4914445cd11becc5e0f5347234705567480e89a68e347f9d15391a8d1abd00a9c979abd3dc948630be301bbb682ad780d5063cec9e77cb80d7c5681526a26922f9317a09e5b69ec44670a62d672939eca633205223afca602b98d44e494a747b4892d57ff6ed99442a97bacb9dec6794ae5de234448047eb684f2aec2134775f208d259f016d4a13a318a7be6b87f12f996652f7b52ac4b9afd889191f639c0d935abf27e32797d6857b7c91bf2c2bb9d5f221c0456967337011f069038cf6a6bbf9281dcaa20c63aa053006e89d8b93fada3a584894b9f9ec3bee83d919f32d1dc7f73e62d69c683ed9d43df54210257413149c11da7e3c088ea263526a0fb979e4ddcb7e539733ffdcc073c845f7ea5004943307a75885583a64de9df355eb98f2a2845ae260ad169ff0e2a054a30bbea4d867fbde15bf5454b437a1aa6307fb3920d2c7b6d122fb8bfdcda312a3d17a4666dc341a3cb042201ee513f0c5e5017a76281a8a468d1818e478a778a0191a5f331bc5532b01f4535d656e1bba190014093c22e7334893e00cb12815439e5f79d68eb2c0b9f7fe5edc8678471e97bbbb1ab0887e15f42fd5f59a82c2a5ddc9931dcebf635e09a5494a892668f9e8620f27ae4e435dda01b0e8bfd35ecc2b9182083ea01c86bb3a6df7756ab7225ccefbd6a49c5eee1c8f27cf820bfa2fcdbb73f921fa8d583a93c0f8fe7a1c1f0f6e9c72c07b302c274667b1ede4d769adba1406eaada12a6083e19fd78bf8aa5516a7f6723f5cb100912161be1af95aa3c720ea248e3dfa98f2eb6d1a3cd3b3dc890c5d334f12070ec1405cacfcc1b5700ddcf62ae74abe163b2ce1666f364454d3ede61ec5ac186aec7872fcbda2ee44c8d4421ee41e622a85644f196182a2f931084baa97dfab60e5a93672d705c63f6d28c87e695c1307de9e14109015b836bf90dcb0b93270b8107d6de313e44b6bcf51830c25dfd82c41344080dc53d67ef1d0341dfe92d0e70bf8de045291a27982ee11bcd0b974c4343eba891fd4452ebfd1fa2287b68c322c3f0bda680ab5024da11839e55e1424c789b41a9a5fc50139bd811d2bc6980e91cbffdfcb4ed0c776477f1d64bbf945641469197bbf6ec108e964d1221bab423826a1e01ca2da7cd60a992b37bc206a63e9927903fb0aff6c73ea0379624374a4394830ef6db837e985868eb7199b7681621b0c33ccdacee8ba43a65094a37c77c50c066a550ec659cce77a451c7aa1f1a976d41627e9baa6ff48c6fcdf4d249bd39b32a266adbfbe5ec861d71b6da0082f7cd06c99abe94b2405f6694e6d1e41f83a31a065ea1d5d341f2ef5a94e4198957780848c98dedad97e2a50737ca7e0ad0cd85af1f427f973cfba2b4f0b51a69223d133ff88e059f564e45a4b1855327e6f1a0d746b44af49d87c65b47ab72f8e2df3a6e3d4e4bb101f5839c2e4b713610232d52fcf1d1a942c504787d7348fb252e8e541331dc81cb1c1efbd6e4a61fc295b9e98ab23dbe34f8bce40e0d78b1ab4eab4751c627bf0c82176ac0496523a46636d5cd4c0c793eb08f2063f0a07f29bc8d4ab9d8c0d1a32c4b660c5e215962146a1b3a93a25c000130e21606a2e0ef5281e9ea11685cc4717505e602a4bb4be1a537538f7df0f85beb989d70df8ed21e4fb5e7636e954a17a38f906e935c3c9d3396cf9f40b05d5f6e2e7539898c7019df2acca50b16f1d21e314426f1bfada4aeff695d1776511b68ab016ceb71ac4157156347bbab4722377adc451501e66f475b5f3931c6d2a1ce01c6b10d46bc5c43ab1e1e036ddb37cc9d5ba2280d5745614e5a9487475fba1d374514b952a5fa2dab4a7abaf87cda1e30c10235e348378cb58d667428cbd1be9720c20ef36953d83b09b52964a89b1f54c5a880d5897653b3a21bb47ae6618302af98cbb536b3cff6a9512c3ba927627a2cd1274abc76c03ffddcc0bcbe5e6f09380dde718998def4aaa83dd61547e0d4e89c44f5a1e1b9490157224204a5745096c19478a86b094c2a7ac4dbb73d742722490c3b45d5f3965381beb42e62e57fc2d9376a803f8d6ed1ebfacfeb9a8997fbf1005af50086e18cfed783d1f59cdf409e954d7f4b2d90f8eef198e4ca459a9fd45601eed8a849b6a80cf3b855ee2e0941c912a7c5b8c4246b3bfd0bdc7debc757ff75e4d1105ccbc8a14b1a3eb452040229b2f7ae2ec64f1b033e9c3d34d9128c0851f86cfffa010a890b46ac49aae4f17ead58832245c95b4288e949cdc9f65bbd81e0d0f322b5f25a365c0f354d3ed522a0343e3fe31d7e6b694c0b25a2da29dc51dc1715d69fef4bd66df33f832f20910066417dc9cba1faa4aab90aed5d37e139033c4d048a48f8ae4a71d911bc5e39a41209dee029601b0151a03734122e62e07bbd3a694e2549af1742347776969fec1c3140621b6c7e50652aa2d47b8c279d6ce959a332a70c8f8ff24465172a49289348a9fbbd72b817a3f4adb29a6e4221153d52c0e422a13197e2ef29e8f2b6fd418aa60f4167f467fb89ce91ea912877d659b7943af98a8b05c37635f17716da36596daa61bdca015e34a1d5af5856e1ae44516402a3c53a7a08c60c287eb43fd8dccdf22636529c2d424e3ad6510f7a00464ea3b5d46c404e084c59ae75c24feeae7b782c2d57298ff2f6604d0cb3d3f6e3a8a8ea60ef6e5c2a5fa69226f8cb9916fe4f354f213d9074824bc52043a9406a312e44d3b9a7dde6fde737c60b2bf89f5885237d4d62857bc6690c3e6110ffce8d20c8924979621ba36f93436d91caa0bcc32ba825289cfebf50f39944074b237b6e7b74d85d666919b7788feb8f74a006e812d851c5266d0d79e5971aeec5d7831309cee953c2e704e8a75e0e7b5c8d33534c32472b93406686b60ac1814312c6048efb8397622a96a69cae3029085bf62db044eb0ab4a1d0b21b79540a026dc736cd7840663de68757eb1e4cd381e8a51004f734c5386273ec9fa387155abff2e32402b582dc7c30ec9f4ccd6135d355c009e11aaaab6f10fbc0fd785593727c755af4b34bddb5786c6cdc790bf58b3c1a82e784a8940d6355631dbe9696b42b6da6c0ee2d914cd193a006c74c91a6acd8ae35a114174ea5d5be7aef0d6421de823b649855961cf643ca4078ef0ee28f67e0c518702238685f745b705729bd4ecd72acb4b3de198a59274592de761c9e87f2301c1c9576d3fdf027f103a1df5193d85c2149ec0bb0c7812ddab1c5b926b627c6c616213100bad18a2debac618525740e8ba194b38a279135fa30f16fd82631079446bc576dd95833d6d0df49c3520486c284d07237aae4288f6613c9fcd60e3be0bfc6265c207a6f3ab72962e91fdade2b845b565bc420943031cf93366c3c8bfd492c1dc4c506f54d3efae01b023291266b80ae3fd090aad052385be34a7b6a0785dd1a0657b14362503c7601a528de7bd90cf91726f4ca80fa180294a37fa919d415c8968c7ff898a9d0be11af79b3e0f3ddd681d1f580305a4c70b1ba4423790ac62e29aa202aefd1f2037db433958181974671b15044e6fd3d611cda00bb44ee6cab4f694b97caa077e940ea97528cef2ff540dbfa67f89ceab3b8c638aae182a1911102dc4ea984093cccbf62a08c0b76f1fcba45db2c26ca71acdf60ce69ab609315e70c9fcc6de2290781580aeb03e8b94d9a29881b7f3de61dc8342140f4c54794400360c0f7fbb81e5730f943d0736543fdd5e07cc6a0c0aef729b668551efeea5e28dd52cd9d8dfad4fda5e7655e3fe50899269c926613a4fc1de9a1072126b07d3e1f2896d8c7b09c977cf914bac26f1a9bd282261270cb36f982407d84a905883e632db36e4c841e8a1a289335925095d2479f057a53000ec45367214cf711cfd71b96f1472f19e438c4cb06050160801cb8b9bfdd8cfd41008cfa9134314b4ecf191b41f5195ac033fb97f73614048194f31bc7a10194d138383ca360f85f07de633e5fba5d0ae505aca8ac5c16c2cbb3cd47d65b95cf69f13e703ac0715e00eee90757b2c24ad7991e0816903f726c419edf523e09fd463176990df1f479904c14f6448f53f37407f80ee6f9bae35db6bbb52c17b73f940cd866fddca730be6d2953e21040fa8cd6dbefa2fc20201a2b1999bc67309d30226e766129d0505875f1796872748b67ac79dba7dfdfa16420388b94242a8865183fa295ffc80874618a5e3abf2ccfefc46f2efa6e678ef19164be7cc3479acd0297ab1014064320d3cf3ae8314c996e73a066bf1ec75fe6766e320ac06c917a98f47efc0aeaeea4de1bcd5f83e96175222af236f35292906a65c6798c8809139e0d33854a5194cc2c98c3104ba24cdd6f340678bb1ac4af2eab3832944570c2a8b814ceee04951fdb0303adcaf418c578cb0d8cc3742f3ee24493af22e7596e55235381cd7bb044c0e0704b1140f624617c9ac56ac8159a76b0ca97237e581b8f30ae877bd33eec1bab23fd93278b8f75fa1dc59221aa96c6a32b503b1eb74c7092e19693ff39e8951bc0ff516b0d5adba19df6e2428639787960879e7ae5a7ff2f2e29792a214bae4107f36f3e2f612a0188ffb36659da7a10709964913edfbd75630a5c860b038a716e9b86fdc8799176707f457125fe5b85485955a3501f089637a38a6cc5934d012d31bb48e2cb28a54d6012abf35f3793d7236c1a2d2554a63c3349c43e1c912d42b2cf9e8bcd48e682e3824735bffde9e9e27b44b25e470a75cac4f7aa9368a3d2163ce6e5209d2caf6ecde6490330f92b74762c50d0509720c452ae08bbd23dd16146018d516825bf06f4cf2c5c0c42322915d061ded973dc688cc36867a67d593d0a6b93117363742da3ada3554b8b143f430d309fe8560d862df63e3a8e6e9ff8aec3c21367b3f11aee987852a32ebde56af77779f14d306726d8d1ebf70cfda2ed59284f56f3e5bf7930510b3c9ed2869acf8bdaf45042ac8c8ad1c3df184ac4823024351649014b7be4428ffdcf0ebce3fabe0af1acc8ee771aae9dba6e740bf5ccafbb46fa935b6de57ca4336cf7971e18a03849fbba076d3dc743b493514440875a803a764af246bda98ea2be6cfd3337692d5f6c6d4c41c9e9303b4189b6548e716a4b62e25361af376841ac791a9617fdad67d9b43fcdf7c6b37e1369d5253a2a9e3dbea19dc7ee40736379af9c33a1df7846ab92899f63d6cf056964c44579081a18d68ef07779d4d295bd128077252886a9c23ba8a7a0e9b99ab4b6ac023e1b99837c9eb327c36cc066b3d32f4677497583658f2476ef7ce65a34c63b0c671249d52626627076db0dc6d857795a8b23634f3273528b61dd26bdf18b146afd05fbd1bb056956040d7d0f38dc9f638c03132a0ec4af320dfa2b612baef877be166827a58b920bd0cf1c1aef035e30ff3301c73e20f5fd3a969aeab3b9d9b52d1ce42f55cccb8e7882eb25d4fccfb3d8ad864b60016ce886c95a0c754dfac37b369bdeb24f11224a076b0559610306aa062e755578563765bb93cddb71a54280dd4b0f1a7c83ce235b680d59c19ebc5ea2406639b5c47826e8d082aa4f8d2bb86e92fdb7bda3761a4d69f2110b770ad6a70b7f6f4d1656a65e2aaadcb907ff1ebe1ecc80bbed028c326d9681bf478e0ccd91dc6f8fcde73d6a6eb557cd35284cad5c47da2be7bfcc11c9718a2f66b89b0355c86dc289090b20f8ebb2cf74f40ededefaef157d6cec14c40a34617a6749bf2af438d355c3663852ddf66ad99ec9c26cbcf58d5e2b4569f24035c832607e1da82e41c34972ccf0bda0701955bff117e2afa07627f63d25c2c7d4efe040cc3cec05bc32b900556d55df406fb283fc5fda12a8dbc9b4a6ea1839a7a839bb9005746dfa5835585b2762f4f3ddeaf8fe7cfdebc3d4a97d5e8fce4f44f9b312ac0e1b13ea38e3c46001972bedc7e6a2a79f63880a272e26874da55bf3a63556f726fb37aad072873fae1926a70fcc7b090cd8748d9540ffca5e83d57fe3d660cad7b5a68be761945506702a0473ba3e9888fb194966882021dbda63db70680e6c227fd0bcfdb31b2a89eaf59239d6dcdec642145de8227b4eb3e59893833f9ca8de354b8c16ad15d61208f4dc98caa4723223368e9c54d221654a7ea9bd3dd267f8d0652752ea1ef482d1884fdd1253260aa65282b03d5d275a6a4344c84b324d278712e4bded9f898a9212444e06d38a8dae53dab2fc4dfd3b525b6cb4b5dd84639b5a463c22eac4eded0128ef6a8aed3bb01d4dccf2633dce03b8e45535608252b7a833a0b1cb227e30584059353ca690b107d71cec8a6df5b049e3a84783d48b20fa8af7f42b04ff4bce392549d0eb1bf4986b64a7003e9939ea0a9680f8cb62087424850b1dbd2964e3de596a7391d0baf960eb904976665787fd0161aea1f010cadca6f696c3480a4ba12c768bd37c62593a398f1bd6b7a46fefb5f7e19a854b4bc63b7f0bc5bfdfe472671c69d18931d625a0a51a0f16e77c941de56248cf26cfe1ef8b6b2ee37438682909306fafcc73c8f3494a6ce9f04f3c772071013cd6c6316666efb9f2859c6e05c223464503bfa30cd077dfe342ddc1550ef8682a7b9951bd2ff291d4611c19a46b2096e6423d2e0fa78bad0ba7c07400203a01855ed595ad48b305521624bb3ec320dc96dbd0d3175fc8881dd2aa0327e682dffb9739b65ad3343b0a9415d956ef2a11e1fbc1eab5e827d8d1778d53ea39ff51e1fc6d4d6ec22081924b8e0a1afaa9305475ebd1897fed8ae60227721751f938280ad31b2f0083c1a3f6e7c1fc70a3e30c023e9c9c109a7b8ab9f6b9032a4f409d7aa610bf2566feba243e3ac0ea971f92ff5e2079cd73f6f9f3204a75343e1600c2083e2c91157c16908327c92356acbf6e89af46db37018ac62924f6f65b5857b9a6142bf233e83f469af1bb36681554e2c0e95f59ee459dadf475509e223b361ece9bfb9118a56fcb55a8d84bec9d1d5a22d655e0f442ff5d334d57ffa1390d0bfd1f57de07c2521d6b3b6eb40b2c192565ca49c582163dc7b6785707f76b7b4f29c24cc87710f60cff99e0ac571ed7b6fa69dc127ae370dabd8546a339b220435866ad054262848550f454cb0709c5e8b92baf559d186206efacbb7013b56401217c9d60c713e3ac8e129548476c7932924b753a44a240175066b53d9a992086dca13a1ff0d88093a803ff5e823b899df7b8ce2190d483941b0953f2cbc06300fa5e053da8ed49bed061b93c5e84c08f4e75096a87a825c611a91ad32218cfd998c2e3a9f97d7c9289624cee0c69f87643ab697fec9cfa7ba645252cf1c1619fc639743327abe4967c3a3b6ccda156834edaa18e2245f89d9b6339915311761fae3809f5f895985b0a82aa7f68f1aca20683b27735abf0a5b8bf7eff7a8daf70380d95be734199b7791efacd7f0afd95f5aa6dcf6c5c17c09e4256d4f7dd782364d6365c9fb2eaf6d4d1ee42cbefe7f664efa662781f330e6f10b637b9d9930293d7ea06718667ae6e3b25517f7911a58be87e8f70578031d03a12f0923d1bd49b45cb51520c64798fefcb9ad858a239e7fd2f71939df7026eb03c7bda41df097f3ea132aed48e546f003410ffd7349229a3374f41f3aef861c435d8fb73dae97fe06b875c49743940cdf8f581b9da4344222453af5290f09d31dcc541c36b486d573f4bca642d6bde7d9e08de9a3a085a72a685b7dadd4f2f5504dfb79ab5366449b6b89a704bfcee20ffbb953d0420cd1e1ac35b8bf31f48645fb56c5a344a380ce8d7e590aab562ccfe0d92399ad1afe266a21426b9511e0f123d322b3fd2c8e4b9ee63c7b94f53d8f2a4dffa1dd285783fd0a6c5d06275afc1bd513e47488211fb31447975fa98d2fd6ef201542ec9ba374bb2a7119ad3dfbffc4728e032a6e4c8081e3b5a5d37f44d474dfbd2f4e1efaaf3625a83e0d1a907dca535ec753d3b8d5095958c167c3e6cb8178c77e4cdee7e4d298cca716c08bb4f6459da2755e83491782230f839ab60bc7e775fea9916ae2a00a4ea9f8f7b4166dd8b5b17cee20880fe0d6023622060fc62dc32da1c98e01cdd4f2c5aef6d49a60d84df65aff718dbf7ced2e19274736073007709ecf6dbe1b1f02a1dcfee83fc7e93c3bf266aff5d775c5c4e7b105426c6ce15142ad0662143c5248ee47ab8b13aef4c76e37aed5db3290f7ad7f64c70aa4722466118503e8043a76060c87eae05a7a461e041ccd5991257a640ed29ddcd3cc4acf701295945b62b146ac0214cb6605f57434a71f753148d52ea5db2702a755760a9376a1ff6157577efc7f8d6bcaf700ea6b23da0c385395aedba13bf031919e253110eec084ee6946a6610a8c906ac0dc626c381dc22a79d4f74480b902e8bc97945d871155c1743c5acae57ae4ae688904633ee6aac79c926232e9cbadc19c22815ba012231955f1cf1978d385755292b0f245f78ca8314a8d87790ae2fee198b845926f7ad99de8f4a06903374ab928ae405217a29425df9c56fa3041d76d9c8c6b53d7edd1fd1298e0ab0b0d9a7f832c503b52e38734e6ccd7041484b843fa2114bd35d9c1797b47c0139accf08ce792e2a2ee37c4ba4fedd784ecb53d36123c08b47d32e2f63185f427e53b9595f686d23e8b76fb99f156c4433f9565cb2f81948c639b505d92315875a28d3ba3005be9ab3e458ce606ed5bfbc6d662272710d897cda68ddcd96a4098661c7bf586d4b49e938a8da3c35f0dea61a15645841a6b753f212517bf67f3157856fed92df1b90b877b9951942714414534975b5cce9cf8d654a6fdbf22672756ebc5f7045a51413b487850a7166afb201dc0cdcc977687922cc613d899620ddebf33c952e766842baa0cb60c61fcbacec41178d210ac76bc49c405336efcde0b3d0304ca586d8c0455b8c8b1256f8f6676db78f93c3eea1ed97c43e390fa824b44e48df88b8e87e9587e10dd552e55710de1312164b4e576035c94dc846621bfbc6785df409f6c9bc9c5605f802171f2a31ce553accb7727211f730e32b9b3c8d3fa4c49ef944832975645a1ed336ba689ea1d2c4f3b0bcc3e8815bcabfb1cb17c7ebafe0b60b537a6935c127f1338570aa506917735047b28a2c3e06518e6cc6c2b8e836e7b2136cfeebfb4136758a2805694a5893f1fefb6aa19bceaba588b377a9d270da05b09b8e36277418c8a6f073d925b47314ee2da8d01d0ffe9753f9314a47e4da42af2e03ce2eeb925758d077334012269b3294d190b387b1d095e8f8c1d5715ff0688f293f0cf7c6340306aa8517d6ae1ef27231a5d1ba49ff341255cece51cef0b0afca40f2356fc96e488a714341e7fcbd2f3f4fadd331c1e2214dbbaa55ac7434ea16b600abe3a44afd2a53a93b9d8c7b586c39ddab2f6ea6817b4d836019e744bc90382661647544ed3a81d60db560e5cff0b3b2fae307ff581c7c5fee60e23892c2569ba605edeb1e32d83da6216a311853822f68e3b4b6e8f06755a833c5161bf3570211ef047e9a9eacda7bc53cf31bb1e128c3a2951363837728d73d3d565f6abbe0311ddb07dce53a69c165becd9bda78aaae5b9f76a6dc8ad4c4f5c58cd9489fc291fe74f9c18d18339f1b1646e37f6be9088b4b4fa7c7fac2ef3e28ba1f32c4ad5bda0768f6f9c61b6c89ecccb5c130960ab03104dc994d399a17fb2f52067f7487d9d857c83880d67486da4dd8abd01a59c0c1a166e39796b0dbe8c3ff2fe30f85c74b0b81206a3d84988f73a7952978861d4813cc069e22bfb455e8810cebf046984e21e4ae60bd7d9ae697bbade46117c4eeff1afcb1d88133c7d0e82758b8e52d8a8480a18257e7feb5ddc08245a69c5a4b8517d0b39dd05b088d83e2eccf5feb0442e7f809f95f044db36839ecfd36cb231efe6061e4bbb95ec8aeb3d75ae77728d605c2fa5a52e15a50e179181f444dae3c996d78dddcb6749ab9a27501b3e64bd0c7fd218a4c50bbbe56797bdbb3f117328a35532144d036fb1217f1a7f733dd65330b21a7576944902f7de145027ea9c645f6ea434681eeb008af780c12679644854dc6dbd727f2399c25fbdaece4ba09f9c3fa46218ab970d5f2b59dc95ca738cabc95104c21c251321377bd88b768ffdf74050bcfdd33569e14c99e2a74d9e909e843b65b87e4145eefa4cc29b278aa408632b2898ea6a242c0d61925f35c13c840003e6513b269efc5b1fe8dd06e5783a5fc91ce0ae11748708df64d1cf9cec8c59a5f4792da7212dec0223b706980bb85af6cf22bcd14f7f5f65dfed298af7d08e25971117f6360d896dcef53c3f19a83a7a62311627ea594089ccb49ca04642200f9fc56cc74cd6a3f9015b680157d6586dbb565a199407d864dd2efb1714933e4e18731217f40211235940f583ba321ef3692e8e6b8ce10cf3d08e677b1df9a253d7e6dea88d52233d546431e85f819221ac3ab337d433a0d9275d9fa5c2c6aea91c647cc557338cbdfcc83a1bbd787718b71d4e86ddef0eb85aef4cfb090e768e61768f144aac294a3962590d51c3e9a098ce15e3baf6ff8d955a19ba0c361914503e0c5ac4f806299eaa50d885423168425ac35b9b6d860b612aa7f8308c62a1557488cda6ac225266e0e5ae7cd432448a1f877e1e001d558ac1bbcf1ad1504f0da8c8701e7b703ff99cdd8a9a4f823163ef3aa47a5d7c39a1adbf3286770a3048e5bddaa776342434f12fb304b003479b5fb3380f054c40c48515340f7b2550bedce50a066c3bfd25501c7a30b2b9a171e33e530250cad0c13a5f707813e5f6192f5eef9a46831a96e5b39c10c623bd77d8e6c9c9c505d12d6bae5df8c4dd348a3ad1903e18913c5925f8c1553dd84898946657da98928aceb8631593816c24e2267fcf3e0e5ae107c96a6bc542a1cd98571adaf0892c0ad2808c80cb59ecdf6155e9008c8d0dd46e1df882082496c45ab93af811732da56000caf5ffc9e6734ff633a2b348291f160ceb7e44e9db99977414baa52432aaf7a72423814d7888d5f8aed08d245fb4cb985dd266ba8e4a040ddb03bd1b712cbcdd8d51d5c2c217178e7e23295cf8fbdf7a0b865bdb6d789616f0aed42379dbc9a994bc8a8e7f3dbaaf3256bbe19db2f0838ae5be607ca906051f99484dd5f5bfa1b2856e3c70eebf3fe7ae604119701cef2bc3a0ab4ebb98c90d6a03c8b892c90d2e3c79b0a65be57d996d8d6af69915dcfc62711253987512fce952f129361a736cbef4d21247afbd02e64d15a5e89202217a8c87743ed573aba66423c497a9df0454da771b8ab537d95c9f346e21a28904c7265f7dcf3b1597391bc1b824c2a94456dc4e7c95c931a757203d20a0113bfa6cf2bd9726c030df4cf8cbb48cf99e0f988121feb8120cb8e5952b12b57b9056bab9d0c13c0c670aa2a17f9faff53729e88c7d077c3075f35cd704e4c673dc7615a941a6a65c79f8dc6432cde77ebebda3807545cefdc9382349f88bb74046329e5643177472c29bef04dac20717f2c4f8363f6b72be75f07eba50f0b7909b85c5385e7411cf95f7b5d4c192ff470b2288a466037e34c89c073a5927880d273269943f1ee070a518df4058217d93f2d01078e08235ed99975102dcb1195a5cf07cf8d8af1496bd0d30bdaf1725d7954d22a4a8bc87beaed7d6223e09370b98f5c8654f6d6a1d39c3c6af0be2ccd384451de8fbbfd436f3e337bf581f80ecac50d9b71da3e2b6754b1fe16527484bd1187dba3b05823dabe43bac7a40e6af3ba741debc3d6bfc4f8fe37ad0cc330a300d5ab9d3698f3ebe1c3b03b7bd24524bd5e316712ca10f6cc37264eafa1abd88bf63b8fed29fc82590ff5d518aea7cda630aac4141e6f1eabd3fb1600845c1ec850c758852bd69f3948fa6c6011906e248ea1ec32e2a02969620d96e1c66b506c87ff95eb716f745abc9af165fa1a081a35a968f15db10836de023506a40ce4bb297fd67d9d5b2c1fdefeb9cca43bb8278f87bd483e1f7002030bec3cda9e1a8a17f0d6213beaa47124b5f01b47f428c948f5f9dcabdaaccfb97890b168ec0451ab22e2c9a39a6cbef64f3d5489fb94987cbb8697788b57b99eff9d5ac3b90779317711d30df022c59e3f116e43166a55f4c44fac41ed3fa4ff69e424ceabb7cea54c387d28291ff5d47998ec2a620d38670189a17caa9b2fb5702f782a6047ae39789a90cb4534ee91a22304593c3a24109d9b654e2176d9a454a69a8ada6ade9d200e93c4c1ce70113cf710daeadbb18746447be6f0e939de68b43bb88a04d17e1d31a569848a2d56a21c4b29b383002e3cede7ddcdbe853f4ab9125ee84ab072fb1ca16a3c00baf961b532ee46a4eabec438fc0177cdd9ef205f2136200f1b0021252a29603a0ff68460047658a57f8706451f46527abc6ac3cec7b93feab3f0fbcfdab6bbeb1da228651b2a602424bd58b0154ba38b3b50569adbe4fa534f3c2348324b0d3f560dd95f7b90a6e85d3ae0ed85f6433db1c42ed5011f29beb8b01142830a840a1add22660e2bfc8aaef3533e19738d0697aeecf383b6e3b481b77e2798164931f54533144ecd3f615225bf6a21be527e16b233d98b3667990811fb914c99604f477787dd95f350daeb752dd38455b9876620ee17b2dde8881e594925a348c71607ab772a91d5ee351693a9283536ace84f5cebf1d719bb8d082f6d2633d2118095cc57c8e73f3ab5b11a53d214acc1421a3d92a8e305f8f8ff28d644433ef36a9d89b6be58489ff03e370e5a43435678ca5d6642751fe4e2e31f9d98a858d0d33f51cf9f3bac70d37c5076176fd2dcabc7bd6ae684bd41593dc0f60dfdd89628fe7d677b2635d2f84718a432ce564eee7c1235022604d98351491c653c68941328ecf56c9819f6da66c91f629e5a049933d2dc1bfbaf2632ce9f7c3172ef371aa8d2b4db3b8ba14e989b3c32c1308295353c9d0a2763ed12848dfcf80dc77bbec8ab14f8b4dc668d6ddd565890b285d9365d0f2ace847b2a579de643d77a7be97fc1165bb90a45fa59a6236c16f5ac520332ee409051b41ef9b78c820fecdf49fe556497d0d70f8d05033b90dbd83e4634e2e62ba48fa796fbe271cc2eae22ae088cf9b1672df74b367a8a94ba23201e2d8b33f48f993d6104512e45ff6377fb139a669725fc7d4e1eb79f04d15d2266f163228f83c2aa984c078d2894cf2d6c337054267d29dcf225a79afba37ef9edc213821490c036d2a016d460efbfd6d5f2b313d630813e442a9e57520b954820bfc38c00a342175ab9a4cfb97ff8869c52257fdf275873343297b08d1251dba70ee16d820a87a3abca44076b90e2387d5e05e04d48b3840b11c70fef162bd63b049447efc5609fc2b06633944af42937dda3a6de0de918f11eb3f7c8855e5787a77dac64a6803c112584df59a2e72f52b22256e858f37b3334e9817185dd33357a4af357fb131f9036760df609d57bba75688399d299a152140e64795b2ec05b89cfd69c37a1708b301c621cb1b4364a2140069b328cfb49acfd494e2014320447677907f7192bd71ee90f736f9dce0c601744a4d153fab532baa4e7c9804a825685c550ad85b94f57357605d077af5e05e831cf25162ba5fb7e4488dabdb042c674ebaf85ea8f7ec0ebdb3b1a70293f49246052046fbb41a510c908d1f0857f112eeb37351480b7a82197aed877036c2f53bd768cd20e56099ee24f8e5c78d525d366c091a392f7dfa36d94611d0e94a657d87bae915d5a57cd7c3ddfd837d7d12abe8691dd4347c911269902426aa29bba13c55e44babacdd0c04967ada9f88020a102ca81628cf7ed035b860bec9e0b168ff1fca88803c9da1c6a5a9d025b2d1aaeb474dbef7fe9257f6a1505f60b02afaf007a3ae034c9d351673b9aee6a715d663bdefc5ae4191ed9a4bdb7d448df8b07ffa4d43fec7ba459dcd281a615a383fc7d86a79aea5806f8cf215f92fefb04a6f458d5c3d3504eea9cb64d22aff399daaaae752431fb7f63e8a6f170af1dd0d6f6c83126bea88d6fe9859355dd6de466d257dc2834571105fcf13be08e0284999af226f0d1a7e43bbfb6b3f57b0542db92a7deca128b48f1b28b7e7ee62b01b955dcbc7153b13679c70e615889f8a4b46ddb6db1932512ef132e71dfe77c26be37dc67e1b981149b55db866e43b569009c79a717e80e15b9149b502cf173b8c1e449038d8ce9dd369320c42f07e33914d8cd757c657e5aa8ece8ad3f9dd830dc36a2c2722972c8e5281e918d3aad52c5dd3f65e1f7ad1a5c8cf1f0427658a046e1db6d5e1ab68a7cdaa46466936420c0b82bc7ab4859a66b99211437a10774e6d865c3528fef7f050a801dd3c1178e64b3849bfbecb013dde8847bd4840e3fcd7237089824c80e08d5280ea9a091536e1930bbf300ad4d33a0798e82e2e0f4d635feee8ee8400a9915b16355220134f95f9eca2c3f2e49acc8c299a4a8194db97beb9dde95178e9ca418d8887e0bbff4639838872018214e342d87f4d6a36c0da944642e30b6befff5635bf5bee70b2b89bf66f5d14db9e49a87c26eb12a434260c938a191f5c3ce175538d7ffc2b9f725e39ee10de75e92edddfa09d7d13c83dbe9b5351d45a85fae5722f66be218e8406636c799b03737274d76d5a6aefb32b3a87804a17922ecdfb714bfc75ddec81a5aa8254142eb6cb590044c06618b7ded48ab2efb1d67dd1ff434e57983a6dd9abbb6d651b49333ce84c7d7eae0267522d111ac8c3b67bed46a637d47c49e9b3603afbc92d6f4bbe837235b40d2434e1ceb773e74c1f905e62d7a1b3d925fac7ade285244b76c931203d92776c46a868d2a9159382e4ad1a7dbafa6ae3edc36e7cc0821dbe4cc118c905206bc92a1935454c0d0c08a027237c87c0d3ea136f2757c9d667035cb93ce99c3b64f68bd2316ea15028c2759b563097efcd9da2c358284a534e1a10ee4d24d5cfebe35fa2bbb9740085b3f02dcd8062ed7cfd8e2c3103b23746e1a53e2001177d0c4b286567ecda6dd0b088fd4ffed35a9cef862c71a3915355cb3d6ec49df2a51eb7275da9e9cca942e0cc1fd32343e3661fa206c3ce7404e8541ff7329aff818d47047eca368bb68822043f03088a2dfe81382e26042513aa8acff9c52c62545f84f87766607ddddc81c78318ee569df4590db051ac87356acab2a0f57b8a7ae3701b9be10999714db4cece00b0db68cd632b9f40342250813a4b6623ecb3e2f305e5bd8968e0b835f6a9f662dc2aa690b61fb6cd355f2e4a9d682f93e5423723cb1d36c662417e4734276f83ff8928a7b6fc5c1a0fbe235f9c29b05cd1035fe980b9fb364386a15ed53a963283d859e8894fa7613c349b61c9c316c3a4e1b181b462c09a8c939548609065d09058e439d1c790917b501f89545b590a35ea0a8a8ed58bcafecea86e6bce197ef37b0d5afa943c4ec4d30b54b5e4551d194292ba2b32117f58b6f474b3e68c9d7bbdd687905faaac3ff6d3badeee8db04adb6ee0718b44d4d9a43e5d8ef667cb41ba9491a58b6ad13d9c63d181d772a60cd56ac690075b432ad4e96e8e40a25a2629fb7669de93cbf4a01f94ee59748c539848a75d0f50babca2300823841ec8efab8d0ff6eef3aac82aae8419020d8a250415a269ceebe513e5499593da06c73678cb5b0dab841fb473ed90102ca2d7e57ac299aef53e159ce5bdab402fad84352b87f39bb7072cc695fb54375762ef29e6cae368ff03bd617ab10c0bb2eb8e04c10bd49ea1c10893691b825557948d5db2abb44b0272c37e8ea0735b40c13bcd889132fe66d6a87956a4e456ebb36ca65b570e5dc4b4368ab298e9de6c4ebfdb5c1c11b1dcafe46202f4c55aee356b424964bcc2673c5531c6d38b6eea845c72d4e614edbb4a5738621666fee74ecaa5c0030403cf9e958aafa2a8b2330a69db8a3343dbef5de49eabeae054a37fdc72bfe38ed8cf771960a73d72683a608ba99198ad8536cfea4d51262a1c328c37ef8fbfae0e1705182e2ffe4912767c055c5430f21997c726bb77920df39913b492638d90612f0309a8f5f36492cef85f74a1852b0f255c385cf1f361c7229a9d105f95c5adcd35e2087b9158b88f31a793bcb5ec55760e6018d456f81d58690c9dff33c33cbc89a1a59759b490a0583278707adf3e93ebdd1cb970495375d59b42a7a22bb4cd701ccb396e2597e83d0819d0e4781d9a79deb97145a1890a32d4696faf297d9fe486526faf7420cf4f348c45cd33105ef83c577704fa3403d7398980977eee4c55e4a9491542b321f7bb6049ec70562e89cd4a652d62b5953eb0166f62d6fd4b94b1955a18150f7821ee2df0fc7b1fa04ce475d6dcca6cbacd49df39f4071a3d71188121946cc8b5aa5738adb64c2ca9396cabc197e4525667016747aa4a3beed3037f2e954f8c702376b40d484d8ee7deb1c191c97ff46253cf4faa2b1946131a9fb8613ffa42ab8c2ee5bcc991340974db9ae2352cf0134837e66d7059467404635dff24828d063f19d6a1bd69d8130cc8af09e8ba2ed67bf5a37fd40598b5fa9496f995c916a00d4bc7493092cbf1834d04454200192055c438290032252c5d2e4fe7b01464333b1963fd569b2c166ca21b4a2949adb4e8c6e212816b24fe5bcfea80c1f259b9644099a9d50c5203257cf9d7daecef955e61a565fcb5b176fac194b7ac9b93cbc72e7d2ddbce50a23f2b8fcc0f295ac18f6e9ccdd27b26764244735979c56830764433fc411a7702c44874e81ec260888dcf613858cc4e2c2e7acac17310fe247f3708b24a6b67e5d8b0dddcdc479c6c920a6cbb757c8dfd757157899910b44b29b377ba7181fb61c0b341f67790dac8521341d65f516d1ac0572873b5c4c0b26c47d522927ce924d91e32551f224eae5377903734552272fd971346e76aefdf8cf1084534e709e677b2d46dbd4cfeaafdfe75f53b3e60b67041dec483b4fb1bc8d079c43223fe3bfd8eb2fc3a5b3a2a9efd9e2610436621558ee5cad7454af9e1b78e69f75e6b766f8c31b549f7f80a284b27a5750b4fa38034f9e14d1144662c5d8a7d182e7686d4f9eac7ac4ad2e188770ee8c2d5df80b6a51ca0660399b3ccddbafa70ab0168f51e11bf7349e15f9907effc042a2d7a7fd643cd178fe487f341683549204737dd1bcba23088288bf20f24ba21c631861a5613c9486259ad682cf30f4e7bc318f4bf2e02e365010fe3c457f7abbc6ba2c2fdf6eed6613cf19b023d6c7e663ee8167b74b89b3868b936daa0f0f1590e9cdce64676ce3a43975f21b202eceea74961f22bdeccf5f6454f842119b8ab08238c0b5d27a61ece8a5b5a6597e0f37700d495f62d056e89b2727ba36bc9ae4a2535795d40cfd25cc46fb2eef9f3f2cf62598de90b49e9cb513b352753309b1f924378060b4b759e54dba04a0f909fe740c3a6e050e853a7d779d1c09ccd4d3a32797e89e88af67ff086555713e08c98a78af3a7738003ac8938de341ae22b6c122042c48852a1f99055cca4ced779708ab825b44ed27ca88ae83aa29775125b80f8edcb1cb36538c078a30b471237dbf8e699f81e7e8139ac03663acef9f96df88c46651ab5ef3827acd5bbfc0560c186ccd2a36792a959eb6477d589e0e2e80ead9870097a94dd1785fd57d2b694d313229f10b5b1d281a6cc27403e3479289f97d8710c2d5b906d615ab99145c7b423c670020be1efb2cb85351fbcfaf23f177d4c40ca8c4bc8837390f286af79f9ad2931afa7c0f93f2b349d0c14ad6295ab7dd5253e5ae301a8bd348bcfe68f50e56f1008836b1906f895d4df7bd0b4fc26073c041e7c77ed9cb77964ce5a480c22814362ba25b3f8966413bb33fb5f121a3b5a8aa6fa99cb979d0e6849b8c42a986ff3fdc610b720b1a4ebb703539c8e127cacb64c1b6c56eaa2f1f7fc5d0b8dcef0c9cedbd3bed4809bf88847fe620f5c7284a2edb929ec63e406292f79480bc2683e428a0a18fd92cec4600c9768567e40b368db3c4d0ac77414938eaa067a6e267352c62fb2caebafa86f8e01c4c475ad2d43f1d877370ba0be570ac229a905ad4346b9e9e149f519d0cdb8bc3b22246e2be7e4bab8039bf95dbbfe64908f9862bfdbebcfcc3bacff81e5fb406afe5f50641930827db629a26595a4dd31ddca841d124e147b5783df8000c473ee3f6036a387edc95fa0eae5b14cbb499ce44a853252a462f051c829c8f81e82c58d73ecf7709743da815e47efada6feab1646304b51d052852cf2357c072ae7355493d68c6a9bed3d48a46ef43c4877a49ca3bb8177a3119ea7af17c2e385e7f4ef5caee084fa6bd3bea17b48d675b2fcbdee80617f0582769d2af3f1e2be598b364777aef106b76caa0ca5672d97b2259349d7c49f7ae714d252c3aa351436da39d66b4f39e741060820f5e359a38fdb3c1abc14924a3480828dee90b3907feb8bca38da84a10d42268c957e1bb281707aceca0c2c481d96c713f89eb26c17b6e984b8680ac407e7b89e22c409bf37c5937ed8bad3132b7907084fc3001e51ac88519d89b94dbe0cd9e71e9c9d5cc6035daabd100ab7f0272d64f80350e63feef4835f8edcd3fd8f5680c2510d9e9a439f5f7275858b5aeeccc1b398063660ab30c1719cc1081faeb44673db55ce926da91d032a03542543feb38d29567d9045aefc2617e7488c41a2da007a212870a285445786fa8e4f6e0c7dcf5061b6ee00019c1bd4ce4c3e7bbf4e05916e1a249311c45ffe936c2e96300f4597e2d4f6417981f86b9f1f55a159966ba73445aa4721fd24bebcf45835344ffe3e1163fb56bec03f3b26afdfbd771e156c84fc860df0f904b54929c7b5f65a149b47501db3c245258846029f2e6f51d055c69e3216e58b27fec5d06bfaf1c1569f39e1a966d881333732e8d05189fc4707edd8dd530513aa2778d657c294be7eb2ab0fb688eead542565d3de002cf1aeb31b9ab02e7f9de2c835702e154cb42540abde0e33421c5d7d35b79c3c9a79cae1cfa132a119441431436f83501fd0c70739309be21acef074908ee5647b69f5b53fb2aab82303b73a8be0ed3bcbf86813c7e01976aebcb21e816525f91412e2b383c74c95f152460b7ae986338bd1fec3c74e1fc9ef292db45391d2a0984a40650effb77c72ade8090c984c7b1f5b57929dfa3e11cef9fc871b86ea487cfe68bda93335c14c48e5c9dd14ee3d0f2a040f7af5424fb4789b32a5de0a8d57dddd8087b9ae3c67d29ad2b3c18bd94c5e18e62439860e5db11704edb94e8a6001c8bf65e751c15738ce727a1fcd95430d00859706041f08d1a88ca7070e3987c5157773e187e878850243b4fb04b4a760d1c6bf8319d0e4dac0167292198b085d4aebc9522816068e157b5afcc4b91bf99132982fb7c637d6760ab0a5cc8d7cb7c42b4e58b385ea609fa98108c19cd561f98501a8aa1860ce72c927f32c69e87e38cd807a082623d54035e2d5587e86b4dc6a7037262cdaff9b0e3be87c5b63e73d1f693eefb2f757524c490e77507da0bd0f374977d1d380d42ea0a82760ef26a506feaf5ee77d401d1ed1d1728529eec13f610bbcd3521674ed8b61c570216cb55e0e9245883cccf79f4e6c88bd31f2e69e6bb91c313fdc2e788daeac36e63036de0cf858f2d6ff4dcd5432bbbfb463c9d3ae088427adf173afcf66e9a3fcd8c29313dee800ee7362bbab1b544f0ab09b6aecd75a8e18d3f4eea9469f30229faa74bfcdf447164f53bb9490b88731bd4e69a44ed70495a8a41271c63519499c931ff76f5291a5dff381bac2be1a76b2e13dd58cc79067554186a574a3df62d2150e65b9037b5fe3c006662b72a4bcba9a0533cfb25b81867f5346b87c6d26cdcdc6b2b3b966b8112ba15c224551d40166bed139dc0fc2f94ec591046928ad6dfe65022ca69fa015a3e88b4a1fdfe76c74b6318496117c87f0b03179c75465a0bf992f6deaf3f63547c4fc8f08e6dfc485af8834a16e08df8dad5cb5da14ef27005b822e27bc6c3fd108aabdf379ed99e32428d9df75b07a979dcacf1e4f6b8cc72b37d103d64df8ed7dab88b6a3f19caf5376205cc643caf723d137e55a56ea8990067bc5b13f3fee86311c1a2ca286d301e5b9f1a1fb3a55d7c8eab1471e980ce83d3f6901c554424ac77de04e45d3210d9992e6e124bdc520ae0acf8b9f59a1876d2d9a33de60d60f56c754e3477a3fa31a324438d9c22e4e9b7b6000d3d13f0e238e896a4b36f7ab6c859a1f0a55da9e58acf130c11d7f0a13f74b98449d1191726c4a4c42486be144aabb1c36889401ddfb4a639e07242dfaa9b366f4a8746715afeb1f7107041d7ad44c6e1a175760809b70f64ed0b839dd8139aef457dfb46580ff0b885921c6af041f293cb4dd1cd51b5d51ce02ae04975893eea02303fc88b26577fd969b465a6525d5236225def86b0c7d0e1ef2d6d34fbf8978605cc13c422abdebcbc7131b9a8db23d0070afc9b4ab1af8da70c263490e4318fd48b29145e21f6af5efceb049d9cc89d359ed66fdc581b20a004179bce9439f6ae4890f6eb7df4baf4156bb27fbe3bb5e3496023f088298c9710c4030bf80d1edfc4b875511d0028a5b97410a66872e41459ff4feb96909f1b4cca2aac05bbfdca78fb01ce527f039a798026783a262e21c1527467986e5096145eb5158762e523e01c93d08c5b1fa07072499116897fd8eebb09dd766c368e14012b9f57ba38544252b9c6b2c29e752e8c5f3927d94559ddbdd19abf6ff807c3954801f0c560d195e5976935d197dff9b232d4f106a955d8d39bdebd3b3ae6f48920593606c069c6c6a4a4b640bc34b85962491fe3b84b13e474d87df194cce4541302921b809206bfb6da107b4f67e8bfc86002ac8066c3c41141dc9e3804c1ee9cabdbfdd2c9cea561057123dc1c300014d8181ac40dde7b85cb479314ebac3101a2a6f4e5cbf75bcff622d59c56100972b195e74d1bd42ca50a6aa902355629bd3c56f69c0e8f7f0d1a95f5c273e74ac2dcc741dd10bfbefe43eab29cd7732bdd2241dcbdeaa4ac9be3a0ef4b90e776998fcd6048d856bc03f9c6d8f211f9c129f51274fe8536458969dc7f335e03ceb71af792b69bbaea8558d4df657fcca3b7e21c8ac7fa6a6b936d72fc7cf8e6466057b5335bbcce433fe376108742d863669ef918d8fb11b1a8d7166920774aea76505f9cae3c086f7bdf194b264e9d79ec15faf1f24a8b43b2e06e7ea5f00d14950ce40fb21dd2131343e5abd191b073f3269e52a5c421fb84dbc53a94ddbfd0ad524cac9a7682159ea66c576d521feaab7e715355ad5e398348eb24e46cdb7a13a9128a555d249ee6e7607511a41abbb6694e98eb842397ec6b89e05fa3bb631c78afea89a712fef221f4265b5b924ced8e1b5b887d1f149d603db402968e105b9e9ef65e07a856f1d3042f5cb50cae63343203d6a5323669f44155980d54f08f1848338f6d0e6318e7a34ca916e02f841bfa19d55f97fc9cc97253706d9097ceec2ea29d100ded65baafc807d04e278d29390c06aead845bdc1f4399e0b978eec93db437e9ab48bc9ab2145f2bf64fbd7a65f9434c9bb4bc56a5af0ddcf4469985fc2aeaaba9327e525ea3346b386ddc4b0c488aca3327b999c4c783a3b1cc113f74957d82839bc21e762ae84a2371dacdede965138dff18c13756894f8e653193cd4e30abde0e245177f99d5ad18480d7573f7c38de87038cfa95e3103cab8a5242dc14cc709a947d71fb7f6e2ac94004a5312e677d6de8801e505faa479268e8b39409cda6b22af22062899f1be31f7a85987d87534e97e38e481b9e6d31a6ea1cb812465b7790fd4a3a54921423e0db454862422ed7e0b9e9c555e7e68d69d5f5a6081d02dc15e3f21ff367e3a28a2105b921a56014c460392c3756f46e68269d421c8999eefdc561dd55fc6c5e9e8590319a68d5f7cf55b49c1f652dc17b583f6eebb4961cf9ab224a8329363291bd6cca9d9450dc53d06a350068b63b7f8110cdc2fa53f967e0c335a295dd394c7c3c40d1b9d0c6259ddb3a12a899289ad24bfb1f387f382898db96fd6d9008a8a35b69dd9e2b46412d7c40c18490c85d0d5999fcc6595deb133b2ca5bf2f1ca515fea11214b93a6d5135394b814de5eb4f7de36aa9e03265b3a1c49336303ad921678735a1ab946b4166f331ae83c1643a050325af63954ce1265042e7f659cac0b4b6d9697b81ad1c35a51e3901a660ce9d4c2172292b5328cc46a199af536ff2b5c5f5b162ba8c3159745011cf6dad1ee02c1731abd93798fde9d015e2c202ed0cd8b297d927be4c3435e86e071cb0fb3eff363b41c78c26f0c9b9c8c2e338a4b705319ec021b7fb78b71d6653120892ebc9a259df69143d09f2661403774f1059d692643d94cdedeade2cf278820ed516242fe8d6752ba06451cf48ff4c2d77adaa133a901f7b3991d1789358d81483a637fa626b14d3ed20f15683eecd854b2340d0f7c9fd1b5e13044b5f244ed8b768848b8c94bf6a8f19e3ee4a7aa8301cca20e6693c3682269720ee00bdf10b8ebe2ca6eaf5a4467b77ac57da0d26a8e4fa1457e9dff641b13eeebea2a10ba2e45163bd10cfccab00f922e537da013504a6c6b36aba2920152c166f2c35faa07acc4700ad002c80aeff49e0e59d1d94a48aaf1edcd71f9de24ab727c648a790ff671cc794d517ccc784d531830c6ae8f533bcd56426dd339ec61ccb251b3f4f401306fbb92347fb9a3a4790302fff30a054a8308bc564599ba701fd1edaa032a83b38ab3e7ef0aae8f95d272f09bd1c0db8b0a969817aaf8663019f1988881952a031fa12aefa9127af9ea1d546202af632b2f0adf8eb4b71d6b805a69724229c235561a2f077261c569950a84325b93d943419d4ee74e026854d05b4c83f3251119368fdbd9cf4e4e58e664e6565b2684588a3479599ad192ffb88376264fe87cae0e709e24419890140397492169e08d13c18f56e253855308ae45511895a51ae8ecb25b827e421f1786b993f056f7b6395ba315fc5a26a63d46117b68842025a5c0baab6adbc690d6df7bb1b8b11fccae924a1ca47bd85ed1d4016c86f59cd5e9d419511c558b13c5a869dad6b2a7977b0d971da07fd78be9270af41021772040247dd453ee0d0b70f49ef64597d57838edb1d5694fb79a5ff860124c8cbc27a6f0bfd502bfefd0fc1af2385de8000d536cf5d17b112c5312a1c9389071adc05cffc88c3d728df77492858b5941c293acd6b51158e828bcd86745996a8595065c9effc07d0f6f6dcd352bbd4c02bfa155742abe0a8a9246c99aecc26cdc98656be51ffbd36488274dbf804211670149715e5a6f160ea2f59cdef407c0c40407970f192e43ebc3ffc4ca366410883ffd4d255d80bd7ffd6173909ea609a2fe069fe01b68d992eaa06f8b1421e1bc91ce0f7ac8fda94c13574271c6ce6796dedea845e07837dc980938767e9fe9a4101a3eaef63822daa4fb27c584207ba4f56c054b5ec42ce309f6a64f5a8dd97bae3f13126658a27f9c1741963f191f288baa5b99c576d3c7914c57e26a2f278acbae79366f4713ef5f5fb47b91e91f6c11fd7b78c6890650b7df0a0dee1023f648e3c59f441aa388cd389049b752ded701779252e48cc1bb54fe753b55576d75d2160808a3b7a8e95a5ef1ff0c8d4623c3f2b7a3dbff6c581095aaf764dfe5ee3322fedf8383d22a8be20e77ff00005c018c905a9b59456ac019cf46453fe8370e7cf07154eeebcf3acccf3fe6982e77699272b727dc592186bad71fad57dfe043c73e37e975284c97a88fe3bf5070fc07d74ef8e6ea41f821ef4d112721c1bb7e8c2ddb24c786c9b50c4f7bcd881a8eb06d3cad4d25816538df3fed52f489b436c273fac759bf23d19e03c989e0a750344669e4fadf6de31515c8b8caba42ac8098498a2bf845492863848d630e5d04a6e35f6179b1ee34fbe8cc2ac38d35f6fba33b451c54e444bb3ab21923aac67e280ad19610000bcafa66bb234899292aa383f369b368f9c46c862aa00de581cd1a005c5ba50b782a329d3b3bfe0dc0a8cebf54267a614c5ddb278dfccd5b863900d0df7eaf7c5ffa2a4c01271d81460b5b082b711139b5912f7caa5c921e0e51a8961cda8b7d4827ec904b73eef713ca1a412a3aabc0d98339444832ba3250415d76f05f232bdd913725b691027d8e1b6afc9cf85de94c5564e6499325ff061c5052cd411dd24088c838d0ded31fd528afab8896106efe09421b2e2338833676be3e4b38f90c6a0a0ad386d3942166d9724dffb634134e833d8d9fa6f3521046d2b06b86e382460307335fae537994df8e9097e8a6fd9540461bfcfb7d38e04e6ad89150dfda645e38e85c56f1a77bf324b5d4d1e6e4c1c88040086e8a27835c5516d673b5ea21d594152268b6be7ea17b0321732b8426d14d14136c45189c71659aae40f17e53eff9831043c36ab351fc725e7b76c86f8af04b45a3cd30e140c307d7e6a5170be8818e7f3bf4438b51ecb4ea131b9211fa24cde3502892d01bbe1b80afc1f3220545f1221cf8e63489dc1090d9cc267d5f0b40620afbcf52bcc72986981056619813e70a0e01ce69d1d5dfe33109384a3f0b7eadec70f5d0ef1410080874dd3bb1d3039cb53ac4fe4fcf3b3400f0a826a7cac6c29c2ea0cc55b3faaab89b2fe659658afb0324b5fa88413f5e3c9e88d95b3aff551e0501270f3276d4255ee4ec61dc4e168da379b8595e82b3090746a526c44f3939c4e99a0dd1168e220c9a4b7f211d99be5238b795fc537e6603c12239f61adf2eebd206792bce3f640de36931a8346dfdf4ed0cb8e1b9121f0bbf54f855457c29b2be6533a4a3d2d55ca4e8e6db7cd0a99acb665cc226619f28f3fcf0802dc9d25fe08adf3f334ca00a60179b42866be9fde78cbaa2f9813a77177b43cbcf389b9dab04964902acb9c772223ed5fa44758161f0f3c4cf981cbd5ff2bd08697aad7f88d513bc704def6ee42808ff59746a549f7ea2eb9111e04e95dbe1e5ed8d9d0cceff04a510e171c2d14b6d9afb47095007f1fb54dae50145917977f9d3ce644ff82eea395b126ae061a9827f09ce78468879d966792ec076bf26647b3a9269d4bf6317c4762c345a8c64af5aec80ceada90ac3caf0867b497cf39b6043e88d239bcfaa98f7921e4fa7918344c72504346b3ffa4e11d21e583e86fda55c49a4570a1cd8016aeaf2c5aba375acd5dfa6ce9aed7f701b4fdf6947ed52ce9c1bfd59eeeebe8a8c43c282efb67adaab8f3da4fe51f0de49861bb9132e080b12de069c2926294f7d406227c27e021af46c9dbcef9751327b532eb40089afe67013b2ff07e0753d4c3d8501371d003ba39a7f1fa5071c17433632246cfa2ddc0a76cd5be325b4c4c5cb8bfaae8e19826a36b37ced6a05ec9cf4de425767856ce08512c1674a9799dc8989f531f701c3df3cc5bd92010f94755d356a127ec09a8ad678fb78bb20142c1b5345f49160d4d6dad6023adf0720579895011359e4c6367d384d21cd66c9133f007638ee9a61c5f8a24033988d7704062f3312cd7a62295733e7d1d566439bc080dd22b5c3142ff94e0aa3e2da5a93e67456915c581716b15a19d9799781ce5c4c6e7b4e0b37441043f121861630ab2e212bfb68803b3167917e8f43a37bb1b0d36976b15110e6b68a6af3da5c57da624066534b067e3c66d027dbb01212eb2ac8d27dbbcae07963152910e3701ceadc59bdf1fa214bb6adddb6cc1b35c678cc5c33954521cb2da8818695c466dedab90d1dba50467bf57193a5be443e54de8ccdab19d49cff935bbb243c6bb937ea3c022b760b041d1a28aa78960af9a25695d705c69e79ca32d7851894cabc222f87414a2173d395feb9458ff0d7b8d69579a16cd0502baddf17236139c2fdb13a0b9b8189c139dd95fcefa1d9ff38ab3c8ab232da992295e98d7d7404842003b2f1df18fcb9e54af7bf452cadc81d6676c0fdccf5691e4917a142d1a53aca4352192c932fd22caab5241dae9a35a09a2a235a579b4793a111f86a3c14bbb20f30676988a4b941875cc8a77d808c32a3137cc078ff8dc4512eea20a486ff1c12e70108cb91e33aae52c63f70ee74227e36af85519724df0c07f85f8b49540be234f65eacff3eaf8a8c7c2c01653445351a3c2136c85a4aed8b282171a2388d2990e0257a2eec2edf8fefe381ca28b1887bc9d718174191927a1b8b8fbad14c181665781a5fdbf14377cc39d351fe23dcf0bc934305003759e47437cee53b5d07b79b2144e499f75f4995a5f48a83ce7b938796c2556ee0cd864ab598677017833a76a7368a2497e9f6acf06cd40505800cb5228c058bc3d4631e5376f3d6d5a8a40bbf0861e8bf7fe83ea240fe27c0f92cf77d09238d2075f342e811dee163d11d4d448d6ce39205231866935810076e9452426ef4cf0ba61c99580fac6d07f080beb2da5246d99a98cd04c81223321a327e26537b75a05af5511ab8ad86ab97d040ca85e8e6f52747e7c4d0cb2fcc67467d9735d1fae1ddda2dfc055e5199e27741d4c8cdae0074caf8f3fe550dc16f6fd438631cb4f19192e780e8783ee51bcf31d82e8fb27523f9246b62a612160dced38d113c04c58cee76b74ed3cf35306845e46f1582771dfb6a8d54f654797e594629eb908cc0913b05f3d828328fbd60d4c7b5459e34323249e9955dfb3f347fea9c64b8c14c0a85f3c93b55b6a810b9f673e1f23ed0ac00ee8286557799a9922518021f0f15cefa8d1f5fac39f05807ed63d6188ec0e826fed4aa96781ccdd7a32e5dd49f64e926c7fcc3ce39bdd50c05ebb77f1348713d19d6c8a1ab5351fa02a8869efe7cb19c837452c61819b321ced91862f715c79345ee116c477ded16d0332ee3ad28a96fd25a736631681c61bcfe5dd6980e24fd4ab99d67bd0fc1229336deb66c0c56d74a25bdff4dad698e06e04249c13192678228eb4f621471b9dd2c9c928edbda8d2b9ef362c8c2f264ecd14937fae56c81d932397693c3400f9c6a4c996c31a5ddf8390c093581bb3416ec1b4af285aa4954964752601c7a70c394083ac900f6dd5858ac3bdc716f4e0da045756866892fc73e0d81493d31309f2be8f6c3c3511987d7d0370f1f4c65b7c405a372a8aa889dc17dac3f58e7c674fbf9bdaa8d45b9f7d2f9e4b09795f22749b899eae5e68ab4a5c47115d7ed750fe52eca03c7a7026db6c791fefe28914219bfcddc387ba6b13c07bcafaf532e150e13c6946bc7c1b6b792743e00a7216449636a178aa5ec460deefb3634437b1c42ab7e73ff2cb8acccf3c43cc26506915d9e6d361bd4c89b3edb9549f20b1e27f20cb0d5510448cfc8add207b8f484a333d6bf814e16fa6a3c9bc5d611c84417ef8cd38aae00e5cc2fc70178e2b87da88f97f857027446f65b8f5541df1b4685f58c1fa4be22b7138778339464ae9854e3d9c6ce903b340f3722a6aa5728dd6cf84ee839835e846edaa514a258829edc3e5ed213d0219ef85fcde5601bb7e4555a8e079cdfb4789f50c7dc20fb75875100e464e41857c63a072342c362a3bc42c2915fa5d749ebdacd11537819edcc7acadbec0b2c1127f0d178ae624d2151e02bafaf4808cb79a09fcf6242fefe1c290d7be846b3b5718d9c65263ca3d227406242c3113e928d985dc87cf3529e127968b22995666a91eaa2e13b0b847b3fc414fe029e09512101b5594b6f35adb65c0c2a0ccc2f4de718fe362fda72cb9b09d47948369651dd33e0650bab284a8e90a3ed8be238b3adeabfb70da0f298ad3fad9191c55806a8cba113a828a1d00f9819da3e6b79aac5081c5cac0fc43b4cc58b70a95bc29808836b7bd43117374aee0c0505b8c29d9f3881b88c92bb9c8075a5a9e372705ac790c1fb2b4872f846bc22a1e953acbf6fce12365c4cf0205741ca697126542114ccdc63762edd0b3baa81d7ac3e0da96e793d62d64ed90331449bf2981378c41134aef26d5317dbea4c43ce31170a248a453ed061d63ca0ff480148bc942b9949ca048985275515d7746bb5d451f920f8ede2c5c4dc8a97006acebc76557007135e258b40ea9d6a9e5b65f70bafda2181a91e36f2c6f9756254573ee5ba88eedab856bebf6a8db5b516abd8bc0bf9af41c497de0b055b8e13be4d559ee4985de48642b70c0a90351ff8c4ebf5aed225aad706e1a3ea228a362c111cebe76a5b7b6769299b3f085607e1fc5ac4ec0dcf5c821ac39532c79dc92e887841739e6a157983cc94faeeb89b9e9e06ded239362ccec9716023a0eae23aaf34e7d5dd7261fe8076cb862faea0e3c79e77dd846e5d131f1f60f650a789de05dc7e55a127c0779c6c113bcb03a0d35cd41d2d39e664e550f41c9364ff91fd711f77864e8a68edbe4b130ab5742ea278f803e4c764e6a26278142144af79f36d975a66e8ef7ffa4a402a83485b25e50251f9ee11a9ef78a9404ab0c7da29884e23996d34915404e317297a81fa9678ba77361778a69116bb00a1934e84913de2f4229d6a141fec94bdc1c2d741f19d4ac74e335ad723e5c3baa6e6c9b1343876bdedc9c5903108ca6cb7c159a6f491d9324261cdcaf23268c8b214383c1df4ce66cd23708c362789221258841414ff4021187b8c55e1ec4abc65eee32a39b143f63822843c736b92eeaf6121c77d1f342359011283a0048d8ecbf43a51f4b038ee2bc05095668cf305dd2902c1ee8d90d25285b69c14f76034ddcfd8eed0f7c4847ff280362a9b1c52fa903c069f77b54264f92de78cf5356866eeb704c3ea04ee3026454314b4313be067a522841ef6c118465c71a3bdcd8679cbf0a063f1228ae65ef6010ff81cf3103e99eaf712376399523e237df3f5bd0178bcf32b62b7c060db0b39873328ba8a613272bbb70db9243ea16d533587748391cfc049d0139d04a9420b5eb3a8b6489d74d246e535fb36dddd67b39c99020df962b40ac46733134cb8b1f8a423c68a36c8c7396ccb451a8f5b86853fa3db10f8ab2513f37a77d1afbe1108923790191f78451562187e8aa902ef17d95d6276d3624590787837cd1eb1eb27ba7b333a3db70e4bee2ef2b24f5781f89c2fc2878ba224eb603b803911ce6a52a0b64e31330899f6dc33e3ea703c55a9f59759ebfdfe693083e1df7863d5f4c947e89c70956db5f288b7e945486170472cb358f6b68af8ec6959dde53099fd5849463cf0206f5e0af986536a88cb38e599c6f05f0454c1eae114b101b5a8f4788dde8d86b63c1cb63e1a768c15b6f177173c1e090cce15d4ce19bd347968202593ce2aad921c6ed4c597760b2d46cacc385d6152fb772ec7b623f82861fd4a58cd4b2ca7166cfcfd9e8b0697523d8afd76a830a0f8dd444e10c3d1b079013ac2efe75af9aed936bc231aa7b70db348cc165bd04813d905753bc938b5a8207dbe5236d9fbc16e03ea99a19a3c7abb40d9c827dd7c42397ec1f3c05a35248ae885c35e2ce7a1987e6aa3bf419f2575794f2d9652a536e32cb9a1fb267c07d8d1acdaef56a0b96d2e03f2805fce1e7bdbc3cf8bf8fc58496f2179652d2b93d683115518ce2287b54230b6d832a8b146ec6e0556f03bbc1277fadf80d6cfef7f09bc5bbd9affe721e37241f81430073a753b7e40ca030afae8031d76bcc314dd48857c4b5193eb9e46113ffedbb21d96949a3d168c01d57d434c236d80d632bc79f52ed621c650416098a1d07692eaea697160bdfe002ba6b7b7b46a20a44a7afd6b2dd6faf587fa1122848d5eb62e427a1cc938fcb369157a781e4986249d9244fb288b83178aba47bc6862a919cebc6fc4fe762ecd1cd8e7aaed6609efc1d3d07165774ed364f9cfaf18263c780d278dc5bcd749549a8991d645d96dda1e1a340759cc9c84b4b7563c2e0e1b3be371a010ba4e51702553bc1f80163a385b623fa23a4f69bdcad868184b79ceddc22d636d1eb4f5812ab7150751869979b34f073475e5a78a42dbee3e75e99a17d76a846f9ec3f59bfd6ae2b64ac19df522c55f4410b3a7d9434e5e62ed65452e158cc4a78ebe000ae5962aacd6e7c62abda2f88124d8ad4da0003bb923f7fbfda491411388596d5f045aa0f59bce7a7987e01991774268d059b1bcfada3f15497f6ed902d09f4ca11b4397757f7c43e508d29b367ad7003659ead59279733d57c12ce0d651a4043138d45a51db09ff2add684091dd3aaa93e2a86aa9127cb9f025f50c5ea69c42f5d4876660e06643a6b3672294c7debef16c2b72152cf3a8e9ee9135f71403392da8f50570f243ff849d547e1f673b61e6b55ce2387de17a44aa5b9379789702d946cb3186fd3fcd9bcc6715a0838a28b65da52250c3abb4e30802bec3efacc9f74eacb96aaef9e3374e3e38daff078c0cd9dd255ba0e529332b76aa89f38774fffbef4ab8181194921b066bb422634d30196f3ab670dd54a751816b6f2e7511ed904ee6d3c26c43e3712c906e82bc26456f1b2ad50358c0843e34e24d825af836c839f1923025686ac78b55cd21f1c1b310c3e289a328aa6462c3b168a84f0d520debc2bf1b928e057900b7dd265cc88d6ab770044c8d8ccc71e2aff732a1f0633abc0a854c71a821f9f601df43bbe0f32fd8c881d240aedfd51ebc5f2ad756511f424c9d0bec4a2acf8c565ce0cf7dcc9db824cbc533ccff2bee39cdb8dcb349559fc96f339c6b45120c6d769f040817e3a1996be3394d1d5f9fe0956268f1de883a72dab668c43afa984de82e3b5bf76552b72f8a62a59224f3db495feeacca677839dff1037c4e49a39cdeab74c0e0b2b70d202fb600e50bb849b72084d041dc6b5152a3c085e83b7a6901fd5dde3bfb34adf4fb25c419ed2bd6fe5257e2d0554dbfe1ee149fbfcc0e6505c2748bb6a9363c20eb6592430b513a1a11a5f625053295605ccf3da99ba3cce57778ce9ffd9547e9fa7fbf060f62e9c1e72073940dd91dac606c1749b52fa160e37872480dc68503186c3443cb84a0d2082c7ba74bd36d2ef8b37810f5287ae515003124bdac38ff463a8b15534138a28bef1ffc98d7f84f19b1891525ed222d58559453f94210f5f64bd52a64bd48cfc78f9463ce5a9dd513e9b78202c136125440f0d48ec661d5430dc5eb4290ef8821249bd386e81149630b9033192efd29fc9c7cecbcdae35b7a51319263f60fbfd6633333029f7915cba2d0672a0e6ce39df05a640008406f2d44ac75bcf50381e67ac8cd5eaf3d74a15b3892909f655143f3c5e249066c00ddbf38bb030c536a6d25e58313669bb26b42d3184f3ef7d7b5da90b863f9e606b52525ed0a7dd0e8882f7c8199da704bf84f0e4e10f93816f236c769290f4f998e2f494b1351b95e65a530245b9fba458864d657be6ee049ab7393afeca328b40ffeb05cbf109294525ea1e0ca6f2581a27eb64625a6c76769afb380121f10a5867e95879defc847958112ceccaf510d430b223b49f3e669c1486bdc55b6a5582e990ec1f84ca5aca9f96d52ffecfba5ebf90011b62a006304a9a954599f3c9207620a5842aa9c21b4c472114f21d88b7cb8110c40cb96a8a34ad68cc7e5baca15f4c8c36bce0ae69fe0a55e634a12c8af12b3d18716ebb0d615dc842a723972b777b3ad31f10a3d5717a9599ac13ac9708a3130070d24b20d6eaad36be5e54ad68db1881eb9ea5ca5d59229497fa867f71f3c01620061e3befab486634d8b8503e00ebac2650ab0b84b346368c7693f2c4a6fa3d3ef866fe5547ff6f0c698614d1f2aad7565720a5622d81d43e5883e68d794192d8472fb13e0775dab45cd691ce41ae5e13191320f9445626e0be338d185bd9e11a8b5768e0b1cbe590273a5c18d8ebcf7fa57022b4862c255708308344ab578507d623212413b9c8b61923370fab0bf964e3e69fbc96f041acd551da28dfb397965ea6b8a841a65fe72fac4368c9a7a64492e6655e009eecec9c65c0f9ff59cc21d2855d52a71b0887914e4f14ae31accfb167d2af392e216df38ff5e994661a5214ffd584828af845572d4b458fef1a2dc8df0f940b22cf9f45816838cd864a67c7f9a6f77bcc4162af8b62e0d21d788b403cd8e0b17583c66747eff81dc48eb0ff75e76368358b67f47c393081efbd4c7089400487e5279c1d0ee8911cb8d4224e25e74cb195027240b814d4483c6804502d41f2b22b490a55c5fe853174a4164499108a0d94ceb298dfcb0c07700a3c6117571a4bfd01f55fca68bc2dc7da871b0217cbabd2777e778bfd4e51e3364b8ad5be21d6bbd9167db0652bae929e4cc643ec464ede4c1bfc56f14090df8992b734eb15d9e32dba7cd0292d751bc0d20ee3aca3db7bd71dd28c85635fda5bbda6d1d546c277fb63aecde1ebc4486af9ccb2f63bd5ef9b74867fbe4577ed50411e22f167605935471805c56cd68a9fcabaf5ea2a45957dc09a77126066f5c0e4bc9b2fdd8825de169038243a773a0a3baed7541cdf1376cc9bcf62ea178b6cf7d1fd19277150f11b968317f6c84b86a6b3016ec39a1278ee1b110026bbda87733fc1b84b9f34cd28961b4f5687dc82f2ed3c0d91415ffb3dada8750bbaf0addf28c7e217e65054c8cdd865f0bc4f4299f112cf80c569cd98e1dfe8dd37401610f9b8aee6385800717c205dc7d901007c261787c1aa922be20f38d73f164c66dced3ca7cb6deb0aa3ba89578d91b60b14f7a929d0c439fd235b7f9ddca7e39300e1e42f1a128ec67c1746be8afcd02c2a8053a33f4a62b13e17437f9c528d1e4a79d7c833a31dd7d6dc0fccad47839d9356119edf7c63c2069beb248b8f6ef2af7d8fee38b923a6dae3e6ad911037d0df263e311443120b7b15beaac1f4787c5235043a0a857bb1feb2eac8ff7b2c4829dd386e77a5a88a854ecfeafe3945495a0374c24db61aa213796f81469e46fab7f1cf94e6abb73cf1f4fafed0f4b204530c3ed34d5aa9567c1377c425ee7f87fd4e354322efaf7a4e7c9fad746a959cc9f660153f8c60ec1e584e49ae0c79c1f568d47eaacee586f6d0460c9a1c9e5d74456920dbc38d5ad0971553953abc647752b472f3d9e810c020f1188e2491712b27e67b7c011264003d3a6bc5556be0aabb7e67a4f9884e4d4c3d6df4875680a249e7afa7c17920a78a0e0ff017794d9c74224e0a4085c439f1ad189c3f7b9a4d18d6ca0670bb7a8b950e6dc5598dc39a34edf9315dba14ab5698fc4403cee7f0497395decabf4b51e9c2dca54854119f49c55316d20f8070798c79fa5237422615f08f9ea2b50e38eb769e7967d47cf3f99c69b598c755dcfe5b0313168b253565350049b24889be68eb1ed5d1504c21cf7e5153285deb13fd3392c49f46b7e97a65a4b137194cd502b3738550b36a7b5b07255ada1c0969ae88075d7c843071418e801cb997dadf5f8a0ba800dcf9531c8816eaee273b80ef72ce41ab298fbcdd30b4fe79fc168eaaf645eb63e67c91ff6bd245e116c242e451ed7f50b5ecc856c8957effbdcbd997cc07af4c4f7a18db59ca172b986bc3239982664ab49b047c9d44349c5099b4a7164490672eb043bc3d7e0af80cdc48d993b77f37c6d5fd9a80fbb41b5b9949f31eff801676a1f167115dff2baf99dfb151b0ac75905dc7f047471a26dc45de5c7c0fcc766f8a08f5b562bae0faadf1b2c3fe50bf92317b7517615fe726a2d01da47dfeb6ed0143029b6304a465bbfde21a22e9044468745aeac5900b532da79a3a906b852b42d73e0d751ff59dc896c6c07f7cdafdfdb5fdd8d1157cb2daf4927476a30e9d399ecc40ac8fb2240bc52f3f037829be9191e3a9e6b995b1b94db390eac70462f08c11601d9e8d7431661048c1bfa865d0130c5f85dd2f87a174d7cb2f5fd5e00b26e2266280a74f045578496ce81909886d23cba0d53fdeff99c4f973815d1f708c9579e2868d9d5d06a1c4ff81abf826eb89b9478ba681aed2cba99a1d081cfd80078fe4d6b19cb1caca3118ad997d97de1b495ed255eb4faa7abbacfc1b0e4fa1d4e54bdadc3783b3176dc2be639c1e79dc76a43ded9700778b5e39893db1da029b4d1479f7442fe691be47e39bf73bc36ac0b921f4af85049debd04b2586dae013fb46a30c191356e02aa12ebf821038fab463b42d7b8b556a685c97e9a825ab06ec4a8b5685b055802924b2cb112c0800c502bd67dcb960f21c310bc398e65ce48ef39899a22f56c2cd86e403341df524c3fdf6a69af7fe562569a8c27a5d807a207e26a576833841eb31e2901e234b8b81fc89feef789c94ec2e51223486e7fb6a28e52fa88dd66d43cff93b2fdd2d24962a960a2c9c333e21af17f9ae3235b9e5abbf94c8bb06b7f2d1046552f6277891ac06f4ea63bfcee17313c5edf9d162de50a227fd13ac3d943c6aa56b74a3cf5023ee99c30d82b1643c02e1a02ae325ce9e55aea3d01e5354057f4444cdc145edf2d7df4f96080335a56c65f63cd7e15af6ccd1e7174d05021321ac9abe18d3cf18c5159cf679ca87faa37da69fb085403c8a00946b816e678d1f0556d09a05bf12bb2db838dbda3749424cc8ac525798cfb45b4384546cbb4e392be596039dd225a61bfbbceb59dfe8f156da4974514305d5f320a5ca00162dd9a13d8d8ee9d8da9c68e5a66765a7a5ce60d80564d2620f1884ba1bf78f925fda425e1b86597a5446db9a7541f4e14ded3ecb20378673cca8efe8aea7f557dd0d69ba47fdabd230ff48384a3759336b634fc54f00213daeb397492aaf1235cb8fb65e3a1641dcfb2d5fefb31d1e7e54b6ca5c82b726fb45d909db71ecd9f3f0da5647c021f3a6a2cceb3c3934b3473fc590fe3e776152369d7110d6f1eb6d59f7219dd3619d01cd90fdaa882cccd85e1dfefe200de0578f7e2f5ccccb8cda9add4629c3869be801e269f6e0b0cc47f6f81a09a4fa05b21683df9d63b3ad482bc48604d0420fa596b1b4bc8e55ca31963982c71e9992f7264c0d65627ab76d9ca8af9a03b9440d81b197b0f213229bc9908610626e14965e5b30b1d194c296cf97f38ad54f062bdad2f5f4321ca83e119c9e87f74b656b7fb593442a7f6bc330c930affb2b971feeaca313688c104ae22bdbb2dc74e2240d0587247f72eddeaaee0948548354228627bcca3407a302403415d862a868e8765e985a3374c8b6431ff33f10162c6ebf0b0ac2dcfe7399bb647ca81ae62607060ef7bf8e7a3b37f1717c04ddac09fa5e9ee04582d684b3b63eba26f6488ff71cac7938f53b8802676eec6060c97231ccf8bd391de9352888d618a4de1a6003c15270c7ee3e5a0f2ff65acfddd8bce214c8f6f6d8646d091ccdccbfcd2f8d7667eab5fae56009365bf1b89be34cdb0c2f559f005dcc717bd52103fd2914397eaf648cedb9f22f47034ea07c94127d7ba69b26176c88af82ce022af7a71153f9fc83e7c8a35afb54b78e6b5693396bb0dbba3e6f8460868901b0e54d6ae3ca4c174d83f905ab30ca57e66bd498af7cccb03fc3acf9b02d570c9152132ed09b38a81dd9b41e73737fede3eb293cf83180733c5f9283367c990224ffef7de7526f132d23061337e8e04534aa7e52877a7c4ff32589a404b51f450e6c9b9474cfaca613ec34667ec9ebc65d43ec68347a00f2bd0fe5b29ef66eaad8e9d1b50aca1262dc299944ea6360ec1f50b61fe9b4df0ffa58388dc0a36931756652a1b6afd78410e2e41227fa57c34d5d8015b953d5a08c4e76ad72944789c5e11e1b1c90ab681b344e16d69d7d3d0f490269c48ae0ddf4699aba179f36a331893be2bfba5160776db0167c22965c2b0f528fbb6b2be4e56718aba1d5a9c29684d1a30103850c18788a1fc59638af6d01d9b2484571e82955e5628b40aaa9a609ba26ebfa042c74d8b468dcbf310f9ec42cae94c3a81fceb66d2c421f40276be484fbf2ca00775eafd0c957f9515a055748e13d8197769322b4590710e27e00a60f4d96466a03096aa7a2c3079a9a922683c2d72764e51b072d49a08d0b785d4511716fccef58256b83a2a4e5640178b328bb7aa33e6961b8e5ee69e9028aa0539c0375e861d557202f47978badd77df735c93099ab70b8f381a29a649875b5b2dd1ee0574f7730aee8c72ead41f058248f222dccc2b7e4547a7ba7fd850398cdd230cc8d64a01d05fecc27d4f8b07d0aef5393dbbc04e2a7d18586ed65d8db15c1094034aec60bade9c8607973e04a711a494659c0ee511a44fdca270a9aa711229299169e0cb6db2cdea0c490116954defb87f7a524bb55a7fa0dfb63249c45d868679da0d9cb8f621b06694ac95f74a52ab641b830ad229ee970086234d223d0b4fe690b425510fde7ea97e0cc36d0b6227545c75642e0422ad90bd19ba9c2b13f09c6b118551be38a091dd75008585ef370c02c88c3b6b4bd6b9070b85e9e553b90eb384a1ccdbe650bd6b16d0fde20660e946611fd38852cdebe049608cab71b90c512564ad834852188a9e23500f91c95bebe6fbee3bfd998aaed24a7a6ca400ac896c9bde71e4ce00e2253c6939fc59c8c72774cc5125901ebc7e1cf34e36e1b81ec56bdad1f9c1a79d7aff3823f5d684fb37aa674bc47bbb80bf8df5517c41052ed80120d25f9e8b2dd177644299e986db080b23749629ec9fdea0911e2ea12f46b5e996f1a260f97a6b70bc6a6fd484f3bf3551391dae6eabca25e9c062b1923e20cba937f23cff91e2b25d72d0efb895b19369c85714b96a79057a507003080891e77a3f6362c613f80c9273252875b8a1ebd71f21beef40d973cf4db59fe592e12dd115f3c34a7cc5f03eeedd38fc8181ee00bda17f7b6caade76e90f669d1e115fcabdf00b6cd1ac6d235a142e6a7a0219e599dc0167710b547ac0e7a88cf6050952deef7bc581293c64d713ce23d9ab6250dc82145512a2ef155c70a49a351e968f090af0b2781fd466314dbcbc6280272da143d765bc1cd39def761f61514959c2786d1ba273c791052e3646926326a447b386cf71fa15651c81d0a84ac7ff3439b1b3398f171d4ba9a8059855b72cca37e025a73ebced5dcb81aff2785b5e966668d9c719873fa2b75ff51816e4f8ac09d0f679a65cc8298d48e98133eb9871810347f0b3a53650ceef599bab40afc715e303a71ae96a2d38d4d1cd3d8c6a97e1f18016635004ae1ef5208ecd3a0d93b5309b7aaee24f3d0b2661d978877c054053b9ecbab2a3540885e621e73bfb82aefe8d588e5fefa0d3550a52dffcf24b5bfa2a75d04a7b1910a3057863d447abc9b496b111e341371a14b9fdd27df9602a574dbdd294a879624014223c33dc85dca3e80f20559ed1b765ace8aa9f0980a798fa947083fdc31c51c22f32b2fbedb63c9d31df492886ce0ecf004f38e1a867ed9ecb3eaee0801f93d7c0f557232a58fcfde42debd5f64e7b2eafe4d767190b6bfb02dffb0187e9c1641fc37056bd257887b9cdc9c1dc388eaf10198b55b50877cc256bb22cdbd467c68f4e1ca3af20d641b6a8f56f371cde353592369f850fe45909415225d7ac29ee9050969395696ec017ed69bc8610e9eb064a3f08db0276abb99af2562c9945ab6aa4efea0b637ea2437057ad7921eab57433dac2cdfa773fbb02b1b760704d895c119a0b1b52f86ce71a216674fe91cd1f44055c64670839c3574964d08f7317dcaa25803f15447a5f9b50796c50ebda82a174b9b67a2061df56b3564aac2256b0c9bc678db6d3dc63b8d89311690307b03711d1a56ce2085437a997adf18529b027393eb8040d98fa6971b1f9eb018f187dee72bcff52f51c2863204e5f977ba5706c48517d524c522bfa0ca020c8e8a8cd68d5026e12fc91d00b8ee5f7d8dfbe65a4bc4c41e2071ffae10d51818a859b49dcb4f6a1a5463788efa34f4dc68e6c8ff21a7e8ad94d9455e99134c3d317e76e0aa6e81c8e66f66b1ba86c72f299fa1ce7c922a6ab03cb9c1c244e043ebc976fb1f00bd12e9c2c135450b48b2d2be45856a539df8b2a0027b6d4154ea6e700d11b0d75120f880328a5830025c0902d4ff4e5aa3a9c8aca9cf4f0d53733ea185e92c9045ee5376ce8c51057d73811a3c02ec23721f2fcec9ff514ba98b77444f722dee4679c44c68bed3c8f963fc7cabf18414b791657565936a0b2960311fdcd79c6e8818d733bdc13e6b783cf9248eedb1a3ffccd334bb2f43b4c9e3160f129fc52e6d424a2f1d07ecd7c32aa033079e749bc3f4da3fb97f6cdcfdd2694deb506eea00e2468f0759972ebb65f6ae9bd56fc4caa3873b8d861663a335e8f9edf3cbd1feaea3c759fd2c6346603668f1a65e47b24716bf9241a8665ce68fa6be8641f821e047d63ec9a18965d405054cc19b96e97574580a4bf5b6783681808b6302533ec324d2b1c83c5bd393eb1057c106dc284e6ccbd191db9411b8775eae4c17c681007d50d04ec9da319e12f13e4c41457591774413d8d000b948ee250e05c0a1fefa03640556e1cc4cced62b81e1838d1ebcb3c7c30e27d7809f7a9566c307d5bb91ce7835d495731953b1d37fe7e0aba3014ef8d4539a3a03b57e81bf0025e8e80e10dd5b3b7ff66e88d6f7f21baad947820256a5a7342f68862f614d4a12ea0f29d99b91c8f6eb030b43cadfabc9e75600e1a13a5a0b27db80718f750a5a7bb0cd46875a27d42248c7c62854792e3e763d9bce0457e8221f6066c5db5ab960608698c431f4da949ed8b458920cc43ec279a5816141cee6557f9b3cce7b0a7e22263ec22352113f3d72a5e53fce2189eddd31323d08d778f61c103dab060e207789f47eee1b30a922b417323820df6a0ef7887b7ac002dcfdc6b6c3637ab48324dc2625200faccbff6353951c6264f7958640042fe0fff76b907626588a160acaef947aee750a8db7771d2b9cae904fc0b1db627cc42167c50073917ffc83e296842afc72095722fb327c63dbc2ff5c379155d2a7b2c274b8bb47d0353f8f5cbfe616e5f06a0a1a83a6bb6259c66f464c2e475d4f81616c21739c67b765bf3490eeb8465c48bc34f9dfa5334901976d81204b1db3c0e106ae272049661974c1352d12965fd598a0b2784db95ccd6f55a2350e68687146602bf19d87d650a151a8c37937b457d098e4e0764e4a2d2ba8c3715af35a43ebe01226fa49250a21711467fe9a5ee0141e3731def0fd3505873b3003ce1862ae88877c6a6fcb3edf85d24014a3df94946103148e1884f2300e5cb226ad7dcf0274d90086a65eb7fab94e6f3d8efca0170ba6d02fdafd210dc39b013d478969b5d0a6453933c4751fbb314366baccba71d1c0b9afe747d65b4efca28cdc3d19ad24b682e1c5d72d07651169ee8835914f916af911aad0338dea093542407851c385ef0b4034cd0f19ca0fa65225c0865c6b18fe627dc8676583f6a458c24bd7ce0b7f47a70fccf6a34d018e471200becefadd17e3e674e7bf9ebdf2b37e8c4a459505ed9161b97cbe0355fcb9b87967964317221942d804e132b2c024ddf407d10925847a8afe4e75c75a9eec58e46b845ab836717343c1db527373e34ec985dd12b7cc6d06a83752c26927d82976ad7440198e5f92cf4f1fa41c79a736d05d3b8fe552557c2fc177ba9c61259eca43f2f747fad25a0a4e82f57e5f75ac37864bdc19b658d3827934d021938a3a4d229a7d2dbf55260736c068af1d82af3745619a612c13a666bf5282dc317e4bf66c4579ebf84160fcb01e720dbbc6528aa4e1106239b4c45b5cec01b784d22499b4f43b6670212f021988c346e6f16a26051be26605212321682e4cb3694e5c013f45847b3eb529db91fe5b39e2e8da51abce5be9e98417f83328a77d84cbdf6024eaf24629f31c7af6643f4b7b8164f28f291b52e34616d3633ff28a3c8cfcc1266a1ea090033ef563f845a79938f5189802b0633068a15c097a9179ce4da0fa04d7f85ee02cafa37b1b4ebb2cd44e4aaf2a15dfd58cbd227b72c99a7b23c7192ede15664f66531cbc00ea1e81ef3cb182b9c92fe8ffaa8d7dd74ca7aadb1456fe0eb7c24fc437c5e43179910bfa0ffff08c4e402e999e9dc1b2e0aeb6bbaf40d5ef63e3b76f4c2a82fa1cf35eeb3b721ef9000f3ca4a912c8ccb5a22c7e660930d4593466f63339a4111208734e743b233cf53ac85044a896dbe351945f17523af7afe3c235be06a87e93a4fc58ea38000aee322bf1aa796dbdb29136ba9b6e8ae9c4071553e30bc70c42f5e51c2e06e67322016ae3eb44d2515fb8ed359f82a6f536e0a8a66fe1a5defb0218c9ced547fc5d2f079a7316564e5a36b528ad6504676554cc9a17f4a8ffde37015f1c464b55b8ea450f93a17969e6ebc30608dc679bb53f488dc357a25454556a8607bcc97c9b428818e8ab22363def4427875dcfcccf306766209eca1ec47712bc4cdf1ea2106332e843dedb79931155b0b7c9a201ebdbe42153dc30706004e8b414408b852f37fda5be990e58ad139afd2b1155201d0d03bb91300abc88ca37175d80334a831c322c2b8d8b27275712110163a007c4defce9de19227e95b84a5d6157982b1efabc7e2619471d667b89638986d8ba0253aa81b797d46a4f96b37d224410dba001b93d0df97c442b3369ddf50d8853dfca522d7c6813cc1a1e7d6bca558091551fefff8ac5d849f3a5a3fdc7cb9ef9b0dd5348918de3d75d797f5ff1407be89cd17212b9cd2678996bb99325fbbd50a79e44cb8325fe6fb1e805827f46c5484cf6f2da388604fdc760fb64eb390fc2c1e32429c41a1a9d78d3023e9d46527adaf15fae56125b640bf6794a530947edf54848587a7e8d9e4553d1da42644594bb503e4d563e0d768837ef1513190359fa9c24d1c21727df58b7d8fdabc328a26e77b2575b4fcdfda7b806b352cadfca5ced4a6c9894b297bb3dc8f7818ba07717e053176274eda866ec8533dc2c853ef0bee01da9b8cc74a309ab08f240a3a251655750b689739d31f4ef787294fc1391182aff7708ffb6776da1d3b35e3c62f266c2496a1e1fa0183d1313791f145d74f452f2debd67eeba1a8ce85b79086e7f97aeb7f5fbee6cec64c2f442d8f93188f5e4498a6ecefc82069e8906f9c283a4568c91418ba7563d306bdf9782095deb36765b9cddb25d839903cca5728c4be6adc26f5c4048598fda24dd0bff5f8eea5f86d883c28e333f6bc848cdd0963f25e61e7083dfb3050bd853fcded0ea8b375fae150475bcdb59bcbc8239a6add26eb208cf2ee8345df39f7500c3d5b8e9ebb9fe49ffc615c02da3f13972e2d82fd02c388b597372408be395ef03729991e8f3c1f9703b90d7b034970e8653f9b30770bd01cebb875091ef37ddacc5050588d8ad530d05324ecbf52d16bf32eba40c2290381f490bfa59e543593a35857dd8f1f67456adfb0b2b0ca4403ea5b21ead8f797e9a4d8e7f5d5a04fd3ffca5f0cb645de482a34f191d530f7684813e6c23948303217f115b6c23c8f55d47bafc8919f10a3860ea428acbe6fd7115f45eb0b6deecbda42e1b285b3dc8e32099e532b135c132ac48a2e2bb71256772a73dddfe640175d005f7f6a8a95aba81d6c57aac59e88ba05687312cc0e7a5bb632fb099d2d87b6c3ed1b1c2bb133250558d74744f3670f40b6e3106b07e7d6ccdf1923dd522b317537ca7c82b00e65f10534e9ff370341b6227b536e7490cb580315fb81231178887f9d680d4631842a6d466bafd56867f36a4e6143eea5bcd0d7bbbde970832628ecf53e9ba0f59e2d21047a87eb138ef11942aa9a6bfa3016166849a09513993c88e36e26e5c92009e33c5f95ca028410ae4e463d62ab5277da992c2041962261677574f68d888c16eaea717d52017622458fe712985fe670cf24a95e82b466ae95d3e72e94e92e8fbcbeb12ddab29e26f4ccdc07aa225f310ade94cafb2fab27c95411674378fa4ebaf83bd24dcf29f89315b60514cf2611f501569d85d233a2d62222e14a76817c610aa8d7767816f40648d500c88ac0a8bb4eedb63b7035243d4a66165b51ae9f640c74853271b6ed63c0627b09a8e3129603b033d46ab7a7dc17af44590fc306759caab8fe53712d38edf71c4541e7a9a9d64ea1239e73f36df62ff508ebf7743bbbe5fcc12b9246bc8bcb6c921e7dd185da03655dee021e5eb1d8b82879e07b1a012310756f4e7784e56aa90f0be9cf3b843996646d9100bdf2bc6ff79033eff2ca68ac753fa64d30baf07f4827ac4e0d7785f00ad65c52dddd0c4972917342af2fc98fcfdcea004f80f781d32456135732533f736ac3499d1f469b216684c56770ea2f109912f07033be20829b597f561375b830961c4375778edc7a79804838fb7c12fe58ef96cb39bf6e0e9dc3cdb1092a544ad1c8e72f6887451d6ac68c9a137e8e227a32315c0e46677ffda45547c805d2413d726e80191c8b0e3fe0bf681ee37c9dcef4d0608b92c374f9aa1003bfe215dca37908a60db85908232865f2dd474d4e7c65caa073c7b2b733330811434f38f806e5bdbc0cc4c7f844f7f35797967c45f3287395d03f31a96eff2d1ab5aca5f69182688fede6a78c987d7866aab465b0c749f2e1ca9e424d13e8e54bbf9bfe3daf74840098ab54674b8747787b50adc2b778b8f537cf3a9a745e8ffb2a86d7b6bfcde68a9e436dcaa1821b7198f9396417287d4c43009cbca5edbc3921bc94d167c219c1bdfe489c22e21576f9d30efa32baa1c61fc2ee17dc3bb5e2f66ac74d525a67af34e479f00fca03c27752873f065aa884f9d46efba2543188a98aee9826ae9b5d315c8b694c35c1a697d8ef42c3d8f14457ce60687793562bd4092f09f475e700b092d22b4e78cf325716f2159a767a8a9a855273a6836155eb4a45d59efe218b3cdc679642f54113d00a8fc27981f04fce97840cea05dda593c484fb5b50857f7455fa2e92f8ac3c3afe264a96b24af952180595dd0d22fe98d8c92ff532871fc75f06c38cff852a52046e12fffa26b1f0c52da4d654b7fb38dbcf15634f2831cb92b5ab8690c31c57b39d2791df450bd9b2e374ec64066edc69b1ef2375d406f9bd12ef06337a65dd46f5dfd79cccdd25fa0c33a3f35b1e26547ad90f03397fabb75e1e475ea8ec01afc1ec23c2ede59193a64373be4007edac572e9c81ff89043d13e149a54e997de4a4b76c0c4e5f50a4d3f31c4e156516408680d1ce1f040ff876a49edca17ec02bde27e62902d30339d23390f583fdee2cbe101d1c52c039196244178dbc984705acaab293f22f17b5b9976caaa73bcc8f8ba9a508365b30f16b87c7124110f0e462ab5be558de7f65e3de16796aa8af2779934423c2d4b2c5e855e7d1d8a4016a5a8c1c760a5a75066e3c8379f470cccb2ce722583d0aff8eba131f5aae10e27e248f1309e66d0b35f05fd87a95f8496ef88efc9d2fd13b6c985e22a7019f50e613dd2bb31afb742516199b547baecef44fab916f1a979dc98b536d66019ca6cebc3d0852f851fd1652989516f80280728631d9697db2c788b97f6722760ad94631fe496eff4556d1ccacf76cd2e7cc0d317e2269753d914f44ff1ddbc392f1ca00d987d9b7132f8d62401f86db62a2df7ad32f46898963e9afebd3f68308b22700395080d973d4eb72ba1c3e9a322047c1b7654d76055583616a3fb9a1a92b99cfb8f6449a77e587981363d3fd48e23c4186bb5cbae1792369dcbe1a054b5abd94bae27a6c86266e669321776837e808c606d8cafd75264e88ff637e192958de68ade74dc294dc02af9ff3ceeb0b17016d6b08e10c1023a1c597cc13f1b0190340c6fac22ef11399472ed2421d924a3ac27c021006e65c30381dacf1843b5c0bee82fbb23f3b37709ecb5ff3cdd98e966d73b45105c2c9cb24a77488b2f2c0434dc8d081c562dbcf84afa7b02485418fa3c6c3ee0119d3cfe4f5e3f96c3f0ac5546415cf9d58f4d1bf51e6527065a423feb584fede6bab34c0628051d206a0e5f48d506c51c62e36d5f680b6a626f1ae9e0d997b49b652693aff9203f0aa9f2104418a26538fb4d0a018541e2f66ad37a6671d4d3cdd45a58f1128a7a49e29c089bf6d25f7eb8f5f4af0074506cbbbb9a7e20e2d2e1ab59c6cb41dcc2f6df7cbfc2237c808f6e904ef0a03ec1048f445f9202d175e018f77c3618a7a9d9a6ca33454da0e4d074e7954b60d0e19a230e0782a05aa8682a7322d302a377650d56f5e0994273b0e6fe2438450b88b51d7d8fd844d514bf573319add272ada911707ee1fb1e9e8bd85506dc999494ec21946903388ab544e408e98506ac971a2d96860dd30fee5696a65354b727866baa4cd514719bf40679c05bf753da6465a33bbc691cd59331bef2482ee6d332b3b6cb1784002791391b510a299bc2f188645385f26e7d87635c852b5fbb9cca87102a5cbdb41bc6762d746ea891b75502e3929287b5fd52048658d4fabdb0950b5c729abfa0fcffb040676e7abb6144a1de76566b0c64c2e7dc88caab9518889bc9e1929e0ef91059d2c543ea1d8f438ebfa3196ed6d5c746ba9372184b6681818020cbd0d30a283f35927d33d99a2cd392c7290e26f4b905f5f07f65d3972933768050b7a1ef8637c9a0e59e024ab9008ce4bac41aa44481c7b4228937fc1e9deb523016a8cca8634516498118070100caefcd94645b3de198fa3e89cba433d8f4a3293ce17dd8276f0357c6b51542fc7e69b2412650816343d759790cdd1ec8213186f46e86835ba84659ca09f89ebdd4ca4b7cae7bdfd04b67137050009c6233c97feb7960b1f3646bff1ec4ae1082593f3646f0ea830e236669c4c3bcc33313e9e3777b025373f53d361025218b07a0446e24fd13de7ee80851caca2419418dd95817b7beac6d638e3b5edbd95fb065732785adbb0d68c299d951c12455e5c4ca95f21d120e3347e7c003f8d0b8e40bbb62c341b5aad0abf2e4f0a920d98922b94d2f3a00bacfbe6f5473c8b665f99219ad92c418572460587ddb45bd51453b855a0286eb2430a7006972cb9f0efc0be0098728fa906ef9a971a776cc50a758d110f1ae50af513f12d0b99f7b7c5192d0b17d0aefd5bed9c00524be078778a4074ee77def0749c992c41e4a02b6c1f2b881ea682a3ea565e5ac0e0661a8b9c2393d1ffa42103e3f34d3e5c42f5add80eb1318158aa00822a63e29f3d9503d5b9f7ee9f3f53f02e9ca3ee9c92e2e99e7e701922a2a7b4cff970d34045ab56bed489a9589493ebed42bcb571f98b5bf7b099f8bd2ed0b00101926534794019af4b59dce55ba1d0e2f248ff6003550a7b65e476799db8579f7da95bfca08b602331bd6a54a27684cf0dd3c7bb02c64c8be3d5adcecee2f2b90f9fbc9cf7eb1fe356038fbc71e1137d4b359fed1b15abd87f23c6706726ae1e843d692b56afdc3c7f1f43b5daa4d0418f9c95a4a19650ac24f436ee86cbf35f0c1fab085f811f67a4c75281701fe107f1dfbd286f67942c72a24b92fa5fc4e796cf23efea9b35e5cc5a2159ff79cd43117043a3651b1824887102a63c7789e0801b7a50d21bc2036e84b516fa8421f3ccd500a1f90100619feeee52e5c478d30ed69d800e7bd364419ddb593707dd202efd389b787e3a2ed1faef1008077ff9170fded58925844f0b7b704f919e9e81576eba85eeaa05f7a553b682bf4f03d05346cdeb66c36ef4933490d8c704b9567f15e1af923790b79d21aca758e3c105ec74cb74f8e953864df35d5b42b002ce9c3fe31d78207c5e9777f73a9d0b679aaee232217b6738a1fc40cb1a99d177244dd06547ee330f8ac40b85899bf5cd5a3846b8e018a97d9a0611ecf92bc81eb28c7df280717a415bd14caa3044d6fb283c5ffeea532e1b778fe1bc8d44ea8547b25101068f84f277000a1e391b2ebee45ac25370c8c9e7e08bf0cfc8866402c8adaf1658b72208ea638cdf4deb864a93c33011cfee45b141fbecd2b15445ede672c0f91e943c2a4d4ffce902ffd0c0e9dbe42f1fb535d452804b636efc4c42fa5af33ba9508aa47f63c2b52d25a54a367e1316f26d7db2ea6d80eaea9e380e2fe0398c50e36a84ffd4c2c49ac774156ad6a09b721a8bfbb390e9a702260f9d41ff7c7aafb2b6cbe3279da7e3b7126d1afc0f1f39d445a7b818aeecc3bcee27b305123fae5a71341103880eeb326eeaa812e76f63edf3f716073d5766a9a5a311fb6b6dd24fac58a9d19464aafc27499ba3e6e371af0fbb212faa375b4d45612ec1741797b9b3bded0840fae1e77acd367f71ae320b45e58b7f07d19c831c2926143d135ded2ac9fd2a5e1513e042f26fcf4d35049d2d95503987525051c7133fc5215a6f571de34e4a9979ae94b4e27793299eda77d2e227fbb0abfeddc83309296774bde114fed31f8d424b59e8250611047d771dd1562482df35c2b6ca4e5d99c773be19cf13d4b1865a7f03335dbe3d399e5c055bf7d3decb962fab05992781e5722b766ad0d021519c19aed66fc92c26133c3736dbc90233897d18a847c942e13d41519810563991aa4df56dd35a225c6b97381c34d0e1155298c836ea6d304ea25d38471f7d903b7c1b069d6fb8f50b4a2a13efd372cb9d0b1834a19e4de2e4dd515d4b5fed016d89a1cecf0eef59edf1bc34a083dd40355f01a152dcadafc9e0610ba931d13963c6bed303f0477c2ac8220afd72e71d28a37203753ecc8c9ccd4e881e35f4428e13a5d4a75e87b137a376a330a86a1fe42bf9ad699da163c616b7eb06d15e4afe3b9a57f72fb2baeeddaff118c2f64fda141cd94c81a64fb4416eadc32e55e54a5e391fd9203ae1f2d349d584ece9f5a845b74396213165f4c9c484216769d4ee1d5c92a9deec02f8235e58d68aad0608674272cefb11f898a8c8aa5015a4857fb8884c212ccfb970ee7aefbc48dffbf1cb2c2ce2dcdddd9f5fecf59101331db8d2a83cd1415b6437bccbf351a26eeb62caff1704c432c6eee24c5942d8fc5cd8fb85acd2abdf88e19858fc894f027db9d0611fc60d25035a7c35f0bf529208b6b6ce3bad3112d9d00188c8bd8061ee58192c9e3ee72a8fe675553e3c1da0be69b1b4b33aaf6e86717c44a406cff142b8b02ad62a8447b73ba85e6015e71aa5630a7ac0032d0a2aab314f78b280e98bab483fcf138451a288587c9b2b170eb5bed26ff04354eced0a7fc963e1f72a07c3b02a5f45f65d30ab0a1b8a7592c33a37dab3471324a72a7f9465d7be1f87e3c50b56fdad2a15701b808237bc83ba3221b86c566a3e62e8e0b55bd0e984455d7eebb320414e172cf366d408a6c4cf4af940efca4c39cec6a50431dd0781e126172a7f23055f270ceb078fb2d91ba335e965f91059e90f43c1fffc8c27542cae579a923111d81cfdfae10b92a1b0ed14353573e9741e9be0a201e55cb944ff27fd09d6b7b84c141acd1ea3b121fc9f8dbcc7ab3b89178602168d9598001ca83ff4b92801f4c2cfdd841da52a855125695b819305e4a97abacdc78d8d4199e1512a8c5fdc505fd816d8eb1bd5471b6edf6d1ffeaf7efa77bfa7c9ec785fb4461e046e98325e6578c750d9c739e38ffe8b11ce37e5c112c9545de2b0bda7b2839a3988f02c9d45453509d5934714e65b040b6d3804c9e71441f82fe08b053703d84f38dde5c2a4c932af84c6000d7d2ebea80aaf7a9c6e8bb427dc1c7a6b164c10ffbefa83eee634cea635323149925f3ded96364e72c6867944dd32d1a870b6e7b34c46725f526d0129a0f116dd670e7f8b4dd144ffddf07a201234b83651adb8e4dc7e17d57d52d574d71bdfb435a1f22bca095beae2e6ebfcf48b20c52d16c55dc580d3544928ebc8bbfe02c324166b7c30cdfa37a4599940031e6bd7720c0a84605033fa00f02665554555f47b213fdf99955ca054ff5a6a890d5ab6fa8136ca1cb7e25a1f6de2ac21b9736460767cafa578fa76999fc3421bf2641c90d77aa7e4039ceae62322273d404d330dfa7af8b1f041e22dfd4b7aa89472a2ed1accd9e7fd8d704eba9418643610f6d71cf408813134d411f0c4c88076ec1704e602614aab391caf43c6325904fbcb5d4263823ea038eb7df6e45cbb037e1378157be35693a0db37ecbb63a9409eb6841892479f3aa02b7469396e4974cec51d5610490d7f140394713803e253cb0e34cd41de09152728fdc924017ba93184cac351ee25440ea56768d01c8c1982a57b233dbd3e24e2fb411a4e48a586178fca807eca94a9a5b66633c0a4dcc64768d780c964acb10a4a581bb5587fab45a74bc6ae0b6f68b6ee75c716abf4ccee81269934838497f28515774853f7f3e61e7bad8e382d683a17a5dd0cf4c1a633db177625ec04acc60dbe39217449ef7653247f19fd4cf6d39bf84712c69d5ef428f93778fc81ead2845d750a302d0ec35d2aad92e6005fa93c0815dfd7b2e5642379a2b4b883a39f06ce5f7c6c33bf295044a5cd4aec844af77914d79709f521b760ce0b15c0fd9aface715e0dc7d5c9815126e88f2693c32258c88caf4218314d7b23d51a7cee117dca4ce0cc3daa0a68c74d7465773e0499210da9f1366a555873f76dd7c72416454fff5cc01c14ba38e956cd1daf34417dd6d5d3392fbc9816ba0e1111bda87c7e1cf862d1bcae0de93e6b48c8e47325398d056e16f7e3bfc0d608c15bf582d8d1f017da69fd7fbc951c70c333eb12be53937f86ab011469c13b0ba92b8f2d505dd2a36651612e7b516c15a1afc44da94427d47e60d25cda65be9da750f066ca7c13cf61749d737c17d499aa1a817a364141a853ba57a053fbfdb1d47a37c3899cd1fcc8ec0f339a72c03ce486a3105eccd0813679472c05aa4652f4e530760ad67b8c0cffc6953604f1c14c210d289fd20fb4548ef5da575ddf0e461b7f80c1faffcfc23c99cd49db8943dfaed2335d38ff9cc991255251c95658ae0c8027f22437eb69a8dea1bffe677c3aa3d8fe949f68c45c2f31b4ca3d78f4716e9bc6459337fc0d0e6c5ee3e8de06ed9d40fbdc7bdcc1fdb97d15e82f8306f250bad088d81375ff7beb5fb5b9e42ff5ff03c7f63f41d75b090b7e543e92dd32dbde38fd9673bf505e1c4c02cde778ef0ddae7d4d8566129153f9a45660ce526aa33e67dd040fd83e82a6f1bfde47321cfa49dadcfcf497d9e19c75a1c81c5f3834ef0c3bfcf2e9114f1e6eebf045c449e3f8cc433fb8fc3fd3a59f5fceac6429b76b0520903954552d83d43c8b07b298be5d4f0ddfeafe201f6796d60f37ef549ce691fd06bf34ebbd8524c284a70d4085e179c610ec7a29adbdbfb72281145b813097d3d0b371235421b297c7fbd25c73281b7b8bde53b21ceed8ac51441fc0c491ee041efcf2268066221e832a09ef9b0df0e62c16ac94bb91f2131adde5b868227adccd08571522a78e6b65000922a47d9b12e565de2da312e2b8e8387ea284b7ba28acc75f3908a69676a865dc6474258a926bf03da7ec0bcc5436b6fcb527ec5f083730994337ccafa033fa2ab5b6ba6aac733c0b4a747c2e4a4123292b539a09f989d7b939cb8be50866c78a757d3a6c5ae72b59a2b8759630569e741cff5e96a304c60bece2ccdc19c19e8528983463f12590916b2615f73287d4eaa7571122510a75e6afbec8949e9a8abdf89501641d14b3ea5bfd71289e8c0cef759c8bd21ebe11e336286233fe4af1b6308a80e6d4e58886269e877f18d5635763ed9fbaa119df02c98ea2d73202fe4dc3e63935e565dc308770a9623ef7a18c213d0076cd502291f4d9f70f7ec923f3c252b4d3269ef9ed816f249bbf8b23a4b34920533fce39d158e323e7702c3a90558345f359bf1431f5054ca70b56c6756de4a07e40b9dc3ce58ac67b6884018688ba766a3080664cdb0fcb3894de98608ab86e4e61e1b59f5ad3017eaf6118d83a623f883575582709b5a099c8bc2152a03cf6450e30a0c7bbb61d4d9f1fe98035763a258c22e744771e49399c057c595cfe64606c50dcd9612cd519bea9d60c6ca6795c65021bb6695baebeeb47601ff2186a88e8eafb0b9c8e918af07c670a6b2337395b96c1fa23b94a57b49644e479469f1548d9ce6435b1db5b8cb95371ebd02b428b205c8b598aadd984f781c6478d5d53cd2affb6a6997ee8238b3d85fa1f2fb65c741f70a9cb904be31969d34a56a0fc26f9411e4652f942557e8e388dd53b22c5b7877260ce9584a9d8a5310ff90bc8f272f0240cfc1225dce15f6dffc6496da7bdb26f48d4a33898cdd4fa802ad4bff4ef2f9c1574cf4c8414f3c48dfebd78f7d5e5f5786dc02f153968b8c51a0dc6e4a140d768e205c06decdf0ceb8c00628feb9f025033db7c2e30f2b837086a41d58dbf0bd6783073161782cd982dc153e6ab0329555ab0b80c13329fa7e4922cd297dfddc59d183412c8a412cd1d6345f5690f5667db99156ee301daa050ed4fecb1f13668bdb5bade7edc4f8ac2c8f37a414cbf808b1474f441fb171a30ce5ba7256a39f9ce0c2cbd5d516fffa3d0ab04316ef3ce0bc7caf5ac93c9abe2c6c85238918dbf8ee941cd35f6dc782218b62504a7b22d0aab45f15796d0e310c97f5f9d058fc8c6fa961fa3b936dd3262ec6c492eea2a350b9a211599c993c399aea194bc21c68289d21975506d754973a804a745254aaec6baaa2d426f4d6a62e6e560e4a28abfbe1c1c3c30de5533d9f4943dca6cb200178312352c96004f4e9cc6c5230612622f54c2221a8368491e50314f03f2447305795d8c6d3e508fdcd337fb18386ebdb8b18f9723dfd920d1f4f7eb5236b7df3e1a48f252c5f1af72042f793e089f2fd543e3bde9be714af4b944fb7964eba3900ab5c5a734004f27f1294821d4b1606e890fa822687c80fec16c41406caf45f4a44bbac9c4daf859afe0bcee26b0c4973ff12444d8b3b8fdd245d54be1267bec5764a666e18d90f3aab7f7312a9aac81a9d7eb1c7d3e8b4b8c9fac4304de6d051c8188b5906266ddeeabee18c9cdac2fac5439f2cc1317520ba35f31f97ff1dc3a2f545c7fde4c788b7c66cfd27264bd2d36f5bb469ca8271b43164b48cb1b0817113cf8ce3a5ca86be74b0230c797bef81798c4ffcd741bea150deb49b16de639a6d92fcdb6ce0567b19ad85c70a1801d6f85cb8ec4ff9b158c859ad6745ee1af480a5c92c0051a6d1d1ee751dc8fc2eaf3d46903a4eb80e18743dc61f0a679a292b3965825ecde6c255a694fb0a5fb933d96e037dfba57c3ee0d2fdf521b19da275ceb4f0fd8f254c8cefae875d2b009994274a9f62b6662a5eac443030e2d5d97becbfac8da6dbea399dfca254f0e004afe4db4a7ad18006dbb734051955e6a95a284b0bfd77d5284fac200fdbb54f570025c9165cfb6337db1e0bbaa44d6070c204d8f39ee4bb14b0b6d5dbd122a29cfccfecfc707bcd5ab1baa8d2fab88a87467178d273e8d9e0be26642ac549daa0b9b421d7a6b5729dd20242d5109fd63cd3119125ec8fc4e8f5eb2d8eca30fa44560018ca58471edc8b93415420037e489ba1f31a362b2982c8f7f0c76edc3f85fe7f401b8d111c5ead6f43b688941cc8c5dd7710761a904af1a6041df96676356e88c090f53c9f66c683f9d73a9498464eb666d441f28e41ccd3469818ab9bc4a0798e380c85b2ddd6e4a5c59bf3cf0b62833c996b76883fc3a1b59621e81bf48878e417a7b23d579be209fac464f2279ce76da41d3ccd38b8883c32cd617939c4c76f4bf120a9cfddaa2bd4fbe8e716dc48ac2dc53330a107e1b70f84499e2eb07fcf54b48ab17cd2e12517d55198e462c1bb7ad68bbdc6a968949ef6cf83fe73d2862e518a81fe258f7c0d18ea7b70bde46b4e4ef519017cd4644cf04ed57021f99900d8064d2a94d63b9463718fbcad9deba377a7d1463096759e99d088bc69c823ba2b6e72142c076e9b8f12cacf3829a196e74068deabea7998d8bf44013fe409177822e25bc11241ee52d7568f05ac1b9041db7a89535a053f56ceb202e0dceeb539838674e29777aeec5a3612435179d1a6a2ac33677441d46e2daaaae1c9081b254e43e3be36213d693c6935bc90cde88e46245a166d9268c052cfb7ec6cf3bf3a06a41374479fb60fd3005aa3fc1ef4bdf0202643268d31cb5fc74d21d0aa841123b5738e78187204442f0dd659aa88c90f0bdc19b2681b732b085ce2e7af2fa0a18f9edc1c84744b894393599e3ac53ecf7f8db5811c99e510613ae47579c05463734ba860a221e3a18542ab907892764f143cfe6fde995c749e9924483735dd77d807a823d2df1da91e42dca6eb2ed866aeec52b440662c56a5830bc6bbb0e4a13960322901c3ea1247ac8cde8124d58403302c22068587595af356a43cafe664146e797570f91e82d763ed1830e902289e14253c9623cbbc420f334bf343fc172fb2d32e5c3db3372a939eac4e3b68b69ede43e56efd9fdf42749ab5bb4d27aaa079143ecc34c8ba623123e9e509a8ddbd23f55df55200152304120a7978a9da9ff5d9ac75799c3fcf0d85ec34427e976a4c54d31854dc318ab23bd02422a591908d990eadd8211b7cecfa7610aab920d8ba16082938f9794fd051249fe190511901407fd3bca173643073785cf01ddbd181b30b49b19efb39c05859a1a1912a228c19338d71d428aeb9815ec70b481ccef58a35b2c7d1b7daeae1ddf3b1a1a4b5fd5c3934396fb262bad106b7bf83a36d422d8efedbe45a901cc7e2784d84bd19f98fd41a07552e85c400d6c69aaaeca2b530b395e093f97262bb68c7ffdf07abddaf1c3ea890f58a7e1b902d0efce3ec3f8363ba3e0be71e14c4d7acc3eb9d5c322d6713cb037aef4302c0854696e5ba31568381d68afb28a870725b41d8617fdbf3bc025c931250f25e4573c06e3e2289dd0b02f2aa93e696ae25965b458f520731d52fe23879f724657f026dec25737cc1e4907fae3519433cbce28f1112bd81d2b08fea92f099f744d8f31db730f93c23f7513a533d8e45f0a684231ff4f0ce4c73a77b6c709112624d6da3d94a615f4127240cf3785e5f936e91ceca0c511b90487cfb91db2869fd26f1df589bc6eeab028190c2ddd00be48b46708b154124f0d004b56f205e640255c2c7b66636e2245990d5a7e1ad166454ef1564a49d83c0671d070c8a50b667ae9ebefcbb08a4f9d977ac74a7d9f93276d91261947fd318adfa715a7e411fb43e427012cffd93bca7e556af749e157f95e46bc86ddafaac2671930903da800c9296994792d392d4974969a36b2dd4b31c189bfcad6986115bb02714b078ef947888f712fc4972b4bbf558a61920c65616e60f91e0d3cbf09cf6932807bcf67d8440da32706cca29e4cb119b2c02d7c6ea8b7702ab512a464748a18356238b13aa3900f8435c385f2f553a66d21a61cbc0e7b59c93439d908bf5674e8c3375e5a51e3c28d323968b3ba6231771c6a1ba48fbe8d183bc6fbb84ec272e555eeac7f1485c57d9d249563ef346880bd1b838d95271a79d5091f241ed38f09f929bf218a88c8b622cd3f9bd483808b0a7d9ef5fcdca9aecf770d7e263c97c0550ad2fa42f46e5451f60413cebd6495d70fcd5589ef5f3e510a1b21d60c4c06a30b6d3b63f5079f6c56a1f69152e471099a212f6288358ea40c9e9d2bc00319507727d617baa6ab41e5e151ee1a9f801d00f201272abb73cde9a41e1a8d22cecdf4c08082e61282e1922553f5c3aa929f35cba2c70265bc9e44e828206fbcd7a89b155e36aaf8e585e691b0adba3a822005ad433bcfc73100c018a7836885719778bee38edf2eeaca939a8599e502bee34f454f02ab6e72b9a7a7e1244191a24b8931237a74e6d9b5a854b6c110378ff0d1e6569459fa27ee31977a650810d2935baaad8022a9d072995c8f621921177c977a122a75ae8d5e03f745235a698015eab44bb8db7b9b3746453e58e115c3dd255c3e0c099eaf396b5a2b2982f8b3cc8cc2b1192cbf98cb6f0809d068b82891c41ec814254bcfe1256b6de83ff2727e542b39e18e15d944d8e13d05c70a8fda0a3c765980ffd1fcc621a84d6e74a0dfbf4838de11b551f83608a01450741ea5e3e33c2c1e2e3ea470288cc55e74457bea50cc41c41cf3d5b72caa88854d2c3b727a871a013cf7ef610d2f6b2466a81f0519bae6e9c1ddbda6478685c0aab5f2321c730d07b342c41eb58ea50e7f90227b9ed1a9a7945514ca1496f34ce9ed74a74c28c9e496ace730a15322a32eaa14b076810589c8175fa45721b08511e1f4ef28c37bbb659971adef8e08101216a1cc0917044b396bbd77673dfdb55f89770d2b17ad4cef1d8414fc5d81e1e219e61a0a9633e842d2453d750142529298f5a2d2c05c71d997acdbc55563cb844477a4ca5c89e5a0b823cdb4fb01c3f95115d1b5ff5ab9e3f0dc0ddf467af81cce13549fb33be4c6e77e733ec93f72b1c8cea2b1c85ce6f42901a646904cf8ffb155d9464dbb33804b0e4da6ff954c42f69b1517f2308aec7a0dc4cff300764449a074f9b92064388babfcccf050ad968f6d7d5722d071d1a2227025d5a963ecf2cd63ef6de6f9d4518bcbfcff92878cfd702cd51c57ad81b7f94c65764834c03bb591ef12f485c409627ebeae99a7d26576a91e85636ddeb08cd6e4f6110ea116f3e852824346add3479a233f548464502cdd16684ed6d3e0a0b0b7f968138d072ad255e8407fcb839e4d145b6842fefddc0925027edf7b20b04661e82f4d5bd36ef9a7abeb2aea9b6dd50ca66bbbe386d8f1694ad69a2997084f9b73fe4226882c05d3c974847c6b05c0ba58967a23cc34f0ec1aa2cd8dd996c843914c602206bd04c38b41b57065d786574b585e55c35f4f16c72feed07744a9a2407450ae463805f233aa75090d1fb4a67628ed627e36159cf24a19684712b3a61d3dce154ea4905d5d070dc828db248abe3b936f8dc78ce9402ecfa44cb0b27355a964c8c19864a713ea10cd58041eec3dbd3f9f750bc4a4f440d4d0a47639b2b7b487058e47dce491082730958ebb8f77a61708bc13b854e01a85ec9ed3b2d9504c1423bdb3ff97814765084168d0cff90374103f808b6b9f70b4b37b99caa8a0b3cd9a33a28202ae1f02f87c3a64c19ec4ff1939293c7aa338dc9481963d76f22eee0069901c502019a2a9f83b9da5d3625a3c2d6f309a6ee076bcdaee2903f5114b8ad62aa7de92ca20d07388831285b9c33d2802bd068fab5957b86cd43200ca0540527ea149e558f1aa0df609b5d778ebfd39b1e4eef8affff3adf9617e4aee6ff7d0a3ed0eba65568b00e122a86df76cf28178940df4b39ef7621e14968ef0fec881903cd21760bf72075011980aa7d0a9fc724efba403608ea7ae6594acaac7bb2003cf6005a7ac68f952e5af146164497ba7566b7dc618ab70e8841cc6d470fd4190a18ca9559bc38a5e2de530c3ff9af75f8a39c80f09d950df42281aeaef699a7ba9ab22db6e97b04a9e5492122757d9c0ea47ee3484477ae1b072ad6fb811428ae9d323b81a71eba617534735e845d875326e9ed47f4688be494a2d750e39239290c50fa6b196c85cfcc9efb3cce39e86922ef2743648d59342b2839847f7cf897f380ec363ab1b7e2960e5435e30316b86d92254210c0dcdbcdcc472135d5dd06ce66c10e8536f9c0b53fada4fbd63eaf6dc176b762b34ce37f91dd084b8714d2c027badfc6656d942f280661449eb7abac819d9715e8165f6b459fb68755658464c86b47019d3262fe7c0cea5688e9ccb4f289b3c1133201113e86c485a085fd6ed5282cdb5e3e7753b8d311fa88c0013b1593ce2b986afd5ea451dc6b24a1e739c2d8213bdd59a05527d856a507799404cdb98214a41c6bce172e349e4190287f58aa5ef8a42d98f026030cdb6b504f49acba366a43001ec086c532f89754570c6db9c7a9b6c5291cf3c5dcee65331d29692c1dec1a4f7473b18cb6ba18507572ebb78197e182df20bfe07a0c4a70b3b6d4f1599a0d784e30bf2ca0e9a921beccc83939a64c1d1a1b59a72f9cf7e9f2d6ee2e9f92510081b068aaa6de8624932bff530c1088e4e5a5d7175f0eead1ae609e563f773eab27f24a7c502414ea012c08d9960a27263d3fee573420eeefff40e572859001eb0595ee318c1da1613cd1a71847db3c6d9d88841f43124b596450f0397a68e35045805410327a89cccd2c17b244c6db1d21b45a9c98d7c4fc74f739118596982edd2a57b96d3abcfb5abea04d47839632fff878cc542dd9ed10e9f61a804bd5c3f4c5ca7a5ab89026850325affa8d6d9c6eea5f71af6ea0354cca22a07edf990e9132fa3d90f8d605ece487f78f0f10515513ffa28ca7bb9e777a7e926ed44317644d1420c00576aa1b23649e9f45d5b09310ce1bc712648551749941991b3a40519d6df85553ac9ec15274d808aa0577513e168e9cfbd4bc834344ea2eba9a413a9c33ee931e44e140057806b4d3355c55bb6f4c21b9f6a2ed51c16449c735c87bb9326b1363635f78d9b0d0ea5a272a34728bf274829a14896c9c05fdb201fbb91251866ce5668cb9240f50200351788e56d6ceba5e2e39dd1e2f593af156006f9cb37fa6c37e81a9e8c358d9c9be1dcc5bdb48814c0a135cbbfb19f5f1862e17a3748212b982cd3015bdba4ad0e1e0ca69239709e42469b20db6598b71411e60d0d7f54dd254172e254a37532010590c719c574045f854d59759f43f99e7d83b1c5011569b570bda43f2d9917a764f8deaafbf671dfd6fa57a389ffe37ddb377fd6b7c833415f127d6c56a142bcdfe5649d4f8e72c67a3b42a6619d7300a1156c69446f0231908be5217aadbc092344884cd2d4bed7840728af3478ef5da77877a72daa2901ca1ce28be50a5818b1a8bc03f3771f1b4a63f3af85c409148d8338c8a266692a593a35f7c0357c0ea8ff5c2dd802619dbb0ebfd85069bc27327d054ac9f5f74c11b8e4b313796da686a1a0bd32164424a7fcae8b77cb5fdea8e35c4d965e415ea2f7db91035478a3311cdd5947f7b2339afe91b69a06ef8280659b022f6215d27e330dd653741d7eeabd65e005670bb8f5e252e78de9ce0230ae318112a1a6140d071db3bfa91c9fa56c259cf120945c82244aa6ff8805be9d4b73eac548149f50890b00c14930b28e7da63fdf33fb73196f77a6f818fcdd466e2f6393be8d4a4d85a4176a868964ce64942391bcd146dfdc5d73e6993cc6d6c6e304d4255f83151968db423bc43aa695b1e1bc17b0363a5e9ce388bf8e33494ad4e3ed4850faa4a0b399602be5f49a026227637a9d290499672eb37bbab16dad8c418d882badbc4c6d549ae7971b2ed503160fc115dc8ab268bd59016ca49d38debe077777c493ef561faf92db30f9dc576ec26ef5fe41639cf9dae06afaa1fa6dccce0bc4a0951d89abd152ad4542d57678fff0927e2718cdefcab2535cce49135407a532181f10d86fe119dfde3fd80cba4b9b0112545193fc8676957c6315111c5be95ce4ac6367f63fc05f6d092be4027376936e1b965fe710e7937738b9aff70b68192b521af8ca763b1e5ed28a648f06b5b5dcfdae63490c5581b226b89b4c5c00fef94e9e34d31854d7de54971657c545f10aca2f111c4b0f8c6306b63cd8b05ccab2b351489c7269c3b01ef1340c698a05fd276824c91feed2f3130d6e69a228e97e99555ba68183f469d0be9c0213b39335753fa4ec52596c37009abfe82f42ba8cd96b7eaf3b662dc866b79d94982ca99d53821a50e2a8c9d209a857868cb2a23d40de9fc9c8d12772a2fc67d4d287c3572e410d782af54ee8fd4512cea9da3d0a1a35f9deff9ffb65efeb7e38432d7ba495eeb047ee0d300f5104ab922bcef2d77091f2bc1e4b16bcd9be5f14db6205b87a25d3326afa280404c1c1b47ff04a246cd6f50343fee99b9a77837ebc809d25dec72cc832f9c23765e1cc6b7cb7588d17df03a7159d0092e47b1f5e5b925106b0b64d20f38a99d11a4c98bffd2b8793bc3085b95220dd33c50340967d62ab28e1480a8c61ad8cd6d49a8b5a1cc65f26bebdf59ebe16f0bbff64a708f4faa015df93a905de062adc6ba65d5ab880a7c095211e2e089647db0233a8b0206054554a52b04252fba4aae7f3ce43f60958911dcd23f3c4b201723c2df47d60586884c565214acd6a7c69da8d207ab88882aeec4db414b8807f775a9e8365489fb3918837f510c524a3c0215fc2b364a750dfb005868789b0fb08be307fbb57e397a3f48d911f1ef6c2c73a263751a3a8a9b27cf014df408eef93d139dea7b2faac4491b22c8d3003da2852f2ed54d1f44f5031fe567e627be21d58d38f16f151ca9aed5540ec830f116343f263d6c900bc04edc9f2af40a264c464d7bfb5b252a422e5b10cafcb551126243bb15d7dd09d94f279431a2d5f4bdc33ebe8422852ab01d2d3131b4c67628d46d4aaa3a5f007e913e41fae5236ca89d059cba1f4a4954d44fefd5bc7e7088a270f9fe73c3e19c2fb582438a5b39bff8b96051ef46e4ebf88820217d97597c57e1b5c91aee3316fb59cbccbe2dcdd22d90e4a2a516baadc52f9e1ce90d2a3c9f0e9567919cb6a086fe2282a404708c8d77f6543a790d190c0bc879762ae6e67350a5537f1e3f5629ba9c2f680cdb93387204fb98d3d4f7ce42fe2dbb6f36f3ddb55b634d3f01579219e615b138e3811800ec5ec8f2a99ef6caf3d43d098de4b88105b6c2e9201d770c7a24c33b86d807bef55aae2ed42223eaab6b71f8a63f60c59cabdb7865c513923704d1e40699d8cec41ab9d41e2258c52d0c3ec906c4e058249434f1c263179b5a530f0a297d2f8515039f94fd2c43ea1d039e573ae650df50a45f9b2448e54a8201ea4e158a25f383308619e2787d6fe76bd178a065d81b566150f156a550becb2c4da66492faebc81c19ceab932a28a59e7a77b16661849c08790d84cff978862a18d505ba4b627caaf1a53b1a843d256ec04ff103baeced84a6aae795d78a8110f6a7a0c85df0a4c232b49b5f9f8dc4419df35cf78f1cf8e69d83257673c95d668664153db700b2c0e434f39eb7b8aef321f8d1cd6dcefeaa01adb87b06733700c499185dba1533c61ff829829ffa5c25a41381b7b79f0cd6938a560f0e3aab8c120d3bc480d35c5b8459d34064ffeb05ac3098fd8c959312342170e7437c1d7b11e496486351821f2086678fa2c341062c0db4a9885213619527431e4604c6babc603270441ea5103732bc6241deef50af8d98fe25abaa29e24992656056730e45ece608863d950321fef9b66a84f006b85751678e749adb04e067d413c2a595e2990af208a48e25977f5419723c502451b27461f2e5854bd6b6788496981d2a7e86bd8516ab73dfffeed689dcd42f36f1740c6d811a479fb7d77c7b2d1200681b9784642827c154fdd9f5d7d152600fc4fa9684334249b2de377e0ffe5df86019b156f16d169395671d63b5061591cb5a0fa570e61edb82db8d51db4c5d18d0987a19c280089d8959f3767d8f29c8b45511dd400ef1c3ee6f35c89f404a7a2fcbf7b653157deb4ee1bbb123fa7a22f812bb062cab70232a458c1a94c02799299d8d47cfc469592cf0131ed79202821bcdb1c6b5f34172ae85ba0ff71aacfb937a7500ea5957593a8768cdc6a222b623d616d78369d1ad659837807f38771ee6aa5bad6be80f88ec5e356ad3a947794ff9d1acee838e23190b90edd143476afa7a61470c29536790b9659c51e568f466aa447cbb5899065af02432a868654ed020d319315badd3d56e3c3a3b287a71f45d2a1e22b27839ec5699cd0dace5bbc86829c7de11cf8a74f25fa58363dbec913960b0aada090ed1437fae3591f585b05579502d87997b2166b761b52ca09fee7d75cdf3a9fae233de4779f44b56c4fbd4f045e1a23be00c5f2b97a8900020e0da370732da2c9e1f5fd0b745992600c43d9a4174d0c56fd625d99dc382d8c22605f41d099eb412ac2a548566cf605f018be516961fc4a6f40d732f71032ff205e42882441d1f62d2df67997376c76b2ae8397a27d3f39af4b6c8850e9d9e8a64dc81f11715dcb59c2e7302b15768ffad2b0f707fec199b75225a3ee6b5b16cd1237e314bc1e983f72b7720226c3a8589a1f28e1e0774b3faaa6fefcabd83a5094037a775b399487e32dad7836ca74528a6566c81ee57ea2c8abb6f5f44f59bbc7be688058c42d721da693428dd9f59c6d004095fd5188cd5bb6d6d3303d33dd5f9f2278b0097408025406809be92726481064306d811e2da93a4a2a0229af7ade5e13e92b0de400a97db4198073e749e49488a751ccf57916ab2911f00278e28fa9bb41bb187ec40b9dd65ee10c3dbfbfeea5af7d7ae165f4c7788a7894b104c625bef071eb6640044ec72833ca3f8ea25a2b1f7dd5f59d96b6200eaa5bbc75c81e8a0f915b33e74a0b50e2d0858eea432390ec3d5a262a73d1e6297e12967aae488b563ed319c56bb3719991661b52f1080298456a70359b760aeeba93c66bfcbfcc44cd5ace084616d21c13e0de5250ef9048523dca9768bf660863b46e0dece62d38da4c24f79d74428f86ca9d975e6c8512c8d8a0ac6025c2ee351d5fdef79a935a72d1c3ff549d6d8e2c4a4375a70b846c60d42782d6f2b67002620ea2af905e5d54a05515331c597550fbc3a38c161edeecefb543167e0851f453b0aef0e3ba863a8f9781007a3c38e7f40c06ac7591d0e1508622151ac339c980b6b738aa8eb842f870986c59bac77fce2254cfe1327ea187bbd9544444cacd86bc6e6f92a69e53b62233ddd98cfa5eaa4aed0394ee016274444fda9440329ca91a87cba215c3b87a6d453f02f6963e5f49555cc378da123928f3727a03626c6c3891ec204121f5b698f5623a7e73f72d5aaa5e97e13b3080e0180e69a0efafc2f8cea1df840fb9ebe06bfa59045531cce9b6c6d5e455008cc7dc7b9b788d58cdec61dccac6cfd039372ffeed0cdd8eb223977690d015e56053cf9e848b657cc01344decded0e330b1c1363ae339f96db3a5c525765a959747688127be039dab8ee2f3d0ac0da28a37d9c22cfd407ac9c50847c86f32e9897788b1603231112045c0902461e3cb988a3f8ea30fecf88a8602fc55c0f5b60b89fec9af2a9568b7f361d6b09a6bea04cbc3835244fb9c1d58ea832735891592e54a592e73d1d6e3ca94c785ad94896dd983784dfb711fd8c592346925251a05a1d9c3c358230e24bd581bee33f71f6d8a2985df3a805474689ec05191aac3b58a36e122b1a020cd4b52106f929c84ae5baf0897ec5617ad712d519acac4216efdb89f80c0eea9f0df10232a609660ec1684008e9044a2e3f6fde42cd95a62fcda280f3d5945043342f6838e35c1647dd6422e29c8c775e945bf4081a4267552eb1c0aa6d066a4b349e58d82f3cea19082a0aeb6731c51a190e1a0ede8e2013eadd939d0b26b1546b03e0eec527161d4e7eb9f89e9fc62147ba6fd42ccab2b72232a124a7fb34581db82579470a5b14048d9bb71a947d5d3c4835fa9f2e2c39f991551f282606b2334872d326bb0408b799f408f946c62f414a9fc1818c31eb43df24fee3ba5b74405675ded0646c5315b2d8bbf96e6edcee96182c8a1d1e05f6bf6c94519caeffc4601dfaa3b56b787792c141b249082ff49ebd6afaf22c092f30d0bccdc8bb9d2c185d7baabf76733c688cd60d0a389c65e1e2c7feea1443f26796b4202f38ff7a81c80eca26f23215474c4836749592d4ea6cd72403c6d9792b7a093941ded539e232103fd232158a0b7522191f8d8b2004903f15940660cf3f881b91e7aaa7d860054938114d43cabd662d61fb6775daabdc9bef9446e6322512cd4816defeb2c4ec580f07d9c319feb8193321d713c3dca62a7609c0394807fc434a175bb22207a004339ed367f57ee37c9a91b10854c24ebf58c9c399c84260446eda5204f370ecb4f90a946ed6c1cdf114bf8f73f9b998f02489610396a4dff288522483493a2748e2e4cc4d5e6b01e8b4f015a68df5bbd8e2692152c3925a7abdbaccc715eafdae9c96cb74f5001b641c07f0c5667badaafacf032678c20bf7e05181bea5e483a0ce1c08dd504b0762c9c72938f54f1fd6d2497b801e0e2354f8e10b3a6bb6ba5048d2d21c571089529fe3d686a6f6409832e62ad83b0b37d89c3eda92f47935153477dbf8a540cb566d538ba9968475f30a481dbd22aa94c7250282fdd0e39c9587756d10df0926816d4b955b6d6fcd42c67da98fcfe43dfa4dbd8ae17fb5c9a4d7c3f4fd3ee2bf6b363fb1614d721d4c900a2af7e61963341608f7dc31971629d37f33977a295d676d4cc723ef0ce88d5c8976fcec0cd2c7971258d1b4ed6f8a7e20f0575bedc6ca497c1588d0d2ec376fb9a0675e840d1c0a80a9cfbe4714e600a1d178b56398e071e4101923df24f68564885de8df51416040892acafd2214a596673a8c677041af4197fc7a1dc10dd1f05adb5ea446ddb7c73e7693f911e3404b42a1237bdc07c0c9c03856260db12fe3496b400cf1d8d362979c8fcdfd16e7c01ff599d4b8cacddf44d096eb6902db15d6665ce1c9443e6f7bfb07792e4971517819e41164152aa91053694aad4dfe8f3dd244ead799687b89cee347ade4cb7ddd86bf5b13461d48295cd5cdf568ce42f24258ee15a290c3d7b5641d58fcbc004923241816bfcd99cda30d6a3616532f8ce3be6eec8482a919ba2d35103664f1b37677592cfcbad566a7410275caa0b63ba86f0e9825ddde781df0db4dd96ad5e046b5d588fdbe57be6fc085a31454dcf92f54f85f1c70b35da192386048f4d7434c6e015bd9605072699fdbbe671d4ec989a85219336180b279e553e59b73e7d6f15bb7a0ad8a241ebc278d01005c98425c1a36e8e9ec47feca5602c7bbc4249be8ba69c4fc3bbb784146e195f07ccafb4ea1809f912f2261cf35bacd358325b0be0d0cb2f2565bd6426ad9a854956e5cfeb7f768116f5723ca4bd8a5c88b2fa97569f15433683873861d95a1f74bc754dcb238a61109d7574ca6695dcf0fc6822cf5f0ce3179993ec3304f262f84e4fe1983a59536600f4c2e2ce5ef4c22ea90fda12a47a428fe0f655ef3f76baa1b2cf452e044984ecf49c30644fdc2f9d7686d9ca67e1ef2195cdd6b26535fefaf2ea0969619d50d3ed0d56f99c33dd65975a09b13fc798dc33b0d6799acd8bd28efe972680271b302652fffebd16cef077aaa6b0a85bb5a00a1b235e32995a62f528fa93c765ad351476b73ddc4ecbd54b496ef85738246bdc050fab22a8d73b4b671f687bb5ad302631fabc00d8f676382a45726fe656d93145a270361e1e7d6c76c7c8302efb9373d6ed75ff484346cbf26fe347584502703972b728cac8d7d48b1577d0e26f1d8a454ada86f15cd33c0210896e69b60914fb381355273ea59e3a10a9b426f47fc68c1328cc3c2f4b14151e29468b7bee9da8a5680b8744a6560813a43408b4b9d4a409e752684d855e6d2779d97a0880d6ee72c8b27d14ccb9c5609172d8bbdb8b948dedb6c71a6d822f7c080840da2828bef00d3b1b90fa0b7d5a76eb2cf1d0ba71325f35791fd270e3c9683d457b820b8d0018097b2a592f299e77bf2160b81e963360683ab6ad08a24f3aa90ea1a682f7f0f1eadf34a4e4c708ce9e48d75304bac409cd84acf14ffbd5c8ca031a8f9199aca4b84f9975dafb03456fecfaee8be96a6ca5001e21bcf13d1aefaa5f78e52bfe42b28b3e3ee741ca68742bc6e1a0d76987676c9407411dea96e9d4ad1be17e4476d243f8a6a6f60268c43f30cc39362124d2fa2413adad7a95a9d97bee2e5927b549217175990518c5878e93e500c44dd257692d23977de8bd9af5375f930642698a78612648c3dbff59c18937e21537c92f7b989a1cdb1d2fae324428392e8de2fc4bc5988d1b9125140d6889ff46729ae5fd1392ec991d9fe35ea615de786bbe04c7a32b4f3cb1ae243890a26f1161c9d9a9df66e7390fd1b754f313f7f543a400a7115941b0a925db44f0faa42478d9b3da31846d06a245dc9386e70f6cf2dd33308c356ee4356facc438b532a579566970b390bcb49bb7f62ba9029b92d2299d2f4861bf156903ef1696e45786bd96e4e9eb277a391ba21f0adb44b14c6ebe6bf60d48b0edc8127fabaea8d94f9865152f7f512ea4f556f78598cf975dbe00f65c60f478954594235a4b3ed66ab5ed355673eb2ecdb49b8995a2d8aa7840ebed9d420d8a16af9547b5cc44d89579922b96b166deb244b2d9210b1273f43ef180bfd7669502d1a84eab25ddf8bbe73cf5b38cd593ce10412fb86dc9a56c6b910da40ae0305d80c6f7871a87096f838c02821b3ddbfb5ee99ba3b21582ac31d6f5bfa1c55201a9899aa5a8befed154427aeebc9c4c9bd63006b4b827d6141213d677dc6c135c59aa3201b4e084eeee904626dd4fd4c83bee5cd90c756992f406e0015c5bdfb99d9b24a0336b9be0f4a2d1112bd385eb50a76370a2ec9ddbf1eb78cb3f7f39c416f31faa60c265a0ec52bc3b2feea52ebc7d0e62774f652c77097c2d4eab2842eed8d57314e267312f48bc777bf647f7ff920f89945e71e2f792954714ce11b12f13789fc1e4be07a10f6cd1ce82624dcedb6775ed18bf15b179c1df728ee1c0cbdf4defc7d24effbe166cfaeea8965885355453f3af59b6c35ce08a21f2b0c3e3289bee0ee6b6199c54e171a560bd4d96c76c230cb73e9ed7afb639c5825cdaa2f7e9318ffbf2e395ae1b83b37ca9c43065437213eb33ce39bb90f06303854d3dc48c8960c550a235a7164eb427246b2688cb32d2300b7e8f5d955004c1b391111bce5bdd9ddffdfbcb6532da9de6153dc617a341cb75f661f621eb5400c77703ad37652f2df0a30230bfcd0f166fe7c66895425acefbcd65ea80f540e2a8300aa52d57601db4a7efd3c32067018a72875f47e4ab07767e51c7ae2dbadd7c6c7d564301fc20b4c09b69095d36edc719ab9bd8cfa37748d0b73f044fb39f98073f029ef31da014d97f2ad4fce273a99abf235c357b6c834f26f2124565148d3e6105cf311f75b116dce6f4b02df84b856c23a2f729e9849fc3424141c0f4053b783b862594869f39a91cc32f1f3e1cd4f448c8c14b3ff86de9f28d9776e27077ff0b08c2193827ae30c5a1b50738b4638001302cf23e9b3a2a49c88f6916fca3eae61d2673a37b3df4c98671af195239086bb5b7de568d37f47e104b4d025340f54e8ff8feca0a5b24a1ba4044b97fae995ed3ba52e88e709d382e1ade18a07bad7205c3d318bc379c8b049bcae28f38851b5fafd5591430e8fef31f313e59bb1d2fc7d93aac1f44d4c0fd5b8364e8109aef5e26048e6b8373175fab8e1988ffccb8da64a9fd2f7e9dfd16c35a9c04a843b59ca8971ae609c651f6107d8c951afc282ee5cabee8ebad0fd3db1aa7ac1ccb42fbceba65b072f6a3d5ca75f1cb546d5eed3fa1e6d5ec54893b958edd03fc3636b6e5c0ce425ac161f83627ff4da9a3a7b2149108b426dc0bb4dba19f7a06dd93e4732787ad336da265ea50f61b04382ac25aba6aa0005b23ff70004963c8251909b623c05730a6915ad90fee3f38c53b846a2ef58379e7e5a6e3dae9c3ba3389b0d7b708e86878fbb471c40211fa465261fb2a0886487033daaa4b483ea5bfec632761ca9257ca8e84e9af725f6ef34e44e8cc3318910788ba3ef746eedb65e46d9755f7dca2c22b481f5358aa65ba5f5d7fe1792b07d179d43b58d3dd25212ccffe4accee7dcb9bbbac7791d998ae7600056d32dd36b76c302628dae073be12e40cd3a05d4abf71363b72c8cebb3865c7d63ae829e4a6ea3014e95870f1e7e3048117f9b926a449f2610683bafe5e3d65702e38d583289f51432b6a18058dd5308df386320239761c00f260b5db1e6500e6c3ab358c396ae4f672ef61ac43792bcedd5200cff348b0b9f468fdcf59447da1bd3084a07947debbaea407aa1b741ff6b64a217e215c36e6390eec970ae3e83c7c6f1a5b7733d0357ee26c17f7b060989fd01bc054fae5dfe6f7347ff315862e7ad4daaea6a8cf4cca094600995ad868f3a0137cde12fa8ecf33e2cd1fd1ab2bf3e246b67f36458a72b74182a832968ceb7d5cafa1b69c8852dfb1440245c6ab6fa2b7da1cc46e0a5ae59dd106e9ebdf606d9c2b50468588afd6c5610746554f8a03ae5f17e30dd089c1c91190ea290ef212940a20758cf2ddff6763b8fe50e292cf1ee77a2b237eddb5d53889edf7090195262631c8683e83b4003477ba3ce8ed6539d09abfd2eb0401ef3fbddf13ed8249c6b9273d57ee9020b3bceb26b25404e0492c9ebf2f5dfb535ae7b39b64192aa0b76ef4fa8fa275cd85e37c83d9aee5fd3b2cb0d3637fb4c4546995fe01c127e557a3261a55b45c6bfd7c1564a0d66f6a9084da8052c2cca589c808dcb6497cc0b820473532de5d9f614a19f7506cee70ded1ed863b148b5a9453f8f422d4b874915095670b8cab7761732f987ea35610afbc06e5ad714e00e8d5c7a4da49d3e99b93d6c79cbea28e25456545886efe74c9ddb530c35631e661628339277a75bb2d69bd23c697299e25eb702a6587f498bd55acfeaa5961705836b27bff9dc9a937f84276520520afd6f8fa1ad00ffa0f36b30d16c74a7639ab7b849c8e87503bcf504343f319af063ccc8e42519d8783335e53149dbe415a4f55c7b2d015a1a62d0025dfbb81eb87e7958d6b0f06e49cf514d03298cdaa86c6dea568fd131f7e79e00b12d7223f5d4d3eb364d5df3c5fc018a1934388bc8837a79da5feda28c910099ade0aa214b15fe38c3ec0492ded3c4091a93eb2498bafc92b0712f3683b519db15d9bf1ebb1012214e6d83f4ffe8f94ae4468fb1092ed432688fbe42425b5ce9a53d5b4eda89adf4bf7b33927bd748ea9c802640eb8df314e7ebb6d8dc5ae8bafc1eb464c7afdb65268c28acecee2e313bfa7d7d38c092adf6a1e363780b1e2ac980ca3639cefb2cd61c24bb9bce2868c552a62c61f3e4cb1b7dc3a528830a110ece8b50e4de80f720dec903b8e828d32ff1701701a62f93633d64eb948f90eb1f16b6ce74a62330565b78691feb6a911426089318d6eec3b6ce41d3cfe43604ba37a8aa40d8bd3c5d55cc10c5595a110bce18da636099e31ae6117c013d7a1a6e179d59934b9addec8bc75cec98c0c836ea04f93a820df79f6602f077ec38d84bd449c46bc323d605f83b48cc7f2158901cf74d4cb64d108f31ba647fc43726b4a7c7ed09e2bd322e605aa3a2bb72a7d9908f2b9767101081bcc617f2b756f9315f2eadce8ca6c9ca20bed855073270f1643a3fc12488f607dfba4d1a3bbd5bb4ca2f0201eb8003462761fcea7a0125343804128a5a44fe2902773fb677a601bf135cf31e83e83afe083313a1942cbf604b155b0ebbe7ff34d5c35bf5dd91d6f97e95f96ebeb82d5621d5e17b2989a879235b8499fd07fd6180fa41002107b988baebc0455ea1c39d1c737c9558f676e3e827b39dce47bfb75aeb636016c7851ac68a5adde68357daacab47007ac9ef965f47b93ab198d1d074df92617550aa8e81312d44bfee5563011232a640c570445b207bb73a9d65ebb0d20dab1d0a18389afb33f636922cb5525e4ca1b6030476c00898a8773e296e0030da71bbd2d53bb579a4e848aa3f5aa8c95af3cf3e61c1fc8a09d1124a36be5ac4f6f69d45ca760807a91627e5c155df2c305a9e4aac38f56d78030a7ed48e83e7248c4105760535c24b0f91fb43ab993ee955de08e988bf5e5b3bf954f897aa9a0d02f8c3dca80be37f54fd41696e77e69e7507c7f10c1dee9bdc9d33cdde390eb18717cc55dfdd8267f2f5b4966e48b299b299d462adc1339f8aa5064cb760ed87d858b50d93730747816c459e9ec5cd8a608a894f98db9ece38e6a623dac7dcd96a5bf59e9d62090087f9af24af22d8b5a247cd470b1a4e74706dae6b4cb6d467c812c13dc64db400ae8744baa5dff6c06c7d1ddfd9ec1f65cfc0fc7f3d90419ad784ab18390f036384472c828f8bdc29291f95b7727521570845fb539338585a03da0ea79ec3d0c77a68bd6e71e53cd316dd0cf6bc95a00c7fa8cd7e6822af1ec3555e4e9910bf1f1a19510982442ce93d74510032e8bf347f63bb7883c43301e9b497973d6cb2482dc8ae2d82b1ef2be812d7e7992b5faab3aa0a245046a8ce5d99421be48dc46d8ee8baf0881683bdb170aa6c7f5c7fd26d65b56cd7b2dc24a2b125a86aebd39146a7501db30861df6302bbb05207d0461fb454d3004b3fa520d71b508896b14350bbba5e430c2adc044b7fdb2b121c8d9e61c27384c769b6804159c06e47a43232d00b74993b3a7df3a676bcc90262bcd13720f6666195a42d8d1b8758ca57de115772f7bc0eca5c76f5416d69d131c84ca36f77561af69352faee5952d13d909f1e988bd1a432ab063e69100ced51528d89b9fdff2b0a458fb69a07dd17bee0d969da480d87a7b5d66651cea063e736d7fc347b8ebae3693511a7c0d63fd99e799148aee669fbf957b5437b03ccb5d0e26cb074a7347663da1981dc6d4d161af102e990de9fde03a625c8bfe8aaee47487d0be11fcdcde016c8ace6a6050fc9d4080ab71bb5ba16ad251b9e1b78d956bb3b070256b0a7e1e2c4ead05717381f8a1136cf0acd1516d351d9974038419c8d23a5966c4eff0133ea2d07d98110ad120174d8df2dbff90cafa9155b7f8b71a02dc287096bb2848ace0b0acd36156c2557488d20850a2d93c75ecd7f14c7deaf7554707662e9c1d7d9a1ef9041f50734f8d5fe14d5472f4067577271c2232c63fb6303ac33db8d5c52fda9bee7858b7566eab3f24e8bf3b89071cbd470990d14bda6808c9b1a47805ed558a0ff92fb963925929a8810c404c42287a394367c799030100ab030e51bd6ac36ef2886fb4de57f1cb9d08fff1a47ba926446cb00e74ac2c197af29423366d0c04e594d4fe2aed32f0380f1a0b5da9cfc53dc9e228d19904172c48ce2c1b1753126a8573a78782739c683ffd1a5a8c2e24d40cc5957243d5e8211f5573765dbd7478fb857ef5ea1dd764b232bb5eac9beafeff477b0ddfe154d8974df5aefbee5e9eb7e5d0da5c3f280634b0acef6c14a628c5bf87ef69534324174d6a6bbc1855de1e2bcb157d7e95560eb0b6317d78701d6a6de982b75b05c469115b59f6a535d32557136a5128f8b9e2aed165a760839e379d46869bdcce8c10a19e0bcdae7e79507485c29cfbbfeba413a8af53372a8ccbf83616d289b3da4312e3d8f50cb745e13a739f128c2af817c386f6f0f318577d867bace7fb9282e5977bd415cc533e327e663cfd7159d9c54e38d8d78556cddf17f6db4ae70aaa3e42ddfce4c65fbc77697ba4c04c32d436be8db30320ee3796f067ee2541237f2caaed525c54c0bff4cc03b62833b90b9b9f31e1b712ce8700306b73c447d4fdd1dfc12335c257a3374f42a34207ea23fdf5830c8ca9a0891d92931a13e1404e24bca2c5440dab1721708a38a743e668c83d1dcc9f0c272481b62314590d7f1d90cf45afa406e64b14e293655940862281cb60971e8e0d95522644288b1e60cb50347103ac50f51079745e02135c2e5dac9a3abd8931bdba53f8432080b5f2a023e18052afb750f95b443be2e04b9aef3004e25c76482353150d5e1e4016668c8da3bdd668fc8516aac37a946934ddd88f0494a8edc3004ea4bc53b0010f3d354ebf15ff24f39af3fba6b7c85cb4265092107f90bec2129f6bdb92fed69a8807efdc73027703e91f599916d0e23a826dbd573ca90443e7b3858d3720802b3918124d5ef50e284a23d10ceb133c6cd8ba9ee426c8830be62ed6625ec3f8f2372cec7704ed44bff55bbb1e0e31866f38c96c067fab62bc4e983e280a0580131ccee55432c44f23719faf18fda8498de62792c29846fa61c852e2254552c58c480641ef322d2b2f2159005a0d1147a856880be2763bec6a0bc25c42a4b0da8443ca676f41c21d362c80f86a93ff4af2aaeec71b575ef0c22c5449ce701f9b0d190e227965783cb9efbbfa2f9e39976c9cb8baf7aaf01a97e2fda679560cc48c2505dbf4c61c1aa009d819dcf3d3ebb854e274aa48adc3f47f2e4a2cd282faa86ca4721493c477af10d92760a39ec894d2fc90760d7ae11983db0764761afd4ae683172c313131fc7888540fc8e3d5272a3f3e02e8850f5e6868c87d4f49c77139d313345936a103eff0d48fbebaa1c118a6f699942d6f2d5880cb4994751f106a59828a94a2839fb7e222d6a3645c1a6fed33f8727f3d7135731a4294349bd81ff9864ad266f616f4b9cd3e5be280472d226c920262e5eea15c479affdba72b72a1e59f4aa9b8d149746cec4156559afbdd063a0f1756d9a25c5ecf520af3aa3ef0f305de92e3417e2c4d4c64784ec14801991f6ebd3f1b030b23ad198bc9beb2560e754778819c2c14f01b92e1f99f90cd353f38f7c2cccd514dbcf7deadd705c936e5a831903a9956c96a0641e312f65b0a0de45d82e73a96d3caae81d6cc11b7ff6c3fff44b04bf0ee086a652c5edb494e153e173739815d278216f4309550114c4a37ebc4915fe65de1befc2932186a9241d632dd783469357eb4ca16b9815813e14fe99e84498e623dcd5e421675afcfdb478428b9907a08a176d1c306365ea88a3557018a85205b8aca5b6332bab5bf06536f89bb79729c63276ceb4c6ef1e0c6cf3e0bb7998fbb84c543ead75ad9a4a00543d3123e3cd5a53dc3413ae855af450bc58963ca4cd1e93d6fd3f6fe1902fe7d902d27963e8654e1cd028bf55724fc8dabc6d5209b22bacac3bf103d8435fa37f34a3880899a26c157179d72cae98fc0ba23d3d82fc6bd944fc5b5c0f1fe1012231d330077fecc5d32a72936b9da82f2315543a2560aa332595f9b1e888e4879966e9d86a5f582e4e38c07dd1b4b9314e7443623ff35cfea919ff1eddf2701d00d044d9b2c0dbb701d45f6eccf911bb7e96c1c14acb9c558704e7cea2e4d3dacba6e6bc3520981b9aab78b495d451589942ecff6e1a421ab8a25c8372be39e4ac87772392906081acce512b17e9bd956e38f53a9ce2cb1733cb000b78718965a004dee9643b3e6483ecb2e7f84ceb969e3130693d3da125e146c49f78c25b9194c6df201c1f1cc41887cc5a77da22d6b731920e9509873890616dd0c867dd9ae9d91387c64d7edba67cccf43c046786d71630c6a4ad67bebec77e120ebf1d928741e75f07c62a8ae93073fa5f1098d16c09a360b7902a500381ff6b3e9c809528b557e93888259d3189af536df3de662ec70360d19234169b40a02e523e90ed41cdcf1cad11ff6086d88ac77033348dfd3f2f5e377adf323ff6391634ff6621ea196b4f213e2e05204aa7b019fb1706a6ebc3ced031d9f24692ba104fb9fcaf117542f79e3fb5fc11ba16341e4a890997619d4c7291b80c9416754c5e9901bb337c42e5c7068c6184d0f3620d7d7b77fa301a68ab214d8198e4d773dc5acef9344addc7e6e297956059261bcd4d19249997c4cb3e862441e67fd032bb194ece04cc301f0f8b08b8171e2d5ce3389129dc03410bcf97ba0b0c4622d6bd0197e5e4be63216be4d6070f7e5f5343e5691b33c320486c3981a87b1973c0a719ddbf82354df1950b088351bcb6b42c8fd1e9faa9034961af027b10241c627d51be9d7e2cbfcc9c6dcea956be5e0931b6a41a5108583f9413c14e2e4ec7ef8f8bbf11b025fe8624189a3b36a5ea3bdc50081bf89e15d253f6283dd259208f2102452bb08008663a3e5875b9571aa63ad65380de5534cc017c1454f2a69c0a43a41dcfe9b87ddd9093b3fdd41665fc7e3be1734d5f8266d4adc6c2d9ae778315c621bcd4ab4399c312c155d9aa4fb332979b17c20d74ebbde24238d2783416b295202a2661ef30af34510881fd254c84972bfeae5dd6d579ffe7c174ae3c1f3cfcd10cfd712c4717d149421049f1577508cfcc488532bd9856f04539ddb8a428bc49c96ed1582f6c821f9e4cdfd59da15ad713c07a80c6f288329023fa05271cc3a0d506b1414f04e10c36791db8d8b59e31203ec15cbc769ece794bc3bbfede35692b763116dfc2d24c019c0d943482748d810b1911993adf25e1e979c50fe5a7e5fc0c980d5c0358f9fa3c2b89ad808ff6c2f7fadca37499c963a4c073c9c5f50a8cf01098a7dd0c28810323a9e0a28597006fba47a6856e950aed162f874dec1e55a1935781226f352e1e079a6a1edb49416228599ef2d6330922a34680adfd7bf8dde8c81d8a56cd3bb981e9f480ffd2cbe67a87a298bde4200621245afe5bced4c0ac4ad9dafefed841c1bf0639ac3a2cf13a6ff7969c699b23408c7df62349e7e65534edd531cbb73096a38609ecb3c5f2e83a6086a53de7e0785883e6e6b1fbec9172ed6a9525fa01c1c83056d49b5158d705eadba441a60731c4c534c2e2c7cd74733adb89a1e310388b3c59ea6706d72f1ebaa5d731ee7bf54f4b1ccd779777d7ccae1bffba95d162ff0ad62594dffdd78045d24ce53f411411b2ea8a2cb0c390bbbbb59e42abd2fd89df6659cf44ad148b2efd8cd2e3850e26526270269bd21fa46241cbaf6fb6d1f55b1449eab8f8a9c92fa9b51e084db3ac92679fb30b1a2b72aefdc7d587ba29ece2bbe2868afd67f091b37607cdf03619c8622d44d93c265d4941e87d6226d2c94d786c9ffa8f485d708992c4691980387f7baf4134cf7e0ef660c4a86151e4ad1168bf22f9c6f53caaf604ddac891fb2ed8dd1f635935cf3332e591edf7b971c68db909eac20966e971483e6f9a43db236af2c87b43d74ae7b28ddf577372d34674c0758d34fcc1a63dc5cb2eb92bfd4de7c4d910102365f080b0ce3669c82e0b86cac4ffdbbd13f6135297be4aa7d6847468b7e6ccf7ccaa0396e12c70c2af7d8904583663d6648abcf439861c5dc9a42247b7b1d54010448835d08573c79a3e8d9f16e3eaed012db3d57ba79314129d1dd68d4b6249ad311b6e5e327180a7169f39d4506841e1616778ff4ebfb92e8c6b20ab93181965c564416e266e85ca6f1fb3de8731bbb219d7092fa48d3b9debb65d69da95c50bab0061b4ba45a9e7772000cfaf75683998bf8c40cb94b2cdc6c809fedaa02b8d5b54b0732bc064ab649c1ad99cd67496308352f74fa2268ddb73a1359291b7d8ca069472a07d951f2d9f35a584a885b7dcbdfd2e2cd02105d42e2358f6b85316f0373dd6937e1683e40ce41647cf443e4c6c34ac1971b072dec7e4293719669bd3fa67d28b2caaf99fb1330f7712d00588de38f900adf085a8ce3ad5fde12cb0634ccf9a5baf4f07d0012c37ff6814be130dd69f99940f624615814d4237d0f4e22f9ab6b73c34fb95d9639ad5206b38a7cc6cdab796768250c1c50587c578a21893af75c8261dadd5d37f6de7ea5354138859f58668fc14c81f96d0c97cbef889fd513acc9311a7ce9b34228a46642dd22bb930fd1223e64bda715f2c4ea2574c0ee3322ebec715da5ab5c6bc2ab63df1d15759551a42989e346d6fc1be14169acb8fb1f23c459b8a196281be0fb661ae8122d5486754bc1de01eb9eff643b0fd3856b4bafa791f817637dfa45c00a5943049e37457d99930e6744cdbf3db936570ea298a921dabfdc260da5279366f1315eb7378016b36755d1589d4d97e77b778f8ce7e323dde6fdde361141fbe8acc3c5551e9468a736cd14299fd8cb7ce35192b0297d36c8abe2a1201a7d067671f833c296013bfc201dfc9f9a84334fea11aae09fce1f5e55cf94d7b9d6353b464871b988bed24ede5b05b13e1a37eebeea102357cb764666a1d8019219ac3b93ac3b3a3e3d78e78dde6dc5e6725a6286865b8727bb6049680185daaa297f3569b5a659b49c1ed96457f107e847456a6da63f9b52e1101060ed3ebb2953fc05679c7f8dd9968fa877200f1179a66cd3e7ab1cf950ab69cd91028ef1e8b99f22c29546b057b3ef0b617b63f75e7019f12b41a17c6db362a4c8cb46b5091325b9c055f2fd39fce49bd299185e2e773d5ec08d44c5912ac49b92f9ee359a47cf4e05f03d78640cff27907039080f4e4686fc2ece31bd6f48e62058b4b297ef746af13b1ec650909d3f57ac8b51fda25d81df5dffe11c3f7afbe10b1ab3266c9650eb94889bf90715ca566a57cf53944deeb18730461caf2cbe653abf251f9351e0fdb8655e40682cd515a3bfdce1c2d62683ace0075253afcdd2dff5c8813d45b0a5ad18225922bdd873251316016e9c3ec1e0bb6722968c4bd158ff69c7a8f1aa65d4066e4fe1da2167006522a312f1cb1f7be62012c1298d8ca9aef0714a0dd777f24fab037a847a20feaa7cd430222b0c348437074330fc673fb91e16dc762e7bf70a8cb81bbb45ee67bf7bc996d2b63cbcefbd1730a6769e4e8cc1431c27b9779fce33d9cd5c5a68e480b488c12f449d3fa13e5fbc936a6c204e54403863ae3d0dd3c75e4579d0979fa6db9e76a6979edd8120082d80c5a40e4ce76248709db89732e4930ce617822ffa513e0b9d872fbd46c0f621d3b1bbb0b809e2ea890a2de14b5b39a0209cf892322d52ca3ea88195617f1d049e1e1dc98e9bf2e4152a74d9ea89614c6f37faecda2b9b057d720911ba3f335d0053fe3598ca3843761dc25130f4074d016805c23e7a5e5e4f21e1dc15bb982c4da23b062e41d607d1fa37e61dc16de209394691b46f28935f4e267015f8abff3abf7fcc740eceeb5dcbd01e1cac83d17aa3ad1d37f7ee70a484dc2297a192a8a6caded7a1229726a000fb7ca97209a09c95b03f695dfea94b395c86c1f9f9d269c0421995a372abfde103bcf91320b29ab3f1b2938210d47e848f0ce3767b98781b3f22ab8b6c6b94863bbe4ba2b23ee076b8864352c416b5ce662dcef86d5790865dcd1e04ad57e7a3c7ff5a9d81462ea59737740a039320e596f2b1fa6660254c00bcda055e7d62f77c606443bc35d6c5378729ceddc94e2e0c4923b50fb06682986169a76fb2058dc986890f5e184535a80f8582f811c3f594c6e547d5917927753a9359c50bb4a07ce10444a8601842b6d686cfad6a43bd82e9dddcc8539c0b37b2a4c3013877c68f2a6ca052a5fb41d544eb47e510d2cb60f82723ba39daa5dd84ddbdf55760e075b650b66ae2088a7215b8e7ae780f7134af72d87381eebf729007b4e716ffd3c43b9f313495cab071f55cebe989830e41357eef7496136f474fe5ea36ce7850cff348967ca139a13087f3b34f9e839f4fb61d380075b346111ba861baf10ab2d4f19cc241be9c20b070f37fbb8c06399695e8a434fcc386e1759a77944709cdc297bb528ffd361f246a4ff0a8a0f1314af5df58ef0c8b6c8a6a30fa7eee8769e0fad8147cdc69809ca25d02468ebe1a7d888df3a995cef23cfa80d25f72ef274136ea03655d4ef66ed703bb159426d4cf968a0d615db6228d9a92e9e2b102c9a48202d7978638bb68b76effa37a33b6e3492a722b07f18281abc76c10e64879e82df8a2445e47492a5b6d3f0fc1c7ce58bf38abe0ffffd99d48c987f3ebfc5ee5eabc8925ab510bdf56c5ac49d20b0476d51ee0e281168079b7389052480cd4d97ac133018bd86f03a525af887417415bacb5520403271722acb32c1cac20b09a90d3ec44c34ee71c7302235afc1f11f2d86078e436dc86e0bf577dde54452732fe5906aafe79ce749d6478f464ad12e6f7286a47c56a9c27b24854431d26ac8aaef8ea3c7b78e51be9ca5651fcf543d418b37556a795565c852921e2e2eae9f2fcd0690fdd01c224de78c41702cc9117f586000700b6b8c4314f20b911cf5113b1fbd569318bd311707349c1b9b07d33a3c9fa96a63c06d7c1e509af9253538f314fe533a3ae74dd04507bb921c7068b74972d7a662a3edf8b1a974c380727e4717b385a5ce59a3b59b60e6faac713ee1dda79d31c089d63d6f24c0a4b591fe77272cc8d6aeb44e887ea322a3d8a72d4e6e8751e5c95c17145e460069fbe47b1d80f82f11b85e032fcd8b02a3ff5e53dbf72bb2b385449d2ebb0f3879b04709ef9753d45d06e43703a5b117ef025059ffc1b43030e3336f7129b746def4645cc637589c0d1c861438701a33c13b880c30a2cdffbd338c0a67c7bef672cdef1a1fb8916519b49945dbdca0772ada2a16cda0da2c4c2d2a22835a83f36e00022b5bc1a22e72d9457351bc8180b02ea6c489d2ffc77fdf7249569816f14fb6ad25ea101b72433327a56011fbe1777d0fdca83af44c06ebb85d882e376dac53051b58b101a578bbd1d0e5a3df358c54d8f8b2c5be9cc4ad1980cbe9ca5a466c4fe9151e7224af43edb9c98db3bbbb8f5930a1a0fde0e89ac00c6e1d8d67f05a8f42211bb0f3a4dc835196e4aa85e90844bc6d75b9acd815b6e737fa0183b4f1c54d42e054e4dcbecfe62e688c3e913864fac7899ecbd6a9d5cbcac384b23c467c57a8f685b222b91e2dbe07fbe6b74502843187e76fff5177b392a24b5d4ae5f76c961b595f719eaaf626ee51fa76914e04262e32891c152be978b158a9ca22cf9313b307cd3715187b04bae7174ada5d37c745451c7b116a601046b7638b062dddcc9f071bfed6bcf6b328fff7693651bbceb71e1134534ee694c61f19d62d7b190dc11d197a8c88134c14e041377df8b94831ca1c460fe9568ccf55d72e27cf270b64c6a422eb77d1e437090aeaa1dd537dfd105e927ad6857370bcc6f07bce7c77765b36231afc96786e5b3330b28ec414c7b139493b694bb0d050c289d2ea65a6ac03787fbe0db1d7951929323367d9142492e8b7675da57212bf7f32c2899014b91e3da95cfebc6438cc2b9dda2fac0b33a6d6b94f753c36105ad85164077bea33db614ccdae123797855a1d7174d704216afa1f17e4bc6dc57c598ff8090e3e0dabfb02a28f5cd62065cddb1fed1cb0e1fd0bd45f5b0dfcba897a9b9a826728094d5bc95eff7923aa874e10593d1aff65f68d4fc08efab9f1f8f6bd59af51b20374d5e4b67f111aad5ad6780883434aa045da636c80dc324be5db04059828ad19cf43eee137a73b1ba2e011248dae89890083b5b4011354e8b9ad7cacb19903600f39defc696e0c9c172a69b887a969c3d8ea33de72eea1259df83dc928eb266094515f3701617784bc15ff232af883d7579a858541a8bbd257abb26de1b136c6aa75301acddd1ad1f861ba620d4d5cdb8a4dde0817d156f6e2a0945849d63dd108551555600193d211eea6499116d3255fb1844eb0964cd0bc641d428e51c3fdaaaa60e73c4d284db3f1b5a938c6bddfd90b0b9689d0174d88ff77a329fc8636eff2abd8e7dc4406333d2999da3b92f92c6fefb60ad3230dd100acc837b117352f0cc3d71504d1e6c7d6c170d107fcae8d94fbebf007b213cd1bb92dc96946b24e9c7fbf986d528893e522afe2619c2fe55681caa4633a23acaf4a16be13e02142887a02ca77e4be2960bd176baa49c897a4f21565f5b25801726295bc69a74471880e66f52181b9e0c46ec426fa0642e3d295b99fbec1d66c964acaf9c193cf2ef582cee56a46f81d1ec1aa4a070a9857595cad6a2b1872f423343ddc4a273c35c838690fa8973681624481e13968eaf4251dd48cf569986a6360c305dd15472f30820f96f08e9aa63e9fdcf038b620a8a65d196f15f10e732a8b2693c9a857641b66e5636ab121d1a3c2f488e9a140db71f39cefe9aff7b6a117cbb88da764d96aa35e0b7e38c0d647f49405deab41db95fcb17fcaf0ab1b7c739f994e524d7a53905302b2afb155917bd3feaba2169b8d7ab29a78710f7764190373669423c10c5197ac01efbc69dea797899412751045018c270916a8e3771b5964af8abd20077fd4da11c0cb749fbdd9964c9d9dc3b69d6c4818d3ea93141b6c0bd53d41a38b81e7b155de0c7d1f10d2ee258735d12602f36de7286c8d22c1f8af5896dde3fc444d1eeac41aa09325ccfa4694f07c0aab1de06de6ea1d5254688753e582c96b766bd9f175fcc84239d52765c67635e5c0e05d6105dcac17457a0b609320329939457e19cc1f24e0fa6e92ee3b86c7922d69aabffffc52923bb29135cc6e9307cdba6c5f31fb1c7fc88a19db6ec730074214ce92cb7245a6f6a9fdc32224e01f672a04bd5776798a4bcb388345127d53b5d6e47abf044b937e7cbd89dad9a45d76040eb7bd647226fd07105df114df421646b62d0ba19479677b08fe4b75da745156429c7b95491e755ebdbaaa997cd7cbbc69db48c2bf47454b70e04ca67365ec3282e7ff3a2bc3c56ac2f518e9538e89cfe8ebed9a2491d597a309e033c5e502c3454a067900ac29f9c465c577825ce91ee5a4ac145ac42867eac7d36a7dd4f622a60d47387547209c715af1c0b20335e2f77c992469654dd43d3e06eedd169a4e3ea1543022aae78a05891ea747dd0faeb2cca38d1026be513650c8aced8e7270609428b22e484c10d8caf16a2e1e54a9a452219f37a5c223e3e227bd49fdd25929e07f04acdbc8a22544542a1699f99dee8867b1c1ec8940126a77ee07ee141f691b0905ba0cb53839d0e4181dcfab64e147b7d0ffd3c0c6ee9588738225101e2688687596b8e2db9e6fa12d5822dfc1895d7928882bd194a6d05753bc8fd0c4966267631bb82c56859e3ab1ce726803f5ed38a2d8ffc54831504abadb429887e73a838e0bdd922fef6a351b337d4b1821d0ac198fd59f1790e771c9d2ddb46bbfd8cc39e3589538e2c90db1ef6ab2f29ccd622a859503604bf5e94106b8f47b3f6db88e68c30b501e3347a6d8b81dcc06883b1a51788d437514e45fe619665a6cc9b6352add5251ecdfb90e36253b5572b81e21ccb85d4f042fda17e34eed1244e1f1f6957d17e5a01c5d8a82a722557856dc4287e8825edc3af2308170103622c8dc1f8e6a7c729de4a18ebdfa34f73487c6af014823778a34322dcd6607ee2af309f4f8da2d161a92cc9de1d07b603ab636749237875974e0f62e20183f7c77ad15f54460340c0f9de744db07f79df85aa3511a892ed8d2b40c24d86c9469f5062c6e000178c6afd5962941de3ffd7576e42bba046af0b9fb585a9edfea28587b429e514fa62889092e07a8d389f11304ae16ef797faa1ac43f88c2fbecd6a3f8fc8090e5e34e1b8ed59a7948181d69609630c45581481db9eee543adf050169a19cc2da4e8a066c32c7f02f617d85edeb80a60fd0ed065d52dddfe9d3ec944ff0b553678b57ca25613174f14361a8305af1de72286e9576188697d96edf6f22b3720661455f12f382db32bb037975ba768471bfa522c6da09658972afbe2f37d3cea51e252ce86577b6c060c2c54c41cdfe7514dd0aa214ec69c9e0f750912cc7ff10cc57c917eabafeb18e4c217b4de98a2c3c583de093454da30ed3e8e812d3bec123a24f66b04101f29a921d1b82562ef079ea2d2849f4aa19f1d40774c63e767597dc5c1bc906ee55d57277e45dd519983a25687c1223ad50b058b642134d2c725b6e70a4098dfdb17751114d59c99e3e96031f4d67d19b877ac2b0b9e363887a03f69b5e2506145a7daf423fc71fb9319f1e5f7902fde6e0a10c94f5f6ccf5ab4ac210368da8354f14648a1471b89712923684ac9a5cec78bd0e7de0a03157335a17049d74bb0e3480902bcce373c06b7e225cdb5352329543b01b1f7a04b30df7fc84089e86ce704df2b3fa22b6cc30a27bb51eaf4ab613fee13ac02d054364822cd44b637a5de72c337f9ee4944ce601d94d0f82ac6345457062ff9a1aa8eecf1310122f307214712656d44100a16341f1fb3c2181a02c47f9819f9af778782a2d030ade3d8adc78fc0b32d7fed9df11c5111060405f2114aa31ce29e1cc0a4a919dd7b0f2deb363f4b5525b2abf9b8803bb0cfd18ae5a2c8dc1dd42178531efa392c66d93504e0c1372f3ce7e742ce4469b839ea1f64e4a4e8020b6799c3bb803b7b7257b17f2b224c980c4d03b571720ac175533396dc0b5270475fdb74db6da807ff7d0f3206eec984269ca904421dbcc101f1cbbbff22e847da3b934e51ea5b62999cd666fe56bba4c994387ced454bd043d8537e09ab79987ef378283d8e50e7bdaf640e1c9a08fbf9f1a2bd193c723753ae7ecb7bfe697f5417145766820770f498699e8569dd499a7e736bed9f10205ab71fb353bc9150039b27c610290c06d15ec4387131a8cb5ed5c45a6d2f7cd59c516027a6214d9503ee4501d5f2d94615d9d56d430d62e163fa09dffd94e59bc7ba67d89cf864bce7dd2f3d982a930fef383efb7ef1e6cf09c365281e0a9e4d204167d984afa682b6c45c4789254be1227f1c4c542db3be449b8c59dbf4d3511aed8cfb29963a55e16150ae766c70e2be6c352c419f5678c3a0ecb2cfeea641c4f9557f204af72080a3c83fdd1a9098fdae142417da8fa97911c9c8d9b3a4cdac6eb19c7ba562824018833ae0700744b391f0d4819da46309c363b3b72bda35cbd9329548550481fc00d8700207e6bbb1117a81397c05a9f4d1beeb2398dc7ea4624c0acafc5b5c85690201a97a72dce5e7e5724e602e47ed6a5925ad9613162e4b19b4a4331c415295c4b829c473712edba63689e258905ec0963db4fdb3ff398ec70a9afed6646ee2656137e2c4afc3e1064b9e2e0e9fe658613a53c4de0b004d8545567c09f0be98208773daf22548e5140ae4eeffdad1729ac6e323f4c6281caaea49d66b8890853e6267149819762de7deb11ce335cb8de2b66e18f5cb0461d8eba281ac134ffe11a0b76caf634259d1bd9cd4734acbc9c4344187aa2c5853dd2e5c0a1a428ecdef9e7b158bcd8445bf4147e95964fd28ce34715c67423a1bdc145691f913d94a6dec13b6b4463fa874d10abfb47ce2a31b64db450df6e9fdc996263dffb94b102e707d36110bccef34494dcbc4159f5909e17d66bb34513c54f01a9f9f04f6742d27b03704dd86100021315601e3668491a80b8ff4a2277ad5106c38cdbfcfd6bbec28ec3842e89970b4db3009b30f3177a2fac5adfb22cc439207f36111c59703215f7bbced8254f3b2989f152f4c3c2783041440fb3241b0b2936191cd9d22f20e0208113c458fce394ed0fad505bfc065351f02603875abed7c9983e6cc1c4410999417512ec30c7560094825a1074c063e910eb2c3ce14b562313501576de90443547e281a9cd40e2c5d766f225426d038480bd841d5826b96b059bb8729a0d480557107fd0b8060a7841686e89d870cfdceb8c764117fe4d4ef0e2103330335f0ab7dc4d97f363c74d97bfbd125a1779fec2eefbe8a6860a6019b8284420e70aad60caefbb3c458c0ef023a48d897452f18d3b98bb85eb91f7469b5dbe78a0f5181e04b54d0bc937d9124f86560e86b366d1166d50dd887fdaca1225b23cd108b509c7d56ce8686a50087ba64837f54c1efdb9c0b6d4b838eaf5dd503054be439cff63a9fa8377b7019174f4e0cb5450725cc933e4c159c868843e164b7428e3c97a1d5c5acfea901980b59ae97af2bec14d487d131f6f8b9601e12149835af9117b13c4b5d93bd1ed947e677b40444fd6a09c09bb2ec24a9509cf47c9c01ecf3b85d7bfc3c18fe39beb9863be1d38ca99c2f0319834d6b1c5f5aba3982db6f986f2f00b632f43ab395802a516efbc19002cd2780830336864f1dd003b698ddfaec533890d50f429be2c1aa2168d6ea41f4ab3417906b6d1578d062a70ffb710b68eeb7ab01452afe3f82d2f0ecaaa79cc6a3709bb3528edbf536cabfaae3597cf5cd477ff2f0b394420a92b5379fc48bb65a227b1819e85748ef17af7bccedc79522073fa389cf90c060af5fa02d703644d034c8fed8fd1777faed86921614f79e513b1bc06745b9b06cfe8a3e34127c23979ac21e4f1c3f51a91e120797d7f326dd98c8589a8d5b27fa1f81d762253cf455706617cd12faf676e4eed26653f3d62302467cb60f772a9df99532ccd69a57c024f988c5bfc9c18216036ce94f5bc8d5227a4ecc2a0cfc2c0ae03b730eb3460d7d22cf6214fb5e0d23932361bd9e904f8c85cbc210855293cc0bb4ac9ca50d4e9f68a769b23261f9a41cbe6f44f6649916ad74e1c52e37a0ca10b41d229853a938814065ae5ae8681b6bc5d06dae6f928b4270efd0b525b96258643f06627f92f3c91f29b1837dc651a0e9ca99b3bd12b682b72ff43c9245346cc6edb05a3106946a7015c651fae435c7c8d2520e2b77b624a99038d205ccad44bb2bedd10b99c611dee16f1150072862f2a23168217e2d0fb42833a3e9f9e61d9cf4ba9373c3b3593241e1bbd39bdf7013330ebf650ee49d836bcba07296cfc7aaf2b2bf71ffef58a7afeca7c1b70eccba144cc19887efc2113d60e3727025ccfc8c21b2ac0c13426271e2df8adf28ead293cac2d9c6eea917afe2152897ae65617f93bb67997153bb904b8f25f79a81cde91120f2b42b22d3aae95f6fa88b47180346b79ff6813d543f34f7260225b2c7865e48bea5bfba9d2fc8fff3a54c427836b13b16922f05eb46e99d15a52695c5265f563800607e7148bdb2edf330a910765d00492fe5f043c659847eee347c8a4c22b70d60d6a3fc74a36aabf8b35d434c9409ecf1fbc68ad1ff306df3befb6745d73a23e4c807744a9a2897ea36d3fa4fc1b18801df75d914c19d45550101728d48cbdff6a3ec7ce9468b0d3d122cdff941d235ae45f44ab93940a9c5d4e5bbea2636d9554cb20006d980277789ba7d055764e8e1e714051831eb30eb242a2aaad3da3ac8f9b6d05a4eb279b42a70cbb895174bcba04be49d721ee91b91223a5f1c55becbea79bc056fad078861d639420935cd670fe93199cfe7afba7718b584598a4ac30a2f075a5baa2796ee7928276e754d690546330d560a84f7a135d649b17e4181dbfc79ae85383fb2e352c63b3c3a97cac328b0250769c14f8f750de4c9f96714b307e60e02a4304db22640306e29ca393febc7e3ff06a59820aaeddae236d9dfb5c1bc78a48a6a5e159ded66588d6119c15337048c8cddd7d082127ee15ecc60c365b433989ca9839eab7846fd55a2a35f3f02d965e728c7598ad502d970a973cfa92260ffba89e4e2cf2ccac520b0b6b2927ede624b97278ab0dbb693fe89a4b52d77e92cd775068619365bb9f4d71ecd0a5f0f1fb9eaa0ece7dc1c4dff22362a685c86f7a04e6913517b48ae086d43f4923bd9f5473f7f5259acbafe6c625e6886e04ef8fd77f9673975442f5edc6ec53130ef720f22873f73c7c58616954189b8c6a7610310592b22b85b6747b1cb8d8cad71f9e17a30c3b6b4f6265789e9101e4cc0a5a83a234547827440651d9b235eaab4e8c05760f02081a1d0d28d70127f5cad33fe7eeccd2833e423175c40c6841e1be9c24e0f41da276d3df5b4c5589afa898e50bba141fbd0c8db9082fa5966f79075f91811b6314a957e5b9022627a7a82e56ab02726bcaf8d238b3947694aa8bc87cc8beda44a1abbcb5404aede4f13a503ce237ef981abf34bcea488e045443e7fbf6e0932e60a56392b23be92722ba2299fcb6e2ae1c4a58d2d38374d6f838c2efc96e46302064015b77343daa64e485d632806407111a71fba8da1b5d55102c44c06f2e8220749805a9a3e033627cb9034dbc48197456a8224a904b7a55057dabdf7cc6d36d31ab04bce933d1f012dc4cbf409dcf538bc36f7092f839d24a4e1aaf117a4a6bd70f450c04cad7d871d095daf9bccb98b1ef22d75fb7feca921d258c6c2d5227e4916b08b76ebab07006b5885ad886c9fd75a4d600fdcd35644807dd85983b0026a78180de56eac61f176acd446e14b3712be974c2860ece460805510488f2e5c91e7d5064e79d009c1649a6f3b4621a8074d51e827f46d532ea125fcad79713fca8db429aa784d711d2562b3c45f3bc1b8808618de25cd97ea1c2639cab974f63c444057dc466e78f11b586c6a0e7e51074181a84dd2caa6ca83c722a61e8de84d5432ad039c61af44355974dcb7cf75e46d5b19c42513086b21e2a77355106caa51bc3a31b6648b19552c2be2cb518a1ce8fc8d1925c6712589ebc4bc44ee72d85d036c294827e2d2dea21aea5410b823ecd341d2bd0d79f53a7fd48e21b6e4871fa67568c1743a82103376a6f734de548bfdb7c494f81a68da10d54314d503fd894dc1d8d8d7889049a7b5a84de9396bc15e6422209e3e1adf022a94da9ba80017e422ed5fa04e4337ad1d597d1938db2300e6119b5bb78e84efe38a380ff626476fefab3d5714ac2f42ba7dbdf541a73be4918a391b69397b7b59a0d201dc4a92d7e4485f20ff3e86577bdff0c74567b7056fc965c04b43f356bf72fe2bcec1efa387648d254fe6ec7842dce5f8d6d030033110a9173192118035d934329c34a84a566fe2ef5230bb08ff0102af8a478a1df668e1143babed0e8d1b5b471a6f52062f15f67b3151eed7740d498489703fd04464dd82377c09682e47e8e202691798e9abd73c4d8415ec122ebe50d8967ef876d5fc48a1f2c07ef5e47b44c14f57c1b9dea9655394feff51c70ce0a0e4af6477af5276c751208c7cfba07f93bf89f9924ffc64c2aff773ae25de54d4dc54b90114d66542d01dddd1c0e6c0da99ea5c84b799bcc89247e77a26399187094dbfd6c11a7cebdddd0e2aeb8e3549cf28104cbc7591c63d196889c1a9a60cb7fa6ebaaa7a4769486eadcd053714623b5adbc7f721d101cbd74a0fbc3c5c29c6b294a49a55abf71ca9c2a690ffe1ecb6e791318801700e9596de466eea5e7790ca55fab034e7769b1f037593768b894f4418f96ee77d4458a33c4f78799d8db498f8f05aa70efd714cfea3a7b68e8af94380d599586768a0bacb3e4daff6fba84153636617381acecb345d27a1eeff9c74b7917aab406ba34db8933f74e2f8f32ab6c0c49752fecd33e69d49f67b6567d315bdaa5699bfd767c5dbf092c20f95813b5b317a7e091fb701eb765e78dc278258539e36401cef0c63d00fc44cf97d66bc9ea17d418f9cf3dcbe1b0f0ed0718dd331f37eeebf483397f82ba95c13dde8d52d0d80808805d7ebf4c4b76a9f3e1dfa55b26cd42b701ca5b1e20e067b6f1df0b6e50e829ba7b18331e7a86f044219144c66149dfd4fd8809273c2915fbb8c7c2dcf739a10201cbc9c76fff1c8bbfbe4714f8ed5272829a348031fbd8c9ae0afdb6030e44a7faef551484e9080a6e0797058918487a090f650ea59fa7b9e372fd270274f4139036f1e5cef37b84db3c6a276e3ea059ef3b172820f70a91b11c64eecadf55d051ce1676640c97fe403695e95104e2ddee05bbdbc0d282ffec44eefcd0b67d0e9f731f9c8c5020d9154bc81a3816a6ea052336593face08adb41a8354f9f57e50ef32c74fb394903d48dea4689b6cfb5c910ed9e6cd3387497cbaf2dd1aee55b9d6fe8bd4f33438bd283913bef3c083a68bae00bc2e2710641e6e01db487021e66767a76b628b5172efcdf40ecc7d8c3b5794cc0f10268cd1c2d830aeba6916033ec5a23c2e551e4b492d58548f6b22a600374682542044e15e3a62ae0e4ff5cb844ec2d103efd85101ad28770b7bf483ff4c6187bc446a5f0707a9e096d7934d709ccbe0150d41e272519be49fd7b2e536f1ca483c35a7a6522981764113d5e538ea7d1277c83da6f55c33c37c5eef4ab6f345c7f1e559b01301ddd091af30b9e228e9f2efe4d00477ec240cee8fbd9449ade4848b1d49c96086d448f7453951be82b6a8f02c0339ca0da70cdcb9f4c1860b3463cdc4709524ee9435ff8756bb9e659e13e098f2d75125f7234efff2169d5345a6e2a0d0424c5d3b87a648822510ab1289b872f4ba9ff54055e757838ce6e5b6f20d06b9b3d1680800ca771b0bf170d689432cb38759b10031f3a57f9af87a95d81baba4b3c9d6ca88578a2972bb66a99ff8bb8e8b8385d911d9da95218e901baf1c53fff1d83d954b8ba135e1d63241cad94147b2c0dd864138ce05231bde81bb13ac75012600109bdbe9740a3758170891f93e90ce74ad2d538428c221c124b381d67c81b61c015bacc7388227fe47a6dba0c53b22f7b501667ab62f6a3c574873c8fae9173e2f8e1c37fd58c57062f8777dff135002af86a33a6e3be2d3e103a1eb71673637efd29cb47844f6691e73ac12158d2320717da169d791453c8051a1aa31133ad606b109e544d891f1d4bb38020f7c5c469895b09f7fdced728b9e3a073cf3ac322e2c6e4c66c6dee207471308b89fb740011500cfce384c3d16ebf349bde321bf7d063f2f48587ae5b9123351c9a4a083580a0be6941a808b539008fc5a1639e791a38ec15a828f5788a4630f58e16c358e593fc3b1ef50977916264e83016b90598f5d8563466a5512e8576738a10a0fad25ee539d9c8a355bef9c2ff409203f0220acca549201a9607fccd1a028acc8ccef1532599c2100a0b5dbc11e0cda8bd40c3a0dc86a3d278ca3c3203905296b83ff05d31373cdc05b99702aed2f8092ee16b21fd3d192e523ef734fcae717d263b8b1eee0725f800e14d464c076b04904d49b19e3bb8ddb0aa81b3dffcc71d4db9508e04410acf2238c15246651a927905ef7e53994781c23c655c72ecae5d6d9b728516c68fcca35b160783c5130a0942f0d6436bc0ebbba973354a08762ed3f58a626e49543eff6365deb3d02115f20be24496f37d58614ed83333f2b818ccad3f8879a2c863e510cb38e7c9bf5ac6b48eb48e19cf06b00b1bb9d01b77f3aab8563e09ae9604395615ecfb0023e2efd356b8154a408dec22a25ecb087bdabf9ead07983b143f037527969584ae34162f011dd84361718e8e33fbd87567c90e62eeb340e243d205287fb7ee23fad77aa3ae8af46461cc40c411aa9ed4b36e117e351b307e6aaf46b1b9894cc6998160a18793f3fe6878f4e0a7953203c2325f8f2a779bb06122a3ec1b41a9316c82d54f2addad073c3858c431bd807def7a1be0572265da5addd41d03511f129c65808190f1b582d3ba3755d57db4d3c7b1a00877db0a0c78dc0602ed62d0daebe6bcd3854caf64aabf295b2266fee275dda4acd470e955a8547d1ffaf60eb5dd69f83a556837af6e5df39a40e40bb142cdd2ebc3607547f03809f85569df106b165a17f804f029498820a8d1e580915090b3fb7a098da7841a9bb3ce9168ec760fe560506c197d5e439641407a1d673c03084bfb483bed033159e84681765df29a5f35a352228640a82e065fc1b3196062b980f33a1d0f2379bd3431b95fda42469ceca06488c9146dfe3f9d8ee57d86ba09e1d5f623191a6990adff8a009de8136920918de110075f065eb8d474fdf75892ebb85d0c99b64b7a901a2aff77ddec4abf91b0dd7147c75d476d0f888f3db1d975b09bb306ea01fec737475396b0932ae1f4ec2f69edeae29533d5b193b70ec2a27dd50804e6626a284f6172913f540d1e22350881fdffe5822d089554c9268afbb438df34c508547255f48af48bb7a4345911cceb7a3e2e4987722cbd5a0548f85f18d30091209cc3e2d5c625ad9b4dcc79cd7e1960d442ba3197408d9df9cba6598a9e850e4b9d3a4f926643f7ab313533c10a1e867f6563524dcc43b498195a2bd8126dd533212623daf19f7c47297a5f00881d4baf0cba053590c8305e451c0e2d2b098bc632cb9a674c4243898b235cf687809fb8fbe53a563ea4ab5db0dfe2019d8bf9c54c57d63a02409c87999651d04c03afb8aa34975d3a4510759f5de9f358dcac49796e13ebb535fa1b9be8fccd8479df104d654f446b375d6d28d86a2538c105bbab8b233f39d8a0a91a50b743281548c136349ef6a0a588e63ca4b775d6e2e5a81805380b1dd276cf1afc7fb67010fdd52c4f6dedc86ec14cc54b807e5dfda0654a372f10a979fd52efb26f1b84da311cbf8986003994b500156defa9e6d9f2f500513ae6abac61832d8b0eaf8c21fcf49ab873286f05c9aa1d3cd1b920e20167c6fb95f713ffdf414b44e70c58c8a24519ec6351749ba136941b48754429d0e2715a401bddb03834d0840c98b153d894cf7eec0430c1f268c75e6eefbb34117337ba609726dd0de84ead58923f7939f658673100bf6ea85c59ac7aee5d9bab662bdb594342538b8ee021b4ae9e67b8a1560e7f694f944c50df4dd880b286bf9c6dcca075152b45698f8a2483985a29dd99bb97d24eca8f993c37d818bbfee7946756a83557083557165b9d46f1ea9ae355a02e93ddd72686f48c381cce3d6e22803d16214fe76697264419e1ae43f4e92e06f994cde36acdc4fbf614cce843c9aea433e34f62e4ebc3ca45ef0b657cc3b0d67bf9440a9ab73e6409be9d8a9662a638b668b15883af2308cf06965483aef0d0ea704d54c5cd858bb80cea27aa218a60344e9e88854b8d62ff3179f42a7fed8e5484f46b40c14e57d10b62581816bffb56139d542951af5f0c9b1daefb573928b95239c2e914ad09d6f588e3642b74e4a982c53020cf31ddf95997a32f523e8ad9ddf073bf874c4d19b26645b2e87b5a229b32d758bc113ed285f9eb823d433685ae5dcbc3215901bf9ccc0f381034a173d2ebe2c435373428fe0f5c5732ea05a873322ac95cdac5a369a8a44c9d2dcaa22fb6bfc3a50f744400387a3488316c430cd1a1d277674fb904cb560cbea31c6e58c4f5c977122a79098cafbef40acd7e68e96df8f7983b58b221c7e0e81b7f4192ab66e2d691c550809a82d937c6e2d752ca4396aec3039ae325e1f963281178e52a9c175298b850aededcab708c795e66e793b9ac8e46aeee03f73441329a2b5a957d31d3aa575f9a34343aee85b918b58fe8e094acc01e1932d8f3a3a510b0bc208578e1121c1e6c17565c10a8e5500c0eecb30c2c0bc15ac88196892560c141aca3a4384a8ed0957936652891466c4ac0d9200c648e8d9d85f46dbc64200705b4911a40864e6271ea09ccfc01b4bc78086e664e3d242418799b2bc8396eeba07972d37873aa0ec45d339379c92403599db2136d5831323531b38438fa44a8bf3922974a0802b0cc8cca7f7bd2a620939ef7c265f50470c9d3fa6a9317687f2cdf52096099e496e8073cdef48d80f7fedcd4e31d6f5ac0d360adf60612f6ff4c53622cbab3062ef0382cb418c1ea4d8bff3c5f224df0f2a1a3e243fe70561ee0acd3c407d373eeed16708edd5de914ce595efdb77465faeb0662b2fdd5126eb23b5cfffbcef1d4d492e7a001d5b03bac04bca99041eec4d085dbbd3b95d6f1f0935d46c1bef6df855143fc82d5043966a82d1415317ad38783dc0841f2aeba4fccd41c7ac5d26826854b176a0d5c97647cc5668d38130da51d1f518276871638b37e4a4b7a86f7ca471f272225eda1bfb3428033dbaecd7013cf6e21fed7b5d5e64994f542d3ef1a216578b86256c3eab53a05c5044c180f6fc82368987399003145f1c6801c94282e16a4b9f53ac5bfc861695fa95cbf21590966ad3d9d76f5b6a6b5db15917fc90ae7a80f5173386b61f7157b8f2ff856bf720701b91de99d42a350acfbbd56e2f6fa4efdb0787753852db9d5ee6133a980e0b88895b6b1f4ad38d094dca549f2b220252cc252b0c606d8658cbdfeff91839a58712b1bb1d1f907c4fe2f3e5a50ea5d368fcdc1121561da4baa35dc7d9110cf6fa6ff0d8d349e81cc08945cf431f03dbd294819f22d9f12ff02128a27c37b5459dda302a18f02ddccd425522c4792955b165347e7615b9fac0cac7e330f34e070ed3ed889bf3eaa6bafa5e6b4f50fdb42e495733e02c3985449ab2d3f4a3dc486f2ac892572bbf338dfb09b5cacb60bf001a760937595868923680faa24b5f538550a6f89baee80500bab66c9e10fff8b18af6f6a597883b39381783309fb4935ba41402092309a38f5b514572ec82cae23e50fbcc93727204e3b5a2234c7147bc6f38de0fe72bdb59a4388f3cb83b521464a4c423a4b408e948f6f3373bf2f8097d2a323330caf8f67c1e77a7b924434955fda33b908057c78b8fd251b890c1291aa19b469f059017e3059657c944b574036b63da2d7916de5ecee348ed577d89868a8b4cf725e3047efb111c383724b9667021b9b9041df7420b886c0f4e983659aa426e69dc260adc1c526f184c618e907058883aebe1ca3e19b86f7004d5fb9a463e0c183d7a7e4dd758ceaae4aaccbf3e03b9020688871664913d7944952c648d2aa262729037f54f4950a9067c1e8cb02f3173945b5db9e1d6c546976f43ba5e7b486ab82a9ffab1493491c6a6fa2e81f6bdca31e69c1388e7f149abcd107408a86e43417337c57276f408d7dc2af04a5ea9d4074a2e4992b380655de0658fdd021451ac28957f4af4e90f80471ed0196603171fae09d5383558ef1e0dcce3c8d66525edd6fccf59cc380f444e22f7d05cadd4b256437eecccf2d64505c78f11e0a0a1e395872b9c7cbfdc8719eb833e2f6282fa91cd733ce49f3fbcf934a91bf73d9cf92ef6749184696d00db0bb0e14f641fd69be1a89d0e1bc7ccb8ba214c3477fd2d641b626746519d00c227bd210e015ad272a9873d5329ac721be801e13a5632187d7a3e168f00735d9967254e2596d5c36f07ad49dfad78e16fa67728d9df911215b8ea1a7bc58e2d5f2c69d329408522577eeb63f2c1d264fd7b2cf7ebaea4cb3d83d09045380ef1c5c831318e5b499cc6777ea9297741dc67ee03e3d4c7d080bb65437850b1a907c09f930430cf6365f9d0b30a6803801db6b9c9c17e5eed72be2fee2dadcd10b6fdd02730abc6890635fda9446c37f8b4ac2c40a000914ecfe67b28804c910b1eb4b7dabb5dcc9eb3fc2560ca7a653fe478fef9d08958fce48a6aec87bd4ff43a261e7ed562bdd63e28d98b027190d6d6390aa655c0cefd5b0dfd8192952fe5bda19d1275d289f97ce5c4d79bb9fbb77f273ef5bd62e3a7fc5c10a1011cff5ef8608259fd46c25833dac33df98a3584cb0f7713b5983e81cbf5d13ba3a604b3552f91b946aa4fede18724452f68bad286bce67b81447528d602084712f9a17772fde0952b23d12cf423e188d83ae9b3b101ec6bfcec4fdda304c5ecf025fcf74ca896684e18507f99ec21329833376009e8a1f3891e6f2d3da70b5a82dfcd15439da9abcd6ab06e45ffaccc855de2ca09dd4aa2425650f6aa3a2966565a43ee3690f3fe66068c755ae03b1a6184d4974c05da15ff85518e001901426bf203a8e311f00c9ca1568f419379f9843727aed64242d077451eb7d542ab4d3616f0e1b1c48a7b4d62c5dc5bf0374c655bbce9680225a7dddb80eb3fa617e966852fc5f34c980750dd0daad2ff46728b58c34834f2411b0be980d51b20a43bde9b9529955fe7b6442efa2351522f5b22547d56fc9d980c0b274f352ea2fd79600644514e37a3b617236b956f22967f1b45499f4b3716252a02799721bc1bf225284670a00adfb0050450361a64dffecc00da12f426f5bdab2d7173ddad1687919c31c8a32ef3db270f0ca1318e72d1c56d757459d89be56d894a5136d946e5b877f0cf6103cee72fd7786af1414b11ab7d4252b2a754763cd87e24502bcb581a10025480f122c6b6ce014ca51a2e0c665645c11330f5243118c5da1d00a15523fbe836493870f692641fcb38b52e42b20b9996953424d8ac372065fd7517278aaaa299121dcff3b751c163be3165d3e89fc58a090819965ba86b11c2640444130553c5b42e26fc40f00f5261018cf7be4efa6fb777fc0598320ce7984e815dc0eaf77408260bac984a08c335a0df93f32399b352de4721218129f62f72817509b0ced193afe523321fbdce3d05c5252da468b0ded16ea24a0cdb4eeb1a302caec80471c4a1165a3cff471dece96d9fd1a435ebeb05c61a4a0d2d617ed76f5950b215db92fc084935ca6a9cc3f137f9f5167d8fcaa55c403d3b0fb59c07bce89c2c048cd0dfe5502b7936d41f00b98354243d2e20ca1fb1638fabe70c857b6f33437b673f2e09b96924f34a798ed3b838c92b6e0da967ca805d4061a14528ac4a69116d6b170a21e0e47c81a03a3ec992280a7e340822e3299a3b66486636b7eb92f62638dfd1c9f8752efa521d4c3a9b7c74ac9bcd1bcf85aabb62defaa28d1c8731cc7548d41a75ebbad3ae3d816ddfbd3a8c02b0581d76571a996fa14df164d81c93d0fd31e62344cd22e6540fb9ba492826a3fab8c6e6df3f074d3b31d58d031001586470473d80585124790000efa9a41d3265fabfaf917df8ada5a25266b8b1f297082fe13dac21b008951dc2a69fa008ca3284d16e6e201b341594be35ef88f763671a0f156a9e712e58cc52a4755e5b5de7e177654082bdeb3f3d63bc1ddc1c9a9c30ecdce4b667f835bfe114bd4f3733e4070bd93841d382d8f7eef2da9137165515bfa3ac7174f54a5145582ee2078483a0999c13ba12ee1986970230a2a7c80f56dddc4ee7776fe19cf473ff23e209ad76e757453fdb806444a1abb1e3bbaf0bb5dd33c857a08caa1cf19e9c5ae053b31e2925090f16138d2fa5722a974d8cfe1fbf00839de6c97a4601c34089bd90993c58c988d76c3b35405a909caf9fb935eb35b57fb7b7be7f3413d349dc9c7169ba0712a44f5492a196ef0705f52c1a13b704222c06b26ba2c4c7c9bbfdae6104f1643cc60eb3e14a249334fc4bbb71676673abca591df04c67c525b20484ac490d0375559dab0d7cc10e0804e191bc892caad40a6ebf8ab7d9523e7b7a058d0cfc5d441970ae92904df4de81500545dd5b0817be6e0265e2ec1a146ebb78534d4212776381b3b849ad6ce1009b9d3fdfb87e19f51e5e9449e7f03e22d6f7ff787f7497e5d76b97a0fd816c3c2a63bd10fdd1ef5209af3acabe3ea3cfc4c95953ee033f00b1ae0458ccafdf78b2438730410a4c64fee1a72eae39ccada8183a262f1a1874fd101ec116781cacb897abc3dea8601562a18cb78877b5a562fc4c619be17983619e4a87759bc5af51943a4d201a1b9c2a93049a001ac30d4f86cb6c51c5553a1fb91b04a3348315ebcda2e239582d425d61e7cc38c7d2a343ee274fd67b086b5cec232c59ea663704e5381e966302d233edc75d5f8fc3c88c3b38fea3e8687933050d6ed5c31e4d5c59e2940c0283ea5b3cc92f78170e6f75e2c4688e485b84f44147c7743494645287fb4dfc57b50c55f9d8dc613452536e8d97f9292510293de0decd6c9acd03502a82405ca311fd14bd34c3766aee13b6b33025b562609859300c105cef133b9774cafe0b1a9111c915207149b172a5fac2c86378410edc166ec2f768d02232da50bae8f65663160a1eb23259c078ea35e03e00e4f81de77bad8094dc55d5d46694a4906e45c729d86f67df06501b5570802cf00ff3db8f7ad75991e2027fef3ba21fd84e739a423642207e761eaaa5846f10a615d007ab1621bdd40585845bb3df420e33532dfeab974690343f0075617d09a170e68e5d427da8ae30860cd9f2f2504ab5265ac5050bea7f61aa69612df4b5eef1d133bdf20e8a2c6ff60c6ed49583251c5515e9fbd3f025c008533d55a5098c031dd6f62c7139f08b0da1e4c4b7cb0a2ec95ed60489a9781c24b0d1cf4b65dd06ec80128232bf22756dcbb745576d3e78a997e02ef19929681d7dbfde15de5bddfd8e91101c50516dc3fa89ea8b64e85b8b5d9de322d969a7f71105a58278e23776a85defbefd78d1b0eb9bb09680c709ec3b702485b74a48dd28afd84d72168e148c5f91f3b617c61eab5f201fbcb81991620019dd3daa550acaeda26536e20e3ee2992fc2b207d5ccbd06511fbcf19e63e61d591c9eb35276418c60ac6275db709cac40673eb7ea3c4d2d342f0c27d8aec6029ddc00f606e55f86631384fe412c61ef97024046ac34564483c17a3f63a4e96176dece5dbbc6938044c673d0910eb7c6d7204f3e59c4a5b027cd5f646968577b514e2ad4f1da0bcb88b1c0fbbb630697d28c45a64e9b807aa977a7e082ba114293e092ec717985deccef42c8acd170a70488cdcf077bc663c196d4c7d1cd5e35adc66fa514e6a4e20a0fedd81cd3d2cc7f0bfa76020ef6528c7da2b3adfac6de0e25094b528c2f1307a873a3449257fe9bb1463da009c2aa65e3b23c1dfc0edb07c57d1ca97fb4e6625b73b26fb6bfcbbe9b9cddbf13286fd8e58babae5318bf68725b154218f8c1a26a97b4b9b45afb70d943bb75a55648b0fb6831fab130427fbca458517e551516ce746d50bbb4e6800e85d8dd050ea43df5f06698314b7ef45028041f711fba438c0760bef443345f53aac4fb89a31707bfa38d88c8e6805207eac098f6abc14c86dcce0289d018da8ad4a47add1cf90742dc48ee9053f31b9dc2a23aa4c0ebf09d0b8b2abfd5b111f1411ca0a5d50ab078bf813f090aa93b0575a0c784fbcb77faafa95428ddb9e02a904a5e3810a899e4d75a66fc43ee30e6003e1fc987fa1ab91dcad63a5e9b9779e6f6b1d0cefeda79531e80386cfbb42027c27e6103387045ecd5ae7c64677973b2dc4ac57d715ed780894f8a4af4be3d7691bc4af4c32ff3dfde2b6ddc61144a8ed9a4794b6cf30ee4e49c83b605ba6bb7106ca95d55fab945b7595642d816f912e64b64f8763879b0e6207506e0a4b652be2698bf9ab16e5a8731b5798f7487ad09a5a5b55dc56267d38049a8e99fa052e300761cc011984f9d24c214f381cf731a606dcddf8a1286b9f845ea3f17a0ef9eb77a2f96953ac4e1073248da8ce6e62e605a92bce28ef3a19fe7f67a8b1486fa1277d5440409782c27e9ae63593491aca13dd7705eff380ca1448b3a2b6dcd25f6a0fa24576107ecbc99a8f21182d970f4e2357a3549d636447ab871e8c286138111bc84797a9a949be106ef725bfe09ae1e2e84b5af43c0849ceb3b829b0d5c66d6696fe81b9955289927e356e449669282983e18629bdd64f8e0e6b0aaf76951e218823ce5a28ac486c16e1f43f51b43d60dde2137976253f29d67221b33b961a6f4b72bb323b8b0ef7775a8edd14f240220ded036f4bea5a2f0c4be5d5d211a17a355fa84c09790199995f53ad90f7efe350c2b9559d8a9e98ae6d3131bfdef266bbf1240b987f054607918ed6042bb4c2c6c5b0b402157dc5b5f97899ecef54c3cc587a8b711c4fbd9255284a738705f520b28399c6b8d953e706ca224621ab146defff0aaa365f7c1d027afdfe3ae67d45ef4a571080152dbaaa9686fe1daad92751ecb3fae17b9abd35940fb948a538034afc85e2a52130a6be89735382d8881b29b5598231047103a6f4b72f17420a9889311bd005ce7546d0396a05bdce9d363cd270aeb39909286663b68e3821081d39a5743bc3273ee5670120b23ed695cb0a37c0c1db5dbd73faafe30ebf1d71773c39c79f955b71288a0694195373e5f80c4e3472527e0df29ec3659d721a51a39b53faabb482332d50485db8b4d33535c138a2402f681b7537b92e7cfaeff88e85255e583ea19ff525d0ba4f36dc402b5ad923fae2000038c1c38f9becdf0bfd5b1565bf8e178ccb6fa0370c8d342d3569248ad766235cf8de1439b303741ee9f5b1f41451c182bac28ad749702f35fb1acb7628cc7094079d4cce39dbd35898502f8714d53d24b65ed2b7cb3ec88ea4dc33f4e9855aa2d2e676376f7d4153c817f0343758d21a120cce4361075f6d69bc40cfe2b019ee8738d5ea67b4f094cef4ea22fe34bc692bd633ae06d48b95749547f4cb5778c4998153f442dfee95b4807f31c67bdf693bdbf9086736cb6597ea6650dd040c8dbcaa277909d2facdd6b84b25f3d529d21d58790a6acfb777f9fbe1cc30fef41cef1eea2ebcb3169a5bf45f09ab778e591221ba46a89ea13f9854559b0d54bde88db8f741350dd33d0f399f5cda85447b832449895b0363a36fe341078246315ca6edbaaa99fd2ae8949a704e33c0bd79801be18899113d76e53bc6c4f7249538a8cd27dc9023493254dec20b05594527a09c320cf86e556bb673b0482676a5600e3f86d811dee7f841384c291ea3accec6bd27357f60ab8f1f0ddeaf2a8d5d529cf593ac8443f48f486ea3ee5802ea95e12cc509d7c31451546bd92415306a831295560aab9d034c7e38513620251a1a9f14d3dcac06dad4f13f18dc1cb3d40d17ccc63f597cdab3009a6554454cab9772e58392b5c8b58230d21d6a0be643a4d8afdeca8161d433391408f0ad3f67ead64fdff482aee402e2c10cb60795aede7c32852dfb9884caf75d8cb4a3135abe96c43978272adbaf9c084f50c1afb0276f7c228addecc52768e69aef7d81275a0c49288e72eca20064b02a3d2a5b068f5f5dae2495dd9b44353288445b102de65cb31a77ed8e6758a82c3d3dc6892e12357c90b690a60752d35147fabbf0ae77d7d19853a37ff3ca84946d5d013724b37265448b0886f86eccab3ba3d107f01362b3d142c7a34aafab90a7bfb609b66fcc8690449282b670e6c15269e7637db6f33e55d088b0c0230328481e10b47fe136d1c25422d8c5abef94eb3d99772ab131a5e70fecde4f5f72db6e56c0003e3e874a3232ad965645b0f1d1807438518ea38c348f95f88cdb80b9c0a221250e52a1675f837795a0c3108e43cd3193cb52a8bc2b075928628871757179d193c9b82b8cdb476e6058a39e78fcd4d73ee7e064c1ed3c9697fb9fefe3a3640c350fd8a9f17775a8cb21f419b1936c3d22a9c5240aa10e89ec31c77a4356344eb293e0eb02070f04d39eeb0e3bbb6a61b41707f9cf2f2d1ac45001c013113d08461f0655940e3737270f4be86f8bd3bc1196d1ead3e43d524d2830f135de09e04f3d3ffa94979d964272a8943434f421b1cd9bf1e063c62edec65d19d8bdf0273b5cf16cc96e9e7d5b7ec98a928d792879f7937d66aef996fb056a1358d2de986943f4c744f4e382ee7e84cd0893818b6469c4f9fe68489d1b737e229bac175f5a0ac271742da08322cf8795817f4c24531a231327faf3ce50a28152f4d8ada7e55ca0b3531f1df675efc99206cbe4589d649d296c76502f1fef4c2704e2fec9a2a08cdea78cddbb1fa6b9c38d387ecba0abea03af4e23e01ea317fa775ec3a9e2e85c27cdd425faf51cb3190fb72c8ae1e9a3b4e2500dda79ad90a9d2c03d747b8b3d29376dba317eda6cf58ad23c20faf5e41da24392eea4c2618b40df96cce2435501f30a18d3cb228ffd7ea009954323bd54cbb27c479331a48c556425571ea6382efc2a055aeba13502d4cb7b6891635c216ab4338d70094b6586a2732d4a34602cfb0a51d7022d04cd40d89d94157b7fff6882a371ba5b9cfc934569d8d7386f10973281c77e1d0c9cfdf43c6b3a79cb79b514a825e6b85b6da787daab2b3a439efb8ea409ba6bde288e4d49f95c9c4cbf103018891359ea5983b85d66614ebe1eb43f1f32865ac5d3b76c377fd441f2eb3435c7999f09ecc02209a7121c1db4ba87711a5968fa04f45053bb7f765ca604a97bc8a3475178aa03f606fdd32fc38c4947e6e4e0112324308a049a45ca62467feecf378dd868b31f449dca03ceca2b52b66ff67fdeff83de26aa8efda5bc16789b24f81c0e67d5b9b13f465d09d371ded003452280f9fea33869fcb9e59810df816c087b51ba8b43b91984fb96c01c2549f507950acb80feb96d5978d6dfdb3e0c2ab8d76959204bdfaff32a84b67c66e5520c891f871096c927a0f2a10a88980b3a81307c822b1747c52c05c4b410ed78db85d02a020bdb2f36e914180eb5ae2c0770369b777403be61035f6e2f002190f5e674a96e0658959f82a4c5e704d17fe0b7a0abb86dd4a8cc044fec1512ba1da37c58d8306f8575a6c291e6968efb0e8c6570885564668116e524092787720d3f87e4bfa993cc66e69f19c7150e9a91d28972e37724e1174da60dbfafb841b2eda96dba2671bd282d6cf066c395c3fc8ecebcbfd154b9bf8324cbb334a97f29bf873cd65aa1bd3c3a649cc1bd9e33ceb3fe35b83d3cbc5c2e730535083c3da20cbb3932bb93c108387f9b8225ddcc5df97e04afa134e10ad88ce6d232f2e3f753ef9c5b52457924055631ceae26b6e9f225c2929898a061f3b1b66bce38735a4531d9ae74a5907f15732648ff1224d22a9173db96b4b05d2cfcb0863f4eff4fa631c34429bf4828d9da45b810489558849dcc91ffdd870bb912e5fca1e250c7f7ad7961be8f4bec28e338cfa7bed3140e03e8d0a97ded1bddbd7ed273d7fdf50cb095716f47e32579d1a560a5fd8ec65ee8e4cbaafec3afb189e15e876290ed2b9ae17d85a53023a6bd5448f4870a3c61c4f903f479901bc83feb0851471fb55d6981fd4e15b5fb0016f9b60e9639afd185674dc9493561f2b27bd4c248bee0f1518399b3b47976d89d748ec35879fc137fa53ffbb8174313291047a2cdc9a9e2da9975be6b37a636d46289aa45ef8a20a72776edb3da711af0df8ef7e2c1a1da2df55affd6065cf84fe6a835109ef887b1372bbb86965d22d1c1f97e153fd8c695d108a5a3993aab13332e8f38a391127e102106244cbf26bccac727a0bab5e6402c547a0e8cd350a920288d68f462feb75ce5465456e13247e459d2d964cc231013cbd2e89df8ef1368c30c1a9e50d6bbbf45bf94cf863242c00a4687108668db0354f11e3dcf6b0a44b77eb655f511c3d8be0418b6bef26c830a779541bbf7e761567bbdb3b5e1bc9290c7daa76c2e2874793835ff10b8e4cf7da17a6dd46e481b5801d455639cd57be829656bdb95f309e27e4fb42597f1ae9cb28c409082440be1abd65fba9943c46065287aad5d17a7d3bc9662521029d0457bb4940ce92809c15e5b7f4cb857a924ddc8f6a9c4f8d6257209889a70262831142b497d3a3bcd84226ce4cd52ae6d6f54ffeec2fc656f7ff57685011d633d477449fe51bb648cec5d2c311b978ac45df664d6798a1789b470232bba113b294fbc87ee224e4b2955fc270bc3d080b9e1fd77cbebbdae29fc24904525c6058a5a2c6c4f6f5d5680d886f63e4536e4e98db8935701ee1c013cefce4de4c40c10b6caf0c83f06e86816e79bdbed7e32e0b4ea24fd899cec43f1e7bbfe2277377b0fe8fb81db03b1d2720342ca082178c0736c379e55913f79ac523180d2004b93ad8ac227eb73cf509d777c3f37fb110b60cd4581e39f22c122f9ab2576a460cf48cf46229c3b294072ee8455556b14cb2807d65a8509d5172bdc18126aebd763a5ffa63dbcdb52b7dca3d7f974cbcd0cc899e8e3d7f4365fbad818058d37c8d3f3514dc29b7a7e0085f9d392d4b388df5fd63d274e53ef02dcb8bcd5b7b5f15d4ede208da0768a8ba93ac6b731cbefc25673c4f95850ce3de65fa59d0f973b966444f4083935add7d4a028df621fd122df1b7091b568ee0ee474983e41fc249089f6562601af25e8751fa4348a9b5409642342db3424e31ae3006cd7f9031001934895e3c49549efc0a4e406b8292fba21476e2ac4b6b77d17ea63c907d7d9f639d5eac9340408e8edcb83fb8ac06775094f6d5c60b444d7fab5bc3cddb0a8d0b9fa993c9983834c8fcc845b8544e1883c38e1a061418f56c530918d64db49b2c389555557cfc2368d11db1e392727a3e0ff6245a34227ba83103d87473c251bfb74b2f6a0a436fd931056cef5473e811b7c53af90e76c7b425abc3aaf5f16eea2c1175b940476c4c261ea253e09ae270d1757c6cc415251d1b960281d9867d561b27c1570886b515ac19f109b8676a110a5b06bf62579311921cd06be7250c05f33dc86655450c9ce1ae44af0297d15c8372be08caa2b96c8be346f25edac85a2ca5e8d7efacaaea8bcee88e199c8f94fff9a8a31fa51672ddf944b3e7396047a843192496b857adacc43422a92ccb50668f13abf506217eb6308c832e8d0bcd59977b39dce38158e5243ba3eb8e9ea972aceaed8965b43847e51593aed88bd5c3cdcf7280d72ef4202acdcb42d8244ff8bf07f9c8a9083549bf120e65dbca429521007cec762f24b4fdf69e09983d89702a072a8b0f83fb66f6ce467ae3c4163a8e30014d9248cdfae2c3c884622b6ac4c669799700e4ece5099ac7f8c8845205caa9624184562166f72ae2a8e91c49d26c6922d074dfdc57fb33912535f0db74c46afcadca46e1ba72f687961ec1d40d159aedddc8586b930f53d51ab62119f2f76bcabbd4b9685056fd61f613918030321de2b209223eb9e80cbaa18987a7206f606d981920bef01a489052064e9fbf03f9a67fd61caa04fb114db313cee70d19bf2308ddb15e9bbdcfdd74d2568eae5cb50c2e340275ed8deb3e8b3ddd289d541c1e5db9ea52d9a26963dffc244ecba45a0015d770b484d9aeabb8419e644ae4c510e65c6fd9a6622266cec5ddd02aac9ec2030f2572d3c753dbf6fd3764ddf83f2bf9e31fbbdc9e5e669fedc1aef68d29401f74fe30aa63bebbe044af2aa9df810b3d0e3a5d20f48b8f2c250662a486be133cb504967a0b33ae72fc7fe3f66582debf6a06b22bb5ba7b7019e0a7f862ebe9e89c47320ddecc4c78f4f08c84807e5183ea9c9e2392efbac82b13716cb9f4c0b2a2ef4210237a00901c860f4d14ee8cf7191edc0236ed387f8e9c68d38a713a824811169bdd418a460cdd491c2c7ab771280cd6d620c324bc9bd2c20abbc1b953eb40204a1c283a6f17ed8d089fbc62066fff08cd3812cd9a46b6c9890cff03e91a697e1ef932a178adac8794374c7cce204460085e870e5b44b61231dd76391e3886f468d2e86ce3f27ff9bc93ae76b25cca07b04a5b689337ef76cfd4f4c793003fee8d09fdf1fd777017c4880111d3d5524787bcc656ec378b4637116ed283550938346f62c3f9cf2b0296a9115d858b5c0ea2bc0fc055c45fa4c00d25024217071b7fa4fb3790692b205175d1bad0dcaa67a0c00b27660b8c7234ccf3dfe87e9e843755969c157f50c66740897207b987b05b71055ef170ae72c22c5c1cb49d043325322c78de184d62a9e12acbd44184e42336d991d07c975e53e769670d9b9b04b07b4bd818f53246afc5ee88a73918445c9b79c1dc964aa47bb050d1f36b17c99525b9f79a4bd5b4299a2df9e009126dba0c56d075cbf615e1ebb1fab4e44b285fb1d4e171e53ab6cf10da0b6fab0d93823eb5018458245917be8646f5ed6d70cc62b33cccc0bf2074f47d79dcd814351ea337f9c6989e778dc42e6c849b9d29c743e2379c54be04d9d9cb13defd92c5778215141042234327227e806d85ab5846eb2d341e8a4cd9dd6445a6e3998ca465bc420860d3dd6854d429a35476473160d99825effe9a1a30e61da0b8e1ec6cb3f376c069dd4ffeb0764825e5ee63e28044740fbc2752b2e4fa55bf25b675613dc49f577371073c70ba32249419b8f012ab90b9409df383ca323c9f9ec4d492f145ff94574a3113436c21ce8b218c06aa59006ba6c2b4bddd4338f6a702301d149a094d1e9e96818fd2422b9e905e01db6b52b219600200e3f8cbd2af3ee97378c7ecb3a74f013881c59cffea05040c0873ccbb85503f020db5a41b50732c12c7015b70029ba57482b8ffdb75f89f3e08dcc9062bfeabbe369ca1ef9b9e4bde5c3000d4d3fdd6fe23b21a9b18c8b6420e47dfb5e3677a0188103821b0495e85278215575932166f36ea5eacde945b74d8dcd531a46281e9cbf63657f68aabe8ed72474401c54c5034ba79c44c5b8069c65a39d6964171ed4cdc2445b2075eacedc5fb2a7848394c07d7ab97737b691b82d49ff5fa44eaff835224f3b8b1fff83cd840e5fd912ee64c10452c27f37d61b9e2479d88e6946ae0d708ca59f58b185d779a3745319e0a88e5c71486ed1bc9e45482a99fef135613c0144a99b9a8f6380a35ec42b49c953bd9980878af48bdb4ae7a51b7980631810bf4da42bc79b8d59bac7a5d9337236cc2165066322cdcfa52c8a5310e6abade379cef91f3930b9ff18cae3e8019fb863fd391a6e3d296cec169176d95d057ea92df456b91cbbe44614b6306569104c847f649945f71b368560781643bd285dfbb3cda52d56f63f328188b117d9a1cc669702876fc4f04c9725b954167d7dcb5c9ba8a2a6e76c0e365a55d82b4f903e243ae1bbd1d57cdcfa7cd699af5156cbb360af420ace09b7283b3b57995a9c57432ae4016dbc461a5d79087ecfb264bc81c17ae5c7f3644302fbd3a0972052ee800201cd8f5b27e3d38a91ec5c0ea100a58b8ca2636b3a0c0bc42a7d35d88863ef0af10f8349cc4556ee18ca284ee97a4e467366c124ee493ffe07486097ce3a51d205c7c850f4b143d6eb21059c8674a9896ca62420315d381e78d76d4b9cced8228b2b7571fe0a875975a7d8d9617de9e8286f6dedbfa48cb88c2ecf28ef8e1a9dc02f737b59c690c1782b5b3790cdb0493445ebb51d2052842e4f629ec235869a8bc93e5e3c419e5f6a6550b60d232205a1964e2a73e2ee19a90e7983a3f51f99711c7e4ce22e1030ed1144b3ddf263eeddb2c36a9d99b286c2a58ca057c02e56aa81e3da4cfdb972d30122cdbc5012feb1895d22e173b353c4faf3a3da785351d0e4564c6021f4ed95a0d99cf13c971ea7861b6f88b968c21f0db1879f296cef9771566f6b09fd478ecf50b2dc31d5c32d190258b34901587b1dd8e4735dffc94dc42a155abe35a055a3afb6f933354e9d8228462c2b8bb536bf9c57aadb286aa7b8229d72ac275f4771dc38216ed963f1abaa40100d1d1376538149822dd814fbd52cb42a544cb86e80acd8a7188b7bab3f50180f1a6660572fef1db7a43a7b17e4bd6cc416fa9b3d414c3241483987b36f7393f6bd66f6c2712e294ad0c16291f2be3056e185a929e51728de555d3d10b5add690e45c50b86e6e010363bf7bb8a018d132bfe2b6420f11e2054310fc308c2368dff6aa29ed2f1daa613d887a4923a7eff3a83516441c5c5b88c5a3b00dad34c654c0c2afc858647a4a3eb6221cc8d0914e2a1b9b8e8e0da92b322fe52841beb7034af7cc25162cbcf97258c01c57adc5991afaf01695974367ca25ce555165dba1ce5aad0f662173f0d4f4077693acb4d1bd7da5b084dbbebbb088b2ce4b367aae640fde9eb9287be6e419fcbf9e6c3b1da545024e618836e04487e9c13e88251e0e73e6e47b7a67d4471fe975b5a0bf8c0d34b0a037e12dba954c0a9ff48a4577df227883d86bf7e081d6df302d43acd5a1998b8ed643e575bcfa8354ad15402dbe98098ffb84bffb26b95725216fceed2767e43d3460b878b209f0822c3d82cc2fcfae0e501c921a7ded543175259b7bab7cc292359f2e6589037f78887564cb549ae4d33e9747a63cfffd4f0dc261c53a19f200a28056ab219c18250297cc425ea3895fb41609055f2509d326d52f072c8f8c76d3db14a24f21a6dc6de01abc1e4fa6d01baef6bef274567b5f2e1c026c054c4d0d1f027d3e7bfd9a08a55a746bb5f78a2e76053864904a0db5ded254956622fe7ff7d236d201f5750d446a0dd234d46b61d77187328bcf727efa86ae6485ba563ac32e52ad2a36485e6b05f33115f8c47f8c9bc13a69ba0e5a1b0d6caf5049a83c28f51227e4ea8718a37d5fc0a395eddb9aeeacd01335d5bae69b257138ba810bf6dc4c466e28dc05d54fe1ff1bfec6063402f81656893e3bab26c8892f2decc585a33cefaafa7f9740c99a3955abe97d29f0cc1c994483ce14312d29546478a6709d9553d4ede382de6ea00908455bd3f97c4440887c472448f30d605e22cd7e168bd2def20538192db40792ca286a9ed5308179c40315abee64cf0849f88247abe409a5a3f937d1bbab6d4c187da72c40fcfbc8c13c38527c884e9e4815d90edb3b9c32462e3018a127e826c8ab0dfbb49a7518990f1762c46d3c7e86ea125bf80eed5e157c2b816a1e67f3e1d040ddaaf15e8705a640bf24f3f41e7a5061d41ab9cbd121cc0f915d53958b6ca8309a4db8d0b00ee3d5ea9334de27eabae16cef2f82e9f4cbbbe8b2147284b70dc640f3026eefae2a002290608b2005528040461195f3f848affb61d2e4bcc1d4f29ca7cd4a17a91bdbd7c20cd962f651660399f82a75243767524cb6f11fd26fb2294eec51859389712e318abc8f3d345059343872f3ff1e2f81d72f24a0d115d06d4b23d7216aec203941a3d90a16fc89b4afd909f0503e017182b9526156a749c0c25879e2cdb1edd9899373a903c455b2dd278c0967960c7fc179b3b3e565dcfc756d16843b7152c66babfe29b63b520cafff0d002077f5bef91c676aede7d9c93cd74cf06768a32485cedef2d79fa2b3686b67f04bb1ef48b9dfff0187f91aaf583953a59e8491c7d6906401ae75b55d635f3e03163372d6544f4c2fb6cd679ae87b150cf28cdc13a1dacb1aa3de0882026cf674887dfa00e8c8af7ab5da884ff7ff118129687d05910d32801a57b566e6b8b28b05c89373eab0697dc5b1a40e886b5974ea02676f11c4d5998911eced432cd57bab39b600b2595a5b7875e2a0a35da41651957d720a02694b122cf999c015ae195202c6dd37239f0f04d12635c6c1ed04c9167013942dffd8ae073a7eac11533863484e6a741cf5f17f8c6302325763f191fc6020afd2a8214ca866024a3c0792c7ac1a00b14ab7d5b515b369c3fb0ecf6db370df1198eb3a7aa92416a57ef030edc2d407845f23e966696f1dc8a61f06e00348150ffe442c489e8115cbbc3db5ad39c1f15bae780bace454bd5f53d8824c5c484474f37a3e8d3b495c8250899e2c6aafa836edc2faab30d161550ef01b26920ffab1df9e71075e0b0d8bea738027885f5b6defaf1ddc3dcd55559e6ac2089cc7524017ab86bdc280d03e36d5e2496e91372cc0aa2b95a73e06011005903f5d238e2afc4aa00b58f30f8e946d171224eb698f694f576be58082830de9eb70980d234ee6db6278ef64686af2b280c4809f38310ea66a73fcbf04d87be49807d1746e6cc4591a9da8f2b8cc046a12e624d57a89fdc7e7c95ab0a4af989805ba20fa758707afcae250be707ee2a6171e359c3c6c3e21247362e8a11f6987ca3de97f04911d62c3b1028a4d925ba456974249d8d8ec2f3ee18a22f9907c1175fe109cc8ba9b4570128d37888f32a1e2df0d4c9c12970ccd459257bb96aafc36c3ffe42666adbd48125b3ec173cff5e75788a8b4fd40b2acafa1ffd49a5f57bbe4f02affee404849b7a8dfbcf4b3d2b0576ddf5e49ac913a7f38fb7920e43a4a593f99217de2a72f4ce4466df6d2eceb3fea57bdd595aeddca0e76a779b62ab70555dc31bb0e39638153cfe8d52cc57d5d1c2873effd8f6b57a7aa2333d8c7ba844c08036099453911b4c203ebf32fc47f0f4cbd7359217051d6fa510ed32fadf795121ff3cf0a6f2b60fcef9f83cfbf9afc3c67f679edafae7258e237658a134670dcbbd8ff23634b99b6c8fd8efacea2500c8b99e9b392ffeb40500c2e1fa971aaa348efc7792205099492161b94a3cfa95604a3ceb11b262413f3dbe2708db31ab2a05eee9d159b1af5a224c5670836bd588f30e3824c6eabbc9e58c24f1248d7c8e63b4554718d90f7902577850f337ae011bf873d13d2e44c15704e27536c96b7fb017f7774e1a66ac3a04935e8ccd0e5a76669cc7c792bbfb5b0f0681834ace6583dc7a2b0020d287816160ed4c4cdbae9c2dae5d993d2ae0d32df58fe9cf04a27a29db990a1f5158eddbe3b45bd1e04db2582ae2d3f5712ca9f0c4c14254c39210baa0a6d7fb97738f78d2401091c62646b6b96ea3b9038f0301cabe1ec3896ebc6bdf0221c8040f2695da35483c7f4283719e0a382f01d87e0c1847a5b0f8c916353e46a45ac8afb4322683220c46f1dd6eeae0573725f97a26678b22b3fb0ce77b10f87b6696b8309c86c60a3ecaaa3aec7288eca76f94fdfb3debbb849445d53ed77375e6b83447e12ab9bae27a2ccd8eb96918a5a395ad1e7c6495130af02ef691cef801387cc633015d8df90574882b203dd857d83d50461b11839f95bbe905d691e1cd09226870be250b228205ec4293dadeee61ec9dd83599004658f444ce6f2a8c76b46b5481c71adf73cc5cc7ca39f09334df3bf261ca5e772fd131b0615f1a90984566e16cf9ca61a1d0837b6225bdd75268669d00a2b94c3d6fe992de1a6a2df12df5c8f4f8f585b541d2cd3d8ed4a231160989be973827da17dd042a902f70fa71c8a32c474e79fb613e27884692393af389c015404a1bc997d071d12b6623b5442552069e0ecbc3febc563fdc7a5191879d5a44203c65eecf0404f0dbc915033cb1ae647b2468c341cd24bca6fac2a3d51416b71e872189540182f5440a282ef20dae88c2296d4fcbf7e0b4664b5f3ab00b11a7f3b4011ce0635408868f634e44feb5a8fcfe231f8f5d2f9785e416187137f408b47e3ab2894d7e3955386df3caf8ad11cc7fbc2134c5c41a40178d4e69860f6f01cb9220ef246cdb7478db8261ab89fd3e07ed7de08dc37b0b58606cab13ed37f7d0e5aeb8a228a6a44404a0ceaab7d81eccd4e2e907295d939b1ecbc6adcf04883154f7e3bb05f37b183061a2be8992297333d4262d0fd6b34d09ceaed16ca36d36a781f1d6a1034639737fe0585a47e842bc52b71b7e2b829d3dafe967152e0c333b3a5b60f1e1508971e4b411f2fa65069095c24cdb7ae51838c1084a843fcf16a026d8943e5461613f1d3449023dcf8037f68f22a0e2e0f1cf7122526efb7935be4927f724f8ef8520db4a3491d5414d8d784817fc096a6bafaa38d24983dc2aca49e799aab9503cdb51e7304f1660452c3e2786323b7bbcecd1d4a83017ef71f45339e4b0b2614ce9df6303552eda5f2d42e8cbb5c53d21991b3e7823e439ce63b32e2005be62c771b27526087f1ce6f25bc2a87a03f8fff593397972f70fcb0d6c0b2ff8feee62db0e1944a862a25175d1d3738f17b384727b8e321d3efab2a1d3ef50caecd01a714730d7ed94b31e661f421d2f027225c1c2da9a500513d5f0817283b061e48b6e74cf30b5919e5036d15bf6318d3bcea9b2e0c346d1f598828585f277f58d1fe4de6b8aa32bfdbdc7a5f0041a035409659e1c327f94eee90124ae6f3fd38323164d57cc1602ece83c9973e34c2fe91f460608e69dc1d431a54ebd56c9ea74180c67a88d0143109f96dcc133a2fc7c159f10428c6af5ea052ebadf2c21ee732d643877d5516b7211c9c44dbec9aa3aff42515eefaaa24afb7a130496c483262cc1891f9d9338c8b13be2cc1da4e0343afb52345ba4370b3403f0a8584a1df065f3f159faa47cacc8892132d816b8189e30f51dd67fe5600f9fa66254c54c25e2da4531271372a8b560c530686b7158cbe513b3df9d177f9b3afd16eae9ba2aeed100a8ff76104808286e8ec79d53374a90f75ae3a30504a2a8921c8dd831ecd0f29c994045cf070852fbba53e29f97a7e3e3299a6789880e3b9860ab9a482fa734f2ac11e9c4cbb1b8138a2df50a17fcc897a98779967262612a9b3e0da7324a0d5ca7c798d3c3ed4e776651de8800d8a5c41796d94081f5a3e8f0456776bf2054fd71e2e60eadc0380c6c5aa636dd460d274e816c1a5ae75999ba9be2683baed64474b3b73407c5b21d63893caae9d610a009a071993864be790f70803fdf0cba79773602999457078ab2b70619c9cf7fa7804d60f3f9ce994f739ea6c99cb3391b5716df0f116706f807a58eb974e04f4c870c885edbad69bd889ef47c8e597ba113b49c4683e13d8c254d2ee413365278d1fb5227b07dd3b49ba36a8eddd9c0d4925726814b38aa67e3479b2a460013513e57345e08ceca431b82033f9fa826b9ca62ce3ede9187df3a46d245bb4bc108d7bcb381f1a73fbd4003dd682b320eabc711267903aa36b2cfa04880f9025da5870fa6338da0e7e46e2982438d29a64df037d91debdc4657ff54e89748d8683386af29a53adc5af506ed8d7abfefc131fa1deb879d4da864caa19a29fa7767d5624e0c291618c8ea2d5b684c5ab55eda174f063cd26e6ff026c894f60f3e089085be923a9532f0809620d0abfb488799c21a559d908a42bbc3bd89068a6a4d5bafaea17325d4281a476dc1c4f2ea3f3bb12bc4d7a4145c028fa88d0aace0e7a092f229f453e3f608d7ab8368a35e8a9ff6ad24648941ffd54ae6d9412d97fba25b5c5d2674989b1cc47b5faff659dd0747b28487825ba9105b11e04a7488062303bf203327b9dd5250dce7315b14cd77ff23f924bd88cde1669564ce91c85dbe30691a4b817c4bf4b25f3046c3fb172e0ecde933e48fd678cff79227a5a33df7612ef75a7da949c1cf1ff0be24718ca122bbc97b582d1a41026774b105219f0a8288e938879bda390324b7937e3882008b077af7a44baff99bd917865728ab99a718c757275f75ba0fc6392a232a5a5333211bf62ee243197f7ebab7b6859c814c02d26a021ab3276015c074a5902f9559d39cfa7539c45cf2c331f1d605ac160386ade3d729f77904e18192696f8a57588798fc182144e767a04a0cab98e5f0e10b5a1e57690e25d6bd876f356da83203cbf30463cf1b8e54fee5aef25038b17cd47083a0ffd7f70319faf1c077a9bbaa966470654ce96f78b2ae08b2bb1cbb3f7e7ff37760132d8d7fbab561b828fc88d640f86417195ac35852422242e6ba602b4861c258932064769d265f80dc74fa466ef2fb9cb14f8382237a433353f1e2e4b5729ca0b4035940e6c0d1dc0fa368b1f0d9d44f6b49fc9cdba13b743d61c0bb8bc04335a4747ed2b3088a639b8555fdc4755f74c381bd4d7b7711660435e61a1a83fb1e229fbd00455a754e55e3f8d13861ac45ad95104c155297de7ec26b41d83aab457bbaa503ee71b6010c1f0340618680b8d56cf22167c4d4d23c8c55900f0144461521862f42fa8bcd7449c993f44c60ecb9f1c785c237388c8a74bae054d2672189f53b1c2ec068bc933059e12ed8d28df321e8c32a7a2e9efa36b34d98f9836acd4092d4f5227fe6b5bd9819aa740e0f574bc671434fd53c3679da19255cad0befde0fc922b04c87b85da4d37f291f2f9a00198ea1a2a3aa04b8fd0bbc6e1968e0d49fd4d819a9755bcca4a2c8228e0e743a9e0645a7ecca837061392cd67e6ee84a28dd56ab142870705b5242f673762793c2c4aba6007d6cb96671fe28bff4f79b8459f7ff7e777897fead201dd3be4eb22809893b28c1dcda9c45208ab5b58ceaa03f5c28963a4a885a469a41cbb2ecd656e5d2a7b32504bfe7c971caf4df4ba176244bb7b08bb4aa4065fe443985c6efb1da5c20bad84cbfe1db6c1082f16ce62e8f2f25bc2c0698f2e004226a9df2ee16086c023b15957a7679bda06db87eedef2ee29ed4a99a1a8dc8b0a48c933e58ade855b2633c47e00ae1f92a1ad9a0058b6d83387ac33d72c79d2833db8e620c4ebf87e82553368b5b9a147b7bb23f0606ea357d327d61a78a99335e118d9d097633f83c2104ace94a12bddab9d5c0f363e6fcc90ee40e89236b0d45fa0cda0447ad36ebdda11f7d46224a11cd77ba0c15391111999cf5775b0ec15384115ac9a9dd5a89d2175dec2073b3a80b7ab19b55fb5740fa5b819289a19883347c199c313dd32cd94b3c27bd6ee017652a399871db6c2b0b5fa23bac56ecd6fe4dc56a20b9a328394875adf41c15a8a5b6dbb69d2d9864b23ba0ddc590efa27e4b8ca5bc80fca29ea11f4b2dc39bbf9d7178fd81a4afef73fba036d6352490460653363b2a341b178b3022c879926e22aa1645de52c619201564795fe902751a3ba49ec692ee0d2fd02d5de71c773f66c0eadbf7d99b2e0546e594a85a53b9204593b2f5f0972e4dae43b28fe14b20e6a1828ee4514a3ed6be11b75cfd27ef5c90fa8ca1b3dd7a77e4178b623be801f3254ba8eda6c94dec5ede7d8a70d58032cb1dde1f30c97a2db1e168864c47c17e9e54a762883c6dc2cb0d8714a487d5152305fe2854816d968efd2c03917f9ad5064f2ec0a5779bfc564ccc26e972d8ba3e66162c4578e3c83c6bccd21a026e8067d734c85b9fa7940a580e4323b6ad45892e7ec2460f695aba985ff3f75aaf481175e74e552b8ed623dc527ebf42803d26fef14827f9d319d5f13e1bcedf4db58fd47787378064712365934bc44ead224b40f9b06093aada4ac5528163e9dff5ad0ea338b89d31f7f14de0a5b7b280bb0a4b6d0373820ac155b104929711238ca6854e844108dd781c03585974b323a2c49899d7c1a50355909cb1178671a53854272f72ed9641ec77464f012e135614629759560bcce0910f9bc9adb8a0be7ad7b43c8f6c4cdcff227c99e8a2a56364bd532bfd16585026b6b3430708c3d4e25e224faf28b332554c563a5e41719986125fc3feb891dcb3dde51cd9a11a1d1515b82ae0a64109f488db8c249b08639d2df4135eff384104d874e7955448af94c93cc5df9c1b3a4a770d33e778954cd97a1f3876dd33ecbcaa432a12fd7cfe8a840b69b73bf500c0299e49073fc1386d6797f52ec646da8f2db8c66e6a2aef8da62de0a46a0fd34691bf140e990117a637589d84ac3e23b0c1ec37feba116564858732e8fe06edd6e55b1a4aac2f1a341bdf38c749641c52832bb8468c92fd4419470abea2af022095d86ca8c9d580250fee44abd55a38bfeea4f17844579dccf0240678f716a9ec4db222444a48e18a942e0afda4bf9ee40a98f32ac310141134dcf8f6f3cf89258ee7084edecbf63c26f8d6a675fdb4990da716cd21146dad8c0850417d69645eaa8ddfcf959912b67da4f2075c87a546b7f31a32de7dda8fe7be28e8b8986b66ce056c76b08232b3e0d28ffb31c3c29b684422ddd2d91472fef8d3cd1c4455b332f27ca3d8f8b86817a00c7f52586d3dbe786adfb3c749417be42173331604cf4be96fc01d4e1a8b7f1b481ebb7807239a21d1f51e4cc9224a014ef3adc48b07ea273b5ab345bfc44e83c7466541d1addb3197a34b4a145f863b59afaa7ceb89b88b0c2b3eff741e108e5550763d6149993d0b2af7829626d95176e9dcbbbf55fe1bca538923738dfe50a3ed5b24e5f8abba9bba41d895e6e409bc037227dbed1bee9246869c7787f59c55c13456f881e4b8215a0ba52b3486162dba576b440979eceb6ba7133fdbd8e23c490d83992a1c7053591bc5af6d6eae58bb589c87ec37a80979826e47d93d5e163fcfc3802856ed75a489bdde565e36b6d494a2c8a999f5463828549aef98cc5400389e76a902eb8ec89a7d5e213c2fb05310ffba152d18fb5d8fc86164cd320541372fc15109eabad3587f2a208bbafcbf7ed78158b0e6a4300aaa680cead222ef8ed397c2a49f821b25afc2166b2468459a1a95db7d77f63912fc39b3a14b91e9c0a289b0b8ba3e091c97256eddd52028414ed6afcdf4ebac15d498bf4a05968427e81aa02e2bd437b474f52818d47b9708d9600c0b6a72dcf67b66e9d1a53f042ba48c207a7d4bd640d0589557787bea3b5a17ed13c434c2299da8609f713472eab1a7fea4313dfb25614bc45b21ab58a6371ea822fcc07155fd03aba118fd8eb09253ed0cd400fb8558eb62db55a296f74c7aff07ea8a25acb0dd1016ae2ab821ea0267921e959016cd9ef4bf1484af2387c7b75637dca9ef8f43d0d3587fbab1896b11bd30b53560bbdfa9975812a57fe575abcf07d91baf7221fe05485e75710275a7156f0155448b6bac742a1d09c04deb041d77c13dce8ecdbb23e9b4c0da7670b19a2ad4a34910383079042fbab4d789f025f6a7065e63af6c1f0682b7adbbbb5906c241eb8502177c8ebdb083665c2757a2e8fa789e74d964713e2ba40698bc1b6ed02ef4bcb5af4c769ba7de0a8b966a3d3a9eedff180e041ec04ee37e9629b928e9b4ee0db6440480a22af892e588a4d543dc15b321d506828d3f9a436c1196d2efb5893dc2d01d93c7a0790979ec24ac220c70d74d47176fbf7149ad1b6dc3f055d5fa445c6dbae5a8a716ad002455d673c5a02969179966f5c9edffed27001191e80bd1034268a1eed8e77697fa11e312c5d537acf3f6f960ee6fd0bdf8d319e74144f892c7023a7250064fb5bfe0e3de3fc4e4ad2c91a7006d12a0cc032b4b62b91d36aee451932620df7871d4dd9e4cff52f37d8687f29ba5068c4ba07b97c57f7fe0405cb6a888b4a01ec30f583c4c2d10061587b1de8a3e681b6d6d4c983cd0e5e00859413c9755a938d6a604a935a1fdf192907178018c2039d2a67ab37f02f021b24fe519b564b55f31bd56ebb9b39893b2265d619efef75a02e183250c5ba4fbe9ad28223e59b1b50e5d7fdd89bcd3bc130e8b6cebec4b22f26b9a4c664a21ff3810f437078ff6db018ace1b84e42596cb0716fdb0cf358f0682a6565aacbfd2cda6fa27c5606f315a52ba34500699242e3aca5d1b9a11288ad0a19bf04b6a469a7c43dc0fa274b72e098141586e53398434b3e78a4bc87c4ef17cd0dfb259841e175f14db5ce08a7dde8928a8b7d164a8c62ba9dcccaee07398378ff14f68c97248b821f51e543922d32c9b21b9162a5c8c723282e63d6e853709e53642c780fc3267e84712a4faa82e11f179ee4e1196c1a8f9fa52c13cff5b304471233d5dd44d5e9b2ea7c16f0b890aaeac3e451c0e785d94bb808b64ccd6b52ddc52a319e2a5a366c7f5b7378eaac32dd77d847971e3f4711125744f2d5fc7322df85f20e254d1321469e14844e30d9e034ffdf5c942034c44312b446b7325b16af56876f9523a62eff2fa5da7fe1cc9d92db5b0021730b722f84bce70b643e9e19770f381f243d4fe81adadaa4ce90cb3286d3d12eb2b973cf4271c997db492ba480299b15cea3e97f7991b819eff4c659a723adbfa4902d6e8d28b0f207ed10eb582694e70e90e82db9e7bedc11138a59c36f781381484d7b3ba22e23011653d4f3ebe684cbcc4ad0db966338b4f23a9d55802573f0995cf30212e47720c17a1acb03b7927ca8aaf621ce9053809bddc0451034420cdfb7fd5e12db11479094390b6c40a3f0608f44702ed5d1406a7641f366ceb469d805496ba83a987404d2ab7a3d00e515f6b4f9acc53705edfc6fc4442e6a7b8041be3d7e3e314cc9ecfd35172f0c1cec9a1d42c6d7a364c92f04f40eb5a922ddc32fea7cb5b24bf2f6d35d4679412e47ea08247c9dbce5fa1917941ca4accb1578a5e16396a20bd7416f01cdfc07f7f774d5dea25a76b77b532f9744ddc03c40e10e839e3a57d4aa227a3a89c034de838aba4c29fdf1359f3f489b8a8ba3da7299b7303debb78234252f93431ac29c470292515b787b2def68e75d46cf799d954c625461f0e272594830768b09aff27d09ec8aefa85ddaf7150515258c0c71a971ab86328b49224acaaf9eb09d3467ea05489e02fb68a38e733a40ea5a852887c5a7664518bb32c7347936282668025198a117839a45a4f6f0b566b2699779f521e4a28c266a278c0e20892c48598ceb7e74948d4ebc3fa71dae842903322801d95d11d6f2f4f363a392c2d2466fd3931709e513264ed319f4b7f4899bf1fd9ab4fdd503c939db4302d4a5c4a176592de1541c7f89026026c4453b35b19fbed0f74f25f0c94f4225ea408bedc8a821b07fefa267871c746db0bf69465e1ed292b88ad46f298b8921344b30d25637a162864779d71defdd6bd24be690135c7e45c8310e6e9a50e692be3dc45a8a34f41f933475d380c72ac00872e11941f00fe671f37e56abbfdf9fb7b6f01e3688b108c21ee400c304865d5c0a643528477b3235e11df2ffc43e367fa5ddecb02982a3717ffaf52b50ab79ad46f2a36aeb5164168d89d6d2a330a363acf9c8d59ae245d1ede55ecec6b44c2d0af856c611174961998105731e2e2fb1543b6f918b2f58b454d81477f248881ad52cf0607b97bfd6306e30fee0907fc528a9ad9d5f4780bec95b4dc33aed16a6ece1c4645462e70172304c6eb453ea3ef4c6290312c714ca50aad719134c62c33e8976859817b92cd3acaa1d48ef613365a0895a4f8aef45b1e06f5fd7b1108c9d5dfc9e73b309110a3d46e3f3f409c6bdf193610da1b5e5a8928365fa57e026524083516300b6300999b544e7e5291b3417b0330efea01835bb0b109c40316bb2f8a66ca4967a7d8ad7494fbe9d5237c445018dba1194ac057ad451585799bbb521b95c87cd03af9f41ea4f8d06c452bb16a27970b50d675cebcdd6dbe37fe3a8fadb8ca6e08c3ad08cdc65431dbc210297a0be224d415f5e3b1285a65185503415d36508d684cc3f3940a342c4966ecd90f8339f883cef6666ea0b125a5b8a91293a3193e234c388d30dc320c0f36f9ccb1e8535979fef775b6891055aefa3dcb86eaed460371a8de23384bfed4ef862229aca3cd26de5a31ba7ac96137a22eb893d4065135feacdf11ebc171cb62073912cd4f71fa17d7ab2e3d5dbb53ac17ba722d11bed2fbff7a7aa3ba8675fb6c911289c8e1e0190dab7acec03e1f6cac4569d0de9ef23439e37db5ef1fa34eb5dd863d08f8dd23cf040792b44b0586d90cde31921ef3d6d7e81117d0d2f511d2bb9dafd3efaea5e277cafe5753158bbe2e018c1dcf1a6765c8c762a6aac1a4e75c3282d7f86a796beb1a6a0d8e85f8b4bd94600de0f3d57f9d6b6025916525c55588a18203d75153ad43e823132168ad208833ee39060f1baacf944e5dd2c4006014bb5f62a895ab1d1a4cc84e65005026485a01b2dce1034d4dbe7dfa2c9143cb77e8632a05bb0efa3200c07e8d061db4e1eb45a48235879d74725d47244e330ee4bc3cbb4210ad18abf470a34e20c9d717f2230df84867d98cf63cc6ee48b7b5e5e87e28448a13793116bedfde7510727fe8069bbb412255e6f66f95523e92f71afe93163fe358e5ddddecbca815350c7453cf231491e4c1ac270f19cab2520660249b55375ccc5c1d7a85ac7811eaae0782649462c8d28f4f307b5bd4e77bbd5e378bb249f7dac0515d0ed58bb74e3a1c723323422c5a17f3141c18a07f7bd119f00fe1e7520ca58217597d6744dc925b6f1619f7936d3e5f1a01ad220bbc1f73d1290452a25c09172759ed7a653ad773d3929d25578a8ed47118cfd86cc11ab0759678696b330902a9a77ee080c10a632283bd2cd465c90f2c323314bae8522c42f38ca1ed74c850f359e876dd9662ac1c612a5e6d28badacdd3e7ccab27d467ced702eed9a209a4aa8d2ccbdd7ad1a097bde401d22c7c980ddb5244f0df446661f703dc91750899a2544bda3be5da578b90c89edf8bca4a9275401be08477a99ccdd1bf60b85d65ac0e3399dc9031c125862d260b46663715e9e469a3fa5799223d38a8392014b7e8f38f65ac23a6606485dac9352b1c3a967ecfcfafa24f4294eab78fb61f3912b205e6423d8dbc30fda0919d6d1b961c6a21d15f67e126851a023ef3b02d2269b53e6742574e0dd28911c4270eee32351c3053727762a4c35bdef3eb366d3d5d986e7ad5b5ad35b9eff7ab899e649e6c57df7bce37ec7a43826f64565192d542316714404faafb3e19038a96e1c76e1fcd8769a6e8e64fb265490ea3a8f678769b6f4f86e944f81c5cd0c825b1524504e4f40eac56d0f6358f3ec6e35a242f395b97d0a0d69f26e5125e271753d6efde1a3466a38a24d067a5e48d38cbb71d3fe6cb018c43011f47174e9efcac21b4fa25a6f9bf6504cdf44b63d7e99c914ffed35db59ca36e6ceb4a68eb261ccf196058530d4fb79d2db4eea65c2ab57eae564b76760bb84291ed5a64bc72e57b905254f57d69c7073a3ce08be92785f3d939e907ef76e1ba84baa2507cfe5ba8cd44347eb00870cdfde7cbca6778c946fc7971aff1dba093f7cf22d420b9ac0434fbf89c0520d09945b2695cb55ecc6447870a645945175a22d1313c6a1531f44953384043c4d2feee8496a63c40f45b6e8f8d812d171d7d5fcfa53b5afd4e6fb3bb24e1fa872624c757dd9b91aafcd70bcbd4d0a628153c1bb589d3869ca2b70efe75896387108f46591af4cb39a4d91b79101368b90f330a9f3faf94bd8f67291c335cfbe15383fcbd25dad4877807304e90b93c99d5ae1706815bd2897f1b5e695ad95920fbfd7d97392803efc9422bb08c4ac5edf4bd9d5db6d21121e18250f37b8901b1b6e074b176c9cb7e21b03f51b13401f83c963092a8a0ba8a467c2bf15fa6629836f8d212cac8b20db73b555d43ec3ee2747fa00df15f0bf2e52a65da347caec155484aa14cbd5a5d669fd6eaa2811f1a866ffe30d24a3f71f530f28b041db37053e902f731c36b81ee33e61114656c7eb8bae784eee54d12fe5d1cf325dc958dbccd619e335986c8038dfd10fd58b2fda5e5f2b9f0353a294081395eb9feb93e46464b2714cde5c6a44a1e52ffe64df2b070ec5e2b8b784f3541a12de1c033358cd61bab073e46566ab2fded31c5247bcf76b501918bef6b0d9ffc8b7b20f86f71a251f8bb9d1e106f96ace505700c27d1218c0ae0145173f94ed3fce3d83e0e7edf3ee2096ae0de096f091d820184d955f86d1b007854e360375168e2d2d43215f058e366637bae70ccf26f5c24f5d1285bde5d9d875be64f4331677ef11c3c47b2deddf0d7342b737181ade90924cff4bda01929bcd0effef126b16eede9ddbac57ae2e52030003fef6632b6b33ef3aab4e3cba52a2bdde22214d3038845b875a4d1ab337a365235d1e9d8e869f2a06d0ffcc0d1fe05442a21677bf321a0311f8575239bacf25bd526c28db7f7f9890f4176104fd9a04c470d715d3fe4ea3ebd954b307d40334282d5f1ff69f755da0b72a6727449d4fc782b107874052143027fc487bc20e9eb5dc60d82b9dddbd8e99b9dd1d7e1e13fcf3ba87694416246e5f7685030c537d689349bb3767926bcbfddee2c77cbc91be71707cce31831402a711cd1bca3621f20c08d21ed33968d9be7f8f1dcea83e85cabb3e782147445226f9f034cc7a4632dcf43e600518f436cfce631c5d17325a346e6be4e1afc412e04cba7ee57c20ed3cbda3084a111fad7c2f79519ee2cf76dbedc43ba6409c6fa753c360034de6803141fef592cc294bb603af276304388562621a854d5a4023eb5bcf9243dd71b557e50dedb9b256b12a3db21ffe042fd9f085372e75a00734d96960b4b68339f16712f18df874046d416d634fd40b5a5e3800b39075560ce0f9f349fd370d0d4b57e64fadefddf84565078525a6318f0c0e03479d6987114c48f65eb803461e871f78ad2462cba3a83c323f8c64a4cc36989e5c5dc41f38cf852b1b1a11465ce65f6f4bc494f8bd05bdebda919f990f50aa38c6e9b39eb4e15936261558fba8850b08f5b33dc8c9540ab6e06d325ea321ef82b8973b8c15e126e06dda702cb3f458a99f48c4ffd4c463c797487c7bdbfa4d83f3f929197d34b9453ecd2f1ab2641dc76c787e9ed7f56b2a83d6909c357887c91a8da0fc115d496027833ac3caf506e3c66c2e8da8b517ae1a797fa94f3a1735d2bc08787449dd2200205af31d174deb0f19eceee9d6c870608cc3852c442b292884d959482d4529800a640c52173c5963e534844cb08879dc44e62ee954391defdaf771aa2521ae781d1fed20f1a9c580078795cb328b84cca0e5fbb0533f720033929778ad6213f75c46e6dd73ae3e41d5d9be962db3b5bedd116cae35fe41a34a1607aeaf1683d72c897d7d6adfbfdebf2ab3311e2e01f2618795ba6b4bb186ba022cb8915fa294a578167bd45fea4d4206b4a1c9278c82891fea8928df850c0a371cc806e1b616c57caa06905c6f1e0a5ec3d70d4d289515d0454b816c589bc9fe177a7221d7ef4ed5fb400961f52848aee0c553c8a35ad9053930aaf86a7eb75c16376e31995f840390789df1e70bcd0a43c168220ea38c2e96043481f0ddcc0747def9dacba656084c6bf119254b0a4ae8ff36d1aa87539a105ac00541affdabdcd63e9352c4632c6952af2375666bb682f101e7329d890268fc300dad2eef2e59e4e5c5bf4743aecc8a584cb82f632aabb50a6710d4e428320fbaa78a99734dbe01ecbebdb87f91ce8a8dcd2bd2406254751be3e10d2b061f37f7ce7742896e59d878740894a2717cca66e1434a9facbfe3e79d8c360d0b30024229de6a0787d5a603ad4efd20e809e250dc65e093f1a30ef67cf9fd70e33e7f970a6da06847c401da15f013f68fb6eccb9c8c84c4c05233dca6685b8a86818435c00694cda137b1e038a4e82029737b422e6154a9aa1a6029c39b998ba51f6d3b8df055e7c2afdba1a4c264a9f66cd25f770f56c5a9ce9eccaf86a4400cc543cc887b147746c09545a23ff9f66d3f1567054592a395cc09a5533a7d47e521726ed7900deff9b98ddd339774b08950a0d16a426efbb4328b8396fa992abe1582c3e37a1158bb6c31f055aa624be5b2ed508a6165a63a7a0a9bae96b27ae2e073103c89d990861fce61cd3cef7410631b325bf9b0879aedbaf8a6c43769235d28237205d72e6be59e9f049fb9337440471e22891c56a94b8f6322f74c0f099e37d665b4dd35a61d14a5771d735164127ba749129dec3e015afc2f1315154788a4a5841c297bf379d121e26c6df7d5e423ce24b75f6594b0c02674e5fa8f5ba6667a494f67e98b06c07e547cbb4b73d7c6a1ec8b5e7af147619dde9a72191985eb2e72ce24ea172ec57614d0548712d508c96b9a180c346c927749e98349cbf8de42b9330dcc3a9219f196eb90b4aacea99448d966e4e19f144d22c9bbfdf64e944daf86a4dfd862e9a46ee2d55bcce25ece2dd1e64fd0732835a6411991046beafe09ac8f675382c832496efdf5d9a1263dff87cc4e3d7c1ac0d6b62fe119aa83f0da07d9cf7e5253c51add35eacac85dec814e0c0404d2e440c2147f846eb771d8d74e72e5c08b04de2ba0a30e1c861df91eb6482a97667df893411f090572d11ea4bb0b54a7b4e8c7b342e28fbc4db11a00552e9c6482a3d4466c91ea3213648005e501ed11bd79e78ceeff46f50a64cf2cd15108b940abba926ee985c767ff8b775238d01bec31b27266b204f110946fd6a479155837ab720da4a9f569f7ce02f56950b4dffc0f0ed6d4698bd0c13f42b4cd9006213fd5b8de7c258c86543149b3d4defae2eb46890eef8ea036ee1794913339546e72ee735b5006cf1b6dc727687e5a589e51857a7b905862973be9f05dade55baa3538d34ee56462b7875816c078f6f6310d5df35b383d0ea52b4f591d9257ab09be9c85815516dea2ab9a57cb3f20c43b4b011b406c2abd9316d9f2085297441257d7921c4c0937678b94883861dc4637f6353976e1d21b74a9ed5c316128466d4ac63effb43b48206da1753951dd4c24a5f7e86b89935e0b06b4d06a3c3fd467d8f7b0e17ffa3cdd2044aa9d9f48f4964c77ecdd8f37cc8393a3e3a235c32f87fff263e5fccf83314774d38ffafb59bf1dc267d9f1aab266b1cf36710ce248dd906085522ab290570ce5a62101173bab15d24bc2c15146b05e592aaab41b2a28fc49f4b8c6db8de1f075fdf51fdcee20b0b69db7a5542ca76c88a4a38073be3ad8b11173b479d0c6d07d1a5f4335e7f0402c31409b603057fb46e2216580c807a5aeca136bfdf902d6297d7d855cad8a4f3edb872fb5c9124fc38836d090b48575de4aec7b85ed4c8368b43064d1038e141dbebb3bff65af02c128cc273da28f08e4270e01ebcf2000eaa408f054d0d3fce367d793a6799da9af4f776570cff384a1bf9586f811713182c26b518371f213517ce0584de13d79519ef95436c3b77054ce630020dee86847aea32999196600e378cf4da030952650f193001933145e7c66ef6c771dc3fdefbaca1c465134b790aa170ee2ca700bc10128bb4440c2be4e7f9b5c541123824df66f3c853dc04fa346c6156bfec381d2ba99d3eae151c858b3af76757a5adf9375f238ed0f72287e129020c04b080137959ffd221ea6632f96df7ca4bd5658460c0df652ae65fd57d3ddaae9e2e75d1e1fce47dbd59bd094002953b44e23c62daf241bfd4bb6e07ca8eed9f8f2b62a79ade1fc0afbfebc8b49ccea753b4deef538ecd6a56ed99345497b254b1c480f45b1a5b0cb3e30a37bd4a9420db31de7cabc318b468f55f6c277b96000daa9eec1c9d2e9c2e02148beb35e5cf9a44c974cdf4cb1b9235fa61577ba16bdd7015bb650b83eb51c995775fed310922f56f6161ae076ae79bd1d38164ad36d4c5e3e0b638b66740f9353411d05111b202beea7c1def3abd02d4c353c03399edf31b834630bf14f906a6426f06a1df0816751381fc70db657d8f266051d5fddf36af2af1c3782808de527a283861b10ad5b711193ff5114278967e6d30df04f43b72608adc20a54729ae72a3065e02b2e2bdac717e2c8d945843f8c5d7e3f04f60d3433773163de0e0c0e45f5c6f91ad19f21bc9a0d9a9e887e00bdcacd9b7b465f04b95b99a4b441ad9363ec7b01b55ff9de4c0fcf65fabc4458f663d787d3fecde8d306bc69ef0d074ed6b7c11f48eaac3802d8800ac1eb77149a6c0c01ec4e5aa6e70321568e3b7a3f5a842b6358bb1b0b5efc9c14283eb6396affdc86e3c6b62c255bc1a8cb6fe7c27ca59e52f62973115e1b817cb10711abfe4c42c168922cfca281a32ba21032763adc74c9d1b27a3ac08c8c0114513d24f82d0b015f75cf1456871f5d6ba6a1e29a27dc6c8c427db42f1b5939271f9055b57e946d28fac2de338db3a6664d82289b80106ce9925af966bef12e910c94527bbc8f3c35f39f4d4ded4110641e7f69816c2d3a4d37d96b4ce7aea8e296bf237d81140652a7e4db65a4a1e0f84c2f9d45bb72f042e165f162689bfff9b07533f7bb5abe5342bd95c42905803da41cc1f366f0c90d38f825ba7a6092fdb26da7f14a21e3d4b773e120ba478e78525433e33eb57937c7b8c390268be01f7c5e6b95dce006cf6fa9a57d3ecc4fa40b4f51d7fed4b029464ce6b07fb61ee6b661b0b7d8dda3af460ed2730b48f3e97dba0e64d4286c2da4e25c96c341af979a56b45deb70eaeee6f433a1fb6af864c7622412f9bfa5d4f38abd2699dc70a2ac45038eaf6f88d42353926c3b5015950f457c211582e95c7c1d787532feb0595f9068a006fd30f1d2288307de8799ab0731a91e369dcf8979e4733d6be0a8db030a5213db71a11231f8424bfd3656dd36012f144a91fb1d8d8f713c5e8c35714e7d289754c82295d053358a4d03cce7eab4289ff3f1975143b6e7186dcd06ec7c1bce4e199b64e6524f6fbf0235324e902f37dc923d57a773ee25747c567fa2cef2f8f5cd9ebf721289c27d6ff22310d58cb7a25851b9ec34ea30c53e4d2d0b86615530bd3482bd4d2fdcbf4f934daaf64feb1d2bfb961c5886aadf9e86fea020f1fbc1e74d47ee95b302c0cf8329a70d51f21ecadc6562fe498b35179648b59e728c5a414b902a5b2823fe73c4650606cf07349bae4a5e56dcb14f1544b5dcfd63e088d100204c526c48222c84289c5841d6ee48799bfef216672306233a7a322120ffffbc4d751f694346c31b7dcb97de3c131cd66075c3737f5744975abfebe1540882fdd057cb78b52b9e4cb61963918b7832e2755667439a4f06619328e5fb1056f62b7305e3b9c7d422a2665164ecaea9d8807db02f41f6cf8a11dc70df1f2c2c0853607f1be7c4f954a49e3de37a440184d9c170079ecafce3d84731246ce381c566bbd8018ce1a79b16f89868ec95e3e077ba6a248585ed53a56a4fe2b977fb4ea57f2d555c45602aaa53d9247381a9ccffb87b5754ff6c04a744784018162daee121cfa69d7febcbc0707635aea4e64363ce69a1fff87e1fda9d54b5d173832485aed4ce8c7283ca9f830cbb1da608ab8e257c161852c3cd58a33d32d59fcb075c76c8d08a900c4905c99743655645e4e47dea5501bb5575b6fa59a2f539f89fdaffe030bc5e4cdbd78d91fbad7ef1e8c6fe311db331e7718d20087040031ff8dceb7cbed113ea66e90e6eba55e8a31bd19f61ab7515a7153a637304af88888339a5d5ca11228a733928657a496bc08c0b9b17dff924363d658fca4d61415a417703d191d0ba69d0a0fb74b8a517cad46a882d6e4db649bdaa61b1da5dc15825e6a3a04045236c6e024ca590d23e8e6f10ebf2c8caa944320d01a086247384966391e54650d3d001430106b2d205e4acc36e74d5b4cf89f980a92c9e0e8a272a60a7345de1a75a2b7dc260dbecbcea964374b3d0196ad47801ea6fc86b589c0e19e5cde02b1b7eecd68b1283c801f6085b815d585adca242f95aa583e1fb157a7e616b32a9ea79ec5aa17cbdfeca18f40c5867b1f0311553b0345ab88c5b8c2140a57178297136f85c01d711b881f57c25afba114731e9cff01f6b21e8ac2b00ba379f3cd7fa2dbadea9a418dbae39c0d20e1b2ebe0964090422b67066f60f7dc390b764dace45bee00a2eeec750961d05a6e5b8571cbd5b113325201ed8839f6b863ae37063a917da46ac88094df85f01c1f8de67c032226e214cdbd41a71ab698775a37b9f2b3f1bff74f14207b551fedc634316901858d13153d53bdb6fb7d78f24fde604c604d478101d2c493ee6e23d1bd2b77c644f59bde8c98d81e56f1a4e993e5119a12665676203236c7f874d45df7ea56efddbd30547e3d4b4c3cdbe194ed3f14afa208baa0de408d06f8aa1790280afdbe832c5687597419ea83261c59a580a5743f7fd66fed6cac03b76bfe7a3ca0ce0a212a3cb287df5261c0c9d8365911d88b78a3e4454ee4fbc8fa22ac5f1cd7f70b9afd86a560e34594707f7a2495efbc2941bcaea1ff5faee8d9a1afe38886c00c740058c0fadca4aaad11eb038e611630618cf6e7ff4c47bb5ab4457fee035d3260c759e6c0adfe0b887c33976120514f5480bdcc31acbd993bc069b7bd126138aaa82925620dd20746af1a895301494dbf7c06b3101c6b3cc38d2dbabed12f9cfce1574ca573c5d1d335b24635e746113493ee98ef2d9842b424bc72007cd13a553ca47da7a07e5a19c43f1c19590b8f8eac81ec7e3aa5ce99aaa7fb5276b2247de0f112aeb8d4a4b279ae7c8de4ce4e87a882ff963b5dbb5ac87286306bfd73537b7547f8b0cd37c06a98912fa54197a8d73bd9216ab40c92dd24839e2f505bc43ea4b462814253e4a65a7a60adca0a8a8d55072ea10a67f89a405e6a41c6307fb461c16281a8f7830568085f043c6c06b0103a189d782095dfb01f865273d8c26e4b7943160096ee7e1579e187592f753f7bdd7f19a4641c8ce15ea988e4ccb761143492f3a57015faa34498583fee431872011890e3f2c5556fb81a81f9dc62fda39b0eb0ca25ddd2440e8e146ff14474e14b035bfe632e2cb0ee71914666b4bb5ad250b844bc40085f9908acfab4f83d7e40030e7838a288a2eaf66bb577dc9b66914335c182fcb15cf2439ab5ca27fdf579c58df5da462bf3bdcede7eeced9f6d3ab1dcfac4d66359bd5e3e4ec917ea01ddbf186ed89bce0e79b007c0d4e344cef7b169890036743e2e6aa1e861d7feb5b1add70b9be9bc06784134065f43e56e47e050cd32a35d1bbc728725d7378cc9a9e032ee69fc32f5820e0e913e50605c36f75ea24b497d5a6017290b1abb488fe3e7a5050c0e88e1605de9a5abb20160092944ae0afa03e8c0ffa52259fae8e4dce7b17b0c4227cdcf008e047b68431517dc8fa7678604fe31ad56a486685374f00266c57bddda84aa8c43a25d30872b80f9e95af2a768c1e60453bae6240016b21a869248909da9f0924ffd87fd832bb764912d4f43d181705de8ca1a2a481792d2291507d0e01c8f7f84dc11a50244706d80e9db7a41358f59a99e1dde5fad2927577ee2ca38f5a4b87f83e53074ed75108a64a2b36bcbfe691ff344b6aa842e2d51c34fbc681037d43eea5524eb137cc4b1760128f62595518ade781d8c66c3883a1695957181c938333432ab3addf2bc436a1ddc2349a691303f369ba3277bd779b69fcf2f6db9bf08fba450fee27ac12e800dc21b57e3b681767bc05af63e3b2903f8df4f6cd2973253b84377e924df7477b7d3e89ea771f8422407c6193a7e819faf6e66188049757ac3a97659e1278ee4549ca724eee55e28bb5a027f749dd4311b9e6da889c94181e1c3431f4ad43c088f5d01cf55cad087c58fd6cd69b52140a47bc48775bdf5f0abd664751a9f468140a8f17c88c87bf9cdfc1086d5f5454c9c5b4715c34c6f70d6cdd966c96793d79e4046dabb17fde85ba580ca714daceded003b80f3572936d429991a21d4aacfc0c87f12de11aa686ce93603fff754be4b09a9c6d14635b05abee7f5da033b5f7e8319a952c5cec3ada312f4fa9de7ed93cbb8d1065fe56cc60ab015afad3231e8fa36ed37e3cb8652a2d93c0ebd9bb36968b52d151c637f66e786c83189d35ee22f7c9e2ba93fbb7cd96c93204b2def838c562966fbd74b2c55cc709e0a701bfe67dd13e00ac20dd62b296b114d33b3a75daa8ec924eb0a2e6248be7888749d9051741b788d4555d762fc3e89e78f101041884f5c8da31cb815c26120e9cc6a4158e1b7152d7962e31bf216d2345d733ba038ba4694d64b206b5ba97dfe3dfeaeec8aea758c0e9d6f40284d97bed04e90b573c7f47a39bb0b36d440bb4f50709f066593a4dd6fab150233feb24f0474ea980b6257280b10375a33ab73859e48662b6ff33435ea459b3490079f4613404724d821168dbce25f73c1724e868ea72d3539045540b29d96f4dde499fcacd6aa72038b2de70c54a4f85accd48e45c2f9c103420584df5cce6985ac51894cd6aeb1ef6afc000fab4a421efb44b5ab104801ff62d2b10c45333ab6e5e676688330075341e1667b2ae19cbe1ab249b717c33b5018c0f3fb3b829e13a25355a0445b22e52096947d2f4aab7fddddbc3d549dcb427f9815fdf5b7ca35a423f4a7838b82cb395d9c1edbbec9aafc370477de6fe288c797f1e0a3f61d947c28f1a32365367b94370a559373ad3f8163b9d2ae665279ecd52b044ef2fbbb9a4eb5f6c501497e6a353fe9ccf79c09c54170343b7df7203d957ea54d3313c057a71b952ca13cc0544eb4dcbe9353d4aa5e8371a12183c96877187cf77f5fa074534ef70d2a8b9100c544814f2e1f7147d0e9c745a8484748e44d0351c4ecf7ee7d52a5f49a30a69a7f8a779ea3b4ff2ed27f11afbae8cafec7297daa3e5e9702f42c86b147cdab0eed289207f5bd6604e12edefbcbb4b7ef231e241519ce5d6d7e394bb7508d22b15b86262f79aaa9229d866fd87ef2b37e9dd9278929c975df8e3d761012a12a4fe700b3c0ef462f4df24e4d82e8b2c6b812f2cf5798b37abf63bd1e8509e3e4362139489e85ee0a41c1efede1951bf67c1e831e9b31bc339af2ef9c493a74f0864275b3686cbdd402bc07cee192ab63d3a0bbe47891a62c3c17c3be31b80041d38962fbc888d25f556bb1724f4d9a88d1290ffefb7516664b4f265ad97536a55a7b7a388e7a91f887bb568f6420ccafa45a43e2e04cc98e1a57335991e4c022594f547f09ac6ffd69de5d7e3c4a69af4bb04c88a330bba684ac27608d1214ddcd2304ddff297291cc18a55ea0fa7f752a8846a7057900ca06b36a941250dbf7332354e2e955d4521509e408c7be37ce2f937b9cb1a969ec43c98da45fac913d41e74e2749fdb30fd68fbcaf7d5c5261e40fc0ab87556b877292d47743b504f150e98319ac1accf52ce1a45f8129e08ef555139c237f0bff5e4a214062b1c23793fc5043a53bf931150fefad07848466efbe5bee8010980d8d2f5e88eed546aae5f3e2f29dcb6e7133138bbb8850328fd2830bdbddc0c3a53fb347aa9be88600e4c2f4fb882729a49ec1bf18ce09cb5b70d56ab8ca4577153b5406815a13524e0853cafcc17b27b5fdc025f033ba7f5792c5e3b355cb64ba6246d795bb79dd6465ac64a42f82fae44f7199cbfcbf635fb0e70a0202400b98b8d29108a7d76eb7cec79b7df2e0be5acdbddbb171f021bdd2f569c763a65a218ebcdd84143ad2f2f34559b654e3130e50c2dacbd9c6ec8c07be3d8b553c587d5298bcf3331ad7af2983593e03542f5071e76d6965936ef7a179cf6e923506fe25c1d2daa7efd71ea4de648adb0a55d88ad02323f2713c3256076a283e0668a54af4186b2f775e1e2093e9bc49a089cec797a91123aee8972c3940cd56f3dbf6fce90c18aa654883339835cd1c82068f89556122871ddadb2f815f88e1e3564ed5a06bcd2af954000bdd8a1cb140ffdc78659e01f8a00ab4c3c0b1b3e873fda9f70ca1dad4075ea5462499c68e7fa807dcfbfe24b39740ffe78548bbb93861841f9d0b33b6745a7b34ea663c4a36ffa904800042c98f5243f699e73d384511c7251bc3852f848874356e23661585cbb874550ca2419eee13544669423fbb0db1889dd614b08f962226ea9d8fba066e99bb5a617871c4522ac39fb2b30d1439428f87e36d16f2d52da560daba788b5358918f538370f70bf92b2bc0633b342b52a0e7315f1be14c810b3e31ba2f9743f79e0345635ffb1cfba729e61de17cae434d6e2cd73a8fd5498fa70ec33037f6c3dc3f7d67037195156eda952428a21119e79c55dc18f933fec600696cfed1500d39515ca567b79c828dc29c5550df4ee9957e9c79a0d1a4c9e11c1d71f339ea85df6f0b68018d272a62de597c69b61bd67094f06e5999b5bbb513abc69a2c5a8d3e5f4ca3a418741f0b5c6fb98d6a8689921bebcfc0e5dd925c1e2df1e0bc4adbe44ddb86ad1ab9fdc26afc63dcf58329549db3ebef064b812b003334ea2ad72482d6b57f235bd803a76f1e1385fb605b57b5a93629246c235be934aafd4cdf842ac0c904ab2c745af957d52f8937357612ae0e0b641c1aa9906e5c1a03915d704ea84d288b518358299f7933fca454879ab022f708f3b0a85a7abc6fb2c09d0cd8fe8e7efe473cbdc5179b99b0a27dc97d84b94c8f4155591e663de7639cdf5252f4fcd4e05492468dcc0ba736e006ef05d22413adf73f6af8e114169941a1c17caf91f3b339679aa69caf61a44b948d7d07e4db1cef5c0fadcafa430dbe417a12e85e60fbc06cb96a3732e708475506c0b22d46b70b87d3f6c4787b22ab2fe6b135681ec9a7ded21dda83f143471557700df8d88afc47e0300966c82864ba49dd077d5212ec78c62a6488c63779c107276cd3d6f0b20a783c51c5b27b55adbd2801ac6756f981eb1902fdc9eb6fc73683a950a5f9df282fb3b395ca2917080aa9c75b05896f4935e3d4cfe682c1f5c251a056fb77e83db149c0923d040f1043934a6a7594383e5bb3e0a8eb7942cd1ccf39bebc88b1143421def4ab3950d2796209cf79e39b7a390690fd008ad8479dcba7b4f7f1259bb6bb6b9f4d8ca3908da70c9ef7a2ba3f4270bedc5d17da97e11e3988416fdaa46eb0e49d2e2a8d3d4d55a9261b0c689a728fe1f1f5c4a5526a4aecb6fe746d45c10d0b0806e0f7cc3cd6f11c1371faaa861da03358f66d286e79980e6a31a527c7c388722be4fcff058ae239af0b48df4dbe2513291d0602be4ce0e78b4b6a78a35d00ff5fd60a6668503188a2e66c6667ea504734f38a8958022ad8fc34be2bac8239a33239f9750ff6980e08795f8352be708f9a532764ab019f6de4a102d1a86ac1552a16c1616a5500d84b6aff9070311a8df127f7657fb09b4d286e872d002c5f71bc58b39936f6a61ab7154756ce429d1cae3ec60fd576b22cefa7ed0a8f2c6f4a89d7547572de3baaa9a705312d794d0af79f7faf14439cecfd4528b66e651633dd27cd05953b6fe5c4578a5ad1343c46fadb4a1dae5b698a49d37d8506509f5f42c04db7ba4b8b58d3acbf368edd563e6c14ca7dc68307bfbef1ceee9d3183c1f02202ac8c9feba3437333c0ec5d73ef298c0245cbce2ccdbc5e63f3150bdb1f6acfdbf8b4fa570ab5ecf3224c1291ca1f74f8a4e2795779a17941dab1b2b61190ef87bde7e25dc5f0bfc261ac6dc10b4ad610fa86655fb75bfb43c788495b845b28413622d47344aa469d44212ab303909aac13f2e46f5583e694941bef375bd6c2143aab81b70952b97d8abf6eb8312502af1f9d3849c2b9ef95f62ff60c32145d6313b36478743974b7210b9813a4a2a157383963f55d26e72036b3f23130a84915bc57e3de9579f48b4474d5d1cc05520b9764549f5ecd936df574df9d67edc37bcbf46903d01ff7e630822d6532ab2fb1d53a7c0d16f85c999a59a023c156d24b5ed7d907a4c25f86779b81282ad734cc1a3fa1955bd4c629cfea6517c2389e086c4e8b71dc4ea0dbb031f47839b38a02c09c45ed83957664dfeb1e3e990292c8b648153d371181be5df1245c13f968b3ed4829e2cb56b8e2ba350eed642c0172da3c1e1fcfce24dd21457d06336827b98a6eb2534369a0425503c516b850a83fe92de255798117abcac62f30602ec3c1c80181a513e16e39817c302b3d7d6677f91aa10eaf7f317807f501f62562d96d0b1fe115e227093fc5be70340c32ea8afa89c2ac8be35f61f603f332396a003d3f6de791614fd82b22f3deb9359590829a5efc45afbef6636ca75e8cb1335bb8af72258a70760e672476529b5b0ee47f3d86718b5f374c0da5aab2b8f918e179bd8f03f7e8d80f1e52698c932ec2749de385c0bb2e193dfc9f76f7b416133f40e530952fb279c3463904ee17c119be303d7848f67b968844aa0bf598dc402e9eaa4f6894e98420f7b4baa3f94b5eb39f17d581f0f2cc4cb66accbb2bbadf2da453e6c0102950d588ef99642154c34ea1a5f8b38ddcaf78f75be155af8bd8928f55e18d7b18dfe1cb468075cc8143f142d479917039036e2e32762374bc6459c8873f8cd7e1ca858fdc9ec0a08327f64727521d2a86239303ee6898f9acdf9734fe42c9538e1cc3827716d32981c9a757204327137dfa219f40cd7a482ad105b590b2313bf89125600383e5529030f9d2f2b4ddd6b38070128aede392cf916485f7fc6d87e07155695b0628e0b853792edaa9d39731bd48a120bb96e762c2b4416dced484aee3986d9c7c8202c32bf49cbf4f42eb9275c5f470e1de2ce6e1df55598509ab255737f5e4b2ba1546d58647fcf5dfe2a4df5ceb12c136d2ebdc89e3f2974ccb816cfaf0804ca1bdcb6a23067d4fa0a538dffa30d9f9007d368fcea692ce1d2cc1ffb0bff141df2ce90f0256e3d3b2755dee088632f8476bd342810a0c3fad7ebf09365aa2ef8377389668db14a369b25d3604669978fcc0923b36cc2ca807442aaa93657639a67a96c583c2604ebc9dadd88f5f9d22a58c4c8cf47a0dc468566776356b746229f50ade1535fcf9fbf99cf7d22c935b31300bd673b9919dca8b94909d61b69886004956b252afe97c2ac4f4c6e4256fd6b2f160849502960aec0d96a441d8cce57669fa434d3fe5105eaf7a7abe67a1f729d77d6d05a665af6e4c4a5404076675bf4db9d5c7dd4fe227f286b0756eec7a1a0985b548f9158c0ab3ea5a8cc2aa6634b00cb668da2cb6b0beb809c6888b2f82f3b36ea9e1db24ab8f91587df40a5ae10fa0205c048e0df39601b9a9d8446f1266c20a060b137b4c0e97e2e814e9cb780774b7fbfeaf84b2ff0c96dd3b79c1844e6aaa973c001e36f6fa9d60cc00319a9483dc09bc456e37ab71ac73864494b1f892734499bf0f86c44e4153e758f1ebf1ee54eac022e010ac6c1d1d08f1f4201d1be83b3a27e82b776222db4c27f63986eead3067eeb2433d8c8bc16c41418cdc1d7b7e488cd1fc5e43ab0e79611cc81b196d76e12e8ea7b6384cd14b63504ea516cb08e8f2c663bd8f90b693449495722fc62aa0f90f58ac3fa97dba1bf8655d3e56d963499cff29672cd6dff01499698f3f477eeb75c469741c2557276e2afa4144b490c44da53375dba0a6394bbf5bd0fe24e380bd77749b6b22ae7b06b79dd8584ab419c49a3109f8d29172630d99f482fa488cd28e0694f3fc13efe781eb9d8bcb87efad016a14cee987086eaa6c42a38d0becffa8baab3326dd58c81a73f110202498e333391dfd4990aa6055c46e47a1cb484565416af2a64dfe87f81270155e7fdbcf3dd693422161afcf6f77eb01ff0ba7a048f8db3b8f3afb772af5adeabc06aceee430bd520b6cd20b27e3f5d12f9302b25ccaf88dae804936ba9c099bcfa5c1c979402da67bf7e672a3c23813d23d506eb2e668e622f50b22918f12acb9fbe627e6c271add31e57d3380563b4e80754970c054cc61611c2d59ec9ec44a4ac9e4ca168233b14040369f2f065ef2d452517b2cec49cd221930c3d32b68b0de51110f02032a0fbe9dfd23ad4adef9f48f3364b6cfc35d648ce609a8e478b4dac4121b9b9af275a8c5366cf97e0e04311946f72f0f28e50fbb2e1a0e2bc9e3895f74b16db0801c571def33409bcb9a324baa7deb8ce4276625ad80de2d1f5a82b96468b5874fcc60c958464c598f3c0232dff76c5b680f1fca7de8c47a381cc65615d403e591acf3611eb419f762368c6fba52d3f3111fe2bb8021bd2808abbbde887ccb98fc6d7d2673de4fbbc3f20900c48fe2e7489afd57b2bc756802add7c7b5be7040ed72b630af2a3d9bdfb553b3f5645c0edde8963bbc34c77d0861063ff0e663aa43672d794e67dbcf85212db5e0563201d0f1af8c3e32f0d1f97beb23dfcda64d5d2a77d77adc09f67e0c9777e75673266e829177f9b27a6a9b28dfa07a23d5bf0b2753c2eb448ae822d069ff7d8ccc799b9a036cf14023307385f293eff2981eb3303d98ef8bbb376384c451e86bce955c3562dd29afd8a3333d71dcad7dce87fd53dc43e76c95dccbbf7efb977add9625442c2a5a628449882b3cddff72a677ccb368d0703d54f5e11a1d175c97bda7d770ce0aca4fe2b45ba87c74e0ffeb0fa9936f066cffa769af5a99f3815120292abfca42d034e188cfea9c67702f91541cc91190b4d43e7e4afd003ddccc389e5a9ba14abf680de876c53f7216bee2e421de3f05fe48c8a0100fe66934026624227c639eadcd7f4b1ca402a9fb4dc5c0623d608d55bf38179977a7dcb4d54f7154b51ebf5d3a2b84fc6c360ce4f22249ff933376de2d7d9a0e50465ba863603f140dde55f4cbca49ce6bf4f96270c921163e2e29f8aaeda4010c9b60dcf32445d21de4daf194cd1687827fbd4a6e949837d135c66c058afef942f9a3005f3319f273a6c72c07efdba405aa0d0cb59eb2c672ca4d60bbd190a7c6757c54afbbe04f866879531be7d35f141f95b677e001c05c56de6b567730f2db76c8c3b1c5d05672d8b375ca4f5b15110d106a9d9f07fc7607a0e910af17a1a17e80a74d51a3000a0358f9bc479a9cf7ca12f14d9f0b31c49b646fe69c8991ef83be6d63f21d6ea5826684123f2482fcd7fbf2dd0fc70942e3d91d23ae3d2f7d5d12a3d37e7135e1d388054ba631f75e89069bd9c13a3b2c1c190841fa136f0ead3ade96f6c09eda5bb9cb9ade411799ee969f91e3047bca475ba29cc0aa3a9b36f9c8cd23886ef5288a102bfeb15097ae2a7fc6d787999e31620a238db15ec9127f0deca557070195ec0fa7952fa2808b51ceb412779978fdb81e97f5e82d72b49116c070ea4656e45f38c11197a5038443b96eb52dbab23e9140c5ec3b777b94348ddc34bb5f6cd6af6da760b8a8397f4128e0104953bba06f0a2d9436f59767d1c2f74f718e79758cf49076f2f8a31815788cfb98821c00716b8ddbd4ecd0211ef6bfb93756a04d8b3a57ded863ef61470c2a74e6aa7230fffc0c450c207832420d4911676c9b28a3b7c3f7ab03f28f7adf91ca9a0be21b47e6d7f6140b111406b83606b5921974658a95f0e6dc8d2956e5fa3a7d448579c810c8a8f96faa6a60ebf473ac977b01ce5df020d84d05731a7b3f02b2ba95eeb1bcb835b8174cf116470b08615f869cee5125adbc2643ac065afa635fad23444ace6e5ab425fefcb956b2df75029bd911bd868ea8a071ae9b46696d8939d6a7d39419b85ec74608466a1a06c4fff70a9f73b43a73bd1240c344dd055b9597deed950f6c4ae476061825313b59d737c510557ad1df2d84b00eecf205c150478d5cbf560247902a03a3a571834aa58f6ee3fff488150f660f37df91e91f05f24ba14df3d6eac59a9f244dc9790a9acd386e7998fbbe3434abe183ceefb8b9fb3c44ed047bf8ee6c02b3107ae709f3c56003d314e873694461f7fdf267309a795f423532d54cc4bbd7ef7d713fafbcf1395db2ad6afa90ffcfb0ffdfe3024267db0ae18cfa8c54b350960a63f5340bb174f9196f3814af04490f0443139e95827bbc9d034e793f852a0eb1d24c32ff6e34ef3832957bbab65ee3fd65d58314c137f2579198dc1909fdb103e72ef8f7bc5597515aa4e8351c1f1e74a0697dbd50d45146cd62ff4ea5d0db27bc3c504ba3b699717f8d68f7a0283192db9dd05e4da21a53500d8b88a3caa160195651f7063266c214a44a1473aebdf9f4691a29ef47885c0160984163861b3e0b340f002d321e5731ae6f9b38df40eef94e0a8c432f1fb8e2f97619b70b9025d7a1f8fa67cb7b46ea42461d2c083f4c2b9ff8da719387e7cf9a61242b7d5b39f3e56d94bd2fecbcaff7be19feedd4bc6763b01cdfc3f6abbd01d329ec307b94dc692650e6accf5342c2cc93365b71d65386b78327423d431bef3e1f1302a305aa4d256fcd00b16aaf48aa23917643d2dea04aafb7b5547b673ac2ae5427d30bc3ec2ed93b632f0b0b075e64a89a1a92ad45d9054f2d37408dd3ceecb821ad4a4ff73b0927db5bd39a744c9c0254b9bd09459ce4a4e1454d7ecd58f3e720835f46baae184e8675df5d131774985f765cf6478e9dd300c8a4300de0deeaa77023b3e7022182a65c5408f42e3ddec32c59e4d8df663c960a3ffad22cfde47878a3ca74aad31836e12a68ffce8b5dff6f897c1a6ec1e103b887c0e0ee82e8e2e92aa14b84f92320634d4bc6ddc2e48f111f633119ca3bf789731d1cab23f890ba4c7eaf6a38fcc126b0e00874ff4054b1f17cfb838fe0d1d9b031a69f0e961cc2dde40e383652465c7a68e29fecefe1e74fe6aac30593c1d44dac658f529a1966bfd92856440537c96f146666bf4a3b145aa64d0e55fc95165f00e4f3b452157e474c5846a23b21f4c581967f4521a85efcdfb6327e8e7b265185be636f2a7e2ad2e17a4be153a675755afec6efca95e1af47f80afbec9969ee84536a83121d6e0b690c988632baa6a02a1ae90846b2656b6fbae4ca15970d201eed9aa5ebfb6cb7d63e3a2b9f9ce8386968025a7301eaa82c73be521b469f4c2704346f2c4fb420396ceb04900394e4a592d26bec90ee320c43c3fb98fc219c7712efa0f3e547ca9313c0fb8d746b08c189a224acd16e51cf5d84ca2c41945c5039b1a6799af0f42847bd0b135fde7269fbed3d701cc3908bb04e64cf691299608e72ec733b1ae656a65239d8dfaf8557a30eea67deb5e86e8d14a04899fd6c5a430e732b1282e2aa9ead83ca5dfcd4d9d5335daad5778cef3466bf005fd86118db030111c5443483be65e34c3f559b6c0c75caed2424779b13d5de67a7f60b2320b4f30ca7c8be6a0665ba2f6e997ccf10b690d58237ed6c1b5126c2d37a0dde9be1cecd83c1e670218445fec1195b423daf4b05c2d9def35fec872d79a5a08a391a87efc0ed27e04feeca2d878d4163ab50c245dc5da16a8f537bd563b748f8b780c477f75f14b8006946d5be1fd187d3c34174fd8ce394eb203e6174a443df3a7690770e81b54ff9568d79492e02b6e4ef201c510c7f54a8b9010f578ca646b7e389a4390fbfd9c52c388ded10e9084299b4e710a378ef333061be2d2aa5fb264b1e358a1adf8f32f5da00518d115f0045b8bbb07283c82ff356e87b38c66055fa821fb8eaf1ec2a2a1e51a830f8ae4e6b4561bb7c77d7db3f7442afd7823a8a2e9e9dc00b068ed1b78546e390af17a67735f984a7f326bbb03006095a041d87fd70e02407db58a41e6fbecbfced7ba1d9cca0e980cc52b32065a854d9985e355ed484aaf75a44557ae5cfb155a2029339edd7fd85cd7b0db63481277f6e21fab4dd66ed95f9dd37788d8296d7fd3efadeacdb7dbf5e4d5997732c11e4292584147c7fc2030a8de044cce533122a6893fb4313e04d829a83f5200d80077df0197b3633bbf14dc4e6f2945cafa49fda21d3a360b0c3453fc00c45f9e66f74e381a69e73b8d64cf7061cea621331f17c48775609bb41b8efebdb5cc1762b4df252264683268f00686c8e5df2d05ff3e1171c966b8e165f5dfe2757c8774cef3cbd8e1da4bf71af472c151eedb1be4bee739ffbd8f9f7335f5401e5ed10129ad7f8ed79cc44a9b79a0cbef2bed7922cd6db63a4b59d703e4666c563e0aaa1ebfca9874722aadae9b801fdbeec5eb8a9f1ad9743aeaeb02151af4a0fffe7c5549b44c3afd17eff93e81b1965ae2c86f731fede33d2bb762d4f1042629960d049574eb3025be230acdf28ed2d99de6ace0bb136dd16622aaeb93d94a519cec50ad7897326aa0e542a838d26ac6e5f998239be6ef62cf9b7736b6c2703869791089ec759efbd02e5ffc91f19d738e256bd471d55d88cd7c15a8555a62b5d78debdeea227ed75e3829ae8686419ac369feba2276ebe7113cd5dc3f40fb0fd0bc1d96249bc1a67234d483ea03775fe8db7fc88344cc9528fc9953ac9ee0da2506ed5a5f1b062b66ddcc98b791f918dde26515fa7f15f752f02e0c5ae01ee23fad12f7e3febbf00cbacdd0f586fbfab72153209c471e90bfc5999a9d0e344a81670c2186b00b0b4c775487470c923a9437aef006d0f1cce55ce4a6127bbfdfc6754285ce987e79c3dda8cbf4aa69cb8696c507d07e0798f919122c92fd9da270d118d2617029b9d764ac5fe04d9bd1a547994060682952b9bd906f03087dd36d473e9c31903cca4dd43dff28fb820dd1fc1f696d9fe09bcf7d9bfa8cee81a85616dfd9a77c297c5862a19884bbe0abdba78b3d1d5c5d845ae9660993abb38d0fe3ed7633d0631831f42a89cb91bf34914b736092c2176b35536dc74cc10db825ffc0cce4935061a99c16f8ef83baba672ce36d7f532fca14fc12486ebc26c2b29153a8c7f12640ff8376a31f8201afcd723f73389dfcf016cd1ebeaafdf4fc3f59222b276d5cc385e4336c137950c135c4ac0666918b7cedd64e6046b2dc7d751837d5190cee2f729fa48c8c203832cf56277d0e6820985590ae6af6b557c53d6ba752734853f450535a26acc69afa22054c9e86e865007d14e80a0e5e244bd456bd6991de252e3e1625d56bdb49e5bab69bda395d8e3ce9a31375fe24423391227b531a91d15c1062a0caff594165bc9c1564d7dcb4fec9f24072191aba67a93b6f1e62da13e77f8ccc5d1d1db37e86f35af955522a6f84c0f9ed6c88a4173140bc484cba822b7aecadf0068369cf63a8f303d1cd58e18f9fefbc410da210ae5923975619f7bedd9b4b821223fa7878d9620786dcab8addab09eddd7c39667eb824f8551922a87e86315c46ec9f4a76c54693b5a982ca70e366ff3a844d994c2a0344c4e41571bd26e0feedc0116af52b0e6488954cbbf0cb625787a84dec996a1d3a8fef289b39de5a7a51790c80a5ebe852f70d1e3b78b0cea812c9102fb4538fbb36d4b28c1caf0c898ba223cac7c90152cf51cac5495352e9dfe48423169d0c90776a3bad8e58c6d057469798fbedc3ac8d552ec302920e5667ab402e874d32a07f0f9c4b19a61a478de5134ca60b5d9413125b4d55e30f95d522dae4374a926f85be0a91936e2ba94d4a69fabe1e454f8e5e34c3a1b2f9fc184dce4cc32d39b0a4ccd913bb19fb7ac4c352fbb0ea69797eb86df738900838bfb98c23e21af57f86abecded5eecf382b0dda9b2086f5034c067ac26ceef79591385e97b0feedd0fe25b7447bcec8d21ffb2f435619efd4112d328bff5a1012e78f26726d867d6e62a704e39f6ae21abad411bc5b0d38af81b4b7d8f638f8a5f8a4f387c758965a07511cb528a68cdedc748b521dba44c5cfae0c5e1f8ed2cb62ed1a0425f48de2127cae9fe0aecc46463f8341ea8775d187fc14a10dacc443a142edeb928754b0c04abaf595451798a9850d947f323bf3bbf56120b10d63d2c422d26ae8ba5ec570582cf441a9e5f67c4227e2b7b49004d696f6238a18706bdb28f96f4e35146ed27fa73b3be55d2ee327e24fdb52f2f055ccb4340ec041ebc9eba9d3c567cdb302269f18f319edf36a035ed6e1c63c10462168b513e142669a29cdc8b0635c6c245dcd11c52cc8a63028a1d4545410b50afbb1c34a6a704f06bf9b4ce23a1dd209909ec6f71ad82c253eb6f0fe2eeda6339b6c0f76ad21928448266bc1acb74b1f9891640c6153a09cd352adec8827e30f256fcf831ba856cd1e82bd5aa0f58bda94f4102529f8d5dcdb19eb96d607e18a83b9da202d61c67c05d1c685e70791c1ff1b4a9b0891d3d5a8aa0f405deadfb94daf576365015c89ef5fe7d499995e440274efbe02c31948fbfc2273aae575b9ef2e002a514d36a265e24dbcab51f844c1c8a8468313b85fa4c224e983fc85fd2f5adf83a5c6854fd3a8318ba1e94a85ccc86739e7af9c001c6dfb23248dc723898715e130f407dd264fd4064aff099cda030eeb3e51327de868816c4779c50b726903d4ef35a9fe7fc78bc0bf5f04ead1fb94dad7f2ca3adc1567396b0a8f69ae0683ee98f3404bea81c70dc6f34847335e86a3738966f35ae796ff8d348a0a7eb6e91ed5d6f6abc4d3d162ebf3223284f60c0d86589ce75640c1646abb5bec4b28396fecddda9cc7b596037138fd027c6bffd7d0a01f1efe20bdcc7e9663164d69952da12c52cf677b9fcfcaef30d85ce2b03bcf5f67d90b42defbb11174cc09359c9cca362fbcf9b91d797235f3829fac9224f5c7a6dd0293ca5094f466876a7f84b3ada47936745db5af32594e4f9065110aacc640c812e62388f0435dac54712ab83f462060d03445f951bbec3ea07a695e35a27fc5cbfeb04720b92c96b57859ab8f309dc0bdcdad6a8472c9b6b319896d001c026b7400252e4d897755bf5620ec58885f443eabdd9d3e3a0032fd33d83fc81be192546c1b873818cd7387e1ac7e17df7cfcee38e01e127c95f9de6b26493158e44b18ad226774a7374259927daa733d3a81e33af6655c9ce826a11b90ab3630162315d95d6fca704aa46a670288647bdbe81fad5f066e78a92737ab56ca7a4d8b12796d644fe4a4f574f3f0b2b869de8f5100976db62a0eebabd407867da9ab32c545c76cfc549de472de5541c2a3f96a8ce7cc09a665a970731d2e8e13fa8ac739bab0e1d844831abf2fcdcf89db3618b121da1c313bc55e95d6ea514b03ec7f97ab91eb528b660a80c12dde57d9dddc8639574f527d484be6d31cce2e9f45b2019d4250a6c1db17ceece5db960a5c776f3e8552f95cd176f2de186d82a7bc2d8ee5878eb511990795a8ec85482f0ddfdb469e550e6266b838c35aa39c02aab5df1e35a4ca388384b13c69a5e0d038b5e3f0f21fd63444c3661b1990d707eaa2d93b21656701d2c7b53da01a0902d7186d284052595166563914b1f580324315b58262b891e221d228e7c66d7ae53703d5a8ac680324ddd706fabd6e6be0db15d9ac130983995c5d4a3a04fa0c5a931a71d87abebdf3b681810bf05373992e5fb2fe5cb1d8ce9f5c1f563c793a6289f167c5dd20dbd22b2381e6c545679016c908aaa4a6b87dfd92f52716fcb1adb6595bf1391ea738afa1e194ffc2b532cb00f9f601b5f75224c70be964c727d57a42e3fb6076a4f03375e136a75d7d11b3f1db3610beb21ed61dea38b2fe942477c1538921ddf7b28fcda6486e6738017df0afe2adb49363aa4017461883e95435c62dfff96a3170910ae35819bc71d6b31073292f6afaeae00d4bb2921e7c7d14b8f6d94dc6cb77ce5edb1ad1ba500481d58425ae99a8550d3fd774a2920d96a2ceceda0b005b16c8bd90dcd42b3c13e2287ec1cfaae429a93717c0195b1a7fe62b40a4906abf2b3ef0259a01639aabd8443ff723948edbbd4b1548d293dc4ee5faa2f8b67fecf55421ea0436342fd1a80c87db276cacfb3f3868832c68f6989ea502ebf16cf97090b62fc7fecd3779994d40b93f049671ea0be90d6540f385a9146069b6c6b077d0ff912e0acf0f7c1d0aa5a5e98bbf285becdf94521a85875016c503c69d5fb2650547262e57464df5c47f33e1200628306e355908dd84d953db8f690b69f6fb69c88c39d87a233a07e5e968a436da07a5851e7ef30e1bbdeb1e2ef4008348e9d421a1433cd4a0714d6b0ea842c0adde75a3e2094d97a05a44cac292488bfe6e0742feceda9bfd3a6bde69fccec824b911cc6a064ee3a12fd7c3eb7bcba33d98aa547bf523a4853cefeefb2b95476b55c9e4cb10086b4fb4cea5dafab23078b50244aa0f7009800332ffb89799ee11625b03661cd6465f590c35ddd9147dff53c9c420b20f7bd29672e0c2ba704eb2e6e5aa35150b9265312b5ab664b1b16bfcc23e3f61bbc2092ea5200509008804ebe8510f8df70d3354df988a0b09d6492ec4d17adf4914fcbe866159cf23c84bbdf069ba6c0e20c47d8ece9736dafb9ca45ce8aedfb444865c7e47c1f4f69c3b5bcb03bea78055b29af6f0580771018ab5f0631f6ea19018dbd0b6ebfb50965297145e3294cd0f005170c0ec5069ba4e6e02c512315934f8e8988ad63fa359a16b8c0bd247f463201c2c4a467091b0810a083c00fd3dbb2f008e835e16d1eb682b8de8b06b7cb05e10b5e360d95590e9e4a721b99ca7920a7280793d88882da08884d2add16c000a4c2524653aa0ab52f67d291dc6d852253488147a4076d8a2b5fc8538f1ba364b3f9db6d8a1794d6e1e3cb1ddbbe890fb1876df494d22c42661c5fc590f169070e30a8c57a521cb08d8037cb8c435194c61e0482acbe6214407265762226f76aa5cdaa554076c7bda41f31aa85b0ae4da81a9c9b46b5900675c8128754ffde33699c498e851aa144b4c2d1e53f5acf14d6931f8918fbb0c2cf2345647227aac2d4297dd05a3033a00e814b0f9eedf2d5bc5775d93331e6b8a734146280f79436545d75555c826163cb46731e95d5d5f724857bfa0cf00c47a72d983ea770c32ec1eb51d7bcbfc6b7d3ff714e3e5c51a9d07c706f930cdcca3ffd169e67e7f37466127f324df7424742e1257da8b4f0d4d4fa470e9e310189c7d84409cf64316a39497e794aa21783285ec3691ceefbda5c7b781915ac6e9e7e2e8fb07a450b16bbedcf055edcdba3923aa7f47c350a3dfd69c25b6fba4cd248e0fa3331306740cd16450331e950770f7358f6b47e4320394bb15b4f33bf7331d654e51d9da408fa89c79f62abde5d67d7c5a3b606be951b45ef6a21afeaa4db3491975a61f9f8b74017ef9b22d436bac07b304db715ed4dd1dfb6444273c137f1ae9a7a5a81ec4dbacc280b7e3d9c6bf15586b46077945f373eb77f512b8aa68e9207af9dd0971d0468e3cbae66f06ec86714111b9a4a6874d81067e36c62bfe90fd365d9774976b84b9359e539c9d44fc7b2034ab39e84bafad4d508e76bd648e0913dbc29606e93f50bd05df8175ffeef6d76e6dc031b15ac229db558447ac96c999234f626ae92a452898488c0dd4b7697059d74dbe2a7055148fd8152de73724df325c27a013d6ec51ea785e89f79fb2d90156e5f7fee774a9d7eab082e392700196554268cef4abd3966b6e42ba00966e20f16153365476dbbfe5910b411d894b1ee529989db83447b95956e6dfea4509e57f6322a400f6186686fe0363a3e59cc12784760aff77ae16427b12bddaa8cb2f94bc382a334543c69b17bc9b0ea0acf51cde6fb162bf412d93c34470f6c32986ad29247e1e197a37635ad0963d24716bd6bad7576653e115b8a1813a592424b31132cda7edda7106b4f2f9338042e4024635f32b16ac3e18cf33c5a9a0c42a2ff4e54819cca4250d9b2b1fdb9a00c65f816e5ad20d0c4bb23b3d75a95c20f5252e55167e6c842ab640bc79596d8f9c38146cc07b011108a9f10eb985ca0389fa5d8675d4fbde504e4018a99a819f15bb6e7bc4d30e33899fe8e9037fc88e55a5867e16106a12b7a018fb4b206f3c9681be65d2628c2cb4a44cbd631ad0f9c25f84c1f291692028ac00be89770dfbe630f375640cbdd82dbb25ac1bc556ea61120584b7d5f49d04c44724ecd18f031fb1627864a1d8a73cbdfbdd0fc89bc73e34f5284e1d996dce338a823541d401f00c67325dd84c30e8a43b847390b5dec231f066143222ac0de15c05a0b845a2084c8c5e5e561993f9491f639a0a3ace2dea21b80db4974f0c67dca6d4d38102b73aeaf28f5796584d628a7fa9eff266bc35ed213b2d544132e8179f2d1f4094aef429b053bd621c8c8fee4d5185ba3af91feec82a5588056b02ab4883722a815de309b073c05d281e33fdcecde25d66934081ba238b70a6a0988a065594a9deffbc8131366276a971d33c6007e6e06ef2a2e3055f4a09a5abf36245064d50aad8ac18b8b668b1c629c3cbcf3cdb469c0c59f0f1b5668d7c836fa0a62050e8fce7a2b86e4cd6dba017b7dc9de456ddbadff5f9c4f2b3baa9f25268cea3a0961bec2594fac912349dfa602fa4aa46bf5c38c3110769bbde0550ff477d30e85d79f6fde6f3c4d480e49faf9e0661b92f5d22a30a114f2c94f18e4ae75007fdbdc917f98931d866812d0c98e0f1a429fe32d84c38a6404cdd5835b3bb8c659238927c7994971144a4742f9f766ad78bce31966b5d96aa929d595fc94e0c2fac36cd8173cde096f86205826f178d35d97aa42da7e8d00f111392f5d88b763d0db4f1d733d3996023c94128edae4178d9c38da21384f3af39db8b9e1f585387e633f58a366484bba60394cd1b53180adfd427f4edf526b923d82102002b3218ddd3ad49ea53567dbb4672ced8cc3c691dc6236318269f9a6947a2499cf19f00d1240ec0076e3395de9c0d86bd13e9cfeaae506ca8d8a8052ff8f89ff952bee2777c873fa7bdad9d0b1835f04138bf6a6cccb3ac61dc6e1873d2176a4e1f4e2588716756568a3767eb8737b49516fb45c01419a21c1b329df3172d62dae2a5a991c8dbd4bd7dc1d639f1cd00c31d4aa65abbe9db0f4daf43a7876fbba005ed38cf2b29e87c4f288a6b1043d91a73e17008a0e4e969e2820a6c99c37ad2224210b381a5cdc5d1d4703380c118480a65569fc7d6d000265531256543aa4b2180b604d358ccbf30b5a66ec4a3ed09afa4b2c5b2791f22063cbde1ff2760f5eb7477555c1de3e4f4a4f79135866af9f5a1c4384faadd067f49c9e569ebbde6f4e9c56ce82c5c1cb4e5731a8e934b1fb926a9ac728a6468f2f645414eb066e6234d9a4a0d5dc5cd6c01abc4aeadfde3afb01bf63f5f320ed61f0c6834a94236480e1beabc7d29f4fadbd4813d06f33059adbcdca2c8fee5ecc93d37a2d91f89e00497042a286b7a7c77fd86254b9674a2108da236c32fa0674055f8cc7467f10be6dd3d32361b855021fadb28ae21667c51137ef3c3d718832ec61d92a16ee226531364d11407bc4f1aec106ade92ee2732ed85ffdddb2e16ed5e0fac5ad0374f43680136162677ce66299c1fd13f430b5b2158532c14b98c2fa3845794dd7153a1385fd9cc422e94f4a5c788cc064035470df0a9ba4ca4ffe273367386a9a0d53b189ff020fa4b397affb30ebcae2adb321927b2eed604da3f8c6942375518baffd38665759b0bbc767340a301a1811d30ccb4009f6e0aa4c5bb794441f2cf90ad917047f7567f4b383f387f78667b01cbddf427d2e7692babc2f8d68610bb2622cf5fa0f49f3d75a65977fc48f08c9655ce6b11289aa3147e2cbb70e08cd7972e125688bf639c7237f4b850e365e899291c6f9927cfa673a76ae111e11e0050806688d0f238b99fe6f33f7e08d5237b04662fd4c62e1b5cc8141689cb332b31ffb7f27d349e172354490197b3b286e61250dcdf8da72d635cb6dc7c756ac357c98b4db34b8733f6269b881736e5565ae0c983d0b8434f20fcd84bc6d21bf9692f949b457e000179f93bc2d8b5f89217885c3c987caaf337d2dabef38ce3d24f6566f5a516d81d2932524faf30015a61850270ef41ac63eb7f65ecd7182cb2f6619bd2a5e8c704da1ab18111146505bfc0a90ae08eaa22c234b9194a9373dc809276b6fa959fb729078231a0a0565e6b26997dcb968e65f0d5e82a88787320f1aa713439bee0614ff78faa7781217d3982dac17f1cc76c77df8a6cb512fba86b59b5c7aa6661bd1992fc91af4f87d1216d72ec21f8197aa6eddf2b3de8adf48fc7b01d35ea120ca35b3cab4b1a71fd4976e664e8c234c5420ff7e152cfe6e8670b7bd0ded6d0c6fb63ce1ca38223c7ee66aa2789dc326b15a354446613d949561beee340983c96df2a63f1a97e21a543f6b62000c3ad1a1cc39034bafec193f7e4bcf6183089582598832f46ebcc272cf1a3f82ea816a3f587c8b08a0d7be2cf15c17acadbe4cdfef5eb08fbddff5e3945cec410f97e9c6d046de10e37947dd55c0ef1c6208760aad8fdfd4d553d525e011399f0b665967d47cf878d64320f63fb98d9a997a72d153096a0cbb59a7a14d531392dd4e185ecb5e55cdb058dd7502943aafcedab84b336cbd3f58ffed6136dcffa45208f9c6c6024393b8aac4bb7aee8887e7190ee4a0ea83fbc7fd68de93977e4da7a223293c23a2ce222bd977319bc074ebdbbd62da4e39a79ff5789253285482b3c7a8652780841d69bb638361ee7564d9361b8ca893e02fbbc98f1488e44e698429170bed9cee6df36d1fe686afe17939285d561151d6903385be4442b656d3e55f18674214d74c449773ba30890b23ea5b34e0205ca43107bfa0422f3768129f7886b165dab1a6c82ffa1f9b76f79711af2cd7aff608f4cdf978a1a20eb39a817ed149344b9792862d05cdfa3c099d726f2b92e8b6868743412259d4ba107113f46811acbee28bcb8dced3ba187f25484d16e486983dacb7386736f411218d069f01a0b2c720fb939c296617cb5e2222fb86a79ec6b2be225b632eb441b3d86971c656f74af339eb36906dbd92085183e16c8743bbce80a2702e3298af8b4cd5e695c0e0ea1ced172ff4ee9c30d69684f746d40992b1b60b51df8af79aba111f965e102769d49012758be5f4864844bea97d190cff0905d78393f989c57643fd6ccad4810e6bc334329838df86e1983d2a9053045faed9cf8638e399d435e6088a1b251938a03ca09c48b071367646621867160b1efc81017f7e926a4be2d290c32d9e60af047020fbc52a11203e471f55effe251193d6a2dc336e46e771b301f479a901588d81ca64a176bf03db50e3b3ef711b1814a5fa28d45758da5550e707e9f1433d632f1bce9e90055ea4b0a3fc90999cdce4d7dc517e47c8280146aa268006b0522b73be21ddd4b1d702ee882115d843bf73fe3432868e8ffe11be02f7d2b2771b36147ea644d0b5da75e3601502898408d97e3dfb75fc35e6f6d403d0434e924634f462aa16b811bccd24bf6dce1aed87767c7545c51f8048060ab335ad34f35aad21cffd8669937ad5431799efca307840cc7c6998f71ea452475927b574ada5cd824edf261de11542216105df44f64a06e8c479d7d5d75950ef3d1749d33cdf97d8dfd3ac27a64a0463bbfeaf5bb4e4bc0e82f447b50e70956f7f75b5fdd28ac5fbf3565943c927eced29ce890389be21c0b7e85ec5478eac64b689e60e2cfae54c0ae24df65ae5df594e54176be49e9e7b1c50bc738b19c4b3a5ac303a89fc253a13f8806b84369a6cd418a74440213dea6089c4d7b309da7c20e02e04f28fdd90164c6027b20d239cf847d8161a542b778063e6a75215344c83b127f8a5c45d1120bea6fbc3cf85903b3b07ccbaeba6d0b27b9554316fcb9925b0e45a6be3cb43cd1a5be365cfd75fc968ae7b47397c862e32a8d4db054f405f93f9787b363d9502c0ce397bccdfd4ad08f7a897c53273d00122d551173111cebae7b5cfb921a524ae27fec1f39e228d118274d36800aaf16e5945495310c6cd72ab442df19b36466530f67db9bfd8d5395914e12a63a33d51f7bd839fef0700a3734982a7ff3f9bf3ebd49c5374fb6181cabc3c1928691c5b5406bb30b4e5a4902b3933fe30ca4ed02e207d3012656fbc6d46cd3daeb3415c4a4a999ae6fcaaff2c8ce65275dd5f52a9ec6710e8ec1fd066eceddbedf276e5c7c83ddd9db170897cda4a3f65a82cbd9caa6c1e06cbec3fe53ddb71ff82017ed86f7efded20bfef2bf017d47fe25d16a97fb1dc4224a8dafab4bc199f6503ea12302a8c3b51e440c2b20e194827adae1f20766f1b6d49d8e664eebb53dfd79815ca5b97e801276addb99316ace0dbb61e17498215b87baf31853eea78ef0a3de37e272e6fdb4e8589e7be9ab6e6df2808ced61a66ec0a977577b531615767caa0b6464e65ac8395d74829a9364aca222ca12f812ba926065890632ea72b4cbac44ed0328d7f01d193b3f75c2ea4784ffaac2331cdfffdb0fb24134dcff6d32dbb7f5af5abd1c3bd0f1c22e8aaa06a3b3ceaed6010482cc10441f59b1374ad6dc8c47a609dfeec6b569d8ce138decc28baf7a52f85504fa13a3495600cd62f6b29ad0ed57cfb2e98c159ef0408d3742ccf441fffa00430fe0279cd5a49fdd9c552bbfde8c0dbe1dd5db487d6c8061332e17f735bfc3bb378ebd30cf0f4f9467446fdaf6a1e4e28dc3353406ce645d59f4b363c676799ae6ca110ead8558ea91a144980ae3baee5ba8ac6349d0cb3018c49d5c518a2368fb8eadc7282c009f1429d5f9babbc2b578cce1616c3eba1f7db14f6ca3ebd0de73c6b42af9f476cf535b6a84d54b2f7c16793e94b1f84abb72384808f364d404613d8d8dd5b87a1dad39594fba46c3dd482248f5df9711257325a60a2cb7e1d3475214d5462d4c9eb59fcc74719de1f627899977538a39ccb2bfadcfde36052b700ae10554729a69a6dde49ffd59397b0d8245bde67581e481e3233b35d228a1603cd00aaf1e3141eb965a41061d634b914369d826d692135069b04d30e2e778d7bcf34511cfc6bc6cce748ae27410caff53692f0d501e80ec5d3d4ce3e5304f2e273894ecfa7a13e9fe6e340b0200a35d6d22a51ff88a15b76860b6c852004e9e385d24f002e34f1f5529ed2ed8added18824975d87d758d1b10ad35f5d7dd667dc117f9b44e30c3cfe42c977281e300a0ce7f6e7d9a527cafa1b49ab33e5d83ceb79393a56c8bf018f73bdb458fd15268d8707e5efb1e96d95977d9e417dea3fccc2241f7ce2c4f76b8b2ada3bc76de73f7f4f0133176ec55ded3e7de8e065d7d6b037c736d8d1020ef6cdfd294fad21dc024f0da62e8280cc2f9d46a038956f4576cb2af04b34e080f94beb4c2999a68301dfb2efb05f178a3cb45edfa8962c7c643098cebbcd51c80066d7fd6342b12a6840047173d8ab12d3f302843504189cc70f5d51ae234c3d6f6f9f19ec634bf14154161710eace9b102deb57b91f6a0d77d7aaeeb49b7d3848c8fe2df8bbfe8cad06aecad20ec3bc28a394b1a740cb4ba9c74eb40423eddb8cdeb823a915502f77b076dffdb1f824c4ab014f4ab7ecb9179a4c591f7efa24c74af21b9748eecfabfc00b42bd1da297f4607ae9186bdab1eb9c2298e48c735662b1fb601e0606fe598d93dc173fd53d43716369863aab58697b0dbd74e3e3ba5c4ccf0d3850236537f839a96c1027cb871ce72808e2592dd132c22b4ec7af153b1384a589bec8038cc1087cb2f5e65f5618c1240eaaa56d53e161f62def392572274c5dd2bb8e45f47e3a5837ae4a7431c09213fd2e131efb77d979eb44b39bc27daee37f5021d51c33f1bc8bef6a1f3ea4f6955ed3fd4576b6d87517e61eb67c8baeb0e6eec9df825aea765c9ab9e00a29d917e6a9a33e7e92e1c18d1ad5f249a77f32e573077c3b614cdb8ebad94c828f0b757ee3eb2ec80978fbd95f10dcee8950f557dcb283fb0f52c78252f7f50689683cd2b4ef06956cf4aacf472d9af620a0e8a1d4619cc8fe55df190bc640c4ff69a5675d9e85df5afc25ffbf2ac7da79707f85bb92ee21429dd566c61f324e7ef26c9b1b92d8beafd975fa25d2bca704ea7f927c12acd896ff0aa2b5578bf30e898e6e68ab6b661a1a5178eee104621d31916b50bbc8d206908c0d8d9d2aa7b413c4dfc66c04c58b06f04876eecb4d983d33b5a9cf10a657fd8c3d7ba2a4277002424f0a5ca8a0cac331a1ce1aa7a53c25d0bf5f08bebf77159320d73841638dfe1a39ead2cde6f8dd20bb1f6c321dc1390eb0c86afca092e81857abf5bfd3544d58a4180b09d8fdbbabe66fe63db76207d06b35543702f29fe2eb5ca358e6f4e295de76a89e93e88f9259ede7dcdd1a9f8e942e2c0c9642f2c09d8249384a8139c5837d5aac23d9b0ebf3f76acbdd4d6f24177aa8d1a9feace8f7044e8c2a8b15635a4d4c10fdf5139f6da28e9b4c8b1977a2ea14c5357fe98bcc690bb5e2fcf0acbd6e3866b2b238aa6144b9f575eb42ef2f20af3256080ed4251d5d172a6df176e408d6c41679325a9761e63e001276e243fd2f737827b5b814f09864817a46978f0b91d5b137da1e0d1f44721a66e14c1f3170eaeb874f976cb3993d5f69da27371ec87b29c475c664d489e802e087fa5e5e628406c7476d667f2c927341354d2f7de2929ccb7e0e095d4671f8ab3f951aae0267efff60fc0394d6aea071b1ec7e1538560d9800b43fa9cc60782384034e629c527859f7cdb36f7e70a33c025d17d21b8c94f75014c06007e01cb8df5029bc738c7b62bfd6be066ec18d4a279460100ea68eb860a71f5597ffacf3dd239cc7bfcd15af4eed6b2c06e8406e9dff6c4e1bb6b40a84d63d67268b077458c0678dbdc3c474c66a914e9bd8195f5b9cdf9383132c485ce15ec34a1bac7744b0722035aad0cc1e2bb4d39735e9e857b1f86c2b1478f02b37f029ed825e6b7cdfa490fbd9c4495456d3f4130a1b05d302d57a1ef906455f7e5d699e14ac2a89b1170f6d0d331ee9cce69014d08d80ead5c44c317f4812ffb30ab638f1462337b2902b2fbb6d2a632cd0b08358317664fd4983aaf534abcc6f1e1e5ae54c7145f0106cffc8b7bbf887e7e4f5fd43d66198e5662ba8aebd06b1d452ca4a822a708776474a06547e6cd3f985c52f6a313dbd1deb0f39949825c1d0d29c0572e0563740f27b2482be718ba060373aa49785ec732bed3f8afbb4a7ae87c3f053678dda69806698f250b9a1811ae4a9fad01aed3734a51d5307cf3dd4d749bcc9e189fd94ef48705f28c62a70d0086d8d679791f8568035b36574ad4e62d796c7d7fb171278251caec37e7c7ad6f8c2ed21d0ca198fa126e02b000c44adc99e5667d21ec2376aac46b0092be19d5b32049b70530531a77e3271f8b22ab7370f5db9f4d17943273a27eb4be306ddd4189757cb9b3dac3c93bde1d692616f5b479445c4465cd3263c5ef5d311665ab3e6b234264a2a4c0c7820e54208225ca1671f2550c8301698b1f7c8fd4bb0e8a7e9ef6cf1819bd233e4935bec429c49fef26751440f7faa8ab48925ace206d650628e0d0f456af3041afe6e587e0288b745c4084b59e2998b6232fd4e51e47342072e751befc04b76c340810c2d17bf270fa8efe085afc64c9d29aef2fbcf8ffb7fb534925ca9d62b470dc6b422fa82d242da32e82e49da69c6a137fe146818872de5fabd62090a3d14cca37da7d1fd6f51b8e10bafd7d36835881795211e19d6d229ac9276fd3f7de087370178d1074dfb95497d63b635456f73b7cfce63fc3ed353fc6e01b5739a0cae35721ce25f4ee1be7421ec81b3d6d61626e45229e0f60ec84fab9881960640abd0ee5e3ba1ce2859c74e9e715dbdedd22b1906fc7f2230253308cf5a77ab192e411a9f5d92744984c2aae5186de78b5720f73ed61a04bad409de3c875141c11a4c48d92aa36bab181be6b0fcfc5eb3eb2c7b302ab1f03792b41b9c4c4efee825e6da4c1c17d469e024180f3ecf0c008f908c8d5b3eea62168f0b4069d9b06d8f32a726d136e4b72de74c3c8c944c174f1a024e06fbed70a4dd977fe58095683275cc9a049d4f728eb6291e0b4b376a1a0fc41e41fde1f4ea3fe96b5cb76f893a4849c46a977c983218fbfc1bdae560a755dba4848f88fdd0b9a2a5eb1dd244af26e716697b06ae2de5675a459acf33560cde4148f047860fc7032154ec0af01a3987e195404077c3be6e9f0e89c82b5398ee63b59ad0d13999e34ef8c12b755974302bfd62328d6630928dec77ff0362737dc10704a71a2838f74888915df825927a547b1b0d213ff6bd35b69c3a6f9dbcc656644de77d53ceafec3df55e36388d78de57008b3c5455853f367b61448bf3e991618fb8d34c34482444e3db31ec7e6851b43db88fb05f9c729893960d2736e6ece9f64ccd5d370bc6622777e094dbc7edcaa8e6e1f7616227074d856ba40aa764132be9b91b77b837187e40effbe57d58a5e7c197b4944260e1b6c71f0fa208ed9650f7c1ce802b9a52c65f1762b05845bc8873370ace1fb1bf487d3e1a548d4193602a9b4a7b585a7986fd679670c33810cd0580e1ea846710905046e9a26eb8f369e3c203dc1f62ad62d39d0877a13614902d11269950233d94ecc8abbf8aa970afd043ce0c4e1e4348193c0f8550283ba99df19c3ff371fa338a3f6c73f5568c098733786cadfa4cc4db226ae7b887b3a922d4ba1af049f9fc771cf911adaa4df1bc3f71b89eedca9fa542fa4a1e03702f412266382e1dc6015646ce1b5e4e9e34405be3c66cf5880b69b0feb748d9dbfeed833a54cae1ab0dffd60ea9ca405d257194d5cda121cb80902c725d2abcd01f04fea20cd7db9ccf36451a022d03a5d9160a6484b7113ce5f0d93ee9c32a4eebe431c98af9694457a6bd6cb5f905312330a62f922f3f312baf86ea479fdc0f6780a51bceddc4d5ef6dfec0b45b60b539d86cf63c451ec48157aff7e3d7167322a169909e16323c5a4e0306f6e318ba2431f75f79d02a91d28635bdf7ccfdca4975e6f45cf02a0b4964d823f2f295876965df25e9dbbbaea43f9ace80a4174121b60a908de2d644fd9277d00acda0ad8a1426eed9c8ae59399d4dc351f2cf1eb3dae4be11795f6e23d0387ede66aa85208e0bff3802538a16afdfd0b63f643dad1734fee58e0e0221f5bd0b0481f60becf980b3b247cf3a877d56f0a4b34d37ec19a76d0206e9da973024b5a4c8177f4ee13987841b3eca701a7a0c7eb756bd7f99d85738204860b5ee44495a867ea3b077408621ae10f9c0b17fe99e3f5c9aa582faf886ef372f16d8d3d15c77221a347cd11bd5472df48bc70ff0a8179b10026629c5112730e5c4737aaf0fadb6dcb6f08cae688d73ff103ce4dc0a73f17c0bdb665e0cd1f44d642b3dafb37cc7c1689cdc34bdc7653349f4f86595e0641a104edbda8e855ce86116b3627d5822ac65587a6fb6ae01c7a952bb54911449d3fdb0c0468fa689ebe64e33825fd0c61ca02e33825d669ef77abbf4f5503af22298d66cf31a02032652ece102381c70d791e0ecc8084eec8e922af72aa546e98ad67170f7ff1bed811615242ef920b1783108e347a30f45dd57cfc5ead74d624821107b8dcf4c37fc30844da3a7636e0b76cfaf0e0483661bd52323555e8952292d15617f30090d5a6ea40719f63a56b56d44e43efb0d3811ebebe27f1feabcca731c43f20422835a62d3965ceac1364a665d1f5a92e626fc22a987e2c7024b1a95c098921b9cdc7b2a9449d8656f08ae3ff1c6e19075f68a4bbd8ac808ac5c68074b41c71c1c7c1e5b63c31e1162d40a75da25314016e73cc19950b906133d73d7edf131020d5c4648bf56085af395b4cbf6771a9922e5d7c25005ef014136a472555bf851e46c7f949006adb05a5779e92a7067e6a817c55af37edfce3646bed046eda4480bc3cc9fb8c5e7c5d79092993efd22959e6cea9b458b76683887a02ae40cb1b96a5f113712b9b98ece44695cbb7405092887f231f92aac93540f0e47174ef73038a3005f36ed65fbdcafd53b766a6eeb1d147a134de426a8da6c498315f85fd46ca95986d1ae83d972115063959a20894d4083fcc47942cf21e509e04d681b936619d2926264391bdc1cec126706483984b75f3afcdd95662bc8bc2f6b98057211e93431a7afbd643b5440647929bfef4faea610cb366a7b30e4cb842ad6cd7249165c3f5453ee12630c4085afd7978fe6e8b9c6a0c68f3118eb983e5127106541cd11d8c03cfb00b7a08bc4a5beda49cde349e6d07cd185b44e872e560ff5b65056353c5ad94fd4a4339d822fc8b7c68c5180a45388ec96a6c7fb568c97d2aa495f88c917e221071cff2b5cf4b113285dff0ea2bfdeeb8953a213f2d9e7ef640a81dd33f70486295e464d0009e82e073a3b121761dece82c85b58c210f98ea3fe192f25f964483913ef0cbf856cecba3ac1639b90b05b3bc67d1d3d984ac506793ab2c989c1bd957eb0378b5556b5e19575ab390f5a0216201ee47f0232fe357d9c99aa25b33ed9ebc2c4f634eb4617312c6bde136bbf10cf3e22467d5b555a1d8c7f54dee43c35fe619401ebd67bb7eec714fc03656319364c79d574cd0268e3049eb20104d4c35ddce90fcab19d2238b49fb14a32aab750889fbcd8031a0fea3f47105020e295b055cf8ad788633998daef381a49adf1e5f8dc498fbd629a69c5ab87bf42a06a36c8942848100fe847bbcfc31f0f691d22e289996d2bde115ea8acfe9ceaaff34e1111c2f702be699f4ef744c415389c641807e28eea864fec79423d7e075a8a132253c5edfb924e073dbe9a302e0a68d070fa35846dfcc49c7889cc083eaf8838d864f9b5f4398e6a4d70d3a61dd6ee588d44d8d024b8ff3a68b0cbdd946c2d3d239cdc56f5977fb461084fc0a7a096e89a400f835369ae2279d4db45af33341863a68d9cfec62f1f2990412a0506bab338ed7921659f5c48e96e363d9b8301c4ccf7d6d6b122311a092d4d528d8dada5e2b47873459e0d5653292293835b4ebb10eb3c5b98a47e8526c6a0de49264abfff68d68cb5128dc69f54ebb2ea2f8cd42e43d73cef029ecf17c3fdf64327ddf88a7b4073a05467f3bf4420ac53a6bc5ffe35d9a448fc3d21cafc07e68bd708e05e13d52a71469016bf9d0e259bcd2f8c55dfba71c0fcd774d7aa88f888b7c0d5374a785a1a0243f63e32bb77fa3378b63fbc8dbcbcf72388084dbe64653bdb37aee48f493cb3ecd5093d62173fc8177df4694b0d0c496b8988aed6fda5a2c9ffb5dce85220b874af09c8b670b777ebfb46ba4125e44bcb22661cc95374b861924cd7f07c9646f110e9fd6e170f5453eb52b72a8cbdd33428dfc276506aa531173920ca755c19734f06d8ebe3801d0e777f04d172f91752542cf9816de7b571547729e16bfb5b11af19b692ee3612e16cb46beeb6669eb4682e781b8dc5bca4dcd648911f38788bd85c6cecd3953a7ef73245e5721411c690bc65a0888ca5793aa7b570810cf6ea6a946bfc865a8b65ca81727b320169e1b62aa3ac24f03e67687554fe95dc668890089865ec474659a02ef132bd88eb92dbe627d6920aca8f8f536fe8b7e815e4cf07988dc3ad6668f498cc3f597fe91c8460e0353c818ad97df6669d35161882651fe57aab7067095529c8165c406c8c4a8a664b8fc8f81abc245f8139f6f23dd32c7915de53ad190ef31f48ad033b98e1104af663e50850f49106d62777399b3ba29c893a3511bdf24bcfa62150f5d13ed239baa656d60fb1cd002775b51837e8dd413dd4f5468c48acb0bf28d5c3032f5709f88aac17058eecfb5459c57867785197c69c6de4dba409a65da742d89a7f96f7d5273fc258f067eab6617d4ce39a3684967753818e65f54d42fc40cb838b479a41c309b590ad8772e41d61bec2ce71be9e620e57897a3acc7e37ad423122a4cc676855ce0fc39606c03d284613b474c4ece6927329e03539dff9c5d721a02d630d441ff98bf5054bf3f81e9ce27b81263d54fbf59331b5d896664e97ad65fb0de38d1e57b8c6eff57ac1fae1f073d0341da894075a0bf24e5e49e911190bcfc8490abfa4744e6362d33ea416abdd053ecfafeeadcf6c49c2523bcf6acf607973d8705d4e224dda2193105eae9a6c7f82edd4a9aa63f812ccde34528b7ce74e75ad830b5fba5541574f91ff46a41438b13bc31bd829110592b65aabb257cad271e3b93b51028d1bc65b0a8b5d00b1f0600dc8debdddb524d4e99ca72b674afb00477bf232e80047564cf21afff760cb178579f9b170c7f4a84c2aa7ed81a159a8eb4fcb498b490d50673ba761ae597166d5f6b051b68f5c742c7a2f4366f34faec8ed26f339b29147ee92bff60b1767810d6498ad57493c218975a74a2fdfe3b60106189b4ca39d2dc85c21d3788a5dde309d98c2ad2ed8941fca7c795b97b52f7ed9f46948d6e96e975cf946c193cf769d59f1fc9020070fbeb9c29859b04050059bc4eb0fdab74320967a67eade87fe8df635bed7fab801ea01b48ec474142bc7fbb5ebf3e38b33cc217d71ebbd63a1f2e00e961f126b3c433a83b433c48accbe4832ad51c14954703325037afbcba43ad71a45a1197cc5214e4e01bfe22fabed5a9cc9b3bbafc36e120ccb433b5113a83b6d34080cc71639df0cb2b82cba481a68fb9b90c8620477eb99431ec0bbf7cf5a4f07810d9fbd3ad021106efaad52ab26f577ab8a18d8267f6aefe636eb228ab030911d5552a96fffb68f13036582ab18026e617f3a626d95941756a4616d7480d7cc3975c5af6f41b2abb54d44864a0a0911778128e5c0679d8ca130a0985531f16b00d72141e8868ba0bfa16647b923846887008b4cb08e62398b97aa62e6321a83b3b23fb2290ec4d8521df56e12eb10c962e2f508e620fee83501e6bbe304992caac1403d05112d35cdda7e666efbd909230e9a14671a262a42a03a20c372ecc0fae79c8adebe6b00a21840d19e0a85f9797137a2caa556fbabd6f6066e28c519cea3e36b6dd4d6d25334040ee1e84fb9481aa209f086ec096e686491b9e16f5dee017036a83a6bc80616c1fb43133d7ab1f0e1f96ef6d64bc3204ef65b7831c17e2c3f98da154733ae41c0b9915e15311555cdba1468b255640337e1d9d9cadc791d9cbb9d6e74b9338b5a00cb4c7e99ac9a749f2730ad4208adf54947cc566551db75ffcdec879f8dc18cc30e5e9778096f75edece0a845fc71efe2a0a2dc1518dc1f2b02ff13d45d84a5aecaa92019844eeab84ea5e4eaae17fb39f56b4e333de06d2b68b4461666ed430560a0b7270a0d5662a46529888d31e582ee7ec50c9f7406c2ecb4cd9e570577786c4395c31dfc6fca2609793585c738379770006eaf0a28773f431ed4a573f902be6e4ca543405d038bc09ca468b0e2ee4888bdfeabbf3dfa94923662adce8f6326944b3533f0af8040d6aa1cbaf70e8c242c1ffbf51d303cafdcda4b25b5253daf655a836576880cd156f43232c87e6f5ea0b91192b943d55065b8ecc1c8a6ba0602acd24b36e58c128f509fc1737232fb5df552c0a3dbc2acad08c9b9ef6f2758b09ae21becc381565f6baeea53a24be31c9b9600a49fb0767b24c9c58accb348918aeda537a4290fbd5bc7ff2ce0af252bbce31e74d5bee9702db8324204832b7b10b5af671d3b6bbd1c0ab9ecc19099ee39249e5a69120f61d125c796a5bb02af64d338bb373298cc6392d5f55c510d7118fc6f3730947c3dd898ac4b1fe3cd18b1944330325df93f8a2d83c952588c2561df96d4810a8e21e3099702719fc8f7292da4f4f70418b31c2c65b5706f94d34919983ac96517a2187e476fae716554a1e6ba83bd86ee6e79642217b6774b4fde4691935b2e46833b91e92a544c869581a283aba6565d2d05d997cc1e8f84c140ae28ec6482e54ba62fa1df4fb65605f05575826235eda64e210ef6138cd6ede0024e26ba13680476f751bf4f7d79281c128667885ed7c0e7e9ba7204ebe026b7cc265234ab8417ea8d574e522236d02486ca95f4e55e061079997ef2b3772d394d2f46d5ccd438c795d49af0d507391b53191fdfb5c245775f4fedeece00affc690d10eb9c86d568e2366fe328b6bd1e83dbc49fe5c0752bbb3522d3924dfcebb3b8c0291bb8dd249c98b636bb4da424d0566b143c5d7588e64fc9f2815923533ff496933f8e4ad9c6e18091dc689122629f2009672454fed849f7f1ed648ffc6ea88cd80dccdb9585905eb34fe37ad2dc739f029745c3048ced77aa5b93fe8c9f9a791201b9f09a735b9f6eae119a88f8ffff24b99095594649a5d3e1a25fc4cabb631a95afc389269b72fc9571bb069ae1428adeaf3cd4885227a3129e2e5a0b949eae71306ef15e3c1e2cd4a35154bb4a241dbb8008a9a475880f08df03fb6dafce7795e3309ee37a3280101c45239894280418ebfb4e6bbadcd4fc3bc26237e2eda47a80a90c1699b7c11c263967bf60cd860014b9e0e2ce023b8b93e528e7774cdb1ebb21f0a769c9eee72874b39d46daf9bacae8bf7a0eb85e877c5a19538f1dc37d2390f4618e371d32921f09f53326089dbd0c7e5c41af0dd45fb9cf465e6b8d3e9fba381163fdc6878b5ac307042f7256dacb18cae224474900fdf8ad1cbdb2e03eaaa68cf7df12ef02559910d4059f9706599c832c06446cbf484cecd9c396033becd059aa2bf8b98a6d6b9fb4acdd0981b1ed2018236e0cd209229fa6230caa5c86113a6bfe1f5b3da541b354bea1d13b0e6f2e3f2f6fd6876b74af81c0fedcec093121d08fc6230852300b579e89e0a2a4e794dbe434f56311e0fd02571147383404383e44f61ee241f7c04ad24be5523fc2bca04ad4571241f2df9e589dfa23c80bb669548d54884cc4f2338e1d4371d975f660ea357a5beb7214bec2db1f3941a4f98ed493ac7347bbcdde07ad94421aa84237a180e9c45f90a77cf1f5fa9e60628014eb7cd074e6812559ed0fde72fb426a7fed8fb019cd4ec3425be327fef5945748a0ba4e4567ca936cb4b56935379a8523377dbf0d758a0c4b34b38f9d502dbdc4efee805b3993ebcf062f25c15e3d49e8e381538b16b095b3cdc5ac12ed4d91588031b93a8111a4da82078a03ea569197ae7157c00a0462660a99068557206cf00796afd25b57ac9c031b2904486fd2cabfbdf6310b40981e645b1d4abeb18c4a5ffe6185c95a48e708fa2bf7a4a7e1d6f292bbc2e5c8c340c70cf902e23d2819f8df6bb480f445a61397031e3a781041ab7c4daa55ea2723358a91a33091a44c760346e8d49404c9e719bc3d04f22e7fa7cde4c0f0f0e5bfa01c40043ba5134a1db52b7266403c9fad0fbdd91e421b6b4ed9a3abf5d456aaa99b1441c3f0843bd211b6e62fbe57ecebc7c69d9d34c4478a6fe588cc8fbbca6aef8d997e183785e2fa735b3c61e944818d8c9fc52a28d35a992334bdf25ee3a35d01d32e6bbde7a9606a62d10ced56574103e6cf8b044e19d541c197ec9eedc2f85c7bc77d2d78a099a250d6bfddbd232fbfc24c011e2af655ea7616308be3e49e4ad7e22710d55d2320a1b50417f8326be1ea4177bfaa7e836d144f7379fc243dce85c541367c27d283da57b906c101f0a7f8e75f4b14577fb1214eb46e4ed4ded92f5683ca8b410817c1fb4e98901813f4933c4e7991297c6195d687762fe46b835fd5b477a0238a972e3d1cfe882847896713d6cd9834e1011c98d34cb60d793d77588093e4fd714aad1d485c145b01d3e28052d558c413d943b402eded983f45fca92cda877de1fd782277809f634bb8eb52a83dd3d35995096688f1ea6d8653c98b997f55c6ea2539c1f63779de49087be29bc6071cc1aba954b41a050d29f804f028a1f98ad9ae81b7d6d33bd990ba822991458fd77291da7a34abc9a3651d090558e31c375fd209aae2de668706026a3f581d8947f9863ff7abbe8ca1edbaa66c3816606267ded3cd47a727cbf9e9960d80307eaa1bb7ea420ca31728273fad10ed71efa6466057d282caa7fe2de12e14e24f71e13160ae93c7a3d8c78ab32c5fd02c6991f89d7e7a9e665bcf7a4e38c2c8bc6d17a84e859c76ff13d073a2676e528a9970f8f8a73b2cd74bc978033c7e7f0d622fe2c1cfab9af1b027ae21626426eeed40923d73bb0562126f5e22339a537a700065f06275b4afb60ce673bbe2769ad129c7fbcb4f0d304ac15175348707b40a5fc6ab11b5cc5ee23aee919193e4746a6279f61c7dad42c18519b5ad8e68683eab01849541577e7b2cc27de4d522977267288b8abbbd2b5702bfcd69a148bf67693bbbf0719db10776580e82ee22f2f9a92fb183db12d531aba4e5f50370fd2a68bd128acf653e86ee602238fe1b2c98f0709cf9cba289fb928ce9bb1599edc72b2ffb4236ab0b5479d44f51fb2394347a1f95efae4f88e251c7b2a31d04a137e8ca937a8c0642f3a4db764a34dd1c048d3a3f8ac456ce763e3f5c14b639b8760026c1857bf754fede004da67a8445ee21ece4bb0fc0ae8d8d297e1218d479db1990832db19d72a8a58374753548682be7be40639664685ce2801bc9c9a1bf13f631208c826fcb9cb4965067c602f9cedb1dbeeec8bfec2d69534e922121d5104c5f7561d31aa9dd0e86dfa7d9dbbb5003a3faf406add8a68a81c5a75d1f730a03d2cc28be778f763c4b77e683603f025fb7d554198ce2453577a2f4553d888af784f262e4e170c3adc996e4e1fd7ae6f3cb0b6b936eb1d74b3cc53b33912600c7d34b4d50343b7561644e521882042e68ece1f4d3e42bed4989c09572222eb47abf049e81ffe0789d5cbe728b09477f5662591e632651f52fb1ca18383ec1c23547b2251452674f27a01bf5edc54cba765acd55c03d8f5893f52cd139600da248ff95257d1a5c1b384688b071eecbbf070c2b940acb2c60d5e7a3e7ac03253a5ef19d7f3fadf8d5d608533f3dfd8ce57f13f2681d162e2be4302269a873bfe648316bfaf306aa813a5805ef773cf5de97b48d99049dc78525fbc3f72c0082e7e03cd900d68002f1c87add89e153d4dc7c7e42bc405927b1b219323df36bc8b346fccd71bcd154bcad7fe4f2623c5a5f360d073a730cbc9319663771fb89aab7d6cc2921957d5cc850142f0644ec830ae1e503881c6061c499acb326c5bec829ff92979d8fc3515e074559ff2cd3e0a8190b0d1e71a31db035d18bdab4bb55a9da99c074a3dcb66f417de12455bb57a2c83f2e3092016a9ff0e7e9d098171f667f40f23c08da7b52eb00c5d4e2ff15f42e93d282ef02df10cfb0c624efde9555e282e85a145ffbe602b80d5872c958b567f2e705f58e0a3e5a17b6208f80fceab287ef42f79ca61a3b122b339388016c6500ef5bfaf379c5d49b45a9a10ad1916f47f692fc79365b84e76396f018d2dbb8d583803d077f1aa95a8c95f8ad6ce9c133fad4fc50d1b7744390014dfbded0625511f86da15a1da40ff39fa662c60cbf49b6ca8a482fb65b5dc0e378c72470dab58952b559e73400002b36d0f5b499eba92bb4cd7807b4c2ff4fee1ad038191b9b777580f53d26775a7460ef17b40a527b4b280d91f0cd38f4924f174ba9503c628a6430ec4b7ac0ef553468009dfcd7a30807f7cbb6f6ea8d9a9a3581d54cfcb45b8fd1e96ebc11e040796d4e8f77e1b05a74326129f675f95dc7e3d59f47004fbc27fb15c84fbe2bcc66945b5ca1761ec86c3c72a61aced7c93346c7745a4032a363f5d56fcbe3596392a024819bd94a2b9629d6760fe9cafb8be6e6122b705c6c6018bbac079584fe546b62e45bf44efdc62a98c99cc43aefd3d7afd24b861922b3c892fdfb2832b581c09b3c65619351988287d036145338d08a2aebe9a72c2c719ecff65f105ea3886966c040b42e030373174c26db0dab1599bdc22f6f83acdbf82a7b81c27f126cd02423cde2af62378789a1968afefbef94dbea830aaaa46cce4a296fc9ddf68ca5e497197d4606f02953da4b905a84965044eb778ee9ea543a2131a6a6b1f4d64b7ec738da27b9ecbc44fd02b1b49e284ced4f5225eb1eb77c85b38a67d8f1eb77185e5e6017c13557f3655a2dbfa998cf0f74836a33bf4124db2b2ccf38b244ba228915026dd737da86c0be3615a860035d5dab6b39dbfeae2c2c8ea8ce9ca844368a12a759f19476fbdbb02b573c977c0338900d47ea2a54d5393537401d9735bd207db55a6f360cb7aebfcdcc075dc49b11cfa256cb28d887b3aaeef770f1e3bc17e01c2112fa662ed1f9b7f84fa4e244118d0da19215285c6272fcae58324c39d43c20cd84f789dd86705ba8ba44c574c3162293683efc1cfe883d93a6ff6579d130822b199ce574513573012dbc0071549997db7dc6ca836bd9238970ffb91afba19727ff0634767d9a32b57802ceeab2887d8f692473d7a43f21c9dd03cd0f22226ce420b22b62f79c93188fe9ee46e1c1ff0f5821d93f062ea2a0da0588115d0530ccb306cc66f4aa63786a68b9e2b45d3297ed932f4d3eec3592e5256274403fff40ec31f766a99fdfd396f92bc080bfc659d2b91bef0a9de6b1f804281f4ba9d941c9445e0a3a282dfd6ba04cb94f827f581b456528a0616a300730433418023bbdee84a0b5a57540c8b54ce2be0f668727425382a4774b45e411b5bf1316f5c76f526e6150b5f96c03fe29378ddd8d1b303a5073689d4efb7ab221027b26684b38909368afd845e88753cc5ac7d3ece40dedad91537e1fc51bdccc5bc4042c11ec04ccbc4f3625388c4dae6e9f51214ef24807d45d75e1c0d0fb5c4c25102a9f84487527b02b7f2c1106f8a804066f284b5a01e4b2b516fa1b19c1300036b15e0ac130be1e1a6c2fab469e10f315eca45cac1b8c83194d4a9a2ba06af754e28ec0298a2004727aaf1a34c5cc60203de6d1dd9c900a654ebcd14099da02003058313a526fcfc1afb26e3a08e146611df1c0ac40c6a2bb8200c81d5b8d6f562ffe894009fc996bedbd176f1c14f9df333cff89bda05404f97055a17abe81f0b952a05aa2aefe0c3de7e8eb728c34ca1b75b7389d390199c17a7acbe1ea59f643ee302eea3cb8e4c3ffa43d7ab15ade5d09c22303e03f498e8f0f41f0bd70450824bc6ed247858ef61a026f2110a45a65a9d7fb76be06ee5082f9c68781ca546a8c150f95f11137d4d4a2bb73815733dbd1fa2c24991c6555229378056ceea0fef6cbb6ce66e4bc8897975d82234af184664bd6ea4d286d5bd35270e2dd5ad59d0edbe9cba6958563ee449e3208bd57db6eb5810556a1f6c150cbca901b42066dab6ff86b56927d263cb6d16d0d6b7c25618f4420ead04fb315ba740c091df2a05537d8a6d8b50ad8faf755b21dd1813059e3493a87bd4ab97a55eb11b28ad5ae3aeb4285121405dbf64527eae6dbaa8bbe669ca84a0e464c3549397480db3ad98ed6cea4d6d21372b898c9432823324667aaa8800feb6d4440efa255bb3dc57af875698aec023e35d37fd23721bfb747ba19dc8a9d31bfdbb7bd8d4a248027db4b65a0d32ac888e847bca00fc81289f6f59d52e3781da4fea4808e092e532a8f54666f75f860d4525004f8d9c7cbc16e3bd217db07000f765f0aeea74cc6f48a0e679ca881fd944875501f5638be3d3b2422f94e9cea1cf739e564662cef50417be9e7a7307959c1f5410a6715fb295b082efd42032e55c8f2eb673931743f780276a76be0757b5964d9bbfd8ee1f735456bf0659b2f3704a59fd8130f3b0b369681acb5d88dd47591b3b5759327f19e8f569f8704288b952f8642f4f36befa9879b972f11c24b61261b20b59ec3ed2a5e2a485ba0ecbf0957255bc8a84600a936edf36bbc175eea676eb49abc19d5f61c800add42cf59ffb12c2170e05f436415ee491532d54fc33fdcf4513313c185ed783a0efae66c549fd4092c150ce38f00be81714d958473faaf92bded6198401669f063edb5914f44ae3bd6c804f6e579bb80a373f18f93d6c935e36ee2bc8cbc4deb857a40c64befa8087c428552b7eaabfd099e7cf1b74eb9287844dc72a34eae3273a8f8d71414fac229226d90860a8b3a935622944137f54526bd58c1ca48c2c0ea4188147f961988b2bed27b56538899e789deeabb57fde59b0feba647c20f73bed9589491a040e5c34befe6d00c7639c6fe2ec6d481a6cec95ddfec23cceb71a02e2eafedecdd8cc452d788ae35016884089b5274526c1d77d90abb523df4ddcbecfd25a332734ddd8a4f46c695c256749712b98ac5a718f2b03dbc59b0a23bb6439d65ec60e5c253a0594b93cd63c39d51eef3f2082f61a4b856e84a0a88566db893b885bc0bf191df8fbbaf9561d777eaa41a7e4da5cc09898aa6907f4e01ce36c7086e344b62ea6f450a16f650780359196d29c5e4ff8a63920e6b08d0d34c9c53a45c436bc23cd895f8b105df71096af0c6cc2bc55ac13c84727006e2770f1e323f955d90ee9988f67bf212d1641ca7e4ce7710e7096aa3d75ca1714c14bca1aa3297f768be85c8114021635d8d80b0063d8559ae4be39e267e627cd75a315254259da8482226f0167c8e86bafbbc235d7d2d59a8e768d947bec90afceefc1208973e60aa499dea806aa991431cfee21783b7e764e83fbe9751eac42039fb16a495f0abcc03843e791c58ce0638c3364384583acffda4eb2530ccdfdcd908b097064b9e5c9c14956d30a117f10a2f08de1ae75cf45e8b34ed5b6c4cfc35bec452bba5c7ff6171d94bb8bbabc556cea318cf9b2b473e285b573ebbd9b9a14af70b767860e0005c5dc933012ca401a07bae6bf3d0990c3defaa9edf4ecac5e542f2a08d7bf80d916af068686f8027a1a5b34faee7cf1b7a17e8517e9f53127500c402df7b9a0600ba1d37c67bca14e51f1a6c872616b6d5f68b6c2f764505f084d76bb310d0c7f4ee85f7514bf9153d51e8a2b27f4aa4d9b9659dbf7dde11e8bf72250ace9438b1fdf6f095e85e2fa37f122ed99801a16eb93b7cf5fae3b306ef8a0ee8cebc8334cf852d6541eaf19e03a529947c13f47b903e61c57090899f62ecc7fbff88dfd5a87e66c0598535f7da2c6d2f30e232a61d79e8dab79361463174de8556e0af49aa4807d4ae29ce0891daaa9a9f75675581b6d32e794b790a22d59a5427a4bed281c49c7eb739db3934ca602f14401b89ab0ec4bdfa2e21d2e86b1af9b5e4da8e76e1f968094586e0b58d9a67c9cb2f2be10bdf5b1932f5fc7bb94dd26624a1b226edf80fbe8a5ab9de2a47a896a2044943a402420116997f74fb56747a1403bbd8a942ceb12b12fc05a2d5d5c752f6a38b50000787b06df8664e79cbf70be8056f4ac3b0e017661da1ab06b502c53acf7cf59780c483e2b23fa121b33769cfb5d245816a406db7a192b51b97976774b2733c12a4a503790e7f32756c7692f4976b9a276921841e83549d27745fb983fb102542997133ca79ab2df3b4dbfed02eaab6aa5bfdbcaba031bfce81e276049fec0385698000ce765e1b36fe4e946be24d4effe3130823d9a356700f63929be3cfb18199d7ea9c2bebf610912f38ed75dbdad60efd9006aae3fb408fcebb17f6000f4f53fcd0273dd63d48badd56730a726ec5a95657449af2e5d4aa7f7d1860300661000a61eab5691669abe99b5435b1930fa0ba526812fd8af75481fe6d48f7c8cb64e7dc95e450ffabc317bd253b12c80d5fb682d046fbf4803a5c78ca8050d3131292b4792ae125e464ab6e3f67534f7c18b358b6e46e52dc001bd7cd902b79370e0348d1c45a02896b66decf194fcfaa1d8c239408bd7035ac98b0cde669c51c0e76db3ca153a00f889fb92332b39dd4ae71504022f6c60b3464e1bd20919a8c912315ec4ecea812f4ebcd5afa754757c6f5d3366548fbbfc0cca95ca270deba6405180c0a14890510196c281bfcbf5f11da8f4ea3875c5b6ece015397ee325bdd4e14230cdab8df90f517b0d4d1d3e1b1a46aa31e1417cbb97fdaf18ca7b532bf674f9da509edf93b824b74a853e11c84ee1ce8bbbad5f660b27f12cde400c005a1b5a85077b854d3927dff4665cd0145bac591d9ba93aa3424d61229fd83b333d1d2d6eeb904c2a3c2c612160de9f8d76539679c21eef5c13a6d756158fb3ea43743a98e2b4ad40152bd2b3aa6f48aefabcca46c9ba07d7c37930ca71ef59487a5b44ced40cdbea49b49c633b77a63f0cd2449adbdfad89b012c236dd975551b50976df1ef2d6d38861c768e5c73850fa508e9362aacff6cd69432c33b925fb2b260c8f9a6982fed661730d531d11783db3339d8bcc8fdecea9c9db22c9edbcc3002866218722a69d58a16e421b31284ae70e3cc23839607b97bba9df229e30584f6e82c97caf97b2a72745ffe7a57dd496758790651f22ee1c5262ff70d9abb923b08959c2bdeed34b5ee87151f684181ffd5abd9ecd393f5f3dbd660f2a6d3095a684a0cce149212f2de9528c589976b72062e0da2ae8716ac6cebc183abe011618538c0b912409eeea7bf2ea9aa6c2f9360a8ec55a6c0b6fe2f241b547b4fec247e2659501366dab5039b98a066558287bedaf084774220c584a3e17640f10c03941949699cd6b63b809818859a55320630d6f4ba9a0233c8994e6bf1bc7e317e18c1a54c78a2f9c4629d02761c6f8dabce3bfd7420d4bafa2fd98b087a587307e3a327fe0afefbb8ee2d876440d8ad0f297e020444311e7b832f1bcf4d24c875a173d5dff7fc94bde203e552b48ea93e7616b1a23d87df7d069fd624bc1bc2f5f69ffc12fc93d434606d58d0aa1ab8adaf746d846fcf205d53e2d6ae251ebd3b9db2280e565a78941a943a341550d12793f9d00aece68607db607a47ed64378373f10581cdd2123e75a2f17e1a25f0ca321e5e905d8be435144d889f8ac2e06763d4acde3611168d40c329a634184d0d5441f730142297ddaa12fb4ec04f09cb31824ca6e9cd81b73129ea37f698615400182c5486bf63552da89310bcaace41504954edf0cd5808e808a6857e401754dc73bd458a189353ded55b75078fc24cc6969e95672a47bc3f921cd7cec0348e10ac3dc9e9b68b68f9f8cf268a411173b6131bd6acbe7d37458d12670161f200674ed1219564e0743e8a619edf3329735160ec06901ac7504d9ca97127368667f2881275f9ef9253eb8d8228c92c2fd594bb97f7fdf4c8f215d7b165f971e3d0d1f425d14415288ff84259d5573307150333db967e3a54f34657c883920592a4aa57708a5181c33d107d8def125ba6a97515381ba8ea7bedecec44d71771a7b7975dd9ce4d5ce6a8662926d16be7128913e5e5d5d8830e3883134b6a0711a9bdf6ef6cd7c7bb1e3a3e2425bafc8d3b88fb7947514218878069fd65fb34eef1439d49111990928d0c5214e34ad1a2f1b940f108c6344fd11751ad33cf73679de1701c4cad24c32c3c272517fa902900db0fc75d968b008acd1c83ac339396addeda54e534e7f9504936522962895a9ba9139ddf22de9c45b15bf5a97a8bcd9bbc42bc17961e587bb7c5d9afc811e8a775a8f3c7d4be5a0e7bae370e559b8a50b24678cc9fdf3f2b905ea7dbac6fd71f59341cae949c5a89db95272312ca72c007afc5efeace2d4d21503bf85257821665fb7ba2a59e8fcf28927c966809887e7d5d72c239b245d45a84ea4524f4ebfb695233a54f6f6c5dae003345b8c6035a87762e98b9a37f8782b149d6b0658f763a96c7a8cfdb64831012bbeaceb822f6413fa2c940f63e1319ca2e66384a7de0c513ea3385be854201a74b67088b5ebe2d6a62c27aeb2fe0aa8b3056f1b81670691d49adb3ae39b092953db330a692da9cb3edddf1710b956d34f208a68a69784c553f4715385c7c72508d276c3c3d5b5516694cdf3e5307239a6942b7d2c93bffdcac84cde3bdc1c0ed455922ddf56db5e8507807109d4ec5142c715659bd7fa9e528c129d640dadd906092e5894475c49a3a1c170c103766972cdab59b8dd218f36c018fd8feae01c59e979af5a21ca015a947ee17a2b97f1c6194734cfbe132c98ad04c39e225ec12eda77838b800b12f67ad56f266e767942b6f621eab75e12da3e521f8c0193834f289b2156af7ccc473c820e27829420785987b8276810da25444b9ed7c9f7f734359f14a70a3595b509529708f4516010c88aa70c1d51d7d0b4f2e2d47c2cc802e21044b9546324ec160ef2595cb37d9f62fff24b2cf57dbd5d319e5c42e2880d5b70d8b17e1288dbc11a3050fae4a5e586574c7a8a02e75d322a4266693941414101d18c9c2d8262209d1b82e2d30f35384e40eb34fe76913358289a2f304c6fdc671a4a504b4448f1fd29942c148e92b8318deeb767fabd60822113e575ee664ff09a1873aed8f7a495793cfb7b5a504015f3a9074c641e7371b250d867d751d90e4a22a8ac17fced3d50affc4998b97bb644acb07c55a4dade3bdcb89f6f82d6c24c305d68858b3dce88e1c5e6fbbaa4b78e68571619e67254f32655dad584b5a8ea5ffaaf8321e09292366e8fadfeb16e310bfffe0a06c31ab1c80f1a99d8945811fb2c426289e16dd053faca16150492e943a43c83e6b3069531dd498ef15dc612fb2051b88f7da83afc5764a3378f017c826ab55382386c5e477c8c8d34ff026cc9e02cff10f2a23bdb867644cd4a20815b7d8be14902b594bb6e30a81ea159aa5c67f24212c92cbab6c4de0767e791f4b0ec314a4e7db00ac64588f1350c2fed0a794fe8d988277d5ef8d4c35abae00f459017d39a7b0c3467752717f3d090f771492d139ac83743c5d8ace951e06511667472b6f2ab2b49d549684ff3724ee08c6d83c221330bf3050de85a124712e8d11e80e59e7a2ba4d60c213ef7fb6b97416915a8b8c3aea48c6aae3ada79a380fa4505b1a58e9547222402b88c7c8dd09f2837e889308c5c4b2a683eeba8cdb9c0b6a2c45bc0159cd41370156c538db4935d8e1a00c4293839381baa681b9b6b5d5a452b811ea05879df0db296216587451eaf162e9e16a8fa8d273280f282bf9e810f00ad9905977161dec3f103ef789892ceec8c453e1398ff487485f1e1b56fa1f4199272288f9984956b9f6b33e56a88544bf87093284d9f7be8ebdfbc054e736da7f0770d3b1a3ac5647cf5e39246ca6b8421f6a0868fbb3949fbeb7daa963d8d329aea4a1a92b3ffa437d8561007321f68d161f6dfe0d19c46b783e6c367dde74554ef3466be58678c85a59de5f59a8b6153d75ad994a1a24c4f5159937807e516d34ea81fe5ceb642bf258ebb872bf3092b655add9262d1950e9a445396367f41bbe919ac90a6d5f1c84aaefef8301e1e3e5277b78ec155bb9a4ede6e995e1cad2842fee4a01f91827dd875e37c5d37a3990d15cd64e2fa78e063917dd0ce48e7875fc4271c15cc90a85d8956d95ee511ed3329b16535b6df9e89c7df515e26be18233fa863091752014b93de171f920840fc7964ed4455c37bc5982303b58c96b9ea7d446f76387856b9fb468c0d2d3c95dd96bc688c8b66ab62a09ed42e8793c82edbf4a18ba4362891f1ed91026933e1a6c8cedf1ea2ff2d3576a20f87dadca8b45de4b29c812d39caca1a2498e207bcd39ebe0be91b8a175cabbe3b9b1ca9cc2eab3588d122c15eeb2b8680b21cea785052f59742d3212491166ef8657026f2bb2db3331cb397a6d16e696620137c008471ce23ced65a437336762b4e795389f5bcb26461e5c940624567f0f880eaa53082ff6309b4477d655ddd2c5657e83a0761700d6706f012c7365f310a6b0a6696936a106d69ae18801e22b5642bdc9ed3ec44ba4f8e858fd298fdaa07693c58e5d49cbfe4b4950f42906d3f5d7be263ff12e68abd5ac9e98fec24d75cc8d570b09d5fbfd59e11c1ed5a65c98b7dc8a70bc0658eb8bc0d34bbbd55a9f53ed801140d47f6ab4c08e41f8ec3bab0428999e00f5c5f967fcc00bb4f7531d512d8bffb92112b0c0cdd010647597ad419ce1321a1a7a9f6844018121b455029cfc01b9c226d38b7f10a83ea984c7f2af92d7b6198e82e97f29b163d2a4fd0b453ec26e4277932f7c6609fa2c579ee11b6c2be5a24309033334d26c59ac23cb3f566cb04e7ec933d7813647d95ee1a82d241dab60a47141ac84bd8d694f07ff0398404921988d663226644e8c128a5738b53629a7d33382423c9a759018acfe04c0828c411e8606a494fe23706fe92516f1dc3810fb393d02d88274d6184b82813c5ea1d1838e519b3bc6e9850492f8f3baed52a4d0c29e3da5d1affcf3696bb09f8f93803c95af588e73d415a4cc427d2b00ea94cbf2c419ab0620d3b183d42fc6d0a9a5b82ca7a4728dcba372c281214a101a65b542b3f8355bf4cdb32782010cdd8a4d610c8118eafe604a7811402ab4d254a23038beac454e97d3ea03a7f96bc2382becf4eee1fe79e88d3a410a09f1a33271b36aad0e8008a40c1adfa18d12ef4db0a691f96e5abec059cc47f71b3bb44b820b4b6504af2688038e19dc8644c985993046a66ddd07d4ec4f83151659e7b97dba15809283a853a42ec0f7e0dd6b4bf6c47238cff59724122fc05346702ace84b08d47cde83a27e410f7ed5c72820b5c5d875548e963e52309e741c413a2d1918e6f8e31399a350f98b5fd46c38155546ba6e4d1d189cab7ab4cf256d011f62ec43985fadcc16a995e0acb84e70b3ac8ff52f84969d7efe2d983090d0b4b0f47f0dcf0f5853b830808677005b1af9d1f954c92771a812de1aaeaab05e495f51bce83bf43fda6868be33ad1ba508f05f137c84753ab260b706d1840e4b1c2887bdababbe7341de2e3460c9ace4ace4a161f88991e71d11375134aff8b981eea11bf7d3eca9d7f528fbdbd351ec5fb9cac076e3db0c7c8f1604a2cbdf9a319c9fe2b03259811603e2d56027f2bec5310653844e6a4f10ca349c2024ea7ef12b4f500b7c4a5cdc8997b5a843caf992fb3b4704bb4d8fde974c06a5972a01b35c006499068667e0e0f10770ec9cc2bf22057c95090f93c597496306be62468a0d0d6f6cd22f23a4bbe915ff6f5a24ac7f8c33533554d04fbdff9be02bdd5420cd4224299523698bf5047335f045bedbc9d7286a0c5947d68947b763677cffbe7a0febe347b0ebd01727220e80381cf7dc8826e6780f6577f60680027c511fe2e563a1568b1fedd9b91171b707a99a000e4a930291d6e24e9782d5a3e04c365fbd472525b345e9840fa1b44a6fe1a603f404953164376235773004b20d2f58f2587bc958069d2f7141a1cf08e86206a1349de24aec899739cf66723e1a6a3bc7f59cd636b066c3a1be540fa02047d0d3aa5b7d6fd372804b2c3eb11072397925d672b1261084d8b33fcf118f9531211b9f91297f625983d6d268450fee3f80459f8b5e5e09114fb9a924baca04e27e0f59b6a98c531d0c3e0860a0ccd69bb9f31d5678c9ef182232d08ad0bdaa11150ef23eb2f8a828b3ebc0ce8c04f23453a63e0f9a0149e4c2222e9e7aa6f53e96d27d733209c1304fdfaf173f4fdefafd81082a0317ce8757ce10fdc2010125345ba28ab03f5fba8c1a041ec86a3ee82841d03cc5e1a6bc568ba020a1de85a841657624c940f7faccbc13933eabb2fc964ab6414a69c4fe465061fbfbd775d02091b525152c0c8e200074642613b02b520341722d8e233795b4c6008bb066531832d6f5764dc479a4c6365a1339386b5da9683d3babf4d34a7a71d33e6ed2f483ba1fa205adbbbf994dfeebfc08d466da93a80e84c1b170fc702de95f4ed845db09cd4e912bc90c7a44be5363e2103887f5de8430c789eccd4a9010dd4c9fe96592c85ef54065bfa9f203356d2589d8ef16ca196680336dcc13b90663f00348e2605b158c9c8dd8b72ed98f9c7e93239be52155e9f0d16da88854de18542cedd6db86698d50ade7f25d4338b56a441b50eb73753226ed8a640bab453ba85122b9c439c93cbe6a24e90f1c312728079d1b35f2e743dafc92b518005755e2be5751f69cb8073f36a6e3cc6c8072fd3438a72c6d1ad034f8744d8236a9353d23aae273c7b1aa776ab3fd0d18bad7f0ef750a9d865f71d25df46f91156f3883988377086fd5861dfff69cd67365b46485721608569679008d4b901db02c7fbe495c576f61da51cc09a711a41de5a819f36e06c5c9362460c4e7a30f389e1e0903678158525685e2e850af4c2a44a66ba1087a1b27d330d7e371f77d2cd10b4078257f681adcf4c8570eb2246e5ec8631831045fb220f85ae9d75fc4a5a0e6ea5efa9f21cee47cc3124fcecfd897def3360dcad8c13508a13af28e314275d487a95797cc69ea152d6f537a59f9b3b5d6a7e42dc6c629a0e272715462761a4394f5b091d3657e964b708f197fbf656d0b8e75afb41968792009efe0e565d61d9db6ca3bb1f5c77a55d47955024174792ed45293ade6c5682985d85457b9fccc1dc4328a19cd7365265e4e14e1097fa10cfb02656b34c449fed37ed49ac26a8d091d43e5cb10e99703c570e560d4c6ea33f774c1b9d9658e8bb443bd5d0a33c1a83d77aefb5d199cc76b1a6f81ff5874d7de57515bb6e5c27eff02bd1bacda0917325d4cbc0736f96d079e9581561c5366a351e88b79e0fadcdfbbc437fd3351b89bc824b9d72a8022fca78c0973cbc98d330f4c3a26259050b878750cce33e795f79255ea332bd8f80368f68d73372c5bb56d462d5b66fc646c5263a34fbc56e2613e048248ae03daacf7504a4f3d934522dacaf5f59853a5f9aec82ff4606a3743234f7582cd59c2ab84ae0c58dbea03700c144c38d3535159d6a6f416f9f067334782da91077d02020eeb1472556f90646605d4e34a341fccd81148c3a0d2186bf043bbb6063748c5550baee66987cd796e7a6801daebccf6bbb3b673b7259add2f3e83898541179077f631858241b7ff815337f417dbc7ec41fb5b9410a9505f417fed1b5781dcc1f59aed0f29317e88356de6f04c4e0ff4d6a3286f8cc4648ef86ba46be8247a19b80fc9d2c0b9e5ba5d2ef806626abeeca2b7c5746fe93fde3e47db58cb01ab4bc155a4a750324ac1151ec9b2f1c67734e2d0dfde2f5ede84ac1cfe3ffc6eb0d37b64545484246a66ff7e723e74e5b7672844b9243ac4e3e887d0bb45fc57a5b03b21d35c4b4072837097d565a26d074b25572831ec214924535de7204433d56359019b055672dd4de1e428a8e3c7368072114cc82909e30a29ee489db388feddffcf0ed929933cfa373d3e71ba42796b5b48ab461dac30f7afb53285903a8b6fadc9e87d1a335379ffe3658547635904cae6ccb8b7d1e578d0c25b50aa44db04acd02391f4eb712839f817b6f146ba87267d3b8d8bd6da7057dd62f22e769153efc40e0104023505484c320e149700aa4514aef93b7edd57801209696d097c77c952de28280b18d2dd98ea511a8df7a1de0247a7e28fc708244cd6f2b79c9ca1dad5f65aa931fa76541fd89d29c292a92c96807b65ebf733503229285213412a631f4031ba79c3429a1d68c1b5174a89c1637efada83142f9d9642386b1e8c83d28c75b186ab74d4966c8cca4181f4736b04b757bb4f7547ad91e149d0cb3b870542733e2b7daa66ef6a885eef9be1c9a8a9bf529eb8f28138ef8136b70cacdf712a2e2a0e10628bbfe603c69e753bdd1eb622212b0ceac53a0315458b1b0b557f9f3f7defddfb82e9446a0bd437bcf6d70fc53caab1b44296b5dd24067549ed8e2eb10c9870565adc112d7d3bee4f895ac117702fa05f6f11eb233ede0e917baf5cc1a8ea720b118c11033c769a3ac327f9db316773b236910bcfacb53dc1b526e05faef4c9618de6218c0f3c64840053f2ef07d10b6d4549235111baf778a704102f16b1a8eb6a6a4df6f10245eddd7a2e758a55916a52f38c64d722ff1edfaef65191ae27abfd0da57e99a0f463f09750271f16f581a266fb66b8426b4c76a38e31da223fcbb0a39bfadd50af42edf5aa9a98636992eb55fa1f78ce05a5b4c6e22891d0177be0dfc5a46f95462e6e45838f28ca671b844caa7a28ab6404610543542be0410680efc7f3e5587c79b19c1a58138d6d6f871b8ffdfe05d39f05e915bd9d4a617ad27c14c51122a964c9c668ed57122b2773bcad261ca3cc3ff95b85dcde20a9ce2dc389c92c147e937acab45f642029c033e7bfd7b469fc1574c469b036cf2b7e19aba47dc9911516a99d51301e234ca3498047f7f71cd75566362bec2b70e26b0beaf4a36c525482c5db9becd4c7bf9263e29e59b4dcd5e47ab1e8154cc4e0ecc2e444bbff1699cee779282ff148fb21a33a45723bc721a6002989000fdc4ae1646a8783af70e6edd5565c307da68678fb17e9794ff69102da173bd3d4d12cde83fddb05a65942f38e1d6929f8545635cda330c06f088fc1e73e5c0d220204acbd0de33f8cb9dd4ca73716cc14036f22279a0f77f4f45e9d4aff4cbc47d7efd8a3b096240f14813caea157a5f6e939699a578e4dcde4674229d94422f6b6c22a90adf4e335530fc451bd79b650cdae4db5534cc946efae97ac2954bef1e22385dd0a3883c3d68df8f4734d7b077b70ce59d1128db9cb5c87148122a7aa543fcf39eed340183c3d38ad2e59d0d42e4a80f6d83c5431ad94d99144a0a6f8c793b5a66cb1eaad2c9e5911d17d2f2ea092103a9027bc47b06c8ea2756421fde5131977388fb0c66d7016885eab1bc85768c8c16d8b6e6c2d580d219023c537d58ae2fc6d71ca2db19e1e1e07c9529deafc19abad575c125a7586034685f7d975e70abc5bdc197cbb2d678ccab9fac7ac4f4f4b2c087ce80241a10e511a30a371917d6d4590f6295c476cb6ca7db07e3d5e3ca7ef3bfae2e31b089849db7cbe13fb33bc4f14f2f70f1335c13203f1f3005b035d81771dd8ccd65742e56546dd5d49e34fd2a512b0a433c3f399b42b6f6e94b4f4faf178a1ae1dfe5c2c7dd9978324199587ccf8668093cf7be546ee2cd503aa19bf4353ba3cbeed2bddf1d7de896f0e4cbba00f699a752b2a85877350626a35d98a27132b57a913364d65134ae6172e35aec7fcc134295c5e6ff64df6a57927ed87c88abcc6bd7a293d259db41f6a97f526dbd8ec971b5eaf8f64129110087850ab882f4fc009a909e82899f9370a23ee4abafb60bb6c3c14d8892761752579d1db586dcede95bc1e637629efa9c173846f67901dd6f9b58cf4590e0aa085e4069617eb1586e80fd1ee7bb7813058ca909150f0e8535b4d70a34ebecabdf40e8c9e3b44819443ab43f1868ce7818edc58183161c844dddf323048fec4bb9836d2ffe58d376b2c38b7fbe072d0c07d26321d524056e3ae1e75046dec771f20bbf87c2ad6d8b58de46d71276bb8b0088a180a58bc18daa015ee7eb21a2b456cad3c52a9cdb03c43ec1cba6277319af0b882d3fe3f82fe2339617544e24dddfbc44f87f02881c6b7441c75eb7d42868683b4d395007c997786989467a78212337e9b0c89d9d81aa7c92713f6eb19e6d6c63782f5a34d503b5fe998e72e2c0d8d063e897e9836e09036f604d1ca7708dbda7654169c499257fc344853cf567e11545cc49ca38a0d3368a3ba02e8b66046616391ad65700dc6d266db6042a22a2f0ca9288015cb89222668164262bd0743f48b1602236beec40a8aee313e3009e376d9b29a3b39193a4e584cd938b8773fda7efbfba1c3716effc9c8336bcc195d307fdd29b40d3a5b25166fa205a7fdd3225babd7882597479b419af6999b07b90ea6f28b5475b65f647ba7aee530a00620b59cfd328dc8967c48011293c14740fee641ed7a507f5974ad447c59d859598feaf11fa439dc050cbc97debc548220856711a7340c9cb24ca40c18c09c44f8e006a785ea9ab3b4dfeb84d92a583b1272111ffeb8350c1decb331d05cbc2774f339c244052582f3337f4c01566fbe42e818476342ea13eaf33d280fd2bbb80a214d1d77644967c247ad7d8a01651fc265a1b8837ee2fd51421786717007713bd58c5468999f12d78b66dc24edb93b717e11fd58088aee3a88e94b7310a97c243b50a36586282a0995118dbd043ef1d1c41ea7a7085a29529875b081bf557a37160a224af00a99b33b4dd987ce5cd06a2104d1f67270abd0318212630cbec1527e656fdf3cf85d0ece5f57abfd41477c4f1e65a9b9906eb89299bfe7d4f2a716edd7509eab7bdb56ab3a6790da66ca9ed5f89728887c1b38b14516f6b98c30e6437bdc06b2faab220d461e59c43743b19f98a890905f98570c91711b6fcec92233260582a1ca04b402d2dc31efd6745ba0d12ec37edc8a37390df2dca3a78a905a3c80ba254f46b26e3cebc30e2e5682c518c4fe2dcb38389d23e722c8ae351e88fdbe9e3ba099e51cd21732356a4bd5ff3f7348ff8f24efe5e440536a7cd53c913278cf767f1830c16fa2b06a8fd13ef194ffa07ec6e4d0fdb0009188e963fc2fbe686f02a5f63780af982b3b561cb63aa92243961d5ad9ff3715fa1d6fb3ee26b5a5624cee10038a5484ac56d79320b3888bb86a8a30d0f18a845c0f4850459b032c4ff29279fc440d77486e682cf7faa541c313e8a36f6846a47fb2f49bce0546a1e88805cec954338abb1b2ac87de042166e8e3a74b23261ec204f93d9f142358feb5dca0268b8375aef0335d51aeb697abac8e2fd8e4e19147db0f42e713ff8b771b1aced0f8c11866b90e895aee53ca63e387bec78d55d3231dfc251bf509f0684e073a65d6bc3ad6719f086ae26e9411ca671a1a1419d0f8269eaff3228a54fe04c6f337005fd0889b83afefa1c46c1beb97b9caad8171c9a9603500587931f045c1d1be735c6eea0f24c82d966360f9ae5ead49ebffb222f9d0ce45ce75c51926b56259258d78254b17d5e6a87b6dddf082f228651000ddd2e4dfd9a1a8fc7d7d1724ae49f7b38d7a0661bd414f833bedb803420e95fa3ce8db58b46478c878e81172e6087a61af5668ae23684056eb127548b122eb408c6789499b7a8ed37a0d2807a2a4e0c02757bf25c58f7c43393181cf508fcb028b4bd7b09eb41d478ff360f4411aeff332388318c03203cb6804d5249e73ade11fa1097f3979dd1e99422bb5cb02a050a775651de7b28f97a724938ef9fbfbba71c58df80d04c48cbad49ade4755fc668411c82e323ba9eb1c6fb720e0a9f530466b97d9d657f59c9766f6ce24bc0970ce0474fb0a86fe9600b6bf9739e1497b3d4827aa153b9e0db38f979fc2e80ace4c756825f38d0b66a1bfc0d03eb30bc8b07bc3c8bcaa4b43318c43e588e36258bdc6a80848efce51158a274b664be7bca5c16508676538a80002c6345f6c24cae044c0fa254bfdf68d7be177842407ade32f4184c7c43912062f1a3c6782f93f88c15a70a67bdb17e3d6f04fd092444816f88a098454776d89633e555c3cd091689a57f0ca20a51cdf8eec09012fda02dcbbe62908811581073a2eb8045ab1262fb66d4196eb906822fd284cda00e335b87cb4f37dc58b591c9f7eef2e2e04451440460e34630aee2b3e194a4754a9ec39cf41532afdd99d925cc92a7605fd3c9ec9209ae5a117c6bd3005f164fb91677ecc364bfca86732b898dedc26c582bbf77901e80924efea989f0eb6786b3dba8830eb7ff597c29882a406b49bc0588abfd16122d226d8349dfcdab931b8583890497af1166d431e5178dafb3d58d3f62839ce3a462ffb313a1713195010cd1cd91db86e8e17f20eee1a02ef07f49304e1dc90e1821f424a8810db89e94c9ab560bf48c1f7963f5a84b90389d9fdaebe3c68a2c59ff093b06eecf3ce20c3f212b67b60297ac3521213e95f1e2f9d1e8987aae007a3c35eb5c9589757bb25e3b1889f6093e973e173dc7702a754336eb14a38d0d4d840eb225b3dac1d4986ad3b4d409f23d7d29324f831845c8c54402330db4b1d4116fc0faa7dc2054b8af6a94b3afcbf9e85e3fc45a71da2c57d769d0baf102fb19d2ea5731c05a0f3ed8c1bf8f9169cb57fed532107448491a8b8bb9817fb55b1d534b579b74027f80ce611a3dd20a3cf9d3f32c9ea042479b45befe51615fa77d13bdb7e6f59d06add14baaa9fefe3e95b44af9c9f424cf57dc5a1916ae721c299d9073fd960d6590c3ccdf224759e991407d14b54ee0b0cb11b309a9c4b8afa0cdbe2d01ae2922e7f9e1e938465356cbe4fb790e05d36b43259ff5a33b9539f913092e3b48e59dca7aa4abcc369915c3ae8f74188ddd1fae4225359fafaaadf1c653f0d07541b02e4428a7c9fd5d68cca2f4f16373c0da9eeb042f43e31ce9eae23e44750879da63fd867b4bf0ba93c60cebfb40ab732ee8345337f4d1810b95554c930fecbf971029c065b870b7085d097651c572011dab46f98bdeeba205d50a4ee8093124a3a39937681d2240f124dd8b4b7f96e8c77836a26a1176a3beb6e6af94766a7035b98268476cabaaada97acd03444b9d0ae28f975c9d0312f884529020c7cc1acdb56e4d253be814ee7b2e7cdf8407f059f5f4de11027a9f41399cbafaa4211bb2c4a42ad17a5092115ca177f810fc3971297fd003e85dab4090b105872d1a0d3300c4df95e6c8a019008e5c5c054ab16a84441999f630a200af454414d4a8555fe5ba8fe5d5fddf26adb39db359ce311bd5644aa18ac0bbe6eabe10f8f94728df0c2bebea46c47a9558575c8a0dca2ba34c2edf01a42a22acdd9d0b555e5d54079d1cee60af3f54fd1f79a58926eaccce2a957692efe156e7e504f0e26acd150b88ec52901f7e9ad9e65049f475e0086a9c21ab4a34de06c39b7a1844ca3eb133081899fd2e0b6d89e0f3d1f8207ad820f39070bd63aef8996917bcad5016206d9ee2ebf9eee94cbe9be15fa80ff7a53c116bc4273eae33e53f2ba531e7a8f80a66e33e0993fd10a0d9ff06934b4753e37790fc7a4450ddae7578c5004e3a40481c1913e3c212d725cd052bfa6bb9362a78cf071ba74c620478ad73fdcbefbde584c57db1ba940da75faf5d9435bc5413ae50c4a8e2c8109b0b992ef13b6a62e931dd4495332d4e5ab5f80717cead324bde332dd5363c7c584571ddc2b3b1e1704d74f34ab1b7b2d2c8d958202dba38165a943483626289129586fbcb43eb88fd9b38b7981acb22a9892975918535ef8768af53ddb786f489f786b5ccaff7f8f9c85c0ddac234835c91b2abd1a97582e8c2e4bd6b35873dc1f2ce26fdff7fad555aaeeca819341157b7d465d1e7023a8f404ccafd6ecc2296c8270a03b04519febbf9689f2fbd8faa1dbd83334d54acef5bcd7dc884306ec601525e3053c5820b110c6e9a89ede73b894356de29d4ca3835fd6d904e9618937b0e4a1427edfe784b04364c6a5a09bd678b88e0cedd435bc622519a7008c841db3389876962cc37dd43a8d2b940cb4e0a1251b48a49aee75a589942a8acb93be7587a5f3f95b41fa3f21d8adefa8601fa9c872227c6b61e77029b577569a99de842d9d74416613e4667519ce86d10ccbaaff15c6fd7e3075eddd8e41852dbd486b34c345183c9374511e1c80066cfceab0c6bdb72725acc726dc10fb90cbdf5751043f6552ab13dfba5a850bc7c0899d728a04b719d1d9115a09fec22560bbe47caa7b366edb80b5082ad4ee9b33f9f4f8eb67a1cfef3bc31107ab62d92071873a7a7e06b6412f313af45624e88372f4d516913213ab52f22375b714f17bffe5c5048f9fba88d85ab957f8d1bf0770caa729c8e117bcae41a38343f3a14a415b8ec55ac4d041c6774c3937bc462fbaa72dc8e30e3488cef2f074dd1c584617237a0dfdc9f8ea91082030b41991913d84f53e2961d183ddfaa82b4e2ff8f932eb8e98dfb571b2308c7b90d94ae24489543c5914d67582bc30294c01eb2efd7376fef65a8a3b418efbdc4737e304b002d16a9d34b1c7646161dda08cafb775e8168a72519424df26955b18923953032564666dad3f81c8a43cb8fd103cfb90d8dabd00135fd0782044eabb3922d3f756c6d27f9f2adcab1e2b289348c74568c4f6bee6864f1ac97ca56aef2a22bbe4423a0021694d3595736999a3cda88911a8443bfbaba976697d14732b89535182054d85e96ff9ad4105465577c10d4100f9a5d81ba5915d45a6591812a21c7d5eed3acc42c33f6e47240e530f05c4d4d6f09f044c70d3764832b34966a28b8a18cc917e23ddf4826b543e76752e718cd7eeefbef5593fb7598009e8887e2ba09ca6ea1065452a4c7d7585da673b7c840394d50131c28dc1b95260aa0efaa3da6f6a3f1bc67b2507afde489106f895c07553723f04cda3dfbb10ec03b1ea68bd1a2905e1d4a946404c213dcf8419236935b428f7d84fde30a5b992a28c30f1cf56d3b41ad9b7f5007bb5dccc3387c04fd39e4387d478904264f75dcf2c97061450d715767d0d594bf0cd46c48c28473e2ad0a280b33a496bb94880cf5ef5c6317a43fd77e57fab3c416a5636d019fdeae62b437e0c07d8cca614ca134cac9999204efe10b1455ee3d77d6e1557f20163b447cc55ad9e28d7affc9c70bba8105a987a1682b95ae37c77c63959b00f04a6b05fcf7203c74808202edebbf9d78b1705f266f986a2c895d283528a00e865a8fd0a8d0ac5a25d412965350523564f64c777c6dcf961bf3d3fc9be609b44a6a2441f283625aef09a27ed2c1cf4daea12449c3a2948e104961c6b67f99abaed8c22e7e6817813b92f30098e44add1ac8217d0d0888bf1c67f9aa69493145ec55ad5b84aed344879791c82e39f065f39b1c8ff47fd03e86cba2c918b52fd0a23eeb8e79b527bd6ced12d09a1fd1b21490f17bac2aad45d494d573dd9d02c9d1616328ca5645dda4c07835b58e3b1a538a0731d21e845d660f26cbab2688d0689efd52da2ec6a49c6ee1907448990efa98c9e3cda53cfeac9550dd66602431e9a865ef9d50bdcb10f8e1155df8d75ba4e7f2d159617b865fdd3f280772e29204f9f37a05fd0ff0aa2d3d5b0b16545d16c34aaa3ead7d07048b81b1880ec89ffa044ddef20556da8cc92aa897808d1f692ea2fe02a58d523e9daefdcd84418a52a60f239479f47e28436a53747490d5ff592911bc75c499bf994d3280f53d130133e5ac6c36566c7106e317172f9b3cad701d1365dfab20f275f8a0147630e510ac9384cd82b4ff3912c99371a2ea23f091a8ebbe6ebe71f86fa8d65e89e2e618f1bd43063017d64fe8d524519176bcba73b5892de6605e6c40b151820e367dfcb98cbdb3f8f468c5ef2bd8437df873bc281094226ed130e2ab26229609092450222aa4b7b33b8867802d4632989458ffc7985efe9a423a8eb31da11351ba6bd7fde0f024a01a7bd41d1fd2fc6529ebe8dec4d84ffc451e6306cd21973ade0f7da028b3a0ab8251f354172764c512882b6401512bfbad3fb8f265f6d2502e226c4e203f97a330f33ec35b6169da728e1ec1a9091e5fb18d759d469552b21413adaf353aec4cfc3f5982f67e3c63d392d1ac817a8c80015cd79e773586741c40056c5c18e792f65749d2fb79a6c548d619e4d0c936efb875b41a6845ef2b03960cd641c159e376a71dd5aed9ecea88f4aa12b4d7c43241eff4d7eb62665dbdace8258ac00ce98a494e32ff2aaa28c7ae2ca926514ef4f9044897df8c1fc7f8fc09c000b8c077cbe171c6b58a62b77e71a0a15fc1b254f307a3acd63f45d9b154e04f90bf320d1150562eaff652879297726440ac125a43ed217a487fd70a252ecb9d9d48ac893b4cec767cdd07d8bdde99c6a6699a60879445f20a6037f0db734deb9ffb968f4d78f36f9658d01be9638b127c5dacadd85144c931c0756d63815cf4a9a954c928bf0f07c398d7f7d0fce202d1d01363068bfd5f0d11a634c799c7b2299e9282c337a0c37970338b7cf0d1003d3f53c659c0cdfcdf5e0b872a2d843d37404463d2e5ab79eb2d3016f2ef7e9c1d52f673e28f777125359af48bb76d064be8e6c64383071c9d258774fb4d4a6a3f1015f09d0427c99ffc42e4141ac52d63db544406c93c7d6741c36665053360adc0b6075e7ea8eee98bd8520b2d3a1f02cfb483bfdb2d053a7e1dfb8c0f55ad6e29ceea2e32cacf32ed254c87734ad17899e64c83682e3d3e8a050b14c36fcce25c443bcf5828720b15b9cc65f5fc68e8764aade42497c1a7911ad83e80d665d926d1e4a320b8f98add36ab049ad5efb116eb57a8bfa4926d0de25ae0d51c50670aec154eb4c858ef1f0cb6fbed18ab801ab343868e24cc6a3d4260ce2c19a86c498e97c0a637902d25031f72ed6b5b4931b2b9a46911738e8938579947be4017c02b6e863ffd921ca1a56b111ddd91468dde81011ffc870de180c84e9e2e0173c796da0d7537115afae6901e80f5aad6726921afd5a3d2fcdd6ae70a398a16ec6a2c5fb80e4f52d7362e30efc5c45e7c6c6d67e20d2da2e614d9a947e20e74ad59aefc2329d6d5f9bb5136efa9ee00022aa5b991c68e80e2cce8dc148aa3fdd8fdd6a1ee0562aa0ec8bd036364c44bed0cea29733f2474bde6150fc742a9caa47c16353b58221c9fd7663f90cdf8e155ad1a990887b71e295a660273b6232a7c06c56de7bf1c3ba1def81834fda292c3e1771c36d01c7d2085106ca80ade1639b8bb9acb49d84da72152c35dc207d6d2be98bcc2d807727b46a162ba7973a767d7294ec4c10f4cbe605e1152322ccc5732f65f9c24eca25035c2f363a78c96e5d8413073d13d0af8a286a318a73e2d17c651eaf189c81e10f0cf0701eaa7e558422a0ae93481acf76e3e696cfd64f5a2aa6d0f980d3199882d0eea72c6e075d63bc01aa9507cce3c35dc8236c3521599bfb1bff6913709236495870ef86c03e884dbabb6d0bc16907fa0c67bca6b8aa5dba75c3e364cfeeb7722a28ae52f2e31823cae5321d82b584f7cac6f06aaaff055bdd2d06b33ea9bf423c7b929d0b894b35cb9f92b1b8e013511ac304e672352dc178ddf8786f1ebc941f1c7794b175538096547484608c5f898a0afa0c5f86dd5e75f4a6792b15e23d0cb48e05c57f28c3ebde8f76d0b816accb36daf6b4b59ca28aea74a2c3a8e4c93f3f4080dc0e3f527d6c7ae2eb018c4665542d12276d7788667ea3f6ff8aec0ff7affdb6fe31571a24580aaff1a79f266cf7c25a784922e46e1c9195c518b3e574f48e67ff957f385ddea8ea91dfd7080a02f37272429934a8538922fa2e64e6137374d5c047eb319a61e211442af30493b420eb9e721a1eceee552258dce0d5a26dede43103fa00553679aa045c81b6a1d7749b2b135b3d12e1fea85781e41ad258823a9f69849456e65da5791443bda8a1752657a33eb2914eabcc5d0dacaf58b65757a1afc2177820c1cd419f076b310cd68397492c61c2a615b0bf23c8f0f93bcd3ccb4020df7b92aba40af66235e05e924b80a98eff275b1e18b3bb07a49f558325435d59ed1a8e6c3372f3e1e838af0a9cb7484c4524c496b7917f5239f767c6f73e7deb5a826a04a653ab27a2901bef21d181cf2a88b08f1990144cf77fff2e0f623e2dce4279e8d1b626e9e36adc75d5945fbfefd9513daf88bbc4fd421b96f758a5e8116b7bfe86cc8348827b3f3af68586dde8e6fea721abf699782f48023b0e4cf25019db8a1f06bd69d80fb7e321f4b5a7c6ceb222080b8f80dc4293759079ab3734ce4b529e2a22914764618c811de4fee589213650495596e1b21e6ef65d1ebdf8d2e31485b745ebcf2280ecb404a6beb90d594aa4870ce801db6630c58a50485fae2b83c981d506a3911439462d5e97e01b09bf19a5fceeb420c2688e3a8a276c925a6d5ed230f7c00be5555eb8531e2d04da15e96b2a906a47d42c855e790ca0bde553ccb7e6874085f1b53d09589ed148430557cf5befcc5463fea5d73bcf48df840b7068deb932acf951d1fe5c08ff798c165f7dea8dd6ad36904baa6cb6e31dce03c843d1b0c9d341a5ca55911e94751239a1b3801b5edf908bd1faf0613a71a00b5fe8417c401d5a0b65bd49be49c1179525f22ef86135edad81640ab3ee7781d5f755e4629d4d2750b76751c8a3862806221155f76aa75e29425ae409cace3ca35c9438d7b2179648b7aaa84f9fe883cc4136e3d8ab8d84674cd3d3463f7df8d6bb341a7a9e6b0c896ffee8637570cdb8c8808130e02061b37181c6d7ca9a75a12682ebac65102c601a67530f282732bf6bd939f0071a4bd076626ab091db3bb46caa22bd4ffb357974ad41f8d7006b02937b748fcc6a4d16a3e996e7f7754ee3985a93194104a9d59be631406d8bd0351ca17baf8656775b5e7779c46aa680019e62ef3a36b738c8986378fb9358682ebca1b869fa5b3df2e54409be151b047c2281040a26b3b7ecbe5890fffdb1b3aaf16345f2a4e3516cd13500ae558198b40d1e1c921436946e5840886d8e4077528d63e2435cc0a377b3671055b59c66ed78429d4ab5ca413263445d6547e1e12f9501eccb81617c0e76a9941327efa2dbba65147cefbdadf02906bb2927ddf59fd8e87a52412fc586bf494586cbb2019db275a46bbbedecbc65cab717ead9760247681ca33d03246d81a7bffbcee5b98831b44385ed4d89f916f0021788286f42a5befa4212c57cef660187352813e3ed08ddb03748dca2288d3f3fbc1c95e584507eeff24aacc58baebd5fee9f1c9b0b933406b718c10ac687d4b2fdd91a9dfa29cff37683f46b1da170c35fd4b31bc6471f57f480fd53271a5b3e87e8627f4b6d739bebc0244ea591f13c57ccec8bcfbca8ec03b9569905fd151bc379caa70e138972e9a0bd1c6ac14e5a36076a42ae9b5c75811723c60531c4e8ea3c06eafc3789806308d3685adff6735d3c13313c20e66d3d2621268678094dc94e81bceb008b22c19c53b7df41151fca2012943ee40d5faf36a0acb4156a04382c604dd501cedbdfc20c0b992f6d6e5305570c69aa2470f12aafe27d0e20e0e0c4c6f1be9512d4bf22898271abe097f66f3f750e5f6dd7ced066698956ce8c67a7a3b35cae53a1c557c17a6e3b4ebb204aca47b63188798f0069cc56d1c309d90f1197f66040970bbd7cc663cd8c1606cc87a5e5e652fe013180e1f9db4d700fbd811a42d158eecd26efd4010c24d5cf874b41884f19c87a8c77c3c0f9a62b1142c9aad818c8a7fec68596f02c354e47dbab2b1ae0bbea6018d1be9981d77828e12c048e69e0c8ac0c2f19afd7a3044c1910301b969d43b181208e702d6c6174f2aa07fbc0789020078fcd3de11d88b8cdf12ea807d2a426633e938d01201b026074c796c7b5b4241bd8eedb97020aadc053dbf9d038eb17a2c34fbd655f5d3a6ccc3bc0cd73c6e0852e3c74b803c480536eca88a153113ac056510a9f8b4bb3485567ddd3a605185c488b0fdadebe5a6b7a7a5f6bbfccb7f14f4ec1615d9112620d1da37a65087bb338f9077e8d91465a7eb29b4f9e5f3d9ff4f9257ec2f4e8787dd0d923c99fe9816b9204370d5342a4f58da44db821988da3870b0de600bce5e91b46ca97fe6ad28151c3af1f7d3dffd89f9eef2d71952e44c9cc02f294ca4bd16b1b91ebbf59378b9a13a14644df12ee167e2b3a47303e3004798952e9c3228f046438ac272f6d2f58c1b3e3231492a1ea94c5012b978cf6335a65306d5a92e0a8ad62318783df61313c4dbad2b1206af6aeaec51b5a1e77cf93ef266c970116ec84536fb865e2ffc5afe33ff5bdc7c22d7f4127a55f3b1b9a716164f5539299305c8c2d44f9991bc673fc956be344af212f99ce2a0b1ce8eb32994c97fd235da62f43fc10e49a33e1c44a4ec25e53063398871146368460189dc5c35feba901bd0ff12b26f58ddff8e76c8347e943cec920f47cc2214a3e219b1c48efd3c108c520f6ca8b56795933fc41fd95ed79fbe1db8bf06c5e53544dd824618b46ea1045a3b2930ab9ccc6e986e4f30d93f982b9bc9049d802ed72996df6ced4204b2334104f6ccd4a7f17ddd13c61bf279b15f7342bec0b8a56b3636448aaefd6289b052fa728f8fd9ef6e9703fff7d026441419615778c791b178a6b6f0c4c1a2da7bd2345ebd4e235cffcdc00719badcd291d152446a6f16d0e35884409ba8eae577b37b01e091a92122395cc4e1fe95d2b4000de1b967cb98a8d78d826c7dfe1e75ce074b1c687d802efaee3c84bb42076f288b79fc4518a9e025b1ed9d33b129672cf9c2cb98f9a979aee516486e62cce614418464f988419f192abb47dce5b5a40ba9cd729dd354c5c8ad3a91e6f994cb1b8e76433898bc7f7276200f64c8aca3ed18475f78b19cfdeb5f4e1446c5d1d1cf77e6463b9ce7146ab3c9de5e5e8e975f045eeaed37e1a2b38f7a835b41d73ce764160bdd003ed5d5abec19748395099373717527495fbb8ad9d8fdedd95d4b0f11341c64ef5def9c0016481c7cba6119914d27ac0380b8bb4fcee7a22eaa562cc63e7bf7bbe02af8a154dd465f0b71a00c6e86f3f619bb15ebb3022d174bedf1dfd3644e96c45fa762513ea0900bf4506df793d5c4f4ea88136b3c0b7edb1781d66ba8b0b34e735677a0f302b713b0d8e0dd7416c4592faaf2e3d560bf2a90a3a790306c3d3ad09603a3992790e7a723c23b7ca86d70ecd0c34d861cf65a7bad40deadc0e3be19dfe5485fe70b4e94cf5c90f22fda418c4324f8935b2fd059b7ed60b244790845492505e5f0a08e5837da4b547244b0893a56e15d96fe80c7dbe980e0620920161e667af83993399e7cbb74f30957088ea20462de7ae637a028fcb9253bd8aca16fdd3f84779efcefb69abc2debe66ce2b94ac365339c9408c149550c3ecf83c94f8b14c0b87f7bbb276f6efcf5747048661dd6fab82c38205addd40f4515d4c1081b51eefbe549c69047da7f38b1dfc6ceb51b3dd68181467e3db2d311c283aa9082c1db56c8e25d62787c2534003844820d86f8f1256371bf855b2bfbe6db3cacc6ce3f61785cfe0d3dfd3204ff34fb22fa0d231d812bebff0e6e54d08859f2ffd6cb159744caa917a1da9a94e71c6dddda9e63c1342d04a4f9803fd60e9c1d9f6f00b16a0a1c0bd8d345544bf2feb15c5ee0662377a6c673e8f2e6f3c7539417924902950a2e4a753a73940cc871789bdc91b919d0db08c6150f086780773ba9543cb98b9d0ce79c9a5be1f68ce602434160c5f347d8fe92ee1ec9464474963c791cc7d815bd131e76745202e5f74e204135e2457f0cd20c1ed924da4c8c1b6ecbde34c15175426ff7a7cc24f251689ad2f19f29698faa4cdcf1e02388744ba720395882bfd63a060645284e27d4b2df79094216430dbde118af9b32d7ecf41055258e59982e801690b724c3ed2dd5a3aadb3bcf49d2a9f71386faee27be40b021cc0d3703c5d435c3e46dce5ec60595c415fac025f2ef87cef7387e2a8c4abf4ed23ca59868256e38de5095f857de3cc34cff587d7da1bf45b7dce9d08427059ee5dc87818c6a22f8d0ce7262c48a6dca42d2528ed8bb1d1873d7dbee79186e9c391dd8f81f3547001e6b77fc68720b7c88dc29c096a52d93a47338d4439afdba0b96135d4a90541b9feab29b06b694c4fb5348edc3b3baf72a56b1198f836ae1d3b45679143b6a5ae411627440d34e3864dc4eb214d2ec799478e1e169e183ce1b6e37f18877026d43600e4530cd2473dc1cab166da00afcb7a0bcbfffa2ac876c8e2fe591a47703420bff4d863ad6d8d77fa0bf278a976bda1a8d93f65586e07be36beedbac67633b4e5d6cf56facf09af6d72a64c58a8ffa8737d79be68067f5903468ac22476f029c4cfb65449b89f5d31ea9aa080b76e8f0602328d5073247ae57a620a04026205ad914202cc0103397938e6db2834bff73d45175418d42b12cf8ebf117f56180e7d933dfdc118f6187776230ec618204bd40b9d244402f06023af1ea58c7136576c5e1405c73e01b7cb4e1e164198605b4067837c0dc723b80ef956f7303a6a65f303df133d245eb4a2bc68cf946c08f37c1435cfc934d855cb484d12f2ee3215ebfd6adf7673be124c450283023b76627d9032985fa7a19608a7c03129b52de42431cb2735bb057a7b31fa0e194c85909fcd9547fd7ed051031f2e5f1588c15d9b5ada7841cf673ece7f43c6adfe0a55351d2d795ca656be6aa98f3b09d99c8819fff2b5ef591d9b3446aa0182a5a5e89063e4a260d65e2d752d6227ddf34a8dc8b8b99dc74bf3b49b301e8eee8287f29e080175cea5aeb91fb266034eab27cfd7c4d6f5776946c789c0febeaa73846e211eba7289f3e28baa114aef7dcd7782b2e5bab72f7d5f38165855ea138258996a53f67aff8f68d419643dfaedc72a571a84fbb995236bc13940f3056261695f0a6e60c36254709b50b66b197f7aed4265564e6082e0daea982d601ec644744e92d99e6200765d6e13a2efbcde58421a2cbf0d01bd6d0e9416fbf5727efe8e7999673e3e210f53a7aad15412cfa57fa4fcbc3b8923ba0504f4d5a1bb9f570f2ce4a55465bfca66009764825a8179c5b1d3ffd654b83d2177ab31a4ae591abda690c52d31c6ad08ed131fcacad409d5fe155cd82aaaff1f8790c668f066ae00b543979790ac1b820435b91e5a6d7575c5141280b0b873483c5e086f295bc8739c697c2a3e4fb2b080570aacd3378ad73e8f277804a933beaac1d30d0f595a9cc160a8555d7b8ec7c9d3dc376eb8e6d29ecc3271ac029a2d53077457224805c1925daa9fb12135455e8633609b1fe95f15e3d11b3f0e65265035c3741d5d989262ebc63ca66d30ac348a0208c9b4a6bb26fe6d7ad47f4c59447c14c25f1b220a49fd1cc595f38b75320e2735c9b69410184718a5e921667f9438838ab42c0bc76926ac770145119044a3f97ad2e968ca05bf010601ce28d6422f32ff3dd5912d887d12a3bfab09a58e444a1c63d6f59d714ba6623e2c4016894a6a892d2b8e2ac8150870827b3ae45ec5784466a9c90dffe67cb2f8d6dab731621a2b8c0113c5961a2dbdde4ddde9e22444bf2697f4176b914f9842be5a7e555a837af670fd17a7ce40d42cede463ae455333f24969fe32e4208325a6210278f7a6d6f22e392ef8965b017e1523903d14236c18c5a84136c5389cafcfd581e874bde99334a1bf72617b783048266db6bbe0ad90773dacd6b9bc5ce51086c059f6c5980fa1df3ffce34026dc3017452ff4d39f502d56d183d063e530af95f1497cf94d6008cc35136a68669295300c91d61d864596bbd9405a93e3a3900a4166e4ca40928ae7705b56e5424c92a14220df71f22dae23dd25bcc403287db624465021663a5fa8aea1a5adfc6c3c68be2fbfc8e75ca3ab37e42d89f3c818703a372bd49adef297531f667ef5c278fb99af279147f1b11d2ab5a5cd921720eff9dd2ab01edab6c9ddcda148812bc43b94dd7925fe6ac31b8da17383aff0dc730711f04f94e7f01d54826521d68d7ef61b150380f967d46d14f6d8f80363ce810bbe7fc2db49c5e0722c8882301b2d1b8570ebf5e74c089fa03917fcded89446389038386cb5271e68a462237f4bff84fff467327795588de35a0d4d1d5aa7df2419648f64f462d1523387d425e4fc8c98081f8692a1547548929551fa06a21c0cb6654311c28b9e0ddec01666c35d9e0a73f02dd7044415604240d4e57c52423bb39f580f608417c82dcd9b370b7f33b2dc2c4e74f8e74ea7416a9d1bf5c1b443e4c23fcb18cf020958864832f9ef6a0c7bc10218e1343dfe60f007deae54160b8a63c20b5f112345033f924071eb73481362faf158713d6537edcba5fa8a6ca9d0f25d446fd20b24b8a23649ac683c246839c2a91fed8325d2d93562fadf4d6d47455e6766c6dd24a3b480b0d632dc19da9c6943c61e6f5c605deae72c1ccd9d651592d45363f9247db62b1f10ea94d7b96db47a657beb6c2de72e5ad21b50299592d6b055ebb9c1d71c38acf8010e1586c3a1fe49d120ea4f3292f30d20d04ea35bf47656a9b73f209535c04336e672dd6125cc24a9c8156ed40a28329289f8dea2d271175efe2c3b9b96ab7b94722e03dfcb5583840bbb11e91febbb87b052899a1e489dfcd9ed1caaa07ae47cd7d70e0c1b55562a79ffc82f9055cf7f664d5dee0b11f7e71ee8cb9a2a844c8ba0e519b67205caddfd332386ae0e587a4660818e589b5502db93b62251192407f9897379757c32b4469090d241a4345ea9f69e3e1c19d4a11bedb01aad74533d47b97c824058573041adeda4ec92621e8b87ee2ab182cb9a9a5428f84d13c88b0f4b2ca3889a00bad432528a21008bd6ea2e01cb8028548ae7c6e89c745970f6d03c07eca9990d8cbdd80716f134a0b2eed7e81ea7a79b9ef9bd13bd53b80e40d99c47a940b48515f821aa80a7440d4b6c4704d05af61e230410a86efe547308cdb0f85eb739d301b90d8304c45ee96f9e23bde927917aafc387857a599c53100577be8e04229c96fc140e9e608324e5c6d3f53f5c7520838bdfdd151232a2ad7eaadb084bff4d8940a8bb659b31a938610fe1ddf8a6017fe4ca07a465ac8e8f075051b002b022fa9bdb67a6b07174f821622376ae58470fc2beddbe97be56a4101153323ff1904d7dfba5063aa5c490adbd8722c752808e4d032406762a9d0e61dc2aa65d2efa6d1665a264c563fb1edeac1d6cd268e40cc146931e035240afa8f8ff7d51f0d7a693fb5bc18227996b252ed54de95f3091c48367162a83e25209177ea2536b9b8e46d73458deeb700ffa1a9022480b439ac4d00bd6677445b32783963f0892dcf86b1c61fa7ab5d89fbd9db3618082815c68a4997d1321e136fb9f06e3e9b390971fbfcae62e2e518f78c0be3d696de201a826d7c7042754bb5a702cf9c38f960a04902b95b1be075013914beeb337219bfda32fd233cea39703ebf03f03cbc454f2c0be95837dafe386299dc3268b850f24ddfd1a9265170cf101e08f22ad8375b8f9d4c64aac809f5c9e73ff75cc058bca61495d0eb34253c5cdd67908b94b06bedae485c1129d6917a03c58d00d3a54c9a7708e87dbe4d284cbc4420c03eb6f104b57f7aff1cb7ce1e45bc9787ce575fc4b7ed4b980f3c6e304f255d706ac18ad4fcd77b32a575e3234a65de567a2b659c32538b0b07da545caf2b30e2cf026c20680c006bd951df722fcfe1bb39261c8d2c6a2344edf64f85ca932d76f815b9be52962a39fc8648ee1f60a15a6a4cee0950b346ae210536ea1b390f1345e898b042bda023e670e9156a87f3bd765a1d5e73de80c92897872adde8baad2953d6e9339fe6aa30e72f0771a6c10c1b2e72bf868bbd5ae4c20ca5d773cbd6a3a4aea166a1795ce7a095690e70522f23cbfaf60e8464ea0c31561e0bf69c3e0faf97fd532ff739b48b1d1801aa85c80235fb5d05ddbca047743e17123c6e2ab2fdf38c410db05bb49bf6ec5ff3e714bf365d4625b82065340aae436d3eef4e34d47e910e27591b13fb3dae06147c5232846f778b4a3cf9eab52e09116db1243afc31f386afe425599c440cf6d1d4e3c03dff041eb00baa7fe48bdb5da14bd1b0e7201a7dde41eee4a4429034e14e94943e6bda87b682d92e4275bed90fab1113d025e6016d25f80df41586f65fa4f1e0b61ee7a79cbd1251550750002a357a990be25a1e2f1ea782d2863ea23f2bdcb91679eedaf5c0b0d8ea93b3ef0720c88ceba91b52d666a98e04bd8b688484a44caef7cf70ac862e8dca6b7d1834f1602849d98418f99ab805bc064a51f909d47d40a7e7715d5b163d6aaf97bcc62cdbc579f522fe2a34005e00f16294ad59668901a61ee7f3b2f5aa7deeaad688330cdb71b87d17acbb41a3f961c957a21d2e9e55d7c8f9407dc061482837e3f7af633f18da1c2ce4485dc85f1cb96be579fd180dc918b4f8a26883ba79e985b866aaf1b6b35a01329454dab469c10cae001e9f9e1a9077cda9eca940728e932720696d5a1c378bdac27ccd019367eeb8614822cb103d08987f28e7864ebc292dab88b8b31235290f5646103d68c3300fc88804a5af37e164d7934df079a532ad86796ea0a5a87e2b4f866c1725e55471285c68007ca2698bcceb4c1873cf8f86359659c6941c2f5a8dc591f70decea408d8b6c1caf83cb26c5f0f20487e2f645036f07b94fcd328b4e0eb8a22bc31b76fa240a5ec8d6a9d049e741ab2ac228abe62a952aee3bf140ac0ed53bc01aed77a75283e25dc99292b11b32c6e918c882dda5a6cfde8e8a1139ed3a74c92035f18ccc20f263ffb458149939b8d53855788e8dd331f3eab7fdd6f469901f42d99976c26fc597400303da9734d3cf605fbc8791eeccb11396d2628a9b05900cc596a75d051e356748272326873369c98e2e71b3f576fee46d4f0ae2c72cdad68dcebe07f0253944052f0538926bb3a614a8ca521e7354687bb5dbb01a46445bc529c85bc278d423766828a513a5c01f2e04078ad243eb09aa4db58519851240d735c5075f1b4457e37438ea17d4458365e6f082f5320f4deeda587a71964ec322876c701fd2c85a58e7642e683c941e0da66c890998ae9b06678e5f8edaa28c047bf0c6168b25a23c1159c2448abc9fe18a5722700f64179865958c76d16ca9ed33c15a13d3dde01e1399871540b503547355796340fb6e744d10b9594efd33eec7dbaa15f4d7f857013144d5ee6a7eb66f3c033e3d7d6b3f75789bb4c1de8276c1ff794fe8fb36280e70f94839058014d950c22341ed78b95f718886d7bd67ce7b92dc23957eceb09c17ff79f6b2da951f6938a5505a8863407120ab070a64aa22375d5ee83d406c20891f7fe6a5baeeab4cd965548df6320f1c8f9b1c49ca1b6c992a67997877d09aa5f7dcffb876e185b9e699efd423419d3de7e026923d55d3cb4fcecf80160167e736db8c956f61a4362cb3f61fd8f62ca6e6849e2a2a9ba703b1dc99346c096ece96940ea222d9b90a76bc8efd6fe4c190f1e8ea0d111ac826b631f48eade2a85e889cc10c7497d1ef1a01eb7f539e7d771cf22ef07d2abe8a3d59be8819a32d1b3dca65d0a1233765247e431f11c0f66eb5a87c9b126b00b4d0648bcdc9d6be7ea8a33b8e6b842c063e7b2b71bdabd757de773896ae688d3ee1baa421326e2f8f57f00b8cd2bfba983f7c6956e3757fe4389bd7eafaa7023230d99093bd9cab1a938b42140aab0c2def96fcdd689f8639130ffb52bb1038018d91a332a3fded6da52d5cf18bd7cd9cf624b0b90a848803a7d9ae90a975c3c810ab5732ae2bca3d5947821db5e61d203ba3b00f658472232295d6684900168fe700607831a5456360a2d50199d372e4ce4365095d44873efae88d6220fb02a867b9a7da5fc5172fcc17928242f60b8c53bde74d5bf74924f975a2947767460035758063ac16dc158590322a1a67a95a53eddba6a93d106e052c6370f798f1d2a9fc88265d0c4632617a50f598af4d3a87d37d05a87f5d6ba45c1139cddd18269756ba7b6618b82ff36e99ffdaf127aade81186ecaa3134c30168c7c7431ca3eb078d28d95052326b9c38adb3b83a99013149987df619650f0e2f4cc675171b16b3b1aed8db98af650868ec69d5347accc9eb7f562fb3492a67554dbb11fc8e1f9583ba5bb99b20c13826375eafb0ffe4f3a2b1b0e945b98f97c09546f068f8ec701142fdcbbb57b4d111cc0b4d2ae852838fa0bcdcbde0c683f4fe0437c02ca64e95215f0f283e9f0588af614a8a5c5f56fbb29a27c82a8300ba5c17dc2dc9b6e170749b22305d052f106495006a7f94be862295286c473dbd7d0bebdce4826859cb1ce07314404ac8c7d576ddfe606753579821a5fe68ddd5ee0951054c7bf26654ed288925ff0ce79494803b3129c576006a18f426bd5e22d9843d293a7b1e7440ab96524ee8e46420fe66cf82a548161c4e198528211a19f1a6ad60098fbb912d89c2c85092ad287038fa17b386b5599baa040e8dc60965fb582218f7dec561f474882676050db315f37e1e4d9576bfd15a38fb6c8c6d5bb5c0a7d87ba188970e3cae1a7d6376c739a18e98d3cea1f7dba1bebdc046310f1671dc66d8268f585f020db01fa3ff8172cde7e75e65ae56adbd9a664971be9692f55b379a2903236a9ffd32702e6879e48e219556b860486119145561f64c591f87e96bc68636a383418f235d3457e4b21cf27cefc7c7f3edea4c1f6706f1018db196f25524157d3c1ce1626a2f7ea752cd16f80e7d55a0b2f47f8d5565f5df609ec125887429daff633c01d25c1e5325534b29e7131c6b01e3babaa2867dce0e861d00dc5a8d7f0d8874e81d423bb4390c09e74eb2913a475b2c04b35aebefa5bf3d6950d2e512f0f080f1653440e20b61ebf287927457d740228015e31c838651b4dbc64f9efa17294bdd42847764d6cce26a425a18effcd822a4f641749df62f93d1c3025869a611307d51e6a14517e5aeebc4b81886ec7fdafcd78b8c9e631ca57ce90ce25521a946129656de751f10a04ee81a72e3bd648663b59808fcf0a540b5521d498a12472085ef18674b8ef67688e7a365e2a73bd4858338a1a76b84d73dfdf7eafdef53463b2fcdd785cf54571b8809d83ba9d4a09e5dfc01e2a11897dba77fc50966eb84659006d2a010673bd5a5340a62179f496c6b203e1b6a627617635b179f1a354df2f60412bd0d9c5e5001f7b2bdf6d972e382cb95f49143a8075c717318392b571e19d0320ce468c6fce59497ba9c4968fbf062c830952d5579f4fee4a2ecec21ae7464753de4f6b41bd3ad8766139bc05a395740c3ed6c655b472926cc3e3cae3092be72fb1c84c9e6c3ed3dcdd7e476f845cd467eaf40ff62f6b2d7acf31cebb340bec7c994d8a861c337500defedda36a86b286afdb800cb3f919d3f58984e4895dab7e753aaed2d4069c030b81b8e8bd743d603ade395751e02a6f0ec05a3688362e7cfabf20c032709e6dbb43580e488c0dff8d5a4e801e860b80b5fb8ab19374585c470c9410b9bfd2b2cff9572d5d674e2468b6760aed99bfb489bf55e229b35f454230abcf820b66ed6ed459c43c5eb3ac9f6eba9ca729419a27c89528bc529c1716e24062185c5a469e0fbeadfecef4ebf90e81f244eba638c0de310d3af99c3c3a7171b04117a18a226e24e6ce011a4860c5e4522bc81ec5905a1d9a963cd8cdb2fb5e6d4d5c3a4588dcac410fa6097dcbb52da06441435f97893f156a72bcbfbaa13b9882bd1306baa76ec11145912de2a85b7324a1a120fe399f45d5278a4fdbea7c26fb22023daef1fed5ea5c9c1e6c8fb223d19744fda6154fcab8dfcd268f36275d417dc61863001ccc50028511db84e4b8d497abb987bb8b2e61aab9de94d407ab660d6fe1ee0e5c1cbdbabeb2a4c19f1eb246fa405673a6c0383817f071dcf30c7d85392ed67e6956fbc4100a648745a18b9dbe7e0b160a8329768b62fd822e990435b929833bf08841f4db2d18f0fc1d6c861c34be50105ee1053d6d504d30e19363d48cb327a06e3f93cd3aacf329fc867b8c1304b324888f6004b43e640479887f86561f79e4e49c820b5552f581dc1c81e25f9dcf8b962a448e81b5917fceb62dc297590132f25276f335f37a3157ee7c437af7805024a6f8d091bf94c470a0292591726c8cd0b65c2940b7cab32126101b575b648585c1a6f34e20eca000e6ae4c869e632b987e9e3f9345b13eab2da2c2a8a1943ac2840c4bea84b87ec0343262502a135cdd02cb85bd3b0e1c70d87e91fa37d172fc09b51cfe34e60ae6a05326fff92ef3e0e0f72bc5e8c7aab0e1ba36f7b72b4926513b1169f0d6e5f96f8405d4f0288c0d76f96883a1afe0c41d1f17b1ee988f7b97d4272bf3f548a58994bbbec3577df82f9a30a07431cb08228ccb35d009fc2b5393fcc54b4292d0b5448febfdcb5f2dbc2719c8e4c659edd76d5e2ff3db0ae8c74b7f3ed4e5fbc72c2e079a9a36317d71f0c0ddac42effe688e1b53211e829aa63b59fda04ff8a5b64f0a7181447658bcb46f3ec9d6ead3e5134343b17354087a1a632b8c75d0c9f484f015b5ebbd056789f6a2c5056a2ba674fc71a2cf6b25626efc1cce865b215c3b03ee44e395b9c163ad5a4aac5e215d5b98dd17d3423afaaaa76f25da65af4dd076fcadee487f82a6d2d9f0631857ff9cde376d48257722f4a0e2a1b1208a535abb736480bdc8c1e173e9d569ee6f5059903fba367ce951c6c7c037aba69ea1b2aa8aabdefdc3da3ec0def813300a6513e8999f17255ccdf77f5df1b00bd3dc064307a834fcab055fcd1cc074123025a7f7acb44f17118787fd0ed33d0ffb6371853a6ab745f5852db8d770acef00a33f44e60fdb8e6fd3c4ada9714153fb0d1a761ceeeb920a4ef4bee9161f4c7361cf1086d7b5237560c6981e19e60bf46cc6b17dc8f7ebcd5a22606c2de0718c91ea46f614a761942a91b3e9a4696469702b18d4e4a09db3b9e5a3020af82bfb9199808d3c0b10f7b0c46e025fed027118cbe130e6c25ab7b1918348e301491afe10834dbc2e92c571cca520feea29488621e840aba1aaa70f7e366a21396044d1ed0e1f038f26dff7a95cc56801a6781cc0869d984918c2f8f09bfe1af2c9cb9bdbecba439b3609e2ed1c6f19e9db9c99d8ba6ed80257cd25dfdf429019e1fabf4f72490c5d32a5bd46cfc2019a5b79866e1f53571090a7de455852ea7003bb8123b4d734b760e06aa8c98f1b2d87bc84af08ff6954f93fcf72ba6fb8b66add6d0b29091325612a066b29aba77b7180d1c2456e2002ed16194a09a53282410fe5b0811a8c74d6a8864432e29944db242b032a9777c7b34a882e8e022ff6b97ccaaa502f73157e368315adfadf7e9f3234c556bf3f81cdc19660742383bbd85b9d74add4bb87384d6ed3e0d42f454e397788198f43703477d47f38708c4b1922a1d55cf89e06bd07ddb3dbb6b24fed4e5271e09498324429bb371f4bd6d03d854744021d82b90e0dd5bbad5283c98361aad73510127d19c2bd4103c7d21234d80b911f9a27e35321262a20d8d81cb116dd0e2d012ff8f78166693e28470af972a6582bea82740bf28c921da8eb7c6effe9e5cc953f9e3288304bcab395a312ae4e97801e344a4ec10164921edd6ce047ab3fddb4628f38fcbb299647ca412141ed603b4a7b091ad96a6e40142601b49ce0419d12694ded66de88b759f1e1f5c06ef112bc02b972954a8faaa55370be1ec4e1e5a13236ae3da30be6f8d833c3d80b74a982ae8abefef6c23553cc597a72dc87692d123eac7f46e96c4647bdd52775e406a57931c4d8bd79e7125d1a7a0a21cba3439c4d18d54f02a0ff5f6e1dcfabecdcad09ede67f972ac49550a9f9a85df7775ca76d387d78bd9759005c1db19d757cd078e3b12a11d031ae626761ab66dbd97a64b11cddf9722cbed50982cf8bc242b4809109a6075108db4a95055f28a1b4ebec89c49c537411d76f3c53574afb534377015c3be5d329af5d2b51e7b025e5f47cef369aa03817a63e153dca5888ae8bb9ab22760c37b0cf14fea9cdb94de936247e1ba1c22f927573f897dfe63b948476497ecef07d3466a8a3f05cddb52f491663f30a154365b78c89275268ed928023e4c7decb2e2b6ce43bb4cc6083307ad90193db83745946da1461391d038053c5a04008a8a266c522757ab0ab472cdc10a927df0ec6ee756e184850f947d0ed19214e2253aa3c3f74c23afdbedea49ef14b5fa8502ba8e6a78f2d390ad5788ad9b356a76e9388d0bbff9f7c8e3dbc1dd7ca54bf47c99f5e78f41f7a55dec39d053b7f016adeaf64d7e8ac131d3afa0b57743e99d6929585a0d192c535cb8d5be7bc8e9017895f68ae02829dd0fbbe99972264a8e3cbcab748c0e323ff7dca343940dff8bf8f15b90454abb4953450adb50548e29353c61cefe0f4f4ce1aab25beb0d070756675f40e39d01c19baa4c37e339cbe9202fe7e9f73576115118b2a7128a53d76318b232cb749fa6c6bac3b8330cab2c7e5f4f6871c48a4f4a405accc403ba2b836db7803f45b5556316f5f0f485255a767ce95d278f74051eb17d3ea8ea1d76df4f108bfba59dc094f651f95096f5655d9b04b82f2567db803e9e4c4d3cb43b265d9d046fcce6b731af8bf04e78b5c0708e926a6d8f9e2db721a47feb3408af3fc2e90bc4ed1225de14130f138ffe614dec43b5bef0becc05f13413a97c0e46d689ed6a07c93704227adb6c31293c81e5989a9bbd7375f3159b19a753ee93f2a5a1beec945af51e13373be2188700e20937cffd2a717985adc6f644ed2d70d6a2156d903f1ade14ab1cfc3bffba19db67ba4d8073aee7023a067329faae0b1f5bd552c8e2f71a47cf1ed4d577b9425ab822ba9d679ae0dcbae2bc580236ffee55c3806080bf2d76e147aa3217b169487fc3a33d25401f768eb5eab17d03d4d3201fa6e2095287e7bf632f9664a654225f736892a73b6a54f860b65a62fd93a0b709cd2dd36a9a3f8a9bf429194f1f0e986efbfcd3585ff1cf32204a74202d5627be09b9cf3409ab11d5482db01bcd94477ac2d92abf3d12aa75b223f06a2762f8b7c22a737591ec6d679274e7dbb402ed6eecdac6a0a6c77010d3c487c4ed548dce89704254c6cbc117ee0725be13983206034cfe491419e04a25903d5909aeb1cfbcca1c4b08be0f22f4faf1b30a70bbcaf161bf45e4233294dba860fd394c45ad0ac73728c836b6c1927d1b26aa7a0e1aadc5127c66d994c5446dd58ea507175cfc40b339c515c91dd69dbb01c1bf6815310d00478a4c91d211f0f834139c37acdc1f0fae21e140e4f8319e0246bc4eb053478a9d79287df21f7f7a296da2305680f5c8226ccbb6d704236086d3c7b260e054a41feaf1caf33a72c4c688dee365c5f7e01ecbf923b0cb71468dc22f1b4ede290438db001e4e83df01b150766a10fa4e759a2623ebf4e3955f7def38a1cbe8223211238241a5d87c781294a449af5d319a7daa8166c54ef4ec03b5f68e3532f496f4797146ed4ca73267aeea9ed03a0903a04336cdc99f31b1e6b9eb6a311c1ffd13fcaabf66a3db3a755084ef88e7cb716fad54c521e181b02ba51e0189644e143b74323a4c8504191b593cbaab6099334cd40116049e758d40196d678a6a5df0010ca075a4cc8bdd415e2328990457e2e93657e72377574b6cd2df41e93d195bdd3a5e6e8d8f1b65459dff7d38d2d2bff9ddbfb3883ae54f7876e252da0313929f6a64c5a9e48851171fe286218605af7e0d2f8fc2482d7be34a7a2d0d18d362b111c5a16bbe894d9eea96ba3248788ed7c332c7f19f0040767eb10da0b812a3489b40adf22c7ee7a3c4f5e6db2945ec0bc3c5f5b1a3018ae428235feb339e7483f4c2e219ba961e347d9b457f9bd1298b42d386c43f797442b227f8c747bdb02e8da8f4857e5e8873b56c86884f781d04cf9bac0e9947e2d784f78dde1ab9b87f9431f1da69c03b3033e9abd24e3da6b5e04697cc616a5bc50284928267fdaac5c805cbd7ea64fd77447c65880b74555e38ba2a300da97d0f6a7fa5474a27569791ea762f8a7244aa024f9e0c7e14fbedd3b7707ce9786069cce2ec8d8e3dd557ba96034b996a60223f1756c92aee7b364d63994e7a344b9b8fb73b4e024d5a3ecd804e97f7b8b629061ca9ddaa38aec564c4a90ae3cb78b13d6bee175746e423ced7dc4b847628092e26e41f616a201f45d777b7099722d5569d96d0551cbcdaba8515f93bf266325f24361c4fdd54efdb139052c8c64445c16fa8158b295f84875fa671e0720d0207fe7a3e6f4b7fb92e985ec4b924d85495bff85a239406b9fcf6c581f035b39804f4c357333a772a275a2a70596f1c4566b0352966baef9052af8fd17f8b5bc9bec7cb282a23ab070c3df1a49d48a303997aeb7a38c9bbec99b66a8af4066cfd16dd76a115e4d85732166de4f28573c0e457a87e606d345e09a05df376de5f3318d187df8f40cadb29ae2b92ea03804d2fa05583c43605315f16cb3d61aca67389086810677321ea148b18aa7c01423ed0b10ffc1d045cd182240375d0b2c1bb13ff974fc0a931c202895f511a2695ebfbba29db16cd86f4a1e382a5cfcab59d38540147884264f1c62f6438fe6275791ebd0ed5034ab0241f67f4d4f15f36fb41019ccbe707ea24cb3b0133db0667c2c65789eb77e9fc74b3d0fc4d3561e7695b28ca111e78a620f591ebb2b94b4fe3e9d03530cd332d22d1e99bc956a07673882db4f0018ff77ec1ffa2af6129727d4afd3d1eee74ab00ec5792f7f10110e85b8c691cd409f0fcf890a62b484b4ff5917afefce66f082642724fbbb3ec13da268d4fef584b34c0133eb58bf4854652b970816169cce6b2b4cd64892f9ed550f37cd3027aaf180879d1f3c4813eda34bc6d9558b2905891ca29123b078f13047c34797332c4f835e5f1e418387e9a950024920faa5a11869749a48c83bafcbbe8d69e1d08bd50f7f1628afdc8062c819e89fdaefb1ec2484be0ca0581450f6f14e5d7b059c193b40eafd08efca82047d5e5baf44f1bd682d07ada56d94772cd9daf7befc4b410bba12679cd266f7e98aac90a6ec1a2f4849a4368c182fde315a03c1de2054a950ac314daacf6118f26bba4c0da36344b8cf5701a6f7628ed6f3511eade5891e631c05679e141d031e689a6d028e840032e3943eeffa2a1d2a2fc59fb20d66bd06599d4bab76d0414821471e1432d1aca0dfa6248d393e82d295c20a8584eeb823da9e5a0f24f661eda8e55f51f13009e42c0ba471882a8688472e29ff79bb34db9e8eb9e295e99a76bcc78080ba94bb848ed8633c31a63d4101f1d77c1b7437a96bd2b5fa8f55bfe6676c1bef83f66233041dd5d16bded7a490a1aba196bab365f3944a4cfeddadb6203b8230094706e84cc4d91a4b285a98cf9b554d4e469907079a1e327ff9326555d64f4e423e70d13c944ff5f8b3483a91483683bae8adb06cdb55323e3d952eb5eec0ea9a06ce75fd3b96b75cc95dfb13e93d4dbb4cabc0f7a4006559e2b12f0bc4a57cf013af3172ea775dfaffab4eb69042a0542cdb4b0cf9158d9259d734e7ccaa717665301b698a69bf9df0406c9e22b6094230076075ed7aa572cec6b45e89fcf6717f021c90ca42b48edc462289ba9cb76f742a9bfc4a9fdb8219cee0bc3755d4d75f0ebfe9eb297f99383448888072b5dc72e9fbc411a5737a6b7a4869b1c6bfaffed90f6d6dd1d67709c02a8764e1819d620052341f5990363a3976e4d2ab134d0ed6317ebc1b1e950d0438949d6995330b5207eaf7c38310db18ed810def18bf7b3dcf97e559751fbd84627466d8dbfeb11f808ff623fcf1b33c79a6a07c31394cefc857361a4af609a6a53bafa5d932d2baf85f389ce9b910a18606054cd1467bab31528f7080d3bd0f1dd0380e8937aa344cfe433ebf416f43dc7e966c1b04416352f1f1a39b61437603f9bf82dfe4d0e6ed1147f3df08ca3ce0a7566315401e17c26da4c48bc5c50cd0436d61f9bcbd12ba4645df2f8795129422b04f7550719a52b149e6a7aeffebf22a2d74b5e671ab5ff8bb99b0655cefb544bfca0acc22aa396c2a65ea196f68974827b574e4146e4dc9ff41df3104d2d6e9215ba16e996794858d16e0ba73f24c226890d838b97c884be3c5407a980c84d71a38736be4de2a189cd09cf06801a0ea1e4b388ca7fe730176876b7f71326cdab950a08f929c89464738aad0befe9bd85c9cb7ef7cb0061a602fcad801d6533b2bfab0d4d615f1e71488ed5d5db6ac44d2d0314ed4864b7dc0d4cbded5530b6453820eb7e442d8c8594a2c4b41675b1e68b8459a8bb24cca58eb1e0e97da1339942456d37e6032208db712c7411c2089d4961ea71f7749e367624e4ae5d7313ae802cfa03edb2ebc84e0fcd15ba92787e5ac9b388dcdffde0915705726a3430851d60c2d39610edcf4a0ebd9a900d3e075111f6f60e5780c5f8aeec42c4f096c1a29ac3226e77cc97a4c46c8f29da98ac13159a16a5f3d4347a961a0242383f65f10f141cc06c821c3dd435d14b388caf0e0c454723d930fbb8a0987f4b930aac1af46b8f12509de88ce185c9ad6bfae75895ced4fb442102f0a59008deff4d0bf18f2b10159df4a5f7ae6cd882315dfd236c4afc65193c111c9f29a56c9a2e9a8a8e5d59bf80d3f4b96160030cbc72fe29cfa19cc73370294bb9d0e32321c95c76fb527f9501753b286b0f66df4959718fc271c1eed5b812db3eb9116bb408ae164b24504a4231768f99ca1673899254ed9a8b667d0e6a3acc6f7121bc09a5a5fc0174e74c0a1a3043535697ce35e7d618e50c7834a6d4708d7e72be7329d04479f2eb6bdd9005b7c019b37cbe5eea3bbc8aef49290f638c623d779a1e4f7dd26de32056cd6c431034432d4a12e748bcc856008e9b42d13ca829cd90cfdfcbb609d59a206aa08e413724e5a54f6427979b2192df168c3f1ebd02f5a4d3dd8740f01098c2fda0380f2e21b6e7672d3425b320d38b04c64bbaba2573313785f0ae3a4379043f789dc929eeca8a90f80951ce02a6c9d8b9867201effbf7d6306f479008bb3cf1b2737cc2abf67f2832ba2b1fc0cd0c21ef0517de0a5a984afbd0791a81bd357991366b86b1eab58a2f01efedc17aeedb8ba9d0137f095a8e8fbdcb1a55594da6119aaf2146f065788ca831699e27be841eeee7eaddf37acb83730b848f500b7204e47ced5c83893cbee81166f291377473cb001d9d6bd81b56b088e559206976bf0d6ee599f19f9d60915aafd5310832187b3b3a347fd195a491dd121e89f031a3c36cdabab688e0329b36db3fa4e2e8a8cc55fcce6b4d9e82c7697ea8eb042c28ddbb546f121d8377633322b24b46f441f39547b89167972e781053f143156120f640586b36ef099a83c6256e84251d1f842dcf0016ae2b6e2ccf614e1f346898ad6dbf2b384fe61236c372b560a80444021d05913c292fdbe5adb14eef76527d2ec25562812983bfea61bf5e1b29d8368f6bec5c398aec2a1a79489266ff73905fd9151119302268214d5b4978d2f307972efd599facad235935db758a468843bab0141a13306fe5066dd197a6cd52b2dc67b5ac98379fc6225a8e95e50596ea45ad29d8ef9f45de5193a9f2e5805eb8d1efb3cc084186f306a30bc7ff83750ec9b0e4f65ef0109f5236a73d653d145b9757285facce03cfa057800df405d9c11365b6fd82cc63011afb1d97fa62faabc6e9a42d9b58f59c502ee71a563c4875d8b18c082e66efe730f3d61c848c03fd485648291b3a5c59857e1dd0b1ff62ef40c033a6bf6debdb7873b234ca57693a61a77b6b43c68b90d60bfc14ae5fcce5d6d0949df3b90dd38f2b436b3a70b71b193446a52f3683a28df0e4f58f73756c53f343df49b0708b8fdac29b6e4b4ca3b2369fd04eb239c45fbbbb070be838981846011d5d9cb41035ea0b6acdc7a04732873f9f0a8bdb9c2c56bc6489f0bc80c03f336c0b3b6389757d6660fa0cf891d7bbf9ecd7d321a7b32c79d570062797b443d0e138c1644c44d6aa1b817330f323ec351143943048896b14cccbd063e4372d53a0629b67ca24af1c58808095036b5b84756ed4632bf13d4a68d819142a0ad5bdce09e074ad73d3a0801e818965fd7203c0c3862e56c762794eadd5e7c60faa15aef6849976f461a6a202d92c4f37de8d0550b66699efc398ada9e906047fdc3e69ccaae0c5fe913a000763f759451f5c55c4db715502a90a9205a93864246e7d3351c0e7f25dfbd2f7ac1c03ca65f2539f538a61e424fe3c6b587795432b252d43985124e15b59e5b25502a26e84caf11d24cbb2e88bad80cf1e888242928d9766a2ba8f4a598056da248c8fccf0e2813caf3acfcff2f90f27a17babb95588f533ce0d92a87b0a03a54b8859f9243a3bce8cddf4fa1ba11ec2f1977d96bc70c6202a7d89186dd6e380c969de3e4a716c6425161f0b229e50ca6bda74e7b56c98994646c0aeadacb39d6b0c37c62d7faa55a61fdeb90bb7743149f07b722f44e47d1afddd52133fec01a4e9c76691a8bf588cfeed1351c8b08db710d7dc6f551462b0e0a767063a76233a508fad271bcfd6800d2c06834e7122c364f9a891f41f9b66caeb43ca819c36ee8bfe3193238efd3359329c14b2285c2b3bfc3030d7eba991a613c7a9d8316e93e9bff6e4f9abbde361c73de671137852def9709384129a2d11db95be39b3d23714115eec5c589cb8b778ea61cb7338c60223c91fc70b390d4d8a341e420b5cb6019aa0e9b4b6d90e8577eea2315e019bcf89e67cf79754baf1911696455b0137f3e53c1048040a3ac69ee6cec286b2368468762888dab973021d23761170adda6e15a4d713e2f83ffe564fd953163823a045669e9f3f8a674b28053c0b463f887ad7d0901b576714653033ca729b0fb4c9b1aee9e264b77a0e22aafa18b0935f6a46c518e430c34f6b034c1fc773cd82ecc0dc33da8f1ff6a29e215af31ccda7322b2e2a71bdc45246d00392f8df9d875fbbbc374404624833727f0b6604aac2ac844eb9b28c310d620f0d62f2741a117d9355956affb31268f045d1099024d8ed60379e4dc533d945456a608a0aad7206ad3cc7d92ca02b11e5e1665cbdd1d0607ee4cbfb1003d640beee0897daa3f117af82890c3aa6d33b555971d6e6dab58f8d73e33e895b6cd3cf36402994e02ad71a46de52ebe0aaa5c3ad06e1f5ad9a0fef1b48e963922ca532882569ef3b724b9c80832c61465b3640ae4952d3d0aaaea51a5248395e5288a29dae87d825943ffa2ec9691479f9b58412de214b165b3cd636139ab702d070b257c3fc2aa6ceb39bb5923adad8cac9f6f30ea1496d09e592c309a76b4ca9ebc686e807c67045d6cd67b485698c54816bbe4f2a50297431f7efcabddfd59355d08ef40be51e1169442ccf6f3d620543dbf1a89be1090e18acb131b21acd81b84cc2d1bbd3e20b7a1614e6098e252cd2cc7e37371a8f2e8b00872cb228911f93c3ef2e21b0cbac7a28e32d523f97b63202ac4f4f34a00ce843f807ba8cdf8daa64119f682dea2e610c27a6f42c9c568dcd436cfc13e35fec0e4598abd654c17b7580c96d1e85f46b36414191b7e32869c330291f4ccda8073c57fab2b7df898546eaba16062ee555ee964f861cfb3594d38b6a95cb33320ca5a9448d9423302975758d57d157b15617b8e8f9f6a6b56327a1d8af8c3b2edbcee960b05aa949ee36639c0968303bc6897aa2d69805805cb12adcec4075e1efbc3077529443197a8713b719f140bb82cb4c1706f702207ef8debae5ef98a7a2e0150625cb00678a092686aea297d65ccd983babe3b08ee82ec743a314b1d5eba5537ba41ee8658fc840e292b10ce40488e51a467981029daa3829d13c72809def343d878d3178e9b1762075f926f8397a62561863c26b6617a6107599faa3c1b35eeda04d108233249d9bdc6070f0d2089284d59ce386be004c73032746d2a56867f3533f74b1c56b9e03c19a39c0c7a04681b4af675f2460f445d9ee03e93e68f3cd0faadb3d469613a1fab51e57be5c047cb2bda9ae45b656826d6adf795bd83eed8b832f6dd261bd74612ce11db74f66565bc84adaa142d364db8386954b1c4a3ddd4c676101a553f4abefd097a1c00940ebf612d3491dc13b73b1324fc98845b4fa514a2e9c4cf35284e9be66f2fc10165f053ec3cb0dace2adad36fd1647006b113246a901425d448273e5056f89140070bdd79e7bff647cccd60b9ce447891d71d3abf69ca75cb8de28ed2ca119cdb642fdae75b055dc663307e25ac25b16a936b9933922f898c74254e058d745df3edd448be0ec8047c9782698072c78758887dd814a72ee9bdc1701a83b89ef45881d0ce29e9623d0adbc5c933120e1eeec9a2fb54f4794d79afc353a877e58f9fa016c0989661cc294a20c6a4aefa8e0fcb58dbbc86c36724e33bc4b8cc0eb9b42f53e55d08bc14c45fca6062c5d4f9deed006fe04743437db62906bcdd7b22dfff8a573eb661b025b08aa16d0d9f91264f535c2a25759424de89310e38649ddfec5f64877e3d16636693d2921ef8ff6f21217857efddd2dbd5256dded71cdc459fe192fe35d02c1de5acd1c710743fc6cddf104ca5efd7e1a6f8d814aef92a797c2cdb3baef57bd0ee52ed2b42db28b47b43c19e19513220e079726c32a5fb9e7e7c349268df38decbe37499893d2c04ba74c65b86cdbad9a253c61159d5450e93c7dc68a8a61f84874b153d53d58af7553ae8a41d0e47d59ee07b4bbb0ce337b5f250dafef0be46196616f0de867821bb004ea3b85645500ef1a610b1de645f7c1eae5f6c6f80489122321045ce4f31a40f2e2eb4600551d74a1ac508c887b301fdc8571d22f71d74450d780c0e55eab82c0aaaf5177e7682310c0d24279b837c515fd6fc2ea2a5288f804ed6b8ba0dc8e60b4063bcf404e6c6c295d497dc2b10c1cc76a46fe6d8fee43d2cc282ade9e985dcd1bf11ec9a6c83312f1ee957f6c57547cd41e2dfe3b73ffadc576a92f707e9b7556d1372436b41e55ba18f4f264ff059f52969c04f44ba29af61113a019a6ee2313cec646b228f475198457a5d1b899bdaefaf31f7a6e5db659535ad564586b9fd687e5cd1bf098d344f517443f5dcb6fe98fa20b80d0cc713fddba95c25b7e1d75ed467d5527bfe35648356bc0fb8104155e22b51e4a9db1d5210ffdf54cc0c956ad0971fa6c330822fa7e527643a7cb2458fad7fff49bac6ca231aca07b99461a173e61677fb8df6e718db3e08d3a13a2513ecd887e340668d4e11131455f2ed8ca9a7f1d65feb8e472ac7a78e254a7bd7097453aff0eef5f6b15e5061e992fddc6b50a7ed6e2abb127321790e4f284e2abcbcbe52d171791b22e37bca64267aa6eb4fcc0c8fd2374ceaee9d2d9ad5186f9a3316a3f76c51d2a20265d16056db54a319253e28fec6452518ba806fd77cb062765ead84394f799975156068bb75d3b40cc910bb128ceafc23a5eb6c2b5ad612ff92caabde7f53de32bf14eb1b3eb7ab819b8bef589dd23543dce79ecdd1a9ab1c6bb1ab9032d4d7eb1fd9e342109e20bd4bdd898500658107c56b8029dbb19df0fa0b835bdcb9382647c4da08628fd4e7fa7342fd9efa989fba98be3704d68750623cc843a9537f7aa3207952f2f1be229e5952a4bf21af2a0cc7d0cf7dffa99cf38f1459aff4b741e27b298c31f864d3e4bb30b07ce55a33213584b850b009524ec96be3c9ef253e602b7345654cc9482574396a172b7f0175b394a4a6e15528fa990bd0bbf04f563bb61654b833b18d8a58f9e359f4c5f42317aef046346e9cd802da21f3209dc77375acd0ce88d3a2e2f7a4d2dacbe1ee6773cbcfd7adc7a869a362fa9dfb82f6ca680fbb56ff10de162e6d4530b02511bb413155fe913e1e02677da0b6295c817f419962317194e05c7c68c1f999b116443ccce1b17994207164b4c06c66ff22981deff82a1556b50d5b2c164689553c539e7e1275197541b8ec59c2e161ee43ad944a3e8e70f6b0d535b56f34f68c56d60e7b7f78eac632f935d5cc5df5391b94c16105e8cf20e5c5915fb14859420c71ef8fbdbb0adbe2893d0cfeaf50dda429e957c8f23a8b557e6a7abbb780cb6f2614cda1a27950295d26ba91befd38ef642bbe40f8fc4bd251e3684238111b88bd8ef1063bec23979bceeb3207d1778776bd86eb44d0f5dd6e30b2b4c39cedc2e32490cbc536325f50c9a6b8f895748f10871f72516eb0097aa5ad244803af8ea49cb62e9b11569cd27eeee04c37ef400a557cd646e9c4758d0f7f58dee7a603f60d0a534df3bf0bda6b55ec0a81a194dc44a3ec2bc5123001d89125a88020af8f387dc416fe9f93d429fb83288e6f28c13506fd7e2053f0e26bde1d2e9410aaa45740653708a73389bd7a9ef4dd85acf45f19227ac60f2dc133d6285af29cff774544913eb6ae15c7986b94d55bfe7e41bc92652068b699c783efdcdac361c7bd0769f8b3fa03ef614991f73173163aa5960fe61d6dcf6f575e715221b0a7404655efd40b62cfecc09799273dc366662d994698eb00e09170579777941b3ed7ab13f95c14ab2a84e4cef3704d3917e8ee8530012074b7900b4e132f980413a486ba92104eea9bdc191af8cc8f0e755a246a0a5c3021c7e0561dfea15490d71e90d42b375ca69ddc4bc45dad4153430b33a7efdd9099f51e857bfff14cb89bca61fe1247af964c5f6a0a41d46381e013a6a0e06f66a3c40e9d78a16e465b0ca2589e980d23406a033230e3f7e05357c4f29d2dfcc5839776f87519d5d2b8a5548a8083c6d2148b87850dbd6d9f43b4985797ce3712fa7ddad5d917170425f4e06f9e7f3f5553b9c17ced7c1ba7d54cd365ec915d6f4214361509831034c91c00e3a78529cd9b51d4678c1c48198ad0d7ad618c0f3fd8a15741e8eaec96b809dc26e5f0d0634d1468088497bbb36d9fdaa5d4bb7f129fd0fc3abcfda336fb2ab1155b5e7d8c56cbdf26a193c6681d35d7c1e4db2ee8bab4a2bb28ffebfa02aafae842ea10a80add98760ff0f96c231d9eba5a7b04e8ff43647ee4666ac841bad7ea12dd6c9dc6f1b6fbb05a5f2addbd8305580b59daee15d99b16aae3a92c28a732e262a9aaa57922fd55b5f72919ee45d5ad4684562772747d8d37f9c72c36a4d24da119b0eed5c41e26c50160c47dbc9f95779b8654de2209fedf9e1fa8985f8312bf35f1fd12861f9d6de2ddfd7c6536764fea050726615c020f5b05ae05135d4f0e77769e9e8b7d5b488930fdc6677e8e2b0fc5bed1e0a82c094950f907ba7091af465e179c6bc184e4d661d5f6131af323f225d54ce534c63f52b73caf6d6fbcd4b08488939ad14db1d1916cb8ad31d79eb19f45e251a053b5ed350a27eacf36bced8f8a8f190cc8860402c69bc1787eb0c72464ac64b5c7af5cac66e7bd893e1468a0e161b33720c3abdd4b74eb2a52d0a5dc59e33c7c1e9d59ed25420d232c81bf1f13a8cd1fafc1f5878c5998a9257e0737c6eef28076c37badd6f3fc30dea136fc5778eda7503f25df5d75dcd8dd70e9bf7df20b387b3adcd05185391f23abd38d2b6ca932414b5f36374e17868e598692506f264927b346f0329c15f281b9bf36d6cc9a99c3521db76ceb5746b477d99ad529846f34ce660a206b21c9c9f7c3c05300831f09944f68706376966b28c3d7b6e4562d1c9a113d5dc805e99a0aea778093d9851de955c6280f2edda634873ca0e11fe9598bdfb1a79a3def6076efb565fdf6d813438e1e5b727d4b4d2a2f99f59bdc6608f4d576c8e9b0906e92797245f8637b65ddeedc90e62c50670e6f58aff4514fa3f5145904e9e134cb534043fee6b7fbc454cbb64b4c2ae870da148f5b330e7e59383883469f3c2c8ab236dd0da3d176f0dc4ab66c2ca325f14ac6ba9198d5a4a493462d6c222e2faf3e1bc14f6d4f83fd4926169bfe9bc10ad419f9b804299d7eeed45354d7a4f2a32de8dec5ddb2071d5f9a9c4f6f2781935f2543928cb84ef4cc15427fbde98401cc724ac0608b1a2d6fee1e4d5276c3f11efd775c469f1a3273f3c468da6646564fe39471f1cb700ad8f807fcbda8c47026edad69e8331d39107e35907910f12fd91c70d24c7e7e72335dc89e08472d6579610623f36cae7869174bfdf53429c2b7d1a03bb5d716b847b7e680634f6ab6adb03a261472f09d90d702ec40861ba2010343552c3677738088b0197c56d6a0dadbbe9220858f9290efedf2d1d6f3e04f40cf2d601d1da0a20340ce88a9c8bae187dd3d48890af4da11233f6558a2d52e011934345494cc3b44f7b14dcda0e73f47dc4af340207b3859b3e8c307835698ac20f08542fa686b49bf440b34ed3780137918a78ee5d515972208a7554290a48b5efe5cbe6417c9174dfb3acda22f9491f933d6cc93ecf06dc0379482ce88891a0baeda1b304b538c82ade9a5835b3dcca0b116311420f5d6bed45a35c693d09bc4d3c05c7d36bca5c34aa2babf96c712bf171501565f46cb2ba2f08064eae9d44a95749379d97e2b8b388be9675c0e270bf3fb93dc6fee14eb5d802334dd803a0b6a924ba333a42053f3be4882e72b832d80c39adac3fa779ba38b8800b994b4c89d5d35749e41a120862ee2e6fe29cf55c7d3055f45b5436e1d60d1a53627671b9b4e6a330d9785309b62b192f46b9af13d9381272da7fe69f78ae477ded20c0f0e73f7ec1c5769a1fd4d680987c546b18546c2676d7d42c5583a572f4a94ff0b80bb552c1c2d9adffe444f4aab70d5a543223164775662d73c36e9e7c1d2fcc0995c1784da793a445b324483737c86def533e771cdb8b9547632fb1a7fa4e08d26f79e863c8d1f8e9f55eb2f3eb230310b8e293ba2b4cd48d574df7e860ce911a28f3a8798921d27d11ea8b484cadde2dd83d0211d486171c6beab26eed3059533a706683e363448ef023c13713e20585c4f3d109d46addbf474be1c48d3f71d0236094e7c343074668f5dc84f0654de675fcab4f246df8f76fea41a7f2873079b4e37ea2130070cc5a379622283f190fefdfbd66df7d5c95d80ca5a11395e10b690abd84e26eda6b7dde912aa9f0c90866faea4e64a830a6d4459f9a007ad7e47a2d793fbf861f8685cf21211ac513850c5d2fe26f05afabdbb9ad8d64b70d55bf4d95dbad87b236a5e1db05f5a5edd5b27042d4e9e784f54bf6966c70be1e2f2a74cd227256a3475d4cbd43288fef7590008e0d5981396e637305ad0309242b4c5cf4aeae037bef0f52050161e9d85beaf1d94b5c3298fbcb1f66ffce7f3a35b22e01f4422b613764170f01623885de923e68bf2c2bd6e5e5d9963217a2c7d0b79a460f53f2a774360ca8c69b6f85c0affce152a14a298fc4f9a7622c6d03a9cd4574376127092a0a5938770191a1a8b983ea4031762f70e342006a03c4011b99ea41fd20b0d25ce9a178072a9b1dd38657a8a09d3f2e4227a3c5f4bbf555a97041bdf7cb90f624b2977dd8e63b1ae3b32de0cf6e94dfe714cfcb968d569d49150cc023d9d2bf6152eacedd5538e0e59cc5db8f2e0665f87da28e53212d0e90eade0a72e747edf4d516011c7309046e5509f7d711992904d0c64fad23f70df638cc7068c1e47840dee896f33113c365cc7e492bc01aacf7fa752e9f3c02e2d1035035f4386aba1cfeb03c609df1add61d02f1ad6668dee60f303f44c529b832f7b36cf526585046feca377bf36a2536129deda276725a23b62cfa6778b4de8f8163daafe15a3d815489732fa3a414a6e2ad80213629f92d67cfb7b792034ff13c9cbf1cfecf445b09065a48a27783120683750cb88986f51bd713bbf2cbafdd8914262238a85ec5c93070d84ba82b1325dedd513cddf26b78b415bbf8b4d79613c52e0b92ccc2bb5f31eb6452c6780ab7cb001aaba0d1b5df245d13db043df7ac3b8750eb20bae8c2150dd677a9c72762b68845968488dd67f13163a8112261e1d158023fb3e74896b12b6595c7d969a8b2a0cd96ebd1ee5a600ec53ee530043f92353b3f6c83611cf8f626769a7b246223b80300567de5ababe17ad7fb1e62dfc09d40b27abb3e2290bba9824381f999a5ac3be7e022333eb3eba7087ea144b7d149b8dd2325a638e8c003ceeb239de3d8866ea84ed99be4f55aef2e97780cb41bb69fa8a0576bb032af1a6926d8389db97f37ce2cd1044dacaccbc46b316222e2323f625f36a31b41920c799f919efd9421188eb64546116a6d44008ff629ff189485efc299bd107a51d49e5279c29bbdba41a0d5b25554a9806b362ee6fb10a0b775b6b02a8490c40e978597ca69158e5e559b1bdf8b30c3b0a75f0398504f66b7c6845ac704c9fbb3fd13c01a9b64d063bc3349ad1a480e727463c48e65254aed2217baf565f64b666353dc5c2cb06e4e88aec79ba14e76088903e7d43b7e493121983d6ce84cf6a8ed2ea91653a732ffb704d62817b30477ca447e1abc0652fd830881c224826cf5a985cf0f21d82992f269c29f741cf0898c4a36aca363cf60e1c5ec610d78fdeed7355cc340855410fca3f555df41f1b1dd9bbbe5f5a5bc183365900842db3eeedf28baaabe7c411d9b900325142fc0a332fc018b7d1d1c37e6cb81202295620e1fccb9ca0ff0810aaf164739d4808851d3ab14a44872193a524cb20323eff47768c5f9c0c316c5a6ab39bd16758f223f163c271bb9ae3e5e58152dc5cb78e1a59af72f755694b16ac291495fe6ecd7f726e40ab92b1e0472d685ffc2c7003e1ade7721311debce50259e810cddece87c59c0bd980ad668b6c688d49493f49bc652c34dc0f4246131703426331222fa8c16ad9f08035609fdc375aa9d4f932c3d6351d495818a93870c6d763cd4d63eee8f0384ca3ac7c8516dc763d6a5efbdb76eed8e94ee98eef794dfb8645dc3d01e1dfcb99db8aa03eeb7ff951056be1c8b34279f257769a0cfc847a94d641f318fd63b51064901468fa2a782856038b2291d1f7d5dff36485981809a8c23b3af003f63dd787d5d5b1c3b2070eea2fc0662483b36ccd1c2b0310419db49e1857c7e3e4a36c793ecd8e04f22b71dcdd44f0c0a22714c4d940221612fd9804b7a96aeba886e1ad49c437b92b68f5d13b727d54e40a7624d454e7f5b7faa25feb6d70ab73c9031a080765389f7fa924dc98275c07ab64ba726c4219aa4998e019e87fbf9cb622a133827beb4ccdf0543103d3a3cd5acb3a2e21637fc019eda9ff805e76b7cd7e0b53476fb111dacfa98e7f61945d90cd40dfff5d799cd3f2aac8e463495b4323c50932bcb9a0e9294b56f0f9e51fbc17d4ff73e3b4ca01c6da2646a2e9cb85209e2d35cf29db6bea270fa2d69ede2a04be1ab0596513f0d1f3e51b2ed62604b3954a837004806dc6db5cb28d0e7ebd36e55b828fd5db2d040bc08ee7186ed85a3b1ef2a663c2ada8ee343672e9dc6037bc27a0726e6a9d827226b0d079ef6c61bcbdcd153e3765aac92b49f29bf1cf93bdd83ca82977b7306cbb2eb3a84340da4b66d2d7fd6f15d6db5e5444edca2cfae3398d362a87dca8e2c44208f95b31333647e119e9eb58931110f53c2f1d6cba105356205f0bf3bd354a0aaeb3d22290addad9f42eafc5f475a54631006c7317ebe60c6546ce1278a594674e2d4612cf7b305badf209b6624f9d072521218536b7e53981a56d21766fa247474580f52fb3d2b7220a91ba33593ba4a06146b5175463b8cf826db2eb8659de6951010c347cdf93dc10625c9095a83914208e9b420c03ef1a2856c78218f9cf83bc9225d2e8a3cb7026dcb29f07dcdb3b8daabeb0c1c417d2c451516b78d4d5b9b9df09a00afe525d36d2bbca6342731ebff8c26cd4a79ef4762483c83762e243edfcf19f5857cdc3828fb62fb9bfa7de7ad02b8dbeb373b5cde774f8d0dab19a4b13a212655574a217ae07d600820f9262f749001e86d079926bdda9d914076de0e1765db9ad779c899573804eddb90ec1f514772e065f183819646a1c5f09df20bec7169a2b2ea32b10dc7aefa72eea3dca735a4e0ba50fa98b2d70c63e5452179d386c7925934314b34b779209dcc430012f8783de5354bd78e855271a55d3768de95a48b43575dd61081ff2d38eb39b08dcfe5a41dc81d05c11e65c096cc6eb1c1059193b9946e9b8f83dba3f03678cada7b636f0357dce519c4c4008260f87f4ce760d0a99029910030caf5f3566f11067b328e90803f9985ab5141f2108189405f0b65bb33e943266e80a3535890dc5992fae91abec5749b1e3a8fcde88cdf43cf439f74cb876a99e45a0c8b5721a0cb9209413604fa6957a7384dc76d9f359c866d8091319d0c16f348fdbc2d4d59af34247e96183bd4a226dfdaf6b0388e0edfa6df5627c6915f7da39c6554644a5a417a41c169eef7eebbc4753bd9781b2e4352daa95d086c39587442f02436f2c98e88355f37c7ed529d47ac0d284d0e8a0c1c7652f3d65653cff24c5b5f7be5ecededd4678c48b29ad3c8ab6352862d9419d5d89b84523baa20fa63debc561bf4ad851e4395feaf4ef6e237ef267defcd4df7d0ab188a068ef4ed5311395dadd9a02e50a928aa97af17cc61d3a249c6347c7bb021300cc8c0a0f6f6c98732cc2fe47b1b5e1b67ec0dd7d4cb5471b41444af768c172cd17c79784c2181eeeac79311397db6db659e0d32e49fdefa45b6ba2d32d669ac1238861318a1a71e59aafba45aad4747b7de6dc1a90137615df2999f1bc410bd388a5312ac9f4f26b4e0767936993a7f422b757be2f3ae5ba3da6c642c4a390a6ddac7bdba60c386daf118ed02d62d081f3c4d77957f0a093e1904602d9327c92b8cf7a2555b46e19a09b10c1df9d02b9fb1a34b6d47b596048d136401680ce35127bfb68386009763adbf3ded960b98a73a7cb341355adb642de4dbd5599ee900addbb152fc27ebbe0e9e5ebd8b8110e869f9b1274a6ef4909a1edb3ef5cf5f71e6e0c4a2768e754eb5e514d908e7e89a6c82cc60ddaf9464d9f16903d6beaec3fdcd7c82bb54f510710a5152d3f5da0179c503b84c04e0a532b9d508b340681f722cf50b49277e642517944fd3c4390d2757acb3f12f6828e66b5d9e0077560fb89b15499dab3fe151733bc6ee48752192df3deb7132642172f709cf145b77faedc30cb122c7ad9b055aae729ba4b0788310d55a7889ddf4ddbeb43f42e365a4ae3a90a2141d890c32c922fc4d8b3fa99e5d7cf986dd6ed0ecc29b557c0d1c6150ea8bd9b885ff643b9f4a7e74617bdca1b61e08811986fa0e491065cea83c816253266584c7c1ba53568114e900677cee29ef3b5ed524f6da43633038273400e08e3cd5bbb771e8d3ffdba4d2e65f03dd275feadf8366cd330246eb8fe47c6e74fc190a64740ce573f81731a3c59db6d2a8bb5ff16787af3f3037bbe1d379071113df3f3f7c53cf572268af3ceac3b5879d175cff8f2be277a98cd42a264499767ba91e97c751712fe4ecff7f31e81b591ec3f1b0cd2d51ca160501dce358f0bea0ad1065644adc6dc21dbb648693325687708706e4e254d1dfdc56b0ed63b07d6c031aadcd37702d93dc6e654ddeacae9a3d962398246de0ad04149de83a0e28f3f782e70e0f8173f9d8f90e73fb59da8722da7e3ba76576c14728c5de4cdc49c33034de7e7edf68bb2003c85f226db463ac5c58db6e0027e3cf52688ff468f15d1179111451574d246fa66e7f35528e45d67467862b07c68e7a071fa0b2e059a8334ce1927a5a230d2637948bee69d4f355c9ea57479a9b81080a382daf8092689f5f459f662c423fed3f20722d927ad7ad70f5e3da82733cb4f3302d581a024b15627eadec09fae01770913423aac432a68fa20c6cf84f779fbec7b47066f2f02162d78bbec550a37debb7943fb2d6d687feab436561cbea0e855a1e141a5ddceaee3799ef87a46e46fe1b5c45a084f6ea65e82da5e6df678d685877b826b6c1e2f7e1a2eb2f7e8db5a69ccf1d65741e32827914da9b00b0a0bd2599ca068a9130dc4df52b59f08221702303d33f43eda6f9b228fe9a59da8f1280b8b50cd49a5fc953639d0eec64229f03e4539a61c3414c2e0405b4014aad4792a9614b8b696651afaaf36d987c5ca555b14915e176d08a51dbe1b7e10e05e8be57b66054efa5a186cbad9472e686bb91c01fbb185dec12feeabf47a81691c8f1b8e623eb243adc77519bca9afb97d3088c1c44523e48902796102c9d52196ba22d8ab49d451b0824bc2a2c78d9dc83fe18e58c80065a20111e0556d6d4a1b7ffb46386bfc42dc3ea03a5e9a2d2aeb36362b3ca13141881151b8cc4fc10d668ae7d381b0bcefa9cdec14874ebd35103584559eb91d58edf45bfbe25a77078cce9f75bcd436b3f536c09cdd153e874197e198dcedfac07639a9aa100d76ea92c7fef45c854043533353b081c91c98fe83bef0247951858c18a775727e1259ffaf4130e345a675322bf51fafba5afa1183d4a935c92c8ffb24038c8295100818cc86d1ecb14723debcaf97b6089ac383cea2c4dfc239c555a4495601241f46f417fefa19380cd9060cecf85f8410e125bc8f5a8551bb928271457bae9d6f008fb70019811ea8da34ef6e8503e87c41ff2fda98328780b743ea8852ddaff880e0cc33151da36d0c1a09a28e51d7c919b6f558876783b020dc8ca412b6a5ec07df1687514aa45113a54dc2d2c33df117ae0c1f265baeddc249e7a1ad25d5179cad470794018ff95076b0b1d44a1769d2560ce9ee4951fdff1c0bc0359e18b8014b27822b2700153087ca16ac04c82b7377005d8289ef23797632a7ff8a57e4a996762a7dcf5f0cd4a3c24cbc519a45ba7f3030690060af5a954fa082f38b756f7296c9ef14daa632375a152da67dc3ad96ce39dabf17526330b2eece337baee2fc35027953e30ea4bac6a38f2594ccb06cc94e5783c0dac5231e08fda6e1a663893a54cd6bbd91e0c301f3e4a936de4add89eed4757944b9732f8bcf57c4c305174b4efe7eda0cad44f71a10bfa196cb604d65a0b6b131de90e3f7f331f09c7812ce8d61874158cd0e72ee13c7d755e32c4409d068ce5addbf1e9e064cb492aa7ec532b61f93d2e2be8ffc2ee31e514f671703b5bda2cc6b1852c521cb9e45f8c7ff8060f9d4fbf04e988b4b3a6bff5f3da81a72886b86b9633759bcc86019c8e0c760634b32e8667ec647723a1bf493785ab16ecb5edef958c07f4cfc766b25f082965143e7a8322a90c37b21f5be719f9f25308ae266e461245afee70531dcd4b46745a001342cfae71a30a8f4e36cfbbd963db12ffe2d2a202351010e5f547716ad7761d636464c4eecf66ff228bd7746675b89efb79dc1287d07c29bbe7dec2c83acf658e172b4c1c7347eb271da31972a98d0d9ac03a3e4c5fe20a795d15b0d27efc4a5f961b7ed1fa10d200fad88315dc88b0547699bf265cb9ab7d69e2b9be97c11b10475912c3ae088131ef4fa518f17d4ff38f0b2a3c10427c61022f050e98f22f61708f1425ee22f3a65ef05ed25b4b8790cd2051675afdb4c50eb0f94de7a934e533e3e51e5c200a6a0c715e88bcb0e8a0023cf4c3640dd6688d74617a4329838e6ec2ce0cb9281b3783c44e72e0d0f2930fe203b3405f9f9c69d2027e08d59d2f0e409eb08fd8a79f13e54b5a2af39c1dc511bfbca53bffc214a7c0b30737b611206d12d475d4faeaf36e49359eb7af2fdba9d17fb694b40e79b6dcefbee5426cffbbd6c0d702e1d08e485a103e086aebe1b2f9c13694c3dd3daca2b627f05abf61b69cb36b81f316cd306929d8db5ad05d6fe2fa3b05e33ab0374fead3e82d923f3cabaefcd170837e42fda9c3c0339a93585ff3236cc14740595ca8e634e0df9acec95f0f06d410985954268b618074337beb17aab57bea57b6748c1a8dec1945feb5b7ae855cf72884bebac30cfe2b0c1139b39936879cfa116b5753e519e243f4634d3357dcce109a83d3011c104f8c8ff14c6f7d2fb934d8d122e4f90d87162dff3422717dc6e36fa054fadf3105c333d2b4c4e8bdb3ab72d4fc8b1e0d8c6622d7b8c40db641442ea73dcad5642817ee63a715ed6026f274aa3e9dbbc438fe4f0429bea56178db401d5845eb996ae4daf08d8c4d6ced3a0ce778d408ec0a8ea055e67558858650f6ff7405f90e8e1bc92ea69c95a51893aec6d19408fcd5402eb9554bd9076751b40c6a758f28af417e0667b423357524a6300db084ca8f45cb6344cfd713ea83fd13b05d16905802f2d06a4e3187800d8cbe5bc00aae2f21512d1778a74521bb3b59e36a65a9fb3e9b62dc0e1819c869abd32bb3df0f9d66f64235ddfb5bd9111060b95cccf5f985324e3daf36c5050fb2b10bdfd663ffc24d266d8691b01a321d15bf3ae8f05a4a1b55a69c74a576de593418dfda8f151804614bbc3f4acc4a9fadd9a9b9f44e3bbdfbdb2805c1f78124b18f3bee509393e9d8ee68a72b8a844395a1317a6301a38d22c5183a4036aeb32d1a438ac1e19ebe64733dcc43ef7e4843a9b5d2690150edc6f1dbf3aad179e282bdb1138a58b57c3a2d451617391d5f11b39dc528d40b9e0e14b7734265793b3edc718b086833df1344cd6d8097afcf94e9673bfbb104b1e387d4153e7391b0ec071303a3c408e658f70f572bd5372bf702b8005c3dab5b3dfa54ff2c6080c614d2fc7d5c4ebe26697040f4a3efb1073a7ab2e65c2525a5700755c177bd40bbc9d4af48beb8175ae7ecfd650d37b8155f514223d9ae5ca707f80b2bbfeb9a8ccf83cef87c9234c7d0bde894f7a077ca5172792468e97d745dee6ef64fc86cceb62d0ff8489456540420d1843a7926ed3d75946097809433377b93f8028d6e11756a5946de269e819e965b4cd0a15ff2c3de6a2287fe226951c343b705c3e29db5780d07acec95a1a6630762d67e7be9197536cddb457d711c1ac3f09ab16af356bbe0060dc75c8ed8df7971bf60b2fd73093420fa9d691d84e4ad79d139abf15ab2b9bc627ea17a1c1f267d1350e03dd7d54b0d0a238cb798fad74e4105a3b6df4f237a20ee5bde67ea66ac471d8ab3cb0ae97dabcd4e3563722742c81d64dd59e4a4be2d49d707b622082ff46715a1812e144797907cc67b6772b6664bb6c63b16e3918b0d15e68d026f48b6449f957214b6d3a423ca6eeb0388f8d9483b688efdddb0e21e54715280f3d9df4441b8f7cc12c8d430720fdc37f3841ac6b991a8785276b7fe7f8333abcd75a8ffe955ecda37c3c321ff3dd941b7055d00d8562035fa158c7e11746aa1332f36cc9100ac2ee14fc722ba3d38cb87dd45cd5553803f48e65d8ffd8b88ea5c6e9f0393b3404f5518a14c630e6374189f50ffe2efb0ded5212d7197fdcf5d6b1258a38074a8fa484d150219742569a0a23f73ae6813070baebb8c31413b460388fff67956d63649da8d7af1fafacd3678d06056ac87d6c63b0457d22f74b06521c91287f117ab3a68e15261aff6944d4c7f1417aebe1a60509f4523d56afd573cf3a28348aa97db498e8fea3383ff2e25abdf5bc8126e01a9f9d4d744aebaf59452fc97408d4e520a624f9ac60b5d7b57e4bbef46101cafa610bc8572f84941f8e46dab0a70d2040111497fdb93c4a14f8413fa808d6591994926d5f16287f3cdc7d6c7e90f9c54258f1be11d5d15b6fb783033bd0c1baac21fefc00f9b28e5bf1642cf88d913f9f9e477c9b206184c353c15b0f25e998f25008c8270ae88c1a7c7df91182709cfa0866164bf2dcaa0a8373dfc286e2baf78baeae83812e3b97e122808a21a3fe96ec240ea030b07496e8f096b55cdbeed3ab4b288f9063507ab15bc988ffed5a2f197c85ac24e0a8cbec9f770f74848f064618df2a70ecca4a377aa0b6e78eb30efb91afca0e768c3fb23f5f3cb53495c25b561d16bc8416b2a588be068eb63cdd6b520442409429ae29235ee9ad93a11b36cc0ae354908c18ff7e9b984dfd79e3f0e03f065f672923f4e0220a99587802e92182d5f9e262d18d6a8fc1a978d7473d00772a701f35365221208c5b623fe807715041fcb073f803e0c41c668035442229ef947f60d2207de89f568205e8b93e96337efebd16db28de25ee6f3119e50bc83b8a601df2f3484e8b9d6326fc3be5a2503fead58ba03a8a6ae1337c2889e9c4ec2041e113c5a2f465c835fedc5c420946d48e13eacdf43776673dffaec1435a48055811cd91715b2874e74362a578bfff1a929fcd9b23509ceb4124e24d2b9d0417e07773fb779863e73a0cdf80acaa00975262bdce7a3bc471ae9b19fd9777f74ff09658582020bec6b1ed76beb9b70af23bb95aae885c4de529645a1fb4ea7aeab3a3639f664e2a8ab2aea6018372d3b8a45196623f198ff93291c17d6cf84c33732b06f8932a90d11cf82b4145266207805af1d143e36d6d5286383a648ffd491f4a78a51bde6b612e513a55a8119d40bde2a1fd587fafd8433bb989fc2b046ee0bb38ab992836a4a70bcf923baaec222a4d3d3c2996f17539c99512948244beedef70db1b92cf9de2c970e679060153051e28487d0d28b0405ce7de6be970887d46dbc4899b3fa3caaeecdd38d0917baf8f0d6166e495d105c801ab8666e5d2decdb8b3ed6efc6209cd61937edfb1f4769d5bd6df1bb02a47e13c3cad212d56fd9fdb2c03399eaa1787a51d7229118348e0cdf529cd249914a1cfb28eafdf11a31373078932c520e60f400970490897a4bac99f5966d7c9deaa2bfb8d5b8a4b4eff93f237bc0558bc32a33ed1a121cf22cfcf75d3517014890cc071fba566baf0a30227ba6f6f05593549c0d1e8411c9f22e716e5f52d12f7e668960f8922943ea38d341d0c34f2b366bd72435be4127df1a2af714be16686df58af57d403183be5a856a31fb19da57a80e00dd89160222d93b710b067bd81e579c71d7c40d48e537394a2e9069f10bd5b38f4cefe7beb41d60d53ddd3fe270e7ca2ac658761a01d6fe958b24460eede5f6c859dd36e3cc1b54dd86207a69e8bea3a5e7ae5de4df56f962e2788f7a443361a00a70f59d771ee2f597778a763ffddce0ae0229ddd6ec99f0a38d86b72b8fff214488cafc09022ec7e24e32772bb8d3f6513068a4b7c77042e0849a56a00b8c2eeaa28fb57f65c83f194584336a0b076888917a6d3d782b152772ba9b08c7e3fe7692646a0f972c39c4ee40211391a90ed8df12f42e2c5db927f3248f1004bd3b894a8b0acecaa6ef58ef9801c4cae866ced1f8db7c640367514469d9f783640f936bc328f68715e02b9a0e8708c450fb28e03e5268f30d14d775e1c4eb9fff9a2eb8704ea41545ef5169196a52a0419e6e3b98c5f100561a98ced1001d2381b6cfaedf5ebde681aa947b4ec82bc62762eaf9a254cbf545dcdbf8b6c43759461edb3fd8eb0f1327514540afdceda672cdffc1ee5a9180c9ce1f3c83bccfcb45a9da5a7d4e00a194d56284b3266ea5e230ba04231ab47de6be51549397b5180746e1d02bdc2f67732c9177ba81513a46e034761ad3674df650d40710849d8774508ae74702e32aa341270aedd860916abf3cfe8f42a7129e6886ff0abe805d8ca89710705e634f62ab03d2aceb2e1ffe13272cbee1e89ba861c5ed03584acd0aa0e7218d956d86a58816b95a65e6f5715c3acde0584fc499f1278062404b86ad07c8d17e59f8bfb4bef8c143cef2a49e27ae4864a3ab39cca0d081673dd0cf2d3d3c2e8dd98f675165a6b7cc1c248618c3f57eec1e419a9b89cd9391993ef6833b4329beec2bb9708bbf19e71c1c87885ba03fc50cdb3a1d4ef9232e5681ca5f0f0cb6853215465f3b0d4a2e7591d7f843ba6361918a34ee988a5974e3bcf6f56e43815bc2165fe3665fac7e5b6ed40dac4139c2f4be85f1eb8656c6bde9a67a84bb21f516fe6cbdea8c10b30840be9f2632e85f205ad940e477609da37aa92fbfc3216136a0603c8464c7aa4f001914e64da30ff4331d8486a6df46b4b54bf0ae31f6628dc54afd8fcb2adb2652acd96f55c625b4de141d50187d7f34a402ffdbccab22ab8335f15ae08428709c3b88f51e6bfff31df744f2e85ca858bbdeb93a0d3f7fc2174e54371c5b9199c4bf955910597af027c80c4b01efc8f381f50b4c9562a2de2fbc27c18e3546791bd0978955776c799c7f6e988ac08f194490843145477ce45dc67fe1d26f15213da00567525af295843f96c2e7e25456383a738bc3fe46245577894ba953d907dff55e825e5534c602e6e63ee6421ca8efac5e2f8a913e5ece10bcf32ff5e3aef34ae4cd10f10686c3e1bc1bca62e7dea37a5a7c6084d034f1802eddb6464126a7a2ad6004bcf629b8dffb666d461bef777686b311248b8d369de209c239b3ab492dfd178bed4012a94463c8627ebe518461a6346ea057250a046fbacbb6c9235da7b44f05045abfba16903940bb24fbe9886fc770763d3b645357ff4260ba5017f1fe5618e292ccd6ddd646314322c86d51a1b62cc1de9c7c37a1ff1669ebef0164c84b1abb135a5359c5d426fa577880c5d7a513b15360db810d132c37b83c7397ab4aed4471650c2a9026e1d6f9a6cbec017bbe1b41503e459a13d98f4b2d2aff2a93041fecda43983409d1d3e1859700ea3b5202b781428431d09b37f470abde0393c10bb0da57d3863e104baaa50f8dd50feaf65e7fb221bb2c82658861b8fdac35b053c09c49d929ff4348f7d0d69c600027c3cc80dbb069e694007b52b553ca76d4e49c71e63a04da27f49ec69860c257c26d267008bdfc939d4a1ede36070b28b5908b98f1c23033b5a02979ebf02b18387ff04fa706c915022140296a7fdaf69c107213e6509ce0a83df433050594763943e5e10042c698132f1d38915cd0f33bec2b5f6634ceaaad836fe88ac2fd956f9cfe0c125a99400cfdad31fb3c8c2e7117e3ab53d3c7003cf2852c8c0ffb5eabcca9c7b5e89aa8211b7f0ed21872039023600b0ddcf6a7767b20154b15ef3be592e6bb12dbf01f91d95bf9f468fda023cfae4c54078bd887325ca043e567725f66a812b6bb656da8e374e48bc64651395c5c20b2ff57dabaff0f6f28724d321a3bbfcf5ac232abd6bafe19fe372e4d1fd732bcf80e74946f2640231e392e7bfae1c1eec8e85d840bb61e1fb2666199cc17ddcb5fed2b39aecfa670617ad2450052295c81d43d22868f8f02cf66d05ebc9c8aed79404a9248f1cfaa9d9fceb1366b4426d4f8a13618512a09aded424bc035c43ec663951dfae1cc836c75e08a0676ce77ce4bbf52705cadf3428c9d8c8710d0081b532f1012572f0a625a7789202e21fec5da12081c0993f69d8ccdf618ec8f33dac120bd8762a2611c7280a9fe1dad18b0159a7f026a87b6ce2e17882048205715c0e069c6fec794fa0a803f08ce915d0650af0666d00a76ac4748673d3fca5465ded8f101b59d35e22c377a8e90a97b5212a99fa73f80198851c4cd7ec543d979cfdafa28406c633f5a2cc85678d898e92cd61cf0cccc722ea1f5c118f5f58c70c01bf01f6f0db6c779cb75851f4d0f17c799b8a6de033cce4c4292521adcbe6f1d5f4857f48450dbb9c440f5e14962c34fb09f57467313ad9b4865777329798d2fb4a10e5fa680d3c7de77d18bdf762b3ad4b72bd74baaf43f9dbf3cf19260f3d4d7542fd02076b33d068bbacc8a7072c128f68ac513c3c1a1a23231b7a3ad5a95a10eea267a1d1270285eeb441590e7bc98071744e089e805502019677567d8f632edea759bf78632118a24dca2bef6fd963a6fc84420c537c5850ed6cc2cfac61c39b6071fcacd8fe64cc02afbd381241cc809c9b4dfadf5030ff5926d6508ecad482f316bb36b72bfed167f9183d6963b98946389508bb9d2a0881413dc6220fb18eb5dc86be90b49a6b9ac94f6e7230e69f147d6a19eb91db994aaf455136c87cd9d70425abc4bc526eab8b346793a748355878010957477b3bc03ace5a4206086131440a9f8a96208e5a43a375b497e99c6b421c5adbf95f86b186c6d9caed8741264b504501ff871034e1f147d1cfa428627d04aaab65cb6c685d0f80962ad23698b3dbeb884b45a1e2a65c7d6894c6a128efb5da73c22394ef36cbc4c5373d719fe555bce9ed1ff47bb5b36e9f4deb92b9f3981df2ad3786876f2e90806d791f5ce0336b9cf4690bac87f87db44d4346b1e59984d752eccfa3213e3c266fba3bc2a00d2cfec543f8e380ab61d3e9d4ce06b9cfc1e5c74b0ad26c70afe76ae04a53fb06ea999bfbaa9c2f6feb75fe3e4c7004f60f6c22d924b3d2744adbf7a7a8fdea278a12977f87101f858239dd0bed2f09b61dc89045ae1a017ab83fc2897c65badd60c790ed35fdeadd433def1eefb399bcd4cca3e8f3442ab6c814749c19afede61cb362f88bd5a9a41f6d83245b55e58335ce0723383f37ab1bb06391f46fd71b80bc7bda9557f913ccfa97c77cff09ae283e2a5ae4dc4d258356368c3ec1637055430eb117137cca1d9e9c999020d9a18342b65a539e595ca98b6c95cb86f421e4b10bee9d410ae8c7b45f7ed6fdbbbbf25813700f55ca696223d5592838473bf37df15911c4cc8c5af0d398a9c1f070bb9e862f19e90843969eff999fafe0a22f226eb0bb99ddb7ca4bf7e1a0f79ed37cd10dca9b4ac983f1bb074303043d98da413cc77e5560fd9c3df1292ac68e0b822fa14d331b5b23ac42c6a78c0b5562908f0e2098f24716ea24d063e6832982ef7dc990c0dd52340193e3fe6b44107a9e8fbc8805faa51d6b54b9e90bb6557acddf198bc8d9db4665d4fdd134341b016740288ceefd473a46e487f87bea163db118fcd4c3d59915f9cf5df8f2dc693076d473ce3615580ed685da3a82ea7a7540f3544039119d97b3fcf9faab26526cae54ccd8888c070b61c8d259e3b8553eb26eb57fbb37834595720c067832e96759445ccbddc7dd2170b6ce9d3774c8687e04bbe311505c4124ffb63ae094c758cd96526198cff9031967175f3ff8e00d65f127f5ef2acc41c9ddde5978f5b7d4c79d6746b5511ba1a830fc73a4034961a964c0fc0e56e33f7be196cb43726e271f01994265df093f090b1ee217cae0acbda22692fde7aee6571e6c371920efc28cfe7e1b5241637bfdce38872465730c020d848840026206f371270697b3f3c69fdf0ac8af4f8f2eaaf958cd63bad84d6fae80d93172c46af52b13c1e02b3aaa423a021581f4adc81be0b01455138c83a8cba3924d323c242bd4dbf9eca3d047e4531a94a8bc9d23910c03bbb487f3dc7fe58a282691504698e980ff26d75a6c171c8ba3e829ab707d33fe1ad8f5b3e86a112d5d98cb6c2558591df6a944d5f52836335c7d2e619ef82853f5ed27c8614538a20fa61020d0657098641034ba9fb2d7c010d8f5ab300582dcf32d9559641df8209a425c74a6a2ad58749246c120d1ec76060403d5059476b10b30765a7eaea1b2a7751f895f7f219b1796e6c717e77ed25e0ca3c8cf7da0da46dd43dfd273130733abac3ad97d46ed294e277fc548b30bafd51229b27e7c53d998b030ae0c94a36782a1fa3bb431946083ea5426d974e4289bdb7b9a2dc67c51546234d9f6edb86b79c0c3ae0fd8c6a817b08b2a7bfd5307c8dc953f5555ed8e601d43618d76fdcda0b1e3b486b51b0cf733ae3cbb6dc0c23e66a3bfeaf89339d7f27d5fa5dc4ea6986578d4867b429568a33478cab5df495639602367e615918de5d1e586f7cc89e27f878f8277b087f23e6bf88cf0af82d177c3cfb09ccb42a688fb5b5f8c6632533a2fdc1c9f7d19978d954d9a7f3c2598955343ad3162403d4f62b7b937f10cbdb3b5e5e7cd2390f158428e73ecbe0a13ad329b3131a4d541a13d7cec131deece19ff287b308b4a1d2fbd3220ae2efcaf1d7983929bceac06f466bd9da33fbf880fd37a736f4b358b2456daa22e21678c09068dfeaab112f2c4a44c8816ff4a60e63ceab7a053ed433cb96a9be1944adae03f7c63e640642d2a9cfe8645e3e783db8eb2ac7ba83e2fd3fc76b4df9f9717b77d0d0e1fe423326d96381e5987fc15079a30c0b7b2284f27f3f0774e8b69c8e04281b4216bf55a42d45ca88b062c9fbee3e04a07d6a15c3c7cb1698b4738facb27f1ab5495990da5a3adffd97507110ce1f64c4b69488dde5509e245f1f37036820c5adea88ce05f771b555a948032c74b64a3574fc7ad38896995cc4820f499c0378831b9cc7f15aceb4475b40f5f22a02273c0e971e12d500de3ec0d2c869de2b7472710e7c736c57436bffc5954be451779df7ac356e03b534cfff440ac30e26e36d541842ba238b90050c0e381ed4d7ae7bccf9d6405443c62bfc31b49d01c5208a5d1867368ded47b42f584ddf059645265dabd527207ccc8f2f7314ac6e894a2c06eae82017d2ed8177513203983fb4793b022379ce604aa22e70fde2973173ac73dcc1bf9c803f36d3089f26f915f8fcbe1898f1b8e12069676c96d8b4ec3672c72f52f53b715e06e258e34d2b14f0393671d31b0a7ff16d27ba11553dcb9a2443101ac87f134d35529cc0a6d2d775c3e680b6efc6eb1059999768afe2bd0f43695aea7f29d8bac3556f516010d99fd3003630a31c88a9c96e0b5d29c2d7847e83fdf6d2238e2f924b1ab3e4efe4dfd66637502bff57f859d752ce93d1d6756aa946f2bad7b30eb4cf0955218eccd44d27ed468dd9367ca0d99f9914917f9a7f8f595105eb5cedf7e5cdde88d7b0b6c519995863abc51284c159113c771bcf42913c31a3240f50e49b58d1a87a7aa055f3ed2fcb73dba8df9e86f88acc3fd8fb3ad3042a5e1474d1305f07bdb8bceaa5848ef3c836fdeabaa0082a8a1638b9abd6277cbd484bb5c2208743174bb60460aec5b43cd136e005633e2f3d527dd56bf41da3d9e35b722e795d58e8c3d362e5a180ba45f03ede3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855c4d20b7a0a0f0ba1da8ef6aa534ac20629575e25320b3ba1d8ccbd1080c6aa890d1ecbe84d59ba7201705582092c7a3608cf5986e3fffb30e872518cfdd19675b829f4b1f44ac99a56637d15af6291d19bc9a35945459adc0633bbc9627649f9f45b3d5d81b3bed5656a8254d45b884e202df174cec786c6d520d66128e2c6d9d4214e79c2fbc6e9d12e547100bfdc707a17ed2bcdb3dfe41d5a689cc6334c2af7adbb3ca747604e365f268ec5acddf877d2e599193f03f6d8ebb550f7d0330d8a0cf999c533eea6dd991f3e58bf36d5503a4a00fd3027fb8fd13cd1044f530914c47041aa06a7497f1e7ad5e19ac2aeb6bf5d1d4006f92ddbda07569069949d7e3725622365519d162a4fe028bb8933e218b0f40bb6c26093d5df421b810ef23febfdab2ea687e0d76d6324e3fa69cbfa36f06ebd7f1052782dcc2264100c1d4109ad1f00c741af1b89d40440869c94d0af41fa91ae5c0da8cbd2ce97761724829473e8b64c634b837bfcf5fbf3776b58d7709e1548912fb7931e554e7b588829c8df272a156e1b732bc36730a634cfbf5794aa17a16139722353b5e7975986a66f4e5ac2ba23284407e248cd18136bf50b7862be97b3b946ac2b606fb19b2995e00850c15f844eea4d4314735c3180714d21f199c0a1296600f30ec757e9f2693a32296f27956b56caa8adfa7c100b1f39ab3f3f06da972f71acf43b5d9ea9820828145d8f74ff2e02caa8b2ce190a2766f431e6d39711f8d0dd7000d269e667024acff4135bb8e9748fe900eea481ee41a9818ba41d632bbeaeff38f79ffba4c04992f54aedb14e98b30e6dc61f7d5ed43be238ba2926eaf41c4f3e5f82c971dc79289e1398a4d5b17ea3e69a68558a48a162ef737d61257120aa2dbc2f0719ee568f124ae82358950b7a6e2c9b8547f94932df99be9d01c78e0964ff7a939cd710294d0e3be23ea73f280a528ce8367167ddde4d75be7d3e7aebd7656d0798900cf83457b27ec4bbbf70800363dfd1cb68c5c9a7116628b2748fa787fc778bd6b07aa177a6233b35b4a98be3ce3c883fdfe7e479d162c85c5cbf3f362eae892dd0d9555b28122b9316f454b8321537bf8d90c06282cab86b7d223c1da1b2b418ee99843dc0d6e9ce96c7b2b249a1d9c1f22e8e3109d70ed557f0b2c865723ca8120f452646cbc7162185cddd9572d756f075b55526b721d3c1cf8057ebfe7a689d1d0985c2d17a1007648c01b33a5025162b610ced3204d0dc7f90434208faff5e68c52caed76cfed0f0c7ca6576dca38ee2f47ab71d21634ff77d72ba94e55cf51d35159e42c44a02183af5a08b42d2cea5ebc6c24d11c96ad0bc5a767ebe73386a1927ce69b5e6b76b1f869ae33112da2e45f563c290966956ef1d484eb003818e56c081af24c1262f92bee5bf710604d33781017b603322009db4e2bb0f16fd3eda32e1b1e27e998119d23a7ba9a1426c141febbc1d42ae35ca4b00578517967db9d8b58cc97a2224d93803afab85cc487dde026617601c598d446643605f150a69fa27d5264c4ff43787009f832ed42a52c0a4d1aa622a2177cfc79e5ceb63238c7b6a04f5fa4fd31cf7e83829102675b4ddd4070c2df12e96d3e227d72e4af14ddac05574f9c172c7bc676d4f3f3b0fcbbaa192a1fe05ece5f0e96af9d1ad935e0e99ffa134914622484536c59bae27a6ed70a85e05126c66d8e8b8e73aa5833b07ceb34281b2e678a4ca7d5b1ad10eb477c460f395374cde3d96e89baebe0b40de3bd623b271eeb682e214d7fc5d10d7d87d3f458d34652225d8a88ff28f721ee0e765e6a6bc2b5ac8ca910c3d17965b13e42a1fcf23a154d519fe99e2418ad7b19bbbd38fd59c7f4af28dc04f564617f0089cd0b391f8ecff74adea7abe865d77284eaa25c40a1075a00852f2196f27f8f31001b902ddf8b3c053359779a18031665f1ae01f0d42bcfce9f486ff0e975c64437a550e0d1f84721cda826d417a5a2b2cc6e05e8f50a5d112105b9d4dcbf4112ee97e453d9a7a45f37a0aeebc47c8b975aa59e142aa473c41f5734b92d1a030ffbe337e0a5fd931b2e4a8f2a00c5a371109f824670df1affd6f17395ebdfc16a84d8681102d893420a8cbe577e9ee4464085c75e07f38fc124e833ddaeb156a00371769326557fba4af3e434f3a4959505cccd7be034bb1e66bbb671ac579e2d29f12ee4d42c4949196a29daa11273363996c205991b53408890fe55fbef126d5477a899855ba623ebbbce00111322397a54e3a26c7ddef5553861c532b2db4ecf30942fd4dc2a7c80e430d014ac2f53e5be2fabef3d190c47a6f585802216677305686df632f6b2242b021fad1322310910a28991d0584795a304f03c7b7d22d0648e80587092f469fb144b0853de3c6f34dffb3f2845bcfb38bb5850965adacb419b2fc31df37a4781605b327ae1cafffc800f29167b310df771fdaaa995f0b765e966a07ff586c3b5c13e9bad92b615e4aa3fb3dcf4b4589c7604dec237df5fb030eaf066b17e275b0986fe4d3ce3971f0cceb384c1a823a57d7108e247f851936faba58332eec2ca74f39e8afec1b5548b8b2f25c577037b873839c73434884144223d5518dc6f505165dd08ef46cde5e16d73db3c98f99d98105151b487ed28b486f8e5423c0f743fd068cc1f42adaa14b693e0245c146c78792f08ad4bf9deae005cb888bdc25b172e70cdc374521cf165c32dcdedac704c854a3f0d319b7f39473002ef6c8a23c9dcad1cc0b423bf6898a616cac37957d0b38ab9c2e1dab603ca33c5fcf1c8ca5b17c2de6ffbdb7e9844680aa22e2d7d706d244dab708e8ff9cd986ae922d968e84cb06de6d07422771bcdc1b423f27bd3b3254323249aea22527047a34b5c711349e407e1820a033e1118f2a72732247a38a115391bc9030b41195c563a9d282570d969f73496eec08161ec71fa53f86a6359a53c3e3d7711a3a42d8eefa985577c5ccbde1704d67b24b5f1b3c7a7505958c1ac6f844f1e800e298968685416a5d431d572846554fd84641757e6a9b04a5611b922dd0b26da9d91e3663786df7459dcf7f13bea949d7d6c54c13a4e9b3f9fa2cabdc0c932d4dac8be8d32ada39782651f450ec028eb2a99d4b1191959365ddf90f5f58f818d783659b4ceff23dfedc29bb44e92cce9fb034a0befdb15f0f06077a9b5a68fcaa30a19dc302eef84bee37b44a3a0543110b103faa2d3f9d5d369037f1ee6164cab81974b54a750d93e3ebbd8b5185ccf0468fcffa6c1d29a9876c21ff5cd52f49750ad69a8da103c6336b379d52fbc718b927668b8c8ec1afe86365d2335ceeb6a8a2be55ee5d3743cf885abcfe6e25977317f862c1ea55467db1b2abb7d15ebc60c9000910c764acce5295c399d846a1822a87563638e0aecbffde86ca85a7f5429da24630ec7a47602b92a2282f5352984645930978afedb4b1959dff623b0d2f817a577156ffd2b7494f162c895cdf750b3d300c83c2a02f403dd4b4f7aa9e4ffe527925b1b968dfadd00f825bb53ff986d5b2fae9ca0ae16bab6a63d24aa47eb5e300ca068577ecd5750212676da69802eaf827725e5ca20a7c5564f96a733fe563dc61e53b2ba95e2139463cf5c332338c1b405506c2d71a6d337ed0da1409fe9f5d2ece20335a467509d4726d06533a235ccb86941936e23f388694c03ef2d732993c3ae6e1a2ddc0f66fd2b1b85b7214e4bc5718918493f95f06e21f4eab83c5ee0d7fdbab58e4d9409999aed433ae81e2a2fba5df27cd3707bd73c34f46f01415e7d785165e8ed99152b668532062df4de60d84ca9929cc7a6f9379918d15bc9aac5061136ed88ebc083e454e96bb81b065477da06a55d0b4e7bb431154df79ad6e3a5ba5294e47733f347899067a673251cacd294406300ffb3cea793123960bcf97ddc99c846ceb54bd95fb08fb0bf52f0fb86f9a9eb6bb20ab9bd006516aa3ace3255323d5dec1ca7ec34ae2673052a202cfcbf10b72ebbdabe16a6e199262048fbf50df92fffa4efbf9aff3d56b78dfb9d616641d5d9723c01a63ce970e7d9fab8ed5d7f688414747a099fd2f3c88c3b4edb6fa3654721a021918f7d746b6460de575d7a951d8f44c32b92f907936e53f7969f6075f8e4f21f52036d6bdfd16eec7217270528eaa78277d792461db054225714d877d06262e629597b1530904943aadc2bb72bb4ad042b095e09edd9c0f2a79208f3494a43f7054249cd4a06e538eb662dcd0776cd7d0b771ed2404fcf8afb149f005683c6689402e23189e1844fecc25f2ca5daf25dc9eaed8fc84da1521a9f6cc8548dc82a5ca873338a7886adb42a3502d203b6746fbb76d4b563ba96a528c953771430361883b139b0b436c4a1fde160e7d87974e3b8eeccf9dfaf67c021e0932f6ed99be4eaf8605eec458e1d37df2b2e495aeab3a1c817374dee6cb93f9a2e5d7f515b762ef1bc21251138ce8f4de6be91d15f4aa6a601cfb2feaaac23cd2a463ad162144caf6ea39eb536616a6cdd7aee192182f44c79074cfaf98bdaf628806c027737170e28d8765dafac29f4ea6b663c8ee7c34b5c560b964bb57921f5fb0087b87a00879b5656749e87edfa1bca6909aa4e804392bde1e7e57d1024b7d171a4950525549628c09fec7b9e81631860a09bd69405d3dbcc03713cdca7d1e4f5efd260ea9c91b598ce677d9f44250feffaa25130695fa72c4340e70f8218e21caa1d1b9eb080fef62d091a3f78456582e3badbbe9c824601b4133e86865470a437f49839821a339fe450e05322dd39e97d80b2c865a9bb6a7df82388e14f57715fe41a029baca221181e1e41f499713d92d6b5b38b88753c10ade4900a3e136cae2ae1aae2e930eb7b21e12c86379d957426f1339f8d72b414b8a5f081354be08f1a517e20391f8e0eb62185efb4e87032baa224fe9717226e7c3b5c387284e1fd863623945d13fd20841a268996ad929ee062303409b9f1bd536c1dfce8516fc121bed3331e41f4e8c9c754345ce105bf55f2597173d55a69a557c3854e0eb7ac6b3a87991d4fd93f3cdbfa1bcc86cc841544fee5a16c2f66a4da86b1065eaadab9700addb858369271fe56ef98918dd2f85d38a1bdf0c11439242e49a7ea1901243a0e541f0796c053fb457455f3d638020564e5dc1392e150ef4f0f87146ee7499ebe728c04ae7a178389c0880cc22131f441f8c41c856ea001fa1db6b0e862fd8a48cdebe33d8472e208eb9615dfb8304623589a96d83cd7c429a9f3c84bb91f68bc5c6be0571be9daa20a2c110017fd103b569fe33aa39fc694819205963ce975d8f9f89df111c127e16c3e3e8e13842d616ac1b54000bf38c1c72ba1ed8d6cfc6efdb9fece84b334fecf76f0c5eb7fca1e7e51d80d376b3468c2a747bf34b905f84707e009e273bb264cacd60bb005cfa558bee084558469b9107eaf40d7e1362571ed1bc94baba2f6e510cca6040eb3fc779f23f100d3929888bda13ca48e76cbbd0e328e95537b323536ddf9aefa33e642b5007ce2bb03086aaa8572b859646fdc6d9a73ee3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855774454e3a1e3e0294c445444a26fc519ec1e418db89b88a6a8a8ea0e2f32242940af803b1e02f1945cd215f54fc1d826f81d0471f9723230ae8c7d0f598d32e823f28939848aaa1a9011c279e2f2313ce00965da290aa0990125c7a13d6905a5d5fcdc72e355f55e423b90c3a3a670ce6b87ad02a82e9b07f15ae1a3d82c0ebc075533ab3440dec3250f14db21e841f154e5b27fc8bd30aae1185120c7459922efe1f121f083b7e579487bdf9af524a0301c100f694b03c5f80b2b76d3004357dc8df3ae6a879134cfdd87dcf7ab2c6251e9010bdba1a936ac5a8334ed72b8cbf94e671e2a68c28fd4a6ca75a687d376404678b0aaa4ed061702a9bf7467513bcdc4aa3586b32030ce760d4d69c4296e4ef8bb513c1fc9d8f4876f2d0bf04c5536216f1af2deca2634276425a87ebc99498c30299bb8dc46018f4871bc9e7aacc323ef908105a57b48ae2395fd6509b6c74caa8296e4ae23dc6478abd0da9612473ffa2fa199f6d450b19221e816e7ced5aed6b84eb0ab20b96e4ce148c33a1d29b5a945679a69080283a3c9667d465e49926c46d496c4b71b8470437bebb6a02739148e350e63ff8063179c3197008b1d32acc752def8e604926b6598702a26d4379a267bd228454a902a01703607b0224a51edf2c321c47e857335c85786b66161d587f52cfc1539cccbe8da36beb7be926501118587d137f975c120fbaeccdc57ec63363598dcc0f144ab7dcd9dba7ac4a280dd62e5b7d854cf06b9e2820e78df01ba026fc532dd8a45be4b7d0f7887da824dffdc9a08b4bdd243ae847f9148c30d881e28c9df857979ec00fb9b24e1d9084861a7a5c2c26be61ccbd4405fbfee52ee71a6a8e4f8f513b364a6e3d675a1f4522fa18aab229381329b977dd03ce57d2824e4182d145db4138a233b270d677f3117f45f3b96e8d2e0161bb915c0906d99af9f9518c2fd34446c20e8db44601c6c958185c60676428c2e78d7146399350005bc89c09119fb3e7e7eae46c28e9ac887b24717b63b43fa2fc37485d86852dcc8ba6b088fadf3c771f880fdb7b189a16d866a771ae1b6bd4e57e99e495038cba1b3ae3f954a035573c6eed31305c7a1c63345273cec172559f78c0a53c307971e383831f0a99b82663f82273ca6274aaf5cb5bfbd8ed9c6099899bc1b0d0909e800412802acfebc2d4a6af0be3d052582099d6757e7aa73a35dfe06c275c0438359d04c5dba677374dae784b11e3af4d1192b804d9a263e84439d23042c53f806905b8c796086fa2156edf1549b495c91db4061819cb51612026fbe6f1d6baa9903a4d980746b26c25c923e9395ff115ebea06db33b8e4b079d8882eb888f88ac9ca01af9280c335af48cf14f750c7c10ca96e6d68800c46a4e31e460c4dfda8f8a8f6d84cccc3d4542e62fb03e7eca7c870001229a3a99bed1658dc5b08160be927d81ef4d20da216ad1ad53f21a9820d641d83e2c8e2e97bbc07c3a38f65d75d5bbe03b4499748f8d34ce8cf720b4ebf471d77abd6e54a27aee6efc552db5bae8ee2f1ff32ddc2338687b50879318c83ac2dfbe0794cb5abdaf669a7d0c28a3489ec4904513313ff936ab394df025248b3d78b3d6067d55b7364f58b1f965a140048ae60ffeedb3243a94b5762dfa75f9b6a2f5bedeef4090a461bc963f46964f7d5c2ef40ab552136457a997ab41ed648758b075d2b034c65f7a21a339ce6e3f0131e026e79ff6d9c4e59d52868f93a65c70d3bee294defe1980322b73fc6d48f588436dc53be49f8c830ed091219638733d3679d8cf9049a1bb9e932b18be91014cd1442a890d4363788a78d99813e44b05708082400e03d441330d758121c0db4488262e1c3688273a1625fe8702dab299ce7f3a9ad664319851bd945ce4d0e20620187743e0c133d4f0f7a479efee6ceefc08a0acd1cb7db44e4f676501861260ea3d27e13d66fb99c70647abb597d25604b5f7efac0f4712ba9c8eb898a3bf2f2ccc58ad5221f5057cb33006d497d9fd4195c21fc4b28b8592637e2b0bfa21630d0c74a153305b142a2b7c0ba4bb8fa9c2d9d7fd40cad6c13fc9e4c4817fe23e988e4de0302e5e373c095a1be65d44cd08a4e0b69b6b5814cd5edb6041a03eaa2c872e9dcd03f76cbfabe5bf172e98290a14d8812beb9df77364d3d3ac7392c66e02ba131db05071a474c445121201e4f3b17da727a26abdfeb2ecc0ea7b5326fb3220726f30f9c87d810c8a50294d5cfa7ca5c24cc1793b14cdf5ec49cc9f185538e7ee63037bf91b3cd474b155960aa82cb4b0b4031736906c60950ac3c1534bbda0a59f20d2c8a64bc8f175e00833bc9b5b81b4dc36b91f492a3d2aec4594f8dc91dfbfd90e1d3e54a8227a2038caa5be486fa07c6a3e38a855b2f2e76dd1044fc950d3cc360767ea1d0dfd783a386b0eeb78d5c185991029d5d0ea2015973cd58b75e678685a9826a9b412ef186d944328b1364b2cafd5a583c0375a1ffbdd9658a1d24dadccaec7b67226c8274f74f6636744017252e3f15be4fb4b6d503bc0bf87a209f556c3bf4a548abe9ccef3562f35a10bb6ca0f98dfd54cc0398e68ea4c13480fd1e0732e4ae03624e3b15ba6ce94f8095f2ae3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8557c8f7b1f0146209e38b8ded1c7d0dfb0d4934746aedc5b68ecaec4dcc64183deab2bc08375f87c7aac90c3516fb98f2ee866ad58de8ad170995e1afdd3c3ef4b56bf108e1c58480049ea91f2686a8fff87a9bc9dcac5efa391892a8cc5359c2455f1e61aeb4bd4122146627cf6c88c669a256faac042fbf0c4e3b0b7be149bc33e9b36ba4f8c334c3b1dd6394e4db14d854c7a144dd14b0e87884b4a405a81a7892288b03b082746b2f607f5636aab328b23695d1d2f65b59e7b5f0cb8343133954f69822a79be70fd3dbf13b1fe64a6a6477f388a52f2e98df6a4539f1f82ee99bbafe061ee96e90443682b569b90d60b3efe25b7c5db73254965206648a14b4ae37c2608b594ff9943a149bec1366e1a4cf8b9cc97be2666129bb56bf9b39fb511a90a7a8f3ef91c12298f2b300864d650ef1924aeb1ab26c8798c161115bf5a0d5c2de2b53117897fad83895ed7d68bcae17d743115d63bab0f9321eeeffeac195d7e901557dc7a5f0888eaf342770c24a0df0bf44e252de7ce6a58602fa7327de6bec7e22d2a48d2723319ec98ff23055772facc8a0054a7a8f541e90151e83d284735c71a91db832d0595f945d0950fc6ef24671b5732d516d24ccde1a2238ade5d00899b4d9b7811e83deb3444a3312e69b2d9b525bd40c11517bdd3f28b5705c5a472da0b8193be25322bd8d410e469bb83617bab91eb4f15314ea352e37c204dd682dca32dd518fbf9c2b9e1560c90de00597bc6cc51917f827f2d8d3587a23a6d30fd44130973c2a6ca91f13344ef8aa29e301a12aa16b3f8d6d7f720e2589713ebc6d0aa6fc2ba7844df9fe6ad491ce209d744faac156075948ca16e0a981510d732cee2dd0cf0a496d1cf9bf1be1d725ffb74ba953082a48cd2b69321241f5f3624f399a89572515c21ce817d5cf37693b83bffb3c7c4aadc127d25994a28d5dc546d5b3322228b843b7854725a6cab3ac1013681f18ff33137775aa850de64a62752440c8de119d33e5824ebb66b82a205a102b5f906d156e6cee4cd230d7d5d48a18ac2380c6d250e121cd80c2ca447eddc1e2976038a0a9931a8fbd8e3855c7c81f69b35e278ade8df12c8a80cde9c8941b6e7ab0ec0914f0afc686618be614e481ef6bfdce9d33f97dde4e94682ec57af1138122c48a2df3bea95d03c9f86efa5c138fb3133f27ac48dc896c4d65188d9c2c65dbfabe99665e45fbe7566bd70a7c79426160d2756012d94548f5a74e364e0e4369b3ded377ffafb1692d3d4f88b12fc38a4ddfd818927b0c094f34eb5fdf05000694306de75c7ef84cb4b8fa47bd70aa2e89f7b96b2487c7716e1b5b2f1cb1ba79217d70724026a00fb501f44746f56af7a56ddead4ea6eee6bcd3dc2f2390caa11f0beba538ef095a6b57a082d89d029c8da3fbdaa16e83a231ac0598623f67e07dc0895f45e9ff7e9200872abc7390c5d297e274043d86885477a10f8844e968e78dad3598a665a7950e260d3e3207f0b792e6b99e8db28ecd3c0849653703c83ce995ab81412c8d13ec9ef79f4acf9e35ea467ef3c383f1950bcf16e231e5263334df5ff5f1ca4233702a3badd507f56679c634cf4fb054ba662bd729712b2a68a70570192947c05414af2790bdfe23c6fec8ff3a74a329f225f868aec6375108337a9f3a4ab765acdbdb04205be39e5b6c07700e1d2967480c1ac1b62eff2e960db908501475c7cced3ab876b5cba64ef56112e326393f64717368d3ad951295a470ac71e1a365c35e66267a092ffd89a8d9ccb6cc097a585b7f65cf366dea85cfc2f9e84504eac3c5bd8c90510f4c52a5bb4754486c4160b6503d3ae2e3e461643808c6c37aa3cf57671b1b074f84853f9dbd0fdb6764bb04af8200ffc256ae3ab3fd8c9e48ce9fd0967106c3959eac85a97744a9c3aa122a04e14a74b47d51976520de445671ee0b76c5595fd984bfe2c11090b7d1cf7a03334094cd107cd5917f3a883b39497c37efcb399622be3dc4493c09071fb502c04684164120ab01479025fcb4ee457514145f7a3ad2539491941857cc337c53b481875d041d1da85463073268c20c13e4f239c2fbdb060afe31b9910df5010ed88ac3bf3fe747818a74d03977f3dc402e6f20cd2515e86a26175da10b34c631ac513854ea3122743a5374795e50156b772602037571c7b184b66d10a5fb753be4d1c0c777ca21f188eba90c3862d5ba0b7411502a0c68538b7f2dcd53f273947d754f172c773f9bf63f8d7e4b9fb92a79c2e45c6465add1cfbaeed83521921ebdc503101e1d0f3445f583790b9945b3ee4b05fd8f96c92ea633a8a883d455f66a12535129f517f7fbbe09af0bc9d70498648ffc80d01c73e0648058be142cbeaa69cc9741e686da4099aea8c5dd7dd1f44f19529eff77b1cf52dc8483d2d30b7888236eb6d0038d523df83eac98ac27d43294942b0b52341f13b9d70fe245ba50ede36b9ddae855b32a0abf8b93e26d0643501a1775caf96c697673c8bbe30c4764d8cc6d2177babd741ab02ab325c0117e44a400c6db6343c76ceb279134166f81595e7fbf92d79e36e7cee85453d6c488fd2373b5f68dc4d9b3e7ae7003a4041540642ccfec001fe0e0db12b458031c157e1e85af58423ae4b2c17cf40321009ca6f4c5df6db975e000ae6ecedcd214434a16f0d2ca40a93ff55d6c155aba46f2cf8b25d58c97469dc16817770684a0e2f0d2106aa3473fdbb9755926a878088ff414374f84d68e0b899f94c11a2508dc4a01709dd6dae50c992f239b127acc0165bb93de109e4da9cde1367734d7c5462d61f1cf0b00b3738cb22e3b4d97ebc841e4d8d2f91b1886d8f3f951f80bcabe545e670a88997ddfa9f7bc89cc0b4465f39547e70f89ca5a20aaa37591b9e61950cb7fdcc7cc8a9f4622e8ca79028425c654f9b33e3bfdb23e03a470d602c92a5d58dc0123970fd2597dfd18d5ea2b7b20ad7cc2b2b2aa7bb5c003e3118b3d28b4d73daba0046f19c0c6e9a60ed94c0edb6b4d415a653d8d90d6d48ac0391fba77029fe248586ddd383d1367dc7813a93aae1ea0b6e236e78d306a9932e4db68d4c8622be71788c57a657349adc08faac2f6ce6e77846776a4775acbfd8de2f50820bf7e35c8e836a424cf3cde0f6ddd62f5110486d46399e19187260d32b65256b2e93c7cbb54c687e8aa5cb654aa7580cc617f9faf80a86cb73007768e92af3ca943491274afb83265f02073be4491674c4c16795fcc81779d0639aba859c1338d31b531ae01cab769f5468ae4b3ac1bdde2716a85d8a4b0b6b84e6b1ef3f2a36e0f7a9cae7d33d2c17ab1646565f358765c74b2115dcf37673007768e92af3ca943491274afb83265f02073be4491674c4c16795fcc817795ba0ebc9709af1a672f674a4bb873cca7387990de378974661feb0b80cc293d6fddf8918cf7c974aca0addbc10e3c7066a48ddcdce94cbf9ee65b3422cbc7a8ab40a27ac37ef7745f882a55e4bc289f9e0ce96bfb1d88361ad458f639d61bd199734f4d3dc3b7b11a2580dd408895f66b5297badde7c387716f460b98ec7ff6265d3f5dddf79c4ea63bdcde8238ef12bdb41783969b0b80acefde242e68ba3d875499dfcb860186d854ecae6ae87086dcb1bce5bcacf2c532690c4576a36ae2a781bf6b4d39f308d08046e8c63c59907807da8717c3d45ff8e5111ac422d660abf9fbf2d0e92495d2cdafd50323cebbeb63a3c08a6bb7015ad22db6e7643cecb612a7be062682a0fac215c336007573978e6e8a12839d9d48b364a4465550cd9ffe3a3173334f7c7f74055c41e540a474d413040221a858c0091241bbf28e63eeb4619a8b740e3068b30d0fd91072fc2f0a7d193f28a543d863309f235f8f4ec68b21fa95958198e79240e3b5d19da9f2ee22f53470458135c6dc4595ea023a8e7e1b2c0a9031fbc9e999438d6d65847f80ddd76244dfc5a1efac71731d40f85c7eb0b68d5856593c34078d220bd92bb699060bf2540f9fc34c0d4fbae1a0cae94c2343923ac620a19ead21d3c1777070bca5ff90e0d228015def3184c5ed66e33362634ad837d9708bb0898f5609a1409d57215272813b9bdd7b6c02dc275a47e0938a4c5c83e53e533a0913ce3da53f54c873bb1f418af314c1be7e00a751b8bfa9a398e97152beaaf385847808ad2d828c1c7251f1a45bc7697723827e7e7b864c621c47c1be06cbcd26dba4833eaaf9c049628eeaab29e4621135204da61df1c78e4547494b866cd0278474a45e84327f580bb4d3edd6881f69d4c31e2f04786bfaf15f3c6de00946743dfe02a8dd7a5ecd595233a11c8146b3574276162796408a082526cd575413addb6ca97d48f141fa62e188690ca5222aa8845fbb606f8517f8828faaed54f2dd6f1c593af3beaf7b0e1340f0d1d0b39b47a2cbc3746c82944a5beeeeeb7e67577d7f68ff6371e6104827d0e670cd184c722b1daa39934523d603111be24805e70cde7f19b959e43845db7c8af2733471896dc8d88e4b4398694261203ee1a23125d0d546f0358c3a4bc1e9a2d42c6e16ab4a58376f95415cb700afe71be30c0f76713d87873dfb327b171d0781a9132da653190dd428cc805fb534b547e3e211b00899e6f2625913666e4e9d45674bdf87fbadfc571d8648ff82726c4587fbbbb5dca57f592dd2228a970255404f22c61865bd004cb9267b971b6300094d3a99a1eabdf139d13da86d8177e9f06cf74a2fb65051ec01348fa84bf2377838a55a513eb7d6185ffa6b0bff2af8d1c5678b531ec842de7551757bb2eeb606a4d3a41138036c07204e85fcf9c3b4ca53a0a232ccecffb9555e76d451d049eab675173c8ba5ed709e9749ab25f4846e69f83d54af147e46a19159142c5174614930130dc5b0f7485c91e6aba70339ef5b367844d102a4562413ba0b6b5a0972993a277c6b7045bc5764dc0b7b3dbaf3849fcb1dc842e0d61454ca8d58805929d815dccae00e12ea3d1ecccb209a461b0ab7f726bc390c2b84b89607743213a8fc2aa0e83d0ab72604da50e9164a2ffadf8d6de0c3ff66bb2760f1450273a6cd569cee83129c6e45aa9dea7b5b08251c168a1c816e3c228f9dc105e826eaa9901cfaf6198e79119ab91cae0ddc6a9657b946fb69a9451371036096e54ab2d897396a4d87741957f83cd92b82772b0ca7e15de36c4f59c28f5a4cf3ce45c01417ac82d5d3c5d93d521e7ababcd8e2e1145f967466eb77bd688420c57d32e4022f3899be94ba2fe56acf3be46b344c559e41659b2e9d1b1c566da59f2812882f752ed8ef81b3e61321102a2a763393f1d9f76c53bb7056dacc8441e76ee7953ab89f815130ce540aae9f40011121a7b499bb297d28060e6698a15a722622be79f24da3a25ac9a822235ca54817882cb664414dade30e476fb6ddfa7b39d162dddce71744c00f93eadac695f23437227db36cacbc8e7b0889faabcb109da1d058a654dea43ade8f36bc3f87d9cc27be2a38593bba1624c0eb7a34150482adfd90801876cf399253f9107a43d23c136df75a5e2cbc7c5710b2e89994e6d99bde5f653a74b9f48a4b0a6cdc604a8e4f050890ec96d5e89aa9a3295e1fba220c06e06b5cfeab8dda643966e568c5348b959695a22842f7c3ae8907b5e9e4b1ce5ba743e6180d5219f8238efd8e5dfbfa0c71a9f0b2062f2a1927ce3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855610d34dce8017841ec5882a147c263bfb794db7695c73335d8be59a0c77529fa9614657b05d4f9c0f5d5bf3c39c90d1456bf03a8f1baf339e49d094af447993ffd0b754d69fb78b16716c9345ad4ed8b80bf6693672eea8324dfcae5100212089a2fad63f50d07687241e8cecbfcce91deea91d9ae908410c363347731f5c6e1e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85531488bd2c1674a6dfed2315e0cede0628fad895dc689a7431b8a81ade29f4c13920d90fdda550476cb896a4d764010cb3792bb88da4e5db988a778d0879392ddaad47046d392789ea7eabe8b96b0ee23fc15149c808b79596eca524824444d3eaca5dd731662e66dbbb47c3fc4cd2dc6e4f3ce5459b0ff1c4bc6f7c0a845ab666cb472ed499d17b53f7e6ba62ae9598d7372e06f35cd095d3b08e9375d3774f9375764be8f8e651259c038d273c4c94f0ef37a61811ca45005240f32ad41de10e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8558755d777a827deaf32df19a72f81f5d7eb9ed54fd5914e1e5eeeb84c0eb5d5afb0842afec1a7948546fe6d0dac813b5b9e045a2f3b326a1df946f7045ab1a77fe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85558b867b7b7c0076e744e973dbd2c51efcef8f880361d8f24f0b529fd22c9a43e0b97aa1c6c9fce15bca4fed7e6811fa0be4b7d2e330938c9baadd5f0312138345344df1def7ed0c3d9ac82fd86bfbcc36d92b65154973de95eaff6ec91af20c0d9dbc740ba9dae3fc02eeda599dffdffdcee19d3a052069705855a2770916b31796fb3c1f825c0c624d79c7b5299f593cb885b9587e550848dc37d747d6653009178ddbc4dd16ddc6bc3d9ec1dabf5ab721dfede42e1fbdadd747e7b0c9fef5c8ee70431c65f96ece6092131cea9e3a62fc186adc8a972041ed6f10f1cee89d00689f6d3f29b7c73f81dee162e2fbe8510e21a898f5e770306ac6f96c70b7968f17ca3099bf5cd36b7f62104c5c6a0e9b5fc96f583c4679132c0469c096cc50d20d2e1cd39366f175b4dc6a094263433475d527ba65bc97de62c6e27ab90c35cd48017e8208caca25ae41d2dbf6a7adf5af0b85574b5ed08c2d88eb255af7c7f2a483d0390521060634e9cacc92422f6b42d5499b6a05e88a3f9fed181b3ed41893f889dbeafc55a2256fe0bbb968acfc18db8720e023ee1872c047ee08d8473dc075981ffa3c1461912a701bf4b9c9861c428097290a382feed3ef585b9cac568e90709d234314f6bdcbb8820b4b96673e0d2f343ebbcba58d5372c1edf4be77db525e801c760ce6aa154a22ce2942c69809779ff7620286930a580cd1f5c9ec0ed34862dd86700d6d7e6bcea14113089ce092635e92ef99e3a0905f3a15d15e8e6a3b88913196ae24bd80d140d6def5cf7cee75fffa8e90bdf62b82ae454a7460f890ed6997dca16d7389040a3c1119cf7d745e60a27b20ea0608c5dfc7019d2f61ac88e6afdda55b4785c7617688f54be83629ab76fbc2cc248195593dde733a6a6f01835923c66b55aed6eecfc796fd97e71b6b2507725b0abf146aabb650373d6d61480f2a70ae82e4b391428e59269532b175fd1c894092061ee5424ebe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85585e41ec0fde536f82233a63855e43ac15d73f257b8baa7ff7f2e6adc428fa87e182052352978ea62fcb9e21dcb388990c9a4f0cef9058457a441fe0225f0ad5233115c8ae83b6d571d45099e1758b571209e2808eed26389ffc50c1d5409cb37b0bba60447a35dc0fc5a42adbc3c42a98e8f4afbd59d321d2adb7fd56ed2485f2d625cf8a0f60bb971248f72ca505103338967450d78f4089273448b82d82f3ee3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855d2af67b02c4de7379e30b1d753eb65b5720324ed73baed5a56c417027d63fe3790be9e0b7f5bc296d21b1d4d638213338af07c194c8d9094339b2a96924a2cf2cb02e4b399bdf21b5a48ba1812fed7842f5fc826227f336ad99f983f5aa16bd117203c1aa9f6feb3bd89f7232ee08970993eda5b32d244ebdd580ba14d4a3343567b97edc8827938d73d4c2c2b1d96826ac4f8fc377c8a045170a17cb1a687bb1741bfd255a09a7f2ec938f90fd0680d755507732781debb3b97716244a5aa0b975b8272f9b577b7edbcd9ceb1b65a9e1ca2404d6a1b45b2e1548efb83bb4c1e3dcfc58ec3b5a00af85317130c52ed783cafdd2a0bff56d83c0f57d13d790bf9fcb1ad17a335a866930c47863c888e9115d24a9c037a99192a3b25038d751cab496c680238bb5093ec1a6f521c3390f671396ab081a2679a55f9a92979f87e9d759a3218afa5c1b3691fe1acb11535a4ed738e5e6db6523b8428200b8995a77557cf5143d459b7f9724e42a6db4b2a422ace98c8469a8f2cabdd3b3e537302d04750344b16e8795e2752b3c41f8e35aff7f16368238ee1114018fc91c6b294f69728f60de1a2d75e52b111ba06a3d2a518ca0e84a9ce7bad8325561e2d09e128696d95a4acf34e5332c6a904fd04ec4524fb7165fc85a81633725c529558bef4709937b376c1a329025359e4747bcd6af9cd76b46b0b7a699156081a7ac587321b86c9f64ff2c3333016dbc54345df88f0dd902bf099ab727983d36bd94a1981eec0a5e0fab930c8183ce0d19918ea36e4b4f5a93e0d75c512729eb0d7ee2b59e1d6771300a4bbc56f132586a8e2825d881896dd73de698eecfbb5d6b06113e47ef400f4b5856a35e95e747f14f8bfb36917beba21ed8987ddf08b3d0fe18bf690b65e4f3fd352acc9207b139f9fea324fc236abfa454388591e2ffb264726d3385c11a00849abd2afcd46e3841ad67ff546769ab21bdf16b7d7ed706b89aac847499b41a4b5ca1174669f718b40afb98753870e613e7548dc42476aeef23409639155706ccdf57f047566374acd40629e1876c9a3278ed2298216ffb91832b02bffad9577d181002bca117b9ed98089fa756b1567d646504b0be80ca10b2edeef1e112647319c33457e1e10275edac62d3e702c530d95a3f274111bffaddaca532af8f49bdbb703ddc79d4e928609c5bc01b6b0b806f38c124a09a3ca4ead74ff528001aebd8ee1a76619f7294df23f02ac9225c4e4ed8695ec8cb551e439c917f152a23c92297d10cc8af8dde85c05debadf78a2ce3a94a746e6355691b2841440fa423c60620b9724b004a99abaf2f56f7ddea7976e20ba7c409605dc7010258f884726e2f7a7a1f3bda50390777c99f1dc7ed915f8761f298c2b5b6072fac855fe5c9f985aa29a098eee0a6ccffae2c44157a6dc39eca974bef35997440b1b9054bfb1c95fda3355c51276c279984573c895709f9f4f4987f063ebb68a8075671e44bc7e7cb148aa0e36278f4f161dd48d41247dd8e52e19e69f55a1d92176d345fd548680177139838385e6c5c372598eed44f1caf751b33a7fa847a2287a2ee7405ad06b4f850a95cfcc9091722bcc04aee11fbc0fd44953ef666af8752a396325a98d944d86451f8b4ecc85f1fc38773a0d56aae1d553b343fb0c8acfcef65cba1c2f785ccbf9156db35ff83217a6913dface465366381a8b727dbaae537b44f3b1b646d78ff490d8feff1dff01a7dffc42d06e71148fbea6d68cb5e84e5689e47e5145bceef3d49e16f7a257a9d6bc2778cefa6eabd3ff0e90888913a857c3fa6c25e8a52b00e76a96eb9a387c3e0b97d46562373fb2220ed60900a15ad7f04da1991ca9fa677b7fe548825f7e45465ec9f7089e2fac2d7a9f6c02ab84d84c0ab5939dac61ce089d494d36167d87053771abeb548018d4de8a5780ead0621f0278f1b6dc78087cb6e43351894955d77cba575ed15b3aaf96ef00a4e6b4e5e9dc6b10ae761d945b290c060929d1c8996f758f4bbaf32fa7a0e4228d569db1cd4f2cfa92b3e94586b5e6ca49dcc52c16a8613fde5b1f0e068a34043985e172eb73ae9addab96a9eeae921ee35eebf4184e685429147a18b973cab210d49d7c5965ee14b24af69d968a33cbf8846c15da31538cba421a65fd8dc7cbcb237efe1c36f59ab040fc2459097fa49644d6761b2ccadfeb8ea4836500b971fcd64f9b51fff1a1c82f68405614590868ef1a147118ab6b5dc61abcf93ccc0495351c6d8efc9f3fe71c21bdff004d52f87fc2bdfebe58ec76f5ce90ecd697b3f7e945d5c4c252c7f489c5e50a79a553d3cb711073679a0954c4936aab3d39c3b4b22bcada4f4a70e3d1569dcc4d4593634431f90152f157b72aaa8516c73b4eac36f022b25cccdacac275b3e52d2d7d036fd22254f1aa2934ff03915c99534249bbb4121d75f320682f46b2f6506e053e812880339cdf0fe516bc1a9cee6a6ef068ffd22f1c1991110ef029f266f7d4f5c96adc41e575f4d72cc23faf64591b79924cb2f7d418561464945ab14ccc9cc6aa2c7ca56023116f5f07bd18a233e02efa252d258fdfb717c4b1f67f7beeab25ba2efbb8aa70b53f41c8fe686552d487d3328c78fa0498c49e872957f77c41b483c1b4e7cb27ac2801d75233335d38ef904acda8de90e4bbc152cb37e119ddf974af645a828f7f9945987208d49915302443c330824b6d3ed2c0858ae6aff2cecbc5f6f5b0447f3205abe13793be4686b9378dfed558bfa90eda824dee2f8eea3bb881f66e543606b819b7c334bb3ab8f132355932ff0aeb853ae27471aca7a80b4470653b1c3a082dc018505b73d74b0af1c05783c9efae1cfe1bf7f53462e5d96958bcf5927f4af1fb42fb0d0be7aa9fb6bf007edbe59a5157eae8acfb6851bb87560036e2335cc56c2272c6ac47b332767809dcea1ac90ec256c3edb65c6591269af008d413ae362df1494f8465999e7a108ef8c49535efedd075470dcab7b8006c27a3b51869d05f1e8b4a6264cfa41198c1931ee7991ef1d57480d4213950241c4f01e9494557b12621e96cad2698ec684d3707214fa2ebb113b6ed9bbec705e1bea95878fd6088f9c9ed3c3a840def37014a3f6752f2c2057ea5b50924bac303e02b417adcfe22daf170cdf58fcc719c6b6a472380111238e06c160c6bec4991adc34964b089ffb7b72dc8bdbcd598692312d890029fe1688556fe629d66e2eb61c9509303f269ae9f83b4002dabe90659f57884d2f9748275cdc686933bdef4e42975c1a79ac1993115a65473b66a3a5834275eccf2d31400f80192b73477e2ae2a3e38c1e0f49164b66c4e800b02a67667d828faf21e3ef3463932d7d97826f20cb6736de59bae5cc6c8e00d058540b7a7f93d7f00709590e4f3211a7bcb27f6598a26e036eb628b7ce0735e0a89eaae4854ced5f6e15ab5c75c9dc66f54066983c9c8ec92e2d68c863c3e249d23b32626bcc00f0407c941142c9e08ff48a49881f8faa5aa064c3aeb0d16ff85fd3cdc70c0ba1d68058ec525f4089d3a0511f595552cc8e5ac18028fe8f3dbf9cb30ae4ac3e6bcbce2447dd3c9789c36cc386b5ca7c86a7b4c2aaaa8ff93ccf16d0c8eb1076f40ee0dc120f24487929003c7f5e5c02d647e0ad2fdde76b964d8ef85ab33566ccc58eeed9f1e4ee443422fbbf6add3295353fd7aa135a8dbeb42b2b057a093e43c85e81d6803cbaf1028779f8384ce7376b102eb7c78815c41ea1cafed1d9837c8f9d7df304aa7cc669f22027be5958389e8ae79921bba5943a7edd814179ad32cb721442f065a97b7caefff9e4db9e6b2011679f23911a4255ec72ff407884e51468ea833cb00c81a4ed0294115d21374a148510c657bef477c2c420cbba44d3fc07988bfbd9a11dc8370ce697fdba7963735d6291922809c9b7adf4cd762bbef6e50eaa6799408579368461599ac0721f1b6202b1da03884466482446e30bbed44d550e837d54aded17f841e55e24523ccdaddef4b851abfc77e2ba70e9e046f682a14c95622c785ce2009b4551ca4f18450b984c7a657b443a77cac7955ef1fa67a87c90d8431011b1f74a7623bf46e994b69a4365069f021dc90a84cb5a899625f4703de4c236bd8c2a96a1314e06846288ba81a428088c76f2cd1c7b14e396accc5dceabca9ae7b854c5f7aa5196deaa667791195263370f7afdde39e80582c5620299a176a461638db5bd2e1caf8da1b70f03315b0eb33af1e353f4f60f45b737f6d02d6815fbdf26be3db4f96368b05ea769a39b527957f05d4e3c55aa37c376857f01c32af7a49baa01f2d671342614d9742d632d4060757783b5e62924d14320f46238eb720fd97233c59f334018ab2db5d3d0537031fc2f0ba974adb8e1ebbb92aa9422ccdf7cf7e8332e919fa43e7073f1f2c6e1a6e580bc06f898f2269b0607d9ab5208945e525154653d6fe2f8191a2bbecc0ceacd8ec38aaf9741317c753f27a47fbef709a2497ba0d3571f54c3f589320b0fbcc1ab842adfd7ee0fc209be2f986371f8cdcb3b6a10b8e325cb27d3682509ea99d2ca793c895053485693c0761587b2f2d29a2d771d4d8c2df6c3977ff24c988859f1b94d979a945b01f9138a43c7ad6664f6402bff2e1afeffa9a2d5bee9fa08b7031772d179d1032501754f629aca86bc1afb8570f9b8d4a5a7d6eb28bf7642361da0daede4bc3b4d51074b082a975f37c5a463639ba597b2fe2cb0379e961a91d320ccef8a344ad64b1950733abd16049b1f4d9dfdf4ed4f2150370feac9a0b2ee37d06f8e5421ff50c443146cecb5ff0332100c959e25758c84386a7509b8b9e9ae97938c3a569da6a075f10fc652bb46f5f94ed479034c1be965295f8f16d9cf15920efd005095dd2e2229a0b0cab34728cf27eb16d331ac87a8f495589e3a890b1846dcff5dd14afe3908beef9738b9ede70ae8d031f577d8dae6529d4abf3c0846ecc134385a4b0fa18ce7e3781399fa9c0091df974ffc81771597aa398f0ffa3cf347995a83376ce482bcbd16e44f87f2c947356c3399b18cefb7767f3ba50bc4c40af1a436ed55bfd5c36df629057eaccbc9df887b3f87c3249defbbafc33d3fedce1950c6ca8fbfc92cc66a079c27bff39cde2fa084df701dc7dc0e2952c893730e2a4f2928dcd361eb903c75ae9c4365751c67db308c2ec9f13d24c1185887938ac502a0383f58d592bd766f351751bb83ac4a240188d334335431af74dcb8d3834d1322ef69eb0604482ff1310697a1f504b9f1de35f83b4ab6a3080b3eb481e378c2e26f91a045831e3d61ed2543e1e60c208e64fec31c3da5a62326b3722caf13e9fe4202a555bbb7448b7979f802938c9f7e490078e96beb507219c6162a7750a45cd134d877ee0cf2aa176eb36c66238176408b2b67c7ca44483ca0d20b440e25c49ca188d981310e646f5415fbeb4b63111f0ad65d38f1dd30615370ee70f5c0b17dc63ac3580e4df87cbb64d3d4b8f62cc83ab3444f55e3219803815f5e4c5e88768c4410d10275aa9426550378c04b31bea6eb0797ba480265528fef7c9730c60e465413c8f12b63a7dbf179b310b0263c3a5bef5364db0844e6721c6c28dc9c509ed1f5de189dfb6e3708464c7d44b4d58cbfcf9d0f1768eae05e72d6dffd5129942e5e399e727b6360305e63c0ffee2084ccdf801b39ea7017d0379edfc9560c983fa092662a02120574f5ab1654e8d1dc5b093233b24484d911574e73d0522b50f1c701cdab47e8bd6ad758846c4d7174102bb5107ee8312fcd988d783727380f7fcc11e69b26671890b55cbdff8656f93602835e7d83ef1856f22880d38b7851f846f6e9e577f587115c564a0e06ab2d7689230b6901f036dc24dc2ebfbf066bc38e5ffc673dda02a3330d9ce8ed379efa5cebe70cfda880526837c0d8f3b535fea9c6487ba336cbcb8b889dadcd0568e7328e0d9c25eb6e2c6144c5ffc5e60b74bdb610beb4dd438c7a882e779fdc8d3ec7262ece0e19c4c461baa9e6d591ca1dbfaefd8dd48f580d74331b9f5eccd8a2d6b0a818016d88528dc066eb50e0b2cb06061227a765dac2b42bc7d38b2204296a0b9d6fbc001bc9e987675086a776fc6028c2f8e3fc4ef284ac44977725124096d2426bf416e83bcdc45433657861619e280f7092e58acec50907d8da489ec4bc866119d1b2572d6fc7856fd762c8f6e03ea33ed277fb55a8f254714ab3790aff29124ed2d8277edea5a4eda13282e0b6c71180ddc9b0b408a86ba7d0cb7d3e255099163b9377d5dc130182998898a0aaa521c4ee626028755084097568d88797fde2be030379a3ced21584efd3f727bef895a3ef97f25cf6ecc9e7cc4a3bc1d2b8acefc2a949c41462d6f148ab7cb37e5992585338e55c37d6e3ddb03c1cfac2c986b26f899bb949119924eee94c5408579f1057ccd3a05919dc8637bc171a7973e20661448eb4ec468dfcf33ffdc0b5e36dfc6e277f888c9d593de160cd11d75cc1f4994dcf0c6c101c5d022b2ba32f9f55531bdab85f18b9c048a6f4a8f13a87913dfe25eb33c661d35b600d31f3a20806b53e5ab44953c3a2a3a25be73e47ba0a53543005272528b690c9307b136b41c12ce24dd1cd73ae82c099d0bb52cf1e015deb4e4ee2276d9ac5aa1f86cff73ead9ff5e04cbd0d18a3f5bce78cb1c54d6a1a32866ffc8b757a62e8fd401b620cecdfa2404e3f4d301de09aea98b637b5298651f74d5c1ecbaae61bfa16b0385239243adceabc78d70e91849d4b8f3977c1358c40833280acb36d397a02a2af3338e212f7164e623e37b91b0bd0af8e70b890270a15d32718b4bf1412c29a4c8555bd5e064bf0cefdf2faf66d0cb21d02f18cb3d30ad717a11b99a0180344c4bda5d41ec33595e411049f98bb717069c129454eea100e42813a6f2c983a3f4a54e2b02061251dcb04142f3ea6c77c065c1e744fe11ce71ee4acbbe9d210a5fbe04c2a3b22e25eaa474ca16599f96e14c5b43579a1a81287749357f4e71fccec5dee31b6dfdcd84b81076cd0e4ba6495ee2ee595a523ab4af9b318a7771751fef91bcaf9a480dfb44c57570e671d9a2fa6452d85b5d451f4d698522cf9ffcd9ad70be03e58ff7a4525b11fe79f2b6a183ab41f423dac54e2b00b5207dbc8af684723dc6cc19a875e95a0c8b52be2f60f8ec8acd348cd9f90bb672121183d9516a07735c93e0f2ec783c272e478bee2445a9698e59214d6af238ad6e19a7c8ecf64e6437d4ba28a99af918f58a91564cd2400659964d154c5cb19943189034c76d47dda3f0fda30763b748fbb612682f9b6642bc4e335539cd3e8cb3f3e034e832360f6e8c3f6a9316ccc38ac34b61a58a1d63f640a0f6c5c976b5fb117a590e9a62a3a2f121335125b8463fcac29ab58fca59e5fe91ae18080de741ac2094437f71c268d424bfe0be7411ed853586291b7da4616c01edb42ffd54d9134450e570d1f5004b03d428dd2404869189b7f0d462a6877b0ea3615717a6b2ebd2fd95f02313f10870d0ba2c2a99c56c4eb225fdf6e4917826b54c131c4de7a3537f13076438fd0d7ef56af7e86df7ee6c0a5e827e69f06e158a56afb124b37efec0c75a1ec1a4b7db141c04ae9c60e64495fb74d8fffec6267ca150fb4adafa5dbe4e72b155a9df3b50a0fbda9b66ff8761af294614188d3b3c56aef6f54f85d0dfc5765302d8b8ce77c5765f5141b449b12cebd3d1adf2ddc61e18f136c9d0c4969997c55f1e97c9959448de5ff37e836319c24d8553d3755eb44eb0e2eba9f7b8385ec5b859b7977e7b0df43eb096a46c9b3c87aa37b50d1b8661d94dee84a639f7dd220a8e530f4f45f3721c74937f01231ce0c0ddd827713e9579d72c60d4403fd3772abd05709a2855e63f2f612c95b33684afbf688bb37631542dd4cbfd7adedff606cda64205312f13d791c1dca6d5f1b35eb87e71d80284343a2f834b3ef1fdd57df8f240775346340369186b371417b1b22a3a6850a35e1e70e423879e6b6d68faa86b1036a74551d3fba019ae0144ebb5d07f8d90c3b2e96024dfc7be23c87c9f31f8e0e7437a9e60e6bf5172f1912e1475097c1cd32f57efccc487aa2c5e9f9864b83c53860ce02a74f5799b2ee9a1fca9c03d956d6131569f5c4d588753ba2cf3ff072b848be361509f0414ab97bb2bf760f3272ce4b093a0e586ce16b0641109f7bf5dad5fc2e075f3a54f31a6ca13581545d5d3c229449164ac0135629435fe67b5ff1481bf1f262a22eb866dea77dca64048d048d458633134c4e932b0c7cb0177bcc967eaab803a02e5e6c1969162b0e80a2623d28894cceda254399cd039cb34c55fb271da522dc3ee43f3d1e02d53d3597d8905d811be8716cd9508887fb7e886acf6e1eeaac346c0d52ed82a8034113f218236587d791f204516536f8d7670f4340f692a3cd34b60efdadec004700a5f2582164369edaacb08c5617f30ad59386981e1013e7bb49504dc1d890d180a53e78f9121c37a393dd713355c757a05e0de2c827ef397ce00d8dbf8c8250691ab980a1662d0317ff20240d81d31f95fc4b4f9877e894a6f093b90e4a1174863fc9203f6d3b51edcf61553d497f9243db48a7a814c18faa0ad977e90833e0371ddc25767e2d35cf364d0081d08d69d0bd3628b53974a9624a4eea4c54d583288048af6665e279a97f115a69abdd5f5dfaf9baf075e2d872b495b945aa3f1b738627e4bb17cc4fc1b3e1b5c84297e7906f2cecbc666e9b03bdedf5b951785ec7676c81d7e646bb3a88238289729f4e8e1dee7d8223a5dfc217c35391411a298d9405ae6dc26ac10b980f3e0483fe6e53927128568a32ed5f7eaa4615a5568164c13a72462029d3f4c3d63fd2fee11cc9440ed9aedb024016b1dc77f276bbeb4488bf5035b2a78603b85fa266d9a534ebbd2a8c0b4992209d6d8e43fd4a64b213da28d79db5b394fc45ca8f713d3d3681a503a36f480695ba267f8d53bd0c129a275e99ca83b857ab91e444dfc648ebfe0082a4e00533952832a056b00c5d402c1b9697f4d17fbb7b764a271a46c7b61041d8ab023b5c44b39198944dfb7b9a20c0df42eff401a82635ce4270b6dde90402052b2a0c159f280e73713e02fa5b7244e3b9b66f9df73eb52af63871772808efb2346832888783c63e6b0bbf936a0aa9e141a0120a2324e9383e769f50699da78ec1bdb7572627e7580acbf3cad72b1c9cdeaf711e922ca04e1ca4684c66211798eb26c35ec37aa71854a33f449e6f7456ad6bd2bff5b5d4df65929b6e9f7857f72262e991389eed9008ba093efe1ac7f36249ee530b2984924fcceb784e874690ab2f84bea903bc904c07f58f23cc8d54e6ac9ed83ab4da9c140f3ea897aaa2c24d05eaac4c796eed0c041b8db357e29bf824e1797bce9e1f6b0926a8560d59b7dc7cfd24b93db2170997c094d79e03c684933ad53e91a17023d3116c9eca1348bbd2b5e0d80c7c80a29ac4973ac83803eeddfaba4a7f430dfa87035e4c3f39bee14bcbb696a3f40bbb189dde1543adeab0b4d4ee625861da503c2fb5c748f351df4916bceb5a493be38ad4fb17e0273fbbfe06ae2ffb295269dd930a9823c33ef37c5470f49b1a0013594ad53e9173f5498e8a25b44e4fc01ed3b321a5269f11b7672192f196a098aac67dbcdcb925617385e02be54485efb1114ee2a69a77a4ec60a126815a29593b6eaccf9695ac6a28b13e8ba88bde3bf95b6121e5ef11a5b236fa7c00b47050de6a1db9b6326521f632c87690bbdb2db6f9628054e384f3d8bc3bb60255c097c95671f1ec7ea722366b992af7df8276b673a040b94058f5047ee53640eea910f171411a9cfa261cbc5bfa4b79f64c1c8eeaa3e2e2fa9fe861705c82985ed01d5a3bde50b523de10faca25c44c4eb78b3b9da9d4e563abd4867db7e4bc664677c8196f021f3a514394becb59f51a30858fc76defef4b104e2874e7a8a4562f61d7ddbbacdb5591d96d0ec14b332c23f76057e31e02510d462c69143c6e24b92018dfb79f06711aacc3f1fd9e01628f0c03e89466eb39195e6f99b5b273dd49b0a37d997e069282ba510b9b34075fb3a511bf4c34dcd3b50d2a439b4e0c920902628737f2b98c18b6c5df620422363214646c28534a15f67ee4ba7e2db6fff077731db7d49027c99549a119dbaa22e416a62d6626521b0572168d90dfedd4b64fd382b861b08201cc98225c0ee6e899bd2cc4de68b3bf83db779b1dcb433572397507bc9bfdea81d34eb1f8be64fae8f544ac985cbde2025c57e5f03bcc3fc6d951f7610e000439f61dff7407d7b4287ccc01d2f41f7165895e74106b337a446088b056f4015f8fb0eeacc5f2636f54d9ff54cb24f28454dd81f545de5c77db77b13dc6edab18cfd4447f61eafc2ec4e7d3f39c618274f24263a5d72627bc1b1478937c569df39f8b4a21aa982165590a7cca76466ba8cb47e373f4362880c55e34f80ce08d03d1ce9f152a4fc0e893bb4e8c4d90af3249c06894e063b0aa5a84d240b02778cf27df8a68a74d8ae74ab495fd73aabd70a203581559ee88a05d6feed165c2bcea3d89605c18cf53eeec13d15f7a0d0e0beafcbb59372af7128e3060040835c1316cd30f67a0f0c8ebb3cf511c501dde1dcfbbfde8619290020f13d0057f5e55c8e402747058c931e1b218a9fe723cfe5cca5fae7c1441edb9d61f7c6703d5811e6ec3492e8cae1d4b9029b7a333b953e28e029d1827cc6404749597fbbb573fce800e958ed506bc8a470ca7b3a6ab3781c16b68a6ff5dec810b68a1fe1cbccf26b3625c099bb2b3b580d3c22a410cca903425f8a722d630f76df507571affd9a19b78bf5702e00ae3763f5e90561666a9b817a01ac993cc739531771bfa761bf74deea8875868a48fef8d333075e0d2bb7a4d3c1d765a188b30043aac02c19a4370ce54be3b588877b17fa929e58925b52d36aae8e8eda135053438a43a9fb2cf6fd98b118c4232724278f4f5d31ad0c6c5a66506059edc9bab62ab479b84dbcaa8d93a4b919396abe36a8757b4080dd9ea45f8c7f921b390ee35c3f572c1dc01b432cc00c16a1a9b5940870b139d76991df7e8e985182365ef0b27f91b744bd4e0608bf1d12e54ea28c3615f1fe4d1873cbf1126170586577b5bcef33357e12e10d02b69a9f82984ab1a22badbb28927a263e0cf1fe75f58318cd41f9f00e836dab8392ec04de71244d52c313ee1121d24b10ea574e030c782f7be1d063eba42f535681a25d2e45c6077553fc9b798c250f31dcccc8443f0d5f27c824f965732a9bfb9d7bff64330af9bc78c831d655178599ffa187a2a096074ce03b26dce052cad9a37384290aa6356976a37c69813f1af2bbdcf17996edb7d2c1b7bd34d3e9d50ad749ff818e8c92615189128b759f71025a0030a4ee9468b2fcba9a6568cae0a65ae18c53fd2e6d557c821841a2c9cd72c74fd13dcb56d2a76eeee0942617aee16520c8637b7c3bfd825c146bac46e7191c75699bfe653640a902bb8691252d5474828ae2468e04e1fedbed9a499aea3e5c5ad09745671b69c00e2d23f5da6935f0232531ca3683b00eaa32bb3d258c6ca21e1a369c02905ed1472a97be35e81c19c469c8539545d5dda9d72656088492a65aa19b0fb9c29a69e7a00f89d7afcae67bff9501672dbc77067806a6a26ab7a467f9dc3e14e1749ca08fff250520bffc003e18edfa306db773264f8ae2a2e6c5417146dd82641b5f2a2c6855ba0767585f0a396e67f8d286140f02571b3adcba8b2faa66af0a65b9e5eb3163485eb8600d25553d0a2270b417f4d1b85cead0734ccf4c2e707671c99807a24eec3cb1a0befbf1dd6ea3b7e1d9a328e54da7162d36ca411e217d9591bba1a3aa9f48ac094577b551837e4e381399c93b430fe8c03b8e9925cd6cf19d22b04996090d1cd44af93381d5d1c0e953493d8248a5d9a860b825dcb7bead72e8e4934f09ca0007cb0e42746d166789ce8d67bb8e34019dfb6c8b2c318f16faa899c134d3824325986c8d9c95f4ea32078bce6b3071dcf82d1eef8ac13044777d21fc1d1d8d19f5bc4b042cd767b75bda31a7a73a0beba02b6944eed2690863b3465d522650da9b5e9085f9585cad250aadd7208c618496b0f4d3fb4bbc13c6bd31327e614e1b3ca09a6e55b772dc8ab66fcd5b40deac0267a8c58fec13f39ef98755870b651587339ad15209fb3b5c9b47faca217497f974cd5194b6d112cb69e7b475da23199da751b2a7484a0e0f74e40ae6bcb551a1717743368f78f7ee5b48f180dc5517a74c34642498be4b4f4adc055a39a8f1e38c22f39bf9ed8d14e7fdcf43144e971d065d29f7d22d893c2a1a996a0995d9e6b9269b059ffe7fc719988d8714740ec1d52cdc1ab1ad730b17eb5e137730d57556216e4b669622e745f3c833c69c13eb014f91c4bffd5912b03d1b41e960c4bdfc6afe31b1cbfe126d1c752bd9b2d92fcb9b81ef98cb99e245f661fdde5490bbfe6209d834b5dd619e30c819b411c2d2b49eed9c6a3f88a43b4b9fe3bf44bb49ea1b9b79374a09e4312e60c804a5f24ad282bda45684b3c3d246eeb0d57829f7e35730b12b4a2b6fd8274af98d17f922bade1e40bf440b3c03c5465bde4cb0a56363b92f2085ce9b5c2a091a5826f213c8b297e83068c785712a0f288d2f1a6fbdda89f0213abca256ad04a9cea3f692387760c83cfdae697f11ad88b8a41a07cc63aa331e8ea2b15cb084d8e6e07d17eb15314e0d14dcd038d35a5355b3c0b7c67ef23ed6e6776e5484ec8d659ed7cd12845a5934c5fe83344eaf05f266fbefaa8af090e2ad3868f18aac7f3c10c4eed20a6b3bc4efed27ab202d661e8d010722a77e419d5115bb7e24f6aa128c06303f401f3f2decd4ae2ae71921f9af8632a5f53e0838790b38f5e59338ebbd22994d929243c431803b81fe62ba6881d11819e62c2cee4a9d10156c62a595e58620a51f65d188b6fb5e821db4e2b050e6dfb8dfc9e55d967bedd8a147c7a40851a51650f35e123e90ca94add46e87f5e0b62e333ad1255567e7cc1e2da389353765794567af97d10702f5407d79313685a7b23f4460cebb3771d8c0f25710d990691442ab37e7652c361a305e22b00e5f6bc00832e0d1c11e79c775bb1576703a707057c92fa7646ba119e425f9beb73528b9c0bdcd09942ec59d5f2325403651f6aba49ed9dc969066557d48c2041d8c3a4cc69d5ab81a26c8ecaa3021b7aea72bd16ec95d16b4542eec65dfa65d1b811da6d8071b1e5737805e7d7be183215ad227e1ce3f97f5a0a1888207c06c6bf8903a33812ffb68415b442bad34cd44b44ea85b6e37f1cf1586825ca99e632076130d668945fe5753fd834663430aa046c3e407dbffdd51234a907476439d5097a8e31a32ad06c169b9350eb80c19a099a4c6e96491e2bdbfdee291bfbadc9c94117af45b9f75b445f9558a613984654e6624182936c35aff8b67a30447629e533bb76ebaf64693e671b2118c5687ca6dd5fad6958c3f01d0e9d6f5cfd5e3dd8531194a13bb3c553d54c85905d42dad4c70cf7ed8e5ba4762b0e5d2a012f65815a8c4a585fabfebd20f961aaef4ea7c96158e8fdfe5d6a3e02ee594af68011007df8e817408f819c71d1e6ff6b9a7f2d05e6d79e8db2639f648241fae5e265eb150da98c628646244cc62109eebca57fda0a718e69fcc12ca01fe182388950dc1f529e054a0b3c2a89866de87b40e54fed5b27a9acd784e41521d8bbf95922448d07bea17be6b4bb5fa792521227495384d7e90aee5ca0b2acae497bf1be5b3ac53e30be5c3d1204ccabadd0a04bd4953ecd8a14655949f85a04b6f6d48c20d7e46c2e51e1bfcecacb61f95ab9b2bc1541d9cd768421698f50a4a450a909656b667efdfb806b1d2531a98d86f0136928930e4d581bb2dd224bca16d13480abf62aee5ba9ddce2bfee470096cf7cad79d83be6f5f808acd2326d417e2dec4ff7d5990a10347d0caed407e50922937c3f479e99dce0740f1d1c164143efaedb393666976f096ab456b2c08e3d125ed7790acff62b3171f1820f4379f4d2143159509e0270b1fd10a7f6e4df08da1fcabead53645db54f2357b26b9118d2460b39e1ac4f5d5c59acbda8f418b78f4c6233652890b3c67f6ff18a8ff51010e24d70bae11eda2feee291eeb43c7cb647c1c2c09b3fa5561fea63a38106d11a2a273c814867677ac2c0aec94a0385a0c3507328b27ed2f60d4ac4cc0425edc744894edd364f9d2f4161dddeba0131e8237121003a35c198ab3184c943232547617915875904288e247821b06b9eb55ca43014db23cde8c0524f20e29da959343fbc7591b8f313a70493c29263f989da020d66649f9c496090b2abbbf0c6ff0d97307c5f6bd8042e857bbf929a7d9d00b0b519814a984555ba6c9724a627723d442d4c068b7be56936d801f18345c53ff7db4ccfe2f53f3d4e32f62849e38013089bd164f1ad5d9dbeeaa3b683ecc030635a50787e25f7c0ef0b1d93a42e119e08e7d5373e89286552ac919c7783ccbe2b36d899189829b0ba66fc9e407f8ce29b1cab361769cbbb2a38fe4f7a4d6a2fd185433006f957afb26ca625f593242992edc3c0699b01a3421b2e1a9b87d4a575c929e858eb2a2c90cf829982e6e54d85e5febdb2bbc2347b2bceedbdc9a5ccf62af91b96b6b5ec4c958bf322549eaff57b79941c11c5907267bc29938c64984acba0ef8fbacc9f7114e2e63472f69ce4ed9ff55f96849e93c1619a78d248303edc295102fef5994fb315e8c2c4865e149127738e3f7c4f36f97a00c9c0329ed1f1bc76ad05dc1cd1c1c80906a6fa52ac222716941a9fe129b3e5b65d8c061535781bd2333a5c5cbc961a0c230ae8ed049f3cb26cce0afaa965675cae2a97dcf8c87d2916405cee52a5709225bf2dfb5452277e091b6f36ee251fc9f31532db44bb177a465208cf3b50212cf53d3c4b38df55d0051646b5fad13df3a0b6e09ed1f1bc76ad05dc1cd1c1c80906a6fa52ac222716941a9fe129b3e5b65d8c063fc5b25de544ed98d8c6a1ec548c47a5523e939e8bf07326efdc133352c92b758035c841e4360799f0135deaa0a3c176479cc9d356fb8b3001ee624ba3b4c7c39ed1f1bc76ad05dc1cd1c1c80906a6fa52ac222716941a9fe129b3e5b65d8c062d8144189140bb7c3ac457c80db5c4e44a8d4e443e2773311c9fad69917dce60c97f4cceb9c2dd63df80675554f335640cc46875185af539e2b2f3d6b9e9d7ed57d1ba78e19dd46a4dc3be448ab14e7f5fa8019b3bcf94fc58c2d31d1268465410e277ae39e189a5405eb84d31408cff0e4e1bb4698a4778a86a3b78ba53b9a754a40c9f144e80fd40afc82eb5b85fa7da166804f41641cbdfd1b47c17ae4249a9b81962058b0284fc6a678abd5aae733df2a9fff9d9f7b345303b1c6a071e798b399c1baadbe4d98eb1c5ec0c61d66af08f61c9280d8be84212bb3aba564f9a4e18b109b19b6aa79663d9635ddced8c8975dbea92e2f2c280e194449d261233fa3e1f3a9bc83ec3e56fdf4d164020792ccf9cc7ff62544e6b499095e5e984cca627a0af554b97ca19127b8fd4a395feea57a22e3a481bb74132c30f7a4c4cb3d891b1c7782cb72c1a45673de45b15d7d97442c83f4f89a63561eea9e5b2db1474967cc79b07f116dfb5f0df30993258310ae8c87b698d164248c81428906c12b38a8b4abc38531ee4da2c4d3a33a9f150147711254bb01e7a36fcc94d01be17fa566cb893fdf9409da62c4ebfe439f5d03dbf215f1cb604acb01b9e42e1c0d83b6e1ca0f0f11649c4b689b7a563f6cf82ac0d608708175515b1a568c4c52346285841d56c54638db511bff0f0bbc2958b1b0866674b54b99729f756887332ab18dbad97a02b74466fc3cd460fdf2a2eaaeedc51cfaf784305da8f01f2d21b1054ae1aade69c0378e2d3a612ed0ffc24fcbd781f7f93cbff1ce93e7933b08922648e164d616509dfba870cde711f63cd7105415ed680d5603977f7c4aa92b24ed869b213d8fa004b93da70314ba02e2a40a635326de3f88b4f854c2946ff25ec150c4c32ad3fdc8682baeb8c28e76f067abc27af406e95b53c22cefda75fbf996bf46b60603a24209d0b1b2dc656bcbed0b7df5a8d76079daa4e1552d5540b12139c0b32a25ad0eebcdde074b0a29c3ae9829d8371e1b71c0838379db4d5081af2e18f940087c85f2a9a7286b61a792c76e33387d6033f6fe1329f56d4c4a8e7c2ea4d0efbcfaedf4466fc28f1cadc2b5297529deb3d231839c08652bc8f6107e27e9b34f21583f095e62c009d170457ee0f91b8fa54f90326f1b20122028204366f5e07480e9fc5015cbde9996770a2f0da5aa061fca258a31a647323a35d7e764e4c6d0f76c9cae5aaabf071bde7b5a006414914d01c8c33a0b9df6b699bb963f2019985f34d30d8577db06f1cab3bebdb327ed63d1abe28b78fafebc63bf30bb56c4759f57160674ea01f66be094e296a7465cdaba02f6b2a83acaca8f8bcba323a34cb7ad0b3cf44c2ab458dca3e3581e1fbe58d7e3ce8943a1f1f87f8dbf51151bb45c6a786c5fad5a856b5e5de636d1c9492c06e7b9cc77144dc7f94f1b14abfce2e77d18f0143fe3d8c5275257b429efb6da34fd654cfcca98fb477909cce87c3e55abb2fdbd80d9eb1059a13c4d29f5e0c35b9522b7341e5132d6be1f2c11269d1a5703af7c9f902b3d107e898af939dcb8adac11cd39304a705d79551eba38cfcd045e26ac140d22eafd6448813e6ae8b2fa9d597d42d51ab3f23e702d92c0a306857004026ee6d9d805f705cb15131cd6a85f4fe6c562ee543b0fbb8c06e5e825630c9c36e41dc3939cc7fcc12c97f0d26ffa71f74847cbae4f6a51590b276e5220fcdd216b9ca348c2275d50b1005ed566e571ba36efcaad31830021608c2f422fde6e3851a9606b5a438743fa1fdb54e7df672bc0300249c0b7140f5c6e2c822b43f3069ce74b126e03cc976567552671473970ed5fe3b94bc5bcd3c8f45f47b93194eb3147fabc02c6c0b1337f388e33905c00ffadf99fc1486083750c78b8de368c512e36b6b501df190cdd0009017798e6e09873138fecb58922e9039d1234f122f365a49c5c4d2dee37d11b5267d4f46737e0c6549be0b2df663972fb108264bb8902560007582322de80dbaaf2d2b4977881fee569ccccc12140caf1087f869810eca7befec11accedac05229c0571e4e4113221ce8a09f6cd9c7d3061ec0c0b9ec2b8a0d4771a80974a24b347d30f44fc7fcd5e2055466efd07beb2bb6e0e0aa355ac4cb77e4edd15cdb6e7f4c1a6732ef9962cc741b8cdb7ad0450f6c3d31c21a80817c8c2088c29a5daadd9d66aaac828097afbf56c2780c25db0e66071c8db09103c2d97d9da01551d360382f57a94bcc84d2c827a8a0c5c3d172b1fcd13d63e9901e4ae8ecb1207d1fe8c223bc221da7643f28b836e21674212691329d478a71c4fdd6d383c401a6bb9e93f09819be6d0babfda599a23db562253f2d2b495ae6da82c66a8f63010ffd6e1989e927c176ed5c88b49f19cdeeaa97c4dd63c6e4a36246c3eaa40f4ca6d395cb9f707e059bf98baa2dde96f2086f8c709bf56f3c710768d6cffa617a26ff5a381cdc6b4d74c9078b9a756f1f4bcedb8cd6c177614c09eae8b455de22cafc2541ec7a0f9ac1977c732fd45956b255d96a5d8c855de47b57166054c46978bc728475fe96b0219c598dc71924534b76d68641356d9275dbe1148ad175713f3951f6ad5ba6a525d98db04a253e4fa22a0b7d13a2930bf74210921de659e331a1c1647fe0102ee547f83028d05ba76434ccfa8a7ecf3eecde2302276b9ba13192932fd60614b6d36e0ffaa005e4db9da88ebf5f691695276ce7fc1166adefb4b10f8737ae97497993c7b1d897162523089d9981a70ad9d5a0233e08ac400ef0d6c2559de5ab375a3d3c4c1835527e65d2c6248d4069355ae8de32032168e5c8bbc68070d338e008c504ff434158adc395be0378e6680609ab937947a2062aba2b90935d6c96d75db61f843e10d6407265642042f448ab87af3173b1e21ce14cc51a181a19251874215cf79e9691f5d3edb271983e00d652ad037965f8b1c1c5a37b7dd8ce45d69e62ce0139112e4a962e8981d8aa6910608b99738eca62a5832e025b52d2849bf3d7a78a2021d5df221a241139f57f9edd464099b1d10679c7058e754c7230c37983c667b2fb2ae06eb37a688a8ab1ddbcd06f5353bab30b5f92a23c8db5ff307c5c7cfd3a9aae2b9191847bb6438398dec3db9a1519ca72d7160939894c093c18791c9a9a83f3a652e6d5d3225a6b9c09269b9f157f95ebf8e96b0bd8743f569e4930639f3ea985959307a4cbba12006bf14ad1140497976060f387bc75c338ccc7da15f3c222737e817af45561ba76f0519319fdc442d942ff7405462d58ae06af2e1ad2ea7fff86b2d3f1af0d649898a35e42dda4f26a3a7e920c86b85f90f5a40ac4936033049e6b02f5b4b13eff5acbf5c28f949dce714d44a5517fb92dbea952f933b0c86818315c01d0e39026fafe23dc2c564806bdd986cf849700533d0fa02aafc42b508432e94e837f2310a94595da24b6b6f11ff60df52ca17542a90af712971b98cc25b7c3857ed0315a848ebfbe20e4bb7dae8ea515673d25fe4c84eac5804818d67bf80e99a7a2c57dfbc3e105be913ed7d6117eff83c57eb11ee6994826003e7419ae200805b220b7d854b0ba02d793315637ffa6f2068866bf550eab83524f31459b31586d7abc0b7b7d8a74242eb2950b8fa66093340cf907fe9e6df5591840e65833f3dcd2ba5db2f11d4ca3d6a1b31f03ecdfda0fafafb6574cbc867b1bbf704392e366f0eb5d1a7f1b865f46978da6019015ab8dacf0e3c33641ce834f9f3f657aad65334c2b059cd7c4e64a390021f4ea250e40ab6456bc84c211b61f2b5568d37ff82ff11814ee6af76cf5d68cb8ef55adfe742649241c52d08b79eaa1721e99fc3378ddf5ea037c37311096dab4e278d4ec1e12eebbedf1d2c5dfd4c69e675f2751492c50b48ab04d2620601285185ae2858d4931ca6fdfdf2a8a88249ae7d0a538e3241c200a64518507a64b1bcec478e108d863a7f625171ed42582b7b9a9389eb3b665421f3d68f59425ba512f80434033bfc50e597def94fbe011380b4aff784295d72261fa2322ba0a24f56eb49e22957a47596452f0269bce077365ec09d1a5a45696fdab3bddcce23ae42a00d3927d03b8f214566ac4c1f5d7a1c872771da5176d41195b5d2b6c9645e0f21ee32ce61432062862068d262ce600cc128407eca99a7da780fcb3e53d215274512e58c7dac233906b856ba279b7156f1ab2c311f47814618f7ac0689733ca19ce9dc1b95d9a0d6e884ff2c1efc0e1ca6e4caf47b9a72f0c7560684e5205c1f2811707e5450d1abd20bcdd39bc37f3fd5374965f243d104d9eab3f752764ce8464ffe5e25e89d0a04fae437b42fa22a65bdbfc99b8ab0c2d8e5c2ff72329420f51369613ab2c92d8d20deaa106732cfa66b3fff2de56ab5d25b45ba37042612ad4833660a3d2a908157b199a150f00fa47e500e83f950f2e98a632b002396636f396153e0975f42e0f48be6be06a655be35612c6d7f8d64dbcd3e0b306313602f99c35a75d6169d6a3fdd8241d3f2e4b67aaa5bb77f40b696fdddc14a7357564c3924fdddcc43837610a231067d7403111ede3984976545fc9c860eb09259fdba7fce03ca9bb4ed90b961519f8559a8cea6625cc8d0891f4642d5529955a1a3adbb84dce88635dd8763aeeaae3ccb1ff30954f1a1e97aa47dd384458c5080f8c7a53c534b3e379a6c0e884cb35954c877685917d9dbc52e6bca78046ef4103be357b6e44946ecb8c4d5399b56efa85381be5d79fbeaf94027afeede3b623b17090bc0e6cd5dcf3a94c46066449def8531ccd1c18d8f3043500c532e0b0451e9c4682255c1853c44a58ea9adc47d55ca8a23e276dbfeec3f315eedfebc8271fe656ca0d43949abe60ac555d86d5c29d092df0229bd1986b40dd990356d5f23656fc05f48aab0705e9cf0ba24ac5e1fcb4d339cf2fec2d6942ee2ddd4c76a8740ebf60b3ff9be2fff6a5eee01eeeed802177fef4705de5efc45ef2c1a22fd745a802cd9b0f8ae9025218d78e0fa2408f63575b2c563c0dfbe778937e67ff4b6aa6b53e21fe0c6e922747e644f23d204ee01cbe63e6c0abbca916c47078f0cce8af94e3830d15e5df49cc716be8770c51914ff0e3f311d32a820bd0f7138f4bfc6e7865143b7e9b89eb2de9c498468155fe29326eace2b0049466086d14dbfc9b0a6f2e18f6b3fcccb6fef8f4f8eff919e726717544612fe567a3782225d52a381e06cd77c0b123e13344e8696ea2a3b3852ba129808299b42b9a96a8032d91005a4384eb16309e593850c80e4c237fd7eb2c008a7ad9673b898cd061ac82281aac3072752d4ffd0b3e5dd88c43fd04746421de0539591fbd0c83f19a4b03d2eebffc7279faa45ad3a0578447538efa81dff39f824ad53bf0881575ed4f9914eb08728358b28827fac262cbe2f4f587fd88674ac330d034a9c4ec63c198549226d745eddd979e3696e085489dafad0ff1796090e96e442af5db25e8ed864d5bba91dbe1e1dd679760ab4e3a7e1fc4e4f106544dd7d611171f64b0dfd2435352b5d61000694492de4a590bbf0b7997228dc7bc3d708c72cdd2ce24443963600dd975e553c22158239ae7e76935e3cb1749ec972e60ae84ddc46dadefe6c69f2a158ca9afa6ced8a715b86ad3c1da4afbc4eef16abd8a522bb946d841bd389ba7415ddc54b6ded71d237d28534e64dc638a5eba0c3b8a6cb1cfc202bafc7088497d4754af710ce3792994b395743f0dfdb096a39487a7f7b6e2d13b19a29f14cafbb51c194e98513e9d54c2fffee70d6008271dc535daa1bb9abd5c0594fa46bf17d309c11368f5d80fa5c62d3683546e4833b4e02ca11bf26e7085cc0482dbcda62ed68178cbece361394a7454c94444da72f600cf6c3dcc1029e0e5c8cf54e1bf92ec7a4f58d776063be0671f956a55ed4ba0355de686608143cc4868ca68ea8846ac0022d002ec43c2c75e5e35a92d4a4217c385cadf93f7a35867267f449b058438f08f013293c6ce274f749aa502f8042fcf9a1610ecd11edfd7ac365efec04ac27a5c2dd14acc307ad195c01e4972df13a1cc3d17aebc91d3e9fece1e414632fedd297bc892c862b55a5ed7aaeeaa4793eebaf6eb68c2a41339126c4204de48f6c529f0f1b98e616899b59ffd61b618f993c54dc1e9e0f82f7f9798708683b601e2ab06c3c0d3c3dd84a1b5a65fab2e5bfd405802a826d13709e8ff4fd48536ad925ab68ba5a99cd580ecb6c5c250bc0449cb803df98903ff23519813b3959a52c9be2f0a5f86846d6956166cfa1783f7a825c3728aea244fba31f2b6d979e3bce11b689ac14b29358cb90864cb3420bffca281cb92aa0b08bb54c74687eeb4259c7d372fcc97c9bc4e0b1464881c1809ddca66b696341ff1596e2cd2c60b4310ef4dc9942b7aee279838ab2e62ce1a950632c97fa6e0cb138025417cd1289d48c3b4de6b4adfc57c9c9da4a01fbd1864e82ecf69d4b65dc652633741f226653662e1606606a8355941223f../../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-546.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.3e8@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-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]- 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-546.el84.18.0-546.el84.18.0-546.el84.18.0-546.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-546.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-546.el8.ppc64le//usr/src/kernels/4.18.0-546.el8.ppc64le/arch//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/alpha//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/alpha/boot//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/alpha/kernel//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/alpha/lib//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/alpha/math-emu//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/alpha/mm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/alpha/oprofile//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arc//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arc/boot//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arc/boot/dts//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arc/kernel//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arc/lib//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arc/mm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arc/oprofile//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arc/plat-axs10x//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arc/plat-eznps//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arc/plat-hsdk//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arc/plat-sim//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arc/plat-tb10x//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/boot//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/boot/bootp//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/boot/compressed//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/boot/dts//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/common//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/crypto//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/firmware//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/kernel//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/lib//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-actions//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-alpine//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-artpec//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-asm9260//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-aspeed//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-at91//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-axxia//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-bcm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-berlin//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-clps711x//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-cns3xxx//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-davinci//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-digicolor//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-dove//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-ebsa110//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-efm32//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-ep93xx//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-exynos//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-footbridge//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-gemini//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-highbank//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-hisi//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-imx//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-imx/devices//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-integrator//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-iop13xx//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-iop32x//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-iop33x//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-ixp4xx//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-keystone//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-ks8695//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-lpc18xx//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-lpc32xx//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-mediatek//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-meson//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-mmp//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-moxart//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-mv78xx0//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-mvebu//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-mxs//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-netx//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-nomadik//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-npcm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-nspire//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-omap1//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-omap2//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-orion5x//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-oxnas//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-picoxcell//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-prima2//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-pxa//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-qcom//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-realview//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-rockchip//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-rpc//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-s3c24xx//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-s3c64xx//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-s5pv210//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-sa1100//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-shmobile//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-socfpga//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-spear//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-sti//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-stm32//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-sunxi//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-tango//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-tegra//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-u300//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-uniphier//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-ux500//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-versatile//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-vexpress//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-vt8500//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-w90x900//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-zx//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mach-zynq//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/mm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/net//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/nwfpe//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/oprofile//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/plat-iop//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/plat-omap//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/plat-orion//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/plat-pxa//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/plat-samsung//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/plat-versatile//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/probes//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/probes/kprobes//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/probes/uprobes//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/tools//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/vdso//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/vfp//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm/xen//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/boot//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/boot/dts//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/boot/dts/actions//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/boot/dts/al//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/boot/dts/allwinner//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/boot/dts/altera//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/boot/dts/amd//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/boot/dts/amlogic//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/boot/dts/apm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/boot/dts/arm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/boot/dts/broadcom//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/boot/dts/broadcom/northstar2//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/boot/dts/broadcom/stingray//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/boot/dts/cavium//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/boot/dts/exynos//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/boot/dts/freescale//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/boot/dts/hisilicon//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/boot/dts/lg//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/boot/dts/marvell//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/boot/dts/mediatek//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/boot/dts/nvidia//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/boot/dts/qcom//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/boot/dts/realtek//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/boot/dts/renesas//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/boot/dts/rockchip//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/boot/dts/socionext//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/boot/dts/sprd//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/boot/dts/synaptics//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/boot/dts/xilinx//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/boot/dts/zte//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/crypto//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/hyperv//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/kernel//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/kernel/probes//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/kernel/vdso//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/kernel/vdso32//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/kvm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/kvm/hyp//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/kvm/hyp/nvhe//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/kvm/hyp/vhe//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/lib//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/mm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/net//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/tools//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/arm64/xen//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/c6x//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/c6x/boot//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/c6x/boot/dts//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/c6x/kernel//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/c6x/lib//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/c6x/mm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/c6x/platforms//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/h8300//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/h8300/boot//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/h8300/boot/compressed//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/h8300/boot/dts//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/h8300/kernel//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/h8300/lib//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/h8300/mm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/hexagon//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/hexagon/kernel//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/hexagon/lib//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/hexagon/mm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/ia64//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/ia64/dig//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/ia64/hp//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/ia64/hp/common//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/ia64/hp/sim//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/ia64/hp/sim/boot//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/ia64/hp/zx1//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/ia64/kernel//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/ia64/lib//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/ia64/mm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/ia64/oprofile//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/ia64/pci//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/ia64/sn//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/ia64/sn/kernel//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/ia64/sn/kernel/sn2//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/ia64/sn/pci//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/ia64/sn/pci/pcibr//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/ia64/uv//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/ia64/uv/kernel//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/m68k//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/m68k/68000//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/m68k/amiga//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/m68k/apollo//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/m68k/atari//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/m68k/bvme6000//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/m68k/coldfire//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/m68k/emu//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/m68k/fpsp040//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/m68k/hp300//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/m68k/ifpsp060//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/m68k/kernel//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/m68k/lib//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/m68k/mac//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/m68k/math-emu//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/m68k/mm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/m68k/mvme147//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/m68k/mvme16x//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/m68k/q40//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/m68k/sun3//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/m68k/sun3/prom//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/m68k/sun3x//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/m68k/tools//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/m68k/tools/amiga//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/microblaze//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/microblaze/boot//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/microblaze/boot/dts//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/microblaze/kernel//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/microblaze/kernel/cpu//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/microblaze/lib//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/microblaze/mm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/microblaze/oprofile//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/microblaze/pci//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/alchemy//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/alchemy/common//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/alchemy/devboards//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/ar7//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/ath25//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/ath79//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/bcm47xx//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/bcm63xx//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/bcm63xx/boards//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/bmips//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/boot//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/boot/compressed//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/boot/dts//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/boot/dts/brcm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/boot/dts/cavium-octeon//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/boot/dts/img//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/boot/dts/ingenic//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/boot/dts/lantiq//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/boot/dts/mscc//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/boot/dts/mti//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/boot/dts/netlogic//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/boot/dts/ni//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/boot/dts/pic32//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/boot/dts/qca//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/boot/dts/ralink//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/boot/dts/xilfpga//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/boot/tools//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/cavium-octeon//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/cavium-octeon/crypto//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/cavium-octeon/executive//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/cobalt//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/crypto//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/dec//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/dec/prom//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/emma//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/emma/common//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/emma/markeins//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/fw//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/fw/arc//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/fw/cfe//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/fw/lib//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/fw/sni//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/generic//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/jazz//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/jz4740//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/kernel//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/kvm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/lantiq//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/lantiq/falcon//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/lantiq/xway//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/lasat//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/lasat/image//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/lib//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/loongson32//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/loongson32/common//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/loongson32/ls1b//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/loongson32/ls1c//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/loongson64//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/loongson64/common//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/loongson64/common/cs5536//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/loongson64/fuloong-2e//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/loongson64/lemote-2f//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/loongson64/loongson-3//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/math-emu//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/mm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/mti-malta//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/net//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/netlogic//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/netlogic/common//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/netlogic/xlp//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/netlogic/xlr//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/oprofile//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/paravirt//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/pci//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/pic32//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/pic32/common//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/pic32/pic32mzda//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/pistachio//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/pmcs-msp71xx//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/pnx833x//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/pnx833x/common//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/pnx833x/stb22x//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/power//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/ralink//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/rb532//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/sgi-ip22//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/sgi-ip27//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/sgi-ip32//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/sibyte//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/sibyte/bcm1480//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/sibyte/common//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/sibyte/sb1250//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/sibyte/swarm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/sni//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/txx9//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/txx9/generic//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/txx9/jmr3927//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/txx9/rbtx4927//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/txx9/rbtx4938//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/txx9/rbtx4939//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/vdso//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/vr41xx//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/vr41xx/casio-e55//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/vr41xx/common//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/mips/vr41xx/ibm-workpad//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/nds32//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/nds32/boot//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/nds32/boot/dts//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/nds32/kernel//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/nds32/kernel/vdso//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/nds32/lib//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/nds32/mm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/nios2//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/nios2/boot//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/nios2/boot/compressed//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/nios2/kernel//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/nios2/lib//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/nios2/mm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/nios2/platform//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/openrisc//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/openrisc/boot//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/openrisc/boot/dts//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/openrisc/kernel//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/openrisc/lib//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/openrisc/mm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/parisc//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/parisc/boot//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/parisc/boot/compressed//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/parisc/kernel//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/parisc/lib//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/parisc/math-emu//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/parisc/mm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/parisc/oprofile//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/boot//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/crypto//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/include//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/include/asm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/include/asm/book3s//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/include/asm/book3s/32//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/include/asm/book3s/64//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/include/asm/nohash//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/include/asm/nohash/32//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/include/asm/nohash/64//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/include/generated//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/include/generated/asm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/include/generated/uapi//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/include/generated/uapi/asm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/include/uapi//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/include/uapi/asm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/kernel//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/kernel/ptrace//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/kernel/trace//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/kernel/vdso32//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/kernel/vdso64//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/kvm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/lib//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/math-emu//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/mm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/mm/book3s32//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/mm/book3s64//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/net//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/oprofile//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/perf//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/platforms//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/platforms/40x//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/platforms/44x//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/platforms/4xx//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/platforms/512x//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/platforms/52xx//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/platforms/82xx//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/platforms/83xx//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/platforms/85xx//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/platforms/86xx//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/platforms/8xx//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/platforms/amigaone//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/platforms/book3s//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/platforms/cell//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/platforms/cell/spufs//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/platforms/chrp//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/platforms/embedded6xx//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/platforms/maple//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/platforms/pasemi//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/platforms/powermac//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/platforms/powernv//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/platforms/ps3//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/platforms/pseries//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/purgatory//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/sysdev//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/sysdev/ge//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/sysdev/xics//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/sysdev/xive//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/powerpc/xmon//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/riscv//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/riscv/kernel//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/riscv/kernel/vdso//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/riscv/lib//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/riscv/mm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/s390//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/s390/appldata//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/s390/boot//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/s390/boot/compressed//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/s390/crypto//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/s390/hypfs//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/s390/kernel//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/s390/kernel/syscalls//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/s390/kernel/vdso32//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/s390/kernel/vdso64//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/s390/kvm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/s390/lib//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/s390/mm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/s390/net//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/s390/numa//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/s390/oprofile//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/s390/pci//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/s390/purgatory//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/s390/scripts//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/s390/tools//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/boards//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/boards/mach-ap325rxa//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/boards/mach-cayman//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/boards/mach-dreamcast//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/boards/mach-ecovec24//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/boards/mach-highlander//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/boards/mach-hp6xx//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/boards/mach-kfr2r09//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/boards/mach-landisk//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/boards/mach-lboxre2//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/boards/mach-microdev//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/boards/mach-migor//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/boards/mach-r2d//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/boards/mach-rsk//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/boards/mach-sdk7780//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/boards/mach-sdk7786//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/boards/mach-se//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/boards/mach-se/7206//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/boards/mach-se/7343//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/boards/mach-se/770x//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/boards/mach-se/7721//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/boards/mach-se/7722//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/boards/mach-se/7724//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/boards/mach-se/7751//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/boards/mach-se/7780//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/boards/mach-sh03//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/boards/mach-sh7763rdp//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/boards/mach-x3proto//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/boot//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/boot/compressed//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/boot/dts//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/boot/romimage//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/cchips//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/cchips/hd6446x//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/drivers//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/drivers/dma//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/drivers/pci//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/drivers/superhyway//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/kernel//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/kernel/cpu//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/kernel/cpu/irq//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/kernel/cpu/sh2//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/kernel/cpu/sh2a//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/kernel/cpu/sh3//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/kernel/cpu/sh4//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/kernel/cpu/sh4a//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/kernel/cpu/sh5//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/kernel/cpu/shmobile//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/kernel/vsyscall//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/lib//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/lib64//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/math-emu//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/mm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/oprofile//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sh/tools//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sparc//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sparc/boot//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sparc/crypto//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sparc/kernel//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sparc/lib//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sparc/math-emu//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sparc/mm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sparc/net//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sparc/oprofile//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sparc/power//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sparc/prom//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/sparc/vdso//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/um//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/um/drivers//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/um/kernel//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/um/kernel/skas//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/um/os-Linux//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/um/os-Linux/drivers//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/um/os-Linux/skas//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/um/scripts//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/unicore32//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/unicore32/boot//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/unicore32/boot/compressed//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/unicore32/kernel//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/unicore32/lib//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/unicore32/mm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/boot//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/boot/compressed//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/coco//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/coco/tdx//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/crypto//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/entry//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/entry/syscalls//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/entry/vdso//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/entry/vsyscall//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/events//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/events/amd//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/events/intel//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/hyperv//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/ia32//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/kernel//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/kernel/acpi//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/kernel/apic//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/kernel/cpu//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/kernel/cpu/mce//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/kernel/cpu/microcode//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/kernel/cpu/mtrr//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/kernel/cpu/resctrl//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/kernel/cpu/sgx//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/kernel/fpu//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/kernel/kprobes//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/kvm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/lib//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/math-emu//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/mm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/mm/pat//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/net//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/oprofile//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/pci//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/platform//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/platform/atom//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/platform/ce4100//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/platform/efi//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/platform/geode//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/platform/goldfish//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/platform/intel-mid//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/platform/intel-mid/device_libs//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/platform/intel-quark//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/platform/intel//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/platform/iris//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/platform/olpc//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/platform/scx200//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/platform/sfi//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/platform/ts5500//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/platform/uv//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/power//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/purgatory//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/ras//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/realmode//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/realmode/rm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/tools//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/um//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/um/os-Linux//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/um/vdso//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/video//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/x86/xen//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/xtensa//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/xtensa/boot//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/xtensa/boot/boot-elf//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/xtensa/boot/boot-redboot//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/xtensa/boot/dts//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/xtensa/boot/lib//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/xtensa/kernel//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/xtensa/lib//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/xtensa/mm//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/xtensa/oprofile//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/xtensa/platforms//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/xtensa/platforms/iss//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/xtensa/platforms/xt2000//usr/src/kernels/4.18.0-546.el8.ppc64le/arch/xtensa/platforms/xtfpga//usr/src/kernels/4.18.0-546.el8.ppc64le/block//usr/src/kernels/4.18.0-546.el8.ppc64le/block/partitions//usr/src/kernels/4.18.0-546.el8.ppc64le/certs//usr/src/kernels/4.18.0-546.el8.ppc64le/crypto//usr/src/kernels/4.18.0-546.el8.ppc64le/crypto/asymmetric_keys//usr/src/kernels/4.18.0-546.el8.ppc64le/crypto/async_tx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/accessibility//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/accessibility/braille//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/acpi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/acpi/acpica//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/acpi/apei//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/acpi/arm64//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/acpi/dptf//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/acpi/nfit//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/acpi/numa//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/acpi/pmic//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/amba//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/android//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/ata//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/atm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/auxdisplay//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/base//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/base/firmware_loader//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/base/power//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/base/regmap//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/base/test//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/bcma//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/block//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/block/aoe//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/block/drbd//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/block/mtip32xx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/block/paride//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/block/rsxx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/block/xen-blkback//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/block/zram//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/bluetooth//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/bus//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/bus/fsl-mc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/bus/mhi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/bus/mhi/ep//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/bus/mhi/host//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/cdrom//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/char//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/char/agp//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/char/hw_random//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/char/ipmi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/char/mwave//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/char/pcmcia//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/char/tpm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/char/tpm/st33zp24//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/char/xilinx_hwicap//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/char/xillybus//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/actions//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/at91//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/axis//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/axs10x//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/bcm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/berlin//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/davinci//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/h8300//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/hisilicon//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/imgtec//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/imx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/ingenic//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/keystone//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/loongson1//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/mediatek//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/meson//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/microchip//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/mmp//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/mvebu//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/mxs//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/nxp//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/pistachio//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/pxa//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/qcom//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/renesas//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/rockchip//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/samsung//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/sirf//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/socfpga//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/spear//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/sprd//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/st//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/sunxi-ng//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/sunxi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/tegra//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/ti//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/uniphier//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/ux500//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/versatile//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/x86//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/zte//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clk/zynq//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/clocksource//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/connector//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/counter//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/cpufreq//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/cpuidle//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/cpuidle/governors//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto/amcc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto/axis//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto/bcm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto/caam//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto/cavium//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto/cavium/cpt//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto/cavium/nitrox//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto/cavium/zip//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto/ccp//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto/ccree//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto/chelsio//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto/chelsio/chtls//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto/inside-secure//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto/marvell//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto/mediatek//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto/nx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto/qat//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto/qat/qat_4xxx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto/qat/qat_c3xxx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto/qat/qat_c3xxxvf//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto/qat/qat_c62x//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto/qat/qat_c62xvf//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto/qat/qat_common//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto/qat/qat_dh895xcc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto/qat/qat_dh895xccvf//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto/qce//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto/rockchip//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto/stm32//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto/sunxi-ss//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto/ux500//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto/ux500/cryp//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto/ux500/hash//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto/virtio//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/crypto/vmx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/dax//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/dax/hmem//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/dax/pmem//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/dca//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/devfreq//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/devfreq/event//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/dio//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/dma-buf//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/dma-buf/heaps//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/dma//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/dma/bestcomm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/dma/dw-axi-dmac//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/dma/dw//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/dma/hsu//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/dma/idxd//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/dma/ioat//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/dma/ipu//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/dma/mediatek//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/dma/ppc4xx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/dma/ptdma//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/dma/qcom//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/dma/sh//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/dma/ti//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/dma/xilinx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/edac//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/eisa//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/extcon//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/firewire//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/firmware//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/firmware/arm_scmi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/firmware/broadcom//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/firmware/cirrus//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/firmware/efi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/firmware/efi/libstub//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/firmware/efi/test//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/firmware/google//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/firmware/meson//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/firmware/psci//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/firmware/smccc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/firmware/tegra//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/fmc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/fpga//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/fsi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpio//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/acp//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/amdgpu//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/amdkfd//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/amdgpu_dm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/dc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/dc/basics//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/dc/bios//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/dc/clk_mgr//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce100//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce110//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce112//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce120//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce60//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce80//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn10//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn20//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn201//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn21//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn30//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn301//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn302//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn303//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn31//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn314//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn315//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn316//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn32//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn321//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dml//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dsc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/dc/gpio//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/dc/hdcp//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/dc/irq//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/dc/link//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/dc/virtual//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/dmub//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/dmub/src//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/modules//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/modules/color//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/modules/freesync//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/modules/hdcp//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/modules/info_packet//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/display/modules/power//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/pm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/pm/legacy-dpm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/pm/powerplay//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/pm/powerplay/hwmgr//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/pm/powerplay/smumgr//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/pm/swsmu//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/pm/swsmu/smu11//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/pm/swsmu/smu12//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/amd/pm/swsmu/smu13//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/arm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/armada//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/aspeed//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/ast//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/atmel-hlcdc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/bridge//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/bridge/adv7511//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/bridge/analogix//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/bridge/cadence//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/bridge/imx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/bridge/synopsys//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/display//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/etnaviv//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/exynos//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/fsl-dcu//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/gma500//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/gud//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/hisilicon//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/hisilicon/hibmc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/hisilicon/kirin//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/hyperv//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/i2c//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/i915//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/i915/gvt//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/imx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/kmb//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/logicvc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/mediatek//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/meson//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/mgag200//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/msm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/mxsfb//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/nouveau//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/omapdrm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/omapdrm/displays//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/omapdrm/dss//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/panel//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/pl111//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/qxl//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/radeon//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/rcar-du//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/rockchip//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/scheduler//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/shmobile//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/solomon//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/sprd//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/sti//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/stm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/sun4i//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/tegra//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/tests//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/tilcdc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/tiny//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/ttm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/tve200//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/udl//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/v3d//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/vboxvideo//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/vc4//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/vgem//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/virtio//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/vkms//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/vmwgfx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/drm/xen//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/host1x//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/ipu-v3//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/gpu/vga//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/hid//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/hid/amd-sfh-hid//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/hid/i2c-hid//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/hid/intel-ish-hid//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/hid/surface-hid//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/hid/usbhid//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/hsi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/hsi/clients//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/hsi/controllers//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/hv//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/hwmon//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/hwmon/pmbus//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/hwspinlock//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/hwtracing//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/hwtracing/coresight//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/hwtracing/intel_th//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/hwtracing/stm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/i2c//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/i2c/algos//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/i2c/busses//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/i2c/muxes//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/ide//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/idle//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/accel//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/adc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/afe//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/amplifiers//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/buffer//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/chemical//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/common//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/common/cros_ec_sensors//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/common/hid-sensors//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/common/ms_sensors//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/common/ssp_sensors//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/common/st_sensors//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/counter//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/dac//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/dummy//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/frequency//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/gyro//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/health//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/humidity//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/imu//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/imu/bmi160//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/imu/inv_mpu6050//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/imu/st_lsm6dsx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/light//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/magnetometer//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/multiplexer//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/orientation//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/potentiometer//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/potentiostat//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/pressure//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/proximity//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/resolver//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/temperature//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/test//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iio/trigger//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/infiniband//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/infiniband/core//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/infiniband/hw//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/infiniband/hw/bnxt_re//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/infiniband/hw/cxgb4//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/infiniband/hw/efa//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/infiniband/hw/hfi1//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/infiniband/hw/hns//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/infiniband/hw/irdma//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/infiniband/hw/mana//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/infiniband/hw/mlx4//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/infiniband/hw/mlx5//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/infiniband/hw/mthca//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/infiniband/hw/ocrdma//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/infiniband/hw/qedr//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/infiniband/hw/qib//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/infiniband/hw/usnic//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/infiniband/hw/vmw_pvrdma//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/infiniband/sw//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/infiniband/sw/rdmavt//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/infiniband/sw/rxe//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/infiniband/sw/siw//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/infiniband/ulp//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/infiniband/ulp/ipoib//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/infiniband/ulp/iser//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/infiniband/ulp/isert//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/infiniband/ulp/opa_vnic//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/infiniband/ulp/srp//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/infiniband/ulp/srpt//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/input//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/input/gameport//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/input/joystick//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/input/joystick/iforce//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/input/keyboard//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/input/misc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/input/mouse//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/input/rmi4//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/input/serio//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/input/tablet//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/input/touchscreen//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iommu//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iommu/amd//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iommu/arm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iommu/arm/arm-smmu-v3//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iommu/arm/arm-smmu//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/iommu/intel//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/ipack//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/ipack/carriers//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/ipack/devices//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/irqchip//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/isdn//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/isdn/capi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/isdn/divert//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/isdn/gigaset//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/isdn/hardware//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/isdn/hardware/avm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/isdn/hardware/eicon//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/isdn/hardware/mISDN//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/isdn/hisax//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/isdn/hysdn//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/isdn/i4l//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/isdn/isdnloop//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/isdn/mISDN//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/leds//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/leds/trigger//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/lightnvm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/macintosh//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/macintosh/ams//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/mailbox//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/mcb//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/md//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/md/bcache//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/md/persistent-data//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/cec//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/common//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/common/b2c2//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/common/saa7146//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/common/siano//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/common/v4l2-tpg//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/common/videobuf2//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/dvb-core//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/dvb-frontends//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/dvb-frontends/cxd2880//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/dvb-frontends/drx39xyj//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/firewire//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/i2c//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/i2c/adv748x//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/i2c/cx25840//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/i2c/et8ek8//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/i2c/m5mols//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/i2c/s5c73m3//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/i2c/smiapp//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/i2c/soc_camera//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/mmc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/mmc/siano//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/pci//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/pci/b2c2//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/pci/bt8xx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/pci/cobalt//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/pci/cx18//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/pci/cx23885//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/pci/cx25821//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/pci/cx88//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/pci/ddbridge//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/pci/dm1105//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/pci/dt3155//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/pci/intel//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/pci/intel/ipu3//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/pci/ivtv//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/pci/mantis//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/pci/meye//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/pci/netup_unidvb//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/pci/ngene//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/pci/pluto2//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/pci/pt1//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/pci/pt3//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/pci/saa7134//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/pci/saa7146//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/pci/saa7164//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/pci/smipcie//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/pci/solo6x10//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/pci/sta2x11//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/pci/ttpci//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/pci/tw5864//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/pci/tw68//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/pci/tw686x//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/am437x//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/atmel//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/cadence//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/cec-gpio//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/coda//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/davinci//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/exynos-gsc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/exynos4-is//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/marvell-ccic//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/meson//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/mtk-jpeg//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/mtk-mdp//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/mtk-vcodec//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/mtk-vpu//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/omap//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/omap3isp//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/qcom//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/qcom/camss-8x16//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/qcom/venus//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/rcar-vin//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/rockchip//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/rockchip/rga//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/s3c-camif//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/s5p-cec//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/s5p-g2d//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/s5p-jpeg//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/s5p-mfc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/soc_camera//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/sti//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/sti/bdisp//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/sti/c8sectpfe//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/sti/cec//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/sti/delta//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/sti/hva//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/stm32//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/tegra-cec//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/ti-vpe//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/vimc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/vivid//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/vsp1//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/platform/xilinx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/radio//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/radio/si470x//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/radio/si4713//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/radio/wl128x//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/rc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/rc/img-ir//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/rc/keymaps//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/spi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/tuners//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/usb//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/usb/airspy//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/usb/as102//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/usb/au0828//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/usb/b2c2//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/usb/cpia2//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/usb/cx231xx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/usb/dvb-usb-v2//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/usb/dvb-usb//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/usb/em28xx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/usb/go7007//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/usb/gspca//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/usb/gspca/gl860//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/usb/gspca/m5602//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/usb/gspca/stv06xx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/usb/hackrf//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/usb/hdpvr//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/usb/msi2500//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/usb/pulse8-cec//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/usb/pvrusb2//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/usb/pwc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/usb/rainshadow-cec//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/usb/s2255//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/usb/siano//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/usb/stk1160//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/usb/stkwebcam//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/usb/tm6000//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/usb/ttusb-budget//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/usb/ttusb-dec//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/usb/usbtv//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/usb/usbvision//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/usb/uvc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/usb/zr364xx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/media/v4l2-core//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/memory//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/memory/samsung//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/memory/tegra//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/memstick//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/memstick/core//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/memstick/host//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/message//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/message/fusion//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/mfd//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/misc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/misc/altera-stapl//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/misc/c2port//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/misc/cardreader//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/misc/cb710//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/misc/cxl//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/misc/echo//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/misc/eeprom//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/misc/genwqe//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/misc/ibmasm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/misc/lis3lv02d//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/misc/lkdtm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/misc/mei//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/misc/mei/hdcp//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/misc/mei/pxp//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/misc/mic//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/misc/mic/bus//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/misc/mic/card//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/misc/mic/cosm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/misc/mic/cosm_client//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/misc/mic/host//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/misc/mic/scif//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/misc/mic/vop//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/misc/ocxl//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/misc/sgi-gru//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/misc/sgi-xp//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/misc/ti-st//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/misc/vmw_vmci//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/mmc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/mmc/core//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/mmc/host//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/mtd//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/mtd/chips//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/mtd/devices//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/mtd/lpddr//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/mtd/maps//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/mtd/nand//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/mtd/nand/onenand//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/mtd/nand/raw//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/mtd/nand/raw/atmel//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/mtd/nand/raw/bcm47xxnflash//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/mtd/nand/raw/brcmnand//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/mtd/nand/raw/gpmi-nand//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/mtd/parsers//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/mtd/spi-nor//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/mtd/tests//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/mtd/ubi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/mux//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/appletalk//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/arcnet//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/bonding//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/caif//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/can//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/can/c_can//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/can/cc770//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/can/ifi_canfd//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/can/m_can//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/can/mscan//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/can/peak_canfd//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/can/rcar//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/can/sja1000//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/can/softing//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/can/spi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/can/usb//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/can/usb/kvaser_usb//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/can/usb/peak_usb//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/dsa//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/dsa/b53//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/dsa/microchip//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/dsa/mv88e6xxx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/3com//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/8390//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/adaptec//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/aeroflex//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/agere//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/alacritech//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/allwinner//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/alteon//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/altera//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/amazon//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/amazon/ena//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/amd//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/amd/xgbe//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/apm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/apm/xgene-v2//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/apm/xgene//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/apple//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/aquantia//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/aquantia/atlantic//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/aquantia/atlantic/hw_atl//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/arc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/atheros//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/atheros/alx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/atheros/atl1c//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/atheros/atl1e//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/atheros/atlx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/aurora//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/broadcom//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/broadcom/bnx2x//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/broadcom/bnxt//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/broadcom/genet//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/brocade//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/brocade/bna//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/cadence//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/calxeda//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/cavium//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/cavium/common//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/cavium/liquidio//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/cavium/octeon//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/cavium/thunder//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/chelsio//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/chelsio/cxgb//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/chelsio/cxgb3//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/chelsio/cxgb4//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/chelsio/cxgb4vf//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/chelsio/inline_crypto//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/chelsio/inline_crypto/ch_ipsec//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/chelsio/inline_crypto/ch_ktls//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/chelsio/libcxgb//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/cirrus//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/cisco//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/cisco/enic//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/cortina//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/davicom//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/dec//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/dec/tulip//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/dlink//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/emulex//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/emulex/benet//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/ezchip//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/faraday//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/freescale//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/freescale/dpaa//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/freescale/fman//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/freescale/fs_enet//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/fujitsu//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/google//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/google/gve//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/hisilicon//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/hisilicon/hns//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/hisilicon/hns3//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/hisilicon/hns3/hns3pf//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/hisilicon/hns3/hns3vf//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/hp//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/huawei//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/huawei/hinic//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/i825xx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/ibm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/ibm/ehea//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/ibm/emac//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/intel//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/intel/e1000//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/intel/e1000e//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/intel/fm10k//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/intel/i40e//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/intel/iavf//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/intel/ice//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/intel/igb//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/intel/igbvf//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/intel/igc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/intel/ixgb//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/intel/ixgbe//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/intel/ixgbevf//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/marvell//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/marvell/mvpp2//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/mediatek//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/mellanox//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/mellanox/mlx4//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/accel//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/diag//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/en//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/en/xsk//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/en_accel//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/esw//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/fpga//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/ipoib//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/lib//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/steering//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/mellanox/mlxbf_gige//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/mellanox/mlxfw//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/mellanox/mlxsw//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/micrel//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/microchip//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/microsoft//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/microsoft/mana//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/moxa//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/mscc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/myricom//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/myricom/myri10ge//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/natsemi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/neterion//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/neterion/vxge//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/netronome//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/netronome/nfp//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/netronome/nfp/bpf//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/netronome/nfp/flower//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/netronome/nfp/nfpcore//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/netronome/nfp/nfpcore/nfp6000//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/netronome/nfp/nic//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/ni//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/nuvoton//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/nvidia//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/nxp//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/oki-semi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/oki-semi/pch_gbe//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/packetengines//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/pasemi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/pensando//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/pensando/ionic//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/qlogic//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/qlogic/netxen//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/qlogic/qed//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/qlogic/qede//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/qlogic/qlcnic//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/qlogic/qlge//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/qualcomm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/qualcomm/emac//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/qualcomm/rmnet//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/rdc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/realtek//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/renesas//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/rocker//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/samsung//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/samsung/sxgbe//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/seeq//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/sfc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/sfc/falcon//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/sfc/siena//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/sgi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/silan//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/sis//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/smsc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/socionext//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/stmicro//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/stmicro/stmmac//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/sun//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/synopsys//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/tehuti//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/ti//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/toshiba//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/tundra//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/via//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/wiznet//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/xilinx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/xircom//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ethernet/xscale//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/fddi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/fddi/skfp//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/fjes//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/hamradio//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/hippi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/hyperv//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ieee802154//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ipvlan//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/netdevsim//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/pcs//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/phy//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/plip//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/ppp//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/slip//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/team//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/thunderbolt//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/usb//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/vmxnet3//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wan//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wan/lmc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wimax//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wimax/i2400m//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/admtek//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/ath//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/ath/ar5523//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/ath/ath10k//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/ath/ath11k//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/ath/ath12k//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/ath/ath5k//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/ath/ath6kl//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/ath/ath9k//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/ath/carl9170//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/ath/wcn36xx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/ath/wil6210//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/atmel//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/broadcom//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/broadcom/b43//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/broadcom/b43legacy//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211/brcmfmac//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bca//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cyw//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211/brcmfmac/wcc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211/brcmsmac//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211/brcmutil//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/cisco//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/intel//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/intel/ipw2x00//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/intel/iwlegacy//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/intel/iwlwifi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/intel/iwlwifi/dvm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/intel/iwlwifi/mei//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/intel/iwlwifi/mvm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/intersil//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/intersil/hostap//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/intersil/orinoco//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/intersil/p54//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/intersil/prism54//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/legacy//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/marvell//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/marvell/libertas//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/marvell/libertas_tf//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/marvell/mwifiex//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/mediatek//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/mediatek/mt76//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt7603//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt7615//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt76x0//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt76x2//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt7915//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt7921//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt7996//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/mediatek/mt7601u//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/quantenna//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/quantenna/qtnfmac//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/ralink//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/ralink/rt2x00//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/realtek//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/realtek/rtl818x//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/realtek/rtl818x/rtl8180//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/realtek/rtl818x/rtl8187//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/realtek/rtl8xxxu//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/btcoexist//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8188ee//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8192c//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8192ce//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8192cu//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8192de//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8192ee//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8192se//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8723ae//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8723be//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8723com//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8821ae//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/realtek/rtw88//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/realtek/rtw89//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/rsi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/st//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/st/cw1200//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/ti//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/ti/wl1251//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/ti/wl12xx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/ti/wl18xx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/ti/wlcore//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/virtual//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/zydas//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/wireless/zydas/zd1211rw//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/net/xen-netback//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/nfc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/nfc/fdp//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/nfc/microread//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/nfc/nfcmrvl//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/nfc/nxp-nci//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/nfc/pn533//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/nfc/pn544//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/nfc/s3fwrn5//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/nfc/st-nci//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/nfc/st21nfca//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/nfc/st95hf//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/ntb//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/ntb/hw//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/ntb/hw/amd//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/ntb/hw/epf//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/ntb/hw/idt//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/ntb/hw/intel//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/ntb/hw/mscc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/ntb/test//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/nubus//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/nvdimm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/nvme//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/nvme/host//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/nvme/target//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/nvmem//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/of//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/of/unittest-data//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/opp//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/parisc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/parport//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pci//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pci/controller//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pci/controller/dwc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pci/endpoint//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pci/endpoint/functions//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pci/hotplug//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pci/pcie//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pci/switch//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pcmcia//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/perf//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/perf/hisilicon//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/phy//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/phy/allwinner//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/phy/amlogic//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/phy/broadcom//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/phy/hisilicon//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/phy/lantiq//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/phy/marvell//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/phy/mediatek//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/phy/motorola//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/phy/qualcomm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/phy/ralink//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/phy/renesas//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/phy/rockchip//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/phy/samsung//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/phy/st//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/phy/tegra//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/phy/ti//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pinctrl//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pinctrl/actions//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pinctrl/aspeed//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pinctrl/bcm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pinctrl/berlin//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pinctrl/freescale//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pinctrl/intel//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pinctrl/mediatek//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pinctrl/meson//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pinctrl/mvebu//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pinctrl/nomadik//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pinctrl/pxa//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pinctrl/qcom//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pinctrl/samsung//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pinctrl/sh-pfc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pinctrl/sirf//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pinctrl/spear//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pinctrl/sprd//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pinctrl/stm32//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pinctrl/sunxi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pinctrl/tegra//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pinctrl/ti//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pinctrl/uniphier//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pinctrl/vt8500//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pinctrl/zte//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/platform//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/platform/chrome//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/platform/goldfish//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/platform/mellanox//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/platform/mips//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/platform/olpc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/platform/x86//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/platform/x86/amd//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/platform/x86/amd/pmf//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/platform/x86/dell-wmi-sysman//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/platform/x86/intel//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/platform/x86/intel/ifs//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/platform/x86/intel/pmc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/platform/x86/intel/pmt//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/platform/x86/intel/speed_select_if//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/platform/x86/intel/uncore-frequency//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pnp//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pnp/isapnp//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pnp/pnpacpi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pnp/pnpbios//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/power//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/power/avs//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/power/reset//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/power/supply//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/powercap//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pps//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pps/clients//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pps/generators//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/ps3//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/ptp//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/pwm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/rapidio//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/rapidio/devices//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/rapidio/switches//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/ras//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/regulator//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/remoteproc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/reset//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/reset/hisilicon//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/reset/sti//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/reset/tegra//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/rpmsg//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/rtc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/s390//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/s390/block//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/s390/char//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/s390/cio//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/s390/crypto//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/s390/net//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/s390/scsi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/s390/virtio//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/sbus//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/sbus/char//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/aacraid//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/aic7xxx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/aic7xxx/aicasm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/aic94xx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/arcmsr//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/arm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/be2iscsi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/bfa//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/bnx2fc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/bnx2i//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/csiostor//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/cxgbi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/cxgbi/cxgb3i//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/cxgbi/cxgb4i//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/cxlflash//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/device_handler//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/esas2r//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/fcoe//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/fnic//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/hisi_sas//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/ibmvscsi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/ibmvscsi_tgt//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/isci//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/libfc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/libsas//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/lpfc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/megaraid//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/mpi3mr//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/mpt3sas//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/mvsas//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/pcmcia//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/pm8001//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/qedf//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/qedi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/qla2xxx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/qla4xxx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/smartpqi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/snic//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/sym53c8xx_2//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/scsi/ufs//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/sfi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/sh//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/sh/clk//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/sh/intc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/sh/maple//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/sh/superhyway//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/siox//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/slimbus//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/sn//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/soc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/soc/actions//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/soc/amlogic//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/soc/atmel//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/soc/bcm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/soc/bcm/brcmstb//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/soc/bcm/brcmstb/pm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/soc/dove//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/soc/fsl//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/soc/fsl/qbman//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/soc/fsl/qe//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/soc/fujitsu//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/soc/gemini//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/soc/imx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/soc/lantiq//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/soc/mediatek//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/soc/qcom//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/soc/renesas//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/soc/rockchip//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/soc/samsung//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/soc/sunxi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/soc/tegra//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/soc/tegra/fuse//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/soc/ti//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/soc/ux500//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/soc/versatile//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/soc/xilinx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/soc/zte//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/soundwire//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/spi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/spmi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/ssb//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/android//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/android/ion//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/board//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/clocking-wizard//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/comedi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/comedi/drivers//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/comedi/kcomedilib//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/dgnc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/emxx_udc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/fbtft//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/fsl-dpaa2//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/fsl-dpaa2/ethernet//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/fsl-dpaa2/ethsw//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/fsl-dpaa2/rtc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/fsl-mc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/fsl-mc/bus//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/fsl-mc/bus/dpio//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/fwserial//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/gdm724x//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/goldfish//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/greybus//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/greybus/tools//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/gs_fpgaboot//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/iio//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/iio/accel//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/iio/adc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/iio/addac//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/iio/cdc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/iio/frequency//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/iio/gyro//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/iio/impedance-analyzer//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/iio/meter//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/iio/resolver//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/ks7010//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/media//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/media/bcm2048//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/media/davinci_vpfe//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/media/imx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/media/imx074//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/media/mt9t031//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/media/omap4iss//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/media/tegra-vde//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/media/zoran//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/most//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/most/cdev//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/most/dim2//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/most/i2c//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/most/net//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/most/sound//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/most/usb//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/most/video//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/mt29f_spinand//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/mt7621-dma//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/mt7621-dts//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/mt7621-eth//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/mt7621-gpio//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/mt7621-mmc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/mt7621-pci//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/mt7621-pinctrl//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/mt7621-spi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/netlogic//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/nvec//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/octeon-usb//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/octeon//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/olpc_dcon//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/pi433//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/rtl8188eu//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/rtl8192e//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/rtl8192e/rtl8192e//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/rtl8192u//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/rtl8192u/ieee80211//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/rtl8712//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/rtl8723bs//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/rtlwifi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/rtlwifi/btcoexist//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/rtlwifi/rtl8822be//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/rts5208//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/skein//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/sm750fb//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/speakup//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/unisys//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/unisys/visorhba//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/unisys/visorinput//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/unisys/visornic//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/vboxvideo//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/vc04_services//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/vc04_services/bcm2835-audio//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/vc04_services/bcm2835-camera//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/vme//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/vme/devices//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/vt6655//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/vt6656//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/wilc1000//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/wlan-ng//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/staging/xgifb//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/target//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/target/iscsi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/target/iscsi/cxgbit//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/target/loopback//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/target/sbp//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/target/tcm_fc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/tc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/tee//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/tee/optee//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/thermal//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/thermal/broadcom//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/thermal/intel//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/thermal/intel/int340x_thermal//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/thermal/qcom//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/thermal/samsung//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/thermal/st//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/thermal/tegra//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/thermal/ti-soc-thermal//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/thunderbolt//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/tty//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/tty/hvc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/tty/ipwireless//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/tty/serdev//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/tty/serial//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/tty/serial/8250//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/tty/serial/cpm_uart//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/tty/serial/jsm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/tty/vt//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/uio//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/atm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/c67x00//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/chipidea//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/class//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/common//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/core//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/dwc2//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/dwc3//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/early//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/gadget//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/gadget/function//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/gadget/legacy//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/gadget/udc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/gadget/udc/aspeed-vhub//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/gadget/udc/bdc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/host//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/host/whci//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/image//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/isp1760//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/misc//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/misc/sisusbvga//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/mon//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/mtu3//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/musb//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/phy//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/renesas_usbhs//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/roles//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/serial//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/storage//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/typec//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/typec/altmodes//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/typec/mux//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/typec/tcpm//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/typec/tipd//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/typec/ucsi//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/usbip//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/usb/wusbcore//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/uwb//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/uwb/i1480//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/uwb/i1480/dfu//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/vdpa//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/vdpa/alibaba//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/vdpa/ifcvf//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/vdpa/mlx5//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/vdpa/vdpa_sim//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/vdpa/virtio_pci//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/vfio//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/vfio/mdev//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/vfio/pci//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/vfio/platform//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/vfio/platform/reset//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/vhost//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/video//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/video/backlight//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/video/console//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/video/fbdev//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/video/fbdev/aty//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/video/fbdev/core//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/video/fbdev/geode//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/video/fbdev/i810//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/video/fbdev/intelfb//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/video/fbdev/kyro//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/video/fbdev/matrox//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/video/fbdev/mb862xx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/video/fbdev/mbx//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/video/fbdev/mmp//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/video/fbdev/mmp/fb//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/video/fbdev/mmp/hw//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/video/fbdev/mmp/panel//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/video/fbdev/nvidia//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/video/fbdev/omap//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/video/fbdev/omap2//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/video/fbdev/omap2/omapfb//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/video/fbdev/omap2/omapfb/displays//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/video/fbdev/omap2/omapfb/dss//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/video/fbdev/riva//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/video/fbdev/savage//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/video/fbdev/sis//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/video/fbdev/vermilion//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/video/fbdev/via//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/video/logo//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/virt//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/virt/coco//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/virt/coco/sev-guest//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/virt/coco/tdx-guest//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/virt/nitro_enclaves//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/virt/vboxguest//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/virtio//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/visorbus//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/vlynq//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/vme//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/vme/boards//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/vme/bridges//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/w1//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/w1/masters//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/w1/slaves//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/watchdog//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/xen//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/xen/events//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/xen/xen-pciback//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/xen/xenbus//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/xen/xenfs//usr/src/kernels/4.18.0-546.el8.ppc64le/drivers/zorro//usr/src/kernels/4.18.0-546.el8.ppc64le/firmware//usr/src/kernels/4.18.0-546.el8.ppc64le/fs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/9p//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/adfs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/affs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/afs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/autofs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/befs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/bfs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/btrfs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/cachefiles//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/ceph//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/cifs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/coda//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/configfs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/cramfs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/crypto//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/debugfs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/devpts//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/dlm//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/ecryptfs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/efivarfs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/efs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/exportfs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/ext2//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/ext4//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/f2fs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/fat//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/freevxfs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/fscache//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/fuse//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/gfs2//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/hfs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/hfsplus//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/hostfs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/hpfs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/hugetlbfs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/iomap//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/isofs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/jbd2//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/jffs2//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/jfs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/kernfs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/lockd//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/minix//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/nfs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/nfs/blocklayout//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/nfs/filelayout//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/nfs/flexfilelayout//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/nfs_common//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/nfsd//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/nilfs2//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/nls//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/notify//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/notify/dnotify//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/notify/fanotify//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/notify/inotify//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/ntfs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/ocfs2//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/ocfs2/cluster//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/ocfs2/dlm//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/ocfs2/dlmfs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/omfs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/openpromfs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/orangefs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/overlayfs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/proc//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/pstore//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/qnx4//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/qnx6//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/quota//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/ramfs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/reiserfs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/romfs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/squashfs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/sysfs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/sysv//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/tracefs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/ubifs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/udf//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/ufs//usr/src/kernels/4.18.0-546.el8.ppc64le/fs/xfs//usr/src/kernels/4.18.0-546.el8.ppc64le/include//usr/src/kernels/4.18.0-546.el8.ppc64le/include/acpi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/acpi/platform//usr/src/kernels/4.18.0-546.el8.ppc64le/include/asm-generic//usr/src/kernels/4.18.0-546.el8.ppc64le/include/asm-generic/bitops//usr/src/kernels/4.18.0-546.el8.ppc64le/include/asm-generic/vdso//usr/src/kernels/4.18.0-546.el8.ppc64le/include/clocksource//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/8139too//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/842//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ac97//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/advise//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/alim7101//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/allow//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/allow/dev//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/altera//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/amd//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/aperture//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/aquantia//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/cpu//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/cpu/probe//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/dma//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/dma/addr//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/dma/addr/t//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/enable//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/enable/hugepage//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/enable/memory//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/enable/split//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/enable/split/pmd//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/has//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/has/devmem//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/has/devmem/is//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/has/dma//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/has/dma/map//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/has/elf//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/has/fast//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/has/force//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/has/force/dma//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/has/fortify//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/has/gcov//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/has/gcov/profile//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/has/gigantic//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/has/kexec//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/has/mem//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/has/membarrier//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/has/memremap//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/has/memremap/compat//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/has/non//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/has/non/overlapping//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/has/non/overlapping/address//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/has/phys//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/has/phys/to//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/has/pmem//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/has/pte//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/has/sg//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/has/tick//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/has/uaccess//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/has/ubsan//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/has/ubsan/sanitize//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/has/walk//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/has/zone//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/have//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/have/nmi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/have/nmi/safe//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/hibernation//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/keep//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/may//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/may/have//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/may/have/pc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/memory//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/might//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/might/have//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/might/have/pc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/mmap//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/mmap/rnd//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/mmap/rnd/bits//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/mmap/rnd/compat//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/mmap/rnd/compat/bits//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/select//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/select/memory//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/sparsemem//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/supports//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/supports/atomic//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/supports/debug//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/supports/memory//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/supports/numa//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/suspend//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/suspend/nonzero//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/use//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/use/builtin//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/use/cmpxchg//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/uses//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/uses/high//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/uses/high/vma//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/want//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/want/compat//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/want/compat/ipc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/want/compat/ipc/parse//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/want/ipc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/want/ipc/parse//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/want/irqs//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/want/irqs/off//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/want/irqs/off/activate//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/want/old//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/want/old/compat//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/weak//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arch/weak/release//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arm/gic//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/arm/gic/max//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/associative//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/asymmetric//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/asymmetric/key//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/asymmetric/public//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/asymmetric/public/key//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/async//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/async/raid6//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/async/tx//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ata//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ata/verbose//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/atm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/atomic64//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/audit//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/autofs//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/autofs4//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/auxiliary//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/backlight//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/backlight/class//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/backlight/lcd//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/balloon//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/base//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bcm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bcm/net//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bcm7xxx//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bcm87xx//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bcma//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bcma/driver//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bcma/driver/gmac//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bcma/host//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bcma/host/pci//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/be2net//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bfq//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bfq/group//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/big//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/binary//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/binfmt//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bitfield//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bitfield/kunit//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bits//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bits/kunit//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/blk//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/blk/cgroup//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/blk/cgroup/fc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/blk/debug//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/blk/dev//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/blk/dev/dm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/blk/dev/integrity//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/blk/dev/io//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/blk/dev/loop//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/blk/dev/loop/min//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/blk/dev/null//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/blk/dev/ram//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/blk/mq//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/blk/scsi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/blk/wbt//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/block//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bnx2x//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bnxt//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bnxt/flower//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bootparam//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bootparam/hardlockup//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bootparam/hardlockup/panic//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bootparam/hung//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bootparam/hung/task//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bootparam/hung/task/panic//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bootparam/softlockup//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bootparam/softlockup/panic//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bootx//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bpf//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bpf/jit//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bpf/jit/always//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bpf/jit/default//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bpf/stream//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bpf/unpriv//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bpf/unpriv/default//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/branch//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/branch/profile//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bridge//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bridge/ebt//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bridge/ebt/802//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bridge/ebt/mark//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bridge/ebt/t//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bridge/igmp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bridge/nf//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bridge/vlan//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/broadcom//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bsd//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bsd/process//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bsd/process/acct//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bt//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bt/bnep//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bt/bnep/mc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bt/bnep/proto//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bt/hcibtusb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bt/hciuart//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bt/mrvl//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bt/rfcomm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bug//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bug/on//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/bug/on/data//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/build//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/buildtime//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/buildtime/extable//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/can//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/can/8dev//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/can/c//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/can/c/can//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/can/calc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/can/cc770//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/can/ems//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/can/esd//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/can/kvaser//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/can/peak//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/can/plx//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/can/sja1000//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/capi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cavium//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cb710//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cb710/debug//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cc/can//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cc/has//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cc/has/kasan//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cc/has/sancov//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cc/has/sancov/trace//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cc/has/stackprotector//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cc/has/working//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cc/has/working/nosanitize//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cc/is//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cc/optimize//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cc/optimize/for//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cdrom//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cdrom/pktcdvd//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cec//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cec/platform//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ceph//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ceph/fs//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ceph/fs/posix//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ceph/fs/security//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ceph/lib//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ceph/lib/use//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ceph/lib/use/dns//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cfs//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cgroup//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cgroup/net//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/charger//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/check//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/checkpoint//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/chelsio//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/chelsio/inline//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/chelsio/ipsec//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/chelsio/tls//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/chr//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/chr/dev//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cicada//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cifs//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cifs/allow//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cifs/allow/insecure//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cifs/dfs//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cifs/smb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cifs/weak//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cifs/weak/pw//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/clang//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/clkbld//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/clone//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cls//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cls/u32//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/clz//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cma//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cmdline//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cmdline/kunit//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/compat//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/compat/32bit//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/compat/binfmt//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/compat/old//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/configfs//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/console//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/console/loglevel//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/context//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/context/switch//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/contig//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/core//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/core/dump//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/core/dump/default//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/core/dump/default/elf//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cortina//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cpu//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cpu/freq//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cpu/freq/default//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cpu/freq/default/gov//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cpu/freq/gov//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cpu/freq/gov/attr//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cpu/idle//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cpu/idle/gov//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cpu/little//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cramfs//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/crash//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/crc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/crc/itu//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/crc32//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cross//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cross/memory//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/crypto//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/crypto/ansi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/crypto/blowfish//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/crypto/cast//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/crypto/dev//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/crypto/dev/nitrox//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/crypto/dev/nx//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/crypto/dev/nx/compress//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/crypto/dev/vmx//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/crypto/drbg//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/crypto/fips//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/crypto/hash//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/crypto/lib//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/crypto/michael//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/crypto/rng//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/crypto/twofish//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/crypto/user//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/crypto/user/api//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cxl//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cxl/afu//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cxl/afu/driver//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/cypress//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/damon//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/davicom//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dax//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dcache//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dcache/word//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/de//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/debug//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/debug/info//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/debug/memory//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/debug/section//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/decompress//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/default//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/default/fq//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/default/hung//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/default/hung/task//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/default/mmap//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/default/mmap/min//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/default/net//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/default/security//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/default/tcp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/detect//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/detect/hung//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dev//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dev/dax//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dev/dax/pmem//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/device//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/devtmpfs//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dlci//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dlm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dm/bio//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dm/cache//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dm/log//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dm/multipath//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dm/persistent//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dm/thin//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dma//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dma/engine//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dma/ops//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dma/shared//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dns//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dp83640//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dp83822//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dp83848//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dp83867//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dp83tc811//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/drm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/drm/amd//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/drm/amdgpu//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/drm/cirrus//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/drm/display//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/drm/display/dp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/drm/display/hdcp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/drm/display/hdmi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/drm/dp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/drm/dp/aux//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/drm/export//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/drm/export/for//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/drm/fbdev//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/drm/gem//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/drm/gem/shmem//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/drm/i2c//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/drm/kms//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/drm/kunit//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/drm/kunit/test//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/drm/lib//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/drm/load//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/drm/load/edid//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/drm/nouveau//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/drm/panel//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/drm/panel/orientation//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/drm/radeon//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/drm/ttm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/drm/virtio//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/drm/vram//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dst//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dummy//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dummy/console//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dvb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dvb/au8522//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dvb/av7110//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dvb/b2c2//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dvb/b2c2/flexcop//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dvb/budget//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dvb/dummy//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dvb/dynamic//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dvb/firedtv//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dvb/gp8psk//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dvb/max//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dvb/ttusb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dvb/tuner//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dvb/usb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dvb/usb/af9005//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dvb/usb/cinergy//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dvb/usb/dibusb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dvb/usb/nova//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dvb/usb/nova/t//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dvb/usb/technisat//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dvb/usb/umt//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dw//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dw/dmac//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dynamic//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dynamic/ftrace//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/dynamic/ftrace/with//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/early//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/edac//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/edac/atomic//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/edac/legacy//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/eeprom//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/efi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/elf//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/enable//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/enable/must//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/enclosure//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/encrypted//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/energy//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/epapr//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ethtool//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/event//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/evm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/evm/attr//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/exclusive//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/exclusive/system//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/exportfs//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/exportfs/block//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ext4//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ext4/fs//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ext4/fs/posix//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ext4/kunit//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ext4/use//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ext4/use/for//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/extra//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/fa//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/fair//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/fair/group//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/fanotify//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/fanotify/access//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/fat//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/fat/default//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/fat/kunit//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/fb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/fb/cfb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/fb/deferred//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/fb/ibm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/fb/matrox//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/fb/mode//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/fb/nvidia//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/fb/radeon//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/fb/sys//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/fc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/fib//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/file//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/fips//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/fips/signature//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/firewire//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/fixed//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/font//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/force//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/force/max//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/fortify//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/frame//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/framebuffer//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/framebuffer/console//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/framebuffer/console/deferred//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/framebuffer/console/detect//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/fs//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/fs/dax//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/fs/posix//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/fscache//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ftrace//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ftrace/mcount//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/function//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/function/graph//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/fuse//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/fusion//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/fusion/max//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/futex//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/fw//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/fw/loader//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/fw/loader/user//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/gact//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/gcc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/generic//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/generic/clockevents//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/generic/cmos//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/generic/cpu//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/generic/irq//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/generic/irq/show//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/generic/isa//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/generic/msi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/generic/net//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/generic/pci//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/generic/smp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/generic/smp/idle//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/generic/strncpy//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/generic/strncpy/from//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/generic/strnlen//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/generic/time//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/genwqe//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/genwqe/platform//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/genwqe/platform/error//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/gfs2//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/gfs2/fs//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/gfs2/fs/locking//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/gigaset//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/gpio//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/gpiolib//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/gpiolib/fastpath//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/grace//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/gro//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hangcheck//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hardened//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hardened/usercopy//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hardirqs//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hardirqs/sw//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hardlockup//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/has//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/has/ioport//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hash//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hash/kunit//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/arch//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/arch/jump//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/arch/mmap//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/arch/mmap/rnd//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/arch/mmap/rnd/compat//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/arch/seccomp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/arch/soft//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/arch/transparent//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/bootmem//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/bootmem/info//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/context//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/debug//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/dynamic//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/dynamic/ftrace//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/dynamic/ftrace/with//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/ebpf//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/efficient//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/efficient/unaligned//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/fast//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/ftrace//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/ftrace/mcount//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/function//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/function/graph//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/gcc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/hardened//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/hardened/usercopy//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/hardlockup//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/hardlockup/detector//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/hw//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/ima//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/ioremap//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/irq//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/irq/time//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/kernel//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/kprobes//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/kprobes/on//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/kvm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/kvm/irq//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/kvm/vcpu//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/kvm/vcpu/async//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/ld//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/ld/dead//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/ld/dead/code//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/ld/dead/code/data//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/memory//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/memoryless//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/mod//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/mod/arch//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/net//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/nmi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/pcspkr//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/perf//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/perf/events//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/perf/user//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/perf/user/stack//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/regs//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/regs/and//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/regs/and/stack//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/regs/and/stack/access//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/reliable//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/setup//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/setup/per//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/setup/per/cpu//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/syscall//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/virt//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/virt/cpu//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/have/virt/cpu/accounting//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hdlc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/headers//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hid//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hid/battery//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hid/logitech//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hid/picolcd//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/high//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/high/res//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hisax//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hisax/16//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hisax/avm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hisax/avm/a1//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hisax/bkm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hisax/fritz//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hisax/hfc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hisax/max//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hisax/no//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hisax/sct//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hist//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hmm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hotplug//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hotplug/pci//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hotplug/pci/rpa//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hsa//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hsa/amd//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hugetlb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hugetlb/page//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hugetlb/page/size//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hv//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hv/perf//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hvc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hw//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hw/random//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hwlat//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hwmon//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hwpoison//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hysdn//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/hz//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/i2c//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/i2c/designware//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/i2c/diolan//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/i2c/helper//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/i2c/mux//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/i2c/parport//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/i2c/pca//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/i2c/tiny//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/i40e//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/i6300esb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/i8253//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ibm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ice//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/icplus//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/idle//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/idle/page//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ieee802154//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/igb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/illegal//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/illegal/pointer//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ima//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ima/appraise//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ima/arch//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ima/default//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ima/default/hash//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ima/lsm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ima/measure//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ima/measure/pcr//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ima/read//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ima/secure//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ima/secure/and//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ima/secure/and/or//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ima/secure/and/or/trusted//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ima/sig//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ima/trusted//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ima/write//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/inet//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/inet/diag//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/inet/esp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/inet/mptcp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/inet/raw//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/inet/sctp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/inet/tcp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/inet/udp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/inet/xfrm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/inet6//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/inet6/esp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/inet6/xfrm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/infiniband//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/infiniband/addr//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/infiniband/addr/trans//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/infiniband/bnxt//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/infiniband/ipoib//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/infiniband/on//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/infiniband/on/demand//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/infiniband/user//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/infiniband/virt//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/init//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/init/env//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/init/env/arg//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/initramfs//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/inline//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/inline/read//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/inline/read/unlock//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/inline/spin//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/inline/spin/unlock//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/inline/write//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/inline/write/unlock//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/inotify//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/input//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/input/ati//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/input/ff//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/input/gpio//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/input/gpio/rotary//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/input/keyspan//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/input/mousedev//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/input/mousedev/screen//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/input/pwm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/integrity//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/integrity/asymmetric//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/integrity/platform//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/integrity/trusted//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/intel//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/intel/xway//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/interval//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/io//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/io/event//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/iommu//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/iommu/default//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/iommu/default/dma//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/iosched//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ip//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ip/advanced//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ip/fib//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ip/fib/trie//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ip/mroute//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ip/mroute/multiple//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ip/multiple//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ip/nf//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ip/nf/arp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ip/nf/match//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ip/nf/target//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ip/pimsm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ip/route//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ip/set//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ip/set/bitmap//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ip/set/hash//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ip/set/list//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ip/vs//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ip/vs/mh//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ip/vs/mh/tab//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ip/vs/pe//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ip/vs/proto//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ip/vs/proto/ah//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ip/vs/sh//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ip/vs/sh/tab//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ip/vs/tab//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ip6//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ip6/nf//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ip6/nf/match//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ip6/nf/target//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ipc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ipmi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ipmi/device//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ipmi/panic//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ipmi/plat//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ippp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ipv6//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ipv6/mroute//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ipv6/mroute/multiple//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ipv6/multiple//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ipv6/ndisc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ipv6/optimistic//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ipv6/pimsm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ipv6/route//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ipv6/router//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ipv6/sit//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ir//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ir/gpio//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ir/imon//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ir/jvc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ir/mce//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ir/mce/kbd//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ir/nec//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ir/pwm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ir/rc5//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ir/rc6//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ir/sanyo//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ir/serial//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ir/sony//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/irq//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/irq/all//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/irq/bypass//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/irq/forced//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/isa//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/isa/dma//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/iscsi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/iscsi/boot//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/iscsi/target//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/isdn//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/isdn/capi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/isdn/capi/capidrv//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/isdn/drv//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/isdn/drv/avmb1//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/isdn/ppp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/isdn/tty//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/iso9660//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ixgbe//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ixgbevf//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/jump//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/jump/label//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/jump/label/feature//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/kallsyms//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/kallsyms/base//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/karma//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/kdb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/kdb/continue//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/kdb/default//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/kernel//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/kexec//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/keyboard//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/keys//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/kgdb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/kgdb/honour//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/kgdb/serial//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/kprobe//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/kprobes//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/kprobes/on//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/kunit//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/kunit/all//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/kunit/example//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/kvm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/kvm/book3s//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/kvm/book3s/64//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/kvm/book3s/hv//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/l2tp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/lcd//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/lcd/class//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/led//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/led/trigger//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/leds//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/leds/brightness//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/leds/brightness/hw//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/leds/lp55xx//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/leds/trigger//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/leds/trigger/default//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/linear//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/linear/ranges//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/linear/ranges/kunit//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/liquidio//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/list//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/list/kunit//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/load//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/load/ppc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/lock//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/lock/debugging//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/lock/down//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/lock/spin//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/lock/spin/on//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/lock/torture//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/lockd//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/lockdep//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/lockup//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/log//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/log/buf//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/log/cpu//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/log/cpu/max//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/log/cpu/max/buf//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/logitech//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/logo//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/logo/linux//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/loopback//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/lsi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/lsi/et1011c//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/lsm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/lsm/mmap//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/lsm/mmap/min//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/lwtunnel//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/lxt//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/lz4//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/lzo//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mac//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/macintosh//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/magic//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/magic/sysrq//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/magic/sysrq/default//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mantis//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/marvell//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/marvell/10g//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/max//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/max/raw//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/maxlinear//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/md//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mdio//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mdio/bcm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mdio/hisi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mdio/mscc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/media//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/media/altera//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/media/analog//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/media/analog/tv//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/media/camera//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/media/cec//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/media/common//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/media/digital//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/media/digital/tv//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/media/pci//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/media/radio//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/media/subdrv//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/media/tuner//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/media/usb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/megaraid//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mem//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mem/soft//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/memcg//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/memcpy//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/memcpy/kunit//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/memfd//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/memory//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/memstick//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/memstick/jmicron//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/memstick/realtek//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/memstick/tifm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/message//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/message/loglevel//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mfd//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mfd/sm501//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mhi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mhi/bus//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mhi/bus/pci//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/micrel//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/microchip//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/microchip/t1//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/microsemi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/minix//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/misc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/misc/rtsx//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/misdn//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mlx4//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mlx4/en//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mlx5//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mlx5/cls//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mlx5/core//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mlx5/core/en//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mlx5/en//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mlx5/sf//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mlx5/sw//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mlx5/tc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mlx5/vdpa//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mlxsw//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mlxsw/core//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mlxsw/spectrum//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mmc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mmc/block//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mmc/realtek//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mmc/ricoh//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mmc/sdhci//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mmc/tifm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mmc/via//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mmu//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mmu/gather//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mmu/gather/merge//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mmu/gather/page//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mmu/gather/rcu//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mmu/gather/rcu/table//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mmu/gather/table//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/module//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/module/force//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/module/rel//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/module/sig//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/module/srcversion//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/modules//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/modules/tree//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/modules/use//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/modules/use/elf//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mouse//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mouse/elan//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mouse/elan/i2c//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mouse/ps2//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mouse/ps2/elantech//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mouse/ps2/synaptics//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mouse/synaptics//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mpls//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mprofile//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mptcp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mptcp/kunit//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mq//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mq/iosched//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/msdos//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/msi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/msi/bitmap//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mspro//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mtd//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mtd/cfi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mtd/map//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mtd/map/bank//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mtd/map/bank/width//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mtd/of//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mtd/powernv//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mtd/ubi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mtd/ubi/beb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mtd/ubi/wl//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mutex//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mutex/spin//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/mutex/spin/on//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/n//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/national//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nd//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/need//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/need/dma//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/need/dma/map//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/need/multiple//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/need/per//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/need/per/cpu//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/need/per/cpu/embed//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/need/per/cpu/embed/first//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/need/sg//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/need/sg/dma//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/net//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/net/act//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/net/act/tunnel//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/net/cls//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/net/drop//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/net/ematch//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/net/flow//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/net/ip//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/net/ipgre//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/net/key//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/net/l3//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/net/l3/master//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/net/mpls//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/net/packet//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/net/poll//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/net/ptp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/net/rx//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/net/rx/busy//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/net/sch//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/net/sch/fq//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/net/sch/mqprio//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/net/sock//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/net/tc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/net/tc/skb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/net/team//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/net/team/mode//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/net/udp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/net/vendor//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/netconsole//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/netdev//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/netdev/addr//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/netdev/addr/list//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/netfilter//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/netfilter/family//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/netfilter/netlink//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/netfilter/netlink/glue//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/netfilter/xt//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/netfilter/xt/match//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/netfilter/xt/target//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/netlink//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/network//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/network/phy//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/netxen//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/new//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nf//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nf/conntrack//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nf/conntrack/netbios//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nf/ct//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nf/ct/netlink//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nf/ct/proto//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nf/defrag//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nf/dup//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nf/flow//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nf/flow/table//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nf/log//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nf/nat//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nf/nat/snmp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nf/reject//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nf/socket//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nf/tables//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nf/tproxy//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nfp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nfp/app//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nfp/app/abm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nfs//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nfs/acl//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nfs/use//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nfs/use/kernel//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nfs/v3//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nfs/v4//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nfs/v4/1//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nfs/v4/1/implementation//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nfs/v4/1/implementation/id//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nfs/v4/security//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nfsd//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nfsd/v2//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nfsd/v3//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nfsd/v4//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nfsd/v4/security//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nft//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nft/bridge//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nft/dup//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nft/fib//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nft/flow//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nft/fwd//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nft/reject//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nls//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nls/codepage//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nls/iso8859//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nls/koi8//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nls/mac//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nmi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/no//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/no/hz//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nodes//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nonstatic//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nop//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nouveau//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nouveau/debug//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nr//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/numa//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/numa/balancing//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/numa/balancing/default//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/numa/keep//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nvdimm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nvme//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nvme/target//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/nvme/verbose//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ocxl//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/of//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/of/early//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/of/reserved//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/oid//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/old//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/opal//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/openvswitch//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/osf//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/osnoise//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/overlay//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/packet//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/page//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/panic//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/panic/on//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/panic/on/oops//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/papr//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/parport//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/parport/not//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/partition//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/pata//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/pata/of//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/pci//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/pci/msi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/pci/msi/arch//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/pcie//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/pcieaer//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/pcieaspm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/pcspkr//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/perf//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/persistent//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/pgtable//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/phys//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/phys/addr//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/phys/addr/t//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/physical//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/pid//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/pkcs7//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/pkcs7/message//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/plugin//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/pm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/pm/generic//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/pm/generic/domains//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/pm/sleep//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/pm/sleep/smp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/pm/sleep/smp/nonzero//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/pmu//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/pnfs//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/pnfs/file//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/pnfs/flexfile//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/posix//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/posix/mqueue//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/power//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/power/reset//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/powernv//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/powernv/op//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc/64k//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc/barrier//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc/book3s//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc/copro//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc/disable//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc/dt//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc/dt/cpu//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc/emulated//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc/have//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc/have/pmu//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc/icp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc/ics//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc/indirect//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc/mem//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc/mm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc/msi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc/of//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc/of/boot//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc/p7//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc/perf//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc/radix//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc/radix/mmu//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc/rtas//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc/secure//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc/secvar//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc/smp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc/smp/muxed//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc/std//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc/subpage//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc/transactional//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc/udbg//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc/xive//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc64//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc64/boot//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc64/supports//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppc64/supports/memory//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ppp/sync//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/pps//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/pps/client//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/preempt//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/prevent//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/prevent/firmware//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/prime//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/print//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/print/quota//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/print/stack//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/printk//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/printk/safe//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/printk/safe/log//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/printk/safe/log/buf//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/probe//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/proc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/proc/page//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/proc/pid//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/proc/vmcore//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/proc/vmcore/device//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/pseries//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/psi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/psi/default//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/pstore//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/pstore/compress//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/pstore/deflate//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/pstore/deflate/compress//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ptp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ptp/1588//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/pwm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/qed//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/qfmt//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/qsemi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/quota//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/quota/netlink//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/radio//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/raid//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/raid6//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/raid6/pq//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/random//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/random/trust//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rational//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rational/kunit//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/raw//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rc/ati//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rcu//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rcu/cpu//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rcu/cpu/stall//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rcu/need//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rcu/nocb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rcu/stall//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rd//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rdma//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/realtek//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/reed//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/reed/solomon//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/regmap//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/renesas//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/resource//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/resource/kunit//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rfkill//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rfs//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rh//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rh/kabi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rh/kabi/size//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rh/kabi/size/align//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rhel//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ring//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ring/buffer//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ring/buffer/allow//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rmi4//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rmi4/2d//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rmi4/f03//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rockchip//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rpcsec//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rpcsec/gss//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rt//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rt/group//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rtas//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rtas/error//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rtc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rtc/drv//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rtc/drv/ds3232//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rtc/drv/m41t80//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rtc/hctosys//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rtc/i2c//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rtc/i2c/and//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rtc/intf//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rtc/lib//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rtc/lib/kunit//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rtc/mc146818//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/runtime//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/runtime/testing//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rwsem//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rwsem/spin//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/rwsem/spin/on//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sata//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sata/ahci//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sata/mobile//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sata/mobile/lpm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/scf//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/scf/torture//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sched//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sched/omit//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sched/omit/frame//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/scom//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/scsi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/scsi/bnx2//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/scsi/bnx2x//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/scsi/chelsio//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/scsi/cxgb4//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/scsi/dh//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/scsi/dh/hp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/scsi/fc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/scsi/ibmvfc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/scsi/ipr//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/scsi/iscsi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/scsi/mpt2sas//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/scsi/mpt2sas/max//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/scsi/mpt3sas//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/scsi/mpt3sas/max//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/scsi/proc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/scsi/qla//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/scsi/sas//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/scsi/sas/host//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/scsi/scan//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/scsi/spi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/scsi/srp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sctp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sctp/cookie//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sctp/cookie/hmac//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sctp/default//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sctp/default/cookie//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sctp/default/cookie/hmac//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sdio//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/seccomp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/section//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/section/mismatch//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/section/mismatch/warn//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/security//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/security/network//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/security/selinux//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/security/selinux/avc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/security/selinux/checkreqprot//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/security/selinux/sid2str//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/security/selinux/sid2str/cache//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/security/selinux/sidtab//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/security/selinux/sidtab/hash//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/security/writable//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/select//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/select/memory//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sensors//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sensors/lis3//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sensors/ntc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/serial//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/serial/8250//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/serial/8250/many//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/serial/8250/nr//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/serial/8250/runtime//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/serial/8250/share//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/serial/arc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/serial/arc/nr//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/serial/core//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/serial/of//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/serial/uartlite//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/serial/uartlite/nr//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/serio//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/serio/altera//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/serio/arc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sfc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sfc/mcdi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sfc/siena//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sfc/siena/mcdi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sg//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sgetmask//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sgi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sgl//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/shuffle//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/shuffle/page//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/simple//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/skb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/slab//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/slab/freelist//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/slip//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/slub//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/slub/cpu//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/slub/kunit//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sms//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sms/sdio//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sms/siano//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sms/usb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/smsc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd/ac97//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd/ac97/power//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd/ac97/power/save//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd/atiixp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd/cs46xx//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd/cs46xx/new//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd/ctl//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd/ctl/fast//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd/dynamic//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd/emu10k1//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd/es1968//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd/firewire//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd/hda//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd/hda/prealloc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd/jack//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd/jack/input//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd/maestro3//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd/max//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd/mpu401//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd/opl3//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd/opl3/lib//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd/oxygen//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd/pcm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd/proc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd/seq//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd/seq/hrtimer//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd/seq/midi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd/sequencer//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd/synth//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd/usb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd/usb/caiaq//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd/verbose//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd/via82xx//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/snd/vx//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sock//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sock/cgroup//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sock/validate//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/soft//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/softlockup//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/solaris//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/solaris/x86//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sound//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sound/oss//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sound/oss/core//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/spapr//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/spapr/tce//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sparse//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sparsemem//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sparsemem/vmemmap//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/split//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/split/ptlock//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/squashfs//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/squashfs/decomp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/squashfs/decomp/multi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/squashfs/file//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/squashfs/fragment//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/squashfs/fragment/cache//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ssb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/stack//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/stackinit//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/stackinit/kunit//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/stackprotector//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/stacktrace//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/stream//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/strict//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/strip//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/strip/asm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sun//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sunrpc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sunrpc/xprt//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/suspend//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/symbolic//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/syn//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sync//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/synclink//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sys//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sys/supports//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sysctl//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sysctl/exception//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sysctl/kunit//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sysfs//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/system//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/system/blacklist//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/system/blacklist/hash//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/system/data//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/system/extra//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/system/extra/certificate//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/system/trusted//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/sysvipc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/tablet//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/tablet/serial//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/tablet/usb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/target//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/task//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/task/delay//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/task/io//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/tasks//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/tasks/rcu//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/tasks/rude//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/tasks/trace//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/tcg//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/tcg/tis//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/tcg/tis/i2c//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/tcg/tis/st33zp24//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/tcm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/tcp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/tcp/cong//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/teranetics//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/test//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/test/list//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/textsearch//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/thermal//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/thermal/default//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/thermal/default/gov//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/thermal/default/gov/step//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/thermal/emergency//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/thermal/emergency/poweroff//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/thermal/emergency/poweroff/delay//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/thermal/gov//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/thermal/gov/fair//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/thermal/gov/step//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/thread//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/tick//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/tifm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/tigon3//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/time//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/time/kunit//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/timerlat//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/tipc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/tipc/media//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/tls//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/tmpfs//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/tmpfs/posix//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/torture//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/touchscreen//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/touchscreen/wacom//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/trace//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/trace/irqflags//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/tracer//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/tracer/max//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/tracing//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/transparent//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/transparent/hugepage//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/tree//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/trusted//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/ttpci//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/tun//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/tun/vnet//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/tun/vnet/cross//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/typec//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/typec/dp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/typec/mux//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/udf//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/uio//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/uio/pci//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/uio/pdrv//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/unix//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/unix98//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/unixware//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/uprobe//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/ali//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/announce//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/announce/new//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/arch//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/arch/has//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/autosuspend//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/default//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/ehci//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/ehci/hcd//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/ehci/hcd/ppc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/ehci/root//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/ehci/root/hub//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/ehci/tt//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/ezusb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/gspca//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/gspca/ov534//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/gspca/xirlink//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/hsic//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/hwa//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/leds//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/leds/trigger//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/net//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/net/ax88179//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/net/cdc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/net/cdc/subset//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/net/cx82310//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/net/qmi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/net/rndis//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/ohci//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/ohci/big//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/ohci/big/endian//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/ohci/hcd//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/ohci/hcd/ppc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/ohci/hcd/ppc/of//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/ohci/little//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/pulse8//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/pwc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/pwc/input//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/rainshadow//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/role//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/serial//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/serial/cypress//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/serial/digi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/serial/edgeport//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/serial/ftdi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/serial/keyspan//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/serial/kobil//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/serial/mct//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/serial/mos7715//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/serial/safe//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/serial/xsens//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/sierra//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/storage//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/storage/cypress//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/storage/ene//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/uhci//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/video//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/video/class//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/video/class/input//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/wusb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb/xhci//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/usb4//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/use//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/use/percpu//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/use/percpu/numa//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/use/percpu/numa/node//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/user//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/uts//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/uvc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/uwb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/vdpa//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/vdpa/sim//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/vfat//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/vfio//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/vfio/iommu//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/vfio/iommu/spapr//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/vfio/pci//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/vfio/spapr//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/vga//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/vga/arb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/vga/arb/max//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/vhost//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/vhost/cross//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/vhost/cross/endian//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/video//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/video/au0828//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/video/cx18//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/video/cx231xx//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/video/cx88//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/video/em28xx//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/video/fb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/video/ir//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/video/pvrusb2//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/video/saa7134//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/video/saa7146//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/video/tm6000//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/videobuf//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/videobuf/dma//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/videobuf2//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/videobuf2/dma//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/virt//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/virt/cpu//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/virt/cpu/accounting//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/virtio//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/virtio/pci//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/virtio/vsockets//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/vitesse//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/vlan//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/vlan/8021q//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/vm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/vm/event//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/vp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/vsockets//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/vt//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/vt/console//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/vt/hw//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/vt/hw/console//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/want//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/want/dev//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/watchdog//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/watchdog/handle//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/watchdog/handle/boot//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/watchdog/open//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/x509//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/x509/certificate//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/xarray//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/xdp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/xdp/sockets//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/xfrm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/xfrm/sub//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/xfs//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/xfs/posix//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/xilinx//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/xmon//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/xmon/default//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/xmon/default/ro//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/xor//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/xz//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/xz/dec//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/yenta//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/yenta/ene//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/zlib//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/zone//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/zram//usr/src/kernels/4.18.0-546.el8.ppc64le/include/config/zsmalloc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/crypto//usr/src/kernels/4.18.0-546.el8.ppc64le/include/crypto/internal//usr/src/kernels/4.18.0-546.el8.ppc64le/include/drm-backport//usr/src/kernels/4.18.0-546.el8.ppc64le/include/drm-backport/linux//usr/src/kernels/4.18.0-546.el8.ppc64le/include/drm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/drm/bridge//usr/src/kernels/4.18.0-546.el8.ppc64le/include/drm/display//usr/src/kernels/4.18.0-546.el8.ppc64le/include/drm/i2c//usr/src/kernels/4.18.0-546.el8.ppc64le/include/drm/ttm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/dt-bindings//usr/src/kernels/4.18.0-546.el8.ppc64le/include/dt-bindings/arm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/dt-bindings/bus//usr/src/kernels/4.18.0-546.el8.ppc64le/include/dt-bindings/clk//usr/src/kernels/4.18.0-546.el8.ppc64le/include/dt-bindings/clock//usr/src/kernels/4.18.0-546.el8.ppc64le/include/dt-bindings/display//usr/src/kernels/4.18.0-546.el8.ppc64le/include/dt-bindings/dma//usr/src/kernels/4.18.0-546.el8.ppc64le/include/dt-bindings/gpio//usr/src/kernels/4.18.0-546.el8.ppc64le/include/dt-bindings/i2c//usr/src/kernels/4.18.0-546.el8.ppc64le/include/dt-bindings/iio//usr/src/kernels/4.18.0-546.el8.ppc64le/include/dt-bindings/iio/adc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/dt-bindings/input//usr/src/kernels/4.18.0-546.el8.ppc64le/include/dt-bindings/interrupt-controller//usr/src/kernels/4.18.0-546.el8.ppc64le/include/dt-bindings/leds//usr/src/kernels/4.18.0-546.el8.ppc64le/include/dt-bindings/mailbox//usr/src/kernels/4.18.0-546.el8.ppc64le/include/dt-bindings/media//usr/src/kernels/4.18.0-546.el8.ppc64le/include/dt-bindings/memory//usr/src/kernels/4.18.0-546.el8.ppc64le/include/dt-bindings/mfd//usr/src/kernels/4.18.0-546.el8.ppc64le/include/dt-bindings/mips//usr/src/kernels/4.18.0-546.el8.ppc64le/include/dt-bindings/mux//usr/src/kernels/4.18.0-546.el8.ppc64le/include/dt-bindings/net//usr/src/kernels/4.18.0-546.el8.ppc64le/include/dt-bindings/phy//usr/src/kernels/4.18.0-546.el8.ppc64le/include/dt-bindings/pinctrl//usr/src/kernels/4.18.0-546.el8.ppc64le/include/dt-bindings/power//usr/src/kernels/4.18.0-546.el8.ppc64le/include/dt-bindings/pwm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/dt-bindings/regulator//usr/src/kernels/4.18.0-546.el8.ppc64le/include/dt-bindings/reset//usr/src/kernels/4.18.0-546.el8.ppc64le/include/dt-bindings/soc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/dt-bindings/sound//usr/src/kernels/4.18.0-546.el8.ppc64le/include/dt-bindings/spmi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/dt-bindings/thermal//usr/src/kernels/4.18.0-546.el8.ppc64le/include/dt-bindings/usb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/generated//usr/src/kernels/4.18.0-546.el8.ppc64le/include/generated/uapi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/generated/uapi/linux//usr/src/kernels/4.18.0-546.el8.ppc64le/include/keys//usr/src/kernels/4.18.0-546.el8.ppc64le/include/kunit//usr/src/kernels/4.18.0-546.el8.ppc64le/include/kvm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/amba//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/avf//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/bcma//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/byteorder//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/can//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/can/dev//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/can/platform//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/ceph//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/clk//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/crush//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/decompress//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/dma//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/dsa//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/extcon//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/firmware//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/firmware/cirrus//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/firmware/intel//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/firmware/meson//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/fpga//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/fsl//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/fsl/bestcomm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/gpio//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/hsi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/iio//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/iio/accel//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/iio/adc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/iio/common//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/iio/dac//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/iio/frequency//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/iio/gyro//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/iio/imu//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/iio/magnetometer//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/iio/timer//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/input//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/irqchip//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/isdn//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/lockd//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/mailbox//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/mfd//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/mfd/abx500//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/mfd/arizona//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/mfd/da9052//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/mfd/da9055//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/mfd/da9062//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/mfd/da9063//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/mfd/da9150//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/mfd/mt6323//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/mfd/mt6397//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/mfd/pcf50633//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/mfd/samsung//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/mfd/syscon//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/mfd/wm831x//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/mfd/wm8350//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/mfd/wm8994//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/mlx4//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/mlx5//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/mmc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/mtd//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/mux//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/net//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/net/intel//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/netfilter//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/netfilter/ipset//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/netfilter_arp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/netfilter_bridge//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/netfilter_ipv4//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/netfilter_ipv6//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/pcs//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/perf//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/phy//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/phy/tegra//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/pinctrl//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/platform_data//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/platform_data/media//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/platform_data/x86//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/power//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/qed//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/raid//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/regulator//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/remoteproc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/reset//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/rpmsg//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/rtc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/sched//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/soc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/soc/actions//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/soc/brcmstb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/soc/dove//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/soc/mediatek//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/soc/qcom//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/soc/renesas//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/soc/samsung//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/soc/sunxi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/soc/ti//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/soundwire//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/spi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/ssb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/sunrpc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/ulpi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/unaligned//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/usb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/uwb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/linux/wimax//usr/src/kernels/4.18.0-546.el8.ppc64le/include/math-emu//usr/src/kernels/4.18.0-546.el8.ppc64le/include/media//usr/src/kernels/4.18.0-546.el8.ppc64le/include/media/davinci//usr/src/kernels/4.18.0-546.el8.ppc64le/include/media/drv-intf//usr/src/kernels/4.18.0-546.el8.ppc64le/include/media/i2c//usr/src/kernels/4.18.0-546.el8.ppc64le/include/media/tpg//usr/src/kernels/4.18.0-546.el8.ppc64le/include/memory//usr/src/kernels/4.18.0-546.el8.ppc64le/include/misc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/net//usr/src/kernels/4.18.0-546.el8.ppc64le/include/net/9p//usr/src/kernels/4.18.0-546.el8.ppc64le/include/net/bluetooth//usr/src/kernels/4.18.0-546.el8.ppc64le/include/net/caif//usr/src/kernels/4.18.0-546.el8.ppc64le/include/net/iucv//usr/src/kernels/4.18.0-546.el8.ppc64le/include/net/mana//usr/src/kernels/4.18.0-546.el8.ppc64le/include/net/netfilter//usr/src/kernels/4.18.0-546.el8.ppc64le/include/net/netfilter/ipv4//usr/src/kernels/4.18.0-546.el8.ppc64le/include/net/netfilter/ipv6//usr/src/kernels/4.18.0-546.el8.ppc64le/include/net/netns//usr/src/kernels/4.18.0-546.el8.ppc64le/include/net/nfc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/net/phonet//usr/src/kernels/4.18.0-546.el8.ppc64le/include/net/sctp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/net/tc_act//usr/src/kernels/4.18.0-546.el8.ppc64le/include/pcmcia//usr/src/kernels/4.18.0-546.el8.ppc64le/include/ras//usr/src/kernels/4.18.0-546.el8.ppc64le/include/rdma//usr/src/kernels/4.18.0-546.el8.ppc64le/include/scsi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/scsi/fc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/soc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/soc/arc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/soc/at91//usr/src/kernels/4.18.0-546.el8.ppc64le/include/soc/bcm2835//usr/src/kernels/4.18.0-546.el8.ppc64le/include/soc/brcmstb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/soc/fsl//usr/src/kernels/4.18.0-546.el8.ppc64le/include/soc/fsl/qe//usr/src/kernels/4.18.0-546.el8.ppc64le/include/soc/imx//usr/src/kernels/4.18.0-546.el8.ppc64le/include/soc/mediatek//usr/src/kernels/4.18.0-546.el8.ppc64le/include/soc/nps//usr/src/kernels/4.18.0-546.el8.ppc64le/include/soc/qcom//usr/src/kernels/4.18.0-546.el8.ppc64le/include/soc/rockchip//usr/src/kernels/4.18.0-546.el8.ppc64le/include/soc/sa1100//usr/src/kernels/4.18.0-546.el8.ppc64le/include/soc/tegra//usr/src/kernels/4.18.0-546.el8.ppc64le/include/sound//usr/src/kernels/4.18.0-546.el8.ppc64le/include/sound/ac97//usr/src/kernels/4.18.0-546.el8.ppc64le/include/sound/sof//usr/src/kernels/4.18.0-546.el8.ppc64le/include/sound/sof/ipc4//usr/src/kernels/4.18.0-546.el8.ppc64le/include/target//usr/src/kernels/4.18.0-546.el8.ppc64le/include/target/iscsi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/trace//usr/src/kernels/4.18.0-546.el8.ppc64le/include/trace/events//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/asm-generic//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/drm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/linux//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/linux/android//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/linux/byteorder//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/linux/caif//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/linux/can//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/linux/cifs//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/linux/dvb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/linux/genwqe//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/linux/hdlc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/linux/hsi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/linux/iio//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/linux/isdn//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/linux/mmc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/linux/netfilter//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/linux/netfilter/ipset//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/linux/netfilter_arp//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/linux/netfilter_bridge//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/linux/netfilter_ipv4//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/linux/netfilter_ipv6//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/linux/nfsd//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/linux/raid//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/linux/sched//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/linux/spi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/linux/sunrpc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/linux/tc_act//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/linux/tc_ematch//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/linux/usb//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/linux/wimax//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/misc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/mtd//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/rdma//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/rdma/hfi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/scsi//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/scsi/fc//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/sound//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/sound/intel//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/sound/intel/avs//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/sound/sof//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/video//usr/src/kernels/4.18.0-546.el8.ppc64le/include/uapi/xen//usr/src/kernels/4.18.0-546.el8.ppc64le/include/vdso//usr/src/kernels/4.18.0-546.el8.ppc64le/include/video//usr/src/kernels/4.18.0-546.el8.ppc64le/include/xen//usr/src/kernels/4.18.0-546.el8.ppc64le/include/xen/arm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/xen/interface//usr/src/kernels/4.18.0-546.el8.ppc64le/include/xen/interface/hvm//usr/src/kernels/4.18.0-546.el8.ppc64le/include/xen/interface/io//usr/src/kernels/4.18.0-546.el8.ppc64le/init//usr/src/kernels/4.18.0-546.el8.ppc64le/ipc//usr/src/kernels/4.18.0-546.el8.ppc64le/kernel//usr/src/kernels/4.18.0-546.el8.ppc64le/kernel/bpf//usr/src/kernels/4.18.0-546.el8.ppc64le/kernel/bpf/preload//usr/src/kernels/4.18.0-546.el8.ppc64le/kernel/bpf/preload/iterators//usr/src/kernels/4.18.0-546.el8.ppc64le/kernel/cgroup//usr/src/kernels/4.18.0-546.el8.ppc64le/kernel/debug//usr/src/kernels/4.18.0-546.el8.ppc64le/kernel/debug/kdb//usr/src/kernels/4.18.0-546.el8.ppc64le/kernel/dma//usr/src/kernels/4.18.0-546.el8.ppc64le/kernel/events//usr/src/kernels/4.18.0-546.el8.ppc64le/kernel/gcov//usr/src/kernels/4.18.0-546.el8.ppc64le/kernel/irq//usr/src/kernels/4.18.0-546.el8.ppc64le/kernel/kcsan//usr/src/kernels/4.18.0-546.el8.ppc64le/kernel/livepatch//usr/src/kernels/4.18.0-546.el8.ppc64le/kernel/locking//usr/src/kernels/4.18.0-546.el8.ppc64le/kernel/power//usr/src/kernels/4.18.0-546.el8.ppc64le/kernel/printk//usr/src/kernels/4.18.0-546.el8.ppc64le/kernel/rcu//usr/src/kernels/4.18.0-546.el8.ppc64le/kernel/sched//usr/src/kernels/4.18.0-546.el8.ppc64le/kernel/time//usr/src/kernels/4.18.0-546.el8.ppc64le/kernel/trace//usr/src/kernels/4.18.0-546.el8.ppc64le/lib//usr/src/kernels/4.18.0-546.el8.ppc64le/lib/842//usr/src/kernels/4.18.0-546.el8.ppc64le/lib/crypto//usr/src/kernels/4.18.0-546.el8.ppc64le/lib/dim//usr/src/kernels/4.18.0-546.el8.ppc64le/lib/fonts//usr/src/kernels/4.18.0-546.el8.ppc64le/lib/kunit//usr/src/kernels/4.18.0-546.el8.ppc64le/lib/livepatch//usr/src/kernels/4.18.0-546.el8.ppc64le/lib/lz4//usr/src/kernels/4.18.0-546.el8.ppc64le/lib/lzo//usr/src/kernels/4.18.0-546.el8.ppc64le/lib/math//usr/src/kernels/4.18.0-546.el8.ppc64le/lib/mpi//usr/src/kernels/4.18.0-546.el8.ppc64le/lib/pldmfw//usr/src/kernels/4.18.0-546.el8.ppc64le/lib/raid6//usr/src/kernels/4.18.0-546.el8.ppc64le/lib/raid6/test//usr/src/kernels/4.18.0-546.el8.ppc64le/lib/reed_solomon//usr/src/kernels/4.18.0-546.el8.ppc64le/lib/vdso//usr/src/kernels/4.18.0-546.el8.ppc64le/lib/xz//usr/src/kernels/4.18.0-546.el8.ppc64le/lib/zlib_deflate//usr/src/kernels/4.18.0-546.el8.ppc64le/lib/zlib_dfltcc//usr/src/kernels/4.18.0-546.el8.ppc64le/lib/zlib_inflate//usr/src/kernels/4.18.0-546.el8.ppc64le/lib/zstd//usr/src/kernels/4.18.0-546.el8.ppc64le/mm//usr/src/kernels/4.18.0-546.el8.ppc64le/mm/damon//usr/src/kernels/4.18.0-546.el8.ppc64le/mm/kasan//usr/src/kernels/4.18.0-546.el8.ppc64le/net//usr/src/kernels/4.18.0-546.el8.ppc64le/net/6lowpan//usr/src/kernels/4.18.0-546.el8.ppc64le/net/802//usr/src/kernels/4.18.0-546.el8.ppc64le/net/8021q//usr/src/kernels/4.18.0-546.el8.ppc64le/net/9p//usr/src/kernels/4.18.0-546.el8.ppc64le/net/appletalk//usr/src/kernels/4.18.0-546.el8.ppc64le/net/atm//usr/src/kernels/4.18.0-546.el8.ppc64le/net/ax25//usr/src/kernels/4.18.0-546.el8.ppc64le/net/batman-adv//usr/src/kernels/4.18.0-546.el8.ppc64le/net/bluetooth//usr/src/kernels/4.18.0-546.el8.ppc64le/net/bluetooth/bnep//usr/src/kernels/4.18.0-546.el8.ppc64le/net/bluetooth/cmtp//usr/src/kernels/4.18.0-546.el8.ppc64le/net/bluetooth/hidp//usr/src/kernels/4.18.0-546.el8.ppc64le/net/bluetooth/rfcomm//usr/src/kernels/4.18.0-546.el8.ppc64le/net/bpf//usr/src/kernels/4.18.0-546.el8.ppc64le/net/bpfilter//usr/src/kernels/4.18.0-546.el8.ppc64le/net/bridge//usr/src/kernels/4.18.0-546.el8.ppc64le/net/bridge/netfilter//usr/src/kernels/4.18.0-546.el8.ppc64le/net/caif//usr/src/kernels/4.18.0-546.el8.ppc64le/net/can//usr/src/kernels/4.18.0-546.el8.ppc64le/net/ceph//usr/src/kernels/4.18.0-546.el8.ppc64le/net/core//usr/src/kernels/4.18.0-546.el8.ppc64le/net/dcb//usr/src/kernels/4.18.0-546.el8.ppc64le/net/dccp//usr/src/kernels/4.18.0-546.el8.ppc64le/net/dccp/ccids//usr/src/kernels/4.18.0-546.el8.ppc64le/net/decnet//usr/src/kernels/4.18.0-546.el8.ppc64le/net/decnet/netfilter//usr/src/kernels/4.18.0-546.el8.ppc64le/net/dns_resolver//usr/src/kernels/4.18.0-546.el8.ppc64le/net/dsa//usr/src/kernels/4.18.0-546.el8.ppc64le/net/ethernet//usr/src/kernels/4.18.0-546.el8.ppc64le/net/ethtool//usr/src/kernels/4.18.0-546.el8.ppc64le/net/hsr//usr/src/kernels/4.18.0-546.el8.ppc64le/net/ieee802154//usr/src/kernels/4.18.0-546.el8.ppc64le/net/ieee802154/6lowpan//usr/src/kernels/4.18.0-546.el8.ppc64le/net/ife//usr/src/kernels/4.18.0-546.el8.ppc64le/net/ipv4//usr/src/kernels/4.18.0-546.el8.ppc64le/net/ipv4/bpfilter//usr/src/kernels/4.18.0-546.el8.ppc64le/net/ipv4/netfilter//usr/src/kernels/4.18.0-546.el8.ppc64le/net/ipv6//usr/src/kernels/4.18.0-546.el8.ppc64le/net/ipv6/ila//usr/src/kernels/4.18.0-546.el8.ppc64le/net/ipv6/netfilter//usr/src/kernels/4.18.0-546.el8.ppc64le/net/iucv//usr/src/kernels/4.18.0-546.el8.ppc64le/net/kcm//usr/src/kernels/4.18.0-546.el8.ppc64le/net/key//usr/src/kernels/4.18.0-546.el8.ppc64le/net/l2tp//usr/src/kernels/4.18.0-546.el8.ppc64le/net/l3mdev//usr/src/kernels/4.18.0-546.el8.ppc64le/net/lapb//usr/src/kernels/4.18.0-546.el8.ppc64le/net/llc//usr/src/kernels/4.18.0-546.el8.ppc64le/net/mac80211//usr/src/kernels/4.18.0-546.el8.ppc64le/net/mac802154//usr/src/kernels/4.18.0-546.el8.ppc64le/net/mpls//usr/src/kernels/4.18.0-546.el8.ppc64le/net/mptcp//usr/src/kernels/4.18.0-546.el8.ppc64le/net/ncsi//usr/src/kernels/4.18.0-546.el8.ppc64le/net/netfilter//usr/src/kernels/4.18.0-546.el8.ppc64le/net/netfilter/ipset//usr/src/kernels/4.18.0-546.el8.ppc64le/net/netfilter/ipvs//usr/src/kernels/4.18.0-546.el8.ppc64le/net/netlabel//usr/src/kernels/4.18.0-546.el8.ppc64le/net/netlink//usr/src/kernels/4.18.0-546.el8.ppc64le/net/netrom//usr/src/kernels/4.18.0-546.el8.ppc64le/net/nfc//usr/src/kernels/4.18.0-546.el8.ppc64le/net/nfc/hci//usr/src/kernels/4.18.0-546.el8.ppc64le/net/nfc/nci//usr/src/kernels/4.18.0-546.el8.ppc64le/net/nsh//usr/src/kernels/4.18.0-546.el8.ppc64le/net/openvswitch//usr/src/kernels/4.18.0-546.el8.ppc64le/net/packet//usr/src/kernels/4.18.0-546.el8.ppc64le/net/phonet//usr/src/kernels/4.18.0-546.el8.ppc64le/net/psample//usr/src/kernels/4.18.0-546.el8.ppc64le/net/qrtr//usr/src/kernels/4.18.0-546.el8.ppc64le/net/rds//usr/src/kernels/4.18.0-546.el8.ppc64le/net/rfkill//usr/src/kernels/4.18.0-546.el8.ppc64le/net/rose//usr/src/kernels/4.18.0-546.el8.ppc64le/net/rxrpc//usr/src/kernels/4.18.0-546.el8.ppc64le/net/sched//usr/src/kernels/4.18.0-546.el8.ppc64le/net/sctp//usr/src/kernels/4.18.0-546.el8.ppc64le/net/smc//usr/src/kernels/4.18.0-546.el8.ppc64le/net/strparser//usr/src/kernels/4.18.0-546.el8.ppc64le/net/sunrpc//usr/src/kernels/4.18.0-546.el8.ppc64le/net/sunrpc/auth_gss//usr/src/kernels/4.18.0-546.el8.ppc64le/net/sunrpc/xprtrdma//usr/src/kernels/4.18.0-546.el8.ppc64le/net/switchdev//usr/src/kernels/4.18.0-546.el8.ppc64le/net/tipc//usr/src/kernels/4.18.0-546.el8.ppc64le/net/tls//usr/src/kernels/4.18.0-546.el8.ppc64le/net/unix//usr/src/kernels/4.18.0-546.el8.ppc64le/net/vmw_vsock//usr/src/kernels/4.18.0-546.el8.ppc64le/net/wimax//usr/src/kernels/4.18.0-546.el8.ppc64le/net/wireless//usr/src/kernels/4.18.0-546.el8.ppc64le/net/x25//usr/src/kernels/4.18.0-546.el8.ppc64le/net/xdp//usr/src/kernels/4.18.0-546.el8.ppc64le/net/xfrm//usr/src/kernels/4.18.0-546.el8.ppc64le/samples//usr/src/kernels/4.18.0-546.el8.ppc64le/samples/auxdisplay//usr/src/kernels/4.18.0-546.el8.ppc64le/samples/bpf//usr/src/kernels/4.18.0-546.el8.ppc64le/samples/configfs//usr/src/kernels/4.18.0-546.el8.ppc64le/samples/connector//usr/src/kernels/4.18.0-546.el8.ppc64le/samples/hidraw//usr/src/kernels/4.18.0-546.el8.ppc64le/samples/hw_breakpoint//usr/src/kernels/4.18.0-546.el8.ppc64le/samples/kdb//usr/src/kernels/4.18.0-546.el8.ppc64le/samples/kfifo//usr/src/kernels/4.18.0-546.el8.ppc64le/samples/kobject//usr/src/kernels/4.18.0-546.el8.ppc64le/samples/kprobes//usr/src/kernels/4.18.0-546.el8.ppc64le/samples/livepatch//usr/src/kernels/4.18.0-546.el8.ppc64le/samples/mei//usr/src/kernels/4.18.0-546.el8.ppc64le/samples/mic//usr/src/kernels/4.18.0-546.el8.ppc64le/samples/mic/mpssd//usr/src/kernels/4.18.0-546.el8.ppc64le/samples/nitro_enclaves//usr/src/kernels/4.18.0-546.el8.ppc64le/samples/qmi//usr/src/kernels/4.18.0-546.el8.ppc64le/samples/rpmsg//usr/src/kernels/4.18.0-546.el8.ppc64le/samples/seccomp//usr/src/kernels/4.18.0-546.el8.ppc64le/samples/timers//usr/src/kernels/4.18.0-546.el8.ppc64le/samples/trace_events//usr/src/kernels/4.18.0-546.el8.ppc64le/samples/trace_printk//usr/src/kernels/4.18.0-546.el8.ppc64le/samples/uhid//usr/src/kernels/4.18.0-546.el8.ppc64le/samples/v4l//usr/src/kernels/4.18.0-546.el8.ppc64le/samples/vfio-mdev//usr/src/kernels/4.18.0-546.el8.ppc64le/samples/vfs//usr/src/kernels/4.18.0-546.el8.ppc64le/samples/watchdog//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/basic//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/clang-tools//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/coccinelle//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/coccinelle/api//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/coccinelle/api/alloc//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/coccinelle/api/debugfs//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/coccinelle/free//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/coccinelle/iterators//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/coccinelle/locks//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/coccinelle/misc//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/coccinelle/null//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/coccinelle/tests//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/dtc//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/dtc/include-prefixes//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/dtc/libfdt//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/gcc-plugins//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/gdb//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/gdb/linux//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/genksyms//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/kconfig//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/kconfig/lxdialog//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/kconfig/tests//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/kconfig/tests/auto_submenu//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/kconfig/tests/choice//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/kconfig/tests/choice_value_with_m_dep//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/kconfig/tests/err_recursive_dep//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/kconfig/tests/err_recursive_inc//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/kconfig/tests/inter_choice//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/kconfig/tests/new_choice_with_dep//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/kconfig/tests/no_write_if_dep_unmet//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/kconfig/tests/preprocess//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/kconfig/tests/preprocess/builtin_func//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/kconfig/tests/preprocess/circular_expansion//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/kconfig/tests/preprocess/escape//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/kconfig/tests/preprocess/variable//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/kconfig/tests/rand_nested_choice//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/ksymoops//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/mod//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/package//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/selinux//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/selinux/genheaders//usr/src/kernels/4.18.0-546.el8.ppc64le/scripts/selinux/mdp//usr/src/kernels/4.18.0-546.el8.ppc64le/security//usr/src/kernels/4.18.0-546.el8.ppc64le/security/apparmor//usr/src/kernels/4.18.0-546.el8.ppc64le/security/bpf//usr/src/kernels/4.18.0-546.el8.ppc64le/security/integrity//usr/src/kernels/4.18.0-546.el8.ppc64le/security/integrity/evm//usr/src/kernels/4.18.0-546.el8.ppc64le/security/integrity/ima//usr/src/kernels/4.18.0-546.el8.ppc64le/security/keys//usr/src/kernels/4.18.0-546.el8.ppc64le/security/keys/encrypted-keys//usr/src/kernels/4.18.0-546.el8.ppc64le/security/keys/trusted-keys//usr/src/kernels/4.18.0-546.el8.ppc64le/security/loadpin//usr/src/kernels/4.18.0-546.el8.ppc64le/security/selinux//usr/src/kernels/4.18.0-546.el8.ppc64le/security/selinux/include//usr/src/kernels/4.18.0-546.el8.ppc64le/security/smack//usr/src/kernels/4.18.0-546.el8.ppc64le/security/tomoyo//usr/src/kernels/4.18.0-546.el8.ppc64le/security/yama//usr/src/kernels/4.18.0-546.el8.ppc64le/sound//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/ac97//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/aoa//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/aoa/codecs//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/aoa/core//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/aoa/fabrics//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/aoa/soundbus//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/aoa/soundbus/i2sbus//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/arm//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/atmel//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/core//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/core/oss//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/core/seq//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/core/seq/oss//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/drivers//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/drivers/mpu401//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/drivers/opl3//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/drivers/opl4//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/drivers/pcsp//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/drivers/vx//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/firewire//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/firewire/bebob//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/firewire/dice//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/firewire/digi00x//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/firewire/fireface//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/firewire/fireworks//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/firewire/motu//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/firewire/oxfw//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/firewire/tascam//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/hda//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/hda/ext//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/i2c//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/i2c/other//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/isa//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/isa/ad1816a//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/isa/ad1848//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/isa/cs423x//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/isa/es1688//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/isa/galaxy//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/isa/gus//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/isa/msnd//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/isa/opti9xx//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/isa/sb//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/isa/wavefront//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/isa/wss//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/mips//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/oss//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/oss/dmasound//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/parisc//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/pci//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/pci/ac97//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/pci/ali5451//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/pci/asihpi//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/pci/au88x0//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/pci/aw2//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/pci/ca0106//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/pci/cs46xx//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/pci/cs5535audio//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/pci/ctxfi//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/pci/echoaudio//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/pci/emu10k1//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/pci/hda//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/pci/ice1712//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/pci/korg1212//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/pci/lola//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/pci/lx6464es//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/pci/mixart//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/pci/nm256//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/pci/oxygen//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/pci/pcxhr//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/pci/riptide//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/pci/rme9652//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/pci/trident//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/pci/vx222//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/pci/ymfpci//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/pcmcia//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/pcmcia/pdaudiocf//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/pcmcia/vx//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/ppc//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/sh//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/adi//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/amd//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/amd/acp//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/amd/ps//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/amd/raven//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/amd/renoir//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/amd/rpl//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/amd/vangogh//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/amd/yc//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/atmel//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/au1x//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/bcm//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/cirrus//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/codecs//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/dwc//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/fsl//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/generic//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/hisilicon//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/img//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/intel//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/intel/atom//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/intel/atom/sst//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/intel/avs//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/intel/avs/boards//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/intel/boards//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/intel/catpt//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/intel/common//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/intel/keembay//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/intel/skylake//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/jz4740//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/kirkwood//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/mediatek//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/mediatek/common//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/mediatek/mt2701//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/mediatek/mt6797//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/mediatek/mt8173//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/mediatek/mt8183//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/meson//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/mxs//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/pxa//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/qcom//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/qcom/qdsp6//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/rockchip//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/samsung//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/sh//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/sh/rcar//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/sof//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/sof/amd//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/sof/imx//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/sof/intel//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/sof/mediatek//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/sof/mediatek/mt8186//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/sof/mediatek/mt8195//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/sof/xtensa//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/spear//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/sprd//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/sti//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/stm//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/sunxi//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/tegra//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/ti//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/txx9//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/uniphier//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/ux500//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/xilinx//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/soc/xtensa//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/sparc//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/spi//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/synth//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/synth/emux//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/usb//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/usb/6fire//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/usb/bcd2000//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/usb/caiaq//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/usb/hiface//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/usb/line6//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/usb/misc//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/usb/usx2y//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/virtio//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/x86//usr/src/kernels/4.18.0-546.el8.ppc64le/sound/xen//usr/src/kernels/4.18.0-546.el8.ppc64le/tools//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/accounting//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/arch//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/arch/x86//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/arch/x86/intel_sdsi//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/bpf//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/bpf/bpftool//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/bpf/bpftool/Documentation//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/bpf/resolve_btfids//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/bpf/runqslower//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/build//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/build/feature//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/build/tests//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/build/tests/ex//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/cgroup//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/firewire//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/gpio//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/hv//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/iio//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/include//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/include/tools//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/io_uring//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/kvm//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/kvm/kvm_stat//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/laptop//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/laptop/dslm//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/laptop/freefall//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/leds//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/lib//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/lib/api//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/lib/bpf//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/lib/lockdep//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/lib/perf//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/lib/perf/Documentation//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/lib/subcmd//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/lib/traceevent//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/lib/traceevent/Documentation//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/lib/traceevent/plugins//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/objtool//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/pci//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/pcmcia//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/perf//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/perf/Documentation//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/perf/arch//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/perf/arch/arm//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/perf/arch/arm64//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/perf/arch/csky//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/perf/arch/mips//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/perf/arch/powerpc//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/perf/arch/s390//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/perf/arch/sh//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/perf/arch/sparc//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/perf/arch/x86//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/perf/arch/xtensa//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/perf/scripts//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/perf/scripts/perl//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/perf/scripts/perl/Perf-Trace-Util//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/power//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/power/acpi//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/power/acpi/tools//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/power/acpi/tools/acpidbg//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/power/acpi/tools/acpidump//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/power/acpi/tools/ec//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/power/cpupower//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/power/cpupower/bench//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/power/cpupower/debug//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/power/cpupower/debug/i386//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/power/cpupower/debug/kernel//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/power/cpupower/debug/x86_64//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/power/pm-graph//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/power/x86//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/power/x86/intel-speed-select//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/power/x86/turbostat//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/power/x86/x86_energy_perf_policy//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/scripts//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/spi//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/nvdimm//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/radix-tree//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/scatterlist//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/android//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/android/ion//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/bpf//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/bpf/bpf_testmod//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/breakpoints//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/capabilities//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/cgroup//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/core//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/cpu-hotplug//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/cpufreq//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/damon//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/drivers//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/drivers/net//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/drivers/net/bonding//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/drivers/net/team//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/efivarfs//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/exec//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/filesystems//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/firmware//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/fpu//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/ftrace//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/futex//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/futex/functional//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/gpio//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/ia64//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/intel_pstate//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/ipc//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/kcmp//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/kexec//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/kmod//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/kvm//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/lib//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/livepatch//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/locking//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/media_tests//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/membarrier//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/memfd//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/memory-hotplug//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/mm//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/mount//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/mqueue//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/net//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/net/forwarding//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/net/mptcp//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/netfilter//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/nsfs//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/powerpc//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/powerpc/alignment//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/powerpc/benchmarks//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/powerpc/cache_shape//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/powerpc/copyloops//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/powerpc/dscr//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/powerpc/eeh//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/powerpc/math//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/powerpc/mce//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/powerpc/mm//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/powerpc/papr_attributes//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/powerpc/pmu//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/powerpc/pmu/ebb//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/powerpc/pmu/sampling_tests//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/powerpc/primitives//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/powerpc/ptrace//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/powerpc/signal//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/powerpc/stringloops//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/powerpc/switch_endian//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/powerpc/syscalls//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/powerpc/tm//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/powerpc/vphn//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/prctl//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/proc//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/pstore//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/ptp//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/ptrace//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/rcutorture//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/rcutorture/formal//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/rcutorture/formal/srcu-cbmc//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/rcutorture/formal/srcu-cbmc/tests//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/rcutorture/formal/srcu-cbmc/tests/store_buffering//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/rseq//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/rtc//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/seccomp//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/sgx//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/sigaltstack//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/size//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/sparc64//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/sparc64/drivers//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/splice//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/static_keys//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/sync//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/sysctl//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/tc-testing//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/tdx//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/timens//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/timers//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/tpm2//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/uevent//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/user//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/vDSO//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/watchdog//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/x86//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/selftests/zram//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/testing/vsock//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/thermal//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/thermal/tmon//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/usb//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/usb/ffs-aio-example//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/usb/ffs-aio-example/multibuff//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/usb/ffs-aio-example/multibuff/host_app//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/usb/ffs-aio-example/simple//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/usb/ffs-aio-example/simple/host_app//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/usb/usbip//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/usb/usbip/libsrc//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/usb/usbip/src//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/virtio//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/virtio/ringtest//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/virtio/vhost_test//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/virtio/virtio-trace//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/vm//usr/src/kernels/4.18.0-546.el8.ppc64le/tools/wmi//usr/src/kernels/4.18.0-546.el8.ppc64le/usr//usr/src/kernels/4.18.0-546.el8.ppc64le/virt//usr/src/kernels/4.18.0-546.el8.ppc64le/virt/kvm//usr/src/kernels/4.18.0-546.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]=8a6888c7852303e88b63d2eecf640ffbdcd5e0e4, 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]=b4bd0708dcf061ee48084dca8cb5e11643a37f0f, 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]=eea43bf3b7366a0d5b94e2c6f1398a1257715278, 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]=8cf87d39879438be30ae7a4c4c3086f95a5d51c7, 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]=73c7296e4ba442bd382883512980824b0a3f66b2, 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]=2742681eb208a304f286f7b7fba66c15edaf888d, 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]=39452295c4a05418e72ab0f2d925a1e72a9458fb, 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]=bf11814c3eeb9ccef983e46d868b111d3c2dda9d, 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]=7a22fc0075345c9269074f93e1338efe27118d22, 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]=6775a02a0c8786dfb4dc84c2fbb0449ca40275e7, 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]=93651b95937d021a16d1c7be4a8b391006321d78, 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]=2e17c7d228b7dd9091dba4fde919c67814ed67a3, 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]=69f0ed11fa15c84d60e76c7b4837348e39d57ca0, 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]=519b0b998b22fb255ea9646f273a5eed02e20b9a, 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]=e9131f934f437518f44081c8639ccd401be77f2c, 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]=442c3df92b00dffcc92ad6903ab76f3274c29cb3, 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]=de15d126126b728606666289493f2d373171bc71, 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]=b2e51123018adaffb9b35e1a07ff49debf6eafd3, strippedASCII text, with very long linesautomake makefile script, ASCII textbisonelfutils-libelf-develflexgccmakeopenssl-develutf-882cf5cd746f8dc1b4bbc781ad9dc3d72f0a2e8350733b382f76eb0f11aaf7d47? 7zXZ !%'] b2u jӫ`(y/U1R`ԯҀ7RGU<[pFھS= ޅw18rgMeV"ޘىիK0\x[R;ղ 9¦c_m:3ꋘOnG&Tӕ!A]#-788h9ÿZ 過^z<2j \y*Q%_8o/r 6'@(_ʬ"_yvrHuoU%xPoD6hƑ d4x4";\"T_ՇY&5xbDfφ3뉨f[L &] .Yf3w7*eͲ\x,\?hH6tNR8DU~_g.IPeJC'Ctd1S(GjʘʄU_9P)pOzYH&ot+3X'ڨ*pos_ӏ㌧z3r̸eb6Is Q펆/,$]ٰ2Cr  #OWN>D5Gȯs/A.7ww Ha Qhp9\?I9%F,{%2˭S\}\H{Pw[Q7QY}\&VEGRRPn%k\z{}،K҄ ˇ |")OQXv#7T .&]['8y|zM2r$_ )`/&u=1K=2e7 IJE? ߞSGmd]C}ʒ7e_n]Ltȴh I 4O (7:\/bn7;EHhcf^|&s*lk\sÏxA(J1A7 qX9/V>ldO*&.wDž, v9/O7,\F8" Ѹ!uq;)5zٿLc9 kZROpw"ʦpV+x3O}P|(?(1, d^@۔J{LyP5OYG|m$bի}}AU1ײS<$Vjg. hTs3vx3?cr hiI`צFhg.V~)g0h z|`Cqʂ; JaqhdmW:ahTx%ti!PB`-s'AmڔF2`/ ݌^3jFUղL's"K9by7r}:|>Q ,Yj<@׵-_1H d! ȅa9L`F8 jb PU@ (gN CKM]W]]6CБ7w~7U{EB] w&g|u0׭'.aTE!0lL +Y!7U>^l`=ӸmmdeSrMN:p}|e(k7alxkZfdG:+gp|c$ pwoJ*R`Aj0<>CjS%z魑I?>BM:;U[dgܴ,0<3I20T껠+MӼ ΑDWmXhM/u}\o՛r8-Iہ5TʹD$Ov${vr?/n0!ްVɸ5ߡ` |b ҅{Ђ1NۜP->uAl()# \isLʩ*\0%A)32lO+|w[š܌;3Ѵ$}a4lhwbBi˕B`o7ETxHfm!? 7VKv7%mSRA ;=Z{ HorP>Z6#0`qc;W,~g\z@3seFo#i1'zM ت ڐ9 iF (:CFw K8lJp9hDmz_LHEcjLC-:EQ~M8 0N8g}U@K$S"W!sFӄ5Su Dl\N ,/@_'0`-oe} \:lWI D+bvHmug;9q>Iidf eYՠޫ,h)osM\uԇ1n-[N6KDeIIl7 2XTtr7*YV#G``anwM\֯:3d.MڰAN.eˀH8\|YS*y[YFo!6S&}m3w{P&TUֽ|\m ߤ2a4HM!~ǞUd""#JYxL!MEd;ĩ *: .|d{2w:=B{<cFnz߳A窤Dհ`^tGx8[}KG62t7P[~7 cY-B,LԠW5 g mk5 {+&<-xߠ/ˡw1! mʘ?y=IM:[x:r:&/6l$F!֚ZQ hY/ێ(&'jHQy$~0e%n`ĉ\{zKkĬy Q)E,hLXwxEl[Zdi1%CAq:[B)C٣Du<= Ͳr -RT?Ob5/q]fL̓xHv g]p/*y"| ޡϔrh9G?=E܈Oz])TQu-dR/0ԭo0vړ6M/3Ʉpo#4|-\(ض3Y5Gp!>=ICMJ)uAcDxsS|}-m3ʀ~ʉ}DɗuuNDU,NTD'5~y> IY59ša 뫬 wѫy`VV~8!͆7mpa=}/$wĞ1Lkr趤xقD(½/ZM\g8fE/3#v UKnc"E)W?UiumGS4<& ٧y;1Eh2c]4kU:f2D2 G6`+ݷ=HzuB-Ҙ>x}4isCI"9^-b >TW1 ͲhDv6aXRD ÄzpY^6qO)ɍ7zVjoGa%&CʼnMI2邠fN7/962kZʖ" {矰AR \TTASJrGƐMZm\\L'4JP?Q8ʃPw,szZo8f-k _(|VL$O?}=SY2{`ahk[ant/ozu6%7 BY%Y4hS" Mł΍V=ti|WKDc{Tb1zIdcr7:Xx;w#a=j i@!E*G=Pϔ zӞ}W0y{uZwi, ւR , @lb{MFSh1 /&5I3;fVrgbypv=c9fpVkl6_E~b9+=P 첒1"$QrXvS) CO9aM+=@^mgRƍ&72#56e9<Cb{œC@)/j:*[`GDES8;?@R 3𺌗.RY{ޞCRu3!~u*k7޲ܡ|+𐡙} ŦPΒXہ>vñl,ax=.b~cͤ{0N@uOzY]o( -CvC>V_(lfQQ^!U)>BZ=Uz޷7yBEQ)14>דO&^} ©>ӓ :+FݺcWP#&hU,ԲD0cpR,ժb_lFNiۍt˶8 , 3:Π(y|EɱAݍẇ9=QBУ Z[諄3˯ȓƒ! ^hM+B<Nٯ}u'& P[8p\5mV""?+Օw;nIU񤕭>ru~c\R4E'Ikb\OT@?LLS;W迃,;ɉ쌮Xy,ŖOU4aZ<.Wvwu58 I=z|a=-7Tʑtx%ەɵUʵ>`e4G .D)xmBOI,BSZv0ln aT*y&hvu2d[[! QX=W5ygJ%.YpC)U TVnp 4YY٭Ysg2x*PYT_9%3q{ꐸpTvUl0]hQCA ];ňZ3 nxVJΆi<)c\Ů00U*9'_DDp^͠Dwq_J>A#OF}V o&m}l--mO KsWotvS!fw S 6.?pZ׹8Ua_&熒I'y *cB+; mfaaK*N3$3_"FImE˯6>"[1CnAu+mlbmodq 40*:Ŀo6kD|{e?G:ScG&Ipayz|JS!lz&A27C_SDH+_Ǘ4~-FٖSd\)C3u O=C-Q`f0hPP8މGl( sלĝߡ9i*`f;f"cI1/ՐG$oT:KcN疖^ֳB !GPg)#wq_Wvn1s\(fs ˂s|!ƶ٢@u]5n-ӆpöʎ//(֦RsuЀ2[d_F2€p%̺1*ڴ7O!4]׍Q< x v ['ET]Æ2p:o]#"]@Phfj'?1u Y!9\8"1Wꪜ0yHktE *;BZ|+/ędG̱$(WwT}0`0+F7L)`NS "?edg{Uvɡ`֟OTMx%嵽fCϤ?m_ixirҜ5b.)N!=Җm/Iq S0,–=='4%. |T@[>ځt1 H6 ϫH8`3h A 잍)Ҥԇ@Ӻ3eTl~q:<NVZbΗVOƟ}U&1Q7iO}DŽ Nk N/<,u{F/ـ,N} OT[$R3F3pI (e27@^3f%6F@68J Ei&*)7G][BI5B^{~ChqyFiL #(XrHs_WAAH\' ^QhoًjmXޕ3K+ pY;`u`(\XE%Ƅ o<> 52PFe<)櫻0$W&jSo,B&SG'GZ ^!=pyΥNmi59mMgɁT @W&gwv87@v مg e^c,}W3Wu'POXm}%"\ Np#lh!.W.X<B.NibƦ42Mþ# Yޤd(/Q ꩶ]!V(#w"UDufR?:*0a ƃ(11hAt\ ߕcQ.4P9NyQ3Y'us`Ze#EԡeҢuOXyhjу,a%AggؼL{^S+-YC(Rnsx ,ټR kᦥ\ޠ $?L|W9H&=$)(r03J=&t2՜~rҡXT+%:|~Tnb/+ p Єo0l>P 髠ֵ2iŴ_z"gtdFVˇ=0pΠ-Qsإ.<mHZ<CI# HSP‡5XyNf y mkoZ,nkfɚ=Jm UI#S[?a\7]GFafkxtSqeD*5T}Ԓ;O/jFU! |4m뉷r攨sO MqW[KA(ɼ7p2(6 .yET_<ձwM gBī]I=keIEi!cs;gu67cŏ%6iR5K3^}SK^ SPSa[boE7S{y aLZ4-+ lHh51A30g9x}á;h?sE[lX'<8ҲRAwm! ňەUvfYeY@hbj^ g*@I:ˆF9iC&Gs3Y}Mq~_*ִ`ܱDՄh%.$w±^ ]krЋ-4E] (B!ɛG7FoMq['o!r9 IF>̓wYA걸#\uL.`Noؾ _Ԙd%;o>+͎:l<6\ܚA<*]bQDz#p(v"a ڦYk!RQP=gS)lABh-MAF]ˡ(o979Gh8~T[^-ե Iʼn ooM6#q7ĥ"xA2MO̮+P}a Ҵ=x%Iny???~H>ۤуU0!&ǧC cyMѰmmpY+YEC Gґ{pNݕ=!CP|,FESw`N0o8@ rU V" -BiHXq Swvu*A̜xJPDizS쭞p r&j%̽FǞG)|}&kRL.&T Jzj)VЫ~T H@jJU$B3ũj@`Fylͳxc}*kXgea`f.|_ ~M[ UlN.^֍&j)/%g\ۗ]jUo hdR jj瘺ڜ_f2V-|~{0ayBuvuq"15=~3ѨU{=D(ٌC=l jy5$C-Ljo$bDZryގ@ȢB́;U˷a`!Q^C I8 u~^s^~IuR{I/ItEY w ȸjX>}_p"_SQ!-rsH` )"xEt`LsӾ-n&ezuSanMavAnWTՇ+S0Ѥx rvE3Nj(n^+ť:AW?<4.]Kl$bC(4@!?L%[2aY +Q{6>0c!:boiF5^hJ!ͳ!M5JxZʸ|GFvz$l(\XܓBR*&ԺvNu~E\Q9 6phzk 5Y7mdj[]PLGR$]Ǔk lg))i>[].;wf΅tBcQ\fH+R kNcGٻs &i]ցeyR|K$]Vw$p^4fi e_Ubt@ec3<,~'ۂ.5c?%Ҹ嶇\ S&Q= Hv G2M+Le$,d)p8 di?jGd8ʅ\璇?'iŕ5h8E1EdKL94kPUwncG$#`pdm̀ZmS^f[.ILw~/aw(o+f)?V2v@9ˊ3OX1M5L !OB;ۤ*\Go m/t8ms>jyj$eJK.#haN~]Hc٢< LisNN1W͢(AK-{PI96 o[U3g^gɞ.}ߥT[*PxzhM'iH`>9&pjAi=bڹ3dK>]LG?Rڰʒxơ_:r"Ao5b=M^5Fܒp1ɪZgC[KONiȠWDC{< QhCLQqyU ˣ#h/&K )?YhNyq%dc3eaV<-ĨX))$廘,Aʫ=W6qTI湚}GM# Z莐 ?JU-"{\-vٸ,nbukɾqt}HD bֵ;WviŌjf)edsiwlf|\Q/PF1AIHB4]g~Ȉ_\Ɨ0&f\SQy]^eew*r7Ķ2ʿC<_C?^l`;7xc[g*Kuo&O5e>r|\ޒd QOO7Q|jQaa-q f;MPCCF.EbӻS[Zh+n"aT-{%݇H^}5lM7@\#;g a04Z5 rmU_.9~֜R\^tğ<)e^DvpC$IwV|Q_U1N,/x{B:sT^ݩ蠵PƂƷ܂ GnP ZAU3%p%~I#) * F NKQ7r2%NZRej!]}w -ŚK e21=9{S".#{*tHSz٬֊zW7j @eQwXo~,'3uƃs]_D <1Oӗ'v| 3;aJ<(FAQj$^5b-mQ"HwssCW%' W$<1GGMلT#17xJĿ$c"UGp9ֲ|4IҾ9^'~bl }C}*  1]b~e!>0t4pcW{&/9  Kcq$p(N1+vl0wu1r퓧]HFv=XSA3hN⹛qCN2:{=;P^}l?ąY_Zo~Uŗ$U;1ܭqu"Ec d&x g2{.}f-;(\̽K0&:aK3K;G47q7Bc0TVf GuxA&3bu诼wDo%u5T2 \zqufC B?1Wf (?0mᣏٺ>*\1}\ejē+ⅸ u! [J8E| oRYFC5ʊ=!+fOcJzkJb0 YLc$fM'Thm,82ݤ;dymLc~B1bMwpu 5H5*qN w|]N/]ŪZٰ\bq?٣!##W7`ZW^Dje. b!Z93Jf$hjkF /a9P@2Lsnu/~{K[gd8BOjk%%g]ftwd-:Kx4P^IJOVx 339B.|I53ӆšÄ<#{ w&LUK*E(izxv;R/3 =G]VvH=""^ 6}7] G eA;q&<!}/jkTnh 䀑Jl|sI!y @/b4jj7 ?Z 9aK` #ec)(fKV#5lTfN{ |H0yoDS\toݣm{Qxv%%`hVb!Vbj~%^;܃+\PWIwze&5h>?Szz<5YEEyCӴ1L0G3)D֌cc9LmIT ߻\j.|d)!b^VzX>!9}۝"Nײ]_j%ȯD R*JϖfGP%dH0v2"Ue6^4DOu&% ў؜O(LE?nd9ng\wAゝ1l$8&,2HtN`Gc%Fןi\JA# bm7O+ |{1(1䀕GݕzMm?^(b+\vgpw<*c~xs>g6jBL"c{ ؟}CLS(U3{0$- *H̕\:0:58|%ą!|ffyV )cЯfirLuK n`N_"MLsT4}QR=>˼usPԚ&Br06+ަ y2n˂|nM*&Y7- ЂCJUƠ(yM(C,7&Hq vmAtt^l,cv':j D@B͛Gc()e^ z5xѦ;ʰ{rr%6~!նLr>oֵ,]73li=CucbħtHZ0&uO bXcƢ惍rCY f7E*^8,|#l} 贈/bv܆[^M>Lg5>}[4x5v'oa䛞+ꁲlgX{ONĚMoGI8YiGSJtt'0aTmwʛFa7Q.+rux}}B|@hȭMHM޳+tc(YcCj`%ly~thڪhs+ۄ Xs]g]̓@E6e daW(6!~pE:y2<뛸4k89/j9P@U⠡隱=e@&pjx~~~OVB,~6]_ s!ruǡ|505k nM.kY)JIa ʚDR>E4y3w- \EA`k1-wfS)eGH}P|l,,gnA9+vnuqmxU]Bf-KpGNp%|;A ω<4LJARV!16[g^W:PNQᛱv阪_0 ٌ诱0d8/Z1[)Kĥ`>vvF6*(߃(aqhr6-d#kު.xn*W%~StC3grgm+)?8G?8͟/4Hi!+a|Η *"1[(J!On0Q%^R _tDhk$y~Nz&DAetW:u6m$}vNX%_R |n=0 M".2D%}L7δ›e4C"Gs/[ڡ ?>wT 3zwo EkJ0o0;㵮Tއ$~J&)@ PH8]e%$Nlިs~%3S!$r-Ի`ܜ([(l~y\>k:Ex6fBX[uᡈZ61SB[P^ϡ”w.bD0h8d$ſ&4[4@nRtТ|eF|gGU@04Hjb0^ac7W J3"`02 ~2$s*_.,S𸣻&;ùBteC"Dhy1=:(9Q&yOg,Q^{m3Q브TWֹ{@ojLfM![+_U=z_aֆvidkЛCXGfƢ0 0|\~ w/z7e!4lD<f~6Puk1dm׀ awYê5W[qR纜4}Ӛ+%־jĦ*f3U?xL"QdûSh+,<J-/t6p;5K{ N#[-Y,BPxY&DZǶD-u A{|jHxtYG4_ym{ˋhS;q%Ǐ%r9KYy/BY[IcqLo]j9BM^|{3Ӽذ WB< c"kVZFI#:zίgWZnA盩qoղ4,yHT}?ssB zbfEak,!YCQD$#-No)&ajGCmu0ŞDC/kbP|St/ b$jfc:8ceWȷ=5g(0e0&.4;0j5W\qJc! ,$|`u ͙[oˀHLʠ>'A%B z\-mObzIJ3fo F/dڠPØY.}IgAFBȆ W5B"b^&V roTN RwyDhĨXXiCEhOm!!ի*!@Qb#hk{ZNDf ?Ga5"|41/:c-FA 76) غ4*܏y]ӿ{%<:DfKQEϪC'='sZߌp~lSAD"?][.kroհ;&UI  k3kKUxoLؐ)PD=Nb xr9Xf 4(A&=1>me'PNS nѾ5Gu~'d>dzwKa$kẄ*-J"F堬G[]# iwYA(:np'jNR0B+B۫ "6}޺=as7HwyҊ0~||G8*$oAr|"_cH4.z{$jf/.Fy6mQ"7ŬUުgt]jK}Ik##"Ͽ:xʿ au#qzfC_U'aߦ@&Kak"*W7'xJ:\7퇂*t1 N5.iErQW}~.w6`w%_E cCx7/'nRm0oȽ+ Ek ;e"EE*w׸[2E2X!8*~M +Y(  kc2K={/m&/.BwU8_l+UM'Tg>E{x=Oz![MPF׌-$rD`b8LM),5[;pU&7),o &n+vmym`%ŲJUXB36A "MxPNc+b$i*!YZ~oN+x{fAR>@s^nBc*A8Ud%E&fOH(1&FOboӖ|g0FwZ- = z˖gIo !kwV[CMa챚Xb"I3WաvE1vlRezgv`5۱ m)wg` V>|gD-\c<K ᙙLwƝ['1tu Kae\1#e[hj`}&UwՑ+l ƘfYi8d]H%X.6әeYtSiػ3\!E21f!ft==:2LN1ʡritq6aL:J}vzx/9FiNEɼ\'dk&W yC9*P|0Оx9bfգJ읗G5-M=T4^j!13?l)]s&^8@sa#~ n!9PP)=,18+T Ip:·gv#>"g %uRkO4 >6v3||x$)=VgM>{% B4;f7D~Q8A8V~AQrI, M;'W# bvTRlCT 71?QÍAꍢ$F09B՝ uxxjǹ\ɨHXt=͠}eYuI`и-f#` 9KgO)՗"]i՗790YP2c3z*7l,{j9ȌSH68#mpV˻NYS} ,RӰ|۹4πG|6mXF"8!+]g Ihk_zwEU>\&_~5n5o׈m ψ6vmz72R v3HɁu OGFe4\3q{,Ce؃ 7LL~kh\պqmHm38>*㰩ی+OYwMbY_lb6#VTrj%PY-0 "F' mlĝ6tXvں-3uud膿Ѩ.2 {H' Bc{4䢹G!D+Tӧ$Vt`l3¢BA)T#=+|X3]K nm6L>yB%@9[ʯsr~2n qsrV+`j^\4,LBXhs[jw8R|2 -9&wrˇĮhezV&}D hK9 JhAUW q}>w@R<`/BÊAa>YRd$䙇lAA R&D4Ѳ~)^aҷP34QSmjdE6Sf*U[TI.eVk+n`Kxt`Se';(4iGh@cZV,{dm$@O֓7+]ޒwabcWi[<0 :Ԯ-hjq\i k C)OBo!ʝU.qm"\IqiaL:r$"ME֙.w"\@ƈgS32iu. >Rk!5sAC|^$1 :9WJ߶aUn2VUB+QEFVX/!Ի~hGH!> q\QfQaM{="%q:cGPO8D:C$j"Smh5: H֡22XrCEwx- DО}YH0:q)߂$P8dx_ >IrY6T{]P #+1of7WT3[ZlLD &5s/p?{q<R^}%rrN[7v_+qq})MQu 5p׌qcntӕTbL:N>v,V]Kaa;QDl =56D"p{>:Փ̦t*X~ VۍX Ew}j́`W-K7`hD0>6T~qWojss?[FMjñ S҉hO~OB*撤;CA/mtbX(6 KU;RN_8 FP%6Mrґ{^s Ψ_%| @ Ni@r9CWۀQW$@nxlt}&~p? q2w_ϟeG`A+xrDbFeh; Axإ^_&4^!ѹKAuG'~c7dnP8ASW$pRbӠ-`,dY_M0Y'B{{M< !uM,7"n 1ZvADP9&>LN1h oSD9sQiJLE>Jd&yE^qr>%?&~1b42d{߻%B8NQUba'B:l _mgb !%wyh&O2Wq5~\Pip205N%*u&?sȟ%٠k׋<,@儲C$N2 'S!%([#7ߜSH"`Yuaj]Ē ыFXa9U/7Ց (u!5">~cx]; 4.{Yʁv-Eb}[EFV\ q+O|T߼`5>*gYw=Nv  #L̛֌A`_\x&9zZv5gTL"dovck 1A+ey0Hz_w^p?Yf2eԆ"GA @u.tDS =k k60,ryc֘VZs[{.(zBr-3O ?*$LUt]uIuYH<:zRX yۂ/7!I@3KjE7iS[ z+8ܾtfC8dЏ9'q06@!b+1: A#h8tٗL-  Sͻ55tsY:pQ|^D7\&`CyV gRjrZFp"q_Dt(pgnk1qbRSa4 go* agRbBz@֋?]/tVЋ$獅s1+#< /XV9ٸ8+;奷?*<U0>q"eej)7uLgi NKBZ'ǐ=Og vM(ܸpo}Π'utί q端;i Yn\\AgTsr^-F-`)EٽT38ӣhl`8*={Ӯrͨ"Y2"^墼u".MP1xHkL\XN6?xT42}ⓝ+2Ɠ#0G=0Ϳ`+Kn\ {ްmS㶀=80ϡG떎i}NҖP84鷓eYb#͆&^& |{<RKd^eo' y[p@^z66loZBUEdN@_q5f?L@"H5"@WS?2-V-uLͤ +7"+!3P>T-M8d6+ ,.SDPB t.Gi9e2̺kfe2g/PDrBzWʐ6kW*M.Ceڃ%1N&s [qH( 0'0k b+32m: 1(xXyO4dHϲ?XqF)rKT^ǍUbGn\lNv><`̛_W"+( 4Iעo c joߠӒ'.7فa9{6Ҝda>:A.š|;9)wu5óa]٦0%4땛0A6JmjQ*[NSx143n2D4 㬄zO 2G_s1(w'1(̨mA@(?dcP`p'PM&v*1qBsJ̼oc ^4[E`qyΟM^aoϿa.T5120 ~SX:qOG=yK?gf1j\^w`O {vy ,0t2|PfK6WXb;^ !-pt @\kF:3FO\@R}oo9^xa+J!=| ץ~k#VtȢ]|Ckr 8HVH9O`U`W?UPƖN;׷68̽ !O˂C|ձw.T=8r&ʨAޫ0Ĥ'c;6Ou`[2xjƯ$ NHr`^jnsk6va 1؇GװPO*?̭Et#ޢX?)RT驉=\vt4 Z+5*ed_uL\, PZc3- *mZN򬄬j!zNUX_G;4rW>zݩILRee}gD+p8*< Pis=3?z-I[5ػ'=僜 yeҨRZs :,t>lDTlm*F%AY78ķ7Iz)xY,-Q/W$rX:њ϶'m 2(oEpRy&Aȥvc-P*7jG,r-m4+ Wf |=eKD?ϧZikI0P"@3W> cfUTݣ8ӕn Dz[w/^a3QbS&Wi jb4"QT9Ltݾ^,1 ]/ ]2bg%"})RqYU;|C]Jj[3o7~0T؎ICŐ.SH0N T'gm͇RQɿ\)~S a3ihi:f3=naJ%N4L[f/r;.hz;l 0ȱe#W_%%ӧIG'MP?2hYI]mREI9~s2\M>ٵI5ҍ`@=,~5iH:QYS}2T`mȻ96k壔iQlg{ #r [gCq_I`I'i0E43 ruߵ#R| ߓFmR}?^GC5}#{6:@j< Nwҹ"4ܛ_rkyxXF.;_] Ckn5 J4=s *0.젰!ixg|>Iv+ffӳ/}5h%A8@WP,.*Uvtbx= R7EpC_ Ź&j4:<" tL ~f$P; ʿG4L-"{H ).-Ѭ S $ԝprߚ&;7$Uys]2rhkDW(SZ* j!6o떕*Q$~}n:{dÊM#;Aܮ-O?OòJ(\G&Gfțqᝏ6NU<0NRzXտPLH֐[n|P $'ZSzYwY&-wv HPTmj5]`K_aj/mؖh{H=_qV1$E%N0r}s{$_&(NP $/%ۛ8i[N>ũAЍi&`Z#%o~kW hrl y'n;k|o6q[9quU8lIHK[鬊+/!y 簨sra) @rZ*;fՋIi3ϖ0BurB9OU 3ĞZZAyQrNz i Y19UByY @nߑ_1vd^]ؗq,.*_G0q_u (W dn\i`R޾]y'2`?VnS0Y8"=Qdcg7R)yv/c{X#0`'LW2](=A*$cבrVx鞢ݔsپx:R%Vof@>g9wO[Lg=:|({$FX/[u-|9* oQ{м 1+wYh i'(}tzԅ~W_j\?:.]DNwWZwEX%(QJuhؒwh y:r$KH[Le Z]1YЀ@h`?H)=F u3;lSyڙ̤I|ㄤc<~Q^zD7/isq)fnL  !'W!=rx+X1Luw?f aQ*AiTFt:eɋ<NpD"B0\PlS P$BR;3(QV~@C2g%@ʩRx_F_d2X\y3ӸV86pYwJ<&_?ubƧILƄ'MMh_{Փщ[$߿EV5fγkuZac4,|q<:%2Eےlog5ĕu3}\c@b4ġ]yA˭ft2O FO<,fZYwh Vѽ9*)Syv}INmP[}.J- H^>rA %O jv y2z&ivm nspK͵) S@stx#iI_C^2C2q ey@vCݛ85"Z/"m9QP u{ f5fKb %0,8F`rZYR:|)IBTsQBHV509>FDTG76'F&\%ѢD5^c&0^ŦS&: .S- ܬ2uXrH}LJ=*?[#/ N>Ż?=Rs'6pHyگs fB+>Å3X mF[`EL|VѨ7*fziW&j@cZ4W X?eŪ45}ؑg0bXO[;I=kT04#+zIOTp /8čZvL5[ xwgpO 6=E L4ںg~ {TϯO;foPl_'z M$۶3 ⏁V=\k][]5-jݢ-R W?Qz1e_KojZX~ӖD2H(+d65x,^񭢯=tV!р<S5QWaٻF3kjS'vDIECBlxXe|)*<+ós9USK$ Fo Ћ"L [8{5)s 5p}tB37ca#k;-Cʪ+'>n_+)8NP$'e==#Qêa)@UK?q&b Ug~(ДۃDHAJr%P.Ri0p4qP&FeVtdsnݵffIMY5|$WE:6g:W1{h B g^"| sՁ{>y:X zgF5p9 phɸsV%E*^s_EE?daj̻R`\ي b+ǮB䇣\_?)lT kx Y*%v%:JabkzwŎJ"*H-v<ߕ?ۻKp(* 7 22sN9wS؁8R'ZQdnE /C׿- 15:!P*Ps!ƊB7@iI{ęi! 0ӸFhCN;HCSgZؿN;#oW_ K, zfBdWK\0$\qipZNJY<T}- ZD{}8(PyWϲk~ V]Hz r@#55Yܔcu_ߙ%Qb:kyMmć e"a ',5Я'|qОOIČrĝsʯ ܾ YWqKAZu/;Μ7MNk-gwOlM׹Be̞"Z%# x'~2}6y6e8ߕk6xcwjxȀFDh:EzluBjh[iT^ɸeݩdCRNJ(ӽ VBp ķV|4doo;~Zm3H v/6ejhæ\Q4hyS<|t)G B?W&f`zM|eњ+j<%vmMq`?"ro/ߊY;ܞU yk)d!k' "(B0p3}w m\}5;9=pgØ`X- ;V/5>p!l?oA` yNe5)h4¥-Fu6}k1A:N"R/b_.8Uuop7BxALA,3k$WYycF_YLY©]Pm<MlW%6 NP,vI&g) Hw˜*:Ak9Qann`!{/]Uo~O~-m F3Z_İ] dr`m |#ǃ_r~5+D"eW ڊ I:^-gGfkœ E~aT* ÷-T鿵%/h9e nevq B&W摒8@]Ih,3vmQU,@T f^@MvĦB. <5ǑٷˆA((׼,.`xܛ$ n<|Y]̾Up5SFL&~ռO,d6=8ֱHY@@-%OW>'E. :E8,n1եF e%7B.AuvT,?(pڻ4V]x('kW1Ej}oC+yz+a Zo*;"ЃY5ѼɊ~M3ַ2=}-Fy׋M 'j];$7*qiZ&R.ړ3EHm+Ykwa֌N4oYooPVRm <*$TU{v}9Og)y>plv}:vPD/א9Y̑l|2RI';{7:7/jx1kP hw 4KQ9V~aݹA7 hX؞>(E/ZW0TC:0;l"o~&hɁ鲋r*?){ c ̡Z>faآs|=n 7oЖwEVI rjgSI |Ah>@"`xV׍3X<>>@uš~F!6k5J2٤~f~K< Y ^̭^54%Lok#td؍}R,QWZ`_T#`wҤr@cOKx3Koy5C( \ON:¤ӧpMrAv)"tFcSWDA8}Jkg!HW{u%=x*ǢOպCh3Ķ{D?9츦䷄t5{-yy][n/&mHk~ w[k[邸" LO-'cb!@=P5K9<$4ݷϤaE#Z_1 *)0SPn pg#I:=H~m  $'UAhV,a1|9@Q&Rډ愅t߭?t/*m[Ap8g rG[pz. U!q#w^0?SΜ@ȁ*;#o ;6xgN[X\(+)Ȱ ֆP@jW2z>ɀBxgk|L$ycL4.Fkw0 1R 3]9&$RGOJC)hj W0.w/T >7fX-%9p~Eڀ q$1\3;_jJhxKDryɊbѱ}zɌ4/h"xF*wzwq@-x0oԈ?ӄlqQQ޼ˁe]@eP>_ 6.R߹?db]iIk86CƢpRM=TJ)v>f /D(3ŽV%l"32!">ސV;SxyAᨹXH.vA>vzN^sBIGRYL"K+rlq7̔y^Bp$\VNHU\tGlÓF~|3 㽗?hwO$λ"-ه[9ju8)njZ.6)Svqi^}l^rݢGM4hB`.  crKqp4IɫtꏾJ &P9KGLؙtSQ ad Yq.^ä蹂8Y{%ʂZiI9ze*Q@ N8~l;y<]=i@ĈA8BM>$$jqpsҔhW}>1EnWu܁~6[kւ\^hg\;/Z׏z@_!x68x҆w|>Pix:I؏7-xB(RFDXj[ 9s 1S`9+?i~PrƵ^ W eI<%U/lgΆm?oYXN\&9qS##ZvUfy6rwV)ɁvQ)VKSN,Zϡ9UgwpMk!m0!9ٿ.(y|AChBdmM=Ф<`KKI0.p h\7ILBlZ!40]P;g e8پc 5q4e^<?̻+[}~Eo+(apDc%F~#Ϗ'T:H}m1]wJqG ` /5|6 BZ ("PrI`EN8E@N8 *bzamf3C9:^}ݹ(b%k쩟x[ D?8V@™T6E2vPu^Mi˛(m5PmGWRۣ.)"xxj)$R:}\r2u{Z pHԮk9SF03F[4WN@GH?aP2'Pf"N4`"dd\: ̥ 5yyDmdmTR +G% HII=-v r7ޟɬĊeO}It0ZQt\f5 BV^ ڨR!Hr4e "DW LfF|JHN.RIж{#vYNp]Ʉ ?w{CM 9%ۘmȏάgkQ ޸M),B_[o!L"hX-I 4 kD7?(&9>V"%3\چweVyE~\ ¾"f{Ax† M3|/17mjLR@pr, VO!C>ӺNj++( D>hnWFlB'цą}Mj̖UKy\Hf׏CJ2i,j@ ZϡdG۴_ R,\@8Aّf}4nL36"w V`P0#oDmFM6t]f@"A`om./ki?tH!nsbeBĸ~1 )E<_-Y¼-!UU2~1ۥ\aS`^ Z/i].YoC kP:Yqu>yHn9.)Qx) 2*Ɖ,.ܔ oYzg/2 }<1=ԞW\к)-]:)Q5]wMZ&|h+U NO`ZBm1$Ʋ0{p?EtDB mؘ .L)9h(xWtypUcx_0DH%ǭ1~aL7VnjUdt?# +Zqv~|92ŗ{: 1W1 ƿM-ԡAQG[+欂l.T`y˃h̿3`=dc8̬  Zʀ|ཉYY=/jذ9x4I"3*<.EȨTy7XuEqI̻#Dþ'L]q" òaMM+(Zz&@zJMw{aڑ&%u=ԇBø25J 2`sZj-/̛M͑s`h7 oо)joߔЍ)Y[wd}JmJ->|8wUd\آԠIаؔ=fJnl7AVDzv;"o=n! zvugAy6(+([C9 JTpf3Y ]*@N(C'} >W"]Bn`'ï]:bb$@xRͻ "|n!A"-seZw"5w*4H0zSy 7'ZWCaP6l1?Ԟ8Ycr5e>8aޘܺeVB`IMD$^M!u}'}$$j: (i3#^#^;:&f]M;;ؚ4s3wr2HS1kv_զ0я';lwǬR5,%t%O`9p  ڛ]a\V.źKf8 H@Ŏ T„ ydd_@{`w;!)دT(xz/{bayRG<Ƃj/* ya]Z?_̫iK`9R|(ˮAN\Gpg(yPkdoa mȬ#G1\"n[gѫaXG*'EH\veˠEfib$J]q ;GaY(p+ؓ4̃ eLo^ `|ղEhfþ>bWW ̮s]7zyJ8ѳ grZj2 jKb#͗exiDp1ndKwwc+Ⲱ#"wL"}^ICxgT^Jű`rf(O+|o W&B| u UVAľӷ&Aw!hrV0eLjt'\8cUOʻGT߶V+u*zO&ÑlM2s*­L1 Ɲ}y]8QS ;cJJZݔԆ1*E2R^*zˆoK]M0LÝ\rArOvţy/]7FH[duΞG{ƀJx Q=It, X-r8e0&ΛT8e|{܎y&JFF23hDDyw|"@Ѧ ᎓T'^N$9 |kb::}`SPQQrb f4X12׭ǻ5\5EK^O۰ƈӑJ›X<.[F+Ȗ^^u(,v5v8yˁY*ٓ 8xnn_aa`l}Hss3(^ z UR'BKn~2+!L!vv'bC3UZe=8׏ ( gdP" ή1*ύ?'r>l0B'426YˋSvo.6swj(hsRth;]7c hnY.i_BO"#ج$cpj&5L~**w$IYHII֪ozK⿻vWaFGbT0zUKbP'tnvYVܭn+ tW3_It :;2_VVʦk jˇľ!s˴-gQC 5LA]酊o䫡C}%"-Vubf!HGrӃ M OH3H>Sj?5GLr[ɷ_fOf_?TU82q|0vJckkas5:̧jHs U'Ʋr H:&ٝD+Qk]FnQ[ Rad Nٜͥ+0 >9óﱺ GCT'7iZ Tyvi|Q`0`PSn2ز͐:3OHQ?U :NũccJJ$Φ@=+6uP˟C^9p-e! HZBD` Db4u7d'qNi1JRS#S<`hx|_Bwfbm i|@XƲ8NN-{!4m okxSTbʑ1Zv/4u9][r’?~haK-,{]tOTRz\ U}R6UbQc+e~l;Q\Zs:K!l&*Lkͮ>Gy@ANJОZBe[;:!'w S= PxބJ]˝"Bf."H'Uv|!0+4I;YL!pc!{&<{r gY.+\^쀮H / 6PN95&6;"H/BQo@M>Su;.YyqƗf6+<-((2DWWPܦI,ol" T\4xj@'_VHr=|evP[O|$ȌUֱwrM:vNjtJ__Y`*aa9<Yk5|=WޔDŽOtBLR6+ٵmء>M:o$m1TOtj;.pV5iTxpD_tE3[Cs~|h ɶ@8hz?LY x<:>/J׭x?db:10z ?VH Zl K!RKm$% $\"el Hyf)&%,n Ov`i 'TD~>Fs<~ryk1 3d\ \9Le+E yo'Vv|!^Y.07ԢIeycFHϟ*Py'ڸE;yS >d>^Gp,3G407 }>rIp`;b(sǚ$8ěR_D\mf.O((, dƉN dyL/_]:!8> z9SN=*;-y(pb!Ճ"<Ӈ tT%`#{~Q'<aU9SSuStuI^ʄ[=EOq]%WF\]e"e\0Z_2Lz.;I}gfiڵf&" X\\~ͱql6M1 iNKKf(17u&LʴPEEl{q_4E19`ˌ)YiX)g3JN34@' ʬP`Z?e(:{gXm 3>%k\8Џ8 Hg(H4:%հ9dPNO1QskwQtaOiw;kBMKk|Qoc6D%Z _ {qht(ݤ}BqF$,J(kPNQ@2~[0K%n6IH7Fhy; ʖNOJSY>7adl|Îưσ`"n(cqhH?&ZZ!%g?hȍ[MȲl~uՄ\f'd"unĮ(U2RQk4UTAYoŒ Rp9J % fo&$n^@YOA)Y;!a]kt IY_,}#iC1OqGӿ]="X~SgMUlLMW(گ"ZRm1ui"NBOV0[-3-L ~ǥ}ٓgl8'1q(o$UP"- f &dS.Kk* ~d.A`4iLѺ1G?YYp,0,ħo19pLx|pd@*)X:q~6=0vH[7?-Ww87>R 'pmJN|D*=T|N?_aԱssr )7wK ,+e_XfjCtRp"[6GIփl(<$I~H`oidlwJ88qFO4b3"$Fz%=]B7̎q *Uv R,jqK7Z~B9"&3ɐ_M+ONTvDy+b%1YVcOUr}9\Tؙ[U&IDՊ!g 52ͤD' Rx/[%M.,V0WwϒAhS[sN D:-*YF7rf eSTT^-XV( 'TפɂshGMx- |'>͵]j.$Bav.+1Ǹ%u9>'_8Y==W7C'UF\R9LJ]oΜxc4H\DY_hηԪD|9ۭ៦)'7rKFfA>ܹ<wgg&syB]P! pG#nކO#dK3TjWtw6ځ}b\Ǥ)Opi;u]1"ҝor}aJË@$Q[tu_4E 4}gj!z>ei-˻s?U2p;r҉ [~ XvgC"n *Ԟ+ 4f rqR dД#bISx$d}n7nM_' ȮO"h&S!|y-aZyTl3Bq B6l;EB׭h9@sw%g2h(޻0N^Y^R~*_M(.s9$Dҥm~ma헼{m#;d_Tk32PN "]~]@g#S3ho^YP:\:.?jрV?#Y揺z)LUG M抾* 5+tgcWМ;?)C oPUIv V_np([uV.!s)$_>(hȖ]^1=G)suT-.vEWUrm}ȉRh /]ef1izm!KK]ZO~'\xw#5 5b7_L^yDyρK0qpDr`IM 4+$[n2-P|%vSAKY 4I 4 |_6 + dYXl/7''~r8j~'PAF5$N #94˵-OQT-oEE wYo%vĮ#;+8p8*ү(pw?ـޙZ8م+P3Wd09A iGcgE耬%IMĮE5M0yB!2 o*C&N䴈?8Eh:1vďXlЀd"JЖg4b/&R(D#ieHEudz-!J:aߡ e6b5:R2NF+Pl>p{P|( _eED NSv\ąR &AS ^X@ۃYpY\}!N,p+C%TL&j.{[;}KjuuÚ"a^gsurgdt;F :j%0 %+ Ϭ:`qƗ^NDU>4&X_w~VZMRI+- NVԏl+DoLMj>Fx \ؘ0D Ѻ]t*W65Eˆ2^ty41ߍՄH "Kzk b3.|7Ƿps;hztK Z( |um D\ )Ib`&p!tmGC–(!Ɯ}?YQU챻kIxڵcJ${eGۿ+)!lORֳguf3cr}e%qwLs<nUd.]q6|`ll{I&06xRYN*I-tL[ԛ=V{A763"m]6D򚉨@WFЬ5H']蝚jT!Y1hzD(BJ GY|gI%{dݏNl/&BVRS\9 LTzFNQfЃS#h o ps_Pw3>C^XT9bB }hq>0O#ٛ<q m^w5bsC`Ax)~HܷP~ )[#Ls]`Lo eu ɮ^ lP1 " d#b0?[/@V{ ƖHC96&H[@D[F/WneXu}!s\u7p-Y3xPd%EL|EWGFFm g_?|u 1e1>?DR@[oDk74 &.4C6eM#.mn2;#LJ?=Ƞ˼q7:aQȻrLGĶ3:ë3X@O]]ۤm}E 4F^(GUX>AQ"3q{22ˑ-٣|N.]?K}K $"Zep{H2RD۫M*3'׵PkB]rOe%CJ% ֶ3ycErQ)3L3eeYClWFvp`4,pY ʿ5ުQnrC(ٍT i~}p'OJt8'lhiZCAŭoeDhuJ#i%[\l|w݆nF9q,꠻p{9NɾwGzǢfDMk]@>_ŝ}Xn%;N1|n̏$UJ5_UconGuJ5Ӽ(tQڍȇ,4^_۞[t k:~BavX[]9Mi^bBLlhp+`X_Z`Ts8:&hluӫ|dWsQ)ćQ 4.d) oC ;cDlE~\\E=i0`>1wu|Ho]W'v`uE:iOkmA"p%iQm(vJWe~kd}x!n'7ܽKWƌhgdsǧR>E nr_h@Ԡ]Ӫ Mw a]y, †`wp0{p-cсоTj )?bty/eZ m},G쁒{ 5)C(hyUҵLq33mUs6oTnVT59@nUbmpޛKzLpKxh_a"*15+qij:G-ΖK句crVY "@`9L#񟠧ަ>=gX; -kT5='`Y,,MjPD+7LB`11@=LɷNcL"2l,Fo o%|iFݫ6As}'Ϣ prؠ|@dB}զEVq:4&%ӓWo‘<\4~NCkx³sZJ;>_ZT< ]RwL@9k-"gi0= uXqx* 8Q-Bnl28)+`٣(+tkw²c(l**4"KMNvCQ("|쮜DImS'_,mؐ(kG]7qAmV?ӌJր+ JN;"ZΞ"f*!vvw B砷)WETZlYm|R{-ԡFq=O8^f8aJK#2S|ےpD~_ d[y *dBotuߵ72 L̰xܩ*ZJ=xf?LuS|h%Q:خbH5+GWd'ɩwF^@76fx% &ͼ/:˹wx^@_Eӧa_Y݂S-+ƛW{0݂ǶQ>(o.Hִہn?89(@!mߒVf|!8ցS>ǑQ´@ZQK!5ڒ`T a@ma]M |9r-Id` BD. u]N/؞W^sc_d5;Y1SWZ7; mAdkNyrl%Q#HT#`仚K?+T8@a]s E4{NdFnʃ@͈ڛB)ɓ$LqĨO%Ɩ,tgA<-eԷ"v'u?=N_gGLJ IwEqyX>Ü原ܿfÊ){tXd ·Øbص aWt*~c^lqʻH.# 1Cn=46+=-_sJS0/|8#'7$CȌ,-l_^4KݲU=K]s7yzKle[\aj%"lRTn[ˠ+Eܙ!i9?!ӱ^o"U;2d)5*Ù-8*K X(N)m`T rP=9ɀ;p8ód5_.}z&A(gWI;qcr+zC"cQyNKAʁ*!]ꋺMIC/W6X$$>8ӥ)F]3IRS;EֆN~\Q?:MmBn \4Gޞ0>AZt*Ȉ9f䔖l-֭4]w{©.KZ ]'}YXM"#LK ܃yqe4̺b0DPE3T/IfdMS qNCCA"Z܆:@[(*[e(osbyIw0!R61)oz{m>".i/*zUs%&0,u#*Y+[OB(&i2:KDwƵ $`GZ4-@K;N&!_0vh{pGMh_HZ-nK4́b?Z0#d'_t1{LQq7ťHOH-`fⅾ߿ H9 EJQՇBvʲF8E` =ϸ4qtDlƫX‚O6e%xKL~G|L]QOuܮ v (mhئO`@jñxEf`cvEiboe;x1w&^zm5$D`942]Hȹ&ϦB]Ox"߼߯.r0,R8ZU p5Q AӚ]^%@Y(0ه-cEv.e.j* K5kDUuKPOtKm_ix}1m&C-tAE+Y"c`u!Lcr6Qk{Av.ru )6%]6]LE>oԀ H?%[? !Oa"W ԤŞ|1|+l?  \X/HJv6wwS\T5{3=* :JO:2!{}ongq1p dZ.0si6P`Y il$.ފ T MP9/]=(u)[Rnߵ{TZ7_TLl.($matd5u;&frAS5YMB!* 3l%|59hcG݂~ݦe?3CxncϐGCtK-=fZB,_ %8|?ؼ/G8ʷMԨd~vp8Z-R_7|T']";O*L?_i(OLude&<:HMe OÔ&>ןEp ?$,ů[Kd-qy>#Ɯ5ȃN>iD@sMe^s&c0ּ+m  s6nD  C#g;V.OjTLWA @"_e 'F8l o63&``$zlBS[NlCAu")Wkyb)lfIv̤aܵ).ĂVntϘ(Gc=à߅8#*g$}WK-wn_Yzi~ےO ^8BJ=3(OL՗S႐`MO~>A/Ewx @Lq"Dd esJ7]HyRA]j~jX{3W!){<أ`ftU!`ܨv))TҊUWo5VleQFutq0ݺG; gGWgt?1~c'63I*tk3PD 2hLJݹk![n޶Q>?^jieͫOBPiF|N~.JFRwԢ 2tUQgDڒ6t@גY3-ArvRf2#񚆖`.&f{YSGdYICp*|e|5.vЧ^|[(ʳnJZoC`bb]S`2}*=!4̞tbIa\,>ԭ]H.+JƷ qXE_7PX 8"`Pڡ'f*#o kkPa̯P=0s6>LQ1ҫ͖]fߛd "i˶ *sh0VMx7=1&a1m :iU_OӼ''` Km mO%mJ' "[;h%|[/{rk<ek3[Ѳp m-D>.#a";P;#8:U3"9h%|4x7Esk0IuMs+r$A/\ GYml? $m/;> tK:+Ws sD^T":D|Tgv"so(t]p{j _( Qlߣ(Lc(Pq?z-Ly{Z<&hTYG;W$X8/nþTsoU5^4@N8J4wcky2(\b#Mu&2&#D؟V)bgCA5dťg7Ѐ·Oc]~#}«.D0xUd5'w6{Â6:^(xʯ´r&JP1i&r$ x[?KInj]Y? vC :O^Azk/(_AwuG~ t5(*Hy_ wP8 p'k b$¾+6QKnm灒.j6[te%% O:DЂ q"I嚛#̣(3 'ZM0Գ^lq-_/a[b?=49KB?b#^)qҾla3r?r `(]"l] d:Xm $eF-Xb&6`WLC*m +{j9! (qI ro\ipX)HX3-ַ̼ <U^i<'ٞ++ 1P@6 6uaϙN5at7#6Wje(;d['3^>0Opj|StTtEXK?JF iW\yV]~MK>J]v s fsk_>}E2cd]`1:RRkaI6n'ۍ[T&;v7y}2O[w F1Vz nAZsћKœA9bUsRݙCYuW֣M!)Յ<HL4͙@N Ļ5#j҉ҠEK_;eP{Z3sg>V7suˎ@XFMvw-lځܘLLHU(T] 8EXf|BĊs}LKNE*ab@.ޅ]5V4(v vSS+I_|f<܎IQk.`IvOfwfFd r4nd)9D0SmsAPF !GQW6K8*9C[()3 ߍUB jr]>oS.,7!pgDžTu?LY--dnX)CmCDr1 P CtnE޼lGud x/<4 9(1[M[9 ol֗(Ep],EkGONGMEGc|p=;]F%D|Π}zvyGRt W X2gݿ^3 %#l7,7 ީK0&+c8S?c"|r5Y. 120&Յ[(VUٹwױ07kMA"}XEMoIjl޷b!a~ǫY8z g-$vײyMx ,WZJ@P5aJִDNqXO@Vw}S$7%)EA`M]pآtdQ_=w;WqA#ΕBEBEG1 h&m\::6ߪkCǂ]j A)6l_45$OeƊW]rZih&Dl`AfIc\g@C# 2ܗ62ɣ+(:oCT!*idrn?FqJ.yƇy漧WSCB+{sI? %>\1ս{i^}9#ZֈA@z:,,-PdJk:xڏ'%g֣`t9

p[+5_ "|Q)9?|]QKw`Eh}d8Қ9QU5͇f0Љ]A볷rq\SI:\=e V=A]>ψ_s Bd@Z(︞:N~>UIHv0;w6=TSENb^N|kSQ.6H&9⦲M}F~Vߧ4Z_HP=tJ}39~bLj/$mTKHvWE ڭ-!ɐr _{oYx60,|P]sgZ'P)٬c n4/ SLb&, 6ItqTtun+P33( DzpNRRLߋZYD7Ds6D56hxNc"l__dznE7CN&F~AmȈ1 2c,kZZ>&L5=a7m Cv:`> |Tn[X*'thKkrEqRy0vg7;*C6q>ɣY,-L~4oVtܤX+Qt>uzOmnWEκ.9#h}=ڽ!+{6o}E:æeQa h%ص!U!R(\*|8g$Yx ʏB` cc$ }'Wa-*ʶ9 $DK*M3kT&ɢגOOPnfY.:TB^z~TyNա iT_a"g5"!(]ldRUȸ@N0^mb49Hd6HTÖ]/|,IHԭY0'舫Fuu,TM;dߤSDlefb}ݿurMeYه*bbGLD}71ȡQvQ= ԅ]Q7ZR94]PCa:ǃ9UCK7DP''rx9)%WDʔkƆw Y=(>16G(槜JsHk4iJ:1z=%&& NN6A*UM%;1 Eh/cu(KM x;zIJ/#%O`Q 7U'$9L GR`BI|R i4DZUdֈx o*<3؃ds6_ç6*J c^"/LQ񿗥8 R2UqM!h*$?uj3;ۓ2] ]>W_[?ĕ?6wDȭ(33-;<ǵr,4Mf3¢^#LV\3EteBvgc"q_Ͱ3%9rj8 A!)35]֞8P P-eْ0mEuB?6_@oȎ]-)jw;l vo< \ߥfYߏ@Z 2lGԋrs跴"^٩ va]Ѹl-!<  :Mr.e4׭,v5)-pS'.,#8#E&d7wˁʕm(@}X?!i9zU+A3 .;gu{kF-9֟M|gݺxĽf}amB/|pF<Mkx'^G: jj )05XHUyRBHN pztxQs#K8 Szl[3vVD踏Z5,X Sr=k 拣ɇ&D־&4p݆A, *1Ⓙw V1(tOrOw]4%mLܝAӣCeG=3Q ay6Ȥt** QG\tl1uS9T:>%bƎm95ep,E)zA &Y.7oh1(BhPZB3YMJ#>E,FQ#%]׏lp@N;8be=U$p+/}̏zmevQ^3~(NLF1.%4eoa۳~2ycױ}bVy'GuWXSNOGVѓ"^-`6S_۞UZzށ& E RpAq?pj[Y0~+2aW͛5eAH}g_dE%V!4n;_U5)zy|+_C;ڝDt׻ 6(wXagP v֦옓1yz]1伜jwѤ |] C R$ 0[daDnt1nꏔ 0mCtdbHcx*Vnau1 DyD4N=\dFv8ӹKjp3^鬇% :&ٛ릇{+(@GyzWժ!9$T,(Xl@x?WVʁ9gЧqɞM6>,}<;Djf}{  &{ŦPhuR9n(;=k %Z".@).)l/Zo2Soo]CyZSt9\g1=gN;piDw'/*^Τdee#Q)J5]5m~1!:wK_*d&GN{HX ȰĠf~TZA&ԗRWa~VqZ\Cao0H> }6V|(0x(쿯j; kC~P{f-z3Efxv֕qD ~ ) ڱ18͖Էd4fk+@.P5o -uiu#G7 Ewj4YĘ# ӳtNV_7SAB](=nI}}HuˁFo;C[ so˖;&9,mX}56jHI$LK8dL)ݘ\ ۔rxb&uO5{*%G c8.n{7\|f$- M"feE›U M yǷ1_tTGvʫ;Y| @˓N_G`e>7x{ׁ©Xu mqhyȃSmT K;*盜$WǁX8K?3=^ 8>ҫސLVM[- `B>kt N3Cvݟa"P=|碟3зSK >5G5~|X,ZQʅVR рK UׁM]ZFq< `b %@;"Ri%^Tl#IST~(â?A秇IkmtFh1B)-̑LI&OǠ6{. خ k$; Yh.xz5.cerq,#o9|K:Ez=kWKeKHEOG ͝Wz TSh\x mvlr9O=2s Q@0VFB* /fqPl?~[M|pL8TpXJF#MU_BkhX12Qn4YB6u- ~NSzx+ͺrua|xeŖ-*yV!eZ/y_ׄX,췡vJFfs]Jai& vPwV&x[8Ȋ|,;s(*g!l kAuWi&(`OpM<..t1:/dF&JIG6/{rɄk1bpoQFbz?4s69ߠ y-ZqpQ5?y8T90KEvy.m쉯-1<1GFr]1?b*ԍxɩB 4o|sw\y'Cz2s Az$ |9YM8`5Vv\Wiﻡ΍@b>ИɣVznA4dxH%| 56 )K9$ǻ P WӅ?0z'h~9m,-5(瞥ATǀbt\==l0?E>Q6ع}cvĐD)P%}ԅg٪#hv!TiㅸM%" iyUuٖ̅)w03ٸyn ${hj5|o\ )*njFa-M^܄ +x.Pr-ќ+GApY1a pBGTx<%oN[_)V便.PscQz`EنNk2y'^23􂟺Pq:@|}5@=to08O2%sw\>O %Zx"q7OCXi2$QN)AJP lUAaXݻ$g*F C}J0+Yf=Qf E:8$N i6Jd4q3)l$3.70^RVX&QgOİߔUSS/ *s{5 _g}&`E9n<, UЩbw ^,;bCQ@%1)v"ƘV+Tq:Wf Ƌ.bխBppg[2,R՝JtdmwPBW"QPCIqd#t,CE@CKI}$I@Vc{t)m~p0$Ps]Su<-PNdZ}]o=!>o.v~aOe[͟+A%ɥ/-YR L:>oc'JuVٔIyTh?3ڨP~w?*/o4[oO"8ҙ\<ïI=bij ϸp)PW| V|G}Da־B Wg˟Yz =]q$c|R؛Ӵ}L0;t@!"3 7_[r|ځ0 :U"sg8ֈl-N#X;p,ݞ'X9"~RNElzorz]G4'V*5 #q-4aBH`F߽PKY9r) \+_ vG$b>'nFHrE΁j[7OjpuzUw%eC/_nfG Jӹ_2+=} g6[hx1U.$Dco tM"ȱp~y{#ꦋgxMdȹ.9v lmv{4k`VF8 GzJDνk TXNTn@C~ۆJ1)rgB{(2IdևROx_! Z'>”1;ղ=Tv#0oid%͈(9ƅ= ֟ K˚!xYrMG1!i;ƹZ:P *v &웠vHH~p*4h{hQ:yU7:nXQ8W+Cf2@Bd0)>B]ܧxgL`b_oE,vg~4)1*K =Ĥhkۏnjq-)/6(sU_aPZ1xpX̨S﵅s(l \n8)LC'"Vh• Ě5xo*YAc؆թ CмLqn(.QgAqvN]`iXF6Z!K$qDFV9͝\:p"",8ؿoyt7j2jHP<;KB(DHѐ(Gis ,fZ?K%җv4L 矸)\&%M,LF> l<|*9|p_ffDІ{j$:'K~/|tytiyŧ45ϳ(j8,OV-Zf ?!l|}on%a>_"F]\Z%6&!Dqt;}zw-R=a$0Y НAOO[ j}poIӱ>3Z`S4&'{u^GeUWs9.|kkҮH6➊[* ?ilW'#X}iM4?00䙻B8.P63ibE%|dJ`Tkܜn04$H}Jq6=ZWr;&B]MLɅ}{x̧d"87Y/_yR[_GbY!GFi3:åTu¦.9bg ]{7\i`=-c[B5Š4TSc ~@@M"wkY<̑L>Jhۊhw&}lY!lC?lˎ5@gƔOG=UFo7;^e,,?2>V^wvc#R}FpTwĻ!2vq$l}"ɘ/-(挽 tXD+4_?]&2+˃A% cJơIR ¯jc1EsFQ'tAh A`<\՗z"R}J*탟-4sŝuz,QYߩ5XC8>Qp TJE̿o% OaDx[ pѨd*R5u_|>aBGOC(SVHG1cRW 2߶`mLVzs:b 9 ?+kɱBe/Ló>uGF%l:'kmp$}s@dKDr]%1)~A5gY@E'ZƂW"2Ik+Wʔޟ!JHjc˛mlb@_l S\pzޞrmiywdV7zGD.3RPu/1 {~&F  ?eb2@O+38NHQ^w?*I]7<憫;*[蕯?Ң4y0<=Aj/0DPM5X.C=`4{U/,v'"Sh8p!KDrqg]mPUZ]Pf2ZݸY(r4kjoj:N@ <.CW.Z%8~k鵒my `J F,bJxvHYOM&!c̤&mɚ]K-[e kqOBmq2Nc]Dơ;u=9zZ"d|OyVo!/ޚ RH0ȆnIaSfYi9R1FhT]zo.}._Y~{ΗW H؍^Yb:-A(>&} 6Qx{?5;o}{@$.м/~&/x1_s>uOYDʯc)@k4t!e>}IX soط*Rg!IfSf-+oZ3!a|v F .NO7W]W?,a<vMլq7LIaܚ Tw[f߶GS4KxDN'f\,kM%oJ(Ey$O, 2g䃔(;Q, lw V):@\ٷ~n$W[L`̕o=nRw7MJ>*g Gz֨APp2q @"iuEJx]3;w_x"zqȖWJy`3\4%(4^Є!N~8By7xU'B#.7MQhpÝC6DM ?\-9kz}cQR ~(9 }gk^W5t,-B-$%U>DVMu%X"~cJ)+܆g57$,A\r5kXI-o!4Q}0l' ~AN?)%p('6=TK~WI66<Ao*MTz"8y[1*}>2Mli/SW<3-Lii0pkY}DeY, uTI` 1T4P- ʻӟA!iկĥUN;&wARk=Q#* ƒRܜs'N`bD}Gue*;\  H"lاn!Ÿx\ǮIZ޿lvAV.,EJ T(v HPB&y.ʬ200v>稜w"nvP{܉7p OYAS8LuSJkK-׸VhӚ][i!ҦiahphQx=[`)4JWZXYm?`e.l bZGϗŴe8ITf8KQw ʙ0y9/ ׅ 85iedznj'ˢqLvGf&'Z*5%4wȉKNst%ARd2sO]̓gPBӢtN) hz<u+ɓU\ŔQ טVBV82 00`,ߢхbZS"6-7=$ζq,5f2{z>Zƈק},= #!cγOs z-"@hֵb` n6JS #\ UQGR&֪+ouPf"B OmaVM#9/fpgODMe/C?yA_mE $ĿX}P{hcߌjE l&O*dDڊIW ٧` ?ͯR~{[JD*^^`RGoGU:i^Z*ߡ @g|s%Ͳpު6oPY液"aL=%{F}X*D+y,U/j [ ۥ%csw!RGp$u:U_1'Vv~6lԉe 2ᵧ7xш>Jwj^v̩nQ[}ĬC dy уQ=:HJ#&'*VoI+0)k\>^iWqX7j%0D{feU{j"PFSW85W#eZ%?9\Oq Z Gq-!8b"_8wR@ye;Iz4/u Z'W}"I TBoSqpccalj/T8#/fbOAa*k t%D KCҮ?/'ʔ3QD|̜:et^Ѡ qw!PT 0I$jKˉYICvՊ}`K-Y TiEuKՈ: wR{}R?G 0x/z>@f+u3MMJWWVn(E~#WtnD6GF}}>Q!'Na*^ vb3f8DkN|VR>A:[),q+4aE[ڹ5JzD$TMp]r!>D8v+U?8N"gH=%q^{v5fpM|kYv|8$mΔ(xo&lZ9 20= bT}iP!gVt8抝jx0G78WB$UU-u؆܋rҚx֩o- ^"#c#|>.m^bC'RR+w'j)aU}C/U^|즂a2|Xs 1p@~z:z(kl/*9Vd}\B)}2V 2W.y|raAuz(٠a]\!y%SwhMQɵ5ICT7!kmOZJGCMYaS+Q67lXj@Ftè5ɞp Hr\<|=4Gr5о+z2'wfŞlL;~>mԻk#I3q­L BZ(߁|xf3,AL ΚemWݛQUY{-6Hj:*{zrdN+kfB2P̣E&,-1{ e4lLM_qZߞ"C4޸nZU~HFjS_br܀j@ ;شHv8xʰRWzdb!\lQ: 8vTՌ2,2׾(ܹU5Gli0 4)կ~ϣgNY}< ]G6=0Fʺr+ >Da'qQ4aG#H8=i%Kf̲G?QSz0+Qy{wdf_ґiu4@} nzzsۄ9,Tf }(3ѡp`Hih9'ω׆7͚D~V!ڷl.6.[ĠM9ܐLnQ'< i[њ y Izl"gGKn9熉8ʼn&Q_6um"q<![C-w%1qd8UTn'hB GK8ߞjI)\GbسG{m9rI/ d?Ī|M=Tz65^Q7wTgEXIC @roA x{O -<A[SuUX.Cxer{`YI: 8N QQݏ;A]y\~ nJVo3 R!!ha11K?ouʼ 5v)a_N// il0ҭwI;AFIk>Γ69惘Um/';ˑb~d[}W8\S ELX)7G'>txqIq@# PdP]I/Fm˹EH %4!}++Ŝ G:&jw77CIWDZҹ; ] w 6HU|s<+tp5&HT smnO{WKw2n*$\.YG)ϣhϋfJ}@dK`aI?~z3NnQ15g|z%;JV;l<1 fX g 8h: emأ0֫ɾi3~_KM5!_{w> ɱ|s_)?@ijS 27?"5NnFQ\\bW'WDyY_KǬKzCv$)L0m}O*^EAH͘SK7o~z5EؑF}/Gnn0xKLyU&״cBՉ9%6#w^W-Oڠ*o.X6r9 6z}ikD8K(J#44ĄZYY@#ZU+kaP*CymeRM[W.MWG3kA_@[gn#TRDBչHE%Uܕ}^n{eR?ERa>QC+V+9-i </fڑ"e~/4}D;N(gYHZ页f#9ά/L59^Zކ~z}À} H3Oш|QA{&fBW`ghXDf;fDl Іzo#8]F?! _-X~2m>)QLv94.%Ǒ\[Hc? 5}щZ% ZpL}6YwJGmϿ-P6P J)*yK@i]#e HvwLx\R2`G, 8/3(anCWN*jMB ki{ab 2;&ehsUBV wac+fNc101>Aio&iUN$MDA(~8mofo*IFt1ϭQQ+n8|~X!sX/LvTǮ[oy+}+(ISJ9;rkܲĹ}IfG"-冡rK B g U܁p5c;0(4_lc-aJA @ b巇|"ERd⌢BDUrn]^w61}̥ -iG$(YCEVG<٧ T k@M#%: 'RoE8UQ-nawE4Wq`UÝo! S+| r.lvPES1j0be0h KBCDqO@$Inl+Rϱb4JE_kCc?r?ڣy`le Mf`}xjJg@CFB Jfgs{w<6zpG,0?OXw>5y';w9oLYR\H>\Kv" + 6U;mZ-qn?ϸ&lhmw> L^A]Whv@^\d+z%P*3"YҬJ%g]ZJ|Dώ%[Td pTMeqjun{$x%{WLUC~ ~THWQ>/ IT-4xsм"kڔB )8Kݍs}40ie45:iLOGO(2樺Q\֥W&$mj~ȧrC)'Bq!fۄ"in"oy֝C\ŒJ5屳v >ZZpuPr܂wNjs!se\2M'juaEġ ׋ĭwW?!._T`Rh /'8:gj~9ޚzh!&8/&@灛ްz!1T^9jy0m\ 9N@_1x P-pu49e Ლh+2zgZNO 5||Y  2=[e"¤?F7r9I$]> o5"Nz_ֹgH/ncr~ёAu;dB|Ҋ$ݛ/VIg̷޿kwFv'ͿXA;!5`qnS^/ UӮcEwO弍߽Oh~3Dybe;]Hk=d1sgDϔR dE2܃aHV4ZiGF#j': }+x{0w41a?u:ڜ,h܁ˇy!_g%ׅ% PaGcn6 K ?)ɼb wxHW~ PE4%9qV;`7e)NۢsO B:zM- ep1; b4nڣW25V*7ע;'om$=3< yN%|wE*& _G5 7 =su P2pv0j͸<1#:TACxk T"n pp"~W;o1\r)IL=$hfPYncdX1(|q> e(w'EOd1.M_kKd>["-jvy^M:= B3,<^Vrw^vƽ̯ kr9K!JĈ/1gwᣤROWtArm2(K/=ɑ jUrt4Y%G }UmfG> ]#~gQl4U著UD*DpŦk~Btrlֹ&GY}Ó3w O2[)X*Ņפ\ mu,}! oQ$v -VXQK:`Hn"]n*-bo<~A9? P$ L@5s8CCu@Ca6g!SгH27rd*A ~=GV8%~j(8âLRy; Silѻ3./.pIW@*moCM&aɛ5'iJ|?׮Iبe#5Ud"4;UmnvA<3t<"8 )I52-Z=@~^IYI̙V=[lb.nt@|Fۖg}(aܯe5\+M'϶NO0ȃL7Ā(659XgxjN)7wd~ u#`}겏R4Ph%qg3ܺCөfI%:oNWXO+_ OlTcϦ:#T({/%|m v_P˪ [4cYxsh ט P)/7EhsvI)z=PM3N&#RL,5ud#Jr߭. [밧Bܦ Kde8ڬ29JP+`U-d&A5!Qݿfm A}{0MgfO1+~B_w7 h.1; SArtM$ ;m$XQ2o8wPgB00\2 - ihKÅQETN4`v;l]Ic+<֎T:7$Az$u`/ (BݍZy_(#L=B=S%^IsV R u2>aPEA@o 9CV"9 6+z} !NBE?rfGl$$ <@S(:Zl{&/Iqr=8у+sC0)r+26ҳd%"p@իh7ި #׶k(g8- WS-ep=WjC{QwA ձ?"<%:ڨi@͚I;/ A& !;ov K{yx'N"Y`Q(>u ] P6.R\-;Mϕ [/QǏ#!/zgH!|ّΑ4/Ƶ;fQh6j3"FapC?|bV~.o 7*8u̝P _ x {ub2&1n"c%KOͷ"r(^ 1K}?E/K~o?ODQ}>_# 4dLJ5ćxGu>:Ě>|O`. RK>auSk̨D/ 4kwRBؖ9=B&-_`CPY(z j(n5V^ߙE?ĤGE&8ں:,j%49xO5Y蹄#+ i29QLZ9~X}WрjKHJg :z|LnƀZ^Ćy!9WfҶb2jF@DZ@x+ypK8f Ʋ֌߄pt)#%p삵SULT&1s̛j= MT\X 0IM#/J F+_X.?l⒱,qO,VBQ>p$3o|&]+RtcT[!܅hnoD ';ѾvU]K<:3:KREi{X#`$v=5:B  H$pv6\Ѵ$5Zb٢!2;W%9!ףJm=(:mJBX-CP>f8ZO 6('Ir9o6z!ʛ#CKqt҇O7k  t\ YglT"06HuD⠟_(r6ﺚ-!]{\eÓ.[@{ 4őjŠMʔ.5P-=YC@ЙG ˑZuػ2&s"Ӿ5JP3i0sdN9__3<Ӯ . M؟'lmO8X4[:}T~2'/&Uyc b^V0q7oD ĭ:H*ֽ X1Lu`T6Ȥ^ޗR ,H9~"/]ěL (¾k53.#7Boч98w݀.$[~(P0k&y "!ih|<מW}1  /'{j~[^mc72(.ǣT2p[0VmdahY@ˠEz$ߧL>pp'cbe@y(s*eIcweަv̆^lofr`5I~(("/p舫YRxTMT>(D=vDYᰕv)3JjMĶ ,Sj!>5$-QDEC.+rLIrw~ʖMaaŁ%CBof˘ԕ,Vq^XiXΘ/߂?[7PX@"޲Y'V+䴗3nކ}QY[pVKk;yW[~J}Teæ)o\Cbud" =) ZVz@0YF1c]qh+i? y;]%eyq?D.7^z%d~5  `m؛ B(!11F PڏH@e 4*lm;T))E!(?ݣəzjq  .][j[4,hl&fW)Ip1ڵw_)5|M ):> "(]ny :ώ?uI<#\ }30$pGP V$8n))s/oa5 2l$!E?L?|kgydK]vu%/M5HWu%*lN-"Z(B1s9>"eT'56yVls]No96ãYRGgIWTƖv:eЯ9{qus)uNG]~t5m#f4%0RVN56J-LrZ##{0f m9ny`t?i͙$\_ Pi@)@osbTh K.v6{O^}BG`|- [)D'p+ȗ]!Sbmg-XX =9^5 c k r [p.w`u$0U,r#^T"Q5*-5U6j`GM`H:ޓM'"6{~E%c}2Y|yQ"NC n1J9.GAГiYB1 g\Rʋ(J (ΩX{Sꝉ36-(z58Y*A1L8 ]j [0s>Z#3G?0y8N!|K(2a5T!\}mE9Nd&Ր q1 Of.A#a_"WSpwZ|T-rAݢJ0Nj?N1NJ^QS&Պw F7,Vif4iwaf7Kgtֶ19?ˡ$h]mӷ[\J|;Xxb߹VC7O< ISFa" N"6TbPD32 0m[vXMP\bCQ3F‚vki2 ?gWP}<L`Ɛ1Qȓ9TF ZTP#$eS8mBcfIg^Q xIDz~I~,d%Z|A(MJ-W:2q#{MBr;Im%m|IBGm?HIB@^41V&*6VNE;焸 Rn$-L5~Da5:pGP UU]gteOd(sAv+4!X Cϯg}@g4ja $Z釐TkUg? Ѓ|\x4_A0Vo{Y'mW'O$U֕?TآAF#0VX{&UPMs Z/Ç:YcPb`'mXx"}( 6IN%V 4)y06N5;KwI-%vmJBuF, 5twʕ};PP ӃCA%Z]tGi]Y>/?myDrBΆ-/I,a )/mJvYQBbZģː$^nGpK0PI{ֶV.98ضeGu*aMz}~}um񂻃!,Ar 0cQyCeM ū61gn)،b^,_ٺ$zcyX؎c.SkxToM +)[m9G _4T *eX'͍kAar6?o;u~d$2YbBl+W\;:s.Ḭ#욦yB)6%ACuض29̖J8.墧r N,<(bB+ߵ&.jbՈJ>=Y!ӁZ 86%jK㪁0ޥ"%DqR.Y h}^5fY*.a4 vԏ\t@2i_AOv_cu||o2xnkQ![CFԫ5 J&#Vi&.e_HӇ +e?χ7D1D] Ž_n儞X!>(Ac5#Gk$ʓsR,GW8]TJ 6E gc'A;S)+}E33dp Jb[1ǨV ЛQVn( k2Nɱ k>ꞔ2"ᢵѪCÁ7cAܼ$M/}jp4k# Qv\]t+4uB!cllHڪ@+SXC/- Cffb$;g(3Is 6ّge^zӸZrAg/,Ht/"\=:1K~fiOXcَl&pf~SIF |e^YQf/NTJJ7,&y:ZPt=0#ۙ`\XڸN01P_F,M?Mu= EKFwCF2~AXgcPK@V+7)n,M<$%MפH_N7U,ϕ:*ЈWϱ剑T[Z< ˥ѓsF4IT9HI{}K2G}گt J|rY*¨ȖK'd{)1.С'(󞽣[{VnfW2R?sDix^ U@6T(OX!!'XA? hYI&ץ?,ݛDCWKN~W}[RU~U ;' ?am:,ϲBp!Tf$>#-`m(>1M<A@Ԟ&+d!)"ہs[BnvwP:\r~AG<~uJ39[t}dao'ɛ):n 8 N`9.n |n'ԦC|D&w؄xO$A1yO"* 0Z|!FDUZ}Qk?sր:Nfk( -yy?3njCn0ʮ#l$%tʔcf_t71U\bN1eVZް@"桄2XKkP`n)%Ϊ-z'K.4ˎEqѫ:X;DWʯ s3ǻ#KTܩW'ZP6 49_ +"2t6U䷳zsNaiwD3gpv $䜔-0J!c諣=s 3_XWdGIFZML)aI?hݘC^_!* :і9)ICaKdx1P,Fc|1$|RZB .mIMH)z_\4=_@ Tus@tfI$z/$"ΗJ {Q8tW2)|Gbߐ/3B-~qS 1iS&; 2\CY?6ꚇ a/C[dIXbpUJ&_7t_eF;(2_Ӄcn~yA{5DD#n8T_" FC Eg[_~m(ahvG`1Gi_9Q cL)(pM(h}y{nH*S.l46'PLB]&,1;{ɌwN0"`ɦ7owwY&һ77ٔK$-X˶]X fv˒I+'WX CՄQ8Qe3 I9N}̬([Fiߠx*:،* DX1ev,X2LS\  =Ӓ$m+j$[Pn;霩0"ohwsb(c7n 불~kP<~>vgZ'DŽƕgo!CP%5+V1Ԩh3*6 |y+dXd̀zuQ;4oc?yq{Pos*ă@dL:ҙ r9'禊q.>~l,D]aW*!EO4h.:(CL6j` Ei)XVkDecNPZM;/"8۩`Aݻۿ$pqߗaDx(qIΰ":m%!s/&Z.au<$$Uطɮl ֫z67 +x9_>2H jނx w7.B[C8\:|v A޴ʀBԊOhmyCԨ8G``k''fEG:R#[LJ'Sx-m3/`ݭ5>/#NK;wmC}l)\wORCd_X'N%2yPW$0yZjX/_BF-S4gi9 8 :cviu#+ W\rv .cz q[_!9KCoƕieUECSVk80_4 Ě2|ZKp:@\1#+VJ&\nD7+28PXԂX(Gu.?z^7/w#alO-Sx.eԤهݫ, D"7&('&/hB8 ۦzN3|0|.̆{p::a,љ%7*G]]=$!ٌph" pAci͜1)Qpmz8X vfO~#b?9 n6h?|P.EXϗe4w=Pb?n@8b]q`t*A-Lޙ*H5,!L\ҊhH+h39L|#ĎrHFhQhI^Յv2(wWwcܘb-H2;t` /ius7SLzHB30 (y!i*y9*g/L&5|G 8=tI+JO{= VjpJ#Vi k82ud'D) z}U&zoPO3ɓdgyfbU8%5:\zQធ b_1E. Kp*4ջWil09 Gt?В<:uۺ٠r膨u,W!K5lV=n ITnbRGhu $)+pay!36^sx]&OJmL<^#}%>IDThq^1L(9V "KV݀E~"~[XZۃF7K:TA0!XaMbCi)ӛMPw;|{ WlXq<~,ކC.#~ vl$e/NJ'k2㻧=VP) ԛR7 ю [X߯FXIhQZALM7:pR?7w0ZrXSK9-OyɊ׵:'|?eqB5oG z? _ZYOw=0Iem?u <ƪo17s+\|]]YY?@ޢEhq{л΋z~uD_BbuW,ӦyBUv<{m}YFn2R+Qx,y$FཱིX:vҧvjC-?|t7B^VhI5Gu ]ԕ7zԸ"I4{=˴RvU`Jb0.>閆# )1sG >{@ P1|8J=ʏagj^k=b@EWC5 Pέ ]F{JMI5=[EʫШ 9>58+9֣'H6Ń ╡%|ȌmӲBؘV8_ tH^K ޏt\Q. 3Dp9p@B;>- Nf;%N s9{ЊZ^S}߹nj:\Kg)4REp@LqkZW{>hjD!q,Txk k+qt?Zf,5čZ^`I05x9~BXc*gd L CEg{:jT[i ?sӷʛaذN!74K6Q0׈R<@ ['Laz}Uѳz#~͋L^Vf 4sNqpၟX$Q5ڈltK(={M#`GZ;UcJ௲?3rq_2\6µ1> Bf"hd9gR7\V6rQn~6rӈ G #vYvM/Fxf!C6b8D \;;[˰Fʞ8i:1p1 yE\ ؅aMp4.wB!"e|EOg66xbWx(}mZ|bCcf`(juDWW[Kb1ԫ^WثRdr١6U4)cN8>F_YFFPZW?w HuTjg\{Dkr\[JP 3/->%Gp-n}sɯ+/~. ',=Xw] 1%x6: zְ2\qF+!"`TB&eC 4c8alI=.9hDw5f3K9Ԣg'~kB>4Jw,V# ͇(=O˰qY2 F Q]ȓÔSby67pįG>_ÌB_fn%U\iw5XGPHhyd!?^FM(11 9DL( _MIQL`kS2T쾾U?PxۺFi=簙fiQXt⡈=2c0ʪzxпLWp.W 7?Qd,ӽ)MiOAMG˝/L|7|7-!dzIw5^@TsY˜G^A6:N ; SS j'J^0ɀ# QtSi]FM,+x"ћxql5j- %Vu9'JM!hf6V$jZ3=;W*|h'}u闦/:  &06^Ʃ2UB 맏aܲ DۮV&7z'v֒d4C񽤱uX!m$Zk=I̫Pn\EF\tm% oB1' KR XμZ}3kFUAaO-t)a(юz}Ӏ8[I~=0@Ŗ(L֭wZxG? ns܂}KYeI6ctKcQ.Z`H/Z8")pXmP-m.،GySWG"7XҵZ ;5W [#MLѪq|TM)c,gABk^׬ŻG^m=iDI 9ם܎7΢  pଽ(߃Yowh8A*1rRy l:pڈc+.n 6"A{4(qGEM|LuF=1!L1)ј­W /,pGL+QxG_xp4^ LE1ِ@pXRr}w6M0~m$gIs ukCh3P;H ]xç>c`a̷#94ösn:aQo!!P.ߥ#;sHإ$x6gW?k$  k0>hs*"iao9 [krcv[!ͲUI7Q'ȅ`ӢD)6ޜ+9SsJa1G ipƫU8}ċo ؠKk^}<-`gy{\{[ed7: GYw{ 'xŽ^s695`O<"24F:1%QW\]ix19XᙁP&Q>'+ guDx?y\0_ag yxG7HMW*O=f4`{XՉƘ,ߜ3puM*di_/ԲC܌ta^/y5@ϸx\)Aϒtќ.IZ,F\z4mSs|pmLu؄W3߅ TvHvK.֊*踖żmzÒ>@Uqs3jFloU9E(痣J4REnlj{f% "+%8oݧԃVkz]/.WOQʭ#3W;N|;t%x,BE=~(7U݄l MNkhR 5eB 3|v~y3.ܕ1N* o8ryt%,h6DB@;7pu #״Ra&nɷ"}ڤyYWXY6Ղ6େu¿H  ƒŀd e^FDWBeVp;ڛI鶸)kȡȈ-Oez2a\VC.z,i| -]*Qn>2V5jqR{E89n`Fvļ`k-QoJ]0h*/WdD4cܩ fDi!CM6pO U k2=D!9[=a+ZAUU<0 jx(feɌg V̄1rbĖuɎTBNeљڟ35͚/e\C@Ol_~rQaL!#w_F27,-Z~H޲`Q ܮer޹v , 2e!X"$`=&)I^mB3"11/S۞ iMMЊZ'`XH~QVv{PƄGoׂ~s{\GbU[+}%:\E|) 5"mSUy}ڮJ_qI>\C~f3`ݛMa^>(`26 PO9W>mٛjRЩ 8;'fb|پL0"C=d9/<)XfngU~AeľFM >+D*S_X|$l4组чCp_zRV<`8{HQbB:Q(TL]V:j|$v- 8+dz@ͪPB\Pm}`Q|(s֎8KK8` 9G΁uJ=@N"kEբ}Sli0L/5۔%S('fQ6\xd Q$c-V_D`|MpQbEaB֦X3Iސj)}G=E%Z$ VV-hk- 7p}{6B3 }x~kXVzc}rxkќE'#9ޅ?4#ֳDxj5jm! ]rrL4"^ V~+Os74aS4a%aw;PJ "XrtO;Xp ӥdrmQk* ;>K': ʬ%l8We*#HXQ?( 1Qf.n|[9aГ^\ԥZa5bj5_ޗ9"ƇIIȐ@A1F$HUBZ+h^q)Qy<_!:x-¨|?pnA;@UwČF>ÂZ j6ުYVg=<80uCAR4e~8(b?67Nԥ}ٴ~+$#R/+ {ؔ 6g>M#E(Qi&y=ǀmBp{ӧ#s4o'LֿVJ#d%3UN*Yt Hvkڒf|d7Qr\o͉I}aGj 3G>Y/>᫾ %c=U,lOBƼlAĭ4Άۘ%=EՙǗ\+"VxJ}R\oPk  UY!I@[AmHbL9v{pQ_~0{,z$IKU*0M⥍Xc'Sr*@ݗUOZ_7Sw}KOjYkZ'-18yaz<a_*ͣDfa)+0'qVab6bЪXD!F'uNyA@%[Ejpe K,M&\@ M ֦H>"\T8cFwi| ,o72*`?+lQ-Rm4O9 ʬzSdnI`&ږV:25"b8d]{ci8)ֶ{4(S{i܇N!_W2B)u٠^΢5Llܙ0Rԩ壟~K,{w+8=!ct*0ldjC0&%g[M vx#kFn&l6]BJ|z p*pл 򕸄:lEiWY6F$hθ$}ZFOGtp.5zX-'&omhZGw_BrEa'nd?!1N[t32-;O 5q@YCL<׊u6sM=pL={C##B3[.4*c[_T{ěR&\ս9 jjˎ*tF30=~w?C$R)3Brqnb:^ɰ%9^aOT_~'YD䱸 уJ}ի[d BHֳQ.- a7wPB?4l0D1>6b`]28ckT^ }:  e5ޫVp6uJ[⾂ְ{x[[@I=N?b$%X%qȜsXL2I˳6Q${%qd]?i_#`SE%]]PЂq!3.;̂⩀ `Gl@ՅPW-μcޞY;?HL>`4u[;[[lsON]{܎a~G@^L~kim^ɮ ى{ɲ=J &(p),ZCׁ:i){s)y㏾9CI%E-h0iS_TW!Wʆ =kuH+du>z Ӌ{?'3{J= B:>xWGڧ+)P3&o FSw4>xNV_ 伆/o.=ֆ8 .'28J> 9A.B]i r<*$K ~˗!c z/ hi&6SR<\hʿtdy í( . HPHG#fKcu1COA:(B [45 wЉp肎.+Tߝ:.*Hj3!7PwW8g~C^8TuQ.w| (oU: 3Bޡ_Jpl5d+`'ﳳ qiЍp u}a)CbX`5YIw5[^ )CsL 4Nҟkר91Ht7vPsQ&Y}w[Qv -}s AeŎnS&;kqHThd7uO`qE |~k֑C+[nMs8-wX~. wEѠLohI&n+LVOx'r73pQtid_ܡA~hD0?/:P 2\Yb!L.n"b1gzъ IQ&!Su w]/'Œc.5 ^Yh+#޺א^KziƝRғzp[YF^ǭR\Rz=l1?8BwTv-YD:^g&fDbdE[?.ǔXyO)A1g5"Իt%A8;|UC쭝4Pl$>kk}F|Nɸ' D@ƪ+Df|z /~9HJO[ž SN]]tCknPKV֨l'6/؆&eFNɯuoZxAv6* ŴH)5[uyC>E 9 nWSLCӧc0;Q@.OH(( uVwnp #'':xX]C9c)8!d I?7 5m[OQ>Z W=B-,[Kj*ϡJӒrR=s2r' <P.,)@%M; UUEl!; ZD-bM-,3dWqh2 AI@B/JN* Mή%C剫z@!ݏA?-NF݁`yXܨ`|l 4Ir" 9:ORC\ E7 W 5k}ۆ#oBHokmG>E[K' /kS[oǼZuvw+=Fz8][ަ/}zxGS(=tK#.)0"s.d:=Twӆeu,=fI,/4Z{OLzp/~iߖG;g4i|[[?L݇=tO?D7#qw"BW׻dkr'B\DrtmTt/wCN~J$@ =?ЗD( @2h"T+fYq\%O:yxzͅ?q+S{䭞CeDU%Hn%ƮcVG$~ʼUz:%ˑ׸4 VJrS V;QŒl)+#4P;G=h߀& ;oӈo}3#L'-aUe-ǒ P('FO)@+%πa| F3#I<8Zn)|s䳽SzX -Kkٰ7nK! #?'K\aCg_%ެ\c` +͞C qIV-I9ΙOtX61D 2u , O*]:PQYԗ~IK*'t.^Q Yo}옣$ "lB{ [P1x=2"Un?Zi b,Rc|D7-Ρ3M)ZODK}a !VbHMH8'W.!X @7+]#.w X{>+MG%'ע3G,ՑrH//u7g+%B&Yv9oQ ~*WD bbLqT`t@SͿf?O1xзxt9`1/Gw!џTYs K#kr\>7L˜:t ED#E*(cVlF+V-1B޺K<~Q[q Ԅd*yK7t`7Ix$qV ҉"=^@b@Ewş&JF-ղN9!>0ջ*{"yP]rxvaIȦ9S~m-B`@MUf=E>&Tq z} zgd|/_N,x]ɕ8ȧsp\ZhoK6<"˧~+ߍ;klJ[TMϛr34qf?rWQbOpΆ]o\;G굇x*٧/E$r`#{̑0 0_i+zڪf?&flK%kqNib2_(*N/"W^@_][Bᾋqj)@@BcQK,fq[ R`Qkop𷉝l0$̂d]z5q@T<*t<8Ɗ4a%nF)~<5f=U:$?0 n/hCJ7ŭĸ06PmdYM7"ނjolYٟYˇeg c?J:fNIܺ`]TՀ*x%5.K{`wB;[L +?:դAMΪe!ֆCxq 4jyy1 iAd[Wí" Eai%F)]@>ׄb}JfD 3udkFAԁ []v)u'Ď$FϦo,Qyhyyu1WhYS R͜d߭qz=gi.˝|k~Veb3, sǽf[Ӳ}G!T#~Rz7nI,/x=:$SN|/c;\*LetkY7=2(%#4K}ńO=/ϙӔD.~"'d*mjaZgNeϫ͌bD-Z"v7n@faXŇgZ#~뭷[.:H<@m$1{Fm %~@{YwRJMGϻ H^rZwyL71 Cbݕ pCybf6q[O7kE,}< YcC[уg.9[qY|1*H6vj#Rщ^( x} ,db2<A4HQiyHE4~mX/OR\*r VC3^x[b /\^221nN Sl&ۭbrQT|yI=˪mlkYCq- Ϸ7z<.wwsW5y}I{e_vSnY&K^2{V4h:aHREjCxqFjp K?tW0YPFJlwlkg@hKRJjw,;+,U yLkFϐ UzqUVvvf#OZ?fE5tLQӘqvt61| :يi?D+:`plv!4i<sĈ]XFI=Xq*(۔ JB"53j 7'-MŢ>u?`#$ I]vخFl*m7ˁzɀ,G$3-ɤ䤈rT8! "X>Ѯf<bq=={4氽dzlb* 9{ҕ1 rH82[ qfv>V9ɟBIQx/o6K޶A*j˗#r+VpUTbz VjLdO \Tye1::Ώ彏 pL`_nTË=6S+5Lc'1*5pBЅdJTQV3ҌT:9h|)4- 86hm%*!K.9g_ۘy}s0@HM"T#&goP{6-z鑁@_q\~x/)H^#^eXoXHs&\rݍA53$0Tfa=ȡO<et$5Qwveo%izZsTK,wp!CIdY҉(^C+1Dk#{>cDXfя. %&q)Kchb'UE]m; Xg~br.:}JY(Mqr`6Cc5JسvL}!7bJz72T=)ZVBR:v > ƷbXF66w՛.$ctL#4l!z/_M_ :|ԩ NH<inј&eҝt\+.I?aUy`;$96kJk3KA揖 Ʋ6PNIܦ1H9ytt ,y MA7/}Jv/Z9]Xع>R!8s>̵3EC|efk,hHǦ#K,`cTC>0^hvwy;Oo貄mXs\Ϻ%y5@m+1זqw|:G!m>U9Cƙr7xaSt.f ) _>ڨ /U3W~أ،8u>I[6CG| @6/[EgdQ|\U9[t:WR|O(`۱WR7 r+sMtU>2<`IJ1 eiU :s( Sh.-Q|ݬ$kCJMÆĀn&Ͳƾ2:"w.D îF/I< waOvAn&AH+[y@ Fv -3 TX'$QqNnßMȎ]Ս#R%OhwQWL+F$j aZ ~wg& ٛԐp}7+j==tmrKיҴGO-lN WN=~^Mޓe9瑆M7#\\5bEE6M{Ab-WAK̽f`(2oNI55gFe˰)Cvc ؁~bocPҖ!Yd{sE  >s1rU?G2N~?cNW>~Xdȸv>v+'~ƞsݔ_+= {= @c<(@.M*5̬Qy8#Yocekc裐νdYgwLL4f~YX$WRyˏ>3R J=i|Xm{ΜU{q>J'F' XSoOBS0K+/@tM8Z)+Fi= hNl[Q˚ct^t'glecK17NP־p6ۊ$ʧmQ:]-bRf?jhRfAeF:+Kk\¬״,T liCpHBoIFɏxГ::Bд|XB!w䫸zD*^G" xt%iVґ,A:? ne\^谬kr->j~_ %Y6O? en{Ty.mTOWS2dKCtx8;'1ZV?P9WZNo#g{(4D El؎`e٘UUkOܫ9meao r}٨nu X?c 4ZLw"4v ϾrڦI%S7w_?meftq:jTi7.dϦ'U_t [i~z&$?$HʜߺeG`gS{68gzI[Meq팟,o KM"1^AWlo؂Xk#Q,fH;{rwl]PC;{a?pLȏIT!4_͏cFCqZ.vfެjZb˂R|H hB4CȠJĝɻXLZe廚*|. #LhA1t[lN>r{r:7wƜF%A1\>(%yi!@!O& l}[^W,g7SO2`]V5WT>۶B#D.y:H i &.em4 yzg#k[ħ%N;,ޠnb\z$O݇=*~j, ,U>3F)Ueˁy@΋4f 5Q| ss܂hηj|f.%y?%zhGFԗ4հJ1ؿ?DLpD 3G/o.iZQb7ϴƯBT.=6:7jP&~^H"7_~Rȉ͙U0;7e;!O" ?U j΀q n5!jk8QI8v Hkиr ,G٦p0!6ҚFFe90h<$q?n֬C'+,4hoMƓfB[ʘ¤$͕r>LB;(A`*䷢>CJ{\ QV-iR.n귇p^9SKerOσ'")ܨ"zc- z@d%~DŽNj9QQG'A](vPQ1ygyo 6tɭa$6jKu *o;AZ d: /o#l7w 0y*mȱo.-i'볱n^ &Mp~>%v/(ix tՓ,},(f=OU&+dU?042n]L~:c!"9IoWזiٷV.hHkBLJwd7r;H- WSUxP%0|- fyk4,\>l[M9gm_$]˝bg8 _"#qfo?9ύPGduaU2#LFȯ38=nqD׷W<^R11X3HSR}7p\b )IM-2tgʀ+lO>ysK66{򀩮"J'{1T\f\] %l]}{'yg KaI {0ҳ4mFch6,:d1Pq,sss0HYp|^SwYɉgnz&TJ&CZ{R]J#|Gk6S\?[RR$QС6i~,ZqS/?n# v Tŭ'Xw®`Ly+l#UH]Qy4:ºMp|X'Nw;L|>|e m T${X`&BT*C6>mT@w AbHDs\ቃ˻'QatpBmL"a Ry/U SE)b9_"o$6_YW֙JV<&FO[݋%h( =ٲu*j| .jjFoAuF6L񾹱 ra3R #j ٠];6Ph~0Ka1+݂Dee8 ;D́Ql#Rq\\M`ļ@_vߌ-\;Uuٺ`^IwI}ˇ4Z8X_E9{Vwp7_^܌D; Ÿ4ycԄc~D&T v}o"{w!Pbʣ<є8zÅ|]6:&mqڐ]BEc=U$}r:i2l@&Qjs#t[TLh:ڭ'Obu  ٍs]|VWWvU_ٞ )}5gx%ANttA@T1 a59~䂴'kU}f lZZ|\%N.fBH\\ 3~%V,CxEK= ̱8ƅrDti*o.U+msyϿK+X)9 %xƏ=opF @aL2i- Dd5cBB*PJIlFcb@Yaߩ0 uDO\%xpUz1 c}X# }\DT+0V%GTl*sJ }O ;o+|촪wGviw0y6L/%`6a".S; RNWfԇvNf}|:(0M Lqh,205>C?p[GLh o-pL[좟pإ ]U6b'Rԩ= `%WkHRoT`f`̟Z)J}+Ãk;Rj߶|jnxSTARƚŮ28걙y R_I~b5`ؚV.W^XQ/khBHf?նiXg 3BUpW&ɡP 1?ZmdUzH_2շ~OW~!{O w(Js+X%v)_dui`"?aOVwoI;Yb|),-}㉲(cOpgmnjn,ř#^ȕLQBa5A*4iH6rlnvDQI! f9}QFK|W|,'חoÉ%ᒼF~d)̫d\%i:EFg{|cBH1rz¥3& ".u}hN7]1,Jmpz#yZ: FLpLޖVsEjU[G?^Acv@ ޜ/n(E1cFLGj{ ?P],˃G"`<l±/"x*yYDD(5uZӢ;xsу UP?3ӷL$hm 6vsnz1V2Q)֥)/ wtz'.a>:o0mDHD|ƣ&V ۿ;;("#>9vmmCA꿨1 f0Kp{ [iݾ)vyہӂ?/bo5F!c[Uk G+iV BK^>%$gm&Isv? ˖qBg?H~-gc\ey\{i*sSIXu|pӌ-.`I[r.4IOgm)V !ucGd\ditBM65 yZE$r7R0~IŹ6fb$7m~(Sї%c ӥR7G>O6YC~SvX%T <Tjkte-YdwN61}3LB1R Ŧ#ҳm>,:@֡ >(9hD-2g:Rt>4WC:w9u- aЂO}0k6ré'XٛTM04ԘL.C!VRnLwg#,Ang`&ˆ)ͨڼZf%: ĉQ2!R$Uo'`5GЈ rd5 ɰoҾڑW6V@0 ^R/Wc.p) ;`,ʹ A'kدJUsPCWi_ynKS9;Cb"4Nye0bh Z` AHO5WݯO6/0+Q& S <3.WNrQW(t6[B0_ơ]Y>;tVn x܋!w][=DLJMI#N ;Ƅ$H}s;GVkrWKDȃ< l % H}pՌ#a:ְz& wͯnm`mc.pqM`gֈN.;G]@1pOpy+u#^Taⷻ)ZG:~j+`\۞7)M|u@Arm"ZLPa4O(U jD1%:+z⥆i ׽^1֮11uM} ?7f-3lԦȬ1Q]FU-sl6KKOm=q*`9gA YC^fE^JH $.uOfހ9#X$g',URZ\P[{T;/xfYU5L$gFc ,Z8֢fNj;>S tz됄610{w/wc7T:YHh%" dmn<]}ը/ڇQ e݊k+|Io0]5h"Q em6Z;Ƨղ(F{Cs^~>'@[oInYy+Ʊ}n=K㒮mz-_Xdn^ÒӁ*Mm1ԣfiN&&ЏPKB:MTg[E B74ݮt);Om,Gޠ1$寢d =N7s/"es8LԌ6U&4 8O$'!0?zb#I&:8i:m.3f̈ÃbbZ1jAq0c 9'/ _mYƯO<[RR#3E{%w,CbC|_VD@ȩtZk34DMHXaVv%zt&}14Q_q+-xuV,sڹnQtߑyxS"#`:GpQ;0ES7p0-5VMiQ9b'jxG@0˯lSاP_сְbPs {9 ZeMr-pOhi *u&cH͍ٙQ 9`_?8lo&wYjś|R:")  G9-g8K"Wml,#q П>9ΚRxvITG%n0 gk{)+!#zTy@i&wbj jK Mw9ϭ喨=з) VBp=r/}nne) `53F|?/0Z{|B>h i4GVy:CV)(7+R#A紼=I8wlwy5ߔ {b1d~D9`ͽ>nD*ˋ.Hwѽ/JwEv_5@EcEc"\ܺw,vUch@ލ&],!CMHͻ1qPV|%w "; z0 L >6jFDL- f#C$\V_O{]$NQ2DVEyTVC,!NQ jaKR Nτ;, !#-:AdvmK17cw<%uR~-ǚՇ50=PlKrB%_>Z7 rG)o׫fH XoLRpJh:R<~8.^E[.17Aʤ D@KZokQ1z'-Nq@/c3IIcǵDmlIx{i* * лp=ky}z 1,H?ϋUܱJAvp z7TRǘ{rw6_̼"SḸLxTXQMcx'M.( {">TFK&GG,!UlR40 v8u%4.]eΗc0+).FO62eT-"ray_.+  L@pCdBG`^f׊%g+E]!]=+ڽ?Hp ?I{"!@{#bK,̒ZϚm6*;uldGldX;1k6]Nob4q؝"H pLI3`) 07 #R/_2(oIOH< P4-6 ⚍R h3L;*cdֳ?tEDY2R֒ڏUt글h tCH] ~Ar 0жx/= v},RYuDR7X]H.<0AϜm16pdl 3E8~zN&OBi'Vfn, 4L NJsh+Bƃ V\ʶ1L,F֕I(h d?^\̅o#ueJv= tUݏD bISF58h[J'JE^\+egVUY Fo 2 b:tW?U5"76OgGP0 U+z7 qЯO^lKV&m,>&?hWe/PZӴ#P @F{nkb F53tGm /u~bUzlBY6U<3`ۛ0ɒ菋>kQ0nB>6|u`!2] bKfBn^}B[ tc!]^4f,3(Gu4Q SBU47HSdD0v9O{ (.8:ňa~"c>P>,yRW^:V´èEPl Vl1| "' e&S&>j$-etZBb{!t/h/oMprMa!?D:;$udЋ=2DP!y߿| C7a,\=^%<ͻDX>f(=XY!&2p/=k3,:?il4Ü6MbXs:=xmUlk4ݧo5ͨC^=(b:Ƴ_ :J@#C]ے<$7{Ay(S=1ǔ?{Ijv BdVL3Gp)\џ,)x DZx vA*Ds*1Կ74Ibo/2 3&P 6K{ [+jp]EA6cH;NVPfÉxx=0h9Kc9- Txku8-ʼ`%C mڭ<\LMb+:gy\Ug=݈!gH%>]/!!**Scte/w>l2u}WVgMۆnVzt]cQ0hv~ MF#APo_#:QLkr?0L~S= K^X9YN?u'Çk )G7RۿjI2?DaІtSsB&H.#RKUɗrpXKLa.ƹߧ--!Gd7/jNT$_1ueK9&F$э: >ɥ\_rxOboYg +HJz/ Kf3{KDBbL?6 S}ڊ38);@(}Ki bM8l)si\w! 6KˑpA.6~L!/J"?NWs+;~D?:BO=8܄|[ 6s?_ADEnJx!wHrQnU Udq=JɻvD5 -s=ܧ~`Y,i pCBHGYxO 4L=u?~y@mрMXBrV.ag-j~QF˦``]:cذNMOLpJ^:XkVCVJAxLpͧlɔj+& Ww}ٳM8SbAG/u !OzNlR][~rOAFȃ||~r0`u\L"4ZsEA!yxonj:eMtU)P?"VP?v@K' 3q!4+a3rܘ'VȌ/>.kHYEϔ<+is@1Ì8l;[F$nq_veki-}*o \ <&AT-)r8Sdψ&`7Z.t届Is#RyDžnjB-'|ٳ_I) [ɭ414F|Acnbc@J!u!8 eAu^, LC;iMJ]1ph3fpaڲEt5lI.^la[SDXyy%΢c]h\᩶VX>d)7x;܏\J4В e[$;hn,g n|q`P#g[1֪~  Q ١X]]eûAB ;Y:w6c(6֫q_zx=424Q:EBZa=UeƛֆRjӀu?N>Oޣ˖QBUp׋bSSUi%hz:W";YZAY)<B~S(^%;2SnǯUZ1U0 g2Jy|ٺL}%&Yٕ_ 3x%H<*"qˑޭvūعYMt|"K]Iw QD?>1;ZL\ND^k3Y$<뫱puu'5E|w=/Ȗѷ^m?ͩZ@`a^ڝgg?y,.WlŐ-"l޿Q>+H2j^hKg6e|SdrVojQv%{Z >  bz2)<`>of0^UwdgA%d9Hsyf~QxiOVqi9ԁmw5xypDLkٵ>@NuU WqZ1ݏkPJg(ի P*Q t'#`ͻqr:!A?)dQ$OI^ Kyxp&Y~wE9<9st?F5,D1.x/Ay;JehBz@Hicm_ ]`<^< 2]k?E*3i9ȹw3H$81iTGP'Os݇j<&vrROJ.5>7x6F;7s$aL8C'X/|xB'O";߮⥰{b- +Zqk ɧGd:v u>OӺ4y 6OF.<` CDu ז af N <]A_DžFQ] )TO=ph I ;5~ 珣N8XzpXG:BS,`[rL#L(U {avɎoX#g^ăʔ? ]R1FV?ܒy}4Nt+[APgCY9ev삁r LmbL6ae']q‹#$}^Ȣ pQ4.Ԝ$S cdRjlh f, ~.UjbR8s~Ŝ?C3}K3,mZigD&ԧ V:V(HGb`[@pSҮW{f)K!>#0Z#,cU~yY %r6V zhVH5l<+ې(( jos:uS0BSs  3 'I5=Fd`By#5,LCqpB"8MqgxQOR)ʶV$ݣA'R9&e M$F /;%Γ  F-jտ,DwCqXW[>>WcblA.qJW@`.#aPb2VoSgd~铖`_6(v Cn1:.cd<|62FNT LTĆZYBFY^Y7rkgn| W?/ZeVo̓Ōn\/P蛽)0 ,h:$d]Zcq[")jo1!1fZʓ~[r5v*X"YK# ['z$&o|\~ W8JPH ~LcP m_ M"A_ +pt`mP."(Ut _NzDe2@nعFsR؆KCޭ7M}Ӻ'h)uC&=lNx0ctl2L^gJ&s3AΫeL,b?F(FY]:)Iʧ)g;S(z|Okn7peLJ]ڏVr,^Ta c [\CHY{rK;$a'Eo+Ao*wTFxS޻] njh>\kR 邦}|5&0F _Q3nx`*`VAqOWZkA?p[y3t Yu$@ lQ^tS|5W x W ƛb '{t~_*yo=Lg?kmpA75 3=\_I *r'V, h&^ERP䚂k-|wsT 92*R@'WE!pUƜ{@[ A0~h+H2E|l[ĥjU(S ʩgpcu5h]AMp2e!ݏ=/瘃 TO}=2ۯٿI@M-ϔ@Aǂr/yC.RM#ڷJ }%()P3\Yt`r88ƞHiG_f=ږ sGᓉ3_I*znRtFcZ?dSz9;&Z =pH>y;޹KӀs,s >LneXu^&^ˮbgAґ:BKJՆ)´{a tt`Kkn%W&z`0 `Ȏ+XBMe ZUUINjq'&v;l++/PH19vxK [FqaxRc`6ȳG14fPxE?f܄^-5"b~X E[Z Ua-oIn$IW<~i2 K#i1sHt6ҖZ._+J݆$,!յ NcD͓tq3dŻ' 1WQLNO䱬/h#ZN쌞|ZpW ,s, ~*~Kk0q:I֎ Y׳̇L9 Ljn^d8W~p[d'O֙(1o-0KYd{7U 7Cڦ}ޘ4Ti 3˲3Vg1pt3وJÄөݙjR)Qm.jV$@(IFUZ! d\kTj=Uxoq!2zvZr좘]CBp nӀ!hPqTu"k q\ ibzuYsmG\BbHVbWOEpAE [J> 6'#8_LTtڕDhժ K˄7I6Q`1 e3CeNwo{'worڄ²v i@ F<%Wգw Zm^ F7葟W9" 9Kx#,wjQMڢܨpyCPRdU.uQдI,9rbu6ˆ$d6GX4oBULUiE2e]{TG=#ds` Cb1:W@蹔@1XFav nP|"!/[N,2QNhGĸh?WeoD>m;waD!K\v^T-V% *R~)u(/pAeB jg ]ƂIU*B2°~p# Tq"ZDwBLk+URI#h|B&>+V\zf e**+i : 9iFvC'*bd6D+ C2 H O?[%($2(."DN%AOC WS*LzLfcIKjdo2bf 5 ʔMl8vJD1XׄTj3󦎐->13A$BL`OV|b,їRә@%ȷ k\bzx4SB+h3dDǖ Z5ph4C&[<`wFy072Er%,c3yտ7gXD l1}6ɝ[:iwSc}Yj- {֕3e7NgшQUʂz#]!vi|;C% +X)$X} 6O{(u]!W-H}o4YlW,$1 3H*nr?H(A9^>{i\k"s'"gdGd *jR?@l͟Yw-=&\?/|iʨ~ v^KP Ѷyti"!:hR5.nYE*'U^n\`u=o1PGCca>xW& 8%tki"Jb8V0OKǯxIU(h@Gr#U.֮2Y 7KbOJ<dtn;z'I#цH0(Ӄ4؞hs毬 bڕM%uA}yɕX,gKtpQ먔-ڶ_*[őVcLzZDC&0s.>BBzmvt-TKcWzox>oT{ L֟?cТ+~R3FETl+N|eRNaVg[SC?MM-fDf+_Ɩj#ò?P~K>ѬSu2{̑wک]=%/t_zf*zx ?V ̣&wP#tKvH<*`eW8hP5?l).e[!AcYmt8b? jL#JT7<Rr)R'o|O4*r!Sj(8D#b =6MqZ5 irSi:Plʼ!TuKXZɾC~C2Zqz.[sJZ">ʧi4j2 ͺ*@OKu:W#A6uR0_mX큶^8C "ޓϩqWgO&To[~JGʨ2x,ҚeQt3t<`=VZȴC:sQ`cu`6C -9wɢnF$iBOUXNF {"WdV׃Sw";7_h2Y*vD?3V} N:t?\{hFIz)@$(K b vbkQ\ z19"d(J^agc 3yi!/oJr.do_}iDnYHv՟s,aW`\be㕃]φK8'X|C<,T^b\x)q,Wk,)~1j,X$Fdu|?~ DkqUpu>:#z4D{lU jE|,GoP !E}zy M< C7V~csF%.2u7|qf+nHKƬqORa9Ad 7tUJ ooc-yDgqq|I m|'I3ZX.#hY&(yBog!]N+GQK[]V`|pq`K0>;bCB*|+?O" iW`LX`_Ip ԉĸ_ ;8y{ŀzw-4R=F(IzT~#ހq]pJαq&\mF91X㮉p);9JFN[AoMZp+KY<'H#C.DZC-A,̹DhwXd;.;SRdv9?Py\]=#l-g6Ԗc.3i &搩H֭H-9,(O'jH*j= p-sz. ?C߱Vo_kl|=1 ň<@бެP ߹^yd|mCBBOTNٺ}t3QA!"\Y k#@@ X֚{{\݋ruj=GtU*?C+|l q,оF$Qv;pO(@Z/x|2nVa5x5A׺>?NP<=p}WJ;*F[Ux#k2.:.;]#v 8 AM"G$'|T5}Y&7dUzTSrUR?9!T_(9>3sb&3&*taYQW?y8,'a83pPp)Nۂ'c[Q6[_O\KyaEMS1]⎈eHp,,֝xBs9c 1$a5\$ 'I9xq0F%Y P CWq* ;e㛔PN}G8n:s^TP'sG՞&@k88)w} :+futWwXg8':it#+F$g/XA!g8!9 oF\y'_g79 J¨%vW\$a UzT"_1}۹ BifQiKbWc6_d508kuMg߱z H" R` GVzaڈ9!E \.qjLK@fN V(xwCWKٹoe֩MS"D!D`/3U]H~' HpkI &h-f+tCs%#4u~k)a/ A[ F:ZSW ͘nPMkytN."]Vu>zxɆgyl= /F,>.Ga4$DJH/(>ͤF_XЋZF >+d e ˼OCH롕tG:x//P]E$ 4Ui~ߞV>sG?vN0=q\֟KbȀ)ie\TIY VH=E3teB\rl3<:#@:O ; 1%Qd 1GH<}s8D@^1X4 JNHq1.4b#Z'L?U`f˪<l6R7vW"/@ɰ5=zP˄IJcr]1[_ 欐4Qݨia{,:7B ?撹{!nfVs<&umvq#:/k~d-(&e$vc˶ҘG)[Iuu{j#}'8)2YLx1BD<~:ˆvxwTlZ7#2gfMms_Xe i #tC 7s/y Em,y1D/Ҧl/VyX=<uO3ؘI齾,OXE@ &a1qؗ}͒pqA" rWӜ;ol"oA usƙQ8H1H'(/FLQHW9u01zÅXsڔ| =j8 jeNu)>PxJx]ײn\7ssQf]+.v$N7WydM8ʂbEIVK7v45\Ew mc>W|HkD_򷿎B{8`V^)ܣ$DюK`9XOjݸ AjWhx9M#A~$gsnimL*}`ET` @xDbwE9?qbTlMuwLy^'eUeC0m&u 'JXS7gh{8u @(8bf$M46,ܠ 3]r鐣kvbzjWTՃ{k$| MpYW \Ji/>{PH gjWhVyq⋁dn5tƙ9 Ab!lcYMH BEF&ڔ+3,FaunJ4s%mᰬB5M.T^r{&<:0[sD i M %t=O3c49W`?zĘm1<'#6`ž}e=̩wٴto"WyU9]LsܨslDseXRaKdm4E +H,G"}4#]=C}5ՊY4&+z'~vˇG k jZ8#o<5)LAuyb?wS/!i'N/gTV|7 }ЬlR",lv=nEw/Oc@ZR&\E z(K9HB'y%qTFa+\VҩcnJNQ(+LOk}]Bt'_$uTxk63=j/'On+u;o=g+M#7wz?EDe<2-_Ov>dKP\`D|{Fշ֩8Al,4Cꘃf3G2Ȅ$,^|T,nV_2Q\߿0.wv:xG-j  3@G+&fʊ ~%:~jlϒ$(Dd jl\pDŽStkWlDp W`oFP Ds\\Ŝrؠ}PlgtbQ<"U!R6,^nRQ]~S\dd/LI}NݘmU]=:N q΃ﲍ9Ԗ(pz6S 'kiࣞ1XAcB vgAw4PŕׄfM086mj4d5m4C>6 bK1LqxN 37 !$ErQ8 $q<8LJSI/]HZZBۘ~Ѓ6b5:=wNΛ[L.1$ZL#6Y[3lyςv]rdV>?c%K:&z$:zKp+jNDcs¯GBdطlaNJcϕ=wY?'F趌fh}L1܃${A+\N;J/z<Ѣ5̻$瑿Ls 0r fBex.= S|,R. JALwgM.iWT.؀ߏ]TS싩GuQzKP0C9/*<^:GU[!Ge7+I[wr3 yPECAM^#58hwcDJ\ |dHd`8u]l{ٞ8d}tvք哠hVsC>DfjRiH4OLe4A?ajMZ6j"Mz*ͻ@f 6Iѓr_vg~wlSɋU{:s jx mlf5wdGɢ0d"ieWP9/:P}:aQ'#NЈpbAuBzZ>L'΀bҍrԆed\Auʼn[4#7sb&kV "ͬZ7(8ՍQ oǴZޘi֨X+dysU$,Kimf:SܰpߤE?n^3gžDR'ܩ\q/'/]Z뻲P7>g!XGWOs'8\rj9?cbC)^mB+ ,Mm6V5?ӳCIl:]5ZE̐Kv ZTN`A&wetFa YYyJ,nuA(m1p-@7a|B DvIAuβs i a =H##Mr,(`?M4Gf};&`'QN8h@wKSGc c7W,!|9JaY`b;~±P:Zm|To?LѲ*:*3JKG 1۫ЯR_V_dw \2KgE ֢1mA9:֮&Q=tU2aչϗ7Y ~])ASх9A%t3rtn>NCVc5^K"۽\|*WnKY*+{!Sgֹ6RjVf:AmQ[BY ]WM%eJ)]\,>Lj< [ЏJAW3.; ոʲ 58Lpy 20ˠ~#I|GG;ǪISL/v5=[HVm/BNxx&](/RD"% )ӑ* ex6XIoL5aVΠ%^\4SG2ɶR`1p|ߒ->+B K RKiaroewǩv1.&]Y)}dG9+X4QNݺJ5 rnRXO^&4he£@4e-c׳9U Dto)l)iXFcyu%000R{e]fJ^ DY*Q PrIhX*S@ gV[m,{N.es'EoYA)iȎWE8yTjy>GuzYꊱ^ܸΡ1+&@R!ZDkXUe"W_Y:RaQIt=3훉Jd>,?2G]EKI6 kxxw&u:fk3Ϲ+~4h=dT2-gKpeS|w9mH}(7b\'/P Q$pT=qɱN?|fK4'SFӬ"/iOh5Hk)nUi_.nq͞[UU64^|/ 3xԹ[vt;wdI޼5OC32UH -ce]b [z-)82jk5eu5i$mY<=.;4 # Zu,;Mⶸ۬.YU&Ĩ4Bu[|WbP` )js @ )1L4Q-"k۪ʌwH<$7eJX``Q5tc 0=)ɡPr0}v!ܯ鱜tHBPNvl^ "JZ b/C Ghcgǩ_{F\m, 81#cp-Aka%!+]jl/r6鄭~*UBjmݬ.Mf4w=FRM{s! (q朌).~SSi+$AZ7S.b'"{i@ 6j yX6c)j&,]AshAÖ}w:5DT~38AYޜkt(A<>WQ=WfrJaKB:q3{ω>^֛{:NjæT}_s=Q+y[,FYOzRc4]-=wNоC;Xg}HݡIF mwm e К@H埛^CL= ? U&l 2+7fwu&OXTJsY2_Gc/uj+AwKr)5kh_U9Ķ531B;dFl<뺓BvFhD[3 T'ŖT,C75Ln!4?wRD]?V]tSkT/t_(!_3K[Դv@R#>%=4AfmmOY^G*pKWgtxhnț"WHLN:l'`jks>ft´=oPoRz aڟV],qa}BׂgrUy1kYӢȩj'L:یWϕ~ ۥ2UU9aZ3KiЇ'w~w5/h8٭Dv@e_siTh#GP5z*C<y vU[ឰۥ+'&Rc<8 Mrޖ䔣oݬʟ'JFi9<]Ƀ=|D8F18{X E1T)Zb+\ OߜAZ`i0nZU"QAGJ+r?+J#KfY4gpg=::C05`K!]_ml1kVBD#bR~1DݺrW .+ڼZ%= G|lo)? y"ǕWм4KN?Ex-ߏL S%} 6-f_s"BI8FR$$?!aľ垞"#AfiE+Zo(i=Cqd1-e~2(HXeW*=E9oD;jxr|q`ĪeJm+ɲ e/=@%^ݴ-cs*v(sQNjIV ZOdB]*{cD2Ig&H7; (qFwOWM,~BmS^^UEz=#`_XRl^:x6@l;C|91Y t./8,}Cu9#?3s,X]k}|(Dv{Ck>2 v)a˪3܆Wijɩ'2Tf$Iflļr vz]K*&q>/֌{4 mneu) MS1o^oA@Fb 'h$])a-h==UV1Z{>>=Q:sLÏƥUIMߛQeh 8Q5W{p85l# k9H%T88+ IBTId[cr":*+OI"ζ c%BppOe >MrN )O++"oN'?Α8Xakmȧ1 =dcK;[ƛ,4G}@iԡx+I: n# y'Ro *H@:#ٺ? kY+(L\<w, 7ӧs 'AKK1Krb =% FUqæQm{ 7tSB%HPh:~p&-GOY>S.1JlNNm LYI`NĦbYS6b _S`5}{ (L:kvĺ2l0KjTBi znDF_[ZX!Ѿ6K֌ M}l<@rT\RnG"JS ܷ{r'Zm'LґRXQ`K#;R Aץ2 ٢$?_+v*9WL.aXk+Bfu"E'[-AHjP#ҠNRƪaSqO #: s:5Z[D vx=|@0E7/0PS:!KIJ K(W@ɿ壆#Lw8zqNhX*U{ AvѰ֮&uoX:(\ ?fp:&`tQH,h!|Mj0{pFD w8nRmbq,ؾixiJ7ϢP:zHcyO+s wѠ"^R_ЦmBbO9wX_7(RF $%/վ :' ;@ԾdveQ'h;y2_YzT\^K/;oEZI[ЏU{vm$~4E_2Pq*6<C70ǩ0@7IףC$0^?_͂`W"X8a1tr:x._F"̖r v*sGboQc%vO.@/Ƕ%dJ8eot*&+R:d$Eec*=^HϼM3 FiMBHXv:ଆzGѰu2!{O`D6*|q8`A(I׬##"{ZfX\Brd _[=s') BʲИvCHMtyJIujԦ Σ+L*Lq3emM ?H4zE;pXrE9ֳ| d@+2GXbkNؠԢ&"6j;(M=#.W`.O%XPj9 9J{۾?1?tEEvo*`\gȼG~3Pqr!ǂl]-,a3綎NK7GrDCZ4#=|!0Az8`x=*(J#\X1xV}n!e]E''ʶYo,Xe:f9}2 auZziZe,z F[T 9lHԭj,;)S9KiV <*%)sĢٲ`9V _v?T @2I"U*  B}'YrB7)v8p 2 OK&NzTS5qwiw: x"@>IJ}cha*HT )S5:0/'+e3 Bo}&ݲ/+1OwIkQ<#_ڌ_Aw|C1m LE=^3[ B"JY_۳B>?NCtCm,eD?8)#1Iꋺ)EAr j4v4 Qc):]usHߛ}_L2dVx]OomHP>j)sv$6Y_W^31ZfH<[-TĐ :% %D Gj>p~KN!J6srJo12Kݣ+DѰ?~ w _GGcM=_L̕"Cjd]=̀u\g vult@fxo(\G*K zKK͉P=7|i Z :ʹħTྠ)6g؟'G{N3~x7*R=f_0D}, uglX{^b􀵰M>*W{(mpLwyE:p(+/22jݛyj*͹[5vAvb 7@nXySI.*{!iOAˠΒ!y1!Hb6/leO}xW673xD_gDdyGx]9nU,#|v1D矿y-U I'ʷH0q;Au.H:,9\(2cSִ rH {\Fާ7g9N.7`svn(nZj27ZʪeoOҠ$Â9AZr+X\p![ˤ*}~ѳ{5 ƊD㶵Lt>w"4ȎJ9yg4?](4tf7HR׃X 9 !ѫ-Ѿ:7cZCz*ZA]޷/RRGrj뱠LoDlhJj?9XUUA͈x+Hd9<@7BuϱL(~w9*R{԰T8,$ahU\;(4*j=\nGXq@E S/{0OřǢc tyOӊXDtg0OQ_n/I/;992yq/~x~TH̖Pz^ #$#Fʭe r77T{dtv7EWK\l8)ii:,z#:Om$sÌ2Be$HF @fvgL{r^8t6;:`zl,Ԛ)Z4`;Y Oxi,ϴLJZg& V(d$96;첞komb/E#^u=ȭ?-iao:6Igû}S\|' HjmM PoynJp6&1ؾ :; :Κ\7)D,k,hХb9eD]yUm iG);}t86 *;F}tO|jO3mO\PpyFQ&u&F9=,1Ca5f4EVӅ1{-" jZS[etQGTy %DRlHc&B8#p4=H*zU^!pCu@'(<2G|AGGo6;l4j"_}Ģr_DxZdA wa|-I!jԼr!WCP#lo^7Ȼ/Qym|a0>5xt5sd3߮^%CnW,H:~qo8srj)([/!0ž)$Y_rq;d)[̳M<#ʂ~MWKolen@|L%wTوs7RvKu@8UT&K-:EMԼ=$2rPx#*9_4k?適6mm i$YӰwd7p}4t_!OGb!@X2h]sn CQR:EH˂,x{qԨ C+opB #M@%9>Nj՞] 8f8ļK|d -U<._5/$J9F\̤5$Ge%׷ O>twAm}"O mʫkU`DOknb [W~i#H'vx.C8^Um=WÌ+D ]NTUcDTʓg zʛ{3'4CV (b`hdke݆B#faYA,FT˓7AH]Z; vZN[d2䝐 C؁͉ ޙ,@)vF9{cYyٸ̼EiHxm^+=c$Y7$bv ѪL\5Eз֏8ô1&ߤ[0E 9q{0,ORY<(= 85Ƴ[PHvwmG_B񿅥~;#9XRAhay fm 8RE {HeJ8uDnsh a(u( 4`,G j+V/)?MwA~^{}iETم'ib Վ80.G)5g5`_ 'QN|24gIٌ_{V)}. OGr?,#ODk͏]Ae=qLp;\+=!mtnQe뚴0=s HG##dc/*G&ǎ?(v "(_Rb6R T Jf9:hԾoh\9#ſ%LZʕdMaF >$A#Or=*tOOQ)jeI^4!q15_w<:$P=N'qdCp#唴,3Tvtפ21/+, :~˘.x,=I^xo,{mC֩yW5$8V}y!6e:6r5w1tI.[c!YF$k=(\F'Bbi 묫umLܾ<:1ؐE @yC`~1mbJ d_bf  u<1\Y4vC^8מפ `=&U6[O8.4W=֮n ̟[$DOƑO}O'zXʊRRKحDl 2)KFa<^2%[aWYVS-M|\µ"`;D-2X{>(W.2-EHn@HM $iM7l$J.Vi8M\JAS2Jqy+Vo{\/95JAjȹIt";e'qWYR|B(LІ!|UpGk=SiÈOOVSdrp7d8GMz I4~Ro'[ɂډq;2z(ی_71?!%vE2BFyg`ZQiI P@XiU^M a,ά*{. 9T2Ig V&lH3dRH[$(zZGdDb6[?,K)`y;}!53P͙Mޞ[evDzaͳ5KNW՟b13ɧHYUi Nv\s7jb5Dt3=9R7=ވHǀey]i8ѬtM<~#!ֽ%~/f9=LذrǏnʿ\:Rf` a';e í> hHgKQ2*?@M|\Ki{´xDch6uNn:1!}NۜI0x9O-tl*`U9Dz6"E:8W]q@&mX7,["/M#h(J }ՌyHLd / [??lK ˸Ӗj#6vSY9p>y[oz٠ȿ ## Ig!+@H ."󰞛Q+%t zTK3gíu*O7xA0*np:д4Ɠw?,$} 2Cl!%K|%1 /PYAA]o#i:{j!T9"Ԙ H?.<9感ڎ/QwK_rnCVw-ZjӖGry{9?#i[n/.TE$KSʐ}( j\;c I{lm]LHŽx(R٩Yc)箜$(d Bc\`"q+ œK8:g%^?Y.;` u6=cKd@8V;jyu@U"%){+Iݚh4qBZ63O%^ɯ)EimQPuz[u v~>OAi7s_Q%? $ y%XsVY[ѱI)|喵m&x91zŝe)pN ~tLqZmq]`ro.CurlCRi5RI2ᇼ5ptW |t~SďEԊ=92\| Ki5ŕs@)yPfs C`Y&ffrbʕ2A\]S^fT56\AQif[(W :$ mGFD Dݎ OckY[oexI׺BFڳ9lQ ϙU"i&]ȴ8+N=0Wadhk 4ocCO]No/IhTǥRLjKC,hVڣK~3:ՕD ]E0ItG- #0ȂHЅ3SMHb3`` _>*U-4ey̅V!g42! |IEtHWQU \G?asV~ppapk;롋*-𷣭T*>F!0z=ěbW>yTj4JdqNf=1=mgoy+:OyB- <Y5Da~t >\}Nt??-;10a5v;:مyʐ%j*Q4x_`#tqO `}0> թk62/Ew +I1w$ 3-Ꝑ FB.kmK~VMz ٌ߻QnxCnb*"9o"Q(0?t {tOeTB@B5 RH4 pl8m^t߱a,x/ѿ>D4"Zw=HԵ ΓPq"\)kiu VHW?;2rPl~DLYi#W D0ǹ=ԥxd42\Xk7h+ks Ws&&8W[Û'L_n(- ڮb/DAvEH(dy ,'f:aވslj ?7oveHMlJGjټ Ħ45Eߊ:Nt7$o!_n~p9_GSIv^clG|ybn[ZFrG2]>V'D Iu89نeDiOrG1W'zk%"il1,z g^?[OF[38d:0&֩;UW@$~r!hRCn7N*,s4O;Ca<0j]~"NWMCF84Gy +Z&zkG hˑAv'4N?7 :Rg.OVg1{!^؃7'MYAߤ"zM=cb{?}DN[x-֛:_^s }4l Z"{iYB+&QձXJʵcGYR`H(dۆY! rgSWhB{Gהj \3@ydGHP؇y9TCQW B"re2A9ȵX&&\}ȑwZ29}A HGکRu<7{U*@u($uy h/á&~gcy&U@8j^-NFK[Jok˓z%,d4zye杍Z]!Ѱf?gי=e,jCgIޯblv*l`2oBYbaR dj-2cjǤ dUh& #e4a5q A:0n-1H%{NUJuہBc5 ~vuzǿUw z =۵ĜrZ#a!-Q&:'(a Q;)=K{Lߓ,!+ yQWΜ߂({/:@Z F~% VѬ (d2.R4 sٲ6wjAڢ,cNZ.( '(R.gIiŤ[ )$7[zjps: PLi殻!_V ;CAx>+CHn bٝҖ:{ZAChG@;:Vө~eP ZD( B3FG]*f^d%摥;pEScaJ?VotL޳?WH{qN_ܴ~xD L@7c9\6|a"$|~Jܙ~<,#Z -hkƘK(z*y(+gq8Za.n6m4\ubI, oVQvgf~>7uymaS ?Vuu<lRy<6:Zs񍦰x̨򕟀- 1ӹ^(/];QF;z*EY7/o;Zif #VT*2Ɩ*晞AV~),آ Sh{'^>̎94IC~K P[Ehxp$uf1ᱱBT,W^P8q3!Tџ*-ۢ'_נ6ۋ?"!as^9|`,Kaq+wY]!\{楫cG=*8?[5d3yb6=+EW?0vƸ-hi')l {6Anӆ$$'_{I,}|)ۘ8n@q}^$Xoshw rj"B`'F7KJP z.ѣyhJ1z/!*Cy hgxӕs[~Ql:@"Na Z]3[Wn1TH94 A(Oᇆ ksKԣ5½r$mE&BoŒ?o$70EBb4#U7n^ՉQ:z}>e2n^P%p'Dǚ4R$cm7`}#6iE='Í1'eMe^lw*r=ڛ7mI]6E+ W3ܝ-Yk7tXW+Am]&)Yck|ߛdIKXY~Sh@֤*,o=J*>xk+6m-Y^3/ޞӪI̚OhMhR _B g$ 8s]#nr6Jl;7~F`q#I RP6$UR,׿tqz$N*pnܡP|9itQF'_Na3( =X/v0/(~nC0cԞ}QnwS8HN1tK#Yؒx`ULLZݠY2-} {() :}?c8OI:`~{V#q+tO:$RBzgYVa8mB7pxf"#^*L &mN'KՂ],.d[]UH:AGD0)[hJ?O]zʚd6]TWBL20]{Z%D\Ȳ$@f\ں:zXR] _E`JTi廈:U\S =XVD`Tj(ere/*iNM'jYac ˒o _uCkшLVnR]d+|<ؿ?`Mс t1F@7cRfW~]i~ҏ%$3RJvss F*Tsai@EW>pBE#w1V6a7.)}/JwC U>OCSd#͈BO"F]lzY XM}&L<}W ][lf@B2UYzH]Iӛ]\$ir(q2plB_Xqi*dn%ſӎz[:olc([gr` {~(L\.04 h)Xn;{9~FDq8xGek#my7T <+^:7x↩7$H0Fio ݔYЂk@X~4]!ɒ,R-D̄422M@e~--kfyoT tm1hmOE)3>Rx+4ƬoL+ 0?)S&Xۣ=zgjM4ˍSS 4`헀HJDIkG0 dDbΝhдVcB-qisr' yo 9A\u$N)DaDٙShU+ahQ_T1O"Y|11#0V>@.y[ۢK:z~_;亳Yt!isɑ+k~Hz@mXi< t@"ΞcMD.ݣR~݇uSBl8u'Fc<'4dA9i/eOGpK`}(>~m \/2@QّsjO#) 믔G擻9ɴzK*m=</r^Q%>*'#6<~0< @\6 Rm֣LF9TTRgL?p\I/eP/ۙXD^k"iF WA_$+延X+By*2CS/{^̚ZsW~CZ ]κ~ Cøt#4ȫ/y 'a[A+O]۹*3o-#:*r'a!^1+*68wZ"2iͽe3Qԛ\0.hﶆn\q=Z'tQCެĥHk!FG +F93{xUHG1O[J'AWkweHg;J #&U16D IAF}l*8G'&aLT1J|-f)b )3>GlOKP[/^XvΔzk$Q|{LAnŠL(GQ?JY fLsZWz\>ˣ~+, K95)C2љ}JWv쏐}bDz(a@<,v-1Gc r_^ ý ؅3ǢCڊ [E #.6Z|(LIBd\| ~вܕR~Nmf^!ۏNm̩DT^.AEFމ#nfGpxnWMYR-qXlXLnYxtnRBn<[Ęua[2>Ez4!)x)/"׹Q|p5QNAYf4 6g.$6M:Oz $.>[BTm! $^WYLZ;BCpjSc``w@N.щ 6 J8|EWBgD6M$<&5GMHRAT2TLL.r+Kf=m_ -?F_%s'Gnr1IK (芋-Y'ʟlT".I8M+&8p'V3ɽLɖJl/r^'U2bk +@?rqZZ)`3VQiթz1s ȻTړ_Dm;m:DZ cb}.g^8UE} T;@+ u{mW"(.ooJM吝|OIzX薛$s u ,T:1Z1 ɨRX-@<??.4ϥs.jzSJ_hGލDHvQ+am2޼g7U&>ET'{3A4$T:Sr.xd@M#Urq18fzBս (1+@2w*#qCj,MkH.m#CХ[=1" r_ӭyĤvXFŭՇYn9!$F(/~P* -׬{+*.)~iMl|9#X`n|ɩɮ- f:.4Cb B/ʪ?[*bRFiK$2 @O@W/E+N蒾5KEp3}W{']Y|/S_?$9J//dd*f¬l# !Z?t A+R) 4oҡ'?_C}j$(%Pǀ$0 ]8cV0եp&Uۚ7U%T^,r %xv(6CWR6Fj(b+Zajw)Y'9㩴7[J4ՕyNpQ$W.1L̫$(RC>:{٨{GKپۜfOxcޏ0P{~;aQTdǭpj'C-uvCcHOtZY[b H-*ҧRSXc tSODK(ŷ!_`YDEN* f r=4% YD~cʲLCq+LOj*a.LհbI(ŌsQcpY,[0A)l n1`5M"~QrƳngfL8 PX6yJ9:cXfPسѺ@S-eV;#YORÔ1{ù):A4x7ln^yjAt8*ʠՈUquS8h_+#AKI`Kz?<) a %N?dTBuvXy .] T_ٻ GٺIn4#pQ+NWvcN6Zߐc]^<$NjO>4E/Pl.k8m1Ba.6/ !o@zQJc TEV;K4`߆Tec{xHG CᲴwp V!ӣS$S_M;EXXc,IWxJQ9C@5H_VҔ3qC+$$Yq"˕M63J6:uXpYHFӠAKGX}KCpYs[I^B47yzO4X.DcOqS96ߧ5DW*?{#{xu*uɉCP/9,wTKo \d& X_C#i/s 9ֵ9ɮ%?w$z`ٴ)pt GҪື1R& Kۋ]-=j}Kd.0;)H- ^P|c송!gǘI7ͣr[f ;Nkt{V%]5U0~\!I.G|0{4ͧu+ыyM(jU'Yw˻4#=2P3}:EZVu%8UtءFE7-F_)\[-c[ړFRnQ1#Av.Ú{h")9{Ӄ WJ(z"{Uα9Q9ƣV7fb#f҈^m3ѿ2̳*a>~L( /E pOUR Q\;P&4o-uqifԂ2!!>;a!;&9А'у(e5dx&#y`t瀅c<oC0d}rvxge /GlNsp.6͍)gip2L@uݿMq(K&UWF CuJYR<>lR19Y4G!W9g;6_tk11D%~YdXcDUkpllӷ~K/Ȯ-d5NF0ՄSu ^?@ ǯ>t zOEfճ>HszvVFOlۉ;VrtG҉"͜B;슮WT)>U*IԄ@7pȫH(O,tdo[F%IvKg f%EM_y{ekT6IOr$`@9yQ4SoYȼ#"ȉ)z4h}˚1nf//|Сqj7,8jM,C~% PQxWӭ + 2_)Ct@O& hI<ђܰ ={ Eg*OF0|"azDߞ1$9"x,6aSOY=4ħRk[BHsۖ9c( 05D2[1<"V݅M@D$/(sȔ,Gvdčur& LhK5 6rPE®d3I/ N|v?(; ICJ&N" /GWQop0$zbn W,|yI+}o7 B{UW";ңCDRZͧ )4raˉ M}9Œt' rge;&ͿΕ|z?Mw@>$ cXR"S`ӥ%ϣ;&/vmx1ƪqB_$9ˎZcjqӃ?YFHw}Q>GEkUYi~Q78^usm` ŋ8&'gfymvUPm$^|=5'}r(v2ojtL+Ȫ Ɉ\巺`Z6<|_:_A'7C?i[E:3웫N4J}\Ŗ9yzɮ$ب ن+rLOԂqxLDA7X}@1DKĉ~!%%n`)4^5ͦ^O,!l@[BT F` U5w|3QA7ܿO*[0 Zq@ 6b/bJ4KGo`žϚSH]Z!iK쐂JsBz-4H2w*%R/mD>h-͢)<c~ aΩdB`"@<„wݭ=Nbx}POXZl]ʒrte+d\xTvQ|}F-m._nVCޥƹ߳l-(Y_}X>n+yMYvinj ll`Ƕɱme|~?6=UwIk' -Jx#Z=2 MiPFScp򽠮Z`&_ yyV ۤhie{_NxbV2@8g ck](~al//ځH\3V-;B;>WchkV7Se`|A3<6.K{ؙ8fUzC)XYV3/4 d܇]A]sH&g0DE[tie Z@*C2.gcYR?j‚;tcC07ijkV 7Jt.U-HfT Э=X #n,n4pѺQ 3BV;%i;GfrʉLpJ(JWt͏̐Ucȶ` H|F&ȬEY/gSrAk8%2E޺E{&(9DCe\t@QZtؓʻsd <0 0Mx,(~bf:igfH%zu~f|hmn&`eqȶل m(.e`RUMShF_!_dOz٥]~*xQf_r5c+QڤyqĠ[#20 Ӵolhz'&OWdx&xk=S^ j RZ'bn/5AY^R"̀禛ށ\RWWCJ~=xB;| fLl߳p 8)"q${KLEh,-9żI~n~0ijk=1WVp؟ײ775 VSqkm:՚xT>4艉ڪGd\766yv&`{5,?yoY*+1H.$*Z_з5Ă!ubX,Ћ*<߫oQφcy^P4lw[S$w :/])욇` a&1"G8Np8KPP>~q8.k;Q*Ig۠d*0}")8{xA4O1- ?54df??, }jIɥl(Ev!Jk]7DJݣ\GdgCfuԪ$ׅu;%,sf\@^V@]HX瀝iB9Yݡy>V::4F[=*W\`znuQIjܻuGk- s~e} }vOxm[ջj9]hq)WWlٿr3KmӨVF.Jܼ$|`j?U穐i Bˡ YJ&9;n퍽(kw sZLMd`kҔWxNoEm& kׄcDӘBvxAXA@&+/2n8QUAvȅxX]%Q\aLl?U{DJ5xˆ 0eφg>nP/CwgI }K3lș[1Šg~JNpUHo, dY y$3A/Qz՝'N ,U'-/#7Gg7nG5`4=3 gM~AFP+Q)3r*jhn[_K+^EފǀedSX: O3 v P O^{aQ0\|D!J&`fd3toyXac_Rwݿ4Ii&xS5*:5"z|u*r?˧U yKgf\MٜG[9cޟ]{\-TBE1Ĉgo2!R5npnGOΏ|!_.?k-q!6JtGL^]0Ϟ0>r[Bq#xJ \' <] n*0*w}'@`/)✧H9{ȽO_M]+Fr.#UK7=Q6#+[TX|zoD0 8g'#w'9.Jnpyh3Ȅ<;YNɝiM!qu dǖ4 fK|؄a~^kyucu_֟|qMm!kwh,#n؈ W~mU`~)7jy{WEÇ'[DJ*^8G|Q/_PS.nqU$ԯWҸI I ܁RVNlBBC A9*i ۔b<\)/\|{qu< U툮T'Ug.Mp[r0ϐ쀟0h[HZL`%i[E!y!,YMQn}q2БCm z\`9<CAcZUto>Ǘ>I޼&-L̳_TtZgw) eT{77;LWBܧzeS{rS*]%Ca6Ld;Z_Kd/ tY< &+gx%B O Ii8񔸖|ݓlLD& Us"VGl|Jr(ߔVɛݫq@A+oYqOڭi\Iѻv{x[PP j QF` LT*>.A&ґIl~H744 4L=F=̧T(/Ev [΢wfbW>uH=z3"H [Ȑ*U|&Qʫ1lϮ/ Gۆc9>73)Uei=_)Ռع*fC''H$ KS[ /6H^Gۼts)RdџIE58B#mXDV>'퇿U%?'^aԿmV/e'C/CzB*6C0uQr"ӻAstG8&fcB;Z$~3=D+U|h,nPO} [*aDm6IoAه.?6Yh{MG%q5`I?~ TFǦeL0i@12ze+avO ( eXg.q/sTL͕wi*#0č'H{ }ʨj3Mdn!]UF=G;`Jv  OPrn>0$@4 } c7E=yM ˚Sݳ3VvȮ޼d[ r(%E'xi u=Jp|!R؞&* DF]w4E=oK+GtHXF6ofP3u\ Km*k\NU[!@QPr*\j^',GzXJ:Sӑ>ɤI(|N6%LQVbMu`kP %[B6y2lZ1fnBd5o4F/o׍*r}bGG~جjc^ }D#RGdّNx#Iq>73D&Ɛ+>w"d!8,}'Ν2/(W'IH)[).k qJ!n5:idBqKj^e΅/>.6gqQ=)rh F𓍥_X45䉏#!Σś:7G{Jp2FExWR`7]l *Yd 'g5=va0q&E-sTQ4"ܹI B}%Y\.Z̈GK=?FLl.|IlfAe8辦bP, yVRP[vt3N%d in)`d>Rg .,S :Y5.A\,vS^n {{Ԍ1\Spv(nM >^fl)\HfYZ}4ERQȄ); gʪgV(߼+kZvvpOhK'`Oz3[1 Նk%:Ӊ.܃_zXvh*8x6cFhDcSk*ד@ #Z!& *O_ZrA{ *§U( Tz4r2|p^BW3 70c_B%2Fڐջբ{S2ZLZ!\(7V| ZɇאBj^D)J}n^\#^ZEr-rLjt$urv;E莉a+H)ck DxiaD n%qgôOGFT})`6@JG D|5y0HPh{.Uu7B0y%/Ysp 985lbD=I fآȂ#9'ĕnf}~Xh-bŤZBxE KKխ[+யk+i\j.>0Xh]4~OMUXgRύC}Djģ1Ǚ*VC"X'FL4%su4?hlRzl՞80ԛ]έ-VU|mӯt?JU%$1JfrX_3΃b +uHN&Hm)(_^d\f =g~dn`9j1+:*}?v#[+͓``:#I3 “EU|stPڹ9'6:0Q92y Y=cbD'&]_oIJlvJks-2͚LC#"YĠQ`#J(t2{/Ҧg |YHņo"4{$\ ̳e^g #]Hz>[݇Rڵ}软U?D2+#c|#JjBT)MbGw&D8#u.n) ?}6l5>UM?8ۅ_I.a3ԌlF*uauÁ;WPgwJf&Qe0V?ҫթqZ؂gR(@@Wn BfgW>4y*Z.OnF}㱊*=+,j5Ij1RD 8v_[063Sw'v4KH74{eja0OXnHԾk/k˦qH.|LXNQhD'bW+5AT0 h=w&P!|m%UjG[Hb(f@ 0ߎ;AZR%^,w.խ},P``KS#4|C7NsM#~PRkAl=U@aw< /&6]jxb&=mdE "zh\`eu$?fgןoVq2k6@ j8kAtK>[MI3DrvJ$8946[j@|6=)2IZ tv675D۲3  (bݓ;a,ƉS֡}Ape)It1tET` u qK1N_8QK#A:uMvMDS%;qG3W/+k0"t]blVS +V̗@j^arVn^!Ǟ~PCxBu<$?@$QE̾覭|Ǟ>Hs%Բ:eaƱR"jsv}rԾ͉our^ _tnBE#q5(䮂?xs-%:\+yoj5/ 3S70]N"n77Űg#D2_ۊpM]\=Z&MG*Te L7*H$eqo.2F<\omDSu o[^]pѓ]ɰ% pyj,0}g/~ZZa,/W-S2 rl:]9j6o]Y>L gL=SYʙ m5qC1* ҁY.Q 6̨5HdgMkyzÇ#xKR%U0P(u[hB4c&-͟cc% C CiK'D_Pj}hz|H p$Mb?.ɞdgK.Y[^p; r4;7F@eӪEYiu{=aVN"N2E:{PO>x̑ȹLUIWz*aYU:l4>5}.D~?U }Hfws[ƻE>d1A'GX"ϑ،Otel#f/aSD9iKU2yJՠFd؃='tBҘq^4A!ACJƗ+I(!t9}\#cjkaMIP&E/ng)EDFW^D}0)=f6 ~ z[Hz`$IGK&Iy\o[^p& dehfJ:AםL]d]v5Begaaڣ}_2T%Ȯ12A t85N+ifFM(MO5RA*[mj&jZ)36 > PU.rՏ֥fdT)`קA ܡ=v^=vh YZ|>.蹢>㠸CEq>R^FCeQ $=s-@wC:4Wd{uD =}/)OY5TR$Hx; AQ <yoku;}@K_C\}\Yl=t)<_ U/ yÿpb3y;5`ZRxc&8\6UP}*^ަG82R g/3{fBrp}i٘ It~*jkP;&7OiK'Ķ  (O*osԐ)GQpU!"v:rh?'bxCCfb!a(awÇe ܞ"mE0"j:7Ϡ[Fb'`7X1޳^By `={9a1Gr6M/%}Ķ刘R)|3f0a? 3C#YbZuR  oږJIzQ@'gQ;K*[.8d?C ht̘fiDPgpJO1@>ۏdTL@i媸rH3ObK"=<ʴaN|@+vb%z Xh0ĖehN [c0iaLT;aOJG(Z=0Gלpk{;lQ\iJQ; = t .9,?xvFjx;&IRl>ww 8O&:zi4b̨'twULȺN=Xx,: @b>aBqi~R*/z8# Q ym{v,Eກ|;)7q#n~ΙM,Dr{ҫȃWZhvó"ݺzU܆YQ8Ҽ}Z2%2'o|9OΊqf^&MH J@?N4p]4tA x}r#4:צlY◪OA`10&̚){\h4ԪࡉDbHD>z'`p:,Ba¦`F m|[CZ Ec7N,U+< u-9"2-)1u [+4{}5"a IoJ2CǽW:GJN47qeu{V(h?g-@{) TD@2̔dn5P㋎Q:012)Bq&*tS_NjtFlv hO{OɑyWn(4%ٽMUN 'g@p%ugʍ-:ς`92Х X ȕ;4zCX Hm}˕)٨6ax40?-eq4n0M5 +y~BRB.U՝nTKTGIW_XwJ‡om|DNhr!ߔށU5iuTi ̖64E~m_FӞ@Mrn9q#jKgԮt!+ke $Wر#nȩzQ(GT*Q+"n4obs4dSjฅ: ks#< R=ͼgRU17~Co;KOhY :S OYrt[dHnPKzzw^붃 ' h|HF:e`8}fe t%q&ҷy+WnEU(8 5f]/Xs pp`a)˩.#~/~/~97PՎaibʛpS. $L] LyᾜSW3A%joWšZl23m\^X#paxMU6R]1b'W:P_Ӵ; Jx*qj6E'[gx%G9:Wa&~z n.-iH2a0k0uC!p?eg%8;|wDc5_za֢F:MEH0}MaF^ހ )þnkLpp*l_^i}֖[s+66RY gLwKRW@FܸW˙)s P<#s] wZ*g_Ak @|K"*0)(=dYCϹ {pvw\D17rNןl$h$hn:.[JrJ#.1g O#>wHDM)Cl69/nAtiʁ䷸gsZt1e )J܋/jq!PQEt/Fy?ZIҮzE`h%,̵ͧEjvPU&`@=:z Fl47aėQo#pt\`Pܙĥw og>Ñ6m 2t6Wԟ"k=Ԓc_~$ʬrxLh] mc[-Hk ޵d}є)4 /l5+*)t9? -]T*-A~D;h%1x+nzT2X"s`25 塶B<[qrIZ zJJԹSaqlZ[|1 MV$)M*q$uu a!22;SqĵFpXB![X[4twAՈntʲ o" {.2|EV C:s}Kc.@cjWo _OnVrmn:$8yUb-@ ̖s[cF-sأ9] &oC2w;cb%Fe%UG0KwhQ'IQa&b.YjKWMG&/<* ew=*1jrCO1N%.sG7«Ċ7~sl ->a7ғ笢X Y8Tgٝ|:5 t^檈rۈ^@2ZD i@3Pwrt$&zzhz)3)B _^qVe1S:#yk{5&h[gwSa*)=@b:ApS0N]+r${fL !zT}9zՀbbdyCa1A$ufK‚PѺڥXEv AݚW +_5`Z.l%BQ˻*ƻʐ4_; u$RT8Iطs=MWނ'|87Lˌt[FpT%7=@BØq,ؕpcO,5ʟ$eYv>*Y),ܠoi0e``ƐnoC> wb%\y Ҩ08Rn<#4%IJҨlv_DWJy=]˛퉯;Mch h%Ar'6Dr7,+7x9 B׶8pbMyQv@0a+J"8 &tؤj9g^_"\eYף9HqTl~mpP+ʪ>=W#r:lN|j!8Fx{.&_A iF.R ]b^V)l Flh$`tcscc7A(^A5ȩF8#c7?i2-IiUmHBG?Xܘb2,=/ƍU(bw x־Lܖyһ^=3ڧۍVd߁HokK[pRzfl0nHCd=b!OU@+.I^`ѯg0 U`dO{ 6 `S!)vKƲ!jzҿ]Qi6Ÿ #~렇8ܶ`&礅:;;"H5&|8x=PΑ C}eP-}i!A[wGW0-5GS*^jn!V2;uÌ]Ģa|gۯvXb^cmSO7'zr<-Y6f ]bqshbHmib6xf>]\H.bBg|s%d!Ѫ3~QGl};w.u-ӜloNzmtr(Q z_<#E0-8Q- BJD)]菺Ht׭u,3'|sKnH~7(yO4RАgCedq25Ԑ4踥{i V91QiM?TOq J7ZNw @0:~e bH\ uA'ch1=(@|Tz亞+X%6ȵf730 _!)g#?u\L2ܪN1p*3=QL+|1abV7xo1S.7&7-MLG{Pgfs'*9)4;+= T$Tk򒑟-.WC+0y:#6qy)_TCz0Bİ2= | ܽRbJw*|K zgclS-EkhdheF&wrB]O,Ձh}PGJTik9W<Zr g#3 x&D1a-X;Ǿ3WSUEI )c/@DM5 vk~>@gv8lz|lƠ͡PYYP2{z'/Nu&ןPz(#%۩uȁ^永,,Hs̫_.(@ | C"K~(rVcuM+fHg§^qbspjB$'ؙCm [9d6)YY%9U{ I7y_JwR>E.P7(>%ҿ' jpR8ٜR/Uhr`Eٳdx*9%BO8' w^0J8Y].#MNrxlݔxF\ !/ޒ7]{FBf"жo YRmTIJͶ"X Q;;y|5"}eJs]PkӅÞnjE%$wRKPRق_cO(lxSQU٢/r*ڧ&|NA ÿp"5`!:1ȽUh5L1r)%,-k- `[ÄqZ͉) d rDD\1wPZ\: v }[{=%R/pN9 5o X,5 ſAtmKxˆCl0ze7ze(!JW`P4xy Sju{t1,]&=xjåq(ڦp,5ujE$3%k4F1 O+WM+bMۛg_><)=3;|mUSMC3(WJs&`nqw9kgzЛ޼+M6 ,34`qej`{;> u&8E#/yhYK彨S*(~JLtD*YN)G uQ/VXb4ɠ PX!j@fyR<0?ua^xDLC&?F8~G{&f} 525 _+P6֌Бy̧,tsB3@OyC.BA(%Sk)uV|ZG2Ϩ6)w b@LI9zSw[l-8g" wa&swDZy=f-zEuYAl5&s|Coי|PwwOA$pMĩ^1޾$ҋȚ+ݷ49(B{JC\2J[sY2k8t~@J)d[/ k (mhO 9a|go'nЬBݖc =ޝta:uI](m;}%&p=Ѩc5/̾n̕&qIiMF8 r @@M|t.h@ /Yͳ $0_uJnWlD_fBq?FYWu#iX.H|"ϛ89}p[9{S{#r 'ڴrXPI8.qdyGgB=} XZn@& TOGV]l!xɌGxխkM0mlw(xۑ !ܧݠYq3֊zuCx`P#_vQ滘w1ׄOJu}rPב/#4yYāD j%?BE 8ЖtagS={pIXc,jr}W]gh:@UF?6H.wVyO}1;)sr}WޓUӉސ zTM Sγz":`d1 j9[%=m.o@%Q2]>k_C3kgl.fU[WjF=K}a`J߂Hk^t.m|ǐԂ?q*dվr._q6AY?q;$L"TϝaXh ǴrPF2 Hm\-P`oBiÈbh|wh 7d&JTXJi}T0}S < ;SS&ۍi [?x-+L5|(t)=aYRv3CB]LV'd4(3ǰI^lB~S=|O >f0vE!4ɲAHbO&}q!?_Ne^BEk21@v <,twa$dCbD9eʈzSg0Úa_:+z[=|L@฻z,V։w]^7 +ɤ[k|5)picxH&wv\6d9胀FP;o(2cRN~cɍRrSUQ~ҁ&Fw^Q²Wk{R1l ht쒊7;h/Q(ХI| d PI$LFS/ On,]0zh@|kcao"?aѝ_F"5H;VZ! ė4&%HD^:w$<gGsu M숱3wՓz˜e?J_*v5SCDŽdS^J~0~گ2d6sGYǩ!!W__%7U9 4rx( [Z w\ȯoWh/L6ͽZ.wλvk:s {=!+{ʻݿ3{NQVOS4E~Wʷ Bw8r[O .4/sl5~d$`e=?yfFl0b+<_CH|ܳ@DeZKHOH1zsGb݄zF.wȟYɝ` TdN+k--'66RX[B` Pk:w$?)<7sEX!YDh#7s0J0=F##5ΓCj[q/g-%7"^xz [&ݺ}%( VwE'yfEpG˟7QiL %^tl΋ :&6ݟ2h>6J(Zx14K6=%mQ駌^5:eeeng@܍kM&kZ1erK N5nF QO>6=t(ik6瘴lB k4N*6W%UY{ߗj$غ'ծ!@cADU? 0OS|H\h /.YFJ ?T*^O]@0o:ø6%/o:u~$Ś]l{W!z,Y!^WVp5mႫWRO)a˹֛Ǐdnظ3D;fvݹx%B`?,UʷAnE:Ԣ:ZoկS>o(FZ$4^P!m)yy WS`H{,B1|09+rd$r htgӽnn=]Pꬰ+ &ADqQV0f)L}b?=I'Lga_[]V0]5 EjU[D<$ q @!Rl,iUV:-D><33|X-|j{F^|(,H{)*E4}q%v)ۺ(40OU ٖ祔ߞ|Cw*A}s2+!P4ސ3j ^k*6ͨ,is@#zU AZHyNKBL· n ?ꡌN,l2W B@>.֌4kXz }=HaO?uy! JLxrqE.o G "1=9 ZB2a@N! o7xPWb_;jV_Wl#h{V(w YD.J C8N7\9Cf`Q5g<\A'o{'xhq#NDzKfO}c\~xg?-G^|(MlY{,)J+߷Rөxw"Y>Thtt]A&x!<1 #ZGZ{e^o;LdsOD"_lL`T=ү5j}s'>v[2<_F" umn*kK'"&{: F\U@rfzmY/'na̤)*PjA OȾ"^nwoD4¸C9f0#R'Pr5 } qIg B&߲NX3|}UfCY<=;#:mkV= ].{KVGڒeJ]>"i,GTxi3JPzq&q|dd36ɦ/:bq/ܱ{3KJ=E.p5n>XxJ|)ˈ85n㼱'kf9ODSͷ6O W,[tDQVJO@ Hy"a%y[q#_m ,U|͆iT&R0QIZ\m&ȋn8[)P훇jI^ XзP+0OӱFP>F#@ys/ݚFAvcnPL旳b7kx]Z_eXr\1pm)DO.ƨ !޿ s$}PIPqHv>$V?buTyZEKsh^ƥ?v'w",|\bRR剬>q^ ŞTAzDWܰ86h ’q@ٔGvQ ~XHbz0dUdN߮?bo!\cYc YcMQ_)ltb3qxb8d]~XwURT[mj68scc!A4zGn: / w툐"0!JJ>shZgVa17-Lۢf۝nb$B$k̆P|["kew,`o[|svS[F]kar&֓ Dy;ϱi7 \/pbVG)!?-I1.~̝"2зmT:5N!n%gP1E= ]T!K,w9ǂz`9!r#WЎwLҖJ^ܬ? vv? E;utwW-Br1!˭j.P[ʏduտ&f Xmی3Eْ)kudUbGZ_ƣ(%,p=ՓyN0h"^VI+녀c/ \xpM*6ۂ.Jծ*bz/*,^̵ C[;"q>DMdba7!oV/ݻ3X*TҹEItzV9rdM/VJ9ѓ7Ð!mwDq@t}/0o,3ގMw$iM[@roAq)]b FML"^w@4iTualxxF_&|w7ĵU20<~Ff_𑸸:Yʒa!3Ua;< 2'v"'ת..WP*5{G /wzw6y|&W8y 3:;\4&?`"wo߮vǾO)EXhB+x zJ;wUh~Ä{DS3F'"I5~a9g9R0rI# tމ cl=}kwf4"a'Q!w?$IP_vIO4)J_G};*Bsݷ%0͎\G61w|Y'z (UpwUhEh-2)L* u : e0(]#x\.Bt570QXɓJE(Nx3r/-E_ 5h4~:Uѵ"+ԕaAIdU-KK>l,@kHKv6LU&~W9W,.7ħ2G'J#tӿoPm ?;E)q Z_X ?Xq7$EWoҠ@xS2Jp5wz|}Y+l .rTCT䥊iġkO"R𞫖:r#QKqJ7!|]~TՇaqe^} FE+4r)yc~▂,"7vR̓VD?-UN+lE&3j|y'VwiwȋE67|avԣvIn=~_Aᙊ a$݈kZc9)b@D3R&y4K'z-"vy1hʶ#"7`w?IǰO[X(v)?D> s5KĖLЪ~QZC(3NwtwsIK`0bwW~%|JĐRcJ?̗lSvku|nKU7Y>E\c뮩*\ K@YzniOs2 @!.xԧqc=`$ yt5F/ɉiO%kZh>4r,00fNAPGVw u"崚?GXD4Ŗ5?*T*{d%PԽࠑG2Kt|vq>(#7|0BLSDg(G_b%}C#uogǗ~Gֳ?h*~&mmڬ@hڄ3޴Xu\@!Ykp (HdΒA4Xp Q}_O<4C64yc_T ~B&UmI&^lm^Z..WwVY5H^ ˳Z6H>\8J 힂ꨘ\:*;M1/jE>OXbۘ%9zI2ڡzo63ҸX4N`pF_Mu X9yݛlg/d8GR%cVy'2Ĩ4 `z&J%pc_'z,8m$[&oRhi0;U<K#OkRS37cѽ?qnʮk56s٤tyjT锿߯rB5MǺNOO7\+/jHQ7fٝq _2`QXCUQܽ hI `dՇ%{j+*sj*ӷ./z, D4:[q]h-^@Od \0L~G'"TLS #,IVaWb % M5\xgTZYRQb 8JJ7_aƣNO0ȝYfYgQ]`L%5(8}WDt>ad߾!n]kgU3|5L"1N@}C39Ć>^l` j<;HAiHWaxv?{ET@ᗍ8|u*;c,7 ؒCn=qUiQ@ޏ75LAjd|Y{ϴzևw HwXꜭA?idnhd\"ogAVvv&HU^Bx^1#<ߍ. R+L]L6|ʏP.S(2&d]NoQw 4'6(^]WTqBdշ0lU7{>e:S&c?>p:M:b)胟N]9Hp$w+}C`~tzAm&=󄾀iy0PGnXƩެbo;m؝ Ԫ-V܌񣓬cBj:Ӟis61J{\^lnH\DCS] ֠y!IUk+\K=d)ÆBsok2_KsJ? 2hKjptƒؠi+_C>&ؘxԙ< o5ut.ز1j5a>juN,(3+@l>+\ՊtƉ;F'GWW;KىPE P<"7ʔOtݕ)/ 7oyP~}ҚJrލB*W+<[jcd5\ER 1vaHeNxld'ō{3F\M@/X#2pM+Emr^Uv,`))ETe?Ch 3JsWDu,EN- A+OfЈKS}hу=Y8M M2MϒqM2:DɉX1Knl Ll9BZfgHwg$8sJ8F e/(WAAs[ {Y:Ω—4jQJ,Csx9ú!reZkLTKQ(Bqvd"` fŏ1U?<Ɲ^|k@FenX̴8F؇ Y&hHS9u;cަ=h`A xʎ^.XD@vD9F@ _l[w &U]71 x WW4 YP˺oU[ʭY8de-/0"dGd}qŨ|H"=j23\_u (b5)?gd>1´ rƚ]#HRbmHïC(EoJlM|R=U v!2uZ.*Rpnn-8p| XP z8%u%tɶ+S.jSp5ΨRM:DS:[0Hmܥs85$zOf\Y $ew\TE"dW!ng0WriH{@scθ\'I*vLݱ&WlZo=R$ҜJw8d,,j:c8)I/-4ݏbTGzMaKR3JYvǷr'Ag7{fJ$53MhKۋ z4)>\ xd4 \\A]iYM P$dsjI\as3K+i c 9QE ׿AQ?; W]YbXt*D/d˭z/ <"t̞}VE{!#SL{v}?GV!Pwk.M΢lrX`2k:1^yB/;n%i -v{[5>͏y X:"9k `@o@&&"puuH#c#Qb?J(vWwK)#1HjㇻF- ޲ExATUw nT~.SˏʎI٘맇vhaEETG>%r{޷˄*]& +Rl_W0XJ(k*#fcİ &xN.SZ;yCo!Tx<+ Z%AJNݜ\ta.Z&ŏlZm07% 'W^9&wbfP蟵*z4Y%~A5_ģag\](U+F;PİAj=ڄXe+۫?~#t-Y^V44HHK\# OkdTؕ-nimq;[4Sw/tn{ ᮝues$q+< .kG>=̮B@k1BXcDrb>!]R=5T JqD@r*^IJ%w EۅgZU-pu&pc%gЭ,m7PttFS(m9 {Y}Z%W[5ȕ#'f9ߡ. [21,Vz`-2 f:9#9ԮT0޶.?DG"\M"`LuA j<1T56oݛ[^3d~9 HMsh 'K9NAMoJ uN'^G`D^}8ș`H&.2i1&OJVH;e[# 2VAw©čFp~b_آo mƷ6_ٗ~F\V:Z} t-;ҺYjx{PPg~׻>*3Ltfn(1 hɎ 8=@\1 g2n66 I&|#wE:TNڐ}qi_!n{4<gK)Dͪz2 0g2ʪI`Ԍcn^wvUçJk4l]Ζ=െ^>lL@D%LIed!}A@=)!d\*Ev}{ghǐfNVb 0SBV=c bT;Wɯ(*FiK=ctOͭ9ii" X+ŘI5E ̻;y+}C#dhb{<{yvĐS/4I<@yD}׮fHu[tUm[PY5" ,7?IR|_TKt_,̀铽K(T1ުG|m]LN68vm,QSduT܏ J4:s L@kt e͔L6)%9 .=#ulܭ]=P.D*fbcɖ2 >Sg^%%fm|@~{H~.B?/egu%<@ <`g5+soKxIB]ȡXs&i!+dHk}UE0ߝ#2mPp2`wP$5ClxHi?$ɪzz1OUث9Z|^;4)`fxE"Vji,tu x.( R/Fnmة%޶9`]w??)!,v^X/YfhssXqZT=KW/UXڜ~C!P#s]ab>Y˴u@^[x\f]&mjÜțcO-??xwPcxq/[k%[J<PYaM1e`7OS̡׎4uvn9|k-!%)Tw?mG.. ol*d|Y󷰿-SIj@qAn.O+dYJpOG ,=;7T\^fM({E[^zfh{MV j_)F^Ce8QMf ~u@ZxsYd٢f&&̹r>ڜJ=+ẽNNHG5rii@Ӭ?F92*RSnllT5p)vr#{p1*`;^7E,fg Äեd/Djሊ8>Od9jꁬ[.gi;]vؔ{cEu]O D4M+T\B^\y Vq4Jk\7>'t:8k.,~3|3.Wj#h"ܾ]GN>c%L\$_Zd SrֽtX&)8J2l4"u躘DcS*HiQ[Mj٦ Y>g lH h}7S-7 ۥǿ[/ ݀_~! P'Aj S>U}jj] c|,X~0Pe94l1L#BNP,̷3ysMzq2ۖjT҃'֭$zhk`G o]6}Z 2@_ :9~rJ݆8'uXb{>m%,|_Rn/ )1F p3ycy#Ftk߬~{%>6AK u 釘DZ9H]KGY%BK*e ԇyӳ^a+N4#P#/4+#hs8t'CI9Ocg< s ^)3mQ-WtohA.C:AEK\ `䕃4B&N:z꼲܉L {G~k9Xo6D"?zh3Q`NEU.p\%B{Q~9zlA34Y"]?XNY\WmV,C&ngx tQ^# F@nlsytv{7V!.<~"q2c#f'J仮v^hVXU[vcBF^U ;ސJ_.ZG-,K1fWC桱I{қ{S%Ћo+-27AY{Xkq]O?="VʫU(ejR7r i ڳbo{F]JɦXoemA+ٸAox$RVl#-e~flj kr"&AcIz/ 0N7_eHUn+:qC.,qAU7`rY/c`8ԉ*SӠ¹D]ÒL]G9}Tcڱ'b6:T IWG-)ը/;R.p)g1&UJ"`x)#ha{p|MN{7} a<X-Kw58xtxW/L]=׀syJYiO:yO>#wŕ_-u %iXKȝ*D6> Ӈf=1Dk/b\lo.m،XZ ,kCa{$?qy_=_xV n m;6yx3Dy+i¡4E7s+AW%ȑ93rJ,?s.yxS>3uGb-\|-BedPhT]}ǧborI;oH'H3bw^_vK/ʗ?8ڼ?̄FGEh#&l _Eۺ' )ukboRA2A(x;a-ˏKlt@Dc˙M1d_L*eiN".щص\h+}nG䔫xS/6&nm Y }Tg'ǹ,g@;< q%}7Hed٘cԂ^p1`nH.X( ԑ`% ][w" ݻ.o 0; %1 ؔ4b($sS=.Hm#]AM8!f8PWJtɨӧ){loJ$jfdsdl{+Y߽"@+1aZAę~@%1 ?}탯|\a~՟ڌI#KzO3}$E Yzɂ@yKސrLɟ9zzDբ_2T&/[H:h!lrpf.a>2;ej+O GAm0ۈh#iO窕j|2imqOËxWbtYǦ皬Y2LIeI ʏ߷,_ Q:%G{@M [iLNeydZ6uFmdhJ@v?yZ%$3f1& wܟˆhmڊ ۂ9mFbRڢIa(4θ?&L0Auֳ> $"gќ)}cuuFaYl! o0aذn(s:RqLK#GÄVmZ]N[>ZQۏE>ZD[eABooҰ=7R,69F!5Awn}11EƵPgχ"8! QXȁ?N fx#ttLǽT5홱p7PH2犿-)rx[cUby' D"_lk+hpB`]yAԄ7BSA;4V<5'=^泄yN{=+&dQ]}.tO98%~JGqnœ_S?75jCh ԪE"aWR?"eu@acTTmRS'#j0I~0ovUy^ ܷKw_3=d0鎂!Cf0#B#£IgGjM^F#:<&&m{Xli\ KcQ:.ݻ~DKC覢]_]"D[,_jH7?KE1}y臯j|8(Ɣ9Y=R1U?8[Y;l#EA䟛uͦg#Wx0rȆ~Y|) {5B_]^dVEW%PPA-i(7שÄ)à }:hYiWfe 7Lt]E9|]$#%׍#܋1g?']Ih|zN9Ez"y׃ښb'ZoRSzO^,ؿv\[aN,:SZMᦍ S D bǏяcf0qO9tc:jʍ;O3ĚLyVwz@&aVnG70+j%I f o1X?0V8PêK\l!GL &kяpl &ǻⷎcED45R;}p[QWq6L9^j2[YUYe2Ý3iGu+5Kv؍[m?Nl+FP":kAY!ΌY4Fb9UmWK$^–MW-/BTa~e:zM ǒ`U^̆)YJd Ÿ>$ػd"6)F'k9;ƅ a)Qƭ'Y q}GzWI4SV̋/^2r!P5&? q鐽O~y kԗALBkB2 h ivt(YW biVFib緪nKʡ!&*oO~IVJbԿ7FԽo*ls33QeCՋ;OF7o1Է^@$AQoE2f-9z"G>ή7J?=[bwĿN1UV,I uDf/ 4u/Qv% ,PQ!b< &WVn'&{g=;NDAZ L= rP )LXLCΏk[0#Ib?3 1ԩ6s,b?. cEy °:kxUgyt]#L?Z4J̔h`K>nщ( XT!ovPmnz Y/H%ʈ t@ |z4٥kP4xw>._i9ežO8~Zi;ỹRLM}1( ]פ+V_? 7ر1Iުҹ= |Br:Sߗ`dw- m WтC\GǪ 3s6J{ȼwՑq>NOrC^!92k&Q/Ls%frƭlRUE3u!'d*nVt. lO`= عR"p RE#+nBLu:/Y l'v-.j2=EmY*Uۂaſ/)zJޣ \y{iD}(I-s˼ ITIJ]GxWn169B{˼0(IH\|FQ/^׿EioiJ7=e۵f骥v3.l17bacQ(LI z*6Ӓ Π럺8]J R0Ӏ({!is0Mub<Pݓ *F#}i%N>I zI1jҷauVܢ g]j<蜛'F>mJ׫TP-ܲ56pEK|hwk;5~SAPKQ㹧W+YXâ5!Y BlO&Ih׵mupR0?jZnAcc Ofd3l7m7PG܊_C/wtBA̶0DE2f|%ȔgWS$฀%F-.JhV<Zn!t,beuՖkC"~)X_ Q 5~>=}X|?y@Ҝ^xtXN CW _;Mq㻵Pg[|3@c3mt/z4CTLTl_%-ADm~5R+BIHΚ[M @U5]=6  JXMMj{;-}*ӿģ,wXtPXo}]=!ʓfۖ&,y!`~0>T =zš.μhuTؼn#(ɪ –mcq.mA{Ǔ 2#M5|[ ² f51o7xJ Xs?x|iqC@zJ  N?a$}eߒghm1E,!QܫKAtҺSro*i6G)BŌ@.a+L{=/F"9jҍW\_anhۃ^ ºT*x$:fBΒ*#q1\qL X'C*bVИ.oG}SZpׂ`۷\س0)=y+XmNd Lx]ޝڽ]5|HNwx5?+wc8b 'V<iŰTXVpg ,]9h/9T`)aj p DSy'&;0]1b _43X}pȊK #;&=9;;!:HNYB3T]m6 -/!fKÜvuHy#2Z_5CbH:SvLPhCXWɮLMl %;kHb͙) 7ɹ],7)It, F,.@([l<L+8_);6+ө~X{|.;[ ( A S?V=ABWxE]%rb֍ll^(%`\U R>Tj#f:$_xY`XyHWS _i g[o-=KƒGS dm6׽&*) a $zS.`eXY<WX?t6^?bvAQsQyd ֺai1&V/"|:U@8gTM9o>>|NMTt?nBr2O Rxsmr"Jq)A<>$s(@-Լ/&{\†r}+ "Z Dmd>ʦ tgqjyJe9E,[wj"Ɏ*1h4)@X)%h>]RW!-􄯛"f|Dd*K2w'6nth&k\_I|Aio\`9TWm>m7Se_\15ͬIUi*^kAF_YM4s0`zs [ [۽sO$W> 9h-`+<39jm'e\T eb6i4c)zہWг^pӟ\AO 0=F@7Z^>.,̞Ey\~@7Pq&,1a:O pj 2bīΙt8LeAYD ;I yt+g$fce P[9cb^REj/J!В8- I|MQ\l}ZbC L㒆.KlS0x*iUcwv i .\-k; ^S6.Ɇn鴣=FZ竬U2o韴ԃѤL1:6][o9B &< '4o|qʻķz2AV&h#m2׷]9W H{Z+xvUTheIb F䚍g)l؂RyFtЋӚ§ۉY}}Zs.Р_A#Ҋj8CĘneJn-C'sKAT3GĪChx.FҩҐ{bx J_M^3%2S3lS1dY];j0ofcܜNxց#139mhAdU|pF c}x%Q;HasN8Géa[ι&cr g`EJBqzLeCnWUMiM\ŬMʂwᾑl`Q#dߊȥyQMҖj 춱 [=FNriaʮqi9,sg|&Kw2]οXGk0*& +&b>EaH. Ì.꯯>v;eZhVF_&AI,mE~K1E(IZ!,-[ѣu\|}p I o(E 9t$,cO㏴ :/~Ժc_қKtbl|}5o.L.0oHwAvNarN Un&1{\-4fUhNwSzlc,|-|V*$r+,ڎc1iNЦkt,꠮BƆ]K*.M5KQ ŵSH"VmkH=q W9l,Z`,AA8Y" h.=Nroˍi|?[Td4n-Naak>f!g w yc=]d)',Z }[._2s9#;e'"+±|ߎ3Jm=D>gr>8Ka*Cldz\ 9Pv~G}S[3I)JG[g*v??WӇ { 'Vڬ"5)9juybڿ)gAXeƯ)2[bIdmQ:׹軕6ʨy¤s89/sd ԵJ EUJDFP2I?7"Hź!cJ6[^1UTUZ'iWC4QQi&^OJp% muן}۫q>*7Z1333 _VZ  -@J;ewS w.X̔ϸ> Hf(p%p7^:e+^W/,Ng#E xiq<1!.߄fBScKQjA7>5]PvU򾮗&5 G]l\Smɐw2BENVbDqO󙮟ʖQ/ѰmtygWmze*HHaz߅ B/yuّ쒢;Ij缳 +a+6,ba4dI1O@yLVC=Q]jǥh>;utOܣƅ0ؼp:rʄZ/;U;K v%e{0E:b`eyS݉hMPbgV?UwRPpT/LHa4e𰪶]&t}g#_jxd P+uIRd,*Ss%ԪҴq0Ab᳢|.E)GIH.HC.te-xNnX++beVi|vH WeL7CP'ia~~pVm2J٪[*&1¶lALs} -y֋>KV:!ҍNvT*_.wČ:z%/zԌ~e _O2ig|xl毦D6Bϑ Ҳ0nT_Xx sf9 <6K#RkDocITIv=is=;Ci)TdeYu@)&Ƅt4ow! j@Y!o TM`F1JK]!s\jWSw *ZiYfXT(Qahڔd^$s u9U5jI@D@e 8Z0S{dr-%yo!}i!^a ?](sOVF pRIu#w*TNn2w)kjHDHs+I4 b3NU-SmWg}IZJMbVLPM̹ٔu.ҫIBCUBm &2d?7d'\׻obBta[FVg>'2;W P Sl`_{8+J+ \K!dCwC.Jba'Ŀ8?(FVnrGM8sJށmB+駜$ ֶ( h"VHbh)^W#- n>ǟ}qsWQ-}d>PZXVx_n##D9K̖FHjRi~b;|ۤM>B'Ү.8|?V:;H2U9+E_gF|pUW`1TP;tZ?5Nd#J%Y4@mh( 'Ѻv1Z@-.ã# 2 H?Z8Lͭ,A?G}:(hvOϯntonIip@w0@'Hb|M 1_aޮe2 f$㇢|5e% OϓIE%/oiAW~,XI2*>&hF9z֧8Ã7P7s{Sg*Fu{YJ71 _9c -`Xx螥Ġ.px7]W(TzIČ) JU8*=j|*˅O3MYynYhׯ,Sj'u<ʵ8d t ىNG5TYjoSP;Q> Y2،QV/gk-q h;}%R6iҠ'cff\;KXC&Ij6GftX׀IjC'pb_tТ3 11a>D&T)qj~kݾO2Уn^E|L $ϸ9lrCwia׼2%;PIQ8HVjuY'ЋwP}2lQY͐Na] oy irU={-G"${QOa}=?oϲ,U +qf`%{ "VGh+r.>抯Pjސ`W@  o2p5@-W$x6uB>YE,ۂ,m8zD)YpyF\^Ծ{'< -)@0| \/r^iQ5Z+N+8I@W<3p9dB21.S[|P t )qKe9'ʪc$Dd` 辩٥mFsuZCrcP淄64& i\#=F]c0 9^6Mn,ֲU|ñDwP(vYHJ|xDJmԥJRRT'gG"LG5M+FOh6>"VnF"3BZWU.'{ 4EOk%&ʳCgPR*,]y R}7C BDb1bQq]IqD3]WQUG`9\"玈_8Da7=i2ȥUrf\;Q!z9 iw }`Po)f[lf$VPr\;ŕט+jGkG[k`ܘcl3ƕilzKQg^Nmu$q\%Ϝ.Ĵi4?E6U㠪VO2:ZzbZK$aW A̝-13er~{oF1XaRB#Kgfɵ4҈2I wx$Rvq(\E~7d%x"ɏ(Ee|VZ4,tFA9Su롬'E5Wއ* tz&JɂEErmj*ecQﰾeNXW(CH~az匪E iԦX_eB?5|G*EG6{-k~[^$P4'c﷪ p-w^d- pӀY~.i뀴f. 0x&7?.A4SV rRhA2Rm~aYK9jQb,*I)V/_]'Y ȴO`aHby2SĉSP-ΈE簼ۅw2F 7u A"eϘ7T+S'80[}.lժ|gCtj 0rbzGCFjusm_*pRttYy=:`+V}e=w:lm$/*\ʣA9 V OYƺ"̱8PSx0EX`*P2j娥vBQS eV7;df6=2TT^Y;so?[cG^aZr;b,rl?I_ʬaTK ㋢4bDyGO_PhKYu=r$ ȠHPYAR1n ieS7DF"Xy4aJ7x 7{# aBj]XrfbSʄlƫ›b*bKA Z6`|sa3NG, ዻv)G X::& [k:Hr=Ҫ2Zިc<;rwx< ѕa!}Mn Լ^ :K-͏3f V?aLT/!V砅(?hxrKy(NiZ(/4xSU[UcQvLU$BaUi/NR2yЦHC裍X5 s{zv^ 6[͌ c2 pb}h^H?E3Ɠ.Hswyz ]@<{mu}UGxR4jC [f=x\ِTl?ZkG^3j\LL:9g $Y`J9՛~tܱ3.ϔ/ 'MA)uyBfS!(9!uӀ}q N~3uOgur龜W@ipY5Nfn|LbI“h|.঍B ܝE:G x?B^_ UQ N+4&l52z7*IjŨlZS$੅:eH%O&[del$/ɐe [AԾ'+[{b;weuS !3Q8"x3\6X Fq y)N]^(cp6v9lMXnvՏd,Ң493BzWɣָ|O|C@%KBִ[;XN6mai Aeq*p r( NsG҄iK*{ӤZٸfL$'akQKL"qGXɴc s\f6TΪ"\v0(֋}b8BiExCb"pyL( NxH]fӻ`rȍ#'<5>8V;߫o=AM,*qy*74|k.!W vfT*uE>5Q7!0b+2b>h`{Ny~~\ I!XNHk98Vub\!_t-:jWBt@oInF7$FĠYP^BKO%Z I/e2*zE(xy'5K igtdʎ E) Q9ѥ&@QC"jiS:L5k4PҁLB<} qz-݁K!}|fK{S_ @AȄ+z-~B&.bb8z-"e'xƞ9͜mbl$re3ç_:B}fѹm3mi 0;Pq:u‚'4Ř-\bA@ +T.X%4HC"]廬(KKk4XΣS33hfa//Jq(x_ϡej=Mԣf$ŨA`]Oq !=V@'b]Եl#Uv{-:ԶO抑9:6L{0o$:p [OvAZƒ=ƪ/^n @@nn1 ?iBW~:f?ҴmQ;G8إ)G`1lYh<:(K =idX8ܤ[oe! c"|ܚ[ cN̈%Q;-.Z}"+-B^{<* u1+@Gm1dcSk=fnnv8%w#%A"ZGrZ,|=yыF1R V$IU]d@fctߦr`L8]q+9jSc$'u obs&M%P86g|:߀*䑦GLfvigX120ởKmz;[W& ÝokYgm gi8-;Ff_{>^DapR>Db_,B7-rxS-TD/HKO&gq!NӤ_&\ 0 mY",@ՙ[mlNӎi@sf7Dž]ܸӃJsbQf{x5q9iC9 Z0MNbƧ>aK1'8q3ֺADoVJRX2%DADb9enq ]rX~nޝ2ʙT \_~w`zt o`d6Kq( ,Z> X`:jkN>-Si#FXAgٓFN̛Vn9Wu^~]T> DUDI"ʝVgg}:wC%{Ƶ'uW.R 8Íy_>7SIbB6wTе/5J ybjgQ]ÏdP.+5RS\9QBG w;i%х5!nIa K _"ns,c37(ƾF*L\B*ZWv楛Ali<9GFs_R>C&4;KHCQ,Ggle:UE/#AM|8,1Nr/4EioErLG!afѰY0@JH>87( euKH>j*y;Z1٭jaBo*##VF }{o'N!!P# \kg4h ѬSw`^]sA";iTG{W_t(:[ ;|b@}⢇iVӑIGg69Ss:2d07K13iRGsӜ Mt4&cT4Pܥ.yՓFfҵ͹]ߠ6 xwp1k(P6|2 N E]E{0hX۽ zGW/C(ׂ^lv $K#EKn77 7luhMiD[?9¯oh̫<: X0hzHG"K^ c ;25ԯ6Ձoأl-w/ 8Jlʰg N2O-D׸x C"ms #>m([?=熅ʷ?!8:XVilE J>&K"G)]43r*TJm-6> *W"oK*ѫUAWˆ4?c[5#k5C#p$+=>QH$[ƾM>}ڧ Eg7Gzd0FAUӚbWy'=[-Af|}>B~\7j <1)Odrns5G&Тi+#t?MsFļy*{ >z@֓B$}3Qd> ڽgH^8q}`{]F;]B~fw/R]^kX[$ ʌ GCl Ԓ*kiD}mk.cV4!աOG|(мLKhK=%#r!xNPr,+/i+f9I躳i>镭*`JI6mN'3s_Ek4H>LƣNO?k.'/fϲM]EW5#:\ddo +vx+ave kDE=`X*PX.t?GT]m0|wO7jQ㸤akɛwxxJ!TE۸X+zʲ,A|$t{92 Y]] %[~-ZS0Fs Sm)tA [1} Lr ou/R:)rv |k[+bK74.:mwa`1ԅo$6u,M0(NEF:FO12D 4&%aixIJ]pmsb:ovBZL^QmW{@]tݩX 8mOtig3&ƥNzr mS+(cߋ0_N4 \l8nT]IBJ:!۔DS1cn̓n,~}:xa-I-Ge-( os3&Svw0=M>kM?0Fy?GқHb EJ~ݠ=>I+f[ʮ6IJOт?!O`s"z>" Ddn`e1#J~,)gT@YH\!Hwsw͓ [@;^gȩ0H*E(>ò'd3;5u}lg]A 7%n͡D࡟}}si'3W 2D m aHQ^DTPڟ+*>97`Ք[-8/,O+b ObbExZ&ƊEn%գ_kAK8o߬Ѡ*շ^R}邦 3IkCw1ROdeM#r%7}ػ`n.2SOZp9~sf쪧ydO6.t DNzJm3 5Yݞ uܱP vQ NxAlW' W<}aq?/C̯XrD1ntT2 "ö}>N!Uk5@U6: yASY"QEm !w*`kZAjZ| +!2E)֜V$bFqלrڋU#Tvȓ{8wUHlIa~i(@~/EШ3:SPw*|Wwv[~/6{ ,s7)$jH[ʼnD/(Ok5_b`v3C]ԓm{ڃЎ]ۼG)AcvYnÂP4ygXKU9q&IϫLu6AQU;$vK68ot!o5 Q '9l)a47چaO*u=𵧥*I}\:琔%.R +IZ[Z l(>^SjQם#B,Qk;. +|Gj:\+ >,n1fP7"eJ֪xO:oɿWh#/21q_CTbʰMWK`i:o)ؾL|>Č4Q#!  \_Vz:~;ZzɁHM{,N(>lG(R!ݰk= P,Ck\[ٟ;Pbz%i2?"W^iWsfg0㴔ȨZy`l iዉO7I426*\^vI|o~'-3LZ{lt+erCՅ:.Q`/uDmxxh0WnrIZ7,q`H'<9tA 4.9\Q*nsQnT n!H!=n(Qe} obn*0BR;NP` g2`7$y,Ctk;?#"tlY$OXWރGp)kF4@F粆mLC Ahd%V] o?H5 s ;DfQ"%#W;AV^Xqhev불Bi.bxqs\H!lp]i!3wUAuy|Nl34bTVkKs5). Ry`sy=S7#TIK8 @HGwT,O$_p:_8,FiQ6z>;+뗱p@P )04{j[M#cV6(yO:szTxP[Y=>2Qk*$5V/* T93no_fbG˹E)IXhs [O꺦_U^yӷoto ͚ G 4! TOyX$n~"< Ec5&|_@eA!` k#{Sj/9B st_Y&9ReZf. >MkbKYC~nEJ՜ F= f8gNZV/F B`B6WpVPCo84UiS޴dٱΖ5?4΄yxX MFґћ]KXJY[AX3 y~7J:>Oo/ݓCeO )5t3Q1i >E#S}B-6ƕysEMu'!2Nv?!QH`ꁤEǜ#zh]p+|iG5LN&z i'vxeO[QΑ`lF]Ӗ͹UKmIh{{X$<8J~Pv3 ?7y&3 d=1SH>V~{46`S%i\qI'gPL^74>nZH-.fmvyMBRVmatJI6_ұqH˘rѬ?#$*>?*tz#dЦ6dPhPKPPzv;C l$8bgQbE'FD+GeKjk̽6j*a@̙͹ ӳXݐ*v>R$'7:Xvy.QެCl(2I:B͖ jXN>wKх u+5 ns65=`1gzS%g(^^5'FIR1: _c?h-5j{\4@ii.YS,Běn;q_FgX$x]Ol!oس&3zD^9GF@K5725k$s=+L'ea&1`9_Xj6o[5b m EoƝHx6I K4#؈F*)w)27F&f.RWtK&Q` _jz2KWgFzʆgߥ NQ14Zf3U2*4,W(?xWDQ3]Q8q^{"'$s;\ń5SJ&xLyU Eg y0b"'sPG GkGΖaP}dHB}/ c\ x^]C>Jt[h?m +(81FKLtQq ݰAHΟ}z ]F1lL=5b?;IojL'v}Rbi!mTmCۈ?P  ?Ht썤Z9#7hxcz#Ն}%j2o}.zV:0rDG6nu/%@I/Ȼ%mDR%M'P+śD'ʨ{aW3yu܆2Xq]? a2NqU!m-g~,X;/iwiz7 O N/šH @KZu&Z 7b m2nE_ٜi3 t8m8 .E9ZԹj~q[Pf0[ w_oTƵ7\ wQX>GqcKsVm ځX5+ȑ j柗Y:㔾sʸ7J&81NԬk'$?B$V16g(`&_UIrՈ3:mX/x`NӐ.>vVT&8l5"!I׉O?_}o$ߚƬ]Vη"v8V \r*H9TH$@yys@s=~fe">d`i(imNS6W+EuXp5Gv&h>%h~&(|ޜ6Nkוc;Q:X(;bR]g]oD# f;=_C!Иx )#,tyh@;~ Xvn}Px_l, w`m6 Q:Qԉ'C'rTNz] ̴ԏ NkMN-86ןԅV.d:ac629ϸvON\`ݬj QKt.Mu`xO vI%LI xd6L#bbG#8*Xȃ-BrX}p r(gN{wΰQY)JQ @Y\uS~2>^߇ {@SӚ8ovV6ez\ҺÚ<8L ^ԍ1䔴mZceU;긼䷽g|9hYg)GYXtgўq{bE g剆 s5yMiZh @tBTLuPjJgJ(q%OEaօvG_O &p[#Eb ]`]F@a⊃7zAQV@qa-B@Cp8=vNEom:dtPgeO4$䭐:ퟞAя/meD6RkL:f<̩O4ewQR,T(m"tm tgRU?ɗwf `9U@4磭 3Tm6*E+ʁ=imH:Pc&@ȈJNZwDj^ԾdցXkp.V3.Ӿ-5<np28u_.?nuƴ-"[.řS"EjMfu%0D̆P>;+ h.'fo6Pb(~lqBb @k2$+),ZA&&+(mQI=8oe~[Tr3]`rԑ2Ɗr')<V ~@  &xyBOeOWK8.*~@C3vm '8 PJ}u*^ZUdN`PdA-b-2 0pr%DW_ WXO~ryyczwTmXsײAN%Ƽd>oxHA%{އJD,HY\օ)s'> 4?':)zT Cw>Zoxl' vrmj>泝Ķ$>ϿG(Y 9W[b״2N ]c4o^ Xר,ޙpn!:]}8q;aЇ8Hb L0f&(M^G\}1v2455`E _q!D7B-QORISx7n/QO8Mⱋ ǎ;&VpƦx~kq}O{BVsv6K~1x Kg\q!&D6ȯ DWji[f3;91[|zmfDvCO>[F42wi_udqfQP^kՙk{рQg 8Q|78t[D[^yUuI n}5p# 07(r=2߃,rb={&>}~WoV4e ýlM)!NV?Ҭ1\x8@PVJbv 2úޣ0 l^Wıj&+铊ph;C pz/v͏BBk\Vi@\F2bt#s R̆}-IЍ&ft&>֯- o)HmZC9@}7;{mD)HеA߿"buBڣWO2\ lp*A1Nv0Y `t.c;jhn7TgBS# Fc5=Qu $P&ZMldt&m,x{j=C+_1!?GE;{IA(Ztu&B~lEseԌV+{RQH@Ϙ5xV)_BatCdi,)QYCO֒o>C;sLlJ03hb+5$7d(6{GJݺ[UKjv([. V۵,xt D~IեJ|Ku3:napti`o CPM])cԅm5ʇԂ>9' Oh;B͒6`UN\y*b(mg)i e2xrl`>-|zkl;L[$C?b SS(jFyfGz@?hc  +s 2Ii8609q#?Z{_ I& =J3zSD  (e̶\ϓCյHj y*ňapQ*Dp)4.Bًz }R]Wkz !pf[#q dˌ6yfho7tNv}mH_F_kی5Iy*RZu Sһm/[ٸh6hƺJyj{je[Lj(gWIs^ݦ".dU_#rK|,}-0R.{ߜw[4.5SH_FŲ͛䵅MXxi<1̈́] %``n ?ۭڀ<ˮX-4UqS7Eqꢰ["mם]4P%1EO.-X.c q@!&hqS@wABICXfȗM]mŢJQܬ:e`1X4Q,M[9ŢٮYڠm6cOӺo€)vU[.(Uvg$6JP}}V}=d}tL+3S:\?qz=-ؽdUiLځ ;Q} z #ogW{zuEL-'SJĶg a>=m2:!빡R)@#Z8rak@l73| p/!HykfUMc'{ )Jcf,qyFV"ϖ?l w@흐?ŏg MC)_sj;e*s?(C.9Ab\"?h 㰿_YZc (jѥ +WZ2NH )Re{h{[óF$Yfl4̑U% ȓR͊`9'1+Gu;˿'GmC׆`ƖÐLj fGXqЉ+O<0j@HײdF)ٙ윿˃jp}\юm6509s"זx/-G{ BFۉ{@9p 6v%p4R@ .6$%*+Ms(E?s89;Md }tӼ>K70],ڿ$ Ն/a#ЍXi}NiMLq.D\U)GNVZ"&Z.j!P%%s%+T)L3殢<\:AoR E3n }l,6 xhFq6.^M?-oGmI`fqygh(m.b}Ú%#%\~ J1K T'>xm(\wC 0p}PW`Wqo܎7"fvn6} [\M (@P [ N{1y9NZaW f8aYo1R V.P%m%Ll 3 XRGտXfڜ**QC J+&"H;a#KlZop놪۴|~nfÃ1|(/u9<Ң 8iS#jO{:33ZS:"rk;CA㶬U~s&)+݌E3hI汼ckɠ`*`Bk>}}p=n8KQ;%`zc߹l!Y]|U=$ϠbC^t|i)f/. It5eq}}CJWDkLqxsְtpj,XXT{ W P:O`nlA8od$qGH@,]m^-\?g乇=IV s[i gs uG*?h:_v?/mMc='5[rO@^z >hq`[Sz,9Q <s9j0[lXXk,BEO!K٧k bK 冟ieh)S~k ,^cܦ:LUS@.3,N!`;Y񑭋<N >(:dȕ& LrkߞLj_c;>ˏ$?Hk4aLs>v)JF}Aѱ_ip(< (brF*APL(:*m368 2<,IyƠ5@-ޒH3 :]m}h>d֍9"kS 5P3%(8׻%ʂ}- C<\S1-:fK c2^F.یJ} nŬ&X/LV>Y^7gLJJģR]1ۿwC gQNW\.т/] 16k(/3K1HzpDMKZ`.4/_ 9`ɅQO幺Z0믍!ZTg[GZT+$_9q蓔J8]+|_ԔЍ0{)LC*Iiӎ>T|@L2i9svI0 B)T](TZR',W#ST!> G~/;H}K iEiK˝l]8p3kx#O.!a<{#^;ܯ9X_r9˦jYW)<5$| \*F̦&Y,cI~]2:~Q-X{eMla( ~t }A!_UƤ8޸}qrHotA&Xg. "S9>qmA]}RRx軷jXm#278M̹hfܚΫ^MK9$.?ųݢVʮ!9,Ch-J-bC;ٛivZJ±Br:O TtwS Sƕ#3s[MwB d8rA?HFTbj0WЪu%,ڗ'"0OFvT{n\&y}[W16yFT B$iiu@2a9QP&^;n^ n ۥw{Vt00mFF)MIus4Jo~yeg=Tu(?ewԚaGGFqPjQ6g{ tw?cU}3Amn@k2R E ݂p;V,/Tp̏I;/Dr6u ep |cLE2tRi@Z MOH 떝6y12`˝0&a׮Rr4]%6 i6x\1`H6rNm F9NtČUΰboх~6#P[nZ%C)D{)m! %JT tX!~ݵt6yjۣf8fj9# :HMQk;.M7sP} MI`qs2 MW$X~ g)*dhur )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=xI /La L dobʡpTݡxmqD"sCle)1+Hau%Cz yBs]s ok%!Ћ[&5̎@5x32C3h4 Ѹ' ̵J6s-ꇧ+nF+idlkM.^1d~ rwmy|'%:1<,0q!~ie`.ޓYsת·sN2:񙬛ڞ2}*|"\͢:8s~CYޙJټmCɄOD98rY,9s#N 6o!UQv8;]XWE-jQŜiLEfKdyZvPl_jV]om#%|{E ~p )F|㩋:w %-O0zq+[}=% I(!qT2K^ޖÆں{iA;S\QjƋo{^;P ,ˎ$6Aၩ,g+MoYߛdeҡ6pld<ðКs$-~a7sj,D͚ KN)}ghvMMB&ê2CyO͜V|NGݔ5X5a]lnSIQps6՚n`?lm>.Gw 63^qHhL\e.bo!>O$lJZIԃY&ˆ=nK=U|۷+bl83W8LN  0+G>y5J 6I)o E&(✪h 0~ڒ `)@!?(SD7zjaE8FW"iCf>Fy}hF+Vp` 㧔ʘQٛwEr@BLx@932Ejw.s z\5Fb^ƈ}58hv׭,9MrLƷ=Ί_uס;)φ4?=.c6niǤPW)UCfF,S'f/&PTc`)ٸ7aAd{ft#)ԃ##D!dA-ݘ5<;Y[ܬ;7#iTG%*n qڙ ǖԜF(LҰY߱DWm 7 .45eZȯv^px4Y HJ Tv6WEiB?KܥA܈iuY5bb GȿIEߠmb@OqX+L\xcKw u<4.Ƹ\qj+7%SLh1BUTwS\ۋ4Dޟ|$G΢f5EEg2{H{CJ n6v=;mu!h硾@ @w0㿘"Z+up aoc6åHۿqyJ@Q\}[+UP-2%k`QpRC&^*Qv"rLNf6fH!t=j u3)q̖Tv,W) RR\-ƣOpk Yq^,Cl/T;Ap 籦A Wc87kf tzׅ'TpIBws jSq< = 9< \F|[m?{lv|5އy_sNBVnٴC8Gtfb\=:^e{Cә6siTJ**+gգȈRݜ6 |B!XD|DA;ej֏*-H7Ztnw"x;Ud+j 7u;<<;6v*3sˡ+ ]v־IS{)Ll΋Gӎ3Lq@a=L @ld(qTe!^ Yw^ 58 F=^W#.l.Cˁ}P÷Pt ƒjW)1;T,TmW0#Nt ;2^kCPDsI1;u e0Km*Ao[^+3ÉĮk/7`OA/X.#'H Ï֯- A[^I>/'J5z5H+J'jSM(2qT "uw\j6u8I7@PI$zK'z71LY<2_R!khd7!bvb?/&|t\mrZH!n~fw2n䛇ʆޏTFPb>m1B!3J炍\4f!lމ$VČ>=gZA@$+]@e*aA Lco[n#=0u=v0vGu/ '灹Jum#ݤi` kX)18`r'kIbALw 4Fk*ں£Kc/ TtG ?FۘdKdȗR_l`GK0OUݽvI?Xd}![NB`Vķ'Ki98/g>{WVe\) 1M+Ztŷqe EHgq[V"Ԅ"JX|$'XVx@ЩW ai/ʁ9@ нB۸B_[KAԼQKq3ɐpWL]LWژ#@V-_ȝ5ݳYszh5^/RVE*>fsgS}wMre/hXcפiх"G`s|dIYH"2dL$TcxD=Hy|B+,Fad)YF Xh'IItNiЛ&{641mU)ٻ6_ ~uNo% ,n^ ";i Uoc M%mEqt: ^`ŵsVB:۰S0阩[̙bUR!004mu_j F˧;Ӱ oR7,y__Wё|/0vaW ϑy@hٯprIGᤨ6_ P:Aπ,^,*n,yfjk9y(%#x' `"ޜ^R`ͨms{18ЍT_]*ם\ 5Fb }\ҌI/FEb߈p-4iq4*en x%h_+,'<{7v~+1̷9c'δjqчCH wUܺfd7.>*דd/+S[J9sr4υVz+R 1 p y.Saj'~ oM Y[?dzxKMzD9V!c_W -T6+dC \iU(n L?gfCps({vv$W%1"T[ɝƽ❃@ae9^9#GPnC$ۂ6I'%ӆ\SUA_0s w3lJRTDrq! b{y!3: k &`sk_ՆOg(i|ʫkkH&U=RPFB]Ԇ΅^7 qFC\AGI.vcƽmXHjez2uKjN#c;rRH3Ӹ?ͰG!Pp/cp"=vD4[.^5zjLe(\GG°$OfS3R0 -z2$D'va`߅0@ئ7bޫJCj?&0~~g>$t <3rpʍN~E54+ߠGjz"sp*nrj~0|?B/W 7)fB½:!APbOHFtމL}<骐d.<% 'bH=4ͺ4y1( 1`CŸ dZc:[/[vIښJ"Ry9aeK;. 5\!ŏg1,Ǵb21StE3^GxaVw侅M2NYDbh=Z}sgOgC\Eӗ"% aApOO /xgyCf#W6tLܺ;jˎ oB*0y | 8ģ􊢺Qq@ZvH( fM ѕb62.^q¸ͯ_sPwX iG;;lsңWat?B]GHF';Hq0gÚC]Fߐqw*.6܄UM^eWdMߩLCVo:6XFxڜg}ZUkcK(LWӌ14! @ >2S06\!P̬Hk߰ +JFIR+蝯Ї \J}6rHo!E\W\Sz|9(ߠ.@q$ }SvUBrPOQ_;~|cp'dLiajP*k0K'$Kv"2җn-QA-7nXix!)H ΄3Ai/2OH{Pcm0OIRt nIB<ExvUz yX*'ZzkF%S&oD2hD>{J&BYj) 풭j#Y.]M[yFe$Ϟ$x~z:eg̃CíWJogs~JFX\,j18=`e@ʉ!^Y!e[+v*^4#Ȯ(y}ϵM7{`$9#I%LYWKbrخ\c.>;Àlum-YO1*=r#{moMcxsga7k!O\mU^|7P,y2\U -.~;6ġ9RQj l|PUo6C>[z>kBhB, i7 z3T4B=-iR:Q9 'ES?KS~]xΘ\˜a:S|F+4/ܔ6β߈qٚћʏ61|$1L?cw "LĒȺt9?_14W ]iҪL(OlQE#Eㅺ>|ް7¶3[ !%`vՖW>}C|Q 8Tk  .N@w?eJPe^rghD/҂ưԅ =W",Yp#7JD)ƿa-Ntڈ- Rw㭍c(^9KPA+*CԈ:;fI:@46LE7vLjd1xRdbk?=Ƹ+4e2o.^|1tX"n_HW Ǣǰ=ZƮEjb킠fymVԷ! v YEo%yDĞ)GU[|297vSIꟋ'7OiG!L\iZ_j!z$-@=w1gb r>5EMM)E" `X30kO$[|JHZKZe_,AHQ/ NMӲ\4*" wQq)xX'q>s5d2U%2<Ƞvg LR9ߩ=<V(\ycĵ25oSm6ql%fj,vN,bh-LVCؚS^?'t׊c'/o.ȯiiL TcT '4c?(1K'\;K#`hl>F_Y{SZg,QεĪ1) J5Y=9hOH(tOڒGA]iotQDrC52m, ˤ]Tr|вv'F'z4l5iY$l20\ w`bCe/5˓C>o{y}cuo¡F mb]v~i8( EzcOEx2VtÄ~v3 B]d9'l_6 9)@ L 3x7TN e,m^.'w7ggovңk,5ϗ fuh]eYu[p+*;Ou)Bl7TPB!*6&Ȉp(&+SP-nAF59HRl$vm e O3ƍ#u2h Τ4 x ̂~ytߠBR&{ z؎߅_s5rNqhY7|Th e #*iQt{=T=R5ٔh &.@ 2@Em_yGC`' wfҎ^s]Ğ[ndR;̉UTRmT!F2"#p~YAvZs-dV]JH4ccC'B>w@?}P._bnPa ރ j>l+C@2v67wx1s3@8\b O_j0{ v s˦TckZfwbxJ kAU90 \/7')D\XKJ e_I#LwCDe6D+6*c~|$N A(NvPaI,CR./dVq uٵ1?%d/&v8śR)-* tU"$Iv54GthI :\Mr.q!Ntbʇ<*:$X)%1'e*ۃ^>8b?Z/yaF_tgrn@,jlO9]4:~T养9=̢+%֩SK̎ȔI?RjaLX&?/8x= *Cmx[9Z{nz^1~?G^]f;&kN G cJJ7jo 45,ZKjd{rسjRmcM`9wBx.E6/EG3+ٓa(xŻ|Q4v(Vqp(x3 TŴ^T%H[LMj˝NX]uD;[߇N!3jVr.1 jSCˆѲ撌>r'/~F@qm?t馚m4X3HJ?4sz-:yG}XWd{KȹbܒTd! _܊ P9)P.FəHQg:| 9պaZTZ2O ;Z~M\.b`u1mnڟU6tK%?`W=-[+4ͱ<ђʊd JL)D %eѼW*M|5iKFxǶڢ]m}a>v^a@[>v0b$r y;e9=y|FOTB=kCS%4xD71?Ѓ(j>5p'd](E7;BJuOR]$ ýM}i1 .㡗%v+ej'݂J>b"TԬ?n7TU"8lϙ̗;rD%4(`P#{[ߏW6laisW)\eKh3Cu=6@`?jAu X`U Ѻ' D8rT~?V,&R} m< ۫p 87˳; FъѨ,mPO:9*5Jۘ/Hftnt~Vv9`7f9 q du@"y=auvyn!ĥiu-m0yc E#x.a.u<9tL-$og] xl0͑:q*L~9&?.qԔJ}i#T$rR 0\msrej ^lNu<*҇395RcalchGŹp({Q.Q88, .`:V=z^w%_!UP ;쥷ѼބKKoO<5507onC|C>r_FN"\LX͵k-B.LuMGƉyN#S/iq|6p7^~I,pLih#}B{;< tݦ UEǔ|IM-G}{_/[OاXLH?7\bd> :pyUHO>Zt6zзQ!*e$QV,C#OHx- KJ$rP"p&4V_wH!d"PbuE7ýcX`B *A[Yp1sB~ ';WFbθHM( 8%8S3 ѓpF>7hbxs4Y"Yg ~IC^u'\ꭣ s'&0B^ﳦChWjOJPPى* B>~CEby8dK'-)3Ay<HyN ZԸO5Ti2]OJ<@Oju(SFRZA4 .2S+K9çMЋ,: D&ru f; ]u9@sgQBvxQ1-A踓j\(iQ2l"[pU*$8uBUY=3!;93% 1![Jr!,QѿtGMRjJU59 yJ:A2!:>e2+K7lA/aG+dY+Jk^+u=G |& X'xr KI ͠Tl%'|#+ C4F0b&-'k=G|^iaVOɻ.OX>ѝ%]/c97da#qxj X#xO#|)J{aI#h@ӃfviSN4{]%TܪƔ{>g2&q-x (D)D ϑdepiٯ$ sl^'*aYȕ:L.ri+ޏ<,ȎXu/1gX/b]"'ؕmmƒh̕61E>Ka|U "j6_`#^NrKhSp>n.8)Ux"Oix|c. :׹>+ea>2 e=o0o[ ,~F<'B#/dI$ Vą"v1>9DVD qT!ʹVC< 2We]7yմ:*&N>'rTmqkLkO<%ҡ)~9ťpY ^>^ZRb}/Wy=0Qwz7nka5Y6pޘU\^j =.ttmg>uwuιEPFUt$41-sͼ&([+M֎:B)"g1ZU(@͕soKuƌ@ފ2enM=Rq8-J2ӱ }h4CL_+])Ir)3KETÊfMk:wpAtg"Ǽ:NԱ1$`lM 4+:#Wl:x~͜b+\5,hVr<Г-ޑVsmAOO6nm_WHx~2|.zkD׫˧]$z{ɂ+q .o(I͊wR][. bg?t(C'(pivĊV;t2w(O 0^JWai9=祀13A {. rPכ"d>|ܢnaޮ*#K :I8v++9wŦA&cɽf G31Hr{d=ucdI!z $A6e/Q-n!Gѱد;$?LLI(wn^M쳘=L29GwKƴL};w[֠7p[u4 Hì]V!>6u69Kab WלZHH]? yB`.0T|Xc{ch_C )*h\`j>pwC3Fg lGE:mƏ)ca?( ox89ZiQdI芌)9v,[k_p2sH U˗tIlSD%q.X\EUrgbTrz`l8)?gjxA Y.6\k۪lɃ Q甑YJ̊:.W#a6oY'cfҊa\Q|e]DR'o0@f! n_ԲȎhB-^YrGuepS|ֽЍd߽%F_Z@Bec(EGLZ׹[{H*Ҳ㷈7ymfdOMP5ts?}_1d Ctܮn\@AL-L!ﲔq%b4Qڐ,3[Kvi~R~5H2xBMZZS%#YPo!Ð]Ҕh/1co|u?.#_bՀuڅ&4d3b@ /n20"jCju~K &u۵TG;8s-v~7nO>{JM(d.5,/JAKfe7 .6T*與 Q=}ӏ7mz#PK'rT~X|[e?^ 7!Zt{)b@ZMM JXa8$(,wBPn/aҲˏcS ;[_qtb\|^S=IF9|7[vl(c/x*bw( U3(<]42uwA$ۼe"l#pPx|57I!#bm}^ Q)l"++NdXLQ4251ɿN턊5<1VF1*pJ6" f;>SKyVԯ~yg.c׏2J~cm:䥽+=YH>rFWӅmhEk~3RYVޡZ =wL\)NބAA>6Vvt_7s G B np*>I֬D;gߧ=hywzcH?BoC߉/h]6uu SE2w|̋Y\,{ZdT'z8vdݲYvL{N2<`^ZmƆ{?c{Rb{ aJS`iR!OC4W.g8]/wYrU[QW=y>©ƃ MH N2B gxG S?a8& 1Hrg|^LB'j<< ~M<ڏ1G[mo3%$it׼yf&4U#R(ÓH3E,@5#N.rꜧt+8qH]8 = 鉳r3AxQLU0' <K2߳{v RV͌U37l\!LD?KW)rg6s O>0M̶ݑ)Q{9}Gǝ8SG/K4iM0'! 6cf &v^,*bWX08$}Ԑ1=q2M>=/lrcqltX͙ i iF]uQ=sM|h䗉$LY&>W@ A eXF%$yZ&_7XW$$pd^]Z_K/3;X@4-dVa(N %ɠ"(˚PRȪ Ό>edZg׫goT},'ZvvX[S7wq$Z`7@~t\_lK&Iόy}ҏ :kB:n:R4JS` ƗukˎAxY]K ( DW|1kaW~IUX#hDnߑuPULoZ82y~L0e^V2gu;aJpgŬ翷Om܍ m1tk cKD`ԇ(~FgVa;;@1Uҍ0UjLN˞¢r*1{r9س2n6Ncb i;[9eol-c$ PThߟQ 3E =FNH+æ/Ao炀m2H _MMQe%2\ꝃj 6W;.2\Ֆ^F@ju[p8> UOmIyqZRH~w?_lX@Ulg@/}:V ph}ׯtqoDMW$oDSB#XV]<ڵde¢sY9r9)~0sOdk:B ͑=vN,yÕf3;rȊ^]Sw)KޠmPDB8Ou!oYEZs+@G?[xׁ`*'9@7M$ViԤ2x )"T#ijJUSSY]<=Is <4z0 =lOyb$[؛ ú/g;6f9$&CWV37?,Rʡ&i/BG{'ILB6.D >,S:#[E`Ȯ 1MKn ТOP໱?u, \D{;rmg۝()#It,fS:b:F8$}]J2< 1LȬ}v?MtKm.߷ Ijx;Jw?zZKi &Iߓ&\RR8P !*JT:U{q.,|,3>G w-ˋqss=$'g70窴pK^rJ ҲL2uRXh{W+K' [EWM[1/_BIS(\?`po>-lx/+WaIs(L_d֑!5'/ JR])DXi);6ObNk{1$)Vgj-W& ļ꽺=( Z-W܄v#;nOoP9>l _dx[x*‡*Asd5]My] 0("cW]1`׎$#J롵oRDI*kFN ; CԗUm &DJsJtkzHX_hx\['zBGp>4H NXGְIqi_O8DG (9CJ%[\slYqXQr{;m5-{+j cZA߲h7ckS Cu9jd19=^IqW֧ (TVaGV;]{Q`c\Зĺ556b#hwu@ς*soT) w]a7qݴ)N]nُ#nc9ZF?p[*<Ө"`fPJ\>W!{2mP"M{FuB+jX1d$*D{ГFoN3 xH#m ^BnGkVk]ְ띪$ hֳ83An 4"{Gʥ ~3dzAyٲRJd)quew`id/X [*h ids#qJ"4dT6DQVC, ˣ^#1rq8V,yo/ZNGm4C԰Ot[s5X"3W4]- K+MgFKgW՗k:O FL+fma qiN]: sH]0BӑM L} BF#lzd/ z#cI0$ɗT>*VP<&. y&01Њ4Q$8lN̫}k;#q/wt1 `Ͱj*x,@P k1t=[|Vu/z3636?d⣈=: W02{*%a#9=}v~ɸTQ.B$C4lCӥo3&#dMDP 5Hr`mCMnZb'YЪS,0ɶdĻ8\^v+|p)[$u{?~:<4*7Joؤ: oEA '!|B:M@Jƨ~@ E#;p݌yd(5u\/H`{lկ>#xuRY'sbC<9 7GmUGӥ5 Bm*~ꡌ:x|բg˙}%{JJo*tsM(rYBD 鞜xXB_ENZPThk@ \%' FW Q^xvVrn|K`^v_NO(-,Y޾Ieõz锵Ow2 v65; Pœs%iG) wI@s~h'y+n-Vif j|_8M o/Bdeg)"d^a=N=.vOP[Xb@. ?Y/G &&:=US[3. e-2$9&QF f;%0ˤ/w+Jg㆛ƞRc|2a-ƫ~]8/Wo `ubͲݙ~T0)$n-k`i![zZ,&rmWg~Os/=#In~!Xb!/ZQ<u»\cnr# }jF v;E 5j)4dU)O 7C3JxkKC7UQ &:ݭm2"'C7pK{Pe'_1''\A[tz:.MN 0`d4XM]SL@OR$n"D#sj2CcN݊l)-Cd,+okI)E Z<Qd2Qf#7D)N2f{;hqK ) oQIjס6qdwGj tr?al 8I`P5cvPgl{HE\I#m8H HC(U"K9 T~^g9E 3:(K%* e>k_2Ae{Т0a#!OAJ @9Wo/d`[ڼȌFVwruY1dzCIQST{Ko2LsFz|p >"i{).3/0zM ׉TY'P>

Oͼ]xlBط(3Ϳ+${"ZHVlG-5K+bvXV%A @770@`)o͌t 0éM+tvZ,p鄷1( HTS}}3pդ}5ux05?jGT]^($ԫA#UJ7L'E 1j)C(f<'5o7f׹6w)e晫IDYhG}<>ݛHG7(n9`rO D3rGCK X$6pCl8YS2ᙍrm.K؂*%;S#\%}9XK76C4a=+զ=#6ac0+g֫OV{o PxEG)n=QKEgģ=H@'.<3uOV)Qs+)@횹w<,X]G;л1ǔ! Ԭ;E? ?E'v뇃/ (χ^Un'y,D40:gȴo:UQ{3ߢ9U2qrGob͇I*Z帇j!]B w=#tӘonWRd]>=y5q.*k$2bR\J h Z1=n [4񰜓;q+VZM` 7*Ն5g~[@SAxo,”qM$%?t0MQ&y16F:D]+$[//!QRbiQG/Ǵ6qF2#&aƥ KsY4WG*? %í4)?L r`s"є *n^H]+kj Θ=J~`^1=J&ٟ. L][?B\Q@["Jam | Ș(,2˹?ޯA qls!0Z%o+ t|BX85V.c d\T5Ӳɱ&tR \6IW1{+$ihAtrQFQ ׸6/o`xDb>zߍqu„y,"c> ^]SSUojO@_>bcA^I`仫-J1v*a28 AgSPrҥT('Db<Z(o;= ) !c@Vƃjv4#^T EU >G@ѻ-&d:cQrbwP/&̃%[t;~lWAo|N< dҶƤ≺9NШIY՚O9-%0kEg:R䓜8ŸPVmCodX[gb v z.+<{ϐnBiYV\0Γ ֤?ZTvЍ;hIy ]A$jGT:a=ޣ *|uK-$WZV5LpJ0gg`<;'n #yF4:ޤrFcm_aP,lHY MDzMȦ1[{tWwK>$`,8E'kCL@R[;ږLZ([:u]>( 9ܶ8&:VZbJاm{Osg_9/ 8qih\m;W&ކY8cǂu! p.F0uURck~W-Q5=.fAQk-J !RT@3삙W.t $U&Lx[_#w`~MKڌU33tŋ8M&JNb;]٘uoZ4-rT$^]&fﯙiPQg*IFzCN=r­8̔pIOpмẃEO\8xzKNynXa4(RE?(Pf}y-Dڪ"+O"'b_2%`,q-S4U< дPD:^ZZ>,K|݈1E?)ՈpKWdodцlpt==3mAgXQ7ğH$vHcJVts)IO\FFrxԂ3*S,+T;ya.&G<OJ&]iN'k#{BQJ"sg%dв@[9/*AݎǾnU"ڀ0Fi0_P[CvM g[~Ɂ79/!sngYm0KFG# 5?b t ?a# pFMo -+2l <$}-)Sz/ڮ;L!Vu<ՅeQt(}JyWh`'>6lqZh~SRITb~x纽y\qk_pb8}}E?jzpSIEʉݬNT;3#.\}r7sLopğbP9X^3{BldR4{?EabtHń"|Lo6by#|Jxd_(3O7_@-ഹ^٧xXq\&ù R`ī|"qy +{] y<\TGwGn}kH=nIz)k;Ҽw o8/л.(Au-fBx䑈um,lSW10 CdZ Cl2kl9+u,/=j%8rZ>rT/~$tXXt5gwq~$53^3rS-fRޑ,lCf~ǁ,ԢZ,l]3TfdzَϏDf4uXq@]A^8b?IP/?QJP>—(vm ܦ$&6%Zp\٢H*:AFm=؎<_<P '%{ğ$`)!aO]?Lf(Joml8]bz %Q&+"#u.aNj/`Wzaϑ):ܒAKև:CQ+.NMV(B-M` GQ8c"]k h3|rhvWdǗ-pwy rb 3*oCxOX_RGAMWQSyR*>pw8 Gw5oN}Y幆F坃{@ն] f7i}046JYO#3oz5G]qe ')QVߣYpءvq.ÓDOWʮ tU؇U(ж'vnp0PΪ@3Û;}5=/%0C3j^βƘ.0hRiM]$2dIΎ];(߀ ߢ'ͮf`?R9h)qx/3E?d@qk~e,A6}iPc />k~>츹d-[*ʍ;wH4^U)Ȃ)V$S~mEN3 ArJH,y=Ts4Wӹ~%aoI o8J%w@ғ6SzVկ.Qz $ݣz"ncpc lppL6I!m U?rÌiݼ>V{ݑZ@Ŧm!uXk1` \_CCh:l(nO":b@RZ,F'7X`!{ `z3U/2~|^5Ԣq"Ê>EH&n_B&.'z7bWTzƻkjP/E^3yF>_5c ˕ݤʔȽK^"rV賈kh$#)p:϶߉k[f‚J?sz`e;pE@ %nucAh?ihk.P^]Qf8Mo&8z LV=*0OШ Qu <M!mbii@Y)P9Ҟ?79ۑҥ y 33H|Sf>'v|b tpFJh\ /&6ܒuA1,L'/DetfΧ5-F v`$h ]oS1@E*tvًgbL,S(8|`WB<_"}Bc(~ʹnhR1;&V z;yt^کRifw5'^ g%W،PO{JnPhxc Vl."lT6.9EυVhǹ8HGNkk`>R!ߪEO]iyr9hgjudlTe)۸|2l\l6(D<[cτ^&fѧ+,H|,md8#+~Zk}MBɠ``T21k>XQ[*vxQ7ς?}Qa`ņg :P6 0MJA:<`}%όm`˭к`j>@ 6n2?4Gf !2Dq@ćRPݳm4ד,[Ǐ0z""Z%(i^R\&Ɵ"LƋE}:uZZGa!4ɏm29!sxf UЌ)Fku O4GGt&}% Q)s'iVi޶ɪLOwcofps*Nx{=/9SW0Zd;`)lPm 7g4Pբޕn;:gzx@n۳mܾZOlȥk;1u<*mρOU*l-g&1򵵞+fJrrDK9`<W#'|z:DiGDq.L@>䕳x"ُ.u͗5!d܎s:#D#|;"ƚ3a_a tEFNOJ=ya[7̥O@) I@,/eWt0_>\$A0E#ƣ"n͋omMi3 ][B$D8^3vЅGb8nog(pV,F>?" JT~'1-g#^j ~Um8냾|)ߦt@ۄtX;S\OL~!>T~VL=uNbRA;_ [_.@vz;=E7LJCH /ۂF9iS6yLj㯛a؅^]ؗpx0R iJAM9[:P#ٌj8]H2kȰXT|]: p1^r&!G4t#HUtx~C:4-JeNI oQҿթ YQTlVŲJ2  Gk+@ *ݭ伞tV =įu̧%CT-ڈ!9A@RSێ_MsVW3v?¯Pژ8 T+Ƽ91yf}I,#567ӎ)'dRO{ONW&i}-ܵ&Uy#f5<Ґodȸ I3*[cL7ud^- p^OP[%>"ൽJD |(Afk>QX;8䬸6zC=l7iw/#y,ѹ[O 0MG5\pƖ7 sWXo~'=aԒdg8[kz'Z& Ѩ!䫋ʈb0s)5Ԟ?B*}QV:GArֹZp04V/pK_Ϝ2\D: @]Pڞ[%Ca\ng :6Ԡg>-!Ht$P b0=b6l(lWcnI( v0jRBam ,)u.-S2Y3mԱl~tYS;.&7|`7WSWnM)gB-E6FL?inlTg79 9q<.:G]r:- 1A.KCLX8OҰXMm8^1aC~E5ᢄ2Yd0*RP]^|Leg #>;p&IM xK &-6|re%v^+IZ .nIgAGIe~op0/.LtY!!(@ DQ=d;#UF o>{ j#1RA"KE45}.\{um~pXqLΐOAKh^m}z ~dm>9 8 ȋ(ndsor>%$n P!8|=̫e5 U&OAox^f  hO+]ۣHvE{*+5Fqn;J-= J }acN0w2GDj*LU}bJNXϥDɣWauրmZ2pԝEպtDoPCo&n&*(_MlBX_&©Zr3c',ʊJ^{e3V87e*vFH9{¼VVSV@ɦjAJj /x>͋=/"8G]FδQ|#am'g?)s@=j{uVFd`y" TA'ԓ}),v(=Cx; kg4!(ڮXFsC,'4 ަ35f <&wsтY{ZY.$M˟;ƴMz-Q%ǪYyn˶UN I&Im,IEzGnm.OM =,j%C)? veSoH淏=4G +G=Z%:NZˮG AŋPܑH@"/_i""-2w˕["Q(O?)M}&**rۇE^3#_%6l_ *IeCTv0EA{Aoh[~0;GQ@@oAF+~Dù^ũ=zdžeXb**i3"c))+|lo Zw9a3B*GiRfXg,$dԆuJ3$C΃/s \+|9MA!4^0A|ET]{_W2s$^RO i6BYNW| }B1q clx~zºL/ ޶bK>@¸|Tb}gsFyI^cԵN=Q!$MJ zlhH-Kc8Lg_ Deܶr%;5Sk"{ڽpkW) ^VR'}Eh ٥cZێ4mTEN2.W-y c d/\`}У+Ls}Ǿb2{Gom/']qJK5nS ZS_i2n\OMd^dҫrʴ ř#b շͦk!x@'bYl xK`{4y8h Ys7oùAILł, Ѐ{E@97IdI/\ 6(Ǘ7/c1rhs܆BUr? A Ii@@GvO4h[n[W7z D7cw_JⴶAHJ[5T-R;ư](Fֲ`$#|'NOܹ*jiQ?2-EU.\"4Mx:z9H3X9 Ul2Z+K/g:xd/_짺]p/'쯣]%Dy C izh#ï׿q( OAy0lXqY4:ܞ jp!;3ik}"v$p|zh-kE'= 7RTe>_Ƚ5 ].v@| #-gLY$^g/-D^Im/_mOT] SpDm4 鵵ʗ)L`_s1+mdhpj||rҲK^X bL32,?aYqί_mh^Q,Lx^NeYho BUߝFZԪ%bNR6]!B˯H|*hHWCqG}Wj+ 3uP+AW@ױY!d,pf/]CsNnPTw1q9?Ѹ4JN*FI- W>@;=Q~WMONk.$%7lL?ښɪDZ.TÅ/1|0@[|x-+Yvc8UiJމb~zk}fVB^:ꫫ$ VCZ"d3H_rK1čIG'Jmk! )Eܪ~5~0'ZT j&5; rR|eO඀Gv(uHh+bzwJ [ z9eWE;y)0IݑH#9x(Ôk}q><9y ܞBK 7/= 0>%}ݖ*쥞,sc+A?d7mlQ 1Ҏ+$߸fﰝG20+޴yy _y6_/%t0p@F b? J&BQYאc׾&K[81qSN} !랍|EO%iɹUHν7=.DY?-g<˓ҳN)yn$ UD="GН6RN?e,Q㉰{agfXY1G\b6pω60ycu ͟^/"$\G3cН!?Lx2BEFXa6l) 8^t=.h|CWGSq{vi໯_Mw1x+|#]g-t@|GY)@az`IIop֓waR\! Y,~GR1 J,DN<7}:ٳfSw3śa'hkV6. ZK5z@h!,[yR ˍs9yl/1kKRBK^p>x v2 pcqLӨu$y ){##=Vb[ p-ANab1nB H `@Hc?{ C?Q!3[|HPJIDj z[% n';PuyDf D 87t@I{\h0$i>b `.B꼔D9=}R#5u.%6 "0EE+_]qU]3hIiKpWzFp}pNK EV8qsJ\YeT\ ^KvpxY]4]5~;/Rd\ΊŽ.; TOL|%{+yja\:3V I˕MnHJ.#474?@9,'~T@ 6|7׶a6f~{u{?: BWlNL䒜~/d_@=&.nF06coopm@H C`s5IVKY+|k兤9kуlnfq [޴TB.A:u&S٩dJa*,,rA >Ƀj4@.❹:-&u>22zc74W`l-ӤoBgrc(. 㖂Es8oz^"WGV| e},et >H'#WRKUɌ vx+6i^D -qzWG Cm (YEswqԧh]Kmֲ5Onfí9cѲ`Yؚ>AR+%ik}-(#n\=>C1V,ک1WR q0ٱ ֗ C1s)#:hg6(S.ekiJ*El1-#Y)fY5>W碪^ !^MjTi-xH)vY"%"$dK:UXU_VkX_t?C8DnZBm/%+ `=B]3lϭaBB.^K9'L}Ytf;F+Qzg+Vn>J z;٦򭠑$٩1V^v@cꧬ]|,,1|W,Kg0 TI &h,y/DֻHIӯDiu) 6zy3R/ePM=lysql3 )&kj~f\zP*I_ɇ+XxOMG(NwЯ:܅r p8 3TA%?dOKўC^`$\W`J9 w$jlxkmGw T,Eu(qFm^^YG`7cE]&!>is&#;|Y17qps2dk]~߈/hau <WxQA7M*_Jk1 G4S+2"ज{eH]<5S)3(#ӀIBˆЙ{f֑MƪHl* b(M9l꣬>}i Y 4Tn} )!*vE 7(ho4o,|;D$o~B)r&dT! VP+ YwL,)Y=jۭh\KzF/=Š SfS!}q80VqʡHݖTngWȩlQKwzp(G:=!j"Kr<;șE=?yjqGbbUv>c\&BO!CUŎA? __AC{;8kevYx/bn33lx {gR2<y3ONt|d(PX#KQ^"~!y,n\p#ӭT]Z#n~h'KBʭ Q߻ Ql֠v[B#|'zR,g!_OxJ ǍSڢ5Qѩg `Dw2S'~ZzxH[9?ma,m(6f =PJ|{`ZfGz/8~AVx3\īF| Jpjw1XuA,.8ޚˣϕZ9lzu$_!}|b|A8;.(+oM@ʘ*G6,MUPcScJsYЦkv+)-u*v?0$(/pe$.h0*lKOõKLGpU$먷}ilr&16诤ƐM_T =d& &#>\} s 4 MgT񷜽^QQod!i2g,s`u+_KrNQ1a+ .IPrV2e45+bdɶx0?w'C|k3 N94vnʮxsE& Xl՛]l8@T?/m௉vd%^@605u7么7-Q?ux 33s`LP?< hGIǶ^Ӵ:Dcoj%Fҧqn/{Н% rb-4<~*G `:K6DU*|7l7'0 ه|h%#lBSο̕Y@i7<ir/`k0:t_]dP8DI!f!U@SojλQc̥a܏>/q}H3P 0{/ܐg 1҈>o,< 8g,jg󀧽dD۳I&>*R%>b'5i7aaq J$6Z,f͋mW@NBfVaֵJQwrp:i #GVe {VfwxaV,Tɫ%}#ee@:hcw`>HC]4븪1lһ;z o]>P.8 !DȮ3Y"[1/T?14vH\y -ƒ$9eRsdHp\6l9R0s\'jNM&rՀB72cUTkGή4y;DT0x)TݷĈJ ˚AdqD~yjEPjsY+[.KnB7\?c&W+zq8Q2\j2-}v%jc&INH%9w n *|뀎ADؼxӴOǽd%ǵ߈T3("4y}6 `EVh(`/$5F1_d0d0Dp"/Ap3>IZOD|.D p16`ZsN0z ؠ~36U#qC š6<>mrrUι;M\2aJrÍ}`*'B ,\W"DIּK8=}-5E0.ĴZj =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(pw68Y‰{@[w.e#p 8Keg/vI>4m2jܚ lyQ]TqY ޙCUb`aT(T3B"DLwtA;WX;:ioNbCM\h$mMLO`:`Ui-=K1bۛ/EAڋvs?q*wƧG(]n[9broN&'kGiC?~ -A<~ɸveOp/ta8ɊzS#`J2tIÁ0˒)ޒ3!>#4ߙHH]y0B=;5>ǒ$xfJ@p$xYR,լbi\rҩ"X[hǖⰗR(2r$5VIQhyZ9˱evVLwTՑF߾rppJῈav3GrHxdehUݭt+æGq'S {{ݡ҇C.ڄ0&@W.Ic]Fs{&O9Nd-Nh٣ϑME]m2?vv @dWn|tA7c#+rh״)ciGiܥ7+~C䉘LrIɵuH&2=ԣ3l 0=C8&_?@ #_} C`|މ8Eq8| =ѿqkZ2ѡޟ:Q5͗?p+J^ m'n]8nowlLs=VOFzcj8j˟:w}Kh[U/ e Yp_g{V[$ F `6hk-FTm"aԆ=xwĻjA !oI[=' ,ڷ/=j}BO#t,XCf }2T&kܽf c5*fP}]I%**^?ք1=yex_6tj%X'&7.7 5UoOZEOZ}ZsiBT+NC\$i Q(u///Y5z7&TBM?rrפa}[x@zά2{q]@tз4 ٤fhS|)9FĎ%C-'65 @9uD ܊f&%2Th]Ts}9@bb ~J_[hHJUzsvoOC/71^WoML[ \l>[y|)3,n7-'U[ͷRx9@@nZLj qo_DgS;RH.ֿl#χB|Πmgv| {hIe72VݤLRdz4̇B$(;Uci$!I2j#Z 5Jhٯ&N,.1<@.ۄt\P"guZwD~vV 6t6Je=+w;9j l 3>ΐ8V*L@+<>S>-#dN [^6\s±voߒ̭$=}9K+YCj}GAgܪ鎾w"9y ϫ)p|M;'TMqq}La2 (^8u Z,IxۧRMJpJ*c}y񔨎f1xk93QHzl,cjão ƗM$ LoF?(FeT>2PwXZ2J̓.DdػpHlP>[/Ohu\OOrSGgſ^߽9K397$]S^J?Jm⋡bgDͫ\QY{#b{μW}!ԡU*.<ID.0ϕ堓UϷl(ϒ^HL|6Lz9wBN[ֲ47O0|ȼS>gB21Q~8GSX_xL$'S ˰c.x7l."p"*G9dHNgW #C2h_ =V~eN]2r5k/uZvqepD{VV> CHq62J=j Ŗq[ BQD Ɇ"4N;48a8 o;Yv_&ܿ8>.azu!˶lg_HIw[!nNmQA8/lV-ԘS|)-N*NH&-=}_yybnE kʟ(ўS샶wIibշ]r T| ~Xdxnk<̂]o{GLXW :b>+ic8Bɓ¾7 =sNSXuvd h}8tSddoy֒VpX7c2[ HK쏜ʵ0+#Hs5Z_JIM\gyI=&O%b*)3oPP>PAIK?R·ñgm*$P~1g(pΦ!]T|c&ݡ3"; bss l].SxŷZޠVFp ",2ň_d{ beBC3+J%")~ @$:Fb!"քLۼhIaTݕț y0ב{FL:e !vMZ1Þ]R'36CHޫfCM e4]ɭnKU8ZQT36IEP 8%㹦ݩ "қ`Rm#&.ب\0V8{9**R]e}ǭP WzOq=P@8Ƙ^סCqmsMY-3NЮWDv%טkgBdmC)qO=qd8DJT?l )铯hb{+BOBBi!BL>*iY~2G7+iq͈Uy¯ -d'Iw6 PG2I(ϟih86AQJi5̚zч3T iŅ@]J8x oeWUHYfs Kϭd? K4U'@{Wh&4kͧ :zQr:0IiYL=ՐK<38qW .A4awIr'VhgMF/j?}blb#6)r>/| Hn8S:p;W'Ê4",t%`l/|ө-o;o[9OZUd mE)Gesw5,Xk5Nce=Hd5ߨ7˹|uxd ^=Qr)ovRmJz15' /c^pNعIj6 咗wZRH/`A޶oodTi+T/1 #ֱ̽: Dذ90fu]vq[U%E %C"RaJ]'J)G ꀐx(rVґ{ʚwd Vu"/vi֩WE87VY un'lw0 % u! FEK2'G:U[W-)LrM ZԛRT2! nC {[[Y#@GUb>]y5;xS`yO]P=ZdNt,)ĠGx6f&hӎ\2]:a[UKcHBx0ޞ_ H108r^^s'^P<7IƲpRVT>V¸C\L:pɂASB\|r|Qn1gTG]XAuM=pfJbMs0nQK!^UMKy`O GH]aa3 {ʆlezƞH+f]k̔nקQ76.kBCpMhI.Pwylq.o;əw:Qng+1)ʇ0۬Wm\k w/FF3"Ef\MK* =b;ĉ[e?Ч'UDR$dž'Ok޽4Q~Zzś.Б1R=9 1k.-87 S1ӎ$,a+gbSЈ[zTO.I./Wv?/I 4ylg-M)p7xI& d),.^+2FZ "*9($CI"p Uܺ&6lG)Iv #cvLķV&v!jBu6vakʡ6y.C)?;a#qJ^UR; M)Q'sEB$3Cec܆RρƷB~+KuxQqҥkAqe/ͦJڇHBٷ!_Ԅ~XH#MFR8 'WdX(]79'ZVDA)ò7ߞ/1ٖ ڲE uN9t uE@a\hm*V!?2R>leŢc|tIݚQЏ& ӊ%K?iY4@gY K半1CxWQU^-Ԓ_wO]J=3Bx Z:sňЇq@d䂆"וN>lV:nbAl6PȨJ~`r:WQVż:u|_P"ԟXoS؈Vgɞ*WLŰ=aݔ*)T؉5Pc>8>Sn)rj|ePu>cQ8~|Xd_!O@M"Q*ъsjEY֪\6Ԍ{'jhrdd-iP^;:K)MАnr m!hՅf>ivOY LLTI&ЁAg2L> !73At9P+ >J02:ȑ9d!9M7f5MFIHF F XIϞ0̰퉣fTM՟D$˚: z$!blTOEf%L"нRXNa۴~r&Ytl%]% vM5bL̨ 6{ef06!:k}j.ڎ0R끘/䙞9@@C7_JOW"#U*Z;&1af63jȯ -fdےBsnXv%7`~a RNN<' _]_gG YJ-:b=THP⋚j}P\ǷE/vNcUk1tP0m۾bD2]uhsK NwBKtV$Ƙ KZ'y."jgi|(7<НQڛ8[2"$D˒&J\fKm2_If:;&(u*F lYviDV#fnd \44XV殐}v5%$IoztX% rGsT[A DH 'ݨ֏ФÎCyuUpɖ ؎dTE}-2~|@"O"8 +\ X2LJ u^r pN\%p`r߃pIpWVBte6u M 0j$+*CJXzpyz-Ch뫓fG <BEɂLYQ&х@SdŬ^V@Ҟ8{RlIr<ڰ' 0/Km|PW;SK nK.̏0,:ոnMh@11 CSPbY[b?|*JhIE{@&N}= m$11]i3u) kJ.FhWΘӥ׉r⯔ʸq6s!Żg Ij+V1%DoFYX)T9Ĉ=<?F퇦Ω,4P{;$iގ葡&ÉUpzc|"@xGyY`a*R\ytʉFcZDYo:R6>w݌ Q.i' iUh$-sPN{sF1 [X8oz8J>`_=ZFR&nڋHj6ď8@2\MGdc⾢pc &tFsޚ0KL2k:3Fݕ>~F/}8U#e uaeCgj 7 ³|ܢ4\ jwM'ug< /vv.ddqT5C0cf$C֦3\";U\XSr,x&s0f!4vevʠqO.]STKzx/EzuS&9oh1yYЉjN xs1QPu8Bi}mh;M*-̲F4`>ϙ,PDj~u je2KKDuk+}^m oidGP5w:L"gf>.x0E|;`{T#ü*!X`iu$I.'%bh`47nD ާ RP콸ARK2D\Z>LrΜ vO2]3jK|B-~ 罢_8Ȥb⬿YyGpf>jYXޮr1ppEBny5٣9B$pTYטM 93"kzS#^!/v+Xwý#/Gͱ#i)H]hL2TY.IIUroh}EՁhD|aoF㙾91t!CZڒ I?1qsQZ]ՕaG;4ozRt~n;m.UD!rN ,AqFEѕ fbH94BLAegցUAsXt]4=㠵EK5d>:SH)(c\[E3(Dfk%UoO4jlWSlyۄB1Iojl?+liy+3y,Lޖ|B |ѭ`2 +_{Ce-u筈BSU޵8b/)y3t,B0mOe(7~:au-4xqN(av[O-S@E&s\$X b5X|!G 1 R JGV|վXќ@h~L-Bn(du7VgSG%_y9-|*HU 8'j^ov I:&V:=o~ԖmOMIȊf%Byd@Z{dZ`X^VEu  k314 7-|ZW\4]SW 0%: ި[0acmy_&[Co?蔿oU~8U"AI(}J!MǂaWjiH-6,[R?)%bhV+kpJH)Yod F"5APO[olσbt_zK4I,.ML?r^spGg,pъe8f{u SO*Vɒ?zνh@ +HF.0D o1cecx])c8 9\JGV*&E l<\&O;޹g6#W mv4 ow/K,YBO乖qbnW\8Ž`$rTrU&D$*4갨3lr;",U6mtϚYAfb1_ p2zIs f;t04cHTuPV9H{;<UNVfUX1`"Qq"vUכ!+TȢ\F% Z q;G Xjtb+#a> E+aRZ|`:,;Q/iBc,n2.KG1A|J1é ofi0A Ĥ`%^W_MW 7uDZ?Nԝ@r~4dzY:&Eۓ8-9Gw)8vW"}@~Sٓ/i`a w#sY:Km;-[dk*|*P&ϘVQ:Zvg)׎58QDyNXi) t1eƊPo8`$R{Zniuh? d;9dUf̴!)ڤ8S)L=`La%LO1l)KzAxir g4l Kִz5Xi}xT?ٸR?T܇U1jxql79 jB"*yJ`kp 4+xln1$J[yh.\ .${PQEOG~D~+8ب{N?'wGE'lu@ύC¸7Dn贘Z]4_Ck֚6ơA]ϫڂιxD+aƒ퍯0dz, ᯡT/z\8i^bt<ʹN:hR @$jLe*Y^rP -`nK!%2a {11եd!OS5KC[у rnzDtTU<,U'lNX^2(|lmCd:-m3Qz]nQN`_[=(`ᐚN6Zs#lu3]Fs9;3կCoYox#RID0u't;VZɵUxwռQ{ 9tuNЗK<w@CoZ{u~fP+:v7+i?F 2&JBq?(/:n^燨'LBj_Z=K()va0s$7ǂxZ+y_!"}O~t;M}9sb3da"J氧P`]w͠@?#FcǪlyKٍ?CpgdWK8,!} z#0FPAnmHeF Y͆ьV+)o @KS/={JOk:BUt$MMxMgM!n{Ew32_WEe5dڋNv>˵.qhrK9qy$RMz۫}LXScM){(o$tU;yIp&P.;CN#QAWFJ C+ $:v7,cǎKg0Ce.;SE} p;3P=,''PWo-Ǐ)3n,p)Z$U)QIR>.ufcjm9nU ';A!5 ݪdM XaO%5aַp7{ Cr1#hD9!^SHU(ۦ*Q?Mxn+4 C2U+V-eU<ˇ a@Ak&r;k+k wQ m@PloΛ/8!q=3 >8mn=jL0$P ّZ5rļs2J4#~w~+@,IE2ꍎd- p:5=y*@+rrLwfũ*lvi=%?m~s3IbJ/5S l[J{N*hp,0+`?b'>kKk `8O;ŖǦ7AiTƿ q)rCӴ0[/Fa G Se1-BcSDjQq/r8HI)k)  LWDpPh7l`Vd/ F<&!WOFﳀ';5h2['4,ߔ0AsЇFDobGp/ 2_;!h\Bjn <]8!e(LR?>r?[pG=u ld-|T@OJU5: <-@|qm,_!/!X[zW)uOoi,vсfPjv&<)»aW |8y'+PX)i<[ϰl Q+4,y4B{`_"T)UG0YiڳUl2&GDC*Vɣ(H:N*Hx,}eRԡ^Nh@h pH0J?$D x6<·ħ# Owŀ{Lyo<vJ*^ѝOIm<̪稩tVNj}xeVJꚭ0zV+V;5%Epuv\Su #|JB̓|s SDYf3Qr{I/Ƚ5I9oHo3 ]`$,N R @Q \ EVkH^˩z%%oċP[5LK9250{l`>CkJT(nHwpA(FGޥyDm6rOh E $ !b?|tmg|4a+~#;"Vޖ=2)C&#yq3GoݝNNVcor> Y5 YbWRJUɒ ^PTPYYbTl*i{F'\xRP91po+EAcs\ݕp_[cF%RZTeVlF߸گNQ¤wHW5H̔ 紙K[ꭎ| ׭}f|DX-&7D.R_- fzG.8uѳJL' |%Ȥ-6`jjF0=zΥ0bntnc|!.9Lqk@ʧE=]i Ħ:'lkDHR,׸%1AfeM`KdL}o :ף %J_ix$(@=0|K{8@)0]f}wm:J:B;bYS}Oi{vG`ҵ:dc:1D§9Ha<3P ƾNg*Ͻ/] Ұ'_&d }PX.W`ARDAZ bJ'&gsثқnHƌNoໞ9$lxUIyT 2F*,AS93Ԍ3BƀE.7Anf}7c,V/i{'^2ո:{.}2; 5cA)PoabhDqs<֖s,&)3w*D&E^D": X9@t`#ERM'SeыzxHqBӿjGBP8=@U@A\,LgUajx*ǁ4G뇣"b# /"+7Q1|0NpٺJ)ca|3-E9aF|~WgG-2a rR+7,ie5jSC-V[lC^űbx?w h(A=PVÃ!G]3K#3Uqk OC Sw8~l) Piyri1`\m<ʫCmQ$k{Y}ۛo@|Qv#!ժ4/]҇ Q/ L棧 ̜be,ͼ*ЋdB1A34BB`wn Ͱ)!,KVJ3چ+[*Z3j}+oMDULT9d~|% 0JBX{4$~])?%(-0 ^~h+>XGdҌx:xudDXM&:;56oLP] P1HIV.Fs3W9Q`Cf)܊RT$rJ+ewPY}ܪ߰EظZ,TuogX8Y5 ?nU.4.MY\ hd4gD[>@SeܽI/kk7S4geP]wk"RߴP<ӴKWq>C>}4,ެuc4iNrۓ29"r| ^Us tontt8>ppfBN0ft+}ܠ+(+m/2 8x?R M)nxϹ/P?vYbz1 "+5ojVXyR>Rr??óQq*9U~WǚRfX0 gG]̜[deRGZ-{PmZp{UNv[}tCS[uᘍ' f=OĞ1~1j ^WfB&e 9[u5. ϑop`ǿWjAPbb \Q"~sJ^ mmkRR(BSz "Y+Q`_ r.l-X;p֠uE3<G?pΠ1VS)z*!KaZ} Rwybzsm Pb Z~yټJaX}m"d|cPx8&{]$*82̄ؑW4k}Ŝ Y6z`mTC_!`=*+H]Wl*)S*@"\)9Uc.RnmSik,d]'+t9*^P7UW[1<;) >/IYPa|ELշ~2Q{XRͬvaBqoLNuD#)>(y+gUF]+8mh{cL&8W[C2%J8j#<;&J:۷hr(A"|p* oÈm,n"+wE7VɄHb+bhdtMD^iYSlH3Xvoܿ6o%5)ޮ{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+*`,oHusAka}ڎ C:X-ۿ8\QcUI|HGi؍ɼ_s|[,StDB,vAw=c C.KI$Y嘥I:`;>n C^@&XszIދ}C74q8P٨n L/=q0 9jASW|;z'd[okh(YIۏ, ޛ(N #T|ibɗNhh<}1ǍѫPʗٔHnY !@:4`g)KZ&csbMjO@M+BrC=() JfCzEi%r&u}u+ɒ2 M`op=l([s"u%ErL?nWL{&BP'( m,nRŕJK4<-ӫ RS> Z?W-_ǀο"o|vqG0ROd=fE?I q4˜% f}7M:͕$@Ԭ',|5̞IhzJ)O |'х/G5즞.#$%+e!/_≝"^crx6>ݽ I`~yX͊͒HλYhx>9);WIJ>)ժ.9^ CeSyGibIG)rl ;J-y'fo~IaSѺAk,vpɵ$/ xAg ޿7z|.PoSFl_}'X2H X6"P!a Zx)z⫒1 FߤWkE,n<-m}`yjnn7 b/A:\FPXIjѹχ"5Y5(t6jh3jJȤԗlLBMJhgŐ]󧛰 Eql."[w`XXxEY%үrk4 G:u2k^Z'> grܷ9JIf2WKLhUJ ~O.-adđG%;P!LT^K3ݒ ]=*5Rm<#8^U ~QH/hU|JA@05٠< 2vK/e@ιV~J/\3tӜ+(]HӯV5Ѷox,`h~RaWI-LQKY(rY(*ڡ?!N|^pj6^@-ܪ +|O rfJ9О) Ec4j":tBza }'$g yS:akzg$}ӧزBi#_qhCҙl2α,:U-YZo"hYӑߜLVuj^R>{unSqlmn<*P8 "ǂG5g6@-|C0bl0)*pw$f y)<} Go&-&PK^UH iN=X.(ӾǁaJǜYu'eSTfhV&2 ϑBouX>BV:2b =w~'{. |BYAp򜁥e1v`As'1oCv55%cc:ly O 8黱l4ϬK5'#֔8vuɸ5cc; ũQWt7 Yn^=jvQj{K&ߌ-$p/&޶!QZ';bK; U?ݧq%!🀪m~ =t4eeP Mdj:ft 3wT+{9Rzìג (6gA F Aع!6VCf@tP"/jj/vq P+_xhV? nEqF̏!ppӜTєFw!'H&{ $\jNPv 6Mʀ:O'J/`? 'RQVfTXy=e5,i#/./#3!}ѓo}r;9lp w(wW|38m:6sD`ҡa(Ndǔֽ awujz2C2ć և^:V#4}Jbv-s4' w]ʳ 3$~04Z \Ǿ qR P<  g343$KvPy?kVО݃QV4rmWeF&ֶx nSY8}pyoO)a#gƍyp{[ě5?ɰE@(K=YAyYeCm>O|?C,`D }e%v5"EdxH31bsdJT j˼!ӣ;>*DĖwb{[=R|Q8ƹucNplIk32&\c!`iWdՇ̄~Ww3P;>kF[t_DuLLj0TgW3*H ˖+2|ޛy;TgA-nwu#BP [[*kS%DCW 厓Nn/jؚ<^" UC3wK![? V|| _GɢWc{QSa n6 himAszz.>g[QKU%!*I^j.0C.\4eA';fj*lB=W4=HvӪgx&6U1VD`H`YKKeՇX`V.G|ou Ⳗ*A7m ?#EDdw#o2FU >(z.NëE1KFYIyZcƀPc1;VUZ !Hvxj]QI"M=Mn S e+KHipdN_׬d{z@"T&|JZpF!mWq7g))^##b#|k4DtgS$fT3I^XPt:epnxPas{֐Ip`]q@24P~ .tGV_8L)e-?N"8dqxWR.ɂ㉊$ c'dJ?E0=A1JkApɃk{L.5:J$^+&:BT0@PHz6I+A~R˳Go>̄U/ Ò>+r@tDZT2{vôΥǷm 3 (P$ob׳_̤t'rG`J ׏>ĪY+i!UYl ש |^> J[M1v<AL>\$GC8sg: c͍4G+K׳Q*~'J)WgO _@*QJH*G͢ypCifhVR,MwtBMU"HSIktU3QySQ :kDY4⇱<6Ql=wIGi*_Y8MցxTϠ}Z`VE- H f+kT7^ HP*NK %^\UY-&hlXiu|n|&Hyck3 MԅxK{y4ETHy2g8kw4EpQb!Yzz;%*}6d.=P5 n&T_d-,섴(`߰Aq?ļtd#N2?\瓆9 r6KOO/^RܲGrN1b >hPkI:-\<~"a ea9ag|iG/ +'ti:0UZ\F+޼N4$PRupZ.A('#`JI$ƺgl$nv1$#~]LM(]~}JUqїb?'آGCΐg[\;*`^)vkL)kbt PtFD2xdJW&wi4s֨)O Z.z<Ҵ J@ o 1BnmphR\?[' sʈ;E3< bpшlС?]!\uy8V[fzߍ$/ oy8' &J 3cIrr+Mc,3$PW[1/ܾ~.g+VC2JA\9c~e Ӝs<drfZ\?oy D8yUAB'3yKIGjK$5ԢTDZߖx{hO-`[YݲfAO Do6Yr! ǵ({E:`EzKӲ؉STSōBR=\ITdKD%3gb tH׍rq| ;9Eד LW,#adp΃c7WCV;3B-J5)!)œ{w,Jżעd b%V0H}~L* A;~0d1'ceX[V: 64\).N\wOfޫx±EZKBBly&'P6S @9zY\'=QĄRsb#V`ZrΧnE @,S-hAf#4KP}?2v&DZ?=yـfoH9ix4jG9KNuyuڹL䡪qo>㉞G{"JQ+$_咇0uWs:ZCX8O=g=h]6Q|>Kמ.|u24GꝾHNn~RH}Rn2j~@څH~+R6pEh_(- %C{mYvos#F k?У죋+|1w'a .:V4gi}!T ßiU 1i<ݶbIp,ݝ p>ChIvN?gl"8[`͌#T@| O WVnƚe^*J(Tg PvϑǩiȪ*6Dz@^J <Y*p$/@vOA1֞j8Scܛ1F+vkul"l. v E,':[2EӬoC8,9렶=buV+6Q֭.Mި1w8roY+skxvo| "JjRDbŬG ff;p+Bd"(22C),[W w* PN;>jׂc@YoT7h%;u٬umdnOZD=wLș4mG=!]2M`a3 0kRmx!Ngz,c>cv*G⚶tk>u:߁歃g3V,]߳f`b[DdjA9l/J@`B9JәvwfVp;ǂلJ^9̓>Ό,T_83[3 ;h)v֑|}P9Bgh) ~5)^EW%KC0rKdVZIXȽ36,Aȯ`>Ti#c1 :Z @v6RG B[ߩ!SsEH:=2X]r$}NӜC\O ?3NZAUO=ϊ{ Jn*w7 | fwvw  .lfn`Uh <-gO[2ECj<ݧ>_ vXGj-Ҡ,̝ O,%,mJ~ Kd_lŲх H j=`63%= :#NV_x6C?RK4R!]á`xKL 4dtbCLƎ 2#[N'c$X漬}M5(O??%InDk M6N[zS~dK9t'Q% p)8!1{ZVA@}U*U{mv 3O8]:oWF. Gi4 Ьe-т,jZ#C8rB1Ce J%`$߈Č=ft@T|<Hoج\TuDQckqmk*fnqٿlb t-7MpudDژ`^بz.^ԜEŗ,Y 8C]$GǹAݱhw0 @*hF (~74xZvs-Zw- 5\W[ ϡ_IF j46;Q p2X03]VlN30$[]\gpX8:Uт0 #+ .ҊU'>ӂ/Rs o: 2%Qs #drjeᄉK:PFd VE[}2;V% ࠂy]T(-ĹWp>hhPܯ\|QBjIxXSJ'4%*wؒƒ@f WHpN?D¥^DA,Fy!`VO#AW? {-x-)3>kyUCUEܐݕ'قcrHYF| A+,X?҆)c[-$ eNX7 vN DvV~]ʘPk*m.^kl>n^l0`TXn;Z[q_d # ֫5/7AprSrQ|G`[ZAl|q cjԬN6=J3Tsw$Y"*/ilyT*sP \2ܠ5 >̾vZ 3LSc >2N =3S? *\Qy-*i mko"F0L@â{zRXLxd5܃k=dfhBs!!C'.N%Z]?BH pL4DBVw# (~!NKcí,L>E͌f`UpNzZU&EHAnrKr-e񽕪rwv\[GpFE77b%ƅ㯈wAO_.9N3 hH'9}xxW u\\Š6AJvJ)29Hށݕ})8r/$C}x|/#¬P Xʞc<$ *8($ɪIw-)Zp5P zw ; Ye_^AuZ8?]JSl9 'J/Bh2f zK4FJ#)4BF*'4{sĆ&51fC6JprMjU{҂1L,1IWfG%i<O^~/r!|ՄcXVv(Y7r4@\nybϒ "VF}iHқ2XRc%7h{Re9)/W\^]3܄ 'H3x1k4GĂsf yda4$ӌ1Ex!cMv1cb7gjMy^N*wx[ gk0rN)nC% kϬT`:Y-m2{Cۣ{IffZ~dqP0XIlTD5m"e_K*,iP\?|t#'Ik^bN.*ԵpjQU m Rғ5'|ɯ z/r--K\t1u qq- 9|M,m?2\N~®RVo5; XIEtiiCneD諚Me;"1,V+˪ `AIui`SfY!"1Fc20pJ%q WS_elp!WvYK kK*]39I?e-QO'EH Jfv+M) Q 1Ҟ\EayԪUzGj%iHLzj:9bSXdB[v  _0 ]ƭ$峏(D oyC\X9ӸΙ܍9*%&vY;לbffS:B5m2g(;%1-d*C-x; <"Bll\w;}P?lxR-SXM,Ru4!xN4愿ƿ,,m޲NFMK= W4 8mʞFBYOg~` ɮ 짗 !z#sX4rX^!t7YM/$ :ƓF)-w>݊mVpjcr)UZ't\ 6 2w)Q%!3=bqIM!Љm;YvL k`cu;%GVl]כ5,Kһuum+ m= dLca+hw._ N˳O(B]SU)%JL_=%`vUّo>.h 4''RhSÆ;X%*mJmoFO{'l Go$5zJà@a.a/z>?򏆦' :P5|L QN5ys0R.e2n;?vv;ruo"դGDl}ϮY F0^訢5'&7?<tngy(4#t= 2x^)#JبkYϫ hd,Չ&ɖucj؊(C$[1hor ˇcտcyC^,ucqXr hOPBxXuI:)Ի꿦I (2Sz]ې ]tsM#A 4i6+`kY6FBzeJ)s|+nњhq1dzΐ $,p&21jj ,a==H]حyhÏ=LC;v.%EvL߁!V1F Cb69l*md2nބ@m=EG䙯t/:Pʿzk FhX/o,M#%4N8 7.-?-V',fTMSvMm%}6텿5;Bi"\u<6qO XfSP$LO`mL39G)ny`aE(`Ma?Yq)UY}UG]VI}S!mQW$h [#"!px`cV._Bn&Da0iXn|3\9QUn/*oN^6U?QNL@yAvu畯MsߖFmhzc<=U K4T'+p޻r0*`Rٱ[=dl;zBV*-$0.䱔:)"] ͠B>Nv_֧&t;miBT@ a>}5͜H!O9SRQ?$%PX#Kp}Q&`b+_ ^}F+Jm@X _cH4|S9*x߼[Vy$m&-_Q$頿,2rpx"Y+Z|^>X(g\okZX+qco _ }iV5{k/QShmȤ6ԧ\\3ksoy`oo*7z]ݒƗ8sqGT qP2`?F&9,Ӓ( rv}Z)an7d6<~H+Kx_dx\lx5.q:짺PrJV?NSg-aӮM,BgN F2NH 06I]ڸfk /fb4>tU`fqZ]Q+9a JZ;v^a! 4--ik˘&j/y< h[/d~7*{SG!aA~hwa')ŧNM|.iב$52۞69zRB pGh;;o{W9"$a S!~Iw9tǘ8~֤i݇Og K;:qzRb#Eo^ [! iln-93;(f;5u8FyD^Yc}*@){RP󑫅ڼ'7dmh~'ت1dձ'њXQ .z1U oPpX@ jJ\j3oo6jZׄ'L vcOc/@pKVŽ $@{O/M$*_p`qnW=eߟSh{?[g{#6cg$*/,s#3b+h.ƶPI{E)/WF{4] Q+|; PqJk$?Ev#lHcNvxt% Jpdį&W"a@8h'񘂔Edjh 2 98YP7sIV;2ewJo֎$nM:RS\G<Sg8mDܿ$=䞕B- {r_!.yc=E~01F jԋcK܌%]g< Yb얞/r)t@/m(g뜌 Ue$IMXMKT$H yWI^:7uM*S<;{څ$; b0W}<g%R@r #Cqx3>:mجosyQǞUk|yY. Mޏi*S+'Gjp,Fc!3~l Të[Qw귙U-ϟ^xyoA[:18q/#p hтV '_.cˣKTٿѓfZ+)Х,_ELL:B7B }rd;>*4&6Х}&+|b2pCD>^pj=aaFkͷtpư97qH:+x,:K0qÙ2P!J۳>#ĀuOTVQ79=gBV#֢0֒Јe!\Qu Q[m~'9+A92 @f.zIFŀAM+i%At`M r{yiz*T%c,l>~ Aί@F֝O<F0uBM+7UX"gtXm/BD~1٢mfJNF`1fA5nl.d+<..Yvi^45EdjSdgxlpHo:,tdze~yVo Tfv6!Mn'-ɮ"0 g䬔)P ?nĎ9Nlp!ۨO+Sjx\kHL|J}e o4T7[6w+ǰlZ';ژwrxnq1o-<]%0Uw)R/bSzիBzjEW0bJn{*ŊɒOSX:?VԫU4gGoMCE"Mdy[qA#y%ʘ^!}ޣ`ϧi:.ue!0Pl])|ſ: +n,Y:1&wvR(JQo0qVQ)Dx=nY妱/bɽK!T>ɖ oxU| wDYx5 1K͵( y~rt%XV׮[qlA*N3mZKwkK'FE\Q-p%{9q){%m`@ tvPҭ7D҇BVt賊嘥 ox3)Z<^#`O[9w¾#~8Ƌцn;6 lW>}s' +rL^l=!DcWMRQ %Y+Odv0Vpk#:eVmZrIuG>-K8'~h=yXwOc̎+/ |6cGVކC:`['/Ptf|8Jt.Fk&ń|EM/'v({vU.]2Z:# CA-_"TIŸn)Q}rD-Yxep dPM=<'RP%:3';6Xܬ?B#i-dMkx25kϞ6!51m!Z"zX>Xu,4q)VC߇㹔?[сꅮyBn{I颷+FR@LwjU):d{mJQV۰vzH5 6M4-3\j6壺!D Z1U/a~!m @!KDr\ /mƱMmD"HFtUGՃ}_ .d rKؕ 1)-Gxm6U!mQ$: oӳEt #-WŁDsSxL@$~4?4=o|'[yMay@뤲Ml 3aE`L|/II<чN&>-,>]\*!?Y-Dfd'led܇wFgn{9dٝ v(9|*0.`}9 IW )>F"]y.)#3oex Djp("hiPF^ޤNc!ͪ1a]o:g*%D}n\O|ûw!:-OĶWr1-[*a\^4Hi0M{rS5~uk7VݐU2+u|۪5q?ne/')Ǐ` S|?&Z~AwH_TFc_(Fc>QfRno Ƽڹ$[>Pх[,j>[TRhk@v0d}1-򿫜s!XJẊ ꤳY*O <|f03nRy{ +vb`iul;#Dd'JD"cX1C&t,qUS\Do3~i9J*q700dOSdvu{v y|Xd[`2H6])c;+sHzagY@6@Moqxij4>Rb7Eg -/$k&uv[~ x.K,6*<ӻ0)}}2Ky%xuw:%7 |~uʳ/lP|G::YܚPe3' ڮܬ|_̩:;:M! e3`އAijZ#;2Ϥy{\61Uیwbr6IeoS£ ؄HN髎6]LAr򒗲7V52<32 >ѱQ$$dkXd O)8KUu鳽zP]cI6iqt $ J'ߦK5E-o*֒c(t4P|Frό"B_)b &Ƞ]HE4'b<=od VU45Xmjz$Y_c$aX=WmOHnAp.L3O]lb; = PwSh^{7P{>LW{+*fOM7WO=YTũbxb:S HS\>I7$(Q!Ж\tM':݂>Dq]m͍UĀp<ގ~;w0MDLndX&p*uvЎ|o ?/̱A7Y \ĉ| ]}֚ѫ9OFSjDMeGg]Yo%n}E4˵em0s"M_8EqRo_G*B[73mc6CVF؍,Jgƒ.%ڣG7r>lWI~&A>d0. h'~^3adEmj% d{B}䜶|(cjՑ>D7VzGQt؅nhcV0)2">Rm2ʱJd K=4[Om|<?T=\ɥ;0WP;+|uAxlщ94X"H]O,MC_dR2j6QٺamAEDSo7\NGRKĶSc9^[&R05~C@ڨtB_{,o]ys΄.Cܟ \Ip $YE{ؔ7{mҸ/Ke͡ ئz:S03{3 1pYe|fRU+D hbz`'.A 1K. |(afpT\C*(8؆YRP5 WA > Esf\:|{5Нo(]a8 9+4lƤCGB޲fH v彥O1%JxejXd#)LL9)[i_L$|ڮ#90fvE.7 Tށ7h.j2:OZW wXFWua!Ebngk1 ]).N-P4IV2'a^gIu, u5ɮNmMdiu)M>H>}` E/Ѣ}Zo4wǦH1Pu (eCnVROeܮ (Έݾ獞TlCH;;*~_`R]E5a3+ 0ǶZ>'I9vG8q)T?g,WbNif w!v["Y|>o|eI vRbjrw_)p+afRi7WTT) [KF)еbK'uJmqXl> FA8J@A ]K$Wwρy㩂HaL>U(nyKGK(!hA6k.B[|5O0)S+;f6qU0#fѤ &?uz[ _gZ9/3Z?>\LUHIy5qI On?n{JPrH ޹*IvlAj$F=#h1ɥ[.gD/'TK F;XO|U͹M!k]\,Z݊Ge6nSYqITP'Z?uV?}܀P(rp_R3M^\<܇M-҂8taHa0KfgY$` :z<Ǭ 1%\7V\[@);XB*WU$@K6!!QMlNhLԁGjAZrVh;oUA}G 9s x59X#g[; 8[RTM/Ɩ.{ h^w=~\3X 0z gÅ(sgf ڪδ"jCmgITjZs ĉP8Bk~k$.,韽G'#[TًVP_ BqC0ʪkUuHѨVRkvu kE{b'gnd7[$EPxmwpF3fddÅ3 uf<`d?U~Rmi;mxQ47h{j+_rW(o#-70x}F0!(8{$XgNi?݉NYfݨ!wf塌.Kb%<1EK>Ei 6 ,7iȕDgHҁQm3Y(LڄMnyO*K@^(a=)ԟ68Po6`@wW1ͯe(]zڄJ 2{+C[& $P{[X*ǓO<>cJhM8mi2aVB1 ^;EZ,-$&k z); >w^,K+9Cx e? cGn)w|6I]ܣW"7hQ<'v\;Yݻ]m=wE< sa '#N^Ox%!Xґ=T\`w9O)d[iK )EzspI~N1Ձ9IQ&uWHL~,GI7HiJF.dT]jPZӆY\ᔾ!& Wo;h} UK!F1- հ]˰i 4Thou].I9Fiؿ}|%Poy[TղbקuNxXbx=,"%XoK5EXa~t?¾=Y`=+i&$LR%Nb6h$ǧAJn霆Bݯ4e RAn)>z7IKb&[f|5*!5Cwm<Z{\Agz㥿2MvԔm~%_ߐK-I'Sב4#Wsm?*C-1Zo* AS9;'eqU7`Ff1H9s=1!e c0O#js̔˯@]*P?(`ëX[6ذ*#Odȣlraf jx~`clOTֳNJ̕ĿGwcM꾴3Zސ8E [wW'66"~tL%۳[kNVAh0p`%"IyKFaIVbWk8F10íP 7Tmy3=|'XH~|/2t;>[5Qh+?jnLhA8RJc0U;xa⵽Y'M<.R(ffE(20 =thl9 Meu_G~fZ|S+ ϟݮS :1 $|cj\N]RK5@u 53{ \XȚ=6822@bWdP,yhOg+m* 1dLmket1"!Ljcrӹ(:+z[ -y3vfILTCfAV57Y^d~EYj ^n AJ_Y<ճ?Զ$Ŝ8%+ ܿ26Ҟe)ڞdeIԼ34*}^psؑ3* bR:S)uM-oD[4?6@ -/<\Xr۳@_sl%\jsZdi&\aԞ~`!bbuQaLL}xxPgbԇƵMR?w ز"GoCOpr3*]h×8ktΦL ڳVPHdQ䰢E^f;ĥQqk>ݝe.q&5kBƀGq bػ۳<+6-2=5n,Tq|LĵhHG+ڴuv8KSꂠ8M㹥yYq.@*8A(-C 7<7~\$X*#fߞ=FqIo6z'e)sV\ Ke:}l A̜{oI6rlV3MkyQ@1*/МH8Nr4+xc ʕ3ЃhoOD-@2>‹d9 yof¬p&r~Wqt";uH6%_6sl?x?MXQ1)0mDޢv#J] GtDo~XӑI@ .|eESޟ'\dtp9)uKAA<:&pϓ˲<#/12NU(YjRH^$/h;ɴEs:JM&Z{cEYJ}>oTZ(| k;h?F7yIjԨww'"6C"%8`#C^VHeok+ =" Fܭ02Koj*KB w<\,J$jpKǠ;`PʹLeRܰ%]t1&Z~~ºKȸr80gIĮ;=>̎µ~Xg(;z=JH2Ux/?, A"Zyj6IL6H2Pc(El+Qv"Ն\ 笑\x*w=˲%INu;'?Bfmu7d[Z|t"<}b_qCfwHg w'w8Yt5nX>a96ҺQ>ݭz) FJ𡋰vJJEF+/3~!tl?g1`ZDUd?P1kU疶z?ٔax@O[ʔ BRVCGI ?^qy+cCq6[^GYv&x*c7# `~jr@GрފK|\(6o.Imape{;k!\QVh:zOK ~{^lN(. KYtTGXڬhSm'9k/d=!3-[k⯔>17r)tc5 Y`kIj* 6y |h_..D`&`PoYɴ4&d+ DM˴Ӌ\g@m:zDLa)B;mn7@ϗi1mڨӵ˘e7|Q0[RL8*lD=D;A[ 1(=ͭ1ycA0#x`Cܳc&IGi,6]؉}d!N)]+8ZFph^." o6rm]v1;J5g6'tÉ}H(ߖ pk1EM䮔# n_i[q. 3U>:菕թC=6H4"*XҔ9;u%DT~J5~ZB]mE?]={ZXWE8o5oTyt*~"0"j.{~ \(8̚C,%U, MLl574C@ti{w k>_PŐ-|Bjxˋ\ $ 8_V^:`Fx@Ď}ŷOd}&/؅-=$ߌ8Ǻ(͂# k8 {, iYQ"*EpU7 D?8>:_0Jhs R IݭJxҁ< W`4M Հh eg*mkltfL^\67re oGq|QQnopP3 텉e:E"'i]`*@0e@"ŚPk.UtzU!׮I  s983aظ^@F醍*[:[_N,OKć~p}4,wkNMښ j^'0qt2`~`|Z /_B̮1ބi(MRƄ8˫W mM"'"om6<'qaaLŃ QE<3ϭ]Ae u35E2-E!>åI$#ו;*_zOHy4;'Է|{ sK&G \k}fEVwMI!@*ZèNq1s^1pz8R v\Kv“ۍ@ؕik:ә]FqMߴMJ^BI7ɛW<& ;ξ^u B/㱀)yJJ<`zL>t b?p*KS*kcP +x\&<&\2y8cVRVJ8L&d5<;wؠCF~p%&_w<4=R:uiiLY!RqU};)Ϫjz{U7UdՔ=3]U8yݲYL@}4 HN Qs˰L+ENߥ *@{O?Cؔ^Y~-yߌ uzZ;e2.ʰO 1-hqP~c $/a/&'O)` 'd"%%MvLɻ&QgUS*q?X^nM/ĄȑAП2_`nW=Q0&s7Agbxy5G j4x= pi{BnM@dcm⋌m \C1b˓Ѻ>ϥK9;+\/F0$JE9֐rGd!Te! ȄQ-3J0X+ehnύ`U/ǡ#,!:s*=@D^nQk\?E҉cSQ-[b~Oe"4|r$J呸4oq%5+U[TE?/K/Q;?eޖKj3+?#j"KqGYGOoXIt]I/oa!5CvZ[?<6g%ok 넔8U%})*_+9iuLB2|by<ɷj mWqЗ pˬY{;dM$ P;4^d~+txO/$rP}'p.NB7FJjI&0ӦQ\zOSp8<|}nP-(g|;ٕIt1K}|=K{&㳣]տN?H'#4W]${q/bQ)]e3T8p[ʸKʊ1 O89q\oqy7P-B B=`S ,8~xf{;O+To*)}K3u{~Ÿ+DZeX`oVcg9w)x5Y"MP Sn-!7.Qv&K\*eh{~cAXxLoȻbD7=>؟֜G$mBiV轈{p`/mV^ӝ%iۦ^b符K SOC._܄P*e:"%HJɫ(BTtݵRAai~3nlĜr8ϟ !<=jB rTD:U,+ցqq}KВ| $GWS'X! $$q3*vR% )nk1RX)"Uu~)>UBBV뙜$Ӑq$@^G͜Z+jk0%|\,l}%*ܱ/{`ӏG1 Աڹ 7HHP!r&!yj6ψ]}u'gFGWS*+üŲ"K\j&l]IFHs4[wr+n0`d.Y̍tQ.N4ńB\ :Y8e5!(H02pjx0u@׼\1>MX_W `9竦bR>!v/AeW!];ԈFd":^Q?66X(2& $y9^BQZONj3j&fϫ"U&6 g˜m cϪjT3ͯ 1H(V\Ő"wv[r4 YͲKGseC]pӠ rUQ$]7V{,l*N^: JKmفAv;_l_4h2~"ЗydmmM8vez"uZ}L)9!ٰ9`*:qحRlkT?iwdK;*roBv݋ŭϠ`k| !Tia\z]R#t={QJ(Y ( #۬">f3 Qt (ۙ,gBy,.`eo߳~k@N@„?kRd8"NъLgw sɞg,ֽa*tQRN={| `kt*ka]}V5 ؙ?z)VHɦBs#~ChI/&}+?Qo M~sǽmnT옆m\Z_&!NJc`2,ȑzy ?^C<{ۺ[-b]DಛҚ_P?m)Mϥ">;tui2HٸjëzqL6]Ho{kN6dD <:7JjMsQ)?~<~*}Kaju|^, يpHiR+h|]f:Fp t./\M4tN%Ko{**FIေ=fA _3ʧ%<%}Þ.pٽ)30:\FixSbLlOʐ sbvUl)N`aavAF]bPA 2r5oG|PvYJ"I+v/T>55k6cЙS[\7Cq(;"Y^*>6 t;R)ө8[LB#1/2Ӱpy'$OO5v&aTN&/vD .ryDT /^aGo2ii 'UIV^CF,`#qmR|mBr W3xK+eh Fa0N5G P8fR*Bb mԧ4i2(yB5l_{$b6D*q̀JT$&+iqgq:B&w<ϿMr+iU~B5[hݐp hKjɡ}|]Q00V8ȯq}r^JO5=mW#cX}~U2#".'ם9##!.lH|q"9(w p*dQZiC!t+ϐ"ƙYРh@N8aR'y$ȇѠޕaB2H$K+zuWg}`heaPʘ]Y3B}dq4?mlNS tM;_~/%GIo"ŋ|To,] ok81XT^vph O ͑gpG텛; t-dlpp^36qQF[槪s B|T+Ãِ=gd/#PP-oO ,ܖ=euG?m_syGC %'#аB ׹.'ttҺj +oJTAu6C#>RgJb\kz{0S?0s숈t?#bx++,ҍ jN0XHF(N."؜KWϡvdC۰gF7y|QԡὬ1e i~ )QGE 4n8FR_㐤-f׋6'} 6 f/+YrGV*`{ 륔uU ݡ0' x9B3mGy)5+!TcBtt=l 00Q|9c`u$xiֻ|nJTHh}ˤI0/ZtvԚojBKsс5ۀH6$҇ql}A.Y8zK[({,:z$Rc <`k,CcZf73LƜFɎӗ82t̨" N'̱/]Jfk~Trfq*.s C"!(*W N[fs|a,JY4\=ę[Ъ.(hy<3J(i]8#OPnɰۢ`w_zDH ZcMϮ@Z.e;|ރr1\gHǵ!ȝƤy~ъu Ax"9D0 al TCAlaOBg?;& &֋^b8Oc5 aO {&3&B)W  SHzPs:aome|Vz/bYҦұJ"FjYT5_ůT5J*HdP~@#=7y9s>a" hțO߲FE\I" R VؠY[b4Br=Ic']J,ޭJg`ZJﺧS Z v弑aP® uXɪN:!ۜd04q䇊}ΕlS0ǘt-ȞZ-Q1:7!2u;윝)R,\ 0yQKGrQmN$6TT^5[$TO[S\oqϭ0!= _̣ၷwd[0qQcCjaBWMw5 n%_+kq yEC.TJCfTPSh0T55(NSr6!/ͤI(Ѯm]G[8l.Q͈! Ͼ[1ʭA9 w[#)dS;R$5ʖevvJMd{QߐƋîS"\(≙`k2O:ԥr早,ḑj!~.T=+А(dQ;lZ@ 5g`2NMbN,_d^;Z-d!B˃cQ2^3d=z)>'/zs ӡV 轎G$ڦ6OVCn  ^11 <ؿIv1 Y U1"Ė;9 f{dzs̢ڑ"DJK5X]J{-Cu:G[ h9:P1P޷'Yt - hvlyr]+CRkk6v(Q0Ͻ\NX<=Ki&8!dĴ4;;\j1Qz?0?Ғq*JcVo.ڮO<Ā{OH{CS\k-e@!]h]]ph>ЯuyA6n0A:x#fG3B[UHδ$>m?`R ȍv.TO(=,G*r+xrav(AU"gdH,R1zޡLTy_ok<;ܻ)Ru͗;5J=Dah)zv5hO7ay26V'WPs,<9xGoVoT;ܓUY[gI !4ݼV {`)9&<2l,gh{ºxV젼qm2 )aAI,(;ᷦBz pfODΜ%!^vmX+hPw!` ~Xoܴ=AmC5:ӳ3zo% CTUJxbdq^F| ݜV<ŅUz#L>54X|f/ȟ|[鮅{18a:a"1 ,Ny ET::B"Lpmz$zs'&,|ϭ3 kćw:3 Q=B[t$r8#5׳ѡ.88F^;٨]A$[CZ%ך ΅$I՜#}CMhe P~7RcD.Кdy#AgmFJCкr%9cM Z=teu'"Hf2t|U(i^N"\f^1Г LjjpO!C>HDzyX @&+4&lϑ=Fΐ4Yi }n`Gx&ڴ0"_SMBEFlš39^P,&gNWi_aZg tqFq*_d((ݢl\\NE"Z>IKb %\хOLwn>ثiTԸʩ@~Z ;2H( >Rd$fo<u&'۠ա $\ffi mki@!ű5$ķS>LkCP4DZdX d8~s=_#m, E43,(ͣf|ڭ e%!yb: Ƹ1g~Yv]؂-Py,`!qS&uN }>ܘ]9gooRCJ.BWONgi2rR|7x݉$]X0$\#*6¨otPX8u]x C>zkrH tBQhUv_&*בs4r [>rq{L2'ȍ10xU} _~ٺEx$j($s9ߓL 6G L7?zO|Q^_j/dx?pju &TmٱY;} 6(omLz1V{^h\'(̿iih!G:0vb-xY~|a-#*YۮGb;(8 F%*n ZBTx;5QVk |t~̍A/q.Nb#,T7<`f( my$#8#:/^K((c "UD"Td MaF g3ui \(o~-ΧwW}dhWI,; قEШbDU.kXk7%#s0/ v! ߱ gzhXsTj5̯oPT{VnR&b\ 89fF>3"|1g%yW>ЋYld$n5ҟ1% v"56vfJ ȝp_?Yc|:4QB] AFGkE~lzCXɕ'`FSIk\i;I";Mch~`+Pj u㕃ICf&Ln-#]Noc%󼴁=C1Tx6gGN?G!JInT|vK#D0l2f/@Vr(ر-'hπ);kJC SJ5ߘ~AJ!4C$\<__A8Ju8 "ߺZaJ}JSl7qV 7{oI=dj./xt$4<g $65[A9y\aHЎwF ; *v&9r[EzR =wUS!ΏR}ըTՓt$wٲ=(BiBzi qzHTQ3 !b > $(\|/AccL+=ڣ v0S)_wHe^JjAêwW㓯@c. !T/ %f=o,]uVfmq"w<)=T'L< *(y@DPCt'䧱dIrV maiOp}ɻ?ٌt:VU:~@A _ A!dԣ^`m/2Î>T^ m[j'ǟo}|wP^hKyy4"拱 ĵAĚ5Dv~4gX˕yӾOOˮ5{ 03BOr4dw Aw:,~B籱[(N p"Q *2\Xpp$rOّ(jԇbW==lswwR^t=UP{QPG]! i 豏f>Y{]_JF V&DbDNd`FpC^;BQSx*7Unk3&h;䔉{:ۥ @u/јQcv3:'hW5-&4p7]+<zGJ {Xn2=bFgLgQmhIY=Y?M=q~ТsQ>^$HB\c{MY/ב$V<. ]{(\l<6"`r\E6xT'(xH LtGB-;y?iK&:S/vA6Py mX3[ܾؠN¯KmFo$QYaf>{Rw*AUuB/Dp2լU@噷X@NgZ~yJ2XIW;;5^/l#?ĸ"^dC}p0/Ɛ$5HEjMśHuu"镤R4{ة%I0̱;BrqǧpV,5 x^ =Ղv0|35 =lD\LKe;$k\^8%*̗3JTib kx8{冡4 )s Kv zșz v=k:D$h5NĞF6693Ʊ2A1X7jYޤ6r"N./Mu O0Y6ϫ  .`.6ށ{M8,0$cd1qJ) #<{35֮X4Nyj%4s NlթI\[ y>u.8|zԶh6ȠG&B!ZhOHOO}LW6 и dl?"Q1I6җ8efdæɿ LdC!ZbY U% nJD?lZy-K-qFtAuz(M_]eUc-oĨ$sɔ>^;G툥kVcXF@yA5oxD1uA23o \t8bR In>b/FumXc1,8ݝNIHW_J#BҫEeX٨XV'bfBʡ8 I fWLx:e?CV.alxr|7͠jzۿYbgʪ'D 9Ԏ~^믏3LtTG796 cG/R)FeU@L^׿ =zM% so7d@Leݫ2lWuU‘9gavWb:Ƨdp:vR0hgbğBM, ÿ9tlƫLtLq|1;GdP*o `ra%섂VǷ:#Ό}7qC]+gp-4(٠avM ~rg%Mӯ.i o)iINْYrKXA֭t۳ѯS$y,-Tc~a Lce>WDCd@n<48~3Ey:ΑxW~@Πe #q&"[UMZۼnv nX;\tTn㪫;݉Z<հ(5d]BU9^_${)EM ߷ g !Sz&_l]{eEzӸt莄'ʔ~YhCEcR8_~ҍ,]._5*VGm2wū}S~ M?1+inuA ݓ=- 4^ zkK4t e@3zX FL}uQ9݌<1m4#hбDL`W?ltN5"_Z3D /snl0۵|}x8zcU:wu 5A=kg`Psa8 x>.*YfC=죦kk 1S֞6X@ ^9lv;@/{jSNG t!`+?_ܲK!B _i=l!:ylpqy"NZnD B;'ƏAJU. ء1Wu'zŏ'.f !mz*|[f]9KV3TM"_qԤf*EzKlҴ\~z舶, .I|Mt M qGnAR\\.p? /p00ÛH#=S*b|]가R̨ұá(64ޭ] TGcKm``i<@Y{eŤzM&g ^0!VkB2oFenݛ@t׻𔄝bD-ԍ1MKn~-`'*W%SܾfWRpLAN2^G2jv)rȻF}H:F{I*x ±[aLb;ton@n%J $WJbV҂HK?`1 jޡm?| ɚi|k;mЁyLkyk،z\&=m!hЌ4,X\h%b(0?_'XP ?Xg7ʽ8ӭi@]-CؠB2¿b38?m=Y,KUzl:,@#=Ʀp>zn,c xWVˤ`/ X Xr3>\Ǐ9"xˍnp*!R ZRx&zR@v7米_,wО?O":bU\֣.t(t)puBׯzrczL+2Oe,)k,K)۵յ,ˮO1* 7jV4*ɎCZVzɟ#-u-9T`D,Ky.>e(,\=ڞ )8<@"@U.Kr1Poh?һDrz !zѮ aMbau5d&uKl䜁T@풳VfU\DݸۼzZ,=(3/궆ףٶ6~2=-$XfG .&vr,F=g֘ag>k%z$F"?`$8Y<"״/ 5H!'>n^ ݓTT5Nr-9vp'41WkdX"AI-2~XQ(~^H}VY 5{@jnl >;cZ$Eq&x:xl?^ F <`!]L-Pf)Ӡ=ooX4 2w4[L:i~V'xf[w^YгgTeV SZu<-''*_e$<u,ryظ-댵 VM =4BYN&'6+YD&8I5nU~C8'KE pn{%DUV|R -9H۬wlI!=w(\;q=;"C7$RWwo u? _5׭BמvϺ;EkF U[j0V5ɛ=-RRwPHyH0įs \×EɨO5 T xIW3-0b|Ԙ=z2\Wj tIJL[[.##9 c=){EFmeuO0'{{ar!5gKK~Hs;ƿ5aS3֊.ֆd)dByG |މ$rļKa-ioֵ5300Y 50@"&PgT㸀탤NcDzVj:/uKy4-/rWʷoP&?H2JTdӁ7Ps!;䆚:{ǰ#D\sf_y H45MFhRВglh0O/ TtʙnYSbą j|5o*~-/Hq4XHx7V7jyDlPԝ=Y^{)GJc. h}jUsM5&fKYl*Ewul4s'Ddʍ4=#`:>Je@'adu&t¨1#CE'.g ꜟ90$c-._JQhRٚ GyqpFw#E6 Пeie&s=oQ8KGq ({D*wG~ۥ"(|AQ2 ꔑ"`%MՁ+:[Y8X5QF︓u/SR63S_ GV9G0jGˤ=# *\ЗY$%?PN0LܶAe%e͡\uV^_^4igsEc딝.:գZJ_GILvR_cDj厲nT݇W3jbt+E~L™LjjW\XQ@*;Pbt)*랔'9crEmojlfhI ! X#a`Vv,D#+'gU=Qd!54ݛkE>lViVמDA櫯G>oUɥ0'h.o Ua]Źo h8*qQh%WG[3=E3Q*ߴk{)tZy^"?}}$@.m5NWQ=z-?q3h\://ܟ/où`0cH39%ֻ&!n0T2LeQKU7qyS5d-OU?eYV> !!%}o#gf5Bѩ2D*S$-1﫼~l@,IBm vgKZR)VȌbPq DkX.%`xa/<9ɠ m ('p .FJ+_xRD9Ds6׉e3ƵVd#MH(Re+BuX'*| /G|`2Ȱ8OXѶ|.]YZ1M$ܦUl!l64+f]=V|aZʖA;I? jmoV^opJ?;o-.y_B{L4h$Yn+CX,iW>θ5'=z6? 0U4u_i"QbD2mjND֨/ fg}5՗i_nzI ϏbS[şOjeKL4렭h\;So~")n M;(V/iRK z ; O |n.sn88IyxՉƗҠg 0 ;3:WcT p#g ![‘&8UCof<0 $!ӕо4o}YUGl-sk=">{PwW+ F ף*Ya% 0lR\%̳Q@jD(P8cclNYS57`Lb]\ ;.]PQxO'd̼pr.Ih'>; n4RGkWpоFm aZe(3 $ nb[hYg[`/GCҵw'4_5 Ao93vVsL<t_8SE[JǭʛЉhW,HAm tY?@cok\~e LT+x2;<1.EL(kxoň

;visuHP0t NboK)'Hwj)-Wuͭ:Nj&!M;Q4>39'IҡCed2Y^w|R:\nH4X%?qц!W"a=BQآd: )ᢓave[!!Q]C`yhz$V,U|;Rbkw N eALx*{6H7 Ǧt8⮌rO0ݗ%p>T.̲CkOdwGN3|]Ɓ@^IRsblrڵ1JZ 4q [NJN6VLWB!Pauɪ?DqK}Kd\$'ʄnQe r h. ?JOq?AH4d͛"g_š/gqsy0l0t&Gz%y/a _fm-3&U*ê`iRwHs*v̚S,-l踠KLyk7muWL'8j jr+("NT@/f Eβm3Iz1kӤ٘%Or1q پj&K'Tt&1ފ'6߱  Ee3|T-3 >5_Iykl܍K%RTܰjĆnw*n"`ަhQh^$ܝn@^!u2aZ<'ٜ7MQB:"%ژ%4M43k1.̖) ̺h.8˚:L]lxT6Ok`-(U_ qD4tlRj(6Bh1injlVЩ;ӾA6]@ppoA;LA;HQ f >r/҇NL:r^֌t\A(y-ܧEMm݄ u"Y,a B!rIYov5 -\,ͳږ1Ryuo>n.SǡҌY% e3RQTl_\\\A8O<bWa˝+_qvG4[Ѹ|#ߙ7POm1puC i}>W󸌙6(wýc% rbϐ}(. cՀD=G^U( *r)&>-%{]Z$uJ"ʚv,r{DZQ+̂A' ɖG3\aKU}Nê8FCSk-̟C_o-|@7;h81:<үo\i ]t҅r=ڧf_F&.tݱeT{NԢG(Ju5#uv`<#/ըiT&5Ntu(8:a 0ôGt sr;R)hrnWNcT1J\z(q_&Ļc-y~5s&8, @Gϝ).Wm G', U?[}հ H(eTKԸ}5+ܿ ֫)xzdɧ& Z\dpR#Lva=[I={|8σ=3H[}Ȓ\˫{ sν-kwpѱܶg>?hC8epMFؘSavB!JIY=26H7lPdRgjCSO2+v~_79 !JC?kߞ_65ٔ$K8lBH/'TeI<^a08HbI<|IZY9F~T ?UQ]covt@"wڃ-,\A3.3ʟA:j#z1]a.KO=\ًp1Y\[mMY@Q >=ʧ~oi&X<.p`0%]'-LW!kӡ 5'ia!a 6"]B]6 t@g,Lg5H?Cdm]q{ݸS{XbZP[\?q;m*wX4fE>~jn& o@ƒ8GKQch]$; j"7zn egؙH}B4ߘH^Za ֎P=]:i") `W8.틂qZcE9CAZ2(QccewF4HtfJY;'rЊ*:u=tfO 0"Am4C&$uN_YCJ\?i]{o/f@]KV(,cxFB[cw Me0[XǍh;e6> =U^>Mzn7 [ ^w"b>;YV_`s9pD]#P{ދMŶf.F>Gߋz[1XVs A%g~//S/R{2Epr 4XY$aLe'U rSJ1LQ@UtʈJv{ k!Y~E\@V/a 9(.M! 9 P ;l (!b~B:!+S;}Z7!R1Jr=RERK\"B[LC NĬ] Jy{H:<ί\8FXEn`M T X?n[qzdIk!%smzGoًM3;9S5FafiaFFSww[)n5e ݵh DR >jش*>OtfMp>Wi99ns,Go~}/U 3@dҺ쇬C3V+c#г&MU̵$7<%$a ":ԃP.Zv9 ;X vrQxw0X+3.XhRdG!.#5(~UVCU-B7dԭ9c*= T ] zٶ%lP_>(z@+h, E :clS N{rP  sg09?_ue CO9PkAʔyA7x?m#+8(wV?C? ؝\K#en-Bm0H?tނؐAIh:0 2VqKK/A3;tbjAnjJwUUϰ:X]_̣0 Ɵf̎{jzQ*Vӊ$c$jiGIIN0J^O/ќm#}ek2w’i(Tg ޜPd8DBץ H8w4Z$Vn^kTꥁ` èŲ ){-m&A@'36+T2ӌFVN8P _Bg ~Q6j+r[*Gd}Eucԁr-Y@뎘:C`ňL1u+(XԾods'KI+ Ɍ@[f:}#?vP7amn'85,M&)MY G/rRԀAF<@N^M4ɲ߉BnO]O5I g!Qιetf2^ߞZ/})TڴaC.05`ޥl]*-XUOGr"j0 |E\y'pegj^N Py{{H 5dm?ru$F]cuK+=t r=-r"$B U} @]e<9#0$7a20h~W,gة'?HBs_ y ϸث7EpN3LL?L|%_ OƹAssxm&֣i\] B+Bn_q]H{y>J䦞~CfȶMeqR?c6BLy<k!6ה{XdTV0 }n'y!k^fԜ*[7v[Oy`TlJ$?;I?Rk Dcj3w"ꬴ864SPfO/ Xz7Arz˷x{t(3¢Hy;: ݣ`77ʴ|U①o@f{h~~ҍs./r}ׁJԜn4WEjgGE[ys;D٠sSl6ZoWڼv/=^{˵it`6M@.:jP#=dq@ªfz@ l&]w+L?*{lc~ʺCjh(ݛHJT!ܰȪHPR[ }|j6m+x^bAh]{Nx-IK?O358Q<(L7r-\m]$m|'jhwbEBS:" ൭ۊ<>pdl9fOY."vz D1 H "e^*V%=E|OLgo3ټo3W~L$rg}$ʉNRv$on.rE-> iV`4WSD6X:c=]s g3kpuib?m}Bw*Thd_ kɜպZXwԢGKǖr9nlIWj}z&R`tgc aS, ߓ.Xjpyη& qLZ<+3=dq>V죠;QUH$J`#mkZzwmaY J$Ǹ~ q!gzl= Z ޜE? H1KzSHq$=4 8WjZ?$@1(cG;5 ~}Ae͹m7P^=1N , 1FY^=fXq]{\n*vm"3ˋ8X+]%( k;RJg/$){dz$AϋلϳL@ۉsVPp=qoS{ۯV#? vsCɄ"}!|8A TmBt+}U vOL~GK } "o3r{Vlc=!ߏ" 7>S7d{@u9ׁ!#@.q^s#\dqbV}:OC_ @&S4ڮD$.[hPogn&K$w]sU8沐7}pI7芴 Mi5y/{ct3Ex rqrTP3= ː=2W>+צMȝu؎rҽ@*wDA+oJ_ލ:4O1߻ R3.GVo,GZTz '.A͟6@ bCAGR1l(ڂKcgHsb6ڥiGC_,1RHNtZI:@iګ5 1zmݰ\ޗyX u)|TH~_D> 16q4H]}SU 6Йg V@\ȟWs5EH !ˎnvv m7;8Bw(Ѭ؜[xGV:nW߿X B QL'_˛ѽ#;tl=|(gvŇ$E1-!`@!SԞxhl qD@n1uhj$ 12y./ aӒN,h`!垵o/DRo_<-1J)%ԢF,6M!jlX?K^Aגq͏N~ٟgV/ U|ƑwMt)4^7P=?lЭn:hN;&ZK]m̮3{Z8v""X4f{<{7|P_j*jQbYɉo%ΑtW+-zDq ̪=nFF39K(mEav1G?>ӷd7/.ݳyOQ3TY*e)˄ 4 E@ }.EevhR\[@hDSٍ1?5ş/i?Z/5:krRF yqL4m7Sr6͚PaAC@&{#վpr;1.3TIxNRoJe-2LyH(>;d`o5!0>{e׉K#Oi-'?wcN&8tYS=}~l?-%G>JSq 4-4iVFrDW?W) (vqH*)TB Eδ9% _g,9Tvw-zTh*Ap_0*vp2ݵ`w^49G.2!R;G3r\Zc D7Y7r S=\)qpOC^wIU0:ܙW)TOE{:Gf^B $W-@$8 iBPߎwr\Uh a,A B]l-$##mZ$&YҠ>$UejӚI5 G@lm-I=HlCcmW. taOJGqoVk耤F k1WA6 fC`2^|= .[]H?F*{y1!V ]MdiD",¥(&TrBIY:F Z-['kldl;@x{OܯP2G@mGaul>Ob֖Bd^K>'Խt,S7ѼHӋ Bu`CFj#V ^rya0l[4]gvwZsf1hXDہu}K-)tkk:/P8xֈ} /W6oOY]u)fD5uuCuؕ!JPT+3J]tD;~e92üp_uKq7b<45Ҕ;}u8.冘=fGQm2Sm ۿ ?M&mZ%$JeK_DSoC~6=i:6;jus JpFBK`P=zOrb^dS\`u?E"ro}sp K+n d 6ނzM{ʖx2rAuS$^Z ndE+y%31l-M֋s@giikCo2ek兤/~{]A o j>%3r d)@i`OKG#UPX@r׈ nւ=ȫLk0Xc(dPIwaA~b{ gb-zL7(-DUb)خw7A&eԋQ@=+*㞂ak _MњEkx&hlMo)2*PP SJ LUo,'}w[iq7XFKH}j|z2я.ٍqiq*jþM&lͷ1BvYUDs!Y }!Β@;`v}ztmJeT#Kmr#& azfK}%8>)c5i6rXbH3Uщ7؅?v[b5db8At(A;ȅerfڟҬ^ojr0ӍHszɓNp JU&l B}k<"nsL:251@[#]z+)7%R=L6zoM&"PSoIR/D=UcT?5Ds%qVJ G>XJЩ#v4u`\=`(SpWM (uض",q|ˇdye]ܪA'[k*dŏ!M.^*WЕed9,}u1fOCcAc% Jgr`) Vm<,KYKpis脁ɼ\vD|\A0ps 8_PH=-;2&{d}ޝ|GwYq=M:+e}F}U:JN~'K> .&]Ms:pv*ߩE7lW^?9Q;:1}q,ۡҔ !;c0ڳD3(DJ3u&Q˧oϖ3PZ81Aƽ`"^L AU F')^ _˛$XG+)ށ_UxB<"}y'~K-iEA(\q9u`P.I(U@CE/)xЪG[j2Up9Q1vEN{&xkRȎYrtOA'=y.#Ip)4 U3KrtJsUa RMd#I n5­0j GVଽZ$: TiRaZ+07(4v1*$[XmX#IT _ !z.$[w: (ע>0QAA@3^qx}N#vQNcg-)~^JuxyTIn z#B M-?%d2 ]xzu95sQlȓ k3ySF|AKΤNNCuXbko|T,ݾP\'Ar-o!,!nR1*aNwK,eI Alx:Y0Q+,XwV&DT?<~@ j̪M:M1Y#w jHSdK_qW>{zvgn*5:L  w^; { \u6wJ؅jk?u%vd_5b2v$@IRq̔/^/ LjJZ&1Rfȅy>A1YAgL̳ot5y?tYgȴ}xlb(  @K2jl!?Z ~H23CP8#qӓp2?cǭLa@HI2@Cd;VX Ё[^u6 :{Fbv}Y#7Z=.No͝"<$fb_?d4/fFm9kSu԰?pu4c(R8mYdUVB`GbRe2joqiEs)6Iw@qt-$h s {yESUbI ]`ͯQH'`Zu}0G6Jc Q%\eW0lM,[d=un qStZ$ J;3@ 7^Q$y4_m[ ly-ZKΒoZG rClŪ:Y2B-1M;rUp1؝|8ٔd%ɧޯ?؛JU?c "'ƊG ~$̏/`']XsRzԱҀXTJ]̺5_g6,"#&YpECƥOT*TWJ+%m6."ǔ0a>ʢߕ~*FwÌJskP1!G|M53sSDl__!6(L}x~dE=2Kv^Ytg=-q}Sxqf! Go!@!fnDygAԭ3i:q_yghU2)&B7V}txo^eEh}an.NeF& !y}bM Y>^.Mu F-tMnFe`?5nҡVTnycOxQt kѱ;s `.eiaqHhҹt*94{cww]/HVZ3ov}ڹSkYQ!v9*729H$*I~!=4*Ii{k(iAef m&?~iӾ ʲ͑.mXj9aĭu^ !_q]MQٺUlKrl*B\Ie8<{e֯pXXT]vбR oa Ԓ.Bo졌Ĕ9gLUŮl" g$ !(UFW "MZܠOl|'K?5 [vDR|-Ą}`cr0vcV-Dw= N[CPw\nP<dH探`͔CI!3mϗB5\j~vׇm"j\<.U.m[I@v:-A PMSXy`ːp_h,. 8 ;Q/*VG b|KibjɁ,b`hrUN<g{W1CvhY?4*}f{@X/HRQ'Fc]kǖ.ƱgVDϟ=5ҿ^eߙ ^i}#<TFfߺ*Q 9O  & bn[04T ɯ(=uyr|~tUh{ު' Q5ȩz']R׿YFoh`qk\=aPfg] XPH2(wRS%@*jhfC}U+@xc1FM {ޜ/X ?I5BVrț iZSD֢ .=Kp/Zj]"4f()=ʻ|vlMut+p*˲/.y=ՕʦQ3V={P$hМkOR`DwHv#*&׈ǓlP R~ʓ3 kh>]r/a:j7>COn:F '9^$ac8,%gy\<(mBz|]oxF+ΛrTCna6sL5mMnz8,*]`giG?Y9$/)(>  ʯ<ߍ$NeǖiMi>Cig z/כߨɦ.BZ5_LD-B5|J| $g,~LhF DƅT@oiU*]'=j-tR_~2fG9)4Mn_R[e䁱Oc 4-bmWlFK9۷hn v DžU?iUt\ 0>6TS"O@5R.d8a5'5nzKJpx-v:""q]"<"~HV(6j;nʤ'pڽ1mV!/iiB k+bl8:1=fr ?r!J46 >qT&*"Y<㦁Ƞe*YAO RY?8wZr"f4():;\-ϒZ7!.6:y2h2e[ԂA뺈}8)$ {tX`l\s\Nu3X͔2x)0~GQAFa8 ?ei>x>Of*[O4e^Y{ވ >vKQAf L I6;E*J S3L&AH$"^]qXWNz$M1a %NW|ez'Pa٣]wbp+WJ2 2ǮE2y_wa ܖGĮɴĜ!٬Y Q,Cˎ'ޛiF4̐Z(s@l+q3ge}C&i5ҌQw<&Th$wiGL02z<]DŽJ1!,ws]g5vKgƐ d!_)XIF\Iw)'1`i$tsjugyqmPw9t:8GY|Cj)'|yj:`,q 9Aň8aEM}[_zq0-&\J{;pӝ m{;1p@4°lR"V*/s+.0 D:LV}qZ0,tDT,WEoLcd1I<;_V0IGԷ8M@Sm >I{>=ɽצvw"dmf$<^(aPƩey10]KӃ#X[t*F sJ;b5]29r;HD*rc_p~D:bkDQ/.DB[);E]EΈ5JK_8XvcGQR5&!NzFwV$0s $:zqpDμ16K{u>>&'gDgٻ8ջPij ؇l1`aW;J7!S0H~Lqf4"9 K~t~P@>W~uLV ]\6EG3\YZ*lJnIڮ%4lspTc2hFY]/CI {?'lDDBj3|\krF6n%tFfmr]*Όkgkʈ.=nMBu^ l?j$@ '.-* OivZNoFn͊d<>Z-c=HR|4+&vfX- B$vH'RpL~vk( F+l>Fj+}+1ǎ(ߵ?{Aji ͡b6Z$IP_^WUIN^_zp?V*g6uSկ'n3G/Rp/U%FR:Vgq ̄NKo`0O*us[ԽEeO*ɤt?Dg]fjV0'PeWgQ@:x 죟 P9;0p_W5XMB3sPD2{X '0m7??~ھFvJfIDkT$dK3}~wwq%5|&욾Rftb<4'PJu+;D.|PzԷw5]+8c(]Ȭ/BlgrYn]#7B]Bڧf _xr`D骲6WդLۢ!u$44UkKGڶ// /Oc9&7F7ֈ9ivYj9Fխ6bBnٞ`}̸YD"*xMnK`lg:C Yc&@Vsك%]{EsQt^tҙ&T\:uUnprE( !v^\~İ olWiW!/} fn"U3|CC!W>{|K6Q[¶º@wa ҏDB=k0U?j( aD|% L:)7K7BL>e⦈YYWMEd#?,/*U#+֒yX~&;wؕ>eyFY3H,_ZQD5O ;BApB y"hbwU}iv:T=Q ru~``X|i)4mӝ0GRb{(8.r l^ 8'3U,ʚ7{\̍x 9(n+iN AtAtb'4=A+zH4~Rd sbjcY5(jiC\NC>a<˩(V&|8JiNRMlG<ﻘ ĎhH"І ne]lĺNy|YQM# ̏bG̼(A7Sϛm&.[e^Ɉ}h鱐0~DeP-*;XQqh~7w@je>Q]f:bFD6Q$Ux{]ӝ>+ղ/L:nFH /-#(:+o ".wjjoLu ΃or`=ܩ*jq㥽R8_\IWkZ>nN$s6@^ii 1kX|YgMc`|Dp eKvKi֗}?ۏv*#־`fayV~eU7@&Zh#OGf3t x뚴.hgAI;M"u&xZڠ}dCuIi9а<?M޻K_!%nZSl@"oԾbBQ LʯnCw\})O"?DG9Q{[,4<]H%)w7l$ 0&_U95V05XA: ,^ߟOJٔ2=1E?x#p~abUG$݄}tm\`vC"|Q%3*,1dG3(S17 <q(tm`gjК:BC↾B?^3p)4,K`8$6w ⥡a=,_qo`قCH h#VIun"SL]ȠgY; '3J/ SqaySFS'[ ^5*oz+Ts' w& e1 /p3ڶwTjKN%Q4[ڋV|gC*QxM 豥9x ieK~ $@Еe" F\_^C1du.6Cjn@:[h'< ހBzf[PY.Rq[cOΘa@q(zJ z_\'kkA4|b ЄkFk[l{${uiQZ8MJgT[<+&DZۦO*?Šn=lxpy"eLm$B%:9vlKc,Z [.qy)c}D]I;NEzRͺ&}!cƷLۈ;~UТDz/ euқ%N  tO՞!YO}g 2]6M̓br Jdϭ;Cۦp_ u~4MdO^gUlKxT2BV@!O4|lulQF8+Jlj3r>fYPY_tOjȀY -_4&2rLI??2.׺8 {0-+K01U@iD4*l)DU ]i$`p򲲭x*PVxC(6ZS9ؠ i'xHMVz5&;'^&Eؑ t?oXfW7f7gI2EuZ==4<Nԓj'䟰dCfQmD=D:#{¸rt;;;Q#"dڤV@ !% EEhzbznLw)|vk`K|_@zK0A&]3xՖ'䬈jƅR?#vJُ}ʤ [SQq=|X}>ӟR<=7',T7# jŦ@!WƈUh0ZFV$DYTr܍"R3E3ڽpķM\L˻ lEV7~vk(Ɩ+3[k.7L0I"BuC]8 &0X})olvy,^Ws>"TB!s8lthEvB|r@Ep_knX<îq|6 GzwfafzŲb0D3pWT3<"bkHGoۘGtћ`--zW1V!r2HXR׿ny׶!yc&vlId\`IQ{V\ߕ'fLXJ4ם@8\> L!2rx\Cj] (JٗM{JV 8NTr/5*i?= <M)b(9sDq4Go5WgnVMSl!䍁ا:o %i%Ã45yVEM`6:GCCFq?S[55Ro!:|Vc{& !R %c68+oL#^kn,GP(dF#g957vff˞e~q ?|ff(j$y$'Q\~*{ ~ rh=?d(*TFXIn_ߘ*Bxғw)fjzf O@6j^drcJ"`Dzr,u=[(k.sLQnpA |]a%!g3!Dԝڷ4Ϡ_G:/̎U_Jb:&\,CGF\0litg^?mbW?!绡% Zˉxe%"۴8Rڜ7.Tz%&"b2`]JrR06Ķ<|x066EkGU .gVyWzx~CKh?W8WXGFЛ <:opZP\R7qdK* ~$a (FڮjC@{e#ƌ]DiЂdfI'z=$zeA6 :ʙv_<0H˭_誠awoDNoZ'A4Mg(^/K Ϧ^|DՀ2򔢙 zNҞ+P# k9CY Ƭ/Y\'?j˙6ܨ\-a"loDEYDY5LzT͵K1-K=i_2!>,0$]T +~ g^(qU% ȿEʮklzs0?_~2BFTp™V]4bPELa[ i1ʜ i8?koS,sOn1%|,|x$*g b^ױ84`!-t2ˑg$5yK8Ș]#eu.bFGxlKX2G/&L,m)h0ZVe CA/cW(VˑsLxl(-hi薤>}E6yLV58c&5)9YFbB1xYX0K aR0pGxs6LC6RCwqk txo}4ٟuՙ:,(4U:m%k=l4(@fvmL/_UWEȄțM#\>Moܜ[ pUJ.GYۛu,ʑⲌ,:x%i27|S2vMǟthnTo#0IɮiqJ[/J FW.8Ӓ+iFE"KisHڅMEMǜef{,23*QvlVO]scF.]6h(=!z\?+3|E^ ]Io Jjw|a0Z-Y]Sg>Uw* L,$ewd U7 o8 *4[+A٥[2\L5L GoR'h2jȵQv89H 9g4o,.[]djeC'ig+gAVy N01HА@PQT mke'Jj(m穊nP% U[%Ő ) ؠ$o\t.kjY DC@ 1 ۮy.5Ÿ[9V֝M^|it>% mֵ"xI~/TwsnXZ@I<چY M2{ԩg!%<ĻsDctqB{xxbm8Ȋ@ZBya:@Uy_sǐLٝZ*d wTfT%I3 N:,#" "yc3G!  M: MxӸ̦Z+/ ŪPpLeH ˄+]V -t%oDƍ?]pzbcVoQ+mkEc=@xmID炅^ W ͦ;WFzK!~7 /qζ GsN-ͱ;'C 2k@`Zt]#*{`X*s([lESO1Qg ܆CﻡCM{, Ţ1$S>bag//ֳNXr8ӳV5i8Lus3z N24h=yMuВRkfg3Dap"i`lcJ`1!/k?yz 1 ]\ _T42kqeo쓫JY&IBi$N.8Px $69Rg -*T\2`,:K. f,Abį 'i(6O_v$Ы_G-\f9(8tʉh_|OQK'=>BIjhn$\#-pWNnݗ Ֆj@m aNhqVa`rJA[ָ~& XvW o|hOIyD~=E4oJ>?5:5߹Ao@Qg9!ͧ2^?#Bs0:?zx~<z%O؋%TSV05; o^ڍ2lv VT:fxޗ\tZw1 bf骫SFO^EݏۻHb"uEEBoa~9dPB&~Txg9FܝV2ɲ>@'Z ,v!q9xٖә7IAa3fN/ԣIgoIcFTq%]ًXDfo/V+3yf09LdKD23 fV w\K'k,j3Ag)9~"9R hbk]ѝPhɃqa˱MhDn  $tvLZ?z'mОr6ӽѹҶ]/R6asiyי=!ǯz^#e!]nx F'lE%vGj3^o3:AiL}6_}$jq˖5ke;d?řɡ)1^9f݋cHɁތ^|s]""gCKTHC&̇#%p@)X{~Hoa]:O:PDR -2VdK ;+S`b\p53.g(X#$9grwHa%gIsz=CPGHx.ym+%DAU&=|VY`QF4S~jBWyN t4jWyJǍΠABӴTf,Oah!n|qk i}v;Q>E|ZW0,p7NN`defdI"_⾟"PT>Ԋm?Mvs& aͻ)&jdѹiL 1D6CEΧ>-7rб^ ݵi^ <P1b1:p:(~6kT*ԢvT\ [lO; XȆYLv^Ko>V.hnl=W]s L͜Vģl " L>#eQ)-O`.$ :/}D Mqxj}^U8*ey[@%WoI/)P^ 3MFg9^p GiqI֖o_҃rs9uYj Mq1;"V0m,(G'6ߴ%3;5cΠ]ʺ78-sD8KjF`jjÉӦ67J0^BG? [41u|mV"_k DNKCT=O~s qOF> x.!Z9|QkLS;G#>)@u WsLN`>huzk*SpuknMRgq6<'$q?|6- ^D+H%v΋UQ~qgg*gp֔Oͼx|bea$BҫIqf$~(ps=*sC['ʅe+%d? 4_pƛaZ|+rL{i| 敨6΁)[:Qn8F 81ۈB\ A^r9BvjMHRH@&Gm+l0#[ ioShW15Yr8ؾYU{Cs\ ~Rɪ-H#"=7:܋{ߎB XվÒyFyJvB&wǸvF/Η"Ty y#/VG/BDŽh gIh0DzA>Ƙ'-o7Y| ӢBפoMꥤV)T˂,scKbcBЦض>p.ya4۠* S#5Wa%6ShUʼR檀3"UfQܡOD wb+5ڟܼZYjAjU?y G3pu'8a1smrh?I0^_?@(ʃs0)(z  BFʃr>v9|2qk@Tt*'?V_C(b`E~]z_xbe^ Fۺ1܌#@õgl#BwA_M|>BX:L϶L%^yv]=+0w- dgzZaÊ)VFokάƐd q)+$ۏI3_O?8}ga@:/?uD/loX\ـ;v {㋜z^'g#o.QW 〒=rNR ŮP6-Qr2U~U芌Y5w 盭=(f$42H X-ּPsO; Y;+4O,o4O`bR9k]þ(`%JSÙW|1~F?DB#=s~?.R=hk=}灟B\W2;^'D/q <ڳ]Aw#uVa<3<&.O|n!~vb{ ͐+Y("{K<)c@Nc!`g'vaK4`DQ~PC{ %g3%ա*Ppw$X`nU\I`k(Thee/HM]Dx ͨ{82 Čqp!'AӍ٪DM8"_gu37"ĆE0tClP~2t f4UJ3m8kb7J ։ Og?"ѬOlhPlUWm@MJ^srlbI"'#CۀgY2˷`; gmd5KgeU'+]4Yոqx#eorc^W/('IyL7''ZZ&be~6!/gotoZx3_߉`jHHbS趂^aY hF>oOjoi?l}]| P (}ͽwů!af`{1%.>o~إne ի7::y p#rzKwDμdz Y:"R hP6l ~MY1a ӓƔnJXs xX3 t]YuLHF2Ţ@'ٌ]PէMŅ+4߿|3"_f/z%J! `_ZtLP{ 6)+55=Ѐ=?_wyZH6kg8RL1Ҍڈ>-4<`~LA(ߋ^W'UJ4>{5Ho-6ƍ0O^5lچmETQ5GFGqkW;ihϺ^2Xl G~Xihnm6F|qmQM.GvL8#@|Wඛ)Y!Y ZLi{y$0ZA-~QS`qB4(lPVN5:6iR︱)m54XSG*a+b5A%ɠ"&nj{~8󹾙Fzr;m$碕Q]ԕ\-F%B5q%4rsu ϲ B k1D^ j3iwazftѵN'@9]w(U@ϐvb!Y8,g7k,׋4YaBsLŤ1Buı*p)'gERWjh|'6VE<ΟˉEhL7!wYOy`.xc]Bycxe[9Bf]WO#( w#8$qvxRKiO=oGQ#kD2\umVD\$1{t/T`uk-Bɝ]ƧˆQq_X09p'\^ å!_-V &n? /ΈԌ"Δ7chOҰ\_\"Y&k06g!o2'ki^,IU[nUGd%uSHwsJe%&vX̳O9s1̕ S&b AW,ã,z UV*sLȌpK;O1;~7=}^؆5_z]1H - l2@&Zy%7ʙS#LJ&/~aDVJcW6U[]Enw矄xѼn*^O)_(4z:;w ZhaX7ǹ<-ji `$/rb{I' 恹 h dp暡θKxȚ׽o^6azxOH8rSQDٓ5]`#xYRkXu!}#o;ِE!k&k% ˺X${+%HVyF?ИNTaX4ϙ&7*-%7Ol$2nIQ _ )/IQ/PD ЛO5+7yimϹ#<-0Q.k.\b#/͋W ` !af?UyR1 H܂ փ&z/<Θ#¼PF~r@; |€Hu<(>*%eQ]HAmI/N%.n5stn,/ Gv5 O.7D+Cρ%iXa3c.V\[~~W宮#v`ݽI:Rk j4p>2?hnQV/CΆȳ#:K3N :܁<pA+x[ZG0f./aSh+C ;5<]rP|27L8+ : AƤihL}&hsmH-XllخV)3|pbkE'bu?KEQ-ЋO.u_-`\olP 9 2?MY2Z^ j FH4@ ”RЅ5$YSVv\_3I 0{Z .eбAb [4`?v>'\%W oc5Ws B 2?V5ij.ֵ&hoekNz1_$dbD,rJKwFF"th Mܵߘ%P$Sjc@!+:=pT3^6Sެs{10hDZz>f;utQT)|_[3K?`݉eU0:h*yP!ԉV>>^{')/AmTA$ ˌ;IȯjHP1 4\R3!LڗI.;0׶4(8+%;HRݛ,~o:lt vGdl3"PE'k!xgЁSGniF=v"ARF$ s=&y3-bxĔXxꜬs`V_USg˫.2ݘx.j!iXM݌A$W8#6BL{U J{|aJ[۾ր4 oDe&o]s 5{izE#x2}Ő)I*{BE<=at!eګA&~C:/][CߚIRS,BM#.=!FoOP&D7ۖ:]tfX0h^GB!z8/蜹DZ'[H}F o,pmPb+nݿ4* UH5 nŅ³ɚ@=: Xp [GRU%};(ܗᥭ \`]rV#s 3 =|":jS?ؤ3mnW5HUw-mBuy~2ΐx󤖗Oqжn9ڠȄ K, 1s3֤.Sа繚rǫOUpkOǚ Վ s1!8c SxPB_sJ2׊@d1G%8򃢇u͂obۼ7Jeqw+u8qh^#TW>dJOXje:K"QJRVWJN̻ #RFK^DV<97AHo mf@[_MspE:$ĜhOyå=])Mt_^bT~2q?IS lKX-y( QN=щsqx8A:CxU|1 ,];Gv: \!;OdP{%ovU.wjZ @˿h^t˾gZ1hz>4?$rz,n3 La gل㤉M8ۏYu~[IibZ)%őDYALG؂uYU :ؔDGy\u * [%yu"Fܽ[)~%=D ݤ &$HD$Bn$߫x~U]1/Ϩ(LI2{N`~s\\%:QHIC!xk}E CG ڽ5(b!t1X$* K9Y9syɭt:Z*Bj$zG-[/&(*ԡvYp\769mיE9#T.Y!/7 ExWRx.ž=vL\B֐wKàh+TTNcgH5N3A@g.Z\HHJdZ߯/uߺ \efʕ`POHCrbҙYWӆpJ>fc;QװE0E^w+AGöe[tDˇ'`4:11*?uM>c ˨Pgo܍2VʔFPxfijj369=<(+ޏGMR@N|i'K\0洦> VX̐'Z[PIBUwN‡,!ho w?D젢A.Ixy8*哺uS݂og_xup@8ֽ. >3ݽfdpE. )_a}Nu[)'nCBءj#a'q^hcA$C!Fڼtɿ[2k9IbOů?,+TR!0uSrSId4I$˚MmhD }& zZCv qBvrRlZEI Cfɳ~1 T 6-ՃĚ,2r*+̾1=e:n)F~:2UC%Y-NAUvghN.RQsWk4Nz{|fEsukXh)_v׌Ȟ~cب6},KA0T(oG 2! R V;GbyG~lyYj+?¿ +HL5sP#llM>@wWH#2k9QPH> eӣŬ}4^4 ǏUJ!dJCgGM%$  pl"YDa)x#IdFބ7&D04OO0r6\!0K/f& *nk^ )3vï湈 vyxH} ^&)ero߇ &'Ox:54CDt ✩edhy)\!;[X{ YC=|%yF‹f\/.^S goX()vp Jt UgWUi;1j=/'?E4O3Tϙf_z?qۤ״J8w|Nϊ>\>-BCx`MNۇ?b0dw%R{@b~,Q y[+@EbY3(Ua9T\,'Xf;Q[##j[7㶒ú!oW$sRP!Yr0gAP`B?xM+4ǂD㜍{9-z_Uta4Y}CBP]ltj'fچx:ynTv2w;BΫH[ Khe%#cŐ;2by"лd} ` ̭Vɡhdp bѩZg\җ6@vW" j_* "x*ڶM&K `< O&-iA줞jU_P¦ٙ܇77}s)ROݴ;Nr^spsv~]Zi=` N DFlL 1z7fm}ҍǑ4K#b1DqjS)OAm65_YƷ5'XqiD^ 'RDpU9z /w&O[ʻ8W2 eLjξHQKܦ,B>YfVuM XP2,B%++]}+ "sWUrJOf5K&k:aR̭?.s-zEt4aF.[Y49I~MB!1PvyLf?Ս8QɣbtvjsNd> S ZU0K9F8:*):f)C[\v!g*fEgI;Ļ|L}`uLBVMQۏ#xe0owm50rL^:KS)#=>|Ef&A >}QLwyX3p/kڃhmw7, _N|ݙxA~ֈfT=L#aR.]4O=k<)t}?`WOXTM]#ppR,$d6ӹ0PJ1EjƗIW+~OnGw&B9l[5U:]uU@ph0PTrcHy!  } TN'vԱ3rM[.S:\#zj:䡝<\O^JTObԠQ|X]ƯA%oM_8jip{+m*;̷_2/JNW,hu ⪴r2&`q녦>2Lg}Ws8@Om4~uzԖJ]oBN zQVQph-?*.(xwtNB+A k3d5_ {`1+F},$"fŖ7Ysf$A|*pG=ʶɛ0$:Kgh7J7 u 6!ֵ4Fcxhg;)ѻZb?FJt"Y&wOV˜̮J״V81O 8ƜSN97{l g %%yQ$KBd(w4>R֪nj@y8;<[[儬X؈B5_OtӒ̄L `0NJiC@67#Q?w>mⲄjvp.KBOG!P[jW>bm|fb8, 7:ֆ8" i"Y{>D$ A:Uh,fh!]櫢7nYmy`|`O0mVC}X]5SaIIV=1RX'u^YߐVs(MK._$ÛQ@JG`N%P^ )_\Ύeh>ّ7c K%Xr5V0 ;aLtdŗu@yRwwږ,.1`W ^*kDL t5RBWl s-iNRSݧg\$Yj˓|(q$}56^ה uk7k.@b7Y<+noWb:հ{yWmDJ3[ ߁* |ݿ6NilȧurOU$s)>t.]&\Ӳ9l0[o)#)IT3 WVqDͳ䄷iu+ H6h`RW.sMV D܆Zк&^om+qC:}.xܣ*7KmyĴ6hxjc!ym#FFFvYrx )auG-0HP XCGK -2!(WTBm~/>w zr(C;$]z?-#XgewزŌzAt|їW1~iR"3.HMW|y'O~ZVY)#doĊ%G3uߒȘ2fW+w4/'?SLjxH$ol܉&0Cd|Q3imIk3ˀ` JuJp^ccBD-j"sA 4SDUr˩[֥t gHSg6~PC~OcDi5GtV! 3:Ԭ`mZr-}1Dhhc\#E!گ&Jh ε$ދ%);MS BL|{&B~ SK]խy^ǸaA7 bwX nZG\i:( kݬvXU ~oP:/3pˊah#@!aGFji:َ=ewmw6.dcۂyr6Gs }MvON@T$S u)*̵s{6Xi3R"*PQs |:cJp7xlyxψۑ-.)WW_ ytf~,Ϣt lW[fUĻQx8"8<jJY ]PT>MM-3-CA, k=_r5 $ #26/9*]Y$MT0`MO˝Qjq=(J |-W,W+r/0(@NK:bqؗ]fyr;-*W%)5R8t)inCfy(@](\#o{+mrFbih׿\Dtfjy-i;u/o݊>[K_qDiejcKJ1AKP*),ןt(B1y>ëz-A|Xuջ0o94eȅ=\FB2oyuF7DOmu‰1U~c9RVx=uYpp ϴEWށEG[/ C8 )'>Y:"btDm}Zk\qD*hrPLD}X"g*\EiI3/$. LѡX3^]7A۵W7h5uKD9xgơ|/l~!l˳*:P4 J\d#Hm|&!mJɰ^v#3_|R,5{=Ïf _NI2ͺt)IxT]#.yW2Ő;%H׭zlm}/q\a ҠcEs(@ FxpS/s.HtM>iMkpwJgi|8vMspNI k+Gf=V?n'*e|c+4f?!fy ]ق.*d輊mG;Zi|Q ̀ͣF4v)]ӾqnN(UuibE] @<tIWNxvIDiEQvalk)t5]i4yҔy(gv\ +<56BT \ #WN9=g H.9zr/EXmMPU5%y^$[+C@516˯ht-SDA L@g.L"-EI:|pUo=[m"R :]@wg5M˳_0W*OKETQߓܔ2wNid Si4!L5] 6?B~=)Bq3%&tAK00Tls@Be{‚#DQb~LX]#HY[]>@o9L)-«g>6s'Tw{q>7[C2,ţ1"RyEv078]֏1ýZ*=EU5S@LFv^ݬA pQA3UBz~ay qp¬g(սWNdS}5 03F7 ymO*P~*Y͞d{/lEكSy)ALv(.UvH)Si-] kyiiX9sTޓ^ GT_@jl_.mQ27DA >~55t F~.Z8%Jא33HA]oL{bT.%OkY{A3ξ wL5uWk^Kױ>jS Pn6]y@v~]OcL.p~4=&win6Ak tx M0DՎeXKUl`#\d8]IМ<\BU$GU9IE"Kɽvy+oW%CԜ~>}#I/K(X N9Ԏpznn!D*1A4C Ų1@—aa0ȧVǾ#$[x TVi+s]<Ύw6ʌ%ȭ}}S, ~J( (uebb}NIF>(.ʚ|F :$sR?`0(!RzG06f>m2RN% ZOL._/w,Qע#XXS68띇&XMJ8:9-!oiLmY`JBaȨ ےyb"͵SjF^nPSwhCl  SR|ϲA[\WK< ƒUdܗTؼrl? NDbC>: ;/=}* oWЃq=%%;kƣ 7V Jqx>9M,_imouK I&Y ZJ+N~ c.Oh,q]j/@#EvBXZZhe?]E`bg& {۽~G3yoEqQ[.R"`ԣp9a8 NKּƕ9"]dϿB8; ~.o9piKcۧI؟˞Nj-AE TPf&DS{ƘgZL79&d1f6rX2r!b,%U؜$@|W "w k6IA=k@bZFk .0v|.3|: gչz`*Ǧ="[i<"ԉ7MiK1;s0yC9<սQDڃ0 鈥5 OG+vز"+Ey\ c"L\gR#i]74»dnل9ѸhJ wǟ`[ZБ<)^j/9 ?-TXZ_dތWյdZ=/JNe>!OG/Tg|=|ִR@p z͡svK1D(a%nç+ <0ą3]ƒvU*k2ՆkTÊ&~2jVÌe~5qDiyшT* _mQ)Ecv*UGfsjvi*9<*7|"XͣseЙ w~q}* O%&D.c3(9$].=E>Xb݋PNuݧV(/t4#I[BJdg]J#7(J%J DcZ# y? |8H`Y5&:%zD,rBᄆT7TN8VhP@P,#8Vd*/#))`ś}Q#Y;¡W u4Ohm:nO\?3#2醷5UáKy.ȡ>ޫa(fLT9Xde3SLu_NoVoRU"q4_ xu|:PDpj'tZUUlKf6Q(`~iY9"J-(7::#kJv<*,lhBJK'2: 3xN;b<o9,6*P}BN JÂd6Sdh$=}d!{e8u4Qr# MȿSlv|\ǥl"Y{ϳ`o1 {"Y~eS~udƍg`?Vctc2^ܸf4jLS#㍒-$VR'FZmU݉-W7v8.r֓  hn4c(h[L<)jIK{CB7CV7)}^{6?Y/k'غ$”EkGS[Yʉ&Sd*ݟZ̉a[/lvK*%^FlDU&&x:Y 'zv="&CAt|au Zج5ƴcמLm8UУВ%T3J:[?+t vEnqfwJ^_{g.avT{OLz{ѬC"ātƆ C"r95=M n6r]%Q+)h/:qVS6z1wu̐踪*?2@rՌ&:y1V$5BRA hfjMY.'m4j],;MҤkZ\1EDFJ5IX1{cB5($f\--j@̦?Wk] 8%2bpvbש[ӈzgyMwWܙddT6fKuD34Tzol9<y:#?EDާ:.\_ yެa)aT*]Ϡo3W#}֘/dd]khGDAK +ۮ_&Fnf.>ďWCuvߌh׎1m36G:;8IjoMg48X 4v rEiQg-aTqĆ $)X*eqp5) -<땀xN\{jُJ<%B@7i˳J~)ϗmi[˜e$X#UsiKR}@H?<@u f'~X%,T&fF RxoahbgOmy8cyStVcTʏ%`38BU<MޕwHQ31aG?9OG>HmKS:1 vv /&-2A zH"[g7$Zʤ:u2V5400w2wcZ}UKֿL"7ҥ$4jr'4/Nieл"㡡kڂVA=֐긆x<6=B;36?P A)y4KދdI}{_WȦ|iwҨY/ |5XA埞pn=vJ)n7*T@PHMO 6b~97i(?Rq&\q%ڭ l},iv ,ڢ-υ@FPj,S)|3K%MNH XqH&0 JU}ߊ I|J%$`AԨ6?k-kvOR^ɇ[1?scM;ئ{#V7SPh]t)A}m;ip \x Ag9s|,礹ehiˣswc|p:=!F@ZEdժ'9@h?^#OC4 . Cƹ)͚_VXc69TbX ^h#Ox% #[q-)5> KjA0HY WC4͖qb@>}xP;-g%.V_f'L3|N6(_oDž!>Uނ ?Yi+7OZQwU=X:UҌ.qoCrEyYG`?SJM: FCj.d-'C/,[ڽUAPACKɸ锊%]Jwļ,lW+wXf?mR\X](}Moݐlg[B"iU} 1l qf pYxò;ЫtХ <z>FtO[=(ruO}JۈWr7D =al.IoG^8`r5'㴊(m 2K(<\[ "4矋Oy Yd{Ŧs{m& ēݦܴs)vG̣v|Xnkϳv~E,].sJf\g,yj6e*A`Aqv2r'~L {ʞCcJhBVN[PZ(g15Pԭ'ƾ9Xpʒ8ۚë٣MNcRK݌E2d\g+mNk$ h߼_58 9G[OePCC`/R[7Zi_auS@, !>C5 C`μv΋&1t^%ݩqPbRwSleU( 4Xp Nj>͋X %2y_qnen{e)wew:ԨtDBظgU$xZVh+]#)`L2ڸ0uLkEaXZ,mD <C]s^ -{w]{b>Hst8F;CBIzYI!6:MF=U2*kÙHf2I^n_7.Q޽mQ^]26m {ل e•jnlb*7_{Qr<0D}cPq#3쁟*w=lbxG@wqMfM%e^'4ç`z[%eb>vcSyRV" qf">!9 } [xpם;(f?CUg&55 ?us;kRTsz٭Sp9Zᘒit%R*=\YwJE.325E3n0tUH?$}TB.aUHHP,[b.mϰ+B1z,Q'撁T* YYDvc[)ıIF>|ZpT(Dt&唫Vʅ8aΚLmq'}tH{),ߑ=i9XW=EK8!ufYDJve-SG9XW [~F{ Fc7WVpxkcl ^17Klu8qY3W;e*uܿ1[{T~ Ǝ Rϟpڒ$XCNȥL6iu2ya< AB҆a-v:B\cؼzkV޺юޢS6gA om$6f9up8Q$c(9^|^OtJannߣR-3 Hdk@UCct81cS(@}ƭKcG˩P-ƇJ(   u}}*Py hvj9%& iݟ Wv죜(UZIl aWLE3sVHNFp:Շ I]"|[&p=@FvK[}bwKrp{}?47Q-STĐnצd "_b ,%DH 'jaz5iD :>Jݜ8{TֵѶ[ Ȗ…iRث4@{o" BWd7w4#XS{I VZ*d!)) #@$ #~qu(!C@4D&nDDOX0? Z%Qh>7!|eåm 3lxpU1 ԒkO|ºJy|VTZq@/svXA'ՎJӚD~RE8G{HcQr,`lmW ~>OVMuaoMyLyAq3 [#e1sB @D5BPuROj6L%'nIx>C\s+ub1ܨdО 9>3%oу$vP;QNZ,qD;/"w)d@)<*:)*+ц Xnw]z:, L!=U}9UDeAfgJH2R.)Fu 9Dj]ٯA  8(EX*$mל$D7~'eUɟ'qG05{M%}vxS[ŧ'0-d*AjY`Jd`U=:wV2H SV>D sGXKbF<:/4 w&Sr{si|ѰOgӀ~NDm"Gyw%sCIi;7Rs畴*Xtb;_򡈮Ht{J>Du4 )D\16Kl 'D* p!"q14?vlS>Nݻ:qϻ:8{ ;fue0-fw47a,5_xJ-: ywsfk1"Ia-hg/nRC^&6YYl۝D ,^B?Bp;p1S-ܖKL-'P &+aL ##G2P~f .PRc}Z""`0+aW6Վu̽"1y4j;eD#Dz-M:cR/#V<6?lKSZ> 7ɽ)"Ӊ~EQwS|6O$,n hQxx?Ri$x]Wo$pJT!ԛckB75`\&;" H?Cu@+.S$Ԉe;0WqK.ҡF\'6$yſXZͤԈ*ܵ}&Syg:@M8T5Pe҇6HP(p_a&xF68\Rh"NUfr11.mP{*dvln R 0н R7 b\g1Q>NymL.͋X Yi=9BFdaaɁ}jFxD1#/3Fs |m~'\_Zt)%xfi@y|1̛(^4&@5 /f4m]KO 1Ѡ9 Od9omB,Kh3[m 73_$nՀrJ㒕&pֈ8 ˷Lգ4eίFh> ,=dVD!)|7o1 v>CͤÆAp<5孍8Ǟk3T7V]O^G4:-0 ^lZy]\5" ۏWtKo~>` du0%w# Cv͕gڽ3Tm2N^EQno6Vqqr{s)``.*֎3 /N#; k}&tH҇t6'ڭ^ í &i98[b7cJBŷ^:0/H m4X1*1 {m(蛞*\ਸ0mbXMP5b,8 ?шv 8OM/=@^M d[_"[9qpo*c;"[1o!f*n#sxSI6LSMq %6k溭mRMGfur5L{b8OɁYyfH6sp3>#$JUmč*Ej"~ hlI/}*1f0O0% ?U0 WSiU9xr>ݎaWL׌a՟)Pqb#ߨq e5Mqv7ڠZ7jDL*`+ i>2e /Tg٪ oxex`z a]ŋ! qз{1֧ʌâqfa4|k1LGK^(NТv6uFZo+xBթV4KN&ޢ^c~'KݝQ.JY8צJfDb롪.w_C!3n27@Jhe\xP=!}LL3 $)1=nFUֱV墱ș.E>m7o  ZX7cgetqcWIY" eI8{;/( H-h5&=]Ebw+;BQ.e+1Y`hJ\A<Ƽr@o\\Y,p;9 MiVOǥo[۾\)\)}R*Ɉ8Gϟ%VSḘ×IFJg1u7K#@p`B$I4)AiʬQ>C IHS -Y5t $nl"Oa#L~?n+>62>hL(iaeZ)HK0,#vEhYZ+!9F{Au"$hٔpM%ڠ~m\56~7qP65s+Xe2!yhȰܺG 11DD2Ϛgu/ 8bFXg??w{\;"zzLӹM<?, h ؞чS ;dɕJIkѩF>c.If` P46X(lbݢQ'u} k5 nѣY$%+W-)(fݽmT頭^M6 nwDh^˝g׵dP(<#6G`T1෌l6)An2etUq:-xtI1K[N-$V^HnC!R|bQ^ƽ.M? bE7_RL]rhhgkJ!)B k+9.¼aCMC+e*%,ciU(E/T=ӃqfYGz"5-*[KbnXfMmG,e[?'}Z{w.=囮y(n+6=nY&ŞpLr'HwO5̢<;U.,tAXs /'/tld%u s4d G\hr+r;8T;?zDvZ1ĉN_lˡxC a8.9*q?2< (|{N}(/7+a@Abx8 IB]<{ք]3fnrS G4>67}+ ERZ$vHeHٻ3b0ękǪK4K0xiy t~0 WR{~m݇<~l tݸ^n\WWQU贳c.Qk$+f̚TŞi:|Bٕ6u[Mz)@?ͅpbJ%ٖ)Jmn^KzY#@@0؄҃Ա\^ hLH7=E*$K؈"4wK7: g8Ke7 ]RK)5c+Uաc̫{)O\ 7l%c L(l#Lx>52$h1 LkelWz ?}]yq'}awk )%_9(Î2Ÿ%WeW|Oe0t%8X#sGXZ,ȨI9-FgZ܎Jpj*P7n׻;Kܓu2Odc`T23`{ySkYH1xq?~y`]̚0-/aC2?GN XҀ ײ_S omI65bЍtRPm$ C I6s߆pm|QڗX1L dލRmkpQ{Y! rH]6c k)98ߊv-M *C4T֧uoǶ a5+Y-Fޮ$uT#hҺ4lX?'ր!AOq*~arbG@ wJlgobxh5s(;:vlT\krDO\e;fm $^\XgP&HEyϬrkQMҫ[ bcC/ bžbdZQf#+D02&]pڮ2 ox*s9@|n#!U݋q*WiM)3v6bэ -ȄDdwᆙ82=u=l[&)8}禡0<ݛ#|_;a?}.mv~\ӤB Bf ꐸUi57QTe cYHثݏkeJKsUoV|4@J}5% 94|*#zye&֧BKO[U5zF\.d!=♜\>O ŰozXm1 oD*{<o-*y`hK;䐝>W0 Ix_ÝAmR 2 ߋTk,aG~Թ8MA$jRWog`f $"9uǦE55U~^l0Y6Cɀ[Do͉5?t2IpBs@}iSU=96zrj^W)dA7kMo85˾Q@gf- ygn)o"s#4wV!)7芠niu?)&wӋlqHAL{8@Ru;fxIbUʇ%RAwdGa*uR5_]< ^ի]YӬqxƮ?v=sסf\|A̴,g(GK}Ρ e?k7C̅*-{B9{˝ XnL䫩g5#1]=uȺwo6p9 ovm&6`y;h Ig~0Ή#zЏ!غ1V^W^ XB q:gE(sxNA04.n ;WՖ\ܭB6GdҤ<'ӭ<qV z {Dt#rdVquT/R܏O& (ڪU&pT|TF8MCfdJt&{E¡/#ףZN+{D֘lj~)'cv_`OxMUyP˚B Y$v0~(hӟXiMkI;6(f qGx_}9c?}Ȱ Z|o,3%vy(kh[٦ 5yebBPĦ.Mdş9ÿT7аVn@ Mk9X A)j7؜`s:LȡwIFo/3> Ux*2 'aN/Xɺ_jaɘg Oxw]hOr< ʪǂ(zb9lp qP_U6~*@ǫrU ga}2:j6`B"bf>^R{ڔ'^GY z)ׂ{{h"%E/yl2Bs#v1]Jϒ-9@~5"bY A`e;r8`>NRX\kUPlVN]5߄C\Ԇآe4$vԱ 2t }M [3Kh].4$,VII=c0Vfܪϊ#=_|Q>^`BH74ѦF`EQcoy," +;GSf3;XM݌_&1$W*1[˳BNuǔr܁΀ ;RԙF/5<h@Xj-_G="/uI| ˏ]w0Ԃ;9 FKE0SR} /"9K1i )Jw#ۿc˄[)ýi݄>*730*kU(sVJ? &lгmk+ن\Lg(q6Kn/ "v r$4a\"o/C6bWTQ3 &"۱L*P2BE0l'WHJ e(l{{޷7)hovWnHZ]:X-E?vfIݑfAY0]a]o,F0"JWf!QyA*3{?㦙xtGKA~YGF!6^9 olO_:JUDӴNXu):*ΩWu͖⻥N']'%ky|er*ۧ"lRDF DӏWbYa+{xV) 3l-(<~3p2+;\| ߀&@̫g1{$ؚ~k{z=>]?촑donq.8uszRRJ3#wG8F2zj~9s}n1mDdr%Igo@QOѸIX9Q(3}E9EJ.|Qzmtqt)Fш(*V:ςù\wAݦd8Ȝ}iD9m"O}X8{ Ǐφ]A{6 p{v{f)=i!_4{BiqJ `8ۘ7˕MC>s|RoCze(שܚ4K R|ne]࣮rSo$Ña;[Xq&+If߇ ^vy{XEbO\@VkfYb\nw"E_fζ54KᏟK<[Z.he^Mi@.y,5r"Ɔ͐=hb`>7t>^gJNdy 0{2ϡ7O0._EOR*wwط0LZaZZYM{!`_xY-m1~4q @zLdO5[6s"x:T rY\s"*hXX"9 -o{ʊh_E 2vn9p%*A=%Mp0+?Z|Yr.#V5KF8:Wu]D 1X;P8nbDIg7a+>;όS `bEHҍ@fHn>)cHǖ '}peM*2?yV>^Af I!?,x 8؄-A4hJNtq~>>?ʥ\m!&P?ۑ`VW"1"/.L%vßl3%q>lo/pBYsMi9:J V(bAJKa*!Z a̕͝!';xKˇw<(>w[Jz-'ӗ)a7[r_&bzi7ilИ Kַٖ> tv2do9ʘ(2*;GE{16}f (ٞd!G ^764YB:&+SC])[✎",1IĶ/?n'Sጿ{N(WU-D/e:sr(!LWA\$`R%|Znc8K_v]A7|r vbdPwxbt&Ly4U(Wi`>Lj[zzsxC_< kuϹ C2P$_=T_Ì稓j$@YUe /(;-\V~Q~Qߚpҡ-2j. ngruǹ4_=Bj `޸p-zxyt(- ~l8&.TUQ2A_DkRWB_32ʀAX1m]`iKnđ=/.=y B/B4ug˼|9"V 풪nsD:B}? r-=}5i`@AФڂ_Aތ } ؽVZ-с ]f O/x%/8ʗY]E9oth~Iǡ˜h2ZIxuqe)|˲' v t,~D #F lCTΜ1U<(ꅨ`:R?>d~y._1ײ~pUusAGͷU{_y9{U4RIqFigNGLL`A?Yu["ꃦMg}`,SѸvkrh`End~pеi:G~\Ь$NUtQt[K)0 kM^4xzو\*$F}D!c7@4V>ae|s _&rQ>b|~L&GʎQVܑwP*',gʴ{Ov <@\V66FRvVmGQL{j 9z<|\D$n#2x"jb );6 ֺ-_#c4m_ėOXj2:M"@^eLb9g _оrWFCIze…ˋ)4NOi3. ?0ڑAzUY+NU{ \˽t %HI.6#nHFS)JI 6|ޜMfe +Ah`TF&.Q<}Ȗ!\} &嵙6M4\k?}~d(ЬD#&^!0tn}};mAL3hv9{6pI\PĺnX O^^|a|EH8UܻZ` iPoAz $d<^'MSZ}Oc `P_Iҗ vn ݰ txv$>̽܋Pf W8!J$˟.>".s{VC5;,#Oi(V򍄟s -pF_| U}F97>RK&uX2r(:0Z[Ί,i͇e1B7gx[wՉZ',Nn7z| *w# wb+F>N'KssHAH!m[}Pڍ;WgnVl/Ҙrv^fGK4foʡ|UۤBmG@ơ4_$0]J@B-be|Q@ٯ/C`pE1-NMqޙ>xCZɊ#q={zǂI.73~yNDk|M~wۀQ%u .8u{<ďTрvbj$dR|_؊[IB`.o醎_4pa]&w9U0"5amoo겅AZsL݁[a{aLuD|!3ƞ1?% n&2DkS ݧ/0n/4XpNBP%Dq }v_sSAjbt]`qM8z \)L8>W"\cx;VΛ>3eI< 鹽6P5'd7[#)Z&n1gg X#@?CēDeYf~<ͳ/xel6Yi2}P%'{F7iz)k(5>m @CvUd :^dܛ]I9ux?> E#hxfz|ΗGSf75}w\-$%wo~ _g YpKccUER@@"p]w 98O X1k[UJŤ%HF>NZo`gn|KuG% ·6gi@ȳػ?`Aԣ.ݛBӕ:BO:)WRXiюH@-*(Oll7Mz 9]*i|u},{R:#D-ûMĈw? bq"#Hڏk})]D#luE[^3 S[S|~o +l|e1~ꛨ\ VU%+@3(U/bWVƁ1gDE?1a}PIU]hX$Ѷ @O:޺J?OWP U$i7BuyzOjcowX !pTtAEi[K,id3(@pMp7i.N@TҜ1ME]) l"m ლ!Bn!VK/qD,9pU(@hm텥1bKPl;L6Qz Ng#u.ڵBu%# DzuOE\JDl+%hJ^cH[:o}'D/_ [haXHQA^}?p0b?M6}DPY-?@<5 DhxvW`zSaxBioh PŮ$|]ܐ"1YKCx_t]Pҹ1@ņBF2>ͅDADH@XMA9d qj;*&p/{hax\xa j},Y9c6EFz 5X5vj0{&(۟Ke]0O/Cj^@bb#J[ _t^uZXmF#KbAqvꞶsiR֯\Cԇ}E5=(y͸>Yg͠`ZObaй5)S5OTgs/5H@XfM:vShr=M%l(dL9Cr,br _e of3{MƆS<,h}6*=j"A"v-DB;0`鿧}3礯JH;ETi'PT!䖥޾~,.G8lF~c`ho3c{ ߞ^,e9x^1<_'vCKu o\3M`nH?L?_tn-c8)#>pd.+6iBY`=.AEPVP%45 ~RBu=#EI HMq){AcNHS͛)_1Y$nfEƴldT3vCu/lP픞,ScKK~$( ә?vF6>{ԩ+ؠ$Y `| ƕ&(DYxquQTƍYaUD^X;0 @XkI#"^"-G)"ijw wHCFjYT2&t,7]!L#1+D]CAgYh/ `vݶ^A݆[vWJU1wn G*ug[oU\Q4^{.Gqg}O;ܵ%X*|YS":}LƖP**Kob2ބX;fPya,莕FPr7Ibk& 9 fiv3 8ތ/$ Ds<` V!]& ǎw.6NL|-4Td.cZ9=Ǭ'P{ _:'""Z|ZKڲYU`/`օ6B> ]=b24Dj a.m/qfK3 $ݷڿZy n[ܫ+n?B 1߄gvK]*4 H\ G0CR_ 89Wn]5$[lEg|@HXR$7_b?T`R3TFDkD.Zt57`NRSY YA,Trq{`ߕ?-D#&!bk8 "0+YNb>X?ک !FsR fpƬ_T% }r)ƙ\A de8D42 3Q#rpE$^U!ZqmKKש!M(/3n ְ+֞rO 7\h|vCP fuٖ]B'-* J< ;H& FrdgrRpR@?%\hy"Pݲ]H-hIcSڱt_|*M3UބfC^ڐ'xy# Q$,TfGzv[ed1UH%<-SlgR#&/}ujM$y3u$=d|7v3T#RP^ YޤERܧv!68WK"aaq{7d'_$FK"iY~di ŏhHsLőp4k)Zy \~ $|VYTĩ6mWꩤmSD}vgl*]Dg p$& Ek9rd`Y]=ĨM&. µI!pN?Ó]L!続+ju]Fu,~kΐ0H`fqؕuȥGK$p*;DNJ;\_Yj&2_W2f²u>~ xqU>M&pAD@u=*IM@W(ׯ! cD} #'qLfd`Jӥ_VYg.W&} WV0&oY `j1&0V `ShEhkatͲ '`/7hмUFww\bd.K:%2W@;NNXHo"$/3,^c~#m^Xs^'7Q/ͮ4FzھL0u=炟(dcLa0! ֋z; ]ۢrǴ<.)L0 nв;Nl{BaȢ9o>L!T!Q\OklyVF a"(͐3dy +),X--A +P<`i:u21p&}r].b1@NJ h3r$.w-S75}moHX2JCq׶l+%KI jG_J*Շz4Q6URhi^ p!@Z ĦkvCUjWj(oitFWN6ZΫp[yxjzR!.V ZM(?i[j$JTMfC*#wCVͨ]M,O>粤[Sd ko $6& )sQsأyEp)1Ofb?dq ApjwLS+Ѵ-iKiCʘsd:eMΐF藀CNfQͰ-p@5w1*µ|zdqЧuܐ,QzYn=y^ )3!ɳP#%c."}4ب3(!&vEA‹z X7Gvq1 VS0%˸ՍJH(s5fCNVbiHx_ul9&QN:wST{8(}+'z՝Dkwܐ!"'e04NӬ tS7P~l7f5V;H<ģR \`<yqah`1B Պvk]CaH:=QC+ʣITn8 0aƿљiRX6{%:VWr#8n"%o t Ԥ<40M-t2at[~i9M-ee݋I ~[DHݟ|Eat }&c\k)9'I+C=9?!_8Jkjb A:R5&bXӐ3:c8PFFNTH|gzZ{4J5yzKӍϞeCMTJ*ڳ$E" |Yd-ZKuN[f|oU^=$'8ҳnϯZ}O,;>?/?NRBS24Ip ܪҋUn Um8VA]ͧ05Q흽KUw-}-(qTՖW) ћQNKwurBc*Y2:Z8BC5%Y9E`XQ}APSb%_5 }$#@=Ràd_A7,q>?sp-:(wҫ*y`xk9T]  %ROTҸn@wJEToTSm}]huAHLuF>2B1A_r|) >~tyLV=6h4>YE$qQy|Yt3@M˘[F;qqXV1.ea`~48&'Zq"Bݨ8*r({+s~9ed|!(+Vn|5G+ Id/zQw9\n#-D*g#و"W[z"2wQZeFMե8ʿ8KXYA}QfˮzJ@_7bv؄2EdxM.et<&O6w.\cd Ç-q[@ !<5PpYr}eMcyS5&h o26ḽz%__kYq]Z< pNY=*G 3/ӁļX]K2 q0AYèfxb_qU""WnJ`o[S%ބꅧJsOr!O,䔵iRFHU{ |6?4=2;$;&I+"bfT;CVӖVUV.:KV-gG =W`q:D5 |Ĩ^N>5á` uɋ f:,?o4h<]$r 5+{E^VYArπpw gjjqF9Bpze]>M{Jy+LtͷZ0ߊ`HJD.V+fAC<3^.rHˌ>e+$G_$'<lٗ~7VhL}I+__wNuat)aJUɶ@! 䯙O#GpL>/RwQW{oԶҪ&\2w2V^縳U`f8Ŕk~hVh{]H@ ӞΚR!9KzQRKORDY 8(&cN+&e+7``ZivDZvP/e ԩQY>V_J 7m<*rS(nن_t,btUZfdZƸ6ÑښQ&<1m3%(_UMJ,M4U3R \pzÇxI ¶<eFc4&nsȑ"[* r'aءCaF'(QƐ2+~Xh^)v&eb滋)+J&hjVMO FaMXiɻ۷|8ٿ媩%=šٝx\VK lÓOsmq()߆gI}bNvD{b<8^#9~lmFzs8ۧOJv`'qucZwwD셚m-I-@)eIa? :fN襽cvK-ʞ|-s={6*k Z~?'; Uγ|>L]xٯ9. O te6  ;@v %wLt\>P]G `ǽة&K|QybY貝بm$I,KU شxT(=^ɫ5Z3O^u֎/\EpȉYw&r=Qvۂr-wg~{c1B:r8JX Y:l^cYQlk Zeg0q* E 3{eJ ]l[y2Al+TTu􅻷 ܨhc¬/WW֔#V%ZCtaSj.ڎ˻/kspA41 /|4)eɬ|$mZ"V<"^ H>:vs2zG³n lr2+eu1L\J9z\sNm,J4=`z|a#/s+C:g׈-ܠ)4B3E? T2B ͽPW+hg$Sr>Nete\4CS e2)~T{#r0)`g `ӞM-;χk. VbM*RgJMtv2i~t;zM} ']&\|kbcð&v(̪_l"T٘KB`ʐ]hqy5s#{gE,HYqA*e,<U*i%,; w>𨅋hMY):I)U**Ł[,8>Upd=Y xIouJsjDnaа]v : %6Neg{F̹4!ۋEC䫫r=R`qRBnXE`EaNβT(@|_S4PQ?㝕 JpOG,m4XK|qܲ]JE!OՐ ݶ)K&1(Opa48Q;zPD)g'/ie=2n%u Y:6դćQ.:; TsF`ų .VwAʆƽQ} @a@9Xk;HՐgQ,>=WM'9Z'i+jqoavAyZQ_\pVY,`"p/w 5?rI"6vA+ݕBMbfL@es2fz6s3Vdl,']#fryf((@02dMR A8'Az2KUeGwtn+PTTrܳU ʧ9Ԍl?9ECZ35͋3ΎI^4K^ktD\-H3^< n`-2R3NU?n\{˾vi N$ޙɹ]8.<  >"A9.8MS菟RWTRWJ:1k nw5}zHu¿VO_M!񅩖__d9u/Щ"W[#LwYG-pԵYIgrek/_iEl!_[Lƶ ~uq3s8t},UԥUE+AXYq] MtX}tqtkDɞDWR$}"{.ЭhW9͕1G֣BK,SN{wk`b1{;X7 91NBjG:9()30 3Ė|\& jt@Q PjL 8Qyz$ћHG셣jߖ"0MY_vj*O /ru:I1=mN_SWKchT蟣lj@Ё̂0n:f%C |(-KխܐAqmGs@aXj ܒY7{WeZr[Cs-9No;7ˢcdG6-O߮EZ ('M~(n"/"R6/Q; =oc5Y.&pQزrEs tuLfRW"3+TvDieFx0䔩!9r [.8u rˆڝm<]/SSڼJ "k+H[ Мcɸn}UˠHd&BŘQj0t5C1b-]3ne® in&1X p#"nÏHgacE(']ǟ ˅à^Vֆ+Scy`8|}Gn{vX݈?jY*REƊ#RkH1 {#v jN>I5x )'Zl)Bu.LmAQPQ0/XrElXKF5vm-ٖW8gchY4 !T,fY>hvx _|xoj91]^&`HL@oii2hm&;WCW|'Fk!!RBn3fw%&jnpܟ5QOn^$"3Mh*a弍tX;fYNLM* ƽpTIaɩz'P[&YshP]؁>ѣkWS{',Orf\>Z8jO6nX b[m~eXR|n-;u,UVKrX hDg:rހi}%j4Q=x(-Z=v,!3X$%+%1n6P+Ȏ|myх"c58帅V8A8CeCҤ6>|Em|Bv7Jכ"w$T)Rtu Z"I1'ZHSQg9E7XYؕ[#`7 qU+9B3m3@RZ_*?є?Gw=ɴTbh4pT?9ZcdHbRm qs FlV]x!ud+ExXROdG(9xm?M>Xב͡g_ ˶{Aj`[Gd;1RYUP1S!s:NۑDۤvf_#<;!F:LycBS:)CNSa}`(I3La @ x@e桡j1c,<@.*ʋ&D `h"'*d\̴hb3byDV#Em5+S4U ry<`8DaDf21ςAb`*"Aޢ'E`af\|g'b/ja|1 u DFtuU >y>ve㾿zCq R{brpI`k\q?f6ne`iE^/twcZFL"565ZYw:fQ%uv=ٸۮ{.Ȓ.V1p? hX+o)6#zG`RvcY X͋ĸO `h>ѩq8C& Eiݐl%_O[kde:ޝZHLV/kN 52VƃV0Hy+":7/aͭZ%~'@~(PWQ>V*Jj{8@6F+YdPgyÔ(*RÜz*^([r0x[O'%Ҋna +MN&P׸?'@ZD%&/,XI?(q I ^g_aUStyEA+)^ 1q dMLZg#HtW&D0t,f}`6i"t4*p? ߨCB#j'ۗ>&<&A5AA5GuPː7KܱZSь?_˖[;hq12ڽ@TaŇF iN&VH3;Ʈ,Lh+]TbBuo Q~<*5ZBC@lxtz7`)Fǂ8"̿1H2˰_: 㣋ɼCq@y$/ \Sadɡfz(֞)İ9W]fvU(jq O{*ѡ:ۭS(9׹'חFBCd]G-7hmc-͟eZ̾=~h}g[N$f0 ^~sLNuۿ6ϲ|adXvr+y0$qa"D2h ݭ*B}zmr{սڲ^ R6rENInܖf l'º؂'ą\KlU!6pڮQ)Xm Y?I ea+y>0.F(OP&"fō#gFy¨Z'Uaq@KFSd?R1V(2ac{o8]…n.e;@B,K%ƨOؗz 6mFaCI3/m wwp11IŸhzJlP867^Mce5(0>9n S{ \mfs8M}_Pg=3vQqQ0^-pgtG㯂xH ʌ-Nکge0%c=B )d]t'4g-Q 1'*!26WRf0cS5AnLߏk{5ʾ1̒cgLmoܡ/nDH8閷d'9 ߒKBJ<Fӷ\Ϯ6}RTm)D7nbtܗaqVG0^ ZV-&–X6z$Y34q{tAoEkJLf + nT"4 *}ȽQiPgK3(,ifPT Z t_ҏD,3\Rs9ڴ!$ۚ$ͮ W7t E[e<9IĎY)Yn5\y"-Z:@%]SgN!Vd8v[:H|Us5ȞaEpnzw2W;z+u‹$\C#Wtߙ4q!|Y C6kAbRc$)- "K0!r)iD: sX)z荤eNo[Z0Jg_0A8fceX;⽩/d4G5?+9yKk)РU0SJ&~h3>zw~4:JiqpYOQb0@Nw)覂F8NQFsUQaej2s ӛh7!/1D`aΠ kfk<2nŃ"fy㋰?r)%ě xƒ`fIߺL|/ߪ+[8+ɩ.'dA:Y]4$J/1U wx\xQm׍D]Oe,f~\Wj^E?``gmӼfbsjgbS/3rLh_2 4Vݢ͊a?ˈ FӳݷX%Sv@uU~zVAl9@yX^G R% P OjDB-C:Ng-&{olzlWK0))Ԏ0mVf)B@]u&FHqy щ%+L~y0;*4l!\# Q=R!ٛ]4Q6_vƍJСkӮ(HUkVBq#|U7 @ nHx!Mj4uP{<,pW۵.?cikqrUoJiDFtgGw`MTד>8xTuAԍv4*_S EPTs8,*DŽ;B{y"@-Wt!5/4@Φ?3rM 9J7اɑtW5i%g9{=}4l:}.t3HڊFj:8@ZîWv#P+gѲe;1h$h5*%H[J8nj SZ_ =|Yӌ&բ<;3Njp>:@r pDlF#f-rm|5hkʚE"8C|GpQYxW^xR>X2/%ܣ!t:\@3dPΚ[ SM8⇢!MR>sxA$N^𮃻-LSz88i|&F{7"W?.utDAQ4X83b2U}`KSt+݌{uVy(ڨߘ'MS*T/#x?%f8#HG=R|yȧ``śo/$m+J,l ya-rZ;Qr`+u|"'i)(5J.f"Y~nA"}0G7c:t$>dᝀ=Z&[5Ŀ挪a2:|6:}I\uŒ* 1E7O-u=uyx\o,ǂ NQd(=k nMHlbUuJVk-#:hRtD8o^Іgdj'L:'9{쐲&&s&~({1((%(z=͡ږĢ_[Z(ǐTV%i7J,~\wE|Z)ph6 1H+ ~a-#nD/ ii%FcWxҸkLWa;1ߚN5`De6bNX"WX6ٓ #[Djt5`:p LyGlcgqab[< הK OǐJ +LeE,5r0K>v&Yh!! O (fr@~ݚLDSɳmfzƼ# D\bK > Àpf;:>Y)],9N6?`wjbU3knځ\]%ǁ 8VU8' aG.q%GaMup7}UB5E1p۴R`"mM&5MhB#qzVh(ٳ5`L( Bq?[ [ 1OdrohGR$Rݞ[4GG?V7 ^S C{,+ 6AM w1)Be>Bz2pKN1'6(ؐd08r\3(O,UHm[n7i֦kK0Q'8P)OdȹrVdi,͏gEP/LC9} :J@lN[|Aμ)/O`V?_m=Eӎ \Ä.8ìCOBˡ! N*B^+dW1Յڡ}θX|>וu};Q ׌*\7:>X0=)z`qe~̀ x"s5w +U\8 JӝQ6xP-GJ?/U[p(#h<ۃ[)K q-A0qNv;*=.5I7pFkyܜy 'LB.~"-|Y~%oJj$ЭĠ]Jb."#b #s b@7f}n}~mS (Eij_$8T@,xgɑT<1RV@̶X;y|08#@<8޼mx^0p:u;1I_Ycx@Qd?jf E}d ɹJuī3)*(-F1xU×Dä B4 ^2oFBљ;/NV*#堣k>)ѣ .&cfk" ৓d'm2+9M8˶<`H"Awq(R  >h P3Ԑ24Ic=,uٹ%Wܛf %%ƽ9yDBKmL@6mk7͞$)IY뻡%J I7DR<@ [=/JXp.Azb{.m*mpi-I8\;T6[Q\05.OCnf0dRz߅ ׯvrlZ0~ΔzUNm+HѷT]yMi>'ֲϳKnpG402: 2מ_M쿨}.kr+ytNE2H_vHjx.No (SSD]L߾^?.A:QF=ZUT }puhmS_VE~ WO(b?w,iHBSi+ µ1@Gd*mq@Á %$iePc=EgMnm-#o ˹Zui΃o]ȟȚ1䉷1mɪkQ׈$_bn41uUfH៮*BY}gewڼ)"?6b4nWH z$zMg8n wp6YR?ͲU^Sk)wrOy a]ܴl)Ǡ1|"QDn7s! Z+7LUO;ټw ޚhY?r/sav:8{zA+EViײȺKsJUsS ^ " ϿHP`R ?İ9L&E2(sh;v$]-['?u>1e ޞ-4N\5Sdb9\٫`gɾz Y"BiKԸWԢA? ;ҽør} .9cjױ)NV=ahA yt ڭ-K/|3\_\,x$@v= =^cXfc7f6>+ԭT0:TfMĬ/<WpA{Ti}-P'v|^c.sZQ)kMOG1&ƌSm rnWUy]L"Ov?H0渤X _'ߒ5 hQK[ZjF2 k}+Eq.iLK 왲D*}:0QiÁ%(U+9 Y,9zeTT7E.k#EDS^,F[e )ɷMʍ+[|PѸJt~K1$"蠫YG RSX\7U)x@sf{*Na4z&*3Ee9 i } bd?YYqkSu24] pKprsMV>C 8U T ?Jբo„o4KͅD}^WQ4 ’dpNH<[RN3%+_3&q䩷ˁ5BcHgr^"j=7%O K$۩ꐇ s phG=`I "=p&^HK)+2Ov t<0sFa> 6g>8C0"@'XlnFa)BWrߗ΍"ւF{ _ًGZǾn+-4CMq9D Őf%fٿ5]Iizat=/#x K9}w4i:{ ՊlNvf'wO'=`W3 3qՁ#A'(Wp3g|t{HFS(d1G %_^=!yXclg1!:ḛ ߶Sh(hXĖU:wM'2`vjG3/8\Y)$,@9VƿS29##B>#"UR= L_1nh]8C8=i.P)dSKSD´kwVxi|Jtn;X$ڪ=[ ƈO^~cMg%S U9brPنč}L3՞£6-)7i*f{瘽D8 Fݓ}ܠAkK?77x..WHRGoWF0 ,?cMLl-vQZbLN2{ db3y{sH_(׃tx)na0#ubK6V0cX NT@("ӨGU!~TXŹT[o򛮮u2|G0Q VMteT`Nr3ovehjAN_'lD0X7V=IB_բ±g)݋%rxT—iA&Uc3xRqwD"-i~&@isخ!r(`Ef4UcY2+sNWo"kD`YEY ͪ I>"%3q9t*6wI)mc3#(|CDClc%N/42a|qI[5.OT:#\XiߏZ#%6l3.Q*@nh3"2$@ͥ!PsEHNuJy(@)[k_,{U+Ird+!L(d2陴j$1^>{b ǐ hJQz,j'E3p'Z%qSYBXbc(~d~4^B.&s4LPSn_%M$z/j l^"WYb{$iRL94!6Wk__l=>vq4yf@cftV&c &TY2p?jiZp_;wL9EN6Rb!3j4oFU45gzfN!.XprHZͧ]~;+xbk:[Ƅ ?-+ȑPxJ1󲆼kCx J̑sr6V݀I"#{EI4_:0  e̓B;͗$bwQ;|WM 6%Y)|C?ָz,TL' >R9|kuSC s(C#=)9@8O;Sg,ORohbLg6uy23WM͐sθ-M(檢Q&Zrҗ " UNJ}vVll/ԡUG #vut_8)>gōE.abۼ_ݗd:p~3^nKX'(P;5ՆɡjRYwuveGӘ0iɕq֢%<%8Ң2k9Irb{#fHm Tm{y?qIeOf|YU0KLgaá&+]+ϒ7Sњ%Tp8npmMy;4ADE0ݳ!A3Φk6)wXS(l> 86L[5kԕxu+̀\@^X^i~gd@p9>鈎O>$`c&8^9 !שN7%Q =73n]#8ac9b Q@7O>f0@=I wT)DfoUIV)yNF>2֝vFFY7ܪo٬MhDqMϛpYzXy#&ucQ|N,Ud-3[#{Y ow1k4S -0d"Vk|3TLM\IJ^RMU9IUH@f=tHN"(ζ _Y,EE!LW D{\`˱q\3eXg0sciMn 5UaQ>,d<?T)թ:!|G$/j&:vM1D+( J%6 K$o/QE"FeKCi&Vƽl2ToĆ'CGn9ʛRixRhC|qCqU6.~ '轹 VoXpI H brH2H]qR֫amZ6n * Ws{o {C8r * aDeO7Bΐ[b@=TdB &Üc?pA( C D7U,ڂu*9@n\;w@Ziل@E!^6N$iGw{c[D;)W @` F$Ou`T<`kq٣^GkXeDLΆa ̴k5Ido&ӆEY0D`BG #X5Z%))PzE&1 "ծaaa?ciXLr\T ͕A ,o^mֆ.[t-g'utϓ/O; qyy7B 6$~?G}gTN . kgksu$>ӵ1+*N{_h_]4\FCw_5OTx; $c68.,UzkZ6!1?v0hxgRa&@ؑ؊OI2 a$ k,N̨w=*>i^LDBgzfUVܬ4Wbm r|FP?8h$ Ԡ-PB6 ϛ HYQv&]\m#:Es4)R|dtdU"L/bplS8fmz;~%8Urᤇ?|u+qxPUWPMۜKحhHD6M쭙Jbkk/RT¤i }t\ 0=fhjiDQsCa܏k-to"Iι1gY'ǐ!ޜΠ u3ĀfHű;Qř@O94-oiޢmW<(&kH˦02Y3 ?|7;bH<ÌT:Ll;9VF tvLārbjg~;L]y{35ʮcv?.3Z!M@ě^|l8G՗S@xf09",*ڡbF(.|6j݀̆.+GDiElmHď]M'C< 9F_HI#XZgk)z)J@NivegqT}6j-uh:Hx;`{GtD-R.]aУ@x^(-I Z{+/1RGW P9&v*Z5Iuw<ړ$j GDž^P60 8M+.J$rvhc7yhZrҨ /gGr9?_[SadlxHf>y2dbұԕuSGy_kljNcS %WLLHӹ tn0IVص~<ϙ+'\P n呮%.xWxH2]>o_eG 7= X0E ZLGXdF%E/^Jt+EY5f 0p;kޗ~~sԢ&?.1jY+%a.d"-M4F%r!v:#28Dt*&Q[W^J'QVQ%g^f'&J 8t\ V&&sM4w2fuh_=woEys-!BՆgNP-gB'&T^Kߒu@BYϷ3BJ,˷KNxõS̎ޔ:{5 D "={aԢ`,!1r"[3q#;0;q 3!nq5ͱ'6[?n!ߧE7~vz!qu!geb` w ;U܅s}Ghkv!}6ZgJp}N]HKmՋ [Ǹ u`"t'6o·ĘvQ_womtQST K{U<Чg umM>q27] ZH&fǪ.^2mXxWT@1 ǫ,GAFp :Bc#j5q^ƦF_>3s>W+z6 +˵ou_xR7X3FoUg>UѬe1beE' g:j]qa& +]7_BAM%O· W;*TAד8fʬ;~>| zN2\vbuNI $ @oM7D?dٷE,)^0T۫?̟h?x=cxWͬ56_ai/5#Zyn,wCuC*3S@ǖԿ Z¨{S4B.@MqZPXn/2ocۊ6 7{^ZlҰUoYR!O/Ռ.Se2p8紡.BxKêu󠓫M)6kᛣ.`SfZJd0$$?-۷@g;j1> X5?FN $^[z0:mӏ[b>!vVȭ=:>5&,X8)k#}o9ktPn&GݩGS5}(zuumbm_k2i2~(J=fo/J;ׅgUW2׈ omDX[]粧aeWUDhVB_mvK`r -ɧ]Rи W}(Qq)0֩Z0s..Ֆ 2uXt6_0e[4l2k VT#Ȕ"njD5g $Ix'z(GR,HKC:d[-L _w1W(gd+K :Klx2|8uBusbv8 qtοQ ܐJց=YAFS+ YuK]x;m-tب+R=8#)<QI>Z R]5TUxRN$3͡9û͍ oCY0z"o'^ ^aƮ%Q&k+Ί.ks5[7h1 /"AqXeG|o|ۢ_$j) !{*0܍?_l.X.w\^ΝMx{q@RR5=_XLDܭ-'X{*PXעtb_ Z>A~ M+'Gϒҍ6lA]]϶1{up5/ˍ!#9fC“~Ү7q5xavdt6A$5 O)Q]WQ! _iL&ryNez~,9ty8Ժ&:á @<b}E!)5 +Q|!,J•r1CU+ t\YM% 8?Q&SI?xf4^4v2¯0}ߛ隭A&dE!B#y dť=#خE!+6$#ۋŮn\fRzgvD@nϔd@#+#?RM;I5SG`(l &l/pyg\L91Q76=M"J K jp]s;9ؐHf-+a`jO]rƑ8 +'$*3k)dA0 gDa3ŏ;+Zk]Qb[ou,ٮN.9BS-y"# gʭq}÷TF9Mp_F5C81SVyπŰlDF/0T$ ;VAdZ'E Ԍs?MR9KG$.v륔!Z1c툖:jИUT-$XIv??D@aIɑ&D8 \N/J_<Yv;(W-=eď jb 41,1(W\HBUBLDN5t`/<+,:1 ^4[B jwXrAa@poʤ:ȴ/W2 2~Դe5{$$7[ĜFPtO},ܷkqQ#ol)6%7"wG=_ZPs]-V>FunT K.\$1o[)΃և>v anDc \Dʹ\u2xY ڨ3ȂS.c$ }~ #I[)L#mG{Ϡ#8vc"4#}OΒ{뿚 1TgSNPحb[/yʷE6dz_^=.jX#e=gHH{9(v,@iV"<3]u.&{S?oP<-^Ed&Ǫ=dy`FxlJìp _ٵa Mha޹" GZ Z zwz3l #ب_xZdA&SFs.e۬d{-fkEA{3b)x񀃙F#f8vxAf`/ 򗚈dA;0%u:, 6 L*єQKAhK N!3À=}̅euRZ RJ.OCJV1A~"14ROLTjKGOCdSitU[Q^[:v,dFp^2 🤒'jꜘ #NH?6 ; )cpPHTB;PVOXM 8U0`9mDkkq׺] 4hCVѿd1lv&ZRVētf]N6̉XpQ@zBV0>Ϗ#ZuHgpك)^w|̰-Zޅ62-W"UU,zUP=fr+d?Nj'U@&YW?i )1(@h|8'(D?*(%jQA4B3w]T @ k '49TvHL5Ce}DE:0]t<=uIAf/b'Tk⢥K]QK$sS;~n9zC?8JUj*cnf+֠{⮫Fsk_uֿ T TG Kց:F 7..:fC},nX6ٻCfEsbe Y{e3`NRL"]BmpN@p3=p@&ҐKcbkBG.:=0V8@u ?JQX1T=& &tB/CY&pƜ3ńb4v63;b1Qe( ݂ė΂sH2R޼ĺs'%P3Tqc\Uvb|fF_@JtWlBj@{HAp4ub԰TMՅ;%喻2VLT̃p3U+;Md{Ŀ׍ߪP3I)'wB_5D:X]:UUuHNFq x-4Jz4~?ejαNa) 7]=X)g)r=$ϻ vx@CWP U[lm"shV]&uLB$P}۹[TCbJ=N6r5I?Vڬr{Y  جAtȮ)f2YڝQWYp_3m.3e!3pFk}MLRUN!|Vt;E&6Sg{qU/Rݸc)kl@AR(1\W: Tv!EvЛ ? B.}FMe^^ڸeRMpe`:P%;wtAS[#~@W]{6 Dx]\`(C#Ք@+]K'YRpM.Su%hn󀁹A!^ɎB*=Ic@EWHX-&&te2N"Nyi$*W qzCJWg+ rfzd(CY18z![~x j-,L;FMyLqKe-!& VXZm{͵OU8lY,TAu`lOY>BQDYiSl]'Kn_v6z˚#ukp&gةbztTgN5÷)+:ѱB@X{ƭ-8No_ ؕk; 3ay@%۳!Qv>T׆*ٽոymUտe9ARp}ƾ!\VgBa (LW* e>,='2O]H}rJ"N|p.10A `Fy`ixA]];/ $%NtƣTX./}Y!܃S[EM녺Y $~S g{gv'GHlv&(p*_B:O_ҽ䧖Y"L:2 T/"CD)) lt Ĝ3ؗK<&@}K.^Y_뉏Z#9(p==yW.e8kw|'vҟNuƯZ]x"D/%vYUe<'C%aNSld#݌$zHEI\b5S$VrBRv`}NŒNtBeSoP-Sx>%ZDw[`tb\Bv͆@DԮx,'lW w" G#@AdT f1Ӄ}J-Dkq'o`n ީܛC!xE p3T8H=׬j:a]rM;+l)Ȅ(sQ+כ"ѻvoڜrjE(m-^4e4v CTFݚ,kM9c$cC>OxԚQYύA%VWx[4ȼWþ6|z>_nѺrY#ZY)V' k)_)].ˬo;u '7DaVH%cy,Y;'O]uI[ڳK*R XBfnȓF9j9lt>>n@5{N#<*Zm&[uj`HE^yF=A{X{wB3.A2J[1hg0vR9sq]$[ɧ-ZOMI$69t41Xh? O+TLpLy4F1Q81 5|E$dkcnB7xM" >Rv.lr0HJ'1:zbKsӔ[AK! kb]ՀP6|]:Z˄8AGl;CGDm%63uhN![WDL}|J}}}QCDrCW3LҧȊ3\YdFrr:6 % [#+U̦Wճ2^Xoklˏ.;YUkhl!u6?V?G%vO;6+D.+@d~JAJBD@conk>! [zʺ>=WgSm0ǻ_'uCǏ*ޥF1 s?ya4)òچQ66dlX}4_5V WXЙ 6^ H JO 5 c<ax6[]`4xN+Wcsj.£ﻚJ670uH[bڝ{d<#s w/Tw_ԩCg=xy lEw'$Ai ڑ *ѿ=}N3ƍoK%0R:5ه",3ևHL1:/r!N]d eWF~©eCt/dW wJF 4x>Dڮ.;VЕr<ފm48PVZCb"6h ' (Y+/r&\MBF6N|2. ӊ 116?Dō]ʭw;Ы}x%XfZ-"J,"f=ޑ*2F3sf~(G7ֺK'VVv ض924Б;°Bioa1-zƳ$6 B?9WCN0=Km09s]-x<""tc\|'+O)}[a+ 3/=gsnē; B͗ QTNh3u[xAa;gAKyEBHdcf!sn[$PM:y.l^#=IanؒO16Pӟw! z,K3]S~opӍ Ee;`K̷>)i,7 @yAecK7JL{2<csz7­#1Emu;@ڦy[ KDFYcw<",LE̘Re}f2^al#D̈3!X-ia=݉Jv7 G7M-Z,pCs%T^݈W>*7M; p%m&ɺĔ?Լf9&YzNJ$BTh*/+gA|ώ{|*L:',K;97736ȧτ8Ƨ3FR`³j>Iܙ(/2q"RٓOLwEmraKu ߊ34z߈hޏˋF\)`b]fssf* ^v\:~'|Sz#@_h\ VPxCJEB1; s]-x ~{@~\,[A(Ɖ`0ʡ쇪Yd^hȝXNA0fN͔)ZBnGZQHñTܠ\% ^׿TW / ǰ-/Ad?خfb*V(C|*Eџch"䫫%pS#pC !FM (-: % "0;wGH+C8ۭ~.ZɐqH q@c>.,hX(xo;Ҟ(/x JBScN`JD'-VIPC"4$u_%דZIH'd*[gfrS=ԑre ٪MycAFE?{t3ᶐSOv䟙NoW㌗|Q3a,پ(eb) @6u}DDu4Č\N̉Se]怆Os1hCQ<(Vrf5h]xn@u 4mЬc66N.x.{&,ڕQgV ,wrob+f?M4t1 r3/0ҵ͐+V3Y~3ϸ=!̑GcO |:+h1<?{‚q}-iB1zɣ+?uсm' hhiyմC''M˽Ȫ MZAN3&vC5 ?1޽:}ppqx0&Ӿt-WD+[Ǽ|9@]Y6ȆK5HI6ǩֽ8S'-A/<0YgI^!jxFJS!1`l WGzY g/PtVABE WCv6{XTLWZU1[iW>NA}6d\ (hXwBQTZS_J( ^oA1d7y1Ƃ2d;CCgNwWNVTaZٽjkVM|WsOܒFF훦8IhNUNSX~qw &&ݨ1R;A̕Ejri~%L| X+~2,vX wG#KzUw=Z@.d^~=ވF/@TʺPCP^Oog |7f 1pmfBg|u_L1\bO746Uuvbe(ɆxIO6+KiNTaS M+P.|S0/izI4wҭCV9-ZT} l;phҴU(6B 5v&!@G}01 #M)|D\ӝ~ N)!_i]rUZ)aFOIZV ˗ y. y{e'U|[ț{-fš]}o]Zzʾv`V#S"z=: ڕ.. ᲠE5ZÈ(A\uco-,/%RfzJd!&P4e5]iޫvc4AD,ۘ8]|ƥ+- {-z눾Q~fmBVa Iޓm5&+E Qz+aiٰ$`DxO+amhFMJ5z: hˁ̇VD}0XQ>z<}-}S~-|FǬ 2g郎܅ QG R ^iPX$.YBʓ@Hp!c|1[ĀC0*{\OJO|f]f~jrNS2?HGE(q9}FX0)KoWM'xD9+!UA_v^ 6O=җD^g1[FހM~Vs')o*J@  y"(_$u܃|Nbtի&'d8صGb}1FEG갦Ɖ1uw10gpvR~NT,^XwS涠BZQЌ>?_֭ bqo.hك11XuDbNF]^7<\C3qDO~.k|n%3/?Lq=5*iϻ[q4V Z~Ԫ{食i(:p:"9s@IRO`з4JX͹qk?'Pv5탪W*Kz2e$T'q tHgeJ&_rw>A26t(7py/sue=41`L:\մDd¸q:XD"S( /mp٘b$:ߏxc)Vh(wH%LCQ {zGp;%Ut95*rU @h{aUqS"߶))~@&]J+bdI5Iͽ*ؼZ1,B/h}JN0T{$е?KfNaTnL( S^#,zE+WL9hL]pocEd} W/ϐK)!i񅼶EC3wLJ=]/ %YI kl xaT n&z}qT6ۙ{SM-XFV3z : tx rUDeU]zJ` ?׍06{ w|.yꤌ g.у:!Vi)ΏO*vx/55՘"BPgU5ir:"IРfD8/UVjXjM7c3S _ȴe>Opy^ w b:6 |ҬT|G`hXp!Kfe=k'gԫ&=@^W7-z/arti `g*VD9sGZ.Z7Ɩqtٲ--ѣ!A3EC_h]4"5x=k)6CńʙElRqT&[:߃E"ħ@HOpA-:;>n'8@}qE@ ųA8HޒL(L߯>tl0{aA8Oe]R¸C.9 %p;쎹z)s $c'U͘6 x_YIxM&;mv_.:@x 1hW+9Oگ(2ct7%Ro.4fcZF{=q;F,DQfbS̀SZ.vD]xMf`I\y,XR~[cD =3Chɺ \VL3`m #OG<3i鲃92i[Bb'q>#6Ow,:PZ܊ҳDGvs&¦sQ0r #peviVFquRQc+bL]O;PӖr!qm'W gLi҈l,xSq0avGc䏷]\*]3`=`穋+L7N2 ]ń[4Z0FDvI`pYO~t09  V+tн?YZ| O(3vhAC;!nG[(i{P 7-l D;K~"S&zoɬ[u2N\ӑt7aPXMYLZR~MjwHFWfk"VsMc>׆E?qgp(맒gzIyHjPW'ޑ08ԗFϴ8aǩ>dUPxC.z^%!ԿGuM0ኪx0! 3yK2 :"rHݺ}I;ၞ8Ήl[bψw=o;񭢑W5+Y?,\COkmϠQJf@Kp H;PQ Ş* #d$'k^h%buz}mWa]/yJ ͙6C;< .Hl~ ! PaunʣXtWg"-@°Un!>A&kքah|߽A_C&8o 0VVA|C-W7k+$uMLhFg!j]}S+hj=X :@XDdJ?T>-Zm(.0; lk~3Y#2<(v0,kYgmm?(L,cZ贎rX.ÉoonJcř$/_|M/UqsnNЂ2خc$CBJRj?<\hZp:S 0~D^pn*w[?+]mB6í־pBt7?j"wD9mPDuQ=I S .(;Z= mG048m Y`D&'슛I;UTxiWHF niNY0pGR+bhe4y-ưt./|[_J TQ}Dy}T4q\7ёHDmܾ:VѨHl.0Kv[,:+M)<4Ob9.mۚxW;urBmc<У1Q|Aou MصȟEwj8^#οV`=MVt lvIb3h4 )M 0h0*9V'ئgpG @B ש| zl }sJ]|ⴊMe`} W k~g,g'ftWwS@+ɊFFjT4!D}P# 577[[i&d'w!3]$#lM9^^XMW:TWFӊ h{U+)rD*BXCJ[S* ,CF:ҫs,)d`>x fZLS Fٴ&HiDRík9X8 ?{ٮ x46Af.b3¬fBq0TY]۲7|8ʶ4GzXr+vt*D?:ԸjQ"w2ʢ*ng"6?Q_%1b*ӵ )qٲil#ӹ_CmU|ᾷn#U` g٣"a$՛\PnC0e5ʉsy /HYEG<["mǖa"%_yzg#2<=hxӧ~TMw6nrPl=vp #Uyd@1tbS7Q'1x( 8*W$(- .gwf`j]o1"D, c@e\i8#h~+@ejfX@@*~_-<'t2 }sw@OirAKTh 4kLzP+#`wkTn[NuwR"'2G LB7Tprγ #t Z9Ia`EªG3/Dgݨz,L5{6fiRfރP;gpJ+nzʈtGO%3p Z6˪ҋiqL=\HY;|ws@ _Kwo2OIiHN!|9Nj{̠ռ^Vg% -auoh<@&.Y9{hv^ɲ `dq,zH3ܿ3*HLh-|*豚mqۡ$gOuE[kZ'å$sM&So$yg$=z8B́h4{؜w块8#'6g#H7 R$PmPfy~z= h%Ӣ-M>:#U*Z(ڈ Q@@m`u,bHf!eBΔAP׷q>@?[NX"XJ%y$Iç2: w -?܊%9oӴxՒ,_'M!}"9l !UE4i~Je ׾N4nR]λ%D18mtHJG~Uiϐ NЅl.rRx_S g9tc+%}2 DsB8t"\`i.7=+7jk !gYM`f7 v췬WKE֟oj'A>|1k)DѮ~E j<*9P-8ubnTaf;I٪gJ@3zFy>jR9p|*˿j@ϕCQ#9ɏ29DNP"[o"ݳ7X\Qv2R[#ZhY|C٦Wy{q?U .>:!k}mp-Ȁdz66(Slζ@HlB;>W"zT* %j/x0z9,a!֎nj#VLy^e#\b{ %7PP }.rRDMs!#sG$Ke6絙?aç/ɅƭNvyU}8f&ҥwOd9F)^zmtW}'r1v} y蔔8!7hY#oR-~LzO-S)V%D;^LWC10w},C,kڸկK淾ޕd?FQ+8֬N j;'94ֶz1Q+MNHƺ8!Zo|Tk%+I=LXݐN5h- h7鲨B$ShՆnCcBy8jsKQ) ǔBb׬Phy4dPl_ZVa`~3kFeFhrW4+,ij%Q>=LFɖg5@/3?۱]g3u_߬t^QiqRb1찝޲ኖddhg)O6[w Djd'q2UL Y,zXD0r5o6di(}Y/)YebQ!_y:Niu*6+8;Nx5Wwzn$FU.VlI+Ss1+p@d>H<1‰vD/AKױzg'V1P5h2@*r,ZJ8|N.W8zr}nʵfraƈ ԫ#^꣦Ai$Mjā2gc8O;b&jEOJֻNj 'Tߝ'L#R;Bw} `gg*_&4:A"W8ԒVS=qݮ45JsE*ޟGm}V e tBx=NP4eu oO.g\EK<=2gcr;8jI ȨB4zMɮ3`aHHݰt Ncr+MRVyFv6tAYo iI_mK և+\Xx-дZe-*ޓ3HnU@`]GF3&EgS}hyk+ᾑdgfmNAh:#Rۇa@W_0nƱD{ UPՉT}'j:ٳ)2,wdJ/rmǬ`Ҫlu5:\ޣ¨/V *bLJȡ*rX|:ewx)\Y Kl>Hi$:\ tͺ2;d|T\?.Pll?k q\?I+=p]{9paZ¼7GY4u 'mS^-(klj5p TyŻɝS_^7gd^|enGJ~0'FsZpQ//qEq+ao$={ņ`2H{ =`6ff#KLD8]]U<ҙA0'\sv]% m/*H@?na0a`ؔ"O~"i68pKRS~wK ya`XwdJwHW!7=ySbHF+9pu,ʃ\௝$QK\?\Sߥ^/`b+dl#Nl`+&:hỆdUn[GAь'ZiIk!YPZPw n$8(J?1~ xif(EOCA1;FP`wnч(LՆd?h`"F\ !MH'vbb<33k9zr_Oñ{50t^b|-9wL<l`E\Z^BVe سoE'WJB5+]]O0]G?LuQ,T20= >B䧼Kl},rvu͔(zN;Vx,-v\ ysXИ2颐бt(E/ݱg ob}k>I&Iw.Hiց ҔĤmg4Sl~ 4Yf-ljLfX:B7f1p2c54/n"/s|Q/EW +v=p-+dxJW)+7&PA^-W0)Dm80uTR=P:*߰ 1 `QFաNRйI\qs¦&pX Gb4{q뵘8_A.q8N`-Rb#誾CxV 2#6(?Nv3)$i ٛK@VeqүN _D :Ŭu$ P@@YilR`ocs%|o3i:ȗ@o{<dlSǼX;8v-xCǷu>IY}cGQN B GAs@}U'cn)JBe"\:]؊̑u|_Bmg9@._Db=hOC/, "wx%-9wE?e=|LAӋ,*%kI_e?bfH RrY_$ YfN~o\nx3GYs ^MQ 88B6#SF/ A0Zchnߝ?6-yjܙI+7Mv\`)YscnJ!/Kk`Jv5v⅒O<èwFOmiE9>'I^;46Y? _۴*B+tf$O,忰//_nZ8wF+Dv8&(Z1,#y++ 3.}0`[Ju ifOFH=d)1Umb z踉1G?>~"^*G4w$Pv ^jft9\1ɊnP^%ܷ|iER~q_F IV  ɕ4%As {v@% cN>&ծ;9\248Ia3z=SWZSp)&hg2^aCTU FfC3Jy95Rt&^ 29P,>1)_gYuEYkLG yySk6r* Wٗ;Tm&s%Ij9 73ESg~E3Ne4 Ft,WiwEb@Trp [O-~VAיolCQ?kݴpTàaN2s`7un2a,'E6FM*bbċ/zF8M6@2vpq^樠)V2*h^a4mY@&BdU5=CM RNP~u w1=rױ!{SF:Y5TZٖM|tqZ2 OWįu6J4i[!(Cs`Z<$6Bp]L2+J"%pM룳i1#B|ʗ\N !Fh}MaI?V/~JR&HQ}WʆagѶF_tfUݾ}5U'T݂D %.aFW$PJZ@ԲQFQ$u T;IU@8##kLHXDPedx)ExeC1N@*R!̚Ȁ$'i`&ݐ|s]-.TNd2 H9CB_URC[e8UD'Ja["rX6w8`B,EcZ"Oiܹ`ʐ{K]eqLv}op1< VZjQ~e|I?miե)cj#Qq-uS0(n H[$3gvI Pq3V'kՐx`P?f&i\ҧ*t\_!l[]CD <0cF7HG7_1M$8y{$dLlr& aBmWgv\yPd!:.9wן|N Y~uהTKFjk Ǻ.g,FI AQgћonϽ9 j~6s|#^z$IȰ_ߖiX[ NIx[@QWXLz~a˔XrM|*'AC7uhʶ^tO+a@cU׮L TI\D%uzCZ>oaoyP%ߌs ݠRlR$(e}2 P1F6&)(0S3!;fS #)Ug1 d1ر^PkD x<~uGٺ<0`xo1t'1P`[?$B%r~ZFSY^]h'A |,LW# .]4(i^Qk|+F67YI3h0#O;q -WU>%PXp$Y E9=4,V. N+ܾ8Hdt\:2YJS Lwg ^5d#;O1`snuohjNmWRW v>%0RO~ؤD6)3; 5?{.53bV;?TB.`P-;+дKT_77T @Q/B(a bhOu|衭<0=m<]XbK01^I^tɪP)1HN1j_:/댪])K SGWoW%?W˛zEyrW R \YDJ ' h(rETWDp?_ 0!q37zQJO#P- fN6y'UPZ\[nūetgO?_-J lX=, k0AC g)+Дfɶ%x m|` 9Sڂ@ $!*\ j'}u` ~;2=Qmׇk%p,>q[XC$PE9ɻPohfQc dZqȒ1gf%=)?koH K<dyiTOr۵qk^.wս7nHmfXcF+?؁g%6>W7N,Ok[1sX:.e䇜h=J _E͘D\T V  I,+/pYa*Hzm'}LpV% `"!7'4&ܧ>o aҢth= mEx#$kF_ lt&s̟o# yK=zqJq` Ηj<!ۄRBr  KF k;aQSQ;˾%\TX- ׃OԆdϜڦ={$JQkNܛ n 9P_?ˁRuɌwu *P#zfFt6+RJB^ApL̮a4#S*\M.Y h]ߓv#n  ݑSb:jg M\myr~_4Yx903%l.56G{eU?>pߏ9VFK*ki:Z.2%8& CMb/,$WCxC(Ufc?NU\qʼ&$s^6jOM Wkk^,'[X|z냺cZ :+. ;h@d2t˻M0Un(-82Zƫ 阮G2A}#d KoVarnU0aȹBBWu=*>C"W<4r+gb>S}i Qnj`rV^<*zwi"Ǘv-Mb0Aۖf1dYvvZE{:/URnWXJmg,J;/`Kٰ0乫w1e5}?gm of=B;xgn>߶>@'l)!γ:O,=@X]lGF/[ Z?ܯN OJ1\7w1>]IGɴ@y]CRwީ~q6L9qtC ETKȝa2)WCt ;?Tqe{?'8'M[4A1ա鵬~ cMbXF|,d,kEWwf.5OR1 NV;ujFnj[0G_Ex@d4;2{5(=T|tGA~{䫏[Sۻn/(#rNWfm-O{vdWFψߜR(4['Ǔ\X˾!]vpHg?1~4.%\?66ժ\ Lt_? Ǒ+l*#`xunU `Z27a(,)ٜ,'qn]1g6|;iXwB֬T1n G3ݶ @^@ߞFE? Stdb$OK׆d=Pd܈uEIN$ƣ>T)4h^qN(@)D˗ $S,@?E×Eܶ#} kWjCO;)GVGp2а$Ӭ 2 >[+'N}K"YsG-ό(^h 2ID|rKsH*̾CX]pلuMBbr|I9_r̀TIB6O?ݹ`D4X&"Q:0h"PoRignw쥎 Q,!9 n+ H}Tz)}xJ~AWz4Mu\e^Nn/=nV3*K&o@쑁nG s@Íe.%Nq,~ĭmU:s+SMTw~^w/d^-ڻٴ^ҌKI"iP̢#+e*G_1Fuw/{:e;dkWc?|(7devez{ɏ##1H P*Mkaat,|ƌx@͍1aP&rF_g2:*5JaX6B7Ic߮ 3jэ9{dz(qJ=}"?R 6~= vUxA*u/=ƫ6'\ª!4zCڱ|Y*ypa} L)2Ex $b7K,a)gDw4whZՋL @;Eǔ9Cԛ4҄ʠ+N&7x$hRm"`ːD _sTdH&C+'ֺ!:<n)EuʟOIFT:%:(Պ%ČpC&P%wA?Wl[MSkC#1`׻}ߵc7pİz?5lq8Zj(h9"*lǢic}dz#hgCj ?QPd Kyɥu+BXBhc$ Ϛvq%3N|,\mn,9˨ڇ̄GJ` Aړ#,zJz1l08ZXw" m̏ ;z:,=5@?(>q#{Q E+&N5DqܒY7 xqҳX<`+krc 2? '!_T/PW.͵Qcω\!&_^' MqSbY@47;CEԸOo$*LR>KS=øjӧo^RP@bI!o5E-jƱp뼶YwJ8{%b\d>,9MB\#Ǥ^߂`= `v}sqㅐ(0wQ,'_@`YDs^T18Bֵ8~(\T Rbw%>շ)/QE %p`h ~£&HkeW~Euc.2s3Ad*;C|n}UZ4fgw3%[Jjj Ds1s4Kk&"_0Y9Ҋ鮩 !Iњ)%k*j띴QffE $74fF;o dꦄLLभwv.'>~ܠ撤؁$G+? /u\MaZYp0_EE["|M!dM;q{ !CPtkQK}>rHt`h ;wfEޖ EDt^֟&$v>e$%xuJitQLQo bfKrXbQnDM%)+2Y6װ|F'.bC$ȪqInk5lVkQ!N %O`aGeWǯq)kxn{isOk_D=]l_gδ; o>oJ%1?@uwd~{"G_ 5`%}۸L fT`2+ hS-ZN3߆gI a0(/Vxg̤1&wvnEÁXjoGI:kK{e)c:ܘs m2H/|kj,pAYS\ dЪT 1>Z UjAl<(z1=" 9(ZjK>j^</&O:2mb6a$Xݨx&[g䵕Fحc+gSD?V H( s|QlNC'% &d y8.uF)LR۹7CKQMX̳BM #;@|Y^izI5"܍LByſgM:7(_eOf2 R)'˚Qeߛ3;,1_BÛ*[<4c _/mn C?2fU}[/m!?ꜣIoԃSn"Z Z`DL /Uu XmqK9dNnod,k&$UIp~IOCk/D1XM',Sbp47G.pJecU3v(JBoG8lӣX%͍KC`3`A? )[b2Xl9?Xmѡ9t> UlG9yz[,9ɓA",aSC$#%5J.~ -$}i6C}$+yzl/u(rV|8Z]>$,Pǃtq/Fq/"![2=JB׷Rd\ձ'@:?5nm}/bqjԫz8u`"Bh#&(˻jǭ"MR?<\y$=a@p8h,k,/0MHCٱ|K=/oуN\6BYIRk)# fN2o:¬fyjEͷٜѹXմhNWg6tn[_bhWK%ڿX*|2tr|I@a k4A5 )>ﮪ{Ӹ; V*CRHf.iP͓'۱n&{4Ln۽~ \a^P=5/?* vFLɨXݱ}62#TF4^&r33o>-# IIoe$qO_ ˊSքST]S4 Yht]{`VwF^܏'tZ+}ÙJ M)) NKWw@j/~`zrd, %_hđ6 hh Oiݖ#dpc7@Νy1eȿޫji~rңpbypS~.g=-G?%v ;~BQls2Dubu]8Eh;pߴ;H0.pz=4$OP*.%8ݯBE&NDe 6dr+p߫5qnF1bb!˛|˟@3UtrOXbo ¾RI Hr.@#F|B r_hb"9()N6v<Eq^Ž+Z=x%Lb4;]*Cc# <4ᯠ1,uy6ٰ2zI{f=5⇙6#Rt Ӝ-eox50}#YȷX ua8ʼI3u<Ekn0%'1sSxBY.܃4";q[*$VuY@RФ]fWupOz<(S%7;dC 藚~46Lܗ䳩mqiK \?3amOb)5w4Z*RE6Fs&$0}v@ܹdKWد |r}Ζ ~D}z4T"ny׶<-,&ؓŷ7!aT.Jo w(cuD%hkYTm!9cv"PK5R KRL2a O,`Տvt˗ H#~QJsxKΞ蹖?/LHneczC3q@>#^_ywZ9-EBGmc'8LMKCe(|h4{= `̃5{;قМpEgE"ӣ3Zfh{K~#yS)Z~Mxw7I K>GgR$iY;!a^wR!xժ >qü?ۅ;ڡK8q C`k#A:dz68]H-LpXÕ! n&6%Sbh]*9c 8LaCg#-i Ƕ C,zȬ w?eq1GD-3*)nٵh,EEgB/'H]M]loQrVAۨꂂEQ)-xa,}q镚i֓amIvbxƲhQIIh9L:6B?j=. +bz r'WNNUcV"[$B5ȟ |WE ٗx#mUUl/vP|-%`[tC|lZw7a07m"}Z h& 04O%'w\PAKvB:'/RfǫA[H%*"c]{vk+{뙘^+NwI'B13c{npp&`5>.6Kr-3/jM~e1Z`?Ckz ʾ!2/ \CGZƩY%ܲ6'<GBbF_ս0tns1x1"^eКiUjf&ZЖ #MRḬ+}5De[vG&pu~>^ԆɳJ2570^v`43@;q:+i&Y`~lȑ>QG:qCIo|m*I$/%a&v2( C&j>DԳj%6҃ ~5V6p@EA,}8>Bؾ;B"eB;:C>oP c gJP:n#b?IB{f]ŠB[0 Y t#ƭLjHd$汷w-HY@wXm/ʔvkX $=Pͣ0z{1.H"Օ&ǫh'Fx{C9+R Q< @fyKA"k$ϕE)j\(-4qߛV/H&bSjZ1PD&\F]m}j f$Q`0bȨu(KR8ӓ"~~VYa eq5wIP(1-k,;Qv`ae 0#ˮb 2㪃9wtөVRŵoYykJX2xM.ѫpF(~`^ܞNZ/`V5(6=Y,G ]!Xxh?Q[*ۍWo2ً r=!eЄldTpѲ\%`s"1m_PN CAEMTi&dΐD7dPdҿlQ~ssNSL*FEe?8OTF5z0}vؕ.OqX /ݠyw͍c2U XŽ7NՐ]󄣽Z}dD=_gVÑ B~LꋣcE|T͟ykpL]Eڍ/ Ps߱LW"^[C_6& (=ɼ;"WƙürqjHkLf6dq"LlOKVMjӳ,qDz 'P90Yhؤ=w~9G/לQ}1Y 2= }*a/U`'#<{C_&7BmR(΍KZ!^|pw'2aBp[B3ø7 3J"{__9}Ȃ#;7%pp>G9  @_ |\6>' ^CQ!Ց% N} Q8ӓ#\5;L%d/-7#AaѢM~(qSs"aVyz@¨-ݽ}8nbݖ,b> 9u{E8m+AqU:"D)<)ZJ3:0=OCloa'ha." GRCE&S+rHs`c&bR ?TD=EU \&t:ӋcwS^I3d ,paHOK*-<콊IznFOo4C_Bn{+p=@"W`P%$G'iv1 }>d㡰I :4fǛ P-b "MG6B@iḢ+YX#:-t2~Ui˙9?DtW /7JfA%~a[v EDۯ%+(Uض| '0.J)"/M9㑌wc; H"jX6%-z>Z༓%tNCA{6pM^Z)Hå ث=|)gu֮GWDK;R븪D< eB,(x}["Je_Ó '3  6RJ|r$VJ J~_#,ڐaq\r*qb2fn+#MAh8 )}16aQٌԩY.8?O2ȳT=9?/Qԑ7X\8gRBN ~2ӄ~ Ѕ}xM&SUGpFF:2qRx >?^(!_ĭs#M}ĩ^Us'J׆Z-sҟ"zHKFFҰ@3EM$RI0!չ^̳ېb}i\! ي>>|疿n4N @lwIi9e'M| sT "ؐrcYصqu6VGY.ZWg%y".!XF~ۺO|(*aQFzN% 9B J BX PA^ha*]*#V;KfHӬe#bleh@"(=ˌJXsNe'QuX8W)p FYl uˆtڢ7*zu66Z<wWQqp[Ŋ@ބAb{ur1B]W(5#I*[eҖ^-@tq!~$vT7uq>Wuz~i( [KPch5;\|h8αv$\rN8 ّ8zhrm?y~OB5$\]zhbw֡5 շ1N2z$CqtE<5*j+frn01IBE{g0R*"DҮSRZ8%wzXXy)#md0{ո6ldr0Ǘ%{Ѝ; ZG 8bTSp6)ʪq]̃H8e'!@3|Vjp((p^%~kubƴtS= =IhၧjʸZyg@kY7ySpP ^w;U%΅@¢=x7&njG?>ߐ6=Ⱦ2(V )ųu}7z͛c.Ɔ[@[F/A:b{}ʏ} u;Tz>cwj# ܬVu*`=l#$9ѷ2ތ0)HOba/+:gH;*JKՃMR>Աv>-(ϸjuӖwҜVSVq5eF{:K.}WA=~l`tADL Sk|BΥ&TCk .m_}PFrI,s1~SpO_~߬eqoK uh~ӡf 7~ ~oz r(Z/x&~f<ҖD=(r,], z۶~T+|OKy-j6Lx]m,(rURj;rݿlG{8?I3W NC'+{:E"+X×n"LJV|}% jߺL$g⁹" =]$|(va+*&y.j@]o! 舙?:"ceqJG6_Q۩Ռ/j*,[C9#*θO[̗EF\+ Ms+A<',I=:JR$T[~+ƌ&`w}D49w!]&aϵV7,an (RKmu,r(\ u6Mz]=i[9ɨߞɹ RJ&ѶWrS}SΧOuZ]&^sA?p @ľ6D}q۠LƱU"ͦ&s]gj}G}F@|xƺ9$M;`Ww _ŸYtF\4FM^X~--Vӻ(;y˖Iy:]2gcu!esl 4Nwn.>$*k9ṯ&9N#T'MM ڤŊB.Rc  d5f 4͜y|{;|( -a4QO*dڝ=o̰=qYg6%Vܸ֭HiPy,xB}x->~6>IǬ!;v\D tAxϨVǸGE ,vF#1X_> gmwg}9aT3f-?Se2#,vA=O D/Ck\:6"E\2{-G`[_] /MJLSvB܍ڊ- 2Y~n84JsyB=0Yf[Vs{ls (~=yaB^kR Hڠ+k9~y\pw78E ųmn۰~JAδ4?5- ÷|Am0w 3Ӕ樷Q IޮRBM{c]|nL;rr*tAuOe>Iw5U/?^xʯvxgmYhifu-*Ήś_`8! yYd4 EA=+0&=ZIuOm}=DY,BucκD#PxN ݃4h, ܏l ”}|ɠFJhҢ2K <|9Ir9 3VfRyBhѵ}*тaYL~ffc&U-恑"B;9kXd"*ksp"¡lvp}<ۧUi7\ZD>vVajdEǐW)A~l#xW*t䞳"|BjNtȡP|T4JP[`o+a % luMLt;<ȋp[X |[xls:jA(X` NJ@V 2A= ?8RfeWO 6Pkz:{Pf쇋 iR\4y|UD+r<ɂmw<\1CdN-Oo2;GXgd]|kNZd55|BT 'xYvnd61*5=E1'j4) Hf5[v;\R 'uT~<.+`0ZI݆sYBi_A鳮^nׇQY13@R¶(>\e"e(ߊz仲C"EkcX XreA$Jfa]rW80w,d)/="\ѵ[XvW #7J]}?"ҀVƙH-G(_|\@0Ȟө,-ȏŀ/{>k;ZL-f$ror<pA[յW 4ⴥ>CF$^*-GB,H$qi;~hS!W7ze$g 3u=C KN{OE.1~=7l5k3|riӖ؂o0m ZgxS|XVgk\ g/ԲP-_ݺuuF]$oy ~W؏H2$hJ)7~zN%T6#ldt~7X\HzbL),҇!{v#pl(j60R >L/ ǎ6IFMc1ַ&+6z2*.BGJ9#t8I@xM J8l*Z;hγZ vzRZnu]b{lRå߬K9GJA{,]‹~ ouSx(F -˖QV~"Ct/foƭsT˫l'J=~!4RLng'`xq˳b1|a:rq5knqoAx{?"D< Πn&fE]&|//@8K 6v@۱=i> L&$ti4,9JB[5b=*C|+BXڏ[~vtt˲kX#'tm#J5p,<6h2ȼڭ_0=zZ&dg~Aj`1Sft聜O xi xVv啹\reF8 -9"r!6+J<$i~Ljw5EWCXbmGz Y.U~GIh)J(>Q}u!I^4"Y`7Ѕ)PP빇q,Ŭ<&b!drkZRCe7MPUFV8A_];??bVA(8Y]M@;y2S^Ī[KHhKPpZoVZCe/zpik )~܏LAd8~;hV$D) {-`?pBvL5f: MQy%9VٲD]@V=ƊH.i*:y1]<̾<{jpXEDTpݩ< -pS+KTE`xpǥ~g# Y(kNo>)G=-;PA*UT!{rJ2yO6Gl9(];h5bs#Ld_X)F0;Kq@_,k>8כH. # hH8xUMUj6ib"ZuC?U*ϒʢHL e90m#ȣBN!6ZjroWǟ BML/E GṔ_ұ1i ;Htۑ"`jQ#~z4ܭ }lz_3]f:ub+;dd=uy]7<m .5[;: j7{4F#PqT q$||kIb|R Ep V3(Jŏ5MqdVc0%H#ۖ9} ޖ 2@Lϴ-4m]|&.XGfz&l&ik'0X+wƁԞ%bJ[0qk2IqXʕa:~`]aIJ8x,1JL@#q.(8-p omZ7kUQ|7/W %˚mmo)B "B}r25(e87qod0݌Kl(g؞esAF8 _hsXJeym|3?#. *?؅ԏz 920`},7A>C>.E;/sF"tsf%Ᏻ+J%?} i 2M#٠gA_|zf#mvk,0}ل[g2~-J&1pj^EvaQUZ5J9DRV-C~/C[vaNp{Z軾,N<č[y"]%oSZ<,&p(A{򯽼`?f=i74__Ҝ Y9NDJLzBVU*q5֊e"j6B3jrY9|P 3vkQ q#XT s/.XCVonyCu׻88 " Y2"ml6@^}B씩} {3Ku^ԃL3ۯ^M| {5dc ʒ,1[l (Wˊx*zf!D~p'j7?f_df FQxT=3Ԙ=FCC[ˎTa| J^xJ+z8k0Mbrœ$$ccRRzL]I` ثdB,G J8ؙꙢ]X(vx|:ʸϝ(,ʉg< y+  GNl.x( /XD-:@]/ {O `+ǙX⻅ B$K Qq$.D0.gsLjm"9u2b%e٬(fm"OA&iwqڭA Jo[W+iRE3d1!՛[n6n Q<7: um!gkfmX:.B q/=@e72N*ȫΉı<۳SI#k<\smI? "\̦5\M&Iڍ~hX/}!$1Cl^2Z+g%' Y?"ݫTV  gW!aWtVde43$̊&ÄԴ[/aSLjūUcNq7kĄ 6#BƔ wR9l˶S8^sXz(0Уz=\Nhcx ~)CK2 yI+oY["5d+րIg% vţFUpף6ʩv"ʥ?vkr9!ur';~2\I ~A\f@JY`k^8: ZAe J~%Eיb [@8!Z^> [<,˃\d: kߐiuNg݂N gj?GjndG/)qEujZaOЖȆ\xq 67 qG,7\PsZ:E(S GFNadi}|ERI , %&cvH4I[Ř;T(G܂ˢӇRĆ b /A}>򩋄K`ߗ7(` PnL'ÄRPYdK6v_Q_uS:`h7+ j"\?dV vr=[~Ġz.3ȈCaS^ WG8+֪fZGeEk6yvF'4q.?vNmtn=5Sۏ&6W#l*J5Uk>)D\-g֘sΙ놄nj]3`H{]Ȫ4ia$ uCg*V[zاQm_QI,MW[:\;A:w -;!8˽LrGDW0 yynh 9 $eR"F!ލGH\ŤF.r]sIz1c8aagҺ%Fnئ>ݛk M5* Ks2]N-erk״\:G>H0CB)*H{ o36J ťeqwҶڟ n~_&<|Vsf]I_`Í"ÑhZ5+ [b%!xAqx({H%Sk_X7Wm H`zհ%܄nE|ֳ Dt"_ϮS{rof~~^۷2ı)oZKBޘy}\]@~y^p_JUY#fm !Gi="| X`Si%,#1NT Ͼ7CϱUjuQáL<ؘ~e0α) Vp7HJ̔<Ȥ*z2?q-wr8I 욹um`¹? 7q(;5MK"vͰHZ~>M۫>1['\$8LHQ,ҘD'-* A۟+HO=|lE \]yυ}r?P;$3)#D~jUKV$B%dw^-,YSDkмW>o)  y[R2~[khqL5_ir8=b4m ߏ屄;yAS~'zWJ@^VfwÒWAB`}$ lJ9Uri`2&$Ux8雊#\ en M fOA@+Ӻ7LTU_ ?T_RW֡/i)z eT b}'u~ƍH$F̡ѱg?ߙ?7D|nSzF' krGo^\6mk@Q=[^"c >&ʻ;5רנu0yڭlEILiQCxb&IԚV; zS^uq_.hN(l&w` ; !L`@Nx߫lkQ}?O-"8I[}᫥騜jv݌ ΃x< dvV{r=T*KcR%p/Q%&@Rn\-Y[,k'X~<_ThM)bV(#ߊ6$GةdfW? (]7}vWѳDJUdWC8pMVmԃ~dT]q#rfYPkCv[k}1 W?¶]" }1/<n4akRгH]/Վ׹TweF'[ZOQ+,5r}cv]fxc٪l$ゖV͙|PXv&1m1OO ]~"Wr`^J})[mRj#AFvn-h 1\M5R%7*ؠ@ ZXoSl߁0 o[P*,(lm f_1YЋSA>[o'I o!a$ ݹOvzӌm24gPU2tM ؉-X$0zdls'dəg#ݞo:فWs *@Pcݨ9HSzOhL|%%XRV}aV M=X󌤎pǒ@sWe0<U 2@%ya׸rm Y@.拶npJfDJBqy$im*0ɿRBUA*)G~~,LЁ'!x¿Ly]DW5DSͩ˲l\xE(#mbz0LYx!# Nu;Sblxj+=Z Y"Nϟ4\R"$:zXw~'NR G$՚]_Opo#v@?Y_[ ʉϺ@u?A:<X2wV0N{!T&uՌ=:|]k*,*e[܏(mc0sP;,#1(>WXoWG)ژ<=[0qUZ #ay|3__ݡtcو ͍ahlJQ(QP7[21%nn%gV΢GWwP&7$@=bx'2B,%HYCQ-'[#35' 'Tf > D~ hxIMmό>ޏLv Mp[\ n/%cQK@0jnOh $xV'^j^AAHV‡5VB&j@Aq떼 Be6tl}Y)2GRdw<׵]%~sN[9Eڇ ".p`޹a/{ ʖ "kDRnV$ kU ph[qDvѮ3r$t&1 2^`md ٦૱$f7?m,m>IFIL; [FGS&~am)NLQךTV%#V *{|e/:m8JDgEgs;D>Z)3k -{0tpʤxdH+QvQf|m\xu#YF@"{_SAQeHw|kk 70;x6d/$|m̗X!P|}ں,{CW5)~3(1n2[PQ.pNƑapWBTԲf!HevRI^*%SX֩Dxxʎ3CE[by#a\*LAosA3x|a# ),\( Z?xN pY!I}4ح(jVWS$5)ؿOhʒ:jw# : 9̨剋dxQd\5e:ftZCŊ2(6 GV&45ܭNX7QMԈ盁Z_ȆGG 6OB/AofViy͟=%\-HE%CjuO|UPu8,ƞ&EQ/W @M sLuOkm\Ҳ׃\Pt:8,A1y(T1s`egRꅺZ=~Wg:`,ILdC3obJw,P-bSjO<3Dv(IL!;rE7+TT͠m-L7-SEN@w8TsZ㰸k{NӠ0mEyz6g ? 6(fºj9:Ӌث7OfyChN0B0I7AH Bn!x|%`*I“9tk≇Mv7d l`n <}w`xHLuH.2mYy Rx_YvV*d]&\6祖kӨ_OX 0Խ 1c/*ŮebTF 9ky6I<"~jW -5/25JU1] Sg20T*?/FY/B@ -'tYŃEj#UNrw ع\WOk dڤjѵӽ慐LO w԰8c{en1\$+c7 ¹A<𾶂XA7ʌgO)WR{̅ۦ@I5A{2 cjqg4'WF84+7PwW>&iH:Cw=hښ A#0p ؆&WYcJl0:ub( Xpʽx#I1S#QI= /Nܰb{$ZZ)$;77_ffbu;nBB:ɞT.O QCg*\h, 0Mkg`% uf9Lrz G[ךUMҽo ~bIJVɳ0㣘献W9GQK '{=Q <բW^AgS_læWv[{3c%kc" W4軜ܳ 8Ӆod)[w)SUPD#QZ[TJ*޸ɛh$M9D}6,(xhGLJ>")C$Ҍe w>vej*Tz3`3} d}٣u:5H9u[EU#\*Iqr(Oib ˍT7¬%:2X k˴66.2D*J*P#`13yN%~Qٿ"z|mkmaXqo0-f#ctfŲew.^q̆as5믁%HгV"~FO`tIFs_.i[  Y6R76VVmOSe=Ue! /^5]|v. *Vy7qg؝]q]Ο-q^^\WDv!x6+sK(c_v9j* gҕz]6\vZy++*f$Xkϩ.!?@Y6 b1. OXG(8 uEf%,eB\\ֆ&v(xWLY)6zO:K,'ʷXSZE#|pQũo# G3"h0T>޴~eB!(ȞE"Qv2tD_ZtqWŧ}(cًk2~-osaWa}_l )z5} gyŬy@}؁s ˆʦ\ֱ(GMnTt`|ܥJ_odaX#}kҡJEǒ胂U|p[ mtԌ .Qh".Z\1[G`M|HW?DڋWs@zU|9,Tj6'obZ*  RzSV6!XUETO[~t:[T.lÎڐ3M3GQvOW(zϥ,y[853ln$ɉL@ Zq,-B믃1Wx hZj :a{Pnmp"gCN*l Pps;c{tM`Mѕm x|~^/مV/`M2ѧ 0i$۞:5iY]XA4Vvvn_i ьER` ]vzV:lcBt;T ;\E5_EۦRX'.ݑe, )()uTAev>p6SXlUcI "UsJ :tckLc̞^[f[ 1}4lzOu' R_fzB[uVkJ?ꋯjn,=JV|Jt(ZG7ێ]i\QR?Rb:bZY5:}5CaHA RPxx7巶oG36oܔϗjxJ `sTlI;pWWa'n?E{2bz;$Z)l (9V.Dj݄Ѥ7b0t9#$R5W&ias,S~:6AKY1>꼴U(1eUXI{ `b &nly9U? p>ԠE蘣< nlo3cB [pN['!w4Sv#Eerˈ_C @N=@X8a6(J&mگPHr\Ua)_e,sۦ9?hAʜqQ3MDc b`ehj9R Π+r[c)BfiLϿT<ց$}ܯa pF T+YYS$aZV0b*GkJY؟Љ2PK pbgs.`/W œ=L #U\}hg=ќCPo˜EIK.cnΩ2?z[M\Pg~ɹ(3A0*d{bX;@\ųוIbEI"u/k5E9fm-@0/ePΈrRLzfga i^!ݶˏ{ = a42@V|_`~FʬkdD{Unf TaB\pCZ^.7LaU?2rdT3.̪ *.ڣq)GO+HBM\ i۔Nŝb0+eكGZEP:$䧏-X=@Scɀ[ؖJj+5B,!u 7[ks-ё2u ^=b|FZ℘KkY*d%ȺL`w=Lϣgӑ#hZ.ND^!5*Dx n8#3YvJD±{DnbF , 1ӀD4V:U!Msh"SJEXw eXA ^/n+cn1댛|>=pI \JaSqw3%IX"( 88nmycdGTR./ wVI PޠH2p=! Y_pIuZ [A!qfUD Yn;ǷHZ 5rܽ1QoД\]ЛLyD;oO,t9D0/+HQ(*x^P{rL s4S=+xݿIdm~gg8V#ojZ7\nSD$2VeC.qolw0wX\WrՁ~{q7đ\-J-=yʑ `$*9ٮpA" IyuKCf_y?(GEQhNZ3˔xUq4L4ElF?P0 |W0,gLCİwܧLJє{{ ΒAhڱo!o߶cUܑ}~204k?:хH;DO0#R^̻' WҟlWmSL^awdDnr?v=.Ø_d 6Ÿ5Wqxs}4ϊ=#n"J;V>[(H)[:ޘf4Q^L3\ ʥk?|"J"X2/x&[,UOSeU/bzx*189Y6р0[9xI,,5|IJvoX7i79x:N@ᗵrxpAZP:ytV4 odr|=HR1,qnF23Hf)שҫ#(#ehQ1PُP܊GUo ّL4#PiZAb('G.>ѡ5_Z8&ŻFVJZXN,LFIR)գ!SiQ-E}vʱ35=΃ٙcH{!K b M pTUbBx`ã̎FH8sG<kylKkܧiHkjpW:}ù|^HJsceSy|ߜ}٠AW >%D]Et[u .LN(_ݺe`NTnq|MH2)P#jxM6,:JLBۚx m'NvBpF AD 8ȣo+ eR M!6r8j8GŁc e68"H7wI2*Z ĒRmM,@MdP%lͽ{9bSUJrZb+Z4|;,DZ6T}8ccb`HV P1sWG^2\b}[BĿMS`f2,oGA[A{ o>#p"COC M@rۙFM$Djbr wGW3.\uT&׮nK CE|YGWgZXMӞIj vvXtEBRݩf\W?C呸1R>{^/6L ={JW݄ E/]L>nE3//685VJv~R^o@!2˨95g=|h\wc;#ooGЕQk|z8bQ +9'@ L cv-Mi$0[c|5'xFljtn瘨 Q3fVq#.d Dߋe S;[Li'MO#In^^EVǓ5}ly~Feۍ&z9mTqpF-Fs=8.C]ɿ qwzEmXdMIt9N25|*CǍNzY{ !'c-0x4(_O5]qOQ ͨ!? $%a@]\K}lLc(Nv eYu1 YnV7Y7=ԥaiiZŽ}p1nJf'(>{̓_}S?{Y"լs*~QٰD]*SEt>{۵)w3$Ug0|'7z˯$ 䙿 5Rdk;§_^K]/k 3NO>xrh=IƔ6HsT]s93҈NẻgZ|Qu=MVR,Y2Ѯe;\yr&e "ИaE3 s.!m?#9\#ѴA v15b;^r[;<{;&aeQxho7-#OuEZ%/+w<({m͹lN1+ctsTǻ9fY:[w_DYgr̞I^*GXY G_H 9h-B&Z?4D#g Yma]`"ӡmoD`n]C qA!a2:&g)T+ z <Ѐ7|V?y}v",zonTjBֈ#?:Gn'׽7@A.s0b+{RCf3 SrD߭b|;[Mg|K^6_&e;_?dZ ,8LSǖZt ˦{1UOyI`E.'PT9@N`TDi.G0%](tDR28@J/6wEJ¥i'B{D Y8?*ܫj5tMJ>7"{_Dp$A⣳ct=OYRto e H4XW&*jwފh#`}1Z:V19fz<\ǖ@;bƻU:%.gBN 1L5BRI96Cz9(aOU0W̻ܷ2}$YK-2̕5cn٠<[#'!b?9etK"BKLgӿKac2<ўWP.*4odA{ -d'5NoUu8U`w@ʧ)H4k!5_%hS# &jX7h BѮE{(wdE(ys:٠z6 eCgx25 5B 4ci57O)R;u7Oik~igfaj]u@b{0|f QR8ݞ.z2Ɋ幻^N/"#1)1`yMetM)aYD&1Mڂ/ *LLK"KkOݣ̎L]Y"Ƃ#ﯣT2PFfc# vjTQϢs%(j!\"E/}{|fmu9;Ertw(gi+ Od~ė{N$W)3m9 F26qU+ >qљMi=OQ1tE Mī~O9u])6 Ic *aĜ W]Mf̴ѥ݌*g- arl{q݃Z9Xӯ\L("Xi>⓽SUߝŕ2`@" ^.&/FΓ:Tٞ;A}_ 4|L:\yy8(GYQz,eLӢ/b0/^W%Lx]%Lt tJ[;ӑJg)TJ2`W/kp36Yor]K98jЭ4P)noԀ"^O rX:{Nx0s]Q{ѨOUH8*S}ki{b}EtrI3{D2~:~¹6 m_POtI8*)]19B.eH\LNM/-ŶdHnLxl`zDE@{&/#eMFiiA!tpR; nF/k B_PrtM:"@|Zy/) Iq_جON76Wd)gw/1c*P@I V>_9n'"ŭʺyYPI՗гhξũzH¤pe7U%F]>n>c}nyns7 m;=ntwkQrR@ӈĺiQuQ38ȏ~C\= r\EĬ4WFVX׀WtK1Uy]ɩ-b9㚒NN΁ D{h@Մ%>~]iP`D : PLv#\w5G79Td0;QuDeC߶ j}QGZ1HO1"%~kZ;Fsk0ƴXKގ1>>BX؝ۮ}D7{d$x0stu"qЌ̹(M=.(ĞHvAN> p!OS{S}~4rȾhw D?{>pfu0>r02ʑ\iՇtO&5L:oS7|tYn~r \*Skh |HrB86cIߒdz*z3EO(-#vՎ,ati%o6dW`Xc`m-!G2e b!I~dIlB4/=i٪FEUVŬ_":e'Y?ÚY `=y#,*3LsS ػwQz(qiY g;y;~rԘP1`Dy@ V5Xgpjxͭ XBQq+f_t/ɑ<2Z%UZLg.*bJ^]BHꯝ0GM/."Gm<5Kt bt7,.]v&c:h>b!Î0թ"`oP4ˆQy67 Qpг|o:$*3l|fjGb 2{h383k]v^/071Sf/Zp+(pQs1߶Y%V* hkbN gz7H[XGp>!D9mޝ9~Ҡao?GX{mLp6;|' g2BjʾsAݏ2<Ҧju)F4eCQJ~- 2 s%F '+|\7\BPSHd!?̶%G>Ur\Mm+J[jym/{ : 614a'W+Bs QGS߈~ʤ=z דW^$uێa)9쩌R0qPQBȐi'2%RhاxqZb}]U@[w؛cv;*jw<]ュ,>]q>pT/FKmcMFTJ42ͅ%#3D;A~ F˸$R gΉM%3aʗsbq#N(k1 }s1iVX+włF9@yBb+=9g:Ů?|Q(_$ҒUӟS)*k3/V:L-5q'O%kXbƭ4eཕ*ʄV]v$iզo98Pf >=α.!XMIѽmyqvԲf%*Y,{1N_<BaOi⛄ 5LS|z[&m|a<epQ(,Q !F}ėەV6h5q8J$DV4X eS_&B97x)*0ѵXZ@<%kB_nsu>$~Ts` 0l6:7+R2`6@kH۞{/Q;\~26ַXXryAxiIjv.^NHjC*s/PAGqx{?|t8CWeTct(SwlnJGJV/mCk=`wb6`7hQ}Ƌ5vS$>_%əԂJԓ )ڠO>},w2SȥO_>/:BWPvhhH*<-B:0+ZAMCt]fjb6P$^ڀEN!OwgAC}%)ᤆZBwG{VqSkfEvv3EF87eWU2j ՁIH;p̓xJxYyn P::[fGtphgw=T79" Y[W4vz 8x/I!yQrtRWZW⪻>.cHWb5; I)eW\`xK[2#|B>Dv%'D\9Kb0GDS,T{R(M&0ϻ|a6A=p'v MuMNTiZ~ pzrw@`:R&kcQժ:hfrs}r t]06l\4 :Pt!vK3] d[6~LMxCl ޟ|y8;i*6#t"Gd-~[|Txp{\_]',(`߶O<9u䪼s/9؍`zF33kIqKE/VTc7Uc,b_DS1O@d5k@5\jҾp:gFT{&~f!2i+hQfn- rɛ\Ði(Fa?mXG+4X(kݐR_bNP䞏Ӏ{bT}NU~MoP*v8`3uQ֋J>P$6ׂB/lE,Mݥluc kV`\Fj3c sxmQS-$Ʀ|U>RlPk]E̤:Pp-O(;uWq>RX{EAUdoNT5 YjR޶GPZ/.=S9Ӝw|N8(>:⣟ rKꃟ^O:뇣Mx屵Ct]Sc C7{R!|6Ta0r"{}u13]e.IL8i|8gRӉմF'"n}$D@Mm3A#>KV& Z_`Rg ؾ JɂH5R`z?dkM62wNF\T 'JOC0ĺsP*4d?PˣD)cua@ɯtS} < !D$;._Cdu$#8i󬽹Tkrs1̿GťO_.G2 Tv0嘱 #Zn/O XTQ.s,7 ] xI,*{\9V:KyzՐ TSVJtY1|v atEZtDҀ~p0nʼ#R[[.,{6Og`V-EA*9$WF^Frd:jT+$eT` hԝ`mG+ud7`=1>f)ރ9|koJEEeM\q걐7ܕwWi!$#jXO8Pt 0ȫ&15' <%c-”]Wd;v  ԚmP$mYwn7Zg$ e)(kmXK+̧*sh@4)0VHp+SyFZ5c4Ûн1;w7љW~|У >1ª?$/<ۡIg˲sX J|iónnP\%} ΃2ahiBzA|㉑%^-DHbkOޡ(Yk~ ձkJQlmsUS*P\"XNPጼy.^ۿ&P9u_e9/_1CT }2mX4Y[a!Xog5[vT 2c mQo4qFEE^#&ڶ,G._$~`!PE0nڮ:Ftl;zO$B]Wͮ}3Ъmbr_Vf@2wXQ{|HdJn T }g+WoRz-j[-#ȼT,3Q`]q&7~]h/C-J"u:BT@rVz4SL MHv_c|&_ܪUdDG˯j{-=y.3jXբX"5`țj|,VPBRLsDC>Kꇯ9~Mpjx?s:|'㞐K[ͮ{Å+} a+s2j~Z:g Y.&q1 {us5_R;Ig!Ia5Kfƅ7 ߥȿ9|rӡ!{e7` (6FgUd b9^{t!@bx fF5_ʁzCh,r/Fr/$ܼYdb #V ŐdǏGVXLl &8 azxc@Sa=C)TP$mЭZ{Jȗo˜3Hw*8yaN5MKñ^هx''Hiϻ¤ mS$Z+Y,_N:,5m ma٠lD(|@+SN4z(#赧);ZVA~ hD@joDCT-!ըq`D `ٯ-A'p%5jZ\~`v[%jW}p,٫s+DKQQnyŌ$9~3o¯q6^Xgysr/*xKtN2Ej@ֳv,>U\Թe" ;myoLՏs(?κ.]jQWQSԋnC"ZRVy)Jȼw (@p\BmBϵ  پ/IcͯƩT4Ǟa9ӡd _#J/m'ՀH߽`cz2nk췳`U&k>*ɵIB n(DsW l}16`W |+S71{Rk~U[MbYB e׳ng׏d.~@!Zώ"EXվ^ػ"[#Xz L:ӭ2 h*Z !D9L(w~<'k.rX\rwYrn!,uv #|nj^ʊ >̒9;V Go6@xN>B RHX|AW'-^O@`B*,h8>=Uv+ 5XjjKd.֡#V kd?>!O?i_@7mŋԄqU)P'T[1#I^ FU+' x} gP9ܛXF~TJmN"Z8"_\1'OuN<74|\DW-u޼*- m H3hn_+1d)N9mL~ӚL"$~5R6Wݬ'3 *$pY[j&kݘMI+߫X8+xuqzv;AS3P*>5;ZN!^"8. [U5Bd8)u0qIhmH#)?V=3͓9D$,3oToZʛ4?;mV 0XP!&^e0BS4-@lpbnI5o8A\ct R[L>.We.P#;MJ>}w[yH2ţ(JF)ve~3.qmAf !{tSzVc9ȷai+}485ש?ſeց %QyZeGQ2DB+K=ߙy;8@<2>s F5/,A̎4?/J$<MbMPvYx6j@Ŕ(4a6##7e5[Î-0($@aEH PၖVaEEA-*/@Km9a{6]v <˯d23,E>G&>c_;V>iGwKZdž|g\qR5rfgDL}(J.ӋX= {"q6 Q2jD[Nf|m.cvcއ9Gǹ)Ff 1:6. X8Ʈ(CP#I،6e+f/S&x% &!YV>$A!yAԷf?ܧvmypu DA`p_C@,&{0 p 5 s;x=:yCy4E_Â|n*+/H?nG.Fʂ^i(+j%(pJO 򎽑8 dUj7&4Ӌۢy?/?ynQlak7JȘƫTRqN= xzMdqN0y^<yH;7sQ=܏G8O%OUĖLHޭY\9Ym=&#}z8GY}\`ynDJ8b)PB[ǡuV8FPCgʋx+Ww~"a%R)ﻍbaY'6=$i,(ĴOde$Tnr[Zf{^i 6bk Y󹧗D'{evf2 LALskf+W(Z(djӢ AU yH#V7VfNUx>;1 f C?$ |$`Ţdmȃx P~ުP0q|znhZA iG \?xrmW ۄN6̟;/2UF#F+˦bډIi9epkeZm-Jv|o;'Y rEA{6,32t<$A c*]#vC"Vȶ,qvlkFf:eyYe$oҥYnlsp N.7/Y*XU*A_!m`k&g s2FQa[:Ɨ2<[,1~L+Ou= #o٨!t!%"6wȌ S3W|3xS-^H*AFgK`܌)id=~oN+_ "^c1-hd,cbsce|_+џx6 !w&v۰t4/1B'@M{MO}'ĉ|3)()3r! *V aq`"2,ޏZN@_2>}X4(92att <^ӏ*)&*miQ!MG#)M8/n6MuxN|Jt_y g$A3RGA1Ko& ZhD[|B5pP'6pLMBppܭQ p=1vR>;tϫ# N͌-8?<=xnBY(2G[c~wz8,>eߥL ;tDҘE莋i/.%ŋp6\M\Pd :#̵!94ƲgE_7GrG6r/jS.M"&]K'U>4o=/"Fsѿ=E抖 >Hɭ2g0™>3nb>(l͈|v([" NlT!" y8 rgdoZօLp-1]O91ʔF ȟVIkhUrO ;`Z~Hj/3^Csb(֪=W7f*iS-ڟ,ESonՍoU^xї TXiK>+oMJ넡c!> $AE%D3h96M C?ON^#*gaݚ]q5.QoFp|})Z s#kuFKߑ-}z/cvE}; jVv\^+8v7_~n W]o8Lzy>í0S8!]'/a9")UIݭ|jyGP n.x0AuڢO:~Q*o*GGE8xsWB\{$&[iÀۇBUL^D$5`֎F)'hl MRv\k $4:g[H!gŁ!tvLJbUG^(-0'8SuPv"p v  c~kj&{'7cl/l BcRj.7bg "|K=&;s~>G:\ Z#"a OL{ /Fހ9lt$;3=U&tg _,DX#W6.If(0tDOxp9drZaata&j`c.Zl\+Y׸sR%#Ńl SFܿ LjңcssR{ 5?( ҬduXC71]"sD)=ȳm`3c8t ̎"in,=!Њ28#_^)H)O>40΄pfc ")__;M} 4κ㥤,Ĵ#=nzǝ EBEt:+W~D!sMʅ 䧻30wJ8o8 턲"i&V` Rx43=)p)ВtMцXGʶ è'>C9lCy/1V2!G95Y ZH=Pݭj(@<ԓ4*.&BaԶY RBsG(Cyᄔ^`8-;sˤ׍r@sEvH"o`/{[1oGYw N!PU['!F#S|cU{e֑$բ(FͩRǵ?)jbf牑)Ǟr>'ŭr%Q.ܩqd2/+ok ,99'QOMdUBx OYnnJR#%i3e­qdmuD4MG/ʜ 0MV#6>*6+vYe%nt^! ƹ!*5S%r]Yb?3G7 ax۝shX3~!"!ۇ-Zl}A}ݯZ6J5J =z !e$$B/o}0k 7YH'•­@ }k՜x{\D  oxdm-MS)Pfӑ;wY8ȶd8#Pi4'xܷ +Q)UvDah0A3L*aN_E)m.o&v/R]ŕx9lŖ|OE]uϩ~1[|e (󉰃Xc-A Q>ӒT(\,l4|ɓ 4ryt^q Lü7#BW#rQxD&(QJ8R;RҁW;:ZX`>oF9耍p!wHZZ!xTgt@u,f)M1?h~ĵF9 pi'hTʐA}1z/r]b=/mc Ifۙd %k¸t#wClv6UUwv5 hiE<^#zU5,dǃEpu'"B̈́dHR.jz'y6 Siwl}[Z@L[.2:@&Ts}TLT }:#X6q1Go"619 ExvokGے@pZf7-mZ͛3,ђ&ar| LE*F=}.s2{gw=5VF_8 ~Pt 0Hm #hmަ3!k;0ģMb`EinR 1"9ho>|~ lݾ^ǥ[3I saY˞k./Sd:s{dڣ!g{u%WRp[y$v+L.)֤ig_3XZ,T_Iof9MBsֵ̆" >V\~D~}O- 0 G yYxCF(a4>0!VaϜ2 c1"3|1 8Ei-[!8SPG(B=k۾YB0szb7C WN0!9su{n^OwۘAV/y3i ߽aG.YD q.s(zhr 5"ɮe%A 2K+&Kxֆ rEyulR]|Q@@ҹ1/mJ|`MN ە(%2}*sgK04D2DZxgN $nv-}ww͡X9d` xH-\lgl$\n¹pxoAs" * uLiM":`݈ t= : -lCJ/U#JUߴ3 K ͹=njO8M#YCk=S)3&"VEI M* Fy]T<~jXMoஸk ( 6]5u` kzqnۃ%+U4u<P6Zrlu $dtL OK_~Ѥ.AZG[_ S~Vu H4o[yi;@ 6LY2n?l\n,} }_g,ⳭtZKPaI`8pI99Ba H*5Z0b_!]1`W}2d-Ý ԏGCI_[ţM* /:0}iK\U$;?DRjA w %"EOӰz96U ŪX\? b>y %qG1lYtꄬmy戶%eZ~l[1f4M7)c+ iIa7#;vA4*`tXux왤hϝwᵤKA*oj1&]Zſ͸5/DŽK-hJRd$M}Qk}*h9as7|]K|R멡SQ $0cvBa,,TEݐj>z 02(Pu'^+FD7NiʲN[w#aa5B+I4̏*%ՙibWdƏbA v)^۟ cXLHWb&gVַ?iD&>(mt%ׁ}e k]/ 5;EzV[Ȓn **p+Q < -I2 7ja~:h^gc%ZG灁y'Ϲf$ڵ֜<|;c4BXGIM`B/aCʓNOIƙvaUܭJsGy2Dy!ˢEzx>)df KR:mn8e}MI#៬o(ɖ3ÀWx|`swhT]HInIEQC6tX$䩦?,K/L#}e*|U#yգO1+9P]- %/PZMmRM, @-E Iw)gfZM;c8nO B |G9-H%2WdˎMpϙ A|V.,= 88+9nJZ :|Q{K="_6Аz zZK֎)!Sr'EcZ!QQ 6 t^>Ra/}t.~eJ>~".|{?f2n}ΜӾh7Dfߴwn{YYu]7^ eC1Ѐ<$W؟q5a0q-n%?n:MiϹ2!e~6}{# $HV`7ʮ^}^" f?p+;1,xO: $כ_, %?H~|8L4n 79;g6#3.,&XZ!,@#v00.J=:2|m%~ac? ֵ {ԏ Vj+^͐6Aһ%h0E~[ptՊJbJm*#0.J`"N9a}>+&1nhLzEG~Zͮ%;h'=P-k̗킥">ckUS{3$Bpﰄ"=b|K~gȸ1Gƪi7%S(o '˅a"h#դZ7$QJ0M h{`Pæy+uE>b;]}h3*O`a[=<3cSoTꉗp'ʨ4JhO4A-i B0 O Js?L?w !1|Po72\'6ə*?rZƄz[1fu'~7r@s j``/_sv+KɼˀCqRAD5gxnoZ#hyK=6u`4eD}h lX2:c#crZ)TGx檺G CbWБÇï~3hJ1afa:k@SdӷGӞ ub.Ъ@x(i5ThB>`or17e KggC oO&$.,gQ`-F6I;En Do;].@ eiU2m/IuB^2e-,)RQÓ` `?}Dn帨 bjGO\ucsoAhl3.[[Jg1 {À!C%Nh2E]A }5!l3dI߃ڡ-kN1a۽{:ҡ&|t7P+J!OK6 |ՀU_ʅ.)&i^R ]4ĥH" 1aJD8y&7}S Pzflb&&@ HY'd8B?S=;[cmimR2=D z,_nz\h5B;n>9P]od2<[_`#/[C9p$fqK-5@f@grz̥D\@sDs'ikIZ燊 ~i7C^L^"VGJOH؈dq !rLBp!<>QioghYSY EFOS IzdB Igԓ_5 z=p2^]Ftt&12&e aA01 -dFv&G8/$*K\ِ6`5Db;_'3k' sVrI pT#o=1Ts[e+tF??$F|i`3ݚ"'|" Wo;La!|O֠{VDt'lsвHFtbf]IZ|dBA/5]DWj-]t\&Ǡ^Ə{fԿ)&rBa%B`II3kLQSfш_WMO|5iRAt# nP0"?XӨU;4 ڮD6x04(vuG'Ǽ0g@8LR|b ] EhG[5,m]rf/ w wJ%Ō"v~ !V-]s;Hlh6Sj34deLyBl <_'Q4TB:3i?SeJ)4R_[hmæ04lJ"M3$T ~؝xͅ~@20.nkgR4HVհ&~RQ;Q$yt;_ʠQaPc ҖsZ%F`Pۢɚ@[@SӺ/G"[3#Vop1j+`T2\ÚᆵWy;4r-lĪCV0#Vs]f9oK-@@]<%g=^2Q%`0H:krzTy.G 9%nE I鳪^q@BN;߫Vbݾ:MQP#CJw6.@cfGj(;5k Xri r3N.oSNj-VTg/%Bߒ.}%ѽg!C8q*"$i#~@E@ZᖖQU#A"oŀU%Aem#Bm K`W;0t"M!868nZT6'X=`۸CҖP<qQ;Ʋ w&KDמ)**!dI%3ԬR'{5 UatRZ@+ܐ7u=`:H/W䪒;ri^z( @ͤ[T[03/3mdG#IfʆS$\]ϙ1血²ʶ`KG⢅ b1uOpKkߓ<-L= b&10{${Z1y7r{/^هՏYX|0qR3yA 7u4U#o+yaӋ#%x7 9׷^tJ8cb߹@,QȯxZv- ,;sjCRn ڜ<̰"Jv7??jS_uA>vsNl醵-/"2lSōr#-%QqummV-m6|Nm(YpChE 'X/|z)Ѣ1(\gfEUs]/mUJF%d:ס2[0U:E4%ҡKQ36Sst#t;ӑ;:Dz:әm^ϒ?Xd.+甴\f#0>Vn)y?dcN?ʿO '$%GI ?d5,ΧjC:B>]N13wTA(/iE~ $uf?, V.{##E%sY続5% |m(g΍y{J64/,ʅ[7jo>kx'/K (ta.{V!"GW0l m*p E8%/(,i،J:av '?:0ܬ+lWphA{w{Nԡ2 ~6Z_4ӹ۳V±%b)!CwbDr -TYx7[<$j7Ɉ,Dp6ln=Bx3ăFNBNT닀4Ch}0x; Ao(AR]eoﱴSi>#-% ;~HorP3=ؙ}S9V6TA7E?=mz ^dѥ[T+=F~2;*=ҥPɻ9Թ[Mj4f'vFA۾6}fih ALY8IE]>LosqԌ +s}k+:hݕ0cp q& (̎n@WBa=Հo5*&o݈uutcSZJ)47Ȫ'*7qTn ᧫}G~V`jEA#T=99lvyi]י]ywmtgмJa-䉹'ݽ(;0<""BԦ<܅_&Qro KlE Uqb8e}E{]#]MH=P2K7iy,Օ*)%I9 |6#w|!hI*F GI(AZ3Rea.-%N ё_J+K:B!{:H=tD 5fU!ORa &2)BQ Z|JZV2\OghZp,ٽ(8&7r63T0A&XtO#'d /i}jQQC;77_$\?$g'QTY_Q)É!m i<+)_`/ȁ47eqX0w#-:iwԀj3ehBy0YE͘g^  ~)K9Y#?W\PCy0bΓPE.z#NFǦ0R srװAwfUw _'ZV 5_PKirۯρ~-Hg9<SWOZz@w7S0Aһ`4.}G1YRa; GXin1lݎC?CS,vDnp3!=VGAd_8(t`D<1xd@sOf3iiob9t-e)!ͅRbmP?v,n Uޮ3EPg1h]21 5\7x{mE g}ln@)Q\YMk(aO/^'z"%Bj2=AFQ :IM C/-]jD#oepoCs0gbQdwl.-uS.e/I9opI&У{n|iהJC$!C O=6be31!eeЭ[MEؕ8P(f(-+lN17Z*=Ee=i[!lBKh̏C+v lrVI:LH4`BtKm'F)e\TTdNbG~HrW: X锣H 5}L_|Ľ ID*_K 7YP"!|j\! b`7g$foȶs.G1HFVeO\,.;} $-!n!xNI,V^3\%͂I H$^WhSJgS[9%?5ʅB;B.g3BS{Z௑EYe=SԱBGtl C5-ҶH,ޭ]/ x,<c$e`_׮wlGekl'+ "nhY@+5f Ľ!KȐO{b=iLp?h^Voy+ePدVUetyСw1O*zQjPq Vis1-W0t<>9#brt˥ P# $^~vźΞDܲRr//rE˪͑G*05,rk6v0=y#d/ϠVH\ [B߾;SmdYٳw"ƒucyJ!,5kI rߨ]<1I,u@#C=ڋ&ԯ2^r 7#9&4d Cr=OS5ߓ;>TQUl$tо 3lO^ &C0Q@wPBzqeRϘp&i$G.wMQMW=սKk!}ߌn)F2y\c\Zǐ5`I@~KH6"m-UP/wBgPsFkV+y<5*_ |/^%fAև#^xHm7:'&Ae{7 p}Ȋ)J:}7{64/va { cRLCk.sԪ9LV 2Z(K w*j_D鲊>܈D>yGGҨ6Q"?{W} ! Nwq'䎲F/zC9Șf}%b!hI%T5Ois<Db )e{f6hWc/B\|-(|]i%J0:rvkŴ,jG{]u-[ k'#- Ea^&¡>\{k>v&Hdg-Lײ-ODS|%3Zvfa&@t/0JlhFȦ+xݡgp8tֿzFq8(-ycL'/rYyՋ9Hn,jK:2Z_/9a؋4WncFh= PpSta{.DWom'z ewvWjP1 ~0k_ڛňAhcQP T@=L>f_ouǢX"Jqy_`d1!u9*SE5+nX`ݸUX =q>nN$)bhۡQ5"]qꂃdM9} \yD< 2ݮh?Wzlk#Un`!D<% S-X`P c®K˥2}o{xο99/tuV8K!"~UreԿj4ޓl;^/ \hU Bhpr~$^ @AdZ[|J\ѶM3-2EЬovƲMqUMw cK`j~D7 QvENH!k@m@!#0MJ&%3hoװ5!,yh%2whd:hWU%  ֱ{*c)t[k• z4SV`28a9o?|]N>U!r΂H|?# _*iIhΣ@v~mqt|K~[(J:w4Gr=J8'Jq+r0"WNp {X 8XL-mmNJVl!5]bb砿 OίQʘVw#PY"3r3|Y^M`I:6`z]*y/!PGmX_җ:Κ>KF:y$iXD6:DCr٩vfo\[RZoob ]wrR,9ZJ=0%8#`)էEkFoNFY' #F(J—&(x?v-}rŤ;GȟjԕYTiz@RQ><gR.)|q5>>:W+^t^Yxoњ Ó-t0 vXvIv2Э3=( p{o[ پr2oMnV'Ѩ8D% .d k@ /G,^<2lJrjQd&mt GN*B Sڛ\-g"CI#ڔQg?@!C * S܋N狄O#Z9E @,dFr Y὎\8z/TG:^S ?DPKS#P٦`W%^L a4VHE4:FR;bpp!Stk{z Oe%y~mUQpi: 8j<&{"MƸIjvǨCZdƄ!*@SX! ΃_w]vӕ}:jNGk8z/M8ʨς9XۅWE4%Y(Iw&xASSҠq)bj,DZeY֠V b΃. nT\Pܡ3z*Ed~v"j8L PfLO+n*@G-G]D㶉M=6}ԳtWw%>6iN*m3Ojqt.[-)?nkZۂR+2sI Sħ`AfS?srS>lŠ,ͤ#5n>#fZnhdI8wQSY؆0L MgJcřɐcŪ JP]HFL|r@"km2EH!׉HyIEl+GyubXdlgfxuYC(@%%P 2&]LqFy-]yz3|Zb`$h&knnj0d7Ѕ70vq%ޠ JtphzݥffvL2gkfEHaǸ&vZ m /77+IsOSe($鴤#~f^r7Y  v\Yjzoq#Bg?:mf$MBp> Q Dyz9’XQ^zwə1Cpz-. *k-tqa&3cxhv0[P &e(&wݛaFZc}-4K>&o\yl M⢨k{En7zbDqjr`os_5k%# rS:GnO!u؇gNF-2;c?Q8IVfŝ%al\,m ݳڊA ɮfbjڳt{Z$G9Y urnw﶐ 3 CzPSEG7=Jnխ\iqS6&Ts$ƘX'oEH02[cŜN#Gɟ]o!3&fPQv Z^XڃaPvs!{$ DhO%n4бP/p|F?).ysLsR򛱈nk+Ae=9jvE, nzxi5>qݟ3*L.nJX5'[;WoF" *~' 8?5JXϻ1PkBU/EQ;AtKe~ e0EDO+ [k8{k ?,jǽuܣn䱧6g#{:z-a9&h\#b}XrǐJ!N}ڠ9ȄxuV[\7}G?llsL.OEm)xZAj#8cyzQ^a2" $kҏw{e%cC$MQg_ #DACh:{#KߜbL,_+Web>B)xPa;Q>~(y_+|{V3AI3bf_T=Æ0&[%bdm!-H1p! O3mCc-2&β tecTxwt&aLcFX:?Eꥒⅼٕr @R^[G *#ƴIօ̈S"TUh\O*JPTɑۓ6y_SLF}!BroPi &D] K⹼ZxdcXac|1R1 [xSC*C<'h{r* S0 _kQvo:a-`+lzeLG}kZV}W%|+ʂ5a+jml%yBþUjb-n1_&ld)(܄Or4_4 U#u8Kp> bSc k/\;,r="ǰBH); )K?=EWC2j-Ɖ^0[ϱM7(c)45Qs+oEslv_'yV7ZIu R'(/mO |l!ruT2Ϗ,̒Yf&{93M^I]>jvfeddsyrE]yF. ˌ@x[lBzBtgr:nLAWL0-1xb $' CeֲF +KB=8s- c)'4B׿c}2:WZx_H`ˇ⢮xdE2MsX)UdXK2 p8Zsq3M>k4e|@+7ڸ\=Ru*W(br fUHzzWՕ2HөrTWe;L^v/%B;ߒ(ݴ3 ѷ:ZAphQm4解fM!Å z-*&$LnY(Nɨ;0Fƴ׀㩳 8n,3gNM#nnXui$/>x}k'ky4dJtUˊqj3S9x dӱHCGKݩ\J/\pϔ2`s cQ:uֿ`gS ҭhX!cCnGlw$[* bT|D IK?zI /&tHäw Aa0>(9 $HƩξ=Tԓۧ3j"A[Sw(BR,0:Q &t'E0Z11׿~ǴXC)~%XB آ= 热@ͭ F%u9nZLd81sTc2J„K7WjS m ѭ?}Xr/Ic+GB3~e20͹ ; ~Yk@*r^O˚wP~ӴG'8,eTQ?'DJ])_5Rh\+ s[4b186GD?iQ|y̓]9 Oa<&CXmꊫpWFk02ZL+ iYZq`zu p-!ҨcVVĎ,Zb^[gwxVM;3& `"<91ފ"c5?z?f(g?,k0-Ɠ#1G)E???kۅkp uE)W3~`#WV~`[3߸f!Qa8YP]A )tOU(TbTؔ")$OQTSėG;L+ i}.@īT3 M,SWVŬ1TOi!:y+QA?5(s,Ъ/yvckÇlG pX|7jeU;gUϠ Dɤ7&nWݣag 4:Q{?c4eM٣Ʉմ7iVga+19"Ɗgu:@ꌻ?dFM`TV&>0Mz:EZeʃ*&nK1^:&!wRv,CKFi ߤ #vjzp{C'.*U (s6:#A*wcK0ARFGpM5(ghM8X7k~q%3|̇>*v{%Pt8ǚdjz@wH<&ty˓Ӈ͹I*q_2%8,YLnB14 (wWe9NG1|6ϟ,eÅ}ODI˫(3 b o._G[Օ}FyJksj<-HhrUpCz%R a~F6cPU#f>gy!['h%QIyLrJ~xf&$mɡ?@[k-. 2wT(=?P1pr3{?U~`]HznWj[`n$,\I,V!ϹӡY.oGE:^)5%;FI m:r~a{2AxDŽkH!Ddc ߉ifOӠZ+(+'U&\x8R{S~l]z9HOXvsAB Q(>/m 49IDܢ<>&0NzNѡ-ATї%q}9X)v:^ E!t2>2>1XWH>52. ;ڶcκDѸlAK:6CGMXϙ%h%wTGnѕvyӒ%ͫ3-ӧceŮ0C\*.&Kcud"{׿D&w(}rqp?.z} ߌ-HrfK" D]v) @'j;DLszbM( &`RiY*+8Swm |$'vr u[^4xĔ(Gff~XX.P^ У$/^/ {: kT?7"vOe~'B 0WOCދ 2x SvxSi ]c5YfJ};+ @*Rw0 avg{o8ՠ5:G̓ڽJO,NeTּNZ5 z!ѷ Ԛ4>KYL>ծ4kue U0d]T#T`pF͛PK3@ u(w ? ):PXBnlɐ"gFWM^m(y6z,cw)&FnlUX|2Ft$ :/ #ld=bBx7Twaz@׻u'zhOL|Я~%vXXl'l4^lU1m̄F>YD設ڙcYh:> 5k$/ϟ:@~­܈ s0^Fr!կ8Q@d/ TTf 9 U*V( bU(*)6])#Y}H@ @@0Ǥt/軗2x"U֜:=}ۃBtD<71X>ǹBe0~ݢ)΃jÑ#"u9 ]AbYT)*(NȒ١`ubA삫ERVL $hH~ XzgɺT2vo(RqWh I ͂)F0 :T8aF@Pr#bQ;]hTf0`A4w!ݯzh(1C zoE cDŽ&PzV}=g@ؽy¯7fՋBH Ĭd/8ÂW˄P^…2qgYƾHAx|[gK$GBh%IX2.uvJU -vni4$C6B`g]VfR[kw$ Rp5q(OF^}h{2[ ,#RnٙKAqT1+OM+5 ?'EӍ,=է.PzJ47jw4ĦJJKlM.iP<8!y; hKtNGZ~'KY-Z9lCj?jU14o8dNGcd zMLjUn缲v|kA|-3ڡ0;# d! F?䝶eF4a}Һ k#gBL|Kay"VO)}œkT;ʾ/,`&YZ͟yfag[d;gO/8.Q/2Ts[d1 #SD[𦱈/ >(uƔ~w#@N U|s8 NX&癮OYHOcV) J M&WbC1EAT.>tY#cʦ+J'6ޞw~1ώz H|>WPh:Շ ME}ЋNqZƶOZa ^rca&肚 H}5# |)Ƞ:t 1oWZNA ܙZSd JM?Vwc-M;f2^\ĒȾ'_ F~@r̓N;x8z + ,(3cnZɐlH浡lwڋY6Jۊl-N5 5Q8cy6KrxV#͝dɨ]MlȂ~Y6%{Z .䏔oc̜QC_Fsx)-(B`Rv=)b}מnݣog-ݷ-Z5HX"bGUf祼 $49 ~fCc  /յ":ۛ11*>T܋ǝ஧qѿbvqh:<-}DjÖg&Xl7^llt07#}gG" VO8E\R~V6ȫax5r]} )`LZڣ>9[?>P&^k7Ltrǣ]U$' %5w>'W:}6A#PrLnj0Ls@9C?'3G"f*ʀ+ň耡P[(ߋC{Rޠ BVɱ6veYu7(w_I6\jGubΩ4Nk G>' C=Uyf8Wy?S$Qy*AL~XE?hh'NHk'm]BG K/*ݨ3TjlTcd!qK[OPj!37#6ii\AhbgX5Z>n/v61F ?rpcyyw?%jJ!4σ[5]i;ːxU ~9wdnܬZP y`'>7* 5^ʘ{'e~Ƞtqv*6>uQXDRh2›g"~4I%r[-gd^{p\HђD{=j7A?y{AZhJ?,ND7z8TtM>hGA{#] X]M!N~# |mVGHÅx$1] h67! ‡R6?Nure;ƕBU*3#g -sԶ6Ynr$Bx_|1;}u4wAژ Epe(:ZU\Fh0C_T )>Ln Y{Tc#͹0!39|mNMS?Wp }yZtf&DD4Q( ZuEv5Lc+Ҙt3§-CK[:gcx҅AX}ckttDhN ѳ7)iYуq-s7c01țUJa~ ^83;=G.C g|zkndaAYvnB=SQ#L~_< =nP"E.kRw͕):X|/6*,J_K>Za?5ڬ`+!}%IZ+}xܧHZ6r{9D1e6$WTi%5G}#%9C݂vqPgUݷYN6c 헗_*v}jHRPc!1yE\P./, &Zs kCK9H[ |r[H8-\>dG^ 6ESASh9*{N}SmS;'N2 "td'%Fzuܔ'C~nj&Еe(uR _@ؠp: _7Ƹh16 x$c'RHv!jY{죿ܜM4/߳/+xhoJ0n dxTB/1ʟzGǁ9G$訸UהYLq' NOF d/@lv$5@J %Ñ ɓVL.r4\;'Mnɑ#hX7kN:RdV=_ZLuzf-ᶔ[ /@3 T&s:Ę|ΪQ3>鐯b?M56H.~DC"3/ FeruC/EOxKc$LzWw8` rjO 7BѺ`PqYx2<ԓ 1yx+˺TY {t5ymu%cIC@ƞv3"f hnj@phZL'F\t79ir10gpLhlW®Bze0`dBPb}GUnvq5clQýƻ͕b;F[.v_xLMR)Π|t` m "K7F@QK5M(rfz)ד_F!XđZ}𝖟s9{!:+1vE]EUi{9?`U*kmL74KRNO^*_cK9 B2H\8X2҂U!m]EJH#UC$dWf5u >g.o9(DG )迻ωŊ h,\Bۑ,{!~hH.Klc2Zqjx0Nbm|i@RWZvpiC_CHD[,h"]*2 LTo0A}n*5'y6 SdQ2h;%A&8HuC9tbqS$Ь2^Ws5DOM/۾{c2L'd~Z2G뮦%}>ImZ_ CxM2_T'-⎘' ĹC"a*"!Zch*Pۮ 9U.S-,4WO&9=OV×L!هv B|Ͽ;4[Qr6$Kה5^+S=EXB@*NVU$ߩ:n&簴m(R=U&(1Q90Pi\3V9!"MzRz >y%tJ%SD1e~Vko4dl]r4&#bAo礘۪Ν֩,QKȶ8UIئTN]RgY=,{Cchbgņj v2h!+QpĎl`mR@+MIxٹ ՓژC˾)>𛬲3߫KiNYb/[fWĒ}gWY_v5S`^LlLeY2#r=8 G0/kq?> ]i֫Lf0P)RXzwG`s]k5ph[% vɝYHY=j)=)dO dss( K5Fи nf?y@8r2y-]`7#pȅD#ɦX݁}he}קjea6G=QR"V;>:.J6:KD/& 1X,tJ}Ƌ@ MG;HR~7.4FE#Kuj EiwA`^COLd:#yː/?VGO]g@N%ܯeY xee)VV3l2'" ᝬ4W)&ى Y{( jG<˜ 8Rx ~JZCTJ%h]ҲüD+o'񣑒>+)o3= 4xi3 c3lٱL9$n8)x=W@= V%ČT 9bI 3+ٷi"pJ, / ƚR/0z+6xZ%`'i. l[Z3Rr4ZϬ/oN$>{0yan+[B_H (p”Mfi gqEeЮ_UxlhjIbG{G8dɒʹYA wdABt&,5Й?PgT䉇(rn*et/z"d@eX_V9t%XX˜ꞴHNڟN÷,Mӿ7Q^"e XTT5&]POİYd{zFȭPD7IPk?3gMg_lJkUZ}8If;+G6?= c^QZ`w;d&:,ހ|O% e>6*)o#0nM'mS@^ЉJ,SeWI h:=2_M[2lۢ{Mon1j3Z/UYg/t+j8X wStl ܭ#hhn냠p-yAۉ8Ou {QxOC٩S`Kp1X~܎!jʗ~v?:UWNII {bU%rF&.z|ЋG=ه']_.Dk**›}պ[Ƴ>a銡Puh2іZљ#YzGJݵ#FH^"Ekf<`0ḽC;V`B@E Aڷ\.<˿P+Tw%VW .ׯC"'+ Z6k#F7磓2q֑KP.td -@Ј/ Kk6溷H ,/Gn7D9eK7C`r4u^Uim1ҫC7*S_W7գכa66&?DIA`M+56b2;m݅T<({> ?;OQ_]<@hdR}6 &{oZ#w*?c3p*sd2h9Zx9 P'bAjzALk0!vؤC&^G^ړi@K?ymc%Xdf](g.#ɌzG!؄3ؖJH~3! u HG E Rp[%YAK}>z*:K;}`Yjr^rε_7NJufƅii 6*%?]fPc2ٗY% /nbJ)yskVf40ޮsP. ɞQoC2p4ʴٽ푞 Yohj+Xl#C[SCQxNAVs1xn*joCIävSA %&_M0`'?="b?gD ~6!P..e l:[5'R6ΆN&r;Ǥ>/ETRXM&>P롤-Moc5b[ǞYH;#l0]TӨw=W;": xSe~cvMR#k. M&L名d2rs~~S-ÿrm,DGD 4?MO)jw8qVRg dN6YG-D&o&J;1ǣ7Pg~l,6V.^{ Ό+4HNCd\)|4}Oq4{QSBfzBR9v[ז\k,e1 Rl-\<ޛtk=6a v㲸K6b.^4B[Ӝ9**h{5zä3wdm2fn UMQi9ЂԂtc`pE(w10ﱿBiZU-8P!ᮑeU#Ll ݿ_)&{CeD^z "e+ʋz 1| !vh@WZ4V'|1m0|sCELr}eʮl=|δOyQc2 -gUi8C ic΋ wqiQP@>̀@(a%rIYI6ת20[+B ȃ HtVYzGnz}{=(7`dO(%/`uBJhOKT4PV}/X7,l(v(WIқ:*&uaFOKoK5xbKu~ezkְMxBf?9 TGx8]{? =/~$7D+Rm1 r293 pmjæ3n.w7F?>7ݱSCх,C4V³VٷSZڏgXW理O "e@7%Uь>4 =hR`4ͭ" HeBRDaDuGx:MM:;'>Mv \^P@%\ܳRc-]DAh'`̑&=M|F'[5bŒ}d2hs"RTKbBv_1MG5H)ze" ߬au%GBfvW뽓]|+="*1feC|/ZfqCXH\L6x-: Qި͌Vy;EHm'1NhzӚuj!Tȉiovy}\2j@Ek߄.j7i*װa7(ORG埈ɱ,B|-nιCdjnr6w\5L#rQCGϧ-i ,/i:1he]× 끘co_B<-NRJltoFξ/O}qe "DR0“3JpP#ba\'?nfYͰ1!嬳4kȞp tXeӏ˪5)%ߑh,U\i%' BGoUaSbSAzN;{!Xg"%4 rI6t/ܓ 3 V5U?xb)o {qd@X%J>'̆e( \o} 3>!vL z-Hs4wV8/f'yiRa@-*1_;7<_dՌ(/iRMXtMK luH]WmXˑ Uj{p0>Lm@x,<۵Gz]w):D< 9GzJ\צ3<8 e|e%h8*޿ΪHxs6 5UGPxDGK5SǤŠtw421HNZ-U 'k͆q PWpTDWjB(cŜm^)2=댈 ėXç%řǀia7n+ThnaL7: S#Y] Xʜk5ww |R/a/\d茫%#,3E F]"Iut xFANRҤG[%,(pކ` s(ɯ 隢&Xv͊rw{OL1 1.{c*dTei]12:>ԄX8sVM5 JPšënZf4vA 89z<}55Kz~h V?Dcw%0jt#s\0KAQ$Ͱe]K=墠nB I>YKMX#8`Tv`8Lġ5^`D!Fa?Sc!@-+!KieЏ72{FըsI+-OڒV(>OHuU2[ &m^ڷmnS:?RVD ܬ(߰~_'iV'g7Z>J0ЛŽTe_1g8kHB}9*;%"$ _DEX6,F{-o B*-Y{ʺt[ ڤXpu]DoQhnIIެnRC@3coXn3汶csZP)X^o4r6.C*cMqxUqcobr1ƎC]/iPZ%bs'i^0o0"XO6.} ܼv?l$u(Dɸ&%}{N,pI^"GO\M)Rn#!X'=SD]9SOzaxpMfL"iKeuCHiA QYIO.oV9XH<. {Xa4;aݏ.FӢ,B圇7j ,cB/E_Jk) q0x:i s^|P90#cBlA)"oi J,rAunjDNiglGDEHk]L iIb$pP>Ivݝyhl7x*汶|(iN|kerno@lZbe[И6q}f)]\!85Xѥrwq<ʃYHEi70{~rZ,6U6IBbrsPVAH8+kHS%"o bAn&;2|c0ԃX ̤SRi\0 lL?_?T)}8Kh:RőC<$RZiY(F<8 OG'noa! ~{>RbVg:o^#U_nvC;fp11aq|(%Ϟ)׉f.gPqNc*ݡF2b b/t>[8񕳜8G,RkFU]S#F"]+ǽԣ_ZjEZR.|/BP -#O8%+C$G# 9Хi+UڢϩuS~u@ ev[QgK-rXrlF«nO]IGPlroNCa,n-` EFA[-f1AsKN]گv8qQէG](J?]Lͧp5j_wU Rhy{TpF +gh'GV%5. c!fQ>,kh:;ׁeڗ76tlҶqh,;VBvIԽ-ˈ(v]McRw(cF&cU Hq#tov:B+Ǻ4Dcm &KyA7eh ɘх#۬V lYWق[L45z00lD{,Uٵ+v#wa3Y2[NӠD:dR6] Ln@v'Bs)61CN!~ryϟf9l"cdn YÙ3zPvӃdTݵ#e!bI$8Yq`=aw Η?ƻpOÎ%+C>٧@iN/MLw;8(1&h]-#>)2XT47@10cýd{Ijֽt8Q|ꔃ8di| iɳn2DH:ӡjn+AO.Hb^M`\ۣ>o!3.!5kFɱ1[LF.̟gDZ쪺z#egE\&?F芆F(Uq$m|o.Gx-݃F 2(xf8ARC~T'34 ':]JR9sˁ| ?0_X8dhIО8$Ǒyla0Bd?Qu] ]CIUWiGG f9[cEÑݦMg-dYJ#:͘JA!bUT) t- aT5C=olJYfmhl gb'_L}]76L$EjpU.Pv'ʣ'X5d]7D:InYcMZ``)OD5EI~'A>E, $!a28մ p.x -um7 ܛ|KzA2%6+ч\9:SO]ם +,-6ƼʜpNzE".B>Q!~<2deSatcXp>NCH>+CYɗexj(aqte`Tn +3I% DHڢFg~ MYh(J>zn&t/Ű JJ*Jhvl\w(CBXK]@$X9Wm~8qiIe߫9ī%8 γ>65#nUeHZ+eA7QMr4ͱ^ik7| Lɠ j uFӓ(R3{9{NU@)u_dׇَKXՆC 8ty6V-ܰ>Zыg8Q$u@@('؂M<&L_ ݿK{}"i2Bܱ iuB1+u\ЕƳwy}xf:Y~8 i]jzZv罜)U,mQH"$[;# _%ZeAc]>ImFȇ+rD jqZ/.\ ?Q69"?btk@{DpV$J$QȺM9}۷FD07ohs!>)W']ӥ3h+3cgX+gMkaÖ#Iݫۘ=wp"^n3Z RO] I ۲0&THy_Egm Pl^/20̜(ziDӫe7OK)ǧ\KB {RQ_ :QaIEzi6ڽq,xdXR 9SPZ[;YopsJ\{ǻ^\kXnA[dk]o`Cs|LEdML"48)uMqQQt\ES)ՐOB eZ~ѵ-I>| OXt< pp|spSs8lV{Wy.n[2쒈|Yv`^x*d(%Z>503(DS&2>|lǢ9W>> c.4\NBVe܆ѻ6ǁw}&U<ϱbaKޅU<` rnTV#X;CgP_!GcOnV -aAZ@,z *Q9kկ\@KZOr 3X3M_f ۑ FH]^Q&p63QA0 W{ r(% FƞD{-P㝒畳 ǜԥWWwLAO}et[|-d0*U 1:PsS?ҳb s!2 r5'9Þd((LSZ`a)^U-!s9hoQc~JॕUJtid7N˯gR_MCLހSTy蔍(^G$fz9]WoPA׵/'$8}?6_%El#l쯓w̪Vcv@@Bƺ47WWCEɛC$[Vg]|4Fcf_G|;2}Xc#>zYp2p,DWF;s##N-6Wvۆ:$5qaG8$Ú`Ghs3Iœ~t2;)A?Tfj_A`íِA_ߦb ]bA^]Lfzi VYɈ`\l^=kY.W҅EOx?IZ?C%u46׎Kߖ1 |El^W Kۋkor7qZ?=rK(l8Zd:H#OZnH83DugizlلUh|ͥq xjCTN7> t߻-6+kGU JAo[5/_PW8 Bm(U㺑 Co}Li'm{Pg?E]^\ 緵ދQ$R:?`jp4u>Bal ^,>NpУUrL+zCçF}# O;:qK-^*l{z|$O[#*H 4ٙQ'3fɝ|UGqH3K>BD> :xЬ!6𳁌&`4jCZ?M\6;EyҍŜ^oh\NT4^urwuryRtݢvO؆o"7-{z>}{_%W`ďYɍ=!O+\Nim%թ\j&POr5u:J9 V=VxrV{5><0E,Z c=jBrT7<k+do%x),XU$q!Ë׺z>qyZZ(M`{MR0}̭q4$pXIΧUX%Οd 8cn@+fBsq>&ZNg3yΓ䄂9^W2[Yi,$ky&eD4~eʃ8V!qeKTMi;1n2ΐ5QBkZԫ+6gXqk\Sխ5驃$5˂WLIQӀeڵ^IMP!D3uL7_RNgjw "^EjvoGI0ːpΦ`h\=$|=e`C.U i"≀m)iZ;'R`}`]c3s$?oBEeոqɯKg2!M}BnjxE^UÌ  {kQ:;ᾒ*g ]H>$῀PƂut~Dq}Cd6i#:#7߶c(mPFdB1M/3[=Z 88 NFu+bֿA|n׀5Z9bLop6zFM%xuON5ם*Q\  }S|햽 y16(֢u|/":=M*Aaڴ2"8"#bb^UKre[}/t$됪ӎ:Ϭ3@Qi1 =_.̴NM1\\*V{TVM19ݺiys iHo lZ$g`-{hK=]fBǡK]&'; 1ޡXwUNB 0q:j ފ6 sw՘IЭV!tQA? 3tQI= f 硧M1R6 \ F&ҎyY^?U i.qTY#M@\].P'+B0q},p( 6k=i0e.E~4qӧ+KJg'jߕ৳Da!aLt_J# R&MԄWΧc9v-~\!krs`m6]V oPww F,6F͕D8YG#XYTO?Q"u+L+qV{Hյ΃ssFֽV*I(ԙ˒E vuM4Q-vJ@ ק܋.YfR}w-~u ټ2K?LP7gQ`]sY˼o+@;j&y.X4涗+V*Sw{0'.M w<]=-BTЖ}9QHs.$X)lD";Хo\& 0> Ek {1g49k"Z2ox,.76UO1vYD3iT v EN2 4 =6Mu_gF%sˢg2cD+Q _UDx,T4= L7άPqBu&חEIߟpLJ"|]tфhjn.SyG?BܟIe6Jw)1`   ``KonE]7E o&.Sf},sSvБĥoDQ" HR8xi'LC5pfLWM'9I\JmYY_G8èӳ$PVzX5">weNpo{A39jkxxO5Ŋ3ZHU$fyvq;K*AfK;Qn#kb{4f``^tceX=nE{5(m Ŏ+>;M7'y>Qc^=l~0V=LŹLU\qcR&CN-԰'eϋ:ڤ3"`ZxEp*6,}Vj]v[w iyK/qShԜ"pvJjn$w#pRޣ_98ŝhHH3{TRZ@k Y%i]>e㠡bs&A;hi _8ڒR䃻M6e;P橮WRHL!e@> 5.^iʆq;nfq0Xw)ebB8eALByc!wS&ne5_)xMMG Fw+y+5&A-X6?B7q7^5h"D_R$ޣ8Qc:z*8EЄ.oA _"^(?m닋w x-t @R2㽗 ahnިPF QطȏP&$O+!]н`U%+iO Oylj`ɪleU>6mLTɫ ~+4ҸU[~Ÿ#S9䶴&ѽ˻RܭTӫ]>GH3Šw&0GXٓҁи=tB2H͐\O-{:gw SwAtIj(o`_|v0f^.k]UN{ʝRb4E˒Į\ռ)X:x827Hs֏WNbj`Msw2T? ݒǂnXöslkLL곏b,^a(R8?<&h ?m]6yإ~*.GO^\/Xs5IZXOb0&lGDvGG ݐ3X nVE6eXYؠA5VelR b5/90HZrH(w p-}y;],@h?6(fMIP6P~ys󱿉5(%\q )qLx~5 l@c#Srb$hKg+E(1@*FOӘVtFH~D/.j] AV_[!xG` -@WmT{g~"ƸՔ*ݝ`ק\[Rnq,[E<<$m#,>x{7qkh6}YObrF'=LVy2 F]050bc=I,yDTpH짢<80=|(.0L oGooSQ%u'r.^v3iZ'"[@!˕~4sʃlGm6bryDtBĹjQZ5{x^^Aȹ Ϻz wų9Em<-VV"B4X\r0_u !:fIRWX-Ui+yxX};yN&Hp 0zt@Y%!N<+=aK1j?T"ͶlP8xd@MGzLq,֠g Kƅz"Gծ>Lq}ꯁWŋ(PtFDF`?NBDCY aڈ1<x1܎ls;'Zl^iA 5V~@aqD[ċ}Z /y sP]C'̈pFŇ \fCy(bh^-M`-ovU˓͆ɋ$x3JčR)<8cgZ& 7 a3ҚcxVKJӐMnJd[X:f.Tp"u!XXǤH%ŧ"躉2AlipFm|bL ߟ+鄇]-_6_9MMWA6[^EOts}f̘ rN;m[jiFZR^+au^w5?p)L?W@0PVd(Yg _БEVgey1xKB^oi@_+.BtIt!V^w cmڭO|KqWy#@4{ >ɼͳRdO}ų*zO;$:_Q:Yr:|grpht$ˬ5ɅBsI8Cԛv$: I~H7EK#j(ke ~Q@uƩQMvVVAvfqųX7f%e/5KdV0NlIh|yjc09ڮcI6:IVXƷO7iFvз=q|x:Ǖ;xT@Tެ-o*4Ƿ0$eW}9]uzQZ~at#o~YqJ. c&xH\{E[ex\q^n=1m~= 2mt$'|aԱ[[ :צkTm|[25cX)Ea(* :Y1 ?S8.oQLnsnufh$";x><2VٻSEyNfXV݄ȋi2GީBX֫"HՓoq,Tpȱd'M@G!ZqzMh,ڔt4 Z Τ.1L@Zj}\KNϔPQ Eb$(phŦW53pET yZ>hMEKj`SQC#PYn_PSo%қaj.||od?"6db{]]*DH&+;ĥfϵgI0]2a =P]a#Io1߾P9d%lG}!sj0 3:e9]7bTdD(bʆEӡİ)wQ0=,iDZ2bg#c0dg^iA\*(cmHcM2Qg{}V遝0ʼt6鶶>_뙙DJ&[g=\6I&ގ_ضcK, d֋yn2mݍT?4&D{>#\-~6ףSoG\r}!Gxj6tQ/)ULR!%2s=S/zs{dKO,WFV^C+?uvOcyQz@fE7)-{QTu $](49|x-(* 'SGHn2VXI?ȵ9$o%6Azuo~DĈhyD3䛳ėl^~)nX 7VBJ$3/<琟M A8N+efYtsQN5~"ʈ*A Y GYjyUP>G{s}g>4{5]@+K=>oa]|[ Zض` *]-|cxA%ڟ]tt-ZY #27B#"HES;sY^Wfli(M(y5~Ӣm39ă$?ּnmaXxw !pQu0d)fˏtHB%6׌QǎaswPrJIνP"p"^/BMdϚM>ޘDB⩅,r1]j$ЦVCy&(T3‘T6/;?2##YBXxfͭUepf;&`v/FTAFy8" UXΝ]?9 3bay?V&~881n. pζ9ifQq K̓ c,6v<=Px .^=TQ YG)?o֒!gUݴ92>_#6~ړGQq~:9MjQJ3:.?MsD7e|Z6#JM&g7c$Em&<,[Fnkgr}֜?Ǡ) 8MmS`/(E|$퐌.&e[8TI#n2.+X*;Ȕ9y-[V2گؠn4]K 9oI4ɧD MAj MF&/QΊ(\TkBn@{FW@,vtFm!Q!]8@{W#9ޏaVV=iLa(& @"Ođ7mru 3鐍{Ӟ\!D&}ðl8[ \dib/@%,c 8D)^nğ nǮi;yhCA d/enmħ7LJ&CY˿8cc[$s3;2;f.; ՜sc?rD=0f"(s IS۽19 !T$uj_8j9ET ;'ty Lwin} npv9oNNU ϒɮh/Xh3$z*JկtqA:0J|'qxe8iM\!x@17deXLW9ݣO@aapэv{fJ B_1i~`(X0q㣨u+;RfԦ>w s$Mcٴu$??U2MpN_)U1No}O_kZkUEȡΉr b!m`57j0HˎtVFa HU0!b+/ʞ9ݬv :Eڂ꜑T Mk&<O'1G=ֆpr-p8M@e8Ε5iZXï7qJѻ,_Dyx=c&X%>ߗtp 0цb:@]^ FQ"O751?lBl?`i}ZW ¡4sc_Z0 qܰa$t=o Q|%$Yו sGML}:|If4RHlw gS 딖kL5pm5Ȏp/]k]2l _}k7 ;p i 0W}rsgWfj'}c@2PPTds!tY'Cޘ>]ĸ :q \5[jYK¥oPn|oOVYکbtzU$7E>V!T</C_ bvB ѿ xh#"5U_m՜7|ڐ#]`:$ };u*AߊꭰxNZq<"}׭?-=}*߅$1 UuTxv0bY TR{!0uG8+%%z{n֤DⰻONn" J\ZюE(>;Vr/A^+(~A] ^A Z:zm0hMW>-|pEϭ̥+kU_9x#oq͍ށʴ䜴e-4q}2P2'K&vM]E| ږ9zSߠ*Lz)(+f˯{0hƤ-Rr14› urۤ80EiR bNXuK!\hjZ媃I>=7w"ZQ>`jEDZ؂j`^L,M}xa9(x5>FxR);JlKW{)a8njjpm)B-FRznS~2DJ,^)yr20>c@!ƒ/MmktIo%O84S-A.>Ɏ[hm DFir .AH+Z;߮ 'U=N!0lz6,5GxL.N]I iŌvl%VGQY"u˜>.3.SA4{BweU7Vۉ.fg|y(]f!li~t<5 dPALYS=#{~Xߠa-bO=Ž)ZX]0NT璒ᕁK+$ڮ:iE_;@~<#Eꨢ7BI-/5v.DD[*5(Bi;k/ꈶbc:K?*]3lm/cGG0?0b\-gY;~3MN>HM7)b/j&yާ]WZDcL=TxКsV/݀t|),-i _9 e;p MJ#ih"Q$ToWB t[t4I?m'UV3Ws@P.f9.QnEߋ5 ζwrL?07`BNŽ,3;AxtJ5"4a2\(8+쑢5ɞ6\huJJ )u퐓93kc9iclyI0+=z= ^i{A7]רݼ01/`?R_ (6#*|l&fhzpUdP4“%A >k ]'KL6N aˡ4,ERmO& lyt he0QדJ= CwֿL@a$'5*=Fv4)\`P -kN 3gLn4YҶtyqZ fR]ȽÕ~*_Y Ycbń q!icI\Vѐr߰?lR<; uR 񨴇= okPM<= ]wB?MC CX͖>*妃:GFyUmWQxrU#{FNXOP8I6VwKgP6J")~buNf%DLq-nxMsX½ ۇZk~Ǥ$K`縝@k&ZͥB{MZ ~ :Y )\H | B땤RDQGGX ~Ƚʵ[d\0Y)V& Ҋ9i[4$UrvWfVXV9ex \ 9 GG&mVmߖ}x%0|ʮvϪ^yNh[ ]i%|T [}$yzPڑf+FIrvgn$f0hǙRL9I)*(VYG,&/&:f$Z`YG ;c L^)>A|zTqsrծ?vvm/ pO>ۃF.ªE6NR «yh(wڪLdF_,87_?uġYz+Ebp8Xq%FsdWq5`tԫ ۏ 4N\ឋ% \Zg122 t:̀…D"|:DZ#ΤIP֥حmUH7*rm/J9Y(ȣ|ƞ@v,Q&yy:=y|GQSZi&xT0(<  *1'PmwF\#Xx=7C-/ygfQBw!ܼ ճÓ8kV䨫0GǮ?PYd )~ߊ~yX:{o!7rWF510LjIO)3a ;p~ rjB̫rPH,r0"!&rrxhĩf AkhmK_/V;dsc9A6Gi 81z;}k頃ٶB1W`>ԩU0ͨ;x.̬Q]->2(@ `skTy#-> 6m"+w/\8ݺ!V?) SJI"CVlW;DU$ϔ00xZBXHF\.ر`U'\u(z2H@0v>EhH쎧nUj3TB0γ˞~Lu7,s^q[]c ]f?ω.Odyg Ȼ&u1em9b=*ɞfdbٝ<ڛ/:BBYAw=\ ~}AЩ '7[<1i>L4.It_}+M:iw-PiZ *}5RM>qAܷE%Kk/-`uy%tn!,na)m2&Piekء/ˑg`~ )dĀ'AZXzH~. 1. ? DGj3EMs-3}J@ؼ[ڟQ ז @;"OYoF\jo)7ѻߋ" vzG{д(<-aD1)0L9sm#8*g؃󃔷;ף7NwR}AnQ35(H:mQ3x0؏H\הtIQ'gߺr1̥%/ OG/cUֻVl#T1΍ wWdbZ^$*F!#O,̫K4v c;-M8 Ӹhy\릚ϋk/z|ŝGMQiJ/2Uo' T)Șl~tKkF-"ҡF>:\ӏeꆮgy E{ӡ8Tqz5c5|n!n Y<#&Wƨؗ륀 &gۚ"wd/`| j|R|y&QmG{ʆY4n.KwNj<]IKX l}~n`(xfm@՞1O̸CSYb 'y6/ߡYG+1@~{G#y>R@zݠWl)< ,Ꞻn:ZŝjgAK6%M$RGd_)`|zwE=}OѽD v ^ʣ|iv*K S&@e;xmuՕV7홽s%6gCM+H^U ŃVً]ɾ6cVWBСB'V}d߇mv{‘PE|kLc;mv'T4T N(1d޵Ūrt }M.(5W#=7+uyg38iK%TGux9^ )lwPTA&1)N\R-juw@Gyxh<)T)զ>/ԏ A4J!K57'Q-0u?v`=ՙRʏp+Y:HWðbʕ1`NS}f3M;r4:ol&͍}3 4$f{@<͸5qB}sŝ[{ڤLF;tE{vӢMBrP ;QOh)> ťb0C*8ȆGXߓ4AZ>5Inom<ֽU0?[ʘ\8)%4e놢scDV~Aib-L1-"5K1c-,7DE2!-crWӇ-g;8k^~Pų`3+ݲ4}ߞ< Ƶ,ǦږGE"5x0`@ ~̌iHΤiNa `1Ǥ.$@.bK - >晑cZQ!=ˍ@#y{X[]}A5ebɹX;İsPri :81T!"[pSe壍h2?+}@^Dݳ'Z" 6#a(D~x,c+v>ʾ2D9dF%YX1Q)h35u8z&AAqNp|z#jf5^e7Ѭ715=&(ipN;sl5y0 ~60Ĭ0'n w #tB1 |rpeu3! ȁQU:d?Tߓc.0)3[Wil~C# $7i1܈f-Cw \ȹdP˅N@N q]z $琉qDgI;N噜a8YK: .8砍xMGˆK[#r?y[.^c| T F尟h㲍cP^95EЭRJ;{Ime185ǣ"~~Z1н0k{t{ [855\[XJzBM_2vz˛ʉحsGT˂H 9,8`Qm (5n[i(p,jqW!_3ķ!4G"M-VV2P `U%#)=4Lo-Scghc,0\fԮ!{*Ec>߇Xո6q˘ɻw;8sQS,^Y&3f]b2>Ki)m5#N"ҝNi \Mrp s!Yѩ4k!L` R163.PJ{v8:ݠr B{s$܁>{Elw<yx}z+r 7qZ]6\Q><=Ϫ-rS`& * 9 _G?-N1w*x; k y33I渔nfqG'|N݈1 c]ƙ 晫a.L>,݆>_4HL %hQc !_9n6"^@+B=+꺶u)5c{/RҖimfZJ\ A*Vq r6.s˵Dﷷ]ȷį-ףeMj~jOs̆B]xOs!EAs}@vcn`]Pbyq>N&bm!W f^|立:M !5ѬEA+8k^F=D)%"vЀC ĈQ2tȸk6>U[ݕʞ:~l}. +|]ҧ~Vf7̤~Y)!ZΨѠkL+r6IS]zg5"Dmcd<qMa ^\i*%ȷ@vtn7/G1Wt~;\qzImj\U :kd;{ \}8X592NCK!צݞht/*\fe@FvpDS񚒈qՄo2lCk{qV B¨mҭK:!,pbZV[.C!$#ㅻGv@LUynsBl(mh_ L(_~%?Ge:lmްu0t7{foa&ɨh"'YNp̲k7I6521%PwlOѕ;-jAC4e9MM-'deC*DsԞ83v@qP ad4ߠ@6t)d|>?MJ*=)ûRi2{ME-B)W4iA-QCIo0JTpp Jw IGb/“á]}T6b͑a:|*,%`EDV\-I'a`s<~Ϻ8Y(%[\J 6n!6Ŋdq,mTڽV,#{2n6-&  nc$~K)C#_N;!-l4g,w=N1G֐\=ĭm"2ًй@[ȭėcQ[Y}<~(p@S\!FE=2|ޱfKKH˺8b=NPeY\2|y^&0JčA滋lXwyXd1_79A>dTzqj5ӭI1hY\2?⌘Txcf;įoja;-6LVvD5+S_oSYĵ>6BsnTyVy9WI(oh-uI,Tul~)[#P xd/N$㗔3=s|=z8C!JEr.7eBHuhƶkA3$טn0s/z}LiomzGZx͖)h96Yɽ MǤSjeT-(;x2r%/B\7-XD9|v` d䅷,&KUs =`nYD Jk@rb=2j" K:!!P98De?u]<*ܪs xFІiNs'@PN#LKp['s"p3s'ϥO v΍ie}Q\'?Ͼl&w6$Q;_!{N},] Rߘe_#PnKZNkx6!M,Lts22}C/.Nj"v]#wߖx7r Py1;0SbMPeݟh ,%"Q7pQc&L\qE,qqRTMdHkopmN7I"W"'+侼 Co|NŤ-e( ^8ė/~I,.#M_r(z:ou!bgz9y1wC+ݛ9F٘\[Tì%{P ;p%Z6k1c$p-2*37PH !Z(;r}G8͗nz}^̀ݦ~S5V!zӣɺцd t$5`(~ImU}bpjyQV`I$a"Ux*2ÈR [:{]\v_ 27"ra0b.OX==Z)x&1Tr/bJY-Kti_q;r q ߚ{{?MgT5{4n"$#&_ܙ{>68>Z&X&Qj\UQR &$V/j(YQAT|Z[Z"!Ԁi`啩I q&̳z(8zyi+JT. ˢo{EE_&kx}RRwzYqHR9ǒܗ<2+fI"`Ja~k*m`w}\&cs"{Eș)rfvk)5 50Dhl^]N12&DqȮo+dO56E\IQw#Zt4,'T6I^& nc^6$Mt2tq`Pfk}f-jl*NL#cvWtcdLL['1((%L CԻ[)-RCOҰ lDPlʔ j# -’5 ckOobk9sL׊ZUxi=>ۻиʭo# wx514D6 F I6#4]gND4na-^HMbtϬ G6@+=RV q%yʽSsƩte+QE Lj|qUsPf3WsՆIO&㣒w-]Ȭ8gXف@:',iXYF=vQ38QlĐA<|J~oI!QwS*B+!euT S*2 N*Ԗ~Nj %øzȉ! 01E}\6[EaopN. Aw%c DW^k>ehz^L]ɂ/-x XzѯnI`ꢎA_(Z?瞇TqI|;JI2کϔk 3nVT=,~~]MzV;-:ߩw5u HkE aThig@F?qEZs':e%:i(Ձ&!gYx[snM6L;seZ KLqb0A2E};#\J+eˆ>U.>0p5ΜGD6 ?e4@1bQZMn>NqHEC(Q QT'3‡$Wc^h\ov?"4B+"ؘl8D҄s|(@<0B@ߟYSYSUchuTp=} ZXP"QX>=H>wz%i ;MV<Ĉ-Ӕ޶ nn_<CP*MW]~Ň3kQŀsƇYn}=܅i*a> ?7P3(Υ>+#qc艅`3!` |ph8bƸ ϙp K wPK-G4jffy)`zRΙ̣Bybr4we\ wnG[?A9UĂ_p` *ij)<>Ѻ|Owf 27UWa*ڃ{U|NġBp@.Lrhݛ=~f&{k8L8F֪; O Jib;Ԍ2C5; k{i6.BҟGZMA)x1xl @Ɋ (tAMOu +c'Tju[=pIP#X's Sq,fL΁18`'(h+tHDͨ*b=sⓠAAז RIj6cb]lt$F!ГIQBFr5;I"JZ~|=N3u$6:Mf!|FP9-h}y{oeco|@پ!o 6Gz}PϓF]gx%%@fLQF}j^)A,Bu39Ea ZMHC,!%3ʭTbOwՖFۚZRhN9}TNYck3V+#)N vy0D`B! rPI7[]4H^}0LuáBSRL,^|SKC@Y2 ߱Q8.d+d4)HD$AD-: gG""jAQ 7ch{VFW$.5ۼǵ>N D;CY (ƌȵ:Mdfm'Fb>2l=G{67̔S$3<*4t5+DWBLb8  p嵙\4PԴň]%7u~0TvO&Z2NGVGJ5KWhYY&PhF#+q{װG`Ҋ/FD|)eP$Ud$$dlL2}Lq7[uy',C#[nR5.g.7bssyXcYuaݔA7ARuׇ\S)8Єo$vLx9KXԇJj'B棓 ?ҵ\ZGAJ_Aa΁Ş>is0w]o*|6I- =@EHzʚl@ME_[ H˳&C@h(D໚;,YN+`( z<8#k ڼV&Ϩj9x'כ@{IPBŪ~(nnGms[/XOrmrTDИ_3ѯ%8'kƹAK"wCʁ%* }ABMRUh Ŝ\ƅj %p;q.V4tWI*AβT_ r'ttO`ya:QQuzkvb6 SmJJ Ī_ -gU궗uH?0J*FPl"^ ʥQ3p>)؀49bQ/ ,] s {`ZZM~$3 Ǩ<7_Zc R zI*Z7oAU#v2[fEH8 0zس<ЬT-~*(/tc)$AE!1RF_*_qRg=C=RCɻ6i*˳ӀqwmS`G76 %=XPG`6.8Y;%bPZ6Ʒ]UDȴK;P==*⹨rzcƶdw. i! ۲| Qi3:0Pщ&mH{:3,BɡxR)M6 ۆ>$3>ase")dk&P qS:ȉ#~~W7k[U~q\Qd|7jv8z}3?boxMr+%,䞙'tH;F[iߊ򦵀\Xߠq99G=8@ ._*pA~ִVIBiOCu,Afdyf0ڬ>7S{o-qе4d!wt#'x)}RNņx|ޠ91 ӣ}ej|C{Ln%(]G2$gWBZT> 1?SD'S^xDlְ's?- \~xЀHWݪ ]e7qEeq‡逨'7@=n7+!)6=#TŽ\){I ZQheԞ4xO ]䭅!fHWp鐄C5Ho:R|!BfMuT]-N4xh!i$e¡#^bޔ]-dr5t@'JǑ eqHI #:(ÈF'Wac5boAm;jMmQĈn <qaOfqkEˍdp.s9c;udV,'zM̭zgA\X4Q>Ǫ**g4Qk{PܲWZZdxRO+h8UZlIAюį $$GE6dkAwAcjhfi Yz8;Ȗ}zvVNaƖ1%W߾4ԭj2y ?ZIpPgkBBd'6HWc4MY¨*zQ.,0Ptx`CS`E%}F{t{fG@MZluA29 ⳿E %J819,KA؀pBrk#Md,r "C#W,o%|wkHi)S+&г)$;pl\ԨZZߜ23e< UӍB[H m_;V*wXgXY(OE3F1'6yK!G`g!6}š?42ʞޞH OU&S_!dY,&Rvc\zx t.46XS㙄=ȱ ўHslkؗ7rͽ}pF]>|&/ۢ淼gS$;R!rH T hbّS]Vbr Ҏ!=܋^q~I_a*)&tjjHVq`KLYXL11Pũ{?ܣX-Fdn 0.-b$~O9p4e0ٌ񶲾lN%d@ 1i$=YG{o&>$p/"Jlm2'UVE_x{_ť[1yRvB5VWa8Oj>F3YA`߅|K*Y 'BR{>Lm{# ̝hU5) 2.%3 WhF#exUEk:_Ri,v!#˱ڌ<Z\ ]!DCX>8-~W_'muq a){uIĝS:MbOྻt*#.A>[.uѬ岽w.;(g<;5gisDRʊl'`/1b9, %FkCtQM=M$n}}{L֫&9XǗd]Qu,!\.F- vGExvaRL o%,H;RG5*DxQ; Uch0{:-L7Z M{Wuib) 9r@yu{'eN;c*;4K'D0?ס0H+׽i#fOHUGcHSz]SEEzF?2ߓS#2tmPe'/biϝRse4reïhw2<^&nI]'PxÍL. ^,+ZjG]znP;' uYѭ@Ɩ^UAxQ̱x8|VqULh80MKIv2x5ZV]iKqnq9Pշd#ԥ$@gg}zg]{a{\c{R%DhgcrI1V*b"ྋXR?Epn$ALM9/@3B]!4z3E[@fRrHN 2 QjS?4Հ|CX\<^!ڎy@}cqn0;tްTPcd ),ISNީV|S ;?eP(A>: X116&w(.6QG݆MU`[< 3U1wҽ1M.z}sKUTqg ?j. c3uqqg ym?w 2 ֹ:_XK3ʦ&#ݔ4`,ʱ. M +5 Sj U0De#UQCZL0sg DY$"rq;sv|K "gӳTh]׌?e-[ iksNG&5ZLvӋ={jw$CtNM;j룀-Rkq*0}-6g;gUR9i8*t3#̖N_I%C{IQ|::k}N|"%Hen&5}'"vUI69!<7^ύRl9XJHܷԉH,fPb@L+TFng(<>4;1vV/oYb`*'|XNvqtT;ws<ȟH#]-7#??)<ù]O&Yk=Rf'sKn:[*@zꩿa%_qf@(jV'EmӔ&{P;O(qclJL8ÞD@PO=*~@?Mf4G]ax>MQ8*l(JDr H/,>!k |dv0<;&,t%vLT%1o7SC̴W5q$pz5Sǡsh-ϠF\0 NJ:Jj8M&MlL_PgkEqi}@88n]{a _Vs Mz2D~6ΣY7+V\Z\jlޏm-5Yu{Uk!%2h;v r% P2GEnSBFv ˖ 佲JpN'Ekx/@mnȁD^7εiOU'7v{L=cfȮuЂr|+˯&UR~#v>B;&}xIr{ B7Ɋު]t-! P!yBqXlͭТS68Kv+Z)ߊoW!R`k.YI)-:o1W<|6}]f-p<Ұar_n?P6-y@8ZLҗs_Y'x& =C'Ƽ|<>p&,\n<@ q[i˴VAGh gj՛DpsqD\!*{$?-$ ru ec$'3 _csB0Ԙ+ۇD+"Y/.]嚇3ᪧw]4H_ԚBf&V'<6+#%~΁<'* Doi%gh#X{>mϘ ,˜.CRxXݺc=dq}iE%bU 8O%MYŝ:P1NX"qs&|q'-1:LYtXIx Q՜%Ў%}ZGd9 wHfQ_$ϔmW$|M)5xgћ\אV-8_ЬX`C>r^+¼ak .6 }*2w Y5\eaaեIi}xju'OKjwtD߷L-VЭ֜|˼n6v;xB*@ukaPmzs+!]TΨ0sV㩨v|a5kDxYo~..3f9ꕗr+d|"$xQA_5}29^6䅖UG7ǀ(li_a7G$FJo.銙1qOyjS3)2%99~aC=HNTsշKaY pJ(&]z7 /$`Y٦P>.`Xq>s(MO66 xHQ7]NJ6O?UlIn )ύnø5eS P$9͍?x\K4 ҵ`hk=%@V37uzo+pxf. }>0>Tri+&p!6Mڒ`T4x~30Aᾄ3O g('S}lyT 't~SOKj= YUP3ڸTS|,o&׃Hxy/Tcl .ܤYMoe w\e A14W7?y2KlDU.7DFv]0/bۨsI|.7ᘲ'۶,WV *Z3 /zڃ:HƸGթBl-U{fҤecy%a$eVn';."M൸ ;yZum{(-ʱ/CJi9 Y럡Rj+Yjߖ9Yn[.`zqceq eR8ߋ*ٓW>m MX{UHYzd=Ơ(e>FM6ءz;KCylWYo!3! '.ҶHp9xczB܈[ 2F ˉoy/:L>13^z=Kw<5[/ ZI"ƫNf%,VM{ZIyuΖBF.ߡ̵_Į6ץ͌Ӹ݋Vuq󗲒[XF9)oPMֳW"o5sPo BXFSO/N66NLخ(kHm*Ā`NزG7dsK 0B͋[BI*=q 6Җx'@~Kڨp\ӜٴA{ay`ca1eoLD$P`O' 2{e`#;وˌH=> ӮbFuAdΝ㌘Q[T+6\ӝs~\nzUڠSM q;g7_P0貹B8E:֎m2lq[U ]~.W<4~pO(]; fr>XbfP`RTY G5"pMB * 6 GQ ekLT3 hWer`k!)s }: n~DO'`2]6 y֑7&m ~%e.5Du' ,YvnUN$<}3Z7@fz˃9Y$];2Ϙ')=|N$9`JAMmz 4GUP{4}Q5sd!pd@_ Zfx=8 a ւ.HL~ctJj ={h@J8mU^ڣrnO3yf&^"eRGve^`߇\h[a\>dLmTT<[Zg Ǣx0BJ=GrVo֕Ev9] K\9q}_Dg$[?)#@.ҶƪhU0O]v,r13uK焊0.OG+;Wͺ c)W bX8uy}#!JwAmC$Z3oUvA"m 8SǏo&wzQL u7#R'}Éaa;h&%o+Ra<Hj5m zYf'7!ʷlX#;Ow$8L~BN&/D qBlv@PYH "JVy0%X Ҍ C>sCӓ F%4v[3B|n!f윺 Q,Lj̵;f/[wHܚ:yόvqfMj9ҝfH"q;pVPHzm$qYY-[xSS{)O0e~:'4rm l٠iai^{4uw?G? w6Sbq/:W:2k\5W0rh"89ɽ9ԟ[h¡Nn˨_fR`6Jff5;ޏtQ+˨|*/)`Qk(n:S9't?OET+(Fzk݌.Ym'FpL?b 6Z9>Q-jN& sEkWN~tZsg]yŖڦDi30)z#L,C+ՇENCrV1r) H+Wt2[m]R!mG7ZsǟiMfn{pD%nTjw*NhX]GX3yVE@[7vy'?5քܑRdUE 2٥t&¯ǿi 0׍R_ì7*7FnL֫91T(ܿ/@r<_낌Gɻ_+Z[;2ޥ, l9t*2}ɝߛH j&bg'{cx{1*oUR`﫩l߼T;T /_?&Ҥ>Xs >VGmi׻,)Ja 3JBl)ѻzq1dq³rTs]b:)siqa*6 &0̘<mu͞/U.8T"3By;SjX9ӌڛz'l1w8 aYBWWSV/6I1qk[^`ޥ/C^Y)Bf8o0.7G҅\|l^-ðlz[@Hh&*G"Ƌ2D8L/f~@GL`}tg]͎MiŽ pƓQr$̑s5aF4^ }Ds?%9$DpJXU] ]CW^ ~M@KdN(">ōe9 =1;w xF~/S˩,+ax=jtѰs^{jvKs* {9C * y@>p5{AuMRN?4R{ {P_qwK߹D Sauzqr$Eף~:`,GpJ@3rǎx %vA% pW}QO|OU~HsvۗM]r?j^uQ.L[KUT.:ʬQ&q+Ȍ h!A+I}sJK@v KΉ,Ɉ>N8 ͷKk~M&: EP0m~X*čGGx㪗Jv߲^DMޓ\kvL0MV{{5.j`"PGi c:>?M˘@b<=Q܅t aǦ >zZ*V7i$qoWQ1{J?.*e }xbs:'oy@+2E]:wtjHg G3dqQ@-uw.7DPAy,`-֏AwgfVIףhѓTa^b8 Z1k<_?]Bġ#5'tgl~l?U[3߯,4MP'C]4jGU[gdd&C7U<QTdY@ Lߛ߸}XUu(\ F$V$WNA\v mĸD{=z:pbPa|2ޘOK[l3PskaBX>.=T~8$#O,pQ= S kmK0rg+LM׃Տ$fIț5F%BzMu}c țLp@v(wY8C@"QرM g$FKVVYzﻄhU9 u犢 " ޻5ux,vd_QໟCY*٭c0 0@,1, ȸDSܢ&*cbHeH}P<{њgiOV(SI·zeȒ<@Hs1/{LEFݳ*)q'ݻjIbKئ%۹K)ݛI  rzP\J^alw8_"TZBcd!?H2٬(>n7K!n5>9osU,Ei6"U{N֠INcX.}NLYsݒd(ߕ]sº#8tВ8꼒 HbR{CPUdfq>[v`_KbNKKfb+\͌L~a1pfd2W=-ĮC)=P3g*ANfaa;.'0FizN%lGɟ ÷Q;?5? PDL̖Ĭ͍,LhZt_ A^VO81lQ#{#J7P=fqeK)He. HP׏4"IO·nHYLFd-uDͼy[uu+~tJa)D(Y}W^S-=Ǎkgf=iǴRO)PGxgCx|.@}<3~[m5+~.,y fbk,i840oH d,2hGK5}2ܸʢČlR+Qiw{o@G>~ tg酆 )_Ť viSzW~nG>]Yj'Bw2.2_F4b26`Y.\aLsed!(o>k Kco0}J3W=brÏ{LHiZ.m_,.Չ\$5U?T: `6YlةUke_/7tL#*6iG_[d.RypuyR%˳#-z;M|?+k\/{=,`VDqBbA%~=:0_w÷MoN=Dm"rJT{(  6%=B]LXHe]q%d"/IPۡ5Sfэ 8:z9Y͋ɮdJ/+V'MFb9vx}x4 ; C3H[{GVQ_ȳLAGW n(S=Yl}ו84QC$ߡ׷!=DˇkZf!8+|'PBŦh`(y!irmf 5~ QJW>U#w!˨EtۢsS3[ϺS]U&U}CAs{}ɡ1u"S~._Bt"}RVT\10 @00![$޹~:˗8%5j^I-pⓙ͖8&MWMqub)kU{VTc.;T2K -]?YuLjM5=M_aHF5r}`TBPX2@@SzR Lh->^>^3+,Yr.FsE}Lwz6IUG EA=|V *5KM8׼a"F8QS)Kzi+ME51skuCT+7rm7M߹,Nr V˚JhBߣVKZY꘮^OM/|N# ,dSM7R`+m~.cvp4hQi^o-{__QPj8d@rQw㿟׉Tv/34f;*S5?4(i[ͨ?S\g]Gw"ZqpF8Cy%eInqv':jFJcJ˴̰J]KTF2~pݜ4v3Pi({sfQ{OK ,9 U/OTIKfXXI6+qK|~PNㅣ1kV"d#!kqFK"4Ս._32Eڼt׳}O W'ElPYFsgŖOCZ. ekwe%bŦ|2dI?s2!2|k(NYfʾ1Iֿ6Os~1^ek,D}oKH)aF0vCatϙJR~K1~kߥL!o` ./; xVBºf _uOb\ +ݵȧ:Y G#kӍ?} +kS;/ujFWJbtjE# i +H&fBZ+W;~4yf<3;DJ&(Xop_Ӭ%ݗ58ob}_?$4Yg9;W a0 wzˬ#qC%jIw@i[Rnљ):4 g􁻈V1 >NdkuI= "dps*@ihdx]0sy2bcDvgY 7|GfxɤI‘o(IVjRsM^N &5ѹG䴺LZ9)$h#Cec`voPշ ΙZU9;cʛ#{{5ߝo 2JJ_7a*1<Z1  2My=[,rέ6ΰA9˺ <|_1G4)[ˆw _)7wiAr&R{%4$1K rSGҟl;n'9)#;^͌ #dnuckWJN 2*4dB &ӳJf٠7'& ҒDpSi*>^KnW*Liuq2n{FZqr 3Z4јC[:0QPfgøĽgh`gUpwSXA0a.LH,yJو{]RZ>2Uj%芔rl}yЭ%UwYC W\7dh%؄áVgjrWH{u*8YdrSw[m/$pqMvc*Py'Cߠ]Љ65fV&ĕ[2ы F}tuqޢ#G3Be+;$.NR!@R걝IAv ӟ Y9gރw"dikKC)[vn m` 0w)eU826O+tX1,55P`$NVӉas #6y4%(N#G c%HvM˝E'm_ |uD":MeP%xcÃ%.R@|brjzSO9wu!^0`p"eFC 2rCժd{iiQY~@ўת c\6^z`"it9"ݫ\隡zđQ FuH5٫ƌs+,KgS>{}r>X>Y@զCE" P07E2.iޗ * ,*e<32ZCX]Jr5"T r #Sr6h[_A+U$j`inT_K_SI"NCbn)21t-E){֝0.bҿIy/es`%";Trة6qV3K"J=+I͞vL"2B%OŶQCa(Kπ.=Sb VAV^ר#Kzz-2*@ !8¾D'hP^/mC/ПXq0 (;H>ZÈkdfK#!7JaʴcBIr% 7H/5; +_Ǭo k~w$Nױ@::.Ńkq<߀!:}&NAU߯AE- 1mEgXZ}:1Zy9{~~E<@%‛\A*LJGwa83hH8'r9Q,u9-+s <m k5jqnAMxBH=.Tܨlp=sϠt y#H|@!v_-O/5UiMY e4zΝQ9%s_sT~iodf2#34&%@¼*Ş\=Ϳ-ol )wR [pBKT=*ê+_Ф#AM]7 $ PM[\ڮ˟#o5kqņkxRg-` D@zd&\8a}w0V"ł[ m»a_ϊC,6E1rH/5_$XYd<Ҷ=]_S$iktAzoNGnhYv[d%Fe`*Md2 ZqZAWY;G* J Y#F]$c'G Xf GT2̅A,ie-|\)'YfYly{'<%tu@Oz^9aX`!Sz]J9I-Bhf T/}^b3H)ݔNt! KOVZ96I1[sڬ?[ȫ_К5#<[IpSpA &sZQTuZCeaRjI>Yd")lp/2L8lضr(?E/c^Y҆s|m:V൅0wP꩕1m,{#>X49bOQ^Y\:vPDs^z,8&]!C{9W1ua+1dkB,4,f߲n~\B6NGOtg|M5Tyk75(مW(^@OhrNZUt,uz(`˨+p > tA'Qzj|=5胺6!GYR& Fc2 FH#62>♸'`Jb%xtÏ4\~̫:R뽒SP)ջ!C7@4kBKI YZ3Bl?dv?jgnۑ"Kq W`S)]>ǴPT2!kJNՃU_Q-@_Ґ+]+O6b0+ߧ |ɻ.˲x m p M_&LheG:\9not- iҚ @6NڅtX￵S|^CNz8jl+HLŻbAop_YQBxZFM2bMҗP[ ܋ \+i_THUWA DM0Ȇl'BD>FJG0+~rb\Z{׏vgu(l"d >`6% _P_Sv>T*ß=6X/ՑLqY R}'OuhDX.jG5]pd:5Cbe#Ҕ, 7a --'q)I_# V| bU] ϗJqt"a(aoIP_")XZ|1Et /Ey6Hfb[Ibc.u˼.RyksYrC@8d?|k2& $6_'HSP4P%JV+w2,%!1Sgbjlҝ5Ds]hbvAWon榸lxXwaڒmI0^:4Ū&cH}6|#yH!ZJwj<vtnWδ$ B(DK<=AF]e!gtcXBhζ0@:] u.|}Tõ+E6Vb%i!_Im =uXɆw芬2f#`4@'!Rl:t.+DQTY4ܿ6 u7荊˷@G(wa1|?JdRb+ cmH%L2ɪͽ$ {f[uX dHi7mH”K5ƛ(1;+G_^=% 7^^QLh= ꪅ vκmr$jn@t_X oV0՚S8^d* OV"M cmrvfrn,0!ilu؋Ӌh(~hߕ7:G+a v7 [#@L_0StxųUQ^=y} 3X pE:SPԷ)B拌eJFZ&J"^*jD3AėB{k{<2!:vg (j0JT<-U;pw7 )!jABO eŹLxr2=T!4N6B 49sau4ۡaqM.NM<ʩtvL[ $Q tom`mhQ IJiw>sPs@ C. 0ޟ>jJY.C%#fCun}n$6A-7%UcӑQ*)%x,pB.OUlv #X0V5 7*FV`_EUTfϜ$zh'X4B|lߪG$hrU:is`pt!fܸ /uU IڸxTУfퟥEIx6)cl4ރ]$?Fo;db~ATf.=2 !72_;!źo%l%q`ӳB; S@ETڌ*A&FB,ygܮgiA a*,T:ld5;`_A{$' &7IC+Y:Q'9m: T2Sx4Aҗ~k/.,I~l9Q|-KsCD9OjȊh0 $ۺTN]E7J DŤ0`umMⒹ!u٥n2OޭK^v?wlXR;¸Ȓ @z6Fܑ Ey`׵sҷ'2-\lJ;q|} )ĒdಇO}MB+ qSf&s6&|.4LX\Grͅ׋[ M4tι+a~wQ{Ch@:Ul[bFq([8V~;RIKr}s鈪=f}W6 Z:[, QIqdfKmcd=B~u,^=I_֟M=)Ajv2/YTt9+l{σ0Zܼܳ?Glf`1(hLXM۲ 1ɉfu6™kVO|VersWʸ \3m{,iDcʃ_Z=" pGltOl4t}:sq;!ӕWrcpmgTr.Zhd^E Sz`\:5\gṭ{6P w2^F-͖j$g2 y>{#E+ ӝ~OQg*!wL?|șӜ`7 ;7^ZL|;־cb0xG*GG|ѡo>w=pf 8mNdrM!ۋ,8^Jl +I>"F1)"_匵UXo ,w>;\|Sk)ӳeY$3_g"[_~W0 ٛXh@A:rX@]3]v岼#4ޢ~)]H~D]?^qoRn g_TCrviTicȡqE* ȶn@暩oY昒/Mg&՚NY!Ƴ5uLjYCK5 J$n0"GMK{ՠG\-* mUnϦtйD;ri`WV[R6A@ XbcۢIUxk#wI'/T^k ~^&NE7t8I߶/2k5Am"&L: 4dAzPX &G%ŁJN܎@z ^ZC QP[3m@gKTGi +U}@{ZrT8y~jy#]b8/Lu %97 Qޡ#LTU+&Oq]Xȧns!b1-!QxJY 1]|~GǶ}he: #euO2`@QULQJ;r?FSK/myL4[iK8O4w `B:NIizUpQFl_vC "]96s?=9NuOц7e.BL9C݇I0U˭k^5uc!|Lz("Bw2 dO4~*Yd*`>~L!j&Cƪ.MH5*;qHaIgq,2$aP&Xv;qJJ [d0t' ht+]yzݿyBc+^Xa昽m( P$޾r4lk.mq!lȰVnmgĦL+\RɌž!n"_B֠~vZb?PVYj#r=6Dؓ-~dBߺ*䘨59YDM-W3 coyz5+ u( fw}|CRo.XO+[Rr^A}-lpHOX0YBNyajMʤ~:0cD%dJ?\QIڹm76ڳ* bkoYp^l9\*KYo%}5+\ݞђZTcD}@֚1E$ELp^DjVi=g~@[mJY&^6O>&:J"EBWϚGղx[/=>,I(۠ک ,ʼn-HwY1@ K(#D}oU۶;.|&,;6n1X3KE4%ؤ4i #YV pY1Kg q]W+{utM}cVř+WnG-#`E;k)!,\}HY*ljk!/"ۮ;Ɣ] PQ4IB @_WbF6\)&ae\PJMxW |g\)_J8-*ZK%$(ݥ/Tϯ Cʞy ]GrkҮϩcAԢƯZ4Nꎊ)zqӌyp c,$>Lᆳc!X$2_k}z/. r&AMw 0[zs@RA)O@n؉J BH.k.}'~Gu bX8|רwޗ WAs+ D";PanUäm$J\VA:ĘxT+0wI %Kq=(şhUn{]TCV/v:FL>!֑jlySKKްJH]>f;zA@8]jbB,c^7jL :Gr4LͥsJ:֭ޒKGUG00ePm ?t'|væ87"DlVx)~!DzC*3_b< /f!^pDM®izx"T:2%[YL0?ıa2 Z2`Md\^]# cVZAq0 8}^Q4$e~9}oa΢ƶOP| Za/xnFSRyn38(R󕁉;4=$ "Dz_;]fe#0H+';,k_L!ʎt &שъq4_Hv4˵_p#]tN:0dl@Ā_ (*<\TD'? K@6-~l }FafkDhUo 89 ǵ7 SjXLȬ.&a(J-8&*}.0_ ~; D2\4LI+A~h|AxGYL}G&.ۙV&EJkc՗pAhN' Jý) ĕ-ns5,*i2 S>muoi)@X`XCVW[m9@=Wn=yO@ܲ K59рK/pM>,"" Se lX\ګ|R KwPv2[nIHO=qI I&AoJX: UQ*ˀ^k|Hmфs%*{"Ϗhh2b°~.%`&k]?0Q+0 v .P`cCz"9G w.Hljwp/n^*\5aaJD=kin/6+_ dV+DS\ko.76ڿb6i3NCL",͜xBTPB[vǑ~UX]Un?ZI4{buQ*&<"&KJzrjDֽbx+mH̨3xC1?̳Ir1/x7k.<MGPhxUXqDQc`d?/*@3gllރ~LƚՏ1O2iѧW9Hpn Qt)KL{!l`ͪʤJ }ץ  .ku\xzVP at{HyJV$͂6h E%ZzFߊ'dKQQU*#̰w鹺P8جRbHUW.Il߼j Pe;Tj˦Cݒ#|qxIjgi='&oSI+?)ZEiYٞJƩ"z.=bv[tTGEcҥE{8*BK,e@{rɽ}=1sH3hT VQr2%kz#0P/7g>3go񆖅xY¡@9 llE}'$L|<,w` (ɘtxMϺו)D"ta:8T$՞.e1RL?.4͌MT4U7Q ({i2m}2#YoͤRӕ"&ceYnLħj !UIɨKC{xgu3"vocI^bo&}+N/i0*F) k5b4^[),2>ȹ/k--@cw2'A3s˗LԖЎp}~{*0J6ova^&.@q/+Y|ګ(źq\[6/׳[!/@whWgzv&- 6!1ikmJ?TTINFNw ( ^VpWY =0ſro?d+c Fd~H7!uIZeHaƏ>>AaS|Lc^D8=VT)5BxV15D=?N5ajzl,LךgQf.]˗~|9rRO PӃ^5*;}uy(GhH"i u,/a`:bT@] *t~DSSS cIJqUDBpUba\ =*z((6X Ppkth^o!08va6Gb'ԩW-Y ! Qvw?R--`7yH1g PyɺaA;AHlJ:<9ǀ %ڟ. \Ƭ /W߁G{>]SHb|1 OD7Y9lav{ϗjed 7zv7x OfM~vb/O*a9PV׬&|hFu&zB(eC<`"kIB .hk P5"0/t+^.;~Aσ;e[O1@Mq %Q;di,lRFׯ} \EUL'wy  ],* y@^=gikڣ "2J ¿5pPQ5c̱"Y,}=o76P ,\\Tnb&[m>T Қ==~zXK4kzQ2UcQ W ~%(T:!}7";Zikv]M][N:ٹ|l%AMۗgA9-J5m#cû,'/ h>RءzgHD1 $K*,(ޙ)@w`%?zKm'p[WJ~^Wu_}+bbOKM9+` k.8{*H7m`x0D0d}ZZXR('.6H!5I0fl!E'G2ezd7Y]9Q-h i9g%؆s DbCAE+^O?`̙]*hZko[_: ϔB>n[@{\PPgB(Qwd OTa>Q)`Pݶo!Dฑ,O[,,*I[ZPt kؔ1:D"x¸U]6+bkFsМzl~ZGh<7"N'Y l ^#І∖[=U8ރ0U5;s_p-5H9vT$ra:- %V0>櫄3л aGOEqoĭ&da||2ٌF-FIgе H;/DKW垶Xtvk=BsZ_ˁ f.sZ1DA00aiS9Ww Wa2[MFZƦLaI8#|_ lue~BJ4\:LH@zp/ <\HioUi 7=\7klݑz&1n@[Qn R[W nV-iwO {JH#7UaW@KbpǠ!qT=M=7K]zJ:ZXL`5&5>nRlIwfe>QնYuzka,>PAlWe̼(8YKXL*|֛nC`\7#a^e̽Z1!Me ㄀4֎8c'{9WӦϫXB3{=kNX4-E_I'2hذӿ 8yƼv57pR c )P˒sVv2'm[t vWʉ͓I cAvTp\`b`SMx6 qy@g֦S{QI |K''x-?Is#Τj ۨU.7~aHg{ojMe* P/SP%7Y3*!RGi{D.i&tb^Eڢk*Iؒg.p^#+`&-ZZAa) ԰*w2E0fŴ̯+dS*YEn> "=0N?'{׆&l}`_bɵ\,OSg<Eu@dy w̓tž! r2:֋"($v;\0tu ,53k@\NNyɷ%reSJ 5DeG0nF(?JG3\P)a?hEy2ťi(пlNiM)DFmGsfٕ`HsAD`h- 4jR6֧s.ӿ 2+H[<jE~3ͥE0}^EUY<9C(%F *d+Fp/*OdRX9E1GInqTaJ񲳃<.rɐY`qՙWfP;r4M5@#%@aW6B~t\nSut5Ick(ySΣF'@CZ&fC1-n # pXU$]ߞAʦ{R,=VC!Gt2W0^uVRYNpD9 2'd~[f?bCOR,=kFdg+)$738͔HZrt/Vp(׵fP"%giuR2@_C,`8‡Yҥ)zx8 F2IS6浩=Ooh t$hmFde,4"(@KrVtO|ʉmhASmuNck2  e!қ~3Tsu$"H.틿<SD7+_`͑h}1ʳM(hgf#æN)iЩ!Gs:x)X&!?į3lB cn$MPMz-Z) > DGuSl&uqFp+D̵4 `!Dڒ҂Š7Ulz^HO5GfI\᭹{:y}mw4㾪zI*h+|7zlc:n:[PO;r )"-K$-L/#N*f W.?ـW0^|$3!UtiʁsNqSٟbmiKu4Jdy);?ze:G;YqB(L{狇h$YfEn^n&9}_UϚ/F5C<ҵx]e6i|~#G>T4~ CsC]OB,y۱@,'Tx ĖbiOft`bې狩pV(Di 9nwН'8ؕ+.OL>s/Jv8-==%]gMC̃J}f7ͽ)1?D&6`?= '{p%(|:l/ޣZezRxmcK/,%.)ͮqL._|8:6xS';BwE QT`WdBNSd"Fod N og=NHhX;H[+'يX *!X.| l\l+"!K.ENA3yJ!72.VUef._?JƵv0 yⷪ_xW5jD&*<T]{!pS< aZij ׂ8B(3*q~),Bb( *ȥN9νdמ0Qfe -E9Q%6Gַ%?!P(;7dX6+S쯏5uКP˙E/jK^2e%^"#tj1' NLiW Z8bOG)j$HҞu,E4~fc0b{k@0cU8t-- p2VF[] qk$cX'vm(eapiй/>< i--,h] @ ׁ?B R.k(qL卨b?ܟ@JbP$s )c{(j`'<O<#kK W/T,_q-'Դ"\Qzs{\,+,?)tN) 0 M&j97HKPn Ǻw>qNTw y虡}'bOn=|PM\hќ*_FVkںh/M[2їL>ћdZ=kCcj|풯b _]|:s&1U_: ^1-tuV^tH9+P6BGEȃ/͜!-<-=yI/ U<)V`_f`"Qr H Iʬ"#cdj!ktWuo< 3M(G;Exш;aK2 ޳HNz|20hD6/_hH/IR >XdJT&G'6>YUPKVU ZB4H&W~m!z0@L}A s`IIvtR^>gdm.ɐ=u黉15m積%-?l]?J3/N|k% q"2Bw 6: y>R #(SGٟED_#?W"<'7Hd*m>N8rjn4l߲]}n7:0'KH)闕8Q`Y{_?8׹ /)iÄWI \GLRχ=XkѽA/: ^pl})ud^&G;l=ݣo433bV`/cա*6tZ&]pus pYiJ`a7_8]UX}h{Q领Cd֒C y*+vF ߭/(&OI/Jr-RVi;i.AbDtK:V*/D_ME|BW&9B2@d`1d`3H! rby~oԇ~\3"I7ˇ[a\a) '9&sAyiM6qQA-ԇ}ґeV) ֲ#YH+Rj:[~$$KiB@73F9/ӴTJ"z4pb|3')9n1f=X0@Z\:ZALU߭hIgH(!\QD/5X٦>=y,CD& FmƒC3-Z+=ek](a9wU 4ux|B?K-MaOy?L1Gy47ר|!L~$v yYWë@}a |쿄*%J_Ib0ïJﲗ`)py14I7My|r) zQoNYrd,+qvԝؽ-;,\ ⳯XɎJj,|?)4]/UHQ#. mNˬ寧:9 Kz-n(mׯjɭ 1`^\ֽ0?T5qW2c[,}ܶ ]  9A}'tbw JyrIߜbqX*;J%jB(hj"t]Gtu(kIy7i}?+$ߧS"l90M?U0 j^ё9飅1HS+g9wdخm) H6 of,sN&Wt(<c,>!:m&:2^U =Ԯww5`\ }96IdFUk0^bOf2>AKEӌ u=e_AKG4Vm~'BvY tMg0ԘFqe=K9!>i96p8\1yK YXw  kSAj tP{K01kgµP(&*Ay qݨā1eôJа쁗 j}Cs(D~(6i7+֟C3r=fx>{Ό֥2l0BUaUPec?_] LIC1>ķ\DfA9T*k)sʞ4t 1S>s=#v̪ޡjZ6amJUU !h]F%os C u4,9"~j8P?Z8x9jkO[d:uj^KFO@lzeC"3'2?:|N/%SWbۡ)!f]v" ѝB a-!#M{wڽp/٢h&$|]aX"X,po2Pbb?~"ꑧY871*n&6A7p `I)(uRB{SiE*". /Eµ%fIqk'6,!0l jRh,C(fk> Ժ NMJ*nw |En$ng_kzu)>S"_ㄜYsb:_${RE7G+>oh˭ KTKc$*@ XkHp6d?g@%;hoh"l $=[ ITVItQM2M=r ң{'Am[Px|'rq΂Eu6@xx\O0~MXڸb7I!! 1vUT"&̹kb3UBl~;jn5kPo|Z2RqWɥɎ栓R4Wݥ:fnM'/ޜ(cHTjJxTU"jL^h[1pf$h`/qiYeE@ͱD8n5?+`zl$kw2;nC0\g ,f Q/F({W[ #X)n22]Dߦ;lLuvls~-ȰJg=d_g,a@쪍Oo}guS<4zIԿxQQG"C{-RRV zT%AO$A oZ Gw rTl &yqC wQ_S9|WD#nS6xRG 8]+[NAfLJ jt'x'Jnl`ѓ. !4X{cqX;ҳ*T1\}kovU]' uY-' Gp"cz.Wr/N:vghIN2/+#9V3}UdLM9Q3~-)s&B w?mVC`lHT8U+f8`&Ҵ֙rbKZwju&zlUWmJ|[,pSܖ\U*c*ztVbu}`۹1I@?$J6Vc#9㏸̍nL-?0Ihyb< DAc|%Zw5%Foa8%v%8E+9U%|oQdgjN}ե;_ya4dy0= kD.40u,j8yg]I%~uxKPc=aa0qyPj!(R${Ӥ׊'Ț]./pB-e?$x{c-̻Q)瞊r0eGrJD6sóg?٘Mj bhR ,5ͮ,2,u m㨹0 v!V='5tyB9 I/}}nu Ih;I䩧ϝ$!mj%ʣw;a5.- S7&D&SZӧM-if.4 r+5 ӆC*F_!ǘ|>Զ>>(Kw׷u#w& ڦppLrx{`!{vt&^XuD~n2]<qPyHNs)ʴ?4cqFb%o,2&ðdn.˧bgp_mA,m.C[OtHMJK}YZXz4IqPl[^zLeQ m Ԝ{toX&yNhp;,}'C-VdfjE<Ѓ WijOMb%^թӖ{V#P*ˊo⹝a3F'l؋: Q]o1JT/`%E{|d2*ϩ}9t#}7G1fxe0q+`#e'49Z'B7+Ns<x&f-g&.DPz!Wz1 2ʣE FExz )kZ,ʖ!_ |ǻ$~#bGs ?q4Gr+c vK%!̾=0r BۀAN`3km?^Gpa;kGIIrB2s}N>z{Ĩsfm[c|K(v}|0D'@[6gSazK;BU=r;hʢ!- ؾy-uzV >\sł\d?{ҝ7vo<`X\WbVW]'/;c5oruY&ԯ܎sj:^3y=u IU-쵇7hc dnW՝zX=iqr8WPp$78Ev$^NS8 Uo<X13/DO]Ἄ{i{So`('~^} <Ӈܟ 9Z4- "o.i8pʔG%zll9).t}vRO(&MC8?0 Bczݏ#p :^>EVx`y7Wv]$lSn>ao5DwB;2'%baUyH(&/zksxkEn6s٠]NDz[zjFj-Å *Y[X^?&we@* G󘠶T\]^l\ǻrMjMK TH>gF|Z7C,\(!mAGmF^;8&wCޢ6J0%G Ҷ^&/!0*99U"&,@o !CoO%B <\:FJؘoҢcGfD'dS_e !=|XbТZ2icy5T0+@XIWD%HЁx nyiE k@=nҶ3gA\-\ɲm l9dXVУ,7v?[Ĩ-u~^Ff $ s-N͆pRٰX=xz -?6`2Wa(hIR4(DŽվ#S*|n=i~EA1RQsM>eYR+$Ⱥw44=+G(YhLdz"mz0u2'#ݹ0$o ɮU\"|$v zq# s8$4췪I깭6#x+[V<ә/O[|U}^Ϡ^c,NޡW>|c0aҜc$!Lh-D[7É&mф}礕h,[CG/Hx'MўZG\hb3p4ûb' *&d7vkXMe(d:j(G vSo%NPpA$f̋I#U6\=gqsc+pYWC0a:mw/Ȟo C `8~ %}h.nBնDF-6oq!d<~DO q^Y)39X=).SQDbHjQw._={>cc]=煦bꢳOx60 퉃ٷ(7 "()XXs0;A+J(L..ʒ:X#󅄆g?:w7T=-C|q] ѭx͠ [Z;b~.ϏZ9F`3KVaԞ[I3p`W3"1ij$s1Q"LQ{VO":%*Ƽ~Z?MDQZ( "u6-)m"N '=N/pv{ոDF߼m@4>B'DZeG(WYY.?`ׇ \ tm ,zPe%3)H\"yxN=W`aZă^6\K ¥:!/a1I~k䣨 2;}g\A^(,TET~%c~iɚQAs%.T5H*EUWl2^ݨ}oJ,-p;) vcD\+J!^LVOfho}OӔ*&Yf1 #GpkIR~`/r{g/7UH zB53`˰UG7Ąo\XND&k\r*Zl~<ssP@ObȿT<{iVy8g"+=U%To]JL}mkm3:lx>&ΡT%\D/dBp> g=_qaōhf)Jgs͌, z[Qxy}c쯱{ak ͧ vN?kUZGb( !??)iOj ܻ{h Oόҩ fKpEA:ld-tٚ \4gCf.XK}h2)+ +!p?qWyMɾ~[*񍭧w|>:A AOHŻErpA(Nj.'zC|I>ucUg>y­uĎEy]˅/x!GG>a.kd` p:$-U*NzjAf!_ Wxz-'ʄR|W޶q )l1KN){lA:0c0YBG,`]qm4,3 )܎Ub%~RVsת XbZ@~:ajlvԇ|Eb W k#^trq *(6r9S|$#u1Òoq&%:{sbt=:Jlߎ_G n0DڡWZ8ɘ?&HQ~~j{ h ,2CV|jѼ%ɃM_찞A\ BZ+r( v!e]/ ͏R:5‡9&k3'!U`}K #/5jo.^׷MGk xk'EVv x:TX+L.q)r~ rHIpibJ%dI0i7Uk imEros6nҜeBxZ窄zh]ff~*K~+@wn[p9{e'E jxua g<; /9odnO%gY-Tbu)k̷_=w Q2%xFf25bLܗjdJJb-#1bQ r߬r^}b'R`@'3+8yƯ箾%\ %=H(5N47&&kǵj'̸ȁ1T}U" (^8x$vb[j(yh'Wl$&>*_-VnM+0_'YBFx o"zw"ߣp؋dȜbx:5eT|`,UjIt6Y5FTo2n[\`:Z~NVO$Pj޽ .YnVۗ/aÆR1-KCYC+_3eP\8]tJXXꍒ?(!*kƅ7-|0rra/7߫UA+?Y1KfZ_" 0O՝)ғXpݪ,SVM}}r_5َ 3KuRS:GחJN0? 0+>i紽(yhG_xiT81\#7o)zS^,6^cQQTޭ*Y SM _;Yos/ី㯴> N_<_0PCA1>}w‚F]ں @ݞPֺݒ,}L~3rYZo8d9_}-"3A>@v6T)1^?j}"Z<3].IN>)ꃙ:: H 쪖ngC[" |yI+[*/go-BYt #=Ư_nIT`jeCN߼1>:b9ìKsW } &f%ŞmܑOZQ#dsv/noҴ$-X ƻsgmm !Ʈ&-H%/ w19˵%V$)~N6ȡ1[=e$:,?bN&plX1$3"'"7T5p7edw'ѵɀoYFU[PqA\aC9$ODʙ5q|uj{9U&DH _ڒnK-"3c,[.35o=zW3cJSLA^#Pg9\m'GCc*ğ#HEAZ^[ey5w4`ǎqu[4te/:$N}8Xɾ6m@gpn!HMŀ. 2 ,( )U%&NޥޖXzoaҩ)k3wj`” ._M>-:f2=VpL55L>I{j7ȤsD&+: )[H]<.\&A^QwVФ~=>P'@Єj 6]gǼ% X^zhaz[0-qN'4 s5U?5< 0gF&*[F{{-6YLsv*˿,D VGjmn5zFI6< wt1^}V`SiXSGg_{ d8Œo@27FC?ZS06p4/ qtcӉk"AIt~MH/7Ő?1LfW޴P^c4R?-WP:t>XL„'ULIJd{Ei_@|u5!~_V{ɇ-x":=<'H"fs|]#RCo2R,1<]™ 2Q2ǼG | vP uN=ՍSp C%CSX٪>C}Gx9(5i{V{8Zq@[+ T @(-q糭ZSrd6^VM=t+mTOivf'6j5 !$ QZN4 -r8!`P!t*Niwq(2݅HCfT&0(sRQiuΞ_~,N#~q )3;hY3V8cbenj 228yڤ$pV2l Δ<]#(Arտz~ďGϜZC.+EgUOQ'ESRU^9(9Y(rM"jܱ6Ňy"]uO1.>˛3>;O6,^e|DkmVe ʔeNƛ_/?j+4^&dG-㝓JZ "5u<-{) ;(8w yDy[M}#haTܖרKSX J}#;L+vG#5.*mhi L0U’U:0ay6(UD NT.e˿BaJ6("8a:y6h+cC (yZy)eP~?O9߷@7[%6Yeܸ CsK\Qq+D:E#SŠ_ގ۾¬Jt:BCmL4VaZ5X$ӑ"0 u9Ui,]5f- ,j%^K=Ja/Xx7x8)p ѓ-!Ifv @ N=/@B@*ɝGuqiB_+? Qd8q#R [_%-V0s,h?1U\sW@\ϝF`av 04:C~B4\x[|%~F@FĠcUM:RPpJT]']NoWzТMV௞ wXϔG1$f|D=,ն? K@K؅{ #.9j#=DL.PR{&K=[-Z a%B[`)H|0U~ײ\8+2&MZOtT:Du5ED+]G?(oa #1ԨտG%974~KlBGߜM<.IQr3 ڊg,<!r*E\`,[ y߅J%BՒQXa7<"3] /C1jFjlfrY nBHkTY@j֤חkX<܁&, r5[HYvڬ{.SridCx_mm-LᴻR?~n;9LRrtӷۭx;A$AlSCvp5ޭiȄ2*¼!?6 gG,e/[nVy:ی؈>U.R Յ Gܵ` OT^/of2.}Wdo Ek\ c@LD['W \[ ;Wa-\⯕ h]&yᚕ󫲚`fn!zAm!w!M4b앹86K*jGk<7ƁZEC"|#'BkTowJ j#V5%>rd1 ٢ Vڶ磢J$A>x&q)$H 8ќz1_yT6Q mfr-쵴4]B7uElsu:|Rs{˕=Pypg.?^-Rx!X6S)rR]չ+Wt䐙ҥ^uX8\s:9ht,Q&b(^giL]*+ETNk_/9ߔ6J0 ~P =,.fCm4cA}?(տo D?~@<0 _9nZChfh+>`1v¤gl,ly{*ܬ "h.Ixs4G&ct sPӔ;R[ޢO{4pHd{"g!wŮQD,k}8[,PP򋏓as)vFӷu ݼS2E]_2&4{87ר8{Sp2 w8:\9uLtYPmV}8eF 7էӪnU˝̔GL<pwX7D$]̊9;anxi@R!^f+S 6RxsjGX:wOF2.-*cŶ`GVˣϻ ZCz@#6)WVWm-*_ENʀ/z P{>y2idn@o$ Pź5gNh܋=)KOQ܅P\ӞMTV=֫> p}qk'󹝩YKw-xcK =ϚBsA K_fnb}7=%P 9'&2Ĝ,wwZT~h?p&tO&AZF&IHWެ\l ꛜnfz^,S6)e)J it_lJДWL48 gׇ*a£$#t IVql&C{ ]\.P !pZ'Juf7^]yeD-TM;.ᡭxi"0K55f^Z@"aA#/aloc]X Ι?4HdGw97)Zp38q* a)Ϩ_%S;+eFCF*cqF6 mC$#LX} 2PlP{Ah*#BzYA-2D;.A|/im cC"gGh9@`μP|4`/=<# D]T/L͚ 0Ym"U^Ozݘi5Mi5 ,n?F0/it~I(՜3LOdGj+0~*y*ԇzqnaidZTh ,V=~3v'y`ҬBpٕfTA3)X*ANhu(_C`FmC@R5Q O6dd5cߟqcoc,,`vexfG͆ԁ.Zp#K\Dawj)]?zr>zOql1䛩z#V;gn~]; gޥ'b4dNeDzˀzGY`g^#}wLNe6ĔÎ c E I&T*N<#㵁ȣdDž ANgd/m iL)CJ}gd{,!ź6Xǎ=(G-R>~AZU@4 ] fv}u1&ĜZ"U/WLuŢJ6Kl0j)g8t{@~SZ0xV/Ki4skKկX0E1:Eai17=y@)nURD{َO?%3S)c0d%[7'(;UTlE* K>0="I%C9M  fbA`Hlv)iU,BtZ@+b^ƣ'R%"i:o>شm( ۇ5t~ȿޙZQ^ByGw1/ػ`o"**^$>vyPtb|lCc &TA:A4妽'U<4cjۜ1nh"m792 =]0㉂_޼r]2 ۯs4XaH we2BXt\)p|;QkNH2a>8j92XHH 3? (#/xPp5fDd#{:')lnc)|'>ZSlq րyAen3y(p@^߷lfγ#6cZ_Tg\K$DD 9J6t~}A7m}h,X$_iqQDrHd=Zl|hkUkK=h "F`i]vv4G/&:=ߴC]՟`'TX'4J$+Z,k\… $c/A}6 &~/h)G|! 6pGPuRrD?(Kl9Z[:{(.v$PU7wѷPgԽڢKGDM^sX,|g ʼnſ9chZx爽NīYZ`idRH[x ~X,J8|dWUƅ'ڗk̤>A#Ht]H(.(FlWᬸׄ~4Fn*d$lp)ʸv~0]w&,p{PM#IRJ q\ 8=1>ˎ- m9/Y@h4Ldy*[2&+IS QHN,{rpх<߮"S70BgGrmn$4|&ou POJfmK!~ӝYQJ^+9x.h2eQ[gWGwdh{mXoi KIkeTAh85+@ `qAй#܃^=_'HIX<4`eF=V+Eֿf =@e̺}Y 5gRH{z4sȕ0?4+n7}6o*L5u ]_Ǟ9H%͇˂UALQUaCl=0C~:U!ŸRv?- C#0R^-62 Az_BVg-VtŹ~Y|o7n1ld6?;{<}ۇ?qI!l-K$й/W.[v$>.刂4)H*bA9(>ɟqَNK{Ɍ0/ª=s"{lthKo2ZgLjY..g8XE8Nb/E0C۹S(mf-E~7a& YKPUms蝧u61)Zesqu4 95wnsx s ogdU 3d}{uNHGë>C;0'NqdA%EJ?"HgȿiVй+B}Bh<ǏaYJ*|$7%p{IXKD[k!Hv9R˷C޹s1\Zx^oH*BxXإ cF&\@ VIh~NTl )/"Q.*Bnyٹ!9J%/qI :pp$6"seݦ=l:ن $޶t cW`h)O)SRɪi4_rY=UX-Ҳ -~!(8ӭW׬&9{-셚gVI< 21EE4ݞ<nڑT㯶<d C^,2aa >|Іa}laF)8堓EV4IuQR|͜9~Ta6!yP%0|4 8 |i:BjBQQxί>x0I;%T\|JS&^T\bGWTޣk]7VUBH(=F]NDJf 5;N,3hΨR4wh_g)ePi y.҂#;/2TH[PZ[XL_,5 *wNΏ LO޹9ؒrECcΟ %|7#Sml x3oEտ$SLy7MG~sZ}{A#ݗa`=2ĉy9᫟Ȳ$b'o1FŴǭ)U7]H{LRD#&.0\!aw=?e^d+sK[uLWB3ơ\"~űl$ϋr oo97ak.fI%;U$']'],F#olrKjAٗew5N,8p;^>35> ZdkޔA%b.%*ؐDmawomPᦫ˨ŌR;=3uo|U%4نbDj/$g. x>5}Y'yi_GXܪIܐ Y(-?Q+OcOnSڝk(#jOt>K="6R($wbǯ&.L0Ϋɭ&g/a%E{HRHف`GHS[RLK Fwм:T ?P"*h@I"HϳZC ]!5.5n΋-HTp j躩r+tߜ ˜nJ< ӏ\3{ɿJ٨GCe6)th1a;J~Zےl)Y4ČvuSM#3xל`^9ڪ`@վǜUԬ8uxM"vKi!z9b4%8 #DxlJbmƏTP/4ֆ'2{ H(b}.Ffmt.+ 5q&vDp%eR6d %(ʧ&'>Q-߇ iϿCvTc"ܭ bt~ F@iÊO9H9Ƚ O|"?@Oޅ/-xaf9LHb %ڇB }A<7O8lo3[3͡SOL;d'|@U>~al1)u\5ƝE8+]`-qH}lrƵhh 8NnLQ/y683cu:^>xi1yJ<y2\^}׿:V3](DD|iJϚYeڅm's `^4Lv!=˯pNp5xsiG wə+"^Fw^n/ٴί PE5֗h7 i-53߶:l\>sNHm82bBm5RÑdI):t„ƶ{9g54؈_i1(#GA \sHK*J陷zlF(:oI>& ag`SVRbOWΆ xNazjpfHot!ЊH >=ퟖ&8Z/ 0K*}>S`z:;\ ʿ=%JŧRO$}^ekwt<_0lJpJ?8qP4Mo jD_8`q? QL/8ȥ&V_Qŝt_&HmFdU9np^B H1^$B}CUVhSЃbFWyuCfs?{jZicMlR >n>$PC{@'4$'V YjGOF(=ހfXr}')7&fi'b@Acsd/\0gXcխH*쩩6kc<`p a02?gsZw沦+YA-M¡5s4j\}S[+_)Ё7 <}:nS#ARS=BHܥΖ ]$_x L(D: 5Byg(A_uX]Po@t` մx*Wk XvxdE^e-Ħ*< WHڴk"^WIM˾n4R>+ Hio׏*׌ف]OV,xgftTkT|M%2yP֥N`t,G#9v"$ B4G&>:ޑZHhd1G<`G5ġƿ*zntn{iY:7XZ\F,ȿwK8$wc!*ib;_.Ju'iTR4Wml37\(1?8 T>sK,;am;YUzzq0 r]dལ<&%zZ'wNQN^Wo-4#·v^"[VCҷGiXegÆh[yjjQ6ZR쬮}& 5%Usg";tWqzܾ0jx uyGs en6) ,a#/b$6SX)8+h@=np#x"7>6;-XsΧ?>6oY]L(Q+secVǺzFW,RZ^ 8Y8,^`\3Txg'$c|Q\l(vjA:+ͬeYKSN 4M@OIkVv5z4܍סOS6M5\*Io|YDZ`h,eu)o ߽RmUAt3u KN5p M uAw@kA]4(UE\.F@7\i>ryP[s&+?F%J W"kIث^gX2.MZuCfOP:ZL{@2eݫ?9k­'ˏA`!RُKEׄAA `յW,y| 7_N cOgt ޯk{G3R}wUЬUwɁ4=:/ҿ/j^lFPbVYc1BNܲx,B2it.?vQR#@q>*XV=\G P'i.fygVc=\;GZ8uw-~Pmݠ>/d͠*,0db OKې69X$f z'&~\c_Y#KKWƸph%:L\2J)SLtd Lg÷~DCڀ}z.QiV5/hq!p2E K7H[O!s/,;WPXak߶ݮdZx[·%\tʱ T3іlB7( S*Wb!8VU$!ޯEF?HwmgcVrKߔg͖QCʬ.*k*抝 Dit94Z==˾@aYT='`_ 1 5EhbT#БJb=7 eёb,olJa,6;M,T*&T.J0fCXC LbUȽO)hC.])0z&P=\I5'v5RI#oVF1!  '_n}Qݠ܀rÂl-3aqV#5JrE(t׋(-U46 ':W {FRFlݥdFz< ^jPɤe!oGNx>, "U 9[ly tVZ[{m.Cԍcx,z*K]qkBH0.@O^}l95X!ALm&urGS?4[F,hM ow0dbhH'[Y5TwAD:~ Uo 9kM=,G'Xuz@ijFAr3wg.촉N9n`{dk^Y)JS'uUHCi٫QJ1+Sxt+N!Ft n4IzkKTirf-&=1*sWT`f뜭]c$ oܼOVoA^G5 a eNoz8I>2ujn{ni;(Κ".cZ?>Q5k{1SrEr,KC> .J0#W:ljE2 ~D)`ɗ97vOꇋ~LzhQʟDxCO~*}}[jaᱰ_" 3ٶ̍TF*vܯrpiȠBAgqȗq VIs4ڱHLIT@QNI:|=ݠYJ= 5eؑfzt>͘aa+ ƻM_yό<})\8y0zR,15dTuUmv[Px Cke.%N$F "-掣9JuCwW>O};խd[}nl9iKW5l"i&^N V˵Tuc4S9#9lwpu ٤/ɪRɡͦn:(pL֟'} l26nwijiv mםfD"daߌ?:;i"7BkTjhqC9cAQƒ'(-/l E <}9MjSw}q6^*%S}hf4%KU$5uɐ\=842twat{. wITp?@aϹv.*Ț7̵J}JBLW;xZ}wI5|VNi t)@G߿'+ܪf3VX.̵̘,Q|C P'#''ڽ47)h~` 3O@\5kim\\eGiMu5YFCa ^F):rꃒ2åmLZS5'ΖSI+7D6m7*Qa)̍#[[h2ZY+d!X1aN e_'[(8۽߯JIXM V-Eǐ>?lӘ*׺>G83l%=@*^9o6?ѓ}ۍx7Ao6%)!xA(鴦 _Mr؋,d%rjäGђ:$⨲ 6F?x*˪-Ihz(&Ϯ x3SWe<t}" w۪aL+@w7y}u*qTBlmXF@%4!(KjAb~+v) E^IďթDb׎;RkGy\|mU|mxUMsۖAƪ4}[hLcqcP.;Z+T+ݼ :cԖW3]P#[Q5_A.6H kE͏ ͑jJ+hݓp]GjU8^d\џaы_:#N.RD}O+n6?(錧)8b3rDD z76eT'"p$dZrݙ{n̆ > `x j_JBR.8$ϼC+Ӣ` !b27o'l]=ZRgUe, 8v8F=Ҙ0)ի>[`lSv4:@# ;vy xlǤˡk \/7k&xHt/o#w꫎q|6FXQVh}NYmF9qҝij`S[R 2cczyBqF=P aMC\ {$s))i4c,^VHxEPj?r6γ&n3 "qJĔNU)3TǬ@6ޫiJfs>rk"5+~Fec(\7KDFރhq0lU?s^knW=_?jR,nm$.[FMx+~``.g.zҩ8IJ 9G pߥ}8),xH-'xuьӍŒJ:.'9F&>~!b\+qmGb* >pheBVB0F=y=utn5h)o3Jݤ$LüjQPO :) kJ9MpM"J(ɇ$l@ BgE1v:`naՐ̥=m`Q TDs]K˝`O ~OkZpJ"'054s`4zäI*U>YXX{e"V!m*ĈVdE>.ǿ$ qeptG'T2"Bmٵ gzEF+30<^-~N*%)c: I ),!&]ʉ܃+pkt^vpvmbÆ o"Sј$Lm)U){lPi>KHMi$5tu0B+aJiKs B9z^MjTӠos<_>Qx]M6_qȘon@8緗s_bxZeѥEf&HԠۂCց=((œo'Ql,C{ŗh \L{P4 1ƒch)պK%Blp$m攨ubs)=agKj-4a{#qUPP .>owCO官>I 1o 6x^Ih[$Vˤ: m|m[t6e/@F mfgP&{;WBnf= ̎:ÃZ'wү uofkO٠\Yk-cߧ՗Q_ s5-4N-IH=9tRYƱ2!?;DKܢ:QP%癴x{'㹷neoz']΃K۳z `$ {6u3Z&SYEK\A8ȅw #dQ -T~㦄>ϻq BR ȅ4ըa+h!da?kEGKd)<Oҝ(x3~Oj.F/x{{;]sv5OG@l5 ꋳ=e(Xc[;K:|ϸv+ψ @;AI^<Ȭ_ˡ]c0g87xw8["ljm;V ^o݃JC[0ֳla&Yr+q#P`~fjIXoG3 ztbbb4#jFj\d4%{'v\'7- 4 $d͹޽Z$5NA)5$V僑!Dd1-ohMLJ"ggV,TK$bQey{ CFmcR P GsQWuN~c}B0~%я}}y7Zr,| Tg {l) &wDZ' 6I.R1 _Pej=n"VOE[O-Tzz0KGJ*[t⒙C\s凧Iu%mQU g| UK3UHP̿)a4:c_[XxHC!9=WnW&l@\g&w6"f~rOKHDFkL0Z+CT}?ANq,^ThzT=N5-YhW~@tduEc؁;0 p^KVPF_ ɱs]%cDJk$V93Ľ$ ef?ƵEKQOV[(b͞cAc hCGګjO@LD*㭄OdgDg=p'>CbJ4([S[dͥ&,@@B__]/4&K[)f*@\Kz9艔1BlӰØX1VRU|;zIh.C^ziG cQ-wvf EVA6 FV6 2)c-H0B9lHZW)ߖRDpŢ,Ѯ9aP_NF@qڌhU gk5qs$~}L,6 ZaBqƓtw==1 _/f[e@'v`at|1s@[.휓"}(MiQ-氋Eo=!Ϸ9`D[,X4sc=4S:R$7k݉ f' Xq|^A{-'pxx;Iߙ<`q[YPʲhQ08 HrݝT@"}eh3[򦃍yT0Da]`-wiFnFscX'n6ɾ~\*L5%t eMM^ ~=' ^VXЗf8 ;,|eCx:-y:~]Z47k;I 9 ~XL(fT.a-ʼxGYL.nVzR3ʘ3ť*Bٯ/^ԡ+*KnjZ͊@l<C<41jPJru(c0|aw9=}4i!\B;h!0㡣{/V1M ևTJv $ 8,]xCx 9PI)3$p3 򾅌s#95p"\creF ޹f]O:5"O"gh~9` Z#bD51:D,eAU5N<;k(IICO>$RN tik4KlW ܑztB2 v\ڤ=R:YAh &Td8wv5t+!tY=c3'NaL sKT*;> vшvf.$Y`y̗UtP,YB]MS#7L+…E#L`[!gZW*m3#Lq*j{T5Bll[~FBؐwwPgh\#<fN--)~Kŕ+ wUBWu[ibU>(eS1fd"!i:ǯpVnuݨfjZ "~C|9Z8$0[LCQDoi)]SGj7vNcljzZfRjm4CjV/e1 DmDZ;s3h+~R)Ɍ/;1"WA06@ h?ʰOCʳs1mI]ո߄xZ9'Rػ>nOBSKqe䖛e>zA,^/J0P0Kn,({7RIx*&G> 5{G9oW#tNjk]:]f-95uD{-dxeu*JQIHwI=6*/Ѿ/1OaeP md}w"jj'>>Gv{J;#BJtq˶@6Cre|/BLfe>(Y6]xhµ`}s-1 &6U]̼RǶ^EaVg[љ}{S|h\ j:~>v[|jƿK8nޡ{iY~UY` AWnrNiW¥ m>h0Rr":%\Vy)b!4 `X}`L.Z-Wsrrlr#tG i)caszheImߗ>xM뺨O %4y{Ȥ375.>L3\KjP Y]( :)ϻ؜EM(l~͸TE-CI^|Vl@̂U6%Ӄ. Lς9nN K4Ϡ}?RC1 ̼KcCΏ_){N95O64h:G&q/O"-;F${R噹d>nV F#RXЬJ!7qs5Qr@lvkIYI`?ڷtޓ; ri#: #,Ltn4RSH۴z>DƫTWv(%݇_LV, Ǒ#RGM)@Ndh h8#( 5)Qa'I~4WY d,XӞ ]Q)Ζ֛oX,58pmG>c:8ANސm D+T\7+ۻbde2&fքC/ñ$9'zB {eEYv&ڌz~9\ݸ4Y(JӸᏎfpD.8y~Dn_iegVLuiʮc*,cīo۳)CشoSPҁWp?*v{e>>Ҿ~V֤(t4Ʋ.2.=PP~n@%(k]+!tNFz[|x SŇ}<jSO%_#l9 վ z?ΐ8$Fo+^OL!H/6B T;I0V]Inc1[(:|W C}h+'\&N6lŠ./SڙfHXu͛. UMXzdW ʗ:g XH O` д-oB)). fwg" ՀFOz&<3c -"OV5fJ>TW'~P=C0YfWqBc476cX$aJlBeev0)Hq~ȼby(GgʝO'sԻn+ ,S_ {]WB <rǽl4N$(2JyYw N[z,{-_qC\x+6:|,8&q0K`}lc-QfOG6, ] $kb^[ɽBhi z:06(T*-nrwĵQkfUvgVJ?M7Ĉo}S ̠gv '; 黍(A Wڕ#OJ߮ byt;X7gF~+^ZuDGVgQOmjZ1q1lBA:nbl%#lqYCsEg#5C(l ISrl$zpH:5mAZh*Xw,'0d꺝 Bd \ނNOQ0? %O45G[8%usC-~7AJM; ˴ ҿgTZGUx!Ұ\:yodTZ-wx3FBrZsF"ie{[kyh gMSkomhT^,#.E.s!X7g d8::>Nu B]3b'/EZg|W#ЋLU&k7`up\Y/iwqI5nQa=z&toJ= 8e|k朁zD077.Jvg/zU5%D+DNVK~q2W/.| Hȥ@/K\y-A,ql?V҈qF}и@¯'yžpOy\y w0W\oO!yYozctOkTհ U A *o50Ҙ-M$g)`˰5sK/KM7NQZQ_Z6:ZF'*?zjÙan(sx^WnJNgјnnV1U/3_ח֮`^1+G4i'uHI6KyY0]4tiQijN4 Dh5%8\7NUF}Uhc%) 1RwG  bhx/vvA+3dlgy&tzIlDK큏_k+~v)@!:54pvs;s MpK(+6 $j*g>%.Us#tQ"ߵơ\ $}0ũ  9nԪ鼜L ڱ矦u9B5ŋAs昑&qLWHǩF&s8gMLkBՏ "6i$tO,vG˧ܢ}U4;YzcGgY9?[ָoy`"HahuUdϱm jhin[%`lH؂OLZ+Qnh1n",;[oj17He7Y$ԝz15a>NF:QQvGɾةVl0:hFc5S$-TBɈu1lD|-~i%=2@D3FXz`m@x(߁KZ`]roY¸MEuȫ$Hty)H+y܉C1:hcюdӰ_]t l8>hQބ `|k Xjvśo{MHN 8ߦ7xC\ad~U2cvi;fИ)2;vɱT_&$9Ӱ4w#LI0EcG*4vwumS8IE"Lck$BQ#2.CK Xrr2'f}zӌ\g6v@-AXM{r5Tt 8*wNCiAi 1;G\<||NfUM ijؖNV],opI6WA3Lgu7[j;M>C/6_fwQȈ-ٱhR 6ʖb<Jۂ,xouQH6I! _-%<r;WζX> +cȵlZ9 .Cu:ގ͍3C$.$謳 D1AZ`E*.؏ ;-.G;$8R17,@C$j9^$+'}j6d3;r؅wR8a"q}:OX gAD҈:96!kdi<(ty';}N7E CB-a{hzVTRaG56z=@}>aOj#je|-~߉r._)Vx7cp\O*Q.xuo͠t/|5[Bĸ"u]8=;X^ T O xZrzz EȰYQJ.ܟ^R^:Yto򙮓0LэjX0X odpjv/d/g / C.]%iЪF5R@Wqdmf#CN 3na<bPn' -~\5/`PI CFhmL)@ȌԨpG˄oh0x,]$$0)`m?p&"YqMy;/&7 ,6 4J'Ѵ#a> k<5w?.Eʃ&e(k3ex eEQEu`ܜ1*7*$@c.B/FYLXjݬہKj*"qY~jgXH9v4ӻA&3 1Uea10kt@G=)-u憂 9nË.o6psH;j}suD?8KI&BZtWnB  #܂ g9SiqT@+#:Q=h FֻEk_Fs Ԛz_@~;@]d$bRXyFE:?}vЩ0w ZtNasBV{36l7>leC, T48Lon%D@tKBא`- V@nVGSB3 "4Z'9a^<)F&=m1 d!,}FIk+Z#گH7,LB zKQ^'In:֥&Ia<_]PbKO(c= *'@h?V%px0ff %G «WVR ͖pɺZ$'t0%U*}T`#C;)%DQ \ޤ>ùDKNeݮCn.5˙=Mj i@Mbx'Qp#sJئ:+1u#kEGI¦j7W׬pGC2%&jnm~H̑~_ռp*P$finI##z)9Q{{9dSWjsGoDfjuK.rA!9A.b:gr>amK"#IG"}D.IUW6_4X;¨h?#9&q;o(! >ysyI?l%5\b_}h$#-!\#^fF_x׸_z_V+P/zb5ua"#c9q{'{i^c^ǻem&cDrg3Z%>+_9Rz f.6eVqoHg&5h^t(Wp=b( A؇O.9 =ջCJ7gD.YlS@NM^jꂳd-5`LPw!eS֦Q~p";$6@槺KhaS/LዤLD 2B_iNEv m n_< :f9c9 v}g_A2DgSl|!hrWbNTzUX(V\ ٯ:K ,.4PaDh$ﶿx/"bX]k޿)8ӫ@-uJղh#x PގkQ9G'gT Wh4Zεe#<+99ō}C5p&Sˇ*kJ0매KrfCatehz#KEĢ5%kQxc>4nUKF= }os<觡$*o5 VAHy& Wp7,U` dJx(A '/fiR4_VveUq69f$Q0#L%[>{y!9wq£ &Y34$2#Bpa$>z܏(== ozHV{SY(D5reeb9p&X]y]FIIS0EW DQ6;`s"za]8Pmhhu:c;3 ;ͭ ï:"",/{UyaVi Fgy;y\07QG#ˑa0SZ O@κJ9A+^/e rDsyɕ#ۊ͝4Erp'mlJyEw'_#R!oGv39DԤ`M/VϽ]ΖN8Y#XFWe9]_v=;17>aXCsCyΨi6.F؅(-'_TLO( e:j2|E#+^$`F?,YEY`۷rBjPgz<٪5 93qꅁJ IgGHX(eb~p|D4"6R#L&j؇ӳcL^YPuq6i ϯF\+< nOϕx5hX"lBAϰq,>bo0𶾨n T7씓PgvL^L`%Tp$k- 0)MkvJ;# cI%ZknpP7FY zG6@U$JbdnB#]FB$܇%q By2T)U"}^[6 =^qp ~ )o߅N=łfM[f᎟(xS'IsRĿ4ånREנs0t1F)r&?)¨wcaO%1K-`h.E~ m_&sQnݑ\NGP/qǛu,hfK/&@~,>1?R ;eH#NGֲ¡?z)r\I"Ib 0 ir)*L}.c3%#SMa-/n~#i~G9Wiއ6h >eZ!P 39FԺs9eP>zue~!a?iJd2- rst,HT)HK'n܈+U۝ч6ߌhһU%43ϛ}(0+'9#M>m FxOţf `t =), 2Uj7Kʰ'OkSBqbWY/g?Z"Y+]$~}jB`$\-cV QV=Uw,?A%zenU׻o"xyv on];{ÕH%![ ֌L -< 0;e3 MWsRRڱr+,{8)P(2W P12qQH>9?L0WǕ:ؒXVK `,ʜ+ m}1K31ơc>Ր#.vOY4Zܷ{!1?]$t2vԙ =U_YskZv.evӝ wa3 !6,}* yD 0*w z<%[ q޾Owrd 2I)uy ۾E"buduI3"fS刮WXޚOHѭrKluy"wvg7v~<FDYR$ye~cq`zhY}1ȘoyQ3TMK f0'(!2Yv^6< o'd}zci3/7ֺ&]2򒶗:@ߝ2LO]|4hl BPxB+Bctb&b Hq!@Oo5Kzu:*b|؃3"m  ÷dꎸ K?QUGWJRTOuCёɿe8mn4/x.SH;fqh/]9R '|F3F/ƅ2EN޻M!Jhn,)/kqeFj=:ыONv @qU-w>n]5czaa E rvLb>Ո #5i69]z3]<^][.h}qs~U:}s/C588?. =H=@% vT!_צc1+󝱏.1x 8[_QV\6{)cʟyzVUL g0}F v!]GS X˛f9IOQ%|]nCw 'YOeV:ÒZ)UfiOi(ՖgXu1>eU!3V@HWNL.bIK0u{I+f|O8i1)~-=ߪH3D# ֑8˟IFnI $$lm׃Cg_>YKSyTnhA1(>1`loF`b B FYP1V)K&*_P8UCL+xL׶(L)t_ĪW0zћ y\\u8p3+jt@ww o2 beGΤnp9_ƚgzr߿ٙmY)&/"5naa'Pu;3':' -kQ%8N:Sk8`LXzHE}`=#SQ36X')Z0m}dB= /I>H!x#h>Cr[' Mюs 싻Z|,\Dm\2R^?T޽ʓu}U GȌ~Z/h2Bە۳y!͔i"< _%H `%G-I"^E%[Y1W k#B_KcM7}lr) fPyK!lY#Y!,3Jyy'P4XPJTn>+臋`T%VpU܎峰<6 Hto__||?qt!4_褵xLI폓o`?3;L 6C2 oX$ CWrJ$ks5֧l(#0Ylvc7 !i鶃Sf3v}i_D*N% fM"Ѻx inI$>jd/r󫅳1Pho_oE.E_Ӑ 6VQ[-9JFR`̘aHij*9E&8jMb፺ #Ov# r4% fØ7fܱoQ8sIzKs8uJ{h0 ŽɝͮE|s6 c=n#}glw:Yh꾎XqN3c<%tf\2 w% {E!6LEV>s _vя\J>7#8>ْ%Xt_H\kVBHU>Pmߓc%ɂϫqS;"K+x}mズf#专 ,ʎ1;Nid7{5 U`~V >l,\0lOT10}M fs$Ml oc}H1?N/}xu2rFR1?/!OKz}>="ѫLeX5ȴz"\ "d怊؋Ȟ]9CHWF Nwf'hV~ɆQC׻tb{ ^GsaJ59Ug^$,*nZ|NxPlO0~-gmMÒpO`qqKQHVb=4l3(*-Jf!Fz4Nx&Xs"$%YcܵJ9Ud=_,n穅-[dbqˣ_\.>4vGyY\bXG[~7_P3 =/nF%EwT \l@\sY)s#c-a߯&%u(bgs,܋pʩSk vt~ ,pr 4oCc~kDxGky_W=5% aGL㼃eJX5حI%_rq旛&[DJCHjtUIh/gK&2˵Lփ9؇l #<5Ӊ̶xAVmDqw++"-^3dFyb7p\l_gt'<]dg'*0h)g+rB(ڄmI;d 8-9w@V!yܑ\Z|/\]˳t ~2zF1fǑr-J*>]Q.btIG`e {y~RתI|0+'_>$<>|gJ=6\i Jrj^ȪEfAΆNèu{ehL#NLCMz'8 _TH41O:J//QM)thH±ݟm+$"]T<7hàm&AYH n9  TTI Ra_齮%,̘$fGLڣ0$ cL+A@3*yyiSUlCHx$ŸXس8%2Nf_֙V GI`j8dohPz|Mjljؔ&O>?脌b5uLN<@+m#ѿHo%>2O=G7v!Jea4OQܹP/d!O_ E8Z{`:E_B8mlms1WPc{A@H{w? ה)-M}RP9!Ф44.9&94(aɗ4`^3|WY\ju'x_b{q8UH 5DkЂU8I(Ǧ`~*j;8{‹S8աЇ 0bo@p#}զ 4^M^mĥ9^g_Va>.9_vO zUG1>^Z|DOJ͟b1I{fͨ<pa .1VogYnxnJ HHAT<`R؎Zå5+_f`d7t6oPԎue}R: yE+ dnW`< v @UXBxdJp|l1G/2I(h>ϼ LHN+j\2T,:W˷ZJQXgarP+_^Yj;V ,&̥̏ 1&pf#fvW\ =0xoqu;+0C$rbw0Dz,mf7~<<=NFqLɹh G){?NtvkN쇵ʛ u #;fVH9_Ѡjhu{DWJ\{*5>t!TU d+ P"g)_i}֭7\t Je3䁗uBm՛e&|ɖRU$2dQ7?^, D78w}D@EOlu"^C2['L\~y/A9JmJz6gI6ʏQGSX(c'\/c> jH lbK*}%AفAUub b4Z8)2 Hq' !/C/RHE,ݨEG\S>=4OaOOHī!t•9= ϗ RB Kj%x vAS>JX D`dQSCDQ:eB-YAzKFʓaeyE$ IfuPW+z/ s` )fTF8S&#gq[ZLQ4Cwļe%KBNV~}|twq$\{{l7L߮2$#F%Sv뿣bձYk9}݃dY#C<#}&O$EOqH}EcO spaB||An/;(qqڈ'@dg6s;7Bp><|% ߼ 9 ynkͲUto[(=k]$Ina3)1O- /m_l%«߷hQwBܝ %q$\q-T"ff5T)cs`wCELZ#I.6gD[!ğN:cKGHYū$c v5)>HS$j `:\0[L9siEi5e-^($Џ>Y~JίWEb-ȏ)/& 8t-lDH1"3&*m2HiˆHi4"l" hPHƐ.`4$llie?qU?TS^{EcͦR}W& LGcX8T)h(e R0q3'c30;>y!usYqM>͙> 9 ۬IH\Z*7M,G|Z9ۍϮn?eÑ7Z*~,#ᯝQ5fF#y/ߎYm2rQăx:OMN> 3o>E2g\~sa SF1y6h!@SZ VѴ|Zsy|j.4{>͘ }sZ(ۜ-Fz^Ċa=,W-71Ja+$r΅c"R60@g˯$pY>dkc'LaGdF6ņzYkC+ƙ{)yvtYL 5~1 sG0*bGǸ[Njhw+V^|5 oEIߢ<&_lZQ%rP >j_p"Ê]S h*x¿6}x2&7ȖYY;"'5h a$NѨ(zG<{:8Lk{+^K0tg˜oJGT6_,uK9Tҧ@ixFY>7y2YƔ߁? 7+\߄4TQX@ݙc\7rl& N`22.Du˥3DZ2YaU{(Z-t >_SL k ˂)O#B⓶.F>ϑGc@=-:4չ6P[P2֚y&ciAyeYx򺥿!C* Itr"v,呴7="8ȝ--Ԛ,r% x_pǯڛL.ϩZ Pzuw;񘎃(AgeOeD0}M~`CSJ, '6ڟjǘz6ޮv%,MI_>xd[!COv͖VfM'6̭,sN|݆E7)19<4|@,>cxUF]r/,YȺ"”yQR82xk@l| ;d S̠ OR=VWM 'Z*(F @8cj_bo jkPet IhGCi;15-+m =Р }6/3"MYT֕)vCgv2& HLW.2Qᣣ}ڋO0.I0/19^KG~ t]X.uf7 [i;6"h񶴺vqEmf2=:$RxvCZu+_ڋ 䏭uE,(tޯw8g,RP%ݨZJ+&vv)Ts2-oϢJ#󣐡y_B=`,o YY=O 5֘˦Eۇ$FFgh\SSu_.qd8PaG7mpTtj DNJeڦ[í#]n{ v,a!6 =OYOi{R}w5k<uՅAoAcլ^Dص~ HW3;D9l~2꤁j}変{xw6u3(E~ Ft8,%M?_`'PK0y-b4OCgw=!"gtq`R vD~F)|#ϥ4k1PuE@NC9KأZe[&f>G9bpBfXhl ޵o(C5#_}m/%Ti$Qr 7DK̝!/Y=q#mսMy9n̛f]a 'Ӧl"Dyі oh#m|k[ b:p-6߶_M,Қ.] I#ȷC Jm:+}>w-ʠi+9'7A/`:RkYI=8ӐK]]t)KrHKܳG9t2&K5t"쟍,_yv>Ncp&/k`?2=\ӳ5y?rL0^-z/UA+5 &'hk~04tS3Zo &+FVq]rmDTD')Ƭ;{1'n609CYShc#M[{$I newBfZFkɽ}>9`MĵF9r[*%WL\̠`uէz=oڕ,1-j;kes%f#9k!8RP>ٻ/*g x@Y#Q%Yspb/wV`Qc$EaoQIIyjD'e>uVBRU25~!!FTZRc1Qyh_ Za:p*-@4f"b',Zx; ŦRiioČ}RxUC$;d+Ψ*)UzU|2P<WA`DY~k+ЉsQ>ƁfW .9Moz+T'\qh~QgʄG;!7QWz/lg@KY:E֍u`U[ :A%Z![΁2[vwRlp:%abؕt1Yls &S~~0N'wvZΦ:s.Djl*hnb;4")Vx:V[#T3#=Jt4R`2ʻKVGUSޛu3*7iΛ >H; ",C6i_hG{ka3'Y3e )0\%Gō^MAwZN5[ w%+3vU /vB~ee1 X%(.c*]_%)ЖfA>`FHzbIsWW8O_-7B]hGrs@)4 }tF%t/&gHaݱRqp8nZ ߅zfͅ'4Bs, 9ªG' Ƹ0 xS=ՏZӧna0Fj=+Scr [,hA> \/+NAV<5|${ydf19C"pnn*!ET\xOKM7}]>G4˚DqS]4*aߥV(8)ؿ븦q7M?G+Xond2^"QjLDڤ=)4.MmXKLyOC[W'لک}ҍ>lbuߥ~ `ZW&J:x>aDS)],vcN7!u)yPU+d)ȹŧ){tTq@nT;6; SQ1f]OJ*UUF_](g C1/}ls [i:uk3kQ9ŁMǐȣ$oZ2E_wpk+w;e)^SrhfvU1kM;Yɀ,pAL iJ޷KyLp^^x@^XKlDEd0tѡn |ģ>`:'\X.&v4\rcv%'f<mضz7{5)Ap,s"*!BQ-~ksO -u3r` J|K,R\-(EhyF߆gIj)%1_ ra7AlM^f7GtX@T+&gA(nwhK1ib>D0 Bu հHۡ*Raj0R8% tdVA!oQK4yll!QݐP$ihgIat'>EsEOw!n$I.s=( s|PPog;Š3ƉJr }InNWHmUQO$W@VB_bbo pOu}R|cwK4."ҝC-ajD^z5`,\x?ir4o5Zd/PCKп2gB)rƪyU8_+]U`9,Tȍe#JǢ|f<#jD_^$m!\ǁ,u{WfB$A3/^ {w1֫O7[1Mv^>nhGu5iwO|~"~0LVأW $^dca ?N Aϙ7ڸK}m34n"˫RQkI!ttD]}-L:O^;`O P~<+ىhDX*p6wyĝjjѾ})I cl &wv%ݏ,RHZwHFl&F&/F'D|{L3r9Fz,[3Oq9҅1`tA`ZF8*Վ@\PRжv#cܺ 'v6Q`o\X鬵nnN*3bAl&ϙzs {1Y,YCHuK3,}eeQ^)L ۻ#ڰ ~dyF;9[C N|sǚkPVie I0kMN"ʹdokK_J[!&rg2,V3V7G\)+daXAPOS5N9'mԩ G]^8ȭ]T!|8t,\eM?D F׷O_fҭ|$}/mU{3@U]]]ٰ v M.tf舫  J#_Vo&J@x+Չw/y *Lw.J,ۦE6DP=7uК+ CPRQ)0)W}!X*MSpf U/JvUɏ3:sV6aJqZ02Z5>֠[,I-h0-2DO血qC}giO&JcznS=ْ0M;/[`ӁK1_3įq>q| ƙ>K~F{;X!S+áOe:7?]XՐKח72#C2;M|]$W.;\9\XHkYGXQ+xqMY*x>ֺذu%rf~$1"byy.fg%:iHjՉVy{s}K/Hռ4tɃ\L .)CdU#NZlj׉*\WC)~f6Lm(oF!;)ROEI%@'a]gNְ⤏AΛOK}[D #ak_`s.gPwu27?-K]#.bh<~8xBK^`_ם 14}gmȍGC.`<]w%֦F0[LVd $E%[R166k΃e Vq[n5nHBCdVMoz~JEbH9UҭC :*W5_p'#sy n>U@97CRý]q`SR0Q'|Ml܅}{U CKJ\1t?%Jq7VҺ`e[ _[e<8A^1#)QK c`(::?Nvb"^gRsڽ@awM,7Pth,4ޚs.UP6|3Tt`7}c3G!O{d%})K9%~#*J= j H&q4Rv~XB&%')hR-lxD7ch8DS1?:SvJ{mL "pŲ4;$p 4 }Uຈk"r[d{z?<6W1Lɫd7@h|H:mZcvJQ=J 7Ƿ3)zi΁!v4ab~TNC sF}bu]xE5g־vvPm*"`=BNX6MB%GntM|1 ěg,I/V&!%'?ȆЮpOv!sd$flUF=TJ% 2R4J.eE-ɤD!TkF5 J&ݯ}e$1,kXA{[- %M uÜO"H߂BPRtK h =e|9àT٢<5SQC*%5:\r^̀^~ROo4G ӬtY$_! 7l_N E) 0n`-}ٝ#\~bOëH<>Ii_}0Jztޓ_aVXrqc{w+8ndeΚm8HvA^b>DMFzc'kJ b3@ g0;(+PgV >l£dF ym(4 [ߣ|9?,{C't8֨AJc2|7Al }MQG#ӓ*'yTq/i n| -~⦖W[qq/c~E@\t\ZQ8%1iΫ-RLg^5zj<%T.sfF9|gEd `vHqoAfaL+B?dsXo}R +@ F7Ǡ+{b@eVe&7G_2䲹 J+t c$>6ۂ zְm=WCMD \gU)#@F|bthֶg%VoFזPtDw]N-1@H)*'BFv;u&$T-5:tWL2M/⎜.McF*w>dzZ;"S@04xY7vhSքr}}HUvY:7}A[l&7;a@=!gI E3jr#^q\*Vvĩ9=FCI<Ϋ.Փa`,@awcm5b! ffIRԣ;}6`jmӏ՛+rz0 NC_>uR |tQgŻ(vԥvL: xRH+XLH DV6soӎ_c)5*+[r։P3tj*%LoNܴ.-!yk MkIxh芝CGSkfTZh5M.NFWE7*8r?l$^/[/%p2}J]}A{lیC VfiF{m.束+w.Pl# zrNRQ69Nw:mȚ6lfѪ5%g hA,*jh%|/kCk3lCI u5‚Fs&~PNȕe'?w䣮՞OWeY4=ߨi@qqíciD8m]?̓WW˸4$xk*w'P'zYC6w0\Mu]bه#`h Wq̮o0੝] 2@fB1}fd_7txv^ ) (ptKmTɚخdVkx}%ֿ?6DTHq6 :*.%}(7ۭHkyEaA|7m]VqFW0X~C)gR ytAdX8~Q+7;wF e-Y~:wwlVvB Q;BxE>.f af[|<+:E8x+]UxH@bhwN[4$DcRyɚ=C>ƙEp̟-BUe g XGٰ`[l.KxG:W_'ޔG)8bm,H&JJZӢ>X)4 kw|Bc[OѸF+T@tlq@n; \/۔4)sS74Q%uaVgf! xNРSiG[YSg$^,2 Trr~ >^2P٘:.a`#QtCwB0&eM1d]M59ڲ1p7EMXra6|N1!;o8fd 2TGƝ΍3}%rpEV$R61A&6j*.dvfw0ui DPr–=Y\Fuw}KaUڏp@8N{⾶X>C1sp2{c?7NNo b2!8EI [cHg6&)>w\Ax9h̗u@ *FK_0_OpuD 8{jr"5G];{&{T O]Ojx+ r/vXH0IȄ*d E3QyM=ZN =or4 ֒I _X ǣ#úF#`q#1/}^8d>e[3_4L9_DUdjQ7CsdoJ {O#[rW*v9l MFPVJْ.Nqj(~jJozLS#ec/fCJ'}P. SN=D/h%bo^/ ]qn޼aHw&4N{vxNJ|w/83]!ԥ'~A]\`(·D#@CX\`heO6 YZӲ$Slf.+;$(se^rE\-8s"@ڇ 4f(3]V"ϴ_|!Y2/ƷٚrAxUN? ",4-izX؟F-y +H>(k>* LݶO a~$![OӬU*Ԯ|DkTkHI:X|өt>qNq d%y6ohdȇX}bL'Zu.Ngpc@zL1D̍E,ApꋑI{^13f*hwcQU t"o-p󙿧99S(Ò.EϷo|'Ó%AmaC&_(&n7Ia$ ̣g Shd=x`V3t%v-R#bF㰮*-9Q*FS 0hL2P-FAɴտQ":`02,qWXgAݻj&~ ]fGJp^&y1ջM饈>辛-B(_fRG\nŻPsWWD+Q{n,|m8nS΍&NpǣQ5MHWÚ=l#)bwo.3LJhH 2Θ@ ^caW 6@⣇Deq3ZVxY^L0*OlhL񂯸4V>Xp㻛&f$*=CpF&bpHbݑ0AA5Ÿ>{%0?b9v\-')Ήe3nqeBc/tJ%]A4ZH8|NU' >%W*DzdUĘ-̪Tv2H3ܾuy>PE`ȟFgx&|z/39 TH23srHuK )L}G}܍H"f~T#֘@6'p|=W?ךV,Nw:*2P Ll5QΕ46D|/ ]Bdo"EDBu$%0ǶT6` x5\VQ5"-$ _&Άaƫ؝~G%Xnbք[uu=V9@.^殺p yVaji퍎# Fps.f19hy DS_Xbx^t^| 8eL_s1 QI Jڤ슼` sdR "AEy_wӂP Nn e'+0PWNi6aE#XeZEr,-vW%vD҅{RB&J`%(ٌpd6kĬ RR~ں`{t'3^8LAjB客5 'Tÿ ŸMis~q]c#_PzXP6zS LUzhS@•4@qpYnU` (rhА+{daTЬ;RLV4Dr*T=˗9XV $iFP }* ], ?zRwkl=eNLZc _a(K3Bfiҿ$`u2@[ 2^J~2E8s40Ƿh6?l7sϊ>N}&,æ |1LY\]Tf.GQJ F ,YE9U5IMNsaiHbTĤ+W!)I@He7=̵"ƫ4WhR?4lE\`Qc;mp:ۏ*=W9ɵ0-lzfKj*Z8 8Gyhm|QjmxLX%0QuY׺M8?.B/1)WI.V6:2MSK5',}B`k$yiL>#ElR2y_jL)*&^4|_r#(Z3\t_b:ǧv-*9jBX㣭6 ]@}[Ӏ8Xu+Y 89uL)ƥp(PF ԏ ċ!$vy7<\180, 7x'Pd?Z߭Q[ZA'_0>9lu }0ٴ'v%' c>㝃ճ5~_SE gnk3OҍpƯLiVN;++x\I ?TDێw[Ţp74bOe΀u;+/w@Er/L_Ԏ"|cC=&bSk{-]nhL^VxD,hUte?8TKIWW /aG]g&@Q-Ӗ2Hgv`[ !7 Vrqa#>Sc 4<ݲv+@U7مфrbF,LЩJ,ط(VQzVY.s+su5HO~$((>/FǢ82q|eYw2~ &T.(_LlJP5\ҥ)%ArG-+~&ASpgR2Iɵ}8ϗ!5{$c)fpq5SA"g ^< UwmA~5'FhlH>;@ҫ;p0MqS s:HA,')ܽtj5D3!(Y҉ط))4,!i[F(39s5~HEwB@7Yc .GY:^DLB)cU{YMx1dx?X)OZ{;BiޔB'e}f1F-IBQ]珝9y~Qlc A #Uε(&ʸ1S)$"_h% Fybۏ;d+h4HPqٱc`pd-Q| -_+V b.kR;l#/XdBMq=:b{U !ֺX]dʆg(֎Di%@Ns (5fY9^njg{6:GM+rFO~ˡa@S!3jBH1g}+{p[ݮ}V+C:6C!rppi69}S$PJr3mwݤk*S4]b.3FW"6bH'}F<EDP< J!~TIlr; L$p0}:tW&' ݱc R47˜\o&PZ4p_n\Ec@i|%\?4'}<5PГ\&֘Kib5g*ڕ'Pmyhl0X1@ypx$>ȦK|]ZIa0feU!kճme0V:R@KNĐioMf^]6,</& {M4 &{^}6_-y%-b{~"4;r0f>)'P>JOa{VUH( NOG&rHl[CLV@MpvdhĜmPbA)a "o J?\@.I!ęt,V?= y~m>ms) `Eر8\.zFh%ơ۲Ҝ1KiKo6()ONz4ޣ<,*{Š긼6e(K^(pEUl A,i|0A5>CY- Ű`)jvq, uByBO2Qa1rld7ΊF9ӛ!*ɥ4fzn0 ^n;|$깫>]Ǵ={RcdgbB'@4p/~VSWiQcӋɩ{ M%/׉V.pljj "X R6@)hJA S(0NbN(5 SABλbIfRm I=I*/$ RӁylý$tSE9>To8s.CL}],&=~kmR@#z*"J'rlU<ȂÞhQ.QX0sΕzkʔe•mndc9-tI Whv$|{dQgm~ٰc1۟ё|V2sGo02)us6H*ucBDpk㇜N_+Ó en)?&=Z-\N--EbbnVf"[vŀeRO-خ)1RAItt0L"M?,^POpu+s=dglܩo qg7~0Y7dӂ$7戣3m_o{M)P|[>?bSoj5-pqݿl(1JCJ"q>6I% b;ֽP8tuFrkR;Ab%;9b1X c-qPZJ ٳȊ|휷!ڍ%QYC큅2\wR<{O;B~$2l'eE?>ӱǹZѹH#f+<Ə$<3v^p# I}+hgKg([Q*,b1G0zS I}-仉.4kc+䅂E\1;nawi$ˈ 4=W>a4Hz?la BRPd5f"(zP-9DFx7'uTrӤQMJ{}p !VuK^>vOyAzjGx'smʉL9-~Q_k u.<el1_CҠjаGqy?52 Ɇ?35/B1@T8s)7 V BܥWa.gT;%DZo7+G^Ҳq4l|+/"jX0yA)b/~@oESU.cG:NЍe*ت\\U3ƥ VZ˫םF,7ڒr euO2;/kZӝjҁs[=[wܢװWdI('DZ6۸ Y*~b6 Yj[,l[B z R-#]GP6~'*>Ywt=Mzah ӄgNs_ѷfU(Yt>q]hixh1epJ ze8;Zæw_&61jߦ[,#~B6\f'[c0:o!lUӚ eRI^i_%_ra5gp4Z4,c- `PnDd.?+6)|hfF#xSF"{&nBwPч!z >-By~~.N7@< DD2 N@T6xB}J+CI=A /߆Tr03"\}ů:M@۶ڦ;Eǔz*md^0Oc%pU[^. trW>[F%܀7Sy֏DY k:Q Sx<9F?{s=u{?Zc<aRqN žxv?vf8Ŝsc2 3W# +_N6/3b4ozu6|]ޯL$[h-Σ Pjk!Eas|\#!f{moWsWx\ и[%.$bA?WAz aE}$ЊhƉYZ]""cS? tI}K*0%Ǥ;nJ1BBr g`B4Ҕ3ơ켌0Ja\΀,#dDڣ2b0K?Dcff1]^VnE7S }>H?zbB3Ю t#pJ>c\ &*510YD0R7[j|LjwidQoJ;E9[ć,vw=Xc:SU]IiJ,Uq!< D?61fI n "ޟ%oJ66m/sa?eaz \kqpY};Q'6CMQVÔg\A\ =.)Q̀%w1=EnT?qӡ ubFiϹdĚ )KhLiX]zz˃pv^QCOBI:PĊ#lv4H.zRR1%;%I= Ii9W>vr8y6i3]&Yb?^#|:fw:d_נ@E~9N#PG" ;Y =!eڣz89*;ƞ!XvR xF7{U.WuM2G^ӄb`xATK.^\hT,d\j1*5*j ʻWAi&`1旙9p7m3OC6PtFOǣӆa({"8]mA['ޖm2cR+]XSU2xp[$3#tD,ܫxǦdDkynP,}8+_6f=v@[4 nc$,$),iE~r2]e_W-/hIgt*ᠧxDK\  $c''1Z|*&-8:FVpX6 * +k\}D鉶L`'_չrB5ŢMmܸ(bgЏٸ `3mƃ0tG͟*0;|Æ/Ws_s:Ǹk~ph5?Kd=ہ1Ep{YA`B*315ߛ;(|Xõ?g۝V=lw")e fP1xWH\B!^C?]L%5SNmajwcD>& hrVׅz#Snb? c uI向_lг#{RG3Q5T&VYuEM7u Nf[Xv6p!+N(G 8/O}$%. K egՉh-KIqmraʛ),Cc=QrTƱu[#MGHvn3=-a_zqCCpХ\!=R ܮf N9cǨ9z<FUv9[[pW 7%[?zXY(/w[̡d..hjnT]c&#,^<.8ĕ%(0O 4r-n< %Ҹ):ӂEf? S_Д{ gߖw+i_u7}K6W袦LZPN`UqS>DZ !N7"3,uߚ!,uqQ|D1Ɨh̨)*;tȟy?J19T$x-ߢd,9T^Pf2 ,\u&mЂܻmw4z@HoV7"Z6䈮;QnvՈUmj-F'kA1e)ٶgkQniZ-F R!Bw}/n=sB +* ( g7ҍLGu5bcѪ>T&o> "-'>*A7tJvW) ^Ѿ&.3)WuDd&gLFz0ǽf4Gx| (i$ k!1fjв> 7?g=y7 v> ^EfgP3ln[ͳaz{}?1ERnH Ɣv^]lk!uZڶB|6i{7s!~co1n%' 1¹Po2&=#R^R6s]Q"J;MR ׂ֪5 k~<{6)fp\z n,8v ! ]7(@-֯iOyz Ye:|vPJ NE4}`ۯcIdkKͯs?,#gG@"I؞Qg^ EpwK?GxOwy_A\\ߛKǠe6cV i ؍^G%4#wK+cN0iK#q PBۆJ%~Hepi·)ĊŮPTwyF3ʥDSNv>:"dpHP "|Mv?|6W>~ܮ)Kh$;|z} X`Y!=;īO̧@'=Hkcgy>«CWpDBWN^ڙVmI VUY}|+7L_CST 7f%P@-64G'-TM#xۗgnBzgVD^CΤV?bl&$KZ"Ud[/YeIeh/}Gc6UBpujrcp%޳؂)zz^ҠyIcq[Ѵll]s:g~HTC23{*-6"7n(<ٶ:4)L0Qc,A똹%t ( uNv8[ɪ´0xؒXqR%63Ⓡ3I9 ,!=dGuCd[R8=a DsⓎi>vyPRg^c=6yU¼'ZkNŽS`Xٵ"$^ZtQ[8YZKthx@jU684?nǴ2-Sކ{ ZH$dE]0tawi+=\TNdc?&@2dcqۅDs?vB[Sp-m&@'Tz#ټFk7i-~rWԕؼ8dXVfヿr[F 1~GNΡ@șl2 ɧKxo*CGܨ]t򪯀-^9gtC!:~H 2Is)?y\=z&sΓ4'o^^;wA|3sYHUiDT/F ޶_Fx/~z#T@!K.L?cM$ KX/#pWVZ^EI * {0 ħ"?;^~}_zOr+, }{U`uUQolrkqAdNo+⎹PY.*s }0ؓYE?MmKλ!)ݹGн]%eӴ6T7j ~Uk^14~I:A432PMu"X ݴ$EA:-Hڟеc7",+EG*ɬӷ̓F+C(P ?TKE1详o ׋]:ףg9ֻyslÁW5fR:CE(Jc$`C5\nb|9.Ȗ-"*xe B'=.X Z= H#:*c-Y1p S?mB5Y-QϾ/6RF3P{y9Kzu)!dxu*W㰮=}|/Z!hm>ԓe#1:0CN+ 13}*}_`Qށht3$Ped{D (C ɣXw4[J:`soT]G,E@C~x,#RmG=*Id[Nt1{CX&$_9wKcF#p˷`N!}n$z}c&y{6u0RjR6 N?el 4f.WkcGi} #[rs{lܓ4i )Kv:HW`Me`&!߶?/Ci&@Yv汖w_I!g٬Vgsw;oތC'81I*3* b\Q8.)Ag@EN(Uڅ! aDa%SgP:`Dgd^! gH0J Sp4PWvlI,3"kE4.| lm^_/ގhuX ũB2LVA8Ҳ'`"c汼Cys?Uaԝ~Nķ&Z#j@/ӝE0R oy &D-%8P8KPvwca&A5~eAY) ljX*tqAۉan`'7$djNڝ˯&C nQ\sv jПx/'Js(nM@_q=3Hb.V]sZ$yn[bQhT׵%1'B-mrwr,ҕE0Ͼ9J z6|C`B`G [.0R +BwoW#9,a1gkD&By.Ӝ&(9cK?iN ġs,ɪزsY}qv6[/D40OhD pTPS:I/IGfܒ|r@J\5ͅDzoZ/^~AAQ9@|y]JB&yV6xۘ7HS-0k,W>l%W72NHKC'p>ݨ:Hİ$8ȊG$KDH#ZBBkN6FnSa%Ge1K_WN2-PfsAk],90Ɋ0 ƅC͋$zw<*.z^S{;c-$cx=5CrbF@VHSwO_E{*RҁeDS8(d]e0J*|MxzL[kh$M792iGj! ;HZSCfHS愒Jo ջ$Ri՞N3lz#)1' ~T˗ǧ<E ׅ݌ ZZ<ƊBP ] 5^ `H4n* h].YTwB>ZM4CR 07o?(.5lY/ڥf4Qh?%8 YnoM{fξGEt ?)(52VF_~h́ݳD#ʢ"F!2b3F;K'"%@i닒o\O7|1Ju{0,cKM}0kŨnxII) ;[㜁.RXJH Ll`ZlŨ >PaU/s.dT^)~B#t py}P Ic>op\e=)=_\_!j$\Tc7'BlPwAR~L"aN1MQꓦ\l*a ;4m,b=43L<]ADQD&sQZ=עTƲm,?fz;͚~AUF^' Oh.=(3rpGүf#.i;Pi2o8#juM[cNXǻwVlbd, l"15>S`ߠ!=( *9 Z&hh u]A6^9Sda,Nt!"qPCMɥ5 kD>%P^i3;/[!J($NJ'W{XJ>,L#ċ>:[/κ_]G$J"]գ!ulZ3\XyBFA^3Bܲ+BEGVGGɪnY.<TPF-.9U eI5b {?mS y0nUa=ٮ< ݀wVjS kxy)n_gg?yo`WeI?Y60OVttdnOnfĆ&=H@+iquq./hnVMl\P?oi9B fq.5IyB20w !sɍ_ !\Fpka~wTӺExA WAYvĬ 2=#z=Ц!ӻ1]I KB홎{o,bd٣h&!& X3)ȋuQEQ O8|c,3o<s>\73/",JbirKfI.p1u~2<0X9OAԎ =b1D&%:ޤo)s|玻M& ˟mIj.EW;0e&FuyllYu&+=܉l%7%kk=~iraD-Be<ݚIQ4/HE,rf#X|6:7']Dۍ1 }ͼ #Ic0K%vOfߓnj(IoM = MqNgvIM\FB^2;p$IҞR.2ZRTx ʹ=aJ2Bg?LRVJaj{xḼ]}UyVƭl$cG0>8eȖ$ kQ#"zd{^ =Kȳ5 w7*(QZ]$+":2 twn'7gRx$aW;ga1q/p-=L~ms&u*Ơp$z㴛]q$;7J i䔲3UbPԅ6|Wn+^b!qc^|4]~\g<4@08L^l=9e^]<"#ܑż+WU{.BP`(]m" Q9Js ai@$GXAv 6 ȥW/~4?dt H@yhZD|/c5 pTP#)PLKN 0Ic<N6C=Rr[5϶QS> T0>YlVtcG/+[@ AZa_(1GePoJPvLQ!?Wrab?2 r)hWH0a-A mDJN)$^fbAVȔb-Dvu Q{X4j܍swbzDMpGtjwn `^ sF*k\ߋXgFꆷ|KEVb?zIO cv7 lYPfrx*tpZA|lIi,UU] GxY|-fY@I,V@$Y!{f}!+#¦dy"7"6Zi 1p aI=UՒ}) zh$ƌ%\"-7hk,3V١E 86ӸqՒ" R|DƜr 6Iɇ7xCͭvhM E"PAhf媃(Y/n\hNSu65زo0DT@&K2$4baix3lXyn*aDuJГмb`qp!lAi)ۋ'S#k\t銳|hX"Lb.$k'Tjw fHA;gI/ ӟ6ǡjU>t'ku0[].kحH1QWO WӜ g9Y2 a|fhZm1Rp,.}%r]%/Ix"+׾X@nK$Xal[--,tzK=|7KhJ`{aE׷a&P$2_A9+m[7ڨ+OJښ H^^.ێ m lyNG}סng%cx~ӑ3ƬWdz,jæ=U4Pzn&KYz8Ǵ$RdCҙng8ögOECC@z惧[;e5,*DTq/ȴ^[YB\lȞx6 t)힌FKbӢ[Q^2n=k61?Ǵ2 i1*F@ywޠN^4VeˇYWQ_5[BWq Flc.ś pD7ؿ~KG,RKc+O`hlhǿwt!{Ax4k+BVU^_I;i(P3 wVØl&@?i*< zLaRhJL$^3U|nh6Eq$&geq]sN?y"=XHß*F`ddIlܩv _M[$'ˣkCU Y$Ԥ3i5M[׳/Jn#ܙ`YI~HdGډQjjP!yw_Y17 sAB e%ǻc Pe9ѵ14:?߹GMb "5sWZ]8\ֹ)"ͩܩ(36 hs %%ɍ/&f%7&G5ީDaQ k is=^qưIUMEo##p3<\nFTќP˯T49K<?O&=i]N6o5msk<?Rz*pUDa-&/A[@JlUFD61Y/<33Y䀳l 0LSvmo@_/[}BJBSGɛw+1\yb ub9TB]Ct]"X9GÒ=~D8Yːw'J@5?<@@0}j~E:ล}])v8K_a9p)~B/ WE5-D\ӤHӗ)CTzEXz]}H2V>ZE,P0z=\IE ĽݡC1yqHi|zBƁStzv`m{Ƅ)u食[}L8Q|e bۛ@anАf-ת*E+TPR1#;9yKIåo/jtS 1U5G}|9oi(0x4mM.JMpG5g幂]$',Dc/Zil2'ݵU?u}Orُk4ׅ b9y]wqr>)#><9%O 8oAEqh@.5Wz CF}#6U6ҰU1Q2^ʏlr)uZVmc R%ړw.VQKul4XC" @cD( m5ܵ/G o+ޟ\WK0ȨCMjXRLI"D|o38f]H<zꌻ9*!Q8+3xACR@!8ǝKʟ,63UfJ@pцTwʉJGjvu0Y8P,7,{K(ܱ.WK`A%9N-sD8HJסa y JH)FV~;}(?T-F?`cׇrvCYHq-E{eCT;c[޿tmAL k b;/ˠArh=xJ;lIU vڒ*5UBVC󣯞iAW95:X|:0;q_s?1H,*47:ឧ'_2IX#!˷@ҠZ~:A2yB"qj6&e3nߨ}g%q)do@2]#nFX=x)}bET8g -ƨ!Qple}g@zqGYxMT1J<젎e~R,: (Da3÷xvoX}kP}T.q7} &-ia`5R U({x[|ͮ<}_B6>`/eanwr&n\:%e2x$ppwmyCV!#Su2-$$IxΪZ(7Ttu?P# #"]~acE:i@ʿra,(ӗ"նsBl}iVH)&<szP12^lҡz?K+g\z=H#Dl_wW>[ Ԕnjŝ,Ed+%|מG@;ei/nIrY?d?Sdžl"z^89dv锰(ٍHql 2 )ҩ{:'[r;_}vh|᪣ .kA['Z)r-sŸhOS cQfa7LNuY (A(UA|!/.spͥ 8]LzE!lPm9,=cg>Ӹ7:8IUEjhxݨS]/Nc-{pjk`̏2 ti-9t#(egL2"g2|A&Gx)O{d")P.6Ʃ'f fn iJU5{3#x&]}*/$aSByZE/W2C-*_eGl$C}oD dVHթ{afcb 2ĥN͎a}go+tolJ_BuW  RP ߊ909X'QClN9ϺU>|q9~?n\woլ%eݧ4jaq!(ڸ]3aqA;4.oR <t~%IANsK r,{av!d"ͼ"S?!yA` V jX(b6Uo!EO {V#m]Սss0BE!LMS`Πkꋎ#d6!}0t9m&\RCHȀ]IVuD,'dWEo)PKu=tQhJWpRǒӪtc1͙A[̱L%bx& qlXnpB߂Y.\|'ڄB87}B0އEt˅kkTYީc^0q$R|vӈhd.#Iq]LeEeh JM'C0:~Y὾┮`\GjsZiCxL$@UVN +@A{-HF`AE%t8d ճ*DաMcT`#Oy!`ǾLH9ݙpvx 8YW'N}Ԃ^Rkh~Ԃ)8HdGXH R5ۇ1 j=: #ݧ[= ͿuOzލg]wq:vLTs50ye0l[}A8.pGjTZC.*;QkLSsƄ,)^y  0qի$6-l|biKUeJ8DŕX^G(gj*,w"b; ӏj|԰zau]-U;$Q51P*`*CLPjAB>r+sj>v-qՂj(QqNG{Gc}W+Ik1V pa&LO믐G{:/BK KagUqp~]8P$@vjEg[+Jϖ0qnjnkJť|`wh) R?N8a/16׆YF|-5MxrM Sʢ96nFVœFI eZ; _s/Ft`pU}[Q[51 | i `}ӗs\™ z o@>ҿ\~J#C" :,Uqz|), \1||ckޔ/̖mJn["džyH*~~#_#p"? M<"߷Mض/?6// ?vOu[;~Q#89i}o*ZPVN kt1F"~btׅ 3Xڪ I`+y{o4c Q=P}Ԣ8fMNfR{tGlG]_ ,Nm+dZ6oy8 [􂣑I8}'/7ʁpA]Iet n WpqKqz+"E&nt rU$X0}iE8|R1GwQF>=_U;.mޢ&t CӜX'KEFNNmqh0B ĔX(vzJ1,n%IMiYaH3H.lH7U/uHC8 ]6r7gzu욁z VV.jd1[?mBhdHeC zCaG-oLΪ<=z]7wВiH4[ !#@z : @Zh z4 %A>BZny:!8!ݚ(s UӁX)j7= xn>I@Uapr&;~\ c]zFoCzלwL+̕]؏n?ܹW<5Zsӗ"dQɗd/Fs6f7z+JUƊ2Ҟ)n u-v]^Ylj|c*#s,ڬRWO< LGߔir:A7UCV,ݬE&S=IU&^2?V˞ 7Ȥ܅r)Ԩ4g}DjB[Cs\(ٞ'%ƃՍ(~OrQ\l!!Q}(y&|ŷ%Ah%ј*p`@P3Fݓm嶬>9TgU_Y Dq&{%Y0ŰyHy~)joxbAs:7 ' 1G߮gs }$LNWqT=s~ 5P;bRGP>FP9lI%QUɤ^0Cfx%ۋkdf QDM#GY8uz L'pk PlC{w 6#V\׎6 $\m#>r(5W H,-3PR^gO;Eu<#;;@MhT, {y^W#@LSqɀdGԍkpo9.o}p{t3FH%1`a}̖M746p#V#"HFOC7?4]t̋n$"a^@7ugO0cV^clSϰa;)f_ SP&[4M@MUzTn)+c~W9hbtHD;^)XGt xc:èyRL&D yPJMuj'|s}͏7*9Vˣ{|c[R#?yOĬ,Fi[^G$O?z=Ph8أi>hǯ5]`5aK 4hM#Ww}Tӊ'f}qӁFrm>y+ҭ]FL>|epVneH5&a8"h8=>;z)l0AKVעoT VrI}@E8mE#F Ȑl {+w(?Sϔ҉Qu7DMElJ e wˆYڛnĬzd~.g[Î98!A>~jZ:N R!z59C(m "\W^)֧L󼦛f%C]|ܡObΟ(y7v-?>p0}㏋OMy|~p#37@s ɫ&fh9$eH U\n(֚:0>z?:^] J'uelMD.mu7-Djg :#L!*Jz.&&'Vb㸬= B /+-_ I%mpT~JчD?f|JetGj~)u0C/wY?OI/n\zPOK_1| _|1cωw>T>Cu.W&V>9=|ɕor/#83mkU})Kj!0ڢCA nlS=:."3m{o?Fɓ +OZ\33>7^YZs䑚ŻaӐQ_MgB%;G$1ixDh@(n8BDܖPaXG#@PR ?/VE`Ayz3엛WE[YJS1gj)Cn?|gwk)1d9|.C % bc`@$zʼ6b4soM8nɔq I?Z8 u%iᎀ3st?aʀGcs^H[C$>{`$ḌLZ ͜lY Kg fAF!gRA(eԒܜ*Gzpr t}Kl\ѽ/}u4¡?~;^ؿR(];mA^ݐ3~rT٦TSLg7}BY _Ύ"ȣkA^]xU72|ܬc"u\.{P&w!d]gUza2vKh @վy^/B} r0OPq$AJt(ИX2 6BSB,Wa$p덜38Ecy5_ǒbߺ13 [VcWx\ Xd^j@<:;)yΚS?&]\3NY+LJ>6g2e,?8Ε s+z_ĭRy_ Piz%[%AkCw\lsLJr6 2!"VܕY,%,q (M],k<kZ֧߫M،^POmmD3EW. VF:d_}*&>z{jpt<7n\i 378 jl;Y*j̗'-ђl!695CSٲGF"z\ &Z j!R4@[_9 #N=%3x]|`s_l>??Il麟e|NvsRhh$Cxx06?6[!Qӟ_ǽ KLX|w{qѵ}mF5>ݕ4h y8<F*yxGypڤ L4]n$Z mEbM)58)wf3vJ< P+y wtmDQV7PHf L7rލ,UaBݜ%TR\/ft5gWdn5߂Nr*6͉+mYu9ygo\E+jg2\0ʮ˙ } ;XcD erơ[?_P̂+ՔᛓWܱzRN1 VhG_A\ewZi ~՟40IItz_ s4&>`5㈘ec60y`JfNWqS{/`$G)Cֻ!{=95x3 ݋U%,4)AkP>z ;d\1nPmEHy. uB<+Iv;SԨ-*!r02z@m:]菗B 7GƀQ3'.YRb|a 0.G.k]}rם)y8.Mmro ݋{;Q ,& Է!d~JN1JM.Jڭ )(Pt^qSE|e4 #[DǞِCvm1+AJH{,9\ `\Z+nb%iv{L+Q,U/R̪V7k:5;`NA5mtQȜ.~:e证]ScG ]#֥FG`#3,o&VP>NYؿkɘ1,nvBҰصy[bOѕVy Cu\!(^NEDgܺe5z%Lq-{@ (C;Y S*V"eY]6f'a)"#ӕJ?;L9NӅZWl~'D6"A&VP5:0񨼋^Kd5"\tk[á~ۤHՋ""pgeMځ%UQzrYXٳPǑ}p <̐*X1!3蕢&-SA4WHZLwE.&87]pFAU5lr'6s8 } IJgl2bY$]A)GguŏƉIY̿<7uέ *[O4و|T;}-o[G0۠: h9Qf4=Yvt1]\W[Y_ tT 5/ L 7>֓͹|k<ۃOȧz9֨HS|b0RK QhN`u[۬ 5\9~H&sc)R>2[UqU>uOxyiψ"tZy $k%G$ 0/Z\+WHTM3Y!>)]X9ʡq_ox[>u.[gt +Lؤc݉yQcL h\fBJ>GFӪ+PSJjҪmU#h eecPFIKoRtS%Zfu!t0ܼɫhQxPV!2rsqcycjV68K}@N4vaE˕[g=5yT/.;qV 1`Uwᡘ,W&sZb:֕-"V`Pn}4޷eŶTrOq1]r6ee-#+KLL:=%1]V#?]m{ݴKE9{X V(6Ak3P- ky\$ -nvO H|5epv*pIBy:w)߶{90 ߦ : b gliFr2D2xE}"M|Db3]3ͻ@cx|Cn">I!. _x9wc EY\F&XK+.N]'9iev¤EP+\k,>(n"T*.'fat\[6blƨXTÕZ68 ]A,2HI92U]c|~@T[ ~g5|vR_~A@Efdc٬'ZpF E+EjJCg/ O2΃<L4(}h9TI) SGS[77p5ԗI̾<5q Tpou:_=f026sڗˁ@Եx1j#Rc!Lٿ oy74 5u/TqH]zgƌ͡|>}`3AV<̲ͼtJ-aRISS Ls]#wxj'WQ^c#=hU6OA 1\[::t"#~h,O#_RFxŀKTBeIEpOvث kS 2>栂P.Zz˸noo_V rVnҜ2㋟h2`C˛*RnDgQ{jy_ۇcy:CYCgWq.˒\]Ma&-8*R:%+j +;<2/1\$Q|kI93tg#5dP;ɾȅ\-E?MB?,ϱQ,:|@>Kt$L6FR`cftuI!Rݰ0aœM |]!~M|%*"2Z&8 Bζ?QL~ʔq:̂A >U=r5rE(Wzb/u{WQK~~H?}q}kۍWOߴKgېc,'Ə" k+qܯ*S&S7S02q,/,HZ;jկle17=iaD n½<~B >]T={-0ps|^F_xlM*U unk X4W=N\׊[ϲ< τ|7A{θݖ -MyE3P{ࣴ_js~Rz Q6}^g&#^[T2vrssAo[B]ثEl<&2 gǭ!ʖ-}uuu$64Mfw}c0YiD;Rj֕,e5CV8I#tTvhkYJ= 5HArrKsKmCS.K/ښ#t?h{|D : &-F)}]і3&0cNKMvܵe3f v:A|olh[}_)Jw0[( %S#Qɚ!nIvY 06I?BX viYM ʙȩТG\Ytn&${fÅtV,lT^r| _Mr0VX x:x*T\)R7–V`)Mr2i6_|,ƈk-|4<;al/`?:L aN)vZ, Yr/?û) P?el xJH jE5 ~n^§F:pZlFz Y*6ٯ&BRv7L'CL:4׹y` /O@ OY~!m;󥍔t*VA_+֭."RoB:6ǒ.{>6w7|:C?zj >8:4ۣܿދ3oe<"[[+ݠ*{FSo?=B:D:`fO~ǴCE›Nߙ t *&BvTV3opb㖮Pe4k ;7hG *}/iIt̘^WV- Yf9-"SoIoҬ7&k]>!Y /HGf#*7Aӳ5+>T}8A v=yIq̼@@ў][ 򎚉L6]?2vpWe/gV?QjQ`[r"g߼oGS8#G/*DrOdzzt#3dRA씌~OۢU (Hj|sW9K}E$łyvzm~ eEuJ \';4}ޕ 0hcJJ=_A7Š]}|87t v_2 ?B}`/HKYH .; .a gSVU_Ls"t…m#rwh5АiGI vodҒtMD5d!AMQSI γbkr̀ȫ Qf?̗0Hm.Oa`U^4nS0yyT^ꍭ[7EbE\Tm;w[ԍޗ'3LOfY;1c3VRAZ !O ,Otz!oȥnU]2H\蓱qH/XAp{^.Ji}Q0'VYR?`ìl]$): ^3"(&ۻvVP.YhuG3}S&My\5|Q9֕{g7Ow꺮 w"rqcqu-z4܆z,'Kˁi&yxP,"f@Srv$.lc ]QV)+\.vhGI%H KШ)L*;nIpKyεcuK/ܲtu|}{6?[}  2cO= cgeQto2/o9Vf= s֟ɦ0 * u~uH_M[hzPe@B *Ɛzգl1a']*9E<>[c ,0WBJ?Bm?X;_4H&Vi ֲ˙ }{Ý ۆ1-ϙę} ZYEn[>9ͫ~!=*a_e\Hh Q* ƭS gϑ^Z/hB,a~8ʼFeΦβvi hY)kkBT- qэȟrF ~3[}|k s÷W8M*g>:fOIU3a{s wD~]f>@Z}GzɎZlD `d4vASH(ADZ76Ji {-Leod#38Jv3sšq;j/w:3yQ GLͥ>2R<#.Yn cXe- >L| OmI?I)uR/ m3xbeGǪ /̂B=?ڒ6KW,V42ҟ)}$yC _T,Vze)l6MҽՁAb3|JާF`n8ж'5M 5df_s ޫ3.ߤL78.9"K#R0g;˸ |} h/bT1x@C!ۧY|FX |fl +) WdD8+KĊa^谺iusջkfKh>V!?O`pg:P-}w[U| f{-ړy8 +Kk w*= >l~Uegy9<[7G^!'qT%:6~SٶA \af=d; \Yb{@bp/iWGjA67%ѣZbl`MύUW2Xvc77W+ d6Fj`c"MR1}tœ( ǖÝ:P/yld5}ߍWނ]]!]=zaÐ$Kw4f}7lQ-Q4)  Ǘ$3je%XD,pcpd}>z|?f-7Iʅ5)x2'Z.5z nn}EdlWӈ巒6+c~Aux'PX?Ҋ l%|{6j86?_kFSDD5d^2az MjK?^SkczLhnj;}Ҽ1vPzC۬Gxj* k з]7h24&ߝ;\ KZT4c <)y.ԯԉS{@oϓ/ɡA^=a}qoh xcGUJ[_֤M2?JCbD=`WՅ62}^nh^ Qp>|{dCØEW NW\Kz!6]Bs _GwL8МnjypB4Y2> vp)͍T]tB)HW"sn:kwgf먘8Y뺂;R=c$wOVKbQ}0hW-F%0+9YHذ\U:28ND,t:|DXRo*~R0 eS }f+\JawT+Dubkn1#֢[nY2aB <ΫUJ 3c~<ޅ3-$7$; U|5Q!YfS/OySF7e*o{慡,1_kGƃj׆7?蠿N@uQNô,;Ϝ/\|"Xܘ;Ad)3=OUWR1/ W4]$#8hp eAo/ tɪv}8'04c2JvXti¿.E`8щWV ޕ%w-Ef6O$E?+h4|S<?;=m:x)PfU`ݪT~#~YPuIKr.q?fsEaN V"}X\;]p7ED7V!M|$1Yu ԟ=hH$~IRbR 65.>)uy> Є3Z#^/WZF凡ٷUmQD>?2ʜ32O\sEOe¦Rn&$,qsaÎ/ CιԼq",ylы(4ثGӰQ^SW&`2 #Up kDjDI,@NP2YݽQdx|tCEC:>ϭLDTe_kV4; c'4< sBEIn%oF4*JQt2֬S/^g߾X5$C/JʴdNFvC_h.To_d+cRx\>&\0zGR_'2>L'$!/&ZhB\`tWuiUm௅%h"o4;dٗ="ne5ޒ jbH91wQbwҺUH|G{I'5CswD~bE_ZSb؉ N.7kdsiFN;ZEiy>o*xŧS{ ~S Z_7 :? " bY*3<6ɐٞ:>IqNHHĿ}6tҿ :MR48js}j sR;a4=@9{ ,ϷFTYW

pw=hPF%zJpP8,E+~A$"1PqnuU 4)/W:uxWW>u P%rk#X%*%aV h%oִl7N?DJѡ_0/?6NY6Ϙ ȌPp54Wg:@ )\81UE,\Qs,Om) Y)`#Vbh$y*a(WÓRmo!|Z8s|PY!QF7U)s!{8ipQwFf|I1.:~{ ?1<-=Og,_)NE/rS1H<QOj!_ǎZ9٪v'ΰC]z+!豶hk@TAgT >WY&: .up5Il' 2jCpu^"sQo*L)#A~7kSTEW5ўzlա. ڤi2"?/C^<-BsՏz5Tpa"Zs22hX\ZeĮ{:i1.ؔ֌Ѝ6BwG||S␠ 3Qdv-Bi$U Ѧ Y^"9o3|xdWAvnu\"_xg4:KWrۮNֱ;BAkRv wS[U-W5n+9P?A^"&G.^l1#r >V0h *42)\r^:d|ȫ%+JcJ[}UnͨB:IUhM 39.*l/r^/tꧢ*w5nwp)obDB GXzqB26kU[( nd. D&aӓ&~zC ?&FŎ!h8{Ksr[C-!BgxLʳ `|yp <([# ^1 sw^Iqft1@yua( o_#b;9lIO2Q_a!KLѰ 6T;6o~.vCŦxg!v(,BBUO䝍K[{  P1+vį1T"cm_<]܋(kR4Y6Ac%9c`z!˓o5#JK0TKSB z`$))JA/fqG[W"]?u·羂 |=mr-0h?1ϳy|u8}\:_5>Ll-۔ԖPڥ)5n_"!%V|&7(ݫoɊKvە*9.CDyʔ"^H$Lw ^'QƥsBhLpx&8WGe[^mI8$"b0Gz}~ƛoiBPQ G4q󯬱L/.Y@ 4(yuLzgeڠ*ٰ<K`q2" ,g<mr˓y|M)1 ف%FܱB@6R֣B?WعHX@ŀ,~ƴm¹sc>@(;(7Lü8i!G%nj.f˒L:3 7$ELJI+j7عm3_5/RJyչ6Bb7#( W0cĽ#=̽򧨬^s/mnx}e/9iT6fA؄)t|YseNm‘L6dq C9P71+W[\P"e$>'LV"ɕo¥,dhNd%SLY!?Ն{dR3o6u6 uu&|{Vsd1&[o3 ҲfucL;A; 9wZtLV#\> ‘ vopoB^ZJj'8V#b0QPaGHQF/ma L(AM۶ir2!9z t{0L ?喟qŘ<$50-u Iͤzv쩩9|[޹Vp|t:OLԷp9e>#$r! ;/pQ[ ~Rmgxo4m== wkt^SNAiI3Tv\yS3%F1WC#"+U-.:aHg"a I_L ޹;)VQ //"zV`d5+K!a7>-09x @Fobο*LCDݵ_r/ؘq1lʼiq3D3dE/KDI,Sqmm9[Bt\78 J|&DAf-:L=?MQװ=b{M T%䧡/v6%!p2A&obPn^,|rߨ&/I73(;ج 4GU1X.*7bRAa*l@7' Dw*zB!$YDT*Ղ7y{ br[LC_27VWyh:ŷr>cV%\RUtֳnv%`֥q+Y*J(r4c"S"Yɩ|L*o8Yx,ORoɰ6&N?5po0{#TbQSBeC@׻C.ruޫfge(JTֹhR"[|a1%ؖ0H*UNY=)yMf5T겗.y819?^ywdA3  4_1#3GF~>7ik_dWla:qΆ?`$wLTvc/e0cpVb̀]#OBp(eCTMscl@gެ"n8&"F(F;{0>8xP+.FuG7rE8 g6͔wj5XVK*Yo,:~a8ﷲj\&{kq^ nMPR;n-A K8eFU_ۯR_I<{C{5Xt:H&J q ޫZ~;lKǵ",t4_G? 9ʥu΀1aYR-H$0=ca0Rgj [o[v^#/gǮߋ@Fm16i']7)6i#-{[qG![5?6u r3  yeXa;v>MuLbɃ;u+-*ɪ$ SiBÑ+[AB]N]G:TŭsGYqX^K, I\eb cbK"\7wŖT~]ʲ /.̾CNaCF;5[S5juv, rCpȺbu#w0MoKB:"/"*N5 ױhi⌕j.>iFJS$ 2N( :5fҰO#5xb4LT1BnK# J)Ѩl*lgvШFʤv={*A`MR/KHTh֯ףHc@g$pBGɜ 2>@-~| \ckpC c74B$)ݝ hrd1KZOmPy( ֹTa9 ULze (}uj2_y7)%]LKΎK "i(Qb:}7_{|(=9ή"E]?U9̫bq>)CfE~YB6lhvdN%c G3z!O\.e'(x;`[ )M|ƹELQL&Qx3{C2X})d!? #f qdZCm!d .""+#`SȠMHxfҧM%`$:9y<^C2!HS}VwitC mQ-;L3Nv/ڛ.*'!zO3y$Aյ1*+({KV-kY9upNl/f5R <ՌW&9EoPRI s.t m)tt}?a qalPa9kYfkO}P-l 0 "GC.:S,`֌ #N/$_8W]ŝ-/ȷYߵi_Qr6>gYpʛjbM{!W6ߢ]EWdHUR 9t޿kziXl-9% l/Em6dksu:SPU5VVℼza 4[W{<ȃ&|hP1z+ KWU+;:.|c+Bɗ1H}Tم$sMyc?bְ@S Mm.Н3F) sh,=-7K-py1 | ObC=caqX= c1'3Z̘(-,]Ke\6t̅svRBG+ u ܶg ̛( VЃHoos\+c'L{:1a_P`iw4Xln+Qw)]ðӍ\\Z\ %=^sGt5zY P8"ʉwų0i-=0^)|gxz Dnuô+lєJrV3E;i$t9edL‡R ~CRI^YX:e^Ej@ߦ3KЅZב JYc|q}S"SIas,sDB\\:p>['QY#vTo]I 3ң&Rhzl]sGvl>A7`EQNp֔0E "mn& R(:avB 1RN{Złk*} R~QDJ$k7*_ Tlg4??8g?XcC+7qW@u~b. 'bSC|fM<3YS=/ɬ&BpWĆ<t?!tQN?M$=+I7znQ&_ED `慼m_9\e~!N{~w "Y̐DQei]33bٕ'L ޱ7*ycIojx\,Cӹ,ZUJS&|OH6@[ef|a}yNϜ>Ok R( gf0~}=C% ݮab 7knBQK&{A>d_Ű4QX: E.fҌ "rZ]PwszpL\'!,N4.1s1')Tv4>(;&2"!530z,wAv8WEï Sdeh֓m<^L5/&0a XX=I$9^2OC^C٘?&@MZxzI/wT+".ɔQ]*^.o; pCcf "> 5χ74- AdS:i$/)ht}~$xZD,ռ3{laҁdF[-2lkp'[ܛSoc@<òR!ѐze[r/ NN*qUvKʭh1 [+po;#RX̋j#6Y-=/ ]ʐDA@ 1cu/qKۺ7DGUΌh LΧޘ8'8ޞeᴞV}CΩ7j[sF/p}6u(^2a/be{Hlk\=SxICˇ`P.n=OBA~f _DDP *;޾|ց0sn=X R$fJylonbFP&^N) U剋9LN6UyDu^h2+;yOXyV$?KhY>۞ ?;!VS3 ok4OY5LE 2fx~E>ENvx]I;XPDJDMJR|u*;DꥋUH8>Qq(xI1o"3@\O%34zEnL[U6zN{A I=ow+f,d^*LfMx㹉/3 l5 x  u . -D>(G1TEx  tw4BFAʵSQHAiSiK~Q=@1! '/xi#]~)ߩuX\=Тu*b^8nj"@΁n"F )mı|%`Q3U̝PI<,RDp.*'yWÆX,[ܐH:y" <:^l0Klrp˻0Rfq蚰RL7t(fzoK"C88>y"(y6<+5.? l m08Ŧ4{{'Ѭ3ѶTY;EnZ!k JM0txL|X${q)G8ܐǃ]jDQO'Eg^<5 \'H{B3#OVAoWNN{֔pHk.ZŚʩ cBxqB1[: -tl!-AB.q@v_o?':m2a;Xw1 /)AZ5iI09]Rss d,yhPq/>7~|\SR{h%Nas;>zR)=oE/}2*သ3JZ؂#*mT΍FFQMg@tW톇L(K ^ϵ1\!>-y;ZV[3?5Š'?!XV磈`8Z x-ZYRѼxAV3XFkUo72Va=l:"_s:kPs)&V:@gԀ&K_8O()< Vu GO$OD“vFtivKT"0ۭ/nu쩰LeJW}|B'sphva}VV3E؎Ch+5]:{06CɳzùRf<Z%c)`lљ;Iu9< -ji~e[b:P[.a):6YF#E'MAm-%u/yҨgB) zd-<%TH?vSK_eJi-7$S+ ]P$vE]@@89u]b(̣H*S8_\v-f52\6.)=R=*Tsأ,HQFkކ3 یEF&D+6ƸhMn8ӟXtsF2Q&Jͤ/9$,L*0 kv=0)odoVohBVf>LU ]Dځ\0qfST07ҶdWǹ{.xr4 o!~h˘SѠn!Tti/ᩫԗ$K5N=ӗ?TUgFQ)lo88{F$. u^õ7撔 `B/ @seEC\¦!{XKnpaKS8CzܢfIOjj~fg/Klpn*cL AH8>3u (l%D4.΋`~_a,PqŹ'6pm~3nȿ$7}6v3N?YTsJJ}}=>.\Oweēd>͐ ,h qL1 ={ႎFADs4x"`H3@a'o[X[;餙sªo)\ ,qRki5͐ ^V&hG%ʖf&na?`Ck>$^|^#䏑ҜPlRN mOf7z03M7}/TaI㹅H7Z,rtBy:Jcs}h>b0Sχ,i253[^ꙛ"oNKF7))m5Aƴ6?2c}ՒW3X" b,ΰHۣdS0Ux[vcQOLD꘦uj.0?B( t+ g!|,AFѐ=G.40OdۆpdWx%׋U̒Smyް~c} S` >ȡX]4Iңs!a-PnZ9Z %1D8t qفd]1n /_̟ܾ5"EI|wjTS#"D+ynp㜾J064Q,zAϚ!__lW[q ( e]24!&$9MaUh 9W ֋t$;y삨f{JlA'_mSˑ9§6jB[h >6cɆ.oGVCO-4M 뎄m(mjFf%_9dz;Ti>V=Gj߮>>Fݛ׸x fwZiNݘ. vTز;(-kAOQ̤ HV =z غL/Z{9z2[w\f9d)AsIA;|ayBF2~x~4ṽXLt!\9C͙ݝQ*3?#zm8jf<9@7sM)@@+YfTn:E 9lny7AM vȟB 䪚\XȎy}ItFgoPK`;>Mc ܿ{ݳBHo[ğ}܍@xE/G# ?R5YSLRwuɩ@J/(LoJ!Lz'eə*>Unԫ6QAg4ѓt 7Nb*] U'~3+jDU J^X㤔}懲P~9[PdO83@p Nn2}8KQ)饗wd$@\ ۩xJd)xާR`.v0tkK 5iA<Њ,=7R(DVwZr"kl<)\)cV+ -3;cbHh#y# #jm"I8's6ؒZG_= k[S7˙IJVawNj4"M6)t@ 2sX o]˝1:Z˽j_8-þp&Ny hK@wTɸw6LpfqF87VYH2m97֎A]CZ5WpM $BNºdG'Vid&1^/)=%G^I?tYA&-XfFHՉ[;rA<8U^t^Mn8k ul9{azNg=[rnV;wF.y&ynv909"j`w =q@<4;Py,Xڭ-16xu\dן?r' E<2vz Cw>=VwhϘŀyw Df8.[w]3eiΌ1X$޶Rh8O$QM99XODxêgc< e+lPi:9Uv 6zT%O}&seq+490o>msj.$O%Z+d4U7?b͙ /+y<&dMfpd .X!Rq&ׁb^~3 Sg@fP@Pf2 vs]W8)w*䷨ϟ%q{aEy% 6$b'W:фqUz>;%b^Ur8evHO=C.S1 ={a Z\moᾇqkwGd蹵z_hvۼjsQ#$ Ko{r''ЉV}NhVM_س̹0f4/.h Ca!BJQfA O)0]4VV.mB)T>G~ǟ4>E0x%`{t|Zjt񙎺 iL*nz?KK2֓#;;)'E#YFnʱ\yoKl:Ī2"pbxnG܀F{qs & @kɭ$䀙U>VC2?ٵK(wfʰ}O ^L#!ONJt\\.%,xU^$􏢞™;n(ns4yQ%A Д@rjZպ%Ȕd@*#{jH9tŅ^C7p(8N}2* v{ϟ+im,>FT(dfN-eԇQa20/>.Y3bLeLTQ?>"6 ]NO^v^@-=4Fei95V(XTb:o%yc%L- V;S6ZYw%(Rp2/ SPs ->>l ڸ=IFmueEƁ{COM8+n(> mL-ʹ{dMg1 4[Hט!?ͅmhnĖ $Bϵ*%G0ҕ{ 1l ^FlU6f\ s3_sp9e\ l6ѫ3,!ؐ/n`J<Èg_DVX5/ `L8?Q<۸Smhقx55~1)͙Ua# gSHZ[tP`sk$BZDņIf_xo].b'iWEv 㙞Q«,lP3}|>bZA/S1X0|5<-L_57 .QeY3 ERlnw:~!?JpnR(sі r_ME:SB@" >\k .{J _w5VTA M Bs*2bgbS W r4&SM ͘aA t?Ty=I) v#D%"x~FU]TE= R&E0|յYhlX:(KN±&͹ 7'o+TW7:IamuY1:iIӝ72)va2ʣqU< պ}M[_3cJцcȏhZ-v$mƒ"cO6n*$0U7l psWBZy51DuT}_rcQyÕICfe 85[NQSL3pOT@w;uh`3$ԟ+#XA@g}-ιl$;iT)Ba[*hiɒQZU/Oۍ,iGJɃel߲ 3BMm%Aƌ8$2B;reuΥP$R>%mu0-ߏ@Nc z:h *5MXTՌ4ڕ:čĵA9ʋٔ0F:e,+y۳3!"mm3 vs4L/Mo4}v|v堘s8J(A{Ğ \M @~˵+ MV"ihX ZTb6xaތ)pկ ]eq9ⳓQZ0םhzě ¢͸ y^񑪠0(SX|:3[} #81?'L]P4Urᴨ܅&uIblW/yc>-B(TjS+bRYV4oWҭ2wP̦x+}#q(.ؓD5%REiiE S7QA2L -gW|ΑZ=zsDlVn,ݫ)-Ԕs߉$LFQv  ޑtT`*6*8!oy;CLQ"wOCxӓ ͡\K)c'FnA.Yp8݌>ԣo %:ǖRFx+uAiHR0!&N̲l|VT `s_ƍMNAvhB/;'E[۵֕ɋ\+Gv`"P(R"DXSlJmGByx6埻 .|Zx*yDzE4nOTn}bHT(Q&Z>Eu}0pRŸ c<)ToEK&[-fm8H.Y6!x?8K>R.G@L`"0/e*{_`V t)ZUTRinOUgD];Tgd)`RT JY$xʹǕ8J*7qoc!6hY^uo>J_6V]1>^(d TCRhp</ )x2K:A #CI>̛fND-ۧ~KoӌڮPxA:йXd?[Ⱦ( yr) e4^" jO9UV ĆD#^CoG f =ZQ&#qV%3:ꗿw].@ z,HfAMZIlv-Gp+Rt—5w}氳4΍,~u%ۙ KޫnОmPL00#F}ßo'Cdw]"G\KC,#F[l͐KA lEEnY`\m+8_LXJ*'wNX_*?zFRet6Q]HkR./N۱L).z'N a⻢Y's ]$c±ܺ 7SgV8kMے+ҍU96J ,)lENeSo]~{ ^fV'5x#V۰$aX iTq60Rz=;IrFRǛsJbCoǺ'jS[i"*cN:eCRfJI3+JҔWkmFrq,ҡcEn}8,{g8]v,XL_W0Ng~#fkz5uT?P<%2"Y;Pܯ/|XNT l.j3)+45Ȩ( iBe!NLA :m%ýDZT!)]sH+ao3Dʣ?fuM1w FLywf~H"6MlWR .*gjR%dωNlљ;l{ $Ǿ(7HAŶiwͧەv]/h2!<'ٴC{_d-1XHFs.'FTKž7ڗuV̻Fz؎~r[8zHvn:]6"tiS1Ơ[&WTȴaQ8Rof<͙RdvfʊVEc=@9&~1_T1*u1Ķ auVlOp4MZx@E $3P-8SdϺCDmcT6/cNFR50P( 1D\;:VdD!9X#Q_8I7Pc|5故ųl kl%s>w.@N/K?ꩄH@NLbJ>ij% S/+`C`sهB''m6 褮ЍYJ{~@H\QytY\S /BV0Z4vZO.:ǛK㷎)zEÐ?mL` ,Kr\C6H&ֿ1䙅4<'D:>(2#mrG pgBNm wJa7zw0fF-O cep.9 )Moۮ} %k;pHQ]LSH΋fG!7л&[X=|RMM% #4xR%hMX%< NN% r<Rq0g3 amЕHV5IC *%jӒu:+| v+Fc(z3oP#Ԉ1!!9_y dzV厓T$i70(~wY%4Q5dٱ), { 35ڑ_͙@5cxy0/5 y_Z_22wQ,=,9g<.)QԖK[3$nZ\]_>oSǂ5@o _2ηEs,4Xuq%$=^A' $;ƨϚ+>/_mċQ{kv +eu8l&AƶAŧ%+XMp\ ceWξhgϳgUt6g Fq*d)d3•ŕAO';` ť+?uEs.r-W`l+ Mӏc*=Kf 6SQ*9ԫZkwn)aMKv]ԉ>@mbh\b5 RE[j$E&"?R_HrM!?Z3x[VTCP}7B W!|M .3kVۗS'\V}<@ѓ&q\}M.,K#| [gf/ya"eJ~6Elu>;# e '*Q)a$0mOԂ-k |IX@=>xh `?%%DsfgŔQLosS! 5%barTŇrZ^[. :I=CR>oucPl>%S+}\P֮nX7pREC=el<kmB5=!ah6lN`emn9%P]0r'[BMubs1%f4g'{}] f Lw&G1HZIIr+(`,Ui ׭Qq*_C< 㹑q H_%fH3xԾ{s[yjj=<_DroYa>Q0{3t|kB89]Q+& /Wc[r8@(X7:;!sDwGN!&uT r[(4Er4'Τj"L;Uʮv~o0~cr=Mc:t99.!x N3 fO*~?T<\P롟bfXUd%YcuktaQL"5]b ĸ\k\y m?{>j*|B/Mz4 _UɈtZVPݡ%u\k!J˩O`_Z 18ƺ@Jnk{uXY4aΛW6έgϢ .ՠd~ʌEK6cxfyZB}$9n 0Cm[czߠ_Q"<$E燪}M`n]g/bVI QZ]P\H.4p {خPk3s+iq٠G6|q1ҺX9Я_wOLbjm&"6}exʅK@h3λ7[J \ؑ^ y $5z%L>2 2SNQ}wi[#,S5w8괜j H8T`@p X_r2WVu0:y1Ť 1k\/]KHT4*,tN#shyP8{y1c2f)S>ýr kY9 %U]X1٦Oi wT䭥64M38C3lɥ dtcOדD<5lE:Q"' lgLN/ylaE?4B8shߡĤ/"KpR̩ޗ ^WhDxN\/l/7Wc7L!m2}u.;'`d3\s_Rӱ,:] 9Cze4HGGOiJYf'ە,G3G W cTwhፈifQhvs 1!P.P 7>qZgúVI=' yF=u<^DG%fOͦ7X`^gs۞21,WN=p wG Fn`?aM B^˪*(Dfe"^_ y7lgA# HoDoH=37!i}WA$e4EWY'H!n2,yݎgE7jZ?([0<`Fۈjp>PD,"hb< I>&ռLJֻEZ8`++ TS|mF_3Lcu_5s7Sn:ٓ-\n9d@S;4JYi(7S'KT3N)>2hZF3Sh҉/ƬLT'U7WYj e:@sX;*N T.އoZ.(}_M߀->+O鮎 ]yn)I8/8YJKD, KmK$VdTֈbL~*)dnZ`l傡:*\in0rQWFo")9KC XiY+:-AeߜeZ#Wq'qsgwEc]=kk'l>Q=cTj׼]px\g!OBXUu-swRTTz= {[J0VQkyҎ1#hZ? )]H'\$|$(HnB9byT{Ox0̛@VM%1ƴC۬Ϯl1M2:ZkbIyZJgzDk bCNsɄGƨ`v@^Y4f a2p-A&8-Z;K|ĝ1<߱]ɏQgq[EK[E$h&/K WZh\@R/>䙯}6c+29d,j)ßRCijd}8^Dm OeQo"R^# ˌOG"$ UDSv{bJlaQꗨ]tD  ~M; ψ? )֏ eu놖w sm0€RS8k6`џ`dDc)x7=5 > v4ճá*C5(XyTВ{2ÕM&\=^a؂Aa{f^R~SƎpȞ&+d]XZXo p'XZ*ZM gh&an?I_s*y26]fOKy?')8f {FȈGoZ-rŌKq / ]vyl&vsh l.Q I7Ľ+-F+[FO5KjRkfgca;pF/g޻Е* b/l;<dQv{bo"b Uell?.\dyҧfyV~aTXI52 ˱ۆ.TWлa3vCq11Ϙad*Ŗw#a<0x$XLCщ{(T=< jvl%j[k'֛MQ ~껜4 !҉ߛOCSe] m4E8R9!-_d:p $^&|K„)f. -ŧ[0;&5Z} CMox#ǜ)u!{X#G\1յ^-λv$}/A?u!-fTbXYaL@F)T2. 3x#\Ҁ%Jn<(fTG|nbq0PUz7yY`VC@ˡi1 \۵1*QZlgSيT-XZ?)O-̦=h+2 aB*=50O\`7ߊnr45R{Lp MN^[O h$e5|xT++ 5hkmZЏ{L=ww&0M'f,dk񧧳! ECtX  DI,nk/NoB:|MKg܌{򌚬 Mb؄BR~O[E7Sا .qaynƨZU; ɩl%jDv=up'LKp*6'ְa!.;^ЌiŲ*L>/p4/GW37 UE&0V0@OJR?%[@_xº/>n pnعj5ڋc[7|H"B=$ & 8aZzrm35np5"%3yj[][mRm>{xcl|K%1冄t1Վk*pHTJ$Ag@gO@,+\]: 8y UU8ڵU7w;JGQLZNO#*H0TA[Mju;)][mٱn A= bEZ[A- CߒcاAh;_UoSVśp@^ 9t:o @glxSo\\<`>N lUJnŨQ2fz_` ii ^@ _ vqp~vߓRΝFa 1U?wgCUO>0m.Z=Gc07ЄI HUD樦cҗ xn/& D1T lS04(jBXkđOT[* GcaԈہ;(YbHねoGOowujEfo݀WyIܽߏՈSצK%EW6ƚqZ \(t`x:~גA_Ň%&@//ؒ©* L +k7ZzZ&u~|>oeKEuS2|^X@t0fs 'f+5V!O…KdS|O  gZV ]nt]3za{M rin[ch£D=MhɐPvZx\؞"hajR#zx\] Veڨ/5A{" 20/./ί(xCʢ)oO⿾B$@*ͽ<^I. ho HC3|\}sq_DXY%TH +AYdV?6]m$x(UTl!Iu<9D='Z07Ts+.19BygQKTk [loV+?@¾)+;I$ͼCy5I|Hq,o_P3hw:`Lڦ]_NiDQCxZw8qpo1&~M`7aDGfQH3Ƨ̲ [[56RVi1{wAbRЃ~*Ea?2CuN[o5& xM.e[Lo&Mn ו1XÕ% gr!$cHG'w(kH4zc^&e"B+0oT -QG4 G+@lVnH8-QW}-v .ɬ4 c(IٸJKCo_NI7޺Sq>QaY<Yv(w=(,,#c*A6э jJ0pFUTM1;I*^'f}]Vf7D)[4ɨȃ B"w{Þp=:P2]\ɰ4۱~r.|&,G@wmM ݙ6޾Y)6#atHn+~|ٜL-c,55qzϮ}ZX:tHY 练DonoP9/V~/ո{cj! 13Qw% ދUgC 0|Պ؄}vl510ܥobk/BmbV}F|c ]33s*oPZC::4[=DmD'&APIR9W4;\G `ɆEVWf ŏ ޺r,ڐ WYw$o+[j+!=^z%Z o;Y<u)׏zb#AX;O0xR `\|ϡêЫZV} Q[v&Kőt04w# WMls®d}s"Mוݶ0 `ais gݎpUU\83Z</8̦cQ0{51Pm|O kG.X!JӔ~G 뢐6cl(vSSͫ~i)(fP7x\_,KS9Rk/4r .|e,af*k{oV49 -[Q=g7 DmXx)Z5<7Z$^ L#8⎚\dpAb_}7[p6irs ފ9-ve\]AjGG,_*tt`Е3ݔ =i6쏲мexb33YjgY`$ICHOv@Э2m<=p4|;Rf0EWGi 7Ξc?;*hnO#5شI3I %g׼R+Y+Tr)F;%j[T,,,$M+@tWF://+?r3` z PfĤ&wu 8dcg3꿉%OHFvIrJofPixw&QCEt3ǐM%)Hk@?&jQXC:{e8z{~;2W.hd`?9S?3 jt(|W>t܃w_s(Hq ٴ1C~dӄ}ب/6Ѱ1 i~]s;)8A{f pjÝ9}tGW6d3MC/QvD.<H"w+!\ ؔPd4&\\שŊi~CEt9Xq09wxDŽDն#x"dI$ s 22ɸJ=+RW@H1 h8%ℾNKo5\ M )&qDod7d>MJR;%{hv*'-Xuv/Ptsk]Eڣj6--2n1y 3PAF!j0#ӤO7D>yw5Ιß e .0&&tD'4)Ac! ҇{1 :HHXk[n)0>%(Q{C̴b0_o \t|eXtˆu8D8KTqf}~ue;v?}ƌrp /rZl o뮂بܺpY  Hh\~2kuJᘻ'\)qdwAܹ9MoE;dx} aoKC e?ǜ\ nȴjzi8{c_VMc07nbqrgnhKJanфKG]6<4'2ŌxkBu}[kOĔ]n^6W{?uxÙ);7vrN|v]"41A^>C!?\" ^aOA,#g2mo==-8C`b齗tHy$۲1a^v$ŷG"9FLH84j߅oFl5f#3n!=a uYICtL{^eb7+Ж ^7AH!BŸk_Lq}S1dGqkd0ѶC\Rz¤E%7Lz)*5QQ%5>$HۮMtEF:\].L(loccTy .Jk 5uRewbkg@'"U)(Hъ<d).}49gt #Ko{3W)ޖrC"zl\Ccr_3w~EFCY&r[=zfGP5Jy9ERM!2J62䫥>EO|Ay(2ؙM~Drfg@sҼۛѺ: ee#,4ta4ZCqw_C1hx{6v-nau&ןdTЭa`$~A^3\bZRr@qڧwU\Ꚓ7kLK /޺N)I^#*cy KGMe2@϶qTU$y{]r@W?@FcgQ(..UmNUWSp J.PFVx}'@w~`;6x Uٜ l@D72bwG3L`}@M:O6G3k# :IK4nHRʯm_x;_8:ܵh&!{nU YԇѥYPk>kJBwo/|ym-f`+&F:b'=i{#NɎ]3&?[}9~jb&J 4|iGnʅNr-.M{xwow rStu [Y$b5B=q%%s_du-e݌d!\Y\w]$zY ,_v-pog|tv)JUYAgUȶ]dػp\Љe]XbJ '^Yǐ.ݰ$qCawDI״U%ڂ2uNT2%(Q ?P\Zނ'1ѧ*ĺ+2|ZObKS!ap9e7tx5ؚPU^wSl'Xmcل !a\~+̃_//6_ dr l/T*k;|RNrj#+!ͪ1Q]$c)KӬ+n0X$p.C.YΏEL5"K ( $2q种i\2#~}sG,Y m9PUdtoi^4l_%MsP#Ry`3O 9F.! S Oxh!kOuh E@]ꃱQwQ Bs产U[U@KI9 ׃yiTH΄3Vb+}/z4؉նx/iG aw8=K);kڗGhM&y#UPT hJksɋ,Yb޾2Ӡ._@32ޜW+A^%mHܾ*N4phWKe]#Ӈ[„+;Mt$WDNH7D+]Vw I+eiE<E&r'p۝lz.#8te_+@IZs3 PI^ "h `.ijjavf=Pgu'+v) cِ Y}4qCIۓGFfW?R'W]뵸i1iYj SӰlHu. Ϥ+0kv#nF#-_ ohSpS< [ 9Jkp -1S[rmcU wNFYN`eл&qn:nCaT C]KDyr!_wdw>+o+;'f ~.hř퓓X(+7ngf/A2x6m!7aqN+ѧ8lߜ|APINnwNcUJ5>k풭An$ ғ+Dt@G1uvFHPV#DҼRnuv Kw8?8~d'\+px# g^$4(uNmIkTM:_>*$㞿c͛sի'`MY03TqD6/p>v1'[] :V#g”Lez!YUVdv!VJv}TJ?2nIvtc_K>S"mAP֣ O~Yw~6ՇvS,.YFƍtЌ}ScQkZϪ?~,`r (huU[eo: fd@7)8% k #_;Hx7JK1B]_~b7#[h5iZBiI_ T$2#&tXXUrT tD J(&'RLWo+}U }:ADl4/Y>߱Jz͕[ĴsJ N+:nU:mBH_/$6D2u1E!EM+Bj~rq-;10 C:FXsRKyU}s_8j+a\9)[F;ܟL} HQa&+iOE ӭH24԰ jL>6XkdXh?F4*=(sIIQ ʹ,dOO,h푚&X)<4 Nt .=Fl{:{AH=/ *lʍ.Z*ϺE~ݛ]6Eg骒16c5&`?$t=:ɧ'$4R[Wn^\!;˔c:"F0xPt:k7Q',&??c'KZF2qB-}/t4m /tɼ8aw_>I 0b6dGExEac AQ%|8Bm0yj_4Y< aVĿ Ngcb[ˋر6(b_ZZsZ)'4se fb[cx+Pl=q0a[5 mP0$阯Ooe=F[s͘;ZJQܒnXr Ttl6AJhFEhn[ ]6ܼ,3'PcAGE nɽ^ӥ[y:`@Zi[ohw-&Y,y|2&ՙoб~%5~UUku~4W+*'[u ]/)@e1%PNV:D٩-IdacR#FZ}с /wUT20] 0'X'YVx#EO3ƂK;Sq"v)G6H}PǀɇB.6 0 48+ݶMJKX٢ ]M }it*)Cɔ)UPxҕ|bvגFPFD6bxf;r.Um~&lΙ6q8 ;i5|:) &D,d8#w"g_jDRYٓ#iٓH$2chщC;YoH؇`cݩ8 -p$4z>2,H7ILWo(H,\n7$YDwS[88!6^\fhKQ@Kf?Ų@s3c3x1ʉ+2sĢ yKemNV BnxL'xL0p┟4;T+=qٕL>:k-WcA[:%2)r#+طI {VOՐQ3EeѰ @EBOZzUrM1r=@"5A{=,A/vw4YMP(ƓVdW=c8qR`c]n*k]1 PL}G"yar} A4EO#.&Ad/) @`W/s/[5 @D-؈٫pxOI?p/!Y-ŝωrgr3IYh?xrAYrԔ猘e*&XO#zԥVZf[|IK?Af4CE[[:\:¯y9$z8 BS7T<+;6&.QUCP=^֚]F?̂J Y`jT݊ZnR\[uTl;_{k!o]oeNRHڼUZV2ȯWlPBy  Gdқӵ^Z5\Evnw̩u#uN<͸{6{=fɵ,l~dpb/sR< Krr95sR\XSÌ䳂l |b/*nq D;~dgN^EYYQgjD@g_V|VQԬ\iN %=$f^;+"jBA{cvXR{^$摌Tho Sv>4!cܱfjt;8APiP߉aש_.5]²ˡpKΓl7YmYl]N`-@d3KBE ,4 -{Xxt85eWߦ_+{_EʅZ@D۬_1I3W܁Yˠn=痹\eMGb-g/0㌙SֶaPTtt=`(OLM ]|RG[nc ug\Ul]˹{RcO:4$.e\'wh ũP TFMX /mZLD 0ʛRrp%Sm_LҥcFΆ9d )>}<_kl:r5+-l2N\AZLc4_ouX7XK7N2Y;U@/ꁐYqI徠4),oz`\(+UR(3% &ŷڮJ njـWQu5CFq`aML^$ZX_L,)mď7[1-P\WW_Ek76wNʨt>ʴI!iP/4%e8%Ë llS[?҃#^8#sK$CAkȇ1mvC/>ڶڣ:p+j~ΟqR%@ 3^.D sP+QM$Z[E%67JC_cRj<miG>dN[c:q|&랿J0㓶.ꌩ]["`l9h lvԍmCbr/$*XN) _7fMM!%받KĴg.)ѤT*K.XSC礁N}NGIT=_v[`)2cSIFS)2F'NFsO(*8| ŦMFhKb#ЉLtܸ*1wh7pC彼g FS7~8>)Y%bΞ{ŽwYVDXZd/FfNUCPjϯ~B)І&vl JSJZ0}sj|S)MܾVg/7?p9Wĺ]6"Z}:wk y$8CNE[P3[V:|L|nL'X'x8*q&5Glbv). \Y]㣞кD 4)PX8W1s7Ch|'cECFZ# ~N=HeRU^->SsbnsbB˥…?c2(xx5"bc"/"e֢rqA ‰>hbܟh]{פ_h4x>"[H$*9{k]V}}|qMY.w)U6o!]8Ʊ*3F@(|~)u+QrXatKyB`/<T^C*O@!tZY55XF|C0jWN.ـzK$6uox&z`ف fm(;G 'ˌFexD'yeu"k,8K jCd+A:bԗ1WYr3~DN[ C4Dbz!lt^O$䐎R׺wdHהq|hfXBSTTaVάp^aݩ 5A&v< 9zT <luQ/:ʾ4L/_~* >2=L*K`Hvjj]3(.Юaxd!bmhlc"2=זk7Bb݋.(a"cE;zXj~`Bَ9i `m DDOd=ˌo.~A]9(dgqZ5]a_sg.L9&=J&ʽ08$E/et /1I46$-DK3T>q2d,!?AwLZ9x<\·/h0,ׂa௮"ٴWGi$vSJfT qlH+xWULV׎WUɵFћEbg ?)XUlZwԧ &]91r[,l9^fً<~  neOLB>)c[M>l1CI/CžQ& wԱWIbN/ |N1Z&}ن1B%tJΡfW'"RWЃ}+D:Op=[I6ы6.'Km _1BAn/!rf4m`yRza$6YRzk9 Kہ5ڠ#*4`R~h^o{Uh*_< DLz.1f*(Esi]$ߝfCRjMxTn ďz3K% G@45 F)qťF"nx@^}6㘁vrߕ7ܑOnч,4'}Nh2.}ݖgdс7iN|D̲'"Q`)g(Z(@TC]OӃEWbo/jm oJ^G;ղae$I DaKM/d뭺׆aERzʰl*+9~9cӿ'ArEGTZЁ(MrֈQzsI8K.߉['#@қ+z.X|/~ /A^Čs@h` \@d&Fhb6³Y^z Iǰ\p:Ȥz8.-R(ڿBv\P"kmV8+hļ \RRs@4ew9fL^!KR*NJp^~ᙩ+Sk|dΥ[C+e)Gq_]j8Wt TOKmˋ:6p†l!z\i[⎯B[^ܱeIǏkuv /*ɪTH,59PNg G'[d_'ɏ<ɬ l Pzb W= 'Uaczqٿ1;%_5 Ǔt TzgD-J0{j'!->N~b\IFqk4zbao}CȮxݛ0Cu;|tL袥Ezt P_*m.%#I;ul zq]OE3-+zD,֗ /JaZUH!$攐wi,|F':esCBրOop F7ɖzr|ga& Bk9@Ӏ#LCfK9N)ˉqivԐͯQ5^5S‰vŢc(b}oQ;)RfG[b#v'_3eG_ldMMZ3]2) !Ib=gf*l΂{]i6YC˟'H'uBFˍ4pBYm тu;ywnMTE]`'"U ?j,Rh-j|p/; 반7s7ªhrX=.;w"ER8zI Rb2s(=|AI Hg }<-*0[iR8lv]86Mju% zm C|oq~8Y)p dVU 98lsGGƥ5(teAǠGD>ԁi(ZX!Yr0O#l3jj ?ׄ6/ Lq]hԗN,*|*#__ { D3,O.@ѨgJfJa=DG:C &}XjO<+¬#E.w;$"5UtiUJt"Pɋ>!(O.7 (AFO$)Hq뜾u{=Yэtby&AoX'X2|)S,I8]!խ -V)8'l%e*nvţ"c WnXϲD Dؾ1PTA'vqe4QH)|+]Sv"5sy-B 'd(XG0=PCz^?6\"^6t!?.`-srV]u$?e̽ ꧎62،:'AU80YN 4'wRV-T1م,ZW^eK_T{N&7>ovrJ`onemjsϼqI(r2iXw.\})cGL ң kze#%Z >T)L{(wdL(=zb4sJyԋd :X#33Gʝާ Q)WMhar:^CNI[C쾇VxLN#5D 9T:hſrSJ|3/ҁ·\c|YܓX7tXx{Zya'C^,}<}BZBP٦mpFE*ieY/*}"Q.78on-+m*14cNV`ts5$nDžcH5LɷoԸT@W bhr8!D89s˝2;8xI w4ME-acOhDg:P۠6k!jLT]\Y}A!,M~#p*Aw7qLQΝ*|q'a IX8(ےi66<1CFdqJe5]زg E-l4H؇u1S@} v s9q4KE0=0gYR*R!rŇ#>!T%Ƹ%gUdc2Fbyoʽl|9Pd4\]ؽFOrdoW&jo6w3F45n^XGP|=e/P ]aŊn{XK6w d슥m AZ|,?t#ѸӉ<p- XѤrM"vсT:x cԠ_Ap@Qu7rG/ ;[;Gl#p|xi/\"ߣ7vkN+|^@Iw8`-K#&e[ܢ!oB<,g)'ROH9mB%9_8JjѝAǷ&wF`Bupuw۱nwmfH9,BH\-&~m[Ȍ Cl_zD#+nQ4<7A@{䮮gam 4L)W+~?,Grn "I;l1(-Aiɶ>f+(quFT@(IptZ aǴiD]-x30eodׯ#\iXC`*s*:cC\RY`Kκ脶-wC&$%.hTW6lEܲG]-ԊyAd[$ÖBP*10Af\1 9UX\[كObnm7H5B˫Ρ3q|mf+HffоeܫإOYu8_?k QE\$Jv~azYV;3 X5^򦎸jb5Mr'(FVSXL$֞>c6f.#NeՈJbwzuwم VXR #u~T7j4L>ֈF3GsuR>Wj g\]#Qdv3$͌YH|4G_溍(-x0+i%XM)iT =G˖L.1wUp 6M!$5\m 4АKX <<]9+|4 :rV7b8Mە-Hb <ݤ|lBRO>t˜sKڒ@$5ABuL=1"Q13AƀMͱ>6EH4(rG|Esi,w)Ls{@^Y7[Bcoow>sI{e}v 3`])rȴ\IGŁ"LTPIwZs iXs*=Nw)及4>g7|1ӹi[ݰZ#s^4[G0E85~?a,PNZ̭'ǧKGzW #=8Cs=g= ]ߦ0GX_kQ1?f+XI,c/]2_5$৥GANc#TiTJa.|ѤsfUFw=H[Z=-'s ]nfiX.^S&4ŀ|c OTKת9s|L 8veQX $O{G '^[tvtrɵ\2J)oMi6 d=3&{IؖyE^QY؊U@>ܬS]+J-⼍8.a7a9-TM~K1`RIwJvyc2nb;]l[ڎ;[ᴸȌrTCdS6^K.L3k5UQ()9SMܦK֐xG BRL=Q]SS-/b?TLD w>G}42~VKT/b+DQL!*Άa0LG-X 3Kw\TpH} a/1R/b˹M')SSi6_OqԜ <+8D ĥ8 {{)RLfAc6g|N*`txw|R7ZkjeŴ2Jb %h5C$b0N1k$0+ѵEmQ k(oG7PPmXk^FV>jDA$>S5犓/c' zG:'\nγ>0HYZ[٘miEQ6VGNw_ټ9Bs0@lMow[d#ÀVZ}4Q y/ S6!.qoԶMeg*^l0k9Z3r )Xϖ5&`t s(ܼԺss$>2t[@ (gjt{_M_n x~1yFoN l{ .Z:3qI mɈ kGeEj&CbV' eBkѱT; .s!G7(01uM%'fY^$9w<[B ?z_z$x[*2aj|N^Ox79@ݲ\V*<֋#X dD2;Dh"L3Z9\KUWH?uw{&`A3@M*Qv yGh#|Ҁq~`8*pMˣQptք&RdLӻ다bѼs|wu {KBW{L2Q:v1 5+RPJC'(J3D,  Ȁcْk^lHCs{spYešSۊ3((atYNBkgGsG1 IRk,f'IcomMp/QŦ$d SMOSmLY3 ۪l>O]WX_PDț0^PNhL@*0,e. guIcլb 7-zꙻ#Sh ƥuWn>Kǝ !6Vq,**]ƀoP?e.)}:$f+A؏./TLyS 6:˜vxs׿,Px)&w`X. .l-B^ =mRB ((2 s+_֛"qji7| C>gɆTV+W-)TW?Ni&w^l4ʰӂ1%rg \{qVL>lX]thń]_8#d7Ʃs}X$Y9-gn f 7;E!NNjlϺvI*oP|)<4]Pp')'q %pԐr<\w=P}E' w٬L# 4S@*Mj VotHxqNX2x~^+4塡Y](Wg?ORYd QC:9=nPEHAB`6Yx$~Ϝ B3EBDc<1(ft<}kO@ԟV4 :u*M>~m Snj؃ex. p ph$r1@AJ JVHiVtPSB=3t6Ff6({ 0!F:p֋*E=>d'ʓ11R=ղį;j>ldQE `ò/  BŎ?#'9Ih H~lLК̦8s-[2$̠ {v<K=HD#wg0@[%gɣN>q/޴<ÓU=}2OW$d"cw&䄋y j.d)Dx,cւѲ=1V|lU:y=;) <hgV?ͮ;p?&.rNB3BE$' u>%d|d~FG&ߤԀ`] *Ugi#j/j mːDoF5@_b1Iyg\* ނ" g73r} & v'EN/=i#۷aqo}.tkY6 = l/,ðx5maaڬ'תN]Ӓ,2cIϘ\ JCN$)7o)Pl[r? ]SLF9Y]"sVK銝g}3 ֆ㙌58Ȩ7j|t ggYUv"6HUN!m -G}.U1UO<wK |#h(s㭲ޕ&bXKH9e\B{ r7v E4xUl rT)3џd J+ \yUñi|>ސPH@0aA^Uˤ+m&жDwT?imS#L^ w`pȹ .V»!ɲ;Íמ+:Ef3oWYLl sU|#=JtsZ~ CʛjVoIڨUjCe(1]MP+yiV K=k$ - ]52 Š )б.,NvˆGPtM;)]S1D lwt`^IJ +]fCI֬3f][hBu1od+~+1l Gjs?r=޷=iՎzׁ\6(Kb'qߙxHaÿ&|PRAab1cʰy#?"}W] uC{1OrD!1F X_ݖ=C{c':K۲(U0oGc97-_+KܠQrOvw9aM;N6J0HM̷&j c"R6$c4iE/B0J:șɏ $vY0\ng9#;uטT*H;oEr% D҈o!{,{meFItd*\ 6bM2즎~&zrH..[ZRĊVf~#߳8k)f$:}f\~]b(Q(Y|jw*Qs\N,Uwm`wɝnh;,^zvIUM/Y굡޷oP%Q*g.+|-ڷΠ򷜽WwŠ" i3 ZK#U&<Ҝel\ .Iג,H9oI%0nx(ȢrLjJ\E %"o=@ 7V)s'ԙn,0"k.料 &ZvLW=G(p&ٴKs/maE~#N\"4A(A0Y/13ϓ1Mhwedh*Uo4a7S% u4J>&N;xrΦwR.1+  r CR+w Evs hټ㠯 a1V6p3[BxJJGp]^Ն{.,[grK b`7؉{H+cbTG+H־J+L;Md-+֎hE+s9*˾ GݎξWAz[J U&nZDꉰ.e`.Ok1dF_W~; J_ʸ#syXP[ 4DczrOTqxۭ2*J_I[/AXH8s-nm:=wMrg;:fl4@L.۾Ȕ+ Tƍd ã`PO#39<֫,ѩ"AWt"'V Y^J¶72rVtc xfXCy籣l}+y`758Mms|UK3x S sA؅?~jA5[wz/pT=)~ʖ##Ob-lTIR ߗot$ۊK_%͡ G6\5%Ƽ?S@ΊF9Jȿ%2ǃS[ ˹ȡ|>oXJG`1[@D_;{}4ʎ}#59Ksi)Snx&]偤jThZcy]5q$rT pUzt/)҉N8/.xvOakYH6arf A*' ;!R F΃4`"\ @:rf6c$^I K3ib5oŚ6u+yb>e.s:+CcX S;ozV"k|8Y1?"؞~?F牲SU-tɍwyl Q\!@SǮ:GF Z!=URC$*΃ [nitT3ǴqX*%I#s-D>mOcHק^; ,`Z\ڽ]PUX?cd(^[T\eIyra.vY-F(IIsUV=_# 9bBl$S?u%cY)P]Γ`(݅jj'cЫ_'GV>^K\grCx F4sUg3V*%ЩR"[@DtEN ro?[btFEJzq !ϠLBv(*C<Ӊ)m͠j"^1'62~@㌖E%,%9 OKky z4t%[?'gE}'9\lz Q`}g٢xeRGPz@c&s-BrH&b0~Gd=)Lۙ/s'"_vJ'4ڹfmZX}yC 3 Won%Qa}ՔU4U6` z/ LDD -Yg va S`BtA.뉪dCr\bDf%}iV/rr:G$ )_䖭<{Wi&}wM/unϘ;r2=ՀrJUNY$ǙKA3K'Zbsm Aݽ,hܯr% ў핲fhDo{8 ݹӧZƆz' qʱw/2|p)hvGjYN_J8VY6sJ1 u*W\_3_X%'* {=d $S:/]9WX=HpgmKbs12\V~ =B4d"HE7"?G c׵^ hXr7Ԝig'??dm7:J E|eWc*Jft_"=H0Զ;/ȡy#r //@&,jdRsj"zYo=^"e,x7 4g6us5 تunpk jk o8u*X~L]J^xǔ.DR%G, >bL>qLbȷ6Ns ѽ#,컓!D̃ pR:IpMFL4K,ੌR.4qTޤv e"l ]A|-u! Z-Z5.'ѿ;F].YNl xQ"CDMF`pa4ʭ'۬xrP;Kdw\˜Dky+>FzrT8-X$ 5l*&Q2?/ #%i)C{芩2^;3Yw a b34wqvo*ƫ)QHJ =]OKmQ+N9Zjz?:?{;R0W(Q ]07knBg2@,d@ }b?S3E#OQ6^pEɷ!%C9%:;Ÿ4!`qt Z^bg^]=w ʒc**TXq. m6vƄK_퇴iiCp@n)Qru8jj$~3 U]p{NKęGbUN~˙B7܋D[U^/Y q #rii1ǎJqvU+^||# kة̑t_/oq"vZ G$9QuZ]4Y$M~IHoY>Mg Yrܕ[wOs֝[ 7V kf$xP*||ki$Qf%9ķpuGYmi-6M]`7CA[/nOk? ΀yQOg'}ߚP{mrB\MKcoz/*ڗN f%r2ūz!ޓўk h;~CºutLluPhGp5)waDa =Eѥ_m䒁ҳm Y:!*~HH|-] X:+ܧQQNnĖnŀ neIյ*liO6.-©v*bv~xmP7_/⦵]vNgfQm38aڨF]8TB6OZP`u/Gu`Bs<:O}Yɏ7GK!H)uS'fL|՜Pcm69w܁qK bIL$xRqS%/>Z57F@6g!dH8`)!L(j0Qql6h/r+8, ϳ0SzrPΖ] j'ٹ=g6ZRcP9Ya#oHKP^NZl08D&pNP(.-o0>& rޕ gШ~_ 3Ve2{*OZ|cv5Zt ^"XPI6<Buo:/{R/>nR4#x\쐟<[1tݛyZ) vv aּ?CyNY;r.?a `(~ )J%_G^Nr]NMSG؟H`!1an< )*:ccـ:+ Br޻;җ4P[)tr,A=*?[*꽯)%1\g^Qxrsl%Ƈg:3S)Q$.v@os O؛ W|ZtXI? zߙ97%=qF"CDLaf߈"BُpF%%ԇѪHzmujˁꥏnҙ5#x'ꜝY%ׇUwn={p-7mgfm4=B聄 Ț|EsUw(*<'XTyj5ÀIXqdZ8rv)bWAMP%ݣjL7ql=ֵ7^s[>*RҞ0vqm.PcHz?|ñgbpܺfPz񢐃B2 2N|h}‬gtK}{#n-$jP_O}Yb*(]$mRzTҍ4T08[7o&zߥǞ'z{7=JϮeVibqu՟nşp rcQ },s4}~6iFqv̅@]o|R*e 4hɅi~8'NI$9 L؛[\IyRTKmڕz* .lj_4:ս1F{D4v-Q+]HC H+1",:?'/ԌhJC l&%+).l2]ѹf" n rs/Dn茫 §C|?UB3޻D7uu]$S)r\PJi_}Čl a!s^6MYt!fFfk=:Aa`\k-+0Y7]#n fB֛RbS*KɊ\0 ̢ܸn)RZaT >̗< vWqu]PNWo `3`vϖOB{tP7(3߇ 0mvAz'nyѓļiHbL_JKLj=?p"ip a` ܮYcS 9c55lҿ+o]~w Na!][Y>*HRܡZW73J hl &2hKf6`Wʐ- rdR i4:<̈Iyf:"p%.7xzP+𼧼osKKA) obvLzj 8L>x^ L9:RbN!F$xc>A7KQS S-F7DKy,몛^)SNG./"u ǔ,4;w\02?sxy6 =+||f }[R_ӅmwګnW Zx\}57q)"x`-+ jDdW_,rX;y3{%MX@Afn(JZw&v.|Ni*5jͷRd7MN{Vطl'Ii: mk!s7S"J&rC'i€yyvZ"s`g/%p*%Y-Z$r15q[G'HzEI^#g)Í^16P MP=CI6¸m$ݪ-ĸL݀ \rԴcJlu1gDr8(}bZy7m[fR.ޢqYɘfPK{B:,ĈUB׳9y ~~V$2m嚃Tk=={( Sf"Fcݟ/#l]1wѵPC ;dox" eo?S rb61pΤKV!ŏѠmZ&gY){5WE{N_xglzuGXՖڕ ӿ贚esDu r)lݦ^PRv E@)1u< oȫx+v%:J5.*T*vB;f{Q:͕ov.baFQf"|rI08D,~ gkҞ ?-u;@0X&qg$dV i%8;q d's3i\4c} vE͔|QHӈ}gL5n1Wj>m^$J<"3gy׶]~9E(*g(sl g"zNNI=|gtc'K=t,T9̳q(hyV4iZ7sQ _CvNG<^ȸ{BŁ1gT] }ӃdۣCZ`|MD#*Jhmo&xu#5ρ1^9w*.Bë=W8^N>qLGl~mK>V+\ ؄aŏ@Zn. ~A8i۱g@A' D.+G( '?4+abrB9XE `]ZӓϡX+MiNon-ync:@#&H]Sވr̨iSbݡ COspAPZ`k0rQPWwSSeC5 ,*sZ-ڽs*ô|WDͩˤr$`]l:/* s{@5G%0LxD- hu3>~.*XǙ 1ʊ%4B'9NB+Q)Mݢ q cR4 Gq) aƙ88w'LLSC\!Z[/k `'"fphf<'N9oƶx-Nǂˠ/TEgsc!o϶0=3,OҟyДL/u>7=م;/A0CrDmTȁ.%HH/ڞ ·T}8/˖`"ZA D H[ƿCl:KT`[!ZG}T]Ij^UuYt#?~~=>ǫ`=K=īGbUif*R/,MmýOQI'nelfssR\g,dbEáu} Aj8K57Hm*b;cUvo1e-mS L5I")Π#'O=ײǭrK;zT8^d&!lw* n~hSKS#mإ`zO+Gau)"eR/R]7gD9=k;tK>5*v%K2h6 HoxWӡ>``"Q Lǎu,K)9隷 3.~(.RF&"d֢YcjsQW{"Ï?%>.FV1)ew-)i.& i6$" sףΡD, :UJItĊr?V >P+ +y8NϬ[g1ljy(.}Z`߅L,,\R( RWrp+ \p{V0e#Ip̽,6{YDtpx$OcږF?FSȴQXHm1Pئŏ-Yս< ang-v釈7<[;!}먩3{8ᷓ{:'鰞l?Xleu‚W9~pBgX#4`bM|.*eH~'IYsF>Ϊg_`~X,*HSU {m=N;yEڹRm9)yFGI#_J¦2Iܜ`щvoB[RV%BKVc=8G^ _fU푒6>u=z4\J}P.al+] 86g8 A&zhybJr L=rBEs[_iR%YS.3lQRY(h/S-9Lv&ӬDPL=\/5 OGyvox`@aK/o g1*[ݿXP,iITjIH0aA󦀁Fvlt.fhD~Zst va6yw`uҒ+ɚaz;ԫh(2)P>"܅?aVl+ǨK@. ~bh(fsQq{9cqN ^@eg'oۡW^Ah_[&8swPs9J2t_MY.~&{ǝҐVT8p:yV^t4VS šu"oaL '`Esm׾W>t?/C8ut']nCQR>û*S.6hc @hFk/.XH:SZ4ڱ 𜘃01$Z'l[諷 o2a lE Bs(H—wma[`lμQԛQ5NA%vf/ "tt/he ,I͡Z-[XV_n3q!qf8 1$f 6>ڂ<eIlN^)UbX>NGN,kP X1#hϻ# _z6wCu\Z@1ff@~jJ}{gDj%x<s yPO'r0J_']~7|ߎUa~ΕuԌ""hIc-uYijiڳKspnYc?]nRߓYG@irHպ ~afڱNp%8Edi-2sh(i}VOq7#B7d0/AFBAJPHoRv)4mhXH?9Bb=Rr2zX&,n+~5!%Hgl5}Q׮ةҰIք]b!IV(l͐:Mh~|0M&ZO Wڹ82r J>p <ɇa|U3"Sj %c4\|ɧg=/-uS;o%nL l,|Sz(Q2,|Mc{q K: uj֢'ɪ'=@-˔T*y S_45"4Jd/*~K/)>R g)(!)<tVlmi f_GVd"k VBI|+W^"WNɃjU=6&1 DG^6t`$Jȼ~ ZNDe#o;C`29;%IUD%R!qw/&giMXqDN&4"̡9x.>Ȳ*H$k3u}FMڇWqL1WutEM\ 5D +UE ."R>Zӕ͐m*7ֆ9`^'-ъ p)XKtp$ es8>Л7^/DwED4LҊ}?BA6HW{Tg*覶1au lNGd d̀0o56P#/.:Z_e+PItzg*YJMe:8 )0P!5&1=y4Rf&T9vIK(\>ž}>W8<&^bי;ujtO?9k-ÇU2|?-|ˍ`-7j+AiIh.(9Ag?Y "EQbEО[̢zqs`e꼉h3Z#390  oUްU9j/WṡTz!qV=qHJF/8Bz#y][r[ (9{iر5YJ<~&JPF*r ]@%3~b/P_Zk,HqXr~K| 싺ʂLٺ`='St,W]=˅mQ6 4H< gNEN<MD/1d}\}=K l_{ɤ˸{8^&uаI  ("W ]yL& = u2}(/DIz_nEאwpx4v6: r63 }Bm]Ld2o잺#ʟ_ U, rS צe8-6'*D,mn7Hp)JjZJJ"'ÏnشG=z_CP\OdJ%k9ZC jm,<4wf[ClʽLaHmNI<*[;H>7(}f2ܡR MB G97~اoR$t3׎LOQ'.?{PubAӑOHtͪs̞7;c`o@Qއ];j &ԤHd? ka^9rhE'6W7V-^w[}uGRoydeKm "7@hBR[ЕgE$@t*-e5ͥ2DI((^<_zop&7_+i|\KӠ>$+"xbX;l:$eJ=*fUBl (1q{> lG. T6-[L^[g:Kh ,?rJ@ȣi`,WΟs~+<\̦2E|F`ʖdg[B/?x dbyP#c<#)`;;qU ~Ue25C+55mLz/M5JkC8b:GZtZVSlAm*n*X{U; "Er_K3WЎBZ,.X!M{ubvyYHVmhJiBU|A1gw9Pƴ=_/V FA5e âp 4 sGxYd우nʹ4k2 ?wtx*zB`&C b];F/Z%UONx0aK/@^>ܩلǷPtʮDP'X&^k{iKޫ~JnMpg2V/)tEرkN$aC)ձH)׈jy3,/k8W0|7,^QchFhts=YK&2dcyRg3: :dk _V~ -ΛPǠH9O dExbUeA-F[ Vyl=xZh}0ڗY|t)JB2M YJГY)l3>5as9 " ksH,?jEк|m L$*ȗu.dY^%,0kr Iq-w|3!:]"ەzw:W~T30J@t- L9NĚUc3oF dwǷ|sv,2%aɲ纉ȒO~qtg;S:zy+ZO 2&^D+_ik27dj+d##wLHVnڽ8%NeLU|\PJ6<<0^[y[R]ĥ uϨ3g_r*9mU-;!ueJUC=3AX_ |t5q:F5/^+v^!xD\ю_Ź\>}L2n};!*'gQ?H"X;jj+TMv?q3~ʞNՈb׾cY4sr@-oAtͬ ]pS :Coy?g-5bho-VMa!ޡJJoTVgYdFu|cUcGTN0fXNTD)16-qT^ L;_D%1ؽq|Vۺu?|)+,)?r9?E"rTDcu #U4pBA3e@?uJu*&:ƾ=y&e@oԺ"UzogJ@TE*;Sly@>‹|F?'_X Q$MkysE ΒeC51iXHz05b@m[ 4ePe}3GF4%ّ̙†B^jpV*ƣ"[q=J |X)H#G닀<%ŰMpѡrݥAݾs zxhk $mo/Օ"8Dܦ*Z9$!t&1'>.,.A P_愩 xqəxM xlg z6Di :t avC]+rͯ6a%,HT( 3 _OIώ@}0]/ajbI%HoHn)̥P0|<׃d!C%t''T+~ztDJE bͧP4̂ǞCfxU8?*TǟnŸ0ggOqZByKPU "1D&)9W\ZI1P+J1x)b$"=7=դF038zeW}h֑{ta|$xJ+" c(9"c6; nhl;m5+6d6^Y* r%,)da"Aʐ]e]pVu|'3B-~{YhELO#Q AKaűȪ VQ-uz.Fy&Q#An V[^Mڢt܀f4nxUQzq}B/L'r4Ft2ra`1#`@sٱ?LX)JN:1 `䷃aL>H<XcV~~-j<f'&ǵXK-c8 =4aڌ:*}cVsu,R;OBan% F| ch$ ΪHnv)&qWgkBVs}}-YkD~ƁP6K\ʊpiG<[l;_<9S= G8riST=tc="10h6;bw5/!^̫6C_Vk}94AvLChj;W *eSvA0tH7"uС ABMOJvbh,#x *\-]4d8iXҁ+nǂnk1N+<͙!8Cd:>#db2Tό$aWS+ p];:=-Yƌ҅H򐩇 _,#י=Kko:N9Tng)M=ހN=ύO"#qB?N=5 < {΂N4l@t|PΒEN5׉9fr;,|'˄U@fw;`8gZ5lگ YyoUb` p9/ڷr*B{h͌A`Saq DLs*{XE:72d.'Sᣖ+V9bȆ`Grt$DyԚJw?[ryGVCm.Ѥ8EK?8%j裿QSO_-\ 1Bjaܨ}{PFNq;N0]ӵ{˜Jdöro섓gWixIx8˻\4?tO"@L4N|Qte#K{XId[ D7,mYIߺT5?DrՂp[zF^ H̀ H2|u^ƬNj Qg/۠W<x7b..8voȰNYm,{\Yp,]Fpwӭ_Ds&(-bVP#%/4oZr檴i8J1)N_T2 JzUS kI\A/!m˱Ɣ Il$z@*~XxZɪD: x^cmCT2*in|@N\Re/56u2"}{Ⱥ+1l& yYX*f.\h :9bS-'%=^cAmewnv2̼Xv9R?1,T,X6 u]4U?QmVnFP"H>B}U .c& ]lM>OL?Tp=ע,ʋ^*FjvClPPNޣ^,p:I(>XX#ڱ!NTȴ< L"E_pX:G%˲/!˓3¶,ۜ.#Z4 P1ϝ{$  ^sKŶgJVTfRVwЂHQERg9},W V+,a1|b G8-+7x:HuHoqL[3 ߧUxҶz 1HBo"ֳwLYzLdU49{"$r{qAz_~Y4 u~]E]0*Ђ9>4:|~Jﶈl[jsb[N37AAh>-l iP%8gw6͖_j=nʷ}p3Z6/<3 s?;8h̅/X=r}Mbwԙg=Hg'o >m%۷=m`;VӨKPiSǑ-毣V֑"r˾f)ܠzaF(O =~5y]5y8٣lV&k!xJ6 Ģ^**LC23֒&{`TM*4͜Bn?T^}z.=g(`yɭ-?dPt,'`|Awnª4"^el=l|w^S nko:egߑrtuMS%6<Gfq!bd+5W I<% iٖCDs䣉Et Xa H<_c ~XYM+A NZ r\GߖjXR8 nH JW]l9k䟉PE@ m{7Ex _^rU9[:n0VQ'DL99to~@̼XF]2]rȆ|ʓ񗪁`rQ>.֊+V~8Ofk ׅOU l*kME; a!_ (W>M:bFA|5$X]NJץ`,1vJ.,djG5.a^-qO {b-̄H: c{j$X-"[kb\-F"HWe| ODs30)b+%syv\YIH}Y_I`pA$J(\imfGw[_Y-r&A$?v ܖIhޞM*5ܢ e/67cI>G.ƥ:~*lf~PP4@ggYPi0R Yy٩l_ۆcesOx7;Z+Ṗ@*u+r|^#(}qH6Jʉ1}DN>0tRW}MXy} }.?fol7j|Z-׈>wDN:K:$ $6lkČok|x!Vm^W.cXEt n1Y*z FVzw<3iAiܵiDQ[C"4'􅬋Xh$f࿝)+\\|S? [^_ϑ`tɶ:Hexy2 g;QDXgG8;Γj :?2AHcA\08W˝b w <o^%"va<ņÈ1osE"a*$EyCLM1/l5I"xnw;C~EJE,Y ʮ;~3da~gik_l'];ܰ)|f)\6LEy:#ftY"pP&WChbFT03$t٪Rd'3$an~x g8Lig^Q>gbVm>a2+ҥBm 7Я!js&I 9vF3$kMùgq{BJ-vD =ȴKr -ΰeZ^,#kr ۿM[i U1@t]|V_@JqhE\U 7Qӈl_=@F>2%n,px`UڛaJO7*.\%j4t3LM3 "Bfɸ݊Y#ƇPp5RhN["dNwv!' (uplx@v,]gbj1WQk@0}M|IDGX;u_)8a|r"WXmB;8s ܣ9@iʬzl 6;:?]T6k l_C3a+8V7 cy6] $wH5d^*/){u ^<جj8+xE'f-Q%honJ+ˇ񹻆jęMWL(6_e,dZ:k-o(5 1pcYPL)ֿħ1x;Qsqjo FxJ4,ݪƒS1MMڊź]xEs2e[S|:]ry"@$:6Qpve<KDr!5W,dJX>7ɚf&e2 ߏ~TW,ڨIOhU-ul+ҕ?}-v<須"ukCX@tdŚVPw !n$2l/&e=`Z+4oJn̤cnu4'*-qM;^gywm¶?ZC Y=g'#þٛwXD'cXBιy=$px \4!yAL<;^њI)1n8-aS9{ vժõ%dJ`@R?06&+-@+O3eᰋLj+W.UV؝T\l*^/ǯ~[R6^>x:L|w!Cpu^pQ#mb1W6o5\UCCŬ!oB \h+W=v:")x2wwC=CG.,YS+eΉ_^ |7R5LL6UYB )Q6 @-7%]ѽm,g}q p f`9+k D˲]R▵)[{\ GZb6t=fu\r_4*Oh9C[V=| UT5"_LtNo k<7'0^7lS񬟔May\EB"G32{SlCzǫ:%-K<xZ_omVڝAe;oSL> H|TDz E'!ю{ -ɉM_$.jS-5Kv2Y4d;6D`e/Lw]pèнrPujOuz: yz!9|S_ZW2@.3|(yV/o@hvƇO-o$m0&XgՌᡰ/۱̨e!Rç1(-U!l/3975 ɒ%Z-g%hiV`AIdqS}qS VV%Αkrvgf97ywh a7θz7n, A Dj}tTϢl+J^5ICc@c oyBM6FƪWMKWʇy]Z81PlusGEElnd<Ơ/9r1eIhr?dh-Ӫx>R=|U#mɻ< ?0"á&W9gE6 '/J2Cr#Jջuqߡ,tñ?'<;Gh]$"te\+oL`1Z2M@m>=k,X͕y{n$S|pqPd_FFZTMLM  ȸ,ؽ#$ 7r/Aq㛃BgEU#zb8|jZ.&H0՚s%.+kXf[4NV{.F|!$L`$ QW# 粉}sGyYB2S_O% QsbK v a y|I ARYβUE^cʑW'pև*TT("|o )s7Fg~fWmW; 3JCu8!^V7ѵo|[c|A17o4}28AoJ GmЖ/MxBt憯~1=jh3\ijč_MjL8([rgeuekN}<~kl/gS_z 4eLpNg9/"R>E5C+y}*\B.g9^?=zl*N,geő*{J՞joV I{[#. Io \dDFjlGho*x Iyh'~ƒb<\6-t7N NٴȆ4F蠟?>jтS\*1icJ,ajU;>g$Bq5؀kQȀvWK]&D˦|eRbڄaCLٰcgDýP`|TLsQ+/H6]U'#Y4Ó>2.곲.Κ\և_IS,dBz,A1#MDzQ׾TЩ[#ApA - {ZuG1|d@a[˼ft5W\Ebc'ڞavw%)mQ?Ljyt0ppd2I<KqX#'mYL 4wf?6, @:6~ 47o:R rEr dԢ¡[@/w\;3eȘ*LAS9Ȱi,t{tfdu>iqPܟ*cSFo??4A2aSvU}^7XNZ9UvSx^)4@5#z/v)(,ZX.CEhEm4'O/QP2nS?^ p^IuQi( ޓ}Y Krt?tr ]*I yԟr(Z:cWe0GεP[k5,#]LYZ`\f(HP ^ Y[L^'{Щ XsҬ  $쨆lZcoa9+Ttɯ3zc^Q[WR\U~t>9. %v ?{go13s65@|4e!^1ڷzaG)Va/g9e/<CODiV"?w׬X'@]DT_qf5M;׼e`цȞ:19A3uvF[.#Q猏֜GT鍸=iJA{WVD05$RדlLk2l C㙋;R,quUgp]et_#D'{Fm(`Mszi߿ V~orWA2),&7~3V={bi퐷:j{:OxUX :q79DH$/n(mc7&G~HLE_>_ R\9r[RD.hPHRK#LU q(C{ZC*,J# &Χ*UnaR[nǃUr(&1bKMWuV Ce~α~m%`6'.Q0l+TB$/ v6#iݤ8 \H 3 ;76|bܰh{y*6uIF(Mū]W'Ij1௙gՒ{uimea$HHO} PUOEEˬQE4a*guVsfq 2s㢄.*@ݠJ t`#aaۏgH A?٣i?<8=pVơ izU#Zz+ZyPma5Pj9H?MƢl~ۛܲ.ghbj^\%sdWYo%Áe_ =Mn7r7F :pM]E9Tڒd;@1V,[{5Ike{}@5?6(][>Jqm7yl_,1 r[MmWޝ a+9WñE%.+gPاxZB/!2;Jl)TKIpk Y 0y+b3HT4VQMh*R;g]+EΖ1Wv,_m=jbjhEܪi~)aPU[r"W9U:qw0~nZQ$eԣv_̪]֘B?!VoITWN,^KQFyxKH>t- Xo@Ḏ0Kk$f ( pT5;ZŸ*TYRH5$ L/w'e yZo]i B/w#$hMGVwYK1z՗P")qy%2/-^CQ*ZO]IK!kiT w$Q ^=p.0*6)HJɄ:-dyt`;-W 3(zkf)N2?Q ĥ!ac6ÛȢҧ~Ep9-+AەiM q' '-h= ^؟i#Yh)c΅ןi6g7̋&!+c 08 YE -%WDdY72^媂%?{W߮dΪRLn{sb~C/t6ŖHf4*STLeb[X{ jΐhK+< bs@1yF0"'H2_;ZcߧZsq*$Q:a*3();—%^: 8v68l6 y(?u+2ykZ: ,d xh`GDe" c]{ 'e$RU[UcP-0?5̘3\]k[ Α+'(V* eaT0otdc,KA7Nm˚Soip (QV| WŧUxkkeykŋ@茏2$#fvBe^tv">6 Hy'<@1Z<&/ՎA[ta7̾>UE}'\ š>VC*dW.vp \!d瘔Da;'l=."NgiB|ïJ7u^31;t.L Et:pN*TĘ05l14mr1(.)zv1\d}(\g!uC.~D#۫( MO&.ް$uSRwvQOӋְ̰Ddzp~{Z/~BrqܵBΈN=ΊrC3bN |&7װ]R X?0' wMNA®WeB6* J-0YD+sV] )ophpe7Owr坖xҘm!S%Q2D3=uXKGs 3nŏWVzT7L@y6R&ǟcWD8Vyt"(2Tz=y2$Ϝޅ-wSu#Qڗ,4T]+`^$xd]t\\)aӵŬìMsޝQ0 ݮUL Wy qJN)cQV$PĹ IT.~ %\0_! ?di&}a&ر0QR29w5 ˋ>ߚƅPSyf/EHeW/MU肆xnxUK'9Pm^q0&WWl:}uq.eM̕z/w|? #兏WW|%D{Te漫<>5eXzF^cLK1 WڠՂEҮlE9*]!0wp+ܡ&*"ɼhyUpQGuTxJbWr6.D -'ř=V!I*×$7f41?J*2y/Ǐzɋd\嬽 < 1˕{e.C!/'AJQ63RQ#ģ_*6(|KD螵ՉGNS)NdZL&$)Apm=Hv告VF  K AEBTK!2L!U6׈*qƱj*K<gfly.|7ȷ2]vy{G JB ѕL՚2t3";Ēٖ`HۇU#2m4qaۈsE#kzʢIjI!sW%E,q)-8 kܔby.^B]@'C#ASo]\N3.8\-GJvknkS}R05"Fp~>7 4K#ahi\b -'7egQ'Yό=}_]k3|4L ۃO2#o2VTVZ&ǣ'CNYOVAܧ)t2@QET!=*Zm#F%%H#;wUe.Ќk T3"7vϰC~ُP9[y*(uR-?+.]?j-C~t| L VRcYO:6}3&]M?'I50ERґ4/.<8J`\ nY=ݪ.eGTLxMi ѥ&]~p3"f y%`rЦHϒT'hvZZљve@}ҠEҊTN^1UL\0N&ЅeXkƤUEUi3hvn GAG` 4HD)lkm!_k%cxn2o$ )MǼ|B,i}ᚸp7FF{>tI? S&jV$"4\U7.yUN/a"<5T_`hQ5ߌ[hiҹ#_1aU[}݋΂;qǨIONΪW6 MJ+m`+~N _^ TYY5%B3׸=:N8=A$$'t?+9&] 2 %J+'̶aݾv. g Tnl(Z"HAxXYs^1Kk [Ʊ/ޣz1((t|=]Wۜb&r~Й*ȈPrCR MեcXgQܨ؇ ry۾ ״~E` hô-%фXAͣ>)z*[ftdzqR23vȕ \w',i0oAzAw@)v?[;v=g8ma%'wP9K&V 'I#ṖAUK.bbY[Wⵅu}g؊؏r:Dk_5G\K^|gLDÌ7͇gw$bMԖH<Se n?i_!܈T8bx\3:":?⣣,+T^V!4I)gIf*Cp\|z細k-ZA/4N<1!!\ U魱Xv\"3 o$w D*3!Y oSog7C~g4ӚC|b>i:'CPePt:bD )}—IT Jbƹ72\&C=pAô*.fX&cTOYUlӷ:tv sp!ZW ?k'?1Hg,ݖf-eZ *֥X$+OCdrs|.LOS%|xએx3 <$%GU{W,o_p—j5!Eiv[@>wA`f F׀ ]mqKjқҩo3vy2rg(!a׿>HUZOdtK=jw y#Umzr͊W<ΚߕO&E06?I+rQ/ R5 Յwmtw@iyvȜtspwZORN>|p?w'XCk]o6t?6ɹLy22F-(<r9ßOܰVg&3(ݰٟgGlbd79 CGݜ749I3%9dь;sZuCBiM)Hs9,vv,t5@scȠ]]sL\ظ:\ P׭ncaC(s;X8T#з}֘GC^Acw n+ ]yɰnUʤHF1W>Ȭy0LRi0OL>_ᱻΟmw&! (ol""3NbtCXL۾P{+$PGy]j gb:W=c?bQv۸N}2^?%]JEWV];٬˪XhXڙ~K\O0>VlJS^'jŦHF#طw/['lpyb6Y̋Hr .M؁N\%C#j9$MzKmxzwq }0fHHf('8pWdC)6N~YAz |ghQH0u]f- "P{X. |l,[ +_.X@L)h7QvjxV=ljl8w(XT(>Z'O)\=$L61&z?w@p%0XM#ɒ}p6=.OSp.ǂj:N"9 ؎߰GN is!od?l㶮%}( (I6$Gs6mf RQcnj`t19/`V澵4!6s`gI\Xxݠ}4 wX)Q6xtjD-OZHcn |/]Xk0%;fk)bdM-Cʨ#RHᶗ@DF/:5Ⱦ(G*~ |4L!؍su Uu}!x^ĴEB󺣩Wb[i[hDP]ط8򧟑Tr%"F(Ohu` XMl+szcF_~ŋ7Jh|Đt=mZ~K&jm?hX=[4b>V 2/ nPJv2< jZ3g-+c^JP@#tI5N>K%emӗf c,9|kz^Æ93m$@o=;S~#iyxa:XKNJJzc-u%^e}Z\٠@_ u ME Sf_q6_nqOe"iOnD4p7R[틴F*'u5$k~xmyG80CK[]%tq 5QB 1&jdq$ٙQWp?<*GV;bd1qW&,Z&'grІ~6+sqIǂp%i` _6n$BؾE,_%lbbbid73AeP?{ujx4s?g;C R": MYbĀvlCkf՟boq~qc5 ?f(WP] 2LEw_#@dPqCfajߘ˥&)6Wpf1\m`Cݯ:7Vzʉf„ѣ~NM&$:i%jNX朗N@Wv=+dp K)1'.U.Oc!߾_5(JҋXk8~gw\ۛ;`D}F xn9FdA,CIXU xo|O)0bxLApTuz<Ȣ]0ˋ:FY-cd ؔԝsXQ49j3BI _GBrŀt8#$(sh^$_@M+{mF;.ݡ`qU kldMSWɉw_g:1^S 4\oM&NVK$*[6HڰBPTg,)9 zHe][͛>+ĭhF$<}TT^h ?[4vZ\rCIiS-w."U!a%ש:Wӥx̦g320WU4h-!/e%/Z]l\}SsF%@|݅xߝt}fA~)"5l`wEm6: q1pO6w m #Gr<\&ҡ,]0$  5XN*EoN/yj3W;7)b#2UrKTGQ mc|#Gy'NɴU7d`<"_y-ŧ34H4q1HT(. S!7~ ceSĒ-fӒr؏E*KYG.E^jؘ }h~`r10] 971鴍0-YPJ9v$Z"0#Hx)BWs<   HUQ -pknMA7(@T$:JT~V*(?)D͚Xp|N5% wXl&cլ^ <b}:^"E{ć k;TShc-xY`] ze@yB<& rTʮ UN4HtopvFsAy*9 |Fj;qq &bA`\=U@7 ikl@.:-ʽ ! ZɉM;G]$|!2ɡ LO[4xaı!:,&>_ȅ93 >^s2> õx!̈́) :D&/yBM{C [ֿ mZ@%ؾ‹sH;Qɜ&EHXO*ŢYW4bॹj17lwYH>xy0SG #N{GNi{ۚQ9r.k}R$4pW%sF4u9F? F|Vv+̏.E#DX ^%Zx)f)!R G93ZVR%N;s%_$YTY6MH!xgS+u6@;Jp4Uw%]9ٔZ]:i<" 7p ز0Օea"~FK W KU٢1fFw$x%p4h-'KMSkEaoEÆt'lMQɂ1&k:#%çʹ-cVQQPaYnh XbsPJzB#Kt7`*)[6˿?5?O 4+<B\K⋵xJϷmitjp.0%_z\& Uv qr*jТGOw==5:)&o'|σ.9r\{B(M=p7fZcDvI~LOnF v#d Z XK:D!E3YpDIG7k+MBhd9/w_@_Gj-vfoRjRsIsvDZFՏIǃLRAv;qǖg5cm~f8+!_D%FH( TOȽ6 85oSuͱj$PFw"FGS&% r|`~ PTtG>3xpĠx5yX08^C#$A`"i܅ѣ Y#;[\uޜ+<;q #|:_FBxV16EE7Ӎ#^ S3fg^j(Ki"_waHUV+ 3eSJ _-Dx\8J7;j259˷:Sg9JfR9L,^rLIf7@8ځT3@[,gdҁgWE3u띉Lu(k[k $5, LlZ|*_ORFe o+< J2n['SZnkwAgn =-qw|s-yUI}3! S8Nt[oѲ0(t+RhB~3(B7:ySIzoSNKMPeVelc"ϼ0g?E(F3ڠr<eq2-4Z@f٭!ͨ%/gjX5kD |H'Q?;+0鑅1YhE踵?2i&HH\{}H.| }gf}m@dcPľJx'y35O?R{x[rX;(=|UVl=F<BIP$2Lìn(-m"^Bl#$_Q"Wm ̅d*B0AєV~ > } =Gb I|G#VFD!YB@&ozӽ-^AN8؍08w6=]±8-ǹh;$NUޭ7@y 9͵ج4&vݓ`o4vay(Ԋt|@ Xk- Lym+ry3ÁV)`60j W] Ѝʓ ]I|89h }4lQW>R`E&qPRUMX%7JVr[Fӗ ˻e.nߔoYqItT4eJF-e`o5.F+x{Y (%1K lbYǥ[edֺi= %0W珑N-L\ ސ3Y'GR@J"ݙ`mOUZz<`ɍ~PKNx?>QĹ|tMz~[&Y^к5%75hI6.oYڅclNځF"xGԓt!U':~ER2x鶘q:Z̈0"Т(Ymp{I8c[x51  !w HQWL->[<!:]ں=wU 蛫y%t7."x]Y{6Xmv- *EV(tL|PChsM C&;i0"4N]z/C>'@c^;9szCj ~H]y֎KJMt JՐh>U<_$] nҶoh|Mfz^]ZfkX\,Jm"=ҘאW2*ݣtAi'J)83{8v4A+!3J,a@@oazSh@de9k IyۖnGb_BpAa+6~3`VFb"`S$]/ihʸ̶d ͖->vQDSțGڡ"ѱ$J9t:Ȍ~0{۲`cW"?=BzoK0$ }OL 7#Vڂ^fZ-si%EHpkY'/I@Op \OX@$bĐkS!F_APaIAZ!aaE,k  ǵd', y* hnEyYӊD1ٶL?:5nܪ؜-$t$Fx. r9iC~6x{oF&pQ^H&S˨%aVDݱc f#LU?oD^?+Pk(˻c<2qd#zb's^@I&8N(*cmܝ6TL.T$`KF=.1l}~ ;j#Q1:AIO zFfq?n~|e2u}8ݮ9SLLR S: 7"/Oy]JkN$M:Zmqa6Y(G'gٽn`:.xE? {OU#QVx9p`.aoҹ7-CEÑ}E-W@mtw'Bx< #N ŊY&u-R~"烾pcizT+>O$[g6^` _r< 0=J&w*,x ~!|ѕvMϽk)ZxL}"@*9$enգ&:ުi&F3r*KIgc "˯MVw`hAaWǬf`sjLeFڻc9sI оQbީVJbNxJ$b8LhMF-ѓ?y I p ߣNh0/~ ^%йYn8Fmax#L: ȝC7h,\=GˎFiY]H4zxVI.ȺIȘgbd$5bh5K S]ޝ ihK\! ӸЕvFzn@SZUoB[دݟӺts|{Q}z=mE48 (,lqt ĶZe o{Pۙk`x@ ]?ұJ%c G[z!JO0W(܀[:GsnX~D)Ô8*Ϫ1n](yYShLtwԣTw" W~e}wոllAi6Zm1SL/*M蝟(=9ʠ94ajϮu]~`%}]tU tx%^`;V+|p0NgZZ%>t Ś0oy4坺1֐Y,A^qtqn'/9 TQCP|8hueAPBJm'׿,nxB i N 2IHqwߑ/ɨi A бXZ*`ūϒs2N{S%xVkIg/ecq"GA:H;0t\BZe-~ʲ}8\1E`ѣf˯j_V8(hʪ̬~+h-꼁kB+l_`垰A6)~̻}J+G;/tH6$@xq%]qѧ&ƙevu4%ȖL̨Nekw'E-Z~=uSFX]p3&,W 78i~gU\[.!tk0I$Gf7LMPC^_= v$R8]үr>ToSZԋ/l* h ?x]6Eִ3yt\,lRpӌn2Q7E2P@B$\Ny8KS7ڒk'JrТHm'ׇ|0uy}TSNdgZ:eF :h0~ϖ0Iï܉,|F8ڼIO !NE@"ZߤA )V ѐ 9y;#YM5eęwء)x#&Uc4ŢMhY \nۚǢcYqtQFp Zh52Fiz2d7ӊM;Oڠ(o]wt~F,!ҫO(W6ѷx]ӌ]%,K5b?"$*l°@HX mћ #ʖ:-ZVZC)8lx1X*Ma}4BS͊#!tAI"B'Yovҕb~u2{b _ @ fOkuIQ.{iZm^I{IT! oߦE.lE7#w| qj&ʕE! !rQO:skXdhebLu-9ܶ#c?Ize׮ dg\vg8yqަ~ș)B'j6F0D^!JW T&-"M/^ z)EX5\G^Xbw G%>gs9DvF?Dsgڇv/GQP-<8ƃkFx}=hζ{要E+ (1ƞiW9X"Mnr%a)>CXşΧ:PZ9魎}D{pRӌYVc .MFRX物\>4 >WAsf,?G+Ύeu)*D(om-qn iڪ]%3Y${s8W>5oPł#W&JGJ R@?o2i1l=/ ;eBgX۫K=Fu5!# 5EGq%cBCbU\w{ltO>0ZwDȌoqO(k. F4P+Y\!8l$^#3TZ rfe"xũݑto.UQfiBUDH.kQîfhuLjfz8Q]Қ.%d@t:竛w,| |X=ahfR;r." =Cb͛n١sl[ϭXRy|1w2&4 l)r|IE?x]'R?Sl%\nkؒ:wetp(P|7߅xc!|vU7~7`7T]W[YSҗX׾$B-=Lρdz΢Bٷ(і >`*1?:_􇵚W_e"Q0"f4 V<}Id~Xt~@H9}fQ/ߝz"YwV܄Elv9CZOr|3`Di/E)*v. e A$(GUlN_UQ#(7W6\hܫZMpZdٙi ӇQaxI Xh%j#h KqNVL˽Tfa2a!<<},DbDiՎ2J//a-~" :ߍt]%6hJrÃMvۍ~>Fwv  vCa>]pY ~M ړ?B"R>LM_eS׈䧈σȿ ,*:~=+ ,V; Jm%2ͬ;3cg $q ˟$N5j{Ǜ |W:IaI7E߫ƙu6SG* jȇ!T8E +o_j9fxH%T1BֿSu5uy3;Xٜ!1;L'6iF,$) ֻ%#~Gm-蝊wcbweRCw<0#/M.^#o.g_%oMo)[:GH烫$PJatj:(i>aiG.˚Īs4xxczws!-N@U(?>~N-Q/pa_ZZ"EˬZ[֧o_6/D]W7C "_9*;*' & VEioHhRO-b#2pP9Prd/*;[!X턉v. RzpH-5[;𳐺lԒlc@ڂ@m4K@Nt>!'W`%lɰQH4»mͲ eMuwi:J, .yN0cL?YD?Yq#fde%7vÒfӐFfVdIrܪ0?VZ nq%+H_2ǖ]חzvalEPsKńm[,~}82qp?ت_Dzx+_07! Ql&7%j>\4h;hΉ $;eZwʱt[Ie?~0Ӿ*\E& ':; 3z ;]ڈGy g39b9qM-J]]Xܹ+βJcb(A('@j辩@Qtb4T۶ } VkD{bN]TbR'~FEYSsं .M $ b?3Ծ漳J\\-oa}m9;MՎ ͥibR1R_PI`9u׋`EfVt0=&!0,gM ~)%68D`ܭ׬YZJaVpD>Nm@r;>TD7N6ːcFEzʑc03Y#A89a AZ<>c"jl^Gm]NSsq7+6YɃ߼\j\n?䤙} v[Esk (Tyܑ}.͇ஞ³#%ÿ H{RGnR2_)+*#7ERcN'Qra;T~4`Dzp#ݨݿImWKeBA~Uxd'H BFzc*iiuRu-V}/ZF | uzȰRe qsF5d48CBt7"?K+q)ȂZTxۇYwj9(f !F&'F6;8kۆkPb[la!ea&]KWLsH1N=jOi&c`:*f8Ǘo4Yf8ٜٗ?1@njT鐒z G¦m| (}bb:.$=##qQ|\Y#z)]ǒu MU|CGԴCkL{+&i.a(}Qp0~/Vw!IiY181lXɦDn8ʮ`89OzpHPp! n+ay!f~/,Sru(W7]'L0$"R~F͒Y8V1UL Y2XΎ}ųkuWX% vQ&%-mBF^+l!> fx.؂8m|,;?aaW߻hkŵRҜ\LtpHXϫt}WDJr,f4JbMQ51a}&0zvOTګ bXhhSiէ+@ܛj eF`H꬙f'^$O pb#$Ί:+F)],&>48O=H(@A+zf%SAK%Դ~߈OZ }hTgZC'|JAQꌧ֖X{N\B=I)(wQ { tiidZlTd`ZIL?ư3~fn'"\^8(Y[08+%-ۄIRgQz{H~og0wR#tM5(~o,}ޛ 6sQڣԄ(UR׸AK|y>UWj?efS^<ښj SzZ8ȧJ%F73IcUr/pi]5LW8hhBԌؚLle)??6Ʊh۟+_)}w&~ui4:6 X@ǐ8JA'消o:Mu9r2x -īy\ZwLC^n ]i?6(aTNr&U֜_Om5$3*n;OpqlXZN*z˶# 1^I'iIE<5!ćR}.HRg;X7D\f , "juou+ Ae+D,գ&Rѐ8IfOf̡FއtWAsSp>PL{LN;~y۩A͏t!;ё֖O emp+[h],xk;Н%XX;(ݲLBqw o(qIꝔn$Z ÓZa>2N= IhGg6&z) 3.E3ilQWXT"(R]Ҡi QѹQj *MX۹I/ưGD`Zt|XjCaq( ,Mypb5Uʳ jpM\mVjiUd#48Y1ᓪoଇň<j:P +-HzA%;>xپ^ Q +!MT sN0>״ܣ&^QZox}sxfcI]"WS=Dul-TkS*L*^#-\N-Q`F}UMCeh[}#ĄJϧ:I[㫯<%FGlEP7u&Ryŵ^ pdn^~W}I Ϗ.IYS=/΢(evVo;~u>Ea" ̌kAaV į84gfԡtӝ׏Ӳ'foTHygFa0'Yq3U˷su }rztiJ{ U= BN7>}O 8 Rz6TFY% n**KpYƏ6-5E dْ|omN xe_Ő6$ak 5zf8^ sҶ}g 4|~g~{,Gq2eƋTW++8 Ff 9#*ܢYPKT9J^?T0"v 68IB]L4 ;Ih sqԣxi-YN0 EkhZ]`/A 1/3& _tBm߰'[y?dtafuN]ө//Q6:-#7 ѳX_ban̂oNqD;Sش}{X"7@9t{m-@6%h<9o= =kOrHoCR\mϱL)okzi@\IAP# %פ!QL عν<"$_s[Y0P=VJ4ľ$w2ӓZ@٠&L\ 1q[SٚIP< 1:[D>& :r F[-jyV2ږKPYU ~b?چޅ$+ڴ_cB׷YԦ<"@ ISVV!-n FObsBR66f 5D)H]e0Xr9as YAkp7t!@s#*t:>7r*h r"J؋|;(8u>C kpjTO阜 Y=O)9@aDF\JܛHs>MbJzӞӭ4DX܍NEMT\J<6ZЊUZxOfQ\Um %y `hO:yB]teMaϐUౣI |F~f )9i.pdR([tz+}3gƬbTM sddǗͣDCsF`cF?h/P'0X~ 80&ۢeIP]^&6]H@YJsl}G2- x%1QvՆ:Z~\)a9{&TQ'ka^.(/}6%N`KI$#:hY@EagS%#OgtRqgZ#lk;.?7NbB$C4% _ZkFA-2 GoШvF@uh"--et{),K0Odl24׉:]C0 /xW~{t[v.]g :̫ұz5D>.v&iW~mK3u:Biuj|`or79ZLnpGgaxg wbc >ZcNrl*E>d#VpGCӸ:hbELuv<@4DsiUYl܀='2LcS |Q»宇Nwϳ#'BFT|JC;zR?IoM:t<ʊ\k  e\Ih({!ˏSȼi/]0!9`> lUb}zq uv68c(+aaV>FSz2eIpqx٢080أ'|P>*!^V?jrDm0CN%P发o f 9Sk&ۍ4uOR]>3\;>qXR eP]_v}ɩ¨4{E 5P8Ǯ 32lԘګE9)Y(,@wBCy: -\04meS+{ȿnwBjd!ɔ7zMr.^wxTl|ɵ?'ЦjLl JkfS Xbn#`<^펁$榔ʜ޴qKK  | B/ɊD+Q*S|_&zt}|j"G}lP@NEnd[I$W- ˵/|TJ'?_Yldt^WN`B:{˝dǠ.p*Uv1 W҅_>צ Xp=DFhu2mϳA{D!O+4m^pL㞜=k9+l֣j˵.l֛ہPk^S1$otV,D}F4{K~>]<.kځTʆ9e;T# P<4cɌռ;h>Rq e!oNT\Lsf1AC|IoƥnKR-mwv# OxFCܵ Oy9&pN]3PZ >b8cE 1Pau`E&=D-XI^m:3HLZVV 8? Xi&G§RBݯ xBzϏ6r5?6wOHl k T@YŊL{6&sG;I xb?RV2MAHŐlc lI~5=e58/,^VօA,{&5&(Ic@y{ diq'<2 ܔ?x t8]-/ !W L ]L σ1޳93 C,y~pwp^M3UpLq6 &DAc7 ^An2O]fAdBmNOF@'a7Ef.b?n` S]~ aw(p.%tFGLܼq0-'ҋP>6Sњ!|' ȄF׵2`G6lk*TGsx(P9o_"ȟKʮ W(W3& ך}*![T mڼo,4LkB}Hs.Bͫsby ! +IVpH(Sܖ^d'.K7w)pNy'J $0*@r >lV9Joݱn֏lʗG%^FP_i[R9PՇhaۤ-բZ| d+3P%j% L/ | _zAfյt7߲0m&g61aigh7bPA캬q{[=I[r 1$2A -bɗ0d4NݤGW8Iˊ!QMڦxE1MBsX>K4<tlLSv`H4nUL8n/ e3]6`mm2GV;u hT;Hv1m甧+8HVׯI0cvq%Z;/(ұ-c}kjzL:Eqʍ, # pG%,tj\j㔉S} @ڋ/u =WJUq*,fos]~ػj/ |M].9ݝe{+Z a.7?@ި{g`ӹ+I8-Am^1k/ЍiWv@4m E'/ RU:<~S|Ub?@3 &ȘF)o r3TnyQ.vuG6}b&WbK*oL'6f|[rn2{v/Rr3~NEТҮIsu<3yNim6a AItǸ rtĔy%x6[I,2j:UvJcKm6Q[ }v8ExV`E^P@9I-ܳe>U#P*^[+W NݬmVv*< Z%(jfnbj/'S7ChZ! f`5փiީݸxci߮ouSCqH₼[mj" CF^m|ri׆hZ[q m/zdN߅+D |mY~ƺS@~['FjDsM>ը[Uh`KC ɜ*zc/[^lK#e6] ?BfE f!m[sB{$br_䫨~v"O~4𛢖\4Fq[4h Jv VWc!dEJXk]Cr9ςGvSHTc}Dl%ٕPP]Z x>NKo9=*1TN=1D%LC6 s:9;&Lh ̂wE [j؁JdV:u5KocJDN%(Moo+\Q>?!xT<  o# Qj4JN3^2zYa~˫)KI}z*2ˠڮqTH=piu )sw"<^mEPtPEhj.V\ޠ<H6AQ O$|Tq7YseH-~B:z-$TYB_"~=x5<0nymWכBƳ,Nϲ 1cZ &: Gۣ7Y..l)15mdrMIyŠJapX{HJr#%g4Hz4H 0olAے81~BC$N(HYg,g,p. )馕sqJ;j@[!{,gh'6A+{ 2:r<{bɽ=4j)֩X 0>GI$g PM_2Rop*5A8㥩c~`E\?~I1FgHE9$I1ޡ[T }"]Haj@v9~)fgY vS4nY.ԃt}˦W8,=ݩ$<6Ef&未s'06}43DgI~LUh ^r8oO/4]H/K2RJJmSUՃE\5f<ܞ3]ZFwZUk$Hy}Qe0!JW܀*>ڛ ZtPG,̇`e\qKCzэYMM8n]ZGQ"n#CBů;}ݺIBKj g~,cўk-pIOb Q9IM ;%dS1V/>xPJ̴N 3_Xc,N-%S۱A-;[s3&m M$a?(FVć Rn\-#젳+׻WCmM۬љiFMpW3&|Bm"* B`/-;1bxB +b  =j+јU+%j]ډ2|Ra2R!LMǖO㎌13m/^Ky駆%.hxt4^ %֞~in.Z($[^3PL ~L=Lݎ(8nĿP׏ Xm[$;O? w{=0SbsV1P"#29S,2I3Z`}W-i(Q|NtPMt|!{Ba%1,4)wtX8J 3=mT|VC[*Jg_?k8yB\V0=&` eh(W ڈ>jUᐔDdńwԖgn 𠪆~sOFHαF9*''i0r滻ylr= )ЋҚ޷yfKM#qKO{XT贖,zu';u'{ +3xz-eMj"V҂fߝ/W8WrDћbnwZ"ra] iUX|kHG(z4!ZxTX?Xt-П[I/†-epB⨮Q^Dr$@ -5Dtv%5>'d)B~† 8tDX tޭQ@jPnYSKPapy{c(5\uRKAwB[, s'*-5FP'_cyJk :0Skx2#@M2#2FMo=?s:a4u27YOm~02"7޼q/a՟ɣXSgb7C1(GZ9w w} >]Aќ vړp`؛ET<'#3^ZCP*B~.@}(VDV^7"Qŕ%t&kY|O;ZU0*FN"A<[Nbn;gEP,awlkWD{}z"u=!uVϡ2CN{h;.Ge0`2phgz&bBf6qH4PYO뢳ձqsg6MFWۘ./Ign&OqBJmiyJ ?,"68 8) h|zYI0 y@`F~j1ջfA+Cdkqtd\p܋=}a ;\> Yq +zRa.,߅2r7# |b4v $~ MG`uI&E5nF/m0EâLU:װLGiP J%DM byYNXt _N0|}PR4}>r6|2M}tD #RUm7pW+/) ߂3쨉utߨtm'sF_HoCZƙMn *Ԕk/;T: ʡbU8YIcfﳶs zj}gcrfyOT*WYI~dɄ3ʔ͋bz"dG$ k8̬mGο%{K>T\d"t,l vSZ4z%٨#lF";G yxB0.ΡAf6–]+ 7 kX>(C{j!3=T2l$v͡;QԪ* '']ibkDA0U#pC߽ն) uou' ƚ*aC\Έ+9,DjvP8 ]iaܾQR0{O\<[=Pf\WG|QLչ [@puGBOۈr˔QS豟^3jV@ĒD 0C`}ԨnS*E&Zl[{or^0_ BYxHzeӸEpZsvh9j:/P osR; ovT CzD-HLN6p䔜횅Lwh:[;bMSP$@yXY9%Runs=c߾WJBs]dGzw60adC7wp7\_l(u_닥ڶM.;ʤ.j9(x l͝jŢ BDଭD˸QFۨc@ Ǫm|At,1 .d 1Av|H#kBp!8C[^$mA0IѮg$eH>cNg8oS ЕY]7dK[j1J@Qs6\p*҅Ɉפ_4^/Mgate.f.})6 i8T'1M@Adu ˂(bV ٦3KK b\XÎw/'v0wKV 8 [Q] 7HZIPUJ_phW&Rß3ш`*Ugb 6ԕV2 @ٯ5;W0'41=srJC;.G6M_V)6EG.6QM0Lv'%y?TPlP7n[GjhZœUL_ ~DTZ_gs@+nGs}:֔W^P5/', ,$^P7FZБ c'ocss%q\f"">&K؊ؽhްtKvd #.k\^^2mdY!=/A)VKlPZNcSKE:5cɒ&Y]Qy~1W %2壻0^68H7^q~B6:'E{>ŮyoҖ= A]"{@q[':0&E-3h5>Ӝph>em`q# P Nrڑ~Pxjvrm]g'Hҋ7'1Zeq' ~08:@G>?)BџF jXM<*PT\1J3LV8'cxw'* beB))on0`Ԫ7BRO931=z]=Dp@N/7ߢbs4 qa: MD`!#w3N 1*r;ez>zcĔ7Bt#R++5ƾHX0R8E؇B`J1/I9W3# zz|3#Ql,ڋ'Hti`[;M]ؠh~(8Ӗyվ?1= %﹨[saַ`J{ x]ir.~h`%90~!ÉTk;|A{y,+Wzs3-#y(v(0SxWw3] ۏIo>KYb;9żˣTmO;^a$~wԣ[lOb5. n'10s8DLf¿dN"8 ͔o0  bxt%!֠4%R:F {\E9OA EX,uQw6!O;0Rcf-G{ $ 0[! }zkOM=j:V`,XTAK5:$eJ9V $|]BȫArV;87D204hCOs,s"J51/ m+#yΡ 3щNfȿcdƿ0}|Pz *H5weLeV{Ix(r%tP d:qZ6)јT̼ۀX6,̌?4mY1:=FP І MDj>=t&ϼ7^";r^=5I^Ȭ);Op8VTսN*11^c}&OQ kxr=Il+Wg;֡p @6zhLS{Nm鶂xLXR)˜'?7tunC L%-p; MP-مXtfuo61K7wٻThđL #oaRfc+$IxjQ:Հ+ aip\.<mlj3$dwNuorcXӓiښX^ %'XyxWˉvl,}pK;8?}}dKTQ!sayePMCS0z ǿ=]FH,ER|=&(.q3<获Mު^r٢|[OA c=rI(ʘ6Ä6Ss-V:?J?*r߮ AdqQ2T W r@.?7THrFH>[!,Mrcx=̦l]y ཮2Pb]AfJbw1;wYl;HQ{>}~R 2AZ"!qG@TNKoOљp(*K| 0Y?;fS%j|UF`6ZR 6ys+!X{N($jTqnH.V;+: $Q$!x2Ykh_(F u& Bj'R6̋VViQ|r(3TTE7@mpU_G9IeQʔk \em$Cs^imIJv?Uk=U13eB\Y~%܋>6xP*o٪e"Nv@uez@A`,6՗8T=u̯K Nl!FF?谮.x8+δf_;# 4$)-"U4H8]¿k4`#8*zm}!N! Yudz9\^.- q9;nFa=m'N#P[SQq)yF5$Mk+Ƥ`w0:N(\̀ /Dj @L 2mtĔz^m:~:C-wB;u:L)賠Y^HdiFT~V$d~K+bf[ҩU7FE"%˝?3)d96QɎ:C .jԺOE!)9u*ϩQn~~8WqV"7pʑ䖊>29k+[`J\31=U3“C>݈L+ [5]:VM{94OH5@5l6P bGzinl܌pv&Xr DX=]t3.!(jADn O}C&.~?!'>6բ8M-\igcXnƥ]]d2bvM)0y\e(OMyΝȎjɦѹF\EnfFUHnSQ؞C FyNir]rB7n99VAQ(`pI7Р<ଶi/;$U9pEg#7əJG:qRu$zHWAmk9D쨱@1Mj1N&z)U첡#8@ wvQ^W䷍K P lr c+GYӝl*^SPsC 3nR_PDN\+RK L[׼ጵ?>O{DhvnN{Q~cUxBp!⤢~)*AJ+*]nZyR9 ѓ. J{N0i`&'.M<+7x" y ZCt]Ah6)ZX$NX+,E@sTs`(5/D.ݒq#zQriv!ayJN_=PWL$E]8e54g:L7|إS ֠6B3%]#3(Hzt2c{scwBHZrnB:E \ Q@JZ`'\]`萚X96AAA^="L 3TMJdW ʉZaۛ 4>`P pN|,WEu(L689á`(tv0̨qۑ"'lce, Ųp+nuV: /L h˗͙cP}fFF*}0>pI )NW1gjq \HMѡ{ Iߪ"n5Y4>9Ttar N8jdV$m$[v.P(A`uU 1hnEȟ@<6 |5/ }$϶Qp1'.31'0T(߈\pK- ^}"a äU~5~Suh񹯜V`O-DxHB7X{Oq:ۯ0ҧ c%I%`[oFj;Lu8yˎ#IS+,A^D^A!5ݾ A[m&U ]%LxEGzuGjWDvAaD 00}K>h!ZD,W/m쿧]էU+Ɂ,x#VO2 z}"#o+wtJX[&S޼,U< M̀1[2bhKx_qt1Ю2cNv0!6&/N/8*!=n82MFVjfa1k:J WD&}Cny s$Jaqp*?lЋNVbhr qbAq3nYnܧ$ZS ߥ>IRJ[| zU7d+zq{Q(1jN} C+{Rį*Mdfj?E3mz0xu^*Nbi}u|#BxY,f`HplUY9R|elV@+t|ďϚk<SӖV Õ Rla9EPgI wCN =eQD 77zO=9e`6g )*sYzbӢ($؜ V>B8ZVIB֏^&{(e4ĖD5U=#C.+B!:jw DuIΪŅC]~**wIݖqm=|5anQu.yY4][Z.oMet5 rGs5lݬP(3Ut16%\f.Qʟ=! +dڰEFs URnMX yk{$ (1>Dt/㖲+6RE<|C5>^p+#b"M1 ,<~o2LJt"8:gcY{MULJ#A<\qFԼ vBhmYN=ҏIm 9}AhL+rRLuD9jPo\q452:3*rЬ^Sg~Y.y N0f{CS"Ӵ>UBl'Zy|e(~RB 2j~Qp)T s%C!L8<%O}-w[78T>.;p:RDk r-c4z0+Qp߼0kUbx$ǑaצXfSgF dg1uN [\xv>GQ`s5! t;맣9&Zf߷pKIAZ.MB~}ǵԇQK{݃|ckj"$ *&]c~@$Cݸj0XVU|3a 8-ĔΞY&3e_*m+li-Zf+~3rb1n #}S6iA |WX-']a ӱItK$ɇI$VTC*R.]rUA]Nl§VQx[=6IXyf!-f]JT5p֫O=B*T^δ4Ws>?n{`pUE.גTcõVI*hE|O|WqEQuu];SMq)|Epgqđ#- *;O`9Kj 0g޵.q0R`o]lU•cIvJfd`h tQ:)w@Ncݲ-H_A4jXG&VAڃ6-t"0]4@1aNNc6VhyW)T BƎn1`Vm`\J! پmu_tř)kJHpf6Uz?tr}u: f)jS(1)/HةE.ڷSG4l[²@Mlc!%U쯓/nCT9:Cb0  ︈NbXaTĔs7zD3;vӝo_.RP9!8D5$Ou 'K: j*h<;==el-j st;6w*Cbکv>-DD U[HKb"aA44-sGp2lo2W_ۓW/(m|컺sgaF{PbC6X[g2ZGrJ VkNQD3IWDbZ#NBI|Qt{UĺP_(6Pvyl&` PN) +Orz ymށvhލrӐ$Y>Akx3g=H* rH(h#r[obT 営l&0y![ (l]:0 MRdΦ4dtH5̰PjR׏8 ))jdqIE%|O>xBTT֠%&^mP*6$u9hoTt,nYЄ;&*{s$.:jυ%˲>Ub[,nj<-B0 i- U8FUq7uVrɗ(i9;_Ԏ:!jG8Vx`M[YgkaU61FIjudKt)mj:f_uî` w K7 վϫ'B[Qn6MUdn6  Ko(E+PJ e&p+ -XF:}~@?+Oo;=taja`>G&MMgxg:18\#O *40+^+Cv ނsU9a w 4K Z~>-jvC).f` io(n=Cr7Ťz?DisĻ))g('FREwY9k, -] U,61%?ZK4$"|$y[&u\* 4mOQ;|*njq"-0|#Vŧ2 ]XMc>[~l ߥ9DO2.TGPBMg1fUIn$|Cgc"(b(?`Nqů^Ke}rZuI/ o~^Fip/#<(Jل||6/^-gIL.Oo͌Vk VWgGEG[ voEYn'j@ -kD(NlZPQ[vʍe~P)Qws[Z.& 4ײoM^DZ=meBf;^f V2Jp3ΩmG)g|+}Eˆ c,.7 b $[ nABu0) P$[$v@yl(._c%Á;s7$vDkLԤ:5M;qnx!qW.G,9Sj-wzGgю$!F:T6ͤ?ZL44L©( fK{d'uG}ӶLX _xڑG=#/;뉫k+psifO:̪3S b{ ܢٽ,F%\ϗcawGQmcXn{l3g"RóuaLܥ(b?q,cQX }؍EۀWKI[}]^i<y;"N(K( PjKasZugtOAq<18 X)>)?\Ӹ*6N%n~ خr%6 [=(!(*}=Y2 ːNmZQhrZ/P 4O_yT_4|4[zd^R"sa.Wbhf2R+ζ[z54V,eK2s\[#>j"Rylv@W kIsuy5" sv<C?" Gos sR|p7:ԁE 4t$} z]ENpc&/Nv~}n|N,:fmj1SR{K>$ 0Q:zTuHjL,:WQ{^O1q~^QHwpA WY-/`?+U@񚩾G*}&FU^ `ygu?Ғ-=QYNhB_``8IPZԈTuz<.M)[琒\(jT#h0EGj{F[9,oKjS"Yth/zm9)pxvG;/e71SuMC4T;Ž5{ϯD5;7\"r0^]϶R;nU6S8Agᱚw/':0+ǰ}jXL8{G/d0T=CDlkyעѪ7a9ܩ#Rut'>p6ȭ 4jI^$`} rC8? V]P/,s1?o#CNYƄMq~]WDռS9˒1;]HKC%1|%GFoiKP'Acp$b~S29'56I~h‘'LpU}hQ;CcWN j.c S?-8H `AҧWWGW=[гg@_*W*-B5ªnK:a{j5◯,.<^ֽOWFMB xue'>`9A⨪g!`7Z&;{HX6/: ;ٓZ)7BWh' Im9BZGL=>f BXۥ;T8x/@z? |IyaZi/)yfk*:WBJ6?rxAmi#kGSxJW2SHO?e<ؙ,Hr#D(MKuYee\F\,EMRj]/(8 HĮMaumg(S׫I:sr C MVv>-s(qx߳ZPjMD탙f-4;K#ISr٪&57Z7nJkWll6y74г(sj rT:ܿhJԊ.Gr a;7hB~K T h 33I{%;Uٓ:[&# 3O!rڳ8)-jyͨ_@Jmk&a,# e}*8uV-Nc; e$:|)¦ge:Gr %> Êk I&^09Ϗ'`#4~XwUc6`,=Xsѡ.Ӏ2I`c =$m;G/?$`_*;rCH!kR<+A  MVc*㯆SE霵/,Gi%׬fM22nmgeQ$ y~GȨA 2$Ny@2!ܗ)k<A+Q#v8-^ُVD~,aAj;\FT"/|L&^r[+Komce-A8('ti$I4mY}o(_A/Ap?eiM?͒]NJˏLPeR:G,0 W&T\a =z⤫˓hj)zT{BCh%cylm2[QR&.O9Z>D<̳09i4fo;"/W,{NeB=I0NI]\wquGwj}Frmh[41vՓjbBRCAmx0 R0t/& k2Aڍ8^Gkz`_TO׃G:sfF0@yOCֱ'f!rzz4a> o sS `e\TuxD97Rmn(cCq6_ķEPƆ+8 _71z\I}9nA7]iS4U{~,tQxv@AM*hy4߶ y Gyyu;NՇ-YrAs@n>J]M&U+gS׏hr̨2XvTM~3ѹH#Ar7h PZq(ۂ):@ ر /]D.ODh}ېa{aaFL#Oݨ"6"0v:(<Pjy/px[{mħý n# gdϝ-($~§̐Y2 .N#.?mC mKD7"皉WAOT &i/l"آ;5ažB$yJu@JLWr . }4KE 03_&)}h-4,y-6:U1t0gNvm}amô4fFa/b%"2M Nw=(OݭFi _ߩSS ²7RVDB|^_#^z❺b{=f~4Wɥ"۴cRH(۴8B%V\xQ-L v' rb@7~ g] $v@_XĚB ߣ'tzWp_MrE'WzPţM'BvV[Y27 hqw?GR5? hx@fx[l [}$NJ\ m̝iheK԰\W԰*f dM7IqJ3?C7ʏ^lRh t7M{6^FȾ-:Xp iΫޮ;-SZR 2 ?:iJ)눁1T* X qۯ|f0>fW ڟ38ki,V>{qB5~KwA idן_eAkA#fR͕Af KgBS-}}d!$ۍ @jevql-1po30ZS06sV&T5C:!Ņ\˝itx©EQWXȠmwr{age+[XڃeϜS>?P?HskzgļP̫l&%ӟ& Nc{DZ\xU@^6!xrCOZd!}jEOr&Zgt>D0%CnL5B9b`@=lxhIRpbHhϐ!wd @1$qNP \RQsxٟ+o ޾ Ҍ/j[atQ9JtE+^7x+< Q1a4,)>fv-G Di0×q̇ kc|({  Iϰm7Ǟx77yqpNTّ?l啹#JJ1ZGl"d&oT,^T/kJY cy7WegX`!fEU`1{-0XZ_}A6\i^!XdH%ytg:}\J1iODqStY1cHQ4b)z^P%-OWfcN}XTc}uQzVEϵگ!Zס*h.ЙXƳ%)/$@N7+.G" >I֬?XgDM~8@5BzDi,iOD 5ތs0_=(0nQ{4dK=/|ުfC!)4Ql[A $,^=ܹ^_Ir^ݱ=Sg$\IkIbol5IR0qfQ5K'0څ܄>Pk:kvf,ۼ}ׁFڊQO/?PиثUq6[L! ?^KjX['@Ns0 3%c?Vpλy^t?_k>nbs?%^)VjÈ>JONm_0H$Xh鵈A5Z04@4 lNh w)ޫ3?՞Oe]Ѿƒ|uTpk>1/ n906 (U=;lυcfVւԮDz-_6TI*lOɆ2g EihH{}ş }pDo2AAԻ{ͦ lC6%# >7NX0дHAO rϋUGOW2O.;P`o )B!n-70і,?WTd)vip̉/>?!3RAY_:6[ {Mh%3ز<m٢ mzԎm^7 䈬h5Vqf&~V-/_GqS!=x</rp0qݝ`9naH;gJ`iA#-$Qe Ff1% ٪Gsv22olH2L1u}1N5ywYv1*˲pqCDjѫ0_X).r%#,S=6 h6밃}Dc}l? PVn:/BXڛ1%pSR"-_< RYBEz%-{u$3,|9_hǩpN"uPƙgW{`V%PLn (dMYqm;q4_62YxxzJ3 S8)Xs̋ +=U] Ϙ|/j"tڣE5eqSRuq*S`\7%Q@Hv.%Kx$yܟ.ʉ4*4ruubPT&CQ|xjNSsF0AO*ok,;:Hiʾ.ͤ7x1' fDA *snc>ԋ !`ʦgUO< __2WC& dՋL?A)!`Ď$I fwHKNc?VyU*LSUuJtgUl 4.S)!5v8-_)y[);d1 /sޙ: ҜOF{u@G{S茬/p:SLRV;S|EW[ $:kNC5)>Q(4v$SNjN&bwĄY6۽T'!V Yt(E6%Q3whp}H"s;q%XDøM4~oU5?[{iluv49REp 58 DƍAQYi FV5 e &294&p&̄l_7{$ к 6i"R>Uʵ;:D=5S/Lp)"!0)D 0v;[h4~]:hfN j j.>x>*>dAMaFa C>dhe VIrN@.!ʍ~s^,{R֭%QWB AO9Be"FMʸhX@D +tńJL;LBEw1눝(H곉tA׻y7K2BH)EE#m"oq$kN.c&A=CE alM0םi3#نʉnct/zY<91mDU+OZz9}јj+HHIh),\T+OXe&ƌXLf¥C`R/w0O$9&AsgA}H CqPWRVir@ /~f}ҴId& qJVidWա:dajSN8F±"$dd!e/Í{ 5[&L91!+8FVMGNO)b`^ޛkFn/ڒS~R 0 &w\ :(Q?LLY~8Z̈́XIՒS`}9;M_նr9?zBҳ+>Q {k:03fV(ý"jonu]2ك#hZf}cj44USq[GIk^ \S̮gϊʳuh_jz HɊAZZR--p!HNEQfxT^V<"\|?|w:cG7lYAQms3$)U2+/*8 G} R+NNg+`I`!N1Nmu;xVT㮛< fqA뛲McL߱o&"Q0A˭BC^^:T e'0w-=LV`N`JJum. ȫ\FrGOn ($KowlJ=dht$DzM-˭lձ<-Ʊ0`65\~h's̗\FrN *~S,]ͯ'?rwog^]vh ngP|%`Vz/]:X0%a@ī1|M9*Cy ֬K DM~$YO|Ճqs.40c.lཇ fgsԑEo\>pn۫/SܑJH(734QuD6KT3;:DT.']eD5'cF9@+>wףN—Y@hxk>ӗ<}NMbӷQ+uۆV&?#_R"'b.t5a2ZF¬=VȀRq'^@NWԡ_>a̻`aƑ ހ&wFf;%cĬ*%ɥNKeU}YZb܆}arJ_{Co0_(F5my(PC~= =\!qm)(ˍ 1čn_^r5վ#QB'dwEp9Sh-'|#."[[\.Go`4(?NX74M -BM E(W56GCɍkTAn܀&|rɅ"֬&F H61LcQޤUxUd7'lE ˚owlY-=OsL5DLW z+3BL1G'嶮Qf8o"'CEENx0h`KDX`TwTjbu%c[%#a%.(x#_F@ Ox_okV!p!yh9 j GIZ_u隋k '6^0f=1W@C=,{dL<8#`cwl=00C!)1>'Pv?&K3?ZO\ TnRޏ.m>p){ 43 lje5lWȶtJ. G]sMHS1uoEz؈f^U9\غJ<|Ѱ3[]xV>_ ڼ9ϳ@.>0墂&vX#ccI`;Q-X%ϋ2.n6|6HjG%߷gc'QM,/{*s=raA}DESkŝ31wr7ڱf)Vs{U)sF!=6kC 51R @j )S9R]?kRz8xexPR_7GbV@\| -%[}l1}Xm(wFn  8˕i=EX[aGo.a:AoT[8_J0[_`ߺ|'Ѐ<2?6DYwmώS;un~@R;wU[9E0d꫘ m;Q#F976({z'M+ye}mno '˛^jB>:LٳLZUĕ (-L1i߅\eRA}IrJDTXJw1~Vu1ZNVY-qM>vObPr z;oJ,unLAViGD~yfN:X3ybU':t 3R)bKAh.1|d0A<1,A ,6 :40589OZfxIW+ӛҮC.k'ֿ5f0N1o C⹲ׄ5n!_΅3:w)ȏB?V_Y ?BT X׌0h{clAnEFq#Dl_ ߭"bmIm&e*{@Zqhr~:Lm:Xy5O[_'L%ezn?v \WX[qqr%Lkzn6:G?tS?6;|2"[Oɿ,+@i+t;r,2j*y59KARKGp6>k/ۗX5[_7W5##$*At_ GmC8CHh'm[jExߍp A| 'k8,J'_ԅ@48qۺ^jS̔WT(Ww^;zڼD+h8w*n[;V|:4o/bhC VmgfVpXpƎNh% 5 ?輅YDόԔt~{\νun "-e>Z~/e$9 jc3z-ӍʉyMcq*?ͅDh"Ur3XX̠ZlQssM_|M9 f#lyzmd ␗_Z.1Kz~LQbʹ>qSrB%r]AOSkṠ\7j&nyxp O+y2N9O`li; oAsk~rj|:>]25$6hYMcsFVA LQ2AXu؞"dwOF.|R()vrs$AN! $*Ji~wg*̤ F(7ďlwYq_9˶ P1O7KlKN[JG{E(UXD*?Mz*:X:osHƊQa:Py d?KQD'gOu%DDGFÑ RSsG7}'B g24̙Ik;W.q VQ)E.$ 8U*H$ش'T:G ]3N!m]<us/֔@(76WTdk}4߫}K 4#w<2ira`ZwNJBpx 1/"{H':9vn~ ͠pTg?K.ͣrM5lM!PQb;)Y 3= 6n/`zi6 "bjĢ[) к6_GMGt7Ws6ڴK e*e %`YR0M`7+~:mdR1ATJw1,kQx^O]O`Z8nʍhצmv5e#Lg$LQDNMមs3A&/F_l ,:YNXU0Bҫ?ex:! ]/הNK9'XR͔F IA°NB_1HTpWJOȶ-d7:6  6\^< ~hMdVNE*8`Lc:d͋- צ!R:Y$E5re/6gSi#/u\5^7+z$%`5h$.2NtʹCWRR(g56N)h4#6zJTaN%7xIj3tK!)H#r!'H) wdw9Q솘6>gR^>?/͢Hd_4Ӭ @NY/wb3* CL!ⳳ% U 4X^kD(4Ϗ0t!3AY+qe7aޝ ;?7W['\U9-, T`3 aw@OO;(AL6#}jTJRp<͉;=ai8Q]Sh6 5}υ*[?hl%qQ^b~3t+~k!x lrԵnڐkI5~fڶӰb Pxe]]WMWe K| s#(z ^%!xGv2iY[BxO`@e騻>҃R2ۗ=?K{+m׸ kbHrߖX\qwvi߸ L)Pr$ $% N@VLW|Gx ayZllhV (6n'Lli |u5rjdF7[;;e} BQqHgDEy?W]=+ bwx ]|thuKt!jK1byӑ񛟘uU|g1cy%`ͲX,GIu+XiժY2˂` $Q**=?~C HK85n-!%-,hΔ.1L'9*m0PH%%y3OS?Ndup\v3̟f|II2lc\X<,AF9z9v!2J|(UűvRf8TJɡ"n<}mʕgQvK)=k6WyϕqϺ>,t^ZSLFU4m|.fB. ˡr4:[OVknKYg%.#rl:KK3ߧ|q6# P'S)FP IMֽH]5a!vKU\Rax[btiLNN jnpÊV%>5Tf/|g|̪=TMF3pY4BZ.%1Tk^BfkG%#o%0x:ǁ,7mzC{1 5}Y@&y)RqX E; _E>BFѥ֖Q~ Y1Ap7 w½*R9D;mb<0:#]&@NTd;7 3=_ dѴu #funB5fMA>; IkR;Zt'p"J_ո6Wvc>9vm 4NSo (:u9k1="w>ֳϧ_B YrX{SgMH7w&`[mLTjl7%.̚9ԙw!%<ztjWWYY\6>:$D w B=[:ai:m#* Dc,>xD3mS@|b-y+ !JOeAn]!\h4Freh潣~cCeWLʖ@MEM>1U3,e^덕wuEe[ĒOYG%&Ah׭4S!bI~RY # }ڋx-yfJb{& Z]w$ҤHXЊ\cE֒h* ;(Tم֛]ؼnui7ټ0[NFNs$痃Rx#?'N/1[_Sg?I1fm6}orOqYJG)޸ #fʫE$͖C=vwHHt{BR%L7345t۹ue@jYmb(}mYk(AH!xh`X%a QKy+1&:NZ!.0Rwn36%蓮v٨&x)(_ǡq2rknSWؾz&pJlT<.5d|آNqt |j؞dfN~[qǓm ۍoWQID l]-)}|eWTE#3}:gyq0{EM&)B;W\g $c % W-ja1drM11H`AW @&"1S9Z׎gl㮸cB#(VX67 Oe,N]$\@xޛiCAF4|j.(Wͽ53ß˪ۂH}#GT֕n ͅԍFI*l\WG44E4UId9 >AG&{*>`;=%܁p;O٭:;N@OϦb[=ƟS/mzoχYshq8G*&v-;lJtVkl\[9x@dʇ~UXC\ NN0hA[/޿r-pG1DX  ްxB}L@OZ?rsw:p#t~k4&v4Gj\owpXFb6iOb7=3,,[׼D3{ҖIͶ}#6wvepGvk6Ϭ;|5fm p5@.K5ŪLEWnJjP|uAq#VԚfREUȴWo/ _!7&m$o]?/jE $!♔8`z o R*ln,H%9'ښ &\1\A{KL9Ύ0Dco$yVV+-K |=E8nDA3a@i pvGyN$ס r륶tQ&݀vW]/uh6Cr1=@r5FxiĀ@}rpaayE/֪v Q+ Q<ҽ,꾙3}5Hn{0Ka"a8LZ޼?x 0xvUg$д歫O<i(ʇn7W=]4`?#{|h<v0ʋׂK$p`FoE᝔ z}ڳdx^bqFCo?-wjYo/?Md)˄)@hĀuj^&52tn qŨ1;9UGfN+FfQt;U9o6w7 1thR ZcnՉcU|;tU>VhNV7$xT->Zw4іRN"xj1-O"@#bDlCrTߚlm _Ht@^=a7 ^0 rE=t2[ָQJY%2%UEX͙=- ńCd 18 :.& COU/ #c: hD53 SD>"eNdJC712G(:I%/]OG83)YT;GxcIpG*û_"ו`iߔyc{S60AV41o mrΫY C p%Mہ+V,*SC zGSJ_)BSY(f].lUL 2^U)+!B#6|@€rV҄!F-A Ӱpf(F9uwd;]04xu|NqW`ChE՝_-#Tlezpz`OWV XohBAqAPSF܏;`YN7Fza(OJ$o Fچւ8\c&tWm-<s\L;0Nj hJVi ~QACއ46)-|VTZ۞rH÷A] wlv {b\.`uVI&/[w|7ӶX(ğE Ƀ Z.a0'iW1{{_EOiQWm6}PAB4v:צflsDž~F[viijMҞu!bw\` T- #Dž>mq.D(B'jiv.ԭ]s09(RhK_h4qېf]9Ȧ.S^|'@o#"L9=ӮwRV`I#tט\)cJI.hm !%0 RWRaU"+2\ddSyJ$:{ rM^~9ŬCǰ-P|hy[;sneՍ` ]Mu[PkBVH'ao?I⌘ ӧx|PY$ @DV\:h}!(COk>Wxנ"H`7fM|@yYɓiXwk\.6bHP/ķֶb*O tGai A0?Y.74|}GG~ϝӠ퇎BMaa8I)H2V$3:7T/꾍/%6:a$F4y p (Wa9 >ϼ3Vk3;{<{L'{2ߘaք  gc׉1?*P5ϠA=Ut6U_ͮ7[|:m_)l{;<\;|hu`*ㄬrR})skCz`JuԈ{@3/:#i `]Ѥ^)FLwmiaq of>˱cn @C&{9Ѳ=m2qMh0&G#V Yboٔ$7QDpr L^ɐzˮ R7Pǹ6cnɔmғw"g5>< ^#4z_BY=J!?YA913"TyVH샗U"~ݠju2;tK|u]UPkoT ׍>Ÿ yF}#_;Mz\x$cK0ad%K A <=8592LE\]|Zi}`cX8"7iO=J+UKSd2+K\Da ɹ{?}:[ғPjogBqǼmBI@I*q%B\à5 5G,yqO⡄ 4߅-+ 1h8M>QFI)'qlK{Ҷ+e b[=d X0J&*e߶Џv[2Q_XW[Ӑܛ;.^s$m;}#Fg9@4&І=i5Uev\5rwEa?2|K'$|rYO\~)ͺv ˰k ]lis"M9O=Rw>dh~P6"i752j)n{}(ϰ)C HU׽:`coC0޿d/l`~+C/a:Sa⻇Q^D7Cw2|u؃"qVEV܁•4/e76zZBV"4|bw1fdYȸiRJőr[ϵhPSHs@+>C\#o"WgH} `)E 3Kk\>8+QH| `Qp F+r:$ Nи `eٙk[ļ)̽[s;,-oB孊 xTJm+XJx1u9;l >ӺƢۖ q?U~MMuP5g9YiiҒpZ\@<۲kC2ʌ\G9^\A ST3 l bƕ9s_cOgċm|,*Kw^(ǫ( 4WoK/rPPdUlT(w!ScjCj1bҒ߁磟 qGN3["MhwmwQކvɑ0rlv>Qs:Uw4 /bRi\0w-8{B*˾<(X Eē"Ee}[9: :|B^Z_~]o0=v+GdX^D!~иg`-'PI|vL\ʚﳰo Eqצ0ZÀbAh>pҠ3f Ugi=Do5kRnLgvyÌ!AAF42D6;б,1'O,*p}x̪vPE+~[F/ @3@+ ԤZ!44͌d I[׌Vȁأ0Nh h/+rEYMd㸤.,gk ]&VdJ5B+nP,.1?AAqr[vi-7q]VJGxmo6^jk's.CŴj"wXwApP/D!k4F hXxu Jjn=@P] <#9 ״tNa/:ǵvx45FB α⍜r#u嚏35EZ(U;Nv: q `Ⱥ05y#VY:}Ly?u폕pa/>#t_,*{l0(X^ͤX6*ǡ[Ϩ`H]O[(0//pF6YaEV03Tx'[U{.ˤ:;9жe>7~ B/c J5ޢkeUlZt:P<IƃA ?1 G(- #\/T97؟} "bec&nfrߗ*M1l`ט7?t3VˈjVsh Ϸ{h-0#Hy{c14BwhԊ7f.N/Bґs4O[{jKץW~@VW0>G$(3Tvި$8H/T՛Yi"4 Ʉִ!k:sOzx8Yj~pG_Lv{k' \7n'@y '@v5M:SdM]ps| Sˏ;*Zrm1>=AT޸E|!)+? \mEb6@`)ek }0ԥ}f.*%mN|lx\dD,{NW/ȫ?>SE]ճM?9xQ?wobz3;4mxEMa!tH': O ?ǵ[4 MU+8N/zeVy켾!5.t'ӗ_k\Oe`<= NXeL;v%SlQ3X];5\;4M,/>U1+beC",w{J3x |N'.~:n&XzR8R?rB4?-mpBL=KK: Q uCV0/Pi_}#I~J,3}^?olhj Q%1|QN$O7roDk>!;\[{i BYՊή ex/^\@z|$`~zIAHг](9+q9nO/eu@_GG -t Jgdт nDLTȽ6f:zbyp%94'HvAN{Ōd'sCXHN޳{8B?~D{u*p$ sw7}I UE'濭Wth$~CͶ32bV=>7}`W()['ΉV!K`} UI%0~ u*@@1z|0Σ!k׶*(WtdB=d16qOԂFK{4JCk Zh 7lԐjؙmΨ*lM"aw4ae#FtY9%w S?gfP ,yGvg!\ (> XAUB,Cj:iAyG8=R `.-m&e@ o#pNinKH,F3`D(fC3p֪>zTnc >0fcvtS^ ӗ u!s͍_[g92#rQunk5G-npk;\2f9vpSr`#F!nt)^=ql!VƺIg X v-;SMΧuZO{ !LBW=L+eDZ+sDmg4W jC$_?>~+XZ%(.\欧Ѡrb;b!W#D s)zI\6!'%I!J&@bX;q.+(N#5'v*kx/Y?-i:xޙʐ[=i8 8-U"vp?;B #k)v]J Q;;]%SB?Y߇4\ !4;fC|'l7'gϦ(U @uh6T(7t:Ueތl?$^u6zHD^)dV2a.CY־Fw`Q@r>oʘyKN}O{6𴛟M*2Ȳv _s)s[2"Լ4(L)AH97dőJCQ ig8| ThP,<88OCѐ%skz5,[Kq|'xwKa2kYG1-"]f.$V)j)|BQ!o; OvKcR-Tg415OR`ge[6Y[u}̧XJm6W%J?kg{eDp'!;4kL4RwJuprx!% f8{_Y!b1t 03E JQ(&ؾ; ӁCtL=H|;1J:viU2p?uqMS8>w_! ([ #-=o?5̷uX}Gf K#gBƾyiω%aQ#HTb*]꼧V^ٸ|x>tT.,И1#8 G8DcI C"_"ݙ`ʂgړH_?u!d\~&/j/]w#Ӕ9T|]Q_8ziK^D7{'CR/E+:ehEֺ;8Z,/'vo3cIOQEx 6)f#ꫠlڥޣGс]|>Bbz Y7rlF^rA1__V+m\>١?yJ$vпsT=byu\ `Plyå~9TrRlV2 FnauQ8gr `η/Ir~U|!c'˔ww{Rq1!K8#]O_,U*AhoϬM_ҠMkU*4?joN& C>WMCTޤnK5S*IA8Oژ ! +[sApm";`!87WwưCz"+8G4@荩 ߮V)=!Eީ^KOɪB@r/EHѐ1ovuVGiP# 73Q/Lz|?{$,[ ^k;#5)j!D mhe:h2xU9=8>0?7Fz: ʌF rrbc2qW6'FDp5tM"];8V}qR5JsA*KɘEV5}dᖾ-M4򆘝.L ks(P|p)y) ]Ai!dFpoRTQhfr:0y&% sݬibf5uTѷd?w5JВ _e GJ}j1Jxl_ j]UHܾN/7pb8&ZmO"_v!$fR9sN392D&6+H2*<-\7)_wfwd`J]_v2D<_܎IGr*67@n:T܄~ӟ)ܵI g> cNØk"*? N`%6f>o@ƿV$YK@l+_#|ތ_O|U٩7 p3K`ߨƥTI֍iب1\J@a,EO0كq<@]9p~ xSu03҆<(gG *O}E0'3{ُe>Bl7/pةTc:[`d>tl?ctߴrڕdcO z4jٻH nh blr]{&2F fhD:> F{otR?h{[[Ҳ=+\`Ì!V>sM-U8Y+9oKGkcr1Hs}%0'%(LP`dcGW7>G< U-"MM)yT-RG $su>7sQ2Kc/COL r&,XeʏǾ Twg-G6i('Zt՝#!bW ̻V jh5k~Iyt:zT}߫op KLw!j^iq3ԺƼya~啚y_+1tua&ag'\8 ?[ܕW$h\/5^$UЇ$&X;XN-S1F`Kt(rj |RBxuu]YaKYBu8N/$1䅝@qYU2Ձ|=j5Zm~<%Gt(לMr[_Z ipBUڙfnOkBkXezE1:ć6Ǖ.-33}LFѯ tߍLm7*ҙOwzt:SYD:_$Δ2SY"a*"#iTirC~kkwP3Rhy[pb! eHԾ^* nM мW=;ZTui75g.].Ny.o8޺g%9Zb)<Bݖ,h 8{?i3ާg[b>Υߓ/r~4٦*˥ޓC>3Q6L[z 4Ŀoo|ѧv=ѓ~09n5~O#E Ņ2-5V;oV Tgas,j\&hOac5'pӦ}J O(gCxs)|-ϐ}XRSe0W"b fQ+ Z/O٨ȏ ^?D s7TƤ>$a'Hg}Z vmg[Cb$EnN8)|༸dd[F@xùZ6g1\5DӉ-S+)URo:+4C8䕠T]NaP:_/{(dLRbsW8-l~ovU9HL侻_ %.rzn@Mރ] ;?cORSxک SPΟ7 m&A29)9&gZK$+ۃ%sV@UeNt"˫]E w̰kMcF_b1! 48>FVӆ 2C;(l_$|X<jpŔ_1K!+E&rޟcMf>)^$(Zީ : }jec {>3PB hKJy<׉.1_\-X g{(}|IoΙF KW (دI<ٺ нre <|8ckȒ(}]k1F 8Cjɷ}:}!I4ud~VK|Тđns}8\(K 9g a^9=y3PPݣ)r>Hͳ9'(2c/9MB"ye!68sJ4F^->xS q0!GZRŪknpi&4uVYb?4K**Y apQAK1[!G c!; .uH3V>=f.^0Ss0j-#IK v[Hd̖߉3OdA]!^͕9HH8 &i`> pi&Mԩ`-0[]>nպ%-}F5 fx~{.:J>ܨ 8T4Ymm;@Ȉ]UlS76j/,;l=0A'xa5iZ|9\rŬ=S:F*UŀS^7Ykj|ycr1o2c!wKaC xȏɮCBefpztS!"UZA-@b:NEO9E p߇s06|,8u R;*H! ןxfe kqw۟5)%GI¬qsiY}20:N[mK%`="sK-`(? *{Y6^r>x{El0`<+[בӉ Gΰ*%'/+cɫ9Ǒ @&/H!e|)[~~hD8~U TB8t[ʑڵ3Ы y,AyKޠ^]+YY+}ɚ~Oe14WF`»͆x[FH\y=S?*_`uAQ4t?]mLӡ/vo9f FYnq10]h^~: Յibu LzNR$/E )u6k#7-[#FW2&Y#Hߌ|=%5{NBUHDb*#1flgJ*GV6GY`KWoxq UD+>XJ% 9R_q2sۋ7q}G =%# 4Pqa 1ulK̝7FT.e@f*'U B4ذPsSp,ѼEql7ǦOR趲SVISkA69JFuBtq )th۳Ѣg9ncZ VYȭz)dHAN.EbA<8{ BU*:*Q` jsIw+.j/Tu.,wBN[Qͻ > ]'~p;)3~Dlp/#YiOkRa[>Sڈ\"($cčgl?3$!~N/]/[>)9}zC"8[Gf:sK1Z') Ãvܩ)nP@MՀ23SR#38Xg=cjB* }e<Zúp迥ԕ{v ޘ#̥T>[cCkz. d@ߩlSTnl!Wgfv,3)Y)yI=kŽo=7dSd;Q6bI9 SG<OT>rlUv?~Xc6 $Z:f{b}\*~sV`Q 3%CjT{0m`ƿs"5X-# f FixC;yI^mHIdI+ٴy$KܰH`W@SM˃CY }bՁ l]p߄EyɛNB "}}Q":_? *592ټ/[B Y>no]GԭN%\]Clx4Z"MVf`7EW Jh4N(WF]-}O F2Z޴ֆZwzhRO(W[//5.YI'1y9¸܎zk#e ZrK{O];iu0p I{Z_إ~UD F~@Z^!!#jRZ^$2noyV4T%<΃ J*oX/lvgETz_dzgAg .dSgA[>[˜^}N};w]BzUݠ>2HNzhuyB)иeo{-Xo5(zz+|$iܭWNWΗXqNKC&BHs)*5խBɠ 9@e\#n5rSL#"(ߧ^P%{C}6*р w@hZh PJ0 e^|/Q'Z)L iN|tlLE:&|@O%ևyrZM[ 9%JcpGb&fvhv ߗ 1RiX"CI$O \TspĐYhgcmmxllwlF Rà R-6ڂ!c>>Y)x ^Aϥ ,x UZɃ?d,flYq/|o&3r=m"~1P?f``}Հr_;n yV;% Vb ) $2{[lM}Ƭx/.7?H_g?^4c;"tD`Ô1@ |4kr/ѥฅ]PG␠<ȫl w1Ja.Bd9+Le,P8E| c $P~MXsW͞U(YQbU]4#%kpEYk7%tʉDD3)A3]] vnB@+ cYȮ[):$gzٯ4ʹݭ\d]p.$JuGh SEzы#!ը9%}lѾGF'%z*S^Ԉ<2d"^'/Q8`Fi!'82+/FY*nPho3)x>C~IpBΞqT 꺒$D56u-IH|Ug2x8B"qEGV{5mܠ PY hEZ7f~w,ѧnoCCE='IxUYqe#X{! `[p: >  α++q鑿Z3!h[l~gw3rtO8=j!o8[;RSɴA +Ov'9筒KO;DLk>M1!/М[d5fKTQ)=NS:')Ү~&* 84{%.<=+*ԐQfrƭjwa:eolȁ~KݟyR(>1ԒB|&'4Xא>WsB%fF--*JРՙ>rNv0i5BTmehO pVF;ՋNjP:k`8+TurG̅[J|7ĞkpQklEWSYL. ̠piz6FV;ɠ׌KpmYl+d,O!XtN47 ڕtUYEUWz|;}B)Q^4mƲĔ)R&ToSear ^a^U#+zހ:\ZnvKY3"8n+6 A=WDw)JڂQ¹@2^yY:ZZ Ui['Zg> %0'%4Pٛ;^ M5Xog!.CɩtgO^f--y୏:Q)QU-8|7/liHA`0N*9%X ޟ4lM%?@dS-l' 2K|58Q3*V^o3^J`kjOl }:P0RO 2XTf4R^Ch;bJUwnU_V W}v(е`ẢLYWM ] E5麒6e{r o E{WZ>_󑁼/ERGScnFC'ilK_AO %)rpmV \FEd BplKEf#'H݁FsCn(zvxTv=ޜuU~ N~f3MsgBi'A! C D+Ш_{Bӡ,;!t(jj䘇/kaG)F( \ccFw|ȿLMJafDvY UUpJdRjXv 8>4c9ap?U쉀AU;]L@؈qBzJNVX{@/06zҠ)ep+_tJ4'T.E,͇S|QD Ԝ>67U-8)ʯlZ}Bȉ#aNjHPdR+wn-'(&{߂/.).A'HZu}jm&gGG/Ѥt}QI¸Yh(/ N:%4)y8K.Xkyi)HK0{ݢMfjif#&XD[`?ǘl,5P?kބ[A# \j>6ؕj* T{;1r ҘW/Dc f_ P%_l";7B+eWT>,sN3 :\D9r`cAn@Dկ @y֚j<5{4fZ38sm#TOLlYNrqbU\Bfy64' KUoB0Cu.HadR"ρsd_/P׷X6jzYh~=}zZMHNl?|h[(3|Ǎ:x6[!nR"!i0EHnw;b|xNyj ̬kxDœԄ @R>Q zM?2^: ќ?0)C+4W_if(% `I h$p{]sj,kRxQwow~,%`DAo[[i9JAFax6E ͍f([`"d,4K$H.)i1 VLPܤj~5pjxp%!'mU=ռ}t35!N6 jp6G[#됫LHJ(:2=;2Vx~Z g1s\ Ĝ!rPe B9DSLgX+/`QFVW+QecZ[X.! لRxoɊhy-WCgD#NBs[缬}O]Fk>U$g6?/@Wϥz*Kg$Kv4':Zذv`X9(҈Tiܑp%T᪦RNOjjM37i؋c5c*BȃH0!7D ,nq>'肏pۢ~x4PE6Ƨ*'6:R'wdr2ZAa"gj[,V)C6)~{^FDw>BZXekԐ͋A̛.8@}C=??m뜙vO,m[d|p>`t%?3A t6X<*Я7L{}>>P>oW;.TѴu|oU_8VmCwEI#\k[-:ѼH 8y]8շ 5D^JQZI1 cqr:" ElCJjx$( 㒟5Lusщ=tXdĹG =hq޼h]ED=%BaBe([qhGq@xyrbRR?سVvĈ }tp؎體{mױ5N0O2w Lrq~ֿW7u[-2!V/3)/\0/xvڠH_pr[5!빮;bgL/B>K@3+w+"'0xPJ̀_֣C@f/ՒRLǃ*[_ Anv$&NZt\/^/,&mvtbE1%+UL4 꾻GFHLK~*EnXF-O, $˝JEz}˽|ئA{i\1f[-F,gH:YnG+s#!i/ ei#-c|pjw$/:fȬ~NPNiN5-g\ӯ#=jdz+)_ϾN DY*=ۂ8Ul`i#. m E $ء?+], tj<.)PKa%Fa_0`8'_ SˌԸ1@ B.e׊]5 k޼ِTq M@h&W:jAL}&Q`[mr $<D(jEE/!l] Nwe;:PYq5'&U'i2m^#}zw|y{R"[ޞdOMg Q9,Q U}`KGKr7oS A~Z/@{KLCpy$c=rvJ-7BZ=tzW[PZ瞪3Ӗ#A;K+ogM&5@r_|P!Q/TF&;J4xvFb׾Dt<1vI'Fo'=N8Dy>|82֗:xB5{b?=d?RfY2\ۨzwkh5,n@r W4/夓NQoI K\TtY1]Y>7_uqZРs8k Ф; 0A;czsTxSW f;R*;tˏ򫜉i`lZo]O'RЃʽͶi  \_jtFBV-uRd)bZ#Nv]jq X.RCWaG_F ܸ%b~i³?ȯu_ 4EA{0zhkd 4*$r?6j=!YxAn[/ShH2\#̋oBc/EG;*1;Ʃ^PЏY4d aM.1%cƈ9Ev`!:3$1^18$ȁM9HMTE: r] WrNM |ջ="s-)Cy^A-R׌qza#CW lWD/d@@U2ݰ5"JInZؐ'`etDFȹSz*3[wt$!5=pK8Oh]]U1.Zwn`Jz-Ϯ?SHR pDkGfb\o~i9^%[ӜxkX"vgd<؉[%Jhp4@A\(SaZk"A(0$6Ԅ :͂d6z6y`a* ^S(0?KOil)LĨN1s^ZvM7Y`6W)w@Kʛ(J驩R[OaezU*8´&)Pɝ?"#ƾ.ws%98eFpA0sqtJZϸXz 2#X%[{\m 2YػJCF\_\&P3NNz7Q5xE@JMxF]:YM;t_K5o㆖aO.aBiƙ%p0v$AL}M\sŻ} А.u㫸cŔy~#֕u8't\=0 5o\>2[8_<"βn8< Μp\6U'uU:Eiؠ? J-L=sK&} iO} `f~e$02}oH)]] D&AُNŋi' Nft.2d"bKƻ0 a4V"@M]2وqwE`^HtdɼLX),Y7NY9vp }@ tѴdH.g-2oc( 3;k4~=#XN𷖱YZ"`0IeH*JT{31 |0\}~ U67_GIv6W.nESsߛi]8-nz Ie:oȣ <38"*$hAЮCJXkMM2,MGzӷ VS;4pu!kV'k*)`ʄ}8^B[uCOܥ7DiHH8[ @K@S A \mDZ}Cvʉ\t+O,vj;iT x1RMu>l)H&3iAT*Ţiҝt2gE:y1y5U_8n&6>dLû1 @ϷtEzHFegT=g hdYJ J0>xh׺slP8_~&9PߖHz Z9ؼ"k+A9Aag%lz )v[sQq6nGt^j06$|㬲ЅTIґ#.c=QlaI#-̴XH4{^~/šH ͻ/FMw9)jaLi ͯcPDA G=0ulh *qV &%W\(uClr'O/Sjc3dW$tu XҢ1S\xQwg: چޞT m?ZܰűQ=Qn86m63( ,(C'}":+\ժ; vO`C(.Wz>CC39}̗<]x&(7l0u7,GRbL\.eLu"uIDnW>(ukOo*e47-XBŀC=,7P2Ѥ9]򺖸^oZ^KkniyܜdYLbyD6;t8qR{Sw{( U1kBQd>c(%wqt678,mŕ f|^V.#]Ƶd|BQZE"0l/Znְ(sSÙhNŕt а!g ]2H;30)3^PV.j qhl6p}:ԭz?f,c5 r|^__Eu]h }B6·C{4,eVnȳaOVC7N\n%7'`fDDʗ#ڡxGˍ]U2Msиu7CR~ԿՆ'L:wy*t/|2(f.⻗%YC GvG1ehy|bGwҍ ~l]%ZP08Z3 Mjp==/)zR O\.o9zhAl1S+ߘٗg4 n ;:P1H =d:N X/Y/-@`t9,Sab(bGߋ"Һ8#(#ho4v[)h]Y720G }LYp:@Mf[x yLs?i)? hs6=D/6Y!.h?.E l *?V-V ^^7tg\t50Ԉk|<;G_,T*]ηX,xES]h8;[S\{'8<0feX^?p IܔOR9Sېq y>N x 9Y8gt?ZĢ?NwմUxOBc{J诺0FkWt.53y2_sMݯ`4' V/H&>.zB^W:Gy>^Z+(MC&rZ:OvBp`srcFsM4ָOϓWNú-"`h`!ITgS[%TA{kۈTՌ^._a251ȳ;z]&[!t'L˧lDW`O߮Z``\~rݮgSW~ X-xFd5j 6|,Si`L%߆5#n%#."{_b8 tN?j-?RfDT8z^1=#]wIsU3+=a<ʡج_]CaD 8 G)Zr23|R`:k с^tzM H 7n$rA˄)ǹ&p(62nlcB?R`ϵiq9p gwkg &f̴NU4ɼNUf}hs<+fhjƼJn:{_?xIGK!KMuqҁ -ms8߷د0H0JČ\5<}S1=x0*ykx9`ذi?~l/JqD Ʃ9Ro'|Źze0Eݳ{xϘ[jLGh s hHAsf-mG*P7BriWnAVt7{dG=U!*%cqѓv@R~ tt{߉ͧ;xh_%O fѡ(W+7Rkև.#q >:sw :#Y7Fs ID~Q߂ùt = S>c䲫=ȉk Mg6"&@aT/OU ][f4q qC/fAci#6w -rY-݁=`8 ,}#f3NFH 򎀎r^=_=gR*:HYDp^.7. qjhlbzm^ IITM DZImW:"t*SA4v>ȮGΣL%UW\otm1y91"O {yI[wե;RKHuH1K&lxmnlh;r:OƀsXo0:y\xC"D1lcFl62 g̖ GD#*Ix,mru=l#u8=cL'lظΡX8kR#Nhjʤ1Jn){EQ~dw?s[Aewp dr1dTL狓ELpf4ٛ/;R qM: zGXb%)S;9pJ<)&opJIY_hf:WC/=OzyH8_bT &_2 AYjV|X jTNrAi>o*HNqltɵ<[yﴻ?"Fv 6zIv~|  BFE5=DGdf^[pE` ޒt[$P?)i"vm Kf^21)ڪ0'zwsS}HJ K(HlBTm^/ԹA tST4ĽW1fW>ZrKv">%{A_=0޸;~h zV,ms ^%}h򊶒N;I ~!%VD:l1p ROK ]b- mLxk7+/ݹP:R__gE"1"#lv w'o)6#~?l7X>dK?)3ے.Odb:caH#ݛv%ra x$&/7ͫ:x@Y柫!fZ6 C'*_9LKl < >n㜑زH>E-3.>.˗cQ #݃#oǫ}8q(/Ǚy"JL__v @^{3gK<.TfF굯չ1N-MfԪDz?|GpF@9*e̙-[ kj/[䈍V恋3U XW'UrlNOxpB\FKVi7i9S-}dM&=rRb^Äi[a;g0j#޾Qm'ΓO@O$03|?ZQ=0݉yb;{ĻW6pnvsϏm0 5f^Ba&Ü)nxiP(fN*}3$(!y7V@]\A<]͔aߵIe+]6& ,-7^(­U3Pp({/ɗTߝWW6)(䶹 +f }sӏ^lS D?29T{eXY|ȪT62mNr_yS~=-\Ex<0BQ{O [>G ʫmu6DPL#ZQ<295|.C3B Գ,MBgHN'իKw۪1}'Cҙ bj#ӧ9;ZxK[jFo.HZl;aoj!U>Yf gH][ {T50E{;PTU>a[-Q2fe2̘|$pL̞8G,Xܕ(v:)LLN[JQ^ayF.-^˦~z^?pY.O5'neZhR!&*`8}3]5d@]ouY[j 莬65R [Gu^oZ&"NcV/3ܦ\(-G"{? ]./U~>̩>1+ K狟mL_hA1kdjH]QJqO;/TnZN+3+{.I:t?0S[{S쭜/Qz\pxgƋ3SC5{a;NWP+m;)>pᶗmNڙU4&xo#!=gݫ&؃It܄(2 &q1;ɗ|[U3T*v)׽05Jh"|%k1o5Aߴ󳶣pJ6QkVYPL L ~غCqت&|CFAЃhq'=oiI9k2K%i3;8:IG{sI$" it,? h< (4Ae@`KBu=V`6$fzj[йd@Ǡk! RMo}M.sFol/5I42WwH9&8s[փ!ӳcu$Ju6JaBVk3rpd&#y!ړ.+upzQ/ݟO6?~ tgD 5n xWuDJ9E8;{;EJt/^~%,)0AmyOv;97ڳaEK 'e>RG)1n =@\QDtDF UT -)}C ).q{6Ԙp~]S*u:&4} wJc>@Qm Kv'&W,LrUf^E\!iIb;LUwQd40(0_)^y$2jkD̅}w'̫P:,I}ȋnU©5V}HRs: ( C w}2߷j6|uv<}vM]isԑtueO.!T)2\BT d\^ײ5I!jyzpvgJïFD ͙~;:~WPI€SOM|U-K,Q4*rɃK&J+{~E!r]v @/SR9Ra,料qV~V56xU *hqP<l!S}x#!+SNǁbsX̏smCwzfCa4J!j9g0XzŅ1@o7!$CS'z* jAE hehP2 Ejr7T)BHVeĸ8FB\}SY өR"QL(J,7TDǠ\BxUZGo](  45+s:qtほHH|3Aljx1kv,DxuiW c!LdqaJ{dRV t %g>3"54xmyBY6uA<\ A{)-3kr ٸk7eԾO3@:0;ǢVE.X);՗^ÎAҡNiֺ\ܐU "俢K2spnA%ǬޫbOTs.G|&嵉d:3.UӀ [-'Eө%f$PR37hʪ$U+GX.}]U5F'nNJS f\p8R.ܨ$vSA g9zjh~UHOM愴KdY*RsLaӈ*Ϟ(F,XB* ͮSКm;W9#& /Iht cxC6cZeF'HQ֒1l˷ I'MB>HfW[ KDYB%cY @in#J4<2ԃsOZU\c㳊AGYkEQ  ,|ie=`]F@2?m$;N,.^0^1ʗEB:'e=02ҕ̈́5Zp!#P46AX!1.? N,-~[n~!R}0Dt<A0 ""f㒖5⇇*‘hM/Yp'Bg:#bTV7dPլ JAp(tHW"=6 'j vv|b 6# dHnG;+$SLWG` "Xy. Jd:n$>TF3,ιv<h^gDcjk].^+>S \rHƓ[fbŝDX׻T.FiCEE!_m.ݢMpmc~`z.]vyFݽ&sҹ:/=4{AG.?pu]^Fy}0#k|Md@ fX$_G2>qO6nPv#j6#!:ޭ uʿE$CmU]U b JK9_SfeTxmQg $ތY ?wޑI;/btE}:Mq4ud(LT7VPxpF_9e+P0;: ]Jٓ Dž-Τ|vLUs.zw,e@3MÄ9Wq(-ѾT6Jr))[VU{zuIF"}1cc!l5gAD H`'CU#oFG!PQ_O,6*KS7/~vMV&h '|~ yi1i% p`;=P#7'8k<\Ӑ%p x^'Y0”Tm9=kv7h586}ڲX5A| 񩘖'n0Y :&{#L(% u} %<3(eVA^(jڤ Mgaѕƻl >л|EtN q )t |@8l'>eƤ'\Rs8]@%-$Zh[tR/JE5`_`4<܋~[8I]B\=zeVF~EDPzFd}=]&_BcG.Q}Z3>5$YP_N&=Yd?X8j,t+rn݅U-r ]1lNSux0.t.V +2l[w%XI?BIbd }>bQ)9]6 {NK*Ru>y;=pBf-0p“R'K YCo#ǡ圎2P^/( KuaLWcTW lp6ȊeDW|sWrmt)͖NGiaXm_FkT?P'<)gaTZnSC{/T[m0VȺT{y: Ѐagu{O"R6 4\Grr:Z'2n$o Tpf<3:XX**8G!"JiJz$r{,ly ty~z#qAM.4$tJy(EX0jv|XW= -é ͓!ɑŁ7fLXeD2PAobEzTZ'UM3EuOP7jby1:6t-!IEӚRV|h7j\M(F&-m^)OR>KFtUJ%9|*\g!kWYVyt~+9(>L))u- hGϩ50OcN/ @bw7{ `w(~ ;Z4Zͱ./,؅?>/[$iN7ƪd'4u޿&;zZ6)DvAȲ9X&:uK wm`3SY lƟVVl>M!o^B,!,`c޾˱J,|Gl# 0[MWQn> ?.H=76Tu0,qRv(CN - :]Hub.߶Mh>yewij37/W p8ƃy&cM?IQl1 uy#5,0̈́乤-YZ ]L'zky߼A$"{Q21OD1Eܱ*1ڳ {Ra070aiQ +YctPX8q8tS3#hUkJUxĘ ";()O]kohЧIRhMp0טWxU9Zj'u{L20dG85nn SD{ҩ--8 X=W!ʇRvqPRl>+xS}S`bh/׈+/gqcyG|6 Dή Zyn;(wǷ‚g#uEjtb*ݬ{YC#|YO˟u9BOASyHʿp(NU/ch edcs[EMrjVj 5$h'z>eKA@/ A|KS RSZwnuM]5-_ԉKӺ+`\*}Ka9q[kFΚOAZnQřNz.L1 \[Mqc zM]Ta.3\ݗjfDO"`΋{S}-mَwQJBI%p L*ҡMEP.QQ3J wEPάgrx:-Ke.C6H7" jM%vU9o^a)}~¬`Dek>Qij5ZcIH>BÄ(cěځIr/'+@S 3B>.̚Hyk<~#{m¨Mسz>,0RIq@,*"ML/K%:2!$;-[(NM4,0I2qQHӶk[ۅ$dVA% ızadI7y$_)F;3A҄q 2HYJѰab]eMQaT7$|Ru#C)`-\=Ŋpϫ+^YR@XQN4Y^ŒWWFw{Y R VtŤQ,tuKv∩{WVt9&v;w#FtGRrԟyrp+Y4x-п=S@T ,D#0p$j1p=>C7ZwW}\7L>*J^ωڕ-,ƞL\+{e>IdX/KavoflA:Y?|ldk4dNOHKQB|!0!ǐqc+&UWUE:u+rN#JeIV6dd~ L&b_PYO-]tE}/>j\&)%8g)A0CͱhemD3J5R@0"7}44y 5۞mAG؅z)-4=u`?JVA//ɫ 3@ H=kUF+Soã BS27mēgąp(/ΞnIôj$I ]e%k?( `uJqaR+N :GH#d4h@NTKYK0 rxMΪ L¤=s2 pY&*?  MqZ(:0ž |*Mq\$Cܟ(`?D[[*ڶn!,YFlci=ɚ!IR1%!}.MY*N$[yjj-.jvmUbV 3jsB_^~}'$Epf7J]%qR4@"o׵*f/|I\_,,ݧ10;cRMĒ_<1 ; JgCLpQ,skL5 2H ˊ:O#N[C%ַ(z<3d]fޓQj#ԛa,t_ңpZ 64Ok 6"dw숾nZHD@ k V׾fzYUSVFuy>ϛz$ v4?1OBA?G[&?X.[KgnTy!ŢSfΥ~"xLI q|  qlxǭcY[Πs?6ؖ-ӊ+`>gK[s8~l = @c#>p;94g(bIebzx8XG֤r>Yw99Qފ'얲t ʘԢ %z%v'Jҗ888 sfugDI%xL,ȇH$(v%M ^Q-wAvAqKȭr=|5eY$ebb #6ϸ>ftKi ߞ;ԽB%I^4R ?X-R+WԴ8 1=6맬 (nOz  Q.Ez(<0,kّXZM[9&ch=Vlfn6 o]~WxR g!IpN~eҦ 49JgڈrQ&Hf8+,.֎\*>qFJYx ҤX`h{HɔFWz4 %Ic#a]0¹0"G菻]LD´Qf,ÀHWAZt@wFh)q9ߺ6bM N-LN(Kg,](Ӡlx8ix&!,>A`Db1 96me`\ -QYpϺIE7ĤR -zig~e#nRf:DDR 2!<3y52EjF^ڽb+*ljxwЎIvS7fer~PEIE+n PSB:vݬVo֠ЈHk* :goL܂("ćEv&<8XJMwZK1>E]1kϾu YKn=\!!OdC[yN{ ?pr /3 p~K;M BUJE*!#CuԱ Y>^do3Ġ.?dz٧є% th(/]{Y䡽ϖ]S}6@ mbNؚ 1 l)PUNRTw3CZ/Mfhuu/ز%5vRu-k_r"bwL:E],Dd5PXvT ΀ _K9@=yŃt}H90'QnY=LU\g) 1;5rD[it{9_ AXЅ@4KgӖI#7Uv-*c?p)]v؇:PӀբ]*[OeV8ST?3AY4Y6*6%ift:@:jORy&յ1_n38  ^GQxFܽH+2 l2uuEkGO$V /TwK8E/\x(/,-SCi%&g5Uup]<~lQR6p8mu˧m@%'d{]wOVUy C l(H1g[:XDׁJ!O>6ai0^M$KDl&D$ٵrb ~HR&*+}N,AX~C;hH^usJuPW7֨|Ndy ϙ1 QV@@cv"n7 ]Ěa4ޅuɷo7H#t7MS>F1;GHk v:TX ]XZb!ϸ\RZpanHŔUA/L#@hsw@=Jɏ_cx`Lk̷L *1Gܱ%`9^-88 .Ycw E5?:g}dZ'D xpa}*T.h]IF$ ,eM5I;F18sܮAM:W=&wBs7!D1+3NAɨ` oB@yNY#B#='@8. "3L\a_J] 家PQㄗ`AYMı9Q4!`.R3zp.2Ba?77C(7g,'(ܰrZvX'#QeFbV0ߢ^ㄣ=nzY:ɘn-D5(Pf TZX?YO%&3+ X lXzCq-p9鞲 4M:t 3f۵Ӎve+IA`Q9B$lGe)r!͡*_ ]^_X (!@&o0eŇ=֍]%L+`MfsN7&t.i11E<=cAk#}Y엹s.NTyB@6m#Pңwp5Ûob]Ai";x1ĵ.θk=d~>t@ȠO7@>tލ@|{Ā_P_zE1`A6-"1jva4ICoL qzk8 ߖ<^Y),$\M-#rgQvKU0d㜪t!_@) $xymd}]Aj>2j&]l=-D/ Lf^>Q$룧sU \`UǖKPv' f2g{~GD80Wٲ!iQt.Hz`R.}NBy*&9pvA«¼>Y\9_6Lİ_/Bυ[}(2&0+bU|yFHcb UW&wz.r=7KEr%uB޷ҧJneÀ>eH_@0DܩFGސPN2N|m2EB ~Hv3}o_{l 7!k<n05">ceOmjMرǔwY}6;E0 WC%/g*v:02(%7/R`_1])c&q<.ƛM丷!7Qi/_Յ+IKgw]bˤ6@H(l:b (o1/9# Y@e7 Rc|zlP_&r[-litcgz|ПsHkCoAK+R,ѕaxJmOR-f:֙?4v !5tA7@:0S]lu;Im(lv<& .լv4ȑ@#~ U,v;M"3. wk~,ٹAh.[ !]hk ~M >*>eHНZpRmXhFf0@ %KFzLP Kn t",-'+נR,K7R8;ad WP 7xh0Rmfr53Ɲ*C$W 5 5ї=3|1P7PR#݄@[,5TȠLa| Rw;_>͛w?eGq cG{<#_i-&8G6C72͡G%<,*i2]\K3 !ԾЯz45Bu|#`X0S.*\Z_J1ހy"ot?H6ST_{+ !FH1ğ*[ɍ HR+l*WP %P{ tϙ{;PDE N܇mL Lj/]3z]uhLj6a~ZռjS᤻~)}/SL<\ a^GFGMC^ʱ\$N%FNpTH44ZrZ"@(ݺeWb(BhO,9֍>^Qy\\JqM!8OY&Y`4S͐v'}n;3pt!tmKK'v&3Mv".NMcm*O= .Z1c` ޘP-':oN ^~tŰA^(K7!B.)8{1f)DEN?5m59as n0>O)\wK~/Jy#vftPiEnàw3͢PDwu~1 5v>}F=UI'BS%~"ȼu5E2T@K+ ,=%6lg#Q4z1+y,M7yQW+@cPFK2S 6>L.. rR텅1 OO~$ovNbSst'Z%TGn'M¸ne'{O| :#җtɀw"D)ZnТRroS^@'ysl(,G2uQuzD54>7SUWd,*p}8\*LVITl {HKi6gM&WVy㠊Ś2QĞmPijt]\6YLzwΣ=] JRSO7I2 1=x@61Q/Uku˝=q"qǗ8z(<~C ~b{?3N>}GkG=rm0'4ԃXVa!69!whmX:f`_MP{P4_f>@+g6Sv84L e:kk0$jNj\.S je8 t-3n+^jXrh nwx Rݸ.S?Cƣk-]KeU'sr3n2S5Q{͐N_ w% (xś g**6{&?ߡ,t= 7;LP [lq]E AOGjG/2Te0+q\,tElx)\7+u4359HGŧHh4x&1_TPfyVDc*`4ڑ%K|?fr ڳw=ə9'ea}TWy`/ IBl5?cl" }yj%.@D"4񎀲L_`XGXTA/*To5)9Ŗ[W;PZd2TPM6x+tIYLcKD,v- L$RVE< ]NbO˞' 6dkZ1X9JMV!TMRt\ NoLnSLj %ԎDklibSy܅2(yo# $ikv܆TOĻ+h+$61I^3݀Nik,C;^-,۠rZ:ZY؝_dBur; U7Q`Q-_p!N@a$Z[FH4/"Z198f~&=15CsdUu 4xڙ|o"WR|0X⣥ky:K NAXth+CSߐqLAh8W3?gt.JJ b3؋" p0(scNLmfT԰@]B+入, >]=.G @Nb1tW>$i3{ϑsO, 1"]}nG!NJh_HZ3XW5%dy+$f\nn"MTϤ. d&֍ގ%acFۀl mo%!un;"X̚QUiD'S<Ҵ{qm2q :iEUmxV!o羄ќG_yOxsaˣ! ,Ǒ56v3Ȣ LYǁ#u^qM#S"2x?r8_݉U"D:=BF:Sѯb}o~ $Rp0J^)-L)Ǘb[o/{;UVux+/n%b%$ <+"S5t`u#$B \3on%ZFgxv0:W S^di)z ~M%Q){).ߙX3ොzK\չ.J;t z>дQ7^ .NmWԍnyjzC:x{;yRg\+ B"aʃAmє9cCrufe!Y;*8%r hl<*g$m ?ǖ`z/5Ov##֑ "DCuj+SƽY^1:^*ִ= #&Xw&!RSe;{Oo 9l!o^W,C$%vhCTM'yD|퉉"lui" ZA/af-CHzMtR~mq4GFBт B0]Nf7Sv4VL$sojڬL\ -Rǻp|' zȃwd~jS&7ɮ]Ua[b Z3i1axIL8 |Vwc Pgnu@jӸ)C+%ĵKoLr/KSja,% V.baڞMr/ch-emW"?ΰ[jskǜP;~--[HXϽEZ*,i]ǠzZY:K/y ]s.SXfZx\˘ n}68!% m: с 5 HN+W?\{h eiRV!xXH~3{_jzKZC|:'vJiv,*ߢ-R7ZCa ܢ所d(1RcS<1D/Jz~n)M$cmI5{zPhn~+Q@I UXGC7_hMh|7ud$jtDկ"Jඔ  )kxT~621(yJdnVlwcUC ۥ^[jyG/w7(+#6P <Iو^))1 9ܩ9)(e ]v) SP cg>jYNѐ]kdPvYSnonMd jVU]w_lhp<$:fJ)T3A\ |(yYeN,ӭFL*bT]mܵoͱcqiE+q mWt|,BOF?1fFw,{ {?mPtx,35R?s qV sӝ9VA/wj)j*59QS ] wRCBsڕۼsYg?اXU$Gf}x_ Rj2bp*+nZy'%!'&m9,*Q&Bo 0\KXKX% V:֣򰭸. '8WMF0A2 E1vn9+Z .MV4@!ΚNU;;K@y/AI KShetmETVYcseg z@c[.D藘qaO=>bښZ|SȲTmZ7Eb1Sݖ̜  $ZY sPnFH݌ji4gͽ-VDrͿW4)îF]ȨU7ڶ@O6X 03Uc&:V>?W HPa]WԄ%)43 )7Dá tc {u $4VZ_ ǯXI4̦'j\hd5ZO|-cXQ JC͖$;5mWpDe+-{E60Iˁ2IJo ceׄ7 +a)8b6Ae5"*ܑyOٵH-|hPT_|v1<JUxL*Ч6>.K̒%)2 G kzhrBm#h,ЇR ;8??H$]iT4$!@GJ U6yvj7w34$Weӊd"Jr(7HERAdTm>oc/y&+wڬvp|e]^7K7׼?K/zZ5{^y)O!?'J'Z24(3ŋ!2` ZϷ 5ᤤL.V,2phQL9Q\H_e"@UXtI䮍yS[Z@)xtA[WScLCݼ֬S=Vgtt~M0kK"+/hi'e!k!Ħ0sB%nk?c0Nr#Nj%"n9ECKൌKVSZs2 C4ZgnUڻE))Ѐ~T LŁ)rJѝ 1ϛwIoܹ5Vn? H}xi amc!u0YDF?/D[մo ,?e4ǑVfnU)˱nf8",VN"6m}L3~ZU`6 60rI3AL@G$RV"SnÊ]ŭAsSG. P[x<TG ,9eԑҮZȚPߢ'II| 乧nHRgo&!U`Kɘ;/0%cjxt` U0Z.}$;;l"NsrBtU$%.TKJ'4%^_XV`6ct%պEWJOxt%~s Tғ9f7 .cvn(Qy-V( x $[KI1 ټ]HisD/ٙ%+sL7aIl 5T@S7! O@OzCMѸlC<8 ~ɮьES)E~7z|iד%ׯRKCv/_)a!]VP~=g|ШF*x$QK-0 {Q$rzܗe4PT֫ϛ?Gw#,1.r?%J^c tXLEaj^y-`Ф(K0nӱGF>36;_MV^lBA{K?L %t`T??mHyMʋEf{`~\FX֋420s냐`BM yL]шcA]/> `L2h ijQܵ{kV5^_aEc}av8%ktA!Y cOCy{ xߪ~qM PXbMԩ!iNHơ/R$(H*V}? hk9sQ[ CkzҜZs^n̪U?W{Ek|+ܶv 9qA( ~pOetԄN/˗kaGmǓPbGގ&"Wc/:Ui_h)y6002B6W }-*4A'C8mEġ|܂p~tH <8f2&zi?8;s7J}/hP #:nTVdm2u{/qEt YR>w(m l=/]siGꌩ`Ls$Mrl%K9;OH' |Pd;V|c o.;L+2_'`h9RaYhWa?}8{{T:Wt&T4!4U8UhSX{Sqh6;Jv6C;x*c]p] ؕzĨiii SH@N}5qF`{Ii>;Q(/e'L( WEjX9Iks}ߨ~5/uw($״n'x)GX4F9sXE8XZs\Ư6 O0L(F zoh#btA s+ 5 V*/fnȁ KPBnކxH/}P!f t;@ 8Vh6?ac P|TbQ_V5YnK]*s/VoƾYGg}tk)w 6UmƾB?O ٭ހ˃u[~ҔXq>yl3Y+,54I͛@uAS+t_!x tckS#t7<]Vrk⢆rJDkp1vӱҤuc2:VL歷˹tAY@#N\SC9B~& NznDn`۶DDFs/Gا4nOLG9FŨndڦ33YX#yLtXULUޡ,GorlB*#\_e :Z02D(86n8GT^gv_*HGΕ}kQ_PRG\5}PX|M%/Ə|N;N)=MP3P3FsJ;'ϦQ~;-"7^ 5%fzldyF~q%'0Ta3՞ ꇍ/>kha# o![qME j0;"؝ d9&+[snF:޳)bmpUPOa,p|b4R H ;6NU6;ד%G DJ?=8uQCO٢_tQ0߈%?cHRu_b`_uDv;uLv#y642Uf|'c H[sWӖn5 .ɩtAJƞdπPİ9 L>I5$M[$(t`RuF{BH ;5Cg7nXϙJg3Q)tQN>bѵ8mnZ<+s9Z~f}*%fR dTg턛B L瀽EƙsB o#$&-^ƷE ;n )5|VX=Ǒ( Đ&&ʫ<֤<}'yRZ[Trªt)䩼^?:}+VS4.f Igifx@!E7蛝E(zhS횥ڙXiӭ1-L[C0Z`PJ׶Ym䄂Ze: Zr 1@#jPMs&>Ba!戉u:%c@p6WvZz?|-D{-/:-pV̍H:!egm~)dD'T,vݍx4ew~`K?1d+N ȜWhyi)3&?I"%,MW=pz= 5qLdJ yBK:?Gd8N_x7zʙH⿏v$m.sJ{=#U' ܠ^ ZӥɠTJShdWea8X=.T9[h>HiT_D{ë=2NA֯moǝ#chy]NW][FZS"ЏHXc;IZZmOO1aU0tTC/ + 4D'.7暙J?AR7[@j%k6nPoܡUQ*}RI;;Z`H  T]3!m!B=i[K#5_Ic wR a`^:.o H1i\{lZTZ9S"?caiʢԙ JG V%&q ?,q7m^#b E.IGZ**Y[-}ek[_PE]h)DT;ȶ695lx':LLe&4yƳd2ys p5/R ٕde ZB{GB`QjgHlw{K\t蛠$981<(HC9N]U Wnu!I;:y,sk:%Ȉ9HnJ˛ |he?/PU0rU@!e{z!^mAR_<#ji1ZiUH2K8m+=y%wY)Q=#r;}b ߿ڼ*o66*2Oȣ TʞS>Ld,= L/uƜ&5G؝e fƯޞc~Qx`Vǔ6?ס MNOꝠ KA#4-+\PV"8g ޸E/4eM坭 |_A8?̬׆uNF@$V`7GY<ߒARIN+qdi6(pa<_eY!3|l[<}-ZQ[YR:-ź ׶/w6\C=ͺE\Q*v} zA29mU8[ 5 <_g2 BVmj MJ:\ߝH*#;{ѺP[F5dN m0H%߷]9&'@gK[,̱ziQ#[iv>h_u ms#2 5S:w/wr֘{ U "l#v3MS Ԑ=@$:Bt P7 !ލMq叩*;P/&XH6"4Pt݋5CQ=Ջy>mBp威(Ut@8k]cEp_P+" :tV0ȋ̳6p0qv志HQ⃑5~ǂ]k }7R*`3CGP9qN#̩ݲ(|- ~]N~n<(rq2xulCihZ'-Թfj] */_&X԰|ce"/L8H 4>o=33BMSJRV^ \gsT:8猽.'\ # o/c+Gv^U>am.0F5e/C7W~9 yKYWfJs80h4[漂 .$C!GsebD?~Àm?%lG$XQ6|Ô<3d҇(* VNz clr];/ꊁKk?v10!9ed1c{"v3'jJ2jITgzW#:gg#8c'mLɴ!3 wM6H]|U?ݕ:4ЎgݚpoД6Ů_rg~ndN#11P/wSbJBH)ksqކ5:$ EU5l.i E`s J]#n`Q ;d< qMe' 0Vp,F&a._9mx; &E8k6xE &ܹ501$Ts( }R_-h65/Ey`݈0vwtIo-vQ93G:NªL>u.+T '+ɞtY蓺An{&Vn zI E/ڶH6ގr +Kk$thxI{0gI:sE-n f(z#&8+"NҞ=%V leމJbj6;2ǷBUNGʱtM Il) 0)5DKu¥Ѷpr/z&9 _M\-iN;6pIgǠO1{~A9ۤPbo`, ߬eB{:Ej$0 >]Pol~YNQ$ɵSu5 ɦu,߳~woD4[)m7[j$2`W@{huM >TݑZؕo^6𐋔)-rKQ8J;c $&9 Th=G::Na'EPQwKӲ =$H)WFyK&0Z5TηNpMZ+u6f1V X3C8{ڮ龘Pt,x3,Muax9 l IeYqjsfX՟2;yk ![VS Ls!2"1~T IY)9M8b?u nq`k/k@Y]NavA LMpgCs#8! AM!&iu,bqQ3_c@_Y8!7"Kؒ?SȩAvt!H6B"Xb(vpԁD@H1J8V1ۈ 1ۃ8CD^/QiϷGX~OXfR)fS"z;^Ctl=ݖ~ TpIJ J6Ua`=y5 ⒚B+Ӵߔ] ʢ\YODP=LRgbЦ~ߦ_G]IeZ\d 5xE)/|"V0f9lc3/la S? l"z~R|$NCd )P!Ь0@(6j,aa dF5WTx},s7lؖ)RH=oאzv:='I}[-U im1P{Tgegw(R ?M|2#igX6@Npn6hKd[M̈́n|$QZP{050#;ؙh4Lb9 ?-VDmkaBobo[r"<@> nVOJӀ r47/qQSPmAow-ynz GgIKg} \cKϏ?Z`_8cI\NlɶwnM&1 3"oǁёDކlGxe}HD[jFnQ3~(g5䝐.;b3}ΗA BBTU?^^1ChDF6vP\aLxWCwbA8n!"1Nw2=ajq d0s7lF.}m"X~J.+rqb ;`QevO!+'A;ndp5*W[0˓hrPz~6ҝfޞwJp2ߘilB#%(8*>+{f]F\:uaicVb~?gfEcdhq]9mzԍ-N0`oNGCX6+x0&r}vʧ[*N+ջqD z.=q%M︡x:Skt0`QXi%'byvԎ7^_&Iz4n˶GM̶Qj2Jܔ3 ;eamvSԈ',Q,XZ8& s6ͥKM~Ip@%*O>B2;6 ]UbeM*hmYf ddY⵽G2Y+Fj;:E!ӄhpv'YIԪ~hܕ?F} ¨PBGpz1F\/~@LnSn7?%bt\QxU óF%^_xasD*R`ۯ$5ۦR֞ے-r<֏ _B.A@g4닰ԣXtz oᅴN-w`d0^e4lpz+ Fش^δYY(+KֻdZ;,[_5??=Kܕ*2 8qy<8zvK³C(q2븗8>uc%fIMtwY]L̤KWȅ[qB8 k`\S޲٘R#Э0if. +kH2:g15@OsϿux~9-Re{߫yLks*~y\_ (+Xcx&aJIۦk$ilk,MxW'(c*B aIKۣ5)屛{fCH-":If,3xA*g@Du/]9T#y K&c͘K3yVb6VpW+]b2 6,AzN$˝ᅩ*=?bXW'k~&V\KK] !4' 1@$#M>یb9;>Kևgr\[d]ݫ?$ۢzwWܨG =y5R&: ,Q喀5Nvō"Ҳ^ψmyWg;d'mey Q uB|G8lRX%'UC SkQE!.c[(Z OȮvAOAֽoҁ}c+c 7}NOHбl`bDm^6q}ZT_~0=U6ٟ|VeDPСx%)r+h;xtݻ"MU$V>3] b#d/zx )5^sZm'K*Qx"jb/RǠGA nЫW1sdIg@"r:[\Ir23ґDQnΆciZ$9W"w 7OˋEؗeWgBwu>A5'cw%iebvYyEG,şkrRkC1(O 4]xàx*;YF:baDB\ ]0֨zx=Ktg?퓁H9YU*z7ٔX!9"s4rI)4Y)W3zc :%6S2kg1|vKԚb &78}׵E}*=e7h/8{}!K,>%;@G2&"04(82b1ZCK%@QNk^Gj<X&6gLu r)T),Ϩ,&f `Lzٹ~@|LڤNQ.ɅS44R8TGs=6.ok9l:qnż~/ǝAXFU:q"F;drxe6=ʬY!(.`KaЁ"1fx}`xăb4$6G bec.'Lasdq?+qQMdP9i.Nw5.NS28'BKn9zhAcJ(QM=6:9;9Q@Š,禪Dj+6r5-o; e_e,ʎBOck"YF8esMu5 b|U΢6UEhwX=[}6Z^$(Tk P0kD2uĥ!IrMFѡB@RQmKo]_]rb#p ";pUĦż b9 ,%HN1j{@~?}3Z_66ϱ\訍H&/Pw3?24p3^gT fÝmܺ'LSkMk-D!_P≋Fᆺ+ !jCu3a*Დ)$p2 W%B}DoFg5v4, < VEI8F!?|{3ejw QEa`]xU qikW z Fr)ShQ ܚM1)$,sdpF}QS=R_(4 lŶ %`=A;3Z^aqNh)w-pʋIkչ#?'v-8+N^ՌM϶}gu7ʍHhr;m p1拐 ӦcKQs )L0^xXͨ CZo&Pu$ $ DAFfV,5mZc‰ES%73J\S4ln.NpadEk-^{~E6p$ϚpCcV((o%Iv ФލD5Z@c~ĜF C_w?M0:~Ad\y*u${qvqc.C Ić8l9փIoNS.Z89|BRWG;آ$i,*DFpoAa?S@mfɈ.fԷg d#ޤ賳`voPɹ]Xao n҇Qa˩*@Eh,:t'צFspf ls2DcM(Ѻ E  }|N;Lu="Q~D*~sLr#e&u}@(2o>`:}7%FfYZj=0&o8 dTfOP3(AWp\ߧQb<(]Ixy)68^fogqLDi X6;p*(52":Z6YM>o"fY`3nz_\q}:.vfT3hi0cS >~6?W@J$hh(G.3kdxѴ# J=./{2O#imduFyxyzGN`DNSb˿ar{YҾ!OmBOeYZT`@j[̄F]XJYd[Vx-k0Kv6U)qڜk=תIyk)Re%Eӝ|`YuARVvo?S/P oc1˛ѕ$y/6Կqy=Tꨡ ̭}VE)8"΅'iCnu4T&\vhJ9Lawč.a'{~} MŠV*#͗l\V/uY-ur.JZzf!J,݋d\y`nT:BYO5^Шޏ|ƩZ=j I+ːD= K? 7W4ƣJZ=y_F3?g~q(jl J CXGƤvj حQ'NsCx'!4ĚDʬǏ' Y<`fҗW/یA86Շ~$nB׬y-~ l,ڡK$nhs.tsLE~ɹ }VVjϙ"Vwm6S$'uu]nez0tjP-p_S칖}dkqܑ֞퓱(O>H9QO.C=_ðV<G;;d_n)`#e~[Ke+LO)Gv ԇ#زSQZj%mMXK$ 4)wG@BԥDU^y:>k@cXZbpH=H?sT&C2^fhFgьJ'vcVrq䇩HW7 [/nAOk]M+&FÖ|gs-4yd ,Qjʸc\ l&c^bAA~Ms@foe1lC?G ˾{3" dW|U5~sé#JZi]4nK%E’5 +oEoسhE kMn/;7R$,%"rfa!\*Z!r>LG#;% ɻ;LnB,"PY#iLD>_j͜j JoL+nr7Im'Mu55g}z HBo:oYNvN /_9XP>1:=={BfrԥaH XWZ{ףEcq]Ƶta0"ӕɖWʾMϚmŤ|Ch;NM|MϒQ,);ؒXY}{Q4JMzVU |>(w'v-u\5,~ȇgR_QcޟJŤ7?+ qG4Xp}L `L.RZ+'l,1CvNfXD5]/u\T<ָi5{M!D8Bl{t)Y]Cp? {\:@G̊v4"K?uϷJ#|yqͿ xBHquרmHN17D-_؃|Z˕Є1zwM"9˘S/- `ɤ3wTZ^@KR-1JCL*hP޲ >Ӓn$AV^$YHM9_헜7ŏAy 7WR3t,'Y^U2'ȽFCKpZm>R}~xȩ RkWS6@EvI؊82H3^5IVI&02)Dmd-JC`aQ$ ܨiD4JB=K6ՁUuŽb Z r_<4Gmhɏ׵3k/ QOСTA|;3DX LhCXzAk[UY+n J0uCL $`g#aS%upW1jRR}~q۱Hs'WއҶuX3?7>TF5W:w<4O~x|fAw{(#\6-|@hh R$)y9nE)v@y/:n%`Jaݗv^dEp!6m A?NS{alnæznAS7U6ޖL0)F[%g `Co$2fw% #ZjYߞ_ %!ߧRsq[iG7QkllTV B4UMWtS-2ýJmݘ[Llɶ?iNpz@LQseR>be57Hg w2O'D0=׏$E3x[{MQS/P>,9"{T2.(Չ :j[л䤃X3J1dŦҎ;g[1y89{\Dt7[*;;?PKu#t+*Z >X,Py  fԿBqQp{NJyMi<Iu89BRzLSRoPR* y) Q}jӸoV2Dkx.C\ȍK<ύs{2'y`4B(D+Jdp@T0!\Ö%w]a%f2[zih -z^8P_9 k8VYF3GhQ%׃oq N-M8|%1ߌzZh#'Q'"Iǻ`_A;02kԌ .bSsX,bF\娔P?48<'7vmmY ^tDi4[9Q34MOֵVtny ?c(Ο)((PSrъ`go"7)M>/Ŷ0Ϯ[֣d܌'5#`fw867,ǖ)1yzT %am]Ke`9<+ts)ZmwymZf'X`?\[\]}AL9t̪q*dBÙ<{V_I7A BPK_)r5V|i&IEO?\ Sr5oI>{o.پ&kr6#I3$}\#ArɌg{*7G#C/^@Ʀ|zG%@l~r#wdYpdyQrH*BV%onIOB?jJZFbӵ;]:C$զ;6S)-1W2sua#@#i>1m8XGL]'By)@UL^i>; \NK46|fS-kuⲠߚ& [SEqĵԇ=@~Xjg(_+NXV[Xl}}+荭qy#PbQ{N[ v_7ٖu^C#.Ai3k$ a䒰+e*#&39궨P%,횣OB.2#qi5=',  k/C>pjzu9fܴ&W+ڒ+PÇ|~{4M2DTp}!ڜׄ%ԁ_'es0*j WWy v)̔YoٵhvT$Д:UohpHJRDpD<gR]W99pTktt8ltJ˭~Ȫb`5:Ձq1%#lf=|M:~#Q" R:7QX=Fj5q,gm)Pq7͠Y |+\O8B7E!!T.zD'\"` /(J MuQpid2t5{*6N=ywNOl{WXT_l*ԑՠȡ#]K? ! W.Ϻ9\y'3ᆾ-{1<%|w\4-Rǃ/7c~]Z0+ǝX bLKJ$2Pn:&߂ 7|SկGϤ$Jor9PؐBikh>1r,`bT#:RZw/"S؜" tV).oO)]CmuZӀ?h%@.!9a鍱΍~W{xL ͤoD˨,#BzL+x>{W͹Ba)$Wcwe 8Yz Q6c ;ɳ`MҒ,sqO~aяvB>LyHzi9`y5 /x21x0`r'P&laջlCb@ED<.pMuJYXNObYqðp`FuNn;#U7mߞ1f\Nz/#WIk {ɲXE7n5a'T=5K=;jDpń]jˆrHzH:"FSV[;+0} PbӶ8Böi~jIMz=LEűOhL`6ٽڧoY!Gw fW9m$$͚uTcH,y憕9̸ܹjGHP-t39^FLVhFFL֪#ܠL("aj!۝F]ItW/Mjwn)>,swyH $b[26r |> щyI$Ǿ&cbM"YcdexK/Q0DŽ(ɂCū&sd&Gleb{LA:S9vA0 } ""Xv UhƮi5_v+Y;!ڙ"׈gN*aD[8/LLZ#pW@GP7ʻI` tӾ Hf6R45UFVb*~"\*8SʁDKZqY[[rvʝ Rx7/!kjvGv)А N#sƕVĥj }6.o$GL \?!x%W$;'h [,2#ʹO o5JG{3B䱿Ԍ? by yzD~G0Ef$TgQ``+0S]Αş)A] "4isB| 35*M >)!X^ t\{+kBIeBP)f"-[K&eC"sgA=L !,$jks<иD@Z T$[ 6/OIFvn`~ {Ie'\ _n^M-(+0emm+G<9.(b!Ow yhrnW U5GF+ 1&%1oHK;w6:;3N̖Tй4{ah׫s{\Q]qY(/?\>Mv< _ DzuҒX*Y7~wrysM= `_Y+>oJ@J$>+oHY u[ib(&jx!=d&3,Ь +0 ҳ'd7Xu @$*"@~7ͻr0ƆHC?lWʋMD)yg^>>m_}::݉ICWn2Pٳ}~ KNmRIp_ ꓣ8XPSZnI-_SYvAأUo$]^n 0WcwUm vPF]{u3<{IR-J x8z K(ރ+l+yDy֬ke3{=,-xC .oaw% 1W앟DﶘGNw1vP:YJ4R2q(D0e oP BQ4wGڦcQee+ijc|d0$RmW\>DŽDsƊYN@!IN5K5K9A1P}ppovzD3S[iюJwqcT|;䃷cp4Kht! FXp8JSM.[gT6IQSreb *%;qJV5}wi Ljd?+f/8u‹w~'fyi|.Um eHpQSDuqX)q~TKh>ڗfCԁLfWcJ|"c]aV;h}<+v^*G>9oLP[$yWΕŽji4@i`J4ַ@d6'HO2:V1j8:yNePI?GwX;T4QjT!;>9}ʶ I6 1Ljx3*0Ei9Fo?Y6ٿlg nV K?e*kAa,=Bd{|,v 5m4tUid&c=.ޓDۆY Qkv4,Om#ts:t1MR|\ %d1)*HhJrROtGHE2m̈́a:Gf_+r2C 2ItcW;BV}ä\I4|V5^t,L̎jFo-}K/z$BR)jQLⲷ˪jnkI7*:Al%. ~'A8ҡ,q"JT{y߷R-0;P%U{j98p<T nU7jnL1pÄk֯SSM9d[bŒ 2cQJot>EZpcUd`4ӔvԥT,+hrg3`CxKn#k^Ei/r! oAq[Y.+5s{Em@'us6⁏nQ c*;tLo`@; ˧KJ+6lkO= l6[%b4#aM\s&$S* X6{;UD ?=]O/xdzoe-4hK&M AJ)G .p߹!SvM縔jE5o/ը'_y1?妦җb$U.p"vIGD57t-g$IaLM{?-4+i@qx&$75w0й4R$l}Q|{}6vN_,bm\y&2?danď.쮋|&3yY"I "O\* dJzQ64+1Vr& U1v/gs (Jjuyý])LH 30GAԧk>@l _)tscvQfm9kT0bds[#>~"tU&x{ye<>$9kS,x?8C̩ǵn- AnaW8q9ww(TIn{rTmŞ\? %YCȵYP>f(S^$9:髵CGIZ 7ב᭑4v';5ǂ l,PI\3;\u@$~#6BѢlST"g .9+icTEa0SespZ@Q/ïI&6;gg߱_Ѻз <. %1K;&nI.-5l^Q~q]~H;.#@\X51W7=Kq _;"*' 570 M:So(0ߩ*j}VL)Qn6V@h%9N?)׌6$8z\-k]"[֒o]TE8a}-bWzLg=I~Ͱ )I_q ([aFϱ#75[n/gAI:Jj* 9?zQḡ9@ 8' 5j ,g_T"N5r|LŠq LmW,ywX#&hnri/ʝ!MBtʪ堋nQ :OH|r'Gͽms<֚x$%ȋӁO'v>%,%'nT~TΜ;D[Ǘ m"8;:Pa9s TOmIއюMF~!Y: o,,)|=TwQ4 $D_Fxy2^?Յ~4~cW1}/W羖y6DǹUp/hN{JD 'D(PmO.LCk4h 2xYeNJA[|"putsϷlb4 e%8wYv UKfisU1)D~ҔS+ IV-XWw~l[<^0fWڅ38NFFc?gY[Z߉.م5Yr9ϵ1BNr4Ca;ߤaKEf5dVe/{/ٌ}0Ek{2L/T*| rL"6kE%'p`Tq!e[c0rs UnW]SH8vH4v8CŎI(;-0&ogߖC$jQ&L?{k?S}&4D89HM|#j~BCѮAZ}ƻ*tӕ(59-?"| ehƺh:]anXiˮ`"1*b`*At@A $p!ĒsM mL2rVEZCNL2膎j2 2CנH;0ayT~Z Z|1a9lBꥒL: m?TW[,K2d0 rƻ7K޲ҝ[6!ƍP,b ;CQ5 ~ :na;oϟxM=+BM_ gWHV~pa.5ŋ O9Gt#9҃]]&F-?!댄$.qewӼ{Lr½E xSo0(r!8:6{ KミDIDEb`~9 Ioxb"Z0:k7I 1e!x_$f۪TdKyl>S٠NhgJ\S9DS :;Kd+m=(>FDH* C ݝϦj式^ߏ'W]lu-fvZ=mEY$8KW]\A{l+|r{0MH.c.P67Tm'1X}3"/x;3n:ۻ53+~ {@͌E}7A/Z&.l$)zS&ڥDa?p-;teڻnu|ffEGlJ/"A^o @7x|ǚ@㟉XV\>(iYvio#nꆥ@6ZH“#uj=Kե\ʵ1Ydkb vM#څ֚_kG!ゖ0rA$d+ьӮԦڛ5ҸIP9xtnZ/ >,ձПGѣD\jwFK%+MlKi> }gQ,p#ME^G5q?sM [cEn-꽡qBA׻&Y Xu[E;m{H6^D;J_? -c;JuSS` MIaoV<ɹl(hZ:iˍW8cDLSfPahUťh")1QeBݶWA-uUt:}cʦqԸWŚ? eڤ AzR݅k>M dh9Pv}Ȥ+OHضJ[)X6wHe[b)j3WƒǸa2ij](#͇ZGk%/|¬eb0{kx&Q=69Xőof)+!pSey~sw8/9bQ5?ÿ8D"BΝ)=wǬvk+||<#M|sC4!@4xn arp%]R:9{YukgHeˌ&Pp"z>u0o.FoQ YYY_^/'%{/ybޙ<}mpQBiPtx Z76b]E];Fjώ9~|sGl꛷t{X.))F iɁd){,>uV03w@sAŋz+VMPN.`lJ>]v<~p_C >SU#`^N(W1+sFtwUe?OcMy4y܋UI)KȦwy#@C~X~ա[3]2U':V2߈05x&:h;eAZKpvX"*ҡԌ9 ]h<}-Qo3(sjE NoyƖW)ǁ-ex8,TB]B$ۀ1D.b KsrX9\B֏4pW=o᪙`9IX y-rc?t\`}F/y&@ā=YKs1NIV!'~D^i7 3R }aY[^KxeT yT@RzTÖ.5@{62T#z>%hk6ZsQprg1 FBqbih 10n7}3jTw1n<2]$ ?R,)ݶV^Bq (ClD(=6%lHm]#5+O#x#m1o; +:~X\N3UvyO(,v:ּYPY6\l26/6YajG|oGabC(S -&ukN0bb4gWV6F@jG BM,(i@jwЛ+N'X'U_E~~<ݺ+,,٦.F@ĕW SevmrIg$~<腍'@$,Wҭd:hٍt}Ͽˉ†i:Y$[c}ֲdlb:K1XEEz5©OCu. >:'{}7$P0c5EWȮ7Iٺ۹h~RJ %P}rG/.Gʁm.דbV&(ґ UF^W)Ε`|[y#=Go;D\Lv4 Ǧxe|*d2bdqu;\&3\ 3\>d{7)N #>sYvݻ|T)RN}F\hh-J{%e&ܗY)3EP"mFDWRʐ&2(MՁ,.57\됆Sϣ00MZԖJtI1k1XfE JX}Z,ojHzz-eO.W uS=1>.Pgȫt71wxۅCIR@apgnE4%5Y c,snt4NFZ;KcQA߶9B >;0[9f)Q6Uxnugh!%#.c \ -:#ڒF /bLZ?sF!rXSY00zx/ rEʉP ܖnX>f>.&ZTmG "QRFKΗ)0;>Hb) j(m("/֟$5X"è45;xE`Nə2i}o~r蓖O H'sb}ȵkOd rpbdB{ǯʛUAtÁ몲nG$e<0 Wuևh!ˆ*ns}  6PA.<K0alm~رZ3b$L '+Bu) ?<<Gٞ?8D시D0od?my*A_g"fHUS։bίŹenf`vG +3 .1o.b}ݼ|>F8ęm?wB@F"Kq&/~DN% l^iL 㶭j'p xI1Źep݀89yd_:?4 D3.y(`lUonhɕvg+EΞ(xH i%mT 8bZ>%\D*ƞ aͷ :uPd4NNeη'Џ+^P/ZQ3D &f c6%SBOHxÇ92GMPnk7&i1 .ʴdQ|ݍJF8`091XI??ұ2c.P g*^@اm=e]eŇ>S.X;]g=QqytkBk;(^yJ%0)+"`8o+cɹcMKVI&NW7Sw-5BUh&a~Z/oz*'n!b 2k0$[߬Ea6Gؾd7# %,,uQ{&][?@[XF1#'YY ~ )Hf v6z7&Dk>VE"΅:$?&B2YKԔ8}Lph>m?C˄ ⮭]YDf" Uދle6͖t y@4W"-AN5MRAeQ cjz e@ 57zH/FC#TQ$Tه1εn\m2Z1/Yn|zAy(—٩K2[&-µިޘWj~XpLX%epp+}kD6'߰ȗt ,KRoW9PR+sk@(NYA5k㭢C(h%/2zrc;icf~6sL7iޥ,o񮀸t}EOl0s%~f;ĕa+!<_\̞)o}ψYxbU7E~?Mzk+:[RD8ѱxr\@g >P'@ه#.\v }N,gW {jNv7d~\؍}%LFu$`Ga̳|8e҄3HUC k;?3 [1ihn)& J+ht6^ p08mI\ ;tiC?`%^Rf׮"UViO,tGПvEDo1.XspZ/XO˻#xMتAmV&,4R$iOGƚsX 3o|{F:rf~*Ζ 'S7WJpqho!n< DV|v$?Vmrv$ ŋiN,!_/u:oR:#y2<8UaJ޻p}'(eBc߷*``ћx[:G)IU&nrVny~ɬ@yHU\E;,EzcoJA(7g/0$"jьZzFtg:ؠZ!PF[5 7WlBXfBϸ\H{9j0G-U~VE|Tf|5\, \T/Ф[]ӫ ^]# 枕~GW-sҼ _׍>ǡY?;"-[o(િ>7F̕KY1h[ M )]6=LSOJ2)~!7- n!2@K^ImUt:fkHt vβbz)Wts7\Qs`{[P7M{U?bHgCK;fE0 =um52i*Ϻ/ L 3L ~Yj:_H>.D;̕/ iMlwCxS=tu]X.+`XWSM!- l w®݄};W[K:/G6;ZĦ̗ *( aˑ,0`R1Ղ rr3L| Xi@Q5xՀxe;1gSMPDł0:gw'Ŕ X>p.1eHs[|ywɕml5jDȟ ?f}vG+M>C0 4z*FKqAiʙ NdU2r,дdeΌB8šQ!޺(_)I n[Sb Y'=Dv_@ BBb&'/3wrQݔg /=Z ٘}`c o$P$w%wKIԴAr{QMY`H,m0{#Xf))ܑraj^2GÁ;(¨&c-E_tVEOOd Lv7(g~ L&SCfR"Cq}CG9e9b m PYKJ?| GR iٌ*;]"%7}(AhE7jg(6L+q}(~=3]l,hGg%} R$,j8oTnÔaQ.2et#g]4Mz HP>=i:&vMN]2w~JiAKvcs]o;eS"=V_jA^kV83ӻٖ/,FY"qPz;Q~vp[sxX}fXy>S*t[\=ֆΔ0z80UK0?I#'r4k`j*ƻ+J U^Np^)oG P N]+nWu6Q:',y&.>d' Ck\SW4_b;Ĕ0Ay 7 RT_. ,֥NQk¢JCkm^mfy"ljFgd`ø&Ce.%۽iྍ.Z7TwhS^D5/5Geu F/x;${d]Yܟy_.N1ٺ7IH(RCGdTj̳i5>IAq>E1\gQ/Sha?63r4}CbClubV` Ɋƻ7v.^d3"Դ ~VUL`Y-W388]2ͼߩ%m"9A:dv!*n;/ SYZ9:`bDxV=^ Bf>MWRVl0.sN`1vFg3.* ͐D}b@`! Z{[JL>dqt{QMEFS`Z@rB8JqEԬZ+2C륝 LhbZ$8K &N$n9 yr԰:-O<~ѭd8Qm slj;).K%:xN8'Ggv ۨ_.P=4 F^` :#gԠ: c%{S;7!gF{eSY)R{;5"/LhPAwR[лL'Nǎlc:elZ`Bx5Kt/U^;2%s/R@Ydq̐W%KkkES@d3bQJ"X.}CWg0ou0?pڪ̖ \!q+.B6k~YwƏ}g@[IgM \qz*cQ?~|pNO wi3TV% p]HS/y}ٟi6'|~kf!a5|=<#4SR5 pׇϦ|:Hy+ƈHP9yI_oE1Bnśix]wB+nmhBS-:=r7;$(0j[=ut0\Djm`vAĠea4Al&Ć%LF=*^,?Vsz5TDbm%Jcц_IzddoG?0iH!>Y" $^8u+S8݂ IV\HMf!%52RKl%`g(a8[Bf٭g`֮&-/beYFmυiFor"Bwd0p,$B&tւi+SKjjR[GԹ@aua?$4<ƁPY?WBWLD?sse}("]T@bS@TGEMp]SU\AEE//`}iۣTjxYQW"kNe*h<R&d}˽gQA)qqM,7Jn3w Axc`#tXO- ~}۾6%:EH.!3q {8"ҔK8ZUt4 @UT4;.j~u "YqKbȍ}(ֈ.wHLjscU{'STy8AS gVxU`SLAz:/eλ}?8 a#͑yVUw5f*գMSTⅵ7ݚSi.|c_)C+›: G!+|JÄJc#Z$LSWݫk 5, O>1/ue9KoK@dR;ĺ4k<p: HY9SM~/ӲMJR:+8% jJUJ~`n |xxJ׆wTN[x#gs ^ Xvo2/F+BmE`#;cHJdDД (2*DNշJ,%TCaZn)QL$W$ ÖYVEr,oGQSSL0rj'wm=ٺ}3P#< J8yLПm]쨒y'^>; 2C2琢^Gs|U-kƓ5ԅP+Q-߾ۂ:-ZS8 V?  03 X[ اb$(]NBͰ6_jIB/C3]S \X̒5^F$Y3Ft\ܢ˟\_,ݨNBFv3 B6Oj#P 4E(ݡo?މ7oV;AK}CnaXP#R\Mg!3: v/ݕ.-VQh.d x+Ҩ ?Va <^J<=-BQPv$3ڢ >gގ;`B{lpvVg)JBF*{Q)7x=NƸA zf©9N +3H>N8ΑWXv,`4 6Sh50ۮy@QD)N6nShP/TTp5IfE/v Xuw{N9s\j"1?8૛r xYG*\['aʟrZ-Ri`T)6IBZ_av–/TRoiEa]C/Y_:CUwmc;cm:ne%Y.+?b0mYI~h)BqvC6f~ll{I_#nBkx,?')yYdQE )~;Qf(sy] =jg:`F:4AѾrtTדhxL }"Y'\ Gy){@3DkǢ1K[)]_[N3(cuSp~= 7KdZyd$}a,PLG-7"kdX/NH֩e۪Or0DtLjϢւ ʬ,WkGmRG8HH*aER̢ґSpr[xtJ;!>v"_/ I!U%& D^IAdnŊ(o3EvX惫hdsZiZxn ]h ؐNk70E]篐"KeݝcR!!ªnHJ>' 1hvd`ff|# ݪo.\6ߓW6AZlŽ bNzP =R ̂cn|~31w#%Lhz~w1V/#É`M̲mV+~u8@- R=e{epCiB_3ǍOC"&f/{t7.;#?aMR(z`aidH+( ;|Vw4`ap6MYӽR͠nۻ:b EhDc!l;ߝLy9Iu(좽Kdū:7`5nTݵ9] .sLR\x%*E}FЏ ?NMS?PfCU ŎvzD"bkH*NOMupCh͗.([=klZ#ͪ;QCSw׵;2 9<߈*Ջ^oi ;ɀ \@/)i GΉb)- ^5ʺ j 2x"ryoQ=4#N*x.x4̂Fs{*H/L&dQwe\蔻3 -}xD4Io\&S)'^Ri虶2/HGjKI=)CA_gyt#:aniܢ97N:ѝo|R ^:T{$|twCH&?{;*jZ}L}<d:Յ+3rR:_nUbpLum gX qmh֨}tB[$]䢰Tj8E*v %ljRh/o){8R"GZ ]Kea)N%ٝb?|W"be\5FzK1vB]Sl%Oݼ'Kk ٝSuNLvFMz*uT?tinew1)BZT蹧_Sr|@Nj8a@4i5nX89G,_A IJ LLεVxkTy K/{$&d-:jxOiAA:<ӰdCNt%${_GbCׄa`%$sMhYkˁq~ cܷm{1DK9{ܚ&4<̖&{ ").+uUP."Z#iw!2CO|{=]$@eSs5r㒐؉W{һ |E Gn/=W{^YF-};ۘ: 'D]0-at;G=9G1!֜Ym^Kz!Z?5+!rЬ3ր&mnråF`[d,4O@ 7TQߣg%KȠQ)Wq봿km {l=k<[F*O)}Y F>lPQ zCF(H"$b ԅ)A1xI\. Xj&$t>\7G߄|rTJWm#S"$W+ E Ut_/v[`x#n$:S? =fHgv DarhCUyle t+:8x i #?2Abg$k[V&Ict+Z4'l69εۄ)~P+z0g}/.`/4DziLrt =kE)yTG7:f=s9R]l5cn/Lz;1 s,t 2X h>Sd'!}=\3FlLQ= g $u4` dɓ''MN0pQ ;N>i .ͤcC$9ĉ 0ڞAL/9ln:QF(_#/zarR Y*#%*P-WN cc67ҟ0BʫOx9ET[v&]Zﲘ%~:eȢG~yWck!ż5#+GWX\ev6=jhl-)[s>lSϫ6;%s֣CFٻ@=%|<vJY>ޒ r$ޥXGr Qm(24psH3' wey9@o x];Qb_AD.Ǥ@d6j͚s$1ŹS|7ΨxVPϴu=@̰7}u+kLDJ t/&zy#:B& 9^8KPt:"f'O`wyfn7f R0qGj0) ߕ5hjfЄzJȹ)g?X%WrRB[CN ɑsԓM4)#X ڞS~b4o,.NViW >e o}}7vF>/$y?zH x?RЕ7S3pClagq!p0Sv坹~2.u!"'ސ^ +JXj8 )ZTgM^/1!pDKe@InY!e"ۖĩs^>7ڴ? CxOѶ4MfUgB[NAؗNJ14r%?\o*v?lc[ 5s G-afZnIIV-X&4Ut? _ X8:Y~ί6lcEJ/%ѨH]p=._U/jMSz%'@~K{u㪽$ã.ug`|GtRn~~} ̔<1fc+2鏠FMd~ ˊPcS]?kV@z  p_WWҦY]nQƝpF-%":"57ͣt۶u -@Vr_z?c_L BToT6F(qx~M AMܣ">N]b!D C_{]ܕc4crB7XHlz>Guv.K:;n:Ol2ϚvxùY.Uk8s}tt$; 4^'*3ۃ+3)W!$nC1Beh:dfYxSb 8dtd*NPC2YSc2)%"3qٹ]쫤0ӧ}?Tk11ʽm5-{C FKj"`Qa;'\!!bN 6Nֺ& R+jRXe9[Giaz[Aop'e y/#ΨJJo=ܕܾr+y'aB՘FY3c ?Q®J v\ iSw4;%8wчv2@\s,s+=B9HG!TvI+Y Q/"J1%{E9<)(5Pmf?@ dcvӗ\z폈o!&:U9 2z3y[X,(I/KXvmI3Ip!NԵ+YX_eSPuuy m$*4 -I~5?x7dXh0 |c'eɤVD"?`3H 6;^Ol4`BpC0PhK7kF3w½qg'XҶs:viG[{%x1HFP"kk|G]32nӣa*hWTϲ^ؼ$bʖًj.7a~HK,>\.zS5 ;{$ 4w&'x-bܴ-Πsk ;;ۃFpQ|9w;3N$v*`pxvgquG- ;w]XiU,5 +ex(䬳_>J4=8Wk> ,Ŗ7fU9eҨE3|4e=ZYZHcdMb=4%3 LB"$2ː8ޚ\A*k%avzpz8[>]rH3[slu\;#6R>FħG#yQ#WHrR_fnrpYJ1]w{nOV$)1q⒈#M[5M<e`ō-ӟ6Lt3q,-.]edb!{`'gcQviJ伓ԩ+ΧLӱncsz)t|E\'MYoTs`0S扥4% aA3+#[2Ef۸,SdTnƕH|X=Eq_2$ЅI(Z_1M -Lɨ#GZEja"j q PλF ] xVL`3$u#ް͈'Q7V=֩v~vmIgl\^W ^uz&)Pf%q.J2;".bp@L/6OTm1,COޘsn~ `[i -&..NnQa)o}'qUP{*fCw~<Έ|YBe'Cr[]K!hrr=hN 1 vsKۦ[񳁊!Rah#q;-lWq61kljc dY{ɼM?~]ytɑg#v~SzE RŬbҬb' HG }ЛRKdIJ¸A{C ?,v:'Z>>]sЎV1Jb2*v(CeR/%c$yI4]:O}Z]eR=a)﷦EqqDlx\-PR24.<}3 N$ͯJb'Bl]nӢMKL<( >֌VI!kڞ<ЁYCcoravKJ#;Jj _刅ϻ]2d(0 =VЙ͇> ]|Ed;X#ew@JG]2Ql3x@6tjKvj3aq7gLvӀG<7hZfM+Hf9wn^&sŸe߀$4t);dH68qqb-'k. +%j>bWN 5nȏn8[k`2;lF("f1z}9GOz S/{34MY oFduϐV0W,o.mzH-*xJ+Pqr¶ٯYǞ ~`R6 ٖMqm?k'b|ۺcdHVSXޗg -N=e~oQ5ek|Hd:/q>H~ +--rZQ>Ov%kۄJS8;PyBa޿xC@rXJ pލ|(f]~gWYU>I~hWF,\ʜ`XtP0`=2haaSIgOŸX\e ӆL|6*>P-9^(`gfdн2O7CbLtMk;t:k"s=|-SݜQ2KoNLt hksN.^IС)# __٧jmnom #šxTfbGL0f9 f̀O9 ; f_2 uts+'a65˩5Tʉ;)[iaR{Gie%cP8ZDZ6Z0Üj(gD٭+  P|5欢xg堾 {rzҫ /]}eĴ?$2V}&(H꺯#~%s& .4e!q~{c'$(hOmQi@|zI-Kn0 ṙ~yS|1S =2`G Q :jHlW9kY /Կ1]ͮءzvX1SNUrVc Xc+<e+".lBsofM~fl|21ɢBߍ 9mĸ.1{@F."o.y~Bp>]?, buWNb_ IUfI&Lc,mBUn*n[2lxR۴\A-Q>dy4Ҁ#!d:FovMLl$?F{%Ԛ4|<;lԢ5Ig{[kO/*E4#B,tE8uNe|Sd?>pmMȭX˺XMnӷUH;u5u |'$}Ť6 \!l,Yw~Ӌ%ZPw0˃޲I?7ĸ_pi*Fo{xjrN#ˣ T(e"KUAQ<q{M+)W[*sI*>\$:k&57@Q6C9*6U˥-n=Dj$ŐЯ lV {_|DҴӭ^53g`w vG /cӸ5V1(|$ZDt\Iz ~22h| xv3^`V1 7]w}[g"@r{}Dznm4"~=!8N٫Emp7/FFn>VG^glYI*eޑz3}>IeaX,>)-X[Tlz@mxq}VOذ 3jyu1MlJ uw9‹3YLNLӊqBc;ŧ FJa}G+o2?!~3 "/y7Wi=դGNgԌ+YGVT0A{oVÈieհj_7MQp3%Ol[KƔ'ƘfKd&aq"xloBv=f'T;/-Z'c ◪+-{IyTB$1\T7>Pk(4bcx&NjzPN, Zhb F9ONDw MWB!i Y?bҔPP qx$n. v&4 sC9_/Y*ZnꣻE6vKr!exŒs)\vلΫr+Nb|xF\c vBD[c<\eM4r9He.%[{ΪtkM ["*~[@>`rVg:=!//߿a\@Vѡb `1yt.P s`8\Xyڔ&ʣɍ޻Ӛ(L߭V"|DR#0XWT+Kbo|vSLd|LC=S˕~8nJСn+V_l[Ih/n2?/pd% Ƿ7ñ-bV'~ɟ;әڕ1 @Fa1ACOEƍUN@ä ے&MK|ېSv g05>YG k/[:E#<?}JlҎƵzKo~{7}@CVzxџrEC Д= ?dzۓNo"&୫U&߳<ȥh9̑L1,J[Wv:8X=N1_C&,Crߞ7}Z}zvXgЦ0 0T“*wo}*d@Z2j/`OPN@&]w4qV>@uil+)&ȜZ+42cV{`(Iϯih emEF&u׺q'Be[Ui3,D Vk/+56lK7Z 2i*,&C ѵoO4pjnz1UwfŻe&BklQdld- jTu`&S],Qv0#hΒc,?STޏT!EDKmgbN~vLA"KN;1ռej^@Tu8fȇ<ԝ/Π!|_~+F5_/C*S/fhwafBj+xjGy1s΂2LZG47 %JGpBlx͞zwՖӣPGL).;*"Th;Dl +?#E+ R{1_ʹcH;Y2١_- n=H%ȓG[Όbh7l4%'3덏v)8e㽙Em9<%Z{4(jv.%׭mF.祠™…Oөz6G:xy#=Y|ihM i \((lx!gog1ğjQ7.{ޢa~✡Ly T:fX,k7 qo }(DA?A,J6XHx )f.Wq4b8in҆=M9 ͘f-Q`7Qf݉G(,דuhPPHzlEy:e 3OETrWߑ9eWGdGW&f6YoA3T!\Ml8?VSFjvX꼞(NƝk BKw ZTl@{cۂkaMZxCLxfy$^XX>~w \>ο s$O]3d jɌF-ض+ɍKpqc1m05iX7-8?/9ǒRh=נi#Wʵ9Jbw;tċɩ\ֈ*]+5sAvh;ݟӇ4&e7vkd­zPPԥGd4No)75Vobw%E.'͒kF?׽}6t@*S}S0 DkͯtɭY;;c=jT[;N2R8Vm%%6|{8<6q&(?pqiRz,~n+n3is+"ҞTU|(My3cDP>{w)vᴐf܀QaAf;OR5(u{X ^fw+aT'm*,(D+o_ֈ&!(QOdO]Ec ExkPI[A+pț &UpkKiG F2CJK5a]c]{}ȯ 5\kY-#^&ȲYĵY42C@XZa H(HR.-{#sul/ ̅Ca{+("gEUX^Dm Em;vp$EIv JqU~) Ѹ$$k$0&VY2Ħ "*Qڸs11 Q$qA[zXrG|ifOL;kO)C,{j!UBY(Է_0 ,[gP'M'A2j{u cO?U>v QUd[K3%5b1vqWSe< 68z= XE-\x3ANzU$U5+ۡ49KLz"V&xxQ7v17Mo˥#RlPqiAtV^ իpBYJ5ҹLB:-ƚND#o*O Njd1ZYWqZ #EXӍ&-fC,4^\leLZ>)gJlM`Y w[94QnRc4ƆRe|qZ|;UkdjubR:H)Vt wݖjoȵVO337H7i#OMC%|st74X4H֣1ZeuʃcLUӞ1sU,=[X9deGeWy,8JU)OY⼨5PF7eˢ]-N{;xoiįC#Nsf&'?Gg:brXtOf29ٮ!5gtw$lӂvނǛV+jtv߰rT-QQ#rYeo( ݂+ ҡ%=,>;X2J+m…p"Dj/+6V\ iobET ߅9w"#[נT?? cxwhq00- Ӓ_e]$4e1cDϿnk t4M4ShPyesM;h=U+Q:>vP/kpJJh@h* R_f%pNBkl KNTcpT 0W`{\[.n+`W(B4QFR278}!k7|xPfKtNg~Z;UofQ+WjHG %սf Y![bN"fXΔOԯyX.CΦe2!," 1xSmjȺ'{KN:oO:R+甜:)ƎA W`~[sz|'tl#vȅ"ufqo9$Aאu 8+.X8+۵_uaጩ׆qDʳ hߖ_,`?G⌁-NHVK.f b Ѕ(FKs)Yơ!e0QN|ܫx:Yy;wC&N5jNը.":0  1p L]v1 =qq}8@ᣔ|!m㕡ٴjtΰNS*=cZȀ=öw|G$$-xibz\*꺼_h!LWul"`5 RHEՓ]TYN TGRL7u}tLopp+\49V5 wXy;+'o նTurS9.IGJ}K yYh,2RB,jj3L! h(ډ@ Yu\ZXIݸq~vD3#[قX=4 {Fl%Ʈ>UK?)#vnTY8Őܷ&* :JO'Q'+/QwtB6/{!pr:5?Ic4@& g=n̟ :qM&I!x `L]-/f>WD'pJGTĘnL*a JXR>sYxKÞU,e&ϳB =Qe JMHS^gVZ[n6tf˙7HI{ ǭ,H$sqbVTlh9”yN%FI9 z'SbaՙD7}.'|%jj%^lCG#ćFc'=ǘ< x]#"mFᷴPR}خo'woR`b̚ }ȲtHƈ9\&:BXUl#c"g/-f%GT` x?i6\JxJV tL֭FmBYU,2: ǁ{|0pb Ӥ^ia.fANMAVtui+h~}݅P-3<1NMX*vF.h.A m: VU_e+ %bT>@-lh0糓 =@8PQO n6U; ?kJqdXD0ߠx҅#w+u3$Bp1B8;y@F+iYlj4YGecG CS~׷-0mOqUN ;-Ti+ cowyO0>uᲺKTs:P<圡~c:ǜxU{Ĝ@i:kn%>N[v s'}t>k)#}*ntJ’lvJO*2`V`l}PVA*I:Ff|g;D"` !a47칃l3 GB?x4VԒmփG\uPTr^nR(S4`*{T9FIR18m@] =#jŽi-&:n.R!!Z3웰6KYwVj*G-nGΙN7LB:uYBxmF^'OR`>_tF n^Tj"kTW90'ھLW@O~6,^1ptJB^]@ŗr(2Cs Zh("=]tP[$&s\d `ՙ6|(]UAA%W4t[m(;ݻ8,7hED3OȤJ!Z!7HȢFOҺ_z,iXu`<4̈I1LOքUᜉw@F[֮b)8TsJxjҎ{_Kǹ4a9 ];@X BN +)fÔBSL*gXy&MI `{Jcl[[MY?5btnBy|in Ű|gEf]T/t`>o:]])<ExkHN.h L ě|37 YㄅM`SQ!-eCM|sԵ4(L- qFQw|Glixwxo $|8h7,c#"@2oak3IJkޝp&؆hkzC% w63Ƣl{It[:QB_!-\P ^b6{D |=]Q~̯Yz C *6VQJ"A,xzXar[T{1ǜ0G/ yV& D0iFB+k!B-&BYU)_)qIj٢㒇[☉l&I>l0Ox?q)D13/;fkLPq ŚLY_'@Zg&qXa*ѝs j5Yq:[ÊYU@BMk\~:J5(tv9K(랑 k@@81n[kR{KtO4,Kwh[H$,;x{[AioQ%ߪ1́גU=T 4@G(3eyVT/g??*&}]@5׸{= :*_EfYUxJ wQ9J55yj->`s%vӨk|E-5WWRX֫#eG ý/z9VbŖzA@>\f{Ʈ,8Ϭi"U>M^YW̋& _.LUd"kX, )س9u  7YI'o-8T?IDeܟ>I jj8Wzt+B}X53|KLR)L؉3as%9^>_ڧkDO`sa łQ,p^Y*C (4s%(9J&grGA;)pfPI^W3xfYe}~*Ik`ZE=-AWi9u"M]mfO 'K?J.O%//=?%*V"S 8#3s 4B+R9(lDX49fm\DFWWX_ּr2[>w+2A}ޝ6@] }Dl3e!qb4dw7^0Ѹ>` o(0hԧf(:d64o0}$;\ @nʥZqL_IH&d" BzVfK0(J_gXH[[2èFzl6%$抣hNO)&ʞ;{< lI 6ٛ:*ắA.KpK_8]^Iv@O}[yqDYLīA[ƵNod(0`gaj/] Vq(nk$)op3IF@]ФY:0d/X 9O{"ɬg*&{HrtY dP#u9whW-:iGj@whsXy=A9T?]b6/<5qXZ0 w9|)dB-x0y@ `>20i9\?!%  LㅧNTdT6&l}wzթrxR}`mM%9@q!uxLslq6,z0jeHюw+ +h3+daK]&= 8x, z1ݮ=:Odu5S:N)YPwRr<'*SPsu""SlId_úl\UI9$|RVRtaV8YcSKVnHX2 vIUi8Tr.d1y'j[Ev9Np9^2vpzۨLGB2(.1ԩ#Lރ)0(Wdܙ;Eu/@!Dp6N cWK{9"f#@_pl8軜%\"N ys3jD7JAv*3^g(wYdECͯ9 aE*^\ P ?: \E?XEkEr!*|,j[c#~wU)ŵpAĸ#t;’8SɪQ֟fFr3h?p>7XOVÞEi,ҳ9?뒽>yN [;'Thܻ˶91f*n< 6 GUb zMH2*ƽu^?bNJ,`K,}_Geo߂C'piƖ.*VBPV.3V= hNg2j=DҼIԟYGUl4P,8y^y iF-?,@+URWxr+83QGq@/h^N*f~+ EkTZ>(ֈN%$| EԗV:$6ˍ0p'`[>\8ߨNN);38#S!JUdzj\9Ze<$8I!3 r" J!W␃bNh.]77U2\ֲpɵXYTpR7 <4vo>rm[4vd,( F:DEX;5W*7c@n@g SL :Bu.̬43KI09E>%)CL\#Z|y|,|RR@'bg抭# ##T%m >6σcSur-K-sjۃ4&Ӎl~ i/O@9hN؟dc~"Es7$,>ؓ e1Ry)tIIӲgej>#9t&h*P9'XïC5{f5=!W&+8oۄO.I21 ͕j;4"Wp·D = {"#fcV~}+RAJGnH<,:8wɆJǔlզUK7F97XNQxl˗(BkfslѶ2#2!v2mC4cl| m"Ǩ'Շnն-=tX߱CP#5s9RJ}~qdd5ɜtk8]Fi/wK4<ij| im%p!zbtRx?a?<4;vG;kk1wȐWFa۩VGYBg+' YSa >$һ/ ^8]#p&Mm"`ے1X?s-qӮ=<V薔 `[[A\j[ x#+_2bsy 4;zͬVZlyd%8Qr=2dz wʴs ->R@ GrLI~Ory7ɗ[UzHT=#ę!t i:QdJPxhW'n͆!@@XSO`I[Nw_eT„?>?YDoY4;4٧u(A>)z+0^q;)[\F<% 0TrV ^XتʤeDqS樁/p2U[ #f-tPInXNt d=-1WlVbD$ )HQbKpdGJ&OL4#?;΍c I1~mJ j}8 q r1>?$mY AZ> 7_{7-Ju,ȵ#(:E\~`8aHz~4,H84tW6pkHpߴI7XHJ=tA]ϸP YAh&-2a=fdߥE`L+YTyUAT(0'Xa\x h?Q$۝`@J['&E*\O?Gi}\IT 0zKF;Fg6'ݞ uc HXL\ ]v̈́" a}t-I_{،85=ͮ묿R 9k Bk|eq> !f|0u#AՂ=ﭠD Ή*FL6#Ũ?La Q_,I2,g!Ly_2! 稃9Fmw^J_H0tX '@liE3SGjo_M93&཰+Aҿ!\fH޸!L'h3Aghj4PV=GI`DaLzGR­λSf(Ϲ˚ D.}@UKk=}8cC"uKj#h˶vRrzXI4}!b֌lp)KSx|)\c;&E&cLq^ˇ6YST2< ߺ,^nvjC(lK_5{d1Hњ}jg0+Zt2\CvH@g:xWgòzJ0"{?\SRYbsK24 }z֜>% ❸ kQoMr¾-Ĝ$MgP8v<8RRFfGgQFu;l 3I_, ~.I7fWpc[ )@5x_ŒJobQ{7gldY{6^fpG/Qcq- Cl>/jWs?#_-v}+zL/XGbϐh?ܳxDS<[eY"S_ x}<=&׺x~U4e_'J]'mW7MYJ QkthI1-9ua+yr 4@9%ij}2^\dfɎ {g_\9E{ŇG' OkhuK {\+sSF:}[~if3A[CUدFO._лy: =ˊZ([|.[W-*S&:syrZFOL@;^m˿cJ8b\X1j=AVk5&m1}fyS'DD+3oI̪ (eZ?퉄:-jݴ \ӯ ,q%>tM Z/8χ{J;<%Oh8R7VAiWt1'rdcZ(=ۃ' UO{aw;.UN0R=ۆܿm. J±Ȭ^D۞?3*>92"ʤB,esݭ-IIGЪZˈ "OhB#]̧u i F,(߰87֢ ܎iEVEpSpO^U+^D5 UIGo5Fmט7֟Y6ߙqAƆқ>VQGeEKQ)yl2k0ѬQH3onr:iRI@`]Q%h0L5Lt7VJ)٧t_mz dlT/ONy*ɐ*3]4|BOpf\ `zO#@-~.]fG@8ܰ<+ܗ!YWFF aǮT*\[E`=OɉFi(""o6pսf=υ}Ns423YG##G"MGgndDsfsԅA{(W5jϷG zTtN{txUDif*VOQVA7 1fč{D_)B mAfL~>]p̥bM)@̌Ig~ 9HX]95蓩Fg&Yh T:5ͶHWy75*팲LP鵦38B9L_:\O9R ,>cn*X=Z72{`4]hNQ mAy hD+ ~ӽ2컈ZYB- /H0]<:*A*ܬN.VHL o aOz^Nnzw(#[?mZ݆ن :C%׮V>Y|M<\x97c "ۇE+ʶo A=y6JdXiؚFLabI7uΧՄz ÿV^/`᳏ƫ1эg H&Lr` ]~!rseQϕlcV1W~Z8LZ@wGfj[ME j8h¦zT#SQ, D . UA}Pl#p Vj0'o<,ޖ,Ip鋴GB$w|F"09.yrILӤTKS=Ή2eSUل/P\ Dd*G eoH=:WpWIX>⣏f) yH.o)őA* ocu8մM>-+ڿH I B =ɢ,Ku ԚU`ʾY10Wy q_h9)`HY O< ޥ@J*929Zu{1-%{E$R5V=6ο9$)M~zg}w"mІK)QE#9'[湵#PGHПjZx`i I1 =QJBuKEj.0~[̩ .?r +00xģBle&,ߔI4 FBL+FʸkUcT-z/7[hwh '督2cBN*06kԔ*# uwcƈS1Lm HVI 9 nõm'J/ko ey>AHHM]<2=gM%!{ 99-@.KˠU PNJZ7x5-?5cR챬~/M8S1ڏn0HkM2.Jm`Q{+)|`xlc*[eěE+݇GzO\?>w".M$oܡ0̣/M`hqgwa޿J'5´,w1ٱ &hO/c!ӛ|+N]~2)6)Uw+ق4syzmHhC30;;6(v?U~LO@ed.Y]눦Sh,/w\fݯW8ZpQw mzBVnqSژ׉׺)@i ,!F"T~'[0?"qVQƙ~5k -Z(gyǥ7[]< Fj'Hk oB{<"%-ZJ=Fssyb0~DcǴ{6!k>ϭc-@r5N*tp0F\K^ &R~ I[A6 8?yWx&%O)ϣ?ւsC e1'X< bAA4{5@ɕj3P\x6 熳x-t |:)RMe(ݭ큆E3 2W#* )fɵd#=,SwT iژIX?SVm."JnUwܐc 将[Q@P=\ Ig$@xUJqr`iuuRҫDlGbb8$djY'Ϛ[Dr ^L,`fEN+ #1׋N b:u;H$>B %\foʟˑ G< ĭ>^cڼMjҀ̥lj*(- XʡĠAV( ṓ4hxDhezGʨr &IY j~8OVqv:NAXpW7 J -ZNg<jƗT0'̦;כZ~ ^49wkk{wẅ9N":'}Ui)M"&/ UTW}`$v8b0lqkѥVJ:ώ%2GaZZTQ= oUVz0^SZ࿹Pvr@\%|euϖ^i c^5l u.ԇTbGԒ߾ьHʤTnqaC,fnz? 6_Zl`>?]Q b!0riJxX=lNOI͠ aSLz&004,AbVb/iGL>f@FA<ESF68j~̏/*}J!qgˡy7fM> Yq}P"bx bU0bg 1a+׬{ыꕅ!ZH>a/1CٶD ھj L?ulΔNYz@AW~fG:5uƤ<xqAcmP,A)[>|;]Tjw*yL쐰U/r@hkrH72ApNv칋QX}y9 gijAv^[2}QQ} ѬN>Ӝ_IB;dYѢ.]#aq#'~ 1;V_Kpo:= O.а"%Pu_7# RRrh@^wEb/[Ҷ| %,ՄKJHKxѧ#CT_yv|{4hTX& Q#_#O$pp){ `YZ+'I8H7, )c@P}ӄH^Y7z+UF׊> $]YQxz㠧xfddޗ %kHtxyc_ܟ=7$Lu! xD\ & .CG8Qi^HgHqcaYtjA.h:W'e.jbɎ}l?@*ȾmuR4z(wgYYAƒ22l |L(-l~~Z ĮtMų,] 3tAn#uj4 K}%P:(5ep"\KɛI8(= Vq \a2CU@ZpEML״6*TK6l8uVN7L(j#ٌ)K2=K^P:h8BRhlOYTBlKed_>SZ2znmЕrf>?ͻ7mAwU#TZR<B6q]M.g"3p@ oWuXb£Eӂdv/_ԤuVؽĉJcD"Ff2Ν%Ior;H`wP%9]#cK Sc=\t\5"킶T$\7vO6cx)<1(붴֔Nu[5 Yj.L&QTڀ76/'?Ӄڿ^N>>IX\۲꼴"bUYiK2;%wV\= %!es\# p-Eި> jCgۇR6śjuYz\*6'CXԹ?XmXH1œ-\q(  }K@oPp]M֘8dLOtF7=Yzqz~S@jHDbZ`ۊ:EY`1O}I r'!pwD+AX~nQC*Q%C[N_y.CSOGxαB;-NO* # 3G E\GN2Wl+QăGy NYWm:MnZJo{V Ÿʰ |A| \%0Q#](7L:TKpJ"n=V֗KrXg@F2b~K&8yHpHI}rp =C'zn:ň Ynk~T\fA+Ep<[/0oٲNAy;@)A,HR#M%In餏պ7%x㇕J ;[Pp^}o_&JfmI}ׅC|UQ̸p%Pg qlYyd՝ KF17Ml(gdIt&]4(#ہ(,BGיnv-2?PDVQerqk7ozC;zd?+].vԣ+<:63P^w@)!#;|:)<ҝdBn?(s./Mf\.c0A[.E8 D ((~| hM4[PL'WZQ*!R@ Θ,2rSG+S %_A';[׽SI>a88=P6 H# Ue"FZ?~dƼ&4dg.Ue!HhL,Q֕mЯ^}uZXebtkɯX*9~0 ԁ2l,^p,Լ3Sl? DŞ3/2탩DPձ +c$񔔦i{ȝ,:<ɶ-~|V׋Q,n|JKfk0A?kt2:qWï*3JhWw3OWin!B{Z@5n Fu(bՃ6sp)s,rF7ӱsy?][D qWmC^BGJ,ZD<]YLf RJr~è31@t#~8WLawC`)m]zQ9 Q0TӠ8AӺV7n63}mnӎE#L}f䘣yfځ S@PہwߓHя1x7֖6UWV]'To\ĢTN,-ѝ{`XCNXaʬ}=}X$F{莇Q}w^@>h ʂħ&6e}S[$A*Ο1HɾCN.$3ʕ( oYbt\fjHrg/_*lqwn~ip9/ cEh&|6ú?|}7Y1,`bgi: 7f?p_0*+DfA ksB׻tdf[Vh[@s;q$:i|K"_ɷ>2pY|[~ԃRݕ ?7/vCeYC)ʻˇt`G!Ӄ5.3n6cǥF$0RUQ ̧]A7T߱ J06= ,&*OL"g:0.HE쳉rhb:n:v MCWJ,m ' kN:.kxַ P%zW$p9hՉ*Se-QSgꬾ]ffMcM8nZ)K2$Xq~[1+9v'GUM_ke`yј"g[jMvk~{ұK45~C'VmNgeyBw" *y@JZ-4}[ mU8^9ۅotS>T4Tl8žfP<j 1tD&]5cP!6om=1KY'8ۖk [쑢LIi=E5ۯDBC͸\'q!PTM |e?,Qo#od(!L6iK}2x˺CJ%}aY )5GgV,lDIU਺4.<ã?(w+s<'(T >rb[H{_44`ak036b'-" ETD&&`b4tm; VIƵ ڊ#UtRZwOckp7L9r[p_ݯ؎b`ݭTbˣNr_$;;&m8=ѷ? Q *u9E~Endi`Pgh)2d27NL\HWhg/<<3MUoxOjd `v>0ӕg&*m#@-yPJK;,\DG"0•oq6Jpb^<}m}.6Yh%|I2v/ݓ|o\L5Y3!4$h^;M WmWY~Xwlk̐BCSS,1m*cCñOHXcOr t釵S=cqae G˵KZbH8O8ثNbqg}^3;Է5 A* X=ihy)X+4u9jf(6|laēϗm.=.PRJ #/Cm ^]{piq!M>z^ycMGVЙvIy/LhWX<1IO j8OMۄw\<~@m%^fGM.9+]I{ u1ua(^[tYZv_@RhDxmU;A$ͳh_` N/ T:{LN@AaVnY«ToupR.:rho6hpʜbK/ Xێ3@%#(ցk wV4(ɞę4Ewam/7ƪHJw8 7 4d30-9&$첆r3TK:8c2ըJ g/ٲA#=)SW .W6dg-O(V 8ͺwk$n_׃ Լs4@%L +]'0($Xqx7oL B|ճ]ȏr }eAo@ި7|abVd`LfK \XWbQ0uӾ@(Dy@wԫqxtGuȫSС}m^?Xfϕ`*Z< A:`~x7v=D2C_x_ܻ$mIѦ9"՗w{)s$ BߚGMfN>~bX&cNWR8-]_0 W‰щԶ̝&U=YQnm:V+q5pz_bD뤆&C _'.?P) ~g-}iM<$"ũY\FJJ VNBۑCٽ<8>YMyBToœY<ٙaT;vܙ\}ɣ:06DhYDҏ*6Y[ roz{6ٵ˂>Ga^cR!V!sdNIcVvC\á>hqIb ?Wh|*ggu韇g¦\i!CJ\yW3FޯvE$w6C_xE?,M0OMQ6ۙ[7KBr8A"/Z^?W?Q2ډEJaaWK=vE]u.M02굶zc}R@eq~_YL%;hyg_ɋf !. k4lej1lMLtc ~E䬸(+N첊t[n9(,!X[v?ӺExH@'qCIJߖuֽbe0^Ĩ+`zU;"T 8<%쳇'J #ڵijEPqJY%.;p~*6W5!M95X6vÄOVNtֲhhչ%CpMaEi6SXd) tB˔ Œ<,d҃zר2nqh,۪gݡ~wn,i̩d XG$4$ lԘ\rm>^pQcP5^#QyY䯟c Tohu]U"W8wXJN* >;yqI,qxTd&]Сddvf}>иƩ8vSTM6Ė?փ[tS!snqAbFۑYgNUɍM?r'L< B= t̙w&-0^b:knM%s\Lldq3;[I'S&ýp_IL}?LwoZDB8{|Q (~.ŊBZf 4]8ԩ#`[W:=Tk lE6\,YًlT?9p?\0"F]`x.i q֞V+^V:ad=56(aJ@8.Ң|ba^kAl fJjprpzs=!MP,qɆ4MgTwlT#rđ`}peH|3 9C/"v52N ԴxMX%r MռPQ&I#aӕdVeS>77;K'aQb\&t%&fΜ3¥.C[ fEu_!1eWL?ӷɄCJd3&=:GD?1KbD.O)6(=a`lcc] `W}kTy,s/~bFt0ȹ&m2 fVf5k?yu6XYrs.Ev|'go:u{H}< Ur` dg؄}ijlMz|!~n:O6#p܂!HS*2#0y>ʧ=e9˅ZT9|JU= YΒD#6N+\ PMLAoMӺ )w&/ +rXKydb6fS%nd5lOCgȷX"4>Є2E"8tKa/I "YwQ*L7k )7|ԛmJaR0`EfnƊ 1=Z< 5b5-gMS: %q1As`M6W|>ƷśOGs݊JCb_knG͆d}[| ~m60k$vl4؅i?Irh9ސHIz<м(1Gpش9pwtdeeo.]NjCjԑm/@c &ɗ`jW* `} nDb^Ά*.n/fq{p.)GI昁"Sޙv<-^qH| k{R}ɣK3vԲų9:cSdze6D{&YɒȘe}:~F9f<1>c]R:HߥT3h ŲBB|& rϐ˱ KՇM}yg|#uk -:φ$*2=Rb4^^vvk:(s[*ӯ->0[]bU~Ůaڔ(TwL?h &E5np8DaCa! I5{BO} N ЅcVV i笪#-.HP4^SJ4÷ uY9Ǐ)5$HWNqOo`DdjF)crY`~<#ڎDkg/ %(%D%9pA n>queC\Ʃ~n b60PvJ8[kdQҮ=Ki7F3:)P ][^ It6y`*>CnpƎ?w_UXז¾ػ,#2 n&܀^A##Jc'H/:W_m׃GgfOaqUBE[rH(n9?{vp%80D#*?xm_\nUC2M "ܻH8ŮMBF&8dJt_0`нo5|vH8Ϗ /iњOm/?$A8## p rSU1/QJۙP yLCZS>>$FS Y#cPz~`#9%K%8t)\9D^ 2@`K´>HclԳH앆?^Gn =jiOBM˕|^k"`薰}̓ V!7 z i{oX--ZZ11(!"sE.qEc2tD2;k. IH1:N x@ń|.'}/@FIK~Mu)`>h'ICo1\L}{9AꑏU Ksa]qbLQ0 mh.r޲.nnA@&)2LK}]{au:o-;Yop  Eҡ??!IkDI|ުl.=VekNp>X}c4/49ِ?:\ UwpR`o5aux zQ?MS) 1^L|. H)d>s}Q;ʙ7a-I<+z}> bK8yVe+s[l h|0xEe+8tm4%t>_ʼ"J-j{eok@R&6vt|D6܎r&=ؗQT60Wဆ4m|P2Ct)!*˴'|ksshGLN c6Dm[3٤MpǬc]àvbKG @ /utr׎nx"mǗ KE 'B42;7\:`Z!js4W8N-vT ӊfh(Ba0l%sE{G%;o|fi|w*qUխ||V J(0U:27a?Ok0+ -ΤZtKO%qܿ|YP~>~s>IĠH$eV|JmDIX_PE,9:+٧l<bӏ/rc#%ɺϫb6j#nÚst&s5ccq"T Հ597ADaq;-];{+ҍ 2P{I'7m.a0ë6Ӏd)a wȓc{wg xv ZTI#y#uޫZ<*WipfBQi)Q;(Cf; W*~PEؙZNƄLS HeZs4/j =?RMl9~-5?y Q*̺' TqZx9]{-a:VyrY 0KU bC "j[3LиHR҆PVΣ냆r,hhYG' Ո)ntY}#BLRϠ2{ Вxgďe$nʸ"Uvg˃DX Ua{ODCz;KOh>"Ɵe#Y@>RܰY[RIIL]n՜ޔR PB\l,#<'ꍷHRu3Dbtӽp,JH2 Sr={fO'M '{o91K1NG!xA֯ μ}]Ljq_ݣ ?깛]ƻiTPkZEԀF!bkh.n-UI١#xھq^vKel7[nmm:\)f3aomiF p?C䘝atOZ^V}uV60J)oh+ڟe¬cYAzRymT I"n esM_fV촊2qPn S7`X+4 Bh^&)PfW}C*~HE*lF57ubf͟J_z?~f}(4T#"mP4)|LfޭdyBc zr-4goć񨜫X9W+S+ ~!"دft`j!CIRuAʙΎYe,n3͢y&B!{z$u!YDVsxgarF&'8v ] [Uw{W0iWp&HK- =mDH:A2M}ve~F*re EX00jeS,x bKQ\A%`F4dp(QzaH_fΎ +|7ӳUmg.|6S0#>qȳv/ES72ޠ Ci-ؐq`',>Q1#2\ :ųR7s>#cFpП> C]٩ })r()I@Ы q{5Dcʣ5OE YK9+9y:(ܙE"pH7Q *G-U9~Y?0˫l6\ } *G,.c)v4s8euW|H:$>5of`\ҲRe7mT>FkҡoN եVI@+҄!6$54|uO*ޔ`r'3(MIN.u։T/loK"RX7hC HUL[ ^Fs`(?./=J]dlŚby4pQ'=iȩ`S&lB`{;ЙO;qT-1Fw<la"vtIi,mYAUK3RAYNߢ<_vzfqKJkY)fa">VD@g5QB.ǟ~@NbӆݟX  g=eGu,Ľ;*&X+CCŜ[rHoޱI"q]&r֊1bxN_+Slѳ-lSaBցrb!%ƥ!8580k.jSwL p;_W׌Ɓr&P CbL<,ΪZoC1 x+4}#qtzx@:o0X'qэVU I!F,@w{*}* ̥9~zJxSoF4 m& kO*fƫ>kUx"kjA_0F8>+Bn #O2>O}`|s@POfS8?|[ ow@'%WF/%ɋ1$,( 2\tl/䇭RK~ƩMIyۭ+(zM-_{pPX jb `j` ).'E]2P;OvQ5u$Q P?v.G*(-:7Rwem)m?rDTb(#ig;3”Z?R U5,I+wpZX#ga MN]uDX %/ke Q8o Fuhu3qE٬nuυ|Q;*:}FG}>@UdB4nUjWa Jv}H뜼Q3YNwٜ EflLd6b QsOG"-֤o5<ɨGY΂𬨺!ԉd&쩳 `9_uKr]F&Q|}/Lv߄͠8_h3Q8w# Pϥ3G~##QkFއsRf݋9kRVĴtUc۪֩)_GKV5݅j_Fpϩ9q|[n$c)LRD"T  S=sxc(ʮ^79:ȏ7͙,1ߖ /Sx5X6jͦ,lHX&R0Hzs3 K-? km ±˸u(qeٖ7b]UCE7Mm$!~2/!8iz~֗Qj;$+!GW(uYi:R+}'8˿w F]s qdM\䩎#CG(oq]xq"՛Dr["iJ/GY*9XGGP@_i8~CR\ڏ#ACXoLsNSިd]baOy\m,4 t52$v^{`=sWTz4εfg7($Om=EVzgS'- 5Y2T,E5uNh1w\a%g|.M4 v{B;\蹅Ĕߡn"ZJ [ Mg *˜s9Òiv3U;"DE8Nrǃ~!mSs3ZIa4|k!=hϸ:Ty(Tc#uScĕT64UbE`SV6ۅ? _>]tR~&Չ6nU2x KM`|-4u: {1.UppZiX 7/6,vjiq]Za}Yk C1ns:6/ %w`݀ºp A(OpG}e Fm6l X ~9`rķ lh9;X ^r".x/0_^{ruxn, -aj*R ?i%^ (_RW<61%EViNcDrY@PE~` d40&KRImTDҔEiTU9Ar?3;tB#z$17{ũ7T EjuX=@"2mmJLʤ:ZJ^KcUB#>dU"YgG,X+LW߹y#3B 0{$lL{떥ԆKKm3Y1cqӘ} Qjz\@ A!3roDfAB- X=/IGLhg?oV Ѳ-dvIwZɱ Ph? ۭx,fr$yN_2-:r)t' /={S?KaCf濼 ʦv(VrUb.s5cq)wÕvGoeB1qƾ6l^> E)K>ڶC/D E<[qѕkz|12caˠ^vgevS@zZAXyXL=ƃu$Rr"C qs%{&//NF>N5X?r*g= BЎ4qX>cqpm>x;^DR/v=rE%6,wF |ACHoZ;Ѕfj$ ,󏩫A'_ cF.kvAf1wTZ bBGh 'vjv"={LiK:A8M 祤 3g!< @I{06* t#I2Yh\d<)w|*"M B`Q1Q.oIe7$j ;Aw{F]*:L"ʄ*Tsn=s@{uG:2Y_nMxn6.gSYYRCpDp9>°y򴔦Ơ:BG7?ŀ/] F,|2\7cbc`(Jxm3ʡ=a9y[{5aQ: _jlv7̴NJȡM^^G+QH  $WW8*NX7O,5q,- V74zh*ÕZ~ڤfNy jo(č:q=n2H\gh$4Nj,m,֧ *"7 JH %6|&خuF#I?ROF^H$Z[r} Gi3뺙ɤ8Ce1 _޳}ÌЩӾOP4ƿWbIdK☀oKS?16uT&ެ55BxmX+RNN%_Fx9 p{ 3>vMd hyEe&{@@ ^JI]1E?Σ ʁH<_ AB6JX@uj,lTmnW0c7A|ߦ2Әh̹e3*yX^,ؘxIkF`U&=缾.Y`2l{-$Xn1 pjK6y; H[L%vٺj*?+r2O$S5SU~'5F*6D?1r9j^K>}`_?$GJerÍw{՞V1#G}SP{r: e#Z/t1 \ sZ\i! "W&Xžꕇ l{"ZݭcK^^F(.ba΋^-Mylbt<0u[O.JG^Pbzby_`oO{|sR޲Yʡ hH:Gs(JL6BL)y|yI-_sL`χh]S+O`&IU'5eL[,١d+Xi+,R7,(O?QT(:Q?fc G9GI5"Ͱ؁LLC=gdlCI4v`&3"ޔ/y\ :qނNjC.lpH u@ p?`8ߠΆ@Ѿ>ZF- ;!7K.4Qy}p@Eo>g\J!dJς+81t@wZX܆?Hj]lv?,D[ l=r%J5d&NP0i=0]gd$:@hFB ʤAY/H5ԭj—R)#J6o{/8WNhqmZꭵJ{KA񕖫CnQjJ=PskDھ'S w tBWg[`nZM{^$CiИz{Lf*>u} @*BjQ hv(o_U(rZ@$76ʓ;oo.D׏'A !%2]Ros&PbZ>;03|JHDMpV6tU7nSІqa~Yˠp%HAf1L\0}>{#o;Wc:҄(SNdV{kV$kR%ݦ馶Gaܦ3|NW Ntrt ,_) P)k]eyHIf99ܶEcmJn(=@dG1 x`35vM cW"KDn4W)[]yYI `g1??h붞-p=="'pAI`؂O% > k_K63ՆDrU\Ҕ53p @"ԍ;rԽp7Mn@7erHU"Rp <<&:A4_O&gY$Y?Om~#@_dv]kŜKYC)V^[;w2H u`jxdHAoKjQ >= xR!PHma0*O<o_)TvNk}!b\GOZԙ%^uN搛V{1Qm=ga܍}exP e0w"ПՖbTMr 3MٞamZ+EN].q]™lFA%!2 OQb8u( *?͓SXd1+u]R!q)43΂*0I` .M@Ey h*PZ芶zn.dx5&$@u8]cYHUBwV{Kd,|oRDQH=w0TЈ/|Rt*a%wuY7|Anktʃ!Hv\*wp:Fs4G/~90BYHQt6[.SyUBm/L$j1+㮻[cNMކ;_Rj0D/*kjnBNR+eH`q zt,\\x+Ca;X> S%1_Ҝ{!›Ќ$ r_D~u<&dzFQRJЕ&빺 >I_yXǵ8/YݾBW<.3+NL^|o͎4ծ<!YdtRid-?oi<tC;|)3޹k(\- ;s,w>1΋f59ZKG=KQsZŵ)~O͈bmeK9QY1Td kD*R#˴hۭ4ʐR4e=FieL:q [}b)."vOnIB=*`#oORWNӊT##,.lL`>6+,)j lZuU49 !|.AH0nC$ Ax+K-X. F[N6Hiop~A([sZ rm˅ttu3o1s(KqϑgXe=QǓfVc}[U͠*<,9 %V:P=h RtFcK V!I0mTHZd5TAqrY'fY= 4|Aslؤ%?킖 F"ﳄ|Jk'#\Ln~ͯFZn`V6pf+B6%]g`==pQ l'AgWEӖgm  n,p(8\2D>>ՉD-FHII~LjoL|HVKt.Ќڔ>7}ToCHOpjg(V*Kj W-=|]niñ{͋CDI`= q7E\^m'nnv*,EqBXH.^FdYP5.}i%(qbjbR `sgsr! tD1N? 3:KPg#gt《qM<KMrMoAa[9=PN;J{^r[Jx.zpjD4nֽ5d $08ʈ{62$qw^۟@g'rHlyvݓ"ɰ. ruO9F:\Dbxx#QVt,4QY< ҂[ wmǑzy,^ѫeTt Z=1Cx_aFb4>of?IkynGuqo|!Mj3AZ-]ȲJ,+.n[I,bt_`&M 5٫F{iA[{֚M k_8r V>퓠2S( YbG رmj hs{k7޹  $Vz!x!LI뒰ō3{qHF-:|zZ]፭җ@4d#>0Gk]QsUSKckBT"L0yM({t\KQ'JG`֥%KH߶H>T" @Oϼ&aۥΩ2V7Hu@5 }8otUҽc7ZZn'}|V l ^<=ďGQ".@#Z{)ACpf;|ε,g5ȵ%` @BP}P h򐔏ϔxu0 0e(hqW1mQ7uq[NUP'P&5$պNxE*Z o ߬1G꺱&"x{LX;徱3$! p~bVZs3ԉ1E`vKJ("ס|Eez=c3Y|$^`F$m$$bV$x&~=` =;<@Vi|1ܦfh>G~ՇLTI42dԍXDށ#" =hIܡ;d0Md76DW9dy'D~|d=ai/(wY|<1(v9 *Eoy,g( }W)W~) X,`D yPšcur(,MKe%d?.WsLfr6O|#v\ fՕ(*BECњZ|uաϑQUc@&Jvbɬq498F’ L(LeM&~,CI<:JWyGE5r,Jp)9Hhm.VJp0ٜ*R"!tbQ`MƊbSj#0IK4ZE{u)OggP[%mxmr{@ѫo$(-5[5 QQj\aT ("I[:R?bVNǯm Xz|T $|S(cCwjP5/78vK24Bl2Z=>3 ><s Ռ6/t[=v$HQ2D_xU  "̽S:M& Iqtҿ1 c=V99%+dވ%LåА׮-唛~NaQ!g$C:|Q,lu`,wa'-@/Xe|5/qZ9֐kTI&XLi n&佒m+'?Zcc74G(IK?F@k ' %n~zP|:GL SWGn̓xډ.S(q.wU!qX|*eU.%Plzʭ `j((G^f{OidfP0;Y@7p6C)0}GSϣsڃ}5yydB}XQ}CsmWl佐0٢w@9"fMItL '{nB<\mz_4IJ;fooHq[(D+&Vt`b49;*0ohD٤)F}ı1H_1we\iJ]>džl*V̋ MXrT""#9^8=ѳnn0Iɇ|bb7EK?r2\M6fK̗s2AcT` qaj>Q^Ic*"n.Ke:){zh(>O"30/ąʌʹ~i v3L>!`y;xKݻ#˅G!C{o..@A K Juz?QjO(<<&EL b .Us*R`I#o~_{79NAp0(yJ)DhZсLqQ_ cMɵkn%U_ˀqU?S=[8POv*//6''(gF6\vQl"H ?Qc@ >rS#nmHup;qdZ J+ ],&Caͱm"4lb&?n_݇` BvXfچ@ R,*b-zCJwj+[PMۣ|l}Jspl5m]t~ji LumVIvW1@)Wv(b@_pӼ9A {F`0_J{g*{Yn\әݻH]ԅrڎVк@,#e]XyԿPM`C7D͗w,(wtzlm:7ձQNHٸ, WYF$cFzܬ6#P^qމ=C"L%<[bX6raFJSHWj>W͎_m = 3:rXp)qܠ?On@uWOԦWMيdH?чU;9X&T 9FQU7:C$NJ؞׷*7%Du4@ :8H/}ӬQp 0TL=x@m+|4EuF4m2~_b!$OZZ!nF'9H3pīf(CW6͸cԫU< Geǥk@]t$:0Dz4TN[28LZp8bю/!'32QY=)G=ܵvӱRnCaF^| 5[<@:}}i` +n~0<ϻKg78(F rF`lnvJ~ %~!fPJj8'^`j$5>@R!lV~/!/J_˷-6D8DS5z*!&&Z\%22߯LPhlmcOڞ6tG=~z㌖XHPތ:݂=^._c hɨuT?MLHrn=a? 2˹# 2*"\D[OFNEҦmCQO2 ަ' <ټ]I6Drl9_Gx< q2 󜢬{n`=Xj?c W+l%ieڟv_k!(*^k}QJ+K۩zf]s1ŝF9m}(,Ёb:ψˬu5Z \C'lH79)=$k#sجki6թdvN.nb+!RFޣ" w=V   Iϥ@ea1U6KXhrN*buRUb>|vad_1qؤƾaj{Aw|ޙyi@b+&8nH;E] p a)gGэL-Olf9 `!_pY+SL掇=RND=3Ju8P!W  FLf x8/35.u=մѭ]O;=*BqlE?=֏ZIkbf67o#ăWQp_ v_Cljy򞗅%^N|ύ5-Y:Ҕ}jd^X{}Vg`&|#l7$Q WzE2W_kųnZЖHayb.{I̛6FRK։}OJm('ÅwtA:;r"%E O ٮv5d# !-96$-_^?,G%%@,8VҚJ̫UxM眻-3FSffԫu6lmc#G zCT-v;J0@0`!t`#98kma<$ܵ8V ('O5 FEn,Āv%KAEdsI0Zq\2OuJ3Knz6VGHJ Y--Q EH}{eBVl2in(q2(.^XQ`A`vMF`(qH!O>64e2;ߠl(/1bB|G46- 8P< DU^cW|5Ky,4;0Uc8ă0.tnOiH' ޾-a>`=kV_@#x%dC!Fq[^ ᢃ|p 30 n{s 4 і(j 30G0(j=ϛ沁wAu ;3_GHV:R&ZfF+LAKC;DaK^MD[~Avg4wyb䒔\LP zӆ!vby2qvvcCp Ac_;~Zqx&J ^yPi,n<78^]W`k4 ?B<Gbz)}'4i-<*nIɕȊo_,lxm!q>KӶx6Q{Z D1(&\p~z48$@io 7(.n%jDqVI J&4B(z!]؛u^PH轉RҌc1`7C|߹f&Hy/":wif Ƚ΂c˅U|-i{X“; b(Ǹ_A ]ep֬٦a7h{A\=?U55MV yO{ pMM! sAs L^9uLMUW.0J5y7{x_﷬2_1-{Wn et(<}>(r"4? >tN]b|%+#7 ha/`ZԘ49DeuՇR,TK9g*CZg@z1^9ĥa% 8[VP迧+f"?悏G3<=*-bȮމ0̌[׳iCfZ6{ $^6IffkѽRLѼm@ԇh`gl>fcɄB^;Zֱ+)<x( 8},3:,#a?sw(s':X/O3Ue\4QMZt$!yP6]x&0)@H!W4.tŌi2cq <S>0}aU~HI2? VJ0҂IV  4-8b4:itg JJq4V}<m%tO 4tgZ]-0 o6&lyW|)k0KjX^D \@\YK^1=UQcRשȕ#7YO*rXA㞇=kϧkr4dp[z 9ؖRi:!{ȫ|{fCWPWc-juYh|-SrE av(%0|,y`TYi nl [̬BC?[Q|ʇGyM+eTa#T  w"O msjncĕ/WƑ)Ȇ]X 㓌;yVҥt.Lʐ/GD[VsOc mhrRsQ*l7rfc!VnhVжprՂs{W$C'Q\iîXGd+*PS.a .|&P]靰RC` 엪=•yH([7W[c Yn>H0yB N1]V8xX} 6F;.p]$򤃱)~/VEA3l_ Ti @Ek{y@ 9+ k %c=|TX g,KSFiZ2YMgP85:vf/m-BնAUr=oM,bx eh9B 2UAV` #$r~*L֭Q܎IVU$j3,@.\ S)pmnAH&݈p>QrJ_==1!AQIyF 7v|>ӎ/Mi/ sCnƍJ655vL_s&K \x߾tdEPPG$ @)1p])kGgVJo?춛: k޸*x`,{Rn a^0~IUH}3)x abꥅuM_!;G5zǜe\TV: ~o冓7!ޗ>f=ۯϱ0F=OKb5Gfhw~Yɕnjd \=BW)#+y 䘋i/8nC*R*D%;lhORd2]7/hV@$V"Ji s yS_b3f xqӑYXTBnAţ2HNo lۙ:Hv!#\fIS[AsL9%e`&hAȅe,JEE=97`[gyw XmT O;&`]q5Ӭ{s%>QgV3drQrךxnCf 9J-X}ل|2|,~?B<,@5i: nOMH_&vd~0ʱm;wֳ#AxTUQbv:=DȦj}J@{O1TrmA#D|xc4 H"xYN \x8bXo[aNvM; $L?4OpSi"W2UgiFZg?i<6'\GBHU{2 ;NuVMpS. @pJ8e\bhlkh- @;SdQ6uԑDeGeKIas@(y)T!ŊC}ilBN<ͽI\% |\ޞ5Q461r9VKU~OǏܘPp_`5!9̾ga6Qnî.>0am:Ra/KȊ4'2ʸA'] ;15o?,+}2 1zzyӱ,2xmgIBo@*@T4 l lii0. CK )c_WįkO"VDazt#ݜ b F*T8ſHh-Ǭ ۵[~èRsWMwm-P\k$ ՜Y̚q02ӖFV"8Э3X 8Vaxi'w]Z:*XL͔\Еqށ Jq\Xֹ)7ξh_RǔFBOhHHAdGU- 1jHFq2xKG18-*<]#FNL;r_EO-RϮ$1L#B *,vᷙj1 dtbMd3fmo@u|S9Ea?@8R`ۓ?3L0xwECK7_vM;o^:^ēQ6~&}G; rZG=PUFl͘Es$4;ݨ@&6PPDuNtyì5_2bS2/wX (úc:FpJ d&t $OMn2}1%6mIkeo!"k{Н99?I!sTd%*.ũݣ[j ` TQ ۸`^Sexg^mPOH2:>+$C x<x]Wzo [MۤOlmItx4<鰿֒%ן]8lB͘?)gm{$& ZF[1?ꨏCJc۳C})y19N28 ޿m1ԊgF۴a}oB+7E0kN}nArC[_FVc4#W;[6Dja#f*~8g (96jKB'):D/Q0dwM.Vl5Lwo@n NcFztk$?tT/"M;HBദQ.6:"4JE&@I]v;Ħ:cgQN^CVMH%;+Grj9iRTSk[ MےP ʻ'6*8 u/|$plq @+AUm1vO6}ceuD~SF-L+TǛSashte.m1 )и;-YOOG b1 Gj_1ƙf mnCf__DxK&}P; c0+1#e#4kw=V9&џ|D.kֺK&0B@*}L@uK[sT)n؈-,ҠT]¤ݞ8bbdW}\'?T&hIR)[\ ؁Ŧa=/[g+,?jB{T!R%~=T4K-ʥ!* ;}%6k&9@M',|dZ墳YbfX;5 dl/$i*絤gn8t\e>%&Xd"KCגh$""Zaꓻ4#tkF =8;'{܊d XwXI-$C|&KzXp{ԼdanPwe(|n'{PLDž'pA޿uwblle0{yz7%G˱l'F=~S&;¦VQ ]/M&$g-X{ot XgڡWsĺRmjcA3.qTaSZ+]Ҹ$Z02W9G[r.OdzͧudwW d# H_N<1{R@uS֭'" 5ӿI@aםp0X>5_PAliQ[dv }8IY^hͲ@ڄ]=K(M Hܝxҍj60罖'q㩆mT8O8ɪP(2 Ch}Y)uT@OgK +|((>=%"@n ~q|lh~(2Tc'GkP;|?V$7"H'HNw +3[{1oja8- Vٜ)n~B,2ZvDɴjlSkP6l4=^cCj&I8cZ($}m]*EDNG45q?u}7J"d}ǐ;5utX~VoMJŪiؕ/ w ^OىzʑO<LS+;lxL/ڰl1>ͩMi)DU*fǿncy?yA]k%iɆ֍-(XʯX$>:\EFv `( nYˬxP-8n0QMDZ\ORJcJqk2& QȾ{1e" e/U'NsRK.^x S\#2E J#/[gDxi BC،P_W[YU|VE佌 f\Tuj=:}e4x`&_$y뚓 اt0.#Et"QmD67R@JF!NfFN5{ffU2K}I>MhoPi.D$Z S4hP@~$7%KA.v_(hRo\ ksmt@3ZK2:u*ZxkPN/˫{LHRiL)~GW}B΀ lekwQlm 8>i]61^{€x#(Irg'Ea^NP $}=uDk U#[sUIis)iU4;]$D%%[x$|1`%RӨNzGCilѨ/_ItQK >~),Npb_eB$di{VyH}YfӹG3]6 ApZsl_CBcujRLucV9kGJ+ik9~5/ OKKyO@+Q)Y(Q\`FQ_Urs)OWUe:qD6f%F~)7hͅ-6 {ֈOgWm9 %|I֬ 1˭>Rke5-o7k-'T* 2N1l4A0(H\EOXsm&\w^DǡWb*dCwaZsUuÂXY(]]|/ꕵ1z 0!>ًC@Eǒ׾pQ'0bKsյͪ]:\Ĺu}|pv́IilB%2L |zNIǠsf)81% .jNK<D,nXYxL܌X "-BCqW>@ ƯYͤ@5:~Mi!*k7 7BV+wp=s顄d>v8ӪzAI_ir5XI$ќ|3s #Wulh'nj)Dt>Mp"S, Oe _/x J^#Y*,;ac\0279Ąv`*vezI䛨ba锆<]#ey6ȅk<xzwgy)Qy9FbHXe`Zhn#&j֋+t ~:muOȦB4t uBV\)RL}z3XX,xx\GW,nSLE.qckA]Or,@SIӌ fRPI8i^XR^pG/aL}N^$_?z^+ }%EJQE|0GE!7v /K=j@mJn gM,'LH=1 [ M>ˎ;ŭ C1 D[O=dqtX!=TTWf$+@TW NlsLIJYnQ}HOyyuk摢 ^D@FŜkj*#G7c"^ZF67z䄺B辔. g{N%h go>*p/((,.XLI[e4E妊6{&0CbGV%$C]@"Q}ږ.&K8)UMXrtx!;-_z>PvnY l h7._rU$VPVGŹsh(o9ٺQNFi`1Vl%X? 9iɗ6yc&C#i]ƛ*ΣT%9Mڴ8y bғΐdV~yaUT/#tY-޶Xtzƛ!VF(#N5LM&wDMfv+=OpS*嚖R򋌘 I)͔l J#Uwrѷw5\OY,+D넁]6OUΦ -LD幠DcxVMiR;C\⛂_WFTRs i..Cy!rXݪR`g`|K +ݑ~*A>zB-߄yr)O={ltЅU J˾Y#'RЈW3_.mtKT .XU糪MU^'Vރ% jXsɤ<`\Wf K5c5Gnc*Xw vHus+;> f p%T .!q\\PӴ@zpZoz?[K"Cy/-EWT\FLu7C`}Sd 8]/݂K_-~U6{y,"EbQ+[fʨٱ$yOUZ^"w) .@]Oo{Nk<ӚQB..bFypF> v>ёԢ B3M&M\^j/|F?W*cpicԕ0X'I(%/uAWeŋaiWM5`Ib.'a.glԅSxt 1y,BևG$%!%g¥%TDsOA["E#l\fLmD`qgnÈ Zh{&/X[]y3I`$yڼb/{l]Y(y$X<UױߐwHTW~Q؝%>jf8Q< ߎ 8˄I60EBTH_?8-綡چ|/IkO PÛ5O7~lj-ZG%jKwF@mYf95FasMn(#"ד"NZџA3- *gEӮX5} 4J5@ H@!>'@خ2A_v0tH C]F WS¿cCmtx+Gη++i3H(\rn2Fer1j3]uEI~I3LpFEd"YO@ G'z7Bڏm k|O-X@x#fTI%+S>d4 $X}_vSu)7Ѕ$Kr)p&Eyv%r(-3ۊ2 շVw~rm/e}|)l}HHcy@r}uO mr,댢|u e:C[6vi#.sePG6 )B|Ѣ^9a鳸_'5%zZer=l? vQNLנ=ֳoosMnTqџS1\)!) Ls,>d>ɟF'6_ ;G$'U>~~. ѿ#23cLp%/n=,O{8NXWtlM,q_92s'dBĈY2t r,IɽN$sbm^ '*9"yT]:̅Lҽ\&RiN7O`=8ݍ %SK4ӳob}罶\n(/XGvnnM1mf-P^ɹN65+Wx\dA$;|s)86ȵpOۖ'=XrrĮn7@3WZ-2j% qGZő'ypKqi_BUD˦ۊC?Rs} zQY\ȧXzƀCgo}όk3tXTKC9ľl8_ǙaO:,vS J_ TEUK' i1Gl!Z!{ ^z^,;j?+y_x*k5_TOd) 4 4z :͹dZ1JEvV] %4>#[HG+P:WSKkz_v½{ 8m1!XH;ܢnTLY.dy/i @ %Y_ {2T{V7L"$U2b2/h%{] P*}.>ҼY@vC9)N +?-']s +(ttdo? ː~ONZoT;ٴxq:$;hb9,?3xu.9/D5})~כSW3';IFu t2ø0VS?w !x\RžX7ΎɆDC25_Glv}q"/VF,َ^lVE#ݢ/W@Ni QE&#)#AP"?3w*;%Bb+7Q7l#|WߙfS6_w㣯I_ʀ^ê# Fʖ@#sZ/d1*',D=ZzL[g]?w a `m"ų0|߻l*|meDK\]i61g0LU_L4H?[>t*%Cr>1J9z zb wZdO[-J^uYSb\aFCɖkehZ&8>OfcV$o,9+2Y3eU5wE9 1 ZyANx<,D^}rQI@o - - 'gx:NYIUʁrc8Fѽ :՗6$Q0UX>>[H-N!PXvT@VzW,B.Yh-$g{aZԶa&lk j_ànx|p:oX]o㽉4Vo=L_$A W})ʆ sxì@> 7+ 4W̽K[IŧG4gon2=D }.$0AϖW Ӌwo2z/w{~m ZM)SBE31Zw^ͿcΙҦ.jdf.#:bJedgڊQeGޤ():]f٘RI=21ӂzy$Ħ+'}ҺA'-VMg٣3AK#_*jQ?M|!68Joh3}@6v_gH@_\핋OR2 x4׽8Ǻi$r&ƛ'ğ[wUmАX k1V>T`49OuOL3+B /;e O] zM qňM/PU hԘ FuXxlyFd.`|tINF d*5*q_PqtԻ,,vyVyg^:bI :%lH7ӱ;"gy`ɲPBanUskc(8ݍ>&o\WF>YWۍ4$ngCjgo氂-T { ;h%WW/{y2lյr[TS2_>MNsn1m LwqZ 9rWx!qG ez1+U?;]=~fz+@<@5+O 5'6X##.BBڒF G1mQq*$(ǂ;ʁ%@m{sL̃tTg R|Wǭq}]^%!%wm3i.1`bLnn~z ~#޷Մ? e넯24KR_iQy/6BV-'*7) &VdBЀ)MSx.OT([A ~x|{AǩK9k`X qbD3/@;|Q:v]b]c~ ͇(P5czY9cI&".@@<'U8v]ݻ:NYfN/_j< ?w%Ť!NWQw79_L /mӎH-Upmx\-"R8 =V'DlQ4a Sf!D056}k$Xؠ޷S`.h چ9W `& ›_t>hrDR~sA; l7)uu J`d#6.Qxq)x_ʉ6)'6q ;a_Yh$?(bb&2*β.yP8Nޅ6ceF;CI o|'x[1i3]ԓr|f<"ޞ9ƌYݩ9H/KR!Zs9 L?RE^Q‰=/cSTH0/խ{Lj@t8qN|#L6 <jdoq0!dݵƥ[z&%q"%}jq)YZԵ3`F'=ׇD*;3&ij)͘sFbeI#6mP쮠$*{.?1 hTF|˟XsBcI}{I҅g}@MHfrbt HU^OrŎ'f L7GA(YP|.?R VcDth Y <@nh/&b'5d%b*Q A۾8[#RQV_^~{ ;e{B?ibjߟ9YPAn#g6N"k~?q7a{7Oo7u@]bwenQwu6&N! YM8nk|dYJJ- 9_V;Ȁ=FWP=H7COF?bdF,U}XS_͍ Eo6l4tG7hG6Q*õeK(VL ~M:<35 U$ *˖ϩ&U8njJkEqkc#X6+0֞y<^*#ݝd+\_]9kYjKmE@ q&r8N15wu^e;ú $0QlsK&(FmJ;$y9:~6t>_*'z($nxZt0/*to8MpS]> qj.)c)*#.)c.L%ќkX1?Gɀ<ՉBsEӔaM*ZAWe&%ko\W}uWhi,_w'J˽2U[ 1p!¤Hl=VĴ c'f?+Yj'ZB6w$Kc(SVXvrַ~'m@dԲ~-<$gz)x5xlA7,u 4b{*4գ)-v*OkSN.k HI+)tc\Kߨ|oW,uMLʷN#2 ~׸CiWi09H Τh3\ S!9Nh/y246z/eC)b`4X&t[iݔ{-Lӎ`-#gܴo)x$GboJ cv}k$f?jխ+DR41tRXH3'f1@v7b;FDz63ȅl/ fo@b9gbQNm?/2sX,$\I쉹y GV֮Fۆ, W09e-s N ӜM  QqGQ҇Q&vey3T]hqzH*#rssMcNH{aAm_G&eE08X7<}W3s`zuVօG /L z}|y7عbᕶ):H͐wޗ?̴CQigfC]O` C? ^m^I Vn&Fi(,%6⹏XHe 1]yj9ѯlF=C@m{x6O>{BnuG䇃A^'WH%4wiKPoxeG9N*Fe}XZ6yJO:zqTjXN*HX4N>uQ{'d=&BTpp^A8ifro(tZ4'{߱k1ICB#ʉD[V7\'xxBͪE_lcRGwDU}ݡZ_GD7b0D*4{Irt=f]& A2Ș$r^aQ(6?75\ +K1IϪ2vG;9#$B>|1~YYW /@l*X!VAkלsњAj&ɦSN~~ŝo,|t\e>Rn*ژ[&{Q.Ac@|Jƌ+$iJB.6\mɫ=or/nĦm#ohxA59vhBLxN]@8KA5(Jp(q-9iTmëZ?(5"芷#b(CAc4FU|P^hN[hD|L[Ky0{4hڜq?~?1_~MwK(32}uKrըl1vE@A@eg+Z@ɒէe_W:ӟ mñu{C"deam+Q}3{(\)^k.*MXԠ a-[IJv5Ƿv_֎(::VmLDJɬ ?xl#qO2DUUFF̟ŕ#72bF68ŌzCLJ/&_aa@{;` ;B,&UKnXM J{v!\Mo3Cv*J'~i#jxL8ɸJp|X>'ܙD 5jE.gaGxG濘e5$U8ݠ>8 8h@ȼڞvSxчTRULvX(8M}X=[!S܀`4A*:Kgu}"DG!o c$U :v6p<^noX+}V'pK^+o(Xo"%{)]}߰ZTZgm4^FSXerW![C AEf&.(_j_aVqCCڞ}.hCJZk c+ad*2jȘq1>#/Gqc=Tm!${OYxMuՒ#HXf%UE2dd> ub Մgu`JaU9IWKq\۸ {q2ݵ /x@<|!{jW8"g<}e_4VxiqKaE7Yg\־s8K Q*u J5>Y/{D1Jmz-?Hk=8}/1JP¨M~sKPH"máUH-am1p!pªT~EgZqDR %-0BWPol^a5E4Q펅e_YيP*~APe;򙓀O{:p3%]l؋VN0T8kH4$$3jܮ@^ …} M2]ZP9=sf\ŨWHYrѐw~KEH: %lfS; fQrIT:-o | 1 _1;ҟh!R#։$Z] Vb?q1Ε.F@VSL%3sᶦ)s/z#y^1(ˍŏtpY}ŵűzJENvkBm4l95?}K}uM|5])Eʐ$6{㫅|*^C;KZI#^[,(4DI$qo $KϙJ ;\˴,3ʦe"pQXlhiIX A"p) )y-z OP+_a-\B5 pve|c)׫zE1܅ ;8f/EH$ߎ ;e1PTR֩FgrO43 RQ&hx|xGFV tqNBר7sJ.>i\Oa]I r4gd8Gz ")QDܣۓ+%hy[:#"YC0-]I,o]pKV`ΖO`pϒ(؂PBnǕv7 d׫i5},aXq  Z!s)dpp+ yI falJւ*~QC\{݃~&Bzl `o0 H<뭌a٭5PȽo 6FZnKٜ /0i-g =j\,ş[{1* BNGqhfM5 >7+|e4C*\:N?{&I֌ ,Q$ebz.;GB?ٿkxE !7q'Uw;1vP:=O|ꦢ)_h$ )_fy救#n/WM1 LǹDuqzJ1p gCUiκ9?/x EL4W6XoqB>τ<+JuUa'cؾbg&ÌɁDB Z'G8?Ak0n %)v?iG*73 Eq ~|7/ɶ~!=ǐ0Gڈ!EJ&-wVe٪8Xuyӷ! *;Es bTm"C:7q =EjP}4$@eRg yd2eW3*y 襼w 5rKCFwϼD Q:xd5t/-`ZKXo=mZ>a)b(y /(>v&E%{ %u^)F;B擖^˶;~09D^ |9Tx;wA(o[D.tPA{G\Ca'LQ΀VPk ʕ3"B~A b~%ngܹuzd1ά2,,@HYCJ9k']Io ͵\MIB$jMDP:wg9$Sh(xYȴ\nޚڞ*B\oyʦ8M[p2Nna>ӷkba3)FG$U'VoS@d0=!EȀMIqĠׄQhYD2ы} ۥIҍ>o-IN@Sz=!G]# %< NUMU=͏{|G|mWL4sØf!培Ka,{R.E44 3<1`JZ0#F%=^QYbGC>1np"ƒ]\z^H]_Qݷ\$'^Wv.:Z?І]}ŮZ r wu*G;q)qmʔ `h+4b ɀeCjZёjڶ,LgZiHG݂<_끧Gv:$T' .4{zeD&'0 N'>||e/{5ءܣ(uY[ !qyl $ F$[k&"f[AGW!C*GdCؠ6:4zp^EmwE^a[1ŠPM#˖do+UZ0Հ+pnpan@Z qKF{!ԡ3DQu o8R=phH/~Z{x^y ]7vRXY^XVKX 3Lzui HfcTi `JK?,IkB8lS|H&rMs=}^*ʛ̂n%}AU]+ m5qn,dvXlIF;owQMQ)zr0u21}#.xǽLutC7ѡYw̱d*J]b'Sh4P[UdvBЅ,U  ."#mYP\^̷8JY&N3S%/•ܯ-`UВ\AYu+ !q S,RNNV5aO WnSoI)pW 8O!|y12c!ܸ|ac^ƾ:K[)mC.I)yQX0 jL[5WV.r\妻dn5?pymEoXneb3ߒRi.0fn=Kً~&%S7k otT8Ch|NGXXWA""Avfb=әty1cvhV3rGe1K`,\c;٢eHy| -ekp Ԋ86 w; ⮏᷃hG 3*J7L[&8S+/uЧѯ˞ E ơscO_0%BӶK0jQùq9F`l1AɊ& |ʡp5gU+xA<P;ӎ "Jw~7UeXJ@ڝrt OJ;ƈs=%ז+ Q:}pFZ@LQ_(PFFub*G\.X!q8Lc$U=ɡaȍHA.!mu4ܔ1ƹ? :̟̳|ބ{&bB[ }jXwWbS6]+<5dRA L뤵z E}ߞm##'<%%wY5~tљ}Ckrq H[/oa#3u~[pͦ`.FY+ A{~y})ĥ>f4,x?xVazYU*Vgrԧ.0ux?7P-)&4{՟UA$e&(ݸd ƣb,Cqzy)zy9!<6.$x+fv6¤HagTZoʉ1ڀ ?M^T.3qPϵ0EX`>sP *7*jiSվ',8(g ;~`_#hj4Fǒ=3=Ul_QN xţ㧇3ЊlR7::(q#GFHc=sBU+S:AykzYl&8\#**FRu+s l>}dƓ'qlqp;_MtUbQKhZ׻磀$w(>Kz , [|}F  䡧!."|!H>E$Ђ)n6O00Oe^u"y#pӓP 98?6v+,r8-{9 ;]Vh%P1 j=ݓKRem-1.W^1-#MIgK}OY@Lo$fό1T3 vq«ֿ76dK5܋}4KI[a~ 8ѫ ;gwKC10bNVow[&nh8ph:~ lTyP(WO t((?ᛟyzESl.',\R3SBP)!=$Ta%+E:ad<ʨ ]ibMʼT,̂9+s[Gloª {8S^SGYIކoǿ?ΥvG8S*x1M9m*eZYG*[ئI]jqM&E("qIu؉_1ll9#oc׳`KlJ-OՐkZT@FSFl'(TPpρP~ ۿ>usr19%Q&*y@[T0ԶW||~?(O(?U&$zQUqT_ߐ$bгQXAZx^(s,x D~̄[] ّmT]/~E?џJ1 Z+x OkhR4'WCTWpAΑD0Nvʵ#7:j@6M0 ^Y`AVNe{Wdl`OM% .y?Ňj`+z<,e `1_}0Z}uE_=7FW:uN$M'/shȐMV4} 1hMuA*~ЈD̈?`95~ ; (YA[9.1pZDcke`B*k{O|y3W Kr0 }ecrUGZ x=ZmB%5N˔>G.Ё`/M[0lq6/ }ٶ*RJvnf`"c3 ssoeїljTp n"da }ߛ5\-zH9#W?qdd~los)(~v97ZpSmJ:"8 'mvJPnJ<M&_"QÃ|ML!n+j2}Cߕk,m0g[h{`foEV'u.)wv?U#S}GWPx$ŢcP gj>|]]!RمitQ?Jڪ8@Kz099dzp\ K*FWqGMСJ}I*_ UjvIu.=QY쿰4 %֟ij'1|AazɆTz뉪 O}P3- /g2~ڰ ,mcohWoڱ8pR]L- h ,M:t'?u9a-R{1Tľg߄[ߤmcR4^ߓ }ˋj2mQ58JQ_kmuTi~ܖPZfǝ ڛmI3 Gni[ӏ={Pw=f^Ѹ/CWcinj*]V̄zK=ȉ`xbaFr) DtJ TzaObLŘ_ $cA~B _ @ Z DW tw(CH4Blf;ӈ$팠XǶv{=UEՏ*i拿#U-=|,|* U] ~L;Nw(P :;k h| igc4H?@@Z!z(]Y]eV0i됞+o?_S]j` ҦM2@I81k%-luxydD|:>EU\G1DFvqs!J^?)lxmmUtEo}3gwr,zq3=CJ q%L BIo+AIeS< a`n-s{0$ ѱKX>|̵+nw:DU;nc0Ks[FnKm?\CW6.WɅna =]kANhgDhPAu}b۴4wJXsw꧘~QOzR᠋nׅOF}F.Z%d,M+EZԎ;_ @EæU͠]senfM (lcӁf"N>:6TQ|=J;+>E6BmѯylY s}qA";39Ү7nMT)څF=Y7 -wx Cq$G!R{kcias OMu@{_i[;pa^E,FHC]GDI'Ix,&AڵPl1Ώ^WzJ CEd87C;xWT诖Wf@zBZצ:]Dک I7zeŮ'(p;8E͑|\ tOiX+!ȏ蕎\ΣUS )џ B$iBl b?\b<}# %RWKm>$E6' T~t[Q+k$EJg> #l`d|zwrM(B NY/] ZZW.I{le$=XM\xUHa W30@/I;;*1ElDVަ.IW528ܕ1w|2Ft=pĦI)Gԉ+aJ, OrOl%ˬH_jy\@Fal]hb\ ŽTY񮜛-VPIZ%V$ !894H}OॻtܯB4ҷx %؅6\]zVy^t/{)2>kTVʹoq0z6̯7~+@b![[Y^zWaLwi)}.LD]~(/J+?4h[6_qYzMAΦr 孵|"(e+ퟍ'92bHFIjpb⭀f\DG +Rԭ~bZnA'/W*=262"ǟKHx,=o^!E2alے~@f7X;ɞ  : =" jZ9v¨W^/ 4WazgUi *xN >ʭ'D<xߍ]?iḩI5;!.~mc{'w#a'$v+{C)(_SLejBƼh;1 i7ZwB!Vb~3*ߟx`o퐐TH8i;Ȕ뼌w$Sg"}ٮ U!«(DSE$b9qO㥐Hm_»-JFL?`Q޿m`d=VcM(0)Z]YxF`L<:4|ǟH0>9 1C j9:O^eqPV]>"yC*HCNBg-! SBN.@v0¸M0#[^bUBMHG1=-XsBVP'O{i͘j9=z)]L>,ckD>[;pMpInW\&{A#p^i8Էg%PrÓ܆쑂f"ãv,{yǸ LG+YQ.ս][1W6Ы?隆x׈Ndƥڴ]'dJlfPWeymxm?s%h|uNܥzTZ%?q{A%$BUq a {A\CAB.J  T8>,W-^78< J,{>_GYVׇ_gw5qnӷAT|C%H >Y !k!KdÝCzb@[Pf8Zwz D[ H?ZS I7 tцI~ˡT77pZ ڶ"|U90NVQo7MD<q %S/NeثOq$߹Uqؓ$`[/[\ZWr4 PK5pEj8ܼ1@Ӂ0K>2Y^ Ŷ,\r,2Ct}uaMy`>sIzGl6 ff7RʎqO ٚjA7nU. 㛍 Y~KR\n'L%BIz CCL˨Vk5;dmߥ«lb֛%}5o4c 6< HW\ӔmGkv;(y76&+ o HM? 8| 2J U5<<8pa)dwщ8L3CJwi񀔿 g \e R+ln>  I WLxH1ybcHj@Nm7c1h_F:Ak砞1 Y]gWS9n1F5,Tâ # )I9XVN$fb {APP-fFדM${9@؎ֲadavFz ӊ) (󠁚Gze]_iEYj03f>߯a.!CW=xv)lNs, vzRz2Q KU0aa'\ܽYL tB>bzw"?F՟@Ԇ(ȆF ra~Q氩L˿ߠςV1O5o0~7)ܰж]zDϋrO3ewu0IEmOzQ0ޏJժ J9s`V_@L%cŅ!huu蹼]XHC@\K, X'KDXpN5-t4hK>mY|g "EI۩PږT#pW M;ɦ`ϓTRay۫a ̻2c1q" OOܷǸ!N pn+G "(;XƙEBo(ebbS3{Ι'ԔSȆ4> c2]auMv9_>G)Ԏ5| \c..dvJ3dIf*#~{*9?Q3&ܙ[hA~E6S j.rE.ai,;s{"u ř@N47+]Oqi1ew۪96XPƜ_e@POW)r[!=J',XQy=Xp?!^.Ө?%vXIu)YjDe.cQj˯sݟXdfv3/]Hd!SI)/0 Tt˹26}1\(BNo!bh=1vH'QBFigQ.cN{y0ԛq+e'"0M]u2uc{ ϊw3I/=xWI+mcA ;mnn;juF CXZeaȄ~-tgmY{籅lq,Ya)R$ool xQwvYsfC?C:ޗתꩲ)֬H&CEv I1U2XƩPRّlO-JZȎr4UlRV:C=J1L,IWh)T5[Zݸ[!*_Lz&dLp=VV?AA1zuPb\'?k܅C~9\¡ Rks'cwtj37 E KZ~tryG4TffX*7Ml^U.} =O? mrKtJ˿ݢ?6j1'XoH2UޅPڞ,۵Taklp\bI|uۤ=gTJ$i.u>v5 `f]JGe*5;q8O:ʧwc!@ac&NhԈFkyz9BCmP:i/rE&[jW9ժne,${2A7i: !Ň8c9z?wBxyW{{~W|3*܌m D&{,ߞ`h[e=!3c*Y ӝj;" FwJ!z @_SQ|vPoQVQw ֺ 3n4o#RT q viz) -{7 >B+iW{@}ʍ̓qĜ5(ivDܠw-%[q@<_`'xkINۆbzv&-JíY.3W)- C3V1* ѮOg92Wy7{@H$ɀD9脷THD<&̶L0/EUXbyal+ n@85fEݵPMyL#K/nΤ92HӥEim#U҃?AM /y=P^ճK}BD2v,;FD{{}dZg\3N ρM(mD-+O ef`Zt)f؂ 8W]g>Py"v]NJ!cض}k5&gi'>ٛl/~l|͠$ƘV9urgOϤJ: f*x[! -.ͬm_nyWrHHދ6#ט9"\e]+`bz(+o/>8w(o5m#BZI&k0rO*nl~߾Z7{;:-]*DH2BhyK$ x*C {r4. >m/l͝Խq]QF]*0$ 4ҷ۽_5ڰ7glM#]&]W!|c5 Xjq*a tMÙ*ל(*Y=n Dzl}x,^,5\FH'ᨵ32|ȵ0V'%ǕFT =$0͙Z]X@34>I`T6JLVḨ/A & d0O;y_z,Pw}IcQvh]g#^KCۑKxFDPrjsLl(o/0ee>8e}Fprq,0Le h>iթDGı7pj) aU➜3 YNU:rMioZi1l!.y=+#B6c5L]f>gPP&ɫPHŘ]A}1Iul4F!_PY~7Bń6;t"n[W柶j%(:[_!!fr#/6*BFi2/ΖM P]bID.O\hfĦ1h&.QT8m sX|S#?@B8 '3w A2ћ$3N+ `'_.$Wu8ط]VFܵd3&םo4K[yh%CDe9K."˔ĭ޶u0{2?nf |Ug{ᅵ'bzGL1l,~d֤Q1BPA3b:tg02nr#<h[2{=LrE@\ya,j;ZxV˭]qr( ػ-\9'I}dPPDp PC9b\Wh1'դkțkykbbz<VpwNs"5CO!b[A|Cg9\?_7߄ 5:(a{dM,Fٰn.K}Xq[f#<ؗ%$;?T лAYߗY[78Շv{ <2HI}viuSחGe8k!ۊƐ):QiKgF}d̼I/VXm^٪=K*afޅЬ e-VM~Z8\+a:,\(׆` bKh5;z,|Tg Eߪh`&2qɻt\[D঴(^ Da0P!FD`_@Cx'nE-pcr f|&7O^1{sWӻ'pFirþZE+Q\ =I*P&wkH40lf>` ?񇂀GW͛Yg2J*波WﲈwtWXz.ЌwF'37yq5RK.rU$2\of'}63ʓR?v/I׷tup-Գ{"-oK"`* +PV=D"gKXAua,v7PA)Hا#sI`\lBiMDW)`/Y(A3'`xp JLYbKq$` aSd%*Ͳ4:6I(hOZuC/5SZT' ]ǞF=g8:FB/)܋q_ l4GE;}?h[ԉz,${SȄ v )*՝;nڵg%ZC6!/ʌs;$;Eec@A~F'i:P@ߺ|8v<וpAR6ʼ. uy(yMٯj淗P3u>>Ll0~ ψ _;MR87 ET~ ;wLp5@B6tPw+v!C/#eζXّs RO<;YjL bo{o7NqW' AezOÎīyV_Iy^l2C8[ȷ(NT%OpH_Dk?o9͕!7ŲqZx&M3kRg~2ݍ'=C8$O(5$Æ,B5\iو6Nc&hZLM9Mv=8gc}>> N ?`ځh*cjZnjAP7\Hķ>^i:7A?.n יk!B>%AJE fy>jJnzɂE ~uݎrBb:Jlm/F4 Y@aUZv4ʝonڍj4>FHj0T{B*%٤<^z [Gwz$3}2m>Zsz +22qz^땪wZ qcFIoH{&>3BV";Q=.ާw6ضW8%6ۉѣ崏䱝5n,yۡ!z%*[݌](H%B?OJSIto]nfO^h8Y!?wA~wnXY+oi5 Zw@",Y/ ǸfH , {0? %1wZڂn,߭+@jc|N/4)hb,-t@}D@cǀ: ݈OX KD"z 䧺='lV +xcH6xkn?.ii(ـWg^* k+cl7I[TYIAFe@Ok]02ϊBL6 54kr8=g$g H͠bzǵK؂5?%0qDCJ};ݭeXB,GJ gD& d(^\@ Qb:|ҢF%PڶBz;KvL12X.`XQf9c›= c2_ 24iZd%p5SfP"X J084%ݿ'8e,%=%UJ Y꾶Uj}xK0o;h0suPj1Nkvk>1:TGYSi7NMCefXIbYIDE `C\_?U7볔 i?̓';Dž=(ȼ?v)X z-[⻗B Ccz y6BMZ>8Rb\ h%k{޳Rgl!AX =qYW)9Lti0eؕf6!&[Dy֕*GqQd8 E쟁ʺ4E񠣉r?Ŭrw"UOn5< ؖ{>eK'yu?"cc4~ o(;/q-4m NyXw1~=+nj6#,֧*̾*Fp!J; s&Z7p]C!^H=9bW-ހago\HrO%P[qz},dMO -y*Aкi΄+{*ȏɷjM%)3[79n_d,L._5 w~(8_\MAz|*Ɨ>Vdr1O35QلoJCnn87O\Hb,=iԾl,֪Nu;|M`7!';|ػ~ӑ*TKUrga}ȴoX`n>B_i7Bg!iL;Xܘ}4wN06hb%TmKMSfbʣ DjT%rj<43mYxם'/m(Y der7'@,cVItAhgb*I?tMV`ww>W \jM%Q@ .uD/;lWFUسv$.1q`Z5_r7{XWzK7+g$8~#wO1;/Cjgwop;L ЬUx&ڤV/w phdXөG@Qf YN h=}MRpdFxC$*pgEE!SK9LT ꔚB$m" $Z| 2;ʄO*N'fwGc^k5[J}JطYQlb%FTJLp NT#ii4s.?37Z}yrE"8p H>ef2z1^GDPZNS?RowRin( X3Vp`2GjP&)- Y 3Yx(2evP`='iL^õحu MRs9(X՛[6=V9 YpPLZ$vdz=&?IӮM^a,! Og0D.y`Ϳd/{2"AH&k(/|b# KԮܬ2B>r8i0xpʥښMS!o"2AGǑ碧#*mM;ԛ5/a2UIAQ{\WǿE%t?,OWz1;fba<7/{#hp{ĺ(ӸFYk /Pzg_49hgw3eB|[5S•ֽCYn:YT:*L$YD0x]A8N/ 12ـOy=dR=怒>c&FXB)SC8H(ك b5-`"ܹŸ'*EҎCzZDN^6{:XQ%N}(r6P4xl)Utޞ[W#,֏n6ٟ3Jƪ`$v 4[<iOf峟ۺudrf=NaK6UTVH;'/0Y[رmž;q^O;r 1ONIk˕!yܪs4AX=x$3hi esJɴԷUT"ŖxL%D[)F>`CAUȧ(_z~㠹aL2RaU .[w|b׃ huUT y{ 8&DH=ZHw;S2w|+gH084[#bm+kxa j=cL!4Fz 1_"3\'|b (ybA08z\z[B4AX>ڝ)Jb,"d{[T/&^.ǒڋmJql`ab^ف[HK-](%nr8+_@ 1tTR H-%Ʀz3Y B<`ih<厘=fkit;C1,{EB/Ȁov^[̘!e"5]ar E%ݻ.HcJc9`/dkEpo4]qxHđAcTbnfl 4CSYv,4+DÒݭ\4y7nkQH ;ju94͓_4 p-(8a-*XߩD X=VV((R"@_$|y5KkJݴj5{jj`@?Ғ첫5!t:gPrrKG'P. ÿ3e lz%@c"Ti3avBS qv*fKXj6_S} MeX_r_i|Pm51l6AuDf~@c}uL50e}dݩ"$Qz׶7|>#U1"q&RZt&\qR5 K*nٛl*xlS1WҠ&LRJeN1)y Yx"7&5IMځɭap'-g 4/+9,mp" M߷ZjUu.7j6K;r ]?pMˮ([eohPFgGwA7u-MMWw2 ~OnϢӂ^R4Dl%%p9xcbpfNpZ0@ _^`p"U 꼷cZM?FVՉʳ/ bUŸ?1#x/ HO mH{p Mf*Ǽ(g:3 f7$34cAȲ\8_?:J9uԪPw ں==~zt}~Cg`Zw~:i֐-Y}K{)(Eהod$;]Ǎ3ڙHhy$H͖߁ 框 ئSGBP\(Щx$N2Y2zDQDF%gjPjVv.dޏEǦi邯B'%:AnB-~>_:Oba=z[ XƆsdzݾē:4][Šo*u|_7#b|&;\J՟0q64ձ[vV۪ -BP9WR|lXT71QoP B~iFrSpKS;~8- JAXMbfSl4ցہY"\<ls^f-C7~WBXm Hߡ1|˥ކ vffVsA} 2=b/v9fbdb7&ݯ8~ieC:-ҥaZ GD[J63,%t3Uͮ(ˀw#tZ(w,jwRJgyUk郜oiS_e +0naϏFߙks`sY*'&kDYyL/Mq-s$آ'Ϧ LL5d=:*ɐ=dW"83z۸+9b)!QC\G^FD\*ѦzG%&q"|>rIwI4C+^rKaAVkJ#F<14j/v[ !{W']NԼ*M㫢G[~!Sl}5z. 6f+531-\3>uC ʃQ,ˆxp|d3֪e\E8/Kš[N#_;.M18OmdsT0Kd)#:QPh `i)28TeS-K.}W(8V  WdI_(~aOXX\}CnPu "E@WF`..!^Uk&Zv|цpԥ% "w;u>]eTﴢMv9 9͵1zhOъ&K[,1ub{ ju,8p ①zӐ}N`BG*[)yD]q0i<<2I:ߔ*Vsbsfj#'ũm ]UW4@i7@,0A1~k"fa:;h5MAG4e%D%W^&EHxDtw2+Uqv(c&vmv&Kѽtcʿ'SWn D()&E_/1vUz xP5y2mx_M,>1$[7z_+hS L֖.i_Q]-+JNk\8li*4ܺ;ꦃ#>LC7\=[q<]سMJ ޚKh,h ;J#H=L\U6.;F:2Z] 1.顓})šBp}'a\o%#r?6p.Yn9~!LmyzC wGxE,lsۃt:_g='Eutg<m~)Sw(j|RTRr~:Ǽws7h3{UoBL8[KH_-#D*mC?Uq-J hk>v)WOBkZ]TW֬Cy>1)?kE%*k"8-|YlC޶2c=~z8>`j~ٜв8뵯%[9WPKv\mmVb ɼbL=\b0oQZ!*=ky֤3vxX#{#ݧbتUP<0 =)I85#ێ8"[U*ZT6@/8v^͋#VPϧZZCR;jvTl&"}v QR)D()\~?1kY6Zse"8,%kQf6ۻU1UV]#`@WCc~~ZgIۖ\VB'FK^\NC g6+|@ k?]…/yNfE#H+l[q$l2QpY`c}g&M-T9*\S%qX :s`O8 M.AHWTT[0˴ǒVPhj=nR{6iʄ JRo0]JT)T50OBw̓}+No$™͝b'M>ADHiĨU?_6 9g mg'^cҧ~l<  w`M?\lA4:fj2]SWUO4ӘS8V I_*2FY;m|w~'n(\# QЫѥ 2vATKjMՁv,9wCT*-k0d2JGIڜ'9j%qCqVNPi.QR 굑9A`E\|lm҃9s'go"vSP5 ,1 3YASYL&?e(5S6LR{:Ж`i[ED$.6_ԹYiLsٵICpmC3IW:jh(2jE"<)c;bXGLHh4=!w<е} dQÓ82Q79+s6BWR@3i7DIUG~z&?l`&:ӯ&M9ܲ(!.z64+DJn<=Sm֣( f昏F z4]uj+8qxT[@J_V 8" *<DC*ʫA@0*D$kV𯏎 !ijy^oh{o$#*-#_?Ϲ``SHbTx@CC-W yg]JƩSzfy5xP2fs Zb_SL ^rV[P1v5(vM.>sH?147lMzpL IQT(`@`LO䌆{:j! "_ _>ۃeEI3!B7ž譣zyʗh>1R$ㄛJŸ!AdWk> @ t"ްU(W2-U49BPa 8׎rem7/PzL/@JM{5F^0 Vte$4Su:C 1$ZfD{S EpRLV!׉=I;?f#)SR݁ET"8kT[`&d*b/Z2U= tU}U!Y㩶$&A9f$1e6;Ms] AM T^w} 85y*q[J A~!2F^42?5"c)oɩ4CL6k[+pÒ(Pn# dݐ@q@@p97A8*t@&dE$]4SF؂I>-gK>.Wt4p߀8̗͌"O' jS֊?S.Y[ BժUL"3H .[ٷh~G!7;e;T|McK3M?zrΏ5M ̧%rKdc<udyEc 'wo¬ҝ 1FAL-&rN[8AE>1U0(48t@"d<=kmV-DٓBEuֈTz1p> Ik̠q!gS&N =2c~5dfoKy.nl+olU c>pwC` yE`mL Ttb+4RL[ו_|m i}_fadP埥:ja]E   XހbA$v^wԏ◡`vD68J lKoUs<(mZEWN~SzY 咷U jZ$?D{pk:)K=Gkμ :8x MfňjJ+ug W9F,6Sx?1V8+{"P ڃO-hG27Vٲ[t'NA+"c 9-P1Smy")L54djX EMVjL݃V*^Zػ~HUkS_$1=:e޷HFuRZaC\c8CQĔ8 $C%3BG-x둗jq |o/ zC>"]Lni.ЬY$[2?_`^Vd^ҷx?rQ~] 6#痙ÒIR>gO XFo'hŭ#uLJ̉q&ʾ&n#N|9x[?.Sp;,dn Yl ]qKwS~ERQxQ:~| HAD¹G߹4%@Gsh]J6K>/>2ɸqݻ'B_xjo2 Ģ~jCbsOY<D *%F ?Ta[Mo(VBB??}η{z]ŧ}Q4&)P!>!’"eT@muK 36;I`M'iN#6WbDOkTsUe4"tUo;E ܗ~0sq- U_u7JOvZ (^>JWI 5ַsBL Q d g2TwR}yqaܵL_9Umן%*=fT$n<Bc@2O+|eM#3‚};2Rg7S7R_jnБ?~tvuӒw~4y!{;c%$MPme(řS6'P#AIu<$ģGhx28+whvL 6ɭ|9y=GJ6@_ŏ8S ̡Xp pAMгWnE@uk;&0x8Eucd鄓=<&(?%I`} W0=ptrNFc|j_1?O<,pBRR/,%.y0<E.J?^V4jxLJr,h.6<~ʮ!>|r~~" 2x˸~jj۹fRRuF_cRU=#j'P{~0ih[vI޻ChdU-ݞDoBN66#8+G,*QFM YnпE&  {&7\~uA 5Ҽv2ұjo\Ge>א{ @Zf"eY@K$#g׌Y̰V.pShPZA +4?xy>s&ʈ(Οm!;ņmplл?sʫțѬ?W[)ssaa!rUniOPe+M+9nL 2Ul0 >yHfÁqd=z~~yFhWٺ'n0nt˛,^ :ZF<˙ S4"=աoEӇ"#@B!3إlmUaNf!5q$cs&ɡX5;eÍߌw7~{b鱒 ^ͥ#>xi,?$a>"z)\aDBIL%9far9'H@PWvKL툈 iYFݽ` 5o']O/#je B5(P{y"0{MсShYWOj!w~b>o4om5B4RG޴fG' f$ H(6$c>yҔ]jJiu";d>YOCo|}W $:AYEb/)yվ ̷ǾOr3|\+\еk43=nTtk}B}271WK^q*N©:/cȏN%TLNK0^g&Y%'R $r +e o*3T6Ϊ8.9P 4cR}CiA|vua+VWķ.?% q AzfZ;9R M_]m`n2C&FB7E `]ad ~]}o'icQN{GQ#'h6)JZQ~})Owc*dlB/XYߣ](<(T^ɢ<һyzٟZ Bo;ɡp:'1^zŮM $=#Q`*Bz|qo`F͵eb'}l%6r^UAݳy;!ң4p_6>|ԇ0jEQוp X OT\5f7ن )ctN)v- ŨB݋w;+%dQ9DW)Ap砧pf5%80Hh.xN "3kq(%fb-ٙeKad)4bIp=̧˩#1.f6,9.` ozUM2tbPPYZ[:M 6EÌ0V喢|A/En̛@wHNK}q[EYW̒Ui$R a_H9`]H bXxo]I9YxE ) "l8A{5ͺVAW5'. !ro^[gHmHC G6.n  #qD,;pVIQN@$OhUBLx39j)W$'wy3_%ewHs~ˡoP~^I˩zW/%a9C^POdAtꭋi6 =a!Wg=Vr;fzGu&Ì$jYkGEk$a9d!j3КWF0M0t]?9 YcIH@$zB%Ӯmi>0II_J&52 ^rְgA6f ΚJg3KRB[a1c)-pj$ceYɫHM?Ƞ=Ql;eW^'9 < >{]LX r2r#~ZXs3SB Q S*s>b9UҟH<Wß8Q!!rfPDI ] i,+Jclon5#C_ n<H6!2ϣB5F>[.3}[=f~nTIt@io p-|m0愹|-`n=,}?nReM:p]Z Sd ?uC0κ , >A8[(~kwfvp<l۽INcIRk8 O"FU%?G7nڜ~.CW(]3T?iKlgd$ Nۜfwͤ͊@w"בZe:+$07\kiFf拖ڇYc9]֥nK51NT$t_5%p 31sMmUۊr;3}gw '}^w{9Xplba+/Y3;I|ك(,?pCLuXYuq^&gCnbYZ4H]nPxN+sx+_@"of,mހU8q\IqhN~C;0u;ˏ53u_nyANMDŽM0: y?:z*w@~]NJA .@R _bu~ Ո 1JH(.5O ;Z郻X?I>FJCxndeк.rm^g^e X\t@Z+dDJD^ (Gu^N=}S:wZ_q/)dk~aC^v@0ȫ `lACƙ_Rp:f;5U! n'&2{D ^El,~!4 _{. 5 X-,:-(hf_ɸa-A;WK㨷U@`qu&IY]_3Q\ xWqFH}IBQ w(ńEGdR2 ob?I)+ܚyO:5?yAxߘ @xbGPYyלs-4b!uUeZ>?\S<r8jۜt__k.QU .-5B*jW8gImHyMti˧ȖF~CzW7g6PABih؝Yؑ ~<YzƢH#/MqzZzfFB;.Z`)kpS*g.ƒ48l[!Sr@6^\F E.kG8 o5f?flnMꢲ3V|v:p'[Rp;m]G= 1J̼Rv+isd'y6×?zqoۊ_[Ee~@;*;1h*ZiPV.n*jNg|}4z/}8)3@sBit0L|œƚ2zoc-EvEMt/as"3M,*̀@ŧ $!Nn|)X#y+ܶc0$e4\7>;f`X )b>¾ܞQ Ԓ)kMRX^10 aU7+H'mp~ds `A-{#qlfr}~럇&=3$ ȭbdݚSW`8:kkQLJWHk.5% X ;XȌ S`<^ <=~ʥLJvRW{,{Rrwtҕ2Bk[ca;!ED4%K YAk&r?=MkU$`?*/ѼG,%T;3>5[d21"U q,ɂ{*bW:-T@mMN) Bߋ{z;HsU!u7lGOnd/ù rMs]h[\Jn BWd-s8_pv$Zo:U.Z rOC(yyU zCI8^"c63"+'o>i֦{Ġ;m9@g< oSA&Jfqw8(7rJǛk</ <O'&$@:]Fo7q%I,T~0iv1ǡՉWeuvq$O(+WA~iQ!) C-}[Vl>\ Wh{c ; Ӄ(]%B\TMQx=$ɔ.̨5erGiuklwCMZ͗0%B=A!.y7a"k2^Z.#1!!ӏ(,gr6DU;7U)0Edyve>FSYк!Fw%&ctutlVѮit("֤ig)wUW]P{~,9lӱ)lD)w7 'eK`XIwQ,̚xߜ{}9cJ[BS.ؤ׾e JSL^>Nf|70{EB]r_t)#gHHnq ;{DvF 2F#n!ghqJ^7"R?IĀ7B 4ʫ8H/9̔ѩX 1sз6ӱv5gC2 ]4C\v|_:(vE}gTmYbc:L;n7w"OkTUmˤ\TeM(|1& )ߧODҌ$i)fkYX`wJ/ x„P 9@7k KJ)./VЯ"ΑH;izf s1sByS8W+tg0ܲ3F}U8Wُ–'?Mwz2|u'mR ?LOuHΠoDu'I >^^IDڷ*Dms (۾r4qܴFUJ <|8x΋vd'?r4c.zz=t+_~H%E"Z K@Pp0F$(b}9iŁר5vJd|;R [%,I4(_ "ݹK{28~ D~Rh*bب[JVFC7sE@2Wu#>mS Pkm/ ,oŢic㌺-N% rq>9ſ{k~j.R)Wְ[*mY0mSߡJs1§3rZy?u*]} (_}71v<#5jJVyX6+yg}](!ޗѩPu7)yWNwE/W6ќ$s6X{`S\g\bm+_lIMplZNW24ƹCoI2w~.vY?%U\Y fCM: \S7,rKz%6PX{͊ew=+kn;AA*"9 |["Zխ2Blqm4(xZR˰:Nakۘ-:Fd9r wE*`1B:d v =?}(r,x?߶7Wė^ RV$(yJvm2@EsѳpˬXA[/+XGvyIAR~3ڽu2z3f8+k(qxM6}빼_Dt1L&Np Eo&aa+V+י{ч5du6vE˳uŊإ9ӂμsUfTiBDPZ mq-PJ$n%^قsDU)tp<Q;"|ܕ 3 J#a"Q3L Y؋vrhmfJSs'EwCT)PteHGtͨͤ׬3EbTV*[ DL?T^=$SMewc0nPĠG} rK-*ry(^(D|ֈ{ {zL 'i쫄;{w\س## 8},`<^%3W7jnl7Ǜl+opIV~19$5%)B0H1}hLT}_yĄvx}qYU2In'hExsezHn"?~|r]@{]#80 *G_ z͊*Ϧ|+%Xd͒~JU0`/ wJ|@<]KA\W =3g(-i.(*A-ݛ_D+[ pdW= J4pXI>bG-u(c,LACO?L0X ,sw`q7&23kI6%Κ.hg?zdH\v ]ZR^»߶R3_Tuȹ.^`vO)I3ʒրPqMy>]K+68-2(7/ĨE"nm=`QGI::5G=[Ns-/hd`Djjɟ"d~3V+D \, ./5?3 ؑ yaġdioРm.5#*57u`TUȹ-iu8S&AP v 쪣*p7{m%6x R=: OApOYq] 1~i:b &aJ$` `ȳ׿&Ƃ.ǡ ( Jp;/O)uIjhtS%u5LGGR{ԀH7&nEbVؽBxq/\ qr↪R}NLvV%H2!0 sp}DŽdhTK3U{9aHdʥe6sa 4JR=h'ػ/bM|.z~|Bx2X^#">Q#uy^~WXF" B}]6;L}U#Iqg%{Laj9Ut| *Ymx~کv{r&^O_+L|,^`7f:i ;l lc)e/ Ņ@Y^3|^ ~uEH [9zl6 +/uNi$VKb ~닕._ۡ} raAr::]Qn۸?n%[yL^Ld,Y>qޑ,NV,~ߎ^`b'!SLq6%Dzd?Hl3?@Q\ZS=RʿxP윎#tN`P6:P7]+g"0&`:\>JNL'"1OUB?^K+P<ޟ/4Z(N]qP4ħ#x8rNr,:m:f*'6,K7׍toɰo @M<[52„glDz=KuqTpAh;ݹ(D7ѐ%qz< ^XEHqwosZv-|yD R$Sva5~ -ΨC&'l}y[tFv5hzwx;ʠI8i>y (XrcyԜAW_#[,9wP&&}%=%\ 8-/p&܇ro:|f+ap;J<:Ek (Dy9HAj5OKTǁ>B~j+z>2g)?G&\;EBjVi5 ӉM s_G ?s 9jH!m ju>[ 7Mn‰ %>vunݗS #Fi1.d?ȥ ]郔3"5rUȓi!HF(rCy#q *Ol4;aj2Z8Nw389IQciJSSؠV DO3J Vi'* שK T)@fgVoN{k@.p".Jv瀘tiIufWB,wLziV=| a-wWb W"6yOT){ߠ-(PSU!]l# fw/A 'j r\$HCZY a9 ?}jcΕ@Ϊ>,A<= |p'&'Ucdn ;]߻X6F!lm=o?bL ܴK\1lH֡kz.̊5~D,0ȳ-Fg,c#Y| Bِ+i9TcR n7p;xB70έ~_čWr2ѮQs9/K|WFb2gh5mnv3~#sMv(K߿Tma! -C5X,8E~ *Lśb3xrȅwíίDXg i:9av.0|ӷۍT&e&0J) pnD1*)'f  Xt)OYDdYeY9[#_.,?f6pMfX@ ؘgayƸw V{DA'9(&7ɭxG1Hq9D>A h'HvGԬah(eޭ0ſ-_ 9ʑzM&^|ԕm}L7/]Mãc8(F`짰{`&n62V,2lQrəy[urq{K~ugZqH9I@4{[ *PoC&cTKR0#;/d;`(; !럍p}ݐF3RfouxTY$I;W恧oe0ȁ@%r؈E w_ )PLdw$#dXU105Kg>IVrbf` w9Nh%VR'ĠI+(W:RQH,K鳉 ?,iNtM07p=i|[0xp- gM;K&_iD:7C@ab,p:-nLD\|v<5;b*wYIlɹ1@F)<*/ ԗIcSӣ>3 u ([V8>ޤ LJO1lTtWgq˛f^w寕ʜX;k*MH}jiu+r۠Ú: 㢊}SeRV+ɳo\9ӓƮ"E['a AX\N&ˌASԒ ]# ngGNc99eeXYm;rOb2@쑳2r6nLxۍ& )e9 M6U~D.ȝ=qܶFTm֥lbUƎYzi$3{];dOl澈4>[*((:9U6"ۢ*6Rk9dȺy"I}`[HSHij^Q6!N`h) oL$Կ}[w6HET5MDyWʶCVd } "FH 1wV#A!\2kONܚg[gxNMBhbFFɑs;T# Pҍ1vɞ'9WJS Lewn 峣jqϤ/1,c$DfW[-nӡ7N@b0> _|`REAfij݌u\c A0< b/ڢ lpp}cxFifaLfPTH4MT`*/(9=ĈuRU hliǾ"75n a WIuQ1j3 Ey>,S8 cs"4Ż1Dˣk56uH9((f!6ZKP  +C\2NN[gn诤Qq_v/c13ZGxkuQ>Mq'SϞǀ~e`|nJGYji@=+Ѿ{i'}wmc>ܘDr]lz^ &]Mn{i3p$T 31{^5cFR!PYAWW1\NZ쏼u#٦+Dj3ogJꢖWbZ)Ӡ#`7f-`uD96ߑ OcWw銨}* N(\9TFm Yw!#ZsK͗Om с 0XxجI߮ Ajal RY IO~q_u^8.R: 6dyw!HO`)7zd*8>8Z=_dS*QsAdq/E9ӰaB}(F p{ N._%0D ߑO F 94Rzf')-ۧ!u _C+^`}7FT%&ަ&êcϾiL#޳Lbnv:7T ( YC[@*Kʌtnxls]<>&SrP0)U'}.!К&n¼1Nc(d_ ji ǧNG8Imoƒʦ-{c*]yTcfђz#g,ި*ѹ}KJOjko೔>Wb\sM_OJ4xaz^Oֲ :8:Tp x)iD08jOÊy3PX ExZBAw)/MkǾGXI7sMY=ַn';C4s<uvybIGXdm TB[^O#eC3Y @nKjH⌱JEwUkA8.qQd-x%TYt3 'ח׹ksYyiKumjc0;Wd|l"%L 64I+p_僱jIS: ˍ`VEܥY|+IWgܺ2w)% qV ֡;b3E|ԯX"ϰtEjؾ/ uauϙG8w*Pϻy'"wA"XИ)0y8ٰЗHv>GcvUgMD~G.`W/X{CF@`7Xd5=2,-qHݗC0͚#i-,`j@?U_ &WyQ=mdFtc eBoЛg}˭IzFbG,<r:T|*E.*vͬ{ag(42co-YcӸ%wۥ]p/"ͮ7IEmm0Jpg1/oL֢,*&܀fב hw^#3zY\Yh&ŵŒ$&Lpm+-v,28r9"Cx"!@TװzR:Jj ,{[\Z7)FqC$yw(ɟ|yS`-1Sc.Ơ CZ" >;3@6 Q^+ $R;H ?!ye:tH p!B7<ņa@/Ϡ9g#ȕU׻\e`\ZɴPJ3XhO]'RiC;.yIkukf1㢑=+)ۡ@{3by4x(Dn_?;(E/{Ӕn93yL K$rwm^7͝z>̠ x~2ƄRsPpd ]+9AP쇴t92}z559֨[?CJpᬒ0)ZBoS^\p=[N^l^uW2ۗ[9ԏ!k9@"0lhF\%D j лzFV|eӦ>C2"ne}xtsѯ+!F]_|] }(ނ'BSI3fv+F>1e0Ɵ9E,2 dK{ފ4 ``+׀v= /mHu4!ԾwAj$P^g>qXQ1eacsdU-ROͱ!Li-MekK;!c\X /NA^j(ifÄږ9XvUOj+t` Mӓ0L ?BA23!RLOmo#S/(?dmw|:+Z:P).e]s1Z^ߓaй4DEv̾E%D^ *%D:DE$jZ[4^/쯁-~_(\͚6j{WmedB{x$>NQ4#Hgiz&{,[;4/+ =,,Wud{j @S#^s5P}r~.Z$g&mRlq\0](q1m>o?6YQ?4bu]bUu!"SjiNi LE $A˶ ! |-^)()}ԒϘQn+}RWN}4&% +_J\tkh_{;V5|xFTJYnH2uFmCB>8lUO "eKwfJœ=b0YJ2$F(юUFoD2ֈ--OI,aUP߆'*L! 3:iQEX4w@>bQGm#^ I\͏~.&(2dktXʈ 5<("Z Z1Cц]es^K_M.>9bHM&KRaWPθZ\;Ywx7M|sqBg!` $yUa,xOcqqƀ5QB$kt02`g~%Y-LTC FN%͂waʳ⁤2 F෧jpaP/|CCx2Ҿo g'qYƵ0-U&era]-fqtq?mU,hqBb?h=QbF8(3Οl/ƤfP[N>HT"5"EU ߏS_{g>:ʁPRzN%Zqyz` hlU$<&&픺 ԗ^PǸU깯n(:z(@FxDt!`G+kUhU;$T+:JGPW GY?r;+;OI_91;_Rm+r?w,gݛ$[iVUoN@&`\v.R}(:/6Pνk /LɌ[aet/o˶U"4!_v-y]p1MRe ,~Ohw ʊ/Դf@",-Wj:i3c5> +rYDl#݋SEeh걤nPXͩ{>b,*ɞpMA mpBP?K"~ [ _þ[޵{sȊPk=5?D(lu&w]s30.Ǖ[{c^q׌|Ieb#WY>N^@/~2זTNtM;#`{u|Hz8#gW/yqx*ASm?@6c } s(!b`[Դk衪?GzzG?ҡF^up JsM*S?jV`t +){ jKϙ;,tXC@kw3"6c-^ C;&:,孒#*RGTv؊&k- n%hCa"^(H:XVi@6["@4~%R'\KSB\C'63~ YeY8`W,CAؤʕh;3lQNg;vMqt O]<.aWX1+eX R0[;4@ uTCe )fi\:c23UͳhI/Uf>ég ,KY/zHvӾ D%q4f+M@AiBP}Լ05 v@;1lU=u8J7w]lkqݜUP\g-<>5Kfmd5XDS' bsH?_JJrqsZW`Zv^Q Gȧģ>hSЁ4rA^HkbU,mv#Ϥ(cпlDsܓ>8m?O֘2>'\DrSSXep?+n(Rbq9(WMI > Kar >Vn5p=nD!j18-ՠ#jU=)Ck8J|MHHQ5TggHUdi@5H$ka8zdul `D%4ZVv>D͖>$d2`Z4S(rA&-\+>3}ز @KpJЪ2ʴ-a4ɲ{%^Iha SUB[M3 H/1Tתp9 oaW?6ٽ|{5g#f:.{,ӈ쩝AfCtTF'%/f[f" D Ю4}Kd=,"@Q,Nu]Dq՟2ykz̥jT́nZx$d\d]90>C:5NpD8UteC2fZ~g/1Q3Ŭ J2z9GÈΫ Z؁[/sMTɾ Mʂrb(}[W?bBhfZ=G\dJ݃xSNR  h݌9)E~CKtʼ$!@#RF|c,BKL_wg2g`t֑%L .LQgwB='FLVl\cdBO!`tsqokJS쀝x2bS(=Gf kSfF1+Ԫ6 .9y*ՓDR?ݍ4RlOSeocKAfR:!문22JAIջ*1T-7f~-$zs{(֩!l #fi|e|KO:j /|;wᛓ̣@(qrdp QpJpzћ`.q+!{1Vxg4v."I<tt̎#\hą_{4P퇪flmo֎N!BhT btyYnc'}ZkzEa_`|M2r\!kf`:QE3eǸ^kgīmgxKa0OɗHE=.a-nʢ竽/T>j`(VǟvSo))uMXv|9Z:ණU+T$dSLaMo+ᯯxl 0'[! OjGNAk㤇F{)ҜQ}v &4˅蹪it yjŰ24A8-t_9ڑ.H2]f57IHOOLw<`(P!ťiCsD4u6UަhI-Fpe@i6/ܾ,9WC_g1e-~xR%.i8O*%R5jfbw.OGHG)6Y? ݄?6g!©X#[D mN`Rm!rFU Rpm5*%|<MȊ%#Got5~ڲ;j_(h+sKO[fe'!JMgD8k cf}=Ns2ja,s8{ =ZRdK4KP4xjv'(cD/'yǰXnCdTeu SB3>vZ0"9Qcs`ri`E:6 1w>!ta6C-_r[YՔ j,(.7d/4j sh1IiƛZepO(CʷB_N=W<%K=eNӣP@!!)YmQ nnkdz CR_F,7KNΫۿJgHlVy`90tu k!#OYl7{V+4k]:I-'vKuj.,C4(FY s` MxLJ*Y7_u">J?_6LNMl(B t`>Sn .jo[9!D"$))a4)N[as?IvRWP|@ضH è:ω|ڑ' 5qUZ{+ZۈH6Yՙ{=6.5=?i -ZLLd(i0i+GBo=.ښSn+K`4.mAe6dx?GzQ4}bT!a# S{X.mu֒ܯO.ju Rŷtp^FRkCw<'4u)6_%cq { #U5rHzg>  I+uNIA"ݣC];U[__\BPAеlHE~cޮA|wb MQ~U:G-bƘirN^0GⴈU-6t+ߘHlqE/޼)/mv#,H^>jߴld_ MZ&;Y=iaW QgTp <- '@)sIc!%\a2z%XJtrG^< oX{fLJ2w}G]iJPB&JW m*kC:k\ѭD,]ltyb"6zo{^j~l {RԷ{ITqVg;e;s 9>ώ?|ٚei_!'C^F.eǴiU 4tEhj0b<_Ils8#"x~H(o29b:)|!pFK\ӛFdEzHBr=Hgk]oGT3cљ Լjh g8G&}@L]uR o{)?ԗA0*j'`\5%ߤ>mLB:bc +¯e֩9oɞb JtL# N%@h 0]]Q6Gj).6kS7 Ւ+ OK֚( oTGZf+0'7 XW㹾TxYD|!fQ!:2}zWEE(,Ylfe<|ۧvInv;P4;8yqWҸQ05,O} )1CJaMl_?z016o`4W5CEm"f.NzgKYtG)%qUt_2u, 7^!EjnH/-IWVѮy+!2u4yu=zvx =z~jv֪o%Z);{xVj Λs汗ᗶS@_%!Rl…p{ lDTm1xȣvm`{s~x/capInEc̻vnY ԎLu+5_;O*1O8rkJӄJ"r }l !s Ѳ@G  Jjm3Sf%8-iG& i`LIoDLC&?횭 U{:! \zX+4Q@d)~I"~[K6ZdD%K݋MdT`c5vx-N2uԢ96>(0y=|mڃs'u/[>GuKMtS#w0> ;?.vNW&I!?iWH5k-qz Za>0dfz0Gkj\^ﮯn](4\&_4"$F4pa7lA}un=% *`ގQ48pWLVBJmnI9l-9e/":@Pr`51!Ӡ@dqO:W^wSá!ҰY g $ f& hghw@1JQX@ND%h5Q2 rT0}(cuMW<ؒS4nH?G/DhX?̸>$z\ ,+O$-ϫT{رNg/<]h XRMt"hTjx%R*V! }B I+P kZ@Z$<˧xu^7r/ KWw05iM~P_燮rkB H 0G[0ߨƤn1%|v@;L̻)ϲmLv"ھgNS~q/=Cvn*.SΙm`4eR'E=ٛb]] oΦkiU]cK0$kw}m k1x ^Wܸ( 솠T.Vg`U_~jLxoK~_ h˿V`*5yLL%4L~oMAWݙ; Fg~(_soϠU׺6۴P eEhJ)Y,Ԛ̎ Ǫ0L#I4G||C8E{׵>V䅘̖{V,qKAp6tκ\DžG! ki³Ud f=> xX%-g Ry5K$LZ -_($.J:rI؄0fN~Ի>q_8yԨ-lbNP(a]Pǭa]Dal4qBD:8Ꞥ>`7Si%˨Rǚ!!{DV4Z\%A$  MsX> {+waG~m҆bhQiH>B7m& GݡJX^g\Zx0+8!l0u6q[WEEi)6N!WjkjgVib%-@X~D]^迕.V%JMqE4W`-N PF QKY*ݩ?):0; +NܽEBe'3&f!QK8wO'slNkip#uHI؎?xK-rU3;Q t7SfTcn]P @R^4hOGĝPS.VZa[YbN6P)C."|Nt<) {,Pj1j ` }oGI~i9.¾.V`&*Ă!HQ2o7i,Nh̏!&VZ>^g$V(NdHxBX|![B( sOSرA mk]a{Ck4nsЪ6ۦq{2 N5-/W)T{-;$@ XZ .W,`يښ`%#N^OT{^IŸvm}iPl߽2PO/o6H(ȭlOJ٧6&ߜ:17~b +5 ". En+FD##@v7g g׉zvM],[y؟;!zBmS>!1Rul]ȀhfL쬃TF&֫%c4Um:GzN>Hdt<|K7&{8$dJoCT^iZ YBк$|YVлI~\4fi&NOE<^J'}KɶM>5&GF#i q]7\;KTGv$uV֖d{^& #m_T EE=LCӕE 0I}?>uCЙHH]|$F8iV%} 6_4K+n![+4sHubAAK$BϏđ$fUDlP_%34Snm\@ko.i_2^z5(r'nvjդq/̿7 RRjR>$ ntF꡷M\> 8cDEEB.ԠFI~ސpo إāz&,(EӼ=7+D=k6 \>2MtYJJAR&pRJ~`C^~>_6H3i̓x\_jq5yMwF-;}њAg4:m)cӇ7.q _BsMpMIٹ8Si=3VAa%jqo|8^ e3f+)!:q7tn0 ]i!M,!Υ v7*MW(5#ZBOf4FPcXG`m>cysu-ENOeȐ_~t|գ…h5دql5%:3,m69(Y:VSաte{TI#13?9t32ī-]K}D{|xYzc^5 eqnMp繣rJ+o+y2sNݾ67MtVѶ#Kse$+cߺINi#1<>'Ds&6ٟj'^wl- F&R6|W7Dשׂ?u?uPnƎ'M{i1H%c~b[Y!}Zn{/~о@qK`4Ji>HȲ?ީe0ʃYwѩ% 2J*Rq0KHJv.!FP_H2y= b \)g{/ lX{&'2X{8Aw4QA`x;etPm/6[ " ;#^vISR-K$ElлX4o8JFB%l!YL:7]p.;BmFޙ>^dUAUm+/Y.IxUfkZnO$c XHkÀQ3&'Ŷu%R95j'd[ LmKP%lx@cL{p#T4Vz2O;y>`8)P7e3܅)6}vXkxRs܃YlzOm麫d)E Ka"u*6-N1(aڈm͉2h<@Znc³_J_yVg$d&bLq_ЊoxcJrqtw ;!^nq_3gbZ.A7 x LJI#В kFAN[Mmf 7*Hf8Ʊm,s̴"ድd@rG1VS.A G#Ąx`"*;bKe;n`Kh"ndLmjz+hW`ٹc\%teZh(:_ob 0^ RogL 7f\'`@0c EMiO1*v.#c-vю j~yL^}n ,7;dÈ?>̈́m!ZZ3)ƈz]tk*PdPzhbPzJ™9b]S[:1A6ӛ!2JC-{&\*&W;ccE HTx8  A=McUIk=9x)FA3tz[oc-%:lh S*dk" 4Y 3I MVZŭS{z@Ȕ&sEPߚWzUP3"!+Tiϝ`qtDI"aq{p/g-rW,] JVɾ۱FE̍v2|"?_BȣH|/W: =̂ Т"fWgƱ] ۬2J?^{>W]6d+,K /5?i_ 9='4 qKwsu' ͲDa"?Hk\f(l S[hSަ!=ֵ+|-q ›i65؜U~h˕=Q|, .; 9 li w2œBQ`%7qxyRY嵀V"dڽ%>wW«8*\0$f0zVOeOř<]#=CxceD@Evvb|=' BPWŗSk$6E[4i [> CU :7P e_g[:LڦdH{߁tjfܶYk0yXD^\E.-#NB%O؏KS註 GL>6ϒwW4r``T?˃@st5OqpnenЄ }Exn%^L#} Ӕ~0Fv\a?dfDlj . 9udLQV  ion> $<@^{7'iIގ18c.S Eģ~7mZk0/F)1Oem _>6= ܰvjH 6d ]ۖ81qI1Fv)ot= {rn%4%ѬŸKPt!ei0f)%XN3ˡ[(ۈ/XQ32y qX. JMЪ~?Bwues[}IK83gUޒTӃ.-y¥) q:&qk.xJKm̼Xenr!E/#-k0qܱ?rf_DaD_ @ln_e-"Cb[ (Сg|Xg=6/5nk˹>Sp+52fHQ}]PbFpA .*JB.6.^v}$ lJ&@J^ e߈i.f,AlEG@wiEC4•hl3NT^^Rci5kĺjB~tS'<$xA8G?fe*Kit>jl^L'RhGd5z,(kK߰ ܪϣփ,aRJZ4^Gf;$GeCL4al>٦$8oP&Os5mdpڴ>tq9T\Nq.{+ӦOi.Q-Ԉt>֥y[Q> zLv#ԇjc|=4*S)8 @oaxhg#E|f˩ej]ܿp` ADeoLiDMAM Jgs TasXpi#.'l3#$s-HqH\oaܛ-E\]I9Gk|q;#[S5,MbV4u<CaKd#b>o|14Z ]=WbS&C7ZY߅Hp@Q2\ :2*~4Nx<Ljom;zdG&z j deR +J73 :Ec@X°m-oD~2l(mp~uʰsswWCHbEEO7Xt2[jQ:e#6r> '%òOi$wy\+aT)@bgV%h_-,9:diQ*ʄ׹p4T 7Qw{,~Qdxs}6=U#Nռ2EB;UxXlƯb)ЪDql@)vrP#\-[T/6z%aMN?@ヤ;ɄAC`bk l,FEz/pl>k"bjٷke2-"3h=a` b A!SD?*]h*ϔ=u.)67Us3; BK4J)VG= ~a͏^ ateLj gTk̤(9+w `m2ЖFLH]$/ۋ m{DŽY x(soX) IU?4D3<h|JoTMO\)0p,ҫ}`bѩJz \3j2gl<U|V @>߳eU"(4/1Y/Ϣ^3#z` ϩ JHb5wq\W,^ łO=e=F3 ג^4YS3"a;ġ!2b7wkUp߉i紛euFyatUd ]<~ 6@z8"80蘆$o#?g{ޚob GFh ~5ӃɌ3:Oeb-t>iEqRIL+{Ń/oEe܄ =TlFzQڀ4IZq*pitGbJR}0=y7^Db3V)STp#4^O̔SVHs>a f'գ*$~$L!zGLD$W("(R]8^Mʍb6cfKtpꙭyzoƴs!e:75n:Թ*]РL. {pɚ׈BɲfpZ8!k dp0VMPXh<=>o)O Z#$PHmH%_ѩGPb W'Eo `H WD.f`pّL4Eq\vKEk_P߈d'3 JD Jv>0}+5>6ɉmkS[UMUG`rgf m#TtJ-e-IX[W|FdȮ&M)^ \,`Q;I9 [cc8@_qC83' .hxmļAĪCaf YX'賦 HpbNpIaM4yT|8]ZuFVg`o+)%J` xR%Zg5g3=&g^@1%3z UVMoӴcCU3YpPY_a9}rO.VnhhR di^f-?!uxp." k)9Λy tc<üu3LSBQw0X0d)D=!t/ H]C->;@fC,Z"*Poq,ƧdK'%*הeb]zp Z9^-AmWx;I- _ 7\ "CC9قA*#눝DXLFr6N( 6=IoEs 1Z25,dXY̱-Rcd`PUJŘ^;ga-k5FHɇ8XW3jc[%&EkB$[8>e;B5CJPc;=5!OFջ8©#| 0ZZ)\#a&lYzXxLb>`l%Qty7{!*`2[iCnVppS0]>PTvk.*ɶ~m6:!h@2XSͬSUoLr3P$ް0J=3/׶ +^ezf5PJ&pH<1Z{aAoFu&];_bC>m cx&)ޛ!=ȅ>]7(52MtҦ-`E%,O!c~VM|z >8} |!>&ˀ7j-*Ezu6)Ov$ÆO}S6DZfK]ENI.XZ  r*=~ۣ={h_ j?U`h"pv Rht&1S^5c`;zqϢUxGHvZKR s'% AtzWάoeI3܇jrvV3Qئ\J2)k`PPq\g\# ty|@87E;z{ϲWb [mݢm[-gF,7xNmWJH6oҮP~X&.հ%ة***%&+О {?^{zKcBߢagU(G"eVQ/ l.8hJ#3J SРCeXp䤏r?Nt\]x&sX`Ʉpbo |Sd|p'dFGmR'$ HȺY%wp~>Wp F7<dD 5p*XvyS̊_p qz&E4x-LNSCa,"S97(SwƉ{[`1} 3M[yl.,3HD<,BX󵣁]s&pvNq dnOY(AYLӛmrqTѶtk䕜9".{ 1n>IZ48M 1%im\Īg-jް`HA0mYA`^(vI(}i4f~o hZ:uv:Xy7HRZ0>p115K#o'ARۤ<xz oPf©J7/Diځ M+P G6,.i9pU1jIFcQ 8a׆Z|fknfekyC0Klb: -CS㭷/VW"m ࠰ߩMU8w+« @<0h,o.V jxQn-NSyWD,yW^r`$WW6i7JF;ޠ5aDSo#+ >@&*\Ə>pA9u $\}M'&& ~.`ΊK|>wc I ; x~AeD;WEo  9 !}E3>񢅀#5,~+6&pld9*-kz2!jO-5zCK^M!1GNVY3T]4 @־+43V 42i+v'cdRy#&مgQu[&rw 65W)R+&zkk}NDǸ9c-jvu!9P3 ܙ鶄oܧ%4bQ >,٧8:i+`+zn=Y <.DyjIj`6f3㮜b>9i1k5f5SW^q9Y<ǘaqJ?(Յ:\Ե 3QvRD삙o:+a:W=s ,^q<<,dUv>dg|(Q{a&p=k1PKTbq\ul\Q @DsPxE &iiD6w +zX_ / P%:0VYl0w,e;|7¼9mx[ ;7N Mc OSj-'D1AV1l ,٢;UpAdŌeQZrf g Q:)(?[\`Fu;{t4uVQCd3~@ӧk9^ PevL&sX^;Stsp}=Ng[T~~w9'gmHMI=]pO3ܦ,\st}Pq1'-ëzmC' YGx;Z\PEls#5SΌF} x6bS"B @[4" x<Ue7W||/;!沆!y @+]#a%弮f40')m }o7AMV-r4мd=V>֬}0cWK!XZ/t "cAs6o t&&6v;oe⺢d..j$epO̧\yA7CvRK#$<(0i7Z=iߠK]&Vkuލe'"H$0{/Ao.ޠe:">˝b(% ;p?G:l# Ō6gf^d Ls47oFX@Ӛ ɦS=ʬ%&ؘ${=B&t!~g8nK|>GkXQ)Nzzl7l(ye]*V@ݘ U~4#Z1>+ ;T2vE .` c\}H %pJD4\HlF Rm_fm~baiDރZ}<*,&f&jd&뽽8R%l6pEr+$#%i(QgNCbkRjqEkj3k(%E,L]]Z'#*+X\k!֢>w7ra#A8Ҝpd {0PWNiɫjM8n'.(ȘB%vSm=WOtgB(5^|@jъ޴09IO(6f<"h*QC]&p"9r;ds2!g4 A@YGxv0ŋvJD|C dž`DͺsUG-T ,J6-^gP<'HW{dQ-U*;[s l{1Xo^ZU¹߉Q/@CRP)۬xDU$LX>j\)]DPz)5^8LgyPbjr{ -hzZ]kZMQTkcTW*M6& MK-Rg#F-h>a+ZtXnFX8x ZSMD8)=cZ[=g:ʴowRCkd&ǂ@SlSK^m0d9D>Ko#[q01O k͔?Gpto )CAQ kGUsaat%;?@ڄĨn2`59Jp }^Ut.%N߲+J{쀺#@h ߤXnϑOfF8jGҐbEFgD+2<;"qs*3?m(̖peH =w}ie+F n ("Gꮾ01i3<^ ?\/ =!aɆne@M-]:sAj׹=Ȫ'%כdz)'^u >|1`&5c\qgBb0Qb cY5H-~w2g&f>@S/O*>.U⟣ ># ӧE5I"91v4La\i r :1uTHbm8ˏc$%z7>n"[tծ˲"w#QM *'Mt7Ua Ӱk)E3ƭޑLNɖ I"9H}[u:רgf;bλ! b]=MGj>geQ$6c7է$!gD{0v{9OGux rD6!l1LdE؏cJzuK*2sOG=ˬzCSv/sFuJ@h x۶mqub݋Z+Zc@'l)gjA yHuyCc :,bil5_mb% \$wf1*qHUGOr߆`JidVf K*!}O QռRhcH^jgBPOo.) 䝓:dC< 0 ?Np|Bc{n 7UsG#Y|S,z@xM@.:.Xܸ:JIxI/+1vP;cw[yx>rWp6p"١ Υt$wh ԷƄ6~{H1ٙ$L |^%Rfb65Ǭ¶V.ouOgknLayA=\RVYEvBe K=7f]C ;"p>Oت'i=bҸσ  tcCcf8Y^zfPȫۑ@0*IYzngC9H@3ȼ݋:*b4EIm7S%/_z19As:M y㖽I>dr";fc7 ,lNǔQ7@9W84+b⼩ O궲[wh/xNCV4;AP{6ԭKl[HΪT-vߺn)HPuExRxɩ19tJT6=eVAFqw#13)zlJA `XaoH;HSD15tOI GxCz+S-e{@ , npK(A{Ǵu[vYECLZΚ),GX}V`cᴅ` %n<0jʗ[2w$1WÏU*e &`7W3) :d95nFL[G,Q.len"ERt* %bmrnL#D[&¸ń7-lvC?N[2[̵AvӢi6@x$P 1.rBz&sDt@095l+Nۘ~Yұ/vہ$9jiI:q^iz r&9ԈxJ5fPCe0Oc츽/$)23%߈uUCEXb + `#6б5$ƍQ@;zaQ[k )(d"8oot>Ϸ gV˥vԮjU8 PN}g T %^'<7LOʁ ^_+B~u 4ѫ$#a<(/f7+U qa[ߐEr6nzNF _6Gy@^W6ӑDH!oC9>9SFa`0 T65c>tUyh0f"Q< "Ǧ1}e:?$CN"d؝esPfBӒ`.cp МGM;< Y _.8HR Saҥ}\,g,k H>>@+p{z:6M( l81s#m~i)t~-=cڔc&43G qR:&3ֺBfMtԡ}tCEI\>swYi#{K` tl;kEas"mƉ_I2TFJ/ߕհ!E7uKNt29[Ű of%ߙK:mt*-ES`܋IS:JO! :L? Eл::ڣ MFױэ-懳SZܡgR=aNOO!@ywѢP) GTTN${ť# *7 HuLzuzU[,C%Tx ۏ4[H q$ϯ0)^tὖoU0J=jxy TvWU!:yn{9X$bb|`HL 5"*{:.f,R9p $gP;#1aolA̰p|;9}6dc$̖Մ:<"}вJ%׀Jh1:KBwhG3{SuF׵ MLUC"O&jJ xΩάMvXp O<ؑϊv .nHWPKg$:^sO'C7`gKc\XPHsCގY\ |XPsgD6UqKLd 4ݓ@9ST6ciZ׹W\c<:ʜ&J̟P,tѦo=@vQ0XA܃jɈVM|HYUF(N?=^Z6iįsf/s,U]Wj bq8b)% {o4%>$5{<%1%gxÙ^ܵf3Bzeen=,ze)$5O| d{73Nfl7ka%Nij t99- Z@}pЭ 'X]DԝJ^4|HK hԎnhh%oRAhFc{CN;JH0j O::pb;Fʜ_sP5Fq1}6.,ƚ?Z # PsSZe:צĩf]1kjmc;Me "XDNmtysMp2'"^:G^1:n`rխeP)0rˆf:Q}R<:=!]ۄ֒r}k' 7ऊ-D X\9j:~uNKPAV[ b@ڝxie  ԠayGd-';̨$ Pj=AZԴivP;ׄbOR!1{ZYGR)YSMM\ұfaeM,gl+̻LYz7e/7Bjz/?|""S3Gzu9~-t#81cUHNlxDzA!aZݷpoR2=R&ŷiv&)rhvU;#6cdfҾEK*5>LȁW1& ]&ITP*] XQ #{Yfnp6Y]RL`c)>X\PY6aNLmK/2t $2)Wy*E B-&^ȗbK "dZiǖDXc5wޡ"6˂MtWC1LlG/Bcዳ̉~Rj[ aW+i%r{"Z7s%W[gXaszgn˔cFHc_L\%Aȋz#l "Fh(Z<a{_eDÌiJ]>P>y26 bg{.8(WuۻАx3.C;ig)zarCq bm:ZЏwꉲqUXe`Ho{4Гk>ͺ+r&5PNzX<&HfD+$h-(3*P#4CKǝU՟ԱU ?Yo~>ݜdQռX xCc]rUc@6Dnj0#l9NY=rf1q_G_P{*챑? Qc=,DdV>'LpД_YW%UAf$HǚH,ZҚP]La16LKR3D /3HvD6m~=3yc\-3eo"kT=GZ Vq\MPL|ނ-Jn!Z[fmv֙ߑ|8+<_z_`JxS_ tvdΗY/PsùNY8Z ڼ 7'o>gmo1gi)YxPv ;K+~ʬIs]+NIX²7H 5kEbQ@űJż)~<~5(ѸuzZ T5m SRK$37r9:<&%+ItMB^2%1^z<8aI=lh/LM jsvItdADqref8W%]LNU$CNUoN ЇrpZ5t p |r)yidK|HYv=oEPfGxCIZ%wo䗇iڟZ˥\kfA+Rc68!g?N:&\dl.?-{tpt2 ,JTKȍd~Z)<䘈& |*n‰4LPmm~9ι4u Xs閩~v; )ʒnߚ}bv2Oy ȥSRίq6nE0EuX$\*&T?s!5z/CvBy1T2ίJ+?P̷TRSz4$[%e |Lf䵔Ӓ 778KlՖ?"hʖԑV2zv~gSE>پ31vh]~"`y^Cq&i9l /!@a1;2 Ěmr9R."۬]aG3h'L/tm'.;&\i ϒy{BOEcXv$!t~Xuv7ޛǖI[|{X5;U`#m 7C^Sf6 ƈȒ3U-,*T[IǏ5șW[-_@؆c }MXlC[blfNͪ}GX;Bm7xF4/KK0&n/w`)%@8şv= 87N.Bv)p9\ Z=tblpeV0 FHcIw!&G܇Gz ls61 @GBCY/0q:ta O!pd^7g"6@fSq~Hu$+˘ "j.=§ BhWP<JWrW6JXƉvv+0Oll3}7lQC>85Y~ІQ= Rܾ?Qz tzDk+S'NCm㦻?ܪi意G&Ѹ`Iȯe*_u8Os#|eDLYGnR,js%;GP0绵:V7AY! pN^fw1'L4@{quCDg$_r;/YU*NلfwTtb+dOEzdwr+엤>LI>XkK LV Gy#'Hvqp^R1zM'_^2XR jx &ʦ$b@z Yϗ$Fhk])0ld֘#abst&݄NEdAѺ ;/g] xpVFEùMgAwFRZȜŏAΪO~xtՀ_r8,PP֦(E΍=4mA͍9yW:ZLb$ Hgwtl\1"*Hzd W%%s6{aW)$dw1LvE`'HhׁN+3 aB;RXx1܀S*q;]ZrK*dA"Qs~end%JX=[`яF& }ԍNjkׯU_zwaE醊/MGP_AB_6:GyZOqKX;qeM!mcX$_ӣP3 o}#䶯Fr=ު9aOǃhf"}ݡ׎ 7HkeQWذ G9c烹HΠڱC-W~n Z4mxЋۏE2ץm'!*'ԡ" %֍h&[Hml CVl7oE5} v}-gB vRtL!+ [*;۪s<]R4_J-oO(1 2hKi=m@ʪE%lhb b(tSo=[1R.*:99 b w-#bK?@ @ܻ iL"}(<=Tv0WO;cCy\q*~Ѭnt3GZcV=Tau똫Ah((-}kGn$ ʲnwVo%}79|7W;*u2nwMz0Ky,ˢh$ItO8Bdg=]|Ӵn03뼁Z@@9s N:6ͪBceB4y$own p̮T+u/ni<|%`G.<2%\uPӼ[GQgLqF<^V(S7Ji}w8R|bWG~l*~11ز{"?(DCǯ. 9hr!ƫzSvFDq[hאt"xPiOcQ4N2-m̐AbIv)I6ɀq qWKE-P#[ STa2Q@-`%{I+9d6!݂Zdbʻ.I]nn Ikڍ27 'p ժ74&q*?4pOCu)l/$ LБg&!M+B[2rͬ˜uiJI[^a =-{? > rH<;tX~^ܰ*gX*?x(0gu6+8{5oCRl%q|ؗ,BӈAln bρ&1m^i_J/LG=:?3gQ|vEq! PcTI2QpWfjq ݲ<|҈84P7(mn-7q2m^J>q>Kn0]$i5W2/F kP> [y?3Qȡ^RIΆۅ$L;Ր1 Ldq@rٿ0[#$>-8WY 48Ó;C4zu=~UV. ͼȊ6 0"׃#b| E4):^ތ2lP>%uoXod/&B}UurXWP `N`"?k-Oz$Y.e޴DoaYMjr)'u]qH<<ׂz ,@ z X՞i3وy)t C-bXRpq!.F AA%&VD՘ [C I$“eo:˕qwXfE<# mX=&FxLuBia1$`%s`/#ڈt΋[UԴE$Yr 639ьgec04Pឫ.p,YĉUK-9jCkzmvWM$ūr*Hgu -GlQ7n2>#HM|\ɢu<0 ųL8al)n|0<$*'R&YgrՆXFs3K&7')bgN0kښ7ZIMm% 6q5-= +(=x@,~^pZ_c!b( T JMlC&2-Zr'd 6Ǣ|VXUQ=݀~X̘._A5.kH2 bӃ~DAnJ!}bQ<F6P%乳$Eug-d~xp⚃$Gv#nҝ/ƸBJ~o,BX|t(VL0yD/l'@{a`64Ǒd~BK"rZ #7~hop,DZ(uz8s6PRdҎgkkyjDXQ$Ț㐮+N[k>EQ$$ׁZ<S/wA k:,R_ =(,VV^aY9pk8.^t:$asEQKE(ttT$κS!W~RGS R4;'m~#,= XAGsOz2#~1r_/N77mxI.ʙF0u(ʷG 3uMoGׁF sLTLI&,i޵McBx!1B'̟!? ZU8Vذj +Dhf@Ž\5vɍjm'F6cI`.8hqVYl >g yumlK.$f҆rfG@ܦ`+4X& Nܢ"8:sq=w%`0 'G+0 j*Zg0Rr]﯅'J} MO}"%a:E㮇Ft&$=X h'qҟL7ARA}% |%\9F.:շٸq/ Jwgz\ hI ,rmm/qN U[9T,ؼ(̗WdI/@>gy NbHgB< 坕ٯ/QSnD*U45͹gBUs߫14lzy@jbE;ZW,KDCT1-O&ȔUݏ1jkRT8$dMyyr{7b-=vpj)3D]hH"\iǺO=NW),ZEE4`ХgY uAfiYA[46>Xh _z7#H')|z)C}r8>n j~Iw=by\QIr}R|,xw& Ost@W"X[Fz{^ڕJfM Sohȯ~hޥmV;>ͲwaɦH&Apw0xLDyO=JYE~"?+X│Vޓb7Rk)ejȗ ^5%`  ZCYl a HS-[_RX2 T*CB JV7B#w'r@PJ0ָ Bm[{{;tCSA 0\+<*ou\I)1]2| 6jgq00rT!²_ı-BQê- (44u/'o\wwɎNhDd pocGϿRmK'|jO^Bj*=nnQ'WW}/n&×L\%%[Zc0J0t4d6#aXbG<K{_ <.H'gz 5xlު~yZ NhcJ.@! jZMhvszQoRХ ƕR-4ya;YL+dҚ{?(˂ETsN|\9uǰϨJ$Q#%sy ]pf-BNid2k)~`;z6"TZg1'$`~'ESQmQ)*!/ax ~,^671lbF?<[ݥF| )A1VmUX,.Q6`Md W}_J_Q)lT6 <)IoT*KaUm\o\tLB7Z2IF 9ly{M~xIډ84ἀSdc`D}76Z=h+hQ:.7TuWhmۥY?Lւ55N42ATX-,GtQ}gR+O];m󾱽& o:S'Pk83ʇwWoPчʼn6PV{!Pb26h[&^!?*>`tCS_?d$6 1TQO# l0N?p]܇y{J "mvM чҾ?{HˤAUә?|MG"{Us!b;k'Ԑ뎶vn ;qoFG%$5-p bK S{$ FXP5 e͵El{L3aAH\bӊSlw ~s췸%)DtթJMn=(/7P3ɹ5-YɝEs<ŋwJIs/-A \_,HBӟI~EӢ谔}/! s"09BjIa"?Ҧ!+W73$PbnEe$3WS0 71XǕQQY]BuohmKP&ϑ XT w0}Q@_̭wfR4dJV rX'ex`z 4E] aFe$~{ы=D? uFq٫B̞Lۗœڟe4gڥ;0!V\MkјcFK_GoSDI GHVip.=^8SaA@e6 9a+/.2|HRZ[|s3pOʪVMmdܭoc6_{'QEmZF5 3rLhRI=G{g5{):(l_3GŌ7az&ӤbaiED_+<҆z*nSٱxȀfO.S<(-;\V1~? >sD\^8 dQgDutgo]Woa1a$D[vs~Rʫ)z۹#퀹"O7Ы@BFJQahӿJL3Q𐹀T>mS-Anw2ŵLV aV!W?1h7FCO+;-_YUjzb.@Vup KQ$^u@ _^8 P߫-%EM}S7=ZjUWPV2!j- lT\ݮa$>,q8CD$t~)О%7\ j~k3IQ}<(VmO̢[ *ΘqZ 3^]gD5σ-FcwLeol37]٬PX1J_pOYstDe(va{TJ T?xRC0w R 1^ csWYqBy+@b] @~Ev9$n@L(- q`\/̙x%tt Be3"2dGg p O5KHZ86ιHM02*Y3-aNwqf^|_;IѻSk;UF>lڹ_*wqy#4[![c,&Ak^bÀ(6 ޑfANy"g3|)ZiPؠ9^Px* =阚f#ϠX'?ɯLˎF"nciC@ޘr*#\,oe/'q8}tCKh/bU`;7Gu,X<"4Nn~EpQǡk 0" E_=aO b=moۓ/ [ly'N}\J1ry`ΏΗڪp|Z$s΋ZFoQf45 99RO^yem *S(2!ܭ^.ߞ4D5t̟8[0ۚ F<#U ZY[1~ezsZ'S; ʌfOU~H* ٢RrA,~%XoHldɪ\%~,'0z**Sǯ<\HR}UO"<.a~Cѯ~S 87ٳZg\6+uK֡ti+l!.XY(>O?2,Cssuy>!#>$(ьꉚ|H*Jbb3k!MvN")#GNq&wqЍ'e> CWj ᗨtT]Fv= Dh݇1[ --n͇nז[Cy/)$֊c& _5PTevU⾾#\! r~ekƈFΏ{ܜꌐ6he,+fE bHq\va. XZDen#L" 6l߀P_$KӘW "-R3n{c2Ұ"\C1b kKػ%8Ya/s mwQ ;W:?YC |;u=A,F}U~5؟sR!? SVk\w.Q{%#n9gS$Z4F37l줇!sg~x'{Ќ/}֝L~So2/f`ٺ>ЙTfrxcs,!KA~*!^?L"jťF^0R{yA6[Hxqp3^RuA>'Vo2qJѬMj}}&5ųeGYRH-]o'u\X[9UfC*QȳY &"9!~ Nmcq̂!nfJA F j9~_omz" ;(NgZ- "#h89EF E6+J.zA ǦYza󳀾df:֑] YkZ|#ש׳t mmmq<=l\hH. G<+R-Vf䯣)W3^VGvjK0aBm{N/4yA]UjJvDc[2 f hx{yRg3ñZbNZ5B`| xo2Ll(I:5O _b=`ҕ;C41l>ՐӆkU3` *J,ZJ#Cx%rc!BzA}/[<ⳣ-{$.GQ"m9WEc65vB>[Hb0?}9?7;r(oj#qcN&҉QUBZ3ġIMMSA)fϫ = o]D Dn1x-T[}N*aƨ?#/Ď @f+fBCzwR|0G $DsF? "練f\GU6x C]t5\yƁgvrv`N- S?V<H=-fҊzw[HD!mIw+AY#^t]BQqȨ8PJK.zg,կ󋺦O3zFvRvfwxڜk`:{8l(8>ܝn >܇y/;F~F;SII2qinLRw{ ]F!w3SنԈ>c=f $SG#Vu\fnN.T}kVw'tmn.RDkG~Xl9ֶ]~%Մw`'*Υ0(8 9H2r&ià l1̮R hx~%+sXlL /$vx|ioT)sGfւ!QZ٭"0˶ʛc 0`(ٳ1v:۫M`K+qOug#{ wխ+ik0\hn8b B'+#2_kmzn(׌m!@{['VifLnR匸z|xT&J$D$v/j}Sxjq1RP2p+S*g`g^PuѦG`Z/A*{GvE՜#9F:]h_5$||]6Wf05BüW[aLO!P䜈ύSh-Xxka4t[@s-߹f%|+A1j!ӗ)YsN(xΞNN6shxc9V2YX9q qsBлDs!TßU2(!)f*Ϣ۫01 w%hFGM~5oF0{2K,v۰I - WR;ds{z Rbf"Zn3tГd:d> Ù_"K&gVC )Q\L#i )/I=R]}'֭||) t_Ki^" gΡ#4#1\1fMO^遣fs y][PX.)&i Lx(AEDVX] I55NƺCob(hhF.~'犛1^#y9:XMnZxgW:-_&2 Lw\nJpB <߷S]R1 ȗ4Z'&'^vl}QӾ|{avQN5ܤ3Ϯ&9+Q[z9eI4IUâ:FAZ_Ggr9s8V}(1F0|PT}l мí "p7j9Mi:"`})Rw6c):p6}wQy;SqȪI%;$h=Τo{Lu8 a7 j,q2ߓ.v:FAA +SujJ#%Ӆml0s,2aqlU&ܞWp5YȜi1/^;%,SqJ$Ɵس2S<_!UDYæD*7y\LE_?`nmƌڍ,[*L3C +4QWIq\@ 2r[9{ ߊ]hkPs W9wrIxnjLkd/˰TğlTCc2y %g^cFY;$ }9iN@S$<ȉw\zD]葡^LY;ޛɻ36|5XL׊A%VN* M'y}-5 f#ܸZ($aQt+i~gg[l0$1v?C+TdIze΃|$2aEmG0@[x{6 ҉AⷑnW88M2eCfo9&C?e 1gQ/cFoi(D 9Ni 1x^0 &ewb? IF5oG!RZGX1]ʼn2;\1%z-.v.y:}c?TIR&CylAgU?,# :: m{grK|C"(닿T<,NIˇ=g# eXp$=, K)`]A?Mo1B}ͩjsc(Ղ^ :ݭbm–эz\O,LZƕ.&>Ϸx4CI'bw>_"Ӛ$A_j>zB}ԘF5  Q*=TK@vCz8"MmVcQ F* ]+ lج9L[}̛5DT:$ 4 8 6 6o%1-+ϞS\@*ܒBҜư)Pj`頸t[+.f@DT— V"tHNCFG{5;:+U)aZ= RZ~Zc~ooVu PB[Ap|ePb<{%\R5,fvކA/*0[6ۻ޺<"c\fB1 ux3"݀oD"OR|YCb J7I[>ƇiK'7 E¦td#tgb'R5ψ~Y0ow2Md/}OLո*!>qLz-n/W.9_l,AJ4o }LW!^̺#@plJ_k) N\a (a4 s3J_޾عP C-e~\,x9AVHTөFmr=7<*4 >bֆc7roNzd$ g@o AHRt++Un/:ߝ'SFK 0)I"R,T՞;Ņ"P|i}&S܀5Zk?PRmvWqu'ejB[&&"ԍF}MA'|j(DE j+a!j_ؾLɚo>[͑So YO'*Cm$\@+&GY2 L]\ILE0N&|+^6+Fql;p*ƿ /[udj`A:նGb ;`U \W~|QbKtH.@+*{$\)K ~T(e" zu)˘4ݫQzSJ ++T`/x;[2ߙ^MK2K*1 Ig: hkL 5imcb)͗iq-4`+l61wj5$-chm'pDtSkA]*?urxVje-C@(LJ&"+fT&chY/-/7}IB3^wEn|D=͑1FNЂ&<1(3*wvo][ JW=N[zCDOLWLk|O+ p)Q 1=tܻyScF@2wnd H[IDt΅V> uk)tW˃T̴za֜TYOa&V*eeJqAZtRݙ{n7m\-7u& bdEV>a{YvSB}PM],QU9niհQpJ&ŸKTǵvY M3TkeRć? QvH8 FN5/k/凕^ỎBI˗eYvmT/ Hɑf-[U7b\ bry'I찦H-DD3| -*Վj^'vYCYל^P~JzR_ srjMV:h;!֗[gmp~X3ӜӡaٰVc nS9'C)pYtzJ.Ƽ7$FCL ]09jŊP|Rz0xq\@zчO<w {G_Ќ?SEb$G4u`K)L&jT,wV>|$Hؽ.̲o@U'B&U[\Pɍyfz$̓PѴ'̬q2yb]% (B3}d\]GɆ9.'w̙)jG,tJ,ņdfO]'`B#G% Jy͗-W3jX)Q;Rl5,Ѕ{{0~>1g u =V 5lc:T8POI3d/ ѥuUʎ rdi)ZKQnФ gkj:~c/^u'DFg H?JZ ]עc[;U=[M=Jn/כ{w(/Q1SM/TNΒqj >̍?EC4?JKa(01.0, trףD4h\l& ,=`r!> WRp'GiY{h-F얔ctpdtv7xf,fNU}$ݐJB &ڢ`Z6N(%շՔI˱rZKݑ C)n8R7HusܓA"5hZv1%鲇΅"Ď8񷓳]n .wd۬q>z1.㤡1H-j M,Q"6ہ>U2 4<iC;aEP`Kw{#{j% VВ2햦V~:c);}j| "a=QB&GDBk/6mUm| YR \!=,)GΐSWYu/P#2 5n^O(OWP t{qGvmf VS51O2pF gL> 4FW &TrC|*/BTM^7NshPWrfn3\9{O[MN({k&9]OYm,r '/'} ?t ]9>f94Bbgtp tt`?dkޚ'~wi}߫?z3ĥo4ö 9}.3sOcZm._|ٱhϙqgPlGp'F{DėW_,n^*_L[(EtǦ@gP;30!ߊ=-!GⱆSP+)T?cwòfkF!Ɖ:x:Rt틾1t ]#3 ~3fBKVvzK\ojر)2J38 r!h$d|hc*\60}7Ƽ['g?X=$$v'cHg :졇d+R` Nr6[$/~zJ=h]4)h*ݦk4no|ov9T!/g(j) 3xyaӜI&ky͟~m,4صXa ݲWO Y#=eQ^AH˯Rd: mk2z\ .F4^>㦩~D%54 oψ‰0FMY9}6Lîp7gС>] ] +{vj;>x\{_\4^6,[soqOAM'OR.*,eCxZXiC|b޸IǖռOw<չ B{K@w=kpE\^!͘銶{ko;)kkҵ3nefxlK$aBYGȅ1cH&pz{xRpQv=2}XfzPkƝ=ywPa7m1>a·|L 'exUz֟|i #d>t4pDC%;H$l'6u$*~~)$Қ۽'!RxqqH}lgk+};o-6KW*(&"Lw|=f^:4P}(Y:Iy16Gu_Av `A&G]f:GC5{0wMQ'L!U~N+֣gLIݪ8fI-&⋼~b1Ag}?]lXs\o.i&M" ͳ ?4ֈ{S iyrQjnz7x :#J=p":ɕGu'mDX?EޣޘBwH@4#GlGz#ZR^FRvn)Y` J;-Zua)4KW_^HfWV!3#݆FNvN{l~߻{wU* Xc/N|%ت-'u$\˅4s؍ˈhB/ix bIW? U0yǻ)n?~2{dda\I{%lG9hF$9C ݓ:>ᕧ Z}\`_4&Oq.Q9I Cl8vK~\Rc@gͮCFژwat,@Е~PǯNRJZ47|tE5a&t7ڛN{A6TH`yi 3 g7*)`?!mԖ"?0L#넮b,g{C7U /Er1ԥX%R,5!mcfC#x]oOݑ dpتƒO}3w%shP h: fT2svȤ4j<1?LZSsWl!H8G# feD@{atKĸ?PU2EeSy31h,n>|hUDD%/,)A)sq2q IM/q:cpрqQ?›/V AH7uoi]NS&Ρ0;T1; 3G!4IQ\8mR'ͪ4Uo7c-N`"A TvȊcŕ"YCpr) u }?ځ@tF߭d΀R{L0Dͮ+v5iл7d6pQ>ZRjDm]ܱ>CU`6>jSvN5hG=xhO ^2U*Dvft۶DLqZ]ToUȋ57qY+O{c ;O.B#&>cS{F,!q{+Î%4/xNoM|\?DBQ4-U5us9$[51 o~UvVDX _wh3Ν)9w>+{ud;4B/KpӬ9V0>1+8s٠"7J4I~)h2>.mwk_1sA(Obo`t.6hQ3$Oy5m;Y8\Mnc\bȁ:pvr38 h)?0s=#6 I‰оx(R%w1v[dDq.O~mSus @1H[>.)a<jeK|LUx5"X 8)"$ߞ` a{O6|.mk?&)W,|9l^@4n塹,RQ@WW*@@guZ?#:T92s@䛊d+A?x̌3<2*[Yԕ-<_U@@F.GL \aMm2Ybm:wtc`#A |6_8`rԌSʭIG\~d}Ȗё +|S3!јLHIz:+ fV}Cu:j %Dlܢ{ IRLz{ͪ'I*ЯlUsMfc; ŭ@l?-[# d˳8v b(Vw~>!?mVG S[ȈAG2Dr3ܱYTMʴ{€ɾ<ѽi Rgjgҳo\ԋU;Gjݳ9&rN&88m2[Mg}ԠԚ/ @TͤK rݶ UɃh )|t! )ӿyK@SFXVw@rڂ5dXAͧ:1ʼ/+(jMdC\f/R ~Ѳ̳ԩ _Hq}_ɘZ[!MtU+Ynp5߭v `MK~qpL/o6sG">Y[ K#F/3kfz/Ҕ4,E1Qd Kj@"m5]4TYLڙپ$ amvcN,R_08wߊ2qa\ #d jRTU9mφoF4dJdDk^;O|Fh @jY<2.ޢ_8ŵ ba8=3C53a۩jGNW-UP,W| bMbJ>qB;RE/V8 S/#[;t_1Q; .цUOn]g֣"ogO s|qnµ4L*l9iJC7Yb߆$ą9ʨt,HB\O;+4vjWFQ IrcIc;j UΥL?nG2`a澻올\ |G6avDfl)V]\(@TEHZћ$G%Ѯ\I+ kZLԍU(E&jQBk3@x[ľ<̥s 6ݑk*4i7:[_`GamM= 0WLћ[ }՟gzm:`_D*![KKXZw;A&p:Z)dXz !?vH/ME42GSuJRG5@Z@_Oyq^#tABɬݵIJ{udl3-4m\=&wx.§&GYf7^ hYtf:|Ҋ="j*߈_ffX'Ն:}(3SnvKҙs2pǹu7uAeTxLj4 =V>:ll.clX2VF:~D) x!"J%H>y]?ҦCQy@RJٗ )$4B YY&xU*;` ؽ]F VKBf y>Y2z?|3 |&OE76&-BzPUbՁ'a{ o=$v~1D{,uJK幧< o<ќ#~<whPL)U9 m@]dS5A,#4Yi?Ԫ!D BVS`zMYlawXH0B;Wh @0W ?*s^KP[ d)~h+`l,U(K*G\m >D~b7l#Ƭ u("%]HwJD-!@8/#uMA@jG,VbGˇܕļEfl&hEa)9ɚr-H$䥐(-=˻o*f,XZ@$ŢA{'OFp]J46msㆁ‰Oy{|:^`VD -&1k,LVpʫ>vԗi>#m`Xԧoh ?OqH`y%6&"[KwɕnFpO(`f(V U:2+q|1$.{$A/aQm#yF61ϊpACdžRmeeDĄ@,Q˚n 2G lycH>aV:7G0Y;jx4bqαE=N\*_yD'V`ح2IE5kz\+vdnպ0)Sadvu7}8W[5ˆE}@:D̲|U"B+BjQODs` gx(];.j9y^;=P6X b^G9[Y. u  +vjjh7A S@ZyFD;:.$N g6 3R8'Yf磗qItyOn>eH0%$4?أSy-0QvjK9R}&8q-Y !?Nl/S6P?\Z9Gp&NEwNO&vصZ%. zOLʿ*HP2{NI>~\=kAmPnꊯ8$J|yUvQ);Oذ)j\0aj2_fFfjzy jKӤ}(jkt"q5jܖlWh>x-I w9m$ȝ5iІ(Tpj?}a5auݟY{ F ({YGtU[?c?k]3?u3OsކU[N-tιbKD/ eJ\Ű?wvE.(ƒbHFG;룅 ^]#PJKtu2My F/9D K9gu l:RԌHs4[>u1"4 _ IXfRvdgX>JN^Wz״c9z)/A<6х&}!D@|#h=Vw4 H5avQgNۈ ՛fmid³<%3($b Ygj{]h7c& "SWix?wAz~ƥ1%ٸyCyߥgh{*9 Xݭ1ζ8:v`So`4t|9VS;y #1u>DA?$IE,U@P -EW$:RF\T;`ug H<-.ڸwPVg~x=㕦. %8üpt&INy:G {1WN CF)1C_&0F?b“\R8:rlTyKh=!yy*gX0+g l|.)w DžlÀtD+)ʰH`::.)&u ;a2}戆 lae:o$6(-ֻ#d }aRށ(9}Ē%<⸻A=q1I4G5mS̞n '28 O{%Ɍ/@xc7 0coZƩ-X7x1]ьo< ]YD_W^y vO}1 :[HN ym83\`I:#hQ>?4 _Q>7ʭ@Hn}ekvOv柕s Nܮ)\MUoInEbgmRz-w w (f]_iIX>d#Q<vSu_<9 `֞&`U2(Zb2 FfU bd>WUqk2Ӿ/jXс|رK`u)LܢT=Fd x74`alr`%XV>}V~k;ɌZiN8{& ʜ~'%oPڭ5%+?Id`w43)9f$80xvA ",$d5Il9'[(o4[P>&2N%mpq&7LQ'nj^5Şh=~+;տhdbYޯb\xsfYQie.5>kEgԦr)X<{1y I'ɺx)~YBʙ  ׃x٠d6oo3fN1c0vus4FVJ/~)Z]be΢j(r"2fYS kk d!R?wB'r%7:+s(Hd*G-K@=:{Z{׷wЩs䛅Њ<)U=(RR?at74/FfBK 7񢼓 q8,zH3b]'U}KbpǪOWAL[wTuM[S xT2ʐ/&q1_DaJX.wkQÄ3LUA~BЈi(Š&r{CV(pc͆ uHO|em\`=! f#O9ȃGK ;VXZ "8&ĆB>u|Ek8p Տ$@a>RӹHQڼ֩S$?ٰȀp;l u+$L[c|T()Z"TP;Kj_# cK4ÌTLn~#0Czrܙ>*WQ_ۋUS|%t턎$F YȨNPha&p@Щ<]MLO렍A8мl)蔭e?E{5@Z},޸]ܯ3v Hq^ݠAC!rYs7F劏B31\K}7<:%_c|"R&MQѺJ5چckݫ&۴ Q;5?zvERHcS.,AtFwӺ>?4\(ʁʠމr:nhRv4t憃t_>7GHDGG :Gg.0J_x":)@2C{Ŕ:B~TZ")ƣnpx9.![)-N6s~t40ǚg+q9䰣 C=4?#o3-a7QݞXεEp.Q@;6\<Ϫ;a7Ym6I*^)*08 Y݈:14Y6E_l _UO.3d:TX!Yͭ!LA&H/-o4ܘ1S{t8kmNK7QmH*P2jB wX3f ̮'>Ub]vpN{~2X*L,3O~6a!\U_Cw.V]m.bj)ދ^ܟѸds[ R'}osKSͦ{w}LHMlQ3=z_  v/E^"〈oW5,0cQ` }jc)2E4@%IoQIj {eck[y"ބEސ h`9ؘ(6eOpA$$]Iڧ?b8C nclQom@q ~{Q+"EgQ7OL{D'^'9W(DUxm#7]u.GgoȺs3b="" kJO)<}tNgdT$YSs RX>;_uxxf_>y:FƋ X8,1n靍>icunDO=8aY@8n9 Ͱǥ5LkȷLmoFŭ7 .Ն&M@K~V^ukmak ;-?ʨ;1ɽb L): X 8Ơlmn:rN} zfO^w.&VrqRq+??xܘ5OQ7E{L 0 6=D"G$ˎ 壻~7ZxilE۹hK)s]AQ>M@آT%KA Ժ{(σ܋m@ X2H=0 I5z[L Z;n0%qRb ܱ,'40ÖB5>Bُ㳨Jt.$ |0zT!Ħ*`ljcJܽw^!/ۤ:em{2<`5U,.^WBR93JOMt`$odCvF$q}Y Sb vYhErκS^nisNv\W^-!x1&"+k#wC7{b1(TZ<b<M `![< 0С8]34S槒,Fήe1 mM}[w{8RMwãDQ:rouS Y(9\ Zc/d:݁ .ş_LZ)T roC=3䓦d=h4?o=P=vN wFGJ3\a݂ƶT/uQ~yluYNJצ EGQ| `Ź9#FbޢeӯhsD_gP $ٖw/Sˆ#NTU0*)qezJTQuͦF0vNHg}$߅c N6W9pc<l$t;1Z/6.D]= dהv;B![x`ch"W6S$EWOҬGxͷwJIGbLDܜ d 4!uiF%Sbvݏ+yeP bӨ=z#'7 T@Q=wNYx)n<:έoz#L(faCYW!g Mp,*)IYSݿl#ye$NjŧK ]SXV7PJUjcxTWMy|a2z,YJ~M0^'[BHJ&(@ 4E~s='/4ALAvqY&>HM1S1Dwņ7-I6^2bBhMʂIp]/u"f= ޑ*-L`N/׹7k0vԲF@>~X 8P#=a.[?>fH5L[e7`_DjAVnknuu)d dy$mBYMBL9chU$9?ʃr1& x"^C8m"^Ž),ӨD~\))%A?XH(r#\r2p~EG ޺.oEy=6"J4X[+Ǝx{{Fp y.}Xo-2_ ~69fY%PM5\ Z> 9(!vEQyQϼCw}>iT]5`K?37hVA=uZ9}M/*ã9$EkAq ì+vE]asgwNaB: ^8O;=2 Et`s4:JK$eX?]k'~E;At)hJ-ZG(yOYfDO^(ZhDhm!"`s!#}+ R{jۊLhf 5uW0zc)I)Swъgxn#'A::jEI-­`2ީQ,@8c;3vl B_5Q=KlC wsA'-ޝtZ1x 0z/YǑP!y"Djl-/J64Fvܷw@b{'v ](싓UiZ0*N]g52QLX(X ~6-8 |77^q^e %E,yt ' g{Ljr(l5::įV\Yl.kn / Wv7 ARIun\؋nGX E !jT@Nqbf΁i4CdGSPɱ/HU]2RyRntD&0{guK>P첌[Bΰiʵnr)}[dGkJ:ąNDbMǩ)7B&iN-q dgP Ri 5ڦqOZ;BT8!ᰃ~:x ϰ!p ȍCPK*<^C9!X }HJUՓWBLJwT+1Jo/_?|E0D^X'oEF/ {G13$DmB]C$GNoFvA9 ˢj[h7_zK]VnWմqA>ѳ`7bNSS7!B2os2]E&|oJmGڊ1E#r$k67#VœWt?PPYM:|0Z/_v"syc=$2V}ʰ'̒㶞a,^o2 r%-SyλݱL/^qnj瘔- AVֺB,!Ɠ5&sqaCtaj66~6Yf K ,,OR3Jꎘ ˼H:3ҴY{m}%`5yX^ ^KQnֹN# ]ZЏe /(hOu,0%>ρDu亿/ݾ%L9.qa'/NߗöHP3K(s =du>yh ќンFoDieѓKU.WP& $cxVQ#OYdD X_9?kAicHse(*#þ~^^Pd" t QZOls&/m|"m nΝQ(Q;eɾ6;䄐NC;>dhHX_-Q[8t`̏ DC1ޑ~EwA-^#0aU={M';6}ڨʋ$ՎL8vlgh^HZ05eMrCYC}exE(n= qL,Vi@`ZNJ7) P;9PCZkٽ!\_܆bOLӂef5.d90p1y_D#Em]ԑfSc9;j  S򡤆w*.#_Z6;|)a=DM¦ :@w#/X n(`(Jqˈұ'q~F>pWs$a> %MgFnV(/"Oc۾* ^D>t9A.nw+PikW)3 rnG(8=Sh84,Eg6f:H*#b6 h(B9ϵaY%=o3m_`(``/U ف`?kJ3F1M%sn #L',Z!_$=OY&1(;f3 }GjvMUQ6lq[C?<چCis^yɼ]Z(Am(mc{} :a -LJ{ԞHefdAb1 UkQnI,p 3}䂬K?cpxuiFI=-H\?MB3P#&_0~NYw?|@L CHR$/#4Nx @FH^fWCۅ"Toȿ:yH'q$`,>fa=ftT.ѴXGl@iq1(1J:H>й#'xg;c#e5#ڈF =ˉ~[ ]2聹{=;ƙ#WlIޒ2y1duz(4Q.^[IWƓh.494K@t r|,U> L $qBK NS(@lK& ׶n"!WRR"}IUa 9޽#f |ܣkA!a٥H6Z IAb㖶"Hy}ƑMl%Z?W dHTfAo8&-1/m3ɭB&hVaS|zm^5(?wC2Z0CyGݓBGkyY{q "svPi $:Ul/@Ҍ+MP`f?]N9j$lb]ۚ).Mv782]}<_jcլp- #_)MmQs;kmXt'&}\S C19ZxLHHx,vpz˅PkP#W.d\Da̙vK5:R1IJ0Z牀WACWOA`f?„ @A-&KEv{"=H5".:= rN@MC9{Huc$[j":d(@89H$R~DlR)Twu_][) 49q*A:v xk>\tk07{B ,0Lډ}:"gW1N3U+ɈUؾa7WKNT ;@l`#ƛ?5-gmYOt׏rNn 6!CS|$+6O$A.ݏxTQQWkװz|GzpA?* >eKCi t_ިLY52B/?3l˔6[1|AWvs)$^gYaŇEr Z3%"?5L[8t- 4\1/>cRt 2]%M([׏HH*נaHȌv0%s9Cotp[ڋxHG'ssh.Wg'֢8%,>fc2 's*Iesb\֦+)̏oHa(U z_N!rm @/Hk:EqovrixbTM!'xaL(x-Tt$G[AJ=pDfRDq>|4cZ5Y=!Т<"mS߻~Q G \J`iͬcԉ)d|99Kf|QՅ>1.clAZ%/E9|Zױ>FcS>EaEڠ[~w W~MO:ȗgXb/FrX{N`+x܀Yv"ǯuN߯@w_n5+hWmi|B6N-w=8S;*Mg)mPq &#%ާg3*-NnW b+C\иQC 7FB}t(Pr}Z@?/OS=uch~(*LFCIlx#`M{mǭ@3e7 8%P`DPM-:+ iK*LN$V4~eAߠ:`'oD0a=sS'юDg*3/؂DqlMѫ jitdk$[Ӭ qu˿39 {(e3 P0d~Ə9Z|9.U "Ai (8 ,K=9r`2#O8< CYRe"%($ , { s9Yŏ&(UUc0+[DKC !x3(8gz#O] }ӛHٳ,P< ICtkF^cjGK:b Sy7{<^@YLm3oDuWX/Vf y NʥB-"CJ+&.>MU Y%T2ykSBGo3KKMXi:5fʫ!Ep_]9n}``nlb%nW`KqBa&_H? E yq?f֓ᇢQ|4Q=6{K  myjV@Xn#g }&TY n|w4H&(G)E_({79Bd 8P)Z)9 hf/B_p4[_JUTjMu{hm07|X%Iw&MWb&)(~B;TUg%.a_`2'n.S&->s pQ) rz>DDRF&AH kyG怅fߟ@v@Z?Ӯ8S >qw`j_TYu)g؊L_'CF;e֤MS~Vn71g 51t+=!DfGAHd+S[Iw~rBl ,@ [.CWe\LP&驷~tlT3y/,2wXp+#=1[d8~hvL!2n~8[x/ r`h.l,qmap`BAʞiVҺA2+\/A1l!Ik8~aǺ f)qN'Ƹ2Wu}K$#t`_+˙SK)VZ41]AϘ!)[+lכ~"A`#-V%WevWD)r^fwaO zh3ˬ5rm,^}.83mSuQc FwR3s?U% Qދ#s '/ ΰMİ8!R_W?:`UlQ |5BɎs&W/K/1KINOWg[< ^OtE*zQõO8퓓=koh VE<*E`BL-vژs8$I_&v3w.$烺k,IUCDv$x6eÐkICHx@BHy@|7A\%gNuh鼠5d06Hlฌyh &WOլFOyg˶姒Q]3/=r'TYP$,w=DwobMIe57pWz}8lz/,x-\^+4(eu}XnFgl#0nǫ.I3}2[Tk)1TqDLFgaF,E}-} E[¢zFcW6H͓pŠh!&''םl /1fBn񚢄D)Vp6ggo /Ui'ByEФ Gy9-&{@l4nFۖiP B_]`Lo@%*֚٪(3㡔Kť*R@Tgw?UJk@znPsttM"@1] I$RFlm&4g~N0 p,X̙; >Ŷ,|>ob~FsUAwmcL+R7ˀADo"b^Uk ]t_d|tXq_|zeR>˲`Km ո斕@uƟZ%\Ctn'H.0]'nV*EoSRɟL@%*[LS.S٫駆Z̤Vb#F{twMumTXMeԪ"@*^~SQG=F-e2҉pYPT9fF\sQQ'1 {""7f5,mk54ӑPZ)` 󈸡οZ6RD|{ -4߉hLgCgy܍(2H< ߑ݉%3 .Yf-nIw"bO,K%QjS̾Hh耾:mivҨ'wTFJ[`6;jHG~ݑH&:5뜳ѫg1S0`,SGC}܋ᒬk]1}WM}:6U +E2ݗ AԺ Ή&W21"RVV3b|kC|J{sUw8ŖkRC>C-`V\L%&1 )s)A[bx.,?Xc~Yh%vGo'h-5%iaknX,1z8NL:|_c> }<|*"*zԌ _^'Yf鰆|F|,ICh|+MXrb4Lے Lf]yٱcI"\8N6͊L,K$gyxpw;.UϪ'61 OΩ%'sZ8 }݈$P㿠߂E6W d#H1N60Ǹ|**aCMwŅVdĚh-Q.9.pX/)7T/c $w(HvF(v*B(x! L),N`k[fvm=PtFnD!Ǚ(y+V ͒%쀁i+Y}] #i$g>mpuA6}"Y"5NR`ZYfB .fq͕I6.R`KK unN8N,AIzΓ%.}jhgC!4::jTg:4~}btJ傷6W̧MlF{= L(q:r̕},@b"G_]ZӤdRaGŸS!Ƣp];xW1dpδq1&Zx\QF+m1DِR R.?'CW4E^Jݙvn9] "\YH z;֍ݓziM+׋d6B-CbxκL6^f7K*/Nl_}y %ګ}b$b(F}CR=eMLR zThPW}6_>JD=CVE.`&1Yw"fTu P/ # zv3J$R*r'E.'I:NɈ}?A_,$H TsFDQgAhv:7_f{w]VjF)x|?͈< Z5c5ZFcguK>FupRIDD|<9r07K2 #M߅1GG8F @܉av"IR0@/j*\֎a!kƀ23q8z n+ͥfoƘÜo(aBP‚cMч7w% Q SC4^{~hgyl#-x?.lnwQh'9k`1x>c3KT$4ܵE=? YhwvLis|5~Am>&Vk%&;P(_تr?Oh3bӋwwO43HCt$+w: K9?#QR'7&.ݖx<݁ÛQ ":`m4ṢJ،f{<_/*F.Az[+-fjS/KAJ"+'\rVYBt2O~YH[?fGA ً!i$xMq=-$rSg o9dB|ystB9^1&MCr!ke SM3c+JH7ˋE:P_*Lt\~lGD\C5 ro;O(T~T4w%@3Dool)nz7R-jW";FTJr]0_"k3^XjxF2Ϊz%ʼ̔d~7pi/>wi\`mhb{2RÜY"/ 15t{v]{N5fS'G͇F=QѾLQ" Y(ښ+1ȏkrz9ݞsh%iG*ҡ*a9 zUW[V/}WE-eǛ t#hn*^q5'N`BžoTҞ՞([vdWigO꠹z˯ a_4{A 3|&gqW͇Vv[*-ft= 53NeR8َ0f{2 C[CPߔ*\9R?5 0EiH=Xןt%{&ߺʆQ q *o*fY!vA4/k B;RdFMh|YČ\id`4HɯEoc( M"Wf,z^P9v#PU:э呫.BLjxJGϖ@wMuk6?8ъ,^  @Q2Gbްf\E+Nz$T#q:VḹpB>T%Щ̒n؈ fqTP"  T%$Ke)>||G`p3w:NZӮ, \3D}1(a: Q' 0ۮ;m*4a jS[T|iL4W'AI(YwU( E, 8V xVk] #BLjD0p$| !b3v>2Q!SEerUx@U_e%޼g#.#G_)7nW _QO`8-coAd"Es"=ƾ`Z-FAs̔m^!0Ւ=֤6B- iWh3 R~ iIW,oth}F/ȃ~VnaiMJ FgXuܰnP|+qNfHbOP⿾N:'tw4pAh$LW(P(G0?w%=鞃!MeāհX>CۡfN[·|Gs~6w9;>7{oyLO }`*Ox;8({hx-O_hnAZ-!>vcFEphg$n}Ba=8ge֥'nS"9Iڹ^6['tX)@#B'wE{+,!=!u0f5 '~rcݿ#goBr]ȡYTui^X<%zK M(Yo<=3A=B[ ѩ"؀4XvڠMwLiNh*|i,+,quv&aVq,`ai\z% 8!2: 飒 ,4*$db$Ȧ˰Ŗuq #ga,JT(ސ${ .5Exb+ `y .bjosbْR?^Gyu+EDa0 ;nh#Jm[* ߑ _^o=l6a8r֙ΝziI_jd,>9ܛ[tÃUƻB QcD%x4/MZ0$KlR| ˂'4q 4SglXE9Zw?˓ܘ$t 6T($-O@RaY)@Fo^tqU3`ҌQ &lT^IAke `*=3V5MSwʊ~{*QaNt;DT+B(}!h>? 5m#ܛ>D_ouVu?Y͆ )q1)GZ22>nA~!Yfj m`-KР? ; S-+/~iY#`}{إ6-+(C h4 I$}3F*6oňUd'CPEʟ /r_9a.MJ&!Wn]X䚖R!аkf,鉂P gBe3q&^},B*5grxl3"Zl n;,O|vRa4+`~Ƅt B5x1.qBRSrw/oFri-iV*uPd7S@Y[xaGTfv{7~^\i5UK_i]P2Rl~ϐ#%gܥ^ p0bt?LoZ͋ ]㫵Y꧝~c$UN]zUDZY|ݨ%ټƹd?j7/Iu*m'EЖ,GSGqF0gh}u(P0JaD-aXsTd1Ny+sXXΥ9:hY[jphݿكoݓ1p@ѫ);|_M <c_*n PVu^b1Yo0K9T&ѕc"f)/ռq0>].unoN뾏$Z_ooB203%^)*ݬ:XccZ@T{-4M\!>BQF h%jpayqKc蕿'+R֗ٛJ%SWYu#695J)՟4cL^O-}jkNQ-SdJ mkԱqD+˥y>׈NҌJ|">BWr"O_K8.DchHԙ*@C垅 pN>Z0ZcAhMSfa蓝֖>.н]連2;pnW I L ;& %4qÏӘJ,98~55J8_$yuȨ^v-8[2ļQVRz0)D1AG-]4?|C&EvNKw~|9'>5 -qK%^Hr TKA\2}G۵z\d74["2%1e3Zh<*2iY(-47@v^&CD-q],4Od+?{Xq .8ljbZAS ?z]]Nrs*60~c|00 =SsUlvD9I1ąţ3_Շ>OֿU;ύ,V.'1kP5ĂQP8ɧx+YMEk "PmCZ բ.{qv(d0TNC14ڵvI7@ӓLƒuâܩ.hOyGm*O)dϘd׽ 64嬛$gƞq#wyTSly|\ Q8 ]uDm@տU 䥭{:|iHI 5>92Iw%@^F&ty@[k.3ћtez `[*x/ "h\9/!0m{jA)}4B ^6wJ?(pke8S}P=-R_91\`K(=Oժ9R#be8&?$/Y=S1gF ye9mfss鵈f JGeT_q%=Rg%m=}Ux 4fh_Ër,]d8;N b@*"_$Ң'Gy9U JUc !kl+u&AJ:jg 1/ctW05,d?*:"~ 䄐9Fh""=ů핦W7"0CvN<\}X=v, %Lt[dd ϩ-_ɨNs3`|Xl"K\BV/~,~ *`'Ʀ|2ke$]U=rC\zyrF+εK`@Ai=%H$ژVY xBһm_65}i5cWh (Qqx0 x_o6N7! ;&y&oe} FУCoE7%r ; wLC(/ǟs  \~t1_(}lkQS3uGPwëmtN{V֣?Q;vv *-:3u>L/%Gmm{c1^Oa -KBq C:[^mbJ,2Y4^P~Э@,4#7 ||Kї.o_Mq-mV@_V?Zf&s?Ka!ER8uYc!w\ɴCA /2д`=ү˻ҾY*9r N@qɡ @5{,a$]L6T KHY+Dh#`v˭_-Eu8,i.H:HF-:OYCsecv ~tYƚ Oc&-3O&M{깴[Z׿k%uV|ʶe?fus,4I*bR&|4pzL&un =la1`&"`hM 8 o1r/D%%,pˌ  ڦ dai]l<'RS;ބ5gْ `(O;;f|epl Mv %|m.'H.3p5Zp)GN#u/ "@&ha3|uubDF1F{㏛NF\aNl %Q- GM3˳^oCJ39}7S jEk,I{+5PHN'?>I6Hc(`vőZ㪌H,ަ j5QpMPYFqAvZn֚~^9D,ŭca`$q+E,4Mdd͇fOXv*;EA xd1+Цf讑TDv.rX!:M"iGa42@tu"rpW;"J_iw1aVb1]+y7g!rB3=1a;7#N:(S]ci?#]\qKsqDZC*&~ ϼ9.dL7שz / 3cۛlxrkL QJU3qՊ(eW|QezGYk%0=gnly'u"m}AA/:H<U߻-o!aq3aꓕhg3R3RHC>"?֦,O% Ivxr\{l3%D׼cdqzS"*Zex#QDgf^{҇OEKR6~i󺷓vzuKs@eՂ|7Tމdg55X*'yF sdPxFyLif؞s.s{8[^5} [Hg\'CU^ԅVQ: >dKqG'rYm3[ tq9wKYbWt`uk~c#>8IZG}pq56Ϩp %t˜!^v~X:2^ aywJ3>#mDg!ʩ=n+>(DĢ @Jg.r;Y0`4 ;a'NŴ=nx ׷$ЁC%G.DNEؽz".Gv\uC Pߵf-rx !KU@ bzLd@O G6?pH^[uu8"uC?P/TI4aLA0}Iw#J ]dwl*2:=Fb-`}gO*9OyqțKP^[ 503w.u2v5H{f}b|ﱒ𱨩Rl.XՒShti~=U'dV*BHڐu*޹&x ܱ;w٘ͩƟպ}эWC+CIU]JICb}a^Ӷi.aiVYa'Fz\.^ʝ4lxlLhk 48uH%Q:LBn 3kOtu 'kI{gcָ9C[h "9_t̪W\EbQzCi\f̻3B17X2u3PAJhi*)j,X\/hPy2%dGaH $UQok O z5yi}Z922TQ`,Dv>7 2D/yI?1߂F8I5_֥)0 S爍.p-ut&WЕ`F֪=wg"KM F,vDmL0`7^{5-Z ڜ <1AJY KD#ڂx;IE'Ȑ{J=z !N(]ؑh29]o܄~k28XWutn}7v\Z,O(_xT,Ҕr@zbSeEyg\W<=]^C++[7('_Iָsl[J 0O>ݿ)#xQx9p{zF=/5h095X@$؎g+!P1 V!-ҁa(( =pW Q.JuB#iMv4"m7+|fy*JR-e፱}ť@=3lm#B}(P֓(!kW 2y1= ܻY6p=×)+NU;] E;/ K Q_`MS_h7S#h(h:il?ӍkS.F>uFh+pzpbkҺcH_Jwۢ6I:A:|JCz. eml(-?Ÿ]2&ə* ځEn-Ni?Ѵ[_hCMF2ԛ?1v܋)U)Cy)0kͦ Vi ]18=0"cE;ڹ)~"G_:dst}%P4~2nC,{au3; $Fr:;H{٤<8d.R;h lhlo;[R#O>%2F%H-zKzmHxʼB7O.¼y&(N(wE p'^(`r! CS1ԗF6'VgKE Sbtc5ᐯmV˞F퓙b..+Ova9p!R~](:uRyâ{3IPx:-mU0^ ~Ý KòD Mc4ؤ7TTH1qFeLգa7+Jj\; q[}R#ζ:]ڕ"yм=;$jVd@)9[b) L?s3钞FKqtͩx>W_>8F}C"fw9#(R%Wi!;\The",{rQie,g,') "FqWCvWXY!9wt.*U+>\+ǩ8j`3F6ûA|+M{'Fy+/? :Fحc;~7 O[vDjI ~ JJ+g;|ij%.y[4 Xu"ĂV+~1 t=/"J-0*`EybHJ[f%Wqp] /B<71-ԳJ8rF~0k"u3~ʇTJ1 6”z1p#6T<_sG|,3w}[R!l~۫p[M>cZXW@F -qݮu5</4_%7\pn_|9ﴎoيB=e(< 1I/T; j_0e{7-_{DSJ-Wnߜ˔ǙX7eiw";A:x)Sb,tz$g- NҢ_ 5I=MvtWy)b4"KEP `AGy'w4~^_& 2IQ-6s;(15gߏIdE_+%*V xVhK/pE. L?恪G0\- &PuE/,x}-tP4|[Y{Q~Gh*(BqDϭ:)xs&u)a #w䊉Dݝڭ{#m q11 ۄuk٥ %p g~̨XʽRZ>ip7$ wj- \zɆwKf'8 9R1?X JItMysejtezq"{(HP"!0ȕ#b6p.%!cIffi#I>mŠG0KLleEqEY:'m8lıNQ7P v}f)BK[{]E-|nۥ dݎ65u]HTD(;dRQDD,TzA[olU4ud6Nt!M9“7ѻ-MLm L8~}c' &mȥ {h ÔL,OJWk+L?"i[!mVo㘫lwTVl݂ -UWLrv;+ (6.I#HGV|.yW|.6#,rZ}sL ,/vơ)FO0rt<(=p?D o\wQn[LgjsveHiU *[׹~t(hq_+صm_tZ;2q&CLj*sU*<(nl` UT0ū"r yBUMXHP||t-XmbɀeiBΐ/'!v"TSOhuو: XiCW[ncվ|:^6}U,">ʏ!O3 Q`B^H2+J|eF$wBv@^sWK[dK6\Cs7M{IٿWЦ)F!Ll$t LvEvYG, Xj4HHwH $up&!ݪ=*ᐭt3`mqL"wEMCP~-nNҕ{FZ'cr[KCV0xoѫWN߈ pFrBRRݮI{{&R3[FYvOV)|XI DOQ~l?ǩyj,.ڇ"T-?0J[ ^ݰf+?n Vq@IM\G[j+*+\?;j²*ۖ-蚲T:=/~KZLrbNIpbevB9i G_ݥ.ATmڷZ)tί>^#\GxΟ_.f&W- =>@]xn ,eR |c,v: U_;bv,۠r(Jzՠ 0 o<\K[OeќM0Ӵ*Ó,х,7w~ږ5! 9?Tm\&Jۋ[xT' kn[t)#j8Я@O3jRnUX$鵾]n9}A^$n \Ir'6;8\*V_XaIѝ˂g1n)Yǂ  м.d"3w\zfl Z0L@N)\+U[o^f=w%v'deULd2[*GM&U%ԝTMp ` ݌x\πgׯYj@S:9}j]-2̍.JM!ZBm59$EĪS?z)MnG(5`: 9 ,Xo#U6JTOwFMX!6g14JQh t*k,ۣoh[0:#{ۈz>u\:J'.Εޞv]nX>'U>$Hi/('c>.a`:׸Q>hc6 Yfz[Uڪ:Fe] i1mcn €5Mɼust`cwsSP&1_cܸ`R%pf9>Dɒ,e@_6FB7ZuŝAak 8S.9'GP;%׈>NG=mrd«%a{.;Zٹc+!hg=fUq3koSB̨&.R0xȢ>@ zTUPL2Ժ}e/ۚ>HNNWz Rۣ>Uh’%ppfgP Jw ù>3mc,:#6x=MOnSڥvL ;3j N|_,^֞ӄP >Ac7d4@$B?gf|}||5F$$;ϛ͡DW~vF:E=E/5gﴡQ}G S|qޖ ҏz~v\MPЉ;ͳ6P, gj M|ε¯UQ.>J2F3< 0$Ey3LԔ[G誼* ֤a p? -*[/ ^aIT%0a;h]_&/qgJZ~Kaw7yJ=(t=;8a[f=v`\`dj<fN'K?nN'lzq)aӀ~%_~u8ήR (2N䑆E`DY+AVq+K[G^n"=[p*v<4yBc= \UAWNQ؇d2$_ 2v_DP2kZRi^3_QNgrH¸r]u6/e58$VOo{9Z@U3tf Uf}1`DY  BӍ*ԋ{#·4\׀^>abR h}(#!`dZPHߚ4LqwM̃ !*%"pA8f䧆oʃzuk6_a1bQ>8} #+׬2G.$TEKA2F ^Z+clO9X̵5/..Zl?jذ0HVga1w#ڦ|̑,,"qt^IE@zx-0}:(khF׌ɫئ. -?3=%ˡV~&<"K!w @:l̊XFfcm@00m`hH3d&3%'g1%١(  8Z}@\qtsq&BZh ⍋M54my6J +͏4& Z3)[&LWxw2k؂~z.%NNTxڽNӯʼ< $RB}8=mE¬i.>_}:y`HMH7g.3w"5滈i9CV(*~s9bZG `SsB@K!!9 ֽV#H'q"<ߘ:bpCߐWkR|;X?Zl{V GG^u4+ f~My tNP`a&^c7X:*ՠYkŁ Jlqw7:d5az|ה9-ȵ!7"`O͜6պ1<#w^iYmBޥnQr^ShAQv6Njdg~ OkL:Db#lFbm#~^ NyvW3'~ɶ.$M +wvc{z ~926d7d~\"/eGV$"JiJxA g;UÞl߲<1@>Jl<H44R~5rcJ#8#b!z܋8 VFˣ!t+$P4uMEqoX+_\imL楣 6Y1vn˓߄f@]EKdbGXpG7ߨ {' UW^Mu(׎! wX r0t-.m&J96CSfl. TÖ6my (+?G?/@g[S']؁Dvl&lz&"M+M a7! _Ɗd|8#pkY.87mx:T\S1/>nux/d4E#XPU dn!xLYK4Iި 9¨]W""rٕ1<M_c( K\ /s(\G _qK-:6z'C qTJ2t@*wgL8Hz$NT!i ٳt" 1-CWHÆcN)*RR|d\\ܞLjbv χL,Z,,pn[e;)LXVYM!16|G05(zjfÈՃ/UF?вSUJ#1is6$$5k%ҌOzQ,(V[듪5'&7+Ǩy: +aJn>eiv q'E~q3,E :t];@l RTMjw3?ph8ޫo@c)`هik]_^`ȫ5z4dzl뎅; N }s'_NB /qIy )(:,hFK Q*MvJ D08xQI)pQO- ZoR(@];`/K/(GHcz*) fyٛɸl@Wx-#A F.-+"F5a}0R-lnn/1LޛU>lB KY\{VV: 6$T E Og_?[c*C˭|z)1i!]0y>!7oo9w s&X!vS:~ Ⱦ"o~4H"!"NQZ{eFW6;X(O`6s>00,gFV|aR?gңMFk8}-̰]؂)"McjHj ft{)6= bB?F J ϳ " ;C"<&H=|O&COW M``|01Rơ5ΖZ]tWrmZ2zk_8YA,93q&6pg%b Z}X:ۡ&\О$D#IICP~HG\&޲P8~ 1~FǸR"77br#G9-pjҮ)_,3U *Ie%Ɠ9ퟠ?T`J 0}s" CB5&6+/>PK%QgBY{yzn~sLxK]2ߧwˑ7ܦU |a-]^{G\twӼ69Hxc<|8O0Bdz6y1*H/ >u$D qBXVGs݅կMNUm#qbVK,ك74{hI nOfrq`JIC 訮8'JO,pQ8:7څ$Rr\cTpDqqXD vq1}ZN*}XP]'jFڑ(oTsSfn<0 vpyٞ\!^{7:.dp? 1ݩNs(-cRek3"n(ni\W,1&;Ht,!^pc tTf6v2cnsBNtn|ijKCfEy; 28$MTL۲e_$[Ȣ,`*fa 6VV:]{31HS?ǣ!$8&|Ę{`G =c#$BV4Ώch -OD׾:Vԅ/nH _nŏ2}HgӍNU?_[ô{󟳢rs m<(pPnkTH5bdl` eXh$?vQi/rZ__]Rq@uކΈehnvh\ 9S&j!_0 0hY^nU&#_J+834wOSw.#Z5rŝozv(wtjh# :h4hr[v/pT,JG~E3".Șh©B6|t%Wx^֊u!>r.*/<„?Bp~UCv4"JNnLǼ;UN;6ɕ#9kSi :U@q!C][ . Y+̹- ID\,z=AOI]xjfW_RGoP3дnh/Xl /B.!uq:Vڕ)Pn m޿}(q[W?O.8kKKkaQۆR{*ҚoRAqn%tī|)G|;[?/b:" Iapce""tMsI~Px2Emt:HgMѷlL r)GOޱLe k;d^Tb.0\znGnB( sD|o͊2+FjGJy.kJY ݖԈ qþ!eԣ KG7 S!_Mr4H,$)^F(<7 ?r;ʵVC6߯* ,ypߘyJ%|~qd]v (\9鉵"Db|wl^㌕WMOX2 6;xƈ0븚c-"\n^c;yN?T( pb)"1?\fw ?DnKF6-'cyA E ޴Wb2'T8CaeۜqOUzf1k֍:)?SgT__4:~][@:ca|"R{pvۀ$Q*7R .|H^` "p}K*KaG࿰nћ}?)+7IEGgE{I\q^b}d:6HJ,>5r:)% -Oz7:V?٢Giw{y RM>,zO5t #fF?U.qzOH5,wZ25MJ@g{p m޳WlS_*H1r}(E5] w=0M}9<;'Hq`S:GHӰ.#6#LZY/;9u0}]Ob<ˣg9TΤyf}]X) S1;YDͪI5w=/ Z(5j=m MdjJL<]f5'!LDTcjNڧ>ezj'>†K4| 0R}ကE?ۋ`9&ٷj?dMw[Ti.8lF5e^Ao>a_}JYU} s"qO=-'ŀEf'_zSJ%klg#s=z:/o݌LG1Vo&܆JtR#Sizڞ4Y/0iQ-֕ $oD8-FP1K,hniUAJsCȂ d?HU;D"eB0)bWЁoĢ-'uL"J?G8}\½#V5_7J\!qMYvC`ZV Ɛ:vʫs(/jv }I|݃3D3(5؈ce;pA*&=rpNE?MnT]qNy{f~«ƺ>4BN*k٪Ird KЌ𽵼0_Ǫlhqps&'ETx`dpt5~J)j܊PBf3#˻%{ (rlZ-=GctmJ*ٝ({_9OeS} 0wrS(«Ni DqߙZ>}ZM̉[oL=60Z]sC26MzgO<Yp@yvXH5&L $g!n.\8>8k;e{nJ>,DĮ `gT0ހ>늌Yj+8U,@p{s =xyx%5 '4`ј!1>RSdD@\{ѹ,%HI'!̅J$qRStA6C Yuq1}Vz*tadgaM-\Lp!I 'ؓҪ{[$\/ڀkP3\[r'$[/ )j.=z]B] tG $]S1OW7?|AFr'cObqtC'88zØ3p8<ᅧ.-]=>Ø׼lUZ*KQ7g㒉 d0Ȗ(ҊUd@7ƙO};"k!@iK?KfE\ >6^ļ<'\853Y9U} ^j.?dCk#Pbir6Z WvM5XsuwhGFc4֘IT>RqQ_z6K ?Fv?6c]xQ#X`,ti$_Wj?)I{#o(>5{?Þ;1w!IDwP[xcߧzt7@wh'=He %?}C-DnL>3'my2|H[MC.iωr’7bbO1h|ZMuɯ:by/$VJ=̘ceB(}v\,M6 5fS" iHUV۸]~펑LLC}񡝑%mVb+8249fB*AGEȵ Zy8omOgš# c?Q1q7aG:±Fy$rH.ɂLo環wuQΔo4FNAZVO z:5$X1{*[_SUQCBB]:& vPqC!uȿnb4?-KYW$tŕ"<_CʊXN& &9HJų'd+O宦?G$QI(ΧO.B{tNJzq yI.%>-#%ڍ_t X_+ilco.)gzl^PNZ^ƃR]=@`b~vKS2cwnS5Ue>M&Ho K i\;4.Ak֜W 析Pp磟^mvްK?wܮqЫX 1.9U5L`A껬S}q.آ6v"[$(*4.Ыt*\Ӵ{ 'M9#>+ !2o::ƺ#Aw#]Q=4CI#1 tו@'~sVZ=P8-NEMë@>&C(v&\txڋ0#)ȨTk:Aq6H,>ђB#_TF'-o%?tlb*9@ -#׻:Ѥ\bBY1 _+DɀN4m3" ‘ ]._0,g㚏_9>[ǪtQyP}}I)/qq<[eiFK@fqW`er`{e -{Vr K WQ3c?4 (rL? sg=Ċ6|PؗЍbM_rLäﰲR$-ɠd_ftbm^>&tbZ\=jO~mE9Ԕ+ 6{``A;rd.RrɻxdMD! YL0ɖMBGoEm}"gC u+_I(S# GrE mݠmHHmo\N5|MWo,͋ 왧wi 3!޳3vn.6U\!7Cl=2YuЫ\W[,;vuPYGpv/%k+Or\=ĜôI@J8H싒ٌTh'}jH@E}-wzTl;jG~|>:k3# sUHؘrkKFġ1\]Ƈ9]u |\Ԙo؇|X^+Y FfjlܞNGn]PK]h}ZGבi +F+p9"{{.*:z>z^M".{Hq2^pP2f¨.a,xYœ(2*s޻>O'N @r+u4܍6&Yy{,fk5Jm' pL>` 򔱌 o1" jO0F׈88%C-PQs嵗C1g,"u7qw#bN(eF7g*>"XH#LOb<< R.} ʅa5V%,dPё {aٶ MokFUgJLx_|{$΃PJau=>ƾe #-sZkǺ9` s7E Ys-*33Qx TdN"!yS*UjB1S/Scy|HnNRZPFPP8\zJ|X^h[&2֊;#{zc(X x፨o98S;vD7 ˽L-?1g6kTO^ "3:tv&!7cu>z5b+( Mgo,)w7z̠i`;keYEtlgt\0']4UA5EʄWq1ugqR/GDї6jmr$25oTPr+YbCU/De"KXu/-tFLv2 w-%f5NU\ -K[u_.vw&+aa. lVh|_Kp8W,Յgƛe\򚋩÷ = a*@ sd0h읙? [RIҸ\՘9%BK!_Awb}1 I UaVe}#7o<2tWLre!ǯF˒'*|]+A',CLy.ʱX,_ZD,rGm{HV4~|,/Pj/8<Ģ 5ihm`4^]vNEQA:&7ĹyF[8r7/(aKK5?Ы†`#-)ڒٍN7+L>ּo`/."vv@lp$s ׬b>vÈjI%I{1*~YzF硄6 $hz'.6@YP6?nZTMiA!-}`Dwt9l}aF$a8@z'0|PE%Z7cmWU91T#}'V_&˪*y7&0]S]BHaV~@Wo %-ֻl,WwqJ%HPdHh֤2—&ڶ<;gg!r{bdjcH FF!Qd90`I*ykCq 0mNNȰ8{ݻk Z!VO8 i*FZX1sp3bv ѱ-O;/L}Yl1|IRQl9oc<@ {sO.}+CL+q+&o)ZFwJsP H莟U5~/c!|슬1Y,P9{ZYxfFGyth ˹aۥ}iRK"VR-+;ccBXFsqֳ!TEfq䗷{Ck@w3mI&m,R*=/"H'Px .>ʅ0Ȣp>_ըrI䝠n0 seK/c1S;WEKҦ,U_,)OEb3A#~M|V?VH[ k02̄hG M1q~@Wi~D̋eL14r#})}`:iw}fޖ-p*N]mWe zZ9um"rs_J,5Ir.}mljyy# %|JAat|j5ʌJ NIĹM4XY* U$ Rr52jQ6v ؝OLjWH#R  4XnLi]e7|D$Hg\hl` )oϓMyi@JPޘ W%ӡJk\} 'BmXJ̵;i/pF s&@S,q ,~c.0ƘsTMwRYS.'¹קyVnZP{2<7e;1;fVZ9) ݃5ZǀoaRY.]qdQ{+rAP ho2T8_҇H>-NRш|~+Jp DVPtӔ H$$lB4`[LpZ U0)dP\G`̂¿q(~[OmL#VWL>4X~̞No&"IVtZ(spBseݰ:85\IgErRl}]Mg?1LERn3^Z[`<N)u?l,v8Ʀ!I3=.^zg6M#>n9Ka ja҆ռ@ x&u+o^]ƊAĒSY~2 j+ *ƤI@ָD:J䓩?$wNvjQi4!T4'~ \7 $ _k;seЯZ *]@LXs*n`՝S =@Weo@;*zO<_nӘ90T~igxk5ʬS7~ށp<[kp"SVd0&F~ەC.ѸX})me"m #-69E' IhOtƉ ^-^7H;%o'el!yݟ"VbԻk{<3wl5,wk^[8+ԧ\Y}kO؋ykM|XvV5BuI[&F m13rKʕ5:3(UYOpL/-C#a-iXoR>WJa@&gG XF^u6;`h0Dyf)Hnѧk'Tzł(&2ѲO DÐZ'NT{еs/EBk l[F.ھOsg2)>I|V 6 _a/00 ~\QӚz7'xy%<::$< C\4&~Zѥf'PdҮvd ;LGjU /}5>~}9%kl4-P /S0xzr7I6lc3 >9 0V"x_au4mQO"IfG t{ڮ]r9~jh u#]#20n-olwU{]qNyb2? m7b](j?_)JIl{yoY:߰p U9X7TMU5 V#rT f!b}}fx4PG\9"7ISHV%Eʡo|MEQ/x U^X*X$=;Z c6> +6a0jI"Eg5٪fy|gF`?] "2|xDHn5W"-nsU%]/댉R!i|T4&,!D0J(g(Dt-dx-@Gxښ>*VX9F2, 0Ʉ ޘ-$cZ*_56+|Pr*1j~Z:I`wX]"WJMjݝYR \gΌh:E?]Oui6WVx`UGMkXYIu9zw;a"D"IVxP؞h?ϣYLwNܭifsevQoJ ܾ 6cmX_7h2Q2H䖕KwkSE,~&cM7%yWH(S2[jlKW'u7]do1(JR(=l^9,CE@K.GO Dwxů>hU__B#. B) uX~ك<4[NlϕN=B]D'< gmeRЏ4S͸uVC[4( htqFVZ%0yͨ2D~&w?!+`p`PHݏZYV_C̆ߟuX \d{ٛk/ΤÇ(׀0W\<Dz 33Paj @Y?[~!E ~1ᩖžoGOZ'cnyz8gI ~/t4[x<ӘϛO" d?Ek\3Tt3B·6o)jRT(5L?q94iH`o+I)$p7>3֌wvzKAkOIPZ} )}`5wL"@dr7cpd&`9~\%PyޏJcoݞ [攕bRB3D7Q=hߢ8rg<E@hE'i%6M$p"6 HJ:dዠsՋG~sZgpWOT!/Nj-?L+^֎%p)Ȯ!+jPBqńEɢp욇Q@),4m Kye:j|NLAJ뺳?yv~{m۱y?*d;O -QC2}i^BNiIK٦me4 j#8WCi IDa 9fQH.Y +zd:Fy-O0vt-FxLkբ`0VJ~ jʳز";*g7* Jza. X]T6 W=԰-X38A#ϛp2 k7L;:P Zz6Lj5l96K{ywV^K 7|n[-sx(U$# L"Xя*K @?җ1.%sYk\κhy2QKL BK]53Ѥ8:K r}L?,UN KX&PvrV g^z6Iw2h.Jdԅ}Jh5c׃2:2M?r _L!j@ɚcQuM {_1E&c#줤Xɛ]R@yL; iF( :^/ۘ]'2~]:lz~n ̮r2?Gpno9=e}=|ٹ F$Bz=ʐx?.ؿe'mSiR5:p/DC9ek"AC{|޶Rq9Φ\G"i~JI'~y4ش&`b,`?d(րd[ (.ʝOfz.NYC,]˱`@J[5uSD3T{ŤGeLh?qAS1(`!is1ǺB.x_Q}<%Vl-)LO^:Eo;ibJ%+\;B#3)!+n8*b5_H/4 ;Q ̐Ya=cQc:mvh:VmZ4O_D/C!N3u܃v璦w^2Y?-rY4- K2Q3|=) r6){s4AoEMS8+oM*j0Ȭx < %қ0zZZl/{tKVȹbnNbz譝?B#O\ Z6d#>zb3Z4[3 S|1|K՗`[vpl4LBQ4V>גpZ&_6O 8 ^mg ̬[M?2I άD֐1$_L=]HLk]pFܠLـ Jq[yá/4Hͨx5 rώ[u879F`簼g+|U x`tUO .,|#Q+0*^Ǎ"/V98/IO{9Uu椠gz125P yI#vwS?l"Ksh%Bo/bWH7BA7uBWt#j,FhP2Tsgeo?[eFCuD,?~F1+r⪆O%Zbڛ^/f-Dq1=1}8E̯]20h3$娲 %o2"S47>l;~nfTC6e _B-?3m>MfIXCl"rk'SmM{\%5h&HK )}z7ټ``+*D"G `>eϚ8H}ZU> 2͌ _ CG|k*6'Z]vdVd@IUJڠֳK$[s'9>?ౣRD,jF\FǑ{"RzƚbQC&c\q滬p#7<+\3ADhzՋۚנK.o拶,̈_p OqTVZD]A} cf?ꋗj;0gW|؊Z+5@{FH:-\Mm 1!ZmS[0<}"_26J,l$-ʼnCOTQ0r'x#drr>_Js4T6Ŗ gJ$$d= dZ%ɩ!h >ʌ֨":nc ya,YCzgW!lAMZA43٬͜ J3b4JQ߀SWb Ū̩y_V;!3'y QiLD8 >24dFrW1sQ[&m@ *xkRl |zxRFTqgxۮ*B/)S0&Z`eWyJJw>MD0xaΌ'ӕGec@,+>`Cja ]toxVJ;^\lR.mCSއdy~P5ſ6"EMOBT@6 0I*\ X_H!ielI s$Ċcj]rIJȳJYjk7ŀO߳(ﰉ;_|H V#`e3iS.MVD }H$U'"HDF"͍.*Z, -_cWj^S)dD")".:>VdprG"1Am\ԑa rEhUDHʭ?6Ϣ߹}Ŋ@çd"fJ[ "t2#@iwF| $l5ZX 3nd&K~HF1ж3`ԝbB~+/}kn:*$@OtyJhH@R#+sP.`A3@Sy6ͥLm{~0'`exZ`T{bXguأB1co`S_ٟ}&puЖ˷2_ZQv9^}4;dSU`^Pes l;/Bl(.`>ȐyJ"/N HIAJ㛤ᗣI۽)LSq8_7iFڋUۡ3%d% 0]R+b`y>}Wg WPQz>ٰ\+"N˥t<.h'S%^MkJ:}.Hlfy_Ab>\,}l܀G9_W>ؼ1WE1J:1$jYS:[+C4YOJ@BdDBȽS ``57m?f0t6_ՆX1`ѳHNJ} >!,Á8ؿq>^ILz`} LO:^cbhb  nxL<+?M>㬮KDOM09ڿ _4`lTH/ZNn/YĜb(#ϯΘP ZwnrmRͭv9hM ?L bA72Žk]Ʀ@uTgϫe;Ş68_BPx>yCW7J<6m‚3RʛbS? h _ΕЬaj60gCmTf ƴַfB{O09P!k,e%5®/Q0(y Le\~%VM MmD.)ԥTѭ@M>g՘2$: iÌ"5_ c_"MEiкHO:tguE$a@?dm<䓝B C4`z܋ٶ7M5KQ_+Dk-d{,_wǞX-POC";: v)n_+ef~wa!md_sO$mn(:Ϩ*mz=vǽkdV %C%=i]̈́Ϛ.7Ő<0|BMj 2ՈT3&uU[pn,oEV\UeZGI_iʁxԇxHh $')*&B)%gy=ʴ3KA, {դvIrƌuLvc +aթ䗂=V=r!:IxRH N ߶~Ab#*Jڬ'1zJ)Q nÁI]<43W. D7Z Ͼl_S1Š}),z)F^wYvnXWCfc!L"V1,[%B) v#h0L` KcfX4AǒB ; ްlS(GPOD<#ӱ-3HK;H~Pb l tTR=uN hǽ1f!d~$d |uh_z]  Xd}(Uxyj׶'.cOv* (3̮這\Afu;Rl{%%YSHbNz83OYr=z,# @nZ'8P#%c';Q X1HD~Md)#K0Kz{$c~qHVcqCw܇6K|-~xyށFe번s u VJ^1?Yjs+ aBS&R]犐RJu$#B|Mg E tAkz=+rkXwƏ=*'LaaݚAevzz4͉zh[Sݖ`L3mb:K&_]ejqaIɢb= nX, *  x1%>J_ #K 8>cHk;.t"qT&DSwiI @Rk 'qC(`guBebz&H:OJw-_A_ФjMM:?Agw_z`1\ AO(@kk,G R%ԥ,;̓ÜdWI|"'*ڶ2~ [kotҖv)=1Zl~(:4M=kd ]ɋul͂",|ER)GQ 'MJ~v $l7-WMu`@ *^FӮT8} l>ݻWelÊI+)DlR$.$P^a6q#lbWl}]x6#J!gڋZiTw}Uiai_}h0vVVz@Ĕ/Z`tRaRҘWvL!dcUrl}LqPhmaf>:4z*"(3jq.aG ۳}2MKDfe Zi'HfʎI܉P#NЋMVHgeT]PԇjF-=%LG9.GԳA P+ vS\}&ٽ%Rlh,죪EbިSDurl ~0PbO)8]KC+=) گomnN>`~ӧɵ7%Eo Gt NAnuNLɀ-.ՉݘDuc#b(IIUS.MvCT㦍N$0 i*yѾg( LR~ǾHIl[rd?\^6:=~V4]zq_/i2A7h +Zba$wz$g.D[?8Μg:K}]7KtW-(k%~؃ Ip_>q)nYxrΉĭE vC_gd;!c솅VV > gN͎"k6@` Wb<ָb*V 煉G71>Gn4Å4_sK_cl,~PB-Ev>6KbR$H!B_`KcwH,͘]M kf0A(%k#Zs.Ǿ+T&:>92RiO2+DI)d#oWo8<Ӥ@/Ւ]~D}$\l72j*=>c'[7$u" Jo&:;mH(dojy XnYd+.`H(L##YšV,.g6؈!l~n%MHk.ۥL;+j2.l"iX7ӉЖUt,U#9h~WHe*MS>ou,XvP)wI3 ZnYr6:6Г?x}Du}l -zt0)V#yI"~HaJ0YUre maQru6-QHNHf.sK5!-_OqDQ ՘5 (J Y%hzS$6һ 1_rQ7-Lsy$gؒ KbypNH ձG'ǾT]b%yJ22q7~`) gЇsj{'r0_&dm]rX]S݈*,ۄ=&6_pHVbYKk#Cњdª#"霿 tTD*95LKDƇa4tזNL"[pڜW:=lcSo+U_m^ZҥZ=+tXwVs-Q@u~KN/uGPӹ5@?w\ $AB?-qM~,=jgZOܻ_+Uknw3IlD<>2 R1=ֻsQ OY@fJb59y?$,KD^ZҠз큚7mÍѦUUm.zZ[r|E#bNNSq̔ [x_+a\Yi~_FGBubyRW0.-+[8sxg3cm}].֚f{roo MPoCD`ie4ƥN+69So:J_enEH=4I0Dl (#)~ysY(3y6rI'Y_ǂ&R?#y8/$K&Ѕ0U򷊆p*9nrݯ SCh^s1DBy*x0Ƞ(kl¿=\(a$h5K sy5TDYgݍ&T/%&va`\p >݂΍IUDuQVZ[oeHn|&E F!${@MpP+9Z(w},tvr1#/= Ͽx1OiUD8,&#R_BXE˹ ZBzQ7mv ۳O橷,§8 =üÖb"2\%͜( T:3 3bԽwc}v!JZJ𿦭y@UZi6r\NPߙ~iqD+\՞c182m2,qeh;9+"PUj9uRdtJ0.#`{j"9`7P"!U> 4?}Jvl(!Ycc{Jj3#梁 FƁCCc`cFo'I)ao}>5imp]ĿΫo @s҈"Ҭ?<@gr;o8gs*ۍAGRoiy88·)\#+Uu.,-$by,ZhsKcϋqrL@-++'EA @F5tSL)#?+|ط>T yLQ35:oBNIܶYBZAtLn5j;\m*5!“wRuIioGP%UC3( qܮC;j/k&{_1E ѷ;D$[@dWt(R~[B ' Zb؟$YtnCW@J/k&>z vKlDfBhlHAns_Uخ8F;`o يCv(9!ey(c ZKĀ:"+O Ϯm=" >M֍)xBxr>s%v1[ܤ#E ۭIRYQ'r3Ts"0@{`<'Xk$w.F Dj&(SɎOϘ)p**_J5^f|ql| pvO_r(HXZ:;yE?i(CG>pqT*ؤrz}<s ~0 $jTDzpP,R@#5I/5UΏ@ $A<"|wZ.rm4=:۷#5Xm$#!d ~ p#̝fҗ & @DNV"NHIzvgI*J@<Vr8hAG(GS|ub^N/jjjtdWQikih0RIa•|ׇ_:E hܠ$seN5J  CvjՆKW#B[-ᎀ)(F)SGi c'1D\^M*=ie3¤ݦ T+F|u wmӔjE#`*},#ˏ;jȜkOKhDk+v5%ٞԟVϋ 3FUQS0l[jހz,z(Pf+(Rf!HóZu0I1pHOVUe.`Dcjr,PX|U"K!:!.UU"r2ɑ=eNeQXv'8|eZz{6V}+Ϗ›NB'Kj𩭛*3V.]g6F 4dU' 湢„:'̛{h#Sø%Qy<&PdiM;.'Xa<Q.V%o.DZ3}؁  7ڃو՛Lۂ\s_z?&Kbpr(B-%,|3MYu,ykwmx vN˲Yim1{ *&Z>,H斢]`Khxlͳ6\"D"ŜH?9gw>ze=|ڧ˅{q# ]kn"Kl`lO4n7> k:$6և*aChV40M}7MYED؍}  JwqPZB-jlE Ĉ&PjQ mibM|6@][) }řWዸEwc,Atk=KSa[q))h7KY>^m+YE l\@Xw# )>,H6h SG݋ B.KdT/t+&Х8 rڞ#ECˀ$K\dQ^3,0@S[Qw>ϐo\EEYȻϭ^CDn0j˥J?Yýx'//ݑF " ټJΒgn_Qs/؎jaM^cp2þBq*iDĐXMICN޴:֑ڇu @4O] `C\т²9~U,)є!W.<Ҥc(;Z.X*0Vx"C֒pnT&[l:d_sqѽQiD_hIBBҙS POpYmơ (j^8CMBv tVqyyg;pS@"]jcm,*a]v]xuL< a9ѿ`eK#`, ,qISE"5k^ᨳXȠ?'2!Җp\%C4=ӓ|9CP"CF폳^q!Ss2;kz(=X&˩…nIqW梘#zggmc~5`#a iXh޹P|hd#T׳jwV J  csUs!Sx^&rqptw`YB/O `[HW| g}=P}GPq7}9Azt`iXql=nRQ"#;$ QT ' 4y*s"+[EôH#eX\BX9\u Fs>l*>b>QR ~7ޮ)sNI;|5ֿ ]bsƳu^ C7'quzhY(1uz,c!IiE/+B|`^M&$y"Rˆ ^/oiēˆf #(Vн@$B"f9QMPWHnٛPϬAnxBDhִ5 'F~ʂ +U@B' 1PՁz0RRkvW}&S.W%֞d6E:?C9aK$TݾN(!b]|]#y$pA̷$ CSך;c6"aT, |gO9t3]EwI_+y޽+\2  :)!1.ThM?!QE '幥F>DH P<'=J/kd`pGw-ʨfcw"tJ!2qXYp mvrtu J=ȝ%d8oNبh[|[(+L@/W`J:>wc>xܩ'8wt2iӟʝt+NP$el~{ؚ煮c2 >}Oۿ Pkb.o@N8j[;ao4N.OUIbA!,pM;lӢEwH{ˊ^~/ё$z‘FK㣇b %`7e&nUc-s]MıYʪ]𕒖f]O zȦx)9'gltw~sw.^ͦ*H<#NУR鎎,4-t߼f8!$3qJɒMDOC'n;환5iP/L>` RwKUUI~Mch ^_"oU$m= >Oo7Ճ {#vu[oYFð?K#XkUR?5 #N|PDP%L. } +Mozu>J]=7o1 Ջ_ݴq1]cXxo ޝ;\cuU:BUhj]4j2lo=8,{Uvrlk v3):!Qz8y2׳ bF92P>O˧` V9]}Q3$$d:xbͪCcQWc-|;< 2 tR&䳈 xKF6˩X7p[TZxƷΝ_XL},:J~Z$Hr뽺eE j[֘KD҇!SbX}mߚtv6 IXۍU^\6z+mIŒ mk8S@q ZB޷ ʗ/phDƳ!X3BnnXHe߷Tͷpfюc #S>tOlhEa}Z|9F4+m?$:O薂&wĵ+vlPwSHñnBh8 ˕23fޮ\0fG8u -RKwJDiw>:]P+o3ty∨Ɛgă'I,)w_dCP1{#rpl4jkf!0k]oqъ'?o&tg;`"07ܼ߾jNE# EO]:aӫНl{9Ht{%USMuB П끚=nm 1E] 7azUwWbGYCeSF%z#=$[r4]@#8.ra96 -ba. CXe\[k_+(*Vч>8jheS_dBނOn'P`o(鐹:гƾRҔN!ͣAI9uTX1$ӿ 762%kήyAb_y w/^EFZx[ȇ}PTCfGq%zvsyʁ7fFC]y(aWl| J^?Ps#OP"uB!х̮{ftZ V- 8.4'ѪJxZ} F8xHꨭ^ |ZTiP :. oXr>Y#щF;C : <+(3[\WJ {f)bk8lt۔BoO*+4fm/z+{i1A{1B{ ,ΖF"&چ =/ <ߞ|1J=C?ϳTK")O&9X^P|qNĄ38 B֎VvFt?UQm>(wuOIZ.vvj (a^@-{f v7ĝL %:|vN;AUk9C9j >yk{b t6h=vqpJ;ѣș(_Ig+RFؠs2`(9xv7~Ɖ Br7%uzC rsD(嘰ȍj;N~; !mMxVtŤ J*l 5+1|9Mb>J⾶iPz<` =(eQ+H.MY@2&Rl=`?7 je:m̸Ay a`S\^v 3z:i4v!^@$=V|RB;ܑ^ 6Zdk*Bk2{.ivpKC5ohMcA88ӉҪ"W teZDm{HuiBtm)`JؿCH^rŖM334̈!Y }e)5 ߡ] $ch =c_[{h|&E2'i Httt4nK0㡰T |yobyv'utj^=&-Q#lf~%B ~m&aԥi_U 6k0_HqP yl .\v/B\2[;͢}pC~h'23jڇt&I@τ(Ƽ}o kxnmôd,;-!~ (1I׼rC蒍һd,[6$>V!)0q2 Kmr-rZ f+оWh=tP8OZIlk $lo=q*)DW6z#?`1x4) y^ΡT)BZN{-2nȜ`+&jc~ozN֛W,s%=Sn v:j} ɰ줦mC & Ȣj%)ݖn Ge 5r e&!!#E=;vxaIisn)%ii?$c])VJ5B%,]mJxX,9{'$C‡8[JHq+fJZo*R4eMʰ#c 8ە^?;_nYLas|].&947|^Do/0*hqL" WHsAC>y`mk5Q*pT^Q\|Џ8ϒ5gG#Wr,ϴ0@dɥF|0fm$uØYt"{o 쬷0񫼑?Qii{TDA(L΁~6" *HBjqH)Bv̓)5uzZweJoSGHcxYAZP#:R1K^if=sW 1"\{ms{U=P /8oqvިKQd ;^+; E3 Jn"U`K=zS,hYID7 7o[qGiy!ĩA0&NVyXt]Dc +Ʃd4ٿ K2 %4;#2wXt} a``9WT0~S: FŁڕQt_ݲK$#ט=ߨe<|FDύw%e)p1b!F6-qtX,[niSYq׀K=_C @w:E o"޺ +L|4^R!ºO9*:X0ʤ3P5vZ=/h15#!fV5Yq#P'x"w7^LY:-(-%AGu3G=5Ռe)ZoGO7A&z+z:!̻\l>+$}5'z ,5[u?&wuPq}:)gwKIzp{z;ʴ+bK;$GAEOJovÊƲ!eob'.[>l&HKȐvæ=Nf'M|TI?ZqJ=p8s1/cܛ4|3}r5諴Syv aH[).E ?54!yy 2㉾3ܑf NWwng* 9QqYKbv5 =%0'Ng;#m!vZO(&͸\M v%/+.~~܄ \D fNs#:~Fl$F@~8DA28W&NqtҸ l0p1zfkǠ 5Ȅ|Ӊ&## S< .Ɣ08!tuJyZz$85psq ,H&r$؛!FztngK*tS9z :`ӮVzDo/ <ۖ *N@ D$r 9T2@,|!5jk=- \v 摲inMlfT9D'wVx{ba9括Ӧ O4 {]Pφ/ غ_7\>ѣtKAxMKpKcِ 9#-7 ]P10쌔Oh1^c=¯wp<-ՒDGOiJA֞CM@tGҝ3Nn|~[ ٚ#Z09 g]uU$>ӁrA~6bla|!862\WɡE? Fƌዳj,e-i sX]e 2+UhBkx` gUnaߗYvOg.5 hi/ 8~kL& Uv z?1`ܖof{4^JnADk{XR,rD!&[Wk3l%Np/?!>b#X& G` b=4D q@d{{~ o:K0I/)^ygkmD"فw\':"H=iWf)q2MK/`: ^2*5?bìGN KV/D /ڣ'`ֵf;9wB+@&n .Y)z1G!4Hq$h|tG*|^E0Y $~4[ުB7NpIg˽0Hc!"2IjX̾s{ydO'hO@-IfQJ;x2哹PpF-|(H{7,ٸF;=GQ︉?}`qޠ Bߟ)gWhAH}ח}lyȴI^ۜٮ zR y Z %${¤scFb9 83-雽5Gb4p-e 9FD%n~/(Ja]l/wq%ߺ;+.R>']5R$#÷Uz}9~w7S= { R,]z l0K8vjŖBrO_v9A! 'ec;uܓ\\~G=]Gf,Fhlrbxr^68u ҥK^4*=bFPDTH!^ Cy9*nS4)#[$͡U1/6̪WιOWN).wֆBMXq0!q;wxQV=r_h.0 Weo?JŸ`nq$4HYSٞ9ʛp>zPHV ̰R2"&g2[7[%B߳@Vd]RY:-/Ʋ5vn{{D}=4,?:ypYPYr \9vywڙϢ^m+-W‰{CV*cR'ޖ ຎN2Yi=<̴C&I 7~8B#|X tg1Gwm*[~q/ż$pғUF[[&HTxl-q0pmؚd\ " gL-͈Ar7]W< N 林>WZHSN/ 3jSu*3_~_6x/P|E)r]5h+^ 4j㘌g)g#Ws#'jQ0%?:8Qkp)QǪ8-@4#BT|S4.E0)*;%v,h-z>EV:QK$~= AO )~|#* B<,3yY#?]f8{ TvR("ˉ!$[XY?'0LӢc0PLג;|O>to5`O}f| ]1ks,43C蟧)vYe_5T@h=l=}x1zI~t>֒X,x`M8M_FVUs$+C + JTBwAw;T)x*:tbB*~ ShxXvˆ\>Iw]ߪT]\Fi\/džXEx`dyb?iϩ]LiݫGΔX^ƚ6oIASa+* JM[?urՂOjQVT=KtfBځ\k؂{JEq |! qC.Cd-tϱʅ2ŻTd5mx=9olɮ"ϼq`Y"(+|Wk)ml[t*Sq3=Î/!w{(g$ķky/ѹG( @&]63W}A>HljH-@_@VqgwG-3 gxP7ˢ=ud_KP9&=v+BeR!*Rg2#ʣ~oi)X9MnճYmhe.p9*`)- 1;=5oh%Aݦy%/V9pllѬ>.uV:!RP <@Š1E+{v:\}xWʱ<[NjKBG`XC4SX 8شfEK]3_?+kt?lfs+[8)jt4DG@GtHuV⅌c=.(ܗ`ɒzFԘ ^.0Rc=RBAC>;`K!?)ڒ;-אָk~5c\;Y#mT d*HS >b;W/mb08*H XK։tJujeAH.ZR5?W~*F!(rMw':YUn.- ҔPM\2"P~5O,v6 Ë$Hi?031eD(ïDkm±ª?X0'ւ^>nўI_H|^!rˢn`h%*- ڭ4(&= a]`.LۮVo!D R )/`(q`Ϊ'x6 3h韬:ά.ɤBgA-㘲h @hTe3EΨ?/y3v!T0ݾ0+x#ZCOPftn83e˚u<T&>"0E}S,(`2`p@ƕM{B}Щ\ u\NYV~ lrE0>2f]o\b0O:BF`'lUdUO_}A\\t|Iɓ9|EVA] I6u^(pj~uf4nGr${")UٲZFż ;ɲ.cq =h@u:z5SR!PEI\xn I2c8FAl1:t:KQmɴ仪?Bp座|1 w2Mj>XMsVkwycobF_pp >,şq` 2}HD{3uV?MMe7~5^!?/&n_bBNaYo/̜質XJ±{ˍod^"[~PZ/>ĵTn["mt[i6x֒X>z^eoon,,-==Ζ:34Zqr;" SX? /:^ɽ?ě Y%=7Gft;g0Yi$ľ1)?gspR70z%ȩ6ः/X ;*6L񡸬>oV#d[\ o4Hf: !O4b†Ǩ5⸡+~Jxx(eŔ317L/[U+:EX.P~WcSJ::\UYˌN7Җ٩~ZZ{#IbDOgGIԽN_'Ӎ]w6;&9,9V.K@`s\n-UAr_(1}^&ƜD07v  VQ;Ip w5mbR )!CeBA / *12Ά*2kwanx0tbn^pTvvyFVa[3DxVaL5jI[JfGty*Ki+r.]lO=2/$ڽ/ QLm浽^A0.`nalJ]s.!;&ј_8 6 klER}Łg0+Y F}eC|rp Aq:z>w]pO˦*tQΉӥ7~tչ>_[ usjx=aR<mb;̙-îs Q4'MB{W+3.sst! sxLQX8$^O]q$s~.]($wLJ ++U6kn xwJ C)%8DCnrt_hWf<z6`iOcw,B@+T/T3{y8ٓfѻ(k /~}c[]ZeiEgGe29ى4}/GbP# e}]H'ҬNY@˷vn0ڱV$ǯigւkQkb[VRG'c-lSfD/ ?~kZV袼@Xʼ0+336 Hl"n+.N\pd+aTHkw{հ}y/gМ " B'#W-KMr@ҙ5✰ 2I.Ng@[C\Iw+ڱ!ka_z0`%|vZ4`^CL^E-}n[zq 3N'Qp#ē!ǧH/547sq/b$-Qz/| qA!V¯T.J% ̬sC)V~ldePm#xKkXWK}8},Lo-%ӜfTS(B9OXsڶ|vO;XAg@X&Q[g$'GyN8#BrbJme0cc2[N4kf<w>q pPxF{%~GH>hvmXhrU ^ y{fXp_>`I\a5fИt}j0I;t~'UH\o&H5v\SR\4zZfQp6mSUNp^+^!DP]1r(iwd|%gxGizuEZՅ;lX9;Dx/3ԽC$Cn>>=8@X+k|L jta1A?$.w!glS"Q!v5h`)MJx8~,nj KըP~ihX5ܥ4w|ac^$q29gSCݝ_1|Ƒ}%da]h[Rp$\.׽ >{=X3QTq@p1n6PFClɇCzބl[y;e`*.`{@|Rvjfuxbг6;!Cm?^ y4Ew\?2KubH+eH4 0 5Fz稅4ͽ܊ )=:j~d#lS}'=P(|ұ¤ @8g:xփr1/[J1tpMjq,@r J-IMئxuIRNhZ ч 3J3HY)#W\_qf+oWAjQ&[ 57߭D29 eڐ(A+&`?JYPD"k$huέ Gj@eCTBzlCj6q]^De5sr,A GcSM"Jz }9ħsF&̌b/ȇܖEtApa\{)xaPɐD `Aw] kWTc;4FnDϝsG c'Rs<a'J2ēlJFKƁjCHP5 P2AM\_H޿ F0~$gNt2y ҩu@Btͯb*?I%`=J6'K ɩVFCk|ڔ%:B!ܧ\ mɴ B/9F\;T}&{+W[$rN^ p!1s,L!E!b{镀cO?c1u ` t¢[gw_|à d:pSTrTJ2zq B(Y%_4,÷cRv`⃛;V06ܐrD]yKZ,V mcRZR1F(%>:]lS}9K{O dޙ(TN5T\p~yWoy#mPQ!GAuk Z6XW$.y2@7VUd׳[Fy A؎*yN,L R#EUHT ye 2ٌ-պ7ޠ=_OgCcb7\9g*/+ifRYtCTߧ,*ݼ&9HQRUbN,ai̶}a䤐ϳ-:'DK@XY*w&T0N F>yC".k-?qFfvAKI]\ClZb带Mt_{ac$Ww I+`+m!*odϹ S~#eq/U@1yۛ/FkXK]H;"Gma3"KV`sށ9tEEos4O/,{Kb Ret[W"XN̂ԛ!GDO9_'y*&Sc1XNސO%ѩh85J\fj/,V;+\}07'd;# t%!"mXpެAny6#5[CҐdv{vͽ7z:Wfݯ !E!v^_.F*V +k\ 6)Y; ˎ}[<a)Oct/Ǘ4s9$gAO sV`zH l\ k/qnSZZOQݕWdx4vb@z {RK:ߩUQD-*]oC3Fe}BR3٘BcQK>pn%ӶX#:AHk 0<8= L*O+L)DAڐE*gW x;T3f< Q-s@:*&y4Orǟ#,.J1Y2Jdd(L$T1Rsahzːl'K}LF)X"t7[]4g؝/.SYgld׶RT(q cܼ<;$^ uT, r-sR3[> ӱdzR^x:,oj,ՙ͕~cc^u3nG,%Usmp'z&"bC<1ק5"\Unw^; ;٠1ҥrjrnkX-{@q(G1a72év.^83졓m"wOuw}3nedJxLaOn@:QFx@hiPr6%P~n.H>\Y|=ZgFb[6[m)l˫ӂH3 K6LL(K$E&{ʯfb漉*%Gʳx;+rDLYraڦIRg=OrSvȨi6$тrjVxO]F}9wэ\bUI00M!J? =?@SN w$E~qg(뼟DcϑC4"HY7f:LeT[m(#yy0 M@;B <9Cm4< 銚LRߧCbP pjvIi0n14Kz 4X3JR?#EɯD}NX0sUSg0fѨoavV!r-1T,ْDFdzy( I jƑzǧԧ(lNfvC$/( &ڞmT,M2':mF +l)q { 4c#EF "'LԳ8As8vBu&t95{Q菦Q]xD}C\FgYV!Fe<Qu^}RB`t{Dc鋕}v_b4:6ᚄLhڃ@`{"F6g'6u@u<c bMmu+tU"|Pз ex(8Kj0g %uY($ /мJ&bpn#%Il䝔2%4ڒQ·a_l(RX>+ϐK}8z4o¸%"-UH{í0Y>& #%`yԕh ȎCK8wr՘L !^0rGD72GlVϳ/-> v|YrJ;Cq~٧9Ӛ=9LXфZK|>+L!tIt ph" 7tCkǦz*-0?S E}WЀRtTw|2E!iz37+AojQ DCآP60u%?0+hئ@tTW0'" OqR5eͻ-U N;}SyϷrq+ցtfĈf/.+9ZG$T 3{K k>@{"U5_`Bvz?ؗ؂.WN2F<ћnԺ1SSVUZ1{HwnOoF(,B8&9WAʹ0翦ZfpE 9[ Nxq0^h gKLu.8w3u\=Ъ+ɽ: 6Og_EP.^'54uiJ#3]ER cW!Z͌L'RR2Xٱ|Z̝Pḯ.bV:xUdn0 w )W=*D{%&i`f[beHl6V!BLCΑwϋ@@[x{\c1ؒlইm=R+Dw._X8bpO6 F. @=/Gc<aDZ@}f xS8R4`*P0|-+-~0wdmQpvETՄ P̟Z R_QAKTQţAgH,bEߎjy/p"a2'=aY>L5٩㷃IΌ9d0eHBqzt^|*% [y*}Jï6N\[@_*cJabc~M%[1nG\8XSyߛ jwX O2eh*Uܤ؅A2,vz,/~$ FX@nOp9DŽ.TN&kN$1+qDӻѴ #Yai8qAJǕՂtxљD"mC p%n8CR]`6m%hǗ|k$* (6-z=q?k IER.;}jD ~ N\~1eG j: /dsDtϹq,R;@7"j {~mInb9 j쏾8n^>l<8@ȻFMh t3[߁:fHk R}Iׁ}GP&>ZS#-Ň/]hKh]3- d7xA~(P 64^ ڬs>?N@X>v`/BT.E7D%+Pt';fvclɤ w`52 \6V&'Z,E*oȕ2YTMw?;B.D f8\d'>\i]J[a*ߤ!"0D&GUE ndf cvJQ)pp4`OjYO#QNl nyҡ ?N3kiuW!XځT esckP24\ogטu%cL̅BFHVpL_DdV5ϴ g]Ѷpāi' E#Zqpΐˡqq^~&HΘ1P;UiFe- .ZTAsKw3lGAP!vth-p5tXyes%vH<]B~TC1N_*'V214DpsiQ- wٓ ouO-uM}}u |Z9em!׹Pjx-T#m٧KkЮEnSx{/!JCĚqّEUb?=I*r;_4[K+ֱU#W^W-k[sNŎ*`@"đpߖMB$ 18Qtޘf.&LާOF0yJGI 8v0 ObcMCж2҂#7WaԀDwL1; e) FqF-vѺ c/-, k2f[1Pn5\)C8%]7EW•Z[>?k\OS1?g^T"f>V4|tDoՀ ץp?UuXЭ7u pzo?_ gN-S"ciy)Vt@ .6:(18i Mpe5o{#`H)mշy }O5]ڙ~  dJR5DuQ\^] _Q\/DöG(TumCi_O`;_`) &md TS+(GYF< g}#&M,t[?g%@|03P[їC{6x#hg|&|ox~'"; -O"ν;}m@+-/T]^1sK {4{gc}%> π+cSK9e_rc{r߁QyS=q`M:;b&eb8  i*<C2r;<= jzڄ4L2sTaJp7`ײsCEyN&h,Z]‚o1 q͍ XsL9MV `0-o] dAq-ɽ]seN@*mj?ߦ B'>mi +°|ՊM]*L>dĝi ɹc.AEZH"i`{qcr#t6<-خU"p^'74ǂߓ#FDe;*^Cf|DZ.OD/aYB$C7G|מl OujJaBv֭չ,@Wϯ' &f+e'bZ˨wSj;X(si2iZ.4A=-7R0=dB qEs$Wg su|s]-gauX$#~!_ Z,sPRPAIbw̿ ^Ɛ>Hj$ڤ"Y&j]n)m%̍ZI4 2hSh3$! ywNFl0 7"?n4ۊPJO ?CKszk=!P˲{zrJ dr}_e +|"Xs#y$7@c#\!rɚTu>&qOP Z663R,{/]owhuq(">L*;ӓ>$wͺWX_-Z\)x7vWT!sgxDRDj̈́13@{rIq$F R'x5.>mH_pc8CYh7G/KtFqWwOk^ρ׈yY6Yv`2<* XȃX)by@:\tz4DOttzueX4#z%.+j8lNكNM0h]f(FmÐI55h3 ZKDz4R1K#\ioZZD 8螈̆v]"k뼆5$W"S( uA.mFe</85A$kP,҆Z ,I;k/e xFk)#= yF r&/ζ ƍ OքmC222{6:1.G9Zߚ5/| l`=i]ά $ru):P""2hR٪nApO< MrmJnf =rk zᱻ?]r؁#+wx׾*H@3O6;ܰ>1'.V)BVK|`^.K+_LgwFhLlXɬLq`hR HXG6& ӵ'dEUuF82M+ƥ_u.*]q,lejDF^g׭.=`ٳLT=T]䛥.тjzAID'Eaڧ//b. &uhurO*0)4w6CǍW/8/~H!Lw51c5@X_hA t=u%^O4_½.ۂ*"p oJnq=q8/ @QG)L(2ro/ 'YLa >HgA"cZxߨ>z<Ó" R zHa AY슨,o=DV`=P׾ :^^${o oͱH{.WKA5J [)+J m(&wA̛dJِK rW@p9ִڃHyfyF9?avi!_=zƩ@0˾~P3Ñ&ߤ0AZ>+qֱ{ [ \%W,DM5kg¯dKf:Ֆ9K&mɵpOsDu,=L:`iz\ZPh? >N[6!nG~AM||}~ zJD.e:N^MDiuaSoU^7ɖZ_QWY+1CtFïq< AX~鯪XD;LUDQ}4D1ekW+;A: /:YyS ?[a՗N%aMAgQU> iy<`p9hH;qgr S`\9?ruW2tAlm唲$Gnc~.A 0Y6>P-*-)x+xSBSyk#.;i=^\goao y-z_4nS" 2~YV\mg-re?~ xKS1_fy~9kQfs4[L_~&sA^x~lq^H^3HbDӲt8e*_UˊuSo}Jw? 95!ؽxtArA$Fg>Kߝ,tzw(߳@[&G?X{"̰NHJ`9})J?tn%h1$27Le;9e47L6H%ӤU)p-KKem/X]kĔ> ?n=V _7w`1$HKRm)A}p-d O"u9DDn#H5B?TI)hprLmA5-1m^aHJS^L ÷d Dn2džƴHg'K3$up]~MU3)'JMsAvnu?)#`a2hϐ$v&˥@f[cU/c,KT4|MϠT2˿<kl͢f녳5Ӱd] ֓j&lůN{LFio$4A#jZ(s;Q`j*Y+/fb5ny0u-FZ"{X}[\"vTۣʢ`By5j#VfSc7I1AkQLAWBQtNv壾BbCcx1f,3rؿw+m.zvTO9p"ntG^&ePsL qt1^{S˼|"c؍a5M<_#'9 !82}QGX} S!+ ʘ07WÄ05'Cg GA;0wƘBimX^e!H_RTp7OgjJPb.w mE׵{ӯ\hlP2h1lI4C?{=oňh"LOODHR/UZwY(hNР *F{jmCwԉojI (mA5M({ӽw&5]N[3e`\~oE|M i᫴%`vy|^( i\"3Ie)qG7{HMb{Zo*e>7V p 9y᪗d: 6#N$x./Sn ,!-Ua[DovlqJAA./0R'A#%Eq'(5;u8. `=V>s;[4r*ڟ={\fM+sWRvC]&~^k:ʦKA GekA旣5:%)|忢@ vZI[HwQ!D! !HܶԕmPa9חԚ4͔ )g{WlEO]{RB" i-i}AuMqW +s͋`6]q5NcWJsE bRPI\[Nv$&t}w>?omT%{;S b]՟|kYlQ:!Ӛ8jұ?h"MaXA^Ô+;Jf{ 9vqLCTE<̈́K#Mg8ٍl{IhPa@;5o9.Ֆ 9jFhR_W2THB" 906Oxs-B;3?" ?|#c4`r.f01q{]]Y߿)C\ȧ`Ow>epI `"'SrA@Mj"G0\@]UFw,[8_qE^>0G{kT3w ., hW7)WVF-(ui^ 7ThNX| ~fh-f֠a)Le9Gz,~ɆĕA%R:`u!J^? 嗢oN3]A%/h-}iWc?3ÇٽQc9]|u/3{W.b|jsG>GQY *2:J;^+^m. wPBwuHE^3v;Ր%UϘU 62dK>'4|ޠ c֧ 6./?b cYBt? TޥoT,8FȂ? QY[!QSb. s!"8v,S.dƸ#0MF\HwqQ3z#D{W+z |*qD=0z}qq7AT%'uZ 쏬=uu 42-&q<\Fw('έ=yd?/,dKsǛgl1U>*1 p`3\F 8\"aBƘ\5N6znb)Xbh^_|;'|J׿(k" ( EDrhê+'3tP|) H`&sH5mDl. /vV e1KzM7 YT[7B"* ^l`˾ Em.*jN0voBF`<< ŧ}p$ ϹJ~wn\^7{ɟck&<^fd0@1PF +63v$woe9-ռ< ^߲x@WRUqrL#(60FTSk$pBmIDee~;CڼS"(`ͦuZ^Sіa!~(e;3_qa?n2`K=uY7.> ,0<*o#Qխ+> 0>8htأZU`_S7DgL qN}Kzvj\|/zkEUWK$t[PPP2 1$0rCLШ.]ߺT ;U1ӳ12X;D1tfsL0L1Qx8,fØ,N,LehqduFOf]΁Zzz{g*Z /[8)C;?:0uZB3r3l|gP j;1>Ayw=)gqMƥ(ZZ?A >+<p1>SvێS{z 4 oZMO}^4Yy_]GHIQ;3ܝ(IhmG9O2]AkGv;%gPFuc֬Do݈ʺ/G`Xn1脷.޲R]ig&c((Ϲ|13;0@q 4@&/! H,0aB՟sGSH4;i]x)b֦gRb"Mb$c4}Q ٹ<3!j$ <9}*j‰~54̢z:Y, 빝$5y]7E;)dʩ )_y' qZi xBrgoClV*N6 &abh^~BCd_}S_݇r#0Nա>r<>!nS5IR%W', @~KzGtW[ Q$l# MC}P3B|W G;y[ꇏb!""e]`-F[|ة*Q{Z[?|qAvocF`-*fpeF8#Q-UQ^]׽ћyfTs {,tE(#]olqRtseݒoU'?Y}BOdU#u5ზQ) Q={cFpWvexS.ؕJuZ%k<.)+e5hYjfkUbA&ޕ3?*TͶg2}!*Jpz%G%pX̩N|D飙 iJpXMefPa3yܘa ˡ~{bA #cVa* NpQǟC[Ձ*!_!ձ_&byO/.O*&8#`*%h-c[|?,EP$/8Vr+\ *lb(G4NDf :c3bC£L46u(hg!!'wB9˰YɄk 'o{F7r>fh8|@x/5hks], TԾ"2[^ Kw,i[ۀ6]0! z%$sSfyJLa&7[2b_ *Hna&f]O\9WE?"ܰڜ̐虪HN=0ntG&ƟVK\+Յ j4ٚ.' W{CÑwV^0ߘ}RKJ%`^2Q~}`[lXQOaf$QGԙuma 5)+Ln'| lT-֭S/?hN!wd2P&$<͟M&ÎNϑΤMgCtZ5zh DM [12rF}ȅ}5)։Z.Twu[6(U aT&GNOԶM ~vy"$}nm׵ u@ngN,'j3o.T"`[Աn+t>N1m .efe8Ip|$j-܆vԞ'W!.- Dc_CiˤcjfHl6K9m*%z{\Ȣ/7ݽln[*@>~ QN¹B_qk=mGA RS3XٻW+i! XfeH~upMzn4a;] )XB!m5:PMlMr=|lW7YnϣړΖ`,9l[iE@4@bd ۜNm5ސ1lւMiYeܞFL38jup b$?"1͑KH\PG+ܱB@>?)s$Tn Um1]>io_]<&wٖD Df3<^8tt>q酲,chj ;9k١p? 'WE[>%.Պ~ bxo *cg Zq0ٌ e|ed}%Nf$ľqE#6eSFm;5 cǫKۛ@0+I*lQeB~ Ukce"Ҫ_Ogq`+.`ZxA.*F/A S,Wb` e [#( 1-i:GuXl 2&SD|W`!!{ gp=^FPˣ-݅'11^:/xm&Aš-c c Vi#5ai\Wq$ 6+}k]^..i gY$Am:@SO1a& CܤLIRp D*785`'0Rahˏ.=ʈ Ƀ4siD yhJ*y9^?[Iq½a5,6*hh2{7iQ˙;\'NY'|)Et2h_`3Q:"(p4tJ/># 6G"BVSϧY$Y!V?m@ٙ>Wmu8rXl EQ_iҸU& L?Wp`Zm.JJ"-\=p\]FjT+YW6+' q 孱pJ7HҌ5ǎ3n(s G_Li +y%8;ѮPur2a~w~|U\ksd-սC".^cP[Ğg|$JR;zft պD@`LUG:gK# .nA9IqkL)hX!577Bl, TIZst+Oq͹Vj0nr$ I0 o(!Xt㭌 !kKUq`b#a=wx_rA-)E4]Y:%TϜ.Iҍ][GW[R`OZa2>'EDsem@ t^SY6(,wS#VrRJa_#l@C}oT~s+忢8,ҫMo8SLLPCӞw-B/ϐeW1t'Q"efREJ>GMiKӫNkꛒtBgYNDmVhLl\ D59T Qp9$M؁K40=L9A?|fo99CFـ\f6\Jł %amnUWjc3 _'|NkmzXD]l3o]'_e6PW'͎ w(:p#[LmԬ&7o u#0oI~.\HoaXqjh(=s,@0רlam7zlr7T\։G״=}AlC#4Q/0{n㆞1=5=#+5 U F}G+Xuaodᤪ./f $c oϰb~"C]j@Wy Xv0+Q$ Ye::1LVQƴCI} wҘrjy (c .׾C~ 'R1+)JF0)u+Yu@Q-85Rδ ՖL\9]ֶ).Brõ59 [7KVL0Ia^QM,>Ġ=䖓gD˳z,P3}sJoX|+:M2顇ܥv?L"YKF;vSAug8_ӵޚJ.$1lj+ 5rz03S^=Yq5e?Kwyٍ2c\~hptha'qRxFVQ+"> x#$Źc2gm|F$@mrݧʽZ/E`.qQ:R1qjxGc1jnڦcw-Gw9?,Z?cwDě5LN#Pc7z]ZNxN0X*g'R,SQPUkOy=iBH-O:xAo?eɸq蘱ä&# 'Xox;3 "OsVϮ9|Mkq<1Xi{͝jGK1c C(w]QW-#韝f0fTJ=~i/Dq/FxjD7TSzgU}3%8o T&&]9vGof[ЇLxt^IH nqYrϯSDK`p |i8t- 5s"g$c'l|ox..5x 'FO!Pi9f;($*~%-ÕʠGK^08A,}਌F&4:ǒPB.ee?O\|ey\vG(ͮnUZ$\c[PFŸԀ?DiZr&3uVa4-{Ljm&jF`rI! uNgamOX;{}x?Օp\jƊc"Q[u۲5efY!y! FB}Qk0* `׊7lx+#-(9C_RS7ƕ"m~8yR~o}I2*X۳?92T6{Z719hU)G3FAEoL_0(7t&H/k"r6'xR]<'r]Nv_V1Zďw׿;[xP`m!M(/hIInjKcw&MN3<_"D¥ZYU#Gu@tݢҥ$ a6;xGa\ Ƨ'O%̏B/5ĮγxI@әǒ]3޻|?e6C=jʨrt}̃ Qw,{FZpg8VMݰ 3!L76X+8)fJ{((8gZ$E{)cvĜy',zA?.5XXY23L,7R3oi{&#%4Lq#}P m {;-DB7Ng55zz2"CTlQm&Yrtkg}쫌R2cMi@i"kEx^@ q==g q}^gDccx`m"7Bk\ͣdcMRqWa݅2Jm3O- 30 :ze ζ7+@-)ЖJkgzq~?ӭtSOѨ;@sL77\W\Kzu Hp67a,ɂuu,z7 U "՟~S&w!AV0fky,˝)n3]ai5몼%(p[`lt 1xs#^eyD]c%I@Yf󽕗Yz@$b"2h(Sf%ɂׅ`éT J嫁$ rld=I>LVB4jR.:J ŕ¢6#`J+\EJN]Q̒4m/ͦx)3L;-˷Ԃ`0P;TEϪ ud'>˭>b^UcJGE pR=x ]` / jU(ᘲկx)"{U8EVO[8jWS_ . ЪR3(N=^}7o{1QVvz$:{&Bͣ8:ZA T$Su&vĄߺ pjT@EޤdTtDW\}تNw30C޶X]qc[疵Í3ReܯBZiHtȴ鴰zŘT'Gq>DUbYi#0y!l7Vc!\e6cV/WάoXXHDn$*.QQ͈u9r?%}m+%K:`vSSptW'@sQ(nXE{\^6ظ* @51VJWɂ~rʊ/]1i>y;0Rk.PJST٢Gf>`>*=x6qaR;&f+s#jy!斬DϽ +ܮ ٨ *;/"X#9ĥǸXE1Hw*#g|--"oL G)c'X{(/UŢ:Oe0-Vrkx8^"J )[ 4P?OJt6CId  Չ'J/e/ߣ!5qqOsR[Aǧegpq6eC2@|u G]Njsl'&/ɗ?b|10׫\4XuH nn=d"jQ_)sz1^+CO յU& hL/"Mi% UaO#ϲo1!\̷x|.=I-WUYͧ (GrxpE 0tx$q qp sO쮣w/DKg)Kn3TP;monD WXVr_U\5,|L:Kl~j%Vc:QpMfp)p"Qʾ0-rSVoyw%U߀aMB  F,J??05Rt|+aqsԕ P'_| 1e!^p,g7 |(^|7MPCؑx#Z2Rr}1L|䡫{2C{@}0IB}P=އB})ݴ:̡ XQ7|Lyԇ">s`ML of{Q:EQ :FyT#z#NXl`fouelmBd]5FX/v>︥]6`&ylE5'+ݟ0i %"0v3g_u3WwPʢԜSD7p*[fC4XgMDmh#=5MpJ>~PՃ g޾[ӫ+QGwǞB )!/l&w;Oo |{7\-$#,TN)S\i{&*JBOQttǫ-Z(6A\g'@#VUkg~Ε<*bJ?nSSɔD˅>tPUhԁ)e0L<$f蟇֡\迳k2iIؚE^hAufB:0p `s$ù4.(#yqu>i;iApw޼ʎ8} ݆3bJt?V6]KgdX:}nUm7R jt rsfjlZc7k!>6tQ*uCϚ)fܣZ-BYdmi]0ztM'{oPZ TsL $ףB4%KP`=%zCR а~2`:pTihCqR:րra p%l>b.x<ժ%Z+XDA9d=Qv*lڍDVy#C;r@d6Ƀ; Stf*͇GyN tQ{ط9q* ^}HrOa9YQ:1U%\_[Ǔ;⓼y% T?'_hfsdh_qs_7%vDܽnw搩TmF(ggm؋Ymafo[N=˚u_dtt܇#z^-X,D@bzqEnE@a A'LZ,1#=Nq$ݡK +8L%ZSK@P_ 9&8*ςi"֝w`nSO6р+},do7M5xfP+*ňj Ηӝq G"G(ոwh##͕>CKălGE; *&cl+W*)w/l}g**u/tEJK1V!Km!VXʩ-MDNUQ}}0Ǫ4 1! `RPc&0Z_Iib?5w[p-_U&) 3U"bq*n;+?g?[^'%fX~^GCp4rvm *f/xhXT϶pNtrVg̜[xz? 2lm-{j&u&-7BB^:ߵv߯L-z%5YQ-C%H';Yb$U#I*DZlAg6 Kq Z?L]zJѴk !%9-,~p~CX,Aw.aw jӞ~hdF{x!Г<GN9򰫶DDk u:0~$IC !L{ CQDC͗Lec$10:0h*F%w(:W^DN 25A9 RI $VC3}E&0̰>C`4VtKS_>xTӺA6~/a(Xj S/P*:hq !a6DH6_O3%'y-rQ0U/^x'.ŠKi_0[Y4?eA&Gǟx1x̜鎥 ~伐꾝;QegCVƙH4H$/dD#/yl\ *q \\If/q ey?XRRy6v7Y0I<\q>kgwN +񋽕IDu {| om@˩pR%*٬૳q3 1E_fFv5GB\]NPѠlS^uzQO9Thi;_ҝ*+GVu4^r4ԂɷeTܘE*+sgG5f2$^Q@ v AUIDBK+;?!1~9"'3 F,'FI]l.)hSu^PѴ[ ߖT3bARױIҨ $B#k,du+q 52'%5H$05Ԃ]Q4cMR[G~oKU#M/GEb7{maMVy(.EWG&"^P;˜'@D@v@-CÊIS%-{7j=L` sC] ,43`l< F2jӟ!H"+99)}F*tY)7l.oQ)R3'd `w^ 4ᱷ יd:%< ;GԶ0A i̱}A/#t׋j)^]0G"ztAKLGIc_Ѡ(תǥg)GʙueQ0߆eT@ݹg^ HX+aXӯ9DifPm" /LI2K^6C_խm_Q]Ola׫D!&NIV@40Tlhh A 4,^L0CI^ Ӡ8|vVţ"]%Rܿh) ߆&{B'M.5{~~?A۾oJYKWD`[\i 8RƝ )oVF1#,#1w%/X.epO;#5\}G ]5cyD_j tOn 僰2lW27FsbX :Oa<%$*ޒLUkQU( P(n9זf./M>.hP֛ [~8vBR>Qf}2sgԑ`v7b *UDA~[Ccz3%?^ϷA/:M:)JImO֬ ͎tks#ߨf+ojp&ϊ{:=('j>]nB^pɭ]L99B1^rL9D ;a-bz2Y, Wo@-"g:_u|]+.Ѹ%:Cz,%ݏq?nr\ёqRCit^<#2`d}jLSGU 8d/ 5ov3GEʜg1-.N%4-Ay`Քؤ]3CV!soyi +|] Yhv>f8h_7 yp_*N p{Oe&M8oj0AQ\ߍzT~W;)8}Kq H[51^!0'(ᾤ} WhII(R4M`02jh._rFPЕة3Nݖ+M9pV+TɋNjLEDqpCb PQ9_[to~YbjxC8~U|1gmCm = VSQ%B[U^b4M  C@DdĴ~eG@< 2%k:w)KS6*7Sߞb/\|*xǎ8:P6#`{ȅ4(^fнnjGO#(U?q#w+CE%͵*ϊM6>|e*Syͫ=^ymՖWնGB0TJ0}AWkٰ٘\,4i:{y%@*UJw %FyկJ4Yщ7+.xLEvTu_7c%s j(خU[-W}g2F/4/ y7E/Èy*8'¯F:Ȫqb(-J6b!̗&o. ݫ>pJ` F ׌`%vs '=YsTrK /TҹR߲0 QE5%x^;41&؜4.7|_%*(ޚg+0~ͣT.bi2#?@"X4Tk7U>͵Nh5X kƙ0Aς+ `s9Һ"E$7;Q]BXЭq)|]9AÎ5$[{qNT@8&SѴj> E1[V̧)e($VEb4om ׾]KYj~{sA@m}fw"KY.hzm-?9 5 "D8 W`µm-0h%"4ظ]B{cz*p{ݤWdb#z|>C)I8j3.lKI U8<ڕ 忁yli f^]_PAN9Q=,x2C *ؼ(=vMUR( uAptV0*Ҵגs }P~!"M=@{evIv}M* 瓶Y1Xt fR WM6ivWسCf7W4[A VttN;׼1A}MG4qO?g;uT f|L`'01Qc w'`vx:˧5LqQ JUKJdBwܣ g`]TݥqQ"Kg(C+ċWBKJ{}|,3fQ@cyKJFigi?;\?ʳ?}%_, "F2B4rCS7xxtѽ9(f oՙ{vO>S:x}Rb!)ݿ"؍=Q WxH0.\] X4bIn[i1:g˪6f` 'ߥoC ]5cVD}*YTpz׽Jj3~Nf]Y:?2nW"^@^"܃+o\:6J>-7UT@Tf׆wJS7w?IjM+/0OD24Ӱ=F14k!ԤI;HKGȶ7$*ρ6],:jˉC2&Oq2VX06B3 ܞl3!(U`Hpi*].2J2F٬h(#=IU9hu4#œ&Wg jm3^V&D`{E 8 RVleq% p27vwc[6~!NiezXQ 6~r%_}w$vUhGt>{ )ă/3rirБLR"o\ۚy1 ˬQꐵ*8[Zjjħx j-s7t ]Q-Lm:FUcT4+"W9do /m@ 78,~'ڿՠg3ibwneݦal$TB[C';lYMU$ߵdvٶMP0Mg3K-9 h঱kU hilMUږ0^ sMl!~ +M{}P.9H$*Ph|BF3SsDүaÍhCƵ"ïY˩*ޜT9h}1tgoS&vp?]U&ޠ`y&)A()]7z(˫LhV@5@AE;~#g.](TDxK!8:S}HF_1ZխZ;h, G0>5w502eM.폡bQňIt{9؍(dž z kLۼx8(lB4[AJL,A(U1T袘 ,TG2:tj?gI]u%#̸Rsm<9X 6t=d*6C\^v*KǑ vOIueZ#2+<ȍ@1]68`G{$KG{崽nvf6+ y_3ˑa1:G|_fsJLarr-cz6XJ|]HSG@֬+p9\j}N@Ω@"Z^9RǼ}=zMy&wȿ|P;@=;;o+DOI)77ZUz4v0ʁ!*0_e^fx-u-p[~J$Xܼfҭ3,\ZGFгCT[&9j0U3"(*f=*H|,he_VĞMDx/Ǟ@qB!kduƵP, G_"g߲AH|Db5՚x̦6] 3$@Ǒ ZXLݰqϽ"vɢᎲL*#u RtNm'-qy5N6MtŃo0igѦ٪qW@ #e[8?8/K2/NBV`&(lff]"k%Pn00G F6̗ Tf+J kNAB;rj ב`}>>G4%+8nb.Va|e8chqLt8v D2G ~:PO.Ԧ7]x)wĂDFei vBq9|uM͠l0@϶%\ Iqb#oW_: u%9Yv%uU=BLQQ7SD4( {,w0`J/jzfO9%>p*}NھF49?+Џ"N[ܠ͸$P8%@ vnS>E|,n qmdϗTdP^DS&?F,mׂ~YgP_2(Eꅓ!ވn&b Lh4s<t^>;غr249>  )aC 6ף9X_yOod۳AxрCHH6YL\X ^Q{Ý%20֍2 /QlY`{i ш^/Pؒg <)(<c#fhU2k˗3WTDIPg ~2~ 4pq*^,8g/|\i|:N}DnfH׺w4h}F۵,硼 [ͣF+ `sݎ%`x񻍍=8R4, 5l4O`kzsʭ%a{.MD 9dWw[8CL+XdQyǗ^ bkjq52Y!^GNr1vS*@I兿M㣤 /'Ik;NBzCDog7Ϩj-盱/TLXJ,5kk oft4㽰Ad") ,~B,Әial6jd . l׾fЬ\D s!X֟+b7(_ur3G2s % YAץ#d7l~Ԝk~w2E 9 _MS I@UvZ {Ot#TI텾KBޮ]o9Sz!/aZFΧҦTd1rl'k=Gqc[ i06ZV)ooj),ˡIGȵiH|Oε3kLaWHE&C/) ZlCV\#Rni0(Ȋ\ s|РՂ)\B=1;|*æg=6?Cj،~aʟ&w"JDl }IML4d&k(w_hA^VDmmY0p}a΄WVqX,Mc8k?a٬~*S>W~(mUVSdyTOczhXBH)<i'1/WN *$2 \•bFhޚ?EqC.퇾AYZc!&laP ~ˁ"mX?>H~X4a*XUܷ8[QqW>!`48BA%Z@Qp2Ӭ*@'sT#5;Ti)-,[,?Ż],P@:i]sy=.Lr(|fTE]N2"!1~v xqFȳz%L*9QJw?/m-G뽜SUņˉ{z)1Ԡ.yc-+ +ha'KFP>8#h'y3biAFXY{;:1Xay , +]PD萭7,/[N wu S/Hլ{%$"s^Taq`g^OjۚwO^tȳYĉJ@VK[U*}Eeqѯ.Io5^CMf BXlQ: #duݨYo4م^Ol!:΅ !g҆V&n]kZEePJT[{̈QhpV^da'@x} !ٰZ9R#sî_meHR|TnNTZꓔĠ۬ϥ`o[>yc9,001oŶi14jNj ,nrcXW$r'T? ÓW%qѾ I-3]lC دzm&[D( ɨ~ĀRWkD@G;'zu=xmתѲZo~G#d; uǙ/y//r{5rx.1Ơ18o f/2`̞.@JGيx )%;"C1yxseMbn3;Aq3+Uө'/6mI"@LBuM:?4+,hÊS ; USAh6i-xU9W Jfo>^-3Hyds9K qwz1+$94;r0ȝB?BQ <]&Hg / nr ZEDvRadgWfH9JQN O 0$fyԾ{! 7ǔԟK @,^7 ,16[n1ǘ"KĹSJ'HJG4nU @-ȥ{ &*qf(Ɋ0ۑ 'kON/{ o܂]:+!h;J&Ee9PUaYI긇}=Wd`@]c =c 8:}/! kcB%ǩw 0(zCv>>O(wqFn0;{pQ{s]5TzڇMY$ebMO[]>K3VDB7oQȥ u rL,;]r%5/Pb CZ)JI4ӒX32}.u&&Z9ANnm:}9ʪv&ĬA7S*z{Mh H<12n?F&M>{HR)l#W9(&{Sv4(&kT$6+/9B$W^gxAY,ser}U1.r˶_n@fi)?WGӸ8(ia43)`m0?&7~xZ-JE.G(Dz`)jG!=@m~UUiob4,r\Qrs{l(DSh\EozA7J[%q7=ųd6(j\0j&AJBڔձk4.= Fm/~0CQ^l]Z.!"P6&gv̬GXd3ؤ_*:yBsOxngtӟ0[h=^^iwR"~M]lMYh |78D`22 Xi)\FRq0gK~{?QL4zDr?^&[Ec߳%{k>S+JtB:y"Qs%@>s7=vpNzޚTݳ (a٢Z jses";<,PcM,!-|x#)T(+H$nyn1Q`(d9 g#xV-\_ECS%H 0Va AWjT%qC.ןClkǿJ%~pOoq<-ȩ{=LH/!#țɲgັW<? oIw_|dUY77NKcCel>92}8c[ 0,@GO(i~:|P̢-a,1y5@YXWbTkTWZϴ`6nŷ`u&}|"8Ijj J~죶+麂V@=z&o ee82TI,}7%ȏxsQ7 EPēJ}}7+zёXpjѱXA q!=d0ى5)]ë<۪'SOMgIȰ.mÿԣTf̀eG@N,ϫ:]͓eݱ]RĝM%g4h:*5BeU68NpךK%Ϳl$"cO8aE 0Tf3M. 6%g[j=gVVt+_:z|5I{[3ub=uf=Oa+,2#~KsHpد)|@KVMIISHsFa3=o\3eg#Z_%ZQ>gڻrg d ;*ÅR""V)Զ[>ȞiҚ"_ 2 @P3W4RGvD(S8?'Sz,RkӳZ|e'Xw>~-IR8kI~,e$ qz]n9+FI{gf娟`Llb_ 41%aͣ U-V2~4 R/u]z J(cӿj8Oʌ293}K j;;ҧ7ɮZQ-fpNh6zO_d-1A 1nNyGˑL'o[,.Fw+߹Ze-g^%)dpv  sׇ#7Y8\V4O,d*i}=ڰP,68JD`4"[Faz8˯Sc֨"Y'vZ<7dеRr>XuXd"xsrwrljH쎆9j;}8nwuO9iX!ijx |T^p^F8stsJۀUeZ3w,@@NA $k1~0NKtd2)06ԘE9 mIǖ:wDMB81@JvNw'&A\ۄѕrad`|:R+|OnB R8S{~Jذzt4" @2>*R<M6smfAʄIX' ٱN$cbڦ~-}IUu`}.:69N[ ߣ^'c6}Unqx]SYG'.qmM~uШqݡFB#,ر+=hZ5f(ਖ਼Px+vx`k X߷x v|x}g!PEeV0:>` Ri2ac%dtppavu'hMMobi5ɨ"kLo;Z-Nf?&RvWͧb*V0.<.^'nbY6q()+9Sǻa}'! B#A Q5zc! rBd q"}G#Ԝ6]Oq+%C_@T YIX- cɮcM5RW 'L}!#Wȩq8k7[Y3 O%=wB2*Oxv&'}k[l~6G#gJ~̇GLfI؏~y~@^)Ūi nQ٩s\F%"]Um&I\w* ,Wr8u@8B"H#s٩8b{|e ѣz&m"s?pxF_|plY,黌;jؔh⽨VZ Ȼi6-$\ xb%5;hI}p fGKdj6"NcX QTnߐeAªNy÷F{#Igۜ!<'iS*9}8x{LxZv]aulsio+JE=zg5 }~/G9ښ0^k*_}W&\)sQxWJou b*FPM\ͧC".63D_3}1y.K@ρ\9 &QMI/-3|dO)>huW@LMpZ{*qi.k!hm&?$?|Zb_r2Jf- ŲwD<|0=$-$4.MnƄ Ip 0`:"PG+BO!K+^a, {K欽HwbwVQgMdeFUqR~O }pB⏶x13x8|_ Q1

84jdAIZ_`P*xqyY֫.)_X@.B΋ O` ̓&Wz[07@]?P End7D{xSi!NMf$B/(l_x=-BSJ̡;$jb&Ӎ;QsY}H3Es1Dosӣ94^]Q0Z/sD'gjVES^ɍf.aMe<_= >tFi} X_nj%w\j-y2رQ3@z 1{\f_SÛci0N lfd߆:9XFQ8pIW' %ng\錾7j0qQƖk6w}F`1I?`|xBs6^EԃF ? ȮA,-ގ-nѭک gC:$誯_^v_;)~l2SU6R+@>A\#X؞!_0PPXH >NC7{ƭ@`&Z26VL>]dP!H ,! W ?Ѓ@E&døfZ8.,4^@ƶXaQRR^-fɴQ|Z_0 o e-SYLu\9}Rɢܥ;ݰXu-ΘVn-.%q\6~ĖkxrVXݺtb|_Wy3c Fyo䈢Ttr|?:EٹTQQÅy=|?Ia?fGO8{͓U^n]8=P/sv&U+ǂMX,<˰䩨~aݐJ\έ zӑw3?S@#" ~gJKp3vs/@'υH[ Ewt63ءUthFRGxvn6ں,B2F/+1 퓡apPmӽ֭Pz?~h}Sf::u B"0KxYC +al˽$yu+jрҁRX@F4μi, r)bWpMb^,5fjXt4J -vj%r0Lh@5 I$^Ȕ(7~xR?7Re]njCLbJh) 4V 0gcKz$KQxX`@6;3f/:[ؐ!QMb`F7%s~?s5BBDp챴St~jDL$ zCl[3f!( >1q\zH qR6uWKL`|"Q7]Hť6J"zˣߤߝ?5E "Pvl)`?*1 {IbҎ43-W~e|ϕaijZ%UG ِnN՛Teט[@1xtv5ſK}Cn߬%'dbrCMWc#)[z@&ᖀ:%kHhlL[|T߫p+ltj.^Te˰ک ~o?L}C#,!_W4YU2_s`Z_ViOJehqLl]"(BaG?H>+=kH*vǾӔkx HEkDۃgҲT}צFͨuQ̏(46ݝd4ٚfό|[~I)(wBEWWдBꓙn 1q,~R%vO*nL. 9!";7ۘ4 QͶqƝ&Go  lybJ;,kT ?˖:F.4Lޜ7ADf87Br+<8%y(`41o*QP8K4]>2v|kzOeo >b@|F)Y>Uĥ0\ pK2  .b|zN{mM0>_U6eC5QO *PަǼJ!mlo[ F^gn!P(%y}# 5NWYV|B!xR^Ӂ(cC'@AE sҶpj8Xu'dz@篝mĻh?\=Q<0KǶ ~P+G!/zTy~.R%693tyv--B`F}{Zuhh#\_+62D>$Rz{{Ϧ* sA[ kEL񋠥akҕ߄0@Hw~zFӀ^0e= ?8:.V^#F L V y9hĮEVWx41aQpR= T <x9NSx^6I0"mZ&01AmEد; MTfoPŸL(L|t+@T?Aaҿ#CȞ'B'xi ;& ੄PrqڭU9J PHKini!m1r(# nkX#_Q M0"wW>lZ.^BdǮoU_Ӫfk_ڴQ^6Uc8} h b|!ymlt@Q qм#(O`5[ "p ۄmu;yqC"1(@ }۳I2<98 3sئuۭ3zy{y3J'Cȇkޚƙ҈RD9iQGGMlPxb`00*X'dD$$ui=ޏqC%$H0S!sg);'dw>j`2fQ$S@}CfG6XIhƻ\AAxSfK6Mu~O$ ^:V^l_ (o^~4+kڑ3iwڿ˚lG0(tokߙxOY-p2 P*v/7FUCf/MO>A$_ƥCPj/_9a\%J $'_D}-2o+H^it _օ%Tv մ F쓞Vbqy aڱGdܵLn:N|t%w7 S2wR.zbk 4Q6R)FQ7R X6 XZ'D>(.Ctrs}awsgNt | )ryV4Σm'];X Jr Ci_n}:ޱiwvr|=0o^ִ㑾7Q3z<>H?0!B6n@[8ł#lh@'[?hյ_&Ao`RnFgO4ǤgPK+YϢ1#٬Ga>> %Cfw_`CD{UwkA1;) 7v>D5:t1}\@ _ړ:qӚlkC!_6U. j_U@bt {h}L~b6(УRI`'@ ' H 5iOD)fL5E}? JmZgp^\ i<(ޙ1[8^׮W4:ukcz+<2#4.18`f֢킔I6&DWDy=j3ITApzSQ> =¿U(X-&R[H}L{kS7sps'POc6xH cvL8a!{(i05>=0D!|e 1ĎH61PI  b*Д4)-p`cXJ#vBpb\dnSH]+VncQIϺhAM>,Z47*n F!V\#Lk˶QٓSLcCJ&Jvn.ʶCM vx%~l+ 1R EӼ20md|2:ٚ~,/)K865 ')z(t*ѱ%͇-'kHWƙa-W?f:1!G 1ER1HznjBRb7cngoN\]_A'b*'jw ?ۋ9;}C-Z)@jz& ]n{/&;$ۂӴH}!& k2p@z](FґqsQ)8`0iFѠ8SfA֚5ƳGbĝx[ ?>T]ldT\Q:ԑZ߾VFqͷ hu8h" B0CsiB*嗭IH=c/MOϣU{|l(#1EmB *m.혇;xt;B)a"Ò8%NNں_I`IP=0p#]aPȒ0Y:Ϗ(Gո)ۃ+,hNyDOtPTkod+HB:HUȘ]<8\͍@1hF:FeA0cC1g_h]0O6rl6n7nM%UObQ~KK~`ۓU7;`mb"^?gRO~KREEE87CFJL9ĸ\ @H(|Ի`>0cxѺ|ÄBCuT𤮷hԟlX *$mZp) mYӰK$1yA'='8fYΖtumAf Ǹk&祗on`!\v%;\P{psh$.+2-bpP_︻Ң~ۇxGnb-Jؾi!9ȷ./qaOjvZNpnadb w*g±z>Tݹ[T/i揟: 1 Ό06:T^%)SAPz?ZEiF[nq!!ِ$֍XYRlEh\`Hdloƀ_dKyG"_Վ2-.B/fB]tH<P"lxnevROY & K3s@6t&:~]!NO@-/ qiBh MRw#q(OIZ)+.(HLbjl]V<c.JpǣyT X a<(O7!P/s QR!́(흫vݡ6 h5 \, M>x {9VHR* { ,8`=M}񸘢]cjst/un͹4œUR fEv"p\Mq/OyCV$nFzݭ,}ܦ`E" Gvd *ez61Ol[̴{s$[#:8FH?P ,0OIOCBxL*Xx=&zVG`4}pV@$xהYlBM710E7D9?&{s!QR0Կ ]UF4Tf bp=L,KF _}WT=)B1ԅO stК:63eafY?9uk_sCx<-Mϑxv'  KJ&V% / 8 gܿl4m鸃@.Ն͚zDwKM(+tqphe9wVe@amM?F)[_mtZb;zX+wKA O&QB]hV%&zýW8~1)rZڈ  {.T!YiBF_A<#C v]vݏ_?WYon{wa>S1HC0?ɹKؕptKkC BSZHD=R;Ow}),o~+:.ʮvRJ@ay^3O:DFg5lv_SSn!Wd[7!zFUDE23@2unUbZgesAeŪX;K^XN VeY%dUq/Z)ÜU*.^#h܌:&`}ށ yY6KLHVPg(CmVc5qፚg@^Bʻ z+2[N<"#32wH8i,yj&KanRZ2Ьek9b Xa4.\r򠬎WU*Ȭv%c#fU2kP߀uI&4yLYFGA0dVI.-Qs+t2ݏn;G -ڝUL,POA X :[Z \֟?@PB54/n` `_K8T?EVp &\(*dŞ@; "ZB@L-,몎̕>-L@'}iG/ݳ*va G6oEs?& Wmu"Rm4cF%mn<0ej(}/ar31elNNۖj^HRې`$nj$Lvc<7[{3A8Ql?`t3^q&1pZCNxɿӼWAZJ5VMN#ʹ#cKՋ&5FjbxizPPQۡ[H|S_zk'hB|uaPMC.xQsHfVUMIjA=1w)taBQ7@{YZi[r#xw]ҶH'Ad: ?`n`I͕O' e'H"1C:MA6J!b]#+JePwɎ3G||QKaŦ+ɰ.Q`r\AJ憑5yHfeKmZ?B~ (~&\r]ZaL /R# Au:{<_pzjHV,MNo/#6JN S(i)5hڎ|je^Ly8T:1F?;#;e6: +U I ev%+%eܽ_ r>o{^YE0 %શ̲y_);Sf&nnE2E"te*f?^>_]qc) M7>y L~'ٸ]n3+$rJ!ewBαȈp$.@2J=^ܙބFcuŒyRh-U4M v_tA7=rLMʳSq8(9+ԛqI0/R%]M/ T +#0 itf~*eoXwʹg#Nau O F^ P4;w߼#x;SǒfwcPAFأ:(c|8NH']i45qB+=z`&-mOWfOW"^Fv[oeMxXL))|vAeay-60ކ 4k;Xg) q$d j8+0f;MPl-ov 㻫q!ؔ& ybrc 22s%,oWzMX~9U1[(xDF|XpR-[ڕ'P 48&!m}3^G2MyhĠt8L(2p#7ohRe}3@>VǹMڡ[IAhUWoJBzkCѲ c0 CcL7"xSI9K \KԠ0#|ž4Ly4N}Lי߸ګ}/DV<A?L_]29D2FN?LⴆI&|W,ܜ-#~M`Ο+P̒`$IIOw#z|cYPJ@ 1~Fow1T7,_*5km22؀ r_j_1PǣbH|\3DnO !ju6S;ٛz~i *N_S"q),@(u<ܠcOa*Tw@5~W*bS&Ne1f}xlsĤVT_DloG?RTF $amq=W_deF0=hMǐ̓6f4z":< yAkF:\]NO&N4=*7|k{Z4%ոUb5z`GۇyPjչƠ]; }tZ\ޕaDλS#ȇ^FR03~;v>< OQE=YPD=i?)ފܴUd.7:!ʼn!d"'boQ(BLQPAџ Qs)^OBU*aZ&[c |za&Htþ7FSzL/SWUo;[%RFH>fHތ,T3qOe Lwt@[k8c1oxCڰ%4O:Ʀ.ZNX^0tfBmͱ9ϛL1x-M]Kz!Tfpj'۸2r4jJA>(cYh'hxG!Ϧ^G>bf8$olP!H#~olαH3-JV ڧS*ۓw85M$GF]}~AۊmN]\VW4`\cVlL|Ô먆);H()oh`}*բp~u[ar{W/YwśH)C ^]ځ!##LrMQ?[.)|<,ǔȘVAD;'Ф M3PЩY$MBB8,˱u 8b?ЖsnxmInᄭb$Gs?q;&Ws4ds!A+̺ +l\; Nwus.pZ$Uτ|7 &F]-yZ-ޝ5hS5i=,}!Kk;ޯs&Ob$%^}MGDŘZGtS{X8H9v}|i\XjQ}̟BK<-mk6[?/Ξ߯otرF~UK<7- >kp~pp!4IQDKPD B0l!;kEY,M`rd2p˂+HbC5LFpg$ANa)=u1( |2|qЅDJhyªT]v1n.(Qx3R֜l`+-?γ T%m3V_ -gF0+,69Fk&< Ÿ?6Cle-t~><`uSBÃ̐Ty^g`icBaC(L;E'$/Z4}#eCZ):fk(eAW}<V/fBВ,u^֚Mhڨ[+D?aR6- )ݼwo^}v޹$cO0YƬSčW98WG*킶]2m\|2Asw $,h3f 2T],&tHM?Cqw80m [0SV~sD 3Վ-'I>"Z/Ppl!'Ɨ!YqOiL3NS7m;}:s\,9%y#8̤eϻ=!1b 8R{v4rY䷋+my`ߣԱ1B)m.wpOfVuA$ ʷ<[ײ2Cܦ[5Fb\nP~AA}MrٌΟB/]!^j稗$@19 7f4yQ1)7%>ԢbGZYNP1sReXnMZTsgĊW oK4Tt+^:aюܒ/4%*2_2t`l\]~Y8އ>zp c{<>׽eqtlatF,jI|`>{VlG0@gx5 *pܔPtR+2\ZdX@ էY jYD?+c[{?i(f8]Q_LU!U_TM]D / ‡?AFXf3sE2ErgjNgX bzϾVU~U`qIсvrҏ~YylrHMiwJ>$=NT5w4Gyn<$ڂf'i W4cH,vV: #jdPjK" a~܄d|P,K{%0WfW`7O~iu,ћb֓TF ۘ'OMѧ۲?ԙQ 6պ6! |ow%Ua˟(<;=9~'ZA3VZbt1ۖO=X53!.3ۖ ID( _OYOoǥ46$vcu[(hiXBue$U^B(QYbI-f\o ^xW[Ygkx:A0hvLy~Z`<":ދ*w#ՉD9' Zr2cFJH'De^Q"mJN&Ut"E9^ KB: A݅XHLnumNp_L";*~#AmNT*og M)"|ZL&47Ck>א87gonjgd^uNG5i?h/Dq׏GL g =fS |Uhh#@E+Ϭp{2_DZy={R$pprB_čė}j<:$%茸6-9gm7sC-q0k#imÆܦdZ,2fԧ{"R l F`!N:﴾e 8ρ􁅑޽+>c|@[u:ӈƩƵDnJ<)zY1 r >7~1Q`q8-2`$n-pa!ɾhؐ!d I5 K XAܻCاvvp"&7Sf:W7|&sX~Ά[>&k9:qP'74Gv$ÂoA[2нUg h[bŲZAZ2(١)EPf#G yث[o+}E3|'_ySj94RӾ/lYޥQJBŰeQxn3:>,R͌"/?.{<@zԒrx~ vRYq iw)pZqK,sFJoOӜş064Y䜧Iu/DE!mtNk̒+ɿrG=מBA8By)iJ:қ9,.kTg;4^>e12=P_ZH)v=U&U^ .2,f]3wS"#w5O{UQ-%I?2~"2=<.OTƂ/]X=qˊ" A2.4k@$0|бT$G B"Eգ>mb߼4?$uʎ*%HNCV\焂ZgQumnsMcsʚsAq߾q{W7?i*A5砊,!Sm FS$㾉wd$,~iYoUgR^"ӴŹ&LLd-u;qZA5r<!ygpr\D52ج' >Q|x_q6ܺ [/;ȢK`*FO]P,5Y!u7 ZKTg!\+0e\nX oH$?f |/\ e PW1 I LS 0"з 2@~ Q h6Ļh=<-IQ>Hk-6o L1ƨ)ƟxHJvP j"RBR6:A6|K]u u Msj+1*V{iVndnSE)=+;;xwX~[1iC>.h`ĻtVGfias N?U3s[! *]@?g_piR+a$r1k EV>3+.Qr!rV11jgi^' A24&!q Nj`o_X=QVUÊ 3*, Cf!mbC~\AVȉ8L(򷜌u똏 {m _OTK0Npz+!',N1}%sA 91@488H{mY  ~B's j{M)>ξsf$*&ƞ6,< TVqXu.%eO0ə,*:d`Ki)pZm d5B8mp^h#SgE;8a Gh&-jxci߭^{hY(]ҨЉ~#~XJt9ڬZ5 L bZPlHӌB bRt!a2y-_(R.C9wkfw4f.^ͲP,Uw40bjAwB$9LbAOcCjC]zBgC/fNZVtN˽ZYR ͹\vnc%im+crq-.V[UbElSAVe~ ]QWei};noFz' X&@#)&g;p[Hڽmuòƞk=sm]b8exD~ڤb;1O-?pNqs;vڸ }Of :8='rD#K;BI]kof-O ;+lN̬=r@Jj2f)so\Ht/D$|PZʯ"~ƋW(.I&`"-߲JT`* pϐ(Ia-!|CTfxn]UF#2625S&j||3V?uӏ_kA*e 3>vWۓLkǑSpCRƸK`. UK ϻO"mN'^<ExD=Ţ`kL0V_~y^S Іů.FC1 Z}1_78?YɿMNM 0ڠOfk*}&GgJ=M,8ء?@QC'3A /[MB@!&"_i #wP玜a'c5lYV3Xچ͚bu+†dlS]s>?z9zECėK$l(:i꜂|P|%r C$R^M OP?̸wԃ4;JyJ]A JW2x^u3߈է7Loߛ փ2޹?c?+)I eD7C25!i?H9kU7?C_IsMngC-"áG-%#Ļcpic1آ ;=03QP# ޺M)Ӵ\Y9ie /,v6SP"hx2h_[ܤq/c/`']UYkӔcY>%)QŎ[ҧ=NpV1gb)yClXyzkWM ʤ#s ʢA M -x߅8h@)%}>!|[Av95Ca 0~ VL:;Wac l1P?M. YX\Ɲ XrG-!/dAOn P9y'/W L ytowɪ N *= !`5qGam[v#xbKU'w)DBm,XT)0XƾG4V@piQ[/2y"jc~Ȝ̆&_l0l*'cT9NG5ƹe_|' Ÿ5 cYy:Vv,T;.믶mBw>id7qj_ `$Dg[;?[zPϼ Y B9rӎ!Z.d$v&ﲆJrc 9~) !͍QDZA>Cbd^ۮjUvS.R[<N2QQ aHνsj*j;i#~h Bxg@>:dIQ\^%Uxgʦvڤg-6[Lϻ%5#.J%zTE޵mʠMULu}:.PnyDG1a@|> xDWxd|$?ד6wx$ʼnI_<0Ħ|CwT*6RK.&/ŋ9~q٨"a?R-?79HzqǠBAWkىF #L#_OP wď#}uA@n}P%D; f4iQk[|y4q ]<70'bZkACKBZO> CTo#Ca5I6zrnS;R؜ mfHW3wGYBjP}kjGA:L=;^;9Pna l "?1&P=[b"sfH4g%&;Tv2н'i=S1{!$eZpPe|}1֥VÁ٫^P)GY W8d>okȇ P{FeMK]g=Љfpɺo\ϯco07$F9Tlo"sEUDhNQiI.y. EEqK#Zvȳ}!+K'36iz.HdR~.8.#b—J7jh~,z-]܌~%^'k_cOUhf(0&84?E) @܀邇ɳ<5/ fQ7kʙ{0be'H-GGo|z;^L\?S:[똺qy/0ZV힡jmP/_s} A E1s3y T>Ui5YVRt`Vwɒ ݉1uӾYYM>cCE5 >(jL|⪘J/),$T۝iTq8McB|1R jI/)ܟO7Mf*C>BWV+9 tb(", tWu\s]AtAe"w`I!vՁ=x=^e2@ؿZ]=&Ut1F~Y'^ ƃ59;w4PM_WOcfɳ X8[\d{WmdXZE0i#N2m"F $eh&ny_Ù0(z$aAR]IAJ-NiUl) (& )9.U *=}1eXu+vڮsAK<T\];;BTKA(,+&ӵ7 8 i (tȬJvs4eCF^E6=ǕJ DOsIؠXs'Z 0'`"-^l5 2WHˎ=jXxAwM]ݟabȽQT6&(>-2=m"m6ueߣxLLA%<|pZYc(>D!\鏈QYMl C"TNbp ;|2t9Q2pZ*=%ƾj$R9 $4љaX@a+XrG^V_7ٙRd\:=&6֡vc 3.tHXBZf؇ZaP^A;ߛ껎& |R{#Kff2ءHa8OԃHD ~hY#a7A(O})RJP= i6҆vQ6uhyr>v[]ED9yN2ʚ40KOK|v +g'NrS>ɤ8=櫹:IQnjע9di:#58Xj{&xWD.|Όh~YWx喑'i=a88Bc|[#;$J!Ɨ}k9s1'< e}鴣.}$wV؉xGb*/͝ds_8A(UG9+|{pn=Y#w\iK9zH&]S#YAk ^SZ^!!=lM Cbn<Qd/ËUH"*Z{a$H7/0RmP 2?>o`ϭ`)M5 dC@CTET|ɗ3/ovxacc4@5FQ_Aq_sOgC/UF6KΨx5[wh1&Im"S#VOFF@OΒ!ޖ d[|9Go׻,TxkVIC(f_&6{(.Sj[ fL9Qrc$9&T^ m .s=R rQ^pp<\D}qocӮP8֬ %ZCw[/F=}.aWIZX,lm~vS]R|:Ze\^zLoti@GK[Jd 6@)k ;c|H9-&!m}#p%<56h/_g[5 mǫ 8;ۡvH&O="ȥcsZ؇jLjaB0 e]& im#w>v$pT &p@Q:L%0'c.Zxd19.#CJo [#,<+Z%m \-O <߾4Ia^_u,"Y.QQ酻Kwn90۲zKy;iPUac'̥wr 0ܩW(tΓ&^aᏌ ",Pv(d'9\ {^Y-Mɳ۵ eRE )}~Q9H3m3H `TtzoInF@PFh|E~i7|6\h僷 мC84xs Kp'L Gӎ"G2F\ xQT|,,E~4}6d.ӓ4I՞[$j=H6tz7-S-fJd`Ͽ%twH9 3!mq[DY"ڣ/{W5KLʊO 윃 kl{%qx'0=3[S@obutȷ|!9h@lЬ =0l_]5eaF=StSLisӶ+!,K# X6/bk\ߥ(aoj1ҋ$t,IVDǴەk`m`WFQɧ^hrо|/|*=G|.X,ϹyVƐǪwzC[JG&@+m 7qla[u7d|VʜeW4CO§}PX>8TRRFU 9<|Ӥ}DD'q" eET'.[Z}y-,m*0"@Akݑ\@v5&&km`[D,2mL|Bה3z)ܣCB/@߷Kic׋#pz>ʡ˹'TV}Pz3Ȏ̎["Wk{z8XʛEVbc/C L-;O.(T&s_BI!v ϚV4Q@JquK^`r%*2=3`VbνdE,7<\~\?e JFn;5^ՋhD_ID1 SFChX!9,9؛\x UmdM5h5&>lY&:3i*ۙnkOjPt MDR?7W~5> 0<7kp15@9)1Ib_d8 iޖ&`l2lZsgAJ<.Hoc$+b⮆Bx 8{=;N :YnrZyyg=CUO$\7{(+"S?~ v= IWW{+*uhYB׮Ti-؍.=ЩuAn+H%"e#o<?PbƐB2*/= Xiz @QFe~pҐ3cl0;̐x>I[lUd h~r>۲̲6'煰Hfdx.&jZJwxpv)cFֶ=&˕&. aB,e)NJ"t Jͭة~+>Z8#+QkG'#>uJ2"`|l96n7v0e:6 "o̎ .EQTR :M?=uB ˝`ÊjbI m۩b't? zQW k>OZWo+Rh8`7dzIs D2;y$:Ȝ0H Uu )Q4rle txRXd 1KsGbAKBclrYad5A~‰$^#tyV2ɱktWD?wN\x@JOn.(B3? E k$;8/J!d2,/џ6߾"qe>qȡ~-V -⋧ad% zbG_QAA l2=UVgsGo dO7uYwv(&Eo$c'PyD@@ '%P> ,F@}@Rz&%7woNU@$ i'֕ %%a<UΚ8dI+{ Ie@ \WXr؏ꭦ@]o VdsDBBr:*?j.Dܧ k&VPTx-L:(eiUg~_DFⱟtǒ.Btov7@c]I8Θ'Fu_m}}&%( 1d;N2WS_BG KZ1[i;/ܛefP~ᛛ|FQSJAk0&]|{&J䴅~JjA<[MABņ&8mohukdJb&7^^aQr?PaGwr6/rm Lffro" 1Ed#>ne  VryZEonpARH4 k! aV"mT*!Ɇ|d)ˮ').O *ߢcy>@gt- F޾[]6+L࿆E-9u~0^(rA'fޟ(nIB׮e6W:NRvT/3zd"HE ~ErZAe Y}&wtZ ςd͈KBo2sZ>I v+pPu.&4Ɛ{Uc\˥AR>F벣q)()XҺ_@L,Q̼Π R'o TnfF4|(Y |d|0$@p .͆"{/l(&cY9]Vje^LE̋L I{SC!`\Bc/QɔXfϛ @|g=IG b [8r9&i5G5<.&mr:MI!_謑l3Zh(b>p !p `;(V̯%+ET%hv#i5yEս FU܃(h8X^|%*=Kg݇ yS0"}-G25C="W+{Eºzc~ku|$VaGY\Y"|edm=[-P%zLwvMy3xkw"rh =Q'Z?b"L.U͖M ݢW_ǯ0c~ *Y b72hԘ<.fnm"YD N$![rz@ރDQ^8ݚ<'J(tJI'5zx>f3LdX.ɇqSˉhZ\O1GW:/FG[:>gv\"eM(/(DRY9Lv@))^zN+m!ҏ89CeUQ;r+C+FKg#T~t: {jip (YZd8l./chTJ:k!@%!)4&I"߶+}NƿRƔ5Qviì1OfH? iH`{?)%@FJ*z/\_u<{y cd'_::l̄BL3gbL: dVX,8[ ,qmRX +g$g@lN3UpJN V&c0e.X>1ޕd'+, a# ֛OĠdPԱR4zQ[x,`owLΏ!S-hΔl1L`LxP0sTwn1ͮ\y~kMGBd&R6r(Zfy ԬG;Et<:nJ/OdĈu=F ]7`^1Dm5%4&"}0i&7Ay8m[/_I% aÅd}ዓOS9DU/ͬ<Л4x]d(B=YX<*fXYi٘>^1U1Q>YkǏoo\@a{^X66BUX יTU^yЄdc1FeyKJTsQ,r갎O5I/M~ƛgŢ;$^Z5UH`uT>A,>G\+^g 7 GAWChHk)M8pdw,Ꝝ-Eߩ{huu* غK@*˝. ?maE -Qxit{G8Ya&d4m+>g2bF]~ EHXݒP$ku_KHԮ0?uo.#x9Z+;IeD I/Lw)":?{4Wq$oL[4jv^m>v.IR.+&i7/yyPoӒa݁Yd^0LzpqtpqϾ-FePF (fd@bd~ˎ!'iMx[}T7G r[.6)dv 19B+]F%LVscE׆2i(X͏oN2ZN;Vr$SXhfbJ`[wd%Cb1ءϾ{iEVgpbb!uuW+M똅@<8iW)h7 znSr*L]_>?/UeREXtu?%Q>jx,i ~UcTU9rZO<K(A?!gGm0^Kѷ*itT{ $9T`eoJAXx`7lcl6lkt0wC#+_buCAh]I2eh6˨мml<Az5\qysQVe7$OUwx:h 6L%V&k=boB/0Pm.b,'(:jvyF*53u|O)lhNȲ}LZЃ'1+B`2dA#rʆ <H/rM}s|^S gT]B^pȒI!P_v) OBCz95?hVݱ2bmzek@6jĻ|-{yI Q{<1p@Yd|h[jT~tBA hrJ/I^HENĻG6Bqӵ@ār-*O:d9WG:)U}]'g"xy8Eb:Q{eh|hv*ٴư2t|*l˻[Ļ!>0 B+u "L*ypr#9p#snIOW8 ^8WSgӀm;S弟&!IײA`W "bsn6ַ~w )!7?EyYޯiOB\eQ?pw,U9qYI+9Ef4 i,3(ҦÍY ͌Ewz{i{WÀ A$\JBɍ X[SQ]r4:xD >\v4gJ8~BJ¾G] 0L,`$Su*ypC2sR*3ow9;WzsLFы4;TlyAH `p.({~d Q0WtV}S[ :Z'U6&ݳ8'0o+kZ1/]0/Ak7'QElj}Zp${뒰,&B8%G:l"K/@P.da*YLGLiJ5*c!Ll<8yd yUzzDcf%Fhd4dr* nq?pYR:C pWjwV_o kD|CH?q0c8F3$Qρ^[^ύZfT&zÉM,z1,gTBXɂ>^~qjbkL} M-mBgf_L3gkvSjWz98…`*MG'S1tt$we,'G}(׾'RE2OȤ7Ri IA*2mLqDi3ZQQCJ#l2eܼoq5)讟 ஁5ͦPXSB]YU>hkкj "=ϫۮ}'vN^:AI'7lôɫ&UI<ãk_EnXacub_| M1b?.sGVD tQUWc$tv=,*4vIkkg6;FX@"Q?5=-Ù!Kz36K%|+[ n{ޡMZ4_}nMiAm_'Tءi7]7F{ c ^qߟqMu7pB9g"?^xʄӮA$ (o W \ҥms!N4jRTj P;6Fm|w؃?n{U|)d5(652Xc5lQ&SNT4S yh8Cy hq" ƁI |23?u&0O[xh03gTstF@kQsF_-~K/sU'tNM%]Rp^/MD[Y~Fliz"m#?QNd~!`s"[qV_G!Eq^K ,\_/D=YS50Dp phY ѐ&3[ /] OLK/jP*L H*1tkW-ԈJ~zArZShQW_4a"-(;EÒ^Z[Fi YOA k!A:cb_=a%H8t+U! _#FiN#M @ʔ:x9`v\Iut$YUy6.>BXQ+CQg$ $~/I[C{@I3BNvAXc8{ceGljܤBA~fIq\S5D!BE[l<[rGS'_I`lT폨' R-JhɭO86˨*3gu jQZ.w'>k?Ze.{WZQc "vVH'# {3 eGu.jBNy&_' O!",'Rn@f!'yΔ2v_Krvo 􊊇Sp {>]6sY5j=KRP3s3HpW" 8zD-~]r8]SwI2%;=LY7M FhabaxW b);fмMd9E&ga‹w֏@#G_ ![U >b |{??H8v P`ofLx^>#̶WqmoLks0ƍˆ[̎n{L@Eǽpco? ~[?nQ87CMt!a>\F\踐e{v4l/ br8QFz&WgC|p[7cI9ev-Jռܸ2IĉnsRy@?[p>6.3"/sӬ~MG9AQx'Ӣ(aTz v%ykJnO1U[v=.ivNB YDDn9Ň2_s!i{VXy5R5+S;paM];N<@1*]|?1$gu~̠XC DkоO&!Ӝul٥i4[pR7ֱ=nq7سQi͕ސI_X/RyǺ Z.^uce it`<_|Q;y#XG+rIiT%yXo_V[_Z7}LϢL,0/ӒCd0脽Xg^UvӬ>DhZ+ "(Z~Sݒiu2HNE5YKμ(J#E6(d&].f K| mX{6~$4piQlr zz5CHIA,yaP+ym>L=P6za) *pqw_#Mwk5oPE˂yO.ll Ї1T.w bTU~aq+|)ZV~oUیz@6q8x. TbKBp4TUnI!`29ryu!x8+cU]攠Z6SDL{*=%6YsȻy-V&GANcuՎ2}E<3vTy&(I]n'Kp)X6LlόQcK3g(>WSNGDʆ=vJC qqR?sS!~&Ǵ:_cr{nnpQgSDᓋ(JsOlm2oA3|X6h U+}M2'cGNLaeCCK~&%`2mH[^)CD18Pvq:0}#B/@iXKap)F>e]A=  Ec9%%x{FbrJ[es26s'e x< x^y$PsBrK))N|`NO" Nr:}fo!84߼;g4ݮ+(BAb&}=k):d 듮lW\9;ԕ[4knK3M7` |EDi3~k yW ml 'tVwXU癬ks ]mg p=mD(4upԆ];pKT&2~^Nv#0`#K הiߝ>Ʃˑe^NN8pRȌɦ)%1{aM_#sn77P7uyt5rz W}4qZV#;L5ݝD;a1?oaIfJjYTy[;/LUa_W+)NW#b[~,j;dĴcEoBRႸ&B#&_zLu;3*II߫L;Z6+ <τHZx_1?ƸX>#s A| /s!⹗q+^F!ۢ_*y!g=\/H=Cx%AF٠RșoN˔%X7a׽0xӖچDw)ADZ-cʶ9S_l7! 'ҩt6ZL3Y-s+ -۔'@T%|G𹨦Hn-'܀)mqwOzcWAE64P5ݡ Nh:̓/&R. IʕRk'yvyp$>4KO!U˙gƠ3UmVu]ʮU =<P~QNBa4tj9 97ʅ5%xS 5W^GfG8! ko-sڒ/Ƀ~ ?s֧\Ѝ3oQ ɟ Ȗ6:A$/&\vH4ǂ??'*-/@ _fo쬗{7 q&+锼t2pΕAI ;GV# 'sq {mB(ƐQ9!ֹr>޶- |t6_wy:c!{c긚Hz$2Nb|E Te/bSpAڬ(7Cv/6y76.<;_ojM*ou܈,y:S7zPAP%% CqmH}S,R: $y}SHtୱGxN PaVM'-OΨ<Hδ-@[7Y[-(ۅ>lXެAɐlIG#:;?<° ?`Y(-6C~QQ TyS -} -\?K.ݸiZ1_)zm6օHL8zSfDop %PTg*j_Ow|UcbAOhW73ñ8X'e+`Z>]hgzvLXꇫZɴ_X%)ٞ(.:+ uWk:jp $̇u yS?0|MRUCck@?uϏUCōC\{zYfP8+6ϔ-^(ge\gz>Uh%R@L~8FuuPHXb$-!_3rqJq6D) ,-o.B#ýX}3R}C!g+Ʈ& F˸u!} b=k -d*2x#Fp^;ٻ;ӽ)ss Į>&g{ӪO:/FgϠq;49& RRT̛8 T\Q<Ic "h IuTQwgLBLm[9dEVtR8gj?fHd/8ȟ4ru/u3|3YzΊԏ̶M+{Ы~#`rb *NH1ohz)B[D43qo,nUчCL Ӓf(xlW-o5V6WYPM~6Y'CSð-Ռx?A|Jg3so&~F6+caz1PzY0RP:Mۚ˛c.# h].cv,)dӴuHx@"*UF,23:63, sOvzX+,}<G-2>̩/GO/jQyYkZޙZB+ wq'@]XA Ks瑋6\<8O:hDSkfCQ]9[C @K/}UCK+qaꈟ`8> L@_l+TcIeAu%o_m2ji#r}sPIFp.^XLF( 1 1MkOc6&-UgftphsG U11@זh"ԳKlnvFQ`ѾU>Ti3G32stFsʞS Rnx_Cc}[pW-'kҀp+~vgU3v +B)\G or|(v-~:R=ڠ zEsHK4n `nYMӱЕ.xץfz=}˩Fe^|FT᜼K2 j_i+4iR^w:C{!U8mCʐWt #ûV@%kU,JM[y&W<.1\5bPOFOKPqAB%}16vJӮ4= O dEiN~m;N%iw c5{Ay&͛ p1>ԍ$ƤqI 9v $,"?r@K`|<q1o_:RQ[U+ #ӎBr3u4.{HѮU1;z=ĴCdO G\ܝ{Gk 'X*1{|~eZ)LiiR(pҟF#Gk0t9*nSj|lbߥJ3 0n[e @1iajTxJ\ZGssA2%PO1^mn),nn"zޥV "NBM=]Oa0ja}xB򢓟wmN [^3TH9w\lxZHy\7"}^ 2G)4ѝSG%XAnomÞlI4Pt&Y8  }.tVVcP&gߗ8 ">u@Mr Y5Aҕ7 p%Rmh!`&Id!R{ΨG<8yD+tx[4DqjP(1ሥOH`@loJm=r-@_w/z"NNOj7̡XɧB\)C&fB ~NjJ{Z8`{כP+R6cm^a uص޻ ͚JBpgO?j!A+SWE+ӵЇ{&i؝܆b%\f_iE("Ioc[JcԛLPkSZss_n ^Rd"vke\vaE2]vY#`JTz 4$ aR:dN6$n]kD쎷{ j TPL ~tbӴW 4h4EC5h$3ϚzGSSq5}a2vҫh:}q5W ̔qmj~ne ⪯ zzc>sJL5KA4NP^+&ꖨOuw4vbT2![0/f'>Ն,;,ٸ' $432/+GzD0y3oB"g2cRbt2Zş혺Aȏ?uׅ_.Pofs&(ɩP Gn*h(-P괷{5}̋bgKO[Ş"Kި*;p;xw偁B[&oHrRyytB밊!wgyނv BƊ>duW~Skj$%0S^Z%W]VEp?A|"ĒRJ[,ǮsS,6ֵOrƇ3>jSU $sR؋FEPfk˅JOoGv4\?b2O^)_8XK 8/I7qGרj7dDY9H=6QGwMlqg>)^$U;t>QT釈гbV Ԅ-nD'j8V H_LH顅! &g['m E -#' ,nn=1L';~$y P@x7.}H x6WLoCWF"*Pfy? C_C~z')N/4ڶT vK؉d[w-yYgH0cH7%CɯUSDclEOȃ$hB9^f kϵ"7 * \_lcwtyvr|2RDub)hAKY,NDx;#uϿZRhd}hIbl43J‚2^}MBEX>kV;ȘlwABU;أ4m( 0$UC G2b|è s,&]z]#NO/>Et-Y67O{X?%4b\4;&ϻwCGhјtcJEDrHg4s-n Tn?Ѳ(ͭoO )3pE40ezLˎxs;J:heXr?K*7E݇ШF#a}tdZ5f]$P93}6e89`T,}#.&3&AŖ~i:Ch#HіB/vWCjCuMhamP+E_]D:x5v: r{]'vڵrTbHNѾ;\P{vfLf,ȳ2j{oh{ۛ^Y eWC拙\r$W {A1z;zYLf䛦HƙF孲JaVίG_։VE ': I+xK8X.e-3=АuyÁt+!*P87J 4TL#%ﮭC mwWJceqzIG YEmv0%54U >pH Yɟ:=ArIBj,VF&Gj0.r#l)?zuMeq,3J!Q׉E=H8Kf_}!gďӫ{{P.h{1I$Xv׽}Gwd$ jLԕi?g&vS|OB;P߫&$+.ѨB}wwZֳ3-_Fɴʖ@Egxf;3Ud ?,]'|Cȟ~JQZQS52 [-30e,C'Kng72ٸ`)G2? d6*e1%@y-c{: rb;rs< ;l*FҰll%`5p4,(.4kbh_5ޘDbA%e=`<-U$)Dz?ة~ 1pWۀ5Zo@7P|0:D S;u~x(:'qm7WfT 1['3ڽcZ! iΝ`Laѝyie+uBn8 Dz//E}蟾+C "~R(@0a-/؍?&aeAGՃ3B'LnojFKWAw$0*b98DCq kIU!ᝠHa>`.FvVJr42܅tUEų |$ޘz/Z:sQZ&^ȵR+<pⶂp3|wvIws4TnȆ1K[ `M[@ DzK3[ӀöS-Z Ibr;S U7kMjt>PAߡ_PwGӖ<Ð?Qh ZUZieU T)uenpUA$(O*~87Եv FU7uvcLDstWI2 \i.!ܡbU_\ei`;b&X'VO̊\ gqˤ =ݨhؾ4)E-aMЦu@Y%qHKJL0a3j.e;&(D耻Egi$7ƯR}猿!N 9u_6%3oby=a]G0?2iAshY{_A^T1!;x#iTg֦g4jjR/T^z +6 jؽ/~:dJ@-BW9p~Ӵy'./iλݿhF!֋$HˏkhU]2ND&]5t?Fь2@/8;VmQ -rysU[=z) fj~ݴ-|0f.s_G Vs-ܠŚKIi |:o z(]&EC}39ȏ}zrR#yX )MǰR'NM^Iע e & {fzgDhL&4 6A ;%a98ۥ2X,<nowh05si{5pa%6?aՎ/0t a^}41iEcd#.'Ll /9|v&ilp(; N7N4ӣƑ5wn(KE\5DCKpIR>Uh[e"P7*/u=Mh<abGSĔ Tzɯ[O,UZ1t!E2F(W>>3ICq(F\Iʻx Ƙ\l?WF Nkm '.3DDԝ!>ڄ?sc!јcdnh;U%PLmT4.,Sv39>E*.L~=* tpOz逑X*1% :Z+#bMUU0ѵQ̳&TsP:PyC,"@sC+TQX ~o@IӲK$K^~k*HxXr$cO`5W` D;X˦{';.Fg"M 9B[=*z =ɮZ>Y6=.GT}d\EZ!2>LYseEuűz\1${3;}}gԌhXR˃+ig> ͧ(ޯ7*$/o5 &[oN0Z8 ƱjR[v&|dҙF= Eq Ms;3ޒk[OaZ=tlqS'pwZ]`r!>R2Ld&uІ\Kp| 1]vQS֮D;gi SpyލeFhDM4BlRgKMB[%( 'ӓqf)&S"GN[}7 QWECuw^fr@$A<^ȍyԨ~)yK:g(8"$ v9%RRPO8%T#{ `ȄAK14Im|&GۄűYcFl&u"o@1wC"-p[_.3|{nkKDgxNC};m$ Q_~)O\]ӀEm lpZELHq;Ƅ5OAڌC^ zYVyfPJləfEeZj;?pm".B(Y8ߋ֎(0`7QGHhzD۩Ӽ l7fn9N)slD#:y1ŏ8?GRg1l(/MAxaJ>Չpʓ]dUݧM~.s=MBU$LIn7g/픭. Qk2ߗp=,tK@ϐ<[ F6J1"K(Lk 9Nī;vTY{g NЖIP(#M*q EA~᝖>*;"Ɍv8A-+7N:]"'avmjP4-T_X{8"jəd#,M1t*x Ye7]RтsCĜ|yos *Q)չl BdƷ݈1Ǫf8)L @+r^p$KyYK|xjC7wG4AANPziU(ۃ^RLJ*$ tAJR)[W+Pj;$u#$)G `1nd 6i[-mBy-D8Dxf9I@~&tvDɟtٰFq7Pbsmz-!i$ uӡ2oY7B&d^sj[0 hSU!M9Dsr]1 ~IcT{[e`ٲM^[1%n2sSȫfu")LvMm1=&+NtoQ8xSh%8V F08e|A"e.CmHxVpû]q2 QOFdz5Cp|.io8|'V^0୴@6d`h&A%%c y鏪Ot|W- Mҥ@ͬSM4ʵ"_ sG.o7{"KO,3v.A,f8Rǯ{mbB} 9kƁy5ס%D=R|4؀z9k$Vb}>,@G$b(YSHn,\oW6sм 弈\kRFʊ=qֱTn^;Wt z/46gx"DZ3 Pu:õ3"=-ʠ*!_6cypNXlϻ"& [{|P#Ar?TM6=?؄mZ/{?& s?LD}f<Ɵdϙ."]kčpﳏEhvwJ&h.pG֓hW&_o"ڱĀ1}0mİGSóڍcX;j-]zq$ A<_HoӧlFy[s8@AOpsrAm. VRyLkj2W1`\6x$c>An,2xq{>m50|ܢC&sU tqh2"ԃ'yN&m%s,jsN޸L+.G1JͿ<}<2Jp=ZLnCʯz1 dD#hfϠN(eN.cD@XIUZL 3־Wul9CfZgхiZ_SAz]E,"]{͸ާ3W0. Q/5Gv38Dlh:~Z[50=n Tx(+У@uKN7_; GpVXX2ēH{%N߷䒖K};_u˽(pteJεIE[E/(ׇ"%m\Ov eug #"]տfP9Ƴ [tM+_w* /;xUf)s V⺿IO|U Z! Uh{<%,:[Ï Jm V$3{Ik58T8r{[1GO+5g dKcXddUFXy?1"cЧ#U:yW=.GnaH+U@%BUM<;V-Q=5J͟w& XGq x>%`PВ'- }5c3;dģW6a>]Oz{6 d|.u,-x鰗,$@)Hf/LP`Y1eyGµncyiۓw$ SE0 /qBٺ}` |QX)wsQebV3W=(1b7뫤V^V)j_jP7dBX$k;svж-$!Gl;uRhe`2 V+92/<$kyQS%u6qVL07a< 1F6 Ix 0$j Nc,GA9kex #)@ *Oې#db%Z0#20&39fB.k޲3>ՌiEPׇR`p#X.I=E+D׸ãЪ3nǸuPlߢ[0}FSL0`QX:c+[BJ6kcNf0YHV%blgUU={8\FM'Z#> cm(M'+ƒTpKc5)z5_x, B!'@Nc`곘Cԋo D1=ډ΋L, 7SS Ҏ)SWHBby3a Et~O mH,h{i:@9fW_ э)WwC\>mZD VO,"; a{HQ "~htfR#1שBz_w~g:dmwFS:3mn!v1b1**w]݌3x- ͖0}n;0 @黮J}vɛ1- 4MHn\ʓs'[:K-˾~ Y$⬅`=&4U3`1T{ F7.$պruA{RW1zs;)D.n`bL*z_kq_AI.ĿIB^x&eXPUbC`B\էG#D?5 lL+,rŻןmr/HS& @13Q|;*L(K5 E(q|m<$a:,dݑs|O E0B⹟XBVec4“ؼ߲&Өig-QmpA A=k\n,SS?rjoO6lGKFn%M};Ƿ=wnh4ՉSfI;C&!A*hĦӻj@kڴQ E{}qKuF>K() `J&7EX^$Xg]hf. p'{) ⮙ Q 2uk>P$ uPñ2ڌVoo3|/MhѯOja |e_ pǂFmfaBќ JW؟Ckł'IF!xlebK5Q=I9U>IF\ @έϋ"0Qȷ5S^R05%}a;bv_ ̱fH&+(/n췲,K_e%.}:S}9#17LVwa(T`.zo-Z_ٳc;2;7_EJpǰJggwYmkվMN >}2=V:Ơ %"B ,M*1=do8ꪎfHXDK C a_  K=kUCkF ͱe&%-ג|.$ǔ@~ :2OtzDwsH;xIGڔ^ɩMNɼ[47U>c1َ;zAPHhGLV6gv\̖~!7l]@0Z0߆GRmmܽvƫ?Ep1[qϼuޅᲀxtG% uh3a1-ck*N^ꇑkXpo;@Xڔ0@dE˨[eBgjg$|}ulWO謫T>T)Y3:W{C&ii!%: B$oncC=peNf?4eޗN6"HU nރU 85Q+7Ya 4g[ 7X%lQV!!au#iZ]1GlL3zO֋gdGģmYtR[YeV[Ә'M:<< gw:!CHm,Z=Tև4&_E*bOK=>]ɾ lEaxe$&gL B)k$},@3#`+^l܆KU~c}2n#Ǭ0edݣyyr̐p#*(Ի@; ɬAZXIhW(Gyzݹ ?JFD[T1&dwPwZt4;/P}ζm_UJg|9nGR yM!T' ,@%<ް9Gbe3/BӨ/$HXd!hCT+6=HF1W*:!49Q; 07Ƅ&rEr^8ktM/[VGyM3Ab. R-%g3ǭdʿICrh*Pu~l{;wr&И>|[;H@,"Pt{|$l PHٯx7bwq2 C-TЌ5jo?0{HƎNڅ!yb4Vm|>,TVo58u?X ɌTRF9J5~0EGW4iMvR2)r(MFF}a68t _L=X 7esHOF;2ʈSe~,uD,6<[tqN3ԡټc]>Ûa)\"k+QI+4z{2HTǂFq^ơDqivHv!"xD/\a ?fwˏiج)!]bz@o&YVOe:WHViIəꈲX֋$$%D|R!Ў@$.z2m=_/u:j5q}czVEs#;}ZCD)JMg;yԾi 'S@{nvD>^EA1m%0_`|S( @KN]rW>vіڠLX.b5:5wXDġ8Cz!32c ×ɗ#]1Gұr0'ڈB0לs^-LOsP?]!]PYƫ}Xik1ngtW<&jLz)d{B݈6|2 0Ec 6 zk:'΢{o]` {*lgFHsXm$^Y)i^sG$.JCC?] yϗkxL\ d[^RGY1;F^yzхm2)|IhԀbw|jY-C h 295p/t=؜m0Tb<`\o6/Y%ۯ/ev{Co/9WMK׀T4iUt߇ۣ><H}Q׆V|dx -"@\i#PHj܌c-){.vx<~!kSv+x%4h} Lߠ"2O򘼲…9hM*/wD7T J¥*,ҋs@s0)T+ۃ@iamU#c[&.Ԧc-:*C}AbzNZp7fZ$d4[2=\nC]䯡*_N3^_n%ǀ0vYkjp/Èxy.}=:3r,g)^xsXٍ)'ɫk1?aR-lM]ձ@}nQ{+^r4wx.lƩ;2s+RqK <.h&j(-a;rN"s|GF ejp|-{SYȄ܋ elk \9@>EzRlmw&|8)Yb67g:U)bɼE+F>Sބ",)Cr+a? nw)-Kн$Ƨѻվ'A9{zѪ#z?B64y#CΆ:.r|e߯Xm2k?#E> Z1˽!$7^A_&H=`Q&#90Rm_':]%2K^i4 3}竷A jF[~f8"I'-trpBF^ϲ16$ꁑ GyJGM  -s{\5h`B~Z:;ɮ;ɠk)&n99 XPYT " ZIC1MEQջm^Mw,w%FQtG5>W'N0q /Yz>sΰяzi\yßhԾ Ǻmō?Jܐ)ɶ"`ߌ*Elޛ^wW6UPn麡t^eD3SE .Ԧ h~V5Ch0SE 3қ9tᤩUkvʪ(UrURS9# 3CIą;TʄaNf! 8ˁd~DQe4vMIcM6b>Lz~bAɺgq0.=@t$ Hzk 1 ÎR4cXJd&,/B/UXZ(/~#'}rE\={h9#0spe*ϡ+zD䑷@d}*\W}ֆ䊥X.ln?'t5<0Ok ,^ӉN[~"S[Euo9>K%a0ԲxKs:"wC)ḦnOT, mzVM@R&IO̫8Z&[")Y{G{V2g#W?daF{_Nf`HNĎLf;ڈqK>0`yZ茊Ai!:D K7zZK@6a\A&?خ_)3x䈯LX @9Qp%62wR\ QPCg{ `tSmwW!3tm+bx şWq}\]8Zy/ӱrlLO鍱]S}MxT.'*;}x=Vl؃ȵ>Į0&ޢ U۴[Vk;ϢƊTUQ]q8`yوfgܿpsG7Zj[)̈́Mzzd ynNE†׍Fs`4Rq^Y̫pL=qEQ֭s]>bf>1ST\㰵;lN]OH fs&k ^_UQmFGMB98Rx_Ch{k[h`+$tw@- 8(<5ŠݢUT7Ӳiccɪ;iN[sͯl`fڔ.^}D7ug>HDs˨ϥSQf+n%bMFB_ XuHTz1LM%pI'eH52Efc2C'}{ 淝͘JYBTk ~@3O) nu@u' P$)x1 k̟0,QhjR}喻z`Hb\||)@ Ttس5 v% ^PLtmub}Iݢ' I\~VSwg\:5˂e\L~nȚfh$@!L<*.)(תľU 4K ;Z7qkZ-Ă,$8anLto8M~>k 9ɏ Lf<ّ[Z~u.B iMc_=u\;-s:z؃C2É>$V\3yK'd,ӰS\D+6jRHq/V3]E?pN VܝD#DV6I7WL/K[Tfwį4W^-Q0:2p3aDZ Cf~l31Z$c{5`yEeP'X1-6OՏJ?g{z l 4#aXWf($>}(zBC1Ba/1@El>_1dE yE߳[cB d,3&zc>$1]<^i r׍6?Hj:< l^{hEUN,v2`]h`9\u#E0?SpOh},^:\couX]T0ΠLLnBeXBU-O֐}r Sh,W=TWvcbeB=5>\r;7y \&*ϓ|~,^FtJWdDl DH[Ue,B 3U&8[O\r ;D&*hVw2exT 7|ʲPفRmdROJ 4'{k{xo'2g'IbEANV58|-$4j2mEw骀`DʆFO<̃ [;Y٨`Dٻ9l~F ɢϗZnI*ACph"P1)U=S=3]LPY圼{E@t `ؓ&uYog}/Sk.e'˻"+8Uw}rhLdʉ a1?i)03 ȮPlLٙi^r覹]drIU @[m*fzl]%_P w_9<.yմ0\}$Nӥ'+y (}f*UϞd~S@ȿJZhf[`a-3 -Qy=uĵ5y HYlMY?CՋeזT[FZn\CE:B{.X6iLe+8Dytv3߉eƆIE5D^NaUECBwS6NOf\:\ 7GgD1˅,|)W[8ea曰is0zB5!9!-ǰ԰NDP=dv|<̤R24,㞪<-a(.kx\)F9֌[qXS߂mH'X޳`)2S{b$uݻu0s]YWHs2`v:VO96fxki)El% tLDgS P :" YȐƑC^i'1mᡆĈdO}fNc&n_cT3G=sG͚l_ tm'Kq2u:Q!SI 9٣:c xH+>z6Ѐ*ȹoz`ʣ[͹uGn6 c4Ōup|~@ڇG87Y`E~\1q:T5筴 _>>i Cjn1.ٍOǡvdY7K#ۭq!4}aܺdł{qW_exZ >I[ : RF 6c4l;8: c}%bjLM K() p\rGkH7骵BARKa^iڋ7xPU{ ͝ƬJ {JpIX%ڣ82NE(@swG3;Tjj\6I]syJt6~I,yֳfV*BEQ:ᬷf,CIyJhL^jk1,#vq;@Dc.lNy&W賟u `*8Lk5\cQ D Hťi|v,ULۋL~1׼~t1A/?Ԏܷ0Uq= h=[ez!=?tC i3i<{2AԱ`5{ 6ӣ+9 KĐG-C|f[5O,I5V3Q Q:bLv~9=?AZ)XFsW?q+7]t9<8cgG'5q8k32% ܅FV4en݊um:B][;klk#;roY uu EUNR!؍@==uWxGlf1uF6.z-Cܥwe=,)%v#H*HuihxsmUӟ)c( ūgĆix7)mj``J+\s^j Э,r-D2V(i凄l`}SknF7li.N ?2Y\|(}ъ$¨f{ hpw-Ҹ8Ϳs.T!4ufxac}uf];%0tc,Ɓ atu>㺷wsgq ZaN*{&(4/ަFR )r9R̊#h#16 m)ehީ,{L];d[{E>hdg2a[gDdNůekWբj@ Å :r! _$KFu(Ef?GO8!B.^Q?b!f P(Mo2x1]8U ~aڻpRڻqEI[{Cu(0x5z:[RNzdk " IjWi~^7y"Ƽ x2K|IO'֡Ezٓ$/Y.hK^szFeBWCx 1b.^.,]dōV7Ie='A1 ӴaU$gۏw6m;m7]X Z 3;@SL_J{]XQ|U] P֣8Ay/Bkq7J*$_S]v/l9Lik8j2x 8e?a0"( P_' ']!UK9&Z.J-?(AO f-~g 5W& U 4UJ cP=0yJU u4a@t;NU9>pّ_PK=K8S 5O(O4ťQmDɛĵĕhK~2T " ؍;'iա@BP)x{7w}?獘3s8=\Rg)3cdsm6ٍ)g85KEqM%.Pl-Q܋Qrw{*3 JWBgQ]UjQ}Fh'm>֙1Xr!z;nC,E*U}c*fLCϰEAFەЕK0i'B5-RSب8LzA- ihݙ ݇¶Jƶ%n6'.@tRi޵z3({)Q+)0|b-Bx EBF-r"l(mw`R#\cEh%|:tu'y"=0õo{q@/=|$cELlY QQ4kufhβercV)J^6w`5]r1^[lׅvi8K\U/ 6c26}D%Fl}8d,8lf3_@?MS59ُ"'2i>tOe(Edx]sxnAz4=K2pQ@QDLllSQCyJI`|0 r,m|Oeip}$w7< /A/y[4/<-[oB3p*Zq3n`ulGz膨)L.^;;ToC9@ Z//W8gb,!tD"m<7͐P1ݲBu@U=mҜ9<`%StG^[f u&nj%f){})gsi;}x]iܩ{A QQ EHMl?>2B*>ȅ!5VMikpD;I'XR 2ȪwZ= J0#7²EoUW$b*`wQ*/7N_y#U,ǧg }n^=ǯvÂu8DFv19`Z?jALXzT}Q!<~VpG.R3XPjB]:$È!!a{zcet5!cM !$vx;Vʬc(@@k`92&m(jdns1?J'_8ꨣO{@zk؎:mvcHV/fO' s%OMWr9RN.iTw4M x^SUXCPoHr^J]yY>3xXqkAm-[qw (8|[b$ai3L8eۂxЮ9q!$þ,~F ໂ׳ډgsN" k Y, dg*HRyP?wj=K+̣).dy)[) 5e6~tb[ϙ&GO#fkVtP+EŮ45 tmt@ oV/)%߰?FvbdjΗQ_k u̵4u͓ҭ +H%6ڝ.=5o=9Ư~E"!2$CshW;5ع*b)!6Q ΝӉWQ#"Isځ5zbZ;GW_Vz@Xq\`|uMGwQ۷AGUld4 UdeۀM2nVK8qXehdnyY`zW )G`l ~]C%ԁ};)JHhimrY^?2jP̰RJ)[YslNݕ>KD;>XbZwx%ˋ(AVTfdPIu&R U89-MQE_/3sAViA^ Y3\^6֢bk\}^5}>zنx~\Y*t y,Obr;U! O_;꺉!K*$-Rlg (P:\oc`pl X^$ j*R,C&.X;b/D(Y6q"|-: 0 w"~i<8üZ0vvUe)LKuHY>-bqc1@U@h {e9`#'XLB]ބ{!uJ}^:F49LgBüS[o:G?/BԖ2>rE?qOʥPe ~Kbs4 6#L7b٩ -5fĠGҐ>-ÿp6)A[B4/?[CGSR@FxHBl0ɡɓmKlt%&V z_W,fp#/폨i[SO7`툴p%_ʭEjb"7Db@#BPS}Piҵ0m=1=z gқ< #Ƿ.ib @*DzuwrY~Le.3l{ +l煷m:%em{IN эs5"H҆qN&"):|8RW? =rI zl/ы=Qm_/hFx>6,|*'Y%R 5mٻ#A@Ctpe21'iRz7R[w;w( @)[{5֜;6đ5Xt}x1jYD-)YZQ8E/#_{:#HՑ'؍dQ`.9ޜDVχY%aƖ0nYz4w]X tn}y."#^J䖷ѭUÏJPGKQ&I%޼40ȋ6v~MIClI$rB^ a(RNc=!|-*CpRHЂcg qCj$M=:LuJGrTCHqs}|r%OH2ۦ^[r:u'=?C?Cyd/*cKRa/*9oƕ$dmrzҡ^FֲEcl1Xt~W mH#w1g*6',q!Ak own%IdP#߯I;.ĝy@x[P:ibgwu'o BF-M<$t:.OvhBM׉ 9A)F UOfe9Dt5\g.$tg;ww|eˉ)'YXPXG 4_9rAAo@e#nYM0&ww*&lo&i-zgT_1d3K)| ”8=: e_='>><.Il*̮{Jg 0M!3j.l"D ^cW3Wrg>`(N p 4ks53݇8)4T+![D5s4D̿I Cxڀ/%og5ra=gLX b! J`` ]CNgl}URSyI>B`̖@'1 ffERbâ+٫Pă ij/+\2|6PLJ@=c2ӑ.@5hv+ mYkqW3O]ylV@2J*_B0gՃ1[cs/ dWJCfnnDK[@XXJX~Wa9=S N&--ķH RY# =34Ӳ0Sl lͨHt-ʝzYkc<"SbL>$-(rh36.~?M_ / Jnw;{o(\Bb@ pt b5!PPY^܂'#0!F-=~xۿ(4K*έ#E{a]唨;>0*)& "511PA<+f齢yٺ $3',9A >R~tjkęC`]a-hysB0J)3[`V yvh/?;BaX+JOE c b5ɿ,&ƿQv{>)+""TyZ$ ESH+f2 a g~VGbOn +i +5g֕ݿ;{k^@.MVع?p<oǷ 5͠i1&M ߒPM.nNt9FHXZw萟}+E}M.4p`i-vMFk/WmkXQz l>uk^oUo@?oIu)n=D.|# ǬoeBT1XT C9-N9F@Lu ʺ|8o8Swô]ɐʷO@*fLe|52\zTC'YL *28VCOVq֬ʟ$4ds?[l3C5SD 6"1^YSR aw!\Q.12OYP+H/a3P$!_.ll+K'Urƣ!vŪ/F<(\r`qoV+-? dnp6j+dcx2]Ip\ו:p5 @m݉ʔ{q8>,,M QyW !0PDL)VFG5,0AX@o|J^BH0]b4pJדWKTЖZc| MdAԥǒ4N#1Q|{_/&as^e nxdzxD?<:JMGɇ'~i<8Uc .Z>xܞ)W5tLt\<Bƶ>l+k9.j@YRLzZg-Pik0zu_2)BӨgW wbs[r0y3جa Ank`>~,|UJ!JsEg 7hf.۪Zl6e) ^<Ò8^3eVh_=ž{~(R8p9>der̕bt Q}Y{d"Mc'`Z"bBU0ц7MC:LHZ_ceضB{:Rt#ŌD=\8M:y/(ƿ01u\e,8z=n) ᅭ p~zY/5 NBYa\vc/Hq[rZx1)@D9ɂ9A2bw) 3(̋VrQ3'sBwM޲JU618)q,_@j:Q5B뽽J~<_XW駝%{r];/ 1q'hy:{*W8gp.PNN03-ENӆ- S.9r-AKh+:'W{nl1-i?D ;[b:_'&ǁT;_#eXnCpҩy flޝz`Q/|PzJPB!0?>H jb뎦P"Y͉~ng|P V tCMGmVKh>/;)N}K8zTY=iaGKO3B%dJ`f[W {.nlfY J'>rh*¨Ҡ#.Q6H}OIF*˕R+H_'l0SdۭczOEC;?eZܚOJkF LI9. ["2153|NM̕x 65 FSMóvĕ-!ӲO>`C*BgCV\H$\%nadOsC~go,Fl=Χ@cߛlKDGwwvZJs2C ZL4t s-= ofΦ=51RW#`Sv-!3~ixnY䉻M2U64j~(v4p$N ?"C77GxBG߂άۇ&̐#YoW=8"OgGuwbRhdij[ <faKto2d: x\!" Y a&=W3.p(AqRF pښhz[z<HntB{ $1P~8JeHQaZ𼉳ao1\0ESp˪jxg[Pڎ{{8܃]84oYҗYnSr.M2罍Xv^w]ř-}NvKZݓyxfjXkٲzD)#ge (\~]+ФX/뚤*Lj^ Op @W[7]c?$6 ^ařj#ĔRkF=IEҌթ^<'CwyO#u 4^^fvMsmnE}Y H-ˆ37ȓelvAx)c^T]Q R׆70z)rӆ[M8I8a$K@WqfcՅusC) TKJ<<8懫}&MSК! ̳AtkdCf45l;)>w8kv ďeH;7B1S$#p m@VY~D]'A `G3ƳjdɁze<ͷh<ɵ[S !eMUgQ$]=&[j*_AqQ# $l6{A]P7mu%Op8ɛ&E:`@d 4ŸQA*}UV;эdJ&?ESP]:Җ7E~:R͌ySL/Q5Rd&9G;Nn7XE,Yٹf48 :6G"lH@/$QdN{Go.YmtFXN^Կmd` Sgl`\Sb fy6Ĭ8TR.%[ga{p mUza.Cq,2a,#D1;_*?k_PRp=A|CE2W# M2!wjVzxMSb_-5$~wU2Y;ъ4=u} ؗWT;ý2ol3G C9iؿm m좾󹋭$uoɩ$)Zńh=ǖd8x9ٟm#v4Q gae@)dr1Oz%bYab|gE92٬3BjD̷ԃ}\TyV/950-FOmjO8^{d z[Ng? 7=Z,Kג :1lh6hľЕe9+'97ZPQ&C^Yܜ!PM.icXC}K@$nA- ,?X~(H)4SQ'AMRDwp c)2~h(nФdu Y#flT_[^.4 )^@1/ h9 ZUwıKG'm~r77-ҽ]׵'KYɽ5>эS!Pa,"$0qJ ]ׯoqU{$ V[5qXf)ђ0&L9A5m=.0.M3oqRbZ aSHn/bf'ǫZomȞ( d8꽫c2 "{PYl8>&xi֗%@!"|O_/+ *xYl{Y-\@~ۊ³Z7<)hħLү{Hr7prٚuEi%)AHӶePuU>{IFj?' _!D噢5AQz`:bv0cؽ ufs1:6`{Q$:+>zx/ْ+k(smBvmQ]k081XMPwI=-r?FBfË9^Eb8T0·v ß0ztrHs{B;pcА!R$ Wig'BÁ]waB+7P2"JwuYKܻ}[lJMJ4Tfrǚ#8M2H/vp/- V0V};`yEB~O8^ te UnNM~6 =uݳ >[&Y40}Ĵq,c0F=ir ޖȒdT`q &bvC,łjIs@lЃw5+ E/`l(sáX5;?ݟ_$a!ek8N\gɱ >_ HsoE7}0[,0X۩{ 5Q9yɺw[nj̈̀1:B%Ⱥ‚* țXžxne@?OX$Ggǀ[zNTfXi~ҍlC=vsqwo}|A*oq[75֐բ*^ f{/V]IAD y>=R}>/~Yrm€\% xm0\VIF*b,0fX;j==qAL0G~$%a'R8EfC;gd]mΉ$v}ld=h[*ÇdWvՇP4-P&PhcXy }%kM *̍°d]dBuY8}H菖"ŸlvFk5UuU6dzoJ恰˫^oV+d{8ktI?lVdZi؅]Aѩ D<Qy<[~Z,S8J A}(l8}."̓}vER^m22K8M c~^C 9UzYʅ=X]M,sYXwdbWZZYrxF+?qKX5oKLop7^m&Yd,! 4?"Χq@\M8*(qQqK;p 2L[5~(+;|PldW~=( 2{7ӃACɘbQoIK)(>F&aHWt\ b^G?gU4DO|q[5Qq{ XѬ/A/ y3罄$gRǻao. /M&;KBI*4840EwzXSN΁HpFU Y9[77nmϲ 28|'Hv_&q9c[H_WamHl 7zh[˱BIBU똔jȢ6ˁ;qg AR  -,3~fe1UdR 8J:@o&>,͎۬lQ gş-ݻT6V߅:ҜbeKM ;%4" GaWX.4"}hJ:j 8Q\^h)~A>Xy|P(dܸW"P_u ^f0[Ȯ5ݝpg}pk'`"j$uyMϔsո3'<|iDž:~å52*c]AzXB&o9z<: M{_w7¼]z g5.:_RZ/t!*}q po<aōDV&p9;3&s 4QZ|/74L8H&[<}q3R|z]NcX'z2.Gy{PAy>lwb`C`@ЪeϢ2v%;bO4z>v|rN׮bp&2ReArB4E^(m0X\`q* UG)QB>k-o&%},VvYo8K`_O+3KmLTɷolK=WHSuƈk_](G`|bQu<:c_?jL ]ԓ|e(~z;q7&>ˆmSM=:qa"5`~vۨ@ XM(#VA@e?gO`@>Sqf&[wVI:`M>(c8>wHMya A&*.DYE *xx*x7HSUNuq&?\lwV/5 ӆ_+&ߗkFB?E= ۺ$Yi2sexh0="S^RJ8?nP/ w DK;Uڞ $OB;<?ߺ!rV}7e.ԛxRasj3Gݓ,KnQ\jFGE$n$}kjvSjK:{jy;qcޅqH>dr#/ƣMDzy40lV&F X+b`k82m1O4_oYUt |neu-OAr.s'r.Mds='1u㥈E.}(]9-ъ!~{5pt :eiQw[^ [H#C7q|\.3Qj5}3 `.>el-``"?vw2xAOCwyshU;qqJKuަ*b?|N(OL B$Bx~߼=?.EQWx쥒kfTֽXoxq owڠay=cV>Pxۺ?`gv .7-VleBU@2t JvgȻ$XRïy#M-O54ҀH}7d ppxZ+<\!u5852Z;gS,̎ztWH^og-?vO^8$ *<վ);ۡ2ʥuV^[]El* VCtn$x{τpW,9ɟe^q48hO>^fyS5&S"6lc$.X`nzOD 93ڳ@+.ol2lu˵GQQU .oP:Q*N uM-eg D+skVQZ&ٷaԑLz1ݝPƫ(T=pY`'?3ڙE{5 ޚg!a& G]|x#1zW@'fM-C_E7¼cWf6y6S,z^oS1L,{ d2OZW%t8<7m)Zh*%fzBS:%oJ`7.ԠqlyYdE_?ah95CW:=pcL/W 5PxjwTQF9#Rܘgd4SBYD7Y~[zp EiZnˠU[OC .Qo3Hj'rbv1cDzY5z*Cuv3i7[ ##_njPMd⓿Q~R*crmy6>37P :lޜV/SAY]ׂP]Ӕ?vv08.K L{m#Kp#9]9IA+Z{M9&u>tF4eI ݭ!iwd޸jzF ze}2SC;;sE;360fT҆|t7x6rOdD*i1J*hm/u,:ȉeuDF29ɀ2!qh̬׸OZ6ORw4t<^ҞhepTfd1E@_OM=GdᏂ+!w'r]힟GB)0陨fb-C]lʋmYsBzűƠ?jʻ0.u1޵kx$vLYDO]7 Y!?$Ww:zzv!QGgno_:ޅmo'7:N8?XT`X&'_T,f_{>R\RS"JjSrBU%tA۲'S~Pr9 X2Cnh+Ŏ:@p* ],FMzyhd,dRվ\v> kėuˆ/Z%踧,|Nj}ZL7S逾, f=#AcēlG= %kI\h׍ %ݔ,1\"*$z4]mb~:.ҀPf1l W Jiq䲙0L~qAKMfpU4 m|,.ҡ|{q-<kC9wx^B牊jeT,=Ru¶sf)ڸx8_RK]wF|-PUMa+}]Fwngމ{bh}=RvEGWf Qi|J|Ҿ}+.~$e f3%{.oC 0EPv`.\۞%ym[fE[NqϜf+}b{w,z,w`j +A ^Y-*Wᕪr_Rtd `s)|^~܀P)9jtǬ-ò *c8qf.gticO>&qz˟_h"uR֝mi)(Zc TF%^%"0?C?.Ulg>c{|dlEP2#Cy]VA18g%cF .)2@:ل &9 g:1"kd "?a:dn}c'ua(s5vN[jhiG9vN?W^.jQnVAe4Eq"Vڂ+HZ\^7>˃n%/b(uPD ,Qf( r>P2?{{sn{BZҹ` &p Ogbv*z`NL7('8MMA)]ƖMB)vf%28 Ywqś->y&nF+nJ+9WvoXJigdR3ioL1~%_J88uWۨI"V l(:WW $v ܣ༜%^ |I&Emg^q`.U6 'Ah*K(\\˓`U+03X8Cw|Y&64{A {Y̏ )gT8- 4`FpkDΛ nי{#j =rUeA0k6ob'XTK6?&XHIEXM.fNomZZX~:h}&M;ۛDth@4`le5Ni̵@AV}Axڧ[><`S sjʬ{y;dD^0 D-cLvJO=ȜQA7anfomopV%raR D}2bIщ|Kh3G;E?x\~H|QX/dÒ96a1~/%J)Հh I ׉#?#r/ۏj)~ ")sHwwn>Ww.B,g(56EFLWo$>PRBn㔒O1].ɈPsZTᡟpmzE9-8$'6. /}Q7!mⶻT Y8 8 !a |#}|ͽҷfǐՑӅ~rZsaSaȏk} s>y`:J`Zޘ߲Y~ [=,tO]~,j75DӦ\}9 ]j۟~``OuJmO'UDB_d3{ ~Q(>kmXΣ&73)0N/:+~*ȟ& X,l(c1ɥ(۹7inA ("[t\) ⺫]~.PDz{,w Ao͐tG &GJV].ghg='5YU${4 [vedOUl qМ{u6csj.>òA \ĐAnaRo6-Ν` ֕mXUHHDyr ER+>!U%N;>'ܲ`҇ A!KսTVnO˛}PMEZxHeNYO *SӃ]gi\D=SV9!,d:K{b7^U+cQX؇t\HŒKB/UZ({ARZ~Yݴ旚:y6RHF.i+ʢeDO_4]ՙk`7dynḧ > %WWTh|V\hjXB[aD'6f(}΁O>W$@ QcD^sشF U'vQ0o8-r@(" >[+k h"V >ǬX8#A%Ph=@2`\Dz[[{҇-㼃Z/Ow1MGj,!ǟz yl7_nCbI1dg/ 2Ðj@sgc2Tf TigB}BH{U^xH&-*r:Q>lcc?qInƖe_Ԛ }jP$ = ]U1Pv۰ r?3kc@@ P/[OlOmA^^ a+tsMNcMۀDVA;ؓM۹-B EĹ"rقOqE#ٳ/@⎄ džu,q]$<`WJ,1!87 U1 y#qst;'&6~(?QpGdM)2Cqɂg ւO U됰v:ImDKMPn_!ZH20LM,%ǗzZ4X2p^;n"-9îJJA!MT^&h۔I!5!Yf)3QM*һG|6<坅S.H'^JKRm1 )&鐷Ƴ3dK5Dy/ b?@ks' 5#pM0IN܉_Q 2[j (Ho-<PhT_&bɫx9խKWZ*j 1Ls&sF.IbktBGLV:r 拥C }Pg6CXful_;fF _UaEO(A__r1vt$%Ư}a6…}8KKUtCbG\/ܜ-`}+Vr7N`F6lc'.lK05gTI)5^TuDÄSXO1dY-K uJ$S3xOeB;mZ _Ny]9-e;]wr (;Q3l LL %ۆeq\R|71ƧNrܪ?PPQu-j \p).9^~t:܅a"wVQFaK2~B_Q (zH˞u(lǯqy)a+5DRj'P ҬEo34"^yuF_+2-rmAZ,LeW~qM-`ȼֱmWoru͓' r +){G '+x.`|)5>URT3IPpj3J~gd/& :G2ȞJ%-QY4YZV׈X#4EONw#hi gH-缳1"fN$ٷ ep28bSqh4$$ca"1/4WXT\ \+*F(u4\ͪ4'#2Kѵ5#>N$^. ~/6m|O2ydhvjldԁ8(s]8rN?Fnx=`AO 4t:[z?x O`MX[ޏ|K["2-YgØR0ERpMDQvMJeMOP; Fkq":+،y; %ƿD@[rت/f\*D7*B~[vm4S&OmReSX@&u:l V}^g[-1)h|hL+T߀⁃j!숺[6Fs.y;L93GQbzUx[Mv/y*_ E֛ZwƱN贛[/ovw%#HFLNA֦]xCKkC`4CΣA0e`|\aL+YI|t@0Q%.5)'8EÂ\/dH[ߤ )dyw2ZX'YDŪ$e'dHNK`eHRǾ5(Rǟ3de`>cLo05us\]47H#̠LS=re bԋ9hg/To$5kY(4!G6m v A޼[ "杙l2F#Pyg2`c约)yIcȓ :V'"ON |"XK`ͬb =B@7.PQg7H0~6=C`L׼HZrQlj?`ݴ3b+<Ͼ£vA:fl~g&{0嬣aqw8g)`&+Q@tD2.b |SGzE\)g9Ň-Ojt{0!{e2EL3p\?166䔤2L\|~r^ 꾑uT~ pW$|bv$"ImazD0=SVnϱB?z f61'GVg%תQq3ި1E=\pSaBoBuɺ([O1`Fg.+ox8E_~/=,|z ~]{/a8^yjzɯ: dT_QG%A< ]ҥp>uO^BMMSUMkq-"^2$i!MCZMP^N *ܪ"2huTt\(o0J`?-a0"q>]دgkhZ'B1i&FTZt%R.KDV$VEз~sȉg,t@՞!#\uMeh+֢v-L#/&l_L\Qdަdvؚ"Ӻ`͜=' Ahc۽G MVi @* cXlOJX_ew)Ңs !X8dHqz?y`!JD}[Q >m琳eqDڥri.$ܬ<(5s]Ɂ5('{Iz,`Y)T)GB68mаt8Uϕ*eyǨ_,Wڀѽz/Ċ n'ڼ2lUaMP)%P2Mj+66ZsHP yt2r($"]dJZWtTQ1m;<>!VR,3r&M:ӏNR&#Wjx% p!F<2Z0'@8uCH #*d\juh*VKӟ#!$w+ ⳷~_ Pqar9+{ូ'ߡL)M+uJlZ.'o G1 =0R Tr:u1YژeA]NP ͳwu!'R1iNbKZiMN’F\g}P `LĞ~LYLN^U崆gy0iζ.TuT[W oCKҊx)j=5`}Z $5 YNQkkG|;A!/kR/]N\ZLP@?x*l4r4LO1`x{MY;i<=/[KL=z`Ҵ嘨W>-a3j ;b, U*10zEGDgj􅬻] U&,t|EPGeK[欂8Uޖk?\5.ieD61e 0`Y~@:llrDUV/zY[KaZ@.$0i/Vm$=ls{Tn!C3Lj/G_>H1gpCc`ܼ 8R=Nv-;owlpLbRaC>kQ$?nuӉQ<IS@N;ԟ{@X*KvdWZ fkhjޑhB?dobk[0濂-HN"[tؠzK++m-Z}n5:^zhr$ =vv+pbw .> ƘZ"؀ir4wNRhынꯇ3cXGh ͢g06#Ә3HUܢ x}D7!ęM/.qwnI4v a7VGi@\*y _?BI!d+šd}uMs㔼F{"ը\}d8^rG\GhyZ! &"UN3jI!Κ>f\>A*6g/ ʷ_+*&"v5lcP"%&2_8F {sEtbk X>ݹy#ح0C&+ ORYoiy+F XmLW]ث?3(R?ϱ֦ӛ}w|J8⌔%i_"H /hA}rU$t>8x\{U@g(3Uv)Maƅ=ƫw=@Xx\QזTKےlNkC8\t[[m؟8J![m.e qRKٵpm?F!Y<[xXiw적RxH4NL˭oӓofGd@5u7XSySY͗n'T̵:Sll_nͰ) -9̧Mc韩=}HT_ѻ֨MPIgt-1H`p,:r/WYuaRA%Mo+(O=O͔tu*UN?-.V̲1/`CAؗT^ࡓti͘ȯ-g^ FPS[+ڛa5:ŏ`;++a "<9"Uqy^W6A칙!RdEsAر;­U3=׬ש :'ek d*~C. +8%,_@O/:-p+)]f65Q3q΃uYIb-8Z2ԡ(ù隅K,]+\6a jU`VSlxb2C$ hOZdѐ[ع#-Q7l>yGIRJO 6;Z ZF8mR:X2 W8Ą7K-Jr{v|[ \ 4K!3?I{ XCsT93dSMGHa?nW3Iv*X<j?nj@= qB[=R__p hS2kgGRL%Z2z Ml5/T|+^4Н<BqKThürkaTb+͈be.iiKM5ٌW,$D^/IX'Cf~28N_vӀg׊4;wMrVGfOGwAhyf@/z[r7~žZxᑧOK =QsCQ z ӝ,;3 xlv^PkyeJCTo ͱu Dlj ?.׉v2_I6 YXD yUn$fP%w>s\KY3_*%oҰ)ai33L~s/ķҘĬޣ9HɑɌ>J92.;[[ƴ7O:~[ 9.,p6ݪ$SB4}>8Fıڛ |㑀};fw[/&AێB &Jι M^ZKnUNp.rF`G0p.͹KWw37^d\7ް;_2L$S8WZdfns"wRָ_FWl0/ԙ;+};;6!~ bN*E~q-_s:i*KKd'TO[\ SMPTsr),?{M;~ƒaퟰE K=x8!.NG /r@=d$.3|f !>S?N2z#pkɓ4zsyToYaOx04:${Ϭ+0V`S^q1n]lzhɠi|lԼ.d,NB=7QWHW_& uwQ0&PrN"!|qm/L[bfoCj~>]tQn9@ Ch c|`^zBĢLoCٯTp -o'kj]+,ʜ=U^>KL1_j<v3k֡+ XVPI1IRKCy>?HSp؀#N,*pQղ RS _Y}=۸Ռg*8bDRY浫9P+`5Tc_ (8wu'KAg0v$X@WOEF3҄UzxmMjmC7cMzPӎOT[ɲN7ȿt>AnzWh}- d})Sb~X#V.#ꐙ1!6R?{U]a' %=i N׊qYD*kRaH*Sy}B(ŞXΞ?y9Pк̣lx!Y> rM[DŽsde@#{ݧS~80~N#sg܄7Fa2&)j(!YOǁZYޜsĔG: WnޱGFqZ'?+x`30Qx)M9nx6,~aCƱS;=Q B(<-/K9;l u3bdUɞ9afR[qbq~KmϘ;?ddhwiz', {:bT% v<@:t|ߕtXګm{ldnrk};ΖM?B󸮊,hVzW_ sS=#*۾@f52խ&T&e՛mzCnX''=-f=o[Ƕi ),fרzڱ @ՏSEKmv;=FUYEj`h;&B_]t;V0AG` 2F|1Wb'dqUɩ{~ =psBlF /chpi;( b+]SCdB{{yņ:XOJ;on:5?;Paj S1ҡ N{MhvOC._P4W1bCJ2 Yٚg/Bkt,rdwפzQPzS2"VX); +\kqtfك7>(iFkQvU{ʙj(]DSt9.>mz(l@@Ǚv;nNm|y"IWG*q3Fs/OrmTkoҋرhtJ/xm'E%INU, ,IEpIF}LC7V4oU̫?(W|i3;;"fv| ;jPcZesʒ`9X`MIfp' Avgff 0BB;ŗ*j+ m"WKK׺ַJG*ɝ.[aɿ qZh K8AiL2"n$zu=CEM*.tԭԢ$P\>HB(SV"'Є\YVCjڷv)'%ώ~ giFl6UIwqgC#7R@@ql"y?&^qMuG^{瑯Lfdx%} r{*>djCYa#WiGǙ !]L8ؾ} .0['Ov{=+_oH`m>PQ"Z9Df'}@CoHxzY+gY>\[1ŔG4g%ӹYfϏn $]8|5~K`2RT7&dJ^z=5o偈dvvCW\zDA= kA'pUR? Ր6jXWZ)@VoVX8+=^ =>oq`]"_yRPw_,"jMtܸ+[K̅-\ڜk^Dmi)yG:vW"S?tDht.N6W(%R{%JffC@9ʲٚ}&̮6f 8xԞhⷻmWð38e-*z9X5G u(X,լ\#fv@0?deȚK|uJc..995ףFotQ0nXLDi7F'2f5aaEUvrA6Û=+d`1>I^\?\eNRѣ]FXk9ꕜc%_l&2jX^G1Hh5-"l]w)hp>/#XE(YCw<䱢ͻӖ}10zNn6RNSӖv*tpG@ด6Q=M9e PbESۡ>ޢ롤d0UnKi mNhpV' h*v- K;~&\ E7S'#^jwR~,'3GRLGS *p_2KԹB1ĥg5$VU>0_3ٍSIZfRpa#^*=^{GIvBzf1[Ig퀽$*)t,{jo!g p;(dk$N "G'?t^/EW6[1%5y1 o9KF|IWEy. /͛ߟH ܼ#A,Ƨ;6%Z3.zjV򝶈 W B(+7A[.[CJG6zteo^y8Iv~gWEə2SZIM%Jj=Ð'`IsN+&!m9M[>qBb tRmq.\B v|@+f 1S ) p0q#Y}}73j(g; Kb6ƾWtHc?SlL. OJ)b,׮N95^ɛ5kjbc}q8U<*wƼQe^^P1\LtT;ŠŭQѸ0]9fT@P.eZaDmd f_<{mO.j#˼ >zlEfZ}k G=JOds?8%O~aN~͍09Ώ`_T'I\GU̴e1z?"^Ƶi%t.^GWךQ1Ni2]!)!i`4yV"/ZUV~lÛnbv~G *KBNbqs,XQc8%+E9s.ieZJ!&NÛq|.c`tҴ{#} \dʇ?5U~܈gG^/};3)1"|4臅+kTeZ(1t!.d,(JBzo;*ʰ .Sg_08@V?%sՠo@WRlJ'rI8|9o-16)z8Ilt X5}??hTp}OkJah>LRɅ`=IV=":5zm-,g"ĩP} ѻ{$\4 i0&زh5-sh{K.9{Yl\Flaс,輅+S`ל? \lLr#l e:қDp7\;BRpy3!;OA8`ni;މat,v> \eM@62BzVQW$0+(vMzc/NSA)@Py71 CPh↰BO$:ٔV߼ ^I N_[饫Z ܉o_AQMq/@cVDӠx"^/?MDrx/F{X5|5bZ~*1̵ʀa&Oߔ+ /Mޫ7RDjwˌB~d(0[k=ܛ"d4W?G$$S?s>=!hζ  56Ԅ0CcNKᴟMA hɥ/دh([ ~y/v {.]EQ.FE(f{ \boCjVM5wMXX h%(-*a{?}@ƹZQ9.+# BìQ1J2U](*S6}~vV\?XjE<'RyA cYJ !ld7c7ӵ&?$C>bQ@b N.DhX5wyGdQy%<R2H2V z[ ,\%&_Zh3&7iLh =Wg y`K"w)Fw3>I&^0lg8jػn?xeq anf(A"ެNkqp#pWnS(͈jک%Y6>`k_aPͶT7ɦ0y+?TɯAlZm "IkBj*GE$;K"Yaҭr"{]$+EV5!(ާٚL6wi5sL[;>4`/ِvo#0D1Q#J aۓ}7W 2yrhw8liIf@aG읚9!j0aU=ܐt K_opӠ/˙Jr&nv~-dFL. JAS:mݪMR5_+ ,[kx=(=P11"Ugc ș7hb ܜz LbZ ֚18*{"@vS\=Ʒv3MҲJʕxx#[MH "s{wq!΀ȧ+kk-={ x Fs~5l'i{|h`___Q4NЩsM=iӎ-[pRGKWl{h^eQýכ5e |*ϩ/#5rH/!`}W8'X V"GhRR08n@/Uu,@V.TFߴ%2y&+79Uz 47[trfЅғgc4C*lrM VTlGVHՕ(ov]&өn#n꧌IJ5 Gn.#@qm5!"gտ~_b,wv'L SKTN|GJW84]OXejHWsrk qYm&tH ei i ^hB |Oppəy%J3ͣ\INBFǽs߯Fhm;X[`8sAN2V̳^R\/  ^s6Ƽba*߬rE u

=--q?5}ٷk@Wix^1U\Sc W5<61lY?kJ8\hOpSEh4]e@?6h?]Y& 2qb{KG>H@2Mpq815Lm [bar?aM+qyG}aL 5W`pS#pwZR\9U'@$0{9BWIO l'#FuTist;!VI|>o*Jm |(Elx۹2%Xj'VOzg~ )r[+~ߠ^9X SzrV_Q;gua=%LmtlߞS&c(:ZrmjP̪~b+.e,c9U ORŤ o800'!ҸE_O$\.#/"E QգV[)z_?1vUN>}<(GgKaH8=> jDٔe BFӫXگ(I Qvk{aur>J"i>$LݝW8x&A>?Ui6(2N 0sr١'ic OvΛSpN|0pD@zz[|=SSm$r4vt"(;߄WЄ\&#P:<%Zm=<}Y*IJGQV/pqfi*2aU*(_ QWO['$\,J{Y ( О25 ܼ8?)DK(7ӠHEɐ0X6bBIϫ>#q]w5f@ SؠzkNV@|MyS8ԆWБ nO(K T>C+뛹%BNyyM 8&#Mb 7];]qyL~Nq4~Tc =lmmJ5AC,=NO_,e&yMk鐦 tO:MR'AH9ߠY'_zt=🢦{v6IԖ8 12 )J$ftM^b.1$5[\5J.ѹɈU"xL9l: 5qmO>٦>UƲ aM|~h*ڗ_lWmK_]:=c"n>iHe@r:'bt1J+x u(L8׺y3n^r%ilQ|zXuQ ft|hTT`HkXt ߒ=a,-c (,uhSr!:)l  !ӌ"H+]yz Nߢ%i^/MзXQnbmK z|zJG8xx!b 3i@-RPTN,`-tj~TAH,#@Vxc+nκI?XYtS IlNC W4DM%2QQ:DELo]z!=ݤJ#љi SSI0@Owi8􊌈\i4ƙ'pZ<C+*ZِU-%ع )iX]jpײS„S#9u۷86^ B7g`bs4n1^ĬW38<]i[H $R85_e OEѸ& O0]H XxrQC2980J/f"giV!vFjd#g`G9=#ÁGC =$@Jm{|aX?JzlIjg<+;i'j+d 0o&w{D/=4ẖ +ȗGH<, Y E<8XIX >Iy-ty=Ą zݍD"4%8v5aGVjrfbܺ|uc0{:LP%m3kFOSE~gB#.? \/]?ku`>;˽tA5sgwпwYQp9ِ6ֆˠ_ӇMx N8,[tj<Rg^xR9U%XߛxAQrA]ej[pwy:"^.]9Rh2\Qm k\q yF#y=AvXWN-1BFA72_i nDNĕ*Nh9=xC?0ێ|x{d CʵPJF]ljiTqIT:*UrAC^LR0`g 1^qs (҄dӦ}㓼}GI䟔ܲZI.##&YqGYc剙E.:M&TX Q}HB'R<^|Cwb!MSyJTn[\l ]`%NHC>I*2>v f?5eR[}=yy?! D-!N\9Z= ?bzۥN`A$qXB47bnM$B 4i *s7g3mCKr{XI&MAdDAXX|HV3g&J * ˌ N$[rHU*m|YuÝ46k #~3Z"M~%GI FsbWy5zS) 6e']{؋/8KgMXKohZZցxh7K8 z/!Fܖ*绁ś Z cD * &jԓp7y^N 'ga;\#?\%KĸJLq_5{tk\v˷#ZN?k'0*%~fDkׇws ygp{ Om>20ƾ0Rp5ՆyuNՔf[L6|VzZ&=;9GH \UyzC]v丝u?ªTt-zEw/kj cZm0u2@u_O< xFHZqoqgu%迸?əb#Ro^j\V3ECn;K26&$$:1Zi̞62] WȮG6-L2y8 s `yٝ!]J3#cq#gza%<քEeҌ8DOΖהꛡiii^Bԙ6z$Ӏ3OOh/9}H3H}~y zh ' ".N-Q+E n ')/3 k,XҋeS^;@NlIRП輜ye59%]E4m oLn հ+َD2[7Ubg zkx-kCk X,pz8Uklm'qlxKKi{3('jєu*~q؟C3K*A\DllĊ✀3E3 )QO}\ђE!ˡWЕ)EEAGA:tJKzh!!hLp28AjYln˶Bzpck;#Arjƹ08ti.K3T&;]AcU_9Iވ W 8NdhJTxgA Opy"jYjQӒoV{N.UnIv_u9/,>e{p;`^W$U38% ޖvVx_·}>Ϻ]LʅPn:vw4򯐻^xT2 Y6H2:O*bG$y~^2ȏ6^/J7DwwRI`c5h!IEk6:v%Eޛ`n:Hi1Bp@YEd&ATxRPf65u?aRYU̞9ߞFԣyTn%|tdƌkGKǂn FTâ'Xe<޹&L ԵrvW7vQb#"p%9ݠIn-/UO}v1в}Pդ"gtVm߻dq(zaR/HE'Em/>35>1ڰ3mu?5O)/)^#{p/1su4u]Z F%.[8Q>Hd[vu,I9,lʱrp[Bӟ1ώz"@dJƢզg!"iU hDn P(ow{zd^u_ݿݞU^ܐiAIO['{mg@O_E$Rx+29QԚCpo%%F:/VS:)cȏoQwN*kUPkkOfdj/mNN[sq F|=lƓ5W}N B'uN{&SOR:V'$\5}^O86z cClw,Uҷm4GXSeV XorlH\p]H00%P(п~⛿J$U6a\7"ڳ.Q o r=yZJk ,(~j0d>1'OѲO[4d~qWJ2wRmԆ@9X'\ٗw/nXVYz[j`hZjCoD(C}vr|5 bn$%)6h 0fL ؇ 9Vͭ,en%i-Myy87uhO 5%Y VŊt؊H=s-_ '7U~6RQ2٬xM4{,b(Q|g 7` R2{qYY-`h:{x,yZK>Q%Nܫ q5AZ4l Zv埇K&֡+I'"Fx0jB=rmS/X_9MȨ֥H)Dw=Q{26yZ+ƫᯚA9Jh*2Mx(?^ՇJx"&5gT9$b= W-.|Q4( ܠ\h23)[awr"nt'v2-`?^"Wpˠ+0L x>KW4xDDVhyw 9n jոvb'l35 8+,bq9\TKnJUuj~P r"*zE<Eɗ$%cfj 4fXd#o$/41}F~6S@:99 }E~u>NN:t1>ȻS̉5)h-+pC0műK  ܶ>3I&Vd;ҁM%>c(ÖEX!,U4}'l4#)ڊ;&Sc`,%8 X ^80Y< ˅D)~O+w tNƦ_/UBZ(J£ACrEY;o~55o&7UK9AL/w#ww cݪDw_"@!ܥ q%·w՛114LXQs R:J8e/t^"Oc03{3rlAX܊0lw !Pub?&eU+ U;-z}=v/CZ㎶ϣ8QB)@x i#(˿ЎGZb#g鑸 n>uvgFqM@r ڔN+&W Dݿ%@ #=/'@\ZPAq߂(I9,anGp`G ͍BȸNKyHfEkPm츲{6gMi:^3+-fNyh<ሙ||6vNC'/L޶Ѯ#sė(U=eUΉ==pSu(;&sQ#$H 쌡ּ$\Zٰ!#(=pnLJvʟ㘼, uE»QݪѠ}ID=UG;piLѬܦY<ӿ M{b߬)}9 LZũT{KؙV|8HN{5J_0c/ "+aIzFMet\ ;p4g^MYS!lR4,Wg/ԎAȬI(-#t[ݚ))=U#!BAvb_PVF FVK9* D;gUn?~ TZl:61m<6M/Vm 8.ȏk̿9N^KNJQ6?*DŽwd(2ppI̪";!k83֭[M7<KHV׌(8wgbkɒ7?%o41>~- U!-Dsn Xk˼.l#8({53:-LKj]XU ;zUB;ҏxZL$Xfv$wo9`Q,1TTȣҝ!eaveįw) tUWڗ(#AC mʼQynXdcP^%ut̩Le[_H,:Yr`BGXO!mZ&8|_y(|73C1 ;Dalbe 9ܟ3i@;7k9OhEQXQ妞6P?lj=$1Qo'dY$_yt]>A>}c#@{Zˎfa0; )eMo05Fywm 3VHz_fnӥI5'[cdbo NX9Ts s?6p֮skkף@:]fJf 1Q+tw4뫖rYnu Wmg7Ц-}=g3?Ug6O[t/%g6<hį7%o5Hk^ `_QL$6{QvMMR&±J DMD~jpJf }uý4Ɵm,n Ԟ!0dfqfQL֑iQS/f!Ʈ=s)c=!42ru!%ZϸV~ 1ź_qfsb:!6R}<~S%p3a/fBblvZS="ZK9h8Uy ey%Q;ɛ(5•59@e2' ?|;K[ ]0]}p,@v[d 6KbLʙJM"< Ai;x /׃X}53=\ z3$Q+|q ?YTvwjLbz[|!HN3-ڻ Mv_)s_ \jwM\yq6&ncJH3v$ v)|'N+:JL? x^.=U.F,qED0LT9HMs%4ΚމE2 t>[^\K]1C5jH9Y$vTEݸxwUjV@0kSߍ4G`sD\V*C Yl]hQ{-hV|$U'd[rmKȻҗFwIJ}hܫݔZR+cs L4<4l,=ۣx 7 _JW]"busKgO͢RUҡ`x7P?ub]aw#ǩTӾL4C.5UFQS=[zE'nCKw<1 G}{^-}ǭI YiJbԬFU&feº:RRNX?p c[XGG\3c'Olǒlz@`W]ɴ3Ӷa}Q@c8ӹ2*hw[PWo_ˣ'l态W nVev(V/IUQ$@ -rbv4HLmc`"K_cXǸWhldor JK.8lz\XODdZ wKŠ<Ӌ9=hm̘d(90;xqm3YRzU(L^wp o$^g1~0ܘKHDhW)hMI"YƔ@Ea{h8*ƣrKwx'w p?a3L2/TFQm9-︉(ܠYJ &b*aY;t['aKיM$x,};PNLԗ&!w-u,slo1XVb_pE&<3: ޘ:Rm{)nƸ#qܕ4p8Hn[K.{ 1VoCn˅SWfܣj-C+(=\]yaty.v"SG8ʡhUz:?@At?E-|= :;UIX5I1qO W>oY~ߣtm VO9[&ST!AbV caV d<< wdhn2l P!>M`& CbN>Sqj&=Q1>UKj;yJrf)_ puzW`>iR* 1:=l]>\jڏ4-a+\K0M&)T(n"C\감0Nlɿ׻vdY>*$ y[H{kxxv9\H^pE2*Β V9']|g󴫸倶+̯0$D߿-Ԍ/~oX_KP%ݶ,/UB$;MO}]hm5 $zHۉ֦DL$  W,~Asש$ O? ϑꤺ%E*7D)!jۛK .(ٰCd2nvhxRU+K2]DBRk- g%56O$'UuGp:`Xom)2!^'r(߃;oX-xodmS cܑh-)zes N[7] *DHL)-ulm~ΈO" H5F#&p5$œm#DNohK?=ALu`2anqk4COxb̲$>|r;pJXnuHU=21[6A(YŝɗX奥oclt$1\; ˾j0W]͘D"+6/^g[zAAkSUSBqW@@ɦ˦ P6 BcLt ]2@4^V:ݼL7gNʏɆ.챿Wktv1[ۜ7|;ٮzb>fƀWݣE)8gg)%͘?}á>訿=.4P=*tNUIqZoF&7,]=܈_գ2ׇW8 Ӊ+U'cA[f$?C"%2|SV;W¥ϝf3&ncZ_h-[%2X'Bt""ƌ"CJo(QjI†CIUkAb/՟9#wN<`zmrmR%,O yʱ9>}>`ZxIư;zP-NT)Dc4]QJ gL |R&]7O58K/Q]D#~i` $|~vCRb$o ҶgbWNZR~ϔ]am??ΚKHl "x? /V\z`Qy/z&n]Άƌ}I]rG;M|sdsl_+¼pmxN 8 OU81X^x]l5l x&#]L"I=`Z;z(NAX}*;Z@/Nz pC;}7"OϣUatHbFS }vG)Hݿ8E!胙f")h2U`ǙE2O=>Eidy=+W#䊘%%OpBBqT4BM7n)3Ͳ3nsX(-ȦQ()/iF%5\Iل9!\82U ;NR 4]tz>nL"|8 枆H _CrO,7%f+v"V6A6>O5w 91R l+\%v ,CPfp:+yԮ_o^rxt&U%`ʉ1T}ʜEg}3x*9/ſc T(lۣ+:i~&/]{-,^hLT.gu,d Khj\x׮?S=hti,l3u ȸpO@?/ fZLZtm.^ &֣"|AeU#J84B˄?!@`N6&JbHJG)4_hW.wV] -:Eb'=92j}c<xf+eVPT; K6εgVH% -7}Uzύ>#0In1z,}?J4<~rQ~tB o[T@"~C^#!xR)<\jXWnO'{s*2$'huؖw37më;AdȰ^Jڒ\3_gBrpl^y>I<48U5FcAAWp2|fw7c|+fʭl] `S#8=eK)^قXTePYC#9}nƢѼy@=95_&߲j0ac/Y4"r&+=;S G[ai=+ڻ;J2ՠ jV2[!.yFtcS:TLiޜ*QKv=L?W (iMر ߻NV5-D;JE:J; 8H~& t;3wid?|y%Ϝ@c1k&dfyp}kn? IN?3SIϻLWgc3Ii:5cR>MDlĨ9 O|#8XsYQQj}FP^_Nm\r^%XҀ5v[4$oH 0>2&&WXxM HZ@kL>&5fG~u V00}U#w[ Qf+>Xcu.p`hfFBkg>9e"-kr"Fȣy[ǐ?i0/zį5Nn&3 $ p 0M*6t5e ӿ !CR(VEfXw/)}g - h0m¶ހd7h,lbG4rUdca30lF'c{8n Ӽ.R䷯ʽ7X˶Y)S[p9x_>{Fּؘlc֞p9ser57y:*SZwGKYd2 L-Sz$ȭW.r0:;QtQ&*L *H%+~~f`嗃P{ NuuLҹK !ouip!"u  $geGغ Lq+"&Pc=~_|:y2{'Vp!bGvnj%)7cXlz׷zT/`YZ(XDpZD멮ɓ|#4pg>=yܤ҉+&[,9@o=ArAy=6Dx7!=Cqn߶SJ/f+(ˮ$FS9gb{bVJtjT~D>:1> Tf@/;BG>9n#gZ / O*& nE34r4(8e7fƙNyA}6L`j*i ]V/܈L>~la֥՜P%+X01JF _[cs_WuuuJX3:=p?Ѱ t$e685I噽JZX_&r3'!5As!U Sү1,#yLIl?},Db2I6b 9wPVi=g.UQ DN&"L+Yvz*HOQS3?bŨRlrDLi_W0OZ7^]B:VX>HdG*Xp]:ICʰ8#Nµ2A02'U!|" 0Rڵv/OB#ܶ7Qtd2ގK&W|?Т@ Њ x(Bߺ;a:pםB=E{MO$% FսWVȓѴ']=IJTQ~h]תJݪ]T3}Ir9 T297wL!X0l$͡@樷k(JPh  jG~@r71%| _m?M?x$IѥneXoi?P:ɡksR%Th6$D ,%B1mueEgVQX5}ef,DawԷjM&=fiύB|Ŭ!f:Pe,].,R Fm߲R ,ZD!fEq3lRL<noBn1B64W]珸$Yx_\p4Q~#oKL@±LJXbW]yįY%RR5d3KJ]G.A2ʔI4[ִ+=wLKhtP!KAo! Oкx:`a൉Cv! E[K@> Xe^A-ߦ(M;YDaߓ*R 1 `tݸ/Ԅ_L$-H΁cSDZ.5i֤\Ai#$o0ͺhtΨ;@D̅7' ! iDBAJJgVQzd vBF8D'XUMpϦ+%K蜽JxN\d~QQ^2ߕ䤪Ofq-fK8?/^2)±<2DLRg jGÊ&yz|Q xIY8ف!d M;fbvdmxKNbNt j6dطPz'JrbOL \ 'xzR2 >u~^hyJmc`8#ΣB:V !n9  A5#"[tB_Dd>Ƶ{l9mI0,Q=Xg9je RCNiw!DUxyjW7g7a=R8ACINw<Q[,D 2InVRZ?>ٔ%?&GdǒXr4lE]Ë/)%*H4 ijZH+Ƒ\mlVnvuI~567&0. Z:\/m2>h+[5)A;|VmfL!ǂ {A;_//EGuH*5KVݷ#v4yR`wE\4@*R; #ߚ7W"zBieĖtļv ѰM}JY;͇ny $,o* 9ȗ jf:O0gZ^VϢWJӫc(?~|* "Áóaנ(gȡзZ-#P\:t1T+5/fݞ %ZYɷI.zף4G4> 6QHGtV܄Sn𗻃l;]ÄWoomo͑a+ntԨ ƶx`7")E=D,'xVqрR.1o+5 ?!>O]$%t/R{ )JiS5  ܢ/X-; ~Dm4 }ha({ S"B3ձ2saa8T -!W?·,h/os@8AEL|2XMݤD`x2<Ւ9 ΐ'cM v4JHn{HR ]d|xFhbZϖ%DM<8{*{TTς3*ϹHi 1/ZQ׸_8+͢0yRLn)9DJ.M5Y~]3[1wb*pht/#mMi,ǚu0#m*S :smz: QoC)}oSWPQa:(-3'~;󺟜Sh`}ii˶eP4`༚l\NatmbW*\Ba~=h?'jE8~550(P4G@z̕`/l@JB}Q͎MA.*B{j 7/h4gs~&U;W:STyDf;|$Aa?Hzu+Ua?ˠpllE Cχsg#JpKpyN3G"۱<|Ӫ%y sRW%Wɸ7Z[T5p`ZP£@7XWwM/?pOs AЅ8>O\VUo@#T,յ L]8)ڠ\l瞿2b/-8EZP^rEP Z=Ǥ>`[vWZV%Υ}O p%4i|v^m_BtA}Àd f]gV/;CZ ջ{]|3Ӓ=9Q\'n?d:d>_#)_=5- .5ӈ΀0UTՃ4 !E:ܸ8-jzzR$cۊDG+Xz#Doe|wDl!^BPF*_Qh]=V@zjX@G[!ԥmRfS~07XqfWu {6FYk]"LXjh>!ickR(4/83 Y?W}TY" WlKN{!vD#oM]&R`GYQ3[e(3ɆI,d 8[ʄD}/*-UDӺ/(Fw]: p tx':W8f e9K)omo<88ǺWOEnoR֞{8 TuACe2^ֵ!cx&$@ݰ -xN{>r`ۼAcW^MLXSo=5wS~Ii,Ypw 'E3s$۩eW)st81u7SMh[hf>U@1עǐ";m5ذ-ޝ †6Z,9cvu׃<8r )\ fV6v9u ybI|?YMp9sQ?^y 7;7<Vk_?+(8v9|Lޛii@ fCb&st`|ۆU|`oZA/=fy;|Ub3FL#) ?`YlO.dX0Z0rxFDq+_R6vs{7X&K A-$ٰh iK>ce8O+*e0݉ӠKWEJNYiI*hVP~L)A5) 8XeXPV;) ӌEx}֪cjs'~s}0q "0?٣scV†Z.;2_d@, S b42ւletA!a*<ֵ]opuJQQ #rjd\>ܻ_fȇg?}J[xx)xu16m> `;ԓsrC!DqB_JWj:T~_۽>7C+;bG^, 7Qs.K4>n ,ZpRs}TBbdс|&^Ajbsnyٌ+%Kľ('KNꢽvsa%}ETd%ȴxO)?LLt]=x__B+R潴sT&,H9Q SW`CF5q0l}WUS%:wj^O[bB~e+8A:Hhm>P*eSI"ӇH1N x`oޙƊjvh#RBZGWrɓEp?)^6REJ/q~눜D1i5ښ+'otK͗?ncr-۠o?e:}3=*E/̷ W= 6"BS!@[G ᕇq D,>3N}5qG S43Ǚ3JН"0OJdE7졷|EHju2aH^vS,p_Lyp,YQP3aC_%?zLCVD'4X#>G%58ׁ'6ttQ(}I.SH(~g9uVλ]=nWkZyr~?[ix]^?On2}<KL%ԈRЕQ|BNdI:#1uH|7M-ߢMҴ J7zL_ `dcɀԆɚ?kdu%^AīTcKrN*!Q<^_gU!$n.5«jA)Yy%Yd;Wq#vԝƜX?XWQA0Xv=`MX(ܣM5@xwe6H7>BJ韱SAZ(-OQdH56FuXӂkL} @B ^*>$# gP#bM>}[EY"7FjdRIUcg݂),$@ €d|jՕ$j b7B9#c ܩ4~I'1dѮ9O'˚s54&弡[7LI'v(- ](I 7LJSDZ e@qbnE84x\Y|j-6Re n2F=a)v~ BjFM,U2*z617q}qM$@t"zٔ};)9Se)ԒѤn{r2"*Qb\!p7Iz l낂&& 5\ςxd5G#-E(’r4[\06<cuufPaw.'[idȰSҙ #1j4ŅN^g~zwj[S+D%£ A>0#YP,/ӹewRDƊrVT鶘YsQ<h ,5A7K=mYAUY٥9=`M4ae9u/|Dz=40#^$Q'c0>%2b dqtIrքm#6h>7?Z_?. t [Q옔OSzmt'MJ sgFCg=Db>AgdkS`:gFw3;  7dYe.OGЁc],hm@g:炾g lGdٞ~쵨E%W yUdw.[Bk9 zg#yݜKc~[ƀ_w[fuh :OkJc8NRsFL,v8%.L+ &$HX(q-e)dBR K9wM_YHŞAA6w]31>/Wїu[Tg])%.l)?x9+ b9l4\񏡾0~Yb0!PϏu29 vۤr_O&*K rV|<7VG]#UРV̬UPH^k;nd)}=::A̓TʡI|F6R rUW@]6.# Q9kq9x`k{q;W/)J< 7 /sBH8Dۢ2hP VkC)g>mr`Ნ;xD7HL6 /R4md 1}_yRFGNA8Κw&z% @D)bE1 7VD*8$pF)W e6 z0Ut0vb {QcN3DjG٨q4fZ*}9i@Kش[pzg"_N$RL+&|"&t2T>" V ^;5+1v\ }B+ٍDۣf&fG~/V{W8l:q)ƥ]>qN#Cj'25-/T;q>˟fmUpu#,rbФg{xMdB " 2"U0 ۴ $iVLq*{L?ϚgrY$-SZq+ \bƢ"8He\ta=J5zC̽Ձ>_k98EV[WHBO6h!Dvm7m S%ke틏jϙG?uۊmY,p… j{Ih[>2}5],|1K lKsfKp_lfZW dVl?vSzw-tp_gݗuwg7y~эQ$sd+V<:w_r'l8"K< ٜm`<a>J΂V!eal ל?+҆Kz%N//-{'kSGXmέ0[!bHP6i͘nFVpoO>5wpp?KL֜9)J7B ۂ֨z'%S/Y9r#65D_8q%{&IۼIa ,Egd +8ֈ P=V6t-XN(S9s1 fFGv 5ͻn$lYmacu|^#ӏC2FDi#RrXV1 2SH)RF}խ1b?ynH5S4 A8tns`HSn5Y[ -ڢ$ۀv sO*쨄FO1yFyFқtB](wb,- $ǜ]M@L[re Et}抡nƃ~% RJ w4.,4 0 >7 <X՞tc )?م>u(Se[eǵg]SЏCH`jV촩n/-f#Bku4ZG}Qc\p@aq'JoM+{X @6"ΘuS2Ϧ_KûAYXg7Ug=Qn MM1xu KנTX1One˰ f%^,M&յAgGMj;L!dHƩÅ iڍaJik|R{]BK}هhƂvFJfuQP:k{ܗBdˉr.Q-bx{Ry/;b\j]-9(2T*=lbKZk$G)įrm/H T}g(k@-?KpmpS#HWVN%g?DŽKvE@:U캺vN7yD[_8rAÒz7!ܶM,8U8K:W4L[᭶MRҗz{]6ї[*3 ߱/ΌӍOmqq?%| 0xZ5lX{Hˠ(E6r݇ɮ8.TBgu)oE+(/ThG( : 1S1&RZw,@$ .G*y퍱+\U|taSG#ؔYӪGڽnW1V] T_£c4LZ!,g3P'?^yQj yo^z@V'@asJUb.N.X-L76l2Sl~B Q H FujtxV(-Ā?]#hǐ0ʿ$rL簎<2AO lh;p22ٳotnٜ{>ͧU,atdfN { xT*dۈVK"GdF[KAlpAvp*H?]blHC j0fjF"'MTE!A~Wj,`5ib@ƈC~hq4Cq6=h]OZX.Heȅ})Pr}f)l Q$h8t *Q,¾ve嬌kͷrOTz汓.sya9xMBǩ2m^g:|XC!2#xf߮ IS|F>'OB~xˬ{3W%ۭibNz1`MŞ|ѡs;nսN;bwT&R rD:0Ј. ;k=uoNC_?ݶ&,oN5]P[`I1:FԦI؅64YcVQgD,}X+{{WE:`]qYj[CS8=k5Lk9sea,}JbKyi+\S 2љF=۵\"@2ww\P([kE:@.p;HpB*_!Ky$-s}OsfA`RWy|ڝZB]kbprܮl9o S$7z{O> ya wG~ I`#XXe}(\{rj!<6OxF7HPX^Ls(k2膵(9b4**3*pﳅ (O~QfEhN\BV鮣 !1ES׹^ u"+u -빧]m2@B5+8*./'JfbX77T8,i2d]}~"uSO^*qa/2r7A{Ά[?@DY7XPh:=JR0unul)h?%|ga9&`~0[oNERoa(Œ$[ݮkL@E ^=bU 6,j_^2<2mZEu}eD-;/8:!R](f6ͻi:֑c K9W1f)>P,Sd <7^/:3$ _ - #`g7-~&LA#awn*O,hGlޫۻPTg֢6F~6 Y'pt꧍ /|l̜h*b|NK VviPc8xw|2".Eﱶ^P 5D-A|tDZ nV_U-(|(lDWX㨠| 9g?jsc^mœ~#Q쨌F'1-Etb RY.t? Aj cSUjхWF֮y-]ЌSػӽ."٦9|:_˻ }hPWRJ:jW@.J-.$A_0g&u`C4 xz -2,b䉑0rSu 73uNdV5gK9 !NnckdʸNlW /\?~GR<Մb,)PR89KL%(j1?ᆑBm;Eek@[#~37PPStV %zu\ YGf+(pk;cn.هkOi*ՙyKvsLƌjw0s *B9]G>{Ny5K>t=whSRLiKT;%vVEfHQT8 bdʝqjbƩpcYl RkXMPe"D=ɀlsoNCFlr8_Bz =K@$;:1@w;tRx$sڠS._1ND]D8_SP|˨};!T(- # 9P\"uutZTXrB@ȝKISOq4 2qs-ꛇuГl#:lUͪ*B4PU=!9;3*uI.)'ߋN.x,KԡmlBHY eFflobPP5<%uuU+MDn$f}0YM[ Oo8 L5Uv/iu`X.~1y5^ }ƆBӾXdߗB,r\H&waBxWou~bi^d/rڒ{&, } @y71ih7G'_-6cIXQ(!BoKyfs.#PYc98$r2Š43Wa9d)$ ~Rk `ZK-L5(,t2&J“@.  iP=hْtʴR fZ%JIY{ۿ1R݈цFnirDZuO!ُ]A6re[Q2/!gǼ'4 ",2ӎ̸9XYc^+x,s?U"O @dj@\"MCkyyg:D'Mt^j-& caIDR7HCAgoEcJ"w F"{ׯis W մڷ.L`agb1?l>XzEB/'<]._nHlU]SLby֋ w|4lV9>pjU0KF1)O6[礝K{Ъ45YI۹xS?:CɋT|Ulł1o oEM&l [K@*Ly ɕiy,7+]I3)7@B[u63Nvu&I;?([ij$'TϻZ-LM(zt(N\EZy֡TvSސٸB^ vrW_;=oTN{uv9" ˜$iW9 (cLVFGtcsig#7KE)"lL<mg|ʌS J4W]/e"~ m;/2Rd$ ]/n'`X Dye.t!6 TKY`M_x AQ2I z\k]kO8<њ3̊0FhX7wb2qEl0V1ݞ:YrRA],B".cB֒+OECkt<7M**b֨L-]QTr^4-bT|PQBͺ5Q@ub1{!-{iKwYfMmR E$QS_CWеi$7te +O~SsqX)6U;^uBBձQ8iҧӱd'qSˇ$IBgq'N9qٵ:EV߬n ïn4<FZ >Ŀ߃℅hvDv< tb)w(šݨW$~- Dc'D{VEV6Lfv Ts"hyHwU|=@&`cz?m-+]'gtw T-0!#㸳PuǠ$u"9b x%k4aw`3Bldޓt/T&.3.D# Gm2H4c!Ea12Non HA >Ve/Ucj~nΝ!ƛuUiy!$h8SeK'k(PdN ZLį1CWvmjW,y䫈J-=A=uy׭n0'dl]  ya:kqdh\͙l?(F y |Enw,^gȧ&f 3yZPBZ.޸ lՋ@h:2@ ȝa&edS4 =ek@Ќw,Vs-0/uyw6M! #.3riDhō&驎<1XYG5c*sYcQH+0W-ִ?>e[.˵\ܗҷ4se>؜2hC -2D4HL^`dޥc +).d9"M$C Ծ2\cqȨ hm|rU o.u ԓ6{ycYd v"8tO1q #Pb!> {5W0ȁW|Bq5|ǘL;ɛWn[M!hZlpR|{xxwѴ8~[ κCF% .?mֶ|±F8L D3u\mEl ],H 驞Npbt}#0EQ[1R'jOa2CtsF 1ׂ^xGWTLx\D&a_<~%JЄH﯈#KpT'+;ۜMdN<4I~Wɫ!kMu\yx540Nƻʬ*^`&;_!8"XUno+3A={u2u7=4Fr*@Ł&([B GM3U}SYpjeD$= kܷ-rSbގD#0 %h U1#a*3'O\BJugo֓(h$~gQ1CVߺG5M ÛKH|I~ti֓)␇N$=@EI4X;!ۏ&[ 'AT-zy#WX$[2&BhG٭Q.$aŲm5_# ƩPIA/'G4͗x]]v ,s'hq?5l+csP`#]OOg 5w *&*<{)0HZ &rO6Et22>5h;,0p*yh{%tE+" 7C*kCWpq :V8wn f‚ڶ"_ :{ }9@U)E` du@јycp9p)9wS2n5}X:ˤD~qHq/A, c}$ֶͭ>yB$7s?HK {Жf;wK-gSbTUv* [jT؁EE/6p LMHjR 6ه6N \Gx34p doS~!zv"zTWZq#ӧihSZWǤy\oEX>BRnZ(;{=<> f3sh&| shc =,HFx.^nu@>FlZAJ/4{f3djV=7mn*ˏ^teݬjnl9f_Ғ"28k]}Qk {NRC`p\U';E:N'#;5[D|P1/BZTK6I3ۃ^M!1QD"`gWp2*Ԏ] !ΟvXMR2+i;[0 d8Ji/ښ|.̷N (e iy ɀz]R}`7)0kƅ)tk@еz:NѮn7Ƣyÿ{PzһԴи~Yټ]ąg3ޗMCJ%p/R7PgjWK*QW':,ZVt j.^cVؒіi|U5hyMm0hdNh+>IOYU Y~]wn(D(=}r@T-d\M|B}I&b1d)Z>PO4C[(|SڨۢMt/rY2nQ#(:Ҩ SOqQw@гL.?߸W&'(qXIފ ٷz /, Z<;p8.3dH"0vkn LZ`ʞ jةCf Zb^t,B},s"5X2/7+,= оC o@fcQ@}S'|#u~d}/K ))C+bSdFk=:nN 1f_@g! ~* ;;0dLF_*d :( T__ή0 3Llt 6T4iTK5uܵ١ܝ ?#Z?a\;h`負1d| nhhnIuw;fA&ʂoHbUjզ_9rYCCqK==[G>־3Hm5DsIbOj|]/'Շtzyh(^Vv8r@mDUr1Zo ? spmCIQ:E4kf6G#N2zeYxݭdRSI#HV '( On%.eفz>&0x%/*ϠT~=E՘(5 ~Bm( f+3 eL ۓQ*jc82)$\yaNjm [zoM2!G]7*XzJ09,Ko zrL~>Q^ "C _G[vf5,x]/)OnujL=ŷ{<߾6L;U&aCAd9rVvL_I""}zȺSxؘ"bp$dVu-RVaUCBB 5Dlo0 6jĀ1j$=Nzo=g(h -*+W2Ef@HcasUP=ٻNE1u!ZSwnC@f=1!ߓ?p9$]MݷC%f a[cu\$j5=zJMGIB0,3nfԂݸj@MWo;2M$b-lRr`d3D5ăR>CI^2t*cسҢN>O)wyL -vh- eɈob<- G{.VV\!}UE-⠸d0k&}|oXŊ&\dhQQB~rf8ڔl*]p-?r=YJHNoɐ=Aw{+^dZ OWHKЀ@RJ獐&}Ug8ߕu>mi Ksct> N˺/^ UրVM$A;#G!-mZ0dM@6y߉FvvH(#OaK|1m77M3é=td]g`^1ͳY^epO_'6f`j]cjPɌQ"V5ow7e@afl*d%.7aC5PVQ_Un6-h+*i&F3[ip{hJ֙f}QzҎ3?zfo'ui~)<wXP6MT>k\ŠFۯC79xx~K{97}u3vֈ -^ꙑd*+:=}J لU <Ŕp@I؃2EΫ]6f'*n$}܊ !QRD1F-UIdtt 2JGhb32EJl9ysuidA% jYt.t]%b7% a[>,iLN:\[LgNI}˛2cKލʅ#pż kzg$%u+D)DZdC؋AbLA3Zg %(fU14e_"w@0HHMʗ;eQNۀщ(B_G#P<@kC'FZ!_Yvg@TDlM5$كpe 2iu%\ZvzQ2}9)g^"տbC8ԃ50!7yūo"Ȱ],mݶUhrk!;&By+ApcfnN'횺!&oH Qɕ)|5q"޴z {(WP;3U!l;ٿUB 2lI7MrXL SZ)x$SÄzD0"[uDi7dO4c`HԿ Eysۈ*{&{o]X8 lWq hIǤZGWvjK?f1`Y5Af欎3o~wI/w} x}j*گ㩒McX@0#=0¹Fse AB :w QW)`qSj,r(Jt]2sH4br>KʁUG$⌦S?D+pH.Q2 Tm2=>+'RX~Ý6j9h|m20]:6̊4b* GɌn4CI~ p*?TL{g D͇d't&Cbdh(ZA'@ ObLo= iq F\H.h%T"fO!Қϡ(F"i-S8Й#%Evc `(,D8 4U -Hh-YRRY0k,UgtNW !*AQʊLqtuI]>rﭐJ[{iKXcqA[*Bq`D89פSxc^kѩwfځ`}gN Ԯ_SO[YE=I_؝{Q_s{tG cFߓdZtTRC}' QVћ*\ .u\w{;aӦHϏtGӔ37,[4.W_#A9O.]+ u(-͉AB1F ̀V:WER._d.>1V''^9>7!Nsvys6.0<'@'Π r"Gr^j^eSQC)?@А q_ GG:!=g'KpޛibSZ7L_!}ߖy.{ߧDvy)KW2E/pWjbu2 iVQlpk@#OÄQe —F2)$ 0%#ܲ7csx} V\f^Y,4ibڇyAZ&#*sYJDqo{*K`^0jC ]+-ILGdZ4, icXᚚJznHM|gƜy8VaJ;D~Kq1Z&m"ԙ"ᛤpRe4&Ni) GdC`JAVuxJ~NYJ|o<:Kr.|K}d0QErfԑ ƆW0`<Nrc3dX /\fk4Jnoﮏ7* }xMа4$ t;%Mo1#!akw\"FѥvbdVLr>"ᱨsy;Gn⫙xPBFO;)/MPg/࿘l7CIg刉ܴˢє"%X?nMH,?̺m!:cRrI;Em|zqvY28¹A^@U2 ev w/qP P]RAy)LJDN? nn7MurOݰoC;+-3kcey]Z*ei{%1y8& pfw-U^lVňe5k`o`gz~?%ǽuG zgVϺ}ƓkL?^矡t|,3QWjsUPNp@ujjF0<XR$> #Nc>!V ya(Tfw<>al7 UuB`-mz5(Q"~lx-`NUt[G|Ɋhtʥ|4?:N…VW Y/ig iӫ;͛5W99Ej-vqOfY;U= οj} .5WK>@e7v T&ժՙǡؤ i6@ cQ7Z^KMÁU Iy&׍x'>;U<84ZP ѭW4Z͛9ΘNj ;=U55ƫT6UF\ّBJi?2%O Y|Y/ xO$8+ֲL`㩼'Kt<+:6ýt ̒}icȂ%ā!gXpp<%7>ǹNMż_n_>B>'v&{A B )uVDA5*.80o?aQx^͉;a;J-t(ӑGM"喉J3rfټ=o4Eʆ]} d{-==4i9Fd #&7ub1Z|)/!Osft_Е!5"x{!.k,'`h"Ъ{1ﴟ+lW|K_[R,_^hOQ9^}Ny-,֔_=- <%Dv7v,yǫa H&ZCeFƙ蜾uJIs%JY{v԰Sa ^i'4D<:aok63Ddad.W~V3&cW ê9彳RLd~gVVkZAlo_1uQSh \vA q c鰄~IdW43a eD /&Eub@}.L30-\(Lf?_!>6>P ȋ8X u}\ g`~BSTmcyj0VLDSbnbN_ f4 A3P!Q9tDs C}cwsYs>,"'UmzL ?0L؎v)X`%x宸8V?m6"Hsn.Q#hK +,+fbn=8\V 8fmE=5K7ܸ@E|~n˧iΩ}pe];u-Ȼzj3AˀyB.8]=SϬ!5p ^jFyip^RR M@1WfRyL u01Df[͉`@[w}5rÖ/ї #[A ź͔̉u6a٤<.aϱ^c;!hLe)h\דn_15z 4k,l2kAd~ bqA r$ɧz\b EhaP;n_ԸznqlK"YbgAg K~N\`mnM*Фp,VE4 8QšP+tXΚPD"?_N{wdrz/b1dku^Gxy믂Ff6Kz['ZEB\+"€J߅-H $|ްs&ͰJ Bc9EF0tļ٬R Q k*nXlÛ.y3L A 4z*xWjhSݒG+O,6]k㗈u(2I}wD4B*&q'$YUYm*<-#oD3dhe76fV6{I/LX2ulTAv$`0)r\-|o3k-bРU يg8Ud:kJӕ^+߈$XktrG%aWQb0h߲0/ Aɇ 6 5_ㆃ tpW1 dӆ雝5pst()5e".pTC똕_'˄ԗtV|D7igc?!GyU$Q٩P̝lr8B[2~z&љ1`z+r3>脽A"K9P_4ґ0uJ_搽tb\Ҹt/Jod0;Eiʔu"c G,f!πqjW aS܂tP<J%cERv>&k%8ժ8LY q,Js·)MEw!ic MD9ҫCTjTGl#_33?#ӷd^ (8_< IKtBz3Yll ]pU'|zC[y294TE?4%;Uj].ng?$"{$V w˶ҳ#i `:?W!8lx ̬Q(ݣgu"KnAs0Y5[Fքhn\+NyX0}o,FaCO s\~K1ѰHt"GlYX{5u =ZJv39_47ps3lB, {[Z#'O[ܭfA5;8ѨijWQIߐnj2[Uy@Sx<1_aB- ӽ8bh9a@J ÿfĞ+NRiV!r";Ǘ7y TR?詮A.썱+$23Xwwsٻ)40'5>>4woBqWf/9 DI8~{aSR6.U6AJb4qyX=i’Ol#ǽGvrriY_LQzӶגgY5q011K o;wR$ML9x_ù+ˋc-$G>;HEkqO(2`s$G ;[sTW us1_@;f%tlI/Bg݊kW҈V; TyG4RTw<3|(6O}GE!pkԶ) ,YG?r/՝ 3Qf,#Jר׌MBFV$˽k״Y7@x*(F̯Ȏ6w~eKnhh.݊g]zB$#gTB%loٜ57n{"RԜm>z>9M_m^kԆusg%}zĊvfpq.Jzd!+ڣfkw$mq׻!Uψ'-y&4c\eLJ  ! "_m?k#Icpr!?707mgvKoHBpN&@+\꽽 ߆_[sxL[?n:*W[Ҏ V>ʉL<%b|]%W} q ,t:F6:sz'8GuPZ8)7 >A%"J5[WU<)9 $ǔo)A,.U1:TN_)@\Z&?56 51m9zK[9r)>*aJGAo`ʈL>B¦\H f:Iovj& /x`\gGAwGdOͿ]ڣsg Ϫ$Wvi aYɼL:,SHt&X9S+jǒ3^־j6^ᄸ542*>m$ ~:\Tr縇ݙA]oO m5Fi ̃2gDtdq|?xH}v/ʌ%G?x׮} |ȖZl{HAiPvy$X%s.6NT'; uK`ǃ 7\/?=YVRYi:? $7Zt/&jJtxWnt<.D;tRtUmUȭ|*u4H6p4Wi9S:tB^bJKWv4"M⌠}T΁sQ4L',qhw篙 ԅ)m 7]P;B`Du\F{|;355$xw%y}ymck&|5I*\kH |Ú8\RlEktϰգ $O/,ApMuuo.)f>F^ާڃ("BTqaU >>m^YRCF ̧+'T$9>V!XQ2#FǷ hNQ[Z˚#w " lտϬ%{w0cHؠCa?k?I"y~{k:|ZYO7^*Js2˷sHF3+͕BzVk{}%2?{3y;IcDRFԷ 's޾tEATUPju68[^1oh'M_Ii#]½73ո"J@Hd]4yypH.-ڈR]]")Ic@fD_z6ѯ+ I)&2)Y 7,k4+ Lcd 5XiZX mls!g׆/UlK?8 EpFP^fK\==Օ:Q'[9+[@#r423e(mhh#(7מ:wg\Mȫ'!tqS~DF0'褅X7{J7䲃񗿽BJ6S#;\|v"b *8Us=B&(Bj)=w*5X^泉)e6w1՘(߮2ѷ1N3,#s8ۡǫb$bҍe78!.;w3: JĦS$(h]/1x>ҘyB~9IVH дE(,v(eA 65?xez6;v.w$xKZ{=@O"-./a7fzv\-+;ITܲ﹖z>@3n]B!x(w^3M=R꓏R =k{:*7e\׋)bY(6iB+Ux"cALNicgRFD3 717~L`}$SݕowXAD!@ׂdJdTO_ v$ fQ֟:92˶[tmr53:"LMu=ЕH(tIX~+'DaG%V>2ˇOWIM^gv]j{t a{&v*@IGK{iL N dJ~ڮ%9OVfVL!~lZj(ɃqLD|9#blFaw<ȿ5Sehգ-l.hܚ#f)R\<b|C*j{UIxx Dtv>bBYy*mΜ:tEP(LrcNĬeG8ǾKBi0r97/84c>mFNlru,I1^y$ai~ͪbaӖh Fʴ-EZ~(o|#lry, ,uнq#H uʿIU*xAK撧Eps+Ӛ̓uTV.4E?Od}< jV{ǣrc59i{?g\ynĮ eFDiΐDk3+Iܕ쀽NQöCYq̽O#:.VڃLu#@DA+"iQ[XjR7ZzA{FQѪ-Z%G+P\m@N ˨AB?ԡ?8ƿW~E[˲F "x`V+ٚy˞bsrŗ[CK|Qugyͥ>|B-ݦCX +lF%߮$7|A N!fG6^Pp~8o hCE*?#jްZև+W+ (Brt:h)$<2JŢiUw2?ŊN.!VGeo~!e<;}!OjZ`a,~xcnH}F DQjB[ 3'|*Yx{MrFkYQtwYtm<#d`H1WmZ7ur/ {ƟGK*F tlƍOxAwQ`L 'yJ=<+s=p5|װ HwKȫz 9"y-GJ뻴?S8ǭ"D&5m=^z^„VQ9{]TYaex.f3X:R't(޾3)RDv_45f kUI.B;cdmp/7meuxG udsr;`%jXp Հˤȣ!:~wK?-#l;']'+fHTUzf1:4>Mɐ]@rHLUm:nƦ3v[ mj-4l0i(NGBH9EKY -ncOLʝ73XE ǤWˠB`T +Md@f= O)PaGSI0U!(i!ʶ1MǀA[=osOn_34iV ;owu޺*-JB ҾxSU$=HDɆ\ᴔ 4FĉDD5eLӢiי؅e+c*j*)72q"X[6k t +߂xS4芢iW+6@䡛||a I *ҭ])Μsod73 kh5\eAUY`Y`*/C3/װwZ o rT_p)>G>qQu v;L<闵cX3`c\ ܹuq 2/շmIOFi @ f0r}Cƅ7HO>Ԋj8+˜>:}v' RcEt'̬RܳK}/ cD.vDh=,yL|W+;R9-`%ahR¢=4$8i\p_m'a{[h^mN YN \g8F;Upɝ+rI_r ߊƇ,v@'~ĖsPĵCeu*W$}MQ[1)R:W9r0j׭,Uz^tHC.؉F C|$܈/݈.]^y"^"s:Cv~.yMZm 9G.h։\Է?k&y$pȼnt`zd 1|g_ W3#^pP* 2Wolψ0{!J'|ϓȊ'XPUQP%XNִ!<keIзfO)3hD4W v$aނr2J1Hxp'],B{n_RMi?hr'I1t45W>+rTEt:]S$yri0QCxdNg']Mr‰m?6*'0~.F7RsDӌ 9Gd`n[쟴ǭ醚{˥Qw<g7q_%0TkݬWA(ck.ĉb!s&lIoXWP+`QJO;s9ϵ+eQu4ͩ@V$L7Rc,!Ǵ)$XtRdqENu4zyMZnu4W16PZ pj o'!(!/ٗ%mp"( Մxv3Na862m%8+yRg5BV],]Q< U\Nwc,{e3l<3C5̓A lWVSiN44g)(?Aȑbz %XPcMb"Lp S6D14;6jXV8 B4^[ UHv)ڜL"ĿndL?~]Rqυ3Em @AEzYLYSAHJ?䊇ǎ!vzGgSRtȠ]j+}`Ҫ :N00<5.i%1;xaIyQ3Iud=ks馓"l3o[{vi9 E(=jCgwnQX]NY^|r9GZO XH~hŸ} ɏSm0QB;IMR;P|X~lem;smwvo;n?UȆDxBXsvafNIMXF#§8 I,0+Q& RVL= LO>SD``OcuT4k@닋NؗYE 3-odo͟,8Ck~-h?/PYpcT |c?yc=Lf$R̆ywҐpEoo[ζʎէQ^D/x6vO^ay= BVS+9 ݝ[9q@0M, 4\ ݦ{ʡΔB}E܈$>^P`;T_e_pG=uW+c' dL, hOΝ@vq8k^"< S]@&q=:4҅4zk=I@<*KzH6M4Q/ l| _YU+v-ɜ&a<z7x)ѤpDcnhzm7Q_{PwuhԶΫ pUjOEO(&a lC'SH%Lc82y1gDr?LEqP!ĸmB/G*ʖF2><YB9+ASv$psz1dDF$У$8e[t2{%Gv\KKY1r l܇ysk7)܃"%LQG+w, HeG|q4j;d aJ'iobДUSz%c?3G,h}r^ڡyBnvg3/D\ @ON JюhJ~ +7͑9ɛIɦvLofyF½⼰vInކg;Il9[L?\ءUp7bZ){,ɍېO.S>?>)n]Ū(r<#tFŎ_䫾/b}3aD&g0N!FR)5%דӍA >y yI" u˘3{Nd)̢mDlҡ2Yۘ mԢ4"n,=< VH㞱 : V%(l {]z)G0J$ʈ pZ G=dIMr4g$-(=ݎ)oS[\V'[ub``1 Bޫ]'&7leW=TxbhypϘK;aa$DVD/*1o jiLzB¦w;n̓H}㹹-3F[mEDhǩhWNG]ysDzK{1oS_8 Aj[0Z,gn0I-uE nR]SFɲ-tkx΀/:D nxC71'c?bNc"Ă "b1"vh{ ͎CwV]4HݷB՞;SE_ݘS)A70 )^w^zk6:FW0֙1H?7<9%)vFwYj = QTf 4z!`XDI:FOFikY:5L6R*; Dpq\[#^p/R:J8`V֨cԜCz**i9k[wDné'Xe_TǴ;d*OB;A?'U[=;4:9cMB[`췻vv3Ns>ȩ|Ȱs~C23ͬ&Ar%"#ֺ16w{Ua' "u&Q/b8# O- n#x7FjQމ(QզëӀt)PBtm#[S5H+|%x%e(K, {wTFҖNn)`=IaKq*-(G[[\pW˞jQ@ z:+2P%*3T%hT#H'^%wNKMjU-Aدxͳ$ AKF8̱Sώ\Ez-m6a,LjeX$E5gP0!Yɥ"4OrH/dĖW\<` .miv:DWd['J7{Zۮgw"1%&fteA q1HH3Mtk3D9)1T 蛞T7ݸ[s7!R1HXעmIDl {^z݁9[(Q? [[h/@Xr,DvG_6/MȻ|uI'/j'#bΌ-HJt  @tB^TwՖ{Dg&P669OLvBh)q(-,tǵF amU(ܩ H+v AU-Nۚ1 @tDy@ ;&HL3ˌUG*^Zn0zJxvdu~`ILٙtS'%>>P/IdJgR;|9k#ڎO^p}~X uUńd)fD?S(3&'"ReE5?ҙoL_eXʱl1'1!Φ5ܽAYsE=H&aܵe$ٚw-ߎ Jw~daE_g3#C6DLBdhDEin)v! _s̅^O߭},y8ll6ŸnH?.Xf)~TG^Q0nLٓVj@&o-]:O{j\sStK*NEzѬ55nV f-l,\Aj-hEϼn0^D!倯9m]mfy~mӫ!lOGGA 0m}+1J,m7o|IOPa9A4ҟOt֗^SjN屓V@0)7.X2he./q A)EoX1eC㰾z'9yjK4UwBqs^T#OH3蝝Gr/+Z3nb&x"7gr=&!aB0T[k=ױ9M@I;6JJ &-8G_!t0*BN\LOKýȯΒ.q^zxkUqc{x8 TXzgcy% a3u{D  Qɪzj v+ M_ؐno$R6^GCb'){'|uyL5heFY:{iR&&j*ڟ٨9msw]wGp(B!+žTHeEg,cOW/-RťoL|H'ކlف,*W\HFcedj!cyO%۱;ՙN瘱4-WZv~BnX2,i(m B,2Vau JRln/yCɺB-N h=-WPla8e Mr}:tO *Qh8 WHi/dWJ=bhe@'qБ7{{$F%Z7օ硘H<$h]>ȉUdy>9v* 5);8C'zVN•)L=Ybұ`M1ܥ;bDZ58 6Eq]/, ȂE521nZ:n'̼UD,0wg3 3%JVg=naڦ;/kn AgA䢕p^.;YAK5"WՅ'Fd=f6u^ҽe:?Peon,PcjL뢱R܏^t*DG!4@.sNX"xq?!|\gOI+)l9^6wcHW .E">\s#}|$PkYQL[,"G*bmH ZO6ؓZtO0kmߟQq嫺CD6MEj\'t TaqlƪR ƣDyt Ԕ\Z`+kn)e* j8\i;e_Tt{UruUso-|S]myR)_rLdرAp21] <;yTw{n1=/r; 1Xxd|yV ކDh)0,{d5gY-OY1G;5 ȯ!;|I3t痎DZC9-&R.}$ Ѥ7NfܯW  CAX4O x8[+~wp G}/pK<>ҏ[TM&Caղ B$%y=A_+ 8I($@rzJ*.HĦJ6W,hKx1J\3f*}R>=.-C}_b8!X_\o 7Xl6g,6P( cpEWEdBu?Zvq=7 #6iGD4]ui/<΢볊geН/+M_6& 0gH&ŦcW]Iz5 NvId0.xwRb-p$rzФ҉d͙ό!V6@cnTR~৕ zxedܸU7+8%麽GDx7%d.ԏr"#P2z[h.OJ3e4j>D$cќWIBj\Ctyd0[C~4O0Wjn*#^:NA(疦{R{ut#MZXulW H)x#0GND(fa)Rwّmvt2˟'4yivd\L5$P8NS;ŏq\0=뤧ꙋ6 MUc eOeK]Z.kʲ{L.V X5d0`:w[)[,p5 ӿo Dc~24~ݺMva>:TJ  <ʐ. ƈkhw˃h2x?%˜{KkI;j!Π-^a^gNb5U+K{ NyHv_-7 j2ķ&wxacXNT s1@|wZR&%@/IAO= D;[EI6(vzm 38QHF! e{* "[冤BLk0F'ڡ)`iuE~Z[pH1A%90%!mrnG$B:|fg*hk/繦_?8bKB bB]O&svS>@]>mg5cp]?b!ݏt+DU@Ǹ,}\ T6#aa ʞ U]a޾ c7E8IuokW\-c2كst*-!C9 ׭qz b &7oK&" ,6t@W5Did_B묣=TB qgn⑄ AR?\9!7t1E*V9/`kg#k3Bx1!P*ezbü˥N}r_{#Jzh^<;ݑ*w8f&Q,W,T;ޗe{{ *LZ|#gKcdZ/E} .N1VHl3 XWlW, 8P&mk|Dˤ;Gi;6kfA`tM`F0^iGKYzzEsTzɕgeD*b5`, <~ )Я:6NOk?3ﺮfTU"2}e|"4{w.=Vн`]]a*ӱ[{i6g߯ o[/egS;"G Uw:_ɔ $?wdDeVb_ ] ;CW9Hd&S4{U2WyxLHElX'(_lGx:ZMx2A!a&] 8ۏ2,F깵si}khթH G'Fkm[-c XIyC #U$GNIBiWohc%r\v 3;.֞﷫ǡ,ބKYYsϊ:w4 \O4=xVQZ \J_v9!K.3ԪZIlKɩ'gA92$QU~-x$N2c X-b{Bgr5:G7+kLK-%)nv†_.F,Q : 'Rk C{Y$r>jъBg0vt7U҂ۓGͅ{IEb| $9w^p'd/ ";P]w4 Ӕ6*֒%ۛ)]>r| w폻=_PO>NiZv+zyMczo *XK(JG@rlg tלh#m1HWrOWd[ykHݓ+mmCTJp)Zߟ u N0|NC}~HsQE0 U(7C/.B) 9ETLӐ6hVjP2(3>iΛ/X_" މh A$kEȾ@%"DH񪱿GYx0XsQz}M/w;d<9wl^T;}FO@ܴ˾vJ6h$sb,LhVXƿ_gr{ @/OAJp6qnB!<f K`*  kH: ptANl}FH2ըȂNz ?O-}3CaȷGѾByV#klZp,nwIyt^&qshOzGm?_lԥ:+ 9t\.rx'b]s7i7ڎBme MV` `hucێY,x2N14̾8kG`6v[฻J4v{T.+Gar{Rv{7Hf9 ѷJHN)a=d$K{߹nZ4<|ȘJ+ܒAH5YALJgpFZR)c"JUg[yo:ph[`n~2gJɓ,BxϹ7Cn`O\!G bSK,^X6}S QN'6"E a :ĆÅAɡS"K:aeB1<\WeTf#lsa݃VQCȲU >-7Iت:ޚo59W_:kP52*ʥ r"b*'bvz/hhwV"SȏZTiS,].b!U^%%%+y/5}0Da;Y>i9Q ޡ$%J}QmhkwKԘ y!FP9 \? ʕ۬xN#u},[§ǹ7BQy=T>-]L*ao@g*LLHʱX-H~ kh %s v1e )-6rCW\f} j Fzh򟶵yRǚ"1uE hӟHφ%FiJJuyZ2N\8EF 8`[>Pu9X&׫%cGj6Tv9'f%TׁgNؒ ʒA ֺ&(FiQD3<L8 &#@B-XFOY_n ՞uO]s-5+qLpKQ,жm洡o* nS<,|կzT)85}ƼIDJXxv;p8aAfĶH\D>]ij߯mw{tij:r ١$'|b^MUf L%֏1V7C( kZUbDi*` o,F |T5)9vKOӡ<5oR'Pg70_}SΛnv.\”)å_4K{;?.FX[f"Y_v_TtP@/AjLF.ݱ|^&鿫=LXBP ܲ& t8?C:kE%:Srv#nV>/al$j:D׏I)Mk}~.ڴs{;`d|y\|{;vSAZӬA5yHH~TL\xt-(?㋎)Oq"+8: 2j@&42UdžǨc` uAtX=gA|491yŠ]>8nNPک̵7ݔ+(:E3]9|`YQH"2_< Y=,|-{qީHd^3t +>~]kd"7w!; kW(qMٝW"oH:p^&Fv!fY@p*}zq69]ok]Dwc(n,(æОLyaߺ*'"÷u2t~iNg,>C/%+Hƾ(tfc;c_Wדzy2wX!M/sxrs0HLk2ʨȮ:^ѯ>T ^S EBc]n;AČbyWϭںif6&$As͆SJF"ծeP7T<nIu p9L$2K7cD ±Ba5}Yķ>''dl Ȍ WMb׀Y=rF\;ω3MrGqm7e#еW@jmf_DLuףǶ@ (NW?yƖIɄЙf6W$,?+[l Fwq)%Ɂ%ƣmlnW&ONޜ[- \ra 6BF!i\ͧјPJǻK$Ɏt%}mZV/NXD*?{wLEo+wa‘cPYH~mΚG^)DEw=bZ|4. H(²uӢU!2[M{9 > GAg.BfVEx ^) Ļ%DBK$ZD+oevT[a?s!G%̡{FyiIrAhdЯ{ '!X*A1(Ԇ`zn+7q\:sކ8߹^"{%#Cbȅv9r5Gܚt~hFc0RZ;h_U˨sS~Fcrc?.6v]5>ld 6P 0_Ď.keD85RwJ݇n? 7wIWˡg2X<0p55p׫ﺧКw9ݘsu $01fck`*R9'Yb'uD2-ż ,R/ y/ Zi[/KjT;xExg710ܱ9NpB82z-" ?mG\8> \ /(ŧwY֯\ǟ"L^>?gR\?hڍJ2&/N0T͊Rs ߑuIiE[Ql'7AGi!AP]Ӟ̫NmHC8t/j(pm[Ə֞ @dh/sl鿩7qڀkMqΤ4Uw*Mp~=5^cfb2D7t4majŶnPhv|m$VA 0wPlF|HZʷƞF>b[*D5pM }XKO$kaE,MR`ۀ L!RfmXb ~qʮxeumݭ9PW ."KP!%{tLsX:í \y;ϲWW3ZX1_o2C 5畤F*dlj1M2J3&~ ܇7=`1B?b/k ) ~ 4lˣRUm;J EFFXC*CvNmb+P368.l[l&ho*zHM}ZطEDyIⵜCHj~TOa$˱Ά33KG< hE@d;>`CiVm)ԉ,Oʵ}MS*dȍ(cV]}lSQiܴdԦxI n'KH)dB&XWBVvHݐ^ @Dք9v@Yщ19S*ΠEBXqҨH<\d-7J6JI [>?d$0W@}G6HDXL/}Q@rQێ5]j"GAlg9jĜ}ϭV^CMT.0A^:v&{Љp0~|[pD?`vqzb#+&P,Ӑm ̲n9FyFtʤv:f\J_Dn$ҏe'|KD@Bp_)ڍڢk[ kv1U< =<`ygFka?y3JfZ\OOkc$;=lo]G]iA[ ɑiQz>Hg2͞&M1Mdžh.e go 6b>|zvF=\V!UJ_YUw|H`LDky3{{˞䏒K,> U-JGa6;ye/2]p'GQ)-"y'gV.a vj7F䪗_櫳q\&sR>SJԎ<]y_AnJTqk""9): ^b]ôV@m(p &]m]I h Wp Os 鍖,!k*-рrm9RƊmI&w2,NN8GT詖 $9b ja%6w}0AA䖍66{/Jffx%Z,93ϞIfM={t!io[{K h#x 8_jڪ/4/Sc;BتebJɯ IU} dY&:IeCh)J9nH޹Zb?*"JG3[MDd:@zSxQꢻzL[gttHO=zRt*M+Kˈp`:|<%?nH7u =Um5t|Le)& վI$n3WgT8>55[/VMLXR YPi,)%J,sC%#\MDTI"1|dȏI|<99i3bQgc-+ r_E<_:N|^(ZTJUɯq)L=0BKQa\ Gr>WjEVy}BJn6 ½sͺ̈́~Eܱ=N~]{~A$t׵5ߨ.fVؠ|7@ssi"\b|O}~ρI˱ji0r=>j C0{SIMm-ÞkWںBg5`Ņ01YMfX92dO`s9К*rgNLUl!@tXE7!DɄQ'+^&:m&*tƐ)B: 054\CvTb BHکR짻3e&\*yUp?͓0$ל#0qT|KhMH4$@k]ZּǞGduxm[ 6d\v߁DÏ5L '^5ՌTƌh=UN\Mu7mj,GV <P;XW| (z,d3}(^›99ԛM#!"x][y~yǚQGYBs qf1*qp ֲk͎aŀJsj]-:(O!y!}[bnd%9Ycw?~/2;\XP]ĀfĥnjЛb鮂\ÛdߡŦ^Vw|tP-jux:RRk诬u]SGא ¶9iHfCY?:xt!2D"\Z0}Tk? j]/M5LmJ+fV*y-OUw#h+ّ*iлgIݻv+sn W!ɗ gK`fx/IYVUD/~\"|37>9[XmP;7<jk7Ͳ _hTtcXDˈt"n唩1ӗL18qtIT<,݊)}JZvSؤAMe.ܬbVM<,4W>Um!eꋀE "7܁,)Iy݆ #sS\P-)iu @V0f/ xWm/FPPOnTWLt˄Tȯ|. P&sDZY2BK{+HzԁbvLFӂlANJ/u|pj?SaC6/!C3uq:F5H(=K.H!~z(e U}I5s><FC 9e+*p~,)8ɗp>rxݵ ځc kЃ}ZR~3)$Ƈ_ER\IX6m[ >{]א64(JCl1Sw%W"lE1]hMtcju"c9XAqLh'^: *=h*ݼ$P>'/>5q443'. Ms?kkxtqNhHsd&9J>B숯0$-ՈFt4_&kx}I]h~*&x+u=YjOFc<S뙜s|+և+/cXf_7Z̦ C Bv;dmN;w`'~{o@chT&ǐWGp)ѿUl¸jBꈄHMvO?vu-BKe=.{)EurLǥ:w,D1'Vz6Mb9?x{Xj \Z#>.Z\V'b}'/c]R#N Bbɷ}{Q]9Qejܻ{M{;p&z%4HQ+X쾟d_r멜ުyx1D4P +R9F d j$xlisrg Jވp*]|{u59_^}w2s4|0ה;fZ>;swJ0{[6䌬!9@.,DB%hjzcR8ה'ZţmF<1>/H]GL0x͕W@ s r8hg{n6(LZ\Lˤ+ea_3eBoYp0k*O/KX-I7}-A7yQou m<ڑi8^&F&v+SVgȆgdW$0Y\l5S/gT؋ }rO^( yG@ٳP$;Arˮ$Tܐ2Wz0} b8kW(; ho=m$~I6q|qݥb8¤"bXm;y:h\N҅E2}A,+Gs5_-c{~׿xqS#͢:{8;eʿ:HK5+3-y5qnbؽ0׽@zeeĥ5pmz}lJ.J|ÁWAoI&akcR,2@)0_1RgO*\2 ϶->Xն?G$Bm+WԗBDlf⮾ D=_yRXpo(9h1 Ws*('t^\?\isM21}Z2֏t*q3SR(R7e"R'l5/̅Rv oKj<2O[w״zM=+,BEHy,;N\_,3WOe: q|7TLYF&rFJ(O*d kA/ H5ABXQWRyhOu"-QY`OQv>kmhE?t5&{=[3mq7.:zwaTFP$>@yКk%e%7 DPjIwv<߱blH&A`! = 3/f$-Cq~|GwE$o[KHz{ZRoɅYŢ4ٓ0Bɉ=^G0ϛ7؞Sbev- ?LO~<(*DN+C´sD_+}hr 1S15;](|ֹX鍦ӑ7ЬQI݋t'A*=Z2KfX$V1w<́`s۫b3K#uSZSbN8H=D5.n.AfJCZӚ~)xVj_B{uO)2T.)vm2ΚUȰN SKw7>{Ԥ38v:ᐭ!V+Ys~%T%6E$We>3Xȡ(,2ڀ^iˣel2E4)/> >5V"s-WYpZ7GUrѭœ,~k;Ph #M%~4^!iFϟJGΝ |ڥBOd( '8U#;]dh(O?yS4>z3fJ&QfxY`1eP;!%>_K/zʽd%I31#aG#h |玣. EΓQ>?KQp IヅRFA77zkXnLDoӯ/!JUtNј`)XLB3N12H|w`"E$%$ SV8l| OѮ؀\R sqВ_Z"*sWz.Xs^x7R/Pfu'o(eKD ~q6 5+9Ẅ́rM.kyt?֧n>YSQ)' 6.ANByN#UN&F8 ԲIqW.U] XwKsG&u6d LKa"$@ .Kv6F*ℕץTmA֦W!I ֞]A)dϥ6>aad4WV^d.θ\7XXf HbZ~_pՙ<Ɓ{V.U~ x6s7 +8ACU'qvYpOA˕lFģZ~S gs2V h~ȓ{i}xuȜ`ɅU]$ Ԁ$¿@,e}-۟%jL )/xdjh>׳Ow*(RD`$O7#7j|KANp+5eP }wueyqTCepT+ !X$mY=g}>}3:N|4#UgaG]\Q ƿy(_I>7)y93P/=7 :yέB=]@!RVћV3  v~$I캺 ~>a"^ \31jRZ~Zs 7ڃm4v~ׅtE?;[$}_Vql)N'c;J #l@HEq=Gֻ=mU]~>GUs``|'!TcZ,ҳ`F&AqlNt^wz09f1ID4g io%\EDY+.aJ]^Umڭ>1߻QHeXg<ٓ-nu\(̈a3zCs)"5vD9XQ)T"{Eb>#S,I:͊j  6|DuE\x{?$b# LDj[;e?F͟<֩~F ztX M_Q̿F0I*j0H( #* BE4/L}ŒZ4M+\*!;8NѱBP8.ǂpwhkxPAT$K?ц^J&$%u(Vm(}@N1V,ﺥ~GB1f?)&GfZ4ES+. {s,%`v˯3W2[&Arl"Jnɇ1JŐ#~hYkShXz'ybEת>=p =rH:֮F kƴDe6K%) c:Jyg@Pu[(DcwC1!LﳗmoLPد Ja~ʝ24s4=X╖%+͎hcDq{N|!V'yFDBR,L1 5s 1z6`WX<|+f(>Zρ n8(ڤӦcuDVm|, ڕZ5 ;I޿,?,a'/z~ ZH?M|SQS`mΓbO 6|%}9 pʽgZO)?g3NUZUtWë@ e8sl ˢJ"uB}lI`8]] 0ʆ{á*jFA(Wqt+ [f+QC݄3cd~w!V;i]ңymMZUb||l͝[r<~V`0YIT{[2ChG}"M-|5YFT5_-P= MLZCGG©Fyg5R/O<λuǵ4Lzx\o*1=+gv? WR {|P߶8c {XQ`U).RET8}w|s.ͯU[Ggn Rb3K% A]K |ysl^m009?tpƓZh{> 7ʶOŲW,+?l*0$.^j7rɖC2LF^Z"iJ+Mýx>#^:8@HH`݀#Y\FtX4qgZ мߙ8's֩Y]fq3&2]r*Qz6"? bP}Z^qt|2H9<`6Xyvr!>ǁdfݬu~#lHsTv 9h}vcH0%"7n~}_UU^W9 {"_iqKoQ_(l7-U z75s l$0w)5vˀf;!Vna85Yvʊ[MHS-kPm6ffmP]׌PevCNU}qۤB|ًd/u<pyN@㦻{ujΞU0o|,S~H܉GQD?ާ7:Q>ئ'Hޔ 34Fb/G5XaukȑD8> #k5״ŒR t##AǼcx;8mcmu# '8 Fv`b?+eM6Vaav6.̛KJ$Ǣ&1WX} #]xlǜ J#Ѫ)K8wjdMWbջԼ vYY/|( КHyYb; Ma:NM--1Q3EjIzmEѸt4QH.JUOd(9elöT>zRAeza~:)H)GkKv9k9Ǩ)Wnsn BpG)-NDq=P{k' @u'Fh(L ʆ̀ɔ}ۺ^dЩ-Uغ` .n_ ~VI,'15ZA0fδЁƋ[0byVщp̬0 @Ӏo6PUlJ(&zH5 ;TqPQ23=!]$>7=4xaupݩWmU)s2,S0M!j[d>keBa"yIO.H]dρ|: +Ǡ,{1ֽCحMBe~&Ke7u/Rj-+'yh @9o Nb3(0! ȋ*JqSΗĠC(j!\LxJ| h#uL%F율jR\vPK&e׆c\1) ]7*QP}DDg7q3:vij4CVG+x]; gl 7{ NwO#V^A^%(㿛ATen"d\L(qFgzV& \XLG,֬ tG]: UfyjF<Sh]kx@mJJӃf:p(/@D ~@9i`a5l}L叕$շhTPX ( O={!5$Ƅd/b>Gt#7M 4mcXhv%C]z R{9G iJr&e>R6*J  3&&XO@-&C KƖK@m7fs ޒJ:Ao"aK3?,5 d4L(RT|vOAXk;5eřO+?p,nPkz}Y)|%jHH;{N=AgEƦRfzT {S x. 7ws:;qm<'CхAnqM;x٭t\ z:-Cu/πIwrI3QGX@ W<`R1 j8lyBW zq)NMp>UOibBI)j9NbZ="r+[9j ) 0fHW_F5lĽ\ؠ3 _G> eNs6uW8j99hϗ[(RhyBX˨LVE/Hi:=ijoaW:esQ#")ʉ CXt/f`s/tjX{09S3 ӏ޽  RKu~Y<bЦj2mfxꌚfs .N ijxwz~r,=b! GU'tS}L qaYQcUDžXD_<ɢ|( ,iuT#\[ፘˊ~LJMB])l=Tsd+l4%0JDЂgy/gbi=_#=p)ab ܱLZITrfm4w_:H_& };(/ZN0 -7G!hd ijy*s/}94.a}YSҔ"FIͶ&0k0ihD1hxMW/n<0TeTd0E|p6cH##FkDžm7x'\_tg ]Il`ڴNhE(v|pG"w dlq,vbyA$0-*'-s r4'!#{٩u&wgsqgpފP0^sɪƹP ="*&L?k2*qYQH/bJ,HBրZcWxK<{ؑr[KXn8ԅp?ZJPQlr"A}[aJȚsY=`%3l(ߏ{q"J!!O>IoP#O𠍝5"Nc30 ve΅yŀJAE. `Fe~;1OG6`@H-XZlLcl.JSVLX5*0ҔWQnMM7/hhZsSu^w-Ȇ{sbz+"~s\Sd4?UVT΍i=a.Xj?nJodf+"ϫr>a"$"T˧^>$3)|d $nҔ>YqcF } t}aRm c`UFT-_h9CAzQjCWk/fgϺ2Iu7k@E#)znþ.nU[Y^C!ǟ&a Nwҳ=wvę{/SNm?*xy:Uo}n.]x+ Ww#+&dAN$uX͹D$_F#7E4gezFKi[s(jr%ooô$nD +trQ&V7́'39<vxibyԔU?l|oc]B ,gZNA}b~u;5ٳY$$Rˋ*^c8]Udlר]47[Y%c׵⦾>U8+`)&>wHsh\T;0xwm"L~-/LfmV8pI@)1= ]fYnk֒0?9Jf ?vVs)ISH/NxEy> $ x&My ٌƐ"g_B} /뽈4&N$VR)YՠWsn9B'"Ao&dq^>)(=&Vgy^L6~@fS zAݴ~ok-FDǪ >nm U`D6S[NZ%%T:~5>A46`$"+pWII&*o.a!5NxvhQDB5ha21ıRQ9xJ[׍WwZ#ȓÖ`2tsN3^۷ KJb39yV(3Wm)$FJn$^^h:ģ%vݦ}>3׷ .'uiZ*ǂkA}K_h#$yV$_h5!2-N XF%fv̚ N/O a:k+ H?vδKVԕyjPµÄ&ltd~"xTqvIƑ+O>ؔm&eZ u0>hƩq믅4!R0 ιu. 9@hw_)swSBdt pqd=_3_ۼm\/vQ 0,H:Ps4uɰD`cY 8-e‹&OB,feIQ"q+@)؊^,RgWCc|Z׉B \ꝓ .g;'xl%n6aɓebT?;VЇQ36uC#[i|zL޻úFf򃕮Us۠BMY-|@|v_e$E`~j.?M5P\QFC Ȥݠ@? WIg%<7%663/r׎VYAb] Ô>Kr܏ѩ.s Q{b)nH#Iet?fDxA}ek #2#J~ ҟu<w-v&m둅R{% \BCfșԚ)>hf|K!QxS`^1nr]U@{<=Y~ }Qb.Ky^ PiX5*—0ڵ0p pD_V0F ʦrS 2(*n4<j]t Y(=H:4w}fK9ʪj/1M^ȳ7!j(t&5vcNBʸ"uTdڏy۰>>ϴ6JCq4.}HsqR0Y(KTPc: m=1MΩ BtP 3oiL7)S( 7B?) 6eAd Uq3~(QI7xRF#hfNveWb̥rvCyqN0!84Zfm`o;4"OdJ+_Z:pRpC!PNQh_FDuPBarNw#l$]ȯV |$IG w35X5D}r~W5LuCraDn1_DW)pͮW@f:?[b-Kb_]58iـ^>ǛJjhl Ng77*eڌEZ(.1-baG?Y%$4r+-1tڌZWQ?<ˁ_C?W{6>C\:"8,czKؠmt,IM~K#E$f=m)W"("X/)1 EW.['F]y갇bL1F"\q[@Ea9)"Qc//[_:λ#V憸ڄՍTEvsI,0d#;|J.OAìb:(%_53j!+~X-t}P3-7/Uq"+o4,2PG{HcӈFp)cݘYbϭqH0KqP /x6v|DG} ]6*3t3 xɁ⁠q d@qHs[イpm֞v.>sQGs#c ŷƒJu@u O&!W+2uY7O^ח:Q: u kƂ$`z7}pְNY҉K{.k?Kv!|Ӷ@j=QA1ցU \>'$?u K{辸AV:r/Z,NOjsBb 6y[xeU>:~5Okڍ/VZS 8 (Q=TqQPhѪ?z;5q-p>󪸏#dńQq\P/@\k-" ?|.ء&oRͪ=D "wF&{|74 uO+{~tB^h<&c^.i1 X9*nAZuYTc"}n%pXqhDS #ˉCD*wR+bӱ{gs9MGc N> ᤈX( ъ6h- }Xa~Mjvo?66v UEY5y(= usQ_pG!SHnBh~,T-!Icl{h IsvJmn>]A͹D翜B߭K(bw^5=C}}i;ڼbOW = }>gUwxK`aUmoOwB͊Fs&Ʀ&Uik\(ޒ+#b|jPP#8GvRrX.a;~Q0 SM*\NkIBd3pX53)|d;{,1Y-{6^vebrIZUP93EȤKڌl+P0qGʧe=Mg:nb6(➋2q6Q)m^B1XIJ"ySQ)S0׊ z]\}@:ekr8t/[TVC WdcQ< 4IL60]8[Hmi$+#Mp+ q8B,xx"@zBq- >0dc/ ?/#/EiRph>{QOܤd?Bub)m+*vK9jT!F(Zy3QW7S6PZJy>6jEf+)n\p#]8zV̲c(98]$.v}gpNWݑ֦̻57.gr@iDӤE&{++fds>u4(/:\ԠU_` *y/7ca9 p 3/:Z y|ЫU|S5fC_),q3*%)9E\w]Wκ\+b,}<-hmz\jzd2hu-Õw`7]4Ö XKX_3Riv3ObE  syE挵ȋD;Cz0%؜nWdJ]=}sYGU@_#?j-m_|jvul$SBNIjɦ֒7Bx[ QbYs6}+D/ _y j>Dƥ@D[l= S ?x⽙ݼCp8?>ݭ znUh#oE<ARɫB[&dg&dHO21' sajin6-',Ʉ3c5po BĽPϩqWCjߜYu #\U8;vwdK:1yeч0Lc5? Zpt_F h{vv*x=]:Q x"S:(ğMkϼ]KX}ޑr4́]iY%#.-v򑓬OJvl|b;oՊ E-kRVe7]~*"¼[$R$y9KCfC_'6o?dq>6Yx$r"ÍV9H.SН#B\F1K,\^ F4W*d\ڌxl S *怙uϙ\ZT2x-7*(.ݶQ;xό=SOۆpߊ\>odMl~ݭ|;;2 PJܓ:wOϢΖV#uCZ+a,opOT 5 /v3asRu/>b FZ ]Bxk+}ܟl5wdSѩ*(½f$tI:aC0zě=Z3q}G7߃ Q:2v}-K IJz{6Ui$,q_-x೒S iWdڒ" m0Tm㠤;Q P)"e9ԓzE$Ak!|bx8&'lp26_ f)xcЯU]陊D4S~BM)8etVQg1BIߗmxܺ2 C9x@eȖwW^OEB24.Fhgʶ-DZ 1vrnu|k[S!/,Դ 38߯=[Ȳ&i*j@)_’ ѬW^ozIճ7o .'מ7vS<.مv*kƍ͙ cOe$ }u @D;Fh#!5EdفC&(Ʃ)\>ڸ$y9Sc]}e_{(I 18l.y"gY $o}g {v—ylb\CĨ,_ o0 驟tu;Z{r?y$=3ĻA֟+֞41ʜ*N|& NqBl<rO__|p=-}ߩ 7/"4abб3z\L0ph$tҊ;7@\z-u< t V,`!,>g ~rhowi<ڶɁhF_R77wJDe>Cm%1 tB@f(!JUbփViW/x\ôVTA[ {̅7wiR|F a+o<)1'GoL7E(уhA> 2GrpNh#2G~k"wúZ]QJөBBܩufb.K`.p,/$5k8dcFMѶ$ b7ddSFș苴0 CœA9B!!Ij_v;ݓAW?$ol7%빫 }Gw,z>6 5jHs4l/N}5~ZbM .?*bUl>{.r2]]RvgP+{Ȯ&yRyL$tɌ4 ~ psSo,AꍧM}NՓ-p] ^R.A}.bR m7Y GsuԵ-;/ "!?J𣶵֎3L6TPX(<[!ꌕ:)KK-oaZJeOgsS[W*&zb'ѽgKb`qlcpS4M쭄tnA65 (q 9yn> TkRL37PNo4뙔$*lt.u7QìW|U2L>g}cO,[P"_9ɷyNUy]1-3 l}GGSn ioEIz,4)8(5 ?!rHӎOL&L$rz 1@1M"-G;=:AIhvkZa;nϊxm GRQQ&*|O3{uLkD*j\nOjezP_0j=&eTlX ?ˎaC#R v!]u [,;Cc"1/2_Οԃ!V.D%n]6$2StsyA[f'zw<;;.LKFdrYTr$5P+kї)Vԍ^?n Es {|#Ypg! ΍t ҙɘ:uM,=_MvUU|P[fU?3%8/$5^ӑP )ry1^[rL]{ѽF9IOЙJV G¢wszZa"$^#,?5k+WQ}W=a+lߩgB&cp@ms<ljUsڶA y.tFzҘO4<1WSx CFh}9řއq̎ij&TCԃ ʛ[Pb_2x^D}fe'p= Y5]ZhfY@HD•B|S}NoH}l/# R m ?X OIF7L0]QL"p.k[hG'ȵ OYȫxF_ Cc*0#(?OY_1RQ+kalXO͕zU~J E?ZV *kD;vZ= ?-8J!1#pNu"|XyLx~ [SspۍE7#^JWP#7ZkK8i{"i )RHxB5*'#¾kd$Y0=NCt< ['֏dFs{k*&%J !ܔ¦5Vf[hC-.(g2vxE^{ϭ20e3aK7R ;9Ť٭E_šv9YzBcKә]mԒ*Jz]T k|k7˜. 8k8}?tnU^QSi%`Lk%_a/;0f %=#E./] @~1VOud%0bk59 D*Sd֠綍Ƌ9+{r4" Ϫdҍ ahc+SifŹ= =E~M<*oǐy֡JQ9k{QlEqFvyb/A#g"/,!|oB^#}?~$̈jlJ;PH67- Fem Pe^O#i+ɘ[m*ǧxpƏo׫ [v@L~rFLMcP6*}q K}ˆvaoRCp6VfYy xT`. Ms/ ϷNWvDxE狔 H@E#m29K6iMĒ)'vs볍I" ѩo:A-ڒ;fRIV~i mZP JYGsO<覤͊ˬ WwÞ{P֢ p {̌k@Yr we-fC"nh&R;g"FYc 0 FJ!;hؙ'(j_p 6ck8Q:ѮΥ{:Xd!}iysn*io` .8{X3G[6yM{20ҔbzB]Rc ,DCxA%YacU^ - P'$$S?^]5§oqO[r/cȈ,/\nKNB?N%%LQh`-P3iVTL|mvPsA3O2m)^}V>FdFT?ft3arWƿeO ^Vƀz!#oHW1sBXT V&]_B1EV3iٝ} F: G@U*Ug*5@qeqgoZJi]$S%Z`]:?^`LsE&hxR',ftTcGơK2oqݜdol3%OCzS23+a&O R4B+QJxUv_q BߖZOyʃ9EToeEΥUn4ܨq܃ H*8uQ1Hyv3c4O ۯI)fLA"2aK@<@gA˞mW I#j}P{Ъ)Jp:~a\}N$)*:'tĠƮcY?B3ó${\W ьDbܐ( эgµ%CaַD^}zr*y_KtUH4}C K.SARlOaCHSw,I?iJwwu6"Ppdm,9X 2i>0ƒ(w({_:8Ҷ fa3w2K#Z}hKc1q@q 6@}ޜA,VKAk9:)p,{c;,RIQV40OG!Wb*z'$ͣgĪZM`W4ό/mKXV{ n<ձEы iy w^3qZ̢4r2İzmVՙ.7!Ҥ{$ʮ%#x"ѥ_ܲ%X"&eVXXH #k2A힊Q!WY_Lt좏2KiuK!7NxG[X. =w#}7k@,|VOݺc:9m1v.w `X6unqAmxK)٣X|el}'L=X86#Of }! \U3 `zߤMM|Ȯ9i)7qo&-^~Z~,]CG~'Ɯv'-gэKKB>;0GA/?lΤjS?aa hf A4+!buL͑8 p)8'rɳ 6|Cֈ~w#mWڎC@*LkE_W<ދ7R% $MYQ%3>UNTO,)#frJu]#HL }s0.i Vys'ۘΔ$]refW3o鎆37J/&)GR<"uӒ`i0z3飄K׽_c`Hj UXV޽:FoN&4)EVXƈ?s'6CޟOK ၆w|GFZӀQn;(ERހo&Zz:dQZ>5_(KAmWWf`V(?cm(nI*w\4L>0׀B4*neX ?ze~B* ^˛AVTI砮*{߷Դ~Bj`wj89TtHDiF(ÔH[Nq*C߾cY+j͗/aB7RAe"MtʇAx?`͵yӦA9.v~WHG0$=ąޡq$ |CH*q8i%b6I3QG24BzqY11gI=4:W.j1*0A14dT29DW6 iv܄""8]i]HHޛqh4OD$%u6\5Sܹ<̚xv `ǟ*zt;1^ST;u][v=69IH;ůue}6Vߥ~8{Z'@f->k;'4u 2M3H'׈ZӃq@}_L74`7Qs؛*QVC'Eմu.eA7j>ƺZ&ڂ>'EyGvô&`-i[ЅQt+!"+{ڱ^gC kK'Seo/O>aQ-"r^7DAA,L{+2tRw"_n wOӞûgA:  @Sy]ŷ [P!磍;ތQ٭zo(TʫWjG [78H#f=DI")ݰ /ޚs5Sh|7]YF0flCK|*u3i Tge5C#*Lf1T1y@>)؜jJ }i֘\C4K=ϋl':ҼeBx9V`|%[hEdA Ʊ[Uyu~Ggr Œ e%EUѠģgx,E, NAҭwE'8-cXFюX7;lZC$?0ŲmPGωVq,7\f7Bږ-2,jH3iGޮϮyRgg3BR*I&! #u3[(n1.e`x 2It ND1~lΫy χœ0|%;]_. &*?VsT [j'iG;ܸhcRh^ꏼбZ#8iZtA>OVH|,sleoC&K"RSNM,sn4 ޵<FK6qnM0fDOHSOՖ@GɄmi6ɟ >/;+κu!ojuBZ\"/s2fD0Vn@dmbK>f03\+t93 >ʽ.p N!p+[9.Q9s?TK)#~f{Qͥ1:bRh >`s$IVtrY4j9>87ܨYiʜ-Ph_kq̰רTќ/bgKwK+ cZS|EPc۹aN=aFbv *KզCPYh~m 5A2,crA4mδ"y;@GRت䭷φά6FeQw">GJS؜Ff)1aZ_K žb;cih%lWt6'%^[R!gIuxgx}n0oR pp}Bd'f;V9IG(:Ѯx1({ݨUI7@Vʁ7L.,Y̱3V\T;d9dyQK$vy@k}燚ָJd&06!A%C1* P{) -Sk@ ZBo/ר15ǭw5mdol¤HvYR[隻 Ul C,@:j X\# 2i<&;_}=M! Zk zv"~3td@ =Sף3<2f c_x%4j\ NU&!UMO!O7+-͙DCWm{^g擻zA4’ĥqpHXoz2bvku |&Ӽ݈Mp)1GzDJV siΙ]^. B H&y] uGX;uG5<>IP|$KqF/;:yS( ^u j3r8F!5 AqL=J7||٦ ?J*9md"oT,5&:j- .!cT&wbM1T^wInTEO)h~!wLN}]i6[ K@vL=Skg,?;N1~t ͖uJHSRsIb¡d s2馾"ն}PljVDžWK,;Qגia^/>hBo v\[L`slP`SO݉Om0@ Tp!C'dьW_=~-';Ww I\,]Fhr?C *ז_[xļzSoYt>v S@e.e21vqRc@{O(oOX!JIҁyZyk )=0( KiVK6 WNCb! LcES,Mdc'޾н9- aRV }2~ 2cWœ _|í50j"FPp_"M|*,o=PSqӊ `-~$h_lJ=fBw@ĕk Nc|ܣ F?KЀlk݌m xVN۬(2U3o}|%f1F_ŵÒ'3{G8YѸRc[,?Magf)YB ,]7s;DjTJKW6X B"/.:%ilŧs2@EN nMoA@ׁ ݪK$cuclV(4 nG(7 z}Z5us ܀mF!7A8r狜ANefH@-8J奫"f"͔2/Dz ?.n_#y2} Fpfb*]&/ԺAbㅪa;`m 5QqR殚nB|͊G)?<dخɚ }fGWh[WlFF o${QLҹmBJqK9cVwJ򏐳м"Kg|KdKRQd)򾉰ŋb4`9^ed$274P- .*r[Esټ (*҉Pdbw m:3hB  2~ڇ}XD࠱ B?Ce]sazdT}?~:Q쩱^VeIz( RU.~ePC6N4'4}aqRG4bb| .1~igCހg4p؋/[w 0rTS%vmS!J'rfZ{VJc nP{ k]*XKm9yN_j}—ۆK;Qm OXxK$!ӳŸRA=5 ]')x+OZLD.0%# ڢJvb߄Q3wh/5;dF=^L cEBӎE.j%`K J~, yGYm#r ,Ym4`(w!fji ϣYW`c ?jlU b^c+0>LNʕ BcyqGCY^_>ӳjp:Ѣl?Pm*IjXq D8 2x Kd{y}'fW0ﱈ ULm/g@(PقńA,ieyyGPʊG߫0| 5oS;mT7e_c>6p?0]cFS!0/ov /tQe/y&A|| Ύ^^CzU Y.4Su4g#(Tl9'Z  6hsx}I6ҒT*B^fQ7㮰3&4{[1LRհYH ꪛ)e깔dQL5=_~rwKz4] ٴf D4ab10 ޣ$ dl#{90]_7(?L|pxE`~ՙ<,4JZD*1{NTؿMt ,TVl:ƼٓMi_Go $M~H%=+IoÄ~f|p i^AQ$<@͞:A2Ώxkv:ӓFx ,7#9*@2۵>gtĝdmx$שeh/rdKD`|jǫtQp*oBE(\.f*RI-jN;Bv rM_/RX;"&zd B/nQ: ʕamdZ1y:T;|M"3s{Akltܔ,IϏ6O7ӍFh33bezر@ XQhzEF`+(8oZ8ӌ6CNpDm.b2]|m!d㊥? xhjʼfOxd.1GøLӉ5ǡUE0M1)JwI֌Uo* ƞ4ξ`;/g|1La3T jt'7].O3wr;^2-H07quNogsG AYZ\pVxהwO4]#8ue:t*Am{IE;ߠi$;%slm dZw˜aHZǥF}IĸE;oAh}C Ip/O0[BZ'N}&|_dM? LЄTnN6PKkY=F~QV{5lܟь :Z2buY̋Rƥ"j׻"ndUSNZPg]+2wﭨVʳ;-9 V~9p\U(1,X%G^ fZW2z-H4K;$P!2Lq 7TqlΘ[weWӆ2{e 1^N-2HHsU(/]?=/mZlb|JDFX*؄>/><cc! Eb2.2 ^L޿oL\OpGNOR}Kҥm,#>E1}3gru WfVORUk 2Qcs2 [`ty:vF`v<QsP;d(_g# Q_ u9DBo|<3;r(IR/v+ħIpCX!糆5wj{ʜcB_;8Z'*j(4YEsvbY $r.h2Ӹa C\< mAc#TG.(`tP";rtk;QP9fpS䵟1fd_/MM"qOy'Zn:+_ݕwv gGԼBLu!unC | XEg^/NKۭz䵖%ć%z|HL( +(c3T=ӼqxeB{",3c[d&1? *t!J."_(t0 U{˛,PDVf;`Ys6;=,NSc{aq AwLDNT[]VԬV֡CJ+(t\=>J$T0SPf tMxtZ*22XZߚg <2|@_g3tl?SяAބFnvYB#j4~}6>U :C ﰵ JkwnHtxK}:2ؗۥRTR":H.}ޕ+oPws]Fd%C40ؐu',h .Bt)eΗTNsݤًKѨT\&HXxB)1F@5 $J+9}rrY#>)z꾭c> xy:C!DyԖ^0W80ATn!{~K-6DnVuu3+A(F7sնM.My, ; E6uy6kWpCO?f2GG\ƺ: cǤPS+x=d,owAiqHd֫nq $aյ郝qb&ħYn .4}S\h٩?,->q"TZ;Bo]xJ7nȉFHٙ7Km/; Aor EOKf:/{ëۿ*TOzcT~4Ylt805:#h ؞NeӮZPyrè i&Cܕvw2`hF O\E/>jZȝU7{+kJn>{?&Gn5oSUMs?ԧi:^0Ub4%) 0C*`7a\AoMQBBzCٳZ4Jq?Uw|$+j(s?uB^֝ i&XJ]C.Ƨ L9- AP>vuƼʗV{:BQju<gLdqr0Pzw~[jEW>T=)kC;Q -MOQ 7?, gʏS*%/ߴsŕt6P~`&K(/<ԣ OME"8:.NgМzpJ'FݭΛV`Tv.T q=cX"q먿b1!pM# PITjw`pb h8H?7&e_kLxi\sBZK퇳8lZ v4[jjOg鄪8Annԟpw%d9d/,̴ᬳ+<|zO9Ē 0:^mD{S |4G<^>WT^%ag^[!e:Kmyu.}}61S܏ٞ!5 ^(m+ir BZ%?98Y՛:fPs%PMW <}D'O"x~ie%:J|F PڷWӪEğuhSß8WcuAъbSZ:R .FdkQl<9fAg>HUw57c[rh- *v4ޟDUt[ad uC@O~[nJ4~A*D.LDyNblZrR6`2ևO+ W[ ]vې/T bŻ7^h>LXkmfzGX+{a[G 8x{Ek/.R7@2waI>vkNد*uJt+Yh&4,=pi^MzBeXw*!M,K l,bp ݤ;K;*L5^d` != -ˮIETa |ԑ]-,^a@*Z)Ʋ'YleH Gsw6w* KϐbX`i)jg݈q/'}vX̄?~#m^JoT9|bez^,uUI.dz9zC+BLKB]SymɎwTlxz }˫v˕1ѫf6X<@R 2TuG.ZIDy1Ϸ 'xk,MH¤>BkoDs-Wu9E/\7?5Al%[f~6V#R(& {7 !IZi_H`a8# DYeDE'73;:d_b{jZtM{3[rtv]QEsYMRu钇.V Zi6܇R?_)^^ ۰P)5/K}0rS-ݥ2$;R# PM*T8zȾ Me:mIp5y<,mh7>"] ^KCOu>x]ЙE^ rfTyZKҦέ?Akҝ3bB=R8]goirF__ठ9`;ih~L!P a' ]xP|xVV(,H?pɦoo݆H!^ Fn)K:ɭ~R[PCZ^ЌoCؕmT,;Ԅfp »V>uv_K]G4hZsCU\lhV4o8^jбQGcnO\G/ zEAGtH&&>Q|V:C U30;2'=b _ս9`p@ہN0-VJKXGn[% JfMl53 mU1Su.K j n<,"<ф 0> O42ä>aDQPz,H-F`)&rhnNp1zí>pt_o~L ~Y򹪞@ T*6AޑC+~ hc∬8R mC]E&(l3f+w ;iy@J8x bZ,i@L5PR.}y/& 'srf3 hމD~uxf?UTLe;u^lw?N3Y-qI^+#~Ac#-*/_߆9pԍ<5:u)e5Λ0:ck cNѼ{Dlnd]Q%)3ܶ,lVz`SlYdq9Vs|=#9XN 1uz. \W$|֓DtkO0`yixuNd.[lkY9@WxEHfwHA=JTᜂO'?C#^?H@frԖHGܔlLUV i^Na8xtWg:8Q&7> ]ZU?OORRUv/ Jbsn(K`Pwv[&n򝌋}$b1-тP 'W_ lpE^DcY~P|HuPNO>glh}IE҇۷0ԈVeynݝK1 ~F,v@&/&N >58b@Ԫ&l2M\EV%D=!ŃA]ttd ch,(MjJQH|RבӹӌZC8={NX^Yua_`z-E@^/y,J=>~-d %**g9SCE!)W (٪u13 UPx8$N$xC,Q?`JJ*}!2k}l󟙮r͹|pHpifriTJv?sƁeVFՊ=<0@>^STh^_@'q{p/8o.,pbCJj](=!ѯJa 9K/ؠ2 "X >Ibe}a%aaPX)#RFn5*B4Fb >D v]C  Li)V_SD}c|@֍lX։Z}:Һ<\ǘCc]KOU=3m#:侂(4t5a %j.3@'/r{&'^YHg5¦:]|IƗ ZuyP] Ϛ]d04[sa= =lJq-7^>q@fJ#$\XQ[5AˀH? l n/P7Ȣѐz{CCn}E"*7j1j&S*Պ6@! 7XL,B|"gPw TuWӺMraz(H7zǨV8%y|.5sAcӥFv̸$ S,&1v"v[TRb/DXcE`~)!-;S?AB,~/fm|O[԰S]ǼN|@77PY6/[wK+#퀜0ZsD/d~>YBͦnnzdA}CYث*:a?6Wէt߮&Wvo^ {lEϿDyͻ !O/ժmaډ>YUnW(iYIhܝ)ݵ;|::YVʺ}kdx-isx7Q{DVBi_][YJN"q+dM(Gqnp)jĉK y3'0wjz@-=t*8(A91<^cA=ZU"GK_7j(Nežώ?v (83Dmg/u SE w<CeO\)^gUR|:ǑO;&ڸqy+io Q ovΘBP )R)Ew00rY;U IIMfuƓlZYBo{zZ\cU42~@iހTx:Q($R\"Ҥ؜}K]k1JPR,GCk|ÐqPYԩX<)7q QZ1>}iU> Cl+0&IXVwQTPSg葈z?U w|:X00&R\8 {ʖ߸dzkMr6iA3vj=MFHc䒄?-d mAo*R,ΉA]EKb6!3oӞtYfr^t=JfJb&<4}XGxS[0N{w^ݱb)f_GM#m1Z,%ә/lL֣c8i3&cgc.pgZU `*ɾ%FCX eTO7iu>ƩT'Jhj]2|r}i 1j1 1Y=B/ @dl=6Ż^7-;?R'u`o_VmVT҆ +QӱL:#)AW fq0LwWvN?54+qC_Lt/OgL7?2{o*ߊeu?FG1dפ 81X%x5FM fM"$2x#QL2hK'-{C@ю+oʄOkvP[h)wQqaOaj$pX'f\CCG:*o/'n zW-WJEgD+vk0cy`y yG8;0:{l^8hx;=[Ne6hՀF{m^ŅOK;k!CFUzCc.)cad}~aJ éDL# gElN`,0X8fĽ,- rj6杭,L65T&Qe0̃|֒yDX? GuzX!*hLI_YgbJB܇Vփ{=aE$(YsC\$bc/$2w*k[0Y{蚭"Au)S{gMZqQztr=Z>oy;47or2*trCM1J@J24L 7ӵS=yA7[okk*D "2 .@[3}g܂<{9İ"|agq}#  h\}?5C*4ޕ TB \;Z0i7~`L&,P3kA/ɑxa,d`[?KnyQg]U* &c5{7HМsi9,Z]rv<?)p+ sp`WQm)2,4a NdߚߦxeU=%> E)yֈ7?z<=l[J >&Wױ O=Scl(뽉?7(hv+:C7=8'ZEpڑ#o6dI:".t?~ցS*׫4cL F 4(#~-O"\>pUc5xP#S2IarcG$J.Ex.вN1CHcvJ #0&s~$Skl'HӅ# ^%Uf(#t LK-u\xM8Wh.cQd b@-ސ}sލL4_bI02FD˓%RB7z3:ͨ>dT8IRM~0qZ?YK;v$Ie)Cl"` TsFrYGY֗V;ƙ=^F7ql~43ɼ;cT>=ZzrĠeͲ2STYЬ 3VϭkQ@1 FG" j;u5ov$ډγ3jTI |nU71j{)H 4OW{$(YOzp077ԬF<]GpQE-n]V#[B̸7hz E\ylRfK;!U=훣'ź8 ?^C5_OC~9S ߧot܂`}̬*l~< ~Pg=,33]Rb˭Y"gT(hLw/͒%V^or5w=5i=DNߺY)7]-+OPLsE780_!T}TA #BFsE{=7xAZ°iݍբ%Y}^4j2f*9=LcE?ɬ*Pjfӆp8s:ru}V4n6IČb PjR 98|i"$rJ}3uչ i=R«ܕ{< /S̡,Ql>FƄ̩('؄9JNFpMc)Im_Q"d?iv^c'畐!W Iy2'9clGKd)Oҫ7B@Rt= pE3{ +qvHQ9iWA]ݩnW Ҏ.'8 @H [IAQEk[d>`}68 ]!_ |jq]+p/4GԳioglgP6mR[ z`௑ #K.6/~tIW\L]wZ?wr:'3=s1.pwi5%M %I QjEDІ'ھ%<9A2|;֠wg~S{-}2[:z,m!2Fjd!}D@XWtR=Q//-D>7QNONfHbR?$0B)AWgR[.35@sW:&SHJy&VK*$S܍A1~ڢO[bpYk9]K@XnC$Eu혼Wdls5B*@jfGE -n{ VE%I֔uah]…Ƞ *A|r =ǿC6<1hj1VnG ќ& f RW>)͊7Cjٞ_QAT6Rߘ_a+W,Ô⁑SpTt55WmN&1ӫUTdϩ!9J!I$?%n2^լy .-fC"jGܯo"yiŀv)O~ um7󢇬χ8X)`J-'b[U؍g9^mvBL300eCѩOZaܤ?; 8`Q bNhqf2̛ogb>^ ;`R$Mѵ2 gW>:,bȄfj}s>4W'R:> qy " T$)!~I5awj&92,qWj4 =CZ6ZJO@=Rx:_ |`W{vL)!vG;ִzP2q:@RCgOWFn؀I'ޢk>?ϡқYv%^&[|Huiڢy2^朗١myVz&}Fxm\zb-鉴r?D"/a٩0۟u`Fl9?+ RAj|$M rKiEzdB|?iMֽwc2,CAUP+Fs*bO\&&SN7"JWڱ\g6- eg f@.~Wq?7N. FzR`Ԣ7/ whX(Pr<e* .@ITGURq‹f̿B'b3P8^Es(e1لpѧHB>~Tn -f$2q߁P zerX+*,&({ӑ#襘4s7py(u6'A@2 c/R4x@, 3|С[/|3: ӌo-yi'ec3h㫜@Ik2й~ |N N:AD۷$ cH$/CӲ֩!L3bGu0B0_tNU(K+/{g$ʎ10d:{Zim4syOB+: |M4W_NDT_}HqwP!\b`KSD y=wZC*V+CC VBĝF ǎg@_c MoUQA3Pu))~F)#RQ+}Y&*@n$ݯM>I |BeQ~ߩILWr>qyŋ*k-㴱Vdʎ ?XCyל`0Fkt; (9;R%|Ȇd\%1o5*md,д\ jDW1%B`(^1$h3L>7V~xt牠;) %  Eb #Hg6U̒oz@0/B~/P˄{@叶DS‰> _?)>,[c?+=Jok9RaRϚ]RQ\ղ(SqKtv $ڋaMzvʴx ǗR6O('B3;{-`Gݣ)c}#m'u\*G](޻S%+aJ!v絬+|pF**C@v yngD|͍a5b @dAhS0r?0_/yheYwT ڞc!1\YY]͠ax%r!Ձ|o˟& '3ḍWoQm:GTeߓr-EBˬ|@z督yyN% ÒgkDl-&j˂ZLQ7ia,V/ mL*"gY!3k>lEp3 Onp8,a;ԦS`kg$$MSB%Eztz.; Ƽğ۪֡1t{^jfYCX$R9'->=1GS!BL_\p1Lr8 NzjN66tVf8]bGmmƄ YܦVȇ>dz4ILAqxDZ6_[U?mO7LtȐgvPABӳ_L;dnq23W`HOqm6"*%&mK:Z`|[7|9r sʈN9؝'!R$ЧBk227/nqE$8%~+B!An>hnmXEeز2~ӤgeD4z+Td5z4]ryCoLߡ'-M9瘠c@>O\eŲ.60`]O4lLctv 9]/ε5qZrwp1u\rp¢ KdX&|eqc- HS>!T>t*G3tqx{kҺSlp6;w+{{ `r)cr>U=\-6:l@H@BrQ9v~ʈ2E Ky:i.Cl.\M숆]^`Πjĕ[!>#p.s ՓV?Q%_# {fJT6ʯ BP#Vdo+3"Dv5SG%xpfïp5dM"aT}3^-E"jܬ#36c®2XY<6Pg 7 @;.zsfwt#P>^4YS p"@3c3kǕz NYd^ ^z>"(d׶BQk#yr 1yxd!%#1f,*H}GŮfJ]~/v0X9+T3 Arl@;M@F8e/ދ zdtLOo99t u;jnϰ,aX/ߩBQps( G1&.P[,=|Zh~]'I ;&oAۓj 3 У sZ 4zmمXG'rįnjJ[0t/gwݯWZL`q6Ya׶X4&bN b{4G@ $# WWkތJ3 ,p0f?^uH.9ph` E/E N&fOM1n5XsO77\r4/+$0SN؇G[APc֛%7HQP}y֓ٱMpa *VC D6V0 z1vʉ+ygyWK6ٹ7Q^͢ל,;vSU{(׼T"} 4V%V>DM"0f]0vWiQ &Eۚ Ô&rlk5O;{ 9E9V\H0Vdn*v·Fibݒٸ/=@qUP$07m|ӾJUm2M<w~<.[62o ]RG1\3 P!VB ?I'/(^#f NLh[ʺ"O,L9;_AM6KRFb$8oQږvyqhʛAЈ;,džHD'!% zJcŋ%~KwV?f8dOY1b̰ǬD1ӏ3Pz`!\\_jB.p6xbv4wR$"E;yl?&\vyM%(_ܠ,`SÓlʛAM^ Y6_Ԧ}$aa_Ozv2*7Ȍ )|DI}.] '@~ xN.$wƢt| ;n㰟]g/3e& FFA&m &>|]#zLfU MH I]cnWL> M纈V)N^ȏ$'}ZY\5AD`SDR0 f2 4y-PYC8iW@́w0ۣF6 $HCJJ x*A֒UE6Ƞ o'_-N*Mƥ]S=;_nq`Tt|6v6{k;]6[K߿l1ʹ0 ?pFt\0{ÁsK*zqžbr]3گ %̋IƥSl&q뚰vaF*ʳ`#kdOX'oG.۞Ce]3!vDeSA>|6~d! tk "=jD>UWYhSVvٜfTBdo(qu 0W[/k{AC;;"*JF _|ҋيz|pmO%Tla:pL IFL UO4Mp;o={]yxڰVR]#ChDtZ$U/@%#VHfMn‹Bto8J ӝ;7t%iK%ԢkA$ j8jLfvԚ?Pł\'ZđT4C--U4p x4~>&tJf{ 1>ZFH*W3uHh#|'kZ>x^U? @KʰѠ N$~,Hma>}dY%!V&XMvp蝫*s=3 \ lJw1|HuAyͤq]6USlӦ*Q)<N(S[͡Ҟ*(E#ӧ>;?JچdS?Q0KsXxv0C,@*[n< #5s\X٨1ZŕiO!ht65QGvч@xփr:oR5N`Sd9yӋiT>RReP;-I ˳.ўuYaUPۊ/pU ?_б3d7HE(5Afc\Z#_J0 V>ÎH:ةS,Wh:B~=67V|Ѻ(,@{ՇX6xITޮˑ9dmk >ORV.|(Jc)tƓesZ-iQ͋F1zFI-܃bϼQ6zGHhٶ<$ Egwr"guto( C/_~$q0t`xM01jL |Z3n95WFe%d%t5dvB?ʔWR,N '&g<ʭf[fEv6=0 1CTUr,բ$;pqz[=T\u+)em4V'_Oߗ^$Mޚxd`mY(y ֐Z*8ްԲ=%";q"`cNׄin%Ish%,ߕD!z],IQ~bdN/:rMh)0EڟG e2au; am!G(f hUr3NE˽h!>mN 1޾t(nڗZTCy*k*!E;Vى$礋;HSź G-+:|-z}h%5gy`DW` =C@0,a1p3amhlZ.j+`vw`1X"^'@UXig n탭˚CS3jtG[-&BX; 3x׫#`N Su7kZ=:E^N>-g [,iuNK+9,^vT~fmT󤙴w 2.'GLnZh&X <,H7̻bs[h9AnFPp=g?ƻG73%Zfb3d5S>H촢IAA^UX C=kh ?9YhG=- ֙Z M1uTOz1g͕V&Rq.;~Ì5 3k6r@rQ)iRQ^"Sߤ2dВi9pu+p:j dJG$S2=1}P=T*Ç,J0h|<.x]BaoVvD x%DScm-s¾pjy{t]L}TIۯeFٹ{uC1I9\~rW=*]kK|EN F P̗4hi28>,ywhPBU Xq+P{|X(2RK(T_Y 3*ϦjsR%VDN\azYcs劢t6wLt~F"|*y++= νP$ fzƓKb,QPW4^H/Ub*w&RNHl ֣_ZMўZXB4維9׵_i=)a G Gh(]sXJ~;C ֫}/YAk M>jBqjrcdVY&]ש$+)|/)X8@֤K8I:\v0.@0/4iN\GyCw4«(+ҥDlcxJMQ%ua]T 4`& ZC@|,fMJ竬5嫕`j [~I'R4^&<{ʖ ]DF! Яh7d^Q'ǀpw'yQPUs2o\[Y`ۭ NwUX( e֓70^UV8z%F˼^?0*7:b"_6YiW}z~E c'@ɛ`_TȸSURGOZɳi B¹jIfq4<Gra.=ʚZA :0e9jQaDž]qy62,oaWK7eeDD 6h|=K#`IqzÌj\diz5q[vz̊GNs|[lՔ~؉|r0&4'29X:I}2fȇasGÿ́-|5Yfy:b\"[rU o9(Yaԑװ+#7u轡 N72wѾ]̛˜}f̻SU75KtZ|=vNCν.ʍ"Mаx/zl3+I02@EASpjxwNQQ{XDVhG\T(g-1 =}OT=qS] ~r+bÍa^Orx ./ŧ<{rP1o vx?W濇gZ<8@A <$A]Pl`k1HZ5 T.s*}:3AT2M(hF9){Eڏ|3sW!$AJLYYN|=BY#tAx6m2Ts9]}qYf)4)D#n=gABWtDrղwȻWyxa5//m1y@b(V`+M~T9wI*D Ol6Xdgz$/Ir%Z)x}#XXTZn+Ml:y_SvXm/@Ԣ7?'x."-n􃇏]|_3P'8Em0aҢ64+[pcՈڡľkV҄;|rkȤTjiw,m*Ӹ M/J_ T[VؓU\Q4 ٩j& a5wy~Nדͪf.mE:39yq1:8.sȥ[OTc7z yD$aW"D,t0} ˝ KTDhCiKK$Cc1Hk#8j q\" jPp&ӶY]utJ Od[}ԺUaN1%x: Gİn͠~3Ux¥[ˉ^u׮Zv"+FOtav#/O6="\6K+OCS|Mg<{ć`D8 Q׊Q5(qGObT`u5\y0P rA})2c[ueg{A)HAeirPb*YI;Þd9MN490zv+l:6QuD_(p949A)@hd}s2N:-o-nBSTr<`T.ȏX4 qM8n\tJ=8|)9C /Й y1v"">h4G.6pk~/o /v4=i>~ދaSt}/W羚7Nj +/ScyQ{#5CsoF[?2}N[BtI* W#f#?0o뉇z;#ňCf3$a%\D/Jnx:VB+8Tq{jo򉤴EUS,9r yșӃnOw^1uv>@B 9{N. ) s$Mjc8XSLQ x~(i>Ȱ B.& N'66v͠Nz)DuU]d{=JR^a !G1>7CSmPyE影HƐwk#;P5aXZ6@-(AX$< UMv5xNܕcmu-Vc{@n]y}_FJj$]vHWr+<9㥮r`ڋ]mÇJ$ cG.fV>7BxDn鸉5Ew1Ɖ%rn@S5u , K:>s<ه3"~F"M+lhoڭG_ lT nODl4Y"MbAH/N!0rO=O hIm[Xpb'.K0sLrŰnGlHݭGRR.dQD??\O]ioni#_xWvӪ}^BުvLk_o.kG*ׄJjɆU zۉi zZ8^.$]C-q>WNwlGf8RQ<#.`m %jP=i(3rsCljw A|Y 6AwD}J=/Ȳ; IC|4Sx?/eyj d]+;i {[cыGz?wbCSN"zxqۦ%fڊy; !;[/"!o'%m2ާM'’B#OfC@?d'9 SZ-zw@4vJ{Byfm?(k3EKȖ)0 =jzȊUX5Zq] ޢb}|`{>c:дIJ\"Pijŵf0W3Gw a!!% Wm7 <. 2L~6} F#ÿ![>'S̾Ųcu nԡ"zٝ>Hѩh>=J^?<€!Qڕu#QՙE S%*9!҈$mPˀ Di- :Xx$׌ug6z.R9QXR-"ǝ3Ȼ !ǻpm}4R*?W}~9cUueGO]!pqvOh7M?a  %P5-<@X~maRqa3rE 9Ts#Fv:ʘ/LfᮣJ1*/E WVnzӯ /6[jbnr龫5U>/0IXKs!Ceu٭0Wş1ZIbqϫDn~ܠ׳|6 ڶc$ûA׌4qżC_d*0UDjZH ~ƍܫz /H^qc_l;-H2 k[S.o9@k/U$(~pv:"Dfݫ}۩6*Jc=8w!#o0 ֡<{b˅aM/šsUcڰ gR [q9>Vc˴)م8C-'̃Y wηoʔ7* u~G1HmqCZ0fvb)'=(eevdO= շ5gd@=܄2 Л=vY!tµ$,yM&)DRk}ArWH;qmxƷAy6ȿ 2r<H<ݱ/2 W.ښ]ؾBDONTI}ǗiH*I9 ٻb:O6+X~0p6}( ȮGejd%Lj`)Xv7u\k>.[HxzUY?=c nF$*yɪG]-:{/\uʯיX}įݒNPâ[GezIԃKS20ž6C}:ĕq=)*e6F%p?`M+. 5B$](=/M+:2 ږT35 \ʽ ]$N*-RgovBsZE#o|}\Î#5`^uwWt o9q:>k4\8NJ]ate2Y|ءvjc&uϤ>޶7pcQ"pqs`0LHWѲ=#T]<tݭvgAõ!TpB(g$hV@ɺ0A~pY'Jl: {.v5_.]e%Ku ;٣z*7fD@1 N1+'x J~=jD]ܿ,dO\tGO> j$*nʟpFIk4jA|:Mڣ̈́FއT#IOZ9ov'BC >;m?Loi0HI4$T]TQgSQP&F mwH9HY)Y/!7O\넊Q.vSc,xj=3OJ/Gk)F:z!bMT \+}lQQdZ,Dq=y x(ew`Y'eza>KN<}ܷ}ZP.'UVrJ>VJ-l;F.DsfR{a.eK!% %V+kWqcr֠?zXUuX|a/ \_ѱ|`,Oc9g n79XCu3܊ x΃:jtd{(da{29=b"sǞ~Mϒ_Ñ`8e_xz)K[u> : ˘23l?V(:Tyfm[_`t;+2=:)eA"d +u>)ѣF͏z'M0k)=qJ>G=F6>1B 6۹yqTi!ԄiD!֨TM]gr^LoAM< RvCq8 XMH8h_r~l*Jؖ |nIrAoBI NZLTS4;VWk ^Rw-Xh%z+6)›'J VYLFWm$B? {fB!Z?frƵPJ`=dj^[=Fއ9bрy T|O? #_j"9&,zTJL@^}-t=C> v%[)0'.=[\rכUn(@@:EDvڴzjݴaG68,-(q BVTj\ A9w^JV7uz5*?ۗjݰG`,܏ J~E[s:uOOR2:^tLٖ"AO&{qd:"U퉗t;`c:[ }g|1loΞ /ܚD5a\:hYqWq'1a#VٽinQL?ح-]m3AlX Hmz9Ƶ U)^,jr7am!SkW^wb"gZ j@*>-`a '@A`}E3$$ؒ "a$)voZ_X:o^_]%C?):7kc5@YyAVS!(Y&|ݎp}{ߌv|ҡܱE\?wCY9TyƾZbC&Vf5Snڼlkw6m0=$v$5Nf_e7KcK~|o9iY])-4Qӭ?к10_ [EUYK.PWY虹OVJAk5B}2 ɭ t{+d[c &ýŚIF@Iw24kʑ$nc 4(OIQw13:c.}l< wYHK\0 _h?~zD0U= e?Wp /`1VN7j>;ԀtciIݱ*qokCQg Mռk}(:W'H^/Ȭef늏 1Rق]6jQ\tY*$%1O)O€ZёZbaQ,Y nk퇳U=I,`:UaqLӎG yuȴ\c2b~sm!b@Vc-Rz.EVKzL B'e.{COP59+qN|"~ėT.g?Ѽk-jS=w\f ʺX͡*Нկmyi'x0SBII]SRkA>0Md9 $ٍ~t[\mE[riA*"0104\\^|OFoOGl4$m>:zóP'7xե8%dadS ^ EK{4qSSQ>hZr-*)jbf*׼/RCb2JRNfpmw\qV"SĐWL?R,2BJ=^R )|)~ԨdǦaŵ1y|YitJLyV;rs( %t6ZՎ>q# H gc)o3x`+LaC`wb"L/3jyߝyck d: ,ӂg)34tfQq9?>~>=AƷZ@LXK[KK\#'Jc6*b(y ~1El^sljj3+7.`+JIFQ*\l N4N%ݫ "A6ľBTuJ&<4'd9~_c$FKQ <,KŘddn_A j-7j=eEIp)IZDyps:=p@ Kn\&Ϗ mOɆ xG?YJ }ʔx%[PXe5*/"aHjPOnY)^R8@KᒐRX(xFJ֣ @$m\p->fx.w#X" з*7 ۥ?[rHc9+rw1m%?sc2zjD.{WhpfdTMZ?gSY_`..l5lXA[6<@r"Mq,OHj+4Iꮩ<=޴غh\e S{÷;>R\tУĠ[տ hPUtQXp6f.5lvhX$ C2$Ɲ)90qۿ؎s`B5d#aEg2܌_°\LY̵ *y\D<9|T1C]>bu|X _֨uIϩ2P S'sȡcKj7gȮ u9 r| C8{ֿ/,=KbU'\_ǐFШn>@ͿoZTdl;YzDʉm(cf-WW oVsWy&/+ʫK"RWQA`& YV P~57\ te2qm)jAޓMYBiӜ0{U:>F2zCpg9;qpDĪe4Fp15 J "G'8T]*d"E׸#%w7۝q5e6`Ij<_;!7R/aZ$ණ!KhNk,Mnѱg?_>Ր~(S ?[0rav H]6m"Gvp mDtVy7$QHF҈'W7b eQ'7*D8Z>IJG ^"<>!#/41Ѿ.G\9L#FᲁҲܿ0,t\]ÐS_9M`>a&?~i_Bi=^7Fɹz\cibUMW-pYĭ˰zmT[n6cEEtrQfKD禍0=~тtn_a[J4>Ƶ:ꢭ##- _L.V`x @܉fB%ʩD<8gAe:%!A{<6vy{`v)y+dP?7 011#?jqP;0¯zfBpǐj_⼭߂OwX\$"1B[¾d&V߼`wוU寖 $Q!'BٳEҧ:-!д304z ю@+]?l<ɥ R&щWREwE[e`往Aޫӗ4`#2<6GS?.ˣIuy 8~{q)U&j||\K)Uԩl%ܚK| sorX&4*Ue"Oȴ)i˩! v2kc4Nzg;O4Y\%D9#e]y^nݐ_PG]}̀‘Rx$b,WZWnQD--wE]4NE?E Ư=xp:saE5%m 0¿.y끴"l@w MoW رWC{I\p'tOW,gotZ=d+-GWd?abӘ{Q&y_Rtdb5+.^&!S!,.gkdp@N.u R E)|?V\w5]r8CB";W;6uU<댒C Qw~_,eI\:׫Ӆ<4ԟ 0tK"z4ɱFn:OCPfΎF!6iA8w~JSt(VcS^UeLcp4 |m7P ˓4:7Zj[Cp3kr kؿ҈fW,PR+4AuʉUb4wnGRXh+U~J=Y<ݫerI|۳S_,c 5ˮ&y|`l|]+4lrqSLu5ODO;Z1kQk_ beї/bRI"Qkс#-~8w _a8>r pm<-55 HXwKǡwt20tӕVqfjKhTSꧩXmnMu6C/:j֑{*ifr  !3{n'&C t2~oeJ5}}D^~U&٢L-LU @on.~Cy: ]^]-8-ڀIOL3Gax~F"1O+ayyrPL#\wyWYPYW&KVz Bx`HǖOƷ 1әX .0ĽܛA>j$,j@6}9` duTeiѠCrxmxPt*)EY.Bm>$y0Wp+"XcqV9<!pIȎb۸ E( ])J]"J{׳Orl{tD|-Sf"\8tShf)aKԕ֕IMRTa/2ɟWg+:#1A⦭ FCG>]k{s+U?Rogf"/E~{|(<8SdZYYz6 ["J s5lVfXg(xhTWdY8fk%lﭟ׶WD3{Gpֱ o*^/_4[2cSKEc3 QOT nBcXWx/wA~(;% )k?8.Zs{L|A8KYY;)Lve~+܊"ZsM!wK\=oA/ic(K})?+oRXrKHJ`@j-q>:!_0pDEGjy)dBΐZ 0mO;@r< &$ ì)́ޘ}]~yļ& Β\m$j6WZ©MmP\>IY9< x]MFݮ2$&QߙLUY]Ti~Vx8r~Md51I Yu&clf zcb*2bJ)-~F|X;Z[py^6S DHxQOxLzQߓx'QHF{~2"Q%p&GHǹra{D3ԾO(0gf c.}7&}g9 L̦aPq˺HI[%+{-?׬}O`TŒU w6 XmR .I#`ɔf f3rVa[$ZnBK~F 9+pTBD9iW{*I<.f8bE6llcdV͊=1 yͣmVh$̼YogYY[WE-)SYmlWZT#*+=ꝳ^buVHzDǝfM>w~<:l,ge%DWS ޣȟ,0G4Dq9HiK"2|*잺H !aj@9u'ˍ5}FyQN63a%Z3'l<|3h9WU}Ue&stˇBT:t'Hpxm;KRZ6}C' _],eWgS&?XfWTf$_8-< T3c{NW80x ъUjJ`AIdXJ+"ruYLWbϩ8G22\`Lિ ;LE}-g.y`72t ޝ~Mi_ |C8u6C[lVva"> lH2W|&`a;~ [έr'lkX1r~(]U-E")[ BP)%j&TZA@պ(:} s/p=)]}7m[,i9p!k;x=PSl)qZmb)Q㗃D54?:T|d~de/ ;З9_>kyQR"j 6$?">-%],!'S ٣=fO3)NӀ̢NG4W,/)!Ee$%] 4:lf^ XM/88UwEjѸM0p<8=@RɀW9}D,xȄ&"%7̓!SY8'A9G%nGJ¡h:6!8YE.$σʱ+UZ{ЦKR"Z2Hn;oUC w$ 1q[bءq!o[9[_/[*B. t]aZ=n|Sܧ 0]d# JyqtpL/S`G+(: LyLvbָYQJ\bOVbmC$&)n+֤&bbuc&pdl5c*}ݯa+`v )RE`t[oZe8ި9TޕyBGɀ~J Wk]+U]/Ӄub\Y2Zȟ f, Hɵk[\'eg^"~újW˅ٻTP8Fp3'E+(P6fݦ@?P_];]ĕ`u*N)f?vɼOV":TcN$J̷Yy+G[BW'uC}uL L֠T=/tEW FK ʧ[TbwhYǕ\A%in`E"-8V,xV냘`,HQ"T{!-y>Fpvްk/˸Lg{czx?"ٔtU9H9H>`d5hNwq\+u`n[jyd = *6-N.w0kפ\+=FҾWkz&T.ߐZisjs@#rr _lBʲ ݿ;զե}Өm)n%BsM:BYlĤ$tn&rp$7[ݤӭQikrNi3;⊥%X 0H2BȻZQZ=>XX`; dhwA; ֚O;,3{Z0'\8Jq*1Fw8ݧʥ/޵˞sF;n]űVhp ; sկ ɛ& 0MYײ* ˗NUím5 V{_iHC1R} (s%q1N߅5ubY`? y}2u/-|Vo)\|~+f jfbwh-L>lj]ijMZ0Q&L|zK05C[̛1$IxSదrʊ#߆NEbJ" flxx0b'1E΍}["!(eDb[Mܬq T/QNJ"_Lpr^Po/zcCyrT2}ID7x4qGo,˽v.-au;;Piә~ x 6. &3\ƝIlo1/^ s%Z,ޒ =xrpev+TUnP˞g ǵ>M_<[5bIE0l|;ǟ( !@,ZS:koKs?)Ve0`R0=>Wgg*%Fc)sav^%JGY@6Dh%^67 E#7A`;o4g`r0T!T~/ TJpxܤHvK@i ͋( p̓:6")A"`[hOx]%-4VE7a9.U&"/_'Ѻ,3sl)z"y=3R3frX-j%:ٗYr똅+C$:Rs a@zBfC#PIjl ķ6ꣲIV%P_OIMOȓݞI MuMtϥ ["g q q][L yu*U/+2!Ȟ)­M-W}Q/ 9=>sxwk통 ;P=}[d!WD SkdWO@˲Nb$=lnAlQ() f{A=s6nⸯdT/`f- 1LVM"'ZG,P0?lE?g | 9 yWi(J:O"Y?V\H}} BY%$z8Y};@*&* LP6=o}?R Jը4obSTu gv~8RJ9$_iɛQ_G*9= k~BD_6q,~?!lZ/,ՂJ;FO 3xTRh{e+F^1{0bHl|?VWfʶ( U4q  ZAbH|{[ڲSy?SL ĩNjbݓ1RdD%"D塍O}%Z12,^ Z-Lz-0ˠҫRL 'h*@M[[Gj˵S:cKO~tj#ZIdgZ{@z }`9QI߄ glC!,dz3p at~KB2';ME_4ḑw{&F=d&ܣ 9>GGMX.PdCYh{"l(yn& P$1 H0ģIm'e>@e֕:cX*!;(0)ݥ?G ̋RQòc1uee?ar9#G=a5?qcWth~eyrGܯ#VJS޶gdچ,ަG.S #$Jl;9dn2J:TP ;BQļ=)ЮF#NzWP^xvQ>)!<%]< fGcmߟF߻j%w ~Pe)1[7D#Or_Ju6HAYl?*j`]P;b_l{hQibx9Dh|Б̬}`fWQD? <|JubޅS\+J,q mESa &Z{-26>s2خㆧi{Y4ȳؤY75uweZOd!vGU37;xEyz&tlzm;autTECP….@ا&?J\_(GUu(d` gTM (S?Y6 e'  dOuH p8W4>)SL1[EBJ/{{[$SgGW>em%!`<`>#d'҄)ɤ#MUcZY~^ąOL:u%Vș[_w5ݑoVX Mf .cT3 i@~_N$ϣi6/垓x"[ց8 N$rRo`0DXi7Jѫck@^a}Ӑ?a˪?-,2k}6dwVBj74u8t?uT(kX^g}0oゼv긋0.pvRhO6OK\Mq2ݳtm,_/5h%PfvEl"wz0^ ^C+&F% %H'rD6,3yJ^HQ64 |,xw]_ITQ40Mj-Uʄh;A%(H# NQll6nZLɁX#VO[$TfS}mQr )?-^Y} MU,J|6NS-?M`wJtk6~,|{X2 2uݕ'TT/+ӈTjl)Y5T?x17U6|\i4s׋Ew7(ԜۖrͪiIJY艓2D>;iAOX[ A/"{F1&İm9}O|NW>9v]_:ʊQE)yj21'.җ7t٫{$l7\5E.XH1 ]I,jaKly6B/% gU,UFc 6i-otCJ(yJ"PCW;C;U5n]fB3=<52X B\MI+(\L)}(K6o8rLLubMIV a_j7 2$Bbӕ%T%)ޔѣj/ 5!w_1AZ9VVx0^_av/ᗝ/0G_Gbg&A\GscnUE, Iht^v?xgM}E$[rLψo2%[nZn-ckM{gkQUffWD3 ˟dZd~^s @k։Z=FݒWJ: zb Kv j+&_P6 pnS6Հ% ju)?FҩTAّαAr7"奈8L&Iدvcϟ{"9@!#|w2wVkG 2vFxsji֐9@zء!;2>)zk:B(sL]Ow^2nct%/X ,u8.Z |s;;>\G&⢜_\նȏ7#7]T&DR⺁NQ럾tgۊ?E;ѨN =ǓnoPV s~YXnD NŽFi̶7HN9>jN=HVkgVnYjQ%(kޠQ< >|1DܽbX{ȚD*.V}bAF3hapzPɫYG,- PjJ9+03 k} V nvtB 8Dj36ݦ9-Fd9I מ|a5_ۉDۡ EU9 (L6GSPKp'3P6A>ʻq'A]i/HâfYK: Ϥo LV3"3-qNFƻ=_0e`{)^tɔ_B. $hر,`!6 'n#Agv}6RHd9i"Q|dg2W݄ʘWkpd;D!\LQ_=)A#R`0g42=VBW¾y3vh A)@Th*<䶣3NR;T X밫PlW]Q|x"sI-,H=YEH|/v"Q_-ځh܏uzzFI 7uǣ#~β^tI:+ L>F?ڧqWƻ\ZϜ%o+Ƴ`NzLNO~:K}%+&š64LL*2r~BjmB>n~GyҝPўN%;5j(Z؛32yOdo-x;Fd[$$lXQ,f0xv~,lQSDk:DŽgl5N X%f/tP|Ql͛UF-{.ީ-'oOH }e%Ctv'5jf9˙y~ʪ'mm ?Ӝ$/ ؆q@s?ݾvJ-2sqw(w`6 Ϫex7.ntlri{pNTߝU\4<ҋ$J"ҽl'ֺq)V0>gDbٝAq5#I1DaNз\P|]Zm _azk$0S_3KJV6jC(* *ޖ`4$CK؞[8P4bdۼP*C"l0dDt撠V !0R.'15ivn \&NH&]F6fyA 0A)!c#{xxTseh G6|t3<9LL+sHr*AY3Уq@R@Λ![s ~oLǦ"PwE^Aj4ϕ4z0*]~Wi:NH ݔ>0sո5<0cY/ GyYjQNLJa&3YbRpGAz*Tkk!"A8ri_ẗ́QG1bAjLk 8䴶涆gW`ZObITܼawLCKF‚D5E8VRb6S5Imaå;B41uFՆix|u%B$Y:XHmޓB.~庆spAp: cN#MqVี3b+Y`TC djy͔(s8 낭 v27%{V>^(8XDR{WIv-G4SXF柢΁>+u3.kp7@׍KOP&.< Q윂EJ_HGR[vl| s*E5xƖؽ76S~0[Y/Ly 6,!_lUݲ @+p 鯇KNQraBxΒnӜA rradu?,uM& nc%R{JuSWtl=&D^,T}dQN;dJψGibęyX8aweD(UJ%^۷[ HLK]$zyu$n)Ū~lp?#HKfr3j,_ֺncvD{LmB8 dѐ'=+} yb€]6:y~̔b;+FN _Ev=h\zɔ&$ᡓV{#PvﯥxnWb;!\*ƵܚT1XNH'o A'v,l}xkHr\E{v>ű q>S苞v0lZ j3@P2Pn"e"9 wP%0 @SF^YحWhຏ qH9'Zӷݾ*a'/ mn1}bʱxɠd8|~2!&aɺȩÌ0i ~@Ԉё!'|$9DX]tàzBHWJˑPuDPQM!s<%~KvF]bd91jI9G l׬8ɛ"qy.NS<'~)lf-pT[7~-Jmm:P uh/|ɰ\tQä rOH"(FK]=Ļ]@Y\<^UdoEIg478j÷7\i*z|Ht/FڗN/ez#j1{vu7i9+Тtϧ>s#4gw]5g 8,N47=1`@6XK{bGpUm!Ǘ~}#]bP]Dm;-vR{vOSЬz6Y?得- n`k,ϝ 8A#UH{>+ȑe o}se2F4v" 3Ll iA3""v $ߕӝFXVکX* mvo9Fꥨ& 2N^&^Ѓ+hIQ#N=*BXskW.́~!ev)bkMYoD$gńPNeŀvBe8dbE8 {k)*: & %t/|+惷=A 88boC tNwݿ@F/36S"m#6V_WV9նeb[Ar6?=mNXX^I bo )%2d4 \H`<9ISi <7K.uSS$#58˲s:acdxC)nCij^b2щD8/;śk1B{v";M"؄WnXO O)fqE 'dQXiNHBW t.'(ia.o}ңs_l9F#1 ґ[NRZ@2 dG߭, E]}Witc ֬nӼk˦ɉSԇL]`pҴM|#8UcX "olF\27/^mS/,wf̖x̷sܴIqU1RO Ma4LWKkx ,Hd.w{O.n),]EW Shqrx$PM1sEDBo GR[ɱX5ܠRo1j;*|:zI] D@p]}SK+&\'aj煇'KgZI-;jA$\<@aKJs oFЅlU5ZuG0M4:˔9/$ཙOLB Pҋ^< 9';-^jޅr$vכZ4M_f 7ֻw@t#ߢr,ML+o{+++lRqONy. daX~H}Ӏ/s ^u4?`,˭*c NYޣw!svJNlc /GP+UJdu{ƺFBT7QjrCyhB?:Yߋh1eH<,(W iQQH_[X)fm5D;x飼3wgӒRDl6|j;E_`5^s. n˗fV7Iv;3 L꾘A*A2+ Ӥ-Y7g0J4DS|]@֛ @ 뗩m,u$r6|qTB8sbCU躖tvÑA p̔8iEvc%5;`bjkL巡֮kA)b-).hA{.}Klލ6*î| kKGL+PQP)p`PRNem󤦛qxmXU@wd4wxdDS2w lj*[U ;⌱iْ#SC w'JC|W _T{YP@'+Qw*C4LOғV?9 3۶QH-bP?fS]NLk%/׶1]%+l"J={:ڬe%M3<⍣b_+-,ezVčε&> ,ac1K Y惊E"׿C? m3vGƂ'W"ND")(?a=.*Pa1dK[P{$ [am]x YGtrlN&ČSy0 eɩ_Or@^3hm,3։Tg'xxR{CkW!۠F망Ϳ4zc{qU@]ռHw?I32B<Py4I 2!gl>E`-N! eEX $mؕ}NT9q{U̮;6[]Ƿ0]#n+ Ӻ^gՕ03WF+Q^ 휡cGoBM!\Fͫ5J=2~!K3jOʞtclVH͹=NVQJjeUm$ X<.IP`_"Gd ۻ."QD BF% A ]+ۇ%'3#a[VnQAL ezk. A# YA$%kFp d*f\,oD.?_TLZ[Y„!F28k/_B>eh'ղNq`J*I(5VDXϻtsXdqD%Nx1]:~p}_hܱGVR̽ېˎV "߱w0:eD֘gǀrI-p- AuJ)CݫJq xekçgJtar os,rT'—1eU*h ѬҖ7vp}&BψO7hvU3)G ղTeB]U`D._B@]=Wf. ȻE4^*}%I#G E@XSDy' >K[6mI#E/6VIG uW7D eD%L<}b7_AίQGr2v ނ^@"K16](|\dQ}Dc,FqϾXZьK 04߲QZƿ3p-"z<+3 3J[clk<|p+#u#_Gj clwbwZ-SMAZn Y}BFR"|]zM-dwȑT[ВmR{6'&Ӆ[q?/w& ~#pvhXA0~6j)qͬ"Q: #dKmlտ|k`๭@J(mDC\B2ϳҗ@H)h;i\$@y CįBV.9 d%{35(* ܗXƃ+g;+z$1 Ƃ͂T S:Y8c QR||<xi )GAX[VB5Y5Fׁv[2}ź!31ۣ#'D)DM[^*m@5<{g~ppyn\8)K-|XV5MJ\~Rc.*-rK"5M_r\[RHxwL(H@&8Pn']gZq)` hbEȻ U|^#PkzwacjHik&XV!2Lb]$q]q;k#F J?NULvy&]ףaeV$4`(1 04θ=ڼl8(JZ9Cj?:;wtK"YG0TZVeebd&m Ov| t fuv!(3XUÞlR{CX>X//5mga;ZMhBг6VNV cJ X{!a(lBku\3ĄTh0tw4P)Щ!nmװvFLO*xDLZK\+`l*SmV(m.P{ %1wbPo J-Y`V;&f R.wH|1{y2~AwMA"$A!Ÿ|/7 ꗂ(l}gz,Jkq*½ .I"71o $WVu3s#*zŒj_U %h n3}m "̚Ĕk[E0'Nnh@Aa,FlaPx01"ɵm1܃mFRVF\+ixA^VGPpu/_dRՓz_憷 \^ ;?۵(dTK0fw1,|z/Au(T\4jNI_wjk֮掄I[U\JcB N^b,G8|ÜdՁ٬ӽц ZG8]MktoyIKAj 2K2iyۖ E>Ti]TRbjx/A s2Lf ܧڪuwD0ɷ FoF{Yٓ4+HfOJ9--MErp .NWyONo+4KQ{bb@{mQӷr*e#}f/K;*.* sOҿbT!L ,''cǙP̈|S܍S!ÎB>mي%!µ] lm`\@`cQU? 2NϞr&;JvKjO#W6юƙ/17  rS%^Lѿ6!\y4t?0+Fԗ 4,d:KѼV/QCXi(CU&LI{6H^ELu"V*͒L0J)vU=6klB?j7B7 "B h ֩<>h1y*uԦF;#4eOە8ؑZa0^mΪL9S94̓槼F" rrLj;lAի 1q6VlڌAC UirOd([Ю7Oe>-x1 ~Q;L>dnLԙhͬs~ƮFCxf}|薡0&-YE:`ŬEr2j,UUhC7R͗jщА,\ruɱVlF}]چz2gaSOIZ`}Yz6N*@4h@\pMP7U)#7‡Cz;p-Œ;c710a vfIOc+[*fԽ9+cKt.*˘+@R-ii\@4Vad-l78VJQ^Aק e'ۀzJxX|6[%R:uǏ߽K|`сc"kt ;:UJ+o.j)EyFW환~Lsp6O*jm{t0ZcUEVѡ MrI݁b u'rwJ0EvՋ]u߄l0lsqsM5@ KФXkw(l$bэ$^_ޑkme"F\JG9&ҧER)z tr|[WKԖ̭&V'/Z:W~P#]#L0=r۵¢ qc:f.YXvx|#ʻI:Hѹ(L:J r -A] P@ DlO831((^ǾDMw4֊4lhty!Εl6f^W?$ MrZvo[F#Z`4$N#vKlMpfy'ݭ& ԫ`dPi*ȭ}(%Б$5S}uŬDC1/YfJ}ju6ԥ}ʀWwqhp`[ޞVWN7; x\BR-s -luMbnaZ ki?@TyUnxIr~#|#f3$4*boVfb^N:1aArj !|oyzF"{rG\2oFշiX߿~ Ia˂ƚUym_AYBN]z-ym>XW@gM8)m 9D&q,D3*8饛[FLaC>ۏSvmm(l %B-im 6SLyӹ܉O#Ď IP:Wޢ6I7Qb%" `}B'EVFsvӄNNS3ʴCEdֆ[n_I-+"?XLb}}doaWFͧG{>>_FP>` u?<$LiHT_b@wuN7Sn0Ew)T<`5G6+bSmuc}jNMwvueO01}yK 0 ,aݳs4potcj hBy{DX&g"QUu-Ĭ2px'*f .jeMCP XW{ҍoeyֹ;n_}b83 }D 3!'8Zrinm*DlG[LmPhcQ3P\L1cW}V[ ^RoD!S_kDmdd`D\\Q6хE '$=<3T6픘Eф )L8eˮBX׋K7"#ϡ:3/+-t"QSݜt^xTS`Y?d9C TC}~JZ\dFX~^O ZiX]?.5ZuK/_(`b`iB¨,ǒ.{>LAX3?AA@O\O}6QP>@zl K,=RK6gZ| HR(0֊+ dNA .4Z`O`z"`C8Ah5t1:gWuDwڂ,&3 faa^a"0vԅڶsitCA۔J2K7yoUʔu_ f03&h(auGF<4#BEZĘ\%\|irCvx^#ZNS׽|Nijw?VkdҵN ly2pFKf a9Vz21!)MUce!cUtT{mvÈ>bʔBS6mKv}Bq$l&SmjDAq2H k{rXS/Ѻ4#Az*uR D3}{`}0ITRUWy+D5 U6b҃BVs0=+z(]hǔ&!/=q-TQQĦB)sDrE3k 'e}ĹdK˧ӱ*~BnJ\y囙64 1-+:ЩuGByH2wx~g˞#aR=Z+=/,,!O^9 Y7#- &aJkt&,8B,UL fI{t#It*K`ݙ J߂S> #cEx l(Ԡ:Ip\P_ cvs{\ޮv~IKl!rM񑤒)}ⵄ<ۘ,-GdOEEBT#%|@r0#Č;M@ԫŇy_50#w@YMֲmBnvW|#-#?ˡnue>m6-Ȱi]V ϟ $4`tw uZ "|xg=/ ΫsY]  n7Îf:I%{0f& )6be:ӲĬAO*oc6{H{;b,&@ԱMy/v|&tt[#HNUNų&h,(:x ;ԪJ^§ɸfqQ;~/PK3qG %1'"UWo- n&1x+=цT2ۙ}3k=AzfJZG"Pɵ$Z+|;T#jh&,`{n2p0gԜ +_RﶧiAW[⾶0Ch >=Z}KVr=o3\Q|^z()?QdcMb77t2}AfOC!?`{rٛuNR11G~ĕ{MХC-#᷁z/6F%dXJa*A g1"}rY@|V <(HYhh&NtS=hЊL*U Hl1ewLJqyɒ3lQJLEv.\:dj}%K~ IS؜{Kڭ*~`؏ CS$5BOϴ~^E"!3gq/{;<7dwdg %^sT{XʦQ!k|*RV唠\/%ɂGhi){Q]ġgu}^5еY-&$qVVE*u3R;?e:gVxo2qY/q % x7c(B427:/C|= RXB,DdKGbֵO/Fĥ6%F`KbQĶz rt+אzƑLTF Pa(5b4ڥ2)" &.@t?̷b2 ׵_pȀV,U-ۍ)ڎJ%Œ7c?Bx75#U0jC X]M `vlJX>/m.'(.XNw o@ekv\!2g@Rwe8#D{J{r;l6JqF̌~B< qήh1ص+Ŷam@|_ЛG$d:%JL%xkNxJ/cfZYX^|X.Gp|χ'` w47ԈBu<.$ ;MYo?D|?>O9 r٢gh-L hn4໺KyUʊfpTΖ |`{9w=.cBd9J v5<`Z&!fn#߯vI!tpYзL#[K=54\ &%Ź`68IlҶ0icn- ~J! `],GQv4MJ "/Z%) APPʪ.+ Lvx|LJ6rs^6CQsADm2~>7ɐ`Ŷ|2c ra*L,Mw 'g?<s͉V7!7;!/n%(ޏ@N_\zWvǦ> .bX)MǪs3X322:l3Gf;_sע(oʬ:Ƒ4~NU{{UgD h^{xV\Fq{N^7 8OX.uq%nO>W]@b<'̀ynja̢߸揻,ȳuϸ;.{y^>|KQC 67O+ ,`}Cy%2A+svl_^{˟ ZvRG~\2 {l,Dv'BX#edY`Βex؊Xw1x:"$@eUr?muJwOoS\-}nk0jOQRuIYV70>{^H<|{!-eZkhDTHB<}6<Ȍ%?z΅a#%gZ93@r=Rj&aH-!U=k?TEM4c=.rX}U0oާTc|2r_o^' SJ zgs>e\"{IܤX|P%t 6#c4k~:eP`#JjLdI?Qc'TU%pԚE?$'$CRo'p .Au޻OL|HdwLnr?_VyߝGCYbtތ&r9>bsh,0nagCoqd&+S$Zkm+0 TV/XPK 4Ofnc_{ٖbWii6KdZkO]J@5 BDx=F;d7.tp{hy[A< 'W }׵i~.+] *[vQjAj<E766y%wm9pd,qGѠXs0=A8r$ $ND0Ѧ̟[q;sZ [/KW|+q}0 t{K2,+3yFzJ49"[D|Qji  Ҟu_2`zo+y"_RxxXb}17+-%維rz^^QpAC< М{H^@L?B_>_|qO4yZYycX&d*ٰ<-q-t0P#8>m]aQӚf4sQ|v wGyv܁w w2yQ/A(-Uؘ ),05I>!2_v9m6T nu,=+e1(9cF60@_q@'M ЙXs֏!ڄܛh(SLx/zP~.콵rb2GRh1"IV,q{gќp Lbb8U*m1l$~f18 \ ^vL$L֢k *On"m\ X8)LLG|sE b?_h:{ qh;!4evADg_t7ҕxr" 1TfY:;:n$MڧdҴyѵ0ҋZM.m#;6A?NȢu )B̃2J0Y! DӦ0X;Kd$mgQAM:U*4zhKXz'cFm.h@\Ɓ_n{T~ٜ Aގްo|]ys7y;9z]Pfr:  ;f?Yn$2̕!n:^٠9j5F,Ce7Z{@&wFaC8h|&ov0dS9'll "T|zI2w`32NxiX;D L=$s/&2[tR#}C=ҵL.Opv͙Ua⣂ p%x0X\BĆ-ޔ`r Eű,'c0-⠘Fp{ n8Y',=9Ta&(|BIJLruCSc3YQw$4=C0&bnGD/fO[@6ʥ3Ғ{OC]SƅзfLlG= XoWV=!7ώOxsbжW .mҢ3GR"]@iҟ0Źis"t9{2U7 QLXsЩZ2vJA=GT1ɹ㚱5+ ]I&Uz@K=/eƨݳ "Y0=D^LFc;IaμE[7]/(@Ĝnc}֤O@&ܨ~Jf,VSQAv ~&#(*_p;1[p9=p]tSͳsjk.xyλ:iozIebjSwZWdxō[zU&ŪXaV!5khWr0^ϐ(+=iITd$f{\&Z]jM8 ٭séR%~#%Az hʒpq[/SnV*cNJTE$9 Ffu^ۺsCaZ%W'Ii$9_43b\Fq CsDDf,+tr<\)Yk( )K}z #Æy~Ok4x ( .r^fYΣBD-ΪgXD:e؜X:h]()dF)@"K60I װhJ3*N=Cs+wŇkrrG),pUX>EsV= jVz*? "~-`VՈ]N_2kKܻ6_UUǶ41ihɝضyʌ'f SF3_jb?R(&D1U|eF)oogH "u,QFw)5g؇XhpWӻI$@#S 5x|Ʊēk%R{9nʳ}}?[jP\mvPϿc-Ħ9qzjyO_6uM˲sVRglm9GE g.:HBֵ}f+@!F܈7w!v 2tI36 }z?;w"%^kt+D;cƽvY#/k<1bӿX2M mx)T)r`skx|2TZ@HSlխc&&:VQ<8@ke(6˖_*V^mxy8ɇ;ھh2 %%?d+^)(%y,6Krz~ǿ XP;!m!>u]uٶ‘mc*Ud25sͤB>*fi;V][ "pXy7)s"FD6^hQ^X06\kP` D=KЌ=ƹ[b} mDY倫e{])]mq5@`DOnfPЛyPDKwT-eQǀrZ.y ?Zh9ްxJQSũ>{ [Η E.G!gFh` |tx]ob|&gJ+j nwǽ'34dˈ"B9_Ԭz.- |?u Y0xJxddL)' ~Q)N6eu&1'f$#{gN:ںeׇX|Düdb0- Aiũ [1QΔ>;O۳ky$wV 2a9zL۠38xDkpT4[Ȳp&*b9;+Tz!Շaܾ_!(XiFw g Gb8O{4/+'rSTz[t%ef5D4ꊣX?iQIضStj1V*..@zdB!l5_]'BmQ )Vآ8&4/7f;[+d@7~"|#7pq+&mޓ ':L⥄))ﳤu/`%tiY$~r}e:ePnR9'z~A1ujq .1kPKneX%p{ez ╢׊Qk(u=]b@/^pB'v&=̈Ԩ 8+$m3\a~ۂɉgx'Ǘ oܪP[z /wM'U>|Vp&:Xܞ?fx6y|H7 (pgRx73}&(A!x!)g]-&uWLF{*t"i.p]fF_,IX\o]&3]?he gFSvW~+Q.-}8$vҏӆ'3mz 3V׍F_qjoVn}Fkl# Aruy̿˟K77bIIzK%vvxhR(FyFٍS,⏬9~0 ,fPɣ6 lpR'`@MV;z$Ewf ꭝU{ts}M:u& yے$W6gm7U~^k.O9ЂFGx}U/A.;<(I SLdR~iCQ(g]ˆj¨ g[P/p721v)_)@ҡsu(e]H"9ƥ\gߤc&pԞ^ #j9#wݲG"1؄,7Dvt}l~6{sxS\Y{yD87.g)`fxV=?W8[AEhÎ~ٻ[z\O(abmXINA A.QrMSdLF_g">iƇ7FL@1^MM%;r]X^v2rb^z?g+["5'* &T|FBÆEUk'#5D %,䂍d]$ q>%v)Fﱿd+L18vh0)d}-3k ظ/&́nʌ;G'[mqRGKYQC9JѱI_#ӄk+7ې]Kht}Gf)ZF/>b6}פL.\&XtNofŘTn^8rmr"tYyMx_͇SqphaLזFs56PX[DFkUUvb1yݧV9#w#eNh 3#5e-UQ3"L ?2)4Sjjm]B%w!9gI~gz\׍A'f"Zb) !3g䡻gꠍ%BO}#_o`-fW)O ,t&rΉҤpvƯNb j>gŤwE:Y&zys{l#gx-^ds1P󇭈<: |'Mfv3mrրX5 G/66I03wlMwGХbL C(R4tďz+ma 7|.6CIwAii"CrgIȑ;hehBv9[b/) e86;(8;͂(^hΫ:p(]\c`GQubWF;,ă:w  m4-o4|Ϧ\ DR^b+rMd~F+YfV7_2 3+`GD'y*~ p w'{%aт񴺈%$&t,QR@)I%*tIsEА>69A\E$='ޔ,+s&bmx첱z@?='cYw|Yz 5ΛݏS]SM/5V"ˀ չ݆ٞ汭 ΆTz8+;К~N2aAJÀlƳ;SYu}"JE S =Ď}BgrPݒ@ /S4dbCujkHe1&*ܿ!e%*2 2])k: 3.צ+^݂<[٘h4 93 >SMΜ6#YӬ,3(;̇㺘F nNV%>e(rGO|A&6V .2Cra\oM#.RyWln3";AuJl#X]nĢ0g"A)T= oH@HԎ6`EI >\ԢR>}"Q4G_g EGI]ޝGܐ=ӐSݨ*HݸiLZ6O[H1[^2fJDʇMnM]VNߝDi]%z\3!j~JyFC>߫[U{4RhbH6IP/i=ߟKFgDBc Cϻ#/Xc_ɉf!  x`2NFN I@\+ai=/xsT<<)pU|( fzOt* ÛJZ`τKytñi >BfC;(A(K]Cj^"NRMlAudz*(iIGY 6}${O`u?B Iyi l]@P:y!͉]W2 g~_AUz3+0yHˀTM3~_5E =ƻsU:Q\nvMtT##pEە+qoh+C!Q)[<2ZJ*OӡgfDFTJ@O.˅=$)dLTԟ={p9>n [yNfr4Ub,et7N)H/R@VճK흇kyBv:Rd}(& լE=`mȮ cLA0=>—#\5a&I?g^ ی 6փo䧨0ՉR(>>EKOuy~T;-*K! ξ*gO;];P;݉|7:EHFK$6[HpݴaƄv h jMh4!/_W֯wUG\\:MXfYf~#qR桯|L-fʩ?lU=(ŵ:~P,RgRioNO:t~K&f0,:p̮^q;mBRָ44^o>NĸkK֪C~$jؼk(1uMp4[w ַa{7̨("ن[ʚفvEL_p=ُ*4eTL5RfF1[8NqGMKŃPoc cLnr/ Tx$>-].S݉Mł) 7U@ӨW͡b7T#LSu#YΠxD[A0{+Ջ96RM3tRޕe䱹A`EfӦ#=F-Sr(`)>@  b.;Ɯ ^][Yv`b%SmM{þQu xꈁ0\r{6•5=^9G\a3@ {"G#asmo_yR 02 ƙ:i)EWfͧ|硠|h{$c|C=GIК/ԡ1jN떙il;|kҧ)=TjT7AL|- NRq[OԽ,B+/^4t?AfP;mȻ&b/6H~_۬qa[ӗͲL8\g6#~ Q# q*L"ɱH@@^]뀁c"@f* wЅXu}++۝a0ʹmth) etQԶ #|y7@O .1~ 'G鲵L.YCV{ms_8hd®Od!{VqnfҐHK<b7$P)*s'W׫"(-6鞃;Hd9szwsAEwU"y0ʢoFM!IM)Ln!*3AB%7D}vYߛE Ģ܋AaUB>nQoݝ-4Ϙ|t}1@Z sv䷨ e_?Ypg5@0I m6 <(AZ-oiQ6L~s6>fi!SS>1f=4U!3!F&ص4ug3بs} zf_l$.&c\|!# 0- VhP{zqȅ=pٗI`˼ب7i"S 3BAl: S}l5ظstkz櫆d.RklR=¸;Ns%O:9~=6wzsy8RY!lI=_Y!P Sǎ?^jnuMLZv=L\mgw϶?qShSԶzi<1û"d( EWf\0N]S0"2 myDBzGd/_bx"5/&tstykڷDNFa[՞.k@ngg%\]" tėJ0ʲyB3>FED՜\jʰkKf'7ٲA + ًB/D5hA[׀ě_F@ԹM[Fzm2c0nU9d_""NMQƧw4xi"V6K٘',~i&Vˉ!|~wuȒx!\SB+9m_~ E%=], g|jveUnkz7w 튺Xa"wQBŐ5LjC&RkL8 '?(R%XAڞĝ#|';g8BӰeYeQH˹A":jpyqV^Mu쵁"Kf7?ԇp;DYw@me#㡏J%eTa-_ζ B4ga;rh ~QЛ&w+,go4>ֲqOxw078*pTڒ_s>L!GQsLnMDjAtoXEu-|-<`ۆ J>wuWDiJ9\i \iy`DrïiTEa_se#\钹8y~؝liQʓ9o~[2[[ V6V {ԗQ۟ttj Xbiz5b{\ה̭r/r3dM.%FZ$k͊s qP 3ή^VR]y['o7BmtpɝjϷ I5ǖ6j0eZT (@__ 5]gTn+Vx]Vq$QWXٯ9 ćJʏ.A`D<V%]Yy>HIEm`蝎>e!_:eE l]z`ҼSǯ#Zh@xc]2@axJ\qpN/,cH+'埿6xqx(&n>L~S![GRo6;1,{ol_i4i KPQܗsݍcn;'`wJE9m;j)|7E=`WhGSα=%IdiZZiF/@j+vHKkoWl^V_V]X6WR pɈ:񵫸?B1RwmϷVFbhdK,//U_D~+UK=w'Pv$YBW)"nX NK:cdnr&cJʯfjwvB 5X*dAba6;ߺ!xTsam2^%_s^;O Qף-&da7)TЧ4) )M -`~ObjzuFbX_AIEm󦌉gh":uJA?? ~K<i.ȱaGy e&<tB^N ErHV0o%e߆ Y-"ٵSx?e:ڲF| +8;TZQǛc0\P2N 8;WN= Y;ALت]v'Gݟ?0 5{抄]2kɫtR R2PQAh\,tpGt~)rb[ouG q |!jWh5-T8)bW>1=6zŬ!~5Rj1rևMl>%a 8}0'Ѝip崙NF J|.Z=G_z<ɘg :%\:Noq:eeI̠Zð[~Qlxv?~]IkQ iE P>g ,ބD-!=s?V=A7Xj.b{ lxQϑj=揠͢jkR*{㍺l޺qVw[O !놪LHi1| #T4J{ Ram ;2;9 K~P׸K MhڸHei-M fd%svP[wkkvö\;m̅[Az7}}HK qAD6JxIF-VH/E4f-#l&Yn$vQßwo#cm*YԛЂ ɍс H7W㵰C~aϺM֒$ܷAPRb[]n=eobP9}GgySFpLx j)rf.ވcR6J9 PeEnjj$ݏ:G*sY Px&Gx!T kӼ15qPn;w-[iks IMLڗ;Ctk9^p4TղA ŒD0:+`(Nn\S*@axD踽y赮\)Iǁ|e`0;s $TLevdAko.7勴蜈J“߸d>h[vN#$3:muVzHH9*Yͮ -b۪ 핚JKh ]9][aP*kDfj 8؀K\r3mlip_T[8a G ݥD\}F귋c?` y&T[c'(J]CiUxj+L`Z̫uj_D }UAѻXVB]OtOew62ɸnޝwjUI1_7|][]q!TcÁ\1I>xJ%G v] {Q6QDmx(ݭf.3*4n_q06uItC'@7V5!D'Q<ܗտ֯XA#V j!uHs/!TG^n7Vp-7N(iJf~bV oC?MQeTPԀ$<uC9#<7xˌSygF0m sRaKֹi%`^|F5IJK* #aڨldMg%[r;Hn1q30N }$ '04'7)\F&n !궵 c-#I"*Sϸ ,$/A`+@ wmv5&췷ڑ0 7nܸjAH 8݌ s.2 y,@'9q 1GʋϼVf S|-) dv%ꈴ?ƭ5]־0b@J?$>dwr EBj"{{מi#ߪ]6GsuS;9s4/'b SZ>Baw@EތCsP'H C֞epw;g}im,lA0 ECkXg¾OT\H\/o* #=y*v^EI>gtܥ)5;J-F $٠k$&LA{S7X܂BV7$Eb~OQ@ ZşCخ:,f#tê:f5I(GQOXfZM? HJ7sg l|KźC"K柬d5ݝG+ƮVɒµ=1G *؅1Y]!a<`ȶ~p+}Wh-FVidS-+Iz<8 A`~Pvn 46B׼~ |"Ʌ[KKזb"߶FuDv@^5X4%ڲ;l";wzݡm;%W]<$=;2wvp26T8s%2Y)u%|\Ո\0~Txn/wb]vlA 5iiFE*q <_GW6C}2xc=Y+)B^QEIHҝg3YyR,ICzؾ6 JRhi p0L:&oCU|gv$ǜ?;f8 GP-|v:&C5H6x&^%SG 8ͻ eӇ-Dj񵸿gCB)Ӻl,h9D5hPx*Ch~im w}QWaZ6rߛXff6Q6ܢhDv bGi̒WYQ`X&a狍ā\ž XP/z׼NmNh_ĔTu 9ٶP*Vg=&kG{ {OkּV5|pc F0YF\$pm${ˋ-ԁBw^ƈb?7$S h@x 'helWQK| 3/^; v_ڌ?/}e!g4Rګ`2Ԛ% #COi{Uʠ~|iapm? n۽冁Oѻ)&~^ ':3s{]zЏk4vn9s82&|қd?qG9x a0=LJ( zP?F+ 0Z-, sF#J#tN*A@NZu~Q'9 ۔>usSsv(׿l•TiKM޺U k=%ե^_}Nds{h=Lw`sT(7 ߢteMFzHΨh4DF-)hpO؜T+tIæ[s-D jKȑx)7\Ⱦ yܣVWONZyY>x"ev@D;fՈ "_=M e6QS}Y0IS[Pyt=6#riw~jQJ?`b*z9& .@-Zd,Α2nb%IYIx2m %tZv^Yws4PgBPVGA"Jc_ ke'{>2YJG-Sx/- ``anm\nJmgřl;v["JdI ?2*V\Ux2ƤM2q"#M k"6$.dh%s243p2,/ X2"]S7OoʘR1#)7aCSNpQ?ʁdHr0ULY;GZm1|͓3CC^\*$ `(tzBX04%W\8 <30oq 2߻%P<\2xX] Ꭵ)m臱#Ud{ʦ`!>%(OʼRnɞogF^/rL[zRƓ &d\RtxR{mc撢?pn8!8q9(RW9qO^Z5Wֶ=g_F)fHQY,e%. t RP I4*:^}y^JidsK$CPB{D&YA'EH8R 1|YI:!V^ο n6hövKeOC;X/ dp$,8gިNi^0 " "6fM,gdʼ+ A6Dy`LU9BVѫMϥj{.QaqDXmT)Q(07(u-c4,{ 5k`^o2)3X>yߐD_534MMqXo, ||HwALq.+k%ۻ K郢ڔԟzeR*k@}ѵDl֘3@/gצGod_"[p>*T 64!~0(r]c%8ɲOE:/^P/B ѤZ3S"]/c-ẑĈQh2K''dJZ<{M 2/oM`!Ќeu[\0.l8mu,퓘|Ih G&rT٘4p+{N"{3,jG}mg浜bM9I#n9tq,+s<n`nUM\?2~Ɠ\["ܬ?r8J%3<6#i7i9- vXӱB@$jGM/ZW dF8h9c96~pΦ`ܵؽQğjۖ$76e8UysW2 Cq0> 9|lX6^p`bFa94 ٯkx-&ҶGz1L&'ܸ6V?%U-Z6EPp {M̿Z 1ZoO1S:(4΁&O˯3oV.ca-@'; > ׋gsё3eR y]`Mr\]Nm$T&[ ʫ˷6\:b ^ $?-pBꤽW_n?C4J\4gr#5bbXZ_rPEN(]naR/Q=j穰Jt G'cFpnxeMq..7w gx p^#̒1ڃe$Ve 8 L8ѲLp#D}JN>w=G7f1~\^v_.ڂ*~c<Uqe: TE!ˌ80ʁ'Q@Y6@xb8OMrP8fK.b 0`^s")޸PO^0.Bw*{683=czl:a*t ƋBpke|@\/aᢪ:q@~*% m׬]%2h?n gϗxYiT'i]d$BrQ^νJ\A}hg|AYDTr::|z/#flԍ,!Q,{o.e_oqS71<֦N"z7s״4x>S{.:cSΗþ=N|mګlٟ罉ecr$NE*X#\yGLXeRCP-3abx}VnX1s3[[g(=.ggѣ@M//K&(x|eܵajBA[/{jXA|003A;_aNf/I|X|]2ؠUWp@&(] d X'V歕aǃ!lLY..$9 =FW%)~v&AfQNK_*P gڶ$sz:mS9YϬ>k C_,`""-{:JЩL:/T%HAd!Eg'{0O_r !l<=Pa)D7/ sx1񝖶Tn>?vivZ+[,2䘳>vIyB*47e~-=.,)iEBPS2Fϝ҈K<-W>qCŰeoJռ)ŴB}7BOַd1\k;AS9{o) E ~--z[bH`M?2kr qȬZM1;Qp\j, wm֨bVQȱ'"/.X:$Ɓ.mfƋd1ҹOoS06 :g,ii~G S6Z%4{Vt<ҎpRdЇRϵ |KR24M{- d/9W.CV|~w%=p)= [U(Hb18607xy£ <28NAwK[lSo0HsczZ3nï|ajPvVLCws_)4N(/ٚ81)ހ{7"L9žap3$N6qjZB=8EmQ%v_jZJ{ĮvD:SRmk VhulD"}>HR2`$CnG Ut/!j7* &ED X<7K~3  }L\UtPl;@XcGUeAA]iqerm" X2X!VZ~KH: 8u4'|AnL.bt=<;zV=oORRKj"e <'_:L Vi؞H+eZvV~zjX&a@Iч/.XJ8hc-ZH=Pww@B,9G>^.S @ ,7Hlj.gHOiP*W]u183Zud.'=$馲]}oI3 bIA/#ā͑F'PYW+$(q}hՁb7twPT$5{Nܘ>>|(8 ҍ9-j,/B4slbQ@˂%qA=^3b+*fWdXѢC2 ށ; .s{ԕ̋ώ;3>б i߳zx1d} ͌PēfH)@96 صH0uд{&Z$М!W"EMg`3xFi[|=} O4ITM=1 X_n)wԴ12-Լ\]mVn$8dH=* gY4_HhzY+cŀ%{v_^{QE- eÜk F­9h7)D"%*Wc.t \HJ7~ԑ{z}H@(o>%;0̦Rڄ~1o%/gxo4G@cC_"utl<pGƌ7%"6|sJF)3>\ߠBnr}SviLHG{Ս ǚ:C<Йn4&,Uŭwo՘NQ>kP=cFׯi!㵉cLsv]y\t2;qAœ liq=B2ifz=9<^\ 7j"rtEtp?11YF3^\ۆ>:hkƉg:;mHj>Yb9o4 :-`kOơsCƁtNbO:>4>YnIKXP 6ޭ)o\(du1 <3Ts,G7>+(H7'B7&r#nN6C늪Scu7 P+/׭{@7]F2vIV *{4m1x\Yxw^Di ,0~B[{%G-=~QLaGGv4X2#]'R)F^ƹ^d1YfɛKY&}'e]_·K7WPt3GrPv RBFC ujТiXstkLR[I%{o>#Q['PRW D} ]@ h20+ժ.U^7c?4kOMK7hߝ[5g/m'{rjS+J ՚'kfc ltRk&1'qYp<]fV]cEY!A$R6q G`A'VPd=҆Lh, A z}r2z>CgE*&1KѝP+v +ԣ[ 1ĻZ:dЬqɃ"yx1V$9'}L9#ruQZDe}/h%\ e~>'pT⣰b'HZ8kU-bKS$E U(_QĶy&"zm |EaW\÷cCFFhM ޤu :|u髵B UKI:& "'#JS5~aQ&$V@X`ik[n`OSYzKcȅ翬/~O?-vVۛI,?J9uMܗnnATūaO ܂GU,aی jB0?/g_"!3!ɻA̡[͵QNa“ ejr/Zbil gEGΘIl4QTE9&5{jr 1J4F+++97i1&xEXU:b$ZqqkV1{Dž7Ui6;ט+FAUZ)5jWu3ҏLz JS5|WmMи򔱙7_L繍BʽPzɑLBG6QXB0?+r֯ |^g*'WQ -bqp2Ë_R8ыI H)!~l0m#1ҝWO=/lq ,S׹EqQR 9޺ >4NgOU@ǎ/X;ӭj3YVEot;O)cJUF͟LZ F k'RfЧ; ȮwsbnF*Z%[xH饨-fil*%FUveL,P^fjmy=όS mw"Xϫhˤ PslK%d{\"x*ps6ZE['731~}.s\#3lFOrjbq(*+ɑHdG]M0$QUM9N4|q^Eg#!pϽZ~K9C^d)iv#M +/A`:?a Q^rPm~{O[vN{^e~XE{RGJI[O9|Tk\^ՋK D.'WЇђ{O-f6D캝~sCSa"w љc܏]"EK:BlbYug.TB6J?m8&4|@!O[ ઴mo A.ߑ o@b#n:J!$zMYvZAE%' H0=5҇3Tkp ԢC%H -&,fA8؀KC3ՂAUBb<- :$n00F!%=0ߩ~NT Uo fT$*z _x fSoKl8z]Q0д+8CZ_]p!#~zyh'w$̙ Z#A{u(i<4f[g' +%2x seLyZM,G:3m yJQ.&۸p[QM?.h1{ukQ3~z0&y^I3)˜c^_<ZdH+(Lg@ra7~ U%` n<NXTf̉W':Y+27œ[_`pF !aW_$$*E ٱsЧ~WynQ{נBv(Sw$mK`ZH'nԞM ǺVBK˙}>݀SZtF} uSnq)#"5G2{@;oI ~P3(yx1YK~>㯺(wPC?MUk )JJlѾz4G#aG)+(ts$%4F uX~\`}+L $?U>-o%Kx,eDN>O>R(.WZ֥4Dv#;nKM㌖cG)+F7Sx%V 8 Ykiw^DDY{MTD8eRCC.\tS{V28 E(PW%L #zA@r=UH$@ XvFwyVu`[O--Sh,PCR댉\D;̰1ˏK܌Q읪+RwYqmK7=;$Mĭ +qS +J-P5p@«WS SGpa1ԃKt6&5AND'c(5)&t9(j,CF""ZկE1w7\+j_>ӯ5< 6?WKa&|RwYAAAR %v.z{WJ4#4q&Ap3'#S 84xji@ N^<& 8/ekV <kʖJ]@ >֝2P4Qz4?N'7Kl3<:&`ӌ@Da42: ZyٚFnCEg5ՃrۂfߎZsWdeKʍs^3l?28 ,k Uͳm5v,l ,/*5wvoФCͼ@z;ڭ R{lp7BϺ H}F \ Sag߄I&zz'-׾t~)sU :i-it0,g#M.KJ}eF_N]5&<;aV\J M>b;`Z {еo6onKed|m uOu5 A ਍Rkqe/{`ӭʤ10mk8 HF*WZ9 UR##OO$r n Qim/xIB 6N&C@egoi6 #-~9 ?bh (b-m@Zt߸dD/D<-ހptؓz>%esC`hăNi.a]?$BQ?ESڥ-heJw:.@y–(wʅLw06,;qQt=15.YLdux,5@atH"cͪz{|4+ *ҿûʡuܜ3ڷcb-Pvc4Q=i,QG,&]z_QO*m;8+H$MƆ|SS7[۱Bb>5u K]"fnn14#x:sݏ`ՙ{v]5lj)a>3 5#Ȯjp좼`㬬Ά2_~joCuj9c>PP؟)L)KpRY/iht`_pQޣ?D*H2bx44 J䃫1OˏU)M\[vQs-2"$t:YMio):I_~O򣿤dq}2!qYq'؊`* ԕ\ Gh$w$@b(zyaSM?F +Ul2RTC }4+">=@I_뇅&KEaۊ>h"NժjV%%nu%GAo@XxLLށ\W09 *^0U!2:B8H%ԣxRRgX]y6S V14).2g`GcrwJV;\R\˺noD3|oԢ>Sl.p|qvQ-[IU#_s4bA)4-W)T_-;F Ϝ B]Ptѕxդn{AIlS/ ۃôav}*EQE+@NL?$%G=ɗZ /g4ӉZXZ] uHH>eAG}qJT" (k?q8 Wk)F:!X[QgC0"Ÿ1|H$0iP1j̛V'XzQd1ǁuEh_f(/4Vxu&B3@'>HQ*YJ#5;!6 €F&=B־Y57pA d'UTjL|>ˊ<-4@ *-(;;T閳ǯ: 8yq^2N]b^_pAXHl։-[.I08/C@uٓ6Pcn{dW{*ipM 7UT W`ϾhreŨCSW)W(7Ja6IP d_nhge8qXjm.TSϟ"o]SKŎͤ1.lK\xe9_d?2^j>fUk8~PBx_]3-,AsZLem'߾HBQT+Ŧ:o~ϏeQ]/T`LiU]*qb7ŋ«PIyeTUn=oo/,LR/H~+r^58Cۄa2H{eoBhf$€u~oT{YA( Li@"L97=gTquA%H)On;c:.bhήjp9VjXSFp\4$1Ȧ2r6W̾ 疳1VΚ YAxkOa ՟plȯ/Ԁ>*;?k:3)^ysfг1ZV$}`:Z rlz܍>Dk@/]n%W@%2ru;j8te,}tT(F@¨746uf%JTpϋ6(NƲYWW>8eىnAo-" ^ӤbK[E$dz=aVff R}gELyӼsؚx5_D!kḥSc$;)>͂%kvTHhU~ZWe=/כE;eʯ>qLoQjW C ;C#mbdNUQםA3#K}UdD_ 0k!/sن_敎\Ok_u# {pZDA{vFtȇڐa6EƷ QNW6Ci0Ej5MXC~5&HBijjt/k!m2' DZe7DaHZ; w Nolnj^f6g[u;N D\e+\xD`]A0-НP!Muj[Q1w!:Dn t Ga?}ڕhu*\PbVO/ϷFws)L>O^ZLqFr#.+9K˯llx8~ՕuAJz!$+lݙ-8 QC.gvMc=V6ryGo@ Nl50Bm.Nu`3F@Uش!~gFtnj1@\vtbvL,ݹZO 5hOǤƦ~.9_ iv(^!rWC* Y&U3emF@F% V?N1ZFK'xPVBY~ 5 =gS&epLEa`.N"[~oW\&٥_lb]nr&U"we0h{-x6*lsC;LCyP`bٻ23:kl@ӹ|^3-p Bl2q|W6NYiaDD8rK} \oȯ\Lˋsu[L|$xʖq8va_/Co*m#0fԦl }' i@T;Ωl+ b+Qj]bPfr8uK3<q z 솂 N6 LǟYIH%f .u,OȶMJ``;"L vtP:J(.yw>_b~ f,wVDL0Qw<%)%}Re\۽x*znChZ._XBKR+.y?A 7.Q=E%y'ItYC,f,>ء5_iEa]rRl-Ő谳7evޘ>W;ʼn]td-{}̯J GMox\B}L~Vbeg~4uq| B7X+B>ӏ}hκ2D5ieן^񅪖>L@8kTv 2LalgR܆+f(ml_tj'u+btl!,jq*cU*ێDs .T[{FIXqj*TpΒآɫj]Oc$lL_u;򾄟! 9ˠWntadg#zֺhs?a)pg}bm2e?ܒGeJw5" ~'nn )/XkLq;Yiφ.ӝ<L5#ii6Ot3B?`'k1%}PuOBN<֮5eQ)sl(,bXr^مX> YܼW6,[1[{@")?Dhb6wLG6T 6_>6ʨ=r(|μe)3;'/\E?v @C,߆yKgmGĥSג]ߓ">W{FH}^p { ݟhlp'۷"nC6΋+GiyW[aSAח{[f ay9^Hj3EN !mφ$u"(xʒ7$v#vAXؼpu(fd2_xY4HD elеYI``|?L;YeG ?խ @?oDtY‚<#c3vWpV,l%)}4e(OW>8-3R)tW%cb5ll6T@(CW̤|z7&Juw_ᙔ2Pfncʇ&>c R|7S߉|3$g= 52ED*&ibC:ki!uE3QR_j11Io:/*h,ѝ1]=lPDc|bԶ#tdٮ$jY雍_N#@#D؎ţ8Ews2##RC˱=򗌥Q;A/1u~'.k #76 .1Ͼh!n(Jҹ\j g}g3T&g;iD[sW)/ 9b Gb(8<@DQgHpe0k'`:6WJŸ #r$=QD!q{_(5&Mzi\Vߙ`hAW ]P|7(`{qُ.idq,=W-J\c*HϺ6:r5h ֒1D l.(g i.t&[PRLTs:F/+l5#g?blMjpG"Xݕ7PFb^Kކb8FoFa͟& ):TLa$C[Tdk|?č1 + ڹkFԢ{aN[qG"YMwdSˏô̓?`3p%2p^?PA" ,7\$xu<F`]E|M|BrVF׀vi]o̥;a柌C3A`S{P[%l%}hMdVl$RQ7Χe'IôǴbp-dRXB8=PO'in[ॶ_;9:@1 Cn!ЮvMfU X'{v@!8>Qg#.f&6}Ft Y&/SC\]s":Ж{Tet*e7 x%Q( V5b/t}̼Ϊ^iXGzIpq[ I]a!%桛 *,uc>kQhVQ * ..c) ׸Ik s6㈰VρDr…񴧀?WDdSrvT J/iLqU[ ePSK]L@4ǖ&p1~FUjqp.J:3Wj=}7 0fX]Ss?cth (ELCGx^d:)Iolɹ]D?t]򊏮r!pI^.8AnO` nO65#ea^|5K[㈜cgwRˢcⶐZz'gC _TÍ3ү+rˊw>3%R)hGS U lO:_| zi\4иmD.,rO{ c[h(.WzULPs Y>b5\1 xK}J4`kf:<;@zwI*pYƪiL^ ^9ʫR@Z =}e6^6?`uiz._3ISiihAln}E0v:Az`Rb)" דDG<,GRo?.%67bK؈o)HKH߂M#զ-FTWh5WLJ`/A-7npدjD9)ݗk^l<f=yex <k>olGB?'Q?aɬҹūJhς[GȩU*$`)-b+% V鏮y)CtlϬ )\tYX8+f';KYgϥ1i:tE63 |֗pqbO-{'x<9"wR?zZ5f%h$!E)\q!F?/igѱdpW \g9 u ugDHLNZQxҏVn)mϯ ֮\D5Vf1~xT5X˜Bd(b#*+OvA0 -ϱJKMH|?.%ͪ%L:"̦&+oc D2MGh0=[yj'A脸 [ ZJ];m*?rAgAKEd7ػOZ.m+'񃉹! K5`wD_0%/qBāPsWLmNJm7BiIWt}MÌT f2k-t{A%ܨ-Ht䔚#g ) NMtel ޫgL1X2Ʋ@Z`l1vP3pN+ay ȌqqH3]g4SS_>egRǢ =p-]q,R?P!HT6ÌPgă ?G)Aqcq"X{׷b5}WZ+W5]p˓-Ɨ"%us_;+>\:o=\lVzZ($#f;80Ϫp5ˎĒ@(H$[:TZl%Gw3Փ p넖QXˠid6kQis"7ݪ}*X~ڪTii3/輛`c{qa>ǩڔ2V'PhG<<~X{K\:ISz6R"{GlϓܗEk@Z ~7x-zNl7Hm6QUӮo|Nsd&Q2qBo6w< 044z%8 [Z5s8Mcgn|cy7-ĸ~VO#Џ|RF {`޴{8 HZ)`w+.ˎj>v"'%Y|2P=4~&ktbØQ5Uy&?3KL2 2gОn*]ۊ!Jz#P\#f59IÒ!*h]@I{3f8H` M1JۋWX%7E]^Pv݉2Jy";AAI`q MZpzTdRRxKܭ@,?seJ&! ǭNU7j&O6J|R}T/Hi3ofm;t@V4f!\0H4ϭvɆ.=y)rZnٳ{iT"D&-| Qڕz:\DetΉX`+X-(7{Vن!D5 ۱$[\@|+q ;R#҈< ":w*I+wM45틆\1>ĥ{N3ڟFqs}:D\ 褡!L?O@6q'T ,2;q/0KaӺ4^O pf=dwG2i끷B,T=ȍ̷P wj.rEbm d&lhfU"x-\ԻQy]Zܳi%Mp&P]&58ٽPq07{G'rI֧ P-aĠCֈC^::|hgS',fd.X!B`:1T.|_frG 9z1}w Κq_'ʯڤ81 :Uqa=\z4(>0#֟fc@O\AKOOJx^DRhGȻFZ S?/)?YLG,€9ĹUl٭ H>5QY84wTGQq5[&qQI~3 %58i4eyl":[JT5ƙ!B9UIf=H%13?=^\\+JC*F)C)MEuҶOHy<,Vq0vQč%a>T6ē[3tBOn!sI}{(|cy_H aZnľzBۍ@MT7J'_5J9CiP ^;৒ \ZWNҚ#M6m3`/o,ie *z 9PR)20*h _kk&;^qf_juG]̦O}af_xCgmҺAB2"x9jA H#)|g(zJ̣7iE29$Z Lwۚ"M8J 0֋p _ߟ2὜"M‰uc](*;/ )ԆRn}b$7=ՖUTVu=*?AAEius>ې+wsʫj-M_ѱbf-Re|*-gSi5|+'--d˥DTKyXW 3Ju4vYg L.Mr]K% v +~|Ǘ[>`X/bʥvȒTgVlJ.$=M ܥe<{$Cg Dw6[yǝ1;i?Emnޙ*mDk۽!BQ$8gYIrXG}W]KNE>u- k}+vɨkx Ny}f^|7$t >.KE^@N~g  RD<\|wv~˒|:4dj=a]ᡲIrlgcѝEۉ'.P!7 /5p{E/c.lm_ ~a=[f 3x0}y 9R\:r#ʏY\(N)dp!% nl_CBUN;M*!G "bnD(v )[" #M dffӈb2VdSLT5mDzb+˪PHhTYY4T9,tZW{ǢrC}b1c /=u`guUj|Jʺɲ\%D(^]-_P]FRMn=WqgfZ ,tJbCm˕V GkTԻ`g_yLK2bطy5k^_ͩgBf@Eoz蝶>(^rw2'AهT:ޘmbßEP+u~iI+Ux@?ոڸf97SRhh/T-)N'41eY`#[n픜YǪi>80?D꺖<шqI&i2^>W7m82 ZJ̨C@i J(:7YWv:ƀh`LӶ#"R2\8|wr/s-Q68+*O]<@% xF?`TEHĻlWݺx8&_ȿʢS/d9WrbOD:"I@CY쌍C54]fo$Tv*n:moRwBW61^FBbg(Re5Հ9[_uqs=$?3`҈50~x^% ; 6q{BV{E=/J|CA%u3GqGNibX;C5A wbfׄOWf"6? Y’Eri9v;,$*B!dR4ձ(, MΊwn`6YI~VaJD9);DԨ+!n‡6?Gc>TgjW@JYe K5D'?6#!SEٮٔ&{Oɫ#}ڂ~ۯBPBґIuw2*m7|~w=:`kh8+iD>!YV[E$o~xM1 0{m(29 E^oqKG5S|bTBDQO%=nHD=THUЏbxF\'SO$jeE(.1Ps;²GmqFcut3bYY\$*ާujD(2Uci,pwO޻K /hWriQCK P*UʣqR7O*Q p.tDy;޶UG ;S.a+ϐ\?P<U/YMc0xGϧ"|X^L%j p9Ӓs&m{ a/ 5.gkir 8s_zp%KR]^2"hl5Z-={,RI/Xv8ZsD/0q<.01SQ@r_o#7X-IR ~w?E7'z!gx빝,f W Gְ.v3d1BN 4&%\x)yg9f{I[;mS ö' bT?AD+-bAX2N̜YxWkhO]J [܈fX=O[N84+8xc&5}K\ߐ+y`X,g7gI;! @ݪ bUŭs׃7cҹ}j+]uj3lS ی5D3_.< N4Թ˚OhxDx RHqӈWuyPv6Tc ,u>ơs}gףhJyq'2U^Ye8}!j Y]zM +2߀8OuC/Q%$}gY7l` 6NO 3N\&W.[k(:250pi2wOBs> Uuੳ6_֨P2P 9}~3Ơ(p`LĠ>|o_^ƌC1fqtU&εղS<@:59 FmP9?njkxT5PHS$nT Svqueß8duw+ Nb[s..OϻubspÃn`1{(VZ0=_d`0 C(#?>h Ǵk-ʾ?w%]Z{ vOxa^I|k(NKs82o_3z1a'YPG2D|Foʴrpt|ƴ}o'jpogНªٯgv?&4wn]\'17uRQ7NV93 Dנw!6+)5] pp D5k^yQkN@`K9OPD# )KKSPg@^ِ 'Z>U( Ͳ_k{9XFUa<\Ld#d︋pHGa:t"gQZ B'(5xXw㢸2Ux!d-lAn`jG9TL=?kXxl`U3@/2o+N a7ӖKz ;s(ݯk#}܁U{ۑo5WZtHAp+?WF!I՜_$4B{>Wz!H`06IvSunq<|⧜/z1|~n%,n\CI ߴ9aɧ\g^=0k fn*&"3;`EBh =AԺ_y_#( I C7UoMm)yՀ' ?&)'02 `y K\LDN[6zn#V?DNA v~¨ZHh\[nRܾO]ia6k4L\6^Y<[(DMjj.F vQoTG|ՄlvB@zzl~4tອn =CzDdp6Yt.< I@KbBN /ͣd9 v6֯pf8p$)Ξ)zty$6Pd֞pd-Zo66}9g :`sI i!u*#paLgwa֘,Lae4`"8"r+P=w؝Y9dkyi[J4y "o&(Ja: jatyaĥo%HAQ.YI +aq%+`b.}#f&SjQvE`~V27M};hYђϑregSp(B(__Z?"_eGV1y@@CU4-(Jcʃe?I}h9JcRJ,E-o n9 O/t<%%SJ^E `uZ6 P9P]J=SIxu١DMm N.YXvOjw({#`='uxl*O:;%tj3Px2=` s4XɈjj 8SkిЗJ<% e2<5$W&bק03 (f||S/=!Qe4qŊpO|:3 Jc +WSVIa6BT/Hc75RE2$`%P0 D93w)ܰKKkꇭ?6CVzXz̼7Ok[% \Br˸J^C+.NDXގęH?XSCD+GJPbWY2.uu:[ӫiFM$dhQ[ZI4pCϡ5I7nxXaU#{Cz5qC^yb/8/"0WWJ7+@\v`e#[فN1ҽ,tVLWvY1M⯘IX/{i aRz# (t4UB~v_hjuQ;JJT-O#pm v\O;[OSlH狅Lį{ŌKfqע(,;pj5فȎ HLÞH.)Q֬g m3|oۄ:qVX~EyQ? Pa٫͝l1(s0r)hܨߩΆ:}c5(>84x))0mȄ .x1OCQY׍YޞG&3+~_Dbr;DYMȸFPl4ABugn)zQ6Lc(;s&AH.Gɲ}rZeV"9'_3]槔I!9}_qXĀr0dsfMbd͌Z*P2<Cn>( rV8<}M9 Π &sć"U!Wsa K|5nj;_W-Ǡܔ}}yǚV pEf<9/++ֽ]㫸[s)'=e+_`JټfI-딃w ݀ct}W# [8:Nm9A)x$PKNrW -͹ T`u.T6(sXY~+MڥI$Q4i׍c)gW<"eA}D($`{l "jqa2-\<JL~;d}bFb~IAL5UUޱTOV4׺ha^ϙӶ9y]%7 r>ϱX*j\R^`?űI[0(3 Xz d׃k]ONC<ʹؑZ}fi(٩U^>C ʼ?(mK,HPߝx4O >i&I oZүXp'O;/_2R֙t] BvۘZLViuZ/^P(hєYZgL·OTWʂ?o;'=qV|Hp%#gp?f}"BizdC#; CGw#uA- bBJI&rG@v2}]yd #ͤ+)򕶱&sԂ_hn$"oTN٬(XN1Az%M6v;{.kmg{k@Zm@(?t~#m/*Nd  (peWUa#p' pkuD;r$'(hՂmx7.iq$MUIJ3m`-2љ[ll(<ڲqfF95_$K ܄wXGZqBi_Pc*1@Q]*@NʝY@ГD.l͐u!B#Yv2X@{qJqJ0nƉ:KψkD`׶g)(KəNLMavA4P' P-V-Zp9 }w :3k$_1^M0'`4GB]&{U7fI{Åugnn3 &!KKSEțx-Cٟ0)lj-K0mfl$OBZrQXĩHً"P *юXgb R,$ :ϰ]>1R!-:kYq|"sWMpӨd(@ ) 0 j֎4z798)( q`=il+:(SM b`&y \!K<}XV e -bGZ3e.oĺ &EIIFViƅ3=*LJpW=k r I/ GpFFJ?n=oe %N6m %R+Kg%]J $,?7r+_-tV;kyb$F7Ppw#BzTs|I->HD*a0\'tI$[nXi|{yr)EZ[ϗSQY>NI#t2mtVX "izg8Xl7jw2LTaY%\$-PUMBJoaXq-]GI-nE=Ti Vϐ"ۋdn?zn,QUm4bvx?:.0'd}]Ϲ"|e5.)H2ZL4HTR`^EK}.k^폞^*>Dz̵8Ua:˗&pHǧJ:R־g'Q~=H;x Z*!$}ٖ۳H!F)zR NJ< tl"$_1+(wg%0ό)3uZ Ԫ2aЂt!lz851ÅDojoD1 ~80aXɈ5tNAW HnOc18se(P'_rpaIшnCvP3kJ},AĮd6G.[[}:}?3cٌ^ /(4s-lUQuW;iiRR17٤<Ce9+ aJ $]AJ-9 {= =1cx ܌([oe6kޕw/\Z [#)3UƋ1O 2_GOro6V?n^qxyt`Ɣ}9bZ8`I:P;=rܹtʆ^r7{1D 5hq jQkzHm'WeML. L3fk4slU|ѫNWڮL#u٬K U.Yq \ܭdo(|d&HGwg1WӑgJxォ~z2$" lB\bcߞ4A{QWmNOcxxB ӮUv6~M :zLv9r. 2PR-wFNB\GRǎհYE5_Lڕ~C"VНoVl7ʼ@ ݾ.fa9szM9H+K SoNpFwXNs/6yX$uxîoOPN-ɞ89F'mA$U bbavןS:1.(ŇZ+?ٔ7MWGT3C.mk"P}]Nڑj_0 oAz_GGk>՜Osh E(>T<8j>A3b檑k;sSN]A VAL۽hᬷ/}S[1%O򓘑H>!ރw‰.i.N/r}p .k6|_!1 H`0Z0ZY=^pxus3W%)>Ai".6]+DⵔW /rluji%]cN:D67 O} n[jg,g)};t)Iw, L?ьN{TΠ`yb!bĪʷ D7Xo<|Ӌ]Ory ?{oq$ J~l=x?+nVa]L7xJ+yMJ=>*sp`3%#~KGc74SǸ[]|XPZ > UBrRKMFoP_ۘ g~-#Ao|gw{1|FU΅w8"vֻ 領LxG]='L{nsv>O_SU\'^x184籀%8!g!Q9Igz%@9&~1 'h-W Myq<JT<1w9Lktka'3٫J_ק@:VmyOUc͐`ԑ\߈3A+{侹ubKgT5{*Q#Cd"U9ԏ,FH-uCM\$8_sZ//uQ1ٽW[4#;}H8 5=]7҄@`Ě`d.ZJSt:v >WUV)fd  ijJ$E!g7vl/PU2zn;#xCz3޼X$iUI6*gd9~Y&+-< -Ň'DeԼdeo}6klJЎQ1qeG9쎁a} j:e,Ύ6 4A_?ߊ65h:NJ>:bҢA1' t6ʶʢa&"sCyRȫT a@1H䷫ΣB#p)S{GƼ9;t%g'g֜07Np)ïa:J;_2Tɦ{m <[PMĻ:#@-BѤ1 Gm8Z}, 4a$Vq1>B)$Zj7xgݜr?xE S鐠-/P꫅PׯaT$WС4IHx,f(PCMd6taH蘞N*fԋvvKv4qnһ'kI ֬e^F$8CH0I3)'HtqCg@k'D5"Wl[ɐtϺK7dfP,߇ wq\c&;p(\_Lևƛ5\m7 ?0S I~΂ɵ ؆y ۔5!D }ST*\nLNј+P7s tksx&2Z~ c;4v.P|9u!&} ѣACLU{ZN8ɼŇ2Nvdeƴ(_(y_[t )5A=nXM_ `s^ PP]gǣut"u@&)okBUP㘪lL?t<ЃlaiFL˪XIz@$&ĈӷBQ]!g5}"TOR D~E .x.ަMq߽@E 0V =n[#&n5}qwЄG N8HlCT6iIQZ/}Dy@@hlrr^ AzILGÔd4#wIV~vg&*[12#~.HuKXBmzk{;f{z5)hx[6+3mqhNjFՑhx~Xh})zOH %`.f<$5`ٱ Px "QNnl;5>'&s/[<8LYiz(  [?:5#'}%AS^{?U/|BP+Œ~4 %pOP0 C8i(/L%D%.aǡHu/>b?{0#MjޟB^,q=q:_~zfD$_~v@= ɶPnRVB{h"Xuw%XD{;(qQd3Po_8{ƭ,:~=|zK"6#_ &{TX :ҒZ7 !n6.2˳B}}X l[Y@7;`zӛOMmi )#cEY} |kסPME89;T Lt:n7O (<$Ky&~QDe"{Ic^jlFbK.ӳAlj|rb*F6w9(J+t40)TnbŽ؅͆4` %2Wn#\!~GM ~6)*7?9L5>}y2d@'Мe}Cb܄HH$!xU9'1gyn`%r"ģ-ܐ?4dOs[Khu.)G ɝc3fx/pEC~na.KsAyw<GWq/s0Xy^JNDF3Py6Y)}"/HYArqƉ'^Ț Y'ƒ@|<FX=7ZCzyߧ;Pr9iQ(eQycFP'쿰ZKmΗ‘,(^qWX1q@+^7VwDy DK 3P4G'Z?HV3@DxW@Ehsis$XG|Y3/gY>$*-l"lqD@j jr{q\٧J?]ZelކzUG1Gy!a:HF%́;R"  PbzOO3^@8r=d] $Ŏ7^@Ad:By2(?lc +hsw3P{{_KY3*-&v/QQeC:O$%g+ }}d<ʍ+Ŀw>4[{ϧx};~xMX4(G>DLrbN3Zإ鷣._]ձ xb-Nx$Y '+I+Mg4ᄍ8MGv5bB'Ɯ+i1NL$۪TADs ɵls׸xR9h*hWJ[q1z%;i4ʺnͥ*Y` +r#DŽ{bMu>RQh꜊'T%dkX&ҳSn - аa1*Q;*t HD2Tӫ-^ys6suN_2Ɨ}*]c;fHĦ_]h3"H1d~{3@`rF `yY=iT-G%l>]_jf%ܬ%9ߊ@E+r/3]TFx*+j1xuYY;e v~'vI-;A2X}Vh KA "Oz$I4=5poeBY_Ugfۯ~)kl1ouMAWz_C,0}@DŽ?~Ej@7#:ȓs03~?f?Y%hԦG0 q9.N,) ^Y5) ;!RI6m;[WRCPCua\ j]UFv*_`i:H$QO k+Q9(/hq} vtl ;RGw4T 'wapH,0 !5N UW&'Q8.-FNѺ;f/ b7 ?qJ |i==wxߗ.ݺjeˮׂ+>cB`(NpfBeTGİٯv#I0#TNݕ!%. ޴\Òb P)kQ_XN nP,Õo t"P]"<]~!,7",nnͰUXE!Z(j 9v^CĚ[5Ve\eu!S Дm bn9 G^y>[M@*kO9&IP3jn:e5= '(KI]R=7Jp@S8" +}|QAcq]+ٴTfZbkm¤]R0{ԫ7撕NxsO '2lwNp !4F} ?Qb9Ag/r!{Ýs҆H̺ Ňt\> V[è`]l?swZZ}5xc}6 ʶ-HBZE0Uf~P8/Z$:ŬX(0- \F:r'$$ JՕ8o %DTU9:׮2FcwA$ĝIyޱ|lP3`O`šH> Pg;q֟y,P*al?UM*+k?$v㋰*qFW%'6~Dty8maS]k) ϬzhHZ6A_ I`إ>_$_y>2|"˧~[𿋑)uILK8PҤPP#d cQNt`kaP,z?rRUaCUô@VYOx8_Av yHcfcR%A6>CV lRN^NP5AjbÕ ~tZ2?0b>ҕ]_6\F8o>-bGyC8ҍgP;h9Fw@xWى' m}Tm/q7țzmUK~Vo`L=Y՜4S3Եry|B]6 :KsZ{'dܲCfRb*-lHT 'CF, В*׫ r&aGbWme;?.a;@w"HU=Pe jHGR;)zDK<.Qx@XacՖsqKȈW4 IIf% 76nö ' * 7' hྏQ+gIXY,5]S.Zt2G] Eϓ^i4 NYbt}6vϭp5Dw%:xSDY~5^YC6'Fo !إ"T Mm#or) Ǧv"&#i9I֥a8~٦v2R!X8+r1*Wĩz[DzODi{J7Z \_Пe98s#ʰL&<pFtK9Z_7eoT}yܬky,ٟ4={KhDdIWl>Ǭ\P7_4溘Ϲ ?w5Ƥ}ݘMǹ_`MbNtUW8[аӁR5 X6xxM>ЫTD>Sa6B,-._C FjsHŤ@yjFCS:"O~02J on$`r|* V~03z}GsA\$ԣhh~O'P{/9n&?28z|P}.r_ #J/{񾂧wp< %M qZQۢ ?u t#S3C=TṦw9~7LQ3zU/wDv'\Vls OAĦCHe?;Sab[nx̄cQE= `x*]v?1Wj:ꚜ_*Uc,x|"!e]휲xce{SwqOD:1*Ǯsz kJ*Bu7pchjK4+ Fh_9F`Qy9)9'2"?4\h˗Nmh9N<00*E֛^|2ez+00.64A-Vv6yGxpgڧ@2t*kn 9LHUMrA5z;_bt~+CӴexc8DvΝQ0)N^Ocf?i°.]\uS1/94-!KKz}h6k.éj-MPMZH T-:5h3ʆ\tZj QhIH9%G>0!!uل,q)(6F2M `e茧GҤa/rQGK X)>"q;S70Zʄu~Wpգuwp+O} ~;'"6$<^/B1&-cS鵠-\6$ .HMԹIk[¢/(JqI6Gsm|aKۜYx5 *ضs _, 6L{:6GE#.Eg> Lz ߅ׯ"6?QƎ}) F6{  "WЮD8t {|{}q}p`'Q bBcu+)Y^Q#C; dR~kw왷 B2`v8xk\%oFejL4R*x9 53l) +8ZIo)&\2cSe8ozFJ8}pAv>\֛@j> U)AIBx; X7 ,f:f-qwS!1YZ0T% oxRgkk|>)4oρ/&a} ;eryd "K1n;T=#k`2vcTozE)XX>9V0eZ 򉱜Yhc;3_W728}^<ܩ{Aub|q7\P /tn Ppaʞ:kībr:Yj&&:Cް0}=6W(VY(|М CMa`iNr">)l49*& Cfd(NW"z+j.{D87uiA]qֹLn/1#,WgmSyɰKC:Ѱ(*DHXđetLnHYMᗦ~C^kB /sXh[+"b M݊J&PG_t0Gv '&7C ?SֱQ4_ck ''j[0xI?^^ڇc.rK=lwruCĞhy%9 X Ą߾]kx\H&\w(ެA5ƺ0Th7 $Np' HtXbоҪ) 4WD,! X&.H~a(rxVA6Qfy`Yw!+Ըh<% C[Ĕgqf{a5N We(<߻/ 1/H#v$VtB ޠ3+H azNڂ3ݣ+→qFYi@H,MpUڨ+di|(2 U8<ɦR9ɒW3_]O:tGk:1AQZBKᚉ$q/V"U6EM5dg\},v_<#=0ruAu&5fFPziSnB(W,PG;B g!i a+.QJ{ {PBşmD|( <0bĜoh9-CۊKތO"kOgMry!7bpSM8Ee9$2 i1Hőy3О 3SOJNw_ֹמ`J|]FEKvl%2x<^v=$fV3ĮdmY$wT6631נBחLyyQg3ID#3eόiz{XqF~M0l@+ad"޵1mMZPC}Prք2dߗͻhȭxZ*6 bN%n_eۥXTLom'0l γRA|>)YZV-Hרt}Nֽ\ IݩOZBP$$!M06Ԇ ˨ANRt(F֋}.u*x!=N$=qhhUߴҡXL c(vò 뾜>KZJrž3k лuxDYB¼v( d(/ȉ%_fG(%R*pC_۬7T>rTxF,oex9} <, yL|_etT4y} I9 ;#pcihDk۪dB%Jx<3QBxVcS:+[H3!ɀaWJ߿\:$P7>9ߝaϰ8cK8TԪq`?;Hڸi.E ͠L_S4q/gޕ=îf 1y(0[ƋplيvQX;=~VAdA(~?kmj(9CTUBTW^pmu}E sSx vPdWr6q ˡJ[pfE~l\#~VF0-/TME 38is0ȳteN R05^tpWoc%[hoV]h}$p_Ҫk ƿD+4ٝD0RIt[[K5>Bej̡  y!G.&h f*M|p{S:%Fjq  EVxE2B~Xf/." b iWPz[U-a`ï009\Uyln6⣋]?HڜiF+&݆&˺MG3/r,sO*_tS7D(H"C Rg Bn d ΘW\g'13Hv#7%e:4&qW.]eQ[Ps"hb ^j()F;2`//i!LZA;2?"$!PDDg6rGU{f9{|ؐѤk=eҊxߺduCEEipN8FkߒIl hZ²q6@Ov[Rg%O&=ڴ쏼ooY9YCH\Z7&eߐx E*IÓ[J3%'FAPq*.wg |Є#&[yz eYڤjld^*.2.tFP M \e/4Fiu_;pN6/K mlUJNW<gAm?1ma-Cx0s9ǜ:Ix؀d*h1=1<<;uå^ǧ':IYU}YȟR'[|a78{tX"&//oe)1;z2R$Z}+fP̵“`Fm ۤD\tBA9ԉGՑ3RŻ'ZIRUqaP9֗O*^V(,S췬jz.>ވVի@@Yr ;F!hbeȬBiDրJ#Ӣԝ9^>,pf_A-Jk6FA+vMtm-.wŔ_P,.(gkS.(EB;!C_C뢣xa"?$<\Nmvɇ\R2&1f \=y$1Ojh="Džo&wwN$Oh])Z { jd:ŠҞv&휭yxwqo&pRQFmpp Ƌ:}1 D`[,I/Lx` *N&Ϙo,]\V~}G;\Q~(4fkŷgb!y88Ȍ *pkuv[rRoIw.pQ\?\Ď 0YgoI(kǢ5T\/C29߽W ̕":r~>ABЭu,2QT)8ny3< jZ+(>.(lM Qw7񥝴Pj=yܝE'lWoL2p=dD4-ٜdu@4IAɣ0O SBp:SBVFAPl%" <+<4ﴐ:IQf}ZgPjEBf0@[vTM4SIeԦ&{FҪ+)jӻt&0F"T-:fN=Ss Jb0K(gTOׁ֕θ[ }R'ΫEXi~Zjϡ~ ڀ2-w]N{z c#f g ߮ق}_Zr]}RIe͟]ҢdhW$f"8%ÝSdBnor_ã(ҋ)нg\6kt2iUhN#E d? ss hi*%2L|a`&X6M{3 uݽ2=$ɿ PCaq*2H]BmO}G(k Yyh["J辊!ͳ~pͦ|́K %.d+Y NmGqŏI4ˌNHM]J?E%%H@[Í<;2JP#vvvwLu*qԸzjIEz8rc0-շt5{L_8wFu( i22P R똀yc$$`>c7qVH&K: ٤2*xVP)c$";bx|#\P[MIk}FkvU2~G.MaUZ|e隑c.?x-Eؤ)2reOsSM-]x}q$uE*񆚪y@;CrwT;8){Z &ʚɗIչ$ςKBJ\`[ =j5+O}QgQ_pNUPK4):ߓM(P [;YtQ,1U0xp,QpQ8ƒ: +&@W-t~̶h zs:(CU: !†Ҕg+7`-ԃ&)+~ńgd%3/p|B[X[Fqnfsi\UF;>GM@ UZ  ! @(j[-{=oǬ+i_DdׁҋU%)Z,fS/ |"p4hn- Ih)W}["s 9 @*SGЧ//a*t;Xl HnG޳&wzns&`gl@mŠMkr]u4 xJv YkMu=M;WՇ_[%nեx?uuU]7WtZ#)"1 )BUH1!<ƾ>pLv$2 ]pFH&fJ( b'x{U)+ tLjKJ_-/;l)O'L'ln+ށى:n<kz3:jl Fz}!pShxx |}TD Y2ԃ}tQ\vr*E"bW\+D>"Z6g~P杩 /Tt%~x`WN: BJno?d8Z_w 'uԶ"^]bu('.MBW׃頂!TSPn )ſeFxA{)sN=i_!}9BC,PO#D1kڴG6ī|sc8Xʵwwy/DŽs#u/l,d/N54앶1ۇ%JhՃ]jRzsjblSn@Q`W9.3Dŧ͍XyZZ%wXJr#cG (w21wL1U_?P2q,s帗G1csm]S4tC/UX{P ͝0*(p4?jFCc4Pp3˥!q+R]^F-9)r0')Q0>7(RnT Aik`aJfАJ0\BRrU J,EX^(&',1{wWZ^UN֬z8C2';SY|@J?"7-Zo7IQBGiuȗO>`M"Nª;;*C˻|Q[zlo(uh ={jfqy<άn (H K%@v-xI{ZZ$JȋrЩjxELJm5D@I݌鳁*j_{GCDKV=PmtjsTkm })>~P5 W?m[ԊGq-\jAkE_K輣}sOeKTo^|pA\BIcsED'b,bmѺsnD_fL-'']SfU'+.rUHHJ7Sz9Ec5,b^ܰF2m%ݲIvVXłwpdw n*Pn!lz 51d!-kgt qn*tЮv3_HXq 0xw ;8{FK^Wf-^Nk /T.h(Ы1=oWesq]#ld.]>ַ* '.rC%h=5ݤ37]W(;6z)R3V! 3ݓo.N!|k|Bv4:B^#+:yF(Oi- >slG*/_nD{8^_(σܭ!>V%fDӌJnXVs y͐!t%&Oϕ䈛L4{1Fk2KˤLn;slxؓqŧls+`Kab0{Qʇg{A7f<΃ (]* d9!-X*HF3xa6o^/P,,!4㯽ZA{QMsQX eJ^} U8! с6R aJ">s_2._O_!lvOԟr.I~?r][HQ]֡lQ+p9Lb\prcc彺'ur-P.S9%]BXNujLҸ`ܟb_5Sch&ժŖr9 렓kK ]u* hίOg*>cJz cZt7/niddGq?i)2P0ZvnQE6HMTC]ݷwuy cT$uSsa\Synt5xa.wJb,)5ʹ͓L6(C͠k 9iߪ_ .xf2ma \dx'r8Y2_e+.UUV@q3;  𙸺XQ"]ӿaY/軶PxdܕEn|&2utp(K5UZhRSʴAn;P9mC0Kɤ-ʮ`XRꄼfCd,5yXѤKUpxU)gOQbF/Q\,xGL աGFͅv_W-Ŏ;ua)۪.]Џ;]\݉}-eeqH?8{h`qb2B`/:]ͼ|Fu.4d19bHj 2"'ϥ1,ӎ"ě{$IVVÛ:47j"@kE~%-\8|zC%CDжZ>;$ux>E.¾zۥ@AxdK6)kjG#n8<&r O ys)r{p\T6k1bn̉*xل4}ih*ܷ`5|Gq[P#g'*EIeVŸ[#w3(ŃnVuWpGe).1)yc4-6Gm3s&E-O4KB[ň`á4K3ɟȤzI;-m]ݖC[l2ȁAÛcn~-7> zE%Hm`WvRZjFƩRQm/TnpDot npisn5SU>77آ䩹ů5Q|W֬pcKuFLzs/3FIpn7n]#Wo?5.¾cbXWO|#bSٸQ*K:\\ Nң74Pںy ̓,;Tcd @i0- a ȇ`VoIIP"<'֘6t˺%sC%Ql<1[DlRYds}~y"H5W.?̴UkٝU/|mn0M$\b%cJJ[ YXd i,]1~y܆;IRI'p+M/WG&Ki0n' m\`('ARjHiEb&Q]njo;C16{6U[tc JGz\nn')^]faҜ$?'ϧ\j|IS|A݂l\dDfK9%@xTaDa^*c쟝Ʒ&ODۅJdһM(9o0 hoOs<B-ۘ:nwS&ZmSLX4hNA뚊CTz0G_O,[䚄I)Q8l]oQ~xҭdb9a*4o6.\V~nf?8  J Øz8wy."*uHhrbw4l l(. ]C#bmwh١c,%/Cxs㫐5?W+x8$krUjy- lp̪!hǴoiLm?Virqˋҟ*7[s&oK ;̲Com,dK)R?s$0ס<Nc{V,Oy"1aN\]^"aa3>FXy{_Y:ƘlE ˸* 6$8D c OY͏FnSѣR3a] J@Scx Uϳ c =hL^-MFM#[S~ťEұY6߅Tq/spa`4J8*ʡhJT6軤(/PFxNll ] O? ުܙZ$S;>SvPU>hWPBt=an{%=N8Jer֣bի͠P[9N'݃5縸#ȊE@fMI(C7PƜՓR_K]/Sj)l_"Jya`Vh(?;\Π{9w3djzbɯog7zA-rf#ݐcP7W*N յ1Φd)9oaeVnz`U+ 7X ;ro(=N"!1pwpyg(f6 Ҩx>,jvu#C* V8h1w*h]%V@-Y#U)GAn«|T,'Rc*c}$w ):,{Ȁ_V]t𖸜6OW(:˽Pg>"b阳 [ӓ|XXpetu?H`7h%"PmSbI/i̡~k:'}Qr ڔ<}A: ('wc( \wڽ!D&wa9|1ׇ,@Ãeu,1LQ͛g!63JsX5-2%YRgph }QCLjջJߪg I@ Q8rӾ֙<ֱj qyS!̲p}˪FN<1?"H}2v7V8XA(0sLN 6 ޭmTk7잡 *TOĿ$ܾ]G+ Wmsm6J>{rwړPyf\8MľmCFj̭8S@NzPɭ}u ! ^Ȁ:ѿu2ڻ17f#i5;x'o.Ʌѧ񱥙,YxS13n{!ܨ{%VtIR|v CSJT\0%͠9h 6檢 /K$[#Kus4e p=<^S"ݔnCݖ bTԴ埬R ^MR§1[`. ʞ}0`d'5#*U9NP K3_=o80['c)) rJ6e94q=?\9SzWh$Pf& n$!P.?猔XM=aZݒˌ>cH qԙ]~m,_BO:V' 7b] r6VrRmK8tY?h/&^"w”#WTjk|maY27){AU E+Oil#[Pz|1^+* &Uୡ J=HءfAZeȩ^Rؽve*>S܋Q*r(hJq.؀d5C$E?_FH{aT,ūMU|/L*IgAJ (DlX=-"9=۪ѠT$n7Sr1v[F3œCnВ/=1AQ=8Z I|{OIW5m7E<=*,E2\<*@MGL{5 =Q4;45ĸ1:!E掱ػ"ļEbh' /$s *\YߏqV'׎ ku[v+&SֆS\o5~D]\I SGg4wBD~/U腣)eUBM/gۋ_:o89J1zfK PlxQ^:mmseXf8h>EϦ=tdQmڄ czOHNkνL"SfZ3R;?XIE`G 2*~9$TʕC:b֫'." rx ;W%__ 4Lը9^h9}0m".TU~] s .O1ND{i?b=,S_95âS{ʋ s7d4'yVɟ".8Kʯ`n㕲A`aN/R_v8wBqسj֏' 1o2A!%!哐EQb[W ٽTfXJ9',]FH{,3; \wz4~ y(nsyǐiߓ(s=|&i]Mo&~ Т3O"c1&ڴ(u )I;[_`=;[DtWno(OLO0uۑd)vQWUK{h[{EpوdQ2G?{Ҋ$r *+ĦCCL"q꽼ĝKԿζ6v^%nLpOO zjw+"1/cy$G^](e^ub+3Yֶ9З ۬eڮ@(bh<{ D嵠YN;޳o-/ CB\4zřZ vL!yM.PcᏇX52 8pq1 {'s8:_:E ZPST4e(zYb| zc?xWĤT|:^lJ"`=Kj7 M1(V^w"sa4mGVlBONY {ӒN.}"&0+LS0N ACoIL&ER)Qrt`bg+v\'hiڽ$a]{%Ay ʈ?ok'!{0L8(bfV \Pv/Ory{#k\?ᵃW$x=c@0`8E7^>YS˗رX#Xi I7~Еĉ%b?6,!}C=`J^ZQB3:͆qZc^x6Psu5%7lSZv.iYMv\Z`V;Xd!|olE#L踕ۈpQ䵡8zzXNH]1,lwf'7pi[1= .-yiRHT<9jkEP5 -AoD$/# =9U2<Ḡ^7X #gJݧPjgQDdɉئX f'x֨FcT W(Gd`킰!81CYބ+ilt}4$*ol\e_h,T.#Dw3?aVK=xNɠ"%FNjjGN|ı_j Pu&]ՅэM(ORa X_12U,&UuH@5 7 =vzC1:EO"K]lNF.CZ9U} zBb~3~ӟwvV]LoxK$K{j2ij Yw芁i=ta4r_G\I-&(ѭhRE1S˺pTm(Pje8/X:6_ijܭڑ;(,\:wؽЏmW5>G8*aڙ|L{5qfCذHT{5nU,Sm]vcl!г =+w,6(No5 01z~mZ NpÝ@U!ڸAE{C!1ؙ&ͦ F  A%`+ t{ѷ΁~c~ D b:U FNgv?b'z6--%̀Q4܂Ku[+zD|YѳtǶI 7jg mT.gҮaZdTg?81@|t)OIJxuHA7MBH5&`0lCcAEINNw*!lS.Y#ˣw&d_f&`s`c lyrU ">Z-xc㜜|-yݴܚY&"oYJ%J?=Vuiav_##Ct 2 [j"εW4߼?ܤc ӞfݣIK6dh|'F$@,_UnEj*H> /Ll;@45#1Qu~3q7Knِd :].Hne{9/65==teq u whS?[?E -汇jAoiªrWKJoWxЈ+DSS{E7dLuk7kJ@ZȒi*Kq y =M2<_1wX<w#̃fO%dCx[ NN=j6,7B/\}RxZ5Y #02tɷƞ a̬ Vr0W>8\O Mhcwd_I"|(ߠ3:^7}껀7l1⪣tJ $!K\:Q_>=k9^w奠^U{'.N?P#!h35V2Jb|le!xKl7x4Ap敊c39[8t2'7(bm^̥ߔ"YkzӴ$ϯ2l]1KmzmgQXZyL>DI"Gpx$ |j[H}B65ì#6RH-P%V[͢mhX(kļs{nvO Eh߁Uy~W1fG=H.2c+'F`ơ|e&zgKX4ωڷoւtw (ZH?\nIG[YMbF"CcJD|Gk`~ ehwZMHK罽|Bc`_S Xtd0eA8&e jxle_!`$^auB<'>?е9, R%Tcg]k <{[+?ovىb]L∫e}iz_-JBkvӟ >͍X@'mPѠ5yˇd4<ll[dȮ4# Eu]*8#T <|pf,j6nvGp$ /? (Gs]k9,Q7vA'8.+v֕٦&U~hwL[B`Kte}yF,M6#vl|cY?gpxj%D-䂸֎Te]gk^ =AiRZ$lՒ-\՝sS0zp㿯 PYѶKU*2$C/ge2vth0>@l#m-=zE#4]Y>xD<+~QIH- + W?ov͡.~F|0UYɏ萕o∫eߩF$`솸s O((?FcÓ4p {ypސ=1M~,8wqYna\2{^_ π yOOn@7hE@wVx Y%0{H;v$K/WQ%eW׊6/$$칲/mR!yfg^وS/xE_iJt#WHA:`-|؊*(K/}_$(c'?b蘦%#-=M\zM1~D)?`<cgC捪=MmR?Ʋg:%H=?-͸I[*%'CYx͋4~/cDq^]<-KR`V<V9w$;†A۬|*X%#[;^Q#Xq2~,%'`c.^E^sa:RtĚ# z D46xlW"C5c)>1rhāK1 Un6wM-Neh]qhi<~ 9+ >a0._pGd䷼dT1S\e%[exjpM'#S ,~u},_1Ŵ2ZjݩCkE,VMJC=x:]-߇<Y7 ? wL$(d*GgvIq^xh;d8Lj07]Y9n;u#AFWg壁-ߟC7V]PGʲSnEwc7^C\;f@DAoTP#KDʫ%M~HJ,֣&-a$$@y{R(tZbM0}JApto&T)l4sͰ7)"+&V|{txH͛1m3|ކ!!/=pC-OCٓVLoPV_=Q Z14_@fYe @x1I")vFnC9"v1ԙ?{y)L_D&+}e8 6͟xydYmG1 nY:~/A4j6VbUIQ٨ #is- ^"o*6SX#U2!d0y%NJ?_gO MV)S&5/hT+Cntд6o!kRޒdc ͨ`sRLߪ[&HqC+|)D?0tM&uEpec朎( V$ b^[ æ?O7@K<"U 1|Uֈ)W !+#+sH(QwM'TYTQ$;b֧g aO]ljnyn(Y)ز,}Fɡ)e\9b1T&8㪻]W'xל:Ra/->;-> XMaۋhReۿ v.49WMn3((=nLj@1t&8Xl| ! b:0wtbr+֘ m\zIe<''`F,֙l$FqLa&ՃXjlHB i.vmՏp P4I޸y퐭S$_f޿b2+ͱ!f=UkAгZ FL*/;f.Ft+7iS~TFqO,fqh/(QP< !jL8W+Ov/ `w?B):qa!'k#]ٿ?9 8lH?\̵15R W{ φ^hv"O_ tTM v Mi~vYAtY8LMc|~ORf[#e!ݲi((KZx33I LJ$=uyi &Y@3;[lPؑ$$7R)i| !ٻ;AJ6C lxF Ѫ x+ڙwޕ+ŷ|W;20tȭ* zUIt ʶJ ;GbwmDg zҞO?ֱsI:"楏`~n/;{|qmG:s{PƗ$#,pSWG ]80WPkyWĮu{e+ Y6:;BT`֕$~.}`]iGZAV)5PMt]Ag{p4cXX8"fb^1u9q%4FYMxJ[gXJ+͍{[l3zL~F vsI}R-XPqiǜqdh!Qb~DiOp:cH)t%ou#|sh{G0ĪGN1 8SMMV.G <أzUYnkgQWoZ0-}:,,(]c#HHVDu'M%vB]%.c;5h @e:[LxtEpmWTZrctԺkRKt nw;4'- 3[&XU0s+Z~ VT5߽dF I@~Bb8M G,$WEZ-Lf/y!4aNW$ k\rzF`y~>yڴv\]aTz9/td_דEvr-hۏw7T~t*\TIvQ{C'@N 9w} D-Y3k6D$ Cd;V$Fޖ) 4Zl0s52^;.!?|$ &jSfuS<Wc}EWK@`S³h$,E;Ϧ=g/ѵY`hS(# =_ֆI:$J,ykBy*B"i*B)v .M}w j}QaBL@xFLEi6آ3]4dTPKn],~ds [ ^?̹0"q^N:eiT m@f."wx9AsMTGtn4'Q"sh;{;!Ov CJ %o64t @~̪=I!$B1|}.B  R(ڇ*>үr(2B _ 1_V@bpВ'ݖ@H?=ZWV2b,DO^HQ=tBṥ]'aN[u'ȥ#E^ңx gNj5ɲϕ2ƖIqvYןCw](S&.=I\&֡, )Š.P9 -`XޱBpn!!Sm8@Bt:.ūUO]8j 8MU{5AH઱O'#Z1].ը f^AKmwF+? =Ct W%!)X.S4 n>> _XG E|A\YEvA)J2?p4 Ho>E3daRL0[nz}hpX%3ĐrXu54!3!w2I3z.{p66gC ER&K}ad` 职]RZHa?g L 1QnVFoYWva9MOo.9aR k꼊9KaFkۂ?i+w(Tclfx!!> Ls=xY;OR{ +WNn_]Qs%; lT℡@r1Uxc%_&څ*d`u0U䆖PZ^j1$_ G(9&S4 43߁v@.Ìroui+T"{4LnW~jԪK$[Wpm#yz>le5sspk+wH41)ޙ;^Ż^of9OYpDn.=%MY,)hFN}9MaP0JG_UoՖHRk'/uѯG1 ձp@Sʞ9ODĒyHjI' 6?\gML#[= MwY}Gy4-LV<نH l)Tk|of+S-Δ.Բ)."[r޾*EsjiRmZ &Wsx 8n[YGUݞbOneIoD7r|R]˃Ã`Ȫf-"v4v#P3;1CڲN0aWv+4YPe>nՠ:řn8M Sd)ur$nt~E܉s/¦K' {$.|2r;8$<nqsVڒWckR>D1%2 ҬA-wx\E\&Y^mO` odHdbo~711qKRRdm}@V:j"Bnj *$_ 4;=oN6{[z>*ɗ( Y'uO3 hK|Prrc[;{{Qpm65(D츌0uEb\V퐾! 4~(b %"}]#.1 ]> ,# ݵVҖqfC4NxgO..U:x-[\ACEb15;"x`nG~̃r=l^_c-+NNޣpA{*aNԎ]ٮ_Fi#j4Tw߀gjvQ1] in\zR2I8,Ɍ(AoTZ>'FVWړ%/ƃ l.aQK}8W{uXBv$7W_OU BXtP2 1ɸB{j{R 3!{DC<^j'p9Bs6Z"3!=S7_[Q~m`p=c[  y1̋VNƘH}dB37?%>-Cǹy 5t6%qƯ4nMmhbռ*fI.Ua`r~z/5ܚCgT4:uJte)."(w; CkY dZ? @ND}feֽOzq@5_BڂD\HA!)&GJRU5;5eL"ifL` QO`oI*IЅ #o6Oן-/Xф!#B^>MQ)@fx|gl+{c |nV;H*b)(\l&R7 歧&$.H ?jvô}-e??FI)S:B N{+" ſ=GKe]یu7^PML~*8zk F:˖A 6dQ+8IW­Kwcó)4Gw yٯTuL?&~Af<-˩z1f ˻荞mw@kW_頯~AkZx P+yQ]GK=`[CqNG~]Iu$X0Raq6;^Bg{o>G I~S$ 󜇆v.F:>7q MZ{Vd( tj4(2ݍb@8:+j9 ~dPX$Cb~N7_&5R-J_,q?gk9[e\DHOmv$`Ɍ~npQ1#SԼ4x'ݖy4yhxEʑh{Jqa,.F3L.֠ ,o}ϐtžեk"}gLU3g7!ST!fԏ?6I 0]ĥK퀌.clD4jY1ȧӥ,B洠th:_jx]h5>)1= {5Fs=vp覷~2Rp.N? UcO:xL: DaS.>PWf?8֥$̬e&ua u\Nuy k̮&kd2/k-1TMA~q`XY|qap[vax:TVװu+1z%'?ܫ(+9r쿪 (|1QџG`]PF:ވڸ\ J2:a%b.!k8]>\9~4 2ٲxQ~ZnIx`Ufv!|4v-8u۟TbS ]8&$y *W_ΪjlqG[R-VaWwFc:="1: DRQSAА b1dg*Q:y*cLJ.\@{vàV)iM;f8GtZ ش#XK3_C{jp©|b5p~SR=lbU`A Χ~ϥxW?>W?2'I :c@KvO#q&t`rʇ1+О3BQ}&9P˸ L3T;W)vi1%4B2tќ=4Tɋ-CŌVEyqOtF@SL_},tTyR|<޻ѤrpG.pX4DȚZ 1 :),u @pԴ:oFV1nHp)dL@d!BM-<<Ƅ466 P;5DΏ"$Wsb'ŅYX6n'İ#c,%-NGx$TBҢnC i\3DܦFBNz^f95R@]uj<ܕ""̩7`7,x:h],J3‘]AۯtRJt{Vȴ WJ.2!nn`72Vɪ6@գd`)4-?x#^A U} PX.4n9򷿠v0?a=|Fw i.l&61s0.WG8~ 8)}Կ(m(wUrSĔ.OPW]Ǽ'M2噷x!FuUAO<aUe2}L<>2#alqQᄄ y7߻؃Y5 [WC-´TōLYH9J˿#**<א C>gRpk*}fǭ#l/; K}lH /.*^NnO21ā= ͢y8T,E 獺BZҦfuel~m9+Vt!#7|O)D+oR69'U`Gp͖˨j5D\PަR02é-3WR ԩT&\5=6QK.WʂK*;iݻC4_!%ϠjUəj?  :szN#qTb\a#LҲX^.WBId:# ]h;)?qiХ2:tUt!Me VFn!z*V[ 2$|b#SmG~M[c_9'Zido~Q4۬ER Nۀ^Xl7џ:xT,A P.Ɔ+쁯{Oz}ܨ20%M,)Ek;]nG^dt, ZCV-Ya:m3:م7ơHQMs< $xcqVO+jit),2̷b! %VŐaޣk*mVܱ iǶq,ˌ#axbς6`\n^r:' S`,(q2r:leKg'G{Exi Ys>N E|.ʦ4o}$ 4JI=d];DD哜bqE"'Dy% 6B AeG[b<@ܘ} .juZ`YYHFG ?A0npA F @L[*N u^T'9z ?* V82*1I@$O7v"k@Ťf 1ˁ jSzd O )STT%4ll&o.TQ".zkW$gE}o9.DjPjV$N q3aMW«;>XxC,蜼+f$lgShr:HTz.,*n|pA֞ | JLns)$) H @!W8iKŪH&`tHQjc.B2M^=u~ Ev ~iOǹcÇ? hui| r5uYasxhXanĘ0K{'>,@'ǐk e_-f+<Ω{ :xvxd $_.@&D "GW.c|^Rntb͞Y4%cXMEHol sueJ)J&u1갰 GWeH#VLA,WS%@;(/z6Ri ]vRt0dfϻ;5r+x BJ2kp_;F:l8[(BoK\(&(<E-zXexTpt.> R%k/x(q;d ?|Q8-wzLF):ӮF{׬@Y~ŽoX:A WL6;Fs5y|BPLk )cۘoMqؗc)=+bad_WF9`>&KB{~ veBg,~rIR _´r{U/ʇ#far~;xs{у 1B4=Op-2ڹt͕ , 'ڇf@Z]D8~B:y^TbKA܎ 3^EMFܞ04JqcOxWEyBz z $1:ʬ##r"޼*^+Si#rL}NF×.wWpɕb ߅2|8hXԗ A4s*#fW5qzd9pczuB^ߓXϻG\'[L*b{Kdyc??:y]LG%?VD{n~M 4:쐤5~xG@š8gՒX~]R+rMxX;y{[}oPbE{ekF3 Vq>6`U[*Vx_y2PW]@=/3ҝaéRY %,ԝW'GTTG&Ól` U`| ʥR氢S W# [Z'Pm':T7p .>6Z&ܢ,.9MH)] [AmHx޺j5VPhLfw\/.h`ڧERV' mUrnq"XYMd)Qu |GcW El*۝3dlJ1j2XV5"v;ַ}~XDu҃%^W!֔hnqBo#շOtxe.] wSf97x-=moDz:7(#HJ*C$Z[8X 7}EiM@/[TvbjWTRTB>G漈ZM (JbY‘=L>RY45SO_F5zrʳw6KukV zHv`l%be亟x n]p${MUj8kvöT>h/v qw!%]Ǎ'kHgm|j'z*o2/U\FvEVY91|؍WobM*FF{XsJ.IS;W * cYuցx{T@jFnd=|Ck;)c/d@E5M0`W>s Ζ*^By@lJ ٵj4sC-?7i;-苊!2h<_4oКljM"4MCdHJC r_ch4pm˃֬B\ݒ1^"C~yahɿ[TgUX|u İ^;Z( |&^빼COZ,[t5 ]+]#u.ܟ=0>gQ5l vѹجC[NL3't,oM X=KI?!wL(1=p+»`/t|@q>b's@ ~T}8];c`~li_ԒbN trNوZ,n.4K*&)dl՞o Ⱅ#W"+q0n;M j]L51CvkmGI;b$xvôpgyG=)#7Yv]7K"лoy?!y,E$:ePdQ*҃!=y_ QEg4us)OWsL;{R|SDVtd>[M\׻v2e,%B56DНʨ_}j]'ha!2W 9wBQc5Z:AҨarCi7GB?x .#\qA*9Y+9Qj*?\KTi<ي5s*2e~ZKPNNz1zM &kO \˖(zzꄴo$'}3&YY]}Y8r CFS3UQy8;>^W8%u%isQZxaD9Xe=' p{$/#ĘݛP|(n{WCs0 ^")YOp8-46 =:*_fpt h`wOt7S?Eu\;XHfTXR6): ΎW94  q0ų:b“7բY#7 i/]dV[W빘[ 85L1*dz;ꆮE$b-rk:gn*Y f9[rZT1i$;̤5BVsUblbO"?>T$g_0:dח4ՎddDZ>&3C7⨘ ƽu21aq|*$WҬkK}m)Ade5Q QnRȍ``P,{~@D85ʙ;f];H͠T%uմoKgV8)m"DA-SO$ꁶ4CqndZdhpW0G'W`=*Md!HlP!mМ/G`b M|\\t=jOn}#[SIIU4 -Ӊ6˂᮱Tɿdne=G\|JD.A.YpwE41P){2GcȩV0Oia (qc5wcs}V6T(hBP4s (&cꇓY+g'WFG oB*1<Ծ"dGbP쾯!/Ǎ$/ W @/ `o (:%=M JwraFX4iv 7gOxJrCڝӤ,<!MKxtEᒿcylZ7@0?pBz6DNiH@!3KyN}bCT8 F\")Cr@hGBVi5{{6o!d·,+rt:L CB6kba=#]^{D6T5yp4זsAW`ǹFڏKa_8{BQ}j~y:,ΫR&8;Od|3?L*E7I6=ēζi` oz!p-vR4<i!_t^y- aŘZ23~JOV?ӯBt^=?;8g$QPNuO+&,&T˼ T5;b7U0vB]wX'$Еߏ{؍5V *_vZLȋFf8|qk>oKU/h +2m9` xMae=#K0RZo^ޞ\haU0ZYoBF8U*un˥wҙ Z&#׈ ?AJUǸ1+%W$BGXYe5 e)a4A|`ͼ[MȜSQTY/9L cFazP':xrd<-kL5L2%xؑLnby!"1yI<'`&k j`\ːbMZ0?ܺ_* x=`/2{|$:GYz"iRʸ9{Ό-*YXt$89Nq+mS]n{^ s6nXXf -[E&dY9v;t4vAG~ Vۀ]Y"FiuM:μ>/_x}f'yuAcW2a+I&SD~YB+@B0 k3;oujIb+li !$o.a @2n~U"0m,roQ=\ KP:fk\>6П :LԆrThu#;-,Wy(+,Ǒ5}-{ANB+'>5Of|&c^3 ;Sڮw/&J@~] /!e7IyR^_8zehͯ:h&Exҿz ?`"%qʄZsjrȳ|"h[~7«1,SHRUE95Xg鐴P9oMZ&k[n+dOM5= jCNX bY~d^6م+NT$0&9C}/ջ?Ie;}޿i L*&4YKPzG#m(1Qz )R t* b0γ??Cc"Wj~YUzKGpіb*CGe hjޘx}o]rSx즾zgvNb"yPh)&Gdwbrpu5LW"Ϥ4G?w5YHֆiEyI'x5<˸ ϵU]HwƆ &XK/"'wHЍ翁ي/9M9UaC k[bBA2zlyv̷/KuS^pOZaYY m.Q$WƭhԟDSc ߎYL0?P2:-W2Eĩa_xt?/^)E͑)t@CۺʬTy@9uNk` @ 4xΥD@WB-ug۞~U/Z!Rf1+ϼvhSu]OtHD}Dʌ Lz;C.{h'&I7;uUڋ?e}S3gET+ʈs-iHŚwS3v޻@B?RN1X,>3O 6iD)AOǭ'X<D4v nd5uSg>SRw6i4o}-uc)HvifI%*Is(Ic )iD̹V f"VJY)jѕq<> N)qA~JM&#;m<:Fә7V |)sV`(P7?1X~].ժ6@<:*ߍ=xZO3M(D@Q*Jso22%EtRiVJdk6R`L0CJX!(zRI5?f| J-0dXo'C۵&.X yWV:3-+p'q}JL7<'#؍v`+x+h;A{)LJ}\D#IP׸\I0gjlG7t%/ k=?Lr'212e‰L8U;u kiF F&)*Y=fR3 Y!۪ӭBX<+{j:EPOٕwE3"PW\ĥw "l~ x]RGseQ ,h/SFSpyP؆6[͟S\qz[s߉e*kJIQ l)=* 1F"ci?p+"/-I1\l]n#hp\5 nIużK/L7+_dO;WI"@jy |V_IrH3S $_4n94L3 $l72*e; ra)]ZQPѥALȋT0}Ų"[)_lV&c"D1L2fR=Il:f*vpCM"c4 ڡ,* W>dvP4j;w!Jt TKXO) > _+A ŌZG}zNDkNjXyF5] ĖA &y,lr FMM;T:{3J\F{ټ]#ȌIw`Qw^h*fi%7%lmj5l]rQCč'WZQKfe9b,Efʮ;7gcaζ1aRxY@Q[@Gbfvh^TFLxRq 4ݯ*bM}SRQG%nPN1H7זEOn[tj̻ ~/QDύ<:?o/Z+c|. i[-HI<^+ړ$e4z}UI|*vT1Ipd}#?pbxOkYJONn+}̒è~֒8{!g-eb-w!͍ ==(5 mxD;d겓lYa{m$G/jɅ?ɐ`>?֯cl_,Hy)۫sM 1}gO)l4o3x]xGPMn</2?O(DzE+r`$\vW ʳ]W~AT.Xx B3hĵPK|:sg[&$X_i \UʎX~Q_oK(6 w҉R-[!}q>,P\vsP7DΘU~wq15_[m^Hq&N6ɸ-nya=R t؍D.K*H)8:$?I`y:( UJĚ 5]f&-0]Vf|-W4EGlr=RD֝PDfKφ!dV=.{|+|#ޔL[EaWy 3w[[/(gev)!sR@ASmw,D';Z'֓`MW__:ZC u]:um돮չmQ8~JZ@ &NCG~&ɿavQ__TGLM: R%Z۟r"1D ";wP:Iݳ9zOc0ʝJĂP{6Xel;QHl\=㜄Y8 U fĜXF>,'91k4JAx^F3uKp^'/V:}T& #m#J팳f.bѡd!?i *SЇvas;"fm(؂)芾3-E&dIQa c o&W/5"3 {hS_u>J=/@s#]ݿhUaqYF=W4iZ A+ișnQ/bc[O&]m)+"c  r sМHXFq:=UYqf> ̪o3tN)C!Ōznsŕz"$F@P?T\Tg ѣꅧPd`s`;z^!#  "8ˁH!7 +}(w^B%͸quPM< 2ćd>caXcKMm\tD&YT_؍NL\?W]='5>/o '7 ui^,FeJFsd+zVDY5Cـeɍ #.Af ÃJrtuj$Q1H=vSƇ-ԓD /;NQI,x|tK#5T'r9 i عk ǒ!v?l3mZ!{õ k`*E;XVyFqaP^D:Y,D2&!N<,seƗġI∕2qV FN Cn>k=7>Pݤ(#igbN$۷LP**X f7z%B30eKAG ori%t¥nۮ`ɴOHeDD"&LĊM;_OUc\I's_gn~oQPrz/e(MӁB o =]XssOKeJ!4jʥ>͢d%K9ejdKh̰ѧc3XZYiRALs| \% zV`N7Avx5zT$&L(29H.3d2Q7|e< WQK *`d!tUЪxlziz참B<;³t9pBWL>A1j=Ey,z(NtyD 'a O:NhUyC,?k:X`\E瑅`X$.3igqZ=1 t[O,yuZ%K#G';l6^xiV ȸb+͎XJz6zR;(Kiln莮Kt/e]cnYxg/@XEҺAqm!ƟITc03چײ4FRuv$`QZ//*[dxV](VE5 ,dH|@셱Џ,/C w"bOz976l]w:yz3`ꈠO+i%"_4>}g_ȗ]9G?Z5p-$a.vŴR'֡ؼ+c\߱j~ї[Fa٧p/AϞx1KjF7#i#_/6c$Q[B{Yg&c@n=aͰV)#I0 FSF T52ߪR#='w']pDАćm0=olzɊthQ1 G/[/iݍ:^6\e/<MCHG*t CK zLZᖗ \GnD~m~FG7BWRfi Eöi^ǁB0)?['D2B#؈ vwĭ4mV 5qVqcj4aXSEQKOwR랶s0!nB՞FtG?4rLY'ynONu^ztAWń1.GQKD!҈mj-HF^OUJƎv4./LAy/9Ǭ7[[ɵAL##[8:lA4Z)I[-GxilFؒ7 !EZ| vn`rtF !'~")B*D9 ]?u7"ngV`=*Tj%j=҇IHz[3"Ike#\@upcSBL9>Lqc2nxu^Y(awz$̐)y!cdG((O']X"f@5X%PWW M D` „Vcl<\Ţ'1[x2IvfHe7N&\"Ev3n ®Uv - a]+0hm{/  Ŕ=/8_ *d_~!KPoe8 @7:o7l;Vb̹ĉ/mB75}&Va]dꊻ4n( ?}QuLz@FwjT2K` *vgLj *) ?ӳy@p+W`!?8RxmD<` gJHì5qV=C_?cCj[Xݜ«/B čb,I_(zXhe\л%cUoxd)?$\iDdfS KƍRVD}N>,zYCj10I5L==?M-9UK?(kWԧqdv3F:C 0 ] sV-CoP7]m߲6{!'h0לuam;+B?mq8EpPAR9.$-5]{S,~n| R(aVdILga> ξrh~CDL9ēv.*~MjI eiQD1TԊ3KߜqS0˵qgxӬ,Nasз˂rSϩIsכ B'l X*>~79ɏ[[ gڽNFzDԀP,+~ TG,-qT.9KnLuS,H눕K@2 aq(,/npuY ѽ"HqW.V!6(z m3-s5e! {ӏPi\M cԃU&&* P@f 3 K;ራ|&*=SN>4}l/{z²6!tlWRC 2^u]*(51P2yؖ.TL{曙~ʙVH۸ZfU2Wt;Mߟ/q7P#{.1-QJSCWcGAe숒0lOU͑;1J T\s kY,oTϒ6aUфC' Zd>=b D,| [Q0l-<CRzq{Ⱥhpp`ۏ9?n!0EWꬎAž!_ Oi=lVaRFѥoBy'y)}ƍa o!-H滭mT6b3?|V1wxMe\N7~ 쳞࢛ъ¬#0&2h VYp-TЧĝiTLj5-ܖp&kCps9<̆ 7j &PZpޱQ5^w ^Jϼ@t (޴s) `]"`2\^Jע+#1SzNoe _qp"^XaA3"e^5!c}FDJbq=u!Z5 &d_n;KhmHѓ];i>e yX][`4=hS2q¿nb(od ,}.ۯز*aw,Kb7"w6 }h#dOӋ?B*P9boD7[D{^7i͖xVYK1o)?V&pщES_hn$\ܒTDpa.Oδm!W#Zi._mCYĿpPOlqns`F{1ƍpV]|9zl!;iSUXt)"-PP8J)֯#<<䤍)J1Qzp{ 3JD6@rV'Dcx ;8kG ͍dcbD(P-@%rq8{SέވE_̉vN/vVr/ EQcw4c%/L$"?RQBIm|Uz;'ʝRɶn)98l/Ͽl.퍶6bV%&0G1`X#0?UP~glΠD[z>i8%BK d}~AV,|TMSX2US'3;Cy Id p@Wj4\l,EぺzGRk8UW%(#8q6& yN*/7RJ.zJ Gk:5݂3}&Qv7lx"{}[7s7^v_45A|JVWqKWwzƱ28A*Oo@ISzas h_Af>עXf"PA&/Ij>]1 W(/ ƃ,?"[d̏ňyJyY%ffFc(sB7q|-b~:ӓ,ZB7vh%-xx(ޮoor[Y•2yer/=m<[I 5 E΋hS)GfL^`?fZm>K126ja 92VZM -\`3zeΔS$2f>5 R-aDn!wnN#lǻ1EAhl%(#htx j|)|܊ M dvn̴mq>{2,P8w$m ?"S{0Y VmCO2P(R аb>U&@~w2`4YcǦJ;tk(ٛP؋{YCV)tKjZQ#Wpٗ$9s$Y+Yj7^ TRkeJBK6!-[_nM:3Կ1x.P'vCKɃs hFNOt"p37&}єhr=G֖([s 530Ǐ""eOBH:955x`Z5M>]LhG aR>%dt FMRRصTfWj"| p{*<AAu^/CdHunkEaUjzp &$!\E}E铭)/qIM%[XJZ™*d( `f)E6j }?QjSf?¿Vѷ.ZZ03mІ|KXHCW'H<^.- wxt)1dg/ٜoFj>JMzϼ=t4C(]ЀgEoҒ4<5DZ(Y@ݜXRI Uu&ZٺL[OuR ۽@5ΖOC>(!Xm%Ib rhWxx'zWrn.Yfx6ӗ_Ut]<#&[֟Le[b@QI.\{POWfC1~\SM{Ó|ېwzV1d\"n"n~D["u7\9/]ڠf=OڄBH]bZ9Ļ{XklkRyU*OG@jY=v6 EW߆"fbZVfT{kT,ez8 I7czR;]7rݎ;OYrnHm>ΪGp'a#Lk 3 o}`4h).;;)*Vbz!}q4 K6Vv8ZuRG'q-OQr^ V͎0 L 8d1=DkT)#cRf9~fd|$mmPD6KvqK`_`mFTXRnHĆ(N놿#F{ Cn3) {g{6AE4 |Ez鞷BpmjV}?EFF?;9"DGH\V?bRŊ[cD8GM oS ^|bArl-{%*AO:7vEM>Vrџ`b2esl225x7 =xcjRu[/2w\mLM"rch'#~LTizH9iBV2pQ5J 26p:4Eɤ*:PNc1+m^SWel=rHwYM_:0, Ua i[]9d`#~! ?Ɠe2:dt- ]w.pOYIE7o)6|̤԰Km(׻ Yp!,6(ԸrZTJuPүo?hsː UzιY@y9,:pH4lu>+2Gyٲ<PE "*w}c'Sg /i6 }̩ۊO91y: 9D30kTĞ:?>1ᕌb}`o:0?6ň,ηY pdᶟmmߵl^&pj=*uY ֧H&oԯ܈C{ɴcNq35!1o^?f҅70ఝpP[ tútJvE9CY\],_o7F!|A&F7Z-L;l'H:~ L^7SF%]-272 ( hZ>-mF(&|v AFZMuD8GtV4j50ɓZJ*MY ?%ٿyo:R`[Wk]Ni,5 #T6ԑEuup5Ve{(8۴UtF>q,)|U'_y/4h.6cFJ3*gWbz;e5y.(ِU? /HLp%zOx-TÎY'l[տs%S!pi/J. FNc+ah8D8JcHjK;mbLͤ*$ bB'_4~(5(Cm}SK>m&cgతYpf:s>.QhOя1gOK.ӦM"KY߫D^r[t\7"/"cGSk+\9? [v'nfUuFKG֩yV MZG.YHǐN_ . cbS9TY D{g$ +l\#pF"aHJ h"+InwI}Ό$w>]i% 3"#씌G)ǒ^~7Wjwb٤duzY^gƢESB‡4ʲS¥8jCœA[I?u ,LR#7Fߠ=2^{/SX?p+vvA>K< vufîJI`_l t%*N3j}B8>0L?[ӚkOj=$[Ou:2Ѹ 1~4_+JT2liB"Ш:  K@PPN+rXDSV:i0H=~:搒\sA~q*@hF- G9-+,[nxdЭ]$ZVeP^7pt]h(L|$vKV;Gh ceC e$y]Ʒ* HqKpV+ʁ]%{w".b͊1H6u/ g9K?yjx++ѧ@N6hJ|zj#:9C3ySˮ-fc%s=cX/+P4$%5_Ti d{ng9 0ఄ.p=1͵7tʪ17jg̸.?xE)sfU%[a/식:hl9awȆH&~`co Fr5qc0Wwe(⿮]KR$JYbղؙ.-/Qdr7=vkD:f*'~O|Cad2G&i&Rm9uV#/WJIh>a'Vd|D?'ƠnP{؝-\qՠx &L謁\ -G@<bX~ػ< =ݳa/>o"P˅H"9Yײ l ;` Ʃ0qMcA7T߉>T'Xõ]RrYa!e-$רm y!{_:R @WdhUO(P/I̚z7R 3o ;4;9h%2}V/Naд*MӡHը: P|rRyI$Xh8 ,܃ H ּ˦cRY32np\;T]2ml&#qwS69h>XAx${a:%fŒV8 ;m;I^JZevKNd0NJ,['Y :P[M>Vs'C7'bUx],MF Fv٥1R9QqY-}[ ad~x2 s@6RndxO^7Hhr9X5P'yo Nąa%,^T!:%YụE"@j$Oaa|(\k)xZ3 WbJ`%~Ut_j}4LlQx<+-ʸ\`T?|Ql\`\Nd*32&!উ}>⒞2b:(i[bEjOK :|f[1^T.^82}|=A%Ѫ%A7frZ;荑BZ85Wlࡖz)Nj<:t>@pH{+b*g`{}6BjGt( =AC$|"6qi^^Xɥ=7FFsJE[GMYt1CsKf\gyAOqSjۏw2/fLsYI$/2M&j> 72M9 ܥEpl|pW)uA!Є@.Rxw@Kt}9ʲ51%%b YE:)<5e7b'RVIȳ:AG6$̊*̪d*Z@ѽ)$Ĝ?g-C+1`2 w?w?Kw#YJHҁe$spc|BG;"˲%)Utߨ{1A;DsB!z .,C5Նöoh˹{ +"ɪveDž}0:({L!WtXQO==uemGxy=N\%W=`t8V{tM%@uo"B~h {%68}B4%4|go!uZh'\WȵEVk9h0ě9+i4輅ۭfs)l3Fj›}ooʹ]蚿u^k^S|T2`u[lqfqO/ ut,&r`[(4k cYHlEf79"w00TbV#wyyp[7w@ܬ~h~,#_/73gҼ1)% F9QHS,4u;L{Ȣ n|; |1u>W-<by q}4޴rɓ 1K3&vJl|f$!Qq 1?cIcpimk7rnM>m]A̬rG|aM ^柞+Q!Tlbi6ϐW2X.y[I0jÒ+.V6E!KBk"WB;=#G>%1qr@n.yZ7@|JJ# mSl R<K昛 d4X|/o9BHvdtmXO] dU  _).ܝGQe8C ڃRvm- 0ɚ^Gr"mBX25]sB b67"Zk}o|j<̖cTr^ b&e3S0Xksblr̵1l4Kހ]'XwtDI|?u02S#6QeF e&E9/=Y;;29*>46W|Z[ۄ,iH.^0 @k)yyK^,j\|K"?/9D_JwyGWk e//n45AnNìt{q[*ji00RV uGTN,䢌( O\H#L 1;#6J~،PAPi3hTѽQ̎\nvM~_=y#6#R.s%ĵ( =cg hUqKU&PGB^{N{3"?&Com%XVHx͐ f%ZYyyZ(%ޢ`,3%tƧGtP+jgѸꆚ_YKxTƨ L^vkQ4ŵ;׭N!3|1"G=UPK{ہNn#T6SD˂BqF_ۅH D)oݨH@ ov\Ѝ6qu\^qzC+ܺ{bXС\L5/ߝnWa.>+ qAcp{6{%4Su_^18p#wQdr >gZ.NmI1NtDr!) &)5pIR { nDfF2N\4$)Qe;ZxqɌܗɞ%UGT^u禲 ` x{~<53gcj#jPWږHuAO|i∝|uXVh gIGYUOѿi'#Epjd&XKZp}0^!P 8Q/%67Hॻ:X :a"q#$V|H  ǹp(m;WV&Bc(<ڛ”غ9p=R _[/(uŷZUҁ[mQ~_<°Ʒ'Mͅ=Y 9(Gj3#`V߲"м׌*>*^Hz/ F)_GH΋5J* Đeu>6:2r%-T }3bW"f̖KGg "U4W4l捯Hڜz(___zFguB!DcwJi/h#k#y鰰v&mc-b1m!+a;EA; WKJXh-䅅 [D jQ2T}J^nY3wY`o3; .֚K}SgD$qОfw e%UL\3gM§!Y2msP2FZmuVZk\WQj_z!cHfY?U+P%$Ie`on.xJeᡜ;i>2@S-̓h ~{kZ6@\μ]>l.E\2\0˲ #i4Or!A˩f2ZNJt55mAaDUWh]܂VY0HMM.ui|*5Y.`h~;}V0WihŽC8-ݔ H$TJVf0̴.W,vd2m$)~a,g~Z|Fn%kdC!P+F`6o՘OP[=ǹ5k=:vkj<9u)>Q8(:,勇3ץY'~p-2y=3uL }C1jH0*CqU.I( JP9BHGYsDR)(<~ŌgO(O91u㍰>A K1l ĩ?iJ4: FLk'[qsTah<legOȫ Lk&u`,@91c]%"Z?x@?pկ %f."Yo]HC%=[IuI@=d& xс 0Pz<LOt#~{h UM{.@ <=mZa(WUv/+Ыv+dCwj |EqȖ0MΒx>,c[2y6gф]";AlKu1RCL 9 0]J6#~J! `!Mwb-i0'c r;Np4Igp8D {V7ÝvAkkttX$K9\ʋ&e n?eOQ/oBg^'S⹑〱Ccu u1)X@gD:qll^WcRI^"Pey=tnŏoG,ꏪl_- M+=OhOtF:+]P rx߉Hl{`cWfh YNn}]')xn\^ %@Dq7 rit&-DBq2:ؙ]i0Ѕ_,O>Q? \RMsg%m#T*}ZJD~ܾ}'5 NovG2c'u#G00`N7qfPDReU}DINs5^+h5bNU ?& YϘaE}~J&pNv)Naoh2kO6Be+2hoItDP<,S wCS;W|Xon[lV`9-CZZ2Kݻ/Qtq]Sn/(2Jd#WDx2 wطh+Q0qd9u kR`yxzp9AdZ"Д)D#g"w@p"[{lEk׺-%;lkAlcuHӅ>w6_{ daXwB?/ $ZSD꾷 :,!'rzSoK'XVsŪ|~:Pܘm  ! OfrBi6!rց b\kתf+~ُ֟G0+N}<L(X??²3 \;=լ04@nhx(BGN&ђQ) 7xR`ÎyԵgl b̮X\n4|sV=Hy9y&~~ dϱ&ʈ0q !ZunJ}m;Z]J/$; &>| k`D,짓-p~orM `=I:vdQmnx$\Em r; ֟+a;D[+.CzOIV#ijpKS 0'wpL{^} FfӚwbi2\!P3(2O 콲^1bٞe^̳5#8+|^"pG`>p^9΁Yk8<$X ܍:Ɇi+0 CD5eV*xR3jOЫ-]>B}?|!hj>H UwYJEN@hykjѳ2%qqyk}2>g;" Myy>/Ch|wc$gpfӿ Gw/zjξRp?(U~o4PA=2Z$?_msq&0?M6S4Ł=GvO%2eX̀')"hu48:ɈjoSR&nL,8 vG(7AX7ʊN A&ZC(ڬFݳ Vm3#w>VBeyfH&Іlho03FdC&(? 9!`So7u;byzͰd߽?"j6kM!uN;^bđNƔ% 6ʚ,iylU^#0cz`)=ޣl4X-QElgJ|A>AdBn:D8I*nutxjj9N?X*wS`6Ma9#Y=-W#l:C?2Φd-֒[x٩w5>I FS<l4E"->B ab\GfEPAti"m-&} +*zR- ҆3X8G(lD1l2tu!SR$V=T#PjD`;bW?*1sɊLU]+_*gsW\V:PM*wWm 5NIN.J'B"rhGؠ[>gd 8lDy$%,&c[d]ٞhB+/,tϷo{/fsx?`UaL3 3K{ϻs8>op_Le6d ZRS"E_U`i?b%xьjg:}qː:G7"%#Q|޶×F]hx)fU5h٦4VF+YpzyK?]:: 'jOi6kDj]aؔ3ẍNuIr0y|Kln4!rS=[BM܆Eϴ2hSP +6-1J nN>,ʳB'NNcQt0狑>4|nBN5rT8 _̣ $ ՗9"[^w[EU\Q=fYa#v [M"w .@j+ȲRO ITesx~@&'m9=g"Qw BLg-Tu|ˁ80}v dx8`VO =Kpӄs%OrlWyzp?+Cap[/;v/  %%$CLqi^1ƻp%ݺIR8؜ WyԊ#ZӨC V+BHFꦰ'o$!adJwׯ4l~=)~JXB nLǙAg$iw:ޣ݂~n^*.?Li43۳$eTuB ! WzH%j6ct9픃6̲ۤr<6L fΜpN&*.kۢ:a'! d٦'6'ɼ`ōZM տƍld`IBD-Wx*|l7/,vH@=\/!8WOV["fS2dÞ;ʪSYv?~a r NBku`ΣM{Y"c-Wo \35S8'm+j>V /HO'gޣrr@pAa(D/vqEblW,KVkߦ'_ [? }cx:Kbݼ? FXYo&X /Gc "]$Q&L~]Nͨ!:_+?Y( PD 4΍| [7`].RZ#b70:H#TD )KBwccT=HIO`FLj9Mu3aN? O 0^9 bcYJ4>H+9HXDDkˊэ1oQ\L퟽$vz)9KiIkZ{퀕 vS0ia,c%KҚy%F1^GI62Lzʥ`.Dti̒.T&VqXUyuM 8/,ggՁa؃"^U| a@Xd]nٗ8x_Ma-U _ؤk%joKFm6ҨePfV dRrm!=:zvtz^GZ-ڂ&0F#@;Uj|gi%Z{e0Լ}qKSd2SƗCZ{N ḄZml5@Bg<=2롒둸JSҬ^pl[p8[-HheqN+i~j׉PLl$lA>3&!3+ 6)wuj%ݍcق,Wn-1"3^9p^'vu~g:$1(2lTq{[٘2*O+߳L~QԬƏ!S>4~ZD7چxНa7R 4N1!ܦ.5RDcv-$:$!@&s6aWT9Oo\ +W0˸_cim!EX0W{[z^İ|!ۧ-TrJxo`* 2Ashv ^d IIL?6 ME'h!q +Cav>(3iPoP*4nC/C֍?iI\'"h$R}Ѷf3U/&6^]Yp-BmͥkH?蘂C=ൖD7vԋ&JaϞi2~^͗&=zʈB3M"lIagz)-P#s./()/;*ji'M TXXC nd4~ӰB 0͇2;nw)H!SE ̩an_ə l^ɽÚw!3Ú{ZC#8Idnίs\JR)]FEz?v}쌊Kf6ѦCw+<1"`ر19 X_:1H ]O䰤/u+lx(I}9 tHĈ.29Y bí%Mh;/ ;8Rώuk{ l2$v ;;q$ƃ-CZ>wQd]I륋h"@_;rCVEcUl;maRph..*ɑoE^t@ӡ/Jn3(A Oyvg xwӉUEӺ=?lO/*@ۭBZEI?\9b(͝X(`ϭF ٫?dڰIha.J~RLlJ !&FHCGGAeIU[9T (\?}F<-3*Yٰo)ӵ]\:#ܝC]\6AwX#2 kc@8"*96kRS @8W`3\pH_(K0#+OնurڨON(wI%N zk57 ۰\JdJ^#m)7 "$`y؊6 I 4.L/1D0a$N4o.+I޴.*u&rY x*`xٕs qd%NgM{}C|yN 1m >i_Nf |y}\T;f֙1 *ȄHrd֓^MF1[xWⰧ}2Vڨ+ʹn=_gR}UCp7&ܫ'_nF%6eztMت_pNr?fEz%+nA7Ҝm<|FC/MUR!*hTeK^Ug܀ŷ5$7=),Lx`7TRr\>5>pCGҋw F DM2/@93h ?=6]co@eE͊iGj ٌFOհo'rJ=#*@م}aEωjRװeضQ^/ūO,Ny)FOu>c$7eKq$dǠpA^Zl0$CPa]p䅾۔4ڥe7D kYWxCVN'ncW96HWK%µ Jj\bQ0 R8ɘu :/q)p_W] j;$ebͬ\K 93^6;םgfN"S h8Le#ϪȲOM0Kxpކ;A!8fV]>>[jsMJ=J%ܫ3:nAB19 3r,XQgaG`m\[Мlg Dܬ;2n:2 5ⴗ.Da:G0 ws.)#3v̱[: ^u07]ĝCs.JRl\=?>F;njR]+J9* i:i1Pb\Ng!tԡ*SV)gÇ貴 kd0my8&nctsoX !qءC'%TQ6ރUщ>Qó_b 2 s кUgA[+ϲ񉚔AQW﨣ꙃ$qn73A:ludJg/VW?Z^8(ʂZʺ--o^~.)>" @8*8w?ygtԭvhdh32ى ¸D#Qw ȅR)&YSVtmzU0\h 65g{4ϰ䦺KZxp 9[>6I9Nlldh*s SȶaWj608c~$HilZeF81˯nhߍ5'{m4k6[ S;l>A'msa6ĀD)SiJi+>$#2kƁf z !YrGA$oԾX4V%eFLYHv65HysLRw\dރ}{$t ZKiLYP|7] ͯ́.JPgNOA )]x8,;|=3 >\r4/i43cj4^Ri9WGƌ ކDOk={:g$ŠsG[lA^:drqR5w2+* }*mI#Av{mj܈}D"c0ұj{EX> }D-1 聉pD)٬y  KN) ~L";UH>ܯ)K$# LT)чd^*{~Bzj.@[7?+>eE`gLR}9E,Ɲyխ$QhLҰYOS{Иp“t@ǟݏQ>)-f.no鋤k$s)a$xz ts k'~ ?X X2X$='\)qf Xl0׌we9sŐ,ݚG 7 k .;9;wv*) Owv"S T=SMQ,r_φ:HL9ev`f:HauIFUg1ȢrG1};I$'0zA^u':=}NU8wH}wzjD=S8 92ԍ!0X[U̠&zut|DyGʩ?LHuLl^roJwxڗwW wbR:D MOQp)NP'k0[kafim<6jЉ hi͹Tk2Zcb=#c4cBrA0D4}p{}a捆KxM-Ua[ĽyOpʈ2 *]\h1=DהP?Z}{ePkkܩӤR#6֋vrծ`$\o/z}݊^ЗIݡ~97$gikOW1 |ӘhE{圔݂ *\Cŷ|I{CVL.cYPIHfiX s<ΒQW5ƁV` <gAJ]CmV@V۩8n-6sF:REӯ]=4f g߭S{g3zLSiM*Q<芷f1zZ-{M_ȴBCi_ m!qLJ .~9CK/V^`~Jfi $m߱8*~j>g]򐈑i%zJCg'w[<9mC,WJe]ŴkbESvɒr*G2/ %.4goI /_{s1ta:hW@c:Uktpô"@Yg d JwGRHXk!#!%"$gA]`\%a|̯۷3k%%6r?ն̖q6[ia| $f%Eb+st; G,XQLS!_8)ᦊ4.& a<|)y j{򵊇!l1{!0L:u)@`A~;2@̏|:e1_JfJQ~ΣV0>cX9H2G bAyg6[#hʙwdڒvX>q/ wlu呁^4{ަ)â*TQV_fÊ;Ns,v*Ad8`I7xUp~> gNBzngbD_pj)CC@9+ ⇀`ŗ(; @oUd½t_X>u6_/c[\$ YD[l"?T#%'RѹY %/߅d|у1k ?]u.u .s(j䀧 <9q}S eOjMAyrq#]ͷ6Mv,O'7[|Ta.k6~(9ae˓0g@*R'n_̋ƴF d cܥ\``Zf(U ]{c@,Y C kQ~'!G++#Y'o!5s~9c/k7MPJ^~D5^Ii1򂘚A!VӂEp3p}(CǪ].fR4uFx &5)_A( n@#吣**dF|erBwDgQAbQY-!64Xm yɖC,_|D@myAR @`yȟh5٘E>5<59 L oX?HC1*Z4T@@-1x\DAVyZ鲎rgTqcbfkJsJRPi^F 0tNjM>OdӴDFvO⸝RH-}xEC8$b);jX;7h"F65}$ 8B(|HA|j_F=\VSWCau*H?/pdh>#Yj(@jQƁ 9Չ3 Wq: !W`9cyR`{%TTV>*6 X>ޥdJr(>6؎${>*''oEgth# O\qt>*yv:QʽÑr]^ rr@IgjJp^8T#t ? p>k'y׎`@j):Ɯ2 xzDڹ,ry!58I#cxzks v[$Ia fAw'tp ÝrkG’Dh: Kh2s%A͈"[2u) F^E?G;4w+8Ľnjge^#~`} លkrb%hfRhv;Hr)LAĒ p̩p n˖|oV&4gG3/$BܵZBθ:I/N5S& 郢U~A$])+i6Qkf?*ݍܒt.y>%6MN \H|1!{ ե)"Nd]y@5zm^8B%kzF7kD7> iăz~oهLh2Rtwt&Aj6XNH GRs7z=!-]$q)9OU=^'Ȏ , >z/.rxt:.#o,@(5#.6TO12 J | ]O d.NvT/YcT_b\l@ g77s9 +Ib@ ! }]O]8n:,we& d~G: z0 }Ҁ׮: ũFxı}_A)ؓmo↧^c/N<+vNdfYYtk]Tj?H{qq߉ϬCHwUo_?gD 9{,}Z;xW**V E 䯳`^ `;^l0nAs#MЭ1Cﻈ4\6 o=zvq{ш-Ix*XˑNrfjeJ~NrSW,?3 (%N[({AB\W ʼn~-^d *%Vr'X3͊x$&%SuU!UXNur Zeu!a,qj:5>[Drqww!*Aw)~(9Ak>|D*1QQXPwok7[# j\䄫5>B7;}W:NϴSPhuK)ͮa#&Vg.2kwW S|`P#qTX[v x^?çjS9$h, )*p XrĶ-g4A$hE:Y/5Ϛv\B{<Iٔ=]׃ǘb6wV gy BFo9 Y_MH)NLd5/˗cW5ɶ`z}懲3Bh{M sx/%Al1F|eNJ;l"gYe$&{ڎQWk ~a@Nԫ>sv1}'zvPz8䎇@,9!85%b\8VndpXZ%T.[Uˮ`ĂfXGq#O"E)B/$ orħOdKԭ ;(冫}ыŚ̃텬_G@8q cEz6fqwiQt1$&G}\;kYgFō$. I}eP@mN?lkU`X1tv&K [QO?[KCmWX)]_Y \n Ɔσu+9`2/kА-> @Z,V<7CڳF,5XoQќ4%T] 8ǓRsuru2: ·m(N{T Cܼ= RtC(i'm?u^Ɍ6L r }Nv>*N.Qf\ 1]0`Duȝ  9#ܛM0A^T9IΣdFijIEiww<~4A[Kzh#\ԫ(ARrk>E\d7Y]?m2$hgڤ(vDrfk]w̿ųwcϑޒr{{yb)Ljl3 D$!zShUk-塚_j x5PrSvC5`Z9.ufn%-tmx?}FV=.ۅUwƞpޢE/Vy;5VHEWuhZh@p-;^1zc&oHuC9P?TE}.t!/1o'h5M/t>[a$nG* he K$q?!rlJ"M~!lɏ'k5˸A;Gp3=35+Hi<'>f`J( fa[k ҳ(<?W .۰RI Rw}%7BfIe2\ݺU=XFv= Uw_#6dYy'fnan(ߞ+i6]"W(lukC>C55z` aBr@vf"nsp㗔M1P~;ߧma{QKWwAGnN|\5 r8aM;6 dA`C=΢v#" fJw`GJ @ؓԺ8E!Fq4{ŵb~bH^y;?IqBc.E:.tQ P~ʍѫA`49͊P˙ZD1eVjؑ H"4%F:/.O|<m{Ov9XHmW\:"K຀j|51qCَ]3iY| QtEp {f1iWe0`j бNm0f6L} T%w|%o3A !U_*ȋuzGT? KU˒QQ<__jRat`P}@KEu_U3|bKj@C=_@yDNi*^P^GZl-Le-dLGGcZ[kT.obj^ EEl\?;¢OntD}@0NѤZk{`Ns< { J]t>cj ފ>Fz[y [JkFzoHa/ 6(mȦUvctJ3gKWgPDEfD!k{QJ(CHS^;mգvȘ@" AqaF'd( E%w]j$fSzjb^cTNyh[T}59S$~zy4#5 EF݋9; !zh % `,)Ci&-k0şudFԂ{ 4hDm÷KBȓix4b "\Ca*>\}2^oOՊAޣܸ`yݿ`8uwv=u,mnNM/G_daV: <4 L#X, x1ٶvݳuw-Hd㦠攀 .O6tO>yC_݆(mV9S9{bb 庭@^g3Q[1u' XО ?jgַ>B (4~ʩ{`,P#M,Yc'bMj' w];=jX-m#Jim.dFI0۠]'ك}K3}g""m ) P0c%ӓ%#nʎO+YfB' >qyhn  *Яy#>mJ>;Q|4{jBQILn 2YjPSr-BIJn RV$Fg2 kcu,iNn8C6mHU 2-CV %lRa D N3o>`3$Kkj˜itLYoc)>lPS#7eAdOfDE/Sps haҁF.Zͫ`(yP}jBBF rxN~\GC#gv ;mo[~i9M-sF#x]Xn' 7Xi#=ru$(5qۭܧU@L".}qν#)!WtXÇ Rhd_|W{ { ޽:y =r,MT-}zGR< (t:Ҿh3{)lj5*Byo`LB1x,gyvy>o+-RN9[O}5f_oenD;GgF_.R40ölW(r<E3$Wc3Z2cz %acR pl`-Al:7Ѭ}Z/D ?t(NqoQUq |*G9Ox?q+E>G#;e]::3#gB @zz :-_|?I[=u2M衻Y3` Pp7N-G"Fd9i6< pvP[Қ M)x u7C6ЦlX֗Il{$sɅК#zfl[i%r6jUM890 nmܧiEWEhIE{z~UDۃ)$MƱN3]pZĂxN/k֒Nzu#۪: w,Nì9] tqf"8dJMޤKރrwx:ʤ[0S{@x9e$ bYjSpeۺ#b u Jy;)!"8+@\׃ f ,tV|y a1JяPjA#7 ')T{x8Ԏk Uu| u*=due<P otb(x]ثF0ϥ'otXHYNoO1g>zOd{H  :V c+O@3{-oy)uHTrEUv%C~l5a7ذgMM#}&ÀNh&{/,DŸfl FTT5jݑv~;kSٙBHeex~)!WyY.s;FD"PE^4ܲx/X6F A$J҅u>%z8Vxfd#uד_8L}ouer/qa'B%¼lkVA`M z;|kp[ Ô Ji@N|t\M<)kQ[:엏w/`TTn43M`PY k:J\k(ڹ,d1Vo{#GG9 Oޑ#(; G n=jI@vp<pVIX_ Gj(d_ꌩ2G8׎ ׬-!lzr5K#hheW $mM\,ceesoXey Xmzt6cTc-^ /1Sh$k16,әDev9g=cj7?*3hxa4=k+@7/ԗɔM#B➆atIC^hU&>[ :?[hFH 5$z*qev\vRa}drF"dwTSDJC+ȝʓI|Gr aS\OD P,EW~L,˽NWydT_g`{Lp%4Vzlpg:i{gڍ6);`wLGOJ|4=pDQB0 d,=PcCLې1z,3*('-OhLad1/+ n%aY6EZ6dza`mnSރ!=eܣȤ^Mt~6ۺ@ k6G\awμǖ#z:cߩz *1 ِj J ?SDn: Eo"cYָuut mg6Y_;-DWA^ aR{dkNd=1{ܐig两pT%8ug(<<<0hIg'?cE *.-LCm&Fo{JnhxLɇbD%~xՒsܢQ-m5TmLzHj;`jt+}!.Bn;D-+|R@_z.$^<8@h5kf%˥x9#Bl)|/^AGߴԫωnە5/gc=xV(h W=4nsPR#h%_4[a/\vUkA )&Eԧ\}1D, mz"I 0!ǴcO&`#(Wib^/#-(R˞ Z!,D'H^VWXC~!oUvPXFX\[0ї# *Jkq3B!5XEף*&{"cMZ Va) " d*Z?y~`&AR)zA2-F"I^wlWk1$D T_"_ W RYA$c,pTJd= v:{fIK^zEܞru /Il^qz) =]#OâpUݮ AE`.S][2dsxj}/!&!+IJ1$6妵:3wK/  8 /wNCPúM+Tk#P7@(kr7 s aM)馸w{4Sݐ.E^ #`7($p }BpHY9Oh\Qލ5M_[/DV;mZE&<`\6#|Hz\F5FfEG}A—k}\}mD r jK9TSzō HWx_!C=A".|=1ZRNM& qEh@].L3٩9JA+S5SÃ-fw_4*dJ'^)$V#jRiq= Sb%G" Q!^|83,_ug $F(&mÊF~@}8,_r~JhK$9]WDaiY ~xΑ|dpWzj]˵9֣g[S\$Jha{59׷*HvBSʹ;LG[sٺFدc]N;KOq]|ww.agXqx-1 "'v}SmXz-OW -׽=ת'نsB]`8^J~ 2) ^|,4q_&w@c |5)`AOXv?pSO)! 24 5ש?2͏|Vj; +O;9+Q$n6dj_AÁ7E/ZFg;K"5zL%-rXJ^"=k6>)*N6niᝮ`=m—"1kmKkQ֋;֒r̊H B>#آP@TScG@qZ娼+{ `+hi#yeOkl L3uQq33ZEʳHL.EG6 "fKsv&BB:..-M%x1KBcITñxS|T]G}=~~kVʄnEw5V0̚-aZE< pH $uf+tZ76M\Z?:CUwܦ&ZjzBL`"_F)1[rHOqE$cgIAü]96PQ*Ҏ'@Z`pUnd-UY`tqnGB_-K $PtJVS3UO`M.ڒh~W_.D1oŦ ݯ.c gnQ+|NВV6Af23}ѡ3\G+ln4F40џJz=V"=Ex?;NXاmA(lcңz@JepՅzPCpH#ey&jbFٸYW rZ‡ny]<}+F1@`Am_I}%SbKA?4X4N衾ؓ)OY4J+-N7L\Z`Y唛{7~G(ѻ~>aBaHsR5 ˥:@o:*'dM, &)Ȑ_aFQ!6xsee*<>!5 -϶ F?4,C>KW?rԯZ i&R1U0ne~s b sND+rL I?/F.4m!r"a4Hg_2;)Kn`ۙ 3c(h.Sm,?kwzEٳ.jKBs$% d,m/fG W]F[}#י*E:iW€]1z=z_R&X2o0۫Y'Ʉ\3m-/؋imK+Oo1M`m6cF@ǒ|{ۗn q)5ݙx&x;^iBt 6/@jOI7v%4ӹ%UzB_9v3Ϳtv|Htz.3*3WZAnTE.#|OS\^6 pY<6I>VgB*ϔ;!-~>b`JRH䱧3CX dqOT ;fK6{mCuf 5ʙMͨHda+!m=Ha@~0YcyT,p{{R8@F?!n%Ed.7ci555ɈAi-R Kٿ@RoI:rEX S32_ -cL 8Y/֋3pp6Jd}vt"+? cGI0ԟ+h:P#=V*9?ZмiETpIE}i E#2zxE !cW'u^ڊH]ᅩwи"W}ƽ<8ғzm\ ]L9$Ӱ?#B6 =ޖMֺTf_!r%v b@hh*#S c^⡲vSmEIp@C_5CDurهOj{Ϛ~q K1U^ ? :R68&+c:8tH 7*@3"V` Ӟ<ky`"n7x;_}~!/7^0}^ 9Q!5!džY<ͳHy;-9rl4K&QaVz J W']Np?}i/cOȽ~}a CE丘%Xny OμYҡFh3R~PE|+-d@q+]8j%e{.gG\ ˸g}q;ӧk4ǦeDB* 2'kٱm?uHLbamFO`M,}xN3mMٶm22bEe{O] cvnō j,fUR!b|TڪJlwXNχz2g4!Vb} 7)uzv~93 9 a*^FaxhugJfOy J?Y9Apj `@}7qYn_ߞBƏT2 Ե{Gvj}hHQbzV<I1?l|չrkM'ԼӠh4N<>MIW%(חK{:VPۀIHF&\vͿH?'ߨgE'j/'0e7I $Y[Buˍ $ = *Ys\:/S*/!럞눚̾%oHzMlH3be@S2ThEX!|?+f z.u: k)pA$y's{֩S=)^CpFK]H! (̘XX #BGng[Q}.3d1pΒ}7ծ$@%(fVo#sAquk}ĉRz8DR#h_:o72|76|b ~)U0B=Lv\(JpmD9-C\9@ YW45-d~&]0>"R/wq)VVN7["r)H *ʴH5y-Jzq ف$v `kRN#L2b̊BOH1 !gR{ xsG0(4B"4@k&<l '8xua{t!`u`װI4~`HGshw]] L'P@c-{5 .q{aWf3' U%hp#*V$Af.̴ ܠᴡt?&4TeҟԼ˧ l8_I=Y 'hx**)uM)zImwUM%Y{Yd풗!OaOTt^=Bo$Qr*"J|]j4ϒWPkxFOCmfHJ*hZSDHK?E2/JC 0J#ow}D0O[ Γb]Dͼ`D?vVɒ )^ "q] 1 $kb-P=\;:a=hЁ is*~a46=`]_-[OpQ3}HT{t B8UZcshɋݪr#'T*{RdB'W91\5e*|rͰo H16|vrg@T!{!6Z~Fwǘ2B546/ ۉx۶8WĥF$ 5l+0`yX(^ ~nT|(H3>\18QUyZNjyBA Z]K9no$>~G&biGAs5:t7U=)թJ٢HREfQ٪)HODExGDstH1Սi:%+RT(n˪<"s۵f]?튼Ս**ܺgza%"PVUƈ0훍gM&WwwkX iKV}!XK˒]1+UhFQR/Gހ$ӄSh &0zR >{,Xʸ |0;O}z~Mzy)Y8pJN&'95ZVj0h+rp*TĊr9pNW5?yCia^J vZ)QE߳ *`/S/Pl:Q`xÒoۚV qwkwyʌ;M|#uCPΉO=\=yK׈Eܢ"rԗ24NE ;!Է: Gl$b=#_И]9uo!NbV="N50HeB~wexնuNQ"\%w 7Dԁ4b!tC1[2ЋW_$Ijz|t\>}Z*7ӑǵc(8s^Z{Emq:Z!EdZK`}}GtD6e*%@((H8ې Yu1sQT=N6;ZsȬ$lϞvCbŒo/LpؚW/Q+#sY.[׏qy*g4f%}1}rY)hc_XV;v zf"..M9*]lym( TR=0&j p<\hRрmD-?>+95R{\*q}uJU^uōd |@+憲X\yXtș_-kg=9 ŸnuM(^*/PBV8bqfTQ7ш:T8=H.gLJZ|'Y3[>^ toJ7Բh _RcXf l53.åTǛz?iQ " MN:dnvqTzi7epG)dc2r7S + |gz i@:iP@8tPS[LFzeanWE[ԕ\6 H#=TϙOx B0Bp ~F~Ut0˼eLJ;1#*LIz_.@@ *oG*>BY&(?s2juXctZ &>\ߐioyzj<F ô qp7L&^ch`K1>v%%Enh6hHSb|DR::*U!ٵG0;d!=O@nۜVPǏS~59@+<9-k FvL;uIٴo6`+B[NTso9YLT-oIJ (p=:x5D$̿s!:/x/ϭ+hDdLzNd̬sO1YZ2EX-æ\p6VC`%C`3FdvPTLBy^p}EpWT{2hhEs=]LihdRh)FVzq?i[}~'f$}vGɕHEEŲlђ&mT98adz}b|c`aGk@mLRk#Tjh"DMVX~Aꔶ(O(w ,XO/*'A{nvC2 $OkJ@sNJY nbNԘy=]H%.Ij/iY 0='1Νm%.nrl˃ EG٤%^ָVO[sD6@i|mzp:vB)H I^]T0$rW k>%EG 䃗vWC{\bކGdY{_,xXS^H{v'J&{ό(i9 W£ل@hDtR+ Nk0aYs F %ۛdY%S/`gU#/Ux {Bf"s~o%ЖS=Ȕy,eb_9`oU$bvTfM-+B7dz$ f[5JBnKȊUb^etCAKhlcua9.kک6{Ҟ=t6?aY_;8͆Z7&հŅHg@#)7[VayȀW>ƫʑwGJihZ̔K+9y $% wGIj6JTAɳh|вJo㧄ѵ! }/Â_&G g,\"r6Kqmj6Q%i=Xg&"~р `TxY5x'P NuSJIF} KY˜M+VUx !x?` }Gz-G &Y"4+1 7?uHlasKjxljӵ EbI54+rRm/3aC[>Ceϭѱ;iUlZNL/,4D^(9iߟB.Fv>`{OisJ㟈tmM [|oNڙ1{5 4g.<`.\w,-6f)x/2J;qxhD BnW ;wuw8ѲP.C# 5 e}@%4&|ljH{OD<EZ',äa<ͷ.PI--Vk9]#dwȩBo:ThOWK?>DlpلK ]œ/W&0d(HaG~,ܭuHS 5'&cV[6~8{{rḳ]ώqAE,n\{"P>ER9!|W5O_Eߓi0'oO4gzgREߠTk}_r#Sm·.ۤ¨"̊R ΂Gc$R`xwy |{6~"GO],C?n)qN!չDZй-ԏ^%tf": knt.Ԕ|7Yt62\7KSUM+V ٹر"MseWMs]-ꢑ+a`?Zc8־ K@^kGH:/'g/gV<=KDy>9;eZi%8>Q9&𨔴ِ s2y7$Ю.ʎߵG+AA]z)1Pz{p@đCŒm|;p$@Y!7~a0,*-"v` z 4J`E%^~8Y$0"aL-*«szQ4#Ii~EOb Nҽ`<ޕB8LW|`'0~h =1!bhʣsbwV4 ZU?`fy'oG r6"ζ!毱yp/ۤdEk-NLz̛M5q`lR2&S;9R+7w.bm[r>g /B) XàsFF@ZͫAޚl09>=F=~$w6iGT"b!# H6>:GKO Xs.9(}|ꩼuߔs4*L6$S1eJfsMҜ D$PyGc-Aa7v#a¾,k8ftw1-ی<ΝV[M`4Y:8.~&WXG[nbt׫mciǓPFYje39+1Hf@hiWmI $nGAMfküAwo< #ڭTs>5`3)]}2)8Uw&[&F_pYj ɏseSzvoj:q-6@P}ك&+y K Bjه/u&0/dcŠ9J>fJ[/UDM{g.8$9If{m}Œ n@"k]_ a֌Έ18.<$L|U)zQR p~wv"*XỔH!DdJ_BEhMgp TEOe1a| tKȩ+ ˕ u1mzk೿dhvĨz&b#)3NޒVj&C;`aqC/V:l:f#" z4K\fv>=qŸ*Ea `x^n~'&R0IDAG9.,o~J $iS}L ;庶;߸A[|1-CA!- B9MZe@oVA^16]KgH j/Sm#DY~=pH0u7cMFQX$kI;`\.u,8n,c {鸋@.Kq;,dr*{WWͧ}r#)˅|zy%]qje?#*rPr? ;gw#Qo -J=b$ Hg*P\M΄im0ϧQ^X¤sJ*~q l'7,| (&UuyUೲ qf?5Qn}^PJ3pLZ;^>ͤ}Q20iBydhƶt|}܂xee, GnG&L$4)=*\ }n^O/=L Y?5Ţ]V"5ZH7Bk3KsGus!*؟}+\\dK^l`x~FQ43UcH0/biBp#XNMMzLR_U]$Vkڼ('-@5%Z)l?[cXfBCS ,n5-}eVBv v$DZ!5I8An|((k6J<(`L|J?!C9Ъt2T+ПZ2U[535CHUsu-d$v9n 8)^[Br)M o@i7MDnȄ n,d<6|fbAr]*H[h)4[\KgvNg?e^M<";5NByIzVNwư fuw)SDz!6*Z2/m>&tݝ"+s ]_zdN* Z=wqJ1{-:ȹ%o,Չ})+\&2ƃrZ@XvKjI?T p>yH~d?Fvr;3?yL#2ߚՔB[?^wj81 '?|r,G'5yITΊ=;-"WSִ}xsUz[xTN]Uj'b| ^TȪ8%=Q 8`8bzԍvy{1#k o `#[t_i#+X*~Ea4ٳ.)-%*&-nS)o%-ۖ}h dYP >wKZ boYGIY6 XZ;1|Z K}7J8em2IcD ?\:c^ %ŕ1ǔF2u T! `"BߩqL=rZwVxM^mJ"R [ ݃sD}XV. QּM1jje]%;>|F+dR9]Pp<b"q3œ"ɉYӝ!$3Gadw7i5;wu" e+|Ep6=U :ӨF'vLw֒{BүX㪅̡ht.P* 09!WgqFA»643jAЬm#bDKw8шypZ.IckD =r%cٕ8s-t<;=;~B袿Jynht.Xu:pZ@k7JLDœ'H5~.nE1lf`r#I}:voFYr٦ Mt2Qpkn,gCIiK-0PJƪ@@_;"P5C$lG 1n9q"h4L,‰,Pg=6 pi3݆UX@`@5&A5EA7"6ij-^=qi~J_22r,Zc eob 5t/^NfFgv`[+4IA;ȵ+2$FYϾoPc/5 [|~3=n`ܮ&YX˪o(}#LA&$U.pB \ hc{I&Y '&MٚwWh0R)ɱmҋ쿔˖dxY;E3Z_GEgJj1&itDjbEpBI@ _A{l0WɝO=K],N^BiаVGGJ-MKsoB?0kE9R9}KW&Vb)8 RӋ-ƋK0vc#pJLbhUvFn6ؘrDv,)`|3QQ*>ڔyol~O4hWTΊbVYb6kB1,+GrmTM %glÁ>M| $,fnx?Rpk&uŦuoQ>ąK_%% (^{ey M$ f.i:"T9- ,`AENlIJV0p.ǖXscø_ao#OZD &kg)6U[f.(L=lpxl.\"i_-QVOm} \ nM+p0.MuҡtSk\E?QDZigiF6sO5Ӛ ϸB'1~%eR}pxUZs @}&9Z(nq]O⥉~qJ"zjE n5t 6ԦuӶ"nOH/갍Y\㿥M6a#Rz˰{uC@m]E[?n9S?;]r^QyJgjPcaa =Rte2&2U%w">*[7d*B -dQC=*=2!#siUsQyDPR x)!`G֥$eaF'W7M'O22u`(('/p|*Gd#IUUzƋXI'@ƸpPssg:}: AĨ&@z!T^ eKR zOsqOmQ`"%vrxiqXG-x|0?;X4\aF_ᘰe6Kq+r3H(qry|@dÞ^?$fAHZ"tf &A͌B10R3zbd_NʃTChT¸TD +uWء!|C7 4] Ky@T%m/I~Kx/i7_*J 8'xT܌R)ўmWdVkkS'- Y!e3e_*b"!9iq[`.aTtU2NC轆Pz iJD,Y!QowSwa+Ҹ7RpdqQ' ~(4ۚF B"-x4xK|5vQKxί;r4>Zn5g@[sG' 4 &fއxl?ntI|)țI6rR\"/='}{c;.6 61hdhrԋ H[Z<2p}īڨcc>*!ߜH<.PY0Z9Xi0f57B쭝(F>  wEM#[ _pAR@6sG5iI2ݝM-T3ץK?Z8akT@gZV.yff"|O#ˢ:$(8`?S|zWGMZ?ڬR \[44ft&GGHL>Q'䃀0j0|W7e-~(^85 9<,OP:2]oD`s޷ӈbKF\L5cpD+pρh&i߄En*2}A$zT~?]%Sd+9[*«:d <FO& Ciy]uD=L:zLy "pQklP= %~JԤBjvc(Lq6%%V>cnDS  UK. rV,7{XIL_-|sV^yԤM7W]~,--0Rk2T7Ա]EɇUSc@Oү1Gg9ʣ cG3nk ީ!V%(!0 z5h>iau05q"@UE%o_XKSXNw-E2~'z-lظP2-V#XR4ў!F&m5o Iuby]=q MKJP%8j/$wZWjALM֎@4d2fP${uh.N-BIӄ u)(Fz)!(0..I9ÀԶw ia8~)ZYf6jU"f]z[_ae1SUue>Fo ~R:;-(sJn\D WaMT^v˲~)ȳ8Yp@oA$7B7IPZ.^ -1ZTmX8H"X8?*Յ\Zj@ф}4z=*l[TJFLJ'υ) h ;S`7ls񁝉|n,m$xe/$0y4:zVQYZ0qj)X}~X=p6Z9E@⣑JM=,B& F4(L;U}LiٺmQH5<Rjd˾v.ޢ?(N R9m"dZv HboY~b\pT}mz:be੼_y}qy hkNvVEKOm@Җu5gIUW{o۞~d0'Zܑ?렴Ϧ&^#*.\2sv"O=-G٥ň%6(ΜP&jLq.˚IՄYYq{u%Y 眥#UZ\-2aouƸFJ6A Nj=NֹV+5"ZںT;[:z ty5/g,޷M9*)E:ӄ=|,$p4^hHBc1!&aJV\t!OȂ_ؿ-`xNc`=~a!j*ci~&Q%FTBL樛8e`V-!͂hUË{ .x>irK!el nupb> _,{jL!iяpXx4$Pa]/0,R)ZژL@W;LX Y}>K,տI3K.IJqtO_o F:$'E(,X %{݉ԴsstTB|$əB=|Z, vFez['rr|4*y2O]/ GSG 1_&Zhz1kU6ɞVi`{3*bGllSK$\DW =@bۃUlS*%};g׀R׃4BV\lk|D7Ee%a,@D @Å~35> M=!ۏwcRIloA֠znl.")tOD+TeE˪*/n-+lc,rnT++G3~zzA:ʡqgMS ,r/I;ўB>&Ґw%o9xmb5niSH| ڻO0-`ﰔާgqn[ 0-M_7QԵ_(A/*ebqvyPlk8B[3guF`2ߤ[U)ƞq}GQAnM4mc m{+-=frVâ`CѸ,u5^ʤo60 wynm| vW<Eof*@` T{MG+i1aَ l7 0+qCS^r9>[h4to+-d$z`cUJGG-=7 }兞4K8[=?q= %)gK/ީ2d:An 3icU4A5JEb\p;+6(b3Jg5' or!+#naB+2\mܯc2qf}c[C 1U=3eE{»f*X/ _ьFH/Y=c!pjn/( HMɞfq@ NRE7d7?6 Dop85M4d5t +b]!%_+WZx'm3-RK9V\v[Un v.M}9ʏ}; X4Sd3%alM=+߬\PHrBT 2ce&m)#5W7{R,PoLg"&жSvnVxziDVw1/V&A>loXO8f2/ݴs)R7 wO;E;X-- Dǣøt<&XS'2RNv;rd}ė%iYeo5Md^ Gȕ)%e?~,4GwE-W8?J6(*{Z NS5 QR5 1-"qW ׀k#Pq&dÝ]f#%!ʞ?7R-E@_5bq`yIb>Wsxg_%ǚw!Jq& ˖du.mYX?zF_g<F Ҋ_]r*/U`x_IZ7|̴;4AWOBΪ 71<(j{3a{爸p;]dg!1ΒVݧ7GP%$;js*ViKԧy4ɺ>hVj#b/@)J6!E>S@xN-G bp4~zۅ1CLy)Sl*3~޷+ F!cU PqѪPfzߪwhSbjR4TR ".gK4tձo+3xݭs;d"`ӽnL>W|Ky225,)e#WV:=O"Le-JɍNغ[ lU%z͑Ĭ];Fnp)RH+lJl+>,]YzUk,UB{?&1J/G%B6ޮh;<"ɻL ެD5ۙ<9*Ӯȍ[/ 6?(M;/+!7ܗs P;y7vn" p@3\ܦZP:F}Ȗ^N^(++[^RJ񘎏b VC̜$òX[@M0v~(`&RhLʩq|@Vox/CH-Bйg$Y> gs] #6nɍʶBN|7`_p j'BJ˗(USnD n}|fݫ+yι 96qBȣ_#s(6 6E3yDOs˪.x|~ gjNwv~' c1-îDA||7o;mkY;erKfRY[|[_Sģb7͆D$iU h\^I5Y֡GuQ׺=Io!22Ǿԋ13H^k@vy/Qi.L 'XX( :g}E!Tv)yv"y! Vx8cuNo$]^OwChk+iȑ *=[zMI89?*ZL1T8[Yxx9ӺZ0w (W^0IEk {mrl7 {{t <3hpȬUO:9MYCGyΣOms~:x/0g'?^>㣋<;#D=sx뭁t4$M&CŘ ܧEhphI~xƁ@孌A^py5z_bcE; bOcmTK5wf4 Jb1*k Y<~%kU^#4iADz8݋/&ƿ9)*SC 0: ZON|s_OƒMy]5hZRJ d[4BZqŌ:LO-t4Spiu$6|c&rxޑƯ@p+s!"yT,ɤNĻP'=['u49S3 znm$# ;kTwx57ɥuIM.:?Azq`[KX ZLv\]bjcM|5AxϭڷՎ&_œ_'f|4-;#VC\~ zޒcWU|6 fivi &Lw+ 7~8[L$͛zY/|c~zi.s*bW<|ɧ:; ҹ7p>K2a:UhR qZ?bν^(A$F;'o|aP霵Mfw*ushR0`EYpqHH]j2XX\+KÝG.v/n1Z?UۈoH |9⣑s&]Iv/L6$d >^| 1#,-ւ*bd U,Ѡ@˃#-7]aܬ2 G(T0:WA@ z(0 1 w <}Gk IFܙ/<PpWM>ڎ!&QRg:Hi3{l]>Άи`]^(zΜܸ Anú8`[HTyZ"Րho fңf]ǧ)?qe(];pJt_K=Mj1wpX:,i,FGN_3ٗ%x@6 q>E-}Mz%z-$᷸jR{5I0aZCVMJtC;G6)^H;eE䪣N 6KwuUڏ 6,V *~zJ5y?m&tc)iFlV :Jh{},Ĺ)L(fG+ ;? b6I+> 0wHl."U ҝnigq/-]a+Ji%oE@- |CHf*=h6\(aEZӮexS9\jiMMWR \T^:bFSÿ A]MB :hzEvڶj<qA2T E;Ƀbo>Z-|LJI\'׿~&Xr[,R-  9E  Ѹ7/ ؤ ؃A8ɢ&? !1&BA"oLA@GMK*)JyԂ6 W>4+"t]d*We蚆8V_I(c7MƜ8e|D(p0jo۳kfvU/v.z =Zus^cq [Υ)D-R)qm5qfg};r{'b4IT]˒t(-m ۱d*~ڲ1)7mhY7#<UC.lyM.u4 @&@rH'*I!U*|2q8e{UPWMQ<x'a٪[h?4JuGpZZ}( j Ey(+n -e*~ 5Lh#*x&1{u1{Ȅ(=-Ѯ'Ĕ[xeQOi!&Q~0yQ_ I:gޔݾtHt~rB>{rɲF& uMq9p^ Ϯxteؽ$G3i3>9k}X^ mcL}61hhߣ{ DvMQo@8 m鍘 )T#5.`,<{LfpD֫ ~%)-x 풓X@_yI!s|tJbH)Q:]BIjIm`I <儵ӏZbp}*M:"9"pвlNԎp1>bnZ,o +gc#M W:^`[z@+ݴ$SqL^w*A%嗽״xtfӟe /ywrd s3rk^,ZLN.DO;fՄ៽G5ռk]}"e?p7<|0y[T _D^?m\/B|_Q:SX1$}$$U0vx$PW+(~rAqLEDvQ̑D`9DDFZ{⠃hO_bq%wKe\0-t /=-jt!hvfz2ZNL2}!h= oɬ\'1 =q6UXfSV"J0*v_vXA,vq:cٚg%EJh:b 쿆2? gUEڏU:a7{3ȻSkm}n߇>Ve%m*']"üL$5DaA/ 3CjʴJv 1%R>~i͂XaeMPFoφ%ߏ};Kd,IQ$MH|+*F0/W,Xe:󒪇,C]!~p\Ϙz-%I7ܡ?"MrkTܦ·ܯW# {^ȋ}INSQt[^8wʃSC@.ޜ/s&>"خ,QюӺcd5ɬf`pX%ϢP58./0(lt"jԷ^PYSP,>'j B므cx 礫E!P JEȊpsys"=, R^7 iy0P̾@DI6?EL L~glt&&hiXn‚+&ْz۟; Ô<(fC^Rc]V@b=*KmfOU~&:0{5PD~r*EYZ Z?%AbkU[O)8CeݟqPUks<qP݊`)Aut̆TfR'vh,JfR4!fVfcyR!HL,Ho@NKUG*$ךřqvl+WPg ;XT<6_Di{#32U6uǺZ _d]B|GO.n LpbD[bv-@st2 ؜;6|zfs0%Ռw\xrvw@W# F*}; g';E?}UJ!سYLZ>:]Y\-tSj0=hY''6o|8<Н|,e /=>bG(Xxq}ۊ) oqЮh%I?kcchPY:%TBy#S x(*`Fz~V؜=l-@FV1eCE7hS )X]<B^#ra Qiylc6so5zElXCd,;FK,DR(OO\ңy[+9, l5\tz`/HwsTg OÉ fA"$]n$7bGxch\JXḽi>|OαMҫi}JDVxSm~PGX5 HF Tg%AgAUӄ“Ә"1,ZM3&vTֈoHdw!g2H'݊->i&9w_|+q3̄`=1ЊC!4wp"r|k_EKomrm-@z2pvr|cMQt0cdHT_Q Ti27\:!Al[H|D)ol 'g 7ˀe١2Flu[^q(cW(K`b?; ]—iB =-ґS=1Di_x3[^hý|X8l_Ds1_v.ܶ܆.hs0|(~fӠV(@cJכpFj˶@]9] :eyd@OQwCp a+U6MW}2;Pv O/t7EpJ+#,b!)}dQ;LI dZJ$$<,_F#NHo? 2hp}6 $_.= 5un*:IM[ -az*YqgrA'0O) ŋ?>Oؖ%)^<] F('Єx)5ⳎY/6-perPV"Ȏrarj5{)Xܫۭ+ȆwPJ:_ Tpߐ5Aw2,'M@! U(ޚW()qi^0<Уש9BЂȑnI|zوJNg)i`U)H*U#5z :Oc[z!tmx~-A9D%rV2!z~8ŸSix/}b Sp ձtF{zftw :XRGVA1" =hh33Z\cj\~VJ> uFe-ͱ"Xs+eڜbfC+\( 3$^-. ==k'1̲݀x^!a9>rL=q/7[(H5ـR!2=7t#K<1BNM%csNvʂKvwZO2ܱ %,1is3]v{a]oI-Gr%񂖾QXC2ꬊ \/PĞC3'jia0t 8B5L{d68sG"Q|]~c_h%W0K{A*G=9? }֑Kvz*N2 d uk\Lɦ f@%S{ڸn7.$2To>7&MikƕpQ\ 9SWɠPvBP8qufG\Q0u-&kU${Fո0Rnԝ7x1'KcT䬵E F)=ZP$d\3n@R!ǏUj&肋UȳX+wY#jPzYG,A9jw^bًO99Ve!` ZG0IU y>@s;ElڽɃkVZ۹Dwم>+vI!·J+Zy.}O>Lٺ a9meR^%}jj@a7H0Hd<^Ys!7o GR¶P S`qxAY94VXp()"y쉽}빫 $blx8 FwI pJI)ۃ5)ԛcF $X̘ -ۥܢYg"tBom6KK#?Z19ڳSpoO׎>Ou]y0A3ҍI_x.HR)6ܼR"|lTx&KFƀU? cRw'\-ci_cۜzS1¦nx^O3ڼ' S3tK- Ç@J΃MvTz'by$y;sv%jBG<)DL:-pUij@ qɿ@1}&?=D0tP!PӈS}/7.b}E;B>[n_' $}8eLPtO*< >M17QU4m'"RaֵYbӡOkX<9VTIc']&0{&n5a3A~9!ҡyGRU聿_}j n`ȼk^۶,h_7?4Dꂜлޠa|n7.Cnjۥ>j^> XJѸL>C*>{)reuB ͨ`[mAVӫJ 2q;zNv"LrjFb*҂6)Z"F |Ӻ>O˴݉/Bx_æ} -&jP 6ۦl{2&x$2Yex7UcfWPl[Kk+ E*DC~#mрWONh `l流mDYP.gb4&X2#UkEuM_]jzд;@w(>"f"y/+Wf_~|!ё `J5놲jollJ4cr05zP22rX(s/'aߎƘl{Hnh-z @j!n&:R B{fZs7#e'-kid4cC*Siky1y7@Թ^`I8"+>\2lqg=J]>/vƴ¯&[іÍd4Lҷ‚Kx_Y({;v!+ bQ//lޠ62u1F Vᮘ2Jo_mܬU2 Uшn5>,(oGΆrb3eA,|,ݱY*מI%%=>m&P77PZB9 bk}fuQ%<># !;]# Cΐ2a>c J?F(wt@NځDPw&3j'[LC\ q]% 84Xo8UBBX|__Xog@"=wR_ @ٵ࡯΅[& 1:#398GPlo̙Ec^rD%]Z/ W7Q QE 7]C+^f6(O~Xq!!'jOm3f{Z ~$ \"=ӵ!u^&?SdYu}H`2y`Ѩ$9 Yt|> {_su鶧P[*{>{Z(c *4 -{s h%Zψuwwr,jqI8\5$3h ZPocb1 u8/炕S> y-ɊcO|s9,2:z Q=g&ĐF%#PYuQ <µ%h(>!$_ 'Q }#5v#& ŒIC>Oﮆx:-af {u pХM 롃"]ij(D|x"s*uh5eɹ*aM!Jutv31B̯1jA?ۼ5 wWqv3B#v VovQmFqr1:êX։3 $oMUm`W(:as%dqzY["R RDv)jA"Փ U0l{~O,C1Tjx /o]ڼw9u}Ÿ ĖQ? c`8dg$*}zۑ .þ~( HʋHG&jM4lY9oԫ|zUWmdDG/P- \4D*wMvJ& l :n0D{UTXI+$d KgrRj{)i*L7%Ϝʿ0CxM@:f%'\@D)&zE< ðʙ6&v ^n"n#Gc5sNlا`ƻLX:U(q}s@ } 74mȑRS D;A|rk8 P3-!g?7^dZ[L1%F!V5J Km=y ͼg PӌTJUmy]2Gx;;F%XUAtqF8 E*7#j 6n /HAkPp.]soxpҾz`z988fs.+t]<㊩[2ܤHNI8ސ[WKr[Ԋ 4ʬϕ; Oi-9 ¥ς.# dn*96No|e󻌾́v{-ސ n^^~fܱtg3C~/&@kyہ3B@gXq3<.}bBT6DL=̊g4!G,LtޠDE!F$?QXp:min)#O&kYOKx):}wOMH2Ad:?m&+{I^ɌMj @Y/Ė:wC WPgw"|XR~]^Nu +Bϓo%{ܤ{MXD o1Wjj zbI9c 晭αN_%,>ŦK}BMNpyԎD$ďYzY =|,#T{ S{-=3bY=T3QѕŕNki$SHf 㭿4 zE=L:̕ګlPJya\U>͗ 0"RjGz&R$r%s~}5lW\ wS+<w`^zyL˽ dծCs@뗋'&ʒYO 6T y`ca6(Kb;JC908Tngחtʁ5 ʝEis8y_*Tv= ^=pL#,&Uӄry/ i[":|$/洗;Q:ٵ>-mQޮXBNvtyUlRצfv!  prTu%T^y,>?b[D{𤍂Zb!NRB0hwvSNo;&#Tk5[=a6bH]}TXP0Ŧ^85{ D.!:Imq P5K\0M隌Ƣ˼ޡ: L󐣯uFw%_'Ƙw@K%jxHtpoԵ.Yq5Fv Ll|UM>d`@_gD%}0eša*ݯ#JQ} e#3HSAlvW]rw6Eq;9MF:)l4_v-C~ٜ~=aC٪6+Eo1(% jyE/H@bN&3FW Ioi*a[%cvK 3uHsc!]2"yktoj%tHFvעmH4TѲ$S h9žn]m1GBD hBN$yيͿ2wu,Ju!q\d>~.tUb<&%I^3bg$c9GdAo\\&jW٣!P%tlzMfEjó!׽{B_=M^InUQ KF~61Xb", N֤.sƹ=3uL/y@ߎxu~ۂi˿YF<+S?&^ݐ[*ъi G%Oe?g)Im᠋{!><u(Kiw T ϗk"!IXO\ߎ!#e\=@us+= P ƋAJ`YREa2)2KH"ェFsj[ܐX}RHgR6MCwxWhlD,PnOZf ǭ`'5bX 0L@;b 9C/Fky`RX̖^hء>~E{"j\E#_} mm,g1^n\]+ڠݕ;Zr1RΤMt199ШgbU6d{@fNaOh +˜b J`i h%q͠˕4!.3κ ZAHo_6:0O.9)\{^|jʌ3g)#Г{bӕo6  NTL}yc ә4golFT`H^_7u=xuo?2Ǩ%=wǡEǑ@OXdzH]liA!c4.Lrf` pgb1f[L#ВxSX5ŐpbJYNAh_*T#/v&i|ΞkLdv'dإTSĹ(4{p5Lnr' bAnFUփyxy6I S k\-${ll=ǟxflKKIԅ>9װ־ױvcgb6ζHl+桂8ţwP1 R[Ӓe4vL%67l/g$jsŔY&44tڵ" J':S=TņAnQU0Oſ݃N^f*6.Ix+9W OUQG+ :n!g#̕D;wwK,(>&X7|2)-~R H Qz!I: ?L&!XR|M Ieϴm̩%#PEyŝ*ޥNm#BKR41Db$09dq.ΓX{< S3rdEQ.Z _#{^ZQmZƲvV&:tffK :+|L&x{SvVW{iV’'H B wl\XIn3&1Ŭ8NuQ9o?Y ; O{ 2t$9q{&6\2k <,gãV6cg*d0V,,C{o*i!az{/v/s9%Li!;h`3ESkiK-] ufnS pA8@æȬzZR/Ց1ڠVK;L_;DK$:ٵIU0W^[c=so\{wyѳ(%+\;2 8z~Rcd4x B2x{cWYhP8kZۙ5$  $!1m^ OʲIhz˶jf}kRC`KW8 }6IMit)~tyEBzGxWM?b 2x36s9$_υc71ՋJJ%zd 5Z&QIhSz[C#` }tA'ߦ[CxruGt{9`8H61S|_w+5Y qƮ=Ƀ2U%WH}z6GjnWgۂٮV6* l]Rn%X~N*}U! fy?վZBΨu9^AaU&>BE0ѐp0A*ϧuQMo>wz\Pڷ>Uϳh[ύq?H-YzwHRRp9BU-psvAq -ѫHmP¾UF74{ $.s27;=fto0o9 2P]29 ʖŁ q7[K ۊ`E ._g݃4Ϗb^oɄ?[o ԇ+r"CY 'WְdM65Omg5|*+P*WVMAԸof@F*S +ٿ%EaSC4wRHPAMFG#6iiZT V.dȱozJA9*>^=&T2)Nw6̵D퉟951cy:"Ai, -s 쀼sO[j'۝B tRE!cD>{jfNgR ]U[CcDGL_3_'ؠrG}aeș1 i B 0 F5k:&ej*_2<Q] L8F&.ǎqaS1nDpj,=#yz aF#wʕd肷0'UD|n~݆nS <τ''ȲP ʥ ۭ7e[Q]+Po7g}[[m#wuop .rN$oaǂa)h:!''!êRK!z|ԩܺ}BCkay{#pi מPw\Ч8iPu$v4LQ-m UG ;0cH" E˦L;!ԓp(i'![Q H#dzOS,; P)rj2{͛A$%gqqcGEFTH PW%L,CB6#75f:c,zDY$- ZinlI Y-^L,\ ɩJL6k+IRƐK[ ))K mwsɮAE&(e#_6u8vbwʷgS|颓fQsqM1y+,k+UQz~&p~YפMdt</ii*S*,(.i]dC.().:]Zԥyd./\ bL>{ɫ D?NBM]`͹v,y7k6b1FD8 1wi>A#;KP}$&Py y/2ؗlzcUѻqIvae^E`ߡr5/ ,]EEޞf 涧#6X*.}$0{( %[,vUO~Oڶ:^]o5Czv4 s6\B7n*6t6K^/)$<~½LJȤd-2B]ׯwA ű(sh6+ ie6n(XXWE5?֋F|w(X"Di0WnIg&]kݸwp&QCŒjfxhYj:a)nw/˚4 + ~wt" r߬ؔ% ,3n5IOˑ*8n0^%M׸l zT9Œ1 `DΈNZIՙMsϾakq-^,ya*X7WuF[5վ))msk'J?=l:{BAbLTb:t45qMi0j8%ӱ7Nz{gT@! XT%59p'E FPboт'%Lqkd2>>09W@T6Zp}H֔xpJ+SQ䅴c,=os8$2P~fɒoAoGbS=Lw7WfnOG{6Uhw`L{3l4ӗ%< QrOZ ȣNY#O`!Џ(|C$B_G;RiZ`(<C5e#y_e_Nٟu١ͅ J@3|J'"?qG#X,1)+h1z#`82눢8jsvt}\` wږU,53czof(q+=0p W~HxEG(4l5tM?:01)e"O6 ݨilLO{paon Xn|RT:Al8ד_ MGY@^8; W?Fƶ%߸V^2Y,Chɚ"qxbf2ni 2Ek #Mz CSqXhG_~]܇##NBVNGBȶTr}gxs#r1D ňQx!maC)5y&"M_Z\lMN\y/ͅ=*|mh,{LzvT6u a7bR)1QLeFsAh|b[R)FhFY?^ אָ_zraѭ@B9FbKL9%@ߊO_[6>FcTÞ~{Knrό+%q9gvxɧ|H!~8 s$s]# 7sؖ%"^N!(wުPHG7^]M9~qXgZʛ8*[qE&)/;-_M P#ϴ"q}0RyDUz-|Wj5bq;VRu:0 QW~[.{ͯ7FG!.W|V=%3e )xB5v.<F=͐ ^eCɻnIƚY7,!W" (є0?9wθzajUNZLq3w$#@snD^h)]PnA΁v=ijsWRW$_Y]^l_4)&nneE I..틕."ZbmiI~(-A2z2@(/vsBbrisݜ^ FHaMM 2+NICfb[ axv~AmfMwT44 x^bO_h>ߧR{9jmƽjّ*h~z.i/Bۘ(6Px,ζzƩYܔ8j@O4gh? u!D7y?d]0$)pD~Q1'yʎ 9*Yxc6Mlr]}ȃkV1n-Ic1R ._#_¼ٖÞv5\'HVFD)呶M *u䍤ve*[‘UPsXxa#?+G*LWW@ BA&X;g{ 0}تm~B.v3/Piy"g!d0>C$ Lk4Nx[ v콤ȓN c?_|fЇ'.7hr}#`G#+ietˋ5q;=g3G֑oq;"C\6(+ޟj^x@llӯ"'XwFQCKs6RwNiNϜB?#CdP8wxT8ib)<14uj4j&|;7%ߩx0Wnw \9av'DԄЩ f)[zNFj`hN51,2j mՏ5/K9YsJ{I(=Y CGy$lB+{`? bB/a_#7Wd@Ǘz[۾~r:;:HG7r==hW"X³>^ 2Qbb UCrCdrck \'$YsS<7DyP{JTN坦-B#^ F\^Skpul<+b 3&1U_W^Q),K2hJ$ejS9x. #4sG[;ɀykH(Izm˸!I[u ÔVf Yc!Tc2Vadnb|L0Ak16gl@,Yi(f f&.|>kINh& <h@䀟\kut ԔO䄐0&Nܨbx;=/y!&|J6'sՑΘ = o,G?jE,vҖh . E*Щw+>/1M]RS/OLVwE#I@v~h:P)Uo XҤJ?qϜ4f*:c'MdXss+<2f弘357iø3 g 57\%UF50`]n|~ùn;L!EOJZca fBmw(_]^$jJh_#us$Y:'Obx4j:JWis1Vcv- A%q$tAsX^_| k2^L a3in/!֠.لa2L}wDJV͇Y>Kc2gA.G5^'9=*>Rji⒳C9Cl\!f??| 7pbw ~@ sL_Or8$iS^Z#9 e߭Spۋ2WDo5߄:n(D$&iSC3$JG!!In'lO~hݿa~Á^~^@l}}$Ӻ Wð9 <(X?oձ3D,k `&x2q *^$TM na3䡪YΣ_= XT1YǫpviieiQ:H *u:EȆ'//V*S 8 So jqɣ 8q֗InNM(98N#Kzr&ΚA1ۙy=vcjRQ\6pj /+G`=2&nCMuoiYlw)Pg|J|^"jbO4adT_mR'83rswpҨ':?\!*!)?Th|̇x@kւ=wv¸nb °(/P*uGRQBa EŪE) 7`:o7,ٓ]~NĜw&su i 6~1J?U`+?FWIQ%o8eM>Ҡq?G0[LrʉѓjEz;m\o9z!xW8Ye =3DOh5}zY&6K)J' ;<`'D{1*ίCHuJE! &5hu=Ÿ,#FL N/#k c+͋λQ/1.?jK6lL;8#)r]82LwvIBOQ$呂bq ;0/Ǻ64,x,#xS mr,ב[BW59+O SO^^BO:DViwϨM#<3!XoˢWn٩y)Z"'2T< >GýG!pOn圎xn@=cSi9T}x^}g&ųͼ?quHYO^ M#h`TI7^H @#ߥԢZ?6S`m 곅9cH6n"B\+҉Y~"M$ΰu4R6E}<쎜E.x ?ͽ)4GfG/gf/'8@P> .d}b=ID;*h3%-e{1xQOHS+D3Wa?P0H;&Qw,ɑw=M3w&RK-Bl̶vҽ\[?Nv=%r F% mt՛Fätq: ~)@t䠴(,[ YM:{ɾ  D;8ʡ;ɊYY#VPzWz"3:W۟k^ 3BF!7;411@u?ts_>{S4k]  o:5F% 4mY&S3YzHpiT1 򜟚6W 0JIP'jF DpZJvuJ~wHO<R4z+y d$6@ܶm"Tǟ!!Q Tgn=/3nr8Ȯٟ/SAxcws``dג{9pa=;4ff=D_F,5Ԥ?I*=I sM$f:-qrB" Al$-XU{ŭkaXxKaܱPH6/Mc?c)BS k"}DK*V܀ /S*>2xpG̛</+F:B3?63mb?E@ܨuo뚨z@':%Ba=.Oj1`[tp^U#郲0Y7~4-z C| ccz:Ҿ2։y<ِfZ] e=Q9?{/C6 p❉-M*QY+)ə jIb|hggdRdѳ̈́τk{=:,MRd:v1 lfOw?+b PQ zUVVH.x%\ N<+2V53Q9K&*(bHagS }P`m/fFMW$5VeKOl%aSWN^Ѿ:8 lyj-P|)gh0TcH g] l[b~lo*᠟Z\KW͡z4]] MHi6x M Z'Ͻaٝܗ1'bza; 9 B&z_xuB̆ "rjKzm>/ a噬 Tk{6Jl#,~qL"rR&B<߂9S߂~N:; NSFnL2x_tB1_m[;R0^W=IAܫ,,\CZb,W*ns9pk5.ЬЖ@L{^3|/˛037S&ivΊL1gN 5[3<vSMP LvMq~[fh ~i외7'] (K?qc6Ȯ[$GT}&>26k6V>Aet<cԍdR3ƠwqRUa{jXp`wM @'uǽD#t2ȉ,-,B96-'S)ICIO6^7u1}G~:5N 3vhPEO\]gE k|8:>p@yٛa=" 9$SxkrdkDe7֯T}{^YĿo;8kw$G UJ'I76T਴]w3҇#mT`^7i4DlZKLd/!\6D7%OΓmhgoCܡȺ#M&>oѝ"JSJ%[pjbF&= )h ku,:8v.n^w+&P,۳ Vg- AaFJy܏jPr^ 7/Zdh29 d{x%,20x0ju,qwxbpW<萓d֓Uw<|q"Ԩ1jXFjгgh蜑Ψ4RҦx8Fx*v^ Wh/'Iǡ. 8N ?Mv`bSP4vp l#BMQh(✧;ϱB.V(_CJްFwFΞ xM<5p[OfAcV;G3Og͇' oZX$!=n;Ԯ>bV!򧞝 hh^vL<|?gJ#eTF"Q8e44")ՄLʷw e؃N1-/z8se@9l28߉8&m'v4%4TR6 Uļ\JLnH:[7Yx6 Tt |0t)A#[ѡ#Yu-I;%Zj %tAB$^dx&2 JVqbodC;3RgmR^Հ>cLwo  k!6aXǎz6;{*Pl"3\?AMlW@G $͞e?Xd1nChr%km3ӜrM('|FWSrG*3r`/1ճwdCzd!DbTytg%wb@&P( So<:䅲g" nw&{cU( Olkؗ'Ugq :>`V`4^m1=Sz9в"ϼ~Gs $ʓ'T#z!I'w oԢDl:Lv#B $ ݌J&^l೰בv%Oܻ||mH&nF~S=/?ލQ3kX=fQh? >m[72F)W L"[XbFP :[X:i .yP@V(F! 4 =x)t>?6W粭H;UTMroR0LA X2qXA?cw1pT _j-P@tz6QiQNVv0VʟI5LWU <^kRߕ%(sQSX)͊Du%m9FhqF#p~@WP.AF7@R6;G8OV&턠m]]1ɭ8"ۢ$¬쁲Eأ9 R!@VħŚQ?Q8$sEt- vKPʃ^ Ac*Į'!# ơvWUnlQtzqB=#~EŎ@ K>%S5EJ&Ċ S^-?!!0y3?C`_Mwz=z@&>:*9Kd{(qF(kr:h0QKB/> »A'XWP7?ILI KM~2u7 ,~z#ε/oh|H&}kl~S^fdU~&2u#sN]A]qd`":!uMɇ3 F`ւ@"-=kAViOd*Sr4$-F<$ cBV?'V^3nk |&0cG_Mdĭ~l- r6uJĶR5TWTsFfZ<hXoքx+|Φ;YSTr.쯍^ե*p EX W .Ѳh E#Fmo!̏@GX_F).0v`"ND`ݽY+Qtj(!aK  ^ՓX 垭OpgKxtyq`B Fmчو]5}tF)-Rtx/θav)B-1`3[+~L]SPK%HQn;z[zPSJ(]vI:JnRӬՔ()#Y;.Cx:#0dpՔaI% +_ηxRX铞 ( omLg@$5Uڍ4A vcU;_/| QEb9_; nؾnwa ױ,Z'IL$߭!svӺ‡?ۃf%e8O`^9p6(LbѴNtrp c3ny$#|,sRCtC$>)ԅ^4("ĎHȿ6 Υ%J¡yon0U#R@BU%a@Cy KGgXL̩uZOnDߒ;eKQ}ъW(j5 Urq9o0ŏ/)tMO.k!ׁdá.cSQo5@9 oW܈e<5$/$4FRyp4y19Ofٯ$/e]sǽJ? c"@ v—<n=V#ȸ<1=<7VtvقWBJ}(f6O]CN ٻqOzs?~-`X+oWN)tƖ}SPIpWc-g"yЂ~ מOò渁 ˳c}{w^9 a<4t;gB27`R;AwzLzw҄zOH $=,Ĉ+3 ,|p:6 1!V%iΨA% /SZI_SaFo7>f*Q&QXvCWxZ])Pc`Ȉwm y:*>dKAAuy^AtDq ?^X7b@u)!Fc9[<$$wN3\3f%W2מ&ͦFlSL~ڂzxά+Q7?B>a}am,~0WEMXvmC2|Z! >4!/ii)Zӹň#ʦcHy*HR CnզWL h` >'#[eǏ׀?-Fd/ch8 1q$=V5u;!gr7`/e@4T2rQ;q,w ͮ}N45zQ4H1RxPGR'݅5C׈R/CN5R5+8 I=捾ޫ~ğ|}bNG_@۽ne|do }h{w)@ el*.)eLg "vl(x;??ǯ: h*S<"L+wf`"aZ: ᙇ\Eia6J/+ުI:9z+ob:6U`˘[+P0Y?]0Ȕ篑gH:"PW/$y{LA@F vfc/` ܖEa d YqOƸ#XTet8<"zrzI] ް]tdW:ח`j# #D cR:J&cۗ21"^CAJR,R$[A׎PX܊ ζ^~~ey;hkkkL*PKbU.s>ѮqUi\S:evG1/t+PDpGZ"02dz6&WF] w:|Hަ:G6^RxW7& \QHϏm/䌈`\RGp 2qQ=rMqn4?wUVd:9 $N>Pn&-,V^얕C7gݸ/% K+PPmV'BcOkîmHA${׷8 Pq4GNvˇ)Tvԛb#C0ʶ[P"/"s%RVX](nJ驂ɻ?fNR{A*x&P%@`K@4>M:aKhhAݐkgӼܟ_0BSɶ/AD 8өKЬq${'$_Ο#)1rZxsBZ$M~=*i jQ@$M*J}p:-ag2oI!)9pN:@|07D&RܰDvћhJ@9pc^GE ˠT"K{:sgdҠD[RwEC[N@ p΃IC#u ~5 *s~;9(4[C#D(!c8Aoū!γG._6 >i. E[&a+$@d SΞ :(ǟ>xfz K$-ItZTs<\C頡V[ v'i7$ RgDŽ)Hjaa<'Ӛ~:H+]0ToJ)zubGTϏ.e{urn 4aJc%]G/P!,Ag@IzAZqn;C8~x:zo@h1:mG׽k[rg&IWJZXe]IR4ש"P%"G{k=N0Ύ,?3-0Aܣga s8C2ËKrQ$L!uC0KX2hSe Gfճ츑FmѵG/6ݠm$[3<Th@ 3 5s4ֲ]nƇKGsaaMEܾYvxYLS*VK;K*Dt;u4j\b-42 6ę*O+v}ܧ:FŃ. Ӎ6WξI {`rNc%G@ g/ED1kfӝY*b@R "="E4a 1k-gS7sR؉y6+x5^a1N(GXא}F5,8J$t@K iHU)Qck,ȤX~ &pZOB[[.ArZ |VkMkyg(ˁGjU_>،H1r$43^N>?&vxQyJن۵ӌvSayU +rb2w=Y L[:H䄟@/lw!ad4幏X! 42o|}(($.5FP3JM:=%M Me6ْ\A"?ŀRZ.D2ޮu{5y ZpNnUB8HjZw ʪꏪ`h>>eaO}nIj2K7CC:,ԽOv  b͂uavPls aJ^="[Mӗ=ho/nk?3;)Zm*mZ( Ҳ+Yx'A$I~h&LV} {8OOLSse,s h 뵧){" Y\؆X<7AP%/x }VTȩr'% r29Xs#fJw8ZpF,m"mȈTQnU%$wVw0#Òϭ&)XX0 P)ck0:Vw[iR(qөwAÄ*]fQ<=ztG@m;le䡞 W^?GA7F 4]1+}ؕ ?YåOFǀdy?g;vL:ppF=r:# N.lPP{" )=/R"{@v^!h< X̢O.>I9NfؗUjwJpM'Pkx;xǸ%AZf$"7o֑X"nОr␊:nG@ks^huN,.\sQ?L*t"ށlp??xhE]Ja9.?C??gJ2PlħD[^eno$tѪ!:Ҙ20}%aTQoq)1LU4,K6svu^u3;l?A`9?7:M Z#v=֧gBbg3X8SiEm}; o=wJ g8*0WmϬdHﺀ!+j }K2# 60(>XWY(/jH.h&BX1<lz 2qȝe A8.ɵ򴀳 / `B!xX|Z͠"JD ܐjӈ^f=_2W٤DHI㼯E0O\\?Mn ałB\[p 8mYō축VŸ֩5ҏcUݧAr?`AFn.V+eJtǫKф UHV(W-]|g?.>oI,CHU.wEnv_ d# ~i%2 _&eM|>)\k<;*fsZY RVn"ƨr B&6֘Pt\FڰEH̽j;RNO^S~=NbSڪk~vܪ9zi"[RB[3A씫fi*,hcHQ`3Wn5.' ۑMAM>\kRl fr-+E^ ,\8} x=dռ5}oDM(~=̳qn "S+/-_#i~no?dwO %O\ "tn~krj³-ՕEac<7ډfpBөidr4r :Q 8ŊYTnȑǗe=Ta'ܥoeb(3~7}MM,NP,E,Q1(*׍smcu^2mL_&4!<39.H?ePIbD.Yh?88|j07Yf> +뉪IyaI'S'*Ϋ, ZND荤x Q4i9J;P̪[ hu!iظ|2,f#MuR ->:67g qې,sYSnH1{Tڤ@q?6/0k27k,'/MB׉ÎHƵugBWS^9>*Wr*gT+Uv%E\ +EOo<#QpY-c*w%xW,<"<ٖb{yeY ~e\ tR"E%Z,ung*Ok _2#EP a:qWkg ,peߪ2ɶȴW2LeE{%U )I KtL@wUkD(}ZoY"i8Wӟ4v(Xx\P ԏ`Y֟.՟o_*CBx}l7DM}@xprׂn;ӮLݘRH֋{l`]؟Z ȗVXfl7 \k&wEqSĤ#>v (CWVо1ZXs2e`b]K!WRA{T}sX`SK0!,6@t8%Bgv+} 91kGv|=՜Ǔh,J/wp7ᬈ1A$2_(tHiz}:zi #s`m -N=PH}k r~l֟N4&sц砩;aWN3%c*m1? a"{fsbL0\@U%|XѾ9N$ 85X8 "S# xxc<8;=k(@!Z 9=UzFXnG-$!]?l@qW~7[|eƝkdupɪE|-1&Eq&lqrV\N7y<%iTh}RLe]#Az^g$ EQ!l| *>/+bWku2P \QٺӐb. ⭪igo"{dTyU:XkR:vSqxR3.VNW O~Ms^Yvd2N Vz5-2M~64UDe㧀rD**:wיhh*#m|PAގH%}3cN62QުcQۑu` ] #bp ~X{w{[e;N*4kݜTo+(z#Nm71<:vvתBE59҂U-QIm>[k kI̜N\FjG5ZA@ں$6ʴzE79dZO7 B" SS)|ӀP44m-" #`-ZPF?Plf€-}9ƷwY):E K|NMr4W8hYuMh1xhwt?u(!\&ENswœ(L 5nNk>xӅfOeÁ&"g9Vz;>Ԍy1U Pe(Swr1ZEhmi_g(A;ЦRә/$ڬףiމC0b)&NU/O`#}w3>Rܺ X:/Y1*i" Y^QiΪ ނC9صO(+m*g3 {˹eiĺV.PX=+f!A脓 7pL`fK{ۄtFgD.8д뎠>H-f莟ՀPB pHvSW`R>IplJjg@R~+cP,'-un'_} {\#2 :JN}ayE;`7f H<.yx}=ny(+`\>Zӊe!!vAUv%!+ u=O]VUi9UEvԒh HtO@ ꏬvsx{ BrW踨Y+U-Z^aVk;rػY)ti ~bәH>E,g| 2t\}ar/Ty;,8cd 7K|. LZYyvwwjr>]!,-7BXRZ_ؙGذP55ߌ0ҟԃ.oU6m+Xfu1Y'Ykwqz ⥕]鳠 8(tEU Ťz]9*j*sH4,87Y yʱ<}M}K3.G% h(f ~h E9J?;Dh=%pvhOQo>ӏoT4#[CJ{&BH*}׃4-F!$XE5tg7'j*aG 0˯y-[iu+s7 G̚H V}t(!iu}(g]w8`҄p= !tW ʹҮH[ ? -Hl4$ڥ܅Tu3rYz.U"!G,DՖݝJPVa޾G kK'^Xrbɞ}'=8&fd!60Vk\8_9%?TMXORW̊3T>vg69n9!/ W+h<'Z85! |Wy;=xi_>S|E,X6 8 f|%'<BBz(37-1=Wp}HSUpdݔe 7zN2<H~hl7rq-JГVjyo"O+ƥxc'\`ٸBUXN%fDVj&RjDvV (g<^cE+\J"u\MBgRMɲTQj2,%8 @Yq_C{"u!v4&z.1( P^kzEbY ntBdhqa&9\jjR2ҰNP\sũL)2N~.JPv^ fy,#7&$BMf%Q=eSB T=aN#(+2:W?³5Ȩ/Va$RQ변y_7#M\ؙ|ga5&o? Ub*A\elZoo،eZ60bD4:=rP/ğ71t g/?m rGSmy&SśKBdM]w@[ ZuMG4 H SDD{ 8,#t.:V)ӌϗ#Y:lBL)DEGrT56`ag^AqDŽl!תepla6\vZJ橭$r#49wCK| m_s6O47~IøM/)5)9#G1*7QH|sPO)@b5[8 ;ZQn\'Ԯ〞Œ%j+![J<Κl f, l[֔^%{Fe Y>O= Qo>qY qXC¡?gL7I>ZGzԱxMOMk=ueJfHd%6ؓ]&/vqLcW%DX>>P[v>G@iC~=4Ҥ?~k!8-.lt: Iߊ0UOR99bc=O֏?΅о 7ZKv)^7Tf1*.V︜DnC9K(7pm5^IǙsRU!4N80Uh>^cV[7P7ϒ!^؎liu~DQj""ӀF)[{Q.=I3:l*ɀFP ,T̠ ӹ },*']ŚGq&7sIJ !0F4M,;H[0 bo,5&5 Rq)" BCC*7Aķ d>klҌ0Sg rrV 0g= @-J8LxDޓnv>?2D& ͦ["aqB> -?(uƽQMHrw庐oih@5Sr4.Cr)y8{\Sc;|j [ПfCo,7`}vêvԯP M]ɉ6naUqA?Hy6ˮ(1=8|iwǦa{eedD;T4Ydq Cd׬X3U-t|l[B$zZ#k槲)xNƬ=GKH]W7{B.Ъ붑03m>f9Z¹4_*S>nsy *wlDBD6["L#%6Rͭ[ȱe۩IlJ9i(\W=Fy(f U |}P,WzSHE-KMΣ 3w9OR=wl#Pqt|sk]*6`UqaqOW3J,*9;H d4'ލ'6Ei|#gI:`\0[.,#c }9 2KmQde 0Љ[ZbDΫ |Fi#S7k9F_jPŸxIL6}O^:7?lG^:&HS >Eޯ7潢'NAN"G*9؇μe 9)(;e %)ZH@C8_-QI  ϯ$8apAe\ah0u: RYW6ET焢 xć>s<{9F5A!v,ɵe7<Pnll-@{ FM *O3zA6W\Q;>[: cee rRCM6mGTJd݆9ZA8C-yaub'~'9iz,oVB-A'(;kNʍ!> ]uJDDmk%3q^KyrqZ yy¼H^}f64ѫ&z!i%!CV']|T+ÂѢԗXwЁK?c:)gcٳbIۋ3E~7xi9Im΃GGWt嬅mLԲJLtJUAO$cܳ]N>)Y)1cf6 GB)b6ᤈ&(}*dM+Syu =*,1T/fQM(Tq5TΊ%cAf{E!18dqS{H5{ԏɓ..+3:oS-Jծ2I7`B6٪rrZ vr '};]+S C|fU1rʵ#65Մch~(hp 8oD'8.rwcЪ,؉ԣ_zx)yڞlA_̥%wݺ$*Tq]WJmUAqƃso{ZSpU6cxu4۬{"t|=.(ES<̠Wc>#Q[)uca>*̾˃l]Mܚr9/n:S}sQ))vK>WhnloΖIZ4ixUc/Z\ `-{#ˉ@ خI1#]|Zl^ksLj;ytvAz7_728çi#RD(cl~E%%>]gO;&>K "sP!~՗*3OJ V׍*CoOT,(H1%&$'sƋߤF>><:FH\H H~#[?h rV2| -yuBf>`2Og3?sYu!>4\N}dAV`N%EA aF'T~7t X[C{@_Z~wW2RJn7M;X%8PQzs)(d^@:t_pz%B'\(>A>lfz!`u۽E oF(v,m+R[OÉ;W[C╊B \TCmA $ʛ.}(Dl#ǖz]q@\j •~pUEE@װȺB˧Znn E$̟'Tm2*qMS#(a]_Lf@- "vn 8nM]=q(ʐ+hMXQش;aË:}D9+Xjq.S&lh3PXZs_l'Ŗ}+fF~ϧwQ!\u㗿g Oa7l*^_ F;n:A4EUZa~|skr.7yhaϪzVlFђFlb3_EʋeNZ& ̲-Nt}_97lzzYajUVW\,p%r'x+n(iK6փ:C:!)4ٜ%H).hvMBa׉ [Tm`Yy&:r?q̷՟)jIG{sXe!p5[y9?!e;ܝBS`@ SpK,!xܷBYHIL aԭhnO"evl,q2!EUlH&p6I9߾#d@w!_Se[ط4~Ҽ \X3Af"/SQ K&B@ L!?qwsW-^IX6\A%w Jzg 1vH?ҞW$su+ ]7dȯCdCO |lex.΢q آGWHpDI 7nzu0eٮG{q_η4~e}y:RUhLLqYҫKL ʱmwDq}w6&b8 .W y:)jHr-|弍gڨ5Tvy`s{n,Pj/zo:/ bȞgdK+`x3*%T2Jނl^vj0\w };LOJJwՙ5ꚳ?)b3Fc;MࠡLj?} d7(7zqگvӀ.#+FxN(Xy.F^͌9i8"&5ϥ}At&{`CxHc g7׊;-(YMGI,@csrDmX5vz9I1m scRx@ꉗyP9LѽDz3X@?]i_Z"xU]X"%wdA +2={\.T·ƕpA2l:5a scʵh5R%ux~[х.sS\̕oED'6ϼxQ*I ̈́^$t˜+O(Ro%kB/3MKN%ܫ-m{D(:\f9H9y.jKnR 2i l)!(Ur\p!T4{5\ X=#|(UF7([k!oZ5HEpQ^z DrbK!J\`5o=!l/^Uq[0 FJ+tu#-$?&d'mR0VűD30tRKPikl}(io' )-P&=Fؼ/]'-?x2Vc j)o5~5Ƒq[ |iخ<4Y @SL8FJ K ޕ;O-pd %m*C~D4ʷk\ۇWt~,]Msp{ݓf+3x|.V^]51{um%DRd x I+qzĤH1>,%9]\7[Ro҉KβTj 4l.>`\i5|iu[jR]b1 ,_A3KmU۸:bA98t=Y胤#:^Yy9DŽl(dcKkJr:=[kχ25c+Ζf :d0^ZD~ #Ď|aB6ZYo=n }! II:6Al2r66'!^3l%x5*ed"UWQ Kު dLFT.?zkLшI`3!4989I#c0دx5_vm%J( }J%ӓ4SAkTby\&7`4ܑ{Kp4/Jxy#BJN6~mKY*@Ȳ!(0@$"?9G~1+#Tz`|kaNvAGnI5;<2u2l|AuE>3%_ }dYkqbtzBUߺVݯ/fwNyң]n9œ65o,yƇnm.^}-j]ZɓpХOްle&Gv u15 dN)T-h*h`XU6 'IR>H OX(#TGѥ`6ƌ!` iUԑW@ĺ~M04vH;,@F/;cޯ43 xX^,!)8U$K trz?2tLqQm 8d.G 寢rB}ʩwM-K^㦵1nbzIV#gLD DC!~C+MKjvOӘXy)ԲČRYmܞkCH$9nōy3wýԛmN (@7/N 7ܭӟ)Y1V%M8`~?yޒYfv\}H kIE!iFVjc;c>I-^^O݅<ͽ$~۫8a_w4Ia]w`&CcX (fd!5LoyE>M>C1#]m!XsV/i1<ptME!qZ.wMȀ#R&zq0$i{,\KIam G27:šXe-N/}[ ,:@e*DTNZl@0cyiTX=H^=r d'Zto1 + vc0.7Ad7xI&o K5$H85{ #BjxS!Wz!jqxD!bMO^шN$bohF%7mڹ85t}¨_ _b_FvC/|e9YbJ@JbG*s1ƇW~Ѳu[#ӎvHzj<c|+S<F}yW ˲|1kUB|$3uV)(\a|g%a5|ȨIaQOmj2gA&"u9k"LՉqP(Vؼ!RM>1Q³caGde[_f"p}z8D]*M* O[Qw'.ʻr]~ADz |A F$Hl0{ =V /[ZphvM!AY o&d6\W[Z^4)m>l4nrdz6&9ݙIfEo!ZO)!)kxGqڑ1!lFA&:l4&< (e/Sg݋BkZeރ ]]epVǽ euz dvMWJtu.^zF% k^F G92@)k0fF#Z]>Nr߯1/YR[P!2nHI:-Q:-Rd:yE&Bf~g1̧Џ=uY\L{d%BB-1|CI5QfoQuIϲʈ*]#ý鸉[5!Wۇ,{#:¦EXM I`{'Q +nUڸ9Ŧ+ɲz Y <+>zD^A{-هsc v[[ pRg$ a/M[{Nli^Mg WW,OXזvSf^t|x4{sS3:@*vI[Y|=AwAT &|M|QB]>FFi-Ӽ݂xɃ:sZn}*# *:o~šJ{0ܿ^ ;ȰfGπ|͔*t-DD&j%j]MT}9Mxk![0fr^qcPDD GdFwq,eO\ףeQsgE'$1 2F_pdUAJGFw5%5:xp Xٜɛ$Q%zHջ _[c5%,%Xjn4h/"j-RQ!&$E?`XvK"gEycg1nw)-i&qYiN.FU-Ia[(YF">eQ[>YEVLƨb]О®HAC4\\)& roQsdn΃Y)6[07iABX egslQ,*79%0tHfJΆO?c*t_o#lRdk4 5X:J- y.sdR|w%r7vls>5^jk3jz!{)JíHs 8s7k9w-EL)#c<ے_*r j"\ fwHIK_v;[z>jlF|#6-ҧFܛ馆h휆q%s *'&(׌P Q3m qԦ޷IFU# p!.V^ٌ#)rw}/UZr,xe1@ߒ೦pe!)<}9\xj>7 3xiJoC{̏kKNӦQ/e@#=uh,:7mVq).[MY%nٖI:Q 0|#ay'ejug|FS%ݒ"/i[i79ͮqӍCyK٢Au;)clm'xReUO|yQ;&_j,mI@Rܓq?c+ieko= ! lD `߽/ Lq}X¶{,EǂPx)k4Ѣ$7X?*@ظ^l@)Rp35ɂGs)97#"t] 8m r>h2 'ʲ}1'EkukSqjKa ֠mn\|ϑ3S,C1]:"R_A҅xgb+'Qz'i9?qUJ(רkډۆ~YX>CTxX'cF=Qi+&жprV%jL> vO-Ƌ)" / *Iu1į|@[n 0bj[xa^J6ԃ0u^C3(= i(_m[ތ!Dv:VAHU];ٚyiRQM("y\dߞ 0$?)Zxggu;N_Ȫ~Kxnq)6['ڱY"xu1Q@@l{J q~,CpȻI{ ixKbJ~9un!PŌ ,U?Vy ^.Ew#OctHTRU/CqP5wU,蛈 G2L⥞z*bY!xבvHu6b; o?ze;2@Ӱ$8eBj.fak*@\J`);~,n D*IP6pH Q BV{@ j7yv8?0lzwK]oo3|߽68 ғLaNJYj( Ì$,esԥSdU$`sWLJޛ=h- f!Z3\L y99{+īc3tq5K/ٮ+QrOun:Ў>YݽZKT9Sfb`:b-Ŵrꀼy8ĕ[ueCt<(3/P,BrxY Ffq%bR$DC~3R#@7"^M)cIߩ$qa5R*&dx6}ߩ-P<[Ml%ڿY‡ ]w'![otwm#3i"~ƮfSm3nyQ$^_v2]C6'rC4y+_Bp,'3~5\%lሀfU~kft?|׺,7 3ȉvA ~[t;׏ߢ^%kAN=UտII+l]!N9ULrϷr Iڪh/`22ㄗ,ճ5uf:G"/B_1۳vz`MqZ{D]2@8g ˑ?_ٿ/.E"e o!=n}♟Ή8pUs5EPfv*89 [ʴ \ҹ N#*Bѳ܏ \#4Ln5tn8'H:;sely()%z3ftw3klKCgM:DxvFK_۶?y &Xc4h SEJ̃L_P:H~Lչŕ +}]*VvB^N(AI.Yp[r1!sq4DQAvv;.EAw>$CepV0ud53>jTP@rc\Ҩ&2`:/u)!Bqm}eB{A8iӔ(@ʷyM "iſ5RNynTGiۂ;f0t1!ny~ Xmfϛ|-VH;7Gv'\'f}ƙ ' k0V@ Hn2SW}.f N'LSuK8dltbdPIex] Z5U~eb]10L8 ^>9 +9b۴tʻVt(b-Á»"#LgRܳ]i56mopMG4-dߠQ,gLY2Apˁs[ǧ9 * 31cY&Rvx+\Z2o醀ʔCyiIf7MmsWHt,k, T R\P"zGRqdsVPɆi~H^E_ml|tβ3ZNaڊ%J <%VS$ޖ+>#9 I?Y,Eu+}2w{_Vg%Ɉm>>lx./rA13U#KN#2Xoe;⺷zY(z;=!HZWE A+oV=!lkDOGg4<$tLV ߬5QXYF׉ZYkJwZU(ִ` C=AΟB8J-婧l^FD08/ЧқfK|.)N~"(Ea:l-, $I^i"@{Y9#wtFI3y#SM' S} -iXȃwLE$r ϕ_4M!l`GQM_$$C{2K)n(oF EeeXbwCIJ1vx̓1S2%u{ *NA,YMzq5J{4 Ú;KGEȊzd%*Q=̱#{K(k! cJuryv(`TU*$ n&sk*U: VIF\&3_+6poD4{Ըx?n7V,h^olD[s.Aχ$3ԥ{-fzFJ_xe? 쀶gEH[Bt'y ]T4~jw:b|=ffY!Sn'`1d>O?!ԯ){P(9؟PA6<>%64cKɨgmМjgP mC0p7!8 {lF#S)~abH]3_ ϻwO4h=z<*}'op$ @Rq2r1"pn U '- #&YռE#w@81%ot.s6MUn-t[?(іgJbOWf :cW6S: hU|޽~< {\w退R*ݙ\4toNCpX"ߗ"ZܨRyM);Dk.B/IA0x!8!cS}bX_uO#nd`!u2"߄(8Y#ݱTbUWz7T41*׭-c3ysnJnȏ?id %zU\4  ј<.Y/kg̥l ʿ C̻b궠!Ic\;oWC ˳2/eUc\,usS]:WE-MiOS60O%_Ogl ,圉RQ6&*6빮0𻱏Wx8-;×qǮ.I(oudza4QYf,rx b.I:H xƙd?4]1+wSt$I.ўW(MeYX/.k:SSE: ̌{>"^3'z5NN';bWu\ u!H451,Pqs \t-X*Ѣ5΃ 6lhUA+i$xav5E5V 2L=`0!FGQ6IDQ0Y6{xi01.OߨVS݀~,&&v/pҬw8!ܐC(0$E !Fgj,rb^iԊOرbuBP#Empg uQ_[@YO,gAN奪S^;u.$u@M-1[ OPܜdɡ\K_Țd@WB(B7/LB'h>vm ~P樿{%|bAB>,_@zѱ9b1ɺlf h214{Q%B D`6A 6ӈ4DΙrsT8nbu#:.ცa"ed{u E׷s$8x)P%[GZàT=VS> >~ [u"ߝ:X=e+3QR$q\"p{O1?~s C@Qy@4wE(`K.Ďs1CXWfMgSnq9'.`+<1CL tw %k}䴃.&(,b,2[๔q #fbfe7FVsE,n!5,+Z40hפĵ_#ЯMy櫽lG̙ɮSʝ$3iE&G7j.o`^!ڝ^#$`WDU7]W<@&yUS_ղF%嫿TAq~A=MV s,9dT8;(DrVg,Egt(t eKҍIFsqG:ԯ-ZjlF0d'8LѼL$0~<} j8wv _pT#x#tL#G\FPqQs bPX<"S3݁q,RڏzZ^WQ~(>i͖j# v+$_%/zmJX#pyn%5K >CGf9jfPms\U,{llmP%s⬓Ҵ;C3zi4 }˥*nT,$Hdlj "4ԮpVj . KBό3,Ri%S$૞Cx}roӛd&^ݷDN ՑF K! /99;o#SMtGn9$#1ef, fW)2Fp 6՗]VD j@SJ>'gR pJ24܂w\crm7E4Pl(V^fu%8KO#;$iT_C\GqJ$[=fD% !1b͕X{1ZkD?b"à 9֜*5P41ldoDD.*Tk6Ie7[+҄jVɱ15-)W}J\ }HM^ Sr1X>7*'Ð%\tǴ.!ߗVF2uE훦Sf1azH5":u\S>bRY/]5Գ3S}{WdTvei0t %e>WXa SvʈV9Y.hࡇI~]`$rsyjYei+>H&B]B۱fN@g/A,8DOKX;Q*$>:|">zjr. 5׆QhiD&=#ΞC>]+R@3BEP!3Z,\wXGa,V*!XϴPɶR+@)~⵺ӯ]¥n<ɉF` QӡAAPdm?v IgrSOϐޙ[Aѝ+ҁXatj.ce2OCْ K..Z%S83;@ܜ ڍ/E36)L;z,b}R6 uG[f+}zRqP~A7p|ycz9kap"x.PF&5?N3"4 ޜOhd@KHԯ41_IM '~Hbݛp2 )) MflʃѤ!2V.]8)i1t.DfzH9bW]D:RP^AA^QX[^z$-;8e t e<89B0Ƌc;]62hjjCW!Xd%[KQ||W<$İ!{zW8d>eǿ)PIG|h!6&NI=NK:r]&u 갷۠NWrkc[5ogh7˞7|c) 1*E͛?Pًܑ&Qf∉mQ|k00KGv%~.](;ܿ#B|΄>bbΪOy* 7W/eEr߱< uu{Ws gEč7V9_]A,M~ qw*}x]y dM[zQo[gkxq©oK$DMwygߊ*Ԧ|m*˴#EJyrHo #ck?Ιo%KryUHvhlEשJ_F#so$حgECp2c6re[`f#a + `Bsi*GUJuIvyuudre1^0>3;%sVR.9$L4>t-zп uC7N$QYZo4ZKx, Oϵ-5/Eck|+ϋ9+q[s{< pňB E,["ԫ՚;3tBVgLu]Ѣ;I㺳^GI3oؚA8)~/ﶆR켞 cY걭7ab (?{ZZ>謈 m\y(k8i @Hva见Kq&Vw hκ`eV=hTߡGv A?9%CO&i,oe9| R=@LQ{uW.U+9m콞-$?v Vq0+NrC.EGcCo~WRC8j<`4zWZHy*3r5u)Z Q؈ģ`r@L'dg V:WBOWw:!{27j{ݵ{xLҷ5g-?;73M1O1Zbe4IXkB N^,dzirw14Ldk̜kGpHbY~%#6gKҘ5Jwy(`:,Nbb1Jo BmIqaG$=5]~-p&W;ڏЀ6-i?ŷC ;n.þFw%5ûp穽kª`]'%oxEz 'LtXY\&OREX=TF9=Q`.3i gkwYّ{N(:"5wzt#UvQ'k (` C7$l,NC.;\2&ݓ[ )L!E,U fZH]% gZ [&P*[z޽5[ ӬЪ N̤ˡ``k JF~)YѶL9nOHP Iekxm܍@pāgI۹6cOļѡ ,Ln gsJje%a4᪓>g{]L+s_< "uyǩp~ 0L6)ܧڮ|$/zLtNÚ %[LJq9"dV*[:Fx |A1KPq}9&zn\Yۛ>vN5Yl2NS6pnҗAoYE+c)aHq+~nDބ,?9#.`&ZKkQNhJ!XYtJO3`ҏlC ۬Ydyf%<4a@{tf7l7k'ZDAq9Z^41v_09XF]J̴"Ճ=,GHhn"\^XX3,Ί.&b5|EuK۠n궼xEҎsH\̣/漄͆5ATl ;FvD"ˈ8\dw1O DˈC Va?@[i鋌9x,b^L ,FA@  ~EN O>g[oS0Qs*沿f\4jM6M^LŪ7j̮QGOG /ӈ[7U.Ƥk $cgLZWHUiZړ'r*YM\DuB?%⃏WdLTZws<}-FR,vǻd0w{zxYSS4z(p'm 7$ {,0,L,{oכr%;&8)+0tm[;l M m׻'%RU:5*l;{8LԓWgm {*<KF%.Njy-5u`WղGYr 8لݤ]1Hث{jHqKc"8(dZq ,YD$*/R&ٙD2&` %l7}HtYd:MU`@{O tw|i O{u&{#sP"f _ idv~`l`6%z2َM@ WFa; zf (be֐ͳuBtLzAp }$ڠ;[4=[2YQ^ .g6=qQyǍ$Wn{۪bJycP@,κKai|N.,F>H P鬧TnЖ_۲ՀE7s˷T lǔ͚m d`ŝCuH$pjAG_t4: I2y8vGms;.êRJ:!},~I5R&Nd%F^ŧ^Wh3$a%y30ٸ&%X3Ю/ `0MM+!O-!\(:+ШY1֦lMfrR+Iה;q?L`[,?(0m! I&{(G:\>I%~"GO]Tw*Qrfܯ2c ]E C/3 ; {6E )'5BZ0J(7!.֔6 xkhCv}-R6jik[a 4LMژ94W}7&aCAPbOϿv-D ;|y4J,cԹ Nv^B+oFq|2&>F]iN|m rp.S^~cj~ \AIʍ7{#pt°6E~fo \XYR۳i{ݴXCp&Ff.}R,6O}oϋmmϰE@SX"A&MӬ5]Ine Dҁ ZXw6I?vN|rYk`+:& *IU#]NG ρ u;4XJKw&<}־ڇ,8Vc5ٱ:UN"s3* Jt'_z^xGǵPHJCm~ D=U苰o/gt6 WCD">~VYvSUre' _C+ƖT~F\gXߺ]_{3 8կGq2n$[@Grw-)i&A[Y@3MjMPlQ| ^#P" dbRÝSժ]N?\4{$DZVWcw Ç,s l䤌#nzXQhθGGȕXz/V(CB|?-ԕ+g $V%^C} UZw7f?R5iy8, D1Txq]a:m;=t~$%R$YuDM*lS!WpT/BLï/y{qnK|Gjmr0`]U8snxҟ`>qNypfM[ڐ:1i| Jxn{8t5ʮT0qlɨoon8>*"I<0 T }EU\nϼvgKr!Sd3uKZ5/Q5xx%gG`x=-wF~H4 髤A^ ' й'E+%t+<,`jGܫxt 2Sqjf֒b0Z&B+wLM~bs[hsS4 s7^tp"i^DjP BL= Cw=Bn5,sqQ!x{*D*Aנm>,!-e|TەaUw r) so0i®M$UjH*mqS&p=Kߝq//!tm45D(#`/X6+S/I@wEbxNOD(nj]W'5'83MAb7dlx)#er0~LTȟh]K܀A]&Zݞ4<0g+u S!-^2*H*F騣i (+ӃUeH_tRXq3TS^ᨏҹ[Z:ᚙBJQ~kk BX߬?n] N*5YP3Vvr҄vH!1ڋ #T!"ɳac̕QxgxAkV;c(y&dߠrN f <3w,Ay\֋u) yCjyX*-YKmHOW`Vc] dxk|;ڋLc뫁M'eP\.yD+4=2q9`mV%MWSKN mBE + 7cOwW4O5f;*;f6r x'C?*eY)lJ[nxX2Z|B17ۂn9L0K L`Ug&!g+s_C<8.mT@nOw-9PJ\֝KolᙦR9nSGDXb赎=t.C4evP:iᝌL6G|v;"xkkNdR,οwmG`Ija=,B-WY̆R9TQRÅRd"D명P01UNm2&k 3t d:/(B+VlF&| ׌;o-i77PV=;[/5%n9bws)H;وwOd8IS~js)jgɑgя>sDJ"7$i$]) %C@&~Qٶ+{b* ^ű.m4l#s\ NO(5UmaV Rfb4^5`5pR}rݖSG k9}C/]['AӨ$c"QK%ק," snrfw`2R;|V5JJw[=Km*f{Kb+.R=ׄ_i/ >f#@E01mfRٜ1}fbyT[zt@-%㬜G.SCteT *[K{兗c84p( g'GW#to?%Wp0ˌ4`)Ζu׊T!"’Z}8ȏYܙ/ `F>5N;:G @$TM ^)H9}J]핺P}YQ7mU D49de]keSƂw{kҾxz{4pE^*T f] Z| 0f5%7sTa#e+oPQZc)EQ$Q! 1Y,atge1Nfk`(k,RFȩKdo9x oS_B9ԈlpT xCbA, 6Ԏ{sZOY}[.(-v?mVnuYܗUq;iQM0jeVvAoc 'GѮa'ccBj> FM'cc[_!5:U &p4zӜԅzT)ZC='/>kHQu?9ـNNLybfeK/G"Bqy$U;784wR> }^ DʰGG;oܟ9+x!\>jA7+E]N(CG6ԩuRV ] t=a{f^% TV;@ٺ'%2w#6$eKML_{rXl3q2[&̮d(@d[( 2+gHYvx"Z^i;<zR##dbO q*'{՝FK6ŚMk\O \CjmkG?x4 1Zt!504hmvg]a5S'J&Qh—- ?epjۭp/ *{ZYa&79@r&u 怱?S8teg* δ?jk+xOimڟ>]hJgĪRTFڠv?w\lYU ]%&x֌>s 7[YαR-w[ _FK EYƏ(z%b;=i Fr+DU,Kfxڠި Ie8>:]շtZ U# [JOW *P› Դ+/@ ߿}6: Xñ _pφc9&OֻA)rBA>TzE#Zb'jcT3d@oqG7QjȕD7-"tJ_ezjj4W(գAz\'w 䁇/^, W"~}a׉Ukǻh{+IYwEF1t[b.O[c}O 鋒\#v?dR%5Z;"d5+y;%) aF-1+ 6~Ҷc @CJML7FiofhgW9o/w HYJ D9w Wm֛c^wCZZաxpTqYe1roS|poC8u)+cؗE@nN4>[ xT{="|(}ž>~/BR 磚{5|N:PFE2,Qݞ;ol d1!pqk#`PRIcҊAW+lSo& ifQS$\i7޾ƞK"TqG}5k5rǑ-Cp˸ iҒC澝{~|53^2k_+Fqx̱z+, |뚻RtDZS3\ЋZ: k\tie|`谿u`n^ˠx^nAxԲž #> LwTg ]bG>HV P#=z[1ƶ,<*O!{w*װ+҃CIpضTb w&z*vѹx@ `k X2fG0jN4~XG=P; C%gAX^AhwI~FBz%i5RIU`٩(眈Y=Td-~T.Y }RMntqpWXhLu3K7@yC<I G;%&NI9@l$ɘ^CsݯR2D|IOj6K+Hk̷)r~)%γ?@O*Io!DVPݎ^暫 R'>@kGq ;!Ĺ<޵{KPz3in撆:¤i:}2`q :@\MSODTP:I #3>MϾR%_S>-LU&Gg8:h ꒰7PgXZ9XF8>/` ꣧ tQ7՞R ;gQᷢL)ul8(Ȇ5u. ]ڭ!84멠dmpdQ]x5rf`p: F5g3Sy`'!.`C"j&aC @`z,k*WXq*0ccȳh'>?,|Zw}XQ`UY)?+reTlpAȃOG{OɃ#[:}blE_;Ѫ<&]=ÕAJ0^4B~?[MCJ@˹HtJtJ1r#*ew^yϊޠh~M" ;j-E+l,ƎvNcܒ`&}ҵ4ӰeX- $|5at?ҏ%# 1Tm,P*dֱZ~~MCx+Bع6atz0+4,p<3H;_3a--X7`0*AA69F( »i㦀Eqsj[8>{,O%#ގzrIʛc`uc*C;&sHbT kDS!վ* YT)7˨w<#Q=V-vKi /Z\dRD~tR#4lkwδJCЦb,L@K&1"9&-A>̭۪7skGIkИ9M+SE3 d4*u56^ ֞2DQy?aD։0]6$a󻡦Y'!NOBZuـ<#Wٟ#H|)l∣s86ļG|x~냷oқ0(e̲$֊XL!3PM6axSjMpy|dBذ09tFVuGOӍ;ΑE\H8ۦ,qs'h1%Tf[h揱y!D!e] {'􍡇X_Pa{!)=L#=d^blٟ_^)fSc[h)3o@خI{.>K> G'BU9N8q;bia /~ßIs"<e?BpX 5*ٜ'Ϫ)kF/k#mK @}E K}=J}j# (Qk,REmTȩ=~s֭mĆu?06E5ъ%G KIEG6יvxqux Uy8H>3 h)BILW:ۑ4pg |6E!4 'J<1InoK ާhCe` m4%{M10 pr6qH,AO{Cl$K_cMY,&Ǧb[s: ',~Fy(\qzٹ5av"0?5[2Y"!uj5mȋ`TA+R􉪃boΧag֋NUq/g-YHjo>&I z¹&ѐ=md49omwS^v#X?:x7t3KrdotX\ `Eu[|*Q5ٕ\| hl>d]4TVa_`\liNW\rHT/a \hE|;Uf2I1n^B- mp[^ Aܠnu>H=h)Slo$\ 2Ud5wSQkU̯9kp9"E©WAll[Jh}i@OEFt4?zDM DЂ~>/?6NL3Mt 9ɡCQR".oQW-ъkǔ0l]P3k!5p jv =mnSlޞ&(tY# Jog["z_ǒ0 =Sɕ |DpO &y|QbHCz)ɽsPDg|X9i$sq7*nA*~y C>E=y'ţ >6<4l!ZzRF RrZh8.oZOݤ3>C!Q^qTHa%'ܵB0:HlD%r󶔫`D~.JN sP~O2?%Q#F3|'VRW},f3FJfJ!JD>8_ YXЀTq̾WjMm&.fQ :yS@Q+I&fmw[jv2BdQ. ѷFwt+o\HRSsAu&GM:a2I_L^'@j0/tOXVvcy #o_EoKO>x=3M[Yw\9EԘ(8~SD'^"JyjPe$Gw5kZ3wŶ75 YC{sO{e4zCҐ[4o*?\/1.7W{-)i(F?N=ݹq]K;#9JǨ~:틅YINhZ0_ի!DIţ[38zW f/$ljexJkBZ7Z%5LLoN`s5sL.{-<͒ȗq `.vO!V&gd1;)2YiC9=Zj]U/ 5pzyfNJ?g[u/`x&a urOkjlHBYgI0=$|HьR5ԙ狪zIe-Ac)d#v ;Й20 !t?&y*!zЪlX }DX7s.乂@C"xnc/!T#Uk&H g;*%̄(O{Gm{ (8/prsP5 }oSd eOd5!*=eƸLiT(x㊸r]!z4(ǽ3TDJ d#Ȃp.##B|~eѼg>e egotG!Ӗw[phC-,<@^bUJp 9DBIe"{%P5`J?0(f[WE$;ʁ D/ YMǑ1_PVmz7Ǽ= ~A#'KKtQ} o"(tJ_ Ժh,M+Gº sy[fC0~Ij>,hbvIH ܺMHW2i_ Zl-} %=V׍O+g)dRQWFI~=|3dQ2FgY3h5[ttvVŃZC.4Yǣr5RͭiKFG9RvK_$uG54Zo?jeAx8if/p\W t Fؒ (:k#9ODGx`n$iYyImx DV(lz :Ǿ%xFi,IċPyyDivpmO&|qF{zh-k|Zgڲo}wk# EjrM)Ԣl~L]q/幒W#}9㥹?zW jķZ^ܫZq@E}%)Tnj[hSOu?Ţ߹m%&_BnPب`R,b>gE@[}&U!)/,CuY4~KDg8"r;-Z $t=I:F7GM^f?<\sIO[Q2DD1.O!2&1m]BFs+\)~}<:6UZc'A)DM`icm  ꑴWԗ7ij?Q›T({Pa~N}_|t]Fx=۹ӷk6?a\L2' VeUMLҶwgc ^38.kҾzb~EEh7&@Lc\2r|-~ThR^8Hfv8pEQ[M#Vf{y\sx?4Pǝ\$B>> Ρy4[Swڢƭ}--d˿k^v\UqGJvj9̖\6{:Qp23a䇍.m}Az&+c2u͡KڶJY*{8nz O6 Cr?qyY>n 1(^\ * s* X0 YnXr3l*2O kr.k͒ƷEҠsbt[ƕ%([1#`,CfZ#vB'W%]y<YG9ѰU4&/ʼn! F-P5}z.cn䢀)4ui-߬g+ދ5xr/a,~Prc,B. mPpfk_St5u%Oc5y"@XI^"U*DW% t2Fl t1hGbic^ؽ<&Mg1-qʫi'R/4xVڲr>܆WTFdAZdFx9;qKNڹ+귴,*dIV E-Y MdYm5v2ĐvI̙cstNiP1^7h9aA8>4=Õ!qj~lih\o';!u ]!Q!Z!.WABw#/=֞Mg{;c̀ U`R$Cq%44ɚ'ϨhۆSg% hIi^Q6X +ˆR*9À.2G"`Fo+|pD:"Ƞ\})G0A&|&$9ғic J%&OUC!t[a Q 6ߝhb*^O(/ q}:j> ,b(G,B@V&.aH 4vl͛bЇ!'|fP Eұ JhyΠ*Ҡ<+hqOF\1Ù> MH%(X~jlXsIH"hCY{(fD#=yb&tΆ@l޽XZ!Ȥ2Uu-\\jNBRJf9/S6Mv]J^~fsv]UwKYMI_8װn.=a&hm;=R+9ڧBZTɾ71Y(%4r,s:xzthP܈ |$RR}}|7OjnC9Mu14(LIjM|DLk!hP =nQVuH< ZԊ5>xTң.8+[Iwzwxo\Ɇf`y;1NJZJgķ/[ȑ(UlwRGDߴVm%xyIqЎ,+ZuTh ]tO[^Jpl6WJ ć&H)R7w|SC]ʀC=10wul s/96(3q_JC^T \~FnJ E{4BSm#C^I&,r@UJC;f?)_63Xq5)J?!JYzm>kgLĆN&➘z^u; >E:7(ސrV,5;ނ8|^T IG(\ krgX (p| FS3nIu[{+v†hfN`ۋ?uHQHi<~ UcX4nwͨ4bSn=~'aF#D%1.֍]hMV0L<Ă1MLȖ%/^M}\D_i]TWY+c~t%ņU:2p|'{-]Yak noMzH3簘D[6=ɳLifc89oe>{UIwGÑjS=qdǜ<&*r9)y J$xf *WCf\CeYhiL:Wkj- ԛXShLF Qb1TL# 7TO^qUl2on-"(.6<-M_Yxy4gc|]iV#0>Z5+[Z=}XgV?1q H/4쏬l''Y&ӽKi{" F |U$F~yuEu"c02#-`1%yYv{+q06BI? G5]?4 (Fz4jihִSgJ9'NR%z̉.1 Ք*2uQ/~dj>7d,Hn#I~^02$a鯅>!l)~tkg:: l\e&zr};~CMK| *He6E96:lZb5xvz/9axRBPjr?5)VL Q,9*%*dD% K5DF5,]~@=Lv,}?TPqLQ7J(_ | A0SdA 3ښ [II gDp PM|c/ؙne.(CgT AkGɴ}Go]"fs(tAyrZkuPO<-5Ͻ6Mow h[ kҚa".B%]9!)1ӝlg*YlKYi\ez.{@. :2q&4X3N'EϣH+X./$9iK8OmS!.oNZԡ2(x>NHGGaˁ[=Ÿy6k`7Bﲞt{9BSZâi{~vڵ3g7y6WBk<]U>]$ҵcң0دe|a5N3asH RSH xJ7Ś_\-c6wNdCg˥vI^\Uy^\ٲ٧+E>CRɣfm2X kl1ұxB-5] aZP' ?x;*=ИGMmoVx BN;{}tqk bzIb Օ8ރ?Vs([WrdeEKпIq&/gԍ+*=+ǀfyc؝hK rUYh[}yBɶvOKNYTtDΫ_Z/2;)-ڮ>fMDIƦٮ68?R>K®(^Sd>L_D,nmc X,p(_үaALJDBfbzŭ),d$TT7TDGD$Bfu0pS;\Xrʌ0E"'J+KyTMtR(,>oE,ֱ ge׮`y4K )9#.!\qڦW|'K >.$vOuKMk\$YO>NZTY؆u$م."F]tl..8=xe;Lep, R. (YJNLKʌDC@&=r1˧qҗS%u4~{1۪ 64Rk;W?<)VZPB$ؖ-$'r5"o݂Za>l7Ճ%/~7nXh۞il^P4yg+ U~4Q~>>"!k3kiNqǙ<=,i;toy7{92x)ˆ9o$gҸ~b_5j"A ڽ \y]2v`say%6a<|1 3]5at5_36iKe\\/f.g,;Jn"@jr]@pNY~瘲7%]Ӄʇ0N W 1c&;7.I,薎vH g 0v4*NoCf[$bU9d,_fe)Ἱ)QoJʀ̿-Y 95_ lRVi[Uhz-SVivf `Lۑӛ;<#|9yHiHLX=(] I/hF\hUj$v]xCr24,Z%mwdmI_Jmzr;^*KJoD-<$_F@BpnL_F/kޞkaK:w>t AZW4,loVZRNeKR4GEt<[-tX;3'Q5sGb8C)6>1Nԇb)EO%J"Z4:Ye0=$"RL[s45@|dD4+Fpu(? %l"{'.s+%6h1 #M:s VgbX[oC%KJ̲*Wӫ* ^0!]G"|B+AQ? h3 izvzCݴBE/q^k^N *bDUd|a" {~!T]턐A֓{+ M:r:@5 C0Lld xcHʔQS$z8D/ϯ.4Sg))_Mu! @;_Xȃ(15.vY"/@r^?2.Q%yt!(*"g7^gqI|92Φ@!#+[ 27+`H%e+Z }Y}CY~ '6ϪȹDPɷ8lUL|T@^r s/X1LZXfz |HgoTO'l]}HIě51Эldumduף `R;\r7Y&Z*Gg&!!,Mз ^{vk~iMsa5p0ɮi0kG_bB߃d+2ڛɠ;p :g۷Ɇ'DM6ߴUھx>@m=YKIֺ@k+! $Y_{QB<%`@:X_QqNH vaL¤CavU.cҜ-bޛ`@^CWK7*n߽<RxJ~ /H6:Qm%AB?Y ]3?<ê;eEtP1lЭsxmn^Ocle1; SXi*WI/F$Obھef=Bvդ?溡>]=mO"/*@oE\,Q*l`r!9<;/+ 5̓~+PU|I@s8Ӑ!dVU)J\v.E,J&V#3iih s#Qvm[˓H.&Bu}x3CqW= .4Z[^䲬00 ɎTE{*Y5L}&!^j{|rè\[9/*#:Wqddu}:R˼x9*YK}*xŀq;uP۵ծBh‚<1 C}/rpywo>.n a8z>FewxH#٧K?tYd"Y{La^\-j+R(p_L_WMܚjþID)a&}_%,AN=ğ<㛷"X1;H0eMJduKEo- N}.AD)bez&iM ]ZFV*N o5@8h\Tb'?CB$j- m_C?:-EiA"^Jۀk m/GEQDC)Hgm:`Vq)$Z`/ԥ5&u/C&dmd,yȰϴ ȫ(]d7.8ΥC:Eq&j/G͍CeSD=VHgwK솇y4x{^8,NRCU1 v*ag[OvCoub-(XWTOmdG?}[ z輾6:N>_g [R-jX6FВ/7h378ʬk*tVKdӿ(FX0},8r<Δm/,m8j|?i4#q/+/, (PV\7/d,m6*)9'wuu`^&X+fh pwGFu*%h|9p\W՟'eГ[Se8h|nvr2y{c=yLܘs| *M~|-[Ex*sdy'"c'˧W+ ;T.#FO4;l%2kl൫255xe3QDB/X4+F%5r'9I.<-OCEᏅr>] p1x~! &.;~?;ܴQYP"}ŎG3\9@}+=ݬErSk7G-Fv/wlIEgtaߒ.Ȩ%H}+P+cŸRmEJY ;e"K9 L 9O,јr b&rM57%Y-5~9`SԎCˇQ h##ZTve{ d;Upr `[gH#̢Vkl),z=`Jk.SPKTV 2~27.e}I'r6RW¤xSJK> YjFYh誛([eנWo!SIV>t"(՟ KqmڹB]w0rq̟lZX}KOu>Gڰ$WkDtֲnҷSi-븕d%0@RxeKEmHl(B&F2VƶB8W:@ڹ4x7[C6 aa-U']{Y ϥ P݊].:n^OS&q<"$$ ֩~.sע^h>i"f5(YX8Qڧ/YƠ$*~1:i€n[sek׀;6/3H|U(\TD5[bCd02^%UbuP))]}73oNd쯩Ddam7(Z{ބlUvs4Ȏ{QXI[pVq ڀ_vO8ϘM.KFO=SnEG+..󐘟5b Cd!~z8xV*=ӿܭk"xretIz3)"&zZlT(*r3?;e YUHuHg0/O xAY~ #8P ؒMfl*k]r NY}wr0sOo((On%>9:Z9a_ܧIB>]gYwe|(5RM1lz}D刎Nz; ќ`F]?c]d̍)jn{3[g{є(D{m{XHxa.U1zv?0)nP1נ0CR {D#5|5mPxZ;   [}VnU/ߤyh.$k}E5یojes,]{Ie*/+]Rmd -Ovbo$<z /*ίD"kFKRCJTŊ.l ([L@K|E-Ǽ?ϲbv'X mLC>v;'n }# jUOb2DWW E^\ ]0QTawo^PPjb͕!.) ;pVocdvGdڰ+rW*pwiڵZCGuaF72yMm3| l̺ (ӈhl1gA{p!|(/%K5w{NaKaU :ӤǶB^/xXydpe'{DHJģUO"cQL]xEw|d3e]NR5,Mp䳣o/{SPj[g;s5uyX4j.%`T.xdOѵ &J|\ge;{ u=Cƌ@@ʾԁ\ƻ?l5<3ǖytcr~rvңdžXnسL/sD|(7|||5}6<|= y,(a7*]y$-9w"7Iܺ;G_"9TCuDK~<N92s[RCczʑ uPJ $%&["GnٛOi(h|J D2- RX/⑐c|km{0>+PϷ2{˝*} x˰"ʔ쩧Bn<{bzxC܇},9 E>(] Z~U+m l%m텇7O 쩫3{07=O<<+L_|5Fu2Cj$f!_"1㑄;[lF- &XR9w׺/l(7t^'JF"*n03A|y(j8avr4&: PV:9DZ FR[g}{Ld8k^Us~Jf!raa~ݡtbHeǾ¸[DMKӠh9rJ! 3\q%$scZGxfM٤ȡR#l_KvUTbu 6e+#UO]f7 SFY*=)o|J(cơiֽs?5"7ILb:@vy?/r vՏ/NJ8O)S{/ty:$ʊԧ+չhNW$'tnJ✲[!B,(Z-KRg`;斆$N=A#աs71i<уd֎~B415ի@[H*]E= LLOۮ+]==N/w~bn3}92~l9kP++#B.O8{L:sLVd*ERͻ ~dֵO*YZ< sv]Յ qW5Ws?ld.W]u^70Twzin4i^YXk\ wMKp=csn X{vWBzIΰpVlCbhUqj ,G5]3t;3u:vn4mhgm_,:e\Z뷿Dxc GA.3vQlNUFOq gU)gI׈ark\h t7r)8$F6RvB`\>t ,*SLxoF}j̃t0 faze5]Y~`%1fC)ȹ_795+9aMICA<589)V^\kE/iC$xϒE;A7zvݧ!+=5(i Hk&iz67Tw4MZARCf 6ape[Ee4`Fzw{- T7{~4:"Qr`]J#9fcIIG#mH=81v 23&O'b0lqj$+ЈCdD[Ե= \kȲG5eRrfA/># oQT۔_Rtg:Ssc$#=X, kI&2(P喛~_q}I.ds7s0m_+U=Kʤy,)aRtiLR0f/S] T|Ra7"j Mtk+'A,_e ><P;<4_-C 4ͤ^59ehˡmc;[+@qѴkTTܨ)eخk5Γ|iINNLP=ߖN:ò tAkDL|2 #}fN 1oMS3wh}bSGEgWUY('aҥb;Ȳt~bxn'!IJ٦v[b7#]+[ ?)'hP'-u'š<|22/{uTX[ppD=@W<3d/?'Kaŷm} v-Шm$>7>U'Mý8=?':Ylu^"s:/a8GlfZ _zE`ZCvR~FYiz?:NV.KFP b2ҧ. zFsByd ` fhv0+rn#:ǯ>]fyFJXE"䭁 !լU1тJSKݸgwi k)8J6>= & gs6"j:WOc[ԉKQN+W3lBUފij9!fr]|' R Wh7M2gfC_.o]cLދa6Ak?k$i(~KR}SkiS")h{ ȔK,h>^V)}ܹcm{4y5kQ _۔~-21Bm5SygP"xENCA\XJBEN S|Ӆtl""mprU$l#r-l& !Ȣ*[4V}^e:R8p{5fR)z>U(bI>p,?84I{38a`HW1@5|ķ8o ۴}8%1Țœg*itAl=ˊ[ϙq77+ {nL'!We1%zs'MC"F)EiY.tN{7#E|FS{حO+ [qhJLg!ahT͟S4q҃q ZbJYH-j4N>OOMd`'L{~ qK )f$qaJC'5S(ltRJQ > gE5kzoe|Do'>`eKU=kJU.^!֓FiM [U+ }ecu3Bo`yӆ3l!w[Ck)Ԭ ;#7Zk.+~}troK٪A@beKﱒ9y02^>"Rm.aSewҶOu:\-bW1kB$?5M*K(9/-K]p@C.|ָ\fjbD~V`'+HmvСu61R_ @ Y[x U@jȣyK21^ P-bWYb%}D];y644OAċgPW E#හi4f2.x˝ 8 M01+Wȑ=Өh_Dzhz," [oj6D@aGg qU9w@c:oB ɤV8/rw~GD!eX4wN24D#U~e p+cpV\YM>3\yw;i \[yTxe@$3Tď %3!}7]6 >@;Hǿo/JUج]HIK *K||Gl>-ȪOkh')XJQ,B#SG~,\tDDqa<]6 7a*/Ǖ់qlڛG /DS^Lv] kEs R)$x\:'S֠xcB;OCPV+)I֦!XZ@q /LʱCFB  ԃW>RLfѽlB+"/$;xŢx4zX &4(WqYnM#J~1[C^4\kD͵*PVP &۶YOQ#B ՟6q97rB=}S䧑XYNdS+WB0a(>ޥ>3[3/4Ǟ4tOJU5M6XV6S8'Njye.11|ɿ `pU]&n/y 4}$|ЂHch3g30 U:uuj}ӗTP3O[\NSv_Jp}R_S'~;v4!",}0gH~6cd:<~[ʬ,H3al/QkM(%"g)"MhYu2]P5jVmq|J@2rq &;wŧ%6Vm R,FieB0!bkx2ͅ[q=wջ>7زn B"pP~i;_~zA8 Fw&QBIp3߶=,2`uD ڵ$JwᘭK_@0,@H .r)5S0ZN >T-:.ܦ9}r7<걢sT ;]MHdRӃ V!’l Pxy~Oh^Cu5\#zĢ dk |]Yh"{$v䛎uAXVYxηGJ̟0T[e=SnR3[HnHg}űX_T=J_b9N^0VGu%:ՙ0]$vp#)TZ۟'3`ޘkyG6pyh YO1G(P P9Z250å僀f}s*8$mZTwej_Sj"Ӻ.I.H09&/dXm1bc-u.;r9n,ܙߴC~&Pr.3UlQTBllqW3F6?N qEq4 TtY*uɪ2No ѣ>Y^"ȧ'O' h\Y`o7;!fɠl]k?7E) ހps'X]J/kkQ% lmdCfz4$'X9UwxWIk_8zA-K>XeJX'Hstg(f1ܴ({D[$Q 7/0LmA>KwXt=v-s A5^W<777,}^mIOPjh 9QoP! N>>Jq@2m`- %_ 5#@:>/%mCfX'H&;Gy m50Lsf7X2$'L8{l_u*R#j Cy7nTg4o5x FhU3yӁJEG#ntA0A?OHT ;&Tu=;2I7+ YT~/lN5x"jFwz# 4~E)̂ipVtH,WTEb[0 A~g]}{oYsKTb́%zlbej.͹Y*v>~n'8%_)!neß{xh3+ GNwn[E?y'CބbW#C,v48Hkw&&3v||"2+*W#zy9]>aVu5n~5/]&ΐǓ`,R.{N8Mizn/L4E24UD`_t5J;}լ#ُ %h|hφQZဿ K{%s{h<(-]V'ۡ|6FDmņ'DlG V;# ͞ç5n\5 zo _{ "! aDG/-RIt#C𓂼!"S`C Llp9@_u@wCκSD>O挦IE<g HyؤX)rzӯg,TagNG` hK.}M Nb XC&aB54ﰳ8B/{;D}H3`8=aBx k$Ma* '}P@4GdUg#P$ rGarHvq~G/5k|fЗtI \ܯ$p`+lAM3Fmt]#m^Rb-޹;mQj x~Yg{2 m<ǒg|. ׍+ S أ75n&1[~\@A2$_3\ Hl,.w0JU9d΅vEc.<l̤Ƙσst* Th[>J"YL[{W;XBOMoJNc_~=Bѿ>K' Q7 [#XyAʶ o³ TΒ903J> AR Ħa&7'8T9oZgyq3\aHJ(*I5iSQ1p1wǓTsYY/o?%f"K7rTe!XfN+}fg0ِf|*Nʀ{(33,X]"6 W~?SW^j_Z[ $?CN}u򊼟FWU#b&wUު+][uupJ {gwZo?1L'tTpDȱi׼HՂX!>zt5#JE9?e DX#5|O}{8Jp?9[a`Y)=O;`cg4C"l _=e5\'ۣ6i24M("6atU]B'2޺Xū2UC@!uu~o3ZSE~OQ {3B5 (9aX$Bϸ/I$ƓR <^I]Ϲز%>q28 t wdQtcɟlǡ1 dn]F~ btتI`x^x*̧~M͘jۮ9bxc.N?4wqO@@.7Uc!ncRއl59;tP.)&{bh_P FOΎ@aUxfD}`G%|BFǙr=h:NMipwf냸X <|e z%sg#(_45㠟rZ$.IU&ͣb`O2b:CqSR@[d8~FzbTD(ц A]Y Ft'XDbǬcuY&;Dlmbxp>ڱeʆ>aJ%7 "r,jR\5BE'x>G$#ɥz_₰ġ.&;6 Bui L"O77HeS/i N FϭN|E(R!x@) o~%% YNDaj ʨ^W:)LoԣXK5-lXP_k-ٳ]hufDH {zOkVPh`6RЂI /][$sU,5ԡ0yi4}Ly$qkp6uuioL~Wز OyEF,+͝S8&Vҧ33w"33Y4@z)ISQΪf 5"\[c-ζ4X5 DY?zCh qC5"ЄJG}S`?-K,)IrP:eMXĤh&VaiK M;2 =/ i{4Ov"=k/Q@hEb01lYn0=5K{ LЕ Zg;7T5]ل›TaYIo{ nص%yDW 5de* :G*Y"E.\_ ucFޓdF@ i0:gtL񊩍4 Yd0UR6J[Al]~[ 쐲T 5SMˀVKymK$jn=~d:WcZƈpXD~&r9zu+zgF@?Hd/t/e6|}gzw[ U+Dvz !ZvړB">(t- J2VhKEC %TnR6 8Rf %]ӓHǟ,&AeضFRݮU;WOd.4|N) WŤa(rPvA\-w[~wP$4j/6P+LP^&*M.a"5phkq_pUYOY ͌珀L DiJwb9AS0P=8ԞO7lYwH'f¼_?h{]~܋2(1C#DV?,fn[B,[9 Eb(`yÉ~n/;\77J+ i? *?Y+p5&)0q[_%=|\OU,s0jf^f3acxH3팘<nQAZ(:p4E ϻb `/Ct1Ox 1VȠ7ƞ=_¾Al aWQӰ|娝ZULRA_'їf7{2xÃ)c톫.r}}eJ`>,`4x@߮*)dumVڹzu(u8 J2bףN <J/ x ;phTU dƢ]zr:nANc4PӒFs*#Uo Y=>wh.LcP2 C!]*Ikn#ϔ!(/@Dhe QgbC.Da2+Eu'#irv1 R>A 2jc]9{,Hِ9kR<~x"-֠2ɑ:o ЀC/N+ޭ cU܆.k N>ID6HV#٘%$4RA0^ TdU_[geP|2r/ݒv tR[Yh\ӧ"PϪAasOjU?.FBAho2"y\3ny<@ğm`v`!*!7CqW0 _}ȭ8=㊆녃vӷLت:U"Y|Yӟ88et>|(~-f33 5Zݞ5rݹ~rC4(Ob(\LiDʍ 998aM]ȫp1PW!c4cǑ%.g/}y %vNH4Z[?cw먱XOCo]F" V(/]9v>4 .}BTsy;\28Nx <@ʜǫW7\o'cyBm1UٕU O0d| Ĥ,ш\^iäViذv ˊtq͙/Y>7(J:ZbHf(S&Oچ&+oupJ .XdڪPʺ@]f{%!u0o6sP0i04}o`nWf6%nA8 ͷS ~4ו{?wØR`t{d8RaHkwHXQl"RfTJiJF:YXCJ:MaeP ^|vDH?9LXOvem.![0e|yT7y'6x ĺI" OJYP #"9(X^F/0|mhXIh.ɯbm>CXgV`#RX$iș9D={~EwsTۅ鬠KeI ÷ QkvT\s%ؓR77ߓhiaC\?C\p:It"ŝD&dC;I.ƒgՒ45kDPdAJFG~LȶPԩw$:1i9(N4M.ǘfD{ Ȣ0*P&ǑXK.KDOg1д7R,."aӇX9CBAգyG7>F(RCvƞVM26HٿTI0:BjҍP')|_.VWRt` _Oۚ> ^6M#LCГA\|wx.u׹^}ɔ(?&ewm4Ҳrj6P1P y6Jͷ0M%SA 5H2Z7pȚޠ%%a->vZ2Ӥ̖*|S!5JPjNA,*A |QY&(1D n6#$ME,_ ZO.F*iȇª%! rc]|Z| ) ZZd2d8@Aj{`3IX),$lۈCjyf-'Sj$#,zxڞd<]bOŬbWOVKSTKT}52 ew6"W= % PDə{TuJ}Z{,ƮR^F VpDO.4Qbr0ESR,`5쵀5qݿXͼ>_JjNWGa]qUyEqc"$ŋasdkn {[D{W8pk:9(YJx!<(]q4tsvP傲հVEf0@p,iX-kt9>RY1 v#|~ 8r@_P<L/Tڵ2뺊%ԝB%w~ɶrW#vzƭIˌz;-ȥ!V6>Em">Hz*, ^tU %toʍ?s uqlfy}cKp_xk}pclq-4ZwĚ̵VەD9>`B}FLӯK8t'0&A쎁!Ȳ>e7K / @A%3Cxv{?*A@o婆DS{y&[bS0hNk45ʤx+)iya@yJI#U 7WW`CmThVFH*`DCqcSSbܧʻG݀]J:eOmKׅC'z~Lkb&Z]}*2dR ^ W#~يj6꙽HF٩0xz'(iYUߓ#&Լs'H%uowF6)Y,?<# i*7BnlD[.XtwY$]E"+:R3q]zARl&-0(GR#m`jy-{oIu) JǤ wԋdܓ )9LnԺzӥەOƥ dYmd/i4/ֽI.#&99Ycq*3i]!p*2+إ?*1]+Aw jO )dO6Rewxrb-r5H f'|(j\@-YOgb`w%Wf%Bs3&eΙe]%r jUx jf> O>c0H!9t#nc19S)x4wL:p9͘~}d~ <{1wNWið7 7[DQ8, J9R_C/R1꧗9L|"͑w`T'OxFx3vB? &#wm [6 ψ1&"vnD?ruvRg!i 7qKPLTv7J2HS5U"<~: ܠ r ˳zo~g XF-.)齯¹Cذ6'uDORbEzB4[ŝ(FqS)B&haXW0),l,?$<|4 oro)"]|6ްۅKׁ%;7NBA 4e&7͝qsT/E+)9_̓jIW8g2.Yf/ULu2rMxs/pc1ǯ@UEVdOLn88&r#=D?P揬!c(=|pTJ!-ߣR۹J&M49"n(-Ep+nlFXoj}5ޜkBC.R)1|yFDKgQ5p7ܖFR?5w'R'=&4! 5_cJ &zaf(to^H^1)y;I06bI 3,ڲ~;NSxqɠʉgt݇Bx0"O<1mK U{\ٽ 'МBCyZ;m:/,h(Dciꐲ S}N}3F7ftgŻx}Ş ۆf'{~|_]m&۱~~$S8nUhhUZ+ձD]Dxϯ|T&PDA6\ }@B)#l[ jWip,|o!)EX[@BN'˂^&66n Ԋ2}`UQBꏩѩ>lvi½a>ʹ*M_B 8(yoy Za\8B&-J@XdwC:PcrɱZN55׶88{Y%+ˡ3@@A6[ɉ60}$VI%E˼Y?q8Ţv}m*Z2_ f`kNӄpڍ؄d#\͚S=ώ؁@ENaYMO(qr%]$e:cє"N-Pj6_ԉxKPnXgwDVp]{z@|jwucBO}e\V774 e2xJ_Ps=M:*jЉ󜥃.}RdQnᄍ͸^mCcX9O'~yTfm6FO+VnNꯟh''X1ЬΧ_K-BV:\go=uD ^yc4KyC roMcw3ڣqT=? o@~F%;δ$}~{)\gȬ5ˬ7/'e}qcWmiժ kai4+;8#G 7B*V\>S<]<)ar*JqP_=.3mos_I5v E*S3!z G窈2.|fvk׀r@Un5H tk` ;){_$Y 2<9($_0/D:$03Z0, W6h@2bȟ%oljvK^[ңb8]q aA"&> gyyXcF[Q]2!Lc"0GEP>=ejBjw9жo8dǕzْ@烥NA*S 1„.F Kc{Q"XQ'ɚWx#W R'& >% 9r7=RG-o2Y8Wqv4sb6YP.=ts? rvB`ߊQZ ֲe~hzz fJmɓc)Vp0@D{w! 0 9pca). =eVB^| P-xK9+lMoQOMtV^xTjӓ&?5,Lz|w%o.,"2M6.Ȋk+l^Xk~{˰$(O}wD@)$Co"vGBHu H_ ܦcx0@ﵣ3$ . ^Awx:y?*ߏ,} DEsR6X~gY(Ok M =, r:Rm'pD)3ՇRꨶ qM҃Ǣi0>vNF57:jq+"ܢl`Һ+EXs3gFnײ#$<]8{bXX Oˣn(Ἡ/C|_;Fm9Ddٹ^IuV|zw QtB3RHyKʭmF[(|d|<,D/J;Vc Adpd܊t5 )ql͙cNC*4}f2%5jWz)Y$~en'xF't/f=s}N/_.uBdlLW̋?>6I|,2ׁMwcn*{-} a81 5v- efC)?ߔ%so9b˦x24|Ĉx Yka ?Vj|]*hQ`2oV.[|H1%a(Xs<@QX9_=gY@G~ֽeځ+4ĖsRWʱ %kITڔߞ ~C>3n- g&geKKPFKȃoh?_ tn$p?hC] t "Z\[z #ۡ4yA/b6d6:R Ef|G1PhuߚX"աBX*(FKwf(mHY 7uDELj C&,>wh1XVo4 ʼn0e+`cK&mHMtQ5)cXĒZ89N" 9({O^MRg,7L(2B^?:ʮ-ZsPYcWQx'9LA0of$/6\։/MSD@Ky@hHCɌM5D4UW'I {[s{+0xA xdo_TL`ce'LJn9Ni]*C1dK0$ڍ̖rŴk+Nc]NW\]9 P .$ms = Ntnõq?ِZCaNkdj}L̤r/d\X>_FUt/{EaYc)|IcYMS7nOۼԮ꿡ӽ寭è 58)|6 yI0ih%_COA>aMCC_'Z6yٰ 숷>??.#L!1+-}k[RS`"kY1tTH%xq] DwWE"gz&[ˆqSh@(nw.eƇlzxeŝRP*_&]v>\&H=\@MdQ278 N-fb+8F+=ɩen%8SrK^Uh0!Syz27f !_̤d>c2e 4)ƴif͍@U8D1L-hF9 @>`[1-/i%ߦ&vh>>愻$z:~qqnXu1~vh#XӇK}V>K}Pb,g pn6 )m?kc p wda挔Wr F0>Q,sI"@xMtP(<̏y]rVkXrOL_0I$W5D9-G kfjSRXxs,GD[zwsS U`&Qϸ!(DN1<@ʷg\RDD~w.{eF(l%0%n{T$(DdӆfCw&L¨3;01Jd0-Mq@ 5bJ*;f Ξu!fǾO y\ji!eghw]8K='W|0uc!ћAj]gtLAUmzJJoV|[|ة-x(C!R7׽is=4i=cˡ3szϯ;)v5t։D u+aEFwx D РڌOR95?xvǗ\Q"wWp$5̓S5dQc_{l#9g!ɂŏ ŦAB>&6c+qO@7w%[gcY6Y{>xZ%CLc``L-hʲ,$=Y;xyo ö-PŠϤdv}Tgz[ao>,s/{bA [jpXSxE4tSxڂdD;z\;Om6QКX0oo)ےt)vs& s+ 1 iMc?._>t\ROXii5Q9K3 UN0н9D!bcF'24I` Ldd+J;3CH%7m!Wcf_) ޠpDBi{qlֈ&~KIo _kL ɑ'kErA&zP^={eFL]U@FCapY(縿Ke)'̤9Y5iڑ6 >wKQ*4fnJS3WtdC=fϒ KYB|3:6b̀3Ѫs )J)RQCLOi5Tnw$ڌ?3h>paΞ电mJ)sܑv0Mi1RTpvQ&<&XN=Y~nMktzdqrni4 YEHbV~19m{? xM/:7)rRW_Zƒؾ;P.RExk-R 7-/@N/(rԉ p+b gqY y4]&L"ACYe|':9|YZn¥`ݛOPncuQAM$eY|M(f/C4?^j&HQV^T)>[śTVF3V|bIFHЉY*6Q\D b@`$@‘'=KH=߉‹D 5xX +L RL feKP /G`V"^:4 Y|Pfd2Hdfcf˞Q=v,zH# 5W"AW/ZۚP 8C5.aÓmʮV Ƈ;I\'wv"m R攴ʹ;k!L1/mt4(S k#`SSX/]d,^j o(̸م64lJŶ!Tӈ V礎aA5ATORCrDxx5DqiTABulsPWTWQ׈/DX$&xkYna=$ʸ!şT8[HPlǷjЩa7Nݎ>@M 5oY8=lj9D1f#N%gލ^Pkn)k2yA 䟫 ТSQQG8| @d]*!ɭD@Ӌj%Xbq0>O+gVҘ2RAqk?Ō9pO9)3-K%FHCbXf5yy&02l^6V 1; fqg;@W0nyTwQ$Tu]a-lhOw>3;EߧZ02@C7W7%]a %.lS@U-+~K^d$fw3 {o`˜Zx|'uc_S X3|x;.ߌUNP_hK`R"\U9*FLB"޿R m !nAb*lcsjX1]\*{esӧ 3,sՠSi*4FoE+e(!π CkO^&YCQtYԌ]x0ɢ UOlv1' _<[ԜJ{( nllNl5u5jt foXhjfևgn,Dh:M<],-sB¯GV5yEQcj ֝ 2˚;nFm QՏMd\#L.I[8uH"KJEvL7*Nɛh,[ 9j\jcyYQ};5}X='H;)CKQ{e0?7hI8>147k^c@t8^_ .TdAڴQ.\emگƀk_U{~e|Q!3=53ǫbEWL-L(_f {{?CXND(R iQEHϚ<䪯CġJx"S6oE1ۋvx,egxRvL4 9 tt/ 'n)9`T&;ˀk&wNrqHV4чȌxkn?ck-A/>1Vb_-j6Z/O$cڴzHc2Z/~n!R`\3܁\7>YJu2[.ln.~퓷߰+*yH4]KISzz$'f<  :fnH9~N}_|EwB|R.ũ 'ÄKl=Q[|o(.`$coT .I&奠?'’~eiϹٯ"Lj0E+&es> ˈHPvͲ?7ID S7SBh:]߻`uy4=c{Ϲ!&g/K Թk7Y& Oybrn`gP$ߒa!Kj>k  ~ڴ]M5xg?`-/2_[K< Jjb|y}[v/LT20(\jIk)sVm4:YytS%~w6JmXV^Y2! 3h|K(}0 E)ȼ`ӆj !ȌzpQS| H%Nj 1M`pZ Kq)^!GQN!Ì%ANn{/$ ?Se|͑]٫8TBy)Iٴ>`Dx]ыMQ㩒_t!rdo4~䗉Pnt@~/6Ϥfqe:nw"1s=0ǂgUAy^0BvÍ(K`7jګ?J?5B1&i)d#ýsX f{k4Fyg 2Ulב}_o?b4pQHY eqӪ7%bE1H;͌]+P&-AW7rƋ4nT|3j$ 4xtd^ jwWN'M|C_q= )NjX5 ͋~T=.<BOD O`w~*1^/f 5Cރq&j#)0,E/h u0R38 PrRŨB8 OYG̜K hkU)wَHqftg=0R>]זP,:|,ᦸ;NKT@`C[=י` i"( yD[5CV[e7 57RPcV9ؔdCwa$ +/yH70+r!m溫Y)Imn(3a"=F<2C 5:<6PvHDD=tjb7ck15.~v=ADxLUUA >;Q 9+* c޿CRtoL/k 1J;P!hv۳9]DmMAZIZAW@r$@Cy4~ 3)O. Ks8l}򸰼8|45;6𚂑5gnsKΗ 0LZΝ'0v!IG9Y }k#\i^ ;Ll^ung ǿ"lfӗE&޸RݍVF$ 1e8ZPJNLIElYS"FcfhEBг PW?NF> 2pD|TcV!FjuWټ /3hKJ*2 .[&zQz1>KXR+G=퐉 Y5KkgӷR JN8K74K l@aZ uL*BfʗCa&qYD PzwԻzԤ_( @b"b?:O0|m xg'fiVn6vC|ձ)LiZ}5n0;,gnC2d ~B{RSd EԀ@욺Qm : €-/CӼF;q(fQ?D1Z¸G:V:2xV;} w >z k7zWq_(yVٝoن"ӊ[Ih~1n5*M0SW iAb7á 喗1 et0$Gr.w3n̒{QWD#]Mq>aj{cK"GaQITd_;x u)cCK\~x+/H,Ji@C?f`YR?C'3YhPZ%Z<4;Ru!|.Hb6Z!L!b7356͡6X+ɚrFMP.E$* u$B=zQ//IfE&\O>h2dFKdUia.{Ie $@=e\F1"pm[Up05Ӊ#\J R'bHa1 1(馑ӅPE#Y0@V.f( G;jBT}/E#U/ Fh]"5ӣLjXg$Ao%|a h7t>Y64U ww Eo7sٞ v ZV=r;slU "c+2YRܢadGjK3B0LHAZ `-itbY*Um,#[pX3w6PQ@VT ءUQVaбG+?EY|ae|Ch) `g]yzt?r>G[)Y0 q+*ڐTZ2Z7ϒQBx񃽫~7MCQu ԠJoEk,1o^ 9jי=%vXR/禌mcw`1B>ZXШ%%{ˤ*Kd(y7MѼ߿C2;/'`0"tG'BzquL9Po@fd?-M+T|<31$b="@ý/UT]7 ,F"lOʷbSKV3<6tA++w͹3%Tm+5*PCL4aEZ\U7k|Ucn倛NVC/<T@jzS!(-5uQ^kjJ@X%y8ޕ=6 N@ErL`QLFhI]B>ecjm-Mk1D #zz̜h'L=@™j.&A8+Y$(nɐ{?: ~zoc'Fo2j庨xFڙ zAKwcb"@0uaR\Ԙ WL!֎b#Z:AP+/+:5iȳc!HNL 9uK:>GTqÿv2;h5>Æ 2b- pv+C6]Ue/qV/槸dvLO=e!ּt'5%raV[hsyҾ҇T)9^ ?M&3>!m? TO*~K N٨":ذo8(Z+ E{ob[YtgC>6&{T%)z-)HHw.Z@m8&_|eq}olc99[l. )íBk{C']-[,\f`>1JVvqkb C? {Tֹ(T*ܟƿ ͈||S\k$ "jr ?;+L*{:jNN.!g=]$/BsCT&a -o¤oXo0hSjx=,s`dk{chS]uS>s~7L:G>R b1:uT/d#ܠBOhzqxhݫ f΄z><}oyc)Wc3'gV?N9 'Q70%un5)Mχ+7su-SQo&!:$(lCc\o6} b uKc~Lk{¬G!馎 im'eTBp߸ }t&hQ*$ad x)tSd Eɪlm D/ԇ$.EC޸ -QuY}Ni0C'%CnWh'JF@ė H3uG9x&A1 36/Cny RfL%\|tTqUuچ+ ~6;:δN#Q_A~KEEs[q#))/_%CD1E_f^>4yF@DnƿWqt^ Kbz`LF,ǻ4 ҈ 1^~5=^K>W|)9)3bG=.,+Wݽi4LNĥ5\GfL:{8B]}ũxB yp ǰI[Tp1,ݴJ牟:=w+^⏊~r!< ~OO^[l?5Ye)9k늈UO& ް)ŏ Z^8]Q]5`LL}Ro;&%Bk\Wƨ(}kMa^~ :1oͼeo_>eZԮlRX6%'}eHY<.5]V; B.)AK.'!6<ޅ&e.`{`OLԆXv,X^R*gB/J C ^X1:B<" Z?A]^LxatSO}-cm3~Xn"ޡH+@aLьqžW!2*~Zbi\) uc"j#.}sV,[!m{dc6#t4ƷBz_q<˒ x}Rm#=p0ӣˊ`cA"" YEyC~G£ ElCejp79ޫٓk"ү [%kӑp'(:c*G!}S.7}̦-%JU&[=?e Z'f{匨VH/Dy÷5Ga't*aۂQY u? ]Eؐ`ˀ$ܯ^(qOgRHETmte-W?'xՒYw Adg0'P^lv _$=̤rH\MA+f z$UTr߄,c׎I(ogc\q<jj_>阁?Ik6pᔒ؏_6ϙυhZZڌPk+6t/MPgTs(@+pb̈́tdҀYOh#e_a?_!k{-uiz r Zs%z&:Ѥ!qi @teY|Tm7a+Ϗ<_6]0д-XpIdpV~ !栀\):UNU y4u&wQAWul'"!$^ؑ5;ra1t*D7` I:*5_Ԛ + D7E5Y8F;&|c=)J?[MF,L1F3y)rzǥ.Wpb3*& n>7nb`fd$sU ˝r&iU$-#xN>PڥX=eWɅTR,`!~LZۑ2צP*:͆N߁N ZKz4->ZÉنM*"]սuSs eqNg"9Fa#3`2֮ۖ-=オ_eE;q|_J. c5[N=4k9ZiU-"]ShIn##c#PXgh^ 8)&ܗɎ|7ĨYuj5ksm -c~ `FƔ$3e[9~:)NGB U=>$Wy^ĥ~OzVTaYz(sˠ\ccz6*tneV/XkhUm;V&Ԙ1n^Q e;X00ƒi`Fv?~><!T~% ,|,O{xQ>#WcV;_l]KVFc?pZc-L1 >ǘɖwcgsP~EzeK @}LKv-"Ld :u‡jIvG`$˶ \口_Fb*N䱅UX`偉 = 5T0<`y& ڎ 84]9h7n/νEfЯAb-O$Wn|Bg%zj3Re%|xmk>Tf!Pʢ1 PӡȤ LTݜ\8qɉh|2'uUԐ@Xns|:H7^f\ȺnO$BR<;atI8Kdf} h.i>|iَ¡g-6wjx%ؾ5.ɌsS_T'ɅRQkg~෭|_jm. o:Xٔ IaǍjjLۚs sF-⩔pJݤN %ٟ(iʉ2K0_[8cjVNT68\6 _qOq/[=⑷S,J&VZ6=̓1DsD .yH^么=8wXJt3)f,+3+U|'p\"7r%a9v#TRj\/2O/I~m<5=9EìG )Ӆ<$%+} @ (f (QG.: 3\D32Rcβ쯢14XhQ'+#s{I OTg[j5hf8 vɫQ % rUﻚ~G7ubgH#@ἏIB0>9E#/#]v'SBU"ۜa@ N%u6 1AP H0%X.h]DdEal-3% Jƞ`߰)ՌaԄ`u sܨ}smH)T`湊QmRc$a҈յâB(/5!zzgաNR"7'>2elIIC;T:~+qȏ  \}W=t@t >j&5| q%o@@ګpA">\^8We*YF5@*'JY4Z67 ALJ ;$يjTRd `E>Hbs@Wd'G#oFf@lh|lZΔX7z_A!Z'I: V:j6+~[w⼾HO0ح55BF'$|$hי7`8Qf>[+Be\r=o 9 p-u%)׈edw6eN`w129AsO)@m1kčɨ*Vjs3=% q '?Ņ>+.EBz~@<1dYTĈh=[8~mFY{*`>ۯ5+RP q28A_=lg޾q9i16x1+I3q y; ΃il7F_YB5q+XGP j] (,@3g Z Eȶ*Rvx}xN>IGd'H&5|Ɉt7U+-*/.S1Y*iuȑ"c_jJn끏M lckrt+pÕZi,Y6is2"X9NJVZe'Xr> >-,& 3kL#*W& Փ,i{UwvfvLx~r挠v.t  $uG1Em t7-tR(ZqF:ˋ M隚xW!{̺&a Iߔ7)" Gp@iZ;')i" ޗHHAx2I7R(ߌJI4dO3y'!Ipκ\ͭ 1Z.z˧MAT DD? T0?D\ +_A2e`(Ph|-Fu-Q{:x(a`j/4,,4gw*Qca :@C!HϱyScح7>`KruEǗ륧~$P3g_o|ʼn{ {Xc|''³o)YI"NnЁS'klORP2i܅y{,FƱshZ}HeܡvUv{ɱk9#uG۾(iGWqV xId)gɪ-q #jÛBΊbeZV? U51mc&Y$̉3~g%!/b='Cʺ QR?J(VkԏR'jWym4 *֫kVY+#p cS,QI夳 LhnZM!Q(@ " &9Xs?A@zApѸ疣'G9#eB>S)c}Sã?Sc`V|d SՒϮFHKP-5t 1UB캿͘ds=-rkoh2egp+߶wjӓ~`N˩*m'UVs:at ̭LfQ):cT-0{Nۉ+K&c~U[ _VԻK K6BʡJ&+YiW^.Sqn5~Jq,]ω.TֽBf)0iZ.扒.NBKѺ(,'L<_/K`RkY;n8wxf>ic2yc,n@]#QDgW⟀`̟j? ė~\O|Qe(6l/>̣-I 3,iZSZYb"c"Ŵj\^6}۟\'4H9!:rd)C"wuJz# xCl"xWX-OK=8nQC'4  ujݡm "5_8+AhhBa: @} S?w_ɀ}>2y, v8fP7 ]I@@<9G+%UK+0 8s,~imǷ(% gԅ? c.Huv/ .@ gg|:鏛hYf@4*Y׫,p5Yak~L5~=[V*,H#5 [Mk}c=k0qU'YDV(">_wr;:h2t \\ĩ\Jtk%-?Iu࣡pFZO.W8XlA UpF\^ N㈏Iyqdrz[D͎q!!1V9 ~[=ybR1rLQ8\)`lcyKu㬔[O(Ob_9[ #1iM>Lrgb_`L(ٕNpVƛ:0c-!6h"nXdJ6h8Y=X%s|8RqNP'Vڻe`zh}\rX.DVB"='ւ׬f62U -aMcB嫠CEW&Er<8Qt+3cD"pljIԱbx ZܾRGH(*dU7q›H$3<{(⍥ƭ ,9*f)|[eD|L>yf#}dyN#6*xOYwmg5oyLz~Ƿ==^8=am,07UcQLͥloKҨ4"Ug:Plb}X, =*BRࣣZŞm+[G<"VYt =UTr do\N$4NQ̧e5 cDDab\~)q[+1s1e!O"ZmR븖BdOmV}{Vz&Q=gAea@l΃Y-VԼ6'`'u2ށ. sl-$XR1Q@KPR8v >>4Pz k'oJw<w$~zJ\1= HB}l'י#\Pҵ_"x>K #JW!}v5~V7y<>[ػM|79π! {Pl#5C(&B4}~3IK)d~ze!H/K nke3 4 e!w:hGlꔜe5\1N_$A- c XȚW6ګGh͏LMgZ$!Y(a/-QPcA~)n4!+P3)X^tk9p &Zc尶zHS==‰bHP0)bbٵ/=3B Y;Xk):ի~_ddzx*Z^m4J;XQVݗЄ!SƜZ->:4A8iUVVa\$RY~\k},AD{ǣMB6Λ =;͂^,ԙ]q4_m!IU$5ՔuW액)"յ&[ ׯq&yo_S9+%,aFì: }-mr's 1Z8ơǠPLa+%9!(XrıBBaDQhe'|Q{W}~_~qΉIţniz&+SAOeI&J19HG=^Mw,+Rt :B[̄.Rs'v; ݘѦkuлL?s9[K[A/ssZ`[ Yί; 8bc?\?^'ew)d^0hLiu)!Oe9$b2!dqinl= oӊ?Kϼx[{#G@ s;qj8˞.Gy81o EnMyQ  [u8 ʧ^("ŽQ=i ٬DM<qiHeK}MR_v h0G1-92[ !IE.]ՙg j}G҈ ,͘e7 Jp2io ecGA&>U/5֕KTvL"MڟA~VJ8Dž0]}CdiiL_ UnZiu.+{jDST*A>Э˷.3%@#+1fпAYL,N頏%'\yaf>#U:(e15EP`n@Ob?W/[3#@5lDj&lN;! JrMN6DSaQf `WP&l8O'+]^]"Vj˟"d0<e 02cTwuÿCg반^~@>9 y&yO5ĸs1N!>(Pחj}'wO (+[v%pv[E SJ'B `HW~0M´  I ćXb.6M#_qXQ (1S#3)`V =^ _p:ȯg]`Ş3wa݆R_ g 檉z[#_MИ7`t)҆ybS^wɚXQIJXc]y$ǜ's3 >սpUyغFP!٪Ԕ7+TRWrw~}جum E;|G{^:!Z> Pk;&<D\d#^ b x@JB$թ K^V.o*`j\?pLH|'miIE8㩾ckxKVcZv!3~4nsVeZP įNN 2P<߃K}L&+ ")x-0T0u7F&BNڎjxpgmóIz6, glaC˒AO.C5 +Wk@DRD~V@• ~$t hD虩L!oOy9]&QD%ZHxEK:E xnӆ\ZSڢW5 ^e-xGl/Ҹhviqk < XghE4%Iv\ILg  }154!{IxbmȒ[ HOL:v|"Ujٛ<@~r֔1.LpcZĦh7ץXȽ#.zOIשe )H9ݹ (@[Ym,-\T?F3*!8R]8dQ lcdWݯ-XT|w=?YI+:@|Niφ G1H, /zDvMeԼ+vM쁅YԓwZxH=۵ [TȪyۄH~yCyE$z#F^<FC3z>H&OOrt2DmAf~;^4ƝkHA;j0p@Ӷ̂[RI;sJ-edi1kEpѭߴ)o&ZEpusLN(`lr/Pg aiY~r6oUԴ'0- .eanHmC*s#%뢯 KO58  Cêk!L+dn.BZ"~mstg=8~?_~?{kPe9“%=l; ᰮCVN/Et5J֓yeI=30L3Te‹(@vSCO//P=DԬ8IP0BlY=EtTSa뛺^ZA'浸ƮeAOjr p/Ul]Es8?gnwڳ&N2@o3MRѴ+HY^] Ƒƿ鲭xińDYs(ˁk~X=#CXmζbZ:֛AʨPjPae&޳HLVmLeX&3qj0FP8o>;w]dNM/Hǥ#GK{Jj);"֞"ÂW%oаo+ş7}'8aa*_ $a`w[ rYYouj;}/rT:xf6 aKA pq{΅9iVmY gyQ{^?(D] !( qiPZ0!PDw6E| 0cN*)1*@`"V{/^3c1%LD5KFtfD6wqC+7*woi -,Om 4D;V +=R/e<"Rcg{Xƻ4m5#moR!-BbU|9y@,NM0x :ܭo_k&F?=:%n'jEwa~ RPh!I'Y ڭ~KKPJG>5>qH2Z:VT1N!m3mp|P͎I%sNp%}m!ѼG,3.KOܣڦ| ×J &$i|{.<$Upҟt%\b%5jq9bVam'zqx߼%1XT.:\G;jj|Q&xȑK~%i8v4T;w(0ѯ2hƟ8ܣ0X}U A;E֠pp|Ƞ8iSZ b58UG_̫Ę'c҄Ry*-S[G 1 C`}?gJ/5qANc@W/oUyT([C~S=ZZQ6D췔欹5v$?A>8Dx޸kA^'{AvU%x΃T #5gw3`9y )bHGxbr~#2ajwD샪s09x%3$ջJ@9MU\X+zM^Ի3~89 Nφ(sȣb) cR[&d^ܳK"}w0~ŭ+ihX/3f0sҐH!Sezjc=5>/} 2=@:Iچ 2:0^ Q gc-'Z7Ty@ubPΧ,9'0HE;к{/ ZYC8a2WEBe1*ɵk{]/n8きq = jMvI0VPwS*OXE5΍,~h("밍o$Ki!{l%s2a@ȼ1 0v?ru}5b0` 89Q?<(ʌUECw3$G `i47flq[=Ĺ(,D㮫eV fP.^Z rN);Ad#{_a/3[z:'ZM#i9KnV ū()sم g[v1K ',Xfb :v}u)ĥ ~<h OBpd8Ǿ%_&ݚ={-~VRc6 #VΘzT#IHQV@Τ]Z\,.W8/ӭ5EfDzZ)5 4J(nL,? 0SSNo/$\Ԍ<ʶ-;y'w)Π J=:OU2~^ x3[ py;fQl%/3mEe_lo܄Aص8yƙeqSa;3]i>Oҥk[" V֢pNPy|UA$|te a_cMuX$lP7y׊XoX{HjڃûUŴ)H),@Gkcg~ 1t@kW0xDFeX1/( p@]sl:0Sm.`[||9H95>HMLBW ~iN\٭xY+"@bK]-V?6RnԠ"`bqUd?.GBr"*qi%1unhÌ PPNOux#LkL˛-y\ 1knQcƬ%̦pz*]w| WP1# r2዗b+xɚ)=0P Kp5yA۰\EWL,I$P)^l5@B&P7t:s,gɪLLip]ki!Цy(9ʋp 4~RufS;.K'd@:yQwdԖ[#gjB"@xk }Ip0kƻᔜOy9q tho-4joX+^Lr<(\ps"|+FO; S%) gT@,Ύ>eDy9Y`P3*TmdE{t4;K4}5A:Sx!>f8V;5x|8&A~U%`8@B6텷W-zL0{ȚY8͎] .> ܡ<h 0~Vfsn<7DEH6 [uVk=ζ`FU<}:TDL\SMݢt7i,^-QV*bFwdD5Sa'<%1lV8%_S*T/;-&}mRh*|khSnKfRՋ ]i {Oej"]; ~3؞ ]Ny&O_ p-zÇ_G]` 0˘K׋5[Jjȁޓ4Ons >f|ou̫BO3L OK_M=ʋ&@ E~4" hZ5cE梦0e,`ZU;|>)?$JŰfR$w'Mܪ(ZztSv08pDC ]C4/f*E=naQ?1c'3=a&u} \"^'G]!Q7fcP(@= `7bxzHS+1߯Ow SD_wn`"Du@_NBW+CjyD$wpj}k1,7l;oҮw&*(#6ЀWR7'ޫCmHTI]hC1e5-"gΛ]RTdb4gwB!CSX, `:#AȦn# Kms14  W+a,!3+^Cf!H-;}WK`i"չoj* 3 Dnm5#Q#s j};D=,Ccd _LN*Mlm4p*1K-@JUWmGÅL9< FJU04 b$ Rǰ .pyv9t3`rU\P^?wy(2nwJfceB`뷆ۘZps -[7~]K` E>M|u˩TY-#X8Zѽ8a7u5,nWR={Vs/Q)U= W]fpgZǟ6c1PQ8)1gX+iso_YWww0a-|gi=i\ ox}!gb]9fEǾ6^+@k{Ҷcxnj./sL𨔦9_j~E9}3WICw$^abDհ&͏@Ѯl[3ˌ 3pWn.n75P*?kj܄ J $w1zD\kFȧ̀7g ?ݝrA[Js6_7I;C33 c %^_; ׾ pKn@`jzS4z}a !jHQMB(?ƋzT7~6Kjd9_תB/j `?\;spHcD_"Z}ˡDWe.i ,d!e9k+* =\gPnup޳h! |F$d9.cGz9g;}Y#%Qw*=A1D %iC.|}9zUB3<Ru@Snd uk--B($.K1-ţ}kP$X'$=3PwzFgT[+@M1002X&B;3_beQFyz"=n U1E})<9b#IbFcdU٬ YRBStcÍ{4CM=<@7_^'/Hr]» $ SH^N%\ͤ3w2n*bɚ{М{5@uĽh-﷿ɮ.ZN_1G|> ӫ֛6Q>Dyሞ/PjczH?S;r~*.k6cuox>K&O`8m`wdyd5autxcm(ms2 tǺXt)T5DBC+MtyYel}=P +tX~e27UxR^r3bDj Q[*pߞ:+St]*ᢤ'JB_o}Xdٿck$^[=9?楗2ԩGn5TM-,,KEڬj@jo-m@)Jc}Dܽ Tg4YBFnGG<ix7 w_8kT''_Ə]ZK|]'}Uo%H~_$Y?ouA(B9"&TH}TVqҞƍQCzUoG;3]|GHϛm0ICPo+\:K$Alҡ| UCVZY';Vf?IC_á7{ʥ@Z<- c}MG A<\ uc "]%uFM@-$1"i[R8Yqt+ehh _^y^(m~Vd߽\B MnF3knmoR1=-|zR37|2+6qmd[ Hʳ&I؞%L+9AC _m2Ƀ3N܈|OeYIN&i˨S:.Զb]Ifu(×u|(]@qנD. 5@XlfKA={6h@:lѽ#HBǏoSl2Y;@]dbݮ0V>l[4Avy0C)pɈD;X/J+KE7멷qȎ2XG8(#i#&A+()Z[rI|kȬYvy 8lNNW2.$`7vA]鮅 D>rl)Oi`18mX9X*cvvE `4o1Fa4&bP[!lGwׁs*^"c UOcGXVB~eUK!]aM/B;=Z'EL5יF_xS@3d`t՜~*ih'!:cu AOpvU/iۧ'q:9)KySV4~/Бg3@ۜr2O>^qqs]4k51x{ey$cOعj9Γu즘؋:*J?r'u!=Fssc)ZZM8?c.l䓪 ?S_Y "%u- )2>F /JU [.m*T=ƫ/y%g浸Cwxr8ԗ&$qTj;9T.¹RF|SwQIErOf*j>6<:/:3{ɞ|ULrD-Ɯ^޼6':ZE UB6dk_xGQ;K*0dQs aM03.)#MzQ|?DQUK>4%*񘻽NnPXvЬ'fSÝLUF'uߖ|r]P9!yM%87FE\qiTL{Vd$Bij㽻'@\I*b1cy%Yg٦[AM'raF!}~OmtͤEh΢q\,Ntv@f=ͲL0Pw:: }W jil~^lPh~,ZL΁ЏmT vp~K(V0Ҝ,Y$[`a3Ꝉs캰]nQ߅!Rk@kG+9\]-3 r)3C D`Y\;"7wiKAxt |C&lJ@3HA q]kM3k_x1j=$ ٵdbC-qH*ք6։ ;+^J<6x4nmAq j/$L Xj!CZaV/^NGюC;<m0O{E>=D 'wA?8R8DK㯟HK->adtx^5j''>:uSal-7$˕y<2 C]k骮O;^eǰ)" I1@!lˍkp :p 656%qzI5J0k|6IfւSԏ "f6dMSXF9 kF FOuD)wƧ`0(Y6T?\k 6'tj6d־~B,e~>/)>PTWwesF[,F '\DWTnZ6k2⳺Uaa(QbG`d>T:(Q꣚

5{_c ʧzJgsJԪtVB,>F+{B?;,?ۖr&q#WSL3**x Rf*[Ws:؂6HZJ In7^W"tU`;}B>KMRRvpp r4.8W%ET|XMq}.s<@Z'4JIt =r`UȰXltjY 騷g:߹){Jdf:ܩ}JԐQ^J? O5%sC!x_~s6$jڛv~n >TeyoJFVoS*$E2B4/%X}zsbyb#'ޙc,k-{p[ QEv?CCnkwL4em3^zwrLKSdɲ)\G-TXLpC0$]S$;IAPQ J.{Х>yu1BXYmG5 q޲7y/"R'Mɟ|QH%[3B jT /qZj*y>eL.b&d5ib>"]0.czQRdԯ:J%il` | ghD1 1?2@+1vkg7)赜 ^3QЉV-LRù詢2MwJ=(~*IjF5L[ms9XNĥ4L]aV+[V/>|V؊5=k sɝV7œ@ͯsq4;cp8 ߵ/DS> xDIMXyt-H:e Ʒe>@GbI̴- ӡYtxL>u*ןLEn%$L65? #1`穻LG+?CZU!c9:&=EcsCeE6AӫPIA_i< #Y\%|mI1`}YxSH`7J; #Z$cT `w@:p{I<tYNxMV^JMS8‹IRӈA,mʠ8G4ݾ{B͜$T/t^ ;E K'cE03mh.5-fs|n;k9 |#@+seoJuC7(P A^#݌ ;A? %I 0iPQ+1lÒyvR6!3pzw#$I-NFY>( `4 ڕƴ )L۳ߺ54H\)g;[78 Ndщ*'fJa^{xӟxsQkrNuwP%d5 9F͚Kb!(Fݽ4-봰|TkOl>*;WJVs-ؓQ,NxkOK FS˾F04Wݽc~#ofdOE8]1np:;\H:^T,%&8\Eol=u13y_.,8[ Vv Ț(K"\7F3GM&r[SDK<6nj}aj wQ$\~0x_%gQxQs _@9˄=.;wY屏f:#$՝]o%iZKPv&Wu$o%S nq#S ('&}>gZ1F_vȽCUژT\W-aYKl 0&wAN׵ik|!Lʕ{/o=z\z"G~&@'jD/oV"oA;#)Y*{!㎱R\j$eDӂ|Rӥ0mEM'XG a)_˪ִ)]^;'nb;~A)W'KZ kBDzdn3g@UO'm & KՉ׀G~izk^iH̷k­=ۚ^bd%o F{IA%ȁz J|@p2Ȓ=d%qe$ʾ Q.i&bYYm*WhmaPPꐷ||=4Λ.KoPUP.j@H+* ʞM M4s-RUK8_cW2חpzr|œkKrMZZ?i:[i^o?mQI$%U6B}+{D? YɄHP2 V{0{`z ʼn떺DZ?HrQm2[VZK@2k%`JG3ad -BT8X~U@ߌYO{6^bqhP"4 oe6>+?lwڅWM:*V$!dJ6j P&\* / ajo8tm%TvAuHh@|am!rzL-Yg۟n\V@qU'OM]~ol',j2M4ǫ~TK'mQzzJI(PV$8b:i;ϚY]P T0M("BX <|JNPfm/xC,?MuX7d`Uk[Ap)hA<,t v9-upDB~/JN8#΄\T΍ U;Hw^SҢ*LnyFUڌS: 7lS40r5?!;<~ F~IBBUrca>[_fY:1[6|$e+Z.Dau x`qEoƷ|[cYʽE#n ?"4)Њ>bA'݁}IddRwW9'wNkk v(xi A ת̦wJkC[Ӌ'oo–å0404]ŘUA@,olaUor4*AV;H+쀀XaJ=j&˽ %ϩpaCp Z hI` Z5g',1sUj(۟ {i)m!$ʥo8m61`Va'2q]NmU{~lUtNQ '&IhC]խ;P#___ڒEdmmg7AO($ﰄ\U"Բh=|[dx#n,z(0zBBcpׄ 倻QNNL.< / |IӍ `]`'bVr&y| 37ʭ+6j(gOu"9|pS-qpqap;*aVJ<6u`=CĬt2+SC pqS,8GZ٦vd_Q!#zLoKptE8$4,26LqE,tF~>+ŹbP K6‡sdnr GHpSckY{m$ZcL(v)9Y *H#hIBH1f Ͱ%*G\"? ZK=H "3X}ma}2(}` ~\i6JaCk0-'.0l|o`t)=:RTfm/,_aQD")ZL{8`(⍴Jr^T1sjdv9Z+}af#?.T`43zr֎,i7>X2@n YY:dgC6oFdC,hmhBW8)+ (hph"[;$#%P>Β{?!̒+V [c J/q'8L+x+mF6m L&<_ݺ="/ek i?WzKJljA yiW|8Mw5m30_9(ܱ̮ScOvN3qy, H h>y{CpDPIr(xe"vMi ~i-T%>|egBG Vag @4gA/wf_Կ@bW11]g(K`%iv)#t4#d= -S%rG]ȚgVK@E`7qFv]GY5`{3]ȧ:hǓ5ìGs@C5Arc~,!<5:~<Hؠp"^xN36sA)1tT\ ja(t *FzB2 i-,i̚qSH͊ Xx< &UHs'ݔt)1+իz)mSTX+<ԓ i~J̎=!d0UK3+K$'`' L>;M5Nib(4 S@'Z-/9;ӴĒTSS`dJV;BTry"Dg<'R* !wV$ AS#f_=O}RJɸro7c A,WZ\WkɦA{ѥ<(ov+)k6zݨP<$)\y5&4¨ey>.҈\^$s%^R MsWip[8@}j/M{=1=@ft^Ϋܘb5okC1b"S_ s @nooxK4l$3 [oD$ ]0qe Sa{wS" ԁՏ=#@ejIb/#-j@G#`W>ؔ {+bLz;dy7fPxd\k^q@UkWd}} @ , _e護QW'aS,3Gc|*/Gu8HJ%(t5S4I&ucPJ!hsk5vʥ;nD6>8^^-^q1:f,E|SOQVm ʬY°n,ZhMlT-dK A@H*-iu1>,5s8sؒZE\)VdC`˴F5UE\:dN\&CWvtO,:_izGȗ27߅ `i@xHri7rYˊkL1 VTDVdGd~eV`2_|YeNc2Bⲍ[k#Z`A: doO0t"MJl. z`rȰJ#lᏰq}7ְd:W]ggeToz.abzo Lc(RZԆѫrKhȟ}dS*ZQ^j$4j "FLrE #30>f@νh;:x\J-V`N d] ^M2cC0Fߋs5!˽qEf zye-H.-2\i 38_c6:*#F.:1cSD6^*;[ ^K:= !yOm =^Bƹp5 ?yL!QX3VORԫ|txÎL$߼Z4+fzD[./IWsJ!u7h-M8b1 3zIwik`G"J{kӀ r[/8UQ WÀYK Qw$FY)68n}9j:7 ??SL]} io";e2[ s)I7AEޙDZNq#x*NGkV-: tQ,o|L j`QAע(HLY[s8f'LGCT~qf>:5p'vs&6 {{ l|;QL\9D+WhgX(qG?;δbCffษ M1;/q/wAdX3=mb^pY!8*r7~n9=`t6Imz@d)䈼*O]Ƈ4}^(e1X AlZ.$RX5a2{`)6wNpS`ZT$~*o#EaPøR2t>nFyU.SykxU9PhHtH챂1 m3Uww,]|Ү8d_)O6 9 %;quH|R//ʝڴX/ϵ.2X 9)kz;0:NQC7ܻɛ/8 oSH W.%tAsb.F}8R,;:-kr=Ҟǡ sUt-I2.L];@Cn,ty1{ -): mEg5Ɋ_X ̀#cz> #2xxY,lټpt& |. W֞8FM/(u,+ -F'9@ 3 )AK7O@~:&<,dǖHpA]q_%[93 h_085ͫ6Rli,PBK=a"e`xFA17*Ro@ i]#+IH|<~SAW7HzʆC۲H}o([_4oMKD)M!ByrvEN |KGrZ!"bz2z(Yة005MgXoeYtRpc)$6njr"'^w-t䌒.ϓñ섭V\|uͫޅV; lv<tݮxz&HYUѰ[f֍S:q"xa/"H\6Em 0+;|)}IwiΝ.|h${˱gGPEk|iޛA ojD<5mpw^"/vAĀN!2 t=-L!. xEilv#La9N9LZ+ j.m'B[#>vW0s>L^ˉg殄+0d ú/9z0{$䲬53iu5^'BQn,O6E?LiA9zVdͳA -i, EO<ЬCF)K>\1t֮V;>(yټ+\;qO L]NO{TfC7úл-Zl_P~"XX]rsp\>ృ.(-|r;4{dՅTqf %܇~ >=mSRTkL Ix)ga? HZ/QO2bTQr 'hʱ8m4~uRn(L}\<2Y/:>:]dzbTͅeѥ9#uDh T>:lc(SJϤC'FiaXa&Yn.N[i*ꭅ+|l!zt+~5C!S|!gC Jũ-=QqAȶ'~L~yҘJȐY^4C+rp#-B=Y^3 >H-5b8 SCxXmv[O7N3s"}/aG/_l7B*fm0㈍۝]l CDƔgmNNӜvμ.aln28YN&'E,tFAkA$ovzцdSgkѩ*HNr=5YR덃$X|O:yU׃Ǚ6yfj'nP<8r"gI09+_^9wobVjw{ee_glMn*za$謣I̅Sa\k1(K%M=$v/PS)|BZ%^7JT][Pe98%J/?ʽGۻ}ņ-faM==u Ϣr8܌0hVz5Q(|fdG9͇&H֋ZaѧbsqTXMTDؖΘ# :*`igŒ~GjJ6jU&wHQ$䫨V9j0 K0'Tp ݿm#Bu3X* YqlN*1#O9g?0q*Hc+.UpSӧg-ʡ>?M#m:60;jh#A4+wxD98+ܒ]3Y+=EJQDݍ\E'X O#cjP (-͋B(TK𐀗ܨvLY?l?uzԗPKrrMGp"uh_f2j4kX{\î-.LQd uBVjq0݌ r{ryK[Ơb "}L3-䕲,dA08a~8 Xȃۆʇ_y-32#ˣV?|$jb l2Fݢ,^4Ui3e%XAٍ cW8MvKES&JFtc#Xf n}U;[Ә䁠RNV{H)X9Gjyudkw+yE_y|Kg8:8HtyiגRP*4 w_c体@秦@)M0JlvK@-$pfp طmMN/{yspdw(F9}yGZHDh碀 ;u O~ۍH1PtdAjo`Ur|#i ~-@'۵Te3eE*$ ~3AUi%ԃf*) ܱC; f'zreS&ҍ(V$%^kar0{Hzgzx3)S> Qi2PZ\ 2ꗼ iv&4JIz?RK{Edbk-g+Ku&=Jww22;15s\d^ӱ41NWW wy-# rmb)sw;$Y?Q8+ؤܣW?]?c0!gmf",ȋ&hNW,#q xlf4VZO"Нl)Uä'Xhmҳg8i^C;MWt0= O`>N~pnh @̎H]&/e<"?nCDGC` kL@R66۪-6=f |p_xџe㎞B/K3:KbcUCLU8;Oa% 拋a'7f⸟:A7h0UZF!spV(3))j'[#툩w":n`yK+Z@{L;[ĸ?e^Kpģ'w2Oa&H6œgV&Zul[ wR;&ٯ> G7 Yd:޽0E_ 9M]h#ZJ-V3uؿ$U%c%vlG}a B.MΆyl5re3VC-L+%X8Պnbᗃ:V-qVtj,Ů;q&3 1YR_ddij5aB(Į w):3\Qs~~ KQd0Gq1X"W3;w1p哭C|*("EKHQPғxS%C]OMЅQ0.$;U*'yp،Βf~Rh% Ih}_`m]Hw&6x'rqn:~l~h5'޶{wl'`#[S4(4 #WM4Z/EN}7v{~ b{Y4kV}ԵɚzEVwZ/\~î}elՈ2T1㛓;%-BykF1{Yx h#K&Q&}{Q_eWfsX4E.B#̗ꬥQ8C\1 Goe=6uBNLK!:s(]gW2[e\&bgLy-NSmf? b,=oSAtnDؕuXi?&>bToU4ۂu\z񛳥A<6V0ͫZhHbuV4(D[i_ z0jv9 ]>Mr@ "b6ms4Gc޻e9?+) r(ЩA>ώЊXmdz[k[r<;ORqL(4l#2*:}V z?-H&otˎ{7d2E$JW42[8-"T5&c]`;t` '6+ȹYŤ/].x.~ $_Eөv(,*l8Ò9kx{"`x\/iƇXj7R88WKeڈü7K 5nG^/%ڡ d2amN_!g1.[$O%M3_~Sؒ숿JFëkg.\Z dӥh3!:#~{ Jru k7C7.Mr!hxs9=6<, 14m?0CL`BM^~= ႀ!ul(d0ĸ '8ZkaS8l{B!,|`4 >6X 33ޫNUVuS g kwDzUGߚ㠠}9`ھ!ClXOW1(l=~ PM?3چ #*4q3ל쯂y[^e9wL2IG1g|[X+\Q#B?r @F tL ' R!2ѥ<>aoPk@O-X:B%Jh-IaD]Xԅwfwv_:kpuT~[M<@Re /bw)KR",t٨\/J堰w[W鬟6|Kq/H3=K$ * DRB#1y6<;j>V',RcO P[!E@By(^Uͱ nA'n$k&HbeD#!H;X5+M^(Yٽ]~ k])!DRb`K=:wM/K8|@vHU{]7OFiu %\bi~ݛf;C)}IOLd$4/Unb54`<*,o96 )4+tR !{O𦐘r㎝_YBrfw#u ;NOq1Z.ޓ^ ~=QM}l* ̏y0NNS(qr9+7]y8ByO.5h~|CÁ'lѡ/|׉5(."%Bf7A4q[+x,B<uò2ܖ3wa3hjc;sGFCݘp;3|1iHְy.kkU!l|HL W,ErmӚ <:ߘfT1Z32 &繣,$kR<ʫ_iB =I*zTŎv^ )?{^nWTjMսtک5eϕdܒz/sBahU*0elF.<sn6},FuxQ m}T^bJuz"%ZJEA.7(-!w(%}2sMGz(I[ܤ*u,pLE{ ]*KOB:ICRohdT@̵ Kt:=`s@)? vPQZ|o_X[4"XyDr*$ Śj!G,ٜ!z|d+eb8E-y<KoUXӵbɩ͠y\!8 B^'W !1bfGMe}օ}m(-7acei˧lOFLZ# %gcRWo"YSltdcm5=iҌ{/TDϵ҉ee6'YڙqO0v\?]O4Yf>j !V~)@RpY{oee,x{tMTܣVHjQ~c}fV)!tPovՈq85s*4Кn.3fh<]57~ Zܾ ҫS*\gd2/:H˘-yW:T$Wk`NIňMЪj,6RST}*ҹRrBn jԁG`q%tE 6s2jX[ 9Ci,/. `m;zjM2. >DSE/S&7Y~]-3ػ#;cڲ[=.U*!}o3AyL16uͻ v  EYSA)u"]t|Ha)DS z?[5Ty^,\MDc'ٌ+ByQ<h')δFR9f$Hԇw4"dNKl0/6Nd$j}Zu.oG]ט)$~u;;_`d.MH{ߪ )IR8_[<&uD/[zaWtѱD"ʱ^g0 ٬Z`)Q_T?`S{-ᩆ@v4 TJxHcP%89Oa}5 }00LIl}f\e,ђ37 ڕ]JeJ;lB`ԓsxے}ŌJͲv hEfz5aE҇qCq{aKfs NLt?e尸!͡cRI-(An]m&8!l쏍j=g/e;hmÅ9i*yGg$rr*kֻ3a- /6l$Pp Z&Io48IڗKF{\3)}4xf 6ثƕ{$ʼzW  &LFKY TFYz;.v+vPv)eq,$"ig{,$)sѶL$`Hs!kϔ?41-'cǘt;` Ti؋0FgTv63ŏ+z̹|;/z$ ^ywiĖl97WmLaC9wM5ѻ6Q>g\sQ32~CռYWOTxlB{|nhganpɭj$,A̺ 67mSB^s(_ OY-8~(k$x0F =-ZBf|Coclhp6p7>b//ތ$ʲ-@@Fb6atL|{> 8!S):y]p۳>G qfĩLNuxTU[SƬ&\ivZ8Z??|&WIG vɚgXF9lD-ӡnU`PZ `֨e.>Y'7~B_햝bZt7ȋ:)`-ncLp8& jbYNjGC/P'zy; Jcz{[h?]+p 7>G \:Etb`Jj@(kA~Ic)H]|lY, 7Rƌ@j!G IKW9`[\zI,r|Kp-qv˫jh&{Ry`ș (ks,t bVʊZ1cPu䯖{clkzZ`v8 IIE`t# 9JǗ0n4d4:HTPKrgf%Vx[=yP,Rao/ H DUS?c| u8X % oqlsbTO>P-{$M( rci Ĉ ÎqAlv6rwMuE*%a׌7֦gQe⁶N=sC;i]iDDfN#[ѣXZ@[&vb|Rռ8qm"4jWF${'B2?/4tG[SeTr_; B 8Xn@3?pu}cpg#P/yzVO8B.Y=_\' Ը4f^ &=wIXiEӜЍ`>KS!%8(;#ߐ9:1@S 5W ")tVT5^VqX#j@hI]SI¯iъH4*YLI|UMR(Ȫa4WnOFW`xg_{seDsyk$3a?OR!_P?z@t&jk9q?kfEQzqƀ1Eh @ ]9_m9z=B[agt$k2b kxH2ԹXa)mQ~w gJ&Co }r!h 2q UV] lW;~cPAt,}/~I#;D$sa<Gȧ``1@ [ip^'=ٲU*C$/9a袃#߷_~)Vs7쐾Ubd"H#πj5.U1 s=y^ LK)H0{B.*|`\3뷪ɶVB:<=NX{>ՙ;5KȾmN|b ġ<6VLa8zuԤR]Q蟐\YRns$3T-cZ)0Ny{tQ`K= $ʇ6^! kBm|ƀ9&K@=TS^^!pt5Jz]c+$e(͟8(gsZ搕{.#1#-TD@`cK#O*~8kHk.oH 06#4ЇPU[tr;|BR_ǯzHB{7 cE}-_8K6"YpO%:4}AWK%nǙ"zxC\$~oHV-zRپudpq=|=tSQbQRFq89eۦl /Ɏ(h0Q_Uw:59eq xCI,lwG dzXD6c$h#V9d:#晙͇aZjAwY&fxʸZ%XJsy}ITL2>cCVZQ'ǁCW䯰P LDrQA(΋Ѧnp"{imn~{7AWdUeH#ٗL jB'Vx1R DN-Wi;5=r >Q,3{$>X_gf>NlhOLC:fPj\MDI5lj0f5VbkGӊCg[.d0@r<՗ N(³%-γ ?>4 ɦA˥MwS5-dOe6fܭgp2&M_前n;<qznHy]@dr4SD֙9ۥIi4$m؏)=FVj=)pl>K<,A-T Ĭ/O~ >5=Be\{ԙ6>fc=k^=n՟9&m<"PUXyQvn;2e\-9䓰팶G9bnޑϷN|ITHsQtbhu3J- kT}0!~ *\%e֧}aZi_.\yVg"S]'bEViwAuDC鵵&VaA;a~LX٥T*?XDq#bVX{*ek{ϟW{W$l~S& xo;x=LWxW㒤/ól-U6&47mw_zP @,KtOL{s ښ HfHei뉆qر܄iCxOFaʍ"?z+b4TQNԲȡ.`}hq{{ G ;zٞԵxiR^┵q(KE5%KFl&44۝E.[Fh=2SAڊ9l>5^rzoWqH16KD3ن_l&L*N͙ a"a^Xp.KGVS^)TN! >ؿ\dDvhV92xywyW;u:aQ}xx/YxIv)=ʹP)4lڪ9QQ։NM ؽ8qP^x .eÉG[UL|pGGLe4ʘK~2|Hp\eҷr8C83yzeh[C`B-My"p#/a%U$8~PPɩ4qE^WO=WHiwݗ}aIRbve * )3{>z9{>?Rj#Un0&Vaߤ%P\/6[ܝ|hD.b,qQHisAV M_K4|wLڕvm}n@߱ AWq(UsuT$^dD89VKnz$,ol\NZ U&JzYqCn (yb5xyhL|h\zEg-=u%aeg>"z8O1i\!ƃŲzvCv*;SVF2 @VLV9~EL4 ێr{Hl-i#bjA6cngnGuMK TM I:Ng5\ʪq(V=+Ы %V ؛孶 GdVIw?.ͩɓ$k3iɓ uvV:n~rOxޖw#2 Q<&՞o~ZAjP%LD%IWZMqK_EU VEqYd!#G&Z 3F WBu3FdZk;?HN1Ea[Im@*TBͯ zEP!om~~EϟU"{?Jg$2?O 7q.a:HC=>ML, npMhsc *Bڦ-y"8o+6κ!x,TNx5KlلwE}( o,Є4#FK G!PbU` f0G{`Mt."I)E<sm A Ib)Letok(o(aI70DH!NX310D UW%U5 sً tkG |\8"ws4erM/ƃK -Zjv#Ԥ)2xIߚ 2a=ϥC޿}Q(WN AGUhvZjŧS>WW,ĝϻgFzـ{Z o\kҩV}S-XH:}w ;GѠq\EC.ekXIjyF6ٟSaт;)]R}mz 9OU= :\d7 8T ~7zc)=3hP ~à. +Ju\nD(Lb*!dFe1a: k`61 XN3k%x1U2m۴-p9_^q)FG;t[ˉR-u\V QzϦTtV!=O!N KUQiȝI?C afnS=3\y*i,ɲ.X!*]mY׷ꨏiPs߇R=NBB׊8pY zȔ؞y+(vb{]k*Q8{5T=+L(~dqXxkHîH3 ^zT y VŸߧXS_7WN|=叵% ,lWrDuy*eP7#pIߴRpo#gG0ڼ PvZ>*|`M'}ȴñVAbP;BBy47ٔ)*С/ZukՕ glPu\CKt`ɠ$9:EgC&ɗ\;lH` "WTEĦ)^>87)$ğ}C! M(ghS)!WP #0Gmbd\L+mR{))g4ƇG.sNv|b Ȝ R=g7aD` 8М>ϭk&6ޅ$%&?.純JaG~w5~re@$VtYv GFČu)qsT%7 -9RaӕA%.)mQg~ޭ^ *[4AY̞R~r({izqIib|&ۇC!FżFg1qi7nd9Rձ~mg `e.❀Ǣƥ`ѕp×]1({ _Yc[eڽasY#0gVtԔnTǐ~L-ܱafe  Lmv5ױi.x`DZ]Tw nha>B bMPߎx`&|(wNjwf#1菱a,pƀx |__sNVgBDiFݬ!#g&Ut->wOa/dm9݆5}xjMH4?ػ-(+{D|+԰kl3Y bAţr'N˲43O㕸oxh!}i1f'& g1Op|OU~. yHqX`0j|RxKtR ~\5B>yѢ^D)5 ;}9WoRRUK:Kd2fST^L &rcà gc` O<֓6sJ0,*9`VzJCաe,6@8LJ]jRAK]wVJ9ExKxl"B=>^J厫7 =m)sɫQQdW\=؛_Υȋ9grVY{+:ND%MŬPsZs^a NC5FiVl0'{#WV2 {~⦰cU@o0^'4_bu2&~f9G<-șO@sa Ь^Ŵe$cS$Zх+(>cPwM?="8ZL!1,&UFɜnNrrLBYVc2K!&pښLZbr hUs5zp(rsXYFo9@i[v8G)-NhSSnt:ō uJX5g, ?1%UK Hu$_ؓ/+PĊojE< jO+7i$F~ԏ¨s{WR5KCoL'kP$t_ݒ# )!n)N+t},2SOV7u@*```VYixݘwys mkyxZIc3 s-;(0,[uBy%͜xgBGp#1W\,iT@y22Bع~]ȡ)MCi.-hd":M1u րQIBP$+|g ̥˚~OkL4/vi%01wƪ<|bIJA_ݙ}ߔo b-QY$W~H{LU1N@g2I/abFũi䕋uy`#f m,nUU R_SU>oRgeݪtǽΕ/7ȨDQ OG,8#5Qٷh@65 }KFD=XO%/UI7܊FeJ} x/~ׯS OF%y9 e=)^gzQLAVҪCX DkZhhby[Z+'Qu;%3M@2#Й&"T57CYJx뺎e f:; TY a{05곸 =oԺp^AI+NvZP>bMprDS]B~i.:4_wNRn+`dEQΔ}<2AY.vޱևmeFhxgy5][(>3te$#/dba|ZUz8u|W"q8:AmnC<ߟq;G}_B?5D0\QT~rs%>ɧ JƬ wMy.6njs^g> }cM*Iͳ+<uPN2ZokdF6\UF}(fqA X5~"VmpJb`M2S]Qv61ԊK*5c  TN:֍*r]޼tA(g|otwX \fti2lY_ ${oa ӝ@]f24FeN#`/#$jݶolw"Ѽ}jœl{=2C!xHM^#?VvG15jRmQLF= ?pCD8 wNgwS1zwBj>IFmmkc ;6"Me`)rNU9V&ʳu6d%;)4/UKtz$?=5A,8⺕*:;fs2b<Eexɍq Vk=􁻉dIrs_-Ұ1Mhz (~!Gr%FUtERRBiA27Y 턄AoKOL/36ZC#,Ʀ܊LSJ1bVhrdͤv u6@8NLS0-`z>xź՗VƤ׀Ny8džٝ>3t`Ū <\pЋUE;_p!yb{tzY|MGWiZƖZԞxzc%_ީ?d_wGoQc0oYba!~bi/`#*9de IMsP?8qTjLޣ!0ԣao=(~>6$>׹Æ9t1r>^AxA*nYJ|ן*{'0!!8"ȝ4uZ oQ:7GOupQJoYN'j\y}oИS~-*7SZ2V'իl N@evbC-J/Rb(TjlIՍ7iٰo˚7\)a TZ[~r4pZwGM /-s_/ּwl9#A\7mbX-G{*P݂褞5YHP4HK=Ƨ)'v[hP4ݫM $S00Jh["%}{uY(PATo qEhmlbOrLMp~3]93iM%1/XA-pІIT؜IXb:cCA@n~\g2vJо3 ܋}幼CETCL$f#/f0ͅ#deCw¼]MGn@ď~v_~ϋؾcg1լ>=jĩL{|󇳇nhm?B!8W8]d}u*3sE#ta=])|Y O6<[1pӴ:3*։K'S)@0:,x莭8hhor)86#SI/ZٶyEލH>41U^^$NF;9tGDx[\$ b^qi8 Sع 2b5R&h(-Y* ݀# î\􋘚z̢Κj~Jxn; .K(~߶W>ؠnPkxOwE~ u?[/*A_K]NDEs_eÂኍ|s-c$ʏ+oJSĻ=F(vbc3fӝӑrWC^˞2B N;\ӫvbTS׌.WD@B]^K`K %UfA=#1vY\Q>Nv(?)m⸽k :Rj1YaI (bF[?`dk?'-\-HQ6rk DnJ@ g )KՅRUfF\V\_T 5?B.V}>+h4h;&t"͏g/:UWAE[pqes _+MhADLH\dt'̈UϚȪ eJ /yd}Pc6a2fKVhK= bWz 9ri|N@ʝk퓠yRzpGY B;q/)FLrHXجlK~ơLMŴ١* |yP㗩hl[l?Vt䛄hwijY]'(1cF X۷n6("?zo%1>47b?*r%<̞zrN5}<]aYS,QCiٛz U6ݗkPUDeAӾR=]M=zb5& [zh{Y%BnH6۲NxIr=QKzA @ZDo졛Q:o;v L]Ɏ^v*xvS~jU;/ Z<Gw Ǜp@f7W9X!"RQYV_Ǻe;|p0yԓ3P?gZ}9Xohzx O i854[xhv3QCkFо)ƕVV~<֧: XSpH@ Úm1%rM ֬d|X)3'.N%0rm{I;+ h;G/9-iTy6J@Z|}ތG2"#DI}f8ܛ81cDF8.2@`͌"۴6X%%.ۏ:N8QqDeA9fP?(2t9{f<pF"~cq浞*E`EPP[B$kMعr. >X, +x;Pr]FWC{G͖$'|VxScc] N;\:2o PdIE9_ْϼUZhގ{;~L Dʧfz2plIgM_wB6!qUhB!6 t &U9ɵU\=u YËƜ +^X:ƿ!QkM/P :)<슙uQ>i)H7);n.$FbA<8;ymVu|7IԒ)Z䐚9!K{nAhB w05釷-.EMcT>R|7'0b?W=k P\/:ז²BWoxɐJ9!a #N~_m'TDL盇o?GbOn~&v_N |xY Sg_ŵ/[d^ Qh7>}`U-4DTvEnU92m"F `%)^`wiEn}?Es?ll vIx ޵)ZK|i04ܧT;Z73vU"2K[KkA@/ܘo&ѣ{-[.Vl޺du){@XJ0:%旗MW*,K팍* R S헣8 _e Bp[BP1Rౣr\yK0M3 <m BslŮCv>ѿK=}9.#a,uB+;)\P0n:{DI.#:66 `Ē&Z"U_˥a_T({b|noʀ7.eb!Kߔa*7k1}ĭ1[қ@H- K&JXҊ>Y!➤ \~= 8P\8F>an [r8s#vƆEiC2C'ʌbA`H673vzqd` qYP-ϝer| L_KA.kI06̌uihQ'I[8.!C|39k"*Ο.s(Ҋ.nڡuVAn^"q8 ljҮѽ׏xD0jH6޹ r]Z$:h+QNS8uS4+k>~DovKplM i"q*i/@,3%0d{mkIac0TAFj(rlSִeiāni2͏0|2fN3qNEI;da'PwRJ2qEr(ysS8 oꇙC`qUh`tӔ4 aS/͡L-9Up rpZbw-"W4]dz3 5}t l {_hcP vrܥ<ʴ.eWW:LAIǎf}?j0w=., B</{6Ar ޡS>6߶av{3"Ox>je2fּx Daa.(,Ɓje(=ȏ]x^oy+8YADvmAx/X K+%(ϖs%ie_ݥ#`|u'*a$XZ~sȉ{@Q)ɂ/HꛦVɢe}S rX/5ziC0fm?Rz49||tQ8E0 C=Ʊcv?- ?,4:=8x.!ܯY]aYS^2/dӲӲ2ffvM}m]gHazb7G>i{ *Kτ*]q( -$gC9(U {hUf?o. v-,zJ%2P#< !fq4B\_ |^n>⌁哾 ’tA ^x(&mid`@米qU&$I'o BK8#KF3C۾$O3wqeB. [ ~Ft80|_T?ؼ\v[-T/4GqO]KEcb>G,8E_M9xEi,Nv-VIwoX U$\f` UY5,`|Z_uu:oF1|a!/ÐɺA \XOzy@^5͜w6_~r8e"(.di0e*TнT#ZS=q2$S?\#.pP& Pe G933>]mbs]Zł|%c0d7vxp!l;ly/0vuւ`QyE2Ɏi1Ǐ6X!w 6g%(c .P"νޗߝͨM+he_K$: 4 1`C\Jeb~0h,E hciUJהËb1l1;=bQS]'fv?r?.V4b)Ph*׏:b?65lF<. 9zx WT)J+]`v}:/7v_- ƿe?¥sLǨSKiOP388.36DBR[l߉vJfu6O~',O˒4*srF~ ljX|&UќޣY%j-))Rrx簃cqΏƅn dKN>#OX$?<*Gq{VQ5{H 6.-b>>⍼#iɠDLHl5);QQ}gZ6TS+}f7jO3Yilvn='H;&tFO(XzF~ZҐ;ƭ(pHқ7-+B\B} *ЈіXQLb鴈FuXZ$w$y jT`Ƚ4P%%f0֭$,i:s_a_m?HSj>闡]w rų_7ORksM92[ޣLc&4&y65[}Q^SbǢ<}BoV2n|yPYqd鞯ƾAo^s`|a8\zuc]Wmg.d?*LDUuBN `݀$j/$\9+N(z 9&fx݄KaT# jӻ/!yg_$X ^SֿY&G;0o,3ۡ8C0c0ss&K͉>0 +o _ڨ9~B,K?n).1rk!{ݣp1I5I_fm"?⸔2ug](Es3WـO/( x0>k"QA=yGc .,&{,:3")L*" Q'n߻ewi p|a>s7nMܷ"#IV ]=cyAxY&n}>{iBrΚJXb8 "zsTG?H:9/w >3l'/*?@DǴ:QgјJݏ )Z`(;4oh;Q5{g@ySV:wp_Aa#@XiȥL )z]It҃/cR&M[Q0E'D Ww%~)"j}'P\\wbV54ꪫne9> gZj:)0 Gl=Yz:'t]jB% $BjHt.8-OaThՅItT8QцQ9T GN/L9YiIAmX;UX8NAtTwo#7 sT&1{d7= ws*e ZNm PG?r Vor><|a!Ⱝqʀ Jې5=AV bQwPpL(P,Lu/׵\,Zӷm5+5r׻ذ{G!wxzÛ(_T§'γa&o%-ɡ@QXVm[:8Cxmq |كL>OczN$yaBW`+D5 9Y*w%ٙBq57V.4`c$ {cW_+ZKmq:ްT 5>%kE LntE-Cb_T Ti¾Y>Xj;8cXK,ХNYB_4Q] m՟E=J!o{Hpnilk? 34h`CH#kYJFD"~xKOdCbXG|GO!U&F8}_~;yZ |\j.nI_+ۮ&sv#B_5H;DF[1(rc01w7wm/5kW TxғWZ<;T\-~9Tbrɱ'_t5 o%('4b*O Rn: &#ִ"{(%jpa3Z}e|ZYffv)esu;"W<"ba.dzя<>n%ik]4ױ`[u mX Rn 95b$`[r3!p8L^C_*hsX)][:ڸe{jhjbu-S.zDS_uXʚ1`*o*|$tܦ N|*3L}%AN yu8a>"^: ^;،88Z׾Pu%}2جk3s= +ʡnA+%ZxA!ޖ (|aba2Df$?Y8+ރq*)pÏD9[@zC^&tJk7"t֬F($HIG4f8Ed-ɢ2 vL2X+F4z%Q=Vt(6H6SӢ[>jUO*Lɪ9{vw~ ®.#|S wawζljeGcۺo~/`")q{*"PдǑ>OɬW*063M;V1@~?;Do!FL֮F?iUimq naTUjhAUe FBEW/(JJ?}%wi_|9":> $!UE:ҋz^s7c* :v*g1MOE3`4N y\ab68w@.P;.wN@7~&RNá)i(7,`TFOE ut++$K꿴*WIv8yD{wA TC%!$8KŦIU!fy鶞&7^)3B!tcEUaPkp EYgZ0HHtf \#w+j;%q]n>(oȎ08I F['?!^DJk1cj@6+|;sj8Gd ~iM۵&VzEg`(aS^-dy`\yt,^9O:PDud~U~*uW L"" w4Aj'}ZVHmAo j"$R&au Uڞ\y(̟ >p4@ aHain, k) )nUxØ<߅= hEV<I.Q@8ɏ'|B<ۓiRt(17)tAEVn.ͅPpx$gTg٦!}t?` 1YJey $RѸ!sց~Pg0[8Bu24X ֞IDi T d&=XjV [S}բd'/`ʻ/,OC[Gd(95=tr5wNFujhv rk,!|nnX\Z+@C-J1s׳v4e0+ə}G"rZp# ֮kWVѿcpU mOU2JSeb;F׏{1p v[< R5*UW6I2L9꬘bo)AvJi=sfzH0F:x˃P #+7w\6܎7Z޲ScF>s9_a@p{֯?1oao$D2@PN-t{jt/h^o)R~3@Y[ۚJlWCzQgmZ8IۓGq  9]~A&r3.]Hf#l^ ~-.JXO"lB.{BܸDBA 77NUƌ|ɤ EDC kcз֕Qﻥf,TuO>mPvU㞻C=40ݷ5(A^u ׅ ҂aŝ:|]D㎬(ݡm%zBj(fkZ!(bqTU\4E\ALJUluSnpUr?Jo77UNުSb썾l6; _I1ɀ76Q{-:m͈O|yspn} q6do@Z^:#VSU]EZ=p]}*FW0* 3RѼy9k*jbqsff0@FS&qTeIk@AA >1Z/`}_zەWTIZ$y'&h`z<ѝn7eHKkSb:s(jzE?WOspT`cQu/|Δ7V+B CHUd*~A5IOcC !qcNW~ƭ#}SyI`^S%`&MSL D*~c0y@`i?Hu"6jzhډԫ{{$+n!!4[y#9s (?:X0HH:ص,iFY I\_g|TQ;/9ZS;y6):!s|cJ&d٦%;T0_p<ΧF3FJ2tg LZsi[gO |9lr{Pru_`5[,GמL1}q6$!sY:z@yI%)}6uQiVZDEigtA x4Vޗ 9ȊY|xQ{k,BH,3T׼౻И@,>Ksiu iF?˞}0 l'˴3`~6S DPUjM=2;I_\\^< 5*c F,JJR»G@3BOEQnS -N9)~ mG=lVB6g'_h35.4 Se1zXn`*bޭiQkFn40ͤ2$re`r)MQJ~9BstY1Kb f3 *2ktsoYQ۵@TR^fb+ a&nv|tw.ψZc Z){{pòΠ8aT$\e+\ԞJh0A!ý+VOT+.0#iy"|mCڐϪAu ePǘ;n<.b*cz"ú3-0َIw덧PȬk Fra]*{I4H]"_F$(* ᨡ˿yԛR. h@nbZ.bqliKzݢt*Џ Fx Vn`h}=5c"[ؾ%n *.Z6Ԙ,ʼF ;dDZߩ'r3uCÄj*G]ǽiM '^ {NZ+]I,K^RH4ݡHoy-ymt㦐Zr:Jz,JV%KK)E]]niXKT{;lgJhxaUL ٜ/>,'LW-1 X q ,f ۩ l//;Ma.|_r%j_[(Q9tk;eƑ װDfZI{CZ'=1Wڭ+raCGGƦu֋OS$dP34D!Zov?[ZK @ߌ<ˇQ߻r"ҺEaժ4Tx_GNsRl O [܇tݡX6יrͽKʙX/25p>71 [C_/%Bpj= [qcnϢ _3 ˥)5H07~ Ω` &NX,JVhxɊ:'imEՉB%gͣ!@FDZ&!M@- =]Sѧی@KJUgg)*7>׊Oqţ ]5ݯXB؍ `XJUEcTb.Ml%h[cyEQI@hIh̉rlqEUBW@;key~V0n>pw"/ ?4mCՍџDZkAwQKJC<ƻ+qo87\sCZ61VQ$r"Bb{<|DЬ.dvw\COhǛKzY0E;ȋ}m4/NZ`:m㇌ĥYns(.Z7F=Wʧ3 e(5{ Ф0ᷡz+0)`LzЋ0JSPO4{ޡl ?hk,vd( +E5AOhE$TA##ӹQ0W|G m6b9{tdzAy^)! ̑:nN;c⏥vBz!Q}*s0@1TmG/{_ٟWt .Ы6?,r 9#TmJXQi1&[@I%uxCI Z I*OpY-C5juh'ب;ʥnV#h)k@Nw'*Ь*UZX|'Hrd#4J+s;-ήݣ+*;aǶ: n"O{$mFl j:e 4 Ÿ,KGDKX )mO萺8I6QFys 1G]w 2M`AWޚvTv \y?%aC>@3 U/ŞoOE c[1 x7EdcB T/ҫg{ߩLi_AW9cluA\GKta}؆v:caV%qi֐%w-+KI;\}*#,~~s6c+E7hRsN3r%bqƧ ᔧAiY[× 6KkK9 %}< ,g D/)yzIRRªP:+\^P0'܌vZCWፉ!(.O \;D kCiNo,9'!@%[G 61:Q@$w eV$σ r!m>Fd>yy#ᙥprm$*չu)$ Dcnj ӊp' yh,qLWHKѲ?ސX<|$Ek<_LY;ó!xJGA_@kH6 s ':N+݉W~QFc3lCIBd_8`%4wRp^0V) aѫ(Bxh l35lc [x9Ty$]+q>C#ܜ!UL?['q#yHjѺ6'Jn cȵ ;/|ckhY`/Q*Jɷ|L,H8`FUھZBA_Kw-;3EqlV>@}{gPp] ]OI7VoƁh(|@ :%^>cKʹ]ig|Q}CEm"cŠO4]Q@Tzކ6e b/WoV-+[7qApq{~ŕfLb>BѝR.mruZ2{ u/u( FN'w18Y!Iv.kFt!sXRzMW{rR\ }#ޖAT@_9J$f#XJ:vߝG2STM~i\qsPX1RO %dZq(k/)J\tha,OYpBRk4ajpEМ|/H?=SWq~X3=Y }ڥz$;d (!;6g`?6#5UE`ERx}fXzTUͤ%_b.촂Ǭ}c&&ʏQVKzoDlep3f{MXsbn+ L#\a*H_Jby'(߰ ͳp䆯}GU`2n;jբ1=``HeH=VR]`ʲs޹Rۇ I/3( ;5@}M#2 *I/BIUgRh5cٕTNUB.KQRA!Rк3aR [VQ䤯pkp ;۸ G&G2` ᰊ .!4bkJ䂗18Y9`MН+hOBEyASma)#* Y #!`n0JaIٸn., (7}ˤ(Uqa쾮ra @`S׵!׊d= -e!ntq:Fqjcug %3bI9'n,JͅF>$'y%::k5wלv< $o=9Pk!R 1 D^<|K";.MGSl?!Hrm!G"pƴPU.P5~*Qu7wRJeJO/cH x)jYڲֺa4> {sblDPbV :~^Ѹ!}NV7qdd!o 8\˘ҙZܭF=ẄN)$r4}ʰ-ljDpY;uD?%WF7I 5c]ƴ@[\,Ň9|Wer"jD'q^vXZ!S0O>~x jT^݃wϲ($%x&ƐJ gj;x|b.9FVyxiɩS'RrL fjKMzUO>J)Χe*JWkOoʛ%H, -Y8ү ,nlۀ!T6J# I!Ծ7_ܟEptWad%L!^|9rqwM."yB_TM)9w$OaV2W?I*;D Ar0tOwd+^WdK b:dqIV|M ՗su?>Ak#q kI<ӒvRM[ /TcC7 "]Q?:ԳR?ro1Z-#@ex GhLB6ov~^VsX ^q?-7G)1@F+G&Q\.EyoL$vCݡAp_cɽ :^kk EO fafϯ\e;>Gg]o^ ri,`p{SR,Fs!s#[[CgdiM4mK0Å_=1 e9ǗY0gtH+[4\:|O~,1y{Z=]{R5]]mC|:'.{h>іR1{U_+ &w9%'9p,qяJ:p>x/P=ИܦWss!kFEnj7(W 9 jd%56ʶl`{70`CXQ"8%j-`tvvn1d{1 rU7\^lG#߬S(TπL!OՔdZrӦaCdDѥR ,d ߱k',@_#$mVcxGٳq%K[ .z(@7,"' uhAJCZ'~DgiXϓ7,'BvCq9uX0S䜦xE+U)5Av$}pYnF>c 5 rCZ)LBpy$ «88fLwchZꖇ'3ttR0:/:1)typ>tҝVZ`URv3N=BԂ0\~B {Kbnd<nó%7Tj ցI"Qv95s y%QE&1s%K}^={)htt_;ԇ0N$+гz2q i͗&Fvzen"ɀ_.ƥY$)c@8TՃCSĨ1.Oپ1kIԏBVUm' #ᗘ; bE&qh O1*`CҎ''k`3#;\A .3*|9囙TVpXkv3U%a!O-Z6v.2ڶ#H{Klh"R7mCi{i:$Bw^+e2NyP/KA_2/b4 FY!z v] y3M.,"22y 4[Vh'\{)*fYDf:<,D3qA$MB:+.: $ⷦh P Ŧv~Z䔟X?EPܽU7JF[6H/aU(*/s ,^]SYGw9Gf0Δ<-[jRTݞUu;5B afAUfi8GJOneEZl-8Ƙdk8Wx/3gL ! E]߽}c-gL6Aǎi{+g&SZSt㘑Zpyz&ܜfX4U}J覜djgLBDBjb>Ggc71*A#O}lsӡ3vS9'ָ$3_7&aO.ә3%'!RaI:/A?ޫ `fLB>*oRbs;]JSH~3o0{Pi{Vt`Ԇ9T2K^%>$^ S5&PB@RKͬ״EK<(wsbHD1nq{Ƣaaʪ@:{3.[Vϑ2ka E<\0V1τճj̹ECP#Ip&-{[iepVq8S^=Xr5($5?`]r | b塇d|$|QϪ';V h,V,A"Q<7)TG~n.wF$PF'K]P,(tR;Лggb'+u>S9 ~2(!ҢQTH4{K H@ C)ٰe*;PC)ii3-dqVI(>D/2-J;2K)8ՀKԄgاR,AS"K&J+d?-BwKhu=[}8y2-Hp(Y>է6uQ sssBW1ypZc@Hf#V\c.&ӘzAm- %I/RN^3f/ `U&2ZQ:L?fA6Ibu ;:˺,^Hv!\ԧu`-] 1*-m,)A<~i@x3,_\ԏL{R ~QQ) sy|^i,vd1`[+|vɱ-wYr\z~Xm'\c9h%RXR*xx5Ɣ 'MfTkboǹyu@^;' }كt^[ipAhYp Xwb B(fAAG/A1vm0jjD^^aQS;Φw`ks])G :TQOqPc/=Wpk% t q!Ox<bOS;`Fc61ϮT3PF *t |=& w ֽZ*Ki_r~BGrӢʵ"v3Oaro?n D/`C[CnrGbŃb̐AP) 1MU"6\-#-̳03ٷ:HQy(H)s"\s f {-~`Y4>ED*iT>AV~DŽ O.푱h4o^YR_3B:F8GDh ;̟5_ݘ? 1ٲ_]Bo8|WwI%ov*Y!zc\ʬz,JD~i?k s":xPZُDzYЇ$?׻7P{ -+i%Z'bOb (ˁulӛIm"L,؏#?? A[jtVBV249B YR{A<0 =cmЗ="(7ī,bC4EI|H,MZJJ̐811<޻~.6ο ab.lF q8Z{YC|( #|HVԤ ԔWy+2 eHLt>57`V߸DYÂ39$s~OW0bۯa\n-elC4`K(9#R(KȞK(ϋ:cr*)K&={  c*H@}bY5߹+< ؇˼ cevixzuӤj\~vyF@H4\N7Az(GdҮ$ԉ$,k; ݗjܶdWg#Z */hl +d*G} 8eX`T5cAPe.RdoTpw~Zc6Q؋׀"0GI+亊Bʡ?ztѥy>, P@ѷ-[w#H#z<2$S#Sc{m9U)sQ=Xa2 UOѠqQ؄CubU٤vwJ^| 9Xβ2džȌ|*I֓+$LJ^Sݨ&u Oß֣ڿґwbQM 6b^Dgqf0yVUܔ{Sw=c}FPC _ugq P5f8ΫLN nIrv@XoldA̔nJIF~hwU΢(& ji3 .*ZuE!~ 4,uͱ}њb+zr&VBčXfY$ߺ8wԙՊq0᷀(]*|@lzTpnu !Ȑ=#udP@ׄ.L$v\.Pe;юv-1NS ʊFB5iK;m++4?a8Dues֝"ұ#/])OGH;# īV_i[<>¯ `T`g2*VjB1~{n㧡8is@΂/{EnJ~T*h`.7dB#9F6M>'…LlYvcdb(fRj0ݭbD15"Z> |`ҐMoGb9͍bFX[eNTQ%`'7n\ڥe> Ʊ CJE یoI Cܮ9^)ASErq20ě6ęTQyaUU?c>.>ёBoHޟc/򫏀_h7?!Ie79dmDO @C L8gY묋exԔlju3 X@ Ct\y2b􄕠X0OQ~kuwlnb(2}܍Pxč#-\$ffNޏ=|L*9Mת19I (\7B IĿb=ށ<Ën?jG k(u{$Zxd٩D!l/ +F!d7MLQrQy؄j,b8.K1Tjj\ըAQueGͱzXOjJYU>E8A)8tv9L6 X1lzTgmwk>pDp}pT)2Qy•0 0gy>FD(Qug+M(QGv )W7dU.+|5kj1uS%G+a4~9?ȐZ? 8Dse[h59WC|Nr55P*ea Yxx;'"Ͽc$e;m}C܎CJ@ށ;sy$^d €)ѳkӻ[?iMu3-L8i].,9TZv}Pb< W6&)Jd!%JhEU@wM@(ԡj/s\@*e)?I9y[>zzQV\HKz}·Dꚺ +k'H)?x=jnLA\'E_Ah/rƪYʖ@ܮN72m$@ x{ 9 *m:֣@^G=r@?McX|P aS"Nmý]. $>aZaW@2G?ASy} ?'&?f\,X=>ұᄘhڵ+֎2>|XNE3y`mK wjܿ! 龵|b6񃉗f':kN2!&tXe;ƿݷ+hCz"iWY9Ot/*sfsĹ~:@ŋN?M1bkK9\'KvI.vcY?-޶(mѵ Mgy^6pw78pJBc~amJ& H11Q9f3_3NsFUx|IT\>P;69 0i )?xvۦ>gWI:t-w7 k?>nr,E]y .ܰ5ПJa 5HΠUk/Mm{p3< 3*pz QΐSx Cwux`-#!rԶNJ@SwV+ow qY})'8UۺXWK%/$rT++uCV25S\H:t h ҏQdT|AWLKk6O$17+HdMkYQ4 vcX_z)=+TcSd6(m:.S~xs&P0IۦAU,x #HG,`δX1(/tKԲ&rZyl?I7l }O/#C"Vf7սc)QUۘcg;n?<7M}o!4 b'CE4gbߜu^[nxOS#FU1/sš .mXHפ 94| _LӪ#H +U0 {x,UJzь:!HVC@jME{M۹{FF\wgL+Cta1G"+W%vEAV{*e /[5̜Ąi%l]jOƻ[b)ɍco-!/9k]5ύG y"g$&NOOMEvއ\GxF_!2qb H]A^RtoZGc>!p<l@vv ;51qVVĵY-el }bDjS%[ ]n uk V_,T#E_`Z{ [c;9ʵ;I?G&$3Snmtx:d)ΝPH&NW>(3)PcAc:{(ZFXSEۂ֛bFE!jӯ5\\d95I2-(%cUơŖr3tN+b"\Tl+zSCk4hD3JEfI_yFh/I<%Έ%C=]MT?Gp&vG*e, '9Te(62D5FYx̉Ur%9hȖbpFeFO1dߺKu~+zǯ ymQdj;Nğz5i;j A&}?&<^4}Yaxk SSѾF;KlS!ahqjHVe°̜ʴ\J!_@>sK.M@VȳM֭'nu Aly cB+BıK2sycKL!3쨛WƭP9˞Ҥl՘y$r/mm3NW(=jv#̋_L7CY :v7C nQT( :kInt;/֤bJztk@!sxN |+Ċ[ Bczv8FxC}L2r spL̥ >scycEHjzG.#"t.:U$)/_qM{fqR:%Puށ?VKE!rsט)T0H?mz Ƹr"h5W+;C:!溁 s4xC]j:uaiU19+n/;j@Mtpr\Vzfl1Fas];;4*4)ˈ4ޔ,▾\4 sʹDP ^ Ҝoo>BH -}@%f\ .Rv"QCj@٠I+|JA-'Qphppa ~9e.q׬SyL@ r'V%miX!Np(b;Ar0%C$Gő{@RnJo8.2~ jp?ǽ%f'GoDPq3HaO1z2%9U_\r~@I鎃 q'=u'T) \ tNL`.u7Aork9 `MIU`E?wyd&6:KJpLG*bߕ6PMner4L;BnI^7xa@[>eRfF;l҇ȳDxá"4>{pV>h k""CNX=L]۪X@*;;JfR@1?J= n- 59)HRH_?v! ]l<,&pT&`ՙMTTIy2ۮL.=;&W#m"]45NkT'@0|w0N*OkJôV ҅/S&ҬtX~^Z%z/`ڑH?9_"{ѮjސOajq㪝ejdmQ LS&b(hfd^@kyid=wy) u<{'}!?plXָMoj9!iktr1lF6!k)dnE %'V 2o%08l76x*n­$#lkN;z,lPJn=ٵ#;^xiF}ns swf1 qlL%b͖=\뵕14W/wwRN3f~֝+\>YEB`(U*Sr!^D!obx\ZdyCwFV -h6&팕G.s[%5 c׮N&CW"/ƣZӉ"'*Z])@Eug(<فoo>C_= b rl]4:$!L&y=n <_3/W E=O_.ᗮtgDԬQHsxX[ΛǩVV>˿dh ̾ /3АV9<@ulΰQ`ZUN}qW600 ˦oVP_(T~-PKvMtա I}B$E^m?DPg)v7׷6d|M|X*c]Kv\7k6#+4B D|_{AV,uyp3C]3O20>E#mj G2kW}rwMږτJ$W7iN6XԮ>i )ݑf:R/%-k렂3A}0iA-WR,SkcÏ%: @뾿HK:(` O" $rƜ1.hȹP"v =1((5`l/%hAMg@Ѡ9p*}^׈|k!:U!]9J 9aiIj@#bO_w $n?:?Txi!.>}J 6R#@A)i07~tʩ}VZZ- :! CO ;v#ڿ0ezKUY808$=EWT' һH9DY9~tM&lg)}|*.%YSM= ,%/lZ/$蹷/S=DžiLA \qx6 5֠PZ-cnlVhɏLb7.jiSm@SS@tkm/`tqzS >14jh',#KBs<\U3 izQG bm 64rgC`.,q"dLaW* w~hMo^!r}Sy`e˹Re(E (/Dn./?ijDeniOF2< ܖr.֋mJЧ~aN}h=d!픂=䞚BPSn\9>vFMm*P,a'](ƽ*\"fα^itڼO] iaIc7yŒ\~t[Y|ܾ'Χ"ݫf뉊]sog|GJ>#BL] y|jW3CoLC Pb s]x=BThF8*'oJWT/9X8U1 U>ĖUϜm=FE%U'Tq5Գ~oN̗.[E6QaAaq=9wkύǤF)y炽k$3P1ZUfB|oE树y/Ro xnl5hlgVZ>XcD2?U܌\lVI2L`09w;sFn,׮ypGWUwLZsHvw\bAa0JANwoϨz_>gr|*1)Im vhwmv4Akj-/>^yCuU[+W |^dM98`*!g݃i$S{ۗ&weҋyiUh: 0Zݲ,Gf.Ƅ F3Df>icL$ =qNl}wqj?K4|HYF:NǪ$!HvXpKQa"ԇ P:VpV-=3n/GR2ؤ{A<[=Gpu١R= ۛi%<wL,QhImpү^^.ѫҷs0XDq EDtw^hEƍ;Ve?*dsO# vn\ԕWx5)fO0a 0%fN)Bw}G)P0(OE߲`g[Z*ˎ\=ˠUЂ46CPLu]0M+RPzU#zL~?ɢ`@yssQ'JQ8E<=4 qMDVl)06I5:T%\|Jn^w\pK ]} IAwۍI zmRe}G奤dw5fzÀ+ڗTBsxr -țzn- dl;vw!T\Pmz X77ֺ,c8{7VAR(+WrU:k%+)j>N>Xq%έ1v"׽lЗanlذ͍R$r5*A"+DlR 'z_ו(Arb8vj㚎V=FI~-1fr5 N3"a.|ׯAQ4E|. 5*wT49m1م;)TŽ. ,lCnLy3_nȦs l_h25PIlA 7zԖ[7-,7kߋpL틄o@IJO1zJmIM?W7ֿF:׏W;݁R}م{4bZ}gc٢m`-۾R,󋌕bi^)XT(֧ٵ,;D%$onu¿#LxaFA&kzCb _ Ձ}nI_Tv(8 +M\,|pƤ,:8Gt%qBn쑤 p^!d7Ja90\ܼI]K4Ro}&-*MJj-pt9إM+KU9\] ^2U, C]2]"v͕㒹Ě8~Q%I??%A]{Jo?y$^5yL֯l ( Y.1_Zr$T{ޭŀ>M~˲%o4Y=K_R5? ^DžzCOae'(`-Я,~XK -L෻9س~D6T)ƒ19xC)GcFu5hfm/YRO x81LxvJv, |Y@a.`+/XO;0ࢳ@/VXXԴãV&klΉdmREl*55Z9[.H:iA S"o/29[禝dcEpxw*ߤT3`ZKh5վyAn[7So( ,<ۥrrFS3 3@)9a(nfGT'"+ecqt=tbSUJ⛔7Td|(XOu-3w@Pgf@pL |-L Zx*~[N&4$6n8YHㅆ6Oqp V$KLϻH႔7bJ&3 gv`BҴRx: 8vwW`v9X7O{K#ѕ.O}_Ct5TbFA-߼0BFLt&E+*Qn ґoRmNG j5^t-ce%s.᪉r>н޿g;Ts/H_nDS9yAٮ""ǧf`>Gz'j5 6 /FhS]CLKR`g[MKjwP>0 9#!;ͮ$!k}xv(P|ؾhd̕X&{iD9m`NQX Fs}Eܙ4cg_fr{5J`% #ۖͬ;?DVjW=@#^zo6RVj(wa6 y5]rrlcc9J(wH)U3sjEkdCΩHhv>2`WH]2a|2䰅{ΥzX~mv݄@ gz.Hb,FG?ŏx]N UmilotmN"])wǓf Y+ZmϡcvhUęg/Rҏ11t!/=3Thw!.#ѮÃ~pV w-NY%}Pޚ;,#Y=NY~_Zaee;?\jsXNYH(Ow<{[i]A{)@&/=9Wm-k~5,[|auN^B&]ҙ-7 g'J TzN%`f!)Hᱰ/z(5jxXN㩋_U$ѓP40 zF2Pt>? d+xay[b_ȩ~I ]3`ȥGDͦY\d)\&Lm鋁q꯱LMH-P"[2^۾d|-}O"~\u *ՋzU$ o08:0ⳅiR=?K1:*[UZX9]W\nfL f(LR Z̟+|0LB`PР䟺 #zd=VFŦvxƳ#P©@OJ7<ʛA5j)q1c)Hj9 `<$'! !S <WHDж,w O&#C{|zbC2okzbghA U߄`It2DgrWƈ(>Uĭpu}dzBG0ƩK_r(d`E<8AWYv_BM!XT!)_0c/ %h}ʦ5証#>Da>k 7x~`l9+y#h.t3Z'LrIp_ډ=M/9 `` .& p} 9JafzdJnoz4藄!P/ UٕX~/$z)&2gjYB#޺aMk~ QZ6jTa|.1,q}}3,f6ѶN@t,N~WtUx׈ʐ {R`ZAl0u> Co. 6Fe6"kڜƛ& ]Zn(G  +yO -D<T\X^j瀉NǁZ ;]4<{?F9t:&( goC?3PCH,-g4~ D)ɔsFH"(B7xє}F\U[ڴehVx%҇"?<,`?b@E $|g[Z<V3֨M[z_x Q]wq99Ŋ d,٫âZ1W7ꩿ fuԱQrKGX0=ȇX&D {_6@j!Ue͸c;N 9^٪'T'^<)QC25/κr|:$M)PN ;޼d 7OGtd%irKt7m~րi5|8 Tۦ`^9xVmNWps91 q&u,4iSJl`d! } ?6E (#Wzw:M Z]2|PjG4H~fI=yg2s&JOdi|b̡o<*X5yGbהJO#qaVFq$Pbq"#Qz )QkRAtPJގHK Wږdzй"sb+bTGXq2ƥL7>'OSz?zch<?jY4<|N܏ehGZ}k;:4!$q-O 0Ȧu=I*ڱ5@u(i*]bd^0 oCӑ8D>Ҙ_/( e(`{/Wáf0w~00K|Z_-M 2W/Bb`  9.7w,N?5{^0bJ8IR{tUڄ"i4Z2xOnvGm+^^̩l;ЋeQh uIe/SzO \Oى+ a%Ӕy۩㟧hyM-IT>Iw!vb!=$qJns8 WcMƃT'?,+S ZoC3&R9f< ڜI>B]8ݘxkw*Kx;@_ILKN?uLR6L]l}Q I끸dnx$i<ƅ9 {.O31EcÉ}56Ȑ*^ߩoMrK\$K[yANȪ5ǒwe g\@gh(CiƩ`(-enE¯jҡ)Q$FCoYR}fY֭:ѡ$BmS:1UlL:e3h`y^4'Æp844i7qIE,CaP 2}!'z7뾉<-Rt.[œ 5Xde5*99.-4)zPU|˒7'`49)--Ϲx'I"' nZ>P9gFsD.>8 }"g .67E"=KvR.H&8UhYڼ,|ub!1ȍP`(:a mIMZ]G׬WdlB(;zJC NS3w24[\2Sih,bP*$Iȭ]0fx)}5Sn(Ӵ'egC:mdzwwmrWHvrh{ v ߶^ nOEzڧf@ۮ_jlK+)EAoc"xIsDP8>NP?ʘ[ۢws۟U] .+|72*圷X\$&UJn~ǻ@׎Uŏ`{m ="]A^jOzMtQUB ?ą]B->~dvI ȶbX6xTǺWI0  ,RXGנ-LDMI @]hV@|R!JPG]VBNcQO.](ӏ0IRiݟ Oȁk?u[BTv iMEwϕgg!JSvcI G$';camR[#<`E@ Y-&~wUs e6Jo[JTvSVEBN|>(jA F&/T,RB|Q-0N:,ԗ-F\ϑ,f}ܐW3x$QõbWYƬ&[?&9"$Ï:[V4Fd Q"%U]JcOw ֚gL5MC!3uOg/ֲ5xx$ؗu+['KN8♒6K2dR{R~.o$MK%<ࠤT| Üܦ"/:8|́&|1Ɇdjjt&^BCPn PVDh/'`:Niן`âB>l+Xkʜ yl)O 3ŝ*~:a GT7Cn4{xMR+e܏n9MC٪NZf;.s`Ki(m֪h#Mjs $Ṃ& YL+ =VhK K-JPx]u|"KN% q WrǔU/Hx8GAnAN,9'Usob&@ߗz O7~K3([Y֙UqJIJj{cK#Bg!^|oJU #cwi+l^!J|xz 4O-OtC7rB3V*4j(pu`!*0Ұ< _P1S?KMwτOCU*Nc${P57aeGr,1l:KOencSn&gPs# ױc.2hoiaxi$yBϬ>a*abI,ԽyYY CsDEtKPS`J:87Hy\R3h;9Sx>|}^5-$ZnvQѢ3Ycuc+!}Zܮ2#0RF529ibI3y̳_xj_ ӈM 2Ͼ{:F:jtL؝}8tXIL)xٴY{:s{fJ~f_(ck-'ĮН#Ԅ| {PcH&]/QߓPfTWseM6*Svy/&:HhQBxv=O}h+vGCa(؃‹K}=#kPog/=K61ns,Y5Tr:gJ: mnT8ڕ)UGӪ/_ƨ'߹M`SY}Ӯ_Czw+v16VF2FiS> {]Ԏ%F2~P(oъam+̄nVX:ÀKP֊qlաlI^@a<9mHr跔WBd{\fT}}4~ qa| BHoZ-܏٣sk]XSm QJauT:H뀼p˥5U.orIA@Зc `J 3jlx"d< jBV.VR?C,-Ş VhX,׆RdV"9}cA5ٚ[(_ͳ=<\VXt7:'/r-&v֐x$K;VR!>Ic+=y1h)& `;}]9HBY)sbٰ[{I|1&5QFx^+y2 ̺>G>Syޯ, t$ `!9 9rHp*[C7Z:OwtJi2By[a#J , %d΀CO3tjC%%66HHzRzYm3mS;=|#xQZfv.NKIRt"EزYB) kylDi1d>/cCJEEc/ɴrT$<yM)+΁t&G\q/V}TB=b$!EeVW-}o¦?hȎŖRSarVr F zU95t0 /b1BHOOwijgP0*9= 8EPVs%}%U3+e>.ЈsdxmZA_B۰|vب9(VA9Lb1$|yH)pgz+[מ z1" 3\~SqkiH&Q{n'>,ƖG'6&0CM ">9RCbLF+p)yP5W¥00L(Lf> C@^!)~8ӾfeN_;2eUҪBֈ&ޅX :( ߇&\ϤAZ$ |wжH/qy\VT3T3SI1g& >kTyӀ#|_YV}o:*ͅ{,24B\u%@ʩcn+j${]Jx/ q9:~HxV=¹hRkMAS1c]Gڹ R:{Eay-eۢyҽ*Nʹs%҃KF59S6ݦYe/'+Z!{e,e57-?2/_Khw´@;j`[Nâ^|G ltI8#e30cFuHE<L&I03 *"L.ًԕ*TTt0\>~qiS3pULa'`*XӼGѷLJ.L݊qEOFrn"4iE Pո!fVFBuone14( M#@PIp*<9e23:c$)@s~/n;"u잨Nt6{[321 @k  ZN):5cs#A5YJ.O fכ8,mmR6V%ߋxa!s&nRM3pĢE, \2o$QtJ yncsheu$ViPxiepjk-1 :7a}avuXbZ׏y1_6'VM&Ɓ&]Fv7 [ص 1]e w&H..Jj-xl R>A*6V3ZʋCw, fbIFbpXvaQ:?IeN^z;4} .>?x2wi>h^)3K֣YܷC g2g¿&`@W[e;Tt{&xg%c<˹Ys9.I?357Mn rmUVֻC*X# &z5ZH(^Ȧ{~em*1Ѱ&`o,4 I]S6}Ա ýf+LU!;LQWB sd5ȧAA%E3"7_cqoз`o3 ,D1fkj@U 2]֟+B6 %A&cnT?^uL6Q:[BGEcaCR~Hx:w+ D;BEhka7βLh/xIpo!+(rM&":aV6yQ1ÍmBeA_^c}@p)ۧ I2)w)w3!FP$Y DWYyQQkhiz o㜬cEXZ^e(!H؜R-S/O] `F9V=d)||2(RRWڼ^%wpyôm*j/Ju ~ȎtGOL2Kj_wRuqs*||K[vH~zTj iɄ(m3@I㮝hH({խzZlc#F$\"g:Y-C DͰ傤f@\}wɾd%AiE$N^^ۣgQEQO:G?pXvCBVG hgWM,_vuO=+e~#q\LYi70A“׷ /Ȍ5Mw/^_K]:-v=SVIOL+e c]xU2^Ϩ!'m)Aq3ث.ywVq.Fg#W}*##|Y7K[A(uݰ]7&9qk?e1̒*Reޗ0;ݺnE%`4mAQ@Yf2(*ۙZqtҒ"` Ry( qd%0w~+!Ka.h)t@jCt?ڛ4T&Y&^e4nbU itYУ,N0.;ftG]0.}g $ Y-0yDk <Ο,De[hGSF,/;T(fO'(ߩt!*CspěwsAБl.52<%2Ƨ +rtUqDk |:n Ik '¦WFX(Y.z"5MgytJnT"ZC P4z`aroӖF@[":])9l*EI,@Oc$nhEٯ-H{Z7hZA"9yC1BM A;*u␿ @`QB& 3k|oC%eHzikit Q }Abę5a_١du'>!7™-{l<3ψuUro؏c*jtA).'qo]1XT%7"g#Z ǤEBFu!oixBafi?,o =~'3zf%,U6lW3lćJ!9 &%;V-9+I_Нl)9ܜIlZz]rpQk/SͺFTCC(`#"WVƟh%К,{+jH5h`r4O:R9sMX#LMڤPmwq l6Uq+^]f*u7$4ga,XYHҷ|Dt:.ʡMz/Ŭ@ Sz]Oƃv蒬P M&kYAץ1,+*,vn6~C|xʳUHD5†fQT>~IPeZkP4kAh33OiGb~$~iP/(\VkOS MV f^XAے݁ +!gLO_ng0uAwHʆdjG a[y+!|B c;vvddw*hU- Q&CYb&2j. GqH~!5TY ֠bSh hRs*bXcWk8Pk/mP QHM鋤?6qJjfvҁoE匯3I:ɨfAv+ XFjā+)a/6V:tAvaN7X U2zTo\Y%IV6Z0JaV 6lo8e\T`?k!5)}f2' egSF9قp?HkDXu:߼󏴴Wdyb]-ݹJabwJPJ?lvp& êbJznE3~GzYGЕM Sl!hy\)b64i oUD@Wq.1V%adYTLn)r~ [6,fM~cx#&~ТRK_o6 B,rlhw-zdb75ǹxOV-sjPkîdSH^ZgmA2A҇`2cԄ_ʵ9eG"%iaql 3+T%a2tW$s9=7,C4۷lu̠B^L1qfiY t2/u$[Ek;5yZ`#B^2-Ny6S[dnunTMqF!P`9^saf~fwTJ*-lkIBe7{ 2[&&?]*b@$k@fglvc։"lgб~oj2}`ejR)Ά҃o e|` @J\;e|X'Ks!l~j/Y+#Qb 8ArvSIژk:fKўBbba=(d352yPlGjKMM؂25)_#3 lys؃:$0uD 8ήtg#4J`١5ӴU=fw\sE]sqDhsԺv -%=X;u-]Tym$'u:]l㼲{D&0SKtI৖3a 5瀪wWؓX7eAOֱ/^l8xO  mB̥hL꥿K7`j] +[<!xWGV̘xU&eLGzh6S]O/*7rϻ}~@4! {Ō:s)>"b$aev!1!ծeQ)AF  j"(pf88r H줈JƂ>V3"W%(P%ͲEF}l;=B!Fv?;+c YrTU5R Ynd}6hӾh=46XRV7&u4܆>x\O9lkkmD9nO.LɉE4>/3Q t}2uظɄ=M4E0YVk}[yA&Ya)a.9ss X ,}C9PjP,.ZRśùS*RazJݼBT0bVr`LU$旎/>FH̰ <+vYMø"* s+҉QZr@6^ zcdi~ga<.5IZ$x)؂ᒶ[Hܨt XMJq6e30{@pصY~qZLcRK$GdUj| dbq߳(9vS )Bڏ^SeC4>Z?A Uh-MD~8屳@|'$bK-a;0amk,g}(R[ ٗϱ_\2̞ #[;Sxeg[MoIJWJOЭ7pE>An8}w&cmd`uq `?ӭCF(3Jf\@vp 6j˕Yt-~UOWm|^v^n2&_`=?wڥZU:yYL86]o(L;C r{%5Xhp= ?"vU~Nm#dcN n5Q{Ÿ>^b[t%s훂uD8p:ʶG/Y,a6锜Ts-i̻sID"nCF':o}(f#e ͩIi287r@NYtTTAnV.&k (RBQVUǎD.>~‚9LG]ټv;}oWK ~'V P(At>z#$FS7v1RɊ!xytɿN#S~%F pFA:{A=9k,6ү'XN};HztlArKn\;Yصk=_8U/'ib<Cƃ!#l6IiCfq\ &7}Ң._tM4'B)MvCWMP1I/#(5 E? |~"0sulupQUڪWAgVU8q7<3%{NpT޾$u]91V$+\aI9$t91i y`$:P3y3}+L3$==ێT^'.9ZK5p <ڻM>qK2h\Y|f*>R]/̂,# ,@߯y=*+K26i J4L YloW=Ӻ:aѨBS4zՍ=6v819S~O)lh[PQ,Kb5*,~hb'[F\ģvhqedKs" s{)]wv'qbKs^:DȳHi"%Q~a H#q0k ž*^F ;G^2ayK&ENy<V L̶Da=0;\FL Wz&kc)rqKN:@:SQ-ݢx"0xTus]1{j% с1!,[ψ֮XV Fvb6pR!k%s =EHNxIջPA1CMtϢ (vPMb&“p#2?JKrcK}%ĀU}^f i:Rh~NWS`j @?y oywxFXcߚ ķY!fyGיʋaRWI[E'9@jZ=l0'dvMAjգ<'tp%<г'M2dTk=Iכ!{ %|ṷ1v׶>|Vv!"F~?ZozkF} tzTt^m~6QsseaA"/atE*jq-addz yCPy#?Rk ff*CgЛI/(̯\@C^|] "Kֹ-I@q$+q]a@C0+fo9A$J4pyLؔ"]*NM*te]Ѣ@.] a ==jXV}|'yz7榵Ekؽ`;hMƂH?ZW>%&.+S1Hs{Ek<&~J*i6a(?Wk.6keg JRϙtej'R<䯬[Dwc4U]D֝3LD[0{PC~ BmX}8IkfhX00o<'3ͺ W<$XAbǂY@.(x_3-Y![[vaiC1|!W)W<db%{0}`-=J)X:A|)tI}f?4&Qc胵Ij| Lf7(/j͠nOln^bwU;`"%hV!T. UiB321ug|4^W<Rƃ ƫ*n´ScAƙe {5ٮ5r ͑ȑ8=gp2h&)$?(?^ZmrŖhCw~: vnLRgm4Bi~(F2_!\ϣk 9;1Hl oT̚+FⰨ=^;R/ퟫ5L[}, ={5W^>*L֢KYɧ=0Od]EDP-5/ 6jόB&g/` DTx@3I{uSslͧ-_L Cটߐse!{#K+r-f |)H ym- bi4vˌsYRm󳟧BGJBs V!*U72;蜬)NXp:{c2)ĠZ'+u8#DϏ`L+|S ..a"RNU.*B,NoSɇќ I"lȏrW։~ 2B"pS{A&FN( b Ŧd9 9b tU'dxyFX@DZaQDutd%"1$C-Vo)̫B[Dy+^T4ސ 1Q9WQ{Tԅxb`,ÏtW ,W;W2ŕ,2#E02o7#ax{N=+ptw;t=np1@Y <ׁ1#H7D[?~N5}-`78i,ZܳOG⭛3:pK8~NMU5qv_M>c%H!Ұ|UZ{3vY\~yF+Uɾ,S'A<Ζ31\1=LPae5e戁*B_6ߓZA)$;%>%a%1)SJ^B*`mEO&iV=vlOcIF»ғqrwz>Y{7D@eǘ/F._M#$^LHڰJy+xt|n zWdX+-,ǎxH;s >Pw,*=gFag#F! 1>B,.e޷CYiA}  +VS@-m2sNaNdTvx6ʒG`]DT)`x8(wabv,֥*;" ͇o};,޹D/2+ף-ZvSj3EPO3D^+}8lE.,pgޟsGsspьDbr&b"^ߠgWPfG׀( F*uV>_X -/o]tJ`sgzp̌B"dxtcT'/ljyZ0\YISI%+Nu!.޼ x&R!wꥳzzbƋ`0N4 b͛ɽ2Ǯg%In \eMb6ͪ3OXl nÑqo#!0ؓqz'Q`.{cTX ș%0 3i$r}i MϸV }dGЗ aאIY9`MӋIo,o1=_azaK~?9vr?f`6MÄ -^Z2o~Sc40=$Oa~M _j*xُ_PO  sEnN9ace )!!'[)3A=]y >]"~A)!~?f#P vQB˺ !|,5abK ¤B|^f{K@ 6yVSsۣ(H:lch0ú.Hk:&*@T, oFtP"C-?{ILdLu((9\KEy.N a~@pLu+2h_ \-KD$5QTb sp5_ gw6;7}IXD0]awGu(kJ!Ns<Šwwlq' "D8rU,4 pu:IKAj R r0@ي[ {s_`KbAzsIJ2>eWreJ%3J ;T{]VɸH+G3vhdž7g6@YBNuq*7Aw=dGv`bNb+s=2Ȏ\u6Ц0иDJ޶aB$'@lWC#hx@:Ҷ71> 1* W;:k^z N]-2 & _r'kcE>:cVDPiM(j]Bz_QZVKRּ GGbu)eD-ƸXEG@g_s,&mLVu)K8쑧H`hyM:F Zm<M\aFZb77X!9{|b1S狞 zp gQr|a@HƽsY1 *Vw޸xE>ۃg]U$ޖSp,&X! ^!)J>ޅ=HO M.VuΓ1]}hJ nZBnvq>0P;pY:8>kNQ>yTGz ,#Z&+ξ"t?)x`Px F8 W a .&r_ץLayc笶F8+RpjSh:-.PW^3ћ6Іؐ:=ȫv_0rU Ղ7=³e%vG*qRBx:kJU[ÄI|=1Nr)YxA"8ʭκᛑ,,TDwo @)2!휍eR#-jK5 BJh;" gQT`3VǘZt3q׃7s q|/R vhaJ@_ig! +/%ض%Il}McTW@rQеf&lU3iEY$tzof82uSar Rg(iWGQ MUw,BB^a ԴDv6j vK1/r,ncohX8='ŝ=3%VaHl.`uh]8ܫ'V0b?g &o1 #cD#~+57ƜxrhQd[5R_F=1c4iÇ:=٦ِwF(ȏ^1]уFItSac`f0̘3e) >Q .f/핮Iw/QOPBYCDilܕ k(/]}] >$RM`$M,tqE2jw@xTiGpɩ_2 8M`iCa|Si&a kF.dSX ԶĊYRUlgz"#i7Ni#@7swB3_)i{5V6aaEyK9 ʉFee  lX4YUbvՀ9‰FX^2K)3uJ&=9gHn6aeg 6Ms;;f[ofg5 lLKnT>!WEЃd JRʒ:< H_%㓁zs@et-8T?*>KKQ{zvc 5Ǿ/*H B& kfӔ;E~d Tu]/uI Dp5Z;Nbhi2sFuZmFVxPq\]5i~Rw(h.lXl2rQjR>̝)a)11IujXzYcnKL\E/4ؗvўZpϘd)4fow12.@OxסEVKPi6'27͸UizE} +1 rA\\Reu?=\+g- D8G%d_8 D w&;39THc j< ,RV)2@],n| ^GmyediYJ%Zg^I3ʺv"Z ǥj(]T}McLj)_^PUO p2w}e͗ڈhLiH6FlρC\Oжٞ"PZ乗1(|O랬>JD+?6=@z2 bXQlJWŽ!,(Q7LuI=|!r< E[w35lC=6/=DñYm2□U߽ȶPŇʉ8., _fǰ#w4#I]$N*|l|p_zhy#Hz^2,gVlA/&>no7v-ġ6E_ _0nL)n^s>J1 ${n>-=k3aDc29ː uTv#kб7 *;D ә,d"fz h(NF-}<FsSN; Ǯ:xr-Ԁ }<0D$5I,*؁7cE ,PjwmNj,N-fԽ Bj?z)h[]S+Yإ 1]kԄK-ӫSA!vq?]M\=4KI魿:4 WLu ^o'@DH(ٖQ6ff߼Nњὔv&Vej_sO9_ł7#Z}OT/8/ za_%pEOgPI9 :R\s=u:pN9}]OIN?!$,ӕXRhIq 1αk nH~r$D!.N3pIBQA/QUؚ6U!vӸ|6pCm[isۛG2ퟝxC 2liuOù*2cvJu ߟS Z ֌nQDѥ4&&ݑ@XiXM]a2:rj׋}}afj]S ?Tx,d=<vK$=)Y&N,NV]*6a"j4kq}/ĨK.Uf v8vU K~&sMT(-MQߞ]͜˞u0#^C^/)>Qd!!õB YְWr!&(U?' !<Qh&PWL͏@nD]TsK5tZ3 Kw:'Ґ{;|`DSvL'`E9sz l;/EfûOi(EfzNA[ eP._RE,*圃BTsBvDplz0͠e//t&?_FĀaںlYu'RhY"Gr,ͣ9B?G Q48X ?oww?\҆5L"dʪq 䎻⡚ ='.FT1˯rϽe3JTe!>.t̀G:H榳9Z\s[*Ԉ.d qqcUSHog_z ksU4޻䙫dwiʜq ]2T4~F#Lh_}EV ȜtrI:&#XQ)~Q /TmDDmVp\J^@USo5f8vI{QP`lt ;P(s;#]'Z8Su+dhAs:VSAǛ]auw(NO:>\ou?gW*0}ii?N+O6k^J~Bϗ-|;wm qHSs9cu8n<^x@<<2kjEU*ھ Hgh,2w8h؆9V ;&*km= RjMM%$ ^H9Zi)|;(<6fCcw˶xPvB.' ?pկ#\nqwO/›9Eꄁe}W"^Ig-N(gl/F;T mY噫5Un5L[>BлX9ePf*g2{+R$H:KY(@6_/!M,.N9.׹uidACr[QNtڅ meQwnubia^Q@ ߶ Eo;Ji4 RH)&P] U6mlZ3 ]8k.qbÿtK`R!qvBywԚ"̻y2$iڄ>E˴j:Prff;F ԯK r';F#@YKL*5f/SU@ID2+˕ej4?jŰaFn8e}sp v%r oOpg۫ tW5 ~uxbqKo;&}@#NӔy;R\S+ę%;8蹌3}sHX@7;_.&Y57qynjo'n@@.׽wJow2!HA6XGHydQ]CZvojm,Km\Us8cg8I;La<`cO+ epW܎2Gjj}@Ol8v #JP"#Ŧ5gLVMOcJ7[$l1qv3oJeNwЫtɷUZcƑ3Ra/ؽ}m+*5JۋRFZ%Uq_- Ԓbw0x^@'t :|X+}Zng'i5žOx퇉Bll:I%WL~N@O`@9WR 8)ZeNPX.qQ( :FVf} oIs}~cZD_waHdTo@2el E!a3rvTOξHIӱ!KZX{R'`HY8+EjmZmukwb)轄2zb}wѿtE(b5)7ʧzJ!Du_c\| m+9I 1-2ic:*Uf\y/K_0kqz9t*DBG~'!'~*Y'm(8f8+:,IiG 骜^e6Lzv&}{WHx8T9|lQ'7fmyun&H/c)S' yP.˨AS!6c^#`ƪ*0/-քS] N\O*}Yj(RǻΨӾhl4Si@ s^7M*u].[&E 1D!e8^-' `W!ՠ{ "Pp=JPp81 .%EL~%w 8ԦZ>R3W>Q&t޺mClcJ/ /e~EtFv`ZcxϞ?\eս\u%ѶW5xsg|XHh7[{5+w`fK@w䉈 %GX4\GEF&B(#p)C;$QDtoT=iteG6M5Pʛx6i/ BC8r5eItVRkk2ܰ|vrBėY1c8FVl3ftFR󡧫\Cӥk>0hG>#^kGgJ ]^A^ӘvVddrb J}nŘJ5Z瓀P^JUK.GmC!  .laVeE"g99 *$p\*dذH[b/ s,d9U76+aȺڼŊ h,kԀߌ8D_s\Q? _XԮ!%vĹ̞h)aS2H;pIJ |?+l$`ZGZc.SA]Wzѹ|l`zenn;&v5>ZұmxhDKjB e~A,/+X\í73>S2*|ۃh^!IJzGy&nfD K{e~LĐ'% ^)svnTev5dgr E:o* N+ߗ: et4g2c Z$Y]X^!in)M,dO? #0ب#ԛRsp+^-p~K_GzeǸ9n ˛#iFLzbmľ`" wPabԴq528BҁK,^-~ѓ\ڲob!H2#u{ٍq ¿A{͍m:crC1FJIv!8@[Zpb"0I׀sA0r$Ʊ-Ѧc#b OFFm-e qh{_l.΢ Es$r󽀖O?.Ϭʙ2Vä{x̊HEVVڼT!@)vZM|ǠePf5O)3==cSt|Y^[=*dfB8O0`.̳0Ɣ6 @g#Jmרf'؈9wB{K[Gvo0U䞮|Hc}%pVms >.=\xC=J(u<%H5԰tIpes37cOw pe+Ue Y8W|fQ!Y#uX,@f 0eH[eAjd e&5M3D'?5a&Iu0EuӘ5NY%;iz9)I\lZ$K MURt ME1ƆO'VB06!4sgp=jF;Zm[.`\[26W%zaKxxl-DVq찙f\c}#B9 JX(xlLL|dCe'#{ :I}_W*CGNC Ҷ8;^k |_(~"a$RsKee,yߖk$r+.jv9<`ƛ.Qtrra<= 7IU2&@3 f[N,d ϒP/.p>>2qP>rYڢ3ɴ gOR>ͿIҶ) :~0";˴F$}O{gD&~LNEagFsl4&NBvQPdy_/Rl  CYP>X^.އ^9 kuAدĐOvD_;{lO n,rC\i54f!(Q_cpJW 4p۞GklP6?Eizw?%Vwח[cVБ/b9>-%a]q3mH+ݮ5غhF6ײv], 5/m9gSFbQ g6{0 Ud޿dA2%D912 PD\tcFiaLoAKxb8ay՞I^=i}[AbTNv]fl} U2-@֌.Ja?Æ[W=h 㟆~(YH]`%}q u&j*v;AtT6\% NjSn3 vJTҜ߀REOxf_@C jDE/L|}Pt Eyi! F|Þ}G~́f4*~Gh*'b|sY èZ EEe2ŷn d;~}7>CJUMql pq!#^pl4\Tb6RKyQ'3%YlxHYb#y)(k{nFI?1gw: u(8k68mU`qpw Mx5Z@R5>nMTI*tih=)-c#e3E9;8d)p0P_2J&@YE#-q|_-oU{| dB1 _~X>&0Sv;); g9հC^?Ƥ cc, ֐=њ^"%# z?U7YgA#oO%&FNơo#{Tk/ohomo|0+Nչ$pZaa噭z*N(FV̖!|Kw7jфj\1mbx/ykZeC֓+HSn|vHq?*|5KS9 HDlhrudm8BL dmy?/-GM#O)qΛ/lb3<ͅ-.WQZLϢ ,$n$z@7+4ZP+|MBAyMB&ANb*m֧cgfд|hVǚU59Uߥ,H%n o-aA]{&^##E[K1ng3u|B J<>ءu5~( ~zUPoAGHV0;=BϴN֏[M! 4Ͷf(x.kgEg=_k~T[u!/a':XM|;Bnrg8b S]k!IU8-i@˽h9. 7oR'em`l'v%l^_2,l Elo(?׹g/~PkEJƷrZ nj*;cdT$u? m3!`{Z^ i6 e֟##tfΚa:' Joց?w9E6nQ/5 '[0ٷ7@ӳI%ejŊ`;b͙#L,%i.hd~buQ?@Eblpw܌k;T{+<,C,TW 9 YNP5 Wϙۄc$ѝimL/8`(嚣?ut̶zgߵxyVXF@%Fõ?7!$XB%Y6h?Mv9,p!̷Pcl^ WMB n~=kӀY~1%r0r2*㵜XW:C*1bnR$~EL|ex0`KՂAD7fD}pV0kzFQ|]8c%5!bu'VP3|3ZxC]4rkʘ̊U4 r,H=RTRvuwp%Q:U K\F]%>_H6I WglZE M&OZa'%7&I v;Iuh15K!&/G?ƜJ\cSi"% Y_؍ a1$YxV }Œݕ_cp(^xdݤv}9t&4wlfݎN/t[[7DDPl5TSwJJ %wj/);w6S K8-h{uyPrxz3KV;&ZŤjv'Tx1–`T\K ɠ-#,9v1μh3eX^:#uGΰ`:pt4nT궩TThwqSiBDCqFO3DF-YLOk"lT:IV@iap-| ~`ιpmcˑбƑlJ397d{R }ٽQS ҋ\ά-po5 ~̀l MRPz ノ;^Xwx-U׵!*aX,|Oj$ b ܎zEf47˘&iOCFEqƒ\ѥ(J0(e!ŔzgCWH 1%]Eoȋô4ZV097~dҍlt@.תq=G ^L?bN+- S S˳SuSn59<R4(貟C0{PT~`pDWiGVv-3a2Sˈ١R[ߟRDa|Mz>pn73k@87T^DV s$4+&j\$38 ² )Uz:/^~pUlá7|KNPlkKoH穣N@}4cNOMqۗH R0\?3 mڤ >W郾~~$BʝRjV7Ne]DKC'Ø'x._+Iڶ=;EQ8AܧW7e+`LB(?gS~Z179LMxK# {Q< j/.zTCTIBsq(ϕj:j(#mb& F,kgP =vW[*A*#RYוt zͤe3txm  oO*RBryg1ZbhtIDˋw34!uc|ǃ&`=B4`cQnϗI>@A@-$@7[A4չ[ɱ?J r,8j2w2e۾v/%??i)IXI4)?!5sZ>mTN3vLw0S^QUonƷ^brzrAHRvő=9oz ehbZ}kxW hd!8R9AbC>dzA{]yAOJND yё7;I,otyVb5F\&n}qx]{"ٮ杸Vf.Q[ڀ{(Ē #{ǫE߳(V{x{kz!㭏mѻ4PϒOj ' &*[F:9/[/f &6Y4̇ZVJ2~٫+^&n"o/`ݤ\HQf vYyC&FJ!\%38ٟqi <{x>FrCOnA"ey=esY[mbVTz<MSZ7y[ufzzդV%= }2w͋fq7lޡAz@հh,Eu=F%|z9kA=L-YPacx 8HIW g^ :?!u;%~ʍ$42. gPܹ}F(0`ەu{`,rb>GMKdQ]u=tɚ$B m>k7j/=(hGWV&:698] ܿE*Hll;"+#;;b5:x{%T4~մ4t` M#]&?lbU ] $_# vUiVc3ߺբi~^~ h 6HA>,r'➙V{@u-w_8r ׻˦,%+-k^!FZjZэV~Z !i>$ | 0@T%9)-I:/-%=kp < Pb'տ oK> FK 8׍H~(6li!oJQ#(.׻J^vٷDɐlR{ycS'-+szyx**sP|uޖycb VatpJ ̐oXUGv!gqKE$l63*պE*uHkm&E,J"@ }I@(3?˩*8{ѴtaCGϪ5W; G.-5kÜ D .ʯդysYWNfł/}%azC,XgK'&'"|T1NZ^HЋ8Wqˢo +'DO6UQFȿe W(yQ 0.1ʉ:U>4Z[#32G)sϋnlmWm囔0ԆԚ=NI&O7@RLd"䓫}t _xWs )-*&Zw^(Z;Kg۝vIKeÐYv! FqR~c%7DV<{|"72[D~S‚ l;D]梛eQ]կ,`~Jv$\ 9I^GJ4 u%HAR tB/ SN~yM 9 O@1u>2ҌcK`"xa@tZ!dǕ iDlGޭWzJk sGka=>Ej΀B:V?/ <oFېqzʴ64keB챈lG^Ȳ?Ҽf^|kI&1A&`MY;(_R9{*쾂QLn959)#v(t܊ sE^>PP9?ļ* oovmq93 kDi@xVl~GX2:rھٙ?QhK'L 8I01s*¢4l* IonxMV[)qWC{|N@Ռd/`G)yG&ln-/byvZƍ5'U_4K(mԞi9hݫ{ ~,Y=e|YQX?GVUq ؑoVlvVYUQҞs~taixy6csj? EaHN/QĿ8OCQx*vJL~5^OD`ߑmu\\V(Kq64E*r-2cFdw!?łJx8/(QpiJ'8˯<)LF @l4G߇Q 8i^hm[@ }s x`N];y 0eWC BxW)4%歚Է"Fֽ߇{%4tqMkE<`oDvZQHhiB8Lޜ1E48xjL jW8q)r?h)$i4< H3Q >NF_ʡ ,}yB(Ud!Z Uʋe8lNLv'K!JSP`隔 EQcZ^o]8ӟ:D=D=:nN/*&ݱݣQ^>Zv|J;%MZ JOw?F\[Aʊ'HRO EA/DdgV pb.s ^%OjM+ѐGxꧦeNQr`IRTՖ0ta`Pf0qݍmKz%vhk]/Wr@OrGyO3{ r2Mywr”f@ GkifZo55 :jr6+<u|BAP G׫˜-X5>yx{yx܂f fČHwD0xT*_1],vE.(- QC&?ia \~"" w#W!)yg~z RՖnJ(x}kO^}j ɤD훪qP;;xm$j Мա,=J4ɖvRlA @ѨM$I^,\kDU8Z0Y|'4pqkzS!~j6_wGwqAH' Q2DF{irs,A)|b[L9hr&: J1Z6Jo[jYS[y",ԜשzY I`bd),|i64"+;IOG#?cY'poy=w뱬q,qڮaIZZtaqCެ{j*9H'Qs rc(([~?<&(I,)h1V\ƾEJ9Ql# 5ck v+s!%~tLTPϯXf33t"=4^8_s 8n8qz{ ocrOasڹl~Qz4VZucAQ0ZWB6}ĚqYS~R2bsz8'B(*)5i*L EB:GXfEJdxc18XKaYIOو 5ԦP3N^Ÿ8=?x\?,r<3A,Ɯ޳jZT%Pp̽E>}ؔ8S6, b@(ЩxSK"VN?\6Ay#^yH`!CF:,.'Em^63& ژ, \G;¡.+l\樭QHI24,7\58~ssc;*w-cƸoXɟ9.Y0γ/c6ǃwE>b]Mcjv'&8 \MZJJJG 0ƅx,s˅)VQfS?`i6D ǽۍ98td#õ&ߔiReRY >UcJ]n<|()>YLo^\*X-Kj1$! -\(`(t]E;2|S!hNfDA4$o'T ܉laUTd!zѯ\g~gKD f_|$:uC^ BE $w y(A'OΝ|;9-YK!+ \ ͹_UZX_n9/++v@ɮ뤔]ZJ^NRuK<:bJ,2@~(k6 Ka$|F,3&! b[%-w-cZPxQUvsFHCp \}іYW oil?r־_l(9'%p^ g7Z GP;|cZHTkM'+3k& qȃ(,LDwP}dLAaxEI #lSʠތ ._^Z)o Rȍ=[۩RCL̎MhXdz' aX]CS| R*B>K, v g9Z۱ ݖH 9/޺՞/Or>I wP<}a`EUb6BhJ㏉) uZ4:F=K*/Bqݭy<]"üۅ`-]nv.e"$Vm0Yڦq2aXӊHWAzx t圂`]ƈO`~@6<%]U=HVm`(]ddXy)pY͇+aIm[Vy_WG ;x9 7ʄӦ7NU?'yj try.ًnHD KJ9@tŎ0LZ߫a4<*jH Aƃ05X 7£gu;e3j61,[_?X`&#ɌY.NFQYdz~ {޺%# py!o%_o4ʍ3^̏pq "C,z-i&YY1N{n 8UEadKP }5(Sv<4`9 g=u.+풔#~BE[;$yo!Z@f7a*MY;/ ~9o~:v9vMxA= cWG+6|,?Nڷ y,D}g{ hM-\ttҩpeZJmxe4O]U$f++wysؘDgqy5OU|V]cWV(3#2-~|-PRpw4,wԍl7!31|6 G'XQ–  H/ļ1c-uH yJcv>nj]<-b=˷BS4O|{]CZ|[XOڵ>tTO7 la (˩AȻA0!ȥV_|QEoXa "W ?œECz!T3yXC{/e%,sO%KH; ?Ȫ6(#ȰK@-p#G`gfs`Hz.^#%iۤ}5/ZK-D[JD}YAB_N<Jlp,xO_z8aa.V;|;}Nݒ #Mn İr&lmU,=L `0{Ҥߟ֊ֲ}@\mΑ%n(|ksi[Q)Wl=8TybVY6 gLy>b,"syBbלw\om/ 2da)%e[=m}bA/간3Þ;6\c; 1tFۛΖvԥloQoAUe_L[Zh[ss.j:ʿԷb&ʳt{C&Jrx=G]nK !,92 V]~w_z.,mgBI.Ü3.qŞ֑e.A+gOs zzH:3K%U!r'^PAEˠ, ߽QxR&6~x.IAk?yѦ |;(i 9YL/=%.6(0]Ul}F_Y~fŘ~r |}38 ~j'*,\ǰj#a_R2yYYgW&.Dh8!<I@0FwQzg/l}W]>qk.G *2,VkcQR,1j&bċfD;wIb\ܑ8m߯@6Z1_%v-OϰGfg?MLr#{7 {|OX&QS7 o -cJ` ILGAqPuM~`8? C3VHC|yIhe pډ(^ܬ2]Rn7P8+|ZT^~2vA~-{H~B=K61D;˜i K~啾&+oDE1`1o(:Ě74_D<}oSZ筌4^Q+&)>pHYEv]6AZ{pʾ=߸QЍkgz_,x9d2>f';R B9lTK#qoMQVs[ %l#xD$쳄o.] f< M_=ǟ-h?}j,''/r GouOŪV7-jlorz,({P;uHi.< lw9QgϜ\j _vۍhΒOEƦ7=d^XGn1#/W^AMA N3o+1X q롙ȧ?`uGJ8R%d!( pQ?h [:x6UsYUV -KElqJoH}L`jљb禂4%YH=RD?OKf;|ux!JFB/|C}$֧~"jA&v? <"9tBeBPXϘgW>kU~t:>(pgƫVkԽ~.E*BqgRk5,:?>zd'i*6(VKcw`ͥo YXvWnпlCT.$t9AYm*x rvEG,f.Ь@|đܕs+"d,/#qY7Gٗ2M Yk%@+Sz~_3Y˄sd#Dg`1: ĐG Q!J2 8vZ[OdQj1 0GRQԊp$c*Rƙ*N3.RfU21n畤 6ZYakW?1 `Ma S2FE:} dR}vIBO7V]ʿ)|W}V\cL!NDzVyܧ2BG*Cu-y֘nu`_^lṤqS[T$p@/F.[ADA *P 2*ƻð(3#L >qe9;4˝ ˦&&(H=&$']Xtq2Z* @q7pA1PyhjdГMГq}4jXDwF}зξ{rA@8z`\e] <.ZEr:vCYDvg8'P4G/Ϧ$Rs+,c!Gwck0aʐAўP-ۚ]|tV[<@ǀhˌ=ކWȗ{: VeAQJ5CkfbӶz QQmЩؖgO ,JDzn~)1X h1֒YI}T$:Yt^fJGY]@0јOh4mzѪhObr;MV)/3i8<8Gj]+\) NC;L鄦FRa=BRսv S&UR4̯;9'KX>3S`A@@]ŖaIp=_y.V/gI̯Щ"<ؕ}9Uhم90^bzaB_o›t>o6؝O􁫸i[?f=w:lj8نkfJ:'gBD4-A; N}:@t{SkKUe@f\&T-$:Iv#Z]W(Iޙpب?jAv"_k,ՉUR} y\!Hm)v/|"c$3Y1rA> A7ȴ֧ /Aj%kVa?neXF薽nS)8tb!޷]w |9ѧف `KP5KH׭  \JDsg4K5K(:L&Z:";q/X0$(g_y@&*إzDl.;Li|8>Y'/~1Pȫ1/q<`;~  .&!e|(@[CfnJ~KB YSu@o!Do|DYA טfaFHvGKǫ׫_p׉ @3X)zޔXRVw%23j,g~uq=R]o9J[Kɜ;ɨ+~YV @.O;("x#ڸg%~:XXKmĉI )rxhˠΓB,?%HA/L ́TD}X݀l;n4L~7* 0,B^uYh_ 6<9؍z`J&@fG݇; @{( ?~eq0 @vс G~^ e(#5+:4[$.1=)D lE߹ (*t#Y]"o_aЮ6&<#akx|>7($Մö*(7? 125%7Wfy"b L.>!~]=V4ٱ=]M*E%L J+;) #.ju(o}4|E:ĥMWw`K-cΑXӒ=C#/y7NP(juUu3Y8XET`<ǗW ~p\}I?%ѝa:7 lU0vU,cs ODT9@] G[C&RИ i{Ïjq !^\*|̎J3)WeUfb0|UF!:U3}l3|v,tE#uolryوjO !!9~+_<^]`nWknn3f+dGZDxdWkRת}{ y@$*XTd3 j1h%ox} rۘޘ;]Yum_/߆ m)M;&e)]nZ8r+aJ[3y-WYkSM qEѬ|ImASGMĻ *ҁB%_Ŷ{IzZо[1t X,Fs^$=Xf5lAl:D譲p|VJӱVL~4-;YjW\FKe,5R0NBDx!DlycA,cAb1Ash=ˏ_gT%JRYIsUy05D~9P/WE97dI A̙$_L2qE,;@8AY3@mi*Xoπu^WDU0ĉ#r \r!DA )GgSSӔ$Z='cU3W!|tyGF [;Y$ }wc \FaT݅:S?Xy;sJ6ŵh9ZfknUQEdi f\p8݌v';SwXv]!:Y)Ъ/Х1,ZOݯJnwcx;r/5rK" !DZfu_ɹLK]LN7SBujI9*;X<|gkt gWZ kf:SKRrF&FH#eL..G'Ff@ 9& E3lF:!MEJ)w }FEB<Ҫe{(X˄#cǐ;a_ MCJR3Q#08ia%n?;roHalt+܎utlN9ZYU8Z#L9{K$퍬u=9|BoU(.mrwP0y}e1 `KzGCkFN}2!Z~93vL3dRjb~NW:tߍ=.l˪!xD:Z#В/hV):!.G {}QCFtl.~F:!aA̿HInw/"nf΄^d˂bk 7$AN#v%RMQ Эcᡚ4hDq.ظǯnf&d5ufb]©0~@kbnNcqvaUS4ve#<H>FPuWq\+PoġԏN 1RҮ=?y*E5:(5B' kT ":8:X ^}N/TZ=.rKf޳sNy?].g*4ir,do 9{?(jP|赉q)Vfxg["WvZ0c ͸!Ct6 Dx2q5nl ] E&Q|T.jKbLy[k#tg[6#n5Z¼)8~)X"Q:^r]nύq&xGG]랢Ӝ^WPU&zYf[op>Kչ.>4ezj&=8gٞ-n4XbDNF+:R1y(3̤WR.;kwf4RK9Y!v#=3^> {gaYPW:6PƇD% ^¢OÑ$-hl_(MG1Vp0=cb^*q+,7Y?iy-pADbx8zDiᶩ @bFxWYICMvC-kZ~ \ʸ!Y9g$d%!N%YZpEK3&#*;>; yZnMHY $ȑHZ[K&a-6^41єB mDTp By&aewtQ9\F;WӮmgģL3#HB&͇R^=ఒJܗ1x7 ˌѴK1l[J p k>;>I=g_d 4C+1(ocTW!J~~"2X~x= C I~p<4t6H?n. -fI f43^7kFW{\(PS:*d;BTJ]CVru4\6Иq64^8-1-4z=Uk_PTW7C:Q |ɗ1| M!Y MJ)]Jpw!ۉdF\yHrm'Cߋ zw */#&sMU=,}W@#C~p <`@aR@IQՑay@.TF(ٵUEeWXB̭zs:Nj;Npeyg-BCX;-j<yepۿ9e \},=F<!OnA&ǻa%c3N7~WRwn14 (Om?mz'~9u4.D| 984>,iYO6I֔>D4tST\9spVL "o-t4ڋPna^$&j="sØNs;N(cAPiFP$3K[*F.>(TQ2%ϯH|l8Os!l Mip һZSH9% b 9?pۃ~wTo.CZUB;F8 [d]9* ہN4jkNJYXmQf`jJQ$.L- A.6%e)hȌr=T'Y9|'xfL(ѵ*vUU֫uJ|Q}M}9|>{~O^վJaCrk$憦.Odn t OY(B4ؓX;~YQ g`- ?&T=K6xH:uҋPٸfhib[>@ʞ߾+3 ۹9?nvO9v~Eo&)S0쭽R']J+_b.CG=:gɳ ;3@օrbI=aP_h8bnކ,N`SW<:c$+@ti0/{*p*R kBDa³,Vv}4s~vY^{=l FBS )YĠ=褊tq- @FV$?׺n5j!݊,._1uV#v!6tWFLS-TP;A||2Ee3gʶ&s֌}Jf.bhu3,mk_B1q6zm7BXiQԴΜg9tlʅaMjYr#u'‹:%5@<I ĕz9x/$ڳFVRAr)l fG.zSw99b76? vrvodi oe&5P3SNt%6_枻)eJ 8?ODof?KNߥ,LnKky([󄞧r0@޿Ұih?mOOLG?p U{&Jo!}bP0fT3 G=m8mn^$n,\ Cl5,&"]gr#ixj9U*q %gg$Mhd_!&+jh52&D"QĹnFL> hOBwM;IR]JJN\;"cSpoӢi)Z̭Wr%-fٓ~J70#fmgfwЅ٬KuYg/~Nh}V -A +NNS"Fᇮ8o zyrbgXjɆ9ć\]j">1 (zgՃHడj7Kx]/Rw^PRC3|yn a{O:61@.QxP C%cDr6A;f0^:QUgiY&$"DggUb*>C7*piD4V)v6Az4*̹DFT"Gd1_UlXA!1wBĔkp\ґ\nحmRt Jzӭ85QYV kKZDž@谻gm*i, 3ٔd3e*fwA|z2]]þxb4orXl6v1qkK~UѾP 7RTClj y)WE؅VD2x5A}?4/׺#aJb#{FT}9\o A6pHTMjOE`Vwđe9L9ߣ`2G h#԰.E$N^igWvFaȺ,6iWc==M\=V ԣ]nֿOYrEQ]`&F'^23dzfNHʣ,Wt_L~xDz_4cAD6d)"B%g4sx RP'}Qq~h=Be .TZn7 P֠g\[ ̉$>"n\fF7DR5r/|Lvt/ ATb%흲fS4=vM%WT%ʭZ8DŇTB iWٜ-q~E0dͷkAyp:jWEsF0Ab/*ByS,\wJj,8eS<7 Xݷ:eBut i G${`%ö,X/П-u9uKa>LdZk1Z:=(i%+= hةw`_k~{.᳔> bQG4O@~'X21,&`M܁7S{ NهiUb4Tˎ?^3:"q#Qv;k[E 񕌷E3cWC|guղ$uIg\qØ{=84)(.7XZtSa&M5 acʲz ^D &j^alƍ(A8snNH{SevAiԣo?K7gyj,FX|ޔ+ @q,B ssh"SFUi݁7^35& ChuOɊGԚ.$1o;Rg$ b5[VR_t=pƒ@!xK>8˞CYA Il QہWo/NjgBDP Qa-=ȃxc5W?Du,^j?\hnL2AlQ4SFGƃ3',8\/$\s<̫pcKGWA5WFqq' -;W@D \"칬P<,x>B<>?^%Q}hIQ y -:i4lzMUfH&e¯_>R8b;G%T+JWZ35([G>=+f|_kʖ0(9i! o▿TU-WdlԾ a?E |z[\kH+*JJ$^q58<_[>hQ V `tTqB *23dXb8`4SON]\̀_ȇuk]2%T <¿WI >Y^~FMqz2 D⊣2@κe=?C RZ<сO!|b ڃEaat%#dK(~txȴ*j5K}+0j"x(gʾGسڇE31lS@JgKc.˄QŴ-7~$G߾u!.gg*t\O,5V $!b1^XOf̚5`5ay*+k$b\c^$s9c?Sƈ퉶?E<c\O.87Ue[J x_s,H9u W}Ÿ[ΨC3dd;3ԨE1nKI5\E8k~r lO8-eN4 G:`KySE=7s7>#Ǣ^؞)>g,1 v\Apeѱ4SCp#4ψLs:l@E7+E1-w&]m2Ϳ5 $-"ibPsӠ@YGHdNcp ~c\$bŰtQ;#x*3!+.cJ?w%aN(YyPW-Wn!T"(&ҍWή{{΂HA;i" iW*o(.^))urbI7$'GdEcc&Dxf䆽m2Y,|31ϯE$7rV"I~yeWXXc+8d ocݔAU ˨ä] džYE r}7LuXj Y=qo2")3ǃQzvXg/$M hN"'Q)i`hbG-ýӰò{=_*k].VA™؊ah?c ȳ]-)yNhMȈ )zUMPRnDqd$ūkfNˉ E@lnԋG{^uԢ - 2>QЂnrCs3 ZNzsrJqV?oΪ'Wy^\ }H./L{k 'NP,5#Jm@zg-Po9zi *;Al^S䭓yw4!'7)C9C]#X X 3&oc9:Z:E)Hʦ:p=pF!d YHM$ݎYƭ想%Nw8=ƭY*H;;V{MH=>c#v}_FmYҗ`KjͳN#D=햾gZ{-AjYR !'WN«ztIIBHqh*iSd.I2)vҘOWyKe]a޹{KX|¶x/~\҄/n>pu{a\?N > {Odi W3 KՒ:;qb-n {],A-m)s2W޽U p{V?kº#/jOcO|6ѓ\Yw$+ ׽w Ska73J#X ݄]}^O>I%Sm5d1f9ý|A^0A(0}PhF X }#055rc0"it9<ط"94r\7&}߉rray^ݎЎMY - "9{, "| mO%XO>a[s-2#m6s5!ԎUwפ7>n?M.6Fqw\] ^IYڲXC?IGoP_MzRoX(VF s/O5AEnr)ɒ>/DD5mP!keU6rmSIm. bJݮ$εHzȐ~:cC ~+ǝ#^(sfM!9=/<ސ*g+$pmpIJ!c撔Vj%'ú rN^L'g`^u(mq( Et]dZۙVb34ڝ^3 T&|lad9N3 ~!8]C$FPze0 $7Ȱ1IjB'+l3sSĩmSvG}KY?xNcFe8U {{2a9$)ۋ7ĐiZ41y o<&S P`?dsJd>:$ yûs9v6laś-cC ]mHA`qP|d߹k%ؙ|.-cOR3WW2^J!{;3b2]L7;dl=RAOȓJ#"Cn\)AHCV!r{nq:+䇘jb]Zc'{3D& pCu wq"77BI·rwa1Bh/gbgE7ԡE5έںplȍ5QYF60+xtJ˛CrzY}LW ouxʆiR}w̍1Toφ%1VcxRd MRp=qx4BF=f׋ .a  ``@O/uf<^y Qᅮ~lWw hMbN*\il_&oTz%; HՋ]L,a:ۑuv* +0ub@#A0<\D\ O#ᚔ2m(&Fn6~ofخ9_)8">q :Lujq`y?2C aqᩊ~`Έsp,{~,TMT),Ʉss麩v О4rw*BoC<̱+"PʹicU1>1TlA' c"e{ZV16ξx%ڃ]릪IQ6 `wm!'}cʇcy>+R62tXAwq|zfVqaD=/:ض}w ㍇eؤmlуrV N|8J~[n.6_:mV`ΥSkpZȊ.gP0Ll[m2( +}k;@dIGn!js_f 7<__S̿yDS,A#DVu }&Jh9SAW*vl ܓܜ{$~p9[j5;Gt1dq9 k~vp^@ sXf2:N XB*$:_fMsWj$B9[߱+-5}7T:N"9>ش3H4"u@̋+O-l\y Pn9ɳ| cy䎆4MԽ]3OF/ѣ< [_!KbuK[yKq= )%f"8D/d2RnJ&t%y$sZm[$Q4Ksѭ 7$C _,+yS,5 ɩ 17+uZѕw"b}Ǜ[m~ wU{*1/츘A]2>݃ŕ@ѽlv(!-hYczdSOϬ%K%q %"Nmj ~נ3*g؈aZ.уthᇑs ڝ1x+:i&V"73ϑe!un~}X*0<" rI|w9O>ah|%]\ru8Ӫ-2Imlg5'ա|_|1(I[8}8e]V\SEl%᳷-[DЛҺDޙI |6ʱgEĻ#hr*EߔN:+0IeH3go gu8- ;=KIw0b KcI*bf1>,x)`/<)n1#!Z09)xL'M~cm=\:Zu/MX>Si\+Hd$/GKZ L Ƙk7Iݔ*_]O'޷e5;vŗV 3>dLOp'VB ~ .D t6{Ə$6L2HI|U"R.ۨ}P 6< 3.lidO׼X"C?Qh-;SdλSS JuM\"2By8h.oG!JϺp?t[9M,~ SجfgH nr?G; 0+1R=8K(D=`ˁ '{% Uij{KjX4 +BV^?m${piGBU v\qq+:H%QHUb 0>")$ hms7b@%/.$lI[ڭURo{H%qsFQOs#s>va{}cEHB撩-MKbʢ!h]S=*.-ݏЖMd(&P!׃^)i?nyrGnHM>9"}>:5R~w.::  EtTKϵe_O+xhMַUHxf/Z@JzwD\K%.T  }ytzC$Pz8^"%W`!6 AStA8o7 W|}F|Kq: d 8B01mT%~+ܾlۥ0﷚{f2`xX4ΐb2A8f]m^d2@kl)ʝ(zQڈH5H:N+ Vd(rVh3̂ȾPC,@JղIܸIK+~Oȇr_M. MK9JNR]kt5'.xgnyzp[#UܜJukò}(m]!p{{x'(T-sq qm (`vK:y$"(^LAnZMGx#(Q@yqDM4TB1̘~2yER,ՃWOlXu~)"*`8 Zp?_P&[=-q#59h[oZ"x9*BHFG#&8Z{$~[zMǼk$(|=pI':Z[L3Sx[Mvޡ%/bj0#o-.V^ V젍mbl81҅h-&<'ۖZSn59_޷38W.e_t8 sr=7%]Z,a'/r X$a6SԣQ ѫ hIQoWg»֛:YԷ#éCYf|-ޕzm +G~%GTjbqa[gN0S2IRcWX|["?ҽJ2,S"3_!l4oՍ4Iv9jViسfWuj,=!Pě\x. '$ ?BW4P";oœjdɠ=ڡRa@*.vX𯇚ϩ~ZN_-d+]|x,sY3QWƒgausA[89- 8X@>۰^(q־(>xϒGF5I59H~U{4klIGX;]M6.=ȯn= %1z&rweJ_ՊA+#=X@DvtT)?TCs?@KSK8kpc*Sӑs9Ýz8m-4~}w{h<;g|G<נVEkт!,J3v@ _ Ŋ @PkuY (t7y.πF]cs֊04Gp;SL4x]#}ѢTR{ F9_c+J|IIP5RWR!2ł&T]X jK@9B|`-q$bڎߐ1HQW&[xRP3  o-ɫ4PRn%q1˘Jd5\"ʝ="14o+f3O_Umlr`dFS3uϞ(JnPӟ׷3 +Fq%0ɨ2ہOvRzoCnx]P+4)My,N 8ϖs|;w^Ia; %;˹"(ӎy揥wwBmk\"tiP  Z@$i&;(T -t0M`&F(gxvN}g<claO|MIģ9I2^91x.m MJq2fT@3N-~5c MNDhBG)1iRLj7 0\^@ ,]5'4ʃ mLx[o;f|ʒ]νj c|\1Fro8,} 3@(tkG:ܟR `፴2f=ϠJ24=kU |դ(WD$Fk\XU<0s_ Y G @H N0x=SCP>+j?n֗G%``+ˀFV!04W"8a7-[ jc_QK|C ⳳm!tytXk+~սԋ7̽/fؠ1Mw0wxOwAlf68254acU=HLcĩ:9z{gYiJ_KOY#9AZZG|W,-ڧAN[x>y;l[^*`H`Bp_b8LI'C`ο{)&*h;'LDi| pFϜ_^Hq{GS1x-%b 7>*%wT)H EGD2g'V~&_:M;މ\gFLG)7jF53rabO6mq*tFCިܔth,j6 ͯk;O(8^W8rlIԙm&qj*rAud$|*Au:rthTiVb/FN>}V/tXYWeH-VC@227 #.,Q8ՠDn!$udk/ In_9($0M쀖Ӄ?AO®Weenx4$d!OEiʽP&)LH'K֣mK^؄<SUz};ơ@F| 8^\{7IH ȱiJaj 8WYZ.Gn#-ϊMkn>.8M 'ˠ}$I4m+.Nv@J} ';pe"$5RINt9N_h.Ѧdh#* :Ťٜ}ypc˭zO5EeWA4ՠ(qL+y^GV3qMHyG|XΉwliR|-n/uǝcz,#\2ǬUB KSea; NpFGЃqrgWkT`lsv)-z.hHL[2㠲Nk Ѹj {pZn6+"]#;yv ̛?Xn˿=&&³f~MQH!uZKgWNRPzh%̓x|r1Jƚ߾P-m;y΍sXԩ9չOfpcZEnԳͥ1o+ [)n}5;CRfpCdFaa4 Ofy q[cD OEsvN{cU~(;.2Sb_3w„<@ VP]lEPVzpv4MuT?rۼ v ,HqP`~vc̸ɲ;Td#_$ R/#(yרzEBT~8n=43%9_ y:(  Yٻ߂Ӆ{SyNTӅ|E̸JgV%N֔NFen fC$'wRw죧iP0Ú"B8f0W-FZuPQAѠS_>{`˳FvHRCP89Z?ab6<$[W)*F^೰!DvpW>g蕋ni2Hv.6O 9Υzȶy"Ö-F@‰{ |͗Hi V>HqP6$-+!~c;)JR.[.,fV%ͭ YU̧Xg oW;eV@O:`'5hv[8ר̰NbLV4|zg/& l̤H]p.6@ɜޘ{>}Ñ2A,](¿̔ 6nңyIȠK8%l,-ɂe-!۳l4&M_j.Fy^\,:,#xޛtM޽]lxV9u_ YMzOrgk3QaߢIUvR.e9Yڬx]iKϭݩo>O+T?lF$0K)){ABpi#vbm;v i1@SzZ(4G6fWoʖ2ňi3#ۓ&<892}V*|yNRb*wki [%zpi")ȏ~4dZ^Hpɘa 6.KYƞn:7Q@;l}D5/nE]̀ }B1w]kft(tsƃvh [|%+/]];B֫c PMU{\pRX3{goḬLrzüUNoVwos'l "%aGsJ_{)* IU$epzxѡ!#T߮3_t9zk yH}{PNҤkb 3Ŕ9,փ^ҙtZ"(V_і/S?1'/K[PO؜U'̱ұQ@·T}`}(tYDOn\;R5G}Vq_b<oxc@Y;`r_a{`ޱesׯ^7a&ʬנ~"*Thx(0;P3PzԌY-X4LנmJ )7 RNÝP" ¤>(,nBBUz  Zr>}T$ƨ^p{=8?R{̳ 5Ťg`?FpUDv*'=WM)HdG2I94_J*]>@GoJ:'[jhc,&LS!%[)ki;FΚ[yX-dK=QL~K)\vfD;-xǿ=az+xmjNCk% l+iQ@MZAM1-oW^ &fA/3;A5V|jȫ>TlHg!ʝbfeVҭ` ~煶}CdsDHl'kMπ!&nљ t b+<6\z>~:XFHca߶i"5kQ鄭oҍ]-\88cGP')^N0ETY?S=9R`y"RcpB̘_sT\aͯr ͧ2{Ey]P>8XbMAW}J+>)ԑ X_F;ou71' C2g2)Ec[}Z IO q svŒzU7,xYi瞑B)JB!^\OMskw3>d=$'O0LA}FjW6{ V=W yY'ŷdejyv\g] Gfw8iQY)P=nJ1tzjt*n8_jN%Y]XA0ǥ硓+z"m5uѝ )Wwө[50*/_-Sx"2^ٓ>$-h7\i"m%p)3SFI"ųՐW36Νzj [zSpp+At6(G--^ٕBȇΰ+GԺJtVt;'=RkHi` {r膹&C`~8'M3pz 3v|0zchRba)d|䊼0$[r+_&޼W ^F U=D~y_?v "YolLnpH+Mûb5!4MpHd5zrrfڂ]{s;kJt5&`jiR=/%;h:K.)l5)v$}?b6\kķ P%'C,E^g9[Z 9HfĢL x&~y*a8f6QC*v ;#X~P ϯ=*21bw߭[W߰b*^q9nwGQ RQJ4iS2rʛrrDFBRQIuu Nz<[Ò+G. ]!7>M>d% ~R iS-cHhvH5'H}st@X˳)qwv [4=gڤ=ഽKi?MsBх J'fu8MyDg ph!%uގc8}`§Y2:>QHu E2彵YHI`NFRFi{5Ң@FKB!tنr=(a}W=;"I[o%!& DJ.AI .7XіPD]*>c %F NyHcvlC_*F$siR=p!HIVD|xs\R QH{DɴL:ҷA&V0_pgwt<,>&:笨XXyCIz*;-j2(,yZJ ]Uˁ+vQC&)(q&fPXuф` Q%;E`RzA65ƝԦ!vDteEXrs(6h+o|g)|N+'&sR^9 od7frc8%q[ij_\WD7ۃU@,-`׻EO̐ 3u}X"J+ }MnubhT ow 325h4N+"l' p-*62&Z9AΟY$du]Zʏƙ;}_pm<zUqj`QrSM " SIm9l* rv,ljxoZh|xcALo|}J uly[u&Tשd#/&XwceSJB^~WI^v[zڥ܎Y0Ԅ$ݍ DŽec MNҴeiUx~0`Ցī@ jX~@y8.{3lDuD-Uᔎ' V]ڛhkYm@[_hR,P!sTo6: E;Ձ m IE)̌Ecӏr}pؖښgv|{5sӬg#gbÖ3T{5h8x0(4_@V&voP&8S:ݢN1JUVJ1|DjloEi<? Q&(!id־djFetic6S܊+ammk!qnHF݄;e\x7`!NK-J/o BY  %oPB==>톷!&^_N&e&{`(/79HU]a4G De7("ʦU>*_jpB2ɠ)d^ƄP1r ؎HP`Аo;ѺO6.^ܓ*.sip}@']2$t$(\fNVnEPUPA^Sb|efB8Hu$8Z%)V>5 ɓp\.%?C_'^ Lm#NrA-Sr@O^Cy{XSxgj'.26(]%iF2[YuD5*(v␃7tt3[=κ(,Y-gW\`,2{2{ ءZ,OKΥ\rY-|4xƹ[9xǤPtܪc#ŦiJnX䫓 J'~wgTLGC~Hmsq%HާUh"e֚[8u<06@CQ[[ BK(-4$H\Z]%K9 Ufi1JEȴ##lө}lq/磥@!%YWB^ה %i5J!&ϵǏ uARuw]$'?tw_R$!HvK$?{\T%Hf*oׯy;7%h+oYuPQCJ+%~E^Y!<< n&F"kYm&ɒ0.ErЩ 7' \4eVޗDi&dZppw)t%3#} 55s,Y9!Z7@[C*s*qZ1#M,~5uxCˌc3k<Q ql# gTQϊ-8Q 숐[aJT'簵g$`\}6Wwp܌SB癊Gu=AgCaq/ f,N?S:6lܹ%x|~ PoxC¬G0j׌0#`H" 7cLQ%%dƬBnk<$IHZ |ClEJ+"A1p׸Ҭ*¦Z5izS0V@<+jĎ$.ނ׽g$^(=mPyl?{>:7i3M6 yG"iǰ 4Ԩ3ޯ"d}ɞ񔷍:%_dw0-)UXS= #-==Ifݨ2KDvtmarx6N]YcZI >O_> 6J G/A<\bȢsq=pӅ* QjZa)l[ou[G5ƚ]Rz0 zh+폎*#,hHwNI+3)Obca!;z(&{mS Ȥ'}Qx,/zu5[ -ϐW8QN-2蘇)*4/}z42!e'\GI΋lVTAؾ/&Pq4Pzߤ{|N H㻳5^ ۘiMQ"->IUؓF2/ز"zLsC$Κ ~0G5kq5Wb;v>O1gO$f=gxu#MJb\.c =fꄈ\{*e^bUXl1錍Y˔OjtU?k=7?n:s5iPJË(/ Y]Asxlm0~;ZYg cg5 볫׍\b%OwI|{r( fNtlU2jWYܩϵk_h?+(Ş%?)b|uMd dD aU7NMul_|3xuE jYhSrQ: -zPetJ1h/j1@ 3'Ʃ4}/L%{bG|i7 ::ʲO'| ~6l=ESP1]s]0WD; UI^=͘s9˯m6c{?%dW_ ~=R!/nl w'uPLv`EzN.ɠND}{ 4A,!?k7G)DZz~*l<~h&yK{DY޼eAR!v=[4#yJ&n/+1L$fbԙy6MN_s=ߠ,šc&G$e|tιvn&G(k܂?}@`ӅH5Gן=H`EKrX֙l`s[<; E$.u竩ſ@DS(1=>0Me8.4tvG"ptR:E:ȗ` sK M88xLZhppȈ-`9pE+)kGqk) ,y2R2L3O:^=u8 }ZuC'AhH mb%?>mdpRb|nczSA<$q<|E8T7= dN=@}.] ̀=jV//{ǒ>s1nxX7h Hs P/sLB!zMRaSŹ]W_P{1UF`%?P_Z]r{`$#@vOC r}ıLZi@[My` kJF9UD2BwV˚ej(J;&J2IwhlG)z[vER%+V#1lg}EEw}#[vTo;;ʠEt>kDsrm@hN$r4z(wup=%G5AS_,)n\w5 lKa:Jٮlfg̗1ȯRMLmx;θyX >#Z|%y0z1bS\3Vx n􌋍0?Z  Ej 6 g5bx޺zZ*E8Zxȱ7b(p4m)X| 'vV׿K;NL{]r -.^S(USU N0BOB֢_Z!@e]ر)Ls2kȤI `h #z*0:jpZ*PzZ6`/D>eD+?̦lX>K\\ 1UU`u;!.g9՟)3ƹC$\p[K|d?TSs4qt_);1Ս虅@SڤptuJx3[z1D_1ZϒyxƯd5O}ʊRK}] i%exDz m#v=5 w"TxDdaƫ:&/ ^K8{mKi];pi4Pr+ڠEƩh{R)g#БpcQqjc5R|~4Zl r o|ceUlr܅9 YAl&Omv0mZԠ+R .9G&nFxM_Xfvګ6e QC,x` D~6sZR\j*yj.s!RMF )"3:6$j]~͛ P<jsW'6'QУڎVQ?irLRfn<P#~9>le#vzMڐ&QU+s\6W v掟hzzUoo! sMPwZFB<I~v2D[ܤ0͋{;+h/"g9i;UddjZQMhDA N6)eU,֧A벉K @646MeNG&b{!sMU:7T4].R" AWQ[9ԾBMSIlQ 3Q΁ updl uz? k+'H_%<l ZBPBdAn5>oxȩ[d{SXk" nOuli{qd8H5(Aid^ q2f,|zFxЖcC4,(Ky;*\`ZV-@jk1 V.R8:·['Xc@E.殣sW+Yey;bNz/QQo Q,Q4 l*x`yIiN*݀rǭOĂ4;-_kXZΡmUVG'XuLczI붿7ٮ]{\#VDq:4Uk$[0h Vİbu-XQ({n:A1j~Whha4y&ž'ÎSe 8c %L*:oT7=lVݛj1]xcNFfZZۑQcӀ3QMkAJ,dyP!s(;Y-Nfú[^Efg3WWOQ E9}f+i~Z̭. +7y>s駕}r  BͲ?UO%ĶE/ $^,o^mn[~ (+@8\636Z2nQu:%x )[ >&~ A>\/t:R̀Qskq+Hǟ(ov`D(ǡ.1d*XFga y1YK,7]o5opR1p%xy'y6@jME9 50l ^mM ,qJzNKy7RQ%p\"BQBHH=-M9ɐalI.XpV2E_5SAԸ>}Z}O>(C"ClGV)D %hя2ղ쳀+hPk)%C*AI< H's aԒg 8*eД o{kj ?l9 玷I0M& DA-\ M}e°-E1 d n5cR}V g*,碽1|T5ۦpI͋[Ɉ2eRGe6Eԡv*(ɢ]o %>9 1RK\t>$&qLr.t8mH!, S{}СEQ51toA&7s^j&յ{݄9)g mSMĜ;)OigPpm#Wig}km d*7TX)[wo՜߻cR`:%0R߳ڏE,;L*pKwDe{`Fjb }KFKVv&9*[+k;pur5OI3E"f>&YuCq9U䚑]%"fQ~rstǯZ gJ#/6ӈi5_f*fS ÅcT ڢ[3)IP9"݊.d&KP ;+~i#:1ĦS§!Z0xu KPd;i Ty7VGt#8*R" : LQ#f J(8Ih؝/վF:Hs:-)zP~ψH4ƿ}AN ~v9a4mf5-?!`O_lTnq`qXoԐH _#^/N`\%;6u )7qܩiqi3&p-Eȧ(ET&#Ĉag~> *YNLE|?v|H3e)K3mus>Mيf^wya;V QtP[$2 ouتĮ誃k1PzeN8噝cl ,&HMr$FbvDx#OR^[]LR7a|)oW@ Ls, }E-Sj#Jl)xM uʬFwo܆NtAϣlWՎnJ̙)78m~$c[֝6?(Ia0,{aRa ~05x V hjޗk3e3mz@G]:MeG.TVxthch(?l>or;uH$*~ijqDw%/|?-R9z/U^ *˜uA GrpǗQkA 2w<: _*nj?1urkiK0pvֿ۫M쏮 |uW_$M;y!dk _jY_64S '>Gwlt-_QnyzrOjWdPhi{@ĎDlȡ 9ـi5I}ڧd 0ͯTPxON]/S.'- n0l+\ xBHJ0ēh>._EN)7kΆ/L^̘oE~3 .54=-%`pC=R{- f*]wwg-TB*`-^4E博#;y vq1SoI<_F$6~gR NӋc,|Tʉ/{Ŝ _x`7.rJCO"$q;˒7[MToOSLm yw93]gXjo: 5A'ZBR/DkD.1o"7}B2ZhR$\b? zF*-OIBTj v F&H `Gwx'IQz NT N8gM%ZG|ᥴ|k,zM$"ǜwCjL޶ 3 eo*Rx#k"4e%p.i)bs0?_$ܪ+(}W.q$Sѽ<ŋ>+]) \/" tTAkįMYB I/8C LR-ӒbC{e Ժ %mʡ7% <4]E:@c,_y6)pEWOg@iUhIc%s',0;5/ÉevH+6J+{v.W[H,?NdO8Giw̳ٔދc4{ֺg8NJ܎{z t-qሔ\_ n큾zxRhl[/ﳻ`;Ι֣sE.ƞ&ciֈ,!\3sƪIRimmsMȾ'`ûI0X:A'p!z:I'4%8ȇ r)6߈]E P(#^ox\K #9d)hUGJ죩5K;">1/ߥ'Vd<> /bMכ#( xٖ%jQFPi?^$s-cnRH .$%AIHjؖ 7Ptx&䕢9x]H(Uy7j0Sጬ͋VrB#6h@ 8hF8 ItB=O}?'Z? /uV/N YŊg|RK> i"+%ȬuבױX~ Y.ҭE>7Fv|FeLPQ_g,_VCviv%%>%u{7ly:wse;=Zp%' 0%WDreB3##i)"0~y'P8R80Q4b7_XUN5/"M\Y/< 5jo[g˃ׇ _,%{M!gB^`ec~yT($7U銤Qŕ?G(tg_ ;ԈEj%ҶV K }Qp~d"gš̥i) ^RUU؅`Qe:Ze!4hL^Rat'I&;Ϛ>b3Y)>buzPgYD+K_]7[2=aA)ϣ;4#AW_[`~_'uA߸> xh?~SHAD8I#_g0 0#5BCQ4$;@&6, lA6c+ 5|,jaz㭘*ec&]~ma88N4㿱Q,2c1 QGH 4/"0\ b遼+ӍEIx _ X%m'7iؗcM4R4a@忳- CzH=ڱu: 4kNE=`{5h7<eFV &-7F74E` {o;0:9oDa9h^b’tK-ׄ ["%cٹ;/HqZ&qr![aQ',O'^UcSCID"$%ÚmTK3o8w|ֿc)qZmeN= В@~W.'$HS։xU)70L h$+<43 @)Go(5E8S[69X㦏Ӭ^*wGoB.@k ˀkT6mL,45_I 4ռF8Hd}]Kڸ |0S Hg(Gq }'шEcz+]Elupqb*K.&2͸ KI'-GVzZ3>ibIϛQ,r!:"Y~J>#zVo{(m6u9p>mW{zyb貏 Fv \ TwO2dMY|C |T q a;{.-p?`{ !Xѝ%$Ib& dS6F~pEYztcDIatNx>n-1R95 i(X~ǬG/@ ,hW![`=--Ai(>]N/|*»Og<'fCe<͑ѿN|C[6;c1g>28拪sl^P6H9MVkHx5(5qj)ܵӳs$$+M-VL"634[1(h; [Mi'F==_>w9ļumKR&t* 췴^Y]s L&Y zwb=. X@V*vH;|Ko,1؅JZ͖z1hlKั $֛m1jm|%}х"il}Ra!; !@y{ $q5r'xT GaZrr¤l>3ŎV4? P9.?ԛkjs4;;Gv.Hb OşM:[€FAk |2Keަp~( 3` {嗍r!-S.ڳ4}&Vؽʐbw2m|4'qh$tgg®@)l8RMve6m*f'eER>ʊ!hK9BK ڤ?F;]D"Y4ڋ5- ^j bӯ)Y>`V< W8ah\R_c|$Y&`eʨ8t 589݂ƒ,TrKdi`[G_{tG'*ȡ(vuM(/Բp;0r I}ac>e*3\";L>A5A(jiwM>* g;Q!IFsyDTےI/̈sq3*u NL9Qo>W\);bk7aDڜ$U/T[(gkR|/8,/4.69:o :7h+hs}MRtw;^=c< {9\ xոቋpK#!JKLKEPV֋Xd/O]†E: }bGa۱Ht=C90R _`ɂ0Ns8ܕ-}Mfil2v6(<ψˌBǎ3a{Y2S:*a3 ً7p{OpU m@t>Q3;49^WSaWN?79h8RTf)$([Ohbvr=CZ9M86|G;<,\ŝl[JmQş7 ,wG%|7Bs&JIc6r_{vf]tᮨp4oqvU0gu$Ng|4pEN[WmԳJ~& li:8+ UD9J Z/ s)+L8zQ,+h{* wA%{v£n?5xnIzImJil[ VNz#m] U^6-xUE`-׎=89cߘd+/b }qRe)TG$;EK=SΟ- d|za:VoD,;d*0S݅nhoSatv0k4iCt;csҍB\@[t;wY8l ǀkFJXgX?|AVhiT'@l@nc(υi!?)"a4C~1"`Sr+xb7/ZDMظi&KF:t59U>&QDƥFCy_0DB%mV({_I_+2j6)LZA ++kx;PƯabU|WY`}m*EWPf%0 itIYbRc;(択R iÞ-®RYv?%O֍70wX\{/ߞ^.W#йڹ@CM0D&+i UTFY$,Seyǜ Ť ?+]Nc qsDQ@B_v.F|n{B(Pdr m,TLyIR[H7,*BQŭ=lŖ΁^H|p$:zp=8-э_1;3$uYi,ǘ4냩 P'c<5yݻu(t}7!D:ybhJl7_?0EpyϢIޗempl" 378<4oV4"Col9R36Y .x(P=mbQmf?CԁqϔLLϏOěv@9R[ Ki zIfgP79p9fo 9a9^,3Yx~:SRg bnF,hF̵j Uw~Ei%FCO~i`Tgc"n^[OnִMZu ~B?# x(KkL-\y0H-^9!|| m\zʾmD֭9k^,A @]BZ ҪKV1G_򊮬@a~[c׌gڌꐊpbMGlDQc3S&ȿИIj'a&#DŽEj+2Wr(@ؓc'P"^Y[,>*<+,$X}[tk]̅Ld:a G͗ =8*2K9TF@ć)!xx~6ȊSiJW(h`Ad,Kr&aGZ3#U"/qdLI!v 8$2߁l=%l,A$\m>+)7]h9 iL^xIIau4$ʖqUxut|8oBgচ`'ϛ !Ӂ~ə֭Z:MSuVk矈V|TAιuUf:R8_f`: ?Ѧ6#Nk֩,l1yΌ-f:Xz{!tM 2֍-iZyOp;gPZlďЬR3.+w;(];ˬydQѣ6da!$UݗLF4!}ʼgU!O:tVw.X Oz+8[݊׮D]c BB:]7sW-< Kd\Zkn؅-\P1&K$GaYU77W*B!jv7ZBZ8gdT /NoRVs+|tp,=Pͣ&XpI{Ff+ hN5m7.8 I7 yhcsO%uѵSK_ 5ՐK E9v͔\ST!5x}pЧssfd}+ѹzxw_{Lm_P8&gOUM_#2!b$pI3ܓrOmUhs,UCR\5":_†`aGoQC ;C<qjpF 3bRpfp!."d63%͇H&Z%Sq^3W6)쳢}rV2]A4BܤPzGfVi\ )ߘI,0L4bVxƐY2%R8e{N p*㣽SWmwS:H zH$m# {[Wۭ7d c!%v Ri7#pw As ~ǖ\!mip O!ŭU1E@/ jBy[vu7!" 4]INc^O-N@39JΘX.[a-}L7OVw/h2Cק1,@=ol򄔲o.dٚVw.~ QHz7A){B"(Q~7s\uksś8mbhElȧ/Bu0Lމs#iaž{Gq v͞07蓯A$5 Pů`k )SHFYSGA|}vKD~7Iwgy 4Jkb Xj`Kk od:~@>J:v̮woH5of I̟n\?c9CM[%u =O=/MVt*?;})H,Ph#UN~r-1E[dLl,[]Gr[#An,\-5W+Aj5c wd`"(e+>bPs7%V_e(9(u1׾gm]I8Y/gpݱxˡEb0;5iem]} ;, mJ¸nB--;3gMi@NOok ID+c7hq-?E}=zٗh~"K'r8'\9Ãz6CEeL,6i$q`iJg#9?Cb[szVR`ίb8j3jSٶe-:*Qcx Qv1=VRT X[6OKk4v\)'ӹڴlL N&TTW|EP/beNk\驧 o!XoXw52wD|#z W GNAN I4 {]>6 "P5o() :@&FmMPj+QJg5;Yb=` [JOԕ?Ώ.2u2_5kZ~pB$&Wx~w` #G)\ SplQ̹TL r,sX۹&pyJ.ЪEywc{EL$~/Xۙ)ż'Pwmn.V6PΗ([o|H!/{D5oEt᪗Q擼Y'J!KQP68t #ۋoI$?"oSEݜoc >{uvD@ge4MJu&D]7\ Zt =s),0#a"#r9 2a|Ͷ}_~ RMUXp@#'U)v] NdLdrH6T\wfCrV 1nx2v3s)83ɥJpy~3^`m஗Ĭ+aF'<'(սA- ! a*8 ~~FpЮxXwXzT~2)։ČͶ-:,@.|{*a :,9F9'C^U:GZVoFno?ytШ2T.M5x;R]B1'`(]+(@!7 ]ƭB2 NԾ9?oj$z _13ܢU=vS<̌+e;}xjÿZTQYmd0ɺ b"tpwv4T0tBʋaL8^Z3VaBFXxFYNg"*sCV#O/!`}ޫNM׼ A!4uTʫ0s8og޿ K}CK0ɧ9aO1uK0?fU瑩X (]kq# 3?g4F U/3a{ɶ}aA@&GԊϵXb樵#hsJIqeV܁"%|?yJyɐy:O)unו Z( _;9GR7G0HӅ|*wXR$J6ZhȜGFk&q 9VYڠ( ƹĠ-5 'ΆB0Fq@mydv\Ż#QMwd~Ɉ ]E}LTE0zdG)$LӓW``=FWѯ*WATA%(o`G|Hg3$VIw$_Pi{UfCt_<:MLmy Pu;6|o˰#1 jUJNQJ@3W?i}bNA̵ DunJIN^Q.Ԉ*27ۍ/xHm5VDʈ{@4/gyFXq1w X(-?wX̑&fϙ!}"Ad0SŽRߐ 9gl38.))$[T*HaT`O+ZE]N~ |y)XWy..Z1 pMƓ-g漧ٹ;f.U1}◪ƅ\͔\;OVE$[=5{зjVג,t( }V͑4,/Hz`.cLi@CӡNJY"J Z2R\(|\֕8YXL@Ҍubhs O0w/dIdZ d^W!ZiR|ۑmL4\oE3Fۓn+I9dʼILP]O{ ƒBVs DnHDczꍢO'3a+ P^-a\M }bo Gzi>f F`<N:8Cxs]A8v!-6>G#%WIԳ})oӁJ YlZ9F/zƖ 'E[;<~D虲õ@ r a!G0'NvpՁUuIS*EZMK+xxh;%0t i'( I{#(j^ԏmsL2B6tFdt#\P@1ʹtNM+Al6:#ÝWшX߄ &7}q'#Cy i7|]~nOou-e iECg</"kPwٖng,48Z =}<_|j܁kxzn, t WIka74"X->UF%}<dԐ8 ^uv@Icu؛G(jY(ߖA^۾cӍAne/|i7ݾ;7]$/Ni2"[2el;8xS~塦 Qת}IbgK$.~QdqM?V}q՗=<_Gxqd,'>Io$ 1|͝Fhh:ۜp\Vψ%]#tï9e B)Tʉ M) )ds>Jew_;[s $!oͣ 9 gө'@,<_q9p]5G, C-.{ >֨b\vשhv3K XOe~pR86н'K#,7lA ΕSTJvD{wƶU xUXpD nY"ErdCʿ ֲ$DAy<(k>睯Q)oG+{LN; ::׶' &G@oZCO@s\ ƬnO[Fh03:.f#6Ҫ>Mw<{)nwf~$_-=G[uX`/$2ǿrݦ7rdzO}+sȘ,u7fᨰ6A?|1%CC.[?`@z~o?Յ"GG:m(yX=̤ۤt<&?p{45qO$j92щv3΅$R3]7HNѱXK"uO4\~GږN_K|N]\V"*h9<kXDt2CxRa-@y~MshBr?l[{+Vr PZ_W<Gݱ`,՞e `N3e~26'5!rUF&Gӣ0e8_}M TjE ߡMڻћ_8KI|;BRbМ*Vd>!pύZ;ayI8ZrX5$2nYUNؿňs?\4] $CCHmFF zX._auR, vdN]oݖJ>u0 AHcWBГMWil'D5)kl{58#Gq?ciN*mEg ˞楪9驖}!{I:Y /_$ 7PVaH8t]W Aeu*{xjuNO̸14oOsDYZUo-AWqأ$.&F<3-;J `&"/f Ccʌ=y`8lRˡ8 łJ/RkCs8qTmghڊ.pBꔰKʆp75PDgLw.;1CٽY7 &{Id \<}년;5Sv.*; ?/^Pz"qˀW'f3?xĈl9yR$50Z fZ K_3D){|x@o !n`]jXdI-X_۷MxaCUWaiՅ"eËʾEA!~Js`V],#qF@O29W=)_Mٻ&Y'/(dP0 \=&iiD3")EJ6s|)])utMߛX* gW ORq0Έ@DXi~6Q5;;VlP,1kGcTF DNOkЪrw OHz~j#Gxe`"BԙK ɥ14hfB]D 0bO%s/ҪȄuWrW/lqmZ?䮲ێGeg>V'et%5EOuNꈣX]g<>ݬx}HJw\5eu5 UХRMsq%[}vW|7=Ril1gLT2( TבGFԃs^MS->K-!G=~og3֎7Ayژ*/ZGtր.7a.kA8-'=ڏ33N gb#WVeKmǪ1OOėVfȏ*5F1QU=z5wϞӋaZ4ӹ}KHJ󺹟wިX+ ,v|b*ѕHOxRubV]AT ߡW=ogݺ\o LIc4nngu<"RO^E쯃ZI|{N |h̹n"XWusgYI.W w˲)vvJ\q~Z]bE8O|ZNUxj U8HW!ԅj-l!ޛْpԱ8KA &ҁۄ?.Щ'T;zCŠSgM{ﻣUdEMo^K=ʊ5=zZWr?Otp#K%Y&7P)uFi ޺tJO^qgʍ%%X 29f+X^ ∕OSTH'Y!u# OρGM\`i PvwtpĴom5$a\ sBCsɊ,s:(N.KiB Նq (fh o!M*!|M:zPv gב|K\&]Oⅇm&cq[el1?E3RW̑pxA+BĬ pEXQNOҀBtW|04\6vQ:Q>գ:/B M#HgV+\u+"ከeR\I߷xq6"gus-Y:~Ny t6-QޚD,#h~ECA\h~9z({o)[ТL<&BNFR=Shaa$iNJ6(MDjMٚCĄy WﵷT=m1MDg= pKGNUyb*n |Ů@ --6E+-vW51fv% I@pzxY“HB5# rۄC5l_Nc֚@LږʻVD,r?K X˗%%>89ExE=jcpyCw(\x >rx:W6XE׳ƪ 2(VPiއc-g`q8|\͘Sqxuc7. qj278HXoOVˌ4Ƌ:j6j~@ʐR # $6DFaͅ*2$Z؛wP&R^WpD?tW)VV]X'CN%p ftۢ% #;ˎ zvk:-—݁vh,\W.w%GGL ܂:f3'ɽgl:*oPsFE 3FnSDlnkw׀U5X_,.7ZKuT7yjmp[\ҏ޷ zQǥ]Z}ީ-Y_|Ԩ9]1̷tzU1g<)38{+Ps=KZ^D t0R|Ž~Qz᝚LAˊ)Zwr~l01}tW އ_oݱ{QB 7/}>#!K&!WI}~ #9HS.ǣlLQ=0y{wjjlKm9Rթ㌸4cJ13qF@!z!S>ď\ m'45UIߕP8YiT6s㑩TwGo,*dž!$zp-G6e :-d 4O& gNX{_Sv|d ySɭBIYjżMH2YO GbPZu0Bg~4?5@QMȐnZR$hw݄Nz'1$>"yog<^K4)CCQÁ26Ij!;ҊqGjymD 8sWJ8 K>ĂIkUvraZFBz%1j" B5&'ccڕΓ@ZW.12Ef9:ZVLܢ%tmƎZc dPkJ;? ٧DJ!ڙ{x\e瞯[<)n4ֵD =>@gZ ɯ.f0HLc}-/:!Ǯ] GkWNX;`v\ox/ea;̧Y +{7dw%xu;])bM1ҥsr>cZyA1XXKT'gJ[)k> G<m#*!*>3 xŰ)EL#`7 I6`,H@bW'P̴D=sfL&L:x M.bD2ލr &ZPYm*=DN gi xy< h^>´sjv NX|8?&9iGRRhP鲵[%  dǾ0:.$QryB l/1PM'^Șz88J;G'&nW2x ؝ƽX0AJhkn!>3kAT׬Wa*ϔmؘ$:߂dq@#^; -9M\J?n& F5>M7%qS8tQej\xLMkP@ ̽1ns"THd'aa{+ػKUluWbωz)upFfmZgan {b[$բr=<+#Meѿ0ǎ}A˩axT-LioYjtG++cO(I)!v0HI */_44*5}OURev§tœM0h^VI0>ae 366?繢c6 G+p; A`xޛkÓ2J9Ǩ#q׎Ps_U8[/3b|U~ha1:%W@۶:bl;lKm `X +ji B[/2@ 7A T,:}۰h/m9[Ul/>)8evo'~D#^6h.-G pLj}6m/=U$./\` qo6~kW,Хg4xUԷam9!j"+ÀJ]KjkvdBH<74ɰǖTUo c-<@V@r$OǘU'kd໚װԴփk_Ls c;smsC4cYa#/& F3q@DƮrX$!3 r]s8l?UiDP`@o j7K2t0]pH&UB\g s~˄~tV  xLqbD9ԲxgY)Lqy'eُPȔܕQ ȉ;F!\_p?%w>`D.}[ SZՉiWi_i.ƢD{fi2V6S}Վ:x1]\W-4mBNn+z5Ѷ>VsU(ad)j "A*#n6m=|%OU 𘳫-z)5 k6=`Xv%b\|f*V;bxܞ`xiQՋ='3\i+TVLKC +?%!CHn8@Hp%/t#Dը3vK}DTol6 Τq۲r"T'Bi 9I`: سh_Q^F|bZ}ʆ,ZTԭGO b38QDc4@ $ٕG)FDTK *6aW'U;S?'ccUX`FE9%:I(+i5"La`fr/'łT*{`D3N"?HBp@RBn=9k -muc=dմv@WW"1X3"c':, Az&8i-4޳ߧk$XhءX%n_kqeo{@%K8V Mw8Y Aݜ-*e *IW,wA/z2wِ+ږ* kӪTE9hֲ\Oz_ ! uaB1e2 WM ^#\WT b}Rb(z ۫飯_ovg(!Cf vrԂRY"]%};yDPK:zs@2]IvrruL㍽gA&rbk|ogW3&U*4=&8C;9݃֏jQ#8^5C6%D G 24jAy+~7zԹaobmds =baq\-A0U4&Uaɥ~z!F,ee%{sy%(s^e~fF6TĜ&eb?PwLWڽyEF: mPrF_ˌ1jA[1r^d0{ NF\3ϡeQŲvz &&qX&ߎ>g < lXyYaa0k0s}6~B8,?\S۞*4!0FUS1^~iu|>h4#w^aoiHЂl7v8!:G5MX7"sf0xL)t<8Dm*-gK~ܿΫŚ{nrmlrZjx&;[!()4GQqmukh)Ns6 J!8~zo'2&> 5ׄU[\_uonaY42xs)Q0AAruja9QopH^ 8oZe$8F壊!HE'iBWM/٫1/Q킑ڍL/-=v2 RZ Z$)DhQ.A'| Wv-r[|@g pwJHv|ŵ24UGIP=EمkټRv4SnHzwdw:K{_r̎$V'4qQ'\JN"h!WwwP:ByC-Ѧ L%Q^)%m|J~F=zVc돾]YcBRH+@8 ,'V5}!!Y!~A3.澛A;ɵ(?ƤiY-VU^Qlߎly#%K+;8{Qk]nOwWFE5boD QLo-R~(t|p>0zŠ]!|8e- V:!>Nu.}0ia9&oJak  *f*p+5KC{:):a/MivIkP7#Hr Ql |@5[[ɶ!'ޛ7cXy*qf&?V {oqfHKٮrDvߕ'{|TRh]@+v# Tl(1}ɶ!sg@SInZ1D*"L >-+ztɲ5 )%D~@>10(6<+s,727@'zCV!PuϾ  ^<T6q7igx>k'u泻%[i6^F9Qi{2@ *]L VGIUpsyV[*O'o>tKcwj7r"# Ӈ\W],͇$VQĝA|tcp+1g\ɠVV^Xc}{Hy/ّFpPv>7 )URkGuF:`rA׊6ˁMbQbЁiw AiBԒ!;\%{#&u_PqYd_?D.r-oDz @4bhÇYI P('oi܃r?Y<)UzBw8 ۅcB%6sԶ7xh-%\i =;4a^'ЖņN*urWaC5â#I'!|i57I@D~Y#\q~ wsV-I"y &7hvX*=)чջ+Vr+mO\pId|z Q E;y (XIowZ񅼫 8_ݒ6-6$&K*^@y%V>sK {' 2:De Jk&,/^-މ$wZ5!8ͽ$x]1\Җ%y$, %2C"7hųEEhXaqQ~0T;wrɟ+-n4>qOo CADy~b8\ˈ<ۚQ{QNzYME0Oַ|4?茙@˟3:fތټˋv3}ͧ| sM{K&Yx+;69xǢuC0 DZ}e cG/J=h|, `6lWJΠ{'/8\n_7>jN݄j1; BT[ys-J񞴌iՃrաLCuCU~肩IyWCBEkoPw3^:OE5A)4d9VOK65y2mk h>2u<5zYwP.($ti)F(F)nX#[%&+ ;GB"VnBW}.$pN_$*?n=+ۍ) 60@DHǘ ahO-~b: {$S bV\yu:804y%jCX-y-a|Fv0 Kh*>:}aTߒ0,CiSn9Fr` 5|{/2 s߻;J{ZVKƤ+J֊$!d Yb?ԴvI/Swl]@|3B^NoWc8 @KAЭ"Le!,]} b3#n>lc3]XNZ1;^< н]04 9SY 䈚=ڐLQ/[)J,PHf>hy[cKG)}XEF`^w1+62:ܽ,؉ܭ̋pbdX%&c8r!KcBI\z˖x4W 9)EZӼN|'zU;6mѫV5 p_k9qv\%o862ob| y7>?m,PּfB,I^򨶜4^+ Ռg`8# wM GNL; ,7S_I*X+:8_hhczWO~E/x?(r Ƞ!ElИw9Ճ/$) K@yxEgazE*mWnS_3* 0t \i֥ }Y$}1.NDGRrMOWk`nڡa2u;Urc%i5Eqژ Meu$߹tL-ST\1 xTdk6p`X>"U&*[8)'*Qaܴ=nbԪoޙZt% V!h@?31BuKJ*c.sSR;e eA(tS41thq>_'Vz_DM>dAo?kPG"3;89TǴ fq xN[[>>90'QУ󬁌$V~44r-t7IFa-w_h9lm=sr2ߋM7)Ħ<,Wu:;__l*4[ {hYAz䓻#?Ry*{ 鲎*sjHvuuS;wwd0*]$$q; BWMi.8p)T| 6Ds2tqf\)o4;$Tڌ[酠R5}bI£dK'O"蹸-hv4?QÖZ7yFRB;fi{b)~ʓ60akæ?YxO(\/ wH""G\|(odYї,V+@]΁Ww ZT+O7iJP*}~Sh98Bʬ>oG~^Z(d͗~(Bt,ICn",kw]LF-#ZG=K</zE s,79/Xٹ+ x@HWuFLB$Jd% mm|iKU?d>$}G xe_&c:t^X7ap'c@y1u *uQuo  VCYٶkIy͈Ir̄Ѧ9OZ>|D_r ldCA" MKDZ [ڟkW aQCF+_}$R|!*_|{h).wd(CT̓I$0!pt,tݲό#3f0*1ALBF,=*L)fpJAOV6%yJ['w;^JvjIfuDKWn㎐=PJHJ~ǵ&n5ĚW \4 b~ihBuM?@nHN(Y|6k^,(P׃yq-Ze4vCQJ?_\$<3ʔ_zѵo\WT#׻:'pK FR'ɟ ծjens~|ϯs&y5xm C?sk.c &~ 5Ku=_4PLwv$) d}UD4_19ڙeo;=ɕ؇g$6Eqo@yV0z{͸usxEՈ].[Y;Zp }@aO<m14&!0 v#ieq≬k}q:nLT5vt+뙉e=.*2R#Ӑq G˖A_z>"C^%}$#ߏ&!YJǬǧ^ŌS-B;r5skl y dQsz3X`˧(bQlG8pP7"E*F%Yo |s33Zc1%L,8DT `q7uw{,-3#Pk #2k}&6Ŋ"Hf'Ma,Ga F(ߗgW)'])J-A->Px,ݥTH8]'(`o2,~R)r)+a8$٦ko R)1NPZl *B@4Ne+v ʼI$Gcj81iń''ާ3$hYvUt 7Qq~gEƀޣU"Фbj Q7՘W{x;Y@$(;9RߑQ(’܇eƁR%8ӈS`?'%Ƶ #DX9sВ AyUyp}=R|Ћ;w'B^zvYwZa?\?E6nwoKE4>#SL/^ގ3%&o&]1SLpb-U6uN@r^9 ]t4U rRiDO2']հb)GRcUuuAjrxQun@/ *s (<ܯ3c6L!$uZxg9Kz!Z:n`v]XK5@P& OZƯ6f" Ϡn@z8aq=toReQYn]>`w\fbS%ӑfIzYq]Œ,.W& nrd?m{낛CMVq8,?Qq6n̪`fCHDej%_xQ۱ܕɎ'|MQLc;GShWTOQ7h>nIwI,%hG|d.^O@EE5ʴp}q|A"}YC!Y4;WrƎA *}!q{f޽NUY'H VuH=HÒVUsDqvK\Xӎy@[Vste , WcY}"W;uf0~W,sw`2Dvj;O=!,(3߉ZBX}g`Мw^>urV_}0<-؋8x*2 =Opck(s7dI:CETԓ/qVߍ mڿ|2Qؿ&@3dRMnYu6Y<::t5COLi5CHuܸcilaAfmSgXҵ]N1O:L\#d䪂מKUuS ݖֽ9?hN1sDM,>v5fIYFħ's@x"MB9msa}&lA]G,j}C$mJFxMa`T 95X(EN CZB[YOq'@^m~Z8j1QGx1RymLv}7(zq,Be3x/zݪ#bw$ tYGS&,ShTJe$X:%bX<PyVV,K>OGn;hݳW`O F{G/TUw 7ƪOIf)Pd9-7qŴϜ}[4vqx?&!&;wp)2Zv"zyggISŵz.rV5yy7sgʻtY 33Z&OݱhK. ـOdP3?)l ]x?Z%>=#ͤB[%[shlUGB+[,$&֒X[DmNe]=\G}0Lu}w^e!S:u&Cvl7RMF"~ŴU8#gꆩk(%`q=KS ZZ0|U+oU cS_BN'rj'SSmG9EV0 HD}KՈ?[跅S/x$sfoΌG'%%9Jn@ + '[`LŒK?I,1ʼYLoGAoþ;h|0>X>8^pV]6Ѓp{Vk\`QWB?{5N8 rAmWx4OJa᧿"9iʰxGyvr__C'WP.j4fXK"Sz~D eW@{ dXq<']qKuL ֋L7Mz>G}\s&cPGY!$-i-''%}q<Jj^//b%d:LjG`5sx>%0LvȪDH(o :U?:^kǾy>)EsaAZ1BQa)G:A0nk [m륥!9<5\KfQ5HCEU@/^i8kг8X6lq"/ F-wכ_i Q6 !2@Oy̺;%/G ˘ڌGzf ":C-u'vh?O|sv="Qhh {vX9|'bĵE}c.JX};kH8 |_r_4;Ӛtu36m1PB^;*ї ?,`9Aybr曌 />]ʮI~CV=]\ ;N3P- mDbhEbHAقPTǘWCs߶@ 0qv暾jЧu*Ǫ|w,HE`~1pߟ?Ao$4Zx" Dgm7 d./xД!]ɷ"Q1~Aaي{]sp .ŐPsxXM monwĭ؜nA ]~ +@TL|\SqcS;}^VE@eNԏ>sL?kX>$]x6`"`j=7hV*'rƬVP`Z O$Qp82PhNXt)V>Xxo]o{<ݥ1#Utڟ=.MzӀlĐ9Q徒Ȟj#A)h\]-4\EY׀``*ϣVҪ)Hx@ 0~ |NPӸx~4@ThȈ,RPX]l413dWsy5`@S#crތ{/DJ.N Wi͆?-J}bQN2$+6REOGq {A~RpǼ?xKge,ޮPٸ/֓"X[Ro{w_ VK 5^|VdJ@=F&%ҽ0Z%84]zUQ7} #>'P`ڍaa¶7JY &S'^==pFY? @/0x %N\UJ~O8t*Vsu QP:+*_nKW"MԽ sG <!j:-^uPo@XlAa\Z鎝~wD5-̤Bꡳ [ \3>|[ޛ)h~ SYxmnK W]/-Yǟ ec9y#Ag5bO1ų(tXno(4r(M {7z |zJ}G.]*} Xw :> ^Wv?* U؏AGiU%;Aj82fV7=l> s{p2ц m^$陨PD*i苩^9;4\݅c~Ӓm}ek,Č;ӨY?èqG<(lPct kzeA&ߘPxUA|j8S%0v'.HLz0zj^d^P,ņre|DuJ Q䈬唙<[ m.팅,6/(u̘Lޭgnk=B[?_2>_p::)V4[В̏g]Oe2?e$8ƾvr'&jdhe!*Q=T/p=;~ZC9̴{;!5M|%EG3Zߗ6Ss!Zt` 3E'FAx/ J[5#g:[ .A8\GH+~ "hO$S }d^`)ڀ%S+kگdYe<ϣg]ВAAjo¸lUfIt_\ƒ#Fte@Ed%L L/zS*} E{v@QJ{+?gNшօGyDž=Ȓ ?iBHDw!p\1?֞oU<Bme(ʍJr44Hw!]u2%a:vA#r)͕~-h"bP6nM쟺9 X {[ny'ЏeUظyW72kf>nXI b4c[Uݡ? ;B9F)cpΤNS+UX⢛J Tzu{6 G& ϛ@43Ga}'}A͹R[ 68+Wd~]keK/{(]) O1PF4ͷec#ʵ&,*;h@gCH ZXQ<}d0hgã>HdTK5ˑc7PoTv˗'E*/_Bs^YIa0rrrb1Ǟb]ՏjaM)GݽQ: Y&f;Q=::4DBZЕaƬimVi{nֈ̶q_*27?ogr,iVd jgX߰l:5"X>-=,7X/0V<5{ځAK!./„ߍ!10EGiܷN 1T GJ*/0-wOUt^"hn<ٰR'Km !H#`oOZSe`;bd@=<+Djİ%Nl]3j]/$۴#O{WXBj H=2։ɢ[\06P}Rha߶3*'<_3 qU$_w"Ѝdg+ X-ʖB" > O[ !; *9% s#EB;ITP2zbi\ݣ"G͊IB#D:euM}M!cup]N4GFOSTa>@$r3#dMewGܻ1glDq (Id`{N~]f3yb]mq1vb`Vȉl*Azĩ{EJVSI0RD5tu=ĔĤu0Bf=pNm W>dyi;KA!4-i6hB5ߓC[FNsM *I~%:=uٹTҀъ4b)Vq2H >Pl!]bSjqLQ\3a尣zB&cBA69qeR雜ז7MRyxCO DJ\ҘD^aTXZz.fhj1_:-`hL84._y< hB[D6t\B Jдk9"<TRPo2^;d`oX'w@f&tnIKxI1wrK:b_47 RI qU툏c9m\ HɪC)[U7zn3[ `Gu|P%WldH%]џ1ܜfvĊ0'ֵ XHo20cPe;:+mJk!!A{i+t"Aގx z%91rѣz=l/]|]H !+*g.g vpt~~밤:Hau[{ fE@g!cu"IEŰ ':.Q _S3^g(U. '!% s)X-&K QRR$jWc3w~$ 1MWÙ4󵵣XڢC(jg}uTAV!6|>Fhc  7&&?oڽq2o=;Chvn mC`˦]f7C>V[R=9x2dsh 0Zjq?. 6s[#:~ϧo`CO^!ŔPT sZi۸EMu &k-Tu5Hޞq?=gYvd]|aVؔ(OOqPfڝ)lR2bt_[tr"zCs"JSwB8Ɏnc##/!?7IYy }u99Ǜxxpg*Jfk{ puӄL@3wd/2Zbrh{E}UWUmDp@_"cՆ\v彷ی*x֭ݶS8qeXsXż)*6f\R/Ļ ?Vb0H`5MW5?* Ri4`.LX#pK{\{|S(^-%H{>#\vzhtF#oU9/yxpNm-PV /8:RHpj9U,~^xL^J64.xViN5{E-R1oyM:vPTdH@ê<|!!!6qCUD}KN}֩ "*P%k/eS f`S4sU-xdb;BqE~>F;^7g@UJW;llyB>/6 ?<H#<Gԯ@PMItHrS9}q<%h۳s8.~tt.Ee V!x?&~<|#j; al'ݑcZ4ޡdzn.M0R?NM+ZjpAJø|p{JخwaG]>ǶhWHdd% ɭ=dV^zőZl @# O\P-\okaDYiKnl@'Bz7b[ҭ)5Hlc7RoMi,T"54 ᳪm8~RLfH<bA}iԆlKseOk%_ kp ,_irI(tگm,¦[qm\%gAf%SR,xN9gehO;+fyz]%*CwY6MfmkCR| ̧̥cg;-;431ypQ;?ׅ-X;]dv~}#waJ F'tQl_A' y0?FrēHG- #zk s}d!+[0i~$ʲ`5-@Am()N'-l]-E[3ŋ*&o{ "|n߰Ìƈ1v7k guc $bև\Ku-Ϳ]xp6B05=0+= qyxOR3gFY\u} 0ipǥUk ΪCz;jh::c&RrҔikcw$]L̉>u&ߛ,%}P0{F0؜LͿbRu ;!m(r!#|U-bhSx#}"VG۳}03(WW 縷Bpu@m 7^yJj75ْVjvPT_!rdRۜL৺YUmF?hI;:=y|FO#OAzK3?H _lN</E( 6:-H egc&ݘ5BWbqΟ@CKq aqlhy[bJ]o˙W"e0TϨAF@'5~]Ϝ=o]k6 WjO`Xܠ:d*[:O/aj ֢xЩҧ1؝+.H5 ĖOk_)kA֮2]oD-VeJ=VАVrК'{/f=+Xx["nQ̎hve([mP&])<J9U.:\a:t V6F.O0j@̉:F4]ξ5bZpћYUA;# =Ex(st֒rɨG][[BBd+)U6ݸRbS\>j4+b;Ct~Ra Aܧ҂ Fu9 HuGG7C#lSך>)j׼bZ"1QN*&u+1s~d {֬Ԑ4&KBk6;z (Bl< x.gի#E\>pOYRu8q͸fSi @ 9&A]KAZv?\b((zIYK}]*uñS (C4P*‚UPV m16 <4 ;{V0wc~y` %#ݎ~@;*eA vmU>_]N33\$ j^ 9D.o1m F}bL01e/ָ݇g96iC5-żE\Fy-ŀO/25mm<} ~Y"j2NX3?H&YlI@2U.#-;òVKJ膇KGx W6x]A06]*x0b_'ĶcZk2d?ZvHgaF4u)Vo|! ~6ގA*2rSJ1p2Mxv2c+&ZN*/Fq() aMQr[ 2컛:̸OmAPVzR )`}V^)M"uj/r%zyn=hhnt?wxM1胕/{!MyLh{T=W nvyf;ayRldd, xp+5b 6T>,#bTg4UN`Խ[ޤ3I} G(!bt]Ly)j08tP=FwzM#v=F"`]"Sʳ`<ړ/IEдM֬ztOTO{=[7-7rlqZb(DlM4"!)Q[_nd@EP|Z9ۃ@|nƯN&'e*՚#|ĿS;*s,//C :b JWbâߍXsiC3*v :՞m4/Y"-IMl> }[! xjQյ"N`x, z Mm "7Бae6|J-@Kevw-+!JXFi]F! z wF\ۼBn}MDΧuuk.$Jd1.Kcmh"GLSQ7Nb-rerCkjpH{g\߿V8ʲ;"*%bMCg3~E(h_l桅(\|~go&Ԟq+.9#Nt8w|{JS3g\w\ Nw_j(n`ṁh !0J%yPnB<۱5U6󄆴"ŵ$n w죿fՇh d[Q5!Xdڨoa ֿbJ#ےϺX(1MAs5ABktٚhwHD2~v^? U!{Py#ø@* )d ԒanIHI(27H:y il\4Q¾FqK&]m4YR =XS*QrAjĠ&bQ)yW0׷QWz\bՒWn$j6V1fdwz]VU&s w3 Sɱ,m I}QP'ٸ ƮԆUԚ>QbFRx>4ҙwJlZ4DEq^m jJ"O8GؖE(\Il怚fp -;}EKxE` mɃ˷`WW-/VZϦM?y"6[kt+MB*lǴ稯8^*[>+& X uyE#me4% 铙:W9S+m'7Pq@:6JL=g!X,tj^8PnRf tak0Xss>3(Y̛`EƂv% kJN٩ASPs*oE1AUpcBe ˭^zG,իn!A<agedA8ԋՇl#:,v'VOJ*C=1B/rX' eEb D芡ʋ'H9|ҡjr&@Ka%>m*mAG{̬ąB&Т>]HV*OGn|iWuG3$7w@lQ"g+S;T}"V}%7 V2לAnW؞R_SG 2nځ_qW*7ɵVb9 a|$80H3&Cy$#}V/L/H@> .=u|^Xg`yf[\iRAsg\)w%bDȎו-i GmgCŸҋ4 ;I4n\/tnX2~ku?GBVF-͔v=X7_"mʖ1i't]-zq˟ R^0h\q}ҿ2z8Avǩ>i{m1W5IO]6 "a]hL!t;njpXSB @L/. "vH4vO$+yx,=s\>4n3oFOB4[8%_\fw 59v!O>Aə-E3t?H19}ƹco=w噩e8~aGM$"NkTEs %\<޷ǂPBצo7ˏ ua:xx! !ph!7뽉@>e!(_+Ѿ@znI.ӑ4g>;wsbItZ}n'(pPEa9r!5>yWC0y&GRzךjUg!w{d1Xbڗe7@dӤs2d0Du5yyMK/* =t᾽GR]0r!.Q6X_ʜuXSqT\D VAv% .ػCɭM<, uQ*oF BۈpXXJa({;M@J 0WjzѼP7\aKTE|. 3rXb'Y]r4~]g=?>;kA`WN`D {G4038_5yjORlָk(enBACKz|'@YsQ3z6xjW}7<-A4dk a_~[t䝝䏞zjmZc!0ePV}E?8B x]Nb n"HgVf.M* xFqvt׆8|_:.'jK:.}&WA0/2>P$#\X};3 !ψ.t3G'_+!1{:KΑΨ5SدǪOpPĽj:dIZo$ h'b2GcɿE ))7oޏ=.YkR{V$>ZRC EA9 6 $-Mti%ZkLDQ^yՀ@G4YOLӌ7)h߱e Ң'Ө0؄\=]/*:wOӢ)]TmBPlǼ ܓ:j&_:\]VH݇{|Z;4.lr=hl"XKI㜭-Pm(l#Q0wvL S=5IYI[T fԤL[&] C|#g}Fð3cv=]@IF,9nFҐNWE3R4Fs>H.jga,u.!榸ioR1=D*'rHLV{njU8IwqT/=8'(?^lhcXbV0;Y'9 b/MFѥX}]'#8O".lf$%9 A}Idhzy`6S}IP~sy~OKtUQV4QSh'`*ҿ Uy 5UU‚źV'&_XHk~G*ul`j!o{i(4#\:^YKwh%;CnGmQ83mb)Q(&_L6 DŽ[9eiE##Ljn;LXy.ta$-?-`/jJuca*M1+)1h_+ΝQ>Yú둙 !:Id}je'Ko.Xptn:6 Gފy/L!iY~ ΘW"¸f|S7YZ1W4"#?; BHte¨PSJH6sEEE$BL8=, TP& A2?M E%˼qZKRu(12_ ?#J3]zOolL4![-P7klm"%E)y$WC7Z2UG jR%ڰUr2wE/<р8YG2pm1sY,c:ʫF9K^2$^'Y^WaT(ܫVdQ1 9gT10 K9 BG#n'j͹g&`טzc0c^.X@U.q;`(r"BzNkq˟=uA c!#ʀ`^ C9 AnWB Gݡ oppڹ pib$p~QJGi.U‹X?8%+^Ya&4v+`_zF,6Fn3JlqWG0t@2AinةQyxS/SHj9]dXqXg{@q M&Ǖ ) mfYGXGeWEsҌB˿]Y@L)7%rVARf8RzQove.7(4%,{Q.ƮZ@AUbM6SӺXO&3tHX8%jN.$FJhygpe~F#:(}Jk K^߾% [@c[^'0)EX \n;fx]~qnJQ㲭 ωߢJKyMkd)c βgJ}j6\`IlbB2b$T*\NH}"v'>i9G ֽaBox-z[pwçH&Fp}H/{Ҟ|oDA1D3qv̓e\҆@]jVBu:)K;I|nYHVOa} b%ⱛu(11*gr#|,moMМCqISFl>\FNZU.üà fϕ,Agw"r6}+#R!43ܱLd C<&̩T\1gR^bL)h5Vg|Gq\EN7wh R_!ĔωVhi:pWJ ?1}\Y2sٮC_x)|`*E}څD^PQ1Տ]d賜"7ЅQq /HQQd0-ܡK07K!` (^ >gS24} #[Ss"V38'EMUˢ=4k#7)V U<5avin'ԙ嬮Q0d6JC/yǯnBj=Zǩ*.C^G<ߒU(H_晨VtmYѷN7%Ӗّm%NFOntc2&6lݤcO#Lu:3äsًzw[U"{W4DUPW!dUڲ16͍1Ys{p`CgޙdI ftuJ>;RZEv'1T]sIR![-rtoY!&{55`W{g{/fpL$+MCZA1AƽD^da^Ck[NnRB7ڿ{WUqc'f9Wn9fogaHqe|TZ #Q2ՑӦ%u{5uAB ]M; aw:PV;|?rsj2JYo-蝘 N-mN UtDR!:g]w摙5;5`P\7j%Gk+j( tBɯ9|ލ漽T 1R,FȷNe0 g =pǀj5ue5;k$1ni#FfQ֌eWWfG jfӻ޴J h`U}7h;2҉YuDR<uVcf`t}7f-8t!?QS <3 $6X%e rh #Y2С2Y6[+'7DWW.=ˆ;K|m)k$=k2>VYfK4Y2LWFH][_&Vwel2Nׅ#e2iiXLcbD̏1`'n$ۯ15EߛH>~xdQ*߯s9g,OSiI@T,QeZ !8fGcz/;Z҃PQ|7󇎖uq~dع.7.+d,73D`mxb㧚8d Ig !p2` xCqR 1K-.DĨao3Ժyu{(ԩNޱT%RѨLfWS\8EbƁUMd)0NVa’d;D1<{7͹Q<@ Y/wY:u<ã&QJtPa%lYڏU>(.%@|ؑaSvB?٫* 4%1wQOeL)KNl2 yyn,91wTzh&ь&b1tWٌ/zf*Ab,@ غcGD{XhwCھf"fu&Y{ϊ%e׭Nh@z,&]Ϳ˹,P>FtSa'uO~K|݃snZq[W1\|`kHrdzr;Y>*;rW.n:7jq*!H]@dr(8X Ft#R=?@[1.i_q ",a>]fd 1',n2 vdv#\t]R ak$gτ5=J͘4 "b|8d@k*0)Wi?שR@P_tK|+x%~)mrH!VQ jvMc6.w|4 ]COMloLѰB9JRi@S\'PWI`S>"ݵiZ imYI$Ey_ws6sʰ)s4.)wIJb=yjkWVME7酅oKy|d%:YoK[^'(YJ;!>NmrMU/7_ɱؽ|N3R"7v4'Pg0 )=G車a𯟘 % Bc/ {qLiڃzPb)E;s!A)]&3(L2KXk|Uڧ1fԡ&L ni9EU !Oc7u"̗O_4$W4I+mh JG&bGqTW])$ΗWoQe ,8<-5t]tWS\AV%$6{ScS4v]psx7 A0dl8ܽew+%{~!sSIp'b[u QST&fp Lw0T3D6.P .iϑr 1B?Y 7 W?W}(ZMk%5vၬs-wu}_<=;&Oxҭ'"S=,*%`X;eP#7v@-ס>2_Y@Wo1k.EslWDûX!ٗBE]:Ava][^ΤndS D 41gƹ~՝6"S&uJ_VXM\*r c1u)45Z` O@ƖdtVHb~65sS1" I.PyG L0B:¨aI6(,(c-ぇ<" Obj!]t;ZsdtC{,5w=7igA]ׯ*.Wk¨mMH>".YTC2B:.ڨHDq~N|@ =ɌsH8ׅ>^F'r:ާn=}(LzfU!='c( QiJn9}[Ls3`20]bc<49Qpx#D[_lVVnX}AaU9ɥ!xhV NRy.5>/((ЇBGSFZ|'5Uj#$ ]2ڼCPjg^id`$$#>d~ ?U6#8w#ȑTʡ}=[˚LͩSBs켆e/P[M|7wZSa(!I6}Olcʻs`eqI=LֹtkW}n':`aok@Ax*rcD- ə#A2E%3L8&R%"6&ƎfXN>?F "sRp'Wahل JkcŚ#:g-o ri)cl SBR|qd={|7H' 3RY?V7{3af`HW7l.iٚ!`(K{.6g?t NR9Bx{Ǯe]htrqq RLUG61sj)}k@BM5SM=|NvΩU[AcK* @W(}87af׬6|9[|nPja 0t|Zo}BOXooХ➵]yMȁ73.7r/j5Ǝ=Tl\{cu 3Q};l9r WVpH_3 HiKY<#tFJucN^*;#܌aR5hfn&ZrB[|zzs4(}*6}=t] 6,A+; )NMפД A𠰶Gpw I v"T'E_V?K$ks{vшg/dLjM˭*ZޗUJLuƗȧk[wk9asuB#"b rozuFR׌͸0Pg'ʹ2r+7 ;ӕ( #7{t*St r]g":R}@qqށ^hYݒk[\hQv:G@{_-9ܺ5bӜCʘ6cl jxH}CKf;g6!acQ&F"%GN=A4_[18ʊ,՗mJ?4z\#+ԺRkNjd~ B6 і"XD5؋u@};*u'do tRVhy^q/"*OJc 4Ve̊f櫮%7;*kenLטY :Wd :nG.!3V7x+F j2lP$l"q!!'-(H?3хקn'A,g1[ EJxEI7gX^+>s)xP5Tl`1d?]~!8\@rWIm#></vT=״UKұk`(hgQ9M#R!.xǣ$_릑qE\V^?\@4~9T*@R2JYPt30e%BF#}5vP|e3VpV6dJؼQONYGJʞԌKX;,LhPqB:.8!?d0A:M]W3]VV0Pko4 #{EH CZћ%_;fRQFJ)|8жיtlWL3E/Ew*AwQTl3`Ã_ohO_?ú}˷E6㛯:<"}qyOwRs_zoes.[<C&n m]Ѡu)sMW j%<*#9ae;ti_qk\$ G16)sZT>]Q[㼦51eFuŹd3/-L7kɍ X5KHҶ%ydd^MU&L g;-LC2f? ̰|mY_H $U+:=ȱmxm"xknġ^&9i @(P]{oa I;S!@ѸMSk3Ʒ1eW)dRrmX3oWSy=saDXA珨K#ӌa%.~4^ "[#QǎQB:>jΆb',5M޸\v;܅&\xa_v$V7Յ}xtw_ s <WE_òɏQ:Mbho3 '`"!ʶ" ,6Nj-y8PW =,W0aYJ6q.@BZE 0# F^g&Pr6 E!!5ؾ~\xj_fm'wS Q|X\ "XmOo uX)SZ2VI h/*i>t_ύ1!+Ġlp#*XC46I";fJm-YX,4ua^MYfNn={B>ϭuUc:d+H+u?T.!4@c^( POTBω˧XWDǞ<*NoLɇ䇡y,l`u56aBhO,(BWP}AMځ#}(]8âpuN$$}ftyʵV̦"FMCSbkt.,eR'`spQIM|I/@ǮkS82Ch:>]B-A/o&LvߪWiƨL#^6fH,h7𲬡4 ĞfZ#8 ĚZz{G"` 4LĝASOI (40G! I9xq)C%YŞ&%o.1?":^6[ ɱ=])4 fh񡂨>x=~IWjIAOTЖ=EYniߵxLu;6c+$@=eXԗɨ$(Z=u$QIETGų3AOXK`Sm ZMe 1iŽlLyof޾tB!Km~p)M*#|14U l͕+yk!*R79 a 8޾̜hИI =Y߮啰3{ 8tp8fԏPTBoPg4󭏔+]f//mR^s"Va4Hw6eY Єt43A8 ~0uxzJz`bħd5U=kn.+1wɪCmNzx0V9QC/Ztƀۡ7WbC=ODLccaE-.?XQB y dC(ij>n,ōb& #T@r[QgɠM.n)Mm#jm*$jpfh& nė"c/@CAgבj_e|bns&+b.ΚpD}hQFvj}_ <¸B8y:g-ȭ 2C\.)acjK+|Y} Y10e?_xEFYi?E. {&dnmß.ltSNB״Mb~)"i0IeSp뱀hc{Rg2[5OE}6ݸ]YD)x-kh{SQ[^ʩ4)۪eExAYGAꞮEc&m^E?]~Gs/6iv;wSLoA]"qv s2`Dr:79:)[ =ajKdĉ&ӉP69t_qO,rvC ^Ke34sTN)~iXVVCH2OFVew@|W*6% e"Y@j }3g:k6,S;J t?/oCLOV d*#!v Q4\/}﫦~=_dM1Ϫ_8ΨeC2IDp#wmqՄ۷ۧ$ZC)3{ OMpk*"3ވ ~=vA uI˲2[oIؘbmG6)kr۫:Zm!fv;51v"XAoE! 38aڭhʐ_C'y6lW~4st'Ȥ7v3u/]@YbJVlNEo@W+wE-ωY1RW>͢nWԶfcaG "=%(dshS=.|bK@QK$UJ#7KfVwuyzncvOUٲD@<u+w*1K :VBRrm$[2 M_]KmwJǹFxr+3o{EkC;p u_=O`׼BC.bx(ݱ'LE䔅 a_; ug/<IhJ.Ґ Zc U\7 `ӞʭAE3zq'IRQyS4'@F-GF 5aB7MqqYG\1Go N 5W&IG=yf(5eפ NO}>vyظN;ǐ5u}4 X3*.N~'d0ȧbƸ-|~i[00qC(aBpB405Q9]'$>:Qͩcf'XքPV TU!|7(ɧ 2HM!~gqWq# v ҆9cJQ.ǀ>`U=q MBk@ٔi'",=BjhVV25' `8%%NZ@<`n%ʹޒLS!IIyzjwFT^;^wBh4kCmOlXQF(KZR {7tNs{d' 59k,np:17ɾ@3)]b|ט[БncKaܡ@"{ SW6"=>EE乞afl 2m{r.݌o*K'܆\N0:7e#2Hp;!ё x2Kl9!-\&4h|(HhE9G%~ Z Cd}s0: :2K 2eJٻ [;ה-Х=MG[c: Iڽ;mŦK&6#J4$ %q:wii; U)T`$" W]߰)!h🦈40@@wv.l*tg{e^zDf\>|IJ߶?+mh ȰBevޅr tQ* @L^xCmRh~Py8+XUҚ-'QJ•$@.M]>~\RF`Cr*Z:bf.s7\;Pe 6}/`A:+褲Mal)qvUda(.KF61Q1^xW)p/<`2ݭ;Y Rv|Ѧ_UNpX,v>^/da6%@>5dQ[o ;{xD/!VLDl7ANV_ IK6M=4K!/f;aMk Iph C*-^%vf]E& KXlFxJ[C HzR˫6 ˂QQ($4]#hu h%m]:?V%!rO/6 ;\uh'I֕Q\)!/"b x;m MVtv/W?v|bT^[W}b;n>dTA4.R͏"7N~n<9FA>:$`4^D*/q_)9bUs $+x6l8fy]#i;,G}ByW;\UR9/=!6@(ìBk" %z^>ŋ@}M Zt(;2&ic[.v)\o {<3ഖʯ27]qjwe$K $Nx۲-qȐH stB#G0$X-#.&ϪoSǓ([Op{1G{Qa2Q\e-rfH f)MEp^&Z$4vaL5HN5B@##s   Br7Y"j2+/+P& V'3 f(I 8"YϚ+`Gɀa9`*2(yagk٢ -m_@˄CE g.3DWFFOQhʜcl4AiC>\Tqv塋= s/ȱ~C_p\4,~@4J\ۖl2MS􇧨2;$)q\;}[5+0hސ.KgPqW_a O#S-gj$^#$>T$7"] H}`b 9aD^DEWj`<-Mr2- m%:5xȩx4NS2zC|l[(^vDZF:_s? >-f?neXe,@duj? %KsOjd?ZFh2GjHMʯ#.SzhGZ>t3!5!9굧gQ cuNSynsZq:Z䯒 A*4ԉ#/Tm ܴ,s>)sXZu-%*^w @zN|Jʞ0qk: ]ъ8m+鿻7>@)5]vОX9r$`/A(GY,/YlMUi`:A*a+e:*=CVGeLq2#(w.5}aXA^N I(p]Rڧh>RUF_8xDk?[=ծ"!'NcH!Gp_`\_sR}ǧhgV`D[ Ғ3n:fhXf 1'5%:6Q[OXIbsװtBJ>>V`Po\ɂg0GcÁ[{햄<\KƟXfżԍ¥׫OwbO`<^2{H2X<%1u]:cD~Wii[ Y֗gwkEvtj֋61Nާf#Dr*mRv <__Ьյ U#*TZtkhOC$% ^>fěf۷ސ+(H9 oh;!QUg>[sm|=smMS@\?!ך1JR%%U7`W@a9$2A& iH w!Oou7 Cmb-*N?}_(o aD/::U(=R],=-H@VH 4y=`k nuw4p$BdKdr cC_'BPK,W稼$,MlYvX&c!+A)-lX-JXQ""m?bo,Pj3ׯ'ZZ{( ~QPX+ o;ϑj^[ #!*NJ*Y|iCR4ZEa)lI™bWԧk#Mu2'kmcͶ߅Ax( G4$ee? A\apZ?͋ds|,S#Öyi2S_M,r-#= Ҭ++7v|#x͘\x2IwmJ? \<3/ \TӄA _|W(*>2і7Sc[D+:+Rsd[~J#8IM\4NG慃W7B;P@J 4UR>fVpK)Q8o?B{7VuiYv,%;=S8钃ZXhP[ (xHb},>rYB7u*)B[uլ#?V#O#sNv2{U(eᏠb\]^g]N{\:KKiUG:$OԶ̀ YmA96`lH_ aa G`.1 I7"{jed*30^U}9_)Ħ9ݒ>_-:nP3]nJm:T$㼑~۹ɐ6ԳXN託ƮBZ tK%T*NB"QpS b λO3Ɠz'ua;Uhܶ sS/i89(Qr/g!*dlN/StoηsqAAx}|^aB,C`I?иx:w $܅&w4GAHIVl@h",+{tg,+&uw|@th"BĶ!+bvܝytV܁vNmƅ19LJ FҺN5$[4iy:Gh K +ZyR?5J~.C 9Ipo:p՜}a}Mznۢ=n 0aZF}=>4"6Ԩ,nfS8l8sh3W O@ՎQ%J4&6^?#{eMh3/6ѡ:a9+-}Ժ+UI>1 n69BAh*n+A02iz& aI!>FJ 9ae=lu5ڳF|dɒZvƳ1@f*-5y FN lg\.ksZ$Co&j|й̀je\iE:)̌6 315xJT%j8ek/!efN2~/̦Ew3Y V&z̛4d )5\f$}}¬,3&)~E]Qsr&xZ3yeWM0o'~t։V ],x^Ɲ`i$)52GU[}_C(돽¾ k_N`yءY4 `6HngÂ|Uw4`nEN9z1[>SqQx[*!7ݭ'%(-URv/kqڿ  iĹmÑϯʜ/&AfihhhR^,l3`DGF_$PF KD!KʇtS u?`ɭ!8L;uX)PM/IH]*)-~!Y`<ˋC^הx(2 K}""S{vFLBy&pOfqhȚd/9wʢV9vW؆Jw,4l/|RLTgkz]wCzu:}͇M1nBHpҔ٨K=8̓OkOsmz>y9weNaQ䕞}orD;qPZؐV9Q/ |q-&ߴ8mA̰P 1Yj~cf-S%F_[QeRΉ ṵ_BO΢Ђ Bu/4=5ٰt$+kٕe0gkˠ5$0P.rB +XdVOaو gLVVOaCk*]]{<һ &c#2}~ 綹>MMFa"00o$`qM| pWZ"9nl:a1Ь_{t}6,@p kVDsrS, D4>ⲙ?l-bqS.A=b͓cم>=Wć Ҷm 7 ZiDurq#FFaʧ`}Uxgb @b8k 8*S,uZ1iTef1i#QH#:m'gX̷.sBhwz ç0&mr@^4ijB8Ї_yj%v*- DzC&\Jix"hXoLvS謍?"NoJ'?F҅]$c. {`6uH՞uѷ\DH@hp/@g6]ʉ5؝DbFPSY׭Xe=ЕNaE=c4N k_>Î_ iUc g^]H_ɫsEQU/)v _86)lE<*QdUQfCoqg=׃H侭x Iy8yeTa2D*35>vx*.Jz#>xWt<4M>r[p7$WqﺘVJE2뎯z uerL8!hͽs\Hmބj_ szN;\/,$s`tG[E\1`+L1#̬<7!N.;H<֜8ZXFu^XRQ#q3Y$ ;X#p*4 M!N'>@>)Iofd ծ3nVL׵!5CF;'T_^ɰb1 '޽c`V2G^r; [hLIPp4 &A<?YH;[3]$INTeqvNflIHr8W~cT1,nv_|c1yUQ,K =2Y Fe$:|Aa.TRERmoJe7汎,{&RܖmWY@JxhE':PV2jpT3Moߢx$"Rap.]o|Qoe~UzUa[F<=xz0ݲyvL eeLpHY6`X]zbpUJe݃c+QҙJp+$*Y5ErMumc@K}!W<ߔK>Tyi,1hixѮH!oD;>k&VvSwPaiYE꿾?+9){ũ:JBP+=(o,)e'wНAqռWp=c~ "~9="KR':}ڷl$)vn$8{IYF('9{5x.ޜ]U;I"@*e"9;JZ켼"]i(,2TnEv-6)CsBQH8z4`Y&oK(DVo/()`*m|(P-J5Z$a=d0 c}wPMMUT(NvL.#|ZEQgB]jΈŔ4ϠU6P.h>4-.fSc8Ϫn&Fj` K|[ʟ Ɗ8#0xbn{бcs&>8bkVQ0En8cC&ArYuwZO\)"yVC:Lדn:w-#wc<#O 'QFv=I$81rWeM^m怜 K%ޞuqâ (ㆆPL Q9Pڹw(!ɬ;)X?J-j23UK4?ȓ]LEYt.ےÇTjTy\;pi:3?!a$7h%X;X"^vp_I`'i؍viZqr|m289v>ؠC#,vm:H\[eWEwOYyܱqB;],shVΑCuyk"?o&ĽtJSu!A RʃG7x~B -F$|sn!:`QͨSm*gB 'CoLd3;ˇzFU] &s~ C`[yLDux(JY$fʕ$8XyּƋдU jxzMf'iP?M"VOEBtD;c#G$zeDګWO|bNd1-sA !쀳ժy%AEzoB1B5Y3k9B*g@2ZŞt|C\Rtn9nn lʉ@iڻLG#dym:;NnI'N_ƪ`{.&ɼ Euź~&LM<O6u5/F=m_.ŁZ.d4sh{Q =0PRzT4x׏;X--u~m Z2 RM/.\@;f.~3)ѭ 33ev\]{IK@.C0脣ʴ͠4<P! P//&D|"! Jqt?֬3\ZG ^)[r“KC68YXH+RBt& Z8(/\lQ3¾x2FWjH_ޞc3BU)!R?|%0s 0F(2s!^<xm{ȹU[xh }#N ), 1ZUP}` \{zhyECӃtB*߭*mKi$TH!pM ʕWK);~%s?~ ђ_؏2%4]OM/ڀT "l8d~@dbkŨF:꾺TCeEw&2_ BSk=\p{4Qsc_ c:cLTh "^# >[Um~Aॴ_jAXre[j⽭VZPWGU>#vs&znOv(ąR ʳ b^{IUckejnY19V t+E);O`ڧ~\Wq͈@8ҩ]ۖB€+~++ƀsС$d 8TǮ zRH ڤċe&`#yvOrD8_ߒX?${1֑1ׁ0'5sd˛[WP迂VUr*`6Ԣ߆QLK/`df_q7?SbRǷK=UE 'L>vO n~t,Mc8uu{YmuXv44 q.Wi_aȴ ݌o4nm4@j6ݳ1 ϋŀUxO'Ykh{G+]Cا{S3癤'. SOigqV*f뤾ĮYŶJ\*yJ~Yb7"nxZ^QFIi[҇2=L.^ .ދ7[&Ӎl0S~ kĞBwYq,l=&7.osa+W z(q},""+GngӚK"ibf)4 y0\ӫ-w`T `B (j(PǾY[H[!nMrAI*IYڗma fq-d0R_m42o~J:Q;0C* =a4T`rՀbKN`r2M+Hpl!- kMFo*fę1Ӫ2;'m";=zSm>PO*Gf5Ѧ5`{s>#Ea2꟨hKQ1Pqb]NS ߯ M! kdҍq҆Cp~C>USFJ[gK9]gugU 7S,YfDէ[hqegM({_|2p7 rb%1_' ݌.^W!Mv;?r;5gRZ92DbX}zvvG;%18N~9j-3˗1P)EJCο9(#W}iak6 _ȱ%j;O96Ƃ\Zs^.&ü}޴"p.=1Zl<3 +|.u'\Ey 2KIfD϶5:# z`>|q\f^'3j$Qm/ ގ0ė21@V+ZZݦX .f9 /c%ͽtAYIin+ǔ]@)iL9'H6KDaAoΏz& W*7G7fcoW.fEf!aGL.e8uy.ZdnI/HE6kv!2y^-=\ p&,6AKl7-`"X(4 Bx TT}!\-7vjjF"*RBfo6<>omuXE{9}SA(UJ1 *lx/Yg)|юyiw2Slm"̀ cf}^m=dČ"Cf(Ѕ[4%Vu&==#C*:Nϩ2~wKLRUVZͦqXMB} =l?7o߮4}*Cx:wӠ$Ĥ[ LI^ק=+v$x,>ߧkom[P|O&Tѡ0s! y #y eEŇ֋wGRݧj,I.fgmͶcpYW&f"rAbT%t^ۂE.G9Nze0,Bz}[>ҫwl ,@a@`ږTN.>$@y2vFjpzyodS]~^2rBATL;ɆP BGӏ`F6Ɖ12sW͆<#\z_/e*O{?9o |-lqˑCveFUwuFjͭ9@2R4ٵ'I=^*}]/$թXҒ_;x(B;GK.*6 )!D[/W^oYBH3BxPJGvSQ-`Y~>qQj {i" JJӸ=l7rwܿ˚S ۾[8CFHGO.Tc⊏ձѬ$CzxTO7E@D I_n-Rx5bZry!Z6yPYs nKS|&p' F uYBH?dvIǮRx2X hD<ܒNʠ3L4̺Kw& r":M U>7r$&3xAuHO#A MS\4GÐYs#Z\7v4mwѤS-)OT1];줋Ʃ\9C_)HN*T*H_6SԭZhZFx3[@T3fy/AV߀훠7iR7#}PNG*j#ɘՏwvc;ByMfzC%(cnxHI~A&Lu90Qs !ׇɐdaO]ʑ.:(MLfg#7{G 6-_j$$"*mׅr;fxEFHl΁\2r_-r #fePE1 ZMvۆCcFQ,؝;Cj?~&ȑ,A^:$*Oٵ;K{hy7 XMu<Ԏ$nL<-x=dng!;::ysoڝ4p @ƽ{'7luE7=4#Xb:AdH! GT:e](1ޮ>b] IZ z'kZ}?˷#<v#HcY^qޛ%IWkV5jЧc謄G1!t85uQ#W ƒ(F r3iԒi;)MLYU'*@N+YA^`aXb53 tE_Qbϱ¯_\{>[052~oc:Ϋ'FeĄP4h_KjF>&1:g?*ja4[Qczh.G~Ɗ*p?DaȨ$ܠ3%_+Z@*xJي0uOdGEY+Ie>Zf~hKzZpi 7+|{mprHjI̫Y|TIJHb.{K~[2F ֜yM6hOJ$F3ߤC02 7ZqN\2 UE%m۲@92F_±*j(`%=SĤ)owk_ʿ@e)LU6# N]vWp c-6{jXWn*PQutRJFO-X5@ڀcJ ҼV5N@)^&7Q؜:E#2J32{?ԛmDZa?^UdMb✄{d qnXm#\YqlUeMT#;Z.nn$)>tTk引X$aƈ臅lҴ ~QcR:#6tk/ ѻ;NG0Fp& ɹ>6[,a3at@%%8 Z^x2O3F=T(c\?McDl/F[@S>"[B5M]"h줂A!#$`3[;,6Ѹ)wbwŤP [%(T!X?Bˆ~+%' l*O ߁?r: -nꖹeA ׄ!|dfOi{\8< $ikk "j qJ;/豭kkKt55|»b0VG,X@ObDR' [zQ/=[n"nZ0Q%Bo.ܵ%!(vѫt ؍2]*/X,Q\"c=='XyT)~ajRb]-YHJm3Wl_B,^3Ʀ`=޳Χg]LXރkfoĶX=I,ndzwK2%ןX _P69O~\ߖFX_+H˵jCmHcQ>pg0ĸi?8%Xθ%Hsd8'?H9%.4g8yd2W>_Ⱦw Mc qmݐ?,;;gw>ICY9OrbPݔmg-9m]vsgI\\]xgo諗A ̯ Eʁ[R^kycѽI BW7+eSE= Ӟ7@Wa{HCTz;VاGs- jPՄ\BrGq}Ӿ2z7jɮUDh#N'fqup C8|9ȃR'aY!DSm74(lk\ 0\BbbUǷkIN2f-if@l[e,]m-Vp*ǎɺ\>o|ti1$a8KC~ͧ6ncnyM iS6%ڊggBafU9Nl㧚K(*UJh1m cf27==icۢ!_̺( ;F,F9xZ ˭nP 4-,̵>(䦐 מ9'\ඣ4%BH=zzڿyR8/zqo:&5}>-Q)89*G_evk4pWSh>&xbnQp)q;\Aq,p!cɎbso9;8~EX2^ߵ<qe/ F|ǝUƈ^}iݰ%R!ՈN!hs% uڭB;QQ>ԗ؉!XQo?هh-15j0@|SYu8LɔG7] 4$yMuoex\hMPWDsFrJ KJ9.VšC,*2/U޾M48w.,4%yЧZ?ޭU+ujN Bdll7,}̈e Bf5F+ްP"]҂z +*XAO: | ֆݒ?ԜG(w K4]%CU$ ZCfu(Fɑ eFAzZ+Gf|:qUtFg@SўXD_ڊY<À!|RB+G[y44(SUfBbV/^4 V2-66ZzLzB"vރN%[ma!z[W]DǮRz}֓_<\{+g./S`8BUK;n#q/0A"w3j}B_&Z[vClB.5Po= GW2ǘ#̇ 2'Ȇ׎D~ȋE]x^cn7dʟ)a38W3mI,ϖ@ +2v)* TaNA $B+4.u`{~"QضM:n*%팝ٯ]uѡ%=%m؁ccsxEU˸;G@J.% mд@ (x\4dc=&5S2#JV]V?>(np'f<ڰx lm}.ouN{i#REI=e(XIʼnt,Y@RsX hQA7tXOCH48k͡8ZGe1+_HEyBX可ZfS0^/ow0ƇݢcSM.: mu-7/+SM*zU*((sxTSi`|mmyJ`&q,JRUXbamsllk}2g>qNaZ ~x|wu@ElL|xsvo4xҙ:QkHP94I͂b ޴:4Yr1,6>>NGMsʤ;Q;uwf" D:d2iD@p)dy5\WP~}שׁPaOS.OX36c}6OM L3=bS@_4_^M\x 1l=g <ԗKw<a ]Z'-r}"C?;O&%sQƜ 73F%L)+PNP_ҐD4D3"|CuBx{5bF-;S٥"8hpX0 j!ZqN4nkmdn#/].%7;D_uTbՓ!w5E['9Lm{"ZT'5T`a^YY!2ܤ߳,B#_d}BRn\ӄH]-3q O5`n]Ѿ)QN{ǮJk=VAHߚFv+^hd t=6BPm`ӻZ[0~օѐTg48T A<X_(C%)L#u'Eޛ7 QzK|:Ap)P~G\dzv3D_E{B mE:jGs[2[}m'Yp'@obgrLh8.YWcyC CN+)52Y{0O ;03yθڡ!:PEL3D_S t.H,>퐍m{$5} 䎕2X]![IY"Wr^ _ 9TÅ|-%$N=Odڃ\D\H㘖a!ĞC:ltC:J\Ae礦 Mȇ6Q6 4>*; 7\6@F+Ւ!n\Ta̋h#T[ |)ZDDPo'Mp*I g4zniS pjm:<vd:˾c&z #`//ҽ3=FT) [< s@YwT_)9Mزt#ϸ.-<̷%x=t bwZw2(O1ׁ$KuRIsͥ).J.n}$r]L3 aF&:oWC9w1h۽&!D+ʽj7~C .\#{Rq/gm2XYWMȻ+ZQ;NE!S!HFv_*ܚOgJX@mEx܍f 06g<4.2 ./egFNS$W3%*3˅a'ن[gZ.CH*=|?dC;d2!>aƒG0.t_ȽlBK&ep/fHAy&<}/Q/5J:mDy JY;\c%Ƙ}1!{voM 2!͟rŽ+*vRaD"\'baJ*EG(}<\Hf"zjuh n-"A Mv ʻWXm";c"{Y(I3t A{P `u{3膦8zv5uMeHX =K" P acxvbRZ9{eq e`ЌGA6f2~eɟ_Ij;ˈģ i62zuMoz9ۃG hxVB⟟Kk7qc#Z?7y.!XBկ)eR$fo>ztcXO):=I2WfmdZ}[δi?\hlR-o;vJ, =dLۃf&VfVya ٕ]r`! frP!OVêrGlFQSQd7efUWN8:"zQm"sT;ߜ@RB)Xpo at>VsќXE ;' 8/7ekX&bSIom~ v6DbgAI֑ndM)7M`n D*K߿ I((Azuǻ|(ơ;G>wá7CPbPTS?zE3Ž;QҪ[$qϊPg52!Yot(Y$O@Ԛbȝ3cdYYfAjʪeK'zNe!x^\*_<|xIh~,dOA,,ѕ-HeJ 6`X\l5e,)our|Hu9hwO+Y^I"*p&GAaʪ>qOJBZX닰 $ M=9M^v|¶]geqw \'\.ۙ"uڣJ|T_1Rzй7pfr 8^2/Oe$]?$B#OZy`\Y05m<-'*ͰߗiԊ6L~TQqRAh$EhzL'ec/ Q4E+Ȳ)j+tf$6bGơ'jIX;֋n AR;J,NHl:JX\ >1nw91GCFך+IY 3j; _CPӞʝw-@P&mq_61H-IU ( t9JfY6y~ye$5q:Nc*y9x8{g1?ܪ^x# ~-u#kثfަ{Mc89eU#i߻<[# h TAŃDVqֽALr0U)<ِ⠻9o/P (SM>DNtԊע Ҝn*C2ފ}3Ba ܑZf:'V'bSq{2XF붼3]Zw1#qH#^(ʌUMZ݆ JCzEٝ?p9whHò3PԶs'`;ʆl;$b+qC'QP"pSz-3Q4Jr#8)@#ԣ5af 4 5=y&,Aܲh$h?-l|َydN|-R&/אG j7 BuP>gh5VǶ裧rpV$TB`H'K3cͧ˙\F=9Y.cDA&=JC; {j8s>t\R)k=B8灿/%_+lJޯien a-lEؚBnєmԻ9ua>P!_g$tdГ'iB wdh#pF%=,4)\XKžx%!\ZS)XAӈ],h[к :K :-a^v8Vv VFP79@-Hef4: jGʛ}ZaZIOC xڍw ՠM]?ɤzbB7&Jw]ҋ&^JI9*a3(ҷ{(͈Ӯ ds]2k6!St# EL!Oꘌ)>!LxaMATwc"|L(e!yO/23ק2;0ꚓ$wŨD%ӯÜ^nFT.i'Mi#H^\hƂ5yO(T})~Qp:|VYU7D/]/m`YIhb1C=޻"JϒJf1y{F7_0u=oadf3qn< JQA YFoA6r'ϭP`͆n JeI'n ƽp~t13 ֐"܃ *~ ~ NT>KG/X.N}CQ`XZu7HRgu`՜Xka =x@!w\w'! Z-7k,[2/8HO]1 ,L 4!qӢb"ƚYm3^~zad2k0*u}$|CQXe9fU$l'ѧ )|$#k?Su:Y}*a]>6^nI}n1{NץӻsT!vF]Y#(Hf@Jb<-L@Tket%'oZ zHEʦcmXBJ2v).qSPkE!|pXY5+bK!,}ɥ\ ;]jwX (zOil/*۟WD"~þ_㇉-5*5 P:ߟ7 Բl8ב#6;8XdL6E[ Koe\K7qlp6ET*$  =>/xLp;g4V*ՅM"_PHW*BJM]XRC ]Zkk5̴0 ,>T ΐG [7aC}tY3۱1O[7?ƑPM)NULMg&P/t5Xw6=fjN(6 j_3JʃʰX6YY&ЃOg5QZךm$;E+I70w҂7٥^gP3?8xo18ƇfVOTJS#ҩu%yԮS`#O.Zq}U ++P(VU>R8^`؄$B9 y|rg"1Mxk?-0{6c? oW94}{%lJG E i Rh ݬ?6r@PM&O{/aIb* Glln7KtK9R5{yϻ^2-{pM@cW*̪SѾVNR"2 DlBG7/w:%zJ pKpw4Mbx /-]m~r BF>- S-π9]6#O}1{D;*4}rX-Osq?H($fCҴ~Ml:Td  YK)jSLF[jUCa;0%xdZyM4~ jޕӽM?}q~W_2v}Ry/'\jKwhtB|XSrՓ>ًs\gfN,)>o!͝b$UP#"GZ`_EV%q/írd$'\ cFI7?G70./#p H)ɩII>Th9uV aR1ЊРE04*P:EwCskL€?i'6>l%OEɢl}xUl4C$4dadҁ%%9h R$;܆SLcM zƌtJ*+ ОSZPo+W8~P: U.g9HL[_kE\.7Aǹn.E)9RfuONc}TC_P.JcuCݏ">;2SmN"ը>s5nV$M'dRO=Rw>ElAWZ닻T_X|*7LEX}֧iӌfxb)0vY`U|]Qf~"S=s#O)GoIL*bI2RT+Ira)#-y4'EqƩ% d,z![+HSSbM&ISQo!IF7my uy^/B#HbET oz&w7 dCZ#442wf~f!):Hkx$qGE:RJVT+TA`2Bկ02"y' +ע/h!+^m47"@>ğnK ˸ E(7*=έDP<|ɰᏮ$U;Rv!*hnil&{d~e>>CpHEj4.sSVs⫻P6E >wH)9spuFSGED k*O!J:UbOzé[ HIuOEICkսw\a )!.{$3Yg.|ȁ'Sha}Ɋz]b컭n+ftJ濋=e?eRٌ _g{*= pcTSJc}Uod)y5 >u7c4)EǾ*G(oYNA4~^}/V{MtY=B$(m:ī`d A^6b (-bFY49r_XX~ 2X6x3;[N[utWi_Q-[J½\9KtͶrO^[ae}A2q&g!wp%K*cHb0Nx?n0 .6eZ[ߜq &k_[k=r2KRF,tS?K_)4#GFy9øz@bfSQTy5BWOhlőCtt#d'(7. KއoŴG^ azԓau%QI0Q7F2"aȢ[w;gXv>vsMۭ^X̽\XQZ<4TBc½l(a8S|o N`Rra!{N'ڷjp l}_0ch=f/$33Se l$ M hSrE)`Hic25jZe 0J&;$c(Bk?BM1KJ i]gU U-eW ZkG N8NFTҏ{r&^!9֌YXn=##R?kp"QV#+ZWEq)a37'H"pSw =|V&%L#Kw$ T| uY6ۣ2SrOv` {<$~J`l]fX%"4_,8@8VRÈ=2>`}P# o~+ 7͖_xD?%8oB:ur3ł7?zC_^SbQdnՖ$Q,A:Ԏjvc#+e-űde_qRM$  㛺~w[j$nd8t>װai\pфay Gޑu-2Jy~"DC))JE %5[:LGqv7Z]Zqv H*hY'ɯjdT)ês>] Lgci<`=:HܟUWl"'GZi %^`:_L .uhA .6@]ty?_mTIHw(FlZ/IFRr QVhmU]Or?Nqh9]glP=-&VN4҅girǘjnK{9q"5ÄLj_V Q‚MBPg8!6t|h}Czi`qJx{hb;C9Wn?&2n1ケRXxijEқ싳%o7LڿS ?lg3״tVCc3>lo?'P'jgctp1?Klh*d?A>˦ޕ1FZ p?(D4wuO&?IAjc%Pf{721e[ٸ9ɏkP5}/!^xV mkhBgCf8 aS۞ nЭVȊҰxrY!ꧾIS蘪 M?.?zUđ;fAf/I,QsTA>AmR#YIR>G|̧( y0N)P%geeY諺Jed&V8jE@e뙽N=QQJs0d2O4O8.MV:3kOE@{f9ҫ< ^^d'ǵ Y̯|#kcSʁǻ>'czGDŽDk͎ _&?@gM}m㴈6E"= 0ph~;' tLuS,d`Led%D/M^JC'f:I 5 wP%舗ৈW447U 4u4tzB= cuH)2].I%+WΒrcﮜ"jU0 _ƉO@=Ƕ-6 yQi]&]:$>U32S&k trO6e.JT w` 3Ѡ&勹@}"1Jih= Q^9?c?Ӎo5vPtgX^1gR]bmQU4_yv~?SՓ"NDFdKF7/X^fڱ ]@1L22Ѭ`ut'&:m~̸ ܐtOL F$}ІjQhΒî 6NE'J ʵt 9U@~4Mi_N<MAd-" S Kև5B醴qXdh17] ibPRlO\ՍOH1>,x LÔPd=']k E9,!AWWJj>nb7GhJG4˳Ivb`[7]jա{xfuuk/g9- z϶NEz*|m&]4($+l{K6@]zB"G5}Rf8=3UcAWJTCIBzERH4i5+(E N:x{S7tjww6ǦoByT~RᱹΠ(ފ3|R RLXy>{N2ZҦhaCN*_i1dȑ!W~rIr/={VA(J"Dӡvk{'_{Pə8`+av50spFi*fgIJ;/}Y%=hdVel|⃨h:2롷G2en_J襕-]ǚ)v*N? , GÏ WwUhI5l20Ȋ )6fTȲei Uiئϡx޸pł*GAin;m:d-"> L)kЋӍ9GTu}.VKJY =öC<5{d!n''UM̓[zP-:e93'_ dхDalPы>PU/Zl;>8_w ^_U i]CT3@ ǕJ:UC_cypc瀺h>P[ ĘP&KGE&t=?vbG7A,FS9KvB K0,:V( o \k9M^:ٿ䙩#'9W[xGSEwJRݞ *g89oLۛ(8{,{"Q05qyAjOC()#GW c <2,`ȾqqC_~x,Mo,_MSXlF ceʚ9]~K =1ia-|+'>0(~O?E2+ 3:m#vj\wТ)Uߖ/JrTռ#a;rc*~}ʀ_} VK;*d*)cOHKR#0eO˔VƘm~PXd}Wᱪ\og)2IMx SPiONƪܱseYҷsNbExpc~Cl5 @O=#*!8 v(\dr=xs]f⾾8~XWSTӾڷ0C[<p{1K^4Z2v~nzŚE=; }(t"qiW_b8ÏLuNF xSt/ TqLN e}!X>V~ĿOGH⎗RܴQR?W:z}wyE("Hd*oD, ¡{ يQqcȶ+6i!R{UL|@F$F70'}Vqx g%~wf_E\^/7qLS'J(1_7x{ ͌zv8dģmR[4{{hW]0܉-qN%΁sXXC "%n̠1dw|lU{I } $a s[9!1P6`\8,^H,ë#C1Nqr}Q#˱8D8L8($ Ɓ0%lP؆J,P4W^jʉ .ʜǦbR +=y5\ [ҕ}m "6!j2rߡZr,Gw޹OCSEGig>Mjb1ZJ }mj J^bC? r7a[rCTZ I#q~[{_B;.jp2h-CJ&|k,_d )Ȭo_&oq ҟƲg(ljŕ.hi0wZ'  s1«6kE&@(u0ߊhngܪimhpKSlQ7-[v=#] 4KZn%pסTT-OQpy Hl׆cYuWY (] `~([z.ɻ䑵QIWjʿ#'HE3U>GS漦Ne项 k},iZd+3Pww`s.h3(rlGL03͹eFK`ݦ6fa&Q;= Ȥd?'4s"p\6Rb]NyθH;5ݎ˒h Cfҷ ^$t;B;޲Yxp'75w %-s7㼌Ҁ hePg5s`ZWt6^D|ӓ(x7ԙzG(37+{l8-;VY= -}t1iI~uq[W3%7็nv@2y~r{UBKA/eQJIMC|1h|}7jaߐ?HA=0Gt+J/ӛ!Q`OZ+<ŷt xK=DLԝvD"Y Tls_A{խ\.qõǔJh( Z17͎!L̏Z\ou(44򊶭ߋAZrG׾R 8'.3k0t Khw6&Ns)mᕗ/*'!Ƙ䢡I, /_N+!P\dFb. <|[S0  _ѫb%J+[j@ZTʆ|P-' E0n}~JC0f }FURgosC8o~gnGлGo$ @nUվ(ܠw9Tj,qin3U[pΥ~ ۾] fez;/9U_q?B?CSWL#h+5sn;Ж i}y{@Ü;vMH:mEnM׹ H7JY"Fz 3V_aimQr╡93%%O21$%R]$&HrʶG@beAӇ3O%>Rfwt/eҕIiIj2nJ]j!́gl7q=|@mL êՙQ: =Xx IUM\5;um`|( Dg,D@-9h}!v7mruA;(;j}X^L$:~t! 7Ufd`Ѧ4BYlIrAr^Rq@22')!M$+ٞM6 (#nŲNp(-~}asTBp{e:UP{F$m.D IG& fWVص{jL'R&•w[pDjY__K9:S$iFss}i 7uAqM mQ$|tns?O~,UwC;91D'"gY)'Ft_N*;c9zQ icY7~39^y娟̬7b2\U66oDTS3۔f66u i͖k<"%!)mF&e׆[E"r &qھBF#\΍|7Ꮍ 汐9>⦚Vgz3lTɊyd={Z=Ҷ_ []Bošhp}oZDnY^406lT"{pӴ0@_@ pFDV UV 0`Y"Р;h##ӫStCY@sNW@bY7 @o( `8cJK%OV lj:q85ڀTRL/|K +/\&!k-&+J(رf5 ;8L2>JGS' w."T\+!su7/"Y]p[RZ,br:6 KҿMXk[z9h!/z}U>Ʒ:Ff:>;`N{ 3IJguV:wخᅩqeNpPjV@&GVFk-TkJo3?+ O/Y١l ԃ%0H'&F{3`J .X46#ڎQ|Z?gOMV"a6.a1-=Ntgt5uŁ꧿B\l7{ \04 :8;?洠'{+haScX!  &ys7Ty(4sցz]Nxsq!>:+L=oVFE҅tC5i 7\&?ɺOXO}%_7x*%+bE6Zso~s1hњO - OWfL"ՙJq1v&kTϽmr$"L2<UBG ᢴ ~ -phl+[ s mҸ]۝ cnQ? lB"X.a}A1X=;yFj&>'<, jVǡl_|Q.<$94pI@BJe֧bDMRF9 TEzN* 31DEg$d$VX'pqr uϳG ._ܩ~eeI-P6nd&CfN#V: #h1H"vcj)In^t~-ag PL7 $%KK%&^^DMոr/?Y M xjf wY[5iF@#vJѾ,_w[˻2 .տs"%U?`";]5=g[Nq? 'XyD˱HZj( s*^.# UY6@v9ZJ~}&kD)gJمEdw)&PARLAx t`ȪMF&Wiֿ7+[x?S6( VBv C0i]@0%c~VOL\d~Z+G<ɬ! `@5\>F?_DɤOxJ$CYzi@~/&Tۼ]0K|Q4 -l8N04WƨRiTąSV~ʥoGH#oD)KKigwC0[hea?p<1[l\̞1k. bE A* z. 855^8IpؙE$Y/&#$joj]nvc[fh,iBKdW2;YUp_J{z=G^ @Jȝ3p<}%DɧcܚPXC;Md€6q$ۛ?8A{o=}oX@ <0K(eLnX\ò8AQU pJWͤ$"rːn?W4^GtxaNE>C@ 6:2_od&PO@:WU_#)cH\iC>1-pj-@m[l`3&h3~b5bQAJtmK򖏛1Da[ y?knI_x4~;]dڴ=ѧl?,~A!%鼜7sj%93͋eÚ EZ:'Y8nv3Cs:yedr5|JfH"%YHN;E6GXYx*<9SƆP…7N W ؇rb,7(ÄT^ &UH@0YV\0_2At ;?BqSjZ>9rlq; ~d[Ě+,8"/??k QِC܎MFvJsz?iW&\I!8i " l!/鸶٤~݊*FHvгGkʡ̗֕[u ~zAҪЍCgw׿U^qz^1jDQTJiVr4RNtNmv_.]wI~d@. h%RcjJSl?]9˰f/xwoW9$FL\ l9^P LgPh!Mw 6lHZyrm`o"Eʾ3iX3{L)ilPLR_'yZ]ަL59IFBR4-nPQx, awkބ99+۩1P!<7vē_aƳzJK2M@ ,L|L p"II.nZsN} \ ՘gc0{80һٵ,_iQ̑/@%%"k =*dH/ AF  c*.<*sZ-B+:? V? 7mo1ĥ Go#>U0=~oCQD0! Ԩi4gmఝH4¿jt۾fȚ:@*͜\ x@?Q)sv1mde/H PG@[D&__c׳Aaۆ.60#}cPq>7vSz{L3Jړ3FUMj] Kz* 6w ;PxYOt< n\ߡd;tFlu+0&#PcYߜ60?6"d%}*#e~< Pա7Gpjfҗ=y̠teqspr?SGg%đ*6 Wsڜ+Eܷ}Zw%~Jww3u} !hN{D0'g[SX , m:Q'j܊n;L3oD杮 o{;]'US=Z؆30BVxYJ'8m5ZCp͖$VU 9Wei\.5ݥ'Xﰾ9#?AY>09.bb8gb4۟ڂ]Л2AALؓ,di'wU I!(1YoviO~E|ڏs 0iv/FaM߲Z7X5Mt* 1I)b6R (o2s@j3~'+LP\bWоP].`,x4oSU%S.iQ󊝞b=;Y-YԚ=yc n41:]v*NI^Ci*6{ i9}[㺗MbT9^U=_OqdBu\I0"SiV`c@kuMhԚŒB5O8gߪW ĵ/^R|@JŦ=U. 7EBv8ZF|!nY8kepUBfahjly0geTmr/j4,Xaa"w_^|˓f e*N{pEG0x5IlϨftd6"WŊ$u"joNOiZ'FYEily&}I6$Q-֩za; NWrU鐆b4IQTg=:#9m g@ \7F?|:ф҉Bwv&]S$Nrč^q[qfGH9U)=>/d )g0 k =ڕp@I_vj.)8O ~`hs4c #BHi\ѓ,z~ӼXOxLV}QEdȢ1-{Lx03Y^sq[!nOxTcC9R$ZOHEPûNgYxebt5zƁIv (o!cWZX;)/Q{0n2YޑA0DaB{DާwTx8>J]+`eqheUN3#K$[Hth좐Qvl,Y?jz&1MR;[@m%W*e6i5)ŠqnQ=]]Xb7O!f4rerT hZ)ZKDޑ9t ږd.S2"z'V^D70CzeY( ?]d[J,@p ^~(DzHdހ'J9ql\HvmN?Tѿ&@pBfn\ L9(VBVEĬ53k&)ջغvyvX2x˶ye$,em&?U^:(MaWSf6Ms58E~w$Rqѩ!]e1p>׋DU¹ΰ+S֥˥|^%TV>> ap{zT#B L4O@ʏ.FyRI9&SQQM|=B-M:& CߊF*8ݘ`>y"] 4UGzOvjA  OEJ*WTGcY7\TbOS3`؋ʜX? ?KJ?beS){V͠D*bCt6\NdfXpRFD$ݦ*df]a}<7q+1-ށƽyükو=3U /T.~* U; YP _+Q4ɫ!S OD)\6lR*Ipggᄼy/1Y*j(̹6iTV:a ^1ymy1)e)"ߩ'{i]!-g%sI^wvdJx6/}o<¡rYR0Dh3,{|zlDXνkff͚H |Z6|>8NakBƇTr˹Wi,zEP̏} S†:(׌ٻ͸~U T]`LŲͿq@1R7Ϊ(PγĻ_$0WziED2=tC1͟M/CX:,.1[Tɕ X-!_znSkZygxA wE>yHrgp*uQRrZ7J{THS 79yDTtF쮋W?dԠM_ fSK[QuVP!g` 2,1*l6®{Qv:/=XxJD_0ƩEyA={QQj9,=ܲ\ tHޞٔ,5B{w 7;D5dD0ƚ we #Qz>gwH+&5w-ޔ5O{ΐb:@p^,QCH†"m?kQJKLv1:|ē:Wx#cY$&NZKnCK5n>ICqZvPJTyC7Fz° i<{:om;Cy[3e'o( %% yJP/4hW to5kpDjҟcBBΞ p9XsKQ[[dKYoz?́v\ G,v}Ӗ>ZX GJmƚ*H} 1ά6@3'W /(U~3bSJ^~* 9+D:IaJ(QY!|z3tcֽA2 ӮUJNJR3#kh l6VS. ;0Pr mׇ뭊*5(䂥K װT;mUH(0]4Z"})_#Y (o<JZgBbK8T/W@,DjrK\֖W'xNQ>kk޼s S6褸9!l'z O ؤQ>(?P&7~%ueƺw x }^@œGdc&:twn`DoNHʃ?(!XW vU|`|v%6ny"oتH,q`-׭"p~5BAh}.WdN)꽗hG"eLl~ßqnizGܝ}pщz@,rI9R~ښ,t)L椪ruV/uɻŒXd8Ot4ZklFiHE@C<bU}tBDd  wqdWX0M&OP⥨M Iy1Aer*ϕA% galQUzL'#E-g UWTm)w`QnbFR71gUfpvf%elB@pKR3x=![E|䐓;cx󁈗(Hj'/ 6h:T0|۔1t>OA=S=<``oF!w\ee<Q0gs`*_$PAg䈺+ $SooGHvm|P JU_5,MaJ0@2.>/,%+6O"['xth ;xev^3dpL\Px9/4ē&G,{F#EjP2&Dޭ>E$0l*zSk-7"pa z7TS aO:kF9.ǣF&^&P' t20&dRV1q1'OVbT7?UTӠ&_Ou$nb(#kҺ鷧q6zܫ64I_;#tSØ*̺V#u ;<hs#FԚ&x E*܁w&'qkЎu֌>]=4`͹޷"~, 1awK(a& S;z}p!u56eD1ߥL$('ISFv1v{֡f<’1}uaE\iӺ`W4`JaB"C+Ri5o$'WBA/ۛeSkB]/ .qZP:&k!o\AFpPpx݄qI}4vpF(>ՈԊ c1c(OoP|aqxϖv2F~rvQ?h@q..LxdDwہ ݥ4 t?hCȪG`kPW.,Cف4d'9-( E?Uܛ?D#l#<8kG{bd!i5 >ٌLz6W8~+K5z$v${ﭳ\|!!E$AzbB2|&7SWOrq Gv¤uz&Cݼb6`~& yQ^r[˰՟˭8LOo>lh^#hkՅEۘ_E5v AO}>`@AZ}\wjwnjEb>Use3PqC*t.Z8%H ANLfy3҇|*t<Ұp~;N<_7 9Ug&VAiDg؀Y!<רc/Qe7Lk!,Dvw:*i/ p-nK3'ʜK:x.E'%7BtJoZb{C +keQ: XYbQS{J ȏB,\@ag>n;RJ7qH4U)3w&!bT+Sd05=a7fAyyGws{^]{Ɓ\:ܵɊQ"NRU p 26D3/)9:*쮿mJTXbZ┳%TE:dl(CeADDZKpVaZ uJR`e$k_lLcP- 1ͧ͆Q_Úr}#N,9Cu>f흳nA W}& >F^Pp{AJgS#+ez _NG-u#43=NІP4Xx@z eѠ:.Pc.INy\DxR;㴕(͎HtehZuq٤e#.(L>cTTtE7? '[amٽ%diYy.=C p蛣ӰOy(rp5(.Ja(jM8U3_zWFVN*+9zߘ 0pBm lG=*=[bp"kχ0+I!>h^A~# 񎍬7$kZqb]\?V.*0Qd_a m0Ә2n5b[i3 h$j[ӲK+AV4YPPGa&-KseSGQ˱#)!bB^/ueKӘ!_{M;ʍIsc"1=F$iHYm~oμ9ZɁJ)+?p$'K?o}qyc>*NI[R0݉ƀd lvt>Y螗#L\4܊wTE>y&a#'hpu r['@|#05/ Gl]5]lWX~5zJM!~ﺠn\x޵xIЮ(v^) :O+-{AP[ID&6UDZPVFQ `]&m qq"5u,קIBxv߻K*2UMCmw ꄑWCxjj^i 4,<ۀhlrt3t47Qmls'{f݌"V7Ѡުn00"n nAAxߏ_=&+ ๩gqSo`D(ZZu6k:QxDEguM~a-vĿ'x1/&iO$#x*x BM0_y$Zv{> |L,UGsd=G;~J9@6•,Ք~B0#1%#FˊguMΥ|>(VZlkeEQ#4heƵl呸zؠk7Pa$lf'PP#m슩֙R7nA)xi> CUޫeE|:"9.ܖx$.0eChdIG7tn_hA^z9~58*BN<3ƟVR?N 46%Muޱwk331GI_Fj)7Yp/•O{@=>sf_i%J ֫aLO d(h{rOƃ_6_}9G8h*U G cXt&J'CZ!\Whj%](dk]ZSp/Be3bl~_c ! #Z7Fg&WQMzcJ՗/%-f#jbz H<![mJ FҕN`9k‚uP~e2ěk|$\H2h0+r$\+/->XY-%0FDyGS)rl9$`)feK(#;6.SNt]eݩp(C/|7|F%` p"Sda99K V5oiK[:k1%|00/恴G 9%{Y:t蜁|CFKϖ:UJE9|f PcM;h@8Qlsdmʦ Rq*k=7_^Mw2@O@)ntT[ : 8kr!FPU!αb7KTL.֭6-hhrkg;H=M+[o BWZ&iif o dpTl_vhSjaDL῅&/~ څcl4YfygyItgū$]Kz sΨkqx~Mnn&)D93kif1MB`X^#,Ws'6DKe- w/r1 >>WVQ7! GI\BVND_zxNW?WO<:@K#ؓcLc ^?/ U!"V'U$pτS'hb,6*#2 @9V"AXLj|dW\e0_i&P؉=B+z&=Ƹ;#秔Yd9r.2;UP1m,sI գ,[٫g#椥2 +(•?_|'TO]a.̵l{j#lAbWL\EԖxGbA >?Qw@MHWx˹ڮK֭(u଄h)[g}u@wjvP:/oh8^;p7"Xel* $Bݗ鑝]~m:l]J%c 51ZfSe'\gݛk9L2C6iBt`۰]6sBg!Z\l^vDrd>}GuxՒyOzp˧bQY_Is^C8^0mx=\+|)7r ;O:&e ﲶO85q&B:WprȮp>Ha.Y]_x([z)}TP$~.)B`p#28 DU?G!ǝ={V[%tjn;] Uhf j썾k<ᄚs%7yp3ң^m$ v,pt^odCBaj Y%,6\`YwA|Z 1OʙF,c_YC"\a<7Tb35]mH1C 6K4T).!kXNȜy6*S_~e%-aԺ;d<6r>bs=lP*0ʴ>jtȜ` `&1+ QI.ig1;+lL@s?`0hl4b%{P5yegz8$`N>nxCSx5Ãk -ve} A͏@|{mlV.Lyh4h'/atr0'W<=uH:@WҔ cLnbart hKV> jLWc7Xb]c:VTP|uM :˺*_+&v۴K0<"JP *T'L]VgwEɏ +ߑ*&+?>6Mr1wo\fy;12H?Lu.}da9YsZmvyWX:2َ$hfw_\MLAYK0/OgW9M$ D¡~ JJg tNI[T,Z!Z\cq-h? yNiT .|YvQ68H۴h{?@dmd |Q(!~#;v VO.vJ/ `z zXc{YLfA,Bswqv<,90 Gg9r]3m>YBW=Tcj?W^5(l-n˩10Hv`@dKhqqoV'n'\i-, ёM Lf@~N@uHPfO2'_*K$FU᭡"{mie&=L^# v0JxtUk[-0WHh5O+bF' Q,Sl(2Ck<0۾ml4px/ ,ϙ.xIFe_Uj`gµ;^{-qR*mMPua@A3@fƅ]kyDH{ӵ'*sO!qw{+e/%>_uN[[XVouu[0F" 饸諱QԢ`VR0RqR uqT&eQCVqYq2 )2Q]rٸ"@s-)8uN r鋢Hy ۭAGexx!d6_UAA\I!!p$D؄X1s>q}D06ٞr *9KgBKFێ ve=_d ><,o} &~ܷ^*ˉ7꒫=_awCW; .'z (5zLhKLM8LxWM&mbMKHZ3& mpF儧Mg$îtns@L&IK;{GOFk]\Mt.cNrH.oi Z[?x SPFb LwšT9 mCtɝ:ޢBãIȏO.*-CWE׿q}L~ v\KG?>vA B6:eY /qƒS>L oq|f*q)!2ݷ@їOkN[tzHixb \o;ST8#ZTKˊ>](VRqVfbE*PP!'; Ϡ`>؄y1OvnƧQO Otxc9 W|g zuoRY0>2nX$CGe植2Pz+Tj 2R98 =WgD0rk$ʎT)ձ9[K-SNJ.^j.N#<B\48#P ޔLdk"|3 zvµ&5O7L?B[77^ WA#}# L=$YPjxDS_ڂגvRtQ0&6$Pg _ b_{}9ќhك;zgMdD OywnfvIEFu? D xMksnB!8S/Sv+s]޾ Ip4mqMH*AayRږHu#{]Ư޵Rsz8Fqup`lG<Ի! w#䲜;0PW0aG:?'K+ |p sAUգVj@^I9 k%2OL?G$e4 foʷz\OT X+;Ͷ3!BsM Sߧ Dt? lAyt:kP#6MG9pG㕄~pcx:$6k";fϔ3ǶZ8MJ ;طGbLr~_1lίVTLdF-o\vd⁺e2>:_zsh۩jNU1D :8 8).1h滪 @7lkQ7\j+Я*/ՏC˙EQUB]bi5;9,B(r.lXݰ Jۧ1u{2 hy]J8:1lz7u9{?{ bU* 21Yf97Oʑy1QpaUJx5%3rUD^<|ףJhmq2cEY9A.Xfo!+sW- F>ZYY׎V"!*#y3`0!~L#alv;ItPFW9Ai/F`)s=2ɄoAc0;DOaUڈ%U UvQ7(y$ cyxEѾN5]|oKN$tS?k٭DifNb")~D 5 z'ԓF7O]F{)n^ MyC >PK> !X*!Vȵ hHs_@\`&EDHыxPci՚3&'H ԒN|hج nʈb%kwn AKRZF,2ҳiB [rZ3@?#k*^ۇ]w8OwG;X{ 1cj])Z êj:Z<_M(\,BXJoFNJ&q*r>9I#>O#$R#.d+ ' uYdc'EXR֚֔L!hپur&6l" Ge N @W`33+su%B@ncD_`?:ֿ1/4 xݹNj p Jy~zH3t&~!iM& B*>{ɬ(;(/IeaۋdNoVtLwOƥ"8p #9w}ry% pv oC"z yu@&*F  M\6GNvk'َ04|sEaӄpۑ0.<`q+nlG۲| G+J) PFX,&(ŔxARwWk7>f9h7IcJiYVœ2xAZdTԘCL'DoÆ Tm'`Y `uAihY" v?2[.ŪmBҖf(=O+7z}(Yw 8E8uE Q̓> X9Zlqa a\Xu$8̈szo-!+غ WsFt,0c.7u~|zM78m8#cpm`=#T焫]H 3'/܉l75Za0|N   v</Uִ':L̹ )i+$"یUiOB"(KY<{#W? IKIi굊*:AGF: fr>-B#6[K6YfR#"_mYVi1.i1.unfJ{x.8ƀQ!BSg|ehߗG3wTRr^I^k%6"ul}*+jh2"nz}V+DwʝrP71ᔝObPߣ u!=ὔf4@yQMD~:#W+_1By{qݤ(^|2*> ܝ}(c 18e^.9ؾYv@=TCBHH|fhe<.uV(k?rښ ?Aif'`r曎Zhnk:Ymu-s |2t}NBNBs/{S[i#F3C5?GzL#6o9zsp<*lgBQ8(9Q?f\OE& ڲb:FE4O/-ڧK#mJiۃ)h#'ΥW%Da-$'!8׹B6Hv익ol(}H8D 0~o˰=xݵ/gv:OZygT'Kz*ƭXnݍJS VS!$T(/mr Τ|&uΊ6E07~xiԚ FƬ:@ŮkoW B`Mȑ1tٞBJL\s?4iy 0^&c*=!40RVg3 p^_,WL[],TjSՊQ#tI.szfװ4Ο)$c+nv{=tZ\C7(ܤh9 'y>XY n)q(.P'z2)8K-F~0n/"y:L.78f}ų ݃4[IǺp_oswx&Ujdwޏ.wn/pJ5hLB$MQ%I|J}iOMS)gF7`2բճ4'TL6Ƶo 9.~w~VAdfH\YwY08A ^M:1$Q zqvr7]^+iBC1'FGW`v>m]y=tD?s͗ɷࢊ/U)HIgDux`O͋Ts䵸w cU-4u?l)[b2VO<+ˊ{} ҇j2ئt <($LjbC{>iQD[Hm}pKVX%m{yf ډӅuQ}) ).h J#)Q&Ћ-ɯI`H#%~Ē4cDB-1,#零){"az*/z A'lscp~7zEDxk+ΈOx2[w %#ӹJN"I:`?R8n2$Ko 3&!Cյ9qe๹S1CWa9u;̘P $˴2ƐF̖0hH'W>`]4HGרER㾤}}jhg&.bÁ䔥)Y))ִs*hSwV`Y1!Q&w*>}`$MN)K"#˞{~ =:;gLp 2WHd)J{ B&Gtb̐>u3h\Z4`+koN~Z $,r`"cAVة (E9U0:U:ҋv/%I@0`tJ#p[̎yPm-[8hAVo)$%1:i8WˇC`htC;9_]CFD uvxe@d#5&L2oEa.28ҧy\; i&ͼ>@K=7swnŖ֍$njYaK28B뇃NLiSg@}ݓ23G~QPE&s&n/óOs9u.'4\n#5 B`[DAc<7(h_7NqrNe*(#zziGa no_Gr;1(LD%Ydh6e_#Ҟ^ i_D}k$-d.K>^ګs%A1ZSgJ 'Z|{ _&h ny+u@^WDYA*;cXUG}ٙV=&ٍ͙dtV. ML YIT]MZH3MVxYO#;@ꋣ5O?RO"} sWWi{ Rӵ*lH6ty6aLVNQF?wI^>f ["\8!,^gvWcwt,Z[ ƎRZB줔]#$b1+A>[)'h6L)I%-.be̯K7qET>XG9^c#Rv˩԰K 2Ej2(t%(cZ׊K2xD ˃J[ht6_VDd!7}P]+Ft-Aż ۷bA 7@q??ּ""jFz?a/a ^G\77(AAd *F^f[H/1c~lSh;T,X(6uj͈|/fwM7*Yu M"cơmL\kێ3L|6T%l=X~d$T$Sb3 ,J5@]Ykݽo>^ oӷVG 7)F bIEoY3OJ-&c@⅒ 07X)l x#`UߙH[ }'"7ؽ,ʋ*x8^ o]ii_{spϿ,|!YtX+h B@t3,v32؄yw*}/6tSLg4 ;{&Tes*f׷+W?3"_p"fE140x*a2]8OEF'_;fiX]LĆDS5!Y D{g$"(taZuDĹb'Ǝ l23p@95&30 6U?L]ȗ< f;w'n3|,1Va;ӊCjOH<{oey"QR\L%Þ܆謱<%SJ$'/[*4­{RFcvEoR;@LCtIE.dCRsto+k5dv\3jm|YQuy-e~iOo!yhLn 5POE(#ۊh枻S\qxպ6h@ 5(Qjdèl=&{9J;FvCֺ/œvrLc;rc?U @B/װ odZRs5,+NlmsT@|. kQ,MAa- Kܔ4a=2©ѩaBWeXMGsF \q虯 X:UAlCtOOPtYaxMTF7M x.|3j9牵ήWN Ze]w2b4dgaD"% ?k (Dx8<\rot%5 ņM*'A8?K/lJWQgc=q:S~IA+>#Oݏ,|rhVwPN)u`ܱv$|GU@nBSr2Hӏ@hV FkYz->y 7֦U@J*VYg1Ȝ,=\ tD0BɁptA^+ mCvmL5":=mwoV < ǵ\,X ӊ߭ Ԋ+  MTIodAMN;m/.O#-ƂKP]G y3zzȝtuT[hkmpwD#T9-`誈8)o}Rx[?<"UA%M\lT-2%3-<|iJJPl"|W@F{8 "3N8\֥O|˦XiQQg}LcWn02W[ImH*4 =tEM*vP+$R3"`,Ci5OB`Ά0ݬNI>ΛCzE7>oV/ ieliom@ fp `=*5M &fx3HR[gSmFѦ<}I3A~dL%L({ CV!!݇I3p[>vy8b‹96VGw8o&*WiqsoE̴)5yf|E?}x0?}pƓEEeTE*hzI3L0"5qM|SC}Q|w|]6_ ~G Qu5 |=~?e5$eK};?M SiG{W3>:0z6CIeЩ5hg.s#%n5|$D-ĕKwQz5*(P}Q^>V+O 8krTS+-jldM$̄F8n:QNb :ɽr)8Շ!:/]tIsZ_Q5sm' yzd."c[}~AņWlrxV;E{h;8}|xh1䜩Dr- ;wjr͞fnLCI$mdHٿ/kp}Z}7oVC׹bnLDu|SR:1Qqxcy2:I:ZR Ah/tm,p-3\HT?i6ĊO16F蓊¥S0aM/cYb1S5E8mKS'nB:m~;(ӌطru5V_#>Ś T|X1mlJL :& 7t; o)z2"sd\ wzymD&yz ڬl҂x({":MȢE^7B]$ |\â͔ Ȟ!}CJ)sI^p# 353 3 dAbZi^3&K~YTPmKXIOIѭ9j7M9n@)7pܙ-x&-/Ė~tm d/>(}Ky֌fn٦Ŝ/>+%rP K04EC~:ĚYW,LsTAB,a"HaG"R=ܟ/T)baGsIb`Zl˧y* a TdQ˝^l9܌HywvA"JH^kDmPd=V='2vjh [t@~XjxB.Dg)9զ[wwW]9*ș(ڐm`UG[4E;yԍ֭n t9c5cP2 ^ ^n˓kpuHzzU5^w]sI YWm4 +*b im20fk'ƛpƠӱ@(X%m }`E]]w|*E}"!{v;QG1 I;`o DAt‚,T^vlB+7(> +Ne4h!|8Y+mdxkBsNJ[֦ p7?7ͭy'lkxCB.m zQݭ>*ݣ7 nh_?$tCP!QGanڒQ- ꖸz:9֟wF^" ?m"̎f3|Wp o\+phvg L@9!SjC9ysʲA/|L mfCmmNEٖP `h(!JT=Cys΂9?ރz>,5yIW fRu*LA<BlQ -pDFfI63Q* I75̺("Nq:K 0v^-z2,G>edO"̔jd]?Gաk̂!pZ5 {)_5,J-iw@Ußf&cՠrj\_~R-0a, ~}j=J2L5눎J\8(6մBմyP=_ఱq\Gj>j:*ާWOqyuBRt|2`25B9YEjd6 ϻ_ax\0C=+},,ULv~eHٞ6:8nC9kʖ^3&OhNatB*`-לoelCe^~Ύbdqʃf w`jJG"]ks"3v"P4Y3΂;geJ n ~EU~iyAF(tVeuuw=*٬ga˞-kR'(ľ$)קicܱHS@{lNUKd"*짢LkOM֦@y^y($̓n I O߲V6Z+*dz.}x>w7 ðꀺEz=}'"o[[ N;ԣp ͽZSѴ~W:;W`^b  Ӭ\P:]^̬hz#9"tTyN.2y =HXy6f]9aW葤k/)?D|FnV=z76nR~I[Q GC< bYGv6mͨyENp~!hȚsV?!vޖ4:ΐ$+Ky _d;=9PUŖ73iZLoRh*muP|,d]>d(A3]8ot6REmJ֚ 3fCwW*Za]iPV`!xJԟ}1Bhka<"c#y%5\yxx'GFفV&ƨ>.쩆f" 5\U'>O~E6nTv+5ga`I|ƀģp<3_XQrU[*.I">kXÇJz?UH]YS0"W2SaUFt&85op4R. A_]fDz;`/cZ@u,Fb\b>̪ P!9 1]uCd" 0/#;cj`ٽksxJI -2P5S 7gN)Mo #CZ)5()$$7UʲN|ŞK>6샦22oʪI]" rb^urG g*>6!6&dEߗY˜dpR|ø7!oEE@.Z5B -(X=~p׾i*O32뫔2NcRpW&!17q=#r @,Kk^Wr xum90x*CZ&N6\cX8w\U/-9oFR6{`:'?}-d]rM$n#2r@’J5E*MOi6.Cl wi׮FOE>?v\1?c^lWzRDx6ѴjL6wK\ m^[c)nD])yl!uSlȸhlv?x bԖcC5E{qɘmOҶ[; eos7sE7JXSiITeF,|.IE= f ڥN=~vRh2ୢ2*` Xymrh`ؠ,chU]=QrJi&Ӆ"@~zwH;mKRÑAT7od;uXz;-bJCcQUSo Րyt9M:: `ZZ&AcnKlRPָ*M}߃xIf^9a32(H;n_Mu` s%-dkIQ ,+440y&>=,!sf=#p]zyln3Si r.!ѽ^:8IO<.֥PP5Hat~_Hi>nKuOz)#X2fgMwgսh-%sdxeFODѩbcрS<tL,8]Zj3p%E&uB' yz(zgC2brڔx¼9%&aqMW=`/Xg%"Ӌۢ=)kY'kwE-H,$'O^xPsw0Ƕt pztp @'0s']m}kZ >9cR  cDDVg!tl !4L!!;|C,Ef~sH:: Qg U.JY::^! ;Zӌ#^+?}+/F`J1_ZA`u~rhkIf/WgL3VpQ:tq`h~99 ce|<[`Mҟ _f^vf;{4a%;ӑj"Ad> gۨT]̇s8lMї=ҞSբ%^X8 ap7ei-']d|Y$ O ..qMhqw:[Q'3hYNE (x :O|~X񚧢f Sg|\ō],&τHue<c O2% d#a} KNIgF] 8 /#%$Y*c 06]%=jr 2H#C.d6ZWJ(ֹ@bCM S~o룭 +Яҍ4􂰯y6gLwB$:[eUu&P2-zTߞ[ w$Z寄]T>PR{IrYNY \oUc @Vt<= xUZ1ٔ&jnD]-uA.]-P0tkyp@0|8NZ&ǁ% wϚ2bE_RѮP`w3N^ ]g c DT qBY ~^(8 C%9EƩSbu (@_PS7#*ʔ4+D= 1dvBWs A偣 =0w K!3 bQ(@\WA+H.tZv'X r*G&[E "F4<ѯB/80s&ՈERq`uJ ʜA4 Cn)qD!g3HioRT :#7n,&JN?~(*ЀmXCv ((TǒfDrl}٤dp3Д U; O-$$9l/8}=cnC ,/PԲWG7yAoatxl)g m2%m,>!+K0TcU![IC& aܻtt1Ⱦ,D2Bg! B@.`ѢR9x_ 5E8Z:WB'V|W.S6 r|EfA$K@4j_&~,&[AsNxl'Ӂl]cZrbP:'eX2:f{ˠI]T gkJ$р'9;W 4;~9ԛ;lZiϯ2E=cQF8yL`=0C' mS1fkta܂M^+$[osO QZTM$odZŊ ByMe,ͅȈWBa= x'֋im1vTsh.l䆪t&H7XN|{뺴n.0cJIr"+=@lxJ +Up}{]ϘjNYk}/MiV(U4'lx-Sف輦ib8j2reGL cɴ?Wj1p?G`4}r'&ro_Pqs*&o!7JzY`azUO;7q pD@ݓ9Xꊎ lG٢ f"sjŧh@BtX?E*Q̥_LL#n)=|߳!L 6&L}BX%QhyoPI(x[,=`0H4'ө:ERضp b{6{u-5qjW@D}x p/ /4 =$2ঢX2kzIfgNrk>hr"I T+u5epAruںsi9C-@ t=YncW"Ϩΐ_@m Nw"N՝hbv3PȔ0*o;K0#] *(Z*?m]P E\rrm?K q6Wjv*EٸѦR$t˧Rq{Jb79;HWU 8>̥;2%Oʛpy~LX葢Ն2 UWga ^LNj%T]ފNt7CeÑ[(n񥅬T5-\13wHu[Cϟ SH G }IOc$RΗ"kvʣKQbk8ꗹSINhӤ %6#iO lƗ~*&1r QghwQ&YDyi0UtŞB<-[-{#[EQAE]/Pao!ĵKL?C-wCuc?/@^f|*qܢf$얤A`+8ki /r5[װc3~+e <K/ 6d : LJ]Ï6SQI}e‡ɹ"Zf8&T  vxϞ"A)] wό|V oV&I8}B_n0voƾ"4!#{~Qv%^KM̐Q<, v/fVQahז$yBla73v={7?&$)sY )9Dϧ#ϓ<KGJn$ܿ'dCԴXzcA]Ȑ!˾"Q9^\ӊ~ߒFgU&ㅼƤ;*& ѡyqѹEnlи1|krьl;qUvJo D%!^#kZACjE#VRl=|0H%x2 0kYE2ZɊm-8*y蝓{tFfEq4:?8*~"Pa( 'v|8"~0GCxa_wƾ;4ַW\ҍxVUXOGDWL8uN2 k MԆcځ%ki 0dCxʺ.KBK4Ql?= |"Q௹3_o/&~>&=oW) `|w` /<v~=ŜBS:uU'Bܖ9D l=vLmhKY7åB J}|SZoaz4Y)j_3 ]EҥbJC2+Z#i_+:!o׌ʟ3dc<2v[Ոn-kAЃ}m8"^`7}K3m\Fgص(6+U$#N<?;?;}@@ۗ$ESR=ˑqYv*e?qB2<[E^׏L-+@@mؒAߏFv:TCA}I-QN*mVl.(XCpK=RS玵҇{˴K3̦CqWOmB0INJ~п{ӿ/V=YoDߣB-oat6/Ml8*tLm+ρ*݀E)[+TP^iȪPZчӪy3Jc]k? %v g91Yʳ ]uB'q;aRc*]b ,Bafydw~PVa@$|fަp7cU/A="RtyT徏cer1tÄGcckݙn}x~Џς}EwrguVHϺW2jO~ OWvmbO 7c17 f Xƿi Cp59ao`!`~t}M(&wi*EtE;*}(rz sBr(6E9Pf7[g\IlAˇM%ХL4՗>xtFgn)JqBjZA mZvT ֶGA"/?N d/ywxϛȠV,.b"uQ9,@YJ%e9~:vG=ǧ ypc&rd;~;;Ew*MXׂMrƬ"o9*Z;" T]q=tW̙T=OuLsTDofH=$9G~0ތR{k 7o$7PO1C!Mצ#OW9fkEOtT5U º Y+I#"σJP*[XփW2] C=$߇QEy/޶Lم]AUtk, x2 Zm>1Ry<,v+vi^Ƀ 3@c FLMbCUI C<0֡r;uL}TwdB٘")u^Ovh%98\h]y#Z_ €\׊6 ڶZ#^SN4RRbvcN~ +/.ĘpbH2a,&ߛ;WbBn@Y8T`]؃D 簲@&e j?g,om^*zAO\AQdwVO#!{ pswp'P ՘T7/؜ltBMC)%ȮHޤȼg93Our@xy9JY;G[ yPoS.nyd> 7wUV2Hr;y,):w>z)j~Jm[I,Xn$!rCݍw;BMe6B`EJdJd8*у5>O%EFI{rB*Bt_)#\TܗEG?6Xe|M'`&rbвM2W`ˏI5DiIىQp8~MÏWNjH|T51b-wH$}C\0B䮌nn#~):z2[;ș9zBbizE`8m8ouH8V~f|9>& 5tbٴYG$ov-c}CSw`2 6,(Su@臫Ʒ^I~xv_8bqI+S75ih&pJ ;"0=jƅzgx'_ y#e"R;r,KOrNSFJϹ$Ts01Yހ)[Ӆw_/{Q%w=7z $˯#:u4M.e.[Qz1|fY6Cɉ_Sm|,-f4ݭ.p HF3,_eiAft1@b8qfgFWQdb]0YK% (%tO h᷃_U41L/eHm,舋7h5LBntEZ5#HqO%Q®3_Jqû9QzSsV\K*yYzQmOk1sZ]/X= |ކq%9y1#:IfH9Xᾔ8a$76,Pp 6/Q_'P vJ4@fa)_tWx_%ϔήc&ߔ8TRu:Nɲ!ݗ2Nbvܫ_HKĭOsKHD{ |d%&ŸLӝ8;#?6"sskA~[㨸1WH inSpVȈۥ4d36׻ΕV=EUM[TC U53:2"owEEzr NL_rbå}h;QN 'QJͲuP;f3V$.P`q,O}nF H[v}՜^.B܅7 ȓSZ'o l'sd1rfN;wSB&ďa߸SvbNQכ*6"\<vu̼&vCP&KDH MOyp~ǗU*7B~Sw|?D[!StA("+\#O?eLSukjkfx5 pm4_Tn([1€m!P/-{nVr o译Kt|vC/~UTFM3D|v -pLEpz烮# ! DfoGf:K\4+- 3s vYsCD$oIhWþ곇?bD)_8+L!vk|`XF-~LpjF|gl.oa{ ꁅ5S9NF4`飉ۻ3f6St]7/am|j|nB_tWq6܁S(^{ >~x!H? $K;p!U(EN2'P-oEz)r.@ev EξSKppAwq?x%c:KweZ(%X@Z$Gʲbzv?:J".Iup D[;vDa:h&]Gjs` %w|K^ຖrlHg823L -FZcR V]EjږLߚw;ۙWz#& [A{l,HDפMBń9} () Hzf& V f3l*\'v},iޓ>hxNx]:S^:Qt 剖=S 7DQ bH׼؝Zy~s(VglSd>,YXEYTi9̹uFoIX10?IUd GeS8 uȩrU"[_JPr-!7;oN^  6mb. !3~tg6^WP&褦8I.:^Zahp3~ٟX_H#N$s;'BX1<>tIWm"CB>tse7Am&{a݂hvOLO z]5׿P1GUvUPܹ]07z N] U2FqX>h-pkupYm!>YZjͭpRJ^Z]犻k7q4cV}f`\̇Fc"((_tI|l7?ɭR怄J7C!yavpݻ *?#.ܻ8Όsΰ/6*] E4U`}6/,1W$O^8R*<.?y`95ɌFB?BR8ljjE57bl&djL  .tdQ.~U2Ȑ-Fu paiC."J`tbj mLJ5FF`f?y[t^y1_)2< R’wob|%H ;0У#@.I Szg ^셦`jcAI+b(b%dV+^15Au7FZ,}/Teu [ NZjdMK [nD/xVeP޵!oHʎLv2QMC]Eviþͭäg{{oYHF*UfXZ0ҝAf:aVg 觵_{7qfZާ@f kƪ55v1 ^^ _#QkLpYֽpz;]La9 S{Q&?OPiZ)p։Fmn dVmn\"M/5? 둁*L"PK=돷gXwgmhsrt7qD`ʒVX\ȀU!QG$Pc79тBh/-\|枞&Bq~&I Ot|m܍{'^%Ob fR ypt8}¤ǒc'mlqzop V%M.K]-0U E9&{|!*IÄOEvJIpjǮbzA)Z@`BoyϣL_ʰg=e2>xWIS4uZM_2=MMey g@`AwQ腲rMEәe]?e)1ZJ̉8́ndM\% ׹ȍ[`{ݛV3?NoW'k=JP~LF338uIDЛ$fM<w;qaa5! rGaSIXDFП70/ZrY{g㙈UKh:5P86ժ;NdT"ΰ?g\ ! P4 3E`:Y{ѭ) z 7^Zz4 l/͕hS^4pe"n%H2êDh>&SdO`7rVDک"?rйm^]a >bA.AOF,VDjDU 0BD/>AX'j<Ю`sD[j\ƲC&5n( aL;t|㘨hSz8\]ڜF*qh&J%z]l(W @&+7k7NZ[Nw-{r tp#UL\&I]G lʃ;9ub0̭q[Z^lsuk(x # 8ˁ^9 ||=˜i|:KF1HdhI%ôSN'A+@"T(hp(TQLaZ{G-Kc8d e9lp`'޶۝Z9$^aa4RT^ulѣhh1BZ,B˧W\| )Erf#k!!8{9籔9R UeդbfK3^&89+>T֬{>N8,wq˻8Nh%+_|Wc^Y42MJsOs-,u(.TgtI270b~+mFQo/1 e峟2'3dj|MSx=P-y&Yc^dcɲ_Ϻe۶17Ԣ-Oejh恳עZ}@*.;}3m=n <$=!Q8CTN-KE\϶noNZ3U~A~|3(qWNޓ2.q~ 6G:DZ #-hD`$e-ڈz!] _YaO TS%w^yr%3oؚo B_>A,#5(p_TfJZ_9 جQ֟rY5#-M"0$i+Qi}l%R~ UM 4,z")`QztX唌d5D}U`QMITkƭ3L (4$]F/F._4&E"ovnEtb(z(~ULlP+zz\ QEOky{jr U=b;MaDwS#!S`ReLZmFO橏o 8 KZ٩o07%l'~4ut*f@,R'odVU]ƱfPq)96u[dGe:RZP#v|`՚h3h2Vj8mHa n #]O)VUڱC99}"uky6 <@}מW]ps,&jb,!'A @mŒlkDUa]3ywc5:|$Aa>_5CrY6if8FC=X+.=<͐UM"M&G8,ZO'kZk QoZ0*2&Gy1GCAxUu]6F GQչvv[cL 6bNed '/U97RN7t 4 'ut-ZA' m?2AtYZ {$yKD(kB8N(,h]ns3pm>>$hS$?>>GBSY]c#`B6STdaJf)x}" 'k%ڝ`w9l"ԦMPɨ LxĺD_CG4A;;1bB44U/aͣ2|]zkD5;`]2黡J=>/\OӒuy{5l+A*E 1h쮧3eHWLoWU#^8fI3GR`JG:Aa`ԕ^? LZʨpGh?HzcnHP'ErL >R&kWS͐D;'Zd>1 @^x#ϙORU"Y/tŀcl[cRk%J}sۤBC3e P)m/lmY,`HMΈ8of4R:U!TfrӶ/z՜>UxN :fcaKHHWXذ ^qkk(A|?k ;b]73 ;o᧶*mvOyK&6cP@B~|9-Q~Džp"A-I[n /}~3DO[?!e"zg#  FTI ?Bz{B&J<`FUOn_Jx8k59FemW/q%LAǒ0& t@gq̯?S{pð+›1}S!~2Q{˭MV7dl?/ySK# gA~0/h7Q'`/w6$\">(wAV=2$mwtR΀?)Z=ryrQ÷JΑm՜ֵعy$l&c$1*Ljٲkb#Gj!֏dDOg%}xRL,sxOͷTQP՘6p%65"@3 窈/`%:ЉoE23Y9BruJ-O|}N*޹n0=HGCvE8g}*{Ps艊5yܯ/gp ]YX#4ϘL_4t} M H&Sfflt $2lZ4wJ)m\m4hHV{j^mZĽ`} ~}:Κ:<2a c94*Ko9U! U-> : Bmd`!*EHxilX֙?pL7c CXJd5e#VJS"!A|tmN){-4E@a =W;+ v^(B eX|%q &-{l%0]+ s 5\P"ɱ ؁ŵw2]|jKóHD `^~ք?Yk<=q0\p~6׍'&BS. Y =GN2&yv74xa~,5Ṇ!a\ވ U$7ݟY$1a$,nV8.=B Q#%.(\OIN4KzM;OvYӘf4SrldߖPsAMU-M0 A mFhˇ_-yd)ʨWe7Sum0Rء_V㱟PfT<ӟ8AU#\y/c51dP-v<&T';}[9El<ۮUE_Bd">% 1TZާ&_j|&?8}z#.f'D.jI̷f ! ``a,k9N٭ٚȦZGYQR=bgKkT餧u&rU66c}M ~@}U+щUzlUZ$xZtj:ܚrJ>Bz>jRެT{ZoYH V Eq^eΑeɈEJIu7!K.~Db8I)(oW~i\笔9{S9e@fN'Zy3  ^yՑ[_29?J}\\fٮBMOz?u0ǧ9rQh"f} XF"9!H.o~-5.]|lKtnwG҅BЃ`An'I/(F?,KMΝ,38[BOLAxڜNA϶jn_ݾ)|Q!xyG&ɽ/h[; OT^-!'/&Z‰Pki6&gy>ln0б(o tO&!3;KkY15?q!kue9_F;0,j dدۈo\7c$2P::QJ ǑZe]9+ŴUb8m͢2?~Հ +꒨g:4>1E=i[ apxvL9l)ޫEq;6|k"X {xY0hRɤ|fYcDFvxk㞀=j,#Y,wo0GML6}8گ7MUuUv3M ƂC\pgi2?7 nQu$ )BixHz4p'9PEpS9n Ad[Ufx7O5![.?az_%ۆH@t(}ͪwʃ_C S2 ̿s8se0!`+~A38hP#R0s hM*<F7uWÈ'@X02fvkhsvT#cuX鞋\T1Dhv/ρ$~n1O\^}w?.ǵ9BH2I[VY1U7+7H*ZvV$FtHߎ^IBEͮ>9tİ;mJJmVReߒм󽜗wTυ:!v(CH D8RyXQ# [w ;9D#do]n_W?~GܓEVV YVqx C8C(\/*odF6 pڐSV1&Zx$2dz@-ts 2 ס/!GJWP3菃' I'!5Iע7M(QL`_}䓶*.[icl1g9y! bY2Wut l?$k;9Y$NV) N[]n\&&l5qSwՇʸ4Ͼ,MU:%u>v4)hߝѰ9靹H2*L7H VAma=YF5A0 =TnҫX;;d 9hKUzXJ)VW*^kY!Ð&zU^o Egj:nt~K^q&oNOu;79 1A{u7çy j:~DїAA%Z Ʌ(wؘO<T،R.#NUH &j9:fg*r;<7\)d-s@T/e Aߩg,̨vP@0.O#-Z^mD|km97o >rIekol툏_;oSt:h`QwJxk #]I5%?fAtdmf*v_n-#saӜYv7:d&Vc"S ڇu}nf^H=>:p1LɯĈXHgsٙM+] 'D؜(ܚvaDS>hrXh`0 @r3֐||R̎*~Ֆk==2n{t?p#y.`,NMEpX'y w0Ѫ8#,رh4#Wl>6j`aVGQW~M&R.|-79@0i0;aA7kPe #{a||FZ\ꨇLXyLKi.LoI&#oLmn)-b5ɔvDR&,ܮ|ס㼺v(!1'К{]QFNAPL}RK$b "%dϲ5,XiI ,$M+WA^=)#@w'R&M'~Fo}dh$-΍bEY/Ó(CBl"f̩s4 NLwUuunI;?)coӂrz#V-OiN%M9a/TF+Rg>°x]h%BŬZ8X 'tDc")$"L28Qxd&FK:H4x]34T iN,Y|* iB@\K(OB>ډI 5X,u]/ 9!UN1/:C OI"IpY!(7,O੘!$5+]]Z:h"Kv_1{ް-_68qkv~@H>Ty5K_=;FFXkP5 yYƭ58t8RI/gp5zQohYW' Mғ9Ic٠p4)J#spw[$t*&q!$ U󍤳v8h8k]"\.g g͇.a> 7? jN聑OP:MO8SVuE`aWd3ә{e2 GN+h1m ]F?Aöu?6.y#6bdLd ù):3]#n4ٕAVu:ᄤid" fʦj{fU\]3]A|)*t#SѺ< /Z"/xNU,r{stGh8jI]Wnĉ.73ca#4>I7V=di7K`0(#$'N (Ѫs /*^Yzy{?ˎA(P1V(;iGӁSpf?\{0.xR_|%4_CD 㴆tP\i`tvAZh!iAvŨLLPxφ^SC8&+36J42`઩} Q;]fCh K$,hXs>ǖo]QÏ'`cYtƆ,x,w ) 08h1 '>d|a b46>cv=߇Z_J!קֵqP#TGSG8Ng>lJ9۶-Yb4aR*CrAUkX|j${Wk?p6]pv/-gb ^=m8.X;MBF{2ʊ߈ň0_$:>v4J;ĠA#k-{9:/Q<`}V`1b*[~\:1Y0Æ!UXN+2}u:"zwέwCڛCt{K>,J#YiH 1inUܗ]uX>!2ҾTy| -]{G^Խ?0hX'cIO4T5w]Չ((}2\s`SY08HffrI!4Ⱥy^iP zL+(֧D-畗6`$ߐv\J*iJ/?`BWGc8L᛿N E*Z3Hq B&D2&UH0H䚟 tLl#Ӑ8F+D`ʎ) V Ź]]jPo1wJIj-/L~.urPbA=z8[I"+vC F4mwa$"#pBP$MGh79O;obsZk@ 8~!gb8gYg2e##s֙*hW+_RFR~c$6Bw#s7Y/Py)++"`Z%#-VYP OzXaiK\O9?_GCL(MV!%d%9>jx(BZ$;j`y)JP[1 XD)I Ҳ(*uW%WC L-Ӭu* O/yKbvx:rMJoBe,{tooFAjA//I S$&K?#q;(p%"\E}v:C SSqBU D[Ц {Q6Ym2Բ@\>ӻ7p+Hj#ЌL W6{9`.:M#oqa\ _A%L;a W0+ml}sq[-a4 ַ| 2cԞi!$~W"29dJ(8W^utEF}}kF!t|n)T&<([Tȓ-; .1cXe] pA ؗۈ+="3sv B$H0@O 0Ь u8qW@mf NU4<~AƗ^]ͅjJĶ%L.Ä[\R@!Z8܍kڥNピ2 "UW[BU CR<N*h#ZTEf"]NXݬf ,%bѣsF XJlS?u;?h+@R&׌ѻ8#39K6sr MƑKH3g>D+,CϽesȪm{Rʐ&q{`~E\͸6)`Ls} E6Ks;/Vk:<3R3?hnHR1~kA?>^X䶎AL>t<ɃZc S/nC`\Gl FW!^`-(22df)>ry/ƀT:,d=1{*J(,4.Inilgvnzw CozV*ʆ"% EZPC+Қ È1dO_4lq(6˂>xe~8\w' j.傉> g9?L,iU4[;h@0|-'VtLV}Fͅ4O~AQȗxSkwaW}~"HgKC)M0o ]w9/P?ZU^^{#Y( BTUw)}A$h”cE5䐟7ƗClgg[X7=n-|ecWF"aF2eO3#~owQ7v'e_Q귿 V1jA= -3),񘄙jܰAʢ`Y~6=8BR-C+WSԚZt: \Ϣw(Q;a;Ԫ'iSR@\rQOSQ:WExś+PhG=q9 k7\,jxZyGfJ.L@zp=화1?NF$gڥ?@Z2q\LɔH4OnܬkÇ lP mTISk[ژLCΒƶ|ZC‡$̿33y6+L!K3e6T7pK¾1w@^&sZ#\h- jpCh@E" [!ľ %叒֏:hLyTucc13_{yM}+seɅ,>ȇqx'&C ߕi2դCC֍/V_i.õB_D'Zó=Xg%BoJ ƒ]'zݟϺF#5N$udiD.k3V3% K[+B$5;0,?ݬU 04\$hۦyqAAp S/dp~^wpP,_hpG,UjH 0~+}D0.{|6΢aShb:vr,H(;uOC.DU h67Q{ۀ 듛oaއ+8sJYFe1vxj1xYI|]ك i4|akYoD8 /WW΁B"$̑W| 6SoZWoO1/mM C)Y^6®wvDܟ1٨ H[5!/! :7ے*30X.RLZa!4fpZ`z0d f/GGÞS" &NWԺZllUvɅgmJmة%1h%R:cW!fSK0|/}Y\Nl"aO>:!yFEČcf#^ΗҮ30hH >9E35myݣ1+ zfJG}'Ҝ-OqQ]18s^ [8ώ\4e񮶵Mur"kQIl}˘Ef%(<K0Equ{\5QX'^: .gҥRJP^b~ 2*{;ĥ|E RϿ젊6Zq_lWHԣclZV8|x@f- =.ftv*gE/KR֤6B1_{ߜTV4SQ6ݑzmQ]0}G7 1,.tCN !Zj;*̳㼝ɿX 7o hL}7'd"0@ ֮>= u-"S0"LuTRƘkf?hBeZ#nD}N,I󯮑 Ru'#5L^Aa7\ 5Hgf 6P[76 C3ƟfSK\Pz iFgUDhy|Kh^_њ0bdzqa* XxV N;-,E*%hߞ*l4 k^X>=Oe@bf;+) rML!$$>:M`PU+4j%Fܹl_C0]G ]iQ}Z,NMY{VE𾚛)?IA(d { Lf @6kB݃ ,_4H ~ė9^0W-JܺOa*۬)2pk26v/4Zx`+1H6CEBMNzM 0*Cm9Ž&E{q7B:fT28ǤMQ&kC*= D3nKyPIuJ{22sBq=JX~yJ:ݮ4xH*us߿<Fhj(O,tF]nvψ޾:24`ʬ"(:C8nf-Q|>+<"wC.\M=MT&4ɽB?J׫Q=,Irfē~4݅T'rup)p;w@̱gl2t;|eW=zo,AUp?SǙShOC\kTu5iFo_FJ¡t6G nQws:ȝqwMU.Z >Ui*?9}3NrU5 ?4iAbR4I DH7LC.Þ bKaS*Փ6? vw٫m=^exImܐ֣Z孇/~>裊9V ||GLeRF=!x/p3'KtǙNCV[T.c1Fy|^gշP}(4UĎŶv`"D*?< GH oCB6'G&rѧ^bT-__Wz9JnSpƷ*k(--_\sa`?1ьdz~7ܺhj8hr W($N(J?OA"-8={1r6ޯ "F?>Qe8V~F/X U/ԍeM|Le.7 4Ԉ_OS-Z#Ny[ڡ5Hi;E !↵-beMLuAF^^G"νRä[KSlvu.31Ba]T~-ԧ)AHH &Xݏ8-Ioc zG=K/{>k_;ej~Ԙ|fz.ln66]Dz,Gzk6ڣ0ռx3➾E!Є }?/d3*~cr5-IGGժ<0nygtc[RhA=:!,I!*\k8 &Ix/) 0v,A5 u]3wHa]n7%vvֳn8hP=] Ȩ6scl~@-VD5Ǹϱ7}*҃η^:&{fq%kJA1&Dхk:Hu]]_ lW REUʖs7Nz'Kl 葫 *%T>dࡕj% 83yϸ!d2z|ڱm e0T "R+dGb+u1V.48G< Dڣu5ō_߹q<?2k/?"0]1?(8sO2i^F;mu),7d~R, Jid Tdͮ{d8DX;WEzlcg>s IAsM)f7>B'sLJy+"N;۷Is7`p[U&9.s_b2=۞Y Ed㫖/׊R&Ϯ5ztd!K%32x쩘*~ؙb#n1Az{:Lailn̦4?jz"k>K'nPW|_6#yT:NAaq ?4C> 1 LPG-vaoDl'-63^p9-T>ygiHyNϩ֭$G#yBK W$ j4buFDQaR;!X`'XohCջ uPV2sW}F]rsw>Cs](U%  +*~ {V;puF؃Ց(8uV%$AmS& G #?Vm;BJaLvS{R3pU7捙sI) #vmjJ \ՈJJ{+gnuQiZhwXy!K"6>@YM)Σc*<:[V0 ,Tj㊼27l0h<?Xلdl.{d|]d Bz?( ߸7'7=oVvғr5݁P#ru k@qֈה&n"&*`4~fZSڝ0#|Cj@ZS6^ms%=7 {/X@pQrG[:*̣orh ;~x Q|n~tHLn? 8FȔ͜α  zq~pz/kʣE ^N wKlT}: *7j4&Q*$A ,e!5|p//CK+(mΕ 3OWEYv5KǝNF`mœ~-ekՊ9Ğm/SpHxaCYXo ^e\*:H` (X]LW *SN37D._7yiE(&I4Ma$?N5\k!ʋ 7 zS \ٻݞ,At7pHd`B@vNDZG& ;=Y ѪӤG7V8c~3}&B0)mD?,jqg'|=dȢb*a dj_~E4#` 3P@xayhē3nj$/@-J\TAsh[v̌t^ivkQ't"KF$ ڏm,KwԲ@>y=xܰjkKu%a{/95HIN<$ʰHˁaͨ"&<^@} 1MH#׺Mg9*Y5TƋ3Ez[ sԹDN8$ em:{SbmŴ/#ZChR\iڅHr? S+pCbYbIjbs?~vTau`U5BF* 9컾D4,|q.U.9M0(-ĿZ!.Ig!M:`|Ƴ%;Nvf %? Cԑ65X_.lj/9QK=+2Wd}d=LU?;ԵPV 2dMNW"r١[(ƶˊ-h׏f;q/ U{E/:^ /oxK M к0$;C#ZXa]3Q $nʷ ;EBs6Md]$>,nXS?%nȪ qZP 忇_ _/h(n}ڪC痢Wm.ȱ?PK/mc)Y8MҸF$VmU#S9=Q*&q oW&?Η7t9o- ?E{_,o ?b Gq19NLkiYA@?L^{Wi*ffѷwe6_ vN ^#Y\Gg[GdkֿwPQ;(!('SpM٢U9AI]նf)طv8 Y˧oӅ1K[}cIx'.u&{fakq '{O_z3ڹZEոd 0M)-_P:_ - wNLpD>9V/ڔkemRAk^"g⣫%$Atr#E3Έ@L:M{u~D;zqN98F=9`,9d\Л$c;:ڕ-aWeX)$1 Y&ˤ8îd/b>$,;!Nf (@xҙ!:u3}'[ &FE9_{>ڌzq.x pLjx T  [@ݝXKbE MT1䛭ɭ ¸zlL]sn)6(],Q{udUKs!X|:dCڰhi^S@1s߷S`?}I_NJ, l'"v,׹*{%;f&y1vx|,VYm!crNY4>s#5eb{͂a4?j';BNHBtwؘjIˋY?p/T 6u[\ݧ5Lh*:S:CƁz%pyޙZ7%c)i/h'?颴uY b=Wd!|W5dtL;*gt= /B% t NOY\PfL5Kn䋬wQ.%j+=Q~]]9{w3HY~PJ$i{x|FjANI6B7:fƹ)$~?9BU̹)mjQcu2BRjg0 [QYs(,lzً9o 1BʺZIiaUڿ ʯ;rL>7?k0} >ipZL,C\_Jhz趫 6Wג7RkcnKa5: "TQ]bcur]Y&_Pj>0<7B;.L}1A FSlQz2%5hDg$wPbH6\y7xxR[>=2Պv۷"Wcl! 8Q08,1,n_5=I$Zl"Mg>8d ? Fz1w˾/C̠8k8Z/e~Dޜc=9{R0<3?|~6m燭HTulI|nT*E#+>ۺ9k5uy;ER,ibF:{A)PY+9g65@<A{yD SCT6شoƋ<. aµ~"6TV1[݂ii`_˿_,3FAoEr mwɩRn\N7< X_YpVТC GEXMm"sU9BbK^N,XC!9UZ6]: !V˭ɾ[ո1R], ]=:g׸[ ṕ㢤{MͨV\ *"s(HF+7t9k4 cK 8XPI 8 %k0[\tys]!.1p04_WrLx s:F@b16WdSu2pnIثʛx;{!sļWَ J[S~s^GxS^<Ts'"x6F^Rb/A>\<ھ_iJ` 5iorP}5x/Wn~|/\7Ɏw+N``+7e{ ?yQ1\XFm6t {TOwPRj%8m^2I8hB([J>j~dWe-lmmb赮'G_Ҍ.b`|ӣ1Ɗc ś'╁o?9v8kd1nQ)Wcu efܪ1.pcTXJJ=^F*oړd U"J qZz܋i  #5c4p>7[ N!hT%?_,l8w %ET>u|dx 3D;cmm*TU"=h}31wf? &pN{76 .Y0N'L}tX94IE/p0w_ 0ׁJ% LՀLޮ߅Z xˑ T$<[N7屹؀53vHjH@tIMاʳ%z%^u.40`#>O2 QqWeocp.m[ZZ=:.8"Oa Hm~w9l_~?äk;I@>&8{Y~MIzVX"M ZN]J{nΥmYz(4Vޒ_8Q: MК`trtD2 A`iun(}>o()8e_z!HB9ALQ8O2+N5-szHNTw +r|FiTpȤH#ZgH1l3QCjTZEBpK%\Ɇ3ΐB+?Q\ 8kH,N]o[ƛ0GN_ަRP^æAx#*%+s+%,Ȑ"<ڌ{]&j-Cۡ-_E1.j#D UN!3 ݰTk<#߯` e`vD2\ѰmM1G5 '\ㆳpopW2Xvp&ģLWjhymk,R`[)/KeG^1iCc]&a)tB4U*pl(ֳŰa$@Ldmې1i, ҐO[ )"Ed;_i(e-yώ˳TQ_RML;MTJnʑRCϚ; a= /H;J0䉈cQͿ륏lIɜDŽ2jEJRMk|3Gje2yd!rYS@bW愺@۶q0CE,;YyCa/,MhmEC?H Ǜ) #AkF8HnGvS|SH*YhnMί`;KzaaD~89?,71rǟ_nx9Ԩ: W~x` E?+ G!p3%;z\g+ іyYV 2 Dq313#ZyQ]rk:SY᛻[!Y9X;'5kp[إ9`3-(e<֛B,h=搢e`n};uc[,tΠq X Y'+B~ScTvw@ahT3$\Qv!uqcR Oɥ!"!W֬؞D }v\ a׹=p hd`Wti$"TN+TEOǑ6T;MY' <.enN(qIC9 쉁t.Ltt/+m|3 l1bT!.Ww+1UG % j_ec:1V뾹w"Erďw[|Ɗhh7 hɎT #Ƶ1 Xe86g`fk|`OO5d2oy?3 doY#'r[&psL N=&qAGIydfqyaOº^On 0g me&nyrWl:MC ۞e!]ph]́w]EPTZ,MzT#"D.o72# hlIofJ:)!5)bw*zӹu }b Im YZ8ԜwMhlhj&^ [Ix_@H':+巋]zM?.E)VF[ fMi٤7YW1WDnH-W$[pbFz1m! ?@h'_^W{ &]"6ZMGV e>𜾒tE[@O^jTz \^ȳu^:o@Ңe0UQMQIPݳ6|tn)wKf] oF|8#kL*Coj֧- c y*1ʥ+$(֗%If|-TS/ 6moa#/fATϡz*8]<%p?Dv_ܠ iSd8(%O¼CHWy?Q!:O<)I:`bۅ~R`QbƱRNn2U]uU@jP"MT4$sپ1v7@493-g緋z3l uX_c-9J70h/q-Jذ^7rg~4Y$]LYJ|$nP;pi<>@<7QЕrs3=ѹ$r!疊{iW8F;7 .a@~G@TK/^ J愙8M^PHcA98!ݟ]'~b`הz*[*_!}|o3 3Q@ /;VfV=m kg<\>e<~0`WщzC9B(ܨq>Á៽d6/VKb5)_ bݹ|Ӭ2Tt\YL_qnoygݓL:gFEG># 1۝-kފ{Zxfq V϶f/s)Ksџc!qk{bxاJi!d]&%Uw\g=_:EܙPUrCJ'K(hꠤ 2X `1r Ghh<{cnG\,ok% gIV{ɾ}S+Pˊ.>vNkP<601.M0nj)!q82V:mŤoʞ2.9D~K|.òVBv-:W|1)@$"ďqFZN[S])=yM<}p֛+oծa72o%-A:fƼ1.XbR'`u>SLj>3yIP[8HXq $^Ky6H,390hXo=>zj{^$t3{X2_ {%֦|{TBu hW!uVQ: `~چ1jw)ՇvLz(@ZEh͟ N}8G05g5hALi p{+,xCjHXUɆ~7H*dm[P *u &aSrOv5qnٛWI[ӆKqW Щ>3^aºe&a V}GbUպsQ+Pƿ(%N.}8Y9yw q2+C f{{X'eݱzvZߜ]N`+82٤n ukpx&o-Q7鷔 *pޑt=BdԶa[]me"oIoMe+lC#:"ar*jUG,VR?f~,7? խB,=AR^pk>5~tŶK';rOJDyIF-kbky3t~I n0G% >u␎%(8!oMXc$ &0ԧ/|_}C7>oyI ئFcW;[,&:leQ\V`S,Gצ.~=pP uKsBONb(!UnnP2H$Pp6ZY A&N!QQY(xj,D+UqG7t{3>aM޷"jErʙ%X_旈Iq;)wΌKjav`0[(UK~Μ߭*d Y5}W/ųZ"9l츟s#ջ gxej*5JCE,:Lnw+hC9Dධ8PP5ag߿ 6Yu!*`E[e$O`V$E. yiPt̍B&W| 8H /nhv 8n<gmE>bDɄJXZe߭;íеvWʩHTaU W˥xcvxʧBs;O>y >8#ߢ4• 4ӓK&  U$ +0.*1xOzSW"2Tb  t?;zv->sw+PP(Kd=<~c/M +A506#TWr_$bO3nOr .9OThu [K kxnYNQR%*T~R@GM)hݺ]&3B:2%͞(VHqEc -g?,pa՝>YQF BpأiLBV}J>u^Z>V!\l5HO!3%2ظԶ&-UʯE{"'#h59/tfhE p[>fll|(P^U>?lڶtxuO}j% AbC9T=*Ae0Lm2 : ߾4zE)ܶZ8w| zf&^ǍR|ۆĪkqi>$wc%]"3?|*] F9K]>Z4Q=tH-7pce+'`//Z)1˜ fETױt 6To 2=Z_"%O5dHkY930)*iI: -p_:̛AҊ5X-cq)c"ت8g-U4.Bcp:`Z :"foθ`Ŗ3} Pv# T "j1+Lo-4 eByՁJ?jΨtVЯ0kZž=G4"{<)^Xݚ])m qP:^%5v ~U[k9e -YZ ]ܛeɤĵ  HiT <+ro>kږE"a1҇A&H fQCӛkC0}]"mtbJ&WPb+\"zrE=BxL'z@ ?uh9IE{d7#ddA$%(Y5?ۼ vuM0\YqwKZhd[cq׹[%Kv8@jZ)F^8KM_Ieg2LV&w_ oJ M [!r~U"M E=cbD{>t3Ūk]*,dd̡4$t['K.p9!EQxVu@J@P|\LǮ%'Ic9TL 7qEſow?b҄2M~>}΁MW7B%zMKw6Mb#k- C\~ϫh gsD}> wqSJ':4Y;n>k 6b*fϙD1B FA ruj@/G_;ȫݕ^ټ;˗D~5;|{3ͭ(~^̗x|v,y=eXo0 < 5Zlہ卩/_0آ*1 :ruVBfޯd-T7S&J*&3,R0wxdШf295Vw"{[sjKR7J,kWzT#v@gAkȓ~VN(iq]S., G5)3qwIāGGsd :y.,Awj8a (,r1K kf>p;L棢?QC (1Ha{ˣLy?0H;^moMS HK '3Y~붟Jd.5VumiGT,SQOYIzaKnhr;C6Bhkt֡u$ S߼ 4MiV`tאȍotGڷ0"]&G,УָkW{gJ )La{-fٴ"'\;dd/D#fc7 zt&~LWPpT,x?i $~0KŹ/X]Fq@gz7T'G%@rmW-=*n4L tu^XUVyk0!6mjvff~^qNOD,!E&Tǟ[ez})f-qC~{6Hu [[;DN1 H71#@/]4 ~YBL`ߦ,.t4XquoofMJ 6&-XJ=uJ<YN'}CmvU!jAŧHeMNqD`T,xB&<d%B:JM\ S9F^Nym .zr`(& I),[q6|#Ch4n0cXM} 9LO:)"9rFh&6ծ6|LKU@H# 95!!0[L\`6x']ɪ:բ >-o?ǝspbn/&شǛT(m 24 {S=C[Ir(sp Ug.uw4o6K%U0~T]v|& RgR̷ XM%2վ՟^ROcm'j V,5+T:R2K?Nj%wBY+'!ߒ1ީgD/ {9?hFQ(U**a7*Z5O9rҳpD/iN'妡E!w=Ptt\If'7 {W61+A[|@2$v`Ȩ;a@)OVZn LU.c J +"Sp!5m VH,s\Nܕ#wkww;NC uR" T2bu8ʕ[duV̺j@_U@\;MVe / H1[)5q]7Nb˾ǣ/gGΞԪa1]ׁ ĺD"CU,F.c3!'͞{ʾ@*Cvn"B #R&2ⴻvXUc&:h7A4bZ}ta*qV*ҒRB71cK׃g$)2_CU 5D? :wgGѨeV_Ji+᪯c{zOcD>0WTY BPW- 1Ǹ`@6:jD6/J0AHM\7^DcJ{7*x[Bm(g$VKZ(6UwCB5RmNXtI]F%00a'ܺ#]=A&~>`;úݰ CCOɳa{. ?J95 ,.dC7:487v-Rw}'ܺ4u7[{iY>Ñ*g]ʱwrHM HܤB# IdFժЬe}:46HlN1:${#~'O@1xքPۋ@_nHaUϽ0+DvG#V ·΁I{!Z'|afn=6|r7jf N wbȞv؍x_n%Og=Ol}g# Pxh.+bd72"Kَ`wV0`cZB)AJ-.6Rۉ S)D.ceO6.lQpxjMk\$=4i;=Z5>熹k.ОWN."PEu`X<}ڷ T5!ZJ񜊼J/ejSF5sLW{u)ǩK9/F~ȻmMQ5Jr& uN8e{F`ůM&7ԬD+2jƜ8Z9:H `yj8f鬔 75ev4_7}#K/آ$ g.a6CD^lㄪ;N#TAZ%o) {fWD,1J+ԋ#K #+Ar[ ue.5SAvI\X\[Zs䐰aq]uR&DXr6yn5Eٞ(ee>Ge'3-QNww/ȜJ]uGZ!nY1KJ:nQ3)3Hsaf+zRu]qQ|sL]r:'3~|bd:bR VLxp]ɽf .`Umm R}1 ER8Cl{3Q6 8KyV# ~NIN)4 7hB3J?Cٍ:E a<7f,!(ɿLD;^MX6kh&c$M#ǎ+W缈w,Ep ~-ͤGU8 rh;5iecKM煉n^ #}$xZ۷P{z[ kҴ P6ip6 ZD0׎ m tuQuE=&Gr̢_PF20^-VHq+`o՟PH iAV:fҶ OB%k>TѢlLH'L Kj59RwfKa:6<{#Z(?z5z@z7lMݰ刁VP͚Oh g ߎfti5_낄bP)ݺAvAQ. q %F/DŽpCR.8fx?^t?V uUrM|vݠtHw kqH%Ww&+VH=}lWٸH0Pج:!D ȓ?4ԌW] yznA+Z+Jqa8JN88TfMF^<f-AҐSKn,Z*-w!9G8T&Ąih|D qrĿ#6zg)yߏ5DrI`J$WtGA<Ʀ.710Zӟ"˂kSi>aE+$ƖT9t <%Sf ksr0%ezʥ8OUF;~$3>˂ȯ[U@  \A鐄78>?$lJ!(^ +*x_'FJVgنsM<̷GRx4CҪ@|{~'.8IZKCd_`Y3*ʀuX/eز,?L&a+"1Cs~qB] h^ReG۴0֕7;gOAϖ1):Z6NC̥g0CO[NooRYNL*@1pGNařie.qv0&e}B^QkXȦQp{S̿ʌ謞"nbfb|+!Ș CV",.1{( ? Bk&Mد6NB֕g<-_kP.cC,cEj[N@ mgfqeĽL'_ v9 U4riwh ꫚]/M'N2w+CO;Ź_`]7,hB0T!{el,.#2xHV$`vr&~z3nF"w=GLA)NE18d)J*UC*ө5

# @~v]ԚuBJF$3 Nb703UIg,8N-֚88R⭘ M&KUpk:q ,-cFf| jB-P!OKM8ͱfRr̻ ܝ^_P9E-#W'1’;o#w&I+z,m9?0~Ntޤ)hPC@-q~jT+1/M) Y5GSmMg?fOH/g4-8Tv(ò;~0n_p0B7'qtFC`ߵ)j!xK Zb0]ע&5$@K{Ǣ G{4ƼYu`o6X˗&~NJTH:I|\E6DžAG9=5G8}]ֶ:^R7aw_e0վ e@(s9ڣ !Ҙʼk=:@^J Nf >hģͦU .dQ밆T ]t>v%W22G|V<^95zLS=j.z`DPNJHC-D4.%=C˴ sz ;/q UU/-D Ʒ\mbs}>I? { y7Ӻ~ԕd 8 1P3:U5-ܦnK`~KzƩ>Zڠ-Q$l`phz8jk> _"z*cb`jkx/4Q3h|gY7 uO aSoaHzqxj+i( 9!XSo @ (L:*i}wk#6u췙ԯ 0]ݛq4C rEdwug2Y$Shmh_%IP`xN=uskX:NR]e} Fl+⇎cƤ,ZJe!fn9/ȳ sh9"P3ҁ9[_xgz` !}k@PnсY&`!5{hvyS+EepUÚ :3fCn$R-}]ZmӑN,9GAgOm_X@e "X bx-:7 [֦\yyML7ga?gvS#ilP~(e:Wed{Ŏ;S<68ٕWuhK&(üJZ<7akF{.[>ȰXtȖ RVxJYK-/aË uP\UGڴKϿfnO+c7U]1<&ٳ+.Y⏜ʛ!&'+*x\ێLђYcL}Sm[' VZJtG2giϓL|c"-wuŜm;$QJgE6I/1wZg^+惘^08L T(bFe5(7׺Y8y^Y$}p5,G7{N؁vA M?{R&2IQ$Hδ]z2܉G9x5IGwDB2V^d2JRF(%z]晥X軰M;'YLo,/b ;SFd Ȼ".HY)K7/X23z5 Ł~sS*YE~܁ -żAk 2Kˀ- N:UόnXW,4krrEEId@tvp WEBn&0ΦCp{em8BQT9fiRגC.ӞoQJuOZTuiT~Q_XүPx'%"2[d[Z-T~:g MP ;ipFxpɢzJ6U}Oo$שSdfmjW*SG nj'ZG~t?6 qz¥Bo;ݴ܎ýUΧ` |6 ZGhG#BG gD\TfI j!CC] Z}2P/)_Ew0ɻ2>P@?N;>z:RW)~v'ˇ(݋jՓl I4.'p |S-Dg3*?x|c]V:aFΠDK~. e 2|eJ6Ƃ[!J? dS3A S^<0E3s " UǼ27 J(߀GJgw~V]!8=Fi l_ Zm=oa|gֳ.kl} R)W:%HD}J]Pc|aiB& &PB:p"a|NrqOYD_QPL`# o]۩43ۄ3GĪ57| sMܨܦLp]XOӾ)?:Lyq84Z)_^ jPFv9’%N ,jgrQӧɩ:[eÆ5+KneoS "8:zf8roɼE?bϳnnHր fJzkגUlv ^W nER̸ذmoʆ/ue{Z2 D&RY9!'y4)x5CA@OcBVM3mQPrR6ot%|˓V^w[({Ȑ|2n6K  CD瀘mŦ̞AGQR\a(u|]`yNƋJ4F3O,8yIޫ5YN@Fxܷ쌀yX+IS8FR)rl2iُDv5P'7ZnPxXgfl&HPMLóO(fRi\:4sh2{:Ȱ >`$$$Z@{5ih4qOUއ[pi#O"FNz,weyR1H_ݿc=\ܸXZW&a([E];53($U6f#7 5/\2W3ŭ "sBJ' (; 3s6nʀpA^ @ d6%#&!$Wo 5j/hV~q];=rO vUi+k-REŊ&Z*a5@ٱ&'d\j#(ЬkA1 ٠-^"CD-3LwBG(*;k]>E'Ӄ P  ՙ6cW5YdxMi)o =>ϵ"ϥr TW7Od$":[jpjΡq~̰2 sxjQ_+)}R#1- Z[ϢW5R|+hvVbCPwឨ#g [*`[XQy Hñ6B#LM+(5㖩̹:~AUSd)A~&˩BobNtCoY= Q54yj@q-s̹؄0UN 1MVp%:P6A 6Рw.#cg(ןNk)RG9, iti9NCӐ%y3yuM:96u\PpA?ׂ_.9ƿy'&i:zԓ6pDiB̈́] P+aTWSX (j'p_1"NJ#nN=581*59 Y`P9K=wHؑp0Ry"=#kB -ylz y+q+~]`31`SǑwa~uumfG4`_͏CdL#1bޱ96<*@(}1jm(@<'Yr`4"F[AJAk.F!~c n1gOr$H ݮJuܥn^U*$mMc!|dvϏzEU(%~,eʷ`mC$oZ;s"Qk\ e%`ˀ7'ތp Fa'݅xU/")*s-Vu0PN0h^E) i0"PIYX4Bs: *3?#=A;Cy\wn VX SH-ۋkcŽ+3r$"d?SMsÎq 1G$:1'ؤv|Q@*ON(r 7Pz*, ,V_Z_Ł$_Ŭ9Oགྷ!ci eetc9Ddt$A;aA+">Duj:Ldr"!U&85v筐.UF;$E/Egxt;;.24У֪?XYWGDuޘ㰙h15I`Or da8@b:uX^\oHY/ ~S4:W.w(GVIǘ(z`U3+TR, lCnXXiNw+>( 貶 ęN.yQ=vב>Iz$x, 9Jr{޾lKqث2ī]7jt(ZGgpBlm# D&v=ԢuW*XWg?,C>kN 1C~VItUOpliG#`ʚ2 A*hWSQC>,p4V`V9^P ױ $P{Tsa~:u躶 u~xG0Իh ]HX6L1?,#Q @C&45)fi;R"@f%-=nj :_"n(9#K v?Pk,Aao p0^.'Z>?ÎѺc"UEy 5];HfUr SόTb_ =^,-1Ii`-u^]@ +6vP~h irG'W:H+YBG:ЫHF y6UD muYW#O\' '(ezkryH)Ɏ6ЈW-'|B!u +7UTv(Ňu-n/Y^a#GO)m,<ɔ ȧ*]OрS4#L(6C[עYy]`u%?.:A=QO֝"8`zcA{>DHJ ?'x/pq~,_u]4N]1v'_ mHɛ2 LZfJsK*QߌҢ/6^ v0BHz~a罖ɑ>-C#OnrUStw.q!NPo>4†FNRb*bF 'ߙf")V h ,e5<0 nt`+B<l6]^e>P0%XH)H`yu܊Z[IA"/؜\;HFОZNVa8Kӆ+bXAow%AHQ9 $v%D<;\dA,HPJ3k2O/uJwm 4p'pN@DC#LhtrĹPY_CFhO¹RjL5iMU[|ϠγE{˯)oU N\M]h:XF?eթ#o5}4sDh'5uu~bqj6.jDFUe9αu#Fe|(/.馊*'=s驷8{~g&<1%\]1 I`J7(*"䛎O~p<:**7A7f`\r)csk3|ԥ TQ|Ny|._ !VbNw1P={4 ;BK@`8,u&jidEp U>z%ԓ q%wU9ҧ|R)׷!"P KBTB׽%tӫu `cRdԱ oDT5˗-Q]=Cf+ze{DcX~ Lv Oz,xϊg3)ha| nQŪVr)nul,ekfR,l*X&3l6lLqg,f2T,e3RBqΗ~פ^a^gp1c. hHL^ M\,sco(%B|iKr2,A*mIL T EH32~# sd |=awҏ4'E NRv-6|aaPػx>U.-Uz!Li9SτUU={둨 ?Wˣ2]zف.*mĈXl[^vMKsI,ȯF;XS?PS$ɃbL2 yd&'5(otZdu*ʳm0Pk9iSNfoo\%Uu&{ߤ?Y䃢}7+l')DjoWv-j*I1Dci; AW0 e!Vj̀nC ht_e2orųǽͬ/mà 2kB(p_ƷM@SLntSZyr4:{/r,Z3+o] etDG4kPbfc!U8jm&eYf;$NJ,M*UΌT#CSe(%|9VR {b;bƫ*øDWwUafa )殶v2D?lCd9,;HRj9S ` U\)I`J'3ZԹ}p0ʜ-m ;ok(Oc.?n-TIi{Q+K օ^^.ݺ:NVc$c]2ARG!fUm7w?H^UC:/ԓ'2|Fҥ))}sg \4#te G3pX S5,sBlQ-+%Q~B$jtn,ĢpVvILq $Q:2! F0`1SmP0&WLiX}GXp3i}#"oD Z!oѶraKhc Xױ/I ݗ4U#̯OPCO%U2lB~u7+jΣLk|H>bX \]+V0-޶o.5-+VO,U,˫M;d)U@:%oyUmiE:R^/քCp=o@Oy_':LgnvDY<4 A|K 0B4t78R2Y9  j[?*dKr&53Io}I Zצ؆JTh7G"ЭG aNѩ +{EBJO sLK?]-LÏ )9 /1L0D 0Dbj>SSuaϟvXlŦ'{߰ۍ=' tgnX]- ]Si_4iI]:V!vã۬8tw0|GXjo\ 0C5~@2kp _OW ӂk&ù(6QKrof.@ 4˞_L2G1vh].1)׸+jE/l@mb0 奻c`yPRwPC̐_ ~ZJh^|;iDX=8qe#e-~sfZeUdw o{&ܶ7,<;xLB&ՌI>6Wi> es@\CXz#wxN>FgpP5NXV#VdVA93 _k]A)MU\#Smû*~8Q @@4=; o-ҩs\o`_ ŴyyZ+աZVKo}6k,Vp&|hD5ĭlκ|a%H-5zY9Vg4x.; 'd_l٠T#e+B'̻e~>h9hqДOl'*xK d` %YnWeE?W ?1#9 ᄃ5WF"n䆿!/L =x eF >1(0\ luYFlH ލV^UIJ989L'2LP wXqTy3bm=%HsfL!J;pI#4u_ I0, z0ćqP֜<\Hv0 &sJB"Ai\^:y-dnD>C^%d[2Z kΝg1{0| av(XHumu78 ճZ+J+}7K_%V-ϓ]ꗷ^f]c4bzIF5kǺ(VN&Iݽn|>nm:i+&Gtd(nKyG$Q YW_B^ -mW>M0#6a?]8W-aF/{dȗ({Kn 7&YM;<]t אּ2LـFphpSPt sS]Dd@)5]x40/n@l F[h4 s'>q;[iY1ȭS+-ʲ-<aH6ugarQ:s SĪ/W8G\oGQB xhI,Y>N8A|Ɵ՘HW*Zp"X95QKZZT MUU)7>ggotLa{X_ jb*Oi7YHPiK:yμ^y 5OB0ʗ#{`V8unFt˄-_$ѽƌ-ޏ s>ytH)O7L0_X]|E} A4wHYK5ͭ6=*˰lB7$mp5D!업sý3 k4!v]q;)C0]HH> QdWY N]nӂKۼh{b{v [: &| uh]M^'ͧLF XWWz&܏^_8_﬩PeX9O8"9Y>[M4p5-iS;92p9}m3]9OҩPS޺k-AiG<+roP}x|cMh98 c29Qʶ\&4 B^)="U :ݽgqDB:'T:Uc|:>[dȼ':jiylf8NYj$M#2#%#8:IYp-H?̙!ʡΟ@eOmH=5;W9v`cc4܁l3mL(8ekת_J)%(Og\ZrpN'+Ԝg~hpt|?.8d+뮹Y_'.'羼UJP~wG,lnxYW\D5,zk_oRýc2N5w7k9.,RMz맘c,4hq&8u3%;<`PTqA=jMLYy$3`pOY,^֋Y iuc:~iה \)t($tz"<{ J\d|"4s*b"=fk=BH&(dY$?~G 58oSj_뱜OBI#{_"OªRtJrbzTQiܔ5`0P\vQiYg|̭Xj/CXR`«=aown<4v-'%F\yEYrrR\f|d`kfD9|JR~Qa}&(tU E`髰ݳ4!Miy!gCwíС1ܡegӨaP15Fӷyyw*fa9U*0bxkR:HWe]{,\b|JԖ🁜B_dei>(Բ{9[Ntd,ou21 4"vl$6v[(V !K>P|_hp ll4w{ 3Q ăN ;i<<~4,J710Eo{K]ic'[i7y=@%"%$y {It`79K]xµЩD м ͭal֑7-'dw@-Vx(,Wg}LaFRWDHxJ<+o'e!^rc.n{,سri87qb n7c}yVF n" ҆K-+ =) BPJ I uhCjq[{RIi܋ORz(e6đuئN(=}C=Kp[6qe3B)$la>ɽY؂D7#0K LC0:55~[e5(ֽz-eۘԌGJ 6s[60OҔz0< L^b/b%$""($5yztQ,<ɡԥTa|Fjp\#6\(<~'^WyHŃDbw(H>"$% ]cIlQX5РA p{hbA.(v.ﺷ<=`~j}L mu֛]_?vmc v% DbtFJh+3yb)ݺx#;NȋO ÿ- 3:;φ1|ӂ,De1 )/\murDQw%S N'MepI2 (L}SlQ qSM=/ N"1^7-;.Jĭ)Ox%tD-P|t<%)3,\Y"_i/s\/"GG)> sA%:?ښn9ږ!O/5Q!%Tc '%eX'^B@^su1c΋ڌ@?][E#lʒb0GO{ aiȕ[lXJ!94jECOGn[0#_Bԝe 2HmWImeu@ /NyI|JFT}O2 TUi/|A4V`LVf'p19vřSi6$Bw~].g*Ӊ -"M|]4*IYz W"M=>3N.M֐T^ugXٜs,$E)hra탲knƔ|2]aÌ, -B6 X| Խ}g,FY\#rߴ(y P̩ O>.⻁7TX-5/?9+3PPFG=ECQP`_:5%ЛA&kKrIѯE5X67 Y҂]Jmo/LA}D{0\Nݕ>WYC_^kCb^ҩ~EvcƗ-ɽU'䁻xZߍCpc^ۖMd8fGZ?l.yyq'/MF߶\no6+B^Fylքe*yM~7 ae*$0D^lL'TӂX_pD4bJXY|d9 5r*#`bP"v&6چ8@A'k g W;HU ȦfXzi蘻s2&$Wn4dbd *={SC Gry!IVáCUǣSrpcOD륖2U*+^Ty8MĻt,AŊZ5 𬨇T'/?axO-Tn4ygM{NF@bOYlBay^7@z(Wυqޘ(/sZ DAqVLD]o O 4fJ|2̬gnośbxUr[h,*eHv$ɐIØЀS1^imiIvY@m,_ͽ_^Uy~{ Thr:$gӶ:SF}ZO)=a(GRk1 pq=bdG]QRgz藐z"9&Iɉ^bne"̀~:u1 >ٛ"@F/~`sp-c?Q(\P{ *[7G0Q PAHCTIws_FfvA뭤R:Io6 )mA^I?$70C^ݑBLy GݗTE CyYMʂ2A2q*'~z ZO,_;ۚ+-327s\oTLm~o1u8.R kQޛhw[umr6RzKާLP\2Z7j`hzĸ|w'yc\ $)̗|DvlSfb4TOymvOjRpN-XlB)]i@:鷘^|y΋o"'S(g'*OIw+Ѡ߽+ m9QHj#&%[> jU*m֐tBErs]]҅6U_+p"|Ng[Z(iq@^|@,%]X/&m#M (9?!OҏCs"EvVte CXΖNxF)m[M:;8hbm ' <L^{3}-2k- DfܿBV8R[Ca@M.++-F +cGnEr R2!c1Fʸ4PUDBBAd]*ΒHDŽb쩞ԍ+Ro3Ҥ[D5'!𪩋fҕu 6G4 J Ky@>wG.H3iW%)O/RH+:aZYqM3=7A\)5-ĔOZvEh0`_v>*! J#ٔn6T*^pArc#UgMmŐWV\M}nN,p_0&t9v(hϔw88@A;.R9Ũ8ڦ3@5la;,aީ:4 TMF% @ֺto $_#YOt0jMbnotWo8l")a!dj}} j"8 /V*XM\L(:Z->3|D_#&t+O^Zl2QLiԑï%gʴ~j#mR=mj/B Ǎ$@v)tP6ͨN^ϲeR#M)Ff_f]GtoO{ ZȼԠvoBSUPωoIFkv/Yte1y,!nwiV75ņ'AT*q_bf2L{NdX^W #ĘicSEMa#3wǮDpu A7׾ '_jameK;xxqG:hu+2’# pJ\/橨%S B[ZvTj~P^U gaq %*X))aUe8ƼEgv% sܰj+Ɇb ѻ ܐG{pO9 /~Q ,K_1|M|tC#=T}d5ZU(C8?f_);2(T!}6-l ciA%ߩa܃` lWp5S;nX)`~P%'XԠ"afRۦF88hL^R]g]ǜuVbSo@3Imq:Uf9Mk}1/&qh)\/YW2 b@cǀ:+Mp".$u^: ixS/"Ĥ<0hX=#*3tj_I0[۳z)1-?f^y^` {G%ScH w}@CI >M0; ׳h4Q_|~Iu#&A"_(tQRv'};,<\l}zh`Đ@\ :A ! VGrXp/di~FԲч#bw$Nɇz{hxbS7@ ". ˆ*<{3m0A;UnS$X}~li();> 19؇- OlGoX=cY**IH$k ЌsfJgNeޣ\>=>N+PI^?<5Ʀh+sjԗ]h\bw܈T;M/zcyڽ c ؋TUBBߵzKӽ ƾif6u=x9-mWhdɉ2y(l P!@Ij]a02'[li E Pz y\#L%>DEɅ^C)I^dۿkmdtڼud jM\gLkew"-z$GpukXއddMB&rU[m%`QwO5k"m]G2Eg[}dpQ4 V~2O?!>7(PYPO`vńh) N1kġ.\)1!5b'vXTmFg@֯^ls{E6/JQw| !6{*RՍ $\ +?dFB%wȫl7wpI pEأ/>ߩּ31<9"ط->R;#;ݚ&ttSҴp !W_hR Z/u]vIJV^}u +vPMh 6VNH@XO%^DFEdN֩zOj)h'+gLc  2WDjqm#ԫd}`b-)|}H8OQwh]"{0+ ?d?x`߶kS񋶶83ߠ ѿY{M'i,YCS=+S)llBUE[_@!DG2"ꍙ}F!q%yfù0h{yFbf<3vbGE$AԾGToCZؘ sOgbN!qI` R 60#z Paj̔5Zl::NGi)Y\$7d~IVsjЍyHEh&N#V*LQ[v3sSǏMC􊓌n@Tw"̼$/q4߄~m>av)JsI୑E7'\Oڨ7eʒI|9'?ܙ%H+S On5?(]yzoarPhS\6=JZFfj10e3ܻ>IKONTk"8‘3Zi߬K!B)|}΢\[#tm;I}daҫ o1h bF0LJB34ߒ%Q%jTK?Ɓn9kӻ"Wx1j ĭIʘ + W3%ċ<bkʢhLMmR,@.\J,M62]a_)5dr!~хoDa|>0b#'2\)j:*B9܊1'~ .FxI'75ГQۄ6d %Rʨ#f89 ,> 3kAJ-t5@&{99H~1tGՒP?[MV7`jWƠ"@ @pS]j K&z-_̳]QܸD<|x~f] { !үGOERQ>0Ez 7#=9M{u>\c}yM]˖=l f*G@~}I Ci/zʂōJ?傔܂=6z؃R{"!NQCkFś ^- p녾Q_/N %ѥ58w4T0j_0y. o1*4o-̖n)ޔIpx#+LR3ۮn"F]ڽCs@֑e:':3""%FHD7! B3`<$ʝ\\jWط=E"6LNmySygmH %>!X:GѾ_thh]:݇T!Ax2,ԉ:BTOO){&*K ^$F eĆ&J6 Hvߚ3c<~ϯ>f0 2 'XgPCLLݤ<6Ki\76=և*wfFĔd.> r7QAct5}!n3UEdGK|,ĐnzjǢmr5>0P9 wi!-+tNQ^M}xD.e"$nm(\Sft]+:h%c6D| eQ`!HYʡ2l yǐ*ʀW/YA,<(gC*S8I/,ZrX!;V{oX׸zZK L֣鎺pP #{L!C#,|ؼa;b!;G ~SVh|3S+Fy_G,F`D#vR>Qk}?PYo3'0+Ys3[l9mE+E>j&~Sڍ2'U`}ۓIԽFh/O-2v4k Ed{Sdmz8Ia5 U|(λ@4p8+k/~Tw.t ?ѧTf+Dؒ-C>0L<ɔPL{nMzN[`t갊8[@eu&a˭S;c",Cs/cf='ѝ>yjbcA)30am`EUEB 1K@<㢈k{ "q㸄Q3!&/c2|Bwm* Ԁ',ڋ`b}vX-ɷVS$_AX|/}ҒOOg[ tc_jf5]}A=#6nD)߉tºeZ$~/y⿡к_Ge)ZNa|x/30-)3T&X:Ԡ,荙hňڃ"j7:I,^yzN-sjp$ˈ+ϳUhn!1fdgMavQ Tr{4wyلnQ%t=Úam0 KRl ꟏?[8_L^bSD s5Gw^M&9kSWTvЙ˴B~#zò,F`ܚ_3eE.:aF'lوHW/7ZiJ6R|G6sM|$Q 9BC8tyZο!$ij$3_'Ÿ4㬙QkQg4| eaG["xT.خˣ]Bq 7mmC%qeWpXxi*,mx$'P@&~(1'|xsl9܆Ct&"2^kS4!o{FReiK(C]v7ur>@٬)( v8bZ?KMx:w);Ҧ"-~MZnxnX'!K0“0IK}SbsM2g|X*mNha7Qle!c!{[o:;2F%P&bVktp42G2g({{kB`w "|(v!;|$2lJ%C[gQ]4;4[ ԓtȫ=Gn_ʄ$㽇oۈ"Q_}SGTĒc8Iߴ0B}B rTqz'dwO Ul|x2&ŧʬ7N;|ʵϛܽxSR=jMm(Šc0CA/PXW~/:şplU.(9m! r7o KNHv{/C.i>;5u5) )<6`"%{ճs%#PotYHs*5]@0W{M8S~*.\ \xH* j#+[v!Ej+E`cAF T>@]㺥j\LQBiI5>0HҮ"IRNzţ+Y\ زX`2vL2jg$H{@kј]쭒M).NC7]^SC1twӕh5VR( I~='xQۅ<@Rwc-Y!;Z$\X$(ЏaqrƉi7oUVZLe^rb9,{e3. T2?)vŨ"'a/ƦE%ܑ{w#ݟyyiRsqΎv"_84zeVPdFck$|wr T+>*ɥ@cs,kFPWY{]{͘K[{7W3fqX"ޚsMVɢ[y^bnyIZ|e|D HSɵBcQz6Y:фuI7{cqzv,3n &Yh J2֪E3;yl6R|O+q%)ݹѴpgzj||f-,.tbN7[&`/ zA,2UURS{V7yMt4uf„444׫YvQj 2eAibkz@b=OE6yYg*Zt@6X>${k&}gly q\5jC#]g1>!:D\cB#Ud<ƽ =`FI&!ْQEC SV)}({eX,t[Ut顾riaug m'݋z :6!&!21W/1-i e,Nԋa /iAz2R= +ڂvn$ĭrbR(BKߋl<1@y;_9 Ư>m+EWd4BGs!զD:L¸yd_"*@\'ﵑp5MR`c"mI\ \ETHI^+xVFZ7KW6A:YdlwwZ =$}m@LCNv߀߳C+`*N_SHnGUuOrC[(ҡé1ER58%,T띖-Ų2t(SL$-q ͱze O؛5wnaa.ZٟY4ҞUMPvDzL污C3',ߌ}2uF5'b *J(2W5Lq6"ԣģdEC`:v!'ЌDnȥ1-j23CU=YlJ-Ea* q|7flopb| @pTio`=^E2i HJa#<7Eu@nFz]w&7wa?n O a|rs5kG,ƈ[i1١Ŝ(g8];Vh]dƪrbljW<#Jɤ@DD̩m:q_6" _5xrKM'/Fғ %`:gzYSrJ2=Y(sw)QhL:;P0YHI݀g,Y&Nw (r?dC_b ` _c1) zI}LKn6RUFAϖyȣ+,ZoXpZl.IIKBBȥmmw:/5 G .ꁅ&mVb V!c@$7T<,˦e~0fmg,e3xDיʁ5 ͅU16+úTJ"Cy` K:Iೢ'Z!h}{>~n\g1vHISb*\3,>܏B]fbKCsB-z:E c;c(u \ZTfVBt{h}uC'e27ՕPskOVC:nO(Y.woTSN% B:UNIT\8 ЎOX nݒoOeWѲV mAmG7it*@eU 2X`AN`nsX=+r]|F1S*Fsm%pϹ5Z4 @*6]"] x#S z4q@? H-gΒoӿlOx`"k2ڷ:.`r #u)FZ/RƖA2³("7 %wyZ ^_Vʉčvj"r&u.~1~!0Vcpvol1*vV7052l0rD\xHU3()N5/`꓃G ǭ1.ks|$ajĎP{9Ux03D~@u S 廒'wy!k!oRhse1Қ!p)K 5mX)$f^(i9!_NĨ4QUl"'W!FZo|\y/c>(4 =#- {LE"*P*ceaMi"9I4axjApkc0Y볣4쥙Vyr ws֊HNRzuTdg]sl?鏊S@41zi`41Vbi{QAR1m]2Ur5Gx*fƾ Mf\:7JS;PHH=\[yZw#ɂlPۣ )) lOv[/1X\4z&j(V0ʑX~8$n4KByOV8HN(@0b%0 *SMqaEY 105˅pإިMOvש}Z#Ќfk]@dωK(ucyM4Bj!l({e %ㆧ urUAS-jdH%Q;(<;YpPEu^\Qɶ`oxb܏"ؽe":ܙIGwS%nô?ONN! 3=wrpYkV>8q' UX ]Je] B:t}<9K^uVm=N)v?,uo:° Jemp>Ar1Ȩף;@tRgn/@F#Ӂa¹7 ʖWwD0VKU=d}:r; KbNj4)NS.C$mSl32fh-Pn(=1|t8o"í*0Gxn*WP>I¹o41 "{cSdK)xXr$A9>(1«`sex BMWEpy3aGoB~w8'Lgjq oUDk|i[h-L@'G"dZ_G 60d 9y%luY8@D ^H },%dNSkaorpyiAPW m+EsK)>b_ޯUsrԇ=r!8qVÀ?}5Rٗ=?b|wFe*x*o0RۥS0cm\m7iڊmmRg2{m8 s 8b_:v%wRª7#4ѵ1}A>*Ap$&lKhk0 V$n"Tнٹ)nI/\ 9fG~@4racﶹ&e_/ \iȰ@qQl ϭjэ)d]BJ&$!`YI*J4܄`2,}kXz)G3ꃈeOqSGEC(  ڀ+uɌp =CiZyU*4]&L^֮M9."ĆM7m*2 pB׸& G䘋?ip`9DZԕ4uU*tq@c֕ "3)栴zuh^;i["ⳗHtpL*ʦ*,U}G_^ ~Sw+՗$Į2 ]6-؝ibiŗWFϥ&ƄI_f~'3 pnݗEg;:FWz{epϗſbӷ % OP!,Bw3c`P]g![Hxg2ʅ-[wC}Ss<)^x#gKt:Xmqcss\(K#ȈZ-:^2gc|Z'U!j %'ʠE2w}[WUɟu~knש`Xtcjb\g,ƄA 0&>%Łx`+NdEF,oƻʿ,!P*Ȉ\5&\B𤦷_)e {ņ&ʻWO9 N`)18*DBrBbb*wJ]a3 7*\^@*| 郷ˊ{ K,MZㆁ%0h_*_ei|#Tݣwl,[BJT[:|r];FۭK0kMYVe μQ{S#Ăs]a`* ӞzS$;%bht2NєV҃ ';%NZb^q1jRMl_?At:5>4BSR5pE)w,4KQ}^kkgVr٬yyҸ_4'n7-Cޠ)~#EbiA0Е0'@ң@cCՍ,%N}WO7Q!hvՌH˘#rKs؄HhU /=~k`Ji5/7|ăKάΏM$uшʳmL>}90J\J:.Ij?Ȗj`eά HU\}q-duxP}!f4LJv<鐈Ƃy.H|J )qv¸WDҗ(tk ce)39 luL6KP1Wf'pZxYy=.knlx[uޢ]:( ɿE<ׇjaSB0E(*ʔ*0 5hEjL胾t"-58# 6DoxC*]<:~KK'CK{K qG̟5xrc6DÁ80U4`Kkf@P۹WvPnaT1WR2,87jqlͰw2 +)]l*u$Fq:-\Q~=ߠ6[^jd\2=Y,4/(2uR|z﬍>SKǖ㮞VU2KkK1~}z:Ѣ͟qq*%5_!$-u|+,Xo*]xomH[E^&F^Cۃlgj^vI0dֽ\q½XsOxqYYp, ݭ<&=xbQ%=+Xw [ QCX P!L~C 4Ӣ~s2/ȅw\3M&fQz#VbFK*)Z`}3^LgBk GV]8/LἨ݆Zxn P"[9H+|KsTG?hR=;c98+n5.2bz|臅l6B1#>Zf2~Wՠ_ꉹE E@B"eщ֔0⥺ ^>X¨p"(qIrc y,VlyeOzV|~uRn+V[uD~WYmzRi5Pe0ea![z-GTHYbJٰ>A#|Fqɍ5:Ŏ$5/{nP!iG`~_4iNUbls% 2*]'um"OBl"_n/חaX"]Pj #C^y\Xd|dl:u*[/>•\RR9.h˛Α"yX̦ۻy٫-G5j+Z9kA2D;1:`؇jώygwlkAlT!z)v\Z㦰SGA1:\[5v"Z gB!.'MSR+ӣkT-J4$T2jS?~–/ LLrR!FN;x1ʷ>+fً>janpv@2tXs_ WτwPO 8OX}NRxd47Jqʋlٵ_^XˍDY4،_Sv`E_-DC^z&_ʻ4ռ/YL6zmIIᜯDV. @ ‡kHJoPz.-IB*᝷^:ݤi?yPaT"+ꎂٸ ˻P!X45]XfPrU^U EUt x7iv5._6LUIuU!DCE@p0˸hAȤ-Dٯ[qolC+M;8[ZUl3ِ~o5 p% 03zWcEpn/뼭zxm;fIFs'"6TIds @jWU?\[B9cؤ5IrONqjK{Hj"~A1T&XBtRBOzcv(I'+O1YxAKH&T[܋)rf%4Sf4O3pX8:ӵz_[v :!Yv-+K b 짍-LIެ&(Nj9rt$~Nj~S|FxB@ǂg%뜟Ê+([">TQhCb\=hQA"W-P a%IzbǶv%d4$&LOTf8#0gۤ'"9ߐ/0 eY}S-Ȯ< pC*^1$d`Jv%gm#Lӭ=$U G)_fΓ/ҢC S̵e1D9Av5QB`l>ɍ $wvNğ] dciLu;2vi/y1iS|B #E\,$D S5|K3amF[~&OD:D @àMPd!zk!XKt< {\y#Lj*Ñj SR`}a3\W 2Q3[@8r=Sکf }᧖<E]חmn 6JBp %0OϛD7բJÕv&-|> \j&f&|rT+i ghYL3u~YsB1f?\h a]3u2:̦CQ}긜[I{πy|p%4 ۽Ha_.i!([%HџcupX5qlt-^efqQ&-S'W *|D8SFɫ/F;Md&o8?4>-ڗTTEp5PZ寜 8WX}y_|8vM,| X&עp'W۪f N*EEvUǓ(\HXH@,=}ULy]&d Aq_8h \b@}RpR✇U։z̾J, AʬIz]hgBzy/{Kǭi G].Hb @&faDdaߟE׸W sݹ9_6*υYʤ&\kENJA0?uWj$l me0=ZwO[r<5 ={z-q F W墴*ʛ1%o8g5bŻ=tu[(䷵˷ݳNgVe yC3uc>^p7*$NRyA`0M^zưT0#}J\9 9fřbb.xHnbH<f @fbMѭvE\ӂX7$F8Er;fBX5Ⱥߌ Z s΋$wؖ|փ\[3NUQlzxO~ĪC7ۺA=S2ٽæaBd h.U |LKxjGeT$|WO .GVYoeiJZ. LS s99ś w4vEк[=>g#܊̆pk Aje$nH#s#Ɋӣ/NW`C9AocPA& Khzcx B)P> tnꋜP$ޥ:HKh&Z#E(J"t@tur5lltQ3g\4 RS:6Qh݁V=wjs>aeQɟd[G/ďw%A&-tG`}F C+^fܮnR \"hyhT>p^עۆp& %ҫv$9ܟbWaj2>%tK]5JMFCpTuzW>' u=qTWB۪iTʧ7!$pdp)x;=duW3zf@Y ꒔>+<\Pkh-n箕B8E>>)2y$m2dFЊKG0^J`TJ~km\kD#j2՘bvz sclqn͒RBjlջW=aZaPW+_q;0ļI^`2<{y &çob&i:oD tVjl7ywXG&сu?*WK*5#3[|7+04d׬;*A4 \dW%{\2+h  .PA(>W{\?2ҽz#+;A>;i(}s栌a-Pv11v'T6]$?1!v|3{4xl'(4ґ s؏s*lNÄeG +FF3%|ïr:C`fL\Ίs "`hxle:$- yڑ|J>:|FhD.d|ZkZ5)qYfnjT|sHGOL$~ZCWs!x!杵-mY ktoРaIʯ/Ƙ^VW Uv="#8O'?a3t<ݺSD955t!jȒ&}t K7ڗi-'sId_d_B܎in:k<.2d-)/DVǹ/u,NHI,]* ̒,»nr㺠GI;y_S_MlaA]ær%ae@5g=exAԎ_5oOcS8h]if9"' ^?su<mamSfbYߜ\"*LْgJ7D4F bubDy`z:(֋QmtX{̱"h 4 {!c m*{5n\P3k;=αDYɢN1aT\M6[ukJ@KτkɈd$‘KljIߗ7HpfG0`"s=Y#F4Fj*٬a^$o\b>*P0Edy%T/a 23@r4ϋuu%x|/ bcOb v ). 3/oNz:2^ęb/onfN~K>x\ekՋv|g2MAk z!>{\drLJAT7'T)iUښZUo4Z -07 J7B;BEUNNQc\8ۦI/3Nr%tkn'\L}=g&Jh3qc#%_5d!q 7?W}mЬ9%> @-D:m~.F>P'J}r\:ʄw:t_ԩ-|#;a_tuN&^F7UPn =Ip!s ɱ|*q3iCzK[DvN*w?tY9Pn4fd=zc+Q 4eEc{W |g9jF$d k m,S%L0B&e##?תOmC$)F㶅 Y .q7#OcP{A 4`X12aX_83>PZ&1XGMJK'gi]X0/G׏19[|M֖i q(JB?),}_j CGX2xD]q AY6e[pcVۣ3o^z&EDusX^X ek(hE $9z6c2;NwEc%G0ΛM6"DZ$xضd*kp7^Emٽ+*ppނZz>o3TFK=k!+6?{.qAk²Våxb DS$if) x!T~RGaXi]2BI 9l~4.d ұnɧLeyg?9=C충4q; 8^JwH}J0?one(\^GvqeuM4wV؏q۱P4? *8hE}σ\+;r&|9Y`f?l Zs|i.|43@be5i[Tg5MUWIH\)e, !Txs>){"5?u()HGudBZt? BI!ŧMnh1U!`@$)(-NZ0>#b,|>`M(:(Ԇ J3_r ae *_ 냼+ўü ~bCJpU&>CpL B H =l’.F䞀L,pAJе$C-'LtfIeov+uj FL8$(~vP3*1X7'.k@G7D }@8%2:aT~Egaь:gX,7C(dukmߕa7{.Vi<l7mS>(rh;v23a{;:?hTCQVR0 FV٦|'/& PPq9KПOn}S*\[ͫ OtbCeiANjV1q1 Dδ˱̇F܃! ز.Cht:qq!k8sP3̽Me.B-HTЦYGJoLj+Jmr>7ラxI 2]|h[C^B"(9pյ96hγrs*3BTӉɬ.&UP߰#l=M΋KSa]hg@h)bSTTrfVezHpn7M|NjY(H/RoV{|b$7s:\e%HaqĩnŮeLҺR v0 ;c~1|Wgg,lHl^OEA<nm جbƖ GMHq"jk}'ԦxHPAl.70 ;6"nFhkaJ&r;~l梁n)dA4FQz C/&%;$&=`pܴн-^e^^ 0{W{acnv#Kh-H*9P`Ӫ+R}Jwƀئq.?QMVh\'x|OR86oX!'HejK&AOӴx5,I8fjᴇ5x [?Nx0W'4-Yzz?Vʁ"ŃlyB-fTCU#&XxgQ}5}pp+t͇vT@By'dBʐf64Mm'R tFj?T_MetJsm;B& FQQe5I?0Zȍ>;ߎuq} GB"Հ@ȻCx7HJS7 QTR C$Du%F` A_Stq5 /לj}4ql,#|f_gІ` Y:]gׇ1тIܾ†?3ւRJDFd採3VDMLOch7,RtUx11&q<1U3E9v Q @mKt?VnTzgv$_Xf%nd~@lʞψ[HThnp nT9B~)_''\ 2j|\7rMN3`8E$GHIX, 3iU~H Fܶk-NO3p5%r[ ]wæ] צʕxkrpm/K+L=ab }DLEbGcg0ٜc(t\Nk.N+ćD%VT^kq@P2JC陖̪$z #Qq2gLw$mᔠ y)Ik  *$BJl'jM!T]X_7wap,3v5'E5ޜy>JʹprYyUS ?n_lFu0vxJpHϼ$XêidjYV"!zj,be:&-`_f0DϏ JK`Ww-|9)1D_W.DLujHMťXoEN̎^&)6ٴ&p{]WO3Û%{hΫV#;2Hq d90oCƕG C vR~7`p<4=6 XBDvmp󦊣˩r7owD+X605>jp_rMtP17ĉ wf<{.v /uiN5!Sxuv=4/[vF%LMV鐞B8UtT>{JgQMk 7"f<>\BEK@Nn%nROmv87P~ڃ++kb'!Uhd.C:ܖv39EcW<)PUAjW1 UMy\ -•^ז0FH+#Wyd]͂0KXHcTeq&!S)KߴDeڎR`×bgTƢjOOV~Cl$REL?5VA; >wӵGS B9Ld 28nLT9[]jw]!UD@'xwzY/PZt 3e #GlD]|C{ʖuw%glم|5B7=ۛ' Z+Ða>q*NxV%<מ<٪ pb#x,o7ҝ~9ߥpٖrW>AH  j Cx &؛bSRY`I=PT/Th'3+I4buX~ 'H=u.:b̤sw}$/[T}8R.Mq " \[5Kv,]CIGܪmH|}⧁Y؍L"WM&}LXed,0lY`Br ~\}|.JS^3>L DbE o#>[%40w ֢0 gi@t~YyW,H TNvE UKBJr𐺇1ob S[9!N,R.{P9C eƞ[mBJ 3/t^R#?ajF:/B}}2*qYZbZf8Syj7m_f,-_^S|$4*0UVϤِw¹\x41k7g$[z r+19driĽhcVADI(nЏ!6|Hw$RD{cVА kP ;=`>ɫa-n T]\x"qBO=ԻQL20#M}'uM >[w<K)tܹ`~xnvNYM"m lTM|9]U bBvh[͢9O(42?3}~ W`rl5p38%ax3! dH<\k!!CK`F9c;IycʙQjB<*?}P4lڡP6>le5eu٠_Z SVoC5n.C,*jw </qL>Aخb=m!e)լ,B809Tgx*frC( w|zd}k~7;MכaE%"S9Vsp:#}&{6Xyk`:CX އMڇ'Kko( ӹGS<nw(h~i\c; /bzO|__ EKSLPn*ˁvNQ^,| p_xh>Clirơs!aŊ!)&)p Ha NY 3a숈ę ~+3c*n˼; ~-M Ż-wS)čpj(daiyDa,Ӗ}' }5((5@aGFo,yM{PvbG8hNij-f='FY<*.5V.T+5/Aٶr37' q38> .+u&udPЎ34o`>Ԅܢn ^v[ʏw6#ߊYJ1P Mr}몫.wd5r{x=cBt ~U/R \=4X:%;GB<74{Q_y.qfź,1J,+.Ko#VsadK{a< IDž1Y_,ğT@.cf!JqHGQTU?2T͟?OYav8`/kNՌx۟)'9?Tlte}QS/aXJΧɹ%pΨd'dBXfe ŮL](fz$O#P"Z|N4IJ@ 2SڴwfYp rotGdgmEg&j>fi053A@Fgs,X! _d(Fᐩ䕷:8#UjoFE1_>#F8GRV)bZu7׮){9ܤ}'2NVBU}a+!6ǃN!Y Wdzy~tlKh6&#r`mUOmq:JR7AfCUEJ"h[ʉkRheD(ZWXG㓵LH[vajk]j l݉)se[un{BV_f (r{CoIj?e. >EyE1ؚ֬bNjkģJ+y/+(³oVp :H=7D7r`|QhgsFL7ș1-LJ։6a1 _Z2!%?|X|N""C2*OᆪXt2_N+.) 9 Ǿu-K~)ux]_W=1t,].[ڼxwёTCK7;M/ɬ[Ub3_KgkGJRfPHpwڃ:? )g9%BB\ĽoȊ.T*/"wvjiX |Ǝ $s֭m+ÙqW`ۡ"e3I6Tս*F5 '@4!ov|GA@X,OFT2"(n~ByOpxdU'@kXΓ60J 5[a rmz[m3d<l ƴlxi4N7\߹eb]諭hqE,BKT]9Bc %y|& hNQuڂB|K|N)A"V5$.>m\XzdW('pQ=s ӆ̼?Mjgx# ػ͠nT=3OqV{C6GM! A@ґcē 0BL$`1.qН(Is{ wfz|%{y7!Gomp=ݷ`w-I4FUсk{'ކ2hΏJ<=$'% U,.55*3+si=%TTu4F 7nR*񣬅rLlbzAݙykjPSCOs,'I3]igª$LM`") tof4B'i\ZQ"0Ed4qn O_R;C3.ç2ޥ*MgnVbroӱPͳ^FstvV滒#|ί7Rȗ蛻z\OW~}'6K}% "BxEWիw;MPb9zB ZbR/h_'UUsB-ƃ`,J.8 rKVA̷ 5a"s׏aҁʰMT)snڏp4qHɮڌ;{n?&$M&UPŗJ&)l~]P.(jٙxt,8O:h)Ya} ]i)"?ZY.$;^Oe%99  Y| T,{ /EG$j1RN?V_dߎv!wصSmF*r_@hxy솓 %^ Q9e\N'1Z.WՑ,?=dO3G"7Z Դg|(xr )u,̿c6!` m^]a͢&{7Bϫ7eyF?8<(n3oE]lBһ$%Bz1AppI%_7ZNRBQ#>ݧF1e' 1W졫@+B2E_SGmf*u-$f(;쳅 =V)zKr*ˈ77ξ\FkAe$R:-,}d |{4_u{zfj҇]h;Tx+14ZWGJYfWkD;JGbہ/CYW0odܑ ;_oF1q3.9CF{jײS`'(@ 36&Z3dw~U5@{&1 + |v-H?u8{};"r_v$G/[%QU|Z!NjWB3#$0pJZ\9v&q OM5b fÌ$+oJPɴ a1yPuDsv>AKGӇ,EaG8 ڐ\b qtdz|'<]RW@ OFE&.ӕ piL>$nw,@ ;Td ʄ0iuw>yߍaEҟb3-㦽`08~+tqPI9sX(Miŭ_WCCBYK^Re[َPXS=OR }ԯy(-I=_ͪtQ XhԮ+h)F%JtmG/csepGe1J7Wix²6&`5DPZ+|\^>:NLZVp9G-Ιv\Q扶\e}Iqb?Z/y{65 +>qXfAiC:]!;P'"wY9FZVC ѩM~6:UrrR}}Aj[ɦzk4;5R*QQzou܇'}Yz B/j|RI1*OkBܟ8WhE#Yo$Nm 4N;q2Zrir{:]=&1*nͨsWpo߬z,"E{Lvڸ^)VhC'@Wb[Vy70i֯Aƫ7Lp$he,ga)"&ÀIFNk*PzT bmH[G-?ՔShŃN3xXڿ'4;r[K4wRGK,L ]mPB8hFIkY fYC3v6({]bO}BfIt 8ku`ogԅ?6şj%!~!>g))MS5o;/[/} oZ)iB'01Y&L\L)18Hخ zޤ $:Eds8 opGg |(/` 1_ڙ'ֲו7o$rЏ>𚞫n`HLt K(]u5hl*b>Mu:Y4̎:N=[wOIß0 {kdM94. |bhsH}fSV>'mECg^ϐA<z0l퀂GShȉĚk#ȎM6RZsQ\t1(jn9)l!e{]po2?Ǔ@/SB/.msNaN*8-%~xgD55|gANe)"L}q,:,Fp}V-5N0J4qr*]iߖާ1#_i G*i[1]eӣYvO1;Tw9ޚ g^r=kNB}gƙ_ C5"Rs{bB' "!4Qv-pi5o5[ RB AS$sdsB$YF#?Ɗ1|o1pG̏'Q!$ iQ]=l!8|e2/)7.~Ur51Ҧylc%},1Za 'Ճs[] (|mPN VІl~ӖHMޱ:6 ݩ݅. 9{p&"q=wWﷀ@q[|߶J|uu嵌tkJ=`I@Ա-X[À}BΏNDyI  |sZb9/ND `Hnl)v?MV܀d{p<)x'*I}0YV<6]ӥrvq`D꫖뽝c? R jv1)'L&>6\Qk8PRv Zc}zlFa t>0VswSKl83I! /Vܠ$>lg[8 N6kMz /2o+=@bdt\NP5B݊xIyxIGQV0q93A2#[aU&jE>FEs[Z6vv;Xն;(Bp)j-tJ59h!S[VjQԾ|*}X\V}~șq@冾 ;H[?~q5+Xkьnp B8S:x}C>96#SܥA>rɩB>&) ,r31W* ]Œ8:# ,f[ 3~77p$]ʕ.vcgYn2c/Dy^3x-h`19V ye N CR9pytC3]-e29. _90\ar2#8$j3(jE[5s>^}iYM>@tR/P <PZdW<c(n?Eł+F{Jnހx8q3{ #ek^zE "¨Ԍ[ݬ%da g>3Y|^VAsiXLfjf+Z`#jl6=|=))@v }@arPLx0..\Sr ܑt)^h镉(pA{xW280Y}]-Ԏ+#z!勽ZFcy oT5Z?+VD0[9)VM9e(jՀvA?"% F}-o=8C3$x asJTm¹_=CWkY84[L{J.6^F͗8| z_S.!NR&b(K.|wgGșL["AgM4i}s~O $&SǪ1=Ty0iIgdg)`CMy t,@"i!(fa0aY:˙ ~ oob ;U+hI-ō#%NB3gv;m:igʹ.I /֪KK'H` rbqۄHZ*WȉN*r cgFoo6l 4ǤyOsI: F:V8p|paa7{/R?+3qNDh/iC]OI:1=ܟRLz+zũz3C(%C6f`cn:[SgS*ҙR~]lV)ϧ앥8:'X/ղ\  c&j{!I5d4aCf֛"~ɤIJHvpWn8ٵAaEd Pw.f߽?(dCE:`3-m@V|})L-.eC dT|11o74'ZJ0Gi>oh>^h9ϡ%֒c-j(ˉ8q`t_F.w27H7:VDo<ϊ18&៑z=MiĬxxek#\hʧ!< z>t'UY_8ԣx cENS⟘Uf3ED0ۆ4ϧU; Hpn$4YaKKzOʕLNZDΟ:or[g!.~駆1*?QHJ s\39zBJrnѨTP\,fѳ*V*KI eٚa~|64PR˯aSWn)KYGwCXS9 n cחow|Q?i^q%r{#\AC;P`ª" -g:$6͇LD0KS,A78;ItNy'M#qZ\ehSN|8uи lY`E6YmGiƿZ$yyc9Z΍壝s^/e"!n} Vfu %]O7 ,R!؜[ 뇁.1db!|~Uk9-:or0%޻a L\s12N(:kVfl6Wajr))pF*jڂզ2Y1C?! (uupS4D]޸A}ʔ]<yOR+>a }NЍ^"< jNDؓ/*:lPtYpu瘠LҽZ`4JRCB ʁr4,U[dL mHh b2 _TIPw:n/[aN̕b꫟{_TηLײhTї oQ>X‘aŒZ8nkR& jҾ_VZٻh鄕R vA"^iqz'"=XvY!JQ8z'B^K ,՞VD{6A/i-u"-0g4Vעύ[K&ȇ=A16EgBJ|,E1^$C1c n]Na Yv5d;t8#Yo=.^d:,](M6ϥ T` ,?;q#[o씍S": 4ZVX8VcF4DvT#8-",̡#\Nn% p!g]-8&<+Wa!ǂ'P.ӇN4L\*Xf 6!\vmbVpO:ϑ5Ku`9(m꿏IS3.,!-^Z$ ; Z nӷ䗦r%)\y%=b!Q xj moPtZdљ|wrw%))T#e` LFvi Yip2$קCкʆa')tƯq 31b=.8Oay8!^A3:;_ `f= hE].~~mHpV/M),u8c<+^65~SHRWTl JL`l4x!`~rnjRnZKUqġ&\@a HW'iaÒ,+Q" ,_js&F_<];],ǚ1P /O"p=lwkF|M0:mD#D6ս dq&0Z٢q"K]lܿ+x٬4I" z& q BoUFp U(Gte~ktٍiE}"q wQ7bq]nF1=As1wSjƣ3̻=9nB/Q"A EP֋ڔ~'|\J]ӢK!و.=HBvevi37k~c&kO7H57 8VjyFhO> UJr W[lrbL0Uݜ4DjPd.[Dg37J`eZ)! ^kFLE{xt ?2"ɺq5ڴ4w{:M2=Yɡ["[]<ˢzYv 7'Yd6?Y_<9)b71@ P>,iZj5ι1^Y,I2?mYC  YƆA asFqYU-0QtPkA޸W-@)PJ&6ziћJ9g ]g#K$M(%Ɖ, p\I4c+@.mXA ;bLdr<'R|T\,|HVu{tA{Z'ܭۃ,w m?-Y$#]KMҮAO,o7˜PjS[p"v}'E"gT9||R=Z_T60mihA>ٟN׶%jkֆv$FZYKɟQd"u*{F ANJq= p Kk[>lAiyPB+KSAк9ܘTX9ͅo^xNĨ\v:W}`񄦇^8͋n7FN*LW+l|Y ispB{lC&'lRX>z|ĭ"7b+!v8Jon}vRIMf/ EHն1 {%p$݊@u?s<s/|N7Xy{flsNnOTVDc:n?>Yp4sV~8Ř] 90<[VpM$穊+JBE #d@|fg(8!͡xQbuPj (mꡖ/־LRu'uS@)hk7"x?Co8*")dDVQф,cd H]>z-] &hXX !#C*^gVP /;,Ld ?V|HHﹶh6!;щAI/fl}p3 ^Z)3l'$0u)|!;xu:;Wa,Qb-sUu/Yҭ{[x4g(Z!g{F>MfDis=d> WHEdn4q#w*e]qZZ{23Q$9}v{]xL.ߏT 7>6|<#ںH:(@`2e+ pHs7ƥCD-ɯj!,ixԍSxRA9 GBO)7r;)uGaNY)4w9PV:5>ȴr8"H7 GdV;l4TH8*Z$ `X1mǕi0E]wPLd<*=}^+y1ТɲS6|x`psǥS%22dw앥ǍTm|{浊au۹G5->Yy(!J~Q(A(ʒRY7bŞ,[QX[7gvHޏAbuk];{oG7zkʕ,(KcPϜ欐R0Δzͪo^^w[&J f`S\`.MVTFyd%v/s~-9Vcp ɜt_ñ$(Q=/0 WI'>^0S,I~HϕI^r;g$60|0]\>mZ=,AZ5O^/8i2r!_Um|rZipgchX[(4I;<T ^l76R~/aǚ?۰'c˖c;hǭ|\@_صnM:8Q 7,ꊵqQ K hbum+o!NZN-DQᠥ$M@J2MjU^vd8/U. d'~+mrXDS)t^4*{vk#_ЯhBKp9(>Uqfߕθ${ o!멘\ H>Ufp pT~X>BREE1ݛn`^>}. tM4?X9+Oab~ΝTծVݶ$ݸDNmq{' '=g?J͈+@rm6#Rm6$|ƮC9(L] u8Rٝ." N486@O.G!W>C1fK@l9VN6Uq1TJmH|JbFiѲrZ8 ĻN7)$`wщ{<5%loH Msvzm/B΀5uE4Ml[ \0 +:j]nO|k;@1OlND4 ؐPovPc#%m@e˔(Zj:.6RO)ZktI|7լC]"O[Z<;1xݙ)xCnϣJ0}@1e)p~$ϒ./H".e7இMrne(ȗ7!p*_F վ hUH#0dZY>h[PJرɓ U8XoC#Â&7\Y5"r#Y/CC޹8$i<*&xF Fq(tWGDPgsn%T Ufh᤮lDĴy&k4llb!9oPLUE$3#zvB̯V] ؤWR-=8 % yȈ'lm$ܩDf>@^/pꕥj\OqE#` S  ~TQJKC ĥtM1+}4&2҈&c?c`6!sײtrwS{Wi37Irr=){}ᶊhMS${4;V@WHHq]7WW;j4lXv$SHa|ٺʛzLκ=[ 2{βgY6H&YgX\QDlhf$ 1 UexzE."~+8y{XK;mjE (vϽV;P7ĝ~+~R9&̬UɄGm8Y>awxQ!{zWBi/ʱ]%fFi1u \v줗 o >5%=]37x v89WT(ߍ Wt8paY.yR$3TBwl t5_B$Q.Ke!u }[o' B@.m-U^rk/S%@̞yc_JYIr1"Qa!EW V^$ѳ=0+lI`$8: =5]P a#t +Xt آ< _O澉 UeW;2L01ſtmQ'h|)>52 gGoiKvHgVTaѫ])]?41]{z,*To@V GmDnw*:LC|~sy_fXT |_G6k }bS?H nkZJ0ťvv 'ʓ%#m-ZH>Sc:srRx3%LA/-@), ZMTQ+7Qt@Y>w{jf2zlAɖ)KN?C٠`0cj%-pRל/)5r3NlIC' FTY'3j5RJ 4V?-{K0Y:r⑈Zݟ<˸¾͞l(I؜ ]^k7#piH"ʌ!g/XgK$+P3x^ ҒdٸzR?Y Y-.DŜ ӨȎ`a>M? Uf `Whh3~VP(8/Ul1!?F,\%yc,}/wpٸ=OrRz]GKS1+ :ca~zŁN;hqb 4s9+/__N C?HAůSI=JNvRD ds|9$O TN{g"L|+J^y]ZY؊ eI?Ehxu >1K[J?3ygojԜݢ/&rq봱|6%e:^g󆴿53処0W1lե soJkT3RᕙL~dHN3Cz>mΝ ._jX'1Bg3& ۣ_3BV!6 JC^Yh?5^c \boT9ìcN/ߦ *)}L;힒 Sl:IKSVX6 MoYMK}gڿYhQx+T$?2;m4Lh5) CMSbMdО1aTbyf$:-gV=ۿ ٪$?c5%iYJ]HP(]UNw,;(ٖXzu-Fz=55Iǵ "f I;VetA) ۸sg FL ?9.׵}+H./puưi-`yc7v<-fL% 6~+s'GKp˜W^|L|T֛XZrrnb>YEǟ|tOh u!LzΞ3{ƪ~`0PW+u>ELۆK xIS)N47ధ4-tG Ot,ȫEP&`" mՙgZqcTi̘+^Θ`6`݅ JlBAR~Ґ tpfXܶ!&}Dwl)j֐P`X ȣi˙Lpk1^>!#GQy݁v(dhVYnwA"9B2BtZ05ڲOmTd+-)ITkbn؂ p| C4/+Jג5̔|ŘlwYxG|(z7[g9z& sƼ$9B*U ýQQ7(k|̯ йj@Is<ÿ{/᠕]ݝT ϕUN: hy'75ǭNBW՚ZEO j:*:/wPS*#]I(Օ;=!I +D Njs! <k#}>P+D݅츻.+1x'"(ZԢ8/k:x[VG:cxk˜2x/ VPL^1oBSZ턭QE#en&h$REdծȷ_ZT:T2O| TAkPou IAiv/*;(5ѠBTޘתI4DRjWS`l@E:iV_/MgKO^O}0 3xgb-߼HOQD7,«.\ǟo3)H2TɍSʔ'QţKz \15_Bؒ€}ݕK|YxzY`jWGA!kk+߹r-^K+pds-B@>ѯuń`P<&prN#`C5OOО!`O!PMSI7/T1}k1Η Akm04|b.O4SsU@? k*'/vkIV p7Jz U9΄sX8ԟ2U D>E@ST!F$= |TUC֪ul}y>¶ SaIeJ[L05TBj@ ø~,}, K+/"`@^<+L=~Y] NZ=2/6Q`Ȱ4$&#@z󽝉Z&F++y#+0 .L:\(VD2nw" "lH*Kz$0O*<;'Ktm\y|E r]9 nr/aOUOg1XpÝ-4pSHJ+EyOo͕X;lOuGZ[YcD(P"[ oEpG1Y+Z7ZK??G )j #Վ2ϱY-\TlϦe{Ә~,nO{Yڎж׿nڽxM|E:ѱ"՚f8$<@7 7/ pm& |QmOπr,jDbJ6zl˭ :)}-oR~#F ԥøa-~uF -xnPTŀ|0uZUnz">?&kCbgB\Hz@zN9uqq+J #e'SϪ\źmW‹X~f{Kq-vC5ĭzOAyNe%>0jڐm=f'BU9F0H-ҏ7O2!%z+Z:FDG 4Qɼ/!@;@zNf*\^p- 1r~ݫ~ LCIf~ 04푛PEkK]2& E"}0vΨy%ςģZ P-nTA0tgF CX}TeUX 1-H7aN0E<LDw2XxqMa+7&8k4xgj(߬o7NԄG\xԟz솯ѓs]E4] _;ɞ#2$gt &ctq*']>&D mh#A:OgbZ &ܲlpn9 Q)wmT2*0/mI,l/^غ{Fx剛F6c@wf"x5nV_ 4_^M4O祾2DI7RU`|h~/:#/Xo#W|GBޟR"cx?# tDzak?bA}H!h|8jcv`DKMDd)s"rvL7ۖ%(O#4?AW'%g4z@TFJC|)]5.Wg"1ns"]Y+SGxExA3i=e08)TŌ9I`ф>\i2#{8 +Eٓ*i7wwݒG $2u&{Aρz_TW==PSfmqi_#b@G8晜>$ٝ6H-ɹ|vf*q;۽ɡfR'>F(yJ+f7՝hO2UWs1Ep #ы-8=G  CoEhw&{f/|#q+$/lBtp h|.ATa`Bإ> I#eiBBU+vc>Np@adOH5%:;^"LͧyLG"#0A{'U۔Wqn@҇x3Kc&#ǂ)&d\|`z 8V? ]]eoTNY4A]0!OVUFyh2\}'.x{$i$Kߏ 8DVTth>ٛ|nݕƑ9)v D9At[abHAj5ث"⾮J,wy8@XT4e x9ug}/0 ҋE*3g0m;2ʯƙHwlHZ|?kOL 7ccnhJh["*9t_srF opM'n :cW=v+[kj J`%Gu(v1#i@q}u`j*(Ǽ]lΊGSߵ l| w  soK@8 z%4!-٠C"!p 9tǺIe4 ώzĊgn֑);|X⯔Q5#.Wg^7Ayd/mWr Olpe fsd8q2_04'_Cw׵; 2䞏Z23ӽ[kQPl\m?=>Q__uR8I?߷@u;\FDj?^ 3|td||_k QΏpOŜ7p} t/<"+Vu?"U:[~Cgo_T$ ZXQ0jw 7zzʿ>ŰiHd-EY4+ˮf_T,:^S̰r1Z\ Z˗4Ƿ]nxڪtzꚼ#R/zF˲KtQ(gu .N&?K5]ЏC-CjλyѨGy"+_Hz n 23^r6Ka@N8 ˛n}/!83%'[eFE({S'L< Y_21*xH}]ڪ3E+Jp_YĐ޹+-N& rQ wQ$5TK |@xUڔJbur9%}y~Hh7r>+_%>*)g%!b92-Ӎ QY 2#KD|+=svK`}wCt:em?tze*8E"ԝBmvDVq)iϢG 7ZjUWLWZ^o'¼aDvLЂ8ƾ S' k>" b g!@Ixh縆^U)to/s/A+\@)`Aa8c~;iI(bRpL5loMϽJQ ΣV>aaӀ{ 2TWM3;qp j4jcP2m~|݊?g~' ifx8rã5:8tz.[+ 3@|/#K(%x? #BX&AFl+;iB'O)`ӰK(2Th@j0,3RԦp1/Z 54#Rh 2f_ZHI47u (} ##Gӄ_1A^E,e\gXz|WN4<;_eU#T1!|m(khWu#br@Ddho?fDҌ $2ꢍ e?9U֭ _dG Vʟqo'PG#+_$52'r opI 5ت0Qj۩\EHe!q9>m{5:K#&cZIŠBE%>|,vᢶYnܐK Z() SAYv#,AL*[m_Y3!螦 z1qUٞmfUS;??9kr"q Q܀-yc1$_9?4,m3O]>Bi]kc#!HP<睂YAZEwbgf[@K{i~`%;ؾu}KeRO*ҡ,h] )Vk؝-Bw'Dܥ}eMp ȫ:iYT]ZTzn!+v]=vո4Kˆ2ՖP\Ȧ Dd $ "[&ſC5.994aѶ*Ƌ(J@;=J+WlM7*}UboCs xLO%daYB asUn(r׫g%kyᇜ:C6뽻~Imn;AnrT6әv*% z2ȃI j/:$E:LIf} 'n@ ǒ,̾} ),K1%Ǭ+>M_8|' seJZ&Hd ݒzǴ3o~'I:_R0rW3E$樦Hֶ!UϔD㣊a[- k$#Kzp:U(Q0ܐ9ee\H[wڡ(&zIKdžungHv> Ri+*v@ fC>h#{NeqGKU0; iRRwCuyZ43(.P'^^}߰¼X`0(0Hx;'b_蛂O [+'pj#7ɟݢ=sDUv͐^\Ax't șF +PV'bZ[3gsU߅zSuY 8e P&JMtlv  SvWyz*XH1@޵=<6#QY- rQ~[q6:uK՞ى]?2-c=yQ7>ªB3 ø n[Ejpt 2뗠<,@7MSG9d]O-t;)A\͈1i٨#KG#Qq7K] GUl!;߶ Zs$LE{0= ,Dl' on/y_,h$V0x.mʶa͟ 4/Ot&quIx˖Hzp֐tvi0vM10΀em{b+zi45;V@mK$EҌ'ۼ2M8 V'AH8C^rK%X *D>DU~BYWbw㫞YS}=ˁ*mA7TSxahk6)oH΃xF:ȫ1F D+ |[LC#1JdiM@4 J o2ˇ왔8\y㕼VY-%5> Ɍ'E>TZ tfс5ۺ!j4Jٲ_ZU;rL:*bɫYZj zT 64MKogګ$uK4bOz2n%A;kJYW pvU4xP 0*,ak谱}>ƖGWsEaL2~:P n5y g ]Ӡ(wu0g_I\4ݛ Q+ ?nq}&//$n `:Z5Ƶݾsh[zwd2uuʛ1bi9ȱ X7LYp(#lknZ>05EQLgCLJSfs@ VlKR6\T9_A*ǧ$`D{72;a5(޾~Jqone NTۛv3VTO*:/Q씠58;X|!NEh3yBzbe%,3U:]ezc#kH3hڭPTIR'킯ٍia[%Y*~ Nu R#TʥPy+gn# KwW[;/+/ $ (wusT(P0Xbdu/_e 7Ȯvfz'Jsŵiׄhj$9O,B.,U utw蹿_o 2i+ViU'ju7:vMQ#nroG4ckyz#{eW(~*9Q޵+Oo|$XPH$M`)]3Q@v7V;ѣLtN*6*4Peɰ2@JO@G޼Bvev'I7 !)'chxA;jfΞ9NnV[t<+S%2*z7" rj@X.xu>&!_#/{a7,HЖgD[fP e/k]"_8TP-SyZ2\R@? a(Lr1JO`1(!(d;b{'GkY;bRl$~ė.GKD;@%o._7¼:^~&SIA5T}R~ d\7S&b:_Y6uFq̛>F79?DCJ2any OT,`W`ơ';v;͝vN HRنrj]jv]кZܸpe/263Gt^RMdI93uꛅʕ}FrD2fϘ8^&a5 _vpFډr4APIqvK/j0.]k1w?C{ꣅ[W7{%` ;݃әj!kM LWfJ؂EY(t,:IHsRX'3E.Yˇи) rs-PYozV͌J>1ge~+zDA|.X+w'h0x[x8BKA 9$drur{/ׯAYyu~ b.?x;럐;(^5<^z"2[p.EןOI4E^:I3xոN@éeZҷhީ_: x82$'ͽڽص.˱n+_ n"j`GN,YÔQ[ϰ&GuLȲ.= K5I[#gV?ZIT/FEgk UM;<3̼8dQr wrM]fEvtrLw l5ܠ(u76N$g.@RU49Vuhb5xzrzSq&>=3s%KY1a4& ӑ/ }MrC{,"}HU]dVKh24r}8+j̷ܖb<[:}+k|,6sߘhޅ g,KxNF;3t9 O;]z= / KKi`3qAs;\ X͌n-By}?# Y(-$p-rɁAY3>emk$R!B2_ ~@x˕52KI([΅jk#GE2vjΣSڮ(C:g9Q{]Xr8nnR<ړKExK:X%ϣ-G E_>6e>[%+!qxw2猳W> z DI;Ïx>9F^FCf,Ha% NV`PhΝ>u} X$R=~}~e>Fc8Ρ8Gh+aULL#˽.TY<ҩjlT?.oTHp1lYȐ: )1 m3W'ӞJOzxL,Bn-t 2ٚCCiEfS3QiuVT49$PR)"gm-J a5ʄ8 ?vDZinE"ջ{_ÉY \>4bjށ[2g/wUA_3ߋBـ(R߬8zhV0.FȋтеIh/XN6g KDVKr^kܽ \끙iVo8/ys[80œUFtFX ܞ%{ԫۭ j zxV2HKn{SU8/W|;5(,ɀ+9E{UdKT$e-h"#sI4ȈXդdxq\';&1֞\D^]qւ74M^/nWDXk#a6HnNF[ɧ"~nΥ/ 4/\RyGJtN0o-M( &cvJ2cb ?v/dK|yPtq.XZ9ler8-#>h0B8v)3Z}>*ZYQEٔN"=;UM,)53y` Y P/kKdsk;&TRKt|f+aB\(W!vr v]„1 #Lx+X]N[ I ju$-2`%E:^u;V*…e'J+|IOnz " UT{8,fra5fWXkHAmAl f E<Ρ# Ђ KDҏP$Q]?Ӱ&xEt!N̈́CB@7G{:*T|\'<X\>첩,xGJP4-6sTziA$#6c`}#49CN?s0,622K(V")s}Q߆sǨ]D&eX8p-~K͵y(ˍH˟We^"bN+i`-ޓ x'^UA 7S[OX@`lwvl*x "P m6(`E*-Mߞ+K3J"oLB{ka ȻvoFF&~_Zw5@꼃{%+=<=*<,P~ ZC%r-,HW[iOI"3*Cf'!s2P":"yZ*St/ ɠ5ȿm1a>ONYϩX؝Pt?#s<Ϫ2J\ ͞e#VT*V"Mٝp-uzm W kK[ j埱+zJ(`K J5Ĵ.'vf4?X_O3O0᷶@vWUbNu haqSAL/Eǿ0d@ٔW YY92 LU8 yM֛W"P,akZJ䉏Qj[KS7`p3K3vOίa7GQ:5Dt*"uAŰX*Iy(]:a0L‹>QtmhXF^e_]d"GY֖]qd wi1~/p[5#Mh`Tԥ{ \xUpLgy75HIY tǃ[$Ff7T8 Q50+sbާts9-pexB^24u :Vz}J4es ǓehN5` (}d8MֲOh+Br`tyH`uu"H"lP.6|=A6y\FK#8d6 )]X }۩JޛFI˔z!5?Mu#!|;kpr{gG }` NKםgHkLx2eb#34q^\Q jMN"i0 ~ ?)~.vה{r 0޳3 UUZ!کM QeS0z0ؔĊȮ3'_!L`2lϫ8r蚘,껪zSR4NZ$揠VC6Q֚oL\ǎ?%ܪ8Ws5+~*gnR6KRˢQseb4҃U}2]? &+<v5$'7/)I)lzNO,M2Y&숔Hœp ^A"UPNi4jghG7].d}¿g|PSmB:kԔ&Jm޷(̐hbJG0X"_QhV{Tyr{頹6D/N7h|DEffI]@&{՞ܫS\Q=\KHGFeQ:S^Ш1 Wc+<@`OcfKzKdq nyq֡t^ %9w~̱o_$<2d.ę}Pb8 7q¤K廌w|ۭ鐤ÐZ D<瑯?[bXMF_+zU2Hh #`,Pz"0}*'KEKmDad28]+.m#]OߢQrU2ϴr &jhv!~kJx•toۼBOHAo_fO鯁r4x['vVp<ЇͲ9֨U*!rptۗP yEBu!> 4PL8!S!ODYQ֐rMF3C9DzlV|]F W>,SaqbI~6!3.0xg)vU7}֤AΡE88؝+*F$Sk_U=&Ah_@n#bpYcA^ ĪU*?_b.]V&]&Y L=ti ѐ;M)G\ ӥ&7qU fWj!ԉ̂"bKsH{S%R| !0'XFE:]g9St'=OI @K~nTB~ftw1֡eajBYOT~n1K wN;v_0&,Ҹq}bbȲɁ#1eO t \i \8`o/L9pgneԹ=*M{4.~/RHQY~.|+Q_]`ӵۻ9 0v!%~N;&@5!8ի{ lD1[@}n;K^Ntw:9 R%"YE @["3z-:OIfhUx%>Py_k^lp&j,˜md6S2~7g\'͛vro|ٕG7clNKi#!$lxIꍣFw8 X^U*=Zúft=l WMxڏ_K%oYݟ^`E&^\ lڟVH੐z0G? 0t3&_,hȼ]BDidEԹ/|~*?+)H5ռ0Q ɫ_hsK󋙸} r]oUUf=Sb$4wHXx:8^_c ]~G}OKdѱml>]h!cH蓕P"L1+gd'!,E#B&MfxWu&BCE7kV2Z , =SHl}|gĎv 7a/N{ k   ^҇ 0l ! q<8{9s'l]_y/ >ǎ2\YΚaێTrv`7&$38Z>-(GKd]RطlNhM؃ @Irj(v! pB~P8U a/67bl ܵ#l$.coC%t:h fj_& ]E, E Õ"±q"E)=1O.Vא+m" $x19@Ƭ_PA"*d6)_]C+'#}qʕ':4hdu? ǘ!f!](EOY[Z1US6b 9Y䙉VFWQױ_Xe9{Ru]^pI R.׳_>Y$k:F̵Z6 ibi]q0V|a!h_/'brى\˗]äw:zb~|8eu.EW֒u;ex.2};TVYރ8[ZvFhwvAksW~ofH,yj[@l3@oj懷Ęx~  #tyN,9z92D#M׏bBOCk)"=dF_ Nδ6t5dW֐;Uޫ:q(FWTQIy)*zu\388Te5U~,?e Rp.Q}Q.ʠɍ[ʥy_reXXjӀ&-7@Q 1A$J A҉#lrtk.?qnO#Ҭ7RH~ FC6xƺѣZ¬ q& RLTiH$7-[ N{Yj>(ڑTMLgDMcϤf Y] FEwW jh/ZFv#hGC,)V5|d}˺jPXP])r$^q9:ƽ`^`嬵eKQWAHa?4B̦J,xgd:$XV).)Zil̨嘜*[NV?6SPYw;oEaX`U-#ԓM-\ NX_ύ Frf5gߡp: =!W@  욬MA*V.N/bQ&ia v}y{>Lwi9XzfzbIIÖ@T%*I8Հe̾`yx2v:;bXBG tD{MAMExps#E4C OϤzdX5)Ԑ͓q 'Kp4WKXK62 },RG4J)'{d4'a3_DɀvaSgvLs3yQ34<r%A1ǪNJG_f7qik_q"аO\ێZfjjm@z짼t[} 4u s̄84.X_}Ljd M̠@ oqHMjA!âh0`t%@dAOĞdt(dtk0TSCDwf &e-a*du{ P*']fD&u o/y# 4 ,"'8F[%5q?4?~CQѲф&d <(&+q u H;|L}aitK⛀֐˨Y. !i+j-C7،-$6yI1e(3 _s1D\0+IUEK"vO>M^*TkX3m@C#{v :MA8N Sw#N t;cOUuh|`XC/(2CHG4&+82Es{+Xֳ}\N[n9saR+~  (qI9WmOY/[zsKF*%]mЁx*qPq8\/8t3._v^68) ([/3_b`V@ jxfanJK)Pvn簴~QFBO8/KJfMz5|10YZ`XԺ'3MwɉzEx"G恸a]FC5<䉩/~9Ƕ2Yގ(RYR[>Ɲ̅ IX_zP&J]'-r U| At4Ie8J@QNyʌ7-.g^\xְSmcf>_l.^Ze"M2bqX㽯6{vsWpeǰEʳc̞i؍gF>ùK'"@-?wZ@8c$7;Pzc )O-|ėJ@.H'?-ta).:B]G>.+Rq(1ipXS40R! ܕ\-W:@Eb{H;lԈ⹫ osv4Xw7^T_zvK8g\ -z@'r՘(s aeϤVq O UYCP! Rtbw7W/v9-2N=w\gm3Vw:Gȷc:C˛WǑ}N{S^B\u,"܆3r艹M "i3#]se1lv0 u2({Y)[h$nF%'W4I1$cVvJ T@:BD &TP,'m%j;ۗ[C)E'$k <+qD ckV"L,!?!|_O#tI#M~lϣ"Thal["<%kzb ZQq,Tpr2 Z'!AA1a^\HGR~]fd; 7(JxB>5sg`M ԴɂːհlM=~4u@ҤR.{QulMvs7L-T]8Oe6w x% Ğ̜u` 9u}[XNSPu _kU:JB*'X%S]9lo{ͳ(<>_l'"׭l`&WJ?&#dp XV%tLr]|90%`zgo|'EoǵK=L&Fxnmuh߳N<4aXcН#؅A?}FM'z"J'D(>}2@J{yO H|H 'w35a4/pXlnw^ jO/&<w#F9p &\g!5ZnFwl_T>u;ۤ5p"WkZB^ŮaB:Ȩ߆#hYbO;)=XAuү1KW$,ugqSQH9{h+o3#X@~-ksy78U=̞]XO PzlEo @4Z(iJaΡR-PmNog2B*o:ez`tVӋrt9}NO|B;m"cWVpXi渝2- gR{%% -vD]f}qB{`-Y^>&.c,8d“&h,%]Wȍ\\rZ<(i\InGէn@8ΌEge+?g!~?rWڤ%efZ^Ƅ5+S't( =%7?:TLnhz̆.3Ē|;6K<'qHm'q6$MSAʋ_qSRfۏ,@B|PI0/0nu/d) ฦ"Bm@(\8oYqÑf9CTL @5Yz; XF[x]=^~(pݼ} 5FخbEe 9xeW-BAEh|}1VYTo&PM$‹@_IN:Ym npI|/ʡX?/;{z 6'bpJ]HN DSy(3\rd'LֹL<ھ_1$Y(W89jW]"u}a m2LR(/l,KF]<14('8hfi* MT"NA 080ս4[dF ^͋\&{qGLTEZG}A,\t`U T\ Fі|ixv]PNӵS'MY&J|A*=Ay]s0=$XWOI1? |nk6%OLO4k<7߲pyIBX,N[\)MNg:dX'pNŕ-e8.~VVU5#Z8X~mo gq'@x,;T K&,hwAzRA<3¾ȃd89??/'tRQ}|b‘`e-?=lT_]y8ǓDZ[3J}Y [btbQ_xA&䞀< ul\j9 0)зsrHkI&{,Etn~9zC-v֖kCn. ō_ajV7 Vqﲉ\/lluߡQsեjU X4Z|1?*BTu b?ܪ3Xz-53^ |,r`.NQFYJ]/s"AyÓ^32 7 9ZP1 "a5YA~Y!ӖƟ)>ͻYcյnZBT4:QI'{e %'`,0Q:z=7`y zP`WЫ)JLp*CMOTx~Jn^$jl~ (&xuHdjHm $`O:#+F^Cp>%W8.jej()#21q6=;k=\Ɠ,Ƹ#EnEV()W밐sA^r6* d#ي6p\IfG"4`1WG&[/WE[?ڿYT]-z^ٍ仞/fnM-_;jBB|fp! ~Vr!U2Y$0=andH.#4ڙMKW,Z*MU%Kʦ.v<{*ߑcmT/0#(ߋ~Vw7Ss"|ˀ=8X.7Ku0Gx(l{•Wn 2x/MƱI nӿL'_ˆ)ak\1qxf:R9Flh ݮ̮{wՓDQDf_h5j' ^P7}آ8m-za_pL)#ѧm]CΣVu> &abK m6A\> % 6wL\o7>2gacD=^>qdƧz@Sb>ͨ͟1K G.@_8G 51[FS-G Z?"-ȾA@wxH03ar*˄8~t`9{rg]T˫$-k ĉ{BhE81T{ԿX[뒁NFa)/1Wl2'MϋBԉ8yXѐlr1F'N~͘`b *mvWPϭ;Fe`޽\9L`}( 'M:PE-g|lXy-|&T;54$n|*:}aU tlaU 5Vvu3RR@sI~J9kF<{$Sc[802#5w_a_f4 $rv]s؊%_;-IiA+d4k*VQ>WN'Cte$"Or{8 %7>IM-HJ|Ef ҢOE+3c+ k3TDU7 ̂]a2;xŶ\,}ܛ3_12؃7)KEs'g T&zp"Bo [<"~ΤeGPt3-Gw6 JzuR ΥAT '`Rgxԏ*,Uh ì^礼^e lX6 : b_>cz`NXKV-{Q]qc@55Α/ڡ{**vKz wY웰zc*nH>:7fj!>xԾ()SJSY9Ԓg$:EZ*9P鵝Rr@݅5`TYGNw g* 2 Mf훻Ę 3Si%Ђ= {DK%x[Uq(l5/kL1V gap.ZmLkh9w-S .1XU#~p!(2H:ӛGR ]N!K>[gD=hKʻyp^a[u -춳;gV6QpXua!_HVkչa ]xNHuQG<&.KއբG/ όD%I8;tRAՒ\( }4DЇ !"㷇b<njЕO+s.8 2J=P@#P0^pW'HjSDj}f]JJ=R6%ɔ]Sl 2Dtۺ׍]*K=ׅr2yL4 T4+{X47IqWc`qO5a7,٫0Ng!j/hbX+Dh,G̬@a;}@~͒{hC5υ ?)",. i ڞ~y٠$Q '4$!z3ceYC8蔶&v9hI:&D@cB:G BcN,/$rOc,Gi}.eY}<$+1OP{"Έc3Л%'7 ;8uuPѯ7`yvg{Jgި%0@;*zbHBB|AA'Q8H$K(?zfʑ23..[_=$TݻˮŐur~KJMAZ%{2~nQYKnFꤥ+xv:{L컍v|*)1$?[sJ ޼n\\w ; #L2~|}=)nR}n7#$ aNۈ,D`x@u/M(R61T+ɭnM#Ls4@pai!@b RKեI"+J$}V*M2.O>ܕK71eX#tތX{FH<=9!= )?D$ݪT}Pǡ0.D[ѵlfb!{ a:P4sn (X ʍZfY\$MLʨMt Txkck-۳6h?P^ȒmE6Pg Drj`tV* X|f϶K:_>HBAsгBANV=|TKHo`cQ,#>" eclJN?x֗)sM0{6q|pg!oxz,9Ff}&C1p_G˽BȩK h*_[2 yq_EP4'SU-o%S].:"V>@[XG}_";.ň5A>d=@[fWsWÊeR س7ו5[U5,)CJ0H6~sUPb2(TiyM_F?+U"K(ݗOf#7<: T/{'l,@"T6M&pn&s^zGNBBAW U9k^-ٶH؅A2!DL!ĤmX[l͛jC)6_ LAEl:3}Qܮɠ\ 7cE guL>efIlV "M0aՈ#x8sJZJ.& +NT^$f I9.FXvytjI7m+c;;j9$r.\o2CJ|°/T/m܂>#ʠT=O0:~5ygKF:D7PJђs\Qw)ζuIG=9)[l+kYwy5,{ [ׅNC|ʭ*n|m-A8Lag';#PZ$s!RA<̼B1Oƕ ΤFy#+pI2X`4FQZQd,|( 6mޢ:9" rf98Crռ<#c=KVzA6^k3NDJr>Q>qqoBtlfPLle#us}OiLXY} i wz> c!="_WsOT?@ɡyL>N;G,ʫS$d/a7IxxDYp >&kSkA.v~<;ɇ%fz& IS-U5)_8?RT2-&<7'X[.xSQSX9Fg6(<SֹQN:~j͝jto>& ds@GwHMn 5"f]aeŗ x,AAr0;j@+!d.`l!A o#a!nQk)P):[rx)XC=Drc9ҢjMޗ] Io*yYdD럓 d8T=Itxyɧ"UfqARi!gEi =F?)8j}E{`{(N0AaK,ɲӍ;5}!l9k‡r~cbT#06=cX+^^Xy.#xpq0>a dIm'?ŏͻu48앓ԃV_'T )}8bf"m^z;ɠ /dzg[?qH??Y.=(V^% ==tOi8A01z%*0q0#%|-ш Y6':7"Џyw$ A kLCb+ETW߇Ȁ4N9"̣xg=- M DؼAX%;6iO1?K:\WSXT faMP8MIZ珓Ui/OtTs%B-!-ؐ`F#vL(zBHDvg-bR'C5؛4T B?(=5`bx | *30_iqxڠX b4DX4@Jkх˅nRc[6zZ~gIf;P!WeC1C*R\'KEeEF5j]rַԊGG6nُvq.qf =KlsD!Ս{Q^/foM7aq?}U=s0H7J-d=Q:S%uiNQ hb+4@PXةWٺʐ L+_$SO6cILKjY_-uyD L:&{@zFqR$ՊLDw06kɛKhU꒟BԵ,o (E_0MG 3=F${r@O=# [c7CHD$mm- Z,ɍn^ ^:um<@#l̕ж8xm*8ˬc̥N8T˵P+5Nal-RCk)Ki$Ȼ;Q죅8r=:,B?WnP=YuB6.З진aC*krlR2M>XC`|=9>%}W &Wp="&L`2(kDIe}V m}h`Ȋ̩WUzdǤTQ%Am-\CL;Ґd?_.vԗ@z艻Jb8=)+?>dFĀͫbJbwSy`V4 7=|`x_+܆UXҁD-m j4i0J:ٌ|E2-O  -Ck3I'o *'2BvۃQ!7uWcO <f#isʊ"'H't0U@r?$ڿ8|1=xá{)o`o(uVPׂ&z D5~Λ؜XsD۵g|:n Z.$xӂ*Rm\J5k`bfxX#V 'Cdpױh'\qnqĽ4VGݕCzL?pl$줹 *rNtTX r~YIy0:V]4?Uv ܝ"Gֺ 9bc-a)\م)Ƿe)/op\7MrcΤxjnE{Z Ի`q%(HXĮlOQ3/p]omIEy(IgE ~Ԏ 2Uqw8#*@udVHQ[R;X,c4Zϥ1KqyTxJluM=ZP(0OI߇J\֎AR+ }ΦG0&\H Gx5`NX+%L/4m/VqOdvq?ukuFas>g Nlh y MC=t%VI"\mVF]tNWC1P[Y;m܌;EDkS!*{CN zBW`MaVX?Vs*70C@ :ɡ5jee@EӳMo n.$f2lrG-crbY9lNhH RU7 ګl>|jmA b Cga TwJ:8 R fkzwO|/r1 %5@^i&] XLY;1:1%/LsZY_klK8˝s`#FE8xRp:p.+zfPDX5"UqBL}}M[PpAT5k;}}Bymu^2Y׃8ą-7ђkz_n d %&_pw$>8Bn<"|Q>DXEO+2uCTV! BTCw~iDMcX#xpڡV~_!+\|ʈՌBGX۟D9 a& 3ԁ֮X>T^)-u֑2V^ŝ&Z`oK.X]_z.FwK> 6+._yMg~) ev}(?3UYB;Qm\K_+RDPb1? e \6{\l)8V[xl_)q<^Ի(I`-J>Ym*-$$NtJ%?w^UL8xfY07{Q66n c݄9|,PpG%6gOp Z*V Zݓ{'2ϵj`&AhO Sߝ+A ޓ f2loVI?#hnC*J6 ?s;dPK$ *AMQe&ɉ:V fxLqGLV:?qDs%M g#h>ko5t ,Q1琸1C-,ދinXǷZt#y# # :[8I_lM[>vM_\H[gKCSsE|da95hZhvyo͓q׈ Z-{8 w;V,W%92sdzn BǸFNbCJ70VZMd"22tQeڐi2&NgMUG?ib{q{\qŷ\g̛fX,~Gi0YPNRE[4N b<+HY /vRX'7}C6WoldȵU8%/{8!5x*iW?V (?ΫN\ɇNŖE 82{$ p)VGwH| D=ێTp0/tj8~;X#_`;|>Aq'$*[Wʢa7p㝴 Җ, b^e c\|&!u}He%p.г>"O; VRκtcƂh6Ymew#0Q:gM<=N;tصQ3ȝb@onr-RXùiUBmw 9')>wdoԎ?/lOGLTgVeL)V{=\][SIԡ<ـt|b<\ ǚ 5ٝ5q|,+eh:5#1Bt@L&j0jt;z#fPtS@j#]3FQu9ɦlןm}}sQ97oz\<0wq#JK6-tVqSaR~J~sd5սH4D&8넿B% NPүL**@0Q.KCC>cLY~:̊IfWq#o *{~!s`.u揤dgfT'x`ۈ_:0*/YF1D9S*MƮ ^IKR`hC0 P9C!TӫJbIM*u86҅F3ĊrQ&PπH2{"mxaUcQ7X@FR LC{WC]M.o늷RۺҔ-2cyQ>#zg_0b#;Q;ⵓu,N8D[̃ryuA"LCűQaՈ/dD^?|? @MҜ}*m$xG!yY5`R}&\/e.T1P+nrN+b81h/dA<.䛓BպQ<0`f0Ԉ9k"mLX%[S< Ә#@ԑIa}^mq}R 8jlgP䜗O!97t Ulc !I8'0Z 4w:ҩ#~Y7Txv;L9m8x\K4X6X[GUOU͑;w2p9L >7̳3>t[jaJY2qe3u\yrwo¯\9Gr Pr7r738{*[t'\zCfpqhIM ܑWb/\;Zxeum;׽YqޮmTZ|84,P .ZJ4^C*.F)Jyxoa.b5 ӹ _"uM*a_g,&PDV-Ȋ2Z<+eFwzڪɌѯl {g2Ü#,:Bׂs5/Bg M8=]uE ;ߋ|xW{Ww_-W lʹ=.n^"o_XyoϦ ʠ$ݛg_(TqGڋGG7)S}Hy {aK5lqgy^`S$ J<cl2$EyêۘVA轪 ^p9(CSc~Xʓb{~<o֧Z^X(kb+M_G 0ɽ^@o 7:{s$ٻ;>\ M9<NYdsd/{DDz㓼!%Mv{ɽhZpk799JRk}m :_G4uF{,"(vlF*eJ^UdQj)Ĕ/%e,zLNNݎ2~sx^Ÿ`{I-.xgJk\8{,G&ԾUl)c[3oKЈf W gK`\oHGw4|Z]-w3 KӺ|t_jRyj^X7ڻ1ڌ=_"'Uuh.pA_K,Y"G w'  zdw70A.\p@S6OE W$>9fp!0կ  SBx-p<)@KeZ"LM%drS䨥.OFk:_7E.B~]/(!N2r1L ]mqL$xA VAM$xf͛6MMفhGo*&1~o!-tWCF}/mj=gH5KyRUxYE@dѢMyByM)e12 1{$D Vc|mK[uu0^~M>5zq'<*`"p]H(!^cӉmӞ-ݚHڳ4}>~m7%ۭC+В.볡in3'Q뱃\ ?5+ܖֵCrn~ȚJ]VuE_ Dl&+&p]ݺĉt{'i<: #]&34bvPZOƣifiMԕ-llz"ͩyC)#` ?[x +Nr5 ƿaAG"ȃ m%udl^+ :t[2Da۵ٳ.s4HI]!sSx曆K%dA~7Wӻ92&3ʀɚ IE%O.)2uPs!<ē+g6.Xq`$\AF9™Ⴂ"5Yۚ,@Y@ӏz>C`^~ޝ+ލqϼZ__h[tIsv8PQ.~ē7ƶ< zRb>>j@B{QJ| !Խe RkM|ѽPqn`SΦM]#9U.ފA"{ 3ʿa|;UDnv %3 S?8CR̉DAt?H|իIq5Mȓc1r?i1d+(J0qQ o9m 03|| ,Yb8 ۽QWG)/E!zbdARD(fvhEGk*h2㮩㧁U'%ҫt}O#f,`@"ŵݵBHANm6-k"KV5a jcɓ}OtPΠ{lcgHVG3RJMn)9\0:xYJrᙯsgJ t7 }7B3gk(~bՉ3KF5e|{80䞨ZКy{-(}"8g%."W󭒊 bm C)u[U=O7Ë SۖZIn.M)&ji* L"fqР%LQ 15wK $~r|~!=1z]1u1B,88f!!_b}QVnD[SPXSAtm(c4}r&y? NGO4H[R*z4`Hv[PㄎfFl5^v";~h`H"Wg^=Y|5kд Y.A3#Fd-\k@nB_F|kMM`#Vb/}sW?FH9ËEcEH]|EU=BvѦ*398*1ad0j[ol]jx,FC|ꌋê9ϱmZwNO,vq[ 8x)l>:3jeWHVbRzHuO 3 3 _c[/i@xɘ$9/uz|@3oG; ?[/0GtBiuݘaС{8b?ɱ+_0֣ ]edAM jEfs E-XlدdqC.*e>7CnSOFZ\{OFK'ab] RIAyu EUʭ.j LP2 sH(!@=\sj.EeIdOqY6'OmY#F<կҏQG7m<rjInɴJtf&C7_My{ȚpzRl4pL j҈ū73D*ӟ$jb3>bY !{e68S kt;)7KPQc('}տy}K7.-:l!ut,652 ӋB'89|!\pPcC- {i*в2|z,]R|n,cD `U1vtw)E&.>@101}v'DejuLNHug,II 6f3&EЮ.TFT^#dlgh #Xb,2a!`Kqq`@}850eXLi&)k1C1t׵F٣v+pE$⧧mǁSp mق&&}l_=GsÞ$ p#G7=_sAMzE^〗2J.}4G%+{eZ8ċ^*uI|5ٳω(~T$9˔b#@xX؍->+RL n I|JL6@]9I5LެjFvۡܡȟ$tɎL5}&;[0M Ŕ녵XdWJ@QN[h'Oc"}1WuP (ǔ~ዙկAS"7Mfm^'B}z> ]J2 MB:)49(=Hd7.8IGy`r-|`uK- p" *>LyLdՊԈ !4V 2㩳4u=jFu9+)DM-pzݴrLqoyYݙQXxqDߔNȹֵsA7}bpt:=Opb@ F d :Lj6uG;- LHoz!iudYN.Ttn3@g\&ncЬmo"R'ʮ1%!1YS[ȂC䑨ߧ;r}z0AS+4Eh1G[,( qN3"y) Sp9 `|F)YnquH;wOlx )y~$/L2ߛǽdPp&:+tZp*7EGYw-`( /(TT`ݠ&@>vٺsN~7TY1~vwcp WWdnȕ1oD՗Sku@e&r\m\Xؠr}}(8~B3]>Xc'9KoZ3gnщ-vaB2|LT:w=ꔉnM_Vwzi1Z~˭sɓvO/[A\As9 eb`+OJE=qό@VٙLEطMU5nFFF޽w EͿvZu0Ѿ|)DN#U+ эG sx !LU"6QlCJzC-SkȡVA|?JG\0"?Zű"Y#G}W`5ji,/K^_Zܾu~yB(Sؔ{ɗN٘CRBⵃqlȠ6-fرσ6{[rfJRDhZja !V4 q60,|f?* DHSݼz*8k$![|Ɖ=aK ܕyM*_W#a>>i}@!NypTQ{!IGw:vrW"QnyVn{]"ʣ6 OE9BO0nNp}#XdPL&T*"Z*b ~Y'lPs`Hjx +Sc\4OǏUK+BI=F l8|ҟ}/pKJ"Qc.-~Ppv}!2y: NI2\*J9FAB  (O2ON'hsD٨7ߌ5kœ!{Eˢ\ Rk `+;Teg͢5XRBYz`v{ėlA>QZr^$0u0k'@J1% xv-I\ R $UY쭔7oeUJ1 1c}VpZe MjT;StoR(s/BC#7L"eV 0;yFfg߱+7j1E2G~qJPV_#n j%w/8QDC&ZGPI[q^n571r{Sns)P-Ԟ󐳝^Tb-8|FS-$g31\?;bS4 U#aReeX {l5clyi?'yoJI݄6-ڔ|EC3dg!#4*$koq,ì]5)qBB75Ç%@C;*N>J8G4 ?2L97q+>J*-L^!o.& vXʺ;qR3EI=c$i }J”Up kCSGz{EGt_uFUYޑJ9'D-k8%,@zfk R $ ?HQl5 F~ 'Fl█_tfo$b`|] 0K_댱\K3CsXvq̠Scr /3}*M2&Uh,)PԦ 1" _ǡ)R4=m1*Aɕ·Y>\6>Af/rERWE8؄FYlZziq}<]:PvK=:KB2 tXtM1c Pv Rr+[ʘZZi"дwQ/eB..# j54~ۮ٪exؾ%#OK3$;> z P+'#`gK$g(ҥf)-!]OB@0!,O;x͛j#ML)\3z| ?¼#sJc`׀2') =o hLxv?vuH@'Bߤ >~X )׵;]Ug^ATD(R0?O6zL6}}pf9UyU>ڤ_ZTZp#axFeR \8v! .Z G"% !iq{2WU0%+ ֎t II,TMr2ɺ\5qWqĴR˹ߧ%NwyT)5ug01R Y\\x;]m9-Z MWV c1rњKٔ&XXҭuK=RI \ 0"t 9 ?sajfumpc2hj=rNftEXR:h I288KĻC> !@dcw^!8-c+hx.OB}N=r|@OVT aɼHH$H4WD_SL%V;L}9#tb߁;fN&,mWCa&J{Ԃ\a~[\~wWnbbmT^Sf;ˣX*MźpL,jTMӇȑJdbPwٸ2䳥KÕaGA _TwK|UJ;1" SuØQpm;T$S> 4Ha@gX*y,=9RlHgFRSAH `(3V!&mmPV D] 1lfVZ~4JR~t@ZW7>CClx԰ȣ_$z/F4{-;ID^'@ %ӝe?{ 2{B4/M||C2낋!A5\sPvBlW=)Q/Ec E~5}t$M< >P{'N;w-*DZ>".!?hc>1%Fb+W*[\9U512h &1r Q-/, /[W 4[[A6Il(+o1>~ `{N䳶e |űɤֲ i 0oZmpChWfƻ~^l{?yOۖ+@V|euʱB ak[K>NtӰr &̈7޺d b|Lp./_s]:v˞$?nSMEJiE]IqFgqn"Kk={'[Qܑ3̀Wo_e„J9E% #`b*e&x(y8dFT ik^@dz}g+d<ȏE?&Xaartck}LlUeFG4Csm$OUM׃ǭ3aQEp؉o0ªng| $`lBB#j +DY[vLCa8,5̚8o|0~,N-NVÇy״j/bɿCůM#J74=m#^5\Bn'&,kns,]XqMYfx9n^l[(tX?~l|q롡*k :Щ+PJXk+A,閇^e/WH؎~b@><G})s-`*Zlpw~=)ދҳx^pE x&D1LH(*,"gPI,P:͛܀O ߝ&?s5 7:ޱe-D\S%(݃(P4 `erH6mZ DK=8D) *:Lv*׷ xx,k1_li _oـnga 7mp65g%}z:ϼ"9֔Dt((1,m_q)0̨fʼ\T AKKH/G*UPF򁮼팴Wv'hSC匍%DAF4X!&}6܍0B-C%Z͕Rە·Ej[U@92{b#8f~2p0tbO,|cWrd& $RTW,1[x7)e'AH1}bɎ*n\;"_ey8Pږͱ{5*GLf摾ol չG(;?+iah 'q 5*S˂^mH=,+3Y Wciv#}꾟I[iJ%wkn"K? 단 Wψw}$#γ1v?#f+o8FB{%`L P澕^ͮwU&bRM, M m+|vFM"gu/x/(?rNQrq005gsLFYd!<h/&,ŷƒOTu8;)a1Odl3 Jh27T䰽fGdPəg$JIŵ0~5pjSmEncN6EϓH4ae SB*nMbvnڶ ::9M'qxuTɨn!O{1L1TWʋi$2F`1\>R]z':*r=L̸F~p}V6Vd=xJϖu(C"4 "yQ*˭vh8ơbch2yMgYZK{뇯XaMe ;<>EС<*=w0LB)u-!3g( ҭDQU{h KcOc,-<#u.F{1 3}#z.ZD)2;)ѩcOMȆڃQ+6C \y't{-"v+):À* {RmT>@&k&GPwFtا=bx'Y$hWnԌ钬7 @7GBt 7EqKT;jq@\0! 4t _/1BZݕۦ,~-ẃ }e֟0ճA8=v0k"L]=itۅ;E-zC0($zٸu">" 2Gf2LLŰ8he16fRNx8LX"mcTؘ>Wݻ呩?opS YTEKԧ;1pG ; @h9@S %x,~=H8L1\߀OIGLKaas׍Rq:3BWsF".Y(Je7cϨhPtBI1H[aRA7AOZA܎fvNP& { ! 8A%ؖ FbA1if(pvk"3EOC&!IXxD)={X?;,R:1sa8"N0TH%#1na鶋r_MdIQV*H5s@4`T~+Y䞫|::W0ZdMhbO ~uuxC#ıF4W̫I;Eyr-@{.fC,/7$e``lLq0>~n\/ZW/;f^HKPN<=-OlYx.G"hSJO^+d#..v`%1 7pj''8撬U#_ҖOeMs[S(]Q^JEgvT#SLK-TRFp0yECuOgp੶L/ضCELJL Hr}Z<٢  ;FCϾƥQtȏi,Lorxz"a ;ǃґOC.z( DxO46NjoПPV9Cԃ*;hwB4ф/^eRS> H_1KCG&.ⱘ 4G^E!2$C%zgn=)NC J 4-Re>3*tB  :kky:rXoRHDrvdxg9v&:0veJYhK@9Qɾke.t츃Wxcb.g?CK[؜n'cT^\ )@;JdF'Q WyxO"r}8ƯԠ^Ífusv5̛smM(:V0U+}CZ瓮Sa b.8̘sLiiUڟd~oizۯGG ,$hk!!R 382UtPͪ[?@FDI~h$f1)t5]6ػHYaȫQT43⟸/3(lbkz77sL*7m8L.2 VWk?<x,l8^l{cu\|nêPԢr;6?yFvJϖ>' jIoWJ]-MVcɅbΞ8JJ Eo,ichW{3;>82u;e(8 we{76[]CPH\J~cV$kj@%.>yg${q;]?k&m!n뢽ucb!A@9U p b}XT%^Ƴ5a7ѐF=C|$DIkr협$TEVGW;4w3/bsr!L:jiy7_̈́Fiet+8Nb-|!iT;G!{-f~?<""-xWo %%> d_EvJ !PLl=,{EWKTro:FZINCrȓ+ i328)bRٹȜ%kMU' ц|ԈO%RS*Ikʺ~NA\A ^%.`ao\iH5!tdQL .s"^{[AZ&5Cґ.kZhlf^iwGM"eҀ ntnۗtc SЍ?HD0N{9N )!='ބ I",0*|5>* ҵAUo!t#+/3x3r`..柶/RҶ(l 3TOSo(>ɫGڸ\˫LNrdn+GaZ#bj= wt[ZđH=kaWYGBT*WpX =P6,o% Y$H=1s&,~A0oWqnNLay K_o&:oՙ>7\g`nvKoECn̼ Ʀtiuɳ*6ޖ)USYYB#)c oFB:]T?t& 1YA= RcfGx _Ud0='n(3^?h]$h<<$PPO)Cj.7u4sj| 5}"ItYS9̱ i.1/k O>x=]CGHbLbe+(*)iہ 礃C56rjAcP'ܡCKb y3BO݇=oҔm/2)awT6|xlwmtG8r^e("{R-OBQ)DlƩ}!uQQtwBSROQwx~gk_*H}_tq#@ rbzd9F%E Qa`=7_jd< &?i}1 ^lfWttG,52wnZF!nr;g0(ҊDg}@HGut9g_W{hcE;ªR^d{!s~k>>[2hJZs+^5E7.B/o[ qjȻyfbYjf+n†?< ݙ`P!Pn٧-ܬLײŐwiNPjk2r;/qur)e$:XMo#{W2ro[_s~8Wy-XST.Jӷn?W^`Aܵ)pLFL&]@ԯI1_jj(BV|)-leCn$p5p"܃9ahqw|jGrlo^JEX:@5H1Xr.QqV(h͚[ϗ>L|;Ƃ N^eY,F7_6xo\"|Rˑ޽Ӂbov*PgG[|z@ykЕ$t{ 0MaÝ/Eele',f8Qo_MZ ]d9yOS[p̈́<\uC.Zy@֓JY/Ǎ;:RH!]>cay8+ 6|2wSJkH\ G~>{fBޞ,sڒ!9_ol G%^d=G8N{5O_)K}_ͨf<ɮS N\˗gX||}TގӀ(.{^Nz A #3*厊|X{M(N@BaV 0Z~>t_݂9nw{a;4[3?RsDv),7km2FQ o/7{^վPb촼!.{Hrd՗ ?[!!O"p.7~[n{1[lc$oW<|7 D(}<~K$=3+-u޿@Re̸pQ_Oqw+I)]ئHE=2R >٣ 쐍`Nj?az ހ#=YìqCm)_f".ǂq!fCW+P@DeKgEݵ`v9盿dO)'ظux(S8I0*ձl赁u?Y 9{O^/Z]4iqd@KT_}Q -A]HysBY,aTSj \Cx>>$ A[ϕt- 7j2o\@0򅜼7 o`mvȔk$ɎbW(7#,}#]eeKOy6V]7Ua@+Cbl$sG^egA#`33E?BVBMH"AI7tzbJz\H>5euO3@a!?2ikgMI ~*ǟg+09^JK4L_0Lv<snɌeo eypכJjȃ*ϨY=+\27ԤGە/mXd|&Xn~~mR<<2gRBPXU++FSgcLG ƄGAϩ,x[{r̃YDHJ6qD%䚖S^1ӈW6>Mfniܘ;ʋcPFw%@fU7X^*@sS7yqF6>8)Ck†DX.G : =qA~]'Rq$k8e_Jπ`3T)O_!) ϴ}41yn_DdO\/WN˫>h>(A_ S0R ֫n |9`vke^N6B-8>5˄$j怰:[rNiCIf>.JĂS`WϢrhީ7{iq Hr Eo[gBu^R-3X& ܣXV<;{(.l% {B"*d6G e^( oTռmgfO}Uǰܛyv^yoHga1`]۟k(D\䱳UGQ}!EߐW5p+j  bm]#E]2@kL)<ia'mVt֗ovE,IV3FYyꚚ&<. H7O9OZ㦯ْw(}5:WjCmlqQamJ̃4kڀ"bNurކJ5L|cr2R@sbtP*:lTZyưIAlM붐S3Nzʝr 4$&ϘU#zHx{ dZfF2"(IubVHp*"Y֊}/-Ģ|`_˽Oo }[7N;)a1J4]{$,“gv9%"~XG, Qn݄ŀKw8_64 )T˱֕s^!_o,S hNO瘏2NX_}H͇SpinkxBj\dOÂ4@20K WHSj&E&u0V$fnn_Rz֥yCr'dX@Me:k䒧 PmAL-rFO;D o&yzaZv 0ĮTוeSATУtJ+BrlOxX78WN!ZZ0Icn,dcDc[k]]Tx-"9>Dz*X֙htCI=`П# WpǦ jaZ$'yUo>Zg_(i^uxNě" ATBtq}!Ei`7 ˭ћ{ *) cFui%GqL")bJBxXbmJ$T*3:, .aĹ7ͬ&AV&? `/flɤls[nK/ 5/Ys 'H(X +T9kԉ X.,<ɪTm9L)oiIr5aDfxEEg8q&#vJmR5V]&#׎^FLq<,,}6P_ :S4lER= HXFx9m3+lR.dff=Bؐih)eA}6snU*n#EqH`ZQ]6ab(z@]eg!JBdgy*0#qw Wߖlx_24!| 3 nYpSw$x$DQP85+Ղ[EZ0!޷́{ۂ+n҄Pɚ>tKP?*ft%Bߋ.nu\n4%ZT#dyBNwxz Y42sdkbrFG/6ꋪJS;Fq\@snz طͦ[(Q-JtٹWCpVGv33_{6mpO{zYKn&9>֔~bcb牄4yQ>Oz oߦ69M4M'qUDU%Mޛ{CA\h ҹ+7wde "C[Y;˞/=g>sWT~Їn EEJE59u Omƕ-KQˍM8;&6N@$nB'j.X1°O.LL"diX`9\(͙h\'g*Z2iP ̵' Ӆ~s-uM¬Wr$iA0QM>Rtz+H$"%csrga%\IOZĦ8˪L_yBtaJNn묧su!6:ݷ(PW |r&*(M ;â܁vT|Cp쁟~}5y[Λ+`VaDR)b*{_!,HC²6Tb UnQ(vlzcڜer35Qc{ ROǛYe#M!`| u}w_⃖Jӵ+eȔg{ZV !8-31n +m_wN"D_ 1S-[>A4N L +-el(JmRg>l750$`9)Ft^vǔv}LіJ~ ;K^L|4NT̯'2{pMHz\z9G35fxsAbݲ1iSjGnW^j8/ixh#m] d-{b,跃RS -ܝB?Ϗm!0~ITN^*@PUԘ;\X.洫tPyA"g?@ Sk$GhDrvT'-ᐟPq)+.U:1?e0atL>ױqkFmZ"zPiiLTL4Pib=w0aM KW> xKza@؍i¶b .oM2=%6kZm =Ă$y LBVw gA%ӿhCp[-ې$"(YX,4eQ.AEK r:oHtr ,7S=dy?C2,[{{?3$>BfLpύ2J7@<@j=|t `kE`C/b}Wʘ5 Ti67CZjj.X9I.`?# ajJ4҂L" M@`O7/ !OuJBi~-Z=;!9+=}-A|lIPjLWţs<KpAb "(=zZs.I ˤlo0z/6G)D)R P9(%ZZ#E</aH$w}/8Jd<&ٿ[׮Q5 ܺ0=Xٚ%Gl=[&bpsY\ q7&/J(Jg#3Qu]<2Y%W`IlmhbHe$UDc4\+Eck ;a蕮Pg[AibC` ^rb|ô}`d]çګ~0̚sq̉Ӈ[$_|?Sgڱ ̘A$i*]wnxl=\,:ʙT*6y-A@ycm3ݔ-bp#5OQhhNju#E]iWt!eM håEg)Bs:Di8Ј?[PrFN7v5'#$Lh>L|Z<@#XE+lz b,eTU /gN!6xf)jw˛e0/)*U5ZU9<6J.8`#|_#} zvu</RDl}G+"q3lɢZZ`c9VʋLcp)-"gx *2Y嬾(4*|]vT1W_o6b%vN?MdF肆\0/W2~T4-:'7ŞPIwnz8z]$a҅L:qKuڠ)\'m\|2KThywta[;X%(RP>1@ރ]Y5r#7<}2 ⨥jze,̶OQ6n*5Cۙ9uVW]B (*Ayv%@#MHaɭ}| 7(5w^]@]|,hG]M bvfف`*"+ ]7rY$QO(v\ QIIoGl0^=F@\> ʓktЇ3p1en-O ak 9RLS%(-Ge~uW"+υ'.XFl"ƪzs~ IlO}3Pg[0\B*W^cOc{mϣdϖȆfO7mLQi$bߩDTxL [ X+/5Ke<ݽ&3pu,i7m@z9* 5~1q &Wꬎ!T۶>{\n!(骈s2dy31s}uKtr w' B7ᥧGz.f da(K+YĦk!I^\H5^YVC1EX$M3 GO)#6ie]xk=|SƱʐ,\k{ڛ_VP)R[PATM) xl#%XabQNU5 1-y\'-W$>x%`"=iOM*IO/i8G(m75(2c݅E&ZmTqk6eT bj ü D p /Ew/ $9qQn_c܈ /OO-^r}4Ats Cg#ʈ@X3zZ|Y`GLtWY8|]|sn8SH][W^)'Z6*D&+Df{[O֗/;hSKv[pWg" 5˒e:Q9l]$\?"ӳ_=R-I"!}6Gt#~qdhfW4Whx^plD›Kɍ 4xPO]cp] "~%ig/A6/98~Ź8ym 5;EH^V?G91 &js 7t+ESBR?K6MWDr .Rj`L8;0Ί"^0yϧ`S<kSt| Y%.5Vыg\ה򂂔r>n8=U"?ItDXOh9#L&M=jo2?#svyqk0D˿ BP:J5qt)/u+5ctFŦh=AFߚSx A[LlASwӉ'Ӏ .WJT2S]'芢[a|C6| qH- 66x_c*Iř +2ƿ}#%G$71L;I+lccQ~ /F}G ?=/x!.R›2kdDBZt$_J#PȀ0%ea̵=ib9u:0DSh.|_2Z?OӖvi{jv\\xJ̢ܰ͜ RLh]o $8s$4yV]Zri`#|Z/&Ls~26&!T"1:?Zl! &'r?Sn:dR ǸxSEXzI2WRa`Eyv+q_H%`ru+BzXwP>(&X-ɶ+ ݖDz}Lfy- t܃>f9hR˯СoBp 5% ө6 :H yXzpOr9U#ZM/2tVwheg̤nvV xh(#x VPzAL(oJ>=|k=AyZGԘvʟ޾K{Re )f#m *I(nm)z[=гQwȵfnŅ(]f<:0˻'"LX<3ڞ)$}_P0})gHq2v@ϾǙYvJ'*_h٦#lT,4J?HtKŃL #ZFzoN 4GQORPEԉe&@Te=SS5V/ċ%  ę#vB;ncg!Ly/av{{5 &:osuPz5KV^jB˸r'&eXLǂn9UE!EZ@BQH)ruV;K?U^3]&@`z• K =YpYP {`sD6" EN[HXG qMŖ~fql ta)~aɓ&Œ4v4,@oxZ)97q5 \y{c~b'3Ƣu)'V[ʫ G"Aȸ$l3Zz^kHfܲi7yhY4*43XtIt"qZ 8٩ZK]vtZtg嗄tKR4=(XiG~ܩf^7;~o[|߳$~9:%IBTGQF`맸gbja.$wfK |=foZ 7m^k^G1L 'uy]?io@ M߬~A?ԧ$až<ÕKɼ@soyKVϞDyXLPɶrEC 7}0c6JRs'#>-plRքWl&S JImj\F9Ꝙ=*J,眚C](V*2Ng׍t|ȧ-k ~ ^*i* O,T~1 żj6;˅"(Zv!0:.K|È 6iT:H|M#h1޷ ϴlLGIvcߴW @u ݘwg7?eg>LH!tPH Cp$9_kOC f@(I̗p[ ~WM,0lGLBo%KwD5tHĨ㮝ԃvzvPXÍ=]PC=Ɵ/U=\F|?K3 |,'Mhr?}߉Q3Xyh% )cGca;s g3"a:K,׆7Fqb۱ݴ@voI˭vN}4Xr(3Y=G0mɡoW@} x2!/}BҖ,:my3}Zy6BõfhofG9(w@N* b%$,u$f@e+•PO( *8H[紤(_yοhq}1,ԧ ~M&եn 殜T1rxwoI=A{*7D j?n'wJVczv1PL+"Ǯv"X~9p=a3h%RʺU [4.Sz!dWJs(X)8 4RB]6}3g7h QbS]Vu>B̡S*=xuh}0{';[Ew7SC=h?YpUIK$>G)ތ}|bF[Q͎.BI@rH>(i@LUZTeJkgXDkio@oR&@ -,TS14ZasV}_4M[UF[['d5M%|[|08Z]B`n厽ZD%$#.'Bv\ t6f`-22LQRn4RR7AMnqNv+6o#V$ =zG۟lȎ$ceTl6&MuzəK9;0Lxuɴy1GH/_,.!*`ӳRaߝUԗ9+܇# ^,Rd(4Dza4*:uyʖ>;(ڹݧ7O+yFn YGץd!Ih}'Bfײ,Ib| t*F^<'Ee%d}-X7Y?. \flDMsPq% AIbEz]A$:<kxWY:oF)\۷}l^Ef.u];)Z5lt=&D<甝?zspw K ,Zstjj@tx –K¾P_#ZSm[oHeT(NѼrԈ=ݞPx1GY l5a E8}vhH nrYV`o:a4&XO r೤]t(N|V9'HNi N4ʘ]Hڡ_XoQލ-|mQh9eVΑ D~HF42چq2DmԸo v3{Jڻ6Gug'}M GoT6ې+3.a]_ξA!G}~*V'Ѳ#8a `&ز㉠j}֯q#b5֟9>9ɪ_$)QcEbžyF?YkrD~=+gfAH4o@Z%T 9BS:eZaZz8'e*ָInF@f䵭ڮw=~ ؔ|Cc.)EXD& 7:~;(#G,Hs^順BR*fXF Cc T q>$i3r;O._gѵ%i&6Dg uv̛mIZzW PGV14't^a ^91;8X:`!ãaƺLBWPNMU g֨DNfq4Ꞵu=3ʔR Ui;7A4_L㲩ֽydq{O8sV=0n Q:['! dTK)VT.3jS׊yp$wLKLSe=o=C` J_.@*%bɦ.zcJYlP4bOal>Zjc->,^;btFm00F E WY9NN*{~k)!܀M9b:$i.yҋ!?8Cwnؒ&JZYHp%sas:9""l&K 4r S@ |fNDhΛ ߪ;M^yj2J'HІdMLc8 `2z0JOBp|ϯڈKcHaX#bLwFligh[($Oʻ6S:P,"!h^-12f0ܱb?!x d/5װ K /7\h6*7hoi4/TX<2m ;?E'q?00YVmވLeV*KkVmd^z ;yCD0P7m&,蛄CYiGĮ 0.E31V- 2g%!4;4/Aч X;lc&ph D0d`%2-alJo#EU @T? (y|r2dChNNLй8My [LmQthlgow鰛iѶHͲ VE;z'%wOt:(#L,p&-jUy<λR8+` S@(*a֪(+G8-+r+2#2 z;tyYlLΦP*_b #FscL7/ LqAVHQWpO#If~aB!]< ?HdN1HyI :HҌJxU$n߅wQ1Iܷe@<7F.<C,Z|lߌWX F\tO|i?kXTvs$7I6pQ+lI$qy}'x Of趙)f8Y :>ur m/& :kC;@5ȼߗ}$:V ~YpNeǶXG3qtKP.m[>/WJ1ԯǗ7X9ao??_i;[0+YtGŐ~ٝ("tq>p{Ġ/GB-^hP)(ZX|ye 2*~\B 5&2*SADˮaHΠ!! M˩3?5TsF b̍#Ak *LIPiRB$YbzǏ^M8[բtL]Ibpxi(]>dʡekeSq=O"S15uRu;F.PG⸮ICf?t:F9]; AX& NGE`n[">yB-weDk_;JjĝђJKȪMTJ0"MCCؿHx揀b65[ Ht:D[r L1eєolЃ!adQqYR,Q?ikXkv ؚC=GW+I lZUk cܸS:؉rŇ=-N;2QIܣxξ'͎c'cY#| AaM%o %UQ7)4Ē_f}-&|4kHCm)OñC^pUGUdcA*5 ϿIGi8hj[Rk?D6Fh@_䪿JtQ0/틄Eѿ@^}](=|w?/TzY6Bꢜ)!z;Y) q%!, vgHxo\m> S-8oAlRG\A:x[ː3l;gGujtEFP5Zˣ ^o;-1: ^"(D O{ӿ]wC^j'%d'bnx܌Դ pҀ+K]ָDQζ :eYM77^"O C'fN BZz˘~/@09Ƒ%0Tn.gեY-`iSi,[ȂMO71_"a(NR]?.5L {(oW N?8wj:ƀWX $R2m7.]aAʽhlYйegkb}( #FSw!R *&_b[kֲIA wR3'MsE 2F?Yk'>s[tpt8\1Tmͳy8 FZ=\"څg"UքWL9ua3npێiGclٷ:t`W0bRksȁ3=~j|?@  92`3D'CA~@e1n,v;I7l K0'HQӺR3Qk%1,S5!<B:U73@Xq/n0Sd} s[& E (#Qtc~b}>?fE4`5~ݣ޵sͶc<lo|6 { Y J[g2sz֎a'pĔpżni|WY6.i$ |.9 _g)ʞ{iF<$Eуr5lK A =5hifQIA¢7"i|3W HYg\@5Jf6Yù=/6[1azu1Kvkn *ɞ›(;z}BY7yQQlyRn&_[.*?a<}.J`,#B_w֊ U"`u$Ըp}+˶gU{\n5U(-d B'>!*Sn|)8ݥ|zzC ۙTtU:fL-P 귢ƖV}*u|y8v$Vzj7͕[yYvg%m5ŏtm C: o[ч`Y3U: Z@JEGCFJ  #?O.5֒mXM!Yp+&Ա*m#.DK;;ny "[QFDHywؾeib}>#:ҍ\6#&ԶFAjosv&$򈦘z ?b{ڰ-OZ x 09}У]? kpj'yfm4K16 LA8V>,B58h 03[:I;2# \ʻ/,EsR/|otG4 '",v9sWlvR7: IeC{A brpG׫"KyKo^:yp {i,}֤7sqT)=&^haQ[3];x L7ȽEQlϓZvf]IvBqժ a0M8Tݰr,ZfϐZj׳uX~egb@?9%I&棺QGc$yB6O)odN% 5.u@ %lktjUT%],2!`i}t-C$چ:~KP䷉Ju MYd.2ϊҷ+a} .3iܛSk!<{a1&.pǙysFwh<_p2&{({„H'-5iwna9q:4NRĻaO;O0G1K" rί|Y /T1mh^qM7WWOyptWV0ZY lk1 >xюKW-L|վⰎVĀBzVӲ_N q,wY7 _BP4v2m Va -|6?e#><}KCjv]Bܤ6Ϫ+` {#"\qMJ\67=`dleyw yţZQ)i٨z,d!z2B(<84;/A.qm:Uٛ$} [P}hD' ϡ.gb0+!vg DZo2d{d{҆PB5Ykl}=;{FHA<}cfwЎX}ZiYϗ·[$#͋|zKx2-ݿ&i;_y *x|AtA((2W hS=G5?'08 ?R( XٵO46*wkAڦU uYɹ$9_/5hv1 A-kZo?Qo§Jh`(5رdry3KF,gwnj-՜:t!HV{ 2@ ڝoo/#?nRԚH5 1/s6/zo%uEË@ SB#"W2s^K*X;w52 v/p̄eX`˱& M5"3[1żcYxYU( 纋幝-A(\t5dG4>ܜytejŴcix@L vȪq`E()\~3's ےq.4Q<0K|7;HCto(`/Y"ԞbCyv5 wC(>LΆ2; {Y0k8wi%G&h|U+ȿ*.Fz_5u1a4//yKq/rITˍV,1ThZNkSHImGds̥q'ˆ穱]Tp.*)4XIcQRM_t=(1,Hv@' VC!fb5mJ L a(c̽6Ɲ78s{a)m -i&>Hiv* %;y Y cDpC/"!ZJ`i-`,d[:TȂ3.OoP\\QV)VKhXk앒A^3pH\&At zZ>U@<~ Cםma_.-^0#5! gb:ۓ] SRX2 -Dʕڡ r(vPCI/.'~F?$qo 9QZ~vmVvr}[$Kv65nn2;79$(\J&2Ic>So05(u),+m MR~,_wáNf=d D~ Xգl+S:2;V2En- B> Ϫҁgx8Y.$T>PVJ}.$P?!D)'뽇?90<:8Z%4z&i.# RNGru}oS#3OT㉭xγZ͓SV !͡E'9ew\`#iJ)&UYJ?bn[^'B~e6XИT zOL+u8 c2i;4@хucmw6iE"fK7 M*fgRr'EUIR4I E1J}'şģQMQPEk\ݸSǷqtiGjݑ9hFtv}ȝ sm#z;iғJc>y=yæ'DEV\R!WAF:\!QF$w !xJ >7Dʣ(B(s u` R~S\ha\{Y^$13$vS@h^Xx@ .5̈3rHo7qۥNsŸ PɰKϱMUz/æ!wm7U+b6|/5%Pl>!<֟d 6Tj46^[Mn=7L~>1ڏpU_6UD愩삚q" i|"@k߽?/jdi3-6XsnWϯ,WjT][562tUO-4rwS0v)+3쟛J1^M AIQ鏯7Z6R^xڟw MsP[ḈѢ"0 TLݬ,10tsn3D*Yy@X \.܉^yǝ4rDv{ cRů#W(( =d-&:hמt`t^u ,55Hҡ#52$,(OՖXN*i%lZA![Ŷ^6 .Ggm gq 3aN#o.WlMbZ) c"?/zdOQv߈GѮ䒅Q\['_:9zrྫྷ, ODp|לּ;z67C .œ #x½Bxb[G0 &Ky gzmνMD<̜חzz=Lf𾴁.,ufٳF Uٷj~ǘ +Q4{/U9`gFCݞU\+/h\8t}L?a*@6 d+v"؅2Lz{בy3]>[݆ g? 7ĬGeY!ta YWFf0ܰ5Qr3ʃwtl];\[(_WṈgP 0l_7G ?;0Jv4_p"Вi"!WOOzqӊrK?~g(C=ov縆ZF߄<' b .+!Įp-9*gIxg : ht$}9s]ԩ'/Y5ƭTV㙾M/{aO5Ɋۜ:Sf҅gnY"Q0SNtKM"jJ ǥ4U]տ#i_o mo+ :n jbxYk.fc,_f_Xy[u _!/֨xu_5~܃C0ÔMYA8nqY`uIZ}tƁĠİ˶siLvw^ WU3=CYU˰%}f9O@Z^ءsiƼsSDYP]FVߧ BH怄`h#>2%ig2ƻ@p`_9}%WU6N58AuRj eË́W8VQƒ,t:ZǭG+8|UQi0bJrNjajՖmaMxB`S"蝯!!u%᧽J!Vs56%|YH I+NH7V!NvRƔ<6&8_(X9 "pC\EĕSr bpʮɖ R(XVD|_ NqsUsnnnyE5tVF{Ɖ~EWiYYh+>4?z.]ILPZ#" UDY!.~_G^֐p{j6Y* =(DZK%h~>I$Sߐl4ʜ'=#7%0x1UXIrFF So vbVΟ썈 +]%(_']Du+l}CEŹ$JC)fL|\RXը\Vj"!=PXUwb24}[$?$Tyoʛ TKH*K0`Zr+raG'9C00O,7xGQ l^un|OQeȫ`/d `XfnFg:$x%ռUo ^]yDkm+Ε#{L yW dGZud ,q|G2rȪ#׺,KuE+Mtbp} AU}`x`,4i ,5ĩhmh|S%UL֩vrCg_&\V^~ʐ]J;dt!_F)/sEtiVu6JhWJK~-HS,Ҩ84YS^5=G^ow#aX`gG */*ru'eCZo>Sa N +|/ 8 xǮ&ά8AI1vt9],8Vf\qBh>)]sw{] OU!+ԧ7k*7[ûиbB7d.^$'Ju('OQ-G+[vwn%ISUPWA~ akx*juD~Ch56[1ɏ8ßVoOn8VHQ.s]H #_]Licɨvcѧj{. 63crd8pf<өO̅)eǐjԵ8Hi qr/B:Vc.+ķ8{ EZX2T3o7[b>qE-K4E@3LI}в ֠2ֿ ,r /@'>GE:.& P $xmӈ /{LHot-e]Qʷg~2׬OTW7λΰ;/eg^&zP۸8X`sNe՛fy?Yٜu)<ҙljt b[upr|񸴸w"8C2l켮g qݢA2ȻRl(J.KRg2, tCV-}d 5.@[*s*iA;0),;QGP=f9 GHKc'^ZK  p{VGN2woX)ɱk,k>Җ]h]Q鱴V}b),`6तZM$!o'H1DGCFBFW~wʜ.߃ԥWj)e H層.(5tZ #O rl۶EATigK\ay.m,0^`] 9' YV̧x|FԌITWYL&ul"#ux1R 8d_-@A31"|yξs*oe};R})_Pm^_X=lBB0F+ll:Z)kX t(^4vNn6Mla*{>b |%f&Gًv~3PS޿=9M_:CX{U@!-0`QDr |6mQsajcu&,UBҴHo&q6:H~pFo%lb|1AmFww <|=p3xW.+NPn#vR^^L^x!cEU[:1 ٳn7wP`~|%36OO{#u랝V7c#S8_}+CZQbЎSzՈ?jVf hh^x|LZKǥGvI8㬥] we9J_ zӘd8K@qTW!z>^˿(8s$A2^Xu<;DjѺS:LG޾rGG(-Wo'33$+M4u9ր!{ixES˄WvY{ rxS$6*WKsʋOэ1Z"l[ݔ,߉A^?zԣ=+ fDQB{Dbnޏn|c_c `F9e]&5EQG@hin-FHV9v@>D{o9gPMUĔku[":(l`t"K Hva H[QP lCY?X&3U . &R0pUv>W\ \鍇ΆvWr_,A&&gM(zrmmdK-z:&#kU`Jkm =R9lJ(oD ~mM^Ja%ATLOlJnm5nƒ&_@؋j XE5cBz-dvL5j׶{,,0~[n:3VuE"itIDĶADD6Ìd(m8pr&8:E(yz$߆rxVM2_x\#g@;HT_ Zwg7ĮrQ<ˣ,, uY$-T,ovHٯ"=YաwS+0Iő8sA'HNP/ƏLZN' %iV;* Kh+(u75Q:vD/T$ !͠.|KNXΠ.d 3d_熶-Y+(x$)7:65%Ko8<Wy-#lBu3ĜpX+e'˜ ٣Cyyvjy=$ghߌ!EgU.q<̝8xI@6jR byTq)ȢZׄc}|,޹Ȫj40K߂Re>".Viy򱁚rl_d',`WhD$s2527BX""%=rͨX]QWqZw a-QՀکFq伀Z%(Ν}F|,F  z˔&%SN4xPZkhO|Y–:2t\\g4d1R\yR_ CQ_ϯ=뤚Tc >+9.1+Y12e`7Y|y'7]4(-Nyc(e[OjA(=F޸4v ōd&l6b|cPwDe%2ztgݴGisWaBuZ~lp$A,,)z9T4Ni_{.5R+u#'[iQ42{3jyЋ0A|l׻|w^ɸ1I.9<T3)4oO3A(I#eI,G1naWfҦ!q5k^E Ǹ2E{\S}r}Ț%,(#NUғTl{Ε Zd]kb Xc]҂[$;ޗǧa\M? G)|Fw ca]J@,U$'{gh:<Ϋ̘SDj V(/Xvֺ`f)[wHK R?P[x]ZK2`so2WwwFlUU/N+/"moLI%5aSk}[$p+(#Gj쭧l;u[ #Y訖(DU0F f ٤öE`\`N;RNY#Fvza͈Q %r㑩6isn"m45 ZZ<`h-߮,,͍N3Ӊ LD4W53=!/iT$ŏɍcG~g*u!V`hM\yf~(H`:s<{*zQ=$#sip#|ӹi5PA5.Ȫ-YYԁ'*(Ȱ~ymyzOqfpXFm+"ts?04${h! 2Žg#OPPCs;hE9aTi)ñ5)4ʛjB,_|6%{ӱl4 hƖm߯`^m1:~\wT=Li`JwBtP};nu r%ąwֵ咯f3 +d܎UD$9*k.ۻoZB# 2D :@ĢضS ۮ}lf3fPipMOӥ>%!MoՍ1F:ؠ1]45д%j8J2e)w"e e5MEÇ*JP ?Ÿ"H 3Lb bRS^J0R,F_ vgۓ`*1yoxN\]J>2kKKʶ%#X|#qȰ&&v_dRQz=%`X[b|L|L +n83g^b"ą"op먨 >a]Kkxms+QPyefwm˳8q"5iv$HɵVz,[Bg>k$2b^tȖe#N[2sypc>u }Ubwi>ׁ_;.;ߨcgh,␞DkЍvŁ(pa[0.24BUD2eMhvd!f+ױo c;[NjcO"Z \:id}>!۸fԦ[~!|`O #9±\)I#Kg+|yb$Ty] =o"Ky=SZiƈxBfTr:.uaQ,A0tmA* -n>GypH)]k ASV)6Msso.@VXl2K_q2Jh-jR]`͋VM MkosV쌡7Nu@Am$x6$Ji'?$zVeQ;VeBWYB/&⟣y1q-p{o4Tj|ʽ#ޗ2 63Jϧ4.k J{A&v#0 ,'2o~6nuE,T$ cp+K_[ӑ4h3%nu<6g-\pC{G{K*fNyj.ldOAy 74GYh?NAFK(țr>~0Ns \p}bNdZ;;o(!'.'!~{tYmq12r:K9_Q(WMĿ7 ^mt [Pq%ZPϧQZiS=+) SJ޷ ( u3^8G\[q^Ӎ,dR[i(E^+,|T%eeH_pŴ=f P%\~N9JWfŖYNldHcKә!$q@#P .P/8?n22L ;gӱ f9:sJ*X`WP!Y  2%8e5h$dYFpƔBj/:)lR u'Sb:KU ;9{@Fm ԹП6)l~e' fK'ܴ 5cZ8`TֱmCBHg'1iv&vX]7{ȄS\.bf"UB9is `Y1+WZ8P1 +ګ}4xs+qh]=xw[R|dyxO=3YVE!(tF8;ּI,֭ÿe!7]cȡ'Y@oHW4VJ,?外uIqsJfz[Z]%ۉ/j6 Տ!KD#Jbaz* #\g& BdiRV̛pwvjo[DNFnXh?r)g,w0Nq7&  {KP> uQԫfo8>! iSX?-p7#-R tz5XBN5YB9IQ)޷oL\1<6ό] &|ݡSF6苦Ņ% X7n_ =M%:d(xK`S]@SC:qn6΄BTKO03ziX(N%C+=#3w]7p|Ń4dF^ߣ32jcRftOƭ (~JaG(c?[)Z?U˛ފϊ}8G .`!4;͵հlߣڸ ʚSa&$]lBjw2r{bW.<ͽ&miYhV. {0Ky؟j@5ՠg׫'53N\[ERo^F)^9篊JRYLi#]V~_NBN0犵6>ܦmzkf`𧐧voDyQނlf.ՃuU 'a]eʺݨ0r[T|V *D%}aVV`y|'cQoXPOs\NXV2 ݶơtUp}+iLm$xUvni!aE Nd@ld*Z*{E4FWƙpO7ٺ5:댎 ;Ɲr8o }oR萟aaa[x(Ol(4d?8ںkaf/F +ưhoy+RET:\i-v#J41[ ,\_FuCn@AiŜS"^۟.w5w/= ʀ}%C;ݧMM7#h39RH~\n#5) pDVs 0UO^b;E |tqݠ=KYpXjm ooÉ^T_RZ|-Xﯗ`PwG]Oط-BTDc%rdv o[QjW@<7s98;T8$phqO{(oY^I6i۰anHn0ͫ=|rɱnGutEȂ;w _^dba)!^-*6Tp ZSA% r \q38"n@A JAF/ 5j=q 6S.P=+JC+]?R{MwݝW0ٌ5Rq[!ޜPZȷU| x^bSB[)q&T^Jk}IXhÓ.6Y^AYP5+ըEac4PCR&kl6RY7_9:Ȁ)3&(r*ff0GpF^C^{r>;!;]B+g}zIm‰-̵^8 t,AMe崉ya23N֚ dO+n=ys~$5Ab^;'^LAG;(2(ȊQFiX4Q#V H`?BV/d̛7ѨoUYٵ:m7MDʡ%pw'J?~qN.[2y0(J,u X3`aC9Ў7 3[Z U K8|dV}>SH vI]) v07R5N_a ;nM(8I ᕅ)Bg8JA yQyжΙ\^ <6èNMU:p\num•_Jnx'7E f7."˳ B4YUAjqyh$2kwN1B@`cnp r`2>Q%^P:f(]oE|wtV/Vgt}ٵ֜D*VpGYDXswVuV@O=cIs?w\}nKh|-/oa'v i_C+FԥhC} Ce о٘2;LCUG?׎O{rA 0I;dC+ȂLr5} XDUk~9$: _(B)мD4]yUgMb^'D?/Bӣ1N4Ho{vv˾Aw$yM9(8\L3$6\Å7Vq7MXAC!t-K0" ^q2M8ݠ .N+Io#gbHfU|3toQa&'6P9PbyH,[{׭G+/~x%ct9t/R3!ld c"L~yNW>>׺BzP8~oQf؈*:,ޕ\]$zҀ>o (1Y̸ɽTPdflpG?|SlF#DTy,s22 FB;?.<%MTìmpEPB|J99F'CB,H!3(f].oAϷYCIxoq6qx2A14 4AOaK64n}/o"gJ3>1L % NphX#0";?#,`NBv \0ʲ+)()HpRy::O-0 /~x+A4PT JZHE,JphSȶo#nޟEzDQ'B@$(!N6mR c!;c |b%e mS 'C 1w>fdsQlpvK.O/zM~ffGbY4Slզ)f-SV >Lݟ4Od?䁺[ T v@|`,1V|r'"l:hdF;; `.pbXfXU%GUֵ/<7E{: +Qvl)6}7FH.6[4d! 0 H6+7#8R`ػFy 3Z9c-tz"%h?H`}xIYlԶS!X6h1&Jcv/>ĥj?"H8Z?v;|Zjq[>]ǣ3  yq~>!xC*{qmtǑQ}> q=pUbzQ]6YWTNXq{S3PPPN' p`zFXj_. Vp7NY~Cy2+ t&zL/ s|zjx53xXΆiYXRRd8g=0*S;RkF zfnR(8U~H\9VG^H@=e)R%p5.+MJ8 "v4,,$+~qs)2%))(jr=aΧ^R&b?d=-ݴ( Q @]+?hXbg_j=~19: t~Guz< "yJ[)|,[!66JDby Վֹn%+KxGV,i#n$;GvF7{-@6HSG;9=4-',ɘO1c.8;F+[Dd:mtk 4+Vz[EJ=_x%XS@@fqR0Pi#tr]`^@ L#!(|ޙ:ҥ3E2,凞8. XH39%82 Ds7=_({o*9 <,un'vn=0]m1S6eb'>M(@զL2Bꠐ&ԭ¦f(9ʎSE*ݮлkHJ-Q-,Hcdus%c߂eR-q IL$4S;*`Pd _rz}~P}<—+eVz6E[)|PӲɛ2Vs~jo⹮cp]]k$K B DvqXDd3#7U}-ܑppK/tb;nI2y[0n(YupϚk|r-,x'u}bTG8,N`e#?;p<ǝ n>9O䘠{( ,ѺnZ4k焅?"K .xT݀>B\j,sui mB(Wkᔮpc2Yw8!g~X43kE[0iO5DCVˣBZc?'X& :j8d,h#=n1 @̄_E d^ ?O1ib)ueѦx@o+o'DH$YٳG^s]}5jAz700J!=e"XhgK:::}^hп8Gt[PӾgZfʃsߺ]m %֔S5U=J5TQp7?@-E'\?2}0f xmO# y,sy$DQm=:3dI$Pl%sa4j4>Ў\}X_],x}IB$M[qIw)uaKD$Q_gxhsBa7 VׅOkJ3%n*lpf&x6If*ǔ+X˨NAoX.j)–7cn"#K*h#~*شޏF澤rгU Q'ݿgBRU'kX(zH|cnS@( 5,8vAۧ׉peoy@KqϺY ӆ+mg9SJ ېԹd$ENvk\ٟp˜Q9VH l4_ Wi +ӎׇLKDgr[吡USFY 77HCި QwJ4åo~_=ĬO&_샺I01Xx 6֤O.aq%J{Iӭ(+ MxuUOYE/)fPCńA BiYU$lKi Uˈ9qsGbKKy2tjjj,(!iH;k٢  P;L$0#s!45F):fymd.*h#3GS'ɅY?^wU;Wqqe3h -kLU3}grtZ~B@X \i, t=ca6i`]CЄ|gɘ}ݭ]n>v 3BTt +iirDW/%2U]ΔwLO|N9'$i&4ƌ&&pu'tc踇OftD>h&g}h\.[S-\~P"؊j}F<!5:׃)3Va`4s߮8C(xpNXAd3prCUf׉Iɰ !,pAg!FXh!KKxg<M.MfZ.gW?4,є5nl;0T/|@]+*=ܚZ H V٭ٛ#x i\80YH L*q4-m5͆ DDx/Z(vN׳Z'%+~QHg*s8θCFk+GMv\ALQO#?I8!̀kf:]jq8n}VT $[q5g| ɒѝt@n鍈,M0l E"HK$X˨&Ag[UΔB~Eaƿ ?|*|N(&XnHX1Tw$z*[ wxaրfCNӌ)y'IGM"&k"LOQ27f-gŔ1Bx+5M[f!%JX֬1畨l%"1}}c`Ȥt$*oZ~p73G]yOj (DSʜb9E'0'T ʧ67t3Fa8G~HyE0J{9DZe|`H %#S w,J$#5O!bӭ5.J4ZjjV}s:t^cy~S Tڗys$ #~Nڱ%/=ja2Y%H~3(>[ vCOsݕ&?L \)^]7Kg*f9&Irfqĸ+D$y',_6҈%H1AW2 qdD6:wgEs'ݣsc $:$%8/ZH*8'#H_`0d: >4'4)mY8'Z}atEٖ셴G|'3sw|),v'4JG%eIAx>Zyה˄G1Iy}+dV^emy9I޲R'5K̜7NՙP?Uk.c33?8\D@3-9aIr91_&m@flČ!@8`ϰy eM[miu gr`ұUUR|p82y35&3^/u[KT+?zA29lZd9S%|! &bD1%b!.fކ4lhYۂõe7!,xx{ʰlZWBOYߜV0v]DokqԬi#]tlׯ o@ufyW~ ƪo-,EaV0/ k9j5А+*35뗑dblYSkSQpV?NTIQέx j-JvI8(0ﲦ:N.A9|y6sZ^{ɘu9xN-r.+*ZYk+G@arC|C/|Qή/"T05 ճ BlSvqRC }J̢ 4 F=&Q|/T0Do<&U\gE4͸&3-jx{j2PN!>,6S.2Z_#0|^4'(kNI 2l31= Ċd_ג%R]\Ȇ~KIg\TaswJ^t8L Z T#4rX5܄B+/r?.~rU9ٕ7Fw9~wءD0FXWh7|tb: -W[ F&wϥ @?|-βA8cuqO7 \6 ḌM=0?ef=-vh8HTj]b`15-MFܜWE GWP*(Џ&WB~}·hDZc4^2e2 D0Փ@  w~-{C+Vnɟ9lH)2 MreAhys__b0/bUA`l)ʠ*<&"B`Ƣ(&tb{ ^X V I%ܗ{"t9~ȵ\C5;~9hjX@fi mɥkp+(j)>rxf  ?}KHs`JkjIr'pnmU#cYiC=ůW$׃_oӯeU?j3TUr-0>TD695#\#k΁\cYfa3U,,ۏ` n ; eIA㑉<2]K| mߏr^!8Y N6kJ=2Q Ġ3#Q1$$vĚ|B׬E;U _ .38fbN܄LYy4?+{W9Z. m@RWn^~(G͔&Q"ȣ狱הܼi#_}/d=,eu2<^ 1'fDK 5<+l#I6?'" ͢x4-9 *id*Xߤ 8Ykvo~H2SuJ6&6BΒBȦIĖʋͱZ&YUijעBdyF5P(dkgJ@]g.{~ TG sxOe0JZ|X&#(KCd~'H#DR7T%=t̍5c됦#l3UzvMaxdfi`BWYP]XpcE-ȐWYQ2wu&jnn'mL&)Ase $&4 -|tY;,c 1 53x goNY4Kp70pS `wv$wb:foa,6\dhO|Ӽ0:IN^FDRlR;[Z8[eWZQ*XȖ@~o.]JQF&BӘPR9ז YZ>=< CP%9/&ƓrE.DFl:u@R ـw >: IlA,QT[QO|S=zj=O9E 87b ]s2%>7:p*!Ek;ŚYO^2yjΎjF I9V{QlO; O'5;+o=׎Eȴ F~&甒ó*$>Y+:[ӧ؎LK OP_kkU*kun&Ϊ+4P&tOr$ɂG; 0h<Gvqׂ PgPK@+g:Hre,gވ$6?_{S6w |PRv}='Q6*~_ wXӖV' Cc\V62ƻ/=`uKyu{R0ij3QE+kuZK \C60=Bw<+7veX YV-0:;'n~1fx7&+曗}3TY*zw:-CDG~OWIZIO7D&dOsw<3c?!p@ |3,a:sJ9FxO8",ػp<>S< 5q&QVOџY/3;ģ2/ޮisApwu"ƑO|c`2 FEAāeErjss$OFsyhfJY¼ 'B 3׭'pj 3"HI)d'+aLzK Ko.EP??!]IvpEl^[Bp,FxF) .[m4s)'%+L]_kZ5VZ5)0y#0OB%X;4~e㙣>-Y𱂔 oϦjTM0L0S6-eϒpp;XF8љ{GSlJ*t, 34 '0w6E)>o[$xB_\v 䥫KV +/(_5F 6 C$h#)Qlc(, 5@$;i?[xJHkbuKcFgJK@-RqRzYܶdG W/cdiSm a<(H&g!o=Sʄ`r2⿘wm \&pxjA wc_ElGo[RJ`'5Vը޷UP^- A UaN0'ڄTJ9zXrQ 1&Tn1e+Gxy V!]i_oa6Tܩ(!g4g#_0$(CXAt.͚mf\ (¿=X?|2V'JhrYc~[ z`PN򄹲'O^8@ϠA Q(nd2LDAR#{QOӸama%Ywe!XX8$FHZeuiViHj^2Oߩ !%vN-tup&xudIkN٧sf½g}5MAk !`|_o1w)fǷB#ZL+XYY; K%i1Ϋy)d',e ڂIY#P=%j;hYG}.Jp"|-ZSoQEN[F.}C3.YOuW,:b_.UU?eS4YGXW1?}yo͜)o,?'kI7!~ }Jzda *C?FDȪ%9s D sT$ "/2`}aۢB-(-佒`PI6-i4ez+>t؉㎧E)76 nC9>Cko;@i6*&& |XҒb1T 5*%ܠ!âe̻la#Θx;A43&y"7|!hEyS4oU֕~l;d:)1M.$C}[r|x/-ڢ^'hq7;VN'K?Pyi9!Vw aRdr*tB]HIœsfCwhq{x9hwYaHzs)s̿Qn;Xro0m^?SCB{niĽ,d(` i*uA/]b\Or0 /U$s:=Ԇ~hQOYE#旎T`&3$/zJnu~}&mY,8o""{~7zf-H `NO ?bkބ|tkLoZl&8캯<3t@JÐԈK? T):]g^ gQi'<(rIvb{{w%vQ}0on݈)ݲ}oB3SXgU,(L:U@$I#jubg}Ԟ'Hw`Bu"0@5 9Fg82b,毼$e{6!0on mw:s.ZZ;̗TfkY©2*eӡ L,]q\LC>CP,}-G \AEIAh[V#”]xlQ\!jS-VDsyz.W2-W:No;w.=MxqV[6MҼw9zz?R{ hQeU"-MA!7HD^‘rQXUh-B9n(Ig&Mif&oԫT!#о76[pH^0G1V cfORcD}RQZ!h0 $*# c^sԝ *ctPBKU. 2@ftv恓{l m̄h*W}MT Q$d咺8J*LI]aYӐ:rz] FťHÚ z3䝰:ۀzU&zNDj%Bppb9 59e=[C_A@2 Hod-.R=IkY\٪YM1$a€,yǗ܁|}{ B_fUJz$ uP&pd/+ta,kJ.uLc+CtRgc$_( AMw7 4p t`'3S48,u4יpKT)H?ZZgBϝ&Q'm >|ǯaOg .ߡ>R,iͰv$XQMVv{| 6)t-땁?G!PH'\gL^pDѷq o|?!(V'L ?EJu|w &̆_GUT5{s7_kkVFtHZ/֧Y+c Nؗ}j8=&'G!nw[W-d'qt@ Vy`] c;=3督&s]ׂm55#PBnE}, "dѼ* /I x_y$yed&ƛ̺?cxb|l5)k9c1?bz)V;54lk{)6c#QI!]g}pեi PXnW^lM+(RpʐD8#bXIU}"@8ڿtI yN(tB|tBh B_,$P/RGYzp\@*/L(fE=[:m cUzRO|bwnPhGv{i>d2,M_o,g; ).x&/U2.]9-̤hq#5 j\$}ZZc [?y*',ت}f^jۜnf1 R@4ykh9>#\wf%@4-ը c&a5|t3MhYJ1L %b{4:ع~kƷώ&|>J@.Xc1G1/+Oj RcT" W͠ WT4;C7;ى=e 6(_A)"RR2Eyڰ#Ge~H`2J18ISw6Fq5pJNX9Hc!s]_;UAf<+IWoeu So"LcT-UQRι `i9#5#?I X9FȎ m=!P\Di0\Ɵ$Ͻ(re48#/rȞQIglnZo?RwxWĵvyG%lӅZ6dTCcS8%@m 6zQU|& gS{MO1rC i!AYGrtp5m|j_2CuND7ms4uԧ=~? \z%UŐ\&ɠ:MNgЧŏ),OZ2t UƸƞ>*W0Pq6h\B|, c@۰AʟqFn8KY`Ecq+k#&_7Wo?'J. W؇cKB: Ҕ/ťoh~7aBn*1ɢ{{vQSy} !%3uַۀHEŦpUZ4.gքIC*RO58_gCQ|e, w9 9 Pvb_/ޢ(B_ο_݂W)r(\~a #z"i]*CBsB'C99xC.<Z.p)4 a)7bh?;BMRÍIΎ!qʱЪ@L G=Sd_0 KDPt{. x;yhQalּ9QXeh:dщAO?=+zA cS0Ѭq7Fi)Ⱥɽ'di:-e 9K2Vk#=J'K U6!)UXS2NSl 5<_a{lv/r|5_ | 92ɂzS\Dj}jcRcSZZ77#HͧO4@]JP_(w`@1-)c3Y "(cwS]:72,|XtȹX@Gq2ڻ#,Mɠ@B-Plˍi~}om `[,l=9gΦfpg7K|w_ VΎ J2;J]#31󀷢Fи*? $O_XHvhdLMt14KSpnFh1J 3"{݃—| $y;4Ť$2x_:O*j.f L->4%Ө,ލC֭ySܕ$Z$~&J<ؕY!(Ҁ{]ĝp\!m.5%HAMxt-^ rׯTAkMHK[6vPfwz'Tax-#?f8 b~,LTFewOTw o{B6Z҃G!ԫ9Μf3a}'ZΖ.Ƒ6Ձ",gG{ =OȦV Oio+UrElW'd3C"y=[,20IYB l(I$4_UX^\xguAг=1 S Dc[<t1q7ڦgEl8EѤ!( ;K%$AT#-.Z`)LtpWC ea:Vd6VT.CߪOOzݿl=y'?kc:/ʶ9;,W y&Eqf|+g 7VE5jjPG2t0E:{5\gչNH> \Lyϋ.0T8 1>mrb𿖅[ tCow>fJ`V{.rO;Q%I#agJ:WYCE [_N%/y9{|W%)^uzlB 5/WKf$W'cڒA9;Id[_@A?BSz[>Fd߸јfWBU->ePs8^&fαF?^ח5Oz#^fP&nh= !t6Hc cn9ƾ?2@CǨ6B!4Б* L1 axDp|dV_ 5 raixI,PG'>ɤ'?Ip b1^%sHV X$M=Oß&u- @7X08[51b,;( e2(c˝!"VjVpc)>֛zzRiV "#DwgQ}@˥ 9)FT/p 2-`2%QKEi{fɛ觰~f`mŴDi pYfjlPlM0Nc.K(5:0Vތn"') f}Xhc|yJ 㞼wq/cifi4 $!j+:Y47tr,t3аG J5C6(A J R*_Z XCQ0y _/Rˉ)f@@Fhti&v{yGei#Ū}iP Pz=^(n҇y1FҫB3x$LR Ǟ˺;Z '{ëaV xFa ޏ_W6[u4*ffWA7Q&O 2:~@[V;V#_\uu: Ӄ] tD_+ͰbRʉ=$0y<_ laQЕd[O# Hх-{FE/GQ(w~QV+U7<9$g+epY1%mƪa9YZBF$\+BZ,.,`܉#l2Ԕ>iu 48QveR\}BnQ5,V|EP{UE^B rmgx.%Д6<ޥ--1,+*;.Z%v_@,AB#Dʷ[lLV<wq@93!m;P8w!z]eyG,3~h2Hڃ)p|)p@]J!%ݖ[}XfZqb]]0FDyL CA.PUe-Iz/Ψ-Į`MWXaY4Zl5]EF%۳$T)B@p7jH{ëQqZSvYқ)Tdp.A0z;lcW#B/H֔7j!ʵ=J&UPLrKOv|4 28%JKtf2xZBOڃ:đ]kJ]. +5 3bmEZ D+`E:-+ƴ,>t^98\ H䎆 ba"4;jY\*w82<0 )/t/ 8W[ &"4iBקA݅vQ\eA5ŹRn⪹;ձFj:rP NىIUK,3^64=BPeIΟg£45}\Fb._#:Z.&4rSj Nהd]قxv#:ϥ%5(F-mF[ęI7^6$Jb;533#3߽g==b#p &ԮrRٻN;,뉡i[ 'zגr')j7X>zŸE`mȘ.4!| en_9Nj HkJ K'G׹U:^ vCXoB;Q Lո X4gS##6jk)fde9v^hn 31ِ~Yv24{*2C*샰1+_x}8P nYvK07{>Naת5m?y=elUL} n_Y#_DYDxZ»ZKFWj+bL'QUc덕~HS=-lkI [Y4k]^Zd&K] PiKDz{m-BޒÃjmk^?;@f‘+ΐ芆BfIƄ]w'"8B0GݟA@Sj&Ƴ7dY`+z/mѻM=pW"`xr S<;|a9i-µ_=I;VIŅhqNcKe]0㚟QCѼX/*"z:s4 -GaQԸCOa tlx\\#'rѐy"#(=c\D Q;Io-(},VT |8#(mUC7 $nsv\w ZZPcV,OQ 7^fGkB!.#QktKk*3|% l^jYwOHZ. +&J Hs+:@YNVNw]E=BMv3OJbVϕp4S]W:ѧ+c@JdT3wp9+ԱCIT64#a3*ci u 0Pj2B s,go(1F _AKZ19_q)6ȌP)DS*m"o+YlfkjEZ[z>Ut,K۰QDQVb7Ml6:eȤm7l5Dn5M Ɐ&4$\S%V~lo={j|ߓ/8B dAah3/a%&lM 5>o*W0D wne4Qt N<^M3J|. =k4dX|ś8,[1Oq}%ށ b[0a %QcawnoOWGh1yz3ij5K~,ZPê麋D^/|7]T|W9:*A dЯ)#vqqH^N4Aڙo].Im@ILP9a]>H\paP`I_`{4SZH^,3avȏuZo>t䧱w_*bUeH+u%Id5+IWyÕLIPTx=mo#2o)ꥈb;ƪ a L ;H # f͵~Tdc;F&DM^hN'"axCUje+۳Շ7*O3Dd߁ _RK|*`,ġb Iə3QaT'ø!*?̖f6@acA3a^n+i%%ON=[thŀU#+yVtV1TOO$,?9PHLoEZTZTyQ,MoVr^Zt#*x1Mfr*~ A]Zm YM;\c,g{tV./D"!,.Qj'*3d7G#A ?$s{4<J>E2|CL}n r3r2p ( ,x5 Sxg{&Y0Q|ZIU"p&NK,g}r1n&LjW3`6IºT 4dN`.EIĦMdbTnw rQd0[6ę#w;FThߝF7|3* 0рՄ)o)x^pY~_2ť܆x)*RzP:9IBԒ.DeU#jEC=K7/ WZvoO(Ѧބ ^@8=. $ӵ%K8@O]"mئ,~*VZMb97[3:)R|OPwyoV "ܨםP4ˤn'YҏʧeHMx8UoIf:4?4mY7{3"Y 'WԣKu Ƽ%P.5˻ 9%` ZKx1澆4rȎsvVY 8 ~XյTݓUY߲ﬔvBj`=\DbjYاm9|vHacaYrhbSjN'wV4aGQ WU)XQik>oB}>L ^Ԏ/W&ԑєC+|5z 5c/: (ݣ,[?s65䙦qRFnMe af5ؒ-Wx8&ĩq5B2P/Jz\Vad6S-+X9]x*Sgf%22K._ANKƦMu/2e摃NtRDْ;OtMmCNFջ%V 3as ݧ#9CAk- =Bo?TȆ6m a,cF;k7M}Xi(WY]ifhuM.n#|q(67Wfy((.e5 yGD 175XkQ)h!dQAB] ><*(#ǘoDj z-Y?xTKuU3d[69"P'P%Vp֑`]ƈ c]2vI4Dž(Xם°%I`NhDs= AFEPF:ڍ9ƩcF ɺm;Bl 8guh7kÇOAz# KL)O"ME|2w#.q x ȿP'jx] o)VSb-W@xw+OK8qG nQWq<6Y2>hϪ]xʩw0_IBH3 ]`S"s5})5/-Z1{-?q9͙d& '+O3@<UXjzt }dhz` )]UW#OaGnERYJ5 7*U{<ԝ{DLU.𕐨wb"2Du}!s8jM <^pe^w>%+WRYxMOy4a0pQTVY_~ };Qn jX@3~ʞbN2@NxZȟ~8eT5ﶗ7vK:5 yW#_ЪmZ@eW8tlő}+B2 F8C!q3MݗZh̼^]լT y BߛL R즺ۉ%=8Q1ýәӮN _L> -؁>WưI}Ӱ1{g;/C7 &7(g9GΡ{p4Qх!>҅)ՑWTUpGk %6MdW.%ajߊ&X!l0RE!-: MM"LuF TjdM*s1h(ϕ~@aUTM)nB}mQ4bSDߞ+v@M^ &l>d ] S1]:n3niOv\GOcLmAI? IiJR:Z+x/h!DB! p "=n=m~ ?ZF_o·!<=7rDO7'tut5Q)㵔! O!b㉲ہjOAi20!poAXU"F8 ֯UZ>uqG*N$AUjq=@^矻q!>A٪/cy(4I; (>pdnŴ0e?(tu%)s##Xbh 'I7%J]l qi&?/dv1CC2o3_o|2p|P Us࡯xX+tl|jC̸>T_k4^vaŷ \݉2ݶb?#W9w=[2Yt_\=C } 4Pc4߯PL ʦ2H"Gݐp]S|_i)UY@dew?0w9v==ȹZ*gg$'K7? I vm(oh#|xXmCڻAw*QJXK^ *yPg=:eLPi>6g!r@ 6rv- Rq^F?)DpT J#y-:c(`E?v?%c${짍6gQ30(%LD5AaS/\X Yǜ{m%Pf63j1CD^U۩By$Ț./VU`7 ) ' z6fJB7FJEui[z^kaLGWQ_hKOXs%  s `i9JKQ*22=($@a >Ijr<vc,4'~4"Ȋۊk'@MYun?Gs2E6ќTL i8) I$H77A5AdgJHsTe@sqM>65}d5PcOQ*B>+MPH+Azؤ.7:{R_֡@RRTo9,<}FM%]7=auޣo.3Ϥ ?Hmg<8AɱD)Fc>y(OxuG\{ei@Û 7sU,Ph!"\vQyOF7K&ϘۊbsC?c0{"wQ`e9ǨGxVsz \н(61.pz:.( 256GR  tFӁ({J)K46Qٟ"f9k4{L'- 0y19e8AsMXe˘ ;d}ޢ7v\jYLUz3%- t>ȝk,5V1ip{C5FUϷ*`p"x \!'}Y )L櫻J Y fH[ DeUp3Ѽ dd! x [ޞ7Б4rr* i3c$\lֲ N*"XeBq?; ȸxI~ZBRw" 2\;/<* s\ +Z,, &P#F ƍOYA,ev$GZҠxWpn_kl 0/3buJ6j8M(A&PolWdiEzC:rDK;nAy~TQB&CvoS^8V ,ׁTJZmĢClBcH(c3T?SVTTJh@絉䛔v :oޜY0Q-DX(i B񷊰 9N O0},@SgZNK]%;NZ`SujP^ x@.Q?QT;F;W#^GnS7cHs!&]fݺL_bfU"Z^T>ۏXL+|EME^/SS`r<NP"1VeaFi^)L6OA>j-sOCH-ٸ"Vѕdh?.b0OSTK<0GNVX|X4 6y6B e Yk|{h`S|"MaU3tW_\̏2HtԫV)8>.AB0Ǒy $cMt#L58I܅: *x(zfzYZb]{B(G0Ɵ< R# yPz. hZӞÌ6̸`uLwa<%{s}.XSBs AJ(39%tD OQG *Kõv#$~wj]7%Wh9lN6{ 4-E?=Y3tothYG; TM:42ćmQ*Op|vdөo*I·a ~-J}rUmk;8;6պ[DhU@^ii^oC5ӥL5`pJm( 1긛}6^gY-I0cf:;nP#Gbհc.3LƄ&- „GMVʃ@Aq*ZC cʣNCz;>cU|ff\"Mh/K>yX@fM75-޼u?5 + eӉԴۛ.P̬&87eȓЕa|Gݺ 8x e_RD|oRwMar[~< V)f/{ es{M%6f@PUo٢K,*Hf?W W,YRdc(*Aȱ5(7GfE@ *^ :)GaJX?.? ouC:DZ+t~G$f"5J"SFX ~םp*p0Л3'\4cgULlW vq&N8ʽR9qr tQ$eYO_I;.a,8YΝ,SB:RO۟aPB{F=L,&V/CIKIGڳjlWiI-&đβcSn\^â /A%(@tߚZfK0l;Wqg1>HHqTշX} &1UIn1]t[5XϰT~si2%xD Rv]hX~@I6 @/ٵAYrBv*k=<#r>O,i> EE􅺐%ʪ8Mpg_6d2@XNzMq-$NH  hOUyUlSZ:kec IѲw%X"|tLt䇱LƞN?jz1'Y R΁ċDgJ8ȯ`LlA1Z^JOSO7P%Z0eLgӖ"M1|G? %Plc4Mq. Jܽ['V"Mg"&0x]$ !;pd4S~R* z즦GÔ[%6גuJ^5C# d#LlBPӘ*Ʒo4&f8@AڶL'M$51[ ЧiCP%re";@VCᠥ-mV "Y=4! /, HmG*MT17ǡ7̚.*R@ IDuKVvIy8K-f VQgj*=&u\WVҿ: 2[@:[ DFx{IZP%1bΐl#T'0o~X`tP)q0y~'L^Ó*Kǘ qӓcѿ&i)ij%Wbg95S Ye1˹ _+r1łe>R*zd#Β p=W8'0cM7-Fμ4'Q)>p8W 61zW#zQ`Fyy? ES_-ތ"0V4l6턡ŴXyⲶ߻YKy"px$7}64%xi-\,F_㴮[QnO OaƯA õ6pOIJ,^CZo`ȟĭ5bGl]t␛mY(bnb dRhݤXf]R+cԐD_?†D5t.o .ܵ+5%NlS8sP$`T6bT]B!ca+en $zaw-s"9NSJd6iB>7h#Ay*q[_YԸ[wϗ@o?)y) `Id7>`+X6Ŧ=RKSW$b 2o< n[AȄpY0x]ި v(]Q/a•}_"JY9Ʊ4K=]Ϻ< Y.>ŞZq7K kYvB./Rd=ڂ6 ;&`= Cb֟Br!U\WHqB #k^M ]'Qw]\]0#LcDs{t0%}q#6\AMu]>E?˸G ꇧ= -OըDIBBZBP%+P _D` A9U&qTUFKO s&-—H€5~BKtqH/{dygp 9v,+S &]J A4*r y|vQ^OO/WUM?9k\3 \yy X4  } {Nú~g:$rrrnO|h),QATʛx\>}}garE3xNdvJ>u&18r*~W +.8M!X \MkrubgݪlgJ-3-{<ۅ5P8bz99M+0%GZbpWw梗3s&#1jNwT rs36{ODE<+L>2NOhCϱ+;.,?@rjښ5vs9I=_ǫ,j` @KM܊u5 HA-<_˴70Mn01]_kWF+t[>] i>%ݯΘNmcGrBXfRRl d\4"TFmzqV%Ceş qS+u'ȝ8{t^ZaflB^! y_jdH3;8| $4P&SYnRiikel7D*ݪ'8qz0hMc+YVpP%tђ7`:Tvzaݑqyxo~oI) IBe9^_Z&JJր-8ؚ)Z׌+ZXA#VAl86ޅD_%K/'GxD,wiE@N JQ Td#(^M9ww7]UdUk6&w[/co絫(^ާX{f ø[A1кkZEtԟR|CYr4L8^XS[l=60$ifC`*Qy{Ng=e_?C ]+b4̛AW^[<=LNԂ@۴l{GLNz>l٫2r 5]>gE"OBHB <ge1*&tefH€*ra= Y:G߃g- ׾DhI7Zk덠80C F~ޒu_ZfvYѪΗP/Ǻ$`n`c꧓Jƪ>mi9{6/&!@7ޫ@Co;lSJK>!R z:̄=L35MK?Oj\d0èXqW-;H{D:5'譕vf4(~e BiCنU1t.FO4D~D>̆6ђ S*p pG `Ag "FMNX0nKWf^Lp sJFD1m҂-*rIi'ˈYoߩtP ]W4(a[wZBrGR\K-riQXPbs!`M:(ţbϊb|hȫ: g5`}-kvWbZ. d>WÁ A(RH5*^FD$tHP Q&ktREb H Ãf_q k̙.j i#׉jaR6}y*/Q2Iو.K׼;Yd{]7s_ Uȩ(f YAHAD GfTL~EK&ԩp_'Zp'dWcXD.$<*>>#<3a̽CFr9 n(⎌% _"Nx-zrD;ws`0H#2P{aZXidr6OYU0"ճOKSdJ80 |}sD3M"~8ݥJr+ujp+N!^KҿE%cA-6o>c*upwϷ~1;wy-C%(Y¼ V2;?eޱ룚 D5%bdBa{Dۀ(:d71Z/[:% ,ZY)!3/"F ax0B+WWSJPԼ̤a8r[PahRX(drܺrf\ȠʵZz~ SAX(inEDNn"RN 8A& jhd;Ů{"W cԳ IҬLL:QBbVc;$d&T} Lq?xQU*Rd{ SZ*ʆͻŭSe`YNmeEW2E?/& Myw`{v#;kbO'iż6˻ rKbn8ݢ'OL#GD['ZJ゘UZ,M'o.oC/~$16 iۙKpB8y[I"$p̛& U$1>JUZα)48Tb |kcZq!3مs}tή#ua z>`C nDZ-tK6+AS9T_zq7<)8tšz{b'Rqk0zt[K /,qnU0Z"PV;{A̻]-̟Uk4.~XiŸ*eAWǬ[p9ID!GN2\&@U֒k\H&;NQ 6)\l|IRO}UD+V6[/YB2V1( :}3Q Z-Q?Lkv\H>ǔ&q:hvCH݈En‹u@t2V<1:!A?#2t].{[v^y w )|lr,? Ekz0C+Vl~E`e:4[o1p>]ݛk=>$±=_6 0Bkup=\PBt#s,xQZKRݽ"Bfy8gn9Yy²A=,3J0b(9[ځ5a4õ%x[hͅ=EmJiU7w߼=oiXR)ÁGt}=X8uW~{Vd-M{Kb;< }V'"u,kvϢNYŨ*|+Zt=m9fq׬i#uJl`o"Ȏ{&Wiw܏:2 ZwEU_3Ն^X:ՍHS &H&L/-'3]4eE.HxQV1|g 8,k2HugfJNZAh¾Cn`3Eԉ @\SA/$A E[@3V{m-rPd7ѵ{= q}v]gпT<(4F@C׵蜬 <-䵔`Q"#2O ~ܬE"zV` >܃^"seh]Ph͌(15ڧ(h6pXW"llz;)*C aV4O[sJr3[)p]3փF@]AL4+a|),ٙ J.=YFg>k?=0q`Naλ3`,,CyDR݅"$:,!?44HyXbfdpPPS'/rB5f5Z J]D&^̇eA5#yCk9Yo u!JhhJFׄ:1kҶ1?-yQ/MI;WD4awz7CWQ^Wol uЖY]E'5^I'O3kv;t^]7baz:x?-:[/!E ƭyA]5?8OZnD~z&#Kh 6:fZL2_ejCѥi壋ɭ-s_zK8׍v;LJ>TPU)z#CPilQ$gG{ zJ)5c.d>*ӨP0;+g_o-po郈eYkGn,Qd;xPȁx.ǮxANW>'4|]Sc_o}[v2{H gN-(gd'rү+@$8|DWu93:y٪e|oEph?@0Z[Y:ōH~fwW;7F0}Ջ)&;f`FsWtgw,8iYH$NV?nǠug¥!ʬ]qo9!lBDĽO|H[M0nceI3De-]/8ֆ-+=`sh|q}I/+n%RFyO>"XB7ѬB3+`EmFESA~R9lhfwU$3r >ÙGؓ\ DhVߢ t2OYvmV&qBJ늹WzcjY^[{`ź\{O{g&ODGycTRGW_&ܝh@سOO9<{ HEV7v0*=iWZ8kP mH=Yd$%pfܕ!ѣ#LbrxJD*L|Z րbOS '2ۡt>ʸm3.*ӶX=][;̚顎sZ 9铷QnNΆHELbk]3hZ"Zqd [nnh#@?ggy y- sWJWݺu G'uux꼎Ýn(7)Ǔ;*{-뇳脳?.cH5_S(OhOpˈL˛'Tv2!{QOY}IrZ;ジ`j3l[?TŻaDyM2ϒsܵx0(2,h?9Z:@2:Gd$ʦkرhd4h$>OXh c+EBs7Ed1Cc'7qE+`y@ eE"da !2O}EIpbF;I`O;6m mVK} s{är\.7:qaoG¹fq"1hPShۏS^S^}a] 45%d_:][vF_$?:rK: Ձnu(:vlj/8|MgQDju҈ӹKa^06 ѫ 3r]=D@T|c,_^vl9r";P@#r%OreZ"߭{!,?p ܩ춖CcKGMJˇ@6 FUܧɷdo6ue1M~ d ܄\.$9Љ?Q\aqvBcRs6}9ic+Q ֛G%* 1A1}j$RSlVByi7Fy]'%HBxPٲ^!pkJtCzv@^ZQ5K!>4N) #F@0 GjߪEӦY u*Xr1Je">&r `27-N3m0Xs=]fD[}X{.>bZiЮs#AN!~R ̮ TSdjFgBSaHXoBR K(T5}`4nqRi`ˌmqXV!L3v\ɵN6V'#%ШBdi^ *db 4XJ!N錦 i"|+MPwIp1lx4ݠ$t~ ǀ%¾nM @2K mU~Eւ9?O^3ig ![^5j@<Ӕ l[gYuILJZ8R$TxC;u|rCM#hY۴ZLqmQo+?m.-nUxSEiZ-?<} tV;0onWwFPL`a6*Tmm(;2#G0bGUWcUsLXg* :=Mq(@nnXK00Y6}dxhs|? }BNobCu DUKnrݺfҀ AgZ'CuFP04w'3a }fp.h;>K &b7&%JԼ8~F=vpZA2Rgmnۨt)V-~4LX?]CA/U~=Kbtq&AxVm=r<૪ߊ|>ZJ.{lJ&M-6T"Dou {Hot;Kh=ʞA*;'Cjܜ>9bчbpAr6_{B>_h1U_>Y`i' VqTCE&<5|{>'4/,:L[6RO*Ŋ-7fK43,Ê }un蚫ekPw9hBH3Am{HR]0C7=_g<)r_BǍ 0g??? kڢh7h'w[*~vL/ f#gtǩM#.v-:뿱a1YcG{~iZRg oءEW\ TѝR^A %=PC8[z$|]LCޟ,CM ;=-AGmq.[Z#hB+^I/%Z)!Q)lM3 -vV A&` D6- OEIgɊSw$l9Zg&cb$Xܓ]קf׸j)Qڵ+4MFP07sg9<~}$xWWiԛF3%6֍(@πnT}.8%oFMݭ$hӎe4ȗy{7얕Gۘ<͂97Uߖ- 5a6JMu_  L> DEժxnHsn*/7خǫՎX֒Gf\a/t?$@EKXdzTFg'JwVhnG@MOfY.|lr(Y 4ԝ[ٺxQcQ{^ۯC5hpv4 _84.AOjQJֲ:J̙|v+йSBϟF.J3+xyGl3Fwg+Iaa-j xpW7xӒ8&PZ9*O2tᦼ>[L_dnQm .-^a9ȣH|if hZV9HLCN'lm]]ɏ(AxQX]323v̒PC@9' 5ͶnS7,;~Hk;̰?] ɽI["&9^M#^]g]֔יn1<TJ9Yg|gNŹg}Pb4oܢ` Fsx!2^-GsoN$R~H}9fp?z!;/Lq KlG]l=;е˘ CP1n\_Qs6lј}lPcw'6Gdݿgmd.i_kJ_IA 6|=_7oS|7=hf|&@lBXOyATECԠJMڻD'%N4R]Wl92cyM[b/ZzKo쥃ATx#dO1P$ GA 9־< Nn굦кI9B^+)Ӵ] kI}i'AP{Dp47lTd,& 4ҭ2;pmU/4.fKR1o˭Rwx B2E9*GH˰;Vwu̗|@3&N(Q\6OnEdfH'BOCR%TAiFMX)BJ0j3 ƶ0 gxT_UermYo'DVmvAY: %XRVH6~z!I%0;ncBN{X8(x gr%r_)ʁ1< c H_u0Md&iLC'Pyt nI*dC)?V\zZ`cLS/~q$:B!屜 Q՝:/5r?J]@E_;\f#Kj3 ?aW{ ~}a6"=>(Y>~ uSO%MR?z0#f't Dh4;`Rʔ&eh3zuwr_.HxIAJSS'"W@)+HE9rڨaw/6^Ml ")5m܄d7`넰zg\hEZh-x }^8 '`T^D,wp*v@fG7~!)l<}Pr8},3Bc(>[¬@Ir*ISN\ Zd8$\GC('m}Vֶ3Et(C9򾥶f-l'iɰul7l0s3jc[vW4U#Ae΀bcƤDƩEՔsnsTf7ytsa{3Ii7+1b9s$:>rQcA|Q!)M.VwQ/+M[@$@H]R=gf3o!NglVא|Vn$:*Cz7-}*z 5B 9G3 }ͧbOslm4-h/(Mq }jI]n6#/҇Dਫ਼aիFK, D+w(M[{J>iq}u)1@I=4;m ?P{`\Kbq$hxg(ʰ=c\giZ<@& MeN؇F:W*q{e5EI }P@6^rVO|>|M3[~ǵ Glgh[K;.`ty9ۿΥꑹ88va+pE7[7$K5orzR[o3b#Љ } mw ߈=j#bZMn*R'[+.FC8gьb'sd7`9v, ہO/KbP+pp mf"nUb8xCuV (`_Xv1gpn%#GT<6ټqnfLqsh"]W7ğ63'/EaO54ZV * _K\频5749W U`/>tME+¦K3$HQh},U"6 cd` s6tvL6hY/eۭTexx~ /{\uEnq LM pt~㿩O S]0lStj A[}'þA'N6,ۚYTIRVH[S5;OxS6)6h.18x|6z;.;p|D89aH~z[j30.Z[!R^flV\ݴOVJXR!(pw&펒oyV#H]]d5M^{vc@#7Fpx,w.t^)g US{[)EJ kqXuD$_vP. S9,=I(HMN9̎rUX,ʔ3KGw95rRrgKTHvʶfĪmENr?ꗯ?X>f{ tIլ+#o+Gqa~e~2)A6EhN 9$7 @@ Zxgd50+@Qv0yثZM=$iBl$(طɯ7qim $92֝yA: Rٜ~xxH^Z ZE"+؍' B>D KM4EjJ/-ت@M={Ε6;aQ= .z琵va3WũYHI$5 ;|-OrB–S^P [Xkr^ 'Z:hjlJꪃO]~_ U:S%%oPfk,`KFT0*EpFB# d1<Hjڶaxnn:r)Oc1,?'SLk M©n@àxRdYK!ݚJ N%Xg V4 U6j~Dͳ #5*so|$(h^naFZsH|MZ7!wWD%JODuEx h|hLoZgb|U (i d[͡m}BV\.k_$ % 83|C , IuzbZ8lչ>oqxB6ĩMK5Σg>cr9-o2K,ב Lއ~k}J7:O@d|Kr_qL8| X/,OdZlW=ĸc]<2BwJ{a6]A/!}lDg vc_l dP zYf1 -{T|I^gLagݸxuu<=HT dTPHZtp6 n^ kmV9ڇU`eD01362rS |S3RFQ FЮ$a/B黰4  {h˪QV–& PIsS'%Ƙůq8g|080tP:+ؕغ,O%Ot6+_b@EkޝerY%}^[ʣ[u}\:'W{8|`X]L*W%U}/DUCUJ> TkgK %[T`/t&6 ;']}ā9cXxf P})&CXGH;M {5BcxRLlP{M_|b2O Z@4ˆMP`Fߏc{7tR!Gl%I l%Q^ QNRp?}ֈJj5 1;kv^s -v4CF6q_w# V)zپtUgўH$yx8m,ԿNN!KfD8mJ$ oK7pJ& '(m᪌[ ̎Nhje9YaqhCTߢ7O %1GNf$_ myZ~?3o~d«tqZW [◯mI2l3=MqG^w#RA ]) ɥ# Q\jj؈E(TE&^;FǹRF}2ChZL30٬2> KM*fBl4#WP* HV [ǝ5xKW('k F x%3~tK+~`mIR۶rr% jvQG-77oxKD"6 1k;`ܰ18KzQjjzh<11)55~JX 9p0DT#:*wFby_8v |X_"TͰsr:~x7+Tv7mcreFz^U6G頓fqr~g[R̗% +7iߍ1wJ ]d,,E&fE]4Zi<[mm~"l͟$QD?OC=D y(ꫛ}TE@B>"3FxIo[/ s/fb丰,֘aŘn87ky;i\u%mk/kCG$2s+B / Qڌ[6&A~c(bbKrQh >Kr1^/F+Qr}  U%<|Wct26DOV\U`u@"@VǦ wT6딆F}!?O}-O*A#iu[f %׀JbwO^ܚ@v=CEԪﮠ? &9No(ԉ$*_خA:a{3I+9^C3L" U x(nɇ8{m)L$(ŽIf&nePf` [z+cRxD(%_6mRTL_ZOED!>][eJb-߽Y.8 @v@R&${qyIY=̣w"p-f-GY>R8fOp` +[ dћ-C)#`c/«'<πPm"blq|^{e[z[Bp,Rj1磌9PDnd1D+94q }ף~7$tl*"DZ!jX\_g0B.XwWJrp/֎d5Sbҍ $/>.XJD|M,#rl}˩uBJįj]ԡ֪F]5;ʣ|7z2}7Pz[e@心AA` 6 n]4 9mop`4#%(n ٝpa.>RZdžD:v'b)˘]oP6 [㉌+"AO~3g1>+~QarFUy64b'x|!#fϬEt~c[yȝH `g}ޞ_%Pdy2'^c"/sŒDK%"w]Q+YvۡePl209nu5\j LLC.1Z"l7퉉/㥼{3e]bFSƎ7~]=V<fui?=3=1E|Ojs3e1N rvvI>8T5y&85;IRh #O)2?r Ip9%( bޒ)¤eMۻdj0pTs X%by]{)DZnHn^]:\nsb7xeCHA}^q‘f~*RdB5uN&΢3О Lw`CoÕqˬ] xC)7+7S`L3PꂄI$QkZ>QxpHP 1;XV׎C)![zZe0ЅF {E9ٷ7͒+T1EIpz4Zj{S696i0Kt40dǵ@ 8 >mdhs Ptڀ-gU0{& ~FGgG֌ =.ܧj }¬_ 1 R!ӰFh^f`*W(DŽc㒀7f2Cxc~ #/-vmB3\eU;࣠ɣj@!㒾~c?`Qz Sc<~:.S|4"v3s^Jy^AP -@er>hnל t$qw@YA^D[s ]S]EpҐǡ&1hHZI*V"}*GVM Tv$3x4wq3Rs7z,!? `&?BO$ONSзsU_I3[&\EKY=mAFPq_z]j.Iغ ^j›%sx?.,,'ju]n3'Of5 I!uD3)J;%&zNcU84c\6<_k3[.D/-*1cո>9-#D㪧3_wz^.gM~~j>E{`q q@80J/ey'fSm0[]%Ε0E.Ij {O RF8+;Z׸HF,$CÙ"5Xf Z[邍1ƿ )o$}Tjs p(Fm.xAek*x1žA m> VqJ kei3ѐy]/*L .TzçJhp KJ?TaaEWsRiD Q2wJvX$ȷK-Ƅub vVԑ8c.'Ţ0iX:rE48vuH߯*tVd EP xe$AGMDS3b32Pz6:w_nO=\+3O;бE0t˙)tLFW>=um.~B1o-A20^ʠJ` ejMIY} OƆLxE7^l m ~,R{nmP;Z {'t3 ]3iWuoZjR_k 8vX<(_PB[ X94ʽX2(7h'_ XݕrYi]ِωfNPǭtwg)O> x!J.!r;l Eա理f>UL++sHJZcƍT{n\i4 A kʿM|7$XK%R/4p%AlϺ_Y#Tudh G~*n'8e,rR0Qn/cUW؊? l`<'awA|,~nz6RlqU[z/];BJ3OXP3_{f& QXߑ>UEU."mM\e\δ^1.(|bB}yV-M(c>apn!,#{DIg97}+`w?8;W :O^1 };Lx_%֏} hl݌QOEj4f%v%IOHfU;i6{`l% wcV -(2˖Rgj|]t  c~cH-b^J ;Sde' m老nGI {.ABϤ&;6B!Uh@QdhghMp iY&Iݨo%Mw .YdlMqDfip~y@/-9qj+x4Q'^y}Vb=6ɧ }YƆ`hЎRS̟z6jTrs<ʫ#H<Z'E~M܋\.A0z 9-0C}a>}-̾EFw+qHd "(-7VۀO Y1 gzvpV3d50Ƿ?^{$~|s)_:ޡ:MQ1r:H3t9H)2c>ξ8.Gg}Oh VCXDΡMhbό6y*a.N}:3 ݰ,| 1@{>LN;O!AԚAu[o] mk{MNEZ8Aunz7y]m_%?zsk_ƕ5/ DkE-_^d:"rPqY` 3efwdP(K_0 X4iji^x^9w%0 i{v rJQ]&T$効`d*=# 5GyT[\/{;#,=>cAH=xqkpl܅՛X>NݗG#8uުO$ 70à/&Z&:s߁pqV3{H>\V4A%D{}I'@(?F+̹3^N=(~1ٶ𳾞"2ǻ'9MD‹A;2ƌ e}Awt u zuԨzm`۫Ö뇯%_Ua$Z)N`%/[ߎ,@Wm$F#h'ƥ&h'iĻO|M5?Nwvon)iEZM R1eƪ(쾳6j6˖U[L}R'P?xD6|8e#OTerk&Y+s9yhdf/֬ dVچznN3DǐWt͛v+ORtU#ؤǓ \btnI%s^s;ޒ+_,lҸ}]`Eyݘ5'"6AëɖgB>|[ʪd!=٢llk&煯6w}.NŊn/$!5_=9׫VoM4وX[.gF) xDZ,&"3b =!]w+?P^QiCGFv/I ׭U*͸˲nMEǺ}n;|2UEXr; D]9皓2$샖M&();^ .ʒu&*=-tm? 4WRũkBV- F7 [89 n) C52pJqh YP>]HV?ظ[B_@tq/טּ~F/fNɈ=uH[1ŧH{i:dyiHm M a<8Fe= h9vdH 7~gʺ;yUjm?=bNHdI |wak)ը !SuA?awԃQ0-7jށc'Y SZا?"Nro0𮲩,X· ^RTss݃ ˼a`z(h2r]i~ OdKR`wߐhdکyRi #w^jdѢU97FGZ`.a6`gTG1<[itM9m.ثa'7jyr1N_x|RNւ" BT e 6[ f>wHS=SځSxB'Z<1N vU>4Rr'K c_kyPL4 z.k&#Teri>({(Slj0]0nWmYEY&gֵ`oHGԵĊ)XZRMrJ ѿO A}|9 bxk^rcfIBeJXLw9j ಀI5;")7~ײĜo'P5I `G}\iZԶ6Q>a~ :SxֹIl4Y n3ŗ4{GT@6K~Y:# oOlfWM0 IANAz^p elw 6^`~s(% E.lҭcDX -}I/4QZI;)<5;Gc]~ d/]N٘!b X8ckߏJŊUޮ;l4Dٿ g]\ 8baicLBx?AX³>m܋D ^slEN,˻1vfAF#cgcEFICYdsL (j JW2As4~i8P ]ÎRRj qpkʫ)lȺXbOWO- clNE?zzW>bd: xeOƑsdX#ї!'IK͍ ЃzaF$v%"xZl*f rF uZj _x o n+54o'/?lK)QFV#֑9 X>*hz"iD234+> 廰:XzN mlF9y=|!9=9V-@^,p_Y8(ܟ?^QUkڐlf3yԗ .=z4`[1yh>MmsJuA d"\³$𻠫&z2 Pt?Ÿ^#U4+C dm6I:$!bU& m&AlfQN]v+ήCw7FPbTJ*O|0Z*R<2L2u :Jo8x/\I=EQ^eSE7>ϵl\3!dϮlACΝ<oB=U]/fNR^֊J,w!QLpo! aOL*:o\6r3$+vQmd-O 5k[1ɠր[fRaP1C>f?UYҡGQy@#ßS3AtR񠤉!>G43ϻ, s--5VQFԏoȌ‘h+B4Py X`Et  Rb7xd_?bWZ 3 ͹Y tc ;Ԏ༮dkwȒTg}MnVpk0χO>0POCm<,(>j`&3$ƛ$1Л"Oda)Sw%P'.ddW]v*.$4YB(p#+=KX!kݱS2F4:"W_$/5'nlunrxx2nIG 5vH4!QEҹ(zټldB @Ju;1& }Ӣl'"r;Mr 8&Gw[_:GSH\m燕l'6*X|D:D;p7]_cDZˆQXֳ iy+ X' $U(G[X52{ZXʒQ]3CHsK 5S"Cj`*]g9PB먌DɫOWQ72c=Ґgo3uVCf0}Bg/7i"5ڊia\NsԓnRAWe`e!$ ,AMK'n }yẐl-Ts{/pAy۲o ax_޹-ɘGi6BKb7+!90 MpcpRqjiKNб[_|N#os"'A;쑛Ru(m K؃xQ6}xQ'Xm, Iajue}+Auz99=a2 V9/洱şewDݪc%EBH^^OZ*x]y/ p%98ЏZ,a ><ͣ;ûxH3:oVc+]{g AQ,ƍw3w0]6BNzkxt&?*eUyAhvbS{w˺AEϩ!LީA'jIV4S"/܂]Dok"/(Tf#z|WIԒdFHF:dwa"-Hg:?+gqtx}ui?KAnvJwjMmDSwPN߾q3`ǣeˆfVg,/]ӯn~Z޲bFD? [ `uT̀w, aY-dhU*?"?:[IcBA)v˔4ktDID-‡ pEf50532+z2z Sބp]Č8hf)GܠG6\+zϫ8uwWLt3FNNu`JM.EAUP@TgD@(SKdF:Lz=0bʍ12!x8]BW2Ej&A/PwahU1܂0Ty\.3ϬwƣRT~+ ~o5׵y28 ]" T%! KOM-9Kfy48c ܀K&OPRU/$qh;=kpapNlॐ>CS} [LM5ު udYZ2yKq"qqEcIJW8 2D;W?t~,]A~JGA݉8?ȲAOJD).k5+J %Lc7v QcN =Qc{d3G{rQv03[maf+tn.oqUR.πWfm qH3;?䩚F$#."1/$ceV`0FW6#A[Qz ԬHIc^ZKY"+O®Ql$Jx56[1o 9Qy" gLn= *?)bctb˷`}iY+?SplCw|;P)9I^8]v%n!geq.g =9x0&}miI6͢B(SᆱQJ;1Z(n:5>B{hRؘ؀iùA,U%r֠hvy?;ayLaY[tHeAIͿؖt$0$p<5c6]˭rZ5We&F$QQtY#}j5/977^4&[ _G[c *XDB YjBEwM Ġү= =,+J6J?ҧHiSTz'Ks9Cuzzͽp'szεX }#acT{w R: ㉇ f,fs°qրu!㤅ΔSOZu7ږ6B0`g550{BATe7t T?C190El6z8\zۖ?I*! 91{_xqɜP~n!26Or$j>oVQ6oHD[#&l҆'\f$5gq+Q@ (w5)POa4;5{Pk ApYe T^JVGȮ\#*7 qbb. 3jZ6Y<:NS%( eٙ̓zZGVW3ۄXyp2FO vF8 ;:<YAB{^Ғ{qiaH_l>USBAցEV {<4֘/xm5: 8?#PȺVVUTG!!u:9F~ߒH7 X@PZpυ'Eri(625$HNuuOy$yE;!X8ۇ4!TD҇ԃ %)$Fm\ϧC?ӽp7]rx - 慂!'7 B|Mr[u͜|fH4˪'wnc`؆{kT;a]g b>v)KK&y@\jEG( J=_e~Aգ 2[?p6z"Ld?Y3pl&Ͷ詚ʠ|]#3튴gKp撇*ض8`*ޞ.de;l1o :'S[ .~rwL7Rz>F<]GP`@zj2Rh!.w7w"л͆|`ѕ-3;H4y5< wF-ETa&l+xI{s1g3 a<ѣU4@Y/;ҥN Ə'Hg9 )t퀦₼C72KG^l׏<ۍ%nu7CG@aFKpDz8is-Qz?97-e'N?{+.N' Řz~p` 3uZVjnKXUv[6~7l}$?CnieJZ Fh3i蝆G 35|J=8U{䔐Zug&N3&6>7f3+ӧ 0/j+=]lJmUzɰH~.w֧A _܂awXC~`8=gcs]t)lo1?R]: З{d ɕD,Z*ܮ[6Kp _DL!UKvaou}N$8b/|Zf;$M݃C!ڈv"_7;\e:\GP VQyFG]n hK[O-=5(|:_9۶YU 5 Q1Vh81ZQI2,!M326NxR()sM^c&%^/%"Q   FSМh%L6*c]Ϙ&xZ=aJ '5l+%BTlNJ]@}{Ww1nĉ.>~f09kv+K_1D N|>4h[1Q*]HЊbAR*Mb-E%fA_uA% byѕUYO :+k 5>Cqrm(QVӆȿ,K纻x@[=60&|کޯR,lGEN:]jdh$0,4NЖS '҂Q`;5ť2˃AV&vRB$Q(`0)Gz ?/hy+W\4*e=BhH8K_ዣ^?\…*!*aVAՐYy@ϯSqҥb O#V^wleXMb3^-HIP0G/|/]]Sp(ىUJ$j^^=qF|~~x[[pZ6Xu}| w0bmY HI,e!$<zS~ZtWț3!o31( ͙} FM|7>i#I=XYv4=Ln3GiG|/BF}3az֪r (xGT!bWH ~vs:n#<ٳRlLCュj}NIۉ5GnsR%KS!gPI3U ^=o@(tkq:{er##4 L6%O`$6"$FfHLr'}[b]s%35-UaJ xgoAeGǮzݲ@Ta-TZ"g!3ǎ:[!Ll-kEzsv5 [3oC7} i8)|NmB?ξpN ܤ] |G(4q. wY#vO+U7:(19\8T2Beڮi4I\jzMEȀ#,L*E NaHS5~RiNE0L 0ˤB.7Ry8^ ֶ9ͣG\pǝ^|F/Ba&b>v }dau%#6kǮs؉Awex@A ⌴BM=\<ب&OG#ztJ#*2iv-Bl ؑulKRR['SXx@Aaklm;xà"]J:Z`~9URU܈+ȰM UY [>nE̓Dtgh5~Fc=-b920Z}a.wXg>Xt;5D O<%JT x.֪m4M4VԵ1#R2F;\RiN]27dYzgi(MK7S6 \k4t3 eeK)ڳ#.ze΄7P5. 4DzS {efb9FKЯ[H$p>fjn9S\-I^Cd8j#viju++~XB\2Z]j  OĠ:,h:m)2wL-S8Lj왟Ag}p(s3?$~4ma)caBC@F&:3c`8G׸őd]APJrPt'==F }<+s|.kaL]oY|e6ɆWA纏$zi_T.F/>KЪ-q+X+yKL3O*V[\'ZkԗY6F96i-iw9[ߴ^[2$| Z4ƛd7/HU>I:]rZf_`/_-DZ.}~s wQ̼J^ QO3/xb)PrWaa^*g"B3hڔFOY 5"fAɬ90,;,a0I01ȟCEXGTa pNac}tcU.cHa(F\;< =^+|qվz=y_:M)v%# Ct }LXdh(?$rCs5*O󤬦vLܦJWV֔ܥ6^/fQ~_˴ 4."MpuESr~.k0uZCwטUPԆGZ8/2ίG@mDT>s;ܾ^d}H]"yըRk81(!PXa쑿;"Wa$g0,C+E8xSDCcbf>fئZ*Z*p5Y HJǠ m_[/5*BL%Vn_9Bx)LbTމsީd>[$u8(AjLNwt"N|hxoz6.y*;STzf)[%΃_y1F쥉3_$D=$fƍaa6 =q&dX3D=CoQkaPZJV8:oO+{Ox,ݘ~BJuC c+ף̍זId ᇤyE }(gGP|Ai]5F91F'ѼNk-1P Ӳ \@ֺEdmU,/< kŻ@:&-@3؜(kl xz0šESk`g_sB.=O2y7"WD.E+]ՀaW[u+NF G6sSD>QLcvm?dϫWWzmx'TrXk%4W9?U H]).N6da8M׾z)FY{nLܠa_k[*KL,.gfY ևmz@'va 4ɷM"U}2~g^ {}+pz>8z.]nL?$K]iA2釬T/(s8K̖5u=sTH e%1X 6ӑD_{OoP \ܾ)@K}a$GX%$m&h1b6 %$d`V%:7oN[0QzTo(J>'8aVmhc]b82NE,kf4*iBlW 碧dl΁;budRUCZDETAݠNNknLdV%O%:N |S5Ǡk c`Qw' ο.FL|sJ4̦Av[˗Q 1()SOEw7'z ~G Mk^;KM&f$1!T AB]ƹ]nz9rsr33#2/޹@v'6ȯі/f"=:eIAh@ k'xH$v4evJm]rl?bx5n"@_f6mO nK(AmW ZazƗx'TnƑ 潇M"fwKog%PM_"QוP&tWt 켻O y~Q/}՞TvPj~;pʿ[Tpu Զ^TPӞyCrnUisڐbJX߼C_GRZ5Ҿ8w dN*$l,hIἹ{"_N(,]{g5>('cd8qu^FVaKIvlI1AL;CC@IB(13 ox./ͱLa=/!]Z^=1?fj7'9fXsEU W_u`ɸO 9=4WVZ=Z94=v&MgYŞI}Co|vbMސC+ ܋ez=Kfvrׁ+ĚZS6ƫ8@WuūTe[qe'lt .ϕ.\N`LGdqPtgC)}BN|4U\Wl00Yhf{1TlM çڠX;YP{=T̔X<3GAfl]r5B+bI'ZWՁK|+| ,4d"td`;Zɨͣ;|-Kӱ@Üńk8G%L$D B1R"=/`cnZDw5_N`П a9g]3۰,gnܹ^7gLƞu/+}w"?3r˽+u2˨+jC MAlYh{СLP̡ kky)in&%r :٠Gf#Y[hJqwXfzc90>A3++? [.#Ԟ탲~~G#13bk,..Q|O_Z:}$b5 lj!bO;AmG/4/]5n~3Du@*Sh :3S$8_.Ć ^'-*h7tjPyoip _(ߣO\pM`PP܃Ib)~ hK6g(q5ǚKv/PB^&q&ehzri>*a{4_Az89;3=3~ڧ2oc8.3_kdXTϘxJ4S_lV51C&*Lvg!6fGÝa],mO':pxekTIh!) (>ԍWdL?@֡H9À{(ZD2 y8!*0O#!FǤrs6] ~Ԋ9E0M^Ʉi%1΀~hƳ50h\>N?3RGKLխ@;Y$ټlX'onP %+Xm+?} bwTFՠIqVvl+Rd-eH+Tt#6BR,'sB{S.^LzprtOp`zn~OnHXtw1 $S7%<%MM!U9whRMA~ToR'(֛;SSP̂$,}ti^Zc4ϞD - pŬ>+,|JX*~W[^\i,s;F[WS# nPģK'^p%>\{5n8X;ѬFΈYJ}XD/ECjxΕ-E&ht D@0kb5wO;| S{V:FLGXwm^.~g35c"yJ;9q!lhi V#gmӈK `LQMKmh ,=1ÙftiVKLo}U|MޗT)j>d[-))%-geSF%t7 4U=K$I ]̜}sDԂ5f+)!|nwX0h3,NY>~ĐEnrfuX"`|MRh6}dn} |y/v6lxJ }^Ni(R&VKa{ԝShnfLw%\ IM[Bv-7LjBI$ʧ6Ӫɢnӂ*(D|~g̒Qi>*ƎTTF^W( 2]$(ɘ^; 0Oxu|?[vy;| Nk-5njUNTJ f-_Ay/͹8#im;2NW <4ثBA`m~َ+؞ >\|T-z9AL .eNa5yQ@\)=?<(la,N8$h»xCik /7F6iwp %q"'Y3xa@7cLd?u7*DNL#D9E-i'B*lEXeh=QU #a7.Qr3}x<:u N.p6޵*T4hK ?ײ<[2V^D?W| KL41)+9m߹q|4PFO mr l;~}Q0 b+bܪtzKƴЊs=΁-VC|@n\phwPXKAqckswbHhq;fɧ!?&=)DXC%g9Qu>B%vIUEQcUE(ap6fjo!:̫H[~PrS 87]K+!4d~gLBS)#YPRJe-/= }%9 f\V9+'nZ&ZQUvAFZvPѢ<0ȖT| EvjރdZv(D o2H$&Ԟ>Ź][N;o:O\C⭋7.|zz>bzh!q9~u?˷ʺn&ҞO`EoԐD giM!ݗ=6 ʋ .K&Bƫі'kܡ%VB#ULYhE0P #(*mWQU"ݘ B#h$H.D<28G;_z]TcJY%ݪ ؎;Ko'cI<ѼlwPKWx VbZL8@hQyS1%DKx*tgEN߮!sO+xp p:b}=v{"c;M(7|rdT)wh ga/_ jzYhgdUP6/O|xLrG"˕ŵU1z<)s8_Sez d5ܢt=B8~jqTR2mhVOT\èBP!"}X,-lϯ݄ms*hFUZ(MFۓEdr+ P>a;zLP3p)#``ùu/6,ˏNg]2k-laὪg 要d?93g[eu0Q'PtV?/q>1]1s j @rckHV{waqèD5|m!OQ뮜?;WA3-. J4|r2sFois_WR؋RAJ#ͱk#էm|b rPb*JGKf?^b霅6{'ls[> >dn! `Rc;{ǯcqh L6_"hO]/MS9f@@Q9{VGw]?[rAʭc#i0*H0Y(2j[ Nf wvU>kro4"&=_LNv yK{O:_d|q|vaHo`yA |WRK ~ًj/w{ %ΰutX:ua)=#Cu*5gȤܪ0~tMЙ[dz@sEcysh\8Jy/1,+tKBj691|)́(wL&RuQ4.AZ$=F@V0SSG씏$Y1E>&Uc[ $wl>ECVIL?᧘TpJ&"o*=cVg ~_oƮ bq/by xW!7~c4Doߡu36͛霞9"Qy{Z^6M4˦k)ZRa>nN͖uzX+`+3H{Lw, e_\$<xF]A_l`瀫K ܶ/+gC;mԨie'R7gٿY#XρLμsk _0p:1̒ixrѯXC>Vfz8#\qHzyKA[D*sRZ80:h0~ӛnHͧߎK{?ߣ\R6կW;Ҋ.19Glב1@c|u a٣CG v09@z]WJZ= #\O6 1R=VȄ@4 #Fe4 菢y.A&0T>!W| ƝH?>A@e˧*][A0Cچ}S2.lg?FN7%EmV% lO#Q4}\֫F.O%r&.CVfj(# vi]eqy#3=x;v!MKM6>g3^$08-F"68!2w?44.ݭbO 7"zΧ0t;7k ^b|cvcLk(W.ɕ6 3b>U%WB׎d+[걘v.Xf@inj-5y&V>lSm~hܾ\Mh|kbf;Wt,o oE3"<j-{4Xa sH&~[!-qNrc\"&5MIEJ(́ȧD-e,S:7j4|r538IG1Y hOm*%Fx C\E쌁)܀mǘ\4nx̥V)0a(jFT29%M`=N !{Xvnm['erֹ&/^xB(K-aTk=!ra; GmybAUAd`1W:@Ԍ%V"fޠaeJ7cVneBSIZ8 *CbP\]f+1&,`)\l ԓĖM3%(`=(J1$cK M#0~{<\aPhP۴_Pi椐˄r\j\+.KƇq}?zuUt)/}VMRp4RlHmAK;Fh*Z*QYSmv:rNrhOnl>*&W0%.O.Rt(Gtϱx*^HdA=y4x2M&<]e+=q4t_NZ'Ql<úEճŅ9峩p\SbnT3젚 Ѵ+#H=QS[^\H"AϩXhIx{Cy;u&ax 22xYjsxYqYK~L#B`T+w<9!|<8#'}l[c:_kP[㪋hd&^2T9'=ڶ9rBW~Z?F}}ܺ*=o-y:$c*c_4( 2{M|fv|pQn!h4;O,5*'R{lK<\]xGإChr~yi+Ь-C%{?Mz>3cUTZFFLqAA>߾M$6.lM}"䋁,fj>=aGVN vOFȜu%/9lJ1Q_nzh]ʣޏ"3[AGn0d>4,*PozK di׺sBUlHiA4!etJSz|MyUJGry|\dnņ33ўPk?I6fA2tChhnL#=[ ^Ő=]5{^:%‡fw_`%:+=!VQ :;^J}/χ#l7XDd9.Cߦ1(/}8pQ,'\cvbԲmV*m#7lm gէ dp n}3L`6fiyFVHX US`+Sʂ i}Q3ՕF{Рa;#n^ XE#@Ÿ@:A$A:豆U:TESGϕRc_X Xguz2'/󆋶dX:]֤FD~4&-Bǃsl6NUjbJysʢĔwv&r}Sv}GDvxZpЋc ~r i z[i GfI?DK%ńեj=4'#p_fVl|l 9ȳѴ̉x}ou%řf^~aҫ&qN'#TvZ7EL:fƽ_ܧ fBdJwq0d,iA$Wz2d sꏩxb'a5W%vU.+^ k)W Ds yCiI5x}KGM i ɉHU"RUA^0 zI׼C,˵pE:Md*EcsP/-$PػFc 8:K/ ǮU5dclH "E)fPd-]=&ppl!>g{K8΅5L Ԅ4O a6Z+&k㰕-zsyUM|Z.^Ac9Ղw.QV#I6VSJE"xY4/X{baI #]ΝLdHݮkK78A!V)t~ڮﹲ˕1iSϓZzWf \@SC q%ZrJt{\'I扢1Bid}:ਤB@ܷسAWɼۆ O˭rfirvl]HF4#= J$OL`cSKY:  2}YSJ˙?9fV`Lph/GY^̳Ltڤ ma5  ʛn?UHc@ qH"KԹe;2ptڄMo_@0OQ6` F_0Kf7wjv c_M1 S O{ލߙB)-AN)=ˆ0mӣj`Y%sݼF$kQF&"(CfXɞ Lb }M2e ~OWy$n-ܾqSМrRqc[]byiY})E +wڬ jt>.$Ul Ml rZ& 7Zձ*sM )v 7oDJ ֋=<jʷhwAZXm)6 ݰVǹ2P\5 Z]-V.wt{9N{c)HngӶۏ Fh@[|ḆEaF=g0Ej˸q cW"ICmH)\O\r)gCCDq)jT#L]uzsgd' Ju?WZuQbCc ,׏K"AW_Rh)#i(R.Ĺ |ξ"Pj^jňށIӱ{ps6H=PUW"+ ^;WA`l4_9;3ajUEngwEbAVp{g[01 2Mj$.~ݿʹ?ZD>w%W1zJJPbv ҙ\Ңg 7MKpk` d;(tZDg1[Z -@_H 3T1掺Nc^$H\#\:sL(‡ DDf.w{|wq]NHCυY&. 4' `sO+;eug'¶$yi8dBd~ȢO;pV&%)u\C&x@&135Xv&?H u{7ޡC?Ga=o~Zn!_K ;[o8_tReuCR2 ތ:DT :Z#x\2,s2?8^(mbT:qt+ċ łt54 H*弶oK5L*McEf5Q[8b)iY/ߒ"=cz#ITag zط=ɮj~`lJ- r0j޳akVN~s|sMQ i8w/~o8ڭW"?Ƭ6ה 9 W\~x |[ o`OD _3~s˛UJDK)h} oR)|?K9Ojr!ߝٔH ?U'F!˻}'($yn]_J0$F5}% iC=.`=۾`ΌbSnThC-jӾ^O( M^[2V1g=; Ռ4stُC5u]PxzibJݢ>z nƍ/#sы"RXb|hy܌*uqN} muO'i4-ٰʨ`|`}*.5;*+0 *23kFDeA.2Mᶅ{r9֓@9Hoa7T LØOCߵ iėmȵP֩L>6{d[v(T薥]r](+B6sX^%V"Lp;D9MrLTqh3h,]L{(#o` 7f)h64H`-E$XY6v>C6pWPyt*< irH%ɝ dJ~>\od-nb #Ź|pE3`*\DS }ߪTvKx$cAxzH7Iv]jP?B6g#<&LG_e\˻>:>QEjXj Ѓةr^{Ւ]eꪫ ؜Ԝ]w {p% Ѷܺ#,,G\=(,+Γr xЭS3dF ۖN^ 1[l*_c)x2 J[g9Wa޾XEP"Wk8S9'"E,,b-PEZQJ;mYߕhȒ"Ѥ Fk nmє8-y8h&oJ$FvK ᓢ}% ?`@ *;1IFJAVR QKm{U JvD[Hկes]-NP1_B5\ ߶4@Y,z_٦lRf;=/9y9?%?j8#ė:~ \K*KO*93R<΃*cJk-Z96T䡼 J'|fFgGܔ />Ѵ>k۳^ؕ<ٜutA"ΘӋKqYw$AݖT5sؿkф5KPaa-`Z0v!Ǫ^Hˌڿp"M"o!#u<`$KiNh惩?װJHODxcaIZy%lry^&4\׆E:If^=bD{7έ dZRz<+])`n.D(_/YO,"úI*{:lj4hRtdG YmՃ+l QMlcxy04uw0<7}M{_'Sl\Y$֑YUW v*/IlsC~_aq 3MZV< #.}D@@㲌3]i'"zW Dr-gE٫C6e}Fb^FkmZyZګvԲY;D_֏zʇ]^6V-Hl).H$)W}S*,`i|7/>wȗ&g)rLǐ:3 pz5TeedRNm NzAk(&Yw*BD$Iژ6Q3\DfUvMF{-f+N=쯢4Eܢ?B΅6tz0 {u*o =&VrES@x0z,]#G7 FJ%z!pXq`>'Ʈ=r>=;HʣYg'?^oɆP2?$UA}F䷠PtH{^ w.Ip&/..]u]%\nTfXwmm hpiM!Uˡ6AEsf[YKF).}O)yRP,t h]u @8yϞ!$4ӟך?ye۶1ŭ.BH}ܮ3M0]'heխH+zCU g fNB~:&pnQh$=gᚔFf+A *9Nxf:b iV )J꽙6~bjK^3&{ǥ-7Wti|)!  ȍ`!c!oJ&w;3/ @wU`f4n[v?ԛ,^ exHYR>E nopv +TG=G y @  T6Kz(𗸀 j6{~IT h[$4NxqR\(F'ѵPCqiw%p +b㻻rS鷞C:@g05 Id%/*< rDߜL6!ÃCu={Q{ ۫Mhq8v~|OLK6jt t)R5Bs=jqI10;O7G[\p6֕4ەnA8*rgE6K4 $g)?ЏiRn${# ?G;*7$(4'kK/RmA䯮2KY\=#(A8oju5fChp58j2ߖ 鎔EytԷ (!`qކ/ CHzq ]zPM8ѯ!C 5M!J=W*^=-Ac,Sbg^ջϘX>{Hzv @]{^dZr麰 }>-?PSTdzێ ?L3ٺ6=wO/֟ ??IauuvlGюFަk.ShrB^RIiwKw8%~h;WvEf[dwC;?^3Jeg" _00fGoiI H8 =Xa)ȧA =+b8"UM[⛈.$(u<`I^JgjmAd]> ?F d^1vvA>'m1wƣ`΢|.B{ra}Z1 j;[GMkY~SCIUuh)nH41;,EDoΦO^5R4}Q*%"ǭV_Iҫ QݸD][5˲"wslF}'\臬æ?>;F|@gmjw|[݈V 93,onз5$·?CMˈK qEG'͹ U.qSts"Jh}ƀ丂S*.sh0ؒ;EI}'ފ5ЂXto+*?Ĝnh Y,쇗UcDUhf7A[\_O g|F/7-[(*M(փü)+:т䃸͠?&ob6!5/1WX{iPx0oͷDuveOBM*!z,vkPѡ/)n)Õ,@>Ҕ|źbOD>/qU77>H;x[*yfتxvpNb.uPWΘ1.A}^,mi0EH BjR ^Y4>[Dc|&sE9Bк.ޮ)E 8'vf|L0Y8 T~N ,ƲpF7a<w8ʄWD@-W+^ѳ9?UGb)ek4D2~uM\;UJu%סn1#"['m c;b芳'qE ;JM4;m`ݜI}oUq e{II~8j&5$z>!^)+zUz([uf ~ib`\BXrF a3tPT,m܂pǖe>7giˈo+l0+ z''_gɎvc-JZ+v& LeK<5f'yʥ7&#zXV=Ҵ9[ кaʉɖ!LTܰF1ʖ3b15 :.u0HaL-J1:v5>#"b 6VШYNx=R=2%>ԭ'%\ckh3 N˂jn ,@[S$<&ko.Pa-')gOĎRE=K,ec)^Aix0}dMV1/[m؞:nJ; ˨O6!|}ӯqO"8'SMVh3xT[?S\wܹq5 xڤ}<2"WW S7=Ї,U%P Q)%ijKX"obq05cqb:rzk++zپy{( ..XmIfӜ+iFpD?qp.!ȀYl91%0w@<JX+Oz[Cn~r|6\CbfcIei'XQ윹H6c :^xoM*ޏ {þ%#250[Y7Ixz^z^TQ`|@-Nl]$4}0uJz S}dϩČ1pG7qhi8a9a3!eyJ5+jI}ӡ׊ύX*7t@\;;=iKeTg;BsX?;QEA~.~iRrZd˦9 >j<-NkQ'l `Dz}:"6 \ÂrX4bs:k*9݊GIFfNtfaׁ}R 1$źFK;BU8m̚nJ`j 5ITҏu4![$nU)׿D9Kq$tzi-sz%H:6B3JV>vOoحSv}IGmC= A-Y|&I+3QԪ=_=cIzH9613ÐpڹXhe|Qaf CF}&S "n&SRZX4OcD6ij}k¦vLO 22;:Tk]*;d&hcjSG+JHH҄[,܏NRڭ6U~B >\|ܾ9 -BvMcQ{6FY!aU G-±VC:*ɃK,`oCE(J~ bg&^ 3䶌 O:>Mo8|3[\ /MYsa|Nc[vH$rn:8ots^$OC%%?*v{}-e"sȥ=tŚ :YRn *~ onM PYETJ|Wp%vi?uz~kFWlc@7FvT<*6h -4Pt?լ<mRb6&w/7wRmLo^x&=Ozr^ݞd3~#e~-a 6kS4|Aq./m o˞O񤀮l:2,ս;bRN/eoںXJi4Qw53m 3tiO!^:Q4ITjY;ܼ@f}f1O5;y\Jd<4IHysx.=Z8vOD^95?v!p]_w(D)nЉlU)|ߜ#Dil$>pC eb)4FSy2 ڱAtcedliNӓ3ra{i|eD@d6qgnze@o'\j5k8.9ƤHRr]!<kf6H?Ф_$q*6Dj0Xn^TR^ 9PoYy6RDBdv(x#p~-9- {j,-שkin8v"P!p K?HC8}6mo&006U8Eoq Wcl:K^5IۿCFO57[^KTЁBD 0Y]i"!ũ :ƶ -lάz8^A98>k?OwVZ?߹: &3 vYA[|W1A}l!C`E RmVCZ!ưGsg&dw:8%9h7i4RK5 DrY/^3_9\<*w lkލ5_I{Gio9C-R[Æ̱;0CDNS`P FI;ɓ>42A헯^{+l\cd8QϨvVDVϻo$X%վށ3UD [%ۂc9^+''aP:Pv]EZ'f; iX!KO1Tc.пpZnSr?|sHdxU+$t75>i&R @ 6x9 ?qXOsX-bnHnbٰFuYm,R`vɼx^%9f5u`yW3`,ntP=i6S$׫ j)Җ%]Dp:x] AǏCP%=",)Y{RV%EK8.t-^js~>QbSpEI"1yVfiUꦢ3XK^p -)8uc&?J4{2AM4Ӓ ]%uT|~(~WsuMD0(!KA!U^N9?pdžV}H G}0|ND_#f4U ƍiљUĢ?;피=*1uմ4z66[Mt9s6< վ)n@L:'3"Z66Dǹfmv#ha\[py&iaHNSVg.f}F0CYM*͊lj"S}P8YG?[&)yQVr{& YUi*B`K L76g@dv8VqNzw~ 49DY;@ӍOV \+Rm_wc/^լOɷh}]:mCUnS=cط(,EYЬPsԪ(IJͅlN򴁛 low$U[Edf]2#gP |ms+/0=hL8,dũf'|C,l UјrdZt6=@?t?Y< K? qi9vG5PUʮ[)%Qn?TGssZ̴~5 VwCl|"E~B*%<'=5FqJHs7jD9K^UB!Q pN4z6ʲF" đWVL?0_uKS$$7?&ٜUoVh0^tK I#Wz[@hK_}?w݇>{9Gwn=G3ܱqkФȀ+72Ѱq96o.tg宽 XgSrpHLz"I^ u,_ aj7<_J/_zGT?i:;cz-ʹG;|dolEVe/Ҥ3wH5qLnGSΟqnEex[o⿺ 2ȡn*ۋdVMmN%ݓf(7e5Q-?5PQ̊>/Vm"%WU"gXQP|(X`[ID}(al-\?NOnLuʲ`dѱs4EgλY>a]O׳dJN`Per w,g t)IYA`*4D"T_lns7*o'ѧzf +2DZ6ȇ[bMqňgieD)N* //Tq{8>̅9rԈ"IzrUβI:#²1⥌NHQ/ҍ-.nWژ5LZ"2lc#L_)u-GZj j͗ 'Pv 9xJqܐZecޏ 絜M0rި*&8bh29 7;L_*Zir.B@L,f5plF6v%ePR' /=P_4b/BwXWbpb:x+x6 C/8#~^㘯f!(rweYoLʧZBԸA`9fX/~Dr\-K%`zH,;i-D7Ji<|FbS*Rê'Oo6ʅKΰK!f1$\NvZA@v HVS iܼ*j&$b;bNKY`"V"#1PUwJҀmҩcuQEQ'dJ[W$01Vj~/uNG([rT`Bbe'ӫ8I}&<$khQnj$.k1֦y=^Z{7dDS3^UkH#E&ʽ=[ Ǐw~EU5løs;%-gNU >uY>GMg2ưHoN}#<:d$a!n>Nr>d[[0C_2wME*EQM% Qݨօp\4_p(;I0kC4w @C0 6ϧ0ePӹgqWF6 =@wrGM#}$y~P9WaV3^Rxad.AA߲T]+(C6l⺥zSO܏Ո{o/{(aXzB :Bc Q`FK-И@:dHgVX#5Ǵoݕgzlx,.kP["RO_)}5gŒSMs[%ؕ; "DZ)z9 _ ]H/`T ٖJ PET} DlJ)Cy~>-%],&)gcSy٬#}@oIk1hyi tx;QWY3Gro~><Fϛ)N?K7(@Q2Ѵ׌68@7ܷA6 tmGC冎Go %%m$1xjG 䍸QΥwq+\9o|gXu34#>bڭ1 (FjGcg2 ]h! ܅e uYYąr ^Peq2P)06OF/m_GɆC<p_SV⹯ͧۅǰÖQj1dnhF DxپnЦJ fuTS6y JySP-HJ (VB+ pyec6ĚD}J ^irLu3&gq.B^Қ&xZP_Ēɠ!4 &0E8B=!+}]0mcn-EyT)3xڭ֚Whv6W&gFູ*xؑO~`5L^Mhp+& BU1>ie|U44Z<:Gۨub;;TաQ]0Iִ$>ZbΙ׀bvʳk5d ~؃KuD{ȸv#J:M㒣|x?9!P޸a8w"VLt[nx@)^a)LNaRZAKcq:%V*7u;ZHOO;R钝If :Yl|jW +"%r?~\rRjR3(A:hc[ m2A K$z. Π-R9 d$ h0s.2>? 5xJ42X_ơz5fP an!JbL tNEYU&#煲A|jC@@Wro4aI(9*+F-((2/^ӆL2ݒ \Rqu͡Jfq q&[Qi)& B*9dM&ޖ@l-9[V#I(5AF:{{79Gzf|PgG{GS-$,]M_NU-.#޺>˟+ @Dv.y \L1HQ_OuVeXݎoXl8CM[HTwG"o&\lzM|p&GآCR h:z; d!JКDVQ:,CXK(.Ԇl/'F#<&B70vÍ D _KŇ~%f{m=Vtˡ??}zږ;Y3>ekjC]=d)bY="6 P{4DBHFjtAs}R-S\6j390/wp9b,r_OۖSPRKHĽ2<)V!k.ʉz& \ɐopl% .b~7vk)n q7r9YKnǘIb$q/'ǿc="]9:nd+c9 Yv^j-uN/JAꏌmly:C$"0 &x Hʟ!aX0#u"2w8-@goV/*_6Hr "G\y^, W O(`!ԡq ԳI'g?BkJ%PyqCuy/D2U%.3^YW=5CGŋp({l;y@n/MXz1(%;m0c5]&8;o1;0?$a8<^3kLDB=cKOK}7=Uzg)kn"݆arA3yuZmkZ 1 +cwG`>c˳F!CHݶE+Oc,Ri`_w]5TU/v 7ZRnNßWc-@ĞLT95M@kqHQlm}"#Il [!r2%Jgu " a#tEc͙7Tl|QYSz{ُ?(HCIK JG0 Rlw]A(8B BsOirqC߰f[2Bo )!FGݐPq+.#U{cpTI[n̜DLL Zv㍯ީ~\Fcx#z^=z5ְKOͅhQ}yD2zVM ӿoW_.**%.U~ C<+,u}@0,V]8ǰn>ɁF`#NLPR胿+DY،O!Wq3rU%9Doj#yc%R[57a7U az,hG/yow:rE@~H\-y466Z KG[(A6< VLJ'Va u Fƃ4EZR'6:khWj2xmXi㣈kfń A2{̦ [3Գٖg^M F1^샙eeP. `uzTnV/+) @3M&44YtV`BrF mڛbBXʓa1=޻RGU$z:isYKv2HK-ѳQ(w4*o:T+m9<׌u7`R/RoR!B`~k$./~XDip0 ڴ ŝk\S aSθ"NL,Hvp%Us}jC|Fp'^w@`6U!1>WMɀfstyuW/2" Wۓ!^Qg-6H5)[+8;EDb펊+ljs[ZmȡZ!3|~| U:>͎#fS*ԊgmF*3e9^wpп\Ӄ[@|nbr@&nj,2kl&c{* {@G^+Hi {]<ȳ 'Lc;a\5{W1D&\]aɠ~)rn9Ck1z0 mۿ;Izcs6Pũݍ#R/K*u'[JHu$#?:8 9uJFiB:֧[n$@S:#ok&ħQ"(Mf* kYu_G)bh8Ŵg@fΝ@5Ӫ9L@˷,]H:?#S(b .Dˑk =o{[4G<&>BǴ>L>LlUUЉ&e hZ RP=xy+B3Q Z 4E<q9D7!f(-,gZ=f5LO'|ˎsitqi#-Fp@{hpa53Y16ܪA3M o8t,{ ?uq {b5oIN/5]/p$&—DM!5wCc>u9ww|-g#^ cx'+EֿK#ȶC`ȳfji_M;ujɭ@)8 IxXk6zbI;thӱiEh7Ib@rͭ傢AEӯeͳ@qy -Y$дH&Lu_f`[^)CLE^AibdւכM-I,d![K9-eVDȈL=*Ƶ&?n^N\Cr՝ H|7E>*1̳]5n0Hw57Ov8SFX:iv I4@ߗ|rVk*#Dv| YUlEJ%T![}fI2ކrҘ uvz& ڃ>Qru̴SɍKaT"\QhYС]ɻ%ƓtlBn\[I6iGY+$WIܑ]8#p/0"ZUmoЋT:"G'r;)φ 05W}6_'<g I2]Xu~UL8|^=sRdERMi'|]ܪ 3|2\ZRʧ5^"L P4HuCϵZӞyzhç[2&hmz*jM{<9 '=\Mٛ4LS֊6˄10w&.(f{1X`*_>e䋅g;x1vW; Rׄ֓I /t##bދJ hl:aLu(xa*[~U%` k`UJ< CḞ *j%SGQ' Pseh_l!<;t XS+Ij_ɠGFՏ@𳸺o0`ڹE+~Zx0gQbD8f{-1Fxˊdpv^ŌK0?|^O5l+l%H _=v5h۩Ʒ$-/=A8Fenp~{xDT:V4%k4G+e`xfFeQG,xx?{F\_Gs)X?`"xC}oM>+!S7;fUo)Tk\X9IN _82~]gHނ5mX2Tz&Jڳ:I;D-Jja "b섩y4X$I7B(Rf W`T_.:*3~g! 􌈙(* cf#öʓ9S<_3bJM!n0{=+*F7.MZ~ޙDG~Z{Q?!ZMpd/aPy(jsBx mBvKfP`*WB.1M12 1֐?rR}zkN'œWб{g$_1|*mH.H99pP8U}pK~<Qڽ_B½)3["{ϟN?ORS ]Z R]d&InEoIH8U'Uˁ:jOaUc}bwdؕ;5-Gաh$ŘWCٖ^N+ErI#Zj}1{o/?Q לEZ$3`"dɽ{3<; 9"26u!=65ΟèZ2 0 w=$X6-S+w#7i=&6[e ŗ8g H)x>lYB)hKWheٚv9hkYnبEwBA#^PX,c7>xo,E+}4vvV~Iιv:=u'c㫥NI1 -<(n}Sڼ8Db'xnO5s#큏`&Ϣ˃;{%5 i%]ڏoć x`h7h5FW$Ej iݦ+y-F J_J;R/k.lX3̗Z> ?M =oyEJ[ʏ'd]YԜt( p9Xn ũ! =5]P*EeUmN4]-I: 4} ww>][:or2-Oshi[nI'=oQdWL9!ʺvXՍiދۆX.`{1vLg4%HM^.cuu$r*3Cw}a,iE/1ϝ1nHi&tGCq{+"$~qlJU磼S]6 :O#[y#Bl/ڔiJ]xgU |{lZ5+T!jvQt*"%*l.ǙijB)/yi(yξ(w UV&/gW}*yxLrYaA/v[lOCvw<)D@7j31S=3XkàJC TYkV`c7sS ] ŵL z%pTLS b.uBb{/1 2{AKv1atk$dxAjj}խ_?Dkle5.ؠL+iM5걾$^:Y7L;)mcuW2W6U!W,Jeb˅ftd}WC)ǿ}<*6M.n+fcv-N<ΖuPk{Np:@hiR ѫM9L^~_/GX̥hj[Wxg BgOCJD0lJ mf>ҵ7ߠN OD֪&Typ'lN-ւjif *QMz$_Gl9h3ښJbny)xy@b1[*htҼ QTQxxBjt岄F%!`R6HG`QȰA3"ÚcĐV"@?xi.`I%V1z+WbVt2Ne9hU̮jЖix"tfGí7>ލS4x^~S:a9ƥJhEm9Btkc:]ݾ>@T=#xjRaM^{Y8'GHzxYwGr65z.E'1+s[6SGJ32Z~亮XY-"6$|SqfI[zA43VU5(h/PTa J9Tg/|v!&:E٥H{T` =y˰-:EXC]mӃG3,H{yl Z73{ F G^%ls*-ԧ1 %?Ka3?P$XZ9 9a^D" X lVr |A.=7|K?okb) nu'dzߜQLR MbS1 MQwQ[?0M3G=]pd*pV: On a4r^Xwo?O ՠ"nːWPPfoʙ>:ՑUr )0Byv0.J˿cb1mϟǶ5iM]EuύЭDtj{wGմnl" N_GJE( %Uћ{a([ GA\&^mלy(G!rdNa-\CJ( 0Ie$|h> F@Ć' E¦MQLOCv[>uCnn2\.1No?<_#$5O{'8]-Y#9XHr!(P nEу#ojWC B9u:B9 Z{  “lpbvgE:a~/`1oE=܁uOgNaj^>r}bcţǓߘ.gM?b9f6>}B(i=K65U&#Tj:vnaAppsƋАu`uJA>.# f{Ct{h7:lE `Nq9ξrt3q]$dZڹeh`F8VYg,uabCIQ5R{Y "哹rSwƼ0%i]7 Ix\exbYUuUV4;ēp!8QWUtZ<?# B9nZPi\af`st33s~֓oU;ƌ P<ή_J4ql~=\%)Ҝ?5fgV23~֛-_D*Kgĥ@IŝHt~Az-wx]G޴lJEGpH]![a>W!k~J^?hn`Fc)o0Ě w%>v |DegZfQ,9?pX(jaytY~N$ MZ W˼_%Q,KI$;PIrU]0eHl%@tM9^G[&%mfsC> ? ?qauȶq:"Ńv=%C2}qX~##ѴTV@:Da+"h/ >1m;] &)Q>:%2ݟ9適ϛ7`m`f`~՗d;X4 TqR$sRjgPL9]r\BuRV}¦#*"gsۡEIF޸E8lGFUi \D5fR[dT.rx ӤxȈVgFb$9дnՑ)=kPq+%B87(B/ p:%LV%X9G [ӣWSL;||5$o~F74Mݑ/ Fc,}tz'Kvx~rlY H4O_bˍj[~G9<,3bwRZӹFG}Ř%Z1 c 's_;lwYhw?јc:ř6V<+ d!%` Q)?#P*0K'W3Z&T(Vc/3 $ ``#k)х[pl~sbx }_u6Zǜ#:qr+9YqO1Y7%0e/O˲]RoDùcZ7\3DeH9%f֬I(p!8vp>_େ2f$A՘s~ WZjf)D Qu{E*?za\t;@B}Vf\k7Nk&J@^Iq.li {bd B8Hpxⱊo<r*Ԍh-I?݋ BwIdj3Wȴ˕D.Phm+3nw݋6"$Y?>fT8(R8d&.YDճhE`lRX`;+|}!U:@iv4P}Kg7L]@;ހ6Z<@# j9fחS8aU=fFYJρ ^R?TmFg-\9{fE2P6.hͣ;b뵪ȃWΑv-I:^PT_Nxy[ɞ1l~0v4Ab3{4p|9U&l[>ٻ#I}_4նHX[d ½' 68ʸBT\dCA%^E">\92C.UM{ch֍!rq%p7J/Xq8AQ4/J7X RLPIxts}l-aCShuI֟6p"aŜQp|yѶUG]7ʼ'nTyT\*ZQPKAu4/^|[:-Sr m]QD1B#9<k#M#!=By3TƜtC%ȯK#~ҸQT{&[k}+P!e}3jmAl\"cR'zp .9tq's,Y 1nnW$%Ro|)gxGx 2~e L קh'S~/UNxFrtᾲV#kX?2˷u}PA . 񇔗9V)7Eʖ] ^90rR"Z%e;E%՞Lb✳l~;./[R8OûWT͆<CwX+(^Adbyurz`GZÌVLi'N,obsb"'+$ >Z!)!GMB2;=E?vgmLH8_mnmǾf*%f;`{d.B7jز 96@WEu3'r8!ORJ9O5@Mu qW5(܈t XivL,M`.>YiIvQR\/.KIn6'1i"$]gFgW-+ v cP&DO 45ӭYJԳ ե@ YyK/ |$*RZ ~ 3ԖMG`~xlc[NFb=s#ٴϷ:HAȌT7)s;˸4ʖ 3*'UJ&b Rzw{i jFW }y(aW&qS#EvtnW!̲g e"ctcunyE*3]t]2n赏oώkQMb>D8̩jw|Gc$ef2#;:LPI7jϛJR.L6ٗ>zs)xӋTZa9.O/g2|.Y كNQ"1['ȣ'%`'_)FO3ӍsD~ys_+ -i\`eBHߪ%Tg lCiBf9,< 7*{eE֪Fh!:m9 uރ6oq$x2]K::dC \(>c[̸rB\g#|^,4aƛ !RfiBCv]i^de]|O~ ҩ1qT 2~MԓnQ q~z&/o-<* z6u:2a8ِ(5SyN+^?-m7)a2R7ӐSQ%yv~Ƅٻx㭞Y><NsoKƨɭHS }.aWAv:jY[Zr&jwSc[2!0T~a0rrt} F9_AQw8w:Zt_7F<<܃cݍ2e fv6itD! &G»k$H*Ȁ13>OLSٓ6oaD>ܶ,*1-B^] WԣCC4vױ;=έ}!96y-);v7:($ڪQ (rL627ײɢ~*wj6Ss!?'ڝ)WwkW[Cų hf姭~83!H m5{`X&[=d"Ah,Jpߵo-0( CQ r2Ց6Z^/*cFCctql!(zl>Z\7jEXqs" ̿b0tb!Zq70Gv.l(_!\BP=jGM[RJ`k%*teID=`!F(K5[bz6PxTWHF8Os.mg3X4oæRxYֹt/#-:̛)PJvӉA ?Q0vRB(mvR .+lfO䱚tp*8xa԰jsLW̟+*O: CpZH.VTai9bY=ia2BN#pdÞO_l ~d6cDu~hYSi2;8d^KXG}/z4*HQCZH#bJ(Rڳ&0drQè`,>ߚ=rge~yqh6,oJzQj<P\.ol9X i;"iww zj{F7iAS g![Kt}\AoVH%.5n&%iDmIHs>L;QDyl^%BSلc+ ab$xjIh0NCCǷ"*♞&j24?1t&Ŧ/E0iF"+hٺKX?^iVKm="!$˃HKENUAU*Z`>f :ee$Oph3pwdqӡxܝГm=0땚|@%g7Ig KNQ] }8Ο)zj}6\U6g/ s>@JY$u`Ge;e! 93{YyHW& Qn͕:y$,mqrjs@cR0zr.]SfzϹ~[Z'1Kd5\:YUwXAO! o4 K*ءdhxu&/P}Z+4[~c҆T-oN&4,a+hba0@F0*ipnR,ҴSu}scOݖ'M;x(IМp=V1)Ry~>dB;b2+ \%\0 z4 &Z(쳒wiD"4K`kMPfJӄ{Nx5lV': [xxH`E9FM=e=p^w'ƗHX۞]!(v;PޅdA61:k?6s$v)mc %mqQRc8muʛl kg N=RexE)j,9Va iXln"oWEgq8 [-G*ta{#CqenWwsKl i)P_"M!{X~#'mPzqV\B%vU(xDHw Pw*!פӹoIS=UN "/(MIS"{wr'3w23)3;Ohd(-_烌5%˘[Ndw d 縹FZUز0/XAaiǽ{r_46`IPIJdF>Rh!80:_,'1`RQQ26eMc} s^}rc]'*QN).&(>{8פ\8o1Ԭ[ @t]v2ƘIlo-ʶWeHlKF~}} q jJ5Otb='妻9[Qp,Ǐ㗇ǴZүe.%'ސbh##.4]he6o+QUQF s G(m[݈7 S*p.{*MBo 3EK9CiTB-Hm oyHN}5VJz>c4KGϷKp&[ ݮ BN UN( noz(ت:G+jRJzδ;*_&*[o[VV#n\∁umY 47b/gB_"<_ kѱ~qio2;p?&#TB,qT_ZgS:yWWc|e)*z,-'E9<&4+hMH;M(Y@R'JM4Ɔ U3HK킙\:V*{@xڤeEhUó.߿"ᗤsES0 8̮?qi?zbߍlmM7;?UHn>17uYeFLu\5 'H&;5{F`ơ1w}(hA`.) $K!$jo7Ae:lU፟X,J-pA FhTѕ9Emxq/Z.}x?| I]N:_˴ifGxrQ[ΛXܭi+[ @; sZ^jpwZⷞ`B״%a dRAZ:}bi'*(ʦuw[:(EV>O))NA"`wSc@؜rNFxLy!T3d`x^nO‚~6c FU@"<%[,3Yf?F"Wߎ8i(6'{B> Ѿ9CϷX>p51đrD D|g-=z@ČܼeMEؾjt{!XS1^ӅIi,>yܶ/,xQħPWgb(\MzfO硥 .fO}>#f)MNСrBt8,.H9-4ìLL@xŌ/4J@o^]76m,!2{>t*/,e(r{՟Ukvnh.ҙ qC"DAlP Gc 7ܕi#5xj _3.,/Dp6+ƼQf08hK@qKŌHRZ`N2fG%,t !B}bt6RҶ=RF#I[ S|d*pNΫ$3EnIqqAru?DCM,teckDB]fKkW:4Urާ݊WVF"( 63Ő>+rRXX Ɓuceq3'%jNEb\}w'‰ B$ڝs|Fpۛhwl<~/]{_T-.`:S&;BŇ@$҈b3.Wu(iևI5R]ȡq T$p2i;5Pӆ)+': *i?M8VhTv̅ ]\@.ɭv5dwXA-iajN4^Zw[a6pҵ#Т 9I 9T dOs*nI, 5h5S*Ei3=6\6x\M摙X_6!xnZ ߥb3gZִD]g]ynvrֿCz N#q!kM3JjZ[Ujߞk71E|#3{|EdVL*L)jF݋xx=q.*LQtZ-LQHU$7 |_a"MLw9_^b@6vٜ$?݉>g/F 14 b:= u>˭Ai"DMBegP[7oTȲ~Ki&Pa<@HoyML~LmЊ\Zć]C%iJs~\o1-QӍ2\wӪ72NґꞂZXҷo>+7E2œz'FVZ`!U`1𒵨xX?j"+d-kH䨤\OEgӱD :H6p4TMKo4Xofq)!JaMBb= L|Su!B^~Wy7j;=Q +`ks," &k_Gݥpe o\NGj:Jcm3TUEg" uRQfT4.|iJU%y3BFBYļ|RzT3-Xr:ZAl8+{.K TOE:59埮xԑQE dQeYRCeT%ZJآYi7oǶZraVr,dO=NlJؐȝxd?1>J!Bܕ>>WWr$ +R<(P^6C<6@DtIegwH}aEق_Z+ݎd; Ζj4Ǧj gv$0*MB_K ɋm~dΝ~&F1^T$n~^z5^GƬVӵīw!IVwV@jPAOX[~O#oךM'ľPTX[X!ǰ8{dž $;nl`Z{C'tq1F#0HIܾxi.sfBmKyi bZ(40)t` a>_]NQm){!e"Z7 @ {\ۊ'wN /t/w|.<(6Vo==dtΜ?W5 ,738ߺiwtq̾^=&=H&?}XtDVd#HQ@oϪvG0慇BLJCAˍ;79`sdlI`2/j&%m. Xxh)rn.5K%*I+e:Py?-{n& N2Fvh= tu]ᨵ_xZ.Jv9W3RM!y_c PlM# SuXI@˼y6ٕr(跚CަwTƐ)ĥXlqOg Hӝ4(ɻCYF0K$8ajXPW ZtuNqZL?;l!= SBmAivx~ktH_Jmu& jӑCge͈g_3>8)'Fsw5'.=Hv IHLu 4=o˅2 fӐ@R-~^ToA[󡴄ώ7hIlXUL< :)l8-/N{çf4WwA6(ô%(l. Us/X(9 ΡAp65  E:/dxdfR^jN~-uv*dyU}j"O@ \{$? Ԇ07ԥXX'^$H\ii mm?NW?I" W-^|_$)Ǎ6LX}|.H}%rNgwO?`Qe({秵ƶ7j-1Nԧ 8%w#` j~ f!/q6n `˾_\KsCh$:ӣ1R讶OEE#K4݅)$iA"=zw,dc"OjrF(dͼ k{٥;??~Lb|`<ȃ>#tD!!Bsmط8xq;ͤw;H5(}間ڔ;ES6оply&+G--֔XůAc{=xt_yXKa;}_GSkv>\< Hi[+^{Վ^}#ĉjp u^-Js'nkz.#P!]nB͊*ё-YU텆ԮxtcܟSYj:^UoM%*:Y.27Qt<W3?[XdރFhQ=12G]rU뚛a%|A[{4.s%黆65m#^7"M2`[:큷)QM%.wHë#"Gh'0j * 6W Dn^ai%yuK<LHy+vZ>l'J)hţcѹ\W?gXefcDi> qnLSp[sd^Ak\j(4n~U"A164gS1CE;rb77,:&:lSrʐ/ v_YoA΅ ehU7T~c Vs=ޢ.ݳ/|iBiVhb4֖ބXmxEEer{q>. 9=5ww1(ؗOU(ϠCDK M^ؓ=`ZnġFwTz[peo F:@p7VM𖕭{6=4zUA-:5tRWcƘ D|1B#rFqKikoydTNkps.Jsqj!Vn[TMѲ>=_jKt6ǒa'a Eh Lr(l'L.ݨsP*Anq9LKgD0FVByh7|\CGbj#xh ̙:MmpwMZ9XA_Kq%5Ckca+bf( F !iz E_* o$ A8uѵAu;Íē"O(V:W- и^i9_%+X  ?",y3OS0@u5SߌopXػ Ae_X(f .sAMYu9{6nm Y+ƸqN,y94/(FX dԐ.?ה1 3̽VcEV^HJ}0@˭C;I[;(qcakL )o u|jv[3p5Zɾv7ñ 3puwqOAYˣ/[vM:ea?Bۃ= ?Ӯۄ { W12ƪCFeRԌִI gHՠhS3',aOBR~,KW7otwv(-M9j &pwڴLz1~y鳽WkQ{z?\ؖ`O8, 6+j5t-[w_ ~ oHT*}[^F~/Z|B}>o2 ?DwOX7?R |x\jEO/6îx pOTEuI)f@5I2l]5E,ҭnC YI󗭒 h6̧>vDu(6 Ubf^14cQ浚Vxd1HQndOW-TLzM^ >qp]8"' cm;ߺ;L8Z*0y& r"U9 DNЖ_ 0 O1 hƖ!=MmjaI 6Ҳ곌w3]j*UF[s>}afiUӟKz.0h0",KiքiJuN*s:rHIHm^G8Dx|3#j81 ۜ?Ӄ2}53SwbgRnmO5>xSQ|~Y4:}9a})٧3!\(']fXsK Ev.:bwc9@[>ҫ?rۀ>,1h暐K)p+z ^MmO~HJ5͔<%8%X}l^=jfֽT.)1ƌ])4B v `< ihiuٺmy1-#0b6`0?o.qB 5C1=("1[)@+AqKSߕ^y.W)f/ET;i=m҂9BoZcL7ɜGQ:ﭷO$uWMZٱQ}E1+N4b8(k]Jꕾh] `(6^,&ΌxgW19Pߞ4Elk[vPZl@Fs@@ {Qݪurɠ2>wQR՜PPr(NrAy@_67W@a\zG2oӖk%i+JN!Sc}3j1b;E߰4\ZdMZ~'bWg [oe JY?tHRێ`W?-c[ :جs4R@>S47$f$%"Z{Q-0;2w2ܒgW }U i~h""@SvcCd< 2 5"H֮y-eN6r1_Qkpd!9qZ傀Aa`>ӐCaq:y#Dzj!G[p|RlHgUXׁ*:)H~Q*k\x{Uccu7LSJ@r1V#~5]ElF=)r50r 67l݄f6 ,!'bvE8=U|ٕM㶦uX&P h,5: ,V;j>%0OZa߼ذq&~]:!ԙ^F$L&[kTmᕃdTA/zSZb>o5iBЇVgDiDh\Ae\x3v0JyeT7lRq#3b 34LO}p`k}\e3Ubn4q أ8J\e lxo`_p%ḈKEPxlWnM~_(=fċ< "0)4 6OO8CuWhMt\ QM^mLhAn^6YvV$|Kyb+N]0"CHԆp,lGDuYHOJ1& rE\;|3`a9Vygv1W3s?iu_@[҄A Dtт7H[ob=э2dl~v|Ǥ]Appʷۭj)=a6,E.V.?v iqLYf^ĩsI:R@ǀX9Dzo~@zv0W1]B-%# 1 `СQ3YQvH#]b); ] ͸GX0@08Rxb 9yTypEM`.W3y1y3/o{PEtkV#cB Ga7HɊ0>V쵞,tZ!_oB#2f7xml'>G 3#c`2 aJ~XA/|9nRxcҨBTo5Ë мOzfPŝc&X9>H#L|RxŔ՝M=&Ӣ Y'ѝ6|c`J]MX F0Uh{ _l# b|-62%p<(t9|(3mz e?Inqy9zAsʜ 3.4'=%M6a7PKSLhN t'q/,iO_5M-;j _!p5] <(~}a\/41cgvyd,ӟ688A ~|FvE e5eQR B,ʎdrh26fb$Bd*Ѵ)s%Jt;8P.) 5^/N#Rei*k<}8F{cD#6 T3 +g [iJb؅ ^$SC:hLuL) "`ԑtc'vM! 0,tzML2r ^3tolPK2]LW[.U*=ђ.PqtOLhiNk3~]qz"ݾxPʔ"+R' 7 ESzgBЊҿLՋO\-cggLjҰ&O?"E!Jw!Ќ pX(1ImnJ|cTއrكm!yB3#FuS +L.I /v'3n" @B B92P:Fl^5RΙu[ S;(<+ #1˓q9B=Ed 7 .]j-L>  X`r*}-Dad:"d" B +MG2{?BWu']]ron)ZLj}r0,k%zmR) |fh >SӜr|Z7Qy'`I.bDF-/02l5=E; Jc۲MrjZt(ON3wI#[ a  ~fpZ[,YE<=)(q΅2+}ĞS;S'99Dp*+:l0vi]v.34knk!Up ^nq@taDkz_܎&K]Ѓ'< U4ʢf>E4 29tP3BVP?f2HGe8Y ^7c8N?LOoVij4faU]˛1jhFԨ["k[?43!,Dx CQ@$v#@0G3Tzģݍ[qWghlw>TE>?8!G5KQ_OYtbP|lwaWJ@M,HQ5w5kftgzk]kő@>rQ;zãEZ'k!Y,z07h,q̕ {7VOɾ7<8Φ҄\U2T6NlW=DΈl EH3DL}ilGAǓ*?bz9Ƒ7Y\N- w%Ai5vplL~̏tUde }D(0vYR}ʌkx#IF#aЭ'B )3>ļ8Ljj|A#\-CbE*9=W3Nx? #hЃ݅bc{צ[yHxD6F3b3Hc cP4e"d?Sѵi Aj֐QRPNXYKq\ph x\} _e>1>W6pӷvmvqe$Rʵ6JJ N0IŨ@nC.bzpӖl< =3ݲμS3[j0&J t_YݨPOŒ ZAf>c?:K9T$9Uyg4k4V g0$5ssAz +Sl b|nxh@ڄ}vidR@JO UcbøJoH)Tt}Nz&uqSf;nm ʠ ߻|-уx iN7 9)i ZC #8_R1u>ِPy#ឦ@-fs N1>BSÜer)9IѿDŽ? =ȝ UFYHlw- > %($*jX1)L@5o8&!5! A 6^TbͲ#WEFhyaP5`by,ʰdۮV#)Z5}! Z ?B Y] ~Hyy A^:nzpdgNpirw,Rg%&b x@BbDHX%OXFIO!"Kx2"H[QB<~2gSڬHdw Q6)To/t§׽VFCr%= dt@B $ ׼0~3b}*Fj 1Vx9qZv-?yaAt\ Ǧ+$w["ҹy=&'Lu\-$DBvŒU5Bjnī)jad*e#b6e?EDZ#1+ՒIx5r)HP?O5kKPΦwwr ?Ltִ<ow|Y?NP9 3X7kFZG Mоe7X!O"W.Q ^=xͥY=V]RpTu:th >GT˧_h te?,WF1HtA{0 S> PX1zΡ)H wѸ;#67O'mpͷti=}gڰ-eU?ڳt,vχXe_e˰a.z9;mvM;$|D;5Ms +m;H b pLg]b +t&ޗ.cҾ%%XO08UμΩ[=`ؤ⾴ly {` y̫wq&|8l|Xd!䟺MU[D:+2}tT>;^Mci, 8rDj_Fg9*X-yn׭TfJ-䢪 fsK-e 4lQKzFE4ۍǧ)9 -FN~90Sע ~3Z{<h PlOA+ERq%7qs}wȃC+i h+ %]yZ!#ACr *ܝLQUA6i{=THK>?@~;[1AyR^`c.+Yq j6Z  y?ȍ Ru:Tγߏ\ќI36hl;\dU!4ZgGX`E !~>&-|JFhqaTD⹘Ib%sHE$Ԁý1N"o[wo4^[3 !`i`5AH^-۬7Rf(',(ӆKtp`j/7 Nᵆ߱F_Lb; ԭ!fLrA]!.u*jPqٖőB\ʸ99prѶ={4ro Xc2MU$L X]2JE6k]L"l]=v b1ift\v:sY֟(;HӃw!C8sLs*ltV3mzi'u:YZcRF3Յ_Huvj崣oTzSO/H. [?xx&KXN&չi>X7Qbڕ摂ժ=莱8G[Ӂu]t{08swDD@3-9ư RzhZ2[ܽPb /mgl$z׋% \ŘAyRiASqΪB4F9^R=vGc _B6cU0$4(,>wj c5NJf5^20U1O.nrIM4;h-Ĵc:݌l<ئ5i]0u:9+ax ]YÖ(cuOz2,&\⿈Eq uA9W55Jn.^9[5 pvg AJ|yx=Ҡ@yh=|]F=L{,`im̨+$Ğn}"XQdd |Eq8@Ϭ(*y F[$Oߒh׍9jәhKWfwsG}vi#!WCH=h}U>R*fqS2= rYjosXAS Զ%-ҸW0NݴUxŽ1*lZIc՗#`=SHȐ'SZ{(OȤv{qOu!Y;fv>U7.!9?Iz~6rP,^d ix٩3 M >,ҺYD0_,`]w ˿zg8x}PxkՍ;W4% VG%ަjVoDC xsh$.vّx6&p$$Q!voSe%R_yB`~Ƣ_znCAȹ25O^ɨ ݌GKOIrxKE~}jMəeJ1MPhz6#qU54VRUrwxL?x.Ik_Cē>ܩc3%r d?Ѓě vj>]y!;610G6_czHKcca PT|.f6U4>ό*2S)Ņ_ la&SS3 2[,q p)\-M%sGb%؄?=D{'&rx+ۗ8mSLkO w^2Zҋڑ#;ަY*S<)ڮD/(J7MjݭJATŐhbW9K˦X?䳣 ƝH44|+;8_,SΎ['> #QOd= (4ŋByhŊ^ x 6|λi&jg]:9*2M*f㭢#Vsv|j7Ď!Pl;ڐIIh[$ShZ@ֿ ]WU`-?6$,o'06aL{vu$)cLv Vb. "%*p=Raz{ʤy/-9g h .S%dQwrõ*ȿ& u3LgZE2V <^:r,Kdw\H z8zoҽqZȏ"fgw&iƎ ۸Y L7MbQcMpSΎR'3S;P[ӊ!^3`/ j>3yr4ko 1Rh)Mx{M8ŗV lB0]N N<( @6FtK~VԞMN[9}= F57>nPCt©c~o[(uvpE^A1-F%V 'Z%b4׃d*9~| ʼ.oF+*0]䊣1W~aپ'%ׯs wGw 6znqp'o^!ͳ O(97;w*U]8$/4A l.PBg*UMZ!ưޘ] 4vt [r D mu7iIg0)PÊ%aW ͮVG=Q2hM\"}қHEBGV##VxVgjS$.<G#Ā׵؃`(76]1S cSСq7^ BY8P7EtLx| Apa0=TU >VRos ҖWCg8 <Ѿ[϶gN"ş?9z> ^C'dHxyYAGBBթcoGd-n.㗇ڍ ?? ]8o 2 ah`b(@fP zCxկ}sx ܌k:5u 2\IeaLL:wnpgC杇eUf'EyBDؒ:7ϥx2MgTX;eYܨOý!&-.Rƍ(hL`F˫Cs[ <fY D'\ED- Ϫ3bvzBZo>?Dz'?b5.4"n( HaP]ޢͲ`k66_#QH˻B< I+ 0v:VLcUN>rrm̎Ӎ=j$mvi$z('/SD9QW,LbG)( H?jnR C]8][,!qBMcؙ>PPyi~y[*B0hFNi{7#5:8|éEć7o$ÀB]ua`Ah8oaצepj y1J$Lށ m ח]]Q.A%7^nV~ޝ BK;M8$3H85;nN(&4Tvsŗ ݀*m@3jW =aJ8_$Q =$(R33ԄimyE]b|ԋJͪt 2U@LBdHISprEW*]zG!_$~H|_j!*;έS|^Hd5q9زFp)$N^+},߀~H$7I2wsaVGAz7W6,#5]AFs W/$ vw=; Bej'Mx2 P䄊\}W~_z]{NhgMfxUBnv1M$w*IwV}X[dj%L)$ܲq\`n60#.[2AN)&C,J;R}kJ[1 7 lS NY 9|8rTRY8mSRj\/sf76ts͊,yY+(WVeK9ڥ\7hOڳw\!Sz[.2e|8W9'5d}> O'B,nTW ;X&R|^O*'dEY#*-NaJ ĕ֮4o@pm:r;Dps4>Otꥡ [f2:{̧tza.zOKv)'^PP+J9W|~h*O ;辠+*ލc)KtB^P;[uӿ R0H$)O^\uBzz/i-xtr4v;H9'`JaĒk_, ]E19 o*7+'S-)](paԘm:{=D3MWsb*+cW/nyp5Êy-oLeTi<\R u:\BiN~&voBxl(El(=}kK+c|m{1Mz!Yh/qfPqGA DU{9z BY1H[+<>v^ ȶ#Of(U1Ds|B1H;օ7yL-lڟ.:}FXYmM~ߟd:wHK 0C2T k=@ЉACE#[4%T+ny]~쌑n2'pHFAHݠb(׋ѐT [u)/5[wrX3r m)P6Qi|.;@GprYŹ' r@Ǜ79<3RvJ\oiAݣ٥Yc2U [QYF6PBJlg^i3Kwlgu_lcөf -DQ}kJҍg7q`qL^Q;qDTˀiPvEڰo~1))yuq?;Z;"g,YN*7F? [o.M.c*RWk66wO)2$X"Wȋ?{b'A7y6h]܋R $ 9'^@KAU &WO#+:󨿱zh^{9MjuoxZYjayHh]R|Oo*bxne;/$ h#C佒&q&+[!|Rs9.fX-_O汍mbf4T(0`c;[0a) }l2l⎝IV:{ 0j.P9եΈW-Rx;jæ/3< f^?7êY@2i 5d¦4QK$7J"~ƊHtbWU(Yr:S6IM׭r|}$^R{rsudq]&Z+GȲi7Ԉ!{" ;74̑8WBG@sM-v'җ<"U4J ?zJW!P@~;t(.EŎ6[:a$M"HOaeb]bCt.N~Q*tv|PEgnwmW9ˁ3 y|Èt8+HAdqb [ cឋkɬh;v51qؾx& sogiV#5}wyu,n~i5~tV4WRgXCAuYTuA)[짴b?A\cAQA.i&qޞp2^%omr)@poTύ:_;7N4-Mz=L.Cp]Ղ]uW==p[/vj%+|^D8WFGv*lOQa6t9 dhWl?-L1e-쥣F0ND_)Ӝi-!I`y>#"kSds㓯sBС1)BKMF( /ZVkȟkhG.&4ZѢ5qS}K-iW11gLַʛ-c_םv&@XMyE6$>#J`GMm`ɟPKm .qʆfBEW O뒮a +BU2mJ!B5KW%sČOm.QvUCWos6 oMJb(wnqtHÎ+f˯7P3fqf SQyveS(~WrS))DP@ =<~Vj7t U-NORȪ+A6R79hZhFhAXB5q8 i#-)LM7r6HI2ho^<~Di"9 cQr?~K- u]ix1x(C a]Iof #8Tߖ_'7L)=?  +k-nƷ5ȑ9%^39:]WY<#z ( '[lf=NX%u3-6Lhgn$`QJ]_S`T嬮R</>#)^'^mԖ;q!N ƭ. H_4`va^: ^E?[IBG1R 8zmΦ8ֹNW X4Woԧ:(@ dm.n@!r[YBp9G)6XbqF |%\UM&VH)Ve@Ѱ1;16$o#'F0MύoVgξE oU~4FYS1ȧDvm !a8Ih A;|G+}Z$ .zTں}jPPhY u7=G8+J{$?kW;}V I wOPa;pWQEJQ,LUȷ_$r0YtT#c0&6)3v/HrfɊw쵯|yZ ~F3bMoɍmW`?=}ǼcEm? u>5DYOP~Œ0PB ޜAoBZ[Neњ96(O"Jc~ ݏ`bKY&E*u@fv?0bU=L=L+-Rёt% sόQԾ=0}{ o },5ѓEd r5}e), _ZRZu}( NWCXCs2ٸ2$M%qJy71)'꫇gq\m8&y&8U|J3Ԉ&x6%&iҒ9ە3`=?aze3QrrS#HÊC6h YF+<<.j hTFIcKMٞ17#,nA2RCTUfF{sϦKt)4D݋1IhM=cvuj7- ׫Tн5,CQ@iKK DͷHFvKL2uiPv#e9|Lsrw_eQ.iZJo__H)PIn7&{Tj]ĚŀA/@75O fJ# /lx}MC,vmmW =R:7/.)d菚~tc&3VKݕZZ;F`µl_FtTU4Mlm4_H1m艤+1obT4p~-bp\j)4FR_z h~=S]㑥7$B;ظӟs!yqʹ}XOſV$K֧H"C#̈́ht@R/[z Z$1 ަ2#.4!<`qyM:Oo!k>AeH}PKJm=4;r7_lCn _z)X@QwI;X:bL_ũB|gč#,W|fɪ9>Lu dxT+J4X .:*˪Xjrn(,9R-Aa4J$x Q9 pP ,jK&j/}pT-C#U8*KJEc.;[4UY<* Zru#Mfz#kߍN|s9j˸+&aG#Oj 3d嗲fB%Kmf0 `l*ĕA]Č}aZ9f@FP%2Ja 1++^pWMr6,H31L2AFt8M,פS!1ew ^ٸQH}tL.ف&ا(9< r} Њ=Lc]ߴЙ)B)?e6H>݄*$bUFzccZ|%›L9fjC|'#`Zq֕:Rše`Pj|JXGtN /MuHcҐ f*PW #UZ^/xqG]cL(9rLa1O>Iܛ" &Bk:j>-Ӝbn`YLYgVkjTͨѯR\]T?RPnm.\c 2U dF.!Ûb% R65a0Sql*433 :tw|9/i#aZ*ɩEśbuj+=!D) \ k%p%\R ǖ~g kmUoQxRR]mm3ָI8 ɶ}$ j5O?D|w2ٔ?+&Vn.{ۿ1> XgcSSҺ 8Gpb)| wڸ>3Eіp }4zN-yԥs1E/zBǹ25t@!ow[˱)ȽO1cC|[VlGJx'+4pߙ6+ m(ZOkؽ[IuXhs-yx2&e`ZN;Uڥ߸f| s Wf0Q>;4M?&Su`~I)qw+NfoP8M~s@u% K5⃢3a>.AEۘ.EIgo;F*o7M*>~ruRM0ढ]fTjTI.Rʶ y!T9 /=2|;t1ȇm@Oo]s$[ 8* 5nVܭ*4༝Y;QF0^2n| AJ!$摓&mzgw]6Cgo+E,R8L)̝69%%LmDHs~SԚ v_p蝸's#9b𛬏 6~}*Q 2*7Aa퇒%QW]WR47XZE-򫫊Ӂf/;n7K;G2#hF2N5? h,o8ڀxc;5<ږIs߳s'=%W[wOn Zq4x)u ߪ#P^LԄ;:چNDĉaśKE#<>w&!ȳKHqovu[`Rʭ+Rr9JǸ(0 T k0f 6m,H;8g {_z"!42kH}c)Ρ&i=n^/0-nLEF2?ETJOdU][gݧM;LE62SqLS qiH+EjCH[>#;s<:`,&8b*Ԓ%0#<`K4|*/bH;_', W|v#|ڒ c Y.wJt*Qs7-ǻبEˌ\I=Ԙ[EfX=%&06Y:Msz/x=Q3bҾSn8d(+E0n< 7F:| P9_(vf ~ӧT c|TN;A(*A94gK\4+:X~WT6kDrԇd8gPmBl1 whm8OsěׅH,)'BD *"+&emȏ4KpCz%sJ颼g.1Gdʩǽ#@\>e"dW<MIY{b&t?Sk`? zoor,:B8"}~:Ef /WCK@qn玑4;B}zzbb5Wn1+Rx!ۨ_0a#:iV=CSW~5?(XtFM;İ W387hb6gU31#`&-s&8,H` gKfi*7PU)hh /oN1V7vgLzd 9myQBm9 d57͛ m?\K'!K ]+"Yjl"lrt/6ncӽܮW'" QV=vP?OӉ63v~x] @:S!rLѕN,-5(8}1 ' &({QW>9*h-CR<a2sƱ5&J?LroܔJ~ŷ [mD#NA迡,?%#59͗}|Xy:ft\ = v ȔAhdcK> sj,XGE"k^R1tM7 {'݄3oS cM4SK/@^ՋTP-$&6iĹrEL;"l~ĕJ~]=F+ Oމ3<:I?ƴK>G@0th~Ou:4M-JJh'Udš$L'`)3Olnz~7]\a\v15-4kY+zܛ$iOn,y0+ b50N_**ĞUwy6!*E&ts5NQ&Z}m( iQZuXvlWiDjZQ=G'xc^r=On덷jLpmr[<4UW rqhnxlWFց·]b20gxr#9sl<@nDǡXyE1K]MLegoD2>qmr@E*ڷ\ )* 6AlbC EyB&bbdU55r=ㆱ?ҸZB, ״9Fӵ@bwĢE Po݈ X{!e_r͔\+EsNU$0YKb$tEv4ϟ?]K+ ܎i 6KB-T(D 2Y/Sǿ:{5o`-4& mEL;]Ryд؆|/[TwlrLuDK;ƝGڄ̓/A؇X)6^__(z* gA7qRrlhM/Sp)8Hj‚xƾaEj7i$ 7.[`TtpK i m|-iOPtn~ vS\HòW!lumO<ی!k$;sPȩ>a 41 `o) LCtƱV(R)9 $ZH7 Yb=AjГ$5:iA |hwOx_CޟK'wq-*A~b+U^x?ޟndt@NMoMA [@Dt@Z)׽jB VhpZlHA X\QMh(p7xr  D]05 FF4ïBC!F%o=wL>IׄTHpUޛxXv gz&<,D4VR;mޯn35T|02LFXӢ/Eɥޘ4ۈZҀ^{-KS]VC=Uq< dk˜9rgOC}G:bv93^rh RJ4Jh1ljs;Y@-#nC^&"/iVWk^t}.f&].3 _ԥw}=鹪bΰN ;4<G_z.7-sJ0s<׋KӸ v#^qD$OG2?ycI.ʃFUɊ[:>C=f(^nQ3o~׽6Oq*L9ܦsCT 4)gJ0҃ 1qeAk;?!P O,́E(ÇAFP q!r^Cңқ[T P>6bkt)QsڭSY}eNX̷nI < NO %*u>k Q֑ONs7j ,v<.p5& s@ܢkݰ Iߵ%10r& MBb@5tHTM[oWFW:"ƁNiL_gcG\ٔ2SxNTq]hYYoάPJ]rfg#1AE4""Ї&;,CD_Oa8,T@oA$KS_Lpuڐ"U"+M%yagqS]RY2,epzLBJFǔW1KlvmhZ!:2]U(W΃uhup/ۈKRŲgt, R"K.B$y)RƉ?iR+ wP@,>aOCozYȉK &VV$ᇁ1$xd=]{ 9O6^Af~^{ ]iGjx䍷l0"`kLl&u lC3TvoF́ng7=MILy-A/>$NЈd$-nx >"v $5)U AT@.i );Rx4փnV~:$FI?wRVfYr0)P,A[Xe5 ,O\~(X>ȥوpݤM+kQvS9Dc2 ݻ*w U, ?gO+1Iش tU6=TȷEPbkgG"9Rf'DwVmvP!b56Z/\Q@ؓeqj}=t)fPfqnIǁ;0!Tt_e%B^m g;:XJjo\"Wd SrJm"F,6!Aw5oPP`.7"q8jqYKp`'|8f^d NRpw 貦3'CԼkZIKI/z<>`1Є͝u_SSάUaב4Qt kR_U 3&|We%TԐ֑ 騈;͟s֙UQ@6=T% L`; !Jh+m)yR @yeLT4oFPLquO'qАOQ+ IiSMTrJՑ) F썫vL(G#gIlY.qJŪnD%S/ c3o2WG&+,>'\*&"6½24"yd"Zr=ᴢtU*Ր{AWrk \²\F8e}W9pٿ6=)(Ѣ0!:#ۗ_n#) eڊerĭ:WoGV)?MEuk30E0NM!F߲6jhꓲaФTǭܨ#3>$Mc.eP YjuW6ctUnndoeha VkXrqaR0XzL;8%5jQu2#+DBqMsQSw$;-QcO֋u$a5tծ0w fzB`MgrLE-n@Dl.i.,YI<βkb30m i"yQ=joHc4S7!!(ZJe%bD Xzjcne0M@ ,? cAUࡀ g!:I_#FOR 1\z/@|ߢFc3UIZ{&ā3C+QC524:y lkrƢBxToaw/I )]&/$*0CZ7Zb8;E-\m#&1ZtͼnlToGGJi Ogը_8fCȭpqw"dg]D^~ :r_Տ?9&4i[ 5Da@!NYu+J @m[Z=$UU ӴT]Y! OBZ?l NYՖK+BVKnƅMpQԟ7Ny]r|ĢW}w)r. kZO$p|`~A;L=\&>'y$?u 9퉠C-Z9(xYxA~OS,B6=VDrQu4T5]y7Pؤ`0K+U]4W I1-)~VZ/+ fb-UehLB73_;5f_DZfkiZ&C1ıY= =\6Tx>zp!ߍϐ'/̕?%XCHh[}ڰm\Mť#EРcK 1* {ݠK6l%;]w-v2<-6->+30Xn"EgnZ:GBQl]ҲӡA^׃bm70%s.HEpao[ϋʉ1ZN5XE=ۦ!/C9mk<ٴA֠)WmV|=ZI잻$lFDT=zp%b„@D$(t4E^v$.P7I+Po_|ǖ1rEX5hf:)`VUO ZC2K9> "ZIO6[gjAYYqp;4yHl%y^^%ofd{mXpǒXAD굠v?'JǸ/Â6=R1`ӯ>j-IuΩa0hjzA*2O9tGϘU+o3<* P [̛֚ZXip-KbV1kԢpޅ|#y1V~V7:00La. b|)1+ ~s!z^tQ<}eeU$9v[S=֦ d𳟫miB\3Qͧg7]7crބ!s +C7Q|i&UN奣u͋m쪋OM?jΘM,1Y%t4*qihҁh[]T۴|$| m N]>:G(&̻6I=Qqն^?]/\{M%W )֫a !E΁qWjndD] zE ջcӯXUq|ێ3U`Z-zINu>ɞH8]:I`*CtT0RgЗ 7oH+ɔGqhSRc%dTK9z?Àb<,-v_#$͢ZměLST$s1dI}.tv512u2 CVk;,<&_b:}"-5\,X{6}ǖz%E[.Ml3zG`w+"MH!ZͭuGI8<`VI2zΑSۗ\v`J CTŊA;xLwfN`~gAJ߭ ˟R 'c} 4 ӒB5Va/bp*D(Na| .W_fUqXG: iX2Q,<&.4v,y"BNlwwPŮsAa&ߪ i}AxIĜҕkٜ+p^hfSͤ`_PWʎ)hЯ}AL-]b}.${K*W ~^I X7Y?1=Lߝ-es* T/d5t0}JyHD I 7 M#{|DiDR$P#rCʽIa yTUE,7/{H-Ê)*jcW۲4oZ2KRZ-\B _TJTFјLPmx{V)Ӂed;꘳>3R}Oʅ+Le#Vj9=-⼼gӎj>b_F*7=|:FF;b$w}B{H?9M 1& ,f#]| xCoyɎ:Hx!Mk|:B, (\c\{7<_v0j!z:õEj<Ƈ',юl'K_i/P=Ni[R)u5*Ph$7B ~VZ֜4pJHm_i|>&u 5o`I2w.7}ӵQM*?jEŬ LPlEjv]R61@w7n_?r)2/ze|e@TPZzW{!LLy0qTpk7tÙhg^5O\O m3bqT,B\Jg9 &sgGEhڧl-#pљ*)'Pў` ú #R\L `v&D_NgOkoB: 8;|!ZvJ|UAu+ GФh8Mcj꠭;1HҶ T5}c~`ۅ{{)okLy|р6NU%9")`5=nK+P,2cEHʩʸ(& w֓J-YdZ:3=eH0E4;U֘/ \=sIحkw+&I?^+!v2nyL?}J76|RVe^T^ t+Z[HoQ[+{_jxGɉg#gg4(c6By 'y^ R 56H"V~ڥ/q>o] Nswr]OI*ډ1?L~爦qV~<͍ Fk=F6;OpVoe{v@6" Cyy+/N{z};Z~6|k0"q7ֺ N4PnrA:5(7ȿEqu_it( | ކ_$[ߑaҀ(P{i`u2U I'] lHi{,)rG;JTF8h}{xAJ(H2q3/*w1VfA]=Ma f1g{hsȺ͇k#<2](_,H1cf#N?/x?\ncaK6XC}bnq@JWE\zV!Z xo/^Fdd:v%/oL^q ÈI~'JHO݄mEfSF눰^-P,.7?o\0 :5$b*+.U#Ka gǮ.#RW7t.&Z0PuEίQٓrXE!ï}@svkȥg,)T5DҭJRDJŪ<415PduQ>p~07}b{6 y9s"\0qŸ ެxŎc{=#ɓS JGԟfk!ݩRC)zq$"YV!LԻYN/bXlӘ:0sD"n wшU6c5Ǣ YWiazE-(xn]2ے]U`>nErWj*< l54ZڂpF d,Yd/[52cU;IsRzJ `|~ΪDWʳժɱk")ײQ0'RtaD5=4{CV;Kr :6Y"oIsDpqeM@HE̮BXG Ab4]~Y$VnH) Iڒ',G{-:Y8ɔ]ߗv!(ew`7-LWYK[Z `k=I3dwƶDn,gtgkIwmG~`n8:ed64i> "^Ӹq/.WrbOB~ɂEkҶ& ߢܙ?p9/ʇ儦TybO:iuɚXemC$I4O 8aHp]qc.uft;ھp'x.XXwؑj*Y,?!fu ,O,Mfˁ3r(푠&5O{XѥO۴Hbk_Z@2zFHE3)!xG oTu4Td;?lo {u{н5T MCv|owwc3Am # ~,. bqUݚ#+P;ps|c]Л~3fY\uT┶ *GI7Ù2>;UK&xD a-\HHMܵ%j$*dlC;v mTVF\qc']H;ОgiRoEqHg{,Sc(̀))jK]b.^𥄁m5ˡ>m D=۾ F8IQ[dӍԑHAEoieibD9꘼Ҵ!cZ/SK2^K$ʽ ^Vn @X>abߣ3yXzцAM%3©JqP))ǟW4Mp6+7pt'kgR,Ծ42\0w"#lc?εoX~cT7 햨jB",^-x46x=rdc ۨ]v$8#:N.%KnhdafM}fޔ#g6w¿"I ( /O[XG˙f"ob5hv`L-(x@ Կb,XPV0ŕf9Ü11=ScR)Ѣ@S!{4!(. C@z:E_uH3qEIכ~astW%n ,\ɎFef(F%o%wzƳBn0n/pc57z9Q,-r?m”˾f0JL!q'{ݳ>vRBՇ,-6ji" |&X='C9Qs(M [Euy6k1Ym{v^>@׸98?-2O[K]H k;<~$>,v,iٔ)!X,SIjnYy+L9E 3yD0IZ5N.)x"H8.QWT՞ iRU yElEJ7EDG2w}66eOa_AGsʂVi>izkF,VIx_$=ܤ7u&ЦWBvݫ0u0 ;Ny7aLb4Mx*'NqߞoM(f0ar OQb׳iZSK<R9.h5iRej]1%{NU|Mπ,ugwRB*=^({X{.fյ-fAX`Y>bND0rL[AX3 电\*%DŒ-+|-PXݽV-N:dS9cڄoWi%\<`rVU5k{f5DP=Y tiaF]=?&:׾is}T<+SI~cG}RɤMeR>N$2 vr8(A45Q8w ,?S{rU7 Qȼ}9ytg{@GÃMopMD%\597KvM*ׁ̥:Fp!,yHҡڶOdLm0` $mu.;9Z;2pyT#CB T<=W-u*1XPE L:@L]tΐ{41:5l64dĸޤ V(fu{Xě=_#IAլwZf.s)[reso['}8LC=僃:qo1dXTگV^Mrv[w.!C `,%YAiLWNR_jSe֏h%o̅%+\t}YMf)j5,n VZU&.Wb"ʷ[1$\-oT !FR9* lLZqN-1枴{: Ȋ<1o 1_1ct7RXPlB#tKTfXms{bX=.-7|+٫솓kNL6MÕ o->ZxKdWYg5x"ӣ~yP0*ۋ+ x)qնz@ɤ7 p_ZV+p,5fa_DJ:혐zR&I]JՔ2_-d]w0i{)r}$1"R4,'a(6Y3,xTM'lI}ZB6(>170ŽAd4"?<3῰k+l D[g`jVU&; ";ĸ؄y[W.*[|Tb]l6ҍp=F~yn[}Gg@v$c&۟O΢n,`-v{mq(Z1DQfa}>@G-aM=ӗvꌯkY=oPW䫒c֌u`v #5A49ew;XEΐ1FGqd> 6_qҞ3Tf0XBmi1Z'0 Phfc ^ 8ҁn ij%]%>P9!\z7QtS`tnk/ 'Ty95,,/|02]Co%I_JP:6i3hTw=Qk,uw* M)cT@;H\rٯL~=4ҨEaRmҤ~t_'uDR7 k:OQڲeSʐy**4iNv%y"?% qǾPN^,F~mWV}'V.4Mٻ:.@W}u` {xIR"~Uh Npzlf]º0G+<95ڑɪ,ݒ(<#OubJJ룓f~x59ґ@lG2l5t 1N_Z8C~GFU[颞jW]vߞ܍EfY㴞'btzrX3Hg<7w%hw1RuwD*o)\$[)Z<Ԕto &g>9Jx&2 eeʜ.& y=S\X'?~+OߌImk!gfMyFgpm&f4Z~OHc̓[.&!!9avŠ1SHHĄK@P(L)L7ZwЋaúcyJZM1ګUE'WAxϡ?T{c  Eo6F`y /}ԎC BJ ;XgJvok䱐I/|z9`(mw|: u9 aNyK- wLg2]2XG!N&&DPG" g>GQ;`M dfpޘEYC[<e3a#+ jۣ&IEEdDw.7S4ND*$eQgH(/cI QU%]w UQ+DqҦ!u޸.'·郋T wrȁxDaV]rw2g· #«N.KBx³i"ITl̿\MYn} ES1Z.7R}E^qHTMWL\69ǸoF>L5*>i'uě?yf;./ /Eۃ 9PFVz_ z%9 Ln;ރG#.#yIM]0A8yZf$Zč@ǫ=)5Z+4W@WIjLEy0EkK1l*TPX=OEJ$F(xnJ pΠiqsb+E, 0,TN|%]*t`%YPINf7K$˰Fhqf@*KΛMW=^<,KV($K/wbXs' 1!r Q[-NcvBNcn=G1@jKszPʭr}%yT|;uԩ=4JcsVN)[nƷ4@ ^&eyi3HUt:j!HEbt%&Us"U@{g 2NhAFCAQsO=A4~+/LVT3ޏ rG }?s6pҤ!+!*6Y#ٺetr(%U]cD83@QlsW ļ hLS#1vJy'sTyAv*6#ܒ>(igK?fjw": jYD<9~J'ul1=7%P޼V>Iɒ XDfyAf#2gLB^&~-66کZ;"GGUm^#.;*;ۮ'ҟ>vOU:WJ|ds Y,gY3$;D+$Zs1˙6HdbJt2A)E]f@)ui,^Ѷܴƾ8U<2~=mQ+۪Q_cXҳP1 ;ْッ\ 8Rk *uؓs%4OXv?F@w3b4i6yS}CZ,GO@^]n/"|:A1jX݋GZ4{Y>'lTab,QYuaGީ}oAYجIn\EI~Hq2?{6''QnH:`iB.l%ʧ,Pnx{HX%Dq?SЩR[HȔu3 OAU:IooTe!*@@,(^71+"B/Xz-r W\P DžZD['KԷl[akf(WJ*;g2:R򺁡O~%VӕiəJQ!hHb|Ϯ r vùڲ&' (>TY 0n$Uhz$R͒c0D<&r>/hՋ >Q _Zuk(e}J/>jCýc{E wQK A=܌Sq,.At4kYێiT #ɉ>1=&_zϫ RHjRLAbMDtf#C;.2R꟪^jC479kObtb(40bFdرP#i[<)29&D #  M{dž iӅ㭉{,KykO Y[ou)Dɻ#sfTV fY?\~+~Q lc:[x>ɮbS@*Եe5X"4ZRJ|^CR)Շ"g5fH L!$5LH$I~Mzg"cX{h~=+E!xw638L~=z Gs`EU{_o.zyOl_9ܑE˪ ]#K :ުaOO*s22g"vELDjlk{4{bMgPxƖT/*͡Sb7Ch1-4ͅ^"ai}D̬X.mSb_R.==5T]Hnj-U jV!Yi1RbZ8MHmӯŅWQn ^.Ar NRޠy'T 4ub|*[1생!)ҩR5Lj8JݤfH5%ug3NsL4w9Tau'GkEH-31SɼwuVhۿ [LpJN~iƨX.tq Wu}v5h8W1 Ce_?JV#~踉PJ-V‡)ۏa`j_}Ihj?9VąAO%Rq{'D(u6y 2K#M<D MۧNo[|84반ײ $ur7{TL"HnL`<կ4\>zๆavWp!\ȸ/ؤ[{2쭴NWQx,]$0JHn+Ѱ/Urϩ%詏ǘ##Se'閔Y w/@f~>HÔQJPLU:An 2. \JZAu1R8\Z܀ՖxdNT7l2S:4ʥ=iRjC ,/JGo K]I{)[8+f&ERx8ݥ`>![Pѕ paPIG RӜTijȃ]^$/2˂xT{օzB1w)VLb~#Eif/-8 BܨIim0 W`=+b\>hR-ǐ٤ލ]J'rPŖǯ\9 j|&EI| }w\˖ĸaPVeeUkKZ%0LHP/xK(?Bg֝7F [SV DF9'˲Ӷ*dzɝ H#,*"dQs^=#tEa IO9Pvnjh]103ڵюF+|l+A[p]5ƉO GlF}۠Fo G4oQKb7DCnRq=Oh}8ן!ae^Qws5DplGqPF~gO|%Q/PņU1l.nD,/NPd{nt/@98P% t@#Žkc!2(+(}(Z"ۗ_Vh4f@5dѰљx)j+Z%^_ƟW< b[/2Ѓ[\W(Öxּh+F<!U$YRnTgcr%V;a)ѐ7XO2 $͟:s'9?A##f::.,[]ˆqIt;;9M}Ih7+z X-s CC?.k;WȪ=/uI͓e0cB9(͡QLRlys ltyHF~qbn/5TP"̴+ט>e^+F1EVMPz%KQ8#"u^5nV0+!%qW!0؟\˧٫{b!,$~$^,T- 1сR&_x x|bJ3& ~dz9SE%HA8>sK>GG~mAfB&YMT2>dzq]<Ƿڙ⧜Ϩ:gS\p|]- 8Lc7#M'pǖ]"sY\9i/ :- y,M~7^MP(-1+Zt$lyRRx8{mh9x/KBno;fTvIjoC]6Li8sq|$g촮/ƱJ'^2keri+_Ibe45?; >%$#_s59~ 34@Ʒ]Á$^[/IR.7ЍeVd ,ЍM5$~?T=/ 0DTls4 < p4. Bܱ7<Ճu 9 Dj껲fh4 <#Ap5CkN"iJMICՎl%ͧ="KUz|i'f* , Y`PJK| RL]o7lNмHl)^U/Wж=9 bݰ"r.D}kTS5C 8ݺLK>ϱ+D54U>Q6ئFDP`iM2TuN_)}nq7pn1C RuGezj2WE ?$zE#'S{8-\2wבÑDo'rjP@diUS%ۅ υM*{qg*HQCh a~cnu?Y-3>;Cg/\BHыƐ7l3 f{L$SH/SyZB r&d3,\ʗYBT/8M^"PD=ՃWrsz5/tٻ^D0cYG 9Ҫ1G[v)b}|L6̔~bZ5Pjg lg /Uzai-?qndoLJ2>s{6U-&*H׾m~1 hOч|:&aiB&w0g<WoFVڃp5jVG< lcNpA0:vZdUA9\`:@m*(oj苮8f# i"\\5+gZ5# l/vr1];'cv_[Ec#9{nqX+:eKM@'1LCol[;5tWF3;~ U>iJ>=iwEʽk9w_wWc ;h቙NvFCY2 {=%JJ~M>Hu{ VoS3GNu)8&;F!q @e⸶=IRMg|[Ј6$!;r.ӱ1L [)iO9DnKxT{@~\V5#&48T .h? hժ3^~ ƥ,BĿg.~7 0=*3}k.hQcDyQ; PQvZQf=oS'V皻B~ߟ*fWg ȕrIIA9_׃m_?aVp:ql k`3^ Uk^.w5=}o֚ ].~LzH`τI{"3djej.S5g75]7}N `[k*t}.=8,l㡯 EZD9kK<lц"QJ V1܍Q Ht<'-]3Yxpۢco SM Z)pȍF[ڌ% H)~(@VGbLfj]Me٭ 9&J+gYD*B݊pUuבum~,pZh ɄngbyB."w"ʰ&_Z.3&@Ñc,<쁌C#y:7 $q5xvxWȧ% 3f5 Sp̶az{) W CM1@1&꼋z*_{"I`{R2C՜SC .(ohWOԳTG @o2IP L{WӬ0Il;;t^K FTl3};Y~u}z6-0D5 1G IN&쇣(֍b [oZn)p|ݧufIgӉu]'ԲX*k0Τ~'gg>vΡ15oϱ?FRO+"e3ۈ!yQ v:IhmDx"u=QY"8^[7ekC*BptO!f&627D*5e)K H\V? tWLLDQEd*E@bxt"׾@Hl`NV1ށq8r\Nlv)D#fjJN=SȍqɶMObz .`I:2bQ W7)'迕$Vh볁a84w:U7̲ճN)fk,4e0SXB۾Qhi瘺T.t۱7nVL'f,%5[8o6즶dUL>ʢ'Nf0[FVʶm>Qk%Jd` 8)k/"|QV_QnV mx !8V|Zv-j:g[qx-.KOW(RϬ*'J#ߖqL{r@.dB&pڜvN\\˯?̊9@XOrorktƩ"bDJ,ކ/ H~-x%$ | zp"{,t:îs;i}lu ۯ1 /Q =DK޼ϓx:*鎜;7_&|Yh%+`tU[-VfҶV^jhgU@FVXE[)l}[9֧?xi\ " n_1|^ʱI Z=vRKtҴ&j* ұt7ē ^c龛XxY@ Z %u*]KeNָN]{/ŗe pJ[yC?,EZKOfr 6Qg8_ɌDnlFvz< EK=,WA1eXɞ^]WkIꦞOн>6i;[Y)CezM ;Yꅠ$8s8qGӵ A?i$ZXR'rޒ `6 Wy#h=ߡ`ԥ=Yc-(导$5Tr16\3{aWХR ѻdNPx@"UA|fԪPʤ7$$$I5oit֏֨=Tg(Aa\J ىd36S̮6<ܨ ڐ #yf+s&=hոE/!A# ,ʹ_U,N yJ}I3ڥ|=5h`xuhQZ͔]My@qdf8ƖMjoq7 bW,;YT?R\&jY |WlIuqn6!? }11S[/zXl*y&ږIOP0jO"B$jߓ{tvxJ՟ـ)K"3u3DX"b1ut (Ӥ nihׯU2LM Dt6OTqP8kl  h[J9N #q2 {_ ?AVnI]~پN~C ,M9&cRXb'ǯ B]ۛ>!fwާ{8UT?% کL m,oL8~Z{o@(oF[% w-ݫIY:kTT/^e"b,w6O,` Y#D tdt*}#>ZèV% s$Dޏ:b-܃?0Y,-:+,bzՠ2ȿ5?* hړ%6MĞ.ɯ?;tխ X[Zl2E[6:K\Oĺahak$Hp6̦' Ox =$!s~Eiu~>6[ZB߼hq G]-n8y{5bHn;[Zptud_g#H\h%r&0?]tV &aǶ!YOǚuqmY/fNʃyh*4[d5\ ;,u$ÃAk:-{|&J#[V 1cEV*Y05Jy & >wRܜYm]n& @ZYqԞKjv Y/'cVƎ7~҂c2pV\_IS!-=={lY&trfB e+BKB?xPK\=3`+^j :U`5mWOY>%13wv} duigSؐ14< )ьwO K/xrj\GݪVJ(y\۳xI yy:K8njcf1'uؙ SDHqSQ2㌃!Sm!pUӏS);gr0r]2?v8d۾j',M5'>ĪRZ@IiO&tO4) GD m>% b8z$IewWΚF foJBYa XJ (9,ꐕu啕uʑ=@7ga,O%̙ʺG)['Îq7:H~jV\pkr#NZ-v( W9*]I33AS&9hBLcレ8nG#Mx!V)xݧX͹)xG,dJL=C2Đ@l5붗Med~,@Q: y @!c̢& V'Ojg*['tܰh90ʛ"ZORbQm˒DlbH>׎ Ut}Й7y@*Lm+z~-r< ~uymUw}U%)egYd C.dB/ҽ5FgV8€ɊX 0z$b@R]"f?s7Ɔळ`6*Y}a n@:D%`oao SՏN x~ @G GGhJ0Uqm,/'5N ?41M{JeZ_غ@â"' QyW,uw2a+ ,!8JS%607r֟ӼHl/x:(\3nhfyPhʋ8zbjJ^b!%:zAKH:TryLKtAjS?3E5X!"m#^/,\6NЦP*و((C$P&m Z)LjBe"U ɡYAZZ? x, h(e+bNP:v7/NOG"i2 ^4ĸBti.DKVM0} 8v9A g޿?)LzJX}?9v7+/>}=ʊno[2rr"V,Oɸ7fS]fu21Z[ɴ54D > /C.ކp}O dO)H$Ef= ,ckw݇zĪ#+m Ȯ;x0Nbpܒk\j#ww ilRPZTrp,:g}K $Y-ap_٬BVG|pNbL,Q_7Ω!aX`,9)fF0ܖ~,&_.bPEIUDUw|CtI* 9&D*)N]zDI]ktvqхFӪy{9-M#*'Z !IhR|'o|\nc9= R?ZgT.*K^{yy%+Ģ̪BUV!A}Y> h/'V2vW?~")݋*D [*q$BV/adScR{܉U9-ӏA-U02odDtC]ߡ!~ȋL ^-݊DM!7+s+:UXeW Y |[Ң 87 zsF vt;j }(h3"\\ ~Y]:H<(V{+-_ X dHT{t~'XnnW,ͥ2Wc^AVIZgOL7 .8j I~ `k9-h "7$Wb'K<KeEb 6OH B{O֋7uWf; jbg;vDĴ)g97+Ÿ@yn/`[u* ̿Ob4x\*GN!wWLPw;}&l llfZkXDH rآJjxfvLY/Ĵ*]08h_Ԓ!ŬЧ(Đ/漴¶MmG,d:psڶT'1$e@gPv'vƩ2p [&XIG,^LDѓdtDv}XL,5b,xyqqϰaăⴰ9&_q8>c^\E̿/8O$ ءhLEB[|f#]R"HiOh$Y6pr-&&j/2(}0[Jwz꿟ݑnrt))A=.9(e.`5gPzsUl p+^J>T!GLi|]%x(D+;;ÛdM_`jmP e#ak+-;:ײVj:k뱈 )`Tn@G|zLl h8^8 =PGP;G,!bE+f ʻąNϵFMCvPX;vג- 0CX(}SvPJ'SaQqV [ rV4P33T.U]`yQʐM,LEd(Eӗ}c]:1@{KM癉fGb3<{k ŦD2:Ul&2Ű/ easȷ 0mЀγKA\Q7\b綹*KEϳ ࣍FmZ}O:bܼt#o!{yԦ3@9$H&k!WpAvHAФRk=ZDPP"OJPn-[+ $>;:Bu$z30팎!?}τBL#u;}Ym^qqO*HO+$ØvEbI(83ӵɇ 2QRC !dz^~ wN=@n5kW H4sb҈17U T6s4otsGk=9ݼr8f~U"B\1 =[}%Ic5s."B".ruPkҶrI)89/*aP:"32d9mv_5D¶5%zH.#&=mv[n}wZqfT,NJ;*x't<]ǩ U (59Up5?l<]]F ɧ IVdMদy,X#߱xvW9lXeHK^EGz6xl`?o._هDzwܱ*ti囜#]){ٸ0*$1mろ5ا1z?Sjf;!K]ŃO=* i~o+SHCSi7׆a9 lr͹[PTS5o%$vfu/122 s3.tDjx'J^ʆ}7m\ELJc}&&sI3(l{[p/CױLuCEuƔ,a.?ɕA0hu4W} Lw~޿!A%awXm8-ift!U'cbΒaIĹ'l҈dR8mzIM5@"j>Z։tm4"POIgc(ro\HVRє)Tu*x/SrN!X[~B5,Յmf qSPPF>Flξ͈yI8bBs&;ډͩ\Yvɸ} !н~:9aDPV,NKr<uG7F"suLг&2'i0kD@\cMїW5}5r`UTek2~Y|-?fŻ83>bʩ#lHFu<Af'd1*]v,$-0T<T>8z>`\(Fu28{ʏZe6gxY̛c 2"`iG&GtQ88tOCAYP`%wڰLDmH5 ꜘG `?Q=?}SAʥU QRT&c療GmǪq#Ԯ%FpAA Cmm aZ `K"]2rJ2Ck7ߛ)Q>oxx1PJsj>YŚGa#NB_I m(6Z$qqM}%*1JwFѸixu8b^Zb Q1^^(Bܓ !D# S<Ok_j$AxhZzaJ0^k:(GP4HÎHP3}o=wՠtwؒNOn|[O3q-*($ `)sFp~}9[\Gs܉ i?*"܎2n7(e'33{"|m&ppxH%o >i dV  RdNZ4w*0nHpzeg`uW;'Lxs` '7"Df&ƽD 6CGn(82Z#^<Ældj# ,Cy #PrP iqкDCD@\lH#~ootsmU*}bcä  5fJ%Z152yIsR="r).YY@68)WgѶJ) aN-F ~';NVgAk˷JvR{Qz4"P;qIN2O}B|:1W3/}t N,NJ4.@4˼9uGI7NFE,^ (A6Qp=/hLMs<ѾƐzE *^dvOT2 5Ӏn>+{(YQF*ĽPk>&ߐ\// +`}m/^N!~ +Rz<\[DC\e0F64r!<RXgYm*6Q#NQ51w9p2Ԕ7T#ع7Irٯ]X؉ A2 8z$a^G(: ϱ"<3nl(dU@r3D3yThžB"/jU(TI֜J긱ՖU e<,;0pKG{: ?9f<:E0![2n:mP˖iԟsiNHZ7jLX> ,3OnZ5qC_# EeP" ^ޘb_U]Kտ޺$4g@e( uߋN,̾jxth@1sTcG Y; A-ZೝԣBB3tA(e5H\쇖Q\̲ ݮ%Eg ,KF^g\([Ҫ1๜+;vS|XA=br XE~(SZ[ hZ\K쥻MLn"85Bck-Əp@"hó)@A;cb3%zևz:DyoM}ީt#§rr4"frI9v}cݞ5ȿ60 [bԞ"t"̇BpB tށ\ @.9ׇD)zʡDD@]NCx3\DwUXHeT؃b29/[.כi}%=ݖF!1*lk`ѝČ'5xSֺ8$f@C! $I=Q?.R TFnyN*<I؉fK\k#;/xC0ǻC..ާymf3>˔ b.8z9|Fk]^ldzHH ՐŢDG^J1kza]Q|Zy:'KL6> =I2^'1H4 nhuUWB_7/Ht2~ K^$9$f5ct}!,g||g'@3k;hHm>eJwzlMZ4*;Дe~F7X&VASUqƆÛ#c P%b7\zİѦHko3yO[i&ɛxd>2ȹzrBQɣ-2K,GXBP2_!:+Jyԟ|+o ]RWvYc;W;Hلɕ j 'Z?dMU=cN,,譎iJz@5̼' 6.vy]}ML8twG+o (nZ1}NPok^^w^BbB)FW\F[R&~Mj,l$%`s.ţqZ * 5'8-38 soƽ`E8{=bO|FQ4fUmq  "mk%Mh6%Iv0"[aEM'0I-F SzMѕ:]!cd 廮5,۸OY*; 0,@7QvO 9WOD Gr%IJ8|lS>}[d'y8n5nI}~~Ѩ Ɵ$&U:o M'ٕ1`a NZCPG Ќ[?wYdEs?.wU67QGP=[2i}IK1ZK춁dˍTzU=;m3nď cQ(ݼjkI*AOEøE7*`rc4nV[/qP*<{ұ-%/`89C"HWI:I}1\03hxJS 3c2 VIg_bg=tnUd nVuYu}{k?^!*Au{ U(tMр9RD+ j\bm" ,%Hy5e[.p3 >mL@i1mcY,uA!/ w^0 |{nwAmw@2Ų\\-%R,׈w"躪>D*?. fx)3;+5 gI;~T܄Rx_`l`md#djȑy殏>ڹa[٢qh{%j<"MPN;ʖS c&HXDJ>7p}gUOB*:瓷7,{uD%(@C7%dI| QpN,6sd!L07R*]?pu:ΘuMh$_^˖)qTBOM gf.Śh+eUOoQ]Ԗ&I 2P*UcZD-"z$fDՊ4ubľ C&(&!G:hN%ȷrm'iMmĥ[]X?3Wf7 Q [TfǨ(ň驞%hUx<$tP,Tn&K5ԍM13?C3:@$7׶WqZ1s_Q%z͇ﮕO+v͂QmEA/[袊2Ҭehk͡vyo"[xxnW ,Nb l{R.'1{%ደL`7=/]66SxUK{:tcZ˝f5Y{XUtxKP]6^`ؙI Rnjjh?ޡ+3uZ74ޡMvuWs:eGt@bkc-b|h'$kNDj-cRn!8ޗ[jNѤ(TR̢Ty<ݠS$KXD) EO\)ܘ, Va>=< 1P!4c>i! K3ǂD}{]i#{:Y qYnEd ~B&'rLK€UEm-pmJ2չ]M}j$(X+XC.y0m䮒oYVQ 1z*^75]BX0ΉW=eoaas ωcL LWr[|O4%#[@ r 2A}?e^H,+̙4i:34 iZ"Fc: k)|mT/_.5 J4a}ym3@d /-(S%\HɆ\!#wSzߧk BbxQ_dp.]f/!U*Z,Y;Iil욢)b(@[ ㍹u؞x-_ {PZ >8n4pl$*T4;}XSЎb-"V9~##Ox*S'M'ݕLy +],ħ<A[5m3*[k@-<*$E3x 3J5b*%ښH:Wece*}a̋ëH\`9™ ƅwtz6{gj` *g|ؒv+*n@fg4RJNWo/o~fe}!qhST7M5Au'pgM.^!%r>)ޯÛ&-8 5ϖr>;)<ۀcU-C|֯rnز@ nhlr|D>n{Y H9EK ЊIʭ%{ۉw9iYvLCI8\U{712TMЕԨ,Z-G򦤧gc1g;#e@3PKL&L0l -=GP& )ύ  OKhNuo>uHo|[p*7Vd{z4SIrUe?(6n̰eC* ::BX dSwئzݦ)ӧh5Vs XD hE0aGU4销`_V7с%p. zzy/W԰g(T2yϴSԎ܂υ3&8^j jy ,@HC7/_YHȫs@44^듍Ys>)$ҽxUVH^[vlAcxN40qb)7e,ieë]7_ kӰ"BHb+FٜͼS.!Yzx|Ȅ;gi79.dHADlX; 3Z*n q Wv(_V?\odc5mohtF?ztRyDI[Emv}׹o=iKJ'D|A<:} *w;Ǖ7cdM*P)h ̧^1u9٤P kiǖ36*I@y- ՞EKPO2ih]lɧ!e,g\BȧЖ=U-B_w (1$}ASԿQ 'Lv?^Sϰd[Yji@ xxogk\EWH? b3ׅl(20t}Ce1ak}­]#"l|Tl+ۀ1AptȤB"|ː?k*{r[}ݠ,. od'9]لITXnWqYQ/4s#v`ka0{jKe KU85PtRDVnU1'> N3Gyz0]D~ʓtIA.2Q%I(^F8(%gr=[ 5v %&?{`ٕlj eXV0KafiYз:ᨤ?aP~+cRaM'8ߡn~:XIH`:2C7:Q|~%(x,Sx0TqO etf>5XrFU0 H`~oQAn,,)4*p5Ӈ&xQ14WXiC%.2vòl8cWh9ĂQl]VbH.&.mh(y*&p\T kͯ4pmbN?OW dP KL+B i 8ho}ȍa&Dy&hn%[o*8vτ *i`WJ $Y:yaxɮm~҂8qpB0Gо6hx%K3bCLw˩qww` CR{^ ūu_vygj?{߰C!)M& Id=%S{g͏x\60GTq`p C: ?`'4 'g}¥#饿օBE+h#EB;Ed8r< GnGY!<` ?*3=[z ,gfVX'X09З %aɎI8;o4!M8+#RNU ꥨv.o?ȺAde8gO $|\9Bb5۹}HdEb}$j ?AvQX|Yꀜ}şaL`ĤKڈ=UW=ߖ./D)4fRF+_ӃMyRCQaeW\S< ڗ=JWt]W%yU&M?5?rxL?q a[gYo׿lS_ux@Du]KsJZl: ϡ>S78τx@ zmo,C] hYߪ0"Vԫ%e|&GLӱ'y&jh 1Fl1{4 JsvvrgLe%dɩi|E`31>nF]BdV^C3#Fe)+Uk=?vSsžK#F^DLӝCDm*lO6 }xhj߄ :TG=c`޼kVDs9CL2$e{l,,N:vw0U(Pmg hbh |xqKkΛ`>>dcTRB٨7蚤.؜ei ,+ Av67'G^HEl(@1_E$+w3]sIU(*_nX:sL%YEiؽA80I;G%u{yI%R;gsW։&nM2_U=wUm}.: a5*AUvfmNqxG._ƭ7I=MAyU""*ٝF? [ *f;m3mLQZ)G#;W+[*Oį}( 91LɡNsM~3jr `-q䓡p6!S8 ,߬sCʘ֑o͓w) œ tbcX.j)?pJ8E` %Ɲ~|eYZ\l6)$Hsc\tI]bFDFj]o8e"8}n(ÉTʎ X#qkqcoo ogZ!啡3,|44:^~YzDZȌN-az+Kn8pCs18__\cץWeHF&,-n?NjI!~D=R6Ʈ1hŸac%na2`w A *2Ah6n˟;Z|606L$n'ݩ4oÆ4fmW]z1;l)o4)寇$PoI8a.:L*שqDM9"E?N=ԁ\cv8OJm}J,i<ǥ-vns&>/ { C;=|2 d2v\xG;W4J"wA BͶ[&ےy uY`M[75׌白GaS7[CDLt lrI9WJؖq -C2ҁI m㏬?YP* Hzጘ߼%BOm)<|Dh0 hߞՈv]" v&Sr 1"l"?׉[ `pUIe ȵ˃PZZ_(5>W#>(PƵ^G/Eد< Ϭ4IٸJ/ M7Cp UsQj(1p7b@H櫟cOQo[Ԏgr`O_,/<7{er%qm;5 E u+[6Xǒְoi?`(TSƼK"^kpkB}̹ +gREcu(;k=s7J0lT;׀be" _5ESQ܄`(uan2/Y*% H'@-Ēb0֤I\bMNeh4%#h)dtBp GKI0GG{yϛPQE7x XR ) WKh CK;D_vg۶&6v:#>]JhMY !4pwBֽcBA5t'ïy*ȕک{AЧk[JFC1w}]' ; Z+5MYΘ+Mdo:Xq}dC/ʵm Pm7&ʋogj^:: H}ݼH]#wKX"x* ]3>T |잼I5@OU@츱9+b{`LlDl}) Ї L\! q@)(v]N.!̗GHͯ#Ģʦ* ܄Rጝt*7_nleZixoX+w;?"F#B l7.h=` oiiUGiV ' -\nzר̓ A>Yȯ {52b%xL+&ԌijP [!D}x ݵb$c-zW,N9;rJ\3RkN  'zwi3=E~-M84 h&<.^P76oBwM[  *cgo*BOrfbU@r };2(?_ÈT*3&xnk;Z rـB˾q@؞=S͘H!,C|2G%7;8NES߲1@Ϛ ץ3Jo3ݕ 0mLɠ~P\`LSIP0kZf*=?I?X ty9*s戇:͎@iSG@,q[WrXi./$0onSӛAZ2nozf/I؋eD⬎SC j`((1Sp+p{XՆԣOn}uovopL^5m_d+jd!z*=OYOV3oSkWdޢVz 5ݝ bO/'OUN?PoLHzPIlq,nT`KBkG#r(' w{AUE|"7FW8}t}A*`Cs ]X`RHH9OT'S_,[j{it) smiK!(t](SM1wBZ!a\z=Vcd( {FUZ//V 982 h,J D5 )ε]1=~<>_1YN\YGjsQnyY.E:A\\Hj#08Iױw,mYEMſM)ևXnŲ8n  >w-=jIкi"Id{eb %0amQ|YSu+(d@hм^4HD)-FDM2!x:Cb 3X/!Fn R[LﱈaIZҖ4x! (1G"4O=C]ҚRɔ|DV̑w Й-e#hɯH@HkW;L__R ʍl<\Q K,hRyGȥ[n 3q0)"c_gv>BJU ޕT5V̯u=hYXnϮӂb ypmB1qixă)_GVQ$iKDrVސv݁Qōfku3.E?IMP9Gӹ \+l2 &Oi֦sۅjZWU rcK\-Z#bwv73 4)4~tHpcl/f%ۯ2Uvnϴb_J3G&$uV $a'/fϧ z ZswkBD%".iUlNS57fdMQ%f}0"I٦EءO+RfJ"U`W>5zn,L?Μ*U5Psby qKM컴xf-">)U`m7rÂBIϚ(Ъ}g36DkZhFׁ/x0`j!tX4{6~k).ýQvꭠ*чƕvnE)F`>KOlNeXB()be2or6]Q҇Y6@A a~5$zဌ0I Ț{c%Yn>ީ/ZGYxRi4rԲȝ]H/yy&5xx)ÂR3+;ܜ^lOa(ɩߨFaѨ5|>IIIÖKI!TjdIV jx*DȪ~zRT;FmD):j'p (4|.Ѯj{DKT/a VBAՊ^^É8wSx)tw&;+S=ѶF-9>ܗ\KFh͟zxL%o89 B&1i]zi+Uzxř6O/3]^jo@~_5%~U`gQbT+|<QO&WWe@EK?c\)y)pwm+Kt([ePOP,@UL!>ɮ )v3%B>X19.Θ:Ϥ??9X߻ IY a B<.%S s%YE.TB#_|OV iDӠûSmM#Ġ- TΓvBM"cR9N%J-efK)a|hiQhUFK|e!0Xf:0#LMZFLQނ|Y7.դ~R";8c StmE5/MحדRݒb. dF?\ *t+-VkVR̲~߫//yV$t]}a!hoօy;-\`%H(/t>F f +U^ج^;h j猞C~w %x E m$4¬SdnSXӚ\.\_o ۝Q%׈"Z"{bd;#PL؊˟֡~-(<+ +c7 3Uۅ}8K{^.T3s{Fxj>pzz g{iYJfwզrm CI Ж[m4s 0TG-ڌ-\ٿ"8 -Zq|0Nz1ŽiRpV`%92 @Vm=*CQ-Ν͍/cU;!8&Ԁ |Y}Ҍ# EɜFQԩY*1S9\B'c~gJ##p npclQR(wBzk+ĢS~|ٴy  0l|3cPЕ{t*10`!6QɔqVZ_w?(Y(:ِ͜%wה5S)~"J9IO e^}Z ~N$I,GQH|w] OؠZJ%Kǎ̜6G B!x M~g5AhH0p1~ 2ɤ}bPSgVPtvyĵٵɑP⬎&>P'mT,$r΃2-בuwky.{c`R,WfO{Mk dMhL ~Yr @=ڄ\KیF`}ٱZ?FxR֢eD`5KU0B~t$JV!}tPsl'm"nsRcZ- >k7e-#rn#6ugźta) L|e c |.AcI(kqYԗ͏_ny,rv#8f|(7p )gm7m]nRK}5 9eF\+4*'REXfCه:*Ÿ cV21Gސ-Ņ#~$488s-v/ (RYME`l[tɆOe!KX+͠#[Q.o7\0(po:4ufDAzP4 Cc(Ё9uA`swȃqx(vm/I16Gۢ%ܿ5]:>VM qHkǕDđqQ.zHY:\W㠢yHqقgL~ܾjajMZ+bH52SoQB3r|p ݗEKL:v:ױ/pLvLS9֟cT$O_ iY 7bp= 9D*$N ^ GpoCz*Im.q2r9]l=T9{{7\O}?#9bh"e% ]*\*J=.Q.}G};D yEsVSG&, >NI+E@Dr*1[G" pm\j8$LbfV1&o$}]fK#KE^K4|N j4od~ϰmS"6 &rC7E[ TLB2hoqC%-)r/;<{As1|E,Qڣ98 &$ [DɳDNo [*"T6yooH.J8 {S3qID2WqEQSZp 4P(!_YWշ0uQ9YYAe({+iyc6"A`!Cl@OC|߰ϧ؁O"#v ӎkL0`d٪7ؒ[L=D_TY)̲D& or`P*LytՍ[=xCVY;}6jFe}<"/[!Pj¶ڥ6U=3Ҟ'a x55XzEY ܣoAБiC,OX#;Q7Bg\@mC iJk;X~}IeEHh,BjZƾXϊDlX\sa=_d.L H+?c(Hc;0jƁ3wz2kZ$U9F͋=3KŸV[=cM??:hWm|uz}:5Da6a۲Eur[҄ ̰lBGuD`;C| t怔]ڗ=ׇmU Ϛ\H`)p}Fm RNaV)6PD>NX,23b3&X61/} ru]TtXž?nT*.*w?gG3-\T L4' RSe'd([ch~A_)5gYO/v-@d{{,I3F)R[uK/ymm͒ L<Ц O8:(""*C:03vK a̛rHkvSr1z^}Qs2niC _ ;uiLp/54:P峎zKu7!TH, fC$X]ATCd3r-mn5~R,dZOe/}f(}8#U_;3>S/o*47$gO*iS YBߝԝuVV"I t h1h.;e$ =AU2؊}O]_Sj.*{gII+L71 ģEZFcOIk*{xYŒ`W7%4͙g#)JEiS8kD@!"?Y-=#0tLЙkqv>Pa m׃JjRvr #8J>D5RL.y kE@ efZ[4\L2[D(тi85~V+hhy;&5Q!LLSף; HнU%1ZMf[Q$6 +9ʴdS)o~Ej`H*'x8 M'[׵VGEchymߦR*3nU[a%ohR&ϫN)8{&#,]+?KZ*s i,$@́Ot5;,AZ+3yq.IDrGi֛nF{(Ĺyb_P!'fk5+@$& 2r]6 V 诸%e '^fS8EгS 1.}@&~OEaptiUV)2SZ2HHjK`࿵Ȍ{dlO{"o.دH#ׁc7iQN?>:糣W`Bkh*,`X.2~4sovhes 9av <>I0F` -ei1ϟ*mfGj⭭-)# o)Feȃ(D(bElB(R]i\.Yx*mEk3I^NJ5Ð+e?]?K^ʀ.AOZ (ޒ{j``CRO̲DUT42h;1J6FDwͩ~,P :ٕ4'بVE!͕XUIs-|vu_hDzέ]T/mLQf?)F,Qf)يRܳ0?2 j Z367vf[M׵@K%F[h.1q[yS1#[~ W` N "/7[1..а^ͩDh5UL$P+0g@'͙FF͈HdokCgp)X=W!@`@pP`g'~BbUܕDS|+;q $Tz"yh՞qS(%JPNMhzW۷rUu4'T݊oៈ'7@s`2{)rg[M?_!pH~@AFM!L5~V!/^v1^F1)WQڠS79dԢ{ w#/GdžZ&Vn=u}>m!i./-U Lu;whFWuz}Ɣ9Z4IΒhH21>~V ";łO9u]iq /]3#/U=2 ֤{N/aLn,\#6BӰM3Weո0gkaSTIvild{ag@x.2a߀B.Q\a.VNxwY_ҴJt!O = (? PTSX_XFEGBxR潭0X8Q?m`tDXsBAj D9|Аj1RBG2݂P= g1'9wZ.lݍ'C6;j-[l^qe^k髃L]yDvܕ$;へ򅇿uڮI^8Z(|ygf+>iGEn(f ]M5@*rns)|P%r26N(D 0s8- BX?HĜ{?ukި٪7=kg@pP/Y6Qrd.8R3Rqe (Ѱ)b%-kT@|G:|\c@RWkxY-!0çrdJOm QJLv}}4*S7g[lUspr}:0(ZI-_QcǦ[houV+rZ"PREP]7BBh #8³[wص{> {tiHuO'jP;h6%$7XpΌOq҈hnmqQlQ'RplJ~<}7qipg{8tbm{CNot=p+p&:@3 d -10syJ`gqsP\Ke@muZأm˜P4eo|]i8U3cSL0e'Q&< NSDs`腠$aes.bW.I_`z t3 iBg-#]bE8f~"d/ߗX a]L{ILxrV%2a}/9I\[Bѱf7%kӀiIT~j'A ҭw:ԗ,15+a2=0*tvq.qm"hb>g'37RSat*Q&=};436j:/cFSe2&$\qU-\u1 OM ;KчTz_4)kA!^jX^hlM8 u؊u)>ݿƎYZQjd,NԲg$BYr!%!i]|G3m~6gAy#`TFjvpթ7-6 omu8 :Ymf_wJ&~q="4°#^OMvT}Yg _ԆQ{3bitѦzm`ZSgヾ>Jfn4Jɶw_7 IgR:u>FY!ɝ;K |p.=-V6a\YWD!'f3nxk_]qgJ*/o S.$46Ƚc/*|r*\(lu]]B+sWpF0u/?%RWA"&>HSs xa\%B[kg޿t<POy ݶ8(k^vAEK7>$«'5)mTs?dhݯ`nŬW"V<.7+?B7ƫr=0FqeK'j.>لYfWP?;`8<1)3GNy!E@8ҹS s~^nXߩӆ([Oe^ \v>@Xg?nxkv6(ċk՟=+m36lKm:[J. (z4dc92bTӥIą!HÄH`@Y.O"oz8- ݉46@H"]U&L"K_j,;Nac`JyvLOc)-0Yk@M2070oXox:yЮc}FPĎE e}#V%RBwMϊnFjnnȅ0J?'/?Ixd\'+|rX,"zUROX !f$A|, v$FUG_)ץAؾ- :sq}j=3^qo H~og8Iixu{b6GC 4|yl5uAq`'+@|zЯ:3MLYS_a! btf&`(B`;LI(왜8ѳ/4u'63L6/8qdY$nA6IpFHdNptR Pu:TE?澟!HxgG^F/{Tپ"`;ǖO) )X$B҆0U *e`O N%fZY$hsB!h)ja1*vw-1 Mk9Adv@(nKh`#uV4 xO;$݆ɸϏ6leNrx] ]Q31oK~d׶#_Xw#' J` Bay\ K.Q/h7灍r@&-Ғ4t'.Q-'윖 mɹSVQ׬c,a0q:Zjw'´}Cl"J#:b| q 7Q}` ߰Uj)N x(@[8=CACeQ~πI2l) 3jI<&!> ?hWG* tg8[I7Qdrۍ:>3!+gƲ͎zP4tOvh`)p0GA8@~?3kxf?UTP (d3L P20J'xcG[<cN3zM:"ARW%*8;u҉YL šFI1||#q0<)[xeǰ4;',H'1I~,ɣPgX/J.ht[WRIdb5 9Zً3P䭌̠P #y 6""J.׮:5(iwhá z0DH9C Olm@Qc,h|!r^pmB%Wb4$@ Զ-i)\RF!!U$@(a>o歈ԕ7WN YtJyw[mʐ@ }pf:]Sp_DkT֑=8wNj;< Y533E9?X '1Sf?΍[2-/loŵ4\ T<.=~-]iY Ud4^=;AlۿD}/7jcl71zG=kQ͸#s:w S`Iƕ_GL9ȄB::3&,/Jg)VKsX}Os  Rl+U5J|, iihQIlmPEwHmKwo~H6l]㺑-G?A$ڵC9ٝEw3Δ߳ex=5)EJiGY.?eT8lZŕNh0Š|O`ߙuH Y* /qR0mD_`ch"&JxLix!p#ް2z651I~M]Xlϑ* M83 1:M^`Z1a`d~bZq'&F/z¤̩⥮'wn,j9IJ"թʌoY,ppC Y@ž.[6G*bty뫜7e )hƁyfn'@U|xvE\uqcHvǬySG"ۭH/r_tеi[hʰj-~{2+ˆ<8E h ,ɩ`f>b$zfqsaſn%x?F2#&IFCsl=bѹȤXhS5[;_y\)4M$1Nr{n;[@{"9[8WJdrdi^P#A#Kro8ƾ#Hz;%03O["v6! F6tu-[;s:>L.ɘo1D(9 Άo$Rݓ8%h4Wo½m}ow)BTo S6ߞ2B$ZXGx9xY`5|gոh%H㚤_b}5cVV/2 znFQ.ΰYC!VRdM04C_>\Νg:y?d)0@?ibj=9 [qS*^Pbf$#|ڔ9jì3%<HImk䈑OipޣSa7J\Vޛwq\(ؼ^X%x*AM q0Fh:Y!&"իrcXГkiٌwwᆅKo1Av`'#f+ '1"Cay#_k22OE -)l$,nMx'qa"lxU/޲ųZ*a\ػP;KVI2Q,jN3ЄMh:aىӴbAZOlR8!7x6<5VpDObwr5.UL1-,A^C_p0Lck=ij(^8Պ >(t'a,UJVMwCA=4Sig_W֥>p`:/1+^{z&9Żч 6%e*3 "Ǿ@X]C|dz_csn? y<'{7x@?0+?X5>㸖sއ27)&T|-nvYbYo~P'ҭh8o14`<񼶜$"ņk:-4K[T ;;~a\ NfH48aRhCIpWE2.s1d)2h LU<3^bE/ BCsO;~ ײrqSo8Nbae5lV3PE2#Rn8QqRtiB؛AzQg)6LrH 2a0|jx~2yk.8:txg#ca r&bsETk NJXNE@e_{g\@Iryz9)$+oQy,PH[~ M{SW+4P^cqpWVez>=CH̎fME̓!듗$/6Rcn,gc!ag>8/gU[ٹe_.-. 4DRBR}e7+dYxMg~3__CvgO}фQH`+엘* T8,b(VȊEB~c0D 87* IزJgގ=ǞݹT'GjcMRv_7hAt^^i'ZM:l&U$np`Fh Y-qq%afݜ#0qaz.r΀0~2^ë'h*s9d55%W}@'+~%CzyEk͈,E19n<=V\1 hk3ِ&Rb>'J:'/5ĐQilVsxĖc$ E(Т67KBw<鹀Ļ{랮i'^ j b$J\A:*2ݕX/ H 5(V􅦚].z^ |Y$6Jg](?ڧ`oYܳ ;̯&Jʍ"V !;I9p_wIbF\l҇Y)H.jk>0@g#ˠ;|+uP@qph!xYQpŲsLEߐwCdž*ok[QL6}E32:b]6]?@fk#U@;H;8ѣ5NOGMfBqnhfNfj0~(W"/#c&[QK)hYG?:hB8tH9w68Nv4c>2j޹ðXo_h+Φp·8.pjDtcיt%1=Au&e;oQydqP8;GVh ok4,3Id 3bj nZIj-`5L _Sy0 CqY@P57Չ:f\h^Grd=1/`Fn5 "YGUg >5 Ǥ V1;X+KBnKB@l%s87U`&jJT<)Y]1\1aN ,Uhvh$k*`Ȭ?ʚ3FZ?N!W\'!lD6k/KQ$=(~ $[H [nsÕ&JM KK*\Zy.)GbIG󞌉=4:*E0-b^,wqeLma-nlɓњ+C(TC`ƕ^+Jh9$Cټ >ˆs+X콉>ttg :[ݔ!ōbaέG覆V(D hۭKuM#*KNM(8B :ת%>"~~8s@E@I`'Tr2dkmKaM^}ĸMF绋w2<z^>d咉Ƴ<%QSuJ¦J1z7ä8erðK4C91u͆rPx"t€<ӿ7)9h߯/RsJBCLp v\g|i4”wl &^4S}! Rz7B'U3]Eh<ȹ%o2WR-^S#x$bz%%b-D-t@NF4J٦JvJ%oXYdkcA0LH#+\~^R;D&W~-.CU慠 "/IanMxߗ,Ga WmqP5JoW뒈%B( Kpz1 V3% $\6es9 4<НZ5 4hߺZa V. ĢnZ[ml\ѤJDU8'Ĝw;קnaa(qauaVX'B$J΢\yaHtFsYI7< DV͆_4BU!A>)0'o{ЈUn uދ7 U4~B Znf+Ca dMzĠNϝ'<9GQ4\;.SXgf Fu39yy2~O_ 5n&ȹCͶ'e?9FnZۆ4%^'gaq:#d]os*o1uε̾` $d_Ӣܤj?c_glg:, } N!7~M(AK 1KCp*t&. etgi_}5 0bf>xsMt.ub.99S[q"n7U+SbGܘ,OWFs; D?4CJ - 9l/.(ULl=ײSfziwj!hL^de XGϮG9d`B(/4v>n 1VQYC>` TG9n:/R/qyaknˑ0-hےR6X1 л)PC]g"Vb VLCBɦPR_QYVu-^gki*e63 ,\󢲋T%^9V oNQ0@Ð#hW1,L}qܩE /7Q" d~ v=?drU&÷rUp*b{ƪ0b~ XW; OUm}rJwV3O\?B+}BiUrbXe\9ezޣ 1m|4Y<G?zIg-' E7]NW,!=C nU[E%, Ό- N5Y7==]* /:}~ X DX7+Y_b7R*eʼn82!^,!&#FsBdٸE5Iͻ/HV^P2Vͮ TWG@ 7 ݫa+r]*4,j;C̈́UL ɾ[Er9 3' @v^P瘣^3 `.FyCޫ^,: \ v2 %'<|KW 4uo`u+~ZtկfUnXv. *pi/P>zs1)sWA,A&C;Ioӏxi~^ YD :~R+*חLFWY2D,3lK#r&>=B?cP~U?ID:f.">U&WY*s NC]/|[V ;Ϸ 2eY_ScW6S>.W8=~;uZ'de*`@mbbwzj[\1NV+8zuV=4K9ܡfƭtZuO`!ӓkNCo_`lSwFM2A68!djoޒJ9zE95j.GކWձi aK.4xȨZ VJq{3 ,`Dw[:{ZJK^uhAiąQRVGilА*8{"H˜.: \X27|d>MQAFVq.ah7DG;tGP7UmSZqxgND}JBx${++uڈŊ3rWIn* ֕|N} I6z{٦( :uSx*G\˲j" TZ)4rپ':OfF>5iѵ*~m^!bISORJr1p;{t zT&r2BVG Hc/:r;WmtdˈqcLnaoQ%yo<.G&./xl(_&yg&H[{lhzƤLlQPXT&1뀚$RMOQ2Q *ctbR9(闏A+uԕ1\!ʩ*#5| b!jb_aҫWq7+HW']v-G"_|'f%P5;Q~A_̛dh7k!N[`Иp4Woͯn gEYjgR{6gQwd~cUWTkܭS洢+u9';zk~Bb)CQLX \V{i8@ }fQ(Z`;R]0bDXtaem Ng9U̒8dr0ޗi8uy~DL/XJ|Fh!zQQT_@>}}J4mMHo ~̨-rAŸfBӄ9NZ*?{,1Mfդ_' Qh𲓥*;gZQ/7tʇ㳜gz8xjN*=.|J!.[tV0HrٮV)#x tƠ,Y𤐯sq?*J6JL5O#N{>[M6W"yJ1 I=m#y-2GEm~*l*$xn*j kُ-{1ueTclM(2i0Zv-PU[3mn&ߧ}Zhnc"e.y{N5bW "1~e'(wZ"d{&Kiuj=/Z*LZs@fTuʼnLQзO~hG@՞\>6 uf-qI;cfIzd62P{ЪcBY,ӸΠWrC 9W;]Ew6MPx0*pJYI6F,=QY 'c("l0d۝>/QLg Tޤ ;{-?BR:Bg>.n69j3YLŒ_IO`/HO/EǕ|^Ҽ/+Vg`b|I;<ǟ&J#SqyuoO@q3_k򓞶5jB|:kr?ySFUYZ^n8꿳#܂D/rmxNht#V'~(ψ?vKQ "+?-u̅|Q_Hiu2N; 8ZLl%o~3$= M| I- ^#AdPS~_H@Ĩa/b[+U:cjxѳBlo\xX>UF}XkrILݗ\MzDuK2l;H\ӄ(»Z&/~@ºc3 O]Ǚp-g(n6fpݹhpbk6nRjw.5#k1KHvF0AGek>(>Av_$xr ‚jf_EO#p8C^i*5z9zR.y{36qH`u9{DDQs zI%TpJ2&A' 7S>Tq*K`4}R@5Y-=XvMZA ^xc~̪bt!Ooh&u6ڕV}ƳY8L]QA%.6ED}DNH\ XJp. (i,Vtgjs-&2%ce*c.TLa61݌wmIkzI]hh۩ԪsW-w1 Qtr: ls2fh d6)H2ҪܐCn95r>!`E #Wo{N6}A . 'lҖv qû;>&?oJ3K ;se$X]HVP S[K_\w\YgؠR< o#uUf@6u,]m**2ӗ֧2BPҍu&b)˯tP?TN.ءpL`/zݹ?fxQ9>[.7Nv+ cbf2A  'bm C(eP"0ƆҴ\(uװܬ@rNeASˣ`*9{CM&X D"n{2Sr87u ('#dNMbv=/G6&BhN͞LhKA#֐m7:ǼSW{1{ kܧR=+sB="[#(xe Dixk P%q􊟰%"r;~`EH~Mn U ȗD/mG_8o4gٶ!bInMxF 5k︖|-7NI Y7CM|^ z[6Rc*6*SjBa5j̝ƱhOL̒JB2G ]`<,@  Q62Onwf&4\,diKչȮڧ3+>8cq<91i$!T|<*͞0f$87QRt:vf=N@Lr'5I,e)ӞzH5ğ_tr3urQ$ ~a>[%8,ۥVҴpCc;X 2;- =OU'=G`X=YRf衸qq8>w8f#cyNbp_R =Q+}@ Ҏ@QzjAb`^!o@-! '۰^m`I',p C`pa3 CR,vRfx|/͙SLv-+{U~&p  z]@T95T&s} }S{r.C,I*g0?'@3e 6 ;`J}8 -n24%'6VWzP{]^`=PP81 #rެ57{jgi=yEbNXl)MU]~+p~6xW`:'n,v4c6?Y>kӤAQ8齾<WKV6F"I\=ٯC = ,\>[?,Gyc%I.n|}Ҳ*r*UH4¸[7$'{/!9LʖkWe^4j^ LB;W=ُ ֹ6E]% aFFjC_Q;쁬f-aљ.qDp77UC6gLkupx@GhN'c TQtV[%Vux-j_[$^)[me^R̗:P]0pcИV=X0!5GK0UȖpO!C')TS7jkN9f= ȖCs#SoOV Ny:w n )SAe~\2j/!P/X_!2TuTcQ- ys+"쩋oV')b´Ҕzp>A-C8X3L˻^b51  zo)x! GMxBvw@c YKn.FP W7ka X8_1B7< &t.GI(+g"[¥A=c`Z}2(<*=k`T6(ؠy 9TN.i+pAWg<Z֫Ԏy¿^mT`(EvjYZ&~n mjWcG_$bExE7в׼&A4b_Di6ԾJBlp|5%th(Ӕ^=@ﱗ~f'Ce}RddG++ᜄiJ3@o^ cOEgA3ȃ)XX?? .3M^2jY~g`܏&EҖ6ieyM>; v |m  $f_Lk-F;lK|dwYqm;uf/S3';K'+MtTC/W)3cfUD!)zĴA}#y&u9I6n71XRאhţ*XHJa|NFa"LϩWcZ=Y M8¾ .Y?q{֬o^̓iVfE}T`'zj5 B#J)MR{)yFG7^6aHO|Γ! $Ânكm3e0nMGxfrR1.%q8*QƷ!tN,765"JOsV}TsB,Npt}HgnV$9Dlճ:P9o> L&#2pFaa{SpW5)Q Ok[ # swE߫o ]_p,8NAY"S,IWAu#$吏{,ULT E}!k0qPh/aRE x'Fn78RऋóF% 9N";ouFឯ9a;z&Q2 ΊgeK."\1&X =c'qႤmZiQ73qh37 v`&#oMڱ+,'iȋ/ݙFuB$0u0s;/1ٺ;Om7KRmZIljMB鳂R%2#j2Iؘ~dxVh)0rd='[-"@M,>򄖛A`l7raW1Ey˚VG{V%]ݷyT.Y5}Y7SdOKdn?#0W?()UT"RSN6}ðX 5!CaKK+$eZ8Fqm*Ouէ_܈tk*JjAeU4fn rc_ă"<n$E{4>N򼛙u*3r3~WՖggW +!guZ-% CyBUq H T0!Y}& @B@%ռaXfGџ}11G3榝WShpWɗMCJkpEgnu"wGܔ?j6U?6c;c\PcHҜQXJ7|ASldf, V:eML[|V~f6 7Ivb1B@?éz˥A2Hq |*ۇ䢘bA;kN@3cľC vd!~w C}?{~ɩ4e~gC 6IkҼ}(9̊@) @Ny*sw'S%;DFF@U/W]526I!.Țúkh`ߩ(N&Uwݔnr-sG'0Ź 9=28 wbprƥ0d-!'BLb5sF&zT.ٛO<8r.QݮI<7Ee)) a{:D߰+RV.JLHW#KylCO5#ejrqHq9)N`ˊ=`.3 CL' JAzAwU_79R? M;EvmP$jVT|ǷsWҢ (WaB#+(lGAB>ŗƠpUYsIT}|r2vSQ%AʧrZ +EW`!;u5]/s%5F,q.~oT[0j-Qv3 (8 47/^m/3;ކ6w[XƗU3!6L;#Cto vzh3A4cE (4^2K+2\ ۃ!b*X^6m|vNj#q;e<n O~NVdYEq`B.z+4 ^r캛HNAZ@ܚQh`k!uk|{xP 445R6 fuT>{2h!2_*QHXƖ3zQaqÃSz\p`SD}TY'zJZSKA8ryشW䐽ƺ0e9.Xe f]) nO-!nvP^'si+U'QyBGJL 9J&H2pp Fkl_f t*Eɤ88}墇_Fn'ª5ې N/Ĝ!,my1?i$sɬF c3\F -. |C5D4I&BSiu'dL;/s[ޑ%hpBܕzaCީprFWTRR. 5^y]4J>bB5psٗ }kmYC.ԍZ9kGtD©x_.`I~(ɒd?5qlM o]Jń"JZ8L/NݒU=xLo"Ǫ&v mS8=n*q<})*2IPxawj5=;iZ =[a1dn#]`/#r\o%DžݭޤKG0fV`V x<26)ӿ 572(3Ou,Ѣ)UR'yw۾}OǴNO MbV3lC*g eH|ݎ2i7ܼ o볧G ,w)R(`,JdzN΅ZQ֋38'|/V!Jwreaf*֤Ҡϡ.ʹ߶۠BOe ZI}вu˯84|E4`.k~+X fQcYɒů$)Z9 6n3C:Ym,*Rt 􎁣rc^kGΪ hW֙*#j'gy Rnn$e'ӄtsv`boUqljMvP4|cqUz|*,kc E}UUG&*hh* i](5//b yk s P0k{%{[\?b?\(oJ@;d\aZXqE{, 8o\'`gH)_u= cssJ.(Zv*eJ[|E+$85|?G S`!DrlsKV‡j6 (>+,IR4_=jmEKEhkՕ1~zy}af傓n]ĕ4@Dq!O+^+8nhhg+ [uhv9h̊f U` %AբXXaTh'Y\Ju@%V:@<ar‘%ŖT99Fc&Ʀ$f`jiԡ'M htd}z]dɲFRlU-q'FkIyHٴ,5Cd'x5&6km057BgOq.Rԡ2rֳhw.ЀS(9mgӖF-M 67p{_ڃ]>@7er80xζ> ޯdٛiR/$)(')uU˜8J~f[m{mҦa XNBV?kFԙ ͭwqWS4zEy%Rs[`/? >Wࡩn(\#/MXU뺀21/Y8"%!\1+0ܴNq 3,Y@h>RHmN~^$kd[v)8fd9 IӰ8de1drqW)'HXߟuҧZ{J`>7#m3 q(I[YMl|DlWcY#8k]^5zե֮w r۩MW,֔8Ƥd$qp- mj0r6K4x C8KJ$ʙ1nfc =kF+Û e"EX"[˅w6 ~ߘZRSKؖd8<~M=NK(:쩟öb&݉T?JJv5CJ~Jk=&.3}I8^ːBA^nG>hlw3?guÕ[qrp3{MÛBN0O,#  ivea0HM!zq#*u,N7##1@!,dYj #iJyK뵃 '31_jrfk8գQp0ɵ9_86{1S0Y.68f0fg;Za6@.+P@B˖̇ N&i|4xR/en!fFPiO{  zl\[_AwT-$zHC,jpY/`#Exth/w+&Ν(7+Mij!q,mk9Iĉ!&: jڟ!ZnC}D'Ry%̼b)Rv!>E0*/gQU_C ; {4lWͯ pV ȹTQ=MhrCU]ƎI`'Cz:j;P?'obp]sDck/Amּbwjqo}%YQˆD\&fMZ;damՏe-ȎTw\]6 +rubP[!\ofQ\سߺ,Z׃8pvea:*|M1Ln-< "v[4%_=3Ïo+amM1m͊٦amy'ܑ SBϮԩ4"YщVV?4#[bq[DzG8b r7_urx4_-bl#&<!}Oik_aQ 'y\x$x`+cO 햜t)@>/ͤkNT&b;f44 ˣzbQOgcXry!,CnG =5šCAvހdrG'8i~JV`ZSX+34s+s|e >Ģ2IQڕE+oǘ}{:~DơҌn]u+VgZ{nuf0&1>b?j|gfH=QP; H\$Dp q˲?Ot8+}dUE+ &JguG8 a!`aWv-@V"(&gKyxũ5HQ7}58+<_q"GELdlȴ/S5| M'm ߵ;d+bAbHMנȵ<>Z k+`HGyg vepʂ.4:~ 3!yl\uU1 E.iYq\߫$ȵNpScos \¸|iSraf*V O!*8D&oǓEks6|]D T=9Xx>H7fp6^4uyU5_w@N_H@:ǮBθ~Q!Bnleߔ6QO3ӹ,Su jFЁVU v!#FJ³L3IOk)iH.zv' &2-{_0Lάlw.#XWl[{ʔ]F'g@E up%o2H}Y5' 4~͓Űuj_(c˦«iާTkPUWĩ,]^E82@m,\>ꥹp)V9♾P+uoզ%+w5_:g+Tϳi(osMFkBuǹe*СZS uYKS#3 >3{6B[ i4 &|"#8le>"J3NXK9}M4 t3;f=y&K 6O}pt]=k4*3.W;H@{o]n2p{'V`k`;U?۪;nYJk{Y'k&N*x;Xc)q.FV+^ ¼^e[oRDyn `lxSQ 4}\GO/$s> Vr0zxB{\xs_,k%{Fw܌-2|<I9ǣ;XfwESIjR:q":&=[ceeU 3b%؃PA*riivkܦ1RQ,"`b`w%0XM@s16ՙQ*1SsdI)OӀUwK.><L;z ϕTrfZ_\sB+฾Sv;n6q5?/fbXL* 䑺bc_}g#JO8 <_f.A#pb33 h2(E}ubٹ6l =F,'h\<$-Im/W[vrA!Y{\J', Lasr@3)!"4QAj- ^G߳q)9d.[MKm}PD2;7) HHwdpafI3nUZD.a p&_?دuY:O-"1 WsbGe~uȷuףR"0P E<M8de0"Į1R*]0k){ q,Bk:;kp5S~!z*7<־13e1P`"@uz"sdG1?ǰ Dnj9Yz, 鉒@kD4l~"uj~<Ǜq0ZhfgJϚ BYur6mMI 䈲ly)QyW=LxDe="ןDLBT{µV)l'!Qy._*#3h >X jƓp~ MX;)GԏO)#'cl]MQJŁ2} 99U"XhT"v$6+om0 3-Nd|| =:K_PgLww݁ 9Km@  ѫ`S™*e>5@pPT=[Iqԛh. d݈<͚eَagK@FZB-nN" A(o8%{Ο!Y=,3!qQFKII5k^{ޜ@6"@B6MB.[T6@_'3TIIJUnp!:0Xl"6a%զKtL`T?mf88cc~tA8d^v%Ud9c!5i [S, px֠ +]+}bm%`Oܭkq9Qvw9aYEb^rec!nؚcp=>ֻ`!Y+iI̔={Vzvpk4 {ًum{fbLdlO s!>Qv\d٘9IEM!mOoeЉXZq2m-{@RkC;D])6T-'&/ fy7px`_V4rM Y鴟D ?y?ENf߆ S{Xxmg+|/5I!:SP/aj"XQ\$+s[-՚#.&eʪ3~ޭ9њK:{ap~0|dIAaxX:!X#F) N]Qau'؛X: [U3 ]"ecH%&vD0^0Դ&URNݺ$2%T9boG}XOjS4 32Rm ĊAr5 -|Ml[MHǜYQ]*3i-@`CV`9DQc( לA:;O@5TGsU-NL LYP鬦ѭ+`3y(Bw\y+g>zOsParWje>2fKEZqp5v;v<2! ԘM-6{$0y~_ׁv_e"e%7*&#j\֧w>=tnAp@t-P Qx˽` V;.:Q0LE2+CzX- c!s<)HdO!UC.M&֧@+y_ϋvFi)XZF=”m(hz6CQɗK @&;X26PIpLO]h¿v- 1֘8x8rGXYdX)@_^{H_ܯ5Omӈfv%/` *VYJ@;b 3LnDI +cдj~1~R1Tm'èx}&㯈+5$9xiņ;^a {栗>2Eۂͷ#9`pM&b4GI׋\.I^ߊʃ4?"G;y5-_ :Jj7Ѧ>dBMjL݁UN}3-S2}o} 谆xTxHae˦xjқۣ|%zEeN)?]|&ܸMj3h2m+5Kxxvʘ;Љ눻*+7Lk%tWh T=$ 꺎PXrX2J7lE> ^~H7MX[^!TVO0T";iJ[ṗ1"tIq`.FZRF,cyˤH(.җ*:S%wa)"XX-(WPxݫ@NsFa<*12 C!`ji3Qs{;/#ѓwȼ 1}=X԰-;Ҳ1$ƣV/x0HlbGN-+;+L~VP! $^͔"Ho *c$Y (S]4߉n4G:(fZTc /PYjը`SGey'p&R6yB2 ˾VPU¦{ԘQRҥOx5U؉lackp.;9EB~r냕~PbLb;Qk^ˉ Q<[߬&YLLiFvR~ح.=D$`k uyđ.[LH $k"b[ccٌʣqگ}瞖 n7'9>S>r,-;E@n<e50., !2B7&wuXl}keT˦p&\T #\G:=)+Ћ>{Y'ްdI-^ԅL5T$ rG8j!F ĵ* 3B've_5t?IB$|kyEBw;.X3۷&FV%T|Dʼys~Lv9\6 bo#t}FQifAҍ}mzAXycM%39N=AFtgšX\'<4r;CKc?Մf*9:N]t 7=V*%b<8I~<  q7#kc}bJ_-|/֨!-^Ρ Qy^7ZTD`LfTWCeME^u~",Ax1g[='B!֦&]uJR!ׂ:pm #@җrO2=C*TQNbQ3sWq%wtk~;{^SO@\e70Z=oѯAV>a}vJDni(7(%Ӭk֚hq%8l% J&l34an2FqZ5p41d'rӶXTRVr^*̷>B&^5EWI@&,tɞ @MX*QKN57fO WNW׫z]o>5U6r6 U=FGY?K4NiͰ[g='L/d 9V03/!&@%lV^R$`'YI op#wWsn#L/RrM\D-i$|~t`DZ'.rE  T5.%!ʠ_~eǜH]Nt2V_fvimoGLw(O'qe[LWm&wӟ5=iRc 8/-d>l=nq3 Xw;4<j{*Iy9}dN,w)-0,"B !U"KX3K@Z4 $rP`3U׭F5pSP9| IZD 6$mӃ>]70x!wsdLجUeGZJ7ba-jӱQ!t}$Lfr^%s/`0Q7T}vӴ '{쿳^Z.GWq {aqUUzȮBAh*WrݰFsIC$eP=^{cW;>[k:, Jz9B).L),ȶ3ܔh$pSz:#2}a2s8p$]U%ղ EGIy-Y5XkV1eY?=<퟈1= >qpwͨEJ=̩Rt@"'SV^rO%[[S42I؍exqޙn2hAtR,Yev!K_Z??$%02G m eZGwVV1<]-RJbt8pL!#VG`fy@I^+(F,Qz38b\Ⱥ װgt<_^P7ݭ*2benxRw;G7ȁH8Ƕb!TlrA~P ܢ,!q꬙\Æ)jkKB#io8ԃ>G%pJ23B%UG xeSIe]=JNIX/ I}.H7^q^ssDEǟKAW;`爱FvDQ^LA]64K*gJ ,g0B1zR{qf/p[ԴàcpB]hlֻB1l7*^`6e\3Ԁˑ'Cf$ uٱ%G]QT|o8e5|)1!KmLX[/ií{?xeOΝ;YY^f`.5 Odaaf0ը;Hn2 ӭB'Q-.f!x:ħ r1H&Z6Jlv ~䮔pqXF1kb8ܵ->he +h~k\&Ldtd 5k)wBB8ȷg .2P}OoP?ޝUW:I6NY0H_p9 "n3XNڰ.bp')[/$)&UCBd žfR_=,r bt6F}꠿/^ XYJeރ(!a7j\9^2 4*Iשu4@>5pfF$m]wGu9^1gT ~ +t#*sna&9(Ԃ`{!x  474<مHNsX^:1Z rL](r)i FGOR'iIʘA›8)#]o9 :?}Llކ0uQB3: -j >2P>\WTGT6s$2mO9!ZukEp HRcJ%%6L pᔣDlMEʛ3InWhl = {b[w#*32ajPx^Lu =J5e yxcS{C=a@Z҉[7Y+X#ŝXKfpU“3a IvbHΔ|,KzHJwx "ᴋ(pt?Q肒y'7(Y@EK0LH=/xv?N/j 2O 2ܬ):;oiGr_K\V-iP#=NF*v=sVmvکY[P/as$`@}%=Ғ0kXbzX*gm&LYfܠxCZ33|veCeOO#R`_> 1Ig^M `y7̅cy :Dc0*}. 8br(LiQ ;[1TGA4/l[j]`R^7X YK#I)/b܀& HjxۮNCi4-3%c}GIp;zZy?*ݞջzJzG:Cw!GMBD"yk8Aߪn;c[(Z1w[oF9dSR.)QɌL0 ҵ!\(QX8NN_ȊW.7$֍>*kϵjD@[OJKdrGj8GB&R? !5-%РZĞ, )43?IL.^✿W0PJhd{sr9_v[D{zKfd=_苰>1E?ߌL$ +#R3"zLKIu0#;(b̙)wPi:t&e'p|ʔCQ m*L:6P@?zqɛ3.7zB2Q˟d F`$ێ oKAci{uƲOu^&6RQq4:0Ce(B9U}b}KHT|A8]$(puUx[|VJa+.z ޣXrKNz[SQNjEfА7JwWq{=-#RH!˰]+NJ̱Lcvh 5ь]Zcb.\ 4?~`n)쐐B:f&p1sCBpɯҳ;`wL$JBfPN' ^H(-ߞ!j7&UU Vݑ֩|ɓx[a${*V͌JEJ;pղw < yeNQ( oc#&Q)r71\?<>ޛQw8~d&VIW(xnC0 1a7j9>ӹP)h>mw/E6~G7!{ܴJMM%gydAc\ķb5 7q2rȌIleW_k\g ܂3l&oScK䞃<I\Lb8c Icttv=P wõ"n4H|N(jL} ̳ƯDDۉj=MDH?Lt9?s bvtO0-n.LW!$Y>Rfeu0r> mjtǼc7S =@sq&^SK`ۧn~az٪:Pk{3#ġ3uUO~wP5x[rX߄VJ9 䨎Ml_uώ*g2pB $z{2X'%ei6okV;C]^pcۚ(&;ƒ i3zp鎶=ʺN}+gPR]%Dif < >^{6.'=-,=`fx%#Y%=pKO#>|u/n?R*n\Y:-_;<1L>N]ln[1f..#Z;둈/=V BAnMz<(PG P Z2`D &?ֹ#<_Eh 73FPR]KncR#.Ns]-ck57.KH1wᦉIg.C*}պ yힷUyTKhbG=e_Z:NwH`R* \]GKG(wm|\dXNÇ4QInGB\J_u3$5'oi b%* SUأSQsqS Q ,|'CoVc|ۯZ'ئ{q=7;Txc/2~mQ:z(qQ}XYL8pX7tg/bW,PK^ݤ/R" V >g$%Qe JqEg$Y\83 JF7gdQmjD9rώ^)|rsr;,\& >/ȹrvN^zngczx*ܗsKZqEOʐ:Z=XF`oKө_ Y82f G+u!4Y^ M.%7O{^y ;cvv(I@<)ZTGxx6V"JяMcC< fܨ fˆ>^XA:R%h9},Mj_ȽUw8o,1_e\%7,؀[_ҷ=s5ي qӍ*wV 0%gS"n#*|b%@u"Vw?VҤae}ӹr[:lDz~CPRpF.faB;*'@4ZyZ +1f1\WsYDZGq_Lfw6+eSЙ>d̵=4ê+|ն8 `-tg+A[7Y"OA|}% uGB?j*)j Lk1ވOenL#|K T~Gگ( Oc*ߨv:@, ]Y1ژͩ/9ïlC@_DhԓH4CPyև$O2X* RN%+K>⦇Q"]294QW=ˮJ/ t',U')kGR]oHUG8|JE'P'X>u4:2?7Fz-@s'w&-זln7Sa}Z;ށ /y8ؠ{65ndxE/ec/UuoxGbs*iՃ}`?miP;"-:x:xmiDuS`txMUoGQe'עy%#ˢLy Z[A#\ 2i8I[,;!ijΥT';re94mDomA5%]&Iu)fHUP(=T'd7WsdK9ti4 AEJ}wVFsE q;- ǻͮIM% es̔dcp ~haP!U՛>ӱH=Ë@{**o3& WȽq 7;;ѿ*8L7vpΣn Uh5Yn3dgG>;fzGU[FꖏE$~"AkM;|cR&!̛ǝ`0`5[ѓ)B&:HR:0ށ `)Q3"O]'ɽ q*!Eul5qx{b8 ,ו`[KR-5iJt>,8zj} .q[ZٱtL6I8!D2c"@)0Lfi6>du;bS|VCjS 3{< p'/e͎ c^tNKpauV|:@"*ֈe];b6LĔzso-S-D;^B&{Qp )͉pG/P@0[6FCRNz~Me*S]VL=Ur#FΩpG|_,0r':y`g.JB\SݤW΋dۃ(7JB?d #3*7^"isܛktݜGH9\(Zҹp֐XKcB<ƳZ2_x?0ȖHY`%1]hYm=`AetiIxx[,hȨ N?¸ Rf&d,b\rޫЉ Odq hnͥ2=D-NP0tVw"!4k1.8b&a벋н||k?+$LD[:/5.s+B˃B{,˚>ӿ!>mU;Ɋ[9`,mx,+~2@kqRx%[*X A5b_FХ a֞8}cI,k(xcb-A((Í˅A.1U1IWqMgCd,mVA-|U C՜O !.[N~++i8Zt0YG@ju -Oݹ Xm>ߍHøճl`,ѕ~Go()B[:cm_䟁Zt3ԑo4S E܄qPrߟQ-/pCꧥ:F$|k6 F]ERv*ʥ1߿QX:-!XCnZZT>Fia7,XQ_c?MeGo[miL[b0LoeeT44I Ig <Àz`Z1E0GtagF\HǦ;=t~]-SWiY SZ~P6;^4fȦ,S * fzP^:?j%߭)YzaB+cg鹻Qv^+dr"H[-@0?vw,v7=OCcY(\U.碕)4*[Vx=V]Ήg{+-c/avgX#yC~"] 8fZ/h{Ŋ ,IvlU.r܃IL3?4x{ugyo}&U4c@A˂G9̵Zz*Tc?@DVvQED=X쑫-Uz7[>"Zm+N W#8$Rnk @`BC\p6V!3ҟzCLuTUBA~6߂,m.II V1wuɞGWi_%N\ѫYy͢69_1+FK.)2 z[ F_Dx\_hhJIkp~" "EQ 'Vz=Wivx?Dyx"p \HS\qC~pka7f AME= b;+Gˊ IJ]֞tD`yt%_l87bfKdte~Gk.\nwA"Z\O=3hžQWSfJuN~:$ 6Q:TWNDI40R zC}\#%`"8P\-j4K͈<@ci?vːC+ (1H'=|Dk₱lOG _켾crjTԳh]C˙`Ӎ|0+t%;aFm7Z|b) {/y3Rs&8LoCA=P=0iR#;dXPR 9xC!]8/ 76_>b\Z bB˗[zTA 1C+h{;644ǃgi@Tac3t/0 i:N qqVd>;? uE-&|ݣ=9& f3# ?8/l18v  iizfPAl;ӥD_)݃K",aY~41,+7 B]t͉bVa!fA )B:?Ddв~u;0_Rǯ';d"3Y&Csp`;7jʒzT$ ncbm7oܝ 4U$ nlna7|qx1ħ\:1J[x&,ώQ{P\d~gn(Ū.I,̭'f[ǀlh:01srTQ7xn",qC3#m$n; kNLOzX,lU|wIbşapTj.U$כHpe3+X1k b}k'Y +5 iՇ\T)@̵WݐsEz \=f2 ]O6sJZ·ds_j:`Q~AC4Fچ0~xAgiŁ}pVrp S~ߩPYugnKxHGQ҆|6_h7- 4&X_D[%ꋇoCt4~b; 6G8~TQvL["rAፊ;yO2 TRuܮݡoBRDL&FR(3pXrԕAe~%'C*H qsqmcBQc찈4WB!hˢ7A &gI UJ9 L.gjw\Vg\ZIgӎ!%ڦ&=Q)YX)C_3n8LƻZܝ_q&XO~*\Qvi~׷ӲZrA?w_X {: 댫a%a|>cǿ_

#ttiSۭb[&ൾ(tJa! ˞FZɉ=|~-{<>T`dC C\Jb rP =(_O XXtm M+Dǭʈ ̬}M ;\Rot/x0~%&4px[6_[}Wa!5<5ÿ7 7 эuU×aâ# eIBmyBtN8n1VxޑGux7Y3`[$NfQ(✳iMP̊c x]jRz"@D_D|Y2kEMx^yN oJ0A[(ᲈΗKCOa\x&!$:;/n74`xL'Rפ L-+}~kLBυ+'3| )|J;)+a(.V~u{5?JƩojpEA ׭bjЮ@ NTչQ{A{ʑvQA<>q Ə~!lqHMqvoawjO觠ݚKkȯ&gbpl*Thvg }@bZ[ktZ!zM}E8c~]2TR>?_yn{o4"͑9U6"bo*ڕ{GSڊSn]}s243Qi_7DQC9P[KEy\rcGWVIkãlᴜΥ"c,&խXlJ[1v$~vi9.j8z2&}N@- n&C"YaA B*M'\G8rU,9 XbS9iJߺ@Hq;XV`jԛzl= ?4] F\oc7_9Ԇj5"sen庝KA#Zkq|rA2C:tB" x2C? #kha9|2WӴ38=4r5@VU8tam7rL̖"߯\mjG ԫ[G6o*Gr{#D)2M0Q/L{yp$‡*IQ?h̊(>o I"5]H6:SZo@6 蜡sl Lؾpx,(KRh@=c:{~@ n>?p!kX!aD|Žji"29c0pl)(30XK3_>Ff;^x'WI1'XWt̃x=E{EړEf6<@Rw}V3BgJ6o)Ov۫*n,&Քf# (ԠI&_|m;îmJ3%I]]Գ^!yz^aTK øDHHq5pDV0T-۲!F fW4/[!x4_ m5r5GpO fW9ku]H}ϗ; '{WA.x= ?'oKR -@ +$VkH0s]:pxk Iŭ >_B< vN<=zj8^$ }[ޡG|E׳ټ?S.,pr+dZX6be} @ O17 /P]AڦY7:iS[6Za2D;a12=>lu| xD .:}o:ȵ!c=9]S-%BFb(R<2gd4-8z+P'P! k)8s9>! ;V ͓E}.d1[W/l`׫1 .D ebrbT]$vl 5#^DB2? t*wud oLӅ;i{wu4\]+^^Yp>^9^D6J(EVȎf#chpZ[7W\K|f/EL_Ak'YFu9=K7=>W&@= zՖ@F`oY]D(~:Y78:6J>N,G]F Ɍn6%*pq<߲)V`u-)_=k/]įz$L  =u2:к`$]-U-)2\4ln XYa@UD; 3:Z^:*K?* ;b1Ze"FqFYKKlW@?G, J/5^O=BRj\Ɠ"IP,ܴo=$@l QDP`CFJM T*'"{ /]3@+&AK vv`b*RZSyf`|Ə/gС/R*9 [^ꈛ\/ n᧧CK;h`-Q}˲t2s)|\$b'Kاk1}؆坕7j 1pE>U>v=j[LV^eaB5! Y%\h aoQ!L'x°-TF$UQP]}5RڷJ N1 u?x|R!Ð8k2V9#5vg9+gȸɑ@b9(ڞȟN;a^<^8}kXM: ) V:*7dDfkiۍ҃}e6]DTDkJKwP)NCsT\)۸KwE9-]!$h"D4%%WV?\0n?WU<40n8{~39#`uS,r#Cs WUI.vaDd{%>o_ O%>{^(ܚ5[<$sq m6՜*/5DEu\=iZ~"}:AeDT<}z(K-hLBJGǗ&35Y0~éXG q!R/OK`!5@M5 ?60Nb8z$ns |ʗ\ח[&;!PzF 4?'S$| R*?.K`>[gY2_f'oXNw"nӰs,ej(FFXYZ $1ځ Q ԩ%z1 ?ѾyDqO&cGq/aXFZ÷W+:\Q,E㻈Wu f"$6xH{MX"d@eA^cb$9%qo,$nxn %[-;6Uj oOi`("㣺(m~i`a*$1S@;{4L*!Jp0uQ3w{YskF:B娿fK Y$QԟS Blېy=,:HQ~G R:D.tN`^r\Z"7+:Jyz\Q5VKd6X [l){M\xb9?$^<Ώ97*Hi>k0NXw}S%v [ K .uQnFT1=}7Za64+u? )i FD ^NLanakg ,0e  _/BN*Œ;:R ѥTnKЙ9xPb.mad/-s\>N;Ad~yCfؑ yjכa6"%Uu8rHke6bgd(3ӂL<[G;YVviD\+L0i^)Pi.k bU?-@5* _*,jx RbJ.Y&+A(|gCQHoL_۲KlQ4,YEPt3"YՖ4dTK0qHUl\jز3{>jnB\2G}A$OE0 Y?7m&eҺ3ȯhyB۶Hf赲wlTk,V:it;G~N:iF>2Ho CJ!I /IeUi'1P4Z2Ȯ_I;VQ)њI:^/;XU.w·:⺡φ+Jteտ;5|L=b 7[<*r-$`A^@ߦJScae` %y8tDTj_ ӯ#?I+FҸ6BiT+4;Ooncd0x|*4l5 (JjAi78FY4 TU,?ymf  >]}ZMWz$(5B;O+!xJwQ%̏@K?*T^lj{|1N+L񼻺YP@d{׹eSc1 $ K&lr*r#m9oq<.:\חHevOkDcJ//ƧnNl[p̙ާ )_^ Cq.V7g u Rn5^5 lxm$mDޏK7bNyD(B:v]Z|PG2W(CR>27XxǹPfŠnEs$뇗.A bĂ~ډ㪭y _EK7!! i~ˏj-G+*YpT4Dtn>=RXy'C=Fe\_&1?#Q|>OuTf<;qڰ*Pjwnc> 8ĺnGfʺSBֿO 8ZLOG^c>lk3Gyw^3s0`uPY{}l{om!^B+QrӚ5 !cKA-EkRuySܰ}1OȣaX=LXh.#Z{Xip mW:+߼lUƿǦ1&Zy'mj+88l V ["#ՃT@h\MF|w\o] zl\wĂ ) S{5~R'N9ťGNֆyL"dԦۡא>ϕd{;s$+N,p^#ӨgDFS8. 6CJG+NkE=(6wzIA]'Wj2>ej.-xnaw⹄1䓇:PPDIFD"~~uLa3*9¸ka0B'k*N'}5M‚v$8('UGݫ[fW7AFwu"NK4"!4D 4, bDMǦØ[X8R8Wн#BL~~8M H@.pMz8]Y0XrOYQAJqgKY9]ǡƶ/}t-- šcfE$X8xY\k0yutgˀ \>}7?c|~꣬ܩᨳfMH?T-אGz1 X_8ŸWz}RDG8 ir*>&Md^8v RƄ/w Ҏ"*8⨡;¬9 c5,~m}RP)7CL0@]uC) ےDPaiZLÝė$1iCD%SZ!I˥ 9P<#!CI96Eחx*b~0zB ,td!K=ՖTJ0.Sb,{|o7x 8' r?-?]\@SW|jxj7H/}:̣6;7q6j ;[SѼT?6)C~[A 1ױ=4"CHaPuM!U+-zs~gMpgIo"G 5eN8]Gּ^ai7r pmD?(r?me{cܷ w1o(#4v//S'gxVljMoE/"VDXfb? ٠VIA܇bR[~q?Y80>Ko3=u ]h*޾/A4YGYf(:Y"X`"Q@co;k^A1|O' NmF@vHt T1o2'#~sc@Y-ȏ{'> p%,S. H 6L:\9_QOnt9Bs=Ckkl @za"O,_;̆Tt `%od1O~홳 H7Gs+&x ͙ត.y^(AZ~jMswcz ƙ^hh,\0 rɨ Xt ^/(bEgݶv?*s!K*L&z̘O]ӜImp5XTDy=m^dB6ӕet@av}aׅBlbT{gptw2^1怨Dmħj&Fn~FdS|s-**[)|.WAcAצ&-o_Ҋ9`OcIYY2}Xs{/";u֕8Un u,//l /Tev &b; 2 Nqy&h3/7'4q7Jf1W *crzd_Xi4qty9 |}]I6]@Leͺآ Yy`V1dNq{28({ ә`Lwue[4s/ QŤ<`L!$,,ygk .B!r0WP ]Bea}$_9C B|+!p@:C 0pu,݊6*{pf-(x%`H𵢂ZP W*ɥlaxsˑNTbwـ, H2OB 2p!wWPZׂ͙5(xy_r$-ݶ%rvd/iH>H`>Sf$ nbO#'-T%W_Am%4<$LKPq*""J񁰿8t6ySlHՒIy% ]2iTB'U)4ߦ_.wS|r\/nYARاfyN'%C?¬9P!.y#JS&n>ֱ9u7Y.n]l{ Zi?y,*(6&bRj{h'bk _Ea Xxk~Gb{tx/Yzlǃ²XL\7ofssf }tU`fZ;TVW"^+KOJ5oJ4Lùo͂ɇ.(,)-E!>Fhik"7"zJ!:J'zK2uVbE'M zռ'Ց0L#Gr^x8=dj<9wG4~kߍ 55Թ6ՅR+ ðSb\m:("(C6UQ&dN)>+3CT`n D/}Ț:[o^ӗMe*ثHN8X ^g.:ᰜdm UVsoи0Y sVQ $fP%HkQSOqf&daz̻JC]Œ޷ߺAk[b^nbf|O: zeho[p:t{T:IwȊ1B/f+%0%tO5 9e>w8|?*eOz XWsWG9J[D@@+$Xut. 0a7_)i HK6^AC׆"*+7>GABqXp$|>~_fu(^3O헋 =~V_]y?'rځ݀@|$A7noB{؂`„i!>wjST S2Qt2Ug]g4`vf؎@ 5nYy2t*`In!CxOan,}5H_Jk^Х*xnBx` j;$Sy bA5,v x2[0ީvC$SPaxwp6+t> lW,c ͋va: %mpu%1"Lw]Uj 2k. wm:!u[7*@A\~=ΣTқ6*tSљ#( sι<!~ZpW&Fu7'dK bG:$@W`"-eb¬c嫶jHx*WPE~f@tN`ܢ"gEk:.zPu{Iy{e'}R4F= j}(1x 4/|H2Z!NA c x9}H^$x鈳B6 M-RuS5olx,X/?nYt)[#Fт1^-/,ؒ7(K bd{ʞ7mn_#=#wi-<')@;S^Ʀ6&>sGG^b/sh亳}Q3O8bsk O vy>EZM_>j|L]GTw{f@7:-D#@?phu喉|wQ{V)"fH[1㜴kA%m)#%Glc @6"HoM<ڱU!LZ4MC>3+~,fL0Faix u%#dvYP%hL)٤-c3, ,й1$!7 m ]wm M̬vjkU;JZk/7Cê)zزۗY7Iz4;PgCk⨰bj.[THZп"7ʿn1$u *U=(1.7 dSN4U^]?upqR VkT}03=uAw`aSt?u@)BJ +ji<~E- HL-f1X[Ȍ8<13gp!S h7W _%a9}\n@SfpyV*K- 1 B~ ~hUKƇxd*[w\G2fZk5TŌbsUƤV6Baj \J/>'׻S3fնuwJ­KY=J$}F G!80rr =s myC8SDC[[<Ÿ<}>xwdXʆ&G=BsEjci`=ha4²[Ia5饍ywNF׌MDM3rQl ~W7GcZ\<^J[WܙeՁrw)yGT0 2YVk^v*kTP&Ŭ|@ۏiTڊz|C vҕXvF2 pRr):j7acX鶩ѾGO ,Kbc=G}5]w1ce_UIT\ώ4\<-0W FSCrNb Opi!cGn4*aEP73`v$r(jHI80Ku2;P{62h/7 8b:R qz [3kMzgqT>-iʜ9~z?EձIq*)\:[lAl=蘔#Q* bq}DLΡVY JJ|y (dEi2XH0H@j^"3@ x#7@dXgZPޕB>>AWe>Sq!CLfOS[Kjs䕥wC Z.rլ wUNq^8S6*/j#èb?f071;X`}Q`_nj8"hcc8:CϿg#gh ĝE>ΚVrRK|kG͜Fi=0X {@śHdd[^c)QG5-]lSSwe!@V !d+& _K$nwl!D%L+wUxP$.b58I) R>۫"+$/4jlv]uPDFUbAP ؝ະWP{i<>&ԋWusp^#cLmJ[ξv86>n=N.)1ukS4ϙx„Vo)5)L]ӈjޠnI->u+1ܧxe݄6n"m%f D}K2R5(Tg?̆|Ms#¿B..Ht9%*Cy0ؚs.kʸB$< bˍ WcŴ,_gvYJa@ٚ(<}6]N`߄OL}%^9µ=vI063_g&? YR̉uP_jBk_iHWdpֽˉvE0#Sϩ[ Gj8Ze/䝜ٹT)U+H6$G^¶q?ݵ$ʲ5G9'[j`fL:e\f]!zbI#kybSu tYolcwE"5 <\[ ay>Sy*~|ߥH,.fۺK:0x 9[iY~c=W|He:gCT"͒8O10^&cE B&՝g8v"tO8ixExI/@0w4_:!jڠwf&&8ojEÖ㽴 ,h%9U?STd"EcL\3xInu9t&ٕg XY k3^VPj^J!NV)WGpcm0D-DkY:)tMIQ ̾Cdy6_I ,v1 0 puNu _C8`%{:|Ԛ;Fl;! Qv!8{Խ g܌͏hW.ã4DIZX*LF&(EF/jTuM "qÅ ~)"pdMd,!eizHGɫXp&[^JC4mﲳCC$ķ\eYpa;^*4~r h=o$ $  ͷ?yvoK(qm|L?Gȃ-zv@[?2ɑE?GB Ҹ8gP@91CGNt].|‰|!u;K$sjcNE{`?Sg0ÀjT$~- l)Te$SmΞ@MA[gOM#[p+K"_Õ"W f ֺd2l  Vfs`̸t=LWNLuD<N ]3|,%WQuEL) d[r)+A롅EYQ9#9 U.g4wk>~z`Dρ(yox݂5aF8g_mXz=Ɣ$ f1p_*Kn fޡ dH'RMݥXDx((u# k*<[ZʥYB[8 fEJ) ͵gUW#DAxbCRyPCÁq~ԒJq fFNUY~~kk}fu8\fsWV`y `53Y1^3ZɚrEۜX#;2I홫BX>5lx;) ^:?ɡ P@9ſpp|4 iw u~Qm~+&TcS+@ZS{ӾM2Qƌ &ק;PQ\#%fL˧N#5\(cdP_LpJu7扩aÎ( &U?2#ʁS'r`즒*Y"tȥꄥY֕sXǟg~.BTZ>A"H6"ŭ&)JA`ȅ=F驃j&c 7DBGKlBGoM8[QBlN(uIH/#e1eM5(Dfib]ӵ sMhy5}|Zs@>vaƳ`΃N?)ČLh)dܓի2)_R{h ;pvKq/%`ڟ8Kv/1fw :䴧 9dL/"0,er/AAe徍-6꟮2A[coRIc40.'c/}|$܁[K۞Qq jMy FN;]Y<=x*%"pNƉ짱ӘH‰8Dhلr5Sɯfk#/ T߁zQ>(,&z,GR٠J<&^̃ h9'˩$YTw_xק/1=5ԁ>GĶ_6*hb ujmzj 93u{pQ\3g JVS)rV»13ʴe+NQlL=Ob5uq(Kn5%OI@ (}#؊I4Uތ^$=^Z$'sowYQ  V BAZ0XrNƵNe5cll5a$F S58 'XPN^ڽ˺.7чh96 o?QB,}O'GynrhB> >/ ٔ?c/.(Wk\W/pHdcKg!M-Hp̢P}i> ƐoAB`p&0 l7&{Yd hsq8¨h\4+ͱ0]lkZf-mbe* 3Pᦃ@‰qof0xv0xHbzUַ8e]k~8_G$lo1յ{7JݎrcXpOuУ|z9iWl,AL[xk">?y˼/6b|9 6 t Ͼ ƞ8\/1/欭N쏷5]`Agې(S~@rgkBc\!=4_DPƠ7*^wft(c>웖l!khPPn7O}AEz%A;2d#קdҵV;M d.9tmphؤR.\D=x7Q1x*EqUA@I ^NZZNo'm`1 fS ɮ <317+42m;$3b"=L?]CvH5,nl~Sgm}Q=|ֻ%/cU ¤,F/unG]#"\qHfQXDٙ7)mj(k:?+cmOREiˉ׷K$MK0BmB5>Dz6Dՠ v{]ob.5DbGgO뗋=9<[1 `&߾G̋rS6vtCi.t'f SagnD+,ݛE9Xtc[+hNBz%)0d;TPnW;TCn/R[jC8/{(^@sꒆjxK 4 |Eh` 09>8'#+QS~6 mcG(Xm'h r(G3ȕ1+~l V1Ǿ&PP5.jS39Bo]adEp ~۸}x£kڌj?w`j 0Ld&?n+uʏ3@2hc[t53gQ9,ql hjCQ2 ϛŕYT2hG}D \j 9:D: 3Kmńg5YuiH#,!7ԘQq 0ȔǁZ\Np`R@R8U[bKv@Zz@J<5ãyoLOŝK졕qj9alx5J0ڲflަ wpP>ne/+zmA[48E8E^)n;BB.Cz2Xti:Q.)g6go^@y,^tB)6ABne@Z-3bN$(2P1VcZc*:_؀޴H0cc8ɏ. O Re[o1-wo旒Yf)zV: gu7 47],ʻ[-S$_>DKQ2ho*2,崊=wbU˼j,eQq-Wao;D;CVWm~AZmYˢg!Noq-X63^D\pN"<~SraB?~4dNufkϵ[)FM8P1K gc%PGT"7mh9Wg+$~DYI:>HE(KۙL9y}_b\r;%J4V!p)#KyʉwSg]]Ç~0P5~yۀ+xwpГ_F Z ý5;(&Zv%>ۏ K3kcK/45>E87X^YLn3;:Y5/IjSQac4)/xwƄ-%5ZXrFlW&F:_%rXrs]wH]M܏z]`">ImDݭ4PMgODNc-%yW]fCtxZigZ߫#_Rlֳ0\f e!yZeH"=pDuZuwMgnS; 9-{CVӀ=l>RO$-58Ksv- +* 9 e ms:0Q?%_$#{3DF}0uiCgDs#gA8͍EQX:Ѷ\Ź>4rhX88o hY~Vc $RQ薶n@Ɂ۹ m4tvQڽDfZ\GZiEBg+P5 3[eگ6h3BŠl1i>ߗoH] w}9;אpI./Uaɦ]ʪ[T#YD71~0ˇ7*3n  9(3S] #dJί8SYЯ.ңy yrqȷxPVaZzt a6-R Q:k1E:ljBe*9*`IrjF=0&hFpX3;ߑ?w2b/IR9 he~G^x=3)P ;TS.P 1xM\Ube @LN,5yg2h+QB~I i3Vld_D۫z!R٧|೘*R Zfu٣Gvj_iM|`ǃMN+ügak:z,JIlI~=b84w mM6xp_"^VZ!bU )*lߖ_DV^(~ޠN#*A"-O퍽DƖŠp9aP=AV[!1jejX6yLh<-򦲭K`3dNxLC!UC0~j2uߋlB‚&MwweAS |敛UgZC<|%)}0p ^l3C\I|.7m "kܧGVp_P ÕIl9D||&ߗPDOXr*LVj%,+S+c[Yu ZgX_a:C.pMZ]3E8I~^P@lEYL mEx rZy@iDe;˛d5pG 9t'D<.Gp60C\=/m)6dt'#>fɭfv-nU;Q,$HN-DZ.ck UrSpقyHY0t~Xt3ݞQ!=SPkwlv"*s)'ڛWeo3@.{tW$B 4YM|EAfQ%%U.ћuB<֧LnQ2oA`lPVː0 ؛ q(>Sŀs)H3^|NlB-n!}$pTltvg0An¸AÇa$HwRw\"7ڢԆYlЬC4IKWNgT(ܷx.!HzgV]7bK`%\&05a>7n4۞w;LgBsdpXk"D=U=/wpt,0!ē3=Lh~B f*-W9#S9z.-1@"C+3Qaie7inJF>TWaZ7AWgΆxArƷߘAI:rqɢ+B &is$oh&^MPh ρZ%Υ"Ml`XP*>}J\/7ܯMr{CS\4w;qW[! y7OTaӑZQamH p&Z!1Z|ͻ+(oA-K-C`eh':XQg$coldΒz}T[a(ɗd@̡pAC ]U{ߠsr?3r6ʺ$Bҹ2(O^rf|<٢T֤JênR#FZ ºfhPF;LblQv{wi#-XyyC7{oK*LL)韔9DV+,p^rǙ/K_,*aop8&u`iEƒ nqNku(T<Zm?^L= _`_8/zZC<>+:x̄LUO&T߬ܨCZfNxX`x rR'$X:s$Qk1kT"јIkਊYJ+D˴z=[GH|Bd4}ծ"0CptU- ~)kYb2!犑 u[wD|)NI֊"9Bݤ6*~ҋvvAGE9?WI9gN4Z//b,Ԣ:::s}/cQܫf-Zad:9o܎7KOEG #Q/))J1 ;qxtD0T"uw{VlS<_D:L>5r^KeH?ҢdKxZZ(=v }rJt%:xCOK+dɦºsmw هت* ǜE/t)#űzyۇLZH-`VNJP'j)l+oY[%4>yMl]CFȯG!5W5o!A-@fF"RMH=VKpkNb@qS YOQ.&gci |^t@>[ò)RXAT/4xFa,yֆ[oF]dELk'c(yCw ^ tP}#tbu li>N?_{65y70/{U ؛lW5SG2SڬчdJq7{P_$.̡Z-!.%{ A3cRO/if\_"l 7zN=?ߐQNȟh3 ](v諄F #qw)"׊9[B4&ݡӔWO=8raHu|^"| xW]xf̙X|xϵ Op离 0Sֶ_a:3*XBqvbryzۅE%VH"l.a]S]{Tcm=, (} gė|<m?3_87VHu &rڦ"͑bPH(B‘쭎:VT9z s^=F"4͗-7ܜ%+4?S2hd >DCkjTwԟ[|>H4)~Zb~1s_^PEXyt1 $?knq`&qfvšRɮsʤnBCPNRXL#[(?bX੻mSǕzH-sT9o qp\+1>5ӧo+ R[47fl' J@E]R]RYtw+n{ܸ`Ȋ%m|ĉ9BkLsг/ |"Xץ$bp0%i %B a*iiYƋ"ռV̒uŪ_xmBd=GbR | a{B0t1+xQPOS} jӞ*sTi"|fr/vROʝE+(b5M5c+9Pƕ&G$:c7*怶ܠuc@ ;@gMV7L#Uʚ.j6BWv#bPGb$PV"Ykb/B1ƫ1hYƌw!'ǻ?x0ة=>iɐMVk:EjI@ ma_ƲxLO/Ou/$z9N&{/ 8+#(Nώ~Nq lI14Kt=M\񾨃Zp|9F[ܩqzar*bl+owD!X:1im\Aʇ&xo{pIГgfiwFe{@L8ڨjn$@xOP,e1 ;+prwIWNZ9c.8l@py۬C`h(1}IcMFpshsg^Ԋ,s_+O:SCE@YW<[)cS⪱rѲYc'-類)b y8=$qXj"IxwU} }' گ.hQծ3՞ܠʤ_3RS`$Mql.إ_j X PA:2H[Z^hzw~gٞX EF*)iGh*Z&G8~2T*g"W`C8ev;I7.Y L# usc]z{~,WFW] RpxAg 3.ȻwpVv%Go>a\1UM{ ަC9R6Zɕ7ТXhR\z/Yw~~ QF88>p8ne6vfKl,*Pw1 -Y|1zT[6}_mfu}Z 3ep ؔov{N ma_c%b;M(L !7qvi`en90Ua/_ XV۰nNo}=~$K DIST 󹪑yTJ;bg!lٷw᠍F+:>;%bG"摺#$uamy}zq5P+ݯc+O݄y7oWx-A}[e[SjPW4ED/Ϗ}8wrA!/ԫXD'/8lEY<ˬݻXCt*>G1#~T|HFV [1YƦ1M$0O$Y#`T&Jn U I^р sirH6rQ)qJ֪;-Y|g{߉n9"a=[/3*D.9 ,9 #p98jOOzxAIfSJϨ!6ARWS3z^)b k F8N^Ļ^4:ol#`:ax?2c$l09l0s`Ȭu.e59ū5釒S+XJail8q;)tU_.kP)t5a5Ԝz4~r=+;T,}٫=qˢĕ2 ȃM<®/DX>HDCe0.7|pXMtÜ"Km IA#!4x*czj=bbEo*5l[E_nC:f] 4}ˁTpr(HtC5s/ގ@4##Z 6c_$_ZXj04 :G$3[@GPKy?Жu82Hp%kt|l3OJљ;9t 'k;ҕpyV"g?C68-ZM-r;N(}_؂b/x):_5\K{Y$:EOۃ˚ȘրNH2mWFjBtz j}q:$0΋LÙ0Jfъ$C4K\NrvMlW˜ƫݼ9Nۂx=c|P.ЕrRϻ< <7 gYhbϮŋJF9ԏ8,P?Q1۷¥:pDNr4mp^B_|#HO\'5.6@w QE- * V=t@fgf` ga13!qd`Ȭ۝,pURFp`Ijrp*SHM^?)Qzj݊ $>IK?#&FTMPTw{"F|:'4Ejd$nN5^Nh]BtW~Kg5w ۗ٪/HScS&h=z7ߞL Х4rj 'Fł"u 2~!lksi1&Nwk HN )<#(:Bq{˺ONFInI?]yZ;  X1SBN"b8b/ʹZG}A|^8T1>n3_ }@]Ch4-EٿP%Mwl刱U. icz#n,*uݼf;I{u9t=ߌn;f[/tU x?؁,fN.A)*'rO`L-_31);lT>^mh3*Qz&3cuʩYA/6,/?ws_Z()~ц򋠺O◡ƣ W^AwCI8uhVk+u(emjg$;;Rx]yZ䖊լkJ[{sR ʠ{#%2(hakhI1B.E* 4.`J!_ud=ݑ՝91oszlQ(K %fp5U< _c.)k<\DOhB7WAwN=_la6N0nQ¶G.&.P0Ǖ*u=lJkYgf熕 1P%3K: ZXGyà2X %0Zy\lᙧ\m2+yG)8KvAXL؍XxvPJ$7ܴǣs6].L|1Րnݪ &U`- /]D!";r#?MTEa[ ш)\n;4gSZZkB6.]WЖ6/s9仓.u(ހ {8N=>Tlʷ]P.6d?#\Yze:6Fag\t\l.X0c~A=yu򌶶T(_7WZ0gz:I0$". $VtNXc/i:>Wػțݵ@ XlU,a8duc6:vUԔO:# ə qc[&Ĕ ׺J?t]C1>B(&c &.H,c|_gxГb#`$}B +&үbxI=ɳW-tiv˲d7u9o.޲thZȟ_\$;D#k)OW/zRD*u1!pk,7b;%$ A_5}l~t|Iյ)Ko;liWO[}Uu$M:1&Ѽh50*3虆f5i-ϢdkH@١9v3 o1B:*-fEUh;%KB:xwlt]Mv0F߸O$H8`j} 14>Il' Tn)g֌V:͠@t#m >55W%,lt~Vl˞ؼLp„DϺ^Bv1 jsˀ(>+2y̑FsC'P1r9MSծ?]H}䵂ue.Z9p#!>/YJ3v_ 3E0;=XAH55{'NPW8vF5ฐ@ƶ]^@q1WX/7e,Qg59* Am ^3_t-:_L**˴C4:Tw WT ‡7WAl;KMMM2<ʸ?@}X/(Ts'UMzĀcS^)~К~v]>*~opչ>D g;jk"ֺimm+7t緮4 .z,ˉzs_u1ǑC9uy#R[N3U Di_eY S80+6 COd<$X X6Pa* A i,EK7*ăm_/T# pk eXOG2Wϸ&5 ]{UúrjTl ˎٓRk)]]<"&Q*+T}З5Y9y|6[0ĕ  ޢ`a=,CXZ8`(8&M]gr&zL}7l2Mg` 1AA?F3Ase/Yz|fvcZh8fw|{ҨQ_g㨕x:e6g/O'twES0> uw$APMZA5~P0XM{%n4fꊦK)\J's9YB{w_ex"ۊC9.퓐#^%j+wF`h@4 @u.(7Zf +\x j$-`-YLtj-kfP*Z9q2 jPbQG;f,Ba]8v6}vu+Od,p]K)tB+ʶb&k"+DeE/!b a!p÷ֈ+KJ˷G3`jYo{RdS2ӨeWt<ؔ3p Ho FOC/fĒY:|`?"\d(^˼To[rOF{Ĵa}PUʒ4(A=+nB.? h}ubduj{$c4~ NOj{Rˤ,CEJHa 0xj^|Ni#>9"bϜta@q< ;ɵE^7^Kܱ; jܻ>WD_ߍ@n_S_FSr?յ[w2xa!. 1s's% 3~1٪$Q(ل˂lvrPG:i8w6ճ-]sd]gPlo)ޔ;g@K ֔PfIp܅sH{+5zKeJo 5; uԯ훴SI!ȣxӥĠF51ZmJ+؝~rW`'y V(M 8AaoBdxWoox;FYѓxj잲a θ2'X؟D`;o$UD) /9zd;/h$+)ıZn:͉BsHȴ/ozv)p.f<1ƁPim_,e^[eSHGXlFy L3fpRo ?ͩvDGK2.h:#-ao9*řDaK&/#Lm0|6]cP^^qў|v-_A X}E VP_7k27!$+"аmu& HU3s#ѩ!PǕB$S^0y\:6*ژL&KA(W*J*9P 8 91WyVg  XALᅣ$rDfvyux\ٜrXxɭje`: 7op'yI} zҬb< R*S `H P%B2Q@QJl Q?Z1$K'uG]X}^4ӝ7vźA4͘,)}bsCc(3YAWُ5ܚy+DL 7n푲FPK~B%;Z YʫQ?L̴EDtz֍ԣTՔ}M-.ׁu޾0?Lsz j>%☼[r7@%BV5>]eNwc5CݒOrjS>0 Lz#$bjaLjR΢aDmc#5e)/w%g_7uF|e=u]wa4AFqmeĘ N5&r5,K pBXD-_(:ޤ Nex@O6E-KޣRj/nR(Ùk .l5E)0K;⥦ Oeꍯ`: )UR &_&wbzKMr&N#PlWZ Z~-0no˯(V+If5zGdjzQ'#xVM姴 "kS!yۅdɈ\bg*PuT=+Si.z]a-T a)۴EZk 2pd 7_]Oq0T6kڄd^AWƾC ~:#1V \IzTK١Ag?i[EA"s=!Lec9 zʨ<|d.0hZ%j8S4?qGRGFz8k2-; ɒ,@ޔݩӃA0ΠH-g||!@; 1uBJ h5f 3)}i% ǍGw5 €)}S]|Iܴ\I'2ika+ȊR5qSnΩE$jD } pTm_5"0F:]c u35rsPh: p#҃bB KJw֑Bdu+g81x@B[a=UQgET[WʚP Z ibӟLܱ.,m;R/:J  ;v +-ZF<>Ro8S<cwx08e~ 9]0-)LӮg`>axB"v7UNզ|O^C]bpF}㞌Q1`~DX} R#\2FW(EC\Ux!dG%3Lv@hecMZ9چ݂U8;._\`Q+?}oڗ%f6x &oF$\|n \YiIK9riu zLAaC}Fgv,j!@FޛFygt͍ Q^EdS!񚝲} hy- Tzb* m"{ljaw?6=O_OggVAy'bּ2jhQT#2u{-$PN3srVP Rlv`'[h7l%?rÎ vPLZDn/!#Ȃ}2E}z)8)p$tW" }T^K'%%fjڑ#ԺNý\pY/ {_tR?zvXw ys$cPaȀw?J.G,5h7c( DMDF2qL4D̅w,* =A99'͓#ۙj2\:ߞd;u=+ҰĠ%g#o!_۲wk+6\ZustbfD 9)KS`)blgf (twacp|X}1H&GF3*N_IOqp"R[Aë("rQ&YcUեϦ$K=z~8pH;LbcJw|=p'ir1gM@) zCs5O%Ѳ(.Zo 63^IpxA9Uê֬ H5<nA6< G}M7 F o?/o!݌A$6E 9xHYhΆwYGmVX搮!ՠis¹ 1{PQewkeCgTowk=b~>BL?)d.v}PBL%t]^5=WhT1!PLnSDA+?+Vk'}~Ii56gȠxB6caPde>H̰Xk IPWHh5Ituh׭KnA6>^eHD9~e, b0*Ցuu2kZRgyp8ǕV9kV_z?yyU6/WHρmW04]n |h ʣ{7W.Hr-OOQ~e׃EY_C^Kw2)4jať)->V:q=PapPgʺ}3+O'<2f)D{7h+Vaڤ%S`'&o;P,Ҡ"z.m>ey֠HZ}w?B tVb3Kݑw'!t$}ΫWR̉sŏނasX#̍1Yll¬_xXMc٧*Dԡ:HFh_"+ښP~(N<9XLHMK0W^T uo|Rn^3>bn>г.!N/j@$j(@w6[?H U>uwʄ:qh=MDCf9tkxyYqc ,R̡^1}06㕐\3CylQi06 *,@nrr0Ԥ ţsīYfё"V(a>+73!>*,q]юL' ޯ1/HGD\Zx"D55_w])&a(>Je4L0ӰN[;uL΋e; 2ׁ+ę.<~gk||(B [4Qcr_IIG z\I[,]8Xh6,>Dic+ͬl9Ȥq;hI\ޏR$kĕgrE4', pǂ33 d?Bo%y3Bm,\< Gآ>eYM+a!7-GjTv 4 o&3#3% .B\@&P?'"z Ĵd Txo߬"رxowUEmD!@VQfln7˫"(3lEo˄2;0EF/FuA ?(t +9}sO6w֝Snm_klukJ*#GmPO$m' `1T =}ǚx܉԰2ʒe#3 Ϫ480bʥ' P-,6nAp%X:%9zJXϑ0/U~mlsND˚1EYJeW"A{ qˡ)z糮R}dVvU"Wbllz&Zu9vcnd}JL`8VXv:+I꾏W܈|+qz`bI(Р_=ݹF|k1Qgk"$ :čW=cCI,Vey7%,nqm焔yF߃{"uN{ÌI(-6zg=0hsE0&Nlg{ Ϥ n^= #Gh*PMT^qZeT?V5+;7<̬Ũ,!աdvER8ѽ\9r-Ф [*"Khz29"We* 'ae/kf_Zw@3Z F I)EUxzv$C߁p/@$^ # } x̒Ŷ.]A z $8$Ȋ| ^Bi8 gGVKߒi ݅g4tjwOe]>x8ȩ> nȭ*",a;)~R]9|/e2O1IjAi_ BGw>kcP/#21{G^*'E#H] 0Msj{4CBF<XQ lz܎H#_& UA^0H ^g|AwSR_XVH]ДPqRDҽ)Kڿvn7*U<>i+@HEG]ە~k-y^Ԟo? e@SP]~d_ϫ!)mte޹孷|HyHr8, (+X,% qdTU6 pѳQ3xBMbPMas@X̂ބ~`$r$3HuU>9\G)2) |:;&n:u["{,_I)VN<iJ(#]jB=vh?I "`6~j.& Jk3yI;?g>a=ĩKvB5FNE456BMc "xI{M{4Euɉݐ:1Ԋy0]Au{‚?zTy}{`@Og(P7;QOWw2}1E_J G@:2Y/3v8Te kW⸅SU.Bz&0amdzʬ~)d&k&$ZG@fk`OPo o,x{t֪{֧6^1i ^ K̟,IjKb@p ƼS8wa:([Z!`9ǚfЙ~!:ki N5fGm^&:_Pn%7* 전6x%CZ$ЃIjto :1ĴXToYZr# CZ[Tkf37mCVv]6jfGi!BQ8*iEԜ,~@q!R IuIr63͒g T,@0ؗ a4]3bjy\vy;(腤Gu-2rk65uF9:ë`  - 0sX`$|OG2jzVB' ;m?>{5ưX?}*g‹7>XLsi'jШu@IWB234䘘zp􀀻ŝxPl|SI_`sH^WUc%&Dfxt[PU:Bz+ƪ}!+Rw#C>k}DQ N0z*հ}jS,PGġq&U*4s;0!/;_, Zƫ-:d GEqE}"tXIrWɅWNcVQ:36}ЯKk)7!Z7WMs>K'9b|eY9Vce|מ[@DvŜA W%0yz}A^r`> :%.7@ӎA=zHˑ>Ji`I`@f_]bSTZ~:bKVD`bjOj0§8P .6ۄ[#Ɍmk\tH^ k֚xDa8̭$pDzr)@ ~hp ͝;2 VY70-&S|e_t7#y/l,4,ղ{pL{ZG TF J=CR3:4IN->%t; @b Ȯv 41VbCQCra2a7'yL&0:p &9e+4OS8[kOki4@*08!<_0RWیnº}T`haH2mb0j|}<8HKa$J'V Rtg;/V.yaXPi:̶`iX܅9 +8QXIAݥ;%U/&yy@%ғ`u&|IҎ8{RůUH9:|)}IÉM =u{( sESJwwJMw ]ƍ7窰|"l3lYp3!Fh v[MEEyUqJ6Om?7s9j[13۬6jI 119P2 yW0UsZY#s,2p@uY i2 '% ˀ>]FҳdK kB&oSK\EH9V6a?J e-dr>[7%?unls1mFGNKǺS<;ŗqC-@ A^4P;T~$fߏ {dtǾD&"R \rOaKgAK`96U2QFzP=`*?2jܯ09u7|cV=#?1aGa)N\e,ڦU.H"xAe_rs>FZ."&8zMvɿ4熥^J8zHkS9hz7Tnmt v߃ : R/YC 1~R/*>י8#5qu' Q3 t8M1|:sCa}36*x5?tCϫu>u,V>|`%ނB$S'+B aaΪ(YH䠯7p(a HRm8Tv {>wL7k$=}"/_ KH<0wnbX7NJaB]^PWUN.k/-AFYځ{96%a=+aax(]e8ll mzb_ۏgD^W_a*,a]NҲv& k=Z'6;sb_@h K"@&X!wO+Gzb Ѝ<#E vU'Yq7]og^Y&Z;\6rdSJ諵 Uvo_Vg/ndAdħ(p,=.XRTG^T8P1P>5ٟWbf9@ Jȩ;f( b0\ L+]xsEڡun^^5S"q"C*ҁ(Z[Y'۔(rS\J7 #B;bBaPLn`}@V [- <MgrI-Gk-͎NeksMy;|}C㱻wd9II_dW9Wק!iI\G]Zꂏ+ f:YVwJo#o>#N^:=upj3L/펺|U>~3k~G'oLPwUc,VPa_wYSq:)gXH 1IR|OT2ܚO;T[V$T؜OyԘ0ky;/47}z=Ft$:=V SmG!FWaݳPRpc7RyP{@x o-HW/Q]YgG6#U",LS9WT|Q)8Xm$Oz&/cZ<*+GAwWv-|-SO?ÐP-곲 vii#X+-+Kkjq/ַ [D_ Į9Y=;a"X+) Zj?ff= \v^I$=;C]rgat|3F}qpife+2򼧡Ϲ.a1iw̓&tLuwzC2$?MC Nu!Fs#C2Lz)JCIq^mXLlEF14>;/UT 0E!| y߻̽ahaE;&vVkR'3~y@['_k"r|o.R(e[ ^FڛKŷ 2U*qY5{ 㴵2,pJHe8nCDH̍AI@%~Vұu ;*s+.Fl/DH5yIakN %}GMɪ⪬#!E@CМk6F3Ø}Ptc'oCE>U'D`6a&˞x/+Pv  dܕ7˓gǗ)lOQ=qF}#`|X㚴χPfYnl)FXm0ALYWn0õrӐ*+jP7sX 7Dl"!Y,sg1/AV*rcV|en+X5Nm(5fDXčK0aԉG YjYH9zx]vmk5z_`^脂9B:C39d͍1,4s`}Tuկ7td =/9WB2XBxv&AMdLJ`RyWB29m..TM&0LvI<͆]C_~,ec| SkapZ#'E$iŐ* ObM <_3 #iq[{EqPBkkJ^`:XdB]H8SjNjMG!:xTjHY`=1j} cB%*~ڴ?}ݸ&~vq`Dc eyɹGSE) oH2u%(\==f̖$n|TyXCЩP&fRq6_狷=/^s,sNb@LC񖯌n,i| 8pA:my_OI,@L(wi.>r<;lJ-:rA+X7kqkդI  3t\6 jֆ6IHb^28OJA%kJHӝƄ Ӝ$92 ڥ )APe TW0׌{3œeN\w^՛vn)_ھ/ Gml7,=RܬQ%|2%ᵛފd,dmvQyg1UL6/K%qK;ԉpsewHS:ʹjXYW5n[ƨ<$ApOsƯJ/\[''jN ǘ@Kɶ{=rV$ =osM,4HQM ɻkμ"(YC1x8 MA^љ^S^g5R'ug`ٴ)A@(4`ՁN k-(*kSLg3 8bs:hBBfף#qW\+:mHE}?mMYdvP .`k&Ut>p)Y6~yY;@4y^I~HzMusEP8t13m7A}9>C@al!Ժ7|J7~Q1!ƽb#zEEg #EJ7u(?dcőv벊(F+,U6mU 'U{qjUo֎&aAgyp!%'n?@[2q+̖5Iy16],@NdkĜSךnfJ11lRVs |'%LylAUP$q(߁ՠjRC%my9IM\L4zmq"\Apɢ@'ΩnGc^5*̘SiWq^+rͱ\a4ǛKDU-u:j#k7z Vj$T/AsYN)F.«D~Er2s,',5Rޱˬ!!.٠U&ȩwyj7厷UV/ˊ,xM8⥈V6mįŬ08ҐrddVB8Fn!V+ǵvO\GF^7YQPf_,7HMKժ^QYO hHfYhϰO٠wοjsfB0o ]u^ւO P?8j|2|M"mze%4t YV;XNt ER[<<ܘ^I ʇW9Qa8tq t*Y f\ӯ%UG23}.,hz 4H2څʏГz\*2-~]bwg ڳԩ0gfjpV8[[oI,em9"<3< ~Q*$mIuVb>r[H%⪱o"K^BZ@)5_Cկt RtKκGhE$x VS`?jn-f7jF.O`>lH9ӊ_~f)$! 8>YnqBxbyBhz#(?7cc|4{~/}uM;4Ӹ HO3HCceB5xb8nsX$ʶH+!Þ84lf]>L:UZVXJ7@s >2qS:30cHQ,H_Ftꯠf.uNHMO T<2&d&O:)~!T}Fڦ h-Lb5t[KT7qPIp.$$.?/{+wZ"*xxC%A3v0C0!t2r`Rb3"j_Ws=G#,\ˀy y^oQ/;X_,#RfjkkLatRZuma\{g yri {ռCB~NR+@1_4E lYDD67w#Kr!;Wܻ_ FwQ/Sw'Lfj)l~ 4*%fpU{SMR (= G@M~yݏ\biU97FSKS[d,ڕs턁,vRSeS`Rr`^6ǾqMQXj 3UKZf8<'k$'2O3Bhha2gNu,(CŠFd9:ok ]دj(Fd;90SIJ$]ڜNJ0-}j@уl 4[#;6Mw@:eoV$apCjoxsHl0 v5Yr|$,+߬Ӳr71L-V{γCJR'|ԳXŎ?2PfST~~Ls^'b0h=BΒ(T*H{闛Ao"qݐꦺm/d=BYс]~)Y}+ňI,ýVfhvYFST"v:_zAqw$7\uYGSwޮ#Y[ĥɶ _wz/yzG w]Z#×;DN\ 5g1Mɠ*ds{e$]n9yp#I'njɤ"TպLZܽ s; Iýʋ6Wc%w3 뾸449$ \Lm99, [(Av fF6.MY-Vͫ0DR"|o.$ kw5$,V[\.9'VR* Ƶr|1F?nl~ojH|&ڐKX[kś ԷGc`ĩ˂aؒabb'V(q 6NGI\kOrהpS8˼|!\o_C*~&#\s!rQw^v]\>g-Z9?-< `"qҠs= /4;M[~ _Fi(t@æ%f]Ddس z|emjk` *N^MK&6MYo~,qoq 8nF#FPGyu[B(Z,f3!{e  J0w?@1/_1@Hp_YΠ~A}_(6\`"|Y&gZ]߃ߖveN1~KYc+t9/@pRU jXmsc1o&s$-L5Sp fF?23ͪk4=М{QD= 8;/\BɆc05Q (iFwoO=@i臣;MCb.<-eI?&/FO }7XZyWINsMRb=9z K)>B^ c 2"̈́}4,aZ {@IY:WZtྎȧ+SJcM+[mc򂆶{.(Ea$DuĹp{j |M^Smf.%ЊV Z" ?6ky2,l@8e#lj+`RxJ|ʳKGh G(NJ VMQq}{aD5@Sͯ'uJ>·@Eji,u M!P3UTK}qZ4$Cϱem9)Um n Ɩ/9^={$(=ҩ՝{AC/SC批+qfrGx[2H76b +ZM dveAdaW|)*JV­KϯOveF|HebbqCvmsUx9ÓRf2 e fokC1 _'rJX*VY4ض7߻}6Rق 7Ө-+൅( TTu3{o>wϟt:FlF~ylBZ.r$풡RIwδeǯdž)pB#>> ` *$ngHN+u-~#lAIF2e˾($gɥ2#:ixX|{LSV!'q~-.'i l1rCZl( %~¥6=Q _9iC3`ѶjB/ U$T?Rd(%.ˢF~ѓ_T.#\N~+P:#9|ꃺXUhf1Ы/^3d|V/ w)#W{Pc%0n\ߛ<411"I"5Gqy;"-^~Qį[K7c8B:xq A/8v-$ `>^)T^o^nLx XD/kewj,°H\l|>㌣I{ؒ74dɨnK(!;4-=bPkɰ|zHb}[*pqf`,z:B*EPOE8YfQYQNFL`ĺȑ MȘM!_JgWa%^l>J5{݄o`& 6V%kkc6RG;e(h┌4NrwCs޶׳pP{/O!M9 I/~W`B7I#Wy!Ѹ@ `ڴŁ)10,[J$*0 >ѵӶw4`OpM>F;6rf" \5<ͼ}x?eVk{a<}J(T UYX`qtU+¼=0A0Ѣ~OˮȲ; qJ/}ZYŻgc(1m5bX-2$\t?0 p^yfiی9B.'Lz7iGWHk>mǏiXXй F疎p!$hoNc$:V(!|eB3id*C⽳Mo8<,/atȋW?d=%SjEr$'$|gЧ.?&azhvܦ2RY "{OX Pj*énF]PM" l 'NH2@?osSl߶rsp,+=uc5,:&,**qM#I3 7`T%0n#ksl:+x[: _lI{GघE_?ú.PfϘӺ8qM? $gW\.~p~M΅ʕ:4ģ[_(5Pd[N.|djDCϑν` ,$yJu4 zTw_s=ۉؿ246wdnyX`M^g1}U" eQJ|>rƞJPyUP{r%┙Hp&G=ժ1R<&ģ_1ymp5HYaf+)FXUiv8e2KK ǡ U&߫)A<7O`=P Ӛ(x>D{4t/M%,/W%M;L>gȗ\0A~4a6l՗j,?:G#Ep4^dNfNi5Cٗأq@˼{ ' [CAH?G+X+N:v䄋G*ag7 )~nsIfݣٯiSdLu׿7s܉P/=N7˭(Jx"UV~eȟkBe' Dju 3kM rAL TpW+oLzux:P+x ^U7!uK=l6.Z|F~ BJ6O"jmMvY*~@ pn۟kR>Z'8Hlɥ4&p{veۘP%nF'-u (⅛8El}?Xyu\rJ}'?jXuKϋԒ_b(iǰ_Jx٬E ؖCw#.Xz<NH!Mf U:^mU2X4* Rtn$p{?#7bqkʩVӡ%3iÄcUp՝pjYˮV\zL>B1Oy+(4SjQDS'ܣ!+ߛn(ĠbiD!l N/®U,9c|>AykHz_߭gC{ڬGEF+t^l-2RߜT=|ݞG| ^~fid=9w_eQ :mOc=rFna"j֞(ջ:7 jWJvIm7!YPSQa3ב%9-_Q{{A4#?R^7_ \٘5ʏGd5&rB^BefG9PgLEUz8N6Z9j_bF'ׄlgfڙvv^nznrMbba=Dsq jiƇ+G E9X]t.)vݴG.">4@b3 V%Z 4 KU ё `lIE=V;[b9'8Q_Bv΃m!H`en=#1̴v c{Kp+~5BEsdj v2g1Ϝϐ/~/ z$I %QBj2Ke!3wiOҫUzN/\kͽV3t6CDuݷ/;&&qɞ"-w5^vd}mM q+n#q47}JцRZ_Cj{|hvv+3ObpLt o:8>}U=G49ݗK# O$|')Oҋ"ie6b4F_.E>'/-$ih lÈm|d^BfJ%K+n xϡP3xR(`S"4/ 17P_84Sgb]L{C h)",4ǘ`!g)UBݿFrt @BaSH=sh!x\NLw%ikoCU<`~΢6+_r6QB/f`!r9 oj|mDA$ \&«mI-?W'1PZx]ɫRVtB hYMcw݊idyIݮ< H 黖deb8^'1(W:y~[^2C;i7|Þ[ҽҍ9LDkcjw:uO uQ3ΗPƟJŤȝ'7M6q8`Fֺ蛔~f.oS2?vvlTbr @b ]AaeG⓾N&7"5QC. ?7yPbpR+=k>(&Kn`o?vWĝ\YdM"Bm!&  2|};/?h@Y#1$k. B+‰ȅ\:\i"y\4YkNem?akXܚ]NӻNz/e>?ݷ68;gK*٥xԣ°zgJߗ<'ʲdLB0ʎJޱ4~BM@$`mM̛l+~ #|mP,wmyjni[?,jn _d $Tn9Վ9.d<4ngd 9`p]Xp$mjvoS {Sf{lz!>;_~CDäM97b/i$|$։ Uyc7!Y2G9%^z17O5Cx!#xr&-Lz^e_y&wsڬl F]J+5H_Ip]'*pF.'r* VߢssWHќ[lt->yA&3h3ɐRGa$]RLC$âjHK 1'Jє@d nu(uF.-UiA@p̂iZo| ξ&!O&yk\9wra~֦ڮtW`nS@2$ tyN 6 u֟T'5(zjvTm-Oz !.2.MG3Ku3BV3.VR(ġfӽYqfJ8 2k:p㆖YG%ߚf# GZ 4E,gÍH.6+8g:ݲvM1o%j9kg&3@EO½]Y {e?B;'GUC7!:ѧG=֥2q0{,3XwBfA6h XAR>+x*N!s84lN=7M<5;2[ǧ={@ߴ dY8G_ev#6M> [:/6" %( = آs&G#5XHib"{QScQD3`Uədvq1riQug K4m3Vp83@ Cnrh a =w}Lϝ:YY"j0bg+-VG228_leކ¿:p=S*QcO!5“XH]! h[4F;//b&+*{\ CY*Y#1^LaqKBz]& {JuH=bto"}&'THzV.@&ekL77WB?+l`U]uʩzh}?%XYc}jR zaD-7y#!UFP+|e ~tw/)F8+hcdƆ>hya4 :EJ#s2;&](t!LW `fx1X`{( 2N4 8hE҈uhd'ܦ+.}ҩYv5n [,0EBz7 ROjF:]4%U2GuI-(tiN,6P .aO0> 26 Z嶮NǁJ:˄nI=]P>+Zº|Ṯ"&CG_GY"3u-j>z^cq^qcS5VLw T!,QaBmU]V!NJ֡AꉎShg|68}? sw2+2MZ"I ,<=zRK6I9etTBэځ=ad8]XrJT lf Dg:3݀)<4nJxڍӘA ~^u/Ʌ횯 Y78ϐ`k{*)-PuOWZǴrU**GrYs*(ܷ.n U0/G,MQ_sY?ԜcQQtP!9풟ٺ8npp|9!soPC-(٨َdw՟o hbd JUl]v(0ohu*"|,xQ1ݚqQtO18'WUkFʈZ×)S 7Oè? Cg :5"ZN Z 6Ii d܏%Ǿ,`՟xHtEX2ReৣdtoKZGq .$uj ̞^ؿo"|hmQN B[>Q5룱J#s Rd;IK|\e(B?X^62DO2/Q.%05 h.y֔R2UE.ȣy3v2L %XMlkW҈7\UD710zx[b2 U;Gm┞?QF' sF")qj?hOZͤ$no 󮛃8"Jag~s_Q^q>g6Y#W |' =Vù`1[8d< s8 }n;dqC0D=H\5Qش/syQmbf/"& UP-= &39Z Os!"ǧk3OrH*+nL5arډ(W5a={iKPn wbwؽQ?|Ph'|\tL}c3ׂcDRwM.d}tBjPQn6\ߌ]]kBjIUJgwO$SI G ɾ.t\>ZQokDAےL!a?x1'EP.AmM6pO oq%)o{1V*.`  !$Ynă lej8alͽm(^'C<j҃D ĵe..~@F.J/8FƤn(K!)#ZMz@-:XY5b,z6Z~{=uvb,>4̠Nu?#hWgڇ݇@rؽ<1V̷}M%!Ff-p%\\(nr8#<Ъt'[X#Yn XHUۭR[A( iW'>C҆^!f km |xҤ0W@3JcG40j3jm[ 0k:4۝W\lj]7Nnڶ59_Äޕ\`rwp$g."L򧘜/2%8#1ӵWg9ւA4By[ݾK9AIdN;$T%Q5IK.>8,:#|aQƽ6m=xoICH <K3 HӺ!*&*w u6wkrLוVDM6x}D wmjK Z^/MD%|&6 0_{mWB6fQLqSģbTS7Q^C;O~ Yۏq{R3GeJiYRghpz,0ڎEx@Yuaٝ8y 2ޓŶ"[Zt5V6Z.fd"$UuQg+nhPl|j0ؠ8p!z[!^UK$ZoIҘGgO U+Hp<`jE|$ kpwMO\?^7CcJ`}t]k­DxHɢ@g.5Π27tS - PKJC&3 m4AJvJNL nx)$ߞNnI<26^V5eܾ[0"ْSL prk>'x[^7ּYs'jשnFFAC̛ Sh+*Qp+q"˪5ɑTr)pmN; uMڞsf\!t[T9{s[^CyW*HC橗JL9QhBFXky Ʋ\؟ɓ&Oh%7k^%Xjk]U7^&fHl(ICHs RvꙃK'M艝5ȇ:-$*e?o&Btפ\2rA㣇  ~ sU!M㹔PgۨdIL1ڠXN#̜^A*`x<ⁿ[` @ñ P]BSV(1 a@璜1/3}2:q dşCtU6"QY2KѱzI;t qg\-SUd囓X>\L[KIWq#1bKl]訉.mjENfUXQZW%Z~F͹ړ?0 g3zpj P|PΧjns3,jZ\B<Μ++un-ƐEw P͵qZyƻ<$i_k!/Ĥz"us-z 8 F)=KάlB!}0qDf]ϓlXnE2!8ڰ0\c/X\Oj=kpC<3}rWV{X~y<BiWMo*aA&`b[,q1DV!xKP2 y lLGj,@pQ92|pΡ }2%R2v~dn2,?LSJ2+R1ܘ\?Lv "y9Xڭ8)>A \ɜ}ָ ̂|M}Q ^|Bر7>} /enpk0/A{`˴$GityEkhB`E.g &{oY bCnK0?Ā]S[}b9ղM*{RbC0%W#B% !ÛZöD\i,]Y*`^4p3fJ%ȯp3;MCeVo s{"57ǁZt!Y̺fbRp .> G!xjR UTY\e/E^TH ꙴƁHiRorJHkA>vZ.)ʄlU8Q""}Ӗ !3|v4;hlQf!F̬ڑ{]D͘#N(/lTJ2U6K{|=@?7eDױuפ2T*0Vox,1r95-f[zzG{:N=. ,e; <mٰbCܖIJb O;輓@"2?|]]Ljiuw~,|Bw2 3Ĝ1oX ,0; %YʑڀlQg1[/ }ܕn?q'T ,|S*phˢSɾSΪ}`2H})IwO:yO:\-} …He} fǣmɛ[K(ȐOI/_ƔsЅE2dsE+}]@ZWry9Ɇj 8K]YWE'M24U:FFX@ +*%8yjD35q.}>aԵ<ͯz < 25]'ٌ~l;52s8)ڏë BodjuE .1̝m_F6iibP쪚+/u &@{o==I:uik%2{bsBu9Z~tűkM,,K .+cz81{v90/G213O>@E* ^Z:hI Kbƍ5t0\O& Q?_ ʨXt;/O7 ]^5<H5ϧ e/,cd~ G !T+ł a=;*dҧ01G0!2Dz@b8[ZR:raW&⭈cmR!q3=':9,m`mP=4N$pH=ÿ@V߯"s/X*޽V8~eY[IEe6 {a[j$<+ga].{v%Ji>n"-xߡ[|q=*jd˔Z}^nE@ued)۱Esj#3TU?4e*(}L&l wSZ-Wql( oѪa)>kcIE_$OmdEnxuo%fCjT?1NCRhH#5ϣ? M9?˄b~41iLx(Ie%8KWꕩ@k%瓑|ACXy1[~M V.Ԃ% +5lhi2X:Mz YԠ^tP#ƛVe ')c=_lۻgOpR5YCcqwY}9H"k=)jg]íR@#7`lYCv.LUM@,UUW8l \y|ޮZAe@PVDHGmXTXKaoX Fiw/sil[p `TQL08df#Unoy"'3C嘍4*Ըutip!pK$55C$-DcB)zwÔC{B LK rF P.ܞ΋q]a^GסC~թ ڃ|),>9ʗҺ*4Yw[#B8 +:%_[]T: ]79ê.e.KkӸ9ݣ_*?l-m,k)@ [+XrM0ۣ 7"C,0 ঞ|SdJ mAiw7Xj&r'S%ǝ3)b/`nfM?[5MXL OrGЧ̥pI}-݁G4wxL8"5p!h 0躙՟W /eA:wjԮАJTDπ\7-^- scƢS <64SVNv]7^P:#pyrol@f8.Ff|c_+@']3r_}#a6nMs Oe?tG\×dI 5S,3Z7)E2_q y1$> QSngev+/L;yR. "kl a=q3uyUnDf0q3j̃hi%N t"Zm0 -F{dR~O{KK{rTqF:g3U4N"qjE#W1OR.`fT w56("XAqǢgqFO;?9o=^bJu2Ēʵ$uF$|*vԾZ:[5hV#TB[~f茕Ik.(REzfۤ6RnIo*g?C* fOpA p(:z˼<_)M|)r`9L}}h?'N{<᭰M)az P?K$'qz)"aו_iX`@=13 M[f ni_gXBa*6x1wN¤4dQ8b.d"ѡ(6#+ua<%s 5ł,|!nH_;U#2zzB`5@H(i2k޿wHfJ:_)(=8hv!/&DGGYܨae|2K8I?LZ1 lقn=D/-WFچ=yٍp\: =ܪ.v+dO)2{9U}c%0żn"ZMF)`>cC_]nWB3WuYjJ#Ĉl/s.&J8~ 7:n>&z蝹>1}){XDvODYz4Θh!͞l #%wn3,ѻ,3TR%bEF?ՠ~0WoQ- tOT M#@~w1HF܉RQmT<.~PnL{DKd&NZny82æi~ݸ]#j1:ʊҸN+ M`>F 33@;SO:f ?Qu7\MQ 7]X0yzuyfz$U|n_c̔8Ӂ$TT;: ZXlB)`WvA`KJ9^,5u ҄Opȝφ̏,3H/L+94 _c2I7u=<KK\M!L\XTiY`%ཿ)@[֏N8Z^b3#u~=u,6qYP69 yAj  ̃MF˽3BccicƨS QaJ%Bv#MBQcF4[-Þ ;qce<% 6K[E۪ )y~HY=s 2H ^ך)]`hit<Fg n?d}>ŕȞדFn|/e0KImz^ 9M1^i#h"9^N׺@+вQ =IBIdy,XEޅko1DVN"]=Mn e}E6$&<%d7DC6FET_jO]/#e *b COBZmo'Ng{ڽۃÆb5e`BLB ~CQZOX3=&;$'}&G-IbYf6#NY$ח+Kj Bѱ6`׶B_&9+Vx+ܻWzRڃ_+'as<g` THNRY)rSP,9 8͒j^'H;t0T1-ىچ+xєN H 9 <&Ń{n6=O!L\UP.=N[\ c1 &ڟoPFm;8~BGxI[ ($i‿LX"tEX1ՠ\ژCbXh[; 1LT ѝ ]h69{(ryK mABfp\5cAytRN̢S^ JhaF(pG=$3CY!H$u4Pha)6ФE:z싓+ͽ"ێ}yR[,uSbjj2U]{L߁!Jc=.q8b戏O] uio\X@b1gezMQ<=;3u% |t4=A'c}Bf]LG26u-u¬r@"oLSt ztKz`e{Y鼉fӊPOLI v2#07Tt^v"`.(}Hx5z;r Ps_*;D : okɗB{h;k'\bs3l=OA xnjfҊom;~}t.#eitXxD7{bU/ۃ3}˪E-O.hɨos̰ բ]{$mړ?NA[ұVK^DUHxa-8ctYSoN#=>^cKb"hL|8܅Zv݁|e7J}#3EcmT#ӈU:ArrueQP EJ{gYz+G,PFQ$CY s6Gr_6t`2'hysmm:O0q6`gEk e1wG 6 E8Ok¿DE+JY${{aW'AbI=|m:Ԑ*_#İQ,2 2pB V]A2)b!ޔ/VOjGo簋#vn:Pj稍}v.up=MfbJ8F [/R]we&O*qxtR1=*px4v@g, aqG"$W§Y3*1Ya*bٓ;D;]#Y*2  ' T`X#u{(7q\@i9"RD/#}g'vum#Ȩ ڀӣΚW4ׯ_R>e@qZ?wLJEc`w&AZ'߀۞E.` B+OA`QrTMP;;}VA KH4,#Ё1GHwB!( ) C5gMs&X #Y fMyՓ+Anʬs$g|rg:eq0ﵪ{Ny"P|$-^U)86ٜs-"$NL, '%g"EY ڹ18FzF'c1٫(ϧgv`wr|Y+1aݠz{rnϻ~}Aq?ZюkJͺyBx9D<% 5|H Y7bJElj躷^¼P*|U#T::œaC7v$aZ^ݥt2ӈ5iv;8mÛT7FѣbSf5܅4K23/c@u,hĥAqkZz//\5 @qB[juK8,ۗ8AL~z iv; R|#ϋ<*h>3iYQݵ#;>\)EzQ֠[M($WrhBge Re.°QQ*ړ;s p!mRPW%qZ [.ӈF`==eJ\gbś@ZnLٿH48, [v鐡ۆ ZXo)D@$W hť~Rm=_ل('3mlܝUZy4[*~n0;m}={^v'(֩KG8W?mpTlsoͣKϑxvxA6~kr= | {pn(~R$xqA30j;ז< ^` <}M$!1w6PS`q<3کH yp X(+\iUG'i<}6N֛*)v^ b[5͔NDY=r4T |#7<@P2םSbqذ2 DXР2[Ou\15QkH/Ia#34A_t0: !r+UMԧV y*^nG[ ).a&lP( ua%m73 Is)7ԖJx0][3fXE#E1U=3Ec, vH?9l\*/@oh?":Cϧ^ p/Y7qxᦓ F:;xpfc "r4w)51qxGᯅTe+*8LDTs"AU-l ,p7{ bAj#/L_ |+ӆ6qHqͶ#9:茶bw.v #czB: NJ-?ZضMP f@:򙼳#.oFiN[-5K~x'J U&jiR }%j[=j*Ø\wv j83 WBF\%48ܭj_bѲV.Vyl)@$gYx}XL( ҝ%i :g^9>6Oɲ•B[N@k1=j+?Үq디h̹&=+rWҊЅ=4vEr zp=w~{WK\q~m+A4UHn'C}5S|?B' 9\#BpT!"dr%|58Nך/;'XNx.$c5ȧ)7{{(W~rF$id/g "_8J3~#gЏT$ndubvwú6&GCD2tm|hImVxf*SNӍ)V2#.iKe;Ź&"2be4}LvW1:~5NtLvi㦹ײ&1;? _s:ukDnd2'>&PǠ[gVqo"NWtpR[) nWX pQ|/;[?<+ t7 L8;WF#ܗP|x% BaR5S5w7r6<0r@ |*aʑ50hXO#ti^SW PU":ly"OeX$ӗ frI=P s&G׉~f@ {yY3 7@IDSҢ-vSDX*޳ei~tM.kKDe$Pī~@3WD069GCx5ܞq^Lْʋ*EX y+FllJr+($N$K/Ij0w$k(bvH u<1tȻ0C ;B1ޒ0mjk֚Nfڼ2gBkKCO:GP*l>̹=܁~ݬ:^J̠I]+O_F]^/1.\Sw> ex~=B7m0~AwpT>ya23KxnEJ՝@铉tt˜e^~~(/F`<ڌauIEm(f"xJr A0^فr}M|S'OuAM?fHRoHJ꯯{6(q ޿<"xX-;mh9i6:i;y&xNKޢhRL02ގVLGvc >p؂w)GP:yl͢$BTV"`~jːC+z6HF{(S,\ "Qf5X"dZrԁ]GKζ$x~I1 PAkgaic^*"ZLYwүEO&y֥P2k@$S^e7=b6 e²Cݹa-^ u:CEx$8Y2$K8%57=zg v.2AǶPm{| &HT=mvȯvJ5-պJTr݅y|I#B}Hi#d@}y^KBFX&$HyC9W/. UˤAfO<[J(gl ^:YQDU)coU,Fv226^>wX(%p8痫q[ 27Wait~H6mH}ؕo*PGVRJhcu<wp*zwiTq߀=gŷ-fg$@C'Fc}O9vpt d1t7}n]:ʀ }מ-oCdZWA-?'>7IpP΅;ha/Ygs,ʲRw>'O{X=ꁺ"~1qcv#2t[Ddɦ/Oc2]=Ӿ|GA߽ArDKŌ*&kA ;3 mTd97܁ )* b{j_'흤2<" &4jb<!VD8'AyMn̨zB@fN]N^ubrO{yyg-pu ):죚yoWyK~:BKRdci ƄElnC_~Ƙ;j^&o}3dy\ }‰k >a6Ȯ~p=2|B^ڋt0YIՈ/^(FmgVW:I},XGN=m b*IAƠ:HX&;Y'{_(azΎ$kfVGޝC瘑CKKDHm mRn=:ZB䄇=ZDC HGI1gO]W _#?>dYE 3OŤL W40e MC`92XyU.-xLq-oaD-jӲ| M-L$f_V8W@T9]dڂ˸u}LkJGY /Dɑ^^<DO@ńϲpoeӺٷW N;hӉwM_S-@l~~9P O0 Ku9 / d,C">$5v#dx EO)NeD2XUPAU TVȽ_uw:JR5N`:_7&a=b7ؓ:r߬%M}Pa{@>ɂL"/l*ۘ5߰bA(⍵)G؋=3;aYu3$w~эsО-WM-+Y_H]E-dW0x" /(lBX@~'r1`I.%tQ=NIP0$qIPh^'2 O!>GVT4 \\H TAn^~!H,'(#+B;@&X6U>u4#{VJH, Kh\lxBvQf\=m%=VdW}O<8&ٴOb9~ͅovH E`GRǺiaPJnfcԂEɇ8ۨSC_DD5Am-xz]T h f{){:͚ nvǭn2S&}RTepjs@139:cjn:S#CGḧ́4HA 9(˼ &dЊ8Wɸ;V딑<,0\+U d;O'VF-׬HSbɔA!¤p5V8mfXpɥn% 4[ZJ7!UWCT΁S╞#ۘQ2c4:s=6qػW4FਚBZrYBѿhҏTe(e,^~(%GKO(?Nh$8b25k˥oLc1*A܈,9Ż 4)&0j7\QUţHO' Ѯ5B2>VSAJP>z<9KSt1Uu `*t ĭS=pJ$@a&|K9yKz@\nH2'>/Ĭ}RvuTc2ޅ[rk@Y.jh`u %9ر `+CNA|%֨PD <[CǔT(xiiS5؍;&p ˜ (Fo}X3ѩB1۞|ԢkUJRmLbb- IAg56nJH]Օ{pwe6ޒ@;@dlp$ba"*YÃp1ի~I\Z&4vzw>vɮCYz)ۼrw:&W/7(*gZ0Ch&8@*آf2[3K8\W2n9e_z{1? i 'tLY.Zp T+A 6qxmĉ\(j>({6YOB=<йu þt~P&:fr@fyG+'sU:J>V>/Hyv XB4GNW_T^OZ"cW8$͇闼 ݀6`_WKش5z7R=X *m;$^Q3Tq8;0I)XfĹ޺uǶŠ&Uфk5E.W>ٗ瑁]Ll'5c sSgڟa0b{Pd2 (FG@"g5J3r2 Ol+rm{v7Ty^B\;P;Դ LћCvL"xKP)+n daܚn(f^DXRfm6 {pk}w%T3 l;eKJsMBCllWֵ@qXV2.+?-Ɔ0%X~iL%"boY]\5'AgLJWv(v {J͕}g6zyJy]k2k!&o]Zu~}rGR?Wq:xAerizӢt,E%c SQT XMqPsQs:F;!\:Y'M*R]S\Le=r`n$.U ḖZGtGv''jא-pClJ5P#u!͕q@ <ˌV u;NԉRCzc} }nmyC۰ vPJU_Z)(4 ©lO9M+;(!'9~A 39F*4" R)ca>y6,U-.<"E,h lHdq=_ sx*p^F/ J;kj ȖSktuL]gqEn8ՊxYd81YlEK6Uh rnA\Oeo\sdczZ48½>d6ouemnYՊ) H JF1[_8Ytڻ2l8JcՈ Z;YȐZ `,z| 0{˿]YGNv\MjTl? ($-_(c n+vuז ` jTt)La2aD Kɓ[RPZ:N 5fhaaP=d`.݀ΤԉeMJW[BdW(~Frœze@Rx elynMM@c!EεO:xJ? =;?gVEql7K7 tKLwK'L;.XՆO蕠Py|YMel4T XsI7~l05;u< *XYTCS7'f4m>١EEM!\s&'0nn,GT; ANH.(冮[#p"p tT2: L@Ϥ9߿DlyJpE<]5nIhbh)-g;:u ,/@-[/}?h N-/2m_S&jO;-Gnʑ&,Tk:WM+.j-xܞp_ nGi]V= p3c ?+d 6_GʊٖA`S+(ZDǣ0њDWpv?G`^!vscJ9n_*`o3%^ z*ǝ΄uW$"#CyS ՟ J]ˬ]WJ -9T +D;Wܺe~C$whF4RZNB/ KjFw 2A9)ϊYw8/-tNWp53JZ-Lm.g F_t$(H "m,%b^ )S&kxTn)?FhʔUŠ y h3(qf6xoJ8:RL-Fkny9j:z`C uT&wHygyd_Y7M0u(J {syNMyD'VoCVL%OT(W6TQ!4kW2PAYm u@|9sox|HH? Eȇ,p¾#MPĥR>3`>!ftkufPSAA^=c&X4<<$N|,Vr,Wj( 8:kbRk-Ԗ07ܭ+,,SuG]ȳ \LOTrN)MG _Nk"r"CpM;_c{uI5޳{[~Úgf]@ey_njf&]s]Ɓ4aIO~,RV.E0B>??RG=þ7BO߆ V&Lև"^b4 ȒMuq`bYr) ž/.= ^ C:>-^Ԇ.b^!gkqr(̫Ja!7h<<*UM5̛$3dXY.n] h ^ [UrMbn_jހ#{ P!&,Vdee3]\`^@_|m+tE1]5-srfdAq+%qYS[GúA;hȁ 1g䋓'Rѐf:+Ksbs_]GR7ɕLx$Esn7` ZM5#튇rS\6)`#7##0 !hr4]) /L[taM3s9vI_*hk$MYgOF2Jq@Qkp;U-ZWі!E`1܊T!t*bWEYŰоrpc~E 8nu£NanOPO>i;̀ ]G02v ~w֣㨹Z՚_ʊWkc/$V8DZM>h+[&1+d:L2I?&|$qے,=|`荒\% j.VO:2Lx0g7hSnMތ6@0w8yx6X{T>L&D8>WvaB4dhLnrjޤ,F$:5q$rV[I&ehZiOՎB ЮCi‚aY7o8}ohJ,֊\iiMJoԀ 8TĚ6shOu1@JW~6TkŹ:>Mv ^0blZ["yC` F5f{"=t#n5=?`%ƯL(Y'Z5OǞ֫>1؛ ~X PcL)Lմow Q6Q)Ǖ6[khvL>_,>s|KJhƾqA (lo ͎_MäIW&:NT̙̮޴}m72aW3yV<,NGBF:D81%a m+^Í;ςȓ98icJl㿗]1 Y10 JVm{6v!0ב٫ϙMOiW:L=JĭVCy͵W jÕk'W0J K 蒲It zXD|E2qodC#f_){`1ЃgzU6.4:t}8&` ^8{Y΀V.ͣNDre 9VĜ<*}EςkcH2H?j~'2""gޫ6mo06rwŮJǰFxJC81 5_ {lw|8y`;wth8Ek c6F*t 8FCv3S|6h u<-5[1XJж a "RhpW^q`cLcTKt9 Kq `gYՂYcȦ!|nv2afyaA/ z³@iQo%%5_*RX}HWs x:D\BcP%#v ^wJgր%T6Ϛ.K6D;)ڙDbR{xV24ӧ :I9@)H& پKb@zxTۚm餭= ,.؁l,U6 {~dqeM'dc:*]!Ą);FJ$d{/Osdj,8.LV"7`(^%9lFkV=̾Ns?q#e7yܸDLFA5<`AZ'pɝ(h5M/݌]#S #0*cu® 1K3ԅTu\4y l ) ې_^=jL(%Y_B|!yA̾hdj Tk<2g Ii|:kBη`3kẈ`Bco)=Q\$'-k|L҈3cZ%1*}z Gl=7ԟV*p셢tOO&XbQ`9 C*c[N6nT`Czw\s@ e? NB[ݮ6mit}t|fCy^ GL vp8Zi<F`-P&<(U#ݧnIP^δ4%W!3a 1<1͚4d=թl~p=qbEȓzM̸Yowq %? epzHhE/YFw* sLAYd-t(,? MĹf-ƹo(_X4#Lf/ĆqS*R>mf:Qnq-W<`5[kQ±½\U ?Z9v>2|Ǫ|hNe.ff+0F*@vm6n>>rGwvac*i"{Y`C N[wS _FI,m(4HCNC4-D/vTKzתW] 6*}A)򱘚[_pF34)@͓O6NԿ4XGN>/VKZr[t+#82 LMfol?t3|,_~4fCD R1O>V¼֌v }ݡML9lͭUp"Q`n@?DOJވ&.!`tXxܐo_Uv_ WZ( Q2>?sdW*B&6T|BB`kCzRWdy cyńAfu4jqS`75*pY?E7RCfS:/H b{DBGE,H @A" ]iyw _=0&)oK<{ CsJjy1/=n)&!b"bɌV|V6[ ᜆhU;>ژogJM'$NQ,g5l̀HFCO -#ʸ;Ϗ2y0uMgzV @=Y06ؘYì^9j7@lOH4!_N<{c>f1R> D(q{׊/oMkvDXy{@:a:Nቘ m*k-7F_dH*!wTgi#3rxEIyp ?0glIRn},h6GZ&:SZȢ".36"XCvt*O?b5#u0M7bW[y!=p(t|GVX4Lw%A! ~8BTm G, vk()ʙ ^k62<" pmㅐ],~@C'Yef 'Utu+@wazuАRS5i'#6y2dir _Kh2#%¼a6Z餽OM *Jw]Z]kid+[6vn/i0Ĉ3pY̆Fbj{ U$Jxï!9vPXH/08y֗8EԆ:z.^UpkZ\b*Ǚ>W g*tUv#o ;ZE!qga9m?ѡxHuAaN^%"|eX+wc(\;36eۆيgd%UN ׋dfAMEۀX>SBt Ԗ9oUx$,ׯsP 2ch~ 4W1- zvX1(ڈԽQ&5 Lz^c[uQNKĉ⠴F᳗sɨ0J1g@2\)j E\<;#b-GABkvx:?H7?9^wu>ܪT T-]CD6 J;W9/sUN]*N?&;p*#YofhBsG͎s֕oB^MחƳޜvH(,e94iZ:0)oPt17-W ;e3%GT6|@Vilq$B<"PWϱIbsw>ngLPN)9y}h2a@'HC Ztxa_p%mrM1"g.!јm#.@k6S/nTu?+59WML\fHIٺ{AIIa'h.FMI/* "'U3fJ-8})ek$O nyst҅烈l|= 'c*ӣ}꼺)a%ԧ'S][A mZ n]^^@dZv @4!?un\ۼWM?5.x;kf)3\r9-~T>޳m`'B^K_u)߮ːK(z[*{3̅9!E `Bć;I= ;Upme.`HODl2,K\cN/NעVjˉhAՒ٫~pqN^P FUB-b&&)lRue,׉ȘwtB@*w;?JC}@~0\)ЙN6+/O~@m\ rODWxR #ӭqx,6ԚGG}͎G&Ɏ;r$崴 di!M|QE޴7j1-rw*q=ŎSٜdg ԨGn0=!EԚNJ̓ËΦZ/~GB__xrDZ4 ㉎YQ0:&O{VIvh%F|0aNPm;ukONb\.bx 8 *|PI$顃.KOI($ Y, ;XRD ]1*U?g|RLW.4GED:$ޱߕO ,&&GIBHEt|F@ɤ#l3,`'gPl:yC$}Sβ:SjݓV/YЦt`UlFpE,@B!nPT>ljM 9; Y~ٯ~XDC7i]'}Rv V#ՂpBr`+GvmU6/c~CΗc"F~U?>$ֻ2) >?NCYD\<Ί?&>'2^kp\M?r3nfnhACIr$%d1ߔXz" ϛڶB&UO\=9j}, %DRT. *%Z=<Nh)!GtfcSիc')x5TC}Kt~^4Ep}߰ѠL:bi*b*6g,=` BVaw6''ѭ zFt`iD_E_ߒG|F%Tyua3Pi ^*euGX%7h|!@>6*tX*`PV OU VT,M;گwXDR,=i> kX1ag3CT ɋ YߪY_u9X/K/m>04a5j=E|с5@L.]yo?zəώpg76YЮS dݟPq0:%U=w!p,gϨTnR`a}GFX>($*gzQ|8-W8&ߝatu{_ԫ_-nVc(ʠިUh I=9p+Z Ci]$_L_pf=r NT4a:j Z#(>F"^~uLi w'p2RwBֺ{NTֻ ~h g+d鶞;AV0k0TF[3qdiy5{,,m{bçd Jnz1\~^3dּVm7@=VWzug-Oc Įl:=2`bj&yU Bf#{2U*qCR5j q9%o̱ɂY1"=Bvb}xUDf ShdԦ|O P%ksD&ύRKNuT`t&+T3z/dj~7$nW+- wc1>9Lm O.ĞRt Iλw!Szt'g!gמȼl8 ǛPB2]4>}OnC:]C*ޜ[~xs rK$&B_|'Q 5{MYvKBDm==>6ܦU K0=KoC^\(i. VYGf,ӻYg}啾\7e|??ktǑŦJ_Gu8(ydxG&dmŔoNۉR&܃:pPʓG?hMRZ@=pIg 6LN7&O0]4B):"mC4Kwy\ dϱ(ڷ|wu5oHQuESk` %ɶN2xnc;;a=ͯ96{݉j]/Q݃xdB,KQ6mQvf$lX!&MۛEsenybfbU.ybń&w;f ?:+ `=Yu]H.XFэ<IN܎'P>4}IܢhA:٦MBr*e [xof&/`}5|S$ĤƊC6VGk4j]*][7f!k w }C1ZS屓̏Ωv^a̕Iefev0s+d\\8ey~hNEB?H?nXFiL=[ d n`1Fui($>Rֻ"C]Uc߮"yۗ8#P{'u~}U[R*)AeLYqzgoK(B^LWc9&U_5@IZ7LqT!Pfκwn*!}JRiUP [DThBWPӮf]# -rwtlY]L|ɠ;54:‘5 LU:n+.Csh9rOGS i` aC4 ㇛R[v]:`O)=гgDApהGG;AI?4Qmhx kcc3PLo0Eq=7XF ˼ f*KA^C-^[h+wuj #*X g3u`<2VJ κ}MgE6|٣~'wL7`X 5@%*O2b?JKW&GhZ" ET/6t:Ȑw:haFo1Sq?/DBg&/dH(^cϳl 88DÖonN gQݼ|;aaU򾷐'QpϋOi3~WCB@'$鑉a;P9uƺ5 # .Aruյ 7tqީ>5rHUB:=lyeqBna{N@ W.zgR~ QyOdgI>_#s=FvQwn w5"WD%cSEۑEU=1 )b5َ&) Btഏ陗Q==\r}@AƐw7s|* ۵+%sf.P`<<x@ΰUapRU15Hk،'&[Z $HWH G6>& YxOhlE;XMʽ::&+cڂ?'aUŚϵhˡ#̑y]а X}rdOrŠnB,曩3b-"$O(7fe4:#9PU)?kk <ЂcD,` aW̝x6~ϡغs|ceqvʉ4+Oq-<߅=|.{]]idJsܧJ?rwc2hY嫬 C}2&)۫~;0#4W<&=sY 8!7VksWħ` ,EF{jaY :39mO3NIsp\Ni$?+ ڲv*XqiҨIkߠ#ug T&9]O.@0fJ5>!l.Sf k}Θ9CPFc ʏE[~ϯZW': T~w^C@NZ :DO,{b7"mO2>H- k0`^U{Be VaQeX"r N>T%e=(V$k2_9MVkny>QpAA(%ylI#]IP{ͯ-XxWBɰ p_j!@>c,t:_`ܥd"[fiw"6J4\u:NDI?q<R䃭;(_β%vAO1YHSȹZ>`֒Q Xho?K5'=.(5ה&'c7,?s<Q; ֦S0&]q2n-Q'ZSs})8qh =: [ 6xڝ/$UdQL·@,;^CuCFeHJ ;UQ*쒨Z ch:Jϖi$솪Bl y\wq_g7o]-7c[̒ -!c>0϶|gM@>N S[biwME/$T)%cO}W "~(Q{K]s kJ:tF]MQe!o77ch85San3V'ɩ;Y6${xnA3aX!Er@Vw2'):lDoчg^h{}1e.MSH6{ϘaZ+<#q(iL|HXDmq4m&Gm (pp%fӲ!S/ S곋~ n 2\$opIq&|Le9 F^g[gP@o餺ƙ) lvٱҐ;nm;30ȥC tj,~"!ް9#xYvm%gp AEiǙb }H|};BdpFf,#ߏN1|B'  CT-fiaTd^qMr;Hv.lt<-aeV.7h` tH3PZlcˎvh֟JN`E,P]eWngyu&8W<ڼ$"4 ?^tʐ a1d 2.ڹVO \ͧBON>&yl⼼Й*cK4V^LzR_КN69&܀+tl8 &/u۴ՋUo֧M: AEbf0 9gñmџ!EBRŏps݁C'^fFN &Tˇ+(7=_pUddZ_E;;Hehg|vhkQ zKۍG!+CV>IDEɍ>5MUd{{o*G02IЕDYBHeqC&@ToW>Hc#U4rjo\أek$E!P U(ڦw 9zXRHl { r#=DnϚBt40ɏކw9`NzRd)_u0$U,J=JePC a#;>y]ܲiԣ![b`uUY8Jqv0c CwzvLOISS`Uz87F3.BkrJUHa]l%$kj(Fer;$` '$2Y\KkY_J_T+5`_ID$UKu%6^tCTO `kj0ՑawwTYŸձ< fP hGw/yK7Tu"ä'm3z%dӮF!#hJ&>ܭa iVR0C Iwuph,fM5"3_k/#8G%w(-˯.\EHnW,Px7)75&RՙE]ClSM I.A)NEL!/( wP0e> '7(JuX/%͂/'fƸa,'|(oc&E|lGC^. `0~/18KRU&I(L@9B+[hك 1?n$P\VX%)fdy|7*^]>PQxqLoX;&]<)WC ?_9MEnv;kOH{f9?%re}o_?< @V>(Fr"V8AҵWiR9Azި"^AoV WSwa_S,SEXFdhLy*M AN1d Gl심sؿE=s~@kLcĔh\P㚙V>O]f>e0TO[mDz [k+͋]!vBָfBh7s0WByuA"K 5v83.1E֪cӰM[ZWIqJۂ.٧ CЯ 5CvE戲EF?j(( bl[d¬3)i٬cO N'!/G:(TQM*1췙Lվh!aVO=J VGd gv$Q~aI_}$6O$0xMܫȐK#7a1 "G;6zrW EW3fXᙝ[WSٶ`ܠ]hBffCdkW{ch:XHS X,Ρ;%Nb&QdɏWXo.;o8viv hp?8#ϴ Ŝ dq`יتth WDz;3C>tĘ-,g_=fg *3yKoC|ɑ̶Xҩ#Jb0aC[.*ŝo?9ZuNig#Op9q؂,sQ,=b1uO6;iPQv*Z? BDRoގՎX;҉ryE ?Yb#pz'5ҦkJ8/ ؤ qȼwgHq<>xLk`fYEe~SJ(5|0rIv*IJO|A{:ZsgIJe=Mq Ŋɳ=[,^tǗ@G0j,UC_~l)"oֳ;dUmv/[,;:47gZd'pN^(*ǂ`޹H@ʊ7[RiSU^'tYqÍTbm,8ލ0?lJ ۱~XQI%ĥ} 2n'@{DPؿmDn/)*.*pSi05Aca''0Oq[~}N̵; &dU5dj#D)'{!:5?R*lN~ Nȟf ,{UD>)jq*b Bn gg'$F_P6F`V:3 zޫ9;*v3&w|U%J-8o@PekXdf^?P }W-]&í߿hbˊ7+nb[؈D8NQ@rlBA Fܿyj 7euɀtk%T C'Qc !#j0_qބ')F 4zUTb8kpB#kqo\"_::XoH+m|lj#2'¶8( WԦ3I9qU][ѐ=.ٮn*Z2nnhہ"A#Bt~bąLf ,GqiMAi|~ԑb;m*K@p)W(p5>0Dv W5ϲdK1?'\&k@ DK$xf{ q~鶬L-wL-1ɋ+_b> !(oA[jNfq ARbK%m^1IEq#2z5Z&z# !G%ΦPџrVJ`v餡Q) 3PR8YǶ[vƝgX$ (]m2+&ky2Ffپ7-\@w /M&lRQ"ϟ{/@:vjyYf{\42 TҮ#G/r#'x\z>1[=eoEmb)Y-9m7miR!b&1W_+ g+o1roقfF/$(wXo%c,3tҖ>BF~U|6h;w\yFH4u<~W ʰ(.]т+A"t\6?Unbn`3:[NSbc3vo!P&jI5S m\$VOZ G% uZ6bޡFmiV ^xў\38ݓݹ!ի",-0E Z^0\D*zKe&Oj2 2ՒNs-^ ?"-Jx%a@94_3i ?vLR0it`C) Sq#Z8$jI`&Il`2ž<ï܌''`msV%i U YzG˽kʬԬtQ-?֥|o8rx.,&dZ$O ':B g-C!)rM.0' p1SSigi tYY٢\u8aLhv.HZobUu/V_уl6%2|'e]YɊQ,p+1ڛIO$e~ ,U@Qnn_]R >bn.6%_GҬz!KCs;b8̊z҆X 7ƅЭPs qNVSE.)pD?h{߲݅fo4cs޿j;b-i0.W|{#焦i֏,a[ @e}νl =-u]$FPWm +$-sINC4# k„6y0y&SE$;rAY4N6bABnXźDд|̾ M(]:'5=4< ԫy C_1ĆU2|W1V0!g$ry8}0\|~Gyr|u;S'Do W#1Aui}6K- ł5D_S!mUk$w#`>ЅדB u6ʂ[ S@ZY,1゙%N/ڠF^ּ~-Qz5P-G*TC.QkF- Oj mv#Y2;EZͯi9-^ukB hzuB(CX<`1m`e:8=P-sd38/֢ǯp}RPA]drWUFC㭶UL9kKӞ2~ZiW9%Jl=|e{qa<#d&lkʌٰrوpJ$iXe [>q';*ɥNPGW6"$SscSeX Sy,0jNW(\dlLff"{U2o6'nX+oY#u ]THZfulDL45V^.?+v*_XKM؈3A.֯NBK(%BXт`?Ɩceckv1ZRɶonTȒ1 őe51ES 7 L&bk'Zp  D浶8@R ~ P;V޿|EE᭖4cCLhujV'kps_h!B*(O+ٯY;L f6Y!z^ >z=6P~U^rb4YSU,~ZX!Cdݠ P3_PI9`ILrϮ*Q0O1DﳜWn ޚ:!0|oMW^,at8z}Z3l8ZF1Ɔ s<1SY.Ah]eah`#0@gIf!W Ƶ&IHP /DY^EҮn4-Gi9tI0X+N+Pj[iÈFJ/hxP,ÛO;YUژ?lO;X#VyywU& C ߩ=PisIatb2e%fo(ѹttsTފ l"|Xum~^x:[VxrS.=rB~FX ~NLQNL ;ey'T"ۥI[(joJ9Wn2D>A)Hș]h4=,7BBm}Wħv&xCo`_Af". Wnv6-Q=/r^oeNfͨPVۍe+-Ok> m=Ad(!~a nGN`~[ U9ik1?^dbWxMY۲|I)f5g޹X# MV^l e2$1 ~ӕE3 &Տ9Hb#%ኊB0fLLB j=8>`oC= Rnka3{%R>0<>zdpaR#*zd&.5YҘe"*2!tM"L~jSq{=\M//W}/gjhIx@xmUJh E8l28Aqv@Ƃb#I4]h?4w` kpX#C O}c&8U'W=2` T%ܪH UuLOcExi6[#T#$էsﹸ;KD24NڟSlF_B\~Xv$|3 9rs=}wmslч.y%eGX ilT犅Qa<^^dê EB& EĮӣV'Щ&VF=BY߬ \$ltMp)j_J`2KW*!3e%4]ox[i|=cMmXhE۽ԻdYM*;u@2cyV!M4JjRE$:VEC><΄oBtʺԧ̴U ⴗ8W,MM \͜Ȳ{5>Snt*m~14X@>v GV!,Wprx7HbG3֥.ׁL(SjG\nxM8yM?# Q3XOn+(Y-e W d5 ͇=H'BW= 4ԙ-c\DLɛ贼ծ*|h쉸g%^bbN9Exx7Nwo+ğgbL2]ݾ<:; ǻJw]$AJ;HQ"s.J [ʅ#IC)<B/i$0RJt~Y4j{J(bh ٪'c3/E FU[AlJ'ho;\y4/x>eOZ&H-cٰlH]I|ƾl\='" U c5]Όó=VP=(- ,iXԣr _ND~ȍb %{APM^4$ItCwn52ńU'i?թ {6Ư6KVޔ-[ ޚoD cY&۾F>IeKl4C!ࢶ ^w`ۉ7>+lp֦-\vMywݨ<)#G 'r腻TES6k>斉=>-OmL]iuҜiScPi;=o=4e4Nou#ɚRV4[w;cTʟ˸a2/BXau5(oN6-F9߮{È4WyP:ktAe j`O>k\.`cdc7SjkZtBC+QG~p S*8&-[ϭXg-:#Z($UDlێĹtͥ'OT,srd 8f]1PcUMu) J]$^\&P~3USgwwyZt}2NWLN*k8-&?AyAU6 |\$1s|Uw.%^%aʷ9CTî0#Q](凴nqq~Qdl@;@LjySޒZuk?USbcА,xu R5|Gޣ$e5WdԯR0KivsDkrhFǓ](8wAQ`6ziul@NwΪXrM۲(d ld#Лݫ)l(А_RI3fi`/gX wqm|, {t <-:2]dd#^+l\(Buu Ur5)+1*ĝQo8 R(kh8,$JBptZ}M]/$\q@C}5߬.^te(e]w}rS(󋄊( 6KL(ɽ(j9F>c6w?hXF <""]tkТPR2vWr76J9[`}S!&y2hy;O[xǭOb\UN{ ֈ/~ZU|dޚ;h:"Cm <;P>)2<.0?al[w ~iܛ;&ӕ|4R醗7ƊKB+: G!W87cGeOF'm8 U 7-H.oY 1'2xdhms %hzq=ۖP9=÷ _Dz{<.*D d]?")]hӼX+%q9p*;1i/"lSHo;Ċ@dbsoA2 5p(xau (@ Ed5Z5Rɋnl6 \9ׅM.Iu .:L2=ZȓaF4: C%%獋:MP醧B).Wxx@ӯv-H]&Rd*V@1Z02}8m3g&ok, CQo\PW`li2Qx],OZ\Sh@ŧc9uF)P4H0/7Ũ@r ~t>T{{_BrVR R К5凫#؋(/EWR5;b(X@A< _|[{@ˠkFtJ 0Y@W9UB _)x3Q -is U,')yJkkDh8uTLWS|B\ڪ[wl}8!Ǔ WVD]u=K%RK&܀ͮ&vk֚M(b}BMS_M7WJjub`tM(>=td;M@ `=OQp%n޽lMz3m؎n76"Wk]F~<&36= >-^ώ|* M{qAȒx%R#23D266.&Wqۡ4U(_!qPza\9'mmsGT'LP\vxv Hx#D1y C: zxvu(kxɳ6Yz2iXk3B./$q9E֙^z&V!m+%Ab6nB~z^+f=CH S/g7FOic#AN_%e ®J32,m֧y%xNO jeK#wSau 02hJA,':E "O79 Jsm1Dd|hr!Smh5Ϋ|v7wCp>GȣoPYtp$:bAs"[ލV?[UO}K0obzno顀xzNac[+9,B%{ڮ])+,t") l3_$Ԅ!ߴ&/`\,7S)B78)|*/"e 'i8XNh4O1f♣2_\™~ ;%Uii3%~[-9ۜ ;5;?u?Z̭/';s`oʵ IBwP`ĝn]\r Cˊ%eV$%Gua$];4F;I(k=];oi H+HBLUQw}AZhhީF(Դ 8 lwDV-1}9?E$@)TuqwaHМ@ -9,`''ݩ1pWk#%zH_n_E ŁhLv'X22(*ՓhIi}4wl>օ1|\9c7Bdz)$ùj@DsTUt=ֹB5x[KA0H߬Q?(Pa@bq.匬Q!sC+xde,-u#-z(To1@N;"KL2.Iw{ P݌iJҔ͸}أj 85P %18z挚x-^7 %Y,/bNlUƄ J'A1N%l :V2&2mjp㦬ZsߋK]4xb~',Pb?y$c?`it&`Kr Cp-"jbL]"ұA3 Uiσ_Ek٩/{V~5 ~_MioAWjq)'RhcvrBtMIō`;c iN9US59 p4JacxޑrmRC47EpwrH *bpv[\m8AƣRO׸"UEYgfe++7~4spm)^ޱT_9o(VIjb[|KBH>E=.\z2ŧ{ xݝm7n3eC ^ GoGNJryvy9W3P% 8Wj8+~CM$%}i*aX^bD09  իG *>`c9/!X@PV6 ɝL*B_CXg;n{l׀/[tױ~QLN1ϩn,/%loT!~ԝVڠdI]'tmq +ڂ2L>݈nONG' BȲ$x]܎IR8A%2o]H7}LSuS \G06/'Mc^M؂2EFx`j#08o|Lnkib-)t>%bǤ+M7Su/aŵsoqGġ}b g>^9}`J⌏%&6כǠT&TUE@E$tqp`Q-h.?(,J-<_;7fF&z-+*:*izsyU ړ~+҇>0gvgEV(]6m28HYXclp):MB}='n8e^ҊAKof Vn-]D Ô,f-ͺkK?VMeʋ*$[_&P)f*v%,,X܉ƒ폿"!S [ط h Pc䤖&BPLU4nxkI~'36$pƈ%ya3*| &vҲ!9"<>÷wϳ; NKfz4bZ"|56V> oM = 7u- y:sB i%{Lg7?y}#54m+}>9O ʵSt "|Dc5MisUwc{T<1Rn7<.Kn$<\iWi[gD5L'LA`\u<L=D*K"X5Ԫ,oqdrso<6sctzwSK`6+|߅#@6*Z*!(/#!hQf#t?1g0!PNѨȝ U"Msm.NLꆭ>f%m=޼#xKEg]b ]©]&Bۆ8$ M]\B-2k LyWjʈԲ>kqj gUjD7%h1r)*egg2#TCF" #2>> [|\#JXE ;,ɏѵ@JLA\|S( )^Ea8R1][w)"B/36g29OS|zaOk_vA31&z "0jy JqO$K9^n+z㊬mf^+RTS-ïIGn`Ka[*EU C3"52A"tD0kӗIaT<-i`Bǻ4]⡓+_< _Vi2 RKϤ{!BuKĮVn/!Y\W6eq:XR *$Y vIف |5 [X@i.*~a涝9ø]w'K.ץ4 ݓH (S f>.gC7fSg35F zⓃ 5 XhLgBnԘ;^)ϋ޾aZ:P&_v,C}XW6ظ/: ΄}o\9dr\v';&DyA-CieJ2 bi3t Ft6AYqUό[ ɳnjL$4tTb\m3ˇAbXיΚp k %*L.X [yzVe1;TaeO3D3Y-c o3(r@XZ.|H{f#cxK+ҬX@WGG|w9(ڸ /OãU"NFL5[t>DW6%(''}`#wLPxj-}v)l̆wQ~lL/lY" oP(ͺՆrem<,iz+:䘻ǺevJD t:,k57+K/(:h= ]'alO_HRt +t ucoe,olutm5ivؔE~/ 6Po/!2k ɚMpպRQƹMra@\? pE m|)k_z\璹ScVM)$R ^}ܠ,+k+ >}XQ'Œ$*m LmyEMBDQ A8MjS,M #HڿUI,y+Wzpjx`a.w[Rk0@X13z`ɫ"uØ0_Y f:>-"O''̌K 9 B,JK2U5O8c^S.0nQϫH6Qxk[ѫ`;Peb)s]]U;9}S؆?Vt8joEVYŦ}v@ξOل+A4},3Xìyu)ڟ4JÊdɑ'wG"@uIp^z/ss>-M=;V}yw2u=~ ]=G#Of,EDv<_WYxӕ.O0 (d&ZzWGe(r>3E 40UI<; /X%Gi597OC3֦35`pV|Z~Ǒq80c>6{&PzzDb \b]dzMf^k9^ŵN"Hǔt/;+ЗIhyMQT1{,F&:c>Ъ0609`D%J'BwNcc…<( \Zh2qa$8 0}HnGm8KjpNo~i[{8 p()1[T|㽽e^I+hb^^j͈ ބJ0ҝD'nq ?NX}3@;-^Z}i-<#Y Wv;PMҍO$|lr3툘EP)n-7M ը$0JU쉒jY <1W8NxD𑮔X.k_(! *S\Kv=6>IpjL@QMpcUyI=d꨽6Qm E! c*Nj>s?CO[-b+Sr>EVh33Lc]d@0tAʫ>2M]2Vs: T4@vL+wӢEJ62Ae~)XfCO*̧p6U0'=0rRBqFr}aqp2At<=a^+%N0RY!I= ⡽gZ"=3F=mł *wC./['WuZnr3pdj_ͣrcL͗Ubgy t26Lޗ;*đGeCl$e(3ݺ[40bwr$~}͟s0OH_A1WI"0Fq/!Ǻ9U1LiT*wta]e3pM s\jw0u%=J-V6y =^k܎CƚHoqJ -Vs _&$o.sr 4R~ =VثBwk zŻ@S U 0Z6`,$d7st~j]=?48Mdlt>}F,#0 v]p{9BSyzxU Wytpn|7̡w@4w/Hr"1 @A 0 Y }#pe<'dkqK_=8MqL`1 iMod*L2Tx+%Ňsp^8s=$6m6G*g|P6﷪9ZAf5) ŀ ic8,v* pK]9,qb1ϡϑQ[u062A3sCEM>m%^RVem|FcFM'aX&"S=RpZW03۔Y`pP OjVmzZ$KJ=b)$Zgm)\XFݖEvlC%%!m+~* CccalZE}ע*RdO ]s/بnic+1j>%.dz=# I=ӣh55LqٕY h*Kդf5oT4~E|~& $giʋ_~`AO}?}(Q?5E [P)KcLͭ e~;H!JUKF]`MS약?WB2G&/?K/ƎBĴOz9S*'hC+!3ydG#Z¹,"_`Sn/qgOA䌆詘Ci@/7 hQm\Lg/o1fp[c6E3!Kǡ-sv"7˂Q?\TjT8 N;pM=KXVHSSS\݊I=ƍ [ '4w0KqJFi ;mHj'hXYxuu eۀ,ӈ8u~9ğ + >)i@FΫRWd6ڝsDLP?} l3K&ٵ٥$of БL2z=6ywq 7:KSͧvBet \K-`Z&Jq{&PDނ|!AX?G^9|"QHp6l! OdbED -a8a5oS yxi{3SbYUVuRV WD=L@߼m j-t@<Ǵ"8E\4]3JI˄#Q'l˙od=%)z' -f&alA#:(ِôZGh F&.^qlqpwE,E* yUumHcT^-~ g6 I=}8y$MH*銹IUR11w$/%Mx `5JE֊kHU[%!&;MA\/u"kujMZ+{to喏谻6aő k },DqY]@i\0tI|QB<QIps ]j;An+U\_N ._P cړD8],xmx۱z}BG1 2 pk=ݨ=DvbVA!c1/L 4N.*3a(F*O!6[5ӥ:zXj:|"$D˳u|Y&_l1BIn)% Jb4N۫3FpO`q!I)=vcOFC-^6rI\#c*~&I}ڙ0m5YWInB2<3Ź Z N "]֏C)BapdǝX@>o Ȓ܄Oʛ- Fõk""WQT}@TcU vs rR`78?#Cpc2?LA(Hz.WKByUi?_ʏ*恝+ms,*Zfm{;ܢn ջ=4JIV <>_}Gy1oRfbLKSx)8+!8FGsqĦ64҈8߭j )&eE@/xjy`AN.1Wc~;ӳ5m=2Ҿ3G.E(~xjKY|`ڝyǂ1\ t,d ̝2ӎ! T6 <˔  _֐8R,iѤCZ$<\ C4'o  Ʌо9!6B%ОijE-|-IK᝚ L(Xt%| (LfF^;^D0gҒ)} 4`c WG~ㄤ@YhU'b픬RٗnVm%YgQdEuPxWh(Ҷ* 8femz3@ ;{ڍ]׫yW[z3/̎PbEB\낻TreJCN3nHem@'/PïrNᘀh*(^li%RT^6H%ŨTጄnTbL_Xg+7u2zL/M疛DUo4C])iR<)xyl{y ԟ;*MN3pмJ>Z-̍/op%ghb{xCr0s\!@ks1<˴Y$<-Z*?,l wo7UZ>q 9UՠPة!8ꘒ9ԟxgpC[uoFy_S*[['qnu'Ús`Cd6G56|p5/hT(|efgus.apAA4wfgjjdXºZJ'#BwOe2Ɏ(\6*n^;c\y:XhX,nXokŲa;GTF<&27.ے.Ab&J}ɔ+pc.PRfOԦ3o: ۃm%Qb*ȓ< (~Go<@I^Uy܆y3ӄy:[gjnzmI[,hh‘s+m;+R\J}F: B2f!s ho+䴅 #Ijzs1l39d0f]g1 5J^0c8ryA!_d>o7GWYDf>-m z XXom+${w9(EO6_<8sQnuD s \.G<}rlOÇYhߠѐ0OݶPcXV{AG=ݮW.7'q?Rb@wyzP|qg Qᙠ8wTҼ>ea[k 9oe+*fnA.y[SN9ΩC=;|K')gM5 ȹ sg\~![{4˂$K"'kFkVi. '׶xB%9BreG#tCeΕ`Flr.|VdusSޜ2hiYuI'821)uu; u0k!؏V~*xuEݏ]Ϗ4FA d5lNJGc[AM~As,&BW<m*q -Ht`H":~} 2,Q~Z#JnX?X?(o7߁Ճynj}}<% 2o퍮X3S}E1ZX^~Gm: fN_ ".DHdqY ?y#Tɦ B8nLțHJhq"%xxDT侀hvLL,A dÆ]ȺA auL%Vk-^?c9@#%>ng? gf#%އ B:%axNn(ծt &8'v8寅h V` #Z ^=b[ܙ ~y-f<90.F] )bQ>PMhϛ]ʖkԓ\u,p {=U4Z%1gBO Qƈe(nmVr>5[Yh&ї7ܾbIMMLs`k V-8hB+4%qyaY=5sG pg) ^_!e`:VeZOtXJ XC%c#l0jK)j%0CAf&rxw^ev:Kk/e}ߙbqq>܂I;Ғ,Af3yS!Tkr„۰ƢE j_y e>2#[yQ^x  vlGĵј fC,᠎X;Y;5\=^u6en#r]FWY` l^{J3ʑGʷ%>O$驷V9 M[$R;TLEx4r6=9q xh>fѮ+a[/]v{"mZ!*SUUiL,N-UPb+tA+%5o6QY94('h>"pFh_8YIs$p҉%}LL-R2@f6/kSxӤz'ͳyErFUdPy~ IhfNvyVI htꋱb\Z=@L"}+h#z7]S>kl6|ztKG)ld S&9-7ٚO6VԓR#XL`upayCM>*o@"R?KTë@js+*ArlcE^ͻ2ù)z! 9bLk$\m~) &qhڋFs~j}DUbh ff}QsXt)BDJZ7l:[x~#wOCNvsJ'9;iRS]r%:?=A?_m  ֳE )v*} bw Qp4B3,d.0'Ə*M$ 9O&cDOkq1;x2B ,HFwkx>EbHZ̤ngӤ8-/wt0::4 ѪLts3=k`6y4pcU^ KQ<8GſFD!DOsw[HϞY tooHPKk|NjL(Pdvxq=VV?]"x,B/0&j\qɀ]HC[g2db]͛~{ ToW 9G&s}h1U+6bn˜.h 6{%+vub4 / |kہJC1vxCW⊤W»O:bKR0ٯ/|U\Q˃ Շq6)--X :xه&E+D?Z@8JyC71Y&tN|F:*doÐWͥe'\ثf}`Fu.L+n+\z4v^ U=vIK, pxHMZJם>[8an݇r()Po|J~3??am~W4%De+OAxk/9g|$Z -`͓ 4rb0xbca?vSSܼJLdW@`^a/=Mӱe/ !iep`LK;qќW3p8E{ j5/loB'$8M[ɒG烞Tq i]Kan"Ը~̑Y(q[Ns)BY+ҁ+n g\<3cpVg[UPK\Iz e ^ǘYF-ޡF|.MG/@Y/z~_;P#|Z(1Gз{N0b{ lzw0MxžAY+[)]&)R ,I<~BGYy 2|5hWK^˨P0QHwZhGRMq:/[O״ FcD2s.죏|dK J[?K >ke q0پ#[MaSNHc,(N^l@@Ƹ#+GA)`fw7A'$?סTHIcw>C?vA.oA=_++#Md9н:7.GXr1HKe,.=#,{`qNUQ81HNK'0yĽF@#9 M!cd| )t xOpL|pZEa2,elLwoYr}͸HYM9SA@uR.̙+0u ryxq>,cQ^= {PH^ddRJ Bޘvl7iۤK*ЭB1ރԅ@!C\ce@k_ư3H!q9q28dIϕKbJAN(S~(]j. sȶLn[~jwD s^3%.Q$du` :ܭˠaqF{p'r :rP/ /%q[XH/?C)qdF(@ͧIbA[iB7CUOygJӚ(Z0U>vWVQ)RD|hTi&EWq`39'ʵ9#96WvuLjrcq8z;w`f w^ HEk{k^} SW,)́v0LI_<"W)S;s'2tBƬj%c4cjsۄ`e%W|JץP맷.pԐ}Peh!r`_ۯ!k(i i9%~v<68J!{ 3D*ŴuOW>y!ͺ5D)p~펟26%>lK3zL}DB&^G6,/F` W-uip ;֣MBh|Ȗiy2%Z.lsoB9T)Z)p ƀk 5;9GH4]ųe\k. Ό@\~Fˎc) 7MiѡG R9>YRuO7RnoQ#C(.=h S*$3j:F&o5AЌT,T~$X-gHNyBA%@iDƘPM+ٔ0_! %8[!;5䛨GJ9Ibm5E^c:bx&K$uFNՕ+4xSˆi`I#묇ģm(5+Ԯ$hUr ^^N3h;"ZVZaڄBDh^ /[iʀ ] Dߔjk~ #`ş56yQlz]<cZEXj 6m%NFj&SH+O?,?CcwQ͠&ͩL; 42K6H9K6Lض]A\B͖5Yi{TU JȨ[d!05P>t`P2q ݼT-w{!=‚WԚ=ƁHC&p"/7D9q5haóEdR&[› 0;#@.*8"[ sVHT*g9MIkUQ\zs[ j(PYqT59 C>YO*iWWqj@)fE/>M@r@zX9 5s+,mZ=+_ zuRWiR\W2go-*lTB=,on;XxA6+LI]e @%"VYŐ5{:0K8-n(ۺDA5BK9 gvDȱX)Ӻ iaO^_.':iU_wNk=P5 R1wכ,)FvsF#s)5V]DsRaL>@E!CD.yAz.Ovj>XDr?7dž84@ODrINRRg`tW Ա@nnuNȷ˾ǺKȭ٪G0VI(CX9W;:/pDg䡃O5x)4x_@"28~/|3J;>B'@ٲZKDFS=N1ɣ8;> LC";o8hN56,ނf!Z9qoxϘQpBJ~3Xn$+}T߭k7 ilC -81j`HS{o"M:K$g[&^A GNQ'2/3V{+-LGj xvO޵o$?6 ȇ̙VcD hWS$4;dU^ y5A~#ѐH }5Z9Xt/<#HhCԚChkNA^vZ~D9%Xc^2x=_źhկEm!&lU *:۸@Ng{F\C1>Z~ ?͋ ~XUA5ú8ֹ*{ `CgpI5Z1F@vp_=%}LtmAYN{5UѠXsAz~k阽/D_y3} :h2ZWE j6$,?_%0b痌'*sь=7RbB54d؏'F DHZLrz ɲ[bV=mW69]*DL9^_ړ.ܪ+t fgJq[Z83$MHE] b,;jF%gY+`qyL({{0y ƸTI_J cIʬZ' RdTa縟Q~9U*} 6Za8Q@Ɗ ?u$bpebƐchz c&SNoI.b{ l%;xnN G! 2Dfѹ(6IG>KcD 11#oNB2]M,h"['&7cՓ'܃ OP0|Vc <Κ W!њJ6\JbtQ!#:(<ѓTG۹ȭjAuA! I> ˖ؗH7t3 4q}Bb>QkzBz% rCrX8(J&uKxP|4K(P`U(ԅLY?πj֑ɶf{Rϊz ci!_ }ؖƻ96#au yh!kN4o{`9r똒FXZ#9Q邊|Od"^AA3C?m@sO/ 3lβ3'(x'n IJ ٹ\s0$ 32B1"IO(xd mi/wx13 i-hߧer"nwDP5ȵu/rG{=.7+]3ZaV`B7|?l(HgX^o,GI&HZU'a?Ii͘4kGKu2J&I2 OHv`T2jMv5euB7"Kj|!1i9>^B9zS,41qP* G8vepK>C*,% )t a-I̢#6 K%A _g>%Dc(Y*ABk--2rt([:݄Bcpk%w ZI9TPwu<-IyINFZ cLℒ(ASDԯKS #.TtcVD;f?ZQ < nܯFU$>r]#~k^-Ɛ)D{%KM{gV݁{CI 3z,r cgk`$W=?Z&؈cǭOk`8Ǡ.Y!m('l?)+DS:t#ta6A}Z;aA(Nvy]k–[z7[; pK urߤCϗrwT!I.$W%[ -Z(Rjy0&mZ>lnf1)}羣x {b?IbzNv3<^Jyp#%+y {Wv3Cu*p%7J`ߤ]@zE~$D!8 +Bζ=船8]Rp3w`IHpGlfS4c_f`QoVtكRd?)j\^]:^<>0|Hd'U`3a dJc9uXe . =d孮,y%[dO#}Ň&:kzrLz% X[/t3ԧs5E࿾@21OGKdLIne;tvK``i4P95ea"K2Q7J44H~Y#:!{[Uufq䨞hڂ WB XJ3)$[d7wiڠd5qó=,$6hepe@)\OhB뵗S}+&-q,S?#s,YGK x4_v._;e=e0:9rj*(}QF^[gpPe \)aTbz(%_ke \+N`:>. ʾBZ߰x*ik3 X\}!CW ,_ݐriWF(m8^€Ի~ 9F$QpRѯ.b#_3`W)mTє\ihPɘے5<_yHVܺF%ZL8KU{+}i.ѝ!͉Li`pKܢXa[`f k횡 4 dBx}0z+k"[qMl8*Z?MOC$we lK/Q{u&M63pJ*hԋJQ?uA2b4(u Nqs^[rGpׂ}HmΆϛQɂid +8-B"w v:2uVaH#Tw*_p {P0 B&8cHa*aN;Y6 ى$L[K/=BI NrAasR˾]VQ*arG56%[Oj?߾+1P n2tK09%ҷ>)՛I.bg `SF]f|Aٚ#8BghCL\8p Nr@vGZ} < 7sjeځC $o #%raFg;flnJRk͈\tLIPeAR5ܐk dQQ&}kt@$^a o?A#m$lA)RCn`ܐBL}ܗܖJeT :ۯblgͭpINhj,9[wPglgG_S~b0î2"6-J(d@Z.zM1GI5%O)+70n/KxFbZMr~Dp likv%"Ĵ xR.F?qn!J00 [J&ђlGAYhnprMҘfG/2[굄|^MQUfJJbɅt!F:{ 2UR~촜}mS&t6 dkx;K3ꔈ8LSpv,*?0́(AFnz7莳(p1T97dF9\7TQIJt*F(/~n(Huݏ (ǧwlV:SdtCr4hEHU__&ybgyD89+ Rjv5.Fp< RR?褣N81/˻RB R:Gӯ*X^q^l>@Y%lTI>l^'ztafP5ioxtvf}cX>miR@$i@k}jTpZW0HB3?:w$i^=.ƭ6gPgx%hB+?\.$_ŇrgKy)+Bkgj|ě=EVNhs<`L)T^65dYyl*X&t 'c8+,0bVK>qɫrCV'~Wd!7Zd!u8 %qdM˒0+cREt?ˈ2C8nQ`& lISMwm$oqzƪFyKD1G c%lX} ǧ|+/Fx%ܸѵvsIZ*[]݇ -dt 䨑p'M4{T^w&I*wLڣB9C /07,O„M  )A@e+]jAS'p mNaذ7 s+8my#βQELg)А.ó2sxy:`{^h:M6M&FD엂]j0^bV2M>lDˊ?30ߵ.=-Rˈ(EѼFFqZ``<h0(m](qaf_Yp].YǪ\.l-/2A^QW;!ʔew4 ʷ%C/iȖ#4*jVig쵩Z(t;iSc+B) ĹF@㌃r:j"d Wu\蕻9>Q,^knnuCjQ /:yj[ p{h> /7e &50֝GO.=x^@Bwb]w ^s,ë!CW`ҧ-g|qPcg)<\Z ёV;i9^4ar-Vƅ4 K'8VN{(Hx{^hI">}qIYcv".+ 9L (s:TkZ+hoFQx*h|Ucmԑւ85L5:u bs,:FI r8Kvp |+"k >wOC [ AU,rp¤yPTtXMK6~Vߔ֣+}t՗s?eJJ3i1j]",#҈EsHLf)”XŰ'Μlޟ٦z%QX‰poJsH|:UbVGSW);'s(U-f"HT%w Q ҆m)6lb_Tynu% 2nJv .>er!cablcc1uHpط؟5eeO&j %ڢ%Мv&p0y-kpS{Hz;A"Z;Q=}NyIt/>n̰_:&]}vʌCoGGOZ>8!/Ypu3MB{uuNQLV` 19J|kUf1wOZ1x{MP " /g{·#p8oJ pͨJ}j]EyFt6;{?SGw"ވH#F|C(lm| ٰ!W'T_rf 넸_MvكԘIХJ7Mz}#=Jr~t\k7ۨ65Zwr N+[:j򋓻aL`ˎJy@yj8S= 5 +tZFt ku|R3_bXZYK/j:V /Ql钬a\fYu|5c7UD nF=œR8瞭CvY06W$=\mBx~X9!;"}*8lЭ  x<ŵT]Zȶc6 ?Vrm'ށ&d$$;ZAsUb0OVb޷G#Ľ׃T8mK(̄5|\sHxW(8kH"GAmR" P4?6P6%˕aEExYz;F|d=i<` sC!QMV^+?JuC=i]ĚdTXL w+=$!elSrvGUˀ\:TDؐ]x}@&$ɻ?m &mIH~t җ",:cz% S35Z1ҀffCkI nu"!ޚnvDDU*H>l`!̖Fd+=WDIM[00w0=V.g>nbQ7-[9: Sdo_M6ojd05Hyx/mBPJftNڅo Y 5YmBd (T6 F{MLѽGOUj- KXʦJܯ?gFm{zN t(i[6F~Dt*uЊ!}*\Fm$,|P-`Ϙm=K|n@XMG|rAfትcjr, mk\&?b<>®j pAqCxd#u㔨p%)[ vh:Nib[J+e_I%|5֓ *ZdlTFor{R4o[#[Χe!0( G[Ck1ʜLMg}Vr $.ݕZ(>Ҧ~6 HAAd([Ae4^[M0Is&AERW|U߯+<Ÿ٩|oim[3 @N[ XCK:=DXh1N/g)- 20q]^0=<),pNL=y|^m'avj0i uS}x»nqTN&á%X g6/#x '4[+t(Mkd?Jzf +|'1] T{ Uh3j3pyž -gĊle8g^Darzp](,&VyNCG 5MDCm(8>1 T!qy$GJ,Zٽ <,HPsFmq6ϛ!Dm ZY澜Tᭊ?tZ4ZBl1&j0Z Y&m< g8dwNȘ{,1=H!'[ dȅ qM"Bj7u]qKG+֯Oq8nQ|U\'PC oM`|3|dBsW|K| L74F Y.iMefY=FB/oWyʁ/Yea%gI:ժ\A r,E+GJ=??z>rX\chƷgިmx)@hBYɝ}|o ^mrǦ˪􅹴Ye(6tTՇ$Ҿ=ރj}ܾ)>_aЏ~0uK#vfgʘQ0)_Ja䀁ؐ10:'8DRN6U$E/!5ZT^t'Ү ^F2̉e A O,'WwZ#!WWX gt\fG7ePv BptI۸;=@+ͤZ}xY./5^(euk*&[o\L۠ͯ į-jp̞jŕF2at{M܉2PKKI ( Վ½!W-e^jl3Yc? qWqRz1|d,}63^ikZ(\{{Kyg'P6hrW` )bUFk#=ia!x VSֶ֕G/j_68 ?%in(eulۯʂ!CYZ-+r!Y~hvĸB=HĢG2/h _.Y'U=#-2'n@̦u1ƒ%7%M%1Z;a߉jZ; ;AT6']z 3BAZ# Kb:qY ?O{d, ;$]n6x9rE}A{ 1pjX&~Byˏs#idl]MG#.:3N7"6EM\4a"77 Ma]60"ʼec΃Z|gᙠW%7 Բc7# x&բD6kdOz'f|5ڀ,j_[l$ 0 T%}gtMc`̥n3hW..5mo'Tā ;}n:@l!.VdSN-#ʗ7nV&QpB.@}F'| ]dC=]]1|5>O0/؛vc]YM)"ėh(}^oVmC=W `D۾"x=w͋1WV&팟x~Z<1\K޿~`MtϛNv}}Ihk][ ED/=e~[En&_uxAB߆+ 9 SMU3)nwqwvȸ.Eq.ҳ$f2GXJ1,2%mZ <.H,]BM5DcgP;P n,^he:Pg^nDSUcVqV,cSz%8=>0/$Sjj;K&)}*̈́HE|bE$ E-RyD#XJ `&|.YRM7$c:֦y9(.I* FBRi1ڸK\Y#k lrz#)TrA&ub+$k0">ʚh*BXڠ؂tǵ2jPHܹ;}.`6U|=A`vnb`7>^}zȇ$jp(GRa&pFaS ij?`ȫ:ֹ NfdpWqCɀ :ǵ9mrγ=(e#Cm/Ēd %֩߂7l0fd Fy1eas&^mƎeA>+b?AD,]@pKwx h 7AU}t+.8} ظ5 #UY;lHf^BA3,mU`/=zXQP@)/: GU 113 y-3m{M4eT130PxDI׃rP]1M]Nuȍn_R\|bKܸAzE4L^QJh$ ]]gZHa惴Qb?:m-U h P"(|a=|3c=B^Z!Šj2>[o–!ecj!wl][H8 Pr%g$u#hRGLNlc)CsbXrL*>%=Վ6 rZ#T7VXEI)PUo IG'9216c19wkWy3p?MWZ="PH Ы|ޯd.섾\b-1@ٔiemh&3建آߓ""nˡZ NJ1≑݂8vKF-C*U7$9Q#,_f=I uOS2db%ecAMrv[o)uwaHxH55HeFؓ8 }g+FBnWLl謹xwA+ZW}rBӂC,rdW+270ǷVi1eN8G6SEx0xK^aEٓl<a}uwI{_?֌?~z _˓g:-\*7g 䵰ٲd_[€ Rjl/ȑGd:ձb?i['Y;=ogVQP b6pK;䛜9ܠqT"w„G"cӥC^5Vn&euNffVR^[% sҶIM='" @O}@A_)#[ y -leVeYiB!LW($13V1xt^نfD;'ݿY@k&211[b{+h0?|cnQӞI8IC@51TrۛN5 ~N^X|a&ƴQfIi56:" 7dr\:d(ȧB⇲irlK *SMm_HoHaѾOIJW<#g% !]ܯݑ(2f!$oT%dk:6G4 ɛG+ hRNC31hT4HM.0C4LK^9l1JV 3c1chp[s=e(_mX/7aK?BӔK̮˷iTf [mo}hT&mz+DnKVdq_9GsÖ́6 iN~<hAE"24%}~Go5/&( jsoz Vҟqpɭǂ=bm0\ܨlxsYG̿vb~ZC+s^ڌxݮod'|[T p7/_y., _Y6sM**}I|UΖP]qT!Sf Ҋ Q{.)uh0CAbeKUҦ7DA۔}8 EfR[ їHYP :>pW9:JJ0D C\~SAN}' f'D(:v`C(DN]0Z7d PI1)]YrW 0o; 꽂/9!~m N.Wg ̵5Hs[`aY4~*(|c8587z 784ܹMj_5}$Fͻ2ǧyLsV 7 ^큷j׽rM? #?)QůI.Gz]a@DL|Zds){>Yv ߝ(\^xubƊ6%?KV!t`"9K &)BA1OHi?ɮH$k9i)u`–2'}ک I2٠SK}r O"h͞O04 EvgoX,[7s;Z7۬'q -ٱ87S!'FQ wVcԌe0 hg+;&9 ]rReװ"[t+IGbU. ]D<6oʫ tfXZS9Afe6 DC&~|3ȒeAcp|Nk!TaUfdh*&VIMyd `ZY3(5VqDrF@M6* BF.LM%@eotZyV *%cU?!H~#ޱoTϕN02ú@ Y {q7mOَߤ\гԼ/$t1n6-UmLHPPb~bwA[M#)r9d|~G0U 8fbywvۣ** s?5J1r=?P%UGzX% @ L71*Q 'iVz| `IF+w]({])j .B1RvAzhO ]J_DX~vbgx5 v:V0GZZaI;Q =e[A$oȦCƋ] u=5b8~IGH5ɑ|$&k 3rW۞茁v_1upԏCJ2}viYYy7f_[ilF"Q}vlplYiX&#YbV۾pN2Zes4 5yp#R-Fa a51Lǎ)'E{bRC+j5f#s4Kd[Mw `85QqqGQBJ&(e7y'v,.7ߍ`lqGΡlΣFV`í]gk_>GY T';j|`1/o,1Fte!A2e>ɔg3)L0G=R نsϿ4Sxj S?T H3\LOۧ{qs>ن݉p ?/~ PTf8$ԣzk]bo33+ `5l鄡5]Ƞ _ ]vh=\dž43 o;+ޚުVWECCCT1 iwƻ0YI~ڲDJђXq ⤕4R' l𬕂6$; \cᯝe=E(qu<sJI! ><QYբ ^9P`Fh%Q&$HY5n\ZDy.ntrDP<1Ea:̺/^ѡ?E KuSD~k95領PTc;~ 55)i< ,ǫ;vuB'4J4'0LqiҺ~ L~ -f!Ef|^ Ϊe@v.tӈ$!'΄{Ѯ RĪ (gcMi͟123CRr%77+y3T9+O3YɇRv>:[8η4G0G<` =NkVf[ٯčɰ4K")fӏgsh`n%*\eX16TQ`LJFgo)-¯ E=封!MR} X!DDVbwkzjʘ1NM`y1U}s1TGGw0 T@YJ|s^> 0N4Y όdӷZv ?( beݦ/cp/}IBu?\(;B^ʦ7Ȯizjx BB[if6ZG0;m!Onf!k9ղ) #xZpĤ9QhSf­/LN}: xVn@jS^bfF<'@gOdxt1Z^"SFo,v->wsb-O~8!_Ɇ>hQd1=o<юpvJ0.) K"5IÌUo2G%J,7P xY=zxڍ\L@\~MxzN ϱu8h?FAG61WiN$]5quҮAcO Ɉu:OA?V8%jsHp!yQērz.ɧ/݅όZ1|4X\hs:6lJ?%}Nۢwf;:kY46ܢ<;bIdeL"|Q%sI#:; 'UPfҬB(wߛ#DQʏ&הrEZdMS_Fs/e0s)f9Vqkp(_OHB>({F-rbuIrm[dH|VaNIJ(Et"oDC'2n^ZQG藊q%!f2>ؠbD12'L lq;PuƻB΄0]&@uiKҠQm !u tq\)Mмf\E&4:xs\EvFh6DF#u&NTz)TejdT#yJDioc37v6hm&ayZ f=ll1Egbh%$NO[aMR^>ָQ,.kTωI"o'1Xb<_~y\,Xjxx^1]x?9A \ #zm /g=TDIݵb&qE:[Ɂk%qF˥:ސсH$msayXd+< ˂I WN4W([_uDž/ѐܖz( ˱2)7ϳ4/iTgw 8ʿ*+9Ņz#YeQ/4{q@IWh$C(Z|P$Qy9p7H$QC^$BeڸԊ6*p)Tqg]a]Krw0L 1ѸIR@tscph RU"/IZ{S.YIMspPTT*%#-l0T1܋B &BvX`rYPTYh0M^sC:ϱ8+Hu a4~{BW͠3ه|b0 ro ۏ:zLzIL, _j8E5BFv0@l*\ոuM󿫼!{jsml8] 6 IpM|1)xs@&Έ=&x'`X!;UJDj`nted'|HqI=MR-|7$tZYȮwɫ$Lǿm0GP A$jX s4@"&7SdjS`B,"sJ';z K՝'$&3/1ǣLI ƋQnMV>gpiF}eodg i .uK.NN_󠻝G ࠶bU['ks/Y҈ g@y]Jd,T~GXU0ׇ-~B@Yn0r╻#ׅNqشdr֋j:Fy_ ?$ jq0yLr+H2ih3.fJF.zfQr;dDşV>SylUaG'ɲ5AcKٕ 4gJsz*z f#mRAUL!p 3,>R5y$^Q8iPN"ƥ =!HF|, ׉{Hٝ&Wly+P}kZOG⒆Xez]'3*o~Ȳ]0_QAHABz wa. [w!( ^e2_bfȘ·\—-[>] Zd ]㸐]OK]6ogNږQl1kN6"~ik \|}u@%-!Ӄ:eŘX g#'0Cn+̱yaX&R<_8 ,}6k:5~2p_ ,Ɉ!r:72A6#; +z 0g0Zt?ݱBTsA^Ywh2[z͟A ҬN+!k׿ \Y HÊ3Ň9/]bp(xVLxӳc闆Z#6gkd x ϔ?)!jhAOHvZ;Sr=;xz9Bp(全: eN.1 Zk=qO{S04P@g3s*ACo[fflBIZA SwPԢT oKf+JQ]eo>[Po'UIGᚁz6h7rZ`K*s֊ ?bZ_ڋԀ{Tn  _A:.Y\p88BD3~6&2针Rme>5G(|ǯNj:Y P('z2 .EQnR&|~Q+u' OL)5Qs6K'e i\DuR[I J"fdq3JKb,ښa9L` ZwQ2$hxi ~@`- }M20b+S}3/;?y:[s9NgGޅa b_~/Pd5|&h߶7.Ңpv|B +'cJehBY&!>gbY3`C U>8aixz|hXg҇L~@&]TWjDЗPֿ^#i}T4+OToWn29јz.')`0gyOIZO4hfJjTwK 't6 )+< 4 6P7@]qT4|%w6cK[MkPlbfTv8'\@08N=V$m25׌D,-3\g 8o@dc!xCdFTq^PVdޘ 5"}M ?*H4$Bݸ Xlږ:ƨBݪԢ~>F>]6L 1LsBgr-K/o$Qe^\IPޅX={G\ێԻ|ȣpE'34E5 +d (uT~vBu}+R ;*%A ܑk R;2yVBc(&k:;Y聞| l@AeuPn%Z)$c3^CH ByҖZ[.ڠ=_Oڝ(Zv3Y~/QȔJZ;0p`&pL(dthv_2khLOޥS~b6Cye;iRSa?&-Xв'q|Y?mm9ޕ>;rWךBߟ9rEEA.L##A&9QSO9{Ou#~hu+a^:,*NsySEwB*qi&wEjQ9TʵNW{"Xf+E 'ijy GsT}c[{:vn!RXɛ# JBs2[_)NG6')gw=V yvϒ|)'w FZ"3y.sm1RT#.,CW`k]D֜WĈnrPVw+-a;Dؤ`:On .ePMNȲvf Lggv~֮PR+NƩ]|34K;e1 V/ %KhźۣCaؓf (銗7ϳ̳l_? ",G&Ye5 Sӕ.vх7$q+v( &kak+DtJ7Wŵh4IjeYK4R-747{Ȱsm1 zAG OhvGLouRF*VۭԜRu]r-?RJ|#(H;gLg)K.~.bimX9p,gcKx8Q+Kb$O㾍جB ҏZXKsa4,R 5H2-K.*Y"IXmnGF_R &8W5 ~yC C2$c[NDA}I=qcGYBg(`J]b׻T@;WaSd9Q=UÅȌLYp'x(!c.T8WQ8^͟dT^JfO3 uurTC}5*|>|aiv d*0(:*~kh~"kOԥ /tr3e:p6P0 4;s YÜ/[z1[El4וһuJ'aW8=l:`%*h^_]Oⷋ"!I:x9A#m7B 'BC ʲ<IL[1L`Am߯C}j'V$4 `Tf3+äSU]juhW%_`#H SgW~DW'q 䀥CK1_I[(DO+kuvƘIaG |PŞmJm{.q[WJ2bV56_)B3W^?糧Q-SNLuN<э.+PXy,Ԅ:9I}2:') Q}N1ఇevq B5ɳ*x9* hMJκPp"цbcEK{5ZJMۢiCYɛ,^ԉ ,df g$mqb+Q`2BnecKPy40-|=s@}@čɻ=_a1AyM;0so|+fy7 9ӻtB?+WĘP3JɒiuR [rEn dIJӭحDX'x]9ݨW{#)i}`m<5@JFYbw??GQsiBEn!sad+$V[<2Wōe]i\lNI kG>*Y0˼U˽jy`sĘv Aiü;Э_eRmf~5.2V%iYeKYrH+N#1o`sE4s~1u돬iQ:76a"쁛)!!n?d;V2ľPoQ8[.xif\om脦`wIzz.u {c^!X/=v 0[4G:ր4 0Cg\ȿنt\~ApbwokBA)m sctPAA! 1Ϩo, mLMNQud٫+ĭyDgU:iT;rrCI4*V$+p}ŭjcw%#}KMͫBog5O)` 0޳"ciQ3*UjN̡+CL`^K=&/[i6)bU4iƻ 4z~Zu7p;auh hN6D06jǺSb ȬMb"\\B2^BlQ̚xTRZ`T{!qB,Ҭٰ9S|ʥ/J]-p6VP:)$>R8Yibc{C8>BJ닰?«/"N>LU 8 η uCv+C"7F{$;ƲݘeW5v*Mh{+Y&L릝ec`푽-ΨSm7 ąPM[M [K'g(Cqp7c9a\}.wQ5'_,`airdKf%D~XiXYAA~t{pn?CuTSqř㾮jsG+;G$Ǭ,bRŦx7Fù9;%Fhu]8e]61zz]Y$aQ_B-kn4Rj{O>1{ R-{DD,b,۶Hu>}'padSU$kmT-cdu!nEN/O_j[dUam%a(~Q$w-&n +鼑 >\sCHGpl苋t$J4 ͬzJl=x)~áE44niTu?"R Yu7##ЃWt$QNYu|l2VU/3TMםHw5} [dz(_`} dYz_c̞'oEzL=.  F}Dq|%yJwսDg̎|ohTY,i*~@V|{b0y=VBLHW*#|`y p̈́?z(:-Q5Bca|֕P {/2h7#(ARYL ӕ޽6]잱aUlloA4iAM,IUXiL$3cS\\`vrRz\e:E0<|22ٞx9]ktXmT#aYφ ߬-+f]q(|+G_)I&͛L 1^}^M ?.sSCu[M}?6f՚o0e%v2 +#*6ChFjzB@@Jto^R)@taIdP Mq\4ˊ0gZw ${TK`T*Wpξ5zOe]۷iK\f A.36pv߁hH=q: D'A#YvÏ.GcijtWj׬F!DC?28./\+[+SNkyKDCnnV  fZ KV+O=Pz&Keݾ6 t \ע2 1-3~v,]=hjzd*QJ-Ti$)tVlb^0Ֆ MϽv&F5 8vե¨"*ꥆޅvaMGʶ7&K>?t7DIOiB"@!! S)V;g oc?5,.ݺ{ )=8V Z]|o4bܔ f f4nt\\(:˨Ͻɭ{nC*2~VHd1 X%3os]"۱#f`]NBtNTo:'ǷxtpL)|60c%&/3ȞO XhB :mʽ į ,4xά*\ kCHՆVozrn5*TuNgvCo\0`Z:(WZ3b;le@c;<{91w4`F I7'poExxm 巾_Jc2ۼ2YIkghj8y?i7$&ā#LjN&tDE-Nsӎic>TbT4mGD@NZ0[M\{~t x  nIjǿpL3C1[I#OxgL^ bʊzRnlUXo B%5["]f H,j^{ kܦğ.ON$P(3N}4rh~BnTwFX2*sͯUՌ) 5cXA2Y=E.93LyA'[ie! Nú_TM]kT"V*N_~#Ԝll TxlbH?p(2(\U³dlc~P>Y Kou0 ;=B!kAdI݇.'44*ED0U:ͮ`arsb͏^3zDW⦯l 6VIV~1>ogIl6!٩bDd}s˓n fhi<(\ $ZB%xd?m+A#P7VW\&Ǔs@ q3E8Yֵ*=KGab/鸞E\y )'"BXa҂^Ӥ=tDK鉺Msz/p\ٱ!R tO4y8eǒx0Iaf`Wgϼy3o Ok p V~L$#W~D5D]W"%67SF+YViSf(pŠre VHL xոÄZBc21ؽ%`Rט 䪲O9Gys);#I<)Y7/}kwȶ4IR 乖9ZqUv+HHl,\rV]=LۭRCɎE.aXƔ\:1U!zfiF}T%g4חf$s^z?R v Lq'?FM'j߷B@}yM4QVw [8hpaJLLdTXkϜ jryj`o+߈A%$tw#%a>vh{ v 'B/SŘbs.xTAPxLUa ?F؄jBt |="< 1SshWǗ6CX)zyw-sm)Vəmv8ֱ۠ PAfHZO?.G_{8V@Iuj9WÚ nV-YDAEիLlfVpWm} ϝi~qfؗ%'4cDKy ԧ-^@!¡bJE cmg8 rZ )Jz R/Σfr ,.7Qu*4}r"P,$a4PSv V6o*txar1u;ya;U3P{ /~8̈́^%С[y-%6kwG4t/?|!j3a`?";ߚ?VNQar!f^P_3n!.bfA`g#V]nE:ٺs5 n![zJ5ڠ(['> {i<^P/l4hUgL|ϑ&(|F9y7*YIov oP>$=rxK@Lp{U{Q CŎ󖶧qm$t7ֻߐU6g:/!ιNmYU=' \ER2v^1!`ADYuw^ p \5H?:yUV? d.x嬎[whz62$w}I4hcp46zq҄~{-îSQ: V,Q!1YG,zm -`F֦ ?m}RY< 8<%qz Nkxz1M*anװl|,Bm;~2Ư8k&iX\}2>9|xQ0-łu1(˻1~H>*|~C VK8B^P])QNS{:TE 7%rq)$qGu,CF2ĽzE@u%AyIlb.ǘĤ(v+LDFb4BQ0; ETƋlmmT3VA5JFx=U@7#nrdɷ!M.ű56h/gnbǶ|Bj>[u3vH F& @1o ]:di|?&5#|fdrPΫ)D( L]Qc|_WYHJNh5 /z?sLAEfuOj2G4Y\_g2hitp$Ͼ/xWisaW76Ms3T<8E]esP hD?dOu W•25 J*xKY}>(Ai@k>@q?&TZIHՁX\Y| X"/_A`#g2 CҘQFkH/p F ;Mf8'mp I#22Tgٲg$^-# QPڵ Y R2cz}/Ef{)s3*Q3i$H禴&+Ox1*oG v2Js.F+ &mQL⅜γI˻F;OSGy@޺ I,~N4}b&j脩p:NSgkD3ՠ?í[שFvΥC4k1y*HE!&4xM4.?iيnzBޡiԾфygZK2fl kT Bw|#ȶ80qEc؁o_C5hon'i'lֈ^ý!Zt$1d Rp tkmrILJg BSMʚwQ[1/FK:0ts|Vu$Q^U:A^>r|\%-Շ-5)1Rk Teb]!O,~xS L.U Ǥm|yiOI;vw5,x(+BVe$ ̇%^-@ 3P?,E%W4XWCW&Qa5h-q\&4>/,f qSBODKfi42{MZ=;Txw `PCB"ӓ~\\ Ys)b*& #5\5m|Z t5a"['OUG 4nt.K|-`{&"RG;X*7$ R]Y;Ch1QO7A{نS}.NgENll OFn9%eC3&R( z[!hy1(]Ri M}2eA>UQxi´ GMv tDh"ЋD|sfVN~ & Pxr9[-xSWYKPwH0(m sgg;d* ݩ dK}$tέyiRD5 w"ci# '.K*&]UoD )oqe&$8Xը+D(O].Mʀ%~ !͆/{s6w6eTqDJi^ PEV\ !`"ܪ zOK)؆QWF؞\cJHG20_PjdWnFQ/)rm7w<1l\+4?"9grhjx.g:԰DP5 . +kGVkYu2Ih3ݟڄm6<**Ϳ%g)Jxy-]_6,"gvr=WV cѾ4 u1cոq&@C3Q.R_ [,N1$やcl6~݃)wTմ:R6UT2>?G% [7k !juKe&^8k 3I%qrᏩ#+9)|Y_6}]RS1;e77B8ApBNjB,ͬr>4+)Y~^LO\Ȯ~NP3:!-m߽PJa O{_%;$;d A<DŽД&VVKW0ioB,3Df7}sgd'%`:rHǥh{ufX"U gH "T"z(#)M"nU'M羜^C^ n:R>AÈTKuMahS>Փw!+3WVI 1Q7f[t!bŘ?g/uA`B0V~4Tr )0c)V)!uh!}<8~o9ǹ @8]n'&hKLR %,|N d_lȽ7]bGdj11Rx)>c#H8_D)?"0hZz(׉u0S7kuDڀ60{d9T Wxt$,eP`FMnM>fϛXY˂A[7QgqQy$W[hQ.hCpBiu`ڣ%< 2R/ie?x%[opQI([cY.759.b b j5 4_`Ë26,Ci%*@N)NI‘ 'jN^Ưr3Qwre)]l)^'FHgj[߉][p$ {<%Z &0)[P>S`,[$5!U3\T~C N!ӝJᛛUj)ΠhL6k NQ$w(t3iUepDck{ 1gE[DeFm1VUֵ{O:La2Tbp.vaXU#y= ٓ@`p|T &ǩYhl4047z'Ӯ8s@qnKK8pݒ=O䅿+uO[M;P+nゟ*7y&"y uĔcBDwq~_7U1EEPQNarEʈ(c ɇh^s ގNEݲv Ra(NfYd|yKy"βk9]q43##] kSQI(u{nre\9VaCc6Z#Z- DoMЂ%w%QydP;?2ovN hi #hI\U'X;q/Xx=zT̖Evzc?OEcSɇQ['bB䣺q:6iw#xԓt6,CUAO_Ҕ 4uT> _f"m`7DqT+I;<0*rkUff:6!@@֦z0o͙ڲIDxM' =]C{`aGK4 + iGe ؤ2\R-/OLʹz{yn+16F(RYtC:iY`'aIa.q\afH͡%)0A3cј_/0653{%oTT6 FY)iA#죀zNQ]z<&ۇ7ʸB.͚lڦ}c?>5= !%@Q ʼLFw9zhFĨU{2ْVidc1!H%~BN;lp Di4(:ځs]CClDosϣYZ+Ϭ-G?ڥhzk_]%m~V{=ilSLQJ&cAtmN(Vbm:\.(7iۭ#)Ik{2^@}bJ6̞$];cBB6;n bPF¢"09I  fkqeOE2Fv1r 5wSWT+ ֆ5SiX> f\"\.aziM9&Ü*L[`ȅ/[Lg˟RNbAdZUhjUG$[~r>. a# ̃MSe'>r g. ݚJݶ7PBs,z蜫֯l d=uMucU_2f96}:z҂{@^G5 \s_Gt(f&$o?Q{1+9*lnD/]QWPa..Y%I?nF-O1 d]V+OWKב7d@Jgb̦X nWxU~EQncnԕtVg]LZ\'9(ٍ#^yf#|,;4*y)eqAVx8)uƲ\"fMh>jgز 1<BG?N)GߟP7UP]IE g+9jT&R8މfcD3xT]OZsbsCjkW[&Uс %ffF+glb j r[!h-W1fTf (2,DLN΂iMW.62AN0/ 1&qwܦ_s9#W7&qBllj典K︞os)dۈzC0C@{ s~f1 NK:s vY e ;c|!Eex֔8! Fm,"{BFP:iXA$ #6}d1(HuM6.[1XK6hzm ` U\!mX RƋ6.V/ mmaXU3f{q41%!GYTrִW9ʁ93 ~C^9d&MnTR2]ZF}yInËS)"(DWڕnz hz MnLQxń]L@+Lp74f#C%y#IqJ>cAY[=QŐ+h=cU{X,_b䲶Ac6#DSANa%\ݫ [_gtNY(DW$OZ:=S;݁q豘V=D o6` gdV)ekk2= +L~`z@498bC[pG,-5$NXu&oD5h5z: A `G7}i 8]@ʼn|c' ^ȇ+ZYH[60 |83+$Uń>U"e_F{cݽ.T=Oiv5?-U uykZع]I3EҼoX:}@M-*`^{Č،AQ-m|w4ulE@O#תɼ'o  -OXPV1l2)B{QM .6&8+1kG[2t/vKo^iI7&Y،UDyAo .gyW:.#I; HV(| G}syv`tJMqэE Ͱ`L+y]bT ^QLmWZ"S no%JN;anZKCr>wcqH(@ LdnxO4P<Ľf)HŇdz\r1綗Amئ !u[uvMt ȹuP̩a螃{2s3.OP=Fi$I gC_$Cv>O\5n#?±n? i\Ծ7ּؓ_2 `z?ND(Dgfk.P^Ss7W˽ $[ zѻoo=jb?6T ^v!Eu_NzwOd'\G?RnΩq<YaҰA^& =PdZQk!>ÐwX4Cʀؐ#_"Bp{*t>Y;uYD&5Yd bf0=4>R`*n x(}6d&CPh(PXCGƊ%LE']}\4OGлW+ ZN=}dd9>AbQa,)@"<yC tFeL qQ?\[ ] "JMB-et&5[ ԞpENeD?q{ ׄQs%NSX&"&у-F.5XwPL*I@VFv8Ƥ>݇ssTHlVqlk4xP >r?sZ`՛`p?VÅL|y&IfgCQ=:fp.[J\KnZSL…R o(༟וND=gޑ/n1xNhXBz YK@?D>I#M}|_zdlUh!;SOSw0.MA^Y`޳0T1UBy ,eYy"]k`}ҹ8e WyD&5lYd}`_-vzoW+mUp wB-|q*tĜg ߾,2ͻF`{1aG~eN uRNˤ6WcKM0׾w:4 Ḭ+B21^ODda|{O>rfS(e]:Stp1kBFݽ\>9b`iRo|DB6Sk`Q{WDhP (꬟=hQ,G0wE$B8)H_>rJǓA _j1\~y ē^=~ SYT KKErh'蝐a;n[kG'n2*(uHn%YVoM01dfلh 3ȕ'#><.[8A1 y1ZZA,hDNBKC5c)D4 )6tGgYR1qû^ T}}ݠ^.n!wd ?/PuA- Klƙ*&ģ9ư)pqux8^4x}rhp\o-XoLf(HB&\V9>$:ji >}#8[Hd~3eg-+b#u1佶6,pmR0}7Jj\$V OՖ]Wdt~pӀ|;<޲@}|~7)֧J9Ay"w PH )6_9m opNQh8? |<7į=0U+  /Er]+eH%ŔX*Oō~9xٹ/"t5>)Fc< L2O΅0T6ˮ974[frQ[>ɬaiQx>>%=JN&G9)CSU\ ~OQm 5'?fam#f\B4 HHg1;angk} u6"ۚ:(`Y e[mv4ףp9^t);E3PNL>|E呎i@g"fw_0X6XWPH8͟$^CH*=6¤T*B_J+ŧ[5X0<5#(]' SL,XQ@o3aLn{g=-aW-I#D!Q"sGpږu4@} uNҗ>¹߽\HSтBM/b.] ??TsAǃ3S9ʋRn'=qm |k϶o$24/m !imK0*&M!X$}_B6jQڣ'Qv |$:_2]!Aw_TTk WЁ3 "{Agf{!]삖iͥ. ӭG:* e줺";fI:BgC&( :aV3bY!.ijf%sjUj(̩FfNh]~B9PZإ{L\!C=dh[Fy~k:Z1Fۯ[4k[> .a_t|0y5(9nŕ8mt!~C_إ5iK# C-OvU`9XK6Z.6bnbe8Kml4ڴ(E y> ')s^?T_~٠O C>ezfBYh@ː^U^Pl[\y_WBt0dmR]|jvsHS ܏C$cn2\ґf}h&8 U*KU马 Y'ėBZ,DeNZQzEpȂءgbw_L>$"P;}fя t} G~_gfڕ}SI CDR 57+Aޮ7&U'L ¼. mndOTqEHsmӵ1Yc`7W uj_ Cջސ ec:ț"k{!U9 ;{FAh!|N ~Z0yFzm{ϟXCYd7&%vdD)$J;$a#lTQ,͖+-ȄH}Rr=ccQǒ,. ۟ _n6ҕ'ȉn(<0҃^5a.on"X]ys NHBZPPYFdDZO _wa'{%df E#uaݭl695 {iŐYoo~j,i.fJ怟˝Q@"NJCG,S4x&nA=k~@mdn5V; G8hKƶ+vif",_'ikEw}!-;qEaogH2f7)E-,+ ,,![|DZ\JOJ?UI4@<Ƀa7T$2Ro P8 'tǀȰ= ڨ [x7mSC#pL0f] ['zRL/Kzbr>%9poG1_.={BgoR2So_7 i\Hh$"kaq8VѵVuXT=,# krA;O"2`4qV'iS6kVyk&=<1wSe nLc048~(ס 7A#9},VBf[Vm̡oCd8Hc8ӡX1TЈ5Ƹ$ 4drn4HoidWQ*²O訉ū;uN]fza[KXYf"s9p}ImNmlZp[]KGV]\ B :)' !f?U!9w}`C8#CNgz4T6<?  %Gc~kO '|1+` ˘8PW,`EQ kՂ?oJ2'nVڱK^r}QQ) ֦~ R=SM"3О 7ȬV I=kɫf{C.iL,I@CX).g I'pGń L Q8Q.>)e>p+gp+C֯ۘMqXrh%\~_24Gr;%MR=!12;[5'?x S2򅞙(XgKM|F72Fb lQ >Cyg˼~*ܥq o{M,~TtrX]bZ"ol!qKM’䒙-j iL3czՒ_2 ].fS+.v~Mj诒YZ֖߼=k1ݓVɓFdrRYNecah-Ґed Ql\QjWe5'w}"(@Ll؇iADh1L6eZ&6*2޷dXDņ Ozkչ<˳orЛh|E,B#sRxF卵 z+^e*P}n\ŋDY)s|\Ҟgߒ3-ViQ .Ы6;5E_DasS{@"m5@; K$ ~@5IOE"ɍ53:;cGhWU|SH8RЗԸZIy0pO;&!݉.:^5>h|,J Rj6Sꚉ˪(x"]#-kb9b:`GƨZE{* j)w%?E$$vkJD+9Aq,<+F7icHޟ}?MN1PGgZC_lE41@;%tXGgCo b}(xmu:s @) UВ`݌`]B]ްLѼZk6mk.0$Gl&❴G˺ް'Q|vi h)t޿o4*/Sb!x( )iJB}#c2SjAs[fn/ѓcRQWO58ԌMJABu-%bYq*mId[|x{}{=>Ci ]Q 8J_So@`%2ݬY[aWTQm)nB3|%7XO_|}i֓j4"%%xZ,^̩v y2_\4Qr)@V7$rꋳ_]9*9F ]Z2^6/:JmgghѢeʺT'3Juh_"KZJnXSDBUV.zq|.Һ@QLym7ZƁ_6˭rjzsvx`8) jcYzSm2 O;kZl1(]pV{(As=e'N4&ܡ+Cyqsv"@|N{9wE XY~},RlI59Er m'צBաEnݬ\xS;eX3B@ce0nv!.[_ޕ7\,=~;V!b uk~F]2+m:߁q.fifPE\F;u u{ƎqC,<](@t(Kox Ed3BG UWePS+sz_&p͖gi~3oK9 V]޹΋Ͱap"$nBEb_dsjӞ=_!ѪJ̣7zJ  pljUB;TF'cv Ů:Tg*nhPi)qcr/I  ^1]ΑWzb 1DJVITڕi6G`!:( ]H.@W;`O^g: G}dZ Z l%xγ~'RKм5rpIe}8-4xuh"0,^EX`ؖ{UCT»;!b.dp*vC<(w}y{̩sCӺ`mFN{*Cx: s1! g 5PhR9,*!0iT%0IqfM8f T7MLؐ&OO=€aQww?[NF6G77XUpΟ'*,x͋81,5ÏyG(^*:z4Z{, 4m"։{@ 閠yCزOOeGY+qc\ʗZQ`ЌvTl4ݿ)>n[Μʸ&ootInS x:0Ms+ [ף+J:> xMez*Zؓ觝yCj:r\/'AcJRf)C}$_mVaR#)],?i:zL`2Ijh 2Fy{ Jƍ¿"ٕ7vO/[Uͥ>PC|7;h & "Ay3E^gɝ#MS&}h\v΀l[SKFde0SU}Kw2ShӼG:4΁qim:Y}Ej=NTu5dg18>_3øEN_1v;Sxj Ons׍#7ܔxQJ0϶9?Q},'mԧ8dEGnݽ{ƚo[D6Xyi~4#eݍnbǽ2:7u95E*mxt5*pEu8'?}A|sn2;ZRKs`̿"̢ZA*jvg13!HwV.^1(;e><<މ7dD*Ek%;_7Rޔh秐7*i Qeڧl0DRf97m6{W7o:;+je81z#Xi@C~laUkk#T4kxp+zB̆h 'ꀾ cI.FyG7g>~*Kmw+ }a]]iw'T?40SDm9;:5ܘܫb?)ƩpB@u2ݭ$7X%p;hGYɨuQM*^fZjv?nįZyϓ+)a +/ V-`j˅ܦk׭|`QOѠ,Yi[h͡"sI)#L{z N H2zVӜHf5+5)W䔍YfvcDYG2=Rm ˗G2 ݒg;%RÎgg;GGq@@RbHj>vsyFC*xX~1䅶P84z"꨺"l7z{#;T̜*0`= A'my\[ztbtX/rnlIȀQ)AR$3 Mm|$tjlmdy qE)1-0g ٣Fr%Sk ,`إ Y)/' [.Zy_ҽhuHOI3H \7.]7EDn{$G"g_8LB/\I]~Y[=avx>Xg6g%rQ H@$nhRJ:}2[Bzԡvh@!}|yM*w,8 ȾwmƗwfi(^k[&8D|Rx4*~ȟ=2n2Ki9XoAhX`HC8c&RvL8ٯuG%Cg=? Nex$M1v/Ӕ[CܗV ]S#]-D>5m«+mif aJkTO~B(FI&Gd~'f4hvFl0b<9BSBmK Hx!$il5ӍB TqmB/Ҳ8mz cytA:OnMZO ?B\k]wcuNهuE>iTc>'A H˺=K1kѱs7^yv*f5⿔n=*]4&F$c.s ͌{;,Nx#DT{%yv( |?p4|5A8ثsR/,~$pu[ 4Y0Ŷ*h=%&sj[ (l 1u$fLre:&7ajȮ_aLAPzP qTÚ>ܢ9`39oZ^v䶡KZa_2V˯hC![⑙H/嶑٣P0fB׈p }2["%O4F{p jki\9}~Umb4y0X0ڥHj+9^fvK&@Ҵd*:jrq#,7h(ϧ~|kƊs( xe,Z1ttj.h[1՞y~ ݀/Ja.ķW2w߸(]85z-WHטyU}CDŽ]2߀Ιݪ,:v!Nd23bQfXw% ɫ(PJԉЪl,5 NVYd$ܮS(Q1|x f-@2^|[ 9 [FEu^ߓ 8IR\0tJ\?I#-|tu>-P8˥ )wj15׋4oW}7'*(ֿz&M`$>.K]E#ҙ?*QŸIuaRئUgoeU6<ȹ/DtJ8n2w5tw'e;WdaˑVcSekrf8+5$˅@ֺ)pDepƔK C,.[RL;ՁrKq^KfK2]Y8*" t;|yCՁbLVr FQhDD;V&# ]?< q2uyv\}S}Ze3R6z{gSrKl)c|nAcpAJ)5䳲k*Wj!|P+w&^ Y| j߫5*訛y1Cߵ a:Fkhw!@3"L_EZ!`!N;812W,jؔ\/Ѡ0LL' fJCU(b~펱&'P񼨺AvaᤩCP^h)l:+s+B-~ ^GQ gA#9[ Ҹ?%|e:? KdMa_< LCC9 -$>ؗ9S;3'Jυk| \GY@Btq%QJjsQE$?ʔsn+T6@=SyxaB$s`猁IT'3؊xt zM6'#cK'T?y HE]CV?V:Rj 5띪 ,ڞT 1+j=3i}oH 3g(t-*K>@U:ĬrgN 7K3U\QCjCOG;Ji*~zwhE__y5D7×a@;1;kOfHqah"-R#B瞶 9:׋O 8Vv(o*F.MQRwoو 7sHV6JgPruFj~Ǡ}Q#1dj"Cߵq mI䎜1-{]RsmC]cO[lD/İv}+GpCc">ˉ{ybɂBKiَnE[hpbV4w^8ִɫ1Q>g ?>+KAXoLHNBPhȞU }: 9*sI,ǟg}Nyp-΄ƫ[v]Pk#hZcP9o?A,wJ}FV < =K$AfMɟf]k5Eg{cK(fh F5nb +ֽ 9hOo7!['؇1ֵ눦\hSe0M1bpFL[QnjrD)#/DۜXߺ:.ߞ)`GE; fCh#X &]hxt;4\ [2%o ldz66I2mN/K걠)O^ ;,6EW,5-|E/d'y&ipfH#T&8pK]5.b=*J&P!4T@M]z Jѝ6De,n;n#Y)`mOn>d9`YY u?Dh!S\UUYAhXF2ksKt&Y]2 qfk]F-='Rb-3!A?w wKVŃfY{8sy욶" =6!gt7%Re챴u?!O!sIb<+oـ4K) )9!Z9m.<:ֺLэfC,M4@—{k 4k!qq, ӆ:N}6InLJ~ІnQ!&NH.Ѳ)`&h\DV;dH_\IwOIH.[v}#-;,[+|֓簐Uc`1L&3f%9+=墇9Iz[oZ'\!,㌧ X%sE_| *MF;_jP#3t+z~RK+nWSa['^H q=&]UM-fbd~/ `mw|C%2^iX>C3[LCZpܧjvl-LUmkӆ>.9 70r'{[@`"D}0Xf4:>L91 I9& _yل9SH$1RU4=M۵cLsݕ<,kbH -gWJ$YgQp|iB@EQgz(cRMt>K5Mb2,K$˜``#AjfVkAkAv5Q&6 r4ωkZ0JhV5@f5QC? ?TfAPg7-3<:TXPRz|iճUJĹKJ1F 8FbXZV ivYO:|A2#&z,SzVa+z噗%9Cc+!KvSFi8:A{O܍1bzXY*G6)R'{bJolPV.ڎP@1ؿ5zjsd9V׎%BQS>??9d`0OEh.r(/xe2zŒ&4m!W;BUocp>o#U0/#h 򚻰~~p B4$4ާ \4 <:sz.7 JSԌ= }_ыݷ*̧S׮5OcX.AI-; -u7zd+5\KdӶQ+<61q1Rf}N:gcxӁXYHl螣}r.d8zkbpȆdʼn $'DeG.>n Q 1HXDOH65-םxSz#`^o701}e_E~\K4ym2ŕx>qRv'n˷2#@x#rmv  쓭? kd*HbO­6& ,"G`v= ptC!J.e.µ DՅjz0j!D=8E}*־fC{gXF3u~ +kt^IJ_p®'%NOVV 7WeIs&$?qb y#-ݑ]w VՀS,Pgs_%,!&r pB:.bTՐ{ Rury߲uYdӯs$q{YZy~ʌt%\c}Bj${"9w,*;vifYpjLp6j VYȎ+wZ)Z(=iQ×hs˱u`6)*7n&v(<2FAxݐ. /uTe%ˍ#Ⱦ5>Dnx9ʬo/R?rNYթJpx-$G CzHlL`G,g hiG}T7':'{nX%W~5:KUT@dcĵ _2h iIgI`ymT9a;cWYx#>wڐm\]A)$p-&0o1lU~ ߎKry] W!!sX'4 r*[ ѷć%yg-]LcA0i〽#,ZLz5WK?F| E[0+xxENOeխ?N+ez#+4'?f"Q- H‰fMc=ɢQmf{+> ޵y fbur&Mgk=lg"hI~0*dz<~M*U!(γF8oty .*Q5ߥcUU]Sd> LQD]*@{F`_qTM,F {,lLLB;ܙS:mK̛39pH.g.Ĕ"깬{X[Ύ&q6/Yh ]o[~צ×CϡбS[5ƗԼm;ճ/l^Q끽0k @d&8x/Փ7G-_YQiU^}ve 9a,VL'顮}CyܻFH>i̿Uڹ-6JF׊FN/XἙ3d\tb1*o..;$+ʬ={ vL%v$H ߕҾ&"nu&T|SZܗrTU_?L iʔ>P|^/8^NBk/oCdA7gh_O کﯨZOR ENJ8<O ŞvF f4H0ZC'e$>]d2 P U;̔+*0G kn[sӳwcz}}=y10_x#ET늑>^>:%vIn>|Akq4RқFfIT> Daw1%E9 v $.fECϴfceir>e|}*Iݸ3?E53#afSFqQOaru2?x:2CHof޴gy"Tb]f g 4*!B9v !ŇMWR>q~z\Y y5ɀnr°!6aHBQ&CM#,,0> [}wwĐ m XvLZY]49"BS0v].%g-VhWө^v_ār'*LGUEj63p%]5p22p"W8OR>t,lELm4bJf2G^aW@LFyq0KZMA?&XI?83.6چҶWI?yHQBi$c'l濸y?ZdEr>Ն9.-ʦL΋Ls*x@d=OnQ $Kt rgqR9:QauŽx u!]?n,|ZU(%G>;mKݕKyWاi|bÙ8ᑤKYsx1KPFx9 Y5"SEE5gmJ5i,'ox;eћKz˝߱UNxXeVcckI,xFKڽQms^=x}c/Ey5l2Y?t't)? 0D-.ԒȔNӫ@Hõg,1=k4׽OIl3 'EkKqm輗CfJإY=%OX†&ԜY-DBV`y.<]=kBjvEq<,-2!MNųa1 #ޝ*q6rIf9G*ÆaB|A/5s~рET{?-A[|"ǽ!ЮtY`Һvֽ0Jw=MREʽUt_N3.5v>W>HZ">OSPaaevSjwtSL$[@Q=N> XӅerQ]_I  :(o/` zzma5A)A֐6i$\ۏ ~6e @SX|}+GT-غFP }Qsk5ļN:<Я!6*<*A2 j"\}Ôuu|V7 -&<̔I|\Sv5OTE^F_ެ\ %8\ T̟aG= t2Oc? _1X.UOR1I *3L-J`}XW'CDz–f(3jx60:VPb@KTacA|=]Gˌ!0:X@ܶ!zpiY`&wD#ݢuc,79e{!k]FGfKJߪV5nu:1lgn չK5ز \j[GԦps‚os02y dY]'R$=)(I,]u -YE66t}mvshu3Ӫ)M  >h^['lO6Yn{F/ nyQQ#_q,o .~dnNo$Q$9ިzt mRSmflO$W%ɩO. XX{ ZhY?1iHj ڸh(p] b( IGq8*c?<ݞC: mxZ;zxLQ;FA8U +$DQVeLP;iIb; |$ӝfMNqĕ*zA}P=ɨCJ䁱] Qiڞx0'b5^!_ 条K>-AA%,E]]4)ħa?p&HR<zB~o:,W:c&FE"cY}X`5%'bfIRtN3ڀѾX(4e(߼DyHi]}iR3Pj Cj:WwEm9Jkw"@GF^YΦ1s?D2D*ɰG  Z`0R{Ij,vʆ ay#UgؔY(ENJ:^;Õ(y)O`2{h>N<ã-6oPAA+@i?v|?$ <*m5uSvS`4>Z 6lɖټ҄g/CYA ֝v'ۙFT sjɆ>;h(U7[ƃYH3|SܧƭǩTae S>6+x7A*#qg% 1E||2V/%E5 fj([SZQqBene!y! AEvpaX\%cVª~5b4/p\sˡ(aK U2,&cWP+.س^Mbf.7V\,yޮ_؁9Ev} *HP&b^ѵ;xP By x:06YhC^δemB%*BۗU/Nm<9rI&oR\87Ik>{*aƥ$Ig29_I@bg3v1xNG ՃnUne<, {jnGSL|çftTv9-_89wa:bYpVs"^7)ᖗZO=5`wE"N)EmFxqm CعiwwQUpS})s3N&|?>PX!b$B':3. %X6') fzhduSHR_ȶG%@f! @ 3L}vcViU3?U%mfo`*0K&iSux^u%~$y1&Y3dKEw`4CAU^!~i#jjQ')!B5Yupm&NjҩZuԾ+IXk ._43> e Nݚsw7 'eg]82A$ 'ddp wV$8(uQSܞӨYym$i,4zk+~%^>Cb1aZLNKQ}G <_#b g .@f6e49K^83r$@'{K<`UYtƾ6}9[RG-F-%"l$-Jr: u襃Sݲ0 QW:h vEsCXq[@]ݕJ0^9>*ՃI5!̈́ nENEt8GeUǬQ>ز 7Y[jNAvbo!bT"tD۝~%xdSqL^z&gAΡ*([1ɩjoC3i1E $iAT/d׻Pc{zi.\ELE{Fsi\B+Sj0je"Bk U=aO-Z\[}r(҃v弭Z~*BD#a0|5'XSF^W.iЦ\TFaJ<V .5ӏ{_0"s߶zt}>];zlү5@QiQ# 76WJ|pj\āE D*r5UGñHw]=`7G/} *GO3TvKOp)@ H _ۀ E5!6 n OޅO n\뢝 Y%o.վ|"ؽ}\ɕУLt*C[ęmT zөd0ʘ^?MD]_5yswv&-6Jό/FެO߄[PUTU>/EB2F1Ғv܆Y=BgOXVoL,&(uA+SN.nzj-L|&X ހC>3It"Qj0ǒ N6Fx2R@0g*OX :Te J@կ`py%{yMwʸkgq.eѕ)xqXG Na73oAU-';.%)p׆s|pH/`%}`q46j` ryXO;SI!2N=)h}QT}L'gJoT$Xsӿ8$Q48`: w:޽6qM(:I2zk^G{ kxQ_D|G1ckϻ@ɯ銽Bv6 Iq\(/ȳڀ%1l2G|ډk# [> udN*njڗߚԭNJ3yܽ$DR#nFq+w~hz3ufy>7)Mw|zJzы(y5X{gV&wD30U*f/H8p#83swnҼQTPr@i;hpR8&">A[~a9 (z`EKQZ>r b1jDrkO%DUBӽW w[c]"viGk]jJ[+SB!b{3i Hr')9@Ipu胨VNEB űAԓ4 )}Ij@b]<Չ˫IFd+;Iڤ ΢\qq}久Ѷt:-ncF$RqXa~BX=JRq7W pAЦw=(@l5PTO9չhYTEYֈh1>eL3 )LTM0608k{|K](:Y-b ~Uv@ͤeE*i fug+mkΏsj<EK[[#T&0"4 ;};*#oUUO1Lp8/Xt9DL|Ad$Mkx/ѣK{ELp~$^$],s!U6{Kykt& V&Ǧ`fXMX:T~UMV9շ{'d| uwhly3Ʉ1ؼN9T=ኇePADݟ[!v4lrp ꘩!I`#A3&`C7tP)x[P] cZ Y>&@rv}쌵p)Y 4c|i5ɋ¹@Nx qz ]Qx#1-4Qu24]!  A,!qy$t0NbP%n@µ͂~W {dCI8?z_E\*H$f= k[9 [[DXhͲYPњsf9t J5p@VImm\%2iik혔"E GD1d|V6j#`$y&ɮ[h_qD\M*XKCc aK >w4fl?,&(HVWH AvøxZ;mr7UInp|# MuURS:M {+g8$a1׾( rw75Y)ƽĭRTޙzy ~Ԇ&SvӾRP²Aτ}zlmޤTxX5 [ @`=b;2(0t277Tmu7$lL٩JlM-h qSu`.{hրjbl'K|IN6izg9 ,Hx3X_p!e{S]Ex;LWj|?vd ΐ"}}{hgSÈ,)dVJ6ľ>?OS0MHsdSȑQz8#yj:8$XҘ qjasXݟ݊8X!"OF]:?ElݷpG3Z\GIdѣA>xձ&4.QCBy@[Apߒ\cϒ;9FTO`k:6Ro x۲'/dޓC#kD8d-y #}RI^64bSFEqvy1 Zt)Y1A&H弗da _ܓr_0"#r2B;{|tbՉF~'B]HV{_tӸٮg9֙3*::hE*1|M EǨ =`V*mu<42poua-SzhcoyG듿5-;{$u)t$%"EUnV1,R&?纣}p9!ԕ\oG>D_jVbM27fQC/7'Y]1`߾f;jqʩV4i# Wǻcvߺ !(Xtu {hˢy~(M`@d%yTr鏎hUAΝ6g!}Fd<*5!>Qe<\,u*-30afEL&'0,ouAK hIOUrVyiE?e%G$H*aͻE CA= N< 6sa賢Ek8JG(x]sz-}q}sTʨS5ۢaF;"Du=ć x~Jo̳:̃ 2Ol%Fu9U@sЋ+W0|sR̵ηZ}x9zA(@.@ q|}@vRg6Sm3DCͺޱڦafѰٵ5q,Hz>^dFAchϗK Dº=̎G5#Kv~ʁ֍K3F}@N5neec6lk`NKܪ4Ò{NV/ODՖIʀiw4Ѣ 2& FEDSQb?8\J7Lhgܯ^4t#r,Smzj{wq6T,D%1Lb`37\RJ Vd=53*ɉ,(y :jJnk_B׃<8+IFM*;ÑRMg]Ȃ?IZJz$"6Q7nui~$ޗgfLjgK&P**h-MQi0̄8NPw{@J,8(#\W09E=Km/eNJ頵w0'*hkw],ggp (W]ԤCDKjVqҫ0h$SFB¹kɑTY bP{Ȱs;A<ư N{'l#G!;x5<& 3s͕Mxd^RE7ʒP&g%"7hHţ_?ׂ`+ NJNgځaܹ=͠pp\ C",AqGm&x8e\,1Do:{&]еZ2ur1ak6P6+EM@p7;@)"S5w ;h.A<'#^qGhwrx|YHZzV8PfZL[3C8<Ċ8_de0E.MĞ#^䀬J P6HKi7ՠ~wF^F[ͣ8*jukPTQE⏎MH+~jO?4`p43C|z1x~.n5C wvOeWq'~ N@\e+|\[U?Chq)<[@r5[ݫθ;ӋN6U+} pCS8hM_J"WqdKП0Zǔu׶G+O\$(v̼6>6 8zbUUF>'(s.ZegÆ_SG!Pfb!b>N"Y$l7DF#4ݡ> <NY [^Xhpe$QJIu5"K"(Xn>h|o0pԘtNuyk'k3nhov7 Bj_r99]f}OfQ X, ә%y13p\HtY{(;:7EvS0TftDFjTqXԹ'c~/=9])p޻.'+:(ZH h?VGHhZI֩,sv.R S6cAkv<%n6 Q.G ڂn=I;1#$+bRe ga瓙ӚYa搼Lȿh P1mgMmoRӄɘz/0:B8[rI)6cg6S!=qu|cP懄X#w0yl?)uq2*P +sH}<֪6&a42Qʞ\Ws')"v9BY;Y9!? *|3!MY . uڋL4B *02||Dc|O3p 68YVԃG&)珥*)_6։1Eҳo 3VEw>&VU=ՅR⣈ ]>~嬋UdIRraTb:}#^.xoـ:j0S1c@;cA|YGK7EjO-fW$!n̲$ʹUu % pā 'U:ZcZVKT__۰a`[[x0ψctP]?2eD~ChoQ^b|q<8}vaqZya@lK94eb!4mTGodxH**ݺ,_&oM.MK1 !XseXT2Aw >ڻdv5L<`4YgQ/Te.η 39Xڟ;@aQ:უz48jTJcg.AHWotFceŵ~{YAXen6qhd_BlÃ5P+`Η|P"jb0[WfTB&W"-`s CR !l`d۠'?]63n_э5bIb>%,j]4lm8NĞgYdJ^Y2 &R-=q:_aG6Wlr9:tE\bA?T^#'B2i+)F,g9&*z<1B-[qoHiyF Um1waR sت4AGۈĆbѐ[~&j ?hr"=N_Uh&C U6ɢ 4O 'ww5\ kU<<~lzh2ewm~K.s.I=:Mk쵁J;S˜ȫC.bHRgjN/1`fvHPNt.(<p=/WNGU-GDq'ҪX>jhJvAS!\ɵ#<߀@wT ԭ3r %[6+6xZdF ccVNDd~TĆ\eI9?Z[IGs`v0=A[~lals C[Fp%p#Gn?ܨm–\ -<#MWi{LbvVjŷo<Ɵ℠5l&Jfuc+c6KHXYTHb#=om ͖B2*S+& 0jKm6Ƈs9̚Үz`~{`6q+̂PP8 Pg;?0d8-ze`/]``&PPl(KQ*iӽtf t)C_G;[E!A&-ӮtMo:Nj1 G5,;&Z&$m\7J-(bcz3{Q5// z-7 !?7Jb %=b(=[cmx ;;߻QMFy \gRCNqP|= CK 5 i5[)6M;S|2'*{pΟq]~Ȱ0QwsA82OmR~K 6eN.BmRd†ŋW笯&D+y#9nGTMD0,!+^K~ {A'q7_pϼ8ah|>k9HkqsW_έrjHֹ|>/18/)ë.<.eKLl0A2nHk=`aմ  #>R+]!"GdQ~#'w c_'ݖ_>J3 y 󝸩LCE@_J4uTt*bTeF!,$@<90lĚj֏YI< x`jaG3 ݭ>n`ż)X=N!si# I+yu\F` f]Q!vO*[9A_Ho/v>IE*.] 5scC.wڥ n%s(lSy]9IxٔX&768uтC=sd0R7^;@(t,p{6hJlԬer06Ԯi߀&$'TPZ,iIt%rLtW7K4% u:G7W SqXqh$c~ԩx5LDpW#V(=S8OUCċw0v}tY:/ӗAgb/tė <__EJ94[Zz.UȞn:c8sBYwa<x̀u.ԵYS*9\*bCrqc!4C6,A$}C`leVN0_، <5&e0;j{M~xIP+ %bzcaP4bbX0`R &r]ΘYT55IkF zJ;ZSk ;ӤQd>-*_IN z̔[U+M{H '}n7w]_5'z{t%^yѭ )-]BAJWPKYȴ>Xb1 3ue, vI5mY-"BjMǚH#jQKRrY^'-|3d]'@{gAI5M>&Ŧ#(Ι"@6:S6!3XGX6+6iBjp!j30 g@*`;겧T9~y14b ^I,L{Ͱep3-_&_sE*bqtC(q"SMG0WfU Di}Ͻ ?4Ͱ|bNhgf PewR >[rt lƕ% :5 &"]w  ,G5fF@a ^շػ 1NJ4o ! -+pN.tkojscr3̧2OF}صLOX;ʾQ6-mw>{[S>ѐ\DX q߁Tlu5f\7\~]iSbk{O*_#yA|^UKfPhc#,V2"19ExlW5C TN` Ty;a~yTy Hʽ.}lV42Ƨ#o,'T;WF˱sG9iN* %l?S(wtVO2$-_`몇C COzCO\mo*NUʠ-i\D! Ε_͟ @41| H+T5,&x=e]&ST2^luSNZшHKls1_^I 5= 鈺XE=`% |YKIa#Mm,K,u<73&W*e!=nbAa6>bY@ *8%R;L*.#8sѭHx?kXҲC w$t7/q4N3G/\5{~َCBDeڬ=?;\+M3.KuiVD[ J ̀y87u2q#IM"شVn'f>d%* ukwLQ F?,>X% VɶT;^oi.(J&Zx\Io9 !o`<Q'= 2m{yEj^";&ap'ab яc=ܦ7~R%{v#JC#6hwve]]$R! :*좜dwOBfw0#N:TQ<d'{~_Q+xi0F_z\-fD( o`~Ͻ`y5O51 q X`rr'}F-[tb N]+j ah;7uP;\7UCH<< ESimοEV=Cwo7r9$4mJBrfB@/F1{8 ۽g:l]tuUm+ bD@k8ӊ:֚ܮcav4#,)7h!=H&SZ~cN5Gwѷߪl= vT}/dexl'C^H#n#^cS&r-ͭZ܆C<|M\5y!\V^*Fޅd*I KD;;~`" VyQ) ldEko^j;W+z2{x!2z+ 36l*aμ/!`_uAbKRO,ItJ6).?`$aL$>Ӽj@PQK\8hx Q*.!1U+ϹI6[k}w^*$YiOij6[ʿ˳ M?4~!#95ίEk*Ǥ!Qn}o s;͓cVaYY(`u /9M"8|nzg:l=ff1$jS"Rdyv>rѶx(W~!=GF& CKOut qḊsڽkEpohyվE\*`2MoY+R5;KASKt6MfB5}ņ; ϓD~Q cѷi.iVڳf<^EtZjno*#!Qd CC_qGsD &oUL?,Ri6պs.i8,_,sx20V<|JAa| Gpp*oLn#  Åzܤ94+%oXM ]'dSƐ<ש;h9㮞^0llԚ1KPCgu,I-~hX=ϖp3zʴ_-]Ji"͉oD{\߀Dbgܥm2 E@j/h! +,s}'aTB ptԟ5)iV-CJg;% sNBtu,y|]croHWBdL@G0qe{dVo5#PNxԼ;zuyM9W! G JbC7+=7[ˌ5{AgずG *t(D&V7 pG]"-W -; )I`R³]e7[)D>ȶ]!Lz?Hٲ"iwK8=I9O3ܫ0=X!܅fomT0_$IQL=9Ü+>2":hAUe:SQkW4jy LDLv\|3?q8VUpEͰ^@sQ|=  N ͕? sf }K1i`ND˳2H^`L"p8* Ux7qYyki~<.AӬ767 ӨomevI^ZNtxJog+W$>ZCn 0MSt Et!.W;Eh$uzoep^au\r@N3ی>3&H3@upG?^#[J[l3e)n޹XeBb`PbETԓ({KTG+?ͷBQiFe,qoBbe U|,'Fae$4[%[0NY ҅A%h8km4*ySWâc axQ8s g@SMGm$q伕I=hՆf+,%(蠍1p4;oؿ?j n>.踘5 ?VŖ#¢&Yk'Lr-pL@% 6dX+nweLr4lY&_ӌ*.a&^t.2JIGȆV:o;*6N-_])vb௢E̹RqΩ~fIo, Vh;TinM#l`W%׫afa.+1ag%P=Eoɺ*k(}#*b #Kz @/MXf7B!i1gOW]UbvâUbcD Qvț? }z˫uוu]!4B<̙VZ`"\o]#l,˄,*+{7-~)ƃBxD,&!iS>0iLk9zFU삩 ɶ,ٸt9 W:I(Y ^gF89QnU(s{3 E ^wS )f:$QxϺ/dAU\/-ثs32hV7tl um:v%u'8bE &NYw(p+f(r{֞%m3x Seм҂J+bsbYthldz G9bEhA2*I )m"=h|^ :y%lѫR`yvcբxI0wbvaMn;X] \kEd Q=nTLLfAng *`ڝ뻭횯fu?7[ ut5 qZ"* zE) 6'\d[֣ +u> Z^8SC3:sN3 5;e^~ػD#":2ͶblSDJ_-.0um?Fo0SIܜW=lMBP!4c|koZ~n~KB'Iԁ JU8{OJ1INO>Ս2JjN>mjIVe }MTt8 ٻ5 Ifg?7ްύ݁+Xy.t!y9p&ɱw$ ުzodYr) 9BU]& > 2ʧuO s3sKK.mvj5MѺ,&Y]9&.iTo:Z&K!!1$5Nqq;Pb!~G)5Yؗ_Y i}Y'=שqW0A9:Pr6WN5`H)_Rמ ;+fte2Q8m_9L!\ f;}pؽK؃@;N0<6ZPM9f!|8P]o0*j r~۴X&ܙ06p|&u1si ^ >9{z*+h@̞@gAasW,Op,G_@Tmej1~Sqˢ }0”C| .Q"0\G.rȖV{7 r!h 㟴Q6x!Y "}jW$lCa :!u𶜁]{'u>w.;%w)znmJʕmx)&)l0H1$lQ_ ~4[A7oh+;nc^-њB>e`31to9dzy @ym< Z*zz H$yy$B (r? Zl˅N@{"Q[ GbWJḵZ>m]fbׅ7#-c7K9PP̆G{nՆ9_$I"?<׽1V,( ,Y/s c^&mqphx͟rA# :,@y`/#M,ԐG=mhԓ]9yi| E'\|.ǜlژ97B$206EDOf>_3? C߮ZA C~Z-Ը} UJ 9mIO@W¶"nC=$NJ _Q:"D+S&$pyc?*LtjgcsDlMag^ ߂ N'HfHA.ڀ~V ?&2~bn2>Åg)ʐaENG+~uv3Gh@&w)q퐯دS\y|P !Ӹ~$T$SwW#Si^Rjn|0:u̐ꌎK$NqP2 pZbn G[>=c (- ̲+_ Y@8v=oW Q z\)B/\pHؗ0ڵN3}4q[O\V|Qŏug Oђ:sƩyWB~2*$ߦtCKԩ-S{E =Ÿ襹vi:OZex6~d96r ngfL׶v=H8GeT,=3$3 cNݚxTٳ0e5꺣G#+SwSn/d˻}4Cxt[*-b\>dh!(ATWlZekR;*KM02naٸ+C?) `s9\k嬶MFėD^!LoJ*SOHWwu a=;%8J݅'r[h4^ּK߸eQgR5yȁjP5[T )F2ܹTu+.Xl9fOL(|wp^H|[x >U,1pHaeGt|,0)1ljVh(}%/v73Q] $`Nnv. NKnU~&JL6@vhX)8)y+M9 8y .9qάx[9yDZF];КXg$TT}y@b#dw1F MESf{ĿDnyk`)pHp !YTZv91@Jøkd|n@c~:*C \f՝׀7)e< L}͓Ait2AkT&&$c%C݌f;rMAqHh_|E'FOLc9.Ru0+W~.#[D~\!3i  JR7I4ĸS)_~?X7{G)Pd- 2`vεW&*JFk1' nn hXz@͟K]Lp9o+H6RZDQ}@ٲxQ/>Y Ayl|0`/#C#9մ5lE.RzoL&owIX4 gQsM9 zu5\y)f2n3(NiG> ZqmX;NTǭO')2XE+6MlxU~C1p4^Lsvݸ]^#>Q1Td 6_Rנ2bM[N*͇ + )9wŸBO ^]u4鬑as7&#VA7ċ;fy_>Lqu<6^B:,&Hm O ݐkv*/vE0tӔ"2 f%V7Yq;0znb%A\_~f6P&ex5JTEto죟z 2V]nǸ`~ z]c&aІI$?nYyƻ3ZMR`$l3'#xM;U>~a$Ti12Y<@m6/Г&ZJyk,J]4y5>Bқ(f9v21ʐl$ f[}YLKRdk항FH27jҙOz&IJH U"l{&8+<sáؿٹ%|6hs2ʫ3;65h9H8N'Ƨ F"K)qBy5Oƛ̈ l։OC'{ Z;i͂dBvMk@X]nod[;8C.¯~n/%q6R2,v2] 6N|NRю e@u2  B!m} &OWC^)` 2 sȜ*ާRoykm<c=PG@& !5" Q>TRFI@=wƉJ܁|q{-986 +^YCfwivTCٽbX-{ Xs.M,; ʠkb0^:da34Yɲ?Q_ 3^K&bw|zyT̩ŇF=HFk'H=#K >}18`mLnubqk:UtVfhש)fw*j8!,p Iɞi( 'e`G˽bV<&NTM!8J37^v~2w6E|WDR DebT#!'cY̓ JK`[-?5T8+mNJT7usSUІ׀?yA(g]>4@Ii[d8y)8zm/\ΥTO]Rfa3g1TB!A0z bWisi¿J Q9q_ n m;Ba|ؕk( *ܾd$Gu"m!x;¦5%GS:@ᥠȢZcH' y C_L ~t9f3urYɧׁ#C2nn`v `z*y>%.ksSz)BtԣKNؚ Y[R)O!ZN'#f$ MKϷל}2q'dm8zh 11NX1F8Hܵ}Ec`"*#D7QQ?7)MJMCP0h1P1$p!dr.<uP~N"]2&H~X*^;8h5N;(lYI5oA^5Q>D9:k:Hߘ\z˔KϏd_ėajdzL^'*BlmϳUSp7oS݃=-C׍bc$ 8CUn+Ɗ_SLhSMu#]·^曥jwn#{*t O~V~{OǧP`\t[e]J>8k/~/pR *F(vd9ro-,ۃUCkOTsvVYvEH- ' /ϑ,sk-l,q@Mr@?*ЈE:CҼ`\ $>6_U(+R TBBW~iY# |avauq5N[y{g̍˞3;(JA %Imϒg>rwGIgW1‰Z'g~;TVֶUqPVXӡE`Q7J322|sN:m18G!C " . dX{}K ŝ4LTہ9A02FHnN_-j]J~,*{tTBDv#ٖ9Dq)[J9 }-V :r7 E~'`CwAiU 5l$}}?T]dP-^ԠGBinu ;Z.9 ~ E0uz6 M]Y&k6OFkV(i3Nۼ>~{uBXByy]h/q"%K ݓAVqKs{w\{ABO=*c 75OOh'g2m a:W3;^fNam.؞N@}p\Z9 [FG yÏ/:$zyRa!b+0ՙOa2ĕUܛ@9-r{wȈ9aqr5xI VW0*Ӧ4Ыgjj$LcGA+#w˻84҃g{۸E][ާ)j,'&>ĈVx (~OуAd [|-Ҹ\OP\$Aw+3:Q,sT~VU w^KidQ up:dܿ U a齉#Ӆoؘ톅p4u}[=kxlCrG/x7*C h LIWZ@ `muXu\iԛɉXHSXlHKQJ%?nc2h+F|5gAAqCRwsxGf\BBX UK쌨 @X2jGMYxm?L7XtEsOHuj"^3j܄7+Z'm6ˈH禧Ќ_h펪*2 RۙX)џM.$}I( j: 1rߏ_JvۦTRbl ?T e9 ǂMqg6PvŞ?tI4z2[PtvӅ4$C#B]V((J:Ơ`4rb3P_ dڊ 9u&NidiA2OGXew2a+2PU!wƷ\#˳t-`pO.@q7ur-zǯ%ߔ/&!](y^?V A/>~Vu`KRl)9 <8af:r2lh_/f6mǂ+5/5C;@]Ek&@=¼ʤJƒl*?|\0-儨S!ibsΛzȢ!nzcd_jaXm( eXV:e㊑v䝅dIny/C,#X !]#EGt;#2N:Df;h֏تO _X{2|ck,i &P>?^W)ҿ ssn{E!ȀYjvD*IaX. ‘0s2 \(l5JUc)y?&Ip>@&ֵOX[dFB;}KOS(P0J- jqi$h!qV(=z/JqV7~=3g8Wo )W#ޑf}.Jˏ:UbG y;f^Sw]\#rm}jx-tO(( މ_w[zYʩJ~{ U%G( Z*?Lh]Das#zG>tC£|eY mGݼS[ԨcElx_#E @n4pKƃ0.yudt14DWK uW "FGηFDCO>֒0\1̛X|ʱŭEs~fTD4!a,ebζ6~LK`BAFip1SN\[nq) H;N;̞XS93n |(e[X2Fp-7M] (KzX^:?pg1΅Vp@,QbNn|`KUS Nd`p< ƾ73· -i-3/쑈G;w;J>䇿$]{Jު^4䩘mFx2}0&!1p]l"!⁍3(E qhq*JXߘʓG*Os 9W\ǧy24 5ҍ7sq;snb1W$ߑ$8dZ?Ew$!憵X 8)zwVtQŲ1[ O[c۷{ywW> ]uAhlI\a@vw%O_ku=ݹEF:DlGNGey=vrgӐgZ+4ӆ[CR7fDZv4Ձ&i/tND_i%1wjk)eLd,Xda/~'zmS iMKF"܁HZ.DmFMăjE@܁W/6٤qw[Q*6CtJj>xKiR\ a |R8W`5nCpRDjXum9SBlJ]"i!p%w2򄒭/Tpy %u8]d;`!\#ߋHzd*t6wS~6K:uO F+ kJwȀuou"<]YW@OO+nӯ[4 x@1Oxݲ%&s6ר Ã^rVEB 8\;cf9d|_A<@vTb L65*SSg+PngE7!`kd^\ڤ;@OF\cV)CCR:k"jc:e '+VtaFL3ԁ"+t&^I|P=BVޏdī, VKL^u bKۍoL>sy^C9,[$#0/tG7+Zݾ]S M[V-Xy$t' B.W>+ lfJxh e z;D]z0|](-FT$mxbX'Ƚ ;ءub̲-u6;DV]Fɸi7b [! 58 ST\qB!Gl2.g =3޿)`Nx'jM69~JqufC% |ZVkf8aS*rZ4`LwǞh \JN蹵E*`6J*іmx-?2A綍v%$뗁G%}X# D"&1x޲!Ogݐ{jZ0cZV&hG<#W-)m2 OBZ6bHOr藿s4|歖Eak,iQ,+yG>oYڶ~" fAwHxM6|fײ$"f9?b.8侾3fz sr"U 1-۩ǻ鋵wϠ,ٛx 5 ǹڜ[Idrk:j-`|N6,ϴFZj\(禮x%)Qv1/1C" eCŻ^8)(*z(Lԗ>>fN ]+'\9p~}d ӊ:w3(~U%pI8l?J[ ? IFi}k,Mrb1]٭^0lDr<-Ҍ\Ѻb;-7ICW|eDQ]w]F&8C,Kj_=t6Nʙt1$5w AuޫLv1}n%T7M3ofMq@ 4al~?e!%%27Og TSÐy0O*z>7Q .i~}&DI6m@MV4 0s\ޑekKX?4E:\o|(IݫCǸevt.V+XpYw`RŕBֿ'k(ieW>MYd}ˋ$G#x*ϚT& T_[<2Xe#'2*eK>ͯ&ϧ`"ءF4 CDmqP8xwӐ'C軿?MwЎ")/6wji,b^haZ{sAYC $ *'*-]}cv }` uF roy kaql]\^hn|0e qén&{nfLHz 7碦FH.gy/_? e&Ģ77^-TC3Kn6!- YI#͋ ĘzI[&%ݫa XP}j:MX"򏁮S;`4O*fluiR||yRԒVVaA>YhQ2A)o k> =eIX`e?uꍸvP|sܠw^]Ů9<޳I(P7sOZHNL '>}H(ޭW8Eor2=2\r>~f`}2[~pKZ&̇fdIo4 3g37-@Yn]ѷVKAY#}P&%{ijyR[-dA&LN|&D͌͜ڽ%%K$KI~LW^9W Aeyе:p?pƻ984-ڔCakAj> I&P9 HTo^;2yS1H ϕr&YU&͉Q^ne1 M3HV Ȃ1){5JнUۭ.%#4SPCS*8>PoB^|e u(we@OxBt̫;}DEH X(ZgBhB N2yӐ. MrWN 3VTj>y-zřGb0R8xxn)0f9jTq~HQA]J ng,n.IJg qE--V}E!vC[P[[.<-9u(:Sz G"IݠF5d-94] ]mhؕA3+W6٤Ձ%('\M^uL*;Is u +tkPb0o PRQ % 3Q+Wi'!7lx 2<ݐbCoy7qnȟMo%|2!D`hy RJ_!oD L~8+?*UPQԨ%~S19rŎF)7]Ҩ"+:*wMl)ZATF<䠧C/cY<"?88ݹ),[SP3@e3!4v)Zc OmCHQjR$RbޭM,icz^(a˖r}W a&ׇƳlXb<+Q36hUD]ѱ<>DAl2m`oW}TRL$5n1g ` aWo9C}%;-1l3)dS:S4S M1ލT:2Lep[vi.rz{2 |% - ^4s}ȕW)Zؖgy\`+T/۱wpl%cd/]o@..z㣜 i]eT~K E2Џf-1i<C 2^EYlK P$nFeNc`1] +?S8_9!'sz'ҵTSQm"Իh*Xt+C'&т׋HbPj/Lg6s ՙ0ig`ǛWt_ Q`@fyCa "Ⱥxw-a7³-9%D 6v2zb*'-7Kާ['6DG=O8S! 8vs{a/N[zQ慉hu#XB<*܎D˰;bMk_rD/h59l.G#14z>&SwfC&w;lP>Tm33 WW`ZXCqK&5N};Gw5:Ej^!nÁ bK1 ŐL=#׏4Pd|4Dѳɭ'1่0l8 &=OuRGp_L_%mAߜ@np"dICOO:%E/V!Skp.!-MX(.\GGn^%Rc}%UNMhQ.,a`{l{i}y)3d-KdfݚY"!u6pq,n]].H7K;y(9U^ϟZT)ȷ6%l:r91ss%':KS ՠۿ>(KMP sjr.DrDM 6vl4"%fi2cɑ"`3ṿT}:?N.[.|s*aF1&Q*[(g!><_4sU?:bihd_иq։8]Lj\4-92aLJ:z:v8OS0bh{3C&+-4hT%FF@4oW?':Q@)]C& +$&_^<@Dk U͸Ta]J"27~U)eN$tN H˪ 6ԟ9zSgD?@J Fr*H%of6Ըt\]答PP 7>4W2=Nh`~NV3MoEn't1n͵crUfY"(vrO`QwjG;p뙂B(_+Ceg^vV ledGOU&+ѻY'(9e1bhSḲ"jO9Ém.!ب2s`gx)rI.`A'Ԛ/y /3Ufv);WZW {D=+(T) +!6)b^jl!ׅV^!D^v0Hul̋qF"Rxd̓L~?\Ah6)Xg\8 S5"j9l[k"6X7bV|Td΍[V?%.@ 8&pY0!ܻ5@u#,w8o{ޮ8B5* ]Eb›S@n>Ƒ zS948Q+i 2&F#7v"6Nvg@Pzt[,gЗ5frP#/#GN{│P7JC NIl]1*nE VvBF9"λkfpyaZtzkU쇈 kndƃ0$rx+T멍b9|]hi+$QpxVɗfq̬1gycrD1VG 53ޒK>M1qܸB2p]C>>Z x@w $nKq8HϾRu`9b4m&Z@kHG>]xB=7g-芇+l_ [6gKrKanXNqRܐ"a/.xTΟ መvۨ&x|o.7'3±;6Xqqlq jh~Ӂ7ҍl_ZUHvL=QVja 򵄺2Yʹ?DOHBVG6­:Y.8Ync>7}:^QlYUz2fh3YQu0!tcWh`r.ebeoc6ߑ⭩E^g ,]6bȳK`f x zDt؄3`@CɝPj,']~8!0cg3"sǼw.&~v\>D"&<'IHJ-bPry ρnpxkekSQg~\[ ed~,9E(:i,:B$'r3g{kNOLkqYǀ9뎘Wi@j'7eY܂FȒՆKɫM8$G5 D<'4;0@MzVZe_QRܙp/-P%"B[؀pc r{tGn^D48)ɘ/]}HGD N];)tb U׀I awե@e +9?fmx5-݋ Ӱ5WxoeCKF8SC f ݄>4H" ·M\0h9R}}C+5]G]}\t=,+{h{Qs Crb Ruet%16# CT[nOp~R׫ExITV5Rٳsv}1v4>f픓[ _ ӶCerQhoc|ǡf3Uڞ A/&mٗ*u27yv 4hhTf2qMOs9vma%%& PV͙]},ˌKI̟{ڶnxBL{>5h2oi~X2m-D UW2DKTX(&o˯3 *՝k9T͡ʆ4^xx\~|)m"|i{Y?ݨsژMLSLPE=.&Djkzon .RS YU(KMG?%/}jqX:ĹQ3F?v#/ tF!pT ?В򙏟rUO ˮI%"H8vqyytŮggHqqόҾn s#'[EӞ9, Rjwc{r6ç;:P*vM ;5Cvz0\F82_;b`6d$ۭ w]dC!Rz9WJ uH:χ[M= cuΦJ#0"\0+dBt*J}O1$[Bx!,Ħ4L;{x=λ1!n2Ȅ&l%lphI?|+j)Ҹ+xDWZ"*}δ yIfhC'k=К;wC u6еqX 7"7 ZKjJhyYƂ{rLhn\fwD3hv&| S*a|ogör Ul)B@9?i- TĬ[Q .r'4@ *iwמؓ+{oS 4g!J/.وօx+벿4޽ Ρ3NKN[qk2ZЩ'?-EpWCg_nmמJup#w[M5'Yc*b;BIab*"nJLW+ hhbSu6  D}r![ʁlDf VWL%ue7Y'E$;.2Xw LQDT(!u[i|ZZ@y1hχ@$4#nKb?2cwJ.9#ӧG~ ,Ț=Ux9[+JıxX+_ ݹ[ J!`o6΢(4_K-Tm ]ѪJqKԚM.av}7H>6M{|}ݍ' qŚ,B>G$k#RL;Oyr٫rEK^|^/QXh0 ]NK8~#*1&oXo41ö&@rH:)OV+i!vIi.SJ$(>=o*5шpSLU.o2(5ebMf7NS#K>qDSIZ7FBqsKrRu ۘR7l \yNwn3(W;<`V/TۻTEvj<6츄 J02SKQ2ё5w츅?NǹT{ G/M;u~M#ayH|FZč\Y nwyҺh>x1ªAVj<8qxC0v.ҤӴ24e;\1v-V5WLҎcQF=7.LFVAMrN-5<+15RN~+'h@8v^ٱn󯊧³Vfޑ+UeоeU :⎭o=m(KMlwzزI)*-K(=m?O˽]C&1iCre቞`";$"? aWt)FO !fX ]hṽHF!rpqmi &ZQ EBf|(<ʼe.)sR.pބ%TL\^p5Db̈́ iSuEaZl}5vVU.ǷAB1 輘|'cf/TSEt`_[Ci4Ѳ&ܤ/{ظ6_/.4>/ޑJ 7 3?ξE_J1>|B Qn7ݰJ6Ǵ Xy,qEpr4]'֮8AA*Gk8*^2l2E E\% pY)Ms#W +L߼u)κN@ìhA@1': Om #93&'?S%HYe>a`Agˊ`NNp_%##>jwzFEd3CY 6ej/htuc$ߥD$Anh+n)r&:*ƌjF.^rΉ͉oJFpAprth]˓R=̩䕨Nu 2S#v o&|U)Lc!naa>4#ЁmJ05܈llo3 BZcy2x@ZCQ߂ 6+Gj^B~BDž]*rնq})z#8%Zh5g {&& %,:/w o6 EUCzV t66LhI:V0LSWA7Rq3℔FϠX`}y pLiˀJEV~HsuDm q;qi &h' Rgpn6gh0=*} f%׶\&?d򀰻`m"SJ *sO[l(m:(u>1 љ_J6!mQAκ8'}=&O0eN6lB[J|;W0gYm%%Wrcyb]ksT^޽޼ ;@/.| 1X{ɏ NAZTi!)':sJfدLj_|Qp<%m!_7Y(J̕ RWr 3PjI;FQL]ȻZ0k腬[CLyV(8[;JHmRyKͷ$5>O_SlA9+B2$]]6ڜ]lE{6a:Bw!o%'0mla4MOfzh4,ǔX0piZB3K7J': ^Ԟ!}kkS'm8v )+NSpK,!^yBNԸ"P*P+S4wcBʤEv=JrD*ͳQ7ctϚPؔ'%hU~& !ΉՔ'j;@0'3Ƭ>~(8q0yyHȗ88o(W(\P 쟅q?<+9 `p= D7u ꢒdLْ+C⻐dߥJ(Z&Ǘ5ƤJ>aKZP>x7PFz5P})G[ uif`ԃG&4gA@k!H{eްJR^͢H6n=r}F{jU7&TZo+^@ 0%uO#0UKXNBIUPxnbQ< AwQ"D^q_]^䧾Jmħ=vh<ZzɟjW? h{4 һF/[哲_o2ɢ-sR?ٳnhu1^kR4N2PdwW3難%aت~9vf<;%l}޻ev )!7OZ$r&k2kDۡi'Wzb:# V" أgV8ð#gQ{'#鸌À%_zQzlf1KjN}ba&zn /ƇX GhTZ*>22MeGix#~ӽc\*Z v .p- "Yۡu"YT3n9oHЌG,-l'˜ ةx)> i R8W_^4&'4Fw޶UV[[ˀ~5Mӥեmhjl۞Wv\ȞĐǎ;4*畗םt8~ߋ9ȘNX]5I @*p,&].>v^VS ElC'jDF歯̸HBS="k)y_I= 뮈7*ս6 N0Q΢{C>tS}$@]*朳,+$IFSZkp;+əYfHt)cq"EC YPj|O#h1V7sM=yƎ||ʽWirZ-+Ï iHѢQ| Ӷi9/?t*yynj<>-j~[ Oy׀vc[~ 2TLGbЪ.8t oOբMHpnR?0.Șog s·} 1֬>(oi1W2ia‡~$}JQM"T8ؓƋQچ,3o&8rO6nO;1˽)ܙ0}-S ޿G趠δMjE#WT~H cWX~JjY~ims6=yh'ͩ$P㲛v=K[e/Z 'hsSwԸtAV(!'6A(Or=%JP]3JmAMdŘogHA}H5IaHl  |ߓ8G)x%[ i\?.Fmi]Դ 7 @tP=2Cbʓ 6Hg``Yhc8"X}bU9kƧL;Nk *Wk؈Ƽ(&H.L4(8Vг cd30 \W^! n#w,_&L%ӊiKGkU%R#CuoKw.;Asۻfΰkͷ-+G.U5vYv7 4gbf,E~H6VZa,b <ժ1cq PB:Q`Dn7tl>)-@gH%i( 5}AL/g0/-acAqVEQ $2r?q:%oy&CF\?5!xQil+bla8-O-~dgQ1w&W6!LЌspV0?{> MbuRHwvQw*1~.-ghL‡|*e!z:h.x#S^Ȃ-E+ w1W_P<[[d+vZ@{9`%k> $: FVCbM|{t85{ 9x@̩iиr ts>[E3jC C{xx!@V[i\*$ Z4U37:.sP艈>Q!*& _W?(ԟHZ{$Y"0C9f&k= ?ES}Fv>3<7 K槻(C'[˘q9 (tW ڂ_[-@uB5;Wk;&zF"͌u] ^xFk7ŊUh̄@^9}ڵ^ۀ[Z_},]ʴ?kz(0${IAXF]1qtMA[B.s%gȅ`ȇM7`yT}d~i%!gm6s%1x Uz\gm{CL@1EyO=PǒDFQ<9 ʝΙȃ=duc|.G.Xc൬.c(|rm6 {g,Msn-ҥa$< )`:!:J7uWW13^ R,FfDpᦅdxӕSVԻ81|fhQ =WP}~oN=G'E5z~2T1d".|?-7`Ea`f,o.w? r,oNeDr'[̀v&!Y/-mA$%Mfȱ9_0U OiZ>}- =rB)Ob)#@|*'( : DVC_kiKm Cin]V84~ɢv!{v2 ?yMR"_B_HzceDEWNV|v:ܶ=v=/X O6AַT^ -MAiAx36o-"j z~$WOmA8v?j]nI^.iO NScUǎ8k]RJ@Q͆m52J߅jC6$ixuic%,d0^V,^DGJԶ_+QV Fsk$TFމђql I,0% ~m0Q˵KkBJ_9m^NK63+V4"1t ٫/j@{p-eAڤc\-Q[$Xl|I $`on hclR4La Xy2xjai=E O?7Eixֱecs8(Ta=WfNL9r/]xCOt,%YF ~7SaI,@;TV["Q0e;uU{whL*dCdcߕn*Da_2>ADzo1؊fJW@i{d(C)YbZط @i "7g9AwWm?`õݛ3 >C3o\hr;:ϴ\#g8]ZMw6eյ aS+= \P~,<orGm*I{@SxS$G }Qͤ[F!S+,d5S *g%D7)cxLxнIB1楫^hH(b7qXj\r-E~GrN]&LB#SD NgΊHfHzeuG<'H{ ÎH\SG$QsS U !#OYҞxig$NVppa Vy%whcPFYw(yf2's՛9gao# V̆4M z~f8,grW^(y p%#kWP7(P2>\r /S Rf:%3Or\-z}zxjj`0v{{iN;$Q(E_2N^M04]eWU4\p(I-h?33ej 7ϙYVK#DS ͺ~t cL0{W֮qw LqN?k|-\Ғ>\I!fɎ34nq˄0Ϸ4ES#7òܕ@ƫ^M0lɐz ik *>trȄT-5n ؃:k!tFVLrV"‡w>Y sQ'?VPez˴w>Ѱ 8jFFW-?vOjj=8WFM} (|JzqL#Qɾڼ tZϺxKĦz8Ybm9#.@/v:9JX䚆ЛŎ g2p+, Tk82[A!8=?/93z0@|-e3y#Aƚsk8?4Ĭ_WsEUy#}d,"GI`*OV$FJuhپS4xϼ(>I ;H0~M+?iv!U׊b+Hh(ꮔ&uxq:27z q1#`F5 S/e )Mg-Oy =mwTrҍ3{MVt^zz(ŁEvb"<ԡ+h}TާHIUi7VW1nujJ3^2, )'%8f1q1y٨.Dp-^w]pWk#c7hABl ~v}o@#7dW睅G뚱NGVS!#gQjjP&i~꧎A\ l5J)S9NRpr|<,RDAׅXT_ᒗz`0UIFigh8U1DUN:a@6e"@*ײ{͆BTN5[4 f(Az@7T ;{KRw邅DY%?AqjXm=(p`nv-0iïG=s_{8 '(>¯\wϸi\V.3%@4ʿ*͒zm<8R,oXX7%"GKʹYalTi gwN\7uSC2sp1^z8i| {B3 ,[ķe1%d,>#vkarc;; O`D.6V>t 0QIJ<Ǩ|HU[-h5UuBl\_^MYqV ;:_p[K+!aW00!v`'/B0݂#{}R#BWA}u<#*Ku4krԲo7%GgC܂hJIyڹ衈1h {$`(`"0 JA~!pi~ kzVj`[ Uk컚$yP-Z|"@y/WV<l=K!gaj1I7TҊXc\'"b ﲀSz T'͘M \J:6/JbdebIwbJ5tHzӑr_BTzc_W F 5-+xOyLo4) _] R?C) fpwJ&-)^99[>#}_Kwg,?=?0t :_tl?"ܞrvR]w3J@ GRѶIw(cc ,A"%~ i2 i<.($dyqXsZ":;MnO)I;_1w,껰06I pxTr7.@S7*s]%54<4?s!jvK ̈:/ʩwu;_+ \ظV BW3.IPޘ26f?ɯNB=ۙ4Kl-,LހFP=%+f<8v-zpMjE#j,k֣h[gزȨL;.l9K׳t&ެO`*te°v늜Xi&oJP09s5$e']Dx8Ċf9g5-># fQNZwzvK%fT&ybw9Ik=[=*RH s@iFaRGǢancXC۸tퟴ+M-% ֑}m9Vij8vC>,ѼxyRDTKcv)9<Ɠ#AGz 5_,&$]`bЊY#yq:g)yb瘄Z_|rϑ&d Z-Z̉}Ka()w1bPC!Bwў7\=8.}*~u4-h^!H̀m wzuA\. )6PhPlߴ1zn+wFjَ>ࣥw:` Aݞ7ZCk(lh!'wx1HS8PG4 D L#ao 8gJCecMbcmWP,ݺ"LJ;d.eW6$mBBb?6*3TD kӵ5[M{% `c]Pl6wԞJ_ 0]֌<C޾9 q,H@%`sOa"ղگ.>q f|RM~w"15P<+29}UII4m-=yS .8RFoJB C3Km`'-~"gVΉjs`Eg^_%ꛎ懶! ԜJ k14 `c5Yи(joN"qfMًMR(6@4#XMٜ@0@H\Y qLKT|SR:_ZM,_`Uj[%id؁n6Sۙ .*30!rMD Ao;((c,x¡vg{Bm5*pSuu@'u88Ks ːJjTe~╚r/$VGKjpq m QG?o7,Y&·  AWl7ۂSԱر+[Ҏ*W+= [|]2; ԋ*{V6Ъ+*E;6|ʑ)CiA٬Θ)_D2vPZӰnʽ>Ⴑo5Nz*u 6=οyH'LT52i:;{7|v"b 6*'djjLN #ܸ[ҤaZqkrycr5ؐ%QcPSӜ;!粟[$;2l }ĩϺvLm^]+?~ yevsۢLi{)/Ⱦn "zr%U4{ihR[|(Pl MHAnI;v*2:9LOOG_ֿ{az6F΅Rƪs{(zv|nFHhٙ" W$ *u>( .f9758MY&v>W'k]8Իx R6RX2[3I˨zQ,ˤ v|wg7e.W ѧ},r/M%Τ e@wO^1b`ű"*5c0jT;iNG8b%I TΟto:c*?hÿ%) Q9uD)L#pSDlluQ%0xtt0OfY!4b4E:gH6Df]:Ik9v.Mm cKBsum,+|HF(x(zHS $A/?KhR$9p:0f'&ni剜wz[&DdIr&JR }$c̭~>~89oisJ~K- ; UGj_@.er](0Ķ],\3Zb>M$#K][t{ e-l>p5d/miЈ3<8TĪJD w^+"]Fm/|z߲9 $:Dld}v cH$5`x%ҟ&۷硰),o{ӏ ާER`:(x6odOjX"lvQWZA{QKHF\I󯈫G̣Jx-'}ݒs" &A=λSTLXŋ"C G rpȋ9r`M; + mٗnh}BI |^SfiGE1(ŇH's;gs|W^AUeu8J}ZJjc,c=Jk=bѦ)#Dܩ2a*7 ],HAԉ9+3!.^΄zʻ\NzVOΚ@fS/ %hOmSP=4\RfΛui]H b #| T !H1{jl.mfOH7n}30Qiq |Ŗ"&0YL9w] Ž2>{)4wV!z}R Ə:rͲ*:dai]VXȱKv? էKH2Ѫ2{$']`L&":l@a[P=tX>7ںөC/PgH2w7b? udiÀx 7q2y>}R|!zO$5)lNNwDܹzc\_S:?JzEo\Dȹ`d/kNYlj9*ApI`A~32yDw(iAww ͽ=օQ;9,3w;D8- 7ظ#Y$V9 ̪$f^j6uް(0kXOㅤa%tUVFh!oh. VLZ0ꠃࢧ$m?Ab67/jB bBe:8ݑtt(g"urj /<nhf98IS_NeL;OpoE ji~_Osutd,D_zaűlEAI;zt ư MdLUTƜDH]Y؋! KE-%.3b7C;1%_6@/}5CؐFuO}URrFsÎ2fɯEXb ꦃ&F| $>Jt5"<|yg*V@^V$-q_LYȇҽ@#.m^6X\a)Q%'5[M6K]2 ;;.- 9Z4JkDZn0s[,<1f ~-!}{L cek(j6treщgv䬌>C^_ UrO鴂G] 3`O6jـ)6"%Œ" "72!C{Qy+4%$*/'Ȗ=ۄ,'*i/E?W2Jo6j"ٵ܍2Yu$E+7I8=6Ӎ b0"I7宥-86\&ヌ?F?hw'׎ "0jJܝ JsՓk ]gҞe3Z(MS^L!dB<6 jm9:|y:߽/B^51=m*v8* joY1*])l45v:<Bxjy䀖A=\lI!G2dzw$KLد:6L>IR=Rj&ҩ S'J >qyЙmCv[V4QmT( E6@D#aHT1 m\Ou.ӣ8/=4 A!=2ENL59g_v\ǰt}d+qq|-WOeK h!q ل?:ޑxf@Y_Vw)+Ǩl̺W!s@nLc74_Dޱc5e y=ET=Ld@m0@gKD`C"ʃ-s좜ƙ M͘_RƲq17S>^ x3,xBy1_vh3"!>vsm$%CS Œ8$xed%%HDΆ뒫<{l3UuN`Xi,:U{T̟9ap'w;/|lP-MĚk|JݭplV^ۚ`.RHVG,Z_&SNb1ˎ+Bxu$mXfʹBoVX^*6oĸ* f-v@XtYhh%b+O(Kl lEM%owxUqOk:q8idB&9&,'{1@V+P8?j5m{@z23*#-S)/~J>Buh9R(E&z[.60ɻ*qzNc*,u]ڠ齝Ŏ>TbO{_S_6F!7 Gխ2=HؐuQsD?\|SJk_ P]'J7#0+P(ͷǢ(xRW]YdZY"wrlt h#޴*Jdl1Z `%)jG+Kh_S^4w3X,WΪc^#ig v+KXR׸uj24AΞQv\3=Xs.K z(~l[x4-ed 9{>.¡ JãQktCŠ&ul̈L鄭נ̼R a9ʶq!rn9)f_w*He0X)"{2 UCŒlf>:MG.ZAM+uHFWQ@__]د21NX@.K@=$*?hي 촑$n;[c  t=cvݢ?@I Z^2oGN;{„a-42|4' |$ x bJ&\|95A$1&{ PsK~WTye ꠺)Y'`"ś!? %P2:nA~QiWҫK y*+ ? }I떡ܶc}:3-{F HKg1(? h_IZ;zh~X)gDJbJq$S6ӧRjT%GUhq(qk.WtҦ[5jis%j IR;$p1|0F\v̒P̝6vN̦.}r)v(_]NfSwK)j _,@aE 7r״G*W#9lt'PBn- /i]9|;]XqjyfVMGU:$'ȖrT3]yㄺ0ATZJdwl 82=08!h6ƀH5Ak{ 4OjR>l,`wՕm$/[s4#6Sk>̎6-ma&_~epT:zJ,?G.IS?XQ5JmX:E;`~(WtB`68D90X)XamI42;MCddyLg]Ƣ#1/.r=Jh17$W~VHr#a X]9P7V3%㛌62€ #0IdӃCg<^:Q+4d̹m?üaA{SIߤ·L z{D+w|5JE||\'}d;t@DRpw[M~`nI. 7G'!9$(/"w Sc}8}Ky(Y0:/7\.(L&0gu~ ݶD5ߤ\J.كۄ\ү2Krvpj{?Oj&4ݯJE}Qm2fk? )4WPЏIqX[eXV(QʹFFd[h5_կv#'kmA"BG|tR-^1b?p #wL/k{aPJ:9U?$ YTYbw]h2''/]/[9z N@Jd n mepST~_-BX߇;?)A'ob0l]UT+ k1(RXvC\tkp}+(iw |<\gBbWY!iM8}%_^k`A([2enKn7d|Vq#nY܊_2'} =}=xJL16'@sS<~BA 'Fuƫq]i%64R[Wmƴy"8i$R}\(iׯf*QO1mz{e #\Hɀl[IbH33JW d$#̨r9Vgz>?.:m#AD8;]* &o%)yDSŞ=@ܥlY3{q$]Etݢ28tZb"sC-+mׯ!BƙJO']C~'9ʢHJ'\{1 a]g&? |j{?\LAmlß61߅)YMQ7ߊTIKd)L#rqkg4Ew/ ߐH–(Udf+zbX'2`1x9 w`XKAev$a$ P/ݸ0Y5]&AwF_Od/ "M0-EL! O5U"ŻQ66Q0(I4׈,ĤM̻@L̺ČF') "f>;!3,SmZ|&VAvPDj]Cy%RKm Nlzf͓r$!gPI"6zؘ?JNke{^?kV/E92VhFl]O1ZnJFiV^#IK*r+X`P-@jKQ̘EoC@CrδUWLh_=&l%4_#>4˞OA*pD_ fɿNJDkYc#iK}l6+XF+ڗ;ejoZ>+8;M2`0 vW3`k󱴭3%cE@ppffہ;ѱkryE"b2_´K7#7dRjQ n1y g(=aUSֆCV* D x7y! %6$# !5A7ɰ3*9:!72v7× zyZ"4,{zte4ec\ (e 5 T}dk i8h|8Fo9 c8֦pRu/ј5^[ 5^FYz Ĵ:OМ"ߣ[13{GI(i:G~0oj F3cbn<xtc@VKIp"N, QSyнK'Q/ر_Xpug F92̙EhMQxM4`V{K^58$!H0~r9:bxEwgg ǯ+IWP덼ƀNǶjB-g*U+@!ACG[XCxRlk8Oֈ DYOMu?3 wIrRL26L0ELB_+ ܦ! /*λt;rs縵z`tъ&CqtV|Y` ^W,QB֟WuBL5w궒RQUgr,F'aHr2N?Ugz<̐j}ͫ^C w{SN_a4p%JrvWZ1Aϵa$M`go{g\!s@4{ ^[8~NdMNq m&aZg#w{j 3|&UbZf9{;jVQb0^55ȖS٥c NͺWxWəطJpnrXU_ R+ŧa>jSHœH[ech,G@"3YسPh> y˯TKT۴Yt[h!.Iv85t 8+!BY(w/Ƚs%bMÕdDʇO[u47[-zX |6OHVC'pܸ,"Zt McPjD`.οM˷ F 3$˙l@<Iej~x:ܾQZV<)J|Mmy.Y8*qERX;N }Bۡo;x>ZhHLן>=r>=~yzGPur4"c):x!-i[@KJ){"gQ+z`ʑȫQN4P͓E:}T['3Z=s% *u^?n?Xj 5I<Ȑj0//1>X>ƑFY 4Sת J,[-.ڊ>GnjD ZVmO3XX(J5Z5O jŗ\Ln^_z?9* f:"ImFVZu6Jp|ܿˢY4gAu<&/#+'xnr822eXfeCo'iHUevxTPg RuۜH4}b:U(+ӧ_k^k\:ŘřVJ0AHsA+T+)7O6ra;;EהK\n+1\){T2l أdW$TL1aE7T>ò%{xމfIW5ݟQ}se+lb0IgNpfe"a K3=0^#*E,;ZvWN@;B<dBJ9GsekUdt{&䞼-G&-+6az"XQM@ϵ;'xl!;m8+ ݦȔ} 0:a=챍^+ eyVn JlR,"SI8z)dfYwtbN4dvrV+RZ) ؇~BED%2enpp>קibI]1E PVyJ'G!Q`BE8s֬Y8Vm"#rfL*;oAˀ2qFw։x{CDJ *`CXJ@/o k%RUSw4D]2 354?,m. D֙-/"P"ءʗKt~IFN86KgqQ!d[zDr.SչM1qȢbg >Tg, tbe5ߡ~[Z,ǭ%f[xh3𖰁W*Y{Sy2j,p#a6Bjӊ cUl!+LA%QYEpOWS>qTpm 56܇>3^2Lm֍|-d,J{CM{zis+tiA| ߧIg}!Jh+v]IV_hJRP9]?eW+"N@ WUB1[Y/OQX"D/Q)T$\Ez&$A`(K_Zoғge*Yx}X`|Q$gS׀T| JLCTp' nЂ M-_cP١{>e=oI QA) ~ dԙO5\xU~U=rY ?63m"=ކe4o[5_KсP9qvVfRR{c_=NQ^&*r*[|Sٕ|@fq= h&؇뽸SE1ԛWM+whF$5l(}♉ oSe!+`N| h GB'b9%dC1Ӗ.v?R X'!8y৛uf.?3SEn:V dS_g_gr^ZO=wmJDW7GDBH8m(A3j@/LM\n^^-PSIWCÿ32q?y[6He<#SPݬ: = wY!VXda2_ٻ Mȋ)gjݛrS2[' EON qվ_,iFiElnGnHzƻU737 >]]+\Wm_rb0`ٝ:tL3 WA~)b":_pA-~n2}~Q͕{Vo]*pA-ӄIxpT`^]  棔M`3BK Lu6^z5DYXj\h{v;ݜgP$Pto_2 X$tġ(#A'ݽS [@$4PqQ.zIezb*-2a38s]C=kA%ܺIvR)r ̝֨r٥ٖEė ]5EР$z6K~yځi<Ԋܙ]JpزR?^w{ur[Aa;(nƲq2ZND/;~#FJC f{3:0.8@K9޻Rk0iS9FC7˰Ҽߐb= i.FQm{U OѩLƤNņ͵H \_c&rDуDV"?*\5i !tCT;{N@v~2< {Okv~ 313 K`V'8_/x&:~)vݞ+K-Ebe&"˂ZNRkrfeXs+Dl'FUfs\K0~v#č̭p{9/aK3ۇl[4Ot=V* %&pwXݬ>@{OGHz&`CDnߘHTvFSnQHK\9fvXҘ P ִKя!6ߝGl4nys+8Pc3jJQS̬ϯ;CUĿKv 0Rf+TwɄ-aWn׼X XMٙё.sJ:b;\XZLxS'u;^@PG7;M?zHyT/T51Iэxޡ銂jfA106z(Y|*(ZS &@AT_1AKtB2 KV%kݾC>iXK: 1f]"̝XhP-cqi>:f4Awd™4_QXꎧw6'1mdOn?P=SkD07)noE*rl'Ffn՞:M(ߣHIc\S'S|{(Fq0yRZ o@.gԗysi<Ծ uBeӶ4 עT A%, G:j Q dB9G~^X-nlC+uPFB]V[$}P1v v4 n0E=D4rDR +>@;9K~D1XI"΄F;Z0#`<UbQ63ޑ#S-%?-9Az+& >BH4\MȠv٦mOo<[ʳ~QꪋN r$&)Xz7Cp^vIH&}YpzuRfde!\.,僡y$Yr ")N[(prVUp8ħkF{zeMÊoAȒ3rj4-QіU͘N1*>y >2B,W}z`-.!wK.gmSnRLj}76.~M6#GbٳGI֥~7nc%z4zWGՋ_XBMM h5p;+9”.pN$e"7 +h A# ~W|ɼгJ.X:X2"\#ϧֵHᛪQ3SK#h_Ad82z Ih>4Uʀ sTwLX U[d_3.̊p}u[dbKÌ_Rkhi1Sg ͤ Yu rItu(*Q<"߭}ʯ;.yc1`|rG5y"}K\3.CT&Ԓ "@_0?u=I48 p}_J$8kFr۲$Z/I"%^mMdc&AڄE_\{kjY D dUg%vsQ5G+q8PC!7v$30S0s#k/:j0VZ )}G%oT|6cyzOx&[ŷ*:ǻ#s-]@cT.m]h*h"ͣ^?}}i 8g~ v!IB,E-+r[G# bb˯Hu[O:6ɀerf**:PxM3kvEkg6[ $r2`L2LuZfCp*Įm{&$;/سK+zy$8u0()@ʹ&8+Gn0l;9N@&:v|,ΥCGY6;8&"`nf]mPO {0L/#w\tL?iL 1AFg,P#{u1*x 92o3GwNmg0Tb 5x] FŅ*MAvy`{`*7Cfm9 ^"@)j!0 qZIaI.ioN4"%QUjӂC 3ہO]$Lzt~("U֟;]?~>_m !"|`E +¨ُASN=\mf]eUBO]2 !kuMlYzL3{tEٯII1eQLwq NmnAmHabVghI^~|M&U3D|9)u|jԝ'pq:-it5u1o}u%cUf 7{S&&Q7Ci|Ύw(;8HXn)$tSH nP15TVbӿ}.Ph;#ӊC;QyNiz3$y, _~, {K@67w&jM☐07 N]󚐁ަ /z@L`P- z%` 9isL*W!vaj CsgR,6Bg;Иg˹>N|J鿽A}X+]Cbeĝ/ 6/c~&Srhz/T^ *m rLp,".a zas ݓȃhxssqa[ۭc08,"~vi~9l&Zgc4uXҏPi|=qlA|!KRgݳg[le*ƪXPdg__`t~-7vgTbZ_㝉~7 45uƒK@Eܕ-P2ysg%J8 NPբcIN tlaRN!d|B'K:ϱamR@;X-oyDy2.qK/XƵR1D@ͩO/)a@x9r4vu;؉/;n_ Bϐ]*X`s? ҥUڙB,8*X+' s"ZOE$^6 > pdtbr#i\WrxhX8z * Pp(;І^'#!Sy n۔͌#_l$^j<|ݿ"}TdGS.<7OS`\Uܙ\i~Ex=b{w)^x,ZS{a ğ͠y9ZIϪ"d J?Uc!,^eyZks[cx'īL(F%&:!HʌCxZ0!O >[YUxŇI;0mBT-{k m8|5L[֣ Z2S;^7F'y9N )yq`J~xq;b*>QIqMUT? +|EP&Jh$aM=5+coℸ}(eC!we0E~@l\/;3%(iY(l: j24>:nܛ>ʀOb:tӯ[yD笤VXSFsS0w[sãg4y˹5`N~iC=l%.džT}n! _ܲh2i}77D"L6/ݶ#:8M>Z'=hʷCYTOes^Eou< 6?<, @]szdG}(hI_WIu#,%C=4=8<K#:U?*X.R~7Nju@/\SnV˟s_}[x(/iab9hγPPF ) Fs雠JcIg.  %zolV8XL䂸0ѫ/x2_O U`׉6Ǻt/ m*f*ʓcYx7vH"Na֙ Nq|."à >f= eL-̓5o,@RZ%9xF߉eյ_}"68&sOrq=`Wǜ1FN|*Ɯ hO҈5?nG+o k4!ED$7ZCL݋ SjfUNn4ِ/| ӬoZ9%MA#5\UlB @|;J ^:>FA:P^|+ӂ<ўf.~:^萣z6MEC W/Ԟn^PEZѐ+?g:9ź7Cr=!:c7=CVY3ڵg:@a|.z(~ٻ^T\$Oa|F4]:8iJ$9:2'>Psڇ+-~aϠ9ʿ$H;V^bqQ0P#1C$sEU#!ގBƵgTgJV~|+Twus6)K$pvkR Qд,5ER}CQypq?!&гH-i"([VZ+?Vv1߭ Aj:j*~]`.\yŢAšH?v/VNB,4eXi"o<99uI1&*_=~陡zZa?I>,,[ԡYtO3._P" "|/ D2;-abWV y 3=]O1=!p2 #TZQ7e v`4\dG2}?4#KՁ́Q-#.ռLpp-yh)1gOuvT> u&$pY2̰7 pלْosؤa(80 ̝ +;ܩIԅ3{/qy"rggH{Ѕa4?˜ܡAx|(;:T4c-˹hG?, E$^nS*-f`ԧ&*{䘆K๤]Tm^xy͛3Vj/2 :5HeUX#IBq[5V&gߒT{7]׭aHeP]@E[ϥBx<5 !Aba~.wz9eyӣ2u51!RcCv@#`";`\mƄo b$FpkcJ.^Y\P'2~vy?3'{cka_:)]h+\SoA4ˬb;ݢhgڹZ&OKIj FTHKOa,96:G| wwOzǚS|WD[geEJ6R$?b9~K_XvzԆ*4:`MC$`o{QiEP Goq3;;mTن"u&o2FDĊw%sҜne2i_.v6VUɃk}sU>'|ַxw>$i?)ɟI; ؁w.^5[VU}z_r@2P׻S5O&;U.v$2}$ J/^v .ܛͮ=Z9]d:iTH' *?dY duJEuE"Mi#xir'D#@Qe}%dqomRپwAD3|Ь*32 uc6hlo'gVvi)$@hL&@Te촰f(w×td,r47va0ϼ4o @m0alE_'0ېs;t:)T#3HTfLfiV.vUJtʐ$ 0Yws7%inJ11H5}0SwwU5jX@wZBr1#f ո &Rhm{ ?7^9.-՟GD>j'9)i8޺=N#4P Uҡv3r*fvTBo/"tBS\"Eܕ~Yʌ2>1aE&U" y6m8 ^"!Fbh_basVNJ́xuw 0kfdWhUV^²D<,E^)C>ll0NkigenX9v+ҍ@= 2Uw%E8bFߝ} A(W\Z?5YZ *5|hNhP-UNN ѡs5A)f /yxOـ5+DZMMhQ_^y]ĈHija;[NAVFQ ̀;<4o#[\5"UEBo" BsRy-mhL 5% RrWB""7րLb3{Z>*S)@m٩0ݚґ1ӡQ:^ug[AbOr"'h:DjT0-o[ɋ:(2$'1 FmxtFo=-17Il ahv-Rrᔛ Q+#TKyw`y RSi/b8Aok#;sDn~D1U1HEY?t3R|OKxOR?oA !{_ڐ(zYw?݇*2Hsb(eDŒ]_Y(Exivg|3  a<mXae#o=#];xpƑ>4| [횻ZP?0G5̓_f+Z6R/cJp،sd* d@] -`@%U bCoxi:Yv^ݱ6Dɫ/C@ i_U=%dwqϧë;HdYW4֬V =!*x@ͅ{&pKOJ<ιK-lঊ(dIuY4<480r)aE $e>TA O?s@\CTgPvx^͌G eK&܃)F%-K8ђMY;6Un‚X_GϽYLN$O_ApD!:J7Q9ixc3k5fcgNXTk@nk] .Θ\jfbjFqjP l׮ jVNޑ"Ė}?*[H7lJW,'rjX|Yn|Pc`ٝgYz{]aI|gvߒYi>&JذvO<9Oxn]eaƶφN:C=hT; ړ}=4etf%nV; "3BB%rYV(:67itd6 ^8o)pN X톕CB4$;쐒h і74'h|jX^-*F ^Q@A"*r[T"j"/%$24 ҙ.( \ni?&Xuaz|z;(Í㛥d~Fely!*OO#$DRQGOD3J+ז`c8\ZMx(oQ(ъcT5d``8vQ$HQo i`71,cCfP:6uI޵M5uT%}XH,uxlkٌtֿQ 0Qz_o'jՑqb#Ն2o`d \%#WAJ-LUsEIK6DZihpѹ"vR7puY [ %_y^FH?׶IKP&ESte6%J a$L7/&̀uɴ\PXE8䒒OI):I쟔-lOIn\NFq{n3$gc^Ē+ăr:R]Mrv6`ܴF>^PKβe%phqQ+슯5&^VW UkSɯHR6@Y(awUr3ҙrь0v$7gol, HFfxl3*j{ըz|l: 7r-x뫆&'Җoc0]h =/S+2Uso4gF] V ۖ_qԼ25D1JF}i0)ݕǃv:!1YShsx|Im(m3binT6@ ]}Otl1i_ "w ,B09;% DWAIB>҈:eȾ"vj75!(BA ҷ;e?MyQ6ڞ~PU|v0D2|kWE^.7NvBZۨh(}0EPDo"WAA(8t>ʘ?)WbDh ѧ~לh:z )g'99{X?n&`(Y;kl'XAS܈¼WMX%wϮYfKvgKsOF_ Xxj׽ư`uYovS@hsIw͐Q(%L#BGiyIcWdh /y6_{dhjr&}ZuM~J"?'c䥩\')Пw"DfXWƮBam'8ݽHq|2,FMF@vEw ԭ/BG} <#ݺQ1m2$5tZ-:ϺQM RMݮ1NI ǩauW{ h>?/96'vdXz"<yU(R`sԳ~xnޡGT'7)׈l|~ۢ<{#, ԔHBhnB]YcTrw7xQ) D4f#_ ML/Κ<5}9- 8Aw׏oBRHӗk,ׂ(-uݤMu5I(U𣿩6[?(rժ~#(PQi?Yau`i4`HMYUУbڪ6;3 F\yϯwªeF纘\h%(xwJ(YQ#VoNXH8=д ºq"}W}<~\B'_ |/bH.n1ֻ|IjI8P8_wv3a /4f'B[T`] [Wi3 NPZuK Bo=ejE<gkDnT\" rХffw5*HqG\:O0qN8>-@lt@*}kJ~9gl@]^_pxŘV! s?rB5?j/O|C?>靪g DzKd CE ?=R=D#OB`ohA~CLhڅCKγUt1QY\ ._dh]jt8\puF N@6,n?|nӦ݀o"sPԤ #1 hC[:Cdg + $+x4/V2(&YidZPrw-{%ӂR^d'WmeӐ \Jux꽾oCV"H03ŝ{4+#MG tG j ?MFs|*늅ZlCvu e]d>ІA ػrwǢD iTTOt jĢenr8mC@%>Er_P;\0Oa_F֙ecͥ4f`fƂ)wDʼn3"8A.ӆ wPwW >=̧l-~fv{C/3\8T]8c2b s~< 59\2RdX.ub4wR(7-%_LuwW^|]!zՕɝMCQL,ɻ Ļo"iz ²5q DHsXi:cW'쭖4k0< [._iu0[*Jĥ&mk"pɾ\>٤|dVATh{z tkU* %vQݩ! JsN[$"uqC. mBvsd!X.V LZ‚m,H1.?aekT aɯP-]0pC?Q8s?k0stެ80p.R"MY撪 ң_deY6xՐ๫UIi̅irJ!qxY]lM*8ƠK)"uts˲N >o/& /Y@9-L3/}!qMZFDž9Ԃ%ȇX70;Hut W`RȅulWM xjO! 6/\R&d6IuɣL-eo01#gd\G lQކ c[@WBU-wǠIFQ+*?MK"Z|i,Vn .b۳?ad 1Q4/31ߖuNn醡!4nj(M\U'^vyv8SZ=؉pݘ1E8Ǹ"TdMn5Eh2wJ ъbGBbP֤ͱv^wb,{s|Rش\l\X5n=LEWc~ F giZ4"kH]@%5'GIxQǭh ̕3ݳ F"֐ѺlpjsiML`]WdF+\YM ^{E Oh}|m/L+%9kjVx[[3m:E}cEv^ /,*RYO&'Sfbǽ|mY\eIv U}|mۤD sW9'B |auJٿD H]۪.aZ;౿ɮqB_E\2?RwD]Nԑ CTZ,RڸX[eTn\en'ylp/_YLOXf#uS䮱 SSĻh Jii-?˄Cgf\!(4&X0s;!ږba0P"և_~U-GUSh1,( 3J.6dz2Iiz|TFxU7L1MLΕՙN'I8|~V3 ~;kT] N)@@|WW}ș)WkN-9r)hVFdyt&%$Uף> \VK`ZJ%HW+k)R74Qv[*s"3is~~5| bЎ~#69ᑢ`kjΞFytfw en?ƕ7j/9HS/Cm՟;EH?`H߻؃:𺼂k"EwQI5ql3f0.E|柰N#ADHORT;~K$L퟊al^@ڍu.Cvɨ$gefyE pݯ7AfDi5:TnK `xNJ7\KLaHM>殚w)L.7_'I(CX_2L4&ׯ J77XqzԪY'uu5k;$7(0LȪ#e4꫆MTq,48Pu&1Y0i6Q ^ OUQnsEt6rl\X3&`jiJLr˯ ^{2n~7ʣ@pcй<0}p*7p@vLIlM ^o =]T&{X.<s H_Hmc /_Fr19\V1 S6̼B/L-XIs~]K3F͂Y0巖Ν sws*0\54Oȓ xm,q$3YLuڢVv?k+9J!H<\2{t-694(.G"؆҄:Y*ѓx 1d'i:ШMZk ޝT :0݈_~"غ ~ #-u1ezBS_VHiQa[n?- {z>Mu@'X,'.&J6],XScȄb&0ZB]GK],XOcZGO --6lJ NJ fblc> t$;$5xLs<pUAcfv"9Eb \,wV2Kcuh|=V|S-a[;%:֟-ʮwJרHu5 ;%::Vcg%_W3I&UlJ` h"H{Nz])* z@uME4C;lBO8*ܫ&|GYڸY x|`KNjo,-mի&6\wDUY6hC^H qJe'tgFq/ҋJ) %}S,:CvN%W"5MO<ͯ4]SP4ש/kSGKOƘVTr1mլ^"jrDo,NJ!p|5d3KWqA# $&5F^br-2oΠ@;=dPQ¸\yw vk?УIIC|5oi#Bv;i_jЫ)7 3 X\<,\g-I2OXD⟤lxp 5nlm :[/0y$4b ph g T 1A@ۄ;RAcbm[R,yaٺU|y1.Id\V9g m`Z˞sc`B=6X NcH9EZB=ҭhJB֥iY}}h'HI" y%fYB˩Tr6+R-^m+ވd('hy{ڣmV<:PgGV"5D]ȽHwa@ $L7/7!~YKxܜx챱!RtQ,>W5B6^ m6ƆzϽ# l p2]B?S hNTU :&QdYö UW4'(hC25W[BGQ.dW]fY?@zS_C#SB=.< Y;ۍEyH!X;C0v6ɤ NVY35"~_79&A{n-WMc+\9ivvnV7F_K )騶!E;$wH[ S61$vqb Q댻> @>BI}PKbeӷ0o{{.p֤ l*},0pElk)RH Lc3XGf[h ݔ_ ;TTe]Ǎ9䙐N3b c:AxOcJQYd.QR82N*?.v 2$1 ށb& \7T7TH@!On0fLŞnO[un3/$F L }\~+:)Osf(q̙F'ƍ<6srwS=ݡ{ g^;ْ'ٜ-3U2 &- x9p뭋$α@嗶|sT@yApiI7jrLӊ,6 t:̛p{K04_yyԸ޸ ي6S6a8ٜ rla~.dPX$,{G7fWjU:!ɕrXg\"9xAy')5".%'ɶKk˲Bm4<mfI(ʜQ.F{`n)W?`T1ZX%N4a&>FǤ"k=ˆ {wvf< ` Н'Gܯ6]zg55 +itCGH<3*ډXw1"YUO]9y 11Dj5rL"qXeņQU_C05RxNf7f?O\^EH'R5oi:$yӑrw ;Umo)0D1 /RW΄oN[\9  (F:6,*`.??;43z?5дfp[s`0oe0fv4aߗIRy,r 2d1t7aZBQ%W=y=?qx H$fLR4hnM4 ,R}a T7ܟ3Yk6U?Tc z>I9?w `>q斫S*K~py|^IUm #2'o݋OL)Y d:|qj?̪:g0}'1@=ac*&F9O7˹,S knEI)hxA6i6DDS(NYd"{J/t)`b5dpW#G~a PERM/80J_9pPxO9*C<͕pbBmӠ/wysVe^^9nc X〜tlyU_j"UAg0.$HΜ|#c^Φ%vCԏ?̹_e{f#4DCK*xIjUe9x($3&Er؁PCtJHJql!S7cĔBn(gkwT,n^ qӮs 8G1ij݉Rxm5{}&obg%5[477fOϨv_BB!Z^-m\}L2gx~⍦6ϒMz0oQ}=vt,)l>o;QQek#Ew5d.r:>cp\' *΅ ]^)`֟=m]V–B#i7f#C3|pVikHRyZX4a1VLǐnФ7۾>Uv >&Q#BEA#۽AvH7Qote %VԺ?'+Ff7 aC20Hmj7ka`=8V mƁW{G"ٍNq)CWnJƆ%ՇQ}&7rNJz6Yg#dX &xlq>}w͹k{CszU 2ǐU@hFn:;1±#4\ 26me1{!-\MX̚ltbZ/xR7Fv[- q%<Φɠr` "mvFBB :UO!rô5I4$n9NZ.2CdxY,ecO(*z:JX qXmTIWY{>6{%uʨH5ǖ4ATI)WqW\\^SQ0z"/>_(IX!DP4ZqK|.! [.G|i=*} mPQP`PbЇĐE!321iΏGE;ݢY^+L8G5?Xɗ;kfOio' Y3Jq"aJ ~MƓ %+ze~ˊzl Ykoa.Q)mTcK^%y t.EN2yaveˏ1b|mvM l(j6ɛM9/m<?\%s}9ITe~zm: Ph/]*que~Ƥ9&cۥ"ݝ]x2؆ٶBEMQR2z}r+':b neD8!7_<{z_O|e:#ȭr^Sび~Tl2C5JU\li !/ۂ]F\:*6 J dă1)B5RV2UToCN,YV@9HϛW_}Uy~/uM}q60؇D3qוLWj{nub)qQ =&OgkYT,E]6/g\;qO&<Կ!@: ׉eLb-_$;Śp uo1ͼ,+C& r`Bw|@н'-kd4p/FV2x)-!tI,pDLM!)K;L)FA]uc'͇+2f篸8ȉH ܽ5LE'mh6 }d;fؼ#sT99Uwk.|w*$DB:6U%0gh|.hD.Jb~Zͦ#•qC ڧ,H=<ޢ1S8Z&Ⰺ[~AnxT_Z!*]ub(Ս[mIx t8'i,wh 2/ic.8ҍF^_5PNnx<멶|Ty;iP('BoVxhdКZSzIB?ߊ5%hXSSEUZņ`O?%nG=+(ʭ-0l;5L θ&o/g* ;|QZUʢ`?=|Rg_e߿-|9Ī3H(L =dWqPNJr|mƸv%dvki A[`OAU[#I~х[ySF828@WBPʙ-k9vq-Ⱦl9 xu+IB~TCJҖ]_[RE(4𨆬Z-A_"@oyVbiDT6(Ǥ3]94 #o%s^.f%7!m{mޘ3'}syޜ CfA#䆩xטv.ݾK1n %v-8E<V!<m|`PN%ŒA~F Ƈ& JS3,B/){!YJ>l1psrmv*WT\x@Q `~ hva|t2ydV0 ~_jeǯY<@G QKpwLCʲ$O!5Gdl.>$jwؽ6#^|bSR̀2FU8UCW$&$V[$&f|B2ܼJЂ<]P4W 'm^XedO9!~/oB߇$DT q#)K1TOq Bn!CdZ.O~uO'?`ܛ0!Tb wzTͣ}Ϝ" êڻ@YAחBL̽Ŧ/O8왋B`keI{(|5I}/FެX~J?1ghm6΄^#~lO xdbEB`,4Md| /`@ИgQ20º򋁪44CkM1  ݾ=aEfw]B(% o / O6tMw9^^_m 5qw$XikBSݩg` =Z 'Z)RFcV;D e8 "1i;td@xA&IYkSU;{A|yZ'ZH&kg#zmN@n۾zŵI]0ݝ X 7xQs*j^«Pl;=Zw*CJ>{&jXT!zU.RP9ptLcm!PӀaDŽanbAZ w89.;ZӼ'Œ 9RBZF̱Tuq۸YTH0 M4oյ}^Ea™:.~Vx9l4LqVF.[/Y%;ت) ( 1p8+`iQ^Jj"?F Q϶A ^<}r.҆XpլUoVP RD'㘦e$rpQOw,kQ?0ҁ]\IҧgđK&Dzb O#Ȳ&1]e!7NXd=҃с53; {FMV2s&dF= /aVM#Vz֎^.Z6&Bw`;GA=YW.p>@זܙR\9R[,F*-x8`rt ׿HE--wGjT {M*}3G: d)q)j%|!5}!_u\)Ȓvz$p wqd&k\ g3iP&3d],F̗tK'@|-۬ιpA剞Fo dsyC O}/^rLnr iW"G zQ gb,'+"ZUu.U2:JYwk* E\lƏ2m1q^D ?R["#\yiRvIjJ~Ljt{2z,b4yAGY4\T|jW̌YA5i/-l_v=6yA_8kk*5ԣH á(pFBs.+' 53 }W+sX`߬IeHH}VϮeq#ƊVn&〩[Vf~ey4ɑ+I{݌[bkޒ._OƦZVϕm}ўd4Йӊ&4wH)hadRv *gmrl?|qfވLz  Hu>}#FvJb" O뜽_. G#qs5 ~VOX+ܲu~>?n 6OﻢpLFg_a̯OLI/ﻥntrYd(F\e(.E $cQ߅5$)4?QheJm]%pk3&f*؁f)턐#30${_+YC'NYFT.mC5L.YOuRDv-{zS $;6=fpsO%-Q0BZBU>$yhL.zIݣ=a'\)n} Ϯ[o&M\h<~m3gi,H%J5n4rl òNBaDi8px Zsal++v񨁀5L:[cHN Ǒdnn{ݍy$OA9ߘC^&idcfŚiq:ѲeJC8E?q w!ߪ+XԠ>S E8ӑU!z!߹^+H1+u |ܭb ײ}Jy܆{2De!Q['JH .~ _X1B| qɄdT1#jO5uލ@X g.˸O*;'Ϝ=GGêF Q1Bzh\ RP7i[x?}}B)!ArPo֖(nXɺ$(|."k2e\=gr?H|fCis DA! >s+m'O0%J^YraNy@|t 9j1n h^Ȭ4^E҈ dY *@ |qZm}bg2sZ_o} gwgy4k_csāq[2:KK}(ciT7N!dDRx }N> |S‚ nB0v x3 Ck/=ݗ=ZA[_0;#'`mQVzλ*~.\;,Tcj,YyQCb]e= `q1AL2ާ<=X~~ G(Զa0mMlB9͔dPۛ$4l7~Ku'ekB$19>>$=`n@ͱn%+$o-qpy@C]oZU޾G R\%]xBdsc6* ^` bkQreSAUhBиc#J:L|[KRΎ6.5nr$R{zoV zJU/'vXY؂IeK>P*ޱ+츍&2GѪXLǛzzF|_mѮ$:FEǧ$Vm Ͱ߇Xvxi PN#0o=µnCsy^u!k-]"\H] 'n@ԉYDJ vŔdL Ӯwk>RX5[I z'[kaCX|2s*Д51~ eGp LrZʹMY6-i*h gחՒ信!hUVz#-  p0Cب.FoCu}95ք\bh۟J3=,&,}a:}WKƠбI1E)]_t6<.9tu)5BGj* DS˯_g'ͱ`\T݉S4L$~@!?5bg:-f6?c%6_x? )+%thJ=OZ8{5 *>ڄ,^n, N*x375w]3JX-U* Dׁ_ dG9iR2 a}MbiN[jP)O[V~NvLٴw4,Š6>?&h7/AxL+,-TO⊿"]v1H;[-l 52 (~g Q2Uo+ϓK2QDKǽܯܴ 3nͳ!`"8L..GQTXmD, hp`Ay'N^{1M0%t[ ; 0;XwUP8/_`dd(?q٭6x N^t]'R~?F_t*ͥ bF-`p`(u/βb[8 k @T✆Z^*jWѲE>M"RpA'nޖ1~w { OrvzfeȨ@E~)w_7RW!0Mq;m(8`nY?ȥm8<6)ns3PՊT/6MzDg6-bˊmoD1{bR4Ϯ2G}e< A;S<_2UHvd.%ɥE =c+)2y 񌌧v & m6+NUxN;a7N9(jj\m.9Ŷs:lѦCOG#fU&{U˩5BQf!,,#@^P|PJLN9F}S&z=s&:ö^ܱߌ# `MTohi0:`{Y4ϥpdl/pq.#>W$jJ>[ޝA+e'6ܮe9&y@fY~j.]&U/>:S'+ݠi|F-a<" رƚ%Y$k-CNC0^.a4jAsbi)e븦 >TͻKzC8eBznfRVfLc2juӣvHgu6ڡ9yPŃ͔ < 6ftMEOe8ˬǺלD&!H },4ݕg6ɰ[m$SՎ,"C `6h]e9-}+ #O^KDV6ɧX> wz Ʒz~-YlY  hb:sszC[< b?vII_n#9.O3}Wa*Ya<ǛJw`%Ahi.M%sQ͚L&_rLN/5k${VB`w!rVXnMkj#z*;ŸHg:,H3QpWW~Ptrܴgsn'f!1CVm¾l?dWDZ)5\ݣ!m3o8+7lh0qmC.Zz f[![P`5~I2Ci #rm881cpLcgxd3tKD ^ ׎O=9h~E?Tee 0_LS1a"ds5Pyj?KZX^2&tUҨ [)i_ųD}>}Ēg޲3PpVwVWIu(v7Ւ+)! h,r7b040'De$KN T1ZmOQjC7vsRG%Q+b9A˜1 z2v@ŇvL [kA:7Aۥ 鋵(؄rjCջWAiӄy4)/s!yi(9mTgEZWČcF0~F浢sD&~@)Tv/IM:\W<ג2H1C=.511.5\b k%y6ٽS8i]҇i38 6w WQS}(r~ Iy gGoN3q %$~ U܀ vqɅNt߮)Hrzm5 ggQ+$ǸnZt+`u0.R~Y_ܽ/Ndj(aJiHlԢ-l~ *F[9Cq;Oֳ2-JhBY=BleKw)= &6ld%ih'9E-. fj~ux``J?`èFNת`7lHݝ 6FbxR4,f|foB(xwDDJk iY-U8? iI ttk뙑|mmTp,JLq%)jX஽+\:b;&iw'S%{ F;ס$])ox^Y5HtܡBYXK) t@]V[cXߎG 4LgnIxd\րfڽהtv͗ د/xšt/&r/c*ef`sogZ&19y`8}7qͧE8[B++ތ:BdJjN'{RLiatM[A™蘟H3%:2ہ_[䶛],3CvJ!i:=[Ŗh8faa'?' }LHnE4%^x7Ϗ7z|0b:0 o>V0֫; ^#\28EZqeaHNdt9@~d]PQ?E'8;f`QYHr˙1ƁHI|KLYn8u,Ljr^аm N:Kpl$~)nLEUV&o 'Dㆄdk<+_{$޴?Cj7S zqɮ^/ŇG b@~!ˑ'0J&ATHǖ*NF*]$'P?0@ h'5LmLZz|+"ˁ7j£y+ <'AeRJCTʥGR\'h"Mv}?vØ#gVjUPċfjW!V#q'apfx!3jlmbX+ܱaO"sNh3>n+4VC87X]hm}saU🕤5R$#fJO` |+٭`wߜCb=*<*e,mu@knb*}M(Kѱ]fS.1i$I?,ΏDx?<'5ީV¿-C$Wͭo\H#-"'TZ.omi'1LR>S,ëVۖN+hɖ'oidzmcR#ݔAZ8h9 AKоvNguc@ Ćp\;wj :P^+t3i0h]v[ŕ*mw_ Gu6׎? !RϣF:ӣ`zAnդ">A"b HdCEw2Y8h׀w.r+EĀzR9&ܝe9Ӊ)A\(-Aʊ"*\1Kii_<{< ؂RCP]SupE?\'.Opڷ,M',M[~-/S sϐ ͝"z@ج~(xq&k8a ݷkg60޿PzJr7Hm8RϏ$0^HgqfsU:!6uB"ق\nTg|2h%$#A& O=G=4`Y9nD3c'}AE"mTMdsx] "d*)i)uM_DשǠ"x #i$-L>erwRLqT9g>|E3/B^L$s\=b9DIxQ+zs۔CҢPK]iGWZ&U^-gQiC&S;1F\K#!~e(ߊ;s:ЌS :Vne qZ~Hqf@E^=(q6*Is,$cKYqW'`x&+I*w3 J~R dL\1 Vʵ ZT.>:cjួL)mulk{~6)ΦH%bRmS5'O t>M1=nMm(zdVp- 1Vq"~=r /S4},̎/VYQVΓ}dC|:TrFf)~i#zHZ ٲ-b4{ :/+jN.%R(zأ4Phѵ'vLzg 0hFAVv;TZë;YCw&_MplO 9!:n`jۭs L?ٽK(d |q/oB%TpAXn3$'"9l|]`֦Z)&>޼Ts4mCtͥR%Ơa&`[* NkkT4}0ńj4CDNX'٣O Qef!QS.hM݋c*2ӶDPTV]ֽTy%Lk8}][8ŏ7 Fh`Ud`X`-srЍ)Vl:U`h>͉Ԡ~sMNajrյtEN_`P T Uu_?:k y&MUmI|'V!2CƎ'oS  [*i:Rh5s H82ZY0y'|>(}ThXCZ$4qFg[j P ݪyWg7i VS߶U%>Ϟֲx;,fZg6@Qtc„[^3<-.s+徆+%.߇",e588:} ӳ :EDX)j:J0z`jc7QP=TID/[-/ dW\&4(ejY@e]PŔ(8VJ}]B@YZ`\4v6a"Qah^UYȝhq05WJ_ 'ߋ%%\R9cwD3h.4C0ϮkH{NS/>.c5r :)Xf~:5KzS@2vieDt2U#`jv #l$+Y;D K{hxNi%ƀbkf4-UO怩=v#NGQ6|0Lftz(vf.;#i;&KJ_&bcNIۨeus ̯Z=1Vp3FPڼ !EYڰTZI,1v(P`U>#!}D볟4c [kd(ؙr$^KX@nf'8 _Oj "jM?34s Ki@$sQ5Of o:QaOĪk_2}%BmU)!m"BP@NzMQQ }`,[< !Ϛl5V$mx_p%h,-Ohѫ"bl̰ 7P3"Jo͟[:b<>TsmopT2~%!"Z$_ 6$Z(f3Py 6EXuν%xc;qg!7 ˨i>MeOtmC M42 s?]˷@p0+'4Q^&8' aHpc'r"Ɋt_tVͩ E",6n\(F_Q|b(12u'z @9U3|NM|^ dVsQ*A<5PRO 85_$yRjz~2u18%Y^VF67٩b :87]S2b 5<+P.>94MR;s`]jIhl/b7nt2Y_썙oc'y){Jh!{ H;^o͸P`Z|ZϧGCy@EiFpSc(!0Ɓ-aM gw1x29ֽ} Mo qh TJ]Yk7eIAވ3ݬEeUð9Ջ|-IjAm옄/`U5F^7@l>@U\P=L,HjKh< B8>4&^n rL v<2x婊X]?8 |A q]F'uw螚S펜1O~A>[O;q8xl}UazN1t8.J?1hMiP;B97-8г3.4m{>C#aވl: Ay;vf7, w:6D 57vcv9 ^,ZcP}?.t8.3U =ݬ8ayDHJ _)ds>/S|pr0QNnTzǔx#D zpۂ]Q>xw :* ӹuMHN&2\_ϖ "=L=Qea^Jc, ^3b@_;<`32__Cs)n$g>Sq}kք&aFGّrohr<&K8<7492;C8:ݸ)SJXMM۲Fve#ȷá3}N,\ea "Q% Ĭ՞R'Y'4tH@zh@GY/Ȣ8H|-ԕ35I^TGSrY޼{ÛN69Du~y>%`Wp<*rb$%~fI콪u,᳀oX'YFq, ϡṯi# UAn[2O𦣵C}^nѲSfEU{ޯd1K+]=&j=Td$4Ć ݴYP%ይ=S Ӣ0q!of bf Y^!Ϭ[C6?:32EbƓ_7n#Vo_agh1Lo6Žbh{v%e3<RT8OnWnکO?adWPZ`W^ !'8;.\^)Cvf ?qP"?]{m)זc?ŪJ肣١8)G; y>`rm:$5gRQOG8i^aQk u!Qk&⧕Ȓ`6&lDJJl $c6)clVP9Rz-pzK})N֌~D. uuXQ;l5N=k#6 ;iuMˡIW`ܣ8u*"_R |{˵|aڳrL5bZpB:5}17S%#dyvJDEQ/qf b1.֝}4*P-/WJ_5U_lQGi7uw1JO M];y̜RvWQqIb^>$`+ ϓoF]J4*W GXMBXSRBPenWc"g<8(L@5ڷA,CLĵ-:nf%v1?I Q:{3o4l 5o99l_|۲{>威oRjnW9i4ZxiWҤZw G D D9s&'D΁%)I y )[e4+,hn)lϗ3]7ԉ~R GLf~HHx\n&Ys NC&^'~Ĉcq]Vʜ!"EC4}cd %`8袙>+δ"U\kFrF~ Wfu;|yϹ@ o^ZloC/C#}CJ` كG-6V&7KRg TjWji C\lt.x#Ks{[Uz^Sǣ[='WA`߅3|#יr=Ix>is2.K8(TMdKSgxdu߮'eIz[iF`;w6%sfg,;9BQf}4=1`QiC+;o߭tݱtF/r]j[|``R`WdBt5nI ivl"ܶN)T4ﻎcTA =(, .;/n&cV6Xh?AqG8A _Q&=tz Ms l+sI4FqqY:eagB" {( 37t;ͮ:/WAa“kO2ˣki~3?báDiinP<uj=Jϡk .*Tp IB/Kv%=8)S]l J4Dڌ/(WBVhny[2'%VD'Ns=Uo-g{bp }-bVX~%G̛5q]Cخ>˄Wdp݈h}o`]168Q|I~XZoZN/@Z@'N92=K3`zQ8#J7i5$&ÅF?3FH~KÊpO|w7:SUoJɺg9X.$MZܲ8\#0H&HpވkT5|{}P }WdR1K ]ѠڝE>cY5GzvX8砾uD\\ P|99h .OYkH%V4raX\[2nE_piC0rɂ Prq!V9&9yrUDZ*ggn۷G:?Qs_\j &&Cqb`Y ?Z$NӍk:" qв=c8oYђ ͶĈ:9BJ>#8|ĸηfw#a0_o[޹R^d=/7J!FC0br_ )I_|?{ #=FeRRl0!mi8%A<,f2#ӂT3{fO%EzX|bb'0oMż!z>Weδ3H]GA+8,Зl-}7^U#ZD8 ]Fݡ9U'9y)|+ N"^3}Ľ/UE 8i1DH=4,3:(h(CbO6߃ {| ޤ- 찭P##^T UG3>KR˭E1djUW^u;i¥WwQ_[9#pCQX=./zi<  2`jei::`DLe ["P"\>;7Vtq<ёsc4szF|] E&e'Ҋ-qE9tUz=5ո}Y[޼uņ L,Db?Fd*uЀ5`5Q29_6,F~J(^hбW!nbaڇ3b &b;D~RaE^9JMOÓ4$1>I197e] (7$KӱҸVJ1z1=q{4YA-dk4ג-b=B L0QZihuL(D*n%1fCyzX nd  r!`m9řJ2<|l ?B풙wHqwCΚzw3ݼ;@;u\*cMm_M5MWWcl'5ϕ>:6###@uX& 0gS$ q8z\NMv@c)wڷ]=`Ҿjv-Eзsoee5 W\ۓ~ 7j]C{-d-]Xf]ynʭh <\ɴSrGy1:1%U]Yu/{**Ԧ5 Ga‹2^[DaLN&9l4k3ApY$Sv?XBg Cxoa a?9- RSl>n ApYUڨ a!—ҒB1 VkjY)nߠD|=Cj"^tSMc杒R@U&m*"Ih&6:qcaHIdDŽ4SܗFˤt_0?Pr5vE ެ[i! FOaۙkv}+27df0 QBC &rZұѢ@g!%jfwbrΩ'ǧ~T,|jJ:Si[כ8%V3] ׼/X9 >uEP|LH㬄->O}}xeD!ϯ #a6OHAAfxJ˅iQFǽ6^R)OWo` #7hp'Bw1o'J 8۔)fmW7Hw2tExx_!ҚQkꈚrS!4P*~dncph;S[zlsj+UN[ SƱ|Ymء'hz_!NQf|2%gTdi&7'Uqי,Њ.1wni$L/}Y\J43t㒹mXv nīggz=$ ipu$&kl*>,Q (8C:OɊCXLPjj\)-0,̱JY |oH\Ai̽#Ѓ9 lcqA<ތKufŶmD}&F.vrYL=NW>pcX2jV,ˉP?$nXVWmZs)I9~|%SF<A rRcf6sSixME g.o˧AZ TvLɒ1^u $?%F"X(biA+9;]Pp>4kkDi*N,G/39I1L/hPЊh`^2^Fq'3gG ]&z3cȀ5Wנ6@8Ka<5 T\v\u\l#$[|3ĨifI6VrHiK[qiBhh;莣>( ̭BupDRlqmP(%q">򜥲Cl1N}%QZxWoI/s(c]+F+d :ub5Krx.m$E+iç {I5/8AJ·)U})(q)0{H|M8T:€|a!2b' KTeԓzS7E ^);,ޭZio4 K(f>!Hx*H-5ds?l>h$SsA@]?LM6Fs\qY(##Z7l۽,U"#Ga͟N:T3Jo3HAĴ#rKm|N7X#GyωIJcxx%+! dC [r@`d¤m6& 73Efxh<gs^!i)7@=p3nɄB ,LBI#%w"RkJp^c]=;8t2ej=/<͓>\d2*tgfQm9T6p6n@Ζ"&<u׫wQ7RCrL~?l]vŨaʖ%yW:A1\iFQl r'u#?w?r:է*FTmOsON1v\\lȊt1gb|kM,,pe@܁E tJÄN>{"0.0^?4,ޠ8j3}|}^0ɴj9Qy&3܉A-($g$uD=ʯr!ֆuF>phJi?>IĪ!Jj\1z5|N2VKmc^[4͊}[ y4ٰ!1Z<k3J|uCOmh+5p=>z&\wB]2kaQ͠ gQI9CF km S:S_ct@PbHG6N%;1YYBo']F<{[5I'5/e !$irR9f^_N@x{V4/5x$.z̚ZPJ&}dGR=G]X>b>3IFb$N q4 ) ޏFtt-JWj6[ F> )VVxfh/:rNOcꅌ{?%጗6=^b> ]ek/ pN}7|j'ӛ4IzpmӥH[%lDnLK 7FU f!Rz Jr@v)&~~xt$_6xH+PO jcp٘UT6.g0Al1Y\g%(xt[IIYgs~HO`-ܩ,*|Pp-|*X ӢD(#wQ_rN&aOu7J qZrhWXu8f34u9Ob4Eˊϣ aP\J5}t+ɓo!#qTgͰCz4aڤ6kqsB_-p9E=+->g{%h(f]$(HťQ1LC8dV/\?C+YNA1 ;rYO#\Y9R `9@jj|Y7uKMi yvgJ)dewLɼ;ƾy VT9MqKtx(GjfKEFCnR"C^.T v*4 = Z08?t3]va+lXRYԣڱByF<.eHA6diSڳ125]Zo cE-|x$|9(Jf݀vUYG 5Y)/qW  T(A<5r8g_tKjz&U2om||m?5ZОlU~~Zkޏt_Ya|Dԟ^2^uUhh{1$NZYY6Rh6+x'9w"8UNҗ7wCbSS&81"޼|'ARW7ǃKwcTgIvw$ZQҶcDgc? 'A8,A3MˉI^m*Ə~\| OXXQ&sQ򰼉>}6fTG)gvCs6 ;Tմx Q+ȌL66 k? s@6JAB~‘cBj/л(@QF`Z,{F4D&D X֩B}I 5vh \"vHZ^K$Q$< Ǩa"KaM%F3EhkɄrHx+Yމ&? -o'rwi>M8۰S4;̗%*E5'ae9NpՎd# WPa<+(މ 7_ﱢdLSTgdHNsXSx&HC1Z$N 6D;, 20|[ c|8\p;_NJ:,R Hyʀl|\ /r$ƹd%udC ?4\rҥ)*] 7JC!gʎ}\E}%Gy YrAdyd+LmAKҔʅ Q+!@_J ERg˳3-5Rt-xثpS>_ XrݮX~C 4Wq$ uG_ kܠc~al`$ܨ\zZD82;q.e3 8A1ql^>$1*\V~,cN>Eؿ+2}՗zn-SX5!lPkxm!iBhE+.6ʇsPF11dV9+sznxWkK6>^"oJ vhӘ:9;#dT3rv3!jIZ0"P#y?W̢Z3NP0曂0hڳpm ">c- P9T=d&39"Ȗ)8 x˽g,lWS5^7bEcuGs!S [CEJ/6-fsNfm,{6y7 돻 c ,ԫz9j-֒1*wUgvTP%K2Fn0 k`ԕW\?*<~RGٚ(EkSpJuHQ)kG2o_i.gfE1"nCS45U68L }q<+Lլ_4c~5z/UWBi=.mԖ2ŐRb=uJm6X2rzJݗc`3бf+1|FyQ`碾{ 5 VRQ\3\:|P<96se@OJ$ QXfUDgt)Ӣ]HJ/V묊@AHM4oE l0sgo X͠I)sMkSAp<1pum7oR*G%@S${?C:mB6- DZuk=M &0sE}:̘Fn[w2g/\) )r.99NNzс(C.0_k~V-Z9T7qB2K72 . 8[ ̒3,7zV^(j}8+iMhg)x)F fD\357f:Ne@x=q<G ' \6Rs]IR% KDߙb0R+6oG! qcNN/ql@smɎVb\mic;O:pshV"ÚIPi՞S.BvR5rNoB򛡛O(T( њOHַ׉mv>dAr@)?NbmtK 1Ek XtC Qp{ip:YH!mfD*@?p n@E-j$S\xBjL* F# t)i'tgBSG.d ՗YR 0|BD"~)} dMɯ<yj#nͤȀ.rzKfuji0gMc mRzkՕ4J 68@>)-\=BW&_ HѹAei/2gL9-:4 `)9V0'J<+Um2 ׻&G+$ݿ5sL)Lv$G)M=V^[.tơq[Wk눅 (T;}L̦mjU)}ÝTV7Eթ8hpluO_Ht;""90گId~x;:w#O !L[Vq8 sѨ朁&,A] ԿE"VW("bKa/܃dxC@oQ)-bt|{Sϙ'=#9;B8xD2NvdC! * bT:rj3@XlJcry}|^i`5K?Q(f@'ހ!{oef"97#s4*J(r-UHr^6@SO%ie<0_j9f z=ƻC n( t-!{A_hREBz0gN to* 'G8 wN'D*@ 2[41Z 'b}QD3-2Pc@7 ?eR A˥xeC0QUa\=p*ۼBS2iy3OJ~:ji]XNy|M`=rh*xZAR 2]:KN $ A˿tH6L; z4[gILm-EEv?[65QX?'+?:j)%'_g !V'LMr7lt %zkf.6MCa0UM!aHR k#Mg.,k8-qnmq"#1`KXɻ MBiҎThʓHRZm(u3$ ~ yxXU~ʄuT+.AE7£|l|*G~9ɀr5z e["McgXm %I0u{Fb$_$>{N,{p7g`4MƉ֣F`a#C/$! p1P!G_|I.>}ڗs#7zʶ:YIO4>:mkV.FX]NkAi-.>b#jl/&rx{jJ"NNWi?r$2oѰPݙ/QJF5[yק(udj<]0ݭQ=*OiDح Yϕ\*{la;]ƛoK3J`ٌy7JO{ㅙ*A{ : $+O0?^ ydNrҁ8Q,VHN8Hu7p([h6Pv?AhPq\x>g& ׹M$VÙA !_N797'Wt113ИM|Q=}W7YTdͮ$ShJuECO?S~z 8e"a/$B n-Y*QsȽ\w چt>2@0,wi9R%YRr>H鬾LZZPSt `.Ѯ}}4iK-W5%j |{f$7Gr2 gsl7Y]Wgژʻg}'\$8%Zd|g mSσDKjSaMX~4 :rCk!ϊV{OCRػøn*E29 fFkoBu].,ۘYqR )Җ nN&h+4ؖ%//g)駢$LZ|)b.J=ޕ't6&Ybn"x>>[>iCѶ/FjM9١k:ytz\,#d{#X#Ё/)u<m٥KЊbRӗQ~{pwLOhxro` 8x-| ![ pK:5 k/_~Q7ROu(caڧȳQfA/aKdDQ({ui_VJJ$4d%{ULm\9] i0ztSٜ_O,¸NOH7T;0s&„PY !g4}jR6ȥhHao{^RT:)WΖ;#)ޛT 3 'E&-P,uCK ^TZZ 0-n=ͿQ; 2ճJ_ƇOfj)&' gʍzh;|jМ(1E1~A(je ]TCJ]V`n6ᡞNn{fR{KZmzl>AWs)%7l]19z8p-@/,FvGEF (H۝OFv|+YXV8I,hKGR@S P dFȿ!kU> ujBMWzpϏڮ:dfSq5$j~܏gwpz"EeQ K7O<9'a;5Pt*jܲ 2;{AiAA( M߼dZcuq&( {뙦J>+WY;)}ɚ˱V% :òT^LÖQWkΠmJXl) SelPcEڶl4+d;s@{_PMa@[K~wYCq{k?]5#8&>GݷyH#r2<) ΌXN~~vU͔cNڋmp212oJ" 1u{%S-@?Pj5K҈, ;5'Ew63hUHfu6j{oLeL\cЁc=JZNq}h"ָN/뽅MNow9|8(#GmH'=/5pZ4LmW&֖!p*sh煑nu$09;a_⬡C!4E,тe]$Jα/B3R24k>ъU0Ky˒/ןX?wrL6@dm']:-!r蓵.b.\hW(,ZU i^чXE>Fl5}N Cy \'2/jd]J {W!pcCkڤY*alF~1TO5+hl_OͧՋ~@|RB;n\9[{P /ȃ~24-ݮ~&0~gH`^UX8rg:Y8g>h:.=s %$:8Xf/^&LY/{j1[>8Y'P4'㇢ 0:SpoQ"x i5A4FQTñYTcݪfAWTQj.c\߱V{Q*3baf {.VLJ_]/O lIê|>Ze5+;`&eoㇿ*Q"%5 ٨!Lk+I%>jq*JlgZ-,: G -"FNdo$Z0fI-]|(Z QdVʘHBr:DJe&/jwDx(9 s4JQY' -¡L&7OK ,GJLEW cX֔C?zfmycJw2HP~2Mbue.W;^2%"zgl'sMSdWBRv6Lus?Lv+[1ݣu=V ˻Poz1 S d|&HYPI1ľ4ꅳ_wnZ&t0x[gW)+/Iu63< 5laP3ǞzWHkrlbp ݂l6Ϛ&;Q:~#I`al@7C!+m niW,F4l&Ƈ|O ˵#sdF wQm^ʔѬ%ĂD]=.2KWC{V<(Pv{P[M- Lv,m0J&*QPmO*Z4-dԜ^FB%C[랕H%:~xT{qҟn #vgKhű)~wZ(J1%S->Ō@z`o*OeK+':Km? ڧc¶R*YOMVg'@6$x(J[_ywad8A/uԝv\OUxRNh׃Y{iVf;¢AmJ08\ۑf1>+rE|<킾>O\*lQTBO\Lp[vQ;5Bl|4ztvCZXW=u-iGfhh)/;SϳVjIu~;,xO2[ `> Fe5 GSgg2;xRSVF-ܳi W 8`7t]^I14^K;q[~Nc>yPlV~v%vQ*Va}/1^(c Ud'!8")>O,·6GΖ(0h wՀ>);AXac]幛YL? p>)\`pq4q!33Gjamm[=X k*R/էk۵kp"%]Z\@dל҄zU9i׃`-ɾIfGH6a2}QEJCcq[ g[J"2i`PN XCMc'P");ȻIGd t?tWq9sz74n7jGB{A)|?lrGK9r碃in;h.xƅuvCfǘ2ہN_J̉ld=!L-C p@5/w{WYWN7DLA!):οf][h03"סL#6􈾠blRAhҋ?GdR>jAMD1,9۠oS"VYAɄ;]b-U9s!.ciG+G.вaQ0o'6J F~w<G^ YL#Br{jEP{l4Z>;Z-m}0L O֣]6(ힵV8 `~$%e8Hx}ELݞZ@Repץ1$ŒÃB}$`Mވ5l܉.z:d (zb p ak-"*Msd?ع+F)Nhcdo޽yٙ*{ś(>譋#q ĭu/2{WXGq˓. }+1 ouoYI>3T0lxYLvM7!ЄᓂG=Z6X T>0:Ӯ6wƦF|dS: H<5b woȐu)Jh>ͨt~JLL5h0k@X(=^ !)pҩ]6O W?}&`dٖ-pUo8R zd9E,FEJ0cžl|nW=УDE2(b^=egmb&Jt7Bt]6lN@vnr}'(Ӈf**LNϓYF {_08R:ų:s_(ZGk{*1.ǃC$G-zda' `cGL%M[OSjb䠽V}ˮ* `۱(rpY܆i+}=!@)g kA8>A*ßVlbj ux";{7샾!ciutEs&WYѽUX4eA0OyDg<`Rg(C3a3AO?ԀB ʍwu0㯝? IHc'ofo[}US,^xY:"rZ1p{d聛堬1F$k)$âƹgD!w9ȷx`ZZ=_"F=ǃ]AFPit+=s]1uJ"fX`_y۱x-džǯ۴غ pSt~d[/s!)ެ^Pi7w3 >~trحJ49EJ-R6W@e;Q|^BjIP~ӇϨ ːQV(*kXK/"y\VQe MՒc@fFb%arUH{{9l)8+\ʔJd|w4gnj_GWA@ Ĥry_dN/3@%§u[ZgBj-뽪j=}P5dPؑf}~r$%*j~"V(ڹOEYr11<#wy?t6<&oVQAȣ$뺇5`s3}X@h!k*5Q h ͵|߽%2u:_f-qva߭fqǒo^?gKZ0 S&?mwj38/ï,qR|9$4 dL}mI1'abk4wpe& C & ȴ/18*EQ]U#L%)_9Hm:HLtz1 5w>:L N.'9::yV 9RrH._α S@#K&M\[k*[u3?VV66A|с\5Ir9 >vj_s"''/bLJd" ΣF\07C6\[|g.g"+oTnŔ2C nވSӘ:jS!Xnʊ@Sm&^upl*)oF}a2Wρmf/|)OAs?}v@}=ĵRA)ᑜs0~G^.X ONᶷp(;Taw˦yƫ7w,x)l)}6FRGriA׮,A\Vϴ" aZBj;Y,)Q9Ql6$k86!">65LiP̀n]?gME*KƽזL__}= O>XJVjկ" DY緑4 /x喭8_@)GV#{?Q#} TJ2[cj~_[g+'V~FVBXn~Qܥ[vLz+uz*;<"ͽ&A5[;2 ~˂Tcbd |DE!Hnl1lI m\"nVK9H5J_:Tu0xƕřʕ|j eM?#q4uL>y`$L|{l T)1"$ G@Q7К;ތaZ'۔1M`u<tr_kqC!h}nTUy)34J:qіTN:yɣRv|p71g+nQeC9ѧB.B8UVD0ee-O9⸒m7^B)0^HQ*h ϧe]E[)<?z` k/Jiޝs@?ghpk&5OV)m1HJ0k䦟.6΄僁j#,0W'QC_qZEp/eʒC%d0RZ)9*tJ`~OW <$_M⊪6S6 OݷuȤs(*exGdbnDe)0. f*Zab4hCXg-[Ã)7 S_ O7wWqyԊ[{r>blsnbѴV':S4ei8Q|ָhr忺@fui:9Ub޿F;|NۻyΛ;??Ujpnops4I hy[6-+\(nS܋nBm.JY R" n4%8/_ֵQ1x'P;st,sI!28P)y5+}V37%/Nb8 }I3+4Þɟ%M:U6#qS2UFelM_"a0B.$%Ua"[JR]ۮnPypo@݂k+R~YZHZ.~M#֪j'}d CLEw"@QŏҦcպAN}*ń!F?-ޥ&Mr52[m5K{9T ;$o6<\b5e$uבp0F0fdĞ`wv|8nL aj6{=X}{ (/:Z)2 &T5>>B1~&x3;0yiAzB<&k=h(W lM6@^D`,|{&GԽ8X8el  `[Нrb.j(mܕWGu4BmC<Nsm YkRrz:DWv QӴIMRƫɩte}ow,>۳![*&V6oܫT_87lS_[DŽgSy<8ܩ \dWROdz1z$ 5H]d҆ ?2\rkaytƼ?4://0)I @lzȁ"lVPWv)7P|M rerU\ߞq c4ÉH֣m JW :qo˰(DڥV7W/+xS7IVl{aHD%Cd%Ű;8 %!ogb^ixM|Ӻ~$ o,#aN KyF#"elJ.BV;w; /#ݞlW_,6uɧn0B6Cd@D`lDF˴ Ҧg! :p|}!{0:Kˇ|4AiE΍Č ͓ȵVI Ds H>qdsb.y{tJSq*j}]U \ƵX9@߂2\p|ꋐxFQnxcO׎aNf'B=91wO~ZHf┏`qXci yem\']T+ߡB^ i}Ph2pru3S_Nn/9_ D W:_qؒ4Mo(mA3w/ju.1 TJx)pD`;.?[wRўn|:3Y+3ɷD`ڲ(h'NѮ,]v8Yo r OU78IĉUhܖ&r3dOsDh,:Om (KUa2^ h 5oM2!A0\N0n225Ui 5 Pw0a8E{ LvsqKdl}_3^M#@A#1WyC BSɰFBDD9 8嵚Ud Jf}& wLu1DGŋ4=0nxe0I[LW['5~}Xd:C8]![!j8skls#6_fM3fѳݬ͍I3f7Kdz9j}1@Т6DPi"O}ԌV~9N]ȘZ24}^n;6q߉HBF,bMqxq=@^y;L[%; ,!Tluu[KW7Wj^iz?ͶF8> 4v0yrM!d\zGnUOƶ =I$]>GA.bq(VK!FKE ugf $L,2f N ;WYDOzJysR |UaD_'*c,OQļ$"LB~_wf#X &qX@J e˂ZJv! 09j3CnЗNG jUf,;'~XZ.$bZxJpÝtv?n$x;B92LAixX؜_;!{xQ*Ã|$sV_@#Py,IAj)śkfDW5sФxw3?[D2x4\EGvR =SSϓC{,+i{>mWg:Q۫2Q:k~ G@Q(WC9@tV/ݼ/:}|W|*MX05U/M[`-Nݹ;oE.G5_|&I?t^ۿ1JbJ|0s/-\n--o;kgbP< o0>rď*OES[jx_.Y%]e#=b'fLֶߧ60|f垤i :3?(ĨI+G9I0S)uK%3<~mH(Z2Td0f/ of94h$I~}BP?|; iU\ض1wHiRoYJrs{jo*yO3l]!yC/,- uҢoud"a`ZV?g딨Lu3Az71El0Yf+0ZTӇ1]4?QVxڗ7Tf~Ľ%^6= N\ 8d|M?L93 ,P1$ $Y e<}|VyȪm%L0@? S HW!T--y2RP w IK`17 @ ijs\NPUZm WP+LgD&U:6q׊`AY8} 6r fXFLhq:gf4vq3"ajl8vYؔzm< cl|NWоgB-?clt[įKjHgnv5>H,?4J5Q7BZ4\]ձ'odz}LV]iU:T-Z9:d6VAyhNn_C'+cz7.Pm)/mJB~xJ(a? [*ysaip?&klס~hCI;J}8`[ þ%49'e4WsjpeIo= qS*^_zE,:xyqDpDl*~⒛Cj╕&4~DI2%ukqƯ '|gȇLj}IsZ)y*.tLNfn%k&J bxj]IP#q8>Bf?+25Xjڄ[9t'ޢ+ޥYf[NQ蟎7x+-`)DEc,7Dڍ)~rgSꞃ iZ·͎DEסSsYk`HlXq~_)|@I Z$saS.{_B༾ V l y(pchnljh7$-hReO<:EWﻄ k_bg#a)M_g br)j\XDڣ\Iim`IKNvtfj'ub =@<ć`g r [6 EsU+םET \ (Pts>)CD,bPC`1K='D)!4PܣsQ,Tqyhd}B'8yˮJCWc6`ZJ,Ju}CrsNJV?]4j:3No %mMݰYa:0r%'b^ICQ\?o^ZgH6r\xu6f>zVфu0}B N [2arj41<v<ʊ)# yMg\WzF9WhG]ݙ c$PRti-90GCƯC岏Ozez2a=90cociЩ+1s!B#X?,qPg|2rɺ(V.bC.>x@ݮ!WE"U 5߃m$p(2LzĔ'NCg[.ɶHߞ6&!VW;GjXY";4O:T[~lnY/JfS`zAaTExiy'm6!<{nWw gE=3r(HeiAn1W*E  x&u9CK5U%Av@'iS1wRH_TU߉´k,ӥROPi`V$)%|4_I]S~ x 3B?1ܪ,fE޶)f ;-Ͷ:U͢)AJDA?{=v{d<;sLhl p7c錥kI,u仦&z)Q(G˝Q1eԝnlS' -7}þITJCVةo{QoVSw(PԄAor)wYU2&Y@z#.%IG|x -`( Q: }`Yj4PxLd@EiK(̂sd.T)+~H`@{S1# aZ?m $4/# F* . ].jk1o/byK1Ұ(9!%+-kJjO\`c*z{x1jTcMǜx;ByYZ4Ax%m)h|sYIx!/\xlJ-LnAOi_E<5'~m8 $҅m2y>7}?d!̿rᝄR"Q<þp\}|ow'\Eh -`j:;D֍NbߎiĹNya4.46V=ŜzF-s &B/{9օG|)3iҡ+0|;tP1h=1J'5$ 1 ղ--};Y$ZN#AF>fzF+zM"5hc0nZl֙ďwG2lg b4'XՇ*29 [=:!LۛhXTF:>&=__*҄p3t=u$%|+zl>!ru'OeĦ/P;Zz0CgAm @zTBݹUD C_zrFbFƞ&_Gx`eU}@.ݝPYU'svV*5첑AERqG cw_b~ G}a+*~3]&MWVXRU\ȡm0H*\~D @v d?Ď#F2'![[L+%* LJ59L~Yw;N *J% ܅_ ",oT_\ĩ4t6gcd^ /! W;&`dܺ ;v^(XncKbȘIE˙a&AK[ $tVv$\vT 5!XsV\7.ե!\ő[7D.钭 Ux.(Yx :~!*W$ԟҶ6JFXYϓo5ib-v6CKzðEZ[1JNj B  S}{AfY舓dRmVzfnȿc+s5$GOmyH {$7p]7 ,,?JtX|MNewZM;0+,YKt))Jn(\ۼh]{xyҍKV=(} C-q?h(`SDZM=HԘxtBQ\$lXI:G,,oRaݻ]H<2`mMÚ/:xqSǺ/8 ƩN_Ƙ r{OH NJ҂c\tncʹƩJ$Ar~KKcL7bV^(2/b~9F0!'p] p1nVmB0oƭ;dnKz^pRβ)[`l?V&"C_$O1!:h|?F^NgF7 kg+G] n5#?D &!}KM+[mrInQ ۇJ Ӡff% 3Q,ҋ|#B--6 Ҝ"^K>mPf]|LJdFJOIMp0Y4hd^?`durjT $|s(GJ £0H~[o^s?PcrLd~nsç. ÂhLuEĄWn Q'LaL/|h{Z2&N'_qhe@<(9B'?:Ya`8mզ]/]Y#ΟӔFڇz'h 0u;Z$ ϤO{JuG-cVY]t1بՒ4%-rbݱ|Oh!Zg4Hë%?aVRp*pR&9~^-AO1dd2Z,ӜnR(GW ע4־H:qƺMƮ0 LfFIRWLԣ֪@]xH, SN{< g! Aq(ܠkY4p<Ɓ_Ɛ=c[VUDw.gF$WZa|-Z/a뾧\J&*U][t2T%P  (t:BQ.7mbBy5p߳"do4s%u;{RGsV=R' ng"]Fo"W/m4[,:8SThcRFM؃ |9 IQcnpb],S+|Utq"+Y0MoZvbu\&|6w뮂~1>JP`Pa]UV0f8<#+c8ֱ.pKS i3s=bHq̀#:Boc;)ppf hDz0yGȘ+zs?,ɷ&~:  @~'~C*"^.{S'ߚ )gk5TJ}"^6`rgX&C; by:uQh /Vv6V+6D{mg[w JK|g0NK,J%j)ռ9hGE<>|*E5B.F7RMw|$@įwơ OXRi|5תwZ\p.Y,q%KQŃdԚTYt_GronEMzs"sZS uq-iwLIܕB/W+L|r+Tܞk/}c]--*.*jFxme}Vꗨ[\žقc)4{E% E&1[d?EdB[Q/ ݰJ'0]47Xe9حhJq9_3IX%jGׁȟv!tRA"?+"^oe4<ak:/8r(9hK,79ymQT}P>WT^p[Mkj : Au$;$yU+Ԟ>ק./$z@]4eA>,k IO4 Z؀ogS|BTeGBQJz֬dmƃ:gQ+ka@ 9&Xz+< Uʺ]Y~p2ܨ+7*ޯfq\dr& 6.xs@VaxՕ,@WglZ V]^D*KN"抗}t;P.QMfN^UN6Hk>DxXYLZ8-0AmÅ<L4-c˞0MUc=B3d_.=F6PJ&bafL;:r Э| @0Eٽr/zS9ZzSo<:S1^+ՇsP,EGĕ]azmnvay<=Oi.U]PQ=7-XCu֊MYOڽҋd.Y1y>)Hh'ٙ4˩&+"adg8>*$&!}D)a^q BAwʻq DZfRrhYLkp7DڒF2OW8ko'o΢]'muˇK?Pix^'`gMm»3N"qbyUHYNd{_&źgٺ7r`ݱŐB{yy&/er @G`_&Rt(Z3Q m]7 h?q W~ÌOq* HqW3:f zePBBjK5};= & / ɭF/ClnSRr~Pm_;$ Cx}ȟʙ)h ' qލ:=lm|ʣ7k tr )e|=;;|xD;2F"߽BGϨ.*KS}'K @.Cx4wVgn=ߔ^'T ( D<mu3̺!S<ʭJyyp,8h#8RaVépі)Z TjX(2Rސ7Gb14}U~^| #5c2 DH\myyX2{Z:g,)PSPc@'KzFro*U8{6WD"vFjom{5=:{NvIzm`eCtྒd yJox셶:bkr{J"\_PzDWu ;v֋([6[EM8ih([}~T|\;// P,;0: ʄݛs9}{Y?t$aߦEN#@0YdD4 #+gfX>8zr@=!ªِ|}SWe8d eC`9Шsa*!r +0eEc u>_&(@4dk>o۶M͈Ua5'!Z-!_,zܕ LW{%h`Po >A4g4Г'xTA M Yڿ@RsqVP}G $P28ȩXē̙qE+#*Cbic,3| kGͼtWIŊw/@Dѷ H}>.">?SrƯ.*~ao:leԚ5U%e*=j %`/ 6pDFIyj4LUC7뵯Q [;{+-ǠEΩn$t%9wuid? /=6AN5,򾚐F_,;_d19}Xh?S' WӟRmd#;׳\xֶ}QG+v8u6`fB64Iɿ $3RX]3VԖ!q) `]$dE?]HDfEnPIS^G`Mv/o\&;mGn" >;js \hM;:2'7ki'1lX;ߍntkWKxVdH. _A*V.2?%{l?mݿ rAA:dT$z>&BTEm Go`mӲ*4xbCiouFw { SS}]-=XsڒD'6t; {cTVaC &3-tGhp:vg7x}14M)Ci?~1X ;4*+na̓Qy^FQAV5 S(Ct&\WQ!dˍYES@)n=-uԮ$K*{ !cULiЏONW-S.VX@*)ҟ+‹ $#E#%`] zQa43 /NWOf[~ 8} NHhhIV(uѡwtH8ڈOXns~lzXY)R 'قyz8{1Zq'~;/fle‡o@N @\fIq: vl>="OEH.S["?H+P~{,!Z-#PgdUm1ߘ7D+'"Sԋlk9/EYzuX>_Kry)}>IJp=4){w'8䠏80[!2NM[=G%/zIw9On {oqӃAI\b_hlI:.5X™y^+kC7q/(SX$܆.6 ލuvPbK[0 @_ֲz{qOn:s.'t3`4qQ F҂N(! YF2fm`N2D g͎QgZ0^U[ߨ.A9эiR]T!{XhXZfKyiǀǶܩٰɵ<2TTSJ(f/&;+\Ta4v"c {f+C+ `UOvI^͈AQr}Q*U'O&}Vɵ"(΃zutND@S,3??S!3`S%aGtkHhe ރ3ĉz=ܺp^"|5b9r EFn#*|#Nݷ8m!rTTcT{akb1qOttrS!,fu{Xa7?ۨg:\ ~e>h3ٸi@רkTlJh1`0Qp*o4,ӄ41k#?9LSaÛFT ~D"G幽I;]؀ۍjU(R@_9ݖ6X$ܕqks>c16ž[p ?#JYi nf^COtE;w Z!qG (6^kVL'/e91(6j >T5'mS9쬨DxNzy\N <]|ܗ"x A)3iӳM`(ԂsX8+^bwEWͅ1ߣ z_L2ka*ϵZs}?:ArG}XCgnSʋH3Z~[,L(3`UYGۋ, {$$lmZ>(Լ`fS;Xmu.CjwU`'b%(UC!E%Jx˱bwFdywA : y %2ctJIɵ i8Hd,~㝝e^v$t>0N 6\]ƐئL291-Ǔ#H(y'8ą5vROm&Ik΂'1ٸP?HpP,g=.%GIM[%g.^éuǦ4KsBh7'ާ0fR`آ*яŏA2AdiȺ8_U}=qknsM@,CTPL`z2ax!c,T'̢2O?!}{ ?9 Htʊ~d&!Jf`jqslw`ʈG^=+?E,vczUar'\n0|_5cD>Nm߀E8=ٗ hKMn07rM& hOC-uḭq9gdqL`BeJBLJӖnsL1ܟ]'dW01UI6LSj @%9?Et[ IP2Po㟸Q>#pTkHt!jy'EdHZmkM8JǻSio6pKI-&kg&3YCk:< sún3bC_: rη:lbu¬GV/Y<}.QU] c9]W'Hp*0He#RX19B?$I#  r {a!Y_L)4B8wyP#}͙[|\ \9#K6M!oɡtѾiFwo/KB$wjC<״n1s&ѽ W): p3{ <Q&"׳iԺXZ_J|*~Ú8YTky,k!ުHF ;HRN0%K|ŝn"s{lա/=i]N/WsGA8v>N('poμ,j@<Ma"|ݨKՂR r3 uժu=j/M'fc)PH r_ub}> C!He5/[(H꘣Om7QVzB8lTnH8{NV&i 5_i=qdd7/hԌI7 ؤ> 3i KEq3YA緊-H'|k5uyoZV)=C_Z/,xQ4:QTҍ7/dч]j\ I|MgBH$Hgk _]vLyeӾjZRG]w2Pɫ+wJ_v51Gnp늟`Q[:/*>v׉tN?p<@J@Z rv˜E+'82ca~;}(`Z8u>* Vg$'94Zi&mc眞9d=[3=440 7_>4 VB cxb޿'&409 hr4 U٫t2d8᝖nupL:cABا N pv7)dVTHL]?/fK+Df?yYS9`nZkǞ{UƤaVStERAOzT[鬾0<qrauϠjA/BlmUK鍛x#ge X-됦[mRP @U" 7ꪾHPhvQ!:3 )m̤Mh\Dce3Io6Ɔ@2ÃYܶʎ#ԩt WK{+ԐIS{A@+$ @G+Q&e]ITșB57>%T '\5ҳϷZ^u%2h eW:lb6#4 1r=Qd ɼ"!9b2k9n"7͹FeN9Ns<yr51ztQmZ }d9Nu#Hh/pb*sgkk]-05U]9@bI13٭b,^]9{IZ Uh>DW2yEPOṠ5or1h>iT1z%s !d=ZMf!o/-0dPG+A LJB {d ]`<#vǶ v $@1&w ٜ17cçS 4 .fxIu9jOCgDUbgߏK&A!(W_ReJnEA@Eϔ9E4[UPm\0. pvk󔭱@ym51j``b$[sEqΌV PT;zЙI{ f䩬, {lz4lmC={W`;l0XSZ <^Jh B1܍ I\}V,ǧ.ߵhh9ip럛|K>AJnb퉸<W!㰵>M#ȯTʀa~yc2#cp-AZhli qbR ï rDXlZ),s4h6{N $8PB$.2iehJnytv衚xHdeuZϹ̣]?,D3[Q9\Nh;btGJ^Q&Ѷ!@pt;Jޕ9>x[`&VqV7yzC*鏘Or.x8H3HY,Ǚ1,$sGv;DHb:c;.&4+~?aaYxT ]QIWD&JGaՁh*gzk!!)|FJ<_S0ɢjvdTIt%Ϣ8F%3P5_s) >xtpj~u [Hۇ$/∡bn Zӥ0UXBQ>XTlf.uLIܚJ泻|v~EWd3ߣM>Ł cꀡMJ֜$}U)+IĸUKݺFEP3s?ĽEY%d:츋\(}hHMF[.<7.7:$li:Q[a/nb<[-SP*z*#YM^yz"X4R oй p/U n8<,D^E7@UNXRqj>=maP!|$%v]Ux S1!\(y΁oNuC_xW7t3EDp3*.n Z7B< kxMJRCu#9r 8'MCKBh!-ӽ3!0BE(ȩw@ o"bt"4Eݎ>B bB֠2͆O )ZZͽ^X)E1B G@5p-=c*fuG)D4h :v2c"-otxJ:ǔNx_W 2$A>w Fv1mHe5"9KֆoH0۵uC R(o< !†+gFxxGbޯFϖ>\4[x7gj3:3lg9ۆ"G˯xtx]}ovV۵ҩ8TFRݵJGV<4t(8Á 2rpsһ~SlyEJMHqӇdJp5'Mc _QJgDcO <>WGo2tNH"E`wg_?UgTh%=t9c aiS*>مjk7T { 州m`NvHlҨ{QtlF4\֊Tڒq C*7,.6g{JM:g! EtO>[NTU0[*:;RV̟tU)j&PyCԎGY/A9ahC,5k׭V1y$ 34zDDZ3 |H5&6/DnӯxLS{.e{N;xb !{o G_i. .$2 c3^zdfH@?Dp\&MVl3}O_Pu.I|`|a`I~&;3[,G?ۊ.0QR"C E Fxnݩr/i%m4Π.k ޠ/4MN:!9l /=bY?=;dSιVj- A`[)Ռ|_+/$lNaQq ziO뚎UT'hwfw+w ̹Pi=8 _w'RvXs5#~CB*~BqgjeM*DßeM] L}SPHsF7H.DzӽThc6ڂE9gAi&AR R7yQ-{#=otӔ UZ*%:<i!sL]* j:H[v=ܹҹI3:$H=䀪Kaz ?jH{p-$MC=dYƏq+Zf eV R"n+xPI.;{XRvOyOgvAMX&Xnrs׺A"?\B{d n}&pPEY.T4qӠ"ձ=_K6CJaF $3d哴ə {xEx튏ડ8aOB)OſMA#wJSX@/O@Ja|Uv+Wc Ǭ % <]'L=T)_~3é۫_wƃE 2 ;崠]B$REH܅gbftbm,j ͆|-5U1"ÎٍtY;(? kBgFRsb1C)$%ی1ڙM*ݿK0 % U ^qFĨ)`Bl%5$[ʩPz>.w塔?wOo5 A<:_{P_ [(^7sJ&N;\,'D 6/9ur?JRrP!LHnGE )<ݡIKDԃ\xxӉ ZƏfC~#k+ Dh*b'ex}ճw!+ #MVNЩBO˃+ziF9͑*::kSB_zOy`sߋ>5U>Q P#{\<Ĥ oNtW/@ @x)e}k *O.3u6S_U>HuIuOD$f #P_lmZ9%Q?2aY&|]˰zA[َ#̭P !?6v\ј2RV|iepYJ~py=fV7 dX "2 IN) \ uy? F[żs͝wP9w,J'6^7) TzQ҄S=rj>;(دXO(A2Ð/H0V#s͠U1T#3!0U}W+flP醢;j@[~+uH0;.2!]xTknӴtG"/%Pʎ>lL)vA}m"DA8!90IO+ .V{Fooe DC]9̓` ޖxjq$$՞κ…ϩ[\gû\8W>b7=  m.=9cH~y#YxS=e=j(@T=}`-&-<`vʪh!.lU&$jlJ hRirH0{JzaׁQxmȼ {%fFha'3Mnv{A\ kjfe2,d{4I)w8Q{;z- coR-F]cPOR}'+b^)_trk.A킐ACFȺ/ iee-Sah \*A̫"SMP0y56ϪjR G }t'm4պe\ t `ʄX< G 9i|%:؟WI")fg &ϱ#"RAYnsT% sIb~h JI{T+BCMdaaKCc[mr!9J G] j 3n!,T /6\Z2Nm\>RϯIX00, -@w08s\&ZۙӬ\# b=&R~@O: {wpٺ%} Aj#ʜ9n#Ls_n{`l0^ "cxtF=rIm 'NUFgͯכ|j-!͗!nH-DrDx&;gZGklhhۙ4Xr* d/w")=Fʝޫٳ)^>|C$Wp[K88i9dJB> u9DV7$l!zey(e'K U}^7@ Fbz9:@IARtl]UBb1UO̱RktHMc*,ǿJ,`Žu(\D^*yc3j IN@6(t7JsUWV./We+2c6ƅcB#vY#$fhTDDn`Bnĥ8ћ3ـ!0^&EC/zT*TNx 8 l#{l`/5aPRw6ݓz|M*7!h$oE@۹٩ϙ_d9$h,%hH9@CKC8&jJ;f ޵T Kq C'+q'D2s#ZJbƜI7\6Śp:O=H^6z?y[};_iC׌Jw5*kqiѶGZbaUgUlJd @Vehmo-ۄ^3n}0}}dW` k](bVkS/lVaiW8po2˥VJ5u z皠8طϓSA}Fɹ1AmY?.wwqE `Y{ӂC?z>01]a;HGd'Iv^BQ ^oκ[CBI ~}Z(V{' *yf1\k˥$9WB)/|"xÓc ig@bU4T _Wl?qCk7*ZAv `=AG;i-1^I\㮥LɃ 8K~|8f.1n,a' }Or+=#6C]ׄ6G e>!HzE>@ޜ/0Us ErmG2٩%UWS3kZ77 4 ^%sΗ$N4Zo:O:!vy8sjP {`T4LKI|=,k{Ԏ^ejXR "sػ9Ժ6U7 U-yRں.MS%t\y 7$,TJwld0)RK>}6ڈiIOEJh A2uMA (ffdtbeZ)z30k,nxsAE?|$x`9HWMW ` [u^t~02Q}Oq#<ݧ|Hʉ)l;\o-aOy1kDc1ӣQ8o\l]B)[2BsO i[1C΍{vM!PblFKqrO'*DIl"IX]xk}e'^#n.Yr58kHtWz2Q9%}3S1L'zSIw$ƹoM;vۊw3D>[@ʄ{P[GV| hԋGg Ydl^pc1j8_Pϱ0?=ӳ"{9d&dTc#%u^#g8 @ʇUhnz*>m&#n^$eVYE~" LIijb}^j\ RpCrxP߀xhjt=oqOտuݚit-9#8`uAZ$K6.Ă1*s~#֔YaՙS}yU0us8 Bij ^+r9!9ҙ-evhz[nݳ#sTLuGҰN:͟{Q׬|G3bC`jD v6CX~62CX+\9/ MY֟|Pj@:xd^϶J24^!Jyͱ 2:br,-[ 9J?خQT߲c#$H/% ;UFF< "&{wrpqԎ)!cGr&&9CYMHQӯ.D oջvzQy*aSZzHw 55U#n!8|&2{hU!۾:yz41frzY`P:Eۍp*o\1A %m$ B ! АIfs/ 9:q 7O{u]u䚇~= m,/lE%VLE­*˖?+4&|7:'C{UfުHGBJgGdKK8r LMQtC"^D x;~B*uK$xMb7%\58XȰ+R{}[ ,(DDL7LS,@qgh:!#E&C`-#9kz|$,H%3k?DXDu^}( $H\E3:Ճ2ob "7M~Np /tnR7g< I:=֦k~ GmYe dV%gxغ^w`Q9 (^{>~Z< k aīPZ|uӚ q mmTkaXZA hw $Y}CoEY DM1ҥ:'z3aUD!ǐ˹ZZ.y;enf!a`9^iL*j?"|Ԏea왈/9Vgmp# ۸d  w w,-aM*\@H(ӍqmnSn-(BE^/N@I̯}Tn|Q]-^K>j7eP"#G# Tr`!򄋷\$=ܤnWv;7MmUN抝)IDY%@)01Pl  ڇ*Rϫ JzuC 9n khh @1JpM焍l1~Px2cx޵}¨s;.Ayjr6M]Ŋa&6`7C'yKG9cp=) $r@90>c1鴒dmQ%} <$R㞋W]^sL3azY_AGYuʭ* /Ex'g^l "Q7Ou«Vf2h!F*#zvF prpMףs/5!`ڿt. (aAa:p(e2}rS3sHBhnctJ<5oĶ jh(f!oўYrDkßX}P>FN}}q\0`a]?!;ݕLU@+WS&1J(.׍ʉԚgj9A6f xڷ DV0 ~HGv}˥.7HÇJaQn2}G"/7ZA&)_0c!?= ULIôĞsh;X`"aK? L`jNE8%_j4q9PGr+["T[#4 x"MK^e `jCIߴbGh9j5ah m|Eis|C#x4Mū Ξŧg%iFli}\P@{qn–p :XIWU `amYGaҬ0`A/=6`q%nXVʇ)Ztw@ Cl$&>t1AΕH/x5@W>TOEU)M!~k] ;@woP,P+i4 %Աw>8}u3qIoyh 0vIN4M TGW^-;x9/j*_a<<~["CG-:jP-御ܕTq0 1&K߯ L3WҠڠ}=rsn0~i&fezs8{-WINJG'U;w ~63SeǶSެI^=یr^ɞ@X߼ `9N * =Q^wf;Va?i YbRl)Xa/~|a a*L^ d-HZO40 #sɡ5R2Rʀ^4{F8pA֜hTI PD F *6Yur$އ S? pa CjW.m^ԈpFDw܊.rW,O;~c2( =%я|kũt|صrI mT(@ rnDikH"acTAwcuR@/+Npv0q K3X0E_ܙYda>g+i*pcsSTLQEω70J Ѿ Bi(P ́^vu vp%VtJ(%}6~5WJ;'\H9LQ_7]C?CP{VFZXƄPx߁T(3ʲ wU>!9V͜Q}$h"Lcٛ 2]CAH[Seρ"CeֶiC!Vk։;sT@ -] '@|oH͡q|іIA-n@2XBWD&i|% k udvPwJtuwW x@RSj)%>mOr-[)$\?oj^ 8~[U/0%H{q˥\6N5gATVgKMHcMm{[>4y0>Oȇ01iC埚y"Zq/,NWoUNAH]NA9poein^Kt_A+ "D/ή'Ƀ I_fvwfx!ު(!ĚN?7?>y N+ z׫4r %\c?Pk UFdQeUX hACE W€!1B΢C?( '.R .Şhrhlʻ9r$֨XSonԣ ˫yMf]Z&xj^Pzl~H?LӫqfgeQۋ5#%cvW-nk=1Oi!:lĩl_$9w5܉-;3~ ܚi'^FAHQjoR@+@}álR#;xa["=WDYEuqC qTCFƳ:m+WP:vSѪn 9^W}$qET x4r3V &PR ՐҶeQ)HTr׀=ٗݳ=iUp=Aص> 6}A+#tNѓr(  ew{CtJ㭒OTc+|yᤠXAKZyoz7M21gT5uԫ_y{T~ HcF!wv ybZ[`K _!KRMvoUxYn/Qqw^]fKcIH r$o焭vC^t}K]b_HwB:^ uָ@ y*|d7Q! sS,<ÞO75 *8E&n*+♗fOdVJB>Saf4D{EYhf5UpAA-鄋9iw=0A,9"kNդNqF+sb+$m1*HJTsx wne[NVS>eZe 93&D 703\aԌxi%<ϛ|;XХYŒ4cd82lqru'zuRXHϱꐚf;q0䶂ge#+ @N4^ѧ%f[!"YwԥZʹN*4td;L-Nc<gt rut<0_uSތ.z:fЦV`Ĩ)_"5F[7VO57yUIyX-P&l&6<5T3H ͥ5/ܵ1f,Z \qnŨiLo=.ԸQ&? ePv8 !d0J!յP)x)jJ{g^ NN:OMusaSQ:J8oY`rQz~Ǵ@ 2FqJw"Hu˛rũlp?S3gr\tϦ>cHL$S(6)۵5A0n 7!r Blv=Ο1ڙT *千 :AK?ϱ8b! kn9&kȒ.fU$uߢ$p̥vWxH0GTZh[z9@PO#(QU=:-㩹pҷ#w4[RПTxYF͞7"q#:ϊQ8 /[6߸E=]?$02tTOѬ,To $?dYVNb~.R&/cE#C6;LȦ5nHŴ;,x/]=@T>OAJV:0ƮܪƮ.u}0cQSz?%GgF.6Z"7J@uwEF0.b7i1c,Gp^cC1qnszr3T_ZY/sRێ#m$aiI3&kJf!V"z n56ݮ'KgiVP}COETx."ٱJɒ5GҌ O8` "cIP P8)~bl#CfS' 5>Ȫ3>d 1Mc@\yu$]a:䗮$Ƃ{# Hۑa k 5T'&7A yi#.`0lYpQ)ؘ2Oࠄ]Ks9IzxU6iTο]#۪W GD `y/J5_) ^XzA|\Z T-;jPw˹iKdD|rƬ>D#_!LJdo5vW} m:46p B5/4Nsbv 1<;p47R,wQ?n_@;a ßo@7n`Ph }h_s o6d u70dHI8w2H@jkӝ݇ޛ⦄zYd}VlZDZI}.k| s ,unm쬞 E1N6>ukW|kZ86$R)@F[iLc|޸7="zLVA̦FQDeuˮĆ:#VbUJ;2ex1-aNLό}v-GJUXbpVa)Z50c>UƔϴ }Qh x__bTcMHٓv:=ۡ۠y q'Is/_OoZg6Q_'ܠ;*GS|"mnx{!TbѕiOa[ b)R<ޫ!aꡃ%0 ܯ$:*aNc?G;hJACg۞/l\[u[Avq㗆 /A~U!H*6ۦt{__Q (IAq,W i '2KUJݕt[ܸ5҂^V|QxDk҄?gL0ow6j=,J,`$/2P3ԝ{<'vvfﵱ5_Pm汬ѲO (<Dݩv-tk~_܂T(+ɣ_q8:ZTsV,VP j}psV8`:<ǎ$C6(ZJ' ERQ678IC0*?.;l&#ӤºxJh$)i2# 7U]<n5j;̚ ^e@j2 0"x Jt>'. >)9fisw Ac%}Dv4QJtj*DC3I͵ ki1q1?x͜!S 0(1ό6"ѯtV(+hX;<6mr9PŹIMsG%}m'Ch1j˔JSOEt(4͎l:BP"SB}jBBtg*3YPf+&q`ĦhM }8/yBt=E_ YZc&VrX)ad4~ˍP~;xMWxv8Us9l̹6_o}_4N\-Le.N%r[Y,ƅw9sd+>{Q,r ^lﴈ|~d:Uh=@d9w4eՃ ߘtq0[F;U_ ۓ_-\ ?A|eܤ4A^ɱ5)bq)|"<Ԭ:sҙٛ?G{-+`a쐪 ^ ,c aj ڌE 1T_v3Nmwѯ7sm*͢˿3ό$0TWL$'bϦ wJn{/bP:ױVLlaS]7.6+3짃D`!y-]խ&9 #zޮ`S [;L-8k?A\=qŌg"lk%Sr^^Nt{5J5qt˜4_( A1/j~,yİ\!ִ|:% x!Ê+= &M @I$Uaȥb?N܍ }+L꽄ut&QK60TўGHN67rQCW g"8e]v2MN5$DmΞ c@7m֩<,&?2|\ mBQ `WV_؝:V*zză|5"~pG1c~l0$PEiX]k6݉nDMu=$ Dujk]~v#6o4FH6Yt]7NNѯGN[x҄(ڳ}hh{hY<"XVY0r <͠'`?lz}(xl|K?|юWQaIkW 8pwwEջ:m |_) ) qO5[kFsz-}f?}_.Pv1T]]{:W`Kߥn&'F-Y|RiAȾ,K$.3{.p4EPBtDu,qBF|! . x0cN@v a \Rf {f*94*b~xyǀE@34h6[`;Br7sj?hT>,Fo?*eԍa9['>6&=%H)6m,c!6ڷ}ӫ|SqLB-yu{ך潼%rL(>u>-9ʓ{"]-$`H_ˏ֎L3Ԝ~pֻF2rMl1l m\9M\&6Ye_AvN~wG*Eoh9w.f6/X[j/x@WW&e6H:!UǡEr :0!HBL^u. +pd2`k&^Zc0zϹ||eUGSt3ŴPTK NE>/coDw^+VD -c;=rCx Cb1 ߇OR 4H̛V<'b|P߈:].XWa0P&xxD<%5EkHq mKxÝ\xIr-s2-e J] IcY_}^yy*w_JtȱfB{T`W<ƔTY h6;{hY_Xqj\㜘H8-U6u+b{ӿuky#d*X+ E^?Mo~3܎/R =b{rgXv 䇷[CbYyix~8B] VU$lgAS.8k8]<<"so`X}RG鰫9%C^feO.SjCnY0X6KTjH0fE5%K LwXA 8^ ?_euzqk.C yg^+W *7z,O-^7X~* x 9 Wb@I>?;'!Jc2uXy]~@NR,_eT7lϤ`P$oHέ QrTr9q7aFNf8G}+/B"4Tq#\QhcV#lhO6+j4#(!Mޯv EL>( &;t8S+jB$s? 3P #(Q+T(]ugW UǼI6.%#%ţ}9b;[rr\ ~tر*y]|j=#)0 ev#_i|~جƶ3V$럫Huex+lY?`z'h?nxk˱`/-K\V]S?1|]GF "/[Q3ԥCvX M &ok.OTSFnN ߲X]T=ג&-ɾrL vKIKaܲAb\Qb gj.BuܺgF#2eB6;gfBrSPqwOxI4j%A==ۮN$ 9m amWrb+]~y@ͨԭjYFaW*l5 @D] j[@ z8ͅHUW<7ls&t-?ő;&ZnF>]3~ZTVXoeݴw51;U|3tFCQ2ASU]m-.\5 \m is!Gq \ܬ\:h\?$Z4>z.u Nqk#<4bmX_BG6vY]aXVPwKIp\/mP7wƌ`-ѓ(f}&vI6 )pߜwH̸6%gGW_t>պD~"02̑xAyL$E|Ph,1Ro&9_c02f騾O1bDT[5 X)&fAɪ AEָ4\ FLXY>RxeE #ˇ r&t!N}&J{n^D˟Fs`kT ]YP749E%933c,l%MA?y*n$7nqwץV~rXƏ(6HŸA=㠌SlϚ"⬛Dw`}7ձ" 5n & R^ˍ;#!T>gV[&h v#2gĊf'<YRstg=jtA 7-+҂JmMK aj'w_qm Ւs䝮\aI!"Y"dJ5PadJ⤮qV#7v) t@vĆSr;MZB:y,"F hz[h\9钶XrKh2(Iq +-y׺nI_؉CA$3?D`|#]q8gUF]9vup&X#dRɥZڋ3aSN`Wmxh.aoL ƙ}g| \lX |D::l[t /&)3P#fGw/pHdUWumM'+n);s*f(-g0]MKFD,ܥc# ͱQ/>=lald Wk[/ Yt<5>Oa>$3NVCT|JotQti}`>ֈ*X1a/"WmbfCR:Hߒu R?X@N=rxȎkl}I GV}uti<+Qv^l ))HeZb6RzΚ95+~Ha*v_YĜC/ܤ9aN2B;\*vGo70~g_OR-ZNI:' Z< e'$F"Z1#y;Jĵ Q,zRC=7+K,W =Æ]y,fH"|]w HKܗr2B_Vvvg $ɻAl3{<3"Nb?aO k;wPhy 6ևCKkeՂFit2iԳ{)JK3cVGvNxxԀ0sk[j*⸦rOXf7&7O&ka  <$cw`o23%[̋.lNnƳOLp͂pXj je3h|¯T"}lA^EC {]߰MuXC}?=1"NvaLEe]Ū)pC7;6z`;PnO~!,nC 7} ͎O}cȪa|::سX:lt e7kptZx:TbRqMaWge3gEJW'H wfA*JĹ?~P~W-uQh$vʸ/6.\dWD-'78 r+M\ͼ&z-D9#85k|L @T1:.yS|?Ϥ\1sY.h{O>}akO=DM 6o#Kw(j ee?v| {}qqʩ#jp Qk;V;GţdѥNq hK`"4ևtz=}M ^UTԄ4:<9 DAH.fD|U>^sl*βe7`v[j̧1;MU9NzdEd*4i%^( `*9Hd) )џt!:Ȧ -X&}m!͊N/\ :K:HnKW 7ɲ>ԗ}~H*CDrj\1&hO2um}2cH~kNJ:G 8l$ 7!6.@$#軎- TGѐ|6}$Aj IozaڌwTdfUGaS]&-rȆCMixڔtcAdi䏦/Ks0p\ۺhC`x qBc\KԲߟ?ioJB({c_!lUt9ٻiKXfj`yQEs^-nZ镺S@Cd`m!MVs""w]T3p#dx8y\!luCNg𲭦#?~= B;xj W\蛳s$\M?$Uʕ{VC(;uc 1J lY'ӵ{(l*'}7-\z Z|4ɍ1#5Kr5R$_ڑ"= 5%+3uzRTšyǙ C>apJ7"]b&|ipt{KQF@RƎN,R`o1)LIv6-eLJ#{7uݵnߗRfIwYZ^)ua5IPZRZa|Yeoͳ v&^Dk%}D]>d<5T^8vnԪar#BT{[8;?TkO:Z{m^z4{mwY =Gr͜TJ8`r$cX;cETHP lSk\)N{{I34N!ӮiMQ_R@UWDWX(!HyX"S]*9#,QEU6\FZk* [BAyZUlJFQ3c]cuۯ Ⱥ8L i=T:XrqJXX%V q&|ѡaZ2%m{&p3 ~)>rskn+~mHۇ LN/2j7\W1Т yA ZXa7|;8d6^#wP+G[]pRٲʾ\D$Mpj>a %A)@34P&zt& M6y2.k9wKE7X.)W:w#bSͣ +mm(A6јm7FWm`5<q_+`ѮCK(\ i,rd\玭eEn;wZCWaO[CH=P$CsOBbzsvGo̢`R v]SvI':S~c⩠Q>S%J~H2M@ d;UV]N| ?7j[i|RYvP`:qja ihnjt'PђcǛ8 1NBcBj)aᰢӃV7@VݤTޭ#R˜ԪO]g`,JgӈU 1YDarM"P%L1A!RգQ$9jՍ J.A {bxg? o©d & ?vJWVI"A4j&Onbl3Q/…B+fn>J\l1?d&omΘ.}/DNz8[HQ5m0m'5ݚrtqCI~I g; N*; ̦M[,d`\UdsZL̳;Hsq-}^N´e/zk7%Ҿpq&f.2p WxO' ѻI cME-e\/z*@.H:z6+B2IYo@(tc(k٢5Hr"?dbԪI$Wg5\BaaǷę9LkT&b.Sx8W&tRisM#lY6cd/% NDb\$pAEaxK"Q18jt U&EKRA.ce!zTf~uIE Lg*[_܁zQ쇮XkٺՍ<ӛ-D,c,- Or{ |Lq*$ൽED,BDQO.R3Ye%_%>QwO,1{s2# _N'.1QU۠g9/!0fY(;㽯̴#"!f&8AOk1e&Aa!SoZ Zgfŕ-T/Qx:G8dL?Ɍ[s *=e9fjb5fNO5K}yquTB1ޮ7d@T]]b3z<(b֪Z1> xb"+OPI*Y5 ڢ2vx r,]0m<*-w|(1] Y;ǯl"ە|oŸܜ6 WL˷qF σ ]TXc}hY'-Fjohۡ8dHy+#%z/Z/8ͺg4b:OHyD YoTDNA'ĊO0Ec2О K_y;j|ΎiHVkm%nT,+cWBǠ]>m]T܁dO ǙzCEIfYK٭to-JӼ+3rJo1=NݤlL}X5V*!ot h=Cpj3ŀ|n%]V@py[P;ױdS|4 *r|&U ץvўrU`$ Rzi;_BJd@}bc(k _8yů\O;8$֋7pw 1doGZJ6%_=lp]ИT{+9;bhYC5&Np/t5 C/Ia^oK(SJ)W"VuqA>fnE#3eM(#OGtK@BwidVuėԶ@;DV2)"M}'Ӊ~3A_aUD#)*'*w9`Lgg(.Ϊ->6oB5kE1G5x׻yNG^tsELBue(\Fs5:tA312eCܭѴ$]C”7'UݡyE&s5'?Qw&O[_Ja1|-Ӳ&=z [YW_LKךX|- `7(CkfZSEQsG\C bYWV7\W>97/M.Yˉ dsqJqS۵M.Ģl۰2C5wEЊAtKPQQ1leF9MIbU &x@ޣ oPa*] hǐp5=*Be(y-1*oAkTɧr t0:8SWieIq=~dždgC!_&_f0RDQ'9vtT?L msh?͂,锔9CG6(?-I'xw>pTvC{orAHO0qtj (ֿ!!rFI0VWhVVszr\4]7c;S_FT%GJzGٻ00T5{Lk6bEJ\&"fd楠`y7 R,ႊR!1 .&9 a+޳`?W"ScTn%Q m\IpWn~qEN)&bkcf:s4MN$bGH'gf]snu13.͂b 2WyM/B\|/ijSpnˉ(| #+#)<]AmʟbFU"˦^/ Lfc%@1GӔ/{|jLЏ*ApV6||[8,QVp_yZpJ0?(d?0`~( ].e<&iO[5||V|JIMy?ϓXjMo Eaop<\"oibSy/T#1z$y3B$^ X-MPt~dzJ|E0]dEcHlskWr}wA_Lfi]23ul]x;:HHL^<;ֈ:Qo8k<ّIU[2\d^ƾ['ڈNce2%FK@72&7̉ u"~+<^7C #Hz2Z"CUz3}7G˜"I66%,};sY7q+^Uɗ1i8$5+a" }8f,Ì%Mj@7ȑvICW&eCHc"WXj|.u4w3R{ףhvz p0{kY=r^^x"(&hJRy>L~M؃rl t-Y \ HTNk%ZhhF|7B83-^jF_R;k 4!,aV } GXE3| y?2\\ߥk$nDOGi~@W9:s眪E5[a`Dׁ϶>pti CTmo`ܝTj'7LI8=Շ<i8vIOe g3{XML1>U56l$2RBQ&sDݠE}YպJ`ši>2aɐ N}e)`lRml+6ԑr># &JbinG…{xS=p@E(mKerz4q(r"[`OO$ʔ& &[^Ck!k-…p)+RGn]W=y%l*u ue÷gNX$}?M=}8xH2{,*BNx(wODҶNjU_囁ȥX"Z-t6KXzDV{T,kiW ZKbvD'OR~[xUEE M=;>Dp[5Zqp.ֹ4đ3ƛ`?y>@NKeqaΧ!_˄˰Y# ~KDPZڠoNU:^NI<>Dv :a~+,i=pu+]A]+|Zٮh[03ߕN8J+[mlz%"IjOq_0 "Vu,U)WzH_z<aH$7c1 7}O%P@u5]A.4Qb!*ldrvXlwu yLۄHx fks ]p9`ITVٟ2RS/RԂ iWl3]xR[% Z~`{ʏP|<#j|88!EswX ;y 窞.hBf5'ѹj Sp+sx+,,Y5 jgw'n.εH+8r/'=v~[yX`Q`%|SJ"L FJ " .l|gszps%F>dUi{a F޵(YA+&@L:Hg9]-kn&#>.b,Cw7xRS` \:B~#{_TlKf\zGNʘ$zo@7̏?ZPU8^ZM$'<ҽewuꗚj#4wRK Zc1OI{”l :Y(wo´$EC[䑽L)&s USI昕bxW8U:!ƣgX6=h&U S8}_'PP{t=ZC*tc";0(^I?TL~Ybւ6֓m0Ft&}|(zcLC &lݍ_ >ޢ+2Hr3ȸiE0xNl􍦺\'f$?wN$z;R$,s 6an/nԯsCÔp1dǛf˃GT 9T펆OqN"ajg/Ԡ RZNKXQD6€aUAw﹘I-3Ⲷmү@~ VY2JQ|ZφgтcEF{i69;@2~(4M (,uS2{YDjc`3{}^%*J'8FH74&/̪Bv\ -_fJ RNQ:[/WHp;uPݹ dn4Ox?XtQrȢ >lf=hVocԢ -FA-' ALw t-ͣNv<XSZ>EDN)\cJK[-]U4O$Z-G~P, 8Wvz.f$Q7`M\%gu}Z9LW6~gBnCV@ O4֟G!r 6H݂3L{Mp;=P㫒^z#wQf=l#;\dMPxYv]8iey(rEҷUd pb4#8 ~oQ0lab{; Si1w/8vtZ$F s4T=KC? =/̈́f\ Fփm8K~-1w5Տi2,3@?Ix T^75C\"6ZukЌ#ƿ5薪 嶯Y3M· .뤰HVQM0dZG,! p@[oPWL94r9CC:GK; VL hs[_Ľu y>6Nu~ IP#=l/QXNՋԶ .DW M*-@g<[Z#PH: ;*;h@w>myۖZszORoco!g9To{~X/p[ 6tYeZC}wTޜgy r]V]v},fCIO g7`ju#"?nԉ$F{o+ #VR![s}kHԩrKbrbru`õD>C^w SLE9LKfvz!ABJ `j {x>uV{w2xm MRmډ/t\Wp! @u^ c[>xUm߂6vG}V|VG-٢=hN)ܵ#ofEMlC}k^Wjc@t˓ ߷xtM3Cv{ĹdOXZb_m!(5z]H$XZ^6e|oL| ޫK.[tهKĠ*eqi|p 3?*9H◍Q ,YN[_06. LZOȍ^/Cg ޠ,m&W1ycx"?יD8&\?y,>M(Ԗ!MWiEfc{ nKax۪[FY)igdWF$~3d jy#uKjIy_Q'6 IM3e'u?kv!KaMML&P>ƞi!b]G\^Xjy,6l;ѷFWĥU ?V6qy-˷w\̾v F `TNOk`{.:>1{'+ǨiZtGHX+4"JYQa:|Bpc+>QyŜP(#sߐU>BmAl*;:v)[{p-t^8|^Uӓfd'FV2Va V2Db4ikn>0;8pf2T4("CO$g=A|L { Ͻq}r{!+e,z66PZ2񰵮p9CJw+/ҨDk>" 2`ujP =A, Nnl_,HlX viuFgK= k & lƾw%i:ݿ2qIS@w+ c ط".{_}knR)z]A}!q{{/A 8H+s<΋(z=ǹ١O9ٶXdZ9ww4 f'ocmx/FrV%ViLꖘ!ll*]*%~,p}ԸB۵8:nc4AcWC@=>Mc|s4.YFfIә@|kʂ;%x?)Y xaK:~ӿmŁ=jw:PO{4ؐlZ |U#w I{{5hCv}`>EtW91L"N\w]S9b&kxh-y态 =1ߖ-_ةxg#\*q}%V曏bZ ΐMG/܅H@e49"EAOۍԑ+b^^$Tr{P/i̍WpcO3:7Q<]abRßNV煯TC7-<+3X2~m$Ud'ȈE^Z";9ʭ5sC /W\2.\Pd1 ^U*ZϬc+587& ; Oz-飑GsѾλ=U>iqvAX:l7nQju;棰IF-Әf`X*?\ˠ6v^b/˺ ܒBfҊ#x6.Ku,"qǙy˹һBY+XĠ䈫Uٍ$t5'pyB2=;8)oW9~qaw9tm%š,Tq ]x$3& 5\sc)]ggSC9y}mzO560h2?*:V2l>’KL3KgT+VXB )dD|>%5LLF pȑbYJU? wlVX x]kJc.jnGӷ-/[: ^|7ŷ&þ]Uz2mIt\TRR"I¬Z-ؤSASӋUK! "9zg gISh쎷zD6y"SF;`z]{wUŁ.frA=ꇠO_l~ة$x. {FD l{qaq-,I2gf D#V?T,>a ߲ny33Fp< TǧO`*hrc^;:$;?/Yq(4}Q@ŵUY %d Lp.`0@gj4?NW]3(`}] 2 *t]㈮i+ .لu.5'L?<%G0v q ȃkx?X*lP9ͫ϶Hv쵑7:Z\m"yX~<L&07*;.#/<<5|- F-+pUr%I+bviDSw(2O[o Z<Eo=Nb)Hwr>߅K]Щ5:L:JYb#o,:YȇdO|7n\ʶ}pr  ljվy+$Osi]u!UWȟ9UZM + -Ն>cZt9lcuQiܡrn6zCbH>:{-"QҚpRH2LM.eXC,wWDDjzcvQۄN1|]T3N'֖nSjGףi=6K\W 06>f){m{ו,g!{Nz;85PqY0<< Tz%B24؏XD#$֛:8+W@k= J=0=3ʀb^5eB1+r[*+0ĸ&"j{w!6;6F3C+fo'W[ic^AգDlq<{/+H:vI/fJGs eRA:#qO pUD50qc.3<6T-a~˺@"Y k#ջq 04c˲0;D_1AE(>w"Ӆy ;/Y^|a/j`3L) Ru[kI= xRGsêַ|A#""0?j ?S*`f1#% "fI FATL ;AIe "HqINѵ\RRw9&2>ێMd&p[`Z8.-13;H+ CrFMŲfÏH^ &ޟ $-gV:23L XYP͓8`I܎FB?M8\ ì:|+"a͢\#voXFo QrĥyxR)TJ;nw6f 2y{^ƕL/:9}cJ:Iԣ~7Θg#wܯR4& <<wMtē"'&` =Hi㦎b޷6>:l+>;Aӳ8>跹Ϋ@j 5Gf*_sZlR@5`e7QzԷұJEA|4ȱfx oBtz){`ԁ&4lQvXXmn80JcPp+Ǣ#"ot8;9[^uz+ah4kxZn2+8zwzSN7v6G~}1+D'_'sԈTS`YcD-=!w]M!HAl1hլ[H{QWZ `H$a9 f68PFNOnwz]rs-ޖ^a y,oC&3jWR43eo`oIu}ڗekY<%9Hcjӕ(uwlhJEQm{)(Й7>} w[:FċWcaT֝CCʳ8Yxx'\ +ht&/Os?o}Я!Ck2]:gnũ"d%Mg\gm% ę3Pt~΅?bԌ8i%ꄓ+co',J85mtk"l#XGOr㒊3&4-;l&F .GIwVi ,^[cPcnơr@.R/-v2k833t4qNP$Y0vqku6AX#x;=taL@@(wOnܾݙ:>m ?_&pmUD9wTU*m;cu^fF3 X˛eB>jU3e,udDh٣ȇ_un ȂFH{"YJfʸͯwucc"?`Y&ꈸ=K<&Kkyd.MŔp+8wʚ:l]([sf8S@XM?ԒfcFMqWMje-%CEGαS#܆"ȳ.V ͬO2e9 !`8UzZN{\!.Ek~`DP٨zħ->?UM+N$>vu{fΦW asJyLg OQ'ڳ>/=M׫"釥Ob1Tַsxe{=yof0l|6&%s_uݷ>Pnw?Je7֯%k9<9FK-"j?9rh!P#w& 1`aitƪBAjI_;U+}7wqihO&Q {F-# +C%O|֖ON*#)0vX""[|BG0Wc$G0EgQGܗHB|RhW~ϓ|i^}׊d 5%heۈM `Cj557Wu- ukD1]FԨwQN"LDQ(1]Sve"7^z`QakJ~NimΟ;Мo3rW\G0;P}U_=E^ nRQ81]S2_pJޮb^Y綈?ވWjփc+%cV?|U=, o;ح[!4!JrL^1Iݲms=}ѯ0 ya: ZԡUe?לn|"m Z P<HPt\)Lr87"%~9G-c/~Kְp d$2ʌO1BۣS*q)dz?Ƶ-\,D%ud.IM2!F%ޘ 訝*NR4A~̦f G^:!,ag-xfОf4$ wFkǃ]6"%k$m$w-r_ER-t~M8oBu/;?Ryב&Ha Ja!_}ࡉ'tܝȱwžQPp-=PS&|).P z%/4w2~Ja TZNݘtK7?&j^%) nǘ?M澡tE1Ho52-(/^ѰXS',U$pޔul\gW2UYʶz5#KcW3W3”b_u㻽ۓSH&{: =B.lN·}%GRA&a1Pzܫ`pL< "l͉p_eF rH>_MzߥP/rC=|h6Ajpe-28LFf1JB^e%##\7ك\q0FrsPu F<>㝯{7{?ԝ6Ճ]64M3R 1I0ڟ>R U$iч#SMy5;}N@Nd}i`Y}Lf [h[-<ünjVŽyHt ,Ïݲ|3Á<&^ [Ӕ02jusW"nߊLr=pu`Px<^b S04BETO끬ֳM\Y+PZDtYC*̋F*FD y ϡy_!jAD--7{]QbЕo{Ve]nw ɭ&E 藗Vx2h?hr%UGitEl$t:Z[hD{p]Fa1p(/jkm Y_h8ʽ =.ܸ, /5+wHy|-ygJxď(.f98$QS ҌB|ie G3"&*ID7?\g[`=t A`{U-$ͱ Lxe/kSʬs `C9Va]OX.o¤՚NE 46lVernD˅W̙GOkFv/~ZY>y;*MǴKƬ坔r "\J/3C#܂xӪr/syp.N,&=@ku O TzYR5nDu̻(^<'+CLmƐNGA'- G~,aXD_'g kVvI@&ޥJG䙹yYm3wS͕oggQ|v&6" g<_A-(~S~Rn\Qr-kV>:0N 5rPR{Fa99G@& p\҃ i+yq:MǬ$^NWf`2s幬7&.63$\%ӱlo;D qqqW=7 .߼%cwc l ='cyZp@{KcGw<[k+H4 4ȫ<$[eBD{6?rO c?A7zA{;9iM#EB +%:?ҋ}aR/uᛀp#zȏMKxSJ%7a^Ԃg:@pmQ]7#0bed`Ao">7ޫd{QrΕat%F^TIhm2ܓ_kk'F쳰ܡH9iUD5,fhWk=TБ ^?6 ݳfws!{ݺ:rCCvl_ɫ]etvHL$l~CfjOqR)hx+bQV$Ј+ D*8v2OgFz01FSsL&oh[C : ںpW w&&$ƠǮh8񧜅rn<6-'wJFFo  mr@w姞7EAtLZ ]Rv >x:T~ifzn-%k\Dw θ#i{ԫm !gxKFV} Òmԋ _&>}kMh7u]JhY0-${dRdy4UD?}L>c!^(qjb T 2e"WM̎skeLQd Gma !=+A@OԴg1yzE|Jz4G:Dʚ .d=YZ8_o}ht^ 8mnz&bqUxb"`_hQk89?4 paYjqvi g 'jb_l6Y)cJUf>Ҫ ޝ e?rnv{ B%T3_iv$k} 4k /R^ʲ@3Oio< r>Zdyק@V`€1n0ߥy_UP]̂xs?Gbx5/8ˈOU$}fMr,$?\fkܯ421)-qV!*_ #pJJD>ͮ{,pJ)SbZ%Č$7s tuy&- q,W<r7r2_ۘ[K5djHaCt?|7h1'l1 ݎ$ ^H\+Uj6ۃ=S#~_NW."arlkMeE_Zr-?H G9n'T0uSs`5>p )f~z7xEM6BuuR2:eG'¨ЎfX43QRcF+7O%E,&p+|cδ,ْs^$RK&O *v8@؜_1My~ʗ/Abw]޻]a{;dux# >̵\Tlq)s`i#sӜgS ›'h5ۯe6Gb|:C .IƗFiz@.D?4]ȻqAzS}5zMwwxҸLg9$ {R 5qlApX-<'Yp%[l;eƭvcQ G }1xGNTӰ:ug0K2I j*=Tw3?84~2+:[ZEVKhqcVkg#u~-]ܑpi Ԓ4}nп 83g4'>ެc1%?콩Ԁ)[{+2Mr_3h ~T9&(W0sfbӀ9DZDWx QQ!t|v[v(bc춋]xZiPs!^Hm9SDHqedOLߌϒMV"?ˋ:bJT _]oZ+8a+p=LRd_8kHd fBqmNᰢK$6zzdԯLկ dbmag/z /d}]G/)A/ur @o B  m_?9J蚖EEzP-8F~0 MV+g[{T-mu>uu7F`k`e]=lXJ ҳEaFOV; ` U%o؇m`yԄ0$;Dz1G3*GX=* qpqIP#3f 6V;>\/ebM֦ ڃ DerśjjHG8 {.&]˨3"IM2Am_v NvqQįyYz`<$;kAg zԵczۺ9L{׆,>_8MPiʖ/f1>wFj1[~g>Z"nAslZ0< Rz'-)瞨ȶoh;[{ Lw>A)'trIQa^O+𩳶[h1ϥ.W7zK 1lPۀ?);WҘ{0`Z@[ؑɯʨrť<NÂ3O6S]A> n#9+.,)' /{n$ڲ0Ь(HD}-l($oNmޱMը~us@P:wJWrx2Z3ӄ)ιNz;ruan. s5{p"@`lL.s JqZmk7UǗVu*ɺtԏju1n!!|KPr 2'm|KTEncQg8r6sm*)t/@u:qcFq, ThōdqŇ|Hb 5i p M p%3M| |1\p=It7'nDϦ/qL>g[ԊY–FYfTQfp-ΦܧDǗ[FtЇ-!8oE!z&%lg .)@~ȟEj_=z3&ߛxv?|25r^=XP6ة jOXt,KØT`6 buSČDS(9-!}yY^L"e* M8mnZG`X2p;3^}| h۟=z^n* )Yj!MЗ .FF}q0oZV&K٢FwѾ Spwኃ~}+NOq<-Rm8='z'_u$ԼH)-}^z5a=bcI4v?FsM'w $2N0_XEV7Pa 2TT6Fq=sתdD{IOrʖ͵e<0֩SM2/ 8i;ܛV)N`pa|ߧm4.ȏz!U!YdrҕeEޒ(aj]")Xj%miԤJ@_ۃ 6kJ8 џ: S.$Wl eMÊcV?oH//aS%h# eֈߓޏas'z$w[*{P @8kZ B2J6T9SnX.+Q[F/@~:cpm }bJN;"|M{5P8u ʔAYDvh{M@qT3OQq<kIɦ`u-DrJ:6Ds_(3b.KJ;½ ;Cq;xCRow( aa牬p l\sivE)٪7zدf_ cP*4?fYʺF4Gv?= 4~U(i&UyRZ95~q-Q'  wM4,6*VF&-ŕiĺԴN3e\mh3%^?0˅󽔘~ۥ:EýNtZjƷ/.( qN. ~^ET"ʶ@grٓ|yB;5Ɖe~h&1b`P UÿX/y@D*:C.hA$Vlҥ5ⓕ&͂VY/򌮑v QNquzP䒬 'W) E7t4YpysrdMXyԴSShHoߤCN\|LR=pl̜cɤ ʼ0hD]K,E?_M}8卑kgN˃ΫnN:> >3A;Nl1V=)^)}yq@❨9zDO'V `8Bpw`S17$NLecĎHSLnM%2\^]mhJ0zwVM߬_BxQ _|!|N7aMeAxl^ArۀxpeA؎N d\00xBo.:5]vg%㽘;R~P^X(F PX% 0;\6ۏM{"߼8}_k԰I= cS++M@i#5K|eN҂钠ԺZ/ e$; 9H7%]gҺD&W1* %h 6^o =>~L&$b5қvr!e-^r Mޗ$}U+ƍi1D-=v&b7 &*wY!P(@8#Q)-[e@َi{'3Қ.ٸ᪴[*/R?>P/H IꊙYZ H^]KU'j!@T8 ͪprx2=vnp!fkx9[j.j+-sq"c@i1c-$DHrGdr<:KY)3um%sgϠG K / \d͟f2T+jvd/}$tSJ6A^]~g7 %mDgd9+Nq~ޟB ȡ f|1 闁3lmN߭@5%QtRq O*t:|BDrt(yOG[Q= *6R:# ׆*nuk(;NS'l"L[ᬧޑ ]|9lۋcyRem0ibk T}NPۍәꈰwJoтXM<  Ӗڗl{qGE@V~JuRi[^B׊Sfh^|˂+o/%=mR7<_̮`a"^R M2`K},h۬?PZZ[r\?7 UEQ4:OGxh鬂sT q]#cfܽVbqŎ]*!Y *d. ._ӥC-ʷo+09D:' `YC<$.3myÚ >rMԏ*eD4%'hCDH Ax`Jآ *#EcEjƇ]KBAƪ $pFQW>_y#d]TKs@+iJ\ÖE)aeOzσ3lCei8%7  _;nc"X/x܄}Nö\G+yJ"$32ͳՏ(B!G@"pUl@l2:*Q9tʱp6Pg1S<)3yT:9`Q#k+]OoGfv).7Q%Z}J-v!CEz Pxys4s@a;u p^ϪA4dDd7N;yn4|,Ma'"N?q !=w*[DʀWU\!߹Q'hjL AC(xeퟔb}("*`\ۤ򔪆N^ @FvLa[a$5*>$%f%L<PTZoYL(D_;,~볶%.Y[ 쀉ٸcipCum5V3XKZu؜GpH6K9e4S0M SY a|ۡVJJ=!vTDOLgx1WPsDUp&s?h\OJF RVxE&Thn"r*LOv"gMB'U1Q6܊ 9f_ Wn2-Ř|_Ua6@B(d yPjg柧 "*K"8FŸa`n7CUfem-@ dHTͪdtqY'I(3L *Vq<:6i&{ kyf9!)+}܌jGdUž?Z_o$j,H?WlwjP*hb#wYvcK3b=kg RG.4EF ּ/x L{}غ:1ݪs8DwtNjI ɫYX<9t<.@H MkWN> l xY1N1K4vܮY.<ǸwF%{^#tcr =h|] q~+veaȐm2ϯXVِ"ڥƕ"k?Ɯ-X>"p(t% t?t6?He!Ta᎛%1\.9{F #nnRДǦ#(pp?41ՄHSFR-F 1 Qq(fll|nIc[ - IU|ioB>0bb& }u;w#W;D{=r؞á(V~O,]>^o)\jp]%p'G8jX-VjE+Qw2i)D| y%2BiAzi:e}>Po׬|Z149zD B̏ wnnTZ:c^e,v8yuꚛC_h a %#xtNsч#0O>!`969̌>ꞶC{6:>K9LqL}| ?!n8>[<T:p| &ؖē(i{\. 30,֪Q-Ǐx[Ia_;>5G˾MVOYbb0aoFzZ)[j%*PP=<& iNxlRΫp+ҿ]|L{o:*s/e SOE0[̃h wO5Ϟ(Q(S9ֶs q P"Eg|_ԓ{J_: 0IܢMRpS v Bqp1InپϹ&Lt MQԉvҵ,e9Ooe, YW-Xa#B#OZ:8Ncx:y%j? /U&n6`R.4`LXDŽT1c?2lȁS)NNo3w+՝O=%a؈)H`P;Q#bG9C57賺SF#Y8b5#mle}4;쬍eO\+mbw0%1OSRP''?$Y-YCѡ1 ckNe?__+z:y0J7:*y5aNB<}.X+A,˳,t7`+y@8qA%B6i,]+p vN+vrL$F%`p={y択"C=4&uD.&VI,7/J'T3?K^€0/ݕ7C=oI~p=VR(5Aߡ_JN]5o0ʡa5?M8e=t6nwr JG MW-gfeC$1 ,k֥(\=?o5Ee᫛SA*LY!uJC欋i _*6-$Xƃ;QtifTIcL6l$#8x AB :(4(Y+ 9Iy4PHIԲnFHUb*=5ߎS$X #T~( yլ h9md{I'{E=ai07x -_T++n#Y/5 ЀWg3Xx\s>i?i08urWB0N[kXU[=%#/?ոW f*ٜ֠T]V%lLTEփ[u(LUJkV|*ԉWv& dG!7 7yV%lѠ| 3O^"Q ٤Er_ <*۶Wl񯨸 1DDdr|-qa+7+1aIFhfu&*fN A*0JTW_ɺ)e8bÖ{dbejox$;_+W%P CWt4 vm6J'&q:cZ3D*K#^8if{zHĒgݼ%KOa}EX%^?kT`]"1=3x!'s禦9TFYp+#O7ۜG3jwQ"_eYF嗪%>tQ?)>ܘ#˒w~ހ98]I]`’ذ~1k0Ak:ݱX`"&jAwVZW& ߛ+8R>0 >i NOYt2+=T 0{Yk`a'ΟMݻf _AY,OZ ^C<%WQ}t TdܜjB&0R1Pjշ\M78ıoK470v͢o~x)hhAgv*G?{Jd0lcnRc}q]7+a2 D!ՠ@R͕N s2( ڰ9ȋ}H\hC9vKjnA!E4(LQ+P$ 'd ح.sis 舘ihf,H;6 ݚ,B()ʌ56´\L7F,WiT!>ZNg>=^. :>mA׊ҝͤF˥|]I}մ4Z)+km):oerWƉ4~mW٦@.GVtB-NuKI V:߄@p8ME lMD*{xIVr-5ɗ?gIwx`~Sk[V Gh`ZӉ=qL5)Iu/aZ&4-=rxdր1(KٕǬў&:G?/o.'iA]ct`-4RcsM)(ҿAjA9-%7SoihҢUƼ`~%aKqËug1O> ʸ.8 s\I9,v:jE4ʻ c6[ݫ5u=*T"X3]"]!\[A/$DgxCXTnă  S0YاR0qz@I9Hq#:yg>aa<.xA=Ŀ0W˷M;OU{0X]+z#gyo2j$EޞNl˷zpIļL\a&RJ>E MU,ꊹnZx_hؓj5ɲ/JF#1hiAcpȞN)¨QZvl^Df;3^چxX-Pu*7eAX~N,ɼJ}Gik&]%G`F.h~jK/[ur+AIcj, ,ybݐA dѣЯB4C;PC||m$N[n>k3׈S8COXkiggOP&8$#P"ՓUdcR:HۉBp, $+D+SRpW#BJNe񷤕`JUqRll+0^:֪#+ H 51s)xŒ&+B{dG*z /"6'e訞[lfPًv,ܗkC4&>+?g!w!zG؀'{n5?j5MhLWٸE,s]}M/%r#.&"A H,n7>^ A>+*@?!Gfљad#9("69ݺCZKI 3]qRfp!EҫpojQ 785Z|x z^8kK2A}d(A#aC󁔮~n "9Y5IB<ӅfUT1[{ ]x30lL`5;|VMzjmbQJ::<1#؀5vX"^\s\ hV|b9nV%8Kڹ  Hu5߸Fz}I#W4M(X%̋}Ujx Y|RsNw#mLg=߭uU3J/Pzh/D5gG;ڷ*&Ut:ڱ=ݺs 21 p*&4`;4x[o"rV-<fאǖJ*zҝX(5 gcea_!Fs`ݜfl]X+W\oˑ{0X@ۨ.S~+^my{t]0={ Gi3._KAT7![~qj|:$.$ !QtyOy1&ZX\?|?[9Jw*5>`?m dZ&#12펠C!z ~R*d[\)sos ci䠋q*@RBXڌvƳۍ2(W A;˴'xEI?UN˙n4'xù-IA^*xz@yR;7?# l5,8MlZQ?׾~8uV;#GIb6wF~LL! ?E'VngP+6o$k"Ta%co^iFQ@OMɢL\]s6Bތ3N%~zI6 Ɍ΋S^6I|­-ށ>,XOFh,&Lz€/sfWÙ/zr[2׮!`%ǐ(Ip93eD%hs+qP$Kwfk;Q3F+s+qq@qJNorw@(fubpF\BcsS% [0hdqGb㗹-x_l$T]{LN4Ј8c 5,M|bUwٝ~A?S6>e)e܇{|8csftإ`eYcSE0WEa^V;2OF:+7~4s-q`1O?c)o.۪fEd~e"'7B$} Za[MwagF.ajA.%$xA?`Vqrǿ6N@6@N̅J3H#3&IbN /'p*ҝ=0,k_{@m,-E;!1m`$ W-`FB j6 yg3Y3jVr.ym]I 1dlxf+[~X4`D:KrMe+4ǬiSvy욶Szĉd*iᢲ~ b4~ ez7:6.HH-ivaI=Xػ8jf qe5 >Sk9JEG]/=,TJ]om1TTX X~[9秧P-roX6$]Phu֊R(Y0b@9˳Ԍ짓xe#A{wn5vV( d}& ,+& jK -6] =Px>yfåiX xsy`hEص٩}]"` G !4#u 4cyq 47_(b_H--(D] \r!3 cC)c8)sF,kVz OvnH t͍SM_QNglI4:uŘO5G2]W'B:+xl(cgY`\)aSZ?#O|kDSc(Y9zs/kvh'&[2#YuԸ;jʷJ[%Z>[]ayXtk%LYy};lQD? # >.5Nm*c&f<""A/?N,~ xdKl<ȐW<>"h`zK_4XcyмQQ4y-nzh_9#1/0-5D#>\3X}@mh] }Sԭ F85hpPbp{%Bx[դ~ UfoYVGejeط]O{Sy0Cc!RnTZrxa=סb&%%h.2L{mU^?ЋG M6-l)q.,MHR)&!U%kqNu6*R|0`RPHmͶaytc8F Ի Hv> $`'NSr< %2&4Kk6]E@s uxv o3$q nB},i$m Q IN}uJ6<^=(>']F;OZmqaD9Y{J' v`ZXMW92(ERރpܸ>plS'&kU. Hd}0۞c\a?#cWk annAL apE=)` ȧȃ3uwDGQlLBKaGNdO7j`DxL׻ =a<+6K:MEׁ 8fEULʉ > }wal&fP/M&*@%:`t0LۦG^ M x PFOa*a u2 ԡwBLSx'a]#r.hvţVto糀?x2MѨΧ,.Cv pf|O[$;w^$WA-۹͖*Tw[y5'mRN_L"+^>.vtRV,܇w 䀶=R' Mo<*O(f=ȉ(CzZQn\:AMjI!I E}} (__%M"dfACp~[byFϠgsj*^愼 5/D C;rXZ!:DL'޴v,i+7a@v is|dO%RlV(;GuFMV " (_R:HJE(Hp\sgttU +xIꠅ~'rܳv6Kw,֤$8F0"x"ZoaprսqPf@>8kсs\QtR^#M.=[xk*0OѰ 8P)cvkQh$&UJӧq$f7:e;L:g\ְt}MNU*/o' Y |3HDZa}P ^p"د0s $$蒃=|DL2ձ =Hq`Ȉzl.*Uhơ9kZ lV~.ӦM!DjiKj~WF~6 4{RѩvH wSoT>]QDVAC e A4Fr)x^=Vl DQ)+4vP>~ tz!qؾn2b.DXwrI`gIOv^",'q^w*ij:(JtyB5[TE˪_n\.l?3P_\ [ !p膑0:R ,ci3̝q1׮6)TK鞤p(&K50D"bCDk`)[&O"00j1gL8qsA=jI*˶j _Vh fuAc[nJWf0ZE:R)[fR ]++a$5}ɄS$]}ki4 t8 /ÃV/;,m1(k<[̧i\XN#25rCΝP Yٽ#_~.&6o/'l) 䌬̅T-鳵F?>s.gt&66tǾ ҏ3Ě U\1~-+s*QNlEQWx֣_"3 Hѧ#a#x_8|t3fxxdG-_!+ X'vb.އ=*7X/cz^u\<6dZBA1No͖*b]?r }ܧ֠w"b!$w%QD _.#SJJ|lJɷj3p ܮRDMs2_T]2ҬUG+S%=o\;y. e!TQ _^MOC !ѐx `YHH9񼶒&# Fʹ3501p5ABn(vda %@ RE-jU#t!+'azЏ:nH1'Hm fKGB"b{ o0i;o)J*,=~iI'R[Op(mrzmނۨ@QkK5C%B06kK[:Nkv}epVT-Q6F ㋪]hH.:xmLϷKtp E0B*ZofQUK3tdqGNs!f Y="ޕeL\N;]Wd?o:)eL:bB TXձ!?[T6_EFwfLf*M۵}t C~A0IP9 ݹ<: pc~L \x@/Mr93D ELP?S"]nы<={|@_ڕhFΝej- tyQחK< ok*a#h.*2"+Y,'QD;,ϷS\ /OTȇh+Lj~=ʦE)Bv+gx׻Pj3;Uj8j5)wA̘1 y@;| t ;Ch #*ęW c?bM92X;^P =F(@5kP?:&~973ęgi,\]VUi+% zXfdrm[a6(z=).tzz?Y"ߑ2, K0ػjՁ*ǪF$MڠbpZ2y◶q T^e6 C(j:uxVZ]0M? 5ܗ) JWUbg~Ś1c Ҍ6:{#ҼIО= K2g$qJ2S6 g,>t% <26o.)!S Бgc[cL8A9e!C`A/ڸ^_#xLYm2I@v9p[$fΕs5ږYhlV] &!QMDq'Ajl fZ^B \c':-)5؝1azO*'jаG^%SھKOCXuHJ϶k4UJ`V*8OQ|Rv 9`ҙIPf&I+RI98R/HR-Q[K%/K V\ id"U)A /F ~Hmqt5 a/ZἆtT5^~a9xۉy,?zA\s_" ?,|'EĤ3 uoQT"F[K!^'H0q\6B қ㭷ĵc_B?7jA!ݤ:*?204u΋ )ᔿO;lK;auXꘝCպ"$HE6}zLHMp[Ϛ!ø([yNg&xD媎%nYM{M7Tg`f3I # (3%ʍ眴4y΅*Mɫ&,1E@ H-pY;^Ң{p%De@B)}G oaJ߅Lb^~ ;L~2qѠ[Dc/x²[,oiQlFzB) |NhEh%_;B5!,Ll92-S#cw ?6cGa4QeԉoV̦\C3켗7[[ 1ԒVSKrřhYnnɝ+*tN:0S~J8HV4S\`pg!j6c[UHOSi \>=_Tr2Vdfi ͬ .2S!ž@y))&hc!B.d "\>/Zp+IIʧ9 юMnIhNwtr7$aUdC';J$MH!.£m (ŋ)goí|~_EΡ=5=|OáQuяQWaA=s'YҒǠHdGˇB7^+Fך޻ޓ?ڒ2uXҹVI)Nڹ66YlEev8# #6)fP6:.,gJU8rJwvpj dt)50@*ި"WEEPBY-@M>p%B& NJhx:- G;oz#2T#(HŁaA T`<4o:Kl]X=͚}DeBQ{bΗN':bDN<L ӌ?)k:uv!!YE.ςi:mֺOi[䬦 i*o2#@to~e;!;+3V"Ƕ㭮W1-cDm#Tȍn6RƯPm Gwc(F3 ;PΨPC>@f!T Q;VvrN6( C tq Х4,10ß}} m+,|E3E\Bn. ըyt܄%ME 73qͣh[l%'TF?E uk%%T !ZҜ+@^`+ŗlq-g }eݡ}f{?)y=8D=}5lwr ̠? dg,R=7?KȻ/, ~lu g<_ &J?xFKpV> c8)mBk_N_4d毇'}`VK/QsW`?b4LY15e} EGf.S2)Di4Oi FAg=aqv2eS7H Sɞ$<(zvҿ~QM( WUTQ؊RÓdaXKmP d@~),%zu>>2c3:1g\0)S=p{ Ԟt"lUAMآ-IbO&̋lzGVSr=6 5}O6_i#Y߮m꿚L <q~kf,]su'}?\to Z;8™$5*RzdjT[ɶ#}FqF7 D 8,Ifj/e?Q(?i.Qe[*ME>yF7DTd  ~& `2d`?O cgI;{27hJ@B@!%fU4<g e{G{"A4N}_aOѼ޽JD8E|,"D5aB8l{{%-'MX(j֜fq@woer'}PPk Baı }? Ei\l}Y ʡc̀yJ"r} ym@^=Fl4޼mmCɳj !dUhGޢ&v6w͢ 'kʒLAaz|OXZop3FdfZq@V(fK= : TEV+zVyՅ^0w n}kLdНh؆ TΨ#zw7e[GMo>f2\mny=?IElqV54,q,OOVe]r|DS :_B4ߏwu71I*ᏅZmu;@ =Pݲ=MuLlyuԄF<`N2`qjkJIW݃;qnf02n,2ȩ A{RH;m;r{xߍ_\6w؂{n.*(_C,{͇ʨO6X"dc4UO]<)zdv~oIdI7ZGL-ň`!ս{ %Q_J{\D1Z]j"I"syYh5y'l}thm>,NF?(|| i `qD`U|y1i_*0U"PtS$hd[,{XYjR _&I-c]~>1zfL=jGleuc -KthkIUC>^=Nగ8 bGHY1s -v)Հ^cT?js" ~ 6+É98ܹ^&䪃+>+[eswwQ[2=lV[Pje_rAuWf12>y\BZՀǗ1$2M,+(.N[1=@[:OxkSa䎠UA&e'8=;ӏQ+)+6e=s7#|&,/5i]%y1p|_b9Z[I##c1QLq~wn߬ nU0г1®<:UYڗJWѓ=`(;߳Xv+\g7%%7tm5oX+Sh[_.O85<XNCHX݇E(kT3܏O<'rٻ&#fXC3 \>F+N9 ,ޖE$ xK2O/XAp碙EK@`TJ@?5Ɖ7 T؋Ҿ!clY$y xY&:ιmuj_QaXS&YR,he$ϥ^^o5١3ߴ6[`"!xPQb0 Y  Xʭ,k23x37//V,1ӷ׋ yv 1h_ȓ 0Ȯo3i|2bzKLmK?hH\f+Hcf P|v:=|z8 T?\elۣ]PFKf8OnU53Rx"H#"!ΞeoIa`e_ ,t:zqaKsV^N׎* :v{udBxw\s{ptSy'0v_oGdwY?Oݖ,s_< {`+Kj(Pm/E=\<~i[y !]ϙXuVcy?y*s*gsZ";/⢟_<8SB_c dA6qTb,hXcS|O1K@&EwA(6>Bdy\hu<`}R#! "BŝķC5.w;aGLQ:jR mU&G<]?צv9ӬQ;q BLbk`D/.$w pQ;U[XV~mjH9ZCټ8Rk ;Z8_M3LEY8퉸.7y<(wv0NYSpc0'w2+>=DQӫ]v@VhOn˄d,:qma[15KsU6xM>K! (}Jg/;M/AdӨRO~m|'޺}ytސ굆YPgz̜>﨎xcmn#֡(#잡p`r mbT2 T۽0Phg3}2=x,;h9ʛ^f ub)~տ'&'Q NTPAw';6"ZvG4x&*jm"~vJ @sqR} a.6ղ ?lLmUe6N4L#$aG:pQ1{~m'Dڱ"Ɇ-5f}zY„a f<ۆyē+Z_ 6 Ae9娜걭畴DoRenѰ]8Ob遮ϵ9"ViHnȻV!u&O>l7VW_0 WG Nyy@>d —ouR6;egl_,]TN6Z#:?d-~0^xC̳/nPh3z\h3?ðr}\"ҹ4; h)NvR*B8`e9dF7OUM[^+%t Cu +&W\%`#{E+_mom;)2 D`?M)Gx=i#:l lF"bwR-n'q]PSšxXP8eLq6m_sa۪ 2'P 27F# ֟y0du z)~D-7SIʪ`8#*1uH=Bw)$8 d=`\C 9tђ،hCx IHgAϤjb78 Q8N˸e.8]x+m)[3\$l~= EoĶ1>&& 8[*5ZU&Réz\`5,"MtOөmx4T*'* Žқ͊-2SG 1-'<|EP̺Om’ 37GƤ^ ? R6v۠~?<5.@Gȭ,*X#Ǎ$5kpV*Nv؋jN]ꁓ*lāX}8B";}HM&0=!5 >,uAT?Kf#%  ٯ4^=FJ`h~^\ :%xcj<̏?,B?EɋHn JzR[Pwh|)`zd,yrՃJ9sŦ9!u\Fr:!;ӽ =9zgbq 3PBcܵݩԽb`n,@%-hĄZ{iF%dE5[=>$2NHE[>o<ļy=E i~4$n#ek9')N(YMl„TÄ'%J1>lw rQxbTH̏P{1U<mC?zQ>_iTy"԰YQ'q\&\ |78;֬o6$?[덩Mq!I֏=+m>PeiwA3 bZ;r|z맼PxqjwUR7R5@mMr JֳG9E,Pu!+hö=GW+)qcq {gk!ُl r; m¸@M۝^e&4߸v(;r6ШhNOKMRgl[D7ƟqMpf[ocL jsAm?9QC_[ϷD#B!k{Ӌ;1I k{ikR{l΋597:i DV\b`}=uj? tn[L&q,9d$+~S3 k̂f~> h5w7QZd'ĝ./f]LKڢ?V`$OrT">ߩѭX"z[| c >šTI Y3'qp溻[@7E,6 UE58@侀)GhrL:*hPF pm7S6 Ytf*]"iӆl^,:e y3-ʐi(:S9A33@TRHN?ۯ2Rb"ec0020bue8,?GM mMQw'os%& Кz`~ecT`'hIO{7 L$㋴oܞK ʢO9xfϾp 4~H@3}ҙi e@rjd p9aRy@zlp X;1u0ws/QF0Quw/AUQ^0$"i!`b-tW~_#NW]5ֿ$kĠ"yb #MbדoT )FFm9&nt. x<2!q]9ɁJ顳@mpe^͔jyi-Aљ(\eYh؇% D@ZvE+Ғ'͂.>%=wHq!=xۘEY<ŀj11@_Naq^S|ȉ McZROa eg bōLЋQsIL{. #bSa\! %l= ?qY {KiY+R~Y'{1cŞ89ѧX\ Qk4r2NzԼ\>ވN*}jz1FIhwLmckѵ& Fo.@Gif#Q^*:%D*Z l&9(mbM]r7vµz7]pWdky9GMe`FxP8R(# khCg6GH90W ]7N_]+S؝hx3Y{{ %lN5*PC}~wSJLEK)!"%p s)cjrk]9DzM+|e][ Ծyv}Mw&=P#-Kb eA3IVb]{5iBԓ]E[Ӂ',ۧlUjY Ŕ@C؄k%o*x]! ]{7ڮ[o+ݒ,o'P;h*P0;#޴ۋ:H]˵D9i1w1yxs=^%2z&?J2 T& &cE#B(lá%"hv>|}u#nGnƜx%9 `̣d̪߀)4U@drEp[>8K*j|gEGRO!q8  pYԛ Z-l)5lʦ^Rq%dK]Y_[m6o _ؔm<ºjJkoi~6IV~z=LnE6p5yn&.hv;7=ؽBdu8B#XBzu^[JeЌ>,:I GRk/< p]2gDN/e6f .snvfHKz[oxqzGEHG-7?6m^s3G`XȖҨko|6LbUfM5]6_=8W¤%/q7pIjRߪ9*F-EApZ!y+ɐ!8E vx < '!?=|0WV?qrySxF2}I)hH ?e!;|pZDX'Ί#]9!dNߝr0&KdPHW)#$Ɂ]?#ATѹ?#h%[𙒪}ϱ{g)IYKN"Y$HT&o6jㆣLT϶O{_j7|ϫ6Zv /u.HZ{BCX J?Nw]gf(L g{=~FT~ExSnVYez=3*v£ ⊃al6)ǔY9Pku{fU,}JW(nEMm\_7ԛ${|ښ'$?'qw T[6.[sE8>CV 0 mgm]ަk d$P;VH滮=Q5TY,syt*w] :;X`-hbakiXor\J7K6VysSQ>bNp 78[( z\Eڌk<ݴGj IvB!?מFb\^Ex.[e_ŏk`o{ d5I,مt3{fJ@ƢM7U"Ox\vSW%30s"6%EʌRG>8dh"QaIxrjJھSH4 ݓ)#;Ԧ]ksm&77ZWtTpͮs]5,S"墾ÛkMAXF4T.*tQnT,we/&ҙ,SAf u:y#-EbT@dy,Kޖtva9>R^j-H^8CC$tZ[mEE!:H_vkr_q)Od9!">>s,a,ha _ EmexWI NBC~2pk0JͲc.b>+^C)bjh ;I*, O䋡3*O;fg&qlf|]Y$EsE) 0jcRD6R.t{v$-Ǧ67\s;WD| 1:'LyrX^P*P%6Wa(I״Oq2^A9FB)U^ 1(قJ@HgdlUYHF$EMpQYT4@Wmؑ[kݞ>'8qΪl _bΩ$PN;E L3Hw_ 7vo_~'HBvw'rdN_{ܼ7Z!/oT/0HҲ !05<J v+5lퟡbb&C5B9[dn?ֿXQL#<'$S}-^(b6z9_t'r[0Tx&@oy;(QtO#;ʩH0 "ߝb(**i]c m9%31az덣*@T D* Tp\6?LeiZ~7apeom%@ή>c,{*XKY8Fl@DI_c;[/</ØO%P#Dr_ zyDrt[-5w-4a!xf th2m]Kc;sAt7y籊H'xԟj@sw(7=YqpME^S*Y:27zQA~ajOĜBbo\ki1:+]+g5n4M-4yߋbȧ Ic?Ul&N/=wx,:oࣜ}mD0UDvUK`y;ޔ Bt䳳;s "(-WAsÿpd…Fd">LBm.y(,iz*ktkQ]Y'vR!WYWP'vxp^0KSfYDj=uT4Pu }ax3sQ_ۆz"$MqG#{ V0_mt5 ^赏څg_ ^ :3x[#^RNi&} ?K6I։1뽶/k+O03eM_JF1y4 G7G,tʯǣ e[/cfIe9@}9:ץ9 .!w,s #Gbnl\=> UU@=k{fVAMlyx:CIƮ|Yj->/Ww~ehCԇ2_m-Sc׊nCC8-er'}ׯyfAK Q!&)&3O-A.&I ΕY+=cHO TaXu^72 &$l L.ܮS߻=C7}R(Ef6 ĂT0p$Ř_ dcE|Äv Cy佥MiwZ1ыazVBؽz8l.m{iW$~J.,IݾM 3׃&R?M"LQxPO6KiHIr<ɛZ'lot%ÕXk+קkOTd[qK@=TYؽVyUW{ԏo&Wp2 b\+aATyJY.nU0{4(lNJ7/{nNDN_n6$;0X!7ugPt#l|Kz3y4T'OtAY{';laė`L}eWA/CP7`$*ʸrەMz̮LgAVyz6Uf]Ei_ A)(FHnW%W}0>y}q5I\}[e7yk\*V7\4W0`sCm>t165x*ŊȿAixuԨvgʟ]ok] B@g ,9ܬ,3 _%oPxT_Z!>a:Y zkЙn _1? C~3$IdJ<:ݬm/o:ō,*'}مcus^R-N4-@jiX  ;TD/}/B։Yk^SMVtMʥD~98b-%jkbSeF9 oJ(pCQ)im{dO"6"r 6tFB<{ٻq;N6,QO4Y:$7V;ւ_6PHPbs o҆k覢bTP Qο:u n'CB!fOƐBmlZ(~SAg|.Ahhh{CB`#XXrEG2GY#@];V*)=kz2zZ<6(א[됩`lXz@ek| {z)ئXAcd(&fn.)/P16*ݟd߹羁`]ґQ;C| vigc={& S%GP0jn?]V`Rl,v}U&Z:{vibwIkeݘޤ_Q0p"la'kĝH:{ۯ?uqGIWUleP5ۻCx_C/-{0l傛,)/necAA}N t,ZSr-1U0Jai#3D:z::y.‹懝'm~evrH]$y2<*Ebr/,t|: މT lp:Yze20oډTq8j)4<|/,1 HOz@PWhlqe1PN Vc^fQ 'sL/ew)Q) ΰ9^#)\qׅP:P 0 ^!wXga~igXq5V$2V H̊}b82%(J%#iȕcRf˽Vx#-yzVB9[0r7T"cwkzް8woiZ|m+ RsM<_`K^w):<0%3i} nR>xfz&!(} 4tsoOOV {U`ی^tuxI䚊EuL f6;I?I0Hr3Jf].6raW嶰$`IwͿl;QEwol96$=UX$^F+ib7_tI{tQU?*|w6B:O~*زWUbgdo9?ۭyCc66keD-=AդTPhݨ8%GE&ww8&XR>G̿Mc]؁ y-04G\6FytN_||ͥnvfC~?R:#f}oCy<)"֨CQiRaP1 R?tK_i9!H^"koq1`kUcg7N @@ku#K54/I4$ogIrkSUS"ą2jG zs ngg M `M!1mfVS2Ojw۟u:$ 1/F%{Vmo#Vj>2`돚8~%- ;:wh"ԭaY*p1n7bDc/ ;oX'qB7ƥ-YBaikɀOm MYz[g_7knN͗\(p ur g0=ufW]ښc,/@D1䖑tGuu'PqG']Njf k`O`W "wW76{)6)В/U8#X~(9J^tl!+64k\7q(R+\E_WB+DaxtnЩv.cxK {Q]1+39 %p=Cm<zus“Omw3HnQM?mz;)HmJTw[{ei1чV0pW)B̫;L@(N~p=p^cz5t$yal {Cb2c^g~O(q'c$xX\ Xgxpv\dgsSM9Лd=ʓ˶-u0Rʐ)101ہd*&/5ݦ`K֦Ila{ W҉pŨjl*xp,t7_!{`vJpFD@0M8a5N=1pˊش6iƗq߇K!B;~%wm_BЍSRS$-تX癟(#&8}1'82abu]1B9[ Ku>(Qbh$J]\݁Lbg 0|@ 502ʿMO.@V~ۈ`4xjg2&rKhЭڻ=%Zu榊\1v~؃2Z#H2Z'ğ6ԵpÛɫLz=9=݊;~E`n^-Fԗ]~?W+H\Y$)&)AVJ_M|=YÿMȕ4A Cgm u!3|ȫFԺڴV3c8Pj̳OI!mb}tX߮4DŽPjA91u3莚?|h<ևX&inj]*ߔ6oGO,]SKgFgTu6?nRun //炓%BB'6ЋZxZdܺtK>XJo>/ =V4T!@5fNk!4Sf_3ȨushԄ'c:=4뀲O Oh ۮAxz~ xm_4U؞};9P,ȫ$0S> Ìd)"F%l~L[Wvn=n+e65+7*},0\ /Ke(a!7+lb(iù"1)%7/ nPܼ,{Hж. {fBۛ~ֻYyC@Vs:s2 0f["a /'(-}^_`ʓvSd#Cc`s o3A9OUV<pu ȽAvt؊pD*nNaRXM?^?RBt i=/-CZ*FFE󧔚g;X+3"ĸʛ, !~w03>;U/Qkg/ .+VQj6 EOAj|5K(WkLNҠ#fR wݘe?0U:0BlskFeMWAR.A3xͤ"ENB$h,U|x~筑k%`f5[ +2:,l;ѭ-&_2&gXB&4 pQfLt}; 65 FOHܫH̛yĵ a.0 9ᶑ9=*F ":HF'i6E*Le:-\÷a_x%%¤:UFqk%A V]LRGy(г|V];5!Z١ NyepEA ;z)U.][Dڑ"L1xBQ| k p=d*XFJH/ԉTGcbœ*Df@M"<ƒra#]s#ׂ-fE z4_O|)Z<#E,y@..%yNCDX=J5̢pخ +X՘qhAh4k(Y !ၧ) L[ Z*Vp={GTZ'F25ATTf[-A{#޵t$" r95$rrTR.&Pn7`pu;9Uwg={|( *gQV;;+TԱBHsDݪ:dM{Mm0'`Nƫ餮%yI~[%._|4E߯./GaX V%0X[2^o$ Ld-희Lg#6ݹ ħbY/og`TB|AUtiKY}i`=[y=hR ۠h(Lrp z9fJO U6ldU6d#X̪qg:Wϟ<1sBhs"BE_bz#m 9W>Y|WD+L2ޅb#0;U%Ŀ߯ P^׹iN5ѭRLnc$ߚP2G;^[́zgLH5n^snfL ,\k Fv/q۲fֿ^H̬Ny< zO;/ME _dđ̀"`b-ͤp׉!#`kq|geC7F֜ݭj]<Bp Ⱥf$jn"٩ V)3vG/rwZ5G/.+T+ H[[P4jPlTd؈V́ ;!#}P,̅tډ$_{ W@$ 釿3&&T^%0ijhId3N+LBG`M)> Ԅ`Vy͡dYZdmȉ^eIAeT'W4@^}JJ*, @pwV^%WĄch \E@@&Y䗥6؍ƕBTj)TP)+3YM4~y0ˁvF}E;xmzD'FtO+Џk$"7GPOv0FVMYjޏV$x䛗ojPkPRځqp8]Ѹ(d܋| /z*z/쪹o<ilZOog[P1?h`- jTᠹ*9E"#շ kC@7?J,> uEq(bLEĺ˺[ZڻPnhVP(˯46E==R+j f2Wۼׄ'b)3XFB6F}}Ұy*.|3'̣𸖠PB?w$'{'|2ƠwT"߷)D GrK~:Մ{s(ׁX%q8vf []>0-= Ex޵rMK߇{`+k&Dm̑*G&FtJzT U@` lSTԺ6?qXQSFDc<^RuaB@maD]yts#< D _\S}MNq9?x\H n`QIPa#09UG,~Н z+y7z|z3)]v#"?э'd\K?dס~NS]_tW`q$5.)\`d(c)oVZz;IT'~cqTLhA3W)̀ )<^MJY?p!}koQ- 6JcLߍNǚac1ew)\fo8l,s\24R$ dNyyҰX7>T8"K#7tA+tr?kzݼawp ,wrw|0âo{VUt Y{dî~uW  TN3ИOm^_]W%}Pek33\ye+ծNHW~) ר͉+hج?1 @T1y[+e=ރN̹xj٠L41xOȞt6fSGvH2z;0&%p 9PWtՄ.yumn>o\_@Ypk)i㉦BU;k,nvT< +x$s98-\bw8WF72e=@Q+v5#HS7Nf^#w_>.=٭Jw 5Vj1kP@ruAX5'`Pso2=v #dKtv,cVIq} 6^E.jo`z4dU4Jϩ%?OܖAvʂm|[<+)r{Xp%pXJVTs"m8 OyɰS,n]%ǾBXj3by$#=w3*,nޤd۰01$Q3T D*D=}N6 Bݙ+r^ ӭA+4o ՂXo7mL+.buQTy]4k3RɴY]F929\՚hmk=qXc; yfB1Mͦ9Imxz!F.6<ajIk7y?ZRۦh"ʹLgFӂ@ȿĸƴ(Z%ItbII>-?BMCBIv!t^p $.|%a=qj2&~uλ $%>_ƠO3EJHaOx^**'[D]P(ǜ񷟂RM?jZ^E -S9)dڋc֦L*AԒOa2_G鬦Wdz?f?ݟEUweQbs*`.">fz})ȦLmתW{s2t?Owl;2 =f2e𹒬ʊ$|܇ImIs,Cs: \nXy(ssTr3hDf=D}miwt*7ڤ҇%rnө=MݡqQuIkAtFcဎzVӟل%/3x$(ýnkoC3Im_ Q|iN5;f5@ =ސgp_I"~^0(؃Dn>a|?c1t?~yI',DӭrKЇ U@ ]VkJ5p=11ci `2ICڴQn,a{5ͪQ˹Xk]a )1#2C+_SedZmVbs:w/S^X MBٮA~\|xS&a,`F0p8"M]OHTx{#(0#M3ޥ [K]<rWN : z]KΞ$:"A<>={?NJUDպ6ӚC=>̉[۳ \d u&78p /b2/~>Z@^YEA탒r&-j8(BK|&h9¡Q}\"@AlB|< r)f,@)Wy)ɁlfR 'l+.@<(m.$Fő%.qݐv(UxW p2:ߢ@@3 DcIG/2]} qEF?- =9IaE5x7l97+19_ߦ2Ίy0rk%;ew޿TfޖnaM\gP̢oWNT^k]کK"lِOm-Z @ր*\yG=ջky$5xpRa#xz%R]PfNTWcJr)cVmeXS ($S~VH=_& 6|HE`Z6dd< 'EE( ˗0f`qCSӝuM)&%#D a@xdn,qhKVByh:f,[Y<)J+,FeX|1#N9[nJ݉jk?%Z*GӲ]@lATax[c&POW)-_1UYQH٣W sĄ(՜'ں S$g#NJ퉀e^ʏ ߘ\RK1]_Nu @oxI|+݄7<׬u5 37nԭQN??|/{[&ᤙ E)7''Io ju}Ae,4M Yt@8TEN#t819ۖә紳 xrK :w8Yj8#ٿ(6y^I/ʕ! ?s(HRX<~//GҫǙ"`;+Pwղ v_P+s#KW D_GUq0epzܼ]zɔtPc hQ`MX⨏-frc[Ylи~<[-ȡ;}'V?9niڧ%B"8p=I1r)xȤ2bFXR?{*ȁW}Ɋx$W<_BN&cRSe%^kd28aIzV]CYeߔdr ''is`|oחqE*y bb?t)mxYi\Px •=h`x? M46sJSy$j](C+nC6w8hU[Mp;X*Sku-<'Qh1@ΆF(=JʅCCmTJR%^QwٞN!`?jgbOSsd,?ymU[e/xr̿$QXo"Gyw' |;2ɅwE+MLѽǧI5ƥ v=N¡_!hXRi&Dĭ`O_D2 ^XdEP!j7q"{_@csy,4 4ѴPLEΐTx& }L2vԍL x>Kw2l<}(>*Ӽ yEIeu7{R%B#g xp!\I xbM8JY""`-D&j~l$Bn^^`fZ4aNbǖr#hXQx"=8/[qﱡ)=fBHjIMmE QZP'ۄ/bnQ%j ${]$r0k$5 6 !;kJf;f4ztVEHv% P% dxmerztcS;:w_LD&W*@KփQU$m[bg1Y+ccd\wkhEA1o ;,!8K/aJͶp8fc 8Eciq&;ya>+\vvR`(8nbQS،1J c%AMk}!ATtg7D=Te^Mɲ|KaB"%z`zZmfGSs7צktf?سs!˶.sA&[z!_en8 ̲ynϢp#߱ҕNT C| iEJGߔAP@#x1};4T0ע;V*k&t!\?=Q L#jR/$6wڪf׷1NX,Cۛ 8Y6 ۲=A.3xSsͨ>}&. [ j72O`i[Czo!M?t Ռ!D ހ5&C=xn*]qj}O:82ɨk:Kd0o例16h֛I_^]"+]ǚڄmqyb!}넰ը v4pW)oJt'PY0CPq zt<Qt{&O@wхp8LRG_2 :w.)zuL'<):6 I`_BS-ڔW-XRW摤f`eAN{^MjJòM2>_`WJy/·4IU]{wAT9Y1 Ł4Z=PYӴROK,DۧribS79d| )rڊpKrtTA&3AH%pFP<)#@U˨vU)E_ UU n YOVZc@)Y$FXc 撲G+8eRVv(AKສ&5|N>gXvx)irf\˒qbijj& mOw*!~8$kܩ  ճy$ l_(P},yyJ0sEH\:u_c$ =|UcSS;XfD k%i# ft(nzQ$tWA^)Y/ܸs}7YpI^Pc$`fANkv6lr~үUWiBW )"xw tЦ"YylV{D#+S"Q킝?T(-(&*_4dk._"o-O3aO7 _f_ (U1yfr%\N|%#C;Ug5gZMx3*J{^"`F SS t}vSkTβ-Rᛓ_ryXG T6B!dԤr0a2vԧώeB(XxggK$9!Q‰D#%ɲwcC0GFS􍙎: 3_ɇK{)RL'otd^J`3&8HU %/{p1 JM" 'u!&@}LFSaxW9=`l/V hݫ>Hʫ@umDF@fg@jԹ`gUFs/tlTG&xʙz,`^KεvDC*#V:>&crFMkr:T<ؖ;qUVzH'RRi5!B0Ĝ[5X̳N$/, hQF4qܣ <#lLd\(8쭹5>8?g $Taj8˽YB\"e$*"Ckh*- m:-үj0r-"҇D?]% _]yTA*;a>[@PCNQǔyIhBpJHJ2nҽb¸,ߦ.[?w?=:+7JÙn?9DPz߈O0a3^kqrqVGpYćsןrl٪>Zj HߞΌ0% xlfe},2iH^^{+{þLJMJ&qʪ, 8ܠ)h-yD:g>z3.x$"95<#ݝ+[|+2= FG򿂈6K=r!yc,;h?,y0$7Q!~㚴Y>Ò3daS/]d,,o޲FFGuGGt;4~מfc$F}bsCjYt,x2RAY_kI[{k*U( )N̐%&N) u2 #FhN`|chĻGs˭L\Y 0L]̩lRXg Ewwǫkܵ@?m,||fDHZo7ha2B&jcԬ;́M8\\MFC3 kZRZ)Ec ^\[ hSnc3G(G")< tÜg-+$m\ »bE^-gQH@&:~#6CC t`(d- ;B,LsЯ:E@Inj-K%o?ml_>nfa2 WWpub.Јύ״ļi|W+D[,Ő3c2An\x+!lk\wY[9faۼ[:9My;;]L۝XbhTցY"5r~)sby0[Ŝo'g0ɭA2|E|XDO[ MKv|J_ U+ePBT7ƛT'k+4H(< Ȝj`܉v_2/&)IW-v|㳜JYT\b"d-gAdk ;@8C?3giM"ofрkY"t4ƚ|$-,^t!?la$?s;nSgE3q?<>sv0]fMFߤx*K;*%FU>=Tbo!˺M8,EP7G?3h `YB ˒iAemӼ_P%I$VekƳDqL.9IG5ᖒ)To}R[D3E&erh+2|j]{bZW*ش-NSQc*_C6Ԟ\ZӳW \e_nMG%,%'6d@C\^j b3Bf %' n,fg4#S2CuM&~-@|QE̩zE*[APPnj+eOSbaepRE%ȸcx Y-`VK$Y|[ǁ.?+d+jvCJe6w@ xJv54# #`{DDhHU5h2}Q*PW;kx֪--W[/+7VvA֎'-yeS]@Ff ]l^0tl@2ȷ$ 1Z~D3,*f-8L{VBsg103ޙRˏ[ldL#itGh6Rջ8QȋǫEDFn[vf< Rbtl]M |a|!eN_0F]s82!R3SLp&pY`V0 R{-dr]!\)&Dpص1?ylul0> 0;(_XͶ DT1[i20a&aL\z8S ϐuh:X9{pB}+B r\>Lj5S.ŜH FznRHXWI~>a) _> . w;= y)f *kq[@x9}}jY9C#2gT`ί}tGҰ%jICaєjh|I&tQEe)<W#Oq$ 3t{m7W{Kօ(-WVUaY]Uyɛ'I\!6-KCAj޸h/l r4rEwGyhwdlB (fBeȞW[5Wģv @&c uWrQ1HX*AMwE!!H ZGjڀW^넃U< <[z9i;n9PŚGp n vq@M*T(+{\)˓7"ceȀ F5>KZ{^(R;nk1csx!,&kt`]2A׽Vmaob$T2nTyGFSəϨ/})Vyh}E6` (ZU P$ϲPq"CpwK(nar~ryCXa)ʕpzMTXb4h*{) j0˳w'+e#nj1v{kKEbM^. eM`W4>?-3>n=Y * .$6ˠF:em<9Ih=&=ɉݓ4Hޅ"fry!Wx)Зm GPDuD )V?)J=K3{ 3˗ڲҸwSH{-\luMycXf fܰ#vhna2XU٣ e#:]y1Ap:Fd%?ҔɄ=g _54Y'.ʙp9ґ^Ho#gۉ~Bl7fqb&į&9~enIDȉTK s5A]eLӥ;Xktx*~RK<(CdE9 ή$,]?r#hTo< * (~{qC0RmAa/*X~<{e6#rl _NRqڱlDJC3_ʕ:yH]5ޒ x{eVV^6LB&%qT"WlEFdEx; BiN;eWax6,o"H`͹eڋa+f,{3 dUYz](*Jx߆GyىXlpzB?X_t?-nn]öOtXNsn IY㸁]2|T`|h F] /Cp#Dx!V{J) ݜ]vۻ~BۓH M ١qˠmuFEsYIdJ3} $~+rUM_ yǓu42+Yνsv <1V~so V Q펍{0rkME"2 7P|7װv19I%rr4"W Bg*Vȥ`33F!رvK7Ki=_;3̶Y>}kvȋm C:%iYLa)@^٨2 ^hYؑ)ȧaf)K&ll3?:CHƨSv(yHFw0lQ ڌ(Pɉ#~(G -_!U4!oR~X^@p=Flطҋx5kZne&);fO%fFmR~˅^9fTOMw. NXpb_@٦~cTqtK}Ճ,cn<%AtbaɢA/y ?{g(=@_-T 0O9cx7}t\  FY5Cז6sеO9/QIfP>%hăuvUEa]V>>J0nvXLc Uf^^e 43W/!kȏew {Hku S(yV$P _>"ôlH.9*hwZ-cJsƎ)`J;qXCz/` Z|CdOO%Gyǜd@xݓh5~0jҪ \ _FT䊠 Y[bN}>T;j॓yʡy!aG=Dd(ZldGyQ>WZ( u?m3z|G|s |ht5=Zewo|KǤSn6X 2(i9FRQo3)Vy%MJdԜv[?nE9`Ê E}8ny6L>"*t9s %X?0L9I森@Qw V-3'Ad&{<=`E'jsT-(*zzIܴ\'QV22.{2%&︹p;ө'㧣LfIA:j<1A4)8оkbbx% LGlhevfvrAgq{T*֤Cn 9-s$6>д;_3yX. rC!'E`#wQ*.@u,ǟ%`&X`vF 6A` y._(t1&b+ Ig+rQ8]A'Vfl;BTOɋQ~7ݝW)G-hU*/jrgÄb3N߮辢L9%v ,v/*|Y ˎq>, a:! (<_*#MQ؊n<7k?~ɚqɆ) ֮{] %~tWI[ߕhB a%/Ւ<5L!v`#n&K:u v⢡]In8YE@ i(M/TAJE/(ֳ$''T-a&j.&ٗVBdan3sZNh։`m+E˶d*!H!5濵'jF{ IE^[A$K ;FA(LX(*_s?2vWӇ}9@ig8}sm}D~B5U:>`R@ա_U(}#~j;ѕ݋&SŐ|!е"쾔!  Xa]߾cDSjx~FN5.!\0 37\}fdjD}KvK [;ЕC~X{.|PT=sl ."֍ŽLXjkB.7!e+m9t=P^Ţɺe..}4:GD (fkmbfJR ~'4KL@vL9H;h2&"_D&BCԻpsgT⅄0A.첌"yVQENDž2Ñ?l "D :lsM/4U*+wT= 4PyD5݄Bn$cpq%MhML;OQu>{J-ČO<//sǓ3XY~N5 Hor ^2?2)T,g$h9dxAf_sQ"n^vQ3zRZs׬6ZvmBNjCprGHB^HD#{hf4!6Ԙր67%c@jg@;w~ aA5GujAz+Z29ckwy?z ~Cf#a x#)lt +\m-@y6-#у948la[ KC}"8sDjAcyuɴujnJCқۆ9<F,EǙ-nGs;%BD<ΦZh.2:hF"瀥I4 oGKg (˼ J|˜RWƴ(䇬e/BJi0 E\Cw~"+}LÊ=C1 @[#F0^פ0 B%t+jd>.{% 淼e*z9Rv_= GQ坱zgAtUwxExg# 8B#E' ؜[V7n}k`/ 1)Aˤ>ݯĎ^x eq+?7)䏈6)R4=J Ĩ+=HƢZ&.S., CljHQH@ AcHcҿI.Ü]R~>sw,,yLH.OKrfxU?xr1X'3tm! qr/I19o֨] Ơ(6S'e2i8 u&$F"tHn"uNgoxiט{0>_Vt8>HWPo1 U "i@jd/!9+Q?z$P&ϊ qfIMʀ11ENfl'e̐9< TzAT2b2)1,cq? V}>OC5 =#$jnYu8hӁ\n9w %Uga%Oby7Ca7uhXs-R 3}YIBu $oٵԣc7XW`lWΦ~E`]l{g9r?Il^ʱ[4I2}얹R \隘"oSGQbERk>y[hx FX:a:~ "mбnCGz|1]Ғ Ѹ2# 5.A&@l$-nt@j*S#4=@du)6BO=Nw `d\Ҝ=7u? +=(˥dV33h w׌2{ 2GQKv]Y~LYls1p9) e.CUԕU鸞R3[3 YIs1, é2fI IBCZ'ōMT,8 jXmoST ǿ qabiQ&#Cl6PGqPm6H6B>) Pk\&txgNiRbfq&沐(i=<(@&pT<7p=˧I\#"C+GK`՚VD&M!PnkZYw`3y48q UZUA.'/1R1!k!g5$4\v&`,qqj_8 OԬoPT1H9yE\eZ M@(yGJH0_ҴgZB?m*6 (+^T<cˍ5(n t6|7ȢSSԌ݇{Oiyj!Jbժ͛K}ᯒ^v=miR-W?UGuWi``+uG7蠉mZtUM1=V%;X"LyiWiy4&`' Dt@- `h=t6ǡK[,:c7+ uM\*zcˤӁ#]0lieK c ]=niJ"6=xfHxȆeMW_,8w wO=lqZKi4Vx?&t?{'LMJn}x; >08"SZ;TPv8هf1qlךk {8[6XT!E}#X?7E(uj!rSRAjzEQиw$V"75eJ)鈆P䤯"~ITֲj_%fmc!O~3iMe.2!N-^N(F4>Vr`ܠŒXNcHo@][qKm;VV\(AthԳ}>ă8wZO`SEcM (fp}G'QVrCAz'3: NV9sʍ#J&'WE)!=!P]PABjS_.ɼ)N羲˷*wxh70Eg t223AӾS냟s wa6G*^?UT##n]99\:Qpױre+$-pg-t!O{ *1/['lƳ@(sOQoYv&uqPjEGQs$(!6 VȔ4)x<|1F"UaSǏ_4kK>0W_,dɰdJ`0?T1Bȣr j!6tC4(ov,f[U+}S3vpO5{CN-:ҡ+D0!r+h,DŰm)2c=R.ĒU(ڎl,53 kbn쵂JD, ɧ,$z&6H`1qeRjx"7멑9:yqKi*q+&|'[_BSwڨ?7<3 7QjFN325pDi[=hH |۬Q=!M}>w^Zk}_AG-}>u=X(2AJ}݂u5\zQ~-nic PuAs;&+fhC̄N?jaoՠh_x&C*sGbT3r9iƋWv})ՙ\t`2!2Y{A`5Ұ(3[70#Z&qǹ$"Xp#b\Wq Sv2hŗA1KyY!X߶+"=Kh6s:s.?k}7CN8xI`‰%QE CչکFuvp'HC}^XƍI0Ss1Zԅ/<9:"Kles( fzc\ bRW :OҥAqU /To5`QGg4㗣ȗgXؐyA\!aT?j,B5 (NJȍo=%̍Ks- Э5n뽜:ex{ܑEݼWa"RĿ QfxI68NEal.~~c{A]lW;O&,?%`~pv+ajfL{z+WE\uHM)py-ud/XɌcqxq!ekHq F;vi"Q>f})V1NQND5-!w5Q,4<_Y%[J7H 㹢պUW]r0G-oq;Cl6Lj0#א5!"MW(k 憠+vD~̎՗({xE r&CXk$׌QΉEqWT`\>۽!1zp?,ڙV߫.`R(f#ժL|pd: XޠLx|ͷpogI~&'--e|b$V2Ig >aW/@ͫ4UQ>&,nc;O'zSnRf[ 8K<|!BBjis]?ӂwJ @u?jiVcAВ6TS Ӧ?1#] =,ҟC}F|MKqzQɅ;O^iK=] Rs4*& ~ l8|GEpnY} +.7RѧYyUȄpcgsɾ>/'g Js"AG&TvfxڊbJehQ)G_=*D3yPX/.DYh7!"B96R9~D9Ԭ9ɤֻ;XRy^?{7K >1oYJϦvKw̅|5,V\&.[XAtҫuUj`XsoIF? &AK\߅"5PRCٿ`q( d7/>#BU|Bh$qaވV!?hV%Beb  #1v5ha =ǃ0YY)ytt\߈k+JJvXz<{"QGC%QX[L12mu1(FU#%BѱTAMB!:o;¬eȧmԠ. @в336x[-kܡST}e$U%%Z5Wj͌P:-n8PdQcՑ´LsG ~ , >95ɛzq$&*4isYv C]>&lbM9,=t5'z0MkK( jRZlc&G Dd)Ft P"]IXum}t+HtVkOfÁ9Qn.ROl93!*5c(h:GwEW'?ki$f=xg L6Nt#"q|4c _SDV?#3( -oILg)glװ} |/$yvj&+ Y~ur?78N Y.$r.t85mkBiҮA[}CJ=;d?:9|gcۥks'-:)CtbH 'rm3:`%6n[29Mn@t.(N +ևzlliS\O`g!&-qEaTdfv M[qő]-L/ 5n=)؝lP>B:WY{$T6~'UæK$DTE{`R)Mq 秺þO1aoT82P?5@U0])p8RHjdyΜi2Z#g?(TroerN!*m*_vo_ZZ7UwlHgfIfc"K~ыDYG \YpBrO,!؞ x7>8^w4Gd)Gpexb lsUUx$ ?=o܎NEngC"@rLc=T;BܪtPLUCG#:ҮÏ +Nn\, *u]ə3j⚸ꥳ DǮqRH4Wb/ fh:1C@|hŦ W aR{xOӓƋmm2;HcNgYK(B"9 6KtNF`h:;t†k=z`b2D,-^'(EGGz ijs$Ul|xWC1A ;)aظQP٭ fwm, `3ۜ]b't{&ߕ-`[w _3i貍T zy46[Pj(JaNʱ./GpJRѲ{Dz1uC0~vn'!]uR\)Iύ)HYYL,eY'_kK8lN'NOgC,dq`[A\Z_345|tRo_r(|^Žf5IY|>(+ÿ 6XRLaPGy݉!pAm|qavN:މ+d"8;^[e؍'q<ȗ,%`7V^iAEzQR՝ v٘G-O Fɰ]M +U;o+T G3卉 SYHUØTȜ:v^_ro 73c-'/n7 䀰, ԣN*CEl9.( NfEA,aMsx*䚊 ()) c:'%j~*o~Cs*O~-Xw%0$(7Dݶ+c`@I;e!?@ʱzVs-ܫZI'km8oKpDpRg^IE;Q\"?$k45/lff'@/ \s5M%Dyd;hƍ&'k 0 I`XN |&י/@8Y0Yi86mD kzxhi^rE#oAu;IxexZ}WPn_O$+2;4Gب4)ث a{Pq c4MKh6)P*:*l3 Z}yE .A_p8(gm?%;3+9)S!Ed;+(0G/̩hMHxsYwb??n|RZ(:T\t6kn!eXnak =d7d@-% *S|b-32303gaySAz9 ^};? 0'_7کmOrwIЇ@qf8k`E L3ßI|@m9d̓M 9tYdFG>W$B%. г/djs^혐*TQsfwoCdwQ=Nk7ΊЕrx@i!?a@>VCBE {Ii mO0 @s3Kx(]€y9#yh9KkFBQ"U=#cl)spߥt jbxs)S PZ집|cD)1.+,-ۉ?SuGeW xȦ/ֻ%W]PsI3,ϧ~"3 ׂ@N]JI`ُ-X2k kpnBZ,#CY(g+`W c:ox7[iyKfH9Rّ3Ϫjp?1vUMIǛɂgWu{S05N:K.m;,Ng'qHhg$|:w=m%aYtƩ/oP'()9([?u+de+FfQEYh/dK7Su[X҅DS͍90%Fw68 ة$7w)oםwVbzJ9cM{o׎cfZ|a}tf:Gͬ #17{IUKB&".3wH㉧=c^ܳLB5G|f*PhXྴ?c)%*B'x™ 2.pc2,K#1MP:HmmB[ms E L4m>;'xsll0dm\#N3n夡o^Tdau-"rl>8+tBi_|ne| )WB10T]w{!@ P KkdcBxChp]lm🥰Ԏ`ڲزP] CHψLIS}A辔ˏ&U|h^Y:n.c`LPA{Ic'q$^hhrf9TA &9X(?-D&)*o"\;ď%sxZ˚ g m1-Fe_'&}x@ˡ. ! GcȰQ7wVbf Ǘ! JIS.HttvfB H%gTkˆ#4H6rj-c'2c GY'nnʆY$!Iۇ_F9<_)y-! ٮz\OJ;':EP=d4Mf۹9I ?0c}aN<+ /;1bcj ush:mYxvҽV $A&Tc}cWӊ>X<.Hlb m cs͂_*Ź3Qy) + [nPX_|fWS?ջ !vvrL8쓣VA=k@}!nmncT]jUcN CkqxqYhٟAaZMPǝ&7RkN+stm'5a5o"|(p7N]BUב>FpTmFYEn LߴΚ2=4W6ⓉbH7GY;u- ] ,Lh9Uo֣<]ˇK@{TN.QgWG4 XM6`eV|lSNMHxFc v FFf+0ym%x}5N͛ hU 'C=*dOuj.-!Jj੎)&cKZ 2^Ms QE\(x@~j Ǎ{$y_3"HnO5DKC K")WI&r3@cQpÔ>=ɁkZm*p2t!fL{M ӄ#,C1#i7Dzזy wCiyc}tHbA#wiz6ꉐe{炼Ιnn?acG٘ToM(G(s#EVAM7%Ȣ #׃˩X omZb3`GO1WX{"= ej-<&&L2"@Q>t!()pOP`xS`K˳vl>*cK䳖%Njp캭JBԜD~O.Jl1v@C5 Ȋe@uNbD9'EP *# yLֶUXW0 M [%t]I^ta)1 f*fdVa/oM1%myŋS\X嬻N`:9M<frQA{P5yds5,D(:%8 ]G8slƐP=3>OX[}r۴. vQ2>ceeU9"ZVZ fD+7?M'Ze{XHa8ɡ!߳c@V\G ziVnQcNn^9$0XHCXݦ\A@~EmRJooFbOt~o//{ͷQ"?>clܦ,y$?EeT䷟vY18ѵjCT#FJ;_'DEvF xTle7$IPH@r{pNƴfq6=aZYJPm۞l 'O|n@ k0Ncɷ ,%H=G YPռf5 eodGn yfr_cYtӢvFw]،i.:B!"~"gpj &d{^I5s߬8-)ty EQ_~¨u#P݃]WhmߵF=:m5]Jc{耝Qu%J=:?o~!;Ztk-tܭ_Ǻ#k %m$n:ESKQ@yI072D: hq5jZ2$(A6{6Jfnx$pf-AlU E S%i I.$0H*A"=nJ$k چ'^sjQ c>x49`}R8 $6k<f(f%8:kt7WYח$)8l :0SOɷs{1⮯cdp{ ui=OT*dGOhUō>WR4A'2G<%L%׵Oc$Œmռ8K-}Z#0s1띸y5l&Lnmſoﷷ#r=BMeG`cerqz0.B* s+m"YTˊK(sSb1 bkG!MD WѧS=azn ;* PC֘G׵@i@f}S q-U ܹ!oygrpBD;}/!$Yݰp>PM`jI/$̽ ?\UyJu"kZd}a`)Q'u} Ĺq*̂gH-[FE*R@x['=Gκ]h"Ђ.npـTlّ)ZٶXh[f#)H"B\|Jt/RF#óf`*t_&\j)n6zt+t [?IGuRqV ҌUIE;R"MX7iT rIQB 0JgR|2!FZV_6Jdpi +LWOvJi Q(4*:||XcO雁EZlg4uF rÛ%Axzݾo(>\0f~`0qQ{OxBXIMd E:&D "$Njp^SiT &/R4DXzb.㤪A}lh ;<eyl9F(4´reg:W@w66C/"5 ʯ6v_Ib׍/%Kc$q- o;2s1*i\o6}\ۍdWJ9ͳ =R桬!1]nvd\6&kWBSRǰ2HJ;ȣ݅BYW D)Ss opѹxL,@F^"KSHG2ISCIsUXŋ<5oD.9z^q=4k~e6 "c$.:w$%?ۓ^{zBYrc,-q|L`(fwfT7G"0] O)&2AS]P3 R'vINB2%I/?b %T5xzTi0_vl6fFXIn0/BUsK|yU4B趤ݪFՄY:_|Aq5Qg\jk*\1'%%$ع$7{>, `[o+,X *hSVX_+xTP)fbkV:S댓y9i1s:/_4{J2;p.$:枏1{UFpRR/2G#y)(XD%:xj^8w4qX4aF N3?Yʝ[m*%F!tf4n$SW3ꀒ7:,bjy  [rISe]#*~r-h :;%Cgo=95-EGt=C6vaTCr̞>9 {H0N 2G91rD:7?D>>?Q< -  HX4jlU5;ԿFk6CewI*}{ZZIЙ'9S_:ؒ~|oޤcMɪBL_+1d茋m [C!~% X7 ALRP}u[_5x< [}5A>˿NQqyKY#=Zc 'A #)\:sG,G'gjnYx<!M^*6;8tZ͘R 'Ύůqǩ&fٟ4e6u$ +B*XFxI=.&3~(*A}KR|> O-qd/Φ&ûؐKоR#9nC\὘MØe K&AnW%r]*B+q҃vKr,ď*H Z?DX/͏qF108a-㰳1XxC[MJz2~+5e|v|VȔgB RU33%S)+][ 9/# {o hb)E V@ sK2A lL?+?;XT ߀)]zzvMlVl]b#9LU` 1M?܎SeJv_h RC V(jMz$+MK:ے( ![Ƹ=1f<~kEьȡx^zA Xxّ[\}58 wf~͡+i+xdI̧T$JBX ](I<w7%2m5"oyuT,*EGx;E1 >$^D6N:VV._ ; foox8X4lM,@R?&hxh:XmMꑯgiA-wgo&毨[VA  ^/> #zX% xG7xɎǦpT QeYsp3:х}u͞}جjj)#*u͊.k}d$E\$ 9P=z(.¾lK [[_X> |]NUgV{ j~5xg돋|svtELy|b4t_6!1~BZ߯~Ad/l`\m&WI1A*#Za]"e39}l-Z/o̓ʪ4?gύdMusv=9Q61W>f5ܛ=KCB E'/ Sb nx2WA6FJpq}/Mw7+z Ԑ Ucy4H%6ӭ@}nth0a8^J%:_sB2bFhi}~LSL[%*\ilIyM]K㋱0L//%JFNz8tUU~ w.2 VՕ]FKW A#r34sP̢Jalz `kr a.^۹4 !iY`εZO’nէ` ˥Đ|uhYC.#(NW |T9\&Ԕ4xZ#^~eٲW5wckd`}9ׇ{,Mg HZ qFz2$/6CI6>@sk7>y&1Z& mxt`o⧰Czsﳧ[' ,yJΰՆ ?TwF+j:!_UR oʷL1HPhA44G[(y*)޹]{>35!>q" Pp8$cJb'B"@+n˃7X0=v@GЊDU#9ea;@BAu=@ HXaOUs>%,T0yN]R>KegWڗ, (Fo,>_|eD=nBc Ƃ*,@{WYcae|ʾZ#1)cP=8_"3KiXs!yK>HV쁞d_6<j<3yї4yoytD-:o%ԆDy +ƿfqٴW ZxpsL0F+Η)blMrx=SQm ]M-%T/Ǒ ~ VPlv)_"v~$y)>.dpIYo+jJ܏2Uz2\!= wxy|bes,stdRFK]=Ƣ]^1;OJ!A?&M9JJ)t_:exmoW ˪PDĜMt+PD rݕ*%*#1ƫXDAbCB/{ sy5H+=ycfS N1_~YG&: h%t2J?ZqyaEAm+lXKB⫞Tf:}Ο4}¯+G{ѻD2"^w$KSM; "[ rSRDrz42V8-MJa9-\Rcl@rkS;["K \HsN3[0H!D!9Cx V3]S^ˤ:IKcKe߶GUYV &)e]VwR co^!乊!{%3@Fηy#¹-c؁(9ۭ2:;yJo܁Ʃ( 6ÄέTOֲ9a?W7/o3E;ؠe8#Y`aῆaKU.YFikҩcզ5 uC֦ͩQ%.}J[LC[ύi3&ȓI*JU؄`ވJHv0ǕƼ^d`УM"·[Ԧv?qTۊm4Aah:C;N5蚎5O3053fOd̜c!4zk]d{\(CF ֍_@/Cӌ6P=R h)ݽpm1$Dpe0ԤD_|xo#=W.D̛҈"5Uf[T.斏Іui0lC4c4wWz·s?biVRUFYB8]U6*gc h n<509>Ϳ4p!XIoyi57^uEVrAni9 ?E1HZ׆)?5Bi|8ka! ٬LFqID𨅵Ӽ 7NJ #vTt:iuE)]eӦ nq~2L%YOk=i O!.FȹrhY 1YMG3wU4_2sj@}up褏 Fz+Z~0[YiZJ?4 &j^}e^+ J}'Mѣja?XnJgsevi҅Cc/)w^^}ʼkd1y>k9UᅝuB?:BռC}zLw-bWptsΫ$pZR"+'GTAwx,ݮ "RE<4S 6^g۩bYo9Oй3v /7<\(퇧r{.{YM!>q݄Y:-%jb x0H_,AM/e1pGzHk^L6sPw{"~iX"RZOp?EBB!p!tGAx$vosC?)0]b*@#*W iR#,^H_)?# mPP[oW,5 c5z: +kp_ME{VDLv\`?UmBd/SNljD >UQ}f"m{6ͷߣGXe{Јq695Ύ83cʞve琥! Me/O&F;)/t 7[d*%j(oM35*3I+Qb~n$$3#ɣ r7޶⫙{i|><- #TQթfZkNpc؉7kv!c0tѳg(qq:S\6B%,ٟJ(=΋⮦J#$M8x]<39 'Xc; $snS)| wxx!)v+A,?aR(x3MuD ?[SD!2nP E{rClj8%@`CZeMԴLB\:/Pﹾ~8!J*/ѥU:b?kK# `jD~ B 'c^}S-`U(Z#6ʲnPN~n$aEڞ,t C2?-NZ1*\͑Njkl,c ?1ez?K'Tv8~pĐm[2BGE%cJsZ]xֈĬ,H$*Ne_ZKF߰j,2TGW>!s ːkq|Ydi[ E z3]ie_x5u@d T5Z.JnYX;D{(~6fZHuHJ6Y*ibKT#W׀ʤh` 8`ngYi3sw/Gdkz?Xx{(T*VNu յ (4|xn892sq6qJ"g] R,qJN޺ .E먦D@ յR(J)O0S#3/dg߾5PmU8> g lQ$AђreyCnl5hIyd~`&LI |9BϬA1G u~A'$v$gDD QOc*U-|;ƹ (Jߟ 1Lչ& Uʛ] x u)Z"9wו30x'L5XQ ׺+(y(Mox7~:qga l;.[7n|(qKqO"ʴ[ ˫S40pH ׬\qW~! l2M}u-uٙ %\f YΥcv8]zK_}YUk,:J6$> ZA4ĥpI$wPKq*]&9=)a0 $YS2=6H"wUa=h滷gUf5vrC[{gI9,U5bW0 ݻ]k6 $x<zե(!79R'F湄Sd4.\0Y<ƴo&YvGDe69 yI eXXlv̵B4d\4ij0>f/S[WƸ2=&Qt&v|Rp)D£R;>`ULb\UT̈ ۡ&7K<`ڿڃjH݌I0f$EON%RmQL-ENq`k0JeòXS49@@!DwrElo2%)*Zz%ÛkA#"~C4)(mU@"/GZҦ4,?Յ*݆Wqc`Uɨ6Z~*`yk Jj30{PEI+.TG%9q l|==]k.Qoe6+;;i4 $G᝱4~*0&\9܋nv*[!9\]#F]J'ZL+Ip9MQo-# (224°h l@vgәI4" 5PF7-j9ȥWO<4FG+]ٹ/FݭȮ,Zaai'{:"7Ôvۘxl\t IGVg'.' ʺuEy*uVԑwLFrF ୔ƁVR}BNQy@ǁr,^|)#dL*~IS۳iU6|DMrcz;&ht=YҦ %"NK ϜjP ]oYOX"tX.,e}\GF4qFOA/Z؁we.KᥖJsΕJMYg*dD JZD>#݁I~D]o!c޸|חUې6L(3t, [IZbd+]r "R6TbǞe"q?g6EAcEF#e=!E^<41O!*-0ܩdԚ&{R;ʸJF/F<ÝcC#.2l^ !qƹ$ IKydu̽o|e3ب \h[ø0ZtAs^ 3WY||:Qw]`L﫢XٚˊMihQ>=e.[|"؅i7A}hm~-j v|WzjT#c,J;+o.hzk0o[>a~eϯ FKA.SB'RWcKu߷hZGA+#sXc bW ûEgDa;yv-xOm-ȚRں.W+Wk7Am*: eazoJVn`3%z٢+Oxag-+jQVZS(=Z-iбd.0  kF] r5;L!Yw7~/حxI϶tQL*+>ǐ2\VO iQT}m)bI숣ےYԀ-wWԧ?J}Uٖ #N d$WЍh*DFZB1I,0fKuvo=0\2. #5nbs_o73CFuuEB$y'j%Eэe&+Veǰ:GFLꀰ‰@IRаgB&19(-CޫM+@ ^)чn]tV\Hdjx7v!1ڭ47 `o?~;W:ڍXEHXRL9#Gy .lO9p^7 /MXg;e}H"Rǔf!//&ct-Dʍ6e BC)4s{&G 雇'xZg7> &kg=@2aG(q`d^H_;)?I>`=_t&<A_S=-*SBkZ[ CxUaS.!O%2jƗ -57:Ӟf}̟?%Yr5l0+KT"tT=أ)>:B7k2(^xjVbm,(UTd k%ݔGǃ#x|ZR~j-O;ّ֒W4vg7I?aǤJ󒍬$T3j=Nȣ"]/7Rso whvu4ca3sݠ @6l5M1I|_68).X.)ؿԊsoW uE ۻu'JXv x4Q)w$գ…'@Uh D68;-*JIrTmPn\_ץYSG ݿX0fH_BBî&TQ<2h=w1ӛynmnB^t,p4} ~dxQ6JS]+f T{*,sֆğq[٠ @z*;8<}K c,^65D p ."lt 7lAHĮſQMXWey4R*4М=`gqeRˤ5&g +>Ggxx-'F b6D:/?',;&RQ^Mk8qÕaGľ/TҧjMFKk̋np"< hQKpXteA!lψs a<" &;x'#ӝzrp^gυH Ah󌃶X>DS!g<#9 s^KPu]4|&MqaM//^Q0:Rns"19Ի4Ba--|0 jb N،Vzeʀ6O6|Y۪aЬweL3DeuAz{ ][i + J~ZTQYujp$KV3ŠX)L+d#BVaÃD9^de zlmH'0Xưrź_2"A3꽧̽9y `䬋TL58YP+}2M$&#Z.)s=c\0q76E6F HA *ڵM^ac=n$%9/@YX՟TE=v(Q1zT|,Sh,v*nңE]/m qAV\ ,_2gXK1} i p$K5b4MTQJ,BAYi~^ӍT($pnΈ "EoQF!(N4Zi%؁۫7Qdj({CHOf ~GgB,"[+ڌ83TѮ P8~E5 JCQ }֎1 e چرy&L ykX />E~8ҧ\N  ƴCiE}4ثM */,'QDߴ9'%{[ Pve10!6F Ҡ̴ǃySO*]NxXѾ3^"1q~uYjIaP݌$~1Eeݑxf <:RFT1HzpW(y<(, [Lq9kD lExD!xy6N$e:]1A\_v۞{zu$H5FZhPD<,+S|}.[]i+v5*=IZAfls2_a9;n#Q $^[ Tv cE\(3= s1V']c\tktD.?l?БZ\xw>T^=1nbvzUàw>+ 'nO=o&=&F$)5U"ЍԑHwa%qh%F/ҵ;+{8 AiKl59u)O?c计 Lkfj[ozsqH<)RޡPVͅN1.+ra_et oƨL}vG+07~)w6&^\b&>ˍG;lyo|5$]2HQhz7Ƕ'6(2lE;zNPnDzr{3Qer]*?;zhlCzcR g^w@RȐtp$ԍ:aS(6[ߪSQCLA靶aN ;'\fո"X; ^DLvkzw G +<rEr!UǏn+ֹt _QM#M<5]+c7z#fvZɩD8!b;sט6Ƿ,<1͐6EٓZhĠ*ٍ __ vk.wjBCLE o7e2ʟYE)D@FӖ-o}]-Σ1-p-ǰ{a!+\:7,Y-"C ZN{oޚ /`({1s9=B%H4&d(ǀ/*+_Oޅbe'PnUy;ܔhlYh?[OW\؃o`b }H[uEL?QbXϩq`^G%Qϊ0qu t:m;o>n-8/jb~׊#UuQY7h]Qb?quG"X]ό?Q@.hV./&zKژ\Z=~J}M;S@1Q ~ BoiǮ4IuG'/8W+hd]'|^7fD) 2T,`>QQyu3yF1PwvHT'OH+ r;-(5z.,ḜЈefZ:yǽ߀GPoǾgIVg$ x[aRGY((_76ď0jeې晴R ,$wEOiR!@)6V[bd|wd-`i6)+1ږQj_` 7GZ%iﰭ .dA 5mp58]_eK^CŽ-OJD`i?0Ot+]v+)|#q(:lH\ yrJ0 4xJ"OP1ZLj\ qU,&g^[#4s$ހR#RKHE)Lp/N4j_^\3/9*BF|-?bs". "( ^o)+k/% 6y>c- l8TQDB{ ˜+Bh+Bqi}2yGv 建w 9Ar=R (R Rt`Iľ LSXȞӹe7f8%B3, Ei3/d/1)JШg]-7 "`U֬A hB]3|"d\G q6Lͮ(sV@N|m!ƽKD= \VEv~P=<%Knݦ!ۨCf+::utVn6*iiCFj{B\i渻`#ݗZ#C_tJ l~T R4stDJPI..? LS~9E~,؝H,vx7U2icJfLb5W>UOn]>}Rioƪʫ9Wf>ͬPGՁU=MgyckʮEeze;N'9 *$/?# Ň}o4R}@5hlMK\L]j6foʪQmp@ፉ#DUnT LYQ7!lSǰhm\9=wؾm>|5O |N. `%=DBҴ_ѵp/52z| `hɁ33 CjJEC4L!Aq/ݢ2{8qc=h/ zy<8~<%[)%Gp3Vj ìdƚ@|FjI4dJaN?o<v =XFfGw*lA񩷲7[c ߴӨ:l70|l^mOa#-!Ӫkď,Ou'UAΝLkmt4ƵU#eH yǍv"МE*) dbkn{[Asq |)~w^OV68yH1r-DU3]k02$ dƚ!P:pRFߠ@~=YdkI),62q*< 9"P0?U~6RLtz.+,Vc3vf|V;-M{BɏY5dk=&w'#ֺd`4_釣̾x%0>ȿ2x!pYn <XBPFȐ/R=*T~O7sf6\I̜y1jco ǬW\/‡LG[M&u yBONd.ka45olJ=ên>c e ʰ².\!6(-⧮5QaIAfʫ؇31 C/:0G1ɇ.NtCKn.0yцgċJSTQG&n=IFܝPtC/wZܟZ]PkMJ!.E  3*-b9*~k<եPVlhqůsO]Zl}_CJq$>qo.ULaRM5V.LfaayJZ.f'L$-W9K/0>Xnҕ{V`ha[9\VV#e9Vuu *ޑ3$<%kBxɑ ɗ~e (lwl v2F* T bHAb0Z1HGd ,!}:]NFmmsFI@?K&-ΆF]7 0D\NIBvVI DɑZ9EUm] %PxER\;1 L^U[@'ze0mB]tժqB@2$T1z~lzK.hx|zo$'" N^9>HwNS|b=yK7Rxx]Y{QZ|񓷞  ,# m! m ꪫ`9eذNJd׹K2,qyޒ3:qk4A\&4j$qwB~Fy{u(z)*:TCB h%_CV(.#2-} xVl<[N^pa}'FLgqp#WW|qb|_'z"ڶEELdK~XyD-F;IڭB,WN9pUGPk kx}8ո<ztLsԂyo>"jY0w-U aFe>?M nhOѕsǗ4ul-, bU;g*:gd;g*a1bM4ZU}-gZyGf-KL*[dd&_jZW8[V.οCh~?yE(0 YFczرt>g7Rm3Uyᗔ"B^خzң@3@ia\т}5 | ;7 \'#X>o<;QjύNel6R0( "hAAyg[^.FSrT5!$@(FiBj^Z|YWճHIޤ=o=[|$ z[o'?d_7 LAK#yVA-X/&r7=3jt;R\Z^ Ӷ+*Oe;DQqMM8^3b0)!:qz̷*{Xj=hһL<%٣X| Mrgbs ]iew:dBMx>\@|8Hn:܀;&1!"4Ax7/=x$|J9'Q2\ gJgW4$lt"'&=#9ɏ,4[m@_\PD@bBxDskԾ]ivT̓}Xf}>q (5 H{M.۹1+j/c,L.3ҵ'ftd@F-"E4HK ݧRF')X^|aZN.U$RӘOhCsjڛ׾z;]BmYd|{ꋷ-pLd8x *;=`s?LKHb:` `Ɇ`@x6 Tµ5q ޓa1Ò)(<胧G Eш_@{|/ۆd0Ko#Z;V! kʣ=ьeg[R_8j 4N\򭡰*:53nx ktI8OtZ ٮ3Yd].JPrl[w"g0wЯvG#uuA[$_%!& kœcrU*Pυ>Cc-zBCQvѼK8X̓~nõg*wJ, Nop] qdmn\.f-P6aV%*dW3F3/qc4fVT0IΎ5I0x>f|Xk}a17g%RBNSN + 3 xnp٧$Zp s;VW&YDc?g'x&g9]R' I]0QCg'B:=bت5Bˁ܂_|Χyt1,|.;2t1HZ?p-Ǟz-c/+P{!JUn:͹@K o4E_'BT /ɇ-)0ᄊg}MTꏖ̮1H)℅YS3J"iwI cS8ЕLe}~:Cwc3S<%> ioyҍg,"E;^ePy<}.0) 6.˚25GҷF#~Z$E@Z9_9q6pqL*:myيGj$)₰Ĵ0y@\>J֥4}Qv1E P* /zwiԲWc {Qr{y6{Q`o QxF,[ddA+,mtv&&\2ǒd?_>0͵ee,O. ɫթ_P|W(ժ#.M~)zZ *1"UQn#] ٖcj[u`@!9vtJ򛌞C K{Ω[\P""ԛ-)L6C^BU +O;#SO8¬O(FFZytRs_)d_eq5vAKJhJ Y'4C/Ⱦ^(a80FcOs 9g P7Q,R<\g<^?NL}0sרNQ75am<7-/aX_*@wSl[)}]2`ovQ2fpZ=t!pLa肪 O2i=YFX,]=JK$Rqȭ_rȍB& 8|S@m6{b|y NؖORwbAV$JtbR^\p-5ϵ;is-e% ߐfJk>x8Z/'Nsp4Y7h8Irx >IԤ00EDSM$Qntefc8J3rznSBƏ!b1`ItGd56  >bX/ZAQ\P U/tv)w'S=isZ7jFAŢ.igCn qgk*G#hf>Qs5 Sakmx"}wֺN5R*d)$~7C&ptkc.b z^^]͓M mocv9kCy0a51AWT*|{'@}iEGE |c.-iLpLd3åShN;@y`)7@k5 9:ݪ'-cnJ׼pv60D2UPgݧ k_c@:sC#4VKS{ >&•5ͣ*jv8z/In1t2DÊQ;r3EьLC@n-|\x@;8>,uzG԰F_B+!DS>%Y+32BgҪv| z(zǷ<yZjEFW}jagBPK^׀8j#hg6 xiɻ1(VsjV`L,NLocː k#h J_49}pLgd ҡ= E,˅K?|rv{d U}](XʣxiPׄ:hR`&He,#&xvMwGC7D <}J21zǿAg-IY Te;ɋxQDooVҮ4w?J|~+g?ye;Vn綱2e,.%Ė`7va0S:As%}y)crz&"O0VöNlzYԬ'VeHu* p TiTx!HyH%qlX)2\g1mŘ^yo!p)t엸= _ ^D,mEK3 G4͌13X״+\R!Y*'u s_痼.!Y>F3 E>4c-4Y·:gRGuxo\JLHD#LV@1˶ ńJEd.ac§&e3s ?CBUixL\wQF!XGu ,1&A&HnN&S-n& @Vx;$ķ=)r6qYU!PavǝXF?ێ4VE?nz#|%ĔpS7aסq0}G Ҩ]n}NT(Gyn=LPgf'|N( e&,[#Yg/Y6L1Efw,$ /qMU&~XL>;]0Y*!PM͢{iC 6(!%̦7c@R_Xϣ}.MI͋ Yb˰P?7V;:7 ˒{ ghMЃc}ecb2fZnd8vxPq[)fFӚ\X(U|Ĩn'9u/)JZT)i`}(EY^>&U/q@۽ Hx|̶T/$9׸>."2h7N-;)ӽ E}p)V@җiM0sG GT=Ƚ8s.;uLt3bXYwxa8R9.='X[U bŪ?ν<6 joٍ]4A6kTc)_i> 66+VSF7ӄy^-衄719nYGD~:*7yyH(+;{2s!(>\W0%KnyYmvQyOJy# N{v?Eo#w +Z CIvŕ,2p&ZKUԨdwqyZm:z:cbVSkm$ܡ趐 &Bڬ'#$TK3IؤWlF) ~}SϾn Y4 sq%J(Uk uJa)Ã0 q.ͽ%"+k@y}<w#_L^9p7Q6hڲ/lg3\Fxg̈́_utY>n+j~&'z"5 9. 5KCK WߴC1 +M<: υ̯-0t"ɗ61t99]՗ƳʘzЕ:_F<Dm'Ͽɻȱ1Df.OS׻*q_;+/)dx /vH,>7D>`C~G<{ƶ&I|U>޷#,g_^w9C 4zDmR~Mu<ɱKq(Z$pBe):VU^]1ΙP`*ni`[pOsJf 0^޻dlfcēN97) g+̻皕#2=N9O(^u/q QuF/TAUW_KgX4_@ZǮdb\dդvL (]LJ'~yzUCZDOLYl.m v+hIhfڪx*QCTDU{:bWN0$ *B>]ruvm~ T48O8d!Bʽb)ٝFFTF옲a q7mfyirxTQgqAL]STsԖVūc"ݤXm{q :FN F'uZ"C ʈ̳2JKԷRă72EakW6яh&WZxs D͢rvn cf)=g;8 )lO}{ou"PÕΔ6`S1^{|~F駽:pkۊ)X+1eq1Uasw 4`aLBYt.BgY5Nf! 2M9n39M"Rq$2r.Z2xi+,&{2fqZm6nl{5D<#^X?em;Gӧ #ȵ5]Wg FkP9&gq>nevεU2Zn80 M \n6!rMbP9+{v=+d~8CiHh4Y& IX@Rgb}PH/`cGF5/+6R|yuݥ ]#]aN 3F)UWӄ&'!P x~)*f֕do dbt~ʾS/qDŽ5c-3rsɯW8hK'`lTEabq{y!P=qTKEWM%ӎDtY``3t)Hq(G۴X SqrҶU7`Ё76yءF6c89Škk)\tfBY"YH*V3 BinBdq.Y ikZqkEIBq2ckq٩.rˬ;D+^1cTh haPR/™Dv~o\ڵb _H9iBbp>-pQL%垛o/!ݬ (\ ﱫGpHh [n&; L3OY=^,BOsePl}VyÖNxB||ʉ򂝉Igԕb T&`^&ޗ#"C&=,3FLH y3E_jt]H5p&aHķePkd҃uCu.E").:2\B4~qDJӸ[4Ljom%H9?efW ߍ}E YvH4Ijg(`^+ |; N}ĕqksЭ /T-(].4'Y#ߟ]uvvEFQ{&Ur+uG>/]0h^fT.@c+paFk6Ȳ[ԁ7%9DpJ3R4!N)h93)L P~b{rxv'1 n||J~x;Wpy@":~[BK`lv7Ð˄7=.:bcnSV=Ũ=;λ%.+H̎L>y7FC]UPc=/=}r'ުdKKz=߂|>V`Lmt`*T V̭k!~ oW䷗O0kUhBLbZ7jBw d|7I w#2/t0_^0& '7_i.|.SEߪJ]NA"7_A^iZ\2w`; *qžwE-&[l.C#*^ON vxa|F瞀`r|)A#$V!WzMu] ,0Cco@*#'ҘY;ߪ ";ۏHYѭLG4֊"75U*vTEj"L 4M uL,dP^ *Z®=*0w`*nTmQXO Ȃ]qZP:|i\V=mא_Xhs=,7 R+8++Q{Z%j e?ݧێxkq5nLwT%ٴG7a&FBhA C*ەlhd/W^ z{}nΪ̗NT0-UזmOd/#L F&fHAp$iݯ_eZ1clۧcKhtDwڲ%t>zG^BO,⵩tLtIrsz̬ 2l3a%Ki'ĮZ)HWےSo\fddcn[j2?v\k3ivu*1-(c9 ÿD{PYt_S7#{S4́ }"s 6"$fǍ([tO ]JxE ^XK/ gtKq@2@%_ē n3!C C #YpjE rBq7fE } A\v)~Fe 杒u&x+g0R!Twz#׭J-[4ϳe^ (MG2Ӑ_@R|oĩ*8ε:c'=-%5p`SIN"x%dxq&1ȢhX%mog0z )c4[ZFDP Ha8e_7zPP9M=b5Xe#--.C4#8RUm ;VqǽX^vTJ];]iL&x'5񨖹b 2;hW'ڝFؖY_e?RL+L@| G#]1ETL8; N}M=eÔzC=(Z@Bn-js*GZZvMw@v2 :!TjL{ʌCVG';}pE k|^2Nu;P5',^i]`J_NۀY6dKD|ZEPS\nCW#յmzZ_MpܠSeh% /g\f9#QovNllec}XnVc0D7!6J5tPC8t A׾&b0A5M6dM5C~MA`R|cF0Z?E`:=bO#FhpůJ\[U>#,tHQԲʋ)8A39f^?{dBNT**e5;NwUGZ 2{g,3pkGa`ĬUsV6kSx6z&ꈷ1,hnU-ƂL]EA0i%<˝)%?HhɌ071D)h9Ǻ[juW}1=s;ĴqrJyPXCS,aŜn]&:NV **pMH/\h_"8j3 1IMQNG}Bb"Ja-Fȩ*VwIK$89G^FٌBs^+P(8mh<-i݀D{Y{i홭EatmCD Z{7R h7 Gf:/T>,rxK*5ڜ] g]YWLj|Ò gb;eYzIGOLJwPGso xv| | Y$v$BC5 \"lmY/kS.9 ]lUkNՌ~Z[hT[;}\t$dhc6giN}y)L)JF Ty%Fjt 7l!-xIJNbN\\3#{dڞxy6|OdeU~m!]/Kyb̈́O^o~b޹ZaSK]5B5$EHBeHJQ,vqfTw]kĩU%y) Koj,- Opgӡʬ.ܰ*2uC5 34d̹m2O^Kkآu}KuzB7qDnj kP/&mOR N?g6jz9T)U]B E.hmߨ#i3#zW gr0˱R9'Jɖl"rn 1Z@T!AMw[5nb g5?@V{&fÓ&(\x29mz\䌈a?Z\K< }sW5?SY]ށt+Q*dΣu Οn43ʫ;|$SL%'") /ch`v6 .25z~¡4/Va9ASOeR2xIx ́ܲjSI))W%%2+7 EoqpqqV5R.Nџu`:RݜaBD2LHlc 5FPE>YBtlɔRfe2q8.p?tǍyDɆ_l+ji ɝ.&= X/0")XxTxp W5lƠ!G43>KU1#u>40rz ~SC3ݪ$4mL.t:,ɁD bO}m~s 7"-M.Ui]}ims˖svK,5:"Z+~S]ɇ$Y%$(S(O B+^N7Ff+B4Gφt]aKu,lıU!LF\w^ߺIY.ưZqM$1޻C,B_i͐6 AI4"cD6?PE ieJKHr_kt{A&g~v%j*.0#o!X?mh' :Г~"ثA$T`!SJlCA[Jw8!K\aݷ&/1Dz-"-4DZM7 {W 6j>q\L˩a[%ղaﬗqĝeB!Gbx?UoT4H'4-o-.LҴ[ {sSv:7/1"/;3.i;f-F :5I+/*E0\5Ў^ʄRw E*dh{S_PnB \Ek&e\o`Bo:v~כ6v6;nifW v\I7z R֎*35yxЁ꒗_D$`5[-n)јr \>0;MS E.1.\ݔ.)2&LJ3>eB^Svc Kj..PA^opU\e J{9K J5hct]Nr(4 ,_:aqQ*ohNrtHv fٕjFUN% r--vSyl! )SI@& 4釾uf;u8 A-g$!Eq̅6X'vYlmW֢rN 'h隫o#‡=;(oժ7=jR!^XZdvR OnUgR \U¡rpaG@\uAk2B.dV qwKGJfqR#YP6&4!hQ!ܾ <%^1)w|AI=`Չi+'< i.S}EQeWʠUI 0n& "E")&ss&P&d~te"_Uqe1N<;Zo*W5D:R q9䈌[@yU%0$E}i0@3ǂAzHt\7e|g^g`yV:>hҏcCAwq o;v l(G}ɶcV z'l dpе?Ӝdҍ؊\v g͎~. EֹU+FE3l4`j)jTtoU8Y-#FȞ`eN+)0AL_]EtbsLRai(ϏVNSZ$B f$mB{]+6~{s3m=oѵXÓ S Kn-.0M[QaeWOF:(D qŤ)+ɍ%C<uk*ʙ%$m:pڋmѐAԐ6on>Z8AI : Qzui9יdly;d=V5yrzz/yCYƊfcsщ|#`] qTATJu+?](dQ14?4%.e{֕,YE!&X.@N:!^:FW{:eNLg׍K<(BͲe^Ae%.iMz\ٵ)iPQpUqI>_cg*5̴LG^m[xFNҨ![ʀN r9qoϱ FCI."𠜪,LzUW-kևLO{RT'4xC|Ό6t I mp߇*K( g t,MVC"VSb31f>ؼ=$Aug]⨲= "0nf$aoz*5Yn W?M9+W[LtDXIٱFu 'mu~qCɧjd Q֚Π!PZ] a94'Y QKP㺹4!WR?a,%̖Usrl芌ljL.TJ!wNT/vWx 0$jdr\)UA~GVlT#R7ZPQŽFSQ-ACvVV^BAa~}ɳaewAv%'KDf { og/(rb[O}R}!!awʻN@)NxO!l-]'MqIi ,/,Nԕ--oX{[u9~wc֩-YL0]RsPN+"o4L$.̴pHew/I=vO I gJ/&s$@֐-?(#{k$MA,yc2*˦A"LۍqCmb7\F19 8t?\NQ-?zsBX:[x7Ƭo?K9ԑ0$:lZan8+w q?tYu|aa( #rОe5:,:gǮ6O.Tq0l#;TF#\Biـld6x%$R4X. (j-NRY]8U-'My˿ҖdDUE eG}} \|8o~;{@ٍ\{4K7jH6wʘǂ<4q@蛌9uCی݊w^w:ǀ.ÊgwuZjŨ9UhxkY6` ۭX%?D"iQЏTk' SNրa%\ւ1 `â qҖOU{R08:"|[V**GNƒ7:qO|::5/9R-ksL<Őp,3KƎ`tzoDDo,/u)XPHC7tc-n2^8v@I$kv13ڊ^Tp]jMbxSB}-yQ,`;pkb9 vJv稖ŐC5HH! ;KOjs Ns8.%eeZ?D0M>[╎+1 zGƪw@~Ove"u֯'PBLU#rh{ eiY63t\ ~:n흎 RS.FXD(BimV}˰2\r}TԽM'L`L-qpKR^rEB:GFXs{A,Y<*{ƋQT*M;YK~&):q=jN ίly潡J+u\tUl_Xގ׳OYXM)J<ܓ- *  yJnE@[/q,|<׾=v"fEHkvac0Y'lx>qFk w[ڸZD94,˃=*!q RHixZi@D'U]a~Q73yj}mqjPawX{9OGo=rJ?_܊n4i$oк( RAPHI>NҺfnw-y௎|UHdDѭq A' V,rh gs{hI#7:Y%6. 洰V7/L€sj}M^z2W [NQb5K~a5hmG9WOx ϚdKV@u-_ w:֜Db=kD p;ٲ8~)2p p3%|iɲ6ž"kdמih<6/8HI=&JݢEa ^>K9A>nQCJSu%&j5r;irP0ee$٣.FBL!Z8AF_ד&"OF + |QDr?WPt_SL CLw7{ T%mUw=V "j9Y p<6j>J#4Z{ tl uv!~q(u$[q7HJB t8@jxn9}b&/sb S66UR ,:Ci- MΙ&z|ABn (w j9´?RQ)=7G%V*.E$o?cՊH7VWGC}^跹L2:] fCUANR8W8 9Hd|#Z*[˧89O9c+2<ەrYM!M Jy^MDm:[Em ZW !rktw 2մ)NI66Ϯ < [Y0])_1{"NsÃ1%".;4Pr+ 9_" ݟq)FNF`;?xmTYL|q |+me+דE@LFVKI'N)˦ĵH)L3)1ԫVu3 d"{R/ÿg I6%Uc .*Q_5=ôx)HjӐR,*Cؼ*_0/Xhۇ OL_Z"gKtLmG: ;PO|h]"- hyrHL?n*FS^q<9lJx=b}#,1 |uf˒s ie5mωaiDx Q/^G/:Jo/5VUkv:Ǵ)pR3)T yX|,<3tAnADŽ ",%5z?w'̞E!piì_GmB󔱊@t.Dw;^6:6gQ=uOڋ'Qo5 B2K&߈iB[*i_-46lZ=ɠq:h?%@‹ FWj5;Sp{<| #U Km@TQԂUPW,]9J(Q/$t,n?`Dk~'IЫdI3!0iS JhwfϚND8|!wk'ܥDhH0^^rhLEJ+z2DŠW?Fg:oIiܷQ-Y45B d >1g(5OMw>gpr P"`-#\V@?;Z=kޙ vw݆h|/9QqdbŁ_j쯐pNlVYr~m$0x}?%KBL[Ѓ%S^˨uΉ72x&! A+/nʅDvruhyAdj!Fmtc< #ʼX2T\!N0VU RA|d:w)e{N.T`{;m#Ivc ]+ȰOLuEuW  &)U%,pAJ##/`J? VkIieTYR0`9u:E&Csw.ZfGj\7U04-`D]ln=Mf Μ!nÉ#U u %3; DXXM}#Qj{$6) 2~EC/hjf=s+2 uڙjdgŦ⯢~XjEJsMʛvkv|YD <ӓ"35PCrsi0׏ȥ>g^͍.d\4ԾmΞ2#]6V2 jBe&̐Qu]&U'o622^$D[-va 'r9Ėb5<ɾ)dS{B - ܯ5] _UL=Ǵ DO$35?`ISZ!5 -]V[ O3XShFBD k(ib0RưS@M 42ah;+8s] $hy;[_OKg*\ ׿+#:MQٙ%\hט΂:꽾M:+3wx}VK.L,Ct_l*u7'BHO3Xf ̪|gH?ȵפx6*^ӖU6dGdj7 Ek~9ʉZ{SXJ g>J:u;woFM/+fo N\JoﰼK˂%'2;i CH U3_ץ-n2g7h hBF+ ?k7aΔQ#wzx;ӧTZ^_آZ%nJ='d R!)DxZX7R|gv혃etHHʀ_0i AvHjoz H;&@FO|N%=RӮ$܆YGpWr8vm8 < BI)k]+H箥8avP? j@yvi{-۠cvb)0Vj$}00Φ֛%UӢ-xՅ1yldBvoIjx\^N_Ύ7uue_t"z/QR /1OMzK?AIu >ս\N weApſDr揧-$R,<Ǹ8F+mT2V)U 'GOiFc 7~s$vl~vb>֮ O2( c,X􏗒N?FE\Q w~X?Eo2,rA4[+RjgU1]O6xS6T&ϾIv i^[f^2S+ЮQzws @4϶l ]IYZ dJRϜ$y6'¹.ef>PgPSo&  J_҈K6c c ?~T"gkN;y9 F)T:e1[>i>:o=|PGs臭־sr5 )8{Shw[ڢ% =,6`9B6B[>c6\ }l5/XWEdX[7_Wڵ6vǥܺiz z;FCHAk v~L~F`WmqcP/M#{pd-SS+]RRG;1}mLmwߓe@CZޝ}KKwLK,!#s܃gC տ-gl!rc(nY(P32QMA㍘G(rN 6't [f1 / tKr.'| eCP:o}n3Ezy`䨴aH|5dƮA~8 rf A 5];:jRԥ+^uJNZ| ;}@yDK& U5͙/oTAՍL ޿`}=d0TF{FIǐfYd3JBRaz>1{$49PB5Փ&C38uu.f@LMKq뻅M̅@9~^&>S68s!\qÁEG0yQUس[MAP D=!_Y]DPMej @ϱjfme% Oxlw$ra{|U)|qGwTM-(6.zd19WN+) Kᡔ X)Zf8_j3!%57:wQdS! oR[ۯ9:GdUp儝Y'õ*\X 䨴!qom7}Bɛ0ȉV;=~ϨRkF:9j6q6-cW|dM< ] p(tZүgUޡͣRHx` F`ko"㙄7͓T*:NƯn?M{2&3_glÎioF'?^4هڿbnգwt񉧲b7/%eW";( +n['ɖ%버>QWK9 (^`˲ >f_a-**g9?w+!߬QI} AwVH5sd `rAl0nQDJuEgLYl^Gѐ`m4hQOʶ}@V~h#ag2m@8,wI =~;4SU)}5}ͥBzz Kfsrm)n!A"-?;:3.,_x_4KxriO'+Rck#=HtŽv)ϑ%+Vn=izu=HVΓUNlz-`6fW&0\4ާxsd2 D28s&-R'~۲,Sril7vc}Uѻφ(G1yCgOLr`ؒ蚦Kgs"S8uwuwQ)1_yLF,rYIF 'f: 68 <)_DM  O r(7<塶c)6Ok{,0UZҍigO. 9z\i^׎v0/Xr"A@"vM0<\ 3K9,Wɶ'>(M8 x:X aE됅Y8{⭴? ڹ1;Lw@>vO>F#b'|p~'|Hh(Oqq ԓ!ߐuo&~7̀eQp~ĻhSvwxAq:?F7%Iu9ٮ;qQl,hA^.z/+VO6AH6ƨyLu^ڂAS Ӯ6e4jqf11M ҵ4TdqHB&Pu>[A`Bߐ:UC:̩OU;;ae%v8E,OA4HƴQdӐk\Ic>$? CSS!ԵR9h%h֣4Y{Nf_9/F̮6;{".q{`\6{:@B*JDov6k"<_99z[^=*%q&Bj1"C޸_ $(+ %dn 9_\JW\r[.P^U|@(Ï8DW< GdwNR=FX' l5A>7<.PLQh5Xnf׫+s~ e |c=We1x;Z6 ]gh+(!(?LFY7qc_KQCVlm^r7&(\<~&=@5a{FlB-x@/ʓT_N./^tD&˘Pϊ h3m%$URdeP9(Dž[W ^h]'Nߙ3591b*,}qO5g3gVqy"Ixtj88 F/"_&PNY/FD>: >ҏ XY4iWDSDeX\p憑SI$M }2J]iB#<1 "JD:F#TV'4[r\V%JBBG^=H9$C9={l(U U]GZPZ%#v8uޝMv'+o}Afܽ u m7AX6lf5S̃q3K#^dݧYX[BqKZB`Pa%~g:6\`8%9gkp}cC \>I7ۨZ5csh Qn0ڭï Zdmԟ{G!UM䙶{VUCaDi IĀ C.ta%?Ȱܕޚt~羷3+/mjt6MDw՜AVRd~R!`]WgzykNx{@7_S89b"=IO"$x?&DjshHw^|!Qj.(ƒ!#obQxxUp}*wxs] Xٲ9O2ٛs^m!nȲʜɎD=,!e-˽^<ܥ7Q!S`(3>n} \ ٟgH WV9(ă\ֳ!F!T|{S "k@jWRhxΗqqW;J5`w7\|T⎜s=s|} X0IƉMXȥysE1ӠHa|R}Y4 v;+e#rAg&w{}եT< {(((IwgDG3kW?6;]T{Mä'qx˒ yD bJ9X#uRsTB?x@how(T¢ Qd76 usDk/oEy'wnC=0b5 ^AHlZ 2}M5= t)D7%4r=qs׀<ˉ}FGpo5 $1w\w\\l/EE$I71wNd{vQO;#{\/:d J"עWS?l`Hs7ʂTm.h{a(x1F.leٕe侱{8}'&nSU"Un`)VEt-A 9$ڶo>[ә"+ C&XI9 ZL5A %tIs5;[J 2.Syfo}WKǻ9!Ϭd1I9f:JB4 U*> MPUݫ*hwFFpT-;*=` 4`_H+.ɽ<0hđu i;鵾vVjO\m+I[](X.0[pź&oYH\7NuR=}9z 傫Gjd'|7 Y:sSu$ N }se_vmdF*C`_O`r0>UO}Ic=hM J܀?hGW~D%T)Z`0_p-ËpXz o> ̨ Lou @gZ3lXmm% d)[5u8*kpSSNBTGb -=& 6@GmYǤ`逻NSW3}咏p $w>P= cxz.69Cwuh\hH˘(wGF6] /"~5fmrdg:HLdg_ 3(UKC}ogUo,j/P r]O \mi ~$mPԥiUƇwR4i "*+U{7@8ת.2 .{f;EzGKԙLmgP%U;<4<=cI֪ZfȆ  xDZᐏLWaz Er'mͣ_36-MBvwW"("%nǧI'@`)1\q(o;]0+5JPRNq΍p"eTHPu Wz(s4T ͑j2b 3%A8¯$AFQ@Y ̈XV[姠zx܉/w%-%QjnPay,AXqx+FEַN83W":0T=OׇHZ'@X6m<2.EUDhN0aoi﷍1$cip"ԴIKX(\ EkK-f(4'J*VYDNl[]&x/mLPD F:EH_÷'zHT7Q.q+ڢH64-VSHd-/\娿 -FLJHc'kJ/zx]ڇ6)gs̶0͇|ɯn2I$Z ϑl2M,ݜ3TIeY]% ZC nhϨ&$osىQxE.7 [Z{S 2oAV:хDٜFrou!LmFKz !\z][2Lwu<Tu5iJsYxOna&Z?}H6[gv=c(v`.1ЂITu}eqP"Le5ʒx$?^T,D"t r)Sv=%Aô6^:ݧC E sVg'n9vaju!jDU6-BԼ1A7PYWbd'$d?1n _jT~ bLDw0=g?*[s P +(k (Qf<2w :ֺxj,CEKSiE1\#p -uG6oWp,% O5Ca*UB v-l?A[Qj vjTGqN_V3"N|4GtW+_:Isb̑)ԓ*A9u7Q >φy84GfseR3e/nH>_t{A$.CDm|{P$\|ްpskV܎H}x_3uXM2dJ4n_n@9Td63mZuu7JUi|0?p[ޯd'p q3;nm7P-M9HFzkdC\mhhQThWh-־rgXKp&;Uʋ~+?/LОEg~,;$,g`Y0{Wx?50."CkVt;;ML0e]ͭ]đ.&UJH;өa00F.xƊWAL8L0Ӹ-R2#/OYÇ]f= t[BA3;k݀AxcRH#s#KT15qז F="M(F1lUۆQ;챥k1 X̝za'xvF̪E$*zq/5m0\ljN \_<^w-M܄:@70j_~: ]ןb%0o.6RS=wup[ 4jarLFH{_A-i}"ʞqTuv3J _=M-p> D)#@'u|-^cl8Ffy?L VeCH$VF A%da&ق5bŤ뿴~9\&as7a4BΡctV$.ZtS@W!Ŧqg{ I>wnpsd;!!(TU&A>ۄug5ϰ[:,9yܛ+K#wNc}4ϡg'_r3w{Br-_aX1۩-H 6^,w1,:l :ڒݱ#ϐ#ڞ}J7V>[pyEȓ4' ɹX6],\3'2~E ldW["aя>`FNQC`Ǫ屿0}{ei W-&3r)%7s1#RÕrZ!QyQ$qla& .6J,skv0$?vWz8nߐ,[Nq"Ra&xa|M|{U[T.wk¢'ڋ!E +L>g7{jɱpM[A@) -&;g*{rAZBUI&q1K Ք,M8v{e4,gO:#2s~flP}{^AKHڊIq9.vK0W('BJaYاB'+xԪ6YyLWQa: Kd d\TQ'BINOFm3f쐼ӆB-qN);}_xw9`}yr ^NZY̜eƅb pR:dN81;lIsBGD#IIߴ1&!sxA\4߭2KEɐISL> ⎎mg@UYK_9<cWG&}L˪JwXGW%h֜tuR!"פĦ /3 t P/:߾ (NNȼrr0/-c>JH*4I hy8*4Q]8Wj7Vq!dف|f>)6BOڃPX-~&H`FnB\I=>Un ǽ7ގe*2Z}k|_I5*!ͬ~ h@X >רhOg kA^!q>|&gW^>VN?AN pjwF2E"5a]Cq{ DrRnԡQs 9dwuX5Lh BZ7chOm\(PFv.Ia^}cWwg\ @s}IXCl0R] i7&u~D|)7qQ%bKj1aV\bdTy;wu4N;*Ϥ[|4;BO%w%%X DE=HF('XWrM 톷 gPC^CVGB;h5'a'J'GLem^=θwnjLNZ:Pi)&Y]e "A]Z~Wb CQp)؀I| H ^؊,yV>aB%bM?)ZR Ǥ da"SLI}97Ơ%j*HARd(5Dy+߼NRrN]q$AjPЦ aH׫ֈ~&aĈe5~߿9fB(ј1.!.u/CB2/QSG2^d$bm /ÿk>&C R}!5RMt524h^H{Ք=EU@ݲ2~{jOf ;|qdO_َh0eJv*6׆H'@\/}ؚ%L|y[(><:שWтW ,5Էu9s5(S KrvḮ=335,HI/ FuPYX{N\Ow7h){o=O-$ *EVvTl@QS|j3mbdC wL׿+(-Գ45M7*6Kı( qhG`RKcܻ2`,?̆R@@'xӹPϣ΃\F۹Shhv tQLJLmݙ%i兹*Cxb.CoYƆ;~%}ٳB6@4BKnj)-?,dK[:SBmzdLup@\0yIVaN4Cea!RABTX!5)6[p9*d웲_rBg[| J ͿQ6ֹyLp$aG/ĵ2/?U*Ll*Rܒv#8"UT.{Ll`( `cMNjEPkj3 ^uJai>iyM(ϤFM Y&a_)xp蒫.$Md ߡm hƾ7ݓk ޿b b$BQ/# Y'lJ DB,]%FZc+qv'-s;[!֦"rp0gLR(,İ-~ơH 9V›+l˲H)6G_9Dh]R6-MWo,O*GW&oZ0OnkeKR*OX9,בd&'TTzg/riHÍ𿚢qe%3hR&iT'r̚aOH {M5IWx?\ZbwF`zHm̥KN 6LR߮\ޅe;vO@zw wZD;KjUr-?sl%ʊi4jgnuz]6%0[hZfb~NoZ&G>Q\%n8(h\]d]fH}k eK "]wŚBJ[`M^k. gRE=,CDGzh SaPS~K]<'n/JN띞Ŕv"JVuQSqxH R}S ZxdU7i;p0< %rq`~'ʳf9-AoPl#eB~.9sZLUNhPtD>b%%?Gʪ2ZcE- &dfLUz !1ÌC+>u8x?BBOg -@&U3GH-NSy_;G. } aub4YM>x,~ O?Xװ}}W\i[1;Iؼ>9Y`h`O@ @:& XT\rVj#d4%R1DJ@SЍ$\p6P~GN!>l7-/l+/0n"!߀e}ܠ._E(7&We)w JTIG Jl׭bW&)Op?ѹD-nN}hv8դoyރ7-&Yi`؆"8R!іf3;Xj~ST>Ϡ%m>U S5?u':j#Ft+g]肦G&80ֳ1J[v [y.q9<7d;:w:Pj A yp00ڏdw?($E%p6Lܯpb3$,'ȨO!zpy!O>CLDix>D Y c 7l QO1h3bh䆞3[YXrtg,H2G t8+z[;b[s!Rjxo|7"TAxD;Oww/!RݡJ4ܱwѳ!Q#twӨIag/Ng})+| 3jV;DYBdU(h9b4Rq^Jo0>5҂5i|Z:Ȅ̏}ݓW.ʨ&Nl ,M2u ,vseJʋW S|s2SJrMyG^7.`Bʯ@M0ڶ|pJGI7cxT$E{˲JqǧՓIy,Di v9R)C4IApWU_v]dA|n 56Wl=́&}oCKdGu5"⫖djFcxO߮HY\i4Kyš/E^?p;~[_Q=pBAQd-twV@>H<Te[vw+?d\a-x9p*>!Hf8*T#eR_ųGaO6&;k D Whupw#rܮ6jl<3*]nM QM,N5 ]ś"!#$r0, l D=>6~;r).H-qH'w~Ւ4^ _iO+WhTi9ܷEX7(s$^v}x*׆<9&u!p3\;H+?=:h=u "AvK)٦yπ&z麡Ju_ifrĞ`XT ڐ4m @,BPԩ;N3Yx |nGz|ViLˌ8N٥YBmZ6p"(L PlafN V̖6 FR0kk,*sTP<#jI'G~xs2^H$)zwj!vom}J,x0謁z|G/گ ͰɅpV#b11.M%t ZZ/)[-<|L)`,zA-ekr1 !i432&C-BcB1OpV+n&l|i!\6U[NHHZ܂gF$}LwOqtt?:kOD+l7x%)QmA9<.ӕϟ1iN?O rgͧ2`A*ȿInX%f9(#!-: z8E_I1n^$Xc;N3?c{"fհmDyJ:si>d!>~3CxOIAAX7Ʊd5&Aخ) /zle8|ێ.!&җ "$Mqnz*lW!1|e NԞVA[Ҟ%1?5pؿKfamme/O "p>!a۬.!Խo@'3CߔQ%}BძDu\ ԓ UY0/;n˃ HQ75sNAF|cTyTܤSêt6 .r0OEPDGp f] {RY1cdS} gZ0idtXsIGɥgY[*INU _(YgQ鰓AٕrhIA,ۻ$JCv`a,R(ar PL7n_9R4轶 QQdFa`8:&&J -X9ЪUK7g~! ;}.L ȏ[NvoI^-_9HRɂ+)" t@m}kŰLpGhA7DCӡ4#NXs۔>. .#:OWJ0okFгn@3/Ʌ4A,~J8PdE7$m,w}Ɔ9m5^2VS;+pLًmtѻ bOA_ڋQCc?=(OO7W z`"kp(U 4vXogY׮j"̓ϫnҁ=nrVmhC3E"e_wr5mY?ox, R3R9!?7AFtO`W++CƤk@TH!yQi\QKȅ 9H#WشC2q<\\s]=3ŕ=xmf3,lI јΉK@F x Vuk+e첈>d#I;]=OvT[NJӾ%^5 Z#ɡ^ JSJ94~;?`DmB4o.^BGp+dpy ^])<à׿ K{W-D%L^Jl.vCm ڂM ޓzu&fd`dOldnK3 eJezR(M&7/pZ*2█ZX{?$ݯRPۡӆ͚vkmY +hr)Wp.\g,1ʼnx/‡(F!Y#QmzQT0>cxnU2A∵ {i8M}"?v/girۂWS9D9y0[SR X'EXjCu3_R{RFcAYLЦ{dtO1r]o'bb+32ƑY%PK<Q02 WdhN접eY/!s<=ٝmpl#Iuy=CByD#m\Z( FEB e-G#1~ex-}9 0_w2E)Cd+5@&R"1/c)7CuEKas` ŴFt48]4[`W6yT",Hϴsnm=YDIԴ܆.geeH/3N}jdC*w[i"{h@#`I-fn6k"[{v K4 Պ!VTLw11 C|ɋϱ'Gua:&\Vukԡ҇_~}kaqjؒC_VMe #5~c: =% _x'(sJ1c ֻZ^8HSȂ?3`GSd~9P'q#KAAUj=y0aLnx)\98>s^MͦpyYZA;l'-o1M^̨ vk h5X׬All#}vG]̞}G](VEI5CA!k$j%u$O*I\ ڸ wӗI8Meק~h[fZ*ҫꋟ4'C-B* :[m6 $ٙ'lJ1yہsp^ì];ߤ=X MX,=Pn v{|0st;OCNXӸԷ`tokN?!۱墲~;$eTRg Lv~ 5fmWcɿz$>  %8+nrE Y ׋(2|>S& {Tf$P$exeA~2'~*ߓɐ6C4mO2lssaM&h*șhȶj"rѭOIjB1f ~&wojj1~=(N\w*WaPhyL%T@B؊[:nɽBxל@'Y4<{.bE{ .`/UA֞+D%3͋WZ__4*".**dMĠZL4 m5:ev \pVr>Ay)m𭽀DUqIg+(Tf/ .+Clu`E&F==IUnQ{{T]A EGCZpzd)D킨=bAs|S!8 u{XD[򓌴F> RoN(sĖs\Ӝ[ģsk w-R׎a@7]ޣ]ߔA+ I"x]زŲ96:꫆cEC仭Z0ӣ7 ߴ2:ENjlѩ=ˎ :2f98WWMEA~qq&oKS[)T4>vMui]M"J@kl Ex};Þ;bX@ΨYMg勩Zy}~ ܲK_c!Ix2ًR-kQ-E񻞄 9K{9Mv!gN=Ų;ɡ|0 OLNK>boH} `j];g`:Ch$PXܝz(Q҉4߁@|$ ͈NI|Fb sD]&ji[-YU\>ǻ*e TF2vT/Gp?hvPq[@hIFM6V]&R Y!Onb˼I Xz? 5qkdNT)OVlG5CzgOY1B<1 Sy)Б||t}K!Nj}!8:z[p%~u;ʅ F9u/&J0_t`LJ_7y' 0tHo؋"T[r-IFԣe-44)6źϲB˶By%%M,b []8g^r'0~ " atFi^(+&y=d- 84VW^ג祈S]@#. "Y%r[uG%DW<4cx9(Utԟ uEH]SG _1y|H0ydeJ]-xypms$Ցh"TD`4 pt-lA% ݤ)(\fC UTXgS{BP/<m c1BgQb".#vg|BL] 67/qd@Y7R`WisҞ/WZRu12B۝#訰fRz'N ;!ۧ =b\q` #Rnݜ֝/|oWdC?zp'Ta)|6D!"ِʉTFnf~1C[lOӬX\@䦏ѧ@4ґjŋ?b|o!/~5La޳xWs>)1!KSP9&*voZ7341MR2hu#Tʢ Cf;A#H8$2I~3v֗qT}M?;Wsc0 $/CH:gyf@v}FUc Db$)!4R#R-6r=``fr}"Fy_3M SE. ˄-7z'ĥl`AlCp_;8t P; M+Lv/E>^$iuF 2#h9*ٱFX|bL Y%J}R.0"܎5È4k%CcK0Bƍy#6w=, pJ1IJ`Hۖo'@Ks$,U#dFF[XHvyQ='sGj>{L4lhpM5ܘݔ<%Wާ}r4h&PȽW*C .r ECva<ח4Kʇeq(.ޜ !42f 헞k`ԬA*RS#X3'czfl.Wl_n\¨-\Sp2FV `3>`0\%2tGPW'ܩl6vc3u*Z`\g| eo%nBÔcD$N>gNYPOf*&YJjԤ7$5zKʲvxɳge>H":D Gn>@C`,Z+t̫]=r Cd-0(J[dQ& )y9"qE{UP52#|̝co(O#7R!b?~ƑrCMH:~Ew` /TDտл e.gm+**Pܸ tN%1_WFj:O&CX:h(|?(7lu;m$K'w:#y8 <|IJqdvn#]h4q2[kѺPJB? 7mgnD,>T7:I^U'Erabn402g̳}?.Ĵz%fCeW 7Y5 W9d,V%4 ׆\hIp# ċ4*˹[d?8fL PB&FlZS,1*;-eXvD) m 2u"Ə]JJLXtY,,7Ja7eI7ÞӾS\ElnZ!^{(H;I.r͹h"GOAn+ܾyQ\f`"O%~} j!R$UNa}FN V=2hz2̬M#2|/ңG6 8eP)>2:v 957`y*[ ,G F3hp>%Mqe! zZ}6ۇ g ,{ۂ†v&2;.!\o8gyZKiO<_W0t>?*r]jכ^ilGI-yf/{}&"|HK.$UL!yIO[I_mTIjj|죴6vE6F͘l{!mt%56^oφ4U.*m N`[E2NtN7݋rn)_h-^D7\?J@y1ȑboU~m5oߐG"/}M%Rp2mOa 27'c3NTg(GRusiҥ9"kVH0YE(U8k2ꔓ~gzcKG35obk;#UbYۤH1b6x"q;? PMװ3 :q|oNKqv/(؟:%V* ! >8Z8s:tuaԋ!|+4&9HQAN213ε)-O4ZmY3 l?]ZqCGqp-?~{0āzdw fv_տHKoԊ_>x@CEbI$(bE]/H<3W45]6)Pv6GHb"9LW+(#⍓K[L,Оl]ќ\ b2#H 8iK'x_r.C&HOۇ5h]{r0}GsZ@Y2L j$g7\5RZ0|xiZ;>1|ffe?'.lq7Lj|dzN l+SV3 uFN=#MWˎC ܾҪmqӔZM0Lk.EeHǨlc{cPz&퉈wAhՌo!*K,uv YhO4G6/A"j @*/JX$95q+L:v l\M): !1FDacl\-E)je=-s2(Y1\\ 2O2/V5Un^r?t0 AٓDv$gȊ:$'9Jjg &XЛ :rx-sy8m_Ht6BqGP`)3TH+v7^4 !s kMP9JlI5^5r%2 /pC* Y6QҪ8۵20+Bs0#O았]냹&$Q]ewM&3b}ɓ<B>2Y6F-YPU:Kc8ziO*/{7}`@s&ft}0FU <3o*P5ȏzżӽ0fa" 1?vXH699#@5^f[@za+J矗̈xk$_Gy툅oVlV3]1Ys 4.:&`ƫn֟0O]% gU:RmRF&u4o{)z-'"2ȸj7ZòP%"rr.>W~:,mC) s8%F"a|FFu5M-4N/NSFvtY G`J/z8< T6m.ZStƊXsVv;<ɷb lL _>xfy왂"$k?nQCQ Wжhrȇ3v =n$ÊV X2%26cΪ1eGΈj\+ȓ| 8s%Q3+;, _(@H0dSg0DC'?l 'bLutx5cHLaQϴ^X5]kf3!~t#= "^ ާUu)vP qk#囙Iŧ^x"8UBkDײ cڏ$6uvWtσHs.GWfPtDq0x+S0=DlH9>|v5|A\IsɉS`,J~+%/M*HQw+kHFkNUl"OdqH93"鞷Y&/)lYWu(k-j{6`DZDSMëOd\d "=,Zw7AiWHq "_c+<#wt67&AbqX_.0 x.JNЃlqD߆\D&B#5O!7hXR{!I5_|pGz>3V3rʐ,B2?D~|W~==~1 em!*Y%H߉yt:eB2 Q0InO=c:uE?ԖW`ivU x$iMs֒`*b}v>:SknR˓қPGxCk}p.o^%p32̌]$_zå*`û1Pf<3N>,dgjn&k6[>q%~#2\xr/640b*ym?*DfL6q#76nk76o1S\ZU, R%m==aT1gmRҳup @,i<'L#o{0=xI z ybzx񸬵G➹ދ&4@%ɕ4wVp@*Mb\a A0jO@}dKCDJzd9X#z7 DpRނ.pY76 ^:՟ O=FA$uXSu9`<2 z {p{q~W7Yoޒ:p9/4%i ~.jc~`0X"/@Uc [EE:i׻K4iu!À(ee/g8gH 8W+*tEIVdߔZ|FݢU"Ta>.vYoMf`dLxTDnV•^UhХpJ8~<SCj9C'b,T=l>[s_t] ? WIPV^"Lg'5燄¬h]+B%쵟aĉgCw,0WKifpO2#8)h9Ͱ#82+4'4 1s%0JQ(#~J\4lӛPGz=-b\N>h{t9}M(C([x!0JZks/`399ij{;)Xe.Yn=RGt7R8kwcs Vzsª]iQi* $*kpq݉Q~jpN5m7]j#z6&/b}3aJf57W oaG?*|w];{cD~N0hlM@e&YiѴ<6o~ hq "~]']"\Bwu#tFo<8lF%.Xh=UsToGNWϫfAȾ*xȬnՕ.]dkYWV/.L:[yQŒ%fmiDs`/C/-EOl.m^ǮH/Sݜz97"`(L6RQk kXvȕ9ujaG\}SxՇu;(OE/7 EC(J˚[ !/-ls R'7iNGR!R0q2'&|rI,$ά获zbol%o{~1Y1̩q|F/XTcUGOt@VZ Pz#a7\QXQhKB~d>Ҡ#ik%-! _Ҁ}BmRVB$~]+~͉t&-7Zߙ` ט); xD{gp<\Y8U6cO YkݿIkn/_k B\Vح/=kxؐfd2H MKeREęLh@.9 _p0T0Uo"94Q"" @" s&nfww <_JQ_qY:"LyePώ'^CHDGl{L"_˽Tu첏yI(ÜG+O 򢁡)r#mK/AF|4p7$ (jbkbuJW1ۭ} G K.xN 6ɽr];<8-ƅ@@-I<w[{;J7\ܡ/5f֭r%[cx܄T9}}7%oF3\".0L$}?{WoX(' {<Mh1^d٩AW<6E`,q*1 `Vj=do77v/TL} i|!֫ ڗS!rwƎo "% F  }6i^Hes=!wUzszJp@Ek-51i;UnΫRYeDɰk_b9Œ @b ào;ĬeYE*L䕅$rܴHm/ %:HwnX~0p\d5̤+&2H`ed>#f@'y)z f? 4pU߶튺6+ Í6Ѫ 0ILQQW]7`E)(Qt%y`.^ݐy-[h*?Z3H.p)F(\{.W+\#/8۹* \kGo WGĚ,M*Qo7{u*ECK)\S_X#wpM_YB9\Y|\c K^0y44Rɒ&[+s2ILct] W^ܤza8wmkT-C1 N~2:(0-ssfm[O#E?WCH.A ,,DHhWοT6 wl*5_L'tTS"v[(ҩ`Zt9nl"薫/ݔ ޼5c5- qb'yQ♷~@ƋN,(>2gFn╏(L|Rn.s(X ÿ8XQ(--iw萑օ!05V<Õy2#s)sxŸ 5S& l>#HAu$񙹹%ժ(>1vhCثzE#?ߌ!`W$m@,׊3A IME?^Q$G2)o/!1uh;Q,9 $zE^dO}zHZ<펦X|b{A\~YCŊ$~{гB;vոHs4,S[}眎7IUvUfms@c~/4Ep4o aG"wܔu4^0Rb`k!\DhNOiB*ojU.}V.Gb`!۱i@ .^@="}s둨HB*(ea=lBl# {A{A6*%8w]' `4փOy2/۰-g@+H:Q6Ƥ ܨp5FGVhIfݹAD.vW萦V852s:WH L zҾk Q -zcpncܗ@ÍO>ɨ܃r#qrΓ"«[y}ҰGB H*bF*z9S9'RzRKV ^ToWPL1WB=g}c""1_؄&RJ)R Gn<*1z {Y|2x㝉b6B$V  2%/1yz@0{^$Cヨ =~Ry"3ux ,wlh[{W d#w}m4@S8UdL*+"R 9Z)H/b˳|!RA$)`ird.<63:ӆ{H>rE>NmJOع`9…B/߰BeVYSW\<%O31ߚ#eGo|bq7չ`p%!WS7.4n({41ϗU5?4C ;4j">@{^qjD[0:7Y|mtɿ G, aHfjZ!e fs6(!N _@gTf fI;+[]ӂC?EHv"MԮ+ $lh_`Qqg|DLSLaS7 AN%t .>Qmjc.L.@a}il<$"N`؛] Q*ӦX!/yCmt+[ezuhhEyq$``#z`NBڶ`0(ztSKFN9% PUKO=rdEﭺ.mQց"[mG(5^X4K p rbtsi { ^OBVE73I0?M#f羦׽VRt,Wurk %> >L՚#2!8ay} p\kN|ζB+GwCFaZ\JI.)#MfDw"@ f8kŧPS~pA/E+2 *ɳO:luG $V3ܤ_ѣ N`R>bKk OrNFݚRE͐ n0#JbHGR7;3Aؠ:z(kq-E==(jum5Y^' ~g(Rr.;% rvS} =#4lwY_Ǖ-"/ gb5p-v 2yifg6x2PXokDW#spg8DdK; xڢN'"(]HHxg`Kߠ>o%U Tj]qP@*Yx~OS.rUwt4s#F. $I=9+C>r7q!}][:@n2"*crf^(iMC@A~n푱|7XƲ7]EB՘r]gF[ϜftⰬaᓥXC6g3_dojY\/;KxUց @Dn* sFAYP}߶}* Ֆǂ$rj1ְxAkْ>XD/O Xوdsg0D̷E06uzT(9M>׼${ofw5t(ffaoti\[).6~hOklN|bc{n9M2JFI g49Dޗt"JD1PH`֌xʜXsN ?MZEuWӌhUJ6zOW˸D@ }21%6(עG.Bprv7 eoodC(,J8L74) e*r4,򿳹LϘQN>@c@Մm]2C4_3OP@d8ȿ=$1>S}9 D.bn3[bc'0][&Lm gB3&PXSuuu|څ(}䳾GeP v45?"WXNL9]K`Ϯz$%9<-D1>zx*U#fa[+7⠂M3TIM8/7 _xֵ` D=p#?#_fdU\{ELIj9qU%D)G4H*jG֕D;Iỉ>=3>YO|G,a&3Qn~Z{mĐ+cSI.IrV%Dm6EhX+waٷDf'Pw688.RWc ^e͟=lJ"ށϜ3 )+[,IK[oYדضXLXߐ/۩|ik%8(L;?/-%O@١n30ch+>,s_̰!SXF[#zG摻SAdpA\\ܙ*cAS"Q5TiizlM^jDLUPgح)R+^Id7M`j|-v@/^j *W&.`t`oiEh=#bg $Qȱu^Ȫcp~57^Ym5)aavL]jRvCgS byĮ{_'uL5^T϶4eFɝ1Z,ġʌ.܉x;9J) lݚvNYd|HWs0_p x[ZqX[|2BY DtgNjbچxT %)yvCrȽåoIӨ`yšYb1m‹FdQ[[6E;Z[<19犰qZȖ!/Z`NuL@G8TC˱v:X]10ԒHKm7}~V&/0n$;[A1B jb.P*! :nj" x&CQfuk +dgHhuRhto>iV^}«7JYyOg7>ǔ9jշO+4;;"}zR>6Gk7G6TGK*/cvm%9@z&kQl䀈װQL_i"x4ƕZ&9mYk]q RL˼y†ybʥUI`:_ {^嗬 x'AZ-Ӷ!=)hgfо}ۂ(oU|U~g{@RxEL=ZʣJ) {<(Wi ܻLҔ1Kq؊vVdr_ȭ$ђC5ϯ Vqv/&cB,]TːnD{Mr -ݸ-`egg5sflT[0/\t &* baUm7"€E7 \5"%-NQTPк|7^KrLsJy3ݡA \3~Ͻէ9Wm{!(>d4̀mf8JF !-f @fpG!|.sXC}Hc2A ~@+r?7'L_ D²94=S*FWǣ)4=ig?AeTSQ+)~ԙdzޗ^tj\*HtbX&L>q5d->أ ˝Ȁ#d.rDOuZ-ydQ NRPkcm#͢TgY"ԙhr0 o]a3pj$%~ܭTs3$ܟEWD^/yϼp/s⸨SmͨZVO+Yt 5o-syhQg/$=,Rf0ТdV ؆.IK0cYHW@$52|N3b8v*2PTet5%ow놣xɫ:*wSg$A=og-}- A.2$irfbb-/ugn1bfm~[c.;n|loL$mnߥNNcZC [_Q=ҢC'K"N`/LJ"8T%Lw:2Rj}t/Wv}V,] *tfb\ݸ<~/H*MuAvP:Plit4#; , Fj-o,KP0JZZVMlWp6_UQ@H1/M*vE$) 3&`S/-=oX= 9l1*fWKf|adnw׮^wN@!k q9" ).oۋadPZ!h_w!y(4V(7Ps~ Vif]XG泹hOk#4ZƱU7lTh]pjԇcVG_Z'D3B<џp szi=K*\PϚD+ 8!QtVjS9BND@WU7]$Uh(:E,ؗ-g`qO$=Цi&xqޞE-,fA !Uvɜ*>yX;c4䍴_/Ȩ;#= #9@3t*v5@ ן,`fHenCk(7ݬSĹMlY㵟άXԔ O~c>;?˶xS|W14Uj|]*D@!E2IC6X%y*gd!Wz$tdOp1i;-dm%2~}dx~_YNc6#n 8TN pS `mZO>` ǹaM?*H?ߥ;WO9Gȯb>MdF9t8E—ED4ȸ.lj"k_j݀j~$Pِ;ް^gU Jf]xW 9$uѐpg.H7 rNҧ.T J,hȖY˛灀n64#vQ́̐![U<?HitFowQ\:&5(HxKj_0M  v İiH{KW_Xl@B3ɟ`% k`]sݼ e')6FVG DDM]O뗈0fqJ)ahs*szEGΤ $DŽ:nv,)ӛ[/|WNyV:-v|k[KwZIT-|L݇N\T`XkN?"MkttuPTx 3:'z,ޔ-2_ER#V9J{ɫ.ۮiUu`>1B){~5T\!90;4L&xizsCkv[:%u7 4rzX: g!̨Ȋ`t(:q 4eǶ+Fɨw=k8vv\UUQ7Ba<m}/ZMvȡᐒF:+4Se_p37>]!tfX6wAe }~EOW.I'r ~yFıc£V8<̳fE!U{bVT&#u߽ })qbFsҷp_oumzBzvD>[FD?FZػ{s-Jl&,eYÄ$k yecw7XEŦn`ΪYA6l7^g,QUf"N?g9Bn*1=Ltxi0zمҒ{zĕzLː< -ĕCA )IEyD6EU$_Vf]T=ѥI*1ޕAnd3ܫK]13WZ&ij.S)!ݷsQYr]cB8=9KN{o|Vdq}ad׌xf}Ry'\j&Ivffcܖ~.2zlH'>$2Vr&<9|6YF=(L͉*P441 #5ًUo\q* z@W'Pq5jx(]qrYvImDyWRzwRcبoZ6' :ϔF"䑰fOrp9+)F&6"R1$:h^7ѿJh|}uk޳O%8#LSա/snxSz] vl{61S@q'3y6!}6!ghL*`bC#[)A=߳l<ۿ6e29 ,|uՂ(lO{OZ4Jl\+9.Yf w=y*-;Z, 6eᯜƦ'Wp~6ۅשY0l"{NU"@G}IpJ~=;l8~{n=;"H<gFϖpME,.SpVis"1"wρ9B|!Bٳy e`O1JU C-SX+k<2+vǽu+k|JS7V!ra_W&61*JAKL^)?~94mJdZ:DU6As;tub^ǰХܛ2âX p@5ko=ǃP%tOrѱnUΞqFpUY{=yR]\1M%yUčiԦBDgr|qfzN5i_66aY쌶RYdT' #z%V߰()k|%y*c?;$gVR{$ek07!Wԫ?&(6_ ʀc#uu)AvO4O@~vt^y#QÓji44t9q5Uxސ_:(Z̸ YFgB9%6뾀FLRGKןZėV!ό)CVz[Cobu^]v htT"wjs?g_Z`oW?X)imǔY?1"G֫?v@f%: _ R_LFSOP@G8d&ĴoԖnW\q/8m}W 8DQnNt͂NgQY[COO50'i#⑧>&KG˺EtUC".Jp$&\U_ks*cW?gq<)e>{{RUGe h[TT~d0ϝJ<-8UG2]T Dԋ%XUeo(iǟbNv7_DX&6y61£z 29u[@`b:4I g:kDF<gʶT:f|hMQ\k7+ȌJ%6ϮU;j 8),-𚑺_umңFδM_*v~EM!ٲVg)tfD\%|8.l5k,0LMS622pg:=ݟ#'¤X,P,jU Z3y\؏TUߢ +IUP[܊.Key@vB\:3SY((O_Qzz9x7J, +yGO}4qUkg_v#W~_tnS7!h|_i.t<2]Ғ=8rRƛ?mLcsk `.9)fM<:v+?fqgʪ? KtAWl@p3 YЦHWj:+rsH!ҧy_V>ݾ㱠M [|&FD,Z~ AC( WAA]-QA%H <~o,3M$j>g0`hwӳ3y * x"mC[ Khcä#1m8_j &Fjc*#T+='})x!T_mGDRX:bLM%+6\{#ѳ: ~[@ Q?lD,xbuf@ɹuaIȰ0}d9 sBV> ;Xa] 4-X3ݵٌ-wkg%~-x-Rؘl-Rc@[DW1}xߘV#j,M֌>Cp&@<2A&^]m~E&ޣOHvcOn%PC-%N[E׾= D- VX 8Q7mYCռ\D7c,Iq̈W2,r@в&j|x3v %exIYE;=5hDd#&h@1ckZȪE] SYdʠ޸JXAʜ]j>u94D?gEU<Wri#(϶k%L B@I;p C\s 8ݼ݈$1 bH܀g,n]9ōUԦ 9=ak2x][XmuyFn|1ϫYڤ+йv1ZV4؄=I+ZӾ]X}y;}oԱiQO?RV[;dŸֽk8`[Pa]`FFS$؛oqK[+k xMHL-,Z؈nkC1|R΍ (x_ Е5Mҝ^;^i˫ugnB`|L&\ݟͬ J?oyw)DH49Yg뇑2|4,]G$hmO/&(CސE5:Gd=ބM7LPU;Mbc(aA煐1݇[ ]Z})(oXe2 k0 î*?73d0htTe&X~|9}8c4k/Ax" <:[ek73 sڃ%1^DZ@9_2;Y[[7s\5)!{)-U0".2zP E13F3B~F8 %?˧D m9vv PӚ0ãYS&;B$:]/k*qg@EvhL?a~ި#n5l:w5Ӫ*]<6!5Q\}OHBa}Λ0DNm-]2G]ZiJjH ï y=bok5m#0le*/k:X(]h*9do!c}4T?+oZw j[ ZtX3<WYXFh@, c~#щ> ֝>GKdVT:R#X\v &G{srg {ly_$*̗gd˱fA *~,8JQ^k=wzsX%,Ĩj-6%=28W2qlw@VVV{[M=7mKNчԣA֝)wt .I޹20R&_Vzӛ[IeBz@K*ρ18W᯸s`[Dr KEQ^/ķP*'حW& Xedj NJZ%}8-ȱ"~Gy…J,"FWF;:!yqinI8&|=" inŘ.MMWEҀA.b]49mZb?t#7TQW,Bbׄ 6-W|MS" fXiհtSt(6[:k̳ ]P!I{mر<S`5ܟ:p8l@,0;]4Nϩ=h$ B'ݷ8c˩^"taMGizС CRypZ} _$kPc]CmzB-guKw :CDl.ot2}H6n'qBԛ/%?@t .o\}2+~pY nB' z}gGUw\KEf*j(nLaI6yNg[X5SC4:GSB8-,OǿFƜSִ$_0s~Ҵ$*Ww{]s}?DM4gjܽ^h+A$Hh)t33GyU<|GNV] 2;ՃZNPUL|h;+GK< !W\3Ov^)O{܌pYR)fO# b*  B Ӓ%>\`H$x?7f:Eb k2:\;qaہ9i@, {s u!}}gu6%FԀ97|ov 3WyG8Jg1@je[±ztfʰ-ҩ8p=ݥa :?fS۷~͂5 7oVa 45J-krUAKvL9Cor1H7&ubDŽ AV^V\ޯNUdnc~\6!h|{J+KJLթۉbSXI3 xK!\j' {VK>:YtvD]b24gr66X#Ⱥg{aq {n>O/=u@棄7R(%W9l?n,/DwЗѸ&'>l{POߨ:8ظؠmӢ9h5Ǐ4hp> >4 _Ac,֫j:2;bko_]oP8yWg%_ԭ I""P_BffhZ:m*PD`ЃTp5ØL8RqYWһ~LA0>U@FoѾYMUowUGfܥjDQ[6ڽ6ۀƯm`-,u/+bG"(mށ-y fkۧO*>˗iܫbbߦ/="\񞵡?K8?yM @i6͛ .`5 ~*5!pQ%L}EYl$`|O)uD'K%+h4 Ƚ5YҚ ] =}fͳQTpB›"GQt0 ɼEIi0ůJwySTXY#G${*6P^ ?UQ`}%HҏA&8F_”Mt/H7>37IWϨ :㨕{c}'I FX qM0<8Mރ&gߢ)Vs2 [~0hj`T,9Hm` yհti{Ը>D`l}nLÍKY9r?7o4drѲɖOT%M ,31v?wy)߯?4ʒH9ΰIU"I^7G7Ip EWWC^ - 盌&~hURkbiL@\H-Q֤0LOr J$5f' F[wHw1kt4o 5 `ϚӨF'.ʍTIdbϊ8~XmϾ 2Fdx~8_ɱc 5^P*( $9ej)7"Dp̳0$(eRA#}5LU8Cj[{P郛ly(Flӣ_D"J{0[~ARNoB151Bߴa@98m|g쩀>mqKp9_""zomPM|)fNĻ[ T Y#,osy+Z5['ע9]hN~'KKγb :Z +P9WЋƏs=Oo+KPgz_h7KdϹ)gWCaG$Pw%M O>Pت;7{Zdi Uop7:u|=z3Tqx¬I!DStM<yHYkEF L no c7 s<*w0'?-44hs2m.3#ݿ-VGX(9W BsO&3Mɏ&?f4{M4nfdDɻn+QYBqx(t?><¼Raۜy!e^_X@Kp 24ebYUv94&/jYP~*҉2on5o Abcҹq;s|,hV'3wQԇԗPYu SI#84\ QqyqZW8m"[$q%s[t-PfoYtv)y*o.td]9i#6}5Dr 졅R}~l-]~*C +om9VӠ['Ƹ{ق CXDFB;Q!DM0MVdQÐ*}}sz9RW 6s[4ۚ2!3)m.H(%h)ˁps!wݛN*3U87 y/Mlm7H>@6\B]YGBaB3oե^ظdA±@27-@C_Dټ,m'F4TvY8:If[*j@G3nhHqO7l߅bP!{!𾵢[&x1t]4.,-jo"k dCp9oR틵5yiiZ/FW^€Q\N?q3)@j L?6F/P Qm9#vSWvQ$u8˟ߩk2.-3U8 ?G ˒tvr3 k 0nE}wŦ{N 7nD-wȊNӶ uͱ{:b}9;[`HjKm6`396P*emĐ̉KoWROǕ9e t_/~S mhG%;.n?"E(x:,lT 1;dk̄(B Vg}F~ ݛG,k HiMW,IZřGy ~XKEB+r|!iз 8߮gT2-\<$s/[ͮ.1I.|.Uk[BNY85[Y]--Lǧz~1qJƙZf V3{:cזCcB#[b h(ֱpRzef]S{ūED"xFO>Rd&\) ^^L|NJ:C'B=Z\/ [4d4W"n9<<&fJց45&.:f+oYLSz'G}!T|U))o~`:ce>)N{y$PsOb܁ ۯQ(;^Q~hX5f>Q̅ ckI 1l*ŌtÅKHh o wY ڮCG^xlzcu+wۛS.WcoP֙5W7cd *\R)AZʟJEPי~٨tFI4炲Iy8IllXARQR/*gvjV%6i͸sеbO~#X*-*2gASzjt',pu]sJJ B[Ѧ[uLH~Y^9l5dCΗ?YrxyiO),%&,/:HIP Dk<,'$,Ap6֤U=5\q2veUI]ơ aV O?#x-6Jb<댩_0Cu?W ۝V4LSF.(v\}\1^y7)T%(XQ'QӔCY-UYrǰKLj|q\mf_9<*qDAe9[Z_¼>.8 /uz9# җ7I`/ʐSAj4[~!&&? i`]/ͤV  "[r9cO' !e g(/ (˟@FRWBr30&ƫ-&\GÝ&4@eI¬;)@>fԉB"-=ɥ MrG.*Joů V$PrF]vkj-ArhhK%:9\Qr#vG$0z}Dni Ow1$YS&[P{H?tO%Z؟]%Q97R7o OzPnc'ծa.+/̯Бg'_"|)w@Sɫ"΅J$,"s1<2rf1 e8K ureob#Q#[8|MB5`C3GQpטMUyͭGu s P jflpfߕ(a/ƸD-5ß2FN%u5 DiKG^`֝ a9TVbf\ۣw e[1LQm[w~tWX- Kԙ7H6Dr;h:)pf#_d̯i5WEDjJ -NI$&۰:Gal;-U1=Dp 54&; ke ԍ5=N-Ъ4 ):Z@3WĢ${a >7T &1']`8Rћ\6M$/^L ^խ6֘o H)w k'$.9-)wN[!Қ |QDpW `U (/vĕ&#bRS?'t7o$Tmc /qnf A"=Gʹ4, bxK%}q ]Ty]uB`ߧ'gSm蜴Yl#Zwnn6 ]N1f1ƦԽwŇx޹>:1! R]rwLqoÄۄ5ʏ~./.[ }H WQz5m1ehX8 d'Ű@;})J7naQ^dYU#NN0y: ԯ@Ʀ_DܛS -KV'0\a1yƇ$ZL$7Q1#O?:& aʢwjB>om_+n~*Av2d`|C+a]:qO:hALd<#U,>]49z݃=5]_~Yº:0CPFc sQLQmD"J]$L 'ZܼGTi_C(cvDqp^>HūTF^03غ[P1Zqk6,jD^}[u$E҈V$7%s@ЖOIYASiNiQŝL!a8ϩ>j6wo쁱L2~.1?Eo}:Xz L Wtm6tA0.]Vye"FcAv˟\.'y֊ dJ2,}T前`gRnR),v"zH9-/v%X͂മ.-Ϻl>({,R)vCho,v@~ȧk'\0B 6DwNB9&Łw6# DvctLM-]ylԾ|n_X0>A97;lCظ/ڗ,x%]wE]kPgDže^XklII >P͙!sKو~կ$Eǀ¿4cm۲rw'c(^\Ϙ.9ʓ8%:)fȷ(i`I/|2pn|REaۭuxTexcofO&hlޛt@;%5c 7Xdci:ԺxLTwpEbL2]d3$}@6;Yӊ8$k{E x"՝`Bj]Nfs#1{6Q ^6}"g=rf'D u=ީfM 6}TJs˘s\n\m*yNGѶ\d%RC\\l M,$^~)U}IjO=a- gV H j{$"%n1M~n_n1ciY.'t.FSFǫ$t\1% ^#3qGΧqle *$^n^CM(ozUhVc|a&9Qì`qMϜHi+Q 8yLRV(!B_DX?!Rue[UfQ'ئ>>$ëWle{I)v,ڛhmO+?$S0*=X뇗D\vP~b~UpGēy m ftYbLOMi %K. yPd*7 פZ$Лu鑁v&kgN+ 205yR<: Jls@HnGDa_iWBѵhu,~v8w8F3筣,/gv,~h4X̠Nݺg)Hge7g* C( byLġk*K+\(~%d)\<( =6>`i:ssku/hRwvra(U75A׏ż~?h *S*DN8cn@6T)Z *M̗/:(w*&c*3 No9g+V=JpGkZ=D)JoO*Z%kg%b^3ܱ?aKdַ6O>&Z"TeUEO[܁ b̤) l7_&I!v{4'pcճA}ț;]VTk䊹Fލj( E}1;s `RUR9t VYnAG}4Nj`8B*zɩ2]B:i ,,-ǚk! 3C7+7*scf3X/@3uUh57R`lC&Ax#jfR|C; 92(v~TA"R}W;tD4*݄1K@vQԈ%[;;A<3xA$/cXn5Rd1KJΩWB^`LJQ&0'C]}*( @辂aL ?ߋC֭qN.# /5nP>!Yg  2ܮbL{yEE분f=No*nJ@yɕ.l`j OoZ\rˊW 돃|z|aVc;vlhG qaC$naN PY}oc,;}irVu;7ubyyBSiG%.ؤ;3:=-T#D$-1(8 %Yd=A ,5~2S,tV|X0q xϠx܂sj9S%/^2"kJKIq̪QoU~9s04`~4U7BY6^SWҮܪ%g1{Za ,e5G ys}nKibWRx~Ij˜,bЦ /t!I=Dn^t:mOEh*ʍW.}HGO_$S%WbR@I@ ?iafxA [j=XuT}p-^V6'r#_=u~j;Cf,(tWTt`@nySM4f@BeT)L+ȷ]e '=&h(F sї|S 蕶 _Qis > }~b8<3uLb?x,>M~rt}!:xrP_Znz3<1y- %7 s ^z;eaɲx=BsF:7gS&L )Dy{*$xcˀ_S ÿ?vMUGF7a0H |۔HÂͬ!P/ʨtČWn/X>qԒ$w/Gyoq`}̡@=3KրG@czA7&A_I >n6H3]"&ԁYAÛO{cFJ`L:Ɛ4 |d7w#]sVT4V ի152㣘,ױP0a5;QBT|{qt>K$aW<.ai>̟OAPcu%Z7+f K{/͞+L5r}n%LXsݵW;R:/h6tT|nkA!bǭNA4FҹPѤ@+%du9zj0Ld~N֝ SbMYU-2=qkR@{Z1%x IfVR@:`n:B~*ʈ aسRMTsv;.d;吧{Q8ކ8 jmEc1lzYDr8F77+Yr.%DubR[o̞H搢FKqn4K\AW&&ܜ!Z=o]"˺B+16eY6ΏG/ ( vgdcΜ\=>CaL omm*=CZ!6aaL^,s4 hϓ>No.v=#]p<{RR4~_(aa *Kz,ʫ8׆(ozEfĪ_'sԓ|b2ZA|MiwFvHۊG57r#p'n  ew3o,ZIqk;)֗w[0/o:ѫ+cZ-@p],g\w<wVo4Wŷ==S1a/Cw7&C>j׸hdWα'r2s_b%}&sd! ZOYӹ7ȻQӓȜ_|5o_RN; <$TB( )<H0~PG_ar&@3&iSܞ&2EZj$v@H \}7oհ: r(ț)hgCMA@йfH̻f!+1KPg;b_;ZL+TvGp0:Ǜ.U}/**|R; *|E2 `Sh;9|yuVYWwd=@NrQ-5_.UHq%|)x˪픠w{:Zt|ִF/#B ͥj~F,b^(25Q{ M=tTsNqt;c<,w(JgBؕj%- 7tzQ- fA, =f)\hgw?U;|s=s!yhT9\ZFΜSy(Yt_x|r§5&n}m!* [ۛ߷Xy%ÙbLg/JC&;BqMk£ B4@+kȐ yQk$cqQ^MXk <;tI " :?]jm>ОQDFf*.jP1pAj.va^fvSDO(kG<ɕقƼG %Y \ f+>Vdta.jDЃY%A\n 6|aixpxc2/:בa nKⲺz{{r/H keW,JΑhgDN0!'ӏ=QX4oRE#ᄁVb$V[WgRF7_vZ9A$2ҊhWnn-ye+POf Kn=o>ZNs6K8݇o .θj2$&Yze8%߀rnђjNuogQ IK%ܢv}dy9cU l<[Ć`KmD2Npd( h fykqwҔ TSQٓο!xtG&FǞ>w|c4ĒX/ўpfgPp?Vl$=[{XX7]ND4iIg7c8.@\u)6Ii `& t@Y.d˺k`AQJ ntjϕAk7%z:0Y"\^`" 0±*OOAo9,ޑRNE 6y^ -t3E_38E܍O+ro#(7& JSVr̢~PJGP`.BDLиdZB$vzWݦoR^]aERZ)LϗϏZKqvT%y9O_&l/zSKLEvʠ3k聒.jQ'$ 4L>pfl5VJ9եUWY+1`ʞP5C'כG @Z҈!@(T锆@G4, ʠ@N \2:]Fmvxw3^K;$+mSk'[-U^;b|6=9P"g#inoj#yn!˾[(3R ^{\gtg]^ϓBQI_+~(MGH:f"O.~ņ_e$މVD8 }_R+~Jl3Ɍ+1|awM628eQQ3GfzIWlcO)2$F,  .wEH&ajScGD &KY>0?Rx8* e*s y?S:Ӫ4A`iתvʝ/nNgﵟ[Fd0,s^BJbu`d[pZ%3 _b_Wq] ߶֓.ޏUIf *@kۂVjbenAR=ԟj6Eg!2U]e: xAw 6l^W" *~0qj3Ŋԑ4-1[=Mն(A^:گwkv)ͬ?;+ŏ`y-$_yn` ^d]Æ_B(Ϙx ƯBhBEFFa!v DxĔ;G3F!Bo)۪wOoVۊl6%"7i6yL /.cMV*g4N2 m| "nN5WМ?{7/rG)dӟFjZFyz}9r:_  ]8ؚɱmU- o\5MQ5ŁLv¿E d|R% ObeŢ(4([jmM /jtD9򢒇rfiwbdg_c("3au _29?ٌ8侴;cA"s1! j:lf A(~N;ߧ˗oZcɄzg4zSakT3DN]bJfn1e?ORp7+ڟ5V̟ցU[\C-Sޤհ(C(E'i 6 u;fU @?#4H5}vIFl f$Π^Yŧ}v1e DddYL{)_b= /CҒhvMD96 iC G4<ھG& 9ZVg @vȚTR qrRAa<:3Q#+,o; L!g|6wE1YwguXX~~2>2;,g;TX ffݾc^WM֙5\iR$O7 Nѥ-~<|2ވ`mfuG-OB9--1=#XHy٬9Q Ēr63 P'{Bkj /vJ"I.:d9zc{0Oj/@;KLKA^Xfc4HԞ>.Qc9=ezZnBpZ}20@S!~5ګ`&Ry.Ɔ6 Yώ\]]qu89tpz:=@  ( ddM}&7ppF7uN5pVfk*+h,oKYmhWJ#zyCj_'3$kh.XpN]zk|Ks3Tʙz'^ a >w^xH"[c\050@XB( OA~qH$&6m g $5@p?v/]̲{_ ՑAcxQ9wБei 2B8NX9Arv`;ARuk[83qB7N,뙱 tr|?u1 lnj-NˆcG>a}H"JdZAy$[zRg =%똛u(rH#}X \RLׯ罞-E^*̲ & pL-%#q̳Z}A 8!066=?9p/9F0Fhkoh>a&.JW7,L{ʬGQh7t;9{Rf߀?.On"d@(&vr )h<+3vm//gvs8F,jE ;E^e^# QU8n&_Fՙ\tpPYw\ Q!xq.r7{5}Fs\iq*4f(i?3u6J[IDQ4;o}f L*7!mkkW(hōe5ݩ;[.]'- s]ތ;I1:#b&DcpgۜЇ??{԰؏·G~bF !U!W\}P(S R7BW2 4{Ъ)SӜn>wЎܔDy[Bi6AL<5͡#= 6#Bo݉˙cYq̗1ԄbOO?B~R".#[[عQJ %pj?>[MrA8R'P_KɯaJisQZLuaЯI)>  (\4BsXqW@7-qTI~e eŰSٵ;2R mT)"ͻ<)qѱEekFD>d<4j-đ&0转!`%0S-օ΂bNͭjIV,onxMqZ'j8>A®նUD-%8!<-ӝ/=9^d?(0 zQP"~ fM]ǭW0,كwUOsYqV3>#ΉY ϻLK dξH F6=sxD<{!wvKan=m`=6жlރ'elXH#i˟" g}O$삊LCVvF(C%Nf=Ԫ;'{5AI?kYb|vlj`OwqkL4nΊSSQжs,!290GZ5,%UT|Y H1`"t*~ 2bR=Vۄ15s(ZR]IUN`雏~lp6vyɾdػ1L<,0v&/G\Im 8IXF2M`>2.-JXEFDvlЫoسN\ #ʤշ ;K ŻlW؅MB{:a)y}T\C`$^QM7GFjԃF!^(a@+()vDq_ Y)IxU}C(/H,đۤ.喟F$u5O½t7k$p:y):~[2`Vw:ʬ@T`lg6s@n{Һ1hHt JV\vCZryA`w, !|' 9Hw#fRd"1T}$mofߟ$#>nb^ T(//4齳E^(-GRs;k2d% "ʼnHE:Ⲗ4㟿4Lbjvz|NVeaIm\߆( v򒫒#6_J4#gPO~ {-qδȯ')0CqhDV3inC* DQ۝PꖪWvs*s3~ImC3f43mH# =t+V*$(22xn/cTF!m:74H/eBpCqTWE64nc>Wd"^jBc~I0U9yUm5o`]iRKu i^\V0`VM M_j56!^G2Pҷ좐qnhXL򨝉FB]n'7-|T0$ ?G5; =X+x[!W:EQ$"EcH^T/D!+@uH(t" *C3qxJodr|*sզƗ, 6t>s 'olp 2{$Q#!~qK+_Nk,lj8O¯El-BYI`܉(sh;_ǻ^EOj^@Li=n/Qi`p&c{tU$'@}Y&5q=\83sA2va9퐊h &v0dIY}2E~yi5-uRgTD1_$}Q⏠bX<7>B](S!b!f{5kFHIghy6 Z;ДZש+K>W!1ޱWZ盱,F\dS?|o w.-& mpgn*K^f+:5wii Sk=Bk٦dPipigL{H=nk0nE-*otWM-kM޽25AVrrc=;v4ג0JZWYJt]εT:P<@M>B*}DW3a1+*g#{ZR# jnw\xU40Toi(5MPs _$ݚʁ3^ BÈFB #ף͡k6/cU+8, g‚ph&c ƺz3{};~"T1Rh?\Q /I+%Z[D`} 0nR kmZx~J\%ZSװGQ OuE; 2GX&K9b]9, Z̻.IlH_P 4WKC=-rvBĶ/ 1g0QHLU,()Wѫ2Պܿg?;U3`|Tfd/JeLv]_mkL=\<=IKg}.h9<'3 &i czhe|rڗsZ,3]luc|>;5ُSERR4](딱RuoTCZ 46&SqNgRqJ;aTI#W)h?qGSvVjy!Tm޵H;C;LӴ2D"BrnHjvm Mzq_qhs%zy*AѨw(iJy )/@j8sw r/к>d*mb~+֞]7а, {"зvorF-IzXohFxujs~]c7 %B dfC#5 rf-f8{:dCe2 `~%g7 *ؿn[nН=r)A4F\+ά:<@59oQl@aɤZ.ـ]&az LKc Wge*hhŢf)q,tV{,#ӹ[K[K u|1y4rǕ ^6kb1`o먆D]NeÇ]3Oֳ`|u`O3b#b~Y UL+?_x&t$ONWX%wW?*〰,̬M? W[A\4!kڔm!m%M=&cEؖS[R]Emf1,}Z\y!,_ߦn^yիU Un(X݉VC `nB}iܵFx $w'*EbV_ 20t4,̠Tx{:1>0 Ie LRю߸@x)Y@neL:E[;#:%A~NlWKtRz&T#=h?PfC{WZKF Gը(./Ut ˭!]+w-EHt|1l5VOeu\\$' M}ɔ WhEn_hujg픤= =V3O/$y-J؏ .^wM!fM>mU*ҾMwu0YF:~Mfmף8.:[N* W=#!K'DE ܡ[(6~Z O.?1c񫃅ބ]s#^'o߄<+w.rϕ{<1hսA@E!-KWPJۄw,H4aJT/%$")U,h#֖s\n4ں"5h k1sV|=-6>s1揯z.P6ֽyDI.w\ιˣW ZV&}5:vi3dBXnQ`¦zľX/ۃd_emJ۸竷LёjSޗ0hA"Zk4 nsAcp;91YRb"ASH m0)j*"C=Ȝj%-ިIo:-m%9 ۈ/#Rd&Xxz>o596ү >/M͌p:`x8l"(ѰAl8( 0gv2}@=Ơ:$ ޽?ÐULiAjȒYR"3qxzXE伎f ͍>P C`<~\4T?z(@egl0X+[QSy8oo>{LӖ"Hv?BorCtf~1y:1x4W1Ke±$&F4_c8&&}PM_$_&  &wϣ":nf+?M͗hY9%IS#L 4id˘7\I7 R'軀aژ;c]%X6Hqn`^M|URax0}TaMJg9&p+qunr¬vqԄ 5ontT[̝7h[h'UShU]Xp?26'_t2X+T0: 4'2H&/¬妡*g3W $#ؿng h껴`d _~ Mèk2g!vVcߦxl> v ߔtR϶/l:y EM N=H7`AL]xg?KGK4m)9kgMM`!":Ca Z(`]0Og֢η:]x3=8GL_& $ijt/?_P8fX)aO,/RQO2ws@ Y PD#T;h^V%]U[OY6ӰZvUUght2E7ɕsry$1Y̸T~o@O0{I3K1@Gtl'мTYd 2Rc.{.De0e7-$Ïҩ%%0Df} 8 i:z6r_XCU1KVK}y:S@߀ P649ϳAwnK5@hIt"3},8ǽ޲\\3 "n*g`l`WtFMW鑿g Q"|:Tnt* ϕ+=KʋcK(cƮ0cgHZ }\$Nq&td/v<$cx]rˣa'aARp@Cäƍ"Vd'n3)tRMT^#C> s`jj\)_*?I;PlRLuw C '!A^P6x/xUt ȲfH8yڿIlToUcogď^nq)e ]o\j3'\޶R-M9_@*Iɍf ش(/ [Dtdf,^xNYZ5qLH ſI# ^!b:Βҁԭ'8ÐF|EMDq]]V=xagj~2]R{cl.x Og9}CdH02(S^UG`M;!GW^S)l}Բ=]oy_)huYd/3^)⼍{0ś$r0ZjL@7؇iٙ\T^&|4ٳֱF{,?Šwd$cޓw}M7"8#ffnaJ זO"=lX#/y9B5bX *Q 7OkPg\uVy3{$E4mOE@t%T@r R7U}{:F0F7Rs6-eRIP~+' >H04i} j E+>HLz5Cqۇ"<:xͪi򚕫4&Vz {<(sX<^S#pA2CV/h᷋Z_TޝA4[h~WE<`WŸ{f-(@xk$BxP\Ibְ꯳iŭXӯwUXo4ǧ`@Uz! DXJ =I _2bXG0Lhq>[wINܷGDѻP'Vv}R A9k on| sHS4骢y/|,/^gz+I 0Jrwwﱓy`'ź`3 M>s̮=)ބP q† "P4,I{XDl^VZ8Fl0": PvRck(9ުt»DXwcsaU)EfbX:@p;;,-#o+A~MFx- ~Udw5}k7'R`^_Ĥ$@u v$f64ֶj'Gm@sP]*-g/ qT2Ux9i#zGm@)0*_hmhN\>~+y|_(NvR)Tw~3& :!f$rfkШoKB(+ˠoF(2oM*\h4~ FqNשBP;v]o+<@Gc3n#I5\//F:W5"`q "~nè|+d̹[U P]0~& Řs"om&k;VZ3Mall4 uu/iG%*Q#Z3gi :$.S-iL@Vt!JQI#4TڊOp廕tf*{+="j8d< ]Ë1MxBVJO(RPʕ!.n>qwۢ;* *ՠdx\Ȇκͥncq}ꙗKgQCG߶et??&15FT ސtSm+[@,rJ3\$/L"#Odb!֯ҾNϠl_I_!_i0is#vzijZ \XE7!/PWZ\C&tUK_h= 8f<@B-mNՂ9ߤb&'PCnF8,9]tMY.%qˁQ_;Wub]QTo%fbY`;ҁ"dmrP!}u1 6;T+س;UeɒBR.h( >/: |.bHK 6/o™?()nU 9XϖV A O:JZ2E~Ϸ_o,jpFZuZ I)m~irը|jRk~X𘓤=k 6e5c֝Ak)m']*),-kf\Z~7'9Rk[W-W>Ngm rK,J*s&P`dQ)e2Q*tVI}o'?^oCZed`"dƒfFEq\rCp (W?1f2NbS@ D:iDVESZ <0\wn#Ϡ8X-d!A>K[IYẓXЖ+HeO8Wǧ^pdrhw'4He_bm0GbK=ˣ;^\@Z]>xBGJpk,%P~,(Hy~NnUQ=̊:D"ٽdJ,X%4Jyaă$!.\#M/Es?y(Yś lZ7ӻVlRI* 76pd]/Dp¤v(ݺ'pXG^ bud(:yشfO!C@d*#'Gԯ[ھǰn+uѭg !asB-|= JήE P%P:TӨL-pWݭ sWyJ*gNUIWzm"]eI5b| F(tya/ދZ$C-L Q] WD)(M vwHY3M >yLW ႝ2>]kk?Oy!^r7!UICb3۸F)ERƊ~=lRx.ղCe "?W<b ~}~S@MtMJ!GRrY\e?_v 5ǯz jQc6p$'M`L̦3EaԇM2en+, sj,+8o1?Gp]}K8QuAZ_"O1FS%H<2 P$܊(-{ZYϒ]1ܽ"umۜ (ZBfh^ pWy{…~V\26$];~ SɐWh5v'k,kEmjٱE92je GN.**=bzFaC~u Zy13h.>ʪSə<|/KM8mdvW,UA o=HA%/ϞɦFOj^ 8F᜕n/+3d{3Sدaў/:b\J.U@.`,Lt382b9u ?m9~P K UְYgSsk)q!a)6 MFͼ謟?NZ|#~˷$/ݦ*jE~S~D>}EC?3 fd.Gt~$_{`i:G}4=wDQB]6w>VvЫ6ըZ[>^ϮqNK+-yU<_&6 NNC^/n6:.TlՊZJε+[RCh,Y+s[JXCZw@}'\aN& jZǃjpvLLMuA+՜$O Μ`1͵-!ſxf.tA6w>XFϯs%Uhi 9 hNKN|yl=G Čnbf{wHJr3|yQt1B_ьC^9} jHg ֐A ȠM}@Zd**6[aJCEǏ h vU[瑙ҬUJ0"v;3CuIӕb?}'b@v '˔&X32WD S&F^*R+M┖)[Qa+~BzI{{@GL,'§X&o+:L]M% }˗-h]BUiGsq@()&çh& RF ^"UвkhҾ^7m\ǜ? ꁣf'o]Fa 榺Na}'0aV2N< ׸p /0[ V ]ZjNLTb=,m|.Sr"d+Œ Ǚ>l]>#)y*- n/.iCõ$ZBX$0?Ϊ}!)ȥL4ɻ< oyIJxh"Lx+/irM2ysW'JM4#f#Gi.N7INAy5DY!ݯ͍rni7|3x/Ҿn`?>N2x|$b@AfJh Y_uS*me|N^0tvDʵTPV!]wՂ.`W\t薐ܲ_iP0ʓJj`e6㹁#?q0i H8-ao26b=&[ _4i3ehsLRy~0v\LA VHj3UcpʦCjt)!8s/_Y]YG ?0`heM6V-VSF2SQZﱭ֬KDzz(0'l^мͲޟ$9<-iCҩ Lob!$0eC i"XI˱gh{,AF;ꑷXEc*`A2nmjZ-E c{ ֔r{ ĂK$GѝLiLhGB HLhj9{Y.ղ 1НtoR]"CFYgcM VnY0_B{ ΟXDELk*\mXk/W-0oKR]ɫ2bέ^rHδ)`+ ޙ2%SjC7څGZ2†|sf,vldaWbM(z.ٶhkU5K1[39>޺yh 'W5QLl)ԳaUm9? a@)ۺfN*24𾾷"t1hZTlO/a>{ 7}bwjV)~5,J5_;ЈHT.T:/ CM *ږxŪ[3'd,Yf%86*v 4 %-!*r> U;'y*n!B7&Ȱ}Ij6Q40مXv@† ʝ[{w&.6ʏH_mk1 rvcNNj UakˢC>y,Gj?rȣX)AMg/h>^pB [cЂwfBW2SŬ1eӉ+%$;gZVCt'*" mջPWѻ@E͜/kS1s#?1Rn/[;G|sO'a h9T%NiٷFiݯbXCg'nׇPPJ߉X|b5CxB)+Ӣ7ܑ9ko kl'}dXL%r(ޙ}Άg$gT!`._P{p|%3QY^xc25=xu $}lRe@)eb}H%UjBxLLV||6YA K}}*g!s4'BxKræ$6#C73!={1# ~K3O_%mVV84gk[ 6W7Njs%1 n ƪGӄdK5y?FcȊе{8U0>| " Of^!ވ]7A%avg:k͑A|ܼo0Ж%j ǢCVCFCjz>0:5z"@;6_Ua;Egw z(uc).۵֫2˜ͬ}W뼝H@W)u Ł! ˩u% ;W(틺#7Te'ǷCpks$>baF&׾eoOqGLB:[uN<=$h z Y<">@r%%}[^hO2a0rSƗ(|1 #?٬(ow{x NhbCś6ȼK%c;)j7'_z,M_+NI_^2 MI0+mN_R12xc@[C00.3]J7.xAp) lq?GϺGO]:VVF)Z@Ym2얬z@]mrGN&è3PV/uVM~gbj4!PCF!E#q_'D-/ўTn( e H|ʥoLe E4|Җ7V|nTuTDR!<: uɆM[ʰ嘬*oW6n?4} =9/Ag!Mg}tZf{XHRL-\Q,MqfD bz7"c̑h~ =uЁlye'X,0rXBVd`SG8gjG#mWP}+u,nM48 Nt_å_Gw" :+qٺ "Z&T f G'VĒ}F*agW7yُ"*gV^#0xdU];MS#;{ Dh]1bYj*<0e\-PG6`H "q'UNr, a(cVUwW>~8 `֢|=O֢CjT0'-|nKɊD]D*ʁuFn ._G zM]tCͯo7V\`]Ǿ>iBC8Q&ivHkf;H0#,Q/^J)̇k3`);  dV>/s| vrdž7g퀇@yŶ`cGCN$ Ezs'?9 զ`"tL荓ڝptZO ~A_ĊmE{ƎtA{ sοc=(v׃vQ.O ^27uM2$/*qNWo~6-;TV~'`:3)|#/`+؅q3nsIWkcl%8 O\GOnHpKՖjjMaQ֠JNR@J.`֎o%_)*L2ѼAtMq.Jt6t>bEJM-Z{FٵhwvV2TaT -?j_S8o3/E`6΅,dy,rqtSOpo=8mRc˳[.(3cL8%A}9Y^D.[({){D'J>BP'Z$ ](=ԖD|>wZ8Pq&CBq C'3pO)Fh QR+[Cd3@~uE#b. o`-U[Ѐ%v&Ι|2]oOz땨D%vdH7E%;˪8y%BGfdB;G ){g@:ɍv7(tB%r pdr<*b=-'1xc6*O4! s faòoȄɤ~=K,ii]2_iݽfBF›5;avȔQmΆiɋ+0I=iH=lĸ`<͉#3[W?\^4v%2 o=UYuw&Yv >(.kpU0[ _Y9n3iSe ǐ}֌쭤B`%rZtkBpocVt7%NB\bt!fJ HpM_{bhv83V%^J6u-FI@G෮ʆnHj^ w͖B+0Njݭ?Z#a esQUz]wmrjwQ0$߁ пq"PDG)㉁N{9p@ȱ3YD+,Vgqˮ'eR5?pʘqEn~/]bl=@K..|G_代ʤٸen '~PM5ҢeU*%7u7kN]C v>`&>1n kuԱ! /Ŗcv]IQ".M3RLGCq*ˈD]M2q޴/)W ]LF˯2iI@8*R|&څĒItv8/K~rte||NE7P4sXCʷ'ɄY'- 5y4'섵WE@S)9x`XO!CYD)/ww6لzYu念/{͖[ Ҟ_s"dG9 ž4ܙTJ?&碡·h5y%XHcC5``MP.x@8xQ _Rav35^TdHNP,B5F\m'L㹜Μr&ԮL#/גeKs>qZشV{f<5ojjh,)T Z ?H:A$8KgnjnҾ3-k)@Ufޱ++"dT7U`+^sDM{5Eļ.iˋVTG%)ST^w_r.$r""?h|vSSbSJos# 5n"z챔׵[ 8?pOhLob.B4s*FŤ;ӓI@DPK8& z5~QvLbp2?W}h qikSێP ɄV##[8HJ'>{Ժ*-"|d_mPOr ɋv(H;/&Leg]W~$y('H{J& zgA^`57r4F2?KViS |oֶ4,i6Ifٲre O8˲ɐ:26s.]NДKLi g=^d햻d;A2m6slZC'ai/~ˬ#Y_-694wgQt-Qm=~I)g;,M PE~V/ c-؉U?Y~1 6xNa({w:'(cSb6d6uԩ\>T&1{г1EtFM.V1We&@nEms_4Ahe#J3zK|`ᕤrO 8;˖Ue"aދ:۞ G۔{hS-ځV9İW{r[&@)͛r*;}-R2-9+8O F"TjJwhc Xvd0vm娳p/la\NpC)G`$D@^"4XNRXt kf΁BbzqHQ[awAcq)VnTo NΦt$9*im3 8TgmB+3O7ԟ̟nz1p8SËb>u%,ar*֮#by^\)R4A7Cd@_R8Ϭ#ZT vϲ^%h-cBdˬ̇-29Xm=߆)rtG -an2Y5AzEUEAɩ]}dAG'DNF Q¥'^blrq \Ǟ]Rqe̴ GXZN8OkG $X8%|9'>C!rM" 2ׯe+E2BݞXiJZpiV7,.C~Q]OzP㧇&&OI:5Ev2&H WSKhtsH 5;nQ,,/' dkA`O rUjxtAjT4M]xG7lJ%\XE@4psvR'p*Y&ӼXdK \ 1^#"qra7^3*ސHJf`U\_X4J+[;n ԢpnO܎6e/5|Y,2MrEѵ7PBQ^5ŬвqN1K+]eʦ-0LV^a6_S'O4#(G>fwg+&gV =/cQC!NJn^:Iy`k%t47*9Xg +-+ݽX}h5$& jCլuȸ2 5rӹMw95zlQ Hn<>s MHT@²އA>[zನDrf:Xb(|Pw>~wE@k擜I~3qQvWGD߾HA*^1Nb$am3O~ޟOCW-?l)I tl{y#/1C[PJSڍ 7+Acu6@f̌~ ſ>$r}ɚf()7ٖU[(TׯE%^Tœ@ꊌ*ߞ %Qp=mSPtrK>JWUMa&~j,KqBs+eVx֡_,{ŏ%D&vY~> ݝW6 MwDuҋ!(:徹37$Va#43&Lꪙ`#,4 {KV1Uͨ{KLmYX;;C&Pgh࣢./`0kLkОaZt1[k.% ɜP ,kɸcJ=bW[I8]jۑTza`yfn/cQXrm/dj DkAl\kb r~NJ)+]13^%mxIaCZ `D{$e.5e 0o!<sŘ?s/M˸*-P?[y"IML=kqD/&gVWu*Y>"6QF~n/tS187UOٹ$Hc L+ @{O|jcU.jD{gCrKT/ t-ҭ@0sMG%eWgo0nިC7BZJJ.*R϶~ &a!?% $ 5-{E " f&|Deʭ_r3a"ĸ .W+UG7Ttj[x~}:Sx^]xsW"ArONQ*@iC.{1Fu>1Cu* .-\-༇Ws{K ;(t}@i|uV?-A-g. LCeAe)s@d#v: v;aPՓhH#y4gcyi!_XMjV@ˌu^Kuv&66R*t@]stڼ;Z]!Wps7KSnHn 6d93W'Ȧh Iׇ.njth0] ~(٦4=.ә{!*JlW\{,;vn c>N[OٞG@iZXٙ?ǖRx LR"ձIQC1`!0N!ko4Ti)Jjݾe^$$J#hSyhɲpZN!!XET| ʒiD$9`ՈTp#*%7Gd%"/*qE?q2*85.Ҽ1M|8!a4rְ 66]Nm.TwCtͧ`qΡ== Eֵ؝ݶ6N3r_:Q\r1GE$CAjR7{=i`zi1AQg[3`Gˆ3o)bӜ"E[)D'1>7IByջ|Xh@'bzU\t`W$m nuLg$KKTJAQ50Uhc\^p~Q$9s2{pteݰ 6Pp8!;G[)4cƓV^-BT.a/´ LQtMcQ96O]xOniR qQ;2jn&K^`ȁLt ; .qq]1h+b &7FX@m.=> V%>` pU!&Iicj\KUUd2gZs?6cZz,Z-quZg} Z׫{I:[,\oLVh&'HQw_^XUSr<uplҺw>l/VM_t'C0i?T)lݦ6IMm?P)[48 x(.-k_C:U}[E>|LlP*ϡ&5DcM?82J[KXz y$վNSLEs-vXEN~/1Oؘb/68'ɑFiϙ~}JiDWD +0j8(}ׂ.Yw\3JP)v׼s0`3Pb2ܫ%+oL!%ünƦzu$e4rA=ഫ_v|3uH [ v\ϒ0[Mfך#eeф'jȉit)϶6F+^uMJ3[͍6ILe7<ڿ !ck.xԗqC[tꐟLv4>Hcւ$-,PPSəfURvBRH|pߺ)z!cQ豨D=Оu2 t, ׹ClLȣ"MWʉJ6Q@!ތa 5f_Ub@'zb%Ht̫1V]ƬV"49 yǭ}xmJDUam%jڿifl 5_F`UJ>//4=% })We,a|L\~%IQ:fM ` d8nty y ttS#ZI}@{? +3O"eXHbx3^Ad]xV4;nfq웺7 5[  ϱ9a㉯gmX+s ` JComb$_&^,Á[UIw} 6<{¥>km SA̶]$5@?ѡ(JXfjyaS1>R9jqʐpN]Gp&]қb ?\>ތٖzÉ!q]q %tX XDRx3n&($\"cXt?=Yi.10mGWYSi? jJbϹ8F9#+6؅x] (cZm{T_0Ca@c j,ɬſL4IP5n7lEd/ Q8d6A-ʍH`25X`JL>{$^v\ )z_d UKZ:U֒,sV vإd78[s,G{]A%u=>d:CXms^H\mK2d](Dc%!^# L}ϢEzۆX(Omk>Eq҉WBX~ȚrsVeb3QZ|P}CF`zo 4Xi|Eƪ4ߊ>=:ɨU.M^+#ncP0ҋ>8ͣypm'6VE}`T# ( S_?!oC5Lv[U6!r2|k+63r٨Bt˦L5C4ᠿyJp7x;X3b*GH:qTCFz~ͺ'+җT8I^6xw`l$ *菵ThHhX[#_Y>FS o9Ոx20 ->:x+픋=J$# pg|)fT '7 L,R\H9f3}WM JI9IN}6[[-gKe_Kܘe~;NL !R !bogώ|e{%+^ q ߥӃ~dciG/e]X(pG7c'}΍S% 1Y#g付 CDZd0JdoRE<רl(Ag3 `%͎[zBB(g$h­xZn%lWm/F:]{a ""Z@b-f)G*P^md&tAvU=Bw#uI@cd) 8R09쭆4WĶIk=MRljMw8cav{icݟ*Hmrh>Mm$~k;jگ[=&#r©+6k.7A(BU?(inŲ=Լ(\ M ͙<ÍO%ӼU%rMAu l&׍AAHP΅~i-A E{gz< wM;VAAOLrEmP̀ ($_%/иQ,Y#{l糡K,V,j_,{úiVHgAĎߣIXr#ն"4!";SBl͉v=`F/չ'{(R(R#R׵5SZo]xtKajHJ=QU-zi" ׷qmVCi`Rv4F'> 4^'6=$~]EGK"Io]QQR' "KrTm2Ma6޽H0sLm,ez  ]^-%z^Hs{=Wc~X݃~!@8D|3hfn?igG6<V`][W@UjfGFrL-;{,r;ZHM;XB:ҟȒ~ZV$Z#k^.4Ǯ֏3Cr♅PTQ4?D5uhL8wn|RiEi7ӦIfuM4cUzAC[%Xk fF)P|s7jX"S]ɚ=n0-s#tԾ{Y3͟౯}?cze\bgv bo/ZFy]>#03NH&f2w܌3EUPC}ӂh\#/qw­ˎq&ZPA7{`8]k1mV OK&]^2ւ`UP_L\dgW2CFJ:w5 (=(jV5iYT7c[ZJzw.ޞMCA xg}gZjԧV0Iu%29FiGϛ{|Jr~}eiY9c*UalbĬ mтf6̊6y_^ @$wS"\iUzX:BnA=Nؑl)I(X"RsՌ#Nд'AAo].P*GGo1Z/#׀Qr5 mb }H,ui?rF  i}! AʶQ38yp\}wć*-|fÁ3k_ okPVTKJiT_$汫pۀe.[%^H7m}Ύ~13 XGHg_e;2Wm7NxK7νlqѹܡkpx@AtE8!`yC7tvBߛ\$XGI3UW"MQ;>Nh΁Ƌ> s.27ɧ|8DQ]sx=L&w{wOT 2ڜF^^Ox߉dY*(Wm1)r1~ŔORj;鰯Mstc'ϼ,2L;[Sxi?U\!AAJHiqoƫx$NvݑLfw:À{CpCڂ]mHk䆃W!Ⱛ F*;~m7=M{l|?&[K|65?ZFv\j.ͿK%־0| )$D8~ڳ|66@>\Ѫe4(7R(*uc'z"kuxnbȻ:Tmjij0`&;5*b- u 1r8y[&㑓M{!e\kz\C |WlEvgȒ!1!Mz_wn_hikcBQ6YN-;eIfC0/]ntOsQu[F݆'/@BR7׈wQϴ]8L"VK B侏guob Qȭ?ry̫۾aAc%S ;X6A\IT2<~D}t|i YR;;t ĜKC8 MCp`(d"2r;^g/3 ìANPH`; 쌑ho`O\[&f/!X{v|8p &c%w\` cK:WWHQ8wOa2n].ӭ߱pz]);;vmS~ߠ> V{M~=b6[tg$ T-np@x{x?!5^S-(|K҇H݁M$k n.iʅ/IR/ yBZ=eau md;)Zw9m6l6>}0ۧ`٬5`7]|bhUQkܗQ;]EZNTRϊp1siFcKɎ^[ҢcߊǦ^{LU  퀩¾-?\K" °|/οyÃ=oA,8kpkg&tE288f r Iz#rs'ZeOS݆`ԯk vH]` Z6eTm2n۵d%Vl)B_'aQ4aQS%.a J4杛jw!*byP*TfPX&)D3N ~K Vh_rxD¸pU()'r3pj]-I]I3x>q pB ; Tpy8MBiV֩LwDG<@7 K5檹 WGKå47#=*c:;Tx9&e?Q{mWG&'_m CTFNN,q:nzL r#+g} !L\L]JMM7NH0szևwTbsXmX*;q  B+mK9bF0?|ɤoU{"agͬ?iscYc@sT Jxzr`ሴ: V{ ؚ7tܲI3epî3 '6(7o<%AH%3b/tED^!rȊe);liҩ![\^EkWFOr]e fLP}ЛR36ǁA}[=+Z@ti[~Td#x!؍ ֘V kL328ld\g@ӽy"PV=FЊm[SKn ™ɉ3)L=h*o)2߫'&5UD&7tr!V%E,U2LBӼ6V \?Yq\=itEBL+tA :E|a"‰Buwwj/c#,B`N1qN؛6Xj#Js~:@`f<8Enru $Ə?wWo_yP]d   |8#OnLY ?);Bm]% XZ1*ux13TfFs+fL=^mv=tZ%T?)I ,ֵZ!ݔók=8>=AZ^S]#.G/K-g?>cF#]2X?sXLO](ƾz(t;GnbHΉ,`9 OfiecT^"K){ԢJ[ v1W=d=G '9%?]{-B|1 귐i;\#V䙧EoT~^%G="ى22  #mekC&G59::{H(.g @vj4?F /4VIT/ 1~ӎv!&1BP)6!ׁ"BvQqNǻ}~W"g=_ك?pcf-Ë1*K(Wህ|~Z@ 1Wv7dv8 /ು:'9^7D,2~%b3OAh :%w4gZWe$KiQjfÅfJBc4<+t$@DgM Xd]jՌfZFUYP>H e|&`ue H,qG](Rc;6(YEJ˺J[vdJS “4YT(S h⒤$csUe#U UyoU0P]ć:+6 ˯hϝ`ꈐ[jP8(@Ykt }FEWYXoFڹʵ(Z~}'oA>Bn&ʁV2 <)p.1VR9aZF;]OZ%Z«s Z9&d3g7S2*!)ZT/ *q`*VRM%o=ԥyUaq}FgvsG$H{'WOP,)RQ hoP'>UIӬJ!Qj}eppÕ!JX)d" F cVlMX<ŀT^6ߒSK-Flȓu!줐o6AM2/3cm f[eA0;O?8pju&IL'=o. XA !rɲ[E3Oy 6۟=04mPHu3;ýn5X6<^IM򛵐`RFp"WI&gqR|NZY5?Xa$"sK_Æ 4J Wix?ѣ2R{{f>Pw޶ % ̕ baxHȹF)/djӬ}1}XؾJ]8v+5$Y]Y.9J3KjjؙKlp`CyL+RXjOYRYxVoM ώG9Cǵ2Toa.?tY#|sg*ᕇVf_<DoB1']BʰyYS[/OOkg?:^cu9zޟ]U:DqzjamE^i̟FJ2pˠ}f^3T -ؒB.[~'r.:|~/ ũMUsa ɨ4]fEό>Y}3ձ3|Y}dsTn2E!e;OSd@Ӈi$/7a-6 &wxԐcAuH۞ȕxxfM-{=%g(7 BgɻZ)1}Q[bGl\U_AjUz$iM Qy5IliI,;q1z F-L{8q]->6y Tڠ'%'%2 SX722<{ ?OR~U;^5)o*/Ta'r})3߉EDäm7zߏE [8_l hdKUؑ&m=e"!ZJYF-Ƃ>vO/!$'6Fx^*%YeCrP]vN ?'ɞfgnԲP2h3C؛YȫrUN 7[J4(YᮞN2sI]+iCQ@Yh.^rOtﭵ6]O˟7Qw(V OS.2U:CvF}ʛ!ŇtoǤpHkɂ ]KF5 *BBk'_$ 8eX@eg 92S 1(|PA6vcNLmQ zZM#Hq>ZZ].=O>S uY6rsbe K+.>$tZ/} x{$͵(&zz8STO z87轖PK֥޻l#>{vfA0"]0յN.n|as\NyʟM5Z@ށ[OGK4]x G,;3Ԓ*hrk^zL$ $AݱNhpyI̭a)9wgĠƕ] "*1s7xDA !`q14˞xwZ уr~]Kⵧ24y#^z@e$ lUВkn1 l#\@,E߁ḙt(udW.X"RZжmu;EXHYP++[ ³f%Fk_15bDm 5}ǖ@z/L?=0q <ݹGC-gr)G^kPH !q~)ӱb<W) r0 ;%rJh k;plqʲj2\1-S*zmgYhҲQOPc&Ϫ=ɯV9@7^h.߆ 롶.Y1 ;1Km`P.FIf,אؿ5]c*x1)#)7{\3\δd*lrѦ )J8&jT'QGV`I(KɇOf0nfNdΰ9CŞe,ߧ55Ԥ&3it`Ig Ľ8>9B\+õcJM1zZb?${cdY+&j`}CZz8s%hܒ/On|bz}$C9F9@˾ -'B+ %LG"dOlfGN ~m8i8=0,Vl'ۿٴUWؐ4CIǜ};2Άj7Usv9ݓؠ:Ub :~O(j=rKX|xZ ep>k`E4Sky3_el@)3^.s|]KnBI|8$_ڀ'=vQ OI#-fY\/X2Sy\H ۴Jl2 O4)n"Wq+y}(eWpi3Y64)m |Qݪ*dx2\fX&NY[oRʭkȦ ~gѭ<#XЅ yX$WF흝&$o5 Fji9$ȐtNWu B|T7<^l*sCw1D"G_&M >2$0-KQtQ^E4Q7ﳚ~?7Qva#5KtQ}SE#/uhZiv90abOX9>^SE ͑ ,09I,+<l20!It[ysN~fR)~GEYfWu_ʳMo"X K|l>Lx5 cUav[,V nmGra|tyWj9yzئO:OfX$Ȩ '30ݜ %ǯMf/,;Mg=CW|R֓xѠ-ePbIy)R$nu ^O3ȧ'Ee\ ۳}4>&OiaH*,O)Jf]B JP" ҨaNYXs2ebE [,izȬozQNQ[xZIr2Cؤڽɛs+VENGCGUHnh,&%4~ӪK.g)M' M'93v.Vcœ)GXе) JP 3_w|6$%{ RR^H`g?'\ @Xd(Yj~P@QEou^pś> Uc.LA>I*]ۆ9P:E|<7`STg8Qi:i(վvjPv̮ ?\?¥GznS!UuN9; Q:Q FGk`jJ9u]N36#M tğъJ|ZgEpVUm+JF {& -ov[ݲ&1l'MBu2}È 0I׎)m΄ǕqE=Zhs7`bң <\V <,S|*Mz:%OuȰS\[s2fZ|#\dΦu Z>6Zzs`.j v>Lc?;U.ͬ Me0]VPV䧙.5ڑ|So.³eajaDYޙ]Қ" YOTF?x?^kz`XYc5wVp]Oi4{98U>q/Inn4Q'k:y̮ɬŀ3 )Vce?X #r &ìU@W~ygۢD؎$Zf{1GX c+xEn}&}+KGf=ѝe 3-&16k2i)2 /frUsנX~ճ=ՇAX]JO!*+ Zv̐r?mu'Awm,$L#uJ ̦Aman hWUjT*٫q`YuhROUzGsW L 'pA#)+s]\/(zWePǶ%ǑgS%‚}nsV ʽuQ3=ςq^>ilɇu= cZ:⊟mNUho0z1.\P0;شMܷ35bplG5b֙L@/А kxelAkVmHLo_4"HՄF[/ j(݌Ls1Nt8M*`-EEHCB[2ABz>q>0t&BM\T<Yv /$À uc0[C0^Sz[io48u$"Ip˝WFe;M3Ǫ_NoBP/y4{3 _!ɀ]f/E7Lҹ+풕/&T L-z8Ιm] =yYKw\5jn 3%v#'P_6$A赦'[ &T샋U/PƖ:5)G >^ƂyɎrs}'EQ0\i(z;!-7`Ď|7*G::. IԇNQIVWf>3nӂj<-tpa3JTKnÐt3x+5q@=). IWJ/T{s갡,C#KR y7LWe*3CR :m>REY3cp8^(ⴿ yҞ>0q8褸 0͔7Q;6 :# K9 ln~bHsV7PU9bh-$2TݰXH 1w0>6V^(_ >j#)U0Glx?2 JeW*ZT2iUR& GXFKՄbyV*OE+iO-9$-)ioV8YJTc8'u?#Rf6Bgk Nm-wq}(FJ"F"b [7C2q661\vf >gXcRetyk^G3M:~H `m}jԞ"vb0$;yncU\)]Y=8TVPXNm+1%K"!I\ӭS:zM5'[&T}0KP$ @2\F >(釳R-—PjI-`X5t<7btH,# 4 HI:LFrN-2Rp 5v/%ԑ3qx\t9*hx g,AzABB39bg>u%5qtM|>hk|w UiQp=I.vn`9# E>[;TH6kICn`3a NbyRAqa6VPLc)c`_WQLRb+Q wwNܵ+6Q‰ ^|-HK^՜EoK,lMP œg~pΈ;G8U!)ig35Q݈Rʆ|?X%GϏkpבD_*o%jȩLaDD#OmݻctRF{:A V[ic"ڟ6Èd4 #7ıV].p>[WLL]8dgo\IK4dvK{:n`w}_6+Dg wc,78T0QFdnyR<A`tD ի,%nAFj/7l*8]*6Δ2 !ly$@޳яMnwAOxH'6t|t[W\P@~km{c w gy8)sԀ4WUqM0Tޙ5HVb5lQ%-,I_yP6OZcғt} TrY—w$(L$b Z\nO]Wʉ T=L@\xd#O0w7r+'t܎j/Yf?vWw2чݾJW>.~\YNڙ[)-յyKiͤ.x(vj!Mqqӄ;ȪnECA#dOt^/3)G,j9)~8ܨp5oVeCIH菂6$WVM&@L2Q8s;PdSꐛHB[6@XUϷY !E(lz`'ƿi@\.ŷ@,O˾}/]k6 ^Wy} XWkLkZWb~$LT%Ȓ972 L) MQ_1y_b%vf_cE4%uxz9">\gZufWdXRMG2) 8N}6Y_ZB̂Q<#-񽒂9QJ;$sjƇ3ތ56{{[@el-qn z҄dZŷHhށ=kE;drGÖ50-v+NAc#2M5cI _r]y).V 6*h̾kʈ,;uV/i u5 89k-zHXNѫ(/hH./\IJ9թބf]C[Ӯ5#D7(zm4*h\h'͜(6BQ|%(@hc3F):1[uy3ᡳG`ڏ;EGc؈mЁ\prR,%j09!p#>.Gl=UޮK;MXT{hQ7k -64pos7r)+{/{%1洸 7p_!T`b{]GϸmD uao}.دY܎8gl{6zq^@Ϲ֦G'npxN98}4n|C #^" _Ή&CH}^>9a8=5N=hYis^n|'ix"*=e~*srפ cxpؠqmwIjAS=Z+FWI'eE K*5h R'i (xs}x?ƔvMfE#5D#jKv7M-@"]8nk%GFpߓXX!Ol.Si58(hAh/J)QP: 4*/,Dzp`snFDsu]Mt/9aQhe#e~[$-i)[ӑl0UDS;M{7wǁ'EB$AlZst`:‰ Y&3ʵϩը'V9sTo>HTlrQ|sEe NV$X#7 1bIB}gdmZF)/Br48v@oKGrV.@ڼ>DwXEPП="'@FEC2 TGZ}a-ߴ%X̄/lcmoE+۬V ́l%}]bt.1Smi(#ތA7*=QW |d?G]lIp/d̚n`:G2x@=T?!pCa[_ \ǍXafՌЙx+ l(x3|[U|O?Y ߑh]3~ǓziE\8?G\޻WT6F΍UyʯΎΫE͋o9L/K-HZ;[军4t2rg+JlSʅFјt/A(͂(jGMhn$Ei^Zנ{=s3Sr&GjJ \(,žO:-# GztGByAp4c ]:;1P1CX0ogGEٺ'3_GQLW…rߊ9S\ZD7L| 9RVf=qw_i/!tNޑ cna',0w1b\?\(R ;v8f[%ox\=cQC:}S|3*P,i!{RO) 8+ڨR]1]ڎe}W+ȒS,d9"$mb;i}9 UhEU(UZ,"WQmJN(r i2׃2eÓ1>J8&VܾMYG"&akkSs|#:KI,+#P*e*ŕ"JbP39a|OxTZBR]_ȶd?tskcZ/`CK%z0tVY22<g26w|H .DMYVҦsb(>|4c + J kQ=Lhk[=I ^w,҅ǢWKt)&*Ӊ+_rFwy[ %pHW{8dH%q ]kMbMtc'sʜzkeظ \| 8F lnEjItq- Tȼ|>52`Yc a'EK]o>ݖT&%AX(7jS=JMx~]t&nY^j 4Ķנ ﮒ<ӽ*ʤ'uމ; 8SͩDw]Jެjbj^udPQ* r~x듙2XAy.vY uV1݇l5\bd m ZcRG܅W?ŸԱ _{:.{7*!>.XDw%oFEopx6Z=PNq̎11`f]n=d~6KR \y2-//Ryv#I? ~;nlS&<]1^N&xP!3_P`y,+`m"!e\t ^] TFPfDEΑ+V#c+2G]) UދG|#3RQ2үXH]if 51l-m@8we"zE):@L=¿Q0I? t,eW&jO$@MocTSUW-|imfuaR4_{F^\Z$4:oj%޾nCg2"U73.e5|<58ƌ6fn?l',HSA!Pʻ4gFѐMMO Q/iު S฀ ;.{ƭtfZR̽¹Xĺl3|Z m޾ }~g*[_ qm9]fh.bަoLjltw<ȋk߉^C?xmi+Qt=B0'XMQ+?${ ~ث(/`jbC?~v|/.o{\մAHFv[ǔ6꜕"¤xg 6Tbn2\5PHKWTFsǎًUk/%iuu<4b†a =QDI(vvk IZPoHZ-Uy#ļ-LFV{uwA;ԪU\!Ku4J͘U ɶXr>P77cEm&ŕ#z9mE Ԅ EOugC"W^qɪ[V6'+Fs^⃂Pӻм@1b_O|ZtʶrkNc^/ɯN+8Ҟ W"3{PW:lF0fRuRUMzͳ"N>q:}sm@aG 1E{メU~PhGUM)},}lE4p8@W 3^Dmxs E!P`vr)o[D?L 8VGʟOF'QwOCDQdDLA F4E{,-4 ܆JJO`r~,GUsR`.vv޿[:/S66z"h`wb+geݫWT )N*4GtD զ,ՃS`^Uon;в,*9 VV?cL!gv5DL$I j,w\\00GRк ?a-!Akx֨AUNdjUEG~߅-Z&<=Bf~X,{ T$-n< vcsEIuÎq.I2bI;]KyKI IR@0,t?iנ37 mqf=UCP\#3d_?g\/]%t DN]sY?YpF&0^"f&gpS="\({$=%UQ-`60ynuAfWTkP.d ,%([.vb5H6DL*{ 5mzeKO.`IJcww//k͹By2.^A,P @.3Qh]λLzI%M2s|E429YKP89lOn/bn"WMU)R#癿>WFv5P3ݓ|5RP.& )ƑZE\G;e#K0(Qv1VVơNW|Z37zDV*j_4~~9-p-X\cX` [VEbMe}pL}3p)r 7Gw}=>AOtO\JY sݡ#z(Yr#um;xƩ@c,۳ ˩,SI,ߵ]2'{+mgi/M4aӉzśv B)r%?UgUx^txԽd?Fw 82D'R9NY3ڤqQ:S_$p`sC/3a>J6e9%7oB e$B@W [dL; %tnۊ;鿹i.j WV(Rm*j_^.!2uZ4^*kQ*d!3J Qʹ> pgf1_O$3 ͶT_XX:ɓ#i# Nt(Iy5OlgCmy-9:a糨Mz73W_w>{xVԂ,8N7#* !)TrUQ-ӭر$o^ӊo7m\1@j~c SduB͒7PwgURBZ;; u.ֵ|3orxfM_+n5S eɎF-i~fwE3TP\]\#C8yJNdh0|(*x.Ǔ5 U?$VjV}>oW*)xHIo8~~-6[p|)EhktՉv1OOMmA N<$f11O$9FU5UNGa)`;AI!c( F%jɰ">li1Xz'qYxUg$`3<'+]ѧ T._EEO>@ 0[T4_[in;! jp %I\h20$) " lbY=bR'?(}+!ƞ;RzxZ1;J~Y=zQ)m,~Aw6vĔ@"F/ k0^ӭ%B"Wt~CM2ؿ?LE4%J9-W!;wFS}BVsmrX o 7U|9M^i0Fd}P%?o֎Xpm"&#dh3ɹgkBU_19ʲ0^tmPF6ႃy]oB;'p gyJdGC.{6 cVN;~^H&`N87ޑ19G@ ; AFG]NOHa01IJH'NΉ?DEl >L i.`60;?|q!;,ཟ֊O?R-/5jD:4OMi(oG_x.e|\mW= iɾjЖ3be5F2KDNs6M RSfsaK'H Z,e1Zɴd…5ܢ܄?(IX@5(%oO5=svmpT"6!d{_ȣAR$tr-j7)v63n)m qOϗNQڝeJnWLoaB,g & '|nX|KU\O8 #v!-woL!41 5we,h&C1:Z<õ5}H\ڽʶ q`~?80tLDaw_Ahᱝ- 5<04]T SIQ :1W?\1U*ff;w(}*ZuL2W-,[ ;r¦AeDb^%3i(&6eٌظZCOC`˻/7_K:ٌ8/>1u*7G@ۋX"1p34U<|N+wl3=P'"c<뮎^i>x%d\yO^JJ!ym^c8֐c%3f1vRơJquۣ:]Ɋ K °v&aO7 at@SB"8fNL!~S i pc+IDQ$|{=򎬲E3*O̍t9lf-&.wѩ7eʒ0'V7CH0cb=}v>v]c=$\',79-M {m"~̿Ζ3TqT Qvi-XС>y_Y׍*A`NJ*d)xL*w)y,yh@"t>ޭ!賘'Ic(2TM[27n$–홖(Yyʮ!EPC֔#t:hչF FnB H0W` N O5EEAᗭe#Xhd@3Dϳ3OǛ=o32iQUA10?v|U?¦)C0.,Y?jM3.ӣыew/ L5A~vWRU;h ;)YGvо˷pXNꞃ1 ֗t7om # N lxrq[<xn`ƞ/?b{\`V\5FW\Oj@'77ulSX\pW= a}RoJQxfjc[ƈ3hdM%u}ֽېY'y-U/hj[mZv{CwSwn۶۟KVmB)81 sҾOru{ߔN cqSqi{&7Sr;Ϣ;e'!ШפȲ, 8K0u :fN *w1 ƙw/Uj ( V)hh[ @ ,z\AgݬL$/\8)p볃bhfdz넅h@#/ѡqd5Ev* r F||s;Y]Ja*+036_8E`F7% \X=%(H3P/(jfJ^`kżVez cPv#KY_ ,wM*2nXdZOHڪot6XD~*D6RHi3$"jf 7,r光lR+؎ ?5tg#߰Hemhq@#b^/f524Bl>S^DC$;ywc' RH/{蚵EN<t dpgE0ŮQBS X[j眀`-Jh7I3KHanf  3Ə9WNL [=\Vh_+7qS^j_DH89_o蓥z-re,؎j:gu<0ZMɋ@cr1yT.1p.6S^,$N(8e*3r8\r>ru$KE`kSZU5o}rU$c^Ǎk jD{mGKXH3eRv{>&,}v炳|G]i8CIBv e͈'mZi?x]xKmak z:70ʖ f;bz=Z ,Xd)8*ƈg%='TpQ ̏[:zSjN΢faK9`4kk- Y֌3*v1FY=69s[/anBaJe'ƨ㇉ױR< sm+{{̄ޣm/;=4ݷǐt^!7=tT}.-ԑx'zSJ hݯY\P(}e.Q)pC"B5{4' X+8{cS[鹇%n:^4-`f>[wkQH[ R6 Pq^RR) :3ىT`!&t¡Z MnX¡操lVcmSF@i*۳ydNCqke!1NA!H-4sih?)7 GECΌf|6 Z#Uq|m˲6`1}Pb]%}#|([9a& 'pp+&rq>WC+ , 'ExpeŸH.P4xG+;q+ʧaHX%%ew>U{[?PL~|XwgEWj&Z(\$yf҆vP)㬑@`_^ؒ^ 6ջ`Dst [cN2,cBFYͣz'cW#u^oZi1>aW!m<~R?+\ae@rOaG$1xEJgRz3]S/t$cD&GU/,aDxr3LQ[5|]>H֛T:!*d"uGy3* !XY(_iplB/S9^.i3ƑOilac2y1u]N$&|gno !dx"=&xX6o U0 &Bߔl!s5#G,]-笸o\fuvi PI݀nt,% . Oᦫ\;5R̋}>V ԠYHWB\2N'#ODg+UE7\Ca_ǡv]R/15iAUZTsLRePPPlCqGjD ;,~=XixqrJz9ɚQODyW9r.Lu ]98ti]9/I՜+*:x(1lcj?/ԡ V2hx]zeͧ g@SI1붓-1R!!IZdNJ ]HӍ 6hqO': |\/ן =)bI&K ~!?xs=@JR&yEIoT:ylyo|tX:Ҽ'tD[^WY虤Ix7Js6d߅G(U٘F<򶚫>e"exiZԄ[%ѽ%\h 6`ЛٴW 0RMda7r N2PAUt`4Xrz^) $Z}ܒ,hK Q4qBC.o. ]үI_eW"pDU|uDKR񆐌j\mStGIPfTF^zd#Np܇,}Z,9i9ßW0IGƲ_Tpa4*v% l) ~ml!=g|ݣoSK < D#O05f: DnT syj _v<0󎀟D$$4fJDL /k(<3Gi:ݚY  ~@[EC2< '`=T̅qo =(oCh 6Œf_lBjg9ut].I  N3+eI.Isx)M :p( .n?W4K^v;R Benh~ ]Z˵B+5Hsni&j2,,BD_B@t3iJ]#BjbEs5" Z!9:?v(_-W~s7v<e4YY9>c v= Вˁlhv*B hyGN^&iܢ$awI$kuc&]4JHc!)'' _P'j^$](/j!EON=RYlo[kl/X!0a5/8сε 26[(YGGc;kTW '(N‡ uU/JAsxV",Ǚ5kP.&duM|??A*Aq3S܈n/ Sh;Ee :8a[NÔzǑm. ]xuBMrİ@PwP?&}ía)kwxo!le<6KVYgMt6Pi\A+X"NIuu :y <2&z]o'A Q0oKgA/0-,>jʣoԪzjLe/z(iBʜBχy{ּex;j~J!!י`o`DJHTQ fAަp98P?38/a"ubxm52SqVp z#;+:5z h冴D-Ȏі`4&jT8BTH~XWn.)kzc`v3P+!*8i3ɚ*P0_K:p;{M ]4&ͨSMAy MxG HM[W#㮢I+j,!*O*854ߨh /3`9̊VlD( "gMћIN.gDh&6Q[-.y-֛w0`j2X1T1=KOv XyL"#pؠ-ѾEíDqQYA\ )5C |~ٜv\3ڟܹ2ٞuz}po?a'52qDEXțyP\P] $ï2J1auݾe[m'5b&Lf~fth-ּX̭Cn`*QVU W&totc-B yl+ԓ%^KaG6d1qfŨ>0$OVI.`ѡ]GJYsgo<%2GLڷBNA+66*wrm^+䛧q$G5 *_tߕAKx1Լ?1? ](-}KeP\P{iopM`7gKhOGCbqe-1!Sx2rҐ 3!s~7F]1QI}YPLŧR=?b*m\MJYO^%lj>Z|9ʸ~5ov$]ݧ$r5 +sۊSeEM<+'D BfRaaܺˇt=E%4P;xi:}vVBm\ݨɉyPt1h 3_nG$J>\˼j-s!l-y]1gijn CgWpR2󾶯&V7% o?S-9|c< 1&Z,:͗J@\ETY0 '{aoܧVz$zKxMoAAjyݪ!!FbzspDR.3U}M;t "?=!ceIkiw `1M+gk6]q2SBVyÑs OZxxCt`ꍌl_湧Eߨʍ[Tx1. e7L^7n,+Eir3U'5$Y7v]p0ɲ%S[A \px.6^oNog$t }9V(e󐚱. !U? oC3d^!1ZP e4 ׾܍HW-oZG Ot@2cFc &3dғ."Q\Lx4T&ϩR(Sr# ~la;+}`D's2N&&^Aʃz3/-nJyobВ. ki<>Tm9p7[ecq-3+@9AXǴB)g櫴H^'KAP9/~e3eQnnIɨO`s8=@U$ 'ǜ \e/CmI PIK 1X,\XtCc }U%YG:${%NSϸ7[3nE'=C˽_gEY pU`zO!xw_1]Do"^{V KCyrb ZY?H$u 9)m~ j跪"zK9((-ۘň̺x̭B&[aēqq/T^6L=.wѶTZX]S5ƠeUSHe%1U G[P3jY y Xb F~? f\a;kd mӖWwᏮ$@f^@FMDm*#0OTߡ\`y꽡UݱkJ":G\"qam BUyciuo#'Cd7IQ¦܇fFO>:bLRtX!(x0w^) u,eSq#9מF"+4Jiȸ̀Z9؆~ﬤڧ R\1mº!̄I(@+=?GH'UC~J7w̡ \,6;! ҔT.z|"O1E-=>%Ty8g7Djgcn bB `[@F=%`Nt]Ũ5xo#!W}&zٝ!ΜMuj.>/׊ZfۿLLܷ ^eKvfh߸cIB]nݵ\U93z5iK~OK $5\Cڦ(0:&R@ID8̻HŠXs(dJ_E(%OTDw$19mV6`# k}[ Hnvzb?sxI"_W/ILMa *8 rܛ;=Woz0L< ;e?dEH=LAZ/N3A͒~S#,CCgjat*5H߄2Lӣܭ ?L$7YK9m{i ~yfVgȯ^YAچ0w^^b<Y4K9G] 9{PNX{LX; YdCyo7m'iݱ$2&:k@ 8)L3FO[A91xL4=Wh]` E >2~ن+p|1h UrSɏxS2=?MA Lљq5Jvz+ p)`G~i χk|"l-Io+l'0;2:nB@`NB,&%!U=i崑X]xq}D-VHd6(Bע'3/32l=4v J A&-jjѪh1xHIo=Z.T\qYf} T.PIVNP'^v4ϘFیCR db4K#χ簠X>I|))ǶӤ1͆;}kf&}f/ˈ͆- "6>[1OM/CoH#/i1n9\&v:%t[l;-.,l"(ۥ`gc%C" eﷀJ5j^'BbOj \Z#,@h~k^>IFBZ&XyP*av);IqU Xr&g IA)E$]P>#zֱfM(顀g)' .%+yPhrK ȿałȾCl 6!ߣCQmEi\k seİ*nɺo"˜R1߳U7qCVjReM,,3քt3-ߞZIm7Y;hiiXRmƦU메z]l?|#"pDJSS");ZHEbֳ~~b "+159'&/z= 0! (Rz|0$(&RS{v >OlHJ;M&=oȰ w\1@VN]2xP Aɉ9/u؛aI-4*GGcieBwyEwlO=YyU1&%i.l^J :5Nԍ{YuS b">֮k C4jebF̪u&o轜V>Hy9xU'<ŲHxAP5N`~s#m%Ù&8M'gj LMx]<'X[3Oj/է4,Fe0W>,1 "{-6%o Gd3Ȟr$γv8Zy8 2zL-V9u`#1SczQ>[ɴ2~^_fc1'Jiz'{~Z>דݭ:P}o-<ѠF44L&~QgEI9 BUئic4, st< xO쭒Wq-PRQ0+)+8'FUOYH507%O6sFX㓛/#"$wx{颺[[ε⣃@,#SލeKo`IP8h"JA|to+pfRc1 z3q&e1F4Vf*p8J$簉ZHt[΍H`̧i2 [| t͂P2:uzHjyo4V`5 X^qZvfc}0npI_q HdSG_}:Ld |Efu&;lOHǭfb'?v{vΎ^m!+:޿;k.\kYX6.HFL!-P0R!ҍղLa} o>d1M  zRT}_XSX4ر@?0#_w_ZLAipY !@t׈]g!|r`Hk:'(栴Zf,j 8Ə씫ԉ$HTH9se3P%1h9ywW~h&EW-# C=fh=Dxcᑱ7D3JvD2`njQaA J]yGSfK@?Yt怗s KCϯl=TșaH/#1ƾ@&%Nz@,L3t3T^.P$TEFL@-T5l3vpIWeݢbM{_Voe2+ULUnzLk+\ {r߫Ɲ=0$ʪ(ޑOkbubXo岱\揗ě&r;LƗHIDhHugP}q͘xSYm6#j+TN7ט@|=I'vY4jP +[#5BlRCBc0~S71oZmc<OZ-d, )Rnз$9UQXtX&TX2%CVeKxYt%ΰp1*9,N~T*V闎~TV<#VKO~za6)yGJlI]xܳl[-nUk$)܍KoݤXb ;"{rEDLE;Z݂⁤ƩF3O99H^]H* =.\w"QQA$`DXCe_/:8UJ֟RЍ4?J %ӤZ=F$7[WN4Wy(63&F @A F }t&~4_Aߒϔ~=Qq<~ܓ}` /Z1Erϛ}*1IҮ:7 BBI̢\6/+r W6g!* `¥G٦fR+3 ^hX.?W|y ,,f-Ӹ U Gօee P@8DFIcA:U"$|Bmɂrh m| yY׮:b&bU|T@"p00զ{Ŷ sF{IN*R4}[kD#l'qN*dn=D'Մ شI r='FC9DZ -.A3FeP>(>1.m7G}4 pC0 o3“ڞ+GT[`q$jÎCQ*8$3vOmzPYP~wqHkX͵渄>Eڠswf[! :5b@u ~G ۙ6&i?Ksq[ iGLpXlՔ5@$kj:OZ翉ȑB]ÓAĢ:"oW3@hacϾ]M|wG0,K CfEvKN9Ԩ^~8=RwqJ^Fۣ#yl#x^|f#q-'"0Tw,'a+#?)'e̝4~LxOW w)*'L@զ}^r kՂ,xdp.m*FB r]O yҗ {?J-3<}d?)`Aм @TW=!d)x٘*!%ZݜJIMjN`T+Q[ xU& w%R;]ruT1[0OC0N` x8 Ҷֶu;nN.=fViϓY|粚@3e=X)8&!$;C.jМrX M$#)N;a njL]Dp\2Vh ׹;2DFZ36 bSѫ~p)ZvlZa  IגQ-tt5P{搯T?S5dĊrttŅ342JP~gL5InkN>_'֔ ԭ k~IҵeUES"b"B$֝~a#Tc?f;_/5 N} 7ɐw+lX@y 'r\ݩ=ɛ3KH9yjOLpp[rR%!q[XwOo)2óGzfE"v)(A=j/$px+WOG\ :c|?Iy#ֺ݀Y !^-uOkKI{xny)9}><}s*56U恤nD?0v#b2O:B:˿g_:t7<9I"sdF-5tܫcHQXUsMH@fuA}Mn0?wfeSHOY%[s{eٲaQzN}ʨvx$aǀutҼZǶHy"7BfiN=(4TAv G=9҂AidO7\Z͢ }}WYzuwZma=M3J =:8#`Ε$cI.m ]kzq5jݚftAbfsU.q7ϸ́{*p]z]$%CcE fOf |2Rq0 q%gM~52b8Gg7#a|'EvѾ6X9}z;C%쐝5kIZhqcj SêVxV!Y꾝#j.]RM1-F! +W]MwbȂ|~x8#BALP[4U0.2.K>+դNN}JrvOy Æf=bpARH#aָ9șW1>K=}C [m1upOɔt:eTO ׀ĉHG!,byjtZ tN\ z-FXy:iS;F5 &nƁHf"+8@G-:q?6Ɖ H- .,mݹ| f T RĊ;ָRW!NL6sv`q>a%Q=WlHqJdѾ?8װ]K[#_4h|&1F͕/b]e*n qv"R{;'ZFa.U"&zwUlasADs"CPxjQ#I(.Vd6nlF.UtԪ\e5g5C9|(ǥA~)xrz;AZ7b}w}Ҭ.4~YRl|oG8ǡjT ԈKHs2it7Y0ut w$׈{|p:' G's͕܊Y9ϥFuZp;jE,^P.ՒZ T}@7T7J@ ?S}[Y Yۂms&WQ}Zr`?1+#l4 ol^u\kAPJǗZ0ڑ3|1JmA4dnΰT>\vqaG&ɞ`>,JgGiJ \| (172AWWys~LKCn |h1Xx~ƾDWq";6]Z][sO?zia>Aݹ:O@okQX3ROL7ULHgZ@킂SGd,Tr׀vra0?:y*{.Q:t ޸BYp _xI f=ue\τ*җ_1`Tq"9Fz3P>7 [*LI Ԙ~ = :3~ "dr|T'" pJ4]iѳW@z¼E <W2Z5{G,F[(iț!lwٽScWcCdϗᾒ la:@1O$v"8CM]jA\舨%+ɎI]Y 2Ql,6$.R r ]{dt˩%/OD%hՊ>˔1557.88@A.8/f"FhtxE:e&!#Y%mƁ*jKyS(;v]>=$1&(F`GlJVy"QCҀ3KaJ7IcEhGw"d N;̥?@YDqYF=\B=DdOMi=9X"!n;9qbE " ԉrε,a%z iXgR %&:kp&Y郠s8OLJ rijZհ9 emq. _ ,-βq7QgOa*,%]xpOc]cqԔפmN=#$TP9pLS#!c(UIHnzWb m>ұJW|eBE9ַ|F!4)A8ŧO7?dBj`;ML͙WڽW-8/0LoRh8Cwc¹Y}UkchS|K0Y>,~[D >m07.uYuIڎ7688}N^+qXYvKPXT'W̿H@2BT*L t gvO 7C,\ .w;U\Jk h($S[3;gتQLRF ZlVxH sZ'Y9o /#ͻEQ%.\&+U2#Iy70H=LHjޢ3e2VVjwΛ:릠K/~ NT&9yə$j9` 3\LTp0OLd!zBG# |F˅ ~N)jҷj7EHCiMo /VX./) ИBTL3R͈\F6k+aeJ`LY/xGxfN4$z:mq xu; wNti_Cdi3'ݳ {^VXTgZ7 \Kzc, Y@*.ɤ{>]:_[@`QϿ6!(mKmݦ~"̘* 4)_徟KMHh'RVVד") gcލ.tCw/Qmsj7 ?]G"%\(W'* pXUM_߫7 JmtkU$;jh@s85E/Y7>t ZkMwSrOl*Iɹ_'NlŲ +8цGSAkk3bRM*u~: ~2Z=TA(L,)Kמ ԃI%l%@vg*@ ׄ5<$mkWtOmʟuĄc!jmW[DZCEp!MEh&O{?NE2Eevp_+*.Y{ 'HtA@Sp'Ga&%ډ)v+\n-Ѕ6za8+%Ir)Pv?M~ub۱\Ikte(O<.5Fn,GTQ o7&sBK Y?e)lxf; Yu;;^f Qt46_"(T׎ qSy7FvUc沠Ob, Da"_ML&xs^}/_đmu"dd*G 1>Fգ=뼸M<Lmp=lou^Sh;;N4jQ6nۉ-u&$}1Rާ_?(r2_S'e '(E;y~G$:/S-Rѥ5h#;L'"DM YE۲F(ѱ Ѥ|k㶲ft̰XuQ8)`_>Uʑ1B*4~d \kJQu+4(Ҁ4ĥڷ}㼟(.5bw:UQHX%!My2 un͚y޻;ue>E.([|WNēGa$;LS/h1?)K%@Nց\eEw J;&#Sf !W v7#zkAt4o+crJ@ 9>pfdlms`^KJ绦>Y j=GY^,VIUO1&([8UqN9]',4yF!ewx{yʮ&7Ʊ뿝/g͝sG#D'ӛ ЄN,lMGh@+<{Kl>a_l h9;6!ʰzHѭCO&G xW>~J]+Moq(-ڨ.?{W/V'P3:Qdh$Y+c5 OAW>-_Qc"dYA42X64b<^)];C\k܇7bF ڹEQ7By% `ohibJp߭Hr į[4 E'3``yB]5Q{DM!N SLpU"1S a 8h- /ƫnSl`a +GB ʨ-ex_ΗhA\Pv'IUŒPRkQz7neN .b@fjx^=EKR.WH$@Y"wZ5V@DTʆr15ayk\i GB2Nܚgy%У|Kru0yC=mn OCֿJ\K&\kri`V ^vTy8Ce D&nקPFv[xLZ.65%1sAmoW`wltv>r! _Z:~(T&-3<('_l:ܖVɡ~a(j>Q:p@N[`{y m{p9L;[g-4Jt}(e힋>''{X t{1L[P+#cW|B>&s@6.yg>٦snsڌ S|VL"h/xXEeqJ=g4i23,d&FsRe*ѹmYnxX);1ھ"_&`#'SRg_Y?(#3gcW ۺ){H]E؎d$0ݍY#ZQJVuKM*ȸw\~n e:*hCMTiE_y+,BV탑,e;[ަ>o0^)ӧ t`VUTXX?2MJd<ǣY[/|a7.=Cߦsh=)h[~BƀGe8Sp:6>ITsCd~-;$ OJ?&ӻ"Z3'j6CgSl!x̀+%ؔG +0U>y~J+ 9t邕XF?9pœOEڹ[uG@;-׆P8"t x7W1挍aS)ۦqS6cgJ94cy5X:pwm>ov3Mzp5$*5$_=ܾ1EA#kgZ=T;pȿor!n5_t%_B@mܶ2pۡ-1[jߗKB-0 thEs:m:=40\oi#]hIe߾(|/B!vX <V%ު1EFA 31_ jІoFaQȷ{?vNPV :@.]i_f+\yLe]? z-հA~v4z2*5/ pX_iْ|Rwby$W{,L y[:Pɴ~](*6곌TzT8ԸuQcV(n/i%|j_ug""6&W j1 `Df=I`Pj"܅̈́4DU6(]5⩩%:s'վoV\b )O.I}۸[6WzTQtEJƌP{nExw%SsZȆXxs M= \ypVke+Rc)i|x_u{U6N5~&&0Nv4ea:B;,KD,7IroWi-MB72jۦ_{\f_QߊzOӎx ۖL2ALg<5Ol8u;S%㾳&:>` eU#&ִ 6QX v%3@e3&B%*dts-5=:X ݷ#v/9%"Ata;:j^׬d͇`˝LU3se&]w/5ڙ U'Q'F0 fg[s':T,feQ7lY)*NP%~ztl8sVdNF@^}a+5t ,ǚʍgFHah%:#^utDX&@^\]q alM;owTIibDQ(I^&Bʦ э qN;1ġB|M!Qu G~}^>D$Mq)cθh hX)|3Iop{SK+)ly`!|ᙺ1h@RXuHjhToiM.#Ch%xa?a$Gw@},k5zR?\U.%I#C"q6"Y fHⲁglҸ<+} .N'צzc}uӫm;}@մēOE m]W{؆4q%bv {gՃ*#wfƜWyC2hG~W^%O;t vqEw”p6?_aVe`,% t8iHAQ(Y~g6 ,ڀЀ2n 6AL/T)꧅[<` .Bx!*%qk"F8p>}j1q!- p:46@\/KR|_O6>:45sBy·z7ZJ=?L86-N~`)Qdnf2g,H=UUvڥ 0.g(rMjC@%Xrt# NFD U1\#gFsz5s]W!ݑf@$lnF}ZV: >MAnhUnDNx2#LX#}غn¬J2 $ĐH0Z'&H5Mia ZF\Xj;FLtB/_AU.# ЪqC˱j,sdD]l˦*v6:BfV[qX`hN<|tZVa:aFQYyQyYQSi > K0أjaBX-iVOٖ`W:q&,>2GC-}$ݝ B҉</S=42^`pZq%aYkrIFFA-l\3i'݀aU^Vig>oZj0WigxaC l) K͚}lUʑXH6❓o#=ܸ=%|-{%,j"A O}Y:>ǣDOWY¯e9D9xg$,waz۽b0oT$^Waf'z{_?>mN{KnPj%&[=;Z}g~25ǚ@Q mPdvq87Mq '[ (h::TUx8m5MJk;:2[>t1X#<8T;iu1$[ Ց1P-c. -tb"y ],T"k,H)۷0%VT&UCp9n]PLE5G)~8fF a-$3 mOpH oI5uu*Mdڪ~Nu%AW'Ss׀r/cSNfcOEnJt^v;L(Omqh3|L{vN-:3,ݧ$ѳp.4CBAt=d@VEm f%o߬Bj, u`$k|쳭.C.ۻl~^]~}B6v"sU !`TnrR>ȏ 93K;[ r~ocŷE4ұ3!ٖ{ڎ9~^8AdC/1Hc+T`%*ؔT:T]@8zuRqs^pfy4*d^ /@5's` $ ru\K2$0>5)謁, WSxe)QtjkU> }:tg iր+f'g!oQi%i ˖#72"< a&8Rj'fb]D+}!s|!W²`qTBd+h~4YqIZvC=;L椼!=I ts#،M]_ UE`n=RH+MD~mʀ!w Q!0F mO_JwZ褊BaddN„m .@8hp~oޕ~&"2>Tu9.b h+0Y#xX CoM>-؎vS$mllmdId3~73ELqʨh%ВkWM(JquvU*v;bi XoΔG|aY[gy=`hCAۋ_D#Xy ;dٝ'v[kfUa}M$i ߽<8JZ*5L:6X0ɡRFߪcPSy $2LVèMH'>(Vpi=B!4)!_!9Cr@=D $}3O=BbQ+*g ,aPLKge2f֢ \ ˛>7n&D`&x+6W?ޢ%F<mĕ fY.=z/hOVO,7hSf?ExX ^鱻mTRa0.a^Cu\Jo&i)(P.`?=(}ڮv.ɭ5Mp5φmpLb36Xܸtݓj !)QN3FM|~(?%3x- 2NU,EkSKAKs72~L6ƇmxL-P#swtO>.BR0ȨP2qezewBM:+.9V9|)Ւ^ZsZ^lEi"$Du{}ˏﮐFFQM*g";.VxOaEh<)Sz3\~*[FZGFu#dئ!NE 9)ƺBsJ F#(tyBL݉8x'$qDy8,sunCR TKsqCE1j\+8؁D|?g,!1PæY>hn8ypgë4Z*wji:V$5f=m* YX/ -ܐr CG)JreM&AFe}<4Qr,,65cM^G3uDhUק^9){>˶QA-ij+e>#g yTq;T(t? Dpάv>P|rėc}^/l%ߖmHEFmfk~YĘ c[Qi?YI]Eh mTLuW~3%:\ "I)6V6`S47%kA"u ^),)Ivv1lE/M7Rʿkmn mQR5?%WTB6\'뢫i/ Ǻ졾!X$]C၍QW~ =ɓ(Bw4ѢIx;΋ST7tlz*"%īތG{QՖٹȑm%?ǘX4A_,ߎ"o3h{Mȕ ;z 95t6#݈J~'ڋċ;/>iCfQwX|~vx%J,| +3T꧍ I{aV!qiS^ C1(W&[3#xkfs s혻^HobZ^x0nYoiyz&V_}dB1w䄵hIlMж$f0 pglw:^ '?|"/7\؟~B >h[ J?abLlMDžu-%J S7(~t1wn[r轲Z=ԥ2[^}䘉I1xY|J6m qpH#ߴ[N| A$KG|:pCARWk>cdȪmIE%cc5f}L|ZH%őrF3='&9Lf'e.j=+Z֛xW.U#TXCߋĿ[C EwE}N~ H6 -%2nn"1y+zRxnvHqAQ@ʷkS,>:610! vT=uÚOԦ OvxyTBFOBȊHXc7|~̚#ՠ`#Z^u'$VIgvL*) kPp#` 48xp:Mi~ἢoFޡ'-s2딿κܪe}y+cIDdm1,aCfE7 1ף@`Y CRmI1tHm+&;%\/&&C7zgVA;@.#p9XoG-X%.< <ЕО#5BϘbݏZNYc'j ƥW*<:,\$6Oj5jKQiz0sNR6ю%㥋\F$KàҶC]eC"؟'={EӜ7] jp :^X<{.E2ef~Ƽ&qJ;WUՕŗ]b@a st d_T|F=-L[\]QֹU/maR> ex,%wQ9bDbǼWˢf{9E.5ж0ؑ⽤QRytb; `ֱ>f%p?~i8V%o [ϝ7gGO , : ->HRW~b,eG뺞9X.ne"odlqs9# #4i2)~kpt- OY"is#I`‡r"'^N߼7%݌ ZĹ.T OW%;H 3%XI:ufj6YQ "@f\W2կ~cfCl,u!^lZp~xFLh{  bL 7jcam,:6O-`Kdh˄j&efsMo"g% z2_)~ZM5ZrVVyNG&? g@1Ʀ srs2zݔz02eX{e7[W_jVT| XvNL &]r9.(K5"bO%#e@W ~ɰO)1PcjQ=ci))Nh2s"K?XI!,HDR-i @MTJΣxdM} "Mk}%#\&,a?lĭ$u `.GHOYxsiۯ] jSAfx2C fRƲ%/&աY@LAxe`8bb@ 4)"S#sM͛˲ FP y=hn?bt+qOFC>N1G t}rU @y9G~Ѐ@6<Ž@uNgU45:VϽi TD9k8 e!lKp3ly$~xiUK^w\Xk!ўy[P7lӜ91,xVbNemC~|p Cz~A c6),P0`hM3մanl藝`#>Qvᑍm1ymK_:^#:24KXlKy`b_~rZ'qjH/2OVGb0p+DrwlU41M=n5ˉAՙOoP^pҽןa C8֐61]tcG h̖PO|O6 ݕ`T]Ta=rXAn+U/*£gU? eȄ dM3;gpµˌv{6hz\8(s[% )ʞ,W`xmmmK:{ cevȝy(!%8w}ybϟ+rJI0j NЕm#q(U 1؋`7#8z8PVk&7 EN3l='WDkGN.[¦uz&:E ?9A('G\mL X t,Beok+8<~]E%/@ m/M3GJ; (7b@kKBpCIyU2QT@\:dpF%}4Q9pl AG_ P ~[66.[\qt ao"F!юZNx n9Q)<{<ש`:"kk!VhĆ\T)bOݿn~z>,LIscz>2^6xxrm-KRpbΫ|3`Q ͻ>U%XP_]|*co.`4cU:wdQR|,:+fԏYx0Iq;CPRQ_C{K$ݡ8 %{e9"7ME!<_{-yf$ B=KO޼:1F}ɭFD#%VNX>ZܔX)o#V0ص9,uřG4I/ⱆp "Pb<Ye?Yw2)'|Tt&ӎ4c)K*e?K)8^/"lYο"N}vGm̕Q/]<{] >$|eBqӊG(H[u!?ꌜy5|ZLѷ 28Jm"NJ[lAIgZgФ# O ['g_wn`^MQDq=8<`n1wEAA+;w1F '3/tNb?[$)f,r`/9fzb #:gAea _c_SZZ#)+3o ܇]_-7?L&mز1Of1yn9:cf#74 m0e ȶ'WJJbq\٪RUm}.$,_{R󌪶A0DX+q+ RztML @2HT|Rµx+7Eƅc@6kc@JA6;|vq8i.:H=Yu@89Fg )JgMG1{"ӏ"HxdGC` }4/vC,9+w)Km$L"2'(CyiN& @?Ue򵪼 B\F#i:\ĦOCvNsx|ygd t++;Ńד[lЯ[ED:h`+dLnf_f\f٩d%YPf.>0#U49nI}&&GGVٮ}]@GF%]:;(!%1rʸ&o*Gu'ޘ;> K`U< &)-)imrȘ!1P S_bV%Fǽ%a'b8%N)+#cBz,z(0fF7scPcicpYk R7 6xzVz@"uk?E ^tcA\8<>^%R sDTM|w>Ew^C!`b6C*$V۶;2Ǔ=iz sc̏ry*aCS!HM’/W6FU~A6 Bzoe G;խC`a _u #l2q-)ۛ#zO9֭髵hLb 0edC )ӟ &z)y CTܟ,wt"eIH0y?p ;[ZWJ46nMZuwW}^m+ƴ7ѶrX72: NE]Ye&S$-E"ye 1Ip[2PyKD216cTzՉ ,W0d_piW{(63ߨyZH9B/l|'q,P g8ǀG~(㠀'\un HYq @JJm@;{qDI`Œ٧B>[F#Ekq\ʋOv;yC()fQ(DRY4̟27_Ȯzj]d}|mm\,ENXTʖ ^ X?RVZн\p^2Fַ;q^6WwG}0Q$#BBN7Ex;>e_43C&7|<╥֊3xGG%Є0wy[:M(i瘼JuB#M}l'oKZ~1ЛgRMÖMbbCy+;5Gͣ}!ugKzAR\!=X&FICL UN ^! RsFQw{<iThE޸؅8%|Y﯀ uBJ{z&١ ^E%"gѿV* zqKXܳ](V;mIJrO,k9k`H@q*7^|7s.R,_w7}6i3_p+.C_%$cua_G+q$;ٍp"1Թd#fiodP:dt u;ydJRʙm<&FMp'!izq9}]Iou$S~2"#7[,`>BB%*m|*4u~r!߶I7y?Ņ [1a |kN³wڍoU:Vxxh<*Vn+HmXZp${(T҃k[@(x'] n\L-`{W HEBj\섔TmG.vǬR|EXZ&p8!xNat * ~ZsG:oOm<\Es=TXuϙqM{~MFttHBrY\oondV^tV޸ya1edU*R/>aRtGTtG@PFB9{_4b++\mn [ e8 iT%O>,8p7Fކ뉜YT1d)3&Px3,nvqC`;9]@{3ծwxmU,xz/ɶ>dzR`Z?-~5+d[?FG[:PCtsuw .ۺ~ܘLhq8XeNlj-؟ 3FVҤpU4\B)UfR醋N|O6ޯlEc-23c6J{ NHhM[B ?َ1fNnRZ 4EM.oşt>$9nWfu8b3v p,jWVݕA3蕚b\S 5oռ4;%h}n剙3~1"aQٛf4~hys+2HX$n-UaOXh!fG^-ik `zWlPV b JTϚ5YƭP"e7xr& $|{#FU5t >}t䗘xS4kGͩaa)F~3?9i@o3Ư?ocj_6wx7kg&hn#Jܱl 5ܠĴ҇ݵ;q yL9zFK%/(LnBO,#OD18Wf,d?w !\eeoĪJ[ pgUvHo80ȡ?=?'>o: osKI6KD)$&"WOc8M0"{%ziRQ^ZVV l@EzH1:Q=nO'fVa`O kO[F+ZKsY69ysn[~˸_0:rR-XOvtyۇM!8$;oCb6d ,]y^ XTko3уex7O70oOhYJDZ͓`y&S>{0e/UcMcL(r1;jB_7U%L,I%I#޸ ""f.\GTni!%$fu1 l^ZwT ;!1.lp4},8N[J:Ts!Y{|>޺x,z.F.f坿@&i4Is;*hG^%Ρ*O>q^{r+)=7{@Z&zآogkI(M lPZڢ |ѱ ;y$ 4.'sܥ3e|QVb%F:yB?`7?|$ꜯ^ ˏAQ6?*ڽlڜH5ΞHm ^x#Y<1yk!H EqdH_0_2ưS@n:"X[dwPSm7DK.:+Cy=5w7p|! p3ĿӏEf#Mu6xHg%8>ė'Y3 `9D{]*QHhA⡑Ka<R 6 ѧU _i+" w/׶DJc~4|K~*)61b|'F&[UltFP{ffed#Dni&wp N]c;Vi@{&2R8h"~;?qۋց9XFDqaODbDӎvY\|f^` lAY^"ֿ|*bZqI܌2T`+aP|\T[4hmz"(Ejh\(讯XmoLp> f*{'BՓ)_8uJz}5] a#|@uva#O=&SՎ{o6jaL7}=/$y}d=meX̀w;X<>#| b/-2m5I:^I-iN"硳]/-k&-vG rMNU7V?{o%D]FcH j?j ٴqWtd4a<cQh~J6͵nbQtrTH ߈Ы-Tov}ö27_:SC=MSOȇ;8@6ߝ3/](ޙ+ 8Tx`GLvT0E \# +yE US0p8&>UߩA2th3m|#OnK GؿB.f+> I!qCn~pblY1m4&i]FK>CEI`ьxŧX $yY|7YcDZ`i9G:aʷ/˹M9"Kz}?Mi0ДoV:'H$!Ը3M0 IS5LiB0_pJ҅>U^M Pi@AQ <_?ͱ 5 ^KU\j}=^}&:&K$[wp1qugz  rkAi=2Ta:n 0 TH=4c` T?- WӋq۾+O@ cgL*~5C~(b.&OvX2tb櫩`Iq8A*Ls6z? 'Һ(eOAڎX9 2)J` fh!EW7mPQ5;B!v_hLcSfS*Y2w#3> ?]ṈyvQĦ%qᩄlˋhym[1&E͋ mo >̙y`i $">&}C"u2iY͏RPC{BZFp#vͤϡ~I 7sC?DAXii1'`ek6?S@-Df{ SM}0Wtzqj_|T1:e#DA(ne={;nczMLd^zjAW;GDH3v5R6TL~8CfEu"1, 3/ʖ9a_gy]_L6"&'g*@r[q 1ތEi@nGż}eeHE ]96'S([ sW[Oo,q<uuD6uQRZg񒧜N1:,DJp "ٲCAs6{SFHSְ眦ø?ԥ຺,IWo8ɫ"8|U Qf9OKV*]FyFI?g|m!رߚfd)fD?#4wWilh|6sB^x  Pk4C9:Ӥ=9~. ;TN=36CNzـ<檡K/aI-xv|XHw }br\L=ԃE/Duȷē]E]Q{i.wYq] 27QKI:szdC)5$s`Ϛ=?U@E^2+i]<iʏ- /Idzci -H?9JPamfGVۺᅦG0}uQ7GԹ/(Bs Jjrp 4*͞W:k= Ϲߖɻ' _Ui┚nXH 5.'}GI߻o, Q)!jWՐkIV^E=[DǗlhOa˧NBGDZGZ&rsЃN5a+pxnGzu$$X56BΔ}S,^ XԐ uҙ@S:@i\"2  fQ=D:Iȭ/jaJ⣁>` ZPɯ}YɌwD,3؄1-HK`9G=XT(y͜1om Ԩnlk?J 9~ 0(@KDD@~vQI^) 9Ɍ"B.h)Y[xp5!g9k$|v@[z\oK M}kfpYϏ",ܑ IGsv}վ?W&HR7KUa&X2pXZq^ρR^7lRf,N,wQP H!ZVcr\eLd}Y l|],e/5d+j%U{ov]"3msqRpqf{pSBtبpK5]k}N@[ppՕjgŎ`Ãz>f[׬E|w1bU HYl-ݠڌ@C  }u2{k:hFw&=j>N'6e  z_4:SaOŜ/*`%C]nsGnB[(ƒ9H x|BeKAKEer qI4F!؞>G ,<=" Mۼ 6X,&t?om*SS\*;04X!$AR<'Z w| ̶$w vjZخ.6 Pt_Οp؂Ƨ|έ-!&9gIJm jM,H% h[jD:i3:)oѐJ %Cs7w;' Ɣ9ЖAV?Y.SiS$uÔ)EigC3~þtǓ:o+b' }RQw@XIu>\J-⮑:d4cDQ1cFan7zH:g&اpeNesNÀ$izxJi;r\~WdaAmAZT.6RxSwɸbjbj1$рg}iXC$zpG=1d+!um&')y@j0aAϤR!L`B~hM$߇ 9c_'2kE"SrEԟa/>]ꒆ'(`#8U|ŝ ( GiM +UC@Nwth|U -7!uQzoA3ed#e'(dNZTHgӟL3WCNaԜyRL# KĽ~C^;khO;L5j@=oi2ײ]P _. { I( .Գw55X=}͒ya*6ZsZٍ20YLe_,E ~K'){P;v`MQ@9";ph,IFe݇}Jg@9;Z80LqSrB O쭳nT >#sC9C-5=08-AطwGIӏbB-Z'lΣϦ (v5[9cL1 EA6eH.?_;cҙx@>ն X=}ؘ?:,|j:7ZV%RLw˿y{bv6KkƄ ]ui)MsӸU;169:AYCCn0Lv)?NAܗ"mJ66kf2&E2_(/ -\KJ7g&\:jC 鴮K[1v>u4`: >ߐ4gcH5I!A7@aDZ ?+Du;Q[o~ JM뎘azz0^0qH^&J-Ԉ=P/9(?)a>q$aW&K:rsiZVnQdǜF]4S|M} mY5H)97Ag+3Ťdl笧m,S;%Tɭ>cIYDck1ދn.ڮ2Ұ!A%G#%_?W e ɡH0ʆ"(v)Yewt@{Dr/iJ1WYFyn 0(U^8'N>KV#SD*ӾN8Oaޱ")تC"qPnΡ`ejWl cjK`՜_XlK$ ҝ,Rli#-zs~!eJqRv(z]|kVN 7@fKځaa\_;^c I#;0^gkcّ-h:ԊsF[W$M.#c7w5G7uYЃM3^7ܨlSNo*8wlOwx[ɤN?Ro`'e^ 7>obHE+?j-⊕h`?_s=Hg;pb2H-7[ /|2^%ա? &?|7M6&YY@TU50217;Mji+~H~:d$|i @d1gG}REbgoĀjطqyCuh,ӊE /qyҺD 4P\ߠϤ딶B\beqǻ?1O{O#(nGa Ȟk~ʪ0YDlGZSQWd_.>яY*aq%3wS WK Rwښ :~$S- Y&Å B x|{{  rjN(m>q*)jys@T$FJxZ Uӻf4a<5` 4C_?G@[`B>e*`(o'><6Bd ڸ?LD3`VwKQKdq6nnuR20h"4ecy߲V a.)Л, I"򾆗-ҳ8,vϤqisOjmqmb]E9 5c8`Doee=[4Lm VÂhT[%9sW1PҸFԛ-Ftdv43k?:OTt/':%~EC8lX4gqS艍{W!<}o~Y/Ȼ I']mȆ9|-i.))oX @ծظAw ſei!48SӐ8}O~;P33àKn3L0^Ed\L0OcL$YYKv|%ݰ.לmΫFDom U 3:wvb=XN3yP?tcyy'Q~q\cƗd9;|os441 èJtt0_;){^,+Vf,G\׀{Kk|y Jݐ>N-tM*Mw7F,D$i橷fgPG1~#l+m?fu3fauǜ>!gӪ=|eF +JINhbI,-qmH'(p-n`b*+a/t/QǼ~&?kt-4&I>`\Rfyv;yGni ( h{q\bBٰ)C>R\:+M%kxwNxQe( O~Ÿ}j5u1 S⩁6k| M~b$Iw[c`/Yc2 ]|>^6Lz 1:T>([!ʘ <&p  +G,[Bm V?s-$t_ g5[@+֜#̀10!f2'kt""pN+xB֩>VaN@~EClrGwҮHmdZ=jip2G9{Is\MJooVו=QƄ)Bh]`uE]i:&5P7X`F>7Vq~TW> Mܔ)x (kXkBZAO29QCh^o0"V޴SRe/v\PGfiDB*zR,T][Xڍi7?MRffσ b%AƥCō4c̗=wzs.(tmBzNʝj۪WQFcsdbWU ZneKQM?rֵɀ^bΖC~!H߼ PU "}4%`y;&§S:G9y CfOJ ܌>֬N[!jŏ*͞XU=Iv G4t!ĥ~z4maܯ,fI#L-ۓ!{ѱ(h oVՙ\kyh]XKFVeeqJcEf29@iSc;2K=dj0JՇ %YjE"Wcb 0 xVs)mggY{mSdм&{h-JMsT4RSˣ%LT1/7PB6iFXOӀnp 1V!m= -d׽ UJzwQXֹ/ oP *X=)f~__˨pX_M&Y Tq?ο_a@!'tyjAZV6<cr=wX{(þ֊_y U@b+V\xm%vbP( W9|q7\߄v&C=z?(ShqEœrg29~ q̚e-EHFf2JqD'Pe*?%pEC~Ӓ(,:dzzh4 S^%QG/_&#4 ڑ2O4z9kB =&tWp!ϝGS/1 aY&`}LΡb89۰bkhIi1oz[=Q l6k§GBYCҔ[ubWanh>vyF5qN1W$>5Pv>C;PwSb\<{a$*SƘ˿r}rCCLV} y;5GcD :sa'/UrI)>^nf(IAoL)G8 H@UT~@ ":ӯPsTZOki,&4iI$q vOH7le@zW*t t2h|P=>B?[zMy7W"RA1e?ە,b?8an(ni0t"^RIJwDcpg/`a%ƽmaܬ^4+գ߹5+vo5rQiט!}&3\9Z:ء, QP 7X ށL/Nxvr H/ 6nHVipouۅMMiqڒR=27oIR<ɩZcH݌Kf|S-8X=DA8lL/ )M ='X%gsmh8tp{JRLRa2>nSjb;0ȕ d= Ͽep ^e)6u\ju 9YdcqcCY ZBWS1j\ĊihmVacegx4x2t9]7jdp3~p_*R5v@,֝d]wE$wR>5e.2t3g259N3q:."9v^^Hxŗk)6`~fr*X-,ѧg}$POrdAZ_fCPd/Lk yc9=q%F;HC|V}eqvMjQykFn#0E]tUsTkrs E 8  qڧ}vZM$:" n+ͼ9Iwgn2֫;eo@mD)% bREm;}rP .r|e:ª@[S;dj ?k0_}yp㗳 ^#Ϊdᕂn^h+<Y"ńlVeT0J:,g[H͗ܣ">JO5)f8xHbleml +/鄜lվO3ɡ'ά0IqyG?|8%d5;e k6n}xZb绔(`jMq+E,z 02ȷyے ؓm])Q%F0kM5H (_DZr|#Z24bTj0eCZj8[o`ihOiN; Bb2{>[ت^@WցNG0 ӗj[-tFq%bxTn'ӒFo4a(M1f. 6$26e6Hmm#D(~DʓB$v0e!!2pάbP<|ד8|ћznܜv|p"n93EFl6d ߁)qv- 0uU^Qdz]<?80>fZk7B$j"2 o\|jL*XAoM_kbОeq ALCd3mF7ԤKnsss`MgF!lI?M8?3+CWoxnx/8G/B뮻he,2y,_ï}D }8:ۈTB %i]]s{c Z!I-)|ltq9fuPRZ,hzYlw#Ek9m2#칍/.ZW']P#V6V kw/ԙ FMsoOrQjtecb{.M5\CasڲEdFlC<egO3CŜV*²Fvwb_/DRPS;x A !pؔ(kPOu"sBQ0>;\o`xt^ꯆӇ*3e+jO@tIݐ #:`mf;=]h9s׮mBz D 镄}S^琽"8K28N}o]9_u4[:9 zSZ)C0=n,0t#X9~F@WI1s2uw{o sNsIőE=Q.t/UJPLD.^y m4[B$@vb8˿]!jU)f(ԣ8B15/o;j^:G! ٤nqĐu;2N nb ]Y=O9`]`dJSkLʲmѺ~^>M畧n\9j *i>VPοdyusϫC*fRrڽ.Ho-} g }z8Ds=@՗#1gUjVv? d{ShН%  h(raEqĹh8ٓȽ ^B)L#_2Z}iS݋BZEGM ֗7 DKuR,a.dɛ/Sc{7|$\sXsglJ@V3YIN*sZljJzM 2gb~RMzy؇h>3ǴhE|U1q!5glKj_vc>fCqI|S')u^Dff%MRt"wےٓF-奪D !1Ğ6ұҎ%S<2! 0jQ?S Ї褴 6xᒳ&Wm*EY.DmqR(wVMcNBhIDŽ+癫a\|Q%ȶ>.[k;5o4uf~(NW *%|Av|h B¼呯t5dg6u@jyIF|A%k],~mU;&!󓞶/0}]6󈽒QLIj`+9o_tψsVr׋)_zx2'-?*ꋨPWHO}ISK]u9Fїx.А+956*3w!ώ ~PSfiKb%u#yz幾^*,"nI|Kۄ+iŅ >SM'OH )LBG2mˠR\U*ypYAd|XSn؝;S>':J~ŝL=\7{fYv௪µZMUM^jCBQ>a&F( e#oVFbG̓s"Gٹ8Z]Dv%#X"OFK kg+\8U,YH'#Ss'<4WHYDCM&|M |+ȃn1Rjܬא~Fd}O*7Hs}6o^+$ 5FeM;RT>/Y!ϭ32lX&gm0?ROTȰHB4ٶhWvEvVNm3cKtayGw$@?h^ʄСX<H;T[A"wk>Ek`.@o#zs Eh cjA$URĿ..F^..r-ئQ2& 񟲝dΌ&X1>x ED)5R_ᅌ4ԅ[!a~j!>uus~zJ[WPM QIcmWX2,ǼFUbQ|ʫ(:Iqjs3B&a盞 W;=􁊼Uihb"9mKɀgҲ,hS, #S/ܽTe~Sd`V%JG[F+S["UJTisXFh4=:]R(H.@K[oݡol+Yn|%#*更xB`v'KD0 ۢgg7*Nz su@nQ x.$[)H{PSR|d=EvUY~T9rG8S;6P}b+Tɑ_&(]Uy O GPB[yږݙ ˴ ^(82JIw9[pbxKsX) sᠲQb'|p NI9=,Ύ}6.SVW\[&oZ1EwMULG7mǀSרoR}?*ZAT=2G,\Oc_ V.`Q8PD%f/#9j+FIӪ-}"e/=+BÉ;(sKl.&T"oW:<[-te{z_#యưSJݤJ&\^Lw, Adm}{gSr$uOҤΓ"=y,#Bu}g f7Ұ "mnh9}ɒ:"@PqH[3"2e̬ VxvD}wP`nTչ j{[[O 0⻃7wr|Krd{3)Qﴼ03KjJ9"j(eƗ÷`3֥=ז8)0{Tf.ݯ[U@~KJ~h;Wa 7}_//P GD)W۽CxC~^Drꕽ MC}QS2 I-%jDx1}!|D )Mu 2Wn4 ࢅVf<^#y0x0I1z q>Ԁy콏RfW 4v|tva->]GxH fvzҏ)B I\ x598d[ l[4ԧ+Jlh>qź K@^5`_6g9Z_,8cNg \yvX΄zIkU6'ۮ{ 鞑03P("DӁ:J4ק~S'猽GRH4?ݮiI|vXFs3v@="e. 3C:7N㵆=یу8 X4-T>9&Fu-rK&{! ' D@"' o-O!RB3*G VfL@w.? l 1 H]ObM-122l{a%aó8Vs܊ xva",YknZ|_GhZI}8J#Qz2gB^mR ޏu<[}D[a;~Š,~!Vꇞ΋d[wփvp$??9 1erײf_[(/t;$RPJ:8gR^&D4Ѕ%ym? qY%ANqkb Ȑy3DJ+;x٭e. c' tj@ׅN}r~AWo혴 p_"נ2+vNt-& &kmp$Q"' 邧"SOD|֜Ol@jfA+\~U`Z2ޮvpUM^23(:|&!w/'~<`5ޖseuSڠIfK2Y=1b*6:v@EW9h*;ԇ7rH[* 9 u ty!Qb\At$=tu!]ߑHZYh|OCp/z<(ٳJK$ ]&qYmwFIe \|GV[#>/ň&`pea؍K76XzFvRsױL%,ύ]PT~*un-ӝ)HI܀I6}e_tmqX.3gwן;Gʯt +B T1ϔO_9T( $B&mg$cMUV )œ )In;sBs-l\581TQCj բ(f_ { ;.E"~sbpְ,{Aɋ{Jy5e^7dJVm#0'W yUxԔsA1[<_W5*Ş-ʃ_cNNh05 *`48Tݲ -G0@*b}3:Jx]!">2di&˷ aX)[XYRz >Tw ?FT"G -۵ik"z%SqbN~aioTxmDg.^FsIq1I ۫N=O)^'<$Vz oQ-Tx-☪}5 1tb*Zƌ SGn/ zsT*N<٣L oEwrn3')]}_HG nLG2=PV٭ٍX` xR&] :d=Fދ'E n;|n~ Lv7D\^'1:-9@yFYlIFW6אwyS _,CkKIyMl,D26>FwFdoRYEbh/j_l0jOl/w,wŸ>FJc./C9^]NmpC0 cpHc%n_ה\gr#q!ICWx+G rDأ<JF76}ΥֵQT L1ḥiegr&bb ؼҥല8MRm#\y++|H\eFB:R[[8Oi-Znx!kW q7eu"fjtiϸm9ho L<=`5C:.\B$%ul]|s:![`hpf"1"/!)fdFewJ b|2jnc4N<'CcWheĄVqg~Ӑ eaZN(yCa%bH + Aհavجpy!LI]FY^xH1%E q+Y/`)+6Q7w\H=`g>K78m*Lyp̿g/7 4+@"S_k[c SՃ6!F< stǜlkFVh8 -x4jG4bb.+ޟirΔ߫c&jdvOWt% B #jAu}fh5ZgךKT>086%U@f%VU}G<-KE;k]Y!;yxV!_e[b@^ݡc;w|~,?,%1ǧܺmX4rIH`*nqD +?3SGG|sA6jr]M 6@S 1i#6-*?")^ʍ|*pX,l\IARO")ԤNjŠ|`voq')|-Eמ& ,~PUo]^I(, 5AypDom>2Sn Nc./U3pbEXW n(slլ2,ȄIg CtG̮S((-;* ZgQJ:ȏ/ fY:ؔqXvS& f8^>ul =3 T3tr,kHIaQK[R P>I7RPd@ߪk|2TL~vӿsKj <0MO;g_|=_qbܴ≠1m_mf7h9+9@(#S'(Ue`7@F HAΩ;99scrxu$A I[DO7thI0N}+]i\3L|s^xu Ddi]}XlDz;Wzfis:>9g;8/S@%2>N.>h|Twma[C0z/bD)a9l14\ClPV^?X0[)E႑ 4-f12=쁫̾ hWJ̋qp|QJ(lº.F$Sz6.TDI#H+yijQ&B~ S7$jՑ8F%3>ןDj?w(d0El:4ax=  $G5;Ig๖3ȧ`0$oH\`ʂ? tnPN22UKzb] ,(Id#Laܳܝwa0Ĉb 74r.O^[|wCw=3e^AYPX*wza(!wT;Kg;oM5;J[c$6cКɝ$ P<:<҆9] O4K2BSq##dT^PWDr?Hٌ)mjӮrz1Ky'2OXXbԉYqTيV&讵֎ŧ7.SXYi" ;k"Wu(Towͨ?4K+Pp}8(&D}6+ ?֫mѿA" |iϞ&bXNjSg-1'ynt9Fҳ^흑, V^"P}DKdSrN-)ziqWcK1"WQ쾛dRͷaCa|#'.3y72/%m.Zs/6څ~ehrJDޝČEպO 3J՟o7 yA&pg8? fA06~pJJL y4C\؍"zsDs5 OMݖ;Ӳ8Lqgߓ F*sw'0sͥ*=+/y?Ӓ[Y7::e>忴^=0 M3̭s]%dCcɴ-C٪=X>`qq2mTl(Z[!jkw!eB6%[wlJ`vB4sQ*Q$wfʑA$Xy"ʥ+Ыk4a5駶6)EJ4iXjIg-G8D [V6K5)ʈSND/x2wh=>pz +fFZnnQϐaI\ aS-GI0&Π Em56y)b4h J3i–1Ha- )"\%xMp RUN‚RmrEkm=ۈ+U Dq*95$tRm M*$,끁1SN5hNͫU< x6ԀJA^EnYQ S+ ͍/8WgwvS{tPg& $%uBנ}ΘgX%{*jB\>BelɱOO4$׹nbjN1/fn4R^&j vZZ'`[|9"Cٕ kU6.\?={ V8rRc I,7Apr+&e cq@ޤTO:\r$W$]@_.4f)þl =1J(]~7[ uLM`XS'17 D&R^TGGdXK.RɺЇB; Jy8ƈ6SOO$# AA"x%Pa}pw&tH$T3Q82fK,aAg\G.}SOĘж-'1U ܼ(K&o%\E>j=c% u*å3p8*+NOWE4e<(yY$ Y,^_KKS7LQrBEVv#{e(Q/CJxL2NDצ+W *aV̩]a"w9j,΁[qp1i.56}9dӁ92gv,2S2I";=e'd 艹Rq-y'W;2\"ǵ/B&Kx#_X#  bcz{t=\en/%؞O^/q:4*RR/r]Md'ϸ>Af9bmOROӤ/IZfS-UL2ޚݚljpߤwy_M|8hڼI 8/.Muz{dAKK(N9# z ]3>IJyuT9P&t0hH}.yRNS϶&"40(͎& W7ɽ[-C*#>+,t?k+7?p^(?\^zVN)ڼǐo_+8 '˝-k%}>Brf4]veϔjc _P:g\>-镤*jߏ&Βar~~ɶzA%=00F&A:*|W$6޿941 歫wŧh@2$7p1wBø<3sYк%GMEFWx̶ AG,3!|X:.D^}JC߀{d;3es5u?c%𝻻 QP6$T X$U3uj!;[ߑ8W{n=~;> uM ¬+vtNNw uB#iBF'/yF̧.84V!يUEKmm`pPc6W-١;hB12d)m3Θt\l"F{ۙ-Dr=ƹp&FtwB5{}kb&W}pct)7۸OjH[Lp73x^_L!|%K"ZF m3dϢ>*,ӑ=s{^zd{a5wt80V]`U)ޫ [;2lb_|Цf6OUNZXkETQl@>UĹ{kva 7̛j a%`@/XoFkkS\ϋmlQ4*4!zxGSX7.Db1pF;(GDBJnCM5u@_/u8ӗ= 8[KCNDhyxYWC̀kscG DAȿCED-N5FͶ Ղ9p &? Uv9lOi&4GVRHQE'op uoCxL.f-A 5ND\Ajì$Nm]N{Rfhˊ!u@*M+9xԩ5YFE^=&װReزWj9| 5ޯ"EZ9h\WRM(wgR|~ #a+r??^3 ΋LBhhO: }2੄H7_'Cl?qxF1twa( h{(r8=)u @ra(Qqkt.wb{sEdenwnjCrI[ pyqqA\Q .moJaTWק4!/UcQA A .qόrBf?)C٘2fr'g"ՊȢ#Vql1aȵ<;v^ڰI 6rǬmxѸ_YTJtp}u8=ͦ0 3O)7>-89qQIohɯDYP!zu0IU;$f|^1<0x'vd cgWEdv+Nn/Zeou)KkAYHŃ$ڛ-epVp$Wi`_g,Y P)ns@*fPPKg$NO)rT;U.67s$Y#v[CF]Ar!h@B(?we$GDL%h4? 1p.msK.'|^v֖&5TT]=tDZT}WQ"HwЪ0,_dcb3DX|V>p!信wLt^WS }c`jt}R$&2р0cKƭ]L.jD'uXMh]cWJ^ 7A[󪃣qcwѡA \.8),hl6mH͌Dn]VFl1[7ɥ$ʥ1=d6Oi@xH5Ҙ潮Z\ mTL91)4 &grnZ&D( )}B+Dٱc"*uF`)=Oގ, :c揌r-@,8vX lUoNzD, rum1@M Nrm)LɤC;.A*X5 ‡Ȗ?W`ҋO! Y'l0\k"6$?(5*c/wbΖ_wu3gTh8x߀p4S.ǣ]zVy zt1pq,5یEM*ͻ >Wரޯ# G7;Qҗ o:WW2ȼsw# h;j8|HtxHՓ1g&^̂ˁ$ӣ`s>o$LNF:h)X+7섅ik$}ib/ ⢍3~|-.<̥:S%5zP13rg|94Yů޸EϬ/D` , -M1+L"RvvgzR\vvyeQ^6B)WK΃jjE뤳-3'ˉu]Vv`U)AAP,-#9X@@(F#D)2 Q~ޤGmߦ(䇤?CܙY~>Ò'% UJ@Їwmd00עw?C"`5lWU+RD;6goFN4Ae= 2(kVA|{)6dw]fsm9p30SCxSQ!y:gU)Q|Ϋ^w7m"}?RR 77ۣM  $!3gY,,cCʲnCaٯ3"tKuG˯MqFQ6+8QrO_BL&Rή*ٯ_u>lFpbs_LH N$nӭ To+X|PVl{mT|E:tƉ[dOeX2v|1q@IXnvk%O4Yvwj򱐒 ٽL`*aP2G&`)}29eJa? Oӂc ͓Hwa,.FN{q؆c@"%pvwݸ cFf:G1ۘQs JI1}A, )R sX)YpPF_gd7 5'_l4 D#+ *"sM:EԠ#5)Gr[ƃfw]5ߧ#ἴ dMnoF4kһ6EĤ~>. T;շɃ "SLݸ!Q{wD&q|@XLd9)b`ёĴg-PR>־njvG3%,,Z@xiU1 0*%9(3^9=~/%Ʃ,I |Dqma%ې5P[r^ :|r|ܩ0Ȼau C)Ynբ%ɮ)!?v<2VpEe"^J )uKOZᘜC;}r\ɜ)ww+\ j}de fhtT ]Z'_v O=Y4q& \dql05p&.ėA/mŕi%BO( nx㣃Dk*Ujސ!׼P3܏*3a!oi 4 m~m"Ne`zm*gs/N~Ǻ)b8ؖYQ^E`+L>BPuzw:X`R{AunQ'))P*|!& d?Mw$g0'}?ē>5fzW|V4 ֹ'~AR\BD7,hΧ) ]ldN p54ESR 5)U#B©v^=l=\<3v ^Omt"@!N?#$ۚvګ :BҷboOD3rLU뭘O8٧*0ʭi],|1I޷xuwZFax}_jt5*hq%19(^ų >$`I-E`+|[D:}1y^C>v}F>C BW]55Ԩ i_M%ߊ쟋Z4 8 ,T0đs0/`Ykh?W: JP3i_5F@s 􁤤6A^1(ع(~w4gH#iofS AwrwT5E{otxvښ epQ ޙzQ*Ld@]:q7)|h94f{tBP `PYN+r/MSO &ԁu8x&mhԺK޻kΌJv-`2^UA/;{a-B?YM/\Μ1j@H5OwQ;Jj5y ;'!(0]^#RhZʢAS K B@iBrL fP0 Œ~x)@%ҥtE(Ox`K?Т`-f֎t| v#c >dOD7#i VҰ7q r`B`t3V85 ) .:&,tXVS]i!g)\K[|,~4^ _(2q oeNU2(g >Um@6&G|BM檻^OexUַQk^jչI(}P0CY->]KےEY=q"4k]=脰;fGs=M:ZV]FPX^AjP+E9Mn4vL&۬6טb@bt<4lE"ƬuHlcJ0d kM8[~'Τ )u?בGB׋k$VLsOO7-:Udn';Һ347Zc'G4LuJ '7xXI+W.y.Zj@ q%<;c@hLɕ\M$Z:?*3NhFDp^UT#Џe`L/6=,&S)PDPoͮ]³KQ,RZc|ot*d!IV}঍0I(NrM-*vڙ( ^7+0C轜,qCTV2НOu3;hD3_d.4O8Mi+#3pɤeTauW`{߈4VH0"rKbRzzSCr:Rx\ӄL;wI [iqE?SxO{Oqr"X sC\a< ] /QZ<$Qo n?v `CT kHt)%/&n!|Ҷ ,cJTlx؁Ϯy*PHJ9y4#Hy#}kdT76¢ @~2  kɂ>K T1cZ Lۚy-hX|`1'M_#k3\/'d/^;*+X,]L.UX^;إ=d$}35+3Yd eD>y,R?Գܤn͍"pDUɷct*b  J2>빈e&:Yx jX5NM,ʉ& "l] (cjc6n}ܤ[WyZqϢBN׉?s%Edf&grRTdr؛-:קi ļ ]!dQ=s[R+'F~CM7">h3jaiەr~_[)xlڳOf ~OqZ즐ll{TU 7,HkVR̄dңp=ג*ax*94+egHzjSdwaIbr5U&cpX[ڀ98}A%^s4-CҬ`//Hi7:Ϛ!Kj8iɆZ#AOzbNSˉPP.N; Ir&˹ðɡSqėcŅ٠õΪ;0dz sRKeYňڥv ?FlFԷ:RJ ?j_LAl vpO8h:xQXuȓ iu.A"t 3'U!!CPrHDUytxJk2(cbFdCY7`@(u|4֯ h:LHπ<5}KY@8TG̨ۍ3= #ԝlD NԹq #h ;82xbd'W3,׻H6a%%fL'"Pᱮ rj14#A{ؿP& Uo} .0NwFf4s5PCW9%& '~TStN|PAyU+`% c ɮ;wiʖ=% dU}l]+DgA!Uv=pG @ vۈaqE57wi'TDmDģ\A Ep⽌;-#BAY]ll,H(3[@!?\Yv!<V'&ͼȊYnY\E9+,V:A"5![Im?jj"jb.rV{p|*n5U3tj %LG8s9 6Ι/ m6JF>qD=`tnXFv]u 1c)Z:;K[WkR&e7u7…-9 VwW'8@f$ y3>*D+34YcjL>y pYpr\Ɨ/zђ ֛P65Bب[G0FLKBy% W9;mĬCKW)3 aZjkͤ G"*PK,@2@R g0>E*ctb.)&kOvuL,ӥ R=}ԯ76C+c]oe? DwK{OMAb#l@)z p?VyTf]鞞% <6=aCinf4"b*"FDTM_?hD'\Sh2 ڕvrS?pR!'g hTm1% $ՎQĹDj[j4a M55r[} R7q5(p!%Ҿk+.eQfxYB;)A;gSkpR-uԕ)c@nȎT^=ƀeHTz,HfўAØŅw/-6ʰ1ДwP6S1BQxyg+#dv ,Ʃ*uB_pemIA?tfwp>_>]nؚVuOv+%aX؍b="1 FFFa?)n{/^.5v_¯zq *QELo`e7a}eKE՞R 0jB>U:1Bp UB{Y'~c}j4h\iJv DX'+e#.Dh'.F+.N:]å {$ܤ ˚~_:[eg;>Ҿ9č(n&KP;}`Z ȎboNh[C")ڲ=1pꨤ:̜ (=TZl`Z5W!y| 89޼@,?PgZ?Nfo7ictơ<<^z ~6D}ǍQ qvۥ:1գ51X$<:֓Rjw$ ;\YAl}3D, I"fj~ [u ͂tTS Nzh~n&F~zٞR|&z45NQw_@vk¬X/a|#D]!L6j/3Dőaݍĭd)M FV?SyԬrʚ^ %%5fրZ_qtcelìHY(v=#kn@9=lGQp]FNxvDBXEh??N ,,x*9BY] 4v=G:/Mmc7d "WjQLJ9ZᾦaSKSY)3-:ӿ%:B2M<"(2ICz[)ZW5e`)Б(/'Wx3{ski>#T(U,uBߏi3kpygOd(@8 [=Uq_,[WCFr7-_n*8W䍎Ch^bj5~UU(u|(%mMp!/ I:zeD=6P+-{o%҅i3"z9nd3F[tZ?HY_`{}\#5ȦݐA 8S)4xdgKuӈ7# ;3s{Mz7Z?>ifo]ۧvbV!"tmg%euf<[ѩQ+XFuL#t3%`TSiZTtd'ucrX%!Ρ`(PHEt0kUds(8]="wHb:r<S WH{FGone5x#Q^#vݑ|+cůae3m0q9ISGTB *ݳi# |ǀe2R5S|(&?.7։ufuY~5]ĵIv!O?Cډ;BU1;=}W2߯`Q( }4k-شB U/W Es-UEgeT2Ghq41og*r b/}>u@Fwݕnd= W<$RL`?)1*LfלݗZV|N* ը9bnۦP{VP-ܝמ V]E¿hJw8 tRѦ3S-o19Y1d{rnN%ukkGJ7x^˴~^Q소;YU!}:}9,nطDӬӚ飈NgL)tP=L 3:FK 8,118:؈ۥ+ WRhg M/9aPXm#/z:~4mNHba\5o8rШ2S&>܍Ь.]dؾS"~d<H8;rVC_j_w:ܺI󣸸YߖV=2jl|Z[2]Mɲ1C]"4=KүSFG]a/jW=VI1]0V7/!q.jr{ Az0^ou9KAǨ%'"L.jhq6Rxv;t'39 rvq=FjnךR :C[F1g׌ ,N[;`qH)a]Vø,ܗUv<(&)0ARCJ|xk^@h *k5LF닃iX}*=ք)ГdĆeML&MFH FXE)eoU=59pӴPR9H6D0Kҩ M~ =}լF95^Ϸ ?&>` y;ֱO潊ӲW$#ϱ@"!凤ZPD+ gwp;.E%kئ!Ʉ سtĺMRH+}/,2.lHq GdJHILrTqak6]翫w֑>-V5{d`1H 'IctO{WRyA,m+So /ߒM-g-6Er@_υr72DͭP>${ď\NW~I%Zg ȼt* 6 u>$2E{l Mrh~8;ʦL/:g@Dʣ"(gzD7ֱZQ!\N TD0/ n#yW*nT0Suyɯu%FT~hz @9pFbOFn[~.V S޶(>mжN9kagMX`M2SwwԂl:e)o}ɵ8k3\r>${4G٤SU޴nE!ˮ{638\|[Dl1hwjl'9h)kHzY; ?Ƶ^y}}%B8*]M8D9l˞x,uO`._/t\;FؼzIA6C_sN̮N!-]5a4% eyQsx3gytvll HY%@NKWũc;|yw6<8t{]1zx-Fq֪)~lR0A==^Q.dCZ]ӯFP<{9od&MH۵>Fm0lH,aϭP>[g{;73겫ǯ{a];]~q#'!!!17I'Wb 7r0ѐFfit4ӺrO u(UଠɽJiH2O@RM1M/ O9_e>f+icZ7φ7qpgs^"EAyv[[fe hGpV5Q4 ռ;JUWPWe@qV +: $) 82f} J/GRDq4ЯRvOAqˆЩ#Q-?>qL}|y+qXH)%g'$JOpH{L)@ޚL-P _@I[ov|P Sg,]J9JvMf3ԈeP[Aiu?Mف#u[.ţit =nGʷ'F>c2X,_1Fj/+Ê*)m*$_ ,QĚ\%eΛaO龳K 2s]Yܧ- U I"\uLc*[? 8]u Y}\1fP:wI*ZW %4 3$ {nuXG PTe"'@L0zsL@FX=Qf !|D3GRKRsj?[$`8{)k?w" zO)t!EO\ҡpUUcB)'QiPQCl cσI[WsKDb3%Ǻ_MY>\ǡuz)gd4T)T{`R zHA :qBE!F+" {aq{%/Aҥ%!A6 ^ z[ D.0Wah1Ti𢊍})^dw8lTɾʼXa9=@'=+I8Kr!ad`m^ \]%ZQE*V]!>(ƕʣ7}eZTZҝ4щ-2&o٢+gQ8)2^]AxSLlw}#Ub/osY"cq u`Spo,m?*x[γ-¤}uvn3[Mxc4XRz Bۿ{a1/(miRm槍 zV 8Tsn@i&^mBٿn?d0.FWT_%tAM<[>g{*!5b8!bpB($-'WwXFUo,ڷROՂLBRidqxTEQ Y蟷D<L ڲ^LZ0_a\rv2Ln8|_.f=c&{;Ю Y_"J\|ߐk1 %J@hRn u TJgh]tP6igT5>7Fэr'zG&iSQzg\+C26-JA*sof?ع7Czbmc2#>"oB:D'tjPž"Y&Qu]Aer!vQIvek _skA`g4P7:e4lr{_ 7%4޸'9$Dp%A.tEJ}o"<`«J͡-β.дL[|lFgΣr ¤UXmG 2>Qv =!;Z]iH G,&:x\:`dy:)@YƱWe3.jpmrԦ aQq3hpź<[od>Q?tSU\.Fډ}}qhBJJUt8ĎnIRll=-96JEҶz, K溠Tr72Σq⯰yGwIm@65#١U" n9=5  v]2.эc]+w@qR :f)Wה=7P7MԺ(鮀q{hZzð,Dٕ8fvy]B˷&?wDl?{n?+gϕO>sG phlEFOUHBrp5QV<ѫCOBcHWЯq rmL."4E\t!TU, k1?6zrFo|?|>`CC C"lu4ORdmt &Ķu5 o#Oˣ58]8TMҨT8igJX 43d^C0jUgCCa_ꊰ0Y؛Ŋ<d*Riq2 NV>ƙ˸K*[FHUe}\`A 2:?T,P#ab-A4* ¥T (: FE!"YOCa,-nj[ia9/^1 W_&Ù7 G80hjtM G ˜v6Uho>k딒A}Uy|LԱ(vg+P`hPc~dFr \dCvhpzU_q;}dN"R-aM5&7E8v6x?cgY1bLD$4ٯBg-Jy5z7T s=Ryw)"R0q̌!wL|-f|mšM-^M4p」Mqι2. O;EsnE$w9ߡ6Og֙K|<qwtتԎD&HC*AkQ+colMƶxW{j :LJg#~ZL<sVOoddK^kIva&EqF,6:=5gNN@Ex #t4[7;͘;;!mM'AڗLzHT5nNT Wyjs;\OCO~pǢ7(m+P+uR +&S(rl<3p=QZIiޭ4iK~vJrb&!tTK~BgBT` UBFK'X]8[۬}ٔ8u*2$7,@lzܷ33"I8{{E4"8 7p 9^6"@;C7q939 W{wCMnOOBk#hOey1? ~_u3a+HdHP*GniKNrEm#rI4T|.54/_H5!t[h8KTcId":jt$X>! Mbm!wf|u@|{ƧuU7G ;_eDTQH cN4|@-,0#dsZ¦bjdy0pVKqUNݰ=j%ul+{J:& "]sEX{g岪5,7W1ݽ%!Ҫҋ i7y= i$_2-jڽ)[$q,VL`[:+]9FNgnlS%6ĄfbYd(h@[yv>P_"YA n7ķz"^iC%d !h6<$&6f91`% @A'-/OϫQloWOibl;v1m~s o3IьmCr]P"d][RNj~b٤t |:(-Y(Ѧf)P0 o-z!;.xSIt+ mHJLhvG{oAnW-VbpCVsXMLqNYSOD}mA-[۲I hƂ΃gv#xxDuV>s078E#Сag 3EoX퇬y4C|˧ Í0>4#kՀIrn(i!pmJ*.\զoff֠[:s}+R)m5{_:;T,~J89V̈́4'X$mUnf DL$GHyd1;vCz!=Na0Vq^ U.Wc_g&  "N;w70؅v@ݐl[Llڕx 5P==qqn)$LE}~z;:b6:9)@VK䟐K'pI8FU n;śX-U*Ie3aM'tOuLg_ @6ꕌiMw&bC_<Ύ`aj1Ph5B.*}iG6'_~fe͜ZN;ONuSӢO 6׭iubP=HEHp5 QLy@Ry8ˮB YD\~zCF`̣ ,Z\qn ]eߛ0١}1x xF\'PA_Q1RgͼEq^bI2~)|Wk!&AD-Nx4enɳ22K>e*Hm0bk5#޷ 08 0&էkJwk5&OaZ1jD^2fX7:ąDӆkxЕWG4PR` lT+NͿ؈o ϑA>w^"\^enz+) dNb`s ʼnA;bNJ<*w`kXqs;,N2(P>-er0 %>aji{p53r:s%lkG8 a A1{^mtfˆHwj Im6QjƐ f7>9Mx[T~2 =b} 4ǃΡ `hjI [\6ۚeW bvC{*r vDq.s.̗I M̋\yX<_GF!y5wURV*-g)ÑOWh<P ATbPfD%b8ɨK^ri `b; [_BE}yNGEO  L-S9;JNMϙpΗXS !Og Ȥj3ɨꑗnJSUbܧȿ8]=ǔ)IW= ϑB2*2(J%,m&m5z*{}32RKuxS@o릅7&!c]*꩖L9zWG54aU[Lg'~չ<{ T9ǃ4'ÜVoA}u>#P.qdHyW8ck|%377P"l/S#Qj-  #0ϙ-d %:iVl؞${ImĆmWW+d?x0 Yu2;~u+ol3OO+ !_N!ZmPrLOAJ/fM,G! d0}r풇'ڷ_<ĠϪ=%;ԵP&GGeܐ C>A?zP012>"t́ 3D|YoY{d0H7</ # *2"/~:񛶄w]YalkIeP!McH5Yˏo3Vp,v*Wឰ6u!PvDqSlDXAK*dV{cԝ2h4wGѵS=s_  ~ X$ۅdQpTO^xIy^f;ħGښmAka\ϩ[?+vċ'=Bpy: b@Pqic!y7jJZI]ߟ^u֎ܚOf2(u?ܜNBU*@>N ++>cZ~Gߤ(x\z/*N3=jW⹕"6`}iݛ"]*kr挪yNSe6&(ַ0t~lHHcDV@RР,j72v9쓤\\ݭ(Q8^bd BF:]ٸK+))= K ړ2c6Z~b 0LE `{vGMWھEK;])IE*q& 6#9,`j*7 o![Ss=ɝU`Wg];w{ ?_T7զiZ#N:k^ASCG_|N9"̙UiO4'T}ԉf-{hr 6<{4:dU E]3 SvbDgs=z=QBowrzB: ? u YE`_Pj~RV0mh сO硎Jۃش6Oܹo'̼@;d,6xN~@٣R+aVlxgjWqSx,L([Pڿ]*BR]B"DxޏJ9If{s&oO(`8!% yTS¸#s4L_^Ghq,Kcjj.1Ś2daTGT+l%~so]FAbJyVJY$o6Max^Ap^Yux_i˘S3w]i80 4DЏ\`rS !x}`AG@,f{k*Q}l0k5+QdҸXi`pKSJʺd?5qN1si5W ѫLj;.V.rNɤȪb||F!p賰lD]SPl0PMD0v,mߙjK|lD@d[=H(Ϙ'5W$i%vFΝPv T@-R+l6~@| cqaQ=:xR2++v{ߨskW;α؟z5{R.b ؠbm2nqs<|]2[e7U b{F BrX@eepM [K = dSV1'CX`uȟl>+Bˀlsg#)$TS U#\)5M$RЦ5nid1F:‘NJ-{_(}EpOYhE`=&#G"K~ak[Hn{,9.Zn%Jk>gL%[( D301vPr\쯧maԥ3uJ;ۙ8܌v`JۀfgYU TY]gX5Z>S X܃MBp,HL2 ՅN=IEk?omi*9t⻺yw`+פìz2i%)kE%9v@K+)~vHi\s<ЭP?No]ATg#_8Hf}8, Onmf}-οiσ6˻ip< ¸9.N 8+,FtPO?<4smQ=PEft`efw3|l 㞭|zLMD{s>Ix"8Z-ŧP@:\=2A;5 pe$sOn~7RNhaJ9=aX}vb|wrbk%KsV G̙]OeC!J}v?wə{G-3Q2G:bznp'٬Ќg"cY~-U/ z?D{ u(xC}yvO8ifE&sۣPf"e;HV!Vn H@Db7Oϻgz٨D4?I>9K濇 a 2QMU~NLlXz7`mˮIKhaj+m&1Ml@Rϑt(Jz7>je1_᥼`֌9gxDYD& "NLSar2Rs"(=XxzOGJ>I/gg) xa_ts<-좺};t_Uv02H$UĖk-EuVvik-&l?LtYaha5զWsZWb-D0;EJsp=8| _1r5GҪVd0"ˣ@|j[C_`V`[eg6{^k#( }ڮ͊y 1'L<}UbOX9T7E DdY&+Jhd6[1O(`}ȫx%1z2*FN1|<|JRc67f˟JEɋ0}(h%eQK:8wČ'ܳG)?C␔F.%.TuMCr/~ǫ54>t n F]sMD#[rP Q $Rf놃1tqϐ|-0'Q!X+uxC5L e1.&BA\}F# \W&#bp }>7wI]<>GW4わ/Ȉ31 BC\ 8fޮ8_{"rđW8 xlHnɕ%ӭ ZFWO ɇBs @ĉT ]错 Qfs1Z58efAΜ7]|"_Z'n~c&Da VOF4sٛK:\zƸd<3B`8щn0V0Q+V,%t~ NMg< ^ lCGgX=c1k˱xZUgG4WM"yR!PExuz1HznU]uo*Hf^| r$}~:E=ǹdŰHjܣV]̜-ڤ(Wy->=oHlĂ>ʳS`Y$#yG{>'ө0S[f 1UT#D4 jB*.Σp=ƭ\_*̤]n~6\rN6%RVq:@3>݇Bf|_`6gnо5]{PTb&ϸ**@)8f-?@(G /-4}=fϫ]dw_>MuȐ~[bNK ykiPҟ X7ٶ:lٽwO1oQzYEݮ E݊Vkm_CQH}<珱oF@10hm|˦܀U6!Jy -uHgpfyu {82&lܻ8 εZ״ʈ)6Z_B 1쌱 ~zru(|79!- ,!$q!ˮyp M>fDxiϋ:or$"< w wA֝江Ԧt؟-̜}6{r{=O,٫Us"ʻjXh,\X$vA.l ޜeDexm3ϴ,C܍>e'qJbs}d2g[BΏN|k Yזb˫ԉWf.J/WjVrլgt&\&`\ "gBMU Glں%mO8(gSaXVo6 yn&`߃ui*2YMKE-3Sb:vJ({n~o [~pjF1C> SͯT@0ޠP|RLQo=y,)^u3 }CidBگGZ L*w C&mku\O?B}aP9zN tw44n|k K; 1i7OկLff?p`RnO!&_Szyflo C4G1L |ޖ$14,0y7cqF#ԒaFʱKS#~Gso{ R^ v*y-OG>1 %3 ,jRi&| :)2>`9_0;5o0G0J}3t*hF,; (}l4R}xD$r_>=.u SQô :Lv= V}y t[4e [JVGL|>ܴ?:6A(?{߃4nKʒNk=+h?m ] P; !o{fS=:W/z{PljA ZoH`U74+oPnߥ(W[2cY`W|̿ңTآǿ&z*%û޹YԧSp<6|I ZKVTp}}5 o:~x)Z|\7@ͽ\A $4rqɨ6o6GD ^>MUO-hfU-PE Sh:q&'0;Cl']/4 ƒQ/5].:[ KRD0Ϫ(ٮ=x2rBO@w\=hwND|t.37畩7r4U !pHn6٧E,]i/^Cor';Iq| ?'p#1O4]s?rOGNv]1FerlL*NR\frI߭ wEfK޷z~Z۝ ;ie$ +nzz9aO iǢt;9W{p,oj y{FX8qХB0Z-,uj}/Ta+ L@|%MQ]8ʩm FHD z򎑢eO#kv7dwξ͟NL=L`M[ I/S-\m\3b)NIjV$踲NtMܷۺ^%]8Q#lp?[4ZG4 C-̲Ze5K0/֝1gǒLڋuJ; AX6xՎ:bBK!g>O_nUxluƬt5B|4u6jCw~M.:mQ5˔>%5H:(/( ̥UGJ4K<;]=mJky+/H`%ȷJ ^Es=%Bud˟,`lj HulȍpE!|sLJ>^RF3 k\4c~ =$ȤYXD Hl0 {kM;ޔ5) *|tL93AI5je jƟwۗ`Yɮo7+vCz YrMK-A/9?`ZY9]5VԝVyݫu ?=hVTO +b"@]mϴq7 S \dV!3&,/~ vS~Nl*S֥K9Ւ!TxohꮔahTLҀsP򢩆j)Bzw9|^qJ YT`YyCtߪ;⢬r=q)F^wΟ {l"%pYv)6Re2%ٕ1w{(`]0&NIo68uJҳ##HShͧ~<"{&EqG]BR) W`=EHXFA=)k Sw7Sah:%dO>Q mлP A l a„ͣ>r|ri Ae[-1@ݴz,]Ou0;UW,D88=\F5@_O*5n, _^r5;k\$=)72MR ZbWt/%ҵUb¥ٕ rS{. ~$N [RfB`ǚ!|eKmŒ% I?MyY>pZd+[;iQэL~I`@XgSIxr"=0 Ǎ?܀(i4hAxقE#RtDW[n ;)7.%9f<\:NnpVmhKn8i>py+)32VLnE5 [>s⦸(;% "l= Y]O;rk5HξAKi#Yh(&mߴl|9,=dUBbW;1K}|7s5A泏p-Tkmv;]+=eC(꿂ڑZo=r1++ҀpC(Kb֔Q A4~ *豚gd~Rt;B*A%=rêz!.uOďAE(#gv3ְEPv>NݠK(uӞtOq،sZ[>GVaJD؃|S: Ǒ04(Ao='pY+R̅ޤ RؿА̃)IHV&>EEn"x2d =hJr5M0)}lPXy[ߩp$jrw&F>@$-:yG/#SgL];E `)w>; dd&Eʀ:3GI]70G?nj{U8En+sG-Q"烽l:z;(Id$xGGmg9Wǽtq@~/U ;:,6AMcȁ,,xޕYpV=ݵ]3|iB`Ϳe{ u>קڴDa،q/}?9л#JD/䒹 ppxF4un 4\ƒyA bLeh4p[9wÙ%#}ݑאO=yKyAhR6X;hn8 ~E=]Ez$z$Ӫb4h漑4jrLYE:0FzS)7m1 P`)k&HFa-X75%_>^:W UquѨ 2h0ZbV|C*6V[hDlsyBL?`W٬|Ȩ(7=>{L$R *~J/ )8H=BkgGtzߏ*f, gϿm|8[ߤb|&?يg2=]Բ6@}ZԹvL<1@p(TW:f|1:c1'la/vІart@D2LWY,_"R\"2A;P?Lr Z"dXܱb <#%gnh`I}|! '֩ 9`w:uX0 1ZMpz+yf9˖΃eF7)Ͻ;=~Vj'IFT.{ڿ(*ncT] iгR>XMlE"!v\Yv&ohEAq\iɪu-cРpVЈ;| u 6`Ok}Yցt ovU fzD=r|!H_US MժuwZ.=[d D{ NP,_jG(ݯ6Z 3t3Ux=*,@8B({ VKwa]fc\JU]hg \i]fFCX)8Ix< V.,.sVTǮڼ~ͥ>Nl'PKfil0* / 5{o#-~L,0(qUc웾u)BÑ AL|c1ѕ=td jbC'+t{D]cR9:Ľf+G",ϳUOLd8; $=H6(E 7_~-7XZOJGb6ܑ!*PYHz1uHKYOGE& R7̹NGxȔb̂V Ω- y B͖î/6dhc 5l'NYϮMo)'Wኗ]sĨԉ/[=lBV+ܾ+D\WRccj`Qk[w+YF,^$l#!xZ ` 8~Q9[2 _2E/*Qt7NcV.Oq6+c5PLc 3H`ȫ;Ǘ+ߎjA+~ՠJEybHX* '3\0M1 ^4{E=CgJsBCDò -=h\1/S\3>l) ds-kp)\.xuRF-b6Nu ڕ 1 D *ŗ/s7clq@t@:.< Y{+=լ;7.c>>{P2n|%rOՉBe4SxM(ʅ'qfh]Oq ?G^?;wsvʼP+O:V~ްIeuJB s V4P_44|1)}<mÁQ|6ΰk ; 9FPK&ˬ{f;jҔdyJ gKTy\Ӌ}FЋ@Y6&ڞ"^K66<+"ZZJ}?d`|NTAa;CgGر_oLt;۹i-F>Y[_=c x"o51m$x"^9 b,'|taB"rkXmTs5YC QbSL={nOyH7M ͊4?~ M,4^jd.6P T/!EC |FJ0,-&ř6="^!O#I^G[%sHpm[t ڱi%lj73F}?y}edGvaLa1%"D;o I9P.. :_;zTwօv f9㟉Ͻc)*:䐪݌wJ`-BVKOcsB@* #S0:Dt͛=*2R`&< ~kf hk!, O33•7BTg=bZ G rV}KoHe $"JpVCD`ܭZR}6ՌY:xV dg~!r_}qs')enX5*EWk)QOVDAf BsD2M <@,ZBcN8;'*]R?EZݷqϘa{\CtFZ>F!:pidL3kYxy vgܒ)Jfd=!]_ !!G+O2_X)-6ƿ7)V8IaOͽgǜjȤ^ 'iϚ6Wdfhu0&}.}t/"xl&lѼ¡?4U|^+!dEDK X.kN2Ӆܰ?f VsF%/&D#bp^|=m/]Lco\򼀠C3Pod:UgF\-.έrdO4qVsptbveOV "w5D mb~ ?udșUͿ0g }N} F 9me^IݛCL{#ksZ34}bj^zјfw H~գRiתXJ a7rYӕ[(*½3b@>?6XM.+AZ;5X0PZ٦9$~DF( U?+CK&wbʤlm16T71lޯVajȼ55֬`8δ~UI(A*{.HsI1qt{xƻgPk,^g$ ضfcAt*Isԕv|ȡ-͏B&&L?hdK6_c xX);.}r-`/$wς;:M2nV#UF8'g$$3r޺4&ӯdZApFzG -K*A3ˇQlO#wCZd[D\)ƚF5-ݍĭOq;l2B+'řPeتb#o}(r1;c:_p0b]oĈՂAկNj~N7KD>]h-= O` ?oްĂpB&*rus|j}N? &B00"ݯ f ] vq=)x_Q1!k:bĠAp-D^:0԰df(Є?ӳ-Q8gN`9#/=v#Y-2 1bwK+ gԪ  ),&Om,vYDkыzs)hmv]܊jy^< ar9k>1?dz<$IXxQʱ`O2@ݛ6Ip_RxTP/?=wyb.aeLθ!ɣUƅkO.9Fڤkϥ1]Ģ Gb(Jʳ7s\Z=nY.`(pǑ yDM*;gH.b`~Ʃ!'t/RxzoAč nͦ`CI {ވTDrBmP[O|ߝN9F%pNS<ަc붋C`HGoEpqˉ[.PK,е̣6 [Z}mc6,K$7 y3"EgM !=I+$#c>qcGDg/ˤ&FUݴMIm~ZTݝ͠`jӻM_n69kШ#E$"ww70^.Q/KeyFJUԛOm[JDZ@^‘Aʃ?m!Ȋ0I>7@cX(XHW jƇSᅉxY(Lz\lTmdWB(`Ɔ7BO)DU˟8N=yNd/W)^"5KB(ևCþ&M&̨ _dpLG9\i(J5R9'` %V, 9I=.݉\wr̔uޤ]:mʾįZjDr&|1TQ(= 7C!CSsT'IPv2$ TrcE$npx -VT1?{xp,hh={|ٙעgn<50= tpysquVr/Tf/- B Ź$Z̸`rt<\MDu#}_ثn\;8>c2DKvO?ߪw§WP#zg35 l 3ߚ19Rpxm)8RBxZz6b:) V{LNVGAo|P& בR DV})\608]r*hL*^_D@Qeth㲻qߏc> RR PDpE3>5yM~"4y}¥RϪuWCapޚ~I ~ laL.2h>Y/[ė~gzgdX 8*غZJHH1RI@ ف";mI;Jh |ewj(]bv2,l"՝% sqKU̠ȶkb-3,0H q.{WI&NJoʣMeF_苋{u9Ϝ:MhC*G;KApx$O\jti,o#"2Ex$wH5Z@(p#Z$M|D&8tz&*_,2@YC y?EsrQ"N&qΎr~2.{fOVMؑ ό\ fLaO:JMxsIe#1(gΛi9-|x;8>#ejY>(KXdE> u|<1]h|Sμ}Rn:ShzY IVÀ,g\y#~$;y8X6W9VPEPgGV9ja࿝ʩdk1w|Zߦʃ#N4iiܠF+ j@U"RTVikP!z49.8y+}ZkO{! ϶:פ,..R3J[*YFaM'LТ,Z9,tg4Uo\cvMKrXcɠcӝ="سU6 K/yk0}{q^X*uovrBP'(*1@Q,} [?8 e׼g27gA LmnooM];׀p8MBPh_">by Sʺ2r a _3bR+fct&ЂCVL1]In[EHa嚓ME.֊~ٙv;ku˟l+.+K K۩K&51_Z/-v?zZ-F#zfykEa? 9M$ByƟ6r6hg]3˷|oz}X#U6B{&&JN~ {%ϗaA[9ʳPdZ%A;U~ ϲdUVx<2|-)l vE-~pċCfԤJ?JaiA\Ss9' ${cMڳ+GLGfCsJ٪ˌ@m$,{fi LҸg*05yjŠVxnjF1K_c^e_Wљy=W\Eo.SFT~)aЃ8e^L=1)B]O0X^- CU ^*ޙ't*|XfMNÎB1"~ (#rVBbZЃʚw/Лڲ$)q(UҢh;@ OK8뢩*KH>6>̼rNQ(xE*30_G@(CҰfl!6Oڈ@I]?ew*c6w ˺[X[+ՙ5.5*"Y$,tګ:3zNN>_{ !;G{vz$}/-V@p(Ჰ9b)P^Cɪ9x6;ʵ[u>ޡfnuj1h98se/ƻPLB97$n:.BiVuJ:P;@LYUg{*Aq- iOkX7 ~fJ'Ÿ' ZwJUGD kf'v+nT`_hn "+^/a? x ,&be78de.`6u !I\D"D\b}ȓWo=лk O(XwJ`qw{$=|酈O8 ^{ssI)F4_bˬ(9&B;E: ry>yl,!; %lA z.Dn;U (aΜ:>'﹥+_tྱ!ˊO74!P0Z\Nw3xSϢdwhbf^7ՖXkY@ZAMu(i.* ^w&`i5^%`VAf $x {JIT$tig4`9h_sɻW^ E*ŞDNV7f{&:S.zn'Nǔ!5a^3%?q[Ƶ~0#[0TZ9]xq|hrDrTݼqXS\ )fR4NJ ØM6hquNPv8(i݃*6Gu eWSΰW]/˘)7crc^8;r;Ǻ%"6ZБg(XTضf|ءl6<+QA"zIHϿ&@}ߒW MvobG |RaHLpaU)F~[F\ %GD&gRE{b\ےH|H3ISch_8B!YIsUQ!ayo(_0W҂OHk5l#k,8"+IѴs )%|,Ϗ,6(p$T-}%|`i0~x_R},M8=Oce73#ϗV98Sa sV}{SƃVJ]9* 81s4Ͻ43K1yqKQ;^)6Q>Ea}ﲨ,YԥVux46u99Ar*TzR5@Jm^J ћ (zi5&Po)U@Ɇ2H/a5 VkyPsG LM0y!uBT~ܧ3KƵ8۴ۂԔgFg &P!,6SW$a#؇h̢:I( GnY~&G\#e PQ^f}cI\ztڦ]SsA}È6,K=/cv4's}}QJմa,.̓.ALTg-,f'9/S S#FSIk$P0l}rIJ𱥐S}ӮvgK1ݕ'4Q@@mnżfˋ&8?"1.Wt9L)XO-beIN25h  pfb|:/2s܎/K8EB3t=?Z;)K`c'~.,skz8m E<U3ےn0ӔqGaZUl'ҽKXXE^#w]ͦ"f) bსKuy$#FuD]63fsFr2J98sY&3'{UN @ F֐ 0 rO^۟4;JM-C\bN5YY3WE"Hqݡ\de=M?C i/`w8@FvNэas'邦/(p<k`" Pt BPfv̮p49*0ALgq^H@-}ꅥܨuq XH״>DړBRȒxV/;߬T^׾z8єpMhn~Y+YL|hP-5L~ᐬbЛY!H9a)+Soo1mkJ28-A4U 2/mrc Cs 71=BxoʪIĥ 7F[`MZiUy)ɢoS=gAv} neY*,lfaΗsULyϓO^6TMB`flrM4kZxeK&@m"swA zCj%=6H=tJgFn 'lmN' ۄUzG2rS#:j+?e4ߍBw$N|6EQDZGx\/jr(韉4d0 8UwO<&qpDD1',sLk0LonZT5٦۲tWCC"22 TܻO0se2AtbKjxj4ȫe[Uau1 7}1µ3,jՆې!4p6E% :KH(+Osf4xVY33KjyhFGhK~wqx΢5/ 0L.)lVtM3TD%}roCnۊ e"<6 +~[zDas63P$C{X irwxԄטbH0 :"VkF3>$߫dyff0.fX(p-9wF8҄b51gah 3 rwvFaDFңpk&Lg"' H. x CEpXC41?2zHܬmYGHY DHGc${5;U f p`\b! Vmo|nͨKH[pN2X KteWܹq3|/vV[P IYn&׊:8'}CCP>¶3҈:"8`I>k֗6I쳦$i&u+n^zr0n#ыUEMٓj΀8kR!E{j)u~&0 \D=18!'L9z6?ĠG7\<(ٰHv$A"0syycGs t5r?n׷v[7tP4b&cNGB]4{yB(â/BNդROkDsUM&Uf$0/؜ZIީCIvhRpiI18ch_u(w63Onf[F}(7΅i*24Jr*PJoVf7 mϹPb6][6m\ (a@)u{W ~,f;Wtّm vC_w3Lgt p3R#}H^" ,5qz /J !JL.ZdY-J:z^}l^PI].zT3mR>ŰEi,1!x̬|Rtu(ïJ:O[p*Was@G+/y6jr 39lan%;5|L N5cNk1j%ZdcU-leuɢ4 mqfrߴI/3&+,ȁZ4o ^5+"FY;hnT$U?Yqdhx]$c刄Afk5$ۂd^a!n9[d~JbAhuIl'ww gT{~OpWz_ k?^C'4 ׍`#$^(>?Ugafz_% /љ /,w0nsO@ Eީ=i%+'h! 5DY40E$Ulm\6}k\>dPCJCOu>ɞ\|_yeƭBҷXk@}H k[BwM 4%.`080*a>&‘έ.Ӛ@t`]- uF$ !PsAH ;۸/2ުԹ*)U|- bs;Ϙ2>oq$W+v[.'#m9 ΢*ۼz.Cl8K<ԯs:tb×b}ui |\3\&]Jv<Ι'ŎYÏDҤ4prEY+D8E ;YW.6ϕf$ [۽W;o/iA'n$)Ǘqcnݲ(֮ PeAUD.gnJs7uiJW B#eDG熮qڷTOopGRRh*x"r CF%4D6kZkO$sĕmMS,%?!~]([rN 5ti,H3j5_d>6ih-3/|ӖG6܋flXJ;R\^ j&-j`U_q/Np937;]8H'|"!UTɧ!7P/#[5KqTpg$ CDA|859L+WCZ3_'(DŹIxtBa]fێwcĻH#0Ɵڭdv>ƹ2g6b=&0=#)GI5[ïZJ u+'ixcRn|!ؽgquR^wJLL(Ӧ̣L<0ҞgN-Ǚ:'"q&4' O5"w&'ZL%`양o1*7[ڞ)B߬:aGyE暭" UT@H{Hbc4Q >Sd?T:dtBk4ןSkȋw[dy wr}p)%3d]欎~," Hk֫-deBJPR~704AlNxT፺-('rj(J.lϫX/3ZvMvsnS`UK:A"6:%ZDXԾʌ“THx Hwy4󢄿X.)OEĐogS42ZW=8I@dR"_<[\_!2H>Oa> *d;c/TN𭙘sF/|JTS-[}x9:@" Q>~D(cֆ T}Yu_AUaA tyqR:l+: UձTIne2Gjp6^Vo]4?D-ttCZŘV48wBsZգɥj;W&j ̥pjT"T^F鳨}d@p/TƭX}G'wRx}dO)EW'N6`Pn(_b{sͷarbWi]*GV:}~tP1l ۰k*2VI68Njr2՘we,*֘x=ؑg=dK"Z^'18TȵF(B;ɮdDIBv#[#P!Jv.Z Ea+Tj1̽ հgRXH*\B^4sVs/&dA05MKnt19tS6UP~PmSbGE[f >Gb1 P\w6_%O.ՓlZa!d]O3Wd?oÆ2<[6jgV#{ګڼ4 M~l%➹l)]h2S7M}p Z5vr8yX'BIw g)u sLuT[,q3K: 綇k~y;1HkG!%ߘ**`~ϣO&8 Z*j%|(R[h{l.KV ŭ اͽ8#f0~fe'8=Vp0Ŝ"9}ko  Fz]y` `E tUtg8y:YM -6TvԽS$A9!yLȅH=wecH YЂE>ntRq'YHޱLQ>I><$ >[Yd LwtddzZo}?#`C:\9"XYoI7]દl:keXkj6ZM"eP߇םdQbojES{_xƚtv'0(pGT(VF>_/-T PkhwA;Ff-15╙ DqS_ѳw3熁`hg<{UNeӦy3߂t3Ь4IZ!B h dJC.m/4?RɟQizMzpt &--C@ο_bFcymlГl޶&b? ?B!Tg4eT Ԛ8$`5 闞:|b0N?5Wu>Y [ v&RSa]hd,L9WI 3Je *=?f/H{x?zD1(Dπ-w7,3d~H51E+i Yu t؞I dƷ)F53*)zMl-YlO-,ӝN5A(NnvFrz̄4bF%"wꖟTdA%O}5\@,|gM$"zVHk^;]lc4ףx~Șa,PQoSWLIOftfW:KKvkFЂ pj[1ȕOW<!ڤLWf#!$ojk*;_c&(I{q@5&PJĄ VSag@ʧvU>;7_T{G$cB,q BGMzJ_b BQr⹔ ~\"$I300 GSp%Poϳ1$adw 2:[ŌR(/XpZR#&&vpuqAMl|揎kmlM /?[oEy|al ZV}8IvD촐lC Rtʫl6bp/ѐ st*~v е! r ݎ9$ M?M{Ĝ- }_Rj4AtMm̽Z /(Xd\y!Oh13^.+0a Iy#VɟQ$14@ ukYVrrh<)sN!t.j䝹AϪ6vckyIO\ufBU= ?`.Rȇʰۡǖ &`_d,}?ӠG#1DSExNM΀y43Z=e6^u'.FnL)z1BT-A8+8ۄ_A3Puyx#~@*Gƞ{>Rp| ;ܬa]ڂPfZ0b{ n-sR̄k({\ BEC cRy!L[:@>'Art1z0IWcQnHsй![Pɖ ˿߷vs7M5}Ҙ3KϤ#v{{g}͚=7؞P8w[`=n?RP>> u ,! 1Y2¥P 0ѱC^"KӁAkk[bK'~Qv'r1p.@R`*^0x^K1 39R°iSb2@HKӐ챈!~KQ ٱzRe&QdmpKY30?ses2 QR %)T+nVbbIqٰ8CԡZ^zT4FA4>ފ>9p? -! y$ { (Ikc_F06^nwu[/ɇG;C6k/YPb5L Gq@Lͩ.aTs1?sAmd91E Nyb{IxF&C"!3ۀʬigm4)G!!-ٯc c13pucYA;{25&ģo;ۑ{N(0V2 㰨LWL1IVd[|>AEǮk(Fx͜vFwԔF7g8\}dPu=87yƖ,/ưv_٘a샓s @4ȸuf&0]>;~/mnf3g)%i&Oݡƽ7%+;d}ԯ?Lqf" UW߂ K!ł1Sù㍺M9Ƿp)-e@91'#F$| Di'm&04Q<_4N|+Cr-P rxRz*2/mSt~+Ɋ'dEK9C[I+Sd>XZsFip@]  oNVdfAۮ@@K=g:ݡ/ 3Lg^f4~CBDkv2-(ɺd}Zs })Vŀ(~42(@Ky{e21)KsR0=m|1:IkcײI^Mt;N# Jk,?ֹ ίovN=:_ 8ϬG൅HJokҵleh:ga]YFY+{u02*-D{0K1DEtRYiS3bsrl̻Y(d(I.p2_1cۉ ,)g9^A(LDǯAӋijKX9|'q.톨"•foaC?RT¹ղ KPW ]hGsN z@ Ցbǐ~wlii+"6W-c@I>E[ZaØvv({?.с=У0$ (TۜMOCO!FvƉU8:&_f;^b'OAvQ˄ؑՄXH__Ӥ-ߘiPp嬣8oOVL80g(WG"H\r $"|GIZv$h:J+rG"$c͒}da|J[-}!.KS&?v䤻$zq{L}&EABN)1~L'i>Tы|5㯏 M>C[ףKWh#[?R[XF|+QkX2^)尫Aי$T ;v+s(;To:/%j- )f lbĺ|gWL8W9-MHdrgM4pR[WLOr Zmt>H{`d=U-n{z*leQ6LrZԃtFs[^x$>•Р&bb/ /Dԝ:azh^rU2阸\zBim4uTH~݊iJ}-p2$.NÆ5mN] ic RvT%h?|N=?*qtw~+[&BVŭU#gMQRoڳP7^2Ca!?&2)T4-ick{1pxĀt3YM;T"_yzHvvm#_kϚU ˆ2_:{@>` [v 6>=gqy҅nHL+ 2uH=sg[uy0o]9DN^RĬGC:5M7n8V3S]n""b:Qyd Ӯ}Dtu!cV 0%E*zSIVlA*8mŰaܧ7isġ>y,y_18Ԅsggq" Z7Ie|Z"9xv"G$ЁŹ ى Pv"b\]wg|,T\ԧ(U 㯥b M?JV.Jxa3N.!·yiyW&}'i) ɮ7A/7aij +rq8똛ZIJ xV; Asɡl'W(k] s\A6s<#i #oʋTr`7 igoo(<}=AP4އmHNGoʯU85K>`lW 8R1[ #$ rp%b69AV[3q#F41^-fM?-hy){f`l(ɗG,#~%ehD Xu^_Iތtc _0;F#]}4_.BMʶmR7[e>Qf^{'99phkC'}SZoF%N;@R5ù%2aMuiS4p^F>U&lڝ9.肭O&Wp3U$bF/y'% fN`s '53s7z+Nƛ$+y>CϽs4LBxĪShn<CP$ ({ &=:tW01dC'hSo]c¥D+P.iX$[|,-wƈ?t \Wd T;K!J㖔4iD7M('a){ԡi7IĈJ]O/*9i_x-X^E٠c[;(Q}UКRN ,Nj*+huo0>&tߓLukwAoNזulKB(*6-+]HL[B|YzEuQ\dI唝qB? `)+'NܫyL ZSsGg ̙6Xo5o&EV]C3݈{@3h$ < }[1a?}!PMPϬU8^?<̃ބ0'ET#WwV-їfՇ6w;޲% bxǔMPܲ+HX% #/ۖ{@xL6Tيs/q*lԐmfhx9=N6K+~ހ.qC]G 鑫?-nǛ.T,[DU`G5p{I !ʘb3l/ifhO(URO:Y2L %8imրX _C5)k^bL e&!keOBg"#G4F;57Ds+-N:*Yiw Cd.|;:Nپ=~h"9W藩2W4K8J(Җy3g99:fE1ndюnu4XŴ4k]zG {8qmE_^"|Kqn<+ * < bmz}lsD0B08LpBԬiZ5K5W$ژ{LL9 W/?q,0:2qr54aC_P*a*%_L NLwcjZCb)C|rNhh>:=WPTqZFw /Ukw#uU'rF;fB?{s6`_Lh<ܪ)(!oz2^"XѢc Ե|&H9 cvRy'Dnx #;"y*sQEfp\pdԲ:HrSޱEC_V8/)Xcd,,8WM4:Y:4MƲcYAZO}뇔.;*?|DcDDpKpvlTS#%tTpNz.hلT8 M>ޙP~H7q 3SLHzaIydu $K3wFp ~*I nsp/Z"BI+9R)mm YwɛMw6Q]l Y f\DKQrӌ6ugzռ]Fz!GC\BC0:uscZaoPox7t' B*N=xwx|TX$^@@8Q wXF}|%G1#"Z*Mrz '6.6NƃH%3BY ڼ3ڛ'CA64sªv;~yD^JKcY]/2&@9]cUh4RHPy`3ת"d?w#P Rנp 4*ZDA*lnJ-ImUo38vi5 .'sM=Ȝk[[8D =vk =eNM46ր! KFp!%K߼X[`SOPBz 7U82_CE1?(FحH9p o1i#d~*ΰg b(P0Sjg Zf+XQ OD|ˡaFRFK^(Sk߈?:oh/G9B1ucٵc1 h[[%qx z]N++0L46?%*Mqs?7:y 0;N|j;|3 ytKZIMpIw0yng{H8~% Nԉlp7e0Uga)},t?L{UDHws^ ;_gُ^seyn2KaY|"'&Î \ce)Wv%VW fT:RyE1˭L: K17H[\LƚN@K+dyeL}*A>gIi༇/#'Y2TNLр.y #s=D K')ѩk1:9hXļ_ wQV 2x|#VL X #<7IL 4(v۶uL|A5ť+97y1*Wӛ)0PLY8Ta b0;jaS:WC%yy2bi5<͛`L/4.Zä펒9],( [aU6R&sQ8@7Rf$fX]&/NvN-5S2*Kb8 7&'&Aɗ'P 34$ Td7d }[kL_4#mH:ʞRq=I;^0zW? h kկG-Y%Vl,#nKcv U*TELKcCho0zUд>3Èuܫu&iz&; %1]B=h`NŨC7} 쾂Pgq֝i X9c`r"v0mk࿧~ ߶;D+8k::fiG*AROJJ[DN&P)nT)d~šwfbޛ+vz0>6. V.UpcƳ%S|Q}#WN2sU?ߍTTMy+>q9 CV^vc@hkxv_H`q7Cx7֠pɮ/-t֪LNj!UYvb N 9i;VMyw"?E5Nrp.eTI4V.L3Zsq"*pxߋD ԐaLT6R H}8,7(R%Oj7䃇Aߓeh9"/ݗ ?E]XS.I6xCQ5NpRf~]svTg 9h s@6'LL) zC]=< 8&o76;\siҪ|a$ EwB'Mg40CI(v{ZrD!8ĦP}beP}J!WhɑhF8v}7J=`1^]oW ѭӆqyV"ǵ:V'5;@[;Syg.Ɗ9x:(B@o"kh.^2TKs9R="+S*QuVSb! C)K[pv?[g*v1PMrw#'lPTL@阀pgHD%5C[ÚnxrL1čC{<7Jp|\#5ѱU@h`kn/) Uz~tl^.8u.h۫.87U.BL~sڹoyMwS UO>GOT|P2[Qk\s3De$"g.* B>׬çPz 8Ekl WAx`ԇ|/e0d+>ǭX nh `Ӎ $\4ܩswrp9k <1XF0te 1*C3?Gd O`y { fAku>ŕg :j~ G||O̒\l~7TYkS>=Cll PK XS\YȧImSqjʸ26+WfXI]T;k+c!`,NQ#9+rhdv(eXnY NR4AC;0Cɱԧs!A,h *_ދAo9Uݢ$Ѕen=D4Mi;';kY@-=CoN\DuHu-dsq|1s,'V2QbD[uqE ?<+`3?Tb5wt-eto &d ̌{@{ a;wTՑCMכ2s*bI J?JT$}5.FZ^DMhKx] suRa]67 I>SL$Y @ Tɳ?>`] G}>Xas5K|:^jO\݋r `8j9,`'9fմOUFL;`J3\8{RV n*FdRgdpxfvውz=>߆fϿ/NU4;ZkK_H74vjXvɼ8̧t:?0[rU Qz}5 !ݠ18o| pC nMƲ,Z$g%/kyʠ=h']&gέf,x!ڬdռp?*=#Q'm}5'5ܭAXƪe-s>_V$^،3K0&@w,7n&bx`Q;aɏR!7:S={le?zjsT&`m;],E<VfZnT}ãk)ۈ[ֽ)k@hmf\ YB"S,-L2Uߗ7~6.mK^^*6f-̓׮s,\̍{.k;Id1ڲy}2DTn)2ze!caᶄ 䗺slHiiD=Dw1ɽ7a߭E3 PZ_E}$, `,uHͲ+{'R>%=?LZrͳ./ηX5;ux޴qQTc.ۦs^9v!GJK:GnjKktд#!P(p>8m_bF2ng,ƫ`tv`F~ TΊ{/T-=1G^nzY@߿<#JAeMQ"`-EݛfS`IqE;N%G (tZ$7ʹ;&.0P!eA LG\؞mJ5jJ֤7vJd N\R & kv: &nЏhNhh>I0b(Vߦ)%TJ-+7\o\{M^J#WmB5Y@@!*xKpJ^wEj<gL,[wl}VI6xcDpUA|vyZ7Yw`t%B0b#sZ᜛΋i2+ sں˄dK@6U@R馜nLW1f5ZM\} ?nX";B#YxGdQJ9;tm|qt< . <6*#\T.&,ND ѻ7bp}e*'!fnh\MF]Lۄk$|VnYDpρ.\tSe8w: Ny*܀Z UU"ZcT[(WuGޭ =7|Szf;c Un|A4{ W ;_H'h|o .pLnK`6O9+Zȿon .FVG ;ZOC[IDL:]`@{"-}( -:;E4coX| TEc)r+xAT.G$Ʒxz67I:zX ٜ@.Fr @ic! 0 .jl*9W*`'4/\ aMRdBl3_P3t;lH=7<wc$#T"ǽ4(HQ(-BV5^? 3=PU3($Bَ֜PP1tJ89;bQi[ :}s fg/`[ʯbQ<|>z~GG?.}GxU!( .tb oGXpgN6= ~+HSP3N`~AL,1;A^ PYm 豛D9|H@h@ .Q=؞1.?aJa>Ut[doH-Qs2{4*H0QO 2Ev3}F9NU E(D($@(ѹA)DZwoV^[U5A%H6jjfˉ*wJź DdlA{h*vln>X[MLD`@eyl9mJߺQ™~NBvGhh>$q&XwRC`~[K8筯i@/lT|azupV_m>osxI$(wv{%A9<ρLa)Dy1ɏ<[vuvIvJ0䠺y/B@Cֻ˃ FlwN0{P"so:LE1,lg,.q)]f:`i~+".|PjbpƪN0,]Tp2PL4 +]? ~ c Ɨ.2|^Ip{cđDw[}{!ﰏhF?.đ$}[#i- ?d-Th (3oDB,jWoaݞgvMj,hIe"P=T]|2}|%ea"؜]Aܴ.ʻm2/ĩLtPĿ9JZ4Gff\kcu+Fڊj1 [uxzG,h&'NBQ,[qEN=7@#rehD4~SUL*gAeR`+VuRsolrb͒ZxQsE/o}GIu8@$',x&Y6THMj/zGӚ%" :WR&VQ) r@lj09Q{KؿftxΏ7xD\m' <U8A&.c6zpnX8Ҏe.x#Sކ~~4_M #te ;aې vbp|xQC(Ws 4AvFfN%!+ahY48hu7&"sXҦM8ɗnJb;hn -ixP24F,%A'Zv8܉DUG_2B@SwS ф{6]Tu$VU0LW֓Ar*vĉ('9e[CJP KSlteO ::˺)'q:z6gxjHK'\Fe;5LȆٌg>{Y_bٓ;4QӞ~&G+CI~P/}Vs\*U˫Ň8Dt + {#{ImMIK`X|zEj'l0 i{ ߵQO;x2wN?vXJv4h1Ғ<_e>ڏ:Hhv0Ja71Y$/RHOH/>-F!-'k,)jsQ tϯ;QMBz%࣊pAnvFBLjM9y `~'p_r\?d=-1O מt߀w5H7%"p\AHlyZ\v1cߦozFT=eĢ+, =U(}V M%,ySޠfM6ŞWƒ(ٜ~'2nIq["GǗD\T=~#JxDy={(V8s8`Wm޾wJTu[p# Lն;SQ CqA{=ҵa/S8gUGbMۥ㐭Xv-B}ڳew!=uHI1e},)UDz.0SsbCkشWE󡩺p3ٿ{gaJSRn2zVFWNb(L+b& !Yo>@lp0'v#h̨MȆ J`TOr? 53@ _Nj2a%Wd'ˆ],79jjUQ:9f1<|7OH5wxPwY_h b=E SF\kiח}s/)w90"u9Dk-<7i~|$6KlQ8pdQ'NwJ6}^( +2r?wFt4+Xҙ72zC/H&6xVݽ̕[nA64}'YD#XSj$϶,(cZDE=gљU'tZ<Kzq@^/h&DJl ]6؀GyVI?D2&Օ^O:nƟ Lpx!kg;R_z %/d~h7@Yj茀o*SB5·=OwGhOB5O~&ÿ9Ó$>YEn['tȫTA~C^wsfP UjC=ѡ S?Βz%x\9{@yg?{{jt͇"Qݔgv=2E- c4ɑ'/F:tWߑGqÜ`4bXM::Bml`.v*Y$z ϨB8G,+ͧly >d\ͲN#}BAd_\q\iV]6t j.(lA+ 'Zkp|3sq~CԛwOwogn`su )Λ3ͫzI0nӠFg֟\i ԅ{I bn8T8r{rK xZ*Zՙt0p:afi7&.C,\i u~ԗo~~թnoP]OAPC_n#6rf J&ySF1\d~Y>sY?IkQM*RRbofbD~Yl犏xLbzS) w.*[]L:0M4+o]F#IY.mVoa^ɥ)mUg Uز4d AĆ$;)B81>򢔄h3yxrrFTh7V^,^GR絓@1g b;C,/@*IRLu:>eAY3YfhaւSUk:!I4)ƑwOJ/%r岣<X{~t}1l_~9a_Z']{pT=a/aЈWF˚~=PGO/qB-A"HJAJ׊r}ð w}p:d Rfut3算,zRtxzYA_<*-y:!(@_uG,',C^od%r[äY>>*46Rb5콋Sy@C;1-ZX.Ye,J? oL Ң')8:1-&j>> R$#?β8N~4w9\ht͈-_svUc+@mcV;F}jt R0"+oeɰ jIek_}6 ;jӐ%; m^, tk 4J_~@|wsz l5ٿi!u= FΥ06>t( 0v7#8e[[Tݖ`&SV*# :]:%j4=VlݏYC*ObߕzFg_BqaC47dC8UYy,VK +Dk`*LtP*PCǢN-xo/,XkH@Kh>3|ZP~>z'pv@@nNV PO<D5` X' 8e! ՠbhZFreae ZOR:R֮ la(Mm70rٚ\Dtk@є)5]uOv3%a&'/ }j3A6=<ںƉ@p<1UD۩p=[7{4+/{A.H9-;x#uX [:;tli\Z M %`r6Y\4ZIǬ҇$<>)s"zV~.jE]n4zw71O>;!ѱf$J3=]F+,[{#)C5N%|ڕf6d'-/b<_!e@9- g3y HSnlKY&A"|r%=<<^`ֱQq&]o>-rKiSIxC/njqV^(K`Z_P#G'e̎55xKWW1 n, eNZdN۷0Fq t3ÓNע_Drf 1ZCސwW}%;rX*xRz7̒dY/RA!RBDEjJz-JSEbJk#7Jl`!_|3Pk.<}Etd!de8QhpMϱ+k|%*sP+E(>+{@eO=X oN^ZqU4=v&vB $Lq.DV|" ؒ%I]ƆeopjO);*AJb2r'¥We HƑX/ w9n^vr-39`HWD2=W&L U5(k.~k,?uDᕮW lP^cZ!yI;#VJxfe/>#884vcogQ6I;s&6*MIB ! eapw p\{OmeEG'=~̫#8a FRQ@.T(ML6M5d/*yvQQL<:^ /sr>ZK4)Yh DB,rȠ7Lt^C #OKM M\≑uFZdGŶa¼`( Dl%V]ՑouynDF jP8%Od4 TpRp*Vcs\ Q:tqhJ+&ԬJ Q\rz,ϔ f$Hٔ˫pbʰ~s?QS^3$Q/X gOn<oRXS!;NBbrͼo'x:-f.cu4/t[+Z`D2&]p~&g {ఋ_ƻ~^rKQ"a;z(PLJC5a8!4#fs0o5t87Y4^GS޶Θ~>S|c͈tVu*D!tz~W2&fYXi/uogqm]"+lTFu@B_u hR\(ɖŻVxH/{k]m_:C?/= `>Xoah'(F=~&*LPϞ񈪭f̚SDey(`'N@H~PEYZFpnh+z}جizpeI٦!fs<^$YTR%vS3=>եJ'~vWVvz+_gV" *z,/͔Y{ւ GJv>h .,IeϞm_S1:{3~[ƤKsĭmZkoHu2ۏ-HX驿ʼH5_(m.]t8DF]/ϵͯ(tHl?נzCBU\VSnu 1tRTf蟘 qQݠU#?t֝M\m~C_=ja(H# 6A O+',@cZ> U}:ZљB$lQR{ގb*Vg\yy O3h99i*D4>̐a7;' s?3d={]uK>aܪ<0$ha('01Gͷp|q c 9&XrQ>R> I1K9c PA3'9*{@sL;M Es{^W!R074mW;v!3>*ӯ茺*Lґ)1Fy";o~^ʩ%V/L\'Hs͌mFaz\)m М=Gb?[Z6'g"]D(W؍O f~] [O)u5?8^ZVh*I>#l$G2ܛQo9r~*e>ʑdc&h!LO"`)05Jb.Ŕ=ț6 ڪm d#P‹'.1kdւ8X^4:8N͏ +J 0iҳz`DpDc-xɍ8`|%9̯lYG}3jq͘R(RA(,%r1:K+zFC$ȈiB@(9|ęaaN٨tGŊr]ZMdc *%+@ߝRT띇ojL}‫`M~[iLj-n\+}Xꐀ,V%FC]2a,O/֑dIџDų'Ԇ:OA)戓Wf(|-Zӊh%R#P]Ck- dVNC~ބbk> P1oW7Ejlj#3IhBN48E.=QytXbFsH!_HC#ť^}e-]?`yIJ=CbΆkQ)8]8 ! 4ݴr{oz~՘.mz,5ܹ g-14s}?D=CI9}2%B$r.J`ؓ.1txÿҬYLtfk$2=%Wg J- aiUSyFm-B?6$7.۾I GcKh&c_35DYђ:2=k i#"h~a̯;׈xzWAr$b:sY*+Bk. $lWaʊ 1 Ə_jz;3oӎvf]_Ñ驀Fz=H/.ؔ6ZH^Z"s㓇R^rAuKĢ,jfL7~IB;uyxB̟>3)*HǫRydu1ߨ=O}  Q aoaf= G0'D J;p4%cxשѦaLhŝl7 cf` +Ҽ=P>ŽBX1B֤ ;! щَ6cT5{O!ՍZ|Π[d!ML┽U+"(Ր\4yx!"C]x N? ӆ @߳\'k/PZmPV}n_uļCehڲ1\۝YײATv(T߫[ nI5Oϭ[5m^N` ⸏c!+ˤ5kj.pSHёf-_1NTIjdkL|ҿ@F(i+'q׹#+% V([A(Tٹtir-SRg77 nVb7g㺼n$?m85P_]{IGo `%Ԉ9b[/5IhvV1V7hiI0 ,@PkԟM$EkЩMPshHf]LGG?['K)d5L-67he56U58 lnؖK<4NjWZ\5!)0?OK]ekQ/g G2Ql|u8*_U&-dϠ*ޯJySipғ\?`5rw)I;=W}KRŒ <53ti#uHPlvfpa/co)Ȃ2;x 0.Ox'AKTSSnDÉ(xCR30Wݒ2'e$ݴaJoR#%>e`f(YW@IԨg]hD\>OR(Ⱦ 7f .)XJG?=!Oozgi&=\>Whg~qX1|#:"In`ZuV *Wo;sJk'=_}AȟCu4A޶IW5*3韨6Fw0x*?T, q-50n Dـ- )ZHd V'gNݕW;\fdpWE''R~dutQS@|M2rۋ2רvq5Xbqѫ4xIO { M=o=,ub:]b 9Ɠy[S:_Gp^>I TT+{zKUA-Vɻ&&/Zof c./}~`~Xj#uHIJdK]֬0U%peY7Z7^ /JJ'epy̧ҲMxGrk??]r0xY]+h'i9JA!4@z1ʿ0F=w6JVKZDZћ5 .uCXf2K]=Vjd f3#E.p>CCU'_> fC=pXc1?-~N_oq (WXht$,~D+g]mMX<ȉۆ@rI~SQJMtTj}T$-I_i6\H;"㔉esl5azIU-P fMk8ߦLzꕚn!J]cΨL.w1+_NQH$ [;9 XLLEC1*$Iry%gR|&`yBo\.ip걟p/ raԧhs=K%P>37yXe[ ^3d3hJ̘ Y] U ;(+`ХwܡT8.ArTMJЈUx)8/S(?ug޻u灴d5t6NE]@ r4])iԝWsTvBnLM{!Yʠ cG 9Cܨ(nuT- ׫P1:CU뭼o i쟪&anD9eJqk] 1(v.ไ A; ^y[`f`.OɎJٱ^Hh0{]+.T,(iBQZUն=% WR b!^bY C7̐׳u 5*^( ᨻ3HqA +՛@?H SI2S#]%Z(m@|rQ`ԃWZNbp0"\K?nqR gp'U5<*T1aOmum$vhKj^;f?"XZjD(&iㆺ -mwT,%n? )gzD_lI,5OL~gf7~Ʉ21ȼɊT]kpӣꚰoCw4{0Q?ek,qRJR ,; :y%yٗӪl-ĤL>'b@wtR%;0D<22^rӉcЛQT#LI4Ot{%1Q&{F*J@% PZ;E̙5Γ/gq%;v`639 Z67/x\6jCT/Y@Ă_;LI*˹p o'V"՞f'~ `%M6M*%BFyKݮ>I)2V`kO̩lz뭠t4#,H*B`>- :# EFFTAށO.[{̔c3I1pp9>!^qrD3vƗ plrkE|0@לy ec5 5>Cx5M 5 7Ļ,V7,鶪"jPRiݐYdA5:1FH9IKVӨ|!hFoU++tLN<86NjnfZX K?9DRX,":U +"\a4(3SZB;!m.:zfde'z^!Yw1;a#ܠ>hO!%Ht7l95p:`?1ߍP~+{95P?bUXiYBmе77߮zs73gON1ʭ d:"8;'p頰,}%fQqC85#PzI$S+-nMmJa\s){i"ĞDŽTl6K([> 1Dl7bP66fu]] ^4Sl_%R+h¹Nqeќrwz(4y_E&(l v.)kG jѲ@B {;جhw\ʆkXaTb/c jG lWgϺH5b"D"H'jUkMEŐ޿}(q ": lm$Wo`ND,W  TȈTJkR:a8moԄ"'S;k<B.h dH8&I/3/?-ͪכ9cX*0o|EQMA)CbW{v׷㐭xD|3靤 KhwKt;9VIp|'iok7‰/>Wt8L333:H0 / [5M2H @?fw"\zb&\IL,Y ׃UY=`BfZSkg@Ky]ꥫnPW%h8 T\Qq\snIv$wy'.pё#V|-/r-|>lt92;eCSdLK4lM^%mgiRqQFӹ{%8jƇtՃ%h[f9ޛuyzz=wVw,>ݰT Ziy$\{^e:.U@#o^S^4 +fͨhsqD+b3X(XFj K νU! #~ư`D9~/ӈUھ"V6{akxg~ ClIԗ-+}=R1 nb̎Dr S:G =gYyF^٤s!ײ%|Z"Z}Ǵ O+ E_L-kSߵ jzñRy=D^HrڵJ|eE~+ gRI)xϤ#=-x*"k6$kÍآ)Z7| jx:aDB)Ϸ]kJfnScb| 1Iɹܮ~QIi&2vc۪C\e7n$^s%J0-v# 9ɃA렃Y$HE1 "g g8g)=AG5OZᛷ_gN82~%ؙy_ |.T?4јG0Wq| #%}ڷ[.o/? Lp&ٖRW`]vkbvA;^Bx]?Z/??-_MS_@V/nu+%KqeڿOlh2 A7-P8YF:\8IwYUz*}}u ^A n,$TğAԼ~=u :!$Dlsk3 !\d G dCm׾EAaH./%oT+LMb'T9^~V#x fRm-݈窹d]xTO`{K}^@%|Yi6?۷9 ֔n.ؑSϬu$Lj;hsa;?[PM ?ݩ`㘑?{~Ν7 #PXL22U?NK .:T]pEa٫֪CuVjg%iÆ. P柁H<sk Vm6O[K!hБVMd_H1 Æ3Cb#NUP@/dvxDTe :sDz5c_dvES&&)h.{ikҏ.9f\ i.wn8gi|[ϧ-KkF<;>`z[4@06Zz59OF N8L ʗ6@?sfE}WLH +4k!rTjHdGz}d~l<ŧhB.4B;4~0_]De!}l!+O^$q;Dix) DV|4*|"й|Vp@zl/_w(yIJ!Gx0לIQVoeR]`Bۼ3ݕ+jt$;]ȃ p?/fn)ː0ۦ@;$c_L zņ+hO){<6Z{/Eu2H| m(Rbw1ў1?QCeewe)$\0gr܁Ƨ* k~0o֧EpИ8]%WK<S2`=x-" !|ϦAjcŸ2C!6yZ] wa<D0_]i=p$r<$ MRR~٩r%V5"v `t C^ (R CNaP&Su\2!SgI$jݵlAJhJ`Q}쨜X`ā=Ȓ4sd3NeSfxH]XW@(-}% j?omU BptW*]^f%9ħUʇ dWJ4+,8zԝSiHSۨTK.\})ʩHb7N']8r4ySgѽUNJW\ E*;= Yz\0g(=$F:>+ͬSMlj?1Z>rV!Pi]@^:ra!}88ɊH'yXwIt(@>6wTvЗc*.a_ϯ]ԝw |(3\owbIXA|10CF4~1>]򡬢VŻC$Bݓ*^Ć{iSx_rrků| s YzD 2g?4Uل>V) ! 0EY Te>M&&0f4 tA36<{$=7m['J@/`0r|[b"dVg'%~0 i@A]W}>p7#Fn^vX[aRy:sLz}8d}skV`+-FMlgk?7UuwJU< d 󇖐hI[Rћ>AK|0ŀ1TM >:J|6ERQ: TCJbiQ7O C=~1`~2-WtL5/~-&**fL9AC} ӿ0ՠ㰣W$,iO!RiJTY;.BGs $62q1R樜QH߁~IB: {t6iWr '\m6_Cѷf]l+.,~/axȌRlԴDߪb!DGK.\v";S޾ڥ! 1!V1I1qs=̈s_S6)380HVA :ң 71O.'GU(k!8= uNe#6}`t.W[}1dLmN`moĺc$ _u=NA~Ś7=tA^ ;~Ovg*q,@ܪmڞj\WPuSfmS4zg"#@U.TM0 fNzS@*-_-M0‘ /|ɰmU A;J+ 9& BP].AS A6WeXp`'7-k@{GKIc,bl{\W0~r֒ j;J r1ѥ.=w2Jه gYҟ1U}Da \tO4EW hbv5tTnSPBhMZӕǽ#߿*\o 7}$2:WP:rD#ۜԽK >ۈnrA?~̊}9@5FͲ^4H%S;:$-=+$;j02L7D=5b?k2Νc(H3,Qd%)m:Gw|j{~PzDFe ђ|ln@h E-JΞ8g)4x(ˆL\%Aį_lcqŪwβ,kUEUoMkԎ+ wRZ`PhpDGgNvS)HV+nzZ'4|Ke_&9'd߅JJse"8\[Ֆh*u Slû<&9\oFfHPa'[>I][m uz}v=JcYyGNOp(x}*22ʥekYcE k`6í?8gz8ոux π3o-TVu7J\ZpnػV3xs 7)ңg>30>pR] Llo~)LĺSw \%@$q/3t˾dHg WGHjp+#fбCxߖm5c~(1Gݎ 򢬳d hQ D`6T%^\I  yDha2݁^"B[ܡF4~-?8?U.tΛ,AT]  m8;̦̔ۼUJ 2>&xpѤ0PiK$GU\p'=VDC(6bû~awD)]rh'] >€_W"藔=j*;2_$z](>w`PXp]OK8p%;x%=uyEҧ̛ F#T#X}z9%M!@yw& ȣ n-X}].J?o9ߜ[j%WLlAѿl /cSz{>>9{8nZ82;̥ (tjէX#T0p 5㪞:Uao_/q,/度I{+6mO`p‘Hȴ<AY?6e: mYT 賌4Pw*t z/'"]ӵD07J{MtK;#ӊ601T)36zHȬ-WUڨRX7wn$ذ|V}G(|1$dF=ߝBC+Tdx~!q"chANzejC5='2&%'d tkcSV1C ?Ed:Wph+tUshم'U: vt="H \>"N})̊rǡ3^w)^o*G\uGC[k=vAY2ti8N^_Qf ݆AQPzìWI<2b"LA'/ރ'=攩st|M.ϩPPk$|gC->䦸PiGsOӿLS2x80Mg {:@Ip%"wTRFVEI^srr͈I@Z^7PP63pBHZuNmJkqߨ+Gq:&~oE+`ٰY|pPś4wȯm^үg0 IpegÝ Dޑq7=QwZ"JXh^~г&:+N-`ظBF'&#r y풯bZS;-+; &Rnj屺 7Ag]΂h1@`2_Yuuev,DتEk:Vȴ>JD "ڍ$Շ d8Ǩ?e)P}+b;jlԬ|ۚOnhΎիݺUZm"Ff}0yhv|յ1]^YIhA "@ 'rWq*SSPil.PW8ۑhG,5t@} KX66ok` A] 0_<Σn|=jQ `yB$lKdAʾD6ᕰ DM""]ST:-"Mvt0UH-8Qy+Q~6iޕ1R *ܱڼA95-QU5K6T&o'L3{]l+k>!Y|*\j߇ zj&/34X[šɳ=.{u 0* rߛ+G#\t}W#W*=(Ut&n,C@\)KO#ƙOTö|o<'yhWܚ'^]5jH"ae֯}ZZ+qA/ɨ*n<ׯ?h>#~'n˪ilyQEMvS òg_XAOra:}[-W;|cf{bYL, feWǂ?f!2 :ӡ6v v4V. W@Be ej zU^qzy J7Ejd#_$%j}U=RX1JhaXhاq9s$N#p=Bkboū+*ޗA=*ג]oi,?WPcӊ|Ga7#6BBjL81 g+$fzgJ[ ck>FrV_w9c18bph5&]PboWDG?gaì&Ց~)@ڄ;seqiz#XujAu`+d: /C6dTi-쳻s7v:wF_b5kio\,jRI@SzO]$@$6Prg' Zf7߈ ˠM߯UCv@T] Tn3*o)e?^58n$d܁'WZ~ OojSbWʑEFiyVK<̐a]0,gȜ GIhgpC \4G'O:Kt}4OɘR% Z} ghZLt1NyWPA^YΑD.k@2*!P8J/zT#ӈş4zu蟗\d9fBЗ;x6>pb/Ƹ 2y^Uœ໷Ъm|zYuj G?"]tYf?cy++ᨿaO+̕#CUN__B# ꉀRnGU?x2"x i6= K KN{K\>vk+PUu%a딽 "#mDn8k ګ$HlC1ݣDWd|yJbź~O P^y*]p<P*%  =BUNL ;O x0Iq([8Q:su- $U-`B Yz /{;Cn|7[<[$)rcܲJOeϗ5&71Nk@f{4^Ԥl2l i^A01As9CB%XNmo8 IwB ~m s߾(oql қiRSKm֫poCytοlnYZ^ߟnM?k5阨fgrK ıTVqck Se{xӫ/}_" c ْM4rk򯬒\]]B3g{ 9$h\TPƒ*M(EǼH$hZḱL/׉c LnIL+B &)5~Zg% Ƈ#DHDCO_QE-'VhmO (kx&<irqO=v2dMC~ ~˙nI"65#4¯@@rx[5 ~Wټs@ȬХcYfsʤ1k&W?4r,3Yb\E+ֱju"X̋Q - u|UgmZgvh٩]$9)&ߴy;`1TžNr(yM:-A垓@w807 T|r(ȍ4{[@Y#AdbK:[n\vW2ޞNTx/WPϙT|N?޿̶ iN!T>QAY Mo` LBV+\cF౎JX Q Ք|9L̍MXPg[Fu{B k9 gQ~.;/eoT~!1OU&HOK]"i9`up|$[⺢7!lfA`"&f=%ƌ;YWx6~\WpFc_ ˪Ƈ',"v.qq"7:ȩ_+C \fƙHbBw2h9S]CXސ/uxⷯ$Lԧz̚԰z8j-BHZ:A0RoZ1]I'Lkۤg!乜!+/{XT  lv(gFc|Aa+ha;^fIE. UAp?/ 2zr ߿sdc<:>+]~9F_em<;)C `#T0V*-4l?[VKsn t!%3䘀I_*ՆќV4(mk|_x =I"V3Wɺq0d>I3 Yb5a[8 xq Ґ^Qp$ޥؗ_h3z u.>c ]XL O 7Z,LԙU_V0ˇ3F0Џ|IְSx9APTWn'|mFQR۴&ȗUl _G`a1E‡~z.Ճ cEz2Tv16̽C1/q>!vʼ񚵽.Ղx}K5^929N]MFֆ >2އ%a@@RЖ!h3GAGܯה< x^])h2F(q#d 0XmqZ<:QQijd|>f;*JrKqe'r:\HUQ_wUHD=05?~y_V EYĭ7{ ٫ ,szދuxSAYAc)sX<;7ED`+$)%2{!?^fbMnab.~pPչQKMT?LÿNEn_ ,)z1.eFTN0lVDB0b/mlk'囆cSX܂g!nhnjN; `wʬb=_s +m(&l0,1;]]"9;&.E; lT爧[i4aN^#폰rmt$P>լǪ3]R#6Ecm7mq ;ޱj/ j9,2]@% _T#d +skZqbɾɍ`նtrbrFeer\~9MWd]Mjs+ޏ-4{磜@m!@+R;q[Oz=q)7PJچ}A0W%5\&JנqVeQ]rp$3L>.tdNz[͍cOnbKv10_ iC՗7<]΍M VR -Dl@#mGta(foTg=82-Ȳw51~x," 'Wn4f%k+E7aɷ V0R[`54!m{,O7 *E|IìfIs'HY*^7]R؋l۬Ex*1wT<׏ 8ӎVM(v (<*>pKJXoKaoΉA;o}PsO!ֈ|U* M*ǵSaCYHHŴ|Arj0s`0Zjp-}(hg#u#^`M{{WɱF'5*;^-brexzO+!A`]t`#NK*T֯[V=ywחJ|i@h% %7|^;SY 2.9\)Ov Mt0;cP/=6!Ax/N)L`ќi~bvbYZR5W CũgѶre0?#Ix^ΨQqlh|E7O.XD:KCSx ğ?\ &aNJx?~ăv;B1m.6]LK+n{)-n}_%Ed\oڄ~SkClØݶ9:DZXoүk#zؿB܇/pt)=ҎUdJ6?L?Aa^T'x3Sa1Qoc50 S;6Fڶ 'wdWol* I?1g/^^pf!){ ڇ퐊^xO5`~qvlCq»˰sj}%UZÊ976Tș2}$>6ܿXRbY [NAADx^ZutE}p?_ WRx I 0gke?gIK=T,E?&GKR d=R e)$[Py*}{_aF@35wiT Y g&މ~`V 2aqQXew%cyn9[a uJ?J+"MYᄮE?) Z_g5c{H0uD_!O.?#|tݩ'88,:\B 1uREwR]!Hb n-뷃ť̖\-a~k"\ 9{p{r?в7/HQ!S(q҇n>('*AS&y#'cft 1˺d}'=P#,uޒ_!9ע] n a 6gQ} USǛ"::gwNE6XQN:g _X8 Kcj M 8do"d1Ml]z3ku@w|<eg(2 ==+5̬|Tj&$,3ksک= yhf_R$#TL/|ݰѴ?N4 c Wr"=7نBvSZqB(!a:f$Д kkaINX\;|c26'3aPYlNegk>ͷnrbx5ufIzF|^d P~p7*t '5yH-wʂ_&xGMq3"Rٙ|W$!p+s&eESڼբ$vq%ȇOg/AEq2< '(8g^&+Pv#tj V9dJ r/$s^c0 b&- TImnD|yNX6//u`Vr r {XW`t0w}ӻ:蒇%x#KƷ=u;]\`= $ Gqy=_mY~BueN 3IxTTMjNiZe)^$=p7*J?_3ķW?vFo=w^}}j[<2g8L"O 4 -y'n &e/ZXdͶ柱mNb)`@ mNbگ46Rm9 |b8[0״;YSdy"\2%U_\/1,8b HC ]QCd+O+-BXm䥚pCؗѢ(.F$eVEĔb> 4wIfvovPV)/_0=˩vmLR\z! Ŝa|QJgP(o.X#tP[VJݜJ+KTXqk_‹DhHVrdpXeufS+'rAfak>)\Kh߂iAUY`6w`E|Ԭ& AKX'!F\Lp'NI5{!GC;".{kTF?# ,ŠBZ0-L&Jgؘz}yf2J=Fe]Q.%UBp92ˌ_ѐ|ȥgohB<&͎z.]PuUn@'0sRTA-aG%H0@ 0)(]cjH*)\mxx|(|>4:8rN'c߷L, }xR87R #![#ـTL$ 3ޣ:ϦQusd; V#z٣tOp eu sc`Y։8dB,/XT#BؖnCT}v%vnr%Nv DA&(VPr OҋD`a0:bc2ک42]Odw-PNҏM64t& 'ٔFC/@.V<{jU-\Cޜ'ho[HW"X PYatU/W#" е9y L,.W 8L!luGwa$2o-Y&M\ bH{"6;%oU]$ȋY&QGNz164u•P%8O eeF׮P~DS)Ma=YK6^f[ev[E.6A%qƠQM:{W>_u(FS|$s+P>Z*1Qy8z#”(T26.{(c_&P=,c7AУ6z˱}Rme0&KEB4Yc)-N;2'2ڙ91&Lrq W4]qTa_%imY; (bQ% aQcmIsβkga|l[lΤCȸm^ci5vEebui(ʈVDou2X9`z;8ɍ Wu \ 2kj7%ڧ_H%i}Q3 զ2mJC;cF/d^s&M$yJwj@|ZQD_K.sY_+%zYfݞqMنtH(%% kL#LFU5uI4`+cst"\RI)"ve2Y\w[?U1jKjpwK$xڝ`lBj_9lnd$lM(F. hiW!T/yP0x;z buoY |0O=Gh;VvGA zdZ1*anj0>"L_z]/ FeA{R<8;#OV( t4%oO>4hi6e!̓T~ [o pzw=H5 b*^KEO5 {ZhI<}umwjGfզxKM5F-vi$wsŷ,W?]؛Y :r.md*%zʞ,:qkw2[Zzڻ+|#t#=&a-jJ gq c]fbxHy EDPo\ŝi4bQS)Iugg,3$JYo .rIFiIg7~On|\ާvVzS˪73]W;[5M7$;#M&\PKeNh0iH ft n9Hkӟs=dՖ)-poJ`cj5nB&SZp t?BhƼEhWO ZW8Bzs5IU$ "_VTl/i+ {f_Sӑ0NacH Z:#ا6UB74Zp\;P.@! OWy^ o-lD)}d KiM o!vdҠ[5J_nJ∷ǼH~x/xY$ :KM5$ۓfIuߝev~VLuf&mylzQQRv *)$"r6 '֨ty oz7n/UM .7G=ەE,1%FJ'n,1GD8KVO,t;>93Ꮴ@w&k(ip}`gP ɓaU- '۔y~X> ٰ <ڄ~֮;Q5Uc9'GJs s""=uFUzq{pS]Q߿+}Ƹr^q~DEʟy/Y ^䩚|W8Ƙ DA 4_N;aoE4TS*H|3Ӿ:@r>6PXeHajpFobvHPt_+^P",JDT@dߊ ӭ 5&rA?@+(JÈPEp)5UDՖÂp$O'~vC2Rp? w֑{ת &&W9J}H;nB6uk#Jj~[a?!މS59F}cRe*Z B)](=4룩='Xj=&"z6I_ 7#!/*jjGO?LJ4֑ Y c11.;g\߄nb"n۠B$SSGMsZcC o 0V='>#!q;r1urX`L1H{~/o Z'%,6FI;*3w{w Eopi3ll|%tbc8*}˼k%$ǘsQ<4LLo^oޞ'hXxKV=*=JwLs8Vц9zBݞoh &&=$A % :4< DXWhp!zyTB,IE:og7YW}㴘D&@YzЙ)5JùBB%`F׬scՙ:UKs(qQV Q#cZ~0x!^*{iXHf=TqIՔ"y`a% 9jv_,HkzH̦etȵUp/Sv\]"N| BWs⼖Uu`A4A±z*3Aäv_Ol1 1 0QEZLY;A,Ak"Ҿ4Чi 1MѰTYr[>?ScE(:BG0#jp>-MAU؇+G5bdJ H 䕅d0 A|7 J(+AԹ-CL~֧ X{'>l./X]zіbeſkTPWxdD\3gHc;ߛO̟!U- rETYGM֎-ڷ#w< ;.3mV*M`R# 4;.0írwe4+E@[%d*31!5dEOAL$SDiSvy9H!Q :?a͸t#M:խV i0cևoݼ-g{A[Ҵ4r^o0%3h#i{q )6!nz֤-DƅGX/|)ې6@GJ/09~:.mFe1jԔ鴉G}K~rJ!t] ]*M7T(0bݮ&d/\=_ paN"F-[q[`n(4%s#3e|hdceX*okm. göRx[ a>\<*xw4%r tBf-s)B1@UKi+@*uĶ/ KT4 P#Ê2Vn݈sE,X7dċ}ͅdF VwM 5;b[;k\ymZAJ^z_y耲gipq$&{d¨͍_Aӛ6>!$uxBsh7d`IXMqOlfaҜQ7Yu%}zj  <_)kmVrbKC-a-1XfJ Y;4 QQ_3-J8W׀c9ap*X"`Aqh4[dj5ݪUvdn&B6:cͨt߬Lݱ2Utk) 9k{ sqҚ[0Yh.hDٺXsa,_җ䴣2 ?d B??s7"^m{hCQ֘,z8^(u,,ʘuR^I}w|x>F} 򢭃k tU5w6^?Q.}2Jg2(IKʹsE()eĢy3M5~ KwHԧ!O:m-H6j1C|`xB*=AKʨWyKꎼjVo2gU:q#E6l{EţՌ5vӳ_Hc*O|3b}ש0mSΘ{!nF5s)-ЦV{'󆀔 ufuڟe;6oP|JO-biB_V@gzXxZ/.=9BݘD ?(aeCv+Qjf0LA1$*Y /zwުB!_MUv^ǁ0ĭsJv֦awxǂϷ--{^X`K`s1]X!+>R]:TaF}Lx3C-tK.pʥ.F^x!4GPW^i݀iwR0y.h湀r_"zMRM@~RIuxEDvD-GSqǟwCP:`=H0]2ɂ Z!j )iLA%p]"%G?aT3(wB״3_T = Ea:k㛐k/1?QGBRNO ݦ(]Wd\]#}^VU {eʧ&+cbhJV ݧj*"qSXpT^N!Eו1 Gq29Rèh |.I+͝ F2wv4,V%#MP"QPP `S- fdroDN$XԜEVR>uszm(LD^;>؟* SsAkXjf@UJvDA% \kLAO%ʘ B{2ym&@oG"+&ȧdͣO b!g PM)PXZRn3P>x@^T_iW2 3δ04ɦlmx)@PFb)F0ell[P㧰ޱQns-O|$+9LVx$O4~~%{C6]z0ί{[li:-k|UM?Eu?`YtKCp-صwmZ%.[1_T{8WqwMı=dtۈOtS0}FKj" yGyܦ[9g$@XuNE(Uq7]$LvcxEC:($.O &C*]W Ic21'ST)g06Xr@5R3T`JIYd4OPAϺ&Meʻ*lp?,xy8! ݱ0~$ĩUd2 K+cM'3eg9OJ{P.wdDPTzONP$.w3Ӻ-Poˢ٢$;s1S/?^ F&~K[6{O`\v- %Eؠ2$ӽ“}9IzXFq3msVJ^8 Kb]d5X#9H8G.P4n7,G8֢B^]Χ\=3<ꞬQA{xF!q+얩#h40!г0x4l21AG}8qz`Q clW.܈#U6LfhA ; ٕp.@E͈|!Oӡ`@B/Fi4e"<ձ^um gHS1]maJ#k"AΔK6n#sm(]ɴәWP@W T FѲ@^zD߫mym E.q7r Z-}[ۦع!c3-J@t?b}wrbI.-CqbL| j. T׮eiڕPfrbs [Ȏ:M=cƈ nOXL#ZuŲ u͘CUy~<ƿ}2>אxaK̝ F?sF2/+-ۆM;*-o1Mވ%-v_pD_< 5X%rL9 Y*yǑF`Ƴ8PzHLy@ Dӽ*ΌDo:<&_i>Hgρ\ .rQyFڍܓRAZep``˝~Â2[Ā`5Xb-B]`ah uM((oRo '(@;f)^R1VX{.U/^?)>=Lzy|+H m7Kې% ^9nB; {j h,{x0#戈.Y'k-$\pcϥJyob*w).L]w$A(I6Kβa{Jz,'JIT[,)_ <r$5:Ƥ'#r>z ׺Gc* f߽M}4ew W{?u]Gkޤ sbnpc5I艤j4ErEngIto%[ٰLJj/O֠]}f|M3@82~>ޜ)BW%X+,8ӧؿ4P\A+2z1c HVع81|0u ~ Ҙ|8EG|tN@ &F?d+,W]C&caQ, y;o@ZCE=zSHD"l6-BV/oFI c,D*U1;~OorWf/E Irܪ8KrdVk)]2S-|_']A~J !bA8RE鼙%$^⚃ao6Ş_=ϰ1y;,쨽J:nh4尩/@Z}Z1wZ-q& (EtI(ü+*܀UagyF)kszjjhF@5Y'?a91ՂfP8zeϪbէ*>H\({& '1l(!kֱ_yHhvLU+= ^t; \tzHwh _3 i/|d۬(Ru[aMFk[ C\Uuԫ+6Ӫ@MgSv"$G+mUo]> /AVdAURcFq#<4/9˄ }SnJt\sn~F_ "nT[~>V)v8 yzwTTkP ,3Tb'Z$ zL% 2bqQk,`k8grٷkUd#vYreYEoc@ҷ e#@uFi(dt0O"[+~z8O~}=PG|8A=UQ 蓮p=]7q|.7SM7 ~+QaQ.43$CD O|anO^' їslvle(gj @_45dGm=9!4:x:/2EZGpY|HC1cZjU}GylCra"l:2e^a Md'<9bj0t'8;R[ i]cy"ރx84䏵HaQyho]ƗG`,9XTPT1O][.8EGkdK;) !?E|{w>UwmNxu9^0XQ+S\R|-#~U'9 ,W%jPUU4(N 'pftmtL>jr xx#gyg肕կNhthEB NF?ȥ/,%T@*#.-D}I ~2]fkfxQ=-śiM8q]nlc% SsP{­2^&-|\#$1" Ҝ$_$T'v%Ot+ BC9x3}C"cט1AzO5b;(Iry9Z=%!3- "Q]G*'1'9JBv4)r5G&0 XM=xv6,TfͰ =r;&&QNn ZݪeWb(Μ`-"ѡDkWeH c ]kd:Hn!B~=Cb*zAV=w](8x^Da; #hd>U6{Lm~dq80zhqV*] 7?} 8OؑƉP5(]22#\upw,E33va`f sSLOՏ#8v'F]-ΕEqzwpŕgqpN zɦrdbr 7z+~p$ٕ f _BVj"+7gp۳C7ZS@F|(){NDqj4T?8|OP %lNnHzx:Y:R}5P?璋@l*LbշGGꠌ)G!9? ud+sG.^oj mǓ X'H'c YP傷A %Iv"PPߞmҎK%vjgɩYbyzGVK 虾F'dif~ԯQSr6"iK_г{jc璯!h^KJѐ[2>-Ĺ &) &HqpGZ>% 3rB`?\M2< YbO { q%xH]vgWSmQ ('Q"^>LTc;Qg;朄򪯸{jՁ{]1y٭ d~+sfRrc4B$ ,ţ7 ygBhӾSwG8_?Ս*ې_p;6aaKtu-q0X!jOWK)tScQ%9ДR}Frʼ ֚6AdO^ctߺ3rQT\D'qri O4s38?!uk2ߤk4/O2YJPέ!g2؟&*00Ea[T]M}qҝg7 gk jJ11(yD!_=Mj% 7W%zx{&@kC=f µĥDF-S8eBV)JрT/IEFHpy:I/SN{35b>M4-pguX b=7@ͣєZk8>>ԁkNH8GK^Ӝ$mu[ ah>W\=U it؂#4%zJb3BNey‘p$}scE<ɜpq<NCig6PFE4gsaN.v AIȸ[* 9DrUqIɦҴkLҕeFg BT==tdsgOҒXT$;ڋ2L K~Y/U,r x!N{`,Ѯ`="qz'<s68 ]I0׬GMNۉG b(_zbV:ZOCXGϪb?"mX-9fe@('4FhHr?EQ*rF+@jK۾+Pi00_}jwIHpo9# l')\k#Hð3ꐽlGԋ E:l$l$ .{įS Y؂L@ m[8g4Z"VG]3uNw3`PG.eGuڑmc8ZHbUb. 2DIS0"Xx {a?]LJtG UrP ~0O"*ɹ=YfYXԹlTr +EaCfIۀ@o}'Yhn/>(X`fRIO[EpW5W)&1*\a'x` bo$jxr8UChLwuR+ѷ uāmHs+3ArV&C@Pf&c"`B13pS'c&&|zO/v_('R&CaG@^GhE\aW!+1~B$߅ +]-ֻ́Uɯ.Lg9٫Fמ2S*PR;UAuU ̽kG]W+bU0n?/C>,qg%=-ȝd[~KH-ȋN)4 - nWFp Ao ӟ߮2M6mM?OTM2 {(~Z+ӺGs6;$}KK* C6@%LVW:qe{$_}Z:^.I*0qs![\wbQ%.=f+Z#7A:{UJܗu}JmY r.XU0;?0sc2A;WVo8Ǥ=+;c~A>t8ߞ#LP%ձ[2&d2UGrsoɷQ!va1~/ yj2b*mwǛd܏U&pCJI_冩}- $V_HܿS}# Q3zY6ڂҼ},NQEgb&Ɗud+O\dg?6r]-G#$.#Q C-#t]b^ֆpR' 8{L1ɀz?MDB„]]7rGi~VF7U]WX?#Ta`PrV^]3y|#vh'RTߍK23_8BcKKsRY4Q2>QMT$RȪ';8k;;+Q@I˾#u)T30Ǹ;SC?mDG#גmzXKS.F]]~_+I;;iP [85z_~;beܳJnT _'ڍO``ZY d %E$Y` :eU8ol ڜ99}h'S6% pZW14:Ήԑzm÷yxWLgPx)'!D_V#=ku:鯍a]WBL!f"lr͠zt P 8.U96X[bH]ǞfpZˮEZMhG,kaϴZt 6#OcDW 9\0&[^V mn|dNG´ OlΞd5.;㳄| 1LػYf}+[cXui6*7wpQ ja6AG(spp(Qe)%5N|dnY M1+ꕉ; o2XVZuS3^Z|" B,s]~s%S^׻Q{g;\cH)^vm,iz`E03ƳURbCyrr`Vg9Hf=:(q!zGwd* E+W{66j`]ˣ(0 'bzQW.0Q'\R*[_AhBQ )8X늒E>= r)8% mJT֩D!"HOIhNW▲ .E4IHabRw.5k_fgod7 ϯ 5A"ϗ>/Id /;nfWI6W0뚡~'{GN2maM !BlySґ)Pjz$!{n5SG("}_+r*}!%{B XEȼX{T1i߲.U^ `/iyPR\&!<=#xmO;$7*"*.]ӏ9FCؙ1p.E J@!ȑC>HD V3UC;"THuIJIP β]/RPf$:kzoD qH0sVȮ*[~ fLRv ÙR#ؽW2Lɣ$^v3g!S8 UU$Z5fҎ6nj1mdw/}ܕcpFXf)xIy uBzgG]dUmVߨ= p u&:$CUtڿVBKu5K9apzQrB|)vձbC"r$)unJP0MT_&C'` Q+=QC=T4?RZlh=H1Nxx8[MVnei *j0Y@?d\r \5 hXR-Ĕ/+Y.yۻ~ ׭[z 0,E/tQm?Vsߋ"d}t ` XMFڼ7%֓O& ғ,hQ4P ?gapWRXnz#{8m>$۲I-"~P JU$ 8K5~%o5~B_O Ld^@'|ljACs_0gٔpvUo3 6t,d?SÞ>|` 8DGQC),{aD5xXW5y%eM+ovb 75ŋDTϝpPFI^R׊&XĔߦXxHT {yEb-k +Ѩf:j !$nDgq w[Z N wˠsjv,"0ۼ!g rf~a5[J\8]cdtZK-~ sF. ˴m\TZ}B^2P2rblZBdT9[59lZNj2xs[Ȍ @.t& GJ(Af%<@ NLȊp,r` 'y/w\ {1Hֲ|41AX>@OlX]-&Y'T}GFӟiLCG\Vm,"̂HV{8IuP1Y|9zkM{Ҝa!u.eoP: XBRn.^UPP_vW?m](Z-7٧KHfchaj9j~VyEg_K3?/_lG 6C"$ip`bKz/ 7֦^:~d&FMr ~KsE(:R`wP74o\]ׂ~uQ_9?͚֑-mSq"nۅs /󋲙Eego}|w $/kt.xgص;2i />$4Vt/.q odwvДirftz|P♷ ]zgaUQ:BztԵ%/ŸOL :Xք]@*nc =بZPd|Gw}L;(^Q<,qg WNABUqy$Kb%&ط[^paြxXcoǎ$4,p2+tɡn*RqjeQ'tD^ѵࣀa\_"R+ku}z~]McdD)q=>e:ͦCpuX1s'$ۅgLP㟕dBrb;A~YMLOPs36Ʋ7V3 ||<}JO@zn_0v%P}RV|s%+Zwgf D2nd,aOLTHן&K1*C0O5t')dnj5ap>WW|fg+ac_PNjt!oObRv<}գ4`uCFyZ) !^dݫэɔ3yQ,tRq1881)A6CO[nJ@1<Ѩ 2,G-yԇ?ui]NurPTmֳUQW1^ WGo]QH\P˱u.; /"IVe!@[mww2 u5-e`L7+a+k9vuɨb;6CY&u㇬q>3%R>lصS093?Ajo ߙ"M^`VH/ڵ*Sa8JC(0ͿEsGB"Nу#QmJ\y頠{6qC–$Ru#4]jLj{_'QwF, 4 V^Gɟn2y;^m國z p"S"J/U{dF]=<;6`r؋ޏe}1gRzYa#Lj-b"][sNnf8ctKę-XGUCE0frl!Tw\ǨL _u1u-=j yHW5,Hb٠Ӓv$2j`|}7F}ԏj-A2~=j8cʫ0]B1^3j8J=M+EMq3(OObӶG^|ep&Jp)76_pp8}.FA'!t"$osAmS"U8G`G}G0G7O5!B&|#J,l=rW,39$n^>,{)a#;. p%-Esh'L8Ӆ)S:im~ Rv, >;9 1 JoWtFj*D+0bj.doe HM¨wT'͈~Ey8ݎ*3`nƷ XI٣bGt'FcY #6A YQz|^e6g[eaYTF`wp:ӽc"A!gK2O0:qʄۀ!a""K>0hMܹwDjn9J4B2y;Z*Pu+#ȬjuGFrs]u )51U d )c+>4 |TI'r V)~F>[ Xh*S(ǣTjc>P\VH#P0T)sA `sv7p[Cnܦ4xIp" W>M"uvyui].R#A `xLM-cK~gOUiW^@LnO-8든Xo ~̒sVWzxXм-s٧|0Ojn?J ʂv]E2>Dl(S1fl:܍ T r[b{4c[k+%d9lp,ɹU2 g# F^M*E~&W=\%]֙\7&@Ǒ'+4,hiSnnT?Šv;bItWp3eM)ƿ4Aw% #?8sYxO5 {w:'w2SOhB1yS;Bɮ 97V/#[8[0Lx}+Q"{ AѴT!lb ئܼ}Htwk),00]nFsme8yzW$4A'6R_'</A('Ȉi)t߂TFw!'>0-KxyB\c TE֋>!׼L8|"} fmŧdU?TGJVeEՄ'qi^^:u_lRe5facA0r 3]r"xW'7ӫ*VCDž-͌bDb;V9  ת/UU 44.$46Gg=/WA¶wfè"Nj\u3',0E~8VXU[)&++lӓG۸ouߎ!ER1mևÅ LA׶ ͹U7!)"`046 W(}Q7-SxCP:`RU2{g]`,x5gHjtTҿ-(IC6u9C%cǃ͂9tmT4Dk0U!+(R#OX_r&(uB$ϔx+͙o]Da[+[lܷoߙ8x',æ.s JWKK&A| 옜1 Ar&JQVS<W DcHڲHiY9D~<=<*xn3 |buv:o20@QQ刲aS,4a.lny`\}ػ8 `ώIT McCM1zrIu}b !Pbv* }Tضg^^A>6ʊjΝ X]ҕ ?ēSY&V~߆% aA />QG[?IKo ȏi#I+_9#jT@΋̭"d vfr|2AZ:1:5Q9wRsYLEA!?*K]ֲ5ӗT_Rk6"3M-ZzqM3r 7(u4 ev+{Tr3c{"9=*}_PH վus3_$Ff CD#t c>y_`D Y5C^&bl- woLDtGNJvf׷ '餡}]ئ-bYdժh) ž׿_܃ Q$}{u90Q_9` ˶8s7wDBsKNjlǶMnj iNHfۨ)U4ɝ)x<")ryBr?@mrjlasMuiU]@*_~uo9j"{_&5VFRM @H&;Msi˶v`[,_w  Lk"-%!ELR@ @ 9_WMWK'Ֆ3a[_1odD[24BBlRYDU;|@j!-c*_cj+Qr K剀J )Ũ2Ip%ױ=t͜D&3%όK։4XfY(Źu3y4,dzza!֋qaipg}1V%qϋߙp:(Gr7|.9НkNtW;Z!j?XH T#LJ MMFݷn:*{-GhmCFwOmԹ+)mZQggǟ}$_: 4?>䪻by꠶C cgB[T"qGs@Գ{aݏwdz]+!y%J"V)YlGNpg"NpQh?b] !'ْƧ[iJW[`9fȦωtW%bܸ}oXppq6_Ɇsg\UncHx*L@DX,K;ODm-!|m%eEx~2Q=:h2^SW@`i(A=*svdswizX{fMw.(Ahl2uzy }kczuL;qoGu4F9 H'(:sS\ 'Mf|`M+:i-j5|j᷇e{BPۈLXIs/W@F&WW}o `XcI <֜3qa3ً8Ƃ St٪3'd#ˉf9ӒtmOÃKXrHheqF$QMmJµe"p=QQ ąƎWcfS}I@($*MqPoEG]Q lo~(|vQ0nU=nx3\h70% e_=wҩr X JƏ"YŮƮ/oĞܗ~{#6Kl jE0 BXk$Ivk+> uߨr"Ctώx MnDq`VUWlB?5U{/+<ױ<٦ݵ/yy/"+hmco a ) )6W:> t:{!:}GΌ}޾5X^Dih8^iQ^ !CoCPVaL,u?թr#-f?yyY |^wrFC IG BmjI^%.3)5TK4qL5Lk t w2KG" a7~Kr{]/˟%XS^,.2j3!=Xxsѽ;Ŧ}OŐDcrS4#b8+h\ܗ W`r70= Z|㟬wIk v̟7c^*A`K q/iN(B5\cKD 9Z"؝{Iǭ֮Clճ}0 5[D Ē[ڼɠn.m\';'(N:{eU@s7LP5!fg-W[CW.51r[jB@T_MOusϋ'- ]]  *s3a/UG&p=$ABkG( EZhe#<+HAD~Mu5SK[_x V9+]&.N1hd9WzDΓh~ٟ=uYKչtC,ȑCsEG>ϐQ:pfu:+T½f,".)$ jEDFb|-NF|F<_nqd=I?>GSoPk%J( C|2 . f*-YbRǹŒOajџӦ O97"lͷa!2>+.mB  TՔ=SP8rr~%Oi)zg>}{=S#tFr@o #t;d }˷Ҽ569i/3mf!ke)UْX:r⽑R/8cMaRi\WXY^*hSpzb~ѨTz[jH"*WN`"X hzb8Ph0Ќ"Xu|<84`niM>?N( eg.H'=-QhasܩyF3wxw̋@:+d W|z,`Zt\Do>tښV?.m>nCKˮaI y$%Be[{|f~Tj[Z.'xUT*;nKz Ȍ眖1k-hbúoZie옽앦c)<ͩG,W_);'Bf`m-Zqh}+q"V\nxZ^\+azLXFKI@}4N5xg|_:V>Lj}JQHj"if)eAWO|i}b2/! ^/l ZYwi\>B EҥK~ݲR4*!GpY*dPwt\zY|"ͥ ֩z ~0^j Ms =R3n*J`XQ 7|A  3sc%E}=_<]edA[> )c%R7fʊf4'u!%tDW SQq}KecnkظĎ),f9ߡ?d.DߦVۦ|d_f4C(]&2Y]ƣT^pȻPd5k #rB4OSi7NȉOSAʐPD`vJ='0 I,[n%,CaE$Juy;Zżxs#[J҆q]ѩy*zӄag*n'P&%q.+{ZER #B ć+KӹӵxbT&)C'o{)lr'^/Sn-5]  a+)֧*)>~#GW;Z,r,;e'NH,LCd_nzP9lհ<G J^7 VԹލ m^.9l rߟ+J»a=")9G$riP%ce^}^\5ҶN&~baS;,1+l7fK῅riAnvCI;|ѥۋ@(XG,,csieՋ0z(SGh mAwٱ)kwq:dcsb?˳pGދe͆kxN8x Đ%\U*S̽G8 0cao($M?z Ow?<K#׻ Z6i2|Ew'x5Xj#M,՗KEWC 5/Mg`2;T(h72{jWu}Z `O M jTTCi^ =62PԀ'[3vCDyd뵹i=/\^R09~UH'qx+qI T4;0…)Z-+aVAh$Lj&q^G !<0j&jTT!ϯFdje#PRBʠŁ UYQji:ṡ SnSyu ~|zGMp IKA`Ҵ 6s%9]$ǩ':|%ݏ(C.SxB C"v4D-J̑i_Jl:{G3},)s1[f[.iMHE\?)dzĔ}kcU< {c_{}Ԡ)}`>/ٙ@z1k$_}2ZfL*0FA2?g`yaI#[C0*#dQ!F RUY]` %Ncmd.OT1^OYg籺*.t-HvY\"InIETz=EzkӍNN_.+%ÈE^vA/M  OMNc-2B%hm6J\9;OSn~bڊ5m55 :`,55L J UN=nadcݼXi䁧Enzq6A߽nS0OAYGHgz.bW?*v"= l|f Y Ξ;JQ2H+H/-u3?`"l-GH#C"iq$'JܸXKbEx(wn%LJHāCsb N1u!᙭Yu[M.z!k;1ཹTEK#/WK lfv’r ΋W2F[[vȳzĄ,ubn2_b99=ls'`Z3 I,ך+LlfTPu$o,|h"l͇{AJ|˷4c)P +,SڴLlɆ/AV=-d+;loȶY : Pjnep><&޳@mdXnULmUϠme癋.棑вf5Ƚ+=r'yU7xCG{8*Py"nyu2ΰcqf~gN 4JzW|µS!\+uۍ4 z-Iiykݎaï=ȬYO ωj@4E6G82Uc-(9wewjIV?΢i24?+(PW8pq sy'нD{Ƨs+-!<4cdA3P鯻|-ߘq[Bt궐Td^1}u&HsOPDs4c5e'o{؁ tpܙ$UQ0;.ZӻM?& CWfP2\*A6VUTzmaWYyR UG|EOъNMO1τtį?`f5I(E۳#'h,֖T9}v=u4' mn Zq/YNbl!#T4Zx`Y Z^I\4Z`ɬ.cYɖwh'xcq,s}!!%+X jQx)n)P2Xx|cqvE}= El&nW' O]Wwf kq2:.W{Ο.O;dp6^Emv<8{Z;G<`5tzA(z=f[Ʋsi< [2O1y p ?%zҒO(4sڬ]pyEH̵%|[훃y¯ȫd?rΕ]?˕rP}!'myтTT./,;S1|6'3ͤ2X fpd|JL8\Z[RG>;݂5zShPI$(^gg/9G06RLjWE^zfCYfqaY1['ܤ2By2 Fъ~U"3i2s."Dmi䞭NcE\Θ`qc{۲6KXSr9ü5M` \t\AFόJ~_Ж;6ߍzq*YZ[=C]rf6P$$$ f)wK"!IWd(hU>H0\vjFĐ^0goC ~5,MJD:@!e T-ȕ(T %yڃu 0',%<:Ԁ/[̎&vhͳZӦ/G3OY )Ԫ.g8-1Ysى`*ʎS($MlR1j>Pᯊ'{.e&*)٠8 ҕSG{є ~`*8k-Mרd:X˴kg*{ ||Wl4EKlj i5YtfgiyM}‘0T &K@\Gow^ d6GR2Eҁ Z^aTu4|ULcmkcxr )jE3Z kXNVo'!fzQI lDfhQbRxA]PXfn 曛4?z]NP shTWшo6S|[˻oM*àeܶUD:;C POn Gw^] !MIx<-$4rRYNzMVXç:o;ZV*"pmzi?')1H "cjn=0mn aFEFRK^X9RUak Tg&Hb60=9YWR T4CQ/ vm3iEw>Nei-HI Xp֘$Sd@ţ @gTD,X%KȏwyzsSJ Sd{趫CBY}]@âZVR/#i{Γ=o0 )jVH T息*(ښX:/J:}{1|prnaS{d޴n@zHX>ud ;եV82UXxVJGYE!3NTېL8.cv=">,=Om- C.':Zky_G_Xr2hx0a'.C@~$+hJriUI4N% k9X;~AKf.#b[Z3-V *swȆ4 HymX$q*b<d-3uKv&^VOX7̃P !ljF+z}X R4=e~K@E_`$q 2]qd- |:=>&g_~KkS2sW^sK~LХb#%M7z$Ea,ĂHO+4AZ/ j1n_*əs8ϡbtJ\&9~xPy3:ߵ/PAf*C(3j٘'>[m~=I7Ů@yݢk!9թqxC =fPM$^q 6@lL2b@[NqGۃDM\ez/&LP>$SֵOj^k譹GT&ulPYiF07թ "AW.jlbY8O0{(1XD +gS\q"AϿqW~Mv5,.SBh (KK0 6vӵx.I'Y﹑1B0sBk5 B@]̷$ca5p/]Рؖ 6"Ky4, <_AQAFCҩ<(ϫBvyw* ^AHH3z\-㺈GjY8VpJéac4B x4:PSSl$EEjOgX(1EҐ|+ '/hyн̳>H$a`5̕TBgøCkKjgRdWbrz@yʠTצvy+uI~ 8m ,elL?tOG\p*-psI|Q0#_7E)uU {>jLX=ocuľcLܲ#v*4 DNM3z!= /8xE)sCY#mW+zBxh>B0x 9Kpb!86pHwtFPVA8 /_5(|a8@kvBY[zCZMh9 %&| Q'4^_S@X`8ņh:uy=r8>QSw J<\|(/A =ŪqހSD7*j2eËDvMu œS| ?\7и3˅p84vfzc9Xt^(sx@H !$Iqjn.k]k.ΐK< ds7| \@ʉHk=?U>#"}~aķN!Wc?\}R,XI ^9Hal\ | 6|&9^Cs<ܲtidr;`6X m^lĔ;-, j³SoXVQ̹{ӃAwHt64W;Gec׉/%Ӷ6ߥs6oMېܤۂ(/g+ tt`'HHG$zm\lp $ [^@ώEOZs& u0*;cGL%0: X^+(t^yYg}[XwŸ@GR0u5`p?5KNbMl!Y$k ^ۺ @N<!GJg A g5U\(| "|]1i9;:?vxPS<:fgɟ 2ns )nA>06p,c`7o34ɴ""Ъ|Ycxa(>l81rUw?"LiLx ;& mTQ`,. ⟊\-ek>i $,(84bc7C0_~f_3G1@.pd8X4 ` e"9':+o$.r y rN)n_0 3a>\LPJ{DEy_l1 MF|xQ:u+%UwaAS=Co`N{/t1Mgdix7ũpxd碜K4.al+֐I=euJ9+۠q)LT]x%Wm>eXlBuuaF4Бp,Qb4'tӼ)_uMsH-3-X?>' m%HR׭k# r{ C0lj ډ2s 1it ;ED׍37H€UDXxyfmR\2g`|j!+J,C4Q LKdRe>yPcI gmR@HګJc g1P5G:uOc&Lz;P\`J!pܰS |d jA UK3δ7p@ <2J*36Jf+l΅e)|fU>H.XuMg!eB\!NM|Y,eKY)XI9&.4z˒pȳ(CY#iV?>(o}i/}P:QigrI'*V.ffL҅D?G3u>,D5~gru Q4OI\e`_BNW ҙފ4Kr7w~"uu"Km"]G?1С"ADOZ3fir7u_SQf;F?wM}KO?vrۙqoˈ:U IU;/qc |]aepsE FҶx˻/w3}0' aal-*"Jr7d+|͍ȭm_rRrjB>݊YiJIc7w1 D38c(n,%%wXCi@0$/Pg6~؀徵~byl41"@?H47VttT )b[wCg|1Ͷ)>2?d (j|d>'o!i]X+_º(zʅ.38+VKc*x!=aQPD)xtFSUDE(̢2F*T8fYKBͪ/m"xBa~ ٟilNGf.l*9l_hD񹀍8l%ON?A!53u.koZk!.N6~f</=k]ڟB> )qя=l\[I#<$ELhr2E~ 2LPthz}Ynao)5;z~2Ǵlu4n iGv30Eˎ.w9\zvjYOر K¸e·ɚ8[A NH ^5,j!pH< RĹIW9[g_v{z~鉿\ؓgt>^b<8BA @#G7 m!p2?Z+W?I0wFPţ'KWN^l i_DlG۸|y>I*5hd@@-^S͛zzTZ0 Z/֗n<\ZpT@(zE0`) u09ZX5(j2]C}VD1# Ӕ$I;̚3D 2 ԉO6GPve+h dSI1(5>3E00lGC+{~y'/TJ .1~N__?OPmu=dlm irś{ckf$OSj}k;U@lQ .&jdG-ۧ-d5 V~Eu,`Xv ePmP'ήvQ1M)'}7NXE/͡0^(i}ﮈc'\- `UW .S{XEnJ_6 Qay9?]z{pAKՙQɠXGgfoz:!HVf^0oHAy ԞYIY[a~̃oб_b~ uIM V$׶S9!L'>15R®/Y[b:% &Cצnpª|++&UrM6jTHaM-w{Fp[! MȟKt$2oa V9P,A"[YϹ?ҫnIyς)iM䝐giSsD=8A+lƹ+GOJ \1^~LP""Dן]sS<$(q/|IXՍ\Sc $$]!'lA v#ldFC`Zi<go#H+*mOf#an4?6+6!z" mpQP\>JlEӔ1*S3uL}#Ĥp 4bCS8)ۥLAGHhU@ ktpk.uw$v0#<+jWD{!NP a 䆌j8!-}(kxi}glܓ%a>HW,0 vk $rEJ4tHp]7 G-'+pג *մXSҎ 'ݽO5sJ+`H? NW-Ѵ}ϳڗ'i9tӓjE-C\WrɰZeYVxwb0KA-Tj !&T}oo;2qwzIHśb>yB]]0OϱL/̈́'E|B{i--D:cToQ-jaݤn,rpǻ9[mLj / ?| CHfpn)TG˗OM(tak k|W)` YbE=6m5Py}-|EildL`ܙ,s5`@o BL!0`:+\ kq|P'xRU`nJJb@*9"MR:/&97hA\] 9NJ~\w WSCgFf2x`9WLF(=Ȉg-[kA΀z&A_Y XC \jؼ 9WC3;URW#"u\iJ/1xs5d{~R^)u tOă_+e4R(O~a{EsB{1mxV@7N_azEb"t<+铯;;Ӵd '^~Iҫq.#Y(9u^`Jq#xj+}a* ʩh*#3Ԋs-^%nK$>rJ FV>u枩[x( ΛGQ?27 z< _H#t Cxl^ &ru2vJl CєvnXuA%0ʗ_MU6荋)v`,ytyK-wҹՎ@St吡8ce[y(]ܟ`*RD3u.vtk=#4ꞹD' ;3| , qY+9QS'@qt3(R8`[fa8`Lz(]u(myL\>7pF7"hR&u]b}iDu/L.)\aZx7UVqwׄ޶Μbi,}wbf=E%3̀E+ u]n/ $JC]?)xh7Q>e@SPzfnS/&I5uPWCl<^S[òuP$p[l%Y+ !~heهwlPăeorEV^o @5W\I0u(:Ypc!Y CK|lyqjJ_w'8:扫kw1 \i2fQOL-ܩG&N) C8?CVז9(L@MC>М:z[*bW9zslCՑf_ mJ<5Ei &/: @"<(cgtٟIkV|.T52hZ.7Q Bl,)S" c8"_ؙg~)`5|UڎnzDzB?N+fhoA=J 36ZRc8|83`S~b>OW&W#9\sV]H/<34MR neuazꉏ&g'e[V`H^'e`n:4z0^0Pqۍ @-'㝳(A` X3._G~%xDE?5 'atY Nqaf/12DTm-Q9~&> r;-N { ^TLƩ&|QҊy|lERRק UNG''_?^Eh,1ʘ>F4l%?VK[Ǔ%OGE:YFqp+c*u$Mi Z "ŤWB"WX+N U]BXZDHtN Ǟ7\3quD3Z&QId6cbpDzWܹԴ: k =x$k[ xÇfpW KuƆbf#w$Kbՠ>]<^<'Fv2T3fpE y>7tȩ8sQ@WԺL2Hv}xFCz_-a\j*KJӆmzFGT{jcj)xTYfΨAeSOq@Ttf'R3x4] trĸJ&u Ѩriܪ~5#,;%_|" aL݋Zl.^ΡWyCD (emc,d1`mK;nT ̓-L]v*cѹv4W).5Aaq%P(-HHEtyN*]e zXlL.aC+1'! UˇOf);tS kKK"fEنr)-}Z>ؤ#In 7y%-z+NrVŪo҄ B(g^gtśЖKPd.3s_dr%ƋVe,%ѢHxj#իxf"S<F܉45 'sdηlj}MKާDy1d`PQ7"EFXy%5`v9F6aP'(*Z93ͻc90ғPW5GjІe ܶysVl.VFs6uŲ45 4LÔ7i`"cy}u?y\qE^3Y;Ҋ_t}ԽLӑ?=z8z4j.س3]**`Qk> qtܔm;k')#SgpZ 52%I! -sSHK^i}v{ʈ߼45u@ϣ\H>ULX\FErR@F :9I.FHRӏK6 (T"r~lF/sAw]T;R`-9וciU!`*, I@ C mOI0Wݺ4Dk9-j'/:C|Ms)fe[[֪`=挼ȭIu] 'UyU&+٣IC}xh ׶a٧ @B& wTXvep]Mi Z59j/^ä4o(  %k%9uS/nGXw^.u]5>?.VgFI[(@?y|ۣ,~vߐ33v^E&H~Xml ;>w&&ӈn=v(pr}wWJsBŰ2?ЕM#eՖ[[_Ʌ'@i{`7/I.(';ػ 'ڏuT []mqj@kn/lo2 ^Y/{JtUMywg_1^ e9ac!vzC!Yޔu [)vfRΉ8ow-&3 =OU5^fD+j&䏼bd7_yɐ,CЂo=& AjKIm%~/N!EFء*rK@b?.,Ɇ0:* j0{b#iRpzIk0GY5o19(=-f@2fNt?56SY^<ѵ3ٰs9~+3Ed[47q@w{܍3bR*ⵊNZsS75nl)xjO:Q.K @qrp ^9o<2"W/{l i,8G$vOcVKd6WqQam[\u\>z@BW.ڽM8KD<^9Z Nj&`/*J$Wo^H~TߚdyQ[:pInJB;lk¥*>HeCxi+ol٥vBQraҧ}OUNb#,-(,3<1#wغR_{t~кȷ㌦d0h.R݅wo8!1P~Crݨ=RO)+J99g[2OF.eS(bO wtMmSOx7:!t!Mi2EAc.Җfz}Wl$w2"9HH֏cra^r{2MqB "/tWsXunJHEhM(̈nE[erΚ@)1t$U.Eb5f(NA;gࠠ&]@;b<^ z5Vʬvv EH=r2W@n.FML_*%BCDق ;s)_o;ǜdb|$႔7^,$wv>ܴ<9Q/ƈFb1+/6_۝n#rHYC2yŰEP;~foe>>35NtSXTFΟGrj3TEጄ5'f+)A:Я֍wXz'?0,1zŨΝ›/s)iG›([jiEXR;zl[S 'BhtlDLQJy2ߜls{i,NưXFGrP+^c$;DYī"U sa%ՆyMgXģEeWv]ҖE!El`P)ħQw1H-j[$ 6܀q{/@َ2_q,^ٟG]:9<E#XY3GvF[=OUK+<` ?; pcc '>-pl{k=*:V;WoIhW7^yIe4ijWӮ^X7Q;LPh"<⹅eXU`upE_w{ p0UsUj^~_H*,,Z Q:Att1'T"vM ݥEvƏ<S=nMr}Jx4/S̿a_s=/"W!DD="sWQ,P7Xr'PɁ/+j uss-'_y?8f);BCRrَ8j JK* gbd.^9*Q菞z 7%H׎I 2/HߥѤMGCσUS-far!G%5Lhnuzh1ĔB:|?dWa8L;c| 8(MuW{AX.E)HB?4t{篫lYt,gv-}Dys2gDVdАUQA~&h.qZQoaIIkScPDf,y"D+ՖS? 2|ݠ1VE[3cO!q_;vz| L1J1;$?[&\D=$[O !wbݳ>SAM'OO&ZCv/B@̠VȢYjGYh\:REXPGJIzDJ"Te@:wyqer::i6ZUf c6֘P5/>ӓbkɏU8+w;Wa2Coig&4XR]hA}kOHX Y|".^1$) ѺN4cuҐ[#@L- k?3#m@T1-UfLqRɎfDNhT5y,]J~`|* '3L-`\Uq ֡nB;Xo9\2" =!@QdT8{_BWi֟_­RCp޾B6'j, 3D9:j@z=j M#is Ϫ_aW 8vz'?RX"mqA/ Q`3~-νA vQ;'#*欹 n> m #K5`zvXђ3jY)*;B'Gqqi*O?D"J;-&Ob(ejz@q/6x)*2fò ʣWsX'|uAGD0"%p@Ȃ?ds2ĸoS n& C|VI1JCbF<[.[bJ>Ok$]aS7|q!ǁ< |]!\@!%haJG_Bu Mk?RNܶ܌.sXB[խx K[z*Bv38p4 m$߾x~Cܙ`pk (^l/&%TUΥZO[)/[kzPغ_urDxnP3?d8j:=HGk~ND%^d(mE QA. CXlFiQw#Q*mJ m'%-,4n~Ux# aD{[ŇVF`DG9'џ(r` ߣ[.2^&Tw@XEv,k噻ew9݀^;+37FD5)}jޠ) Õ}[?9uʒr"Խ$v.zj5%Js^J 2>j)*-[#x`{,cZㅶ w8`WOͪj[H[թztvDjNټڱn5wb[YVaX4-ySS 0DfSr?e:10̅2*ql?"`4%xLʇTe=R>Vn50ʋU+4칱Y*u!vfppU!?L*9Is@)BȕOu3fK/~ݕ~2v?/&+G66ܧic^q2ѿvBKpG%nQ9˙̤̂Cߟ'~*&.<Ȩ o uVkM7.V9cS0DJc1+mu q QPb}5LgZў߯`vW03[3<xyfIÿB"T[j\9|1[(Srg#uNǥ\`T3K;˧0 d.HmR3@ή:kUZdz2%vǬᨳdKM->09AOgIkQ@A͞Ax=c ?@Я}!_\ZΞMiJi|dδesԬpPX9dO%¸"r#+m5q [z@;69`Zr^](.Ћ 4|~#}+hswHls_} u'!}e"d]>"bLT$9Eumd8G"Fxo6XzMZ'iQO/UcńvC-UGǓyRЫG}_+k`+LHXV j`ettuwւGE R2tb j>8)>{$OЪ`)7MEZnJ^VB\8~KG~$yl|zxhezXC\+PF:-ٿwV#k4ڠ»F ߊKǛ5EeLPSE~;> ZI=-K WTE;)PHV_B"`W<i! ~ 2[]9iKeln%0HTx5(BHo2 `࣓JOkRKѯ_7|iP\E|GS3dbP0PxS`S837Y<[>J-]M6tu#]!B4OD4!'H2Oސ֮6\FO1Oo`G w8M皓@Z)Epwz;_I> uJ(&Y;nsژhٚw-Op>F¸̮fy;>CCI#l]ػ:)L6σRDDOc&2ԛGaE $vjl8`aUٖ%pܝ ͦu(fLE#Y<3۱qD u 6/kO pc%©q(t˳Ba1I}d"OW.@۲t 12<К#3 mő{il&hgx-iidӬ)`uOO6pVh0s}z\ {$Fv;xnA}PJAaD|Jg0rԍsrl:2쿕/o^i\r˅B^4t@kֿtsHW+~bzݏp&'V^FFMFQxj)e:Ԕ*,ǯvx jza' OĴx; B:>j^VGSG{DY1F,l&,/0 Bb0)m'Fw[ׂ@)ETrIZK! I^T^'s ]?bb˪粿.hK=WmK[%D\t[ji7xL|5x\yhjJ0eݿz6>sAs&S&f1bt]?pT\h"@l]_oB>y8`ͷda#p;8ZNSyt/VBb!ǥ<RFчz!TbgPO.`u{$lQ$R'TC"FFje\sx"*XFm̠E:WmO8##0#缿SfK*=|  gcF\QU0ͬ0^(O4m%78͢Cv݆S ‚_Nk/ʌܤ0R(cXY%sr똄mz29= j *b,ܢ$$-'HEbZA%zIhI쫰t "=s%͞$WAk:!3tyr*lK,'cxɪZR|k(O˾( ٛ=s6H װ?wO@o#FR2N(yj4o$9j1C%kj2/,΁ B[B''h7&E5>|D\_61:8/ <DVCg>ʳF0 ̶o- #DoKaFP:tVUT!7n[iPޣ&-UDh=R)v )0TMc Rߣ龨D/1.Ge"Sǥ>Ojhh)І*?Ruz:BoC.mo 郫I 1~{SKv cH 8Ac($u:AA_7=HoL"xϑ^?ۆT%anD&Y$%A&iO!]62<{Mp`cJgoAE2`eL"r_*3)ɸ&<0=KI pI_6!:֚VO<*Ŝ|rpH*kw_>z_s줄}q/䐇 Yui [oO+#f<#~X8)oRcGx'\ELRt; QZv$$gjH`밈*:o;#K5{&=wiq8T BY ;Cۥ\Eq _}+}&š£6W:?DSRF]-eI_l/]!/a@՝+&o@gY=S5܊R&V;$}n5⼌0\lJֈ;ȶ fK3z \0V%T~&|<ғ8[9eu˸ZB6'Ykx#xP,y|upA`7lc~ThaYPŠ`3gl7N~~cnq]w\ǖYimJ =-]xڮ!ϝB Xf t[|am Kza9̃'W8 LL:r=@%?ES/sѶ>t~(ɄY'*?DcE.HŖwsZ86Ǚy鯹r$G1I*%7`e<F$,\h~FT7i ǘ4Õfsv<[Gc?4TD{̇ |ђ3K!iz,COv)5- H Pk,tIӡR*8 7ݔts>lkD mA)gLh+ p[ҠqVSp̹\ ҃,E.o^N ͞V/) ~mU^ ? jp_Am/%(2DR0ȟc]53BР%ĆPУbo,/xs Ysiiähyv-3Ic' -{P"T̺@y D?,Hh&{* : (DiGg Q?FglViuQتlA }}:tj P\R(?Q hp,'z@j]x]xS>/xrY9I*1 /-?3dVȄ"H6QRȔ\Uڳ")ԯj0H tN{w,f8fk kf0_PJw:v%;Nϙ~xqSlk"Pɓ'TV duy7 nS$q:LeoV:V_ʚbUϓ,>-ƣX > W귗V ːH!hk$̀#<8T{  JЯzΨ>DC ^5c\ǵ Ja+33xPm)'iHB 1aDzHk˥3F\|KWt+v \6n-nZ ܘ(BED J :҉Dx-E"miR Cv$^ÖcaU 3Q Zvm3똢t5΀w>B" 5n n7V ^Ɩ_?٦^" ~[pOJni6 2!jxTGr&Nk̈́7Y'EdA`k z1JX%ӏA@!Q5*K{r^A31|=d3a&:G%f~M*N㶽JgQ=# b1;Mc0u.YcyWU9}>Ľ5aлiڛ*H9s8M4O~[dCYɃYFDfT|N)Wd 61?WTWs}^ &jLPKR/,D%uj2A:Iꣴwc~`x|;Hjts, lS;c'gO1 _J4 W}|6kEg0!!,)Vɩaf ݉cLٕL y8E!onIL*0-˟*!c+1+2v`Ϩ/_n^ƵdSC)-[>ubը;?Vh9=f&$J۳h o]z4< 18Sc8o}‚ALg:z#hY]m5#{lgRʈyya{nmAw֘\n8,OIE"vqcED R߾߾RdL䩵Gl!VswAyjlQwj\J*H'@$o-$;? 2 ao om>B bgb^qpm;h EN_!#{ ƘhɆ+4)x(9-_f?o[5t!: Q ZiQ_|+@πU|+EU?dA{[b ]DkL M)rCypSKK_rl iQW#w%{*FS~WB$HB*j3|*0$!bl›x*^ioG)Lgy#2p,\Ls+C*x_aۨ@*"G ;&v,cy=)a S_<#&KwCo-\yO^-i()u_B5ËяM gM*D:t.VIYt-=ۋNpJ>Dglzfؤhשk󟖔5O5ISKrEėLRʨ98H1 =c^+sGsgy*%V./TtYk=MP%zh=Qw%J3-pດK.{բ?5(~JcT.GM 4lSu&8}I͗ И9$!ɘig[ oO?zg* :.CN<РZQ_.vx/A\''Ce^m:!́e<ԛD ʦ&0- ў(7ݦXH]jBC:#a" 6@ӼJ?e{@+xl*H='5DoRV!|2Z]$U$e);HF(gLP%E@pk).P5PTS`܊v4䐃߰ľnֵĥU ̚bnXY!]e./x}%hn&)_-M/h0OڬiԭX=EA (?LKK6ds/FjnT$][3|O)oОHhZi1 ٺpE$PY&s-MC {1DNF^Ck8hZ9h|R5S}I_[<([t*b$ ):>]ܚƁygSX 4,/"p%ҒgGC0 msJδ2>MBaZqS=UR{RJ!3E\4$:iwiP)h1noRl ^`![ ktHGt%д:)8|2v:%) %*T۝G"FW(uRsLH>x (TN\v^-'e`p1k}r&ǧNfJ|G+ -ufCO 5qwo7ً^/5XBU>ܠ G($=e+*PX散(黂c3 y`dվ {`]P?l*y\<燝Gn3&L] +P|K)B1/eq!ǿ sV@|gWa_Kng]朷P^a㜚@ OG%pK\ kBbgZ:&AxLfdt F toU__D&xvP<뗔5W ʅ<1X@PCqOCa@n#}φ*DI crT9&bZ#Fⰿ5;~*o޽]D /0mxNQRBw,9Ou@G9d\`eUJzot apIO e|CߥQzEgѣRѦT1D:S}@u>4ʅB>8:ԐnJ |&MԗRs0;") ;2& |)NusvmLn/g͌Q7v:(cʺݞUW6(+д!iqAb&v~`AB9p4?:+볅ʼnDM9#|! vᆫ7EeEz$$APi+֙׿B[7a|Qby2^teT%,1zI0PcB.g%Cv^ &.9}6a C~ #ny\\4e٣UK m0+lΑ_~ߣ`Z*,W'݊|OHθ+M*4mH_`fV*anlsn ]I{We_L3nz DjNi _d/(4<˻—PS:GuGAVna+֭6mBc#Mជ If ڃ8ڰArMM:ZIw"awE[;s ҝ=^H6Ӯs2-E}3dh 4(VQP\*// !O1*$ Ķ !ETq5x|Ψ9an%6$-x[M3fْY}Hfb~KЀ_)<(FrPS[JWͤ|(ȰxGBxU0.&H_EA&¥ 6 w*pZ+o*iS(s,GܸAQ9<\&0\݋.1uMv6q*IVNP HAzE /HXՃ$_A>S0YsbqHq>~ҡ&O61cgYS{;`-V^NBMTi&s` "fb%e'085bXO ':BP>bЀ`|y|N {%jDuL*$+^eؐ)0+< _9: ZHX#Ii*;cM_f20>QA(!vKY!s]D%GZ0Nh[태\]N*)0eL"d eD;Adē((ěojHyY üF3Q~-%)v2e/9)̔ro8yI+c6Xd <Rg1ꓛUu5[kgM(Sޛ'&֎ir\>,Ib,}$Cu=~8W)1c$c8lkP C2rOM?oG=o]6:U@X,i9vweZ""`z5 uuoʍ[Y9bʠRU:%bLں~Z\q[ t!~fsRyug)7]Zk"f~3ah$[@aWP,B֮bŠo%]?WhK3G"ZQ;򛙡'^;%b*&C@h F=c9S-$N5uBX ! MAX$v'!ZNbħ0{Zh%\g{!á iҊydT14cY+R|t7y'|o5Q~uŸ[}RJ dMonA\ks7i&Vps^$!IRQ3%=yoh $q ͗iu[ MxV>Z'f8gٖ?zgNRZ} ˂T yT?OLՉn@g3?Ns56Npߩl> {~UN-e? Gĥ~'䶩Ժ8Tsrqjț.cSA'h'wi/as^ц3tI YS(,s 6#7&wܬ)eρ'/UAcZksLIhHL|;&`i$-)c)m? 3wX:EJK7c(>nx5dXe +] kJ]^蓱w8ZBL _~_YGyǧŽ= 5kM$!+m07x3L0v 䀷QsȢElV|M {n[*.mT5#P>"`Oɽ90>ticB;o爔)pB\%Z03.nZTz+ZxQ-CKQe7LL[!\c&$2>`ZWݺ.(QT 39D7&1J(\IaPjB Nvyxu!Qtt1qdF}eR/}u*ҒUJifK\Szw!OKB0#ӷkkbnay*h  !r`xmyJ^@ΎT6^U"5DLJ0rruW5rZev-Ap7g>QΑe_7v.16AGNSq6:,7K.;\-{ 3 p``T+_|3sQ!+5cÀgq ^7k4NQ)Je ;P戉A:o]&/rpkjQx}s8~ 2!4&-pK`0@=I:@)fd mJy4Ո3fa)9}xK&px9ʿ0vO/֓( \'74,Aj/dwE osZ /򃌀v{艌x%"@L.)#WyU~c@K;PVĽ1âN!Cry}&`&ݤV{_8tҺDBƠSry`[yK,{?Rछ5է%QIMRt-; $zV̓fC9F|;,) O g)dduH7hWi/ eoHaWbڐcM<7…UVH$e@߉;:mF#lh GTjub6rtէGWln`dZthTd8,iΰeQoeKHت KH(JxU-66L:?nLjL(Qh3 Of™ƏrD+. 4)߾&dJDHfr\VEhOq({}h5\祪)s"on` [$%%IҼCq坵 KZ 6ujdmǟ/ƫ5Nu^/NROusCCY'Q*.ڋkΏpѣ;[Y꿗/[Lkgu݆1aQ#;;a,\de0As/|`O34oz-jܠIEˀEb1J}B {F^ܥ8Fn}c>3CW $.=8|**G<`\ow^z)] x^3L8QBñ`~X\'J컑"ؔ.vuqO>º4hr Z6 ׃5 ^3ߛxlX6N ogӗzͽҥˋġ N,Z&X㽪,p¶T==B;NQߧoeJTm8!.BrC1>?2Sc(UnOtMoK‹#bc HJMjN&'$c2hdٰyЁ/oI{MiawH7K'Җrg'ê/,~y8y#Qq( .L1Y&39wWdFXpM \:/X.Kjx0Bi3إo4$-هӭXZq|@el"i GA1J^R }jc|Ji͇q!~^fRFBaSg Re5W(^u6M(/sZjDMڊ^Uiba8flݠ1ȘE,_p-1 ocz-XY' Lݶ kc;SK/bX;Q㡝Nϥr>cVZ\#QMD=6x;yR"LkXz+X7r=ʩFJR(B1R*!^ ~{18}lҖr mx>HGwڃ3EfNu8'" 8,?GݧP b7+O,ѪH2kS'XK7JQ!Hn |0e'C3*hAy@W%fOP[!SëT*}xq0@NTGFsSy8A-_fΜy /9ZjnWMOŮ<-C~ݠ#7UR"*%EN9wӮ9 aCGzU/> C0T,š8,hw6ya2#/;ܑ֪G,dکuk¾EYIR0!sMT- γ=H'Z*5Zs\~@"ԩg5|:1*H|vS~@w+-^vmaWʣPk0w)BC M(U3iK*Zcd^ 0^C_8꿕{HMI$QWďކ6$!w0~@0r%x}ꤪt"#_DOsV+`l0`ƪor\ඥv7'cX`PW#LvǩN;n@OkFЕ:Y?I&fGDzxW)!7$=Ւa)G7?8Ei1? ?_!g6x;oy%W@Ÿ?v8mFZLzXg O+ /rLűĎH:7-QF :휑Z# п rǸ%Џg8wg!(;˚K*R{=EH1Z7%G[a=t=6:FF%go.N!j˔T'gS?9ՕO>dI`\owP-&T΋Loɻ//ǟI=^x;~M҂WԳUuşgf#f89>TUSd3vk/hv1'^޽G swgHǕja9{W(-X:CnV̄-&ם&xW35϶ù8f[(DO6BM$~HyR1ďIݘz: C3kh++3w-g+IW56nc~ [s T KCȍ(#4 P_V%><\E[[aGEƒy3wb?ZQ{wPJkA:e,RC 8*^P24@VJ:^x>hNNzP]q˶/&RJ{Ee-+BIj{ܛ/B GxZhE%$bJU0 KZH&S 7WbU#kWǹ7:lyꏷԆӱ&,Jr,T*gejx>Yb epܥ $@*Ltt#2sm\.} CUT$$|y|^,[ߜjlI{e#f)OTgU$0%_FpvQ~vw9a9Tb}dayBFq#Fb L$M[ngV1A+ǰE0b~xEkajZ$vͮYs y^egVM:`p&6Z5:vσ1jWifrkS-b@D!Aĉ{m]eb:Iz/Ʌy#DUpB-ٰGlWTgCmmϐE]uY=ah2@DysXSfUg;](L54>H0s0;1{LfYtߠ'~*|*8wnXGRdA=;pº4eO_YfhXGLVh_䂦řwҦ3T8i)m;8<ӁyeAqS|>D\N<%@-Umdխ BIDd.lv/#q-]W^hgLMS"[$9M4D+OUp(UkM% (-l["oF7@iT2Ŀx+v03RF9#,†ƭTb}/N=0p>Ơ7s[x޸< ;ʺ]+\]<q /Q(}Z<5mk0 rG-\g7^azQU" oIIj r ܙ|d-!†'p l%хsr-/n=g.=TwwGǢ0O)l ^!mkOZ7/1B&T >Lٟ;]Ņpsi>2Yk+E `gWKq[ƔhNO.hE"&q~]VE}D7G3l`"Ge#y\kPƭQM҅2绬'Ş3,4o](5_1 |F0W@ze'y٘F0NTDtѽ=G9w u34rڗ}aʫ|Z(Kq[-_e~T)p#ɢJ'i8e>Zl,5F47rwT/VIt9]fhD~!bE\7;ذ"'E}_:K-R Ss gkTŀz@2M~Vg nD*N$з]BIzCUc,E(;zۅ"ځ-Yv ?cXFiOi=;C(*M"2aiHEӥBD`m ȳFZL3lA6.;T:B?o۽;?zbxZhY\ hƹ$xӑrwc:TO6evcԞio{1-T/5A~{d xs[S|]KZy>ؚ>1˼Ƀ>74i0x̜QXHi9_a+,:mS-`Ow 4:;(C"33@Zx).F$ лmq$'7J7Cː!o"q<<Z-p;RWp;=*p:uZD*3!?xj2]ז;[*Slj}HM bo230ކlEK^ZB#$4 e<̕EruOỲL5F>dG V|[]yaHLu鬺~g*LL/^0ZaꗛT^u ,3Hq T-z`zCxA(q~SA2α()s. ):0"TrDWr;zV(T`,C4,]qHƎJ&=:(Gҩ_b'9=[}&3\ysC%JR@8_9UȻG2{#{?=T #?'JstA^Yhd}L.LͦT?\|A=73\q%K٨G\qKz&bh,UDݪf|DAc̋:_m,̴0HUy>r'ܝ0e~۱ϵEY%ֽQ3屹,F[:W(|72IQdDjCLH)-YTwmy&F V`n8nRGF"Z{ƑԔEh DKSSfBO3Zˀ~{OR6 z= 3 W~#?iZɋl"#.\BNڒ@zy6|&)7`]>kzSe=tycz 1]nl'2w|(DU"((|9ڴp g }~G~]p 7R"Ng֛o_^<'M.hʊG } 7N!o4ĭ!nxӣͬyTJߞ=& xf݇GA _kfc_%T)~Zdh :Ǩ1#4#qJ"h_F;}c˥OԕH՗ZY[l{~"&jksߤ5)#Vz>BVz#ϡg_fC3Ag;%o99_&[@(lj;P2HlM)t+QAOeD˥5vOH1gm:}|ZPQn oN2XG81w#Bzs![]ݗHM0"6Ug)#Pm'8[еF{{T3qX^y#iN^.L|7dymXweYfkɩҁ:' 9Fph iz/|O.ҾGtÀ 0u \S+:MV"UT#+"]FI}K{/!YzBm.  $oQdVƍ ">h\D%}cwRPXR_23js>s=j`eڲAgledRY+z΂ 3V(Es o21l;}LJATL:åOb@kS.+1(S JT2Y2;yʮF^&Ro[WlT<ȁ~j;2X`WZLlTXYuw8t2]yB=`h!N y"+}될kwM1I1+^x#xhih!wˋ=u76;7S]h8L}?1"ayc<&e}0 $D#s-R b dP+P%zQ_nu z/11$1HC$ B-HCDɮ!żY{~S)(`A? }:QA8 =3ng,P4xJIHťp~9>mYM<7J}LұpH:Y)glzh<<\a{ZUȾ疦q]hw$f074'(#)UJ2طӸ -ky|g1{L}?QMm;:]3 HUƢjm+xR`y Ts."w],gK߶bZ4r>X²,6"b~ۇ6}FzpZs,10y@AB;-kGy>S[Mvi/s#{P\Lq3BnF|YW&r=j\>.Rg6], Lsu,DNp*T)gG1\\! <"mgptø)de"F}su0_OUny9"αY8Y@GR0W\>H$7_RBD˜Ԍ2W40HBW=r=Y`JŅOW.iczDY_<6hwmpVR=xmnj:-$h)g 8 2a*k:bAA;$;w\PGݱ_DVU [|.A<:g@fO%̛2'P\M26TqCQ))2ګA@Iiɗ14xv'$&k+%=٬{WQ3cO!$Ru+Q4iAb'!b#m)1,o!YhbbURFEߧE[p+&wJI K{(*ahk,Ъ%@"\6F`94k Qq1] P١?+$ jY˦w+Ve(҉sRjU2Yد>r؏ V bڋWRmؙNK!0HW=6cO Ƃi?|>/.OrW2-, WZP`#1H-ø{XPA[4w5kQh~$\SE_&}EOQIh$@ۄ֞`l9&i WN9)vz~x6A$R9S];-4Ճ̈́b\"0w@@3 %Ϙ9܎<;f.%;}tZ9yF}Q7gPQGva&vE <;? v3w`,@,c6H0׼#U!r/2M(}Y@Isn_]tٻۓ tGRӒ-țWc[UQS"83D sb}[sed "s+zTv0;[3Ra%f ki2A6W/fO`;\gul[90n]THvD7 o{SU_c",FB<m H6|-? TQnWxDsB(b;S둔?, ~oQgPk~՗}>Cԗ82Y?뷝MQ InJȮ!v:ή 1cw"MS $&BɀhMd'2"HU,I#XDy:Ѳ>_y=]Ae)1)MMQz?f;utvA;8O(Dk1ۼCNQbw9s˚@acSTU@*QYJ5.\<;$nMG i,e$n"3oKwzq<"sThE)W=vqxeR4'S?$jE8JT@NMŪ'u*UVw;j*Zcj\(I=+kl0Z8&ZMr ~؊սݾIDKR[w1N3Wu1.$M\08:4&=KOZ/4ʸۆctFfD< t|HPH]b!s0.4CcN%fj1>X?huzƨ!:T}-˷W1bv 0WHg[WUN-GyُUЧ9BǃU`# e,hnrT%mBϽ .r7ѹ6vXO\d^{8֣FB0d ˛8}%r*ϵG*…+UbR6KQWzYHvY:6~MG9/Tmt UDum(3)N/dn멎B_0e[4<bQ孡};2}+Yp6ϏO|C-4s}s9q`~$F{cy^HB?#׋KuX7>Xxyx "NsdڅT+q˖ԢBQ>Pg`dݛ< ('%HѰ{LM*R bz0#̡ +ց9d~Ok 1&[)yC2h/w~(oV>4L:߼ W<ٌJZevȉ|ioЙbvPM5+G5eK$ĝnCMTp TݸOJzd/L!cYabbͪuF>4Yq-̂q-PHMWm/SF'>N$PU΢)pv{~;'oЬi|i>"k1U:^B 3fbɖSnXP+ ~:Sߞ.Ks#R([=XzQ237Enf}W#eo=1<._-M#״|Umoҕ5qm|؃UNfhtiS 8EL2%d-MUu8L R|'km?K X3풚lYNv7 .]FjN2'~'nMf_+<T J֊(` !,tu(gxL)PD(T!dԫwmQ1̪S?4:r Aci&-<VeJW gZІ{R#P%S5-UgKo_ȿ#|2^cfnkp '=ˌȴ5 ;Nn;Dl?iJM!`O 7=Q&=ߝ'|wIϣ8O׾`=V̉ןDp< RpP-*Nufm8)Mph(.C.y]^ a9jcB 9(5|}Ş^t wܫΝ"(cʷLࢠc7tQ{*U+QHǍ,,i]- 5Rqĥ皙(& 鯨Ru z6?k!8:%FԨpL }3ʮK 1n_n{^X퇀0=Oy?h%F98HZ˽i0}IilnZ; q [Y2~ + 7^T@55uq( fL&oCA}5.1eܭm8io=]¸sz+Dqw"re!qT)PYFk #0N򳸿'9w`/oKazq!5~U49)$ 5#7=@~ʰO *ώs_DnEm!M;?LDGy3)KipS@; @Вq#;6b`D\U_ v 6&S kiؼs';y/N#%HD/^vbURԜ:)TIrȲ2t_,z5 rɓ}}JmR9RCv8=P6L!Aa^'Q g&mxhJEx\5@6|q}dUZ70`ѸM II ?j[gXT*6<׎]E4]5Oiw3?soㄙvb=uN)&Hm? 7؉ۍ9\ J#%, ΍x7r4-]1N{ ܄ǣ>f;7Y$Z6 C-vRB ] Xyݎ )fW# ~8H@w_jqŦ(\ޅj}^W+K깢RKY\kҽ1+ Hi"P=9Fph|=̪ E萹YCJ 7ZE="K|`<;ۻTnwK}R3/"cz'^ZibH:'Q怴Z'^Ty)Ts 55_ps\A2+Eکrq(!qMaJ$UE s{=0"8L9;ubE>vGbyPIS}W31xMC.{MKqRޘl@lHh^ѻp!deJ7p{ DƑ,btyt-"Ou_MĮ'/R[/*y PrLJNjI{zW}Z:^]MR˜[-tmⴆh`7J_oU*_[w X J6en'D_<\# r}=5:wA:VnOn MSV^Em Ym5&("hl(^&,υl3k7U)OVqDZNi 6$Wxw{cTL-|.1мd <j;J?ւrELt+Tωz^ f~j)mc  "P߆Jbn8]@`C&;sCJb i^blSߘI "Jd0y`Xl#31jr[-?@3xd%qrZcjl ^ya/[Dp)YqIWc2j6aJ;TTE—Q6p74Hχ 8$C_z@UtH$A%4˺MV^6hU@Jv oAB} t35>ڀ)X[tQ: 3ʊR:'C ժ *-6{rp˂S$/gnadsikp(ݾ("󗣉Icյj]{}'A 6XNۚ7|(NdaF,\Xphw1tcsqfd92=*Q+?g̍Dku6zj)JG;&} ?aMTIJRIIQF!cuWz;C ɿ }a9"jގΌ+ : |@ԅ4:/x>#A*;]} gn#IB(wds8'1_^h=@4]âEWMM6vLLƎ[9Feۭ)fv"h7H8yw3ϝhTMӉouwp#!*bqBJ\4m~ڋ b0pgr{wA S&mu?R%b =ED[9L=UMSriw!MP>A0;EGng:Ɇqэ k{2r b“=/_G 9ĸ}*!!T{9^2 D/ZFj@{Rc*gl51Z#'_fm5\ ) -XEg9-V _slc֤vG٬`ŕ&Jbks*U{ɘNc d9lZYJ%Rc:*NNWdc~@ׅigk3syAfXUĥɫKGtP9=#AkŊ![k7FڀzFP&vȶ>:qiצn-+fDYh[/hcb-_ $>ur޹WrVH5 pLu:CY \V#Ya d) `힞x x koCx' (2iZ``w_"^GX@ߤi9$^®&"SM(` O? \{3JFk_/۱q锓ݏ'Vwf)[ JE('xNbp ~'2zү&(鱣mMi}N |Z*YRE P6)ں!RDk-atrj#d/?}F]h1\,'9x=?Wo]BwISw; SBaNe%b4iHfr5#CT>@Yr #շ Hd&Evʠ59@!k Vx%\}c(p.`Ebd:˙#g`{مi$v)[0\y_9@ki!#2Nx`!RW3SB"Dn,r ZK5ѰZ݃ne f쉸L+_+ۅh^e~8ID#˥D$7% c"R*)uC\kf4L8wc8u@fRN%N*fiV7c_U[ÂJ%./bIQk9X%~\cg rndu;ʷE{@dj"L#\u⥃ }*TbzD3բ@e,d4rNb$o> 8B7ơ߬R&㷎G$Y9 DZ1|WOEQTxWHYR&#/-Yqy|=60~f%N0s//)] q[ShlDiyCꦙpU:^MΜe\?{̄o=8;L0 xڊ>=2?0Eb"giE|i䏭3e O9t detbBzwO[$c c!N6aCy 6;ɪ[ᬽe?! 'q j"WLSjEvm i^5}c-핖]R>oHPclÃ_X70EL{=m6B( b~jRa&')UN.?Ǩ6Ǝm+3ZhhқfDڱnMłak3V-SX>ejgDmdnM/Dp*:O\jG~аw׫3yO8Y;YX_.Ǡ] Azi.HxxNG,\owKS$=\3}+A},Rė216;x\# V<0ۻFު?4p6F@`gR%]':xQy#$K\0jI8~={|U t4Ȇ1 E=dnJd`Y>l4[&( MZ!nKB ^1BTNKRPQ}[[IBTZЉQ}@Z X!ZsCЪPpdH s107,y*W,pEhO$M?e>V?i4M0wMвf} L*fAUX%_ A4{@j5 XЍ;hE23{3{mėg ޹Ujϻ "܏mQD:0fɉ璬.f `4%(Q+o,C{|ٻ_"Uz70B-Kz@O*9q1!#7RO8+ELйRIA_խZB nB_Ee#!ya+njr+95 hz1AI^w2\]H3uu@&%5dw"5;ӆM&25m_]W>vѬkB}X-F cHaB]]uPѪsb{*5畚ij>Kil+F"rjn_XopK!) ^z5. 5g8)@İ7^Mw6lPͮ=ꫲ76o*UQsnPr^gϓeЂV~Frܒ$W,gGS EKH&o,1$sӃ2)'dθA>bH!DmV W# tytS'1z:қrQX&! $BB=(K{\]-`%$9[M!eEF($ZNu I0E赚Qꥦ#_pBO13 AKјy$QD454U\ U5k[I* ֶ )T57Ε?ǭH[!>9po*sjf[YgS_KmAYԖo|.jv3O7MQm E~"΋ (=O2PWB3:*I S | ~{U3ZX|yrܟKg-{nx@ Mͻ+6a51xDcBVO0 EWA'"Yl;G+uR!lךuLsw.,Ş N鴀27F,'Lb!$ώ]w KNdKn tyGVgH5 [PL"d_1K'YyM)dN^38.BeWfsi1̬(3\n0mB>}>(fڑɵ\|l Ʈ+<8*OQ~-̘ΥϮC3(_ b>QNxf w 촑xYEٶNSQJca3}wP*Ɋ& ~qzs-.WbkG0̶b)B:%`DWEK_dV2yɹfԇ ]xU0q7X̵Wͤy/A_"JojMJv7׹| `wG=9~HO]j>0KQZ s-_ub 6-B!Ι#,!ĸ.Ya0s[*'$Y8qNAaVbEX3DZ1\$Ža]m2B5:m!7#/*DEk_2>9LQL pïUŬ1B[8X^{4 Cǐ)*gp'GlrF# Wk~i8c|pmn^^D ~ڒO 4x\Ԥ]@ 9\NLXI+ݟpaLD:O11T%b Zs oq$-}iR:1q^9I5]0Yd*GR7<4vufr+t PZU+6W,2ދԞgV4jn"ہJ` M6EX e,J?m(4; cTEUYŝV6qTIUTTL-A\&k~<0 jTG"!W?vsR8=b nd/f9&ޙ@xpH m5R0<aoc]\f'=PڸvRGMI<ۻCL>VmO c$;yh8B O<ʿ'Mr2zT]UkL==t $u9p?֦2l6.ݪ `gN/*W(D[xQ }uZ톈QՄb ailu o5v;s6'cؗfJqᭆӁtCAtV'>4YfWÇ/2P$# gĥD7./ȏغei~Mr5Pϸc&hcV9ӆ-?faN*|9>´A-kY廸+HZsۮGr,IyM07_L)r( )I_tu@ϙ~CTy# ;swrdtK%7-@p)o(l]&eKf\X <e! ֎x=w8QMz 5lM%n \"^T:Siq)kKtqe 5sYDˬN>j`tP^|Mss|EՖf[/MrrBtW8-$w ZߗGR1ߥ _zK\ٞg8 p9mc:``:uP7fY6'Ɏ(_Vm)~*Lïd0)0Tg4~"#גQc5VI9 zk*$1B,:W^7Q%@@Vh׸ "mYB<wN,es:lHԔmeo ka@Ŕ*&ޏ:vjUFМW!5\E=QafX}p7~~TSTv_f/W+D a]2*:cd&f<@C7P &"Aݴ4_v|. })T{h6/baD+LTygp"_fĭ2#rEf$6"; ާffqVu RIS~p#D z2 rYO^~*H8bJ5<馴& _G'Zc~]jG3b>I? ҝ>YSA8 x6ooQ lEE"s4;il V3qتK+:\tk-L ,kIJn|F_E^.MLoG- \G.ߍSZ!?~:2H褗LpUcFXL~Dzdz:\${yB9]<d9cuPm_B \2xjA󚀥v0KFŊVeG60u$ЋGĨϽ(Wo00*`WlMkz 9 ;n {!M' cr.!]0#zP 2aV36:F~i*J J{n$ 0sZu$LBtd}KVBϭh٨0Aopÿ&C?ɇZAdaTDt!20K?&0qiG4K)84=xd9&E3dVKĺEqh&n-r|x. ͽ7ׄm/iEucRZJڀoX*^m85{P//|<䞭Da3[8{|IG=_-&9yFmQ;tML0`a+#XœWҳPgUHѿ 3Vf\\ !@O)۞\DDF&~r&EMCKc)pW9y s =2k NQ Ȫ߅/nmY50x0T|y66'UH Ǭ ?%` `8mLAe(ipԷX ,J߉UXQq")^ZiO5oe]Hn!LS28j~?+ [\7g{JF|iX:NE)/ 1/3mz}&nf3z :.ʷi/6iXF#2@KaAŮPd[zμsgZ zڌxǴO漠4? hrTB k}F-c)9Сp2h?D×Pji.NõdiRH;M~zY= ^8vlǐ bKJ@7KFTG$%"b?Cks9 Ga!I1Slr=rPpmf|@m3aXELP3;0{ehVqF;{NK°*@)3(f r{ ҕ్*R_ ZD$0եYSf=WEiAη#̡S_@[fah[tJÓ\^7עEl6ݳlRAl| ժs)|6eq+ C5rNˇ,36g%Y'*`G;ߍP% Ha/W `[;\Ȕ{YY hwkIQHDP4oZթi|L&_&H&7Uא\@o`6g/AD!0FT*Jʪ\VwMc `ΝJ!_)kd$r.HJvH%`"bxc-+ #Cg3TH[,:&v=C\PH@+mʣE4%|S>'*g:3#RU݇TUE̵5)ޚyb_n:?؟}pMO\^mD7${v _ JZ3~ׁM粊cv| xjc6[ȓ1(-0KdNyƑ^֞/ XkLl6^lX7}6ˬ'a͵l Ym_[Jj\Y֠ANphNXѸ@jB{eZR1%r6}QP9£@M1{dR"b:dzL}|B-}c1l>@3ə0hp`X/EAR[' {'sZj,G L?1*$tcAm  G{2?w~/,̌,r-m 2XPCnOvaIbW];zINodH'PwƚE-i#;y"_Cن1quirDibxΚUҗN!8 m0bN _{ Z;g?$~K<7PI,c<Ы9Օ$ ޝjfq'WZI8ѴrkS,~d)>JIJ-`xF萌XE|̢}>E^]^&{[NՐv s@)Ҝ3y0Q6oE&;Cф_A4Q9mo7צ]_,7s4nuƒIu6FgV5|nADa%.Q!6.V- T|=N!ö~tՃ/F̏0ѭGt_ ^ƏXAl0eq5Lр,,M蓄&!}2ͭɯ2A^]1 yƢh(VywQɚ4|3 E?N?hRj .]";9@~ũ71󓹫.MY0~8{Ƿ_*.zْBu>ULպ=piNUSgԟ}!w7^~?lol}J#`!gTߝ%iI~_yj){2tպ}1>/gDۤא87sp^+ "MmX G8oۍ9-촇BX22P8v ٙ2hzD3tKX;1}3k#2=/7_n''r{:zSG%龎@ԇtE3xEY: hv$?c"" ;[E 0UF|q+`lF>@ӳG7]\>M ܲ_;)hgR<9R΀ QLdl!Az}hXnyǚRd'Ms(MROɝ|P U8Ւ޵:MZ!z!p—;20MylwLZnmlUQ0%4#2Y״8[=D(]?b Kd6N~SD\ k W^֣8Q[)fS ޭ?`"5s?Var|94tA2kۡ(ah*g!K_dH0|屠3 ?=߫E R;펏BS*!f*5$u&0b%> Zl9]G"AM1*qw'g ,go"V+5ڷ"щߛs3?):j0U9 Էi&W3{" ‚҇NV61RAm ݴ}@yi*G,ov?dS W?Y8MoٌS'd[_{ʎSsrϣ2{zrYaQh: h5Gχe'P];K[w>ё_ؠSR&@|BL7#&C߯ =OgYWTs5Rro)Bk|{'t{l]GGDO[HԌdoX;XśkN?$I(k^3Ev6Rdͧx6#t@Ѯ93þsVwxm"̡G>~c.nu"&u? |? \S;2ElC]k-݇ 0Ǧ{187(4*utakf/19 efn3(fv,~CǏVEKt8 )~ÚhՁ> 'hGNDZ1vX/f/ŀ@|2G#CbVZMo^Yy' [dϜv!QV;)mnNg'%kB#g9?u`B.%PX+?Fm!fpC{O<+UURWsawlg7#Y'Rr Df5Os2t#u`HB<3NQ/h@;~4 1UK8VH [!>T[P3|ϻM aw] )*(SbXVKB 7{nv$k+!5k'HZTވWd7ĜI )k%!J~ԔTѵcm̵xF"|A4LP_`;Dv3nmry)K\ qծroiHeK:uf,X;F65kkZ% t>/'Ց_#b/4n?Gj3~+p g^/!2!M5WU9uT.ha~6`wӴ u,6ed> "Ȯ{k^|y*:;C[{l:] 7}1 ԁgsyTS^|g%/b99 NՅjVivZ.@6'յ|ԇy^$-?rMWQ'Ŗr4̞VpQw91s9> /$P O!H:%E5N*VgudE2%AA=2ͶAy K̶l)0!AFQ/شntIf=LAJ.cWaQ4=AeX =PSDA7nxgd26$i͇V\&Uf:ӳ1V*I_F#cieFvKfn."M϶ڿ3"bQ$!Zr.rmJ-nkhfѥ)5)4bZ($׸$燣 "/$WOqX-7"V5:KXA_x/%$]Ne4keh/%A!| b`DӺ6Wr}L>dGZq `,Q1뇀6y#?s*3&}YOMR~1L=s<:(!M_D2#ri=kf32)_0wGP9-nM5dp)P[7`Z7,oyhE4/7'HbpO=*Mg]K} ]˼ )Pzivŏ/w-183i~AMLupߛĭTۆushj~)Uj hWc}w2Ƚ JesɃ&lfۥL7U`~!7q(y]V0$pb#}‹ Q "*53H߇<ƈg*T'+;a!3v6ʔ ;Cz{iYtJx,SqegrpJ\5o< J $Ӻ&܈b )ÝDg<}(QBʺq. TAڸb 06mZ#>Lʦ+Tȅ+F]‹*3@WZ61uH.l5_ݳ²KƠIY[i! YM[%CUE F;^Y3,c, T%kDqI^ #zIg'ӑJgs9N-0M`>Abk2׻ 2y?>0k3n9W4tGw ›3_z뵚&LNѰ`۞?{O^aIڬ#TP@6afAj2a `-V/Yb cR=s;D]$5^W*rԥozT08ib؅uI0bQ# )Ģ'CN._t)b(ݲ? oߍMg!1J$ yAgbN\ª+ qOЀZiI)q,-5 "s1Dݩ25~D$(ޕ@%xc+.q5֫*G:frΰqdO@9|8>я9b%|u9IRg8|U} \d鞽%Bno@ώCu s1(2s6/h7Q17%EYBlOp IܪtV+=]WRd‚rYr˄Gôb  ) $\7l Lj{Qk98GUkK7acׁ }7`e ;93'  ;ݑ"I\Hg[ΖYSerR*R} 1MW5nNPѓ}e&Q9?!G8ţ٪y?iڨ499>^]t#RWcN,Srs#("p k.[Ӑ+ݡZ5A iN?=FEg$RDZCOD[i 0]Nm:l&|PwYgQkԖod y^6et@L7#荲Z-eId5fyKO8. G yË8x^L)6~[KN"4ekvkͯ>w& n [d'`ȬIT!;' 1kwO\:V@ Z[ae=?8Y`7@LZyKP~!7oJ+$?m 8R_k4̾uO<|sn~mf񞎹U$5C'PP}n}XH}OE*1'`a'0s lR-ru~ӪmtJPRʼ,PJOI |1Qßpʛ%.?ŰlxENj=9b K7^?FtgFx mQe ~{/GxS#0{   >|:ijKjHky>bEBLn~ar / #UXeюW:ITGv|by@Ax˦ éX,`hS}f;jX&wI]@__OH|*=#-"ew)[oΠt7pCb8ZFcW>wd y`͋;@XŢNd'QFuN`׌<(V{Y}5,|PL )IC+[qJFFVTsvBl/p\glEn!dh/Jtvj؎N;}hVp M:{yNFv;Ss4s XI?OOH*Fڴ.ނҊ^oЧg·\/ +K BZ1mi\5'9d`Ul A ^}KR,K~fd bQ~7]h6OOZ_c.^/JAcЩ4Ɲ>6<[䖫SN?XKc/3sRqJb+\fƵ i]0yR yµn]q9j58eĢ aө:D6o5xbbeZ.N=_~Gns.[6&ąeaIߛCKZ|)N0K*XX6p B)dzWKCKzn'Apс^:dGk}IJ9|щys~G\$sCd@ڿ5t"j y㦙KޓQ2e9B؃zʋnWVpg.Np0"w& V㊝\ZaT0r@b+[jxn׾62 )BCX{ nFs! }w`1K-CuG41J&B7HtBDյ]/"I}4mm;Sjg/S#?jDzŚYs>$[M崜j4D^,{@Ó.1Aco.NGT<봗QNpOJw{_5M 1:sVg蠕r7fd*l>Fn$B}V~ND-^R*+?l"~ Ye/Ji>;Bޛ-hҴTO"^3pX @܏zǦoC7ИB$*tC7b$8,LnIB[GUоҫWUh>L5m͠l<嗙pD_/t(NjF ?K[~Yi;fۃM}Pf4+mz^6x Нd3@]{njd p3#m(0Jb? 8pA[zj|M8ɷrfs Hj+u%}1P*KNu *1?吢Zn1(ˈbHX%[x: 435w^@#Ew2=9MyQ""*\؅$tLp pN P"L9krzmK݇GRzw|f}FШQQ h 2k vͺc泅:U_]rpH{J4{3cIqzТtb#;퉯훃ý%E(CL`F@v~ߣ~qqsZa ogCm'ocWzbw^8HMМgbTPm:PIdĊVA';"1#E`DLIf綹G}$ek\{r KR–b,:PFB쾹,k12n9^_g<k?j_8HE;{eU~Ea={z}ݼJ^Y-REZ`CȾŮkvz!W"Lb׫0YMoWz-Y؆@c0ol䶫@Ezn3' ,'uH>rϬ'1gnXtMH9miXNq ZJvdM%'

h|ѥAYIqUSaKjA2!XH}ΩUj# •Mqw=]T*Cl9 5|OHmRmYUsvl^( |=|,vU2` iKBk]gqwSTc%u %It 8sBx2 nZ6 vSSܼEdlcm Ӝ@Rh&؊-t.m-0q1 ts vpΘkNlv=\ڂ 6Oh0h>e1nB1αia1YֿCk_5CZ倳zao+Ngoj!C[q|lQӃSI` 6Y2XkYc.n%q$_td}ct.E)E>.>u۪3 hiB!|mx)6CVA% If3w0YlW$HpvFm`R,LBqǨF 2kΗJa'>rqd/ד:qL!/V e0J1O(؀GꍙP\"C͓js |*,XW([.#XWKg9]{ #wǒ+c~,Cns z߳sORhKjVݚR'\5%O–MFZ&!yA3O6G5/Ö^"dGPإ&BY2mи8m'ԂS9pl.MjЋ°V/woL!6J/ǀwh 55+_¦J:Mi b{!T_3:}2l!KQ%ki(\c@ЫMQh{AǝNFQ{g'fƷx2}J̶2GAf_P·  YfB@ Ù#_hT?j@hp[PƝݗ eKqp"n^kHH搎0\?\ #* "4HjvXXͽ'<==k(x0ytsX}>Rܓ7P?i{tմzc]K :~ݴv 0 &"զ҈T>Bߪ qYKeZjPsidw^]I;ѻU!&G=hRl m57Rc1Z-^TFx9G%jB.9[# BUÜlD5GEtvXkҍ}6 yq0|nZ-yߨM )8mޙjT8]݊yl9N&Icċg,+ i]O7+f\R4 cKbЏz@Aq+5>Χ3+/)ɜڪzҥnM):H{jx ;bS*X*eHjN,=Fۏ,|Gh&&,! |Ҏ3<SLTqǤWWp @I,k69^mX `yNzN!x=E*Jis:A!DXcs.1^[rT?Rgg(zx]w3uFS$ނdtq848y)1UqgBѯYX4`'vyKa)u.js<_$K+&9NN| ӅX2=֗"[=WnI,m f!FgjV&^R* 3Q{Afo7s.)Uhդ W~B B}{q;QoYڤL1`Z#鉹k>'"plG5bqّCRR35?Fc VfY[z2R\qC%]mlAr5= I|:4{ow*ˎR:0Wi{pYG2?DWEK:/ahIu.[F) _;CIF9K4RW[aNF}U %PJJSUqqBL~Ix;a @ժ\zo=Z M>@PbK=zrx~|&\(} o6Xgnŧ@I0.ʯ}\I][ջ.̜QFjhW}y59E@C-e{1˾ -rK^^_הO+k"ܼx0Bd*&$&l!^ XN93#Q0eoOUc(71A 5DcXsTG0`$t+(W/|!PgCwǞutBņg_~>|k!v¬ls.U#0g䟊-(Q}8xnwN99PkR2pF!;~M"v*N mԉMBkI=@v9zAZm1fS>: UϿzsE2wDAn)p{/Flct l&.URj#mұ-@-H# N!~1rm&nr6D1I5@HTqӠ{n)g_24-Ruf,pF~4ۚtn,?߻m7)e8 @5gC}6칢d7F'~[#ϲqX".-Tm-Հw {Q7`,Z7"='$6z՚?~S['i;.IcCJshc'5dN乲O|Ϻ᢯/hA S6ŷ0EZo7eRymWɲU;=.XǪyB4aY4uYc2à7?5gY:ۖ\6%޹&b#yp`L٪q®;bbtf՞lCT^Y$[+/tQX1>a MH>F%p69fd%Qi;V6"Q]/5d2䱕}k̍τC+Ҟx/l2%>6 )6JtMx/X_ޥϸ<\ 9>T);+Bi)  (BL>C 6^paE<nzwZF^tYNmY"yqe"E$qbgO]wx.qDKwMX|#@n9xl?laz42Ĉz}2h[[mqN` É(.AFU}&I1/be9`ԹQVʔJqlvې6]\6-{Una^AD 3Ðr~GU4ٳpPnZt -~5f:l/x4;Zsl?6^@\a pU8hA"͘ Q< LxAKH_qztc _ju0zBjQMa_rF=Z@I/cz'u΄jb"'Lv Bn+LB0Ҧ㑛(7${I Lu1g1ů`BBj{ÖƬ x{z%!6d?/um.>EެkjWWwrN,o8 qF-?ft\ \4b llXר_7Ys)ZK~PB2qM^vm7}T'8~ g3Cq0UXYgq% ccV]Jp^򇪟qZP~Qxx~LM@JrOy޶PRK`2cJR)V/Ud8%Dţo[JtĎyWC3' َpӽaeY^.:[_A^~jYsa Pg/,Fny[X7ؠ`IZ)/!8< X# EJ!|NʬZ" bEnI1F6TZL>(:"~ H%\rp_[+]<švZ To4/i2@+XO4L73/՘'յdހjh?D0"4S9d7pSto2ӓ0~>(1 3yK2djgj>/eK HZk}BF%N1Ow~'嵀1-Ue`K n4Ta'mS6{ #i{yqQ-/N`X/g }ِ 5ː禓a*idOA H9QWC9>Mm<nVC>ʛeY15C$$1%%3W x+MΥ S!{(|*8b_FS!SE:+:l4xa267Nr=pŨo-yݓ'Nt <A#\TZ`Hfo芴NRu-Qt8\EÉԺޢ5fAvߺkef[bV+b[2@h o΁+?e;r/fu|ܻ 4\9 ~£$*d1m==;T۪ds1>DytFmS_YQ@6f sgIPP+Ѥfl$I~U6R Ԕ@lU+58QyG \9rT˜ n|.mVT9o(mVC.:#kXp϶؈C70ӳ4x:aflռ,%O^{=[j<8-芷svf#BaG襂+e=m:AX`h02dXN7o5sf{hҚpb4g=;d+qy {fVJ T@'3~&d@$KS߶Ԅ%F90r $ u B+3֋N OV()$9@-<>7T,)xD|1w"W]OKb.S:ұعzsMO-gXKTD&$}l%?޻&~>blK/k.e((p RZ.>EY%_&涒r.L#cCew˵>Gیp9HFIՅ1m<#BUH ҦufdoĒd(9k!wIr$!G1?2"Z[%ebknuXYנ 2,jA66On w\G$,"f3<̈bwkb˓"<{$;»}%P*OIeR] J2HR[J櫬'}7s%b4E? לHkƈ^жy}BC'AGՑ8 akqٲ-RݬK:k>7F?D4is JXV:K}҈Xgf m7wZbݲY6 $zo4oM# 1"}5rX1s A5Խ)4CJA.2Gы~E~(B}y7Q3#B%$Jlb _ _yC[? n k%aOlP5?m5G9OX^ Yw/\Fr]OA*˃HWbyϓ лtDӯI<]"Pl|>_`=*QeEAMoEG%22yǵvT"ydM"ي6_d^6MMil8wx,uji"x%ߌkZT C~ "l>"'\ّM`o6!v U'Uƙ9-6M]T@Y;0GZv0Y8GA|fq\BFԙ(ZBO:ODچ1g0$Ƅ0+kZy1CFS %HFSea  3y ĦcA Ec4L cA2Ic| dU!$dR@i6׷ݏP՚pyhZ&fdxQ`]E+8l_-4zC޿upiD"+20~uEԜ%hVz~8XkP,nISgƷ= A6Kxf0:rH;wLh/kDkQxTDb5&:8OrBv|ymu\!o90+?mb4jV +Ms޷r5TWk~':T8,8j7k=υLh5k^ +s} I&;n }ᛈҠ="JHoa@ m])#.-MER@#hFјF0q"(]PyvHC@]+FCW?aS,+cdwOHͬ(J?}CC/o#DmL)jK8vtu而AɎ( ]Mdm׊EimQ!F2yCBJ ;3.>n/GQ\-hoNy#~Η̢̇\ (gqBpm:t#瓵ǒ?阡~utن=ǓC‹ɩ5J*`R* ƴ¤:jk3eG )>E9b"کêÜРU$<[\j/5N3 iZs d/rQRuHcWD7o>R25 ce+@?曆x;;ԧ9J"7X)ٸ.J kJ+g6xg". t9o%phh A5q)>W{b;\,*檖;k~?w"榢AV!q#gj/#MJ Rۥd:|[F]SCx,]JLbC\+GoAg̘-Й,~9E: ׏^iMIڧՓ͹kSi'pSoHl`$"I8 qM g-jx2Y[|".T v bB6p}is7yƂ sF xwOk;, ;#cw .Xvg]UJ47j&L$3D $O;8 ) HhwpsLW7Уqǧq2~rkRϾ*H Eu#K4ҊUNZ(T")8^80S):4J5)aڰO$_a{Cܭ{K/#$ ~Q\qYa#z՘1!)I3N@DRSl v?m.L^TKMEMgЇ! @~S5m{tp{]/ M80P 6*k^wA dկ5*'@`|ع uM*Q;E}!d50y8&,m *{pIK~J9uUkx/.7n\A'fOnVW_~KK[Wa.YOz۪( 32u1D\*M0EDv_}J>%Đ1g t vV /W]w&v@.r ?oejX8ӉG( of&IEh "?$T)O/J&ᆺ2Ď`l^EI -Xz[gR:aǼ%졺0c=^f=՗l7<0\z_Q*7\,H@;c۞A"#DᛏDV7d)Cރa?%7;M*34tH<^7zLz~TQU*/C2UPq <nН2o$Infr'lRZBЉ cj%؀+\! ]FKlnF^Z<9DzuGD+s ,uI|B G4Ft'C XNJ vqdj 0A9)9Leo/UI?Mȶ6wOHEkMDo";n"{x߿3\c,,K7``ڔVK|,)T?*x%+W(o`G>gEg@mT٪a 1GRxp.wXnkt+?4zc%\ fg`gk-u]3GE\]%ЗTITn6$T$t}/KľKĖ]Ԫ6Y)ط[>`uNh$B"6*zsٰ5gJ0ǹp UT<1ڵV\,@RB|9iEo^8$d A @bۥ(/6aќ ?7O'V~q4x[jjܕT.13< ED1^'|}8/H=a7>K "ՔUhڻwh)²\#M `l"J9kDYM~Af`3g v1R'&oJH]ȇ7ZHwBm/bIxԑce3C BԒL+~_B>.OZPFMjwH`ʸ({族>F3a{2+pmtl^Ws.e1x i % z8ؑ ҿo -ZÄU*Hl^lDA RGD)U.w*] 5o!)Q۸N?6JD>$*n_\򼸡 e2YLY0!Vld3?r_AҘLy̝J ? 5*v`4Dm ;ɉ'"9 ފ5s.Me O./I~4εBH߼Cg6tee 3AnsuaO$r<x:d !zseL:.K Jh̯ηeZ{e*g{TRF tᲥX9q=G?{EX"/^ڜ6J̑biݯZb;:('U; b.Epn>fv]ܮ"?ucFṛ*ݩVG XE>X/{Xlzq(j᜘^ >,;(yc%Nk!բt cLg]|ՃD# xu՝U%p]d+T: "!Щw SLҝ~-A FӢ Tih3T6Ú I2?|S 72D7^ TjÆpQx`fg `{psZvdYy@uz:p4ߧ0QbX=tB1C~? pYD 0X`; ϐߦ!gٽ٦_#Z^_!29nN$Q$>̿:@Evu>`*ئ?R{΁e"UWkE[0d}@]ew.)DRn:4 n{'m[pDu1.΁ޡDT&`3׏P"4myަmQ}{# y0h#u X6|QZ<"8+ ڷc?[ROMk٤u_Vgoc4Dt]\́Y.- ,ìT+쁍l@?htqrAi<_d7'1 gcpI0S+pKtt a'(Mz(Eʥ ^j5e7{*al=X#"'oi$4Be2P҆5DAAwwLFZɡl贇GM)F}4j#Cvܾ2=R !R4?$G:}tBZ}3dVwh W>b6Oj>C^ӖGF:]1q](4-,tPe̟}SS( GK&7sTLax~fiu-*;an$ʥ ^Uwբ0# ;b7RKUkA캀j|G[as .'R5%sty<_Tf p.eLzS>UF |Ij Fl )EU(&u|\4IR ]G"6. `LUʹwW nCL`wH 3o9HXjY =o^GwH4^2R]GtHv SHom r#KwO-=g.irMJ8T*7KG0_mLm_ION'vMjon~Y Yd.€9dcC' * /זx)5' EZo_҈v+q oR@˺#LwR{ :n-r'1%4}?-䍲.51 ז=5Z}`!Z}$a#+5>2,4qaPĬ0-FvEYl&~v[:OjU9}¨72 4HHO? W 5H~h`PWh ӆvɒf >MF-`Hэ+^pړ^&ĥQ@Hםm \3}W 4$"j(q;<[çmI+I>~qfo9?5fyCrތr]& Z{zYD8qԼ㱭Ϛu˦Ҁ.5A^*1;byx@;ktG *ۼ$3Gt VS$h2"l O ^}&v0%֣lX a C算85;c&Ji h9{7I?M6?[ͰKh'*!ԂV1& tI-:P6m"JjI22d?'Nlp1ޑS4On.i~Χmكk:TԼfl@ fe7"4N+>[IIҸ;h$# *։z=^ jѧ)sU&5 Uy̌8i!bp׳ [GHR߲Ѕ3Ag4䔐 2&^ z*ZnE]OFfAxvu뭇sp;a\R0> 5xj]h~ 26 [()Z\bm9aRY13LRh"|G q9$*Ɍz<"ќ@Q5є }$*ٜ8vOsjձtb׷(^G}Ft?;i"q>l#ƯlZ¹5{'񔦙h( /B/,Ґ{YuXcx><`\˖S#[#1tF|fhfC*ѻLD߭YpSVL<ok?Tk8e/0/в.eMxpZRFIJRU[?] "k}rdU4kq" {2(/4PXCkkrM[~=&ųN2ce&i}gyf4v"a+6;Tlϒg7H|7Dݻ62΄]RF4I~2.Xݻ8,Չ7]`?z`H,iۑ'Θhȝa@vi:dx` r %e a~`%@e*{,Il_R|t"oRMzOB}d9uGhkA=vn!A>)=iȳ0ȹ(Kgr HQa<,W-\> |('.~tJ|&5(1$ߴ سO@~SgHJ֤Ͷ{7D}B۟p,eq  fgFҒ z-2l@QpTON?2΢WFȦt…z z:?욫wopUЯo"!kbAZ.*`8{OOoJՀRYmAdtGK¦eo2 7A EC<΁#&E$_`.6z8'Up~ _!V@kX ]$75n;S0*Io|QFa2K֥;htk= 8QhFȶ!=Ŋ^嚉=zBϐZRi2w}lp 0Z(vQ# ʈz`6$Ԝ/R?UBECc8ǫF>!ٕA! B[x+P$Lf29~b@Q1oH>a!`SaόGqY8?1xW~*%NU÷+Q?'80ez->]dZ_ H2Aaz1:LXYQnW[SycxNZє)-=1F >K~D`1ȗ ~n0KJ1N0O3L&&|s?K,WiΆOjUG-Kv 5@(uqo@F&pb]ov6PbqzH4#Nv%~.muO Q{`6wq{uBO[V˙"uSȦFW;.v ۱܏]bp*"7/1aea.zo*ScK?aQWe2j5cqkP戮#@AdAl8 wpΰZ~Xմ8웠"/P )em2ʫTeZg{ͻ 3S:UOW36#1 SOQ[C>(ºrby)ƒQE (nk6DDR܍I`;x%V}g8y4N붻 (,FYzT!ԭڥRY/ښ?_rCһuzrdPsiKqH`ipZB5f ǀ9Ndm 5)T'0 \uu[)eA:FlftCpugҰ0UFױ2U[HLI͝H8&шKVBj;Ψob|@Kg"OW6 l }hStp"J$wTsnO{,=ﶔhI5\a((;~^nvWD+юp82 ue|(wE)sy\Qʬp'*6Y.}^SܱaoTe %H&Q7TipiЮUn!f{+DO: SA-;Dz޼/q;g{( il͠5v^T64J2KC5Sey /%0rDa|Y_$)>*ʠviO1[I#lgLPãI""G7HyUo@RP=.(+ȩ3$5TLh ۍfMF8~"7[1huFj @VYn~Lt NA4ozH`YoFu2hZ$aT-+2}.v6 aR+ؼF MX垻QA8` ,dɜ̏ZRE(0kъkQFЫ)h7MN.e\73rԤHLk]Ѱ;glz{_w8!n|yyrNW-a}$ɼ-jF^n/o*.Sj=A/~ $S{_w3N6_]@ɸLѽ%U@ISR.$dT.ֺз](D5鱏›C@`!-T4:֗ slm߷05NYL_8W)-C& :UiECx&TrNsUNQ*oٗxu>w1_iаC@G-|mɏ JsBBL㐧,jUtȨduDN x`zqⷞ'\o+v7ଊbso.MaU4NXm~^mn{ ԥϕf`'pV]5i{I v$KQLW@b&E gylaY~#-џ&hzW:y^;a*}RORI.RJU'87jveKG{+x W|9Ε>+,t|慌ȖЬkLU*:q)|c* 5c@-(L=WҼyb9ף|#(iH;@\']xaD *|fMi8kA{滑"?=GB)obyR}<&y0.ev!W54ӵ Zhg%%ND@1j^Te$/yS_rH'%b<>tkjsG{wäjUڭ_:c9"DUuϦuNHR)D3gw@ 9Gݫmd-VScFb8)QQ ǵ;ߗȹ/5JɄll]$]T ϴoA "vVHi=Ju[Y v3KP1z0y6gV#,M%YAuiE}Sؚ ! tT IC ǭ y#UIrO`/pϤ2xZ%tؐpBCFW4h('v?t`ڏ{'أ =G;&TSfla󑟹q֑ZFI?"O6[fX,XGB!d Mޢ4Ո̷=yc/cN9O @薃/.ս*a{п^E;&Ƅ WkN߶2 pxQx}֨{a-H/|0Fbm(y*We-]4\O<;37=ʝQB˗B(i9y4ﮚqw(NLֺN);;!bɃ=6 W)8~WʧopO~Fj jcF+U_ ue.kd/ K]]UqHd^r(zh\]O t7=Bٯ"c9G3=ó-^tˀbRc (z^ -1FFXmxZ(ajWV B/KY {/sܰKY~,yX\2cF(b2;$~)ܽ J Jx㪸FL؈_k-Aȝ|mۓإ B,GQ _ݼCj8gk$G!Z |`:U2Pv\n&%x x'=R pa<yg2e#L;kk-2dL 638{u!ŵ`vq}9ȑlkSN Xg``ۡ*1uEc"ݬuaAfsW%T5+J7,RPH^U:w Sd>TwPDܘ?v9i,QGz96!34ע'WZTC,Y#TL)m;^.7ٮufiG t^L+oJtpۇ]Ym1HN-X@adi׆Xr@l/& =Ԣ[\!-+ L޻3C#\Y`QRZ}]\pR&2]מem-Kgj==K-elwp+}rEgT9v 2T1%Lܭ#kflJjC}F mcebW ļlS[*FJ -(j̑aeD"e*YFk5Eg=F^4„fMy *9ţ" /_8yeBJ{G Z¡Dh j2,-"Fi/!,o i=g I0k?;Zv#_s$)ftGگ:yh`ZT&QJ=lXA_ik~4yѢS: xz܍19 zE,xzn$~1J'`ó\e>SKU&vH$2;λf`.JFNA]~u3CSE'+^z}cO=t^~y59f} uٷդͺOpVU)xޤ>=l{k ok%J.q5xuC@;]dxM?)Dø]Y)"aL|ǂ.Ou&41($7be1~ }6X"Otbo!IH8 V.n?`?!\Mk~'K>7!o'|Nb cvŧuzN3ݑ'?7"CaN1.7 +x`՗#[mŭj^V5-K_t=NƲVؼ<;~/|eQnf7c]0aJ!uD6X Q_Fp|g">ddETp*cS2@3 iRSg.:- q&U~?JREe|AJbi^Moγ[p#B>ϩ i,e{/_ˍ~yVa!*JE (=^_9?#}_T a^ EȮQٟT}XY iaXz#=x.}k};V(tr܂ڟ1.Be?c?/ 6Xv4n V#gL$FR#GTc%ۋW @kr=3H3!2 tye)d?!^+VAJy<{y/w*Ed|d*v 6<:'T9R9CBQ39Po8$U5"o ʨqR0 kim(Pass8>3Y-n3{NdfhE&xZo0 "%@Aqm4Bvſ1QR`GǝLhXV=A-N,,5 !::j $z{C1Bm 2lCM4w0iV;h@uمW˩mE%2`X~XjtXǃr@kpg8ma!J- MV)+1J< eZ4^T7\Z)RkXcArP g๐lHV-ׯ;;Bl " mYCQy) ]1˞|cx2uF07JCYsX QzZf4qpT$*Nb,G}! 0($T8/,Bmm# = S{m%W}?^r[4v%0;!?37zbcĹ8+`m3 6$DVL]"0(дSżC;q`0 %D0)2lL4`aяbOj3۳6%ߩ˜+0TDz~HĭXjぐL') %k )i1gs?aQ#а+[78IIx [%`k?ͧXt/_4]^,kB肥tL!5}y\+iZKje9`k g݋-־:l`Q!:3 zm(”]Z݉ZOlX%4{ߐ(d;~Qn VE*Oސ @?H- f"WԔ<[72SkƲtLk||}S<4 T!W0;F^ b[hڵ=6WVh˙)er1g[҄fX]3!ZZy7ʗyg؝; 7dſ_k0h,(21rFhY`K"NE pH0tI\Vo8S|ߢZ߾ v+qĦR}ʜ́Ax%%` ) = wȃW ŴuuoX%fJ-KusѰ Œk;J( k7A$̅m˵QPY ٕ"DSvU188nD&)* ;weh _Ls:纡wHhZi>gQZRɔyӽ$Aa0םX!I9u9Pi_a+^5y_sBT5aQtxR댛 #P+PmShۘ P9XH{M ?=t0NEB6bs*l*Z&;]-4{9">5`~OVq-ԤĹ!Y0΋eF<]DdE^k9EΛs?[[D+XVi7(J??;2Aq &<_F+ h2Jȿ~]b@3.1D|"?gzk^S\?b{W$B$ME"?SL$W5$KWҷcHxY*R7 Dg|E5:1Ȁ"$/? rtHEʩTW3oR#˵@―+Ȩhm{NL.v,hfEsDQӔDggt~yR[89@uWzp>nuI>q 95(Tq+פw ^(O-2( )Ll5L#֜ǐ2'[Lt^R˴ Bx2('*Νfǵ`C FE5.%C`6SV݄ѿ%Eu5d|L7Lz(9:jv+-A,F6LSx"!+VSdվ9YQ KH{!?s*]>>֌%>E(ی븑X'9:b}dnފM΄,X<2Q2Κ.È<,U%f5~Z#M.͵ Ċޏ:9rƌ xWNm NMh|=-s.9Ig#6 ^<6X%\~U1/+b=kfl*%0̇5G<-Q@N5; Lh90 ߲j¼~u| #w39;dvbe,󮳁6I6j M*HN|8ZMxN&d>}Eb{Exn]"i!p!aĽf"ћCߛѮ,F1urNt,Q$Z-Y:]19n!^>62Ov| Y7yot?o l|e0P[ y0)uT7wlښXDˤv_m]"_5`nsa.r2\';<sq};\ T YI')'o54o*@ٖt0O.[O¥3e<. L*D-GqahNyT8_>f`9]=bT2'֭DNcDK_FNyY~;r㬇G~Ő汭 %\s"wkQnX/hOij27 wFnB-5/5f} +m0 p<ݧ?CtӨ}Ulߟ?A+z2Č%i,[x 4;ptS P2e'$R[ MG.}meDp&&wj79HaP:/̫t)n;0&'IQnmqY]*IǭS׈NJKYQ ~dv?,h E?y١qvje4puZY^v^ShMd*pwZlP/3sR\vNƋ\QPg,f ;V\^ma (ɬ59ejemd_ΞsW598 K_++~ :N(jI,'P_$aqT 멷A3 ϣhɁ{Ε-YyZ#`H5i]!_mo~O\)WT7De^74OYC3OCG}}&*e4; r4 L2XUQM=`Nfp?G{(r*Q! I,3kwYEuXm-^9B(p ?UjebnB-`B'8ϲQA¥'~AA< l%WlhLH ֝  7kH:CB{cc)~ʌ#? +Dqa~:DruK8hK_yhR?/ѽQ|KAڵrg|򐂬hC;9 5z%@cz'Fn!LWb,]3feԷn}[5@jppŜ Cq)V}uV?eČllQfz^M{` UB~y~]ϙ_Cαj2哃?"g%Nr,jsi(̈)6!,rRd5I)'IJ>c {DpEY=U%͕[Ft`wuBI ;,ݷ @',K,!^>j3܌_/JP_7;4TA() .P=B\u*o/2M8cu++7iIGK%.Bd,@G}YQ} L,YdɄ0:ee׼W;~xW4ΨKZMO4| O !H$@muRv/jTz-4SBdw`/E4Ĉ)0{2`ص5_g+.}K!w~]=P?;-Ǝ/?e]>ȁucCVc3$ tNjJye~UW-ljF˩! +Qڝ?u})|!%]ry6+[`؞az"5OV: D (B"&99W[3&}F?W`; 7(MOR'?)ֶ@X.V/|RK96,$h])9L }N*=!;oCp- >?* 4ʵ4;QV/2:fTm/R02Ο8q7j~ ߘF6N/ej^4(lmT7x:>D"S>t|t=w@#J {p2BF7,rN ޓ7/NDz⩪ӀcFhi(:!B4V) Ǹ׌`_{R.MKE* cnb˙Qx+ 2u©Wj\W](fgž&Ձ8F!dJWCm& UϮz?^ZEt爲4 zAFM{;f(`_s@KjƏ!JNm-4"v` ] ?yfa=*}NjDw1&0=!- `?JeZ+-r wRyE)*Uc2tsSj<D*p  cy<\RDZX KW WjaKAQ7pb͌)Y˭c60'^F BbJwXƫZ rYPW=7cK@H\Rkvpa !n-gOzRu4 j@h9 aTMQhχ'7c4doÏ͝Gƌ8_[ @%ԝa=JQ-rU$зz.԰ BN gZm??s;_- #[ Pz )茌]mu׷E[` "][n9%u $5b

ɤ6|$ݶ1DJhhP 1>ie "iWfi\@Ehy1Tvտ?ݸ5׀U(;٫Hh/s.ld9?WC'SyHvݒ.:eqXŶykdxz]L"đENÍbuA<e@eN"*9`DJC* zjt :p%yx@_'Nk*!Ccm^6.+Ю?66G"l* SuPN6Ok]sұV đq&آr׍a@{u\? aqo('YٓeA1[2ci1ȬI.uQ&s!y4+:a#@C]SBTBsnQ zOˎcCa5y…QΕ&\Cx3쟴niq`"t o" ?}mq wYzc+I1M N)$FY"qCg Fe=Bs Ϣ\#KºC> VsuNolDڣa=yoi ДLk**&K6CDARKAgfU'XSfI%ER#?Wh){!"zg4<8f0nS0arڞe+L5PH|m&I+z0JQ0@~SLt1 0Sxc$?? esgyp@pW glAtSTЎ1HMTS 6#NIڿd" H"g{x6 >Imxݯq/l`Ӝt╅<יSC,}j\B2:=N6$d&y,}F"઺{nLE^& ߵ[qMjڵE%u`a-7zs suc϶d.,{yu`~zEAjݪM9/ p]R߱YoP<&#u3ߵ` 1JmRycJED⊳FT :8[=aiYQ4a=-[ ye隫!Ï-6.} \h8x`b?d 7wq/)HlJ t߽?-աǿeN#^QBw>ٔ')8HL=Y][t_t` :Le~Ek+C [ VG n8о:8Gwf\s_E}Qy Kr'ޮz^oOC%PFAn$넶:>hi 3N4yp'Kܽv'/ Fwf1)6y8O9as;SݺXMGKwՊ hAbh#!?Dlϖ2Nؿ(vi & 1+q1{cSTC<Ĥ'x',Mc۳u"g;3_Mx0k@\'dJwwA%llW{Hܪ0Ncd=S=9=I.U?0} 1֓,#L\1t;IXv=OqHY $S=~`kY'{)bPĝ pA/u_D6iq; &McOJsT~ _/PD{\E<: 85kP/0ap7m!IɻρuՄ~eAn*\Mi5o0a.f{|^V[T'X#91|O:G8։ޘB7E9#\WLb)-!:{cB|5P : vW*1Kt1Q?%c|d}pX$q-[7&>odD݋΋Y`u3n"#S/P2ׯ}l$'*"nur~~rK|DC:&ܗD2`-Yūxߪ{v8j+,Y.7 ecW^:˺u&EoTH+]?!ʸpNU: Rѻ62fS.Ah3=}=e >\< Y[l*C0V_񊳐4B_v9y3̏۟H5;pT 8 &!?UXJ߭eTZ p4sMpQu #MM;q2- ͅo?(ENINfR~mڥ9LBM~۠2AFA2-K˘[#W?|Py[E}6mҙP udjݸa++مi#5`@Bq(lim鯁*)ܮYam*VZ Z» ,TRV1-iM۩9#v!#Lhc H-R&}^ϱcBNE k6w qeBKEN g ;峈`j˺>^wJEF3}џ!|!]zA-33I_>sӞUx♳Qp^d-YF=Y`5TkY|î(^Ӡz 6}]N"tWeiiVy5/A=a}do"fiet з@~M}#{'(,ThSe P#%J\yJ &Q`[@}}!vYsm: .ZD^^9:WjjE|}C/x?㡣=eiL66Mƭ՜arZ$r9E&kz;.VZxKΑ[C1pjzx]vϏ;o0*eQH٢3嶨Yw dWx C\Mk +ܴW}AQ <'eS2y۽y)IkĽH(_P!FQ-CL0 *{}Fu)IIfT&؊FLJ7|pY=vRr;8o;xJcr6yh&-A[rr 0^EOR` #c$ RPE@K}gj}.tvː.oa hŒh8z _R\?MH)wpQ,JFfOli\#-@֠M0ǝ6yPFtyIlcqΩtRK1hTYIAXMD Nb*K1w}S o:yGrd)l|}t{dYL5ӗM9()o\+XUlK7PPl-̍sPǖ3+Q{(|gmTJRq"Rs2xB秬'xyIm%=#LE,vgr/IU4[at40[e*V} +UJk3][+dt1I ħ| BYס>k~=Hl`g+Bj_[]҈EW|,q5Ȧ ̖i:Ky'ׇ3o]W-9s:[hY)Լ؛MrB:(gĴ~୭=[_ZM[Ӹ7F"%~@]$VE*|6+ANyiB;ѣ2i# sqԵ- N.-4 !wAd"KVQz,3`؊Y5-".%<?ceQb8Th/M\;n)"70-Ң 79sCe 29CzV{}e1,B{XvxZ |&p οBi/;x|u,hHO6 >kc'Jjex2[ g8x89>VXtv jbٙT9d>sw!kT ȹ]q!AgO^cPJ>)EHWP DߗIM@/^3 ߸ÏA}w<frȐiX \}8l^TMdɡהrg޻D=ԏ!αG`]$BfW*Y[0T՟յJT#O\4T"bMHk&3 qQ̈́(n)C< v|(Q!TF eIuF?_3YjFwb늅jfi  ULJL֪v6e\e:3Y˸틣gPmf&@—Շ\jR$ 5=!)3տ%54Đ23]L~6$d#X0=m0G mM͐k ِiw%XXHRGqTB}a*PJBiԌBq,Z[( Cq4Y.J{n(804 (.jЬ:"){ww Ko1Q0Hԅv5g=,5!$\PXԣ98I\~0>)j˹fR+^OkJiJg=tF1{f\Ѐru殮I-6&6Yܼ_v 4 uʬmk4R$D7æ3ojLGq' 镃w`"M{#PU20^tDŇҀF^q <ShtǍ3eib`ϓ}IV#v9$&L>0)yڑe! J$yb]hYv$}toz!os}s% w$Fsҫ0uJcC5Ғ~>w9붾 JuC:T拪?A { h>9s<3[=b~)'c.ф½TO|`dLyMfu7SG>ZiUv[ +I|OiCQ's&{B#fsڗ3k&enC\4$@ C& j>AtQd>DxY`)6 rr8X\؍*79USV{KU.%xayLee=]xtYZǺBŇ2POhv`È MyRR*i eyM̦!f `Xv~*SR%,YJ:jmզ\jn, F1ek&1wgS2%,C)!>HeT t`LJZo簀Wr#6ѐ>킾r/dNw0Wj{8u H~efG̈́15-bFtx|Q+򍰽˶ ƫr~ RC([T-Lb _@U%&9>^Ӑp1]^L0@2%*v1A40pVgdX`ME i=e/{XLrr!}x=vqF}׷9!P9i4 3zRS>[9U,.A`Lk~祠Ȋl6YPesmO&QUnQtȕ ΓiW+QJ# ZwX|\1=kO<.P:l={ MfcXiz[ FH(VU$HA 9w<@BɈ LrsuzSaOǥ|3ӭڦJ酜Y0[dK}ҫGYk~d-F>Xud5oE,7dlR;DRA#,><M({Adžh9EؚrMs2643 {\P]%+evazuos흷#I"< ]$ H;QښϽM&Ӣο BJG2hS6uQJk>@2rokjd$ ͊)`W[Jfa{Wѱ̸IO15me' ira aBJX6y&>.8 lU5.Q6M[(O\*!ۥr>05N"V}}ݢHREns?q$Hsڞ2 ^HP9~ D)u^Vy k',aT!638W7pwU{M_ׁy~`)XcOl"]ʾHG5vɬ40%륛TVrPNF5bt7uDfݿŹ#Ɠc[ס;!i#uN2wr $:Ȍ.')$2F}7&E7"*U6maFrSTaNr|V0"U(X/Cl҉PT2 *!kziS% y,wϵS0!I`

1?Xf2} XTQ6Ur0r?1ĭj'i $*%Br%i/oP3;LM! ek =u\J8&OREf&id]&׊x@@0_aӇg@icL5oxv v%˻>!\yBH 晴-idT5` Ō.J~E7*qajrɱ܂i.7iS+)YnnTKdž;ڝִ͔pY b qמjsLP䔄TƤ^dh d П\GJ)Ϙ- 2:=TZS3P=bn5"5XցY4 l%P4&o?{o 泵0^Xb dHS5ziw*50.rwg7ra!Z'(s\OVC4NFFZSS0nں[!߀/VַEWG~AX>.LҮXuH"'ĠMl&=Đz["S=!h+NBxڴ& YF;UӪG8 :DFE1r`f?D' ) ͱL"_0ʋIR_&G䘈&'!2|rlIay`_]裏uexv!}=mXw34GQⷜ%!2^9br~i~٢;Y$tHkFdpJeU '-?[l!yih(h^,$ihXS_N+" %XN  TYo_; _t2HX`(kjCW.R+/6*R4*cIl-dF5wTu~SlFP$U j&={ ̊j7m^u[<؊rGbRh!UL&$>ݩin~ÏΐKKW!vLQz45ii5c,6@9 fӳv@ EqRݪWIPdW_0 #wGǽ#< !e;3 K47: "VmFvq!U.`LFE< e+ËXs_>Pg}Z8Vޖ _"hވ4O,iX1Bk-G!Wq(=%WȪ /JO4k'e UTդJMTE/{+3*/oVhy>>x b=d( ސk$~ ;*mK`c&Q`q+2$]4 ; euX=\OͯwL2f L4dAJNhkŒrRWipd>\N:m*rxݬ1sp(OtRwOS}KJgFlLGĥ\F6oovm>Y?W2<L҄ડrZ ^^-WF[9Y eTY vU {Tn0~6A 3/WEVgOX$a*dZ5kg`_ʥߕ#sIW2:yǷTI=/m:4YXD,emSQeLV01 4CS=瓋zօY$kpıc5A]^@cH=EzV+xUC* W;|vdA/S?Ȍw>1 -֬oASuP%9QY݂bJm7Q2=x+nֲS=qSPҹ'"lE欖G@WF@˓!FDA?c~Ge#7P@/BRXb^tbcܳ^`@fZb:Nk4.Q&\P([mހ T/+ ~1Fx7g_m~BXC0edHQ;Bh'O~|gp1~=[0vJ[˩ǝ& eb2hV.2_,'z5_]fvh` ՞Yr"dZJ*kZTt!%yf5_[ęLE-]+>J1Pw; ׮j`0hLFWd>7dMb0J$1B0J' oQ̧$gcJ?c,2WPYPu\׾ ]Pq9Ǝ'z LQn~7z5ރ2M1CQӁYq\9&$Eڻh"K11qr؀<,vUGscsb_Nhi!dM=1,P'l(ΡOev9U?BC}8֎_)2  Ǝ? >V%HޕlJB`2OGu p4H;?CZ]m(oR6늀ÉJp}k,<΃hͲ3G E| DDs!8/Ȇs%9,C!y8S'l]?Q,^޹'cyWt(EeT ]Uc)(7k$k ZY*h]H/B)zr͎p.nyxXp Œ8oZ5nA)zv\ל}TGwXô,Wt#Uȯ2|_Pr~|IG -eNNFgʲ!."Raa= {}ޯ vf`IbFi]x! IJH?Տ`/xW$OJҔ$*P]ִ}xQOU{ilWǾw&v69ik1vÚ&rR{ ܿIQ*hMe/G}{;%->)R'( H]_\ފ^z =S}w(RM!}`=ZX3?$: W0uX8[g4~@3$܈IC{+R."^eگ@V,B%oc _(=(=RՍUj,?M$vqCb_ALӕW·y6nշv7ڶiEK&ei??iPHbɻoC LsIŒ"ef#B3M#|'n q4$Uvmzl??|-"VNPOB9oVҟ,N[J\>^xz3ɀ=Sg™X.êVVڥ݀ER1Km1= I](lωzlK$+h݅`1"b%6gG@E{ue Re+q&Z 8p w`?9i)@%k,0˟Iy}9xd 9A{X-x|c F,'^AzՉ5# dec`&!3.bD_.r h& sD&nV>8pS,SW >.C,OW䔢_$TiSnw:xȳRU >Mnlc_~/CRE⨞?'HCXM +#y/?_4{6XDt3PLJ vkAdvf4+ e?!LϒĚ"<±þo1]|f!=tn!TԷ/~RPz܊Zx$wr62Sze|5:ɫ/Te :dihKCrh1 gi318&lM FBj+b/U8GK-E0,Wj>֨Ǫ|N@"ǜ`d5C9x39$Y`\|P: HWm=P#}z$yWL N 6ϼRu\f][0F6's[0k!2O}pŨTR* Ɵ25vRs0<ܓ\DuvUL!;vƲ Ds['h'oؾl(=w5(R{/ji 9ތXTvX&Y0nEeb?ƗՄhX4 bN;-Yϥ:h/@mu[*c|_~R Xl쏆W]jir'0s*(C[Lns٬R}eqrQ٦.30wz p:yɩM0Q5dG@2"{b v" |I # sX4}"m~<&X:b^EsNJŃ#cgsS,ndX}ۦL5ʭ.?t_8nNw;(dW~bmlL4[4 ,WLQ^@w@0j6zx["#Ɯ a)|j㣺9OMfޫM1<]7|.x6G;kL$ŘDSh!-9k-E:g Q<N J4K{{xB֊ qՠSh3Aw7JŲLJ$}l k U*&#jJMScak̜:*I$63,-wSqT JO5m4Ks;ϒ&za豩c(e6Ңe9EJl<ĐN3s'6Op"` RuՐ{9g+V;s1(ލHL^*e_o5e2S%F{ r/{ß}0st e!dJ3Q'է@#y<0 ) ዮ ƒ!ޚƁ$W;;゘BgJ@>̀Rj6o\aKF|~ZOjR twUM+'{>agF; ۓ3m)Hz8w=_-9JɨPO)*#*bϤIxɈr90x; BE|1}/="&XPT+PMD|ăF3|?AWjvO2* k%8-kщV6q_~^L߬[/7~6;i |qA*HV@; IqjZx"=T.25'cJ6jW͝H_h kug&!`sg/" Xv xTKva/k|Ԛ)*ű(s/FQVQE唨clȶd0GT'\pF}]p-+UMUNr3Na?wA2x !TҜj34x 2B?]X zu@nsmT#re.Jh4i;faj*a6.htōKfO0EBNd"N\QP};+Z% aL),}+%$~,1^hBc&6Xy,ʳ<ą]meer9:⊟<qr`8R"MetLZ-+zh8Z/un ш 2F<ʒjuHQFaڹnǤyT^gԎiG%D_yc7؎E5e7R>˾lnYӫ1_31;=m"!QVKs-uf Cн,S)<,eҝr } EHWo2XTʪ&2lG7=8w2%}p>x9.ET~BkT֠֟\8T*P\Efs g߫覘Mk"bI;Κ:O@[bWlSO&W(gi,FoK7k}q#qcbBC%Abxk 3]p#E_&_$)uuRJ簊=b;k R @Z[wek:`COG,Mr^xW h$$\9mqck9HQFM>~s؛]"`S~A#U \-&v!^.`=e;b2$Co| zJQN$#c%Grro*mDmd¶>c,ht2-bg}kQrVxGh nX,+\{k؋D4?1؊"]6z^k#IO mj47SؒP9'%RA?R#; `@{$̄u'|o|W0cʚ)YOC=s `CKXXw6OdWYC3bM 5=T$QIJIG mT)E_(9K,07J*2 P-F4EKՕ|imRL6dbil\a̘d"$!bji>/8`_/"Q^ NWh;l:t?jH*/GDmS8倓g鰾`l&q=:x%r@mIKZqS_^%+OșX PnDx!{ Oa*Z@Ymu!aӿtW0C> K~ 2y.wu`#WWPSlݬw>gH3!ؾh!.sY'[W}:uPE gy9dT+z[$M] 6Xv[F'!V|XA)H SI;ڠ_1ld]Jw`'hvǡ8f\5[h#wchTCYmJ,I 'ߪw0>봞Ap+BY9&kv=odo#Öh?C3.. , 񺡪aSL%"av6>GwpiٰS2qYMO ~m$Qv!ROQuآ +/qN~7MQE]4kS =Fo9x;'pHUj8iy/]_5L4hwjr@xm9mTCP X+)XZ"I$k? 5F5ibX JWwVt/w cNCLMD"w]-Ȝ Wʠ뉕nz?c, ʁ>hyuYy^/jgqu)ΦߞJJ\R6oRєr1 4RAwU!#DiAsٯH&︩teÈ)qo]^@Xр>P50cInk@hUTdS@'DvݰPpJs>s`Qo\1$|;Dա!vPГ_|>?9pGk\SQ=MŊagG>tQp QHsvmF9w8P9r+A"%' nȚT5ojJuA7  Kxu+c"ٵ\fpUg {bFXJ+S*A ѮBdՈ&,XcYPVmf 4`U`rW%~9T8n'O(cڎMVcu2-C;lڐ |o# 7 E7.!U K4$?Qn2u u g4&,G נ 9> )H2p_y5yK[4K8rwf~^(<=pr]_OqZkYHJi門\ѨЃ T\;|di78Qd 94@*xKЎf76n=YҶD^Xvz|v45"OU"fXp*T~P*6{ A- ;ÿr'b)=@2´xkPdKNz"'C-qj)&6wq@!~[T dT;3zC:p{:عYσvGㅈq\*M:*4-+s3bEq9؀ⱻtP[%OpU^ :I1\,_kQUKԙ1" V128]KF؅J"A"쒳aהzW2?raӱCt}}c}pEV}YM\Pnׂ4"7nf&uulZ4 8,+Uf>tI0ĶPMN+4h'Uj Zgd2"&jam=7{́zy*!o:gD7RS _:'LaRMn9gV_whoCCDףxF:>[2h`MK%Z;<{gKʘ^ h]SUhK\({.S0o$N=\?GO\:U1]JTց$3dm_ ߗB7:(\3Ƞ2LꦛԿD閎w /$_]tV~/(B /)@?1fw@+[ E 6KS)4ƓlV|~Q*>u4# W"9BeO)P;OvىWR8I4qX) )0GY6=yI71qO#ƇW{5DfDO9nѐ e¥=u$kHkǎ\w>݊yOynR%t{O}M;{&&mbv)͋h:]x(RKgLOѯy[럵;51;)BЌ'-'cG o(;Qə0vG[ER(_]D~lǚ@*hM\mCV49`uwu}_bk2>Z<_;2gz1Vw>;8YsU]rXKA#.聙(B'.epH"Rٯ-A\ZJ6~Xr@쫣;TO.TЈ#a͓#%#.bARLܔɕ@Y’O"FLƳ\^m;ZG4,,сWUK%Eyp9@YOo{DCmulKWg^vˇ[ 02oou']H{Py#v g NZ(1ճ[L@vO7ߧb۱>Rz7ͽ <ʹDZoc4hԅsh/!=0xIށTQԶ4aݮ+OX7HbdANٹ|>܈ noyYl_3"g+G[*l2u-WiCF%A:~*0]m1L8 @< ?pƩ֮%0e9iNT7zyS*Tʎ)U!AL2x~IўlzD)ﲨ1a-~ݒ8q75=eHju9v嗩vpܹ&(u=U8rH|uKC< nGM'M4\>n)Ouuy{ͺfٚIYzh0G%>nϏ!K!_`.箧s&[r1 Ի{C_Lh}Xfs=THn ai,YI ,s`H޴2{F_k8%.2MC] z;FmkFd Pyt4iך`?MwSIA*_પ\gjKIvʅƩ#LoiGN 4e b Cwv$"Uuݭl!EX}qf0='Dlmwzi+)pJi{0 #&kJ,CeD-PPkq< ɹRq,P ,w-є /==ڮݛdW:&Ґ ~Qer?I E;j!| UEQ?vqԝ#gHE_P r[~>۸_) +V['@jkVcm/\},Afy=N&Fhw'y]dr{x/vf;yȭ"u|ټS9?hޝv'alƚ5 [KyѢX @W"BTs/NyӬS iqH1q?ogj֜pPĦmҙ'&QͯGMpQޕr_e: _ rF*p4GtQUѹ̳ft\T!;)9VdDrN?Bw|eTyLrO{/^U~5gK,_nپKjYdͮTҶm$9Lcf|%B DWB%4pO\?xhUJ v4D?gjv>.Fœ{*!|z|4Wk-"bkL}!Q0AO74FTT)C6͙+FYiGmNk,S+72 +$xL+x< x[ ER?Cy{}|z͊y`ɰYCC;AI]lAݵJ/Z0? hLgS*DŜj^ot 7jC$+g1:OP;0,mveʖ;jra_;8] G'' [-dAHO.]:&[fW%DCv1ZkIRH牃ւa2ȞDtӂ[vn[^„?=& $[ j{!ۨ-pkTJԧX!9/&BF@;Ќ#*5$ȜNU\r* D@ݫll4!J1J Imo`8A0:S^xw2@3ϊbU?i7!]DҖ{4Pg" Jazt eCf-$MIK otH-$pǙ]kQoVL9yG6ϬnLTC:*X/?I^UOa`ovC*D"k<6>H})5ziTV j=cV_,?߇c$R˪`YwVd0ޯ8l~RGCb۰[{3(Æj,X>^k{X7إE8Xo#캠͒2Z fyF0߳ "No@JݽeKG!4" BN!E j$'o "pf*'![L~=\>1^HU+6zȭ•uGeӟm3Of4e+0j)4t@NVf`v'ƆR! a'e=[ki| @Kƚ%WeHqi?n73eMs` H՛a~EoDN0MXH {&THYRj/Qx g$"< hakے]H׿Y ,Kf#{}oNiRk%KBKv8)EPZ{OY&?0$eeio%$\5B6pC+E4g(7鄴'7RŊ^+懣6oӅؑݶe^Un N7\rc5j{@#3' #@$]&&ȕz+; {|ę۰- K\ ƨMK;E-鳭eq>49;:C-53LU\d:Dlx?iP=δpbJ'SXYfm {3uC4<Ν?WO"9@3@0W":56NtdvKe0ہI|O$1*c `/C(g#MU:)K[+@6Em ײ?Њp&*E|X _ ƖT G<#ڐ`5Ѩ9oNWvΘyFGX?2W5}â;Ťԛ{|*mUgU26;Lw$qV^]sJYtڈگ2! e+9ڈN)Q6tU@2Sep#y m>2:˫7`o.HئԡozaeMqio(c5\dv[<಑=w J @*a|Ƅɲ/e!&<݄/-P ѱZՉsMJo=JU7Y)V,YUIt1a^j6*e䨅F Wx Ϊ?hy9q&Uժ]n2?2 pxqͫp`ʦr՝PN89qkmPWv  ގ}α&0j֡Ȓo^dxe(LQ+EO7ݳth>70rSYz1~=o &r;ƺUv=dXX[:37-wUOg2ST ;ʄu;޴n5=A&Ziv΢v}r=|ϩ'HGGPv:< (P?6Xǘ&tmm:iTy;:x>V5،Dӿќ8 FL`@: LJ /GLUR׻Q6[ = ukm<5(op"EvDf\Ṥ^%u274_i,CAB9>~ZdD)iC^p%z![.z2t 7$R[2C/uQ[h\["Ԑbpprm3w+6yj VJi~KgfL?lLI- .Q_!s +i=VMuB4j#.&hKWr2ʍecHSFH5>zt|Q AK%1388]t*6]o y,Mz E]_&sX\CnhyMA J2:`ӊ CU"?=e|6TK~!^&i?'N/Rg@ #&;TJo>k163[kvj8'\)VS-pѶ2q|7L]]<#Cn:F*ʒrM TcgT-v`DDBۄQc&}i=gv,nt/ n5<*"Z5[.bm,^r~Q؂7OOk5]ۥtTJG~t>h`u]XVS &9P} %4a+ IÀƆu\NEe.bGԗ/qcpfdwo\i.kAE&N_S9|qگ> 2ďHS̽1$CR"q4bjVX9E1UYdKuYjltzF,h"GkAo橚dt/n--IwTWX\ y:rHKQIq̒E"H^3Lp{K,$FjlրcY*OA7Owd@^"t_$ /J+OX!X gmHfD.bcG$L[2z ^i]LkHW~9r\~?5n%YG[' j=+,>'ANǢVWl{(B]P>;esлI*ڡ0Zz'Zc$=mN~+MTV:BuﮡX+8z}]&dl]֙u>8 3' |d{#*^,5zU8jZ{cpZC 3yR;q`,lR4sŕwrg4 gډjLh%Ѻ?],n}2"WaD [ϋb a4]@|"c ^ᔾQfZVIp׋W.D@=ܡXw{C488E#꛵1?MWjvǫfaªCH=Em{ɭ<]߰{?GĨ5?bnp^Ƙ?DjOv#P|Op!F@+WddfqߠRt d\>#9SU #ubVƲBI>lH.8sKdS jqd/hҏa1R6ҜM*j| QN`iqɐ&ㄐY] >o;bdv8ksɗi&[Iwsxa0ܵ٤W}2tWӑz@!kiuGmLҳt2C34IVN5 `yCt;73@ &^unjFg9hynWEňmY?\ˏ=)7"UnLSǰulnȼL|HN]w*Zz"ky냮)*Qp;Ic|f[,d PBM@J;{eU0c.\rLڐKsM;w^lᓚoI|͓=󁓳2Bsfz˵`DkѓCQn bca]ad@V>F}y I*R7gZ^%|G <h1}mj20- 1#{7L-@*= E3: vXfP<-O#Kmt"1t;p3(G銑?\@J_ɠ`W0tqƌS%]XsҨVJ_KHL9ż Q儋ԁ.eUUL?Q#xE6Ų1f;L)_W'1(=ؘ#|O (aݘ|͜vJ $}H e݌رv|9n& zV$#b!3ifJ FCc J6@24[-WW zk}dm>ϑ$X%F/o*gzZ}cwH{Ԃz.Lj#ǑMo~5F.Rɫ۴ec'Ei80EXlt nQ,5Mh:ɿh%az] $OzeuXs={c)_g i@2^JejR}ug} y+>_n OG Y186?ߣ'խH.]Z:j"H>hi &G/iƁp7~+Ȳn-ɟϠ ᰸6&FFă0f6rd7sښj9@]<7e_cJ1cLFEF&dXe11 =erԡ$k ]nC~0cf1b+Mb"=/p&?{Q} T-uQ r0u ta ~e{6O>+!=WGX*yG6?]M2ҘLt\vİ݃ I^ t:yj2٦Uv+Wu7we 0 .'.ЂT4졫 Vq[]~ƕ u!濬A*-8m\΢eG uuk{G \0\OUV342{7}aQʑ'JV]`_(.--ĺMg-.3ot+2zʕTm E.+D86̣2P#^^3bf*+Ӓ-]F֪[p,n:rb@OFp x0Dzp<>MSP3Pר!X 0khd.4j5}`Q Ӟ M £\1c["Klhm{Gu3ec W#-'R6SH=q4 Co`뭗2'4O Ȉ"tEQR|]leV5MP]I|z \UӛQGtw1`X yݔ% ۯ$]`%_B@b oPx=}S\dկ.#1ɻ{"1#WVg͏fJ#ڕ!vgB2dФF5/fkZwDžQLMn{y)X8ɂ8[>c޶M;r\#: qkܲwQ*~vZ?*^KUqcMP}1H :}14gn_Ҥ[n/vH/Z9Tێث()gff%|xoo8g0k+Km斋+S@; KIG…d5_|a(ŋ{ qm> =)N&`y\Yau{0逗6g2,gfHCl}N=A`>/mX@d%ea!HA%cK1Q@l!ک7HSM|ekFcnD燠xGϔ:cGkN;B}GCb#by`,H[p%6 }9{>4Dמx:)= iS,ġr?~MLbV"v" hp2痚I{-:Q,e܍9&7DiL`ðx3ҷzs 3H%_TbGS| 9 W*m ZNݕ$}}wVD\)'VH 5@hN#^M㰙&(6ޑ,FomX*;ɪ,; ,y)*vpDN4sv$x@T{f@qt^.xeĆN=ryC1D(y3t_戫 ~Mj5ǃDbPRf+~@ssH@ 'y:㬋]YK'P)֝mij7Nc.-ёnEh@7X9zǏ ::DՂ5<|pzNsog9k$9$]?xwSlC- D5UJ*pO! xH|xһL & /\g7H6 zt0doa1c |\9P@[HCQ_4&I2OBq}B` Pcsux_;O>]|P0YF1ڎ BLQOy W8ZkywTRm--uwE+b*^2S8/e!/d;& w:@ct&^ū¹kzK.P5Q+K{uhO:[PZժN9_.n}×Lk]dˋ(G0>SI=U7J:$?ع H˪B d[Z 5Pw 7xMcF;*TfQ+ ciAba:]}6q+߃@H״;=VS/T{KG*Z+_(Gۂ%AQ+.0ٸM) XW5mzaq$&5mm=ܝk|I@@)suIxA {LC \jaB9;*hJxmjitTauQ*XyDpMe~>DX*bX1eH0@5 JͯHSb`ݓ{DzuдiԵ ex-k/xQh ,F7R3" Ky=nQU|n2kn}w<x&4ւѺ-K+aSoK/ydv>R˼؝0\OKHĐW`w"[_ac7om3h9^aZkng(ޞ; o<ҩp)o3QY؃TG7Zޞޛ>qٕ ,v. qVik`Wn BƳz X]#gٺ4 ,IZ%'`[Wk ;LTY+-86YzA$giG^nBbl(}EfhUTLv )!1,kbIC/:<2?#eDWKWq K|Qg4Nt-c^ Rq]h ĤZ3Iww={˷R2iAe?D>(]ޕ"S '_#x w[E!̲tH߭T/zMCj!?3㑎ySz@rAO-,*T&OQ<"6izSfX!pG v?Vj{2H8)4V b)Zxζ;'@wϒYN"P%R-ιctqʜw=9'{ i*Ld7N`9jW _Z:k!x{Nmz&Bda!pB{[ I?~7H,f )4t6sB.=\gX~GZC|C.P4dB< .L1DZ:x5݁rE9xrYˁgYa'bvUo2ͫ˜-S)%`C Uq-?d׍#@T/_9'd rXYEڣ˜p<-g%) sIH`.HW.#}b1ލEڰg;J 2ʦ~'ZD;ʄM;iO40P`,,.sTY[REYf Uڧ\oOQ)^& 8ёyIy)JmGȌSmJo5MDŽMA}`u~g0c`v3oM͘dmW9iA,.H`*[.YC*F%d} DV%׫~j}'m&QV@ᰚѫYŌՇ(jঝT(`r}kwʪehz[>i'{-@~{z'1L,%;].S"bXf+X8NQuK9ݽҋ^ Up(xe(%۪1zt8h@S|M *WÙ=MU ͧPvl:#8A񟥆Ĩ#[JNnqpݫ(m".'s\hh(C~bI0?_bglEnBaƞrzCj$ z3iMu\i o y#+S'ChƫKX\Fd ;A \5*~6tۚnHuó[Y#+9PRژ)ou6;=eW!j^a%b;331Y&ZZYHױ 9vm}/;$?%i#9/y戢#1L|3JRґ>nn CYeލy|OhOCԖ.R53 ̊,mI(>xx^E@KRt>9ޝH}Bl߄0ƟZ`!Y6˓$~?حyjLiKju[eU-CC!DS0 CZWmJbɜb\3A%NL v&Eض&YLJ%|@:!J#; 1گ~Յ\Kn)@Qs掗BgSj_UL QIv,1FI~)J &i 5Zi?&}`1|]i1("dщC; 㿄ZA+EuLtDɉ`=k>m ;)[~SK-Ek=8< ˫Tz(PLRFlR>p ٛrHkTg 1TU \gI {qj$h9Q?TFIn )uQb|w39 拱ԵAw9*p+:9e$8fKpZ 1x|B yG#yV}/WhCVQBl sX 磁LY75A{.dԈL}Ph5[H=4B3$:eg?&'a^ڨ: Ѿ(Jx_)Vz) gFAa*.aMYa)A`hԧ%;0]n[P@&{ [9*Vic9]Û_b6Y#ͩ3ttkS"RUʆgl!yx*}Kj¥iɱ؎.P߀w˞s5“f*_hTĵ6´'|z94A:0L/&Vi1T#9M<]y"QkOeLC%U37dQK2?k4fl1bSi*fLou Eo9?p ",+F7Ed42,?}͍T#,=r2ɾhK_~'0cutDP,w`jT2$'ph٢}7pgr%g]~BB x(Ն4#)1uQA&pm:H-#UlVd$;3>S}oP%B$xIvW֠[vi~9 ݓ8h{("vc@e>b'ۤ=qKMku%۔v簃 ȱ<͗A욫7ۮOTz#N~f6Y^=vDhIXl,89DۄB_wH1 hlq1j̮ -?x4ׁ2zmN')5>k69@{R@:N5Oݸ!%OoSoJ؈k"0G镺m d0nE:A Mz{oq b̤(4e{a޸0ٕ4|!PSd{#QQuQ tj.vHb>`?TB!)/ Ne+vᡌV+6WFEo1"RN#ã'c./yRlCHq"s#oڝjp;sBF$"}HѺ)nYb9Z"¤nbC)z5@iulwHxj:1@taaX.K"sm]_Iw"Fd6&@O[yh*Rn7Mt;_lLCcl;Ǽ8022#eL"7l[/mǘD' Mc{':APU[kU|Zc|0HoI$KGWJ>RdvGym5&Dj7WƐڙz[FufTuFaoԚp}J=a>fZI6&U鼨k*S0BX)ÿ v^1*,f~dwde_w!MZ179Z; `4qJ&m_ ,'^!I*zbʂbp_]gP,Ra"sM׀6ozBnI h *L$'9\y$9>N(JҵVfM&:rN5?L8P'r o#c&qNL1̟' r#0G//au:@\ ߚgΉx=Sw ѺzSXn[N}CkpP[>GErų^57قT8*Se,Ɗ{M/`[%K]ϔ1>˹P!!?eS0=n*Ku4i\IJ* P]>1BƩeYx;CK3}hSMДqd~I ".&f!HA/$G0P'BKP`vcدiIIm5ԸfehhxQHS׬1bᱽ1k@3'wW8?cnNC8nmLz7@lK2e{]h!Dw`zu/ )խ+XVǂګ{WTa:onZ] J&QaM& A!G.,XXiwɼHY ǧߣ]1yaS5lgP'oN8̩RE k啲3rЊ`!6*G.Wu қ23kB,U}L"G೤ ;?ޔ/_NҾ^Ԓp6-B%s+sY*%Q⏵Co$hx,+ņ/u{hl7|Kd'JM(Ppݶ=} *m?R vQ+`_ˣ "tVß~܃>hBn{J!RT[4#L#; ~sPwQPIX6Q3@Q{G+jv Ɯ۽f|y/^/=ӪyDx?^([ץ^YVPIpDtY(H4ax|eLQbΊQ}HԾd7A4?< 9J.HDxqOגvc#n4`#L-Vf0K CzI"нTьndž^#qx&ʨ67~O2[C$#ޘֵFcO\nGVhtR6k;5%kfj_53_$&Ei橛üMItyGeg4f9ئğɋ)kdvKRD9cRKD7\m(as+a*傤#uo:gzݪ[RSЎ@s쨏"c ut+. hMFD&b,WV6D ē"M9 )jmT1LDE⭌(_m)xͣ e4ߛJ;hV0ƃa<5Kq >L?8Je2 P^ :V8Xj`~(vhV` Am=\^ȟ`Y'{}((}q6 EiR 4]1~xIp3Oh\ҧY* @(AK3BO>G >CRYzRyzݧڑ;``kz5̚S5џW) mƧ:,R-UDm ʃ_Nja)zndK#-sffxLd:ҽ@1;eaV6;{9D+>^n4|aչ?T /a7c.\1eywʞ|K Ufik4V,[\x2@ĊvfvV,ts%feFY~:m[RnTpZfrԁ{5FB(M0w<[uERUq\nqeE&/0?XJ@Cqh1J F,(Dcǃb~Af_7ImʣMpV82qDWQ{/wDoe HG}]ybt:Go=ǃShX,lˎ]7&abC /j!ItE$/؅wg8ylPm"a#go*rLyhߘR]wmMj+@l6O\('tԆ&lyL>JUD)6N dn3^",S JrP7Lyw穨*+}ĸ;t + hCJ']~.3-WLe'[u\8V5poYTècE{2@&z*e*߁ 5Aqjg#PM8}鷷a9P@s"B]v" /eE6|\ oIޣ=j#IGl~҂}g05zYxgy`Y.Y=MSpJ]n 2}l}qM(SF )(A¯kUs'@'t*бU XIUvYJ*P^ZQ\5œgb EWPY1GY%8| k_9v%6@LGa̸+w-*|ʭJL +B6b4?;jdi/~`$kڞtc ~Ų}XN$l[9!jfݜE ʧO{˺ݼiS YZvْ&S2Q&`N>pI3dco6T5S =7c/H0 .^'yCytu3H[3ھHlE1⑭tDz_Lܫ])qb jmJ%;G"ѱaqEqpy 6XǐbmGcoЌ$ˋFvknf +픽&-q)@6ϸIE pRʩ(i@٣V7\.h.տ:=0YVB&* f){C%VcLue'18^ew}H[{p|Z*t{&el٫C2y|(O(rZ+OqBJrj5/u O.- x0u<8R8"ˇP^gMG>uc:c;G{WHcZ/4~V}iGOPd6}.k^4%ce<0@_˗9th+fJ}T'TMI 5]lvۑ__vE͋DRE14g8PbdAG@(8I4*8{q& Sb~ϙ};S9U)Ы2p" w'c{b+Sqft[,A{A0u1#ͺw~ŅZiE#mxLVf- tz25@nd+-Ϙk5I`', )ϫYx},]42 1'JX!O!d8 騆^P΅]oz,vi p~j}M]#䞇l%m L!U/ 94SH{$ \-#4LcH]tX':qq+m Ž`$(pal_6>)Qi^='m1Vo<WBO$w6f#[ 7͌f7 4(\yBG31*v_008&ֽJXiu8le+ɅM5ïhqDy(ItܦdMm lG@-&yB\<+PF^PXn6[1FJt0mQL~CܕYΓp~KrO.iTKE2*غ9:GAC m~PbҩLWWw:l &k=6~.:`5+7C& 9$N>+Sx0<]5G=l+n-1^.-'OgSwǞnY3/_z : +Ϝ{IaG\%􇛵 ) 1I@G_Xh̷)GѲ;k/|PO%=!Bmk:/2I87Ç+CN&0] n_E#gn1I@U(b+I>>T>}̰82umESsy?~ 8r#^2sNDly-9VWb!&h]u~Jvц P q$В30#_( ^6}̮~D*1l3wb2aRm`PtjTzVWnLvEJW@fR&3\HN=H6+Q+RR]#p_¬6|7MA}X|3{T .k73AjCoM>>lJY}dElƊbyV~|OxF͸wmy^}N6gй2B]"ޔ|?Vb!!DLv"L> dgdfJ(?Inq_XM;. s ^9'@< @Ů*unf9Tny.Ghb$\ٍA ,R)"kqoj6/ ^)p[*(J8dDqyĝ!V$h:N4Gm>ՁA..rs2L<;9}$j8@P ZG5&ЯdR/ak*Efi@{W vB-9$t$­_J*') ajC`ZY;<-s9c"q ?Rk1=|6eI).z1vJT%v-8G.vkw6ۋu&ޞ &B %Q$&-Y'}lο)|r /ÍG%G<ƚ%[T1"@n kQo9 @g%ek3hw0PZH'`1؈"P}2DP'P{bZ}Wre EB`N2Y޹ /NO|:3]DIW& `4VtعA/ '7܊[1|^.Ahr_''(v DFDJSչ'ږgK|W~9^ I+zrLٔ-豍4P ^ْ[&ޯa1o_N;!Pxdre% y^*3lWpKq\}Xݴ쭞*W޶ zb^-gi[\r P!rz池 [o,IIuN)RD^PzD/3^?I=M.bВS$-oLLcY 8ɉKe5*lx.~2Gc{&+AgFup̷ZeuZ*Aݣɻ1$z˟zEE7eU+ʒcIZ]8a\/ /.%<6E4硬l\f*no!]˪%ᮐ z DnۜCXjwhwCmx(4yO؏EPኯpc fDg~[bh hW^ҽ*ǩ1X q@جR%Ud8Qũ gfjɳ IA*v0ը0#gtq!z2m!ϲ*ǧ@Siz>hdz\vMR|~e:PW1¶mrÉ߂ xr(P3SZ+jwWff323.'LqҎ^򏾃r3^u=^q0ʸ q<S+/rȿ1кP묾Ӱ)EWӊH0 >.fQ@?ښ$bQ^m|qI5'T>'6:NG meɉ}0k2LCn]2wƟhihϢ̶]DoRfB,wp!j_ ~V66 'CC6G(MtQ=w~ܟdxrR01Z< ]~0(j:o9kA0PDTmX|냸+~?\u]kGv-pƦẌHxi  pjCb_l;>Q} 3 }ӝ?ewPGlUέ/#3Rn)P[?h x.rv6# f rR'otOK @6lUR#c+8 ce鵱J<y 'S1ADSzdMQE=xuW/ s,U;^xVZm??;xnSG5rB1u&^`p^7AԸ[(W{f9u ~u*w+sxXǶA=iE1wjNH3$"W32[̷=1ܞÔX{3})J;%‡OzYãC2fx}f0 &ƣ* zWZ[.ژz.aO #=$t߬m4?ǔ{IߘRj#Xz*EfL8=/K PB re|\0hpTylE"%Baq'kGmZ"^ˁ.V/@ v&o2 F#R.UZ-&wk~Ɔ30ĺd5٪ gb!Uj$ ,?_"Fbw7!Sg_P81 =8#YպU="u6QL WVj O)0C(&p5cBN 9q c$+IGH/%3h ;I^`D'[gQͽ6Y¢.({ZcZ菽_:O/htͲ54Pߺ9c }ﰨҗ?ՠ*ڶ #( ܎@@zE؇C<,6I^r ZeΕ3]vhRБbU\J&ӱQˆzew+1\ iE8U 7LBFa ϭQFs@ɥ#ZmOi 0~c&?0Z?uA.k!c۩>SV8[iaW)8UWծgN2 ҈JDEttb*|S>VwUD{E|,P鞹q'va` {nB|ͺv7?K5IdS^o+Hq@?y^?غdd\LW$ǁއVjz~]"tW>$@򹁆 Y(T@WBxϳ I:BV<z 'T1ёՂl``AN : Day+̅:œJ6nNbʟ1뉯0E\x m)q sNQE~A~U唳b רKhNGJiF < E!ohu$뤜O߰%RQ <5Rdh q:\2_8-j4ԣ^aW+Q]/#`!"P+q1\ii7:7f ~67=y.r8,Y3m˗!DAa!\hu~|P7l]REtO>PK.?%]Gs~83;M+2y]m<9_N y,z<^§JLVVS`ea7`*OhAL" W3^ H4Mط-K7/TPpQ!ӺX=8`]sI!lҲs?eިhlDPf% =_#LD?*FUe\[t]fA.>X(!b,n—9kΊJ+#`־yȜW ^>~R`Z͈Q >Dj7i7Ҡ"MmrJ J/+[O&T } 枹z MD[YL$,b!rd0=ax21]e^h:4e¨|2D`Ya6}(JgIxa\ҧ {'/HM;%N!#xb\P0 \\>B׬qLbQ~| z fe>p/Au#׼:@8gc9wwK?DV60drWGkYdAc.[4,TK|ևwbd&,ܷ`ן"Dюl;֡hf-xL+uߍidx #Ǔ+G9@ k؇jM G-dQ&YYVxR_Z=B5.T_5I}nr` u|WjMŁuߴW\BIm#Jh M1`ӌqoVU#: \yLnVbҶ ~ydxg)/wR, 2U23^I\"\R&_\CDN =/aI$*uAUJzow4+uY% dUH~ аMHd%ܚz/8#~67%EURyNuQإ/v'e2D1* rpzEGe&h]F#|4$ؗt?Y .{6TU Vk-o ڋP|o/_2&DbwDtfj`@1fX\h"XlHcg8E݈q-#U=q\悏m$%GmߡzZe7r}93h£קv0mNmr\d`M,"N8@%ݎO?F.@j"2]\xhV2s5[NS LK?hm/ѐ1"PYWp:.nӻaCײǷ%qpg{s"f,WV4ZFpH[ X `(YUS,;SnP5%bظ/m)^jĨF<{wYU~9^cZ乓۠(SDlL m;@Y j&i`?@qXa8Md)[:*ZsljVV />>׽)F,v2jomHMo{:fol&H[= ~ Eu9 !m%8=qїĺ譝s5eM'C73rn}Nf0Vo 46ّ, Ex!g| fGxhgoT;8qF\q$(m(b0t`O)WRdN1kҳqNYqcqޘWT"j7>A,_>Z=X85^M{I"HEj{Չݯu%EbSO`a^N( Cጳ|t-}J{A@z#-L{fĠ/VH?$$Ŋ31L7$a;X:d[ӧdܯ(W=h y #r$e Pw8/rUAq {rWkП6D6TԆw%ZWقȢi!_P(3eNK-Y4[֫ؾ;:f`KB̑S }FR,O$ ϭ~Zf ΤӲ%;,"ĺl49`^ 'h^#5]i0HƿX(b`Y놂!hqЀR]_9Gi笜0B irxáFѵrX#5vA3R {K35& ._CS,Рy*œxISrqJ_|NdIӦlWJqkMֲ,X~H;K0'=,aSES`9Թ9Qks0wri V"޸·Q H"b 93 o٩lX p"@nRJϧT=Wf{ T.(yrh^CTWjRT \nڴigՠVD#D__M/ZXh/UoM~(CB\IjCLJٗep,Ka+5؄ H@l AgQDLmaڪ]Z+\E}u>ȵB-T![v>wf&]kޞ5?:}uR\:h} ӫ e7Gh$i`B~ L@|‰ #D))b Y_3*fnG|ք8k &miB8#+3`Hv}ЯoĚ#L|tc_]^ vO1`r`Aנ;/y#QiU:Nm5-'v^LzGaTE翿vŶL/qyRS 1Qg\{F(.7  =6`i4 lXLU dF_{mD8]ocD)@6Apo& `S؞js[`#{JTYRNZ}F% J\.6j9uAޔ̈́uwև hc"cƻK2;}b7:ZX9\%!7Im|H3RRV}"{Sh^;(4ݧ vCWe#y>>! !|ה}3A\ŹC;M}^rgZX0sQr~xx^gV4r de-VeƀjaDa—31䒯SY9-Qc%Bb> fCflݠ,.+ഞր+`f5K>Knk;puLl7vK"ەT?U|I0&*% wSdVKJ=洘Ǔ6dzMnU^):8@gޠ0K`d)LIq%v: _ؓVY?_!l{mԬ^Dw)vmq&!Ǭ!<]RW{]ծ4Jc.,9/eJTU6Yӟ`5 |[{ny}@Nm$<,Yd@-gɦI%ewxRinhG%޺ODёn̝,ЃI]6Bه`fPP".m;$"|z9K& `c)48)hS)9Zl1 ڠH7 rwX]E4+,՘\c2 ⽟Vu CDwT%BFEpa>0&[m%G-)UY 2O=7tgA}yp'xiSܢ̮3ӠsMњ|đ(tQǫ 7>h@il@ʯ g3DHQD͞IaB|qܤN~UnU ETL5A}QՑ3eBVrMn[)΁O~cM˜[BF4rGpLj%`J?:M˧݂e\Xn:!n _xoX`COze49riB:ZLI]n~O`5L͟`TZg*<]5hTK,<>"A騯`T$ֺnm1Rdup/7p`5HdoH~V4J@ö9l|E<peʥzP's_~% #T)a9PhVTvE 2wʰp*LYXZժFWQ&ᄍRrXС!H8_*'}R AtgdA#Q顕4 ɃLqSf07|e`e042- !oVw>KnDF~ʩ"'% (h>Q8(xK+UbO> ڍ+.O^âh_H&שNueBr{̗;: Int3L=*ڂSX?ԟxGzw"=NMYx[}tzP\aM3F_B v&U33g^5\f7~a]d 7()鄶?RQbb>HN!kFSJF]6 GY!3shVj5L9Dw"%,w҃os%_ s[66Xz6*dX~rbS NFgLkO^~dCԀwظ9=l^ZrT,lL cBr" c~~u,@l2+4ɅKۤ>HrOg2&^x] PpΛy%+U0Z怏Q1 ߱ XHb3Jy0^j̔MNJe8a'T^*s52#!8355 G!VbZqX;Hc$(J, Iσ@αj?7Ps@MY͢W&S~U{⽻;w7kls'QQ9E/ǞL.l[WXcsŭ?Ln'r!K+J"$?2U%nSE77}eڙ؞<49ϻmZ 5v 2ȼP,R'^*g֕Kg%rğʩ Gĝ[B;A'GD(ZTK_vr-=3+u`[* ;?}}؝y~ ϛe !U VB /d,]ȔLg?H+Ϧ8S̅9uyW,fA4xZ"D&cELdmݷOL/qe؀9ufe"+ÿɬBxu!" (iGT>ƾ7 TI)Or+6*Vwn;r kͩ[bDK>XOU!. !s*v3E["Ae;&Ǭ)$ ۬Ґ'`7+N?fd;{jy1N2.o.=돖AӬCqfDžWv!._a r>ML֬`?dRSy;$-眼ZB:խ;޽S(j,UaFi"y M{8$Ư*߫ DHd")lx0smwQ)9Yј Y2ޚ^.D̷5 _ <[2r ጸZ|(=ߦ/K*]"1zj+/=]U)r%qm(do)H(*P:CDw=b>BlRt&?|#vDޫUqNIIL5oT 72G'T Z`KH)d_ U>_ .\j_ڙNͥD1oP/ i;{6 n|3]YUZ`BnUT2BYCI)4J2Ğ4fA/p9>>mDm>V*)ǿD꫟7 &x+"a0Bbrjvl-sYSfݞ^!OBJ h5u"s#A2 mi**A)MW]}J1E7gӼ|Q/yi} H_1P^,jIسݺB((=AT nU 8nmn=!38˴Gd=~׷ ՁJ^ok[H*QqLj,߈< x8H/c4vMcjkJš ?=P>3)Bb'#K0Cqƪ9w@=lvWy}FfxPMu}c7Yf,`2 +hv\!˧V b 4ǁx|}Ev! G*qC沀9ދo* '4exe"NȤ9c_H4uo bxQ̻&!:- j-4)y4PQ~8`P8˅nZ Ǔ?eRLeKQt;YQy3MA J׾׈S8cT{fQYZi[)A^c Q?#>f9,GxpjùW6+4rwv̎TcRUvUFg܋2" O'G0tJtF4;$FM5s@nʴ#yx J,شxŞ'%pRӲC\e?ts 赅"S*mfFtvնzY\Bl>WLĶ$)S+i>$Rch?'e$TKjyCuMԗފ:StXD1O΂8xXm!RE?F$fνc-2- .| "Ķic%@ncp! D h|&VwMC4ih:>zoX@%'Q"-rywFH)MŇ+re|Vbviԝ"+p)UPOJ;ploTLFriϖDUκ&5SjI) `4=u!'YdN'P.M3 c-](jy<}KD) p+@ z{QQEG9\h`+(r63ppVNJZ5`+tXb:wf?N/ޙjC lpX:Q~3C~Lö. ^!hI!wVٷ2f#0ųS*}%K("wڿq7 ౭l:')ags1ҏ-0p;F:?7Wc1fwYr#h@B;o.q8SALh%'=X#U_ɾkztRvmDnx{S)IQmGo˕߶ @ߘԹ{7IŴYtagO}jg&Iᯖ!^ҰͰRWEWKQ°IPIOּNqʍqW /W:Dɏ{Q欋1̪|Qv ;'{K"a0/f |htO]&`|B.[o5^?;? {G92X 6*>$@x鮺q*jw!a@a]E(ٳ(bm6 D:(## -- vZE, )}r,sMNGO/tZA pbļ'K'!2ҁF F1 8c}6w.I#1ĸ,̆=ɡJČjy_ue6Q=<%NTGQMyu83q ,8`IR[,C}U `˨v{w}VLsG6ǎߎQjLacWVv>o`1Əh9nĬ-U շ8r76X 2Enȇ`4Iu5Ic[, My=^t<./*3B J[WSmR0ٞf}" JҤ\irFPP3"Q)VZM ?*]mbQdUS8'n҂J)XUݩ1^Vaɵt#Ydշxn)5`JƓhXE`+5&޳kF*&w$˿mbI1>: aP:gq=OCnk8Jd){(X~D;7NVŦ†W]MLBQoc7Bdzp5}-=JXػ 'hpiZUbXSbMRK9MjH-\IKTbf e=Ė1{Ҩ3z. uECl^P@ qH}nE Jer Q5ď7AW !ncHDcN GW,Zb ^;bF"jZq;X#6SrI&R$(Z .sOĵq,;? 62UwJe"e$- ]UfYejV4Zf][|%v#WǦ65)=xr!v-\Ku.+i轣]%)m i1hM2 S.N|G8iΫTz=ҋWvoRp-E[ܭWAuov gA9@Vq (0WueM \kogs)2꤀m ںv]6'[B ! 1DXn{Tic#<nxk}Ѐ\Ϫh=O}!d:C@b?\η֗>^M撨w_RBE˓䤂xgAۃ=,qU:Iti%Rm9 ʊwbnA3he7n1R l )myaѻLvgH,MZB%iNOHQ1zPiS;B'ryB[I;+|".:pXLY$vk~}ίHUHp6 Ih}NtqNLku/lٸE?[`e3\|؀W_~ջR]5=f8$B = ؤiWtEPZaOL[_%DUi ^9wZ%1KC20/}d5f6C;'Nk,̷YWӜD4]27<8W>taDP2 ə7w݊He~ʛ֮idը#)&h։j0brJuWcޱ-3["aٻ?%Œn?nýmOzjs.=ᄴC?;3~da`xyސk|a|tBT@"ΤZa7p qD@bu~ЌHazPog?(TRh W9[ l玌%!@?4P}Obb&ةzNG1v˺6F-*2n5haq^  e!TZ~xSݝ|zRQ BksR%ҋ I?p' a=snc4UVD95"!M7gKd2I$^x>ü%YWЄ}e1^PXO \ͥ?"΋yH3ۢlfs$IOXQ*>pR.Gh_ތu 'bT8%/Tnʐ x,o;n~l4#< bdzIםY3b`wgHAYM'm1xgɴ!䑷$P=a5MkչFjjrd.Pa&+¾!4ЊgU9(?Ԗ"g(RJ kXL rTz'd&_`fUN Y⯒S+W O_oWWbE|A5 "8ȗ>Cvc'VL 3 ؞ԳQoXe1#jL7!m8ȢoTVsKpx3Myj80YPF{ŽsIzMyg'6iz鎺ьǖ5eNwmhE^*ͻ,QC` .=ZC S V/qD1 s0g$Tіv\{U5|^^|2'a0̅ӂae{pQE2Ú'E-b8[ģ< :I4FQL#hISpϓ1CAv8*ևУgmϒN*c EI4{%"q'cKf AKzv9Q/2%#0׳蘬PǼdQMx+zg t|CƷa360rQ Ԫ/:uмxz(ns5.-ta* V{lq"X*nզ@ųk#>2Z4YJ.Ֆ$ʸ!y~;pzwK]w"1yh>]1= ϖ$Ltw~Qas APhhZO󓣜. in]bw)Lz.g\IY%Myۊ E>w;)3\<BnŬ{nʛ(+LE`1 HX4tJU'|~ǔ|bQ@Z=x}0Mp6U6ҹsnAޤH{RA3GOVsu|9,l)p﷏0`"fE. /}:eŇv`Ĉ;R8Faǚy@^M`d)-cLjOI2O.7nmܘvV\"ZR))0cS͖z!ofC@=%Q:SVV!ef8aa0V ί4!-ՠ;:J.G30=mCSYGM l|OK۷Y$j"q͸E8ߩ!`p# hO hRǠQch{yx}IyGrT?<Ku0c?`sDw&?>F3U4a +ܟMNTq=c!pjPL_ejfϜה]cXvQgFGUWbNO9 DU>^i[ eM!稇b@6 n{fM?(~ K.S}{{jg}9'er:<"ĥ^z|]+$eTy y,z/m]';V4s. 4xOMK-q;Q FG"; ZxtPQ>Aϛu:cd#0̈́162jXPnA?S I&˼1 sǘR2Vƀ4o({CQe!9RsVc'DP0p5|>fZ,9:# ф'\XG:RSptLElԶ"L&SYҀf!Mzw<aovL>l?~S$@aiL:m}Qei !/|݁F>[O cl0s98>xXq˻%g&Tޗ66bAhfd#!~3Zug {2֓ V'DVB2Le+vc_ec!*;5ik}26Nꃙ )+uʲ(9Bi͞+=6ssSgs%.3]!2W9*b='V7X %l#G E"9F6kC_ErB7WmB ne,%ԫca4WE74hV;i$YSV QR'"`x_!^8ʌg|#(j(CVL%+[YoUTJGTlǍ:q,EbPtEXX=3FM !݋bu8 M3?w%Y|m9EVwU <3-W9ܰ*eċӮ^],dqƴ5`e}M"hW=a|n զ k, I> "7]Fڻ'hp1v(l`M i+28jHr]ϖaOs2V m% 9CfI(Ś x:G~H4jҙb>2,$*ݡDy=-ܧIH@}_Vϐe IB% oD.۠#~NL^]蓞忾qmLe.&4A2"ײU@Gvly;EO*j E]`2q3pmG(ju"&}VoGiGF'yø9 w@'6(7x[Ƭ w1#DA&ב\8<pknZY} z2S_5ig~7nwݫJgiLla}@a3fkDo(0B]PlOMoG?`u}SjIeo[x^A!F[;i1였PcRuzifB%f:^O+Xū1ޣv/-g=f,k<~B*B, xلQq:euf1^QTqwG!̬쭏2b^r{s%P~@[3X# tiG# FCweT"2~} *hE/m9qtYgif򴴨%`0WfY3 ȅ^|*2ƛEggaLE8 n*gzN b(cX. y,]" u )3AZOsywgֳ(¾!^{+*zLODdaZ0ut.Hȓ'iU(<3HeԧgeMH/-sWR/Xۅ :7>>23xIx!cIN8&N`è$ؼ$/C @'C}o!fۊjR<,8i ^Z+\\4 Mq)˜B&d5z6srANJ>k8q~:˱cLu??~12\WrÇ|! H[3/*T<I6J2d$~+t)i)8GB!,cQ]d/oҪ0j#7;`68y)R`$ufwpT\k|6Ok| J޳aDH4ǃ1 3示E㞮Llh21{tV*{e$QطEp#KZyQiv~EKS7ύۣZfCyvCEmQt˦icpV& jD K2?Ԏaއ&=B{!O>.),2syۘ 5.9 KR |/%t 4l;_rIp* A)}->Y"pFȽ(POS,Ε*H&:_&{eפ՚vx(XAkU<i"b]7"d;hdv?$ T"2Dy/g0Qұb}_p͌S4-Ur S lku$=oqBS.s MP 8t}7KԘ.dC8;bI볺&VJ49Xٽpm Kۯ#hʲaLckH/!eb$Wu pAOuG<o 1#\ ^‰?8䔢z4S1@pFnIN~ 94{ʛOѝ%XT[lQ}y9FZQz"tӔ6?I Uk$L"[h +x@J#qDGw x]r 8gU @ ?rDjBaG[k PyTb\+TvLh8* *6ԣ .cCB"<􈊈h2q2uݗ?R /Ð_.T9Fp㝧:n@TO1Xu (eX3cbVy)Y^n?hw^Gё8=9jUt1 #]2e4=lLRCJ6, |\!#2} <{nPidw΂-.5>5Ъ'Rs[_Ժз3$6O}T̀p]owL=+rh{P'nӖs?CcbL5>:+G>P?ZFtC`R1FGʖ99}4/7 9GOb(`1@2n}Uyh7ڍTKU2 HGA3:t2(aO~AAqSS15Z *Zq>͵,9g150uQ0Ɔ2A&4BEU3Yoz]9p9~\`]Af)GԷ{mp:KI5K.1fGc}_ 6Y,$v;1]A;;DD003PB\UՂ>MLBɱ8c#jD~C!rQW)<+ =7/\?TPȀHyY)EݛnĪuSI&Vfҟ-AGk. 4SM5ACTt~W*נD9M63/=w}#e[-!ljc}gďoij m*C&=zЗTm!:¥;8}AT) \P_zЛd2$=}Z9@W 7>$Hgg(i ),h?|D9s( -e\ZV+N6c&,-u(DR]ި_LPD> FIKbjkBe -6/] $ Ӆ&f]<MR%88ey4ix:9ؔ{RhzŋUi5csXɇzHJr #-K@OtZnlE'{C"ΈY)B'B=Y,r+Vc5܏z`A #z9S I +0c";: }Bh]BHWjtPFo?(Q92'9u/P/#IMyN~e*I O".C$:-pe 3353%I8۫Q)lj}zFB(GgX8Գ. b4La1v}8~=SԄ^|{:\/hbu4kpE85iN [[A@#-񫤯LF&Rt źbNJEV=3Lץ!ѳ!M V[yH`Y &bQ㯵t{t֕LA}8#묁VDW+ϫ kPHޓa Q0<'9! jd2Fb7vX.Yz18E$K +{@YZq' Ζ MVx.cPjҵI[kCGg;ӷE]@ Z%~Qyrƣ : a98c~ ;{OiԩV=ɚ•#WN97`hsm!VH"!Bo,9HYhFZ$X{E+Y0ǷTYL=SnզE7ex>F}@UiM3b|¿G1A{ N S+g RE t!c;[UB\ DY /QJbEi'^"EF ;O!aUR5U?84|Q`mK,!Сdp[a6P%]]iCsO/Gi^u$>#&H3+ˇR~-C9L3׼a P?ʲWCbm[ pӲY vyj>xm2xղ^H%:kI9 9+3"\OĚx%< q\tc@Tpw4(>ݣ{t@9Lnn  5mI1_RoW{ߊ'c3(.[e)p'͇7%ϕ8s;?ٟ> &%k tq^iCi_RffXq'J,5# }\3'6NdcK8¨jEse_VlRnα 'GW1;$X 08 N7oKӗ+(`Q&:rRT )\/tttѵ/ "5emeg!9npF$B%mU4T퀲Vu&əRvehF[R玮Z8I3@TEfbo]= ? E3;xYcItljX -YX7W{ },\pU?Zp{~Y hiB1QW"'T<" xvs?ī;>Lǥpzm|0=V^<9|O/>//dJUo ( @N ,uߑfP:eY;WWH"*=]<= [dNmH %WU/_q#W{8Lf\mgr.A)FIs&0̴;] ܞ%qrc^PQ\&UTB~ECR3|퐈l |7;^<ҶSC>SK@$p Յ<z7ѻw%/l F(k:iY6>fLra2٤kBù^y}D{~^ߌ@?JzmՎ!48E*pLޯy//0*2T+V|貺h*q SH ]@Sjt~ q K7w!CA[$Ug mh3_Cr]qBwNűaľ@JA*-a |aՑ.,mKyv4xeчY)h\}j6ɦM0B\!`Ua5}y.oG5;9yd jeH9"C-D5W3m|3ш~ul0TbU˷R4iGʂ4@)bA)T RDˤh ? Ls#nQCN,eiifn'Ǩgᵅl=XWʣuYN4ߝ Jk3F I^ɵWA&}Zt{R14> N'??^ ع3g*MV3n51 JJL*I<`.N6<3Yφ{eb^YŨ4,-`"'noA}*T@Ht쮢E9ɧ.X7K)ݔܥ?xa{x Z9p ۃ4౛ ԋI e+ AyOR;$gǔ 篯ت |QPXL/p췍#6[|@>ap]$Ҟ`űoKaj.ʧ6-b(gŶă; jsU9*K2^q,nji ew_ZE 5 :`r.'~tvWUrWCW>ی#$Aq6,vн'-˓i38VD1C_N8j(pZh|Zx0Ra|H*hѩq˶;0Ex6t@>yYafHs KM}:5:ߒ]\(I5V6Q\ME'@./+ٹ}/T2g~_& voX}EwJs@ldKl̅(٪%}4,j^E 0صp ^aLCCEӼ#V0~wb!O'N:?1dJ`}2&`Rm))0v+"V~ooPtWty.)LNc4}p#}5]~vYw/]AjCr'B)=Gw՘M/Cvx1"\g^.IK+TFmv>S2k"y90 ef'!XkhϴNg/.p Tv2/]8X1S-b/O_* ua<K!r!6el ͢66(Dt=!ϮX zV\T@Ҹ1C~50[@25&xwQyc־m0.0^?l4*9 Y1[[<6Hex*.]Dr9{d6a,9^C-pXbjYK̎ T š>#R^+Ed]U^2{(>E9`G u}zz jFH VƏ8s"wk|2h11Yp.Pۼҁӓ58u|_M xqXRtZ"XMG} cMOz,0"1SX7Bt" o6!v:vr3$E{s(Qt5ubcoܞr)wb8 5~5%ItH6Bvabl?hk1R: B5PhךQpXj?M~*W6W(T~C-yӸ'>^y1BjWHdlj=jR`O+5Di+v\ h0E`sBX@5}66 C.QӸ] YȮ<{ѿn`OIdK_Dwf*(V#6QrP)ׄxŶ sJpIV`dl!"Fš ÈE؟YPx;o?)4 J:\rc;GԀGeoH)zW䂎d%؉v}t'MO 8 -Qγf?f=7X`_dN=[LENIU^/C=W~;[ǃ) LFDX ڊb$ΞXVsҧ~h^.3̧^ w@.0 0G~mK< MlhzTx/}W&@ٶ&SvJtN:I-KT0 2Liз7:d0IqzBvpw+ 4X&CN M]D5Ss4ֶc~ PC y*&nK=EO"w0œ"6^Y$gqub5M'Mpo B`$,7k3Oɾ2,`*pm3y 63os); }ſ6LLG.o9A]:iW5Ι4cAeNYZ=帠h#m1Haa/]K"3 ]xgj8PfX\^0\-bVN7R$(k}/tHCU\TA3aok,U@D4pF0zJKʙ&T"vCx7󪳤m߻J6̃ln>[z7Do)ocF9+ql ᘿcIFNY/Up9/ jփ/Po7SQQa$E78^ߔkTyб@z(8o[J;Ri%q_4k 8)a XoSݭ΍"JHɜ|_άqTgLgnCr5p)Gc䋖Bu֊?;{$c ķe~ (*(deT qAk)XZg\Kr%ק$E<.7oe H6@9N:XΪ )ՌXt7h>HS0{RSm_XنyQ%}`~| E©7erSzha7}+We<1y$^8SBG\G#H-^d%nnCڱv͡=wI=JJ?-vzSR3? wwr\@(Rˤ諣 %;9^!*\!}fz3)9bF[[;>\TQ >-}*0$RHmYU BIhZ-D,?";&^=8ebpb)4ڙ$ke o=\11z2UNJSx |Ss%8A'>YL4< Z?jCLvbC{:iR1ac;'[|D$D8m5Ule:h5~dOɉpi`Vro_UVt3J+#R~: _X3u^Bnj_\ѩkO^,ZS䛀8w)_z|aF\:utE\a *[#;IV%'Ėy$/!| s{+Ko玵9iqVӍzԡbeIA'|m<>mKZ2{=yr1'C흯_>Cűu淟JFZ&ܻ_i^ۑo$ {r¢hf4(i80#/>DU JjufR1 ʡXJF-@iY`0DUI,7 @Epk8l#=@6S.Lfr`i,fL񱇏бMK-syX0M@%<1Dƅ[[gK|}) hc@@Sé}Ք[16`\7`+4C}Rv}#@_?+umILiv =DS`?žL CDW .C|K^1eќN'*P{Y[Μ&o2cאJ3OpE{Y C`eKA9W7fAD`-Яa㡟R9ڽwIq&S08i!*ZE- 5p`=/DsyTL>4ч` CA`:tw Ka~1AEsEFRJAmmV:LTZ8p1tr k>rhߛꦮ36?)%9B_p2ة:B%r ԛhgY&eWBPfԸدeEMp 7!.Iy|3>yɠIܹ 1 /r)] 4 )q_0<yՅ)7K>r룯o1WW·y*z0oAecA V[/k@mL#'RPpQ95y@-y@?rhHb}׽ N!Nb]Qg牘HݦSS%"ərG BʍQc͏\ry[Ҍzh GSqQ81_r6.R_ȯŰۅ#YÒLݾy̷Sӝ `ه*XV?.KTuS(]8$/S(s^ʖ 8 'Rp ~h3/a]9RÁ)xvn&~P8J"~f)(۳\ 1*l0:Yͱ$Yo.7Kg'BeAX<8D:#/Z#2O%KF,R,[mkJ.(aZ8~>`pmljGppV|Aџ2;^X2.|Az@+Qx"TUcXBb{Mxc=+_-#Ui꠽CJY3 #Wy]A%|ѻ^ҼJte6A-I_w|JZ0)K$+tx璔s$Mދ M (-|eÛ[ABkqt ۀqγh .J~䍁kL*ʤ)eWB a>eƠ6Vݷm8p\C0JIЅN$(`^bLU#cyQb5 4}f|V=(nI':6Mlܕ<)&D"k^m7#T ~[+%dK,ؑ% [JᎱ<6?)+mH*dU nHh1iRsqϞ۹ Xp-wnCPm]HtRғ1}kMs[*yc y \i8(+? #h*{fbL9C3:D0)ɚNsKRIG}ݯݰR.ʤ=CRJk]${VKw5:)Ӹ{.qZƟ< ]f4m^4xcvR k'iɺlEkكSSms]C4DF7r9v5%Eil<#]:4u;f K)^qBH=7:2H9 RwacK"w Pk ƙhex0.*o;ϲ4'4MEd ͜sӥWİ]ąLVz#PJ.Cﷹv5)ӓ*|ep(iBƊfsfD!Wàu[uxG4quky:EOyXG leӧއΧ˄cJWxSbj^)ޚV`O#cL+y TnBxpKͯ ZluMYE$ D%ڊrlGc_Z7ʸQGlD+!^7]{n|wq`=[/)M-R!`$`\.!bNͳt~0#,H:󦗍\.?yi(|2v٧ >G1h%`ƁQEz/&t͐@ %zn{zazjAZcB-L]V1< I,c`K?]I>)`² sͭsd(zh1h\|˽1Ƥj'q\S=&_ Zz^'RYyY̠ՐNf+?VN/ayFXV%od1n] ` ȵIL2Y aB3w=7jzPO[ȹ9O_Q0g %9\J-|}/Bں0ˀkTi'4&n|"u6ydp±^_Qy؟{,<-g%hxTT4AK-Rx~z. b<(l vo)t$r.Vzs)]qҔ%Lc AW'e9숴 +MFO f61"imNBRdV~&yO}Հ$+AKY!,46(rW]1,znR쑛yFS؎ChmS۲%$rkpC VکJl:r 㕽Cu(%9fϐ@Ztmv>sY 1|DS("V JaH;}A L>|E8c ֭#ٛZN5908aHOQ @&)tVW>968~ztou L&&DH[3-b8Z(ynxd9jV'QjkW7$%. /' 0] A rp,)(4m?)UwZ}~{ Bqo59&$zA2D, }]eϾeR,*o5i;eֿ<> /R0tV DHa&/bG+Ժ xpFV?:Y`Q^O!gwdӾXI?7N7G)Q,|.G{ÈkAQ GblMGFvrvv\ u# &4ORI`L3A3+ jբ~܈a:R.Ht\T(wVR4qJSD4WaBق5kؿћ37Q:ĜkS32ɀ0_N)71\W&paNK^sGMؓz:p0fO0k~ @湃N6o:%Yo[(6KDPu]}utp4VW=k|j-y JiK-v`,~U; 0kr\roTԡA:_wj>/x"J/,~R6Ȯ.V e3ytOMVZ,K)niA0u qt];XXsZR Ǿ+n{ ݮ)^RusnuS.K<&ukV3m+CKjD3oRhAtp(RDQK °$(~G%ˑgfGP&:dwl^cŰѫ$G5 A>j HK79^d^AQwb˴hc(Ⱥ9txS06CdZPc1 T`ş1lC -(/h~;عSD\s&f<=pIGn:ΐSwb,4C$p3'*[}0*lcۅN.$ 3TĦO(zҝ.xOE| r;V݄%pp)[mg}z6bVdZͺ5IqkؖӉzWFAَ)vBZ5]@lX9Dݞ@޾T=qkjz>:l~S* bݒVZ0`E)!X1tژX4Hq!Zc}\"8OX*NvzAW |3#Y yH١I PpF(q/^L4Zs Kѯ%rG_UIv ice0sYDLPނ"_`BIv`uJaCZ:C?`q,d+2N 61bMA\Bi4w\l\4 =Iⅼ\}:"N{y2dF6311Y_ W1 NC-s &,(b?gi-,GG`2y(~ V\vU[}v`Zdpڛ4bvcZUഁ;FleWg6|wzi/xV"Hb%IUTMq4vll~ [T0xm=lvbq] 6zW|lP'sE>)u-3ֻ\ˬIfk=eT+|̓Yn| P8 5+UO3=$nzWgAsv@/q`?>D0'ZZFhb^ٸu1}_ئݜ'N J`VrU{^>)CG>^T@KPF%BI\1| 0"YɤJ}ƾ`}tz@fylJԩr7$zMD 3 ƖI)x w sKZ&.uΙf_@ LӼDFR%}>K9%Ԛ؊"7#'^Rc^U%IT2 (nvS+8'bۼiSZ3pmaoܜʥ8_$cJn,3TMkp mRMVطMrY~9}/܍ hmdpe'sPJ+C9r2>{0<-gESSM~S/8'j*!߹~曠TIfg&'ywWFF -j; 6ʔrj꫇i2,;E3ΏXb݄Lsj+Dž'JAlF\)Y۟mx2++g#c0o객mUh/ |CGb~ELUL(\0ޜyͷ*޵A*gB7uMzZ9,@_w1#x$ԏ3mߝٰGY-P)Xي)p`>"];~?-5.'U}! Rn>(Q">F\EQ" pac<<h(iL90vbA@Y[ەn>A+_pe^B!ĸIno:J8 &mXe771tȳa BI|5JFKɚMA&~n2ÂUII}(j;9I"KJ=y{;U-hO͔<]捯 S[tJ 2ΰ~5 0h\u8 `f WOe7ڑH}=fT*|;Ev"zXتFy+u%8U#lT9 ;8JSʭwLއDHjP|c>U!iq9n@8V#Grx%c/5 r L-8U/G3֛$GpbSL/ETjZ^NZYk`e5˃iZq?c.VZ$i 3oChg'?=1KEAФT^Z[IV'V)XF2ss$ KqQE;q?ҍ*\N bnr<] =y-H𓍺{}E8m5ħvBx^Q= !C#WOH9m§:<B?,?KIeWe} `O`]WQD]`s>_So̔u1IV y>i%vLD1z*K1ꢅ?AM UM0lWzץKV"ޗp" C~Aʋgm) iiSi2gDNq~:'vxprAx"#dža׌~~;boPAl:MD65Ƒʒ6c7GaK5#fX5ŤB.ORB[3me"V@2p "8[H%'Fv}2ii7$|8:nYv$(JcLL{YGR}qfzK1(g*-h jwb) X[,%v!4 )RcY~cןajmsъ\|:0"6EX&3u>m .ϓ ȍ$4nVy }I] AYo)2 3<L+\k;aYsDGtdZW`?kqm@d)p 4W\Eΐ$dtV.]]VW=h*vb'%6<d*LE-' Q۽OkZR8w\\z:D6mwTQRK4:| ר! t m>m~:_mco)ʹh$d![ү-Kt0]Zh~BwIiF3w ܩj1DfugM6^Z'ۺļ?&(f {:ch'BY00->ơhg5l=[L z"_˄-(}8׻k+c>|JG. `)oߚ<;Ԟ27@)K攋wFͼ͸.Eusa3䘗{v1nR͵\QcKb)6m{~&KZ|m4TJs?hsf+,\C E[ٚ@w4-wӔ ؍i 1u6`_Ԙ(8^4\a5-)J3ȡ:LjP s0۽1B= ݷ4]iG[K,GߦzsnEWZ3vJz VWH 5fy3)fOt_Uw"d!UTeꍘ,ݪpA#U_Snxb@'ĥJ3@3<58mdЙy:2@]uyszcڏH!i''l~R~&(-1JWAvNeٚY]Wkxє"F S*n`0kchrmN N.~#:h7hܯ䈂tlּU &=RVOq+K+\Xz83RCY<4kP >u@uEQ[" d(9j*nRA-ޗ=]^-=z3-xl LharL8JLgP\Mr1P7RU!|Wmmԧ'n4NN}1nQ}PL"ZjVh&)C|V"s}f;1 p`9V*F2)f}+iU@h؛S햸W븎[}zOa9C.N'hLoS!#Ps$\ڼ?KLmG2ܑm_XL'YXo/􀲮WV\^sM0޶&Z_>"rCW/\:^ +TdT+"e+Z}C^qn7hۡy[8TlTxڣ^삮Հ7D7T<[ VicΕNvq<&[><*wUдWhr%!i 46wH16!&'uP?[F:"ȣg4T *P,? J5Wι& cA&(qfDW(Ϯ rަĬfr@ k$udh9nD bR)ڰ3R@/їS%ⳉ.gA((ȩdƼ`qCc(5lUwd,eZ;=\[n&;V?ah/6$;>,Zd7W_SSFzs y)m:i^-`9һ)?/l1\uV ޫ6*zSҪ^喌 x7BHy`mM)p/js@jH:I UU Q6Q"p%h}8gl4.fw|S3$\b̠GUZ˥.Wfk"n W( lZPb'C\Iϡ;<[!mC-٤Q&SJF㿻n|݄+:C_{AGateEr-zZdvw'ecU( YP )-a cRٯ 1 |7O0QaXaq63{ѓ3IZ$⡥= -+?W1xvkͼ5" F NrLuT%`[FQm2mcWʥC5첂*1hV=bI$Pa IllN(Dy }[qGuBEmo]e}%)oSN2]w5}آN9,%.}>\ik[e]BhO\icѹ8=q.K?][Cᦖ$#|mh]0&b%r@6O-VU+CjQ:{fGTBs( B:F,9 AgDQ|wAIGrj1,ebsS9YRӳ-܆t62wg[uH Fc]fP>?8G-|\}X'ELXcFw,!d Ao+PC-O =5#ba]9DN7ln=;+h&7߷})Up$&#DJ4hn$tS-ڵ:MO;3G=o6я=U~,k@oNB%ǤDKqs!5d,V$_k9`ask @^ҦpRD%9Yq7oPUCʝeG~Bbgu@8a.V07B(ˡoA3.3` I9pq]\•'lCqK? MǢB_gS8XX ga [A4'e[8LqZ!ބNo?@`ӕ_k]R?zU5 h} \HɪK~KV# l0#3: aֱr+y1|:\0ArIgլCoyX+xG#mEAZaFt1B2B*#r\vXU"iW7SS&IAi7{NЦl)"(WSYڡ?rdd'F E̳XihRE=K9?55Ex/aLPjq|3-A\r R ٽ)J:]1`Vt)K̼Ӄb"v'v_M"ǟ a67{8^Jg 4n8}{ZmĚ/6>u yZ'Cf9b i&ɜG2rB>u?qj뀴`=,A~ :/? |Jr_㪖;)y[ gaxXI_'o~ݎf>Rk~x#*J΂6XJ? f:+h^>09Lve(h5 #L<[lȵ˒ۏr]t㞫tN9uCً'Kc4x FMssXcȱ %H/ e;F]CTw]CS':=\,G".V@)d%.-Ti(hjMMx *,lre\F6;Sh)agtŘM쾞?YET-ت^nhc¶ܪ8͛*&U˭dmK2ISY&G,*RR,fy :ugq&*R>#HQqxSO#xݳxU v9mL:}._f 3Ie+KcGLP[8Xl;S4gM.ΎX>3Zs^&vSB,|N ,fN ,""߻>mH˱|8pP١=5!>1o|*qH/ Wf}c+$af $X^TED"XO30 $8\p>Y,ѣ"l"%̠U  q:[7+(:xʥ zf&ps-揌Ms4nO2|q|fDքSo|;U<- +{yl#\:aյQmRfKVϧVU/MGpe<Ͱ@oϲ. Ac,K}"Dwu$w2m_,|0JEqLKuLVOhmCʈeUSIUZl (Ok5 ۜH@O?Kun) 1(?*'3^CIXaBaHہ:38-4p;KsJ$x%hUuȤoԻͽ)0B]*y%R#JySiЯ*pk"AqggEfB.YPnH|&'֗4[ WCŋ4CnH_/I5B'tG/8>42Z֖kVJ4kcbondOV⧝Qۑc-S7Fcg3C&nnJ`!tZNQ &<%^ kjSQkfJoܨgs}i8咈tZKvnq. Ne 4VA^@hT܂U ټW}ϨsKwjeˁ"C-]tǯO){U@SE2k㲲K }vߍĞ]j(J2kUGPmd#9hQYK JOCҳTR]of*= _Yzb*BǩwT@\po^D?d:="N2!Fj9tC0;F"<77r)$ C4]dBD}y`k!;M}pyodY 1uZ6 P!xWb~y" 6[hR[BW& hȹiF`,lBgKQ/i1X gh YX#HZA{Wij?6e]0lPMWr(9CphdH޳;hҠj65]-KBB (g[n?9gg(F]u8(썯^R i>tj GVdm|@.MzغJlA흔Y1pEKk~iDN$.1V.pYaqa賆:fȞXuFHtSG5M h&+U;;lAA<{bsRV dw1'-ạ! Y ݴ9 %" ʭ{AX*:plx?Kf*%aBի 1u= ^id ~N@93Ff |e=H JotP6h~A"mx_8¤P-mz{j/?I;#.z!#e n:>Tare ϹY j;k6] i+?) 0:D$zOOl-h aN-%[[G>VS=޷/׮kLC{#E"zQˆ-5j䓒" f 1gɛAgO{FAPbV?O by֛@ȞL`rMCmW4폼X%~\$3W)`%6A*bqh+Aj}o -]DD' BeJubg66o}9F4#$yCtK?T-$r #pi]Aog[-$Dr % cWf_3 6:"pL;*k_ɒ T={;Ypm˫ť {܁dfo#s8sh4b bq2ݍǨfP2+ݘu^zHp(7=N5ĵN;I)Dwn1"2Yz;]!~`?8|B)0^ॠ}s*pĻMv@BC⤊g6QXO7K]My/%`ueь] U6oBc'TԙcK7l2VW$[#WaIrҡ(dnQ^h1pM\Z-$`/_͠SF&+m9`rLjW@2KRPMB<3jpJcr-D{L-wXڙn1Qh͕ծiAnym{OTGF&yZSK#җlgo)( ].KO&Ns7L}kdh\}|TY>) ot_=^ oGq3qj&{Qo2]d|ㅼ\I8Ur:3M|EUǹ16iٱYh 39鵪_.X6lBmqɈiiʊd#l,s(@ZMGQh&nhݻmFJso쪊Zp?w*vo)c)=-+!t@gΥ"aIꨥK-6grؘ}[Tm77!H~R(f?ցrd;CAhF,ӛ/e\~b7p܊4A: ^]./_S{}߮Y+ښ=%9Nq,iN۝NЬN)o2Iqig%udɡ> 4<>,;Ҩh\7dA+$ }j\|xIV{CQs+,~ |'=ͿC%h(@cp(dijqy-Lc,-1coS߲>1*ʙk"mWE0Re>#L!9w+.s1~ܮ 'Q.aF Ay?[JK$v`Y5"oZ1ǧP`.!0,_+ēuص֔Q~UsXܭ\󻪝] ܈K`hZ $CMeYFڋDRh6֤wKc?Z1^átdB?˯?UcM-8.0||M漏Ʈ'SdA|Ru/m0Ms pו;9ѱT"zd|_qa,m`!jI}!S w:1- nl@c]M4ܻ5͗RbXQa@$ʬ:ͤ2טaVb)(MpO1l[h}8ɀL+_}jil*BҸ5׈{} 鸞Y04}F$ӮŅ`+7POKZ& p]UݴLl-[xJirkQ@7REp"Ӱ%#0P ,DJ?GlW*8zIRw쮭~ ^bDu(LtF3{Yٯx[.ۀ7ru)_up؎#liAхOC?7ah D%@IU3A)|0fe>{_>ڳzP Ғuo;1aJWںeb@P/; e8!$4`h (2 9%ZV-fOX6rN%%-Zx$.U}b9gĐ_^ J$91A+x5^脖:?QH)i,_OK |zjJXqoz'kш= 7*pkuRGwj,a9aa>5*T9Lq(-{wjfc펬Gҗ;7Zf>uB'^L@.-$M, =_Aڥ&BSu4K;9ۜy`}:EfEƫShrC.m!4 3E-|i^͞RK_wyBm_U,`։l\#ȇQ {%-Rt;*J*ǥhj^V0S$rsT=nzoxjHԧiHؖyO*h((Q?cf1Qgb u0SHV:9DbaG;rm^b_E}3 *E4*T .Hg7"Z.gkcz`CVj7{v}%l*a4nfnw̘m?g ,){&8뷥KY8(N'Q_(s$! P)u)ߗ11: t{Zx5l^O4,E怋f~71Zu~*jQ ީZU鿚s: 8;с$9HZU0W-tx{]B=qꍯagoO;Z}IIáYI)#WoaEOΆ H%{@ TTLLCBiΣESr|y=2Of_XC1 Ķаt7aN3g(L.- ,r8ANDjG :Ykrio3Hnl4ι6yF)t@{e:.EmW>41K"ؠ"&juLU8{[]R ; ńւ*mDBM٩-[5BSx`TGZ6P4wF!QT^cI20RR $`X D}/] T,t2/pMqϓҚf!WR-s:6"jUmv*0f(@ _y.trZl[{sr!;T\g%!|.MzİCK`ĭ"4j9W HTر墕G.*oEDZ  M'MEo)IOKP+<_(aזVPUR,Zf)~E;4^_ΏbfzfїjVf0#g$};{."h+4~88!-޺&^+CBֽr*e,DOHk~ sȫKm8FUX춷F۝|bHa9e`(q!^~[mit\)(J.;];$ XZHϨ;aKa\Y }t}cmKK8v7!f }"I+%Y.L:Z ~Lp~ G%L[i6b\ZaQMn3}2Ǧ6PnuT>{Hg$]Ԗ +4G^$C E@[_@y :hFPf] Z5{G+N-$"@W]\"vbɹ3Kq!#3$ yJs,ȱ, KҰ"qSG f-;jw۽I;nc\g7;}0bHb5~ Aۯ!%Y}Ed@@E=P8Ұo.3;l+N<-~PE%`foB D&b^eANr'Tr+&w`z1֍\jŧGB ..Idf% xtN8OENؼd@jW^,}R%p2[ :ZOzݳe@Q'9# -|v'@.k\ wz\y29^O =A^V7gS03XtWy9Ǵanerdƛm$= T~֧!Yo[⬜|{eg9jŨH6.: ]IU3!=Ӆv>bC J2^]; N=Ueu*&aVt0$%3صF:jA6Eg11TU= 2hή;|:J<Ĭw4 /`_P ᘼ<gLkE&8ceB_~I͗)aAyKp'P4tׁlV6 ^|zd=%VRx!7ƪ0)j4s,( l AF2mP툺FB!y&4 ҩr6peGaVӧ~4Pړ\W-'_&zg[N-B3SrnYJA:5YQ?]B0`Mޭ0Gul\Z`.ͷ2Bq@%TL,Tڭ/-썌OcybǠ]_vI"n<[Q` :?"I`-n9 nT!%ZTixpRWE2ВEf C{sD%_&}?u`Nv[@iL)DT/|X^/b.nك=W+ЙV/Z:b. kQI1ܽۮVrpPޔuhpzug0CJ!)aBHV\X_[)TSW>DXXI*`DA. S|K]`vQٮ/{um؀^Hd)󩰌 AHM`-*jNr ʏōS\TB6=Y1,8_(JjcW8:SZTzfݯIў> )⩦-ACDB>2?&oLv4L[=t8 B4x[HXVa) u{0WMf)77O%̀=gTs4uPxaIo(01l``DHg[ ^-6y,p7,]5Q `\ 3/h AZ #cUd8&RE4wXtWxWMWB.BK{<l?/0L0QmsM @\LNNmUH0puĖv:!Sbt\Kz-\7b 2vS/Q~dYeu$9kjYHa/bȤz@ - ̧ 94m 0~- ʝ )\ N `~9> ῾Y!AC/TK}[1AB%=Mqz$Ca_&l 7 rJM6#J*Ey//sUQWR9O(Ӓj79֖l>W0 %.`,<`|#p@L^'ݹ.{NKt9IzڰiHP"K:{^ggMzA= 8٫9v3q9C_I@M+Noqn4 "Q Q˜3}:iT(-@ed/ZՑ,2D2-}9Jޢ"WzWm ޾GxU֌:;Am^֊aሗX âa҅llP햊uQs햳zybT4'qh  ɦ@Tؤ_^ ͠vDV=u>}rs{ƗMrPH Mr/VBmSromUٽ<74$Kf/D1 JrMd$|ظ Ja㱱sh]+EW %Kѫa;O| BWIډŕj5Xꫠ x]/ye^};֠b Z;*~f~Fup5 +Kl',-C}H7Q1 O`T~p6`#JAnoTwUD^ d4q!?XލF_33ٟd/OǥD ]HVymS ."H 1METW?;ltd4AݳX-/τ^ yܙUGu3pP+-DG@$IBf K7 -m]VR]jV> ٸ&7;u9Z)}͗@)+z5EIqvR<1 jFk<풓jiH D<}EthQ!U=auR LиO͂kĤnqdI~[@_5OY\<틶_H r؂z-3hy,)ƻ&N ESwʟk>4N[HjDYK2fvj^Jͩٗ(AE/j44d9bKoDf!יQpPE9 [PncIq6BYIcNP%1(Gnˌ4NFE\0R (hG͵5tŀR CXꌡA^V݄>%=6m.MZ !]`(` a,{Rl* *[ۛcye-}FΪGPPZѓY5.@$UT*e i. t cĔWDAp3}V0՞]䮣 5I`Osz?xē]Z]͜< 0RU)eʞ? U`s`,rYפ׏Z`u2gW[i2 Gs3y UD~4IO/OC1Vy hܾD1^԰ 駣/m0iVC@!^ݍD(f4w_.!{t 6''o "Ѿ8|1[Ot95Ya7zvx Uc{+4諳8o\rM},$_J Skn.c2>tAB "##Xa x+juDv?Awb))=zچei~-={P@ur $1 &OdY4#aOrhm|*<0#`"C*Hfa|_22j*  4Z" 4_,iX@]%51 ŘTt<D–b#p?/!#,?<4՜#C 9ؼ*q;Jq2CGpSYW5 Ɍ:e(z.7R>}Q_]vEhQCuaqDgxpv @gp\ cbj\1jtYxLZkwkR5^oi9Z~MS_t\#gE5/,EܑHܫ5A׎6߇R{]-Ӹ **P=qF۽Yg) F̉( ㋻G3w|z7bgfDsGξ1柾&ApE[L e_{ wpGDP-GVL9^ypYs,5T^?&cQ90c,~ "({X0%)U >y࢝Pۧpkh䛜NIN{jdE'[ުO 1WʄYjh9USA*) L"I9"-8|.7_x^}ŅrTM>asC{Rga~I*juns PzX%PApMI:P艛Z[]C7l`b/\?xi,}bM &MlʕH76t]F=@Ã*<^Ǧn)-2@࿕Mvabט9t]L?y 55} 쒑t(Oʖp krԈ"cS 7XG^/8ezzGnRΫ5 Ro2m"7Opy0v~rZ^x"?sBB:!RJ92y b#XQ -*^ L +o"ͩϪZ cJƑ'w9;L"+3A'/+~*Hw.sI͵QN5t~%W &l ~{9tgC*h':4s%4"e. SlRdb_O 籚?nҳ_OW᱇M E NP&XrovwZŌ68I[-o Bj7ҎyhZm2~pX>Uq (![wDؾ3?)q1[80Pï6#E8a ~zp`^~kG":HoXծ~b!ށ0̮i߇G+=p!Њ­@dv0N,|P ªslacG/p[YlDuء%uSE4K6s! k4>G4?~WN!5K']7P.Ό/!e07cQsL<D5Їjb,;EPAks]ZAn 9s[њ"P,y³o 6}aCT{* 蜡.:<w_J<03ʫp.fI -}bΤ-5GPZ̒I|ޖ`!FR4A?7KEb)ڟ5h?x^S@__9v @)fW1vc >@i@.$A̖@ҶCZ`b#=D}?1s`*h']FOREwYu>~zgs693 t+aN ڠ$qCwCp 8~Rb6'B:(tBev0?O[pF-[h DOڱN&8 ~."8YC.4 !K]ũ35zpQ;0AgLP&*CE=v]m X7m* K7<[;m* ҲFN r{mt;jѝ܌mUIǣO)\1r8X W`9Ļ:C!&2G.8<]@:7k l:#|Gf70jbjRruSziJ}TpM4Nm}$ĶaаQ)=D>PP h[/07VJwMtK u =vI(KJo9hXIҌ m<N7u~i"ށ`ƺ)Й hDNhAs%L^ Y3u=f,5` -T‚d"~[S1<m* LBh,IK!Ch=FX׉x)`9U5I^tbs ,"%% ѲIۂԉ#[ NpYE*"E!= =q*KfkV@È rjqmS=/Yl/+ۯ^5 #YfѨ[kV~ya*Qgƀo z/8 `l@é繫jmJ2et:QdJ~њ~8*%Q(}fp5mhW5詸zUe=F&z;@ozꪤ.BAdP&bVJ3Vڟjns*DQ4af?*v07ǡơj/^g`]c&,.uv8T8rwngZ|dۼ2З83d A| B\t%~a_L#K$  R1!p1sn}ңkq@ U8,ZEJ&nJ>B*LtM#?3w%Җź#+R.~-!BWy]jPyzU(XgbNoٍ<+W;ij{Nh}a:)*!duL>@\xdlDə )lUhֹ:˝`K7=D5|ȨDZӗPsU2Nro]uF=/?z.>2,dLY\Un5cةWR-~[UgV$B>OA\(~ R{%JvCR?r s1*lʴjz}2*i$g-%qF( b,)C].ePt<_O$ +a)2V&*u:\c)=qrb'>.uώa<Ķr-}E5#* Umؘ.y0~Pxg)>iIX B;fa!;8FЫMp-'<'pbw7>Me=&5@wA#{ `ZvآlN!>z&fA#ݝuIwImWtӨS\0EjQ e*ה8L~ >aלO,shŎJ:W ~w=PP8{s~`9$9(4Kک!F$4 :7SGQAP6OG!tK@Op/zڃ7xV3\tĪ;if8o`To}!i!*mr`ԃzm Z@MFjL(K\;0^^bݓ;cC|w _yuHm@ٴ*,^cJ> e?)Tn9R g`-D1 UE½P|WWi b V]6abD~QuQQ^\# 3QJsҀˤgL䭄WOeT J<\;'N r*Ώ'sVl?BgS@0N-8й-su)gsa"`k:"DO lTvNj+[b&]Rᝓ>;GZa@.XjUf \>G[ 2Y=v LeגH|#͗ []lšǭZhKfFDN tY-6[a$2cSŁhsː ]6MZ,e]#M"NWU&@ XxJFqNTQ2ɠawⰚqG:4\.&׀0Wz \sH<` L{-mR&{f<af " anЗFd dŗLa#\[n_p[Yy4(Аת!8%ѪAf'_{ g+1=# kSM% rO`E;4x4;MĆy9JybgԞkp߾P4]7U%صYiw-ˣNͩBr;X$Q0LuQ1/_ AJ7ȼh_v/ÑeŒ!8|!a_`M\D0.h]c P|vYs3^sPUfYV}%2DꟜeKtIrVE67[8ı޸X{aM 1_ǶiR$sQ<^=~߂ (ְ6ےYͻܟ=AsoH \M+Bg@@P7[1?mOgO}@fa}@ Ttlnq\4T\PŠզoֹ&'s%gRtL_\rKwY.=e 䱈}x7J^Ӿ@15E¹[n"3.6+lX(H#jKG];jhps>CzeE.Ka'Z IX`ѱ/XG-Iw0 ͯ5 `#N} rYWQG&]ZwuO]5GRR? | alT긼"\u*~)h_ζPӺs)M5t&xw:f-+R%[^F31;0x2zWLgJ)0&]dApKx\%?n7(;b8L}$ a$ "o&<6/ܺDH/vޭmfq +݋E$Tz'<<o.V ̤0h&scaB%9.ZFG YoNddohVkW(_p{LWK{M?0^&VXp8>-hԛ?Vn9 n~n|+h5YfB-z~7Ë{eg+f E+?/VuSS~Md/ czZ6O"giZ0g9 ~SUڅ]:JAD[ m~C'Dp'L' (ҪJtvFq!K0$ps:ˆ1!Y0GT<ŊrG^YC6ӷbaP|dH?X-IEa"4Yҩk/E*kn1#cj4[1T0G.-n 6K~5LOzpm-jfz˲US'%IMmΐ.4Y~VHk|/le&:N!^Vɴ]s:8:1۲/&fY]j7Z辽CjPNpQ7lS0:ؕ0ŏJ<my3MF:7VF?^~G6J:j)\k`ـߎ**9T=YGƚ)u\M<-Ug{En[MAsg5H,Eih ]7T 9FDNIЭ#̥5glLstFܚfm^J!}:&]9¹?A-zU,(M\| U׸os~n6zd`iT?{:׬vB״_y 0? Cͮ-^9R<|Dc/FهplL;%b ֜bE[~3T轡C/~w-WOC,d灬% g}&c[9oFޝ@v ;=Ion_: O $diο54KGwU/Fi辆?)wf 0h .eR QZ+ Йa!M$6٢ed%fO>k7O옍+LFtU]]p?!GM%薀VxLQ%Pn>$S05Qm.;Nm4tHMFu?Rg c肽tdk91e7۟-i97U3@Ƀ~k_=`V':x]FV-U)*RB斝ꉦ'yz9o+.'G, lBY >L8!"zc216m'I6߄.]Xt5-8`n;m67ĂcIJהiR(oZAC?-*H[}=ը`BM+ ,u>C-*Ko:et,>gz!iȓ dphA@:B4΢}HR])~{xTghټxbu{rhc[?U `-"ɯuKwFVm?K / /`3*Í/Ů?żoF(K ضfzNB,|~SQ\+~T/6!L}tB?D )'g09TM6d[k9:&b_Y#85 riI@Fb(W~GkJ(A/-<.dj!>><& %~Moƭ$G 6ƉlmVUdPщ͡H畡!e!Sa4v 5 WM{|wC(pX uǰdp7<΃ܢǝv)au]jfrPGX^\J9ML^.2b>?T?TAldP4a|O@rl-b]:9NX3ԘyZkJnWGxk<3߽lz!4lqFW3t(8[<:dS""gLpٝݸ0tƷ,(/sNsUH Bbx1oe~_lUzI{ hjq[ "k]T&b6>wAؚXGdbj'qOϘƶm"أ ݾሺ1?̈ݭQj16kF(jNSx1qqfLhSֿ5B*αvYp yZ6q3"jpP6N#:o%1kjx]\{V u(7\diL7 [Jd}^tYzE @`׼Hd/>ADK_!;wjW)g9ǫaYEYwE rz 35*2 /,DpytETE`PD!/xGL+_V"-5yj /ᴚ̝X*mPjon.E[O;bPmr8Vv0ގa!+Nl'?xCH7< w jZ=Ko4L42{bak o>tX[6h 0_qەۅWjOڗYF%t)ܰ#!!C4WEd:%Vf.# MJA7~/9ǽѫhy2b[QŘՇZPHΟAkCio*^777A"\UDV7={C][C":"=*ᩞBGkV;&SЗ[ӡׯ*Ofo};Q5i#\cp8q[B=_t"I=cheAbPh{PpPkkE|J"~˾ |4!EGx̾hj. \ uslKF85Aϣ>2 3T"P;ql1|e.TҤW0}.ZpLy>qst& _? "3cJT>3RMsN*3ZޢQ0㊸M`y*zr5XL|o\ yLr ^m'Tv'8_%,+}+ K:v^\J>%8M0DcRCl!( ?cN} H|1Z9' nΕ]ֵc@@|E5){L;\t_9D*G GcXr#;63sRf"Mڂ ܬ|ǩ@gZr/p ̕.3o8r2쎌wH4_C$9!$/3"X.`HGyv̴|Ch]A=OLnz Z.wg I}MT%KtOҋ]'uRMD4|Ph'}~b@v2j c7쪏Mf1X'6E1D=x4fҩ~M3R .].Zjk'{3'E=E[vFjw8lM|,%='Ԟ0.m;ɔۚl˺G`tąeR Ya e~y(b1Ѓ4tkuHξExo+, +˪=UUJhtw4Wu@8nᎧMWo|hx!ݗۆw8ukjR%]L2܍dK %f_8D>X.Gn?ճmv:D"l;| ,X!Wxsz_]jd2e7ftAb[4O!8ÊeȳQ}slCXA#QỘ`oGhX9ʰ.w3g |T6t^ʼNeH:K(H*72KI[wFet<_&2XXJFvԨM3e?Zm6CڤaVpp5%?$CB{R{f7q͌a&`|?4:82!xbeqd 8h<e>C8dëVVAü|C ǼҰIJbeeCTSwy~FKX \0m{6r;, Eu91>08@cp``{fv+ՉUeNʻ (PSsyBe E>~aa#b+6+ \-j.}FW>ogajn٤4uܐL`Όg0k1F!їeP?K4iC.)# ^ypUj ĪIyAI8qLNhvy+tDgo\'̐(eX~Q͵/' k:1`8.P6CcU ? i=5rԖŸ <S GDX|4@MsJ%C_o&_rJ {IjnwI5"#3$ qshFCBxbɑ2}Ek4&~wHe: 0:X 1 ?DmSOa@7KF<X+,c=OdnCa[C.# T윴ec"K 3IeԬ=D*Od(ONĻcvj1 -e:rLj/ /K.]p0g)2ON&)*k`2istA6>k RKm-I&;L)ɊD"Xj.t=pOuUMވ(F;yfY{/Rfͱ{Դn)EJeWI W dWHY G oqJ`kʩb2s%0uO1 ;0K"$S]kP"O(/?^u#%VFgх?*i^8uk:HLC@v囀Y8_/+ \рh}bzҬPYc&iq"X &D4,V9 M%{T"A(lIC( ʏ uxXz+v2Ө7SQ8؜8N@+JgFQ)3A}^^(Hme@{ӖwM{[mωF ofʶUA[K*]]'ES쟛M'Fdb.W~.)HPbiB54/JU {4+)n@_!ylȔؚw[[Vy%H&iGSw5ī3 ׻v {CT SS@p\-Y[IQڟ#0 !מKg741'kȷQWH 輻ҍ'JanK=+Ufui.f M>yem'e)=WNl3eޅ_(ud8)wi%xS¬?`>mTo宭Z !w /gF05͠Irg7#Onzx徍RѳҞ0=۔rPYi[TI6Rg.^)aj(S_r~oٓE3Ƞ-;O. M^PX}N$LYE0?Vi))x7[$͜Z|uA=J혐>RCI_@yz(T+Mn`BX2&q59T%w?_3Ki&4 Jn6V&5*BЯizN䝻m=eH4q#""ǀO;(S(=YʝonVX .~yYr6&iZx =7a$0&F(H$w&6DB=8"nF!Qf$(/xMN02KdD[ ry[(%R槱7wMZ x${7Hz[*0 0/ Cs@4Y΀AE]7wj+b$0(Jye:$Am{w2 m"횡h ZiBn5w˧Ԣ^@WmϞOk߾LmiѤhgti 0;E2gDsSEm̅e0$/jŀ%<l>p צщ$\bc6! L hFt^ Kh[Υy9?>3 @а9cKv)Rlmogqp!tGGmGUI}X JJ(hJƫ:b:>opYnA(LS9 ' $Mncu$ČH %!C SZߞJX)bd±% 7n"-,{D{&4q{T:T63Ǵm2ꑠ73iΌNJVxgPeXAHO@ *Zopv;bSrO˹kY#)X.QtVлW%*&d6FNgOfW:Wˆ}oT0TVlf2:˒0c"LeC!Jx3h"8\Y#\9g]&>jcՌspN^8Aiǽ:Ϭ=pn.o Mk-2$ynAy͢p-XNwe QzI=XNMգ957V=j՞h#u!iQw=CFo*UY#8d/yR±YOyJO'Oc1VX.SOZD6#KnꍑTyUAlA^̏/_/EsR\4zDڬhnU7qNP}Fre|%..&V?Q*󦺯{jxH`A Pz7kl X֓KJ_;bЇև~-Qt/n(+3ۄLBsG(`}65.#Y]}yui͑Tidq" G4)$EFٍ }þ;iS X؈B ,C1b q 'f›Ksrׯ^?p9DG]akY 5#rgOOJg`T?qv;j:[i qOcARPU#."aV̧Z%>-;٩A)AkϿ P-2ʛz^cyJ0'vF: 7ׅQ1[ » x5"K[s)Utwh`)!(vw=DYdjoH"W|Q- Lhys^?[:LqINs88Y% (W;y\M®PS4W @b֒/!|k&X@SCv Hm29c"Ud[E!BǾGىӞu)6NN<oTp^_1/Eܡ[WQY7$[Y g9r뇇nf%R?6Y%ȇíeM^:$J2 KS7bSߡ#R,zG:mOx*ZAoWk'`cI05`&E}[ړևFY]<ՖdX'r:**{|PoFWH@ʩUˡHp nT48axz>VI܋$w_,rw\Ou{sg&0^Ƽ)xub=ȸni3( .mdieQiuip1DS 5( J?%Ϛv"i^rkQv%d?c}n2o3M;FzGSjSo[9Ɛ 'zJ֘_}NZo/Ý ,mrapu-'F :~[(ַNY$0n}~Az. *onlˀ%ltE6wPlT4 Rh| KL^. ۇթ4Mhɘ^ZogmU+]8BBAH,db9AupeyɄKtw;"D#X#EÁU:,\|Vl*R`-H$uմERe&e-2$8A yN7YCqv&8n~6t=l>"% ghTQ|$TA|?M+?##_6c9"l{ ,\EY/>wVܢ=V n|./6Aʥ!.V6qf\̪,KB(5"Py˓,"iʻGVVdAmҹZxyļ2Qh[bE5DR9h{i-0.wv&Mӛ]@>aVk+.G3KMڸ<8`7aJ71;7ZFr1} S|o~!prK L:o&,uSzp,t ~~@-RU3E d/bjr KjՏ\tJİ3kD}H)\;A -κ~yyf½wˣ|$՗ RӹpQPIgq|2/`6)7!w pG-|@AiA'/#uj;?HU"vJX,ArTJeAeӚ(F|ńͯ$ H4yt wpPRŹȲٛ! ò;&Sک@p}=WK[D{g,pd;yf3:։nԆY{] \UJrt2b,ROչMReį3w*ϿZݥ.?9XM ܹZ o58wG4F kc>=lty,˭0مO)aĀZsBpp啣p=j_Uv25 \7Psp$=].?h*gmP_UEQc+*LCx!OlAO3ːm}d\gmߧ)4[( ' sKV; oi,B]Y%t{nEE-6ژfP=| G$n-c-fS @ESUsr(VdoV?7 Wre9Pc p#&pIn)5(`;c (󉂃L?9k`ibIүFLx#c,d)dJ΋%.C 0ys[T_7;ٌ hd ϒtJpS%U=5JVLaj5LXjMn-ٜ]L411(qz_ 07nRm`5݂(R?End޶gߎդn:@3̷YOŠO]6 TI|`\Z:pP-O) DNEIY$~Iy\Bm=Y b ֤e4N#0ԣ;jT`RFjGܭO,;sԗXa V- <^\Uʸ'gkT,iEG"x=P#f7 &I*9hm 3T,pɟ&N1];?^wV*yN5o,׷?H͝߃g Ң)̴⡕]1`̵pY1}J,dJ<-x7?4wa΍<愓ްr@/H}sf dgƀF|1Pm-7@R(ѤtV{s]HqGRhwHg07Yh})>t6Ca#DzյHQĭ+֡]7@i_}m r0*xze],uO6=3S6Q-Z MRIQZꭣE%`;Y+WW,[\)>* ?zva#n|-&U2Wpz9uMn(L`Fh&nC qyRG`P>3efKFS!&s=?9Sٌ:.G6Z^(U(' 9}胦`K>ۮ WТ]y?'E@Js^*=@Nx *1 W]yvh^7=bAbnh[ rGt\?B:fTcshsƗ\s,*?2ap[K\ᭁ^:Ѩ}X '8jXp vF„xfhlȐsg[p w> +&<1]y#wM[x˪?LE,RF.(uO%h+`Vy,"ZQyg)?,M.;tA *F ql&1ۗp֨K 6& 5r|Ma7Pqt_ofz눞I6nzIh#)sMJ\`7yS\ ޝfE3?WtgU̥ż"msBN^R p~ _q$5J6\d^vY6 ;ujIZiSkSVLb, ̾$BQ]P&C0渿 X8-j CLJ$&md  p98A'.sWIXG 3mqXU+ܰPO]M.[FHYrL 8!<[ae< `'`=Z$8eNL@ i7E`~@y]QYfϤLNClr+(xN$nsMĵ9'q7M4ѶkT`j-8ț MoKbh Ȳ';zDǸ8 M4Qt.eL>kMrPJ"|E~%@a-f+ l]љ>7KgP5X~:fa \Ԍ,<߹ӗþ#vn4 YlXmĺ{vP?!PI h SY?G&fS :f5 kxTRWp w?NLD'w d@T?%R#}`3;@8M7-=% i7Cצ3wcvISfYiIgL]FY7wpZz;N}FPoe1'ήLYV4|/Ņi֧ёahӚWs/``L|E2AΠ!h hΒm+=Ah{o߿%ڔ/AsHU90=l6^i;$k?%7 qYpK6J]sOSp=aG$G->jx4VV[P luE􊬷XYkjUW pDsg].Ԙq',Y'C -br(Yx[Rljw\yKE2T;2n١.El֑:9 2]e:\a%Ke=R~]r$C'fK6.7,xGʽ ^YBmi2x|5T8@h=M0lb-9a&7˽㼇~c*7KȔUT~"y+sdw0+L 2\D- Uln7 %=wP|p9&hAVpծ;xǥu(} Ug ʱΠ[&hQ*Cȶ|&;PB~ЩiFe jߴ>hT;-R:JNFb4*c[%n Y(|;[L hJx}*gY%81ƟXw<^j3+CMІJ&{߁7ɇzj1C?n8'4 4~Ikw3i3] U<ﶭX%(\&^hV>P Kin&xqGN3ɡ(iڽNuϢmpږ3͆;7xVq=RDpRcJrav~eQ?\D)fFrv-͖'\fz-|iY~'=B.OQ&@1%໶υ-iTbYF42w3[n'^=t( Og S“< > hQ~~&|=^FӾ7 / ځ _$.־5[ ? }=5A#9Hyn EѠVsy0%3u/ y?Y2_/8iݰ&/9r cvq&S_⎣IfW˥yivL>FχiSoKΠؗ&fcqcqn)EG|HQw 'b g` P{{  $1# }tT'M]x#G .G5,gHFqD(0)J{OxۗP,be OկDd#vF VFnv|P>ys0]G+,ϯ#AO%wvmSEvG-[n2Jtߙ ys[-}eEr)9GX@E[n.v#tI!RqGHlvQ\M~zO/a[cG&/5O> i:3dmM) bkwJaҮ <ɻsH3jFGOa"ч'؇^n˯\T ǂJ竗n(dCW4w ?\KCDR%8Ҕ}|VBFy"ekuTdxlɮN521cCa|msydR4V)R N׆a߁u}0"UDiT nL\VA>*gAf:_|֧j21DYYml \, $Hb|-nœ翺l'TCαs4^UhjEhS& j%&bZmU߱eCrC!9c^oS*u६OD[j%헵TbSpOyR>ఐ./?<>dlD@>#!azl™~6"xf,r *yYG֕A\"|FEU]FM{1b~H]d:/` EI[S(T{e'v9Pa+‏+[gc9DB>.ߣvc9#4\5ڍMogkM1Cɑ+=y1תedd9hv;h'aȊ2Q1d> IHe ^=`X%k؄;IOױi gӿguiC:^) b_n5C&JWl6Ui /o5 8PZٷ5pB-*}n 3fwA{[Zk^ [7;m^*ztzEFm.sK5x#OJƏ\@HrRwDõE̵tg8o-rz:PVT*S4EԭŎ]uZ׀e 6iJyبPY/Ҭ-^W<sAprB+|< ;*_}~Ut4֩[O9#yt͌H [Eȭ*~}uLM.rYH0$1TqiAfbo\g(աKZpp?om)zC \Ax{4/ sҹG| !mvkE K(U*NI.oopX& _b1:@'nd3k"(C/`G@˦"zMWD^ߑW\6aP \+N_?|!ۥlt (IY6`R,AU.Yw+eUogxT+b8}{؝9]N_O9/jz^ iү-|zHn51S>I3d2;Wɕh( q!k1)؁NL*qy[j> hіw W' ֥N+\b@)7jq\$o~LTsf#kͣ訥J"4 BMM8c$ߣqz_0z_}>U8z93kW^R aG$~<De+,8]A1jhl0u3f1ӰEc7O(L;hsT_/#lu{^M#VBNp9W6@( @PIG;Cu*e}r~B f}Gl'ه8X:Re pR>wDHbeK7wyJV KLl<5ve^ۗe#k^v75ĕ>H8~YmBcv֗}C|23^c|W>y1f.FmBpD E)cp~n)/SbvhD$$·QBN\7Y'>WHQyS_O7,_2-2Sqe!ux.LIqΎךq&PͶmaw^|1|d%)70!c췯O8ʦ68f$+ qdaB~w ǞY|$Qa Mӌ,ØQv˒:FEu5ѮEJ_A{ﴸ>(H#:xJشTNVk ҄G݈tAt puFl'-$ %PL-GAѡu3)#6%PQ4]j5?ZXV˽&OpH4zZl`E-5 |\]Vus +UVO) ߤ摜j=qgfXg=~0g@R x'̝fZ J=|wCt9kߧ]$&c4@bDjm{Vh(o! *][ u֬z"k yΡwj!OMTEOOؙMq>]|;#/$KUWmYi[Vpa7ؓKߍ-xvtLNBג_ѶE)M, !6a"]tXΑMNEE=S"@ Dvk6 j}ArZw~~9B7CL~n17Xns#_+RT J&G05q`@Z]ԳUpfW0#hG)I-HP/ȍ-xV>t|~A^%Y%Fd;[>n}{ ڊ=2JEVw%|qcd[B-ڒ_Wz;7.&ԩqYǚ/"_LGhyfp {@-hfUED#^t՘BmJ_R7'0qQ} )Y|v \AfU!4gg_lTp+'kM{F94}SJvɏ0Ÿ7DI3| |U߼}wm9Ԫm<2SnI~wg:}JOF ]JQ_kG P};W 䣀-|Һfэ!K6 D׽)Y2ō>:KTK ϫ}m;xI8Ɠ}xh}ưOڃ༔M~׻+<f2I$3Xp3\s욑# j+g5̊%A"[Y!TתKrG.%[hڱ{sY!*C 8,´&/!h>p̿+u%p=`F<Rﱑ^-Se6$ȟ2sޚ5!lNʈA}/ԤZG)jCE`Pb0+ X`Cƞ)Xtкo vZG~- !bZBJ!FO4^"R$swyw6O?R.^H >QeĂle^̓muy JDKܡ{ϔg9UŤan \H.-*|S].>W;W&}Whi}fJXt;XJ3Ga9=n M;vEs׭b{'dl_2ߊ U AE?;ɝ du1X&eS{$(SP H-#~ И8Z- kgwC0YTIK%;c*ם v5hMYS:r&ֆ@{yŗyo 2# d~y!INeecqcm1YJ3Rp%oo9KPERM4VMzc|-xCX_CMz#׸Iu*t3R)sVh i$E aQ:X5Qۻ, sGNn)0;qǗI-  ՂLk>$$;Kq8Vv7NRT]-*$_ VnǥRbJFIc}8ϋm_Q"V@jО֠neB'J`\wȺC툁%q͔U)"bO{pqc3*ַ\ݼG֙I6~uU\k]Rtv jR"-C[K[G+'0GXVgM^hp7zIfS?TY24qiy<[h5SlwzhMr‘";4#݁U6)w qNgǑ{I+0~W85!~ *k!1jDY9sa*a"<1X`aLUk S&JȢ@:x]F*1z*s7ƴe=p Lx1#)Dg~tDWzj5`/4x$): 9;0UH7cD2Xjx- 5AN@?edkH_>JK`o[V#F Yn)}.?1LGRʳ"@; aɱUM೒ض W˔ëc8X_bN3LxDxH(wWjS)$9zUGa8' J^'w2%XeU'8犺IG8>;"7Ta`/lK_e~oױdHzb G'3.QHUe:CƕQѿ_0!k,0X ~+%] +N;(ӻ?.-&~xd -ԉVb$UΝ_j0,2u;0dd6vyчYJQ-Eތ:|ՉxLjj=;}*6 P\"Gp ' 2İdͅJMDFjx&+z;ęGOJd `o^D_\iM(qN-mV`IuJލrB;lxT[uԿsZVL8Y1)wwmݡbKA> tv2PT%UƗmxV#ܫ-u`UηW/Gϱ~TT6:TF ~M@e} ^{!k-Bz/ (2? JI]{G\jdBꪚmں8m]Cg̰ 8&OH4VȡhB{E vMW9HDž.IlO0f[/qڪ ]_0@agjez_mEC U_mP:ƇB0^W ,% p_/׈ `\kEFc+ΛИ9cݮPb9^pG]vJ@`*Ges{p)$VN$LӅque)e/ eK_vi $ksF5 Z&$g9,M]>Uهs@m0pM6uP5;)ICtN&bq cF9:& -fZ=1|)NQRa}:(0b{}5ꦂZweeIEi6_ ON6z g\-M%R8&ay" J͜Y}ǡD)V%Yc&{Lh'*=tw?$ȠvAIS '` Pg1=rK'؇ONK_]2nIOW+uɖoQ,/0*bo~!u_'N_.}Ԯ!X>NheB! #6zz*?;2Nlۥe}'Xd%^(n%/#cʖJ'[+d%ry'aDuʼkC놕VKqѺUH~jBpGK A7-} p/ qxQdKJ>K{hzV|~'Ti]FF&A~=t*#H5!#F:w2F35aR\R͌3V!7FT!Gz1mV;EM#a=aBAq3ݹM=g3ɸoH(0F[<} 3i$% ]5;2J?/7m{a׆H@)idϱPU;Ӯa_7"ܷɠ4G͌*'ɓMpfXB8HT+tV@mG L1ϼ?{+zΧFǍeVQ xWEѲ} .ۍ5幘t M<㡳 B³JMgqo1.u#Z707' /"}o%UA)XS8B恗e~ ".*xxQVP>.e!-4Z żh$1|jF tCq55` +UGaAH}UR9Yjhh@zuPf{}TddkNDk5>X6:lRvrq#p#eMT22MF ybIJy ϜO4E(*>BœN\! kAPVk` X)?Yț'/+LG%-%ΫڽZ|ZM  =zLSU~q$j  ݺʎjԘasw#֌pJz'P/\O&M<5&G riL|(ƹ8m_pJ[xoʹ/[җVJ#:<9QFfuV,b\|f$3ܯw16vE8upWȊZ^2;[^>$&$H(f`+'=PSg 6pE5 OÒ9mՂO2>g3Pukd62s:@W2o>GX3Lw=."զ^I@ͷ))oJ\A>/hlTڨI/?Iӝi'fZD[%͋'=$FAGoiŻ:/3B>n^4ALcdommİ<eKѫ=ŀ`15[AGUkHU`77+oKZt{:]H&纛Rެds{ WfORI`4ZJ%ݸLq'(Axtn{Q݄hܬ)#0lbc{Fr=#rg VB#h!,֞ʫJ'X~Iy'lll[(4k.3)^U`1/pCf}K%X V;mB4dS#g .כ_rmOT- UM:nj Q1gR,7扙SD)9\yx= jx }ir'5&Q&s1R!%@I -%cYsRLg Ɩ8 1({s&`PU !K qq>$d\ iМ`js\>ݷ5/HHZvs4r! ˋ*JʛDGè2@oc"UR1,^0"+[{kEv-a5 ɺU`5]pKAE֏ZCV L&i aZo1-q7NZeܶt|7> KmJ~O{Q\rBWL(P0Gq%猕ٍ i*S,d2}q.\2iimz^(iY=VGʠ߼'my5:l+u$mC5/X BC`BKY%Gu q̚1! K=iޏ\&xZ+e1?4'6*IZYXEo!T0eb"c(c25&}N\A xRX?9K`[F3]oKxvLAwkRK~|\%ۡz0PF30C@ &; I[|.̟Ń[Q8 ~ kRC8SO&G!K|SbM2Zr1FC:oupHnőF0V Hn5pȳK!ѩIEw+Z/&.bzt\'&q|y:ކjrœtfFۦ@ZE6n_R1Zj65IneՍiL(q#t0jco8𖍱]*шcH5Ku5^[p>a !{V Q@?J:Ip ܷ/9Epv0"lmï[H7FZri8DGB}[20 i˂Z~,Ր\iƮeŭ.D!P&kf!Z00*RoPz]tٯN.)Vj!:g&vʖFP+7YAw{?/ )')3zjl˭n/FN;ʇk(+pb. 76m UTJ_ d ճK|Huu|.Õڂ`Ze5M۷}b5E yqUq` =/k `ʳsibg2:^1 QE@r ?jzkM {P::IxW}v쌗]$R ^|ʾZᒆRp9b-kbXۣP6џ1| |٭dZDɕG:&lվa7!9q6I T)^k!ZnawT] !萂>GcS Dә00VG=ק$*:/郯htWQX0ABg?bi#0;J$]PZaK!;BO/nYlH_bӐ%o(,)'D\;ueX2+V40U,Z*Ӄŕ:Թ ~2s.FZHv?XEF΃|oHe$[l#a:9)[ ig$ ȴ>:54!Dgr7=G[#&i`X r3P9ң\5ŞQ Pe/; EWثI!.ڽofwfN(琡^D+%kUAY=秄+ۮYޛ5u;=u=[Z8ԊCx6 c7dҒxYswiɰ.c7a1G Xs-Go̚ul);أBK@6tr+K@w#9.*,pV\EE?P_JK%ʠ hR\P ^q:,XIff!C:ӧ@GיKĊ/PpeV&ۄFjZfa<y{IT4J-5I;sԕn };M7a"SyJ5ـ7%{x Vd". +Nב}mN0絇SFi^a:u4UM[s븯` QLhxϿ7ev5k!%<дAbg9a <7H~?{oԸ)^N<>4gګC;߰_:ǃ4o1Z"'('{\)ItA@a@lʺ5I-Se}{%\ܔB+{$#Fk1t35Na}-SK"5ER[Tw6E^䯧H߳{h/4)v2>r;?Թ.Z )a+ȣX%ie9[-v׀h->wj Zey^#;NiCQzVt2 ?x鎗88GdKaĻQrWOԈANߣkt"VIGLT;mxVXl*DRQWjctc4@s]wtm׭+ (nFM1w'GP#PMVu0V|y>Q,ԛuv:w & u|5Ʈ:yk>' EU輭\f#ƕe(1{ Y?t-Ahďzɳ6G8AaXRT 9"pq3 }t&S%_ZE5[ݿ(qG##`Uʆ6dvHwGn~ HcWiNƒ6>éǪSx}79J1QRQW7ߦ|MYV峝sI6|0kF[ ۠DGC-NX 攮)8j/xnЭ5-$vC|'"΍[R|ڥ u˅@`8߷TѠgx*[eˏ !ǫ؜X:}t 9`t7v'xr9a' )[.ۢˮpщ΄䷌|-# #ӐjGN^Ozk6 .DK{)['FS?j} mMh q (9س‰ =>a uٱ6L\dnrM܀|lM1zl"Q,?gjwПchUܨA+&%6哙&Y5i+Vߣ^]v㏿%^ICgoǯF8+yYŕVnfF\ұǢdုsB n4Hl߯ !%-#܄:Ddo!4fvxLoby qۓ Ap}N*Y`sS YJ>|%|0TLsm \͙<&/BY{3jA`hI*{;fnT4(-gUO3ý}so"N#mH42}[, @[ci 4Ze7a.9 ^XE-nާQʽhC_xe?$$. o8q}e.ԍχ∨|LD&&L6+| Cvom머2u{z*ǹF6+^sxb>Vd y;/ܼl'~5^ u+nq0VXJ_Hf)fa=!9<؈inVpҮ* aGazTqǩo>! ER[ anKX{5¾0DIiKţ _JH0@]>`SeUnL0Wu]¼^Fl*YT43j4q@K@ nu#n^"eB/\+̐( A!y嬦9Sx\G*p3QTȋ|gK׋ac釾k[жQ́3폲7(VpLǵN9[ k-<_;v ׷ F{;t64e%v#a$~#OӅ C,b <+ 4iVEANIJxVwZk" KnZ$j@N+UykM?9y`4*R6g\*\i6 W='*a}Tɉ|gf+@|!!wNΆc[m5esY.TQQ~nV xjKX=JHێ.ep)O܇E6&lFiZ[!^74ĤVqvexW[mH3Ǹ|!KTm`ɕ3Fĉ2%wȴ9@y`E÷f6'GKMڄ<(0lF&H> $ }opUK3{`}VT6SވFc[Oಇ^S{*_wL[e+O Oes?Rf0r"@k6.`*w{uVsvQP"S+z 1?-*7jN%El nydހy eKCR`D5Pts{8_oX vE-!&Bq؁]~WMS|L'H3UZZe !2Ǩ AB|NKúfF=G4aºƘlraDkCќ1KV7(k`忑oLkEiVӳDZW_FW 1TkwDTjjZ%S@(\%qTh; XLtxF\Tb4=/qd *udGvKc1*ߔ/|Yh(#2Y\7 (>B8 J=#YCG%ZWZMQѶ^i,wLuBs4YYM̨RI[ ~M^*y"YѥWQBAP ij=EOÈG ⤎ r"CCft9czp$3J@CF1iJehqy.FY'g\A[2rXǦ8r`B^zN(}Dn >gY"X̢*JV7=}$4gE|Z|ڷ́y6oA&n [Oܺ{]p'SJ"爧<8o10EQ__Q-Tڈ|#z58 $33᷇b0AQSQ_&W">bp'Xɦ`7\򩬵ݽ5Ia8}@d}H : *K kz~LۂX 1.'.9Zm %PnY7_g cY$  {ofnMϽCq {˜t&n8i@U6N(`# 7%#\,oj6xYi|ɸ\#{4}P0nmcי}ZD`^R8|9_)r7mÝD &U/EbZql&ޏh'=>ǵzuK@'<}h"5az+ᮃÔR'{P(b [2X-GTX=t鵛_f28ݎ y>}e7a5T0Hu`Ѿ7^:N7[,H VSP}P*EU4h#oYX "5C:V% k٢]b&L?tcZO(nE|G :X4(S`rzBm-,X Mxy{X@De0ሌpaw@8=XKɬ ONg_(E+`kSP ? j`7Gv<NX#:Ы~ķ,n#:/r>Qfɒ}}&S0:5oaUPuȦtל84Rc9r[ymwB<2}y!88[VkΝQabb !/7ߓh 2w bC)v(4di ,(n7zRo g2X2 B59ֺ3uđu3 ygU*=^pYAwc4`=pck>Tylu\2@`ihR{V^trǪ+Z(Îƪg8g-rDL +d>̺jYEFe Hf4&NMj_òU_>)9 [f }{?ڱ+l\z^, MC^)Ss9;yOS٘-Kֈ4;j/?vT H/t|X)44 .ݡ☩h3CW I4n4>|S<[dd|Fx #@Mu\h$i-iQ`][ƫWP$ Rlu%H:8;rlM)5R Fx!JPhg ? 0 }H•߯4?|޸~'{xrL>ɈL6nv6{Ӭ;@T\I"J@$jBd~d_i:ΫH=rkB+hW0ŗcτ$I>̅hCo-,kQES 0?Fxm@J ӭՙ*P8´JCP/&Jޙٍox!Mُ7~ 0Ab*I٪x{vϘ#u9'bfvނmQ]ܕwkpbw  ObH8b7;%[Q4x!XRcf;fFgxHqÚ6u܀+8֖C4Pe UPu]DY޵LׇF3uT+<*)\?fmK䪥(MO7|c2 L ?177dg&(-M>NCk tWs}uS؄DE iD 3z~њ Q1^]LC(DG>4,E=õbGt`O_xݳL݁ܩe8_. bX2AQuL.dna>4o }ӕJa 9Z6j--isUCŴp 9+Ѻb1ܚyqWBeW8e galOrgUEī?<0c2L"-tz#d4$Ob>PY|X68c-aLP(8’o$@qm[r >Wީqp%OB&NWpARF]lxٽmB2CMemx1omSe{RD&_ ܆w}zSCDZٍpsR@3F);!SxT`9PF;qL=xN+yZ +\]H)[RYDfd5GS(}|#*a-hP]҃c/[WQ|]V5rЗ`<cblަ6po_M {qPӊ O-~ tijKˣ u6+t0'bBˁ'VL^QSN}g2ox}ֹMfEVE]ގvRTUK_=͈A Q<'EI\ŋ+Ѣ- Ph]E)l1~E҇q)L 6;[q&a.yaE՘. LΥ,_yW1_jdT* Rp鑿B/?$ :bU]B AVg^jQF";*bUDsʢԽ!$56SFYJɵIQ#k?i%v0h_Z436K> L62:8翔EˍL:5n1J/On~ʴPd^Q/C:%{_|N;wݪ _#pǒhuYqrlGc W] з= T5duz47Y%;[iZZ>Iy.vM`NU 1[6g{*U ׏LM][AK] .JTZ _膅ީmXz&A`vW~BO>*cAA85&w@fWElR[έ C;}w](m7b ?Cldy͉gWh!Σz Ǩi܋EM./,ێzh`|N`ug?5?N>6E\* 3Tk Yp4"鶑!AUҧrwJ^wDMS[JfiEZQ/8ᅝΈ5lqPfO ! c0[N"$`Z^vPc>;.t;`#Na +I%"1Cl ӈvS@<nWDj+ڔe, TЛ;Vh¥^vI_pH{ NPBz'grIiñ4Ա zL fr֦k*v= Ec H=ng #L.7J&c $T }lrVvK̞z+{zV:Eߢ8`Wp} r~NǼuĈ d^b< &Zv5'g0TAPw_^Ӡ-wXWƑ)S3f؟͋+u2u5%^2{-{V~| "BL>*>#Ǒޫ57 bɄ++8.^Ӡ;̈6/ dIb44z֜}uAUƙ2dsuiYZ#&>bmҟ߯p1^zkMI˺_#fՃ&`ҕoRć-gFP`p|c$$?ԝ b$PO$H"W{c`Oø˹bPB{Qpԣu@ \#<]Ե0X>)E~?%_gGFi!eU~wD(s" ,d:u+ :8kd?˝(}q)2DXys\1ibZmۘ+1@)<I9*Q3ިͮ}V"wl2"'ǾiZQaGįxSw[kY=BK-,dG%Gyv9,te8:߷QlV~*6fvvL^RJl0F@ofq@^h^$q(_\1/UMȭϞ C/Ezgaw+cߙ ''} q:qoN\TT*VZ} DT.z,,>?nsb8 &Xb񫂧K^Iu"-yK.e#`~ [@CgǗY.z"g*OQKX`]#OceD kV唺q';Q ]e-+2>rd@{@P߲|cS_>S3W4ҾBZtwmIND_tEV/UE"쿽ؘERFlDY}Ŀ'mL3{z3Wjڑ غ`k}NJ S/ U$iy_f`Kz.UHhM@b.Yȭ{SxMD3>Djc.9ۡFb{@ 7y=zB4dJ#R8W478fc ڣk9] ̖})]ONR+pnGt2Rx&Xr*'( Dz;q}9_-$گu86K5tB*bL<8K!k}T9L,p%|Jwм{(,a*iF&uB*>^_GIHOUp/x e8"Y7%XCT 8U Y]997[T{6AD@:Ma~طQPjP?CQ{h"m&g¤yjqWTe@թ?P2;a/iOїN)a*YobC >+ƣ r0v!ֶY˻ߣB3e>nʇԐ+X^js=K֣xD`*џ-JdK *? \1~vw,u#K[w#U0DNNBֲm%t2Q̔ݻD=j8ȣOB*ޑO/ύFduR]Xh6@՞j^a%Zc | LV GvOm蜺eOd_bAqIo''b7ּolʱƗ!+ qhq6b|l< cB! )mRU6 @yxI@8WMEeI(vR\ eNbzlB/ Ztwh[Xeש~)sגгQ_ECoA.>4ښ\dOpm<Ö@F0k#CR-]&[[ƘkzmѺ˳+|3Q.֞}!#ǻz&F:Z^Gnnx̿',Z[RqPE}|z?SBR\]h%FZTg*X6ǒ|-pQwxloF4@8.h$b˄NJA"$Glgn=e'+ɲN8ɶ@w*oԥi%7N{C^"<\ӄPH_"zei# S ?00G(W͏@~(E *y1UENt-J%_-*qK24S'&fSmraYA0HxCWzr@ l8CfaQ?2X;JǠ\:pz1!_L5Б? hI W JC-k)TjmO,ԕEaDV$T͍vBӡ3xcΰ#|\]`WSn]|TT:Suc;~_v|@p|;w *h&!K1Oy= n@P=Π_B]EssLq/[J2*g-mLT ZV8-:\;`` 0!?J^>#^q#bTRCw[ae9Jse>h{p%mDZ)csdjn`nSM}r89oV[eat5I1x;eYxpP*t;b1(Z(=m*H]styT3B<x SaZ(tYtS^Tgui pclE._M^1H0:fH&8i}85{pz!ͽ"4T7ɀ][Ng! Yxj2O/!ݳM$Cl$'mX?xN+T1{pqW=8rl ]٪24 oe *U,bk/ E  |3QjK[Thtg 1-Pwfǵvb);gT (dUu+ 6ESg6ol7CU R;Z*}lS׍dRS%7k7S < $zvo{bQwպBunboc+;V|?ؙvTֶ0|ɦZ`}N;>Z~cO Q bJ !\ = z6 &FH33ko&!oi͸H scG:WqTѿ{QƁumO|+z6=E$u{@oݫ45& x!/fr=rg rt;~HX4lQ(|!ۃ֭V1Aw'En"wWrǻey6X-CZ⊽ҏm(5jD -w=6{J-@_5sriP$i[H;9 98҇Ɠ@6p=A;gM[ƍec`$g[9ȹm@qUł&a;N͂v Rt* ;atGh2g{ ( A͇cwEz?H$n6{ RCg_z!PaÚ#k}Ȅ\(/<20%!۫sg-JT#۪{7fKuO|s' Jd}K }`b00c)a(+ESO@=rGgz+x#4ֶ;pbm%{y'$Sh3דTi-F󺵌fw:ocV$;{҈ j= ˰ӷ``y_QO&?{.Bhh5nnLi#QuxWū;@er=O={LI}koP} A/C$[:ٹ2]!Bu<{#>6,="Y1snŒ #~8tbӯKG!)!bf5Š4_/"჎4<5 %[м> 5T9h(ύiTpG k%hq{)yn~f6P2Xb P46|Ndzhfm%vu $c g'K7lO*W0*`,j:Qāst}+ӂ80rA9@ny8tٕ+!?zapFRsR(a*Ѝչ1&C6 f^ǔR]Bn ~ۓr7LzCPLb{$Yi{ؤ'jy Q~[`o z}Oc%>ayJU/l!e$R,k=K8,;fz֔mv}č\NT]~l /-KjC^jڃ+?H3c".! {IzS PغA[QÜFm !j_HlUS {y g1.OҪ͐t2T*Re}cE&=}]DK.W K_IܬT׸.']6m!dxgwEJ^O'wx-mb7@ B^'5s۬9B' ӿc^w?͠ L԰IC˛=;Tl W]6UΗ9 P D@Q× \`֨ 42*0-2y ]#a*{Z!(G񳃖y 5y{w؃䰖yJ&f\#D90λS2o 6j߉jM "hWMרs);;U3F71 Kh9weU1@}+=d Y*LPnd^l#DxfИ)uFӉeg؎R/dVu ZdTA 5ۯǎl+Rtu4nSt[0zP.5MւO56 \@6zKoQb 1 ut Q;`ݙ ȑ  #e}hwg^@DgWt߾l& Wquʣ˥,iиk0Pra씏P<FM*1܃XAv^8&Rӎ3X)$C;lE[1HG}Dp7{z8.u@j=0k—J۴<99oj' GNwX(6GNjhCݟ¶8bJci+:4!M+A]ZܗpxEĶ7@®)5[LbqQ.=40Kj愵ޘACyInm1ZFO3W6{Qqڔ1_%H!۵| SgeٻXE}?+^v=! Y`}f|>և4PX19\Wuc2MʲB6-yf#,+hAΊR 3`E3^@k:1>ƻ!A3F8i ]}iFfk= RU % ΤC~xG6DŽd/[&1y)+xIJT3$M?v9u@3".aH#bh4^Kg)W"ԲoЁ./g6ފNZL!20UK'Z[RQ,2jZ5Y B'-BR Q@>Ts5lA] 9tiJ|OJ(b,: nktf9shF6d[uX6$uQ23' Z"G,mGg[Vq%0{{- )) O;x`KM;>N~wqOW!IFWpO겵KDӇӽF~|c42ŅvBMSJHWʾ@Gn$*ZFQȬ妇}zK5/`K=d@*35PqJ82hEQ|ix$I}^g;!=L7gsYɠ\5%`af܇voJFͬjظsCv^dl?)2LHU^JNJA ʐQDI 8y;+J@S?:XOSʵ)L# 3RLNjTU \7 8a>E6cK~8 fr&xINfKU▎id"Xa6ʘ`!q@h MOAqdnb~CO鳌\\mϚudU;/ׄ L&J|#/]\؛ԛP1mObXCXW-f ȥ:FM"C( sL \rýzһC+,;}, VDffp `X=ILoD!$H l%{ Xy-=kEw.q-K#VbI[⸃r񐈇_#9Wcx cU f;wxoE =Z=pHO*fNp$O),>!콶oERo{juADscfUbؤq O웠nتJ܎ M8H3U_w^TjTeV%ag0ꪒ߾U8+ IL>Z1b@Da@% l@ ֗uIW*  C: *.Bk*i'# FD.~Йxj}R -$ hdQ$âû inѶT[Ώ٭9FJYNg D&J8F7z3"c0l'ֻ$S\l%,`cӎKx0$1"{W楊cyNt;保;pQ/,YS=J_.X ,.nߧ/$&ىsH 3&Ԝ֪\^N .:a6Ź +~KORØO7jh]rCMn5TK H2=sX)+(C 1t"f_+6l#!UnwLi\ƖslH96~6ν7O$K` nǷH[*Y^U5;^ Mf<_[>B!m .)>W;Mώ̊l:,k,|J1PgϏF,9 褮N2lyIx4h#X NJbM~@>顊'z'ިm6{}[BQe|7Tpeկ˗)%-N̤N1pR"v`|`Х Eysta5|FNN9T-;6-zՊ n'I%:tpIf98_ %G/er{Emi턗NNT1HǾ\)v'r:ȏu}%"eO}a8[2Ű]rx7jXzPPε D]aE@ .~ȟ}ScqObt\KZY;up*G&F$q@x=DJ8ʨo& 腂Nټ0nGD,F!QDB~gk>?V#`C'E=4]}]?GIN?Z5{U}߼Z U:??a=wCLY[o/+b_L)h2i5O ;~{A5WO&O<[+@z HYtqɛ*zw)kWdRDڥ\QF}Mj[wHRTlN#Vmuf;0gZ-0}og9`J'$eg{׆qtjyG= qhO!f};]TO ڛh.ւ`y~- !'?r%<v걊 vc8zQWa,i:({Wb:lfSKU<} ` yPINZ/afe6N~Mq GOz^`(@MMA $bܾHv"ۿʸ=4,PDbQ>7.iLnwGIr'|9@ !K:qC v>{} n&;l;u HZl JFThy/P;se RvDhIt Xp ~͡6Uuzoʢ}8zrd@qDwJP:ZcYa_:~bG2)9%u6o946w7Wh2Ϭ^?i,S47}/ej}/IV}rqa݂k$#.B*LcRX۞DbE&W)9 锂X>xڤHơoB)KCbhgK2X"г'8C@xMKx#֯<"=b֘Kǹ ba5WCM7U_x3BP^/f> (p\aVyj)UOM Iɿ g6o=^S9 f$"}aaF165^YuΝw)֞>=І 8V->PU}tam{Ȼa=7iܩxmS?VxWHWGixh9 *!M2Y̭E~p}+iE\`:_ !wJO5UǑo۷Ҝ\rID&'V̔ē+'c h)y>:kMnC)o?NO [l[mCuۿ5Nb!0s~ycƛ~@Z6J9ĨI5+ p ; E/:7,ZC$e DIS\c*mxR(f+DI2*zT Mp,B?:;DDex;eZv-ޘb77@tun,qPهb_aز=t~xTLW=']rB nWLyqGazLF9 [©Y %|'CY|ĠhX qu敺TʶSx*D)9ﴤ7BLȨzvÂi@갘.I^m Ӆf˅I U%O6w,XfcX5}a[3p*O$b r^Y0T-Co`ԫ%IgN$"wWE4zK~x`eDG]v^I TVBWՠV99ȔE-$-A5DBZL5ܺ  e/=Ɲ"uM27W$>jK*]8[2aj a|;vsq$naiOR:YDž6KW_G#?b MDᭃ~P 7! s h8Ah{z僻V3{Atw(Gt:'% Ҁe4NoEIքg1I*Ƌf3j(~i7>ŽS;xbXa&q~8km]aGweʗxw:(=:R,,QMն\>.(zB1x0g(Iyc ǩ =9ə{eH >X+eEUz'ۿE^r6 [}&G:NQyNz+`Ë,MzP\{\/Cnqmܩ{@eg Z91ڦZiKn˙Z+t\ʑ@ADb'Pqc,Gi0+0gn2ӸJ2^QN n1/rZêEF?jAp =3|GPE䀚358+ {GbRBȌy']IҊKYfm@+)1񤚘-[:>ʡ݇xGⰢ*l᫕|&UW6D?Ej+d5ƅCX|&ȝ+RPG45E;nHe1 yj@ee \E_dl]fzFV \[7aF6m^x;LnF\Z(\HAE-c;Y_{<+R%*Ħ9VcQ$߰'8e_úZo||.=C+Nx`ǨY>2EtInx<}p ʝRL+kAͶ8Aң_ #5|*焕$%Ƃ#= i%E2q6Ù!GXCTf c(ZRճ&,&֗ WZ&-"5֕-Y\ۥ[A S(heI~P!q Ĩ$`W'ry'C磑V.$q{ dYVK1_Eҳ%>xlNF-f6(MQD=+QV iѸD lÁV?;at8vre}oQn&Oٌgg24XO;tj<*;[߈=DZj h@2K=`)Ղ5K 7V6{А7UI몛\ w#F9aRX.:[3:xMtM(9,CPm[yeu'N4 ocL0s?&^<=v[ٱRnހnzv[!0̩k͛$D=3Ӹ)UwrvY1mTg |8pW5AgzD|&־i^`^: yZpAb;ut)0Y8!*{wd&u2VBbJŪX0(WA!$ՎD`.b_Bdzʙ lU5a&Š Q[S* Y>qwm^.e\xʥ L)b0kX޳e-}&eQ8*2MXt__c#`|QAV9+̌PPdeoeyFT 9jxk†oH篚6mfzfh F9W1h/ /?v{#3ܔ}N3 v 6-zt=Z.wyx,L4y>Rp2v F8mӨR]3eM(X 棨6 A_iR97i Nd.c<;n%6&j .8f :U S~J@ $~'5Jdj]E6xGQ6&x5Rbƚ7}T[z>E=5& hrKk0O%nh际09#PO,vASgǑ!D%鳞8=Y(lg 7)~4Pצ3ߜ1"CPHq EI\OPB4 HF y|<_]~i x+7(h2 &3~ju7qéV[dLtngvJ.uc܅{nvtE.f|n:=_lATk$*s:9^Pch]sv*&kl}Ѥ6n[G5}$v7v0#nXHb,R2P_ ,kT?G5},:s)ބ 7CpD}#%Mqa9a)g$}e[Eoᬫ[h#H2$a^H*.|,&+kAB B<9jfx3ks0R}l*ݕ(!фApYy:n#+R LBaKAފVKuNBW׿I"`76@q uLA_TWQBji3ۆ #FkY' ⍪yRhN7/rlͫ>UGN^\|,ۣϡr 14-N(( #h C_= |Qdž&9#t^{t*ΈT?SV0[p}Ŀ|BKb\|anNk^>m|Z'y0t[3)gV9z#t'!HIa,s'6jx\ME&3k͸Vèt;lEc?'`V#SU5dvCe\2n2Hn~K O_Ë!sn8֝m;fE"쁩XrY1^-F8l*qGQw;=$>d$r~aXH5USLB"YZ K4K;[.ճO1Ga:G?|ш(Bu{DIw"Q(NU#xdHzG"rNi1pAZ&'2CفzeJ1 M|ܼ&˭lLN@(ˁm)͛c(€؎P nxK-/{wI/H3m:=˹]UD *OoԒ͂Rܐ a+|>j:%" vU :Rz*RO c:{d1|I &##llbN#c_$1Sթ5=@UqlIbZn=#ab$Ɏ)d3Tkr,L*52Hj:xgS й67Άy8.\Y1¯^+4d\*bsطn";i [xY8&B=~LL ٰ. 7M32r|a;9c\F‰wL }ÃF"duv5UhC)XqB "GTnjю/=w io#05'hnf0P^`MW(4{E'm݆}>#`ݺ"H[o!}!ݥZ#%9g JF"*;Q}ALgzJsXiɜF,y:NZcůe^r'Y#ÜMx@ԀTP c(\t:jt^RF8z Ůh'bُj=ح[(kfQ1oh*ژOE$9wAQ[qwivht0$ڇ{@&7LZ,KѽO-c 2+t=6q\\o)q+ekEO'G"u\LANX>G>&Xf=BjaaUXX?[kw l&*ljr%0+^iaSaPuH c?g,+YIAE*c%S\+ppi[>(K:b()9N`Xgd&_ۥ&[F|DS#K5ֻrCi VҒ|?] VO|Y!W;>֣lllSv 0`[;IA2 f u>GzͨI`^ yz ,,PA'ƀ yk!PTvP <9 rs<eW!%3B`&E-NFd@0ENmehU(hlXDV`HLz˦>:z3b kc5Vʉ/K-FHH+L`Med>WHbtJNC vS6ͬuD0 -X]+Qv_N`]7؍=N[8ņic$ciztK)*lPc.r@8R#,tC%Q-z }޴&}7 %'%X,?d$A`zߢ~ݤ!I7Gx~Z·Z=N;XrҠەTE<3,K.LSD[#ݖQ 7 >^8usB+&I ;'ᠲWe -NhR'5E@aG3iY|`@zl|74~^=gkՉ~efEgk 2^ػl9w)Nh4psRy8 )}="D\tY3n ष!iNhcP"zوG i? :JVٳ~H 7EY_W0HA:-CA輜$ly{Z4 C#Rt5#J``|pW'P iNP/Ot~Z)A43\{KOسj@11B_r+a0d?bR^X˖>O|g{ڔh$=y(X`ymzǙ!<3?ñSF`gb_}UkEy^h0:w6D$5fNgaVRv,8JP`%vZ<NB]3#~^ ࣟj w8"M˰/#] l8_IoE WLB1h*2[hTtȜ~}xoYPN WT(((l}X˒&ڒ 4{"(~d--7.m>^7i))?*Iv?bϧG93{[c=Rs4}Nvojg~+VYdquhGk4̯|3#a(׉S&V,Vb?f_=H(j ڥƐnUJE`?T!?:5{+{"k/u (9*SZ$ @ Pϕܜ!2L'_jLVKdOZ?+D 8PorPA">lpXZ99rӴ  uݕF:U)9k.U!,;6 b[SN@kmw(ŇStổŚc{Ҕj_= hL1m)ai UFWaU{na[`lfy&褀,`:+#oHnA.ct%N?HIxoؒ >^Y^*GL\U dCCqv q| ttO_Gt`] 3s ʹ}ͪۡ ֖q_("8_QsR;b&.[Gu7}KcA[s YڝrB HV,ȄxE3STJ5q#=.B0AQQ4p8)0O?k{gX8c=UQ}2`f6+Te &ŽmtS <~J1H>pu?fe߼}hdCzm\b~-07`{&¤WE 1G))]8ƀ֌9&~G88 tl *r,Mcգ.LWGGfp]ߡcn!  xq B\7jb) &"nG=#V GMX=KvC9yF'{Ǣ=Hг>YAboM^ Zmҵlk|O(pʼ#i:n`j/1G%OZ<$HHMqO/T^6Эr;Ax/\FآooHǘ)*mK(c kai+l?4(B%B+Zy8zV]ouwBg'CAY @̓~h¢>F~!3]q) ʘT}w^ @ۣ (&0M&1DHgHˡVPв TSLΪՎHZ=WB~{sp&ŞZyI{#kJED r03WWb|8YNqUJSLa722YfJ`B_“`W b^Kyr}mag:dU#-':65l@ߨ@N{3٭yAE+&'.&ƅZ}WvfW-o> !:axPĿ2_->JQÖHĪl~ GBQ9@ka,"x-M0E_D6DMx&#a%4AO0^DUT!-·Q'P򘬴C1FyUّJZJƁgخR}|Ƌު-mOZʡ֑elSVuQLQCqgRp{ EZa3bvNX\:"ޛjqa=o5޷j>k*oY<>Q-'ũ4/b..~)WYsX72"Y;grOcG$c&jˋne3~j#''rYکfH^[}gyYre^npx NVlY{K$LZE5!r,{$nn,E->CJ(ݴϽA wa^ĶVDJ*_їu8OC$ 0'Xv_N׌0< B9=bWE:qE-bWj.BW<* Ȏx)k}7ݜռSzMaJhWVAW& B̻[s-PJdUd4Jۆ Y 3whZ:DśSycQT1nlti#_VySƤu1uF霋(3uΗL\oHuecs9}uGu130-`(-wEmG-?<}O₻c~qTd$ %|>LLW !kL=̰;'g~Rz.HyQ{F ۡsY櫤kVC~3yߤԶ—b[ԫ[6Z6[GP6¹\fVutjmxr}q>1֪WA]3piQw0Z9[6#إ"S6\z>Iq:>n*~LӚ1G_cqT 涬 t/m2Eլn4JW+]j0:{õ5Np˰_l'p(Z7%R$PDZ@@SQ$UH(qQTa+@H@S*dO~cq<P}b|l2c[gEX LUV?L.$pwbfU&fb0,HrÓ7h9?_}oXoCf_o{հg&VƩspcz'&yZ3oXOYÅLP".OcE3K00m s[b hch9R3xX6b_$/.%S#!yMlRSjl3e}CXQ$oOh=8|jFHT)d.)p巤v)s]yb U½QJ6B{[A/%04$ʟFi,!xR_pXWDpר%,A?]*%wBϿOk .T ^D ۺR_ª`n 3Wb/Pĝy ΘUUe87k x6K*piUš7m^nt SYqS5^Mɍ&: U}%qPK6a ].'$9%{f)6}azS~X$_>  x #mǼ.8ărڬx\Ķ`8sJ5;3qҭ'}Eϑ#G )UȥZC>{#I}\',1>N~Ssf1 @+#xԽ &a',@Z=N\%T_'ġ!N%$c2+F+E\$?oD*<Ґل&ҭɘAc>vR #|w݈"=|fxAc":_ G^P<=ٲ1zC笪`7Qڽ=,aTz`d^(b9La:P}#s4uN(2ȅ~=mi7:zBh  ы! b@Q] c\%Ps7|^V){_Xj Fc16a9D.',,'&J+]f5/ӁiB Y7bR"D"W%LI8I{l=AQʫۇ{L2"Bt \9|SzoƮOs^%BIʔقa= F'b@2Pn9*-T.CδR6JyU~CUSÙy]<31rh V!M[N6%BkFtW ?l6FB.|LmN5u>m^xU[Y٘'QO>"V|ǽF j̊HnqbYlJA6o5䓞di,=~'NP]A*b`P1aO~Jߗ+G|oO'[m(WHHf%hPd6`δҧ}-ʘqTx &B;q^L sy= ⴦MN ݄QrV 2@>\lx!SL7U;FRDŽ*gK烃/a+- UxZ7/6z=Hőg{`k*jvyo/ƆHNcCպOg_QV'X*>k259ڕ ,5נMUVvr;>4N;8M\ v㘴!Vn""E^ț eSM(@{ lLU~$grM,6m2>]AW>Ei#ŧaˡF̴Ala4Cj`C_[͌XݣOeo vW.)ҕ)qEa3DH[55fjhX rb"!ZZ:Sz 5?T|W>J'iK1^ qOheӶ#v *r:P-WC1 `sd;+a| l\TImE>[,h='zݚYզ̚gcm1;$&ѽ"=_GR0fhܲWGsK%M;pf|RFUTkwlrҝoxyc_KS065(vlؑրN(O מO-P+@|Yb/L bjqgD©%7u˥V9ޥF]gi3zL(vLsS~u^}p&RoN8̸?jugK^WKQҍ l=T(ַ .j>mR^zΕ|5MLԋ>3&1WmV>orപ'1" ): T FiBۗ+9 h!~`JXon/[x Za΀䁮SG(Y7e o^;Qx_9-vm_Ә+ZcP+kV7@ CJs/ {@s=Ź hiN:cyjϧ{ܤSM[ӎ@,)$^dx2vT c;:?f;m·A`1`M=)(Jsh b2̴RY ԥ.jG\> "6ζ&rwWXPN]2sru@J4Lu޺NdK$|c)<ʴm!B5NEAaE(_¹y:{-*2;~;pV/A8jI[ɵXX.HE|pwmlӲ |ã`F!DSCw9? ,FkhAf%GuL{vYׅ\`߫~wf;|ɜe^,hD*)"ם]Ke3ek\Ky^kjؐr(P/ quKI)ZF7x l@LA !}^- 3+[)Z V7H\ s=MLId*%:y= ÍVr% /wH.S)7 Z;Krj$IJmWޝ)?/h p)ˠ؟2iaݳove!ĭ@1y!Tx­z<.Uu C_YzѩЁ3ӨMJF]`dև6ZD_Z6xd8|(ȰRWTlہBa_7XZ#_֣Wjv9pw5H3-,q7`-}*._.EBjkP6KΠt2/UkhDQ0tz '7HG!*J5oB}:?fzjֿJgXZ>iqAE.S)5bhI1)Y \x /-05K#@Ģύ߭!R0Kv&m#;hR2ţzm?0Ik,-bJPcj&A"| f=d\?G IEaS{R \ɲm ҅3Sg2#sCy x QM8ơ%~G\!9ӭS"QtRq{C7-T98eb0H-[e NK&i̺}G mm-ɱu!::oAWfh j Qd}:& 2Qd*bPleT}[v)I$ծǞfBO+] ؄ɊbB-CoJL>2K Bc3~`_4w,}\j'[e%}Z?8 szU{32ݽ#S#*'ӯJ eapm_4Ȼ  =LqҒue+gYB]ݖ=?lAQ`4ٿ̓HvgoVU W;(qʃ"v΢kU |N`??=}t#IG2'#5ZY5"$Q3 R]rfbPeuBsFGA gݽzxN `sv`Έ}Xeqԕo9eH,Rn[ Juo0v@BP(*U"g5V t~vS%  vOanxcP, _K6wdrF:Fbd.@笴%͈p׽|Xp뽷 J66Hm%UgH,Pm(RR5.URp|Yl͢||IRҨT=fI !vKLN49L!7J }d6<`7ZttIn(""Is=YVwOpKU\/%LDxXjZ|ilOR7F2S/0ZlQf ¢U'$ݨ@I5צx|dE^rXIGV="; L 璾E.ۂY\ʧA]̳ ~J2 rq?t-?{j.{A>S=$tDH(L! U_]LaF NKCvlcb&ӘnCY-j]r {dm'>7E>2y_K$Ɓ~q U\^$H!`aNeCg\oyo#V++'BN.%p󋰺^\~m4, IusP̏!\w>ފ8"($]Ф9 t#YJk='<'kIjwS/5nq޴G%(fHKnC;;LiU:"|.O:oz[w$T\Ϳ`Pdfg84ou mo a>H~9Gf=o1.vssk[_E([cG0 k9ZKhFӞH g@L';R0r_9EbyţAxi(;3Qȴ#6=`Bخ}׭q+QpӔSj)YY-rkp9&zk!"3T āq%'Кa->PfҌŘ/g܊`-XC'V2̽zCsґ٭\ơƺKmǤޠm&}!ƞmTRu{k0%r {*@Iӟ̉ 6&DGe |\54"y曁 |KUUAc|r$.8tB3Ck==4 #y[{?H7=!gϢH`#K=n49gϝ謹?I&@O6Pj# glֶ+ěUۋ | ч3AK]UWN?h0PիpKJHl+B9QA K N֜P٩n( P5K/92-) v6̆R7d<}1ԅ0CNUN~2.36VM-p†6} o(χ"7\SnHJm߂+ز_d+鷫x_#8 3l`tc? pl%'A OŘpoYi7=ؖӳnp1کJG\t4b'x@\bCwhgeNu(|.-z3dbh!4+Gkq*y35E|Ac 332{X: Dg#FHpBJK@`9o,f.NL6Hp_-O(xhP|oHsrt]Ұ2+|^)",F9;fz"#)Յ{0j?&.(3HvӀW侎a,y UG)5Jf4r4lנ>Q3B) *v Ag_ih@h9p Rؕ͏xnciJ.8VRN<*V./Ykc{נN_Z3ց1+4KK&zdD)Ep, ܘ޼ն yc/.fyk3":I; % M͔6Ϸ1.4k rdRRx:WqIvPIΌV CLڊ ,bM7^,(s{p*Ks$fNQ]-dJ&8ݕz|Rɢ=s7gLڱHEQPU =}4Dg0٤^TlRSJq4VVLjsŇblH#_a.TaM.m( kKRZi@I^6"z= ,ئRLX.lþM<*B|_Mx]5|+USlG7m0~k_6ݡhcpg\C$!Ǔ%@-=JC= H@AZ pyA@grd]L =rC~φ O5bP4< ߅K ?`;ӤQ_&,"&P|eR-9:/=F/GY(JZlQa$Kvu0Ek䕥C\݊U/r7F] )wO9?]rb~xƹ9Y,{ x:C:X~JxPF$NwH\[8Rآ*eȁ2K=hU +x(ef#nS"Aכ:0()R%˪'fa>YBH@I '+w:3d4/at%-rЦF@i=t.޽ 'yOjkӲqWeu:"4cnŧMa)ۍ7F E\D$ɔNl|y}KŔ_N6w&tbUx *M.]~N%/OsrR6~(w4H#t;qrDk]l;2~FFԸz,X]R"nocZx6ӯl<kxxLQh wg\M ;b11o&^5⟂k3C-;ѽbv[h[Wp2p{:)SS+.bﱿԬV26s?W6ws-s_.E8g>>|&Nvq4kQ O"c&Frq\GNzJ|l~ L|d9!osȕɤOm{l!&58jaD oa;d W܃£Yj6`Rb 4Bs%(Z߻mfHQW HߘT!'vR#Dt۳ZNu !,%ȅ \ ^\ g4?\k6L?),mLjmv OGwIn 3?QaN# KD.9kbA0dczIUd7%ܠYjws2c k@9=|O;ś`dΰiE;_~ST7qZ7 6Y!Ry .x6e4ZhR,? ZG`Ї$6\$1D1_aFݡ4?R.{gwxi0۷H>t=oCyX)J@q'"6645^UbQ(S>aM:qtr&\7)cΗRp^M$ Ѡq'u1*=;FyaB0, H sMZ6ק;!,P|I_r[f>vK玄âYLٛvX2}R|] v>ĉ .W܋yBhOj戁k_>"Vcm:#|}fY"8#U3r'LbIM" 2̃j*C61ڊS}.kPۻmR1|*Y1ؤB-M/ssTge>-1"n)dFbXp'LSV\dNYD%ԇ' ]aRmB/h@i:e"Ϯ#Q &a8 bcʝ JBktd_.Ez}Ei[Ξy {VLg@uؽ- ?Z+_ EC>_3z#-][kyW_BO(2S2J5lbjn]aJ)f221Kq0̄i#<o QbV C3eT%o+(,*+K-ֿѿm$;'\I$7ov??l$j|8҃x:?Ԩ]zrgOn+>컥{[)Ԁmܸޘ.N?n3.:>!A^5 _<@NDY !GPư[axaZZha+x9asٚ.I\TjG]Ulx6,ړ^L]y}V6O7VJy!;p|d8q6#WQūǹ =4lْQJC6s>YYplVp Joϝir'S\ s0h0(d;P_09WCC@&rF|?_bEtdHLOTFꚑI1GdSnkJ%둆K5ﳴ\ <E>Wɇ*Ve> 39U Y2ɚB9vHU[ֽJCbkI2iGo[j"]o>ΧTك*zDe@FhmMlX3#N  #@=Z"l}~fձKM# ]|..EҌ^RZ(#MJΆ?Ï"m\?b'kH*pRH[{W{G@qm j]V{moWX̏X:U9D*b|w`#2K@"7.㑥EʜV[.FF߮E&@3{åw:"1e#ЗSi׈BB}Li+,6~b%^c.&{r.6 gF?Ocio5pl":ǝw)w]LL5ٴHY;a/heE\|.XozkC% f~ >xCiץݳ:d'qs7?Da=@I,_y&o~^*8`͖ ;*t*݂U wӨeU. c3,?[.BXV#]go(6k(7=LN'rE*"tZ-nNf1l gsd[*e)Xw}OZT I|:tljPȽCtWEP7~g$L&'AjWj=DK,hY:S5nD.7F>b̹C^OP\a:0!l/\Sk64 2Csa] H,&[h~汨T5noT(KHәAT5'0lwH*F>o01.Eѭ. 8'W߀y' ;B%4k%-h17D"uZSŸIqMqvrο(rlI]6D,r~Q7. 9d䗔}F!{ XXvsrFQv^3>עۊulܯ95$pӿ~?GnWeRc~@%uBZKM)꺐} xl[d6'Z܊/Qxl:PPA@v鯘#oqz"~&t4oq\R<TGzx+5A{B`^Mltw|7Y>aJ,:J#of&Q\<[`g:1Mz-x-bRA;SX{$"1.9"&l^XdVy)[HYVk| X{Xx6E*A?uk^c,ua0#h914v 5?#P[_T]tRD`] iڜ7F:7NXdII:Bնias/C3 e5#@ ( ;^RwًSdkkB,irZ/W$$_jNbm铈M]ݯ76):9$YњH JuGþc'6H'a(!8W4?+XfqmP#6R(]p ږt1vI&rD4"TĄ޶ō !@` .#R>Yfh*IKJ1 *L*@ݮm"!ēS?Au00#yK(I%lMj Bziaze[ju H\P,B<9]>TCUK=JΡ|653+v"o1i[9ȹzcn~esE53q4%MKMKlp7M%ƃwՈnN<)5 y $8j'y_{*l#d"I^O;o3X* 0C{[uWjŚ;OM JDRͩhz$x!13u`/3.ѡ!ˠ XQJ/x&VA'#4t9#' J2[Ѯ& "* R|{d4gHo/,B;]sCP<݁4lOޚ$U:`vAD-:#4RmP$m=ĻR~@IY[myͧuq:(e7 /*ugI)K"z"c)зMl(!YiA)+z w\ >c[KJRݥ*~IjuV28c~)*_Y۠L"؈OQӍߘuB׌> nw-Ճ'$*?a %@}ZHmrEv'k4L( z蝏)=mEcm(Sp$nf cXot'uC0*Od%/19}h:n䮑bΌu0;-ڃ΀e,ܗYYh_Z AuOb5 ,4p)iB:kx[VMȔGK z ]2FS.x ԩ/tƇQ8ԅIcle&l{w@)(UnQ%0X:N&+}ocVE#elugW DT?>':E8g<~4?k0*lZ!iZj|l-HXg4t}'!.bP5PY'Z [V>!Przov .) yGq8x96ZjEc,YS-SaL鶴H:ݯ(m@QT͒y{7/R5D/_X ٯc/"4ak2ItP `/'\8K +h'q&" ٙ_|IFIUpBu߇it{??&eǩ׵ isQE*WϋNIY VP53r.N :*!ɧ7cVf3sC;,ȧ&"'q$%HPN\O1C_=ƥx(|ݔ}%9*5fm1EW8+A6b#i"!  "Cm;ƿ͆ SDAeֶ$FѝͿxXK@xEH։su(1W[OuMFgPgnq1?8:?Юyz,;uv-?~IP-m3x7# ;DZn0xvF n-38hIeu4տ=8ww@)dp 2D *?yl(N[SPA&#}m4 xo{(~o\({}_OT>8P%תpdR>'Lu@{n|HFcmew,'vē]؈wCA<g׮ z5nc >':϶%kZ(ѝDL]]'d@[^VRU7 Qx +Ԝ{ԀPP{ߍϟVU2xHC )i4OeqMUՓRD W|}ML8DN:]u9=#Z#,^u9 W.R 3}xM5,?!a0h MoB] [=Kxi{o}Xfe:xȦ lu`xO }8+oT -}r`hZl_%>+*q0Gz Zf1ϩHQߊOYG蝓je66`v =)4Z3e/x$ښA= >5ӥrDM g&6Aُ,}Q-1zUn#uT>oga=Xg;s~BY%)-!7?2 P[r'JkBxi\H E︚7>PQ.? P_FT<"WpúwIpD6?\`jN#8BV6gMZ)x FpȞ}xd%bǵ<&JB9&,Z`NlEQ9[q屏M[g0<gPԕъeVe\K]fZD[f,|Uhzr[Wf7z;ɻE2^JPgzr$דUM(L@dQ%ch:]"?3}IuE_԰/vx%4l%pN4T%kO9jH_60S|ЬJ~嘅à3C&קZ=+rS4ԔL5<ĚmBF FH;R~!W#jܚJH-@੮!x¯gÚx[ŕ̅ēhMx4w0_iȃԱv//zYV=l➱ q6#}fS8L5 KZ!bvݗKG Jο9>* g4f^8@= X 9.W[_(Q΁-E x.@Q3n-P, gYl29wVraPgxc6gR bRlh0WcLU6XM$j'-c֝hʿ A=d6X\^&}{."'~EN \M AV{ȰWV/3Jخ.A wpeUn2sLlR抩5 , 4I {3m qݟhYV+S*H'r@A^ڲ/!_cD]eHYBOKlOR(ư6UrH2Rg~S*SYP[TW9[Ezgu.L>PKx8/G_؆] HN-tՒV1f-~64Ys6c̣ JנbgyTn E,E5k)&qO)}aOID<݄Q `A<=s܋{:4+s]-)>j6rc;vDшզԺ+?bt24_]^DF+H?ȖY=uDS+l m{]h*:wSIB/1?6q%"7=UB2ԃ2f|лCɰΧ+g걙2@(9 (@4 ~F9LbnS23shNz)B<:?Xwp1 Alv꟡牬{҅҈x<yQ0d[_/PLO^D#&#j!ݒȆ5QD.T5 9U3fvr2$./"[ Y s?]nVOd9O9˷[pGj"|5m1K:yX vyF9Ng\zO8*Stlёy]1ޓ=x*JTcu>4w_r+Z &CIKxs{J +O>ڽˆdG6Ԕ_z[ʞv}C(  =) N}-R'˖[s&/` ϴ| ֒Rii3}VxE$NlRz /FfM{vi/Uv߂"|5)Mȫ 7]&0A:B$4gqQQ{W=6k( jtl3{`g9'0ߢ~ƒM:[_?& kQ6| Yn~{8զnQ4GlHX2j_|$RkCɄ dAb1CP6X 8L7:>T2# k~dְ<3ӽ`>`lH{z l3r`~_}R'i>檬H, ƧpxU›$JXF !5k=y$tI0#G$xo+8F9[ y4V s!xFuZ5OR 3L^,D ]"?{'r`4sVHघ(:Qc+@ Ko7נ+]JM.V~Qv}`w42b *?of8:oqS?Q4|^jϻns_]}*NNHXGt6g &QQ`w*\NdY=BaV|'F-gc^_Z'N~)U&F15A\b2H o;P&U0X?8БX!9Qxe gKy⩻Ofmϼ=9ssgգ <ƜM*Dc@e0mϽW̎v bDIUh[t|Unoiڵ9j"Wc&v\4*' @6q-auQ'"Z^hYtDʴӼ *}8UIKt5r }KRT=Emהs@QӎGCϸRmm+U&j5aXKx{n@FoTټ)~e*rI.WrMnFTSϕR'A܍R6I$V7օs멲éiKeb7r淤"3Ai/HxDe-0pT/j/%l(XldDM%f]l-wn8?d`%'!pUnWlUx$D?҆XS_uT 9N|w( wvD~q O7- sMX~H0C7P#jJBݸ4fgn3^(3q)l/6d;o:n̠pbW Y'3Y.b˳UTm&ȕŗh620CR &&a{ ޴5yTv{Լu@ @B_]$𡴔kBB_0Gfk"q\I5Q[|7q$q>U\pܓhN57VLe 1A"+  Y-0ӆNUfcNth9q-<,>φ3<vB- ou"A2أ㉠i%3 dlfݩ |k![*p (\͉1O4!qk0%ED_@V~ud6 nΤzaxᕁ| nF(?'T#M.Ο+=5u*n31-dsYvTto#UtxUsGĥB^-k0?0FVȪJyj{2eo; 3SUl C8AF-iHڥnd.y|EeҞW$J ["lbȘ\H J_>\L~KN Ug~_IK7w?G:b%ZUb$a8RXJn>͑2\ .? 050)zl& (&kyho$jЀ*64j˛[^v~Quzp!\ #L9qQ1gQX3RPܛ7QW ]D#>fdn탤h!pvY]C5#2EIy `JpPѺ'Kq.-HOBQ5D{d `:v(.Um\s HK~?f#2x˰/\*m/H!wZzOwHR/"qeϹM)%Ϛǔڄ~f ٝK}n{Y_+<ݣ\:®21`=k;J \6GЃZ}2ϾiCDziQ^.v, p$1iV8j޸c`͢QXճԘ ~y=A) 9DZdZ|{wL;g{6?Ey:M@㿚Z8 a-=1ɠ+%LCٛFasYL$YdOk. ۷[u,Ie:Ԯutn$ف+7r"YWv2RI%AE0ҹHJ@`-j"K;w˲ !8p YPyMbJ+bPc18F f/Up.7'\xR%mVngÎ(0&Kn8)F+cgF"2t6z66CD4 3jis&G[KVŨS[51;3gU"Ziq0֦ߨq`O 7Skù t0Qʊ਺SA[я+TX9QX`8^'PYL8}r3Qo}ڸZѲNH%R=s# EG 7Qhqx9M┗ݳVXþ|dExЂJ %cT7G旁bv V LWz+on|۟s㴎 S V}0a~I\E@Я'E=-I:SHW#izݷC˛<6ւoZ.zG LTaP_bB 5${G3"/]=b"l1S6|4 Q%;e (&SeG&—~tb"]mrbqK_9.U0PEҖiM,C`t`TvN֫LNJs| []Fδ 9Ҋ|́6Z{lٻk3"ՁWQ+21m7":oR s6P(A?8^/+<,E̗7+Hzg2`>OT_%HOyKɿXW{m\AÆ5chAs<|շJoIJQ?1xhsI )jiM_}LQeDN^Ч͌W1vGȺ&f|}Gc,QԼrY8 >ǿ|9:RcKi +p7_Y=dxAp矘Wܮ`)E)Q.HEb5/x<37-育ƃmec!$xu}|aZH(.JkadGCDf$̸$a6oNxu9zqqA=qft(Woo'.Hi)dÇoȸ(nbs=4ڈmRXJ[P4bf4 #y`Í(kˀ³^ԁ+c+?zUT¨gn ->:RyǶUfڸ5^I`_2hǷa~IR%4o,YeS 07 5gɧe.hpqn>ŸTݧY疶yoRә]T^bj퓋-Ɏe`4~kuN=/3Y$OrJforw 9ɧ`4NY00Y0MEk"xs{ 'k>eL vdR^p"QN8th?/ G񥚔k=P]<]GoPKᩍNP ,MQdv GqI#Lrļ(iKfMS9COK o !&MuKMOHA;k+Ø`Ib/BWMHWriRGgBb]۹ O1l{EՀ$B` R%eeT_ HrIpPFn1zW~UFs›F0Hs(&o;RjҚM|E&@`3%7_-s|/O贯 [ф'A6p 7ɏ [1]eD5Ii.} +$2$!9XE%?WElP$G-z^0 #pQᯣ0V8 ]7** L~/FlQm-Q2475]!0S6I5+=[@\4vѢsM7QlLR:Q'psBw=8ۍ:*ohߊi .b=ϲFsU_NO'4[SyY8-@+֮`,$>?\3׈濖^&" .A rL^xU領qÜrsƈqgq6Иݏ>ɥ9䉵z@c,1^{xZJlr._| !7@a8{՗`޹pؾp4'IT+)m[hRfdR WbkTYD`>te]:*bSGj̺6̫yo!Z6w9 zQUy˗nJ݈<'yɂO\6IOG,̔ ;#oI%iInT־Z/OT1oDr;YPͮ>j x[+f bT.ecIX*) #.֭ (;yũk *z97,Yk<,.zdpܾn䆽,[|B+|X'+#>6SM=,Mx|Ʈ+oѵsŹqq~9twˠ͒pBU&䝲Z eR=#;)5;\8 Tqԩ'WndCf1'vr TU>۠m*ʕD2k1+Nڪ_ZARp^\pTlrNrc_"R@!!>.l1aҔ!Un%LaorğΌ#5{DZ@?tkRyB霥qT'4n d^HLeU)}ADpdiJO&7QtnODQ(IDʅZ0WQm:`~kZaEM,(%mqqž\gP4쿧ơM;jvQK4rFNJHyHi-jun[nEpz~SwgyǧBt{?wS38Mtm̺~8AhEY5 !HQ O =z+2ݶ _b"feoW[WL} Le?UpnY4+C 3I-﯊3}U% [OƎMoz!78^l'IAH*I5iG(C_9>Ty!"p2ŴM<cl3`YVS2i[g5uhF/"@0 =7P)]K<;= i޵0K4Jr`*%d]V@wfSwMib|<Ӄ,jӵnWvSqک:ײ;Qp8qUH"؁AZ !,|M_:vl]LՔ=z\՗H*Җկ٬#6[d+M&t+]iYF)e1>ƥX$ 6&sER]YTu^<5ĂC&<\MSROi[_ ͯ<&z `_1 PWɀlF@i:.//>'+$c{%{Jh( B:C0l98GvfzE>Rm}uVmY5ެjO;~'$i\"lmq\J ex)lUMqd'iW¦a48jKFz/Zh󒅈ZV6jUyh p)pYoq\eYznue){vu?e ,4Tq^&AFq;ىJSMY{xRimr'jcY <(}#@8Vɱ]|EkfʷZ;՝*(U $߻]40<*ePhYIY{bόf=l 8(7<-WL¢(PxbQ "o-nW5ƶ_MV;%0Py#nTe*ǿY,^|'[8ݖmʊ^C= y/f4{,=$Y#?|\EETwaݞA!$G^ڇnյ^-:X--^X96bHE,/n,t5mw|@|F3+O~5(;3)70[Qi8y=@MJѮc>lcod.@F6ܨQ"}R/Ӥ1rڑ!<ͻ ezjzD9#DQLL5%Gb>S! ˴h"*Jx2 `aں!/cϾfDp }Vrr/zGf$ǐ/<ۅ+(7Y?VZF5sN~%;k**tj4nJ.*/*fn !▨K\P̯fUL` rޚlL*ZuI?9${%vQLL $GOHYO~\χpz@5" ͡kpw1[aAbx@1'l6Y^\濇$79n YU蚑%DNXxʯ&*Mgaۦ@@N40Ǻ7]Zq Em&[-Qv9&{b6J5{:rwOIdu!jٱ"+4#.2qR LUqk {+.vh@1zCGfrGUZК%Ċ!%+z;/%d >>^m=-{kBGyiMUp|oTQ1.P=qNxPW2#/S)4?Z5'ܳ K 3UOB x߯[&Tl婡boKߡJDŽ%/5suqSMV4EkCdav /%dذFmԐDGsD6hQp,=oN~&@v7dhav=dkDj4L( gH2O]_C.I"m٦D*e&CW<* o[jx3,w'/?3&?-F-fWtHFCC8f~bSD&{8LUY v=gۏqyiBdu4A z.OPS{׏-(m)"f@.pF8S^oJHgiSQ-?>>C|3"Dj b8Qu,$d:r5qs𽪅+aM(*;f0ݛx8+os$T-lJs`ۃMߧ:hԀT:PV9SEjB5D)%)_Q90<;`Qu, ɇ-F7a…x^R\GW4>fZK5(NzVoھ =I&.Bt7ɂ@nUTy+Q O+Zc/j+MOa"o24oYk= frσ,i/b{9|M'ہ'w ׽'bn˂:@EK+- yq4v㤉ytu 9>x*$Gq ݇IEȲ_-޵Xws/.@VCp)8JD0NY7W-:Z=r #nfM;vGu0guB*MFhӃ ]glϔD~g-v*C§e=LS*,$ lwe=&C7G'E CSE95 ubmZk3r`I6?1ݠh9Krvɯ/x` ;:͋fhMDb.|Bn{ŠԠPpF FH.Jt\=l#tuU&qQKVKB-lQ!GTΪޣnz WBGXtb)}?{9IG-Lk{/φc:*D2@`;*u Wq+G >R- e7ף=n# D zg3ʁQ|޺WŹ!E FhD="29",6$'+qf\{xUE \^Ӄ03{NcIJk=Yπ.Kf+<=wьgBn$͆+o_l4 wji]υdֺBVb0B0.|$(d|+pKy5$'wB8lw~R2a&upkdZEIWee2t'$_f |ll7޹H!׊8 6{B~P ꦤ"e+r!4K\!(Q~ރm?MCI{h#diF琤aAT:Po4ǽtb8<]GSs17 5߸ ؑy+,%Yثpe ;;K!L_"vuaj!ڰsd@\Efp+\FZ4JfjO$[%T[W5sYϲI~HSê/z*? $ҁ`ǨkL苧"Jd6'GiwBDS9Cx1p̍;/O(-=+GTGn׊]tTwĈtJK-d_SĉxP.l!ݮF# 3Y -7vgsbC&uZysd _Pk'nc P#-ze_ SI;QʽLﳌ2we\Z[ݠ^@T| wY}YOc!%ox" ن-4^-vs6$A./ZG  Rw Ah +#5VkotxǮ}yssu,EIe1[6\~o~?"N 6VP ⒵b \ "1SxAހ]VEehsCWusN.Np}غ?qGƄ$@:E4 !x\Wn[9&lp鸩њ7?D2GΑ :F]*V 8oWjNmP< iz1kRS 6G/!NIxr!kDHyrX|< R)ے \!bh<4t-%S*]!i6P4$P¼Po:"ł~l3aYPW6=2k8xE{ROgz$9޽dQ:|򫭈&Hkg"ѹMZf,w"Isw-blXS(:KOY3WVsfM bP</utbӛqz$^Sjj6fo|t׮Q{SLfkHzM.p.+C]tZfM +y'aY{lxyi[׍(DմO+&4H 0 6԰LX i؇,j'Ưm Ȇ >C8;j8 Xyq] Iė7|=>u$xΌ%iHHB}e.Dgf1地ڍoLOX#eϡ,f 'K!*nepeP,10 $=8 } .m3_W4C!H a8LpvO.OyVeWs>oMgϊ#ɞ UIt͐yD΄'OzpR?r]2uJ#4uX߇ B-noљ \B[O8cb2UE#խGdx@mX(vFc11ՒKzDԈL[m֠\yN-#p7ߧO#D=j}yTPEcC^Oսuɛ9 /- }._dQ00wE:N;ȽLV%Gl(~W'B ƶuPd7`مۨNs]USJSDb'DDgEa aL7?jk/9qխW| .ayXW؇<|LD.1o Rc>dv"XM~j3-u4 O%jyz+HnV9ik܋{OcKA5cO2וX)mqq#F6Tə3`/QmY)ڝ^:۠n\T;B]o>IDA~oƉ#w87ʦyDʊ;2O*Kۺkſyʀ͡6ND9Bzu"ۨ]6k35gRYA(9 `Yj-iiW:̑|^vY2OEr LPgȧ"BT@rVӺD|D|敃}Ϸ?ě(6vR}RA&BiuV  nW:ZK< ;q;Ty/|HePs+aͳ.*$X)/UI JeD7P)y7hkG˲G07*F8r( p<ɵЗ9s8v<,فӡ&Q5ȵjf6A,g#mcHti% epגu8Q-,k9J@nYVaFÇx*_Y$9 ZRs%{x Xca 3i }`!rx+aZ֧ :>ZUtP_3;y*MEDm!Fک֚DotOY;~ǥ`iI:R׌I<C .Ů" rہ*c則 (={<qISGnjKFu 4.iR%_70E]\m,u/X2>S8qjH&N1{x[~  p@M&oK* pɯ[%h?&56|I-c؃V*̪bw..s/=p]̜9ۏVᬼmGJ7fl bݛH=@hd8s@./\GRԥMO|w'ﴏJw G/7حk 8"\m#H$MSL Po;/J*Ty 9<2H?˶D1k䚫D/bW3˨/kFY&ThBw"XK/CrWv4TT4"h.R.rPuSqg{Kli;o . yvB/7m`Jh1[ĉ#2tU?DkpTeI'= izDp{ \z=ʀK[V9 1zy~$ޏWߋ`=C( 5wsR/{mO>jԚ|WO'j1ʍs:MoN2OQy|p>Hr0 Pp@LNJ.r吞0)rЈ,U9b_d|r 4ST^8ÓB>.L w:GB` iKTM cdf(y%}OBu?:sϡ2O NW5N6>h5ۑB9ցr/ExO5W; H4srr)6:omR$6_*3xf[}' Jy*[pCיPw@Dro4,0$Ps#c8<-d4KA?"LNIw1B2|Te.E~;;^m|mJy35*kڭ9Ft'A~n0*!粯T$X&%0&h`p;U=+mHO1,>M˄WB*k$.pք\"".''iaخ'۶Y~ "UcB XgVX0&Gjn1V\y|B!1D!ZW]~G]5߮MC3kqR>'gG5{Qb7$h5{t.OSi)}PQ>'_|+):]Z_;2! B@.vBeC~YLwiCWrS8VX&7;K(֗.jʊ\\m[b8|-xb|8xw*c?\KhԆYBNv7`W 1frJ9q O6I4:wwS۪YpnSئi ϭtnO*4sQÈ"ZkBґ|ZQ+,XdN*Q U'jl>Pàt0sp< v.eD,UiꀔMyE$B r إ59q,7fP3)KN3ZgY;VF4k2zK" Cy{n"Kb`?=H14NKHP6qsBC!/2Ƀ"s(71Vez 濅d2St$h(7`+5ɕp k`uاZm\ _$2if Lw[ J/G&:p;HJ[C^R % M[k.̕}S DI}7 R~I.UXZFoXOj@]ergԚN㘙­$۟OFjs"ꘘ}xVǓBuS܉KaC i__3܁yh,&5M 5<&Js}l%hLi u]○EF/ɋc=3D&eBV9*}B ]lS񧥶-*5 <,7Tt K GlK>4P{Y>Ћ6jt, !c

[xйtdgt3T/BA>D?Kֈ`nHʭ|GT}׈kTkIwV qS{L}4{-x oT7j%'+1TC@E|3ŝ&d{ H,!`HK2BҡCU둃haу}p20a7!N6 ]$tsN(G8&6>C)=nV#?lcvD8Gt 3$4ñ Ɛ|RARXoT`C";|qo]IQu\[lirO):]cԕ&"}f޵-E( c'\dc [<T=~Į Fܲ39Fu3e8ĝ1ldnT iE_ :khQ(Z f pK@uDFnk?"1Pe֨."1L1|5Cl yZ/e{X A̓:/Rsjj'%6l?Cq\}諝%2Ӑm`"n04`DS;a5&M͘?8pt6$|( ,i}Y}tK$R-md|D<.pl%a/e[elpۋX Dm ocQM1i]dF 1y~V)BpK" 1!=]$.Tk x"9xDo:' lmXQ!6UڔJ9V" w]2W#K ![hkQ}Eҡ>R{9IIy}\X{L$M\\aHpFk T݊7&"X눨'r6Y`pn*FGO QY aŊdE!~lK% &_pv)FC+NPP!1=Uo9 iݜ ZGBVc&,w!c- OqX+ny`-0V7藊!;+QKPOYڊfqePRBrjv-J\}R;|4(y'$/lh@NrJEɦn~njybv ̙]8/uʾT^ y&VlrX.ڍ 65sN^>e^(myQڨm\NPYQZSUĊ,?0 TaЎbVK?Jܞs-Xu +D|i:WJ.$>EeTZ~:Rȴ͠A85kR6n'х>L2d am}}x@Sa_xYsZ|pEh-Q_8r>GHSH['F2JvĿ&֝WNpmꏶ?>PDƯ8tC;POiPOR3}P-n5v;E-D T Ri]gkT{jpg~þA#^g0* ªxoX0(tjFK|ρ3ize˃Ra*;爪cqlZͅd(kkC} ^v.xtmx@i5@ccd~d #};ij?v԰x{^km&=6z%;7bz9?O`"SRYǥ" [ r!d=H`t| 'M+nV vw۫} ^i'i+-PC|GlԐu8X9`*1 MQ7|?1U 1+S ~ƚ4 !=@J[maKb1E#L"8z3om̰۽ 1U<}ewu`U!mVwN0p^+eeZ48F&rOpɿvl0g )pOJNt=\GBn*q)?apŘHwGgĖ! 81ևӜОiU~Fn7K)7݃PO}US#3u%l9v=@83FAGיţ>5d:#4zNÞKѷٞ Y|dq0k_45)N8 m9둰_Mt}=f>H :1/~d#scCe!Q@΋>A2N,BWtV4PR|LGd{X) LXYE*wH_@> zKߨj$cOm68{[1k V惡i:FКOyV(&tH'59uف<yIW5DTO/4j-PcQ/vPDi^B ӪOlm~<@!\XECRneMsxۓaX (.Ar)R7{0KRͰ m*y4VlHYyMب+o%Tãu'o #6 H>N2IBȅT9`b(ѷMa=%mNAۑ%u"cposa92\#剣͑[a11p R:'C,¥W&2Tܚ7BAnvpqz U % HeMxfK6=9Hڥk)gZFo5wGdTt;k9~x?R|ȓNKX G\lhtK¬SzzfoXqԪL"I:SU- 2)XpnR~DQ2ɭ"n^F7S}zԖFU~ʹ^|fo8d* E:iE]Qȍ}L"wHX^"5gEi ȭdpF~V ˹5E_̀uTjZا拫j~rej5G,Oۇ+;~M8*KX,>COˀ6e"5#*5!DG hLу j\COcth܎ }e4Qz~H <+Z<]N myXDu8t泤|N8 |0fE=TBFj7 `=4eU;6/ 5?3 `ވwwHzGasnK:!"i/Kz`t:!}q|Tݐq[(i9T"h)L5:SO^ۭa jVtLH >VɟvԝXJ|SP>_,b_,m۷ gӕuG?k0qYdުti9չ WnۖSxi!/UP 5R᙭ȚQ߱'ᘧ@E)7xy) KY3G_(X2wU 8Jk>}IZ0?mB 90n - R1-@WSl0(qYSLXѶj֡Nx S>ٙ$ ߆`&'}Z>sc:Cyx~#.yVR B٦ ‚$#^));w}C(^QoVy={ ,.6BAzmF@,Gxۢ8meV<x=6" 78{B*sv3+3xy'ѪIx1B5{CրtHuQ/=/Ig⓼kK` }e, i}πa _yj(Ph%x:2$zuBY\{m`x-: 3\#K.j/|X:ح9W7}|(XR8U@ls!*@q#m3HA1r%-?]()2+M|ТKd.\ӅLr?zD]J0|9"y+cR%/ @tllQK%023RS?qu^U]rb +H-pTC'(RMa)!NQAIP<\()FBтVɑG @tmU#墎-lo F˹N/ 3i Nc?\w\FML\;[6afkXֆS~(%uˁtq Y{IP.b hCe|.LEx6Qv4᭨a_Ez֒$R/z@HKBe93^cȏf]ҠVXin+kmZ)>G(a/)oUK\-ZW({Ƒc8LfeM %XGmn:B& _\{Ch{*7+,YN!gTA6 %3 ?꿂.!N.ͼ7=Uƛaŧ5" m(`ƃ-l4,mNnGO @7c/p~8dCj퉹1"K1Obos6!ŷ[&k뽩VE3u'Ny&8t)ԻQo&L9zkin2McMb>m`泦CG8 Lgs@3 IC8i}U AZʧ!+1*V>Y1uPee&-U;?ݤ٤cdF܃(y?C? r"#zlES^>L_%Q>0E;x^m x I -I6%uT+T] Zr_5h>Tj{`q5RbpjiBX@,ʚ 5|6oc(B aڗ>2p`q= yGCOo,p&W  Z‚W_\ŮޯLPqK:`Sc`ʂjt?65}CaibƏrЗ b.c_vv!l8<s^A!?5"zFFZ@{idB u.?s.˩ ci|O0 cڪKYHWY"DW4(*BhR_jTA:i}!]TM2ک"jcb"VD!UIpB|4 ?= >M5[ 6j:?`Rɬbזm|NEBkʿ ZTpt2h,tu_'<!QC#co0*G9m"7p2v)((9 x òB/~1w 1@+&&I }UHՔ 5|d}/gGt9Oa4қfʀ0o̗P|1cZ:i`Qs4.Q'h<&])2Bc urGJh:5|aGI+$*6C?T 6-zfMXZtU'.#tcF6Ms;"T]Ar{*8{rSX7=t4wF媫2 ~yOi)F~~DPpm\ˣ:Wv^/ճGD?s8wZ$_jt4w>gjfZl<9u\6D׹?Cf-j2ޠbEͺ 뷺a!]Wj,SĖ?=fo(,x,YR zog)0ƿ GT)i|y;C[;b?wy]5!",  YAE<M$3 L(- ēf{[WDP_tȊߦx|ά (aa c(A~SKUisݑuZ3ڎe!jr =s\7zv|^ZL8P85D Oɤ)Wjġ`zA')v'0B$wo1D I\i`/6˸ $b4No<gօg(|J&9b8лi wFeX/!!Op܍}\tR ^ǜYIX bOfv2v4Rx\Z_r,ŏ43~ef3;ZlEwF)=n}'^Fw#8w!X{Tpz7w2%\IiCPRo[\O 'gklI,]\9G~ dE&LVkn䩞<,ibK t2>SVOSKp*g9(D>5HgGNPSUbv8Ġ4]ԡ\W?]ǖ3:lb :@(xuO_d@Q>T0o-uɁrRIgucOq % @ĻnA~&d\Y).ߔlԖ\ 6@6)ƶYK8AX9N+;Ӆ0g?ID^2J53rzjPyKG |Ʊ;u@h +ʷR])F@ޒ *6޾FTvuSM (As,,PkjqZT,YzȟFf`;m+~2XTVDZ#.exBe43nr#_'/N-a%)QY`gdH1lAS ԯ_ }.>A3@ϱпY{56qV21U=bZ`Lp}*)G4 Rr?Г**ewȶS9*L--}̔?Lf&$Wj5bg a͔SY}DEi)(:d/9":@.lm8oS|DCX3o6~R9Q[Woc "UӗiU^bN S55ӗNT.E7m%k"3,0DexHn}ͮ=G_P4ݤ#h}1!z&6,}qIP|g×=a*\VuzZgUܱ6vfCKo{\/IC4H96^Cƍ9j=˦bkkvHV$I@bڈٔpv ^ ît- AC |_-`MkK#A!Q6wEl .VB6LZɧ󣙒?eq=0z V`щzAT6OZl˅`ϓX*p+N1 z/e9BY'7鶯^vigK_fG^? +y\ 6b=U`m;I<'vӶLKoUx=L!>ru&wՏC\ QoAdv>m7Cȯd!nW 'Yƪ o4m|͛R7OYs3Qg lC hvkŗgРZʁ?՛eITVC\KRwun$ӄ^T90\=-<^RWIH 6mTLuZ(;*J wMB gz'q+9YE_p^T\~mdG}Fbo `rW'R&Ϡ8]rzR,=(^-{Q҄\ti 8uӑ-P5S7iF@JbgFHI xru"wz#'(誎jE:>nfb:lCIzŠ68s+_,Mzbo>zԑUTQXi㿦Bg3qƱ=7G?YkM c# +Ij1񒪬u3m{7KHz?5kv||tfs=\6t~NY)jg@hzghbn==A]1JڎXN[3/nՊiz'vSHN,`lZ8j[\FY߭ƹON(<daeVod' Ni^L.^M7XB |K];%S=omaҮ}h 3Lێ*lyGWnx"LFr\;~s՜v}iIg?P.Kً~ 6"\|xz *ڶg\5طA !i;_Z4y DK-Q֍v^ |i#9 lZ=-O#2V{xU?Tzy~mG˦7vF>Sd!(^MmG+;"t}cgћ1Z"oCL3]ڎL.AwL 偐$\i[`0|GoQů|Dcx;/+(SwK7&⸡fMٚ;VQJ5?PVGi f>l,&ص.FƜ2bNAőqǁ"-o,l} _1RbsDa+.ד@Q^ -"[rU{Kro`{uç1cT\%7A͌Fow\3QdDjfV:&?h`>P[ wARo`arM|={0Gx~i3R%얕٥;sE z'{NٗF~i&R%W5t@EH ̸*PFL %~: #{60 =e&k]ka} K;NKm:Cc r]{h̸Al/RB8 gCSMf/hJ4&H=m/vMҡj) Vcx8&rK!f:0@C(ۆ-qn;5gq-vJhI;`cm[ sN} +a926+Oр Yu vt?:6z\34>`MQ %nId74;6qC7, ҲֲYf`xWɽ w=wZ҆cmrGFqv)Oz#H%Zt9qDyl p>.B!٠kcʚ {[cƀK%i%_9m+H^>R$ .~IV[;2jF,I7bp[Z!Pt:_`+~j%|<Ȧ.$̴TaKTtʼ@3*WQEwCQV,zn$a'@]],` P)C T\1e˜3 =yw֙` `%uA=Y.KՏɄN'y-7B/!{"7+{mT"v(\Ȱw4sN&ZODèXǨ@1Eq;ZQ~ԣ*Y-slD4kd5[ K Y?4qZI;O/ֺjo.:z@]ً% 3#_x=S_0>{o|x3@5fڿ3u,6*BfNHϾzb)bya>4M uU4!%~q'ކމɻXa&գBq ZʼnG>LR:/7{$캪2D_|VT"EKs^a f91/: @a=벆=NP4usl.)] ZlpkfDFZ8vAbk@dcACUepiXc!z|'ކbWhD,RX"V LT3Qhy9z#ԝR#BTД ݟd*p'3,DO5lWsQN P`m~T%Q}ܭvt~g>5@vVƘIRO{م?N@G$/=*ٴ <է?*Q E#W,<ˡ?K7냀^1Ťk呼rPy;Yh/H7-.̈Ԝ=վZwO@a^dikq7GM̞@n~!#}eƟH'&01;U ~C]N`hڂzX%T[Fehq,IU+]B i]@Z$3J`hj\ F aNkrq Ɏ hh q13FfŠ>: ӑ`G5Y2,~A %D?2?0y&`T7lCZOfAN%drN0)͞yьHEsX6.|@Dᡐ :̨qjGO^WD[|•C V3D-l,P*j&[n^ f pFyh 4wHS{ 0Q@BBepjt'@9: l$GN+y~Bw\G*@8|}oGt_|v\}DWTn5L IY)).5n6XVq/`DXBǐ<;F԰ A^~LH.%ZҏŴ;IOcp)t3ϔ|m#в5F=ٕT6.0}t~I 6W%?TXއt}=oN1N #=vcG}kzy8[A_Fhν!v.p٫T(9>! s%dƠn -n7MW:^[:0DܪΎYV CDQUa@ lm#؄0RAM2W@_86HmBmKPi;~<-cKg}XZT@kWg{r{/ב>Q7Vźљ,z>5f-Uc{ja. /Q_셸Ynk߮Q$xZH2bNe4*hX괂i 0p=u92%:-5~ Z_rϢWzU`Ut^Njog}mI`d(D- >@ :ԓ_QA'kN#@g~+V; p5zk{ pGD,{]6Tdj, V>{?Z5N;ݼ?"7^m?)\ra8{aqr-HQJoQD q2; Wj#GUzR4b&\bfX9TD93ljE%{xP.buޑOy^w!ْI+࠰:S_ q5fIȎTLbmLxnZ#A,};j#4; eXr5$eyUdM"Tge>@'Mkw5zj~W؜iP!R>A4a}κ(QaKttPлUυpiʼ(-dCFؼ_9_uAg~_1`80Pa/׶dF,| 0U~weu²[TYcz c1!3mӠ3Fo[\RioztOM:a[>4.~K"j7ghJjX2RtQԿP9FS6t)x]VQh;|1Q'_;b\еKG)d!~z0LL]Pu$rf>Q&B!weꡭ X % Sj֯ 0kkHj勸(6t%/%2Ko@@eN Rٳ8+K6fp9Wm{p 2p[NIxd^5tLov.X+] JZa%pLb C_~[1յߌ_O G3"ν 6BIw.H`JꈄIo~jEmGp+ uLFuju N_j\oTc+vk%M)vRQoQ+鼌g_)"i&7ٺCle&vu;3aq bQvzE(6fH~wE7QÄ;u-I+*ĤsC{x=r3Fber5qrpzF,'2.Z.UZ7*|YEw UdC&eFO>M5? DLh=GqqSW4' RR+uV|CųpT/,,7b17Ur\vz_69#Z .#/Ƴٔ2!l&MtIj$MӐ"m|й/L(!8ndUU,qh/]uX;{pA1o>b(5s[z(QY{I5-+GqYO`tZp_#I|)ܬaةzdx :G&WضP˂ &hwBPd Lι QH^΍~vB9mSD? ـTxC 2Au^FG|t0g2+o-5\w^3Y Vsper-sb0NOk%?Åҳ4qoEH_qov][_uϞHC jvX t/6ӈ:qr[V?b9)kuArXra IOQ4F [9MJ=^RĶڜmyӿovE1]BzgXxOۖ efq VfmN ɝH2p;8"(ʅUzH lIr{nuf<7Ict6:˗ WUEvWX3NC\jZ6(sW[:ΟZv|fY@Ú/r"CU .8pvv#WejîAAZU1:B@務*d]޽eӚXY0d #Cnèq"3|D#z5@cMoTSŝl|3'""faiC/ [*׻ =s^cY$)~EWV8ucF)-Gti.{yI4;U {dq`RA%R]qp@#G qw EӔ$!N:#jh*ZiJ2/9a.XACX/l1>!nG(~1ڢӎLfmoπ5V+>+V/Ɲ&C|$2/8PTM{L uc 1|j^~:fϴZPmwC;7cG }QQ:nQGMQy3m`ɧL:a#(%' 0['XzvGTIm.)ؚښF>ǺO,}=dy1 1)S{*]{uY~܉ÂY?Zv=+WJzn z>sxAJQNy(X>R^,P!2ԏ!\RmR KNxU23eH*:ND%՛um 𼋡=)q=,׺1)7m<(iD|]ftUQ$7wKLZ Orö¥cKD>.K@yž65^!7 ֆW pdjc -YeKwjm]Iݰ"/y'÷9?`z=ȑQ8eXp|&y)c9lRjm8]G>?[m` le?=Pf3uuy7P}033TWLTٽlFFiǽߣ]ǖLU-Ȼb*_Oh'ӈa-t'< )򖌴ej*z F jBIGqW3mVԿQR),z/GQ;ʷ^Mn !M2Lfzz/b !"0]Dާ`(F#&swyL(W>0'z FO"J}=w60H"t9[2cv``~oT(07Z BD@M/Okαd>('ۆbYb\v@X5,g?>=ժ/5YrkT2nrɱxj. /ͮJ ܔ6)%#l* z?x$NUOS٬ o9*RN=@iQ۰t%N{fq.qI|rf̴ܽ_Ij'8Fq 5O31ʿM\חNs̷L:ĄZR7E D3A0(j"F gdLmt40L^̖~ nn9'ཕe\՗&/L[}TȄ8~OlGN&?D^lP@m9V3?Q"/!ICr%F&v0f4\ !,AOfR[9-ywNaql) }M&h0/5"a]dR^Qin {G%2 WF4$@oI@J5@b284qVޥFESzTΕ:e"Dݼ@Ν8BS@2"AKm+,%mfSM>(@,CBCuRnT0 A s0p$[naύGpNG n* }엹ڶz?)6_FDhPs^#ZF.Nn;]GиO"a!LC-e>?uI͆r?op/BPLtGPz3zOdGG PX =ld#M830Eި^OdƥV|]CE @B8N˽2U=퇉FF裗ڎ p,!^t'7m4I/Z4HH#+o m]8c{@=!y= f{Ǻo}m"=Sod4a.bbYON.̙zdr$y̫T^}Y,Pdc@NF>QYC-I؋$]4 n["Z:*SXfP5aS.San ~V޻Ɨ`m,9 i W+&λL'!Ϸef!*FĮcٝoq%L"h9sT^_M`4na:>6Pی} :YZnے3mwi^u#w DCrࠓmDŊi52b?s莠K;Av!a3)|N24zF݅(!cAy /[jrNʏfbHsQz9~_$&S=<>_*^<|G< 3O3nĢB3R!eeM(/;tg9*Â[kǑL֋Umņ؜>-1˖R@ "pb:uN!2Jn x'uWLކRpDܚ(hDa>)R+U5S4!,`6"×}_]K"nY><'rWj 7k n[.dbv0-x}&iuΈ!> V5j@C˻.OKA' ,3>qO*eWykfMjUU&SE7RLl3CPۡ"YKkmu&~[q lGPWqfrBl@,{b ŇmUaE29ڼ7L'x1qau˄rgĎnЬj 6P%̯Ң Ek{zf;o7ƣ S5' "r;]mAtF>@(bӹJdvlH+V.3^2Wl6.VʱzZ J{]KgT٘ժ.l+AMFƚiW: @ļ]qٌЗLoW*;cOdϏ6g̒eN61՗(5K׽=I{88yoDa>gvW: <|㷢k0BnTwCE[h!RXX{14E5팍8}/0Sԕ-Qrz'̘KbP\{Nqʰ2w1iZ"IR)IkDW_|mp/Hmk5hwL}KRyǒz/x9|5͌ 422F&e|&$ŏ+at/F1#+ h1%;+)?:tC:2'Q߱֋֏O/!b[ߡ*,{\~Mo]bOhkK崪 dcJC,`bU 5~ͫbmHSAA YY@~ _l}.=tp)V ÎD12ٲûp^f07Ŵ-?T.Us{#hЦ)9:6yNׯP{/tDzɦa O 9ȇ:h{Qc[d^ohGI\^Pj(KΈh `E8kڵ-UZK&1(72S_̩N3P0{: Oˋ]H-ulߴSPcuc>ضxK[PqAd|< \W@׆7k}9ԼK2!ƢbpoByM]P*~ΖQ) Bf^@iI;KmD;yB}NcG'\'(T1tV5ƪ'EV3Ȩt2gMrvqӪ4ljjX/X|C ;,{bQBY) ^&Ld nǁ1-d]™?)Ñ$1ClB1&h⫺|dᙽ(5cɕ:ӛX5kڕɔx)VxU\/쉀+7!E9[ wSdJ&HݻA #Oav57)Ѳ*fs&c:NP#c8IqI)Yb|tU

=VB :gF]Q+,\p~tbH[ggmb2cjo:y򴘈r5OhknȾe(&r*hWHOK.t'ꊀo7JWQjo"rWoEr7?S ;bHG$S;}ee9'ߘfV1Yε+~s A$km9\mMLWҳ`8)IATxYDrڔO^/Wԕ,H Vz6P-z;XV(&XEKϓSomDwG@ ]OHI*ma{LNsV Zi;}} J@YDISZz6RF-O+60 ^' _ϩ 8Y4 D^mce$dڱhN"x0Pj"-MZm&?#eâ$hM "%H gT#"󲋝TD8|S|DwPlAe)щb,O(TØܿDDaӨ~{jʹxvb yɢ>,ܝ^#f@<6zk͒ùSc-kyژSs\XNezCi{c"'D Ps8[*1M/5P:'Ȣփ2!.lMKՍp?5RpA$mtW&ݳ{<[Zx5?DtdJ~636C<Ö~),p4u}c .(InV0"P)W<2cKDtANn@aT҅V%K~}fa7τ(bUc46] 8=L!R|fm2?byf< Rqm# e/DDSy`F.K.k,/`-%rɡ]'3r[1HvM-+䞐ǎP[~&õ%=.qU 7?C@~J.=~nU'ѹN w؜"活yXo2bƫGhMv` !b7N*c"H&%[gטLa-eQso)#;vc~xBL~LdE1\jsJP)uoi s^|ud2cW"| s=_ x׸7Ѵ/w7' Fz0Dd/+8xB|lTsY4_T,?my P'EOj 1=R,eYn؂.k7CpyR!=҂%s-"O Qs꛸U͋ Ux:xZ‘fLFD.u<} qD)1^q/JvcI7bqsY ݯ!u#I\SS%|MÏ@yPoAR0N!t{CB3ْR9n\u^QU7%` 4N,r9\NONAdIߚh4 Х;#?\AR p,kf|þ|]6' P m(j&Z/]GDif$&+g1Nnv y_Vgz;Ĉ΃0p9ȅ1A;W*sBgr$L^0>xp_XgYWUt3UK.Q Qq/ler}QBUO2w[Ad0HHX?.QCk[-2y &Xz* {w?^m {oP=.Sn[ǪGh dDm5u]9D,>'@:3ChPjWE<)?Pz)Il@+H5%K(:䡣yc2Ti L嬡5 whc.4hG6YK%ڭTi ŨύC*% VujFֻޕJ {8.qgK-R{׸m&떤ri}N :u5ovVd@)nnp^1X(Qswн5Gyr\ C,M_z.5N+'s Ѥ)*߃8 U/R>Be)/ѵ>xEJ:ȁT`b0ER"9476֤(LÓ| bSy#v#B]R|!CjD0UyRʴv 3,q|dj#VQUE8ƒ4X\vy|Ip~}Z 5D:oYM [:TH D[A_3dž<[Fʡ/ Pъ|6R'@caz Ñs,E!tejj/L5""` XU-;k5/g_i"۫P9T{1お- ӌ5q1 Bg0$ zRe'nC{da육 T>ﶤnr9];pm *ʹORɓ[a. {V,&׸B0dz H&[`xD"M$ϑ[hsY'j̧ʊ^_%* ZLI2Y迊yO*ჹyfP*!I@ 8DTR;& '*܊t[lm[FI8 Ls1;0W>?4X)b A]*i# VA-5i(Gbկ؈驕s> ټR[_0uV@|1|aUŻ|@'`Jp;G56aem00w\ 90B C G@"N˴YrL4{4Hל亿U~yzo%Hn \U\hKS>kg%Զibb 2 ;DJYOq1"@ȼ@Cy0m1" ".;mA%򵜳GR!Ʊ{BKC1Ֆ>`V+wdJD?DUxrTrI(iĐ=N6. թ hMArD o8d\%%,#igwcfGJ ch'ۨS$E5.P Uj%!:aM1d1"6b/۫ 5b/M}ݕ=rϝW Slaձ6Ik`): :czOzq1ښVy'gMLv1H*U>K_L?w>^QI9`1[V9LYrm?Lcﰉ5UoOǤO-tGFHд \ 3uMLl(zR-눰x"ԜK~pgh v @Wf/o]Zp8J^DG0t+rں;s|>caZm1G6MZUb:>bLf9U@6'QEbNF?rţrGCY4)e6& RLǝrPldA|g7G. \}E%Pu WXCM;C$vii)劭l}:GVS<:$0F2@o_\*C]k ĪEZ8uS 8n̮ 1[^?s->n tOaI7mj[NҠՎu,=! "b3qw6^5U|k. &Ef#)D~7[i 1^ǠYY@nB_RU|az򘅔K&A3S?mAޡ![|u)tL G'}Fis2l%pO|EC`q#Yh'۪(B>L J Ko;4O{/Oѵvӽ;RePQ1ύHD/ܜ"F'edK g@/C\E;):b0Pէ9% zY ˆJ?1{XVxAVA6a2T& ޗf/xuQ @xwj}2LM*Ӟҙ#0Lb]('8u8֩#zTB2%+'#mE혚 29N_RL~FÝNQ½i'B&T(@F#+N|_Eʒ d25Xb!ٙ%$ E-O;K~[WK064cW:;QFRɗWB9G ;j,̷ܛH" 0Cv\\hldy";F[> 4HstmxZٸI1D>kd7`c0@#$osfU!?B33WxP$b)1RQ.^TFNHDsnW=;qiS"T<ýoCErULa,cK>)0o>'&R"PPrg%+e\Id@8 ;$6Z%=F4KƈϞIN{$;WT0YW-oYwZaNUS̩ uG Ij f(}\G:eξ &)*"-$C E۽XU Hǩ73H5𯷋 8HBŰ 4=4>nAL FY2b{~CIUtT JhD<A~4#OkYh.P&0PMztM➐6eD& JsCr3s #7Mmf;y2xcC:I`g\[~L=Y`4{‚}5]28g Qb#-QER͓س]݆J 횕nrs"qmI"gټ-BQ_V5jI!ۢy1Kb:At O#CNYH _B<rc6yGj`T/4ٻ;ЭZ<4|*TElmY>8SͬpݶEȬ7fڊBoO3OW޿!j$a=3NbkN%?|gp-9κËg:JsLR_U]nMB SFp\A~aŶ6WV,8s<]@%Xl<3dcALZ&śVLQWPH⟜=@gu?kQo pc5v-;;ş.zYfEא3Ĝ{tsg){>8σ;vNIE |>Ͻe^]'3Κ)؏ luԨY"ܤ: C/3/z\5iUrWO*{%uSʡ6_B_,LȕMCy?-}=P|>^Bu`V^\9+LC1=!u!~Hy>|YzݾBvnƫr,y ix=ð=]NŌ:KN&ݽza{CyxѬBߜ:84/K~KS| ?ۓ~`U玲4c68j/Z:ˏO/[ْ y| wsWԖmsd|TKʁDYKX47*=cɱGf'yaf/pZ+,,%R;IC<%DrةFv~coONx*'pl$3&o.n=7љI}kd"Kt*f[ă)WTy{X>AM4ztst&`˪yjbtvIg3J#MzG̘Ѳ_\˴^ 7@[]EBDS)D8Jh4ؒdՠfhp|zK\$Cr~\ɐKUx59׃b{4AԐfI)c%bl)Ww7̩+rr9M.Ԏ*+(#b#}qBJ;9hY,;uGX✑ 05q8w AYURaYԧ]|~|3S }!/ߏ 1'F>|rL g ~?8^L1aYޥOӴnN|w1_5D$,ki>X_4r01M[|M(@wT.tKDKic_]$xߘ<3c#RMqObV';(i8 KklrUɉ8jqe ![søqH:QbBhCE%JM4fz$Rp1P*!uGgGppD8{6Mŗjg{BNwM7]+O= pjvIfxճF=[{.]f5ƻU "3,CC@]yiU-@펆&.S/;Kqquw2%q`#DDM攪RCYv!2 ߭5eTsCnQ*AZ(R@ֱ[#&kM!%t,|@Mzjnill^g|7#M4@tVsKڝ"_4ųta YzH2LhӬ@ZϱRi&!&ٛ9VWT~mBYYAx'z+dom+ܜX?Tfj +.2I{H6n1) &FLJm{Ȟ!qk$&o$OG,I3ָh@oz\aih}˾$h4-wƥ6QG։p&ƪ3e _;4w4Bɠ#GUG%}ۗ{qϑ"а*E:k\);-`>\)29G) 6ĽqP7oDxN-Nz3'[8F9g0Ë/qgf^P`? #jju>3xz]A1{e|P1=WF>"qepXFʫ~ZңB8fQUj w-l*6 ۝oXH :E)PnOD(FA k5AE s"RvӍG6~c= 5Bi .C*;9,zE$bQ'4AĮߗ1Z+w׺ dg(&f֞8Ê,dy*'w3l }Rd){Md aiM/{F m2a?RBy2V]T ދ !ruldWO=s!Z9BO ^?S2;BMXQ``:F/(? 8g,I3]q%ԭr2+lQ7Ui.C{]қIF<]^wnT٨赆hĞ> ezCp4Iࢽ'ա jN[4Հ\;h< &e#RePGqwضW>,Tt͑Ujf:wI~r7 #]%vSt6/{ r ]tћx=SoR&DZ %Y/w4$:43\8kVyaSZr[n6"^b_8MÂ@чwvP8.^>3{"B@,䧽\qMPIYJ~*p ҂ھYnwz`)dz$066 'ea|w>;/W_B" EE "VP`_1va9׸氅%DT덉$q2ӬL'r-h'WͅA@Ͻ+jTQuk҅2>bLo =gr-} ʺ #l⌹/Ea"})>7ބnbr64xZ#l!QQ5`AQE:oEHM&Mž T8η KX[1+ XL4tEf${X-iQxYxפ {@H% 9XLKA+~S'`ƣk ;,R"Ge E7r,ӹGH r$E8~˄E#P*_ZUt˞oU,=g jbi#/v!?nDV`FMzwfR(!msy#EJmYlՈ݄8)gcg1&J9{ cFpOE^^efx|D2k]z>ډT pZ3zmqT%>Khm0I85)=CX&1kGOWdnxLӛl)e,,S}XD(M2:o](-O@jZVZq/J:]37-}*Qɝk/gkiyst[Ԭ6 ٥dJqw -+< -4i w1?RtEb1tf@ t^- ۖ58gRjƲˆl4 w%A򉊒YvʴJi\QT Bg>|T1q1/-\:I&tu&[r#Rߜvd^+3kXa➾Whn DARj$ܒa:c 2F-rw m3` E)}nWȆ;)Tn@H"qy;)0aMueN䔉cRc8 qcǜX951Wdks^AОKucHfݠ<t'GG.􆦅EΫIsRQ"ܹ6MѴ*H\?b0iwa=0}8r=5V9 LN:HZ60j\Gܨ0nqp݅p@Nza<.`?^{ҕΦsC#eH0kf`vJ?P劗V[T͓L\PQcSDF7|~ (OȆd0"b]x6A* Ε,v aK@ }.$:!͑K ކ]BE1Ѐ7գumvPy4Y/ 6B4#?4h[k_ˎ"E_ n>>mkJc?P/X8mҕJml88 0;^jaS-{=?XWONԙkz9'g P<08 1 iљJl e !xX bTmp/*W4IgK=W]K'!Pljf| }%q\3s'Moy$ǴbЊj_pt;K㓥kUWbÓd{P1aJZTny /?$'{X&S!aDѕ>aPNn$9H}9DV,#{RxKu:(I&6&?>_ IpV?t> XDJ2ɬ7虫Xąz})Is]> myxU=$@-˺}p!c^%⍘dC t1&X4g MoD3}~}u5RYFu'9ߦq[e^vڴ\qj͑eA_:c)?r)j.ԕ|T/a9#"GFWMn:vaC 957)aȈ{]G9n.pU~*+[.f*G[ӠkP]CeƓ"ִҷAP ^IC N7תk}a Sl;f0GT3U2_c#>^PT<)5EZNG׺G҇jc05{DGC4o DHO1FxE]9Jum|JN;e.jsHKw2E3 j*ULbҾF/XV`9AkxTW7k ]tme cMs4dߟe׎ߣO.ВX=,Q J΋@QOҬ07rgG)@cuO`m5@5bx zh#X)nUlQ)oyɺvr~䜄xF paꥴсNN} 7'h_6Lnקh<h4pU,1L)Ÿi7",5F⫗W%25УcBhVZTvK)Dl)y[Q݌[H6QTB&CB8di_%_'6tLH#d,Y22)x.vu_g3[72 y!~<'7x HDo0ޕ̗dž͢௿e17KT++[a{ıG.-".*_&a&XTHѽw-Ce>\Ml$#ᗀo`9s`L' y37h(`Z$AZn[-7+M]6ʏƕc>> PO<ijs$ ?j#wxc uU/?s:aw>2=%\%aint]aTd.v=2?D/MFƐh˧&N~#O"oBPfכwsǵ!wiHh >(wNca/a> )1(NԃVqۣD( ;_aRB$wܵ0 蓮H)pa',[T"׮!woO1L;@{CڒO͓[aؒKh0Jl}oۈm̉)-|fsʈ+"p@ֳD ~s\|nLC6bբw+ijE.ؙ9~ Sm^\莞jnJvyfWSkMkVGyA3[|uC5Ngb?t+ 3TZpP*/ '8oS ep{1GG4;fqlŋĻob)dGGm5Ɔr8)%ЁikF@l~cſS Aw{Nj{j؞:1վDR'l; @TL|H02eΩ>u4nVA= dzdt@XuR S\D: "  :) l;-۩EuM9KP9D~ok bM\2׏U];Q!)u]6Y뚣i6|*~~dgW o*R |==qRB,S3H'8)lg~Ign&FM.@Wì1 Ń0: [-kpT~2U+ؾ`}kw3W* (Pus!Q&~hv DєbbkUY>%ڳΐv3 8UJ0s3vҐ?"qxv!.gF0hҽ3TґeF*Cиmjfn B*nqK <}(\mC2_l;k*IoI؍\kh c~sSwWm`EE $uKhFhk^rt8ԖipՌ NT һZcޣMCp{Jwa;}TꃎD.T] Tž;XÍAQS5 (L|L ,xksbȦ홝ta%eHϰ03N9 %B~ LV:$߆pN1f52Ei8hNPT3~oh10h2F|H0@ؒƻ g2:Q~6 J*7IuPz77Ŵ0GkyE﵈9q#OU'7}xM2Kn|PT3o3E\o ޙ9 %B"+8g\DIK2=->_;80 tRj3p}xSbS/l%0 lJ2]#剘#oOw~ P9$ DtU© cu;ָ {aU#GMg峩}xvVa5z`.Lk][p!ON5j%CUh'*.MFdϵ:Ũ6/ymlbF?\]\Y,ZbȢBBZBAȽHĿVDO@aTdgN^N,G1nk+Є5P#957dw4h ک*'a{+mfndVG냿J栁ZX-/&u;{08CZ~BгEUo MF!ߚ 5-Rfxvki+;)T8/ip!bInOe59őOF30UIk[S60v?TpUyjFd%-8mߢIFaeSɉ2njpPpF$ud@g9K) {{ۅ8$t5gWײf=4FV}E9m:a 75 ң;Kp4Ϫ]1VrcV?Q+Qk.S̥o?WHDC(1B$)RJ5`j1!]NGZ>n̡9º":==0aNPOpV¹̃km_kv3]L;գCDcvsFB+lKD 6  ԉbF$b!'3aCAC9jK06/o_'{26O0Ӈt&Lyt9, /x9IW:72-ɪ YֺTuK8@{ hގ8nBƒɷK%ۯDj3T`~v~d>|8sX+l$Lނ[+yЛ;v,[`2I(Np#ujRz0}zu ^)%GaS-_-n=ƒ}RP]** A&%:3 Cc-@vfuU+#_Vǜu%NmrFxS#27%7xɔ1xotN*ݸy 4 n=O6l>`٬ϰX{ެ?3ݜ1|o+“f;݀/43xֆso lBFj&C#Bh!EN}J>0s_8;i񠚐}Rɕa hfoѵOkWh`޸_lh4R ΁ Un[sF.'KM(!K6CXĕU-W*lI^J:G),Y%=]tnx)Î:DR)V{0|YӤjq[{b): o9+_cxKk]̱C(/ +Akҷr.) 箲҈JFďO:k_N?;%zzkJG,}o#?JjX#W{pIi;Ifb o]V2jf{yV`VJA8M=ol PVZt0 d`*1]+=DZ;>+#T%zK&` oo$PnlQ;`pR q⻵=?\@HOGඇ 29 gMJ dZ{%y]E,P?rK L3پm)w_~Tă)ҸUVB:Ya.bAsEi6 2?aG\ ,hŋK~) /&~ r`DewC :靘fd°oy#"+'x@#"^Qp b(;QVQ-ȧleQ`ƮbD:[HI'w@[{0?q/?'j||VEwS%+ ГWmfr?lݲi:tpd993n`[[R0la.MVZ[LOB>_䐅d+b.T`t5ӸSB^ij'駵_ȵ,YᤘwSx $/5ZNrV(' /jZ&,FJ:ĉR%a ܽ?q1iJt --qnGVBY|5+9`0`m}>WZ&4EtS?Ko>-\b4eX(A<D̍`ظأQ {W69\<\aY \)[dCD7C/>9Ԏ]]L "Fާe&Hiqjy!PͿtAT` i}e~"Ռj:FCi9vOjl3IB븕IT 3ɗ6U! J޶6XVoHHFZţI5#of&. C]Qmo*+L#{cFm!fV%Kqzݧ`+3yէ3{Gr0z㒠Mc5E!~mIf!gO >TA q뒿^[/ N -җeY^_IH*w }'!yin݁6҆Q/oگ`7ayՇS!Am+[s˟`fp9wP'&wV-.F@3bV]Xsvkazai:ֻUY@?#^B!lM v/l? rB7Bg4 X 96$zxfէd6ص.[qS8|3'5u{kjewr6ki׍ dE?Y0)aqf$ T%Љ+ ` u m\ RXmzaۮ(bA]9)B0IW"^ _Q|9JVD!MD #]zUknVw,d $7)4v&{r&o T('sQdSd1&J3)<^Un(+; R^ulw N57rDBDIZ^e2DQ٤g].FnO[H-p6{њ\ظewShe"dBhDK0_I uS"da}uH%!?whJYf,)sSc/}CvR1"-R\խ-hw[x+'text#ې5䇀ԘPA#¸TdǏA+ B\V#VEpwZR >GRC@3002LvjgՏ m]ƻTNݩ.Q5l) 4 ?z?P7!45>2(9ѹE9q[aE8ih9o!gcH^=VYNjBQ돽4&W_$Lz$A9> Rc(*cES4Cn%o Kt_zcÎ*VČLI0hPVUò/L Z M#Djʴ~={5Shie?OsfXj 2,u\%|_b1S'f1J' >m*XkTmލGWEqH:asjsNn& F}WN]>x5- bd$CTkR4nҧG*u=Hhx^ddw8Fӈ e%mDlzqq^1Cx={&8Lר/쇲OGt$C60 w}{D٫k>%;݈[Lqm8,Uuf.s)yg G3ʻZX`?~JTmh>8pBMɭךP`1L*Jq<a@doP3[LNy}.6d\)nx ]HZ5ײb.A(>t̄\2 ිC3N!q% f0*ޘ}rU^S#Ie? fQ%4ҩ7qy<@b즇~3`ReŠ9UpGܙ4|z#lxC%Ly;Oӟ>?yP>Rȥ[ 8o6߿D :l&!|OP~FS27\ DiXwjaMa<z|&څ.)7}{V"so_vQoo:)w֍Ҩ5Sqnf [\:v$H !@y2ɋS; {U.S:2k"f׈0bnA!^e>_`[ L%:TR(ߞ|UiR FQ)J :J[dfiμw@lCTbgNvם y̅:lF9!a.&T` @zsW1"萓mB-`0bOvyx*\Gr>o$ =Mpk4&?hدwJ>mPg+'9|#5F3iY[klDWUB4 ׳bߖ8V"fV~#Oċƨ,B,{R)nxz`fOɰ׬}qz@hCĜ bD^,%0iQ_s|)1CER\\[CIXZw!oaHe`iS:Gb 3#r͟.?N! bѓ檽0 ƸUX)f <I>W7@ZenY :@oγ ʏcRfh=Wmfe⼪ױHd|D:1QzEMQPJ=W;-an&$]ksoHv2 ]$VԜN<@ W/bo Rjꡭ#tQWq&D=ud?gUdXOIkȕH^ly82ӾxĪv Q]S?v[H47A"گ>H&N[E'l$ؚ Ɨ%d^?AT~tQq6 ,TL5OYA}b hM1.VfkΗ黖gVX S=˃|w^MKW3tOJCI]y3yYA\2u-ԣc8V$Ƈc@}9+)g/Hٛo7| ,s8aeex RiJe MV#,|My#(,<ECy)g^)j+QIɌ J[3e3@/0Y̍ Q(SCV&jqjsO』Yיg7oPIglx}7:`vdFgj_>]R!7P?toRѹ>A;F['}bIxCF C }u?^SIW@Z3 L5/OۖJ*FQb>fA镪0 )1meRcֵl MdE#uSfYuh9v,@@̎6[|sμs5Cv=YHMz߄9\uaBEPZ!Fw/pԈ]8c,dzF7nn\%zzFއl}3 UUV =HA/B!bB0E-gEOnvŰ5BUˈ,6D/L "ii#]=<Ǔ^DBq'C/ (`e~L$J ]󇑋 ~{JV2H%@֐7?R~ipֹYD 6>k?\PZ`]Tɱ: qL3zL$`kE hO)nUk?A'޼ΪB[ UNؗz>=O$#ش{KGb.}w{6HҪ/c?njoT]Om:-Dqcso˦;S3aK]Zp,<~ }Fe'Zlv|dp-BcمX0I¬X!-'#GhJ¯qTSb p`2r8/0 e۪v-0O9r[:,BԘmF8ðv<񮙛Z:λo]G6rBR T¸6 U @Rk 2ۋĖn?Pc|mW3*y{>LX+p ]/tm #in!hmoLڨ;] S)Z)IR|!1 P[AGW8 )S5됻 uj 2nb0ԐjJ?> K1:nN;qו1/%ԍ 8 pƢ)AJ+]"]ie()Rt-EDO8A*ha6]Fr7ʶIEEyFC 9M{uC% a]V7'S-O8 Hvg^Zt4_pN@wQt-R)-e4 `ZtVzE|?p0=+54pD˜2ĩ\LmuKcve ]a殩eTCgT|C3g? +@ȹk#ΰ`,)RGqGJ(0z5I^_ Υ]XSu!Hs#Evn9OAQacu`(X=f`#z\~Ĝ CwWB|@E}>L]ɐ Wc1$y·Xqs825B9ITV ܮ +`ůC[Ȭ Oaxƺ*}ETR`E;H\ku)A?ِkW 9]Ae |Wo";:W)ZSC(&t JSc2ndxܠU:ƕVE*gRlo0Q`5 OQ=*SPgU;X)^ՌUJG : 9J_aődb$wfي_ B$Nn_g0Ҁ:Bux3z/0,i\yr kvz\8X_ؾ[#@1[}'ؕ;߻)O1ui~.`w&^P aDIt:B+trb]v1^7Icz v!T6uw25lU^ Ś QYt ۈtKvuB'i^\J\m'5LSYxyj9~kZ:d`V(NvIm=5y7NG,/fp`H&Ȥg OR$qXh83#8Z1ktD X6t<IڂmpsjoUUDudڕ LE+xZP`q0 `!:b~05\vDIg}h˧EG0,Q\umL9^an_knԒ^UDbQ1d&e9@}$PZ)0/ Cgb z2Ĩ;2y^DϥIG\Gw[97Tb1~ZA{44IWDn0EapO%X+MԮY0Tyci2dNe衟XsUx<9R,hۻm=_lͮ=!?ѵ|//e5r\#aUFg;:ݮxnd=YqL;ڊ~ڸJYlO-KL_Я;}03>3ϝ% UUEpup9' J̈́Z*iϩLWDH д?2| vjUAhX]6itTNk%J"fh轖 L6=?$P]իsTpƑ0oǦ)38We{5>>D\'r훃:HFeei,&x#j2D!v!KE<rĕD375|h }%Wmм嶙{5 6JFxohX3N3qZ)@ʖ0F50^19XԩQ㐋h?zVe}X8!Osd~/De.[A2|7V=N`-zܹj X)桾LWT^-"RPM6^;tC45_kچ;Vk6"$mn/kADImNc֫!33/^>%\80AeɉνPɺjvYhFe`7 ߀êy*0< Tl%3^Ep֨G<`!Pڑ]l֪pq,ƾ#Fr;;`@ o߭i0MG&(f/nu[q Ik2nbCbٿkf}b PhYM]=H< v(Þ*ğTU.ߎxxA T7rПZK/G€G{ ,6ݰE?:w:OQ׶VfCtXΟI&s{E+ T2n'OOIO=}f1ko'3zc'烈~1$+,bm9>܇YKF)1łV};(|< =oVHAe'RQcӤ6b =ֿ %h]-y?Mt +by&@Sqs1S'3@ʂHz*faj# /v]ಠ63Yu_N+o{E8J^xcgZk7?VgKLx6aU:r@qݐ bI]}w0É@VAKKHL~U,Hz sUS!Ambb uz|L`hr}xDy .cJQ0'Vguܺv  1G$EXP^Q"9k:ПN|1k#RZV%<@eT9j!*^X]&w mHIf2|\m^}(Sj`dMzo7 ^kDP^]&qJ(GWTTߠsBD✿]=pjqz"?M&a77S+V`.uܕ6¸VEuZgM=9r1\o Iѧw:ЙA*jR,P e#0foYh $sPמJUQ5{a S4}WD OH:"|sSPQxg&F6F^Cv_w D0(K<]<޻!z_ m^ |T)B̬VaIdܠBWeWg0hFޘj2A$>%"1G@m~2 ^k[kn#?j:4 nq=ze4| \C@#/US_|0pcE&}. kl+O6R&6(΄06j2GּVjgJ~ڎnkw4S3[Zh'g4hD}ӼI'L,FO2ŧps'QB7ʔWǍZԲ~S04f\Lgt::)q0Zrlo5möe!~ 3E9tԸ'eihYe`u]@,Mhtsn|JJHj&7.t|7E8F);yr^66%oDR=%0D+a"+s%[;?Wr&)<V5Ok0k@0pf} ,Ku˄_5jIxsW"tdXdZT}\?_R5p 'J8P?d wU tx! ߚ2-_3[a/⑵Le w`aDI(^2`bk&_q8Cv_ qaousI9e Tz,2@ocv K|[IfV!z'jɊ$ѳGI$.+ä Us1TTAk/cyz)ᤑs riDeuq zWܵ4M"$I9"0v@T  Βe.3`ze@XEH'o /S|~\wwV&v7;ֲF#n}X_#{Xg(s. z }ƨ“,[4Z]0Zd2Ի4֙n3% 2zZ&oa >9ã#J|&HVMjznXM rusP1VEnp%46T92-CJS%n {9ňDďa]/CCMg/s!3љ3)a0p٧iڬ} -m[lSV6B[6S:\TL3uIitb_+);>3}o~DI&$jyФ~ĭ<#<%:K3V4j`^k京cZ R?f)ޢbo j߭ o`&A9Nɕ=. $3qI @f?Yˣ"Z8بd(<$ךdpO>xNB-g|9>fBQoN]ԼE? Жm׾B噩}U○By-y_u9Vi H{mlxT!W tSOz[Krlqo_(NمYB=5(HLV`+"g(Z5K-Gu5cEޝ%ų$#"P\B`Z/aLG~s󖇎@Bn徃 x"l X+_9I2uB\QVތ9 U%9cN!W#?$ZEOU.sW^qi:9\˨6dCȢx/i ; Ի.["H (90^ށAA|q (@EpZW02&cmGH:|+7i$W,:/Q|Mr.=DE'#%i٥ cTKYE>4o$@4e>^&]sn(O-klw72S%eO3jxcfݧpMB"#UHPf\"8WEJ:G:X-sޅכüLi?XԳ?cbMD-ؿỤ ~]UIi:xgo^:v + KE+5DKӈ+ѩK;GutYevtl/~k 1̯f*2+ୂ$Lx}ZիUWٗ?ݼbUl^KqDty }aӣ'2W%k"hN&P3P%ajV4~ 쇩:a<#y%Ԫ .7m ey* 8)fe2Dgz`9ߟTK6W DKEX*}o% d+ү dMFh`ؑ`[AY`IkKSPr\x4OO)|ϑ&; +=jJbdm=D@i=u)(v0f{s\]12,.%ڞcPtYsiQЂa|#f| ^0C^ ~t}Rvc,rD-;, B"R8{45py%u4\R?$=w*> 3pB%Y1o!if,R ^NSHSR_햩wgMmL/r3xCvF? 2pF"^79A2KPjǑ VP?Q;XuI.?0bLe-XHي 5 T|G`o.ߟN/,?(;䎀QXFWވR˵I8y(JoS: GBI72pb9 <*9SȁTV]ShrWac /ox\K卩阖&@#)Q4`e1qwBc'UY?az\ Dh̞S+G]Z{v-n5hGeOOݰa&#l>C~X+'G&[I/\)uM#zHk{%)E4ڞn.&W?vw c9M`곣D~rqI `67kΉB?5vge'YSGՕB6&.Ç6|L`b6_$ŎC/@1B{"iM($=݌a^GsM3 !kd1WT濁f_xo^jo<X&)GumTqBX &&Ϸ-fh^Y4V5X҉I NL+ $h%+BN,CND*uݲV@rrp.E*P5qyx![/ ʳ woSbTʄ,\aSY>88_QqnoP0*n|22׉l`7=AFz=KU_Jl> ;>[B4&pEr52+H<к b7 Hp`92ën,y8鴢B $]"_@O* owy6)c{  nOpwL$Lc$žScWID k_m/;%Zq߅K5^>=J֝{mQj':?^56=1NK8ͅJCl*B;Hrg;H))ls\rː ݲ~I##@Mą5X䤄RIݬRT*k~$-Yr٢} L>b.r$2 ObҋPy/}\>ADgSL.- Tӻ#ߚ5ǙV3J !%#XCPW[;@rYFAaM*Vl0fe0|f0 2jlR{*/tUA \UU p@Z@ؠ sŜ¹EUVL(tW/tIAދڮxe~?(5-wPEk;:frUĥ\9("Pa-v+WƊJ+K+*gJIL Wf2>t<9<=3vF!kFa=y"S0IMqs\ 2_6VLP@p(.ƤV q@v9OMD\0M)0Ưq@'^s^O\2ܥ pz) Q|p{C۟|Oq[*E2m?ZQ*P(IZ\jaM ;_e:X}l`EzU-Msm9[u oXS͞g(meEn fҞDPr>E, _%f,%E _;-Sz %c`BO|y(N/ĹPvc!? nJ0揾oA-U(vS3&0%L-ab|4 KILM2;QehJ/ 4 ~Y6OÍ)cE峇}U>o{ J'Ѷ%Pǟx L}ee9dA&F+[|G/7 ' : 3tO`%|A ڳZ CՖ]ijRf.~|#{DF\'*Hy.YVsIOV r;{n۶EStL$KxĄ~w`Ҙփs3`Lm3lwfQ 4BL"EaٺBū]"WH!S;?pp{F\ AӜdf3X3P2nPx32V0utfX3=IcuH:7*\K NҤa.%1IKdt)=b΀bϹ½yEI e*l L)ü !E \ʼnE;V^:ۛ /nzTA@U2x~~Oǃ,EeU1Q0lِ)Za}qng˾Cp&37!&hhw"3N9T&6BH-AZ+(̫ HAY >d= x͊*j<[l0X@̷?5S&M#}m}Uӎd {7t%c+g5Ғa@-Tc2Ho1M"΍O*\r%'#'hۺu%t;1 OOT"P^aF=܉X xo8!j /rEH/[]` fN4([gM@:$Vu]B~5[DI9S@\G` qXVEܛ#ƚ#Gqeya2TAjiq &IEyWב Q>C)L+?ݸp<25]eVľrb# !8F`0ЕـWƊ*ҁ }?M ycNڐk(Kk :7j шctKd|hUŒ׏ٝ^ Mm O>f6Dpd MQ8Ф\Co~}߾Q63r ^5DUGAo x}{&q)'+o{G>;uPw~v87ۖ5 Wߘn7cW&ZYoh B.B~uS-7$1 IAiAɨs)tM:wD|ؕ[\ʜ~A=*Cxa 3I& ZΌdާF'wAnc$FMYZe q{[K4 G>؇'qx) 51[#tr;5<9wu@8^!he L/5,9ɭ53gKW4-:aK^~ehP1M; FR3㕍-nn֑X^|gK9N\ DW&/&7Ai]t pѮXRgMX*I"ih+vOƼ΢30V_LHrX OVS(DV-9|`͊}"9e-_2/P5XvWirs 51t`pCTÝ;F,UԧO!q#B#JzdΩ,:8CR异71(>}kmxZE0A"wV4){$V1?z^+!䰀569f:MA"5Do73 j#cߡ8 v(6 3@ZP_>~hu{ }73РӋz?so I\SP9%JQ`qP:|4N^<O-}&>dPӀ;q,?qr-oYeȉux94O+ "4`(0B;]&/ʂ5xҷ6{7KVxT_څ"~GA$uƞހu47]_ak&ݛ|FOT1zgnUhlЄ%V-Z&(]%&Y< A[0 ؞i.b+~ųd9f%:MW#<+/a, 4rdaTt| >4-9S1F.Z8^xt\mMjJ)!g=7ɎKvqߙ~&t^*4x8uHYf{5G3;(o s[+LPBewd9 ?e~'SF^8ݼf6lATLmІm-![0'6ApME27yLkLaF5D_Dg6F¤ #8|'~'>-k[uG!*B%hP_VdۖU<"xayt|>.8}E溿iTdlرf̂$ RƥsI h0)bT~jm%L?Cv\8(-idHTY: zSHjqLX„J~lLNI[3[#[ ሀ͋ʜ1pG/u!*zU]1 d֕F pT茬]dVYX9LN]# TgH/)6M^ؿ&-Y%푖( hߒSH%JdBE5RFR>`;wn;?Bf))UwyBvԼիOTEKΝfĥ;w锆S 6\\")JL405x }MbԎzwb.>WQ>YkombZVWE* M(֢;i?qXpD q2sؕ1E$O&06zs)oe/A4+pRk?#$rBAbaX|`{sGbȮH VmgytU@yd\e5{o]<404u&5}FWWu-8Ƀ}+׬GQQO<>k7z v/z^X}< mI~ftqH+Zq%EUQF3y`o^#? ?|yUa)`6mYDf]6J.HJ)BX.*G|goVNb a?os$w8dWrkH)>]r:j :\}?d2p =Ž7ۂ\vIYa҃OeYɇ1kӜf'n^vmS ]nR1#x4e%s@~[Fm*@(a'\8ǜs *r_`:K(1nrh3_VMuȁ-(3CҔz+3> @3g'7nkGXq- (qx=%'VȦbWT1?a$5s`ZR->B=L,"t]#Q8,v@h%Jn/Qip"M~"R {Ex0/)]>VZF 54k}x0%-F.#X!W޿G ~VI=Od|lM~昴 WazТo $ƏP2ícmFs p%AYhYXehlT2n@%)wȇu;7֪cS`۾ `/5]҈+ @hva'BK|\~NXOf%Qo(Z}R EQhi'}|Gji&QMD╄ܟa[l`R]"!>vgYZp*mP*7\Jz{mȷi4JpBmU&Q."5G!? +2Ȳ>3RfхݘA4B*>_Ag]hMpym| h<._N -T(cd~g :6qѯ\r6Sx}_ C `q(Ea/cOiP*G&Ä˵/7 =Oz }dKwu5ƇbD6Ѹ4l2CpMN2ș)kYqVN$I܎1YAL 2<4c]R#މ;]%5}yسh ) '(a|c3$a&ލы6s=oAyӊ.$٦u^lj}39u"HB4UiR\3jJZ–Un YaQ5e{y89ja89'poV,yE'9bF`1d/|tY9jɒjw W8B+Q QeU#czV @" ~B߫cH6 lɂ 9]H?cR~Wt'?$FHѫ|%Qا8UGTqL;F嶯W3O؞O([ŷTx;HХȡM]HgF$`LyMy?x|0).)j-'}h@yG1Im&lwRh:_ .v *,wyf 駼GV,bIWQ鞠)sɜ3`E@ +}J?UB+JxEk,]Rƙn|FojRRx"<0sKv-"H1Vc s٘|'J%yHݑ;SO~`?eo>*qPb{Y] q¯5mo?m n)Aj\j=v_P3˨?U #E`B.mIg)i$ʞpX-#sG`"B s g̙WڹӘ0  %8GfGd+bLHQ{N9s#٠RY @;߁5YDWwFeb#+wlKs? >ϴ?q娦ʨ&Î8`|e 7&l(LFZc=BgͿr`,P ;5C5<պSjJqamJ{r,w`'Y5e+;`4W> fB0vT?(6w!d 0 aU]}L)|8;XDx+LSDhd}ϗ޷X1B?&X2K/uJ6R҂ m%fY!_a6Ɵ;Clk 2Rz6fefk>apl+޺顿[H63 G⯗ƾ+vb-Fsw3YGml, ].mzz2+YBt.ȑo,a6n65s-MQìЅǶ:zejᤑv"dX0uAdesj6|a" $vߤ>3U}0˲/'L.t\_>jE詩H U !@Q<"〃F2 03,0 ]c<ϞA A߲pqr[IhA:+4Qoz `*`OA{L2J?#},?3 ZYE35wT[P)}tq[cPfo?}1\TǞc4ǜy,f ~I-<CiH.L -Jl%̀(Lo;jԜ!Z,iuI FO.mE.݌:0r@jO%쪺W83 y,~_@ņsH2݂͹ˑ7W3]^8)DC**5k5J{֟<6`x4+W<ómI^:~ hFdKk%?y 溩1^9 :E۾!e:uewg}?lFl"j{ÊvL/^'<&OfLթ{W~~1]ֺ̮A#T7>~R$;\MNn$:ab>*j8䩾޹ӟ0u K>Tblz"FTzFV&Ⱦ|xk8Kl2%1a[y vjܘprrٵcrwGôfGqћjZ99"}<ESѡ6(L&ۈ ]- z}|/g+hV&CdIw\TAT~p`=ԆUP˅.'R}p9n)!k&۳vYyTܨn5|L >鴎:|;9^IO:n}ruLJ^~ wwTat;.69,=9:(ХBZfLc"O}WLVŁKVe\_Qm*ńk;NߟQ"zeFO@<(G=+k@ZYe;*5c.2MA[FL[%:2(_!HCxbXtճt( ,Xy̗ \ad8!7UuZ:\##9TF ~?gvmzJjXu ]G-怍JCn su1 A&yGp_z+K0= ~^=R}S~TzȋKt `Qţ{QqMZ?F$=9:Jϝ|t#. L~H lm0fS}WO&>żI-f,]*É؈*їTI\ bWGRxth t}9`e~6d1yf vS"N= ~Y|ub*Ec4ϵǭ[,.!hKFЮr˯͇H;:*1j.Ͳ8|$Q!7 M4e_L!xurSdR1N֙%"9Kw<)Ahª-0ylŧ{$qQv d9hc9Tn P!  ֠<ݳjK5mHnܑKs4|Šx0TAUqGiD#ob:vu=# f4g1Ar# 9OQ!(fo+bkM[h=AxӝIq|a~f̙1ydSm㗯,*a`'4%+HȴXOkq'oF! U6h~z-W˿70xBe 7#_ϱ* l5X4iH=@S8'W7 wsj腢cG^$5y9ڗ U) /?XïSq^^OEPOd#geaF`7ʑ ix%EnR郤C&,x̒(3p`dT؅!rR){i7T|7\nj1gꑸdGZt)_U!șq "΅g ㆖$t9 /w~^]`%L8Qς!Is˩viuwz/ Ȯ7 ,,ꠠ{ڻ.!M;]_>uGQP=aϼ>z}h، J$*?N&?b BɤiĢy3b\[oS\\F;}6Oe-` XXE6(B,-4(=x;o 1.'i9 (Yǧ]Yjӿ4߼I^8^O Oi#f=/T6=?ja8kW 2?J>Π>^#WwjBaBYhQ;CIo0É&ⲫ\`)i::Fy:f(e0@?fԚ@.%2y C!Dk+qAYPZmpoYzO4$ў[_v6*wIÛG< A0}\xQd*^ir`U<ߓHUw/^២3w4sMkO87 g'D;Pd֧P ܭM#'HPE|")_ȆIu[p|q&] lpݟ[ /t/ ovnE"DZkĊJ(i%ěWbq wr:^@%Z~:\ h5Sw% /v?4-RP9ѳA2 SEo=P*ys$S:ѧ,ad2RHD|XYL}X/p 5i$6#VPZ:Ky_jN6\}Ӽ,kH*=ug{ :O_5$-=<-@j|RLUm#Ͳ ir-k.a,I8͵ }=!\S,J nnȆ@O?N90th`DmG?P=95fQkU!r{ tcPĥnQ &@7.]YL]p|ZuìE=獿|zkڔ{JrvABD^>p'KI7GHmǍЪi9Z40?7d&\ξ(B@);"ɲӠ\9}?B*RjYN0 V+$,}̄GHP{f7r*`ײD$oJ}+򉃫+LBy/&j-*sYϘ9Aկ[_Njr ü' Q $T*.[~e;q+HB0w) k.ZbYpd& F4$u$?YXѤ.zyѯ Vrv]HS]>U5 8#ĥ#}:wi)~ n,$Ήލ{o 5{CzGiKdr,v Mv﮸bi'd'ѩɶ}yc13Mp$m5pVqiku7NT%FOL5w̌jmr 4 ajDZ_l# #~z| xgiU,I^BtL:*L>dĠXaq{T/]*\:L34/_Sz4@سXvWҀ FWƸ[sMLfƯMT>xn{(qB_[)SqNF{ "8BE= kF!"AXk2ȁ8C_x7Ӂ{|ΦǕ ࿹]o>` bʈX\Fˀ?(QEVo~f|S=: {Bi g'I eV\=WE0,J5Sk B˰ygV1!/\p " =䞥D˗z4H")C,*d-CCKPy 0PS ӈKS7{&*\ *MFT$i6:\9T#WXݧMH'WiW:cCdqq*6?^=8,<*K-,Z!i$sFGU<1u.*%m"UYDZ I' .ڸ0F O[h<_]은d#Eh Ů}&n1!e9iEOћ4d [ԓx,[ y0MpQ&,߻ 57i/D_~+[]3 ?N\T&.`eݮhW kR-lf1GA*] ,(v¤.kf ̸;z@qxbWl iKf϶xbtP LwWґJouun,چ;:bN^ܧH^l_5e`3iJp#u=.鄧*,'.)1Y7E!¬0$L{ۯ؝Y텺.1^.GsC(a\gb\$ {'i\-OxYj$S<#{ًп́Qma K?Q=c%M-7:cJ=际u^3ܻ}3EF A֓;O +AUY{Qmi8#CH |WƄ_BʻRi,W>R!œ;F<#m2ꪷWZk#5@iwkzCw~@i?5dr0bNO=!Vpmr*{cN/I,q伆5gϾ4<6yoWf(C>[TgGs_ZyV8w'K6̖ժ(1:G mϐ&s?^w}*ڎft$%P扊LpbBoE0Seߝ"x nCt $%LHκ>˚ǫ c/ =QNT F!ƣb=?ڃڜSwDr a>[jc.NӤ JE!ΔbIy/IKy`;=S椖Xx撱A@B3 h +m$siywA~rvҏXhHO#Ex'jbMIQ)P爎uʋU31DHllvJyJT6*-ud<;ٟ!^$@#nۈ.zdes `sFt<.FL$969$r05eĕn/DodX6%6P6ϻ拇[Yark֘96ߙk82-ק{ ۤvX?3X^ nȦ'LB5z f)*yi3`f`y鱯[R<,fWͳa:|Z[]TI)`zMAYGhfQ6K4bKzkid@4 z0v*yHfAbVn] ̄+ `#s&FFS$bl .#GvҪUm[ q<|*xE,-6:+(O" ;8sZ5;VY <(t#jgT*/N^\da8ʍ))O;K=#Pq,=qqf,,2g<]'v+H9ŹL7eD %5bjY\AC $6'=a;Zcrn2 +43"<2=/t4I'B:4dU, )m{X/%ŷFw϶K M4Tk}2i|fx55՘k`D&}A0͈"G5c$*iޤ{2|bW9qi. `},cι[%ZܾKR3s\؀ *`,퉜?`qU\~rrRlm񃞦뇂Cy"zd|iŜ^mFH]>'hz ^̘+"=eN_n)X=Y:&Oyy]:)WVp;X[S# /dEf:聳n8}ƤR`\ a\ <~k:f8Bi,glg'>F +ˡ$w*$-\x?]Xp9Ձ3`*ŲxRW%BE6 $%7>+AF\ !%fagG(>,P!'ފOs| 8KܠK~`Uڠf`v0'!.ͩܢ83Iv%5n>XFPMq,y/ܦ--S Pu)sŚS W&c' FBwtp٣tlsN賆˫*FȨ7@ZM)R|5[7s5PKnVGptxAkWa9 SdIzULN .bU;)fس8lNp{jN8}Pxh q!}O{,\x2#Zv{{4'I7g٭-)ycaЛ:w#`πHLH&W+\r515hjs5AtQu4_.Rw9E9g>rZQ(i@|=Cr| f郗"ADj PO腥yگlT jm2>XU[lAji%a L&;٥뜐xߗ:UH.B@d?4498Q1%|(ƊY1qen_@l vtЙ(7 !X3h܃(&+(@đ̱T(kB7RU_1ZjyeE;Zz2Hqŵy*#O3MG+˜/KթNLGZ^!1ui+յzQgMMRc Pc)ʦ[p!j@!܄zČJ:=>}ࠉJEoJtRb`>$I;U7k\`:/` KN*~@o l;WGſ?zSUb:m _;}Lu']MӹO#^8$Sdگ7*n42L&SOt:>;/RN:@] )^X(t!J/A*U0)HvE(sS~ BdI<`#aIu~&5I)`Zqԝx V%oSv0eԌz ;wFZ_\uyo=vǣWo7Ï+~QB͆O\ѻF1 eqp+˭,;Sfb qI aK@ D̕.zG>BYy/q Kġ ]lɃgةj^*(ʼ+8d^Rtv _Ķkq9Q2J>$"uCKy`AƈH$p{|Q̀Uc1}p>:Y%`{Dެg.B:(=oAg/QZ`8IM<%2iFɡ+x_ZLI B&zXN:) us懚6p(q2EWR06A"]\AoQS Cw)N<z ,f>o",aƝL"n ӒF:Utԗ,M )s'^E7@*gxEy[&_"D@?dV[Ozšp4g{-.Kpwwѽdf+cJ,=Bs%w9MIS m2WkuT2 %vtNBX +f$k-{_uŸ M0޴m0yMtU3$~yi RXQF|nYv2b2I>|΋hЯm7lp.&/7e {;/ gÓjR :ʌkWC.aDk1J]%Ϝ&rG_|d$ }PCAk߅U _GSyP BBmK8t$c^d׷4hŤ@O [mHMz+Հeaf4W |cLZW'鵵hY5H+=9\ʖD/YޫSt}u&~R  ASӯ':pIO۱~l7 2 qb^J{H -(QBj1FiVFcѷDA&HʩDO/%^vф4HʗŠ~]"J&'̩mQoRpDQ^z>q)@sZR%qwJ(}MZQea*DT:py~F\= 3v$ZG"{\Sѷ[kSnd"kuz5>.= d:1 Ao=6GY_~wԒrQrzyyЇ1-&hTӠ1p4b 'ՌzyDt3 >WȽmYL1m'Is kvxQiӭ6yyXfSVpfTN iSց.VwQ&WI:˴zA68 K8śsK+uYJ>㳾"XM{HHfn?)3]ZUa`7ELQ wM?7X86J%4ܱXꍉ+<TU#FKFf1J=QtD6$IjQ;Nwb*J2&>DG1r140[%?*rlnML[6fCnVptj;Z;1{y>ko&.X-R`DRv^L2W-_+i|$r=o> YڑrGcBy>WQ~nv'9A"=ijˈ>w%Q0M <:<4j|i/^?䈟ɚQfǹ8XNTZ]o=)~S Pw Q׾@f 2 J5FlASE&vKD_$=OݩuG挗僻H$9o'q17 #ؑbpM#[) H E=J/8ߎ[@B1ax_Ɨ̉#'9,dsʎxFd,tcN68@cG>9VRz݇=QJb>L\> cBO>HOã;aa6Ed#T='g}]1*CC 5Aį/ v!9ӐiD"8RhыI}cXb&Fp-EkVBӧ#B{26?7DF6/2&( * a-}ܲ=% v|wѬ>i~ "m Vir!dG:n˾ifkਧ/ |&nX')s,M?DnI[@ա"ޫ--ԲvJrfKVO+^T~)XtŹ5e꧚* ]ȓ~K\4VZHGou jsd N7)-]~g@e.nP3 "5Xizi;|BoBɃKWUno,$73Fzqiy3ٍ&|h=*XŖKfv8ԆEdЬ0zzQńqKH9?<W–_ j;?ďnQa)G4)=+Ҥ~~l?NuG|]o͐21^ImF VnP 8UUY521Gd¥-24Ng5:4MqPe$z_2c-tLXX-"=(_Y5/37B^fG'2\06ƒ#m`262 OɎnάr/"#Y@\2 FI9 ws!7jq%~q0W|Uv!xQnoEbަu zUM?3L/}ʮR;RnM$#!x.W4T27bO[:cV ?pA@,zWh u]Ǡ4iO yK[t`Xk M#"u,4v6{:-] /Y)-kt#,1t};%MDAw6uSvAEݤ YO0̔՞t5iy4kG+SƣW_EHN|4҉ T#F[U_jĚF )#/VFUWR"*ZDݡ,f68Nk%g;pLzfc-3uQ&kt}֯VitX0噃E[r)"oMR(I<( 6y'kCRlz^ޗYӼ`;8DI& A^UZ3,Mjܵw;v(qjZN˜7P'l@>5U~0pf;Mt5omI?v/F"u<0Px v]m%+xC݀0+᳣mM{oӌצ*؅I9^K7g-0ɘBPο%o7Uۑ++`x~ jpޤP)v,M tJ:nDٹp!Ա?US]gzQ<|ÄU X*wI=͒BnoF :4~m:f_)Ȓ='ͮwEALfsL]h*m3}zm$$,zaz)W)G {|(ᐝISL{yz0PKK'`(S1┓I]Jï5K5,1P`:y&R;nY>&Yh6MOx( 7}nj_^'œSY5n \oևjœdkK5F㪪4/[a ,oQH5</-S#w>s:tgA6 nf7uX\R&RM\= ò啠8erӛf6݋s~쒆sMyWl|FYE=w#J<:)H]R6g3fG5caŹSLiQgI{v[_Z)uc^`4`cdK2JT&+Ө=d6%m3Hx0)WzīTje{C ~'|G" ga Q7h{m e|**U+o j-9(u_qP]B-GA]CsȤci#'ri 0Cޅ;H0@.e KojuM)݅U*,A7{ c?xQh)< #Z|5G)pt?_Ⱥ ݗ O#0 rHl\׬G դM{H` J8zoAAE­I2=&{{mrEPz6`}2:]}q<$׭HѲb C`0OZo~,1IQ$!(F-B' W U}w"ŵGφV;zv)0A t 昋ʡ l~hZ/,r1R 0O8ʀxsmҦ@˿GPWwbINd纲7$7C2z!gIuT dF /UgJ3p.n[8 <) ޜ *?sUlϬ㹏gkt^I8] T:D$f @ց~̧d! &>cjERNȻj0FdT^L5 0~ ?D WK4z|q΀L$1leL7o]ぱ{*F5pv;}#],@i䌓=@وT~_ a1t1yE׻mV_l+>0haT4Eԃ r\)h kiO6Z8q&dvaUU2P˖@J {v/Ot"K˱9(b=Zς`zNt8[.A a8Z#"\*k >&J.Z`*nITFcT[|7Hjc#@aHײ%$ٽp%QZ^Wm1ۧE)&ܽ|8)NE56ݏb^4cQ=yfO f%^[GLd^!MdC@\:_T\cf,.y)y{ EάuԀHtiėo iQupOA Fgg`jEڸGG)[ey߾jM:ŸQ Aãk°\â' J|+#Z>sM:{Y[FV-҄EcM\!{mďtvIzG К|~p0i  gGf'ݕPs!~l]BHط=tssz}IQ1R^^sۈGΕ?:gAɁxsc ؝ >Q/^'4ve)Ɂ$Xl:qW3jI]-A C慥M%owqMuL#xrAS5mڠI3FZL펓*k1-g,IRM)LR*6V,hBuG)Gp 6P<3HUGDx7=.V<И/CN`t$Y-I Rz5|JD[fN>mBewj"?|>mJ&Wܲ']n#w Ǩ;Ip _dtE,gwR~Yw/t$?( 5_2xr\TѸ<>NJҌ;{d/Zb 8|fv9l(YxK(d;':H?y!Z͗B! 65lOmmU74"̫8?GWGv!̗gP cR"tf}B̌A\FfOŒJ%`j_. _ӽo08MW_X< TbJ|dML h&5ݢaXR@"wǸ*g٠Y[& 6{霿鋖Ohd^gI`לcN"c\ {/(Tqu8˴eB|)mN-9Um+v&m7L?N^(ҥ잯{^DAa[j}5WM x,|t$OPD!aDŽgo[saCDlUEƷtFOˁ`c=Z"$Aj{A#ڼ"fb4$|~8PRG@XP܉M(A %_ ּ/J/p8NEOcv-[Dyf1=Փ#Ɓ z.n6x)ۘ}w$k=rgM{FpS΅kjW0;jeR<A` )Mo$^|@aڣ䚿5+z*ȩh\ǀP2<M i1p*gCAZ`' uWA5K+Ρ bR@t.o7$ ?64(>#ͽlŭ,20Py?|VxKߎfgY1A)A`=^C(釲io}Z߅O&qyF9dPe‘Zj W ߱ꀸԛw$R14g6c_`lK3B-UY04mD~Hu@HLg^NxD:ɛ;P<* whg#+QMמǁdbfG63KӨAMoMnU%ӞnhS,)3$`(A~$cWLW^ŊBaC4*0vIa(C)kDҲCLeÝ޿*:令/[~}/\zHf c.$b%1<1]rF=\;q3#Vc|Ϛm ^Wg-F'_ly xEG]G˘݂ IUi, z9t;@)?!eA?@zC+a:`'M.W䗶ʈVrͬAV"CIHTĹfo![w7fFZV.} c1fj;D/NR6-"*|Ô %+Q%VǴ;#йIQv ?OzAﺔ,CX6K9.CH7 ֿDEu˫o HqҽcQ13-Φ{(DޖS|G:dN̈-.2l|ϫXi֬W!s$+ WRn0!&]\1rx#CrJmw,:6 =dsCpǮuixLOWT^>{5/dK#WJ4*E#O1f)|N$*Mgcޜ+5TD_9Nv=Kdй~Jßl|rpCBZS$p 3#1 /JeQbo6;?p2s}pL'b=l$[8d,=2,h׃aa0@ք%&y{'IL{4 z-s"3樒 rEd:SE?oz[ yH; uIE3={=bV??e$^-jOEwL n/P2|B/]oÓp5r-xA1d~h>)CCet#w5l?ohG:]Ua¯kLcR<,.@BsG7P;Ujb z*Q% ;.ws\u9`u[3;Ό| I/a 3&4Urn[h=xgg1?[1!ԤX2BD")FG& ao]aB+u3 9R5F͗4) X)Vky4 xl/31޸, TMک1p|xZ^M"Udkx݉4FF 5tURhV1:$?~|%6!XD>Qm[YnYZܙ~땅J`Qv6/ez&5@c sk~ LQ/v4'!;D[ OwG點͡26BHDюpV8|MCjzceڬ{{+f~oDJvIUkza&f۶W;@D6?6o,J4GdҌF;-a08Bm|"X0nC2V̿Po@2]y8 v/>, НeR)FЁk_wp3'muL8p ;J ')\aVB\3:Qhy]?hܷLEXUnƒ<ē15,Aut8K=!Ja T aNޝo 83s#Xcr1}C*B?hN̝s韥+ BRhzL$7eЧ7tO=Sz!Z)RQ!(gL+\FovqJԲS*(hNEf~25K$xqIyLٿk2)l;xkni=sn毽vۨ>Nېqu53v"!Z2bQ~|)L |#};4QwQ!!YQtf]yC!|fZ9!]Au.HQH~2s3=>%`Wp?f6|q; 4ʲÿ^ggV# Da (rLN]'pT'I[E4^epd'|2K^d4dZV L=o& np g]O^KR00?w'(&yфPy@|uB_FA7-faOvwrf2nkE<@r:5t0]%$=b,!O mf\}#͇`l2`zxڈحerc8ͼĔSl,2bj4]"?h DlNK?j.D7?sn$@+*ACWqNaoϐsV̥ASUUZP.#Ea\sAWrK})\DIuKMR8=a5h\hxß*1 }?NvYtͅg ;0!ɋY. k9 m62azm3le:N\'@Uv2tYuHw²RvUN;:}4?zT&fi׽{v.^R ɵ(7vinNamQs,(te4s\/5_K:1 j~Ԛͱ?ȥl)'C0-Dv'CT|/NK*'r- Pm.E}CXr0bP^OT-͠W.7 1h{?R~K( 6VBN̝!הRKxvt־C FU/l(\M|}oVlC%$yɺŪ&DU<2eN}~?wDI|1jbCZaUT*叁 H)o n}כ{T >~I{X[V9->iʧOJl."@,޺Q[*£Kyfց=lyaN8΅ט6*n08O:[S5lL:߄KwNlQuѓlϓDi$a2}>yV*nvAe*Ybxwԡt!Msc.uc쇾P؄SWtسH+ZyVxsPAW%ƇHH\YUHE3OL.u,NO$Fb_atڜK@uڃ]%gsm+^$da^Vlg^!${ӾixėLY>ŋB831>jǬwHF6Qo8@# Sz,Q5`8hi5[5<]Ζ787 R?8`'Q\Ġn]_ )֜.P?e2DqkH}xK6.-#~qG;S)wWG.8frǬ~E;1UëSuG~4n`dpr$SRɒr_)oRZ;;XоCvе#(PDr'ʍ~A͒K>u28AeJt;htAYKK!7 b.8)+}<%J:|#>Uo<`>+ט'NX2!Ĵ0[`eX屩ࢽ.ᚘ0w΁Oy' |1I Ą*޾6_pɞ<^"yrÁN8N!BxPHE*@pY0ö[*^#<5LSѬ+'f3gA D7]')WMyWXkX^9GMmeB5j*y #}"3^}ȸ/3>󀆈JI}$7D7G1\#x5BaJTr%_['ֲHd_mw-^Vc\jg΃6hJ.w+J2~c5pyW;,D1N$Dl2 l?ٝ?\Ef;w7.y#4ir$?1 =B[WRi]DA׹'&6,/>k;٨-@oZWx ܕ)'!Nk]Z%,!}; Q>bTA߆>^%,("/J'"rk`&b:~yIr&D ?S-}\3c<],,ҀVJ!P  ;}Ylkb]7g{/)n"z U$hR ZƮ}cC @D9$nBdʶaM׳oTSJL߬ĦRXTJrkj͟g-/aqDy "s8UeOls~WߥʹH*lI}uHEkEzzsˁnYI/RS *V|jbZ|[Y #nfWYٍCOK+t;,_}PQgܸL4TTBү&HnHVOW?2 pL_UFl~ۑ;KwJVv tD+l{ '||*?z'aKe+R^q&g] Y+@§ dY ~_~;*Iy%zu`"aF5S(G)ן1\[K"Z-eoXZ.0wk \`XS@A( "5/e O4WNDɣ(0Cq,M?gFI1id*ytԕ@@@oVO>H f eonN^쇈wpLN }ˠ%ӾUNaCyݭ츱q0- $;:ؖXUy{ʹJ:] x2D41CX`AD(u !1?37UL&|ֈ Ñ&PZ_0r#G8)2Bo/'sܭN _7{pGiઅم LaL3Kp;n MLSB/F!؄Q*1йDCslfҵBK*YTyC rߨ OV1c|=1!d@}q:V;>'PH)Deqģ'%ք i-Ԑ}h~*}mriNV+Fdk:Twby'P\OV 5QXSH\mzl(ٯ^yZt-gCQ0}ܩj9^_o߉ 6OL&`ER?0E π.9Oj1'pGaX2oMy}}ib;Nn]L9+5V,:u5!c[?? Myoq,>1)Rg q,dMd&Mȧ;y)^|WqGgpsrE;gMS<p,94hrS쉅prUQrQ|{r=ڋqי ݹ5qLʉ‡Pv4 G感 ̀1O.Z (?L}e~&E.C ]3Ud_m3CI΍|۲Ko3U@=tYpg|Ϩ6ej0n:(jd[y[c]L`6bPya}Pn'!~1veԊER~j"扸oBr-:og3o!2\rdCgk W\Rʉ ^gƧvL"$}v6F6^g:^3 &#-l#=d s}:e}@>gK>i_9!>L8/` oNeV饉JH4FrcmVg4/6N?,]hG$-jK=RUMwKMM8ػDySycW)y6c ֍1]npVD&^4  ֕PC]mV s5ȁZWY5+ܜ\SQ+`mm@"p(S*9cRP,q]ne?YA%0q %bB +F*յFCIqƊ9W:KݽC L̮2кjP/7;Yoywߺ&FgwJUwmgS-0SQ/ƂNq:3j'uIFIAQ)h zy4S]9kjvywTҢa,%zyD r!2.]0ψOƦ+cKD8688V j f'q6 x3J-WS'w|%RlT{2-,,E@̫^Mg}s3D@Qu^uV0Jyp \xu60E)Rܻ3WsG7U-U&a]MP{~;_ޥ ZQ)>u&8)xN#!텋it~P;, #y^ ~jDs7Z:kU!-AB-5ο Ir;1(A< ცRR! j_+M3xm~pe/"^B-t`tAaQ>L}aq~hg`R>m`;4eMٿD".8s[*Ztl E/j4ĥ Lre @'2a.)yx o׸zTòf%b\8 r+hA&~,IjE1P1i^mDԫ.增~tr^&I=iPj#䱣w>?tʤՙ8Z9[ܿ*7MJ 8 nc@,n \i?;|U9~j׍S;tb5bTb e(g׷&cu 7^1D )9'[+DzlpڨX(Tf Q:~(,ٖQ0~āa4{fHcľDWQ8ɱ}?Ø"/ve0o'-^H=U|; -L -]42&؍:9u֛6) S+Io~)`MVUmi s@Q NSaOYF4S%wm槊UyDg֝vc576I nW\K6WN-Fl#or1D'HxF }&QqCXk -23:r8 _R |P+@9k:a8J5MF#Z5Uؙ/5'I v-"UXzrJ'S]-6vQ5 &fpϢØ8md43|hk{m9@XV?:Qt+ڮVujpFZ&G?SzAa8f_/ պmR1k7_?l_#hحڬd=,t4_<ٻA "cC|LfMWc ziye]K~Uh6y+CԎn 7ߠ0fR>?f )*Y h6V7um .F 2uGhN j5:> s0r^v=32{tuQZ]!B\ nlۘ8=~Bޣ|H{ډ["|$+҄ vOf&Bk]0ȋ ̺ $'x0FZ~ ۺ!*5C+k-N|D΋֒jɤ"2 ҉~6&-#Dy*:?kx gs fA$d/7f96,OFpQ+/hb4m1sUB8d~g'F6ec,Tןb^:vpWC4 L7w)vEUeκ ܆3>)FWh_K#f6V_} u)լ Om}lN:U9Bj5|b@het%9݂߈^MϡBbug3Qvś-^|"pJ5gx*x-vf)bX/U2e%b^{7*obF֙!p;/bxի [*nQ0=w6ۈq1-Kxor@${blsz{8=&=a׵qF"ߡb>3[殑kl{,i~nraDz vok>5lҟY2[\+ ?1C&J˗H2²W_ &H 4b&!L ;? }fI ;O&*T^ǛC'\a^E v6%ȼ++"12Kw˃%E+%sipۏy4ۛ;YX{'o !ZcJF6vܽBM(8XGM-,j m˥h![ *]k+'Rd~v{eVyؐعML tyy^ ,.JJZɁ|"4Ibq>*7uNxs =ϥ%X~Mt6fY2^œN2yHpxYQcʰY\Qo;tE9&+9H#RR]$gOÛr70mB +@v֏SFaG®R:S˒̇}@x~Ÿijƞr:}$j\|{ S=#pP'uњ3UFߎ@3> /Z[\XG,l*OxKTmx'CUcP)Kc;{3bsHWPg0V#D4+Ffr$rYC}dPͰof<dg> 6*^A^ct$K9U̹1϶+@A8鋞cU|Ü\wnd8C)M>TֻO1)b%nWQpewG D ʩp2U  %'Xe"9]'<2l=S>K>V~Ep( 樚t3 X7ȝ!}vt`~BNL,(DX$Y#Y888ʱWFt~y<ysIj,@6g9(O'BOz7L.2ۅm&4_[fÍ\=wb+\5 `ҩe|hKl=2e\GcaS9!LBFPY 4O|A@EHLJ(% !+Z]ɲI-%OI$Uw<&O=9?hѻz qCwSWI]U=wyti2p`hw6jR^> W,Zfeu̬Hva +(یoS-"M<m ^ͅRvHpc_{N>;~WQF=F $wTp5vF!YFq辢g0m ũjr|FFc,όi{˿P%4qo aE@Qͫ?&o <0ʂek 51f ȟé.XIOĄЈ~5 bFįXz3tjO(n;OxD=2šڣe}4`}Cd O7Y RsԶk.)aP{U# di;Px-ep(=33.f@w JIcXrŨDo<-(O*D?liִW&*ÌNV3=N 㜬#ċPֲgD(㝳\8α 3 D}ɑ|?gy,hPF!.9cRiᣲGN<.-qō%$'k~O1Wޤ*Uir}Z9O}%rG h>،.?[qnKiF-=>KkMx jڱ<~Hl &Wd%# 3MMW'7 O$ #ʟ7g^{*gV\$ 1V?$faKL}'Q=Rk'lgnρ +R?+oiA7 FFcuKz9mҾb\ ؽ|[^cAȢM{%w8/Bgt|U18~Gjgx1V/B4 1MTL笟ɎB{(R%̶M>{>[x|4qG A0Ql]nsP)3 Fhm[ j: !lH=k9256/Z!]qIO&QV@O,B>VCC ݰh}DUkۭQ0G$Idh3 ] 0h@UOeN-IV@da킂g(4IZ#D*K@!EJX6>R*p`vWSϞ;`xv G"FD)lG9hcg:#SPx-|L9_A6e^ZQ,%Z 2aM_2T [^% e~ZCgW-%PI`4xz̫IpH@eBX\9%Ҵc$U5eٵ31[yܮhҐa8.cx "`N@eAy UN4aJ4tP:3]8 .qg7Q!ÅY}N'`-- H%W.ZgJ%ǍdZ!;5~>^TOSGERV\0X{r'vPa~a^^Y=a[, *2IXSR!1FI+ +ض_|U9IKCe7z]x~릶o 6\ԉ LR3V7 _GeMyAcBxc(͋x ,.fGۨJkS t1;ߝW"5=Y'AS WmҍāXwŸ 5Y[݉~_|\,.&ɴD?]Z+ +##\eI|*E2πVJLRwwPkZ:u $_8 V .v'(^1r -:kSi@4`@ً:Ls:$^ŔB1A+MI=\:8s~qa]{b%-ӕk\{" DգO ]5i_~:ZCټXZT/d SX\@nidUXY*}pJl?SJ8MY |z@xrjm_RJWo6v-sCj8.6g($z ã\!}?Ghx`5|L3*VӇBqMx [4x lӏ J]V޴VDXy2Rx'Htқ8YoGM I~wJFn& >#PU?9A/nԀzG}V͙߿<g? {zug<x'h&u\O#f7ɽo ?=ؑM{5HgЬҁ_Nܝ,-J882lz[]Mm Yd736fl,kFYlyLZ5r-x8z%iU/%uBfϹE&7F:7! R4#ů-u Ugq2v>6\ zCxI&~yL )-oJ\ `#$$eN k)g^&:w>`DBh'ٗ>L}>i~O,^]OȂ8H y"oLO0O,=T Ku ^zG9h2 I۷*@ ^Rݵ,jI_r*ψiYU= 0X UWDG!n:MPpL)p{ǿUvk00XzH~ mEi.MI^(۔`cq_ | l\*|<>-񌩕~%5tT]Η$s=ѱ'M,c ҫ;%*e 80O:@þHC,`^i !(l{Dw'Av7 wG$ƫypp.zjbԦ H?+!X*W`u^+1hh[ EmK 5/5*g&Z$`W2ެ'%IDsItlpW,;V2ne-]|QVG,yݤ\YRM\(\YCY,BlY^42Zo'$NJ" }J07XBhx>kV dyPưJ( "D1үhZ@{c[eP} wn Mwx`߮ƴ0}ovba&^s|̉ 촘DJZk4W<7]kwFܕk6= e2锱S~)0d* F=S98j1Ps[ȋ2t•v84!oBvT) _ϹRn*\3 Zև(~&\ntRE{b5Lu?Rb R_u$UO)n 'OeMh klH%TMP{1Ixi?h[SK#D !k< V!-h W>lK/ uͤG Tnqnm5"Q^{/s$ߏ׭bP69^jAN+=+ԏ4#elaDo%H[Z\'??OUGs8Wh$R?]'4}k=sY *sfIqGѐkƈp~n"I \g1=YZ*tM :r͗$_%2_DۚpIinW b܀4MPMFx-Yv 8`|,ֽ[] !3J*ߙu]фA,bM"%XbެLA!+fxCrC\C66$( ]VMpl D!_]ibPP@'; #>ZK̃[xȁKr+a_9A2/GKmNl?d !*)!/^:}:1@ykvi14XY>i%tPaݧd8gcuΌPLrfH%$, U )"$?3sdF%T9}_ENQFwRǭÒ%j5Z o_|AZrd/md5sR :خgb,1aTS5k+eÝ|]&i/ * (a<-@dKN1o(@q*^ R|FVeEu~y;QR>#z*\rⵛGrB9T4E\' p&l.lL5)("9Bylh.sU 6f`W"Io>3O 5L9܈Qq;^Qͪ/ J+[U%'M[ Oa50NIp/ 'Y3BB1{w:hEBC.Ӕ \p¯D$7XhGUè]-&T P`Ƀ!suwRJR{T1;crS;x?"YF@'Y{os>}߿2rMD$dJ.[q:*f&s]deԋ}rك`+2cW&=RB܆2m; 9=Xev[7Fi0ZsD')ȸڐB@3 9gc;eДU2f٨̯t 3"sq@Zg~U\X| UFX]k.ƍ/|$.Ǡ+P<9I4»rjQVP[#٫RMtDpEwDO(ʬmhPζǎK6NҡmS1.lTSH|` *.Q!G*_*;~$ш# 2JT.ƞN/ H}'Jg 'g؈Oa>9C}>5")b5 *򮵚Y _6aK+Jy=z pŠ7A= C |@=j_",B, &},=y]IթA3Ef'ȿ,bK&ݗxneD>7rB&`Rkv d=/64q.qWyV[|`coJa 29È2/ ٓU)DMKS sCw}SJ!v\ĵzkP`LhM]6r]x )(Y1`fاKg#8gXJ_[{;T:2Ӭ,u8yvl87L_v)}T&sw^V%ۜX{kIOm J3@EN< CHrTUC$:Cxń(dA!lgWZBPwVLQBQ9E`^JAѷ~P%~4Y. YܳqJ{EeZLx &Dݝ| Dʣ+^9Tgm>?/*DŽϙv{O'2-uxAHX9XvAL~s. 'ǙtKJŠ/UTFmnGjr\S9SWqf׺׻lhI.lCdߑgI(ǰg[P)Iq~tAx'Q+[YPichEI2f$.eԻs{q_õ83MpJ02uf<{qoTOM4ߣ \4G×}Pu\?.٦%k@8jB8/~™h{D,=sW.ށ:uK E1>{ >$)pmziڎMɪhqi:<2X785 YAC ,SL8”HyA)tN-[u xxfWYv'=f?cU\ }YT} ύEO-Y=5Uȑ,ʩ57w{BSײF`FrLh35! 8Pc^jp(8.jwLrC A;n鏻6P6ﲱX:FJpã}szD4kִ:ܩROA.2G uӠ/AGԨxrdt+Gp]ŸRJ햗~ `Z9Cu <@E2_sUԅyZ+CcQ**8:e@Zgd!^7bGB2]G`i'$\>5@1/z |Q3wljhי==\9>W皢;d!+-W 3g:-m }5NT d6}܃bcZQ7uKDmV$FϤx$ 0Q 4xn("&Fc&ʢPd%)%^O: u}k\ I$T|31T4ƿʧdC.({`"B}>eL48uj"5WAۮWԯ*%1Kh^]Ŵu]N7L힩>}ꊿBQhg 1jmn*P'` =9PdXFM1}ugvbP^^nf:>]9\[$ǧxx _1C1$#O*zL!:V.6үWe2n#%, Ol&Z4jjlҵ5mb/۝?%y\:[βQ`I L%`OE4ST1ix.Z3Ipn[il_~Ge 9I&|p|v*99#aMBr_%3%IӰ֋]h_U-FTޝpx,Z[@)O1ʆg C 0(d @g}?Мvb$H{P X;0ǫ: r6E t#gcqmZ:LNxױq7< zQ"t^9҄8qLV<.s}MSRՠקCS4 po?OS11|wy4F^wk89}(UEj&-){ց/a>4iH>Y=Mk24ByPg)(ѯygSͷMEh-_aŒߵ2Q̫ ]*=nezk=Fx`tyșQ JNL*)cAo⫬Vi5Ļ@ә6;/mj=tTŲec97OT;|\bWf]V8)`B8 /%@U?G\䟜kP87\$K1MogN?(Rf;Y"EnbZȼ}=xvVϕ:B<° ՎاDJ=g gPT PK{S?#ko| e֝:um,{ns){QT$r}xXS5-<8۫iG;Mȱб|yS[h+ǯ20 * NRdS^2"n̞XNѣN5(pnPH#?4>3܉&X{,N`~oi-7Q)%`Y!$/Ы{} :+тS5Ye? KR7Tv?Jhd:ySa;`&Ptf&[n̨A'$K4@zbD3Nž>+T(<<5+ zgte%F) yY˂0O[%XZ=ftHo"u ՛@.}2~( 3v"iN 5""6c|0>h&#h1I_<{ic屝@@TYG;KU,`WXӼxQ 5#,gyrb4b &TAhLf(:#z6;>%C a;}9TN_Ht*F>Rx+IA-x]Ե[?3GAd MmziW;KC)([vw# };d!q>\szׁN 6Kl7v7OV0Sus!ZOPLߌA#|_iSBc} e`-\tMi^:`^<.M{$T+8U]&nȦQG|!9GAq;?89-quⅵylhQCe/%#9:Acm> #<=?۵ke;os$#C $s/a qo!{eG-my-"TOe {t7 yXbdދH/E@h JCȗc؏6Ktzٰ$KA3HM] TK}|5I/Y)ݾqqSf|9RZGqKD_>K94,DžIڶ¸>a&[rua`cΎ0^S a5eHsꪞTqow"2|`VzҲhaڏeHk*G#Kg *$wn3mS4z<_l)f0_T^VdἈKU.~W`lHLwFLgF&un%dpa䓿!V&,ho܆oJyړiLzs{RI.~N*2u%JZNrIڰ2b=} *Tq|, aAt\diar,uѷnY8*v@FdP7g =f %ɘ[aDeW;kh` vrağgS0W1pj _.Cixq/ @TVmp}Y4=.*;8pEPGPDa-OQ6P'Dr̸DFHalVY&DArLQz\^{^a!Cw Yg EA\~M91O8P0#pk5xc5J?`6U= jM S@6q!Uw9@ch3d=8=wVΓt+]PcGɢla(3ؓpW]sVYsa0鈁|,>w9}Rc}Y-Kۣd/ ܀9aS>fM!Yp|aߟP@d><=ŭ#_sd0 vj^0ഭ_xoJHۮF JQ:/D϶i~Clh`1~chf>m۱.Q\k&gIzeqnIѺ_zV.Θ 0&OUih /lJGգ1xS3zAF6l58EM~}UsjM"jd5+ۆ˫N JXHc)r@V]l IFM{wycQ9Eji$7@}+9əUDP~:6F *8<Y$=w &"wa96sfTffB-)` kP$'4\xY.gxIPUz)ܟpvϦ7Y, (|Zn"qؓ E~kМIK:w9E* 65Ҳ/plu[cC0߀!͒H/CxJ}`RA=Pư0t knyp", y/Ӱ Wӆ\>JXOCAKґ?J3|Yô9WZGsnCwjNCu#05Jd@_asCsgCBn;S6Ƈ:Ea=J14z&ڸ)̟Ҕk1]:L N#*TCNlny%$2Xb\zBR-U5O*O*՟Z``};Őp&_>QbpOh~^z{sCi7rc}S:[W73a .L7ƥ FeP(m:@ ԉLTE7hށPlCT eX`t#)C+ߋa m؋{DfE%4V~nU@}F6, #q5GM{iːp0Ra6Mco4lrޚӁYhQ#oG8&xÀF4q4چ.;^r+v%BY(-h{_.ag(E[VC^GT9ja%$AG1p=Q0`2 51-Z$8?:_HEٿЇക(}ЃC>y̰Z?Hi!?QWsEތYΊߏ)2h6!%jkx GBP-Sw2^Inqjö]I W:r1.E1J5Bc"Y(xo39!w3LκAwUdb$y؇mʑMɷ2HJB"ȋP R-y:pdqsQq3jJ7 C*BZpc7'/N9J;v^Rp e@R&R޼BuX@.'@V\g2l,lA$2B|(%Z cM?!k]XŸٸ"V^ vzm"oǺ;/:ud?P;M7(RI9)NnBUvHv:N/tX(2 |f)$ NmҶ lw.O IHĪTDI=?S>={RWX =mɶoN4A/$@_0VE geu‰9WЪ(?gMDREh#i::yHZiq#?<~״_-9puSưċJr-لuWS}{qxNE_O$8y.iðg'5Vcz?DŪɘ?7B(~ǥ DzΓ 4{چj(^ZPSd =m _M,GX+U2לZF=R؉=Ie8p70CS pv(`^ o4b҉v!eh{!&j6@/ߎ=2UC. EoO #lV"(YUԧX@ۇ?5d9fIR&be?Wʑ|T8{P,1}hw%Ķ ] IZcPav٦w;'6+wIY鮯'YF~ k"Lkh#,"Rڃ5P-Cu\IiL L^Vm5/gg;[hZs Ҙ0;OG$le2F2CFG0ubhLy\D-cp 揍+&i4 'q4I6gK.2`"`0S 23/G&ΈϒT4O,mgp2gv}t¥+g26jۓ:pG洣>5cR-\OE.w~?!3w ~Y# 8|#tp]&@nJ@@)n-c d۰_m}`7P#FDe#fCD@zQ\?@oQ_`t`\ܺ2a+p.էF[m0ۡ4^1Yd>hXN$%/K#y#׻~M DA+\l *씢>{d%glA{+y $<1k5h(?Z #|<6 /ll?FfV'Ô}`t%70[I~Xr(J~׉k"E󊲗 Fs1xŅn#^>8p "}>UGuEWŹ]%9b4:޻aI0Vf6+Yq+$K_EEV9O$>xkKT8'OF*\Sj%.aDixHb/ߥ=?ltt~uk:| :BM$kZtSؖ goDطKMN].v[4PBP d(Z4|ȴ-3 #x; MYUߞ2w6`(0ʒ uK`=+Cb^,2x tllk(T-* ̑`uz,GJ~?oH{M}Ѐy\.]]3y wTJ^w> hۏZ-m|&ԥo:.X_B[KjnvEʴ-PZk ^Z]=Br~-~ ݞ8rMu'(FedeOBa}Q;_G#_h3EQu6Tk/T` M(ݔ"zUVm64$vk`]F%<%[I)mͿ ROFE LS!Y@?$t:5ao͔0Y kA;@/ ?+ߗ5sę*O#=ZB]\}{D0Y'p4gpW'l/[xm婎DP;y;1|8Xg#TP"~͂8R(F-&w$PTO-hyxe/pO" lOr~յt#f>.@2`| ҿSyl┖__yː\w(2|~:sfE,أ>m biָ@"oN?f=)bqq0|+Jc+v[ߟelBx(ΤZtl[gfYY'$%;U05m"^yEtdZ U]ި[/crs%|Wl,ֹ 34Gf b6s;&Tű>R]W& eUR\QK` %% sHLGp37x1U'bL Hi%*"mYL;>EZqLHRc9\{1 ;A+r+~>]31|OUu}&f`M+ %ʘ~J)ȪRl޴%7y9%4|i zY7>#/J2Ɍx\ _'}25?m7X v1P+ADfzB;׫;iǨ]XPηu4RQJD?Gξhod̞A=EލO(rV1%z,ц󪍞M 1ۋ:LXюDcZƪ|+ջlB,Kk1cT e[*()=дA@N!*J[4d0 mH2Q63*ym#ZyG\1.ĺm[pO>6d)1blxq6˽ҶkDf,B~8"qH-S>fuZ(T+p{QړG#zsշ/ ry,qzvAifXQ2]0d^N[W5S]$5a65~s x_ua['&%AMӁe1@E;wu.紣kcCR:%T(ym% uc&Jj9Yo .yj;Jei}MS->Ūg 5Mej5 <\Y_h*C$els{ถ^W?:cxDpc^z+|.a笧X|. /2' WUOO&S8r I^i"BBV$'33|?Hy'Z]۩p~p(au;'FiKX6$v'Xab'b:Vrhڑ('uYd\t*u4TegCS MVy+8}$/Xt:ڵ 8/S|xg}ջLT姳&-Rq.3=9 QZ.zJ-\шv弱+AX~\z l"16rąG7؍JoZQ#@9op("5wYr7Ð^q[Y[3׈ } !a|:}~&ZVGܥ#TW5 ]m%XwpVVЕy^4P4Z khgR[@G).G-;zICF}3i}ՋT^ޥQ>cfYHztY'G )ݞSq*֣S;bLp{¬[,4 ֈ>>HzؤVcS6> .,&'etۼ[L &D#}I9i";'\ P3=9IEƾp  #TAGthDXf;^P NdqqՃ)iV%xF &ǠxTTZb JbS O,+UXC+Q1eh6/mbqsS_:}{&Db%?0cNcܯP:EVqMn?%ӥ0إ0?Ɵ?,ǺD;eI2^5z>]m0雅w !rJ ̡!@(䍕UI*h!) yt[tؘ`NFh= (`_ wK[|]krdW՗cP5 , \i qѰZd_Ȓk|JM3HO .ּMR»2Dtf=TFL=c__uUDΰ9x\pۥW69OL[痖- ǼXK nQHA~)mq⸕"Ǎ V@ֺ0 Kx%v{[e )gϽ{zgu7i'93CwB)n9tזp_g@Rkv 8lxF0i_7T8PF_!i[ <_fk3=BI?x}6L\ Pr|3JCN9#Z+_W]~0:nڲ5db>W;F|]pi5kD2?F͝2wutbfi} I'>M)aFL+T'g%pHWrS2Jtf- ErSyFesٚdݗ5̆v07oP!fmt =j)z o90 ;> ^|by*:k{!kiw]fl&qpZ1x:_OuXp1R0l2B\\;ҍ4]b *ۙVv x`&.YCI)xhO}gV iě35cDY2$T _J /83`I190vDkk`{ XԜqcIZE,#RLm0/ʯ K$ݕVW}aWw3%j-vD) Y]mCa+39-_م?.m5TS`!0yOGGM|Na?$u:eeVΏ_&54#tYX3Q"Y6H 2_HMĄVD}GϓbsԂpU mѺ9-ك܎ : N -;UοfcC7A2'm~zxAp8_p򡛗u*KĖo Tf@\ΨwᖉqnITQݐ\d2KcS2WT"|yĮC 2/O0n"H^nƲ:}?P=SmZY:y0"Qf(1d Q37Zwg 5hDDyo-:JEwbs+8[sjCXOaB^X'ԓAJpG)"XW/ YQ51]`ʓUH45h7eoWAЎY0Jvo+lf03G< Zz= &s_ 4grYGM`W wF,|+@}ﴳ` &("A*Kt;x$yf-wM7o0"?_vMFć&֒R偏zQ2of.JSKγO,q?"D|SwF tSmT)wm](D \EH=.lޖ~V# }5 =*7xێß;]4 K0ee;Fb+BRF f3r"2bmL<^?SUV#5Ο(G!{stnR 9xSV(%pr$|E~$2nuʆy~Ɔrbb %M}, ?ZsxT*iKcBEOwq(uU0*Ŀ!w7*tbZ{R 5S@@ uܶ~Ҕc˃VKC1'#~M3ne{[Wz\#83fX&bAUk}H)oQ/ʑ 2%+(ჸ&K>Fa,sS7FV^SlڛNY`HSKNfRpdTq,|uˇkdVncon@ {9ha! #yw42لq$BRkv4E#j}h?b83_"E[ 9Cu[1BT8O耩~TJ R,uQm_e,]Out~J2(1%';Xeu<9f,xanEu!^2h) -'/fw{Lk{7rO")NF˓oF˹^/ꀒF+y5lrv g/yZQNWNܔ|-9~L\~i3Ĭ3anE3[/k4z Pz;=`fhq%70.:Rˀ')I3Bn|,ӎᅓzsM}b{ϤTo!1Q3ʬyZorDkR$[P.䔰  [G+nȭD/kUDxE=_6BpW\݋#8̀8C90ңx\I^˅(B [h(4!v4m{]olT~FȹKR*WA^A'IϨ^ ~[!*_50/4L15gg];ۡ!l3A!*{lY[Nts0*=LPtGcV29;h,;X,5#Y)&deÙg9Ro:[Zඡ֛bk8*oFc P(l_ϊ{ۮ[|]$F(4"N1~wyոJqȘ ofB8*ՈoM:sJv&g`}ܙ9um<;l %AMhUyצmqrG qnloM@|\i7%~&V]118V-8,9kcws6/ba՗4\J܏=/a- 졎 WNa´+jvu=oG2%6T?cmlCdX8}DG݅9ݾ 5mz4@2zXn J.G o+ 3KH _Fѣ"bo90N 5qu jJ|؇oiMQK!Uc^o-/9hE7 MR\r~7>`mQ : MFTɗA[VtX "(-g~-N n:ظθ0@KlYp~rC~G^4M]0تZ[xRSul`.:դMTc$Oџ@dIH<[0!xs6' ZN"Lezה0gKiFrzmN[Z46hUvyۡ sĥu{I..4s;9dv|<{rLN-K@(ja|3y B,B9zzu |W.2? 8O-F .~zD=NE5smqn4 }kHk/B2n#3 j-<֩ĪlPI@B6Ea0?E2G%ju*J)fת-lZ\tWM\sڝm yˤ#)Txhvw`6ʬׯP%]+|:%L^+tu!G+_ns QJ23 dq2F}N,K8 %k}F (A U#7ZaNJS PH¹l*sbmdK-<K`[@T.M;_6YؒzWN[I(c ӸxqE c@0 bٔOP8bq5*VJv;vl()K{t>n-i}[ f !v}]۞L\?{ ӆ} WJM>6$KN3RAi_VExVT5EY3P+Zfa]>sWpZ,Q(v4T#H?372=Qg5UEy~]JڙD08ձ%"ͪ)p “ЮŎ`՞kXN.?3CV]bZuB*u/MjՀ^%f쾤 .. ں"a &JHҙqߎ;Й钪Ij=H_eC@Fl>5obNǐm߳͵&%ye:^_Me%QХF#28ܱp.q]*mw`0_N6'Ѹ)?X:˅15gڊIGj_LPt:e}J8=X>]=ݪ^dD$ cK"+1 @}ڪ.f7D"Bk8cgT]H nj1%t|6Xˢi HN /14a|?T<\ͳuK'&Wq7A{Є$=`#׻S4OrVzcE6WX3å"'PR1`\!~U|ΔyOPJža ó!0j>6JɆ՜hxa(w;o^p;#]"/+T?/6nYEX! +X!y.ugÜN111K$tqŴ}Jq`O@_vZK`u.憛+O]~ylpPkD,xREh0$84HnedTwPm!ozkDqK-Tz . ԑS%Xkr\H"&~Яg- _O X1JqRqM>.ly0AσWO5xM%'cྐྵՂgɸ@$/a' ZY2|ˉˍ`f{-;SD& \,t2ɜqYʼnd N0í( [f  :+X&f6PºЙ_+ HNItgi2y~rJ|!)D3v1so{lN7cӡ)H5x߼34{\JT@6D>;s/aI}gl3ЊG5T(E,{(zq|TDcؾ%fp #q`da9~XƗP lMG:jqP)mؿԂUgݤLz$w¹GCyq)NKٹvMCBWT{#wУD\ ʦ#cUa/ڧގ*DxŖ/Os۶J6HS`J& 4 rh*?&T;bRRm?[%cgk2EP? xqz@jDL0rv9`B%́ M~g\=n̍XUUri%&9dٷ$'&wΒ4yh#FXY8?툖z{[ 3{_,^Y>C\#YD]|`GȢn 1kj!w,]Rw<7Ӌ&e7h+,8ð<HKmV"`BaW1@4̳>cLrtT(D^PZt`<1& ֬"QooTwx >rj#o.?3WMI|hmR0/rKXPe9zc#_Dv#,k̝F #!XD|_h-'YqpKN}+Y/lb@u@܁FE2r4IēVNkď[Ӱ/V -b).(Z{Rp/̣'؈\fױ `1gIY>qBh83$h`4R/`Hh$ukJ 魈vwĆ0ÑM:zAB4"v<J1+do%iV8e2Ϭz[{4Mqz,mᛄcg"[*"9]Cz/x5{7+PL$]ABn+> ˄T'^v34P M~L`;m 0(2G&|y[/Z@fFT1A'0E/$I=")m@<J"RgA܆Xv.| s_vCcR/\Od9q(s Z6P a p]3?*I`d_:Fѿ\2Hr7"2޾" oRcsvO{9jjna**ȶ `R5 Q%&lB|v4250k&b^R:2P(Ajٲf2:uTEs: /^Vcs?0kN^,K}쪌 yq KWS6ܦ,R:K4SE]M]J``bVz*ؖ14EN.ܔ I3}iQE?p|9@'k W+O$vh/YwrO  3%"H G/;2)0j1`Tk'@XP֓VѠT9N3irQ)s! lRU4:C*%]'1F`ΟO1?)>-Kav3 `R&p]aiS+a8p#x"":AO Vm F|'C> 1mڑhJ[&9t? :N^O܇&5+: Uހ3|`2Ǘ3>Jf` eq:cMbf䞸:3M_^xwKJ2 u]`[y%Lr0WDϝnQuʟ~SUyVU^x-FaPil66ob4XzM^!gHwvAXO9j^tMcl"Ȑ5b:3 إq ǽ"XLBO?2$*ȹ]\HonOgicWVF7K3re~* t=ڕup(77%`inwhMRb$K&H.]ɒ Qx]mX\S0l HYr9UT?7sRDd A6JzYwMgU6ܴ]#kgӸDۊ3ZSsN Qs\zHړY*R7Sq=(S=jc>酐 dҊ%锝@{zw|kJg.蕜*JoΡ"ɚve&AFz)f3.!Wcy~5rAK[MMAHͤ,`4aH0ySrXdca'd\*?%0G9X tYERbV2X.NmXҎ_Zg+:iLm|C 224T֜5Yse3MxȄtjgA1^BXuƏ^q Jي,bƻ׮e\3oK5O֢xoT":6tqRO X E~36Q.⬁]69p+r:@Ah!Ovax)cK@3 M}APSƚ3hA8 fA9YpJ4e)%)Rq;5jCT8d|||-ߣxSurt@cwE (3́^؟b/֬33t9?8+>)PorOZ~_G1=ѓLvfav k+-><םq?߇Qk#LWf+q m)\1$87n HȂ|e,OGLEy=UT$IYG;>jVGI,Ѽv/uU߻꫼R$J2^ ,NѸmj%;Mw*=`( 7[!:+g chԴ oq,m`USyDpQE5i:Rr$v,q$.KiO5=F逨ɻ.-++bpK`̨Jj9:]F G7LEu.aZ,x?g> G?1eW\3 t (o .SD 1⸑[U&!*m_&pi5T!Q]4H<}e򅨼zit~x2駵aQqg[Cg@=~Oi,xVgNN9_5Hm: Rrܚ'g7?LP,N@d8DEV&Ǔ<1ys  #TaroHJo]|8RHwo*7\gc\7Q QGI*r@uEp˔d7lO/I,^ DI鮒ѿ*'16VHy7eȏ(,n8qx a$S_5#FZya_|n:,(y%˷d:PBŎu58g;VP B`unQٔt>.;5=|DqOUE}|)ϯ$Ԫij K%`|&םj:? Wᓌ~CQ-5 x Zrmm}&9X//闫b=ںy16IӲ7҃jJX Tw૯D;`Ȕan~v<. m>ݐ+x?.)3eҲקV2m}<ӷ%ICbWXҒ9鳫-VAmYZCƣ Oir`0/!i^*o.{hɧ0ʹ*&Dʇd MdQzܝ[_]VtSڳ|A,s!ɐskfCK%Nҥ#姩AT!},ܑP6 hXTю%%9.@{V2nDt UuF> ^UCEqb % Jr)edD4V7+:gѦ;+/tw' $9d:PF7 `gEhv` =<^)mrkdBRk).s^e'K~ ws0,;h?1w0?ʺj v{2剕 |I$83w3B40M?$++aXbҤ3#:ȅ =&LGS_J ]䟙J&kԦ$mxJLYP}t՜ɷl(GώyRaPbmF~v]Pν%ާ4;ɥ-O-ߖY}LFD4g=X|m(P+[,@I%) :t򲖼DYd4B3A+.@~Y ܶ nױx5!峕LbSu#i$ŏլT:t&&%ߊڥmQpDpU+uŞϠ NuZ@ƕLj*VҖѢ+qx_w h)ԨgmH,j]w Yf OG&]r ]TW݁c,`t;E.Oq|r3L:Լ94iһvVl<&uvi;b'YD1b >#l%YQhὨt9&@ HF*ٌ}BüLZ% ק['eOU7A3l&Y=[u)1׏L"qIёBϖb`irLê#AoY <어`BeH!A~s2 +_\?DJ_@M\٪oE?O]xTF釁h"|1nGlBHjFM_rm#}" W~9x"J UG;$'%;D2AuH^y*uCPF1]#x|15 ?me= HkVZAM#oK|M^)M@"X' !NOz8CԏZ'$c[XHb~MHhf`>e?JUEdŢܻ]*=1|ntsW[{5^Į@+L>Y=Gv}EKhø4h/[ ﻕT }ea#ؾ% zs]&G$1w;#lƊ삩*8 ~`mu&sx S s,tL:ϼ; +`vZ6H~sLcrjk-@2ÉoO@H𗏂bVкi~bϒI)IEk$5@)s@fB"m9@F( ֺM:&2\9ȏJޜZ9<<?;by|zM,(IY̯͒'JX+#BeuLIO|}Φy;4=:L 1\gE!?d۩2 ,ޚT2PsB6- H|Qe3hujhN_h!6$~oru;``FW< @;kG]t"ZfA/^X&LW"6[/iJɵ23cM؝y6?p‰WUk,i'$-?5R7,V.oI>?Iԣ:ü_5בNamEP[~вya}Z#QҪ|=_[ OJI7f#TJGO8|ہ&k&kL%#l8\:`ˀR}a|^DoWd ̍b6iTZp fШunC'x$QDƯݟOJ.g务ye!'p\NNY©J}ڈ_~?TL٨s߾k< 0mr4 9ck ۳/my%n%yN7@96xٰ#WRk< q+ۻXKMYI\l*kj_Wɔ7Q_}XD|Ӑ5hCO*OjG2chyl\sS4 2%uu\&ͻ}V37O {gkI"1nPٰ(sG0 qȿ{hl"KʛJ.~7oIRS'[{[nvsvGLn.?TtZ|o'~u7~oFy?r>yf~22(6!~Fs?Z4ٟiE|U#_K`xvJܦw,/Ԇo;.!l&ZZ邴O$TS/18Vؙ%ws;Ck .zq"!g*9?}>nW5iў[TzsT2Yl!γUZ>.=ssXXDM wtfx{; Hi3{xE;(mJaL NЙ Z4w _B #,Pp߇P*tCA$|~ɪ ^fPLJvId52Zd&"ɊQ#@<*ʵVH%ޅ;̩ɀįI1ÉpCH^ȏˁ֑GX>pFـ3=:2&X)Fj 쎀!#CF$kM+Y`B_5l ׈VMdm*-YW.IVW=f&hի)mP7|mFꁶ.r9T$URNzݕ޲ tW9Xy7Dbc1<7mW6;csn',97ܳ_&t-71V␫Y~U9..=ơ$x6~6ZA'0HW qF|R,W`'4h`-de:ɮ[(L1?[iԟ850́ DiS9֪=bc_eQǜt7ClKed1 Skķ:WZےu)+mfdDظ݁kQх1NVȵ@=>a?2J3.HAc~YXĿ)/tLZk1>b hp5Rׂ{.?܈\=hžD̎AзԉXJw,'*ލWNxrTx`j +YQnYth*y txu@ϡhS00Ǧ-нj}5S  J5}ȶ^̍$s، 鮿]<٫_4{qkn^Y," {C|,|G S{\5G³]2b7]ҖVgȟU}'Dmi3w40m|o/1C,':9}en-Zd =UAcyW#gBJs(][`i~ Ma,9 [Wi'B~DdlvȮ:Ugzd8aXY>læLV7XyO[΄뷁F`ݖ}]:dޱ" a;LXֈ?&߁f=HcKUV#aKpblv~wnN1&|% {iu{7/k di T.$sVcjQ:K?}O.@)T,"9m@L̰BMɷ_ ]x+ "f_‚%Fg@>'z6X >m yLznc6]:8]5 Q6xv!25:XuoV#E}VSEpqm^ZGtX͸G68lRX65dIVPj"Nl$ e>G ӳ=EZvb.ӷM``G7pË,/ T \>)Vs q:+btuoK'̩>OW}ԥ ,c#B8]yQ!H ݥط5S4%n=z( [IԛȊyU˷6Mϧ[Nhw[Ļls=XϊaЎ?ts(F7Xo0#e[I჻g<_usH$,VǮtFvEZЮFa_{Ƭg`!%!O?fc*W'Xفw0p[F-}w}]x3P*(L?,gZ:R+su{%K L $R ;2lyWҎ`Ҳp6rm(_ 5̗G zɇU2ɟU,q՗<[K4uvd%*Q'u ]@])iY'=R@#-PzTk٬=OL!?vj/`n HHsʼn-p'* R+2"-4 d0@ NHp:2sn0"9Eb?TǑXw8wu~=mdX}mдNǵ?QN~:J m>:p^;oѩZkRи7vcJ2cޓ|f_(?D䚢clP0^\*cBxw/ EjIÁ|&ouRZ~**0փaB<ҟڜǐDfv{SUn@K 0{ZҌ.\^rP]Fȋ/^ `* yXnZ08,'x9߬.Im62{/]\tTA: k h{XMvC. 3@tJ&hel >J& y z„AVULC yb:"嘩zX?f4L'mSyo_pX*oeG[Վ*)k>{#T/wˆ/6$dwGC )p(4[c^OG ">m[~_ Y(Z$'DrCq3?i7y-ZMyz1 Ck%Z,&2q0ME]x0c5i۴S(%V)43[ =ޔϞ; := }0ʞ67Ro)*^1BsړGXYI\n:0in~ƠI q² V n sj5F# pjLL~/R͎߶wC:(qXDtJ>ZQo:$)MeΚ x1/&xmB\G*Kzƾ67G'48p>{ݱ I(&i<{ E26pIvy\yMwL*^9Ӣ_kA6=E\*G+-;#߷ )h8Ɗ8#@-'t7ٔX@үl)k6FnUnGOoOEcyP %f݆vr GZrN87" +J~^pib rlHT-*>֙@p1sY m$ \JW+5b;!` pv鵩k,.yжߩ 99GVp,5}_T 8{s>2R"٫XɐCi(' 3crrhwN&׫>wIK{֔>4BUP@R.Hks%À+Q3X;&e)ċ7ȸ zygy\O hS`pDB4RO;p٣̫qa˃S(B'kMuK9az]#)ϻ#9޳p]`1eF[At;֝5Hq2rAK!~A]DQ4hn#S`U#)]aHKf-с덧(m{h"bCɿvn=u]\"\Ke^cz뉟ڗuk My;'1xc81 ɁnOs ͯhv}ӔLG PC{\}CiNdF(;>^fFhSU7}.-ڋxiw).+,9G#p~qk-t.(Yt:Ks^q%)ze]>UtŒNEQyd[APWhו3FUgE4px%FXsGP݈Jn 52`Ce|5ȼj&秡O^I:J&p(sP?w|8%_}͵i_f#l9R`a+#wl&zg:"}m\ۦ(am_w b^#˲ytn;ew$./f{..x)%qzWhWf{19Jid*(L0p`"s;mg*k'f~lѳ{O 8DFfq%Cn⑗&X'J.r)CMVXY{N, ǂ1[F`|z9lٙû}Z\[UlN ्Z׋-i\5]pI ˉ\xg)Q&Z#֠K Lbn5`U j+i1L*жܫ4~ hװ>x9@?3 L9{Y;VUy)UDPT|'YV=-Pq%sg_-ssŸk:ߊG4d\UDN[[8o9hch4xZYcxˠrZWc|6O΀0"l:rlKzuBS4/XJff&~p8o9as8ѐZD}AKCxfߣ5{}&衏մz5PAF)?A@=C&^7S\ByQOd Dҷ43@aêl.b o6s6Ѡ%}5<8(Q깤YW@A3;(QN7Ż9V6ӹ -EXvfDv3uJ9g!ZW`ݚz1l7Qx>3*un N!C v'{۞HH̻<31y#򡼄10OcʬltVH t9H9xg'F_<OEtb-zFbx!2Xpw^M5o?g,OAJ:2I@YǤ$ݾo/U@̛JOhrیH <5 yHES!Xjà%&IvbSj#vykY{^خ&-6xlBQ0$42@܍W+v]ڪ8@&޵XsVwhi3UQ\Ip*Cqi %KNIuXS6Bʰ@*n‰d)Sj]uoPb^E-yMRPXwoCͶ6lFzol3"wUkKo&Bky{)oVUNѨ3 2ͪ ݲHH\6 Iu7סm]\&D$T#9Vnzo鶜ũرޙ ̄Ky6. PxJy 8]٣=79>6͎k݉xuz>_<{:K UX || Wl޲sTyJOwZT}\ t$]LsK Q@Bo1a\BQ2Df%qjHaY˸)ik}k2еcl{nbL,">~ 9_YCtRfá"*Z0h$ HK4?Qwis(TC)Թ2pl^ LAZyŁ {Zlv]Ut1^pS./$рXP  : gc@>js]bڻ ՠ…xP\:f\Cvk!ˁ ?2;= U(cym VaqEs i5Xq4P5CnLeו6Nu|z)SDYw҇Ky:ϠE6f͔O.w'"%?)EM:S|ThQ\Xtli[x:h{&p6Pꢂ; #QBUƊ'v5=Nܮ8udf-i..~>Um/#j'~ra[YltXeυ0KDvDqۧQok_!i7>S b*;LuV_ ^kTٖjN^O]_K |<ꖔ=:å#EI^l=Ȳ6&-n f<=5dwk+=bf/-Fs  TT!2GPߟlZ2]5t6+)xm}bR(I ̲R(k[P|=:WFWJ Т&k1{d:U3lepqې [Nvm q+Y ]~˧=0rIXT|Rx6o.ZKdm^b^UɭQ- 6&ۍGO,:U{7*w[Yks()10Q{s/|+0">9Fͤ$EU=%cY5'# m3&_9HH L!*H. | +7! mCv*‚mx=9*'dsp*ep2ۑmB!1T^߇,h9S ,])B>owI$2&}#aSwAC9YV/F?V/[b#XVp!kŠKs_(^m$ɓpw!,HO 3i' &[2UF/Ɂ9曆D~HjSK6EFT1K|1Fg׌l/==,}Q{mw}] SLyTwX`9}NX0s %X n U2xoQeo{34`QDYFn,6t?)K@˝|e`aL+ڌ.3Ѻ(d}bE;r 󕱙|'rqut8HۉvWأ, m%¼+ #1 &7;!&wS].cJdB {ݼ2.ė@ٽ% <*H%p ?r&yf 4;\jӫ>a65:XK~$=n9lzd\|LMP΁BF7X/6e"C0*ُ,MyOC %rjh~ӔXM!]WfAEyJ &DZfL MU\:& ^1K^PG8Ţ=ؒDr+>fPmV*6UhEFnQ 7b'.M:-PKyN_mWop#U]qC!zqփ+e|+[,dqi_` 8pVi@(Nhkr6L;tc}긚.%KE3_pKOY ^z_=@-`>I!L0G9t:u6mv(asI?**xjab[C.ewqZdbZ $X{-%-H0FCF2@zp-ǒ1chQiW:u/+ bHrL^8g_$b=J*}>svtIP=D(]w ^2ߵvkM ?g;dܟ1ـy̬ la*ک7gfY >ڃR|VvvrwSܙn'< LdSkόM xLz%򌅜}[8Rf.(yEBWEֳ: #g:RJHa!#DbZ@oxG>-]L3@bAJ=FD|aI 69ݵ@'$z80yfg*M2ȺJ50Jqi4*`8R$PFfuՑ!pT6 ^Ψ$qv1@y}ŊC[9qx_D[\,%ˤpC Z:%Sl/>=bVzV::ŐyB(@=Gl=Abgs Vһ[Nd/-^'r 7PD7eYAүq_GncXRdAJ`2*._D_64ϻ rGC sϩY+g7$0<.rt+sOwI s120AJ~Lп3v"ھ[#O eh(~SjU~A ]B&'Ŏ ^j]IQkeakN#|;kM'ef :Ao4ܮGipƕg0PB;ОrF ~[N (L)彋CV"*VzD%Pxa8K;^kV)Zɷ 8!V6[3l_3ϓ|^zIt57g ӱcƣՑBOO~@C$$JV1fLWv"uKAW0jDzRBqrVF*kTȭ>DD  曇'.pJjBܸʐ]!6JӟdBT,عmue'.džu>*FΩGHe`L Jw;vy&՘|=\h)i*-WEeN߲lJ-[^ @t蜞7D(zxuDs&"JO=dkїAlP.ofyYe9_pO Y0t#NFZƎ~9e-Pc}RZv @s{XQ%g{ݣ[U[&ޘCBu1 *'5[ MdZ]*^,&6oHjىs. >l!TFPkg=پhWl?05344d A֝2ԣ`*ZPu< 2Y2;] oѵ %3s t@y`%Vxyy+YԿlbpD]k.l5\L'ϗZG_ۯb8XvzGIEFVa*~ ,,-gfЮ78Qb8tt\g[wJ<`zV~b锝o˃لu!?,uUAJsl|NJh+Xj_ z0g7IN(h^v}71&>sёj%:=|U^'i+χ( \IYLčMi"!^0YZ%e s9$$k\k S2Q`] 4E5vc{ޟ?Uݎҭ|H(KdRvw(@[Pw9!C@D`*A ̖FCzicKkL:Ev>oQGʯ$m\(Mavd}Hu߳g k6IT6}Oگ ,ƝrWe v>#APtUL 3lIWT (v }" BF wzߖ>}Mf@^BZn&7).,E}Fb@;6FeI=d=fᇽToVgXyzzYY uHt>U˓a1ǬdNMP 6{qVA rjUsX@kj IMN+ GB*o>dcCL]b8j,X:8VjAs=g!8X}9!`s 8wHH -8x(7m Yw5k ϻXS{,b+&di`+])p+·t~dɥB$z6$ B˺*PەEIPhɲ߹kǡ1O:^I"ᖷkNO^wu#ٝye%2(脩D 0{˦HMJUE + !.~Uȡ{EiT~dIPgu>r e?9>m O*P,q˪N|bL~oA Vbk7JZ/17tw ipM6y4(g<ƼU4=#*@˄"gS.&0>!~D|Ub&i- "r?ʔ`9FTZ9`_B罺 :y%ԩe)̷i3}*~ao( :|v<7֫8"c|Qq+Bl]Gr5MY:24fݽp)w9,9nC.@[4 a3W߁lsܓzn/_WQʻMBIV}v0Me23s\L//JɫW6e]0 'gKvEaP$N_qԢ^, ^褂Z/7 zp0%{*+w FTS[<;)9bgGdH彼{>sYV :`@#j6tld\7㩎Bƾq:a#;N!wKVo!pnhV5@|8NeL'!˸vtwśޑQT t:.Jڕ*"XvҦ̜ 4(n2؋ uߦQQp螲0H0b4w}߽H3M*6SY1 ?^ Ȕ9ͫg(BɾQS]BMr5ZZ9ulJ4AͨJ܇ˆo/m2cix㊆h0Wݑ-W CO,Rͻ=}1:? ek;tUv![*}44Q%z[z}) :##cj؛e] !}pr^e+>hލ)`BoQ̴|ů@=AQVI@Ah#ICz}/]U_imm䞃)[j yTkwwĬ?$zNIJ-ԒnRDux̔UFQ~S ;W(DAv36=䎀5?„unb&S5B%gǤh10˔0x5$n# #zJJ'ՙ٨G1PWո?kqou6QjF'))?.HZ-9o-ѩQb\!Љ'˛ʮGgHw"L%zBxR\!NY<HX12F7j;DnU#J RJTnHA! 4jFm _ avr z)" rx} x\lܴ,)O)}1U~%Ơ +X@xӐ[Ϧ:G\{K@pPBwR|["$`ݏH4ʤI,6S,E҃7 VC3нyK=D/0Q$?>i#.aR̲ x)QfJv̙,[0݀a񧩀QJ4?zȽ⁛|L@XWUH2-2 .,C##m< |@sv~vB`ggFFSyK.\p=z [bO>-S^Hp[Ώ.Uf$/Y̭ٶ) s`XGZ[A\tI*Tj mjZhbBg^LøԙDIS59|U-@- 8W9ze q=LM]=RFӑnl{wQp6sy&Y kՅH4XOoׇl%8wtnzy(%qh ]:y`KP|I q#ȧ/Lfܖ٠Zm护Le;D{2Le.~3L8>Xiϛ,  YBBbGZLq ?c8M !u̳ղ: Cb ac*/Ŷr,bʞEp*xvnanmx hLRh57nW:al0q[ Lk_Ի$HSђmsM(/1/p$7A }9A.g2I/Dcጩ24YZaf"|МUCl%bW-DG_.??=Q .4bD/=U|L ,$\8kDn 2.ftC;<@"!|iGn˓Jc?`KV6GX#>85rQ#(R9#:7s[X1o@Ɂݫ+4]OבhKbC~M1:zAy~^-,Tw{5Q2XLlm\)w%c:G>9>ZkFd)prCTtD+ ZTt7tWG72"{5dIQ›,xfޙ~gׁI^N킶s$ zkm΋V&CO@$:4aYpoI9mʣ9 R5iSy)f7_-9dlV~c}]Bs!.yάgI"sqBI]eY6`ZH9(t溺a{ZflYwBg sWjja7F:YFd^ǔlv脌"g6;b_w~"WH.&~ii^yjS`$0y8Ѓ{sR$0kH8Z> [?PGfr&EB7Ѡ4(,wYQ>^1>\T9.`]Dd ҪMFj;>͗mH@$}`Dwi7$+ދ5򵡞~^5k=A74aj@!^oy$ni>hsd$MIҤyud҂yr[-UmSRi旾tY1_fIRp_ VS,'v+ѧLJoҙ>{|OײƨgN s~g.7eV CIDdYףN=R7SiC7G ZƘzn{HLfAs՞tn/[(+]#+4=hB訁{]pn_͙<4F>Kv*p62Ӷ@'^C\WHa]ϐdgoϹvtKhrRx6Hf?DMeo`d:5J!C7p[1fU5or/-5LYzʦ yrh@Ϥ7XGM2Y`hg~|%Ozji䥥bfӨz:Mpϥ2DfXgRc<h&gѕ[E͚̫CەOllGذ!@׋2fc78fտe~wu̢'___JpuhZ˰< ZS/ϋz-Lѐ[b-c@4ϩHR&>&0C ?|')<"q5Pw,dy"|Aqfyu}@zPw9|^(Q;q5?ƅz3 g ]اjha~5ˬ]Uſβ11(VCQ40{{k|vVZ kѝ4;٭kWAX&kc*_,yZnvsoN ޙ nAkt*Ft [^ sʰ蟶"Kly$'.`A#]ۖۢiuzlYة. -&0?cy׭u 5S-8L;#yꨁb}UyƳR i VeƗԀE5Xp7$R\EftϺ͗k?iVS V[ ׸o8 ;PiW׆_mmi)ƇĚQ߳2g繄[1M5{l)O: kFlrb]^+2 E$֭,ՓRZwO\5OWy+O[&}b3D^Lb{]x7% $E|P;=Ffwˠ(<MwՎ"U(!dͭ,&{ 0 [* [#؜-v|-˽畎Zy&,^տ5D{g,K7V8Y擯vtN O!y<=ٝDN1B՛݆}ݴG%CXJ܁,DK EGk$L .Xzln8dÏ|khHj:E9.~MHނYգ%N퍱wO*8g0_lđ~YFVqq)9ΤA u!;&ݒV#ޛe9 F|>D~]i*gǨuR[#!l&S:Ng^h젝5[9K*KgCaP&Sx#(}imꚟyޱ?3{٬۱Js򣞲Cli9}%C?/sRe&&Uw:c`<* U-ƀ wGG_v{iY7eqGc3dw’$#OpbzDo:-W,iXvife+o#)/ZHS6>+$f,ɭa[%.o4|0@ϥۮoiwaE+}?^%-CR*y.zmcj !gQ9i$s^m~AssV|Ϩ\߉Г:}_Ki,ѠmX3-6݀y+ܲ{7;lN7MAX'35Pa}+ڡ+ho ~0G;3Ƈۚ@Ru!1Hqho&38(E1dOtSpJnQlU.foRVrbi˥2׏%o8A\QzZ@ =YI81 aF/*YTWc B画'T %4C8eaD͡nÖ9*T*@;3JV:ʄ؜#q!&Oxa2ULW fqd%ڠYuMUT 2mv-DD[KU)K Ku3+ 8)"S ʦ'CȐBj%KPU?J_APj@AgrOLAi T^eo)Wr h.856ԏRݘ1hP.~ET6W-܄إ-[BHV5gKKļַ_:10A:8Oi](hQy_esħ'J޹#]\Ov4HJʘ&yAXv%aNeoӰ,{ԣ:֋]Hjcu#飒x}ʆN1 Z"]HIw ' UNn`JN5Wi2 n!T84u4:F tA&7g A6y'cJ_t5fJYP@ 3kẎ!QD^̘ooIY|IS !:뷔U_lll2KS:`" t1 XGB V 5ZhHsIgɭ;?G E+6>пc&`ohjE8}}\[ֶ{5N:Th.Z{cB7ꠟ A&Ts-,ObeV[%*-S#cx3&BdXXB!y[ o.ª+;98mix6~s!RU3j,3ètWrx^>d oJx0`d~BĩB X6(} @]2$(@*cK8 -!-JG A1:#Frʧ{(=HӐBB&Un9H09iҪ _@A3.6Vh0& s(а/X=wWllƴn=,+?iGh!yƞcolvgm Ҫ&mӁUE=J犑zꖷ{5R![\]ѵ6qn`W&īRax-U4/ VpUG[!nۉbKgYf#í#_ūMX܇I+0\ CT^w)AF".b5W.( HkݬK>)T R ~z>El 䈌O^|U`g|Ag_GmC6í%;]VIeI=Z@ obmMY0, uim?k\#BM.lxFOKT*5׵zB~T7gX\[1%Co}Dnպ;zSRgЈ9#M+tʼn]#0IG!P5Q1n,uOjJΜCO^ʴYr"9&F}UP%|?39&#l ȑBfq8պi!ɷۿQbν,룠sgM]0r H&R쫭Gv_ K)9TKGݳeGaCk,xݶ-PEKOn"qL(N61juA"X!vO8 ݥZ[j%c;=J ͙pkfVfofi>m1eU[35C/ӏ=mMh.#/w'QZ+4VifWCCI|w,pO.NҼ5ݖ߃Ǎ?~@mWGO0!Lc 5}|8g2̟<}[;rcBu& sCR5π_d}5S BT " {;҅߳H0F]HgeW9AZ ,xWvIr7SbV#+{U.PR<܁t"KC\ ھeFܻߺbhnAW;ZӮ"]]Q;ZXotU5\0#-h9HU)\w1GP'3,ժ\<_*@eR8b#*]IUQg"Q;bbQG!i" \ PEuS[M d b ׇ kܠ~hrhR-Rou (ңp7B".?38gSIILTR^]Bpj%$g'K+/&͎jfd 83^g! wT{!|kʿpwu~>XbdU7jV<(Kp(<&DgHZf; 87`)hci7 g*>)WFYI˲\B_<|}{ARp\ٜ4< bO%HE#>PdKnE\!z !@ SVmOαD.5ZYMW<Ÿ7r]~w $g?3ꄳ~Q*dے8ZcοNtpH@x$"3;qE_mӴ2Ό"ysy8`,($n'%k|(U25-@R@Yޮ9&b{4_t5a̯,$T.~$^wqB~Uщ<*?'=$3E{GN1([S@2ξB~ "(쎹Աl]:4`,jk͆b$P(/ph9XO#/$MکG_?{q,o5:d8ͻPNT96D5& vJ^.E:;`üogc`=kz>Umd֦i>P^O9 I~+Ā)Kԇۗȿ{d:&͡ܢz [#RZu D:m嶰mitҷ&A``MGfXF|AHoL)YR_ @&{Ho7I3ؿ 81M08'_N\<6˴fMR7OaMLzz)ʲ)R_ beRP!ɋV`tDz^$IN=:ؙoy2{AHf Ò?:0Ҋ{Y*x1(jjz`s`Wgvi^uĴ RyWehYe6Q2$"aۯ"4= ;!Њ AzDRa":͎Vz*SxGN$Ob8~bmw:i`t(vΤFa -xia KKR>pk 1y'e+05ԩWiXn9mp4 7^+>{OS)!hۙ#' r~|5gy ]гMjQ4ST`P;޽sGDףܖXzѻfove'Cbg7> ^cad[BTW( 2Ht,>}#@\Mq g^9c@whۘbv\SXgxYюf@q<&ܤkۑv3r +`ƌ m %>^n%!wTRIo%JCƱ:BRz= X%زT V33?+i^0/V c20, :xe>s% 0tW^b0@1DA^|Z#]_qs%[lXYyr{i)V^Bg QkTG(JA.9 d" V6Q.a}:̒G=pǣI$V蝢a#6 {(p^hWb?w "dggm,fRe 5|+<)_.UO⓬FK.a}1a44>?t{sJCM4r q8Fbjhj"NršIRo)GxXO|,.!P>_ބ!f^%P Q)9W >HY84()ԥgjuW qGW$N8y,'Pm$î WqXg<ų഻GfPzyLH7皍ZO-s]ע_Bc&ZZI5ut>PRh;pE -&6KbyvP#:J|<͔^/QikqzeKT}[$AyK 8!Ն8ɧx_;2fۜ*ʮ$UbuFGfgG8|QE)>Tf6 WkQeI8 Wxt1V?a H>0*-->65 I[#6vlBEՈ ì_D><WgMel?b?.=ݴa'DK`V:*9Y(Trg4oQk[@8 OSs>io4JчRXspd, iH;yhMx,ǬȠBJ:4ݪ. ᫗w[,@zyytףa^{yc0Dzȳ $sUlDKp kMv֨BuŽ%k-%B@ \nZayDO0DZ3V(|7 a3@؊dH~7\2BE/6 yen2i\hAD-eW?'&6; #GD i]'oLB+r7$Pv $}D_c#:ʩB:a?:m/}9Rڪh~GRqabQ4 1i㟝cR@(4"Mxl [ysB_fɡW!z@AoL\ilVZӄfY٢EUڜ`B4pkz]'yqVŗ-gI7ޭ 4,i謗 ~)At;l+0dl:'7G#]{ILMKQJ7]JjIy"+qΒAg46"A{ |G,ױ.^LeL0E14ClR*([E=p9ЈˆnQg?ȋM ECW:i)ЗDzitKt;UX-.Tqo߷G8|j?%L)^a~#Cc&UKB-߫NPO{@sS E##9QO{$Jhg@r' Ro{_ l> -n m+&4 ^wb"%ږsf_&V@Ӽtx`I9b('LU'#{XǖqXYs'kCA41{rj@ B%H6w5@k@N8ZNu1{>3MbKKh*:?FB MbV\C2UsKE]7•&YS?Pj^2RCF|~ M>r7ppXlG \u_>8V q~,4ywV!;/ѕ$BNq Q]n8PK ,oO8ZT7xqj'˟-,)5Wt ?(t)PgyG⸐Ao< ԁ"|]o܆jέiڋ hީ~lyƤ蝽XhlG[# od`P{bo1jJZi1lj' 0HԻQCRbmg: rHY< :`"ʛU!`~ܭ 驡GvDEl7(uiiH90RݰR>uz֜Bnj> b'/&5yٿ+6O^%Z`8Z>S7w7Jӕ=ސ-2h/Pߏ'q뒓`ZU2H@aB/36ca j誗]+Yk `VVyL?-XEα"w8=ZM"8Ѐ'BZYבèEI5hpIN&*&RM x8Dz00 ARowLv &bi⍟J4c΂f~ 4 *\Xq&2QCߚL._}jkNDS9NF8|=Iwqtχf"-@^0gd6DiA1ѵo09JK(alwFx>-+Wڽ&t.X,pX`԰dF_2[cAќnA0ՍfCS\O=H`yI\1鐑If8rbMm4t L$$ƛ-5|F9cgv/E, PcQpշU`[U ү]tP"9SrT]KQ2C(fuܾLX1T$ޤyTJ5 s2`ST5&7}Lê^D DƅImӨZB .P},)02"3P&$w#gKL]Vߊ@~Ei?F;+}4Ѐ? yeh7 0#a<0uLW-\F2cB6# BqH3^ !'8_sx/U'!?` sƃْvTBѡz^Z')>*%H&Y[h maw2lyjm$q`#0o@@Qw֫w'2]9KݛEyE 45Wѐ%4AuWsrMLMٮDۤQ!dK ]_iPzS#{e]Rym8v\Us@%M09nK!qkwvTcf3[R~V mګQlyM<yGML"]B #LF.{.@bL+{XLC]d:F m_E:b:sEJ1BVM06 ֣#j.xlnu j͒ */QPQ$ ڄލ!0ޑG3/|$4\5 GeRe]/=^Oyvt :EB\ 6`6Vmu Ncd [Q51zy &N~b=MhP^9/7/:.cyن(.)MMh_-ݱw2;g|rm rҸF5+V4l %c=Ѕ{aQ_*=Gpd4l]w^ΊۓReZ>y-=@z=4ʬUXInq# nx`Q*01t|٭ k19_{Hw]q 6מsxom[TQaMi^g0}ex<&<D*"4Ŧ$M-FpO%vt[$D+ {C[Eqk-tJ@8H`A2i>y{XcRcD/m^-./rl~W4F"o}g^>Ngk8hbߍO88٤W/WRXZ3T8,k.B?9) qe*$ jS)@yAgϹ \5M !@n%FNX4E޻rGo%J` 6#Q, uMuϳso9ੌ2L Ӏ![5M>f@A,+t|WΌg[ݟj { ގA>O"#tRNx܅N~ܙVBKlj_q?b_-̥Xd+A=ipS=ġ Vz*AK} Oȼ* R&VǪݧ&MpWCR(|R+K?Ĩr5-i-T+J{}~%<> nxM&4T/b7C(.}e:OןN[&Xw#QBH/0M N0zJ?A*:_7q-:83\A1pqYF5OB02u#Uv p9EV} x, ~(t83(=MzY4٪VŒP|OKi z) Opv>-|^9 Møx]4QPoJn4,|mVA ]Vƥrh瑢w۱D$x6MmцCT`<\) t1J,5,?Ls!0>5'3}2Z xpf@qSu~nqk($$UۥJPҵSJot4Z"7QI\[1f VuilLpO8FI&x,V!05A.L4"S6gt35xi47C\Oo2{KF} ) Tذ]lFf>ӽPU@}Gr~z=)mnvxoNV ͞?&l=2}R.PPK3X/J,Ə"zi&N=?8u+E EVMVVRۭu+>w^Bw\%W()gQx1C'~JH,V Wq/mADp_TYE#d*gqpO9d֣l}ZD#r;.ލKE|2H¢q_LygX\4z4FJX ⵿ j;cO99q԰y.;28Uy ^23MTr%/$k8ӂ \5XCo٪;ܒbniNp~WSNspsg6coR`y,CH@tmM5oB )7kHS"&x1~Zx4Hc&9/D-hw`BQB"9v:]rX!&&;HmY4SU`/4x%b(GoRFB0R|h"%ՄJ'hdzH-W_/pVI\`:{(<.`Tm0R1 Ê7%dE?,eoF,xe!ƾ.塔k?fb=jCQjBcyF:sa9Is}ž4i.6aKGW H^ ./#y. q3@8o}c2pgϺWʟT*oVJTj|S/?aG;Ijra^Xy=7H퉋1&lf}Jg䵁KXC ;*hU#SVWȡpoS+* ӄs S|-&L뎌8UQ5q$rLW9(Z'{mJQ7봑THٸXХ3d X J?8X*8tBn {[S aI~nԇZO*l1⌤txۀY[8]Wcұc=xqa kؒ zbƿ YGCkdHTޞsƻGdWfTEd~fΓܲS=JUL~7lT>L<)5ٱ \0#D4ǐo*ǛB,sמZPpc΄.H_| _b"$u-K%8;kS`%݄͒;˹\e}eۈυ["OG3/]i. ` Tnɰ.ï#",[9gk w/ fnKBS'@.\Tq_(*0gF쿟~Р<}Jy3fȄBY)y(sY Z&3K&|-D4,{kڊ7rE֩Uޮ!01d;r$+p9t߲S4} }dkVP t5)ZZ+L }F}xdoc<ǧ$ 4Pg}x=lBQfA)ޗJȥE1M9?e;`?$RS3풴 ehĆ Z!"W1k 6əbhFz?# ƌ̻%_m8Sa6)p`ͺB/%\ϔ5̜sjCwcECTzA m2nVV^+b rra20z$;1_fV]˭&,6> Fv?麅<<[ܚA9J?,AA._U $/$adr 53Ocw%ZBM ]dsA1TX;-[eT ]/ ('iUMXsTrR4ıQLX2c "ܳN8r#R}{3!07:I_CES)_-j=y]1%HZϠ~MIwU/C~MA=O]NTr9Ԭ}?uX)lA۩bz?*=(vc;*l@o'oTvi^(*ޫ6ɏԧB.$xXO.?a@-Rw>&-y. zvTJ8y"DU{ p{tQ85sGu/=멄~0U恋[ѮәsL09-3[SlH"AҿL>ݱVWpRwzUMOү3%0|ܦe{V*b}qOOG{cCN>@ 'nC`/Dka5Uɴ#[U;:tO DePgZw8 Ys,#R5:$Le }ҋ$[ө!&uqn Pb9FI꟣%S`K y /"@2۔4~ES BCԺΟ4:V3jE.ŵ4](᎑rIe@_V' IͱkY?3McQUXREC 1t+ɋYJD"&| WGsͼx֣8-3k'9`_0~$ s 251s7 ~%?nm{3$ɣ6Txƀe=6B2^OXJʖ^C7j݄*n2韠fRUL@0"G͵eůY̗U|x_m6I[7=n$-Zojގia35NϾZK8/Q@$|U"Q-ܶ¾~NY\ j+}-IyRz |gk15/" cXtV^`T9ilcY?GJS" L벒dQ`$>n iE%4yGPOnAo{GC<2bGJw/i$IsݨᏯP7m xp { [yQ\7<]cN7fx^4KU;Vhc%xz~LmbuEiVC"(H4!̙Q Q.ܛ\}a- /[ppyV(nU&XH(9Jt~h@9Xq}K}f/51_}ʪN Z3+f(~ARriYP,MFf.=-~#ٳz\n^+ 딴5gvY[_8B:7'nNqv̼ c9QEY>SDyiqzM8c$טGdiؿĖ$v#Ґ$Kn'ݦ6_`yy(Izi`mOCrG ǟfgBb ŪJ)R-3-U )"V^n;¡ה0XgtM0>qnw &PTzC<0|M.9`7Q:rj2-i!}JgzK%ShM:? j6:ڰ<vCoBȍtt`'NrJ7S m#FOsoƻwS+Q×goƑ6cI z4_W|1eHXQ7!_þltu;KJS>#spOPL{KDPEZ9GR5GS9>F 6JG5&yY| !ʺ 28|[@lAZ ]IXPIQ~"(j1۟Cc(d&b<q4ԀV꫃ۅ[az'MgQHIO{fg &~߼)Sf;_=.õ' 'ê纥i\CK~`FrK; a2|"[_ H.dPPjWwZuZahgIj&$DwJ%XT*704 #ԏ_IF)>K7(.D6vHhuxlfm&H+I@= f˝>>Fc+]ԉIf+R~FnxU\~ҥ͟h7˲f¬fu[C96z;>TR3ȌR2.%E:@'}JEߐ2za(>&ɖ l M]]wդo: /k>gr-&pU=~F(.*3=t{CUVhi%!S3H>Ĵ' 5a|B;lGM4j/ W\rr~ւz \/Հ ӹ{7-۳ѐe;y M)?ŇŶ}5*]-b-jZlWU{0wuQs!r':?\1j.u ߦou 6hed)fڔD{Ze&ޭRH>BvJex[~ʻĽc3SR$u~g"&g,aq[!(\&:Ů  ;:Հ%Q2ÁHiy8?~" 3IU\]2(Kuι[?}9 }f@E3S _' l# NU08 d%,%|C=rO>Yrnx!5^`g-rn:ǏkVlmOBo@V?+5ޓY#*@Tp<ecɊP=BS6iJ*׶d[VE®Q5a |\KM(Z\LjRvʼ%V "\nu1ZO/U#E{}& 5cyD&}$Jh‚`5`{c5[0x(xm,N*Auc<3$ Fk-7&an)a*S1v ,J cUVОVYAEei3LkҼuBviĀZ'^cL"xGDCljQo{wb;#Bg^@y℗j4/3wQzt:i]\ y;4.5``I~0c $ Εco9B .-qe[bK>Y,|aMFwI\){ ڿZҚ]K01#%kFIɥ.5!ҫD9_!q䞝$U_ޮ1 Iԥv!Z9|dQI9=`p$B /5F/C: UIM0y@M340Y+ dOf/O>ucWv4gX)ս0q#⻄.Mkݧ٠//@lčG@=jtlc{ļ7b3"St[H!ȕ=% n KA3}9D:y@5tY -c;C7? AB@}oJ '͠}UުU$èQx3r}sᵪ)ũu+!$(ShЧZډ.AWzgEU& >]rG$>#`|ʙsr9>KVй;O9N*2v-l({dRv=z}94ՠ~5}rpI V.!w/?|ؖ'pQJCh*~>~ѵp%I;+,NxT.7X~|*TnN(4*Ĉ?ڽIPW ]3=t)9ƢDEv.NX(@'. Kv]Jݘa}Pls|@,9/ZlBW`46S%2ī\^2@X(ZmEt|+!m׈4TWD Cx)^R -xQCOk$G{!ـMlh nxL6~ o00Yu9bKsR{bgF$x \} Tޮr[eᐓn(`Pу*@1dބ "d\ et@y\z #Ul09ϟ S`hqq_)CDQJ,px}n2("6^}_CyU?:Tb8f(}i"XmMm7f):9'5p+[WC+ql@+W]l/.'woǩ(|JQIE茌oV?},ckNg(WtYH2Ͽsʃ7gg)D8 ['؃2 *o=jAΖp8uM)L؝ ;br#xgR朢j1DrbBʻҽʖ$keD$ܗ4"Vt[ ղZ{d;\/Q^:$$XXdo!5G7Fa9Yα#&&+igK$#蚇OkL B`eī%9]::u "X$>~3sv+-^`F@Km8KO/z+( km"cL뮆X'̧yJF B?%vr 7EFs9dOJ{̛16/W'x PY n/ ZR=ыqcfpuT Pm y$&5d*5!|Y& T'Qx/$4*EW:eޘ/Sѷ՟.a B|[~\|BHoR6g'P]dx$;!UlqcL<+BNf {i,Me٦䟛8QVmE$RCL2겎~\MҧhA#I(REY\GC*YBQ®ӼζJ+P]|Y$;L<:pc^`]kʚrI[恘[4=70}[ =h 21, BW'9o5zL, kp 79βG5Qʋ[= C(Ủ<:9)si)՟"GtqNEV,F{y-c3Q^Qa2](82c‘EM̯f1Q@~Fz8$Tx8e rZI6if,Td9 F#PEɜޚvTn4=~AY38o$T2 ^UtOp"jI>N=c19ˋղYѣg<أH<>Do6p=BhVGG5CbZ U|ɹ=Φ%PTL֜ɾ+7F]JߢOu G,cDKB,8 lr&c p?ԫ`=LСt 'rR֕8j_Ñxh^g~l*ʐcwWpi M<3.qދh v̄Oũ7͓0g_Srq#'BpbyVzޙ]Jzn E>)Wk#{4fY޿B5tH?QVpaGTyz`& i}jK?myelIa ZT!Ty棢_ C4-POCB&ɧqA q<->GUMLMG_QͽG{ތL$V@ 7xxhsZüڑ^H 9t9߃N_WP57:$.Kkj8;Y#:e?>3a5#x˾HT嶒dkI.9PN6^ ks}"*Vv â߽|p8vDĆaM5 kA v,>y->A6"{W/'fY!2[K6uM\Q.^N Ξ Ne&xv6fh䛛\KCfDn( hhxAW:(;qBLWhA*%?wOZdqZ[MntkxMb†~m8+x.j(?k%$^IfOc(gmUJNl-on.(DCY ^D$Yd#sjn)YDwWPYmrԇw:o;̰I[0?ilNY1 Y"?. U@.F$4QEd48`;?Z>b%2@p:6 'av:T~{(ב dvOϨo{H_[>!YeMcV,p6-}zNG"Ҍŝ0PV,NNxo%5ڙA/'UZx996Ocrے hf=yځ؇Xhw 5LW=e)tȦOIig|BtdyވX[-zU.P_B$n[.!Nh ~YhAo@ᾌ=? {^`G3! }_qc.n7/gzz12\7:dd'ӗ>wh ]DoZe|zuݴ9oPW$7s^B`Ok03x?-~i6hBMe嵯vi` _#Yu+^u-h|yG#[tg|i=:pKE{g \H\w[t'] VXLB\Qjlk: M%;jT&#O}?Nm}h=u!3EBϯ,#>qDwAyMUT7Ɣrւ\g-^]N79qkU#\CmPA~ƅ]1L!z{B[* V5^Uʅ{/CT>|gԈDM$rJ덊d?%5f=6vKJ7y4:) [c9'G٬,Έ?~[~Zg@QUNix/#$D&W'ҷ+@YeBzR4>ׅ 6}0O( R1 |ٻIn?i1*6:~`yp#vtɭ&D*[!Tac/Ylh++ҭ seQJ:sC+Ugx nj?O֭0nك呮8E60&*'O2|rY{eyd\ձ Ut,~̨$e%5!IH|j7ffO؝ƌn#$)(~'+ѱ@<;Z#%Ɵq!O!bgd>d5C_dUwVȜT#fi?xbRrg!۴Z?]')".í:OcY~(QuVqO"KM=Z6K]0uiLEg_6š G_HlSm6%E3gwg@~]cYn l6` Ǟaפ{@kͪa 5ˬ='`/âyJ2HKKXZ,xrYt$9)K,$ic[|fŽrfiF+Xmy'CVKQ;0 *kA"=H92*P!RGvuD1vGEiȧrs ud]Ē@ځiVT0s&7њ[ _ ď,~a$ʼnya*f piEpq@ $؀%Oyw%?~a v8v90凾+Na†Tq+BmIh³wvyƒri߯Zklt14Qa/d!D9ẾFVd х)dt)I1,_t'*_]tIhk+LL%hFps1YGU=KsJ(э𤉏w'֠1O,x`iY:iqst^V>xe.釒$tQsu3&6a!ī^Kbᇇ }̚V?F J>ʹ,{5JĀяKCQ=A7usJpuvLuS sA?::8N%fM`Lg.mۚ5-V j]>&ۿ4D9Fwz'҅X#38#]z Eu/lEn<=v3IE42Mtp6Kc!nO8UoOTF:lc'+DOJ=N(2,K0bOjɝԡx`?iw{3X|:Ka kT$@?zs4Viv:db`Q ꬼ6p|Y,-yKʮ~!|nFE7/|[nq=nk WQE{PSuήb'ձo ܵfg0ړBdרL9ctcnd{jgN1i/$ASUL4@!ۨR' ݼu񎯽A>4t$c_@VabԘ}J:b>(>r]YiOݙY1&djQ:]ИQ# |aTQkq 89~~-qt_*^}:bޚ "UDmKYmܲ (U9w|G)UYUV]ߢ25+[7"`cZ/ɱ 8My>q>cuxh@֤WhO8S( ߹Q69W_FۃU[timf;ke>"|B)pٜ8 @7|@,) D=2\s6If/ŧ`)F΢B^)Ci`6`tDcHOLbZWꧣd+{S hlL?◣(<7{7D|RrRHQZhRwkY6Tc.QH*ߔG$rKXwYPv:^"fdl|[vmq/AݝJeӞlU-ޔy$哛GSx:J6VmH G ?0g4ƥfl(0־X ;"Y&c'0oHȒB:,tcq%B?"7h2`E/SSQ@pyw8ːj,NY$fD]z N ξ@ȅD{_Ip| QۦYkD.pw}URn_wT bks4y=Z=e.5MQWvTu菦yMOJEhtm^mƠ`: k3F6nQPOלk%f$4/{dY`|<*ZrN7wTCX_W"ܶ`//k}ߪ[(ҸcCKJ q_ )jr{}]؂E\+޲bKOQk`1W_iN~~gҚPN:LĂV]Τ3mxU5ؿ?2ť@oq찒߿vV)ū>} ,v\xqI/zϿ&`=?}nHw>:X>J.IKV~ooP`4Y///QH7\ Ӌ/);A@)k8͵ulk zR;J)X ݺ{1=XJ/OjMr ФyC)i LN`c7-I Uפ JT3ÿOؔ޳.Z|z )FLū9Ý[:h 1 h qMSkSN8\ׂj&FU}O 7`wC\;;WrhF^I}'#uR%zr|v?o!ˤAߒ(xT%A.B%禑Tdj$@!r͎YR0+P;tӭ|R?8N*"uz}]c@D!NUB6mq:Xy@vv[`&>O7lZ" My'uD%a<Q03ʛ4j]gi{``8D qiMC Z%ae*/=Ox/v8` 6~[VӌJ=ܚ4Ovf;qqSw6: ъ^w02`O\+͇<+7 g T j2T| ,\>08<-;wj1mRˎ)(JKQqQh}pj;^gQ>2\T)$+ ' ?Y@k? c-8M5,}'FM $蚓SŨ'ÕZCMiXFb_-yܱdsEUvkCxSn8Hlj|O9\P_ 5IE|MM¸4Č OAӴ^bAL(i _f/పVˉVH+gї+'$CS ʞ uPֿ7Af48` TjLz |1^Jpƴw-?bu5:smhٍ @"nÄm+4IDq $TqA Hal>,WC,`{co/Cr6z,O{qc4+XV%T[MɹW#Neܕ,f.i{! g%FzYx?J0!e΃P!~ހ!O`4_}ur)2s~ t ymmA~̚^T#|QHUWyrFp[Yz,occ?+۠aGڃ bd1G6<M΀㷺o_^b;W1%ErC*RԚ'qRz˘{y TIWfuF)_JVq#F$ cȨDn 甦=cr{L8FP60+1X8jǨ$j;,ū|-=nVfen}c_5pz#M QӕjxCFHI>f; A ᰮAH' >`++.(M _ֽ8+AʘLmb /C.dXt>ic1qmϏ1 )6 Jt96ToQy߈({GU -U+ ݗ__M~'G1K!Qe__z( ^ЖG_"h%T1v;_D&TtM~$BzDܬPlhADHeHNߚ01f{aYqlJ^uZ|r}V7V%}" ( IEd,Oj<4ObulGiX^܉H<CՁ7m9^ox ޮڜi~?rN"0 |U uYmsCVmnflHHI.2:' do8*&}'}R6@o߆ '7Θp+`i8 ֕U?L4뼀桯n-gf^}3JeDͻ}~W+Nϵ[ Ik !L#6؏Tl^{Hh{C)>/}]>1"[B m3l3xs/'n8@ܬH ".E8`8ڇ_HoLI,tTuƛU?H:ԩh  wT!|ZFwaolOM^,GJO%%Î8,HjP1Iy@3o{ct!î(n7% {id! 2YSOB *SKath?]T5ܬǷjoɦg* m,0pК << D*%+yy7_"'۩5Yv1qʤZxq'H1NVВUEխ\%6ϵ(Φ.)N9l@ +N䛕5 Cp[⒴7zȃ뻴72,$Cr-k+YF_v 5GuN#T~M~>ш?J/~k1+N^g{z$4 U׆8K3#:6bw9ʝ-aRu:NxT GܱWu)~#`KvԘ4t^n1ϪxFRձ,,e4+kz3P\Jwܛ&!}#-o_2e:gBs5GnPS|mR)Y?y]},,;$3ukFki5gVɭX L{퍯gYtj^Zxi rR;гO ܺZ:ٺPtȥTssdsK[?G ?c'.X;vk>~>ƨSNC?U *hG2XACՎɫƁy(‰6h]-K^q1!7|^_D{e<٨D6OS%Н~. k <Я6. Rflϰ "Shte"h֣@ȭ`AC &W$9R|R:Ead/j=8`:I cr9Vh3 <\#&m#wX9線F<5q)&p.^D11'~ uwbج"&0 p^[ef= e6סwL%Ӂ6 _kbx $Xu)Z t; Ÿ7x= +5L`Pj[fyhi:-.}(p۬ H'ihKo(k]ܜlN,={q&_s|wibDPަ7Q:F i]^S (׋Q۳*l}$&nO0(pT ??kLD Yi` dU=l&`c]cDZJm6+~`Bv]0aBn.sٿmؕҺi[U0x6>MU`,nQU9˦-;{01m7y^PӐ3FE:#ID.q_a XP:CCjݫr]UfJObC#Ka\iLP'[K񂪀E t L}e]aڿ0l-Uv:4|8[7.v/p1Z܋݃x'iYLZw<)IH2n>F1銻 QEܬס> Vo^7HbfGģY=u/д H=MhxxU} ͬ) ];e%lqVFhGoA^d,92wFf7V ;6;}j/e"2ͪ915g*`MCW`!H1#pk9mq,+(  U} X/-[nF-i(9"+%S{Lސ$t*ɾS[Hȱ^_5R >4CR؂g[~Ekd <,MN5RX%Kbkcڇ̞Hp]W W8`{nDh*z[?+o; *U,-)?"R]\u>nL /KOҊ#Bw/{=}o1 ܉!_md9"8kEW! 'n^]hA4{&1M<&ԫWVl`9@p*fǟM2XZVSO?B_ܙ(N.ZxDRo:]adJn<'ڝ{W z~fX޴}P=w zYe#bq-FS=DvWxϊH /r%3Sc/Q. ZSE@7$(D !14\NM/B/8MM_NѪj ]I8/3*C uLpd&I-8ly$Y.rq1krgye~X}HV˴qq#x֑8q=O$$痀 Z +ݘ+1O `_=ѥCyv@0y&l#ꇙOu2B n&S\ όl|R;<U#7;hݍLJ7rYT1͇!/@#/cj<`BքCyP7*SSX2bb+_HPZd ZXw&Aឰul2`͂]Yq6eb^C6G0JM%-g^M*9W-sM̦cG7z:2CK{@t.Bucz+v7tGsys:6մo>PIbk]S1EV|` K~\"Ty?, XYdtތ=qdNl#Vȴi%FEfNμUmkAW&_\Pŭl7rOL%5&2LO(z} Mak=ҦjwP E kEI~/Iƈ-wFޯuh`c<ﲌ+PvR"tܬ])9s6!|P&XH)-F=3$pTO=9,*iaI>ҹcdfjDwIYol8+ mA^wFQS56Ƭů_Zn"" Pl#Oj8\Qɟ.„ 8e^}Gd;\TG>>@F|XE-&!|>(=Ih 6Qv,rēf=k(CwYJ?76zj&w[OǏLf+8g39,o8;zvƸvP5g mo]T^.$>g"O'ܕuF[z|ADN`g&KH{&[vn!i2o?MbV@<{Ɋx0/V'NX-!h' OŊ@za2[S 6*laXSf`BܤV?`eIJ= G{j!Q_eCt$E7$G8yӤj.#^|d5\ӃgA8T@m˻>酂eO8[ 0%p) jCW,(Gc@s˒y>/ı :  :2 n`ƫMY=4|ۑQs¦ n#m2 n`oX+vdj;7[anO@2ћ=;1zxcO4+#@53<#‡qd)kO>%ͼ:aD<)Vy(BJ!waHbPDoM'l "G}%Ѵ5FmH(^G&kk Q[;{t!+M! 7MUJ< B:PrQ)Ş8\RX)aK5ψJ͉#682 5rRalzG_w+ۣ`6]$y H0I? !%RI WD&8^Qk{G`IZ XTTR]J:4sY{Z%Hg2~ʶ'nEgBvu Js~_T\kƧ0N+<ƘNyiu!_2i ~!!5e#[3/o uSMnz6!V[h ᮎ~60+N̋ezÛtn©F~f qNa/E=8h𥠨+^ &/eQ} WSC_1ciit] yGrY _YUzh4@_i6SקNG=ZhщY~~ -`R]oRkߕTn bO?pO,[qީiMTk7C\M\l$KZ2EV7_H+{iTmލWexn!C<ʯȤ c mq |eї<Hi44YuT""7^5T] fAJJGbkl=Y>I酼l`?,4?Jk=C yc^~G)cbDgG"w7=Ne7K'c@DEA[ 8`p]x.(j_.@[W7 #B6孃(^a!Gq Үqc3!͆1XZj(X9y7N⁝wb0DGCU f/ׯG"]pmDبufN7vX•=j]-F!pܖz˱XW{ UeK*׃U 'qvc>lһ4eb asJAe9]>.H<~,pS7EPߞ-!r_-XZGhsJpדBE`_n#>}cb1 aWVz돠Uu`(F&fO}AL?[Ӎ~))v_x"?V)K_ev^(`AH6s4~vs* "x2^XI@()1D0P4!<nk5E=y[bS N&U3ZNUokbP4SFEX>0^VWNպ2/Xr/ˈXq}߇2$,(tIqUXq@p/IWƍ}7xﰾK~T~U_ȷC}~HdpW*1>سhn*Wщ6ݮ Ftk@CC熄+pγW;8sVR^+Ζ7ތ, ޟNaqkEک"< Q Bzعz;,3kGap$4'C\o3_MKq{Ӽl(n!IGQULJNr4 JS%*WU70URhf 8\R2{!Ҫ'#pa4T ~䶱5#* 6+3<'2.@)e:;ds #X,P>>kI/r]k߅ԷiNi5* +C 8HL}w*HO̱.{-)pH!1xW|2;AAh|! ~M}ыVXK7u#/slS4fKmBa"Vie6J:aBxJny"p:O)rYQV {koXXPFDw ߣP>g16cO A͈!G}5"٬o*Ɣ 3̣OR85G)l,uhf M}j9g|f>`ov~_@ƋV5GΩc0yJ_|Y9ꚵ3P@INM,`8_"RDtGOV(PA6v@?_3(!%~o_ ʜ"gK06'a3Z)۰u}f@soi-šS_G]5DYk~0ϐ? VrĀ֛vztS9(S;9N˺unja"SZ&nuz3p?Ox Q-C+).VpYe׻T.TT#o-&,5KKY&iR9]tsfBp p13DY[/ 4j 2Qg'ac*ߍeJa.haW*^g#‡F8PlûJu8~c#? ձ%sOqm4H-DD|2Dm+31/#.q{rfCm٨beK m|m[6UN!L_h{Wݥd^;քZX%~KyջypnEĬl4UF 5Oҙr6rڰ rxy󽟮ᘪ tME2Ƀ#q#MWb*/uPˎLR9 2m)c{g[PKUG`[@(,ߗ |A>u)0 /׃C !FCH\zim/XRbA7=PچMb\:UՆ^OdFd~O}6OE!ӑs0"Pp7m+ꘕ'iS }R陭Bq)l!CC(Wo6_NOO- =q2>0ss+mm=({$,qfj}[Fܽ;թ_>5`(xw:.XjK!|ǃ|\'U|A|i#vXaw4wz@S"leFiމ]Θu%U#//MҺMig%3[@}L܊dDK<r6hCI-enz.>NJ$c]2Ú)r JRv!.uPfJ7--8\@yɥLb:>@,-P:.D͟ X[8̢i/G g=[c借)MK5ס<9KdHP$׬1Qfe'̔:n9ݛo跓a+9ar]N*D0qa_?8",x2Yr~b_k`.yrx4Ypp^\802el+W0 A'ZO۹̤}t._5ub>RINBIbɚ,q{\Y.^򽅭YgnA@])'uRtyS) `aR]5?܇C$\GBB"hh)O\bu6 u##slB.!D 1vqވ8!M g7>Tbkx#3HRʘe\-Ӵ hSo:tU/^ 8bs;߻_ǏU_/ (Bio ARbG y4iOӥf  o^ U@m7iieEVQHS5>Lx."ϟPIE8)8k &9ghh  pY5^Wu!' 36UMq<wXT3!E]+6>Cs%V5NeMU6GR!9>d>D iƩ+;,,C9C=wꦚ.%+ߋVIi[ݦohy7Pt7Ŋxn~$vϴƍG)vMf tbdHtg*a<`UQ)$B_Y%!WMOLBP ?h%< F^xŢgt7k`YV\uh)=V3N; |@q 1-f+ݎl/#+OK#7l Kty!S;kB͡|sB+$[j2>K"c=&H_{@n!c yV=q5spڬ& hI!9uf{# ?ۻ|;5\7BNFfI8B\#8m;q$%7U+&Ux VJ~ on@Kd6Vߟi㖬HD&8L"♒L)ǹHnܜ]]m.0Q%[N+AYТeO|g Tcu􉼊=5j;w<83(hLH%HPy-Nj~A~nBf|2"^Qhpx V-o]JNZCǍ/+!~ꎴ!%jjPz s'SAl?j5̶ot7>2*UH0XIǖ+bQ;?+??s|5 )B f(K5~C?(h߹=M Q<+ԣ-A z,ə)w38x)͘A7dW9|xQPc}F4٧:shdyBXb=6Wẙ]&\YM?|MP۵p'}m$m! 1瑠 0 V, Y-uZ^۽~2_QW) @V! y[[tM& L~e?xbt-|N٧[w(yI=iE,. MZ &ەʇg!q;"YK$j>TMK!A8Uiɔ*.7q(P=.u;L 3ܔ~xu_X$ _ [O8͍v:Nڥ^?2I.b8+MKI:tr).O<rj_`B5H1W=FK0 \@{7]"yQs:xqe^g2r>.-N0mI ЧFʪ BK"nͳ!ql4'J^Cv<4sY̪u!*PSNM/I۫HQN?4p!/c~gOK<(1#.>TП? d:><сr\`lFFΐ\Bg.:tDV f vgS֓6i9Sh`ܡJK]0?OP+L)7b4C3!O'F!ME ]J,Rcxdl1[hzdŻBFs{*Wƒva|"j/dC-lj@lluiz{l9Τ07cR;P))餵E+DI*uj ̅|sjPcVkajFr& ]#f~G/SfC6}f@(/ 01?ҔBtO4nhR+{N#b`_C@3V¼2\8uhplojeivCzWetMY^@dۜXxjhYr|٢5Ӝ闞ޮM$AU䂶DRPCwfgcaf_̫=isԩ M8}Cg Nu)m{1{R!(9=n`+Vf^ljK;/kf[cIA0U<"X.hnDp\ Zd=S=ԞHg =); ͕)de }jalTfˌеnN uM^{_YD-"GQslen^WлcOf}tUr=s0M% }˞V8JSUN!Xzn>}4;H#C/ J A zg(ZKJhl?Z i""$,P)mipVPbčOIJ>'_khE6qd]U-ev;V;hr̡LQ|E:7Զ{6ڼ/6$ B^Q~ [&B)3ղ=(4xz;},'qc#F{{[Ny1Ή/ћA+xLxm;mozSp[~u6rks)KOW DnsCP Sh=z ˷/De堸+n(ЏGI*he]ol˴97>)X?s뒰&!$UNTH}"> FA]+pT0# m4hOC֞_jc-fCi8pe0Pݸvw,SeH8_U*d> .}w;!JMn%TwL-0<ןڒ9 ;;]l_S NmpHE]L=]qmhRFtpq'ܥ!KM39dJ?@f LԐc~k&8W렿/$ yR !Xqy#4:v_{YELj^_0:2b5 ]T[S=:z5icԈO_Z[}n'æC>-/97 ?NQ>(oR+:b=g}FeqJebH`rBU&ŧD!jJyIPm0TY!$^/ȶM N;LU_7?{ivrh4'Sy#UzN {;adMPnƽLa_>Q9k|5C$Ncu3Ye2S(!kɚ@ԷH ڑf+CrrMPvSWI<3nPjO5nj/N6A_U*Hv >^qo_usЯ6zPiT+&* )-=x5aީE# tˠcFmtŌ %t-.DD\V U9f)9e6Ǡ.=jݶUǢ́W.+Y]OM'g p YKk9h ۢhWIÅϾEyGYQ1~ lq6(E^T\m\~n nfJoA2٘&I]YTe6SN[=*2]n"WShAdžm u[(Tor\ܸ$s6CVm\Mٙk'YOjw+*:ydUb0>! Wkn%kAo:'|9E i( E2X:PevNǽ*=dRIF*!rUr[9\9K΂LUՠ9St6&dLnpB呩Va(Z&izEGK-p%Q74RϮK}ČF'wh_z3^n*sVѹ:  ؽIV|pSG1u㥲\Ý %XF9,Jp\!'8bÏ(~T  /b{GJH,y5o_4@!67)SV8?*-PGpI[a5>k]t(~78;S*Ͻ*X1WdB?֊|^.ʁ$C,Ȕ㢵t`i'$zDʼnb]e2 sC$zr/hW3$W4!p8Gj{1>[?vosx$y.bYQd.)< Ѓ( ɏ`W8;"}}0ev :;M!z@{Dq!sD"p&HҮF(_H DyhjVJkMr=yI/m$|$pIkiefdo2/Z/*ʩKRD} PP o( W,40eaN؂Qd#?6_cmhխ_@1QHP4j" Xu7xT+c=;)/U+lFX= |&ң@ɳ!~ؼbpۤ^!xV嫚5 3+ÑoqBz/6IҢN,2 .]Y_a .S^$<}#zd5Rk+@ʽcqh|yӟ!p/ڋ<#V,8 K%ExR\^1cGJfG`KA?Bj0:|Qk"0&F)S$e8i П>_lP%][ef/*뛂9سvm?I] s4:U$|(;Zyf!}Ǩt6 o{RTp XN\!c/ohwBw%WB0~WMH ?ذEP/9X %c%f; b҂PuQ;NftӴĜ\s hX(ՕN!'B>I2YRF{䰡$<J@f}{$~|O[|3TX Ҧ:+/+uK #*$X񰴼j('Ue-/W6/$+Ȣ tv t uZY;Jd&+N.HIPG:Jj WGʑ$OiCƀkOvV4F/Jp[oف` Z)+XD}PI }ˊ| z_2ϩCVSfM[O..4eA"au[~g>ߔTE^jkK ߕA&TwI)5bG݄u<.~\ֶU31^hڦJY,1Y"F]"{`ժyM,z'&2/^En؇6ʫkOfN-ENP@`YIVaXHB`^hW9e昄"IKY9%ir)%@ itޕG"srJwĞzcSHͬKW7ÆX>hghas(| SG̨a]zjT()j50#Dj4nЃ"[>r:է$5ܡ& ,AT/Jnj_Q;+b[`<:\}Eo$ʰeS( "r,<ih]Ge{ݚgKp-ʺB`9]AqrYEs"RT͟F8r)PRG`EnZ>:\z;q1# ]_M2(8Y c{=tiM4a3L%Ŏfȑ&uo/5TU6rd#J5ύŞygKJ%mZLy/?'5lۂynZ%IНsYțfY:FCŇzo>Kj;@e8Ӥ +opROX{)y~oJ)h}VF)$[_a0pyOwWKWܒ`#ES\M'=/vWibrM3=4 L>ԦF*%iFNU@'3ͺeOE1dnIzU0u_'sl|NڄBfoP!'"@:{BkT ŧFەgb%ͨ:Rj E]i6î=Zz3i5veFG7, u֕+8I\ʣK7;};}EJ^լ&_TU੓^|F֑yX7޿TQAʠM\8! 4E Ea;@siT<TJ#%VFtBd:\! ܄L`j.ܘZ=|&kxn /EϹ2p,4ps]P?G4(}zk zbE-'ݧiFC1Gv㘃>p55\b؁,_1bԡ}Ex~\yfi CFػl|DrlHB'hQ%LFs{,>ɝu#.ׇh2氫#Ƚ8m&\ N1gDV !jH=go$sI$tp[4MDJuQ;p__Gs'pZM*\wCs[S8{'FŇ$ևm=zq+e?J61ǡ*|ȆnST `Jҧ{/=c:| 841O&\b%FXhօZ@ؐE0Hv9a*4<5y!E-9Q慶bMXA\z9Fq?3.'rK_>*)T05gcV\ }K㳛Jk̫w]wڀ(3V4*9m5-K3xǵ T^1# h!! ^ϽDUݧUthQUj)1'X&H63[>BTKWm,W~r]AsC1L1?E~n рbKTld miێ F;Q2lABxhp U[?e]=2Gs0*bnpVz-ϪW-ty4 ŀ 4L+:"쑱4!D>$SͰ.dd *lqLܻZ5 -ݔK$Lx;P+7{rtc<K){p`OR8E@yBm)@>2f~, 쵗cTX7$:ߵ 9\N1c edUUZFz^D!\ >ZdK]]u03+M` 2lL> +Q]rۇ*~ȆE${A}c%=^t(vi6q>Wn}5t${Z)>H#-嘋.S)p+{{3'CP pN|݅dLmH4ȪI:tҕ1Yh+97n8zTfWűv1ݽDf9-m*p$ ibu+}8jҨM4W[5a8ob~͋%!Ӗ'J)E587湝|tn"_"=I;Zqf6U#3| ~ġ !)dde?(:JOF5t<bbk˦scs-묓zipح?VRƤ&>_ lLfo?p/D΅kw#كzD@WWhݟބW n$q \u U8ʭ50 bF JV r!grê٤vW矕أvgHx *Cqʷ9j2H/c)mb% 02f z>|OvoǬa]{Oz?&\лa" v3X]]F߾KZ=ڜhN917kױ< k𭻃G*3Pm|710zt4ڄrS7V'F;齰X$@>ǭP0,Kk ><9ѩcϑ.AD` IĖMѭ 2a]>xiL)OZ R`=WtpAɶ""du@KJZ((~sl{+J͚s>әKDMk{4JbqY7J M1İ< `1Y_`(\ƹo|AB"em!N>4@Z( o6lbi`x&bKɦgy|T/9@I`^{TE,h|N(6|hrgHIzg*CvHEVG lޗP֘.gQiZIWmf3Z 1g oe:@vP9s"Ժt#1[-L{4g-t[*4pl tpmWrfx!-F{[5UFYƁ%LƑ@?hv{If1-^| W xz836(OmB #$oE(2`"-F70ԥ]qnsθyӓUh(c fy?i,$qA/JE[ೀG.H QZU9$r`}p^xһߙqp E+n wpԁ8硐t,o+#h&xd(m+t ak,, SLXwS aY7?h7a2q@[K*\r]} ϕ5l9L46Nױ-5+vi"X;pNBK`TF(y d}3ˎ)1j҃1D'VOz,chJ3J=4 &GDAG-=xԡ&Μ&NX +olv\1v7Pۨ-7 ˧V#DjPp< >`|3ʾ#e/M*r8e]ڷq׫'S Id`P3rGm$Z%Ltbf떯t=&JQ{LHU !ȼ"\'KɄ5'%#a* dXS.۲v\f(U@p{\#bbL)NB%\k9ϥyUL]bAw:JbCPq2/C7r!vxCgc̬h}Nj !Ue'bܻ~⼀ކˀy LJIݥ͞fbl x/0|$6mx2px{U VUu]b(M#2X7Pas+=@f$w<~R4s|(O O|7J ߐ-O6~ƨ0/I%N@W <)B=dF!B&WҾ1lzw,О>`Q~Um$D'GQ;dD5Qfm{R6/6'?ƪyY_@Gog4& <,&Vw\eeIEU\S\ ՗kqϜimPHϏ0\@J{Qw% U7]Sx;$pIGC@7L3%poՑ1`qa ǎ`\S]3AxGkNMƳĭي-waʲLp{ϯ[YĂfέcWV﨔0[ m=k<-̋j>|nqb: عe㩸k՜RJ,mY$~C>L%ϪQ%;Q.2dᄹi(D~9;A@eIC>?HpfM9**un2? wD*:^&M^`)hpeh\L3-2 G&*e1HK7pVzi_z6uO4(BH7'/6B֤"{UIs3RWc~ nQBÏ=#PPVjŠ XMs-[Dȭ"926%!qHL\%R~ +twR n𽆶!սL'AIATM2I)$ 0Rzu%ί/ᲞyNrB dJbhrH h>v0ݖ(YA0W#d߾:kqh-i 4/n,-4\p:M"@Ī-< 8:@𚼩[%F*:4 QI&Ơx̏( |ڟ&R(-ql#[}OT~)uR7E\~\y^ |%^Rp8gM\gȝ}䷢d|P2Mu ɅvE[yiK(nlXjoE=sR7VK eCkoN3&FrQ;za^'ͳ_y1Fp0 eQu+?t8_DSPLJ >;˗|k+cܖsҦ( 2-(X䐓V7N91<6e̅\=RD&U6f}$˓Yn}p?'!#.ڷ#<>z3sdHv#gu6EDždhiPVuů݂o}Ṭ3:}'N!5}SKիGGo%SG5ݝ`tŧG?5}5~3*D m!m-=wPN烿%-hU+h\&1Gtܨ*F@>5ll mn݂` H}PԋV_kN흌o;BeD4^05=A~l`} pJj ֥mu*k!1Et_xSUItVrXhOe5`Q\!"pvz)2-@Ǣʥ\ּRjB֘7o+u{ zs rr&.F?id_}J$&?3dsCـiza8.PG\Q 8ۭId^1KaIJ|u,ve9lUclmb,$6Ǵli +ݾ1!3hTZ\1?%8P>zhcA^|Ŋ[= 2Y?~ݏ$}.)07ԥUqehEM )]z+G 9J%+*q>EwFֱ=$t%Dk@Vż$yQ 2 Q'1]Ȣ"}uܛSSULq6!w~ܶpprфqҌT߶=|n㤎>@BwuByh -J}(#h-ק}c|b$ɹ.l]WLR!`~VqՓ*0dqH =*+y 0%=bp)}p΄N6(@{ L#\yaF6 sXBQ'Sci*RJH(ˇ63g,#З0xPKM۠aY8CxCw ʚSbwP[,{?T5r s糶.ufݚ<@ҟN&BA(1u؀Hc1FfCGɞ2 K`Z-d= ;e]%yF~9W* e0V+ X؈!toP`J&aGù=[Lmg%Sہ8vde+`F .۫l#|y2ʉi8P)Jp[!dv{m,Q4sBᇖ;$ 'vj\1]`H\|v0hy<1\L;Ș ?֡7zK7`3.xq^VиJKwD`jJejJahirW>5?6EK7 :A+%c!#OE#LILb> ßʦu8pWLJ ,E;ƔcT?1fK Z#&.O/_#l_J`JӶ]ϨڍsxTd"ެJY_0ׇ?cV?[k? X\]P`\]4lCeZ4mr]yo.#Ԑ3 _3gS¾-rOLCi%l;3;Em+ܼ?OdhxJ4l8CϤ G }'Sۧɞ<)NZsjF6`l|DC\Cb?ķf} "`jnޮDT9WKf"Rߙ^<.}R?ɥȫ}qu݋udR`M l C^@Ew1@ܞ tQOl-E13Vy_AۂwHF4uC怐>}K;x8zIt)?+jXpm6ChX1݉xk¥SƠlJVI@;%':G_VSc͑80ʬC&YBE8t{]wXrwR8>AAVTҭyJju/dj<襾ʴ=_oUj斥 ;[ؑ6.#ȗ>bpgMy'?'{L8%뭋@4XRZPW!{b(ơ8G(^L0"2IJd-qo/[iv.LGV*Hˀ߻k0ɻ$-M`=/ 4E[<=Yn LHZ̼.~c"[h_^X0x|Yv>n׷vO>+Ѽ(]Qd'H&,;C6y$Zn roA]0 z.gZuh>,~zNqxs<2R˄VK7mmncƧKqvB[6j[MNee ``h._ |zŕc6y[ ky FE(or _ܶ^0@ 6* '4R9i//4-uS}jDNѝ[WR2&V{ZnE::cJ~ijck JL%˘~ea:0"̘`XPԸƂ1+A?g!7P^s% 3rGePVj_蛣3chN +`AcJ~(Ba$x.~k?| W@o v82c4sw!z3Yͩ dN/=wץ }@jL|WA==#AueyhT=D>LPq1]NvB~W.'%{^y.#٢3 9=caMKQ" R?x,[I q`t"bI[δbhVcdGi#{ULYlBS>T/_Bjr$}ߜhv2졉7qe Υ#4,lن_nܲ[Iϕwߓgo+ œbC&}ƞ6ILj,B i]e^YNE^#] R"|kD ?OX;AQ_dlst %5<[9d ѳn0d1F [1FQ֥g(oޓ]F9R"2,И5rZ%V1q:^t~Ad/6 2PReAЖeTUvF1VRSg{y/@xTa.;)ŊFd]UHNoNi&kcL^\SxjJby6?I vܯ";۰*S [H$WI gQGk),z!g$._xq֍vDd3ך.!& ?`GVx=JMv!tB5]8uQ=@F)Ըp)|}-LsV`5 iT[x_Enz:Yct wVSeMJP"!vSiVj`‗`^ r5ć@)MDXWQڻx㮓dk bϮx/pR]^p~7?b-VPUxIw ҇Biզ|O :jUV=`\K0E=gŤiz%2J$~cK JFp[agY2w3&.Bv8ƌWLZ7VuRCc%5-0yE(4@iF&: @Q(mF_*c|~ aiy4V"t[3 E8scQ7 CsA%vlhV< 1Did6?@ Pod 1  /uȧZ7r imʅiu0z^=L;cmk`ǰ#vg8Kcꌈ(cB3ld>WOfXe8?kzyҎld^"h'} e«9x0$zSI!&9.x&I[y;- . {|/PQwL wLp\dk8x7@ǡlmfVJ,1&fmgQP]~K$JjJּĢ?/ 6:KV F8bp~{b4Q"L+ABd&k՝X;*i,nπ@U{\s@L,;~+ e2Q]oǭ"?gs؇Cz31MQ=k;|G"%giDa62 x[,*2U&w#EX u1Tde7E{-~> m)6ڨGXX!`\!ϛ%ޔ)&ɷ-KF~܂%Omtnr #Lϼ_"-^)~2Co؂z0U{`&B!LgaN#OWeq߱=TuS 0If9^]$mFhTká֡Wd~Y[UM–PTέc2?;Cy8mClʖǚTL@wQ2хmCVT@w᪤Cr"dY$-۲ lO{˱;8 :B1zDcT˙QbQ-4{/T$^%xڟ%:x;N4JgnگBhY+SUcGzwؗLM~~l^8?LN9B)$eny!KVbr84|7\(^V5N^^ΤAW"z0-M;? F}wzByr+N#Dj6̙vԫ!bNUJnoUPMgx8ҵ!Iyˡ[x'x}'Ozj~ YZ(:*_ ȾjXq7pC7Cm@.Q$ano0![$@L4GB(>Ɣt5վf^C$4 m& !g鷰6^׷/peiӵSWxt\5+TBp=Xi (ECֽV@ڷ"V>BC$F'-ZFt$u/4IIbp*3b9Ѻ vK Oie"zl%L+6*so& eg qCC™bJI3:zŢ3aQmJ`SGДRDM[H95) EZWRV8qXA}eB}KSAWӜGjhwtϵы@^^ͿZy);XN7^|"t[=6e[P!y bf09-K|LGVQ .O2{ |'O+՘&lo+ve&v:M2}b-?_GZ;k֝QV$9X0U\tbPmc^Sv%[Zk=j')m(#riKH6ɾ:Cn)UOvE꜌1ωjMTsӥ< |Y Lz8q_ty8:nWj th<2IMyߧ]_l''柤&q8;Wb xaE:Lؒ&?y=R~ L, #s{vvAQf)*Pޮ1Ȁc@Yn//qA꺼C_\oaq`5~k $1]F .yՎ{9X4ռ&&=|l0򩍐'[ PbGEm}Ey#l67 1S*$U4FL?BNA !,zq̫[Z,@EqY_>&7-_ ]˪*AE!ځ3X\ ph6.yyA'WQry=v:nLE{c4}@+ӪМKs+MIl~-jeu{`W__r~.) ߭L$a-8H`8O< 1cޘGwǔEYl>/ 5NpZ.y"(Г[צgC8H=m:TUU.<g'\ς`B[C4y(L2׳}< xr'2{3KmERX,J9(n'3.ۚwdCS 53l^@}m{_ذbN YiԹgc":fg E]/YTǚKM.#B0UW懑y]PaAn 06k$R10v|I1)LZ1qgRMؐЃ_cíD?ЉBo}Gy\ŊDג@OJzʡbwК&xNWR+IeP߳UܽswamL5+N@lܗlO^49R;broav*;9cٜ#szʵڞ_UY|Sdqptٖ}|[1{"DeF; ۟8 c|pV,!Wl ΉЗH{© LR~Mhiǒ909SFFr>iEz TFKSka `>2)n61u9 t3L@}2eCquY,#N,B4Fta =>as^<_`C57>xclG%cA5W)p}g&60D象U:O3,_Xڪl'&Vhur `7$;>]z%YsZ&p,%RB5Cn_lFlC#u4UlWα,m@XRgT>: ,ncPTۉ ⸧IR %VL:C,"e~EqfFlV~2F1,PMfI@84tc%|Yq%^BOu_TI[ظxIwd¢>7jҕX>GA=FI;>tQ\ALE2%ꠜcCz9䯶%q`_鵂a OmHvJ'֐c;^84ZfXK^z'AY#} +f! kk{,'ŁVk 76qJtdfbB~$i_E HQg8@S ̖]70~,& 4ᅟykR3^~IJ i6|:nL#h+.#|fxچkganǴs8.nRإwUcNm(>=@|'!!˛|o_҄/A*{꟱*k/9<<wc4QsrL !Y!&8>$mC{e_T#s=5~ m~"DGK£!:$S{_A:%`j|Ym"~}oX-K[ H QUY!LtfPpB$ /p:Lyo=bBeQ큛S 'Ŗr\WE8 |RJ*bf÷9g7P3,[hb֩Kȓ׊7i_6ƿ(ek$œ<;N8ED(4O4L!\tu9&kx!]_kwQleS`4ێ u?k]{{'ߠFj߷Hp 8/3U_l Ҫo{M;g$1JAy i8!5 8l?UR8GQ[VK&|q;J* VVtfy0etSc\znp]8 ķx~(\LJDhRWTstNXsߝz+7ݱN|Dw-)*#|B.w֙.̺scNum 4 =9B[Lmr-j#bQIYY4Ps~ўJQ+{Hkh`T%⋜[JYu]vmX`7˽ۇu`^bf!!m*gW" ]#L1 Wb~8٣"1Ne,!jpyhzc~2 ]lBȑ(ݍl h ,}-6]dqPxx1SP`@ b~Nv4ÞZmjY~D=0R*2-<)mhw~o7 DK%U;ܚ@ZIMЇyO㍚v?[ iA*BG9(^%Th`NR" fsXr޷SQ^ ӆ\:˖ބf+3l17bM>lF㶋?*xَ?,~qV;טWP)$^g}ѡ#/@z(o rfWo6?d|acƃfa0kvo͚cO5Ȱ-6ד=)pFnjb[ϠC,z Q" }Juv/;imy̷.ę KW81X%:cZCre"_'t:CwTB0XJYiEMZi tMbWm,꜖7Ah`:aiy$?]Z%ɡM<ԡl]Ӑf`4XbtlH|+[S&,gA1;7diؠS3 ECl {; HXd{s^ 3`FcF1֑F1SԩV5BV0"^^`,w{H_ݺ)@(=лHI+pm'/OVjZ"X<#TUmu3~nj#0P.$b f-7eRj, ]n4A+Yye]w3@qW$ɀc>%Bvg 6H90S6aw,4 10Hrh]?30d8h|p{C+7mjVXعPC?\MU|tֻ#} ,"?ϔlKE2̒R7ܠclr_),?&qO^b0\n/\t$G;GmHSSsc:93 MCrV8eI5'5?E,TGpyʲ^ưһJ D$7& lߜV9P`s2U>FI5wDւVscNsBhԪ}NF 7e'm`T=в M~[L/ʦi.h"<\~(Әjsj$-\= hKsqP>@inƟhBXęzA5t%D4&!@ YjtfH< r*Tyh?Iv?+xǛj@N" DA9)5]⦅M-^cu@66 *ǘ2`ek;+;$PfɈOzEO{{.sC@L\K[0H% ~Ao&+cyU/A=ݽ֘]]>W8ؽ6xY[; &ҋ)NO_m>%rc0a]x9jw=tkUHCϨ|xaԠ`GO"P  SmFVxRӶB١kpzR nN0-=FԘ?YF㦵xu|c*ᴊeMJяmB9|ADh8L9.G_斄u4ڜ?(oQ"D{ V2%\QAdJaTNUd3 SIEe-+=Z GGb?ո Q Z[kZjн=w:JŪס]Oa21g#8;ozt =$< Zv,4Ycy#+O^[#b4,NDδ"Z艕ӏJ jVOXNgr<~ޞ< $DduU S~e#0340T}2х2x4SUG^R/"SdĆhZVdf-XV$yV2/b))I+XϗtuŝG>[) naU;h}~l^&v}:.jz JDlFre0ፏoHbfX 7˖џ" h=É')βtޛtB:iIW|"J kA8_ -Ev/3:ΩFϜi;JquP*oJqL%"A춬\hcJ9blFy%;H Wx/'8"g.Vy-e) O8~O~tu'MyuHfvߩi9r_pC@O1?+bC Foiu?Cx5{4|1%we)5e1K>8ZiIF[o`|8~fҪױ*d$}?k<[cA!2b8'wx?6ًVzֲ,o~$PưG p-V̙w+E7E|[#s J85:XsdV"OՑY9*_F껳/9 jSw{v8H" ?<I;@xn%SAeۡϪ LJF̋b,T?,~s -IP9V^hIq,B }OiMƀyuA[& } 5z|&~-`]$g?==Nn&疏u.:`ݐ(m?AuF("ԍhM2'vtdw5Y4'mB[`oXc?}\%ɦM3eU+|Iٓ.݌:g7y߆72LF_cU𮏸>_;?njbBY#g҃0"nȅo1ٝwnβbɅ]/s[*LX !* kNĜĆQ9DB20Wb€rňtJå'Qw=Høp$@o( k"[yDÜcx9TϠzy-d`PUmTp_jצ9 8F<Q:|Rps *j=n9ow֧5 O *{0ʀa0) GmX2~+;[uؼp]+e)QAPg٬r?[ylI:꛲`5>W gMrl9BKѤ\]q u{\uWQ ZWn%jl"~}{b炍{ ){^5 %aNh vwEIlJƬV֩y@ɣߝQ!"mfХe]Rmj6Ɇt47ݡ p 6eCP4T(ڊ לJcaRbmAɺ+͝KH//kF'{cio"5F&ųk̏z:昋2uD͋d9Y[-ꫦ=+C)!A&]'O]Avd\%{}(**C\vO_b-<Z LwS&2َ<3>NiTL%&%/yLDGS(j+I!O~G/^*:"SwpnEXM:QD SʛiSpQǥtgD)}[">wYG5и,+D@~Wvx*Bs '}y5F(-vu);Fi\sGHI73lEƯaM rupJETgt`K?;޴@,U/91'& v*2K? 5 Kb [kC:O$J;nrWSfrcGJveN,hk.K:hN:NE[ݔ&A.XMݛdFg5Lx^ҝ+xj0Ș@L3Pl|% HaI)pK_kƜ:W͖.ź B.Z{ͶԼJ#\W7a?3bD?$s'SW{M2Zlþo9+Ke*dبDR;e䱈5sjkSܮ M~xd^Qe̗@Gt] [η bKU0$619?A//x^'23T0YL``c+x250sGWN 29mf(YlO֥RĹ/YdFٽ>ǏA)㣎1i\_jHЛ?DςN?Zr79}.W7 }⊤)xƲ}GCi{ b#gIz6Yt~o9F^ eLVCv"IEܗ?x{K㵼1jTf>RMXNkĊ6.OVH="W-fD6g2}午?Rl!c QȎjZ7[cB\"móu"p^7ݣ^ym>h@Z@-O,<†$:le/>{xqyt)jP pkȆl]xw;E8Ɖ%{28kk@j~Mc (ڊR&{FnI J2CgC'H#~&">MBPyRΤbL&!vM$DWu߉obfMi]aCOWR>ܘJ?_|=[P]%h"8Yr+ A C ή)|{ iP=f7+ߙϿw& M(g$B^_cj>1XUUQH˴5j4:aEE;* r` ᡪYClC֓|2bi[pR4E qakh~wD3:q81J - Y"VBruI5QM6\,BǤղ뽍UNsIO"_.cYKxD9^>L nuA\F*/cD9C #:n&ˏIekrwAKEiI#a6& ђ*;D//ROǥ!2b'\VR |*|I '^lxB8zzunjk_D-N~[:wƤkm^h$Z*/|"V1lQKQ_-RuסK(y|x=Q!v #m{Z\ޏXj/*b#>H݃.钍}&mgmF;<*qѬ8-Ѳ,WƊy;bn,~B;&RLmB U /?s:Tt?4UϛYI9VQ["7aČJ7^0/&Yq[\T?shRb*H/Wr {&<@}5j&Wx/?9fS<$L驭p*n3*Yp /% LnAnCJ!nd +-^tN 72cv:bU<޹-xӾh†:lvi~LD>& MiR 3% N?魸,nU4lLZVZq>#j U ?-B_/PZ.h̓2xb"WJ߲!(>bvDy:@ W>巡 bSj-@* ޴8;DL,r̈́8Lt1jǭϷݍWQe΢[6Гv˖epJrIvZ#+{[íLa ]hLvzcKs*Fρ#7_6'tUhV8}/%oSqZ^xg"Y_h">ǎ+?iͳr4~F!8gDnHReT X?Nx(7'/0_0D$Ńbb,ѐKg zf1*\nig@];,3Zn:>u~gφe oVv<5, |܆b{R c?k71LI![ -3mvprq[(MN (v 5i@~b+*TbCڸT] x- ZJfǾGT1KL{O>PgePs8/2dSS!FnzTuZ+&ֹS c]uqS{"~KD?q'pg:-j8Ťuzq isOfYU8L<NE<8S ` OUI2StɎGf$ر ~IUyF\}UFsKa[bv/T#Ixy%ffN_נu KHHU0{Bu<"Ba}\Dv&Vq}' 9jڟG9g:wjrdImmN<%dcH\HS{+2?J1 q# D~@7竴[=K- jp/L'6 Pl P9y7F˜AaBsci>I΃+=^;,xt̺xD%-SӐ-OR뷼hϨMߏ%ʈDY k}o a(׸B曁 Lh)O!ZU<#njg'm%:/xnK34A?[`wf ZWj#ՙ3~:>JaP\ʶ| *7ٰr_Rk;EMǗL%|r/F\6?x3b V%]4m-{gm;9]9:Xf%֋if8S=a!trHP@"1R^#):\vU:p@ VĔ0.>vm E6>#] /߶t"Oy={nMc.~68ljl> (=u$ޚYCbBZ8.m6ֲOu-2<޼ ]+PMN5'0z8 rvzŲN{{31k<+' ~5TȚST:Kbm,Q)~ ƽ/\W)Cq!]|V3VQpȡ'ywFYc'&p ӦϺ"nUxqY3P o%`߁aӟފy#T%5?Hfזޞpn&:Fv/?FHJBፎR"RﶺV6b.İv5+ӢIG`y:CK5<7-l,f/`s`("x\k3ƹt.zW"55HD'\;ѡ)}c|$j嘮|ŴZ<4}I5H9<Vv$DW'|nD,x;o:ś8WW\V\t& kJ%p|u0%%p Ս#p@Sqβ!p>LT% -ò!!:nzSyU=Dm׍׫Q'e"R@O>'؟h#MՕ- *4f, .s`3G)"ӒXc)q`\TΐW!I}! &@[0NN_D#Zט$;g$@2_q@zIkѓUZ!q 'V#892r}yN bU*As7O, L{{dGZpZ[]M)O7Yp~& 9a kWP&cbDi>AdHRG,BJy,6Ř_m' x !\T2?R\46P7-Suc#l\)Q14(BЈMFljtor >JTiontl_')mV7Y@+#v]}t$%FǫNMhSk^lNfiTxa|02(`h'|cWdwd4M޸S~mf'fبVN1[͉exYj}\zoȱ,oP%tUy0i&簷'(+(.hZ ˑ"_hZ,&Y0\uRy'h 8]BIɜ ^.,5SC(9u=^5 Jsז^wZ$* |^Lͫśu H?WcUy&`wEN1[5fa8ƥUvZfOPn٠teyy|d)e"  w1dii`kts-a]Skvij|A!J̹{ɲ'SLXZw)8BW}*B4D͓nHkPrRufb)&M9ncт~ts{~54wδOTWl6!#/< uH0#/77ޓzqeo`}I9u,M15ٯ?Bv΃A(3>ۗ~Lg1!? gPw%*mq:c\05WEz"mdi9"\Q~}Z&3 Y)1nT^r/q7E7ˈ6耛ɼldV{ EO![5 @g@B-A5/1-<2W~ਈʓT#[ vƁagJܥqل1#r[gnj![MV|>ggj1 \č^*KYlwӺ (!,H;b%C Iшt;?KuIxqW(X9(/Z=CrLș瘚rJZ'Ml{Ƿq4r364  -6gt͢tg}PP>Pіؒ'c/+=ʰ'cN1N343! \ee<Tak6MRi'<"Dя}5KNـ)v Wp4M8݁TF&2ď? HcRtImZTWq:J,BQaJb՟X7K!/NRoM05O1e /㯌x@ m1#Se9 ֜JXV8l aR.|D@1co2NsX*`%6/$4/҄H]G~zD{Q !UnYV]ٲ0KjRbx׃弸Ex>J}!_on h:~6[}j]J[uܻ0m8 țHqWbԸeM\X'tNI ŮET7A/HNScHUw)EҴs6덹~涕⛬fFC.Z\(T%A((zi&ׅL1OHD9%3*AovN uZ(,=c@(089SC= g\3IZ NjwAkvITjt5vׂ{Zq1f |SU20C/_IczI]寯 ,$%pt) ۡOg?ҰϕK z]Hr@-.)CHd_zԔLV^B"~fFͫpQYT30\#7-n&$; a 5ʚY3+_ 3UZ̼p< Ȏ EDiΛifS+*}x>+oF[h x=2ov Tkk|4߶nYT`Tlk[)" GUkś0v+x;v:6F/56{~oL0G炆{%s+=KMO4PFp!Qf&f'S`/"{ k+\ ?=eaBXXpCbs n@+R@RS#Hlmc\'# I*{YB3NώSc_T \L) &| N&R9ve^5 ՁP4#4ks qdSPʣKCc: |riS5RJga1y u 5O%廏sTɒǫ&k9r SHoPTew/n^q.X&d-A$t.!z-j|w}KY[㠺y-*AWyP)!1E-|C bhJ/BF_OOp/*Pe"o{ogM۞ oX`NH-,F2,μbAƫ5 VquӺEߖ)Vd죛wXL,2?2p"p|cȻ(?e>_^ys(pof>2>bhq>kh?R HA*b0P\2xIѪ7&{$rΘMel@ýUAxc>FY#OaT' 6*>&iQ }Z{I@W;c@)mў/¶_RaD8P1NrJ ~,\GI6*HdNr )8W:VZ`V<0sٌ$U<[]&_Wqg%)YTA"Q &,Juuӝrbrq*HXїb3cI'lbskfCqȽTYH_$̡_TWVWC.0k=m޸i ϖ!׵4))_6I:mz9t6K;"i y7;`QeKsXXqaÐYvƦS{gauِwXDE\غ :ACdɣ 'ZYcHJX,ƚg:8V«Hmđ3AȰy܍d:;}1d=ƲEfPpwx)"N LG}n+Bs#/Gk sܮ[,D-rɗ`iy"}Rnl}!,pR0R:!l}=nlQFbn'Q%e(WLgAH*W3.ySUmѧOcW1 k=ץA"h0%[&V$L `mG|E=#B*~'gA xn:>1vrew*fR:x雐k=ΒqZ}&#oHfkK@Exl^?~e#GmQ_8'1ڌĥڄ~\+zeD{#~cB6nJRqiPn!%zHJUx(P@;'N? #R  zHФ;A>ؙ tg譵߸S!YɘZ4RG47 b\G =l!; >2f'Su?{FasLWxy`Sgqp,g"ֈCbz8#ĕDz2/חGָ7U*'݆7`1p%Yr)F 3wbz{,Ggr9Vܷ+vQ'"`pun% rf2@f8%Զ ۩fDyJI+{voMPlτEb:I?@//Q/M͠Ӳ*wQEhRWӈg*׸diƢ?*f2kr4_pxTNZK MLRg^I=*餋(7~xQ7,*(%!z8<~f_t!MS?`].0 'R|S-;&* |Zj˝yT i;X+=Ÿk QEBTJ4tr;*R\ba/>֖]Q>?ѣnaaj[}U<îP/\lOI:{Er%}6 .γ&ƓrJgj $-G"d1~ѝ)=dz51ؽ-ܯhp,#9.=rBt,KBTuZ| 3&Dwv=XhoY}^|`NpOyHO e!7WNU}be) :x}eqX^Nxa;6kJH ? *žHA{vsK0 Am&s?zAA j˘j Uս]i T3^r!b~ LQv Ȁ6,m6_<:w q#3llI0i[I6gB HF\0.ǯ΀.?J -zًo9J ې| Ⱥ hѴz$c5slfԅ=S, :cX+";E xBM!yD5pbd3-=,)tOE\aHHQ7޾6H 9!7(}.ObV820=?Lbutm,C9fcI1D}߿uv7h7" gRU*z{1ƖKFyP؛_r%#:u 2GQB7iczO I~@#T4ؔ@BݾpGpo2S(տ w])#{a:VMJ `xNk$;^>vؠ ]QRk a+L)d#PI6(Tw b4*Zt"{ 2=vWUdCjAz,MhWMӭ0TEsr91߉ylbtOoϒL$;A=VLT+Y >F tí 0 s0،1/e(,cl3ޚV⹴FwhFe*K{ns`#3.&ԓ[uDeBjF<31NqC3I:P~npWTH٣ ލ0 J"2Y8tB8+/H"ԔN:/n.\(|ŎXi7/CP )Ź|BӉ);õw?1><92ׄ1YlJ-Ļ=ReR1@u:R!f2>  .hⰴטh7Hf[1gwٜT|NAsާң]<0T=qv})֜{&að+##OpL@'*<x ['8þa|"cI=#0wjQQ>CYd8}e92( M1SUv[Nf!ߊE0Q/t]'6R^x7+MbtKZ^X2/wU2 8.!ퟲݞ &5XUųZTVlrPC@Hed Z 5@Ew y v ma~?EY+HaڿG"*ԉɉy@0&If\?iz._S{º.@Ckm; +/Q}*DlO`O2J)z,e`աT9xgs2y{5(މer /z)1ApA֞.Vh9#5=D wRGKٍ,pn`TceHgkVMbaCb.r轮&a hå>,p^ۆ}+UtˈZU*7z8t2G>BJvBtaր?z^FDk\?^:h؆֐4+~"Gkg GMky?Qk"umԗ̪qU'0c eFLK^8C%doʤ޸䘲0ލTEaY__oNfƒěr}6a(E:u~_eX$K"Ax&v<(5ʨbX4EO>aɃ*PQ vڑQCoqz\E&z jciTu\{ѫCYJ 9ZƏ̄8G_qa##*фi92i`ak$0o8(jCx"O@ wV>&LJleU-T+.8= w`[7W~9nȲK c(_/R !,G̛3 VIE7%-.< Vφ!^F7DXmG /G+x[Ez~f${ToYJgevc[_=%On.9$ss$|]ҫOi@E}\R3brͭy9ODW~`K8]29%:qO$Q]0ƤJ}59 ɯÊh[W0MN`Qsr !NTF5j|]˺)A.^Zh5Z6 %'g&':g?c!cC`٫<#*+^PDf#_èIž uα63Pi|"CR`LIB׾z[E= $ClLf|E0lSfzrP`o 8Ckcz: ȹtyt@sSVwݞ~L~5\1p'%ZIѣm?F&q .gB|] Vyg Yq FDQuN4)hz* {bh3[NIp ZrPr#Wvғ?Z?[idn & @:Ni3jI1=YS¯w¬,xxD`?婫W/s&tM3-!SY *gu;pZ5i/Tvl׶ OH%=Iw5ν(tə۳G=YA挭ȩt&B>Et;6ErQ—?BèE"NC`v{.b&i&jlk:цZAwxJ 8/kٝ376r)ЍOJwSz΂IXܗ'6Xd?8ek7H]BJ47XNa gHgCD\? ) q cKߟ*e5TW&x!q; Hȼl,F94t)٪` #B=AJ@Y@BJ(y@IaD;k`e"5󌢧h6 ^3~pj\8myAz%c8!=@dɩbR@=Xsd~-}JGւxa;IC4dEt~p1ұ<-y=eNȯ+]^(~8 ǒ}t"j1D] O/G8\%QtAb4AsysR~pgԮBm֢6}>@{I`Bpm@gГdEf]>1y*E.}l\P -:Csg~Ej#6x]LXNќ,[,oBu!娠1i,=^K>yGp]UӤjc yd.my]Gx/eipSn(oW6(7$O,J f̪+ﱀ4=osҚ{.Gnm66/2WN(aS:$EopϿ%uw3Yu4褏\7,=oSOd?w&"fFvżʈB/25zj"7%:s>o.5/kol-LaVR6&M~"7g0{2q]!m /t+Fsi;+L}:)Px*XMir"I0)=ydɝf0;9[v zNXjl7Cۉ4n]&Mr-0N.3fЧm}^岤%4PefnR$"QSJ JGTM\i ?_Q˜GHY(̰d߷xouIr(g)oغBAx.gTCp{|xὸu,:8&8Ъ߶Q8]\A-n+q3JUserMg)k eN `MN%KD/O?IFYn V Ks%U 0^ڃm͉m5!](Fɪ8ݹ. Pu&w\yZdro7S+8>^=D]=w)N/"<">KR}Vmt}&'^,涚gCN86o🢊Ѽ٭,#>׬{5{FDq1 u(d% ʑn욾?NA\6Vf= K:Ͳ{J/ ~{ Qþ] 3śz`p5o RësѣP+d~lr&GsQG+c$9%r:'Wţ<99pS#JlɍN[aͰ hdY /'N س(GgQ0U=<h\xދ)%+)O6-cQ:%-:N@`7π1jzME&L`e ;wA|)ò # ar~WӝĿJ1J0Ek@dݵ-M+8>stxO2-"ƒAr:LďJAW7Scݜt IT HnIB0OL{ScTW>p t}^n@!?"= +*o?ULb5{lڈ YsXx18s 2f/69ju[OPF5i;B.y/ ^?Chk:ՃJcl'ct`i.œBވ#HL2"' û~nyO9oWF! rc[](w/j^͗P;+FKIlda<3Ty= ZAߏ0TͶy>,7# -^+^z t2GT+_:mZ8/K)XX'>2DYu'BCpb9PE[m ZcTq˴;hOEGpzr#P߯c Z^QOŷ7ݩʀPo#i(? ;ZO6&ӏ|}H]0{Qa$_{Yړ& jiv˚LmrWaM@LDO|ҭؑ*X͵Y41l4W7??>vQ5"Ɨnsayj>;E3 d_* P5M6ItGR-^s+^jn.W=P$DTg\QWmvڡ5˻Aܷ-3;r>ۄf ֧d&YYPMO/g9;Ji" ]m oUie,:2Dy=6Df}BXb*B0ltfuaIo6.dm$L%8&<;$8}ƷqXBMkm,!iiu$ZAnl7{zSA4SuǴ ެڷy($kV\'Ҝ>I4_VbFlp߷b]esG5ȿ|FD\>?]1F ,Mq0'2VF{9~j4ވKtB'J-BiY`eY MzNew8¿KT%} B$؁Sm&ŅI>y~\6_ ]kS%S#K"rJ܎rA7N+ v؀ `(xlex~*89e";e㲪ϊ޴jUPe46@qD2\'l,z @<*o8?T6"|{[gug'՚_nsR}"N?F8.8El^!ZJ3w4MYЄBIE#c72!ep&>~ {o}7 =!E ݊4EBRS x/6b}v ҿL"@Zɕ4~4Ի,@!g@5zM(#uSu̮1ƜHH3)Ȣ`K zL+JtѩT|.%T#6O}c2%A}| a&Q"  #(z2e>Бw<'Ǔ(̯DI|Xv̱:nD"AEHڏKUi | OeޚVTw{pduO[< xSyzM}mhmkӸ/_)OBIq({$(`o,`ƨ}ui+^P FiIr\P-P;>[m.Qj F}F$_Gbe7;z݂2~=F̌s,TEeY\ZBHrFt2 迄 XFP5 1 *wߒҡD(288!2蓅m>~p+.8  <{m6 7Ma*b}ZVCG̢nq{Atd Ԣ^jj U+ǵFgǻYsctwhwQۥU{!p Nnkh|B72q܆agdqp9 ?C}SE/ g3yapFoI;kcc7n#=$":_[Qo+yl?'KlBbz1 wOJRlۋ@7~flGQCanD jG嗵GgI {5xRљ ˿cu:^N2ӭ@66G7@̅{Z}.C暜Ltr#|063#KAW,)ڜD˳'A!c]Rib g?Nx"IQW9=VvˉW* Q%{e'!;7)G್k9@k(a!A!zޟG(Bb~Htt`HBv&jb ҜǞ[̔ŌCotcK~}.d_noݫjB9\Lo[1q5wtX .Uvmx1Lmfg>-#^wh @?[5Gih.sUCT +Ad:UPUنיDIgXG~oyy*tNTBHۨz8Zc跺j^k|%  >U7Ea:R4;^H^u Zϙ'|gsro(Hy k7ܹh;ObT:MRWhl30̮#Q Gm% {D=)H>O,1_u0cVG0~&ñyoԃ^.{`KӮ+M"Ot@s7J,C Bcs 1LD_7[RZ~#8m؈^%'I1]lMjmQA:0^eWUQ\=5@%R]Bwd1rUp0]ž?xG)N@\Bz"W+~M;h&:囍}Z ٛ8&n>$ar&B-QC׷ʊ)}j]]}2ΰ'9ECܕ:4쵷G|K}6,BFFXMI|UBkwI_M´Gck˘Ps!|1)FXXD7Sud+s!UU Qi +EpJ; o`sTjsv (1(gvBz8Va$'kXvo\&Kg\wۙ&MxD~˦yXϣP'`$l٥,UɄ~A8/N ? ~IH&Ĵ5J9$*yL؊iDL;!ictv>l:As|\/cx(B:$ uJ$g Q#ZS*;p˫0у͜FoPyX^v|o]`Sl@LbvE H  ; $*NC&?{ [TtP~:Q9Lzw#$&뼫hY;?5W[zlC ޣY 镖,cxKhYhO/b"z~o#lB0A]g#'Pq@8,`K4oI&G֩8eZ/?$:-S\2 nU  E]&)-͂G:bڭ^_[n⽻7ޞ9<[» nonIyx8{ :?pnoMe}uJQ;9ی%ѵV[8r"݁[+f, ߱_/(G&K+h@us2B@hl!ȇ+5EXJ3&n*u@ 廭'zxgVYw! *2WrJUpLS] 50 H |%jP%V$l)2KEDb8R`1ȝs\0EvS\ -J gOؙƻEtq{p!:atbiu*zcydTQͧE-W1EtH@C DebIB@g]ߐ"GKeҿ!kZPVƦסApۧBu97>q  Jk:3GF'-Lm[t<: xkWW6T-~I!APbPoIXA+@g1chT4D%f(g).1SVW QiPBK}#܅d nb&(KBe䶖ڭ5Yv'oa- m΍hF'wN>lyQCA֨S%ՒmP5Bi'bT1WӎӲu̧1fd'.țT}IS4^W=zR}Kdz~N.mNR"]D _mfFbio9qrH"&)bU%k-lX(M&%{Qf9ʑMz 12q(qدk#HNYk73[1*R\{pNp䙞kZO!ƥ! SQ"Bw ha3Mf^дw8/mRΓbpc_3Á?_t wST~FX9Wp+R +O˞=e!MyFpf|t6R\ ʽ8 ̺ʔ?R#KM2hDǹ6c p(ZN_IKJ'ۖ[+hX8$[31 O5}?UwG &GԥA0Z:qhN"* Js|w![:#̧n[q,ӕT_v]B|q#`w>x-Xv4cG)MB"]]<&Ch s Q|LPhU}) @ ^?' 5vmbfVJ_x۴*]T4>N}3VpΚe#ϸ{;m0 r,cf!CNB"qs-QLI)/UV kɶЇ@ܨ[ ۤC'Nx?ǯ]mq0 ܫui3/B)=7{#"5E/Rdsh"H94,4y*G WѕYeh(1\@*n\F(}oLɷen_$Khe{c'7tXvُX{p~*. ̝݃^ɒ&"c|ml]f ՌO``ϑ cڧH2:qo棱-VG ~drnב%bib@%?G`SC'lfqS F .oN _.-SԶ^O'E_ҁn3)Rxc[Xwv BCjsf.z˜c*rtz3JPgWtwrTCKesݥ=Uot-|V$׹@/bF+ Sۛ@FkLumUB]CຂD]3s.Q!Lc!QOHq|289bѬFT wkbۃNe~qΠz\IAͼd쇠CGjH_GGtLl%}mωK"P⯜ܱ߶e\bN鏒&L64*lj~`Q¹+ D% ]+HSOme WV7 xqf$0.T 6)2~kՌ}?a77 *+cL׺򹘵R =q+`ڪi9'!-ؓL6Ra]G:!aa k*iW%A`ִ((:bc"J Îّ" ́9ЄvBE,w +?/Kͫ-$+u1!{\$za[ϬNزi*at-H}LOrܲ+dd㔑{@>1"RŦ$DKY,0'm/*}3E^`sa-W)BhЩq1E8(|$caz8| 5Ȑ=nj8CrƳXjP񽟟\x7PFgׯs(PhZEEáaR<*H dC%FKeZ&b~(Dl1;l13Y]Ѣj]x3o |H:o͉&|Pw8ߎ\!~rS+0VcP{VZI,O˫R~f^ R&HD\-y&P翮W\W j`4ߚHxxhFLzvY% PsMX{ J*ŸX ֖i<\*]%i%1r #I|-m zdR=({oʠ} Jl{܎C+!^Qv:ٝggsy,܁EV^[z !5Sл]YƎ h'2Z@'LOG~np毇7CNy}U9[ˢ@oMC61;sʓUqQVb-X)Z,bL*UFJ?n綦th)sWRzzcXX&Zuw$(}B 7(xzNQEZSfr@C~8 (QZoT$ "ˑsȹ @|oEO,("+Pto2oy^}K&x|Ԭd|ĕt|vWSnvW/Z_ &?32}>Ұ[Ws9\h]|nJ΁wuv[9Ap:lk"] Wv#@ +??q-&H|xG-UCmhPO t5!tYi^p֎:hUOze9u烈$슎+`(ϔ/Q#Z^C-W"rW,Odž,ԽD ?xF[%2 kT"2u\BXF~L0bO[L04.AQ^'BA7&97\`YT =Jdơpo WjDCsvBf8 X$gnHpl݆/` .!ϯA`o"'^&}q8۸ \D<8Pa d |s]忚&):\\J\;N`Tc<%0`m_IʦChC9'].jvtzؕ *xL3=xy-(-Qj+r]G0!2yh`f"U t37̆,W`y c9CFµ\L:V6u`!\ ETlHł&(rӲBklǕ 3f!MZL&؁llnm"+)ҁD׻} *pϨ…I_FVH R66a_/+un47H)ȕn> C\mcU.I$m̱-U1\nω%vmp /tYvM*O1bCa;PE ^rC+\'R""I1[^6\xlZ:l4J+VWTu!S|dXmSWvJ/yU̟1)V$QҀ4UV*͹;_RCmKC‘Kl7vT*|8A/c500O֧; s$" =,Ņ`w1K$Kϵ!U5 `+c^x~{A[g\E9vz~o 㵈R$_%o- Zlx$Lqb/շbkDN/xnZ>-.L)l:LIBMv+c*\JźbdUE CBp3W"ML=f8WU7"fm[UvRu|1Y8dMI!-!l_}'_o v/B]j$?j)ɒKԃ09~&Gl(݄59hV1Z9s5/:FШu@r:ֺ̬)Fz]P?OrX-f~ U=7dDgĻb7d@uhe3 *UP/[{  PjqfQs9e! Cn|<U\yߵHJNpD(Q:{rikiKɰ͎rK~=p kC /abvZk Hw~ù3 jGޕDzyob|"z[BCgI] u4:;rKa!?H1/wlk/!w]0H};z3q3HE%Ԑ0Ϊ<_gaVQ+pFZqA7y9Ż*sGbi91j/zSTcneGW,| Q-WX]\ q#Š-M,B& P\@ɫxr?eR,FnY2]cQt =2 ){k$cw ťYW"-0zĚN@V*o߲LtDHog#^ \)=@H01@S:xeͨ ุtDԴߒCk}g3ܓr2ȕ{KdNL>=$rз.=6#Ia{~1>ZP|6:XSKBGan{QNuAz7ZD,.|r?zV7^#^ 7dK[2c|@uN3~;uq~ZGxw_j׊NHt`A̒ڿCN{QuȎ)(cPt)QyغyQo M*P`Н;YivS,ZUT/uD~XHsslq^f 3Jݥc$B~xwa TdJH䟹PErx^+q dK ,YAr.psF熃8"luh8uYF-. ~Jش$kמeb6  U ZvF^\qe3Ly`15\z s9!cVĺ uՌSܴ}h_p$Qj'ʈS>݂@  s0} ;__rw TYt\1kX4,5S@vm=-IYjď"6ʐ3v.U*lVP@3@ d4,JsP,PYɚqz9p1р6@cRzSm`E> zZ-7d<'ʨɗ޽_y 3ףS28 !8pa2~U#ϿHj3| zFͦ (4(G@N-[ j˂Ռ/@#iY" |oy016с䃸r,qGh(+ievg 1g /VvuZ=B=&ܲnMS hŢ东{SsW>?6=iOH7Xi2I`mPVHē8xL?k,D1j$U=\-qb_oҶ63T5d4-35᧑zT1 l`ڔd(01~+v׉T9qlR%3 b;ZiQq=o&sBLHdKW8{fX|81)Q \U žDϽjJђJm|ԧHM5A$.XάX#u~*KR~xN9IAڏ VuwUAjaV)CGGdg+寉DhzS T'z&TX'e-bgūf`!ћHK7n|s {,Q[`X1yW@[PNDǔ7v82?Nݭ59C*ˋg pάLͣ~cClo1E4)|+#nTe ıV(*)y`h]+Qd\6#r&p-6lC'In3tUh}p dl7> +\ZL·6R5ܞ5ٞM umf4`Fss=푤<\ ݃wDY1LYdڟ?uK(D2fka7Vs n}R zDp]yd4cM έHE'[& 1}y ]fU=2&kG%ԳquҸp<=JzCvo(r>7)%u bn~= [uǶVU8[hp |cݔbuQ.OǓC\"]T]w)c;$iF$`+R+@zDsa\؅_7)CtZx\Lf Q .^oMXH)? @cJlDeJ>]65p{߽O8.tvdQ 7̅;rß7=MVp@wl$VIJudIeɘwzns6z85,pg /C,PĞ(G>7K[g.ns74VXE֯2NbR\0IbE}:5ka˼AR"Eː3J5s~hȖĶ$6ֶ6I؅I+nЃ !ְ=_ ` Vz`]%t :5`H@CGD) {|{Jv Bs]?y8ߎ_pQZpXahBbT4cGhC=(X`dy(ĎApgA\Z[@u*eJ"Cf J}ez]@0&?Ie(C)ú71œ;ȿЃ:õitKv}uih#Ԭhk>11- L9Ik+-Fhл`n=:|*\T [§JAC̎?M]Z<} 6W;J{.Ȕ>p;$b-ۙi{([*K<υm:ΜfWim*\z=% U]d{mRmd7#m*wZ4) ;sFN/> Zu YuҦ}+$Nt0eB;X>pj]x#OMcY>ֆ326e8q M,IQ|;D"{3Ͷ?d`ID#"F*9%׽>ܳ(AW?yRup znpBkzV[B !UlxBV{K<%abj8oRCcU1ZA=À=pn{uZMn2Ds:L[S:bdu\DtLlZ1;ӺSAH2JA0lLmpwQӹ#v,&&vx܈ASWss5,A5>^'I9H W+՚\zupH 0IsG٤V+9PB,^)iLbo٭-5U ˗(N54;|V׀+T mimW>9_S5~|Zҽo DdȜ=&@t QGWN EX(d@(ͪ(=E#E1r+`^?TD#7׾SKa;DUεL.0)8icWon˺|90+Fg}RjO8/?caJY~0:s|&_}`R n/CRb+Yju+e"zq7R3Cxitib!vPV=y2T'̼r|XeuU3-|鳟#uMss ly1:_V۝p(.$tFaN*-ڶ_VYї^T,v'$+.'tC$6Bax䈽;Pg;=  Sicj5P7dl͞(ry]:vfxH'RҵҖUΈu[,8_E :1>UID q%! 7!򷰙,񚸉{)[_ho@g 1:t:7Ra~T*C4!!E$DJxD!Asq?K+?(x\#oJNi. AnGKQ=3Zz yZ3ljCjx@hV,XC`X4FbtR>IDN\48^X;P\7|P7;Tw^Y)ƽ-m!L).;ra"Œ8#Voe%@~s!sWi=uP5n )MMe!U*@h `0X|2ʛ[V":qE[n:RNe4A0.@ hY=T=q̢'٠*ˍ*<"xpHa7.flM$12:*(9=QBgdpRa?ț2Ѻ~J A\% dMfdE!k^s*,wsI#kohZ]x.3O~>t ,Pr`]RpN ,M4X> .LV_&z[U\AJfjiEr:É-XS4_ne*Ue)' fytw&rFJ Z0 !pf1UTS6B/z K+^ FZw~ߍ|i 7"W@3F3[CXVǽwρv)y?X!පȮ<<m=YmdN6XTpw/Gy1986 Ƙۘ_y]yA. ІdMYIdv"<*MGEE}v;"۾DvnpqhgɊyݷsyghzEwp^9I;@Y)I)O(i4n`5ƬiѫQMøe+|\g{/5 Z[R Z'#FxuEqKr侐ڱ!b>r"Q^˛vE]F8T1fʽF0ekLq5BTMu󷉱HRR6 !<v%$9OPvQ?{ѶAǟ3D;iĭeNɬ/|' / wɼݘK5WGI<*N]$iO4t2[SA1` .;'륔Vs<7 B0=ak`Dn;*ˏS/BUg $bn_!r{ӀfQheNGRV>K <SBd Oԁ$fsOJq $0nW*uB<3oF95HGO_3:DU>xNݰo[%~~6%|%K29Cەuo Zbs\s]ռ͗N<6KGr뒕b4Z展$~5qjɲ+v`8DEn":(Ӵw{L3:WL&e;i?`"s&vGҟg|*4!vG#w٬yj\ps Bɺ4beΨ\dI1L-UaWw^ɼ8n'g*UfdDd%z]>װ(J]zjxr[}E)ژx/Ƴ>L(̳- QAR EcH Oa5:1kkU*(\ S%]&XFT}_:3p{QČ䐕"ύ^:: &ui=&!>A7J@܍ܯfsb;,{ĮA_kŪM\) Abtf!\aN 4r#)aœ5YwuN}CrsTy1mt}Zu0(~Fw"MBb Xs]J4^z_6nx=Yэ(, Bbyæ RqCQQkWXM[7X0ע ׃[| f|+tƓ>}O-Ykw#i I=@p1zbG}4ijxU6֕U"u;E $1͢4' 1OHUΖ7E-~3终J]Quxd2x/f!|a% KoF0yd 9 gI=5w'"ǂ &2C6C [ {L-8E^|W{N~'Ia88D"ˋp ءAO<׎(>)CҷJIfcmFm5V R3> Xej;++74'qR?ެXdȴZ;YXJ`@-sCuCe} SZSoP4AV g:O YO_Kyd?vUiC;_P(qo紛G2!Y5)4^/j Z[^RFbHzeeХ]+"ȘCiP$7~}Oij2W}LѐJgKh Ƿ^+'wnެ5.-6J;`8Ш=X\f B~\{g Vif,d/=Z J4,5NF,m+TJr eQ#I_~Ƕ̘g^ߤx.CVUyYX 6,i*oa:`ϜK#C t*&e5*-%.1"ɍ%V:[ tY' ~]aа%-5 w!j@̦?G7&tD3e;ъ+f![O6 =vRGw9ڱ\ba#$J׻m€>6 N}:yMHs4εTCxv$ K SAfHZ ?zZzMWn'y^+>6e(tiAM٤:L JRSOb}皃l1@RL^:pswgZ rʻWˮX'H?3ZѯXLF"bN BfMV/}/BY,s`hWd-*b1A(hebbB{N]E!"tsdW< q-x51PcYV`h#h6Pzu5,柪hLbY5<%t١/ix>gQh Pe3n)/}@^.IқTlWky\FtCPt(]Deg7c7q&h( r[lO gGE}DM]~Z^d U HeY}oJ0/68W2;+Sk] ր@5L>G}}BBhaE2+:_ӻܺ`gycCfJcxUŠxpel2MԮXG0Tāj9[gƉF DQɸzKVOb$kݥVs7 h?Qrd@[\:=%羽bvQ[߈ C׼+5#yn'ebeTcr^h֖Χҍa/)$y1^LsM'@fEe{EA'qZ]o{1-g͸[tAGZ*li=ȁ۷7X- ?g&;6y9eK*$讲n0 ]9';=&YDM[J՝H`2?: MGG{wWD"|LŠGۋXMP=r*pItSin& F.yOQpq]FRWמHˎ{(6$˖#ʟeM'sBU 0> c;dj[fK%Z'+GZ\Вw!=(پ;(قgd #HfcZrY*` ziYٽ:3yˏN[ 2 1󜡹ù]m2{̂S=skƲ7 -ʅF#I ["/ 8*O-#%:?Z"bk'x<NGS"c?\bkR@ <Aca ðViȢsVL*E +X`A [~uJ0#zL( ڥq]U 8yy-ਰ%iC+"?Pf*MIy UӰ| $\!r*3Vl7nJ$`H%̈́'~H3l Zceִz YtوRo{¾ Ax3GX,4Ѯl=7N,=Ŀ~ih1BɌ[C|| G:0<O܄Pj9vG+?&c6l@1ru $MJpajijOkFd;VMc!y!s;cPY"M|7@IY'gKm-!7I7ϷiږªrmsW\AO~;VW멍4`U7 "f,*whM&v~ˏyl@xh^@[N`0icUhwLV]'(heH :@@SShu 2 %ӄ-cx1_]KT!_Ɵ|Pf m ZG+Si{`GcDf։PC a[iUJӶ=lN*`K-XĎ`h-E9wh}<*|nBrv^](O|q ځɞ)ih̨ĘhwS.lPZ%?.QQʣiGP:wyhN/ofk"/ GZH$k{8=HVr ekAp5^*JZ\oTtE Ǚ]1\%`iK`ψqu:}Y=g8MV]NIx"]7aGPSI]fn(e~-^tW iI`†DFv1]:Y,8Ȉe@:¡J48-A'[%W"]m8@g&* Q2!>-t>I[]cdXuOYɯM>`ʖVAFYo*?ύ.Xq.D葻8ZW޵1&n_lŭR?(B4r:sr gJɄ ɸ < uzLs(s^N$l ˇB)O#xxqB>f^YU~[;ӡI\-V`-v=\5 2!Rt[M_YybQk,YC{@,-u?H A$yEj*z8)]ބY9I:Q>-]οj ud,x@ 0Mn'_i0eR3 pō/0EGO13t t`ҋS+jU[ I+ &Cڟ,UӸ&,@xo|0ZtѠ 9q#^b9-]9w& ar]iEu ]W`Wz@қIx42RY9Fɲ&H#zWĸdOA(O&=p gFyڦ2oS$Ɉ@!wn /cywĸaU;gX~8ţBOݱ,6&IU3nЈvޏvql|@I) N{MT>>D'AIEA00L>AcTVxx٩{YU೼R~}@~AC E{ZӠ~7qpfCWkӊ7x!w7׵ajasYt]5 ~ٓ]8 e"/_i!s)Ss$ȜԔ3̀v4;$fx077|T.Mn'iM? /i\6,_CNY<4 ELSߩB)P"3/[tgheL@Zs8Tx D%̏ӄ/neTJl܈gCJ3du(GqV^} ʼmKstΎ{ui|_;Í1`X`8 m֬;i4#OB&_. څ1h|6g 5 dCӟt/[ { 5bOJx`ߖ1-$};~LTas+StXã }Q s$g::Lu_%p梲4yaP~ ž*6}b$JT. Yb!M̻E+.rHi4\د-dV$F^ =s=ڧpZv)Ƿu`5i[w44G̊+?Q8$<3*4J` DiS&K0?f,FA7sg9XH&z*tzЂ3Z ~R?Ia\.1fJHn[Rk NrMd , ".νc_ 3}|֣/?}KH uRkuY~H{,LSvן?gWPOtM37jzWwaCޟct]/9k"\_zjAKin[d~- u su᮶JԔ:xnm} R2h1" r>+̦@YMe4ٗ0hd|Mmx+4Tոo?g7&ָI"UOds1&>nJ.J|s %8AuTuQ- -"לG2F;PvP!3X HوIuq؎ ]2D_ JGoa:7]RPg-2 RNѾxg6@dkDKyE *@2p I 5cOPU;?*׻&E='\_q x˂ҵ_5ѡzhYQaa"fw2d'5)2S0F;ؠPWC͓+Of7-]ఱ'0ڧ+ " e%eMzF*TA kE+xMh+bpM@.5˅~XT6-gX} :"$.Fds[v#J.tgb؝ǰŹ5ZZKVBO" MCg}jw2R@1'hlhwN58( ?nu>ޖ7O{^ad))}8 D%M _%-q,Ws?¾"C 5ʮ}MΥS]ΜJr"VǘT{yVb_1'$cwmb_6獷bȪ;`RX Lj| \_A{ǢǼ%ޅzsDnG^>Uۼ!6Ύ~(<^M:8a"+7IpgC(7w64@t˴N$*9@Ă w3"Gd91v"^)@YvI|$7]7 J RZ7i!fK^ l&;PC.L%j%3p?a}Dr3=]XEʎW* ?oD{tE^wgx/LnSvWxYNtRB.k+/uOLvdBuj! ٓСW #+zZ5m7ߨY7UKLKw!zg<ve%) K)ċ^Q~ORKoTi2u8O6u"p:m]?"q檨]KhrY7|âiM/K)Ha$u'#ڵ+c$yOQ/h B] cs]Y%3pO{Ր r=!قw6L F[{k\Q^c1iW8HNsP\r92PWf4"z`·3QfE-׍R:#vޓI)"1sb=@~GѭJ ; *Nn]&kҏmGƠ2U+',+Ef8oaJ2sA gkߕo,Ό;.ƴ"6faVۻiƚ]ph(&ZۻB*)Er5TiJjfSA^Lk9㾡Z@MDIȕ8U>+oÄ06Bݽ[Tk⒲=zSiY P[ Od4鶌#o'OVU %Wڬ@c6(g*mಸ<b9%ZX]|X;s5n/KrbAbk7"m,z?,>p(=:ٿIx,cլ<a*D_W$EW|e]y,58Kk#՗X=?jPP,2u:i]{RLhK%+Wӕpb3jrΥ98- }4RjN$.GASΏH~;_5KNiF! u/djC O4Nt|p:o$-D#lx أ֢US lC'B| ]`k> {-aI*9ۧ.(!y<7_T ҃N9jj&UX.m D6Th#U6}m}bǔr6/M }dAhڜ4o߬9o򧌸"$F~SPVݝt,Jyvh"헓-iUɩ(]CE 0ΙTlJTUcR+4Iۀǘ*"+ /gW^\7XÄN `QQ?,Hpk8K;5NOhOd6Sgf~" tl ]k C'"{y yFa>"D!ra"a[֧oW}v_/%$5lb}Үs\41*.r홴FMP 3g*>ߓZC*YڗfK.np$<>SR(R-_Q̠'MTRol6GX "HV%|,Ë]I[pQ($OAbn -F '5Nl-7iv1*&^R`g&v0*oh՛2  z CjDMǚ* "'Jp$ ybc-3fpQG#V-6.I^T1EtF^lB edܨy1xG`ݩ\(ض`]rf,˕i{e}[&sce"p;0Wh"fNi?t( ˱p^8x:zI|ny8Zr`zs(%);X?^Q2a 3gIVskmʡ=~ŻLi%E5QOⴳ"1X|9ù\'L%XY|%oΙ#.R6Hѭ\9Wwpl<9`L9ّT4R+ lއ@R++[Q&"X&%;}'8%T3YZgUgݷ0 Pn}nS{J\qNv9Ar~ [3GD*11>oZs1m4H4j/JWThB@|O XEr:ӠQ,y ۤI[ hѢ{!k[~g>6$Ɍ;= omU|DeH#WTGQ_$ aO5C&F%IPr-$OT[Rs87"Gn@^K}6 >]$n~U .`rdf-iHM0!_9M!yrJK `v'9xlӉ>op%qW;jikZc<֠i K4<$g{d4Y̭ТE G2:.\ (xM(Ґ)RYSʨ(cdmOB ~[,j}(:6?il6VObKHDZሐfq\&{kRxZAJffJ=)i(|rVc#kkѬ2c_t? 9R(* )6ŸC%zM4ޚ|#kk~6D'R@o`D\7) |{b*9h 'ZJ*bmQ>O %ys]yJ6\5dY$b~{0Kڿy{ FZk\cAjbS,@c?J$(?# #X覑-)FE ijvM7J S:鉾Cat%xZ/Lۤ#8TBblJ7*2pdR"~4! Gˏj1m+al]&mTu >Fd_4ytlymgb"w4IĬ+-J/$WmtMq]؅DXLe4on~ Bمq(a}qxc` 24_ο^BV:M?[,0JB w\f9N;mBHXEG$ 5f{}nC$vC*VQ+#zd0Ar3f `shNhl42{]I0f"Yǒ@[@%4=)6]:T^d\og` }Sk5Ŷ55W#0-BqX,Ce%l.4 0 p$}MwjEU.jxM<\Qw`7\}ԪxTq[`̶bJx 450h߲TIPގ m ^bqS(+\v㬔?:;sP{^9࿾%D1 jw`3"ޱR0rݾt58LnwU#>诸z`QȪ'& qW+<M==3*{+%b+3C <jq9+Lý+"aMn(4xf@ԫ8J #ƊݻCcÍM#.1 R 鍿*>3! ?9 CʮxXCcD۟eIYJ7/ 3|>F\j[; ,'0Kxl!챤V(9{t?" ,Oϙ0!ac,lbHעj]ѯ|H.v޲WGT%$x< z"fsh9S1R5ʅ7<lmmAUEiyґ p~jvۈ6R0bvFqb9aJ@X ۼs 7uI@4IPKoIt2$K۾#FUxfX[eɬ}ۣKû]OEG~ntjuHI a?Q$T@M&&jUHel /tr=3Ci3g:R!Y[{tp:zl0TSd|LkØi\37&U&.r1]-c\AkɳZpNb*V q_uf}uk Iz{>X=_?HkYۦ-f/\j ٶc@ ɹ_Y@C|qG`Ss]J Hriu,+u| lXb=Fjk.[VlecxUrġɍP! "oCR39nי羮 q)4$wѮM_?LDVKI!?$do7%F/B _b|4Ml\̚b/1Y[+9>QqyCqVeV++ )ҨPd#eVq8:ܲU> 2V9HZm6/#iz DzR^𷄬5,E_ol‘U>nĕÅ_C?55J_*#9pA+ΰP+񴳉_IwpNߘpbPgN癡wwb0|//dߎʣٰxM΀@m^9o=k?zBlXXTqgrvXϵo#͆86I2`UïO\XrVW>cM7 =ސ?$bb,{8-Te[Yct[KڭVypn9UxxHs 5ΩhGՀ굚db$pxjIm]Qa޹OBXE'na!㈢Q2of%xP:0Ly`Q<^zūHӘ9UDU UtiL#v]xe{/6G꽔[?Ql.%>>hI:%Л%!7:Ds[lv~ Ԝw @tٹd<>&nD<`)dg`[b:)<9$7ɼ{*AI_G;mJ*OmlMD%dmX*>l0icLO(C)xܖώ[yȹg$uK]ζImКvS)5r,P3 gżlxoe+umG\ 1qg,vׅbo8(:ok'9ߍ `$'%^ H;`_{ءיw!'8#7ѷieCgWa=pHʻfhcIahS5h" {,R`7]mQ.RQ>z{?\4JxS?RK<[iW:9E"X;M[#%U|lVhU̼]w.RsxFbPUI25&T, 00)WAmlGv5[C<'וi(% 4Rńf*rCu OG@#Pdn5HN2<.oʑo4U1/ } (Xe5?vox}Tf><*Z1_$Y?!H Ѽ~Sb)#[<9tc<D@RP=\.>Soڹ ״GӠjOY :8 h)yʽT9k{V={;BՍ3Q/xrچb?{QͶіFfO}0&p} X3H4ǒ!?I?H7Z8kp,敜]wzj:J+{ r NsJp[?L " lM3Ի1S^W6I)4al./R{0b+ `q1@W.vӂQWd6.rFOL`ɡ0Ǜ=c~+ȑ4O{/[@TF--\02Je۟'z_ebw%@#=ff$(%bW(WdzGJ(ţ/HfB5b0o mH܊Ɯ$<' PP 鉰H$}"s2Cիչ'>K1d^sgb/3鑝6LPR? 5KhT2t5""MTPv۔ A8V9Z sl#QN(N;~daĿ`'Ӌts`bLMQΞ`yTm}"U?lvn wvR~07nk\#8dt 7u\SǏuŕhp3nتj[sr,r r{Ft&tܒA)՝a$"6?P 4hGKwrr w7j{vvPO̵nGA/=18tEk߱dUklGDx W&&|dޤFL~";*-tV^W5@K30ǟ;d L6 loW0М ~>RTv8E)mY7s5X]~|g=IR4gAf RRzAW?\+oE;[~n{Ny6֮I`|)7)9xwk`Kfr} Z_V@=N\K/iU>UÉ( RUt;J9D &Yle*)!'=AH 诗J[=)=ż Uy[Jm-{hw~&ggK8-F907"iW5Ő ߑJGimDyv I'f &=s{~UF[,2k.T5U8+amj|׾C9-ҧq }?c]x_tV~jQ36Ce汽$0az<5bϻ*(pc_Z9OBT&dDpؼ&39cV\~᳑:a*k0u$\Q{dW+'j[GL>H0 kSfڼ٬,g`,5vgyB1ꖦbL͐`D` %V5| z} 6Ai)y8/ڇi[V |u}qG_fA"v菠}x+?@K+ jG1$JC}ѡb!>Z/( :@yvDZUe]0I2/r˾u8-F6 9cզ2{&!P7'hyGG6i&җ')7b'u7Z]>,z (ɨvgU6A w| ?c${G {b9L<K<@ЫA5tgU g?gz>BgXAoy{bNO [AʠF!\, yV!(YMaf9"`ۤCXuy#k,x\!7#ǚqԭ15xߴuY]تYR„Rz@lvI5 6] #͖S8JD|uW!GAX%d޷D/L;"fa~XvTm–zB7܊춟tj!l*$ù@48~57LES=ciq@;dA,TW;I/+soet[ݒ1eW 3q=/o%o1 |^ Ц,zSYbXYփS}@`{xlK+h+ѣ'vѠo8~3?#34-N h"[@k_9Ut)5fݬ<p"ij.GHܱ QTžnyڞq%|Q4^]T69x S[3PUɒ-U/?q<9 ?F$+񦸺pӴKSXo 4k/w[֏)BYŔ"β)>x"F/z3vMJٿK{~VA݈9|@;|2+Cq\ >nBoCT3 \]]R#%oVXnrV+>_2)ąFø_T[Lr1B/)=,G!m>ՊWgt_q9;~$ c>V3> ߻c#1, %N+.|]}p[F:DQ{BYt@LNpSb%x7IU:͇UPrsP3C!MfҦL+tl& r͹Usp? }ҒyB!byc6:gWq]HDlķ \%%4_鰦s5\A!́x6|]c蛽;]̕Ӟ~ ;k$ }xSoJy ahףZsՖ`e|!%*GO0ۊD{֑uv|:^I,wh;\uL;% 9V(st:>1mOHÂu Փā4+6d?Fu?АKSr$d甈Q,\],e6?a5p=rĨt^hBP{yZfkϒ1O7Gh7key=Z2n#\r!u;V -8]Q`҃ OCL[D9LQf͇s&}͡zuclE)ۋr%泈k ?P+%jFK2 I:o3j(m~"4W]eaGA]R#f\@x7jۜdחQP@d~ n#gICqlA:Q9qSJ&^{8b=X?~᷽EHLOfARhbv Θ;x*5Ħ|ǂX3beN,Ϛ]oeP^xDL  +{eҥ|cוo x#VF#kmDjNM]H ~#qHė=w&qZRnĭl߅p0mJrV+-:'|q(13\ VwY} V%, ӟBB~OUG^rWjb&JB_XeJA9\D8Qqf +|wRktL[} ܜ 2ǵFD5ϲv]RezK i% sKmo1W#@ed]3ý'r.VVQCv$tgP!ы 5Bsp>`^a7%45S]ApIRU|ڜbhB翠"]8$}d37q<˨x^skwy y5r4S1Ԭ 2/v6amVDF~4Z9 >@ޚʑv.Fx)Fqģ2=0  H(Eynkne6:Mh l)Ihwo5,BHFq< ͑&/ w^GZ ?f}5wVӚ$NAﰐgܒɍ5{"mc^7h@=RΤVFz 5]Rb~%k/QKP@t`P|{|R VI4hBqf' vCt Z!Hg~uql܂bwv)ϻ}r:A.!q S"1lwd~ft! 'H#`u]ߢdؔZSٟg29Mf%mBVI#%[*8"vиύqU9RmJ8p 1Jq쭋L| ?뺀?% RmA>5!őO0nZKc?! ªىU:vJܕA1 G+W~a949 ٱ MRK2zy?&N"͑#cuztCLVN"^PO@e5Y% Y,hGKɵop~{De9|j}lps 3"p:u9zAS>WM*.}ZB=WI6EGv^7yֲqA@nN",CrKCprlGP؀Klt-'Խ򪅐\ĊB.pŐ~_J@:_ϫWr{lA߳U(jlmAm||IIMG_uOZ]b]68OZL'%Ly ǂsK^+ Qq{L'/J vD3gx:wM84s:R WdAB:eS|M]6xS5Ĺ000S &=Y>a%)&O&*8+O 㟱nU \] ЦHNe($V<%ڼm%%Ɍ ovSʙ^ #^j[^4u7[ū&E;HBm;-u3P"N엔bT&yv4bDBh`nOV SFbQU#6wH礰}ȂEdͅ:nA{Y((%#PQq\ܵ|veFzx'$QK$$u;hwL捨ua_1pjVEw^pbf2] < o7NPǦqXr``ʗI^/4y0wI>e|&: 165-ϮrOLѪڵ4t!jLXI]P?=BWU`H=QW4gܨrpab=.6G qkO*&' WQNJ6bu94[Zz~n+M 3q>`?_U vo'm6I\\֣o}{ fff6my!6S,!1&_Ob0>mN5E'3EZJq XErxFsjRN_v|`בvS 7ODGkO Uz6 gT٣v Ǝ%(ڒsWf]U/8dݘ{P0Id|hrr<&€h.F}$TX潂 VSUsd+oCݾ#N*n8V*P̋h1$ MЗFz}mD{,j{qsZj qɻm' 3NQtkD&O,_hDxPN %Q:>oy+ҹӖ)ȵ S̖}HHjE_d-j$ \f-Rd[s`QN'rikT. 95#bkڽTܷ4 KԼH @A<8J$(80^X|u_jn*A vݥ dF͆5Gs͒ ^e#14iw۵g@Iii9&gE7J۫DEIzCe>u-w=Mr-JnMNjJc:RPoy,42@W8#X"s5Oˀ/i(iR)cvXXw}h>1&2ДGDX=6V')5 M?Viop!'پJ@ƕdH-d:@Mao5`o/3cWOM%T;k^@:pGc& 3d8O8.lWRp5'E@L*J2Mڻ+E\sJi&ǒ<N4 Βண(>>Mp而!"p4~|lv" SHY?slG3m[Szeh{=? 8^Y̎uTN(SEHUѓ8T6I "/G,wz!XTr ddWLA[)[{)&op^\w#v`YU4z7^ь7}]G?avSI \쥣Ҿ`r ªn̊̂W2-tPC9:Fo\Ԏ|\8aѴ-0tr`O &N̔#_>d 63rAfܰe2=\r,a8OݡFu.VԲ go8: y$ }zLԬJ;y̬~^_S'dL P Z (,yE_6N=Zꏉ X :Rz5 E 'Z! pT-Z :%Sd&A`BXEg_v0UÄô+;&O84\8o_z =Q2L kYćFL ݉#+AygeAmN&Z]ftpjyxtS7t~̘a@ft .GzoU\Gy@|6QiUү[Ļ5P6-<DP* qg c:d*5{Ta嚓S>/Bi&c]mS i-6( @fF+'Br|!lq5 D؊t듟!~r-+6cEZwux͌0.ˈ V5erVʵqⱳȀ7ho >_m`aچ߫zZC/5`,d!وů^r?\KK訞s@Yh>lOONsNg?Daʌt> ݋)ct&ɻ"BNxۘh\G L0P8W:#ޚ49D /ՇP%Ļrl=8Kh5:cL [*8Vp#`+T4r2:m4skm4{ h:mLaSi7,pP+O8sL]:N'_\ t^}-B&A?a?QQfK; J>Mͤ >i"EaQu.ȧ&ZgE<\^^"ב,BӌKآdPqZ~7T+q`W-M,e-yVY]QWyuqY^Aĵ] __SDb(IWr%Y%{I*BGyyf O`/n|\ߵ:-١8BCЅȪ^4}_$0qfG>q4zT ZG; K|!쟝f,S[P4VDdN/2a[:3u 2 2]6VT=9!af拹 ]s;wbh,UvhЯ2EX4 ‰|=v8QlHb!NV!"3gw\$5ռLޠ)TsdϠlNG cV #LFՑ`姬<-y y[`lXq.ׯy'̺Nx.;8|g#('g"8ՖCQN"iFi!U6W QIIxld D,#,vQϩU!E+g x8%wl|:FL0?CԒHTjH9 WE5^h(UJAF,VaC},ЯU5#UӪ7lҕ3*7ĪCw aڷi2kdh7[:#VX޾I֛Ɉ{[ LX~#$pj6nѸf~Ʀg~ωs*-kpAv=WL9<>H5$jP|^qU $[}dZ_a(9 RX+'> ɍ5o{e}>A4yeM$ƕZk7",EEԖãՒ,&MiAƍ\p.Ⱥa`#b9a7(XJ@Qm>נ{2T5nMr0^K<{L \n;,aGL?!aB|mO^kY!qEя1&Yux8=K^'U=caynڿed;O=McJV>Ho`='3K^-՚Y+PChN' 뀭|%^҄ 5 "?w3OKqF"KN몹ƤkCpxw|u{ѿ _v7#IM )yV䐬-7|Rj+E%}/ƻ;I[5-kW1#KwsRͫ!W`W6B7jdxt+ˌO}DGvqqN?9Snh}LXjԧs`r; PioXD*aKG03 fV/,o`OlɪGTE'imdڑ辩J\ _ׂ_?* }r4櫥cUb e>.Ӻb#xRm?QRר=)u3w  kO(`w %i46+?'yohHG7o"cl\ӺҐu~d:N[}-fgiBjOlVob=G(R$75 P Um39W%ACdg2W2U$Q}pfϷSI>Qc8OBeiM mtغIp3ve]R %,eRdqh倀ҁ(bS}29pȠ6F昍w<',TfIBK;$&`}`m#9/Kn+V#qsC;z|6u] 1L:̓hvt< !AMC@~ߍ3(TbppəR#|Dr#IǦ:IS *2lSBA]{{CY%; B1YQڍx 6l7qGV_*C-7Cf=eVu##`D81f# ,DbLƻ,r_Z:R 'l.'^~цc W*k[qƗWne` Q擀$ORlzv?#]zHDW '2zfar K31*_m*ta4M.(l䏷$}㺂ZgW&V0[0 aETtЋ*EI=ukq#י|A7U?"4W(0*k^ ?dG#Ωlg<#k+Zn+},23eAXvk~  %GDp2 a ޑꊅ`&uڟ4RK~Lۇ|V*Q_oG:]kBìj9 P_@M`d.Wڇ5g7_7 嶣1`F@WUr[6mn dA+"0g. |z* H|cþx4mH#zK@qoӬIRƯ`b+i>^'mJ!_{oU4ԉhKb4 ^bL^YkC;}XMCxȩ8!B7":4-V}gC@ƽf=̘|`#ű?4 SOPj?G{ufԭi'|A=Z%s勬y8F~3qIX1h θ3WA0P!dq!sxh!PD#62my2=l5(ζ2^g'9g$%L$n+-`riՠc)L=xgʍN*_apy RQEuQH]e//쯐!L׳ўW,Vd 9gvXNDjd!O/@8t< _O N$xXf!N=Wۊ`E{+7-TNfHtΞn^×[JY&}*vyLȻתU ŜZG\τ&|XΦxϟѮb^h|sLNC^)ʿnOCC5z׬=;ڍB~=.N{Mteb`  Y?ތ|VA/E8Ij6"NCr2#pSU_4$2.8[8rzBN#Fg_YkcݯI i4+2M6=2B,q?!8}Ui蜰@C73zȦ׿qNW9[OB 'Յ3fB"yՓ66iƦvlh4$3pstWVSv *¡/),$f F:IdO&N7@wZ%`.2Dv MpvwRcgV Ji5; A_ЪѸ)dVMc$&0lʊrY)o`Xqa)<+ዱP3ڥu#u0U  (d!-Y+-& A_翛:1FoC ؼn"^NF7bGY+I@xD8"cTC<1Rm.!x\U1T>[O'E8QyL2RfbA=w9vԛ,X?/lh*P!4E ջE&H0;Cם"@=> 64.^EgVz7d@81%g`!C}^ kߙ-@Du˄{2@]8yz?% YZ#;V=?+f\Z"[j*A6gqIV{@C7keyiTB ֨v*YgcfW"i2]T%#vr4v2s4PB[醪җ3X\7+d2ɚ|35 ]>`nE>)lIvUyB9PK cz4"b4NҤg1~ecʥֽӛ?wN%6VRF cD,dMO q}?C&>LhH=LG}Lpq ^qi"\dXQHŪVct6o;B fNK'_Azne3-[Ԭ;4 e8J"{ @L@0z))sYC!7:5S@KVٹӭ7)P _@4'~5AFC>eU u al a4~]ypӾwW+_-7 L<})\ L9KL0d"C(o{id.PsE@ p2 9m -3I1/԰#BLXq4sOk>L{ͿcdpǺh rbT\ y{ϲjEѵ*VJɥ6? 1?F P%8_z(lFdޖ^pt,аtW44 8܏ԥҢ MB7C:Cߺg): g8cxg pgy YkisFᆠT]kY}I%st%οHQ#l/ɂ䐜 hg KIAx[E,}K,y>z5W)%{ӂAՌmbֵaKXEh%H:nݧ߾ݮ=N7Z j%嘙:JZx6H*JysnhqڙZN1J-ao _AyoJlMֻ L?ָؘ/BF_$Թ;%䰂"T.$w Ɓz%QԲg xT&!K0&&Ck]ؒc)H_[ MU 1I,V 5cɎ "GE&ZyJd,=')'#rqe[H0@U`2Ս(yT[U'~l5{Sci_Mse on чPtI R_8''X1TRrӸVL.׾ɸ,١"RfKQ_cSH ]=^]"l_ ƏuntH4B$GeLP >Ͷ#EKnxMUtٍe a'BJĘR=ÉU ]#' XX c|J8y)кY(VLqޏf-1rmF*R@d/*xEr@ʗ5"#M$<Қr3~h #~7ܫn?u ī9e͑KJy[0PYa= X.*DUFPkhI$#y%[?fIKBz"~XS#nt}Nb00x@0K AY:[_w5_m/7F~ z|}:^J l~+d1(^L rn0'ke:&*gx_pʁsr|y]DC~X?-œkSӠfw*N.vpC+08وLl%:f+Rh /k([ lvDF:Vni~fx2UaɲxgB)tƁ~nҌ-!Q4x8©ԮO1f<ΊDWcr6Ʃ#^̅BA]x%A@q?耫Ż틇00`?e| tƴ'ݮ8_u޺ MtF}-cʜ-ihoD5/b~B)RhZrE֪:lU-W8Y&b?~Q'pf[?rMJOƑ*. s C:lQt)!:ڗw,[u&<۠©.C' H>;H}A@ /y =?!XEj2QhMrl= ;@G> ]m$֧ weJLhmP%C6 P*qs<ۥG\M133RVybA Ι JIb2+ndŴ=yaqKdg3ێlAc\A=Mnk9 1_ӁI_(3s^*Ws\s25yΏD 11ER\dH>VLV~!lZLB~uU+Í8i7Xl*?U繩n:yd RBʤH"{4`םd›1"A'?gCPQ[h&zsmJl4珘_B6%ýf$%I|g]Dtf3{=[1,Pu-6: G%,'^DIo^MʺήsgB?x^X/h }/Mݹ21gS)q na~]י&ȹ Q-RYQ>aa84Tr$tV7+IP_Lhly$W}6Dț` ,a;-^φ]c,PBQm:CRH%1?ГDޣNmWb 0N #R3v 9oX&iՁVI8aN'^cʅ8R9$HI][]S<_AXbX|L\vm'nRBX~TɕgPj \m_VOZ/6]R<oY`_7ZB$R6w`iy8Zơ6]9!='Vk"A4,] 0cM BKwRZGƜ_jڥxw2*O\8rUy28 Bb|a 7Z .fЫTa[wh_27ݚ@1 v>]DlVKyx!GZw!iI]m8Eh2/oܨBkB>!fJ˕(닌j[0 {Y."y4E}k5'{i4*(Pu骪ϊhGA`Pfg4U=hζ GNWdsJB25jp&-ǭyU#S>ȾQ  5}4 ~gSFUedl)TpȗzP_&BfOx́ylseUO1"@9KO֚{N:;xCsGxyF;o:=_ 'AH!cPu+Vt!SG;B8ORDЫcy) ݼ j'EdFg$t_ɓX7)M}ZO$Rw-ز=0в=\IyF *W(?I. |EH}U{* 0\g9&A1@2>[<\r_W!0|o E3LM.yB<ӶIhČ-s5vM]]BRglf%}FL{qV_ nce DϢ[ۍLm0+)zZtj$ZdT쐔^"I}@b>s 1m8d/w,H7An0ff2Uѧ.}pePDFFz=O2"a3(obEKKCP;$kdx8蠺* Wj`v}39GwgW-&d`q8veK73h*)թβ#?$#=(+f3f80߬݉ >lDQt?wb4֜JP{gdo> 8֐V(r}MXe dž6blQoMu) Eϫ<5Ñe,{6n}"G_o&U+3(5)ئ9T |kOa8 Y:V6%B9"L$lq-ͪNʎ[׆ȯʂF!Pg,w zaWc~K_w0"e߯8._{Gbd VM{CFpPJX t l#{9!a ΥC\p:.mE )3ܣ7ӊvOP!iъTwg=P[WSk^ziܗxJZnwMYځPA}.dm79D &R,Bv۵=k㊉ېPfX6]3URP *qc}OS. _m+ *f>M߉[g(+RsgC+yrE--L5mKUduϒ>N#dNsp$צȃ, I[, :vW\L|b4>VKWIiK!ٟq)5H⦝xI o=; ?4!6&Ŏ[X&:"3J\'!x'%CfWl{J)-ndi3*c9 f`U7VF2ynဆR|!7B8Q0x  *jWjj3߸ Ft=h3zaZQg{WBHe!#' hGdUm8k9"Y+?eXvoEtH.7Adi@-د}%9 ׄ y?1>b%ѼdN$ j'z7')C[XVFs}(B#GXnT\̥kL2~43W"¼3߿?|h}5 n =TSkޥjץiM^Q=&/^i zUrf RXb'peo}pxp]xzmUqPl+n=jKEijSjC! 7UJ65~'дHnG|H=@2SޥhID`PxĜ^˔0xHS1]4C.GNHztR ^eej;PuѻSri!;rNkr˩턯龾TKuo9;'B08j󷙿c&=a7/N.R>1| *l{'o'(uy'~7X^n{,g7Xuk JOJvs[nṉ8=^awuj K Yq)Wr#Eolx>jh@F6@A{j>}^N1LJXىEJ>0IT;zA 7QQ !4*XLo[T\CeLWq(<1[qIsW?h^bCHZ[NJ'f2=uAGU;#ͽ훏=RY<&锭@R>9!^C4(ʭth~Qvp@ |x1MAD⠙z;Q9ֽ-TtBsyvsI~Գvy/ +}z=֓LH9pߞ(̔]Q>9HV< 2 {6ǸwC{CmrQ#f)8ު[p}K(44ܕ]UI d(bF(0n B gXʤޗϓPl'-Ԇc6!NSE m9n۷\ x6V|gMrΆD>vr UPd穝;=.#<$ܲ"lU^g3 wwa^P77֞ꀆ@SQ KnAo,o=ZrfJ b#^$4' $;P|jrSK{Nw=Aվg"}zL7,xO0I/exRl.!4nזwL _m l5 )Jb73ӾɄ7y75Nk@5HКv¿ `IۃPu93V#"\.s)N&:;h:hqn #]֯k%W>Dkk$ͧXNxiUgw-p,^W֡)*yimBVP2t 5Tv=rn6EPґ@1<3G;0H}7j'\d qA Sad)`t sBg]#lxh(g/]rmBwCDb4|iX8p+Δ5QS':Cyߟ'^w*m&,Ct KG=Asqi1Ro*O>͗fo^ٽ8} =Zlb|#ːvi{GqFA৯*5xބ؆M|<p齱DzU*B?BeRHyX^qj@ykρ82j0{&,u#c Rbi@O;jtuXmB1*jJyj_YVOWN[-wl)>I|=fK$,meZ\7Fg@7Ya>2/%HE'ڥݲ$ݺ+[Ihce>({<MCwKa>np, 5ΩC\K2~bHn%C]qؽ?=|3 FbvEiCÎq$z-RȻ̀.`L{pق$2$ޢ̣Vz%%sȭ*Zߨ! ! TݴDF~qP (UG+qa-;z)+4w [^案\*JQ@ D Y $$'B+\UmmON3v2*v'Kg+LOd0y.tGLv*8f2qoZmlClPaV!"`*^ݮNl1 n2C*f{(>0e0I^/MK}KP/&(%'kR? j cw#423{Dؖ=NvIJwqNt*? Uh5}.gl^p"6#>Porͻ.ec-s:QIR84}xӂs.|op Yn[(& g/fV`OS(8jon1 sAY[=K2M |P\BNC:]\ 4J3d]Q]en&׹ErGp*DT\zE* +(W.ҙʛ*|bMh DAzCPz9ݟ(0A} t5,fbLS{NөnDC^W,J%|/{1Cn|Nc*x{tsx_Vp(*CsjH?W:%?MQ5 *yᤦQ|? U*'KĐ3 hGH:v( ?ؠO^?ho'H:u="԰53ЏT䱊F+:DnAUh7CG~fY@oI#gn ,JvyJb{ 79oy0[[̢3 p#Czcjظ*~Z ]Qcr-tq`hdur3G˓CBYk5d& /QC7'Kѻ!wwK@5b 3BJv!_g'67?kV%? O}@6\A1$jZ :"Lm[hgWtS`"Fnv5i(مr"o*r 2Nڮ ?8_Jš}H|]Xo,T҉um7@ #QCW9֏"p-X,_d}#\yѦM1<)U~\'2>wThkpa (QvWSȹ74܁$1&))(F4nZp_@;R=vrSeH!Ʋzg{ *$fy_18ox@cd03\z=ug TՈ֫voY^=Gk~xrNʬYtn|(p쳍-Gm,$x* %jXmmE,pV7Up'vm'{<1qUD;ةgb2##@*u0 *9Bb|,d-TgB.&^ʹ]X;XtH,2L{j㘱zT+Ze5if`+ݝnBd! ~.uAXiJK|X|e4"34;B; dMODGMh+1_`'Գ'} v)-^sGg̡0(` #P)6:MmjVyܸ}KG`R [)1P邽6X3d94ύ1X5֫GJXeJYx2Ԑ\Ĉh}ڶC$M6տ@ťPOu9m=#ULC|+cB|; h{KGYv ;AwLd2xv@]Fyr,յn`JK:ZѝEYi e­gQg,%wUK#+y@Ϋ(P+vvxXXR˝0D y b x| cX+[3uPzN b'!w^)galu\^ G4Ai6wj}W@WFP zpc[0ؼPxGJх0y9>9NX_EW=8i0/rڹCa3>K*=eF:_Eu PN,j|\&W>ۤw" fqeAp ,|l{jzC3jQ]CFm;_PMdjUy٤.,$}w!1kͶ056f~F+&a3/1[FJnW/׽qCgSo"JN`h E/'Cu-+sgBEV`lx>cl~K<04݀Y? {Έ;@o8 =IWT|]ntՙIш]G㻨I$-o ΦnWh$ŏM:}^ʅy2HT ?0?|j8mW±-Q ւ , me,φ)ً5\+OcM1&Rƪa%B_uQ1qmKƔ] >K9.]9Qmΰ#jLMmgN*H*on*!VR#H˿HS wcU!K'~p#Um*%:Y"C3 )~Nz`^#J (ƍZo(oU{zs[R\ƷkBMj3j.5#}7.r3ho >O5aAշpq-|$~m0 ȶL7cP뽪&6t CVT[mSXeڥ82&<Ʉdu ~{nDPϐY;o{y/"[e@gDt4տj&j`oS)Z:Y Ey mXeY,-& p#d*IP06+`szC 8Ga0m2M~բU^s"nɣZ &.\! {LK•nHuFO|[:ҹ[kX[-ZWix:͟1 釵f]*YuB!ի\qo- ۻ;4oc]Xce~:_'?h~ib8?=6d0DxiAzWrHB0M5xcS1ߐj3R(X,8Ij{|"n'24bt$~g\(Mq"L4/C-Yy"v/ )HD#OAyX'2Jϗ:Xa,,5#{9vTK4WV?ZT#[W"] _W~[/ZH?4.f2 EeS2 d'IZom7p}6L̎%){r zk)PO_!Gc~?Dj:=)*+;0* \,dW|cN/;եs]pX8*(e6bM=k1R(| Vy)wGgEbfs6ٻUYkUn Tnd)c;Zb=X .!4W/Uc q[E1hZ_M*1*s@e=e1묒WG;)sՇVU.6/|آt*H9\?%ԩI)[_ v69s_XI>yŢ!xԏO>1(H={dT Q\J^bܲX BNwu05pZx\Nlɘ6QHó\ R| A.Vn xɇ+p+))8n^E)~!AɐצuMtji"nhӌ8DnV'&PLc ,͆4I>}[ 6зkh5 RZ'öaӦ)[@B-5^4,3OΦ[q uV˶Ye֖WG׳;쨜Ș U::}!:(ʠ:{~.0L 3`@IslxzXtzyNK8us(gKkj_oYmhpJv2jUgʜb(ży^gDZ 9dM6ʬbV;?B@Y+ XB5ycXre)b_f# ڡ0PCV}Q9ӈFeTиr&'W`s)nW+ڋX,\+(_$DTքo?Da [e{{%p˅_%\A,2p@-g;_\-Źn!]~5LOG#,+* NּS5G_p"0 Ec279yIguj∱fS&OȢOjC<CېWDUkfso &z[_<6Izcw3{-E*pNh 1_D4C5 J Ҝ^,GĞ^a`&Ɵ9]ݚ*(%r0lgb-=ƶ_Ȭήr 7t)ϑ+tO75D(`BPAh:8tVF&%/C>Hgw2TJVH-`EAHqFOJ,Od5]yS0 J X@ye[^]4Zzb:8Ohީl,L g!ܲ3䄾 KrDfܧiqR4& >V~In&dyHSVc^˔ιx`1nCH-P$U o&Ҟc:s M"uie_zS^ e2U6DU/FUGDMX!f16qrhMj+Mhx"5}.r:!MA@Nj5BRFΐl3}?G󔀯]E]̭ݷ1˟plգ2i";>\5ߜ[^C}AKZ,Htsw [Q9r.cfy*0e͌Sh9Cx]f򢐮hlun$+}] P]ዘHS3Ŋ[]@m.ER8{S1V%r!TK+Ms=8Rt3wE1L"5Y^"922+e@R1 F+NٙaMrbjh[|Wv4-9}h}tsQsguJw=JcD-rcᘓviEu:d]jqX~vrgigN2 1z4S<^|8i|m>6pxo,K?J?- 1[.VUlSu2&ޮʚ~V?sށpfy0ky*ߺ&p9Pjz^a)GGz,:^nt\7 tE#*}"wBU ^B $dD7+q3W5)]HI76+6splAe)MPhK}9~0jƴ 8oOJeTN-pʉX!~ZC~ǿ?6;Oh^yn ̙me) uAէ!=8\YBԶ8aa{*w| "Oi 8u0R۵"qǹ,iцmRuikSaۂRȤ2 c睕/|4 5 fV~d~Y:@,x H U^Cpa.jjVh0 yS92:-]Aʤ JǝCNm@QB.,10T&@mߎ%rjm>L 0tWɏ|*J3f!pP 5LƔ#$vJ嶦#KRdQD'$TG܃v36B`Ie#%,%oyſ3/pKlٺr۷S%:2R`놌g={g̟(j0J=$&Q$rC'P]5 ufo48C;.#}*Bz;uMw;Rq@\T܀ büMLH2l`=-!C1lݱv@RxO%܏Yei;߆pӅn=)1cRUd|Dq5  xئ31L.4s(jØZM~m-Z-pKL0`:$߷Ҵm7ZUny6;FHO8 #mdt:g \5RY#d8c}>0WfɱefخLin[rkIx1DZ-ա4}OLA7mb[٪b:o9EItoh짦ɆK5v1ʭH\U4Ξǎ:Jc W-(hnD-ޜetaݗ9nttpOl񘁳h& @nr\ؕC2Ev ؀kXl|v ]WUtGZ/4?\Kr;^nDz~2~ڡX-޹vw.;G_?3čS7/n8;(Ȗu>rSbϟ̇[~_9{ޮ[A&B-@ 2bE,cg1u$+ D+GP5q{ 鍘EWKX~&YK\ZͧKE7-U,b:BIbbI'6Zj܏ԩa=(J"v,?@ǠZ{JZSۊmyq`r^y_<%!r610FPTm3N {uB1= k@M5{9hIrb !VF-tGLAaEᎰUplI\DM=6 Q5lv07lb6B܇x_,y@oM0/{Ze4,bbҸ㾋fu>eN|:z=2^T@[\ɒOХ25ÞhQ1lr5=Id|k>J`ɒfw\( θE~2ץ9[JiR9z:`aB9]+M o%yaH6(x?:8E؄33 ")䰌8Sx! h8ۓ䋁ż ͻrdZoRgom9m#_Vۇ7zT3<| '||(Au钕eNj{si:SKifzuv>652BVbiZ#&;lQ1 X!"Պ=jdt/Tho+C09 llZxCU ^K []"GmR3w%%CFׯa%wV9 ~>&3@ڏExklsO5`; qjR\Qk˜g`RxKdd EOv܄0׃1E5$[]PDDO,ԪK w)q%5;K}ή:с!m1O&vZҞp$\^;FEN*uזb .ݶ\xڒ ̶b!Qz$A;rnfrUIXOj`hiuռSnO&ߗР [Ʋ <+ cƛQKl_km6(^MF”?5UnL[ OɼPjWak#BG7MG?K.i]4c }!a}.z39P}읈D*q)7`͓oq3E MeCV#ߕ@(8uMF pƥ5׳u1o@N$&dMyx]uId$+ =б )˶/H W{|nO3('Xj{Eɝ#HC`¸:κfbIݔ=;Qېtΰbzc&u)`@_J\57۲Sw:g4Y fۼu5>V{St>zI+2cKmS#: @jOl 3Qb@<Ţ_{U%*݆.zRX%iz#5x5 /7*lǛ 1d'):K 'L4~?_Q@`: *bO,4*<ӪDAx.#JhkUɥ?KТWKI Nwy(yW|m11nmZ;lJj[B80} qx}B}8b(ݕ~b 𢡄R73,6Eyaku8~4pQD7!y*EѭKA`dZZVH X@6W",K̈́9O ]"7=`~~Vᘥ}ڔ"P[j\|xm녈q)q&wt!G-ҫ^Ѝ:d`!m1 e*JDiFf3=hVf3R">L.gOC}cICĢ' olô1 |5u+F@m8 U |YDw7D/J~*_A+੼ 7>Z3 6q}'T)H%:JfjA%;tunl+A$TAd 8@{j0c׵ߛt532jӬJAu:/iۼ8Z~ LB7 f Ct .i:E|RP VVDװ@ SaZY#9&*ޤ/,M_8Jfγo40k{b V[5'Lݕ9҇vӛ&Nq;TH@Q0%b:t ?Dv  !9"Ab뜥BA: 30E5@WNtƠ=|>k`T`)l%I^JJwN7\#(/@pOxiW//Ih!E;$@0\xşaY1A(ccYu&h1(מ઒^/kbv&½cOmei<Iz6N[+ԣN <`aιᮍȥo~@=5tb7Q,S/(gK @Pm }cKwGU_:{T0D~]0Oj*-^N?ui0XfYan\8ǡp<3tɰH{?ueZDqxe T5mP}ZBMR ]5/mxsד=h8ZCEq?q,$s2^s;`Keyw|/ ,]E[$w(1`̴d"؛3/n= j0V^SJ}no&FfA ɣz-`·,YRm  )Or.YڈӔ/ {A\F JKy7n$hxn7gZ0Ѹ;j=G?]ɸ17L)— 3}4P$&n,kyу蛳+-?2~(vST ,>z̝!R 3E/rtn"{Λ 4)he E{SwRndj-uԒXXQKz|v+GCoH1>v"XwNt зQ-zxЬE+T?uR!K~$1F6ഛ!O7Pn$ '{ W,ܺ*C[>-?.gFc5&FWLW &GAvCgBʸ'<'Vw &3 F z;`s Ee'O_! ?_@^Ww<⛢bTɆ):N^TCBe|_(V8*ݍ5@JơWЛt$^?{vⴀ>6v湜g`S=k -iU kدɲ}8wo~ JUs|`"W vO朜\SvQ78SeyyXQi4l,p)=JC'yM j>*Ar]%H|rlz D#ubac; pǭ |eJr]Ne/g&ʽb/ςpˍ1{?'yʷIp |?\>{ةn DΚ,9q$7n", X {T",@ћegOh={9/\hHKl;BV+0܍Evox>Q< _+2l^i^ں,گãEx|!([A@ l{v3c^$R V}Y}Zb/tb eCC o J)3Bȷҥ}ȠT>K% ϊLM:仒Qv c_>Scbs;Zƚotf=/(x JnW HdaA#BsT|q_j cSru h[-XA}n4w ]W-7{Fw>`*`='-+"4k!0Z!uM*Sx GZe~)o;7;J;Uus6Kd/wma2 +w>=pv˨3k>t0\^/:} ̒hT٤Xl>ާviL3~K+a7VsI\t@^{HP9W`k $W(o"x?N;H r>42-4 eҔe^A?|@͔~*1ea~礌|ݪ=ӴB| hN%Ib7B K(HT )Y"? 9L(ʺ oD[pF5trbIi;2%4QA#ïOO }w%5Dlf- jGBK's-uOgR&`a "=+tolJ~E@u3^&3zz+?_2QhB"f:`8(fg]uV#.lP˫X9jC4o@B {emBnF&Siڼ\7GBfjй8 =nE+nܾy,OǗEJ>9!|&.5UN[.&R Ȱh.n^i%m-Дxc: 侤@3ٚVEuҠiDt fv EZg5!+)C8fmH"%Qh5pew0l7Ew-?l P% &qٮtpo λZٔUiY*ApT)z OdkDz]&.FwcrJ-X,&WBZX`̎7H&ro^-Տ2srw{f7uڐU(ok²+gY^?HA>{ UԀ#,{)Nϳ- Y'JQT舼8%hYF$n(x?a$-9R5jLM4= |FFlTo6<WU[)yd(r M'K_' b*Mf9i oU Hl aZz1mOOQHiZk9Q6h4V+$+ %D;mNY+-1.v~2S3H-p"=qX?Mף6QA3R1wV9lrwLİ;3NT,=e>RM}z}[rb~` )2YqEfOw$ˮVܨ`AO\Ga(o;ve1ma BH➤[gV< vJ9 )xFյ4Ȑ2I/*n]e%IHwQo-6NSuJ=tz#P3@QܫҍQ([V =L4MTh 4.11ba}9y^[TcKs(0AD16J>d#ȁKcf2Sc*.r^v"rJ|sto6ނaZ$.eK_]IU1\2P]Qβ 뮬LފG`JUKO&9j7@FN+5|0K*Irdxucx#`r|v5Xf᧦?:@ǀd͋W'q3WVgJ S≣0"P@J.t+m,W/T5H>=}҉MYOX:w!BkЌ%H*gv6>nHECA$Qœu1ѶQ1kR ̷ ߲2CJT5`yb]g9)ϘI=3[ N0: /0cy1$Ϲe)ivő²ChĎȱUWIfͱŬ?_^3Z9qK,\ȆP 3nEXݡ. )FD.87Q&r^]bOz=}GQ"U|DC~!M0cDPEĵ hgxi:<} U((@~P4rjl2}FH؀V`N}s'ȹUJ wG /r2V+cM5OD2 +z<о"e4R*o͵N^\7 !gϦ/E(($04jɶ2, 5 /]fnR g3q M;}sܩк2KiD8Ax~·z!@|bZSuZ[!b&5`l4S=fg;P/Mt$iVEɵVYR,2 Pcbޥx$/h4ž6!mNu*k G 7U[$\(v +b㓢U,E;  뽊DS5<9nnKfwEaG~Q3][W NȩeBTfbHMF:5ƲNb'@lcHHio<}x*Z2XqTQEw  ⇒N؎I_w@6)y6r ys {Ԝ4 3K߯8L<^R+.^doKމzh )kC{7Qt5Yj+%O a:cH^L>Я{@ߪO;RԦ tۑ@@+*ʇSZ{ˊ11`ܛMKjTsacO'KoC?1؅M|.gLvYΨl˨]&Ԋg5ظ?DȬn&}DAJPgz `~ʐ[nIQxmm8nL߂Mf@¼*Cx4fڟ~pٶZAf'b0&(fH{sP~b ,T:ogUoQDاd!| 42*9VHlXq~I&)A%(\1O[%a`C>y~/rLf(WlXc#q2C"I)q;LәW*䐼_E|J{L`]e60t7!0+PDEJI>{1ib q,tqIkDߤI%2M* aVʤqS lIG;2p50%W` "T@ .iQ/q [>N#{ VSqcHhԗtnq0~tO>6*q}](hMf_3s % Kk:(JUnE^N+[)w'pl kU `:C-ӡjRoXJa3ۺ)^gqoRyh@-.DlrNhc"%S%)`UNPT3 P.Hg6CFhqmlOUDa/-O<)PyN ƕ%"f2E2ޥ5hDȀ}C9I^;ZMjbl &Wk5AT; Pky \ACqnVl&H޴tuկ(,C~F~$n Ma\ېt#w\`=|*ŦgM8٭?ӿL:xFJ߁v6~4WXM9pFw7C͔RwQHF`msmspDo5-Uf?,܏s>Bu Bd-^|3[3-(Ͳ:{?ݖgϗ4S;CU5#ķHc?ڃ8Y3QWZq#BPP"KYuVM2Go)lEnV(˞?H]']--[ ʆGV Q~ط{23uPA"* ]dWrk@JhxbaS2A'k١Ԑ @=@ëL dZ"etq#rm~6a r= -9#-O2+ <@v!b$fNI -M]RٰBouϏ~p1 )Dݷ::`7]0+14˒} Ϸqȟ= :cƜ6 8BRLx8dR5L&"P\PyɓDOZ^si9wk 8;f&X=yyPo-5Нmټ٩ Kn("G7m*9VH_pL_Q5P=>(53scFN6{uLD;<0w?yhq >@gL(x6=KrS+ P,kL6 =d;Fm8ah[73vpbO=66J[]ݣ f쎿({νߙ3&~Ͷ}> 3On GtO0a`a*Oi` 6㽵7Y=aTiUiXM1 K֏ɔoq,{;| &7,b"97YNneT-=P}E{s+ꥏFnZIf_?iQIp)qmtTRU%CD}BdnnۗĄr[j[]kȨZǐ"rkeDÜ ڏ:bA !!6_P֥f?$Պqi2;{g5rir FLg?bv,Җ'v?Ϛ4Uh c*U@[>'+=lU? jYr|W ;^~OC7LޑәZp.`D^?_KǬtdՠRyO8aO2Urv&gKg[*=mh*,YAN4,g恤`OSċFK֊apTkXqs:6=d9/G{t㽃&Pm=V)_c.PBg!wjMbG3NSD3aYTĻ9qF>]T5w)4 WdKo(#Eoemtխ軫/Ej0YX|!ƫ<:cHv#%# yv> pYe{B?כaDVlGcO$P+N$i ͍% >1[G;J#8UH@dT;F sCЬu}8UtIZ4eoN,<5b٣%E웥grP΁*B_x➭<(Z3td uy/ɥ91>z蚷N#+OixHαRO)fF0!3-N&5{C3kӽxrJ@Z)r0'S0o|떸*~AjU&AqOr|lio Iv^~zP~Ũ7xsK$`ZU.OB!L > cA]]dA|d͐ݴK\^"jl 0>Ҥjjw|Yͺpn ENx{i䕥<[tm̌fX թ=áV> I(@EbeLT 'vt M|n|hO9hW&};e:fߟִN>$֕:1ܰSIJdqZㄟؑ^ D*yUe$Rr*X\@(t!^dA̤jɀ`DJ{0]#>mmDh,qGM ꆤ`p۩VFk jzvc(!GulIOz~u[m > ),W0Urn)&4ނCl;(-LNnΒ*]+ZrYn,?uaiuvD/2pa D=:d$݋6]1D0;L"NF̤ ;K(V,],VE=h 漙$/bM`wZ lL/̬zǷwQ[blxlQgr2JB& %UN33*SY}uDXNkE.}Ԍ V*}qj0j?; *OWwzm# !Y,tgsD-¡<))Ћ81w[F@k@pKl 5>-ٰi mH GY*έ&f Rd'qb+=X~P>Ewώ'6L=喔,ȘؘG@Z(XȩðnQsEH4H }:IU&`D[~q)SXUJ@6O!Ttpao :cVkTM)%}xlo(f hOIq2M'[ E!vB1B }Ona` r GXٺͶJ;p|"! ī;T| )R0QBb~M#@Dk4|Qf{;V04o(֥xj#dC%0mŠ<\FXr(cL u)AzT3d9CZ\+R AGDFh 9G"V4Πu N:+b oʎETCJq |'5Q{ /Yi(^)UDt1qg-DK*rvӱ!Yf7o D~h'Re|ڷo!!s泠&y!=5T3Sl8Ͱq\(!,VJ(yZxHq+68d6{ArX4@R"J̛^ "zǒw03)c< !״3G5i9ٷ}̺5E6vllGKQ~,,.OڞLћSۈTid ^?;#o}Ua CKɛ p!fgvYiP1k҇l"<<mi.,7ZšȺrSbw; E1T6 :%&IKIMcOAf>,VɎ? 6'EK דB* 6썁ȧy8 a皝:Ìck#ɧ ?EA^ySQ۶}=Pqp{70AZxSE9pj'w$|@t>`YylO%,< ×kD~7|\%ku>^g<4(Ѫ︊ͤY.pO4Rr(SmfБmo_x9Y'U&<.SuIË20bkܠBui( ^mtX>dbDZn5oC +hO9V1.yL)V muVS-@ӟ)-x=Я8\2ٹv;zB' \PbR8u O4 S.x}]y l3#RXTQ; IJ}CG)Zt@W fBGgn9a{sN2nxZj"W402tyɄ8\ UpCKȅNeqūذ͢>;BN[(ٍEa718_JyiRC?&\(:E]hW DL8yJKQɖ# -!sK?|)mӨ*7g$dtrB]&d ,6YcO騗̽-(7A4 QR%[J1mΌ6K KXrrE"Mm6 `=!*r/:J!HJGߕSjj̓n8 |W vv:!G(I}%U\0'υ]ZwvVu!gI3jAǚUa!CGZST]%kndR{/=pu94σ\]-AHEŻt";I,퍈>S%j9`8,S6yÆH q:TM Y"7*X:%8d1T{15:T'Acsŏ51!Ow/ヲ9Q9/X.䲏CiUfb] V򌅢L2d+4}e/ ΂)U7F _ b xKbMZLMqH6߄'6P0/M`y'j} P*+Yф<eKϤX=Q)0ӝu@~ɓg᜿ 5&!ie'I"i4Qx1Z6YBZ' cVՉC/Qռ-}嵳#h*o@ mWFgjZM>!E~C"</tdK͝cpBRPq3t?W[^݈R`[cIyI-:_(5UPx'&U]yn??9L=9 ՕWeҶ\!7BճӊE 2Fx.ds)1L0SK4¬NJ1QL $kq8a N`xkjգ:tT_$$*TI 6a,8eNWy! X#.朂^eqk( R)5_Pղ5`lC95l  PU)X]RCG\ET/6N;gY Hq糯mP5jGNyWo6| ]ǒwNvF`= bo=v-7rww=&%옶v6iqڼ{hAI="&VF0~ M?!q1* dWxK)62j}L<]@1A9=`P3N0eAƫ?s_ bU~Ju葉r% !VBix}3RLKC #{HS 1 IL/odG\ O /K [W0Yz۱v|3>)77B}IMޯYt%#;~Zqxzd>!x}TbDqgcXgp#`VD^Dp1˅)DAtAy%jպ?0|T-VnlE@WPь [bi)`§EuFH IcH QZzjUd7'=$M7Um9_t,?Zs73֒mvdLTu렉Z.DE7Kӵ@{3w`=vYqU/}P+[;WgZqduU$U57R_.K22KW+! Z˜8{jQ%@P[L.) (GA3phz)\e$cg_ im㩇v] >*o :E Fjl:]G2p? MBDkWЮDSn_~lѴ1;(?:3Yd?`HFU,~՘*a4A96d <YfThvԵ_z~eV hOv¿bs*rbk Y6a~gpٸ&t= 8ȤYfR'v W_T.t=hkdW[h46Rς]o(W#; ths3>Eq_G1 F_%# yYT7,Q$V,;E~,aR[qG&yp.8 ']<CˑW>ϷEm3Coaa׶3EVY?K-QRS7lS[Ӳ'Z-RJ/U ܙ9aLP GB48-^H\&0:@Ɋ2>XCqg0;>yԦxk zkR&#-o9ɠA?ˍRsO\=x%SX-]Ix$,m%`m9Ix؍YA6bk) Aqh^VXz4Q~88X@YȑuF-谚Zж(ezP'2U};∝um9. ؉$56IU_[Ҍƪ~o8N\ܮ+3y/{fFu Zn EE#t2:n LU~6Bm ͪY}^_gg_G0<ٴx{|1gwbu4c@I. ldQ23ײ_U+[Lp1P}F (j&oog$t@BZ1lfkϩ[x%RΝ6zn|lScJbIB zz)NElcF:sV}0<_@/.a qn@>XG)GôeHrуN,]3;Hu?ޢvӾ.ˀysa;gQYb{3sktFKjNs؁Ҹ0a[\Nn 9Qx~ (hH :%c[A!o5ׁQN$w#5dC{+)F?>0-i:?~x.$/˛">) ̬soZOb _wC=?n$HNyy `T 8nX>ˠ!R0Zs6IͮQQioV0MT_L0^S䂚g`E, @맠":-b~^ ͹:EA|juog1^J+KAs7P0Ck>Z<=w6#h8\d-.Y%3nN0';hհyo0@$#;m!ڸ [O;6hS)S'GydQ%dʌwξiKCo>~, $4d |(Oq/S#0򼛻7oeq ERm5Nb4Iׅ%™u0 3Zv\ȩωsù-|{0|Ǹm֛+^Fm1I*Y;K's)>ZLB{,# {l;r]obHO,ߖs>9p> <m ŵP.J7XjE<'xPko~2? cP' #ƱnJ vF|RX2+Or5r>ۇˉE%F{X|OW57pdmrBT*1~{mpޔS]ծhFKpo9Kg{ajl(6VnZ7Ӳu6osQOҊQ\_ kIrX#-!4S hNXkLjӓr&nj%:w'OyO" ^]N~a \>HZ!)gޅ9/Sv bE*o_&]\lz؏sۅ]rE$P/reO z>;b'nŪ 8 #yʸo1]H؉, OHQ MFC҃;X;Vx'EQY MaI){&'~ħ$ADDt 4}_:7yXh%0/ɒ' _%_-6;0ް%M6iµ {CWxi =*As)A{Έe0DԽ%0"ڗV6QFe&:?J/8]dv5Y]%H~E>*oyC~G"XFNn͘"錰τ{Vbs٦ك RYpT}zC`{>^TݦA|tY1 {նU%T;8dy9崰E㌻WEwǗئV8)DтPdE7#ܫe?(*]-'^[꾨:" }m(pW;gl^"f .B蔰bq(ܿ oWZ+ lC>uq 2UMW$Jf3$Ph*hvAWWjgqaHNh.\t˺Dmq TՅYiͥJ(ИG\Nl?Hh{ ^R\c U">Z<2sDzRf+}Z3ȿל+{9*xgߔ-)ɕ^pQ]8C$"7Ll6P+0ǡ}铬dWHgGrUkڛelK$/j/!΀ʼ0q eQ̹6#:izbB-V%}~Iò̶C{fntSBׅ 9Z<} P[ Obsmc|J~ i>vM$Z_?$[wD8,j7U|;ƠR;%_T }! )x xk֏:UWUH>lxRQ@6yq4qC7o$ ?zkT{e-ٔXu}x9,(4"/'}b_mJ|G n)U+6 2رI;J(}ELB%(#3dT{^v),h NڻG٧[/l6zyaGqUr?h1.(]~6MW嵱/C|T)%P|~=Ÿ^Ev]$u> *:pb0t%({eBLh9 Jڊy.Qϼ|lE5Q#B̈@}.sT6,>!4fm1%jGΜ;K,u )?e.Ƅ~Ȝ@&Ha1m7J2}Y;x %FL\, ~ѳ'a5@)CsձlLfKfN$bZswូ@Ȯ˜گDc|_ b2s.CQgoSLZ#[ pcYkr>:Y@pP>+ė!؊r>~+jS.~8,Oar {^(ܺ Oq vџu YU+PoE GmuwǴ{ğv#ϯu.)úH.wr!1Mw@]9nO\}n?흏%q7'.g$W UpWq 7;P< RgugZ섡ѯqƷڄ)w -9/|;-ޓIN2MX뢖 %,kpe  ٳP!EY/SʜUIIAZe:;\=]yBe6yDfL&E c)4<*9#MES& B+GyC7 Cc{=;Wk2ڷ?]2-n8:')CcB!&fmj@<gkc*ޑ970yLۄX۸Z2E$\Ichyq1 ܳJn*A"3ܰWʹq+5h[`%ſT3s-dv yFMZ- }zτOȞҲPbR8JdbW_d),s=pT{ƌ1,o^/IW@SR@W8[pHOk#zGD2.={>n3Ztf]W;NQ,|wG1K z=+I4鞡S7!cto4x,QK {zu#kr\)EhW]WК}#)f!wYU)q٢h<]"?GF ! T,}|(I]+}衄[}&gX)>6!I\Z,qz6 ,e6L|-ct]}F+="D` bIN6VkT*&<,ӒE=Y^EHl$! SV|~~;ZG/@'nqT;"|6*DX ":X jD9IƸ:w^@TLNDU,pHhDŽLYC4p >њZh ȩBZAWuZ|fkP;_>gyZDžj$ hޤI 1>G0f}/%Q7>J9¾^:] (X1UxLH%\-g6Lʏ_r)Dfoen܊kkiҟs{Y?p4W1T(0 V&Vh8Pswzj٢ٳ. {@R9Z:8U?qud&ؓe0ry"RҖn>Zs[}PPrD8ĉxRb8>$nd6Yuk6ِy[㷮vX~qPgS{pHso܁OyHOp'2?A=N~ea+Xoc]?}L*7$AmzOC&ǨWP%k&pVA@;M]C DzM)=OBbgscXExYp?{0.c*?Iv yl $ng<78ݓ)}"i%5ynhHs!+4]i.8j,yjM1[;&d( +'5_Bf_NV]67 WJ}%^`›y;]]{s9ؐ͞Օm*gX88Q) DifǦEH<}xOV8iVH-ll&D ^׊ld%EnOO=ՋГ彧:norLr7Rgvc d DEnH)# X;_(o ӗg(=<ܟAܚXz52Ȉu&CM5IN+?#o@Gu-8V<3I/{j~9zUИV~BH? y.:Lvh~f} &S8STh"LyU xtuJۊc-%2X?Xj}5=w'乘4cp}Շ81$.e'фr$3jbʀw|X2d 9r0 il@ fWIxtcaAրT|/MavXH0f"3F8$aȽ?h}o ׃bPR$};jt>l2tWw 7^~62yk.ړ>ÿM+dSGN$~>[NŢdaJRe58ъhrKY`ة2 Bn7f /u>! D;_HU.ފ%#IpkRsi'WDf[h#U1-2ŴQ"p?,1ZjrB>{CZCT۝*3,ԟB{;uQx*~һlAOoFΌ5+@z!{N)/dtFxWs NcQ@ɦa1"nFPg{mHK޿&5qLU5敷rv簵uS*DҞ%.7s4~V-CSɞmx^"Hs]?tRp *.$=&{@m>šqi/&K8A7n`z릆[0F[h>h/kS+QmX{2i(yiy;ץB}igf^KsCNC0t#1$$I CͱT5uoYPYe&cZrC3y2K⪠Bq{Ɖ )OI6rFz}Bc7_֛y!x45vײ؛'/cI7jwǟj%A#",Œx!R6B>^"q ;kgR3=պK} &i<2sۇU@e%%^ &-~`[Wd4@T;A7,왝:p8xթ/~C~;CKPd1 HpZ}Y3")>4T;b U6̀ t/{Hcn%` c.,08N鷺& $8Jz0a_^]d_JE 7&X!'/? uf.;*8E W8͔̆1RQjP_9z-դ( hMluD8 y]sE -͊!G}_ץW18Sճ.Om͆}3T-auXhGO}GV|_ES2m]qKr^Hc5$E}(7ufp3S5s$88=w'm`;ɗQn?Wٕ!!Un;>vusF@6![AeԎYN6gH1]1g'=!&[1cDҗ%O^`Ė3YGexd[SUI&U[b J/tI[MU?H pͿ2=="G+*`0O|aNN:9!s2N>ۃ)"H3N}v>){EΫt}_ǽ9Ds, }|~D`OkX %;{/K kaζK7w,Lf9Sruÿ^l]oaV^00>KQTX˅rK"qw O#: _iL4VE]c샗?4э%`wS""PSq4G`;BQ6hcqCp_Lj4J]bJ-EdYQ\8h{~u uM,6 C8r  tT~/Z |.nz嗎ezjw}QoȿGpO(mz:C2kby>BjsAYI '=467IL~ *Pp8RbiBRQCo6ƣ|#S}#L{h楐OiM)jp$ako}ɵ !zq7Gsv͞ oR%1lTZ>:!{:ڬ%(`y/9Xg.#-y1hR̿VZWaf7ON2$i0j ~vn Vy`# 7Vr7zͤ\ TD *(ح^32_4Z쾴A?2,3:'w鰛p@ϡA[/YfСwQn FәP>ԓ?xՁgn'AfFS3 y٦Bcg)U{@McZZbϼ琭k1Ӝ;QP/iSm7y5eJ(f#LE>X:u#^'}SVړj|>հShaBR C{~KeѦ?Eh) ZBOnEeV%Pte]Xr#w(x+ }'܁β}Gg0Y`9C+`˰֧cG;nBXU$7*6:+I kfbcۭk'g vaJ%_ؼit /M{T,.ΒȿW'B+,<'T$'pM usZ.2c9{7$prL4*A+ʉfngXx6|WvEȆS6純Ms 7,8 ՘/;pg$ZU cg8+.s"tT˙AԯIl#8Md8K`Re\Vsi@A`O=MP'}22 j4|K)MZ|4=-褧.zKíi;SʻE}۩뚅[OywQTP$ mIuSZ0{W}*9}Xn.Hx#6tKFJQ%3QIZ|A4ex+c'sz#!NLrI;hu \Fm+P>W-UYIl&F{,mQnm{@+5lO4']lVw"v|2.*G zҺ/%|{0MaȖfXw]({4b[9wO!,&y (-KPIs02P~vd芓 \GiOe:xbCdH #%Z +L}̷dS~ݱ*NΗ[th3d'3tsGXU|)s%N❶qI!Ҭwx؋øzqiĒL;Ǎ4o 2_kNUp2/EzpYޝB&'2[Ma0I (a׻^IOSjM)%7Yv{w^3Ъ* 4=K:MN44 ʒzejx@ L4}O]i3z:32S[$׹ Nt)^_ MhY"1N.l wZ !-]<ͫ;1OpQ%avF5Mf+;_᠒դ&~h SLcR$R%:8m Yd86d") )kOQ[` IJ`Cd_Zi}*?MO~XALؑOj u!/#QRE;mϜe9b܌;0_Y%?f<>S_ +.y!!-*&-'%GU迻.rf/B^c=ffĄqX,ɊGh˖1W3) gqKE ռ,n鿠\uM)L.]0?{/{10z*CeQH+Xzx:Ժk'3n }@YM"R*^Ly" >^tAOḺ?((R qy/e(uߒ7 JxbHe&mJqSff-[kRsA"mt]ܷ0B 55sl| v>M KLu] YA*]AbWpS.iq?}pH12QsϸF"'\Ϥ69o8ntmSyf݈P;re51^QVwܓGd&8P{uUC~YzԴj/nwIb (hm/qU{$%5BAOJꃀ-ˌD*: 5?њoG t9!dt^4]ИA69*-6x+wpbc~Xs%C4:?bd$c/T TKlL\[>=mqPIςޑ9%W(FRWԧS 1F䥈&Up>]Vd)FefN1 &eSSL/kۏ_2@q΋hy"mNM2씠`:[:;sN#%-;k ]O R 5CͫU[8߽$T.7`aO}}5Iw: "^sw"s*)p-"'wĈ}=㻼ds`T O.CzGe[t\ hU{&㌞('P)i?P_ql>N W)omFϺGG?PFxh_Y̐}oIۦ߬!d1ƻsm]#Ɩ&5T?~&m|~Œ7hT:0$[kjBuZT+WWV2s"lCjkD' tRa7=[KPh4yt$QD̓^!]hZAB%]OԱLј g oW2Y0&H8`j)L]\X,UbW.;;jcܷJ1CZ\vkD0I d7[U=zQ_G^47sKݻX2&zskїDAxtO;#ڇV̽v156W%b"c3<__U;#W%*|˰lB_;Bv/g83T(OP{qʏCRgpc5G,A^X6t#jb rޑ[`Qꭼg[=4Uf7x_5?}@4ao+ck*&P0-ْn;C*):.Ӽv W(^H>+%)lq/O1&kڤpb%4 i%IP'j4JMhO>=PAd>`t.#9I0[OBr;<&@Jn* O ;財[.(2UŤnqI5ML\*4՝(yP "Um>64\0^iL1/5G7w ?ԛ)g"A)mӑGhU0#x$4`Zp9g%u,8$ҜO־I9'_HzFIM"PD ۥӖ]YNRFNX=5Q LMi !g$8%f͕w I,N[̇^;-;P!eRH}r3fQ)xz@y^+ڐTuc{*9߯O=nR"KŰR‰m3Vfsz3x?xnE EᰪYKl]SfpouKI%q8k"j(o6eFSWWhMquFΆ4hBc:j@S@o>Jd|\h@@.wzD+qq_2jBܢEq$w=.>R6›,hPS̞^PX]<`u'La5)5WS`o:S|xͿ UR %FH8kVvAw[]v+p֙SȾhKx,YVr_aL['d= ifGg. 'x -!A뛰5z0~:gݎç_, yPfSz9YYԔ"v)tG(&4P&~$mgRĄcorט[_so{a"=fS`}Z2Jl؀Hnή-l!e|W4]9ۂ _l謹~a#[_|~[ m*>~Dr zD}hOVbFq"4mח#] 0~$0L![Eril8rʓ5me *%WJ 9k*"0~ϭGu[,Ud.=1kh8O!YLh$DM_&dt<%p0vj +u%@u(zK@>J@0[R"t briy7۪6A5yRl6pY&x59_LnAh.dzX>^pgˠ-$RYƉ+r \߽ɐ3"_Ȝp-Tc`Q bchXNOf2g2xDI74W^}Kqn afLwS$F jjV2m߰|Fj|&Ⱥꗍ:8$h'?V =}8l{-5qYDI9v?u~F%ѯoMڤl(¸rŏ Lp~7pz?i1]09|;5e6ii6dkw ,YЩuk"U0p*Q"@tn0!GҝlB&SXx`eΚ|f,h6/!gT2^!̧`%KkFeuS5kI 6z5aIU,=̳CV=`*T/BkdVTHOi 4\`hҿ/T# 3b}ZX"Iy۪r1k2l;D)Γ-{dRf|,'$hMOrtLֻO %_ًXqidw⇚ܗ[[u#Cs"'/vy;nQj|fƪ*%]/%%J;hN߾Pp :cVY@#т}^z$Q̧Q5<Ǥ7rX>oV:ciDEW!BǶs낷vi=~57\JMGU. ,6"YMg5.ʰ :(}:@Ge]{ΘwX(& PÈO$=quQ]'+kWg8))->8w֓zaOb012 Nk!M"-3=M>mn%5uJV3%M<Hﶓ^фr#Cyۡ[%[SCE(d|Y&{Ni%7 @z(׾tç 5 CTK "n?ÐIꁇ\/w#bUeߪ)$#:ZaM݅6.?w\-pT[gxK(ZspvᗿeVf%xT4Fqlu^ݏ*곏E'>8sΛP7wlcG {m a!l߸d^rh]jx@l O. 6YӉqP& ǩ]lNZWևwŔؼ`4{.վ;Rp5v>]6)/gD,(Ay#Prk/pz\tY,B `A1ŰL*`E |}b. ӷNROQy,@M>cv{sz=^0iaVś<D휈6F8Q{ICJhfe2[H:݉tN"jֻcL!`җ^F~A&wZ>X;/) m \~0CgJP c&/>,C;<㉳:RƐˈВuCtKsr)x/ݶ-%z)ؘM{C km z$i3u,) Ѫbѱ8- |euo;@Ϗ3qZ29I= pF8v\Txל;4;53,a'EwvVZS;w}yo}ީ" OVT#Dz.>o/Ajz~p ~*<:.Ҧ)Rb H  d2s%FvV=en>݉pӷNHݡ˾2H=Yu8j56%]rck74x\@Z#")`i>!w9K-h->:++sЭ)>jyFR$x3FDeWh&ҥV cc#硲G;+gSu7y4HBz~>!]//UܑbuC K76~oCxU%*;hKaX0JS[oR@{$e #۪(VxuT6..쌷C?-2eH9VĖ˨Xbj(BLn a2H7XfU{ @ָ~_ |U-tazұr3!C B=Aj+7Czg_-g|0k QY/Q-,VtwV&9֯Տ%O(lc*;z;_K{Jk0eZ3͜i«YqG9Ir&g{eSV`i*6 {zM8>n frH}Avg mP)+u"n7^as39DYthr~%,lL k\K[F;(⁲K *X^ilb5mј7ᤡ`G&Lϴqҝ {^exڡoʰchgCRɳi: ϭv')-'pqM<ү%) 0nGX~laY˪s]S4fׁneVlyr2 a_ە8||Z+ A~`K!^1N_C?uO(/]g4aڶ7Τt柔_g'0j7ϺGP".C$MtÎZF1Kwȼ;K!APmԩwuҍfyZ"t2b੖!Pwhf0"7fS%Gd-!}~F]3'$Ƌ0|ڿC|\aNA"BxP cX }нRg<&G/K9LZ_cQF"24{mPH?=Hy?~ 6 Gi!§Y>w> 3|Ihɻv :S]Dٙ9X-!gU%h=.׏cPF7iBjV"MEb+}!5p6v܂Ç]$^Ogpuw휒x08m Z 2{ёՎo{f$w9G}WDOS~&}lRL ](.xVđxd$54 Ot+7`}Q|,) 13p!DfzV^ ie]r5W?+?8 wnѧC-I>o?ZR> 3\.,tCʌ64fO%nIzsHM=Sf_?ږtȎE%|ϭ}ܩ4*עx@BUF U? O@e_zw3dF~dLŖ*/ F'/>6lQLewdϧ3p"m׆HM4~7=$DEiN"FntxBmccym6tx1=3=[fAiE%>P.ZGkhҴYt$yښ|M2htïqjx%!e?|)f7E_ʏ:;o(depZٯ! Wm%xl$.=5}VN% TK(9x\cg疘o.YQ:H_LHC׬UsdO`DIGbܜ#EI;^CM*jU[VD.i^ߥ6FRW=ˈBƹ#ÜY>I7NfC3ELH]AVJU \s="vPm5mM>ҜD/ҪݸXϯ\<8L cnW]Q_]@:ѹ8V46RX”L^ ,Ov%kI2y'9o⻀8G"Q r1kl Ʀx_WMy2|8RmUHlMĄA劷Hl#^4rժ73&Gv'T_őŽ(hd?T6jy'emu Ml3nvY/H#>SRaƩ\8ڼ/87LiV9MWI/ё9b/X#T a@ύuSJށG)P'lޖ沣I\}sl\,av[x$dk2&}Ѓ*S3 +,e&(ļ nfXDp*HLhɵS.B_唘 iY?G/l "6K޷s҉6LȳV YJPRr;gMv B~K4Gga;% (WfA:gGQ\Rsp;KA4M`D>?iŀ]*Xfv&=PB=!qaȉC/lfaN$Drd&J7Su[= PMʧmzB97f> { Li0kMat?wrp>#q%zksFbyRN*4X!2s>$1[} L V1Y̤s86(IG@ɬDa  38%z߮>Pi(Fyfuڒ$5q$y)XT=]oRaOۚ6˗p $ج}MkZN#EW81ٸ@&&d_7,՘ނh\N Ӊ.C,"45󜶆F*8i8 pm$N@q77K, CힰC>5Hh}]?\ɘ~a}lwy=Ot)8χ{xqQ17$8L( M1,>U+e!?zD_8X\K] kNz=ȁ= ( Fʥ1C%oDI// AK8kssL-tS {`tdԯﭢ;6+ {EW s`gI{C9U7 zED#Y[},'ڀد 8F5·UoSb8ҘXiaxXǑfAA[ 'l1pCrK9QL8{vYvEBmv^.8ax Y.xbz?LldcAtWƟQ_akZtU$*ylqHb[&Mnb'tro.\p(HR37ّ7ˆ%ln}'obM|>rN>F@XD*qx'^, =l#LL\wq+t2M%ȃ0lg-} ֺ-ng@xjAX K "}kaWA pUϟSYS吜/'9XA5j_H$Y)<\o[Nw&š-@@*h" ZB8~Jn[|5+W;Gu6'yI  Bjn%ļT4i}wP$K5O?xn[{d.0&Y$q/]"m˕JH?Pz(4 0 EEb3j&r`+g> . {$,\7VFAs;"~!4M۵MIn~m~2⯺CkCV"x((4 GE9H*xXڋ}lqKn_E [@U+'ʈވ)RE8Cà<"A?0TDL)=(Fzm@{1d@y%uƀbE59!?;xIu\_0%Iݹ;iξ y;驹L.8|/#I YF;$agp u %HH,OAPAq'cU/ q+WaP 9p)fpy:R~TxCLZ~"oou#: T ˇ1 5Ds*a_u'wvaᚵ-C O-YENc)^"fWNV@!?}QHJ<\<Әu]b~/'*Qz%&t e<h2Tyŗ&bvZhЙ>-w%qⅪmG2O*Hnhw%hoܵ_ɐskYفP\k^r,a$p;J麎Ej)4K(Xc=+uBd ZZc &cJ|b@F,\ p޴AHҭG${^ul}<~q1 ۆZn.@t=wS 41D \ M,9Ͱ!b]΄~|{wyiwrkK9[ehmuW h? Z@ƿk}DPVpmN:hjg'a[ق Lo,pi] Я(:owGi(O4J5e`ͫ1.. 2JenAWq!rt9_9ҹRHOs|_~K:;QlWr$:z%ۼhfonQ\zs7W!FUx;Մ詄!K {lg q V@,vRsY*ؼGm}TZ75@<= u>Q[g,pu a27%IATh^.Op2MC O<@!6@ӚsBr}s5cf/ aZ[rh}m=P'aĔ>ˇkD#L\k v9ň[$X #Uڶ`b]aV& 9 ك堂_ō5Sh1VZL/IHoh0[_Qts*'KU 0P<66c1pb+iwW/m;&HB.I\`g\'/x#KL!̋ihC݆>)*VNؓi+G}ALIlAvA3.aB[h|ps*vDʿ}[U$X %Ҧ\V'G'R q'{-\.f,ۉm!/dAe$3fy~EY^]k4&<\|As w3fu`{XQav,Uwm܆2:|s2FR[@_%ꯣM FLWM8`p&ގUWxUsJTe!||U 7BcU}khuVeGyX}'R SkQ׿D8f>kg 40 {Ř6d'{htbfT eTgY@#lqwE"ܨH3A]ܫ/+]VGz 3Y'Qm;ebV_;Hegr,JuIPӏAw"tFX? ݗ>ϭ?h?er tle~95/Մ.yUmµ kMfpsq lm>ϲ2G5hWT_2#b ;130 \xewKMaZ5KLY}.*0ڌ\+Ku䳀oX|la7yx S\2kv𯄈6'i<f+!$n V^Cۖhr\p2~5v/9"[& <:m9M߷ʯWXuve2Ǘ ro?ƿM!VWnt^ s §m Q\؂</KoS_#DT-9p-ͯkgJx»r %}fwbfڌ)2?nbRٔF)x#p&{z 1<_5=V@xZdaw:$tޓǹUPRbLE9'_fxEoh7RdX6lj ?VVmR~$0 ?k +met#{04Wh'/MG]'ܪZ@xl TV̈́0 񓋳x"[^5:5N${ߊ>2q^w`!ws"69.(EZ&{K4B`A#)UHat<2lLp@ ys$y5*-LjJ;E :R|}2?17m??ais#7E/Ƚ#2%L׹㓀>Md #}%\A1bQ[ q~h7ozR2ۭU^`^L ըZt{usҒ&`3Ia:]^"Ű)zωJ2*Z2z/vuWOow}g;'1$Ey#( 떼qR>]mPȫ S`^]W5^o.B^pdnF33 `hx @S?m# |HTTm[T)^=%gLl( >G=\% ًԹzKbq͌qb| M~I6Ha#+e{Tq,SN @:zI ΣuKn;Q~׹!:K@W7Vŏ:CtBFXBYz(WıtKTk.ry"讛h;1 4FQM#P\$ _C@7J{)rv80^믉ܜ6(bKB=yZ²~^,F!Mt]6Z)pxlg @}`ؗΓ*bv<8Avkb7]dUV3.Q6w *8-|_ O6fj0']]6~u4yD%t7K(t$ў # y{ i$zQ;ÙatkS+XK`q뛂.ʏ< ӿvvG!ω s"Ffta\jJެuR |ƅ Ռ_9siQ%@R7T֬]uRݚi8.TP$| *ٗ>N5o3s~:NXHgJci˞B|o>XtbI){[Z\Qxbir]?W^yU7 m;-_Jݶ颅t-~.a̼f W; %ۨ4V&fr?"x9NW *^DZ;<޿VsӨq!D\%eءap͕oC\)A{Gο?>q~K":!oQ.+7Ccf4\5P+6tvHO=( Ľsz}2vDxRze}^aYɦVbT_Wزp?0߈'-._5#@ ɌLپf[hc41lET@=ey]T?.oe=9&1s9H㛲Mo)9lCnA(;IBٔ 0I٭EJ?[(Hl!PcI,)|UGK:ijϞ1Z=|mo/ qO;Hg1 8y6F7۠tM:S[m;'eEr*M{G )>*%Ej9t>ɭAAG4o7tJ}t-ق:.R.t>hTxмlPjjF1Ż3Kd"Z:l{sX9NqB8>\fCwYB|3P루nETNtnhr7V^~Re:|\iܶ'_ )gޔAy PRLZO';c"Ycm<=H <5 ȚÖl u K H5%)\p3 Op]*CYda-qaҥh ax*b2ztH)4|j|h[_,ST߭50oc[I)s)SqjM!W"$Y 9mnG NL2@ D _xLڪx.!mllRַqbݳsyаǵ ka]̯h|% sg)8hx8`´qB x'tTP E{ӑn<`+v9u(/X|pd8TDR1 qy'|eW NΞaM>{|l0g)q O4?0 ˔wOd d޾PKt&=Dlo5(9pcQ=:u͏!z#Ȁ kelXDhMdMwOA)`g7H%#ģ[lyZ@TS<&<uD`6ynr*HpAHCbn^ڭ>vL+5_] r%Q$Z6کri $?2{tOOO N]Z֓+IG`Xq:7uL> JB-*\&Z߱Yz"d_\M{dwe1obh&dk.!:ðc,kUbsnNf5- r-DK~{YGG]Cy| HX[#x_XnnjDC~6~,kEЩ!UkPdW7jyGrk$D%XbHEFH:Kٮ``M,N3#`Pjd$պIu ˩N-o;Êʗl0% aGO?{!yMrfD!$^IZ~O^`|~y)Q5?! {mo"T̈#9ͻ[r仰b#^F_ ee˅EzJVKِG_`Q}ݨ_.= QenIY/.]0jYʛcfdX%V^9|CIa)ldR&:3d%k`=1`gkgbv4<,h"8%0_ DpaiavTw=`T ^n w^3[mф>DT2Le]ӭ hCqg<\}P.&O(qYx|~$bePY3д>Ld gb&ReQ>rq^׉ <Ąz:{[JOC c\kq%҆= e?QhWt_ .!*&뢀w"SYޤx)}P;XyHڐyޢ̞|J5s!# ed'Y }$1NCն Y/m܂awGdϲ1M<<,^Dsz(~--w#Q3 YO7bj?-^['RQ+)lsU׺=Rn\U.93&nDTPjÞPdlJ[}WkНRhߕn+>Ϋ^] =|9z#7 :8{KDg0X}ͤOL-[aGu)Aиզ[+jO Ƚ$)ey0W%:AE$,6ϵ dfdx䄈5v-7,IzGyCF.NZl!mI R" Lh!/[2=acUa\ߚ'u74CNh7:GndEljf u2[or.+qjscZN>NoVSX:t8~l)`*i!7\ _LWxwǮf MMvJIt9pt]@}: zyi+vVXbG(tz0u薕#Wwlql EA\ȣK<ܭzzQvcp߶&Rv͸6ECB1O8owSBurYK7m()#F]p `=WFU_x2)%.I˷x\U:QkQ%#6&j[Y[*Ё)mBx =7)G0tW9ێ sN >' Lj_ĂH'BJ{a} x*2yǣevxr:.x7*XVVN r`J<̵ ٭}N{_lqwh }FjMHJI:=$j^8|ЇAvqIcX4{48ffraGqc(wlţ"21+u,97>EF:_]xheLRiu)#PQ+ȗH,ؙDc8I4vꊲbw&.K)G6v~A΃)'(Jv|6%@7 x,kjo6VJf8Yy_؄s/.3W3n0VC>3"]3@2XnٞBIa_jr?`U\!9átk6305{SR(Yx[kcY;}]h%  wka+(rM JjՌ{ܑ>l'9\Cݢ|"{6;WӺgiMӋ5,킁g!ha4½d/x +gk 4#MϬ͎JxG4LSs9}!ĸuZ"GX8} '$_)Sq^ʁo-eqO^VsQQ6) tTqŊHn U`.̲trVm@6/Čʡ m0ވxǠ@ m~q },[}fs1?0QI/UiqL-F E4_tpxOêu k}/LdWqCcݬB&7PwG36=?.銤iOWBP+hl, C8w[$$rXFW80 > J>Z. c^o;_F?ğD399uҠ]}4&f:/< ;,@"0CҜr%Ml4b5OK66hvI`3-eDa5{'=X5]S12QL6kh]gc^l!*)Pm#|F$jߛyB뺦$E'^j?n ʩq{}; :^x7 J͟L?NGhxO(A5WniJR ح7UhP ;"Vs(>oч)PUh#FA)C<jm{J6 E~2qNNRE;gkQE\|wÊ*;Q݈F,UH( :hbe'+m'+ç;XOp_l.Df[kyӝHH7GC 7)KK8^`ش +#@.X6P?QdD/B~HsQ܂z^l[ܰ=*Uɽ];hX۬rTl񪙿Z j<Ν`ekܱnSƮ$XB)%bme "=}XmQfOW>*&ܾ?Whg@ DFQY%9{0d<+`HZab]R91l^Av"&m!m}:21̊D_/"BtxmOYɃe/-Uu!~!Akk ؠS@@_ X\ʕF`өU- $<ЄZUs~)yQȳU=kM0GuF9yHy(.m4~RϰO Bysqx4)eмj4HI7)֋Dg{Z>aN7"y l4{lK)ffԬɐEfن[OZR9lUw۷]5!Tz=&5့-kVf؏VΌ#ϟCUrGYچO3,X:gN=Uh2AmT9nG x]3x wZXA)c^0le>nҞ(QIzGzcesv8yjoUD-" VfCKRYF{_ .a9*F3(`@g}/;C[V!&j-؋,=OŃj/;xtsxj^ߨrJUyD7,jM?D3}hUUwO-/>'_va瓆{ۖXm(gʑ~.@VYN4ojD- 0NQ^s]~Qv5)2?H.6eFq6NKExmulyC786󰻝b3'}$ſg^Vf\V(y  x!$ SKqZ(괭cqmF=ol_3jOr̅>b>9{ׇ CB}uXwH3 VGZ)tHQM ќNXMfaօc$؊>.|7kn7?[bئ^!8+h3(ߟ0K$yY9;JD[ ]1O-;4'W44s//:axdTӅ%aE`;hx)5p/l`ݓԚ+]rO-Q-'㮯6S2oKxO*8QaJb1J'@#c!6%Gޤu0BPJ`IDl͎yzx;hma4>Ȧިtcܶk\{o (Z u)qR5$A?_k.K=6 d80+Xx[lSL!:4 >JUpU˺/,;UZOIb%9 ڝx$Tv65m3wkW_sl)9ة';9"]ʏPŷfSPhOZUY:l1O= +Dl&cN,GG$dGq-]9=S-n|ԲmΈ2SjSo-ɼ'`;`c0nT7$[zv8Chq d s* `݆G emݳIT d7Eˊ@9fަ'sfǦjdJr Syp Lp;$1fMzJ~wṴ$|8^[H5(9@OYD#/zݣ9}'@F<2T10h"[p_ƛDTVpZV$CҨ|Β+M%Q4fذEזI$A.uL4g]"t׽X{>57\#ǂnx`_떟kcZ 7(i\<`v F8Qs`~&ĉ\b^-A Ÿj`+!?PmDgҺ24>X BhF_r7xΫ+{A-SstS:B#ݍq +VsپOFV1Xvh{ͫrOGMLJPD'V;m[ߤHOgp,[畴{U$Dտ"i@,>V:~zyi;p:[ERuudY)`a;: $JGM@ˮOT 0`w^e / k8\h"<(/St:FSIoR= i)>)F('\{y`te:C66ܓߏ[/P{3x6#Ʃ^W!Q [vȱ:40%^I*@;@AVp0Xz3֥לzHn'qφT@]ݵ`U?l|xya;2^8~E?#gGQ3'3s'ﳽ KԯA&x[t_l{ ;aXgËd'{Kvz}όVӊVM8({^7OGdNR-2$$1zا3! $ ն0tl}A KP¸ zٹRɯEٙWgjR橽Ԫ)R;0\c S$I&ʾ6!J z5VKVicEc }8eWы](#pNC_ažo]E ApQ<מGJt9F{{GNK:ԅyX+gaCLf]JmRf` zʶ_pڜbZӓ9qWʭu5={Vv؁zzO?2Wt%e=@qUIKO!hX o g  ʜSl(lߩ X4^ֵD+HPpdiyf$#ףƒb$1:.$+V=uy}R=W,$yBo}͔̈ZK)Zȵpq o)(;T6vz$K>(\i(Qſqe xi?XxMU6,-cd `1̑m=1r)s McwMy+,578EVδ\!2I\L}` \1q0$rQx9p F +">U)a"!]lR(<) Ƥͷ*J]f>J97ϒONboƆ߉"!cꍋ6qk*رhJ?}qsq4kS$Vej%WwM G醴M}d 3ź]"b'&{p&6cuCyŐ_uɵn`c-b-ăS)IF t1D1NÁA*rI1B}Q<󕢁+mPsW!m@RB?/aEKiݑ zSz1+2gi{/`ZHϙA~:9n*zEkT|RpՈޘ :qܰ@/&M;/=1PF4uuM,qjdg^JBHL%UÇ%nJvͶp0Q+5SP{0{>Ry +{-[T1 Rsh{s0>7cO9Zmhn,JdMpJ:st$1clU&"ʳ8eCyۦq]^E] SPCup3E7vTErԭdJ 0Z/g%g7u/DbW%s ١#!fyw+nt}O@XI*#哯1R;o:[N^7#$fu}({O m&< ,5WMEt ZqjDz @Lnѯds(G#w-; Zkhῦ0*Y5UPj&FV]aY?rL=BvPBC̉oP!!w}JJR5Q)&5/H˘'W-M\ڦNu( ̻zx¸K*NݸPQ`&h(P?yR& B#fuiߴFj`-;Ja+7IKÎ\ѐdѫI;F ~uGlWI`"iʊE-:CO5 Y!H63VRWz`I>9{<aхLa^Qm/HvWU#%gAa'x{Uq٩IO3#>ՋNxYҼ%߸goB>B#?r1\X1Ef k^靦\GפPAK# eU24x=`fL@L?phns,w!Rܝ;CIAGi.[2䒙Y]+7k`%eneܞ{`!5Yl]UN57X߮EJ)vM[/'L^{ތ+Ǧ =*8gGZZBn> $Q a`ّz.#2C5d U.!!卅֊cuMlɒ u$.L|Nm[HK>k> ,d9[.-m:%p^: V wлydĈT_:Bԩ5M] qqڊ*(X7ȂU%Wծ\;4f-^q⛸@ @A &=;R!F=;D}=9^8PM`Ӷ^UyEY,IvBS5?Ŷ E)݇pF(O]z6nkkT: Ǧ[[EDX1=Hg*U izb8rk߾CcLL.yh6,.>7o;UDdI'7Jt.%ũ8c:3hUٰۇ X,"LKcA'6?ugrٞYsi2_}0tU00Γ`;5R~|ߣ|KORD:Ob2IWzh-^rEX4)za4rsKk*O7ޣ5 -1W…֋=sCr.;p,;8% %]]d+xɅ2E>o9t8FA_b<+0G|, WL"?r{/nRSOZHX bZ&OΗa_/xp .)Ը҆7婓=6!@ZXVkxCyY3}S>N, %&a,˱8ũW~>%r҉KUC ?4ʾ7Zʌ APInC24*+1JQiR8>߲x#<ԕJn 1q̐aweILOV%[g8R~>6fcs\\A~KE{ w[볽N{5 l`eJHM޷͛9PoQ2'$HTJENu ^O$;.ĖV6R) ,nuaR'suˉ_ߪnSh07 hjvll8g aK·52/7v2pX@XhI@ TGTp~ q)o_&*"iUH, Eĩe;j]NkGaSp!l[ʹ='ޥl++ ˚8Vq|E!"">Ld&ZR$^# >/jdqن`,;Z}ſtpE{$gN2oRz.i@+Q*ubi):?1p6~P@a{Jː!k,K^$4Wzlo'ttzq JBv~5lyjeIbٿob)>,~] Zkܬv3C^`$൹{Eg'3屾=PG T6\PN㌒|dC qNJDsOj3*` !-ⳑpık&AN4=p]_( 0iys ^й7Lm|'=E|e'PmK1_A-/ˎ;"تF:5fn@s@`9 EhBK*`=(:^y\lVX_y-umZ[!eC/ƺQe?aAt{mTkSN%SP ˬ2ˌ4?Yp?t`Ig3!]R-F`ID5.\rQ4GQA'ˆ/m*&L;ΛņPhu!p S}*8iFcw # VOR sj%ڴ`Eڅ`'#zN3gܚM+l쿜gqz0šF~:fqz|:N< +vV;V`s·h`*mRpaT.sA Dg}_ZˆG 9`V|'a@Zbv>D$ ^XazeC8}1 JjW/ =5)3_["Fg@ʿ|ӭ([H4KJQG^G{䓲.]koCjkGA̹`ў~JEJG"^\g^*TITpGAGBz@/+nZyˢXr  *<7i+8،fVE7ZLq f./J^EJ51+Ho<>`Q3`4#Y @T9A=5]>ƈ-@ ,}rIտ5Z;}8DbW0˽iھ)l3*}/*ogrpD1cC+(6Q"Tur;@HC-0xM4B3X!wW[-Qf䵂H(5v &Α3}1&`Siz0 (6SO5&, ƀ:b=`& )=eA ';E#J|I'F'y q_!eѱeւ+1bU&"TPntsz^'ZVW)ao~0SK;#畴'sHښVEo 2$S/{ 8se~08mI߳'f>6/?]2K8Zeə)y9ɦ+5,C+1[^W +=͍ݿŗIKKS&>I7DAD21}?}P$5W v3[UÃ|ah<;5lяh+UVeX/9@* Aq7(cH7ٽkaf ^ST55taM EΛ 4^}k^ >K6 \8QԉmˎsρѨ3l-!u)fzst?>,x.Uwt#Z:@N ӁL)ݕ[xޱ C =0%la qeKь`5ZC3p;?t< ).bx!ho]z(1(1W`w:ZqH?L Xۯh zՄ,Fcq{U&ʒ"9*J6(~s >.Z"OWFy ͮO?=%^-NRt Mz@PMWufZ@&nuGbJ1BٟVG9Ŧ%.^ǡs1Ӹ\p>8Iu#}ښԜ+E2:W9|*s xknAC5ޕ+`^#X <͑"7}X`~v^cp;ӯ=;)$k8fR4IC/< ş5S7ԀkZ5IAW0i>B P!9rhsU ԏ8bƉT/ Ms+_x4͹adl]HL5-6!Báh%%ۜ',@RG5O2_CEhqŁ!x/^Gn㎩QR!^5Қ d\v]~mbנ.4 oڴM<*kze?H  3oiNNeĠ;םώFT Ab=J9mJ|0&XmK_NFwc$L+ {*'oQIF .'|7~: `Gf{t"DI(j\SןkgMq-1e,8gļ&zϚW3ɰw[]@Lo0$:N#lg[>őQ噟6. (}.#?Z)лj2W=WMnh$+G/&7"K6SMo;^nt ߽̍V'RtGmErh];V`TX`~I45Fq=H0I/u}W py54:f h6g[ȃ0G0\9e+B)h/gsYgaѕQ<6[M /:GGo=S5Y$57 MyXZϮBc5o|a)G U?!릋T҉-IP#0_xD2 7߆ $L7?yh|9Ceu^މz(C1:nVZVO)zTzMn@TF̖"Cñܗ[#QR7v>DoEn 4#֛G у$bdmaXe%Q+g"Y,וc?<6y)UcPdx^rzh㫀\L@J?`+TqvtqAjK>eAN!\cgU%y l6?G;6x`G#z0 p J7aj|B4 iM5pnDyT? ټ's/#m,>aXN|geGOW}K @]_-r}UPl=C|.+@1‡"y*,E(s?S7az'Zh`Y8kG4ܼ򏴭Fk 0Y&ԯKOAè#AEU Tc5\pJhU w a")N07BmQ&nǢZe!Ji@5Ղo$a~ItOBF|ɾRq shoSIfx$.4=2f݂9Aը=ȡxdT"ٙom[]ݽؕ:H[0ޮtj_ T$@G>Qb5J+1|#u-qq>cՄd$ABH Z>Lj4W~e-;L#m;jgY Z͕4qN#"O{vT&VKOJu|N2|mrZv3#0F:Q(WI⬙lZxv6 u,(:f,g:-/^P&");`e3/8kP'^\%MWGΛߋWx|̏tAl*;@ケ1 1)Iؐ.]9k,w LQch{?ó)oԥѪ18rv8=Y(̙tp[(#W4V KgଽmD^gad E2A_  zgiop nE7>(v*si.wpX5$*]i0J9p9&qd<šWx3BM?={e´(Rѱ1LXu# /^=xHԔwQ|k .̞Re) JbXEY|v"߽hDDt-8U`bl #r|=Eq (Ou^bcL}=Ð;{bޘI7"?u6ށCbzXo?Pj"`cҲmun 'VWΕ#Fyr\ ϔ}ҸBpaE#FBMja !n) $w!<^h]Fz7JL)SeJ Imdwe6L9k%qܥ@g89,,E##{Fj4s2YfW+=[=u`j( IHݢpQ)+@1b:R]tK (`WsÿV.k#T,m&{68)en_E"ISu[?#!Y;R&zIa])/ ԫ]OP$g|){fT!YvD sU,8yt.=!ycS RZ g[yN/ǟ\(OgOppTph=SOM%M]!qD-B~T>T"-x͢@=ݏ[.14Ey%J=Kkixh &Բ@52kc#eOߣDʁK) eږ[ʙ0~)ITc/j0e>"},Odn.Xdž';ٝ~VM)^:kp|МJFGN!]4TLӖTJMnbShD8/ys:Pa݋Uv@MkJ#+%02<d%NTۻ]mg$^V@=4kylg\BE q݋7d}(PH1?A@}<)l.\[X>\Ssaw]7M ٓ F\>P%1cX[[:FL]a2X+ky9'.@dI+J]/JӅcw&PXj֢(~mc<,gVtRq(f/RO Dɻia^8H}׹WǠ/^FG'0̩]^Wn G7FbȾ=?Z6v~Mi __'#ć:xon?.V3"$͐Nzj4pr`4o;6VO+./h| }N4c1d;RiRPP$pQ+f}ãN^Q+I= *d} ٤7ڞ$NSPSR AUt"zɑ"u<X]7'+D ŀpƧޜzOX33%%ߝ?:~_/N54|<;-hhC9>(uyT{;WnV1PdxN#:`?gx/h ^w&m8]hdWCus!h'U ^ f]D`n:okAuauY*v8_׉l⛅c4̠f$*a%«ZoU,Dy&0].%p-":&B`EKݖu9@C3Pǵf$k$۫O֧qSn9mm2Zx;ĶHƦ8_;P#I}=^(_+=H'J =ڒ_k>jE Q.OFݵ|>{UNV:ưE(sGjǨ'pRY}.Bn \fhsEA"(kjY3 {M 3Nk ּŚx#mA9kbyC`' G;Ú%0JgɐZxA,ȁ_[.onᄳ*#hvcC{z~f4cF?0[H*~3 ccLJЀ .\&&D|T]vEt7Z]4$ՊYOm)\ DL#-uX!in6f"\L`&k'ń}@8~+-Qa n)9i HϞl:&9֥uy=`;;kdoNNy]+ePa *߭u7pl,x!Fue^qzTY?'d~iknwuW:ܿX8,i-U m;q/oGd1_Ur8(\2lWˣBUnrFZegoax @OUͺ<2x;8g/s!QXt"NucXq6+fh,ʫ–%w{2H5)& R xFTНлz+D(0JJs% Nfz=X2 DH1"+- M3Rp,)w.N0uT8Ƕ"HЛםE^t .L36K]ȽlA- [#"R]uEUrYQWTA^A9>af)ؙͺaQ{G'OT^9Po[R yژOXT`4 i} ;b>rX h㳵6,SNLBg(HA A-O| LҵkV (=?b P}H$@cvFfBj!=kKucLk>bB*i&@F"Eo+"'l!]]cy xsap[Ivr\̬U7g.sezBaR1(hn<0YNFb u 1 °Wwl??n}8 QYUK}TIKaܶ&\%V`xT5ظ*B? 9ǯk50V?;"+&'*;b7|jܔkXTIi((*4ȢOu1.ScoU1e`?nv(*|?y)ɪ}T*puU_\(&P!k3?#7*%Nbհ*XWqT*0BrVIJhZd#=INi )lȞIu|x=iNcWE@Q @Dᤜer%,;#2axe?a g 1=׍ū/ _p+GCp]_3b&c ) niږDV2E ʟa}sbziDt‚$UQ f@#xpHS _sW5J:qfUnĢ6Y }t kP?i@\_P(lzH1!chbKrf*!%LJ@]&ulaFhLr-ǎ~G 2lY*9yOWxg:+ OfAlJAOtv{>f]-R^FYT$W"QJB/bA6аwF4>3%BckǛ4D(EƠ~9S4OabغKJ_X^ڶLm90SKE- cy@ra)5K"Gt 5;Rl_JoE2-նɗ a MlCYq$XBn>ii+I@ѕݎD܄k2T7IahOLMXUD5H$AYj `-jOoj;ฎgU񄥉bZD5@~=rrKBgan\x| RT_еKR+2[vyQ}M4] GmedS75a.+̓FOta4tav[V9-Sp}Ѯz6@RDl,|0(%q5ŝ$"Q?\5N%q-Eq3i3ul)2Ӵ*9 ChVQ!f I@-Ȣ k1p4rwJ́G:d~~*r"uX^T V6+)^lnvaڧ9G?眕pe!2z;ϓs*55??:jp8q?|@dcZ7_FUN1I(9z~⯕U*^@YR_^ml*ɘ=yp.Y r"t_=^ ; չ(,m0k,cCRš3o.O3fӳk,b4ܒjim^ܑE34CdۘŽ2t ; ? BVD@e_/ae;gTs@5 |i ,)Fkkڃ}]`rxz+Xz*/nZY9O2۾,v@ԾN讁,}cƙhĹ",= ]?DmA;_ZL)n0F3UNFN^RE\UNQE|Z2gm:U:$/voރ9츯/r녎0l Me7wy$ِ<}ËK bDo |bȌ3޾kkgW҅7UJڐ1.#~ zH}VTr4:2K[}vEښbY!`P KL$j+j^}2u?pn'&kIKLڲ]jy5Ȏ d`?@(t!hۖC_3 jF^6 n"b25cXuKOEO%)|~}魜6[HKC0jܐkY8(4@v3r+W2^*ν,)*c>˚#(f#;HXi7Z%?mggbƬE+ Jz*?34dVFu|*Ɛ8tHAo~<8<~d<ZܽBoZvN۵֐:h_,%M>6^lHs?7kal{jASH+9v(HQ43;OZ~GiEѩ:)?lBjfCd-Ne`B>¾y_f F1&k^r$t[ 6oY|pVތ0ߛ8ͯ! ~ߋJvhl kF &G٦EKjs2KX[C 7,EU-Eخ5gf E1ptqޠ IP9".S it5TTb_C[]BB_;y)^,؂2`)"z<kXG'aPh1}Ȏ'2>%&xt@Qy%5)t|A1k(Ybg |. ef1kƻ(]UsvU Ä\/wWΐ+;҂ WWGU?[6NX2}Mucb[~z<1*$hd/DLkPG___z 0Ĉr2P ͯ%{s m-_s7 3z07!!7~I8s8$ o>"e u*@ BLO-f\@ܠ^7>Rױy~\k咜 6akL 4# kIm(U>cѕ+ ;ϔWi:yW5=ZVmָNz":q&}sCcpA26F)|s"oʓ_* "u3̐yh ywV/#{},0KY4uHVV*$MmFg^ W7qšp8dHHB+57SﳙRa{BS> |J>VmD)%/+ن?p4(ct(Y5+ x39)1 gj _ FxD $qwJ?DD:w&c<'i[-\5w+P_ u%x!(^ X+n9^ď;Zϫ֩R^uQ6uRwS[Lfj%Tc/WXQXXKV,8@Xh'Z}[X_8xPU wE*=qi^.K3b"PIBb~ԧBCϲƳopW/9@t "+A¬pd󦲉))q"Bba3?}5 '%11xHZ~r(T|BRהS]4ĂqM ^͋!O-VWL!J"Mr>-27P8 bF%y+%pŰ"ЌuTZ E[ x]ҵ[NWCXb9T~ ʇa[tvA ,΂.**MQ *rNOOp,+eV\- zxT[g r@r ,'uR'!q<2\:UcJ_6U)K npH<6D20!Lכw]Gp(!BbxvMُK_8ʽF֤cuO jy/k/:`+3ekd$$-t}.{DmKhc183b omsx~2ڄFf:ϔ6;ׄONUiZXe^O-d/_ɮP$1Y+:;1΍bϷ/?.<-g9u ?]*8y!*mFew2p[;do|¡f;ތsOʏGC?Pp.v*,8'/Qyu-a+{ 8 MdՙHkN &qoKϵbYF%l+{/@>ׂlLg_m\(}E*Ych< ^܌>ЮƮ^LSXTV<]YJP]/^ڧu@#3,`Dz@~M&o2AmêZCZ;c.}) oQ]fb0JA&wFۍ٭F=^Ee.ܥbKbicV}7ׇXۥ& zu&\>̓9~ŕI5g{9~wIyz'egL5Y|tv0AKUx 5W4$$mbfC!8m%{r 0W3_?fSg'T%Èg!Iv u1;쳾OUNt jlNbqB>:$ ~ "Rѹ3j5P9 `"[ , )Z^zHP+lq1hZ eF@|Ȕ)U@T$ER;Q\W={樂-nz)) [cgt"tA[{?HųyN$[EWOI-SA:6S:th͆"^&Re4NEm(KYHȪѶcty\i}N-:T}xnS+gЇw/'n8_ kؠ8ɲ܎H7o"Vⱇ0 5cʍ͓tဿiOQZ,7OY|%`MqJ)#$!&3lD7r&짼~dvJrz3?BQpGI|fWA}lyI @&&\⻪Az9=ZMub = Mka%o /|YbOGЅc$Yjd'YR\c`@ ݒ' `,A˾fmae{pt/]c&^wՊV WRA˚TR#\;S/pTc(aڪ1ݽeA_ ZTY6 4<[sv1Z!S8],|:b\g]YE" i$8, %@jXq(8hC%oF~jX@*#,H+EOR .FT[PRY΅+@pcm], 9K9Egw2U#(|_ݮ| .g)#!i|Q ] Кbf asȷD0G8  3_%6pSDe>S&!lmy!}->bw ]NgU8phfńjX4W~"EgO<šRp2!`$; ;bsP!153 @  D 뭷`v/yŢ烚ӢPEDq̩&HC}rog[dj`}A+oGt<&E hychm6&)FӤS|cFd4V(j~_e4)6u{L=v6|/0Za 4[S5=ecz~b.}5qo O*vWvnmS~5-=CP=Ooe )Iq8+юb?5Qyik}\X6bWc &6t_ ft W'YWD %)IB юc$7eqMձeSF_ɧF9F8Tl{˨DѲfOIJ.L) "]T`%@tF"m lRzt31lgkk%"a[e=I)p ]sf7xqAN$%HP*dL Abz^D>&{([ ɵrB8-(Ƕ%/,zO[z]8,kOy8p: 2+GO.`r8 Aa*rr..ɟ ~(1 DjqGTdޙ6#y!60 }(iA~3b3_JAr iSty0KFͻ)MA5oKLT/-q29P@cϴ(M jz8`׮~`T;SX(ϚNr>5kywdQ~9H,In;)Q~/W'p 6\[mb")gѫ=/rAU'璦dI 5RB!|x/2@uXt4i;ʠnFL+yz5D_X3D&p& xv[7\7?sgTf؄V+8xv킮}D~/*d/_"ġh[q7BI;ZKO UWΡCgH7uMȫ lqf#e:L󺖹|g&P pqak0E!݉&s6DA0<4MDWnF2ّ6X0N=|oC:SSmwFWɮ,7Ki}MQ>  0jYr46 w̦0Jy)ꊜ Q#[߂[J{l,`[?R(KOofn][^HMĒ;H "pmYOSjM`;e((^<#kTdnӑ;74'bc!-k>_[y/0ti4x)z&]zT"zZ9T.QMK) گ b`b'AhyLi^B:otp% JiXy ԜV_>-fMP#Pg @d(|ŠIpl✍6-ӸJLޡ<lh%.@zD'$NM$oJ.-;}O3 ka!đAP3Ėh}\$|?Z%!~ZOApQmO^Wf/"A`%FlpoV mSyF%SHĺ/Cx&795DW> *+lTyK fE_(&~!4GvvEa#w) )?[fX;r C2k )AI} Y(p5i h8b-&ʳ7lEFrb@Qׁҏ嫅)ӇB>qV٘7h(q/eo..Ttrs-h&(?3߄-sYQ:vtcWT;rqߩ~xrjzӲ8 /p=| 8shP4q\=1*zJ„W1RDٞ#y78:d-\-$#xR#pR ,yyL OV[Y=&ǫ+̶}Ry1yt}wfz-1>-;FE~=S ^S!~ 0uс!@E{Q= Nez19fA2|_࣐od.Ȝ9ŗl{p%p_qq`|="p 8K!`,km )LXM9`N-S?#N/]( 0F6Y{5-Y`o9眚ިvm~[gl4/;b}0H}`]n'DP3kD _f)iIqYWZ^C9>M kZumC>G /0AZ;d;dS'dUH)r8Y Ƌ ;rEfIGPZpARɡ]l75EzpOVB9H^2d__5l-ufB9xg mxjp\˿JhNGA g4\mwfzY 6U<_CbEL C&dX?;?vZ?nBa~UƠ @)",*Ý* %Z0FZyT )FAE-+ڨtN2ڄެI{7yJNCQtA/ e' j(YOi1A65,&#(6k!YS uKz9kxb |_RZkb$ do.z747iK6ouaʁKL2:ُ1_tV}38ܕEŴXwd*ӁY-c_Ñ$g__Y(=v,6m,oRv;hG^lzozf= C~Ml WtlƖ6qQVԒjFzdtw|'vhv@֙*j+$*3ɻ tU9w(fQp2XJI ŽFJ)ߏN9’(R xYSU jm iXF#iSw. xN6Yݰ6 9#Vʄy|R10 ,Nw `;#4婬r,AT9C^]DZv0vIEI2[tX<yWyVr&zˑiOdi_Lb1곍4pKɤ-O0\s Dv6TȅǞh2ڑ.pRVwS?DS=5g Y4KķȱLSGtnػ_QH7r|kzUáYkzЩJ'd|gոPR12wP_n]ѬFm/52V;^;T$c<*[5[`9*ɯ7 _3}'hBi[m/oSƌ:,͓^dE:̐=CLsf2u)g$0<jc<4JE-SoMuCuu슌c|pN;bT#z8oGKkr+20j]^Q%Ȩ6d"?ۆxk"09^G@?8Rׄ= ~"հ+mfWW>-[fl.4&@p1{>ƷCY֑)đKrЧtOP-X6hZOѺs8桧u@(pBq8BzgQ@zI!aZfGB|vy\iG,&XAuatn."={Wy`,{,"6: NU?)f 2C=@Uì%[QXPj eEa ޭ1YF=гAstҎ*{|yL XRXWdᖴ'G"~! Ua'Y5;w GP9"5=l@LUS?UNR}._<$0z7T x`w< %_+>a 3ܡ6OU3 %7v'8/'2a܆edɻ ڏE֨8F]8r3>'p7R>' kkȵŌx%, 4N>x X`XUѭmNq _8_KoLOc?_6ڐu8 ;G-Ό< 7x 7K<_*.&!s_WBX _wOcdp榭sө^9)CS]wޭ3`GF[Mm A<ĨK- =9A4@Ύ^'u߇HyCZ{:u[k[ d~v*1'#{ MG{aqg >kG09akPnq8:)6K{F ʍ)dZi\e.P5p9Dި㡄( FQv|dqi~3< `Ki41&7v8,{CF1|Jo󆝄|)}0V9L,Mc=)vEaE0 >t<5k?&BлsΝܑL7#%;QK\S:uD =/8f&٩NΌŘe8rI} XMuȔu awi_qx)ak8SZ- E Lc @`6MR.$0!1%8[PS?|1"墚0Э>;J%%Z:EEdEiAtޱrufQ?4):D ?]+*7>1_5H%ѥ?"Ǭ`X^%&2VV%F01(WA+:ʧy[c,RHh-V #Lr#śG"q:qo65&LLR˱^jѿ0V_55pT5?y/Q%I8|,fOo$2~Su`"jyʇnQ^y40*) b+ݓ~V i \fzґ;$[XsTik6O$B ,]B;[BQֶcub>;?SZMӱKE;{/of;Gf/}@YxmE"s:-r*Κ)Rv"O{xU%}#<;Еs 4֦ਟemZw8FSR*cHpl4?Q%}IS1d~:)틼҈zB`TKԨᕽV6u\d.nUIACC*2ohҬ1 "ɍvF_  IQJĨ3?Y.D:7#*n&X׬i [s18~ ^::NOH ~ΑN*'eigNA0ϕ[lD3+lFٝx$7h /IW'JaɯO|%53RœĿ{$Z/~:Q{-/h hB7[TF.uMFasL:7euQ9ξqs؂s1OVA_v\5xH و5NVj)X8!ܦW"Ȣ5<̧y4<UAI}V*n7\O_Ƶ#A#We* ?ۊ̆ FnFSȡ iotܕx0d] i <0 FZMg`f$ByDk]q!Bpޅo6kr&K<&)$AT;(:1Q(9Ohl 3gCU Kym`<#Uw-AlwH7R/ZkQO}3_خ9]ŰY]K wS#? ~ E#9#1@ʤH/;GߏvpLӂB=~*ܡ%4^#EXV7siy~.)6JBK^t/ {gFλC B(Ԣf2Z%*z}q2vg~qdV$/`%.N[gv@bV|AAofWi 1=YvnWWaYS%"E#*ݸˤi"+'F(@#fkCm=wUIջVZwBW*Yyl e|I\X 9|3 |I^CAZ : ƖH:SoDu`>)GNjqwwQżdWLD=mHvyp,>!B"2 ;H8_CjegSfƫeѰ@DHYkH t72 .kT}@64W{@&m.eF ,V_-?% 0էeL|RbimZu^~'*Z,fƕJV٣Q.w2g:8hAG=i)\1OU-Qo {.3 -s?Au1G>PJ{H 2S['ST}Xa+[,jNJPhR6xJ~0pէ2OMő]لoA?"uk[QVC0g$nSxI݆GqF0_ϱ!I'QB;X00A1 VKIpW_h/]ӭ=O(M<0R# +VCYU[B}+ZtAzB0^ *7}\ɂ Jr\ e¦qybf| LҸ*]c%aDAn$ft}ixk_!Qd͉H ȊxsZY9X4ڦ3 fV8kڊ܈[Q^Qܡz.i ʶۑEc{4" f?ojkɖPHxM2,vCtQ%?k{ Ģa FKbӅ&Z榽1 yLt5)٠Bei(i@69+As? {bs>sJ Is 3!= cBrt:-EUգh)gYm1(PäFmh8?j͌vxNQqK5 hU^luT/:<ϣ/ʍ4G:Z&ar].VE4h`\A_By9 S6k5sAASl$-aZc9@qz84f3MI~@~91ux(iA7C%7v[뷸Kyb-n`_ 7P f;e<3ή6{iZD޾NܰJsjo$[M$0$D)"ȏIF;ţ[9ʀ@p :HOo[T&: DA tLw`'C e[%#Q?⓲EEF̈́ug}F~돁R/7>i  /:kJdE\h(kEV_j_2۫ɕfr; &gi#=8{G$ f+%^*h5,#\tԦ zvo9@.!?:{u)WDgΜV_.7QuHJn"PHl%~Xƣ BHQalQEy( pɆ׋T}qhh܏IvWTьNSb}I0g(g,?. !pq3"1*C?ïopRpKYq/mc8I<`4^amK+Ǯ7/27@S̀K4ciutCѪ{ n ?x? %P $'~i@?\ eZ7͖6' p-2l6 :֏A&uwcFٗEIx iVHhWT 2B:J]r;-s*]ڽd%ɁMka:#/=;mAYh0.LuɑYOtVXOjWy\KĆ`)[qMս7J4iD73sws,\)Vb؂\$xA*zNqgOr952A,qNʃxPe30:ŒhHq#KĘܥ[7%z@ۤ`%τ\ɳ }nYt.<Ɇ{"{ R6<=ROj"a>uI%PLZQEJ'/7c܊8ٺ^k[&CUc0/a]~bhQ'넆,ѡel 6c6i Hǡ~T? >J_>ߪsj( fot(}C IRBJOJqAîa ;Ȧ3D$_~x%-N|jm.?Pi|BV7Ӆv-$ʙC}1D5q'i~5Qx O \ eӺAWvۭt_(R*8ո@jY'QX[rQ!^rtހ %yn"Uk_NE ie)|. !QE Glf4]bۃlcI4Q, jdo"&ZgbW{HIrb+J5(9RV6K-G7pW=kHnʟP<%ǤD4z{C}K9>1jh*96ܹ:,ݵ۾[I~iĞ(մϣp(ŠUZj0ۗ<>Gݱ-N a*9G) 8_b? )^ϊ,u\u\v,/t^p i}xEb':f"l@sсeoPl)uGQM7&nC<(p]6(:VnI9rrGjǚ٪9^u*6E^ ID xvSkX X#<(IӸОűb6p4 u-gmDeCi8edP*R•, d+S U9,7qeq9P {D{Wťt^یZGXlvdrͣz`Jp-r]9Q!]_wTI9G +%V)h-vB&gx`}Cr2ܶ&'}2(8 f6nt RJ:"y}:fu|brz[@26Ѷ֗B']?^wwXcH:@k˧ֹ`Qid hxh8cv>&p }۹N'~qQPLVYQ+~wW6%36N Km@q'Vm|!@l\ SHPBUd:]W @Z3H F8CoTh7<(NJ1-.=G2cH/wKÄal?s и ](˯&fEX)E$aGSUMGBEd呶&,!?y!5ؖC/] )~ MgH/n+HpУ.E>uޥbg"XJSm$6ZEN."0eP߫dG _%7TiДAJJ63z9Holf8M&2j o,T i98RQThG P{zUd8̚G O}=f(#?0#Qr z0M3f<`k ?aUpMmdJ'm P" $[ p'3;6> J$R̅˟q 2->C::&D_DA4v$[Gk-a#9) ^2fVX7t[Sf%1oGGxhe*]61濢Z3yCtN1 q,Tj"*uMp8j1L6 1G Ԓre3i9X"k?;\x%™>cFqlޞ# wT`HknLmj!dO'A#ʛƘR)܇DCq.K8!~ A[ږ]O@$-e2\voRII07qw͇F' ^ug]@$/&H~[ѬXE8fRֺ)} ;DdU6̞8q5?T0MDsJDmDoAbY&s˚Hy"l߄~ 7g Y)aG"W1 D/yrYzװ/ n oHwN1J<0=GRu*0UJ: GUh{$.;B6FP05+7E@cx_s'͸'Ypb(k=]qb2eP@*ݎ`%LH*8:2MjV7UQuh5ƽKgQV5aѥaIE׳<Ѹ؜y"Ÿ@|w]EA(Pțs`1>9 I<7;ZA>Vؘƈw>C"޸NhGWSb;@ajzټɴl eӽrՀ=F 6QPvcgݑTrP5uÙ`x d$޵ 'WpͦE8 7^57#k>&Uj *tl_mRrs1V SBq`v%_hŁ槅=9xɍu6d-4OMɇKc+!6m];Ӽ}Vfo$:A8|Ӑ0CsgzB^SCswPۿ}`$Pn򃕝KZÑf{Sw˩Z4ЬQR$uqx}]؄G^XR|}?W(8p#hY'xv:w␪Dk1&$0Ckޜac' Sq$|bc*c$/l=Wive<bgT"!ynG1%M ko--q(%p:qr WE,{^lVO]Slb < e 0i$!>|dlKvJyb')_"~r0v+dC|C 2y)@&sXY"Iײ^>FjM$ lTu;)$x.ȻԱ%[=ޣr7*ǹ8IB-/f={pB䎸j/ ,A\'Hڏ9uf@O{5&NEOv/J0 >ł"C?f-9rw3|+o@v?Z#rGnףF@C'áP*Mtϊ_̐\k^s < h-ߧvQ>,G{y0{LhEB;6dʟGM~dH ^Wu/캠) UB F4i b;Nä?gc|%<(vHl\~i?SϻgDoQVevy].hҡ6jժG*\eT?`wTx6wGjȦz%(Zr47+ͥ *ONe#J0l <;1ȯҜ0+^87"@⪔E6|5,6q☳~<1($寜5eጊO Z&YAA絥n`G}$E:V"ey]p0&|z E"cЗ"DzT8fGXU(/rupEHI7x2bb%3y3&#թ$䶞6߇p$|eA sǶR^qn mgi/QrL@9p0Ox@&"qX66()8+~I ^x@,O/s7z19ƻ(*z洀VnJE޸6Ͼ݌|Fi7Xni8h&3]dU|ĸX?w:+_24+˷Vt.2H4~KY֥߻m2EE}` yACIޑ)aw 2jHEut(#'NcuDҚ|XsmJ!;Mgug/<} KB37~e3,sB =(fE 9|!cB BKR&Y`J6Seqz[#2XկLo8mm̕,gh,hGP"Y~HST]Vw6'~ōsz*[l)Ynco;nk3L[qv'bUAsH8|6 B¢'!?! t/_e[JoXs\L.͊)e| +zL}p1UcFlvԼ3p[\ fnjk S&flgTs\SY@V5O3zm go\߸MZfj5 oZC,O* ڦtlHKƀ̑K߽{=Y܆ViS:ш]blv"'jiS'{wHc%o!^0 - PX5-)ͳOu,ljpe®"e(]d @!O}}=Np" Ot2M6>"M)[tEn*ITK ԳbHyѱrzVwy59v.L,8Y*^XssOfSs fw/qϮƜc{Yhh޸EnQkFB[O""AS ayvR7VKt9+ك2c-HOAXb2N5Jrej–oEK64{$cy@Jz4&{i[ uQҸY[JU;G )ô0AM#} '..C}M{qC+[nkr.d>e&PM]bD~:& KQ!- ?/-p(/yja` F% *)~y54CLg:n(АxDx7VlLe#cJ&f0N~Oѓ#M5/3zCQupi܂Mjm-T]Q)=$ը#ĩsA&:e&ޣqeAr\ZC9di>9TW;>p^ 5u y9v?ͼhwm=)}NC 3\\Iζp-NIȑ=ǹVق*XpNar8 !x ūT5 )[r)"8B0J^<YUaG/O,rW(ӊ- US q/7QMߝbxΠ#T. 2FPH̬$АR_RSIs7/tWW'a$GD:ďHAqe73w\+6pݝBDN"8OS oH'Mɬ:Ôp Oʝ0|<cDlT~>qRLc1?T|v"U7\;?^Vuu+ W5z;&c?_c7oRywν&`kWA^|Lp?Q 3Baup lL7U3m69:n";#d ahd@R;1'UOϲ3I« dUX[ ,CSjB{y<ذ'Y+A2~aT,,j2K6Ú' v#qo 4ꄖY3;Eţi B.IQK/O53Jw^oB)<`& AW_jd@*]d&3(9DJ?CMo2=Pm^1lCeXrHD󘮐U/ saХR6y{,JZKy&:hΧold6[f@fVWQ7>,/ -cYLBS@4ext߄(E|ឍ и-|eoh2 CŇe%g^G+~[Q QK-'׈<K>>y&kֿ]J۳{$Q%V!O W=u}W@m#H!tzWCJb*̷tjXߺXb*'K0p{2+>-\Se?[丟 h,LrXRM߻4w=Yd^̓`o;]2ֱ5 vWvo3j)r7b!Bea>Z W@|d?fd4{m°h oP79_Q\Ӥ2({L|w7B55"[_Ӹ\]龜dzڨ CUiorNre!\~ hl@{|9%_Xc۠ jaKIz[Oj>leAa:\Jޫ;В r2vlW @f/ʫeAڽkE{qtƩk 3,C`'&ڪZTY7II"/u~R# SbqIO=3bzU~0b#O jW#u176xXՃm١Cs9يЂpζ3~+ڜ=H`~ c?T,ȫ ( F"\ym+$/Cҝ=L{>6ݭtY(=QS (hLLPݺˢ\D8RP6Õ.Į4E(\L=x)ȦoN,v*$BpX^4?3ʹ]`OU~&al`ȭ%*`wվ`$URk%x‡29y0N.$OM O\hɈm;!&bFD"VߊxMw?twMLA$AsUOn9D !Bq5.Ldr̲SD:KUT$g\ܦbmF,?;pv7Y1<ϒ%@]8t=R[.9jhAN})bE*5Jo㶭Ӹq+ um$ Ԟ:*XJm tg^1}(2Z56|3o>t z'J~zr1p>I둒4{n<^$Ψ<@%BLR޽sSb1$i, 66Owpk\&3ƶ?9&/f|qVbߏmwr044p?>X/t@ydj.IPʎ%{6jZ$HK@"~p+-OOiM%pLP'Fٖ (CaDVJ-kq.ޱ9MCX\/!8M٫$li%<}-!x- 5_Xbx6ͅD~NZOɟ ↔&GRoibCT3ϼU TsaKFҙ1[_Q`eaI UGOkL%c " JEQ5 pZRΧvdO,~fǪB,?G7hs3DwWvXj}{,qUʊOAX{9MC\TyO:&I:]:1n&흢/Zꧪi6a>Bp1(MgAt?In6_{@q9M8/[,KW-3֦D݇ 96KaA#SbT`Ƣ5-&BHDIOa{_Ba7^PŎFZ: ]V,}c4^JGZ)Wb~Ċ'X1NӤG@9yf{/L"W81IYmjgR@ m0NjJcOvioH `LMYK, TWWoycr/"sbg YFG`utR3j^rgn%5 p"I*ry/{ҹVzK54ZQ٬X9:& "4VS aJ*QT'E7JzۢIg~lСQo`EƖB4CYUr,ԥsƫڱf-`bcsSz_0C#p}o5pgN ðL60[_5G/t0/Rtx>cy0 ܇vYOyvQWI *uey >6 Sڼ6%=g tڧmУE/5yŽԋIe@JӦGQOzK[=_x;s8&;xC-邔 ;g ?Ǩ ,ci/#qPmJlw1E \Ɠ8y.6~WQ#lD,VG_/*^%CU0s뜛-9o!޸ienNQ/r)U*d9K۶ P4b#x:5C /anAB}_*VOj0VɻXF$a'EPyhn_KdtuDM`e1jט*"RܩW1 %3IGT㷇p:duYYMGtx aN!Lfxmq͊si0 M; cK˺Ty eyѥl,RVQmw0B;`9_ʢ&w i*rOٜchr`PF)I~S`YHK\dS^ZIU.dL̒03S3B~_$y*LT­"WćCjr#S(!/n-4(36wˆ]P[|: dtQq~l<.(6=Aء̖o_ΪL8@9cEI^1@5lE.яkuu?!X[Ay0 /U,AWCQ|t>rJrF-KOQt{~^$*X 7.gԃr}M"(I{L}I^[viNt_~z64ˢKʈ?HdI y 6e4vcw笿Ts~ ՉeP DEM7 `M1?$gE^)+ {d{+0U܁y-#G;o|Q]:BqG\ת. ]ņ#2&wk{Wu ).+yd|v!e"k%@SF{Nqy}mDXMJn M,IFsS<֍cKʒ'T4%d7vchzN+uI 4ЭiAƛZnzB6 hDEQ|!9` ӗokv?.cN Itd8bSdrAiYaS_J=(1L`ꕉjS^,W]_Q:I^4 _e_2"Y?QPG'c3_i=#[ΨkEzi %{[p6ٯe4T*G[npb L%Pux%;f(>Vy c=ҪP@K`g~8=K>~QDiTe@7-gY̊G)NȳVE)OTj,SF8²X }EkkfpvHD+&~cc,1L˿wxCl~S*o9a{*O_ >ٛ{tLC0m%c">6VSO2NZHM{$]%vWhLA{0gJ5^Mnc;mɣSi4!n~ s]=LQ$Af*7p&4*}myA J<2:0@%4ׁ`vy7G@\:KA:ccٳv>Ji,öF,P[{Sս!IO3=-w:2%̀ ~8NiQ(Gf.`n =]N.1kG$M_/sT\+&:V!,?^mͻ5~IK|TժkDK&Q* lwӑ=)m[ h.4di6#II@}MsNhK+2mm8uEϫ۾ lvK=o wWPA^8訜VXU3ox-Þ@Ξ\N6iCMđ#΃t9ԋz'0d<i QWj*֕x"b..&rV?? 1sdnDO)Ѯ}j2!6.鰩n0Xz7B1=RӠ 9=WP R2ܲ Z'΋S68z-E/{,$a#ǵdhO(tY["1Y 0m-B:l>IZ:ұ"Hn`3DX>A3%}JUmaj/ܹS]QHMu($ 'O%oR_A5jAɠ/\E{>y*DTDp#.~< /bpKy 4hfuĜӬQ]G[5)͗8=.|m5iOS+U#G>tE?~YcAЗzt7b5_QQ3ܝذ]q!>L{Vs[ܬ8OnoKLb^&Q&xEobE,(`' 2o-!E=,9ҁ)g?:p]|aX* kY2߶O1uLgSPx=`#")1Wcr2o`oD>!jwg1K<'eY%\av#vtmBA>Q&aa]4NG/T(/ 3M͡5>T†YjZ ƒK*G<61,R73ؽ,Aiu8sIWT--϶ 5'Ʋ:-ӓoDȳ{$@wdnnK}}SYKfSU_f-i$I`BxTdQMUL䣳c,yf(em c1ŒA7U¿"ӱ뀖=?`#n;fSs6a7A]=QJ\\;J|!ƆhpVt-su5Ʀ~GѧkQ3wk\b]jAb0Ҍ:N 4R}\.I&plf&F<#{!q2{#FR LC8XK,VZ$)UF!?sm@WSaR of♇Y;:uB%(='^Cw!CΣR4k \<Ơj]L'GLj:{iclTGᆿ31M%Jϊ;E}7xO'FvjEoHD!8kXڏ |3~פO̽9 p2μJW/^v1ו\bdϹ>]X4By&sw 9߆G@|l :V G&[?GND Mt:\a^H˼m`:W C>+yCZy`Fj1_'v9-,غ]A`Fܑi2x7Re5Kk1 s4%]ڝRrCd-R9]2et5C8 1Qԩ e*K'͍*g)a #i%ƖL)Ruc{{^5H2ר2gᵥMy=y-6J"[X x{~#ƑkƤ*-MR `~L}D6$fkSwC7T} Fp̕/5L-刡0wTQ0z: O{L@9sz4xwLU;%CĤT Y!f&V 筥J?zn#@Wv'd#ۍAZ%Nqg?hajdEsRVs0[%OnA VcqiZ"eyV{r Υ"{GT%<?&O6Љxa*Bez#mvF2،d< L=ZhWMΏo$B j{ A;t^0sVci3{C_4ܬzͣџo-SջW&-1q=ԾH\:QJ,Yai1ˉ4;js?01Mb9H:ӹFB'h~dOzLU+`pD4ׂ& 6N/XF[; 3>[TGnFE bឋ FIrmHC L*8٪q}HjQYɩاlwi*^- IP$G25uh )a^LtzײOI֎ wA~UV pxW'*47@ZK TI߅M ǘ#? Lt*Ľo _zSYDBŽ|ڲX}n wO6OU*><7&B3lŢEs?P{&Vmb|\F\):^vK[OV&EC5[PU,AVtأ#RHJL#0[unzQ,3]C ?Fu-. 3Sкk|3ZI>k1L쨲Z*t@OϛIh:J`mz#)pH-.lEyF*9CR!\HrK©)m ^n@1$1]3  l*na+ڛDhVKi6D*yp*X>sSh5Fe{ֺ9?<->urJZn2C:c0[ *DHnOOK5hΤa$_XpZEWmT&'>`jfo޻F!cFee.X-|_8gjVg.k8yneZI mT+tB9$Wd}t[}쩌<}/4Jͷ5;$Zz/1c3hВ)V 3Q:G6f g7rOj7XQ kst& ꨐ='b-h[ܘjX2'KΓ>:^9vAZy}>urb'U@ >b&821D!'#9pj*z9aφJ׾0}' X-ey3%& | u%ȥ##vj9qTM?}mJs#W›JA3n8ohեE\pׅsfEۃ01ykCRN)ٓX_ㆁ7Jex'6/̐4 RGj^ƱC+TO*#E8 3@q&ccdVfc銍6'DTdc9C1; Xi]:iBܨ*.GpI@7jA2ρN9a٩H%2bE,oM p|JC_f.f ڝ:Q*uEɯ*2 $9L x_ݨՕpr *2R"@T:ch$Dn? LO>ca</ 5`JR_}ȫہ)vY\ &٣LZ E63 !7J|# 4lkbk|~K)1yt_'tt AI,!{HxoY\qL%P4~&1=>ZHԐ>͹n'fyo~sz-!k)?A ~ I*I2 4gl4A`"%i2DWh͡Ru#fRP*f^Y'XA:%24*D[(;b),")ģvz`HRq ]2˄)nJulW<ຸCSj5NϗF)zV0eH0AfQd(lq-Gc{RUxp6?Ei=zW11A4~v!K zY~yR#ƶwxf0C<\J3MʇB&.A.kQ-].th2Q/vZf+. vU]Qͷ:B1p VY5rBy|Ӈ>:6LLEU>$oKeP.@L؁Owئm6bukb74 R`Ӈ߁ L#)Z&;{/u5([*ܡ4©wRxWK,{Dvx3R&|w-TSlMgʬ2M'e:2YN rT\&+W/ɬ؀ WmŅ$0r/a;BqxrxQ&$2P~rEArڗ%E8Lޏ{oߔ@`!- D.nXn5{ڛUE>O=廦zL1R5"|+CmqvBE>/p:[#;WeSN)B޳eC80F/Vd#l{JG[-ܧECHQ)-)QϘ.)K8CGD/e35C|T+(^26C!Р;8ֹ ^QaUĥfO(n^wWG3&x_2^5ΧWR,J/1T(ȯp4*N%RUw/1ePo6+yMB>d Jus ?Hk!UWCbBO_a>7^:52̳}1Ȉ_/}Z?Yu0kZ75ߏm%Nf6R}{d&OQ ڕRKˊ/J;ѮnLPL}8h*wɨg0 wx9AVp"4;w Cdå2J%9t]n}eSf5q n+KOʴ="Awmx h UrV`45qb^t{ha\ۚ?a7Y)SŬua,(_LRZDE?H[0u0Tuq?¸3']995v.g^Wt{8?ӊ TxE8TR%¤.12{VwKsI>";8Z'WKdPh鬤JE\z|R6ܘ¥OD_)N(rX v*A;DBܸYkyGwy,pkrUîJ=xEFcX@&SŗoIrvn"/D@_*ҵfHSaAuapP `|*=˓>U!+- /\j;F4hm/vHFk & e=N<0̄5quWk3GfY\PL<ܞ-n|u0HL615Ua~Zӏ-M8. ~Vyh",APrBC`=QRN+w"Hc3ّf"t7}5U5\<JrdtihQPnv kYWM~ee$Ѳ(JtiaBaeP(5f{I/nJ]d7pH'`7Ʉ~kb&sT6E9n \1qGaEV.F3!7)ȈW]9sE :gӎ `2Db)hP&J[,^*{}7wFv\Dĵy pmm< <]+g%ɭ'3\8: ]\;lqZ5,nF^$r "s>B J3)4q h[xOr"a"qiRF6ƥJ74mDEsFj l ?oul.Lm_)hq1IR4£ɑ S$nI|B>d;$q K=s-PBa U.?xIyHPخŠ,3mՐ(pr3zFCMf?G i.]P)_QRH߈$he?Bbkx#1=21 Պ}ɦpMM/+Јc%)4V*r,"HZ'$%JTQTru-S.a^&X*;ḋh+;A^)0QS@ &#|/ 4trzo\DHm憠Ξ<,;}`2 ڦthPWd&v=HFOKuGpkRE8!"N>M<gKfԤD$O0< ոK9Mx#m9- ;4["c`x~byt 0-oEFMcyň: 6̢Qء[,j wÒuL1d9>y> NJfqjf]SWsFE8- u+?LY,:(Bm'Dx\KOiQ"}-4r ϰ$ʛmKd25bbsXH3o_u.8lLq 'XUi^{Q )!'d9O;O5.N$_̕XEFx WQch K blrWB}_!]S49r\=RG8W^e?U\[I;D!CF2سFXsxÍZbp_bõ|D_:dH 8)_fDTYK0>[1͒L2 t`WRyR&$w}{]һ 86ɋž$Id' yR 6>^8D$ODc-yAd~>CmP;&a&f6VAH /4ۭȝWMK (B IB* n4Zhֻf=+$cZpj{L+&Y7ılqJn0zʀ0I}^3*(lT~ m֠M>1=8^P5ᙸ+Rʫ"RIԬDM,vT'Xu9='OKůuF)ϐIH2L$n�^κ%;#,9zoF)Po&(>@h.L=>Uca& ߫@p7}"ڳj;I꘳AAJZa;RC !]h\FDf0z/2ho ee'A!k~ Q1M'])sb,y[ Eb8TW@8M`p -[Ŕ vm/l97U5;k!̬B r7DuFVM+- TC {1(av\)*ͫ>H7r@uPз|Qx^e.)c¢ GS|t uy( \ _{M{Ԩޤ9ӹ;D;f숧\.٦XV =ѝMJH^M&@'ύd=q3Ju[Fw~cxeӁl~HBʠfȴ?U_ k^@4R=M=p[(";99'Rܨk2OxrY0_/__7|6 w_̖ܙpA&MaA6 7JdEF熌GF>sKs/<]TohYk=z{yM3AſUGX(Dur>/p(Z~®gz0qp H|VFUS9_]\®U i$T@#nPuQy#1wzlP[%I4Yqٮ|}KF!B\9YucfEsw} -[XwO.y68!})%?Bl\DS_xۗ }`lIdN|Գ uCW;XQ9JtIE|RǙZA.٩{t#&A3|8蛞2qy-0V3h`1xhXа5PjwSTSQs#cPMRhۻg `p]sd+bz@SJJ'p8mQ ?sG!2UvǂnrӒQ(M KH°}-3ÖWO⌜c ߃U3ғ7NbzKZ*<|ڌE ^""\d3NXһ(vUZ֌sNfACu L/*@ 3<gjeG5j+3??'>LX@\TWaMդ_i uGGY-iu_J IiZfHJߠc]n,<`ѭf;Q.Gmp'vUl|=QXJ&km/9T¤ʭYsF5f튨J*;Uhbw1BEB)gZE2Lvߥb"Iu4ј2JhNLk pggvyճ;aWBoUי"c_a[jL-iwfb\81)úP(':pVlO;y}?i,כC\}4A̺H xjׄ%g\rx PCMoٍpszcϖѐy`H ^Z1uHBVvXsIj ؼ`ɫmouwNS,$-g|4Bnn4.W.`,9XߐԚ1e5@sָ3J|%KNd3>##./4oԾOL) ){tk/z7\u 8Ω|@~g@xylOǵsjz;b%?Б!6=g)e`.AIGg 몗9Yspf%l,Cl'ޤ[GguO8(Cs{; ՃBY,R`Ul6fٳ+U` Pz70HRm=ON8;%RΪz? (RS8FT{ 9iTԶp} 6E@Y{P+\MD\UʌX;`D, oXIW VtAWk6x uMh'}MZPwO~tR9tk0Njk׌59ߍ#gwĚL8HhJrh$߷K2bčOF.5F,،rMf=FGG``8Fi7f`hΧeU߅F󖅞U,-^Й&7٪i6td[ͅ>͜s Z;Έ'%,JOPز<Gmsnqhj(zu$'?*K_ШfR:' ҫ(!9\ ޓo9ƞfHً:l+qcpb?X1dPOۙb=v,)D|2[/t+InF[6 A ^v Q=vxc֓f5\ ::T!\a2WYSͻ׮ ZՖZӸAʙ6?'_DSϣqD="[ U;a6Q\^';ژ\]L: -qa4\cAG/g̉DDxȾx(V})MVJ缳)Jr<(fB(FVl6OSERhღ` ݊S37e[k;iI5Z0^E+erK5T@{[d,u2FQ CpvO4:W~]ē3* >/ynviP1@:y[tIPeۜxQc$Š48!JO07kAo3MbtJ]^v6m3ʛ4,gehֶqgf݄J)KĠ{d:KT"Uu p}x!m9BM[dzڞB Na{|of.'VksLK%g.d8Sm_GՊC5ᶮhA" t>z]3qmo+ w,ec~t9yLFAT]~ǃj`-^\ 3 K,UXl@Za:"nw4g،D'&ן##:`3G MeSh Z *(u$ۧ_Or 3ĆYbհ$1R# DVc2q|. b#+5-׼FM읞[`1J&S@>ց(p Y_FJ*49D~5)3D'~>! U ȳIiP.u+rlXd݅֨2YUFB^:! SS $r[&]v2>6h9QLN]|DwxƘ4D:ڎ֝IA-:Qa#֠nw˩l‹H[ZaYxJJCA^;J|ZC?2 K%Ŵtjƺd;gHXq4dC=n a%q,HHg&35bzM0 &ŮY폠ڦl:itv 0.$-ꡙ;vBBܢQê jsikYm=chKܠ˒,jْǻ:Y_,׎0: n[83K;Aeu* :R mId#D|ْO:F57j$&2IFQ=68Qq?rMkHC;.TF {.}ȧJ#adpdp֚ &Xh>"#L')M\ `r _w(P ξ҇'[Gd~yQ:&{'Tej.8 \hF_)]22.߉34>~` cI ?b$ JTT2 z`lט4sI !clu!)1p z"C#,>zt&-녦 厷rÊ2y_92b+Hrh!'xe-ˌ @4 qloX ~q?(x@y,ڲUrJL5(T?҄ r! /e &GKRK ’*/=w\%Jp$pѹ$=yC>4s6=ǙXE*lT^|`J`a!>FڸByG¬uϓc?݋rBp6@o!Q$S>n䀽Y8(oIoPĴQʚZoB{쇪|=OLU.IW$_j-}xUeS-3;t&Id~=piT6Ѩ]r}XJ:T k};it4R/(B-,A]BzUtxM <Y 4*u]U)?zh .uPNTQP=֪Ƴ-zNN"AGbW+TH7jl%q+1Ofs+dUnZկÆWVaxSBʠKQ~c{pta;+#zKO|ny|kϜ($2b@ٰE"|ڞ{l\|2qY4jqo#y vbǙX쟞 ::u7f3tzr M I)j|A-fy[|6A_>iE ǹ %Uc63u&0Y9^}4IJ9%5˧Y䂁 W}&&&۶bNͷD@"Eqlℷw@?7' N=2"3Q#Fn}vw$T?c1lgǡ[y1\}|Uq0΂~\r 4pHj@Ȏ[z?\t/֖`R,`mܲёcKdLdFp+?^Xwauo\>qQ}-8ZLl9FB|.|qzʅ_r0\_(u~1gOy\ߥY]ZOqzy9{ oA)ٖC#Ŝ=hh/}ءPŘ1 I~`iNcIXY b<}?݊d5ehȻx="=W-#,r7)3u$Ǘw oiKw1[}|-ml;IHg*_*kpjԔjsċ1L O0O JX>$Gr;3,f=JJ@)Z/efd 3WKc5s - %Mഋ.v1}&?c}>ZF%Ε)a?cKh?v 2Mozu'3`7<-ho_t.9y宫DOrC9d-3Xk?'K$-t8Ԃ&b9XHy h _OZ{Y$;I1}N7xce]Ս8˒'gy|ὄKl1ZU^sl$G<\.!E3ֽkzPe(?-uUcNπ㓾c:BI-}))>h$5X 5tk6`%!6Td;Gߡs<]  8,oG!?Khmy|uJ.$m[,M2\GlZM"}drwg p @}eh7wHcT4/ &dz0QMl㍤QZZ5 7q5"w<).Ddi&ɀaiE CVe ~+A+ٞn o?DN h3!Yw[RbVJ` DVJ&L&0NkHaINeӕOpij481CH~cG=TgZĭYeMF*} ~z-? tVE}Lh_sQC?/ 0q?e*æW A*:@llu<$@i>㻒;9!عgֈD*[y/gl]pa@GsxTs>1Y`.Ś.GslI _4}xytEYyɝ #TۨU9,(Ɯ5{Bb*Eok mrvqSOqL[MәWO/(k YkSu nb_{WD.9'M'jEFԹxJM[ڬWλ@W[++zǂƨ iK&W"OQEP *M (܏5,0yݐ0uDbmt a&f P׽nJQy;Hӓ09 uD^{`,h 48[ea ~:O&q߲_۲(&Q8ކt*jb I/޵~8GsTQ WcRcFGu!Go<iy*go&z hMt%6n\Lt1vʩP>Vo[2( љ*zMj(r٢4^{ՇY"h)+!C8gd6Uυ5.K9I+рa1흜~BYqDͅGrM]ɏ=4 &9k<J񠄈LسzzHu >l14j5G+ѓRyc_0xLԺ_-;Z<2SHOx} bU1b̢$"?MYH6,rd^eycyhCe:}8>H\T|McP%OG%fKpl)4¿ @s|`pOXtgͲ-w>1@ Q0sx]h ș^o"J̋1; o] ǪU@J}g\o8SJ: ޛA5Wۢ%Oj4$+f0ev`-PRzZ5 w* RSeMĥ--/d;(G赼$ɒP-Nihֹ> BElv9ץK1z|y~K7KE#SXyG!ZRBoMnc`,(yqTȳΥS7 5`ч"l&&tL,5 99x|t szG_tgE0*LҐq BzB ߨRs*{&n vknà dؔf{V{L(铙֣2bv(VʇM,a l}Vz"3?` /g&yf {փOzտ@.Kv)Aff܄S,VЖiҪ@_M t8jK0N⇎`mڝ@'R-ZWt {x~x|ܝt3ZkY ] s\ˍXǢa'$}M>ê"n꯻oVcQ`clG%!86j9V 7&xpn~rN[NݙoImf &2 5'* (Qb12c]HsUVOwN,ۄƢe=TDpNqKōEÚۍ  &B37Kvmlbhe}Cl̼ﺞ4U7nau%%ⷿ`2WX&jlZsԅ}A u lHdۥlh2"FctE[ $?qFܦddjSǓ-Ԗ7GOA8ցb<`.q"k7 w*'cԞ=j$鳣tf3, E:%]CD>*7chN (V@6%[M?@]MGBs(b4uh*bڠ XKfƔ'R:+,JQ{mR:Y!QϚʩpxK44X6i61<_&凎21O.=Kyy,/NGeo28в},3cבTDݞ-:yYdC)~2:]%2…(N)~'=*ks>sgui'q{+&,H}[iNdle?khz]\"U^J^ԧӫQפ-j]*C 6oY!N'04UfN!B]n)Yy'%$)6GϔSfi +}p aǙaPes Iׄoa%Zi0ڋVO I2wAwU9Slsg/GㅞD x&gӝY'̃ HJ5yơ|]A|Xjh3˼NhY?Rik=rS.YiW zl>)RiDn"]$"3Q:t` [+)gTeFu>k[y}"aٟc&Zw1X|T?F-5<99gdly(+P!ӧ4 0_`g)|Wofru `G>o62=luw9fDeSM כw1k Շ'Yy"2s]n8Q1ݺA&Ab/=u7o~!#ܠ2KYDj9p_3oȢ(% ۟fn۴yC`pGCk#X*p}Ӥ:}m/Xt^\[]ZcK+¯缙 CT]h jrn!C I1r-G'<$J C7s8`Ib#^u~k*8iА|of0'z͟O/}%;Z6=I5^] a BYZʏP.y^&ɫ30Q߻WRѠxhjCkNxy=D8'=}L,?uS:0ԈL{U1MEvG|"5Q-1%g²MҴ=a~o#,@񱈑IWWP-&̹ei>.]I9AןQ::Y4Box.'CSú1u48L.3-a:[;HQCPt+ku=Z~3X&Ul-zFu4eU;fP, Mr`͢SsfkPS *% QYQ"O*RВ*n=E]UmH{zm_>fq2WiP*#AݞSrM]Z\VTB?Li@+E!;/t/:;Nrj\ 7`d{vB0 [Vz-8EϢ_G-e!5._<qY8gIb1ʊv夐Rٻ>*e~8`왼n@ٙfcv4q|zb8qy݈-0X[ưVwbkM`";و8Q IPNK_l[6䦙 l.0lu4n-Ɨi 2ki' oH%u00Cc+7]eL$PuѬts5nR$֕RN)YmY :K E"Jx=4JևUFk}@b`S6{-^4g*i*3ݽh׿of+LaIG w'1eRMc9KKOtYK@8b_}eu2~f~-0 H؟]?Q􊇈[!gR\{sU "N]h: /(d*EDI낃u.=oŵBQ CF8ϏCMUc.W5\Qj:ucE}ٞD5m~_MLs҅q]}`YG"Fis,s0eMhr=hL K; tYEK JfN]D_i2+Dh5UKS^e9r7wk0D G yt #CjVhG!}NJ3)\-N3c+}oy=`n,~Zm|KmQzۙQRSl gQsEzg$g%pUiK5Remy?.{ SC9\ bl+d!1y$, t%*><^Xo$XΎu{xpn$GXG N%ҒL E]p/>A ٕ&?q8ٮpē%dRtnFrltL6*T a\Ӝv& N/Sr:ܙdr+W$|Ƅcs",Na6X*㍚ȓ#DQ)g15r+[FE$nv 3.>-D7<6*( eJ]s.M> -/C!`^k|tS <ʟ'5]e^ k#g9n,*K4Ǹ['^"4 u5Pkf|BQ&|hdDa AuBPSw0|1ɠW'8e²2[.mw4{;Ex=`pB/u^ _}=FW] e(DHzWl1{%Y-0^:w iBy_Ȟ+l)C nfd[47AȆrN͏cc!( iPprIB31kܭ-F(fU{8-!ibT* [S͙Z눳cQzpXJ?SwગWFW^.lwX #}j}G{Y U1a@&WN]-4zj;|8 EE#7:`_d:~;-Jnr4 ㍃_}+*-_DZ쟆[6NM/8XTJI ި6ΐ|-dbHPן&j͘)d*Y'P rp|H(\ ٍ+q'V.VkFI!@ҝ}&I]f90XUop|kݙCId aDD%WGmBLpD)l~t.K6l;TRuҟdvw) Rμ]a!|g{_sX`dl7 HHE!Ub6Eq,>ل㙧p<C4lϐ5q⏻pZ a`( h*C/싧'!$gVTɥ m(==4G'?ΌԦ mil$ NsK c Cu ioF]4oJT@岏)F͆-AX@Es\R"!d'Wùn_<\wn/}3)PL&Q?r2&j(1F}&&Sac2lhf.bne.' AGA0ϋB,^_:G%=I^0̏Kc*t{ >]}XL͟ǯrҼxlQ14Jޙl6F?/T>c B{ϓ1ma DXx¸?i2n-ȈJt {'H1dcJN( 4poJ{b2ȳMi$'~gDk5:Q{8{| ˶0dp6XA`bjߴIr!wԕjԓ<>KTTlۣPZ>iI\xȒ/[ψp"i 9J 7]7 " 7-Lrڝzv:'+Jjkjn\o9)P9+I?Nns®!zKHh$}B$`vñ!D~ 57@ T߶.V,8nՖmFa(I Ψ%f-!t m#x}BlHMM6fݍR"fO0Cƙ(J'E,Gw8vF3Z&+t sR> ]_~;[0dn`e]de,fXr-ӂu!]3TaJe2EhKsBዌTQ-LR7]>bZSȬtzy-\+<TgՉL1=?T #Uj^{Ԧ{pm~M L*Zp^o{QYW?ݨ΍[j9S>,.\ϣ .RQĘ,P!67e1m=Xj,8+~ uB)&Qe&VP3:zۗe9%yCK*x\xQ|!#mgYژzMƾX!2A:d/g|. jՑyeM.K̷`nM 6PA-|lE)~i\^ESAqnk+NM_>]x0‰Wiq;[Q έ܄X4}y H k\ ɵj8t譅V9 'SپA,czh2y9DvZcEv Z ֩9(8N@9pl,# [|B*3L_<)b$swZ?Bq=A=~x!l~O]ecM fu^Ȯtsr .bFs,ls'6O5DĆN3\TfkCr+M?fsţRG8jP(VoxP5V H=HKI/ YǝORJDt} 8 bJa}G;!@iq0c^fb0X FsbRP?Ŕt&z:Qk9_$t8;3$D$ T,JU>`Ȼ8ؕluDKt>4qNxJ >"|xI xAr*fhwAj-w!'3ʲf'-^m<SbS(7Ǩ*Fl  B!$|V 6B ":d+K\>E]<_O9LB=6sp81V1I8ƉRZ WEB8ӓx 7@(JJQ[+ 汆. HsWZr$",Z)b(pϮid[.⍍Ǘ2=Ɏʅ`?mXBLV?]m b"%+_ˇ paQZף_QS BV-ìn SlFOڱA8,.6yE+ R(t(;аmY~ f FzT6Loy 8P^(GtoX TԙNl7ܭ x'P8儷%a;/#"]]e" $Y443!Ձb=:Pwhӱ2ܘRf.d飻W7T }QUOS0upd_|~ or^c,oXOJRz- H ;*,u?Wo7;h㋳_)T GG1YGLi9]5܂nd _;QB[L-3̈́. \Iv p%=yhy_ %tPڳsݨ4Hu_.ManU@,Ruy 1U"hkG0V[#^,ʒÕ [*3}d:xŏSϼhd 2\F#e'`it(`¿ͼΏXæ.b<֜v'*i7׸Du2v\~Z^+"BJҾ[T=.p&iLX=OmkH& nWgnTY!DZE8"MY'\俓Bb3`/`<ޢN>/P`~Ź>ҒBŖϰ,|>ភկU=84f 2^lSM``HJpn8 l7:Y !-ߒ;leORXKRǭN%&α ཹ-l>ymyO&KQ8yhޘ:P}ϜIȉXTʉ*Wm#ڒz03MV@h" ,ERW 1/Fv[ƘlE-JV'ic]&"#;WE__SfRtxbxBJ?r`~vd(56֡{|~nu1#aj5Вņx1;;2C=g߻iڤNW$\2QF[k[;ޥ,@TU`0MȤ|^ >ws9f^w?2o}dE_3NU~ cʴxqH*iZ>"?oN99[ܦ,H6HWq6iW|{i#~D'}d3Q5ܙ!iƱ50 Btc#譒"d.9zq^H1AvghH0Xyu: ȋ!v ʑRFZP@;IgV#}L_/2Ӣ5ډWh֥oo.E3hR9UFB ĉEYkۑ B,}ҹ0L6'wz>ۂ̏#@Gg=E@HmSۧسGFzU间^ueKobE!5Z0#AJv@Nŷ@Malfl=}PPe9ᕩ3Ï5XՍ$ _QZ8#XK[j?AzA(l["V lS,0[92$xko{5c2hSH8ά GG?TƬpP/(A*, 1S,dZpeMh0ira-@3Ezo#!NVddĮ^W舗wG+=9"U ,݁°kvPT'vrCFLom.7Io3 RB!>HmI*jRi_fߚ{]Gþ)Wڷ$$ADv3llJZw?з=ە=5+؈_ r**ͻKQؠblKbaџ}*$.fhkBJjHUkc{I>CD@֟S[p =DG-5ưDv(mt"c,Tj 1(R12zbgX f|r&V E`S̍-Q}*Gt8mlzp{Wu M;(/Q)P 2:uH0\*bɹT/S 5uF F#29ϺM>% :- U6ٟ`Z0doZZmV Uprb_kR!0jƆ3r~sd"df2pE<뗆b"# ɩֽֿGXLߚU Hd0ܮ/VIhcLVH<;AdKSEM<<}6!A+BvkVްI0*ZSSjyCk8E} A''ukV.1TC{/3_x/y?P6v$#/s A[<fuf>4 K!N:8h$:iu5D[1b\u+|,X&BeO#1kOΎN /練x:68r➸>,=@i 1mSZgG8V!5 CP%6RdqsMvX`QDWj'٥"Ⱦ3>CDIY>RP?~tfk KRX'+*@ ـ^D ɑK"K_T- b!}5^BJ}aNPEFn_SSc$c w$tx4Ş論Іa@4G@"<ˍ'>7Q\kI( R'B_sW䏩^ncH A +GSW+PꐥlM;~O6 f#ΤdC6kIux czf «4D^:`86zX4wT}+ `_~%ڍM,, f|'k"+2*BPc4%!# y?􊓸Bc.FLRP%ĪX<3-S溯2B2i4XilEf``ޢaeѝixG(w!JBtZ)DQ]LFFd WE Ӆ k̫W;L0iċl;KB!b[?YjB8^ 228˷?u'2])2mڇ[bD=@:XDzs'K 0:t 5!R>2x5pc>&F  CdIڗӆ EN1f zoPD`{gKpsnQv摚:%E 0™=9]L_sTC7zcz?7^Rg6G?ʗg}(m/n9EQ /h2cvNT!*|+ ?K9CIc3ޠJ r7@'[K:vdU?)PŅjŐAESJ>Y~@oT0pxZ] ]߼!]AFV0Xaki5 rD|l2_ɫ!Ar>QӦ} q=/c??1'¨fƙ;܆gUdb _ qfQ~D*n/-~WeNBM7D:k{I8JګEe=Jqzs@~9#_&~wR16OD[/+3Ь[(* mW2jp Bog&_݄1[K"4 劸ءoR w0>2Ir磵qDE_$]w?iw9)Ōo/٥kc`եġCQP<"5SB ِ sy2r3dZWw*K@7gl $ih,z .*&3Wo|@"Ek󲤚)mh(烰6{_k"4+:CE](ZS"" [@ux8bi ǠERD  Y48ٚx0٦\e '4nf :frt}~9!ߥ كIJ˗27~D  #B/I U͓]o 3/~u` 죗䍃d0]] 2w̬X;7jN+Wo直_ [Uŏ3 GbTrI6 e3׸1? x/5urE ќ,fYݶS\"<}<<{c6$K+X|c!Ͷ`AvurxSxSe?T&/3g ҦO%o8wؑcF\av9lsNސn5Q҃b̲yY\yq].B .@7<7Tq^y&<[^!)F 8?8>K]ɊXHK@ekyPJ \i!IP^3WŁ. x|?j)84 q%R3Ӯ7`M9 u͹x*2o| ϫ#Jlnmi(3e:Pol~'X!~A_V`5kFLqȑz=A4a*3oWmTX9Yßg )QRT=ِ 6tV=lЫ+ MHz.Z+]Zv6G|>|n)A4LO "vy= t 0g,BAA˵َK[guŧnk$ǠS5Wܘe<8qA Ô[,5 x'ܖ߄KEc>u[!vօV)ؚ~1{l҈D;-O,r*(%TQD3/B4j66;?'ՈjbSic | fۿ_K1%ϧƔy(HEl9aH ʹXiw%u5*a?pdmH;[gһ&6B0rQ'1 =޶dQ5%{oC_5Џ^D^PZ 3lDk3 7yz %xAۏ`;Q * Hrd=ihd9]t\x%7Vɦ3WO= AJKoy(CN %-ǵցjְVņ@.>`DdɖeqI.˄Xc@y LޒKi%Shcl1>c7!,ƴ/:^ V Kp4g); u .IQ_=E`QWTWڸ g%oEZ`s ~sFe]WIR ɧ0_FQ'Exћv0}RU2\K᧤zUM)GrH}A9 3beS ^sV (mj]O8b'k H m}_xרzpHV^ul@h%o&rۈ@ ^"O* qك;G95+@0&pjҊUӫwscgrRن۹fTņ4]Jk?ӫ6#ƷL_V\5#ojUOIS^jv|8j<;Mdp> SL=& I!&x=ѩtkz]nTZh#Kh66wK(~ӝS|cD*| 9Yp5[zr9 D9h"x AsE4:}QOV4^ڤR!b}L[1hZ셩qb! 4prvĚh foK)z—gVH^M;Tce[Sƅ3b6ɞg[ ]n"ިTbm 5dϟiUy@ =BM~-L1cJ^1|ư=`4.XCZNT?PXSH"pQ˺X+1hǁ9-޼ږvCtrք)-xĢsqÊ\kqY r+`oLDrL ^9UZi?9Znh2MoޯTm0j^X}QOIr'}9${F,9R->%N@<7&ެ\')r:vhULܸr͎PcVE}SƙG`CA'AJA/^d2b^!ln"]vYs籢Ogo[|gF5%g@O6AsXPUFG+\wa(CոRꚜ@~joaʷo㔰<n>t}.Ø-AfN\"8lV (OuaEFB&KzV?ĜވIpv>XXl<J0f߹/Bk/X$)Ղy|{|8Ld/uťu,9nE(UHQ֚2̸jG>*T*!LƼJjR)GT"{+XCޥjˆ]Vqs=z %4+g)#n=y/s0p&H &+*0m@z/x#[^?̑_Ng{[KIU6wW#%[;( E1i35.( 5nrFePqi:TC)2:#f ,{e*xn־#h[$7־G\@.na{Z0&q{wK{K]u6+s]eSYoMx#w<}z}}6g} 7YC{ ]B ,Vh 5J˸:1T(u촟AAr3exG6<3WHaB*`;@5i`2nB$,+s; N;UKytDF0tW(Om u؛T(E,lrwT ݵjS'Shp*X]+bދ7[{[@+= E8/LЙXewڻ07ϭ1=Vh [:+G%zO]R@[/sֳw@ Q_.5MbS$}:X0xXnXrΜ9mD$deq;I]^OJߤ.mk%́x,WP$w9|:z}̱)/nT= ż&$W"vpTvv }M4-]'Z=l:)Ş[Z`6W;72>D)Y3VfbMXco>;Y3" A?dLSve'g&ψhv` l>9lOuk-rhgj+) z1K(O@Zc.@*O훸fD`17])dX>pnht cjZdzC#lC]ÝJXW7=&ƾį,mlsi yJrl~y o1ԍOA$G2rRx9(שmҴo.)i> `y|**EzB >锔mW,;-7qXUlЋ= _h[8˵ F0=YsY;oE\/Qf/B!P+#u(f<%gY*͉P@;,2k{ <{jO%Dsi߆¦0L{K:s`Bbp)_04s[D΂{Y Lj%o;yH5ԅOm;F'1OO׵ܿ0)۲D)IrvѮ^rYR1fWj2$D/',YYT|wcI:!2\ Vwڬ:/R=m4ߩ5?/gz.'ƈ7i˓x3yE l}@cخ;+sɮ"iJG) S"5/d:?i^7{ꏅbi&>w㴯x[&i6- j#vn[߭dj!d],YBG"ʚ0K!؜@'ٗKp`Gf#1 d "q0AGզ0F85r7fOIj|8K*'~3C=5F'eW\ Zk"!\L`|+*Pń:+O=[[*WՐѤ }7ȥη5E-߻.8C(텗?H^ײM A%j ToU Bռa҅NMM1~6CeL v$/+Q^=Nzf5F6*V5dr@]֓@ /+5Ҹ.hv%:<_EҌaD94JΙTЧ= ӄw{)_*o.#S=J'L;N &YZ:})OCSD?= (nV_؉B78!_J,AEOe ۳6:AMᓔԬҕoT=' ntxm;t%3zBqu/0JӝK]d%nL c! WNuQv*/U<[Bk`̝2yKj^{`]`gـLfYYLe( ;uz,dջm TZ,gJ|lS x 7\GFWjcDÞȁ7j:h:ZfHG:vj=~9wAA1-E[wvƠ2GCO 3}^%fgu B:gY(&G =G4p~@4_^{3;L[_,;Ei渫juSv;RGXtƚLpy/Z'^?lB riΠ(]$ [ss0ٽ ḻ!AJ y<#("7Le)o©3VLcۚmѤQuȧPk.cj۠h_QH4mԊo>~Kޒ>NXbNHSErxTկ`5!(yӮ}dV|T>Qzh|=IaXCkjVOyC Oo(o*9r˜!Q[WX&v#5Iy8̵|:ijh#X)mQMПPNx*mfQH6e2iHb-_@J ~xwXzuXlWyZ@D,y~ԨH oS$IiaZ19x/׋M kCn04?avtDn_+GaH;,Q;D%H e@V9ֆˠř '{ <,|E/飇0,{VԷ<77bO~F 'yv0_-V`({d"\ߩ l-|3Mw+8_GhNQj+iE~ɲ^pܓiV!t#BA 1DkآL>L]p*44.N +N< !Ma'cv_M߼ÉHo'냷Y*R 쎉/9e_`i/.i&9/>g}5 fʘO+ˀGcw_gFӏd¥y%tGx1;KȄ/EM`!' Yz}Σ>K>Q3F쌝X7>^d@dp(=&bD Z>qە3ݓP_9zћFҸ6_}la*ihmEbAr0qQ;)#1BwwU2Zj\9jdB: b$GyC@@ vdM+OmZ}qPEzzQ̣Ѹ4ĭ"yۻ`ltA}L8ZpgejmQEŖ7yeA:Y o~Ѹh\ F m} s֍G5\njbk MjoitgZm@icL vA+M2KR֓Lf22#9JT"]{A+S9%A`M vO)ȓV|u7# Iז;UK?"٥{42Τ* 4n֐'U9]Cǒ]OJTr{z fZb+hIB9G3m -홏a=( t_G^XW"J|%&/!MIo{(d dzcLW{eBW~C7:&ѿT\S %Ta+7cgn 2u3UUUE. ĻZU2R9mdYP=K p\$?l9RM,#pX2^^Ytgv1vISD(Hi Qe>O=H]^t[υvkw AqaمLuU?a<K׬e걬(6e_Wi$mǸ&֙cf:AXWԴ ٔ#6@0*y:-jٚ;hޣ:t5HsulkzV͚X3yWVa7Ùf"%Ͷd3W䎭ҟp ˞v)JQ9/ܲplYk+cu$W# &W&Z"⁰õ6Zo&^y͊Yx4joDy}kcou-"^=6;b^nnnWc ><4@ÅYQl_f5Pzs¿dAH)OJLPMG~Z{JPK<<6'.j$ֺ B|vyAe@Cj Y)Z]<j]ԓ=?WSbATVb^sC㻘>&*/K ^f]]W?Ս&،9VFpQY $4/53|ֱ?TZM~\ȫs v,gg!`gN_c8!+T~?*h!,wP%٘+A :סK1 nH|,'&RFT.å!*&QoQim^l2Y*mUDu1Tk^I5`;Zп7^ƻz8%0j\2QF3*=Eg ە{C|h,K 5H6$9wI(Xm9:dQ+?w]kSa@p"ݻްY f'1`bzc1S>YB|,Les22[! [fs%vhxyɇ)f&վ6@i.,_yNXOZ04b[H}]J!«Sڶ>@Z*\Dj'v|l_o*gw.Xz0}EFu 2CsQNH* |9mBOӫa;`Cad_hR Cgd'fqpL:ح ed| ?Sr8c>&xo ½|͚Wc#X,M ::>V9 YH*zsKi=?m@9ĽpTXn"dH47n 9?Udd_ G}ٰ~]Aq s5al""!ʉ(VX̆dL)ɚKZ_N\,,$2CZ~!r97גR$nyOI 6ܠOl**raǼCzCмrlsH{E'o^=B*zl OY]9벊YDoA)NH $vvp jX|Qt ԁ ,v.JNߥ=>NW΂'pcd~w(c;~ b Uqք()W$IA}SxBCStX\{% NJ7mc ҰUHمt0P63Rv7z,/i!M Z૕)WWcρ҆XdXɋ:楣_ ӫJql1tG܃3r?wVпYQJȃJjDYr5;x[q8dϰFS:㔽B<Սt8/uS 6Db̂ɕM6َ(!T#Aka"[&ݦ; L*É@:nvϢSZgDƥ$ (z-kQ=d!h kV:k5 gCQ[-O֡_qopǐ.u6G$)] *`Ԋʹs2feOൊ ȊK:ۃJ 'qΚ_IX<tĭ;2?#%q;3'mh }@ըbӹ}樤n`(?%<"jdyH؊ K1©*hJG;,(i7yRk-a뷘;x1"%?`rwC/!k;*9.0G+ffl sy[͠S>[XWԍRi[[3bJCFnL= &*4Zb:l+M{[qeH@CY}OgmH̺]~CvT?p݀L-1 C{%ޥA}))L0 O]ـȵ1nZr%П@7ኛOK2|4`R,)hU0W/?>SWeXt CtoPC#QB ݪd<%DG㠩&cQiQpvs+t r-Fʫer\+<|}풂5D„ voԜrIqYNY0x%TP@5P[mdTw3nLZHid"31&a8_UFDpgo HE MBP78U8*sQ?r]W!cbe07`+RAK~Cn;ǘ Mc%V ŷo +z"%~G<~9ᆠ;DRWòvBg?-sb]uIwx` -2J'}VI˓n#aI&y{Z4n29yLjT0~ :o๖7O0@{,EUb*LJ~y˔tK0{e~A2;CK(!+l0Lg<:Ž]98sZ NwN1T3* Z{ Do@P W:{|AO-E`N>SbXW ZE`ĴU_8=;>5#gSlTzm><`]Szah3rg ÊprvW܈KZ?A cwŕ=O9x e,c5L #4jmN0ɵGS)Wn犐X #pqiEH|`i܆|2fߤ |?tGuD%`"xLm\Pu&Թl/'$>{5Bi:s ?>ɢWXxUSQpJs4)H>5:X*յu`Lq{9ph݆͢ \Β1n5.6_6j&%}bK`%Ut g$h,5 =~8H,nuhHT0?m="Fxݛj(vYG~o836iPف9\XہT\{~l.)0?]@4I;Uq\!21qn_HA,l"kPԐc̡L^W>28siۚW@u*;%?zv=/=#[a.߳P=B/֟Ea^l͎j:\yDz ]2ۼPOΒmsM@-'+k!J~8p &Љ8MZ (oר;?F +/#)ydON;a"R>wwtf: ~awd+LIcNMbuJ])gzcOJ w daӇXL@v0&b U2~yX_M) ALK{Pi$qb%+L~+.Е~kzrZCBiraA.՚D k< >x?~˜ʶMMt@O$=w?9D Mn+:Dm sj1w VmPe)FmU*}d$ˣV\bg)1󅴥Jb!olr?C)ܭx̧)$} `up{}p-$E7@oe^&gZK! ;bR#Ǿֺ+ٌDn2X~0o9o%(!`G@7T>盱heze0ZCž0mݛdye#wk//c͙] 7kj&͸I_y hF欼4:c&gS!O5p"8(f\;*MEGh1ɱX`?̕ BϋtiMM|Ù2j%E~6Nj |-D V.7b~rLJi?1 UJLX',%S"fCVۧGZ1;.+"`&X |E-ڜg*8ƏL,+ E յe<.sA*jQaS1[!!-#R*u+M,ܷԐ8GDaX ;)a`7 zDs}ݔrŭ1!௭'0avH]9cّ'vu`m[QYb\`."vّlZ7"rTƐW{,pu㶤EQƦ84RfoE|CBsE9,Vp =|j=D*Ano{*lPH3oZ3H5vL 78^\oTQxq-ݍv(5qC18oh;oRb`)g`o9{.qh8Jvy;봑u ӆQ.Pc +P[Q{wxB(1/j$蹛 cԪӂ^CXzg/Ep/^[W7,N^Nj|0pH҅('8AAݩ4dkrkDqu,@aSS ]NHPߪ?%Tw "t)rf;!ű^W0BVڬ_xߌ>qPNc1Ljo3{/Tp4C^SWpFdqp_ҁ(q8Vgmb](4s%&)]t-hۻ4@~%uTmA%'B;S { ˈ\Q5v[۟DYl>#!!@ ͘ox*XIarUXa1 ^r]tE$HzQ:29:ӌ<۾F95fN^`557 4SHP ط_M@?쯳T1C-ovS* @υ16cΫ(Ry?Ĝ>cx94u.\x~C['`3)̯EsʇQw;؜® 5,(c,6&!O%ĵ@i9\e秲,S +qaAu5$tW#ߋe%^SЇ[ ]SRa)ҀkOJ`$7t=o{_bb@Ԅ9Aݛ]Tk_4/;KF2ϊ;Ċ-7 q`/i,p8QlGH)c~2}-U0+Djαҥ}mL*5fݍHӐ$,*k/"Dq| @~D qƈ}^W01Iکx+1ak"Jl>DH17ՍWI q塚ۭe[2\.ajGξC;VB1\RՃV*laL2bU49@:. u uI :78앣L-g@ ,oU|Zz2 B(OVegt-,W>tQZ-ΨT61T'DbZKi <3dr 8~~uDvMzjk Q^8ȮYyu^ѕn*/C5[SZ~hjm3GٹɫN ;^>|pu K/r$MB%xqe3yד-򨝑֯T>&{mwG(B""Uc~Y٧]jP i$S0,ئMc,m&  :k:$6-71[7SA^,݆h}bʖv/FEeۮ[hK:f=yl`}G]]S<7Bpyi79ᏹA j\A!Hxahz!YVtl-KDт~m~ϦPl"q{h5,%ԕڶSd . 1$4/sI5@gybZ~F]_ "!XCQbbE~1X Yg1*YHAdKCSt,iXM/+&5]or(FUH) ;@GRxōɻFw{#ZEo"u\sipԶ!g>{a r}eW?mx=(e^Ahѽ*JEF*dL14NS"1ygwҷZN,/6ӎV\$*Z=\ȏam!qiwo$^=b.S5:!9X D$j#N*]A@U]eW#WU'9ZwP85nNg/(;-Onr;iu@Ui4ӧ,!s5܁w"îT%`ݤ`g`Z8ԥ^4B}WGz /J&H=̼,Uk0^W:a~ [gT Ftob[3rAXMۻ-YEfzu`L{V1f !+Ǜ|?Zkf4奀y=Ůsײq+dh XpXR x %mM$3о٩r[*c/v O]Ӡ(3GW~4vv[M V-ΧMpIj-pa1>s~'A;>F4ڙZx'z9qڇ]ϵPco]nnD C_{re|Zh,OӦ}*4I+ LsUrB{G>>vMr*#${S-xE`kk{n@JFf3NWN 1I0 ch]ЍeGAޛzf#}yz;!(XAyH]\P{mJ񿙵{odc+xn@\JMAȼTM;oRe~!_1Nm~\kGM\%IEwlm{ݯ.bP1F'9\erl^'VG= ."B8q?Ӂix׫R:Dr(^89dZ]$2 u韑}ǩԼ2A s_v"YV$J}ͱk4me(&PfZBmus6Q|*~|I<Kbcrn Qހե:õn;jn]_+64BZeV+z+2™d OO;U7!53- HK. vͽfFж{M?|&[ cV@}e"h؊j@7`>wQkV[KqrxvL1)B!EGd=3MQm`&VjT}i eGuTܞr`SiUʄ~LLhJ#o5JɁKJtR:k{Q5v<ã˼s~/-[BjC)Qjᰧ<_`u"nxf!;d x9RCby)|:!yjvg 6/iXY2aqڋ|>_=3Oѥ?TU`eS>>"c~e5a9_.V#=h[<'CL$s=/p"rRocZq{0y6YیcDAJy}aysoss)Smz35&ſ6vT:+gU^܋s=j{=x_M r#1=s(td @Rؘf,C^E{~ < VRuEm!{7sV0q9C3ig޴VVPܹ]_P[gGܩ!2ّCyX6{bȣ:zz~aƞFRzF^v=̄?`wta4߸#<ɹKȏa$"x13|b<ݥTRh=rgs|=bry j\uZ>b]f2q"&؁$ ;U,)/'!1BO#W#QK[ s8!(bXhFUf";Bh8/o5Tigs)ǰRa:~Pl(ߒiHA-.g)!32H+O֏.C\sp$`Fv(\p# {s~qNӽMA}gé QdDue$Y?T$4썿N|һ55wJѶIEn+sŜ8Px`Èi2U-z&twCM7tBGʊ4ʆv'hJȭEA+|v.%#\Y2jUv +?7+'>؁iDxO`gh)xK7rzf4v LQW; p=8:I&SA\4 d>t@<+0yDtRq.[ԗYBHi2.@{#b1dO4#Z ]Ht P IfQa,,S$%ڵ/2Jx>h@ͣ^F#:2doLvo5%W>\LܴQun#ŧnޛdXa\nc@+ut^8BEO`Ŗ7Zg" >C#7aX,[;:¼+?qGw_AZqvCY)ퟴD,>1tLH!1!JUIߚZyؗaLh.wU eaĤ:F $=r z練8k'hBz?H7=+|YHm HSƨZo\Y*̒.UN_U-0{bdsD[9CO41M$Lʼ"JpG%E!J/yz8?#Nda•VJ.L- ?/PΞr9ԉvDMof EǕ7*uԲ {KTp,]N_p*v4m^](:M(#Yàç6 '5n޿ zx!U2jhs7$@%><[cx(=zÇol(a †0HjA$ћ=d .GrA"*/o L.t+cc Q>D8P24@AT-LJs*bʴ<WG .!n;B=n)UzM᥌*>;U304H/Cκ"H(2Sq76MGlTL~}ٳՓz5]* YOnrLvlE{Nޞ8zuAV[ ($ETPẃh4ɤ]]4Fу<< ` TӒX7nFJFI~x'.7:7>4S]K@ռfN땉;J)Ѵ-;+'xbLn!xtI;|Ur\,(T2aÚt8Co{v89?v,v$%5߲\|nKhlTT`gҋteo>u50xA8t{@E#;CBZ>r}sHoߊRMa5Xi݌RXFu(A}ssrQq [ÿ%k niط\ynj%lKcU֯NoS? vrk+Ч,1:NRES8q 5`各IoN0`zG,`Vj:t܀\)|:q?3*iN)F0 a̼:3y{Dn }beiW@5$&B%x;?ɘ%U0 9,q;*9 c$GxVٯBA lΧ2 R;2u2 Ϸq?w%6ݩG#x"F4`zseݱIώV]E"Cte191 /Bum/؝ۨzUg"0-,y5pO^F8:qj(TNlV ܘ^!0 YB7J)UPo`Q7t&xÑ7d y3;g)9y{@nrӔHz>CUMqGmݍu=)҇)^껬-) WxhEku+?G9W?̭-&Zl—06n詸 vR9~*yM{T/8&"tW`` i`Dh Ǵ;*B.B>;v*U~hs(l,}er΄,`aKjOO-hwz0JЛJ^Ȧ*u݆cq[;hn8{qk7ZD.P]wGJ lsJX`E@:;{ 5,djͭ*H:bYGvdVcH# XH3YyAN޹'of0]"jdv}^({6r6 8j:ϴ;D}} WXY;@yv[ùGͥ6"g _ ]V N&|;qW!#hO#_P.~${> Pݎ>!d .14yh60t}ϕs#2g~_eݤxRvLgA52*:ճm 7M{?uwpQ.brUwU#ezLXUxk&0!w1K*zOpK=į@JW]a|,\: cv,0 =zk›W&X@{S=5yeϨ@QQjFJs dM[$Ľ;bYNhO,l^Rc~_m KI?rM)2-1M:v"1:n{`4L.jEw&G/a$ vzF!=- =p!dc/C+g*y"#%Ypkճ#*Ja;a F:4yAomʓlGIW"`o~TNFje;È'\g]4z3x/v x$f&w0Jnq+"m3`p;_*rcد]) v _nT`xh֍ 6zbgs3}QcEeCﶩmޚ ΀͵7Cc`P vLÂ|jKע!+.n/A: bkٓM˓X6Y齽E/*OQ)t%bZVz ;T9ɑ⤪O,:t=TøQOha-#x2H&e HtV+tX7vTdK)X*5 Hզjx3 M223dEc0 !1;JxBD53]-̅mR[s)(STb+!h#h؜)F7m{-t]1NzDT֮JӬ], [+S|+*E.A:6#8M7 x*̒~Z_ 4{:5>qc+R⡑xձMb%@"zɦCH*ijE'kTk6S3$Tߙ 5څi}T,u9^;,V0 B-/xv{̨t-\|fC]L`!90EVpʃtaUATk<.QG4 7l2:I ʐP_`-].j@#tZ nu~2Ê6S Yy;2e-%܃3o|74hDaN&jW !|wUxSQ!Ϣɜ/P<ߢD#D|NjM/²qVt&$#ewmd) M&p0H\E[8"0 fQ ݺ&8SOeoOTʂu[)4kiգIKD\(z~&X+N)-MFQrvN"t}9pχ75 䚅d3WMER;" " &qڄ~p+FICģDàY7@Jl>.e_Z=.L-qI2$_|" &ըyzCnvK^|wLva튕tzRtd8DdtdLp)jxxV\("/ 0bU!P<|}^9Jeniq{2u_O7Fp,GD2*ԗO 4wfŊp&Oűw@p7c'^"ay/ZELhq:!%CQh&Pn`/ ^xD1c >-LtîPs*o#sw{k |MCêfkL I[hZmhl=nJbaC{@âZȅѰdS*t}|HF'.)P{*-zZNڶmvCB/->я) :(Qds6N$E9{ ְA±`hQ2F9 !cҋ=Z0B"vPܔ¢*gdGjѽ؄-(&^}.(ahY8xc`jT94D F,T>8?]gYOP1qnD1^O4Wzi輚 (څvBKx*V:#ۺ# .IS'aˮ0 lQx=`̡Xm5l7g(I OЮsaW;f[ca Sޤ1IE^R= 1TZe[t5 Ŭ/(2/1I$,O,& <ا.<=M`vҫ'9}):.u{oڏy-^8?,J3 AeD8;/$#&vE/,QJ)gV|2(0!$I3Woap%TsxH'{!P K80b>b_}z:V_I0qک)J4J5J .%?JonI6=|[m¥lS˱A?'fjEsr1k/Ady#%J,/il{׷J#W17횬~B {b2x+ z ݕ/Nq.ͣԚ/\,=^0 H"1&F݀F@i]d#cˢ9?<u%n:_2w\Р=ZzEXMI bԂE z'-(COT`jr1Y*gd1v?vjy+0QAEuڅ\s+ 'Ai$LB-Z :vkk6ʾؗ ܎iKT!K^`u0OIJZ%^J2ܻFڀ$YsX?lТc #'JcgnneզU$}=B:?} 6G%n"pI8!^Lq]KCh2 W>!SlL9ڌ?n|!9Wb;`SzP휄g'W>;0uqpY\4riw`@`"# M`AG ,3CS{;?1 J/]e "+8] !*hxDtC+[G,i=Svή`953ޝ@NOv;؍ql缢EuLR*mUPR+4+c8-  %|9m @  wS"K.GR-uN &oਇ) ޒDNN|ɔF>Nt/q\Tvht#f5UM{r&'lY]/DfЌnG/߮} 7l%"qx(qcCk K$X4%ӏkltQWF`\^c̀G0nQ֞!Z7u@ni%CR6U:%Z#`ykjćRPVpIƗHKH^w$Ѷc~I0;ӳZʫtkMh` >3j K o=ef!f[Y{hEg36 $FF+Mhcg5w?B)N*S#S^MDO K璹Qƙ "~gtТ3з6.!0fT#nbSCK Q pP "eGD|հl=Tz+j&. "VՐju.2p/ 8hR{K\B9(Ҽe`r;Eh l4:3'-!ՔۚA.%NLR)J<pqlJ;y~߄WNR>d V^ȤRF9 Nlhtݱ&FռH]zb+&ĪVǽF1Er3SQ'vW||u炝(,(fa9YͰT~\ 8E^;Rn¿,i]d3SqB3И koEKّ׮#-$5:P#&9׹U,-יJ].dF`In /ri.bUl&7CfSI|}Mk/H꾡ffa"r z Nrs{a8HɤpBdz|ʋ %Kf}%禓M'G e0j_KiZzlȷDP㾟[>ʘcݑ'5Y'r\/\q-flG'%H.NB _UQmA}<,N|ȴrdC^RaBƯCã6ΟQzu4NHsJGb"Ԍ䗀kh)!бUzBS9Y@1z71 ;V>@$ ;~a{)]E Sr词8WQ^x#EUL6y.MFKv[kKm_Ys&)뿈&U#gXR~$Hfm6TRv˕WX{s=>92VfIG_;y8y ԩG;g8\@QRna.!O :2R@_7oKp7qGKMId$\aiUUgN,gK[N-OYR^9ϑpTON<̘xGE5Bezٍg<jc1 ;^I`sSO >i- *qBնA3h՘ŵT{\)cdSabŝp}+lA»z2bu1'I#&ލJPՈ@XXʔ~ZŵYݳmV8).)}rr{hAjhC"?nwM9c,^pa}R~g uUXUYm20 (c"ľab<j2}VO3]֌ L4}wjφ('FEW̜45%F;nN-րt:ҥh{ 4X3P2~pq [B0[GO42,4AZ*e8ПN݊_h,%yDbaV1_#^}3/,&,vj-r+8L,2yǽ!<%^J)y[/|RMk1DB͐ֆ/O$V N|&0YG!|/Н|0`$qA-ǯ?L0]y 0/kxނˋ\)E?>h`r~,VҮ2{h#L;W<#r?FNPYl)!.{_cO/o^4s%@t6ôAFy굎)˴+$DT,I>FQR2Eu "]n̮%Kh2"W1yh7J}) {$._ j?; s\L@Ƅ* HMI<E'd:fx.hE9s c*Zȳ_Idt 0ﴻ]$%*$WʻK̉,a*&Zc5 cF:LcmK[#c9il&.UPgg>$ jLKJ+v;M?O#~rӕiXQsP) ݩ0h^quhGE46mpju U&׀"Y$rݮ gWix]٥eц90fM 'U6!R. x) sqT'y̙OH/H$z#5hq4qA 7 ?{-ꏥ8V>דJ+ϩ@rm~RE2לD&\l:p+ܮP-cK!ˡo2*GغnTƺ,Eڂ*J@01 2\ %s&l02j׆C -C[(~LeK9̊;D(z" U>wEL`v vz,WvlD&*}~+6NVl- "0씍C\YL55ZaX-'㘮G #Dž2$>fGMq5wcpV/R;Z DM0ZlSڝd}4i1{W$R cIteMsX j˾8yRLWg߄MAR|^7'+lOhR9zݖdܑRSr. jLos2@gm=Y-=,/ܝw-ՏLVX:j5s3 _CNvIC'a_Sgh99 lpH6^RUa{F( &a(ﰆocaU9@y N o_aZaYV,-lD׿姸=yPucĕ$׃SMI\s"[ "@&[e@ч&/p˃ChA{9JUb) όfk,Ky=R=<Z%)jx R8KKO޸s=a >HmK?-p<|Y0= PfOn>+ǜ|RHA"=rJZ6Ἦ0Zx^5p f=yvЛ &+M]RĘt Cdbı`)3} ^eEo\BDpB؍ky|ZJ)^Oxj/jKo@{4\;/Ŗ玽jF Ԓ$^6V=H}Փ;J i+Me!ٶ(8xGEG3_tw]ZdFDrIQٔG.*],[l&96%{/B<ªv ؕG(φc%-kvkҮ~A!(<=U T{C4^f x>aVOdxH P *HipV ssJ?ڮѣ+qs5_57Rf>`If)h%N\ ^щgAO7&&M\Tl c79ݿ0K(EL=Č.:U@3Q1J? D٨!!Jb<8dL@^EqOMzFB* J =Jv Ngp}g h0Kvٔ`ʄXIbuAjD!؞#Wވ,0e*^ANȲ QD94hnxɓ2,t.{r.QX`m ?| &Wם:ơYnncRJع7XN< }-]\Q,һN%IO=ֈؚGW^ה!u;gwzH"Ϯ!I Kmd)8J>0n}dU Z/x#?Q8gDfoq>Y^9Ch‘=Kjno%3Jߜ{_ntw|h?]wjȓhax۸a.A\>H>Б;&FA{`O>Bd>=" ޤxX& 7:mE(( tsvF( Ekl ("q_3Sk.dtՉ5DPBDlVr ^Þ?%&a =}z0DTfozݘ+*e8$A!ӏA>WIc *DGV0qC@Z|[BY03QFX#|[Dpp %iκ-aTpu}*aR8-ئ.5uQ_e|}:MX|`$1w@t膓0A5Li &(<2ZFw إ<69Wܼl a?gL2GERTDvx(8^y:n9S&Q3$ ,'`E(oEt ,T\쀃vD\Z#GppyO8b;H vUŨ2 ) n,e*WaEЬa:v%ʱcg?Ǔ7xNE tO( D')HU&lOZyz1.>Yv > v>Y4C@,@i"H F;Cepx$SlږK=Hndxi0MIjysF].k:=гvbCt}]Or/K~`3Ej 6d |l#!Lw%랭i(mW6aWӉ*X[ldp̺ CxT _Wg FS_S삇uPC'~vsh?/2.*#)Y%Ko/)y1UR-fllScO*DSɿ ԨdƟNum f{u>Jd dR<뵵{ҫ%UD)'LީL#cFkOBѺ&e{>2stwpk֧Y&zGym6v7r56_3P1@#nj-؎Xk ưPfͺB'fR!zQ7\ =&ٚptӅŜl T< iYȧcoW^y_/DCc'I&3DҪRO3IcUƇDzoK[l8Qkj5)hcždds`wk,@zӊ7ϩ*JhOF~FJ\}$p-qC3%vFc{iU%?@3 ЃUI" ck&~( _.@hU3+`FJ9.󝕎K YYfU|/ ~:'cL]L{|n0 (}gV`_:&kylcێ @e*Q +H+#/ ?)Y9 zi 06TK<͖wX|ٟj 6qT7D]|;,8M֕QX12=_7)yS4/I [>!;zZjȄd\߆0LcYw~-j8[IF,bZV3ćJ8'uYxUGtk?C(|r4އ pA*iN!ήr% ~Q}"P'`v{.y=zqx!=:NzMB Q8|B[B0?dH+8ܒ ]Q\<fN,N F[ wFwkJr~8"FL.8q#{"(}C?EkEp*S60k(Zm2v ' tcmnFqtNn\ $] y܊A_B.Gèߺ!\{[L`@ ~c%k\ێP?Ve;4Lf$U*'thx/B$wF+?I 5nzo2cjVc[,?S3.ЎRucI{*Ŧ0G$~-iuE==e7A &3JoK-#ǦFQoU^DzM~IB8*-"wqc\8ߚtzYiIMZU3dxf!{%/RKWCʈh@(A|@ 12Z+;9Ÿj6yuDsx`0AՑ*X}. yXf&(87{NsT`M} v'=\ 8ۢTMYUQ:L[`++7^*^-n |z ºNϟ} :m߆bkl$(m%Ra\F>ߺЊ1bNzv+ƧJ6%1?DXi.l]؅]EA}x!A|ʀ`8vJ38RܶJEjucՍS8ܑ,юJvUV/hPCYLN;,o$8o&8?}0ImG{> a0\A Eןs%Cʿ6[9:C29^2T~0S $vNɫONV6Kڱ-OvXlD9d>k _?M3I.Y/5rj~]Yy1p2yRa9@kpan"_= !y?Rm#iVnl 1 ]h!\<@Ԑz?iQ_1@ aܣCp#IC_p~,m~vQ[zIV9wC̢tC~Ab OnU\NOG{0ZŪȱ` 4X$n!x<`ߡ=I&(T,W_8fyݘPm d TAex@i4z2N$\W` EϘEK!1L)1tK>X#540mvF^LDZj.,#OгѶ/U‚MyrYa~GyIq׸^M% vx~̏al`}Ou2 Do V0 s##"(F'jf8B;BSHՄ3ccog"mtxnVV]<06X*BZ[̘FǮbif[>[=z`o4B,gEM:bTX-H69\v3MNu Hw3rlڒ.]Xfˆb>+,|BH9 i/as$#_N [ֈMi]^2>ty4A >+O[r:Yb)Pr&jG0`wXt.5^k8X5`//bJ+KPRi)ED3f% c;lllJ{FXtbtLkqyb$꽗!_~8^3Ƌ7 nCqkja4Y\bfmW-[yAvJ;~Yns⯎?PTŌQ`z ֌ DNfh?NЈ73r=%#?:yXUg峟a{Y|k=g$-8ܲ+| 'UPTO41 (b{=C8;[o}M[g[ V}y20V `? c{y I;0z7?snΑȆƤ %(XX"n'*r={f z{+RZv+A4C׀c:LF_{ISTr^ yd4)% ?ֲA\U +5|Mҟp gyX"!P z⻰vNȟ6 *#4elҹ=bU1ꜘ'GdL~O=u?m`bIղOŢ: d%EB`BWS~Q+gQWmU[rPtɛm"{1v& J@ݴѠA\Ҧ>vǨRSȹ@PeA\/_">6QХ!VZe@..Ϝ4H?9G$z'F&XE2 ^Hݪw.1AfgSn4-{X ޼yT|1ks>A!ɚq-q&Nhӛv&6K# U 8 A0EW=f7>8"D{AM"ano%sF~@}el,.ڬSM7d"Wh}$I?~ zJ*cX4CymI`jZhVLEh/x%EW%91`1.y@*fѢӢi,hMBV*, zmJXA%\83;zrWp'-8x[ef.5A&Xӄ28)W-pE۝ϡbZ ƧɄ%. yZ.$XꙁBtw J,^$8^SɢqeR$I0!A=FL~6`,m:Rx,'LTm6)]b8E ֵ /-xc٢ǮEuU'ffuHz $'j=0q)6lt !h`z$r{zGۉ𴒩Z|mGa 9hQ!J^,)` НhHiAA~ȟOC7qC Mpz@K;m`WVJGهZX;>jn- e::צ^1ȵ/.Ά#/ ·LYVʅGV30US2V6cG2[/Ubt UQi7wU&Wv.IE->7X 2uܕ 0AQS4XT|΄m,YP[=zQHMthH2X%}s"7frj,yy!aLr\ݨ&n7yi+>}%m/hbTKΏof^Ϻ᩾.qp`Bl6<[ .{BPl!{)xv-6>֕.X'`)J*z9_2{vN6f4q*(ebHW{] SOK{͆!8 qv23sKoϢG\143 I;7k}tɅQ]QIMJxK.S~w19A &^t1#ڶ $s*|{DrZح?zB2qZWΏJ^^IqۋS, "70F-MPGcŊ6jӓ5"pʉrA)7[fdRb ]R=cA;5nz"#h⬢ziuU-_{lpw/ݰ@naT!BxG)tN*PypPT&|S#]mS%㚝%݀㙒ݟ-mɣqGEe _D e]9ٯ 8-BCtVDx3[ |) + J[e -*/ `]s/W6L$_63hg4WU"擃[跡Tyjq#9[=g6LpZh?&:(ZFV4baa®$( oZ_L㝏#M᎑Pd%JB=o"U(F=uߏ"NN .n̈́O- \y0*s b : zRsݱMy{s~FLĥ@n *cmĀB<~JW##J ^n as՜\r9.B,3x[:=9|d=# CcSy(baHaA7m }9Èh:_)mEsJ9^xj̵2ACLw$wU0a%JeJBۀ/FE^c<[!-[†/$7BF8`lj84lryo*+nw¢CE II*eE|u߻E$E,Ŧc(/o@q=/ͱ `6Ҁ"Mbފ^Q9/;f{>m֗W CUvfFZRb:nNTSd@J/9Ki*E±q\ЧV")TNo{JNdh;_"!KL7b Bw fsṮ]?{^o3naaY't[ ΅JW<wО_!cmGO=IkԵIc>ܖìD;[!Gf(Ac|]Cw_d^cm 7_}֜$wvHD(9O]"o2X( ܄96!1=n=-}Do}>虹8QUEٷ&h{^brbc"4lMCCaS6$źݴKZ@/=z e 9 Ԥ.jQ⿞B @ҡI\o3>u&Urm6C{Z&:JG¡2lӶu+Z.T"Ю(CPؙLĩ5"27H,VqY Dnmb3(\M2*\co V Iఫ{ <~sJ:ήEDυAMP/Kn JJbRU[q>TGօ{GvICγ6A(RJw<\3m,7/O]17iͽc85:֨JG-(Ƥ1K &i6z{Ap /{W h߹ 2(nѠ X[\l兪Mn# 'pfvP!a3T'8sZ.t̛tZl<뚒zCYK X\VJY7 #dv ݆| qA r,m$$#6BgߛMl5hZ/]6-yekb`o1v3Ƈ4Gyͳ z+nH0 'yUw @B1oFZ' sVfw$W2iŝ@ eT3UL ,/=*:g쫸0J׌Ny /(Ʉ =66g`'M9܇hnaM{ mmKTZ`r@&z' l Bʭa'K7lToK= "> klT&)  @r-n%b55nK zl`fʩ2z٪e_LrQG8eA+In42qZW ޠ/8l&uRw}% sT̠7Th*SeœH#Lw}TW ޸ 'W$z!5|Tf2"IfjZEr<-ԊS^ﱠE]D : !PS b qk %QC [! ~*rrN$3_;sܨ3}FSvF ,x'z;tBU7cԴкZ+^ }r^'[t 2#~ݽy9Lgi=zYL VXO NĒl i? kR1c/~|!{vruҜ $I[2_Ym[BkNe,?')wSB!ƌMdК#ϺKBy `QO9%&=4oT;&TQ .ߓš'3LriV* n)n,l]S6b0+iu9=kS ^>qqX@" oW?Y6wޑᔱz,X,@n񩣀Xmzp0 &Jf zP0D'Xt#uy?!ff⹏5Do6t^gǬ)?ơ}雩4@/SQɼPK J}[s2uع7!,{|fàoI&w0-ds oEA)nW[#\:Nɷ*2̢ x.q^?oQn,&9_-ԯ&Q3JPʬ,ar=[Fs ^gl )LbqF>TR|)u!͎WuFtyU oYkY°ح#.c\۫lxR*{`9 զ=@S?u.Jg5=1IJ@ ,r2qZcHT,痧T'$ &}^BcM</f>+הU3눔_CvG :%j\,!Q6hKY(ZZ xdbtORfOmf1M'adIw%f̱PI, s6hd؇cmje>$YyrpYuUs=%R}oH oF[[]L1Q|z ?^`'r.@ } "W|flL-КqqdOʜr_ebOY~R1;gy/Œ C˝qpl*vtR_"f̩|q1s9yR{3-W3T5w3UܦGm 3P( >VIɻ<RemƅE>0ٯYz׌谤Q8#/KYVMB 'GږO)HݮU<}m嶢Dn?w~?6lwm$)ޯtԒ<y^u"͑ Deݙ\CP4%UwN3:1RAnFTꁅ=⏒) Ap^q 7 N UC93O&HۏT}bA*nFwAFB#p15ě256IpV ]x^TA 歷Dl7M1k =W{r~umrfpmvrto[<79L֚ԕX v \i7.F&\k7tJҎ8jC#};VLIKz7dt2׈2:ˁP1w;O ɍQh#ϊ[LM#kV<>!c%PM !)MhT& 8:'@O1Roi8(C]SEeB9T| * U6cW%CޗgCp^ObyAt#l,ɝ]d|!.AQxܺ\iI78s_w#l"+"/0A5%+"߻aƒBV3w1h~q1V?'Q.wjDK}F0$Yo*磅qm <}zCjø]"6? lkøƥ"+ `XSsV (vmg7)u&i|xws(%niL.1IzoֵA)CVdw-Vɶw)TIJ01$)lacߜiueD ө_*/DQZ}0A%;^RX,?uԋJ_^ߚWOB@-ޣiMiĢ 'a.@`XJυީiXdsq!Q_O͗HY~t6agS#=b߲O&i֗LZЊX|n]5{]~3rAeg ~Fm&lHͩb4b`G?^'m`~颽ͯbC,p+_q2rЇZ|qbQשE(f\tv]xֲ-7 WvEa~?}u?|sXj㿧1q͟'֏g Qg%cńka:K^5)wTZ>V&"OQqFh9 qobZQXLU]݃da&MԷ8%5vP27Ht|LI}B=`Xg)a3`*Fm RgCM)F˜; jT &-Hvdr*ƘN?%⟱U5dܗ~ŝ^ ڸT/>Y ˽nc|L/Ьkg }o_<2v@?B-YT@`/\q{ܭ)p: &^EWAƀFx9}߬͆,F9(DIL,_ӞRgv*|n\Q00 厕ш/%"8 3sObkִuXܧ[>?k1-rO$ q*~8CafQ`F|xFrh RrSI< ybjʫbx[Pba .Y>yUܰbQ__rwךsAWarc,*5v[B)tsPh(CVA|GZbm!c} !}m Ƶ/CoGx~_̞G`R {b*v ` PU}ׅ:6큧  *8|#1ˆc$@Q5F} *ivW${tMxHie:޺gڷc~VgiT2 ]Sa0s,z,?"l:f]pw&;!:1چAo>2rV^Î _ϫA B @Az<~E9[*͔ú ;s"E{GG]?X8XU&fsi<8Ew;;%o*@T}U\90F5 vw {!Ɖl|VN?Nbj(XLr8`cA~őKR8h!TZӃb({?قbKA(; WqrCms"ԟz ;z4oeбÓ >w^%#N{99Ł|㠸`M,3?JM?0aدAbGv 4+7T2c2nNԷ,NqLxS) jTY;TM S|&=gȨT4ܖϨ&i&<3WI{k)G }"ݵ$͢WrD2ofzmvNYqp7rJWe#rh .D"9ͲtmbX??o3nZLU84/.[s`㺒 lS/`;#a}*y~/XHxyeYes6[gww?ֈ p)eS40 xȕOX7 eg "Y5g{?&N!+캉,(ee]aDJ_OkUwY).GB"bɺ\`YBc:kH4TV"~ehac D7Ny) ,[ 8NXA+ Y4:=! 3`l_ t݌<󣸟 oӼLoG=)zxb$ElvT s*3#C:xIGV[ɫTSi%`fWnЪJC΢̒!*#(  `. cD_De4=b.k[PuyoPV@rm/,uYKv|i4ZF4H> I~_ƒ~Xý˟,;`- 튄H%$ ଒{l;z2X+2OR u;kMvTIoΌܶgR_G #ˆ6DTY#3qWVh%97+_{Ea6ҁ$~ Y^jaQ3jeGr| +Grv>rCSd1WGJvUDFI !lhؓ9nK 5Mk +^i3_GFϿPQY}J˴_[з*&5f$0WQAK~b|7!f'߱2^C;۞oxucJE{s)}7eVvJtv=vtj9XT\Y'ېdfCayʊiWheDNj,@|DOh˭ELdZ}S"Qkq/KvrE sR}rdEʯ t0v͂19Q0j/o C=ޠd^y^& zoark,x֕89BiL(`tz2VHɜ!kB| ;y?[ksH ת5- ^D#tAd GuvLjF>,2:-{ᕉyI})?ؐ/~$˕+*qAйBeF],Z?:QNCR ,irk%#3ŘC2Kf0j|q& [p-ͪh"Ulp/Vkj2\J0&r)!:<>|o)ct&~GfB''X[Ԍ]o:|ǏU1bE2;>#7T /)H8-ovnWT,2#<ٯ]^ΡbdH5PzĹCcpXWg{ vFٍFI=w6'/">dԴJ{mu=/lD)^I1"4<Ҋ}m5 W2Ec$OBa#ҙ%Eq6SgW>i=*_VIrxֹT}t$By[x"/*F@$p*6=K:=޽R:*v9>Znq#qVY<}A𫋩5àzpȮhD i9eMvʳ5dv[J{W3Q[̀ #!6WMo=Kv-JԺ"?qr{xO G0q7]q_7N KzBIA8 0~ٓR~G^]FQP ẓF(O0<^bǹS@0A)/UV\rĘ:uxF:|"Di^x$4'&͈-]smmly A~9ӳ qKṞF=K9u;6A {q([!Irp]RFV sjAT"1_uի.}:Ԯ 6:0EqPÜzr',ǁN" Z!粼Myw>(:5T M3'6/ewO/Y(W9=o8㪌 g![^3&$dƠ %nv!Ч@':jP"8~w:n5`{Z{b#P@c[i1K,Y< c9Tfswх#cZJ nӎ_b?W+xs#`:<q8F,b+:D^G4[\߿l>Z *TM`sC`ܻ;0LfU  qjHg>EEK񑪛j+ݧe Gk /2_98יW@07ৼؽ=Pв؛x P[:~2,*UE4&:*-T˒qdb:vfjO-"!t atyZe$q_~Sׯ3릞V\9 ӦW/mk /r3?\I@hz^QhHt/H8 Xqw'z̧[$!,@dDG{:79Δ~[o@vʪ c GS845S/ Nyu>f/Ged= g~m ւB$V 5*VN mŠI\, B) 㴌*4hfNW) .yFbmJ㩹"y4^N;/}h_QY, 76D{{a]Q2>''&f1GTMYRPAAk;38"AU,(A.5B!ݳ8t=)V8Bo+P0OA]-xrNL1R]MpAiT"'VE++Um=m_~ToRoʄbd,k[ʰZ/Pȥ\B>] *`ni HǺOIb· O'`4cq@zM1l mx2a@93:O([+(˛ݏ*ٸ"ZeI܀B,~A#%@&ve֑I,s4'_u8f.[v8`5҉&RU|$FSX9xk28.APH!PUckn\l[61?gG\1UQDNU|BK'AB]BcPF]6K- Ǜr'bُi*wH521aUc4d%WJ_YL~7ࡦz櫆E 7kH^()mH#g:-$aN.D\@yPǢjTtБ`;w Y1%lטJ-tsFKwb2ސKx9gEÞ8R=J=uVvp;͆k=6/oLWOEў}ҎA:=V?6b2O}@lO/F6Z,ۍ!ـ?cKsWd#9Fd}^Bk ۖS1U5$JI1*GT.o|n iƸcZr$}s4Wbd3'=:h2 n_CYN 5CnȨpX%/?}jTϦ#0&yzFkff% S&צ߱!%|>V'(Q  ߏ=3bR E' {pp(j?qqaH݀Xh~dȖ~W: ߪU Es|d.72\ دqV]1C4pd~-]]P' 㚖%0 u j߶G_=IdJ7 W⥬V2(s8كUx(o2vҼ>|0~b߉vgx&!磻瘀Gf5xrgIhkP1ƃ٭fUc[87򈼞l>EiLCx=ݎsjW%jCQ'`%r) L=8y ?،c6 ߑNhi`X&Qh9l;_zۭvcO~%4|0 I}g޼]+mfQ;HȠ\߬\ƻ+$qݱu1=ZyܰyAwbAI~3~s=$k-#L6Wl0:O %nD)w;3qB\TRh+c?'.Z?.F13`D1hE4ԕ-67%3ăuƘs "-p 3}jȘLϦ7á1'dX.o_nǞxX3UH&:QtMZ(͏ ҫ%c ޻PQa I&pRwmB %bq(Mp@E%ތMl[U!zQ"_uS@)}ÿ+Bē*T.ir!S}%w VV[meԧІ~OхZÐb~A%/EǞyF34eHsLjI_CN9-L^Yxu?Xln2h|NZdAڢ?A}f2EYdΝ=tj$>é%1nrӯ`%7p3_vi& VHn-e: ad'PxBl1.y2Y|%'!`3 sTR}S^ !!ʧC:Cؑl5!,R-N]go98FG JB/iu.:ZYs$K!u gn4)cp,TBk TZmOvL(R߰k_T}qs>oA:<9ۚY{1"ҌN\tAG}x|Ms.s7䦣= #v8P< ;wr]Tz$wr.Z?n9Y&Ÿ$_<4c*Rmu@t|x\NQ,dc\Lk#IZ4+#4g4rXw W[N[O0:/-pjSɗsAP Ä1O6\WRG^K\v镴Q&]M29kD' WPI4SZ}-Z6 |6_;sIOc&u9ru$Z Sˤʎ{8}&r $sS ѵ""d.lNIZ>pe䑪Jk11 R!yIT-"QE&2ERG޷8h\xrxL}c%wMSnvc w&JEu<)ѳnqZ5Դ1SȯQS|4^'+(Ǡ6")FDA2A8M)g6ҝv5: ݧs!6E\u%e^^?n. 8oЛ`tX6]DK) >٩ g?M?B.el~[>1Hɟͽy0wז6pkU,@`ɹ!Mf_9m4e#ca8O)F\sEtbxT~F?!hZtBk(I.Qɠ߿MMܹ›٪6K!ay^ !1|FS 6>YZHU6ڟb8$# b^X4O`] SDnnVX m+E6EQ\Bm! H=.W4WU_lx b3|@<ՈXՈ}N2L7w|"hK)>$tYnui cЅ;s F'W邇_[V9.|1[U'K@= -V "]%<19mXdϿE#AlCqb Rw>̼ ' / szNd5O"ٿ+kM%HlwMO-G۫D.A2Lᵙ\86(2<,YՍ1DӺgy|2$T=B{QeZ+o\ɬEBDr*Fҕ9Bz%usm]D~Ȼ-1oAK.ߌpw \ޟڮhe|ou GOz+hM_ )[ѝ Qp#<DJd[Ob k $w5zL^fEP*Ҏ2S X|3ҺM>v}/s3z!&B|+9:n>!}u$ۋ2ah  F'Td.π=ES,hZ T`3DJܣl7x<1W6Kҗ͜yr)U?HUgovdw ~KPagF 7hGa/_ϯz[k"}6$[<4SWft5bɖ>dd,Fci\u?ɻ>nt=(óŨ.lX4$@!?2xUԋ^uL 'ŋ8bg9͋^F\ q6U9pT{ZIB07䵦QZVCHΤPPdGzZVY"Nytd<Ę~-@L-v.gee|X H05áEg8SN  Qcݕ(zH4wV{ln 6@~Tڞ/Y秳*UUqau'yl鯀m_Ip=[G;\a&r menEK^-/KEᱰZU5]L-2rށ/)X(>d_(2>W8)fؑu\(Ϊ,\<J-[J!E.=5;bxKg{"'z7:l9su_*4^ X?b.B+;Esʚr:Ƭ4 ^waolo~ p2ynDcJEKYƍ21M%&X@?sW)w*ynKn3qW%5<9\Ox.A{ 鯏Bؕ 76 EQX =kцjw9]d *$>2q̩־*dkз˶ GBO\>Wjp~Hl>ɪ%_y[]ANjKv2$ރdIQYq7@ߪI9( ;!R/F領J1@.(sӣ_GPYDp'/rEMڡH"d~ŚLu3o !Yɭ~!T:Hƺ,:QewBh-AGP.҃X^MTvRq1^zdGzǺf|Yخf6{7K E@lVYƾg5ǁ ȵ]t[ʀCkcu2ya sd29iU_@ xvS)w K1t1ys÷7W5p//Q~玦a_^˲[c)e~8f tlUDKԖPI@(Q0RUWe ɰp'1m3J^4M^/iwht\I0 Ӧ"Gkec죋֐ wQ sEj] vx4=v )S"LVU8.CT{hh̺]fE>FAk:>v6o<,9BҰ(B>UlF bʨ9r0HJ?;k?߯$dҫepRHp4F}z)xP6-e&$4<$b4L/6 חKSqi%Ը>VQwB2eyulD,]R˕|j%[f]5NI5d3;-x=^?UG1 ӏ5๬ B:RFiF^\ sWlPO(7@Z[cϑ) P-9Ucx/h}ӍQua{>}mjr/u`.~zЇ$u;Uj}b܌|A#a~4Հ(PGc"qJdl@TVr~거zΣpUa>ܔIPCx &p? ֖.wвoUqqZ֨z#y^mqijƇYRC_mbO[̗Љڑ_D)Kr40," $h C랶z6cjX؟RH&0XzU/d8Ղ3p H% MȈ BAȀ)q y{8QR]Wu 1l 2eszl=ڰgiJB:UuoV_'ﱏ)pCe#"w=xy ՚Vadg8>Z}BEiܔVs HF![)IS3A-~pzഏ"'@RvCaM,u Pu}- ԷԒ]C}yԆƢo9Lj9T1M̂xIjC@TY)RgtۤTy*lC">) #&{%\P%%B9B8aSCzxNv¿ǓKƦ 8a;GNE6S4 ,џ뤑ZӯƽzYounj9o ɭ`ġ:i(kAʭl'<}9$pF5YR lxs^+20G1Vw}I '8FB ZV}x|5TZjaBP]:TQedG>Vi]V)}{nE$#I178{A^ BosDëqߐ.%m>+tE YM b}44f}ax!J33M %giq[6|%ÕdX2Sp%j&E6ݽ x lF,׍hp-.HXH:'^V3 ~"Tg-`٣,+E݂$Yi`l<7K[-aŏTN:.qe6( kMϬ 竮o^hڲHmQd3TtONo3!_;G>&V}o޷& ymE0eVj/' jH$ne@+}ht\NK?AS+wJQGѬHe y `,e5?!CW]ndE9sʮ ]?Vv&I6p݊ Li`.H,>v#jbNFs1rE0"@.&ǡ%Z:Kf!2}\U8ln]7z !8︁Ӫn_26u+CsOb`peШoXY?8 ,f{ V ^ELX\[ Ŕr~3MMo{(Fo6@WdTHy7'!3D ׋s* V .һ⏑j>T1۟E![.Qe>vkf ~~\+qetaU5 ȫ&Kyr.!Ď&7ǟ,]ͱp}׍:9T`X!5|o&= >ئ<ҟ Pp9ؘW>7~ysbT8m;ߋn#E4~-?|V_uJ磩a) _I mkȳMBK27ËߔH&e%mYbV6d"5HTÎd>R+=~s0;E?xqI7?jt:P2kVyJȘgt’\#(o36A.lkֵ!eKcQ=\6ZTIt%}Rji%pveAT h/jhc2718*١փ=_o4BS3l&,Ij9_b.7JC'sX ]>}t!"U+{8ArCӧZ؁zZ; ?XKt<DtDHCn4u^|n[_7)cŦZD{bkrC#@XYcdLKu>R<*+w׭%-3@^9$HClhfU\uVt2 ?\cB,v*Sg4S#1dt_,Yθ=txA]Z%)  m0[B;I/iK\Yi44+Ô.ޥ֪Kr>-iG箚4l(;s,64AxSm_XH'+Kr!ޢ&o5f]Q8xo]_(Co?}bI eJc+oYcf=TœꑾXR!O{eRkOvF4]^.rXUm%7*v69<65e'L fĵQ5 5)]Fӆ~qS1k8sֻlf+W`˰xqm9z4#ȵgK[ VTƔ/b ^ u=1u `U:-Tm w[[ Ժ! =߽)ߺ*m<niE,_ W=4_.]ŻBi-=|^9j3hWö5$1O>'\L'qGTuqD[fJdxZ  vzH_8i^o+V[W[scC r2JM2/hcKà{\%7FwI*g أ9r?caѯa4W@ʡ+ ­`8`'!֌5غ׵b5J1$SHQ!ۿ#mU>{B}@+Ǹе-:0*uvȔ'P'+r}˦MZ`-JfC}~"*CԺS  jߖ?v.04ҿ),н}B .잳zKA\, }.;i7gBaW]/6)0|r]5T֨Y5J83 fjj v9 }Ix^à訙OV`jhn/,\VГ*t0MƇdY\&pz#°p;EVdx0uq3| 6;x5+8#Zwš%k}lVry>hἘ05S*\i!M0d|(ɾ:&>75XbѡJ(Ӧrgu)Ppw>>pץX`cqR{0,E=:h%]!jHBIPƲT#SuJyˈ;/kĈ1sA:k<ߴl" YyDH$trub-Ip|ZNxoT6 UA7oΠė !Z*VIg;dŽ46%*ځ2 qyTNL夏N |W\Á|YQ<Fom|DخW](3 NFCUktsz#\7-u%>i+S+̝v\?P+|_=Ϩ~@Y?V;eIK?U#h˺]&MeF jQS'Dz擮bJC:6qB Ŧɷw87vgs&Ӄ5B?u]]U< j qY:o_6(?ߧS]&P5̡@ =o#lpqT7:t ӏ:R3-gff浟g0@HJ"|$H^ rɓ_uAȭv^S2/{/xР9ȅ(/T{AGN%1m [F(ȝf޴L8:3_UN'8{0X1!jZTv/rH yuu@(SQR2LO=/d'R\v'U}{d]AKEG73P-ͻ8>n5xg?qԌse]u ] ԆHaRg >E[:i{+MP>T&z$A?Dɒ T.d6[I--XJՈ51E8z^c2zB,OA[bn1JmOQ+r+I!Kʅ4[ si٠`f);~# pu8Ձy :5k$jI8._\x˗]. YWF (w֮8LДH[qYFkA=^ȟ ,n̝F89hZj_I;ϔnŰ=ϵD##N_]2C>N4Zr C4]GYo, Mr(..1@a8lXKi*f"9 ^Nqu_8!\*"*fh5gbrbߛL"HNj5H<xˇg2{*"ᗦ_P6 cRxָj9bgg+m`ŭM!K( <ٹFPP .*nئÕ/q,*(&JxzM:}0H;dT54Jʛ(Q.RִRAK3ZlnLu : r㟷8aݿ7qB_>r讳unTdL=QS Gd{RjK~>DJhϢg4#vۏQ(p6f ׹ŽBvptҗeʓ5wU_=Hpf!ZU7RɺբNjί\}w'~h<_8uB QUyTN'sQZ5*E [;}J0]! 3d~\R!gfvҘΧ;NdpnVTucw: ׻Iφ<#bbS(ᵍp⥯e|'(i/.-n" ˏ42%T.gEM֚΄ee |vG e-IYv>t5kA` kM@TِŅstO~:c3/ Wܐ.'ұ$zy #Ѯ880EHJ55 _/t fFզI^>,=ՂSUF4,i87iQPZql`&STJ>w;@>u:<3Ks8s3DޥGHe]󶎉y&.TeaTB?*ӌۥu9[y "e'ķn}~^l>lr\DL:eEBP[J-ƚWRq[ޚU>n:f*=|e8bz^٠KǫӦ;Cm7Y\;Hs(<ƭ1Wg8:pOԙA5S_Gmc֟D0&u c[ $ ?>ZbK e#ɍhBWQ1#$Yu/j?V}w*Wƭ$Xݘ -8ИE1 oa)֧I(]ֳR{yls;,8+jr29( .Cs' fb-Ha |N[0nq|כ p; Y=cY/@4V2 apcx݄sRBz#b ">\\ Gve-| 1@q8-ׯW(uLwܜF&@Y9٪AxR 'z_f|UU(j3vL ̄3aBgfxJJVȴ6ݓPxEo4G짨z I_G &B(aO\x>rP|:7cJ|yPa+ML] y9p .c\?"A.eE\зdd?!g R|n -@LCYҞTS:#{N|R5Cӕx%*传O'u$krZaR {Taop|# 1:d#ݤ ?&$|R2+X^.KTԃ#%@l|a(Ɂ(8΍H0X+:Z%ֱAfqL]IP>t`lׯ~Ƥo̩I&KB5ٛ] !'NKseGc`q ֝vg!a_;0hTuYO0D{ JrSA gV^&pwJCZ) lёB,94:VU痜<ضn;5o7b:VVbuj\ZxUx̃&\њGWZb_>C^;0+C)&f8ceQ^A@ R]+h%ˍB7,LeKJOsu:BoQ csծ -O:$J@DsSW]5yyW&R˺ygN5=ӗNP[S^'B.1cIʖ7dt[TOmVM (F~!39G+cъ2ir٪nNLlêӫ2`N ܰ>}:[N",FO<노 Km˜)6l+4Nd-FᳬFXXFn U_ajQ֮_Ą]׆)>[[<uba'NuB{I@א-iCE<*f'<[%7?<3%|C2@2??@Yr RBz'^Hh1݁kR'* \sE8SN&YB0W=]{ۀ$?¢ct5[M0upcrq6%־B.]SJmLB#X" g(@Sg4CÈbX=x ,K"ūRgVУ~9|IG+KCNVĒ1Y"-&@3n[Ke^al&ys!脄\t$Ēlv{I9$~~#;~E\P|=],_msD7yo #!̺7y.]wy^fЕI_yU $;U |1 yJ@u_qǒ .˜]dH"_#-TSuWt;ui]u(Q}_OBg3۟n8$t4"$AWO O'&k)4fYᨊ09`6.!yGb ^{JxЍB+} >h,U[:ȭu,sEޙy 2k1c3J6&&u(u0o^oMt@с5>O5B@UǤAi[oΘ y.:-֙Qfkdj:yU0娿 )ta;Z.RÏIL9GF:2t)\kW/Pa I _#Q}uP)N*26=b+Aűv<[m$Z+^j 5kSh O$({ѩDu'&R/GIK( 1Mv$ȱ9㽟q9z&Tac -=ໂ]ɹ/]f*6rz:r@!FI^&lfmQYV@f߈2^&n>*+qtsq2əmvBffp<}ϣC WD0uٮ[S]$```$(or PC_0lŵ+[ܩ^ѱAW +8Ln.)L0,FN3)QM^I J3Br}(F|= Џ$bsl )ey +5=@9&о ʧmbL'%F-8ma=wX # bC:B:֎m\w}")^Q<[\}=GܑKLJ 'TUpzk!csds֔/EO?.lmM1i@hh-s%.oQE~ -S8yԸ=_]k쇂zHӷ1ۜI<}սs i=iqq%՜{zq` }6oiGmDI/kCweᙐG \>9_H$5ďS{q"htzL| pCjTLV̆-zT݃>P>Iq4}.Är x|0Dx\6bԓ2(< xT..lΞ#5saqy31pfM *nKϲgb%ZȔ[iiM1:ՂmB+jvZ~ fbek)U)b.7#yhr@b5/+0E~]jW z#X+I_|5GǞ?^/0NH 2e):G{< xo]]v*] ՒΏj_chyV?2W;r"cƗG:ڗ0\h6X-T֑hɆPUp]_*ȭG'hEjw'^{i(㿞RK4d7'z[`-U](p-vqW2+P^l ׊3{6 4I,@O͖Ry- ZOί'!CӠ z}\gx1#~sS+vTU#9D]YX/BQ?}!Q\_0@7?᪠p|Slt z)V 0}>1)TNA?1F+pk+oz. G_qC0#[ \zx?*3lv%E Z 0>`(WlJ9dUJmaV:/6%:AT5uW.q|dkUi $ưrwz뙌;gYƁƊ$\ sch[)R_S6ܼ Йϔ&+ h4lV /ܐ^([C?89#~6TJtʫr{2apDZBZY9<#}f.Pb9h`٧4(P.u|(7i"QYi5Rs1VAI ){kEg8fY3Qjч٤>Fai4>E:z`[#Kr'~;8 L? mG Lk kZ2NCQ8unʝam(<1 o/እ7&m$Z3K~zu| +3fd~!JqZ%yϖ3C:8o'Cn4-総U@Ťr3Sh5*.eΎw9`<[G|%W%0W8FE/{<g V'v;3/^^q??'5w(sbNSy0%.RM\Vno#k3b-yоw-Coȥ#Jbg1ɮɋw{&eED|ص`UIf[LCp|?N^tŚz[IĬ6o6sFzUu  ,q.E}C+\BPyx۪ O>GJ?7/^FFPBݞ:]K0u=E΂VzokR^^!**1loZ,[Q C˱CobRe˓/>JyFr}Wxc fVӘvP !fP=:j7@P)+rP]C,9td074rHg $9HbU{?WdGpqʍf} =?\ HlOc;)PɎ5*`-` 'yKe>~`ۢ~}/ԝN_)lȋ!vgE%fW!D8R2p~r߽'4 W/mv 墾D]j mz(J UY5'+8+|.eWЯoU8|&$~ O0+u =D@#'Ϭ FA¥Z1&;Ŗ!N)Dm(2%ͪFCoxۙLItY_Rfz[Q̞^d>o2j{7Urb6>"x%([8:9]e΁؛ٺ;-꠵YMqh.4+wWTІUkNL RX7TIvovD=iOWVISbl3r'<퍰"*3~ ʱQ%YG1)aQp1Gߚpl[x4n|86_NO yc5+xl6Xm5[e{pSe`XLKӧ#SR+ \zM9M-e5B I Ak :ظ쐠YBp:,X9^m[.<` oe`hQNbJj )g؈]ɮ9ngۣ``D2PEh< c M*i8Z7Y6 0^RK!;6e_un]0x:e|X}J'>?f ,D.E ~xA4Nl<\}mzId[Ϛeh g<:GK<*h XB|ͩwxkc0mPb,2(v@}:n2QbuiG,YvlY6z貚NT{*h0 -~RHpT8e! qGf-HRyZM|~sTV%fނ3 "gC{ŕEv:D uh_IAoZ&~5sXdؠ[{Ԏ3 NJȨxB=h_7,k2z% &z+䜖/IJă1tBKTԔh%k~, bA3ڞ`L ԩu+>"DHow?|(<:aS\F24ĈU罾B`<6hL7}pZ(#TkH\qGgw9*Q⻨OZEI WZ5Vo8/ɍT){p# soq+21̀Hz]&FKdk8AG}ȑyzvtR$uC*){ҜTf@R>Owc2_<;Uߚkz(Z9%΢pB_Im\Z0{ H=7M}9t@wrSl32! % nsKVr VtUYA pF*~8m}^0 DhD8hƐR^ƷeW!lXNSb7{z"35NxQ(d\r}ADD5h>-@Lv;x3wW+<^ ) C[8=Tw>X!Kl)ن tө`# $=ha[(qƈZnfD,1Y&# 5#pՕY|Wqn@SS]#@Pמjuu()C;4>q ܅ZИ6NtU(Z3}'> uaF'q)# v!dT~9#sIQS]EYc‚o67ٮt $䲸Aw{7͙WhJt1-AfkS| 7KI +4 U7O9͂kXN.ʥИEWb 5צ|wP9J?g-p@j,w;Jk l+ڊkpʻl:jdX aVm Lc$g:e nzCkLhr+CV8!w|fr'qI&^[_L0Wܝ:>#a*"1 -};h"*iɜܙuu8 O_҂Be2ye`IO2 iX'jqx1nxנ?"1Jf]G=PeC4P;Fn2W"4(!(h0|GtE94W4$|7k}NWҘ~lD"L"@*Xo>μ7͚b7l<1՝bu ,cZ$;0\װM'àl~FAC:@U/Ό E(VkAP{E~-rYR9)K  UoۊBQ_:}OQ-46`BIxSF̴<;Pv$e[Ȍg וptyI޸ɋ11 mO :e8Od/`I2pxAnd#*5EK-_RX0nIdC](;B34<>:Faw?,֕bb7L] a g2H5zךm3ȻMӑ07^3MVڥ&J-&02nLcg-R~6`@~Wzm%ߟ4 )aÏn? !I^e|q{#DnW- 4d&k`2dE*kʛ%q|i78?;ܡf1Q}S@?l%fvIBI`Aw"rTTy:('Ϭz!gPruGG~:g8FqCOw+ ,1/dg2_d"  |>'a$^3b' < P]Z2\ԛE;zQ\+5!zB;ȋ*^ ַKۥ9-cb5Uq. -|[JWmsasKj:QYBQًL@=qߌP E;ٵُZC:#ϲ<H2Љ 5/ 79΄P;Rr5l~֤QO-!?u_X'1iyײ1h戣=)6?<;1hTz:,1&za^5i.a_6#ȟ|D$ !CvO! -ln0f7/YJvbp9\KOp;Z˜F"  ߕ sXr՞i}^ bKqh?tgÁH J/zi=G3 MXv|!NvW}HtD@#度U׶Ir A ؕ)д 8RƖ'xtXbt}XIYvx,jd4Q5 H# mm@&22E|-]aWִ;"z޽cp)җ <':{Чd{B*pWt-KE ƹ@;SiGaC}3k{򬽔בe׼I^ ݖ6@MWhA53GG#Mn\i!p>t`F$a$w&6&ypb"eh ʆe"_CRQ♸S,}piw WLTzTIKc|"$KqSz<{BNLVoeDV{3,"z\o㸪y$OI#3e{Es9|hL䋚뀸gMU쬾;u-xbϡDu,w6xj~_f*.62|1)o妴p&, qgFPQvL(@p`8̬{͕ѠmzHۀc`*2vFgY~sPdbT\ ei]8 OrOf'zT&na0 1v4}; b<Ȭ==`ǨP&]=5@16>B1eG.4oN͋M7UN2 .^GۥikuVh,*mʜUtqc\-sQg {ᓙs e!L0AcTt-h4#Fl iQp9xpPd]+;u(@=6vjxJM0BShd99Ar~j}:Y]m*czKtL1xrP֜q"0^io]Qގ>9뽎U 0q$> NaDJ` eL# HaYEiQt/ub6=\pջPSQDI^sDJMAs/I`O>r:=lǭ7Ʀ2>Roқ+T5Zg܆ h"lܐ9.?$.5}c?sЧg{ؙ;â3S& V"j%| ZHbճ0%8=M|s|uhn -~}L:ЇK^{;H(!űf^s6b%C5gҼy.2Lj;Tc0{2GbˍO\Zhþ<Rf+W(_X }:_=<6w(.O߰[wg'6Qd}fr\ >fT޷'7y' MYBT)Зᵏavv u52g5,b(ߖX^ oJ qed4L ;$FFCIЄs2yc ''Ryv"RB%RW)hfX~CV{Vdv+>t칈jm 6/F+څ\F&Wö|elrC.NHz&^ Ch‰bRhXe%{VZ)o|qf12yrjXGgVdYi3W Wo$J/u%(ڟL7[NQUT.tbB徥)T~.v84/;z@'ԌGn)]q\ Sfr@ƥY82`(g;;)r,H~t8  tcMlR)܄yslI>;%_f1VI<):mq> %P/G59zW:Ob[Fε5"`F`Cё1z~n z } b=s)[1frmNrF/KW13rq _?0le& &xnmO:QpheB-fYVPKEeSOˆ~έO?Iz^MN*b83&Z]^+m6);~E`+g,{Tők&)|m%LIAG{b ?BrI& u_jYGp@@ 3$T ȖwU*_}0 줇g."3xJ޾y+*:Z{) ,ez2e 17[,i1 vdOEC%S, ̲ۭt {+~"p&9Q:h wmS⥒?!@%I}{ĺlEz blb'hH6jÜ$9-(X 3ţ\tJL$r/ds,UY=^%ɕh|;?{Zޥ<'Ghm;,F 'y oT3k.H3lxIA61e}K{7ڙ^>Dfnwщ"[+!SPڞM҃'d-Tz-pJJ0iHAD]٣wr66ЗtFcz 8Tl3;B>@Wqo行UzLIh"nܑE`?Fe̮OAJQ|9@~oϩIaϿ c妛r#Z.IvZdrEWZH(`P0.D U!ad1[{\N(j̕B "yN\_ `}ED JFRk 2粶qŝp8<.k^p%/z\en)m{Mgm9՞ B|w- %v\)H(Z}%mHbЙwjge[bYZ:JLf$!=46͢ &6,pOw W64ܱ؈pk+5z0\uPPDNc seجe>!+NI&k.D _*͌,NZ>OSkf,yg+n@d!iё颛ʚ]&q;6Ncb(MR{t#!Qq"V<"% 2yCF'ᘌU>FgWފÂ̤ɤL.zlHQ+ >̐f3ce1\%-l4 F؉L9G#ZMX~!m&& E.ץ|;tIǨXC8,g=#^Cf0d6RɌ+l)"AvZy%=C6h[(a3 HF"{!Y{G_Gtp鳗YSl\ X:j Jڍ 9=AoҍijWNEo #:-\*vv9"IM@aHʁ,gn'Wβy#t6 Bфg%= sVS| &gk05²yMAI;ٓºPBŴ.hJ{T{tU+,ݨqVHGu֔)“Ç֗]r~Y{+dl@:cx2-o1 %,]]0h,֣:wdIҨ+%uHmyC !ykC6&?F~i5{87վMz()F'c^ M3߱[CJtF h\ FvF6[)-k`i"mF{+R;D ]>=yvg{`Te\d'gQqS7 BOs< U|,k5$uuRMO>P ,g@S< ӽb&#Hhr~B'OǵxO}.3̶[Gf1/ "` T,屇oW F *M䅗WH0xm} fD޾hy<^mE[P 4\dc %S~VʌJ]w*Jݯ̉mjlmh3>Qbqѝ'YѤ7"=%|a 0?X}LhOS?P_EmxJ ϼ!r-?G/1Q!WV\}GH- My+ ;rF٤q{ῲu ǏGp|.όKjV4L]8t:@WN+Ť󟘿u}~ƾCqh2_M,_fdQt_ GQ(!a:h +]0kһɛYE\; ,6j ^BXĚyں@p}yam0DtVX(ZxZsuTG[tl#$ |!VrĹ=t,OZ1m{w 5c—哆&QLfGstXR+gG7+(M`[(lC(A^M]_A"󡢔UILqAht0:@2G0jp ը |8Fjx_iYt1wɰ*/EyIPDu&eHn]'E, b}98LlbʑƳ{EÅD  !}>#p9>[2`"zPE4f#P7%G+kPOgD! Xa@%{8=hҢB{pdj-+ErY$Sf)+ܸ)f*NQ5fϓq}"$Ҍb&R3j!i@e׈3$=Vr6H2t.]zTbFTr2H,""[Fob[qcj9ֳF 2r= +;?IioG: $x]#H`> =9Bf#LU n'̎Is$IE3rO$AF iyg{XF.x cCn# c*Ӗ}xjgыchM Wl8L ƖpeºlH=ݐ]ߕمIP6(c +k!Vu ASBHU>3ap.@+@U_ڊ&o /JMM d YeN,3MYC`Q}}[LQsJ5|FI7s O/4$Xՙ4M}c!-R??+BNbQ#\4-pkW?o@ㄿP(c2I)TY9IXFߺ=$PP C4 `vƽwӰ (!5lV'{WߩN 7aZY֧u ̞KlM=d% +S[> |uqPi_d:q_V mg%ɳ*ugO!`ٛ<L9-n!MiV/!b`k@L5tuVD[GөwhՖx-.i+Giת?wp`- ߗ*_8P{ܬJ9BGؿbi x1-xh,vYt\e՘u\ܩB-[~J@ᱍe\[YE3B?}":$!gݞ?`HUA-6*Tw_ERݏ:n@䮟-4쯞H)>FcZ?G;fn;d(CԱ0CO/JJϊ+&jPHlLH#[pb5(C]WzQz@ y4Q(Xda֚[0jtM`;\}pL8Q~1ngQ}>c|F",oK+uGѺ2/Cw\16u&۳gӌi;E.En>Fd̛4S_QV[ s_bL̗f'1Sv8_zB=@\d)AdV LpPTyɃ9f-clϖ((1L{e'o(Y][) nZ Z(Иk#6~I!+;/iGyD&{|PU$EN"n QP A8|_o> } FS5~!P` +j󑑪~(*=QTݘxLG/D^s[ԽtP"FZ5ޜߠXnN^#1 B66CfؙOuL|ҊZp?~s Ä:Iq:.buHfo 윻nb6jXZ|"'%#tfnd0aI:lKT`pݙevرKlWix5*ŸQhlt(}w"v^25NB3I\9o9 0VF=ȅ-dx̝0 >Tӽ%2e_r`hA\iNyfoupSKlf~}s 406&D~fBh7s [L*NA2A(śqNDw[t9_0 bPMFXnNFWCrDD<;v+㓊B<&̎Yy=gp~/i48”2냩56h%9ź*+%@.gЫ8{](Q۞Oh^3>ǻ:'OfUY֡Rqi ^#vыחb-N,Sv֝h6 IMELD#h잌u|vN>RUO+6b}tݱ { f /\{h~Y.qW3e vx!|6jW;`kn{<|nle+ICmk?Oww wrdza *M&\ͯʵ~0Z橁|K'Ԩc$yPƪ~]Ruۖ. DvCoPNFj$sl侲gw5/V3  2wѻD@7zWgq"p=nHp%¤u #B~Kq( !>#ycɞ2؟\0W՞%b9517FMl[cځF? IŸ0Sgg[Sc.jW-CnSonKIx)"lP"7)B=궭yʘSٔ#W6LҬ*5 m>jdQ<\ f5Qܒ7珵̯~~ƠFO HwXa%%hpQ?唒S_L&w{9HA*UGhv&_j4Np6x-szjw  n\LL3±f/ЉT #,$ sy=KG2w ?paވpp]#DsĔ2E[ xR4HA %1bl3[M0sJ:P`-RNN@aCsF۸C9ZBĩ{%ƝƝrG uLԍX_&nTs# &Nu!Gj.NEYUmx%NA[?s\ ʅ76c 9V`hO8oR͒gR} jFء>6x)?j듃lH. I-kٵD]zdE8B\ĐقIDԳLnol-B.ڦ}\X8CZ`eAАE⤂ڐZB8ա@\kU,f迆bUXx~4RD-2r75oO B.'7$c)H(/RµX7/qD⹵W"36*xZ}n=Q*s.c:byڒ9 k_!dePB]m(UU(VJQ蹪\4pq?b ˫.8f1..ʈ*$'=Bi0t p?51W4o{9NѰw ވ/p19[7'RuȠ D~$-R8Z75tUH>)<,]V'@u:q!}qi ^6ܙVG'=&ZXsCyYX 6%ќ)g,wEQb9J .vqJ%Zmږ#N<2g~i!I6EkN[<>mP^j <Y(lo/$Ys :m-,D"#2A"FR6@CL_ TOBQOAKcqf/%Hu9jI Q8AfK[h/j`VO};ME"VPЌ|p2qylg5c4k?J h-^LVXr|0]Pfr)#K8%F)>t-7GԱS/ITu9]'YS88#v^cњfPI"B[w*q"$H@'֔q0utrɷLYҸᴤkOVvNj>Ǻp .o𿨇|>'2GrZsͭ^ivg+ hx3)uV'>ɑh%[YJNN)Ccpu0 oKSQhk*i;>dJJ16s̔{6!uNN(ˬ i: .|*c]5.aL,Ǎn?6l.qǥhOh݌''rvoD@B\&oafm %  6 x{I\Swi`1Yh#V\Bm*8g% MQi/i0#Xu3~:OҷNOC2iYH' HR⑵ tOػח'2vSf JGkc Rc % ߦ#~-~0xYe=)^&_?B|Hu=J͠V*9رיYҍK{xҎqTo)sUllX+r:'-pmy|jh}Q*N{#7>2ydøM(GehqiCxI }wv܋礪De7hWLor2(Q +u2b+y> <BTΖȔ](GwC|??粖deS%̣ewld}stS':+YmH%S~IvJjm,㒇qoh @?=DxaS lP2!ӈEpjJK!Oʜ**J%os'lZlziJuUrj |/-Zhҟ^>DB8~^*T.O/'+!Ӯt-nxIDn̺-}($?O!`<PƂ۔#㽕8?j#lmʋT.HU#Z#Y;c8'T~XvS\MG{Y73zED3VoΜy 1FS5AzOLQDxV:̿K+/Ө$;0м&^y떣-e(Υ˃ 5Nmh;V~FH ?lX(D"D7!dq7 6Ri헁sGinj)jA! ObBʈ5L#X-fȕ`-tfsk5wK$/-&Y~Yƶ@_n܃+) d3WW%neWX]еx^(bmzFdWD--.C\՘[زIRxzLn([=+ th'Ao#ic$8]6tk9Ҿ6D_ f-8Tw vDɰp.Y\jJJS)DchRڗ\qwxօR$G}ʖk$ 3gkoL7\sX' Ͳ󞍴!wb܈kt18/wXqWa4ծvV!#IbmT&$'(MFPdXDNSfvZdJX?|WF5)~_>;s@QM-wqӇh&R \k_N_-&k O(Ώ6/%0hH̃4<E9a,Gˁ^u+vY؍eEt9{h`ǿNbӂGo F P>UxN3#v,jN{C:u* \7>I5oo5MLve&W/is xbOFH^/%Dٹy8/:Z̍yF2D1 qYFhXx29C QլeZV~ALmGoP^{ӧeᤊUC4^/K4v]8kKjL1TH=DনF+ 1_Go :}ZHmײsB9b$0@Щdh5&ڽ> F 6{&#UIhd %Erj!l- !.)PDh? W0PHfK}YPճ"3.jkH%-Wk"m^rM8uTx%? N_aX~ӍYtK2cUyK PLfNLaz讁7/58& Gʐ9 <=ʵl2"p`1_#gPZxL:N5>Md"zqn/+ʾ:qoy~K|y{bntvUA`DH\qs< zl 8Z QWQ)Sle3gBh z.YbbބG~niע6Tc񁞜֦S>A%/pܻg>ͣ/w`[4B՝EixN4Dֶmsn=ot(c/Zҧy3 >mn18|Wfzs X5}bG@ \WC\gSb{u5wF MP/QjN;^Jf;zSh'C upj7g;|1'e? Qpy"ҽX+)=(_r 7ED 3.(M%C]tgh7\[NL_^v&N?c:#fpʩbI3~▥No%ewȕ4$#B7LU Ж vp{:AA݉03iD0BGrJ5diZM<0+ EqL:' =Vgxn&wա:b=f9OQڑ3`q^>J}epEH~ ɧf\1]d#{)  qvR_5HTEŗ)IڅpطV*HH bK0G |36\) &Lk*̃ C奦<CO(ۃe?vhPiv\SuP5}sJx!ՒJrZC1"7d ;t7oǶT_KK?e]mZ{ brgah$ +AX=_`{5M>nY2K/$>ђ}jSÝ;ᚮC,MM"՘:,WtƦwCwZ;2~~ʨ  UlWl |F2bɰ~5jɕ)%'2Z# Lj™`(*۟' 9Zex_ӠS/t-a]yaٍ|zbT'߈:ʤyֽ=X?$~jYgtiOJ}NM5 HLeƾk˅pb3lBSB~vA]a,WAmFL}z**q; S!~a+t[Q$r]+B L$Qe<}|0mF@,;[Z8նbdDP:^g -=pUzSxYL\XoGKڹrρ~3 v8d+%?IoG5 =[X)pA6āSJO$2JW"'k{?~{xB| glsD1"s+fgޝU_feOWI/|'DKeI"s+ڣ=zx!Q!1$ɹ6|^7 E2 {m8J txHemI\5+ 5ak!3 ?]4\t/50ͯ:t[r=jjyYZdP @ OfQe-%]ZBٔHwf^.F!~1E#ϩJ&DU6Y#9*Eo@&Qp `Ң"CGumב<[{ȯ(e/8&w)y=sіLjh_ҭлxU|Qwf-:3Ö;Npiۊb=d[âpM>E?v+B;yΨ4!~Oa~$aV19~N?^0Ǒ(+PWlZMؤ{&fw"%^Dɏ SAU6+tGĎU 9$DSb9}7V-A4!35гQR^Iɒ[_)@bvf= L 3v_4Ç*VH1d9Q>k񊸩\(k;Kѧ}Ej!*=˼\^~+>ŠT׸^iFl; R6*GE$dǔJi|8BTLӉ!T>QD{EVq ZyuGPE6;ʕݺ2T0OMO n֤Pm e@ֱzCGz!ޛp=Xc<%`OJI(aƽIR^>&{CdVciцh^WDž>+Im)$k/H3Ib^>,Йts]̞MB#5w+54 xőA:Ulv٢gAHeynH%Qu!qĢ &*\CCI\Z>,D08%@y1~?YlglZ忛czhpxǜF+I#1wJR'V)/u *:cp!62ʚ:=y}] =߼Y5C"2*ߗl :-EM()W5z4A,aI ++F a4/Mx֑,Y;*% sF !rNYAw6C{&?! qӭ,ΡU!.MQc]ҷjH@faR]U1*T}wx~xfY- ѺY[#G8P lDrDȥqw)>$3v,_ֲ?Y|2*M>#+jv֤n rTn%G)<.<bXIv@zꭓ i}e"!\HIlѾprÉ}"MA1BkDx;}_PW RTVp$P# rBUՐ 9m~CƩnkW֫PDo_#Ċ^yJǰ,U=pl&9y{xL;"Iv괥uQ zL#XϾ8=D`wG`qnd[ wsAA3^[dl@OZ 49a-"އ])l<\?/,:%uu%l=wwt##L?S W&U.gr2ME[~`)ߪ@ovoXDlͫgPzBu]>Sa8d&#{Cm.(!*4:@Z>%Z&>2#?8h᪺PGEx1JH#SD DuDJ[g8>4gg>ܽRƼ"t$nv}.StVb4kuqH whѻةy$GځP=D4x}Co5f􃠕wOե^]r.(7,,y`;ugI&gv5QdY=y >}95\EȩE 6z)4lsQ0A} K9Xf+װ*{WUMv'x`X8 q>ds-~YqqF=dwaX_E1 |owuyYU]2SI&Wj֜n+ŐJh5{JQJHgiFi֫yj25>b-c|>ÅoɰCdx=)/qL5˾ Rj\m)kͦnB2noIg%޵}ŜY;/'͍zg cR  Myz%#fh٠ e9JO|_ ]w}lFBIl kzFL tNb =1oIkP(\k-4]qI5, PU5fDqd7/zPPy$'[0Ds^N=>h_l0d=椿,`~X]^2+H*]Ds+;2gPόnuyfg XZUe_lg:y( I2$,e^ J.c9[/aLX=l16 ԫ8?= ;":n:bNkul-R_93 q~U"|&׀/G#AEpc0ھSՍGPD_@O?Y$OXkr5VVByD/P ?|9o?H ,s.MʴJAUIh~﨨HAyPav |,B M/>GM^2\Քkz9Bx1-t?bœ2+*P5)YDř}xlX%!tVY~G.2&dٚ{c`"ܝ@ W{C+?Pϫ[sF۶"ԑ `TI]&y}|mebvG[~| u8"0NM<'81w7f&Q'vU S[#@(Nv"q%7\p*$dczǞ{RhR;߸M=u֚ex rd1ˍ'5dh4۶ؘ8_`*:Ѥ(M~x( ?Puy2h3Hu}|L^4} MgW?t34~HbfӪdB<eBPW7Jorڬx.ppe4g2jKv(ȱkFOzzTOT܃ |u͝΃PzDD$CG!bMHӵWHF ail.6%AU^jjd}n5UM kSJȼ7d:HQ*r̡ N TBϺ*?N2$BJA^ΕmFL lð]Қ|jbhpX^$%U^8z+0*uhvI'wN`:`D)`AP'&$ؖh%D8ȱ^(#[wcQtQ:MѦhRt#f1З<)1 6 N /{Su';%E` r"On5F7^9N+igʾ('~KΖڈlL.IgR #@fr#3euY$U TҮ81qU?I|'osU=Wf˂Lc-ǽӟ*喎$ -q%/Q[r? ɢ'ϳu9(!reTO{6DLpv m3L@/ 5Hlj9a۴cubh$=trb|u0]W|5]ikc:IJ<(=_74% pEF1TcЭF0_ Io4_\^_ζfӺ\TߎKPuүs _lM@B1+0h0Z#; ;[htW-ýr=]PXr6# DumHsnH *ޤSx ʡXyFn_# rOL"͹ZMºXJO:6Z),`3̿c9/$ԝGhfj.\upnt2P YG}ȳa¢qY:u\)%(pP_DVgt E9D :O1+ݎ4qx0d/ӀZq]'M& ٲc*mԾ0c1ss[?F"0 h$ ʡ~8sY^x)M *6O@P L}WobbK݂n~mlKN+R_7|$zmoAt]96F:Y` [qݙyZ1,0~2=!R!z V'eLDN@4cA9{ $pxۆp<͆h}]R[ Y9bF굳J1JvȞ"wFrn}}28W!YVYOCc%ńT]!6(GHi0z ^\~9J3E!\"`X'&k˖+ K[BUؑojK~"sYȒl dpPzhҌ4LJp-p⻿ӥj7ޣhG RDL466-(^EނGٴ~&c-~ho4?̅G36Ldˀ[E(\F7԰%0K;eȞNX'%`$ s':ѓM7YXF<^2ht-',IkR٠8 #zʥ|ţ( 4R~&,C+7(o5q +)̔}2 &":λ uEyΤAzfQ/1 <[.Plj'ȕί)lsՉ$Fv)sf8XVjJ$w$ " Yn"<3!jeE8ߩom}uF{#Eqؚ^&O,K;l븈Qkf0e_8١}$f ꬆC(*}J8x^r#۵^dm$dS,Ħz2iJwYՑqr)ogdIzv现sY|^@B|ATGECD"V㪩^\bTV 9P4n^xi]X"0)dFCd۳ml_8grLLr!58Noĕߡv:h6D:WnEk#$tj$JX 7\s+7 m~"eШtc}VQG%oTi#Z$[-.ضgOPdx7-Z!ɱu"zRW|Nn|iM϶н+V|.|mH5aD I/>r~M<x%?1}`$ntr;P:,g7$6AIH d"S/\nIlgR0\'E6lI\F3~M2%ዅDZ4X:$Y&h޹lo"^ iPW۵VR L3 tW4r3tܨhBޱJ `0Srv=q![.N2}\Fcɏ/&l!;6uj"HYN[u֖rc<ΐQ8scs~в &h0IZ;dhQ⬠aGqj vkoUAG<8Sn8Qi Oqh.~I5ZZ"l_6UG˞b nv/V~7M\φ?q0?,"_)Ӆ¡ʤGY'ZH"ڴEдVaWjqh.;=l)xBr߅{7-etN3F*΃M$k0PkoT: ͹o75?;1sC@:_D~I;.84d@H =%6: #5[Q 9X_#Zx˴_}J~WC6&e0%j]e^=NMN `<=-̬]'1N[5^"Tl.Mz>ςlj380ң3ڕ45ڬzw%gZ %sOb-Κigugklkכ B 4x-Z6% js2l[#F^GRNqpۻs,A?ҵf!8n&{EnP5A(ŦOfEqM_rV6u86}eP8d%nt:8Im %ckOg(1V7Bs'Z#$F7IzSSvL%ZaCi~[glhؙ'xͼ\bcϬWSd&c#jߤB$t2UO%({=$<ư;Z+)?nk"fjp̆@S5̺#C3ӈ@dB\к}h혻)^6 4Y2-(w7Πߜ폊Jb. R-G1!1j`.wqK\EЪ_u^̅f+gWΉUL`S 3ȟSz 76=ulhQN! .EmF肪}l&Д2,Yf9(iu G4ffE˃4Zdd tq(!E.HZK@W)3N'D؜r`F4 U$|*zyQT l7=(1Y!&{9IRo=Hfb)gKW ˮZ\n~yY8!:ilh.{-]}W<ԾBr橪}*$TO͑XÍNx& IL2dJ93"#x)\r{!:&PcN+CG"zFT_J dB7.urdGIZY$&op4\+w$,]B LkVgfH,՜4 jĨނOG ? N+b CBlkc0 xwǚG:ˣ3%(Z(=q-" 8/ Y,3vwlH^i*7x{1Tvj>."=M)|<' I^ 9P1p_mpv-5%LS"VʠS\I_4r=5=iB`I#K}ّǗQ>eO>$H`qm 3=A.c$z zn_yM݇oT5Q4JO~ wnPo~IHOUO_o?/UK:RZ9>TjJ LlHq(ywy}!}Hdds2-\!_xs3 zSV8Ow7?u?ȱEXXWFĠPؓ :NiZC%Wbq[2{j5O)oPv1<)UzQ96:E˜'OOQ/p:*%X[YpEj՞Ipd;$|VFLL?2,G Q%b7,( 4DѨXD3 GyngZnB^ɫͽMx0FUMIm]XQQx9Î[Sn5^c^ ;ߖ)I!o`wdS7 Fy=NTM.8ut;A.KIژ6+QrnU1vgކrѶ_`Fs0{,Wvp%xFYpjdzu'ud7pDl,6M} s/<K0K*hm՛%ݳpȦ95 #Kq}%Yoͦ4 ŒKsv̄,t6 wBc^-JKf=fZ3N}쩈{\(/P}0/sάHYF`|4KE) uk#]&"_;blFJz7Y7YRQնA#~>6׍N4!P'} Q~xI%)fjZuՓK=&+CJLV@2!VQ$ Ftx%/׹w+ \ eԽȣ޸-iHW/Az BceJƟ4:8Sa,ᴹr+esq: ^^~Ho{Ox_#ZLAAIG[E񌊃ŀy1b ?4tߵʪ% (\+ԂɌa Qm,OMy!~I<9\|8+e챉Mde.pr&u4wXa~DOx۫j=3G(~BYvFt1CY"Y$MV4A IJh`I;B#+`p`ZRx_.&+Τo ,tEd_Mh=(t#ITZu8O p)HLSO2XYl@αjל1-pt ӁZ*Ѷs&DM/uBXmG:v?[u0w ($LgPebⵗ9dx P;eA*=FC|gq ._P9uIay瑎WP:6qc7k`j+e=8_ofqt@WġmLw؉'=0Rʱ0X ^/ԣ=Jul7xVFB5f; YjeY/&h|ʀo )@)z6vrN$e2e8MaDr? cU Mfftzt9add 5G m̱ȴCzQ;$9_x~ 4lc㵂c L ri4s:B 3UGW{ܚ1}֟]4Yr0+^erljؖ^_wm0jј77CY1#O wPU1tGX+tvU(X {+$?h/N? |D-/ؠzR%"ftVZ2e!64'6|zhX>]K{tAMJfj¬bH)G fռHIkz,>2~JgsT[.rN i#S i- q"}AK`qϕ?gBEw xϥÎwa(NuZ$jU|u֧d onu5Jsi(Zw465ґ7HYv묣2jscq-~wo\bJb-S H!b  +@:Wj&]Kʞ:^b)mG El-+s[GutHEJ6-u'wCJ.WLG[0 v!<Zp$sJvE!ؔF4l('~)&_tJ0a8ܨe0̍?$mJOxSTr{7#2 Ԏ/f$┠ǔ*QpWR.Av dV6N+ Bwϴeu*ӵS$LG ̏ד[2b@iSY.Ъn-qxݯ|EPiCJ1?wI&.^݌@bI5u=8F!PhR ;ҤaY-,$^Xa㾈69Opn`dv&p͛DR~f>[ƥG@CQ~ x^RKXr:.t;_^=Zsǎ,Zy;"MI51z-sYIަ9);V;e 'Qz bvmr/ 4;n_mfϯn ( a3ZCF)~re?+ޭRӿA}Z.`w]6ƆELA'm]RxpҮ:X&t׭'XG}T(hl:MŢND sE0@ws涬M >Ko c/VP~6/#\В%.k*:¥FjvUy. {y#$[MKp Ӫb&Q5lg]̜,=sUo[5[#nLEO\]SDo6@,ZXى {=TZR~*>,\ݗɌ|.bFʤ]- snX-z&*%-E_Y -sB8gDڅ{`5fair]03 LAr,I\!عa?ncQU|vہL )qpW@v9u(B T ̜#L9Р ,EDf lESkж ¶;NNR>B}ORPAG>Z[r+O;r8zZ>| Ť+JOm(e%ED Ir \Rzqi,Şlck@NU=j͹n ֗1fZB4e$g,!_&r>2 lht'wcx"z HeT歳şA8Az\BA9A="P)Q4~K78[dInǏ]tuq;;}/S'cnr/ёuꃳ:fVA|Y)]:Q!>=J@0yMɑ<Z ݽU rqWt-[k9Gǐ6|J?EĘxGy-PC U:[gl3kG*MCX{E*)E:.fwꯛNoWQ|&zF0eΧ@_`}f ΍h广/+yA&l[$LؗX& ^̈mBs :Os2ԐARE^G.3 surp[oq)3+?c-0xd[m}-9~؆2ʲ2IlcdQ62N*'m/2bsJލڑ~ =:ڷQb[ !J=̶'>ĺFēN|n{< ̛:'O{I9̄>-n[$u:LPw֐,eβh#xYT[lu%b &kblm n`+᤾;2f$XMy>aB! s/:+PLe>bbωu9 u_K^;WE8~-s+:u0(oDA]c'Dxk Odgvh?]P_R/GjN0l5L z@v}ʵ)YDy ICFȗYψ"б y=ҟe!:I r`ZN#gˑĜ}GOoXAd`לhĥl{UºqE\X6ZRJ"omg~4?w])ۙ&lSϰb5l+U(}?яcd=ohc~Xz%9hN9bS-Hz?Tc9"An!jsû|;PoS7PX씑ǹ"OS^bNҎJxQ$ h2DᏨՠm ZzsoTGҧRaMdԭ^y>6‘O6Iof@*~*W_ $#`#$SyRVtfp S)#aMJat"`D;oWrInVok̏Jri^"y1۷P~qI55b ̢n: ?:,Xw18SiTeVI;mwz_)M8Q9'b`% n9Wu/{ۋE o0]}Av@$za% _RMJi7 udwTb-1S}U^E_vYL~ac0XW߳1DYm&q:4Du'}FOlƂgs2r{Gк4FA{* v:`p(N;X2 ;Y&h@xvmHCGEjܚoTW>L:(=2K }@NǰCL\߇֔9Pf5Tưq-rB /̔R;Ϡ: eԾweu]KQhxSGA!h?gdc"w( C:JuJOCϜm3 0.Wm]- S]/Q_nXmUY}WwuR4QBGĝ T:^1N9&-Y9%l}CUsjZ~ p-yR&EG.B{hJhv{H1 A#YԄ$i-ՊHqrot"Z~De;7=ZR9Bn&9eSS (v9hkd*R,8CPL]f*FIWQAԧ;5P)VcWY!%%2ɊOoOт" _6 #} #L62khFug&8ps=x("it^ nx,Į!.PmƠPTȈy.E/eW͚g(^S.S~Gt*-b.!!#Ww1)0 *]VSc}_S (=dbBeBPyP aB醗!$ c$6M-&'[ zpITnHk5ȗw@g.*ܢ4?O{vsrW/Q+hO(0ժW,;"#A9lGH@cOEt8IKj{>՛5|u[.Z)r&Z8hn<\Bg+?ąaj)i ӗRM3s^ڃG*-J=d> _B"\> =J6Xjh(^] /ޛ6zh܈ ™vܛe `W6wM2xE-Q?rl:Op tNj1C@} WkmB-xSS*Wπ'-vzM _4G8 i'튑ZqFf-xKiaY6|e̤gL(a, ݥ\UD&KrMxw E*;”~M8Zci"e!IE2=,{Cg{rSw'\wWʽB5 V k$23&"L8=tya;VqN5 NJCiLBiu3lfHÊv{-cr8 !Cwig3%2։z"H~k/]vv*ak} y̿ q )gJܘjƓjm]Fs]e". T |J!+7&JIeRp<6Qz u̫^8a,kתXѨD6,e,ց9%u&~|3:Sou!0 ~hH=%kj2_i3]T-[8RXǵy\Je=f։~#-_5!3h4:JFW+ F-F:+ByO=ޜjcShI;oH`$8@).s4yf_R张F ;R#wa +By `xO+UPHT@:@22'()0jBJ&h EO@T4æk:<(U̷{_.l'brjTW9)4ߌwp:C1jdH3ƵoI|I>Wa_##%Z"6IzU, AKi9fPw_~`Ee%rVCϗ*vŀJn(8ܭf9q>Dc \jNr2© լ+l0˄lL s m,e;2k:CHD=b %͍biVn{=.kH kӉ]V^G`CP$ v$N阆܏Ts3lx77D^5>dpl~|?ma?8k (-V0;^2;as؞q0>-}|ȏay=8?wLVqQf"fhϯi)R*AM?9'#vmFI1+E6B:ozGp?/RJ{arҴ &VbMgN3W)J|M,YW\2s-ZVj?(e¦ҸH1 :4XݸK ^ Mڻŧ)f`n/l3~bM6xeԪfl_-h1/Y2jA/0AZ&sDD&UԳ1,E?ʢ\wgh(dlYм"|NZ"(eSI<6Ϯ6vGᖦ֔|]_:m :gDq˺*jBrJS)l:^<[Ny䂌} )D% vI>ޠK~")^CuېoACY"a3"%8>< nc,!k.2Qbh:b)L:T0MK:($.W&3BUm;pJjttR7fMv |>̗" r#]X{ âI /U}x:y¿Ј!Rk^/AVOP93!,KSVO+ z*BN^Ão}Rҭ*'KܦMr2+2_⪭V2TgqHxcWBJÄӨIBG_~nGWCܩʚWs+itq[NSfuX!U& Zhէ&@L:M,HH^/Hen8mFI@,.L7ի4K֖DwX4Υ3tjv |gnh AJפ.>?jI}%2>seL.x\9|̌ 5i,BejϜ8wˍYsr@j(-m9@zFɶ^ Kl=^_".>$_B9|QÇ5+wiJ]K rW"$%yB$..!426#Uj|W42ZY}:,LO&׹zNpŠMwaxÓ@7 _ l#?QnV틅abu (97)TK.6kߐlޖ -1MS;}:iԓ~s3P,%),TKȣ$c atx5~އvl߸QO䷣Ti,#yQ@R&)IorN #DکHs/MH8g70 g45/򥏯 ~-_giV ]TqLr-TV8 .~ 9љ! I~ ׵9A@ g\q^-<r~Y :68e~bZ'Tc؉Bi'_]]fof楨Z&%w񯟐c}aXU9g',‚5(edxO2h\=8 QAћw72\^!Xy2DzG뽐EWC:Ei'X=tU;70j-zώ7G+0yU6h3'$C>71TH"{GJӉ\V;iu"! ŋns-Ska<'xR)$Yf^ @S.cõD+6O.*mukx+հv}VSF}Df ̉ t66n\k"r-("UAZFd|x#x"ud6ᥓ Ǜ`_HWkfϟgtpE!}{ܶ0vTb+Lc%>){.ʗg(uy[$ b6|=4C)$gf9(%hDZ֥H>CVCeN==OoM ,,B"J6!{ enf+/kB[(àL;δeݑ˧&|Emy4^/!3w,2gzy:ŠI HQ^R}3B'#ڝEzr23d3tH1^BcvH%;yE2W0rSh^#iV8@m2̩gq{=>^VkˠzdMBӕ1oUl(8l&3"r4@`sh}mE` v@N M ! _vip_z'9ru='s|Oįז)$}Zuh>0I~qv}՚y^sJil{!vSBoU"Wn&1OѨbAY>+)GĎs7IYݿ%CQ} d*L#ZY:w`aK8~㋭tG'԰&VP#`#UޯÁgN;;iqKu? } M(O,LUC{*zYm.P:(gc͆]7_v)2fk'2+&{'")AvǦoilI& +jyPcs@Wםn7 R'uM^5ĴYI/=ei0u%;DzIh>*~dPi}_6BBDɬ)1-LXYğzGwKȐ?5P_}3FPF@Z!MM*L2[6ʭ0Y覵\:䲐 (ꏏ['fx8Kxq3xFss ڕY$b:Ue '\=W&XlpO<lgg>^CS-3DxͤnI:14î*qdJ 7߅rng @9},O` IKg`i%WB]I|UN/*1DAu~'B 6wYC -t PUyK{`b(H2˓\vd>,l?8R<9A~&Z** Dd؊rJ5g7+K$zyii9h32I(+r ؛*uWQ-vYY=ea7ڊfG dWi8uv/$C<kB8Vez{T(CtqHASP"Ez? ^@XἏhƮ l iNbt"sP7 ^Z _!=H|t@Ng)۩ 8XE\uǎr |.ӈ TkƵ%c)g$%Z xsz&_>4Fungawi~!| .>axoSTi=,eZ,ü((w~p+s @ݺ7P5r9\z_>=Md;d!Y})YkS1b`b T-DⳳzxݣpL)x u@Lʁx V ,0WZj[BBxߢ>s/ 7"=:UFoI(3~F i⺣j%jmTrիke0Ru맪Y >m])MQ0+gl5 )D7#DWLc&fEb^cD~"۟L4ECmե5)U,@v '5]2xJ|QslS=II(U<$RA6KEg'ۼM@>vO! ltӢodhM =K]A\7_l1X|#&Zحu{Xv-}yv9KB]0^8,PVpיL2aLvORgyd1-U)3'IΔ`t=s>?)Q,/J \"\P}  ֲE;H,癈Ej %BU{ɕ 69wKEɝa.䬗/}cj7Ȱc\+>Iwc\! _T砶+IgnD-| hu/U!n۳lCV{}-]5oS=S~nJDRܱ>J,6,Z#9ȼ{&kEiRQKs0jK\nxuT4<^ck n~u- yTw[6@\"IVr-ƻˤdooy쥙xNe_{05* C\x7,} \ӡ"ʁQ7O6 ?pll҂Qh<~=ٳ8yi®iT>U9 /Ex,xe:_~ɺfD>W<) xJav4-lD^I 9AxnuYlsJ=Z Hδٱ_NGs.$ S)_*q_c _fsq2=7EPt-y4EQ*0#3+JZ-Q/R:OכDRÞO_wD9#3P;\@ 1lԭG[:]tR JBيn_qXkiŕpu1rw=9Nٚ5x\* rWGm Tҋ:]xRM`<㤓0@+򈐡X@/WO%^2qJ)tO{ԡq gé%x}&R]J$=WR6 iLp,9{p叠5*x=owޕϽ5p5$2 n|{rjTdT͞}sG~/s7@TQyN `ՄH>uk!H+݋*+oSE`Jcs\r<:*=mcLuW؀L҅5J+ĪT8􂟟kEM3M&t_E"2K9ht^R0Ywn>2[<)uG~2HjfJQ,-w%~ ̿2vQcc8(M?!p"Y꽸>qK ::!"h,nI[eK&0h, ߈|tKv&u!E*?S6y' z~ Z@/l~W/5yy <$Ū, ]77D\c{<`%)0f!E矧X.Tsݝ;'ЇM:  q7;E/I_nbwE$9017v6Pl=.c+ct |KZtb|#Uzs}8cL+zxyR1hn)k} [Lƶ)vQZDL jXqEBUtozřU3Ry!fQL L̥oIlhLwkݩf fmUɢ4S2e cm|i /Vk6Puʉ$b<)ei؂s(cAO#WdZ$16{x*ӑ":z,_otj !7qAXOw9Ԥ2k ݐOe"t:]߲| uA90RWuQ#?21..; s ÖT[@eY<'UyF%/sLLNU=Wa gCs eṵ8{ҡ}("!)Km9z*cߕTGq>LgaX^wє=#~/7#1vsJнG8nlIWXv\!emٓڹi^qZI0t%`v' NÆe{0ݼ\\Y'^;ήh:1;N2v3,OO*ց,)1l?] /uN>P¸i]/`чLrv㹒SuA6*|jIdSq"kURLaΥHo>Ph_|ggjSE%VBs^YYeRa˭rX@ߟfY43ofIB\D!EfӠ}W^}Ib6bz\|8IcG6椶X./jJ!0ƶ6y@$KNdJۦ I7%T%f*;RuqKOg@^" >qLT:_oN>'&XWgyܢ{,=$}Lp-޶Bj7yv舫ݥ#"B354 "ytv% qD>MPtT>ϛ.g1J(-XW 1w=e2"9`69gZ/%`@\\mg :xąvl.QFq N1+ ޓZfn1vqo`[0`T.͂=NGG{^;EU{V : f]*rI ׋mIji+'M~P@w%;|Y 5Уv4<\$A@[%x 7 9'j^J&WDPT8OD]XBЬP:BTDnյ L2d?ٺ]*ц @ԔQ'.n[.KO:H!<Зsd#:^MwV]B}%5ߩPy%yhօAۜMy4  F\bFlٳ(\6*pn2I·$Qr=+mkaӫ\L葝 ,kP@J^N42@cُ̦ktVS0Y 1nK6nx*`=[d)t0^m!9dlѥܞ (ΥCljѝ<ރTё-v]w *o{$vCH܏*K=Enec#{~Aa 5?b@(qň}"?o߷þWSPѻg0ܫDMpom uWxlGBɄrBt{L6ct{xh+*VA'EEfxKvxf82"rR+Et4f]h|6o) (q+ Txb[x'4is t5\!>? T\ J?}"=fmgRErp5 ~).>\qP %]!d~+? (F}@W{1.<F{en.qsps٭[ F>_uwvi=PցiISX 21mFw,\έﷺiIh%YjG64(vgxN1940 I MN@h=: ѰdA\9wU\_`76U,mPz!/S̭ݟ%Y~_aJ*jIS^$=nч Ck>*>`i%+nøQT9\-Bxru' \5?3P)ǣ-z5 I`" wۻ/$.v !tڶEmt!Gx,s볬/B1QxUmGh\)4/T+9psqqf QՍ_ &(η3c#YUdWo .>$UHr''}n#~s'@-6m({U%NdY +~\v||4wkHV+{A{K%Hi‡^Plfo(ѮY'sku\m'cW<4ޞ0(o"K W ')liJ`v,Y=|_mm'Kb ND [XzEBo~(:k9Y ™K<€Pm;A/Ϋi [铉V!AЈmbQAIʎA ʤu8mB,R·s, vK366] lG u ,uY݉LJgb7>Qbwڂ($&v:. 5m,ڛ `B=8ݫ5a(N*/e= TJ_xҁ!hLL #ds%R:wv^)T[H6\o~VuL@NG*Q;OFGV 00Q;=~Uր@54p(KJ &K׸HюO3 lX9x+9Du0`@^hy INf*uDT Pp,,'zwybAr#IC{0Q#)|Y+_N q 2P3 ñͰGmvV=d*i2LVTzmi5ft74&wotˑucd^s d+׃~qZ&xzCc?+6*"Hr۬2T~XCOV%ߐlF(6) ψћC/L>AjzO5X[},hIO5 XTr*(7,p4'? Eǹ}ݫ݂H1P)72i1F9W0" ޖQ0K"Zcd ߓtL?,.4yʸ2~) %Q"(('~3" gdmՙ2YՃSݑX&+G2/𿫵2䧒!iS~,B\3N Y~{}ߠ,x 0{R E4yplioYN1ij,C/\ "DRE_67MgU޺o1` *1rC a|qucǀ֮`FpjQČ 652w.;DŽ$S6%4~l`R%\CI*?wz9sG@\[{].c>|6VKMdZ>V٫>0d4|`I]WLA@I߇ehOl8H<2=֪-͖wJN y*67-N~LoO#p4qb޾ ڱ|N8|8סi,֙W.02 q}%!xɟw1GH6˭B_\#uU z4|^F,UAU*ͅ0يFwZOҹ;;̌Ҍ=NihڃO&~^KQô|!VffvO̠^~.t@9"wއ&%]I2}hw+h^=ɖw״h&ٻS%ݰɯ<zVB3#4ڲK7nq'DFǣ:ް9@u{)˓mɁ*46ET%;Ou7+a4'&lKnX0-?nX}4qX8 ^=7RgMw.S=f@S1+i)+PhXm{GGƳ<X ZnlH͔G?H|Q'WclX6\QA1RPM1j>\AV<&aWJȁ[8=Usf_wz_ڲ Bw{6~킳4sSSu IC(0]k^A;vȄjsTh8@MW~rĆZT'L@4 B ]IȮRe|/=g_fE\s7 tw\z%N4U"xgqh E;zPk@ ˱w=#~9ZY 46\SR]w]I>ls :T6-ux[#s5|ƆWh.feR z#|V1pkZy{AN_/%e-7J0}:^sQb]h8 ~-=ʞas`AgH%\Ry`p! phYDch$T0ՍbaTkK_D"qCPpws=0ʼn`D$װ «<|Mi -\/,LnV_"O:ֶfeipfѩE#=-NlƝqn\;uAa] 2WH^v3[Ԩсyls8A_ږ4-ϭCk`(-M٬9Yp[LHoDxFMTkD1Y&D旳o,l(3Q|KfD xU DsAe]pd~ۅA-*j1_QeIF -k{=Aa ޒ<k EH?-5?}_t7VBI GMRKI4pYsw#\R K揳e$9QJ# u|D*AlP?uUE"*'gLgךn 5yM<Y#le8ARk,?"p6Pd 0 'e%~%K|4lW s%mz.p,S B2:CMY,CZ[~q%ywjF 9gڤɃ\tRGA tԜ|Էg3 ¨2.^_l8E:_o#RQ w>Nޟ <[P6o>^A XzB)ޙSVIo r#aD*bP!ʑzoyO(: 9AOM=O xI%fM`ug޶jz[)8 q6zㆪ#b.g~BZ5:.+Dբ]fo}vխsϮl덼 H6N ֔ȟx| n6fB*ұI 3sm#a:^,-mUNĐ]۸ {у $~ ʃoDzs/^:^|BBx'&ĒK/,i`lE$]k4 Ee'E?w"ms@U@o⟘9jj>2qcc wB)9NjXk&gJ&Z8)l4 6_!9:Ի| Ī(bt*c w eL#@e^3 " V#I籚0טW;mDh)KZKp첩SDCȽ.暝?ҞKk^ |cpFZLđ~\e;[iNH̿ΔsWҀmߓ-ybҔ8 #N~Q6fcrUg*7Y~ qڄS~34²m@`3;ķVq9{wX^Wu+etȺu Tԩ?Zkcl+brM͂{/-~I&?@_h5pӲQ Vv Ns(S,FN}v]#}M;O-+L[iwM"+TuVX1X Tu ɧ2WS> 8DqY dC%kfXwP^/WQ:xġ Xƿ#D~h",߃d8'mX:@ZvO kY'r 4  ά골Rʫ\DхOڐE6mtm'0+ܩYJCLA(=D*uT0)ii\EBSc#=@$h cW^})KdSVa!)4%1:|3S06qPj6/eIB9~TMa;Z# S.1)pn|ORteѢ `o{=-Ha<%y P҆zQsPԠ=4E_nIֳܤs=&Ȋ#[gW*O{5[iU\Yq2Iƒl obu@ghB(/t[+ w(c stX uc幯Dmt<mm]\d޸R45߭x Em 7ĜD&)sȕxP9"{ wr ]$B _d$ۆuv3qmKL_VҎV X@Eij|ק'b^ciÞ?,Ҵn)mbU3|iM)T ~m <5te[ő :[T@4(N)$s 2{7D-7 Bk x3X6s!1<&k&s2;ºB3 2⍓[_Q1gKj5@+Nፄw%S򷹀&G11z$}JUSmvj:.h_`5C32oP 8;H~e P݅B =b<Z Z*iL0Fv$E[>;/7 /9y<އ x=E-UIﬧh(bTx 9zhG_cV\0W r>w)>"{gnQyl[0hVfH{yA̋9$K%t/5G%%jf| `(r}hI} AcaA/V/m~+@xk3nI+x}_1[!`e հx6%C`ܦo¯ZD2Gv/|b5(fVg&];fɭLB Cp'Upw-b䄞J@b~tqk(:^AfޜdCQyVGs]pr"/jnDNk]/3ֽ5Cm\ie%8hKEoYoAmwiӆn\iX JժmKcoC&,YCJ[lz?YC~s ?\0V060x1p<1H@ -fuzN<؞ATTqY-E+(N~(#oUV{X&RvO`YL:Mn$$z.0/>qeNwiY!sf g @=w#6Uw4&{=ɦOlV.0aƧ`@DqYC[hu<^.^ӶȩYgL[Tl {sUf"}5"li緐n̎HԂF"+4imXWcWbrC +;SS=r=!$WvR`c,?tFrf' g<$x?~V " HPj,$Kϥ%:h&cJ+O|S. J 1FtvelGunr{aD M !$ы";GΤ2ڴx+ho "icl=jRd֠]žp5/jne[Cӊ dg4;)K-Yf^tgjYLN[G;X~x@%yh9Ih Sz,%M)AjRMɒ VnMX{J]ۇ)KouKZGA5EDDj]24)bvfj<t T:^L,`=I%9H$Il'nVg\@!|\D<;v͛ @/P$|鋎rӱ`*d[˦Fq14.~h?j*{=Thc!NL*tg ;kAC{}ۮ ئ!#yF3dKRюf*P͜[lFimS,4wl1ޑҘQY\hdkWc?cIF^8" (OI22Rд RrgAKN(7#9nCyJ}pYЪˁ1l ggS7NJwuC|yc7Ή~wr!\WļTGfl%LJnP]|ü*o8eoļM!H]ʶw֯AYZ3>ej:͊ŻGl{"Jյx0mE2Xv hwA%k10P7|esQScwW<-)N:7Owq(:;D8D0}rxcHNm~KYE d+UY)t;!I9-A`^ܭסep43]{H5`WFO*W{ePz'<&}VSx!9vWƍV&f(i_p "i` S%FGⴈSy`l7!)V5~Jl%4uh6Pȡ \~Scj*s}Rnr!lw֋lc3hbI^O3a~)@5J6e 2d2rq( _mRMR&aUgcS#t&BGIf)V36̿Ûod/mouJy+I1:A։z FvR]BnݞhZLX0KӘFEO aE?lY\2nٻߢF@BgK?S w95w"2ZF"'hM~_iڽSy, Btڬ['pt 9=\!l} |l/qe!٫䟽m+EۿJ,"g]]2],ms.N%W]i"-yO?֓1xj%IJ뉊e(t,ŠOY5zlbv@Wa+U%0]hG^8CBKȁM#PH҆B(ҋi4qod9^thīI.(~`s=맥q&gT<3<za2v ]DJTR#+\8:ſsߧ 뎌(5:0V#hlrqENv*ci&Dņ8AƍmF̀PLP +#͖;hjb,{ÃZ-z'pN' Ps =CX}5&O`;?4 `pcQAWMN&(M]m" K1[kT EyFqw0 tަGjiE|<2(;yqZI_fVȩfDpNHC. B].r_ k0VWl_X/i;wrE_Hhc؝T'$9 m΀(N bҘ J1 #1o0Uy%?^ pB!9!DŽ&;$NȂä` 5Qi@;+ SNT"-pe͘_ J\Ba%@ַC|R͊r#M 9aΒoIUjo}|ke!l7’ifu HD\G֟8Qf"}TB֙7T]uw|Qt, ՑV~zs\rNL]F6RLȐ]+& guQBa~>e`HtA&酆j[Aݓ}L;cW `(1NKV x p ~m Lߦth"jxZ{c(vA>&nC|iv4e5;UwhKhBnuaZJw1uS$u{[5'eaSևJ-*%^3t$Ѿ,_j!Y73~o. y`A Шj PhZՐdjW\B)kzm,l " gPԶnF)N&u (HAİ/!p: Db3XFD,>#f-79AN.1:ӯL&EdE`KΖN~?!E M6jA LzaMbA,yV2^S#oCBKٖ iO KH#W_x@bV@X}J-+|9j D7tjFmo q S |s_Jӹ~GNotuU!bx! _C-a򝍊xl/)^cةRS%Ql9:4u8_/U_je*ښx7bK̉A}\ %8]Z @1d֐*l[%xO;&QE.Ml\>W2!r\6;!Zn)4y@ãtU㋚¶ x/H{cV}1DZ0a[bl`[8 cĉZWp#R^&3hšYZo*>AGdo(YX>\Wdf%HWYJFDf4*F( M,ނkQ GDW@{w#rD腶O'v_Y ~ZLlMGzwӬB'd򧓔{lɬ HS@a5xUz7ӏ0BzVKנTih^Y&\{uPrYi@!״dbQ6ѩ|*}Q37=+1/j< 7"0V][$QS424LTGnOf˫+f'8{eCaHy)j{xBǶ,򠗢I~ka|zj=h×: 2$/?YB'{ ^ovv_3k yyW?:}UA~tQp 9.y07d¶T$S@M gLD~sMu e.w\M]s /?մ|=dDmP'҃^z5;}e.Y*=,[;wͳYʇnz Ԏ+&< fP@<;GffÕV ԠQ͙(*03oݟƗ9. 8HB2nB W]÷o|U Ҧ;)EXR!Q0MtٴAWy)d֙4mhx2UX㗚O4 & +aɔ=J[ kdVj6WGr3Щc#X*j, n*[& AŚ fWxn0DnP9(S՜gt9ua/Fh7>QX+PɃvRM*h31Ё%» Q;vEJ4%*\@%ׄ-&Qʛ-k)s^>ifK5ϕW%DpZPibёt`::X8{VQdPx\j{j1sw)̡82:Z0ITJ,~֤4N ѳ[ d@Q:#<::oeBse1ع˰Zy-+ @;8@8+ w<Yz { `9ge(; Ǡ#=4gW׭E(9(Rq`zO I@,_q6MYZAK_Wf4nl8zHT|}[9$({Tve$oSn7h\ 26?g-d;d/hORGN; 3uqd|>+%p^@q H?+sts:F<T 5EZU:z琀kǻhnmwAaXv]D_a'` DW1 б2ԯ ˮgHN-R̄ۢwu))8@x_QOi! lKCdV-",>[a?2ƱWތT \nIZ_'ا]!.w.4ٰ`mĀ2-4#ѳ-$F ".MAҧ7!? PE'QErSoY"ѽMџi(:q=d5I?oR[^@aMj %XҲp, "1ty-~8зÞ?")u@Kql"aL '7D cӠP+{ `%¨ka;!.e.@\y]kL -S,apъQnsm?MZ ;Sѕ?٥^u0 8Sr//c9)PhĊ%0ReE?[,twז@yrTկXBW,?@xk%rb؎ &Zx}fC~V)Ciƞkzl89$xf 7zE: W VT|fCSsA+rݒU3C´y7H%~4Nf*&n%߱;RfؑzācYV`22\^N}**&<}AHBQ\PVO箟L9`Q Õc*0 @SAF:9)@'"M(~k'ēO{ Vy\ ᝝RPA썅oFM;&+ 6O$? Wܴ!3*4yQlf5(cgC70/IkZ| p)nx˲>UZ"Å? J }U*rs8E.N̎(2 M"91&ˋȲt|u\I]kV/Y}DqEnt$x@hPQ8XP3zy''*X{n} E֛)BB:W5Կy/Ǘ+tݫmq1}藜w䡳R D*(t^8޻؜n?6$U޶9;횽7Tf ⠈K j&Qqv_&A|iM6^iPB?C&1DU!6!9Sؘ귪ĥWL=mrٚAI {G0Bt ]|civsM'y€O6/pPvJWJz?#W1fs~(ZӪ) 6bHNs']hoJw/|ȝDO!zJ/B/,q%r ,\@Q㫌TatO9? k5lCX1ENBB2n)CoYk;|FVCB}2N2u1C[.y,!:ֳj$#Ć6`S5qAr ?8KB] lND~őy.KBwwc*doE>h#z? R|,dN?di#JSlKTZ޻7"PV6HaL6us Fb!^ RU4$k%#Fo4ps欚};uVeWQRQK =eJl/,~OA'@G6  k*ۈ+}s9&wpJQPGDuǗYuM1ՍDψf ӓJ*^oě=U 1`e]sg` p̓ǑW{)1 3X8/()sljs{-fK:PoaN{E2dP+`nod!@\ί9W߬S pBv.X.wŏoK?@җFl_pk$ C^|={P_XLD/'-@?^\'0 NOFzˮ8q}އ$QC83.ZMW~ܹGdx5riV D%\N7nҋ giۼ*gr`s0 rd@lҝ8 )AK5$ 4EK*epܬ[\E^utoxJJq!|Lʂ,W1j܃B8gU;z az=V/Q?]pHq<؂Jx¯{٥Tmp\5455~~yn&oc%߫0V9yٛ乥P7̒eԛ|ݪFd]K :*Z-=W #kAIv(#Q,W-)L},l0[2!Dwʁꯣ_"J: Fk)>$JԲ%B+%gR܌@H| 6dGDxZedϛ"ٻх<?4u;hVK_]@gcNXVARSo40M{xOdK"ۅqHB-FIFLb4aT8ظ&W=ӛ֦< [ ?k$]w1zcn%=h0 Dl"cv.`(Ѧcm'JKRWκ#*7fͳ)ΌC h&\X$ٷ®A+Y鞮v'8G`I{)B0^*.݅%ǩS*B\(}|Dn{U0dͱ0"H nĕ _`a@jT"@Sg34@m8>.p upu%"R(ӭׂQ>psgCXi/jw67t 0`uh. 5@d9bp?mҫĕ+T+,muY4U֮2KS Gt^wRzH>>G :ёM`}rh]+Q/va]9['tY'@sR q(c`.npAs>P~+ke]PB}2.#ZEE?P_%('lnx9ee/I|PAxbϖWBMƞغ=&w,?j*hjgm;]x*MEZ*9TOst} #'{۳G%WB_^xuXuo. hWϤ_21r~OtȗA$9.jAM>;? PZ6@1kZ ;"8Cp5^ԙNm^Ӻx;}'f81Y"Z6앟ڧ{X>,]X+j:_:~8#XٻӄT;xgf7B| X #ր[,Z`c7yNabq4s>ih9 ׷U.I;*V>)G~BT3t|5w~ekhh^[1xͦgW+f_ |dq~>d9.yPd-5TH2OB%O>a:K*.apRù.; p qT (?<4f:hixY=Ago:.uW4|O]M~,Px/ Cpd܏kffw"z./&1}oDJmt⣈( Zh(j;z1Ab=ܤsgS͗:pZ-SJ>U t~2>!f "GT`S^ ء]$C"ƭ_., g]wKܿ\cc(ٙ"rm7ov25$h>H8]׊wXPp7+ ʺ:NHHiJ"S|дLvZ.$eZ`hgɡK:iDY][7D!_ n8H;c| xAc3/nh}Ń}!m+]+ 1obe׿ &xj}U_TT@2X:c`WL~CI(2ZsAqnAʢt!v$eёe$UW ~g=@oDb ;aNMddp{.4! {B魋綗 IP &Эg^~=9@[V +q%$0ӎ|wK+&}m/Wyr9t?1  ndxx`uAd \[Y$H83 z:&%,HT|\B}q9>p ͜ ²|+L&w:Ǐ;]H} ې[HAG>^~41GcӯN7=Fq2vPyO6qP>H8Z qy4fM8z36n /eP~&b` K:Z(F(c[a3~o㛥x6 '9Vމ7$"kX;NE*4%Y܍p樏TMSCGC-7#zFŴ9]ȍѪAX+aa"D/ON<ŷٻ!,4)t3^AV/]?Xk ZyM9'ݗrd~sU<%u+/ ICAm)'":X`ʸ,X.Nk~Krڥ}]BwOùE5ym%b8SɅ~5S -;(wtOQPLqLiV:2@I6B}G 5}}D;e+_l*&ng uQCo(hVۈiP h#BOK=6Td79u1_M^ba{kS~G:?s!\YsP87ع3b0[/`9^*-Hץzplq$bxXrST}3ڕ6qE%W+~A02F=zT o1 ,yw5 '[=G1|xI禣/_g,qGrqYI4hSIBz4njjJϜ< ^Q>kgU >]<U_4LXDuzo@b:K irc*hQCA cLӴkmc8uy?ϛtYt¥ͨyFuIpc=/Vjs5OF^)E8M,/,\0ђoڹ~Lrxmì 7i/h*;VHA@3h^Sdud qgSDq '7&B܂#ZNv:KWQ#iq(e0r{̧r0 ]Y? q\#u]AgZKDjc37W|xݸt{2`P3$Ӌ]hM4'ztldY$ F0 ,gzm@/JDAjィi+~>/vP$9ɯݧjD+WDx1 HfE2B ᙺ\.8*MrpMCvCX8vMu-Hl0y}P8x9Ta~ ڣw& uf[3$ג?CڱyT̖=WC{~Ce8W Q欘䞧UTnT",qbx# X-kqUnLƺ|4a|iL8[m:(;fg_24`&9@2%!SUGp1Yg128:+w Ͱ _52q2-?#Nn2KyKs3@e/XQ//)r@{;'1zmHn8L1>yLY[F.`ٚT"_F"{KH jl" (Bx\hЧ/ܯ y7'3^Ųќ8lx?q-d9_8P *(nVs:vy#"_`՟t D& kZnꊇ`'z t?l^R$7$'Iv1W:f'W-:=BWu6 hqX"bЌ6hBwQYt0͜+MvH%%~u4 ̚چ4`?LE]9=f04 LS%ԅg&vw#ҡc}ɥ{Ux~s@ްlDV-\G[PB4Uͥ3J1軚 e҂F/v\Qj$:๝ Ќ.pz^&aLߎ@9ͻ&v'[H,F=NiUqhv Y-ZoCAnʉ=,ΪF,iZgUU7Ґu!ksjg O F:ؒȆ7bpM0JR:fğO/$UjZL[XF=E֡I˹G{fTxib&ZDؐmLWI(K}CS9;QuE@@qۭ Q ơm9 $4_*uJ:87fr BEķaa/e^i5wo d7;苻 zVLpؽZ## ]gZ*{9Km326h<]| |ByZPj6uуp]jo#;{\DB(Wmȉpu)A19&\:ɰ&.1ҁboat͡2 k m*xxGV)x 6FjYqq6Nf_9M(V5cok+ƿ:YPԶމpn[/gg<,,/yZKvٔLtLqo ZBLre\?3FuBحM.{ ڶ ,d x')9omsW4MDWy$F ,ͧmGHB#.*^Ҫҝi~vSrNNbӤB\3 _[T',y@w:/ D(s"Tt<8\yPfqF-Gw#׮L`X&_cpeIz}_o_E&^eѻ6@N!o IboQ_± qifEXαʕIJC f\3]+4iwTe MFВpqk[erGU o- Z.{(A-?.iB[}Vp rE[`鹕P9^Z;I㭝3V sVG-Ϋ߲"{è8JEKքWGY:pU_wjk-7ޢ+EӲ tݵ 4H4ߠASX24f5Z|%vrƫТv8pFco/S.GޘMse>4q{ YA27?}3Or3y_Vƙ&:7 k 8 Ԡ5`-}M^TtA;h]L3q+=%߽BsZt_6b2[ ț}9.I2 Rl?jMVx*IݯŞ2ZA~l$F 7qmHa!=  zq&v)n'(J 589VdV-ۅ,+ ~Q< Kz+yh CBR=A%5ewq 4ػ\ cdJA{>=Ô ~fGKyԮX?^y| %/VvlW6B,XĜvl0I)dqr2lx8Brl`N7o[ %;s^I8Jbɑ'Ga0mYdGɾ ff?BM;n)mjf1Yß][ugIi6s 蝴T{F$rUtY'$d7^*Doğ(DJ`> #e>uzi g\IBk aMtJ}&nθBC/#KcNjN5W&ػQ5 +"Ŗ'߭#mُ<Ywm65rsUs;ğ[\> ;ܫ"=)m]LQ Zz$6W]*QVf|fML$[K\1낮;SL,6$Zg GޝJj#X5.~-4{-jBഌB*u7J&3cw1.kXwKܽQQl0Bzͻ&~ܶ9BH%U߮%U*5M44;y,#ߝ$y'8d(13mB')WG>ֶcց'G3ЫMT2̌أdʮ_5:)\8gVfBgi{ܥamݺI+aJeg6#bQ==yt썰jk l b jhOwm,OO1 -ظ~%rSȻk> #AHlVEH nM=y|5g8\-ϑ5zI}Xv׬^}D;ϩj QX@O3N)N|cs0ȗ %{wT n-Ѧ]I~jحzYX[eT 1;J8Msɥh;>oE=o=*x] ]9cГx@@@\&؋pNP-!}xLu"Bc^p 4"s|]]X](h{&pyNyݯY 7^)!;J;J ;;M G#zW+M5Q"L׿v ʪGPM;KNN▕w9Wo9*f]xG,V(I_N0Z17@)ύuM_&*Ǹe(P WER}GnbuY+ 3a)C8=Y]GM]NsO`r3(2~,4bGagX7{]EPrEI6B[,./naQkEfbѐӓ4&B)7/qT]_̿MX]"TF)BЈaڂ2sQΘg-W(kXkPӌ٤]%mI&V)E_KaYx#[D_diYU/Ql_r)Y&i_c=-ɩ ִov7GUJZ!+25v5n)!@V'4լ JՊ-:#bocҝ !I16ğ֔ bʿ)A5g?# Uqu?A@}Oxz-Z?{cMɆx?!cV.x'R4aZy/(Mmid3>tud("0e(:CpJKֆU 2m0X݂r6EKKǃthw _XXY6CXVoqT~5*!Uk_W-7,;D| e-FU,>ZSGX,?O`(\1(@zl4g䞉0xj se4x(kEМ. %"U,`&֝#i;Kʾ+A$C|k @l$?њK;/I,WT Jm3yg'ڂ~cW[b$ܾu]ʗD~U#z#J||CNԭt8i b)5{<-2\Dɞ#Uy.fqgϊA0oBz*gzZP 5\Csf >,WMD/-eԿ`a%RBRSټ?ݳ6_FX8NC~81|'"\ 'bN7Ѿ<_݆ ]eߺ|d\bgԌdVgtKMԄ(&]7d܌ db31Y5n\w&4'GX}EW;#h7R괟lNh}2JsM _wPZrjr$׬E"Rg\\1/%k[x!7>&KXr愷44Jǚwupqq| 8'x}X+n#)π9:[l`*0(LP٠A4ٟэC-Ҽ7`')JpܺrV Y9UB:){77k5Z۸8uLP Ӄ^796C١cv \ P%ƺ|DC4AӹnMw@7cϤ1ys€|bEc΄{U Aٕ&ܗٌ#{)2w a2, E0cEzSDշ]h?kBp#G;',BKA)B!߷@.=MƊaRDNn(`qّ1sSU uEj-}M-?] KǑ"0碁Zy "V*[eރSHXܿ*]^

[@@22ʹ\gwXvHHD3 W8o 0N(E87-hogf]b'Wb cg ۪ed(h#szZn`~F:GL]&4&Dx3o{P\G0q,ل3ioKkn *M 'VYn5q2&d`Kvg!8.hU$9x()"zEyC,]'+v= ip[<րlu,!Ue_u+ץ=MN9@S h.K 4mح:OpvYa.*JkrY_֕mv.cAWq{{{uaH9A expaw]Jr߇Cwaԁ,=TE4k5{|CI_Ch+g jA45-ʄhR87'朱\'HOg:>$_>`(m ]>hPBX}/2El,-ÔuI˼-՞WD B8P͊siWAָ߱S.nnʍϢ]BږT}֌fMJZz)$|":NAm8 6mdo/=3*# ZO fYtbVwՒ q.dƞTF4֥% skܱ%/?ךk§VaZD绛{٩,u~=穟x9-r@1`/<҄rQR"cyrJND)9=<'|4)| 92o(3ڥ6eqbm.@Mkī?z¬@ՊzgP J= 6 y O +[v^f~C B_)'bC3$j Hm|,Xbr Å裤(*/QNoUF} dKEheP r[e]] 5 כ[+:_4ӹ9x'#j,)Iv;&>gØ#&set#~疍K3%Ea@7Lo S &bIłF,DeH/eK#`+|) uU=sf6grɨM+(k"nh8$aQ^b"L\6 \XIqLbv$"5C|<_7;k[ uNife=j5=eU8 !o@#da#9nj͎,wUظ0!׺o}3otss@nؙ$$v\ǐAMW;AJ1F>v tڽDe]1'_ӹKXGr'Bマ |7!  kô/<$_~cG"5!O9HXjG@Jy}I3Ajւ߻}dc n֕830̫Ibt:,y l j=h.(9-Qb|#F"03=^& )'j((C:#x7m}xi PM&KN<7 ( u{3zFT~]Iىgv8[)w_#!9 ӎˆz3/TN֌ߢ4כT yy*^`&Xx q"Ad[1)8 ~T2[SBF:#D_و<&oI(lּF@S-W5ODuHWef}G=lAJzcD]모d1=i/,]$vyKh6k)?H:3Ioz1\#g, E\i u E< DkQ^|bH %}N*yaĘ=]mA߈'#H2Dg|%P^ $!uTVBOgɶxL2yZȴheÚZT.JRȶaWE1"~+}8=Kh\17!G-+0Y_M2i)Q؊+m^u[Z>#y,Ն xOpJU^>✃˞`ڻ؂{=>Cծ x$mOa!1{"ČR}מ|©yy,O8 u4d9[:㡅5{E%Uc]Zﴥ,4ϷwNlw>ZVz%qa̰1gF?*4!WA.-+fṖU4?h.RQr3Pea|M<%O\baQщh ށZѐa'D_RqW  Qt%< `s'+uRAfs._'(I}y|z$gv4ܡdX:cܵƓT@궸fsjy Go,*Thŗ40r?Wf([g_YViZNu%JL0Z41B? ebw-T^lv7!! GI]OZ Ӑ7!Sxr hr+@Hl^cqr_l*pFg|ʔ@"TsڝR ډo-8lhLR̡d~E!H$A*V>ۤƦYPǛIk^1vZs+MZ}O/2b2/107j-/bZ|et4o{tQfîȌf֑coq*CN;TPT0 hLZgDa)9 =0gL=7 +g $pnvAy㹞Q{gMosyqͤڂQ0U+^2%ſ{lƆ)ݺD`("Y|@!}]$|J63U 7%}z0 .Y 4z4ܳ<`O[2孞h=˽&{ o{HX6c=ݡs+v\_ asv^~ɉaaXslQOIr0tn kGS /u`M2@5 /Mp@'' 3n;5cgc5Ld&0G'l!aa~ʞ8FlB-F%G5{~.j2@erP|}y$OW[.k{j$cN}Tf2Q G+}D BuB<1&kցvm9y#24 Qw-qk/FPN{D?_6+P#Z~x8xOy]Q.<"XuaTҘ{3E`jJ?3,tV$眗.Jo-pۖ|O |M7 a~O?Q ߝ"!+,Ў~V' 5 ͗a^e;4BJH(e4gs#aQm H|@45QRv&HodS!mWXr=ܿcry[620˽aHp ?60b!f ֛z$kݠ{`o!K{6ENm gtcцuT%QmHYdMTfJIy(~{>S:E0,g'`-M[9D3 -=صZ2敔N`π1tx.=y~GciHx9PYP,.ձӳCyswkcMk޿9,ۙr~ Җכ#_ǧ*ާIc-pqV8<Ԣ|mL:԰RZ% BgD_Xy85cۼϩ ~T79d.ۃQ>O3NrrvY5O&+V$ee[f'DVԓ;X , uwOKPN{v_r!Qдe{CRAgx ߑ\ vZHt8DP2~{WʢuWI`ُf2HviƠhrFsD'0i?sux7'cQa353qUf-lÞf,p@'{:iadM7_?=*U"Ѭ%LI2^$؇MqN2^Kg y4 f:F L:5ٿ/#C^}o<KWm%pmvhё@7HεkÇuRo\&l}vXF&&-bR`YNN]c:!nQy8JW+ʙW-j(5qQ_~C{F3+ v #7N?:W !y-_1@reMYLTC萫_ey+Uq`$ݡϩ2 Z:W؅8Y`4<$DGY\ ' "Z;3$!;afZn֎S: n+\>Ay%kЅ:mI0#T q] R2b(tZN?f{S2r%F.ce L)O`}rXٵaCBDh6.2J pK<&u,ZT 5. |ƭsuZXy ٞkq R*46hIҪe.&>MN tp~M࢒ ۽eL2lRW7gtf@&1" ix7L6ZiJqcCtO ۇJ(9|W}%4P]1ӟb8Xs{h" 3<_{tOJ;Q@Tlh1\G)yuA(8c( PJ)!Rq\vK8s÷TEiv=۟vT"(PDԾKG0gL/ϐDKׅk!wv۝̗E6F L5*Mb%otޏnXYrE# Dp§pX̘o lBp48|֚\pLȗײJk$:P0~oDϿgF^wTߞhҼ0|']71CgJ Y/;Tՠ}Ĥ uIy48d_P7(kl…B;\(6a'&͟c;JJ(\roNɊmmFu 1ꝵ#'MGM4Xy|AHY8NIiY,T[`6QٰZm]т\08@Zk߆|SŲ dL%ϩXlmvܶ{G&ʇc^~agP{9 yDTLBӜP hgd3פ]%8>Ț mSu!v Vn:שs3Z~6\^c67ǫv{F틜s^aFOk(?칌1`ڋ:\+v89VLL 8A um 河l3-dd5>"7~q%Kr7=`3G;?CP5Dqذ1sV@h;&E4*&6r#K%C mAjD7H(Fm3+eςepa=Oq.,ƄEON1Onhszs|#\Apl9{^׮" * Oc]1t~=^oXms /8Pe8w./cO'J& Lt"3v"h8U& iiQb/nE`_ 3򎧞Cdjno!+x1peVV<6'a1adhb>S Ëc Vo3,]`EKY WHmqa!@Ӳ%RS-;"GLbQnRh)ыd柎bJf|dwߧiɴ$0 zzoe_mxئ2Qro OLo723ljr %ь]ŜqbSi6 =Yl=lnΛ'#w7Ik6y!޽AlGm >zi:6^8b EO@X@Epﺎp>j'2 =ƞ $(䶛.VsKli(<|ܒj_hX 4!r?7gPW7q ]ゴ%JnCv?kT{{*w䗥rD!%FNKW 8_0J5KA7將G6HF8!`;'Dal;Dž"Z-;h8i֩ԣ6Nov$:Hi^` 33p1IgB}H/b%^G]3r4z/[Y/sdگblrUڻmdj` qPF nGs+OU+%/C;YL.TǶ})qLsՇXLx%xyVtVƮ:A\`Omaqq#ށE\]ťX`̈́zQTH,S!:sfqNFUKaiq!Ui]+nl$Cvr|ڝ@ ?c?;3$)MlLC(بrO ;=+1*p8e:ݨ8|,>.P>}Xl3ӢHr2 ix(:9A0kिIqI THYZ&9fLҀ{n,e_ \e*S^RfHU_UR+`^p97J(ugV2Ikߚ&(ȣbBxQGA\H53|cNr97T(sLQf~OCXyPdc&o=`P 0w[M2Ք$sK]V@8QAѶ DxS jq"&eqS3_\P-^h_'[ s6*z;{;R3Uۼ֒J޳CQ-,{FO b dHuAX-y SN&DܟN|B-0I4)o.hYv??l͖uig~SpE۪G9jW(t Fߦy`xGY~ ޷OVc'h4,wY;C77o,q]Bggk!~%Us59gث>sõelȧ  ~jn"G%OgVO<.aݢH k)E #263.dx]`,v@~솳[鹮AyJ7NTT zaG6nZ"|TCs'_PdC9iHIR& 0&kƗs?\t)ذR2JF,M0YnZ-z v~M^Mc g1Ԗ660 ׄFnY Yܰ#?BR=K=Ғ*{aH| m|v6[=2 0 {lo+yubU<^j`4^@uD$()2Yw˷l?12Z>/BQcr1>O4i[IV<Б/B+(_ ՛bt^L9HUD ƒR[F $1ְ$==Uԓm,8-8YֶԪ ]}۷-;cWMgGe^shZ ٵN늜D$F~(Rw>{߃Vs=3@ܘeSYQ:.}t=pʤ<9wnNYGp DPQupٯʣN`]&sܹ˖eRWזGN.ǔ0ZL{zrYL%Ae-I{á7A8DMޙZd&3jJIauvXSm6"?ŰF$nqj4TG~:T 7 K*깏Tdhk3>0( M7MɧLx4JREx:قO>)W& ^vxOc@&,,¸Lfbk#VSS,hu! !*L1i-l=-yrTqݻgvUyuS `*w[Yբf8d)J0YZHC&%Wvc>N0a7MNz~P]xe6ߌw{61$3[뽙^NǏKŗu0LuO{qJ`ಫ';XO;4ϐ3A;ja @AGQE S7'* soh,̽lb,iX?nb'ea`ILeF,yP T @yu^" m$|v^kI2>W; kJsgNDֺAs{mЅ4QPgLK.Zݦ}n'wV-xL= kl e")G:|D{*INiߺ FQߗ9cn|+G:e Fc)@l^$vu{^ۑKۅ$ SToZˆՉtajBCyK28a̮#x+R]| yUDzAȜBN =ZuQ-C1kxhX0'SOJ1C{M Lݣ)!3[PaF5~I.F"P!77SNT474ta]d;$gS}s#3[∞|0ץȹ-T;<=B)[QuOŸ ]L(.-m)̬! q|1q@^ET)38xeu!GpPvHMש8>xNYĻ2-hyq-C#>$, M\fWr_pjU(zCVV&?pL%p iD^fDjCK( Fvu !M>=\KU}7vzX! KCp,@iGCnc!n ᄨczKnrr4T@4EN UhG)բXNJZg4g;Դ) sL#Gs¯G,;ԅ I$  ?μhC0l~>@ݚd{+ɬ|7^|[dHiJoaF5:4S) hf&\$zHP_ִ im7pIwV!/W@؊[?h eOֺOgylW圣>'Ry\qЙT& hA~9OޔuV-p Q*l>')\r(0n%x惟IQH8AѲ7fHy)tΛ0)R"aå .B&B-W[^djz-z;d70a#d#%X *Øڍ8lOҩg!я, }s oU '/ rOʆ '6P^HZ;xCKYǯ Flg~BN^Tϸ<{qqK3jTM-#!a4 mC-SLYօ5w<QbQѤo 'Q4,,8EmNptsa'>[EzP1/u[pyZF4|k#kEŭ*Eځ1Su^%4fj6zɩ:#ُ[iGLQwS#C6ҤE.3ZK`KJ-AC2ל=*$3.gѨs٣ج}|Jh͌x~3pƲ-ה$YK~doYzprG,]2҄-= z-i,zb%9˱XD ? .C`Aݤ@CH3g9hd=E+zՠT#nBӏޖ ˂COI'w+-0':"MdQs\Ӭ*HсvL➒/HمX)?O1.H9["q LH4+ c ofn6fzN ʅV>ܐYȖZ3.FVR m\jNl_f\wonP+Dcϒrvy)j@BT'ѣ>ʨ"0BI05 c8&rĞղUk>AbE/Qb+ЅU+^*!"m̚,D~%V@XE!vV(ahζL ij<{Tk5xԔyYm8K&ևy&Ids7x&L.jČ@'?nQ|l/9̒W*r14TQE&ݢ{t/l{ְ(;jc`ou2Q`~ړcu!EtsF$U y{wsU(UNꙥAOp[I>P(MY4͗Gp ۟tt\Q  [ 3,5*ڸHM]YY5:]vⲍeŪ i2R}NNz\'럍;|(*6BKƯ̄ !XfP =ʕW0d$; Iu,*J;QI8)'/rWRZ/lxƷ5UFZvmIdGgR_k͍g͖csk r&F^c<;SzK yMt?iA{o H}Xb).e`4ac/8 C &WoFazvAT'DUk) 3 Bn`-h׵+ӷ6vm@$OߌV4\z+Xd%)WAy?ѓp*)P~8SW}Y'?ZprnPx݇ulb=8D=!~+ b:B&P]E&tn's[+XJGVߩGTM"oӫɲPe}q^ JYLm7aXbFIqհ-`iVU#+/wo)5"^3S]FL5#ivJ`#5*)+ElJz[inx`L*g{he|}B&ˆ Ay#]zOd\0-AGڝ3vDjM7X?ïnKTXkKDr g);+6/#kNLq㖟N=r@ؿc1(ҏbs RB J_M""?2@sk?$CU8I ٵP06z|~A;Y%B@A;Gt;9>E2܈$R~*XӏȌsy.L=IQƭ#\Be $ kˢa7= *7]a-އc kjni_K? xMSW\NvjR?{H}&4#aaxs 4HY'zw7ו/L_'Pmp5`ZgkC[8ՀFoamC{8Ymd 9+b'#2 "B#}@oHPݔ= y(+h j0YWzzj!v)o5jPV,OYQ$ O kһ;oÌ04k}?yz̰XмVRj5swPdA;W )y975d/<9=T“LK}uj}Jf`C>m`k(%ybukīݡ=A<^nQoacY䔳PVѹ# V+PLs!a=Pa0gY"oas6'q؂P`R$#R5l+I4 5A^}q)3w t2U[Dϸj5] LJóiHOJw=!?2 8B& X+ q'"Q7eK}Yi}Rh4o-MۭI4q|/ٴhw8^A=F_׍PlJT ACFpĹlKa^hNJGýZ<4lɑ B+EU=KfI~ǜ+0Gq5A̎hǧJל̶V(oE0jٓ >K{엱Dw#!V2*$ӏ93Rs.30} _[FB+R) ۟qt'~97*OѥBG[G/UPwZyA͖ޝnGl:q˝BuKW6>dCe6+}z`K?̯Xnx`͐TGdǢiUwtv"m`w=EM&"Ü `sMAQ*(-!αhD Y|TuE!!' {! zX!mHd&ͣY["Wϧ[xMCa"&t:ܮS޵>?;Ćoob*U_hZwtJzJCz-LAfB60ȶt⃷嗱W МzS5'g@XveV>_S5?[RyvЋ!6mBHi}t `7̬6HvbYK1q,c}4TqEU4aQ D7@/|&)%)\f9'ha(MQ,_E)J1nҩ0-}E_>Q[51X&ޓ`d\.Jq FaImKT%Me:or#"-SU#K.ܻ̐k8ڸ7_&:^7V~WlmLv94}~ijOMh 'l;f3šmD~Q)V98BQRcVFFL gKvܲu>12/Ë<0꽊Ȋ J뫟 n!3k~<.Qzd9~TFwO&Tm*`AQ:GGQ9Y.zD `6:62v':d^yg9!t  /qӪhByt[7 zCEw$@wG4-ro2lr-= hYbk3P3I鱉xaP;A%$>'es#5frQ+{0;;#M&IQ#6tZ`"wF=-95\awX$0LbΤٕ⇡ȐKI7u@ _k>"\)b6#9S.BN*1@qjݲ&KXrmU*]@0[SFP:Sj3<1rD9UP("Ǎ2y}[fZ)\5Ƿb?E]B_^i5ą$Yo m|n<:U(2?d!, j7=Ҹd B 9 8bXGF"ky%>vw/<r۪MiAq1p47ih#'(j'?Wgb:__3w6PC[MnN7Ps} &G&$U$Tّ2ohOѝT͔6DWPm}J= b` "'w?j`KUX0 #+g6>z=%]+ b#dp30ecٵ 1:qm 3Wla#в#-;-7ϻCikNL{;M{n0;^}J zD%jE$b)?dlz'1Rݷqr)_ؾ,dS ?wJ9uB܏h&yL S$E#!лP"CrwNav2ɸJ59 C2j%S-St&Ѿ.pq$!g_ĵ; @ff1W㥔m@+9 DpDٍ☡Y E%aX#u2>@' [dLv}3~sO{ɚINp7wXrb/]~oepPj|>3kBi-Xj "ldig9/._QBQZ}mE\kſO/YDYP s UST)iefs)jY*GRP4\ʹN\IaKUjs#P֛ٕEwgˢȏ󸧄{^lUWTu3C9f*q?5x:{ѱ:m U\1BdSnLޓdcF LfjCORGxL,v1*I2&ԏ:БbvKjcG ]x9NY"ֲR"XÐ\WYxjך|NE躴TX2laXٖr[L\P8CL h Gi %'Q *h{S e1~SŪ$ PLCfޜR#Y.0c*fp,d#8d+#/ֹ6cG^+*f㚬yp<ՃΔ S5& ck +=$6HUEB7YDodߛFj? y[^

=EST\G߫YH8\ 0$B8 Ñhպs6 %N =j[*!*ȂZ hIL Njy\?af=(Cy5ToI˅j^a)`?Ol'aRT[ !OG~ǩ(T()<x Ŏ գ<\A-an;ABvd|5DO~u\Z&Ҏ C8[[9>$S&eҔzٌd,4];mk+q=/ `$ZH/1_^/8t:C؎ kfʹ8xbctc6=9t16YN.+@&χW W$$z]݊0lEۜx!RW *_B}II>Pg/DɠeFO\1z]P{M?=}#cX)5Ꞁ7erLSiRK4{.~Xci?*D":sL(80\=n#CT&LC}2[>ͤ-3*(ǜ>>܇ ݯ?l,>c3ZXр&b ƊjYP"Gx}!&-eE ;=zsg>Yрeﲎ b;q @[$u Fh\BsF@ȧ 4+hQ|-Pz쿽 y;NvV="(UFPWAg&2:`\a~/%[ ;8c<ъQQ<;[f~E  &Ht~ `?MG5QĠc\PJ2"ltB2`p{|f ŁҒy?G0Y-d զ'W"pJآ hбג0 *DiK^c`O.v8:ubE1~]Vsr@MaoH٨׏ Kwr]@Vgr<va#Q( [~KJc=k'6.K&޸KX(\v߷!#(qv6?Ec(2!!&_5 +9ooΤp32#dqmOpk|'p#("dWjk}2Mq+k c)o?ұǺwړ>R@Uߩ;0(AJ? #) FL]VUeU>KϋHFJmVrla,;~ v/y3{͂F:z$OL 7Y,;W($VeTGZfxZ.N~=PlB6ϋwLYi}s㶳(t)B9uv]}*A0+Li+8>__w"`fZw7> 7}E)pgb=Ȩ 6̃E&3䳜r`wDZlRb˭b$!DKϫ! n!AX$ \:-asaNV% m]aV!/?7#%Ǯ!YZ8{4_A7FJho FMbk/͌]Ϙdǻh{}/xv !< Dg X& ?T)m|~ h *ti r s+lmtwX /dYZ_zrV1*UQd aGW 3yhɏR) z LqƣC`)O7^9GvHîZ]!0:E@;ΜJаv!֙KJwiY@{2} @wa`wƅ{~fLpp; )`C}fKko4)x.;Ei­teӐsYr7GA)%$PM1T0uO6NlK.hk_r~0̾#Ռb&W.ׄr:ٵcTP\*+me|"0fJXE[{<gWB+y?hcӒhXJlj]*H43.vW4pCZU_fcU[$m' 0{n4agqwJ%o-¾A*=׬0^݋c!`_ s>/Y\@E.eYw[EgpǕSFG$/#5*!Vu]bi @bRX޾ȃM"݂~+g*$*kkW&+U#ӗFd.7)7/9;^ŤIjTH u3n,)|ˎn$(ڙbta'we_I<]@Z`o;y1C/J;cn3o&BDʣ'8zB_ ,K؂Ǟ966Eas2ڮǭ䧘G5# "cLt5{Ecqc`UrRj Y̆/y}j@:Ig䝘^jW?sDNN]MC;t V'n`0N'2i`" $p8Ya=vT=>VIV4 +aedd"D!ڿHq Ssdwr1'_bt~c>AڦNGe: < W=8A@k[1i0.ֆg cF^j;J0 /X4^bz,сu">l\%M@( s$݇DGl)|Ia$iQ[^Ol9h)h9i?3#-qbg'e.zX;>J_3/+Q.;̥[kMBdy5sfӰ ehżdu1i[n5pK>U7e AA|1hb{o; -ޟt'QdG0N+ցhs"kItBۨxO\vv0; h/fDH:}oKpχn*D5L*ljRS |pgy?4+E8}OG,o\x~vtZU%ڮݸs) Vٱ0GHS|wiNp1Y =, e)siO` ouHY1lj34KDTn=͐ ~?C*eK 8fA PI ]j'sڿmx2E{sT6zW@{)ٌty!/P<Q]3w ;vqr_WUZEc?N ]rJ{i6=ǣ\7+:pGC_dv4>-@kbsM`0 7/<㤂zbTŻ`=_DBqs}fL:K6ǕF]7>?|K<ߠ7$4 +WHU\@n76C, ^ݛsj8EX5? &Y;K ME|-Da>77VsOViktlڹ S 9e!Fl_whI4ŕ ]E0r7ދeڢhy湯7p5Op{@j5W9C21Q]S f ^|x91+3FΆK"hfy̎>? m|zKxܽ0ɉ*=8^0&NȈ( iݪ.Z_ m.Q=Jf$™!yڮ_ƟNTxXKkjЪ 5@{c+;]YRno3ܥ~~wN:Z|d%*vEfs\ Rv>[z"yXܐoLߨ4ctK$iyS~f\xVz>2,Qx'N|+ >}Zo6J r٩l?AjP$ $Y8YO؝O3gjEϦvWvC5nIw(չlaH󵠥~Ă@kAU :SghS+%ܪ:ċ l v!o+"G<pvڜΌdpv'aF@85V< {5a(9)׮g w=#ࠒ9_\|kyF:==rlQOV9 X%Hf΅sWM@ƭKx 9dhZ&sd. N7u\6#>p; 닙bĬ!47M|R6&NF4jŜ$<=ܣf-T3L͒JW0ܸmH r9933B#+ p[41YG'!\f幎4kO[q$1-8opN` J*[ZʂqClXY0fYk7/ߤʌ&{Np4%̓LQDK.l;k/G@8Jx"@CQ޸ *ki]{ `ϔ<fHE|ax~L#Rj]'R^̦V V$PqI ="ooYqRQ`z &Eц!1΅KݞFNp!6|%2U3h˥R/#b9DAes`4̚@W"^(ZOh3v }i> T'ղ-0EiҽT $$c,8A4ScüHJb 'Kz -cfԃPAh1RN|q5RY}sWleK>xOk6,$=ϙҷ\P H\ P;RŶ N+Xs!rXt.@J@e<8 0_iOy8Te;>!30 OPxZp~mY-v,L#"`miv%ӌ~U.Qj5a 'o2J8A辇߫r|m6|o- b0d9uIg [Y:1^V] sɦdw6D^*?$XmF }\veS5vYI쩗1JSH7 }Yu"̃iUڬG˟-=u>鞲LU'bخ__׵fN%d;{Yp3R(yǶ|{mG<{Ji K>Az.^5:v~Wmv냘 +ܹ߰*{O;)E&ԵT!1v tW)r޲v/I>%ךV[qg8Gtbyʊ)C,:MdwtbF)^vg6lyٹ#ry &䭨 iK+ PQ-'"VyՓogliz$uMleLO_ ȗpRkP,'MWYmkۥt${fkR+). -4"XщZ4"mdӞɌ&cҪgdhp,0d: {;*e[2KGcy84{ s#FHB^m Vk'9Ngpq5ȒsNn*2V{m Ös%{ 麰RO+~YK| $|;Y+d9Qq.̎@~?K3Ys(՘xZH6v}H4L2S" kN]yd*e5g Ǣ>Yj={tyqA)àBE)mw  #SD3 rPhn`inVC;lNmzMtOWyEtղ)VUH&=&y(U˹1"ݰ f4h<ՇFk(5@*Xܝ )q[F0ў@#˾!(^5[>,+)Fޮ֮)Ox?S1^jBbޣk#QudZ:C_y2\5ӥ9B`Ue aqVTOxsSq6p}2R~pu9kI" (4n2DәكW2YӦcb[OX7Ť`>76&'<9PGs+ T'fM!Dj Y}R3007p)0%^W1пDlTu!8她GCCZKָ62֓ck$7oMs\맿%y?&|sXTCb9´P{7LH&%7M#W# pFU&L?S3|<uZD1s<:m:q})yEKWSAdy(Xfݤ3K@l̂uxX{GpCZ^l3AwZ[4͇P(A􅎅}kevk>hh 67k}ot̃Sѯ.63&8 Bk``kL343E d{ZTՎ3욇ڐ* mSS?՛!6E\=wCv=Tswlxn`Kڝ_gH /0j;F Ǝޔ+:KUP [sG_uN0}S |9J *<0X:l/0{W6CFpG0}TGe:2||H5oTlySX-x8Jj(G9R+p7& wK򧈀<q$l43h_MN_.lӛ";x.TK[eʫrp6}qg\HyzQ&Yb'l5pQ>R>׿.Gejқc$'A76 %IY\!@L!ycwеADVy(蜟dzp\8Ȅ&+F2gOd_e2h{_ɅO#ΣQ +PnbsM)fh`+K̷2r8Ϻpzcuol"*v3w[ Kt xYh(r%*?yv|CΉH(}*(`_PHW ws=  X.m,qӑ/t=(=(3agThP ^Sи+%869<_:4)`X{ߢ_J1J~p[0n.S5]**_h

Gx QOdMciz1&89:Uۖ;&]щtXS<uz QCr/;w-?tH G;mzf/{&⃈O |ڠH ABP/e\ε b쒛Dn7Y^ c0uS?Y>nFVP ,Pt[;wVȼmW (k@Wqg o.>mqo]Go,'8hO/bO6B ,;&b%QR"mbq_}><* }i6SVMc@ L^!760\a0D*@w^^HSuQt"ǀegYh$4)I2! O Ù S߳^ W\u,X1*] h$Pne :E=}%j}egئnxz(D=,+ nkyE;rښ32X*=iVV׮3)!sFuZ mΖ~Ւރ%g! *:wF\GhF?jX~ɜW9Sxu,\)13iʌ&HfꈟRL;hT_ZCNEo5zFll_K4iZ*shQxj''`:['eWy]B%qeh{` T8 i |йb5P0Xi\=^Yv% ?8 ߷IEV9Ob0,3q/\Um!ZÒzڋ-wPQ]q-}}0h?Y_Mgn~GRJLWٲ!5|l6|h  9a3* GgN0>wн>:J!8)q۬WL[`/K*LZlƎEC|+m5} xU wq6wti LN:b[~-o)nXD6l@\m>@%⷏M(|JˮKՕF@H9Y\w?d {~SĭT kmV35Ky+ڵs$ O ~SJumY>_M<_zL+@` "x"yJ~HW u 4ʹDuS*2 C_ݒ)ŧV0@x!I: $Nq=2Tל[vV 0bʛ?1WFє 7 5l+O |X[^ sܽW!7QӒ$2ɨ: ؄>7SyK)$RSB 7gҲU4`[Nlzh~yKn5ْ1sSNWOZh:"-s>{:/Asp~׋z> Lzm VhL痦~ [9|ʊή>>xKk^ԯK?BIePJCاneL `&zݧ1+m]‘INMJoiώ? GLz1lcd,f:2"T"K3i,u{P!R!o%S{ޒOfU fv^gny*"uyw>ws~ԙiZ ;34,qXfۿW%l8G\GI<錓HssTGΥFlu6#K^ii3pd:o3@.RlU[˜=IVO 42]< >ڪ[hOSҽ Cj/KYv9}2 lvjFWGM4tS6(~3$i)׷3V+ .9t#Dxt.3Uiҹ<'d0fk(Z¡R:'$q?1H?dxA -GnCάKl?z*ډRt7j[gT X|ط(i"bs eJ4i$WVY*eW۟*ơYI:va?7 ZÍP()»rßcYhP[\Z"Zwo#Jwn`Rnˤѹr;6FU-ַsiw'-.izP` z=}B[5Ef %Nh0u2&N + \yR$3|2Pjntv$Lʞ)w"I J9ҡilSd܍-aՍm ěvCj ȭ qJd^C;%qK'l['lBh DW0љtnVgy p-31ADus\8ZI`I볞ep17A V&,PUHۯPg+6 g Y 5F1lN|I8l~;Iy $tBIhFT?l'N0"U)euՊu_+ߖ諱z䃆XI2HL̟N?)@9U*/W$ًeyp l=ధ. @ya7~%4l/v e<{F(; [8U{G%\:[UP7z|E{ nfFjoJjT]]n Ly7GiA/7QNtڵ.n&#O|c$뿌CvmeTk[ٖqݪ zΖ#X؉*aALбvQ'I+&(Ip˘ڛ4\`?AսN.:oe`Ry5$~Mtc13ڰj4]+B"GF?"JB:39UkF#R3z#6A\/Rz䁌LĒ˿l{U2Hm$_!YeeY"0Lb.PU ϦmTL!.i-bUERZB)lD"|1Kdi]B5P-x`%V@QeU9TaOKxx=V awǦ+O&iG"o:g|49z w^^d7 qV+єo:a'-s 5xJHGQ@ī46ӭC(IYOX PV)[G\OLp~ *̎&|Ysoi ytóEk B槟fʟKVTYluu j37OD =Iw"1mz/dR/8”tJ Bi}~BV s^rHCG?kG4,QE8< x"6onHTY,*oHzSr#s` :"Rўb#j쿹A~gYVb>"M&16NO/"c1Ta& +ԅxnsY1Шv<(I %9/4mdP|pqFU|`դ@݃Tos ׁtj",?{;%bgexo%aqQ])ZIrա%:qPn?=P!,cscR-V۶/]\xYrW. ^UsrYUnf֏/lIU5!Ź&w(#9N' 7&/J7^aC2^ln7&1}x]zٹw | H@ü1KH+PCaN #f+7zsQ7prv:'Ug-L@ᘳ͖[$MD{~CazSLed$Ҭ[I.][nֵr9AHݨ<uѾiLb]r7GGDX̱ ZGP/"PQy1a_G;W]2RF#Kڬz9uo_wɐ$qe. @ @Wcmwn:lE +ۺu]}º͈d:}v*G{R7Y~St#tpm:-V)Q<[7ub@m xBXxJ"{6ԍr:xdJe h%3 ~ "+d݇2Ù@˟4d7!V#?ie4rp2_+&=d ڰJ76v~)NO 7s'> lDo_U Ց|QC@H5]%F͌&^7jB)gp}Pw> /{Ь+[&<]$J,&5Pk+ pǐF~.x2Uc~8-@V*_q+b"}j˘' JdF \8ά_zQ:b s2cSo;CS(pL Js ,5ylXFRM51h ļ 0p.v2O0u9F݀qe^den"p1(?릅O_LnHkп o~|ڄf] A?S)pLO*ԷߒbkҖa)̊FbZl`Q,fz*dcVnGtRlmD#qG T]0 ȥ!s >K^{SЫ3W墦0%fy̲,@l,z^]Mfgm ^۟:}BlN["ehlJAL!^CA$Jt(?X5 0ǸZ!Zj&PEsP~BI:`-d<=GwI4drIcrpIϢ._7}YPA,OT%[40 ?ޭk5 BVk&'i_%, R&sZ!h”/]zDQqnP8oFI(Akxݓa(p58u) 5$޾`$hP+?c4o 6\.PWZvZ'Y;NyeV*F+ ÉeT">AIr%;T @0\@L؍@r$%?r@#G={e6FbKHR6+t:ZLsP.nd&C_^Vu#?[;4>K ~d-NxCc>TE@OEW;T $u>C[ /7!>`6 Ob6sW;7xXĮM=NUzo-,aκh^}I/s9!FރoB6?=0<\ɪAl YABqDR@u(xzuV3r:[#g$xk[| za#јuAu\PNlc_Ƞ3!n\2?' NH8m\ù#I=4IѿvtF$N1 B`HTӱ)*@`|0&+xto#Yc{淟 bW|BF1rtf0&%h(U:.ksQ͈n"])dG`I7۩/4le8YV1<??k}v2R7E ED*a Z]jcI߿a;u.D`iEAD{_6>A8 ûvC7<芵G?MIGQrMQS 1?5<.f&=j㶵OoSrQ`C}bqK ue܉ 9RTiU;ύ{:tu8oWgL2/ofL WX-KXΉq3[|2ҸcRK|5Z}yz: ^{Y]98 ,-VKnj)ѽ޻3R } n^BcB*aIbIpU`U /@Ю[y_2[~'%wɯMϓ†tAK\!ŻNtrl n 6hP"(1˝_Akv@tzᣥZh;F`}ipǮ束mm?9pi"t2UPsim_8sڇ+/qp0-m0!鑞Q0[3sg" \}Z~<9Znt_p(`r2 ɭ%oZhָ0l] yuzs)rԦ.`ĊtP:b/LX k@W`<`Mi(zO+w*PقC([_?GCm,%BkfPu>I1޲?3Q'ݱG#zǁ%)Ehblt4F؄6^sa?U%AL;5R(Oq14{qZm5%Z_ƤO k] =)bWt6)ILJJv@Sp3qG&G,hr~|/ZesKyG)ܾVY:kl(V)K#-+ᘐL,zld _;S J(G2+b #feDZD+ ]g+C6I x,\t&r0,iyR;l":D & mIE/ux^i=T1Dh9aԁNJчTSAEb9oȣmct7nEkfS6EkGgI~EL y{dYr3"*ƴ\ vZ%|TA6EQ_as-{{w }:qw36ƙ&gQfin.Yg, f<*a}FD]e\(뇯͍)t%Dnr`VHGQU+bUQ#]:S"b36N' Ec\e ]R2Fe\4kIXrG),~ O)Z "g~ؤZkihiWQگ ;s iN&^GEA/2孷Ŕ_|qM^xsATcU/3թqIJdž5Yp$ps9'ΠI8l`Dt%Elf HS2}2+a $Ws^"-P@$q-B ߯,9gnghI[ro f6р!E:7ynCnnYc&OF{+&9Z<:9ҵ4"CL+&K^1Vb Mv!)Sl3N(:i•r79|j5ԡ//̅qׁljd7]C>ΫohDd и&X0xW+pZ&z9z8`'RMöB=/s?VomRRǭוMv6D;5fQ6$e_xLչ- 3W\c*fQc!@-E h !ⷷ%tv&l+l K$gkK*6US=U;p+pvg- J\b '"~1Y룉NLsY+̧ǎ֧LY -9,[d +hl3oJݟU[!KGTuMǑc^+h CItt5KL=RE ?k "z0XflW(woe/HTژ5`~l&מ$YC3wu;K`QRI~%r]llv)rwɁ5ZnBKEm+$77_D뱜3t>99=~/#rHr^!:$l,-F jO)t "UwUFXN/a8e'؜w6h%|MCt27 o؅OJʈ;H_18TڑE&xZ|cuX<:#7p J>Tw: )! &ʢg8%4~.aeZz,KC3G0{h5|F0Ұ0\b!|!Xs[hd.nHS߲3 .]!.J^*m+"ztT,BpJ@v=V1u hZ6:rT7^NѰR g]sW@Bu 2;#3YhI#їϯHOfl=UTY]ȑ8>lSoeI|8v ԸIV] Q+{]9g&(96=|R՝"K:!کXӴ pM$/ e2RUI  %%g3 &Y6aaKnr3C$4ݫg!x^V^Mm\ 7VyDxSkfiX 6Wr}?zJr/jeP'y JB3u;7ZUדd|RVҿDaKzR">4[3>?>iT:U*TluԄ,Xj  b[? 7 ]{s~:/ȴzTyA9^ @vNdtz  -}#R2('=&s?:xLEҍPV 5٘:70]Ȳa$@Q3Z kˬY;sVh0'K@C^hì]*Hӝu+hgYoc=+[SI~,YMh;s=9u})"!ݩɺ9n-Q#̋2^ҟŽ | [Fxxc dg u8v p2qkbMM5~8&_VYUK̻q9zd 1M$q\a4}Қ)[Agv<vi2_R;+YK8c<~yU-cnl]AŔxz*bt: D|`Zpṅ+S 1n񔱔(*Lqy28T "WAޫi;0_3=~fw# mA-mەq2[`]!Xd|] 07ZN+tuT*&@n:@,=}E]}Sp]#zx2t,у:o8-~x0wH0G4CJ$~/p~IFF@Ĭ<7BGQ4eB1{ bØr{=xI:;H+gA_[tz2#4p L&K5m5"m޼^TƽFkl Ar0'Vf[|A,uG=Dd4@&ّ^V,N8ve;P5Y4rpV瘱EA;sY|-Su5nmϣÄbm,80S/cZP؅; eؼ83i֋ߏ#+ۻrӯz f߮W9D;1|v?[SbHJ٭09>Ovղ,/!T$l$OR8|Y<Ⲭ _@Uswg晪oxqh]7D4Bϐ1 $XKsӼ+kLCo4q)[f"8}"1M0w_o_%fApptr*|;I'æG>܊>~`BVܘ 21β m=R~Cpx}GR*f] ]iǛJEyWf7l,TѹXsunE})<|2eGkam/ 代[9 9_~)$jphrP!D:ě_Pw72DUG4?oO8ך{n3HO0sdF()c"0^I+r\ֵ. x Zq6UI[o! ,/+.LX<[ޣ[GyM[25.!5$7cd.R{Q F6ZS35 u2XDS[O^Ůnl5"<H&-^L%Lr!+Ӆw 'gJ*F*>G~+'cZ5!''u ]/\@c1~T9::U'+ǡ@psW&fw :E`RS#|5w_} V%N9cyYle?ɤ$𚲓5iB#2] ?DUbNH]l98"ٿx׸hޅs3o^{sʆC4j,x.:+x5A.I Vm3F~' >9C>FoʼKAegEukzf:)Clf*K"<",_K!crgAs,T9MMnZ6.)p$J'jYs%~o<(t ld)m8` m52jAT^Z{X*58~3j0ڙNt6oWx_SY, ';2|2^͎œm,!I/EiqdMoȃZy2 s2*l\ma2_ׄ:2e{MYqF"eVFg;aA Co.gd2`'{yJNӽ3?^jDPm|H\QeK+9al@6G5ɦnX'L]H[ d]v`DJ=gasJ49ˈ|2kSG.7txQ'Uo:Ea[ί١kZjXwBaW- Q"qc=sd5:x$-^1tQ8vw<lP?ZX}8!´ou ut>fmjIE>xɢEѢ |z!{/{ p j-c;]&%ekpcQ(֭'ꮭA?8B:~"^%0i"CoydJ+$ X/ '9W bM]E%`&͠/*7@M'Eusp084bcX˧vk8vL ݟZ|CJiWWq xenu[R6W]ߧDhYPSCmh.Uſ( de^!0&jq`z]H{wiX5+LxQPi g3!{(:@($ŖG#?\H' 6}ЈO@kc0!XĽ񆐺ΡbE0-*K*lfǁqLMx/?!Vdۤ[ʂgDX~bj[<]r3quT?HriIѬ.)kd-8 <`k9JSHwiLT赓5\CFB@O$:9`*HDϚ++bk!%jlNlo_9CݛGTwpjXYrw423%E=gߔe BgbvpzY' \jB>h?'>Sb nR< 뉂c$}}a''v}qL--93xBKBo Uf#Ssטڵ5~2$B䜞 ܗ/ΕʟD;]ML h۵Ih,2?#Cm=μMK+TyȢ1&ę%)/ޏJ!~%džz07 |οX@Gb.&93=֬ U~Q ? ^R4"~|sPt m7 3͵aq%PRaQ Aybr~F,0~1'yZFm 0mcr@x$G}Õ`~Kd-AB}rZueJ֡fxpR؅X%rTsKAag*, 7{N1>)~~:ӽDC6 Y{z>RXisW_9YP]9B ;]V)Ns\.`[Cg>\ux>"<>vcٕpE&>W&36Am䁂-4t>*ŷEjr>o巷AlAW bâkb\pF.ʒ._c-07 [qrF.JoD{/7'=, Kﵴ )߃omFWRPX,{'VYUYY0QDAOA4 xGHkݸYz8hvN{%r'Xbׯ6DoFޤ_Vޒ 7a*͞3 W;z$N`=:'Jɣf|#+7޻YXr P<TY0UAF־vYe~B"fN`.OX%Xd])$^qe/qF#.?u&>8JgȻh"ĠHH凍Xt^ulk7&^h˗t:!HƐq{8삺hlmBfϜN?l!G9)x$|+ ˂!mD *Ic,3sպhVFzNFaQq㴂@?UN SD]pz{ozǻa Β0.Qč;).Hf{gT$^Z:W=hIcMp;>VJKf~09_uVIcʔNC͟{vyɖ[` oR/6Yhi쭅o6?'dз5{8NUBSoׇq' _Bڦ9`2l;.68\N) 0Q #l 7wЈV^?zζ6Q̻&3J?d;*P|"HQfA}B"xF /WƽrԝEde4va@fR8پu~RQ_5Nz.w9Ex bq!`Co?dS7]>Hco%tZ&,k̥,j02>Tln*/'/Z1DI)_h;*~!pWH/NIwjj0/QgBOxƞ'5v%v[QC ZMŐ63-YI;PڸH0֥tYU ѣP,xISݑMոO(vԁ{t昉v$(#.tOW跧|8>,`:PCc֖eJjIrkҪ7uzцuj)NԬaEY|޵IbatxͶS5~ 5G(#FXV2"nkOp;4={iVNv^ʣj3 iQ%4Zj!)91ola9 " W}{0@8QE\i[rD.TyC_e;@miaxs_yW|Ըj=,&} C_7%_Zo-K?0iG e:WV5(zDC:P9:^^A ekl\\}H7% ܖ6Q"Zodn !<٫@]L"nL:nUmc0FYQBˎ+$ l ]Fxdk+/E<ؐXTS@^U!S NSEwoLudKv,Za! 6WN87I#>A&'amKk ws#eQf"d@BOZs {!GÜ+4~`G9ؚ+JrK}yM.á>cdt泣UF ' -dvf.bU[;&o!1A$>@~%̫'b=1U9 &_LzB"K "8[V}WVA< a- !tLޕGb) \1r*׹>o\%~j$~@vk}\Ih$d4a8NBw+tğC.ʒ׉ຬXU= aDMȇfAѽFgnI|^{Qr7q$/ 8tcGP}ݎmV.8Jd V.3 .;Hm򤗤P~fZA+,@p rb8U%-O׷!= `1 rijؐUЬ: ?CF*"S?wA 'zh(Q2JZeWMT40TB:P3kYRk0_*Ω>{ *KNWɲR?ek )׷ߒaP-$k!XE{oa-~8(h!Bն@ Է N܇ ACͱI2= dw_J+I6u J#z ^q|šFG郭9*T[L!3r #(Ub׻ LJ-ftPki-eD4 q#V?Wc5fB55\ht),&SjOT?NwKp$~|^^}f;AP)Hng< wY?l~`3+z ?UpN D0AN^0BKA E&'DU]h oT?\mKW{*'ŹG.lMXGjV\`d3@CԖYY|#vl#q} kUܑin`&_O'E:,e8a^ɑY&wёP=ݕ#ɇHN=$i&M#fJ͍.Gwp PM ? 5z'~R"FT8u!׭Jβ[qfU"jF85"YFrib #;[̸ڮ9ՙR|}|^#f_av}v#k"EpGx^ꮏj8jbtaEUlDaKjhF=ԝc̞awZ` 3Хx @)5e.+Рaұ-ZZBQ#pIaif W<4Ǒ1GMt&%i Ra6G}Tyg(XJ0APtd)1h= dVj'􃮿R>3a>įbAVs` a@f g\- Iߧ[/]JvzfƆA@\ʥپ簟g _x4c8vB$ uHukh8EDۑ k#fXmnOPfs6ɂyט1LۂɽLoUus L M&m0 7wP:gVO>1 5ÞXr4 FRr U(xw'ϫ) 1h1Ղ`Fn.wSƆ뤁LW5g*s*tC* l<WAe2PI3_K#9?טX]Cl}nmS.b"['EvJ35Ƕi2ܢ "\r pFɇۙ^*a ԷǓv01=DQVyFD z|-=#g`"4E45ZN $R9HemqeB-{ZDIؖPޏRrX>&EbKNoD/NY +rIN H"%B18+y3n!^ k<@MWhɞOs'cM'>JFra<;vj 1߰5Ɠ ylڏ'@ߓL\}gJnn,<}b~yo|a"Ϟʸg #US*բʦz^~Y='Fm ݹ|x#@3VAD/;? ҒJ8׼J KdPv]>.h MgPl$[׭ 0eAs-V~Q)k~&:SͦC3^o)U3F!e58;/Q8DH (8w77i^Ye&No4PK"C,4zBHG%U}K8^,JڷgJ7Kv@.Mzʠe>MBws9Ed5dOgȿyCtn7|t(PpL5.*7*7< =,d9$ٳ/;=cOPG `5,W.3K]zՐǜ_v+ Ec i+rBk$Zd^˕>ηy3RWz  xtkRµSE ).9Daڱ=wql׿dJbWQAث1務\&kaNd: JCE'p eAZaƯL xY*(e*d#a䧙ZC;su;)D>|L°U\erLbWITs0Vcb3QI FG:j&!ұ9P_i~*>dQ'3pI|x CaP>%tEbqMYcnu:(9~M߹F"/İq+ԘF}H}דKu.;5cں͆ X = :x~{": F,"ȶ R\y ZHv,]bx}_=ˏI?U+ݔ-12GHfAjy5nv+8hyFc;#c5Y <SwGf|K0Mam u:!ā#QR2q6p#19ب 8=BZu!+b$ uL@!^BÝ8H4#++($1);G1":š2tѺiQJ(:ٜpDt{mH!WFz0z .,= OPJ`卟Th?h ~aF!ܥh$UK?-a:7bn2(vQ5%'R@.Ez2J s"{$M#5"N;4Kc ~ȫ8LŮlޕ=ڥqOU8t*+wʡQŤ/c9;rh^?CûvP-ahoTʊ H!AdL `.ůހ~I>B6Ŋti"gvp~C8 )mU<u1Th2SJ !}5XIHS8/eQrm=-TmbҍP)R.go>w.Y]s_i_FE8M`QAt-ZwTAllg_/B-NB?CNc?#!q}J[NQNlrjY܉3 >J =Kz^|xMXYT#{t@`D{e˿>Λ$5=3i}7ً\w51hC luor~Fފ5宺dAN3#>T/5!R V)wx+aRS\ Rh @AMȣ9{ UHGF!҆]O KIdyz*U`{+qߙl8.?CI4Bz* >DGf` Hl1BdޤV/6 ȩ4 hw!d@t1z,a4+C{ mR?u/L5U-telJ+FZ$Q۔Nl+sBIvRԇE3 Eע|VJmQQ8:ߩB'Jr|>;1g"eIV r]6/ExI̪E4zG"Z)]0 ^{BI8,q]׃+2OfL (`7LѦ{<"%8xtհԳ3T-LZwi 4W4w^hdYZ+WAbr%һ'UG=_'r[Y;7|EKR 7i[|Ǜ43ɈdvQ:V'{sX0Mݒ1bCXo(|K(}fY*hExdm[Tp~|A -A[8)<bS&ڂ?c3SfsNO5Txu1^H市Uw/?gTA_,0ę;Bb1[>+MׂH&&7V唛5K"P]+²Pq&<= }C$>tҒ-3V%l~':@~λux)p] ׹PeňɎXI<|g.L+^Ϟ1YΩ)_n@d&Q[I/"p :o'9o= @8i> Y,+^mHf^Li [k1=6L e2]њސF1H58aKVp%JmlDϭ/cX6zH2Z\'+߫B7%Y O#Ž?)ȍ%3+`h3tB 򉱯.B4˗Z$ݑ5>k@d~Oh k>x*, KK 㯶1`in>unѮVĝYyfj jyG_J3(r*#SmӉ?|dlޯZZ\;(r2iȐZp<>0 yzF`jԒ;` ȤCyHڂwvć7D-V[4@r+Sd<Ň9C-C"N|u~W[~ڀL!Ҟ,fg,` WIYRV7ƥƑ&m'Lۆmo@aKKQ2P^%cPSdq҈_eRF|AfuCۊ#5r^rTspUz*Rí`c,]jӺL4f05z^5-U/&AH(FHI[7 VsD0g '@p҅w Ľ0t&k.d3E 2,?2Әե27ޢߕ^oV菵JL/bv5X| !VmԮU'"=#$<Ʌdᜭ&7}DUN>051LCy' ؍9ǫ %oX!f6ZDy)cf4/.}>HwDˆ~cjtJE=9]/?LJ {w\Piajswm7 J'R&)w0""?jjLSE:p[Du~2N7)OG+}R:i" ^{|ZԦ^;Jłn#ί$ŋ Yp A .nad$l .I5_?QPE8lv-/:֠uG7^HRΩ_wp)i{ \䰐-w+Լ]T2B9iO~pS\m!ǭW=os8xb@t<*0 L6b նvkݼoAaQ-D ї &GVsF·;u"/Tse)!%;Z.S&+Kc_м<%6HM #/B@ܝ8S>{Ez@"p6{YG1bȡ=밲wJC1꣛԰fUEn`[|=\qqyS:eoP0%_طR1QeSڊ~QOA0oUxx»V5uLkOCBo" LyB})9t 1֥O' N&hE>Qk4UmTa0I?BϴAkC!\<3g`JWZ-1H<2&&Xdj(WupO!"@侃m&2~=eFe= 3I$̼_7^kCeE3i0e̚?ˑ˾e6Tfwc>b kֱ/ FN8AFOmN N0I'Iv4Pɿ Bzf:_{X7Ċ.u0?vT`1Ҷ@}p-GIN"K=4(kZKC.OAobE<px:}Y+|$q&VM-̏Cs'RN1"R #",DeI(ֶk"^U=rpս_##BESp8gW ͼk`êʴ8AܠI"FĴo8$[w7<.O)cd>SXf Hs*ho)Lsh1ik5} D:`x6^d=6Hxxy&Qoe۽{%5H*IYohVH%YnRDmجp\v5ref3V~\&ۑ䊝^5<:0.89gf-3 ).QW V+<nq)-+krq&}5IzR2P(arʷy! Fe0vL_--0c`QHf9ILa\D`y>PW&[f~)a._B046amڕ(%ǜu"( ]' D8'nJG;-vU7/xs6xAjFx;Z릴0}AivM8aSvIܫ[@/Zɐ\3}lҢ4eW]'rV .끐f$2G>؞LpI=MQnsqki&Y~Jf1Y]3Jv_c7lu }2qNrXvU"2@>'sc OO(rQs,2ALIyz{V}!=d8jgBhMz"WK6/a]CU9U4н̓vTz sfpUwU))%`M w!q/P+ 4$ z2ëk0kʗs!Pn!vPeH z۪ǟ{z|2vW [i4.ܝ N/IEJK "i@&0w eNJ4/82>x[֋T9|pD̑uf2,L!iYc&9fӋRTd!< 1&Fv)v7445 hkZ#5bȰ0*'VVN? -Y/6s‚B7O3>hPl R+R ԆGhEj/"̽ 2 U4SS'հZ 5ˍ!D2v_9sj^>M2xAko[(*e3JﯯI#ԎWrEc,+f ):ߍ狛&aMrfr%ks[W#U"hrR{gv*+\:BֱfάޝX0q#1 ? $G,5ȸ݀hz' ơ>Ќ.~z#}*oa>pPfX:Fi#7 b 621Zc:H'ul DZ(*zɚ=&П]3Bݱ/ȵ^}'NK.pk,ID/ wY*}T;1$y0F">fmP} vқ4LBt&ݯ%.Qg`ԫa {N0O[\ IR,{zr%]?U Å`1zF!#qPtliPKe˗{\.QF?!%Vib%eV*B5ęd';b9#řJ#j-MDۄ{T)-t9GZ ▦nnW}_vB. Pp&^򒆰ǕlSQd)V.ׁ¯+^KWK뱊XʢyS[ H*d+$1PWPPt/9,JzW:&GNS/eŷ~xKِwi#lE܁u ;{Ĝ9@2u7WGYxzb HO~)T5M@Sv87)^E Wl^uH5zhvP!6M݀;7ntO Lu!MC54{uҼi)Ubg7 o@<~μ+pF+8*H]xZ [,v-M`&}t.&R 6&# iޕu6ۮ[1"vHVL+,QEF;9Zԕ&nJ:Gz5|#-զzˡCyY9 No,Wr v<| _xLuCxM0H 5sZFzx9"/FGb/aK|Z.DEzIAЯms~AW\~3Oi7}/-M# 8'9I+kQƇK#073'| . 9Ey E13sLXh0^Yrzx`6V׽Rk~P)a=u080Cy +NG;rOuMђ)=%;Z,ޱ'NoW糯1PeU@ ~^0YrYHmƍJpUW}ءJu|±DOX^I)L@y~Zn3< :/9%꽿X$|,]~{.qQo[J EWY}'w-04>ZRNlIV7=n!42+bQDz6*a|&>@vYxm>4&%Ej z] S;,5Fqޖ0狠=$|orfqmX!Ro3 6a YIzy&^$ojr#9XJ&fkk'إpE`"!sh߈% ,7(Gv. ;|tFPL"NK-CvQ{Pz"?a4l}=&j#ta'!ȢTmqnWoJtw~9PO4sH$*5ҽ \\.`e&w[_ضӻ֤snF:%$WZQiQsR:agIz}`Ҫ}z|O1"OX e\x9B]^bWCJ+{Lc*wHKu/qZ7|21@ m{F_CZ:ט݉l.c8F]~Z3cݏ~7Hѐu `3\NU$&,jSYZNl/ܒ FC+ [! 49p CO@  !RUr8B5c 5e_%9I(ܙ7"]gUjzUE|2򱌢4hwcJ^O)5hO].Sm<'HC t1q 2OLMY#صVxzJ0hn!Uo~r1TsV>ץPsSS8!|z/1`\3#w* a4: ~ ;IO")l[ٚ$yTW,άTؼ+$כM@u,4{WjB۪Yc ܝ˧ HTN2}gu]D{v]lhbG O;Jxc e~,8^sXW+Xh,-gW:DĴ[Dz˚5(WMr,t>l3޷%<hLi9YQr]c [I]ϧ1×6qiJ@r>ca=Mvh]/Aw#?`3GH,ҩw!Y\7,/AU/g.e(|YV|}eMSoj2(MJGYCpbq )[ՁaL#;q):v6<<e&=Kem"NU(A]IA1r|g4{vIʔߙZ Ӑ#\0o5nr-I&Ӡ`62hIsæe#d)LSǻ뫲횆%<磧̌~6*PD$ %01y%b꿦PS2<*tA!7i: Lumr{q{"C^8<|mc5YmɡQJx%_1O8->F&Uca>mUq"m2lC7BٴĂ746m$y) TsLk"smx 1%X((=o{dGB(viAKQ&wn%LK,V}>p$@68`.=Cxї=a}?XvW3D'$|Ǧ}->'͆ JgƈW%QC5ʜ2Rm+p4c ^'s\6N[%bwdI)EѸ(WFi)!tf`JM@]Al JQܪL8ꩿY_bPJ:u&t7~ f?% c}h$ُ1o4~%u& (8c{n, m /*\7݌E^=w&a|,c _e˜0t %(85Rց,S{"!0Fy*Fȯ[F8ԞF&Ȩ7)j\,GNi,vdaM֔e_XnN Y6 Dx`U?c_'kƚW?"Zu _#xm{+u;g#"(܌)4Yj06eG[}ʯ+!姟\'M^Y-gl7,GG} &w[țc8:ώ u WOq?2M1?}C:J/ YwayNC$m<̜U5&Ͳ|ZV:-A]X:c(B6D#dj\9e,ׄG.dܙ*#CO).];E؎a2_tZ/μ=aBp*(P0W O<.iHf 0u#Op(c+bрJ sd|H4f|GV׸WVwe?c `l2JoMBÚ}T=摔3Ý1h|Mr~L_rYlXcD) ]- ',JW񛬸+\Ǩ{w#un:oQVlfJX8Nח1дzͩҳ0 z:b ~?S<>c?&>_S_3#0uc]zU5fU,iG}h/b dc\vr3h(snu `m o+/@V/_| W_C\߭ak$ .{SZ@g›W<xXN0:\'w$kM::#s@^S0t%!*ȩ:;W!`1&(pFWx׷*p|~Pcw}Ѻyr >FSQ&- g ݗ{9PXcr|iAE4DG$e ^UNUWȠ,IN) UN6aUb$39j7nL\ /0vA泯hHԟ[aG:(uCmMO6`^_J]WĕbY.V 7SGO'\}sB|CխU5[hxByhh1m ڽJtgnRYibV?&vJ"9)Z7y ALYϊա15.߸ cthqa(9$l} Wv[\w&w\R66^a -O}=O?G;ʍu/ō\2rrLV? qX ngm^eYI& O&5 .0݁!$Ȑ0N1I A%/8:]eg0L^M}IJ^1:ULMF !yU`?A;G2V~ߔgr t$(]K9 ,\nmDZSvzŝD7dNAq {vm T50jHB=[U۶M(uE=ʻQy7 UY,4o|Ή~ƿL'0YB@f-+fAqJiGREyeZ %_ \%q&/$pgP)ᅇKUI3<Ђ1y<#Kvx+$fZ@ /!wZhJWu;DM h_ier㙗9*/ {j{CRl#C5RAR:^ᤲ; b͢'*s-F p!$RcsC(7쫺9(G-B:7pFzV&) [b*Y6sJ69&&w墰ql@&~ЬyH&f\H߅%ƓNHm:?8)qKet} v!0R+55_H6mٸNٵlXيz|59ؓHsO ks󳃶Ln量 < r&mo!kURi`YpN% ܴcFG}gb?U QaqR#k<٫&@?>lyHhoωx@n+J/fj.m)zs\ E{o$%mMUYW}ʝ>/5F|y*565PF;RO7EЙ|]n<xes5: ώ`H28fNtAVjkA{%4@Њrs*{%-V$0LSc`&TSm1 n)]6c?O|W! Cq}]04Cpv"bY9}VХN:ߙ`/~ GJY 0Ou,-yF X1 ^Ye8JCGouy~N(u>T_Չ|F$(8OۛёoGyD\ٲ>7v_Tѝ* 'Kv߅H nqG6?:o렚^94?j$StH2 fF^CTUe@m^j< *Szk+ŽH dQgf V ^L(yAřr dD1' S3W?֌C[aP{qjΩ2_WsAWbxwGxby{By҆Cf,]+A%q"*xȏU%n8Q8AujJ%'_ぃb TH5|J.:Ld;jND䱊M;VyxFh=(.N=Na3OɌ뉄bȰk&@Bvl'v@aBK(KXZqx@nh]{f Y.XO}hԍmίh72'AOE SзK{IY27aX~W:Spt5*]Q+1 jnðp~}ZI'@]d+WHA_Uf (S1$#@}SE9sstBu`uj6PtQ?RH֎pI2F{0J`|A8tK`0R) dzs .~b}9/ (ls"q(a?+MW+ͱJn{oڠ> ()xM?܏]|ϜpzXNtfq2ʠb?QjsRƬ{t?ilI}.AٸQۥP>3'/0=l3kBoy]AFӨkc~iq3틬z̄_8DzGbq!N}q ܬ xSVmaDPiQ{D9Bl-BZAQ B j!FH< =M[ĉD4ο1Ky!nΚsbc} m{Q'r :0=SFRN14b/gRMưZ$ޝF#}X5ȥha38݋A 속SIGN7aD_?9[ְk:(!Af.tiqw_ⰭΈJF]d2Cl ".MQ)SQ~P|#^M }KfEcfI`"hh!kz7}m:7"TzAu6"c>R'%(2IxX_Qms_;4I1"]WPa54;ENK().F!Ui<+2.ZT|2CMyiҵo21KK3ۨ-yNB,(C!Mkƴ: lĞOv Fw4;s![x*؉{۟b,.c:~3\a޾#i:.X o_t!U,6YOjڤߥC4߹}]X 3E3Ϥc *p5Md-K0~JxBdv_qf56rٿh:jȤƖ+qy$")ƗU? eurXwk?z1¼< P'rL"TdjLIQ: dowfzBC_VnsWuyL`0 ;2ZH ϙNcвA-Ľl)9ɦ58qv&t'hWuHּ{1J' T⫝<P̋_w^;hg:r֏ßU@k,`zTni]\L"KAl_H+mMzIOK]ḾQF63j!bd\5" VƸzг@dfU+smiqBKI1V` Q}9/AZn ]W%ѽ*7nGZG~8a] tՈBljbu)Vf )姈uH! ǘ6\$[H^t c)M3Nz,4V\~*+\eGE(R O8n vڔÒy:!f ؖoִ]; .:d;"p~q3XJvVMȥ7PZif]?T5|8/4,#-kFuO(d!bVltDo/xlTX:"ҩ>:3wT,V>0i;2 pb '!頔8&3NXr Q@n[ شm_|TܵtqWfSkqc0L,Ѝci uVA k6tv3it}&kz1qEtdI@7/r9+uBs۰vVEmjJf;_"[-VǙ +[^AU:\Τ_-wmŇ! @s.+.B6yIxYP+4͚y?dR`Gx)JUM߬ >ú=^?_AҼ6{aϢɶKf&.г4\e`(Sul g]BCjM;@ fӏ>]yZbTLx{!y&7+|"e&Z/Bi/WIbEwLWp})♯%奎]Wb:A M3N sT6J8٦}AWkջ\#,7vys^v3t'rÜa of@5\D @E헏d5^ȢVHq( nIDkSO@㕴[ g>iWn OZsgg/u_fw:4$dH\Ĉ?@s&ԉ>]3ՏXkp[&c<:so\柟?kD"E̵Xq?.x-uJ%꘭1h%z^;d u$0!͓)6'*؍jVb)0<AqBJz8e~d5?-O J1 ˑXQFWȡ-PqB**D B1 /$%rcڴ"<񹺒.@S_x.P8h8i`!FvVb}ɏ\Swiۇ`1Z#cK!3sM+NPH4JMd3v2ϢWQa4Jӟ+{{)g_}L`O6(ZVblaG.;XyX<}(-VȲ},89!$]]|< iVC.v̪!1rFnqj <ݶPmc: c$ ޔ`0^(W\ZXYk9=bvu!㞧\%ueu~MxS7,2?h?]Z]K`hWxثpUe=ë? &/ 09z@D]ŃWE5 &RC>,<.]Od3)(p)I?HDl 븡$~uyf}kDχhӥhY!; O3uU*{9|QW jb.5@uˬ6ShE 5D3tP <8O0l{T>dNꌢ{Vg=n%Ou@Q|:z7=u>KjśaG}!$a|{bf8mi1ʂs sGz+Ȼb09M"v,%$<>yUJxN S]8o~/5 ŕJ(ӒŁQ'~ʗ6NvTRT0ӣ힂EȨI/WQ$׮ 8Z1 >kQ3aSMk<5-u(bv-] TK4 -kWX98#b4f? ,V8ϯ~FX! O1Ñ# 2.DvՄ{O[`g ¨368-@r0EϺRB[H*SG՗]~(߿G1\o.|W0B@ІweKUNj'@̘ ZTSVk/@l9/F:ݯ=wz NԻ:gRW*'D`qmn PG ,!0 -ړ5Úxi֬ItO|?ŠV\m VRz6 crQM r*YUi)j]iώ@4Gm`Ƅ" S8oy;G=fG)"[ܿYQ^1 8(5UǍ ;tW!8W+ܖm[wa/G).=Kè;,w-Xc)%֏ u}{V;C0E\ur:AnZK>Pg]"i &AOOݛqŰOZ6 ,!a!#z^p;LߢhtCZ~MiSfN'w20ҥ(# v6#ȍ r9 DR^ɓdHHH0@^7#:vƐBE* Zm[%9X-:axE`9B,yGz +fFÝoqWzh*.:+sTs i {;+گ-.@3j1j< Tm |>o'ID%UFTަ/_Ś\.}:ĖI*\OQSXQ%h11srMqvɏ]Aؤ mqer1|+ "C}3$8+Bu HD*S< * w$\?$=Nq,(sfg8>Ʈ)'jnV_vbQÍgn{y~ȗ !~~8uMdi%k"z^R b9 /tT~0 eG*aT#b=N . ?"jPOPnOv\3ޢ`NۡCDM븒B툥#G3s#2$| U3qrq~nIpiccV mO S^CNj+$%64u3MЍ]!Oѐr3+R#l{rRFDMQ@*+G&aՃ9]l@sX `X2i}b5%n0ik[f*'[{*^!|OeJ%1|E![-*=([ (H_[Va"hǝF,v4_ ~;)˲D2N&J$$0a`w#>6،nցO3̻RD/.n*D]x-u#}^$>j5g& Z2T ֒Fw5 ? Ĥr5.ᅟGV$ Ryڏȹ!jAS4 [h MLBlWmϡOքb0le'npcXV*{5|2Ziptigq,d))FH|M U`(0kڔĪ9eBİ (wh/lUD%NnclMj™)Sͽ9γ/ir~ĕIiKλ*sM<3LZWnz;l|ζ  ۄxBM1S|>=xMnAkXZ}}3=!vhH=5mI}J#&P\ZzR-{rQ67au# o@AN 'nlIkW:u%xN8Ʒ辭)Qo*׫!VMVK+Z 7F.{2AȻT1BwT5e$VYHbu #9CH)ԟ[70].K=s)7\^A $`h'Llrht>I([.-Nl@F>n:x.tDAmϭyiYW!KGpbE8mYHλ,`[lIqd*)nekT ƒF'`f2/7|A\uZk Q%7Qr"<{<穼V3E1 Jb9ܞP*)YeO'}3zOګq:r' uuu/_߽ / DKn3ԉOTQŸ"DxGВΝ7̞w}I*Kfm5EY zn}XdrLʵ<9˺Lb^nBCp¬afl3Rb06pkTVByI)u@Jg8: bR2>uiԓIq2E}`-X>Dl n'B.QLoiN1T]brlt5vK92+I-= !>ƾsjwQ)l`* v-Q pQ8vCf`L'01!'e1OE`-M_k&˸Sxy~L౤*wEhw~L-9cEqN &\ KdYײ_ZA7~ ~Mek!Tj KETg{K@͇_$<Wpd4A xN\x*CGmih(b𘻨Н&G7JZ4mHjW4k3!T9`$ ꃯ`,9 sk.mD ϰHD,\?4@`qҺJ#a3I]a<_CMo-߽<[! 5HuWU;ԭ Q&|yE}e6DFzYSL&]8me*X|R~~UJfosN?>h#;%;?y3!Cwn!t&^eLjz+Q+x+?Re P5YӋ5$-g͉>ROij^eS5R_ Ji; Ÿ +X?Q,u6L+(aMUӁסy\ #ІjTJf\BbRmeFRq^6øy}ZkܗD:&뚿(Ǜ]RP@?7 x58Aǣ[OV#Ѣպ?fhLcNWK23"0|N,V EGT4BW:pP?rɦg 9 ,5YWc{u-q˾ʊv,us"j@tJcLצ♛i\nE3uto |T 'ż8p-dĝ4ne _~ U_q5SCqd%.\>6%{/lo]$ĸwI J*ߝe( 8 O%(q[y}_ D*Bf^˽UFA~x@)W_?Xkfֱ(s~-)'(d)Y;Y"F!CP}ˍd x^xQI /a@ѱU6X5)q'D Qs#sYѽ)~5D̃0FF?rE njͼۤ)Cn0Yb'l[h3u >I No+_֓Vif|Ey5 i(8RXwLy"pAկFd0ɶ y *+xi1 W{ 򁳁.wkUM,<DdsA(gg9 9,=ߩ!XSm̱ǐvC m%Rq͸ ' /T y0_)ެ*u;GN ߠ߼ynYLTa=Qˑ`yR/\q`6#QGoW7y5:̧*K IJ"EQ$ͦ>|" =gDVvo*FhکbTfFDrM?&E9W]OA{Qyz?]`&`G?8Ͽjm S?qB>?oJBJhM֚מz|&$/ #*(v7vNA\T f+ ܅PGVNÊ0s =1Йt|OC_` Hpnpyaˡ+_yuy]fFQˑ̮єq}EL1 xkr c?n?07*-(ƶDOpNoE/mIKE$<}FƃsPD:@yp,v,V=]ۆjZ6?b/{(MP J2:e=|d$xZ 9*v(5[6& GŘ3솧To/cg|HTW aF`ⲡ˯w@G gU7E<~,s(ۂE R2b4QwלOB2QGXj)Fiʔ&۹C|pXp,+=+dFv̈́{ά"9{9f!jBD%`9^)JP5lK䳕_+OoyT'M)q³8h G,]pQ>VBo䭏An?8ɪd}mj͠Ą`w(PEpA*xAn}8UI$L&p/&pOSG*DJp^LqFȊ"KcPt -WCΩ@ ٣Mr$o݉psmė^{nfKf@}U$imGJI5>mE˜C[:D_5w2ĎR_G2R]+B >D/t8T:B'wԻy}5Mְ, ^Ô[HT=&JhG nj{ jҖ7oʃ]Z+hՕۃ;gVP~}GhBU}?'#jU%bs,kO9g@XSSD^_[T3.+ @y:Gܠ0U{m\nI*/_! $xep}NT[M^۪@S!f(OGH+Ii$4i&M9C\N% ~#j|$ET?9~FX"BSX5~#۷0! ƹ9tLYcD&C8 ݊5]9BmRж&2:7ƜʄʲJ"=ZK=˽FA!Yȥ]yVdzߔ#x^ٻC|*BDzum?aL_}f&hCV?LKpBG&!Ӊ!yۨMVmK8 Q;UG}X5n6 eV{aЬ4d󂑁汝?}%^lRbNqK6 By8JXpӳu VWfϺd)z'*NJGVK bNt/B"qQ~=2~ Kq>i * Ja{ȝuZl|qBB8!-dP,vVeǾWl5֢ҴvW26h piu";Z]`-Uei4s?>`RX$d/E*()Y'b*yL穘0b.1dQVJe.mG4 M^J:+ AVt=a8 o . X4# 8f6O"oytt_du[t;5-cua;FgP!E!_m]\hDY!RnW  j31`ގDK.D2Z`ޝ>Ȋ\*p>rX [շz^ #n~ڳ%Dj<=Ό0+;=~j&3?orkep̻qܥ*KU0s*ħ eoeDbc-q("K9OK^JbLOZFA =c~ ^Z]wz%,R0^4+Kȵ\goz{Pu5ux`lsP%_=bͱf~A8i Jݦ~Z8=]!5r\&UD#=ߏ&o'>*Y(egdW]G@z0ȋ'f@cɑ~ F"61e YHW3KY#i8k߽-Y5R?޻7|ŢkgҬ7A'l +p?@ߊJP~ DB-rHdH`7W~} 1 >Ar@m,hҶ ,6AL'YaA}5˾>Yˬh $P;1,͑~2 L@Bcg. <c nj&F8 gmLmx*~|(Ϳ[OQ eD n׼Gg\t>(}Sg,?=9Dqw(:QN vo]Bړr J1w)P/͚~~xV6_i.ibGfRwfʝ0f&]%pC,r h5iO/ˆ (;@]񢖙œG\k؃D &¬;EQf Vm5Ȃgչq$hFYV&;:] ]Q9mOΨ%LU_?>(X ۬ώa.}>4*d1ቇ"p? P4Лy &qD$Y@jg|l< uCt:*B;B?FYPkuAAEjY QH |auQ! JidM z @5o>pH( ñ`+IgB&Y ZHcDGCK+.WX^(|f+A#TEߺvAKPSQinH7Z|J8v>>1ǎ]_Iy<Ιmֺ@24c ) \Vk̂P*v_:t;Cfc n 6&*rt[B0u!x濔./g!I:t)F̿Ӕ,,<@09v|} ̶=r+9g}YQ:y+,Z8Kjl,XA$EauSUG * •cD"0+(1JAψ뱈wq O<1Gbߡ1 B:LZ3mo}L H44\ն9ꦙr͸ ֕PEtEbnQ1)Y \D`?09^k}ǩݰ/vPo ӻ#pmp$ ɫ+e#F.]˔ܕB=ԥ71L`ub7_Kz%A(PH% N\]eMgzmQѐ &nmGX/[m(N#jId߻d쾲H K7? Lg圁y ]' P̖H)]kM$Kl8#L}ex945Níz ߜԩ 8f`6,rE&m hB!uvA\bg480@23EymD(bแT_ČMgG5\i2!)^ :*#㪧sDLu`VwbE>DñlxSji{ ,yiN'% ł@pc+jFUkC$@u{8xJ`݈?R[ڄi+WĂ708D@p.(PI 1KF<ƭ5,n11>vqZtyь^WiBK'P0RPOeroӈSU sRLcf;HY*hwuhr5{ }Bqs9og0#?a wك#:V,:wOs$ D]h<&|΅Ms@8ʨƄ1pƮ׊/[߯ȬqX9)Tކ#Lp~jyLp`J\ohRE.}rwUsorEUzZ/8q",v7j wމLKeedEK$`jF ) b h}`> AU^RtYyJ |Ik;R;c̃o9j4s| TK"F 3.NC.n}) e~) bq^߯d  Sy6>(ZT۰E=?$Ҵě#758X8뙶Y_ny`\tq$բd=@LƁK_,>*r~*WnI-mpBQP YE-tzBd2ܩM~^q’dK1`ÚT#U>)d`4<4nhLU#rJins|\HkPאˍ0;d _^j`!.@-Q"=B19ez^m+{o; ۲Uk4Vmٵ/``acJN>5.E묉aY;X)DS_ע웑p)_}R7$P6ͷm5Izh*l5`%C%˛&.,[q 1,NQN T/UߤB5?qFWR9y%PC4?8C'BLVJۨ]tes@ siߋY >WC$YMliQUF xKԢ3)cxJ;d43 4']4sS5 C+[VnC~:BN]CϙD~$EșpZkbNKl&UvGȭr1Ӄص%& SP;vDÞ@[RnLN+9YKomBAi2u#m+%E"u{~L ߉Ų~Ʃ"ܙNӇaSʯ(> )3?8A/zx-%Mze}8kAN+TUɭ_+mg|J(ܘW6*tK RǕROp~kT!?!r,K۳JHp3/u Ҋn>92\JmQZ,֪9(I랓 (+\/I g ĩsjw\/t!l@BJg"p~L z&$K~ͅ^牲Y/.V=IEs7g8® ;3*yg-W<; Sj XBO"b`_fz+,=kUk9v/D=Lzs 鱓Ca&.ŏaV&]=_?l"8vQχ4Х!SEJpnZ}"їٶqXί&"S{ tM61@T_^2"NYw/sݏvA@o!X-q0c!Q9ߖƏ)8nl3(S#TГ  ;vum2nf| gǧ_,i7e*FtTs-6ǎJS㷀 R5U&7nNbEbNN( O_з߷/xNZc#,}FI8.\&1zGDK yϬ"34&e稭KuɊBXSL`7-jU9h~>8՟0-&sHDL8䇩eH@H[~L>‘tuǹHUkz$v^u]Ҿ`dedA9,&2gwkȺ&Q:h\rFkbx3&N>#NwGcHtͼs1Pa$g<"0T&יتLV2]/Ԫ,AZvz{6BPzLVd}6N;yA7gr3Cn{"2[}X}!ur~IdBAzIBI XM7-9N{o|_d !%ys Mb.~,v 'VYMNxKʧ2$™[ӄJ{i=Cc-O'5!W|C@~^h$H(/x͋ &zH( +@+Nq F D =eJOEn?(xZ+vFI-di$ӜAd쎮 7(~˝ّ޸+[繡lt֖5 ^7˟}YWraQi@<>=Y!MΉm8ND2$/YyʲձT,:\ 3TkXsz_a͍ZxKJ%\!Dz֒4 czbA|k*:N'i^Rz!߫ќbP$wdIa"Bvo)Zc%)_'Fp$pW"p?=١ }C}ބ~IRfx-ۙH~*)`afm<]i) p|>;S7w,"I$}ִșvUXP*82w{1X )lnHq"iXF@i7aZ_6YRn|ߘ&6F4 մe-)&@c>ДO}?#Y5 Kң2j=C4QʼP yY#28Ōͅw{Z@:+Ncv.F '/;͌>v>*F/x@[z걿{ȋf:˨S7Z$𬛺g Ӣ1+UtɈU ]C#TyԅwJ 8U=+J"EE0;fE.FsE{PDs|~^#C-W>-xwmЎp|b\xK}&G'^+,&JXON[@'grHL#7y}[ o\AzHn\؆}gvo!7ȉPlqh 5UFD7_FyiIX~8@!獆,"N]+)`^ag{h3^w Hqfe6\<Я|FUBi t[Zlq1Bbb?V|NMy@@S]~nb^UD[mU+A"=m(,,01@I}`R q2tz~d AXd͓f]s TU{8UVQ_L4V>ksqL[ Oh|,#Bog&=ɀ#6T;]ΉӁ2mkEpݲ5/acXIwâ[Oz |j8V޳-D7] J|cj߭aiGyvwu9IuSWٲ;?n 3#jWhVұz!L] KmBS:`xEyE0:T5XGtmHj,Z*:2H >1/C7&*U٩<^~0NSd WͣƔ4:c}fNxEeu*-Ÿ!ۤr>~Q9E9*L}Ntz4lLP`SBb] 'Q.,.G }BM!lfJbW!}u]k>؂yu>FO^oFmNWzKj&ݻ{.^ob3(U&l<ƙ `cS;n BqjEw(f4|b;5??ZKWLLP0K(o)Uc/E7ud.u) T$es88;vO[3J): ot>WC2Sh>w+i.?heNXLEaM40y :6sR [h4su;,iT^ cڊZE(+)2iAZP,ʥj;tF:!DQz󀏢T{=l7[I I!`z-0Ѩ\UD;pswm0J0XJgaӲ+wyl=\ :}AѬbX"{xr}U4oC'Mպܮ_ 6SFI-tĢbS{;fPWY_@@Dڞ?TcT*r@Xvx uN7ˮ*]d&Zw;!XAZl|nZ@ 958ks%>}` $T[o 8BVF_7R) ϠkJaqv  ۈ|YETmM!i&`*@O!UDQX"TtWQ/<fʨ˃(HCُ*S>}Շ)6&?p,̋#һXG u0 PN ={p@bl^J~!:>@*Q- FRw (Um8áb'\э _2g'%dM´8󢴄Th KL~}pRDY3ռRx5g {Z%$OUraCYvs ]`sM=N^$~GĻWiX98%SDht-Ě;R{b ۨZLuao*74`tdD'^"GxK,tqQdZp(N:Z Rg H u;` #.0&7ę39.Auaɠnh.;a\)yZG]+䁃o=&:,/n>} .Ww» @#W>Hh7XQ@3?Cv*#H2KQlH {-ƀ\{:ġ:]CpSDuiy +g+T&(H1NR…1wm j\ʲ!p2x}/^kͩ:\׊׃Ltmc:snI+j?20t =rt╡#[$q.\O]4ǀPsZ^ \auĂEw~?q aX]ÄP Shy쵐Nҗ˩sL,3[=zN{ؿyzfruKi)E8>+ѸSԝN;욾NV$aWdI٪a)oM#=@]>[l ᛓ[Ĩpy&tH_@G[?0<Ƽ-uƷ׬c5$SXC$|-&WQmoKevuj3"1`^%6Zr@@+jܲ,e0Dzf"wBցq^*6gg푃G%?X*f 䍺WKŕ AVSCgdSrľp^ؙwhh%#u̚0l]8 OabBIs(pYK>%S4cSc(TO{FPNG[$]PPyB--_-AĹݩ%Rڣ -qfTQ #B$azAϭsӕ$z ޛ՞=xuÉ5x@1 7ҮAA q!ʚ9^ \ز[  Zu 둱/JBg0}IоxN wtՠ* FEf/RT#haqA|.@1[TtP.zw9ϯ8H9hc=џX1[B9k0\gb_eQn{jKE a<7 f߯ KGhB2אD |Q S]2. @ V.$X11lK/50 ukKMƹd? .Nqb^Am)mr `mMъS4%&hQ(鳡,y]t\hIXFJElĊsئWvߕs)B/EK,Yn m:sw0_-6ǿND&qpmGb#g-cQgzJ[lHDF CbѡDݖ fXn@$`}ݳ:@%h I"$W"8,AA޸TBŁ7J'>uz/d@(hֱUrLT Ɋ8ɹUhB߲YǻJڥ3Ӗ,٨b&[%tZ=>QkjF"Rʖ]:F|Σ'J؃KI*X 7fxa}7"|zi=)7L @Z8fqPF ͂2T~5w_X4-]Ʋ0ƥtiWW'`H}Xm,4Ku5#,t >7d/D |SkO3aGO"> jeR7$yTo7&as4^|fxSrf0f uprpNNQ/ XW}Pf5{!NS״JHx,PjJ.8*zw6 0}I,2˿vHmyn3e/Ё#Dwx{>Ƿ`940†[eˠfX)oovZXLV, c]W=4(DC4LC޻tR>JY-mps;Y/,̻EVw>;У5Ԓ󈣩-Ϗl"kѝn1ֽͿb>pDb# ʎIZu0Z$$j۲`Fxt-t73f}xL;nJVgKokAW?lk׌6q(}xȝGBP,,oᛙ 嵔e`(5_؜́6Gw^ŸpꟴB, )7.jo ̠7D6r韟p9оGj9=jm.u># )JbYV5pV+R'~duKl.E+y/fݓ]J*I<QԲ zv$ǘ' PSoJz@(&epBvZM20 C8i/6AE8uTf;lU_bTLdlA(9RB"ܩXI!f[hF첖rQ\ PF{G m%"oa  OځV b&1n S1_2P^7:..*s]bԽQȩp@9ʌKd3:SdN锴xѬSf Ai.rC+Sش& rfK:25ۭmyc&1xE*}G$Zq%Dz5'S{4eOq&Numλ5 il`0ē%~MNۻZ);ˆGd]Ћ* ׿Ԛ#̻ӈX )7> -hAM}St7 C-T0ZőG=u%Ej bdJe~N(8ʵ Yܑswt"q;γ@Yj$/7hNalTs ct9>oBm6h-4Hl_MV9Lj> wYIYY)[<˔-d8-8-a]M2IS?ۢx-MfQI‰B~52xqBt9h]6 8ԥ+MŸNY*IuDzB&@5#;Of:ʤr>)`>)bj$Ǐ5ߧdm`V ^놆n=S!8u}%-aw9e:{JXq(\PNPg8w`z5I\_?aJщ9d(E'GHC *#Jm/uxݭ8P)8{ـ -v쌬 ]$ϻmJ֔CCFŵխPC(W>-wݦlnX1vWi& L!dM-1KU#b)YK[jo(WKd#*cS %o?tMvÀf܂'Yv1d9[Y-Q g*q^PkXHoBnˎ@g[qfZW#lU/39O&>'%NSÕA^i]TXxӋ;TiN}TQXil@킏>K[I Fpl.24E?*ߘGY`<-`AIgv×y Qmrr}h6U % ls]!eک5[(5t$ku8mAG_%1 9HTA1`'Atv$ K պ(0dT)B;{=P`Hdhv`/`cqcE*96Z4 s5MWjvD#SJ;b"$2,f t cEn\!V|s o_RVIؠn${[V!.ȐͭIBLx@DaJ". {-ՆDdg,}1 (6[#\Lr zcѫvy8KC$u q+T?24ڛr.C/v5 &5э60G3JR^h Ų3mTM10Cޭ(0߼Kյ.1 EWi$xъoѷK5ua9,L8 1wXƜ} I.EK ׃/{`4:*rdV4g>\*-h'Ƀ5-*?]S~jjS> ΥNVӞ?Q<&CѸ2ϖۻ+{jHΎ[ٮXk2!bZŒh@]\Ml(@Kv v" MKNHsF#%0o\5l[M!\e WpF:'-/O;z7͑=(xC5G*cv$$F\9/ufZ%_vݙYX-~@dTOe'[葉GWˡX{Evٺ\T^c-'ShDuL7+ԶXQpOI)=.6UmhH).5.+F!#=l]I)9D+NP*<%2BnP ٟ%=-n +,YA-!<Mfg[yC2L9QØA"f.>'JD-/@х `R. 6ȯK%ǣ'E4]\9\pw]۸GAHj9. K Hh(3=%+[ٝ"B+0R QMk;Í[Fy_<3)k.x[!Fw d6>0옧\=cvDjxp5U+}eJLKurM9/A/NON076zjJQFqjFHffh"wKɥBЫFXaZ ڇ?/BjsK0}3%=.Hזd/HK~ Xyen'&?.D76R@K̦sm30#wk(.аeo}PK%Z-+[ \zw;j@ՉKGmlt :=J,tbCGnӘidqbDbd?$+H%νCj-t1kǻo3 "NȨKݫ,ԞXTiKdB>Ψ]m3dQ3},OjJ澸k۪AP"!2:=W@4S.D?# N?^{|O"bXhzd90󦿢{mC&!KD6tK~}ޠN9F)2D]Nq7|gVy=ICWC[J*H3NCHDڀ/h>?&3f^KJA.E<`E=mjESz˲~h> #Xg]7 &rn̆f+M 1 "ҞhUrWPIWj7 fi1~gwd:#/LCH5KeMʯ7{̪!yf4:~];]:+ףYkPXW?l"zΎi)4*v jxz e9oԦR H 1Vߏ\ WLzHG ֋t8DڃuN~,EfSJ kLKeTɘd=7s<O4B'A .)-۶0!Ll.r՛)Oݩ9#X_F\ u6G 6b>zХ9]G$)@ "nk7pgT[y~ 6X3PWg[%vu L\.t`7-xm"'cSQ&mR|;u\ u, F} Z(`QKPP|'_b n+'okH;&HizWKҘ8ԗ܈)O0Jx0H9*eϞ* e:KϬk<^m@3VTQ\"ŇO+FT%J m͂Oy2񸥨N0/TpH//Zlڴ:,*Hͩ>G)P3'{ڏ21b*]kGGu-tYW" U  7D{[f&TOC;BtQ&nU}G4 C~v슷#{2PMLlY"v?cʷ-]>41 &//5yU|jaK`*$j aq6`lĔa -odA0 Y^ 6|N?NrD:W|8}Nfze4Y8,GL$&D<E1;$e9f`Eu+MN*#?M)n''|nɍZyK3\S-4~,8Vp yz>mJ+.9YB;I?׶($Md8ՈUir7(&: PD(D|4v%xv\CjLE m~S (nzd]a7cIcn:GXP˟-v?e>@ʱ`Ө(F=c"e\+͓#5LЛ][;3`۴Ypl_7b$F(&7=jN y|*lJF%09O|ӻ%Y5ۼQ,k/qSUo_G2 Y$Axu]?ԋI?ʂ#3 u=d֗U È0Bߧl8+936"%3[pb@3`+~o^1ȷn?Ʊwl^c&$Ȟ\uY!bw+ HF{2~D"hb1ZiⱯ+)TuTU3PjI]q2wCkk}[Fo boU| aEֱe S6OPm*=o u *a_XNnnuz&LL*и/SV"spz?OIc]Fp3F3! ǎ9{zel Ei4͐c8}lDKŹOhMBF =] sC׉)n jѺr޹l`TckJT* SgE}`tE; ;IpY.\p. W)ڰ(NJ_ >._&E+O QNJQ(72U?:F{&/.a#C"Wo |1'-ߩ%n h=1o.cӔʑl˖AZ+b|?\M ;+*sͰ5kbNBr`7`M]hnJ]';KB$Ww|T-$Ys\&gՈj*/xr{Rpנw@TIbsJ7FMS9 K (0yKW ?4^/h&oD^l5}ed`E5X>4L)\WNxLH?tY+~p+I:܇Q/5xJH'5R8`T]a}勬 qǐ bT.bm uI=WDžDDo<`e؈or94=ŃϪix:&Kv#R*ZC(sAHI/.F0B1EI3 H+y2.z c(>Xbu 1yp0C á"ö4"+.ޘCP?M6-K2Xg&:@$ve2",c"Y->qրתXWqB=m ->#_ӟj*dܹn04=&0Ⱦ % =#B]5$Op. ejDDLWu#Vj9O?FUUtP,tNES`2_o%$un'&i9pccR@# ml3n!]kE~] s)N㑸/C=uKPMeS,9lAR =?QD @w; /ypD 4RsĪzj@vxփ cXN\~B߹CzXP lrS-0\|+V,#T0Z~QUjn\(@?n T۸apjի*$ EoDI5{lKZȜ `uJ[voF*uK7@]`nP 5~u@Eq8k3 |]* #t._9ߛ=^vB맧 8qB4 @I1GB@eX)ܩӨ £ R;4POx>q?P-7ziKW {iBP%'ڇEsNiLD7}rG>WMᒙ>|*j@\U-xxL&>?e3>KXs뾝hv3`nr T[ O 4 &:ar'/.2/{{NRH,ވB x\ 7:lxPZoq?o#1;S֠\,&Kѭ,:miQUIE/-]tGU}| S>(5I'hiнa".iHZIتӍ9; 1~]2&B%!p'nNLDzS^(!F[8q+EF ^ z4rA *nn}8b`w!ώ2 Zz0Tr>wɁK.z miqMz"wS]i7pߔ@챓JK *yINp>?2yt NK?+~ޑKۡLk'Za_:M_h8J\#%ri3G!>ҁ`V}P] ֵծ4-WϿ?6&%nUj yY '0*L\mWY]MD18~CUq}Q =au>|[. ֹU'Z撫zಋKUTYa@}ѱl8s٧`rwC\![<'WtBMYCV WPEr@ݡd􋿙DAHb2o_7kÀ܂} YcV%V/Kz6%lYD^蚸en}MWaQ',BsQ/z7P &FMLz <b(/_w 3Ki Wf 8 GbR8s_ц> 88"Vh5byP_e~"a:}QrO:e-D&FQNow4 zgXߎqISO{۩zeW2[v/ +F5,8`.\ x9 clU0PGOCd)PD66~hdۢ;m%6\ /OYh΢.\T`X=.ӨnQ8JM n[ZJ,ϭp|$>^);C&lr5~ ΚR6#?@JDDhZJ=?id 9u]"2kctX$š_\"-Ǎ6=hྐྵS 9aOiND9!h/%t!X&(dz)Xo_y8ak(^4~nU$Ѐ5'S#K̏`ajh=,šo򬺦g{iXjfMgQB\ˣv,AYMRN1Ԩ@UYDuʒ8iiYw R@ksC 99iNjdEe=fD3Ƒ6BNDF;9yޢ#>3Z1-oK}m} K?pHV;>PV9NSeG4kb4*#MmX 2m+fWI $>AD D?-$ #0=s ީ@ՎK<_0!f m{~&sMrx,)ڝ]2O$umJ!. Pnb>o"~PjL.f5WScEKA&<])t*lG HLZ, 5?6ٌ#=̅Z. yx> ߧ`'F@@"o5``3Lɛ&6d`xqa3I9 VZ>ݭop`V2eeQӝW컪Zة y%p x> "dY1d;)74XE3k=_ގ޾_[,ä\0d;iNKYˮH]/Vy~7bw mʢ!W?Nס (1 ou:M8HSI󝼢~*wq_5sop"H'/ٳe7̇k_LQ~:UQU"`K=-YaWqgĊe0>VMq+ͩXv^1jՇϐ ))^hʤ6.1LMԪWk,?ܪEn)!Զ63$:;L|t5 ٨nĖ,"Iظpq2.IwsrREt9]䤘UH4`$. 553rS_؃ xW+"@z\cNgTtXt]S=mpf,VUX+:u^}kֶfd6+˺a0fIVXcԱEfUEȍue#-̌H(N鵬8o[^l}ʪƶ.~0bbn[Ap0O+G`A_I.mr_"9*=ûRNbݛPVY5[fj0܏+J*)aXuzȔ6 %{/g6/ ~#er-BӾRWmc7G ݈i/ \hjJ"t":Wb*)We2N.V?v*2(Бs{`l$z;?]WѪl dɝJj %7b&)ZRp_;jS@1I$ N*"d)# ݽ(Ŝ[j^ #)iM>%#Tt$_S͚{ ̠ p>B@nlEfث$$ow=$Qi0_ kgp1$>gj[@t`;%ZM$ty9),BCJ՘GicdC7VQq{'IqN/^4,GҐ?J2ЎHI=|_NTgK#${$7y/

+hǣe2^",Q6ۡY(\JfeikFIk\XDB`U2z6C:TꐯI/4Ej,T+ ‰vЃ6N@n㻚mm|E;3vC/*#d`JdCT3B:+PBwM $ 9[>zZ`ZfּxǛ'42ٌ>Dl5˫D0Nvh4.A&SXu^#.s(Z ^@IH2#Hn1«XB%Y'v1tVoi5a;o:#Ήa%Iri L%o*zrE  4Ybck c0_mFVRg '7T#Ɇ֌29uLe O\)U(1R;&&zt6Ox(S@Ǣ7 ˸ 蚯#_>>H+[q -^"^]%ᐩtb@@0`l;M8x}y]0rP 9CYp4Q;&mԈNR +C0Jq2$OFR͹2bѻ`eч餜KSr5K*a4w͓!L-[ZNS;? 0NЈ.iJފʬ{7|glA O]kE93aѤw26"owM:bYKn MP/|pĥQug£_{Vgj4g:t2o a* NHpAexSG/@NLAe%7ߦY#ӟIBRۋx-PVI·O?h?و >;'򔓡(n=5n;"kpffb6;z뚖.HR-%/T󨽐~C۹i1!+v}ȵPiMX9b'J3@A2=/X!0GIS^~qK8ޫHE#/y *ƳѰDt+J yxdPe5RrAnDYѲU Ktv #1=H<RHCA-|ed+[L99e 2e P_cK=Յ7~h t[L\ּak 8T;$\HGi^̃Bub+.{gb;L]?8xMd3n4%x-8~[Zp]@X8J6,k79f$`VЬ1=.ayleMOS/Ezi%6Mi")lؼmThp̀J(\R,ϭYC_HiX;wO=Պm]W"'̍!v}SG@AMWEy nwu3e;9Jds,z~TLsu%QP3X]| &N*sk[nT,n 8* ] ,X:u џKiqA g ;Yʂ'){Wp’64X֦ q@RO7BIrAguo^іRm7o/Ƣ-L90eMM3 MҶ/(HT7HT- q-mC;1m$g8]\_kpdE+Z"QsLA w'ĩ$qm3")W(!n@ c(1a$_@1v3 N }{$tGߧgIFvҞ Es_hrD56-3Id'I9)XЏ\JT'^?dC@p|~ xOȰRrD =*m %1mAN:;p|:]j͝G"QU \A2v2OHRzu._ p3Ьii,ZBP,;_aP^q0.a8,H-ڞbN޸ŔzVSڮ N+2PnʓN _Jl=fغ5%I(yX0M´l1֡(9ҤM0>1[\,ڷϭ rM'bf<^6Dda\BQd_qT 81ǬB)LsG4T⦘lTʡ ԗ C7.ňNl5Qd q4Xܖ N" @4!mQ.e 6ֲ;3 EF6V!JA770'4@5 }qo%8.QD-iŊtya @)!Ktf[D gMZɘ~J ,Hc:X.&y|N @t> $[ x%ďʙa`![S;*ڒ6/'aQ4-F8/I5_wzs!w߁|Z :PkMu9g4y -eDF)vRu 毭{t)3WYA0oDjwdB i+ Cš71$B{]Ҵ##rHg4ĭm;ϝs cJ1,B*Lx:2ww*B_Ey.0A>k]95yoArSĖf;^Z FM~UV&: RO#yx&<=*2mUej:&g+ƮOxAي;:@'TeCTȡQXߌ sZo Zv_R2 ؾH`qa3w c5/9Lqhk Ϊ$]!8*/| eM̯חLZ0' PK}^>%!^Ci_>7-|@h_}4s=즖U Gu7TglQuīTjP |ֆI{$m.ZspIo." ƹpk"Wfv骷TLFZqOy#QқF7RQZEDu>J0aظ(FArKm/ZIq'&}6- a(GjY'JIa:kIP&TfzJ-<ݰ/}/a'3<\i2N'z6H]qšK:("hE_Q9s y:N 'Zg1f*cb,9x:U@dw5Ե/,w9~o]rOX *6:I% -8 d|M798h1KNr3r2CkۄU`{d*ɐyt!ucf]1.REq wC#[yvh|̧D tiBz[Wh2%^u(# FQU:$m8GЍFupqSS멗4VY 6] 5(P|{qJY7@WHZ3:%9[ꡲ|MARKʆFaM` **ԕ>`\-q" =JrG._18zDYxLʗ&u6HzO~|p D3~AO*hk8^/ YDr733! j: GęYJWDĖ8mEP[|Ы27&N'%-|/ʬ l@Fth x /DnҤ(Rxoܽ{,:k [oB{Tw1H ZF)̊ 3(X->{x;d賏ѳBqif1+.%jyq;{ 8-:aJy=K,rrjם /¨Hrvױ@o"ҧpBvAQ> ӮK/&v Yu1`7v}oNؽ ? m7 &t-^_%\Pp֟@5Mg>0;AOJκ^o^2C'Gs.i9Jమ  eP95sz dOgUd7䠄ΑJ$aQ3BL\l=|~E2Uy://N1';HL:pgtxZhvIL,%n~Ap1Ы*虋v%M:\sAUn(+wQc7E(V=L5W6b%|4G_9GXCpq?KM}*I7YAWwjEkF}FB:c;]Xe&{zG@J#M3f SWmDl TO,sI7.,(QRQt;|$~$'.&B`1JQXhOE.Ӯ{vKZAMACGPž{ uq${j R~neVv5b?MхAiL.7|B <iհ/$3/dȹ!fodϋq(PH䈀uYFaՈǢl;6d#,d1\fruS,;q$ OdzD gcWӕOIE *,-]vZ ݩC:qtqXv6!|l1Xb Ms}â/dhv:{dz{6ֿ{kIޙo*[{&"U)S :+d橖,9+5v+΁NMp.;HQ)^3`i,ke]9ar9Gll UI9*'~MRr@sqUW| 핕A~ K<8Y!})34G`8P4W9zbgv#e'2y}sy'$VCWՇ ,}؉vDh+ÃNwkvZj橆k :L͖˫b4j&J&A{8"GR]@6oMFOXFɔTfz\OaRvP*JW9g hy.3`3\P˞¶ϾUbV$}ֻ] j=k<5q,&RDQqd7Q[^+2AĢ#'VuvF]чA!v&mn?_]6.j65vQkV " 'g eqNCNUH~$Hީ ֻpar1ٝ7)z5+;$SYD. Wo]CtV?ƃ=`TdFZ#Ev0UBDcW:!d!ܱ !xp AYG렘]yɕ}Ӌ?'W"S뒂Y͇@ҨXh xe;]a&7=R_p*)l'c;v_14 o/*KFHlHb@Z5ͼQ=w`HI܂w$YNx[%h&CS_ a; (}D`Fp@+߰?Yn$z9%#[1a^-YOTHSbȡ y(<؀y[a/H^)k&c3SdV^4ş!B{>Mj!6DDZD ^B4sC@@. :`I⅓nVԵiRD؋ kf9}9ȯ|t]\`#\g -W̐1U7X_!NHb)ꔾo6(ͽD/vOahP=U#҂މRܠpnz],sOw2Z  7$|m|{.}W-$RA9ER B?$PS egޭ\2`#p= .q$*,=ih t#r3ųSME϶ŕxHf%9Kue|! (0'bgp+* jzw1 l &о-P`=+̸'* 5.EA yq33 |׍YtQV&n}ʽElqjb4)(J-AYUPqp]X(A[CVpMl K-^i+>[\o?do V.dv#:Du>f%-w _ ^v[Mu{νyR暻;p'JWZS&`DB>;OloNf8;NdK5,#4m=om4kA6tJF7KVD>ׄi]nm~ kB QK ?CbΐX.?<%kǞR7 -bweԛMߑf&N<^-x^w8vnJMq4tQ}_0/ =㫨Kv)U/%#x)ǟb,}_4>r[DV]R=uqj HjbilD@csv2J5QhZC#cBcpvgBn(54a/dqer󪦺$W4 @pg K_ŔRJSR$D룫M߅0Y}5UfcWGtFX)c5BpxO˯eNixo(|xV%[{Z\#ͩ6Z ~z~ o |~- Z%HFPn}mO< o5f@ogG"Wx1K{8'4yF)c]I)d-ҵ ?^"Z `H |>/CØ5LinbedYA? IzpIu^|.b"X׆]lPTՁg^TԺ1P/! '|Xn*C4VqMWmTH y$>Wl*n”q!n<=}Z^ ͷ2ptUb HkmNDdPsmHS/|e šV6ȮA=R_e@o1 жB+lzZ1Qܕh18&}S.Z)ɹɲ&=Qh@X覗 ]."~&]0E?gb80FoAz:6_yp~ G3{TobA:6vN1$>'cd$Ż_--۔S KL&!RUuT%lQ!5&":5 K( ;ͥ|c'if^m[yN֏9aS*6lV~s]8\K(Up"j1uK;Pn.8দ6b1cz 4 ""3vm=8*[am0|6ҹz~ZeZKdٻ `u=g@AVP'X SDS2U =l4m [`z_Om, ~R&x Fo# ={+8R8u }/M[wwwEXZY~}$( {"+2<x:^Ҿu!2ұiF}]I-+kވn0^.:m)K!L//v- \&K_kLiK}s2.=)MyG<-ٶ-Rǥ\m4$ cϰdXc>} bXVAY옛aVT ĉWeRԿM5|HS ?KLKokKEٟHL$;4H,2g4" !Wat0{P 9I+79fz倢wxoi:C>!՗ N@hʑ&uۃ[zWK TWW+BPEOSg |Ⱦ0Љ84LCI `_4r:[~5b~_>CT Kvq?~βG7.4 )L8]~iܡj~i Zt[Q]C}98vx=*).t apQ,^"D¾JJcfkP[wZFƀғz/jvοhͤYW$x!}0ׂd6kEJ^._1w#tA#,`zzO,5x\k }\Ӷkru,94]r7a_k06ο^InT?Wܨj7zFO95|!tr\^AE_?ۚ'5p g3cM+R?w4$ɥөz>$k۶OwK6ckiUT[rkdU0EaKB}8yL=224Ovt[iw2aN*z<=6!mLLo%KƁ:esp< X^S j˳˙GI**専?b~oUB3ekgEzwsֱ tƾ$l1U]eA;B7%Vs\˟\1FM;7b\G-V[g:];g70h } }d&y1:+Q[I9)4.[IGmAb9S8vhtD_TӾY@GVpC(?&zn؇A$/OKry>]r꾮kBYJhȝ2L k)) 7ט@)>Έs#Jo:!*#,;uަxM&A H2!H%b<&Y;T!ꘆ]n>}}`=R{fk݆.a8nL.5r. vyͥXԢ߄ ܬϑ7oh0?RCX"`ݴ71rBbmjT~t RO Ξ U$M4؝fbI7yџ`׀-X,BDPQߏn3%}>C SA&ᡣrM(E֑6 r#{eaW;ُ|95Ǚl$7qEuJ %EZ.wk+ȌXY_f'n嗭L Z7 \UYiV8o%UbhE۶M%u&ᖎ"V$4pqUZ=5Ӛ@ wx6גh79#ΦY|$2r iA{uj|Q \v(!{)'qgt6E V+-kC`-CLZӨJsSk K% +G =q/\w(GD`!Fzbqi,CË+41k?,p׮B\~/w%C3õQM$pwRh2| ]9bMqQ¶vhj ̄OM LXscPyVV2}jъjl;C` ̛sD:3?,`g|˩M\ϒJֵe[A +isjCU ,ФK Ǧ2M4~sZ=Qv[t5 / $?9JLAJܿv5~[:jU @d[E8D$YLH3|)ҴBcuخsaqi1yy |  :Lؓ+Mlv+[ -##y-~~i6"VǕip'K.k\i"w9 TȐY9iVӮIorG8"Jh O658$*6VйQ.hK+p?\ {1G/2A!?648(8|>IE|Hl"r% 'S)d"žÎXDcyG3(V-곇V7hB *9j㇮rqDkL  X,w=>t`k!9uOˁG zvkCKA~6Ca+, LL&F* JwA`6BM; SǁF >P]&ʿQy)P`E<p˅INP ~v:[Z;A|ΑvDւH)6~&st-_+ZtuxlE``OEgѺՀQ:Ip)$XINnnFa70H-{s nݻ# ցCW|m(C W$CA%W1Y i]QgrP5<;wظ+2ϖ;څ#$c5a<ΤNQprɟcîSnn?yNW 1@:P͠vTh}H Frׇµ{yX8}e#㜟(#A26&^5!Yzj|5CUnF4P TcfԚk=͈37\}9}C*@Sep}ljv`9s^n(hoLPڊ2" ]WNd#[g)>z=4Wp pǑ#CAvm6Ƞ]6 %Jl+V.Moꝓ.[=F)Ԍ{䌋n5.lɼM6/ `)'L$)FG!*tq{ 8JT~g&l,F~v;5S6u Y&)mL']Uyop?P! E_+@ @S] ^ #55Zt6]z&_ڰTxto|j~AAsx(n&7p!hcEeVb *`%[X坁;eXi1W봉t48vr^]23M }Q}+$1w"}-,.&ϯq:3v r d!1Њr^ W(_ S$ Ģ6A7vazܓ?,F}PDvTs;w73B`HZlG\4vrCl%ò6q`|+rnVr6^)Z.0+OX(=)0JQWT'7ʣ͎Qo*v&N{i%ҘErf{( Ӊ=ins`a+yy fT=abh?yrYj/; 6ҡ)GמK#(`t[d 棙# ~%0T(ӮFX~b {k$~(ŭ!T0.A} &S܏%;en(Nh4،1 S+BltY_OܴvGĎ&ͣJݔQAG0A0abwiLmL Wܛ rD+[-0EGN{<ĿHe`gK7]MV2ݨ89#&Xps@۽RHciUEbNW4űODE="hnQq7ܶ@RƾH9x2|.kKm ,8e2+wKgv-cV;b~1 %;k 4!S,k +a-C"ވoz9+W6h1^HGS2yhj\p|wD>K0|P4\=LH7 ?HGG]`wJ CHm_H递>HNY [>_ Q͑\'5(|ףA>n.g{77u@9?űCL//_k  {ה#Oڼ[.&}Ճ3!Wx);r?Rp:TvTu}m3)A-eeԗ(pv~)QBZD1G3Z[ .lA!r/]1eAiBP&PǭJ}, ƒ80-./nm{lL-a+t> jO;}V}cyD/G dnR6xM0? aqh0ѭŠq$ 2BI_mT9ԱHVx;`p9L0 qTT|-q/Swn, ?? U'!rh7 = D,/;Jױ<LWɡ%Wm&C{yFd'bR2+E'w x:WKy)~ wS 6<f=1bΜVsk5h,& 4W,PEsJ"`;[4r x+xDO]|# s[4Q2 &}q(ɩBBC)./ @Wl[P# wsx+E8P2($ߙ3gKSih6c?II<}V;l.uR-΁꤀s(0&[qPI=YELmu j$mK$A=7\v~ځ"d1jޘ d[>˩rL7_E 7#[( msُH%1Ew` guщ9k>t8O~w ">2(> W23y,Η=$%)Z(b &*|D gCՀ]9L=?^U= y 46g OI[n%WD2/QqyGأ.d˯BD̍)(HwExwGDf+Int:2]g栓R{Lb:dgL;-Df{`D lYd!Kϼ="@ۓ)̓zU"1tO2[vE|dv3 6A/3-hn)I 3wYъ/:a?BxW>0paylnsҢo$[Yh5 ˢu HkSׇ,nUg<8{Wl L=+6 7( eX9Z< b9^'Co|M=y3R>X$ura WuqY%yK-.]Fř7ݗaxKWƟ䭣5aUz&(GLW05ۋvwbM8o)Ttg Ђd+8˖.}!݇hY =u<ށei^YբGz1I4SVD ?>Ok@k>e~~,nk*? $φ<K]O謤V`\8P h{ yMTaK~ u{ !D=EldէFp3R5T̔އf@'=11V:Ջ:øDgb<$*N"X #9'CVvՀO,"Q,"HcncӳH}RȖ T\71N R/j6 ܐ}u@x~1Ց]mr NIR cq(2|d ɹX&W$DF% ^1NNAIDu쀂&wu@6֨2Yc>B?pcY89KGR |a6#VA^˩or_\rxn'8|(gUq l (1Z2As&ן폄Bmo c$*aUR}{2ϾSc3l94(ɳm#=vtRP+N2./4L'Үotι0cɢ&j]OSOQ~, If՘=)U>U)n K,RtpwawwW̐Ay1(sx0)-k={pMu^0 ϩ yc4VrXGKДz94,YӶoP"{LoճRN"4%&kvDW9N$c[u3oB3M[wI|״ 9sC "q(TP,pj&nz[1 GV'kGG(WB‚8#`Gop57\!T @] rK^Hj MiU_1 Vs`| *>E|@Kf;&Aqu*)A9Jy]0&>$SMǽ ŞW/Ga65K{/ӺXJwf/@ӊ8%ΊFVyTwj0%ߋ~x`S{r~V3hW+ZkajڹvBNw\,HlO{oUW^&ݴytwgoz^C2u@ ]}ϕ4ԛ*}>O*7˥TuDa!yo=bP`~ l/X=5 l,ZKY?-PD֪xy]d5r6 `OLS"Z)t3&YJM0;M֑buq5p@_oJXxC M"䮃a(F\*>* }|^Öi>=DNKM=LCt ΊUcxoՍ9s'(6Ni]3/N-D9"X~DX qh\gL:4nX[QiZԁ=cK'uGIő0XTVχnŃik/1-F F>[ҜF$]^7(_8a6Z5gmbBxjtFJg/8͛i_K7kG& /#q >]q~R FђժD;J5P9L(k;@bC(+,ӯ̠sªd)b;t;7(2 ".C*/NT>܃. P[)FtSgo7ETAIEHS#,!1F&9V#<0}LRvS=if.辏'W9MyEjC̘1R=wׅ΅XύgO3;"d\ţ]Ta|f:9e5ުdcˌ3 û^*Y=Qń?:vKI(`&ϓ ``$ 1w1ANh{!|3GCK]c[T0k͑;D>ò.Sۭ;OHH8ZMBMON휬$`rчJe9PӪ MI70mpWșpu6 | gqHV79CmoT<̼5cP\dI3I9lF[6PЩ#l)-c$sAѮw b^uO4 8\JΚz+dd 71(V3ݸܾe 8bgOZݒ4t*'|BI+xuilM>mA}jROlrLLZQ%YxDE?`W”7ЎHmxϭϔ5yPbxtrE}57ީu,1%0Y`tlT/(x뫦T%\ԽCMԺ J@`ѲJmsR;߉G~wpO Л-9J5%&D,oQ SkRڄ6;=!N=)SԲT2X ZB ;Xt* ػi@ۆ *e[]+i7kNG|zaT,,JAYK]YZx)fbS'z%Gf;V穏V.@9́"Yg5n_~] W@>=0i2sc[3P<|pkᘠN }ԐaWE w/lK2WҨPLI0%æt6>|i{Y`"fm&{ZAo.J[vQo3rم]y?Q͌!4D 7MtM;`=EDRbm)l[_yi),vFFb&%)R!xl |Y+@'Hy0At2Ҕ B В) GX]wdݵ Ћ"O^Z3J;&j-+rb( ߷:cXb|ȶN?PRO4aƓ!5] 2FapףuiB)VאgWR#qxI iCJAPI.y]=*!uDmPvq. Nm5-y 1@i%e+\SR/dCAVX[=™9n<%;6TܾBtj©Ñt$ŧ6;曗sgF}i~ɂaf`yvrp@XK3zեR]y tֹ,tshKsMN.2 ٴOv +LLj-ToB$Ƚ y^K]PDe+|_ށ 7TE{}ss0ݎ B*x.FUM{*LrA7/ @,6 4Iap-M%3QTa: I]sLuwMxt=_nB9,8TFY d) $>Eq)?Zoko- CuX׸}g 5 lđu!~L #Q-z(_uY~,C.Ns\>)AJvcNHZ ),3=).n޺{CJd<Ԓp8cCP߀";;j44.&^F;.5[f$4rk*W%7裌YE Lܨ~;&O/)V"E5^5A7EO9Z@BUW JSOJYtd]*]Q mPy}r(jKS%/c \UD(FQ~!.-m"7E#;v(fP{xΩ-i^LhݒDl'Q=*#ѭ%AʂƷVvNFZTD[Ev}wpϔn$xt)C} %h45&X)FK9{Q*KNqL$fT}sotyن(@v((//FA9XiwMvv`&!2+<{V ,a t|GOlMڠ/wgk9~9!E5 UTTA 0FS\H|EIdQ5ܥ4k*(왆2 im&R7aAp%Y!#ME <:V/ؠٮ%~JG)!lKU˅w#˭Q[n\vޫve[+O܏}Fe^u"1 &ZpFJ}=oV%iQRHjⴅP}.yP,m%CB d:G$.n/5%PѠ%7 $KUbcz.참w+*cIMj{ w@h_25S?ޞQPOO0 F1NZ>ozm6JK\Cxs$y[\;ey 㯻} HXU`}~ xj8uwcUӶjISEPv HcUd/y u ->( _V4 xow|n.Prq.dauBOԽ xZwsjdz; P>ٴ3&tߜ~\GmZJq6Wt˚@>]0sTK-F7|3\j|-I1% ~WxQT\TWDw1PaѸCS.ofbXWn@zw=+H i2۳ڌWdz6)%&2Aٌm+8zr=v_-+ߺMsܔ oGO2NR̊{k |2d1 0b|JJy–$i"s{e{=IٺYMk=[ nUZw.$lW"j _ bIϦ~% 4Ul sy 8 BoI i~N$ 7t h;bիDk9Ok2iSw (lF!2WlkB~ѱyʵm9[o~n&4g{$SE^\<<e h,>>ױ vuu9(xR7؋DG { vt`a]dKE\Wf7t1-#{L0Ni8Tmy.hB" lShK\ YKL@ab Iѧ}YXR sq+gzPdK *1!6*qO N LOmuO_bӣM`j [i|bi^L%ֿSpj!5v^ #TXt}DԆ~t|s\H.V WE2 -'s^t3ԅuViv~`gv>~%] `?27:!v^ZMC sP6p꫌BX=q踛gv~L=cGh9DC}K{/} 7AΪ"1ӯщ7B0xUj509b1*Yb35iN7Z2;m@#~sH;r;G8TjQw'lK}ADC^ #o 4asJ!ʎVAGYG+>˗ʚN]˃=ϑ@7Z\P`Z1ZID)xc9abIz?]oB_n;[Ju_O2 :sM7KwYl]HY×xw"b8(PXnqP=YU'_?\d9 ˝[,yq:SiS|@V6G:H531YBM`scݮ.'eҎ80RkUBj)F ^T'p D[}#g_#4_8,@tHM7vY6yvjhgA<a)@?,}a hzOvnO#a^P0".lmĺ`&EY>[ svm!UU_]bȪؑW/qRrG,!SLL/+HXd;o Imo)ɖ'/nC=knPl W'>Pѓ(gf@DD ]kہz ~ ԑWu0-ܟ0 NF&&=DCP50YʦRD>7 3c(lruiC4^~T`93g6[祉EQx@;t\ߵksM0'`9(U'lȒ4rA+(z<3"VU w38u932/#Mv"Ӏ@a$$A@v:Ǡ.l}c׷4Mto &@,ve$N#9tܰ]a ]?&gc9u¢8kVed[I(i p4{~`rX֫_ǧnm0 Ti31qicZ(Hx(=ϨI'3н^ARʾQl0TLu}>ZW{fp`H*ÇLhӺF7i~8~ 2-EЊoR!]DZ:W 9>:yp"gy_ }$gJ)we3U"%*mi[Ekz KMH0?}[M@uݍ瓡C]'YD qm5="¡O30(~vZq YOjeEG4;w%d86JxST|Rа3lZP!"ԣ0~斝A+ k%LAfnF*?|ʠ3jEa'CT_ o\nEE C˨MToFoQ 6LEu"^RǪhyܾOy)2ur5xYng.VS@DfijkfYciȅXf.7%熕-Udk&;om3Sr|hԑdpRW]8û`]aRb1 j5>d'W1_| Iva&;sv`~"&@ F'K-XZ[`ŲMg˾ܡ-h=ڡmԌs]>oPL6{>7)N(9;D$˵vuC^Ld1%QﴋWҰ w7F*(")6OI ƥi b>N8M72H5'vk-=>x13$GVADx`"i35muᅪeN̮R+1gqD<4AYuN|OwC07EzhOcr]HN#69Dk*ƀt?.w~J|9l]lzS8֭hژL?8ma05 ճ2>[\Tf\JT'f^K4YK8ZL$BH)sWLc*RȲ*_3|?|/=1Ό Er!9f "x`zC^<]˃)iET`Argx~rY(r3{KXL"I iRRF0 {fklVɤ]3=O.kby؎+|YfفF>Whr;N4KrXV3 D; E#(Woz$tTy 3ށr=vź,NBl8΄픥{@2y%i[u\%q &ACEƆ!{1)3v^fmZ2?lЏ{ht/Qn.N9`q)blj_{N.5Lz-o0ҷ;.+_MS{pڈvjeh2 |(yR%U>s$bMj@Wm F-& RhˇFz-tΔUuh9+bD./+W~^R0ݔ q@  p|Aqj)_)BANz5J K 4@) O&fJ^ڴPm̨bh_wC! 7֍[6K*`D %_1bT3eUdj'\cٟ'T@|#=?HZ!M ZGz:;8&Ɛ VLE7?hm5e NerC(x?c⌤$Ony!n Us]vWgi1D$E^I.aOq.6~:8: l iyV#ܕtշ4 ȅ||~8d8hEN~ F,_'EF⼈s]kբ ˭jUa `6DW-$ j3Ttk팀*sJ3L܂etXYΣ:ٗ OxzyOvՕ rMH/A%8]U}"M'['% λa')l<50(L ã0w}@y[l`AK>tdbu ?z]7~<5_^۳ѯX-99yK1+WWdL%lm#wxC"yרw7;apk"C0#DC ]>AIRj> 1sE;AVR"BcY; 4ʃJ^\q\$X6Ӵs^g웣io]r΄K`23cZWbTG3Hm:!Wŭ"]Qd,RЉWv#?vӭ.H+M-)४B\Ƞb ٙKJРԓц!ʑt`[qO|5)4U>A`,pwtkxp^ի84|ȷ0zV/"m~xyf!{;IAn4/30SS"#cWAʥ^aTtz4Tnl'(s R#>.x 0\yxWocljGo%cpGT6iW  u `M>|[~! JE෿h8RM4%l2 Jy\U'(Ch$Y Q}7~崸|TD 63g+C%/ȫ6yp;E؈=(0:yt$8~#45Ȅ=_gh,P*xX4p&E3"b+š[x)[@zϚVkG[}zMG=yv'$8\Rl~/k̨z Gs ɻnȑ4kP7aiqri5g??JrXHۚ6-4zdrf=:d#j:\ H'ؔ8iFn,XАkՈ"12t᜞W@f2Ɲ;0B_J DdV#X&a~%PSoz=ـMN@Z@Pq?1-I<#\f`vꁍ0>E Ӣ{DrS'fZOgP?c _N81۷~+LcE-ף c B1FJC% *K jjN,VAY-t2#z'S)C7X3pb1y eT:!)-|0ՕcL,qjS;_5 -CVXAPJnK6(o"@8oFF _Eph?Xfy?_^R˦9~*4@\LMK8k_X)#=XZy=O&fbk݂tCwhKdN1&lNZWk ™!D|TkS֣'M" &pNsіSѩZ0h߸gUJ40(]IItiزP⮑T9t\bmNQry_$hYREz'{j\+2N5` b4NNj +޴Lyd"ٗ$C2бL|`;aȐI1>Lp)8Sm6l%ZǛ_AҮP)^|g"OT!} [7%+]#',:f[SOg\<'ǩE`9CyΒWmdP~Œ%j6 ԑТqGC_q"`~$b ֡ oeڰ4>1ʛnj~ZXQ<\J\!Wd#O ^꤆P3lqD"#{XvJeSP~B)<,G)Ro6t@Y;"v1Ak=1&LAQ[jVR65fIx!rOC{˜7d,%K2A&2@}o[pу}<={,|`ۨdyzP9b}]"w"i&VucO za*V} |-qXP~_CRvczǺ@SSE )"1wL5?nW fĚԀ8B< vMуB2AUQlg3GvFžJ4~ ib6:%jzҴv脼7pܼxy= -Z'<k˚zf2|v+8!QÉ78|D#TרS\c׺5N|5LaS PAˌi¹ÿ #P:!@P{Hڨr,/45QY_h@ 7ahw.|&Reodlkdt<..eNlRPRmUң TH mNgj84>~2}4'@hIb(,<'/*Vc jJѣ$_m}8}Aj:Rr$:~G2ڝ0KfqO8^ aJן; o󟰐#5טza6w)5UˮE˥,LY @Q3 >&9уƆeTyGX qpw->.߇i% RҔzŬ~1JMr t)P_7wrc<8֚h'ZJ[YX`;ty+DAׂUG(2ݣ WBȠ|檓 .w#zkO=5d7*bwfEsjOWLAbs|{ao2yᏵWI\!]1^bmύ3p(ַ]ayjOU;},߭sh&" 0wR; Y&̯ž>#bVlpߍYXu'.2Gc]>of~iXyL97*x ;mv(f3R9}zd{ouxX7}t#fNsbz^G@!d;Q@q$/N|L(c*}?c8 zV\NLudkZ#_y4 g3-oXX8ve쨈a)nH!$].ѩ oʌL읻w# QIv0 tj*›_^9e] cs]ϗ\RH5͘T}+īCHWKg\s}Cb>Ckr։l=2+N }qqNOgGi$WH$\oBȦ8s@$ȶmtL2mRfCxyztЦ});LhI,FO>{J#HXVsx4> zT3SjE=5"ƋB &I7); 6&s* ޫDKK;&4ci9m4JI?7l`-xAtJ 9NV%:jsUO zd^$}Z8~l9`e-.&d2UF!~g9}5>ѫtSZߤ[I>蠒(!Y# ŵv~nFi UR\M  GYJ҇9X}2ՂH])S_|t6LL> ?E|Ov%4l>*Jgx(8zVw rotZaxohMp >{UI*rm~hYvL܊͟0nH8wiOb&9]w|'n,Dswءk"2R睴2W^mW?v%[xq犊mq]:w4|Q‚8)wq=7ZUHlVRoB׭|`GbeZ$Ɍ5[ bOvb)C)hq +(Z0l%viHrmj(ty`ݽЇGz’YX[! J,F79͔sZеVMÜU%CDgN^X<#=8cN 8*^󋚡/KE|KВZ` 8I1O1.B7Q/D=d"mAYy2ݫcXP?8\IH<^ST:P@5ċXVWddj6~,WkYerwbqe$K!!oTFvQP Cc2qE4BG>Ku jLѠ =Mlyt[p8V(s;EHؠ>'0h;d0scRp{"NnV`tO 0^86Jr#X#Ilv|y%"ӡ~m̜֙)n=2_lbgz)Vތd[+2+u`mpjt`"oIF)#Nb0hr1$;Li!ܽNz hwr^ӮCA<55@ZJ{.ăŪ~h7J~e$k[cyJ6u3zk ӤvҢiR|5_'/BaJ'4`w+Z>zO˫?`$31Y2db,`F)!`Q0Z3]NUZ=gU#^M7ڬ=q|A to FO,Kc)۔@ǓrjX)|RYAf+F{Dyt9> ⸟;VRe4` CS^UYXr`))EqYћmNRUN؂uTm6Lş%=bs$@ MtOc%)#;^@a~V?כ-JN>q6ozdӢ 4 m:Ma?^2y \٦b&Ffc2+N5{GW4"s8=F}.Z }kHGf\!$'yL3 ֒m եA3̱FnlAng[\u?t6>10_v)TeUc7H%Z4K(?pcrqhV@dMYUqM2"b`\TϽZu"FɃZ## }YӦ{XuZީ0O8ЃWM~)mݣoXCrR{ е&EștMux෩\Њ(( cGgݧe3<kT}yA/J{5KT Mz:;/iW" (ٔH3p5.|7p:^  <|Z, ^i$~jX.܅ScXR 2S%y[ϧxMmxv߀Hm..<-Byv?K4_MAFQ? 57q1᳤ܿeYU n (jK M3[S+Fq-Ex6COb/6u7N%LbڟaXb XtkeoxMyճAل[MCahGdUX:2?kǵHʬ+e>y{U Ŝ_޲ImGDo+~mIw+ɕ`&ZMvhE:K蔼#xVlY%Yk>1JiƯ1pڅw$Ag,,YEKDtxv]& -\=Kv3D172 uC׀(\BsxGWyI[PA7t]$bmlm_o=Mz_C\^ƤUqMWTz9VG0・vl$?|=u▮xWFf(v)l%@T%x>jCZkNFՇ!}Jڄ66,Wh {UV QJʔDy@qp!K*lHEM [Ɩ/\8Uw PTDژr$ \N@؜~x([fOށ/mڅOP`NpԸFݘ%v:#/`Ϣ7/9l?psVp .9D櫼aws(ղ' ǣ_N%z R)/5)'X u#q{w&w,,]d}dU(2Vdohϝvs _קUG+uN!׫uȽ#7m$eIYQeC$Dn'Nލ|p#)_h=i7] 2i$*a nrݪK_T6껖.M2j 1Hbe)4.Y3YqP٘+dNC$aSnx|r`?4Dyµ$hGFKYt3? J!0:c.X M漄Xs vb(44u4(w4w^;)3 APGנ__0ëRC|fwi"* +:;|?Gf;Nb]_GHr K?P {zd@U*Bk5(#>qr>qWuݰQ+ܸ]=Ax: 5dǶ)%3CIٷQHDc?I8Ȼm #V]u}lBu9V36u`  m9 ]$yÎHe@\6#'a;> #YŻ)j(B>Lw>+>DRA#Q;<!lطYsbRJł IGD\SG͒޵:^3rnI>߾Sb1.%ҙ>5rzmy}}:sG-Ɣ ˬ0xF)i1\4H?~޷tN)xM wLW(,u<怐y`8rE׸EK_|,C~T+3?]-+pVj2&ype<5f6͜]A:,]RI;[8ަA|)D{Y_kX1tKQegetϵ>2ɞ1`hN2;f7JⰘsgX> =]ᤀɪ-ym?-W:Y@ 1`QyLP=:9 -ƗsrE/{.?9`! \Sw~&.5I"g#9V'&m[Aq{ "bX !L`ߎ%aVε= u!MVu˾݀r]_bfLKz2E%Wd.?t쇍} Ҫڼ6xzrNu\9,Q3>7FLs+Fz_GJ|I!:vxwO@W$?Ҟ=1y*Ò?Cqю_UZ=jB`AQCySڷklȐG+FR#?X|QK0IdHA;J'l/e=!HAϫ}Y5 QBQ@ZPcs( u"5FjcǘiQ(MbH;u}ս`~^&~"N3@ )mi3F?vptdw4Eڊocy9[J!}%ghLIJys$ 7 X5rdU;7 oXcpq |S<ՁUE?,6V=_:o&=@ ߺEX8u:Wp(IbmN@g#z鄷H|2XFpoHE!kN2Ror-^_ z淳ڛOI/jYiXlL bYgBb> idJ\5L#WBHvh vwĆM}ߙRtx*hJ)\LOۡY_) +;ىʷeBI7s3zJĪE.Ǔ=t;0tOIM"ߛbO=L<VKlhK+bqfi˖Uv K?,k+SТTē5\[:t-:J:\ ]sk$cv!0)4ȮlOHoh"L iyr7* _WC0EmF?\*wIeSy$f֝j tc#9ofξn_6)(2;sJg2-^4O Vj g_(-4g;洄wŹ>G8{ͺl?ʔD)DPM/MWI@g=CJFH&'wpo T]k=A3$eEP)rOMI'ݾ\|ΞLJɆ΍_"i͙+}zXtǤZaA/u*-$HA .?z^}Sis(-Xr:\wu; 0 [.n;}#l [7I7ZNHl|9\F6IJ/s̭QM: }E!j{&;mcYL6au38Xژ55w_6.~AάT#ˢ82Hyeq5~hU{pJĨ7pNSV "9\|=3Vʹְޱa}5^L-OŸ2y-IL4NA_Q)`A^[ Eo6?iG^ gKx5ldM!+yxY \;{=>]s8E{N@ wx\XH)-B2nDȽf۴'<(:!ϒciUl-$BX{c eu}RE[E t+93 Ku%j ^XH=^g5,CG#*U{8 O C^A97^[JVjm(r}x4㒡zU~9~yhˊ\gyǍD!OvOi/wH/F _re*;yy.ԨPQo@ˀA%;/nu,&0[٭I_˹J؝(^*dFCf7˴JAsĘv OPk% 5W+gqXgGz%͔0eGq3c. KDTw5}$*uQ@ʟxXG^1xsWpPW dt|- }|g| UޅנwՋjw誹FM1YhzVSS㒃ebI.e=[Y=, 33_> 9ݤɏ P39ةAL$"3vMqnetuƌ/kꈡ"gHGxQg^m`k=) #.S[dבϙ#~wY:'N"A5P"ENQjlHkF ֤ch4T:Edi WXOpd]\O}: U[y1+`]5q )Њ"05^c,*>%U=ҬI聭XȝɹiR;Zn ک5KAݱϷ9 P[1t?(ڸ f ɗ< "ةLوoVpa$ikW=&kyH\b "pG^蓼qC ?9PgazZ(ur\c/wJ%&Hg3_(k{2&ۏAiAUWunSAC@#]=V*_v*A?O5:PD>zd*><8AU⓾jExߒن4̣Hs<V4/剌z;YЋD|Aħ1^'\\DrNMcWW/_;C D, ՙ:^LiГyV…åC\vn*2Q: qӯK8&ܔp}ȵ#4"uNgTf^2/\u%Ӓ\J][[UWk0RAAyʤJH,!(#G]J1L<oh Q9{I% ށM-s,Uw_504T7y˦J[pCfQ"xY^?FdZw؏y2%gVWBL|1e*㞉* u|@6ե3Zy mLYkS/U%־P%s,-QOTyԣ{bDz] z͟6 V43utԢ7# [X_ss9rXlK+ p`J~P+N%2[; XE̶麁UHW]9:x7 iG4c2!S4ZR,׹M \řfM0k§KؕhJuRU XN7cvw]׀P{q+ R+>#ѷpOyj_l2gx6,d}thsCu6MnVi_YNr\"htg^ O8l oW oGV 'ɵOI#IDڳ?=LYyDcEH{{&D6b+a'Z`pctO6]1\_f2_#ҏ ->*9b]3 [Kg}ĕ=͇ xfţʁkȌ&2(nl .H}sGp 3e98bH]nدK8p N9yII㟋rctIE^"erR:L7YS7N6V|yv)Y" ;hI)s_Ml<3^Xv;ȱCr| VKqX\j34 HtL VM_؇st]N@R#J=sj2I@e: ~Zl[w>I yxA5o:v$X.1AF쮙M7 60)³x%;l2ywWЛb6HR9;;DOGpJ 'Qg8 +)/[gXU=̪@znNH6~t+fcazY8~fCg \Rē0N6+}˸D#P+ p-hJ))67˖;0e\W-Ā8+߮O(L[l[DB0ܗGv61m' Cb !YKؗNAN\*$\잪C5@0_XS"snnJS3|k2A_'E﹇6*NqGE}O)aw>L9!܆y6]p#|A^,A5r}^aJb $on К 7߂}{szsy4S UYĄ98 1 ň7hS/KU؁Τeo$es6PW&gx7BA*g SDvʡWb#ܑ©͊JIoU3 HVeskӲ$ /Rݬhu1b/Ȭ1첪|J;9$ ծON v}|^ڋ% ݚj{`#}/\Jw{+܍2\H}j/ct;; _ݨGCj G -^rE(lt18ܴi7H2Bb.˟TG?I7(~3ŝNVIEnNۻi5^CH|CM|YXk1հg QP^'*pTl鋎b&-g%!T`ILĔ }XX,DL̩/JD*vlبKa}[$k[rZiGe:ǠK(>kEnuFgWY~j Q ,/ޑmӔcϾ=KX?J~펻;d*փ`TʨBNTNA-Rݡrϯ-,X.0Q_2A Ǝ6ƛku.KFjL!hۧK Qp 3E.s1.QXWk 56hMh)Ǐa@pOcSq8`&-N1)#Q|σe5kuz61)O~k۞ENB/jDlELb_.Je=ΖU,C+ksKh.pfAgEXyuR~:j#4CR6@ to҉4Op{ FE;_UIӑC$y(XåIkmx D{Re:9nw]g1 X+bITNħ_;)8cfnlyh>t7gtfHT1R7>w7x3asFݓZ^8dE[z+&΢j"qwr'FSTv˧g2(VKFFbt[9H?>gyS=Il9[M4{E T^| KԲ+ЇiPs\ *wd`mա+2 ۸TX' Fk-l QXL;utwb~'űqJ 5>>sꄝbH&sslK:[̚YHחcւecVB깖?UXmw L1 r}eQ{^s+ vV4yQzD(#1*Ms/6׶|XdԻ3ֲ3hvf^5vXa8фF!G7.b"Y>pTY+m+QsO|mꗾ4@x+pw~]8fP9<,XY F t0ѺNeR.=wz(jIF?i9D>1r}-Un_g#&k32Ϩd zl"hhʯPOC.d:] G1T K<R1ed %&5CtYoc<*,}5ɯT @w+Od_X|#Ď`L zHl_ڇTtӯŌ+>帝z2}|8;6Qౄ]m ǁ(xl'_rZׂ,=Z{o)&v|g4𲲘yeB XD5s-]hτbXQ4u'tj;k7|D6ܕ#;[;q7̸f$ n# D"PEÂ.u92u|Kp0Vz&(eGyVrƅ۬ K\Y{ Vԓf{bL /hJ6 1_T]U`ܷ8J$Gn1!c2bo7pBiPr -Хҳữ$LhӾC6*Fd˲h3FplT\ťK`D /`{/0Nn.b#&f?/4m{Eȱ9B(H*].t[U^3ڀkZ(< "Hj Q6#mЗLQ4wq?\;ulɺ .v5{, hkuh2i+l,ARۓMo:q砲Rut}5NM0%IjWB r[A ߙSن}a`'! +c&o(v<Σv%!.vZkgbA*0yp>oo9 4>T؜M |>.d9-]~X Wqw+Zj]zǫeU8rG\<(+Q>);:hG;X>o΀9Gn}7gO\ǐ~iA&"Q@^?8Bf(zm9CZo`YAѡjq~,НU܉ 85 MNDVډ̳l |Bdh2+JiQ6[)s*,ZR!ӻ,B~L Wum`h!m-gzj)8k̥s]khPԘ.4a-`"u̽< O>fϠGkбA0 Pш=gផv98yaI 9CĦLݘbB-¥; r JkҨsrgSgfH`J3F8ԩ#w☓&ĨY*}$ td{"dYhkRGZBQt3=C8A6 Īz8\J z+n_KZ#Acn]Z B#<;X>j]!&Ry;rbF$ uЉ_ю4G6338'#3&4/XjYrC'IxRT?xC>E `~{(OL v{Iv;/>6IB;N@V@!LPM0J_%a٧%?4LQ2->`F^{=k$HrL!ȞRtA|=5s%O˅MO=чgL lfꞗoyZk'O`XliDl`0v%7kE- غKyuFz=Si=CFӆ5&:5oWo?SyyN7.ػ$TEъi0gT߭,Ɩ !cŴd5ޭ+Rn|ejJFM;",3WLqMj4bieU mVeL$cxE2`*f,<%9w:˱Nl4OCg_pNlBXxA?;l*ŕN %Y0@pob&x.ċ`ki.>S)u 4!ߩdn?T%Լ& 4܍>#)k$\!M<ņ,{Cm Q{];U>;3O:qGs.JI0*WIXY\ 8fqZwϽ6H4\2a"/ kZ9Q<-A#"cJB6p ApHJXW9U}|O'*[ "0/F5-t;qjO׹F-!Oog.~FS, \p1kFI'v|K w`Dt"~pFA<ۋ|x]kQkf.XCxXMfԳ_4>%>hl11YTAy^_]0I`hNpޯ֍V,ۜԋe(1+g?-+"gN./m?_wɮfț~*~E5|㤠 ^'I=N ,' n߈S`%0~V&L4LZ+L5N62GOftX`>p&ℵs[J<ウhZu9qlg)NeGN#X] qz(MA12*AJB=+rƲthϾi-rZYO>6?E'vU2~<xؚ̂zzBC5м/?jFM}=zP(%rƺ@yk0k|[Y0V9w -rTMuj$%"woŖzZ|9!ϋz}óAi8xQ橚;Rmu%/ж֩%|bw5\dx`X.r.Ke6qd3dnx.sh'ћך .ਖ¨po` {eSYmATߛ3/(tB{~Ah|J9*ʟ`'QQ-xpColC5 , b\gG1y>"@5S-mO$[}ȃpUd_>ݡTSNv5oW-A oo Ckɨ~4 Fuh@npTPFHŸ܎q$j3xǐg[թ U9>o$Gў,zk]#q;j87gu< #v0E^c/65RzK|Z=SCڠSc> sF{֥0o^¨ϊuxUmJCTgPc(+9S&oOGŷVa t︲X,v!)U5q:jx+QStu:Jw*G*U`4Lɹ2?`o\ƽtg Mͻy=o`?;;ҶF0O~N>;1ݔ[$dCG85WBa EoAQ"&BBC pY? %g8?b'vS+cbGZ4e}FzZϯUdhx-uK3s!EC A엥)[ɚaҴu輅G?ʫ\4Q{"ΗDXr]!?uqV2M}ˤfW pM|_"y jx&*L[視kT9[ijrHeMily-98Em?b@B Ӊ=;LÝ&v}2#/MkGi 2.(+j%?46&!uO#4k!|r FH560^2/UsG@Qqq_k+::bUU]Nn(EP7U iIxGX%trnVnϽ*`7hޓt2/Dk0h0vFMewtLhKKj`-̟ akltdQz2113p o"#D}t_jRϾm«.,>y!IPn7!#> /AwڝM"OF5 s@gKܬ M x\F 0M/nTș{YF,?ber$Lۏ M_[EoP\SJ*O+X$YSZőR!;9'U:Knx'{U?jD8fg5HBȿW!D-@uW hP cHBΩu? s_r3$~K`UkdϜ,A((Ѱ1r]*7WǙOoY0]_x8rJDž eN d6)&w9֭5vnNLG:) 7  }\P(} @rt2-AgJvGWi8,+AE1,9# i1^e>b=2 =B2v;36Du5PJEiҀ՜7sp @9 d<&mpf6.n&'/@.g]hZMO͋LuKad<`uX)H%7TYAZzUE|-z2G lik%wKښ|"H(6~8+c,YȐ&,IY",{TWsMhI=tdxq#(jLRs?*l,z wnصwOw;AUvJ]JdD ZJ~ëF[%ԧ7:Ohe}"&2@uGW*D,_S )Ex=) rߥLwޮ)!,4?qmf< &Mit,՞1@NguE.r^o2Z߭E!˩_zR5BbS%M0o;3#-nPTmʍ eZ*p”xEV ߻\h}13+J#hT:|)[_@67=JᾷWwdy܂hLE(R_^osp#D&gI蜓Ǥu"N+ ojdtr_' `QwFeZ\ J{O18`fhOV<~mG;6M ,, eR7j+3`{@`B?O(o] y.sTHUѼ/gCK G[Sba,E:G?nȪV4ae[L#VaJ\FoF+`N2#> *[LmClv`L}s 0;e6зÕq/>^k*JUwJ`fD9⭵S8|[  `>eN{8YwqNߕJiv/Kgs8uG,Rqcb\USu9'ܺG VFgfi]Q/?=tUgQRw` eIV|ؐ ܿrl[ QJW^ 7> i?OH> _mïekDB}+D\Mz^Sk&{ZzE`-g™H#SVipҜҽҵgQ#S`^v?yH.aVRdx+C1P&la z&6-㒭4Gp&( =sɎoeR!*VRO%2.Fvx1N.i˃xu̗ pQbKhIMG{/f(Zrku;H]I*"I.oK(`njcU&3Oz6Dc aVy^K[( .InPBK{-ak;cg_xiܾd݅n6$t/f50BhAR]%}Ts~Diw" WI;pXANEL]E{yF؇dH}Ucp}%R=j^`XOkڬtҰQ}Y+Nl%erOEzgBW-\//rZ<t #,Gm9P&כּegwoAtʸݺz[pJ ݾCf/㋑6R [vcN. IS]GATATKu3͆o]qO<6Ri';P;!;0dC ͞@f9>c,,fɔ0V@뀄5&N,fwb#1qRq3b߹(dKI,>/Q!_rܯD=8w{0z#J4w;}rhjc38qn;K<#ŌF_G]crԵ*)Ž1OMoI֦sQ3Js<%?'uK13e:iwN+eo+EضdG&$i% &NVedȟ !S *LuJ ưi+; sH G-V GI+diUa4omG .Bw+-@KG G/WN;#*w;~77d}k=515 j{) 3ǩunrG'G8Wdgݶ4]=F?v @t9B< W;)/v ζrDOL:y3_mv  gE=&v !3@WvBڻvDf!%4(tx<[C:li&8l[BOcEZ3rTωqV±uIusn}W9_՘,G^*ҞGbž hFPo p' #0' +'az,LT U]ʫChHu6K?St 5'ӣ d#*%l!(maSo9s׽/ޘ ,UP ƬeoN/{XpNtpsم\QDaưeƕ\̞tr&Lof0ʲ䈑i>}'Ʒ"I)|љ\O}|ECVH*(0P F.Q~a (#[;$ )@[b I^x_"iR&HZnCAB,XGC r=)"!Vg#?D˛P¶䠟GBB=8VTӑH݂Dj^ ʻ@>_ *-,ڃ_Q:CvHz|N[F8Ǯ+.kYj !q?rIю3[5'ts-~wm]8jxRh8u%~x8b]!m ]ul?r?֬;ϭ2tNY\C NQS;r-~NDߜɨԽἤM[GNg2IܨZ9%xhd }  C/7_YX| přN޼ (h% :Qj2HČZ@cq)|pZ/izdФq68l f x *>::R í]X6H"p3PQdJ K.S.2=WKBe^H&Nl.F{`m)b=)l3&Z!(#ʼa6иvSʖ"kWz8S>@vA/y'iw}$ 8B>x;Av;K]疾#BzAT֫-LA=gS̯#JllqgSᵾz~2 z(R%tP,*eCxTŇ v>QvZy٢<ڮJڰ; %wҿ~ۑ}m[N6 Dc#1!M/bQ?5 MZӳ&CC]c 韛g^?kσHrk^:̌CaDEV2k`21&o\1`:S1-^@zW]S*BP2f|gx Y%bIxx+VkqtF`H\-lbȓ!W<vXOq9}(mx3޹#zޔ&H;-aC+2LUݡ)\[1NM%~#IcPOX姓SϪUennw 5.(sKlڀF=[5'3nQM$` ,\fsLvf0F+kNٓo bF@g?3յc,Gb)p5YO+ c4k]LtGbw˰._Ob^Asɮ `7=6uCyirP!i_^"e#,y).JPi=0 ؤ'r'xe5ޫ> ܮ`N{m^T<0K)B39Fm\}A.tA~<[vd|#} $Nku3*wZ"Uw಺._Hk^ 1oc:c )ӔM :^tpo~~{mJ쥞Ff\R3HB*eY։"Ҽm5@|,\][ZrJH[ @ZJ$eڢDm_FNLxȳ7򅍳}q{1P9?0yQW2jDfIBŋi [qƂ\*dwX4p&>NE%z{"Zjqw6“e /hl@K ]SivFHlcui~%"iuDk ?Q˕H‘J-̎dCH@?#<^m԰d6/eܺUM]~R  ΈfB2t&8G]-ExĖX\r܊"o95B! C̋4-, ]xԀ>9G11Hb>y3:)d%R1ߪ1:<(3vzHķaoc)Nh)@"VBT1DO940Gq78B]^=#?FIHT[qdz y<}TQ3=&}k5?܌}3m~6] #T%a*/ùAG -CEC.䇓fۼL,^9 x3˂Z 6ӪYBr>x9k_?f[Grf!csH-u- (iB:jE"f."-uHx̘w8*^x<{aQ'KetΑo=;86] =B&tOK7nk>Y$W*l=}cL6!{mT;xq1(i/gvg|R3 \dyO7p˃ZмyMt(xfl9nO 1qږ.N&hK>?`3|1 ?Z'mP.&]j!9]4q3x2 Ҟoܕe3s~4n9!# (>n˾ik{n Դ`_3D>C4璅2'\2[&WCε\w%q&eĺzaU3Mϛ,CL2vcdeAv>S0xҝ*]H9`,VwW suq71cZ=4xUgnh /J `8o G@▔`Ǧ RZWw>d8!V^uf&C+#£6S$DEUÜR#3B_Yb;z*(]͒oԴsG BT<7Fr[Pbk')6Xh!V3PU0$ө0cm>E5F3WSB8\o!몈1e4+ʧtoL]2Н-0U!DA[(ùE\kF^iq 5!1r%P(oT߮D'A NP cT9'c@hFW' K0| Ywj+rx{ՋC((=A*LkڪIl@{g{@=E70k[}&6#fk!,a~OIoX/o!D03"o28lUjH~MYY}^!Pځq9uKh R't mޭ24RFKd^ qWW](gd;%D;6B5n+Cy҇ yG?GT+Д[,I2϶h ey?52+1ÍCRPCp;ValSP,Kӛo3(Zagvψ< z&6)S>q%;[ߊRA9M -W I)2+gF6}Pa Z5:0bU:Õ<^_U˒ge+ fH$}>vMMd0k}دo*`,c`XМ\#{ Eޚ% ^)fygwUJE%1>k\D錶DBOBz!-xSޥk $uZ'VuOr0}c|y U9w==,pwgpZWfnt䣁dcZpdM@D]]r wc|wYH /Pd@v?⩆;PʳQyQ= 5,.+*V˚Y_ 8ָM HK߶kz̲kuK$^%ȰpfET(V%j1eX2>[jxde l bi~c I?.Ln5IE;BA@4Ct,fHKRyҢ` \-J&D p4}9FFyp )ӄ`Yk\ HUBEɖ!6@L% Zfj|Nw1 +E3S= &e]@+*'ͼ^BLi:oqJ>ѡOyNtSL^3N'[E '\ ʃ&>HG6\($GPm _OsZ/din.SHIO,Xߤ}ǏM [fW <O28JiCN8@x<%܀ El#nk&B<)M%/-KKjeV WFwajOQ6ڡrHQsN|] RTG17| Jkߧ~i]4? }!I3a0A'}_D hW-h򀴕f\ĒdnzxZS—8qhcMhA_itl Nbt*!)jU?P*Y@])4_@_GŗN} -\Sڀt{*V0ق IC}RANcX"i^V=Ęn%2Z. K9Y qMm҃1wksLß }+dC߳H{2Ci)#]T쳺nWF'LeZ0+X!7_`$Sa}y@pjƁZAc6 ,6x y`[}7e:pLBJ9$rצ~}gS:7_m~wkZ~K̺̑9+=b/ > }ᄁʦ'k N~? ?Ò=-p¸Zs:]]` )w0L/AwXXkdZ U^ ͑ 3ee<"KXb-iXdշur|Y M\1IV᫚}ho@׀Gt/ły\ӝ RB9M(M#+R򆟵!g^uDuJ j9s}+k φGg/ /~AB6wm,pWYSq[q&ѿHw!љviy Ŕg4XЇmP|x9YJ%W MD? Y[1R _LB 9qȁngSbrmA ʝ"xZHOVhE8!40 ~l2!I4b́鈫К V ?}QW.t_*6dW :;{P/aO}獉&#~EbOoG$wE0I| ijۄodzb@=dc^F{ߐүdN^7ox~XA}_r\[ /k>2VJYRgjcC@<9n^Xxu4t ( 7sUW5Hs@$]{h8.o K+ Li{Q'O|~0K*+CWo7jd?VޟY-Jhd6@q2qQ٥WT(O=5\p1MvD,MxTjqWmNKGL~z Y{;nyіpkj|SU0x )'/&<߾G/=Ucz6C w,S1 6y ʄ v{>cmA }uqxB9qt\ڑߙz.7}\zO.|LNA 7*   &[HwGx5I%k#t+;|-Vx&Wy:d*%,.;&'OH*'%55N;er ˤZaI[y{CX1nΥSn_|l#ҨX!z"}}!<| \de_) @OBh|C®mx>\`n?' ]?jؿPHϨdIX&zA^ (4 mDn;UR@ 7\h;x)֕m6ʴ:ИS!n٪|ٞD1{,MA_@rPRБE3 @ظ 5ۯPWωQmlz_Iw_Yg>M(;0jm)]~xnϐX1mé"S}vm^M"|e, ;Dq?Cc iCFBեoLW-~ V0O qI%vmlͺ5#3!E:<4* T k,(6'*dxCe3^ӒDAb%-b)Y)K=l.4(p +/ݑ_g=W,kR(MKwe(n\i%e<Ф_B ͋v˘`w 4fӃ h`ye{'4t/, 7n=~-\)>/|xpȯn?Ĩ?oc8lkDu\@TO§7-?S.@7 Z˽f3dY]g!n3eOC2_$nkdWv}UlUST থ:-Sq b ,vQ|CvAk)p4E. sQS=g_@rBD#9ڿ0-L n7c-\ 8IJD6s$w27~4!,xH\a s%h8f1_}o;VߜƆ/AD4 Oǃ#YdTULq6$Veu6g9PZꂳB>֒\& 212zq݈1Ut|hn92$,C s-Cb^ o)9fMgT`kJTHD93&ՄȌC=` m2 aê?=e2yfrǼ4BƒwhQX:)񮋹fA@X^c\ѻhWqL6B3P\F _+|o\ ĭdc8dݩ6Gq l їBŚUUŔnV$Ie;N/>"b?|T>k"pfNEGr-k-bܨ{ W ђNZа#&xvS o")n'n'_Rj,K1k1z 2r'<6k*5_G{b4 e%dkm_8δQAThG9S|IaέhW`Y),p-7.wf]m&?9&9ry6g9#gu(cz]q(k#RV鿴A7ѺxXm-C[~hDބH9K36F+p{JԌ҅$U'Qao 2<8-)f^p ouBm8F*n ?(̵~RMORxl ajsaV}FHЂ]-8dzWwiobyNًẂ-{\x 35n[fāYвa83,l옉ɬ]n HyA|lLLg3-Bn־AƏ 9u6Ck:-mMz # :IP{Ȱ†/jC\%b*@rW80l=ki:%yg.CT m/I~wn/`6 \ zS$wF<#Aow #nA:3!oKǨq)M@ />o᪟+ m-jIݨ*5*RG_Aرx)sXI0S7@/`1=m=B|*(ĜW͔`V[bsȏQ.'‘ˁ~z*y? h/YqmX]C/I>Ux]akw;n@Hοxm.E}7uIϾId*GP:>Qm`t|weO72b*d!2Cd&U6P 8$վXu=*B{G(h\(J47r%8XHYl|LLCᢤ-sǓ]\/ђ3,?>/wwكXICecgjp₍3g_:.G_Pc| ۩Jk]6߻SOw Eӱ-\(N#" 1?&3q0L3`{9(:oYtsKL;”ňbāYYKE#ÝRIL֓jpYfĞ™*v|~UD58*UR ~""{fםHckcmMӄy6J/=|n2ز<Y3} 49StzFkb# +ڤ1Ż;j 6jK8P8랊$g?ÍS$,;7 ]1MI;m'f@,sj*+jAl*g|_/ &\A\%5ܦXL>>;V pB3Af $"2j ⪽Uٜ$J֋[Umc$": !O@Y44>?Hq VfuT(ngӳXR`'4GQ{yQO~|oNA6^fvH02P ];sp~s +I_a~<^U԰ ;ˋų]fNqfq cK{rT$+a:|ڃ} k:.Z6,8޷ӯ؁]PCUF^7IAWyR= O.rl0 ;>jM?U LZ;[fGy])y-~n8#cD!alM}[Nf5b2 O%mʱ)f ) <)#ԓ[lpհ{({j'z00_Eu_Vݼ- mI;3nm2lVͭ_dat.o*';Bz? P"Z~侹(IHG1PY0Pz2QUuiDaI[ 2L#EJ&kA߈ iش|[β. 'P6dT /3)ag]S]Ite7m0` TnJo3(:L[-֐dBk/$#d{G"V:;Mg ;S].ƀ S#0 ,#<) vf V0̵3-# j9U2`)~)Y٥o G^xޱ&ߋ-Me*lZG,ڼoXDmA";X.j!.JX CH\[9K{|o(ȥ\vU%挆pj(#!紭e[o u8JI8KF?V8߾ @ L_译$TƦGYU%wڪ5'ߞ=Z#=pKݗ hz9/I7M ?\ZX >FK9P`fAɪ<}œ[ޗzd7=5>=IRm׃P}* ׇǛi #x+:|.~?6NO9ڊY}1x1s5XIW%?C7}fϘ+MzClFT=_ݦc6D`eqK">*Oiaml'{U3򲹧> hiS%kVaC>ŰDu6.ԱstND1p>VX`K?dSO–rUnu21,8$%,Jte)B[κ~͔0S5ͤTuh^fÃLddd2m>^V>/Y}d0s&_>Sw>SxG2+]!?t<G}cS6b(kk|5vV@ KW]'I'/)&w!,ѱIDǽEIX2'Ngy y:%Y~u@f|랈D[UA}n fS9SܳC^DJiۚcዳ]1uF 4icD;iF2bQ5/zθf@ZC$pm5ͫ7WG5oK&/kf zn,}OXmmi T :=%fE4̄{8|; c˃詇 g+?zڑHO(|SZr F}dG" $QLcsR,F *;N11 %WFՎuCGW`cbxhfϓh6WFP8L7cYݯR-?`*քR*.h>m<W1QAGUaH)we$"#+Hg1d [#Qiff]!vLaF{YT3hNimz"xӷ)̼ףk>cYJ[_IEÁt Q9|'dWjC8T,g@:mYuͻwo|璪ӹ'v;`JP^C.L([brJR1 B2wMp)^ZYHշ_E8&c] w.-WH 'G+.QXTEwkq&w:Kr j ٕۖ{{4tj/K 2$IyK??Id]E}*L p phq2b^^xy]Eh#{BfOL!(aYe~ӟƵwfSȮ(Iz_~x"f/kPUܠA WМ5\fWYl%gz L-V_> @h` -օgZ/a0B"PO [|q ѩV$}$?^*1KjP6o>u55':E~G->@<:ם5^n]L餳H1 (GS#lVe ~Q~C|2%[,R\|cxȘ&Ga7"!Ľ\"qT)M`x"^WB~eWs&2n9p]xӗs)qbY1~aJv̈~ˍOVʜWhPz趌r}_&V wQߵ; USc1p)zjny,;uh\dL5b J^*OV]Ov29Op -DZ5S+٠`yZ=WEkϨ(:jێ7!O(\Y<3B I2<PoB ~o&'H!_{P:"o`$rcx90c(j+DDN[qF%)aL)KOw|्fZO>r$_KȢ Oi&pCˡT12"LT[Royj u+CꃻD>Vjj1JVgBR[ <+V-x5$,\Pkp48ZWQ僺\_q сDNJ8dɶ?ovư~o`L̛Q;ƺ^Ius@t(NC - 5cyV ں< qi%D!84{?z=#47~TIj}M:DM_aaf} wKtn=d+Î j$HGQuziaXB؃?M6`abDiTdszєQL1;t*3Xȫ|js͗ϴsG=낂:y;?hײbYiP2ږҀ S.͘}SlDt=֒yYRK!C74 O0,\4v '5Vy13sMA_r ?zqtǦN#shq5b4kgM][kد<"Zodhc翧>o.QT&S_e'{W?8>N@sՊ78+@Veddi(tD J*b1fbʴb^8YJ*dGD4>7&U܆x#vEO*[RH (qo 0.g ީʺl11b"y>Qq_2:\ &³VoM[I.-3y;2?sֹO㩸t=eݨ,0|C9:!1'bF!-bv0,ͲxI_u]uL5[zW쌫Usw_G{}mUlvDW4wNKr+DQ&m6ſ ӚL\zSV]|MVDM}mS $/3(pxCBYLn `5B(eW:| h8D܌}iy(U`;(1'F߯KΰUMW8ر/~RBU铭)QԴw.[Zr m,:dlbz"ch> PGed\j&4Wc`kL 6g^Oo`.rr2Uug}Q0(uc~-Ykkjb* ŽtD%< gF)Rgs˦>L;kCNRVϠӵ@0!ʿ쐟&RϹtX "KGg LB75@D|aƶm1:]4|3A=9p?3>=@`j&XixNTwK~Rhv~ߑ0kݑS_{,ƞ_eDZr:n,("ʟ(!d[(:X PLʡѝX^j묌]"݃?Ԫ|jd<(/v[j!(/k{6 ' \^Gɢ\]szתJk\Ѻ>x)ipXr2S,/]b=QgEPYc޲rj$>*!q`uάqLa3D9ʺ+xyyWLfb<ɹP3˺>lSH C tLmBqgHv)מ|A)} ZshHLZd"6f>Muy))P@vg\9;[iJCAM i#!/8knoǑ4\(.} L^KHsχzYA-äF|QfLR^ _{*jTyFj9$޷UeC1#gH%i`evcVEl7!"|A6/d%^- ~I) #9<xh)/S Օ4 '2O:O?v lެZz%?bӫ0¼>Sh=>"|C \|ʳDU)3d'V.e-]")un֓x^YҥKɡy^'7I!\ 92[&k8Эvȃ r~sn`u_KfP5„ Ґ|5\2gF`OtJ`4ڏInm z=Fչ&nQzv,=]q}Ir[>6uT0BakD&@ǙGtZerWkʧi5NHqYq-UOhoTWz.ԷV؄*Z+IzZn!'ZϟϽ$}eJ<ŠSY#-J>0u}SSVأQf 1dkXVo5BT3{8ۭ 7CtjH70Z Vjf K2,oO'o]a%+T$cƺqಓJdʲ#4~pE׆I%Rp3~kS 5? zq0$'oJGtP&rFM6a=2foN{; JDjb WXۘ* ^;cfFqOmF $ע),&S2ee0A}ZgHgޤDJFSvEIr7PSb=n)kLruaR1`JQ&ކ%+ï/Q⟬tdUnE\~A2뀲.בVK./󜜝{sT*EOobh=*YD9-uKmď2u`g_b~+a4rRDY]EV'P4HwvY.0-jZLQ=I]ں`/t d6m%C8r| 3$XKCJ{ue?{߫T3, >U"1$|,JY"6=9V!(wBd fkXo-B @5Ns\J6 I8ACSq3&^fAI,M0#ѭ.IjFMrV=AEJU $uG]l'7gn۷m9B-[DӞϲk/p-ZFҏǬ[|rʳ=A 宷n싺s;nL6 P"L"y }PN)ڐV=Kd9RW1'{h`I>^wHuH&^5o8BÔ4a # {kEx GS ُe~h{tCo73p\]Y,Qfɽ5~U= rc,Yү.khk2-@ )t+u0DίZ6]~gR_cO)j8ýK%pAbCz|6kq64!oSPǂB!?b:~7f2\d􋔛[c-q;zsH(z]^I9[γ ZXCł0暗!/g[q$mG}s?8hN$R Q*9T.nL@1$BMji '[}4/Z5G' (IQ7 CtLPU$v'IwbE,-#%iP1'4AR(Qt1gl`d |V3ḌK"3  #nv( rb~"K'_>R4Qz9\/GvMwdžp}xYTT4vJV {+*bZsߚU+ŕaLY5z:BJ2cI矆bFquǔ,}s)wK%8 "YHr7Dt?V\z~AEM0da-L~x^}->Hk-[iҢH gg,cz_1$L4Abjwu(Zyja]%.!~sY׭%:%tZsT;ĆAXT:2EHTb?QHÞGSB1z},E=,tޢKR"'S}T5&hfXaЭ T6NpG>S֨OP$q4=&j>]6^o(`j´Ʈ$4D xy=q)8M;)oOGdYvg[}ꜣd)EWl>}8X0Ȑ.)'7uN?= ͷrd?ú 4jȍx yX%n؏:SidMt-AqꔇcLUW߅R/x rkdRFy/lz 6oyw -kE] N*dޯaĉJSF LmqvΘs FQ`\]hIܡnP gBL/mJGqxLa}WX-*;GדYMNpmЦ͌y:uJ|RnE;_3#鞪uҨqlI6AH*o>h^T p. fG!}=?zawZt%SQ9D9'H g'ٚ[[r\Ba$Z Pn˽Ɖ~)<EHYxAѾ>O׃;\,;&E˾jp] iٕu$-V4rH~o/L~#gX_r1g(s_TY9Y:bO3/̍QG֎$G8[Q;r,&kVI>b6s#Dԡ5 ^S4&uN#'*5R jNiG|GUSHQ' Vn0my Q]陮T p+t 6#,xNJczÓ!r GY&I]z((sJ,Q1"v7BX~ڐ? _v7ߥ68[b=xzSdRL"؂ɖ "۱?T5%2;6tb]=mUM!#2e30U>)[&.Q 7׉NV,rT9i+-NNB9L4RF;M~)z^;SCpDQHpQ7gQTUӘ?/uZ >,T(i)~UhA.&Y>Aa5]0coCS]~k^@ȒORHeC-&17FYL\EJO7|m1KS CkƇ0lf T[E:8;*6FH?B$q JoMO[?zƯU×4* V+4YQ֛ҘFBvu~-{P2z݄TeآUwSuI^>b EmUa,C.$ɻt;7I;ܮSjR%JX52mx1J.Zmip⚠*6g΋#8ݫcUl6 ɾӶ1kK@ f>0ey{3/Ka]!=']C*:iR͞iWzƭr%Z5ûqd 'aD7iWL&݂[S2Z&1ci yvCxgդ,#`l<2W9'6\Ee ?z!]{)]En HY ;v ֢ͨ:,!C@ OfKA@< fX0*(nDa(.7Lڃ$C3wJo #;)0wُnGˎd* 7[^V~Y~>܏RyO$ެzFW>pt BRsSn& O^ZK5`IMi&^zWKNcO3B $:u ,쾜O?'0QU2W,[T'eSCBq ` {l8yZrIKLYtS`qfMN 4Lk?"r ;:,7Cwv >Xx+d4y _pu\=Zf<68FAm .T-Yr@nNdeCGO{Ν4zIS!bS]7Z qڨq~q+РEJu؉|xRk Q*j0}{FņCz_/zABU [u!Nw:LVkZ3ҜS◷Y Ḫn`[k2U٨ kLǏ_QkʊN!p3O5=K=MJuԠ[ХWH8݋KQ&L<0ȇkBK:,LF%ZRKL7vCP q,8ᬀȞ4άI>axdjݸi-h|h[)1a+7h8˦;=5~t;MGQ4@Lua>bvmooLyi f6fLh!:q:Zx#1Tm]L eֳgPp.+ NM)lX0Bbų@UmQoj%f!佦Ao݂lE4!6$j0[/LڜGՀ4\.kٴUuL>NcR׿=܈`dIXo r$|r~:oSiZ 8#6l_`qXcG a4L^ǮW6"fX&R o~]j)vCǸ#Hh M#ZȒU{->F Um$;iZ޺-uy.[ʛNfHǮvkTTBK{t^f3@y":5sDWspb<D:5~4O]3^G N9b U SyKRĩ|Z9Cbh7+‚_,G\5EYQP#WzĨܰh]OِbG 7]c:cEI8fO KuݷlAr!@!L9jge 2Pw~2,͢=-(\wn/u;>YWEή%d Dd|?N>R l<Ü;|vҐ|=~=^5B{~?]91) ֏!|e;C"|t3?&D#LK^=]k~TnZ~6@1w3=҈Bhw NT-EDOWXٿZiQ@`tW^žz;F$:f$go2kٗn9*"C.9m: &~~޵ީxQW 9ytQQPEBG~s~=ů]v8 i@fBQZUiʘ6! cAPҳB>S='.^_Y PW3{zWܤz;,4̳ xލu͘iLYYhoMedzxl=jɞ/g%F${|0SZ%x3~v Uք V4t{vF.9Eh3bK=m43hmY 8t~kmX FNh:~:z_:IelS,f&YL7>/ErSn>4 "i6%,k1/]ot*JDUHwТԻUC`'`55+r;N@J&jWwN D\oGfB7Nq0w7+bbά'5=s 3M&g5Kpge:bFehRIƖi픓݊y竸7R a K%.$vtD>,zLj\UevzaSAIJui Z7T8?ZVc7m H%:%w+D+p~9XT{.'1SZ2QN´6=CHp⮻2#-gUǐ~Q0 D9lFXU(y2p UCB$uD}w .(V"h)S$D!1BI9)5piٜ'HT줤g*U]ެczTyF}ZxtfV@"J y[NV*NV ~Xx+1^: Me+ j<ᰬz`l|@u` rQͤ]NFՈM h)j j#As6kCL!N`d?LKDm4v5*_GOr "ZޛAYxX"|"s6}.҄Kp}bB-o[s mIѽ|RHL SZ43W[5#Fݢd_.9_~ΊG_f ?{`,^mKjL~w+zVn7ѮZ%KJOW /5@j:9baV!KG3W]# pJe?1Ra41>%;xG n3EZr_Eښ*(z6 K<>aug_WϡBrKI6ojΔ* R"=XO^hJm5I&8opطQPv#j56e$shا0*v _%رtWps B,!X“OC!1 Vf̿2=5ȍ* 8BgTqd;7xz3# GY20f]Uf@Juž݈)i8(ѯm ta eߵ:j6.[8dW|=_*E#Nk1WE }h|H?˵<W՛kj,5ՆzT"pa03Q@=5QS;{d7~iZ=[/dz<6I,ғ kE΢)" %,z^ 5](ށb?Lӏ%fj`O&SE @$Гq6X~1B9BC]/n͓80ъs%/ &6v|+47_^I۸,bd ["AEw|xp_ЧY&z=.^`&NmM!h^Brq;OwcWO҉,mI8Cښ:nh}rPKL0Hpˑ8UHY.Kmi˴@.)YDa˹)[P(mb(\E ckvMrN qs{=Ycv967`j/N׋#y EZtE k`IgYn/mABS4vǂ^iF蓷swo 4b}OkeMM@ )4ي^(R-<7Q6cضY3˒ QeAN{U 5>` cM|&2fV[謪 1, o'Ëxqg+&TjVD9ډ E1(|~Otw6ִV)\/R7uv=8D`)RSh6ig! I *`9|IJ 0xwiכ'&3GpDg%HrR|ݾ5c_k f?Wܹ dq>/"gA$Ίpr.ish{nj\PC0]Lł ܞwgͯ~[+qze=υ]ɩȂIꊿR9W[Mu4⦼TWDPLy3@?^w^$WG5Rʱg}F*%hov {'. GȤT a-{| 8-|^.E"@_Lk$ie s~7t#8?INW5]S|".T Qq$Fmȴ33؊/11[zH 4_µ^DC60>O.[4yyIFF-gYf]&y IDZ+/7zSwJ}D639tEhXwU)&2tǁY=TQ X+>ϓQΛFmU/mdhI* fXȡ Lj^TdhKC)G&C$ѕ^B,K]3!|w{I=%s裦ȶlɕoڕ= >ϧԋg}zG-΢P(F! zV;!O`XO}h 2v`6p?|HP?cIVrOr+ōTza,з} r8>@qPEyΠ۟fC8 &]׾.^Ab[0t9]jOӎrF[ZG=`N (Q0čȮOjq2qL~|-=Sn;!Ƴ3`"-XQM :Z ,JOjUl{bxkG5so'!ge7K>|8BY , [{ْe~b'f18@OKQVlRZe`H%O*jU\ci?\tDmSu!ƻ0{༹t8'dE 7+CwUCKNPlO8(yDf~IMƌpLՈ08)-]ctyct}'US(PW Yc.c58+XZ5ުd92>$ZkIF{E5N0rN&3,ng@!n4psrHQAh깟[悘i̡͓l73hEreK ꊫ~E A tGD)T3pd&-TE2 ORgZ| 8[}@V5q2PO_]M1^%)^Z:y,KC &۞yJbu$eiJZx՗Bwlk7K7s {^ .8Y"G5U)ucwp<*Qjd9m+VE O|PDynE{HRfŦ 8;L 'C}&HxJfqi`nu=;B/`ްM/%+U坡 a9j}(8c @\L3 ,E heP#]#:={ni_s9&Y(o-\A S7]Ki{ΓuA[4]&m 'ӇàKA5VƐd~[z,8x3f SEpul,wx,>]+P tV}* mvr0č&bfppPpC:'TL GWD4ϔvJZ6`6zUBlcZAL!A]t m@ouƯަ/@^² 6K8X`~-fo1UND _;oV YѨ2@BMaKN_+7cKEJWt1u ^*WibM,ӎdf2% ,8]h]X|gJDzF r4ҘBƁԨ< _{a_J̖@x&Ewp]tݿ_򱅟 }aozw|D3r +˛*Toח$Sa5DzVkilʄdBm٬T%\ZG)u&i)9a=[%fGw{S&/c ,M2}bNXH2r^03Shi=IWWzݝ5rCĐAIGnj_ahr*rO/ins1I8;Mrp,.4P+Ņ9Dow(HwK~$,PtI9hJLP*IݰE~Zxk uzF.1Ν\>^sN2GUIۿg:ӛOmLMS4%~`QB#CRR֧N as@ϪR|5̽Ģ&*kt 3Qim߫']m5: @ h ;s}(|(HkIA*J"xA,A, c(?FMW9C?s,#ƈX3l;EQ@d2BE-1 eRS)5 7/B;Ch[d>.x DPP_(I-t<ςy$1B 5MzO87wN2ryhinK$$=R]=s _4BM3HB2/CEIFS!\#\[>uH_5"M^S`-}5d#Y=U/I]@'c[f45Oi$ny0yI*9l T-y>:HJ'h~d8~wmA6xA~qAz %Tۇ5Q+@:/ )${)̜YDѯʥ$ݿww(@`8 @2:p^Flw1o"$l\6HX"m!ʚZMx-{5ϋ &hz[Z bp=z-`REs/E42=*඘ lZ`Qְ#*a'qc ٶQ_6HjP%a$p$ 8ʯ^v`\z(ɾ=x]Q/zV:djA/}KM LO PkɨF oyW(|gg30' & 00 Q3Gj\`R)H 6P~MNƞ.s79ْ[]o3%ŚP($3پU{ 7XͻL~|m.Lօ`nĂ&Q;<USmB$|b(0!'P lW}ؓH7%>z-r~߃"wu2KOiV hov)$ Pٓ 3 S}4X $L0ȇ*`!*S:g3ҒjSS:]/ͅ+K9:"UÙ؝SdKe33&sQ' ׂ7~ wĶ8F /~ ,|2r? 0׾*9/0fu!c(Jp2aVG8+iz5~VK$r@kڒpt[񣟊e) LΞ^"MGk}ͅ"[77@_ kIӿ@8,w-v60slSnCkܨV( A `އm<׬2tn82A;wPzp8„--K8dd0)xƲwTA~;d^a9M\YkM2t&O,>,COEM~*1eΫh:O}ȟ?dOp8h0?۵ (_] wv]HuJdK)Xnc̋"vN3|܌)ļF2'ѡlJg=OFR!K) 2B4.,֐.*K;(1Iظz* qCE0)dyASjYӘRNTLJgYi~1Wcl譹(e!^s8b:kǫoX7= ;vv 66i\Ȅ bJKܫ3( 68F)V+f\K7j}b-L6vxtII/K't.wɕ6QiT|`M.`M3-XIrxxs_%* J#W{MwMpa\W8|.T ux,G<~oA̔O</U]{t|Ni|9#VjQw-Z֩ROԧ !Ur~`OX>Krx>2V#{͢e!\Ύc`,ݹ?iEI\% yAJ)l.jsL[1(i[ad( u53q{ör?>yUCƏYs UުJDS/mS\Seyu©eB)hTTaǧ$6>zˋtO)ˠpFFVsHf ]8KC Zk"ؒu{*53S0Ju&F!y7 }H^XOJ]"]Qٛh?mY~LJ* LZvm]D3q䄾u`0W^6$~uEø؊Lp:$6 k}w*cI0YiLV,UXSdUȿ&h؁dCO8jOl̇74wS =V]5 L$JZ_6U@u :֯epCZ:?nkO"~(L@rXሰT/wM|`9wݖIݓLt77FI-\ay4!X×_Bֺyi=D=mP]uĠ#M^< 35ݦ nJP%Fr]& [CQMma/0.kͷAf&gp-&S1p 421=Ql!iCŶ*16Ugb)^ԭZ$LG}. ,:uj-%7/l@^\fx?Wnvv{&s‡#<1^.+a`Cfl27%5u k6 3/4E[0B}P*/5}7W ڃP%1]Ϣ3U8VtTS}Na7)4![- p0t߷ "zۧ0pT_uWlņuQXWGuܺŒymyCn44 |&_TnkW-՗K~f+SrI0rU?i0pwTK|){-ɏi T,cL1x/GEl’~/=3jf^1袪')Ix : B{i \pH$5IeTܒNWPLDDj1]+8Q''d0OiNv] VbJOϝiP ZG}o-O^ɀ!?|SRu%p@3eT[֊: Ȋ6(RS_ۦn^#[Yx̤D\#^ P]!pP5)%4^7}5Ql9D9P^=cpy{aAh+K~zLJ^=>|/d2cd9X6:zed x*>lxX<W#a6fWxBҒiHXz\O4"W~PMb[Mj%V8  vL0X#o}?ʕ Қ:| ̲o,`m|am[m@AQ 8K<(5QBδ7 jS&F"jlG% d%Sc[ $dEDLW6)b؜QK] B"ciN%yXad\a?9?eSw1^[jnߢ+XѢSXy#@@8ٱ[3]Z%H=&WR{,rrj#@}cm)*y)ǝDv7UZ0~4:.҂|ijN} Z߲$2pS{O4wHmg+lt,/&JWElM⌝:8W83 Tݿ9ATl^ӽ}H^ ͞sTlT_6:MR #F-"Q@šs h›4wl:t]e)tG[c";n3xT Ծ$MI Z`I8 äv c'dxpp{H@,CqF\.(o9갣{z1aOgҀs[}(\JSmB=i 9wp9kFr(a`#{7 u!^c^N.l ]S Ki⦔yhkOr!!zNWx;E@ĩpCHnqEeCQ'i~'0@.DzX+ HM6t El)I]#jj=m񭐧u5k$0FJ)dP'z9II%Z*kn<|s0g y_Hf`Wǫ])@|TJMR^ 2:ETuBc=1i4,ծGC>X RU"i"%/4'3gؚSԟVWwEd߯ 8j=#Z 9PyCmԷAz]Jؒo=ȴ=nh+`A~,HQ‡Lݎ]G6q .cIdͯ:6ŪJCWs6:!L_ c~SZ-Bwl0L\4| [j=Lhl<8SؓDKZ>[8 5A(`q󽂴_͢H<lv}l~w=5LTkȺw4/یj [ ̞e~M)ڬۮdrʽrt[g3,ԳK6t*)^(~gilTxTǕVt*}eu8G/BLyJg-#Bֺ\{1h ^U:,턡Ա uX MΪaз+5R|;xȊwS0~&}EΨBe@7륽rK{uXz=m@oCDB;K&gzo 59ݤo|2 m80Pn*ef3mRR qCo#Bg_vJ8fYm'p~" T$aPc~ Lc@2{acxG(i90'k:ZUZ=EdVX􂖠ɂ/sl73/۲aĉlmI٣r)(ML<7lI®TuVxbA$eCn+ [Çȯtg:D&俵[6xP+O;AbiH"ыG2]MN>9V V:8?b)UNٌ$=8$0__\4/dz"9lIib-) s|70l_G\7R:cF/r.=?c |CەuN3. R;JyJsI 5=jb:0Jt&pGs!!,ܪ\f㻀")}R=Gg \$p[trjX*o +dUXo z~VD˓T`ɞ̾r3t**kE{oP3͓Bl5աP'te/[Juo IJx̗͡Cwn@&CDcJF׬:P{(4q#ˡ!<0_@ |I!X Dj qKbd7@?5:^6DiKp0' Gs`4{ 4f—tW nX3ʆ`u7VEAfI8ZZ8ku jS  Au d]d(%ZiUxLsЃ&P0-m慚_͞k^u۸| H׸J~^QT.߮]#^h @1=o|z0Qu_k&t=0'(  ~-0涎ähgIB~큖m >Ͽ9=@8#T+DI ] y \U<3O+.|r/ %#(?D^j>bd7W/*x+g7"ֶ ^Տcfvwb<haƠcWYEw="l)&]m76,XYGOz{6be׫bTsRFmD8lYƩox%./a:'§ž 1yT7%oIsb-n@@@LHaE[#,Qgr347 tGp#jzNxx}hm$p)[ ,%ӨE{c y$eٵk+@Дz`},W9Aڲ۔( +7Ñyab+9r,G۠ _O0Z%)-)(1+|WrE[A #{BZq6_ nu ـ`q#_j>q=`όN\ZُZ ;$"[o`h^b99"ANVc!75Ú Zt@|'Bj3Qw#5UW% O U[u wU `\H͑~r=UBm"RJ(c4 5iv3i2-)@ic3=il#>T!6(mw *G lX`+I{ z2D3 ?ix4ĻjH>Y=l țC}d6.*G$]t;JNMrvFM@7ڜ^ey*/y2zrT./S6&+ ӽ4"( =?+WyKjLaEu Óf>rP]R_ʷ'W|G|US `Sg Z\wy[@];ɥ&N> io0"Awͮ[5%OzlB޺PG.+EL )QMM˽ZM AĤFa ހ]#%BPjS30e /V?J5K7{% 8{*A5Qwen o0\,BKT;y,ف60~l@# [~ ĒKiA84 9]4˶]e.:v>,rj2\EjՒ+.5W FS;W4"'цSU25Y+B]ɸӱNa7Cc4CSr'~vjJdJ&ʌ/;鞂nMA&+ioS$hC驋tE Tܾ7 -Cl\PoH_ :~fd"~"fBr S(K*B9IeDϣP O jH\_V ]XO7u/+cPuJ$Cye`kU@'zZaJx@gψˎR_hfj? *:ƿ9 J]99ueek6a($YpšezQVT w K(t:| 3evsFE5R70`cåG_P!R:J~xJ-q= 2?Oa.ߌ& Z9ГayiiapM䏎)7ꞍdZ~Ř7Ih &ޯikK;:&"eq(+2Mʶj~ vPĭ)\ЪtGnuJLC$ܞܬG^p7."΢9 7AU~qD[BS"~ުyj> 1Un%~YvJj#v3kwK[swZ3ɰ 6Yp"GOA>vڅXܺ#p3e?#=SՔoˌdã}}\w)dpKXل '1YUU|F6Rޒ`:X<^8ơ1#;sbI>HTNw;=H ׎I?plM P <:jAԴY%hROe q^(ܖ o#ɂ>m6x]8[W˚s¯*]߮)H hj:0MM9b/'@W "5li=YBM:; UHp 骒#p!Mۛ;ߛGG/bs{. c2ZxD߅L z41/ء'CiOY׽*Ձހ*>+UUΏ[Skߑ_Yx҂dH KӵʕmDAvQ^M$KQ4Nz>OX1Yx55q=s/_c=fnp*Td S'n~yEgz*蘨}G ME[ ~cohmjܒA3u*$lUCj,YNwBiCeXCGe:r3S^GUzp0]14ytbⱿquXLN%_:[P_m}}Fk/OŠC՜.Ϋx]O,Az AV~İTK$. 8^2oֆ1r(7NnN8YX-(")J; `AQ1n4Mv[hE}$+,Q1فq>o@ 4RsjmZ:MH#%@sXVB"݇L16@˄%r{ߏY}%:CR!N\|D`jr\d "$|k"&?z|@){j"Inam JU|35se*$e=IZE3'\ 6uأ5=Ƹ|l;S<޶m[N?}c'(Ia◟UOT}.>?_]ખt5wHB\ ŠwOQiLjJS'DR]g_<0x*n*/[" }jѰe.A鸴hme6A#}% 3ҫa 7clC ڵ' (NN*h.>1+C^hɊgKO}ɵ|&2eيh)xځu[ :1G!O3HŅ#rDrĻꅚ/M#SSEK'cC<:nBirck$5TD3eUkfQwA) Xȓ`|]o(-R>ZТ" rPU淕TpI/IX=aPn Ûe]8i0~} 5brgn  1g g=ܶ(nyZpTU tCc̅q"4(Pz?Ee{S d\ി6D-" ҷUYfF߮d\Ӛ:joC〈z߆w_qPv7BO50.oJkRƇ;:yqhsU7P]Qmtrݱsnu!gձ^Y/g= 5O w]fۥ@^&\ބ$ w}vfQ{B*BiT6r7'MNLޭ:k{[?J7~$,5?-.꒮߀ (Qp @ I͢A?y%+O <ג/<1ƺTu\n"SɏޠOKJS}_'V/Xxa]cl |zxŹ )Ã0l2"DT1Z#_(@# V׳,X8;zQ T=8MZ# hP}|\:,`D2Zh pXQØB^׸E郰 4p+ V&'7UgKa?>KarDİn ŌS[S:\< _fW8~0|z{N)Ϥ31,q%EtVݒ5w{?Ly^>2D|kG^c<}{N[Yd!BF7r?U30~:WU%,l(g>r754ᐭ•ww=*&JSIr;7 ?!1Ǝ%xI%P$yQ[0sAt\1??) PzCP3~RG2e+~v?|N,v: ;!m[*6[č'&Pg$҇c)fSe}l[ZTߦp V {ti1DXTԏGM?3~FyAsab?gnP6[f\(:>3؋zxb(x m:$JV7pÄ\y0GXڔ^kU̙~_I@xo5jgnlHgIw9OBd`apQSJ?SLU[+]X ĔE /D,_=֩޾F8&J#Kp%MZw* DjoIoݯ-cQݶ9.5:9'd;u!gNcS>ɝqn7S~%Y I\r[5izlhڏ2rVd.a1􂐗J bزC>ShIu@fY>n 8˚ "a3Dg%x %)GpN k$H^`Ixa!.3Ta۴OƉ6+"E0>K˰3'ahŤ3RQE<[֢1B6/_QӸBjjqۄO$fT'ݗz31гyʌ:}芺T2UsL˩ ʎS^~<8=^F[Kr{̣[10Բ}%رN[ͭzXݒ\WP*0#K jr*y*4|a7)),qە}6"GgR@ (LAM._,twv `D ԭsJn5TD}`?'t9{ۣ1%T:KN(a85U5,r\CAwIE[9]}Du!Kx`DҋFzIh^c=욙Va;SrZߣ^ gQBfLlAUzthـDC6wL:UE|o 61%BEuAJzW;RYf$v/gR[,+".س[#[7J\iEڒt՘<ːiUȾ8alJ s%yLLoǰQ<)ʟ&r lA9E4"/h/LPjs&7x RZ8hjaggyW5>%.L ڄ ~8&fwJ wlF64ﵱC:% 7025֎H{Ba E;tawAájaC<<`X-Q@,dS̫?E]~OMe`T.riwqa9clM RޜZmk՘;h4Hޞ8_g%[c>eW;왪S$*҅$rHs\B3^>b䵹ڕ'.h8G:7s݈Ö;{yߎjZ$Br7WsVRhI-]Q}>)cA!L+eH2$Nk3b1A)sjeQO `:z?:ezlݶQCE*rKα %ߙ'[$7 m5F^xGisv]jl({WtKPH!EߩNl_FNvS;BO;kc,a),,FqqhjN49Sql- ( {%*B%^/< G#oˆ@Jo7#wA@7f`ɭ;1.メSJ/qar]/k<`bs ڶyA$+%< ]. b85I $B,|T`XUb$/IFp-Xvid:~B3fzRoiN\#Fb8 Mh,j%bmN4AάT|a$L~r-Q # $HB#f/{րRjl-ޞAFcoz;YCp#i{鼷\dVBdo)p&A {) %IыxZ=P3; a+T8Us3%ˡٝ 1o'wHU=`<.td\*h{3"FvE;zexf߳ _[CdѾ%˿jU%j<9,%d7$67w7wY0%=6U rd7X/D/ϓE&MM䣣>6sw'I2(Y j,s} 4""3!8T TCZkU4/{ OqJ3y`yr+皊:YsAޱHz?XpF cʠ{ 24yM1{j`C:q,~[RD\c;xý(N raG*"L;9U) - S^ZlC^IۂlYFw?2xu#ざuU[+0@8RL\pD!?,㝯6ߎD^텂gCGYB22VcO4 _za wcX-1X2?W |eW,S0 UNᶗO.`P N02}dTF׈U fI52/W,gS!iӾrFQjُ-F%*M b%MO6EHѠNFI8'd)$M#=v]GW >Wq^lwE'AQs\N/U'd- od8%0' 4xrTi vpܘ1$Xyg'[[눿65 uKŪpDyX %hY"7xR@ BW3qhm&ffV)lV+ Lbi3TA Z+> (U7}磑+ɍ-P<# L-IY;KJ\n: rPQER ):{8Lm'KݫSџcp.:FW3MH/-g3M}8g~=|_[$ KBG~b>HPMmt,15EC1wq!a^[m CoVUR\h&ϋ Ǔ`j#~@M;N$/@Ä%79)^\W[%CTUIwa'lgQTpsJslg 8{Paa{r2P{}MWcyKg .'n/ei-Ii&egSl,G<]E)C%1/h}=3@*4AW3])嚂_;k~9vw X5t R!¨!*81!!|^ߘs{j.XnwEŪ>1n)[=+y: ?DƳwیEeĐ=>9{y,R#34a^ך'q'"*<ՊB HFQ¼$ p)FOMֱ+HWd& >0~V<ꊓ540vAGIr;ota):.`I9[ nn-"Ȼr=av-Di*H -hd&/9Y4&Jw2i89 'Si1yQt4yW?l_]{݌N_`3PSxdvmCq8#cS=<'!nZhBY\_xBz=S.3$_Bi5GE._WvhLOm'!'.߳#Xb=ZYmF8Hg++R8:h}:Q'1MMWDm1LSydyf}wMCvoiRcj]jB_?mBa) C}D8"؆-{ehqe;Y}+ .qVʺű/ u {)Ƽ0d@Qj2S7"Glu͉8bY'V4lׁ7 9;N]t#heO"X d"U]Ĝ,V]"\w 0vsPYxD-ޡ$k2m2޸/W,n%- : pdm+=af소?">YM.H=zC:/cQDS.7jvିO&2\x[:M[mCئ\`*0S,Qbf@t^-i Kd3~;Hvy1 2>j]JbqQ=DYAj:xU5*!Pt*1%|ŋu0ɷ(/8ZaEєG첅+*/u|>4˝qNj4Zx,̻A.sZE00m!Vg"E/_qOopܚ=a+mV՜mq"C z 7AQ5M`o~3&+YcXmQɸWDhϦ-|u;0!6FyHfKK K&,Xvqʷ&TJ?BAנH+񉹀41Ȍ3(6zRT;5 c;̵q1q!zdTFVrkePc>Xi k,ĩ T}>C=wii* kRLtwm>x׼̽xcߏfXui :LXz#^&^Z 72Vİk*4@G9Yu1Eռ7m‘y#T傻hǼ0̇kġ&S|rdW}cJqQh |-^ODȿ%}+X*p0 Kk)1r穴=VUuY> SZkcѻ@?9Ҷ轻PIY{Hg_"Ig?v0bk)k[R"2NySV&t򠭩c{*c-Lz܍`åEaWzAbI-,q.+}QE4FuVtIPHiB7ðtӾO6bs{wt``1d#QnL-NGE83t70|~Bg/vY%ȬpZOazյ!,oCrXƏg3h r|x3r4K* 7. ^*cP B2FHJ}kyj1\z6Or]R'VT,+kC߮}X4ʵ=y+zVʀ|)Fܛ 0N |qN-c}9a1˗I|FQuxߙ {v@|OX\{*J( ^ӵ [.g({W14c”7o 8*G$;A ̍ٹ ĔveN } Js[ q<&?ebq~̷aym!)G'uWǫdܭ^>Wu*u!3@UFn_W>T+MT$=V3~`8O䀦"?e'x؂ᬰS2{0Tr].% {{or8Sr|>wk.1n}U &A蘌6_meL6y/bd5ϣԺϷ~Fd-̿ziᐈ[?y~J1~Ē[] -|l$] =BL /nӥez${{Yo4xƓ0E mjF./n|\+ވ1g 1ԪKBH}~Kb ?_!QX=Pd_옶xT7b\ۭǿ i'!K<}\q]ZUҜx]{v ,aߏn3 %؋!'a+ӌ׬7Akg(#m*W1aM-q6j x!ػ?^2ItW3Ҏԩ4Mx\1˝Y ' e?]3;,+#,2 rJ 6 rooh}[cR!'~=AO2ғy+i1{knJG4ܑ3- {'r9CȹuѼCFLփq{K %[Cu+1ϹDwFf>- ./S ҡeYiWWͧ,Jb|y#^ 9-bjFҐ+1c*oEH!/;ړ(~9ӏb"2E6xսs[Z% >2;~0aqU;vj`϶Yj;YOFM 2buWߛ<''!fm\3F&VHa) e>dݾO PT|PExCu~P}lU:^IMf2?JHDiĤځfb-@WPlUvew1q #TI>˭u@mGD%oC=ƺWowJsTM2`ny/NJ8`NX eߏ32}Hg_}/P K]n|3%ޏ+V{e59R> >9zhi46R4V> 8HO8!j 0%7QeCĽ]rT h!W~`Lmن:%`A]Lts5xUA Yh_k^8   G$aFl?N`Y_m *Vl#G)f vOWr>Ó>6&qm):]FUcTDvS׸X~|- תѬ~.'p6_!1(HX!7ڇNhp,c~ֿ&=#[^ QRw!tN7ȄS@*;̽JƯ@adwY~8 2f2)&龸>^Q_ ϝO[ʿeyO1zj+"@B2EL,r iۧڼVI h0\C,; .H¤0:NM(ǯ$a&%]^Vp iq ƘD,# ,PE<6U6xŲ |0wd#M!wkG"0N93Iۍnw,K Hf@NS`qj"Ȼ| ʧ_yQVȌQlFpKj 1Wl0٨92bTd} ް`ӝ3$_y8iȱ'^LZ?[x-EVWeUdM^3mW5t޳i$4TslR_KGRPp0b%JcfAMkDf9NGAnS.'žG(EUfQ<;x&7G>Nj$ˮLJQXP0ҥkG7DD }.>)4ͣɕ.pB*%Ru6gÁ*֬NsDCFC_~E(r"4ޕpJȱ -uu~c!I) C2 &߭O,+d:(Ls@sĿܤ|<@A\fyRū@㦎2}ߑƓ;u^vGvpg9 =l2Y֚Xg]. M"Wޑ$=gYP{CttW=Y}aj Oe*s<,4ckchPC84H>05HatCv 9|s"lz&6/5"^(YS4ඩjOw/phӍ)F}O2rPS&nS^$2{C`2fU'~>r/o H& 3+o1SOmoaFg-Io#_O8PGoII$?N  D.O#/9咽9(/j9p0pʢ1x^&^JT*⻀@#k?!i&Cد{ f] Tp|*+/dъ|Sp|LAhQI2~_/j$THBrJUMgiE2FB!+-C&[\r"oa B H!6Qa'\4̹Fq%_&tN;aP[gW>dSӢhu q?ONwTB?ohP[ WzS$Q:Y0B vWjzewewYe % xL͈Q\dH[(@>hfRMݳH|9Z* |fnˋt|WYo=O5(*CѨwrҟ」 +;]XP젵GwK-1 2yjtʿZXqY4.K%f}$;ΒLPbfqXWCpT5 ~V>{+q?S`4oGY>Ĵ?ȧ  Eb %TOFq#>q] By7ݳʥ45yhV,mεr Udij@tNOR'v]wȿ.5yfVLea{h,NW [ԣ1;CkHL--Zg?[%jd I9ýe/xzPr1C"lCd Ά" wHx>Z!*މvN2`<%tfڬ0(]OX?Bp— [[+1<\ٱj|q),r'e  -ZfxRP#*3}(hbU,4CE؆&!G${Tr1p~"bMb"=MDZ/ g^]j9 X?[MԻu@C_Ǩ ؀6p(@VxdJsʮk'!I 9}ӚS-Y!_Py_=2Qa!`ƬmbsÝ=fxPm#j]".?ѹJgqd-B~Å\1by^fD^WLg j1gH L-c-WnS 6b[02p {oF]ػ~N2e8KsCN[FOA{ 1[rIC"TاiSը$pp.zҚSf'FSOEj!򣫮Az.7]G ^êJ<'B58bRLj˔_%|,d5;=?jZ5ͫ{8טc7t! zs0 I\zc23:W7&>$Hrp`] P-oGР~OY֓sl?#A..'.*!ͳ|98Hbtw}u=UW4Gfns'1YS&⑚ɬcҞUiT7xAFsM7)򸫁 Jz.|C #r;UYZ<*A$Lg96tU18F6띳 ٍFwW#IMkr̟Bi=4~2;|N2Uȍ Z| Y1g@o M]06IK inwl<>{o'问M{!Qg 0m Y%/ 8(dLS-!Ohe"nI\eV*xQ }fKU4qyRDmUGH1W[W[,h| }ſ*NƪaKPzeRPqY8 M *N,hy8Ba` DOwQ#ifOQK"ҳ_9 F9aBlPl[Punʠ1թl'5`[F3 s s- @cC%fgF3>JU.[(%`,jG1۾Lc1Ftbmȥ*ˉ"bq>Ɣ>\Gc&^1w"zpHVJ&6`roeicL_ϥ 1IBUV 舭qHe_Rh|/}aO$ A㢑m>!F9sTbR${b̞a15i sk7pfһAF]<|ѥ}BGB}bⷈj}{Òx${CovSiuزm3r P$4bߵ U3i&vʡC ŷFpN\U_Hy^rU塅Ҷl Q- ^"] ]*?$0)bd_v.+^'_: <27F̵:23\`sG¦e eS:7NܜqY=}/wM|m'mZn!/ӍZ̆PSpRBHR- _X}:y4ʠuU.4`5Z$p6?SwWD_4pJ‘~JQX@]n 4uSk$ Mn6A7uF(7dŒA$H-w6 0=Zm|Zx<4e'ƺLbodO+~83o0 o,j#4$-yF!% ŷ_ -w]!xNW>D~NĞHv`Ԋ5 <ĨbMxW)S *rMK936K.%G%~/JSp8ED}8[i@iZzӬ»E{YŴ϶J=s0Cc5/^޻z^Tw(Dw5֝TV 3YUT2 ԐI7 UϚ/v57BcU{L^ ]!g@GIt9,,V=eg>3gܹ)2ajRۮj#P8&B|jl1ao W52Q=G#}SP]d*A#e*[Ά}$پoEu,0N?-T}۟}oeERW\UҖդV$]M).d|k@O&ذ[`R#:oQBtWw? . Bd^1ԸχvEgζGnFiўP{ uP ~lBn*6)4M/W7!3/*=y ފ6h_'^1e]sKXT?&>\]~AmY$xJ`ek5YnK80t0m\˱WŀB/Uy%VFc A sWV.ǕK K]kt /-+72%B<܉d"8`S*kERu- k>q6Yga^y7/Mn\!(@.dx_\K5,) LYDIsS6xEvh#tC$kJlsѿ{ &[?]i&5ζR:{EFt=u^ mUC@G_ nP`FwIc͜U ['F)a":͈MXp{0)d_ Y kz5;F]LI'Q0(\h/iBHl~~H˞ &|R 19ݑm79MZuQ=u/]Tǣ#|'ʄ+c*\5g5_DS1M6`v 5R$e&> D6A?XԳDrZ& ?mC@L7T=5a 5ZqW"Dby 5&jo ȃk4V1|ٵ`8AF8q̄HK 4v%Z S_/+_⌕};j9vѡYL:(pC8Y(oCSY YF^o춱Ԙzh ӦS)l@>͂e -86pVUȼ7jZ۝wg}^鼁ԙ(-ǡpcſXk(Wʆ & S:ﰹe?ᮆ TM Wa_jqg``Hf`yAmpHUݺD7+CLnsEys{@P#?sĢVtn DEmHLo[>҄NQЎ-cS u <Ynb_[s(<lԪq`(c0~]= `}^P<3)R-Qv:fĝ'44G@I!>ui衋Q ʔ2?; +!ݜn6d)(AE))R8,;$9z髒Cb%_vdo A ·l)ul&/d q-o=s. W[<-Y$DEWgk0}qMiB*qTլr %ioʢ{X*͢@k/4My_уم)xf|IvS!Uss= ~`?vĢA۰ p7H?/ޓ׺瀈x3Ԣf6dvlr.~H#q&Ggwr6T~&]?[iXfS=pvsW?`huްIICx2ܙdSif/{g3F :$\c#k?!b#C`E>* ]|bN;TWjЏS zbA_9< E čM=OЇaP#GyM Xy۪; YחCK| 玽#fݴl^X]k'ն:P]{$Cv-fAV|Ę6D-y(k-E5*pi@7&v>w1$)_oԋꉯ(D* I 1 RB_~^(䍏&\+ĞJp2Ƭm疼 oϚgb7&) 8qWK<ɤ6QER<}dN}+ۊ_u)yLለ#38T&._i)!sHtU9-(wJ`We|PIzѠϯ7vIa(!vRF\y6^|ume 2${dy{W䇩[zLe}|mOzCsκqoAAR$nzjz "u [[f'sQ7E7Hԅ/?ۄhr?Ǧp-# -aD%0'Mo< l<(Ux4+;ep")3a殸†B9xl:̩.B ldhCZo~h:͆ʍ{!NsD@+Q<#(+:B,+0=G*=n(DreTlHiKR+Z.vT.!Lu F;U%wօV,Pàa'NeQ~(:;3BtCCxi8|hbVJUݙNHq9Gj:iyШ*~o@DP $˳+PsGBZ/5@'dNJp嘂5 %4 <[#=Fv^ZBȁ-YSXjWa]&.7!g(EuwnǬN4$ȆM0;9~K\x6 |_rwk}³b5RrNkjA)fև /V 6[g?@̱~Tj|4]0`Dīk86YnKb }gA6Ul$A8es2LH Aap?H8|~C>lOA{Xw0yo?caQ:]4]" =,lJvկR1mݐDlEt32e0QmM  ;40q |3Ek6L۠Bm敌 :Ӵ~ĉM"FQU! {ێKӱR*BOH+ -&PmQ01 w4 MMI/ƥ;@Mds+1p~7s$cNw>r(قѪӑ[XYLǭD%mCߧֲhGԕPaBBr8CMY6F3mMŽ @$fӅP)7|<9MVގȯM<)ȴ/(ZAZVVjFiZB94CK#Dʖ2Eʱ2x,$~I yICogJ" nj Qwu;Op\Ab-lϨ>C xjMVGMlwWV<2E/ǵ ~57լ 2] *c"^9ʽ\Q3}4*3.7w@~Őnt:a^Ȕѕa򒀇HQ߃\|=rsSzo1h wII(z%tXХkf A0,yL2z4ST?ݸpKoLB&GBPb3oڢԳ8hcF"ܙ)`oo\d4ljdB_\j?N~12Q15>Uƌ!jF.N&AGa$IH >ITZDoY^sGX~ RJ} ,cQؔ^F+Sl!켬EP\~$fFYg3HNTZ{r߫E Fh?6Y'4Gt%[d~m/pYԈƻ5=2 <|MBL JzézC(]?%Y6uVsTHح hʇ1*굋I,J@U@*sD1YM1%Q3g5ww̓_ן9 p:.W@ z m陓H^ؙqEraݮ&!F*N2f_1ۦ ^N<+ [R/4 \Sbm ۅpzHÅુc7ud^x zh?nRqSu(5;!䑕|wr_,RC2~*ҹ*DE1"F]Hz+qAa]4fIӃs>ל)jRXR_W7x'_>f}2.rP@#v6 nʗfGJ 7(e6epoq*Q@N~T "O7GΦha# TVQ!ɫW--P"ɱL83f)9VK<}vщ逄G(`g\6%dafXIӑ%0oxM,M{dW}lR{]%YkCfĵ}1hs,8ΡjN qs:+i,l_avy`[0)METYUQA,.z2Nf\_$H&7VIDpퟚn*J7ۣ7g kD+x#r帢3?BKH~~b!DA 4;j+BhMYxGtw^Cazޮ`nX O)oطTd[;n=MIsnYˬ#9r>OMDXIK˴6*Ylgˈ /ӏ*} wl_%T1xT 3<b* 1 (KtvPی\E"l-- ҃K{ ?gLr.)Km̡Gh @bn`C̸w~A x7~i)G_Jd>ݚ. 6lYQtr껰4iD(4C0iԌx~l/,yl,'8uZii3VB0q^h$Qږ;㎷?sXo̺0ǜpl?^~'f;IE:uqjێ;~#Jzӝw9d}s<,k:"?ԵIQ?K͈"OHqA-e~jX#s\< :qp|]B-nZDzA1WxK,+ |e8Zѵ2馑sAΏo46X ? L bEY`iETdUklb_Ynb"=6eL˾˅/-&)qкT8,ʫbLR-SnK/rlfA(b{"^y6!Dm 6Vo aߥ=k3{PTtpV;.>.Q{DL_Ξ wg6R,ZL5s6uvQr+Ec' vRGAYD]:rG M`/.Jѿf<Ǘ >l켪QWzgUu`dV7FS,ҁjJdQi,p grW$WNy_Tl?Բ]LiZ#U'VӬՍ8&nǂj}MR{jhc;yl2=.)-g-5I3ٞ#*E7{{&\q4Bl ؞ ^oԡuEip%s/3%$ԭQۢ(ʷI_75ZaD`0(t"aw'(Vh"[r5/F o;Z{5"6!)L@Re#3J=BiAHY m(LX Oc`.65e)Zˁ`^ $aeh$P G#X[ $迊9blJ5n`kg[Jח3T^0f1\zlwg npz.i[(VF81iMא?zn=v52lL U KJ>>m֥[kƣ+0}MAlnlj[הwJ+,A e| ņDAzCz fY6 ]d4-%Ki.҉cnWĉ`.,l`ߐmնl^wh%uGsP{RGь J1/g 'LPiH.1@TxipxߔJUVE4LϻdR=C^[`\KE:ET'U=Wnvs<).& L!q.{NK(RVfpIQ7$R|&nތrmJ[o'&؄la8?6>T Ev3x6/qadPsme}|4 s+Og)͏%zV,NjnM;l_P# Hx0/6_"k#\!:RpB|=?_'@Wwc-7Ie!n0-pu9&STqd=rͦCR|sPՔj _1iβkVDHIсɜ$j&LIUd&@vn$4s "SAufW79VҸtsejdg(qs1":B[װ|*Ux7 \LKɁ9n{ c+DJHT֠@aװtNœpG]0dUџ/ɢlEWe60>e`E{P'TuN:EP Y*$%ݏ] A} \).ơ׈pF %p贾=jgLjdp Eha~71GV ˆ `8悊eo12AOM> K@ rVI w2[MIT=#.`HU-&ǀ%Ce/䉆v;)vaZ.P a&sCCH6޲œţ4 s`EP7q8 g˒OaR~ ,5 [iZ8<0SL\$tLjsiB-CzD4E;qh2ƮyYWߎIfE+)$%&kdm&*i1kOq?vso}.95pfY]n8zj֠z'T X3rD~CI>s=^) 4ΘIRxlM:ZKӺHa[JM$b腊[x.JX#VTffnC$7ӲÓX+Ã\x6Tk aqAluUZ g"yEW0Ayu= _y=E$[«7hl&@p *f?E3jˣJ<;-~z3,q?Z%".qHm% [j~5_䕥L:aЬHV4?ݔa91 rS%A;U:⦽ -_cg:@xUYRqZGJ7NI1ʻ4D)ޮR?i7jBRR X Kz$pۋVG>)?4g9_Y[c|S-T\ya:BNw=t]J)XR`;A_3+iLZR"tP3˗h|]ݺjHMQ0]Tk^r.iwJ}# ,|T5d#ԽfHIgAD.ȳ&\ϒ[v]6s#zΥřUh}ZUb-YV9m'v>>o RRĺ۬,xa՝ϞNlIK![P| ๯t`88JHU3dwc>Z?pt LF\jU TD .+J2R㟷OPVI+eX/llQ!{[:̲0L˜aPI@l,5$:2rvV(:ƅD:>ܭM1>.CeI_f0@w1=ci_PK, NC~pmЫe%H&DD3 GAGcu!ϸpaZۤc]S-LJZG] yEta[\q?q >E&n<SȐ])w ˙<%P5AW8e,("\]TM۵xF*񝙶fX˩r\<=1eSy5'suυc{ro5Bѓ(,/}(BS)'ᄭ:~?ح&nivdQ&U>b3 HCN\W,d*uWjZl=Gʥ&;}[oVI݂Y{tBL?*֖9_ αG- T;=&~FYF@vͤ[+)&XSpbEhpMoX!v3Qp3d3ԥ \@ɻ=GylҤb5l$!^UK;e/Q(zDLb"1F^NW,ROdG^-XTCt<< 5 B5[;讬_%HNoE  "Vxs$Y+j xs.%QshEƪJVS¾NgO>]pfI$!&!11jE(^x?9zz%x:HY$G"x.73K`k:NY.w#&TKm`Gw3b%'}:MYrQ>iYc13x~6y Z8txDBN "3gF$Y>E_P@Y$ 봚 vB%`]N }g{yf s/VFwvrzo6O!k4y5|^M -%nB"}?_ķP>\_J aLe0[ٲv/'8)KF&ڍQvD95=Q]#Fz3^Ȯ0N`^'ē)Ŭ vh Mw$OA{kb\Ym] b bܢ)7)`͠y`(R%bC")tz]@\! *Y%L-7( 6MQ4\bf|v[^@BjzwJb 6)bޟC-8MD{ZnDA~~FPh[71Z|Ѥ c}+*IxH;R nuR?]%U"w|} M}3 kpNzBgO,β G+{H}OPpmHF0hVjmy-㝤s6 x -ۦ<J)Xߦk%3F0O#`$_BQx7 >Jc֝{?en6_ow>\&3s+24Oeɶw#H[\iV1 %Av;.h?W cC۰6lW`V̍RdrN r]HUtDo*ԯ y7eՉ;Vmu5'$z22Nvjv[sG@7)l1' 1_^/bP3 UߓfێLUMA+-)|&X>?|[}i$)(w83/?"5(X|+R*ݗOŏ*=T'}yeܮ~nXKB'Y"RQ]='5nYrzC|U[> !UG{U>CEOe tϤ7kSOvT*SB 1-,;0.'wȥH h<2Bڏa-HY+r{?DaETuɗWC!"B|;O]⛺E[(=w CJ܈p'7y6#ȞN'$}I"s̒x<Ӓ>QUoٱ֥fy ]Ҩ\|D;!lFOAvL~~F[JYs|IڵݤAhdM15gWBzZULR?Of&Lpͧ]d@eHlE^> c`(TgL]@jE[9R|u,Nl,ApR-jЭX ?Uד8PX3dRLgvd4*v(GOo2nߞ}OW)c9IwvcC,u:V`\'# F\T.|V~YC>wn7Nbb6ADc g;It ^0ާwr^ RЏ@sFq VR ԐsIFx+5xg74ޝX:=($i&//B ø2s?'?Kkg|yE1>T|l'͆Ev`ʱ`%__8 xp_~DpEQpq. *FW6`5trj:R#tv|: $]!QAd D?Ώb DWi8 ~>1ƾ}AZ?Z> MY1 NTUscG{k?vJD"ɡ?` llW? |Tѳ>[=_5Zp4m݉fO]qs+gvu ׋ElVg^z2PhxB:˱i깶LblGG_w{AS q烹 cx6(ahcm::T7wN߱*'CIPrl?W弣nK""E9Ds)=v 03=&M s*NSXiuuzssSt2ѓjcwlU~DEG0Bq`IPa(xըeMgXA.W S]e:g :M"V&꺤HƂ|ӹX%0ܼ"e!.]Q-6#Jcj! -!Z )e)2ʦ6h6"pF`=> P̑;Q=\ Ax;p [* uF"e-f U'Xacu~M)˖:Rļ:w=bE{VSޒQѮe]C*Ϲ ]`J$A&*< H=ھ¶ {Zz/%Yo7f 1!?H.W3ZQqКޏ(ٌ)Rk콌JLIBg8 ,Z BBuq@#GɥDQN1b%h-°1L:' ŐplEݘ`mƄx oɷ{VOm1O = ]\AP;ۆ|W®NB.ք ǃj"*wdlOnJ=ĊVf  V3) CqՕ)ۻ.%LOՓ}aܣg*wtXa28x NBM݄P}Da˼Ը`Byi^M|2yWoZ25ِT.|2;t2l<O~CfJNd 񜯱64\:b::(is%VQh $ K[ʹGGfCڬ=>1ks/{P E@קф0$Q\?>ę8Ap*f&|?og?L2#t3jBHN&9w3d\J+xVJ.ܟIv IC'{E\+IpW-H6yi7_n wY<4+_ 6 ݆^ڹvmngl=wDe7OS"63 WOfWԫl!*SSkG'ځW8SXz8}&9a ܪ) ŔmZ[c(ҴY^pra%7hXM'CL/yBڶC7ヺ=kBRCQdӫݰ!05Y0)I`Y e>Zn"=D36GWbh`5bh3գgܕqͥqqԏqC +`6;Q %tkgVj }svb(;T::e*ۂ%xu*w[ χϭ(7J);5J}ӦӘO*vr/jxZaVʊ09QZ l)&v lbFxWJdƣLd"ARL9|9 l q:]NL㎼ $<*+ġ׸z u k^$*6F\C&: i޸䗂Xh}1x֛* ΫW7є%/&RdPR5eFk~?sˇEl󠆤h8lӽŦ%&tL;uG M cjaAjpn!0n;Ϲ_)hn?8o S&u_V+}wwɾ,tjc^@׋&h/Zn9ʋ@x`-ɯ8P `F9-k&h3dfp3E/h"PZ2ǡ7OWЂoRJ8\:u2Eq0[|٘ uzgZ8[Y"x|3Z9O}E}Bf7hNz>GÓY\!̵w!?,xbѢ3uRj *ʾoBrhPK[\}ZOrl-SdTg3S96zcNܞ_)LVo-e;L+@Jz{.\4%O tmlĩ\쬄+#Rb*XY>/9 FVp&L[@^ľ{_W0p; n6dQ_DE_v&Gb&DQ@S(3]r]<}Cfaw!V7#k)à{qe#Ue/#w+`an 7C[Ȕ%~NЍ|ħi>q\8kO7w eRȻF=><6$pe+vX9{5I߃ 'br64"؆k.Gry@u tR#jU@) pMҜV7\ t oMj|oʨsue=Ϣ?Vrk-/J.T TƖg #2gۜih2IUZy!xk&5EUjYj6VUCKK!"TcoI[~0tAB\Ay/nӑPخ_zJ[TuTtk .Q=(=vY_ =]Sh} c> 5m< ܾ5A?l354>C(?փʟ4״DgN9-U1$ +qQGFv4sgq*T=”;՝3~7!hh J0HlWOb_cߕTWWߤMβĐ2+=JA% 5乳ƶa< s Կ{FPp tRsa!CYd,_yc| Mli5iDޓ36 dS 4V@7h)$%;~`s SFu-6ٕEk{ȩeD߬>1X@o b}][JEkG[!`/V2H !6֢GP:1I%y:\E-;jИIQI$=XvUe>n"ƣkK4 DJL;ljX>*9= ܫWFd]C8xGlʎ\BGU]pz8lu]1|B0ZU7BA> AK]$ TЁ,Ww nkb&ܫ}Yh:&!ʳ|&G::l R7sa7sd3d|d#B P=OJ;Xྡ.вH17rxANBAsm^u9 !n_ N:-#:jliʮػWVu;/l~.”|2|Jid+SQO\K$f.`E؁igcLw357w:ۓLs2D%ZAWۨfl,L湓{008+⌃/Wݗi=XD4%>sXx2Tj+ʦZUΧp`VW/9߫۱x?8qq֒jOKP u 7xe25B\2ѻ!Zx/i،f&p1?J=.@fU)_ (\-ȍ3/ C4bPVpԊ٪0K IBx(т⸰'0ԖAlAv%CM@*7Ett/-R':; }f?M6Mm ^B.ÒA#  mR.yvה_(,D\vzz' [^񜾦hn{£O ڽ1ZX(6mJ3Eh=u[} tQ\'혥N"!j&22Z*+m⋡g! \O^ FC6ОR)>I&`v#_X095vYPˮI o ⑝ :_8Z=0 ‰LBN Fl"{Rʕސf*ᕼF@92r4EXD| enVMAXMV-ʨzHI/kgqX K^ɲ#pЧ~A_QF!Tsn 5w=Q^qkOF J}eH(* cU͘ B}>WhN˟})AGY[ 'L\vyn@&נu }[=P|/+ײ wku[Q93PG(%.mOg8|,˙R&x胨Tr1VNA8EE"խdԏw{ׇ&6۹*X } 2y0pxgQ9So.eIlO2aY!"}O^%bXr{xMtHQZ771'U)Vz )͆!jݮJ[VI |55JYMu  p(.QGm~YH[9K7 vÚ@'{dr*C^EǛ{?W132R2>@,p wd( Wa"S:gE)pS-H4$S0%!qC@M8&I.D˖A }5v%s)#߆[5[euܝѷgG+|Fǫ/Lr$ Ci-1GV .y4{ g4F/;⼡\?{ H"w%msRwhb!Yxy6[VP:KX60h캼 POx0|ybDm8@>3ae9NJUR!ӣADR8O{7!UMFZm^Jv zJ6FҘrOi]o7'W#ϥ-o|p?g \wg|2?!JFDX?KG]LcQ+,ۍ=HidKY~78 G!f>\p*.wE"zg1|x!4{?1;pJi] }@[NUzh&fk@t3UL1LY5 `ꤰPPݴOjk0-p ;!âPZTbU/N)aC*RYxs5yUh^ F|`ݨ P/SmD ޱ'Q ~d&gW O \3/k}Iqd?Ӌp(ݪ;Q.'"~{9gʾQ#+Rd6kQ}d5l(_ra`-.x+P\Mg48PTN.U֏z4-i:): = o Q\6sbZ< -y^8]G,t@SL3rJna*^9v>FʠXG2OAc籚Sfcg \+3gkWA}kN4cmC׾J4U2 jm9xIz˿AtG)/ݙZyBRlNvBu,B@=]O %lFբ*=X in&8+O.ԟˆWB[ºcejF11'켸]=_*15pj {[UmV]#ٷ6ϸʢt_Od rBItyU%.99o;V {,b7PoK`!۳z,r:yJm"X' -rfOÏrsj4KkAߣ^aS߄E=s"1ME\HtQ[ߙ)'ҵI3jYDH? 1t",)) _믛d *>u_Z Wl՛܊wMu Zzupq9Qa.7\*Ae8;t~͢32D*Ne9YBcẅ́sBJ/~ Fd]a:&Y3\ JԪc\˧|n{;f>F^b5k|vu¡p4 [(pzp&50fVхfXGkC_H"eUWH2^ͤ?@uCF`k+ XL#ccfqx7nST}k%*pYx\1Q0,Q]K~ljh̐jJx6HgEԶ=`0WxU(jL@3E׶?N^ߏP()Ե0v9!qsSCWS͍Z5(CTRG'cD摋{AB`7X; }h5cTm9C&*|()hP nP=5\0%O1dt0$1|"ptَ;䪝%tN'z:y} 8٬y32\;+ N YolÒ#5D`NgcV'"#톤QQt0$p]Aç{W[vO`Vn*>u1la*+(HdBE1ώ{y&>8{jPrg!vAm@qҭZ] WpRS9JlS0c46:%D .DG2MC< 0MuWn蠿}:)ʦ{>Y/" & ]/o|-f,s2ɢ ڛTŪzN Ŧq8~ 0%)66 gBc+K!cV }J^d{0e&/;l)rMJhbsˈn:%~wpPܜZ-)gW$[>}QZ FԔ-FAЋ;4~Jl&ځ̱H@5Kdz7f vٸeq\18!xTd*:_fw8aQr_KWg0' @ПCZIWoVep)gbڜ_]Zԣ(99w/l7!Қ2TQ 17{0* yw=y(?V-`ş}uQٳno5^@0' lk/TȰ:P.g! !`gsUqoRl㋑a '^-E݇WC?0E*bCS޳Q٦ә(m#GmYaZӻ=qE-?fcZ!-PE(ga~}xdSJ^%I:[7IvDpRUueZZZbLd9Y J vzrrJȅfd`ǽAj&BpS&ʢ@`8"ss:)DDTrkoeb8K&s>ٗ(UtδUS >46Y bn,q3ɣ)f4 n@H4[,#a1ώr j`Z H@^O:Q8v4 4^Ǔ:@sǷ̐j5`2 |W1iYo5&BN': 67rM~^+33xV 2g#K#ΰpnŠJ D+|3BYC1Hn4S3Ss~wѾ1C@AIkZW+qC+XUr׭y*GoW~ir}+YX8`_-< 骅;0evSo͸8խ*@ҀYR6pe5'PR3Jya͍c|pyZ}綇U!>~`9i@# 2y!?j"LKMQ0*˩^֮ "@Mz ]$4+(Pnl2΃qcq=wۭ؏ # c?DuHSGVt)&M}qа8oQ}媇B0=)ǀMAn'zkVXa肛܄S",vclxك:fjε0Z]AQjT &  r*ݸ4%$߼"`[%3cʾUmXqMiO B兽YLz%z`^TL JIS\o'8ؕ&H6dL Ut밴P[4NP:9ǂҌWEuaMwÛ.4OIZz]Y<Īke 7ա] RcB%weٔw S.eoۆ3PNLMGe+^J!*0%st%ߝN.tI!V{_vj\z܊CB!+8 @-"r+1{`Ϙ1FoE\gP֥JXd|?@;+&G4v'[;2jP;*\d6Fx& q od;:bT=ecԮWIڀ/8\`d>r/W>j K+:N=b9K Pe;^# )v3q>]T\PSs*[gxb[IkiN~$EW U ' Tz)*l;&{ $u E5`|,nNpԸ'ZoKf0j^D%v?qɁ^W^yːcdLS}Qҥ OPK[ݱZ_0Up+NdQjP+&'ss kW~$ƕGዲ *ń : PBJxf#TP3(=y H  nLϚO=SWl Yv>_ͦdWlϮz[c;l6]l7|=Z>PLL|Dm|#G՟2uToglͩ06@]22>WVm`\=E3@'/|˸S5Z7ClU;6)aܼRCiiX|Ht|[v{3W~x8^?v&e žnS] 4S=Ek/6%V5pyӓYd)Z2ySQ\cSO<$/@ P鉿a1NEu6MPZuK_B8~If0 5`M/}{Jv0j}vi\1\+V1A|:Z\ vk]7k&soI*o&!98O#.m\Ԓ%QH5?LA9Q˙Pn4U0Px2AHhgu-dꤋZF Y#G8WSe]- ]+Ìef /~Q[KDz@V#b ¾LUJۃ)eu+1&K:XV%^?O_y&cbGeNڜcDR3\1*,AOp }YGjdwBgM_~1rph:g\U!83'])6]yh8c.5,r;g(./5sڶqWQ 40.MoeZ#g,`)ُn B!焾.ޜpZz2NQDQ²QIHo,#`n_HEw! g䩾u&,nWclM4 _ָKhD v\#_anxp2:{ʃVr8v+or)#W㟠)ǧ^?فS_ M6@<`ո vd$ɠͭAvտ0"v;8l LBn^hĈK_ʒ^gi"sa?:Ofzьݯvieӭ)2WQpaflbIֶz:L@_4-o|'~;@,݁ |Y0, >$XuaL͎v,_5@P:*H#aN*`m Pl8ؤ}sYݷD S;K+j)FfٚRl%6Y2pЦ|dȖ96ZbB6?f,3"aW1 UH |##r[;.UI*Dj/԰/3:)2GJwL^7vPtݾNn˸H \0VA ?WbJL1M@MgfXHAS{ƙhU+ebﬠnZOg(:I @bo.KjmO @*OIWUI@CZGPy%H-J=,k oi"WU]S[FX|릔c 3thEyIy6IS@azh X͟xY->S㍷L)E(yB{:=MqُQn9tŦBRʓq"fܦPőqǼiW/}Jd$J;^ PRXYJ٠+Gm=E.A ;ø ) 3ugkirXi}' U"v0^mfL!1-j0P!uh]Mb  l*Q!ASY3u/۰=A  zbuc:eA/oCYm;WTM|GhcYDga,?#LXyЏeǎ1iv z;ÿ ׻ E=0TU- DDe7A4=h;ݞ>ou u(g#qc#{ůu##--5vv\d5[Wp[yR8e.|ގ~I9(wԡC.ռYL152:,CZKP vIwBuwN :mʲ p71?t,Xߥ +s'.Ig/f9ϭܧ "lBGib$8W1s_UCczS2vz(m%lT&gJ//GUjM-=vKi Aeb&.6}wŎ/N"~H~GS)|Ədɏ-.IQn2?< 7g ,!^6<P4p`4q#3Oxo<(gQϙk2JgHYW9)> lВe˿h羮COrp^j(J sK8Il`;EaSmKZ:o7 L5|ZRKmCu-)6TwcY>kc5y0]o[/ܮ+IvʯskO>KXy jTYvAu@iV8CQFdX/ٮM7 s3֨߼ qڳejUB'"$anjZM)ɧDkj=vh@1]>~cR]b>z54/d`rՏv\j;Gw o3SHcYi,4soN;Ibbhܼrrl6o5PyV R#)ћRYٛ/d/\GXQc@_ܡiA{QeHRpS7,$W !],_}3.L<hv:vl,dC˜|m͏a534 ;nB<ȝO# pL@d=dɎseMS S( i3Q}EJ<1o)')$B,Ҷ ?٧]v<~E*ɛ3pO_dN۟hp$3%VC10r8-g5[UO<.o-H#š&[s1S(We1? &PbvmGi/n? ab{GlgSCe-^zy5!᢯rDXLZC;H<Ư}6|#=* +V&Ȭ FF zo Iy"Ω'#^^Q솁>wHX3G PCvgCVR^T{]2c#yg5ebᢱ SViprPSc 󳥓(0+)N)qs'q!d[[YƱ\rI2ԙLa%BcG{B=i`BP!;D&a\SkڙeHɕ\eOaƭ+x&yf& /ŌlGrWdUKa$ߞ;DFWۗJGs+^D>zkd X~,(lֺiؔ6WwT0# tE3v )0e* #myh/*#xDxdH[~H$zgn|9UX8QH:0o1р0_|ũ =iwpyӐN)?lp,q5$,H;3aGobe.4 v!%sVboT48޸` 5# m2\UͼeT BSď/çn?- 0qɋmGܗ~)):v J>B\XEpdELo=\ddѩֈn2m^W,= ?b²FU>㹽a,`#WOѽ8QAw)"е〵Y<( MN%{ $meȻdWDNx|I=]'glYد+qSSP?T5%~`\<߳9 4;#jܒo,v49dBIVAeڮ~@zeQ1qlp7<uŵniYS[xK`[B"8 V)䵱(f:sXyp %O#EΆ] h~VHr Pnskv `:oZHaႚ/o/ cuw[rȉ~XHu0DÜCHVI~pð8Q#lwYkwAۥCaFL](kވ$գCI tӄN_pmѸi@! aehQ^׻+6##*2ĕWgϖط gr8@*J@O5\]&"niMD]24_]}3X\2 P vl#޻;>aov)y+tէb#fP T[ s\j]JQEٺ杌X0u1}M0qf1ռŝ Z[-m2*@}7{N]$.ebe*_zӧ1ʁ膣N(tZ;se+OT~#[z@Ë1ԓ4+ߥUDOD6: ;tP ߌktpmr\Or޽3k?EP,p|_GĺoMԻ9ShL@RM8( r=T_#˛3';.BA^ꌊHokY>b2MM,z<8ɓ &&Ə #PAMq4>Ov,/0*-O6BH +m$#/Z4}sNp$9tp&gF񃱆!hh$X *p[urX1ڛG}][=JWPi /S.`X d+[.eZEi 䏳^=fMmh2?P)czYa๾- drҀok J+Ή w[ gZy—(u3rnw1yj_HD cׇT0XM.(It7E*x۶kZKAtԅPĚ֞ʥ{9+Ӷ[G(ddJ< YM1pnHlqy# օbF͖Z"+fʕ8ȍp92ccUWB4wu?PBa8c4 ?n%p֤$k]@QjnO_~|>"G t0dɓNSKvJ/HuRrhY3Z4QQJ#1bGCûzdC R`_&ĀĐ8 S^:;X2:4 5zNwȱ~a>AF!FAo>3|(jϺhbuzfcJHX;K\0C fwk7T*FcetTJv%l(=9:vpXdlse #)s%\Yµqv?<@Z'ZJCo*cU2tbRLAQ#H R*X㟷~Qi=Lr\j,-}J'37PU8#@"M$NZT4l48l14]uՂE0$ ~>⍒ې"1 6[4}qR@È9eݠ}qͥـ"nT`lD& JWe 4lmb[nva,4*i=Xb! S?:FMz~*o.U5:]AkEQI7  Z}gfu/=}5k "!H;p`j̜:2ֹHb |CU4DR0&C205fx_&NG.zp@_ %I=B}6<$3R=_!ThD8gl34,bUxp ^Fqյx׳ wVN^^v8@H_KڵE]=obGFdta|>E|qmfsͨ{_Ƈ@XЖЗM2׷(!q.W*@ϔqIt43P, WX&9PN%D#<. H6'7WJbh4SbFO wͪ(\m9:dAE"\VDK1V=w KM!hRQP4/v̌ D!]JJsaqip|ީ5HzK)qhc_q9=6ZLlN49Hb yAG>e- -3WdQ} ,idE8м[uK4.tNIZ GpoɌ+!-cK"ȞA 5Fo@!`r:Q5W5-Zga=m 6)İgkC^2:;`7.G=1YKKLGSvL mrWUM%S"c hƶ1Ckx Cpİ;LYP;&zz<1]@W!u4M3dp?ᢓJkeh,p~Q@޻wR/f#: L;~#e")zvmf"DU J}mJjn͠eEK$2"P*;@,)t$6F 1+ɡWHu<38GJz%:>XX٬V@:yM%zW0O\S . 8GuJ:t0f=9DM( }wrdfz*AІm.I$2f[|5pi*q/ī{WHV`ϭ%g"Ms$J)@s[q7'6r,]8ཉibgHPCN8赽Cl($&W$a>aټmk$T8U10^Dvv~ 8{GKӢы*k($Z eϴ`ӆo됈>L 5鍯,T'z) ".kLT% פ2E:&bH]DEommkP0Q6t7N 0YhK* ?]PF4zt*~kM~i(L=zuo @Y nq+ɖ`{)]bVcCMc> sD`G&UNRU.>"'ȶ#X=St"QyಖeK4?LR ݫP#!{XO(j>?7ӰPUe<&-sixTTt> 5n*;O0>CsaeRyM60UW@^k|U0E+؇@+o;`LBA:b+zЁ<8/eF$K>}T]K;.:gC!׍6$Cm$[ lbe&d$xzE_eU ^IכAUOB PC,tX .9Gt4E蘺Ч?ц|iO`njh6 vT21~Ҏ|xh8斻&=/MhUɄ-˰0ݚru+7o SY/t_ces ;8g7s3F(Y0b51;F~bUhu$I DBW4])&Z\jR6O 766DU\I%m7tn״IbCPڼvU9`[вyVb'>:!&_q@ 4>2A+lc6 -QCX˽$ׄ-:qO!ҰX >,26ԗTv `Bwa(F_Wvpvy`hV, T g$^Z#7/Ӓ EbsWϥʧzq HIĮIlT@E&h@Un<Vt v[NP Vxo,~sC`0XpK9=4l'<^ò J\#K1cc^n5OBաT^iEnHo=?JE?kuy3٘dCe0 | P4~  Z9R.Dxw\܅aI(yX]W- z1s.]$mkFMvϣNNOċ]Gy\~=!L@W "֝j2-։1^&ƕ\FBk;޴vuڍ"DR\7jY6 {IxUTȕF lW*B}aeF#ȯ'O!n{_6 |PLMIpO`#'ZtGνgC$$=,%G::8I]>YعGl"n8^ ѵ—V wF%_VsWpes^l=j1|5-8L-!<~&Y<Ӎ*=^վ GTɑE0WiNO!r/N&][wD]+)6{#P Э0'q5VxggZHou_~YyᒦD]鮸'k<ؓ),,"^,k]i6҅>h$Vb3⡼6t)>_ 7WߖS礋a*-"KpsPs\4=/F;mt_"NyY]*rn:'۹ڇ=X,MJiXXR~%)5Rܹ8又YGX!i&tQQļ)X^ܾEq|) {jZĺI^J"5@!Ċ1"ULp8nOW&#A C7$$]°7I9PVW.Q0;yZ .T[Z\ 70DAF$<,M+7$3(oۑamϴ"[P Fk-ۈ_AQ =<|fLcg ݚB'83$ !]JE{u,̖L!iµ+RQJd zH!F3"BaFd>i"g֞R=ՄPXS)Q ~ OW"4.i=qxV3 [x@GŃÀآ*c(0*M'?0ni&ZYsٵjEqӁi@VZA)%޾J#yXv4^c8W$Zc0d<<"5V49`Kx_ۨRhAV2*t{W"~ZSƚ[_m +v(>Բe4תUqAmq#r#o 2C|½T*Myd`'ufHIR;OK!_T6=8.0=5@5'Y0QSf=m:u:+9 CvstWt3m6{^L;7wOmIt1{臅=)e`P@dSANJZwca_5ݠuj$"dm*O^E.=1=G3Z֧Ԟl [xӸ>>::^@zM|9m.]Hk.B6fJ 'l5Fz[-YehnREAsQ~xG nm&"Wi?QOS|)N[#ff僃pL6l?e$lj_:0+JYQJklTY2~q&2Ls$iArw[t;kV/1û`)_[R)Q!p$XdCmYPzb/d_,K`J!4 JQoRyHoԉ Xv9*p3bHlc֯h>?=/=#ЅL]?"ۯf\ = y\aMi"{}01^! 0wǝ_E|\+Qm-O$n2-ܯ3:]> XP;8_fBFK@թyqee&ԑy6\Mk[PV!* mi6j~ݺLy]Pu{klb\y{ 058=LBZ,F:J7 hfGH8: nReM&p 8G,ovK R,9vd>4gw;e |P~iGufhw\[(( {f5Y_}h x+;u3 g qoԛ|[PWX^h׌ y+gbwN1G&<_g kULwߘB'mx`YgV$ mou?gNҜ.2\t^\@yhq_PxqF9jaTN&i;#ReDl!ׅ4*'Nw]8y;K~$'P)_jDȯ\"G+U &ehR+>?T=tJ_rA{u[(\h-OnHmbYtl?*\ {š7`xN|M =s+z/Vw^F'㓂جW뤲a.qH<̩r3}>x\Z! 4GPHhćY_[]@'(Q[O6_vgJc:Z_HVņ AfG6PI*V ?̯3}Vel@E'"e\.,<{U_7$X̀+mZ]~||MVG wkRD+W(,l4ha/^bPm)wJ֭ y:c ^}ۿ}49c1lW5֜2㬕JGTCH!1"94, irbm~x"'ūnb)d+`ÔnC礭"N.n>>څ2ǟ rŭs!vVr\r:UQ$;_$/SeW(QcӛFfcX8ABg <' lɵO vG|i~\Ϛ}ƌf '{*!;0 qG-qq:QtϚ3&LbA~#ALs*J, @x* 6[  9`8=(}&|"%5t1 Zb1lbۻfjH<ڌشxyug 1%08Sdó :7*`RB㥆;"MlsڍBaolv A䥝Vg&$^RU*z/\1'86K#`TZD?'}e{Đ/yhAĐަ hfdf,PQw{Q4ɭꫯs!\u zdDBhs-KrnkJei#p2\7eR4y,=Dߵv_fUMYg;JA~޾3yda_}ըnN'۷ 5I+][3lq:,=}ĞbX?Y? _u#*?)Ҁp?׾}ss#]Ñb@y huR)_b m~A>'ܓP>,o* D-vS._]Ӝ:=%.@65g~erA0 9ˮb-ts>bvEIljvAbǴ m^Bkw9Ym0qrKEW67쯩OzGSD)GpyT؁~yAP_|^n!#1Dq |ύ ϒr~_94t+-6N xkP(͗'.ZQ{ڈ>u@ڢXlANI%Kwr.[{jTq_ԂdsY !d>YӚQ/Tb%KcgR1蹖!fNPL)ǽ[XAVpPK`@Od t]WqG/Z/(ypHQ9-4^'􃧄,C2lG <.xdiȊTp]ceiPt m-t8?HU9zT3Gcf\/HPQdi2SNAǮ*QJ_B+@iSxhz%4y2>=J1ڕsYM낄&| #FvM7ҷX*5#+ݱw u !/-Li゠^_Cgg2=!S}sRY6ACpHN+d~B&qxBڤ)5 SRʸB 8֤U`S_;N9g=bʀ+20*S'({0A1)'fw1u!㐞}oiC *X+N脦ӛVILWحX\Bݱdt^BC%Insӯ;G!M kh۹#z;n 9-r#sObI"ɟogIrgq~<<#>P8m@`VYʫiALKŻ}qJ(b3?ˣp=LZ=ΙwP;aӕ0:^ybnz.N icڷ$SchFHDlfawGღb'E~E0xaJ.*K@|ePa}ua I)4nXgΐIVkUk^.HUVP'lU},e-3|$tVIqt:,w{!ta5VB.o2- # :GsBy$+,nT%Ceg Ĉڞ\8H}Ld5ݚ Fh~L# 'e}P]-T۪y8[@,X?Gf!:#^# 9^nQk7̿!]} fG_ PSY9 bˋ}tl mnXn ȯlYhI_ *z=PvQ8;8.Wgq>kkX]Q [Щ( Hii=t(}:J(dqm&t`J$([p*y iQy^2=c}&wEk~V3[>#+ N2T1 kMp)KlSݾkqhѐ xb q4nDl$e2y@Qpi~@)ן 5rB?D]x/Pa1N;PE5_p_} [kFN[V!  }p`+6uq&B^,;zT2 ~r?(o:w' 18VCZ@({;q:oAZ ]KZKU=0. Cp`sz2W#wc0b-x%_]=/#X$ݭ2n i;͵R@[-<$c72w {ThX4[?:.k2N4R#w QJgLRF6_}r 3]b {L3uY2k3?ͯQXs-ԗ֥W'.F<6h,vriV=Xu2L Dk?4@skaCGam=+eZ!Z`[ʆ׶c zc'D=bb7M'٠\Z~m=v>gOCj-逼 V1| 7 W/ X TauiB5S6M#+4| KhFwo[56m+iR#ˑ!~NS-!o=' p`l)1W`wH,\r7m9$ ='OJk?qEh\Wey~2 \E! mG`!k܂^^+V ;ZQ-wK kA}=.zF&ASQmQӎ RhKE/Rv^ѥٶWLkrbJH0oԼiӓ+8rՑ=Jj[|%ꚭ][6u~)i( 42\ 7iKDˬ1|Y`G!4ĄǤe; XRUj-惈nѭypgAtR6*LT1BF >gW?9ѰJ>h[귂"9q.M,2@*MQ rRQևn7/}(rFa_]=Ek4XR@;4=e"p _Pr0P-9a^oi mz΀ί3T}!#*rRfK :zl,He5k"pY#$-9gA_3ei`jJ t4T!Odt#{G -П%I{Q9ݷ,bbAZ@ XE`IXD"]ˡ#*8v*cQؗJIT{$G2sȨ9=iLѓQ3'ot ~.  p]3mx.+X(&Pci}-X-ٲAl~PE[h+ig1g0ņ A LDH폣g% ũLj#k@'!><()pA3gæR& R=f $i+HАݛ5TI@Ɉ) 8{PC&2^7:eVwYdpK\Hi>sc\%_ço;@?8[La>I1 uqVJϿ;Zޙ1J4^{:ocG[W8H Ev)@89Ŗ7o`$Xw$Uʷ kxV}흁$7o T|}mFZ&5ȐG~^oj` o 6ݘ<4.Flؒ2ԭ%r?~ߔءF 8J R3r8jnz⬺)1 OL%VrXx ;lz( <(tAʣ"5PZsi\Yu Mx3cM-0/H5]*rC &ZvW|vZ~oJλUώ ~ 45(gltRHDqƮ:qv). 6z7v/)CXa[̮VUw;HP=Ha>".AM^!ou&^Z"dMPM (&Us+oB&Jbn‹05Ϡ;(Q dQD1@}JqJ;pAդɌ̥u#.:#i;~-G( jW5띁ePU^d=˩I 4h)ܹ-Ʊy`yF9[NEJ{%9 տ'̄j3S O!vo_ltt¸ts)Hyy#[.%`8.9-WP<"'`ErkZiEЯjwjl{d s*ͤ6?Eq&6)#B^{mh==ij%M$;Y_1ol\N?q]y1JqSk͞68JƌCcێ!p)5-jfs-f'r3hw.$>~#J\߲Þ8?C"'>&֑8jO9 o&ߘ?ir7kurFDD;T}w9i(C>a)[I .բ3,d%]n31Az֣P<䔤62Ov BAoyuf]=K7Ri8E༯!aHi ,gYf{9 ?籈W25u>يQFDb'7jKQ d9#nmxTSR9EwAE8v܆@,r48);q`أ/BPeHϿUYL8M*w64/(y7Ҥj9{Uz2m+13~@d*uJ& )JL_2_recw.i2 bTQBϚZ Fd^78X&wZ ~Ϩ`h}MJ IpKCXV*JھRPΙ{;qZ Koxº e.yI_KTUIJ kQ*oaK N9F(6BӘ>w[j6:0ﴌ1oLgx%7UrX׈HIUҐĜp_C͘ZR&&\F|bC4GD̜F68z[56їVaaC XVldSsG(#V׷@Z:=sOCT&GJpoO/DAօB/]+in7 Z ʼMfI !\%nzK 'A"yLJ:3\n<}whS`$iץh-2L:3> ?mDXx*崚9Kw){ɦ N9SوzK+O"]3`;a?EϺZXxzLm=<9c kOi=#bGwq#!FNPJ .Tx{m9ripY]0:>k> Q}JTYLY_'ơ{+kuٔLdJodwzԾac1Wc+!}SY ;dd$9Mɴ-IaIx$T`eC0xirh'؍EUq'gyw Y llSkd.e}R&Wx[zRg| ґ2xVh<~K}+ǐHEx z4\]yv=}daQe)'zסCIX99b8ME`dgϥ$+!QFpɦPl}x@ FL Mv4̋o\15"6<lY-J,]Zmn>APs0_p.^QǍ)&3͟._~X+Y]Cx<И߭V8Աro~?>gHfY)ĵ^RauдrHJaV&c?ͳq2μlMAɸlu=B^!Hfz PJW,ٗS6uVEB t*:g/!CF 7G#a+hJk1dmNm ӎ #*/ePF\:\\u VdC[E)+L^S8 Ƽ#ZdF m Ȧ\Včv4*4\3.0kğ<[RBa_,а0cyʓӕg:u0t ! ;zw;Dl)$h8i&} "{3ٶ6XMp")lhH>GS4VQ$K z']K3a1m0f5m,QY.n+ovi;r5VfGyw(6d׮JX3'3 QgFn\mƤ pu6tN3հ8 RX "|+Sx$e *{u\P;.7rގ.I G0",.tޢ1Ghq<$ ]_TeO7i;m'4Tu5{KZvPx2Yu7ME[>o}ȡމ;{ӧ;x[.١{O^iu==W*c ͬq£5_,ou؊$H{Bs!f sJ/'g8zMCB@9X} 1Wg@=6qle\BR:(Spl ~qҗ zǻԸ%->͠cEN? Xn@c(-Bn8ŇgExrT\z,+Ǒ-rIZNdZˉ_lbk{c 4dcG!1v+^vop98g?lw䑮4kI%iЗs\i}^$֒F{r09MKdLN~+/o=}8/<(6|LEu6WY.7W̆[L5IU ܶJ+nP? <Η\u.8ovdBV ^N#v*+,O哺 H3@t6ӵN+ tz?@QB9(D&ȟ},hmm?9^*w]h?;|dQk]nRN72ǀmuO@#Ą/ $3qw`b7gJ7Lj Reմ WMtIHQ8"7sЌ(c9,k?~SÊGH\%h`TX2xGx箃StZ9kwh$‹!&0b@̕s/͐ a-<Ճ j@6X#gs i;W[l} q~;m=2䛈FFҨv}뮶*Lx2֍マU鳟KSɓ=6< HYoҍiz*fnݦFh9"=%po1SJkG0ԁ;WYuuI5)Qg*җPH CWwOXo6f1j p֟`vR;|b`im t5J*T,4]CH:H.¡Gx4n۷!SX:au(-CӒ` gR\kRJQY9MX܃KOO(6 Yy,njeLL0aeUCbބ!k Nm҈B0oQ{^fHed5ǥr53i9FLUs5JJisC[ќݶ1q / VX&X2=>i$n=ކKJ097'H L_i 9e yU]-cw}OtGkYCYZ&GWۼT5JJO,aw׀'l Q(,: ,ﯨ)IAâ#򩓻D{㿙⭒AksѺ9R=Zw;2ZpS|U<*vR,{[U!{+֑e5:lgd5B &]l!fymItv.Z˔d+bZ8:ȉ7PAV UAb[C&Q22d!ڍWW:T7ēemH)T-@>bg^u Ną #(?H`-mM>-}Ubp7T9JvՃr@RRK%ug -v Vx,]iXdZ.I Pp]/{s wrqw*%=^:N2s~I*#:ѫh^Z0"n[V [U)hF{8C?\(jyId/,jLRS'$YuI JLd2RرV_&~u/YFN!NHkPC Z@s_Rq1v}]Ow $VC5{b)d8&cC>[J>o"Ђb&ȟ SjQ#* $N'avb4JZ.#en 2UM/g=t1*?T饷9ږ`oU џ8@l"qOOa2ǼNE03#̇sLSS*݌桝0xKǣ =UTB;6*w6eʡ um~| ,0xjqJ: ys6wI6de Zq-n4 g@4[`A ʃs<t+,T^ ezF(0C@3,V%s@:P}UnQpUdcŘC¿kBxMw+ׁ*.YhkgI*BYL.~ w F!BۘKcȠ 8}M}!],V,qJ90oSr>U_&/D9a$z:9`9iV,l|)@Pt;r=WʺC܉KǮ"҈d"6p!Stݪn$d,{Gz4Γ!ƭ OȧÔW`(#BOA!&Ef7ӬQ])ꅀxdT̮2wXtBg}5<+Cp4 % [խ.dުJ+ #)ingEHam!ʊ02=? a,ORJu-V}M^e4_p+'Ɨ41?&m@\#shRnXa44Z?_2RO^4$Kww"S6,,.My\>W;DvCLښ' #$c?nIdl-eӛVx(_{-D>j$ +_炬Ujʶ]n Q-#3Ri4ٽSGՌ; yT` ,>عt? y#1{&=+Eۙ{PRa^q,/LY]'=I.z] _c?rloUpxU;M@'_it蜢-.EU_oTҁø.SHC c-ˠo^$pR )jGI5QDW"W@s 7W |Ϛ$vDX n jSԣw0o7Pj sry-KiZڱɬ:셋,{i&)ABLtѲC̀˰ws!y;"F ѓT`KجmeE7ݛIz(bGK)?Kh=jn_ #ɐ1LNr%Э+-+q~փ]}$yWLgG}K/* *f= 1 0';@=w/&ޭ2FaazaE>T?:ߐyH@EVX@>d E'1xm&fٯRG)i옜` 6'FM6r4n'2۷*n<MEzaJ^{!;zLJ$)Z,N*O[ť*j(~bEOE)2zM Y}d5Df76DF󋥛צL`Q0s1 /'L]WC$1QLϑ<+̕GO A[tFWp]V~fP?[1O>zO >\|F`{z#r)2]h^.dlq_,TF'\i>LR+C|:Mz ˘/'gt'MGy#υ` J7^ X+ Sx?F6>bIGqf'D Ԯz872 #Y@B@n,P=ZpRԤLL>O4in2rճKm1SJ껹SρbDb}q{5ǣW" ?JV5bCەYd#f\ˆ!#=NC U#oڽ ;[}5  rvU"vݍQɂ\Pg (kSg&bxyQP+nvkZfKyAy c4p˵hz~PY{3V{[ŐN-O'K2!Kw -(\%|ۨF2 5'spMu MQBLm (W]NHds\xĨҸi_ukm.\#8hBAx&U+fvzT'Kzj<@#et~\j sGOh{QqK"W!A}{9% " ^ ġ\;v OzɴʺQ(ºP+/yBeWCVEV>E.P e&JL{e>B>di:B*ĤN?_z  Xds";]vKSJ(e· .:%h/Ty@ (u򇌐Rn:qZ' Ev}$h[U i~KLw $:">h O\;qlR3dް@fA$qIOguy6:W+k^WP>ǂ瑜 HO.[ rR©Ȟ+sr>, _A.v7&!=@mNIP˽`8V]aےdu?4Imhk7`t.yR)9Dځt˰40StS ˼1~~ .K7y`ݷj`q>$rRėQv%/C$c*,  E\<35'{bs~hG}fW4a3x$܌&5A/TZTش״h"t.a4QEP'B]OQ uQ'{u>v 30C@r◰#j^%:H`-\[ v#dZ&G 'wY (Nc]bYsi^q`qv~.)U+m$H^*Vg6V...&=a|ŘsVh|~ Ĥ@PMoo0ӔCw@;'3,֩gj4%Yq/T2kpcu,jX*vҠ#ՠ*2x R!9tRCH>,ϩ#I$LYiBo2R{{Z,Xi(Bт\eSY"?fiWZLafQ nY}NK2I?y)!26cFnTM{nCIZY3ZDo[X\iÆVLhe=7;i1갡W~]gs0%ncP> ϐڙerÄ|:| jRN >9'>!~,Ƅ*/pQS6Jg X1;_=|MY2kPɵ{;$Mev͋0Iy"I,|;nZ@>ΕnE H5-.K|r>s0g!W2n LqQT?=펉2Du7J࠿37sX=LD,,["r)- E24Qi\U7:0"`M<-V-rm.~1jzD x:tzؿWU\/߫σbaPBj2#?)St"OWs+?C*Pcg])i42:=0f7%ixȞ!rkBJrd@ѱ@PI ;xBcf[ ,A+}s¸% l-bhaq$,cDy !LO^F\PT?8׋%X]fn.o,_-w?K?(u([6MZlH5/ȂY8!LSk@+nOrv71Pܺ)ҘNc2@t`8l\Ft܆f8Ǿ(Äts 3W9dy3?SŔ㗦Ot~l,Pz/_ZJ)7"ZwTa5ZJٝ=EO."T$m d:'ftt~cl\+ rK&(HFǙņ74 XO? HKj @j"2\$d3g)E&X(9W>ΰu}"m?"\ᬐf oiV^``y )7W_$'2UUܢ [o"2wk7#'3];rDAݶЧG+Qٌͦj8p8V YϽ#ûc{@Nizl=R]nT֠u Ke abI*%V%[#X 0MYp|ިJk/R"O^ϝynvKch%MX2) s~sP;6|WQZcjrG^BhE/ 3I/,=^Na7'"̽GT]\wlTh*a:衰-V}5kmL^R+RcOpn L6hM T NbPp7"r^ T 5o/j/BOk / I 7,g/M`VpH2 I5󓳤F8VV 8g{FOd`\ 4K(`|g8-[h)qd׌ YCt&DlWfܷVPEggE72B!.1 u\3yx~ [8#!ᰒC~i 氁FJ+[ăD5-\Z :q ѝSS& ZDpc0[Z.Y%Ȝ6Wrk)ęi?.s0%E ~3'7*cΘ\cDvkߓ]%Iw;2eKyt]5%YwxO+*9+C3M5x0M}(N0\"@=+dM4MNT˞E*X&bLҸ1Gf_l^fI6D"MȮbꌼJ˭U>X{[g [oK{EAloòdE[.F1C%&p("]_ fufGtx.}4(dt .?+zo+Xk0v,osE3U2RD&$j<*Zzpƺ]γU 48Y'pzmhi 4}<,L8ȍ첁IF딺a_.CZmsA'iLaO4&cl "AAOmS,I_n i߻j/leH^/*gU`'&;P&Mkgvq.T4XɰW=z@WC}.B3ֵ,K-&umw1`3UPH&VVQI:YrQT5jD3'A 97ـpUF|kދf^nC˳6IPRKvݹ==U HS61i]5X}' xy I۫0 #Jͨd;@wy'pt<h&Ax#yx)Pv93#Xa.dO#}r.4Nixf1GW=)Rbhu<'X==i$sCt4W l!2hkt7M^^JԽ2Yx7Tz{n";H?j*|W?.*0 >>dzY,[lLqCgؼ~u+BzwC@wD%B(Ў\kΟa)vqUC.7]9YNUOb}|h͍s󯎷Ю֏y*|zDWlgtM5ymrLw5DtF*Hacy!S}`K@edV R͕ ە0S8g2"ΧK9&ƹr(|Ƥd+WvVOm<ޮ0rN2rBLp8ɟ)|ԞO?۽5`⽈(n7p "z(CQKƎ#׆&XTa{W`ewR?D,+OǺ]ʷK Ŷ_Mٓ3ӓC<(#z *|A[>%`ݾv3Vsbߠb }/~U؅˦ab)OZ&ARRڵ !4q?.^t@|CZztm]9v2"s(ܣё-PMѫk@9'vi qWɊaYixPmxZ|:Xjf[,# F`hω%˳gBK<) /.aSg=hqp6P{.0:V'>cZ3(0#F^N GNE.!^qvQW @viY_[#hh+S~&ilԅP^}C9i:`hj8ʡN+yQ JNj&%@??Q<Vz!ֹMC:酩B:MjgӤbI9lYj0%< FGLV"AЛ$@):z %dGG vs&*_Hْ<<_UXa`P9Vzr Fdl6[_ Kf*v8xEg:*UKgi[/ s?T\gaW7.*w2krM~,o,)`ߥTO<鉑ΫbB@茸P?4o6MaF:$*vY/ n B9N_)+ s80#*}##Z*5dO"+W+ɳ&ϕqpv/Cʸz[2!cnE Ȭ}ȑ>QlzCB%GCEM s hvdW77GJpWY2rp<ߡ}aP8A6iPgإz'k8FV)45wkvÂI0 >dmk8>>UΑW* >LD(4YŚ_xR o$}9ɪ)Q5hZz"\{@ヲɅ Cݯ:eBbD)5Ivd_ApTy_;Ȼ-8b0>ZA7}4f%` ?˘3G<ɿ঎ce\w7wlO;ڴ"#' ;ώi**ܖu1Vk`NPiڶL0зj[ickbG750LfpfpDE3`PAVC6S`dEotA"|'̬DY[?-LI=(j:L!1BvUv_(F}+\ %u,V_t;JG!zR:i׷֪16(@ny8S9`?ނJ Ql"y4|Mtk_*A& G +dQ1e2 =]zg[-_;6HX^q76T2'5!`CC f4= B!WOmQY:&gF^%NJLtj3TzluȦV *~~C}p(.X;%Qa-dcrɣxr~u٭'(=uQte|aޤ4Fk ubyRͻ0vZ|,Ǣxazp OHk eMT8hrNM7~%z]qv>A1Wȍ8}XjyR1-< ˂\_.'X1yV,2heSZ'R^줔81tVoTh>HpAodL SAuS&w`o(3a3 œt f)Y#Ϋe aA_$;1LRͬC-`7`SOQ@_?IF9̼A)@lke<$a޴+Zք5CTzU Vy@5tn~w>b^:FWNpQl}N i?81G쌓M7Q# ^Ӱ[X8d*’,f%$T"|e0jgM"j[= $N12؀[Ӽq=@# d{9 {i!1lh8ΣXςPM8mHG'abp^陉t<2Hi\T/%a4wޏ (OJW&y4Iz]j;?`r|1\C+4"D[ahub$ncUtIKV}BɦxsH ڡl* 4`/+N˩0l}-֜\c"cZ{UZK*M2M_3!Q[bzOO~`69JT.ĆeGgmk4E<̔D^"#1ԸUg Ѩ TEbes2%54R xpVQ;Y/h0v4T`E{F!)u"k70y`0#u$;)շLpTSD/QY #*T&.|2, ; g9ݤ.y@aM ww+p,w NU\Tгj bjH8L8[褂h!PҩZMCgs[TyO$Sퟘ҉}r>"}*\@w2Ѕ ou-=0舞`Ll' r\+?I}\ Y}:J)`"%(T,|@`=;h#cNA_[sN!hI@+YEB]jd_(Y Vl ($|Fi2ڶsH7XߥTqKX#a%ETi="wTRg [b56inƢ0Vڑ.W588?=y;;@4Y"f4#5ZeHIG6,_|5cU`Z>iK=7J#rO(Ec*jn}@ԛg=@>M+F_ߦK#ٖF5fg^䏱KHiJNr:k>xN@b.]gro9t\_xޫd ʽJ+pcvO\yU.P1b=>5(Ima"+a:ѧDL nQU;xor`1V~20U>unGz&ύ0@M"[-jBeo4X}/5=Џ¶eܣL޹6г4lݬEa dׂ5p38:l_-{b=&LrY=IHt*ԐE+STT #Yij2+WG:+Y4Rw^)]yl%A0T⃼ZƔ! coSLp1Rמ5֘FAl1ir0!$$>*(KmH ى.u عZ 23/{+蕫U/71ɩqVciȄد$ % :܁#4PO`Tt&1,@Xl @ /Ӌz0v?c Dj# -j4^0rȚ0C-ʺ ,OEVO */TNJճ}8(y3WeޕKA~(hS"{h W-ZB91tYX# Br~gI)A(_9ko'E6wh4$pubf]*:l.ruʩuD0b$Ӯ/WgMv/4~ȶlrj .DgrLG*drjw>2w"&j;ϊZXҹjmL^ :2ӼksQ̧ hӸ/SmV\10llAb!Z:n=i ϙ C Ĝ/2SwQ+g_(b/9}krb _Şb:;R8l[& (K+$J,d{JLk0~2~;u Ծ6B+DW܂Vww*|ge$Q{Kf"<;U?Nf<;Zl&4{AY ] dp_G2hS!=&izD{:jBz5ڬz-٭B|he-ͅ۩psnƮk[A)dVG&7tQxqဩ,MN6d񁀓Õ:?I%6N>i'MƑR*_?+E:qڟ~JtT|BX٧sPXv{O+/3lryv}G?Ag5;-FH.rwA}Mf95@rxG)OzrĞ=42SYg%&(8 K܅,E~d/#@Fg?6qe%yBڀ-Z88urq4͏ Ċb[*|u@u~ ΒuݓX,HS?@|1g}X^fmx ? Ek@)Gxze#MYT:(AA)r3(O/r Bo=KAU}]9##Bdvlaf`%%T9@'R(jʒe+YK Al{2h5Py+T(r#:Eb>z{LA>iQ2 cpk??K`& JZ-dok k۱y >7%(paPLkzyM/K0_ Neo-{cLh)[rD-vzt%OQ:ę7 Z<?śtbɤb.>B;0.Wŋ^ k M-*g~ѯY?Bd@2@!T &eˌ#j(b/7%@`6Wi PEIЊZ?'WBݯZ[G?97$$ VQ',NQ[#xu [cw уV0&3rѷߦ  K'=SsC=&מ|6Q#wd01_M_Ve@( 3 V~7bԕJȧS)"6xiu^wk:&>h/"ex6J?k; BęE{Tg{_2ǜOw2%%~*M4cט$h@N 8`"ww}.-$cbmvk8'z9|.yx:JLF؋.-Vw]TUf6ܧ?xlbHX$J" {HŠ;Ilue݁XBx=i4}O bx/nߥ.a]pJ"\oP'.(D [SDMA04E_Ph?M`e)g^Te90UU!8$pPL#ꐻX.++/达nb֢\5 Lϵ{&x:`7/V>ZLw9zvu'K+h^;wvsk4ZҦfTTsGFh!䴻2M[v21 WmDF+Kbu%~ӱ0CX2vn-/++pG'y/ FkB"HYL\,,nNLkfrA۬|:8ԚmXH."3SŌπ\V^L۠o6tk3An3lܐLcȃ+EI=FcOk:M?4&)mO=gjrd`=yO$|\˽y}Aŗy³9CYw~-!GP.3KGgta82L=G{ oT_g/}@X(*_tZya[Vcb2hM7u8^1EJ7uQ8rPႍCip&"cSU?DEY6 WsXRGA>ֹעS~poB(MRxbI)%!fb"ŤBh#!Ԛp@uh;m?C\ʣ7mZڀa)ӕ ^aQe w9 èKSmiNv2}$M?fW$OKSć0}=rqAa!1iP~Q H&@*'Z4EA={'vù0xla),}6?T0HE1;8DSh#y;^:=b㠤]:rSTk;-Y6OI$YwMu R}S^E٠QBnrno鄡|eaXr$WDP*vo*% f_r۟SY, $?s?>n'~67dϑ*EZW?aΊk=硠Jp8z8;A6+xҾd:WM_֍Ng:߾ 75jQ!qlȞeIrp! {9aޖSרڞ,ZFR;ds Hήx4սa{Nvq8(2)ni,։G{x5?mHyNw5s.|x2+- Xjb^.-(vyկ0k1\:#Ƨ(l0NKё^9G0:SMr Df&Z*19O&HL?ZShxZ˿E6YhalV`bvL>IZ*X7!#0mv6TgĈ-}8K$mC2棋>\_S%4b{R'JS΅t>u`t'(%*zNT"\a,E(s21M?_x,"r8m﫢80*`,g޸/fU1`frT1k4usJQFJ@ /R ʡ+q-Z 1{4xf jƺK bB<ߜT-!V*m辰Xg߳Mq\tMzgh2$"ڴxnz1}&%f$DlM;6ܤkq9Rr"sC ?_vZy"~nƬa=(cwywāeM1scb2~RѤ]Gf=bZ&&3yQSєoW!~M-XIgK1lsMӔAc1G7:S/ 99S#5[ t{a'`lKskc>Tg†!5E[ bz߅E4 6C8?8l]lErЬ2hAĘ>Y1?&~mwbڅ>kMFsO1er >'$^La9<Yp&D--H _R^QL,g 5fI$x T9Rn jąkQ:Z8/Y݆͠+aW ] 0k8.Dn+=,qAn'[ΜJ5d>~v|\PmJN=c?@p7q#\jwO"_[m_:Զ፬ E~~ 5-FO-\qE'HV)yvuFѳ;ǭrV0c~3}'iZ !^ʃ&g LUfV,2t2I1HUffIC9pWӭwJ9NIaK1kA.0W.o_]ѽifւ|.iu(qϺ\_a2tq1Tي]fG.f{ro 4<"; 7=H,._+^_N1#3\([ ;m3uS=& K%Ir(x qID0.:Z]ȝ,KU!9fw_V1}gpn]q4kј ol,J=wHlIN\׫kN{| I|MfwOp`hkVZ1T_UIVBƃu W%YȎ^X4" 5+ii?;Y#'݁|Hҟ 7W&Q>39G{lh>Y1!9P A Cn;fKtާt/8ItF`뛦yNG\~PgysD!J)+)bs8 '=X<"l{Bf.QlKDk hk/%?H,"SN {O F([ӣ18jj |:0pqo=t6]RL@ ( ΂txg&Q0 8l9,z'?U]Yڥt4[vh~?}>,1s]NqDo3i\xz5_2NQ \?N jQExHDZ ۨsDLϓW 7'||w$zEKH.)[i- u "[(6w<5vf9bck)]uq]A!CAAx d+ Wx)U-UIc Q}:e("2UA ;Mf`w.<Md${%5<' .xvmΒ+Sta:zTv* ~ 8 {ي ߇qأ{?^^O^I$=̂ŋo_vJ#9 ݮ"vm/FyC}€NJ ]Ε. ^haCݑ$tN:OA>ur\-Lto9$^dY⭼pǿr;2#dcż.-v6LSZB4.P\X q˓>GOTڢTO. =3Ͽa+$?kM1o['xCO(iup= h7 `u,lsejn$&9Y=_hNFGjn Gη$H{hv#~aN;@0iR{[rIxܕw^5d O総o8!3Z!UJlo N2;/IԒַ]IAw/-Ke+;l,j7D1M$ _$xKuMrCXE2VRS CEѷ1+[F i>9X{3ijA{y]VVD#=]e'@)Pxdscܟ}:S_܀MZS{tܕfmZfVlc` ]ygZM^=eL<=| 9G:j~  Nݜ/Q2А8R'FE^ ݹ/[nIHH]u \Tj\d5LcNYH1U"3 Bďnz[3Si@L)B8_a&:կpɌ3@y{ O3p`LJ2 dX9O:tЅwܒUzn=_ذ~B6~GrqqrݍiJ쟇miЧdCחL۲BVljmۄ|tIm6Bo9>DͷPA4=oK8nǦ{fo&cpxL.QrUW= Qagl]%E~ E4?u23cba؞Fh#VT)~aVj?"`UgH͑ &nu$eۄ {P4f:TB~Ͼnwwb;IdO c\Y!eG< 50!árRdIFbL'3uǙdu]]J cy[|#`wl%!9⺯}TPC7!9gH'!VGkzȁw 8{iEmas~77[y$gEavdd:LCfk~,@E] CFouOּC=A󛹥[/ X[/[ _D"ǖ 2:)!|,Y- ը 4ghDw<=L )'P(A$v+3eE\;߾(eAف70ewpL˷Pigf<JԳ?r/vA`KvQz0ؾMrm`۵=)RG, Ҫا2ƾ|8ܱ'|K{[rڇza94IR|(ui5˵iƠ K~|öw;U\oVEwH/['v˸* ;ei)Z(CMuŗOq}i4r* -z3j #ϡ gE?CJ{墛VC au RܡLm5f9unNJ#@OO{p[L[JR ݯa-QB\}W Oi eڶ!6&| 2#M|J4uT~ %+r;x^n2. 9`u‹5\cy'_i~a}M ﹸ^G iWS` ·O;'|N *ٖX a{HsG+֛+2 0RFt.3Q{ϻsm1v ]G>x?qi?[1`Eq|Jj:Qoi0\ۥbZ,Y̏DcP%j6Z^|Է߉M4/H@{ԍo ODXk^|{ /ڬc38RL}'T5I#@T BOp Tkoc?Tr?"l=]~ FRdǛ4[u>aK@ Yy<?/1eM^YM!3wMѱ~ um:ܫŒ!.:I+.s8nB m@.$VQ2Y:uBxJ"UPͽz~vInpk)uno%o8< } zY?^*8TavKPakn-W4,u;XI!af8}~" [(1%j(yƿN ciŘ臋}/`g)S?ZC&4}IU1,4V8'?_J6HifE.nێB.\s4}i=6m,S+l 9<:BmL%+¿UM-T2ձ0\臓qޓ& a7<ͭD1A=HL4`T~)dHCeRMh uhVSrζ$# !e3s(A*1˷Im_*:W2|18 mx+,K+0QLtlh1=ED/[ssc"&iJNj-MӨD^æ$lbT5;`p]qT] d^|Xh$lK q?1*}@TN{=?ɤo3w%We`Ti.Tr%LW5#a.:u(po cDG^U_lggˆx;O`ߙqFxOLDb-!j06R39*iBn+R=CAE';_EGS*D^ף 0t.xt3$ʑб߹gm۷T( 3b-e1!sҹ/1)B6,$eiiE%cm[(sFpC4K[`At?ZYr}ٌ2 ܖׁzw:\+qxC'W.儛6'!4᭔p q[8MYw|F[ODervn5(3bc'.DŢ#Jq!d k7&Zf*fB-aw?ZVd5ۏ[0?ӝ@6-xT7#xD L&`;d!>zMotVmH˺dőiM]J-QPwͪƝpW=LzM>տ k; 3<]o}05V)<_s2}ޱHBN}@nљ:Xϓ)&*f!Cs JV-MX/َj0Il qQ-m\ $4Ի O ,ȿO() 6|ڮ8Ԥt٘ chP˲wZi9|xu cwz'({}5[,/k@ bro?f#֕<;`ж(ֈxPt@ g?119d/n5fMmZN_t&ww}7(-18ʏ%^B$c\ee̵͈{ɭ|%-$ά"$8㜹c'm*.!"}+kwnN#Xȝ_lv>,cd6ʸ)ǕHAahKVrxA8{}(Śj#0 K 2QGH4l5KwGYϿFRGYo8R}?5]?GaH8sbzo ^/2 ̈́|*0(5/5$ n TbB RUj_U} ?!H7]XxZZfhJ 8#Em5w6ܲxql2UIt0#6EЗ^'rI <Ͽo jdsv%O[.GG(n[wZs.dQFF^cpŪ / 0p'Fq/DK/}h5 m%l {[, _x*ccw"v$sbS xJKݐ FGsیYVa96/[3iJ."@g1DR$Q^+Ti}Mh?cHɆ%3'7>DA ҬXYN`؆j'0Y֋ $km'gQ7Q%R(3i>ov uI7zA26e|zN_vK;|PWy҉<bH0l~5%vd͚cꫤt<&>ѝVkOQ:JnR/U{:=0 X':1CnJZ@ǹ'Rv &d0eX._PG %웖? Uh@uPPW.|iFL=EK`u~G@BR{pj^]Er+VoRd0Q) ,j1LFbH?l۷põYWx&n\MUˀ27bg)9`lX{B}Z- >0ʼsrEi6Am "1o!8>₿hh҈w_7wv5ZDہԡ KSL8tA%'bذa}b";%é8MH|@[Y:&Γ%9ʝ;ĵgxVHt/"XC>8Lt ݴx.h^?BGiڥT{T ՙnKK{^~}MBXn:<#0Zf(F9PgTql- x|WUz.ֵkM ].ઊ7~O!+@>[{|<)L &^ʰW#r,uVJ䷘8=ABK<o CDd.K-ؠ]N;%L"|RގJ$޸ƢYux]2$qWZ,,8/Z5 SD.4~ #8S$itMc=:#<(34W$`? m6Ϩ皓JD-Οk%fN?0rkC0K0B7Sз `5Rzqߋ)uJD؜TZjY~r?u*I4Z=$KcNpNė2ZV Cߡr>"JNxrsEi~$$,M}G@/t:}ެ]xtp߫bڢ}.wq5̵G߼i`V}!ޒ:%)43=Ip/ݢn~Qr yzvQ~[{9ƇQcl4ֱ(bhm{~ ,4 ,(u9#@o6Y?heϼ1.N <^wC^FWjkw26h),B,"2IN 8O[Hre'M:B9Xy@-$&i!/>QfUmSAw6keS:I"nBIT{8$'-,_gg =ڊWLעN0<:7-J՛Qҏ2X-3YsiSR?>fY Rr kkKynFoB\w4 JCz H MLI3 L;Xbcذi8c0 <$_Y, %=y#ìbr.S.`Pc[G$>k߄ʓn5^^ږXgn+Q>(Zepxa`d57 fO)Iy1@g *W4vvH'>|L! FA\؁9bՐj6p $I,L2exgW~2h_`$wgW-2MN4Qz^Q?-O`uE*/&ËM TmJ9{;cOl|FjΩ@ GfNBSj`]m|"z0HsEw>RamPjʱf NzG 7L\O88ʘE{5gmۮfq{Yjɥ'NJiqU5iVrU}y.ejlcOw K3iIR~wǔKab`Vuf#) Ҍ+?HعLĕGBWk˵9pa ~ l 5P9d <I.sD(h'_؎5wp*thOP 5,{5M7zf:wOZ9q?CRC6$urn?gP=$@ZiM:d 6lyN}f@>MGX*º8KXPIsFpXA 4YnI1jrb*Bfd:.5 =ӂ{@d\Co90fVУ̻{4n! 1[g]rfMZ< tm7i~8j0r-禵ZrF/~yS.H)Uh(dv~(.%k '͟z~KǾo%"IR?hfB$ƍ_A;bÚ(;9: +JMKMaBwSҡ(A g%6GG4+գyl&;nxwgזع\E K(gMo2葋z >Y9鼰a/y֮oS-GLRJ]H,@mD`Gooz]sr"(65nЁIr;ӶQȔ>(:v9tU&?a0k;icnߜeW\6 1C'}Hc\v}"sn#':E%tL1'kX׊: u2(5T: NiCD1zp_s3i$e>뗂z8UUbV, ;~0AJdz}8F# {?kHz _ ; .M{2UU̧{X욽@ ~Q/[.~:.PCs`9SziUPh,!"(!.{G'Ln#2WhIt0타  L4E}/$#*FÔf헰iQ*=#zm{H](ȯylbpR;27)9˶?#u^Zq9nm"ǘSpL6&mWpfz!LE|x8Ɔc$EL*;lq(.V "z25ݧ~~K$MzOG\Т,q0_ŅYs $GxYSb/hhn_3P^\<0bqjl$uQyr,qzeK*]pvU|U1rl$a7q*OG,3惆g19:[RڄL4$';xm>a]i-~yû 4I}A T\ViνL= E3_Rq*$@^^OƖ9'ƠkWfR)l `7t4?tIdP Qplӹ[;gӽіdMRpK״/,Y WG73[v``eƣ=XnDZyqޅV };²Œ]YP,B &:4* #V[ (1@}:&,hQƩ1DB(hk-`} 2`kFC)R!5kK lSH2:5׶Ҿ  蓶Ï~em)+ݤ;!@pew02$ZRZw`Hki U)_HpM!7Vr@'Tpfc.3T5©l U /0WqMth~UwB²'z&^|Zj=)U Z=6(;A8[ doH^ 5thaad2+GL=N{?9&ͦ8̀h=XbY4| l2UGn9+9SN‰CBmвA ,$Jיִy5%E&Tb$po`8+i2uUGNI`H9N 0TD (Q+j ,h{H[ أ4C _|͹I A$.1dS}yʞjOw Z>Ӯ }*Sjm/c3K^pPҥQUYЪW_C8B"D>"Yk3T$9]:}Bֱj1?3e*}D)8'cTLUr Uќy䧥R%o:r~3$ ݄`#򊜽aM1ӎK] 3f i,@plBPPOeߒ8"2cGD . ؞ i"n[~ؿ|dZ^OᛣfU2 @LXW5׺~95OG*ҚO>-2,nynb7d؍ VqT I8>:#~On $Y|>MkdU ETF`T(RWf!x.KuāxKvYDIr&r]r%~kY ^ʬR`քryHM#zرÛz\03ZQuDKpy6*--8*p\'?G12ڈJSA fOC~%FpK" Pݤdhe !> Ǒ߾%W 30IqAګ*7Kun~{Ն ]+f'X0牮j17j{/JP#, ܝJyzVy0b_}%*mM^9P ~^ڟ[;! D>\Vډo߾1⟍BY)j7x~N2SSP}IGww,/+~mo&iVMɟQH  a/8[$`?ֲk%rշ[u/4BApnEܔ/DXPVɅSB{IYyB2X SIk䖥F<6Cqo]@u`N웞htO4kVK?|e)Br}8/vޘ!m,8aȜ8݂Qx89,tv*'#[$().|3 5T$ť҆_.}̙Nșl,~jS~WR4qX?(^k.jW9ڄO;[VԲ'Nmzjuq`g`/ffQ̀BgJb^G=W,h_y 5&خ<gf:=oT(s|#dn gڐ aѱ8}sWΙ,M5jљ<܇o;qCRT8' NArǝ(? bZJH\."oSZ,馻iK'  >K:O3sML7*HTudE ib ٘ Zo)5} d,ݔWX5QT.ńJ ff*Pʢwc[yWDxAc=v 5T"_p/&_b#Ci7IwE"嘛KW?'VOzSAqB/_DnGІq#e`L mbV˰puB*nZ <;bO7{gO tAtfh y0RuiGd8LqCLFǿ[~ڜ3#$-,܅3z2:,+SAlJ&.$ Q [IxVLq2}*td"1k#*p0: ue>&8R,A W#bƊXոz΁_ 9 BaܠMS^;n9yڣk9ɣJ$}ch0.v}`а,ʭP ی2'dl6{>L3}>%ѵfjrz)T5|ThA19 FÙ?.Be߶0* kwє=gQI_yV)LP}/>$yKrTVoH4@"*BDQKmD]$-5%6$tmKxs / &dslu,k<1Y_V`DuOч3 ̗:x U1QÃw޴H.z7 b9\g'kMdg5X6{R8uk-p1VN=C &Pa5hGfvq&\2 FF<@nnWrOh:% wͪ?ƍ9T`2Ņ(wz/\P6bsNOqcEQQ T#UT)^L.zzKH_nRƃ fYqBB1Y[tF7`AbR߈ϟ͏ƋrI?~EkxH *e' ԍ}ӆ8ѐtbnD uT̐XKS0D|w4Z0Q])PF{zowK]2d" vDY%PM'eOD2WM/^CjPSdNY,#(${ jȔvkrx2Eߴbc aZQg&k_Y!Ioe 'F.™9qɺjM w=+yuc!˫g<]G D(eT:Еϖ dRFnAjغe+<Tb# 5&Э Wq6NEh[A]T@+Kԑ=ϱw {5hxۮlaB|9 B w:@) s>:'>qoh7kSjG5|v%4RD&&Q:#= ͋vx}6d"uXZX1XDta/%{έ7w(YJf=SP`R8?jv޳fbU㺻T{Uw ^F4 zVY8+! A@.LXp^v4@*}9W,ۘKB]@׋TUn+GT)F}ATnt456V[Jv;#!_E爵5>Zs=E?;m-TiQ"F \vd UMÙT'|yWU 6W5 7~; y`f>SnD& 3ij=L^vVjh`3`*"g\}z@cjBئK?7 χx~Mbӗ_j}C ~h|LyPլ~ n&ZP9NWm̒# %e.IJne,^/6?[4@I g&b3q-zӐbNF4xVm A9*(T#HѲ0z&ZgCsw!MՁOg_'n(t eMbPp [!kN*ϟ>vX%W8?Kp/%hARp֧aib'15+.k/9C= =}3107. `^ uxЎB` igʚk:D$u|~nCU%$ p;7Њ/kd#{txD*m*=v>vj_G|ՙSVe 58:w턲h +ǮJ]sjQfju8漒juߒ(贡6/9.wYV{f= _|}D GTq&4uè-*cV`0r |l]HQIMSWk\fဌOich+.O>x4h%lݫ(70 _O)GD'x~{j4Voa *ce/Rԙ[bffQQۻh5LP$fe)H>v@#D"1e0Z+QLZuN*}fPTt}lo4 =2V2E\gGot{9sS1` pD! 3LI>SZ Z{(3NRk|,3Y+Ra j&6-֢>Be7qh3jܐ¡V`SYm+}2P<ڀQ.qǍI[IlSb]`.]=a{PE +*D7R%]]?L(CnY$r'XMl0So,.=ch+[P:?]d>?#]uv~# /.;QkD![F@F*QfgNٳ\/v& @M:qok-l3g46T3E#܌-0q[Kw{lvhx#9ਣ/FGC wkpډj'Z WĶ[Z֧w_: ?#y|ͺN3ߒ[@UQsUcB7)=ssدry:hߍCİ.CۚxdDNF`Z3#f4 ёsMh#аe2q)XXᅀMwpشM @ᵍ.ȮHq]EiZM_G{'Vte]veilՋGzxad-3_ W|(Bg"B4Dv(mO\H)e3dJ4!YJe{?2~O埈dr-(l!I{^|ûd6 8vߋ9,:c &ṳHX2 6ډh0%$#ƻBwS2qFLR㺌*Ee'z[EN9D¦WB }8=*Xt?oړ_pS륰Af1>~N64'sv~MLAf>Qu(mA\*t04h-{ kA4<壩JAaiљzUxy߆*6XŘhjb|脉6ݦoc,B!aT%VϞ;L4/7(Nό|A8U э ڡA!xkSE6fN,£[T[$*d$j%xםd(K𮽽7]}xלXda)Ѯǔឌ.66Zp_kG83؋+fvO$Hڂr:©jfg; esi7Z(n,DG6O*HjnULj j%f?-jmpmxre֮8).\,V@8 /f2Кpm9T:}'p(㙡9c ^p ^}5~0[|̔D7%牾J&َmaݮ Ͷ㩎/;n!D#W?_BOƆ%׈dĜ}_bL;MWW6v[1_(H֓ؕCmL8嚱-+]粁NtWv*U{8-SKzdkPgMu~l%NM Ne엖O.(S2Cz'[ seֵ(614ӡPk*B|іB+kՁ3qMEr =%ޡCkMS BVua^0dkk 14$w ٽ1G ΊOZCm( H۔ZE?B n £Ղ-ZyƘriu8kVY@#\.r%w`L{Qdsj'"sգ0?U#ڵFi]6B,4 9s1Nk2G*Y]CPpbP CϝZt2Zs@6bmξD&L潥CE8%UnŹ1h㋼g,G\[٫?Qݻ6?r):GTn͡RNsb(4ܵ;O͓<w[:}ʝy5rm %S_By˝e_uai& 2}~Xҋ^|ysS- ,ؕ޶ љRs< $_V`}QZ,Dn*&.%&Ӄ{MH@7UFMD\(ˬ/ 8wT& 3b2ǀef")r= ^ (Bj7d$5k^~B yѲ`,wk3=Y7 _.-Vi`}$r42E[Fb}tV[PpW"tjJd<:Oz$ud#\cߔCEމ7 ύhv%*io<'o}(ԷOq ^/ \1ןB)C;$xAӈ̯}8m{MZPZ炂QdA0c4Yy&vAóPuTZi _alî{,cZR rR1bXw+Jg\.گh*p\t**YCr8G&+.["+HʯؠhGnA? /C^Dt Zׇ@>疨h:Ztݱv<tsȇV糥 mg0 N8A'tHX)rWj qdWÐe7p!\p#[ϝt҇L 7$};17( z[+%M{6X}{B%2(-BBY_SP+p0k'*EOҗژ[J2~ : _lT Ay΀<("Ugi tʨmB`V)+De(!_u8}:Ӻ B;@a6\z\;.  fb4X= dܭXZ&J7aIqªmؙk%x܁CI'RsNjDe\w;y=\5n 2 fHk Ysm hl5@=)PAPx2ie_ [q͋ayY'OKhcs ݈# TݩՋ3.GUGy`g(?{:ogf:xbȇ7z~\u8XgRVD#\Nv h6P3PK1yf/^6ج+H;u¬C2 p919ϊ) .Ν 7T>-,.WgL)O)]|Q,/!H ֓P u<_WGL@YE3k,y&A6~%!()2i_%TZ0>t댋2=23-MpKfŗPMb%r0Xr2`T2qY%ҥ:=o3UU`IԹ]i6(^!󁡭0qC6qҷ!PB N)]!ޣͫK^.q6L tԛ9iS,puDY8{0<#(i|d"ᕆE)@}.A|{ٓ(UQjMdžr҄>_*핟_B<?<5Yz %Rn!. hEFmJB s\ rybg֍ oZ`{tVaE أ*P6jtw9&..Y鱻j=ܠ#~F~E܏˹zN-o8aGtJ5} 9D1Pd1`.Hh}l>" $ 9IU[L7qH;8 F g`.F/tJ?%?<L|{ FiI@O(ЭH,0K- S9;{1 XK{ݖKhZ:MFx+Ve<>/-u*Q[IQbwkݺRg4 vo۶3q ڸpuY>k`"֔Iz.cT +ꕝ>h vHGϱE~t׾ģtȚh&07T$,dD<|Hc }J|KۢވzTLeѐ=̾_$.QqZ0yY6ޭ@<y9YPX˞Vc ?0dD @T 0J%z6aΉ[W׀RQk˼;lPۆTbː~ǙqRhXK%.3v$VU[!];: g۸4u$Tƅ7گJ?5B`$Lf:$zA^RTYLJH}{Kpf]g(h-wȢO_k◜ NpP Wc&*ʿcZXE|nW؂v|)/ؿӽGhJjT퀺n/4&w$Vcda$^)$1*uͥk>LzW}'qw/S[>XeIZ Se>>j޾VhX%;%I%oaU@ S W>|h9KK';XzZ>FYE:%Nm㦞ibtݼVˆu@iθM'x_?\< $c*-e/ѡ[Y-FnYq(AJa=_} MD7b$]^*=twvS#!MVcupŦv3thD;me^mjQ7'Fz^:%'z4UriNF*O2ao W9 kqyz8Yw=!g zcyc *fnM]b/"%=$rO~K+ 2'Lq/֤h-E UN͟5D<!ϧ{DrF9:"UP,CVOd% RH@0+:Aò:<57gL~2D(i&y%lA bOkvlt ,pTr7 4C̫Lnh `~1ǕCi$"_f@J:w{luWU:,[^+f_9 ^r4dD'٠CX 5 i(;y?lm2uϞY"#ܒJ dzooҡUk9 7ElCXWɟ%7shDUVuNn_ í1ص*FJf;YnD.[bitpm.S吇7hTynq VAI f!OTvY1yVaBsÊǗ,%Ϳ9md$By긨useJ.F&bK}v;)d/#W= kX05ЅQ<dn>x'n?tX{N/? ]w^NB`)7_ y^qD!V/oFM|q}br-]?`~k;`Ҭ;9zHg[5_KYV78 ޻urf"!Rx@}ɱ=Uw,'X{V#۹2Fk[r|fDڧ2d~abiԍ(Yp.{EG$ִ'wA+Xhnb'S>֚]Agdx* M <0Z>p/3߲'I5m3k6ya7u>"杂4B6FeSSx|/a$j#c'l) h fo~ע$GݿѨO09wM9q\u=)>6Z䛳^BJ3BLW3PgQ'mq$ i5D!8'Z;9H ;4c*%Ch!҆r+2M';J"πd'Q'4{2P.ХeAEqvHN$lKy|3>96`_vLo2;`pES_o s&`]Ȯq qz~źӊv*f1CãC٪һۺ'Q$&WXM޴#zɵTIt9]B[)z isYpUܿ*Z&Eqvv '~WlМ-~hWhv!ÈCy+/SA24_[;SP'Bp`t.r "Yotv:[A-yZYk`,ά }45"hoK:c 3jk@h!Jꠜӊ*Vkšڍm1ˋk DiyږT8HRΊV -@97v:ꌮD)ko*2&{.tP1t3P͎/u8<Hx fE` e=c ?h$XWx{ڛ"7dpׁdh49 7̜AX* DDչSI+WmݼxЛ Oqd)^ ";va(Cx+'2<ԫj~",{+,?6WI./eRc(fT)[Duۊa"r K+pgwr2gyb;KUoV 3acܬPi>b0 |qɹ%\jC)gK}3^ӕTwB{L@<>0@٫kTem>V=X&槴$ȅTgMV9O{<:+O-P8e_e5yRtc}$L8[_4E'lu\&з*-vG;,Ҋ)<u+wTǭ9u)ifB;z,o| &STebPr`|ZWmd$ȌMm;Sw\u0ر4" 2t'HSAn;=* ]ϊU&Dj-WRMJ$ac%]kYş? ֬>ށ. Cmqn> R!Bԙ3ѡC؊b:&,ߚ𮖛$LNՏM*Zn<.c۷E G©) [Qv/ףԁ{=[x` ; A: Il*dv2yh@@ Ys!˃Ȓb)~JF-r<>?ʗ7U˭xd؝d=#1z.m\&u,|M;Y|/| `8?zC՟49E%5jNOs $ҥ ik¼to@ޗ~:=e5!T ]CfT7wtYW`́&5P5{KM9W+oJڣA;$TZMIrze/A'%&Oyu8X4qFޔc{ F9!sPwV*IG2Yz:s!E'F+ȁƀ'„Ea 08SM]5Tݍp,ٯ>@#Ӄ19oT$T*-K >M8ɬuF'nGJZAW$k a Nml! oH6uL{lz`ɬYyފ Ey= TC-Yy6B'HZD S}5FwTj%S"EkHwo*$ihcv"ATzώ^m{ D[٩W \K1NgVI,=뱈Gߍ.vG̼XT" T=C5MR?kvt@ݩX3>HeAgގ)BT|Sa:68=HVMwZ^CeY欬9v5ژ{=1rj憰81p]͑tԼ[Lmy\y]L܁w _S|V} vpKXB`+@rxŴwGPԠ&Dx6br/r+ZXN-Y˪:z|tGYRDH濨"XA̢Θ}Ts)>@S ݨm8u3`Ĉyȱ+(l$NEc1T@l'Y)T-b6=o;ėgQj+ \ѧň~?/VYBoiT`I ia4v iy<+grFP&B? qg@s*Zm!&)׀#QhtÃ_z!оLXKw_qX@=l"fr=Tx}B0rAXw?z"˝g6f|4%u|8z{xpeƱ/}ˡ bY1apzQzEV_-ك12czS g&bL!p}:}k:aӦtJJxS[ ńѸbΡ8LS9歡U@[-ubK׆ef}7EexD0ه&z@>ы"U<>8Fe;9:Z@=ryrkYotMڤy29KM% k+1j_2ϢܚN|Ut"e&E[xaJל{MiC,@G683@)^vfỈ=:yX0 䊴ۧ(0TJus%)J7bMia[W1'Z FJΜ>,P݋S}ȏתŽ]̈́{pZ o">spGxAI: R,3QŠ<&\Œ}yoCbH~JЭbV8/@ cZ M=YQKweK {9| zc'AlAk$DE&gϋbĈhuNՍѣi tXOce; BsrUd3&F^ixJRhNtYIi+ahK ȌW`oOu憠YWb %:c d0=TTn=Rt]YƜ)BND_mqbyB*AK/~ Gki ک[}p=vRԕ 4Tb^-$F;`]ƞ9cʗF%.9a4beԫye !4!(hۼFnЖBp= PpV$ڷ+;y3Xu7<q1+ qE!ʅb(su֯ӊRT.w4N-ٲp(xwL%J0Gx9,,[(NbJ ["9ODGζcAMvʙ* TFdA$ \gn~lg,|K|: t{]+9bTz'F2̸@i+ϾfY [<0$HǰlK ^&߬90LԩXied#ΈH^ P8qm~qOouX geQeDŽ^Ar"WqPZn݈eRE  opX)X$  6m:5ҒV%KڎXOCHXEH? PQ=k/㛦CXlElqJ H!3>y<{;n>^ 2vc Ԏ,,$vۗv|VQ}B3CepFh(]d9W k lYrN0F({և[Ư6 p[^Do>(o#[Bg,tN4ݸŇ1s]B2جLP?3:J^'kJoX6Lml(q~?*61Lvj D9{$*(pƚ9k{ujm[THt-(v  ɸo2{ |8w&`>?1?Bgdp/ڱQg7{)rlx>fRU._L!<1ntrma*BW ;j}H?1l7Bsၷψ1?0x"x9gU:6{L+Z5?FG s74-$@Rt@='q)ti',qIdy1Ip5V=p,Xov .ԠН!dNfPm7vܨk~x<60W,Qkda Τ+9]`x>{րbŷ)k vfIDUrET@=pV A&T[Zo;}P}bܚEEL␬گbW'p1a星;a]fRZ*s]0%NtB&qv`F/9e+sPqŸ0Z:-3ޢm،7 F׮3]y L\8M罐Z# IY`_ҵ%sa!B(4(V`y_c Go=y)>t`|5-ܾQRu!XQ`J+7'} ޗ󆱰8 7?of+9J&!&3B"[/doBJ$]L"bn׬ hN+.q!Lj h%;J@iy-[x5#ÖO0d?N)XRiRwB)T9=鳢j0 H_M90^ߩϸ_^h&yc`^8,-XDջ/``K@25I^UWohǧK 3-h> }'`B;S\:i٧H"PVV%eRY)Д9y$ձ`a« oz ɾ")"Zp w?Nd'e*1d\BrZ̘<LHGMKnԄ unOq{Uݔ[SrmID (zlR[cKMb7uTp(1&! klL!e:SBbI(Þ/vJAm^hї3 S6|G@i?).g;toA1ZmK3d:38kh 2 .2t,O[NN̐[VTVJëźPf *a&7JKri` _/EEQ὞fa__6NCp%{o"J\=@=6FTGkQXN,wGip>qPe@rL8}FA9-X{rNn8F%M/;DWo7$dܦXë͑FeK~ɗԳ7c"m.Nut llF]8++Luȋm*'GfL|rk{T;G6~%2)!:0#Eݹ/Z% WET@]HVݑo^ I '$%C3"euKxJ}&y^| %Q<%kɤFޤ [˂aط3/fl0 z=΃!Bi]2HgRҲH?@x.IM򋋈SSs+!}!3İT CWQӉ}Ooyg>oX==7.>`TpCLd zB?c4od`΋'g?q)-OO.ywSgXDl4 Hpzo1׬} ]=A 7x0D1Ǹ7>Kcr5#$Շ]iU`˖wjFllT^}@G}*jHzB'0ސVwV5κ@0L4@4=oRbkFDmDZy>cH=$/t̝`)kjt׫,ct`m'_no~N SbG[n{GfS[67-_T{f-(Yr{D<@0HT@~>M }QB}^~o%93^G-wۇW;VF׎.`e~p*(+7Usl廉0ȑh(E*p1ew O~(ہkEzɒP沦r$ ѳׁYX3qo5 N+`goxå$YtItU HwV$2~Bm"LB)~Gp|wd5]@v"1T˘.ی [vڗ;(4ƃuǢguh0UI]te ^_%zJʼd(eT7֡ ,*;)0XA[sEJL8p3cH[ &eyZ_v 64/QFkapRhdf4],9{ ll7mNG`tS16ve1*=8;gHQD9HpG~ Ed *!xBcb lLP{l+_ 7YC<*t()j\( s6-$); \ >R}6&6zFv6pM[rHǺ EWN=>T7+.cZYNBÂh ZRXezʣ>fnwe*\<*-U eo&Ch2>5-4SKĮKyJv[z«IsD*eZje&x1]ܢ'̊\~\5?+t3\VY|ߴLW: iJu<ٴҫD/]wz β}4+EB\04&s?S?0pX2I/d_ۘy]LֈVI;gC4W͑:[~zQN` ֑bJf ?E=wGQ/`D;hH+=(4OB:OINЀLS3uF;@32e! IXD:.[\ x_T.d͘N!20tL Oqb➙jlw"n Yd !coļ”܆UG#gO;upZ} $ jc*t&Hb ;hKgw,-U00/\瓯*_msՎ1$)I +$eC>B%HQ5U`fsrl"n'rl2Nފ(D/{꿩qJ:.YMnb'1GeH|q|x*\ _; "ח* ^\8@B.%w]bdYaKqQʿĤI=ΑQVGTY%ipY}JX|u >,c`7TgPɖFG-)L l;FcaSSsN!xs|vS)Lhăd ]ÞEe aD>Ѐ!4¡96q_o?Y Ɇl(r|4'=WvOuEQ݈QŭS 9VfF[JidL+D G>ȯ 16J枽hs|^!Ŵ,!r%8n<I`ѣL?Qlu3gq[g [)og|\Eg@-)z^gNj`OkSD4، mx;3S$:8xʝUڦ&ϊ}z1U>788z i~&3WAo_L4٭uԶ~pyҏ?[w4u"LX`a_HFO$ @0cQZah3RE>*1הAc }T PO.+oc\J84)A a&B,}k/pU~tm: [[ g#ؔtqVJs9ΆLa`)ժ{Pyw될l(vqiԋ*N!)7a_,#Z\//'ݪH`Ϣ1.{Tqafy"Z`nk݀8Zd :;y,P8&ۏn.'[7 լMjP2ߛa[݄GU@u|uӞ\r x?} GMmQ,jɱ^ȧт\ȭ>:[0wSm!7)S hqqnC n85D5 "nN ܸf6edhaUIқad d74k.^AįP路֩HL2su4$yPw'ҹy(}*qhٸy^˘W"m7VѓWg ƅtdCwOWG-V VXg&oF[{h$^F oJUΣad-u0,z/knPm{:@SR/Wi=ۚ$TG_+ p;2<חxY?$ı ތ}ʾbzIkT&Tv?=s \r[6B儖6DhFwG|p-U Gv˷|n]?eI1x\`AR%3v>Cx=0M\sBұ}Ja{eFE:9MZ$HNCz.\d$ +vyAH߭Ͷߔl e8n*| D#53nˀ粹-fh=!&z]r{MarUUq"D.n}Xŏ y4>E $Ֆ-wW~թZrW<ά[VIFnƕ/ !IQ%kvW쇣3^0 KM9%b(Kp_rzNs۳<0ýH :[[D/Bvq1wǛUT?,t ك>D1wPݺ2c,7iB^rꦘDvIZCWbB3jmX-v c $DYb U81hx#^/$W///EBP"pTՀ#ag"(UM9>dceE NrX1@DXЬ˙g%cHd~`_N4J(( 8hC(.لcE@kHjѫwDegp;@dJE0@jdta ^,,(Ou6ǒDͱ?cpeSF3C x3 :+p$G%⼿Ϟֽ[66ɛpAhv)CkX\tֶ%] :o "-ME.(f{\L񛨕>&&@@_X infMs_(J[$֡1Xt~˲%,8o}?ȎV8­U^HL5ya #BWd< ]0ڱ!Տ Df'CV:o;ñ!;aq}j3OOSWiABIۙSYzs2#;fO%%b3 |;Y P?kRɠ f~7F,l=|*X h~}"6$B9e\P\o ݾzSǕfSѕ3/mW*lt_neɘYҀz6f މ:4Oйՙ=6$$  y;[?ȄuUH57="+l /T̕_=e9ۣى݋;k[64`ine<֬G lsFfƈ*V{`޺6 |omLЏg`79owȑDnn;3O\WTP_F$zYQr6MF`HٴJ| ؋,{xS j·Gz nJPX)3aЕlՔS7 XIJH8At6LvNO8BWmʩH!`;5xVۼBK_UO gCG$W|~$A'|–=uQƊ773P9!dwBJDE$uJ5BO 7pfm'Ome*zZ]b1߬{#e9G]PW_cRzBASQsL؁"3f'=_Ĉ?uyeX\N~&Yo`5Ud].92h<gSz 隺8J|ʿC]>=~%B 4b~)iCRhOk zb]d*zD nҸ-s m*KdcGy/# Sf%C?d&~hڜvĞ0%+-NOԀMõf:C,za L"S3Ej`a_T^{s#ϖM-`:7ئQ#d…fu?~vlTB&}Lݗ uRAob('y,Xb+TPy{>|9DD`daX6KAw-lDYfM;;AUyGlqVp5Ap)\ً$,1 i/2(/e2e=ؙ(X?gq@xN#d=qȚ/X =L6:DT C$?u gp.RC.U8'埕N2mrADzTg6]JykO$:<#.&\du.j(e`:2[CtzWj&+WeۻB)=f/fZ8Y̪E6BXwO;j*NHIZ]%vQ5q6PP;L CF"H/{ )`*_+9@ok}VUЦ\F6,.<d/p*^~TӺ&pJј63#c>.$zClɧ[2'ʄ(C{s~m^`RUgw_'MM>u[Ra$^,}coQWB׶h\`E2]?W~li`"[xefUVem+ݨ6+f,YҎ&lyfTn~,K!Aiz>^v/&\=&- WYSVvUz?s>LSXn1nD[ŕĚKG$,˳z`Z,Hti|/17~'0K0@K^mw%Zu#ne" яg Yd.HR 'u@#z^}$pebQ2kq/ϐ"wK`(7+BSEM`E +4_0WtkZ}T 1KW+a;󲢞`]wFn Hٽ5xƬ&pl*Gﭭ̚;ʫWL5rm/oW/`'3vƢJ%3H;|BF@f4.V~\kk 먲I<%_a$G,F߃k>Ax)!}VL9:u!O)߲5TAUf)O'=Y~Ē푡|DGhkuc2jVMhfm(*z$)Eyv#π2UC=a=AVڽҍҚ(,Y6U7qlhe^5Dn͙tҐ:2tK<r<ǡ;dit;n ~uFX5F훵?Wް6%^ytAr( f%Hum7lhuZ*LjlDo2#/-+2iEBGΝ2g(UkPd(|*7L 9$l4V>nBM>56? bR WV7 \Y:9ُAsV=ujKT&Ddg|/[7ѫP~eL62dl?c^KǓl;8ޫ =~:ћ Mojș"^j$E/|{͚1y~gL $+di2PG^Z9b~u%i@5}nVـڄnk ۳ay˴DkJLUN,Րs@JG(8>\obls;&?_Vطr߻|R*YZE[f5U(PoB o N<UOS 1DZCsϔ plh߽'R dSIՐxq o}g%gAkWn< ld',;o둇4a¼5KQlq='h'hȚӺGǺ}2pނ˯ONՅk̵QqλpUp_6v L3hƊߘwcPX2m!zC'&TdTjը•p.#^2)S]7yS"P m _g3_"Uy®QvMYK251*PbkIY6*z%?X[mKIǜ% =+lg^C HL(+7TrI504zoJk&PIrݜ,XLd1;$WNps+_u5.MRI+E&z=OLܤ8gkhy! Z+{蔮#R{94scb2mO!AlĎh򿩍 ! ANlD):*%G3#R*/G6866E}Ip=2c0l8Q.( KoT9܆"o-iQ>Nq#CS /_UVtbsA1Z;w=VM<{qA21/^հdFuDo01%y9 KӘa_2\eVZ@֞9?}!o6LagR ʵ AuT#Wc"4@?qMo@m~#zRpÿ<ద[+cBzSi8zWhu12kQYWBrs` yXR2CK3ƀ8xa8$MK>Y4OП[U_ qAy_&Ԧy?pݾeA|B#i%L0]WUL]^A+X j5u9BD&D/M.^D^;NtgRJ~x(#6KH%F;Yh}OzXjlx%u[d6:]6wb'FY >EǓQD9G蹿rgO5=>z"-10͔]"hr?Bza»["9X82bQo=3hF2:zlkR`Nfq?E,6)3/l6s6.5dfF$ _>'әvK4뚎<,jD?`5ii=GJ@"2pG İV% ώ6Q_U)X1)X77=+fVGfE4"r2V1Z4AA̋ D8jox=OHIOĶ{FP\ O| bW5֦s?D$"|Xu9&) p+!kBA{;x=<P˩n[GqU&X6h9O2Qnhn6fP9Gg;y/bld[P_#v(eڨΏj(dc࿣<diX@'U89tɂy$ =KnS4C3-''bRz=eYˎ.a ^sn.bP^^fO :? sfEC9^ ;E@#V8&J䎨^Ɲ>>_6Oޜ3V82K) wG.+OqUC:S>(=j{9#Ĺmh5$VW2͠ӘJ3OQЖ ,tiJu4÷{D!h!(`d۫Gd"g]E L~a/JcoƵRꚋdXf|.hu2gou_ ݢݘ MWѣ=@v'^TpCp[]dwmG 2H*,1Zm@PoXcB!?׀жz'Rػb̜ TPkMod^Nu]fEX> YQ̯p:oNʙ[@#J@QroW% _P7Imlysw˱Uhn맥4{ ̹AnF&z\Nb)^\>۳ ]/+BWI-,NP0V ( d#տCS{'CS>4穝YͳD߶:@w;Qh,e?ĕzljlf VBfuls7ޒ /Vblz/ȎJc c)N]2K}nKFdmm|yPsq3iȄ&F_~ܰ\>z,!лQ,՚_:]DleΤ χH;ۅ?L~CiwWo RE (vj}8Mg<;UB.?h(Q_oʽ]僀giჱ%+yz! #DeG(12ꀰc$+5Wu>\ixt{0oc@Q%rŲV 3oxcZsS϶Jzj1GzWkʻr6rE*gdRCh99'Cum{*ӞP 2$jc o6 sޕ!No4 QM*UFqs]pg  3R^iE>0%x{SHd5⟄.~wA(oջv :Nl/)ߘà ē%03<(-J',ԏF|[(^3NǕh THr]LrFM . JnNtSX ƚ^C$QE۱}&807x ʣ?YQ-v$NHZez"O9`<& N3s]><*$ w7~3߻rB6]_2 *?BwhwRPѫߋLM۪>]磮Lw.sfܓTܐ0vtZxd8=jS+gyʉ"U#nKMmzNݴޓqofgX*@Ts"@/ސ t:TWH [6Jj|+[+w.˦fqW6zkoϸrfͱż&Hߋxeg]~e$,2^@TR-_|b{=]i $p-ľozլe B-_fLP}f%RT')mmYKtEրd=wuʋ;of-"qQ%LO_6z?zpL>Ś/ K)#^gݸ~?DR6ڝ.*Y'%Bmj_Tu"rtyČ,J|idcLg6:o|!3l1Kùf_L8K/0"V4F JW03."ޖKhDCғ = >P ^B;~FJ̛]c3Xt閯@7g\3FgWF9V߰,yi:`m䢁6e~YO,%SI*8c*0䔳|Փ4k9"-oQ,ýwJZ?=[)vdw()| ʱ|VԺTX4:${t&azY{Ty"ǷR}=pIؿ5JDk6C(T G6hW*Q$&aqm԰կ\g񦞵L=:솹evih+h.#iH9 ȼZ*GʥH77]v;rN<6[:+,[2[qv Q]=pϿjujZZتGw[yhq HSwC5S_< d78vQXQ+u\U壣6ZSF^ն!xߥ:`@η pca;^JA3-Kx"l3ͬtɼk_ά\!f"\Rzipf[Y˔Ie6?:܎Ӽ퍽 rʰDDfP2Zs*,r n^/!8 ֘Y].6!KKQ%KEm֛V_~-6]Ђ ZXH>dMU(J mB EIbA)5T}_ULFr}fYy+d9b© #jd+󖍯,]UAfĺCo 兀KyEulYj+ȼz. -&)L2=Zޙ=J}{P pkD7&Pϧh Rv-N'J8.8x4'!e *>,eQK_6d6*Wr &,ڔ"&<,~ƿ8".[ϫF>ۗyM'[vz$AZu`KjE[tN+@6V3o-Ii=p!|R3" ̎/Xw.::xyyw kY%R?0ҏy xI8JIrՁa5F@*}bȓW"bl7`Ois1$T3KLrI!VIӹ(AFsƵX>[ ]}q)d"L5igU0+ WHm4Lt*6@-9z+g]dY'k[Rqd}>x3AWT_Y!7|,k@<ʫؤ!Ê7-x&QLm$sV ,Yц/[^JKj,!2Gmgvu-/8}k{z_ 7~J NdJ1`~4~ UݷlwCۅa68-u x)&ʮ E*ltHEZЖ2#QQճ"m4#e+4FgǬ^Ѯٯ<&`> ãyI`u?0,RHxa-|4$ɟ" qm7%M}J0OeHhz@3@ȎK{=i}M[) v,XZn. C9:Ƀ B֥۾,9reTɸNg mYpk҉[پҝh Ugs 65ŽFMMq*&w5 U! cEi0yXYekHXkE S\WyKՑmd]=;7LK`^VgqjixlLF`o5tD?P[¨9S5ZsX B^ ⻨"/O>1"Qx,qObihiN/g1y)\I@ ?k# ޙGYʉZ8&Lۥ#(>%J(|>3eȵ̍coNY'3I/$/̽zh n۴HūM?~c7n io[dϬ8D.Fz?|Yͺ YJaV^MV.H )4+w7rYt-Zof]_eVmt"J}u23d J#y4O韼QI{_4k"v)# ٻͯ7 Va=oq? t,e >О ZX|L],g)X^DY%2۽O1nc0a}qBp @wu˭ZTZA;q@fLBSyVƽ|!='(}K~te$F a -wś7/rA*|݅-( ,ClHBnH2`"H~_Z8hӞut9 \vic`/rG.13eZD6_ȴ\Q<ڕۺA-#^'bj=tЁ\:4bq8T[.xSB Q3@Ă 8ۻJ8w~[7VW#$'l>5 {˥l+P!rkNb~(ԟ8M D5'[Ych.+X0vN;"S3}ÐO$TJ~*_H_Ϗ _Kᔘ LsȖáe(kG~#vt'+vs,*=pdOag?o-CG%ꪩ2 .@jzebQ_{jV7,y?xqzڜ-ϢϾH~&ob KG1]#R4AEa6]=Gf@׺wISU)/BA9vV+?#Sc) sjju2^B/ag*u΢園'AZ &ieټb-Қ|pcqycDzzgHrqۅ/m;Պn"BDMԉ1 XM4OTMG@k]W(BEu8|d@,r-VU1!̩^G+ByrLZj RQa I?L#N >0'Zʟm"Fe-}s^bn$SeQ֭-F0t% T#`p!u:AUYy6S5Gmq1#Q{l~?Iעo,J3%*c`w[(Lٜ+P(L-sӣ|_)KUPE}@gwd`6lfW~˝-p*l2"Eܩ kFPy QTm<843m\R<+"sM/ N_v_8*K9f2'+3lCF (R6r=$Vv#ּ?Yl#TX}e#)XcHb~{2 irk?]&Xɿ 2/u)vl}.< iT,pжel9@^׃ ֕L*8ARki>#yo 40FMC:_KrZӿyQ(%{$#k.ߥQ#o7gg>I( N̽FO%iEE`*b_Pn΁u[ajCIdϡ1{jGr3ŞԴޣz|^ӈ5wh\πUHBO :qLNH_Kv8HW:`wot?a~}A4xp$Fde%#.w.{+Wt_"0*DBċ\֐p[Z@ $׍BZJP`gߴM@$ע\q<^/i{"-XWE8# ֮f&-ZG K)T &916۩ϋƶ+^}c=yt0%[ L ֟ L(oxR#ܠ-Sv ˍdt>tܸ*D!eH$ 84EвіZ\íO$ɇŷn`=G߸@m2F7 v tfbR)ȜVlMSlg@aq)Ԙ#=*JME mq[qgOu?BBQjSYv+rۖuj.eڃlMO]+jU! ""05miH\p|v!7j&N2MbH7XvG;`0_ #I$Bʩ6诱#L6KEA @s.9/w}jJ%K$쿆w*)_= G4%^`@/c\ϨZ{t"Gw|dB~r|-VP$Y>_?9pMTI [v-qh݄. u73Wq`!Ae$bK p9`,_7rc3l9nY$0!<#Rs.aژI3˼a#Q49Y7E2GSۄ&J? nk$kb[#P3of2~Ɍ^:/qBW)8/.ʤh<49'z;+F♂ RjxZ ]B 3']Cs _oN|]l9UE=lG#`OÃ=촑4Qxp>EF<2װZ󫌤5i%3u^by%4gGР!k  :>ThmL9E- Vg!%Y%w_fB&O( {o.q8ݎ% AZC J[[rbrtޓf0vg0|([/#S̪t\Дh!~3^ ji\:Ō" lXU7+X_Tcc,~nC 6Va·ɬqIsM4E^`&1K&pݔ9OcʠD\BZ {bfԷF!}y^&Dƨ257ᾚ2bR7po8kHKFюhCˬ\Fji P+QR`KCt13pcPݚ|xhBhڒ6)g2M/NXm,0cficO?>'fC#Ɍ5sZNa'F`,,)s"2f4 #ڷBÕ[@EDW][ʇp=eO K52ퟘ*#<.0HMEtu@F۵z*BrvmZ#_*G#yh^]& EO.pS*HoQNއ,{fcj&ecKO?_4uy.`7y_ St2Bif?zGZ D-kc5^I0gW+' };bƹPrYlo\12i$؎((eJvuʙ-1]?W$(&j3Z Ma3wE>QG$SeC%J!rp3, w23C/ܻ:y*n|f'nMtN)Ypy8gxr4Us^iR|޹v7x eaV }}GQ_nxv$<Њ׀Sނ7Z]^I'Lҗ\lyI3 4`ܸY\>^Bo}ix[D. 6,տ@.oVy}%ܺeT (t#0o+( =3?M P5|'*ewz,lR 䮿 K(mI@/CG/ԢU%-tB֘uɱk}JX\{z=EPx.|؆NVdФ0Ր/H#9{]JmlQuW˽òfrL 6fjTzBB] C໛5pe(L-UqV} ٨Y>i]̱ۡ7;O`jFa M,q⡄"}4#~ ,}PGß?(yIϟMw&(wu'~DG4 kVӗש}UdMj(|Ɗ *ou$3"(',z`ڃL軼y+`<$~9,X p]d40}rwӜ7h@t,Σu"EƟz*6BSHXrdVz",T;K_MJGgg{ab:{!!'tŏ̽!>̔E7K4&MA6,c5`C[Gf奓4N DI[Vd`j?]#Z#`۲4!JiÃB@elSA'/+%yFqBߐnyVIZD1XLRUSZ4%zWr%qV:Gh"y/~f!r{Ɇ X5e FBrە4_-K} ̂4 vR^IRJHhcYU.!7qU{a8 m3{q`-k>b}`i"AfaD[&hl3C0Om{aT4E;0{~ް(c ~~!>ͫ0؈"ъ2!&G,"XZ1mrRqUx7#b[@l"R S$8~-f'!]w0CS"XФY H7R}:n W}F"+u 09XpX34? /x`[V4 ЙC ngâ~Uv4NKO [zM~ W]3MU7;EvFʰ~MJBaq;@/#k|3izH0P744ȧL IbB&ώ]=Y$bnUEmUUʏc$%f U Qq+T2^{+V[(1NøGY8Ά \r,k:K'##޲Af zLKL4 U42^ٻ#*P Ƌsd#eTʎU K%L**o hd+ZyN =yn4IMG-4gIc|2t~+鳡P YJʨJ]h";E2dБze[@9ey</Yz|E1imC#kU) kStX"u3wO2wELÔʓȀ#VSY~#-6@/غwK6f+tYFggP-kW Rus5 :CxkW2-ܱLaSj~Rcg<"~; 0{w$wF /He OFڨowbŞoȤD, B\.>bh+^GyW-S q*Erdzo-0tmbg3< C9$ {iL^0wg*dw)2?z gSkUq6Vos>c@}6i4P~݁II20qpX9Z]')xd俅 %zGG8$xc1".{9ӏ5D F7BpSscY*y%@A dO/2j5VX6ƃ'eӃ)@o2F'P8pQ/M1OYBg~ n?U{Lη. GWĩ&TL弲~mmZ< oDNZ#,jڽYԱTA.'J6=P*(/2>ˀ[2V~oߖe;?O DE^ ]'/uҸC';V$3Sk<Ҿ& ЦWEĸ G'1yfBb;l9w:=/X9╻&#If鵠),1ĸ;:TD ⛊L>~aŷp| @#X788;B3n,;!ND7LMh7Ym a~B$h_ۀx<W.y1.+0^s, ptJO;懢W׭;7u^ &jj&d+N,}1&~4V8VY񻦁Y448ԑL|[v7^kJd"Vv}9PlnIZe!Rzʌyp?fViJp?;bZ7&4 8k(Ubd¦;z Up6/8؇ȁooG+ŧfk.k|-x(95$#+Ϛ5kBp>p Q),^+NҎ`z;cǔg=FVv~c~C (2I)} Ϗ?(7Rإ?ج':*M,LU v/,#|ٲixs/=;| B | #Tt 5D  lO) K"wpc05̏\j/fˣ/66}P[^'Q-ٵ|Id}-ⴺ))rt.Oy7R ]WN9f\ o\lkAk";8" AjɂY3b>X/#0hg2xWg?-0p &gQؿA\ᯐb̰a;+fGzu;]$ʔlBgEͷQ避#$56QW#" j H .f:Dt_@&On5 4:7$ĐJ~aq/Pd|m~^Q҃ǃ}x+{D|ϐV]LaF"aC1"C\ߊW@#~ۥ!EHT!zażḏB+Mċ^AL2KggVgXWfSRLuIƦ#Ф03KX 4Ј 7^`PD) _R/ E[ XuEF QjONg՟*'dZDɹh-dr9R551?\x+A'(tzIJ2b-xN]"d 5r|Ez{kG̱CRNF/j[J5rNɆoR#z%uF^'ЅD\;"E5UZURUG<ĸmW$[x}`Oj󝘩{< sRd3 ~m++ eFٻzER4qGz+si깦y([{73QcbWW`㡬%7e{SO oÅcvo|y _Ku\bvs3)Ap xȟ&#\Ƙ &cJ*mȻ<VVӝbg/`?؞:h)G|ʣҒ-Pρ2M`ֲS>;I' 8ȌlIbֶ ,?΋LX /2/ɚHKqQ9=5Jd޸kbs7$>>\JAA̲FVk|뗊%M9*Kߍ_^o5¦Oy{a d]j"1)_k"`O:5X'hhLƳJ쇻KS>PtoVkLKUܫEN-=lE7_ȡ.t>9 :0zįHW_.[)R^g,یoy\ovU;6ZeL;H;t8ϒ9VZՓ W+?6|,$ʆu(LӦܿ?e{ 4YK.tJJs΍8{/FyXVs,MF8yl@@ܗ=v<ƦvGZz8{`Sԥ,p?Js+mjapg;hW+,"R6,#%{YqQw",lUao̶T-,4z6aPkC@,;2?pM~0 y*&Q|HԶ7rZ;Tj$@9ЁmJb&ďv YW(|r]`3~ce|[&DW!lfh&ߚ#4yW6ӗIa . 7BO QaIk'ξj{>2p@83KC@~[{'V0) |6<Ԡq͖M61Ny_}cshA05C>$4XC\Q\H4K*$dbqUzÚ|3^r@i)FrueHT=oF t4!pcYT]u̒2Zr.,*RKaU~.N<DLQ> Ų5T řXS_nfhͯ²J< E#wyC|-.<M`v䩽&M9~Jg6W,N掴?ȳ8}E Pjizu D 7Xd;Xn*Lʧ"m5$̀|T'h97ᕗF[yZ5a*cz-# tA Z0|t^'(+Nδ2ks)CCE)퐚v~ut> SYb@hj0A~I6C%TNޮ.u^Ҧ- ap>tgFvͨgD zW$BR)mm83!Ȳ buy)s}Pl|[(ԏ3{ n#nLg]&K5s[ -G4wҧƲBIcb/1\, E`VjRӸb#?zKlu`ABo\ELyiXZoAz+Mq܁_(mgoҠGcBEZt9N}&Aqi21.Ȃ2LS_ߣu &%ޏ7^FewE*JcYCk"6}aAWD2[@fH6MxW? TB=XVRgtb0?>5g/rPi\unA8YofAh:vkH|,$N- "d*3(MTWp8JUi9?|#w.H e/Z%_how9*fcCeTa_t H׿=%|i(J[OGXUjsU:-` h&e/4fE44o!6F7*Y?!q7⭺ӀaZKxUŗ8-yr")~zu-Vc^+Uez\8*+w`/$^;"̐0=HK]}N3XFw>YoϼF7k:ɷȊB0 r?q.|j%yN̺6GwU- $JIVw&ߡr+'zel/)8]NEw*R[m;ҫ>&˩29'W:H!jd+=9.sWI^W-wpϹэ`*<5yyia;EsLCK`$ޞ4%jk5:2 ;&Jfx-E.]οr#l+pcזm{l [ђy'D; 0?*eeATqI W9-xBwk؉8D]xMxoUXY6q(*MAQ-J]^8P4E'Z&dVc9s~>1vͮ|;vJWWTBza"ohv$WnmT GGy׿eUAS~N*m6oUcت)dg)"gIѥV Dœ>=BQ4+f8 9쮏ՖSt8V8fB:x]jc~I.BLBf6p4ـh٫wVULJP֌6'ce-"a-\+5p w)8_I"~xe_,J+kPвxl #JPm#I&-z4 N *kn|N3)r;mWRh6{p4[4K{=hԃDTPNjN*L{ 4Ӧqw BClˀYaFSي=7F,GO"uf[7s0nI`w8;Ц~@r 8F^yKlg T bӎkrzo-p;q3`*,t~}ͳjf-Un !y`kͽl-Kyp"lR8 [+x'Ls x=o:|4vl/G7~rPͱ4Kf_،<2C9b75KX\E8ccj \byw_gC「  j>?”PZJ nvsQ+Ii-(ulǘu"DUR 2<sVr4ei+4ٱHj=YG5unW&nfH-[/x6w:G+x@ ]&R`X4wY{Z }͒%(Vj4M?/&sufT bۜ7!{W%W/OW {֣+sHKk4kü_"YVlIfuFBU^{``~ut5L[mL@{N}^esj"_ eMX Ec`_~1z|l3bEfmџY'T>鉑5r;T`ƅ+Ώ{BP ¢ Ix;t>е|~]@u48 %S4ehǠm[kQ=;I\w51=;L*[t1Iuܛ2s/=vfU$]G=0D۽ƛ^|m;K8_Xiqt q|!w RL@0s.s-if/ҮǢR[ž#G*^[Mm~yy5u3mٕs.Wlw6H2J^m7N6ʖ=maw*H0:H!1޳v~ st>U=FC+l|eqg HKoL.q\Y<,/&uSD&w:XP51H0zWUYiQМW3=+ԸIa'0Iə %WK{lc57nLgwdk:h  :"X+v1Ae6DC~Y8MOZLG0o䇇ڋ߁ښ-fϽ6iLOoua,nHf,7uW!eI*Y&H2Gmrٙ=L^޸w !Sr# 3OEaAsg9S1ʑjjQN?(|97mOzeV7ugz8kCkS-rNamK!]}alBb6Nw+hJΜLy˞_2lr6`Se 䰘BW]OStew] :wI۪j|㿸#_>Kd\:%HM8c"_tі !HfsRP*[:$;hdT āWRO#Cfs֠2|I3:u#Jbešn?e+~‘5@B֑w!˹uM8ޙvEc37n] v\VﵿKj#m.yt"fn,름2fBFa:,~PDMQ6,i8dvG,]{^AUWa.)=&گ;'"%@+r)6(G;.&߄`e!Aͤ$B1zysl>C24"/ aq2)=9O܃I3gx̞@ Fe^ÙSm z;)66*ޛ|XW^=g oտ_Il^q-l,RiV}뿙c )6тr"f4u5Ѻ]ilyX)f4^u<6a\g{$>CPi);*o d[@g<[d(zEJNӰ1']x e<,Tz2 ZM+ 1xFwM.X XUr b\=ZĿѝzL0C%_2RqeR/csL<ޣvcGfal(S{XK.6G7Nȉ?ԺسWN"~f@۹!t1?L7F,n!j9+rS4xpl@EF ]6L?4]E,4\F$^1#!._Y}b+ӉwrGMujk)- UA~r 6. DvkEA` n)}.*^J\](Ս7?>t09D ~ +E0(HBie)'F+p1Y64vTN)?$p2)}3  NM "u܉Z7h'(@»4F'f`aJ]f P%~q* ^kaōXrn)]mTW~~eVqLpT$*-A-_ b=%n}%⣙ؤ)qHC:ϴNh[SnNfK@#u`H@[sA_}-peNUA͐6!(+TJb^EwŨq!:{J)K ̞n}E'\pV(H|E bw&*y l^Vk,gh]l9Aь̦ υؕ9AoL4~B]gR4wg͚㤊$ xϾj@ԉn3fر!0Rx#q5x~L/I?jլE ءKjΎ9rA7*S~ y/|Nzcy2Zcm>ׂL IS8` XęeAUE_:2ZjFSM"^axPw+DyFn\tpDzT2i S.=4NW?$GjIexŃրW2B8"P$}_'z?$r:XE1xFKkɝ\._'S*Vݷr`a/}7F${+: b졦vk}8OEnIhʾ)K`2 f퍞lF6SVB/B 1<cX;Abйܔ͓U:7ީm]8 P@ۃA0QcأQ5=Zjb) Fu!" yCN3HZ2cHLl1E*?jltס6u_xҎĸoHڍ:m=84}ڤKJD+w4ɇHF37t |>o58m1AZD:̴ٙ0˞V܇ ml\/ڿW?ݫ9( 3%-'섓C^AL Ѷ! +/ab;vC T/ V;j0 ܲg nЖ5& #UPeꍳҩvKg Pq Y~fqߔ\%iZ\_(LoŘpɏObg^lBK Xz#MsٍRш.'Tؖ#"໐'~]ԃ?Ƨj<Pcӳ2RBK#TvĴa>ڛYxLZthٛQwI >_pZq`Ip /Gƕ9¸R*ة͢X"RȚs U_Hs/wpԤJGiC(<6x[ IQ0< 3aYOp&cx&C9j6ZSSo4촐/}Q!=.9 B}~Tc+h M}06 lq ~c VWFcu  D J$N͵"ݜQ sMYܕ4>ѡqpTթD.^m[|F^Om;7׃,ڥ|ftrz,Md^"X^'xY` q1;Eybi=hs i;$}~Wdkgc&}C] L(;$jqΠvRx>( !h$IX7yV6K2Cozfx|.ޭJ$yn! xVNjw>ъ5]N(zf19&%I2pz M"k-+LȚ9,0SK6;3ra .91k++].]SQՔ`!:(]聒] ]BR'Aъ|gNLZ_YX8AlBe5]Y!;(ɗ%/Ip TFW%)˾DFT3)v[{bi<]$';>)e+.^ 0]`dpǮ$@|gćTPOÄY`qYBɃ49@"Ҕfi-w֭_V|+M+ LJF}-Q6Oς;`g=4Xr%=JִptOo0Sc*sYp{olbxfYͮ_+L¢f|3ހ^)aO8"s_nD#ȼ6&W$Z.xaĩ褶 /8(WC,1+ݹ\X_4%d8QAio#>v ES9nwu[ȱ<Ua3F$ylѪFW{ 01i^6X*U|Oo`z+h['bGȪܵiԿߝW}RHaL=~Ƨ(]^F~IJbҡ1X(:0 ?EJYuSWpF: 7%r=Η6|Yf~"a+~.r1Ѿ &؃[o.δ,s}>e&I3^5Thn 66$ 4 :Fy,C";u+hMbm ^s,q\BO*$ds63Q1ct?WZ7pKN Ǐ}gNQyj%y.:w*f^YU3h^%7tҗ\rD<ȵUp~:yH  ݭϦtBOk_}RT@ hڱ67)W|DeV@"c #&>`akֆ$pnJ1$] ٙt" e i(ms4F3M,X 6MĂ q8BvuA|X[~y DZdxZ fcF0,3#CўVe%t%dލP۔XeN,?q" Bw{3oψ6 €t? Olp X ȎL!ĞvF1g7 9 ۨ0댬'YkB?Eu߿LZnX:a02k\ZjHn):c;^mz|3PU`<=tʲbO-7 J5m[vpլBWT(Ua*bAyJd4d, #qZVbj Dӈ:wPH.k\H7ĎaLJuXhsԦn;dԠogz@'dړi_+Ո t,zԷ/$O!l\x'2VSL/&{#)$ckHZjKKwGN! X 9S:6zI-0feR ʠ n_*Q!:Q%Qƍ I{?CWb2R4@Tsz~NJ6\1 b"V+[3X>Z%Eu9& 2wS )ƸGǠ)xCN4cxܱkB9sB%_bIUHILRqa8N`)Ex{SY mн!9dˣQ@mEi?Y7X&XF&>c~(+#+t܆!q]voZ*ಆY>< sx.owlV+e\Ăd7VdI( Jy0S Hs*L[J">zxU`.% q  N .@ƏE7 }E_ 2%qmfߏ0] +HۗHšD9i`in&ڠd\ὑlM={p O{Ky5 )҃z pMiwZrc^Ĉq\r aAuWC !xh]<%3l[?'=:Qa ȴEaҶ6%嫀0kNGA^x4}gGi_tW{+KnTM ;vm@'.G|zv]cE ͫGg8?4)8⠁D/!RҤAT>CD:p=ݶ5GАQWD0{zQRd./kOj'i䣇 T hDރa޽Άl x5+f,h;ˡ~ožԟvPE ­:0X0ĵwB&m_$4x0oC93m"Yױc慪*kg(v7YK TJz7_ 4D@y>{܇`({4e`{m6DiZ"{e>wF}&l|ܓ8"N )(^*4OBi2r8,V(beV:1)X EdbT qL(g-Ql(Ct>AMӆ >'?7Q:7O#EiʯXKYKּ*ѕ'Ŋro#16MdȰ. % d[@(CR 5vpOzvֺGB9 3x{ ESUݐ~)t13!Z/Ö 2q"vO_1 Y +$BlΏ^(;ƥT~f9GOZ{P9(Z]Pl^͂2Νq<(2auᤌ2[0KD?ǦdnwQl׾>'KLθ/mb%#OaE$$V .jIw#Ȁ]5-qT{euI/:{"*p$-w׻8Yg$Hbjhd)BCj:_1ٳ@0Oh$M;-Wђl~j9?K7!Q TmLۉʆlӸŇ*TF(=D"&qoNE|omB': xOF1Jjq5˫kZO8'5F,l0B?9^:wQtx|=9Ij--V)ytt89q݋% ~!//Flz ԟU@)l+ǰ?q#3>Ʉ%hw}a& D+B=^?|yT&\!EjOdq 6wYzW]CЬiB>#Z vJ/ pk0]3v#d-04E" 1U5% \YGucAp]|4S bFW7ͦ萐cf8s"Nng(˷+dvV}kτ34 ^Jnw2y ꡘF9^Pƒn&a$&N?]Āv&\\?ÿ8^B bdg(7qJr+dUO|hjb/$]pzdV#prqUB|m;S8>dv|ʺ^O!;讀 RwW?NLDGj}P:n6ҢVRgDB1g=;*?*M4w4\/eo='hIEǐgc,!hz!}P|{cCTz.e7e/W+:Q1Wȇ̝γZ yghD#WS V+>N0{3&cAЍt곈ld?pg?ˌh5 # -s*?BCPWVz1RAd1l^9&C W}-:HJo{D@YٳqbږCz[r%W za97lpteۘ=t}4lDL+0Z"]8ků(lr1PP)Q=|9JRƴ(4 ":&~{hovKdou ¢|o 'rG0yRCN;l/m .'UL@d;תp(RҤOBy /Ղ3Qy!O څS/z޾$**u0}='/q,SU|;k1L[J եK*{eH޽w/ Wz &{(6{8j V3Hl2t_ju"iq(Iyuc;Y«EZŃ r.د`J>Ϟ !x ,9Tu,NY?D᧸&_Tf9LAm! Ɣ7GAsR~0kXʥ3"X>}#Q|j|k `\*ҳ,oz^vq1 6cY7 %w -ݶcsa)ޡ}@gNЄrI]hWKyPr_͘> xAăthMOvY`IfI[#9[Gkl4H̏wOO _J;޵\[?qH÷A*)B|V9:b~2q8h^Z/og` ?uľFߕ`DQ== l⬶Wl[{=N-ɜVu+}`ea+63(xy姃ZR0cv_~$8x(ul}y bٍԀF_8jtNAӓj^%bm߅y3ҦU-Əq1Q)pqcq͵ia4>J=nrDnuCk+ zSqJ9.!e7> :880J@{:bŜdFn\,Z}ΒzXN'L͞b yyӏ[$;Rg~Qb$< [J26]rpqS8{H HU3y/މG ݝ_ZimCJu]J!P$sy;2Q9w@9knP(xLg !),tvkʔ RmJŨ9a7O- w *:}IWP2٫t}b#~TlٽI'A7}9oYWW-racwSn~uaq:r[ۄ3ЩN,|8 HȩZ=V&.u4Kawn(@e<Ћ%h,D&vsэ'jtŎ,.$uw c N;Wrj2 Vma s"kV [FR ,sϲHKCƞSNa?P)M[P<לhx<U?XJ}:R< ~l j!ȀC䰭J:TeBn >Dj(;Bi]QeHzjB * 5 r86}!97oʣrOzbUB]άP*XJ{*Qg/yڭޏptbfaEd̥~[?S#*?jp"&畑‚FVqbTeyⳖҳCf35PCV`f[F7g`uj\Ds 3{(YL_aq)`(B3~^Q[v ;*V`@SjND_h1[r2Χ1,]qðS CF{hYX1l,k>M69mh{!jV-hS>_vqNqgSpbK^E?3A?Q ;ܟGrV`DktŃ!X-O,L#pvܱՋlM0ɧml6Xnp-dIek p̙o᭳eg)C!:9r  {.M2rtLz(Rck7 䕨ef@`H$")MMhk#x0lFsF8rͥɇ.kڧTZ~lO* yfԌ0/f \<+9j8Piy)-O跶ats5_RGMXʆ>7+ jDb\0w oq~@bfHCBFSN9k!&B(4}R/}큽Ơj:m/<,&ֿ4-,Me"d}T'Je|s:nGrD0~ڈU6 wе#m0*Y? s鯜^S9 t]w|kX"(G".L3i߽]T&(e1> Ƒ+hc'!Y8쟸d9OT wцF&sAF8C-fצwr4hCnDك{7;xt 7'L_Q1KG߸1\QѮ9DM]z,cICvL/Ƴ`djM*="ƫaKf<(:MaLMVXj/eSX-ڂ^`#"'"4MzkXdZ>dK|MuBǹ-svh*'}O)RxOhd3sDi57|0wkq$M˦q/9@9!2‘{[Pg/i9۫FQ,[GI\pN3ASrаtn% &%( *sۗr.u(o?WwɡH* wU 3}d=iy3.#Gaࡦ0PCk-*E7s0SBem$*w4x֟8+|-ʡ#`Te81"Y+(g[|F9g6<`]{ua\::ONnA K3j‚qUOVM'Gꘪ;ؤ+N r dǬ̜G<[Bg*ew|`Yj3mZ˸kk7\lvn͓ 6f7rE}xGUߠu?wPzJU:ʼFtl=Հп;+`\<46hdA v75O/S|?]N\!EK-/r#ToᾋP}npGBF䡉\eFF<$xb 47|K0"PT^gDv׬7yG8kc]g,3-Xzņ1'x:ošq{^tkʷ*@tϛn8Ȑ3Ã|O5grVcRh-׹=wݍd%=08igy1BtG9 .XJ1/j&ٍz]&GrX~UI(z€&5]X)t{/xH 5$: 9 ˃C>?ǖXW7qe8>?flN0\d^Z$.َtffeMU掣2UOaXsh2ZDiՁ&-C3<=jP?oC/m{R $,=GT~StH.d:!˱%漇0Lmq/{,;4?-Q}xK ".h"ywZsd`G"hE `^ D It,jy[hzN=w_!~kÛyp #Z6Ȅ"UВ"=Ǔ %>\H+2 $|جÉO(CWE'ŅCsWyy) ͈FY$Cb1+ӰJ[iD>_߼vz}PVQAݦ oX `i3VqaRӰ//ah^vƓdbhNtj9/Nח=y͈:#מº=wxQaCB1=SVu9:;Qn z⍘:T*'NTG [u;Ikzo4?nVEgWpL)çgpP^8p0GE$r>,%J n{K6oRLp͞aIoQ:-Z9;t^һ$J<gLvۨ)\X>b9v_]E0)MJx9&子 vY 5Z{zNt"YFG%C@~dj'>@yt@MB4U^!Yu9<M g|{惪THL;z9uo44Xla Ԙ*b1#") c6aS*{Ex LB?7bPu~\\oǰd` 7YVFg̏ː x:umnZ;M:aQc,^/y E3UņtϨB;&ktGVrgݪG[ɹ*ZtO0Z3w &9ԪPR ա -FtQ+y Ŵ3R ^ܽfXpk`Ͷ7]"cQ'H|Zn6d@fР2gOq{vBQ^#(ũ( (vCឞ<_g oQ%g]@ 7Qv~E&@rp35 RWdX~k^!>4h EH1`DdϿ lֺBwhz@v~pCx])/Z_Go.|-)꒥33B孻?{h0"oxG;dm) h"zwT7#5C 4[RqD\MvgGٖדj=GԿx}WfSe4$TB:cG<x ⌬zd *]ˇ]-sI7,ݱ}H!"f-Új2e spmL2a#| :>E!.Wd.kpކeI q ԼH{ c qc,/GZkR" 1(-eNz_,^cɚ΄5h%Zf;Q>tAU6PqPc?4a vÕ;SQ玟ۋ5cy$ S@r.nesǜTXn%̔j{_JkAt}( XwfRF`U3N6l*ssjz$:1CS N?.Uikdۥ!c Y g&lN?\|>`ù `;G dF}Hgvryphڃ]+eܭyR>U5&H90mcZ-F 3y!ĵn5΍?u f0b_PV# IMU  ?Z ?M_Ա%8E0ה~Q֗ȓ҉Y6)FpջݲCW741hp=INo93WopMJy85"pQLQ=Z)7|3PN2^mg[>:[ĖkCm{=O)'vJIKQMS%CeO"$MXPd#.?AMgVΔMvl1zVatUJdRsO8[#w/v;%Qk`+~:S=m6-LAmbL7vA~I !voN_n/;TR/Tk%CG&s\[%^//! !z |Utz9綯E~;V]xirě$vx,yh (Y1uW>Q_c.5O$jՏ8鱂|`#|t"HC@m69|uF g…=8vþTM҄+vǍ~r R1'眗 eB.]Q%ULpbR*ivܗP.X2^8[tv{O`Tyw̝iR2juIؑoٷ>. ltΌFP=Ւ27)X"ș7*csU:TZfsZoley9(t Bear圲G .y)?g2ikx狷#{-*m]%$N|L:mưB&/sƎև'8Qc|FߤEG}xCQџڞY)Ԫx ݩm9bGf@QԼMAu}Xe#M31GMYh\ lW6BrJt:˳ꆃ W6{|)kI nyb5*6}S*ZHeN'dkE )z u]8O ϷgZ=U#!Wm=|">{] rC]oٱ-leMQ^Cntwh ׺q/:ۥʑn:{V0aLIDqBIEJZgR}-AF'm@ 3 ,[e2~ >2gf!ŭzr{8Ajoyt& _]>T L|-oſc}`ރ `SHVɁ.)7,vL.tRNùQK}F Ćf7k1fS:R>XEתVOGlS-{đn#M穔/u#S@IZoNmnnvqDwўa)rKw15k8R:t |b=QsMUїw^,!s.p(cI dVE憋fìV(rنTQ~f˸B#"e ZqqbRBaƲ/K`0s5 :1Eltv5+ 4c4H*y$HDQ߮ O%)ٯ;+|%;V[0`5 `S PGwI Mb'>Kmk#)@0s2X&^E 1[4% 0u 3׮(+RldUHa=h"8k>,3zjaUR+QMP[l;4TWl!:SlB}OXxF5՞DHLkJ%BJuMS"byAccWyjdk`]Ԝ-%QjQd-xN'ye#@l:8;l+7qX]֞G3CNL>'iˁ YJ@#\ja~/?GT`[J*ޑ1hDUr;YƆqG[8EC&=zuzjV+DL%.6\i3^Va7bR1aXI  u\A?64lTl jrlURvӀANU˜>G:qV6f0 :+_jN19nwɋz[>ۜe} ړ$osU4wS(F\2y S]B-LAXj똕ǎAR'CMQ!Cs0_߆bš^l;Ǡט&:#&;o WZfz2/t$ǹ\<RGf^潞:V*K,:y}M!|UPwyqW'3ڮ <_J,Ab (vc[F")pj+|_.׆~(aڛ?G?YB%wR_gW< XʽO_E_8W}f@&XZ.W tWF9Yj]QR ( Q&K>o LSXqxvEflќj1>΀-XV_.l1o3> Uog+'EΌ %2Zμe{_ae 3}xZ*EYWn4_b{3 5*yBes{! g@ O!,QT*2,(1wZg^˛VC&t)xF<膤:(O4x=-QQ;٪ùg9]aS6r}U7'eߗ4,h;~ֶn$@+ ɹI8F[/^Cc6W(c" 3 \#ɫ:_ۤ]`+9^sn(%BX_)_Ed)ٍh"U6; +iߝ9ԏ/C&KiBeC<c))0I:]f<yX)ރܺ[+Ĕy+l~l& 2ZYcrW1t{73+9=#jힿmYgW_ǵy®J%YS%sM]9|b·Jߍ3qrf}HK2XBcFl%Sj.<ɛzVKo#(w8%b2' tl4u6Mu"q.aN $_^+Ɣb>C6J^K|YM5$^{;Yک<m OGD_slo+|r@\U4F נTF}8C1\03?۪\rk6˘^?PD$- iae^I'x)fHSܸ a-q$D K~kw2!<ςOW\Iu:ֺx3Ǩ1;Bolp-U ua&FzvB C؁}}0 "& ;  W&gƷ.k<>mKŠj?`+NdrHeo0oxov1mmcw-JDXigv-1מ! QR p/x/8;d`/bYaQ"\r"@j"cEG9S|%OaК+llϨ+'zy3hzߩ2 @Wnh,2hӃV664cr^"ZB@0ol&e-3tIp=hLfi"OAC^Pnw}U{հ, tl N,ӒAXi3_"¹qi%7KgL1$:\ ^5dWȦHY=&S{uߔ~ǓHIr bHqЅ/tK7gu)@e@Våj+C:U)4;M686RY'fI ۬+p|ud"^jB~W![4&?'k'7N+߄$uuS@\-8^!.VPT]΄p%Yo[(,+hOR;MW\ܻ5uUa'__tov`z BbӴCfCɝ.x^a]TK, ȝ@ O@STLiHk*J?Qs_H8HUR0(SʕY~T͍}hEKDԓvO< !'E&7,5˘iq=5Y^2)pItڡ>=I5ǚ%Rʚ e{Hۢg祕 'XS?oX+֭l!/7bZe.=_*ݫ?%.7|^/ɿ@6qYT;~Cmy8ܑ3|ڀ +C Rlkf^ͪЊfHצ:'YauI?K@xW ~=|2ɉ/iptP.08nJQK!Ufx֮j"\Pnb^*?*k}4ɏW4TUHRM%$UZ=ʴ[|P~7dq뽖nYNUƑ’FAF/v"o~_6HCX#j`zAul16S,,LP(;9AH:ߡ=w\Q Ίm܁ ؙk6[9jJ\=˪Fٰ W:&Z1NWmV[x ͞ ֊>>6- NER%xnfP+WөF I +ŸބjRJtQpbr™(!S1zj-טܰeUy1K4lUa)upPj%Qw)F8 ;>re5;rO˗v-ʂ> t\"c4VOqI,Pm wU g8,E :6ޠi)p1'yRDwBZzRj4X͸ZNdIǪ {t [C-Lkfkj0Oݪ+4{:A\=}W_>Xi"xLژs/Z-; cQk) m{Mv _OS&Z 1m"=h:{f2%hǽ{,c[2_`'eXGe#my/'90`qȼa!mGl}C$zB7 dK l}*/TJl*BLjă G/TGfD͹;:/f-gǐQHz^N\tfkjթ[#cCEn>:l O~߯C{!GZ"?YٷD̦a $4Ê꧈%ȧH R@+%|^`1KJ"E}Se`[gkDo߳MgeO /P귴riS`bp{f(;x3PIQR؁lѩS'O-I@5#ȭ&[4X!7R0 )X$䏶+94bW',sv nTW)98MQLe`\xzOS8 .M[@W.44%z\BzⲼ?&.LU+E[ @gج I T9zp\%CUCCP֑ܸ9d56{w~qMj\fj7R|D:ydy]`kse6;,ΈS'`)^u4rb2cN#OuD,CANU$oih\=N~N$*^;ˌqH^?@0mӀ10aϛLwS0i$euUezKmdLMeR?V4=^33 )TFh'f=V{`!3|M]f{i*Ѹw !Zfh \EZkDJ^'dhGJhXHwZ7~MA H7ΔQq|5ڧzgcʥO0( N. IR96SL@:&\^:Xod??;yb+V&ᬅZݻBf=)G6CDݟ7"NORLgە5C.&a2/*{*Nf,֙sys~avU%P%άv_HMЮm} "M[AxM+TR{RWQ%e_,9 L[G[<I(`e *8ӮSifeث5 ^;&.h{W|\VKJb|iS-WiG"b:,u~өC}MAԝ^ƥցi ^ʛ7q,`n/hw9 tF`JhmJ:d<VnH?.7|N]T4Y~Fрqv=Cb*'"}ckPbOi>[ZMycR@~Qч8<ؖb>K8Ufde16TcK|ݚ&(Y ٞ|Y"j X<MDͤ5CugQgrYb+}kYv#lj ?Ͼ5`Y a&C35M Wl`½/B,G/C^2lfBY?j  ?gڧNqvZdAzG^].fpZ5IYY;Cg".A.Zlv4>&Gut7בa5[RL+"eZ ȓ@9&j0\ 9t^H"XlhQ+A#JBL *VrKpE PU)ՎRV }1y@Q]Vp"ҔBj)gBw>2ݜ`7juasQ{5kGܠ_ѼHކ W_K}*1uXH%>/I$)\?uȺkxR^X(~At(4̓f"jc'~pqA6~HR_75Y#[06 7_d[7pbʬv&\ K֯Jqj~12av9sx6h[AJ_gcKp3Ǖ&T5,4!o(bʛx|"SI&3]|8\#QbRh<%<a_<@HZ)ᷜh^x.~I6DL۵ϻֺS7:4bcȄ# djW?33ydq_N\` 7iֵaj'4~d&/>:TmY,SLswڟ'{[׭P1WӉ.h._GL6 J$mjcKmq|XH ?ua^`AT)D$>I% 9brߙ?|S$u mݗ'(,iOmAM)r6}`iscDrAjF(FpdjvuCv&LQ3~v67؆fTU'8_'z"J+|wJ0KOWbШg5Z͹φoЂ\Oƍ/&D;+-4s;.>bV39f$pϲ]ȠsMG4Y!Vw%ūMu{/)f#{-BlER Fls+MXՄTDm{w6RrbƄa|ۂl'1bLcrȲuڰ%(%$zRDlׂ J`-Eî>/[H~algt ^(%᯻Gs}W+%_5.tP12sY"ChɊ }7rݷ= _]¥_4,/iT<c՚J?q\kJ43U!&0*6WuJ @.LI7-3n[@$^y^f< nq WORke\HQ˧,1bУ+5ʖt gk]UvUC!^G^K*$VB$θPܟS<%>aSZ3 %Ϗ0< d!a^`'LK?mU'֯ d6W `|OI) 0bzIpnwX%Y^[$< xc"m9;'x^Vg+idPֿjI/wmG))8I?BE|`Q =4BQ^mZ@7EVȖzkVRDƘGb~tiT~ÒNtZsg|Ir)@͸_[`YOz"`x5؝>=HN8{fF,МUH\9jY<%^;GCNn5"]8 XfzE'}d\wb׮AdΦ HiXlhLG #0.Ie a Ye&uG1aç|9@Zcq rL.riWjN H{~B5TjQ2]Wyn|lV9s%9ή9JyC٧+ cD{h9¶s`tG)v7F#7ę3DJn#N|"%Ll:~Mv76PYNW( 30c|4sVݱd4}pcjiq FvFAs ipߞZ <Hd9MYmroE? SsөjX3Nq>2&Gı*cՏvH$Qs2nmq7W!/7TmO/Tޙ*d|if@Kd_D(vG/ I4tg*4'n-|n>\*}疻C\MNQ8յ?ݙw])bC_7~c|Ay: ! W TSX\#ȗ h3^ӰsewnDRB'T%)LK8q֓*jXj+9Z#j!82,%?C{Cd_WE'%|R,-!咉NPo})t:Lمs +I/R)8C\֛Φzi.^;hM/AP]J:0l=w"nc^I?Z b-wc s[ <-aE'P^2ni5پʘ$c&e.[ς }9Zpӳݛnݬ BTpLr/6AÇ-v*&W K$uk3[ViCZea/Nqov-N+0n 5Abn@Cx‚|lBt~9m ($(Vl$2lfT d[1@f;-u7[NI z2_!Yksd9U S. 'gCiHlQ'|N46h $=N&͉@_]R<;Pʾ`{jDm+˿N8`r_Z('w}ecR -:}/?BmT8?CBvXbnQ Ѣ+|0:7hky"M~cR\7HT^豗 lY1+* 'C`syq8Sqސicvc-Y34reoӡ_@C(V i<,^ hxI)l|j\r6 _V"XzҊcrMPф,FLNQu(لۣn|܉ã{Fo\!U8Gr3Z;9KV< 8&A[۰G>\\G~50;A=8(=*GVqB }5ʌN#믛4Q[-q]xὨ*"K>WjLuW?W0)k,E\0ʆ)z|8lmc =6mRst-}!uNNHEaًHjHx!{Pzc[z/0ˢG1(fMOLQ|Ĩ{f(k}-h2dj6F5OZնMrk'N媇ִUo{J߸=NnuP2$3V03MMj0`ށu?fpհ_,"8"l"+$͢6pPFFdkp#U6k44歎ɄgoxѳL5ʺi01H{A0<~"aۋjCbqlLug=bS8t< :ySpH`(7QNc)-^̪ U*k*`nXsfrÚ_RۀqR'<9'nⶔ)P}˺ VQOJ9rQ޻MDR:|Z;bcev#0vQ!J-*+l7:@# )V02sG3/q\D6RQYT\U-ĉ4e'uэa.hoBZ.VYװ)FSrl1Bro'l=Ue`:@V؞ef]e#;^4b6;m0R%FWbDΦ͖j )Yi4ΑPM5C w`|-KMfJ9շ-XWMPaAeӁכm-bǩ1'Fug>࿯STqCԉoڎ׏pOI!|U+!Eg--ߐ bg̠^s 2X}Qݵռ"fU>>g%"8 CLoܪ@$y|L.ʡ惝zPGgm_j8V6Yb*%c:ɀ&pi2Z׺GC&((Wѕ}Nl=1>!WeअJ| u2MoiDMx!m'`;ʴ ~hKѯ@`cjw\Ϲ(Ȁk'DF/4XCj3HL\#--G̬eBMvW bj/HF2L"4&:Ko2 "x"o)LMև마Ϥu?Ȝ'd\Vp-d1U6ǝvHPu4ƈƠLvR$]={iGA}yN lqfޑo5N˙Xlދ1'@ϯ#@1V%'تKHtI{ 5 I0lW8AIҧkb%TZr8[V.wGþFISMk5?a| n&Md3l"c-lOq~vlr/v;GJX]KWX2uOl/H) .PӥgAEb_4K5{m:jjOY1Dbɷ$V oqpo.v̫1Q9!ή t9o.ל_ Ğ0F;`J+F+V@>M&cr?; ;|'1=G/ X}Z|_i5Kt 1FisۻObsӝ +>,ru^*RHvh0`[28Ȫ3Swj?4^}qGk-w%at9D3*7DVz 籊))"zh>zS2~<@xhDv4c #]^^nmsvp!^G̎0_VW#Ɨzgi %dZzf>/+J0Q~+Ɲ-ReihtqoD}r3]I ٍ4 aQejA*k #؎[_vM I4;J@{U+$6qh$N"&_8P؏0FvN3 Y`W5Վ$n#B cϛUtEAUv@)bE<B皋ה6u;楏<*,YmĢ꼙pYP<ӞDXneI;AY{qΟ1u w> uwD+p(2Zh_*@C#& ~kZ3@v 99Fio.\icM\6!Djk"j'>gRVӢ't1iY5xݹDsK% 0βnܷS%X&v#ע6)9*SDG'E"xq~qgH:|L)(/[ w_c1 lY U/%Z?uS&J\K@(%BWM$L2 ;-Z~Cj4DzUí`Rs!`n'AD_]3GҜ4;:7 Bsi_ǂ*(c5M̦d4U'D`%LcCMvFkSƱni49kLjH2΋Ka!]*=An ι|tLz/w(;wGBx:HMPuCW4!ȳK0TAY,a?/WrEǎOS"H $waHbW=j6n^H҉mDx2!l7vCrvP!ʏti`2) Kb ih᩠y['$MU-԰po0v޵\/8s* /T98ͺsR7q6X̽|>8 Y/]4,~@x؆|v3p09Jh|[M[%1ZEv|H PUd1F% 6fgEY3)7%o=Mƻ%fF15(=D/ gU4r<|=2Um2HOCV&ꃒY<)e( $l|gzhy=]o/2 i;Tیg3^gVtj ͆C 3;5PTa.װ%O/<*1Zd}ne+u?m ?q+Upy!]&Dh?zjYg"{ge52}q2e9tχ~wg }g0+ $U^~Xp zʍ.-=بt8Ctq; Ō#Ă ͳI-k"vk!e*%c=A:]@.[UA.aiɺgh`v8 R 'AAp=1GѮ܍NJ_1ls f16X(꡻V_ފKZ`W<ᕅRZ2"wĜ7`8*ʤyαŪP{eu5aW@Sԥ$Nv.aWY73O8_Y2B+X^]?=m>z2T -k䇇B?,Jhw* 7 ֙_2\)ǯ*CKk"H壄wr 8Rd}WWO^j{f&\ިFN~Ӎ@kf\mQh_mJaf²<BpӺ90-fKrQ9ldx5XHu;+9"]IXlvr (lgиʋNˀ}So rB"Fa \ƙ`#n8}}Wc9$I9H[.ך,D9@Q-{R"Gp̎3N4i0lNc]o&z`Zp_@k;ĢZCURz!Br((ؖ̽TgK 3 57XZXՎ+}:qJ|PR1}N˶.}|,e$J!dMxথ\94F|!-:ٮ!zlޱi„Z|4^z>U soe}Hi%uzE/r:+Kpw*$(JaRLCT h15 HZwkA[ w':-`˅poFjSmJܜ"!Ei`mxP7֡a槰?=1©To嵣p@Я WvNq;n nCعNhj'|'I 9HG~zx1|Qeȓ0:.90zH^YBOL/u/_SY?F ?֏45-Y$vu9M'S@K^o"Q}/z wFe XGZng* TRԮ;2b!#xlই\e%`x59 tAьM*񰯴SilvCQ{GK麔!LTYu;qstK=YVZ,Y]o܋2krRqR?!"]* (Me6v$ åKY+ֿkOPB4~ԘqĜp$^}a8b߲dJ9+o l+;r,K ~SqJʛ.(LEp"n%.[">jqhﱗuPHZ6HE;ƺa]v\ }[C- R,?Zzx3G9abwv_ Jy3ΣhcY]>]ynfX)PyV% tAVߥ@YCWpW{6m^,S2 wD+&A|V 0CcW ]}@t:]w* d$D6q3uXRqمǺc`ĭsCElw$Sw#+C^.-^[UcR,7zdM Ou_{pQ!]-<otk}[(9vK@ n ~Z'~|ba&` }fzGdF0j!R"TGӘ`!WQfx$C}2¨,đ^m=m %UA Y~>~V< !$ՑlMI jhӵk9zS9,491*Q5ݲn P_?ߥƣ9ѧš*L7\<8l!bT*PhgI ށ@Z/n*@Ega TRue B\7I+u9x]p]\&oY $Z TФ h!7;e< 26bh:պR.vbN+"=Em9р"UF**ߙečiYP'Ac 4Mzъl .y ∈!FPh$r'~#4mwƃ[^uHMSDxO !㖉fB9u/ 3v..Je4uf vudZcr%h$cF.Ӆ*4wŔJg}ew_eOuT)S䙿+&Cr@\ƄalLR\/VoӜ  @`m%G+!k$A~aW *?ԇ=^T<1EX)szV}X4?a +?JKԨY66)kqN0cʲ W^/[Q.=Q4G6=mթe2賕E4]k+zv_4yb2 k T*-?g:JyŔ"=jph|<̨;U*KuO/[Ԋ ?t|lS}h^gb7#Kҁ_xԡh&g$M8ϐL9Iq0{S9Apf(WEaIՀ8oH& Bû2%X1oYRڊ/p\+YŽzr5YxN_7d8ᾂD!*b*wa] ~@5V`"@an;#e0q,0@Pӥ>FZɷVQ\*=I/(kOLNzK7 >;}Cd )B{^*HT=OluXh,.P)O30m`]A/ބCg-TϹnpnƍ-[ؠ ʬ )H_"ϛRV暚-(ل[mBt0<\Tdr[r9(2 7&p0ⅰIf;OFUOXoK>~ *Zk@X sj)tCBS(fr߼Gڧ]gW IL̫O9EK-@P g8GQ^42~VH~$MdZvV,-R.7j TDf{^O\E 9UBxŐm$14-\N9E34YGsY+ߜLAw'&HNaS1Q%6_XZFx"kCipS_k@Э(Ghr,%s$GCnjφ`E` GA%!P71ؿt$88hI1i ~ K&8{N%QeVl XpCxL8} "@K-JsZ,o" &cYv|G5H$ҽHіfSLz='@ ĕ8zlvS MyJFdOm!tr+Z/,mf w0+sufSjV`7"w4Ac*(rILbX``+:UW8-V+Vtc!.[ZA(UkkF=-sHќrhXq=Q;:`k_h tZX wު؁'f,-6{lA4}v'CNt48 <~'Z2E|FM;[XaQJw@׫IJ^ӱ¤Eo >&HV(r(ղrrr0 Fe֜w~ ɢ']z޲ݢ#X g oj31&C@Y7dg'Xs>߈؉X'!p r-h@auUJs*:xjLK@HOے !LSl?|t[‚iH&pȼ_ɢJ@UL".c#ׂMw+LR悀ۏ 9imdtezCHF\L3^\l.T^-NxXbzc*`4ؖgoI%ȉ sin~6^T%fv/zimVX\ <`1 R0,RXhEXz:O9Ўm>pD5f+z([/@ñZR_ ɾCQ j"&??|Q.tGfyX b=JT=PXĒMGrQ͚(!VnO!u<9Vu.D \Ǘrg 4C5pEb?/vKצ0΅%yRFHʕS{eO*K{"iuB$[o},szY*cBW_m]`I][+Wq 1T˶Hn3srA 7D=6uނS<ڒ[C䌛Qk/g3Um(6*t2YGI(a5$1O[8fr'<1P SƗKY[(NQ#ؔ=C&m,!"@2P_Jcgo;2ÏbVJ1v]L0iDp9!\wx@` _F;&њrRj& &\8fV#(W6L06n(s=KS/.3Gy(sMUnI4熩*xo>1:(,QYdx1G}B6y`mn[^" 1lM И=qVWUW{`xVU) O G S}_l}mْ@ӫS)]>xwXY4yK`AtphZx0]!,-@fGkd:Ou>EabqB3v;k`Oߠʸ=MH瀷OaL2d`hz75\S e}kj_.1R!G\?ϝ=IyhzSпSOCתRAM.>l.|,ҫ8{ .b8 tROL//.Іswecr :IJ12.YlJ,K&ţY#`^&^P$j?Fkrn^L: u0ܕHS;>6a dJʡ WޚE$pYޕL\s۬5\#8>&xզ]yƢ"cAGzb8d )yA1/tF!qzwڸ4[ŧH;(lɪGI0 5Ade)iTE4T{GzŇ )]s kн9QOώXdQieO,Wg/rGOil7ၤ*~î6ȬC `ۇ3>eIe#sCmWt'fQ,i}FvL|k2ٛ2~ #`7#[p طP-Bto5^bi%UuHTsFCf~xZX،kM @˴abeӟPX_fz'Y}Tn86"@tuu=W($5!ոH- y^ zB觤fm EHmPN%NLǻzAGPG%3 Rwv4:r cQ:.'QFʯ!8F;aI?/ԹWBp}U9&,`%SȨ+vLb!!jsC=ÖL HOmB{Td- H$iěq*Kz%Nu/%.GUmZv}[ ; dI7|hkRU/٠i6-d֬bpG&KmsWRCn&Q,FZ 3Y?w Ws?0z3TA flX 7k፳@ևǜA=Y&<KԱbUG]3ю\ X2hHNC^Y*d^AX;,u-k,D6UlrSYS`*KMa:/!ZOOo\_Ӏ=aWI ّBEzܫkc("_'" 8x jW;.ث 9!k'QGni2vբIc=RA^_όR$Q!JZB+?rgKw;XK,"(#0HօX%> ͐ϒ_馮P`:վU:ڷJ%b>Lh8"?5\M pkPډG*&-q"AR(نTN<@vd:yg=(\.քDqNF~c33$/$f`%ճ%R hxV A#Iڴw4ߣ2\`RZuO+C cIU|DCalwIe@7$/V"H 0:Vm^vLH@ᰭxy;ݵç+wy;oa^f˹WD% m::"\KwYQz9k%OÙ}d*5(zk:Q;RlȗU3IV6A(Jq|Y4iđQj:dE<Ȇ\B Dl#X @Lv{+qON@LjJEۍJ!p>8oYg U WCWQ0q 'ͫӰҶ$% 2+2zXӢs{8蟽Uphgڹ  _ ]Ҡ {yk#ֺ`q7`F/˄"“ IEI ový-*u7F8$-8"Tvqsjo5a=ǦS/Nh!tV*%clMqE_  } VGK ;Ԁ RYp~gy(1lSBܪӕ ~ҌӤu>QI/z&RZ,IdqU]ދ Wն"=9WkcayA8CnԐa3j=u,luN9}2J:wRDtʢ'd2)4x7zO7i Y0{v[F{SɳXk&65fٖ1O CXR>2.m!oFݎfc ˉ#5cWs:@W5sڏQ#P=:dDN\!*h"&w $ Ι~R%Z3.9ݑoV{M?lP돑[:! r YCn9S߅D7QODcV{nA}j3 >B@_u2wœ#ikjNOM޴SNډm?ًR[2N+ǣβk57Duc֣&9x݋$ШN[w5mfEPZQ!?.~dlmk!|MdWW#"ey0O2JUjiX1 igRGb& n΋fXIu(;!r:iH`wܡ\ 8(WigQKV)a*m<1=\0g{_xuC@VKoyY2F "^'Pvl;81YKNZyg\ʾv 8r&@g Yxd*>‹89nsKmic$s}z= ᳣A : );ߺ6l%hZ6I4 'Lϵ-1PNC`v30XN3 i=<\{b[b츛E-]hYM]{7>\wlڠ 3Ό%sb<}=AY_a|q%k}sDQ$YF q^jF>T/{xG?<l+L5qJ1R NQg g各\!u_@~) X-nkhqp$_:Z(Oa96 YOiEꢚ7ΚlZ$~ Ți@JTv0sRxs T|~ߋA9_p`~OkM :Wa{@b4[{!& fCρyweoֳ:Iɗ EJ2cć8& c `.O0MCiOX^IǔSuݡyqw̰˪HX;@;gc ~Y0@*W-#މ8 }2@ dO %{]fl#A G Džd[HFp\I/Ȫ>ưzν+bvDmU16[ĘEp$/|4L\iYPHNߘ&>d4 K@YNS YE#ͳOJz6![O \ZM];P8&'u4Jxo.6nJՎҫ%7 08KHvV4^p6,^4MR O.9UdS,y F4?6~Ms >2A<V,59xUZJ-iU"&w4SvÌ4]0(ED7_[t ~aE Niµt>-➼ v (0A@e>PE@qi21ލAn- ;F /KAf<to;*]2ksjx4J^#P,F+^JS{"px%{P:ۭ~4;K+kiVD(l_nˡְʾ1U fEndxex=Oɏ=&yWCW`DP!޲XPё_0̡RBl.kjm>>k+}{+35QƦHЦo{%F)o(^q-/~;9x?2Yp\ӱ-Lk+=s_{c0"Ov&cCѪ^`B'A&艆llbwIzؼ"J3坏:t_"-Ḻ7x[kQ8/j9n[R YPhNt;7K4*YU./[30&[_x98=pEKՋC\ @Kw/֢p+AUMp`- aB!sH%\V!*E"kn>Ų/`~y8{,"(՟+g1F"s}9(,;a'|);YP3W/]sTע*0!9٤2C\빥PGS\yVc݉. N0۰çrw4p"J%˃<=l lF8HWo&p4?e٧͗dvՆ\kj(r!x3$T.V52Z<۟vs*:ʅ-[q?`XxwQBnx( #(;ݙcK%"OfP\'{#:o6}T+!(ߜ1RS;ؗD&"Bab8\Veƻ:)E9<~-"/d#wù %. 0;"qԿ9ac5O`imx?ұhKq؋NNN=i,F[{߫=j:vHjT p3Q\*-zۋeB2z_pBW.DӲ:a| ,{$Qa*qfWa.ehS˄/$0)z›O`\x%;|+T'B6쭈T[M^ԀO!,B&}4E@Ycr'$ +wC`چT}l 7j`<'j~V]oEjm7kO/h ,3%1 \Fͨh)Ѻɿ zmZ O+;( W{sC~ukErTlVݔ%|)I؜U*i1[F9ŝ:okV5R$xwqƴ$,^h!(w4▮;Yտv| 1%4C,У"_/HAt{?HlH]^~1aURڌk>-۪Ixq:é6}Ã@_z*j٘5) !M[Ίz8nhy|g!qDI6k&\CLcmMa@Ca=C -K xTER~vkA ix9;Y40.'ig:-H!{=cچAn2SH(0y{AanD S0 T' 6}tWR_Ez掑V)>zRF?K7 `{t='[…wesac"U \D<Hb\X2MBTY-VoVlÜ0VQK@!,J`V m b[G(({`~3}Sz_z/l\fCuچ ̨E=8V t Eȑ6^'7$hRyMN$1͘wrX.49gCD$E_{ JjX\ /9y; GgDဇiȊH htB]5-#c$y5T=53KWnaRh&@'Gg@z]S JwL w'Ok( 'm0U*^A^T@!Ж_K iͼ̿}n?$s: 6csvԊܲHs;by3ʰay^5 l uK>*R>a/#NyP>^zQ l*p(euP{ïq$ZR2AbelNbՑ#F(U:D61x|-K0C]N8jB'me˱F?;S2wLŠJ[N !2?23o!LO6=:ZrOȦ1ua d[0-;@ٯc20 6G8ZYeF;Gt1:V1il55& 5MڎDf5R3\!S^B(q'&X%Ӕ?P˻a6{ ajooEqA|7XcRlţ4!0o 2)7H?wGE77˜rdFI8j%%(%Bbey#} LeXns*ĴdžX[UZ٣zzwT󻍴s`974ȭŵ_"%۫!aԒ4D7+/Hv36?ƗMz?C@V.aN+ΒJy s=!Y,\_Vgy_dP"#{x::/(z._{b\z(̭ @K_9% "Ňb(S"1.W~'I&īf 6rI|?q3>U$2&>މCh ;} bmuhL]X78<7٦$=쟚9䑲" 85:lt?d}!J`1(}D@KO$;f)Y᭺/ b6>rWN7EMGDmHr- `JҎC': D.4~C`K;0<.ȉ&Jp軶ϼPz9|#_`<.m*"DXh{`UZ2e7l\;9wO뉽BzQUUք=S+1D2g_rD{isThnf Nݿ#.}&ʨ"#̍Aa6s``Gn8uo2Tw ˨m Br%1dF݁yETv!(oO,S${EJU^ ~Աץ;qGoj&[Ss[Ti ?@ɖZ> ]| #k"/,u;ty-?,TdX +_B.VkUN-W֯2JwK8u 2Z]M)iO(Nڣޮ>ekJ}D!c"!OetÈ[#|Rpkj&匷d&2sEK!:Ye J**sAk!qW* DbW S43Wo7旊M~ڡ!i@}sT5@-l<{mo_(.'߽bVȑlޯd6"zEp,e SGfh>}К! ZNf=+ǹNjx>Ky4kSM"%7]y_ ."k3KlȯةL6ym}LF 0=QyWj:?n\8Qxr[V=xى:ZU6\R OLWaSCßQ,e1Ojc7]sC nO/YBt8V|qz$dXrSsLFHiQq[ eⰥROQF NOugl{áPUA?AB7RHXxl/y`hd(9y CLjR JV |]DI9h!jo= 162]KM4ߧEő4e~r,Qx"mUA}\JZS ԏ| EID͠%}r '[[cs)'"uܼ,ͨ@e,:RsU>Y(+cm?vc #!V?؟\SKDDXI=:j3,n*ş!5Q3(`&R[q/֓ԄѰ!W+ %PrZ%'J+痟z9D >. Vu4 2ٗR2uK>'~d~JvѓS*m7b:-׀RK: c/ i~cU)NVl=_ ޿Wq=I=7sF*g $}%ow$Q>@R/,G>4I7-[ htAFW:+VݲeTU/j}I4#Լ4ȂlOxhG,E%Q37e:T-m:ϣ#h%O"z iqw%3a"&O rPZHCfC̰8µPOgT0_.%}=BXU%4s(wN"EL9h1/eese6%S1TNyc35$#ANnTA~4+sѻ稊]Y,oJ?ST׭x@T:dE 7bD7Xr;l.lmIR"Sc7kܳHyfC?eZ&<, ǻMe 4&ؕo'CITVY@ O̫\bqk142[Tۧ"Bƚiɔg'$Y.w8tM~4WaxI?T DB̅N]MNjQ|~ǯI(xߘ\LVP`(ȓQofpÿ[xnN+Qm};LCXLN)c U ):$Ctm4v.p(6REL`lŊEhQu1Z82O<]?Hpڒ6;PJ;zѦ,֠W챾 ,mrvHr<8䴪wDgb`2 C8 Q~Oרo0t-I]%]?ۙ:FeÁ!o F@$͐x::_G\IOOgGZH8:zD*R\WBb鱰 .F_#-b/WixD!c\K({򃄕ByھX^8J??R'Fu Ui .vCZd$뀌di8)wJ08ң`y}&}4/< Xޖ2v}ff%b\$x`P૿na X!F'_Z.BUZKt aApЏ[ Rܲeԁ52?4{ąEː 8tѡ2 mQna8͸pd-8 H[/12%RN4Vɾ`͡i-?^TP~?󕉳v,TR S2+^r8:8L#⬀5tt)dm Ѹ|.nmE@3\VEzޖ6֨\]9s6m?yh'I(Iw[MYDpkS7NIH{=5~H]lwRds: 9t]c@} 0J(Wɔ&"MHJD"˼* E,*&.|n僄aFY{pԢLGj6[?J^ǁ(i$^V:̛_҇MlC;JCui 2iP%r0|[uZ'1x ylWV}'A^F.ӸDЏ[wsF5gG-QВNu bNI\n)UH0E=9aU) o6 '澁HѬ^p"y+:=]E$Ԋﶖɟ\fnڑT):|'$O}q1oh.WtB9,FTètѤhvJ,3x^_&6) |tpg r\3O@ܜLI:BO<luhB]g&}:B PPdEb YݖG%9^QY w&Є;k J }o3N'DꂀDd߆A~!#%2߼V|l~;ܘE mkuHa[ GЈ/TîX4E\xRHTډPHm4/:[j4$2B2F'tP`1)r^f.t ̦g#G,FK@c;[^n9:0~2N [-ğ6hCNf]׮жp#|"s^Y$P,Fj{KMڗȮ*zV[ BUFb=#>,/l[ȶ>,c$N5)\.d󳬺ѷʜ"TZϡ ?bQlQ8@<_ǜ0sHQ,@@j.5Mf[=mG{cjo-E K~=Duh^!_.F;eD|Anxq!aqܜ8>IϹZE˟ :vn!"-Ar#w;QnEWV{UL,&/LvEjoՋ8wTzcs'T{%Q0y.nR#`q솲\̼hFƩT)AS,cj'YT)"YSUŴ$5Yѱp.pƥ:ڄd?\oʱ".6w8ƤFɅ 'ɋ8ڈWA+?-0hkTFvƤQUZof1 1,y)0(F(4b`l74Tm ;.fּTãPu a|[܀X ;5},]{<C渙Rs.(c$ DŽo v#`V}-C+=6%ğ^&{gz,lʆm- }rmN9ktVEJK@_PK*'b{^t"VK\،}b^}2O<ą6e=Ŵ^<)&:jX$JglU.f҄I&H@MSh )ZCzϝ 2gyGafigX1; #ەOPlH)Jmʂ^}zm̤X>t}~a:,`.,K˶w1kZY79i xK=je1 C'U9WiA%_c|x()1V9,Y k;' G{{$Q/ J_fero?n-rd֖}uijQ4G'ظcDD ~)HI=#À#x/k^Mak A@'8_;2 5DAhdbB$%7vwu@ѱBb<3CTx9}4d=#>+ Xվ܆|\q]aSo8I^?Ne}I6NɈu$:}~k Y4){I I˫U,f`侻W{x`m~IqX[)f\;P@(OiUR_!_Md!v*s#pXcW H*i+ N[V*0~x?.?ѐ\_0[:xf]13X>;[atbjCSP>?2gBDKjW%? +w)?!S#}Z]8iEV%C4>Jr׊ٕ[l4m0Y }AjrcF(F".mY= vjHˤ0J슳5OJDi>p Ҫ ph?D5 7QY*_~h<`LΑc)rV/bTUrS+(XS;Y!ħu'eI՞ɷUb<_kaG.n -~G\9(ڢdy{k:s%xC;4+CZkH=RՌ|B妻VWj D&%L1Ѣ&yK[)?rz17傝Ր;wͿYWo8T $l" $T6U Km K ls 'YYܤNA77yL:(gyp3t[O/ߪ#$(3vhQ\bvI#hl]"6 鎜GJՕmvGcM=(AՕVtrN ?2S`uA@ۨ5UV(-pO{["^N 8 O_䅻X4.Ý}/*̥/7\:z<߇ (F\Qho\ܗ\ 5.l)QZbH<()S`9d%a,5y  k)N:75^?Ў)5$ :H#+52*HQ-<,#\"o>|v1n*zi9 ztÎ뇹 C0Ŏ uj] l(^w3!МŸh(^}磼 SO6?F%"Fz 79=6n KŠeZio}HJ`4=n *V[ZF :Vk}Lp -Q9 cBe8$IMqrgKќ**9KτƷFJ=,u]3lfGT_*q`B6掷2.C8H YR^}k5Il_߷`&҅vj nQ ]={i4@ɞQdv<,SRSar5*4 zjr3\ -h̠ wdP#8C9 1UL]WL#h{4mV)0%kc;<2 8>9|>HװC`r"Іpm~{s~ÐF=ZlfoH0Ρ61085aWg N !#8*tN5wmxh=Dd `wPn:ɽ^:[`;$a1Z I}M{em`1l,)vϡsW@74bVʂvB3LW[1<\]6c\1A "Wg-QćL71]r`.Kм pT30J_͒L#/e.o;|cseE`:kq: Gh= ]ƺ Jʇ}Dt:\ ^PU/U)PohunVvuuETxdq?"4PvsR)WxKcOD[_8Ɉ4dH[JgdV(BKbbZ˂XdDHVyd6NHu:C4r8]?_?9魙HFV c[o!PAm^85ۍ_~KӘ>9:  QWƟ d[*/IQ)I,dJ+@]jDq;Ϗe㧫] 08y ӎOJFm:?J!+i@/͂Uʨj1#m-ngAq!UC뿋 ? * ?Xhp@T9Klᴋi3y+~ۤ^. /9uTT-lPN\l/~g\\NޭЊo-pKm0-_ip0W3 QaH&۞)ƉVζ^u?%ئU4.<4n0P9厒=Q SkM{8G\3}J^ܡ͵ 9'!ts. m:Cb B.S&_p=Zaʱ#%y* .e >أ)+y;$`M~1#^&Q}eT/5S]]"@+AdžmyN10ޔ/+u!}eGHWʈ 26?Y>`Lx%[Br{BaD Muq,Olݥv&lBFIi;}A\L<UZةFp颦so$vg ^.1ȕB a:.Dȼ޽If)g"MѮT^F=%Xrz2-TptP^z'(ΝYF:4C@ OD`ІA Zuq*c 1mT`OwwǝG}jP~{#m@QKvu٩o>3]sBQT.tvBthNH}=" 郡+ jPq_70!QsfU6|RY\Nu?(~8{t\L-{r.xa' 5>{ϛ;@6[DVTh+Ưý&T6߽[2쳧kt!%ZxG ޹op;]%W#8{~^;E|@28j(pR&"Ԭ+W 0_FMOv%T)bxj =ӦK%w9t62 M.GA\ XfS1kqyF>9q^m8i6LyL&{{-ʹҶ MY$毢̳#P-BPYXR 45 E(e2&p3֌M~;1˵߲E>1gڟTS ٶzs pCȡS4ʞ>NZBD0hlvfD:Gh.b0kjc.hBL0%Ts3VaH/l/Ȟ.N:"YE> Q3v};OuG5Yn k+ 1RN4G2_7u8S>:euy^1@tᘡ<36[8|*9-.L'@HTC έ^ি nlx9CiXI7ʼlnPyYl#+l@y*4F bџ*:$wxa \ %l/kou1025:D'ѬW_fb_;͜-.⁞l g!xYN9!˴v[3K;ykQJF˂*-_  y!W|wAYdb~ItBaqAQk!73vL<~. FTJX}. Qz ͐Rq +L}< j,}Q;ٕ{ԻG2l#_[I|m!XEXȷx  ӥ5cC~ }9FgQ3 5Hc" W"8sfA[Z vj kUX)xPN)Ek 5;I:D/X:/t(H|RuA!Q>F"bs]pitcX?BoѬ>hV j)YYTi j{ޥ"*1M* x) -3a;6T$J'۞%*E,&SGQi\.6"zWAc^* Ʌ4,8f|7쒖Ȁ#<ͼ%=%J Fɚ6O*>,~ 2]w$dYج^Oʩks8[:L2c,a ãc'~Ep=j8~.{},7%|,d1Qxp&!w6Tt*P!t~׶;t%QYBP)E֤(Ly%ax t42 쨭yh*̓ ;=5 : i+v?\Q%{_fY$Rys+tڈ-mg0#^cn &ḿ\!; c"3s0X"X8ACUBJTaaX)/!?*Bաٜ8c5эgX}yoRyR-J4#Nx$kxDZtux|d_Zd~rp |PR?%C0f|->[$YD猩Ɔ%\e%u{qQvr!&84BH;ո\هn&~P%J:?v|,>] mjEϤ`}IjFUDL l%Ĉv Q{W[3q^ˣ'uO]Лx'퍭;GʖqBrM1 Z~8s H&Pqח|ጌߺ \_^Aa4vuݟ!9./2H{g\>JH`j-CQDt70Si|8k}q|zI|oQi1Ij?sc"ܑ$!/^0zm\y0=@VmX^ cX|*Ee ~FXxV ҃)fϰQ@Ch+KѰLe%: O$B๏(Ŀ~᭛R_r;=ǷgZtTC;%FoaoY {U9B-bMAcz!^QZyj=f= %z`?e'E<=8A^LX@5+n0g{_1J _ uB?lyp O#>稵 mggU]''LhsԻm0MO֤q/`|1+BYVqxƸ5̂+EVךr#0Vj9C ;rw̢!U?m- KNw]P&Pu-[VE Rs{tDj+) !q<9yH(mjaLʎ". ,L5מ?Aw s{z*#1%iK*Y}c? aM[3+xYY!?cbGnHYJX,iBnN^Xi;%H [LwuhN;$ '?o^< vKUػɚ'~bjZXLy#3NeP{G 7M@ƽ.bN2@qW5w+Uv3JElGWhfe÷K0sJ㝈5/xWy% o%584}NԸ[L eO'/~1Tb3*^EnDsTx᥼˭5>U!^9TCrnUUYIjؔ~ĘG63} q |kgM@!1]T!8S>B7&u_,LlQ[8M NY]^C=sy|vshƧ;0OԀP7a2n}υ Owt X K, H:&`'[]ʙ!!./reÁ oM/2h~'#~-OZ L}9] _+xLF1] MHov˲'0%6{E‚j*5PNPD\+T&XnD^&[UbI*WtT4 !䯻hqE# 箙IUޟ6킲>'(#_OWHr@GM,K;% -V$>n%9tJ3 ̘( Ni_*g X8>wά<,-L>JFn.鶻Nql2QI(.s#19ӭvR.XΖQ>FXZDT_fsz!-&N2H 0 yr&s/:y aSu4<>RF -uY.Vj 4"ŠdJ.#%阉a 4!u)yVRI_h۾7Rpo*,@zi4cDzvK#6`RL2uC#~̱s~9D:G-e "ѝ hf1jl 2Į ;Ȗ Q="]hP@/?ljäi}_wRɝkEbۃL ^`Oč\pr&m2<ֆY[[I;BUI%nq ATagzjZ]l|Мa }$Y`Z>$#2:ÕmNO< tw[*kA_HĢNv0FH Ƌ64҂7KFR)5QÛ&s0dvUEd|`| ."VRflhLZ`D!R5@{tw}mێ&P{-B CYZ`؄*֟SA͏=@q#JǍy8(:6AT]U/44thTR H m-PIeIĒehܘK]3i=_cz_i\ }| "Ajd& K\e\u6#L D)" P%%1YiglFQ!}[{Ϸ8YΗ |t*EEԇ}sp)NM#Ӌh]J UXJ]ҊlRj̜>X}RP[->l2 8θUXN,Qߟ5{ -n"@߭u[۳SKاQ/+ N"͚1zORaT){&-WѱͶy>7ݴBMUKl֨jT٬'r/ͯ(^jVẙUZP*vs# ȵ'$92/Zc[93eOLjBۧxYSq9ļەy,[V'W.q#ϊk%3%7X۟4_ 'UZYT 5-kקqH˩4䉂l{s^0HQOk^Q0iQM}{OW; {h}2q8he,C$##+np ĥϫ2K7kՓ%BɯPn"a䣍q~ ~CpSbe>+2wg ? 5GvN`ei(MnYG#n¬$H_!_s ]`Odw{#rTR(Nin;'/5~CH( 4RLϟ0_|ɒG Fφ(:np !17K3Q-BmńOyˠzwF_YeG٬S)%y ߛwJN0/_}}h2ud79yFsȁ;׍/=_Otz{wXZU)1H smҾ\(F»JaZjYVxZ)n ZOuP?Gj'SzdFvIZJlv ة;#ڙ^he*vBGlU1ƹ<8\1UQy=tiơ=޴PؓǦ8=swXZDigBLᣟѐNYRR OyBt)n=ԯyHψ5Z5\,/d֯3#Y3{ @v[{LU j`,Hw1EJwjf^*~^ jsi20:vaLn8QgeIvUvPˊ`V\w] w:bg1b6b(.-1gE~NgZtD4zB_jLQg^r}LũQXQ_/LkF/9}qШԕu0[`\qW@baOެOH*xzrۂ2 }c8kMv|5o`zc;܃T F~>6w[ahw8=DX &# ~5NߋZ|VTItg{D RV>4'r0rsDdVE*,/ȡlΑ0-P%sA &VVE* Rok@_.e^ǜxnQ$e\n4p~q3&z$GeOW E1٢ h*5CIZN*F^y;y FMK"4k˛$1j*Kc7%FF;ޤr9e 9Ƴl0D:7d,NDFDFToUBldH9ȠO@6sn 'z46xpw J%6# X5ŕK ?.-&1R ~,)XW}tQXvdOF>Ks0iYvO nBb$U,jx .p~SsAJʥ=a@U!aϵ Ӕ ޑ" }7Y{YTκzge7hj ڇ7!n@`U2%C.0lp Cҫ6#:Tvn_frՎOB9mJ%2$HX@&#YTEkw2F>{ӏ4Og7J}zh&VPDOX,atNk ñ3'_즨fg/=Lti3I:O YvpP LVe=\9Q+Aӈg?(0Ⱋ? VP`AY"2H2GQ"wcΕ`\\,g_TeD*< aGG~9iߋ8Ryd:@MڟR38EjiͶ:=z^8DHq%2ϐKaSi3e*I3Y ;fn(;S aw.@ SД!0i/3DeFJk]GObo3m_>^NBBtBdO+2a4 ˽eII;sۛo%;{uЙ'"#^hyB5:s&!ڮʗƘyKT5st'~v*htF't}SKʣu-э#N !u;TY9<$ >%D-bFFTe5V fĩL#qj-ҘjmI;2>TO2;Z3Ux/(rs]p 5A& ZS_{|B8o3ӛAS[#+L`d"fɠ Pqz_.-*~+d%NlcUNT; we{VVN;F_Uh,cƆaV"&lw#oCVF| ub>.z:\Nˈ_6Ņu,eV{&eY+p7 =3Q̹Tq{rwIBRғ^[nÚwSPN=+P~wzIwr32Et%[e1( ԶaY"IE_%KO/3#e ?>\\ Q1-X9~{* J}3MԻ-cTB'oM3,Ճ&{tF7.{uQdby,Vցj= Kؖ"$"׸S=fDt(>.WMy0$=ɃtG*(ЁklK=wǮ%dF`b.ۙ8e.ձфn) D]pPQpe:qgIbFGNpQTߧRi^f]l0,ԭEԶs79hHdAwbeFn(6'{NdnTU_j=Fd38ߢ\i|RXVsjGij[LU'P}?iAM#Yb_$a/xqs N<ڨAG͟E A)2'.N,+M#>EZo} Z>&z]j5'%%a$6Y'=tt xauoah.t0dۤw0T;!4Lu[ G)t`ft誠T!Jp6vrj>A^?T.}2'&]Kas)$)]Kʼn6R ߭`OGCяVw=daw5Xcp o-K+m+7zeas}95X d/i= ڭat9mAaodx22WTsWgLo邭ڮh*[ʍ51ʧt_zY}vOvŰvɭ==p("J%!2.,"@ ܥ/sܡ7Md•6]Jtd9D]CB6\PsW$n^Z'ÝzToJ{ w^"WkDC¢RP3 }>qd6Hbe~lbaE`8t2ə^tl@ұۀZȄ\iwa)TMD%F z?; FR`d@ek$[SZU.ctM0 ;M AX mHŤ^Z;fV5ԔV%uv$"I(Ow J e?8֧H0A5)͛P gpkY" Sur#Q>^ekʥinnaSkO88*FnQ3s0㨬0-~UD<ȑIIsF-`ǿas9q+i<+[ ;I,.ǽ9 Q{bW #Ll I nj~j Vx6`Wcm f[Y+O͍ _H=$ƍם "4F=8KD6oD8T ( *o&D1[V}m0 1LMA_*{T_YSua <.S v^u70R&0 ;EGrw$s󃬆0:9P?3g(nO2(2_LN(\HcRUDt&<@|5P <̝[ ^bhU#+mr8Bx:u3?`AzHoS8z#(B~kpQͬA=ND/S _nEW2o]u{. s=M"FYD_BVH^ ^a̙6yIsiөIJihYAГΙhYv_BەQL\P7wь5}M=bF/T(?9%ϱv+dL.Д .xP.h,VS]N%x 0䍽,܄-Kv?D3ЍU3Q,I' ,.uԣ^?a_/ʟ )5>ѲU'k7./pU"2r* v{(3*Pd&7u؊{Bw|pvq;@ΉOm0?_l10k >_loʡ奀31]qp.SFRG;aUC3 8@4l;jES*"¿M)iZPydTLBxmd_>$ !p7M5z5š';Ǥӫsԁ^|HbԂnLܸb56 $ 3` i"%]+1:Y";t&߂huWL3%[vB|}f_8يՊޜǺgus .lf*I-+5!dQPfta5ǬƓ9%]l 2bi59\1s/FnU5<>HhyqDX+EͩSyش-,-@dd0ﷅ΃6I(-`4wU뙱tɞar'>(etK6GR (C1R]D׷qEe5|2^vO=j!M}%wkN1|ns,0Ko.E/&\ nCNnO; Ə0r3juu|fS*\ )S 2$#@]0U7i.|Xr*6f:4vR拍i&p==8?` wa;ξBK^h0\<سKf1]ҒNe88ҍ;g){O_{'U3xvFO?I Q3\ݹiri'z(vH]`|Yzk%R9Q (pg2K[ܧLdzZT _;6xrW2B;c6剘z0fD(ɵ@"䲁f<4էxAa*ezӗ#`) ;L`k9M.rnM%k6$-1Hهrfj`*Bf@Gggwr*bŎ!B}\ b%jmm!#3XN]Mdbc?>\tz؎2х fˏw~~0til\]7=#>]LN`Iυ̷s\"cE#b_0pj?9% DeY| e[x"# R6 CJB(TȭhA] |#*?5>&7clP7SGM YْnhǦ)ؽaa ']j2 3Z4KD&Y1N R(b@(_Wr/% 6ts"=6g4u1tO}P+<'+H(.; Pq d0[1(kD ^D4i* yoe-[/R5~V|=_&UJW ը(` <BC^n4LGV%bĥs|$Jx0&$=ۣT%U*wy rCI*hgmG (@jkٌ6(pqY:*\'=ٵ)3gtFcK̫/#〿5"ʗӇP2W>T Bl\K޴ȾHİb.i}5[22WYsd" eV:ϙlZN`ٶ3 j hz+\ge٧&< a6Dݏ=L_NC 5s] )ed%bZ}gX,12 C2TbyBT?iUeVoz4,Ŝ,u po%5)L#8(؞BGH\YtI g^ƫ":-x{D8-^~}h>Cp?΁Zw 6 GGw8>#CxoF0j@hn ۙbY)oU6҉k?:1->&ŗ8&ΚRP]$M;MM q-Js#?4&B= }2 ӡ4}oAH&ypV hCNrj^]91u ˿Y#3=MѭTTx CʔK{HXՊw7ٝRk\{^O{v*V$?7>^q J9~'?"|u@BшuJ]cM*R /|}#}6ƫ.?+񇣅Wdž-pYIL(Y ^`ox8/*Av[ Idttt0@hFi&B8MgZ~1`'%/1|7Sն)SR^}Qa49`9xzf.@X=`7iig9؇1X3o^Kwr!*9;].CpG9ln*D;/d%NPDM-kQ#Y q͍MJ.SݠQLI$ B9nٌ8 CUm"0~{sG◷k3hdeV[-D  3&ޒ (H$)Mq@3LyA9 J qƈSog@ÃIrZ.(Te qΧ{)!¿fwnuhϛ"7qHն=#0+0.WtR)D$jDE.d:Wed? D;nǞҺM~F G1+^]} HO=[JkDōE7s4dXs>M9̍'68&p"Cm&gPZ _NzRَSl7ɢ?kil`#eR,(IXAR1`#p*WBl0C))ND/U;V d|LeM.PQte$HL{[Ϥt6|8@ ՞7o)#9=q;c3f /Sk*5=sQE͸e)߸[jZ1竅gYqӕN QNE!#Mep `GˋBCbfkp4e?Y[p9{y &qD >F$H tOS٧& w5yg綌 g;>ٶM_唜7 !6M&oFfPL[$aw^{2܂C|"DY|{G@!+*xCW{ Q=rI9T,,%͞o0dCq *N[9ĨX<2.A)55 }4q s:"҉cnoR]%S{g1WʱQ ܄Šb0mYXM᪏7 ̣+ ;8w:.&<s#6Ȑj[؂oKPSJdYe);:"c>ҳ yBlCQ%@Z0/|"ijh͚k3f=u D;Ѩrtj+M2 {y $Ɂ Wd( gkD hTF鴟J qJ3.W|].vTYؓm.ީWj[jtx [P9)3uFݟLc9P*|mǞE߼)RL)t\a:5p ^b*~RU~W6:m  mH(_|cZ9E}ut{6e=®vhv>`7/:8 JEһ,^+0q98T){ 0Vfwqy%)'xJR %Mgf:mL#>3\8?B%zIN. .)ơ[&2-K_cC.t/2e,َZ&4 E7dc;.< dˆqL@ O+ЛT1{U\ԦGmǠ6NBr ;)thB,N)tQ\p"WDҠO\ɃAc剾$~j& g]k/ZˌVB5T`$jf _YsGG69KptK1P '/H˾Ń.;{T›@iiMq,*ay\Ao?#Rm0;Di٣F)$jhX8ѣ^W=.epX5-$E{v)ӼuxFZLX5e~mGP_H$6Sѯ|XՌGvF74 iU}]#5J͙.0`.m sv'/էܖ8uӑv/le OM1.% _ΑTq]dOVN$l m K<ģ[4;c3}qތUϤ ӀHpVqNOYsQSBP,BFaYH8__NNCϰZjJVw'!壴G]HLBW50K' %+S7ZFOztSO"5N;e]gl-Hf>~[VnB'=RۢN~bG4n!keܛ"6"lXM-*|u9Iox8!2u^⨔öp3e>AV}U C31kVI:D"A'~Iae"i4nQGuOPYh)x3 J:U 0 aYoG%\vAH|_~Xc᜶ ][om~ UϦWxN꾊 9Lܜ.h PUNxjR7S1\Y] Uȍ\*\K@SQ1OȜ1-~ qw}hMp\#(tpί)Ra35I>N5=+ɓoC> 51fCb6KuȩБBVjߟ bқҊZdRT νmW|c&yoTm56uzňW- \ AgmMr("l3Ag.9.aݾZ۸߳D~ TBBCF1ZwR3N%OJ/rD0Tt$ͯrE4^f"xd{Pʯ@~Jf侢ښv䮕`(Ρj7 )v^,yO Ct"݋`5+fޚMܶ)6\=#:GfNbD ii󲒶Fn%w|mtŃ9 }k0|}UGZ[=ۛcUˎ*IL!s^T-ƳRO5f$[WϥGOt/UD+>Yۄ 33wn7\m"$QRph·RU[!"Bc,Ӑa_ / 6R _8^Zf@srsoL0͗0M5+FԲV ^d~Cp3Xz,`-!ֵi= FeM0 |XQ(MkPסkmCO$Z͑ Xdٟ ?慤b/@B_5u^/sXLC㖽=[<> FAR2*7pea:zgVG+q^>]B}~F/tQE$ ZO*iGaQ3JKNI]cM\d)۾ Iۛ9Fc6&pj (#a:dV~R˓例vS|J/P[!o׳?8glԮ3]* v@:UxQv1TV|ZHQ᪨UzxYƒZjp8_/|jP} kѕ^GpG%UW<Pk"Xt,(oos#cCWNЩk,V;'!ҹ% )ٜnK.}b G.K1<2prLBZ9A *p-[SВ-y%v ̂ V@fT3Ce 8q܊9l|QUC kAM~ߙʃmIJi  4JUtFK{I#Vғ,FDZ|uR$$4CS D6rfA^zq9=kr*;Shb;xgT= ueB>\Pl͏ u:яL}J>Ƌ 6#|a,z*}|ZlĒڴJ]1E1+f Kua D^#wJ:<8cYMӅ K1SChD?tU XZ$RRr$W2#PPoI (#AwvCb9Q0-s;{p]|/*`<l qoILVǚ.KDήڐJ yXиf<,X]Ť@pF* '[)լ[m=W:G ݦVޛ= ;WNu,+jo-Hd[֩ d=g" UFbthuh189XrUu_wn1_^CrEt8h~`fP(&ȢkKW5ęV$g?_٘+GH5IiE ͽ.T{4q4^T2pƾVΚޔ)Y'% T8cD=NN'+'쁇?P@ oct0ʌ9490B?R8ui\'i? cjcfy\\l6S0th)Gm1u`aHX W.(kԃ%rxܴ@ J'c3VvrX=rsEQ}=[mᱣs2@(R"X$Asx {aq utiruT<|*=A;бgU"`/nX/N;:n6 <4%"~՝>oi|PT[*4K61VѱKla*bu PuNlch'Xf+0" 딫Bږ -l`&3QL PZ&=?Xs~ 5|^'4RJc]ed?359Gba a-/Ed%!{'E'5AVdH.U7F^%,Vԏq,exuZU/n wgg Ylt4·)AC:ExAFDm0I94egQ3gO!qͷ yW5jDux~<$@.#ML ]eQ(x31~(ytdĬɈbm=HaQlo98m;Ґŗ魦Y%x$IB mif}E3ih6 T;f=u$2+4͵ wctn2ɥ;s<:%G%IbO228w/[% #fRYMʷdH ZWJr ֱMBu3Fݱm<. $K4'a&72)z"u]xpE,zc0g@rQܓU cˀMn_, .f]NjfUl {&@%uv؆\{jDz+>iZ&x z@K1c ~κY0g7V 7~. 8a!ʛbÂ#B7BUR sR'#mPGs)٥<9;XtE-ٲnjRɫ!p#k'69DrΘOŨd.yVM֢/\qRfPB}! Ҟw;42l/(SIH]C|ѧ!2 1; g[ jqU'@H[;A<7VQe̕oʧ#Vnȁ.IǴߦ.fin#o[MQ8rIW]p? 9g6? b5}63i~1|mf$g!HdqW]~,lթvǮB`t3(άgG{f`pO{}^wv|0궡(,ܤO"]1fj'Nu,kO Z6%g;k8v;o81]0Y&VgCDr+ܢo ]T:I:٧. 4Bk.'2 vgߋՋ:'a y`beٌ~*0m l_ _3`vpR}}8ˢ[IMbqYu qFyH`>i _'~OI5`JeMb4퀯#ܤ/ ,pYxѮfu}Ŷn.>J. M&.a e@FJ򄐊M݌NݦdhSOIymXB:Gk>L9]$%{ϫp4jX{ i +9K8Mʃ2jԟ/ Q\?vM@iEÃ}1VwL{bUbE /#ϫRdk0>9;6vN o"O_XkoZ.F *9H6ݠބ5U9vo(Yo@ BSRA6et+/2%Du[}o+9G6|/ҵ"=t-y{vٴ9E%1fF{<u.[$^Cvc(xwz*dv6L/m@|Ol2BdC-|29q?G8]! !ԗEi?=J\ l3,6%Af\8jU/>_MH # ,[}sq~f/t&4ݿ;JG,3s9V"yԄhPF^ ىK/┴ZaYgUz}> ]Yz 8?3g>yMOv{^|jwCqy/-W>^y}ϕN=ۇ  '!߁ɵMfnhA䟟SY4'BPě Y)^]+DN-L9 ɯ L?C:6"/./8LKDd)=jL}tW Lոpqkͦh4JP똨[NZ@f|LB,¥2l)we(֤],=$6ad ׶Gl#{JX#  O%_v.t̤WQ`-$l5-g8\N4$JlF?}gJ)PSJs,1DJ) ыIty:MR]rÂ*I,[Q5罛l. J(`P9XW"# nW槕{RuDQĎ5CLƗH#oXIxblkސ8lcSoVkx/+fR*QRVL~=r*t+6 t(QYwv'.pΛ_"S$_ق:kZ8ն3fM hB+%3 s"A7ױ]iR{Ӫuz AD bωҏBl@)7AYf7SпHeu(*AƲ+`[DHkOU ;`^ co0~ْ߰p4'䬯nɒb\hdyG:i ;_9__-Zv%c\ƀC=W F]Fjxj?~BhOI{sw+[9) ~^vF2>\n#AYM|j+%@Ťi)g YhVmpV_5G /嬃r`p8Rltv},o0lʅy3=A*++81!i`! )`[q^pf$ :hBiNY odM7u{E Ae@;:9oSߍ@y8 sx6(ث G}"kL!17 _Ilib_bq73H[u{ђ85M()By(5C!{qj7d1p9VJ^3cU1/oedMgÁ#[5҉Mz!zsjTPUHCc^KoQN?,v6)Ɵԕy ;tA"GWL:ͥM=ϺJ`vaD;o/Z>896KK Px2HB(KS+:rsUtPJ$ b"m9óplp5m.pQMQH[nB[l1X\(W .#IP4t oX?X2~gLg,e }Da۩:l ﯛ,U#礍#h#}BTpS[ʧpv=MI_#ȁKQ%{49FCՉ[k=)zţ af`!<6U\Uޔp<ŠFoiI0w")A<\Iٵ8a~]ya R`e_`;V勆1[l.7ia dm& XuZ@Yj3: S <35YbJ~/,&sVqQY}M|qwC&iQH"3a 81*w]9y7$}`t8?,& `Y 8G6MjKFvbN l| E@(>w:p{Wj:?UE v`= 3 MlTڮcKAvYEuۊBc_Fw1q>+Q}^ZE|-[ϛb3 {'?g6 +pM@1ɇ3Jz]i j⧰"|dbjwa J(2VaC ajMH?QsF[]Ȯԡ7u?A69'$>P!uYg\7V&[v'`<m4KWTJ=7_Xd#]}浀AYPIQ KWmMC,~RNE`jz!eG>t|ѫ흰Uѕݨ9 Q4j骔ӘcD ) h1c vo< BoAP36Pqa~67 z%SR=6bүC]EӖJuܒZ XМ뢕ڷ wCk oFe /T^^0i!A 4_<PeB-[vs0[.޳< eJ\c\ScKI^`KB&,Ōsc*r^IMei* /Df48oĽ`W vT0⨟jU-^4w"rըqFfOGus1-BK2ÿ}l]52bW, \3DJ|㾍QxV,՘Oa3.eQh6b ##迩Qφϫ AO9?ƒ#m0W/DW = ߐ Zb-dAP+@$*xct_^4d} ELŷB&<$e6cG͸h} &2a p+uMG) \ ό/QT1& Ր#-,іt_۷+^oon `3lߦ/ƥLR(2d-' &۔Y~+ў!dk'(" ~U}RrVv`p@ 1[^zKjU0g}XZx,U1X'"f|эf:w X̻o?FvG|iEnĐ:.3yQT96uVPŕ_WHE}畎RW/h9`ɝ@ 5/%}8X8EQ8TU. Y#}L~-0UCxeQ0`Eٶi ?ڤ[?b`Nn :F;xSU@h`տ9(MuI-X"Ei$U]x*`A6hq1I ۻG%Fy^U8gaMv}4yZ-A3 ͣg @0S1l5J[_c~ͬ-,1+Hȱ48e{ 'i)tյx91P]oň猎2]T [4qg6~G|̗sON\rTDy1ݕB^]Pȗ/%R",B5osmt|Mܝ~TQh0m т_Yl~.a~Y5e[sYw). Vm v ǶN=4፩ͩފҪY򢶑j_`j:/!:_L\aݨ YO>&@11l<XT= VxZ~GA1훫^*p~EIc'zıoFua~qy~i+$%-C::[M$4uZlD%E.N!X7ZDj'#×_)ZT&([qpK⬚$@1=嬃> PHz'o%H n=k>jtՔ< %rxgB1C]h 91]}6,(^6m,R8oU +PWfs=L]z6J/E/Oeg|﮽J-} ډ`vQmtĖ$,NF8,# |]c:u^а  wz/IƥoJ0*F2g77 ڊ n/+ˆJ^!9tJJ]3D/=y`PΞki\0=c 2Dnyڂp//| br 6aЊu'i G_aZK*P䀬GjO+ԇpU65NNf\\$k~Cā*l*AD J,FIDt L&$8Y>PG#WN bnVYVVU'L 4 _"9q,1%IGK"A%ԛF's|o!B`[XQRݤgn, F-QER0##UiA9ɚ_W?3譣fKY@2ZX/< iHuDPs.x)KF֣03UϨNǔ^<%. #Dgk,Ƒ]Dxs3}a@Iꆟ&sKө=VcL4_EK uy5gQ2b*<!UXtڄ _N!qv5O\_ xjFbfgsayP sAGj/5yʍ{T%V~݋jd/EmAnn.T$W1Y(:xq~M#D8N(0 mjCn:up"o%۱=԰h%U^=Ǔt87&3DPN}*B0F.¤+cqZemfwR W# N5aD*.NRu-< cT:*z6),0w.XK4KXM6\O8jw^mVx=^cS j^%V uaH?ȓӽ'@ŤQۅPV\i>PGBM%Bqqer#(H 5zfL:ߟ?-mwj [bPتiEWݢCO/\G(2_jc!p0AHknN lr[Hpdd<iΩ$=8.˗΁͡@tMvRȔND(1> -_z[q9&WB_,9'%.+o $WIZڗ9 ?C1+#wlCGdʉ~WͱVOϬ5' ?Rjfw(*iEs33=tB;#io ؈p yS2d$,z7F =d2%PZ& kdq} q-Ս t0JcD /l{UD8^NWogM)R3ʱ=ݧHiyjZp ci`%/Hf&fu%,cJ%ĔmRHEgGAQӝk2=1 iUSqVce"l7*Ou3D7-0ъ~ASbb[*JAbIec77I҅9j~ un ,f]O˰FX%_!-'6Ϲ:M) cCe^\K'{|=38 n֢~MYGM`;5ЭT3,!Ohd')?AF;[ҫgiB+-Gy %' n6w\FRԗA١&YU0X5gг^m&oszy-1ߞV̬%:,G;eCQRa ~L|ZAEֲwr ]o.:TI܇+4 "& MP7NT&rR}O%ZAFGv5C8tڳwj[EDH阭u\޷UiRB?/'^au{CTnmocbq R nҵ׀XNEÒ1䀱Mi;I?ѤӉ@)HfAFX__ Tߝ49 chY$?{x~ e@5ՂD *˩CPm*t;Ya4]m3#T岞8 BK|\M&h''P#ЛA?P)u# ̭ g4sF+싸8lWh_㾮nu˺LFwYrfQy>8 $DsJʐ|wd1׹p(&j"ke+aԵ1ԇ79fڛ?yg(| sRKJgI& PjlqqH~Pz`>69-M>Y}#gƭ/L9á'y՛gPSe[pXQ<9L`yEY7ߙdzT@lwFeoWCjTTlNfbG:14) )̗:]$Ik5!؟1C``mlw]9X><;dt`|qts/:MkQ:Vr`JW"NrQLoos? 'O^ fwXb+a`b@o?rT )*`#+ w|;Zh<8C`v3rj#E$0|lPKej^(}-ܧdƁ vbX020?e#XWg;5At]hCYq:V۝Ʌ&#ӈ33#ZIW"]aI^5P9پl#7iqr/ hq ϵhlaUYp/P[3'-IcP9gXAȢ ֦3d' ߡZ ZC8.QL䌜ju}N.=b ^A ;H_ =/+9оܷXP}($>ND"D/+~p13̭hk'|lZK]ψ3VFR 9y`lTo琮&Tx/npAנ=S$܏Rs A.ٷ_l3s 7LJt+.d~@8)D6aV ߕ2,cH|TfZ0L @4g Âm,Єy3^x6a]V%h4ff VaVաiIejne=їc4VPcG"Y {mb @aȊ+zXUj9Z[v4bŖ%Cw>22MA3ST%Fwp;mt@$yCOr-֎C7Y?}{a2PUjNI6Dǐrcw,gٵB &΂LPZF&Ud kYpsj\.I9G̙>A6R/A-u} 34k(FL]C0u1{Pÿꮾ _i(e|2AH$7rsAh&s`%$))P1PWMViVѤvcn'sدǛh_f_8Y9YA!go ,UZ>V¿L8gk oQcLk` rtX!P~#>$I/\ ѭiqOd @c\t{QQ#\ՙD L]cj$4d8_A*})a"(4(c)(}yYnI(2ʈe]'e0$W-Zw)}x _CA\Gg^h6 ͋tϻ'c#۲2TfwͶ|$ zHdόcXYpT r T_N?!uDU\])iE_8Ԫ^;릜)z3 vbӣ{{C8ax* t+ UjI;w8 z ݁|fH2T,TMq0ݤyanm'ݩ! `8k{b+F]6XcW5aYæ,E)ZJꔁK*t&w*wH.[Ev!'+d扁; AF#Vp1E x. :G·sH%H`n9)lY0jRݓ$n]/8 G`.j;E > 2pl3g# S>؟;-< xO|VNƫN X.rl-J>D"'34*Ufhz̋[uW!ϔq[~=(M5{B;K_ ʅQAmyҸp J5鵦O{C WddL=leQb zCE( $*"e,Mp%Hc\鼷v)$D#l@w׍M.$Χ&Č@8c͂G<Z˧Pd4KKut2XFlC!Q}l1u$4[ARbg\Qv?#6PƱl1Bze1LR+ CB>g ]GƐټ_W+ryӢ RߜTi;s- R}CS!&Of~ѵ:K/ #ڟ2da_'~7OJ%ھ!C~|b]Os4V>?\6!P5bzYU06Ʌ.T{e+$)tCX݊yJ\CDCv>odl~UY|`G(Lx8nta?w~WOX!3郓& C'ؿ;QȈjLWa޲k7;@tH=DBȼ2<)"Cm\(`U-$L=]8,ݼCڊ×k)y諅9]<t؁)xsGCn rຝjZ.)[,>nOIAC'\ӀMt+51ɅUs\&Չ OO1ɟ~RYSg)(޲WjmZNJU4ŤgT 5am1rnMPBzCQmS&4}ϰ|b&eΗ2u]~agk9;8-863 9]+h@:`ᕼ3z6N6MwK8XW}gytZ<n`,Z ժc访 hFj!ݘGNR9Eh&Or)0(&U*L^ZL7CP8\⃕ǞX )Ga(lĺfdy`Ug@/pipON0vY5f]r +ZyhDAw d4V/˿}!%] XSϬfxL$ lg!6p1N)i)F{^NB-39&ƉOn}|3$`52pOwT7a.jj  'dY9w&&^N<_ #fMt`ÚNp\zNja_w%B*WQI g듍5Ɨ$M^ל$LnB 6r@?M'msB3!o12~A'1&kR w3/tCI,~QCxOĉy[bHԌg. 7'w\M,W}t}ܟ lxRޱWF (B r2Un(m& 3Aմ $͛$e?yU\6]Nc6C~:9}acsw2ā4hLT e-x9Ob;'dQ7 N/ืL)^\ &"Ǽ7^;6ɜ; 6gcQ${{=r' u U ⭒O$g|c.&jG9C i$ ^LM.}|9ED08;*Pj;)芁EH#8SN;i=&QMSh5FB|1+<|UգYhZXTFTL֚5Bf>%F(<J8Ⰼsk[Y@Y&XϮ}M!TNQ?C9 HաىgoDaփ_io]~vKr`4S"o=q2 5 ISg*j+﷓Any4JsKszs%$fl@1h)Jv^$tQ-R ј8ACߪ͂Q?+p^\QAB>׫2ƾV le[ m.bwV>2*..`0§l0JޫUy*{hOJ3̋uxQQ4_LÅ1%#{DאeH]Z6tbF<("o6)",z6r@DK0NX-L­V;OƎ?\ R( ^*7h*jO~}3v"TSUWnML♾6ʷBUuz)L#RIdiX&-r ľB0y1}+Y vyMAӌC*[#v7/!󞣅N'){muI (^Ѽ )QCfHDCp;tiYaHBYDw`Nzf3D- RMǏ^ ~XnhYt(22!l*ZyIE@8V;5FRSE}ٲ\;2; v)F][)Μtfl8X~߿b[$#hy]!cVVW>"o- ?0tq˫Τ. z#SAieNAehrs wTua t>e [Mu OJ{j蓙rrG%JKо!2qp& n8.]G>ХlwS@;om'RGM&{ܜ既~ff[r$ߋZmJ*p!ElDPecDaBb Q;A` V^} lOC$Fk&| 2iHB*o]H =yrKVdIQ|”_ nk2;MA`#Z>Ԓ4AxY3jWP. l[;E߈O-3,@7p2x! jrEcsK?\K2e&>mԘ6mX\&'N\PZ2? bۇE2ip^ʼ:h_TJBt." fc&pGps%;/s^~mK^oQy2~K^J#1xQD3j:^kp?&i9Wrt@(`D!qȓ߽$63Y9)klO%7dg/ˋuH (ݓ):{JgBbdN}o7,?޸+[؞m"8fa2, R?~- l_d{~J+0!6UUf i&e)"IUȫқxz>l1~P}l3F(Uc~cxC>7}N`>m1gO5{a[eH(oX9Q$-/R9(D0H'81mHP]qؓtM:SҐnѷ*Q9koW#B~we&/SOJ_X6:mQxy6{Ht[]4^tzdSCM7*N43ƑucC-Ң} 58Qԣ+1FoFGmmҝ\ SNwSbM&`9v\ SQW;:m^kR;ZWތ~_6/!xy} 2Pm ٦!E|[顺]Y U6K|γ0ZXGҞRE,YaE/sVjslf΢.QtHre3-qbBZKoڗqGkv=/#:vk^e:lrcѵn3EՒ([g%LQޒm#BZ`Hcs@X^PV,t;>adwԮ̯M3;`E8-jn^mYpe#KpY#dy<7Kp-X{Kkcoz%'H`ysH_w۷8܌k#QF "Έ:eY`؞XA(+(CF֌͔_ B&`!maI0/(!{@r3FOms莽Sf `O /YujeFxd9E 1圙U7Sa^LwA2d/-4Pamst1A<599淆 oW!lq)0́!䡷[&zCm5g2r|Η)$Ixc#B:cYUIWwYJ: kޤp%vшb:k 0LwS[8㹔6؉"[E rϿLDy5Ks"@mؗUޣCuѿ:ˈXJI\4Yc5H˭u=%^`xr{5GƁX0 o4:@9Ȋ8ļ!h<-KSp- ”ͩl$E$O-؂H:ȃ+`8$%tƶ S v[.IU6<~2‡W{J3a7{GM-a5)8uZS~WB&VEwcJePE)ug+eYČ8;ҟ|]N>~2[6r܃yXUƈJuқ\pJ qQ$:U.{)W2r T:誑 jC6-[åQc'@X WP%pRa# h YY86vP GC簟 %4N)PPE^>}.B0"LHכ$N/"lܨzUZdVl}64( Vf 9AC>ca]ZN+hM߬!<FKP\L'7hLq_[uId .&]ozPy2Mdv\s).AEe[LnX=ڎYB$Y:C7]mQʯ|XPdZkfRY7Ms6<AUbWDЄ*w0!bOMVARǚ^ ۭVٿHP3P>4O!ELFAp+4#(޲SǣG *9J Zw:ռE4Q_&a<#j3Tӻj ;K",U )̯ysu y9NI%%G_&ZGTF]cv˕{\j/~uJm!ڒIv'Q< yOf  2s^/މ旼fh)qu Cs~ _TG "(>ygTԶWAGJosiGЊ[VB=i(9(j2&` J_S#eWŷ]ԭ0͆Y:"/9\ ną<2H0;3l󺝻~/g_c}m]J! h8| @$DhBwX2&~* yẕ=>ᛮN8~^*4p&ѪN֊4)an ESK^Na!:(<-Პ1U!Fstx|AK.}OC'Oܡ,4Xt +[j+Egޓ#f I^yg~J .MOVivSM?NX['UNjYci7cHƝ0LF<\B>aXdOc#[F4LU Tm< GʶEbJDDdm;$0l|$ qTz{^oxy~㷥imuYw*rmBDH݈_ ;.܍qzBCQہ+2@GL)z>d搢J}/ "z*b`> \\6{@&xPed:z6'_",?/U/Wv$==+.v#>@;ghȅ9e5KrnFzZ,,j'GaSi|b)7 i}O8a/[&ف֭!@t$Svd ]Aw> H |!l^!#`X*Igeo,w\]9U]@hūMBGWUJ=NS.֐2$hN #l쫨j^U!`Vi7aTܤ{3*~C{1%N\IQ/*2QD+Y/%z;k\+8 t>< s* L 3l5%e|u9[j-dFacIŚ*n_3l` zY8Zs5N5C{:,cAHU7qro8!'? !8 :ɥő=viaOU=~0BZ}G,.QiM >푾к/MZ^r{P!]AѕVIP>$}PJ@D7@nUx}G$8U܃9a bXVe6fDiF|>gQ7DL~ Lڷ>a·릈t\PaZbt|qv !Q, =.㺆HU*ai#Ol8Zkæ(2DmV9=QPČ=?Y=^8s1Rq2] +|mS|NmOI5Ϡ]eX\ck7$Ȱk\[wg)J|U&u~(2Fvf65ٴ7a~Y ~ |q@`r I{}iařU;gN}b3FX6<$e +{Wҍi] Gmf\0nտL Tv+Tr7; X}3*,>NTLֲtgBc8GUרdmvڦI6Dk8҈|5BӼ]`Jc=vmhۂ9tZ kVl n u!x= r6 s28a !"e9s$|.tixz2G, pS,a:+~cWrE< {XY ^kiK.x{Az`{Pw'%Aȡbit Er`VkFܪ/rS3;U>66BȒ&- Wlq-SQUh3UaC,GpȂ}}$:C5te .xōIX>4=6,Lf EnX=X@J"ǟR=ܪO"zUK3fp,֐Fi6pn]>9i !Ei. 9}ͯ ٮ:զI ; sBulT!K)b`}5a.$CQ :@!Fc:ǐ$[QԭlU>S<,c3P,tnנsD80GjGg5᭸ʽtL m[qy'IМk-%۰:Sf##ge"nkX]N8i_NN{UA^ʳBq:.Z;B*a$v I/ɍh2UZ#R-!^CQ;{ )\bGASOT_'.-ak%/+\>&x$9!,ldVނ~avC<àd*E'`=Y?T>?C/K C(}?E:I!$ xkR|ū?ʳ%|Xrp^nڵر:*d3)>G1kaas҂([4:VbתۯR8m7Ϲܠln{vM sRy(f$:Je3ߟBq9SVZW5H$oqI%q +ASs}ڞnXޓ38RʮJȶU8mw8 h`"=ҁJᠯ[\ RM@Q(DgT $*٥( l&d׼t?tUpg]v).N=$gY~a%v['1( |JNdZnԫBg7D)&6"-c:|'hB]39 =x|50wB?E6~UsQgpOl6BzҠ Lf/f^VUI+][="6ۯhIsu&f>:_2G[47g bWdW0yxpXqcݕO]Dqc8@ B/kߜ^,h6"LSiBLi\~o〧!3\L$7;sh~f"S! ‘7bRaȁ$ڥUt@-L 'oWnHΏ3 Z+Sk= 8!WE&(Xt^Bv$Փ V2B>\:hM + A]kUzί/0I1|ưFYD ̧ ^"_187\J (n>㽃龛54Eo$zDb!'8J}9"[hHـnyOR{ou8OJޤUPBBmN06q5ۍ6uXF +4 Fh0Kq jO&Ň0vR$_ƣ ̧{xdT~=hT> DHYs~rT* Os kI%htC/ XEHڵfGΞJF)Xvń) BzR#Z'4! _hr<00z,xnI(ލe8u:Jلʹ1WTZz~K֍n^Ɯĸ/r)Ej֕ۮ iU7 ]e,·{%I_XRDŤޜ "^q02L@ƿi7<^ N)"ڎi,}NZ[av{sMkc5S\"vf zl\hfAPQPǾ~L^MO{ӺXQwK٫Htu@Iv?H{Otg!diBL;6M/Pb\fM/@1pH-4_滓!+Y"v,s`"(ԍ>i!{S"{w9{Rxz3\y`4NOW׏4&0 a-3XWgo~$$}ԓg-[ۑrҟƁLֶꁬf rSrީSm'& lmL[O;co*z;# Âd.ƢWֵT}nM JKk^ 6 ˽!41|cU}ٰ3e%Y¢3EN#@!cA%uj)tSKq O|Qp좵z]sN/x֧]i ә_) srHޣ5nP<8\xtFTñL!ICDL7GUۄB謁Ⱥ̔@ $fu7EKkb56F$*4?r` pz-ƩSb?[g)cSeVP4|4T祿QDoWXFP+*PL[Vk.>na1/*rc^ĸ<5 ; ie?~X6E賡԰fV"EnHKC/; dp3z ?VunC.p'qLDs=7A RZ9fopM@vߧw8ˁ(Y&|Ix"I`:d%{(c+M^B~Ț !^{x÷5Ei*Ʒ#QWz2~}dUvUMC @{E$=70OY_)aNc7ȫnq2bbf@YM;A噯q"ܦwP6($ӭFky`/eT#VD'6Õ~;,zA<(-'(IӂS']N~ b/̭fe$){.5k,$VD:bnro8`D b_<Iit3 v5Z@*h,Q jFQ:py97K zIL3Bj%]A: eԬb)ՌlVJުFԁl͕6(.?!sxzԿ%XpqXu8e4L.X1TWE(9kZaOȼrJt'?,Uaq5gl4ExjdG0+. vaU^Zbn*]EVq~"lˈ,0LCݯom P/ǾړW.47\H<[z>s՗[yT&&3R(hC#c،c4.'Te)-\cMHs:&4v-JX:x^pDχ~``3GdGaWs.1ksCzMVt#`Yg|} DOz X3 N:!Ow៽7vx]c395=are"K,YR]tN)kCKY?o Nh.b i,;Y=oT t c q7Q(^T LKq&+񟧕 L*Ẕ82BhԱ$gK2-TǬq/ԅfJIAl@j=* a5\a0BUiJ]%mMr)n'$p3~2 HBMv,\IDTJt*= f_+)w5&Tór4Hš>/0fd--\R~eb)S)ڦ'tџqRjh*[FivI@6M@^l "D-­Y/ gͱ'mˬ%[$omlf|*,;{'BI&e`\{ (8 *a$]@Ep= I1?;l}ħD. e~~%!y$Uy j'[e$ -4^E[BQ %F$!(iYqpnO@ /"- LZbHׅriY ڹ!HRBxHuBqc a 4O?|(M dniy!Lث/2l[SU&Ir6hܒD Y/:)ӯf,D},8*N !-b=5zK;~?)EJnI_`.D{8<2LsT: mHɅI Pnå~ɛ|gΙjL^Mr(|L@\Ty.dF2_!+f__G]^ I8ٗXY iAOlD2FP$[0#t:B>-,p}L (+c.κR!$mijUAS \fUXr\{+dYwu}uP]+F6C=Cڑc絊QH;Dz\^js_Qi]n .-J4}/| 䆓hjUFv]XktCش}EDC*0]N?UbxZQU|)3,Nr| _".͵ju{7: sp!S3mu/TkmCZ\C׀<%ttKbj YŠ1va zE6:DFjw}u)U* R.{y] N&"A iaٚ*h'2p</wRhAo0 ȇ!RFv-GZo:. a fa:mf(eJgRȧM2r^ug~>UEjO4^Dc[\؟1N] \sAJ^׎nZCcĩkM$>h%ܞSe9$1vgD' %O*MuK'MD'~N4>G4]Lie땘2gitzhm fbNE yZWz(ݜ!RZpmgɣG?@Kc_ƱH2 k8(*R֚q=Mt *zL#]YA=/0lgWRJ5J>̬ZᑬF^'%97yDVZ.IkX%!"}{f\; Y`xP ik!rFW̓/ጀE@sidYݠF]!g˨ZH6 82AHC_Zd]0%1L?-< le ǀ.}y9!@{QkZvK:iRSKi=*-SS\Q&$O(w%YC10Ϯ!ceX_T~%n5.`8 zAb"QBYyV5AABaŮ;['f1Tr d~~. rVCMKOtk7Iv CԲ=`C_' Qq䋟ЫOth[U"Miv+GE _i}WtANi V0hjC(?#6w7U3{%HgzMc  W5BlX0 RC+5S/A.|UwR7 ]n60JS`!q_99+J|Lp~_fCLm=hĨdlu qtHmlMFiϸvGdΈ_yx U+B*p԰TN>k&qr 4(aVR+~`줦P)we.{340;6⁂k_~$ ,O0iMo}F|'w!U'SqE].JŘUl5-u?=^VĄAE}m>2B[kfPR?*WUջHiP;8\h Oj1 sUh{=Y=xA}?{EB\sm͙%"tg?WaZ-4$gm٪L9W~A +zf"QND?=Nc{2:״I 'r>L#+`x k?g$v!L3"4=i =4"& O^Ʋ7_[ g 5rLUiB嘷_;k>qvM \ {4@>N=JMuBAyD(6ڙ` p O\n Db| [(KTYNBc?Czâ?7]JCy L){2¼qVͤt9}f3>U]vHBNݰ OAﻻ"caC-(B{~<-G7:+O'u>RO^R>FOC̾S8z=;=]:NVfXkc'h|Ss\H8HB7u6߂Wռ4aNTHY ˟izهQ v7BW$I][\YP"mbyqѱ̂K'ӓ_{&P~.ߩp'~΃Hv`ǃ+dq-MtG{;#u:ݝ8ۏ_^Xrwdbz^$b²Y !:@lt-]?u^ j~)<ii(utXj|9gj-6Jg\@A*Q+WZrKڬ2:G(:Gy6jm$9蚅_7VRrR^ttix2r^k/yvTy+W.qPwY0Z2 Du0s&6?G+i]D0YKXF.%1Od$$CbbYG -` ;w;/M+ n1DG{PÿfyrJo1l{u{VBF6q*5־]eIg cΗS$wp-IYt*> Fy;rMmΘǸկăeji֖uMEҼTZ$T"8eMy &;I2q;YTe0D2Ti`sB4!Oh- .{Qi:>*ҦM@ɚW4G^:AX#?"-tʙ_1[sè8'~co g>E^v1f%ծa]㻢|rr;aiV ~sSV9 8\| JxEiaS Q!)/\S>d[H>>Up/ʿuP1Ŗfg%"˻;FsgɞPRxb"H SeÄxx,̷XM{G"M:}Zpx4AZsߒ7[קovZx~IfYE Z,Vkyp3Y*,VS[4;t*4wW#˂ƽf٭\<$G(!1O*Sn dzFrGMI"fiR )^P _R יgN/>@q2S) LO? Z ٣ufjX3\+4Fhbp5hX5wp'g U% BJp #G8_]pDo@+3w|Z]y0} , {yJܛcPtF&l -LR%V0&qxk7gʷ@5k~WỒJQG5D+P|3l&J%Q<10 OD/]p^a9+;6[ZCݩhak{q1Nq ?CJ=Y9*(|1R^oҔO/$*0}frq \l B^9٫WӬx]BGsXy,4Q,r<~2Ԃv04AMuf/SAhc8۰ R )PҭL3Iw8,ؗ5e^]X,Ufl=_v+$?0͔%6?]?_K|eԙ8Jc+2mMM,P i+z0D4Us,{cv,FwA u9(,H%wYïM:G_l/&XD1_3@Q[ҪW *{7c[' b>ö́8@ -5v&au4Hp Ҹʵ[\xѰ隿?Q+)m3~%ʽ.UgT7ÆM∃h a". Abjr,:ڂNքԽ}&Ĥl ;'PB07fIy5ce$*T{jgb@N0Nm<]f3\ {ĒmAGa](I}YFx>n4`Mxq'22  A]~߽q2MP͇1=g,z`5,OGHCAkJO$e" ~0zsY+PEȪ`^[{YXMi{nOe]?. 0؁'!ynv}r;mu/6TUveuui$e^b\2OyyuMXBPDGmGZbi[I*,\hL <Ω{V*ςqC\ռr\)XYY623wc0ιp4,KVwrP*tSd0N?qKqZ// Ϩ^.΀#ęn>^hRTZw<e|Jq`gT_\Ks*,qSʀcrU5i4qS]64)WF2#83Iǒ.?g`A8ٿ {EE(5Lx.J5b:LP{ miG 4r~?2M~83Idfk!`Px EgӧVQB\L[Kkba~+vn+|8*eB2ĬX.fXn\ۼ4QƨbՄue-e:*vшjYi6$ 3-ЖBXPʻMss]iZ fA_2]%7khi*uRx n ho^`eCIw$a܎]ב\|wrIc4K[zɜ!D8g/w{ r͈ ,V,dpTj JfbmiDuJdO)'QxODjrx7ǽp{zIYdy"T&H1tpDds<{QGU]Vn`>TdcQR4ƓB$gHM+/1Eì E@S[|zũ%k=ye-3뤋P(r~3UuɄ;q[.eY[W{Ƿ 3Ғw/Ap= 4U`Tˮ$]EBY(HnCIH qe 8m޶u1g` ]bKp*#)'LܝǛA6-+Va]6MRNÐ.%i-z ‡ىknf4b2f>Uxוߒ}gGH "cM~tp Ue&B/e z#。ЌşI'#}VP:0P2"{%c0ރAܸ{Gl6O>2ٌVA3Ojxx/mi` 5 dbgl7G_6=||ŲJeB!cdR?[b=h2?lKK6iXwe06M];D4a3cߎՔ *$@u |wa^ u2Q= (T%eeI)trHz#9ɂLD%r).*[:<ʳ!Dpf [#@y`h(7đ:a{->2:oޠ<ҝ^hys% t]s>u$ǻ5=ܔZC NIӾEtib2wvޭravko-tI)VU_s`?WI:{p,pFF.2/mP:]Zd% D#\VyF45@vLRԣʞyHwfzgeQe2XZ`90N 3~@f$. Aϊ/-T\QBor@p Z3Jynw_jB5M<VPK a.:?S9Ct IYGNPŽ=)XgaZJ1oZ}E vbۈMɜbQz({C&UiMU9-Gz{ ]InĖc"#: I&~L|.E2 O [zwED (׶61!IQ>fLHS:Z$螱^+Yt ,jyk 5WQd_ Rv>ŊSf鼥'gDX-{JE<r^s @W +&ANaIF6GCa>+ɐӇy&e` ~A>C_e>'aE+KDoxua,K:xٽ,һ.`o2:LDwt4Hwr$#w߆[_:UMJxq]Nr#Qh ϚPG)yOn|'3F%ԦC^LBp}?LL돨ԙ2"%mm2ut}yOW[0qJ%5X/B$~ȾϨbVakڳlu}8x[wzQصJ4%oCBeo.Krp$7NgH4HS{p%d nA]B%9;A gN:L1vv@v,06}ݚ^DoYMExXap:k#u",(y`lm\K"HL4_e@y,P5_`+-ܤNO_W&5ϦBG]9 &H޶4?;*MFs5/V>EJg|TR:2BsFζ&4N &f{0^Ye6si4rl?N=h҅J0E{ ϣ-MwRfDcoCc2C,iENP/x/LQ5{9|A%wdfSR`ȡEq[Q ds"~!5Ä es\^'dG2Z,sh0*h,&F$07,ZfЬo$Vz eb~wf7q]jB\  ;M!+|)JƇ+R?DtPwU,L=~10?uHh+y*a'2}Ske>iwtg#(&SRNR?9oYNjusn+hNeGc, R݇zRd}Wm؃zfnЩ^}g~qU iSA1y8.7CY[[R5]s#^6~i怓uZ|1We)QOμ»^ htD"}rEgkss'$Wxc6IDǦZ;%}g N qZ{9$wPj;= %L+\Q\g~ {2{Cz=իOם Y*řW*r+fiM qVdr䀂CRPNRb{a7vx+`tqqՐ'~p<{CQcZk X"?[99j1h~`Oڡ яF"1eaL;+1I.wwW~#@f̱Xx?)yr,!NS{w+,~f66~ZFz5:r`B-rBvQ_pR`9ΠW䴮XވZO0[-Y^~Hb5sB8MIANN?j/"rX/i 6ŀdN'9,%=٣ԗ&&(/@@<> .@1Ֆ'4I#ee4aG߭ _FrFUS 6&\D*?IkەzU%4ykVƖ:,ATh^﹠ Td(KnH[ !-,hFsCXe'ީ Q7KR+cf ED=ڤ}Z Z0@JgXm2!6<7tqa._C &Jy1"1װk4P` X$09܍Yh"T_0^8tS`i] ` <7]H%g7"zYЅynkr!N)FZJj X;tN#p )`rw#U}0Ol. BDMlKKKrAFWC'@8/6 ĩe;5qc]ɱS\PlNV:g%$BZli7N =N"42M5*g#J^ޜ̐DU@=:X(:AC90dsCjt>M.Gqo]P/]w֚,Omb9Lp(畢E8b ?"<,Y>` {^5gS-O.;1]?a!"8 ty0 ۲Yϝ,}=D"w9m-Ljr֘pAzK#ۤZЏ:[͆nh XXy %|AJOPS ޻i&bWhTslqdJF;1c$e0~â@?Thq͐"{PbJ;E|}\iϣ iofyۜ,U"!hiMZ3C'4*ѫŬ) WX,a}h RŖWTZRft񻍇 %g0+4i(.l"BS3׽~^RcMK00b F8 kC7C5a%Q_G_@5SkMEx2~LNlP/k:&㆔t0nH@}F)IT[xJڔFL>o$Me`)UYĜEA'ZƽgcΉ9sk+ Io :5CJaD-dݲu&IQJqA )݈}z$en FmEY1N0::sp(A :خ\6(Sв1}If~ӽ>8Ri(zUČ寠$w 'ZTMCV slOWs/>{MkGDݜL;7B"Fً$ 3}yr`=m򽸃VGe8'nNiͺ;R쯌{jWf8cO9"]:ʊgHѼVC_G)VVU;)[;0U|) 5=P1 l $ MNvg;̔9 ۪xY35t۷Wx?=zR9+W|ܖ-UvMQbAݬ760wc/ ƮƼjcu#dќ|o}.7qPrq3Oj%`gRH}Z7] ,SXY}/U3mEqݩqmWX>+ic[aJ>B#]8;g:#+3tJ1o 9]EtG?ĴYRӷ7#}b|@, P$[gMo;b*qij*xñ,d=aGv9LۛyABYO4/`| 7L)Vkx^=y<`6+h ZMg!dnϷH{-N?]?fF6H! UGwm iK/gAHPIφ9W82F\: _~o ( .vI湽--po>B;%gcWOV|N1.; r])U!nmB*xgD 8evNTeĬΠq]$=R? |gQد'g0> nG@-W홑*' ^5xYvSG-Ҟ/OX f|ք&I͐@eߟ,'& D+mFeXKjWH uNڂ6s 2+^IXr2R{^eboeYOdGގ$M8qJ5QhcMZM;ޒ3 KZ09^cg|UnRt ~լzὄQڜ? l&s{h&l&]u*$392TS`CduSDeWROw9w06'Ӭ'=^cqu]]Y+0kʭ9e! \һ X#Vt.7@{׳jgR]Ɋb: 7j).H0,MjnyYa 1[ 2*>3`1 ';5ແ>茞cR8`}O:=bHTl†4gvÐ3UԲB%/ӛD ǿ5;G5|u’5dA[QT{֎Qy ٘Z=r./k `@LW"@.sP(`( *4hѪ)NT1D)2tU"enODDPߒ)cTgK'[t@ew\rN^XQAۥJӖ~K4{בc mLɍʆ'7 C=[qֳ}`!3;iK!g`u `ϼW\9+K(.U sŀc,onD);Aa8ƞF'cTsc`KzH&-nG=Zq'n!e*B怴W_Sx|(X3y`D} RV 6޶;\{ݤQ#7c20u͹zŕGĽPÌ8TDpfPT  %.RJ/~ޓcanxVkW۶ݍKxhoOT]B }1Nfv0?TKcTEb1=ڰ*ѽ"}42evJїˡdOT1) 1tæ|~t:8HkMkTy$cGB+1Gݠӗ4|5X-Έ L]`è >n)}FV@t* S۬޿ρ&`ED[/@X}=$Qw:*ElzN3\駚W p%iN; v(\BoDk ";$'$X_o} GݘN2[9]6;!ӅAs-C8`0[[N]o`WMҁf(_Ip(%+88D֛)vy2D9U(zCeқDٍpZ4aɺ-co CZ#lDфپDߤpqAX=tJ[=O_V$bJOc߫94KڐOAP hNZFAӎhG( {@̌%-"ޢ }buؙ: $ؠ_8ɗS}*H-a:#8z쇜|B RYr4xS-获= Xp6G_-YnB& 8}9[NM&һZ3SS U䑮}ɉŔ'.(*'m9 "_@{L#cH=SC=J`-$7GFfסT6qcR&ERpmpCŵ4 qh 9&TW0k@_{RǬ䖦=(4lF)6ι.t#}焈\+Y}/zt Bh~`D 6`O[:Lzz$('s.Vu2 ߋpO# [Jmz_p8DF!KaXY—Y ˮLv Wlfu/ɲ)#I58 6zoj;I-p!?i쇋ើX /LC2x [Z iUB~ s)VqFYʵ<p/V1F,զ{w)zj(&&՘U[\J@'(#E&YVFYx=#H=>mzT$;4 ?ߗmJyJ-#u72E̴Xe֭p {STƷ3l6&P{4iU7L8&KDPydc:(4[C)!@(nOa:07*eC?E,º”֒m1'%oakn/i_\6xq4a?AT˃+`T-w|/ɝ62vc_+S? kU6dikm8 HJp^+W ϫoʜzbfr7Xa'b;f :_/poz%غ%8aӅhtBe$@XLuvЌ+fw&_$(3zȣq+ ^͚c6Yxdӑc}+?TtDjrvJYn=9rCNt́rϒPcď] 3]{0Btwu% N*Mya8Gֺ)0?I@͵s^`ސFP hu~,($M1-PJ/.Z:]మl1%hY' 'Țz2dB ? %tCyha_?5i]d8!]wqDϭMpĕGdo&doy,?5^2&N)-x+Rs9ʈ*e_s_ tq4/A/8GOqCVJ*I |UHB =gvH9$];Zi(I3x`@ghA )VЇsM]>ཥ̛M6Yvᐼ@unjC'~Iĥ] ,JHL5ƙԳV‰Qt4$ )˝M_Q!N6SU[|H! Xf ngqyUJ %Tpl()1{]U^낔쪂ש8XtzMnuqÐ({J/#_>g+m>BKՀ _ïR~6))ʠ5#7=YʋH&Ko;9j? Da gdũ`C `,'tRlPPؚX%`\2w-HXIT,g@A#۱oeT#76P렩p];.C7~- &o̶\UGݾǃ7Rsv#mts3L|N6E@+ @Á!1v@iʽN ~K["e t}8fC}^[Y3LO}Y@-_,_qg]).(%,5@V@wZH*X {gU㗅BAk⟭4==sl{Ropբ[u@\G9!Xik}MI okx=9$xQ$_"Du5H'5ZFJ ng{y|mƂc'aL3ְV QB`}ǂ czt{'M ))dDesʤh5.&*I a*Z#r'aBlQfr/W*ѡiyF།ԵI׍UņB*qW(~Ǻ*]aPuD6S=h ~ F*4J~%c*1d9cJ/cfP6X+>i([1PƉORkb;x5@>@6Mg =c{G@_\B(Kuz~6}E1:4jv+u=#l :9^zSwkμ;!$fJԱ/ALb96]57H#Ww_FW!Tv>06U 깋jQ,oyk0[u԰ra^1!˾VoGBY a1oBN}ʸ5k8lBCU9 뛯ɟ;.uMu˙4u@Wab3jzIbfi*wOf?":斐#Ң-cPMn<mRX,]Ď7$WskAlQ ʁy`LFr@`ƲѪYCs5nj|Þe\_{R耻QipS-6xMRU1`4CZF8X)1ukYOU(YP`'0MKd 6&Մ)vtL{6;?F1 Oђo$cW%3s}*Á!QKv_v-5bQ  ~1IO\""뼚tT藕NGX  y=Uh1L( Ud/.[u7VhΘ-sّc;ou݅ts"$oq,OG{BV^5*,AU0C)ruO&xզս}`hW< Fy`1l@~t/ܫMکYZ-IUz_`?+2󾱘X.3$hβ8|$7:f9jXpXg%RhFܸ˄X$ s"қ!q'ٹ4q}L޷|鋇5R\#aq`9`@<{$oLĴf]\fk ٿ)k!GJ1ORE+Ԟg&7k9ixl WB5%hXQ7 9 <Ĵ24_dfrKm n{rc+}(JT d$js!ū<#@37}_TT%[ y(֗RVZV?]$P~e᠝[IkLQɲU8%߽>舴W2%Q]h2\d2Veq=*y3!9kS(9o@dWLPgOOijn>`IflHo YVEkG\~3!yʸ(CRH1 -uWPTfc1Zr~3T8M;"rգ`ʊ!׶-sjO1Vd?EW4-1(&N_eR9XϠR)c 䄦qun |`Tj./ZixWMos|dOX#̛}H JW$e(6fTf ܸ-ԁ']A!16?E ,eK<魵̌.4i?qnXN-ݢtkP%,_d1۽s<_4d"a)&(G/j ťPfR'aR'/ǕDB+Z3wZy"=_\5+y d@/EO{җ̽,,C.31e$%G5sގDgaѡAP{=/IM92ŕ>Boˆ'{l8I-fA`g*j.Z/ ]G8y~rJ}b#LV $>"hY#Y v6j41F6 ѳH]5(j~Yq&i<$+Q/OCѕwkP  hI|M`I; KWa+)û|O -?a DYY Oq,m-Y2hѹCw/U@1vNLIV~)#I~]ǖ;/"f^SM' V>פU,(@~Ѵ~[ўw_r &+]k%ion'MYYր\A" i"t0LUDzs 2C'-;rNq).ɔ:-_ݕ%FS+2vfӳKS[Ns<;͘ų-!0ԕk3CG {BAك: 0=) -?ŹbIXK+  r5]z.U<hu|Js~&;]!#9zƃ\LQ{ժIAS>bjnH_sѩm+a2d/s1$Nҟd 8cO5[9@$]s`}ڧ=/3.^e7ͩȁ9 avYG %bmC!$1Cg6YJfrw=<ice/4•ƶK_RYqDoԂ(밿Y>bQ𪢀uƓ2Ԍ:C=.x>;{H UmWĥ ْfk_@,,jP`.HvCm{ak?ɇfnuDv P vٺElda]0z9#-*`{(%d䁪|{?,eəZaGYoL_\oQci:?ae\.fKӏ3^y4򉎻&O^GiFf5h+~W|myS:J D9|9ݜr 8P5)y5MŌr z;䈥6)G|g4+y 鲨n.XO2'ƖmH/̇pə}Nw:{OvD}o 0TNe,P&#I=678ŕla *('&F_mHJJ3#ҔP2( Y%BM;#`ԩ8|_)! il@M_OWկ \҉X0<` XSw:s{K(=@[e~ p@qw`K .C NM=o<;5':.mGHvsB(XV!(R Wg2C*YqkwqsJ'Fj9':3Z& R\[`cի{x7 _% >-4kF+?%m6~%G.X1!:+j}v rz&IJ[gx EBDD\"S|eAa$(HםgY2?Ljvd\b05o1r0>8Y`:nK*IBN"cD$b0xܤn*E"ÌB>LI"VΗȚGؒ>΍w(wj{`2l ,aPߥ:)f 5![m{Yt|sKh+V3+Gׯ( )>g.Sմ."flmQJlxVQۯ% \(!\7o:(Xk@Hz?8ZM_̣ [lfMNuND 5ُm\f޸׌UU7SI»BwB5TL_5|k n)OaYOu7HcP(L-^(#A?3E9 CPȆŸ n&r#Q+IՋݶ'Dٯo_q!oWSlT}XE׮HoRƳ֨ew6~XgJf/N5nlKp$uɅOvYϠzuu4ŸG~tc׵PF&[fiУ`b.X=E0v:ŧƝ %KEWy+rHL%':թ3 Ʋc$D׮6ZՏv9ê0_ߎ|o yiNDv?&m1sܓ6XD36qĭטa9B 5ДQbw| 3di;okEj!Q$Jm1TO95ҐZ 4R{L zq>?&94Ls++U0Ow}Ʋzj:XaO%\ ̏EL0L!B x$lRm]n՞.F9~[R1bNvԕ!sL> Dw&$ OYhKȦt`rkgUF*.<,BR >?lS/NV|'f]~1Ա ʻMړH©x *{.{(.5IKמE=^ꡍ3Xؚ*W-]Ǟkdx TJx6ĄҐ362tϛ7X}ՂXW-@ 7_l +!AIMV1ų L1DiS8J^T,R@k[=UZ4 [wRnT JR@ ! 8$u8?f*tZ9!dyps{TXI~ #&- ܼ*z2gK>q9$V|o xLjwl-B'G@XiRhR>;5,E=z#B"Ё:P83E@*4_Z9c5Ք>A]?0|O+0 h3 v[TsM 05ݿЏV򂨾qREm~0AL4[#ZbTd7zfRGknr|уP0jf.枢~)A|RC[d!>☟r r"d#ti ؒ@LX̶A?ʬuQS)H|i64/`iv^iZ/B\q6@.ſvFA]K9ыsI:4sA0j'v&lbYx.йf)Z>/ G  T[<\4pI^%it7?g |7<* v^:gϾh'`+H.J;UiVD,1pa4X~>eZ܅UH׶3gy2S*^`+>BZ+J#QiBMsotQ6kԸVJK#V@ᎣH;efn`YxgZyF**Y%-.NـI`)CkJ QʓBt9 ]Cl;rf 8+ݱGl4bܾm9ir|ӱD/@0y# 9IwW]ʘly;}qO])?@$>>qdFMPEg),TPt-vK !y5}p('BOҶaRDhnflt#ʬgjY4rɼ= nn6w?5A˝r{LR2LVA6;ƯlǵcqJY$l.R>ӣ& .fpW.4R`QqFlxTiɜ| S_!, 5Fe+ ܄f1dv1)O``Od|r5 qN~)OãFHIͰ/cVJ/ƸX]'8NKF/U'EE8ƭkT/@Ai}b8| ɸ᭡#j.t^},$yxk![6&h` Z*F~\җNP7=j>t#NZw04t*T퉿 M銊!s{HyXx.i fg9͍3cGcC0&Ա6IC{\q|Zi*DpыeP4u(AeMO{S˛TbR|:oa0(:/H(g̵CfHңٻDe?Fo_]߫ ۋc#䘺re zS"\h /^u7-s_}8ӆr qĬjX(lz*=Q1ĞЍC;e=\cbJ<( aDz>&I@[+7oy^Gvx'NI `)ZMґ,E3LGW|U`#js%l chita4Bs:eaQ5"Ur~I!$cr:QcV'H9Mkk <_@{'xd6' s1,Z1CU/؂4Cp^@[;t؝/mr5 }a^V>{#Ο$k2ix_uq:Fz M)0Xi7ېs̭loY{v,\^*LL eKGA-xfpUNQ񲏖^8}ƶtc3{lL3㉞JE1g Uս=6^:uDE*),qɆbR`R#3VRzevp=G<nhNn.8d$,Z̽^$0/RjrPo+*R'͙fa:SVG9g=5I4S{-cD!NlKoE򃬲ss_E{q_)&"F/"SIuMٶMKWz@"ug~R5OU\(;I=TBW %;Zdk+ZXt3`w퇠emr<.6 H 7 M?rp@!gi;\.W Ix'(J  R>:_ mS"0tڔ-B9/Ѯ?ŞN#)F4HJN Dٝr,ꎛTIZ1>pNbi7]1fzWo+GՋSnɔ;0>urH%!فm~;6v #2#:.ıO Զ.&5Xv/oJ6U=u[ʛR s;J wr5ކWK.]El/vL{SIeUPIu3}Zc|eA7xwFH%1{00Bt1sJQr !_l"/{:y q-NilmkwȷjYnvc@kX1,~n6v?(Z&H%stȔl0 &K;yY?@}(#-TݮcU6٥=2zQFO0iJeJ J9s1 wlk'P!ĶYgzj ])ŵc '4Zki!%|k K7PɊl*.^D7: ŝQRX䮩ޞ:sD6Xk2 b,'Lu.֤ۗޓLg-#}ۤK߂([*%'"§0,Dq鬠lwC̖Re*[ GL  Y ?{=̄:^ N~[v[7mYԴaV9߻̙\r=Pv'( >&ř53ݛavE/|;O| >MB^#hWwi #$C^CͰNɄ6bf^,ѾO -Ĝ4=k,H}˳) jt}-Ro~_<$3ҫn WOc*C<'?N{܈&ENm  }lUfVr^1OlD;q$3>:Sq &b~sǾcY2GQ7wن1-!I9'IY)Y4³dT7)awlԌiՄ&YY(!GoY&ˊR){i^xkv)mԥAjBd0?Ug69.롕^]g4T,= '^GpHul1KDYeOP|{$B$KK4s~oLلX@G鑿VVR=J&h%pBLMAIݥp#])3ߙHms]=C/buȔ]}02瀟 -˯Ɔ`u@G#2<@hՑ6!Gih@@To&P r"f[JSpUDm.Mm-L/e5g0gseVXw1wMm5Wf&5[d%*xhJe=cL=gdbˣP?J3f|l@~E!GB_h9k={`*=7wB/, )Ə?,~@('L(y`4o J8A?H'!BjCsW >ۃ4M+==mjYq8 JR/{~eSVb5F7 "";t?Ȝ&<~Kp]ae~<@sr2 sQ; B[3£&ǍE7U,WӋZܤ.,\T3F/[Ԕ{tgv(8OG ؓ FA`4C u_tk#7`s(TTi<h41S="Z}H"P:u/lCi366MULo335C&mA͏16.)8g4t&nͨq央zf3s=vIX1D:4SqdA_*R儼WB):u~= tqG,2k\ | -K}2]w=Y'+,m,&SDх䩚0 gȚV$.9?7+y5Yl@#iL*'zB7;a^mOnWpORDnh%Erq +T'@=1^fv7T(b2Zg& lt(e(x*h,`5!06ۯI ]!Qx%f9+s%JH{5n}AU|ϬE5Ft_~(gM{a¡N:JVvE,nSD4Sf H1߰$ $~fXh@mT O/\aw༨?[n2'rhIg1@USZ}3G.=pው ɪ#0JiU1,a!z$K-J}^'CVO5 ``M컺k$f`QI>ݒkZ8[f(`4N۰wns`~d%qis5K0]gǽ6M{meIq,ihg{wɝ9N0~D,DFO9{JЈD8Mhjyʫ#d>^qyk`p 2% Q,M}ԴX]6uG.7ȡU]@fW*ʀCR$MHt &sY泃J[+S^=;|y契ua\ m #]"}jŒ`,ZEfOfrl<^̚E~ti9;"HTH]a,nD,HK=zwѝ|_ >-~ =("?)/[%ߣOY\fZg 'ތ-ǐ6KⲶͼ p>5|$>bCeܜ jE2*^\Pm@,ϤO k$EtP(*Iz!,E.ZenГDQBwzJ xT%ѻmnJ1U8c)x 0}`6SZ@W3 |&%m~u rä @՛a++x=.HEl2Ytqy1l:X:bfxjK%Bgv4ʮXi<eޛ%Gq"L'z?&Ǩf6gW_g\75kz~jX{wg $膂v˧kXyGL2c_dWf[S!Y'oS2uRA+l#{ &Ҏ@ "eئYwK,jU"F5`~ħK$dĸ<%ӱcDnbaBlZ l@bMx3Q3c"OŲ=ʬr51⿩瓘mJ\XX)$%[Lv`(J5khG s!lJlKᣡg^Apf)r.ce*ҤBk>Π op*ؾ&RO*.y+6YL_U`k \Ҋ9ޞ"& ӮDB)a&h|M% 9:46ɰ"/M%ƅTm{+uDŦ??-`$ rf(ʡtρfZfcگ)-׳'6^tVCgsU dǥUv[խr\Gl #7>XPzb]O$y>i姃<"W,ˤi`6%OGv6V4دל"tp Z^\Psx𒲚i/bwk‚y]ʷ&N6n#*]b})s햰] VLvMֱ*)_Z1bj؜~.<"4`@v1d̘(UտKk1Cn5 .&|9~tnLnv Ǣ#~Q5MEۑml QUGM:圗?Yuz`W]? WE33<@f͙ ?.\EpH\;k {,xdM^X5=0ݦ[y4J})Z G{uK솠nhS堏j+h'V'񺉞ion3%a3"-t~=Di͔"WV 6F1TqĖT' 4P} $1 .[* <-СǾoiuD4gEsa.Bvt%Y!:muG_y|p.V=q&XHg41Xg I3 ٹxNkE+zoy\şד6냒T6*X"9'Aikі' w=nR;].yxCDmVC$z* 9 C/%`$WL/4!1IHRg_!m "#o-H2x4}DVuFZ`ZS6$|g4B1J$!K CJNvc cSS"emkZ^-@}ﯚaN«BWuU< Caٯsz, ,^W|Ȫz8ųLEbԤEYhyUufi&>Bszs&|6q?h=v׀.X^-kSꬳ^h߀iBB@DE-0+5`Z0-F@jgϴ|.)N\JLL|fZQGհx6&9]`^䮕.H^=aEsY%x?V|1ƓoUr*%HV{e4Q>$ /é:lWo8|AV1KKL ٖ`Kw߰&RJ^RmD_g}X3o ^эveЇqwәa'yWC n ]Up]diN5! &끙\D*^($*gj^Y "2TyUDg@>"M wW 3EFڌ4wAϥLnm[OJ a3(G3KeyJb: [̼6l=*{xKB <oe`"gc`)ǚC4)ΑZ=1C>b D\@n13cSX68ąFF !-2{C"L]gd)%lLΰdv_ȸbl,XJ{Acr.yvtq(%q3x̓}..3^g-?˂Cd-m2f_FF_=]'`*Z AԳ1C,M`ZIkWϋYg!~zCءge,&ZMgZWaƁ\ݕgl;{Hco Άe|0i7q%뱚jJu9GF($^?ں]RDkʮ#4P,+!)o൨  k @T;g- ;vMT]{jhoc{$i=݆yR}wzKv`J}֖5}"V-4D:6NkgKZM\Xi*wpB:}z 0lvI -nF]ȝXPH#mWc+T}o?4cmހ I`%t8 O NyjR>9_a E/&{1%mi,}A '=kq͒LB0~aԱ`"zۤf+\W f+*X>dcf3dGag-e20ҵmRC}˱{]EwKlz c|ط/ hUf1Xg9ǫM Q{w@/?`%ĉ}DVBvE";&ϊ Y,=0UgD 4 8U9IpB(t J>Dm[%vL33C)Xgbb O>1%my y4Cn.*roQJR0{ZZ|fx xNatYx'Iv N?j"v?zRNm74QɑT󔩯*NU+QqrBRХ=BCc?~n Ѩ vBDEεZ,geF<gtno:*ݥ-)/›緥r%FJS.zG ԼV:} \uN1R|96xn}H(:TiD[L3̹=yTb 4b;w &-z iJ-39¹*|1̼3'ʃ+a4|]d~lGGkbhPZ"̈́Yi֓j:bvyZ 2*H'}S[M~lqMy߶V%@3ʥu;tToŗ12Ik 1I摦Dz|VYU"_#5QM@i4P̺AM|Xw@^|qY"\Rؼa&~|8}Ș.%nc|ZAO mp;KI7F*xl~/dAb9w ܻovu u~wéYvO׽sFޝO]BGhwݡ7]ʝ͏%O龜IJ)WCHygELSM9Mu^Ԩ~2|ʝp pU'Հ.%aw0Ž߬Vsvܮ(6"VWYUGXnzOw axTsLTk8f?%3|O߂kD~Qm҅lo8 St v&mz≢ĺ#O [_p.wz;˓̱ŃÍScv~\P^ "ַc?L|sh[NAO&~H@qWhQWW!#SkiO \lj3}t1%Wiwxɝh. `n79ZXv?9S JͶNݾlfZ Xq>rr8mz"SJP?=&*>b{N;a(b/ߊ_)SJus;rgNy)dU$s0;!P |nl!y:XߎLӋm)cׇ[e)-:c(>BŋyYЎ7"L{G$`#!YJ:&+T܋&XDPwg+wvkro%<1F74GD̴l$Qaƪh:fdW[dw.ǂ $c֟{bĝK=1g] =` d JhGOؼ(1[p!ǠcbܚgZ8B7B;.Y^Buomڿw=i|"OW4%ʮYm+6{Rz!BleB5 qM;6c}U@)ϦˢnvLw ^>a ҽU$;9y]E/?Dj42NH3t~x*.L0>]YWH :-IWoYyC8Ov(`/yB&Cc+zVwDNDp!;+t)%P>J0X$:#T޲Pe89BZd`l16=5/n& lQj_A#|[/AΌy/|Jţ60ɶɡp(P&9 f,8#M@3;Wޜhyy'&:BWƵE1/>0qA" ZJ xT]ʄZIӞn_@ޑjsw"rE2s7hݩ3>DMwQ[]V2tbP< !ݣv͍M ?.h={͂ImZ&BU*K ÀbGY݁>Bι;nՅGLȲfˌp0bbOT6F:kw'Tֆu;mZ"FrVMSI0g41@*:S$GXs(M fg*fIEB{a2!Dj)Ip`[5A\:3㛦KZ N3`8ZhLRF6)+@/Ҽٿcӥ-W3^BomfuNrX0PaayМŞ5H\7+.9&,bZNݑt$."Bs%=FGGgIíf=؋F,5^+6PgiHKM{fRe=tM{u|?~R2J3Gᤢ%g ZG T# Dsn]|-i9n"GZNk?0Z}3GH}\RTW\y.@34W0b H\  y8\ ?(ň%+"RBq~u4su〾J<³|o1J^pcBzZ.ϻxVg8j1ZGtUkZ ^K2\@w5,w $%ڨoaĹDL0?3X1wq'BI|b% _̅ٿC。=έbhufwIvyhvk%DJW!?|{N9-Mjƹnk9%2lDMc`^=Aׂ'1 uN:-VIt' Fc'a?DE0i9Hy79 +U,ɂ_R-S _Q*` v<ɛTzәrw≲{4<`}C$?U7ٌw/+S*{nʱJ)e,4SZ m?2!m N3̠cJ/bU͜ 'Zɴ^Jߊ}hdB[zph"(uhZd4`%{zB`]ti2Ϻ']vH3ɳO?姾!(FH,()묊N)t"S][u&Syv[ӢՈ5;i*&n4w'FV) /cx*|4w)shDY 4X!q6h*Pu"2Q&&$3__ %{Ss'fĕА ExQK P{z;ȬH1\0yk}P!T SO8D_;*&UT'Q(ZV fj J93W?K!B "pEɷAy˅'B'(ҚzC]y{xsОS9&\|~dD&1c`E։:8FڍAC+5Lڤf(]flUv`܅?A,2R_n,ZvC9u`Ofz`5D*r4p'~ XԳ}(׫!Qy@ Ok${J7ߖb% .0ݸ%DuS!A5Uk,<=8N+y-rQ.K<=Ħ{ё5ҜI Ar}lkn(mDUs>g##ި" 9jʳ` AnN2;R4fGl5NrWpbHuZGԵ^ զ(vMI2lP0g3E Gh`u'Dua\חt kp'ҰF15{;\(F]ɑӮ&V8'`LEDC^ ʅ$W-umi|ZٖWɗB󘂦:Z6)JX;@ퟏYQ@'N#G |];x(ދxPSI[&qLyv8'j 3`^JYp4d *&|רt*CIS+YF@~X"O2!}V3}LuAt9\à}Y]dV^>B{"0#|N5rԍVK{*[Ԕ$DX'SwX`t$ CϚ;_n@X!̿#faZ7Bbb-.uIXOI#(+zTfɜ8&fr:Zw35GZv VWG{㢱`tY.iLk|T\H=xe[RE"Zi0k2~` P˕ol+k, t$e~#+N$蚝u3SxFr~z"C?L8=䎝q2]|[}*V"I%gHU 䘀^x0KSzR1|4|&}+=8YƄ&Sh,fF( :BՊ_B_g%sWBLWI~+ TKm򤨘ŕ)-< BuB)U DOX[FwH#m_ /άl'fņni563l<[ J&wuޓJ~G .ޥ(,SL./Witv-jV^[ bB>eh:- ^n :nX򩯲+O.C8f3C |)E: Y\S ڣ#epjS%s[\_dP~bO #q}B[@Ee -UiBk"Kr:ReK@zX=tf{=d%VbŷF ٟv9'ǎN1D2ξ'|…R"nEњ&UCrUCPx7kf UgZf-tnf`P߫vʴKԘ)jc79X rIHeW$-Ev;guBi^gև˴?SEd4<,ي1[K 4EzKo s"*$&\YMgH"YC,s1lj,tȘ-w@H% .﫩UmV^Yǃ֕|]0cxeĤ'pFpJPNK9}F  xqWvN>FbҖ!2L[Æ Zͪ"ῦԟ5  gsIb+|<߬ajW{r{APgeYa9UeѬg ^=l9R`5e;T6 ]m|y`eEs{e2=JעV넱Wl|Z.Үw) {l6[;RIaHD_&pHydGeK`^N춋M玂™;3JB\]0? V\R{oԀ;9F~qx][PR P(-vC?7\:/kIPD N%laBߑY [HN79rp5y>\9F[=|JzivCMS,ןON|Dr&t̂Jf. Qĺ4bڂҸp]15N4pP׽>?xS1TɅi\+-m̈́Q6ηԛ'O*f|]Yo!BSk.>XZn=ʬCk/ WOjI+z{YAF_/ԏK4{n e_f"9/c;-KT^ZhȤzEeo8]cpڒU@yHeᨩ3tk>hTOt0yyٮR# kR.p9*qRZԸ"˖q@2X(%V/f@B>u{/70[NgEu}. ~#!q4Y=`$Tz1C_T ݧ L0bL$%* _(Q g0cBw|>y<#zEeghv!#a9vQXel|tPq[Q{}HZa)M2i6j{OP+td1Poje 'C #8ێqbH~vXo(dmzng!Jܑ!%\j̠< \3ub Hs'_vk-Yy՚iaoѳ=߫Kx=,S<=K2>8ΗϩQOQ!`Kkryaf:jPDZ.ʏ59^D e+nyy  vyKI^GPdod-?Ҁ{ua9Oz3Zpu LYXs% $&֘]q `A9_sH\ܰ\L*UtABjka1%>2RAkR*rnۿզ0wA #R ksTwVj!.T{aMdPԋ'5]R]Ř,uޣJyj] ?o1 )L[4EV,{h WarƛZ_B`= ?k} IɉuG[b8숁EڎM{1k#Kq _vbx8 `3~Y 4g'Yu")9MʐutyeRJ1%7_p"@ ړt7{JV # !zэWJ{ԟPV+O3n[od"AW+:[\bFA7]aO&[yµ!Pj1"zpH-'`X֚d t:=L{m&n$/#- mmPUq#_Am-ѽrV5P_ l+yÙ;i{'pFEأ_dL:րS\&1H=nl$sty)2o9(Г+DԿSv᳄ (rwBM6=H}r[%bc:Ձ=h,#a+|_X=hF/9y G]qYם.rxY'Y)0u]+(,\Bc1i '.PIk[!, (kanO8#ZPZ^T{bƗRi+_+f h=e\h-<+V٢hbwk+mb16S FqsAK$N-hڏk,BwFiOea9YznA&ܬ H4EҿfH7%?F9 "̘O8)٥ q7ꀰSWu 1 ?Z_ ~'-@?R5Ò0~Ϗ`Tc%X$k\z>N.L&kQj,YV_7kMBbU*gǫ9As?˼@ޭj1eU@,/ݡwЃ j6''Wh;^0~̄trpsf^jVΉ.5 ;L }AX6bN}x3+ _> BEO~&8!.e|)r( Uꊀ^jA FIzI7ů($>( ,?3Ưhm?P`u? Zou4%S<.&y"_9/F\XGCB`ܥ4X$ax,/Q<=?R-.JۍJ0I>[g+ /_X Z@ ai4B@s/ak Y3**jT?՜ 9 ٿj^W#ςU}HlkʍjuE쀉0?֮2?Eή˸V"w@DZ). H?{&.S:Ms@\|E9c$fmR$>u"F~د%ݶZV3&Î X 3#n3J8̉F[A;eL( Z(_ @df{u%݉-)F XU<;~oM*j&!%B<}x0nƝaY8e%CY`l*CΖ0;BpctDNm3bąnIͤbEG閩ڕL j{Px;Ȫa纄Ek<hm+BF4~Mx Iai0jZ6enuSD 6^-97`w\]Le eh@O.ە_Exz)CX z49$CZ7':EiU$%Ό#6x1~+Er+Z<60n#iԾxCerie] )~\:Q8 zǗK{LJv:#Y|ۧ/}#!?yAS#BCe DCѽ)q=p_ IOk:)ĉ}^%!|վ%DRj.u:d|T p9UY*L Y7&zy+aP(! }QΨlW/1Y?K^T*?O)mJEy7wW?b.1`Z{G}j/ML.H_wN,dtvA%D0M YEMSWr]jͰ O'̾©xv*p%1{M9mE>~F@L^Ջ'z)Njh#K@'JPR$ophǨE3ǍD:VΜ&'6kZo]]hl<b|KoJw-(j'93[ZHj٭z Խ,]ԃk6'ҷ-mbm }?1@;+U8artBzN鈙Yc3Mki{?.9<]R\(21x"gPr .k5avb *9SQ.S`M^ ]޷"ilAN`Ҹ*K"#&:Npxsf ɕMsS~"^͜Q'b{XkT-c-Vk_"l|ӑ)jʴv=Lcߘ?R^{]ߵ 6R'_; Q|0lbX Zl 1>lȪR$U {/>g,< }d6lސHQy  k"3}Lң vE-A 4+Օ*>{k["E}F>§Fbp6ӓ;5L_Ԑ!+r.fw/5$U셾lt'<;??+-Zc0v"\A!!14  MH`ՙC9shdi7q_F gglp|?1ᮽ}DK׭J4}٠dhH4rEV̈o/`ʏԩ ]iשT+fn_l3DAvT4%cĭ2qwvb&Վq!O0MCz.1Rf $-#NJfTWKlՠ&}KxP x^G ufƻRlmuCWIR.t<4gtXWHk:¿WJ}<]L^2W]}Kf=/ <-lWWJY;mHھiGvtḲY @fcF R/ f!gCRxWu*Y*BlS| w(&OϗcA)].בӻ| iS5rS.Dx!%{}+DB}Ɛo%#2"عQ"6o\ٷ?CTo^ |dQh9!Q.&"',(\D4 zK:aϰL%[}Go5q?W!m3ݛ{fnin]\ä蘿Lܫ'i̠yӉ1Wx@VhXƭ5' 3v>0TwJ j'Pe4Wj$+#=L zHH} K+4 Ekߚ#8=[ Ct^}~\ajSw*skV^{DD*9V P+r~͎$y 4{̗0r@Q|{AuBĺnDx+U<?eͺ?;:FȪ!{[ϜA< eui@PkpqBNcMoʥXN BD{6~dqBΙlׁu,Wۜ175bSDЂn!1\s0b S*T'WY%oTvA3@e? T8+t 2۶ B\(G^P=wR >\۫ ^3W<^:~N}4EP"F#ʓC]|˦^ſ^hr8ªLWD b ,WDRHjucP\lmH)s|$1EٌOFRq8BL{4>7xW^u&Wzձg8U%05~7TIr]J=ZxX¤$NH;r4TwxDrzn$H%Z90E<`$e0|W{ar/RF= GSzYFRV3} U:z1 Gy/¹q\2Ĩ ~95JQ`Nu9ANت?{!'|ORL:U+R2|UpJBD0c{,S~q3Ah wns%䄗؆姅zI:dJ+ @$?w%ީg";d%I5?iABƦ .~ 9w> Ӄc,_:ISd04K` >T-P_$ UP%$kCEbݜMWo;e%kG? "GdU /3*mj~MߩwnwϿ-ѥVZtusX]ˆǀS_AwmH*8zP}2ZhTp5jBIeeiBrpLTFU] )5*:VnǢ{uӠ ̝ R)"Fjs{tdfE쨆c+Aymɒ ξ[O\ȫW)8eXsr;+b\6|ZSӰOدnY˙jΊ/?XI+&dmX``.ژ$ҨE_ "'}%阼ڊXTtÎzw4MZ#1,RcCm ? vLѷA;`&E=sag<uA֏[X2h+F.eYxs|#]Iyaܟq[4G)f( SBWڝ w1U<ǝ{FbRcިW*zK&M,5 ap0Ք(CzF k%vQ8 zX{+7_CWثęy_ ֈfXʼQ(|^ziekV}k}nčM+:F楴vb#)PUR$kk: yZ PG>ăTu5|֪.<̘5s,u!h8ʼ8].O 1G<ňzv;!!. v@g3Yv  t b f078*D*UKa>RueE+r;p~ZrזZcEuK?En9;01'C< 9g0> 4Ɩљ d ֽ6Vحv YvOT\e`_"$N9aVo-֤]4A j ee+3LdqY,(T:7m yt:{?¬5@˷`Ý/CؖWeN[J6ʡT; B>+pVq '8`˨,`4F"q?5Qߐ.hEokPީmy'*k4.|U=_<@Pb€(qA4!m|e*1@@7V)C;Vcx#_SPe\n]͂2Qh' J)՛?۴{hHk%ҽ#F3Z[Ūo[ j@c)2L`V1Ci%cKH~YJeaX78l:@+R>z V?Y|[{ >XGnlH0Z9!`Mc8FB`_aQY] UMrrWXX`ۀ9Wް23Xԛkny9^k1+T-^[@E7 fzޱdj '߾1B?t?`q]NqzSCVT#`gz9Fc_Wje uDRlmZ ηdMN*# axG"/ه*1~) `+񶘅H8:D>Uye ҟUfO\^rūxupm `ϧ0y\uXiL+\%n=6X_[˩>W\@TF,1JFQT`5r^jGǴx|/YJ+)9wctrLh#V8:|sEd.ޜ^ZE1EøT;SGZ+66\gBKaJo -kq'ӫ3SS]`AYǷ61tjՖr1ԋjf߹AN^R3+4"H{qݣBgr_Dd&99dSCqطS{u- sԁ+'Fwrm ̳͔A dWo#(t! 2p+':g4G]xYC \-$_jVŌ-8&'}Կwч$,}%@(%\$fϮ8 z#^=txPEŤ?_7d_U2e7#Ѐy:sGbks\8vl'Ol}iUѦ.;$^ zVWЊ[oLlK8"3%'M}oXi&^C S4a~g @-AN/C@4@ ~Ovq|kQ@/TZ ^_v}vǍʀ6SCZEӲoG ~0vdsHA)sR:QFGsxφ.wc~!%x\hYj%%p2}N ~ vh3 Wc nQ!)^Mžm-&xXsO TjiӍ3j>m9ȒmUD&,C ((|0mC {{y<,Ti|3c+MV4BqۉI,LfJB4R?A>!IZ,a~-|QԢ4 +`z|l pب JF@l w ^U(a9|nc+c슑u]JgoxodӤOg6r|]̎)!uVOvoR*B*Mfov'a9tҕA=#Wi_9_,sBצ"x(bhQn,H,q5SuJ=8\490B 2`<, 7lv}u8&JdgX_gd{7-%9~Ȏ]rK{ =ir\]T#ڞ<7E#)\>Q1e=\,*> $ _= fҕmK}N4QNNi+&z#7F%EZ>ŸS:jpj8YzQ%7@8*}NJk`˿)Zς=X<A>V6kFEh0I +pEW!/$ L4>@ yx.,y䕝 Rև):ns}E Pibz7YwِQp}CE#5^ϊkn3c'omr_ֽ/T8⺾ڃ1bqibbZƲWJ}ePOvٷ!$P/)صVT؎<;ӝ+ nX PC9KfeԳzWki+o;+4LoJO0w|10ȋsk["ޏ7cHkuj 'O(KSzV&-$oc[n»9;n%|g;Ͼ>Bh+\PYq8IE2*IwH.O0T>?k{죄ާ*=5&K.Aob+(F-'alc5!pxaM]f+ 8L e*:E&~d\=O|n6s[=)ni3]tCϢƛt3$Ee H|KҴ~V팺w9AYc'2"ԻiRZ=גb'z!~4@ lk.pKO>e9OFpNA,c'Ǣ,4zS`}w Unf6'Ԩϙ_D2C^6Z@Z1X@OWdIU?A'$=aeo?ǯ|r+VFvӨixhx)Sj}IgvFlnv:w1MDݞMdWT7˫dz5z|@Dn"㹟r֗h &GMUnH+6V /,2.{C;z]I D`VJH*J%Ч%3,M)r54wܸ&.e&l;#w 1i;X7IU~*WQdWOૻ=?%- @os[kv.i1WRd\ "AՑDcgPr_m;؁z7q|Ѫr%v:H#Q(ۺ)-gܬ=cq&ĿTJm[Ja@!#@D>@lx#MEJ$R^B51j\'N!ѿ۲8?BȂfb[4kTNMAmT•Z}5J^bi\jnsˊ4\_(0Zb-r=#cX1^&[YkiKbrJ+۽Ozٕϵ7>`Bב ,qW~h!y&{`aǘaB+FQ!G?;z Ov/[ceI8dҩ}\Zlƕdzcih] 6]u ̣78Z %hu1g670Pa*?Ԧ9ِ%Q4Y ;^cV&_%.:[t ?REՆ5E?Ag, ޵J“BB.v1I[ (BT7id~?b)?IB@ w)p"?S 1ǜ3s^Oox(ww2:{{8A\$d\'{sƤex;X}a!_LӲ3o=]8d-}Pd:gM%v)[`۴aEvs?#\cƎt(GrV\\p "4lxDy.>;XMS¶Bʳ_lT@v*j nwR`CiO{Y׆.G)kuU:o05U em͠hA-dhK"{ w!vdz2=+EncjF'aƵƊQuR`{i|SB* 2qWVOݩސ=9JyvF`?Ƈt7PŇ>5] )[EZ'na<ܴ,?PGNNY͗9o7N# fCEa?rٚJ RV381?{s}FiΤ&B<1/D`[[e~`P*LkiVrQtG!Ҟ*ViblIحfm(.\ˍ &|Eg /,Ť2cPyKy1=> mAw Wm{slgI7&w:^{({zhlޡh<~*HцLaϼ"ܕ\syFIc# R}j,=Ons] B>n.cͷ:Y1g+ lB Ӎ$}q:H c8e'!skJ_+K)D][5#@D%"n 9(ehII`yV9@ZᨣS =^b%ncEncm!jճ c98mJQ ~rO$AtS]0;rM:أV&$Q +1-ogYmW[ } )iU41}qjq-N$LMUnQvf_LS.tJo ](0"J'Qm@#QȂQ BL yK{5cRgH+`~ǷgH_獉D]*Va]c+ +=khjӢɵMJ6>pgmYRŲ:~-vòu8Wl T =y^ѻ[+۵Mk{ڿ~ Xz/_Khf-ʽWgoFWOYoYm^`rX}!q"9f7r4\)|88LA^ry8nϥ]C%u]q /p pn&^ FJ{U8wW:h D\ +u]ij4?A1JYJ(pmjlqF*yVÚqzH^zdyu=-LàK`/<oG+!٦lG`7zH,l#.|"f πH>&>/icl ;zZ`wV)ڮy\ 8u25$Ԟ-(lI~3y" C֜)$+wRg{>=*hgЄ<7Q:F ;;tj<#0 Y8aMG.b.N+j{k?q'of#Gtzl¢jZ\#;&GG.фF)k橐_OO۩sDYMp6+L^4I 7iqļaĉ,َ "g=OFTJ܄>&Tl¡`O% p}]07~7!g‹ ow%/ԼvDdēɺhAov 6~) )qٖ]eXE*6SFz_d+I@=^79Nj UrǬAs)D6WVΜ*+m̛o:LC{6[izz'T< ;(I-(. qwOb1VZuZhpPdDP][, OY(eؖUa8|WWh0` hyqqCcbJH 50-+mS "ݍ=!k.dl-ƾ445Ou4ۍb$ a3p*оf)\Y9UmENauiO<{}%˒T&eO;fFH*zυUQ0a$yM6 bzuky]teV] CzKc!6~v;9Wg4@ Y%~[3yw_FeFڹE ۫mOo7 `V Hۂ'ą 7ZAMV:PxHdRN\m~oNhoQD)Cn4!-7lxZ㌳Qqm*}hEy(mPmXSvu"|F׺>o(5a Ͽiq7~CȞu?K{3I؅A0}qwod7dn$YT7_4BfT@6?ҭ4+lRT\/ С81s36F?3{B܇pz_yoY~ _5{ ;5إʮF'}A6@֕iRα9~ק\%vS'=gn-ΪAӮzOYivLW1`3sbLNG\>(#[/8B".󛭚xUlq}źu@.;#|f^= i Ր;a+B#f LtNOǬSZ -0pCrԷeqF5;z! $*_nNl$Bم[} 4"R?BE9D\ YKQsD jAmFYHdhAԊ,KΎ+^5fׄ!v[#EVI86:U`6NB8mế&dZaF &]6_y7!  `U.;ChV%i[C4*Aib퟾Ij{r9CiXf>v(z%(߈gi񮢝wF:}٠֐vUHwk(5=-.t͋~Gb-iV♸v"o_ЭSWlt$:rV1TI[E+xLX6ٍg7AG `|ѻ yH`p~ wPzռ=H]=Ƈ>sx KB"q3  84DAyV^RHo-'e Ϙcg`+JKA9cbh#1ƭ=)v FUQHm#\ p6gbö]`> $x-֦+ooq6^W;Ns,'c!=EiMuћH(쾡>W( tՖQr;, ü,kBC Cl9R~b6zJ0!FCqh_{Qq3@WQ=YɍkMJj:!bd!pf;ʒ<>r,CG0%ホS=u'h\Y[>@T|Ye)L a;C*؉Z+p<x xGp;VN+DBÐ- M s3S'렃y:vC~VeS^DQRÐ['1#JKՋWYQ5[nR1{6W44<$0&WSq꿕VF`ZK7]\g_'2"W  ٶT%;3<ƖrF`b-# %S#t4U0TNdM֊!~I4ͫ^q`MAK2ҷu8B@*'!d)7fUVUj{:"i3yq=< 0ˎРwãj߽,$=Ϡ+&0va cz" &2=M@@ݑu#\ȇҌ_[ef~ɎµX1Fe+T*ČdD<,ХC\K*gjdzWKv]ٙv6z2 J3eo a2)KlIM7Ʀ]tp)["T?1}ܰ9ln!ƾF)r.Sʈ=~q$ZvOj:Eͯ!b۔%48Vl_!xtANj@[J cI==.1ߐ= &-h+9ҪG)Zz؈"_nh[u)ݰ@|-cq0a.4e9A{#+@/QvuT쯼NѼFQe5YXM"aHf]"9/߿4@:~iZ }17_\ߎFY /o*flH5!TP()҈XҠ(@pOB^$Al@G۶v/5i][=\,V© '3fF4+3Scq]ބnN ?Ko=CX6"^66Nהc3{6lWM9K9hNQuCʈtI5Vz9]EXv)5!IܲUPPHq*M?Tw$+y)h0@TO`dNeWW+y>8i*/J 6HD. qIBsF#2fW'*:}3l\W9jp Kً¶6EJca_7۾4bfAgyd[vtTe5I`7yee `1sDݧ~QLjSc"ЀA9>ŅR?4B|1s _s+[IZ (U6t%)6y$㩉0Qxq}3@F*hf<ݮ*.K#/bI[F)ҁ10\e.mBO2Fz( x#&"7Ft1_Ex}VHtQ';2ڙH>\ 5ݟ7cgWS #v i+U7 !UQiq[IћO㧚UoY[e0/B`Z1Vۤ!bң LeJscÇi QX7:;7\l_pe[ndΟ.{2ٿ ;ҵo?h)C+%( Wps:X̃nĐA S9N@N}4 `~ySEm d4]$Q[&y]tw8^2VUio'5)MWs>T==VX*k70MXC*SKS&̋C\AENYo4rEm&Ā]Q nIϕ*S/d{*bXOD$!풝Sv6U9DzFƫr4)o<=fx2v8$Ub։n} >ܱseM|Sۭr /){v"AAd Yki!qHt[ˤvOt.Z|ݬZNǥڢ`3GRnXg< USdQɓaE*:}[%P|+make8 'B%G\A4&n~1 I^ tyA eyBFNYA&VDm; it C^Vqo(k8m֔-jȨj:ĀY'Lqh2x#<3B濣\aujF KD̑B%y@.КϼQU&iF^ab%jgƪ^R{ SF&ԿmILAGZZX04XIZY3'D Wy*^ed7%+f=J G̲J%C -ϓFO;ȧZo/XHD QW JpW8} AЅ4l-V?Po7c9hbfz! Xb~1r/NCԵGtQS,yg^o K 032@i 2 5_Jh\ p/{%VJY25WZO+ESc}K.a:/ "":L7 W($l/Fi<)VQD!LF:;Ic,ڱQ u097Y~ P*s۹>dViUL}X*ps}TXۨGQp=vJ6,g4͹xok?:{e|֮Imy ʚX(F1gа+DI\éѽ|d4 WW!m($ym'DL]e$AMVhV/2tQPx,ʌ"peMUu#Fp\Dk׀U,;[-^o*u|(ӱ#w.H͛ԎI04lZ.,a2h#ިlHp9^Ƚ|#`(=pO0YsmLMw077G MHsE>h*0}uD?[UP6xKvS Q7|[w^ABL';%}St&ǾId@QYIM1eq`£$qJQgS1=UfbNAQ&qk iXGY>B2MDw 8y4@($s+Ķv;X  ^gzvɆ z}B#ebf@|3:[; 7c2۱5b+bex1J5Hqq | kGj9/9bpT`odYl% Y9T .uW ` cnv@G0P$PӦ|&`7/|t-`a2JQ|1 Z[j\9̭W.F ,נS3oZ^}^>xMhJBqf~2=o!?\3?zd'iKjݜڱGn ߤ.Oj;TULڭ Mʗq%iC0O{2f#qXvVB(c1<]%;\;"KƚWƣۍQL,=[(=4+/]pV Zm p+pA,V/Qw7gI@H ݐ*e~RnaZd>ȚrŁdYY:[⺥6r{0Z:]W"";1W-s)xzC:v7͍fZXG f)E~W)OdP.p&C 1anI07艺<B}4x!rQU'[+YӉa̓(d^$`fdaFsKz7lܬۮX"X_ģ|kwXOV`jQf'@횂*?6(nW5aѶ/F[{EZwG9LѨZ:4iN!+c5$V"lj7QuRABͰ r{~xdV)D{>woJ$}R\y) pC8q7We\LlԨ嗹 j4SN+pT.VA!bawr`9^Ǎܒ{㸊H?RztMvnw.1ؾgb"`| 7^'%*XCZg]L!_.(hjA%LXq=r]Țܤ2u`)pGsQLيBn[͕ $/ 1DUS r~+aL%ӇF&~[w3<ρ0~mY<9VY(Ɯg`y`g}i,;gx63,+cMrs "ښ_7gw~,%LIyylIK#%'B$ynQX۾K]LG(Ef1*HG1tIH.ms'_m(/dS.2KHK<,`T UB!g4*J*]糾-72J:S-I~ZǾ b1vtkP, 螇%lΛW,Ezo=I{P H"_2d˄'S:К-6Fw׏n+x~RA|Xb«gW̖T%3`sXnyŅ'`\v'E᡹ ͛UJӒ}y]bdhř[&_Ne4/,i ൗb/ |O+QMyMYQ5BH[ |xyD#ޤ];d(Ͻ\K lΨJjwA{/R~ <5TM>q2tooumE`^%L&. zslXCwK =`$kL3>*ŃB\yTA6I߷G g/u8[ eYP0L +%Ơx9!*S?v6刊WdNXk >0R8 iDbSb؄avyq[.~ NBB25K`r]M0&Ha[3+ᰄJw&Ao:tFg=˵9'XR #.d'i&FpG@ GE@/vixGFoG'9dc?'PKn$OJB-TrUaL>\h Ҟ7HAE_Mc;mi*]4o>©y)刵R"PnY!/PbӵȨ=Nlz+Kf֕ʫ6r;nr593DC費x-VePv2<x+h$K"}q1~sFlfU`%![YJt.k3CA! 1utA^jB ,rLjF][6_A=qjU< " CP`M6h^9]kg t烈X\Gߘ,E ].QCuC )c1~z,8Pn;7 1'+ 77g:s-^}esrKX7%_ǧ4YI_hN]s bxoV܏砘㺳z[ :TkHl'OncR^04;aT0Z/j(gGJ>sB dGsKJ!1CEXgN|lN3Hg]aSO^Ibj.-""WhdN?\y`DGanPpj_th2bUQuAX/> fzQ8Ѓ**Rl~FLs:SܠoҕefChB Q4iv=_jx\t3:Dcf{\(9m3/ . :J ?جP.Ć/K :v=䷄g[CA5b#H^NJ!LP<:B:ȀS=#JRI!fQe;/C=_QKz{u- #*\߸bE+3Lg}9֔AMf׼G$ lY++cfW²'0RsXz>f~!c"Zh>N㥞q-őq])A濲qF֟r yף AaEBɳK$ZvF(2TO] ma8޿P 3-DZ- mueT-(xlr!v`ފ1ucٷ+P$O7,|g;㐞,QއDL޾-O}N#:|0bfxá^LSő=9[\`øzt||v5F$ GzքP!Q7YIB`/ҋ 㖿3Hs];|$# 9s q}"$ /\>B2mrl?2keQ j5y+ʦK6 n-숅 蟢R#ΥP}}o hbْX:ҒLg%d[Mob(s[o}>Xϵa')*淽%E vRJI <*bb 6)\=;~J_|vlND E54mŠаn] bV[a hH$X^6(A2FD҈@ |B҂`<@|aA&A Tȼ,@ETdkWw`c{'*{_:MֶtðvJcy#3L CSOy"dǐPqmj3͜9*ю"ck޻k^ru\9o\o[^4ڔ(SU€xPN ._`/I@᝸4 Ù:E,IX~U{ !^m·ZL1v)X;KvP)-fv @HkW\x)i6f*}XdGV C"Zi]L@WTuHbVmqAO jؖ= #:xp.)[㵓DoN(w2nXS!ߝNQRahV$̆.i^k)8u7h%MU3`~ C,F{S~rQ+a'U,E|/7a4D9-X#զŊT<;A[ךNl|A7di0Pd_Lur"&rҜN *Uyli.)7- ~w7xYAꄝi'MD81.Os{G;?\=meYS$~ -ZpEdmY6Nb bXiɪ" zѰB"IC}cX% h΢Rzİ%q+7<3I,%pF"vP6bfH]c;QDc+m0Q,[@u ][ Q=Cĝ.z/gz--%1Z| 'ѝ#`FuSYYH6bmO) WBF' Igs3wsFe"א~s26yfMU6Z"ٛyu8/'ų!t@s]PGBjřheN㴷%BNn0U?|i]Q.amO*uk ŭIxE 5~c0- ķ͌>9)mቿ bow`t,y8g 3TLw/zbw|Sh JgONqjFӭ.%/!}S,o'Cƈ)W*1C^6fBC:C%ni>6j[Z P)'>NwFe7C ͈$E- 3OL^bX?yݩ\&+ @"^mC$?F^J;0N> (f뢯WEŏ1xIPM!/Vݍ`U7}q'TM$,g->"KkG$=}E@"WeQ4>n-@2'j'` J ߓ}QјV(*A"n!ƅҁђ.ʻ> E 1 Z;,]# &aKC͘ "Sw5f1@{ϵyq:a8z5_ П08,ki $tzË{ -0QDASAkjY)UlOo1?|u0鶞<_t=!8 ;xeq*\4 =z5B(qyu?&SMӑ1#=`%MPzmYPD=9Eci7MSKШ?=x2|@~{$|=0PAົ:򟎌vɞ{7MeO!a UWJm^OCFqIXsG1}d{9X~+W9>TÙ^ƌq˂–){,#3#ȶyDh5)ihfd׬Ht0PwTq$g{Zg*Ͳ1SѩE{άYۉhB J`1d>lgP= %B"Ae4OʽꙈn:{y7L8ǹkbg0qe9ґr'ƶ39ܪx #x;$ jwIglY8 >?dKWP]+P4ZTsNe؀4|<n1 ,a_. dFM5DDgB3Iթ5['CfʒW:ďG*ԇtTGӭ3N GȝeS躁ffm8 B0@$9<$,0QP w jk;vSg$]9Hn0,Ijx#<̺ 9s&u@ [gk)fG~jSbvըK*NQEY~E- 8յQ"-gHlG%Pi@,O Uiz䩓!MVVZ9SGzz6yAT:AJƜ5y蔛7ٰ5$ƹ[PaWNe%91Ħ]ꍘFz`Ԯ+$?g\2IQWiDXBL=,-#>Nu6nC>ƲGƱ*'<'Ӵ1P)Cer#{ϧm^$S i~]@7!ꌷ2 Dul,bSjj"#->|6)x̺L~?5f ڛ_8^Tz<43nICt*Zm룣4>G ,K#m#T*sQXNRDP _s~SZFeK8;L9< p"K쥇)ױW4g؜jv QhCn"aC$ݦaw,FõH毁m^ڗ $/ԙ""$ir]g3(v>s|i Y?ΣKyJ N<+pIDu$R޲e/{XTx;u"<*/FF2T%Ncon03vޞ|&bH~Mv ^c?$ xWln @޵ɩ?yYByYZjc?I$8Y)l UB>ZݾYof8Ғƅmuk} d6= ~f8 #x >_15dv\VH&/I:L֨m_xM <բ)hyшV { ƟإP>2K:WNt-ItϮ*Wq-Zcc D3 Wxk |Hs̘,2Au1)1c-T\JFLaqʧ}j,ϫx$YOO|Ӄ\hHVѣehM"pdm(c8lrJ7cǜ6^Y4H(RdUoJ!4s!^9!RŤr1, N/43^<̹LήYvF3V7'sFGt)*:Zؠ| r㍰ ԠnK|߸_Br%Iئ%} CYPnT!ւW⫎YaGI0-̮>{>e !' =W|A[a,qFAW]mU(%1EMvP_Yk3Z$|[8GlD: $E׭`k@+рy: O^*2}}l֋dDayK.wmaحrA]!Ol%|13oP+UghBxkgɛwDxχ[}m ~Qׯ6 7Za 28±y|@8Yx3 mNEeY̵q&ξ@w!',t}6tȕN<7@r[|گpbL=Цk GY;,aI47*oT_gnyW|0+Z;}Jrpϖ&Kde唢BH>HWe;=dIY /푔),;3FZ19u o"[f^i]C xH U֞v6*.RGo'A:xEhObsH~ n.w+͊yʃNX{a:[1Dz1v`4}c )j~JM(BrDS.-e%,WR/>gs ŗ2|&b8:dY| \deT__:UPW.lD>n%&u6=}]p*7Vջ5kO5CS$H>/+xZ}Dh"ʈγrP_ɍߕwv4NzJTe.MIߟ<~'8_ן&=K`2HnUfF1>=2z|n'b =]vf$ωt>ˡ4&LAr$P+${-B,9N>ݺ ?$$rьI:,b;3Mcy`YVl0'5vy[T]kk2 ?RIQJn\ {DW 'od}zQQ)fdAkf 3!*Qw0Yd YnJL'O3FZXJn&C[!~ d;v`M{}l/pBM‚Q4f>7; @XV :ľB}s\+g꧵>ҁA 5>n\\FJx= ԊNt鬈35;0;}2RKfqebTZ>|>pׅ@_ExCM͌1yomOC/uC)6v<t?>R) 1z.ЍruV5rviX]+Ib.%2r%1(evV$T_7Q3d[K"1Q9l@1h\'Zgy_.%of^1 mEI?sQ'ZF_1(k򞢀R <۵Wˑy(D-[K/7ckA?[MN,nѸ*ʣ7TzXu0ԑ;#IJh藾tT LosfdksnhU6 HzJIDų3 %_ )f:5vϲf{J[!b?E]k44هm d\:;mYZG%[_-|BbIPzp]š5sokc\VHd%~Z'NRu7/#8+U@h6o ؔl ÛFFtY8]Nt,clt@,Ə rEO0TH]V0]-H@sŶ 1 }#ޔՠCq"^ HAvzhpAϭ<{:ɧ ۪x~K0dMh4q&AZ.ftW1{I:W b+(XQ}pՉp$,=MHMq0gh2Haǁ,k̰W"n Eh@xv8֦pP- m&wV|'cny& oR6,tf~1+KOfvg]{J1΍( ;گSDx&Ċ+@>=^"]; RpEI]%7// ۗ :[(4u(V19L0%KC/$A+Z"מCĺAy(cN 7d6vhem fF37әSЊNF+@@|ɶ M)=Ilp;]bKǕXze>?kҍ|Z"7C #͹"gT8!LlH#wꯩW)OfqQq%Sx*.:㹁⟽Qtʅ՗'yMܥa.p)5E,zdUa6.TNw}|BdИ3l X+ ɻlݕ9ckT!Q}6+ӌڹwXx{\֘ J{)ob% v8 >;׏I6:b}\B URk-6䢧K:T++l ̆JK?RۨHcoKcHpEiM-d)':_[.>^;Cv'{ _=B@^D>eB$JzMGCW P.pA-&i;)P+#(0a ]0Mr MmLDMƙ0q40y`0شݭeJ!+m_ c%,iQv/Z}_HWz?3[>{0D"QAb\m:(9o]b(uP=eWJxx /xs']w;f "3qKM:| *z7U7tny80e TM''p{) `UZ1u*uChhHoBWıK7B[N6;; )篬G6 nS(:61E)zy+q w,*h AO"g ąZ]!+;HkٖBdBE:09L9|=^y7_6|__\Z, k'%(2Fgb=8aBn}&Jk;FVJ)b rU]fzpZ-"2%!4Zrw0]ت"fKAx׸SR-#fMj͎BEA uXsax-dXcc IbQBz -( 9k[[5Qj ,_RLM3HJmBQ*έviS=нm ޢ0!.lM 4GwL*!InЏrSs^^XvMA{:ie:"9G 9p*ܶHq< RDUY?'S*jhG}h!_^oɿNaMt|f ǵѣ0S$6,vֹ <ڏo|#wi"2D85$":ςR,-C+DEP@C!U73Adv>  >D.\ˆ>rlbnL-cwcqj$adR"e-x> C޵3BVoMr+al*\[~i{0W'V~a%Ȼ iH ҚBߦA*}uLnjϚr7u7nKuV)p."Iqcdt'/J'qN'qjr3 yr{#WMuŸjYUQƗ@SaA^#ӥCAVjoON´;Mk|jXh 1Cu v :yhJӋGںݮK<^fLԅ{ ?53i?72 *6?]4V4?qAO{Ar=5k XNla/=/T)Ī/n\=%+Ȉ?@Q g%Wpa#6k n(=Ākz[ȗ,F'TVg< ;zϠ 7'"OF05QK+8v| ɱoE7c"99i2m߁JfVﻹm&{U|:Bzd nZ(m;CC螑O=-pXEz<ֶ%=%>&п>6rb@̩yAP&VD5ڲ]\d۶ь4%E^]lz`'1u)w3we2v0hu#f=8F%D=KJ 2RS#^gˉY}#>TB14_Xן )F2jĜ҅,K`أ Rkh{FOeXlr*6h4060dXd\fO#1gTp3L-9 턑B2I[ +@nYkGC Ek ahg j<~k Aﲻ}v>ц#̓|wlOMˆeqr!446 1hOUksۧ~ڎ`js,5Dl@P4fUDT8DJ+ ?( dC&Fb$F ̦nF8;.yp-źTnܐNo!gIsyUgY 9̂}jt#5]$#s:lg:&(̯E9ޟ+D:Id?>&50q-} !mAuΪOU]pa¦ #,+!*k YB`3ŲL kHiX  RIz:85ЬK!6%WICrO$4) z/XU:{IA9AZFS:O$m.gsc|(}xu3XOaygC"Hl>>DEe9+~inKuEl(KF[ZxF8bYQLLIN/ R7>h&IVM.]S1Sƣxv C>O=q^_Du*UU2pPD)wXYGV@AEГȇ 6Asj3pD5OKۭ dXnW;q`o9jvmZA8h<B k |$cw1ֻXL*d4xЎ" o W@^_ fc$bH뻕@(wUGNue#=fG3*@ uUW`xT=9)ܶش#Ҏv┯=vGB6"'疻aXg2DҹQ( MCblݖ bw'42v+Umܵ /a@pAyQYΨEy??R7qȪ>qֿ[_0Pӫy@P aqH$\ eV,WUXXg% Y̆re,-n$*5GU<1Qʾk*G[uuw&(yXgnַ"憓OCAɍ_ޙB>(xxlΔ,h̐BsLOQ`=GrŎz[-rHX]}`/iɴYTz'ذj_S B*Q.qƼa!]Z|gt'p|*Ֆn2:!`^"؆-rU&5 L\ $y^Nv?g=^9/*;p1CTɀ֙EpR#?Y+8 'mcVA!ڷ`>׬ڍ1ϹHKή9VGde=.ـ Xl0PB,q`[B #XfA˷偹 ŠYA0T)cYPKQMn5s~,,ؑH;d{6u/?-Qܙ viͺLXOXGs/ /9D} Gj|4AG>1}D*Y~nT<A҈n<;m*d1C:YSb餡$w͚~O+جp8x"w $?Q!Ó@ B]r߇SWb [6dT,ە2<'Jn`i,#Hw4X-= UqPϺQod gNE6l6TF7n!rt2R+h^pPRr5yBJ3?.zaZDnQCΕdK{F3 ܯ88UF4hwK4#]<ޟڼ#7"B NBE7< X3ZӼrf ȸRWGյSLjJ'mDsB-GQ/av8X y7#::C?4M%!8r{fIBt*ePFX%O9 'b+Z{md=);QFAy{MS3AI> hEcVVTQ>ELh=("'޻}-67&₝fl& At9[ۙc'.J~ W!!I.On' ,)Oߦ0GGy ؓD]xF<*~E Go2ՠ 1,9-I".  2Ft Eǒ8%V[l$v |ެ}$qœI߸/ahU*C|^&d3~ 1/GmgA/wt|g&X3Xb4gGq~ƚN% (;,Rr|vuO/D &z6#9"`vWJ7ea?T [Qidv&_Hs}(Xz8! &30ѓJ i { LPЙ>)zCZ+59;g;X$Uoi/1DI Q'&xXγmK3=)Wf7 wL[=՗BӖGPm IP;)@aA$rQkX$ՖHj`i|YW'ʥ4GPa u;}'{8 ͓鳸 nsfݮCf tPk1s[Νy&KAЉSdō<ϣnFQZl!.Ͱ&a d^*ީ6]An[i8\{E؞f7N]%(3<]]ix:AdPX3;ux2t"kaDa:$x^ GQ֟2mgZ֭ CI[k왆JRI O!= 1-@fWekx "\!!,K;T'TV{ |) "%  /=O" ^`o%բ,z6ķmw@_ ["4P ywDZHo@f*x*CַK1Eg_F[!4;XO9֜]QG )| #^pʌAB49Q*Mg4J2~(UF_qI؟j,koiNPQ D>:hүV4 #Tf : hkl@1PWe$QރOO׏@ݡ+!nXXR_s(!ր6<'n",sh62`eIJB Dzġ/XIě>ZPٴƏ%Ct%Dg`ejDxu9)Ux_(l]IDaΘVxypU;oQI[鵍$0|ȡx7Gs F :QKL>wXCGutjhXmsX)xcCn7f$|Ō"#@g.67^Cۿ*YǺ+W/CBRd~t9MpH'`yXCWw3yzbʖfײ‚+JU:b>!k*.7%ʴ?W 5 ? Rt-+q@q׀OƴI>x RaRHF=sPj> gdzwai"2 % x9K;|0\ߚUM\,~{(=5:]íquCUs!ݦGڰOSlzL6@k]CPU«B푃 M&7v2Q06 ᇵs\VXT US<͑u/iDEh$Ɇ+p0Q$N~Y YgƸ<8hH .=rFITDjm65gRիrFPk+"WM y4 >킢 (~1_|m=pv]lS.Ye-Fvq2)8 `mlz|yݦk~1d h]͐=fa)ᐿS 1RʇsbtvtH{ځEvTpUC1f/e.iAʹw%&;"A,.]uNe쑺;gET} ~!YovJFӦ4.v>u")SF!6^B$P* ,:z泠j]g̺$e ,^V$NU$_YShwPp]:(cTZ SY"Je^HSS}!RD)|mj~j5cٌ3FRE$m+T cx0:l{ZHB!z̔fCZcgݤHbq?p-x}ABulIZx= MzDn % I uWN1Go#j;P+2"E: AQ97)ʿvVEb?N.<<5ZN3VK|L͂2Wuu˲UuÒ@H9)AhiS0+1a03fX@ExTIlE(cs-!6MS()uqܥyJR Ku^Lpd,6(;"Jnp |8*uυ!}z\䅍ښXׯJQ ܘdQCpS]F^ ոRv4;sJL {kLoV;Q>rѠ _ă:ό]LT\.23T#` {]J3p3y` B۞d\PhMb #3().x(cA"tؼɘg?df=[ kC/.Q7(قjv@b=;uKk&FOCa/6Uar^1*T` q *:]I~QqˇKY?U2pA&0Q}Q2Tఇgu8a T?ᚅb11NM.") ˥jk5\蔮Q*fy$39xaDg'{M6-RMC@G*o"REcS䨥Ni( RĐ-ĬO?m;(SʹͺR rdaw$\o}rqJCu$_vCrh hvLEs__#TPEPjW`[!d=o7~R| AzQp`'w8h>m{wLCۭH>ҡD28vt9njU%_ =ztu[aegq錴?$q鿪0.Ww!af zMsd: GZ췸<"hM`9%6'Է39*PkÔz)JLi0ǥDeV4V\6%jwY3S{1U=#b'qH}4k[q!FW;nL?&n1ϷDN]Ž|=n:A/?K}~Ȝ8k::[Koos-sWmk:Z[󏱢_$[8;H+6ݛ(?"Z5J$ SyJ 9+cal VUOX[ŗid*> Pa ,+7/}3hABm,JcV13(S]'j#lM;{Hs/td=d$Y8ĦPާRgG^"} RcE0Vs9Ȳ̍=]}+P>56.n>2d 1inY\|Soߝ,NYSkVXh J/\9Ruq| r"tQug_͜KާW%LYha`YmNivIMOMM}~F#Vآ.,؛灌g=+4x'K;E6AV.,ƨoF9pTL,Yb@d$DxR؉߻O;>ʂ5dTG:D#ڞΜZZFB i'{a@&T:iQa-[Z$cWdS"H "M/=`膌/%[ˍx5TmaK0*߱P@'&iwD`u%Ѽrp)TEU1k5VW ," 4BdP"I$e3,)6zBQF>971|wA s kIalL!gߢø+w&i#D]i\[  Gl^H? Ǡj,3o%ÉLc~$ߋ*'r˯`w+]R7@/W֠_u/*Wk{K /WbB9xWeM8X=M6"f qРkپ#m"֘x^ )(SYҭK}J5#1n4sfm_"s4u~a8,+<Ö½>>zb-%O8fft-N*:hs(*;Wkh׀o6`9[mՔEw/"/4po7%ҷ$ 1r VJˣG"bK{Ԝ u' 4=!gVch3$VY%w XijP?~bN(U`yi̋.M$Sch ek!N-b.]oj>\'ue@=8T³z& i8,i`E2ʎ廋 !6@0Io*}}ga"9V TāhiA(dB;(-J7r>`BTUC؛.l|PKPBfLF-}iP50J1nمbE,Ґ 6d'˯7KZkox=WIc0&] Qp* `PGfFLv2 iw(Br][*$QaZNik<]rm/]pXB})ٹQ7ѓy,/Ȣ3L!k*̈́A!t&.Txb7~BS*^ZC\nNXީ'JFF Ҥ%KK$zk/sfK/}9?p7ۓ3|PI鱻[ӆ#em꒹ǫ&Tr7|οֲĺ̛: =KwݱI_$5&IFU/r/3ۥ^٠#ډBPlv J7 0Q˅n-^fA<wE& H#idvlZvx*&,vyh(VlW&y߻J-U\m",8*IxgDž5!5EgyI:-eHB+xI$cH:SCKԖ([y ~>M<øXn v+8]Zǖ+ԣq OQQX@-", m"y.Tv.V1R-~@DN}v2 F{Jtw3 |S!>)!_`fK[74?$ܲ\F%`6D՝=DyqgapCP|/JB]Y%ƀ|Ha% Q%ޡ18WRW0 n?t躁?'9עa@X;g0lLIj_M+9"Tp~XW097g8.iCe׷b.V:RS>b̌M(aDfdcP8㑘Oo~l4Ҟt^4țѤq#w{G9Ǻ+:a㨚b#Eh;P/뢙dIs=6 RC ƃL~=JU}!WjXcٛOY*Ƚծ>j["Nkx;$5hh3emJb5-E]?F$EvJ LY.^@_stMX1gK @_`OU[<Dbaov^1]OgRُs~߇![r8AҜAMkd{7"%%wckWbWhI@.*[р؀Cϒ|{+XzYX1A0؏~iJeӚ9lFD9T"ÿ{rX^>iI8T._R~zlH^bs KHQ."u&&Blfv$Fϵ=s)`Q=uqt4p묞1,FBjnu=%FcG2=RLǁgYs -З?:?>F+tm4IQ YvZ@`\)bd0i2M%F 4JUҝDԪ?aԞ %N[7KKQ(\uf$c60 psq2ˇ_9O?vPl"՜VbE Af8[ΈSR2$86 bY'O<|@ГK"xe~*ܧ4ٜbD3V! wkpըGAVƒ]ݾiC<ntʯ~k3u]?G9hOiӣeP9d]yM`S [Oh}_ G!i0Y# h^.>@Øw^ )87û^0Qk+,O6^dV ߂;A˷[sQT&q1?ĦnƎJ^m ״@GφtZt`]`B$/ cqmg15spIQC/TBv +lh˯x}=6PBjy kH):oHoki2zg=qFN nV=uhw>+zS"'mvʙލhGdR`z(Pf8CǍmxS~1B][ڭ_(J8^K$|]GmݯMXd*Ba-w@ Ń+ DaE*?ڠ1(ǃfԛ֚ ,1T1QO x/ h I 'KaGDP]V{&$ӿ!`w|+&x?k/h+1xpO1(jܳyL5Ґ˄i  \F/*R{ Fʑ9j:x7hvΑXҁ ~N`Gݼ9żc_$.jrv2zD݈|27Z=ɱ/v6JȽv]KM ZǶc@Y3"e?6$hr\""n]zǙ5T{|B7+Pfɝ[d0Gțo^zqzA?fԙ&ɺ\69G0b.=("ƪ0-k,fn74ad'wYZ/ݣ6F5Vynķ>}_=Ä]/$<G'm:|sKgIΚ; I'L|̝ڄ^]*ZZ'kCte>#TI@5jS} p$b>zrKP+VC1D$<`u-v6S($ȥIѶU}eWUn1~XrpĈuy_ &BwըjWWhȓ"r >g@eSЩ3*Em_g[IY&gJ(jJj) k-2P6|Q&)Y! ⷶn)V|/YP̯xB#1};BIOxUTWNޯc=ȹ s3(kpò$&\^{@2/v-;mW]{:;5Rk!3x-s8**-R'bK|@,U  7>wE̎5gY@;TΟm艔iû[Pز OuxbʪOH}+FK+Np*ͱqsWߧV Wae'yڪԲcPqAW2&!M5C^`L04pf=DYѺǜ<4jG8uI >Qşgr_b~͇V[ YboKrqA> CO74^Ǚ`uoDw "& E68,d Ry+lS#*.GiaY8#/ P,^ACߟDQ7l(=\9xLE{&:ҏ#}A9>NU te͡+dMSX<꧋e8GrF%t$|OQgo17hp?KRafF=~|-<2|%9;nd_Xmq34㮈 X謼JqkyLB,뙡Y\E!@94j{ޑ^2hފEe"Mӹ}̗_dzJe4?_kv2{/&zNPaα̈ͻ_r)*P|e qC:{ۋo<`u[1%]y32DeĵJkY~NB'oZdDRE:yC _X8JS~EW!'^9*zl,S/=!ݾTxi b6Y8Fb#d67I)`yʷ%Hs sHfZ؁dLftwNaG$HWQ]s$PX9KQHîJ[(]Z0"LVb8C >?nj\1xw< VOّqK &]kvxWQ$383QHB7i~ŷ[R^/ S]Y)"5(XP"4/懕*G>$%uu6\) !$K^zo[d$.xQ"|fZ;vyHX`Ϭ=%lldQ%zW;k!RUcclEI?2IQ|_@h2`. 8a^B*xr>c+lwke3H ',9["ž)ڴUFYޘ`f:Po0"͛"-]Y7TÏ_˚GHj/Z ϲls^CE+ޫ9KYA eјޒg:_fZ0x؜'Y/vqڲKAX@4`>J\!U؃i (qvOf_ ?lL>2c͇GxCӉR^tO 4m $m߆aC3N3 x7ScH% nI?3?YP q_M.&Ї3SohR)wvy#9\ bkab` nn}NJl(h{f:/:q~WZhUR!J+|R{ߺ~_5ܦ370^F7~o#cn$@'F?FaBp ZXE:$BKBZ.cu&xG;ɤemg{Ӳm^B3y߃x+eJg.9T8'y߆qݩiO룫ݏWqyOI KNY=Fםs*x}@J? ag+< O}A 5 J-ƉLɡʱ>B H66ܖJ-sαq΂lu~wQW3  l ֩9Gɍ}Ũ΄5zef%Z( 'qTso~ѹ+, JWڞ'9iC#]VCx(ԾNұˠox*՝/\T+$"ra^u=PIQh$֚Q_=l@:`^\vӱ¦M. Z0#(jkӋFrDxYamwglHq15[+_喙:#J4ۻwr  P= 6x$_0 ʗdqir"-6CH}u@=c%MYAmJ6dHTBw"aY(M'|l(#Lw~6rjRYo9$]@hJ9QL}FMyny|TkXJ_% rUw\- +QPea@P$窉{[d^b`xJ ۞8)8 -iq*B>B}d&=5oŐ[ɼT:T¢@HR&'dܬe0{399_+BCP̹`I]XxE_4MV5X9ugAtVW9QEfc!y#n09u!㒩ʅG>@T@V p*{zo Em΃'B ܩjmv4"/tiz/|JOw=(O\ũr_R[tSXv  ~FQjSBU2>mX #_BQ5{ [F ̊Eli]!*8l\d?߯Il;4E-]AF)oc(V,Wcx5QjvrR. XD+-=ͭEi)fǗ狫:!,} u+KV|>wmSOhHx{^{J!GY2LJ3T1KC?vjDž<*1?p1 !̀;1G{!giMw#1=pMc{1ZԯzcUo'~5TYl"+ߗ|m[VM`¡[Д#9)Xx1 b D͕s76J_͒ EX!uίco27L>˓DgV (vgW_?t<Ƃǒ|fS^m"8{c9 qҩ`{NJq=m޲+}&'.f'NMc|SibĠi̖:]U]󤥯?﷪!JqwXѡJޑ;s%W~uo-041r{jA‰q'L!#Vg+lqdD4 Ͷ2/Z*Ooj7?tNIU[C8{Vm_Lȷ05Uʘۺ\Θtrף~q&Pu^`rBFVȉۈ,Rjl3_ׇe%`qR/ w,#+9^pdAbb999!I"ڍ7w(zRT>mJW ? c@btXcA`[tf:M԰TvQNj2sRBI=` V s8>"S|lj,q*&+V򺋺wo:2im/̧vI҇"98s`=2w(g:MҼZl,/qIäNeɊtYƂJcNʍ[ux)%c;;8I7c+sCmb"5o!$xncDI.^j,U-V73d}ljqvyG~4AŻe2)q(V%zkGlE_ޔ+#p_^Dk։ /s+(VFCE/N'-Y:ل8H,WcᴑlփlzQܭ1w qb, . fV}tcԂ濾J;=cCSȑol_9g8 A,HLov#xamٱ\]of'4AݣʣdƯ1زӮZI(be՗I%93;2GAkD3I]-~)<" qc;)UoC"̽P RASAYa @:4[~D69 v,bz" ۚg`&zއ u YPbOrGLֿ i?-axm1?tFRBr-8bAr\|'\ś'ڔk-7W#z;LP9y8Ѱ#{Q} 7řP[n֞%7#lg͂cSNMWUhk R$LůlScc?3`*O&B6;%c >NcؕQ~^bje]d*eh{DƹZ8N<펃 D]cȠ}6<ܟ:a<:jmUzKiߒk3 ~Yj6.ePP]ai X 0p\05SLp&Z lL{fg}`~7L($pCЮ9 a T:o0nwEzBeKx'Bej: A V oFb~(T4NM[sr`#M[V̩+;{ےVhydMEC޿dŘor bxF >^E؊[˨he!-Rf.m]'A)~ooYHi~+5Rt0SqA{΃%ƅN5f%EtFH|k; Z0d>7.u$& N[,;QL@ u[ׅ2ǩ%s.@/JJKrZ_Ṣ9<)! P2У:d=@dXu]-`^-Hmڟ2U%l{"xd`EpsN\x+fI/wGsQkn)OݼyʿA`13Oh Z1 &#ԖRv,VEKubo?=X榿$dTZޟӁA ?I/QODd}(eznʙ?+H6pFiPk)A Z? [G>{,W\nr4u+hC=k,&zAL W(lF;!Jl?Чk#Nʀ )̇̆Sd๵˜盏N`{(_GJD4ATdF(\ ҽWIi喳 @ h q1W̊rS#A.AuM?,p7.Ef{vzԀ_:! >^H @4GaJUI%Y*Wrj6 AzM%V2!"K*;葚œF:3V;*XuÁ='/u:9A޹chii=F~ڠQ2;.94χsˌڰ 4~|wW!³RUXK$2Rh03y`FoEot;R*83m^]){_dDWgt1dRufR4ku9  Z %X R~XfQ#Bz疝OϘ NLZAhDR(sr6LԳW۩|ö({t4%z7z˿s^&tC%=˻3n9;yS惩mw9[4IZoN !7J"\s(=_=;jn9_s &WJT-񉢫df8D&(ξukk=^ŧQD3=t7/Eah W帐@iY%4iIY)H^S;@ 7zn>Nq~=uJx<UҮ>*8-ᐲ,V/-;GgF"{n?Kv, nmc! X9(N5: Sxz/VF,;"OJ!4KWԌ.h%W _gX3220˛k^wvXz,k wAz^{Us`NJEMHϸS9ۺvrش+OVv/w-ǚ?[v7V VBs&}Tj߇+Q㛴0/I3;rOX8j#R~ǫ)4c=И'#کFLt65@cn*M!&i]; S$rٖhNU;TMlG&wm@*,7p,->NIQx{tq\ze~*Z%P L*\;]Hj07.1 FO:] 2_F+i娅P[uɌ mŐ#@xOdϵuM<$' 6o^IPfϮ=AB%cǕ#fiM,SzIJy^Ce%COa&`'Kȇ>;ٔtu{W Xkw?.Yh5 ڏ%B;}T\IBy`5>z 9f^G$̤^0?SI: TvcʪʴڙrQMd-[I#*=Qy1wCٱ,S|59Qi`~tTkArټ pq_ŗGҜQGOB"ci9.K05Eyd{wݒdp> E٭ %GwY|(pK5`Rt21qjqWO- < i4C&lOaR0];8594%A6Br\=}^CN O ~#_T(dp)r0vj9>]EbIa Eߖ5Sn8=LSͲ aI$)].c|Q@ue\֊ w3?v~>jﴁƋ-l114v8~oZxf.tR@@|.i2+??d}. p:^4MiؠFt[4i+@>hX+eBq/! !p2i9^ۄ9 P @ެ0mE`žiƊJzJU&eHbkN~ CW@t6Raaݺi !/c յMeeU<5e]Xp9z|7 |i?Jl/9U1%qst, ZW_t?rl4UJ;G1iRsj_jO<^2uꈾ-35&|*eEw dhi_6g3Jy.M高3ϘrU}>x'4{_ Iҟ񫍮c(az7hY>4f9K[s5}e/Z#%_nRlx UWjRi/f AjU}IBɓ()ĞK8kK.UxwˋZ C$qg6&W;>+~+n,Y~3~]_Akjo@i+8g{%bP| @qg`QP+_#_Nіb9d0*>-ȋq\wȱ s*&23MPU " CwG% D> V.GؐpJGU:\{$é2Ÿ)WqPE>d$ȷ;ZFU 6<ٙZPJΨ#ls-^N9c4v0jV8sH8u1 ~f2OKwŠu? 2 U&*vMX^12Ag oZ٣F~QĒ+sL?mDh,K,¸݌>yYlpiStmZ5.FwW{8q]Vx9& X_zZv###;'xd 5ypGI؞v':僀1YľK3-NAf7]~f>ivf%FtmFi~i?Ǖ6xx$Dsh/h@Dۅ譔@t6\7!YE= ET5c?u,[ |T~3et`a0%z;:^_kYcZV/,w3 &M`G{a^3s }-Acī137D&DYO BS#!*d&1<|ZNIeLq-xxYcSM;\GMl+R ^1k' _;neOs:SH$架m##UObnPҮiJ1T4Pj"ˆHb<١hXH0w[B>}7[ht2!U;h}Wcȷ6;zTgÁ/+省ۑ咮ɼhȘ@7>}Ìp8nl)3ު0aP5Y F#LWE@4,0.88-]薧( ;:g^ EKM%<%=Y1"ܜlXZcGHp?n5raz *a1b;#:yLQC2 ~KwRx]=(M%3A\/MaaCAPJybCjP%kxݢ)jBu?=N,XThm$E3!.E&1QaF_Ls (!&1 guךYUڭXUUk ɘT 7V 4qIA9Q8<ʱ7{/=Ft`lB,"i;F|]M87R¹4 =7iăۅCOds}V2W9] "-To`gO, ϳ⁎W^ܩ!`؄>j7DUhTzՄڦ/SqD=\}tF]_ mWoHtkoHC5ea\1 2ϟ(Hub (X,GC'XsQFHµ.:WYØ>UcÊ `6[BNml)ؚp@XkG 4O7^VŤAQk}5 ܴʲR籐[9ITH p]K9y?iL \?R';n <$|ev)]_7M`򚙶T4ucۑ1k}~A,"y f4_+*.S}qXcKCOB] "Fˀ8@pcџ!SXy>9\WŝunĹC<W򒑜/a䶕P& @U?0Im0Xh@2>B|}3#J I#v9Eôxw3jtyp4SIfIv ~l2߲/ɌGCYvUG.jE[w /VoSXO/rrmF*MIm˒/;b}/e#˹4Y!8a209I:z/ҰXvΪX(@wݞU;%N(Cs_F*D"J|r(~!e; HU\3_G-O{]3D\7 Zƴ{J28+s=V f*xޔU:ĨBS>]hDžV;{f$J  L[Y[}1G[,$b{XNn>eGc bn'Y#|p]@n iwtWтg?7Kp*8Ҥz:g}5bQ bn]MyI.6zL> x@^2Sfֵ^&cYT )WXvj2M³ 4ȍ%DO)YO9 $jr SLT$VvE,di hdyO}0ydCSs̮t[+tiH;y![ Ko.`d ?\}Hx]ui"V/>fSdZ 7ͳ/Ui2b4 o*` )I12?LC&oI5k. 9 u/<:T@ 97RZTMu4rW\CQb,2.?~IWAU!wz%_n2S\EZ+6"x2S4^n>Аsr?JN^ZSv~ʃ@#[jm*>qj7:酻'Fɉj,ce7#R&̚clZeo/ L0/ sr-jX5TkTVͣ1V$bTܡDm-r{K%0|? $Ge2aAﶽ;lꨤ0(t xiAinE.QSWi_MH[P +>]Ig&=h41b~ "thVS[Pg6YCRLswn“ZVc6b/]ɡ'&+ȓk5ćDJ'C41Gn 70O t֢.az/M"y?.(Ĩ~ /,yn|d䩚Pޟ#e) 3CQKdIPA#-'u%{OB 4/cmSpkͣ)+bB9Zj0$ Ђe` +~$LT5@;I =!iUqzbpwI}uo PVzNҿTC("(C{ڴ=/c|ߏtIfYGPX+. HH>Y\4g˄O 5U@pPljÒ@Q2x\ @yQg͝uapSLF_MFP7TxĵT8s+LVU#JNGC{䶞lEI':C7&GW=믖N…߃l™$ie#>BՐ'-8fCh s<E؆_}g<=|(iC7hG\CݪN Z ԫ{2nʩqPmuNYsdy>ٽNH|bAyMp/L#Tcz|~3Ex31iv?c'oGI! zlG}X\ ֊?֛ +֒YF40yԠP>a?6gN¢5w!*حӃJvvE U(u ZN{aLL V[ur=?qOHy0/Chw ' h5m3 iY~뻠  ē"VYą8e!_󹒩 ҅F#k+n2k wGr"'&ޜ߄6Xrpwg3D'b6F@@>(ޤv@֤jی>^#j{4\ M `xq4 mQTM'$|ܓ>3W 'kg@ʋAcy㊨63|c93~ +]k 8e[??Vԫ 4@i|IH7dVzԤz=sDG؀#8 $X"9ՒkuIN,ׯ,@~ްP][(:¾}RTā2Ќ eQZiU?7I`{M/ON{:ӫu0Vo@0QָmYߘ|iC?cx> ݽ8xR_RFN}hSU +n6[=CԺ_9t΋eTlxn4jT oD +T|mɒHN?cS3m,)Lۑ\b+zegHD*.kCK] u|@J9~wFP4˕N3Hp I?xV| O '@(?2<<ԗxRvtU O9iN܂th`Dچ>j!<jnhBۨ* [dN03|jlpɢ ]zva'X9M̈JvU9 $7[0[2kc06<¢'k5+V$Z9 .StbWQ\z83|ݲq^CT"ŧ˱`^Q?KU O1&5G6xMs8ǔikn@6!`0 EgG4,#2X**^D@=Wp)y2--/ y}Z|7!߯E q\ƭM]úk(噤3⑤leG\*u$ܝW)Wyf0]cx3ۍ\(Q?yU-68)_dm{«0dJκ>M Lָq@_eV%FlOr{'悗6Mf6ߊқd.Ow[z6OvD>v:Q-Fo_--9ӺBQz^jzubuXǛ׃蘾djcHXVy:G(NjU\*{8]:u\/Zz87mg6{%Tѥ!C{3II.5,6- Ƌp8=J6`=aaEb+_O86f;pGsRhleAqˈb u 4:ÁSJBjm kI%'3-u b7F43>D՘ڤoO 2_G#*Ŏ!D~Z`a=-٨TPdNa~(5z.j9 brH_EB̒+PI;y!eY8wc%'.\dcQf}\>b 4ͥKFO;ӦRH (ak?[ <""ھw$3vX =5]GىxމԢ}1qc6aZ-`\R7 q?{5_]ބPOጊ4ݶ#ɦҋjhժwZL[XexU)"u^j/`ۀ kĊSk*d.QXBjJpwW# Hq],]#AgRV Zy7CM"; Mqc8Iг9]o_Uj\[jɌk:EčuD!/|~J6 gķn$m3Ɂ7FDcF-Sn4)xEŐ暽"tai+ dr8ؐ5&7j5g唦h. 5jG3:&#SHg{~|)Rg]@nO'M5<32?EY][S9ϯNQ2qf"%nM2!~xƵ/N46|l#-cpI G{jFC?T J\Pװ@nn1tUyV%0 SO9GLvt&2ա*b8R\&C)"43F&3g3*ziIn|VuWZRr_YqK?n'>l7XW%H{qjS]{c%k :;8kf̽kkCOUX"4w/v7 O2pV`hW 2㏪f1C=Bri4ywNl &] HOܻ( T.ޏ rrDYl }CPKasZS1ϼqA<H(OEͦeJ@@G?q/ ъ-76 ~qs<#W)9MEQJv悥bb$mڲe[#NŽ7Hl[o[!ݜ3f=JDgsvmQ"Xjbg qz.gqpk`FP sb:W qc ؠORm4o>7}ۆr ˿Ӝ&X,u@ @Z Y"] DaO[~ gBcZtG: IWq)|ު"]j^"jIYd!?A-ƅEu9_ՇOe#CP"t1:]&J 6u5 nL/ԉbh LU]&մRW"lmw:;$*k Mq@'dW(`0j* eP^.ޮIG*Bfm{Nlf#-h4٪= F,޴`vjӌx{fv,T1ozq0cew%C;Vm/!#b,+Cv}9EW5p#D ʁGPzGzFQl4bGrDNQt&v+iuw%Dጾ!p٩ZdYl1Sǘ%mSFf<~E8ZG&.r/Fr?kID:uߢC!1 ]|wSNoKDM}sx _ft^ݩ[E)vdŒِJ3O&] Ty<>B`+HZfW}a<(6kVj<&Ka{*itaV zƫXucK<Ō}S 6\1ž#çU^N\D7JQ"i48{]YN\6o߶ c[U42 RVVKVZ!yClpzR3AxFy0!2Uf/Q}TWa2$`nC7مKeto M>\euA2k+YWe*HiZU0PDH9٦O SFA]p5 dvpxZx`Mrϖ @v& pU1`!5ȱZwjss @?x[g|`K $%p$"{~4()mBf{nwLG;';S*$">F.R`SF4lCx@ϺCۡu vR7{*tO.rJa8W3$r}P:K 'rFTEθPMfen Os,+X+mjO95cRJI`.VdK|P 741f5" j!j)k[^ԟasഓ!(:eMҚA[A]$ʒZWěTƷ|?vi y ٘rX6O2 XXI1`G"T>`&B=^UЙCN}N1o-Ź_#(6z|iVu&<_{HcľovόG!o&S<$t18 ~ 赨z8HUn>av}tAsRd):y0C0ᐶo'9!RK?j*ҿ!T]l+V9p=H'=:3ޖ :XJy^ m{pJ1A\LM %|GDK%_K? 0q*Ъ@͢pҵ>ڭ7#M&$9 ,+|-{RɷFJ\† ;3AtdiƻxSQXGUM_OC&`2Vϣ\3A''ʼBȹWωb@(s ?pvߴM"cqEH[J̬*G> 2N^;/ˎ#^Ht{Lm|am4d}YB ~=3.٢Q5} EI5!Lh\o#s6ntyb9Vpp#GZhf̸$b.pð%ʦ,Rc^(#QRi:kco MrjwNhO({:PxV"nb_(;970_nc :-gF k;T'Q,?:GƂ/ܼ0uw"(]wYɍG5LgfTG^9%믡Ɵ,IZ5V\B:ڢI܋u$.O)%i/ˣob9QXY;Go[%s`ZlM[w<XI'H৯A?bgsqW0q,)KL)'4Ƹ@{#› G}DT7J4pQt~RZ8=V;o>7pd^It}#E4gtqpw%_ c&kLsJ-nK拓z|WH.3>ȁ"Un}&L=1+[ |S}Յ`8,zFJ5 S,F;V۷@LV#|*YD ј%8 i- uZUQ9EiR}AdV~jtfjR Q#|kK W3 9 霶g%^Œ!4ILoeILVţ-?qs{dv16+[׏A&\j('l!N?޹PN3DOy e(i-wF y{ʾ("[H%Ӹ.>Y? &kgGVk< 4t9V<ʬn{VkN-֊Xȫ?-E6e$f:sڲBF/V*wjO@ºQH˱VXtӫUb }s% }ƒwtLw:u'.Yzw(Y;lʄ%!C6Dž …TX'dk{5eW2K_5ΌM70% (c"`'% P,K7oJr&Ƽ$ɞsԜ&ss#_h>!b"\V>YZh!LL_'/J6/ {'/E{{? Ve]hg:l;C|;H:sdJFhN:SjV9$.ʎ:Dp朣Ex8HCbfG< pD]ڊؚ`g~ sx)3t2$&`} +7v촣em7rw V 3fdq3*f(+&8gz2&:,gqb9KeC=LCfn#P;v%͂CL֯q*9d9= Tll]D[ e:4}w7T"0Ά?l%kl=w8Toj|W)Y "wi>dE‹×gHI@XC5xW)WjWvhU5_0І/> 7p{wr<(PX,MT\]vfbX|,쁐}""2<Ӏ9s*q^WV3 W 3岇8"!z3~dB/DK?Z.3rn&ڜc1ϽT:v&hp(wQ딴$ϥy@{SmC\eCM9B n:}X17u%)JA=PAuK %qE [@QM'rU\w>: *dܾgl qm/E"^wQͳߣ yբ[z}fy^ ܦx(mjv+CO^\!} 3̼.#q{b=SM ]s*1 0K66l¸j]K2?BZu\r_C_E,<{.213j* 7bB֒~jfÔ& 7S ˇZ!{$-}f{]WlSC؁q9>0./t[Q{:{P$5(/T= zDT>lb2QJ>kܞ8M]̛k) tܞxI,#ܶ59s\4!3|o=x#~] ]΂Q2h5@ / tkW-.lZ:Cq۟: uQIb%ue7 z?Q{bv =Ә~c{Oi4zΡ5z$be/iHQXBZ'XןǠ`a!:Lbl\c·y8 +ԏT2ޚR֛B9h_'OLaG'\[J;VC^ &+C<A!CV`L/j R,`/'\٩/F}# {+h΃EY?@kZzHX}ml'qks-۝rX|m ;k =_q׍y`[MI/ #KPi #فʛf-s5PdKI,2lٳUo2c7hQ[&76&a瓂U*j2KXƴ=xrUquW=q״ܭ%c>vk+T /9 0!qZj;$Xowld!ڼ?eE0ӬBܻ tWXWġ_jL9YJ}Ɣu0air6Q,fAG%7<]|,+Fܼ)"tTz8ƪoT_{:^0}:lÀg:zRBgAF#4B qP~&mOP.6RWXށ˾*t,˃F=hK\9**?\Yf,z մ) Қo ⾯ڴ 9jX܁]y).\lr4w.rm>*ˢ}*@aV˦IR-CƁs+8kJ2g'v9)}sw iUzp s4"'"L _UZ~+S7(W%,i7yN `\CmHcEB6#hnEϓ_s\dnUj,<ުe:Ʌ 7sD6Ȗ ?kO0%! mv]>gha|n4:+*l6)OzWM4&49 D#0)s /./Qݶ9vS l@\r͔#sj\A">)ku0?ȴ.sM:K/9\yݿs< lkkzxgs6UCҮGl yۉo&/nAR1C)#marpzJ֫D #~YMCgZH GSSBa6iUz+?N`w+W8\RF٢/4C(z|('/v#ZU58[0iJڛ8qAXEۙëhק'¨1OԧL&Br6B]cUgh C҆e:֚98fk>rLE/lr1&i'*o,$0RC %RS $bs,WP*˜^KѷZYǜ)'Ϟ;.䈐yj!9IW! ;Z_=wV_{ʫS󃧥7/b@f j1vYS?Uű_`bC#bLD#1zt O+:}CK9:𭁝9`{O7OhV-#wtT` z=|f?C-<~9t_J_|J2cyNB[Şa/hQ6]Y.W"5q"˰`wX6PN8n pqRq=I~E)HK&F+}05yTğ?@ W|`L]8J緽yXъi?ԝ cE;vxl8S/Y Z*J-\(^ܳ͝iGv9ݧEQMlF!۟}1F+aptW_h?EƅsWf Og<oJ9h2;B.qȉZj0C΂܂Vrr:+fg>npX; z0B7+Pzh{jΖJ1_kA#${>Q?%Y  dWBBZHp.\IPn]VylUu43H&T88ot-YfRN+Նi V\7\U+{LW,{dѽiST7yDtKx,||1βI=?tO76OO K8;Z*:QQE'H嚋p!t |5 C¿Ϊ%v:Nlmlli"{s,"q}`isʼn{/hҲ|sgw*W%dϽ5&Wݙo}(5%h \0^HvU%s˝^Pʠ$>|T)7X'ƨܕ&[_o#>_]O!W!3\[n`"%4gj3fwڎX:GȐ,.b3kbM[r{5p-霎(lj˘rݼRC$_(KqL*9TcDXeדTțKe!G`0&pvre QpP! KF6f%ݸ+ng<`ǛXMAFEAJ`:Չ̀w;L=q#0;wG(h>ك~}inKy٬)80j3ǂ:W7 pj X_r%z]L?oCEt\3 ̡v,cو" Gk1^֨ 112O<3A_XN(w C1sa|^!e]U'U$=QiXBjUL]6t_Ƕw'ԡ_o%40W޲DᥩiI}$ACXuHn#01LmӠzS_Vr1T ťKVdN+re)Ho p 7l;HI#la|0>(4o-%5 U)q<# 9lKVt<|^ӵfwoч2)~B8 3lI-]Zᨯoc 1XO{\"u6`/j0 "s5=A(vhevIr F%-oD{-sšJ: #+n?H;(t;q:gĦ5O9F6BA F"Cj" zwU(ڑe^WM;Q\H3H*)+Mp+k% ()<l,<$tY,YDR~Ϋ[ܬ54o TB~nHxF!ٳ\Sd+t!2?t,͍8ǡ{v0Atؤf:bu$j*&^ }6~g`!`fpxiI|<§m}qBhE7l==1fEcY#0)ՙE$wȰ diDZ.BDO(2#! |ڣ5}ðĄS A!KuѕOA*|% ?y j֟U'az*KCL*`%iM_ 8h =a>#LRy:yM淘KGf}`[dvW猰*q$pcX)= 1{ s6e:?QM/}k5~pIv]mdutQ/ #0_8g!Np?z>$ʷKB{It+s['Eh.O/\SlޠBs?0R}@Mx bͶKQ,w SJp7-n-5䗵A~vaǯ_%}9zN)H'PWbt<{S2)\e>) R[-xڔ`{LY,lTSyZ4#ED-ogPNis*ؐ~G03>`S7jf̬xnWv26wU ~َw=U[HDgqhUBX/(o{qN 7jCcMz*?{obZls+a8o''W}!yO̼~s~d% u ys ٛ$ V78ɞ/>&FM?ƺ˺I>207U郧J 6e'x6hw!ͻ=1+pv,InW] X6(Refjwf_krֺ cBF@%]HlQEPR-KJ@IaBejLRo GQ%]E5tng]ٛeIϕo!e4%5ԶZFS: 0W)r`8~o)*}||WAY֌3y(TE#g*YQV/ă}~x8#VN_XP頦ψ*:b\XJSIvy$7`f' Y,!K3i1&b%x蒆 ^P8F9!<*ΩMehPTR4Vb֎ղtpw@,[i~/#Mha1A:UYzD7:[5:!aXOz4ʝG  Q,(}ʧh߈8,8%xtHۯJLc^|߶&~3NjVʩaG9ͣh> 7PS5x[0"֒}JCo]}qo Dr E֕^BRN }9Z0~[W"3$k&HEMwICpB321X.DWӋ"[M8W HKf Rqyt05U/ǝˢooTI{i&iTQ8q_?ڒR#m*.0]*8]cZZn:^̸޲mXk"$с/jo.f]Ѹ#L,ʢ(E{]JSL?TOLIxFqSs60E:o(ԦByyGGC?Zq=2(051s4AjyoUGY~%>wM}2ρkݓx@~M RyN$֒(@{X"^\=e7D (M)V'[1<-.+s&hݖ敬$17S`fۑyiu``}eG914}K^4n޸]C dO+$"Kۖa9>™5jR-"1OVm a-5P/{%WF*OpN؀.[9(7=7u$w'Ѳ5?6x"ߧmcτ<`Z3q7%y5B9+[>د`\="5eih*n\x\ȋt2iʤ&bZ~T#SGAe!4fz_9y.Gl M0K? $E)ԍ#𰇸 bc~ŔYӪ4V7$_I`JLėIܫgNM1\a9o!}_д 1Ir_퍏6EAٿM3f|B86,_*]f43h[{FMŕY?"#9*}0ͧs;12 roGK=QӇru5?YIi%3leYj7 )0]-V||V㓓823_9 WM#&35a܅d|?7,’_:XY,ʠuR5;AT뒩`'<z|Y'O[/'`Y~ (DKݸϚ#W)/i{L kbwrV\P{/1_gN!!ӺsriNJP~B> cj7{ͽ3mS r2-zdzDHhnv?B#,$f͊A8(QUgPj6|1y4>Tu'kqhwsEA@ -%]G%ڥ4 "md~Ǯ[X'p̅2;1?I2J0)U5w{KDP:7@_ZxrJ٭³ ֎5؊h=܉${j=D}{&98ł'i`;t?9(kχB'g̀ 7Af沤<mh>[tiGb'm7Os)@lk:B31;jH7s?ܨG19E{+N.|6';{>:# niIZ2;}&9wEO9Q,ܸFG#J U^>C 61>X ?l*&*=W&agcc^gťxIJ%}뀺oCf>Uiq.`V`9ɰN@gz~ʍG Rb26R{ElnN@s/MNҹFXrbVC"~Kb1z$yh {񇿃$uw]7ݖ0w8@GID6nv`UzFăFD7jT8 䗇ݥ!7r}vm~/B"E%ƶszˎțQ @ o_NP$o<~2O4HlY̖# S*Xwb _}X,X|s>_aݨ> Y. GryՎ $1mY|-"wqB٣姳C@/kWq_. AÛO좮nS_bĹEr ;@y!"s@R1 ,a%zl\ʬ;>UNp=7d%1fb@ȶLy^ 6)/2_/\_Ǻ\ND٫I:)_uFZndތ^e|d`):?ֻ`!3}2>Yz lZ*kIoL޹fF:c'~1CWE02xܷRo&JPwmQP[qioIC@QCgqڔmgFJC{~s=߄a[bz6|C*ngv+:!uݘo"ۏRAL6vqc@c 1^ 13  d-vrS=!"ɥyÕeXz@sGA:1 c,#gVM-y{H3*3:hk!vh4tĹ+YV|LǸfo,:q =Qp(\L,=Kg{'𳒷~̘hG[ Y\.(IE[Ez)5b<ч c+CeIyR?a,E#odD=f2SȲ; [6_o,aQ)^)i ТvK!7n?8fv\0~ [xE[p4 饶Is7lL@{h/e⁽.&On~A#aN'"qzB@w Jzqۤ"@-ל8c|3Hs69j}rٿBfpxM27^qSF8aX6d LUs_W!ɱc="_ˤ{(n&)^bhI肄~Q;f#e>4#5=ق#W(Q΋inyw \ Wc%7QO %3.`B_t1Mղ-e-VQ [x@xGkjbY JJ\a]+GMF6e5փiEj) o_uUM Iyz39/%Jfή?B\¹Yy`z+= <} 1s{B l+UocCzvY ,T4e8X7e 'x{qQnaK^tkW8@'hxnP[|jۂ)GwLpC4P:@,ܔb|^bpDS<3< ΋t?XljtyQi6qT)!?Cd1&P1&(N,/ H$r үP G=yrsVe}#uJ=4"}2L$'Ue30'CsyZ8m^j55ԫ\lA7:'hlpI6LcyeD)Io]BAX9?T~(KzJXȽP2wt1ҪszqloWb#fe%5a4yAd5[fOOH!檗G? 4_ja;ÄP?rMX/sԲ?L uѳZ1RaA gcm{P>J4CpȉѰm4p9";_Ζkα,}Ӕ1 v@jHg9W-ts o7xen;er".Hs\9Iw |V \3n>.wqqWllQ cjo[c?vDUC_#hߓ%tXXԃtX /"oݷw陯oohP]#a"q r j9A)&}ǔ%ʶ~2oп#smSR<M1ڢ٪b%Q)3q@ukO# u { С4H=[%t݃V>tЧ+>C6 R hSFom`= R"ڍ.2[wR+Ұ"_G#0JtZXo{IwtÞiG״KVlWp rY;O8-G=xdWbLy|R"S㮄bI*R/G:[xB$j!͕:ʈ%z7oԙps~>"No@,9CPjd4* n}z̬ȞmF#Ν_~7wbbu5h*A͜w&(# 'yJv9]~L99*9{B;3)hП,8[04QlkA#=f_e׬S3ZV\X;!6D-%>b G\KYn`q=:B\X0( V*L>VwfE4Ȩ#tv37_~Plk^T'@tQmFadf6=r|x//rm]j2U}טt;:1…1X gqWT)d`r+9шOce!JJ5%., ޛ?ÍܘҤ`eYtv.Ȗ yQ$.w4)9ie%`V;wn?kBNrڷX6ִIF :-n"%e[ioF)@%Tic uO4}ɶ'[UCfft#6A~A1(ʷpzB I:2rN2$Z3U0 gʌtg;+m5P(֍& -kׁ2oX6kZTM=Tao!KgEN3k$IT]ӳr5 zt![N)F/ߖDiKj 'e"GoYwfW'ujՊr{!,6?űRP;nDU(h(?G>g{:ZCi5k] deX`Cg`,eB E'a@* mS"@t=K<:B a4+zI٧R?tϿ&0=l6P , E'' fyq1af()ti@a'/ۉƠ2$cf2rfR_-=PMŶ&CZ"PO?oܮ  /f_reZ xLz>Ow/tɹa{ꄚzRy]>l2Oۏ1LhVz9b@hT}2wA ǷR)/ ZFSW.bXgΣ&?[Ml;gf IP%t6J*WGM+,:J7/jD>٫'gXGª؋ + 񩑪yN'V#=.[zR\qc.MIn6 GB-%/1Yr㠅>A/FԱ6Ȏv DÞ?!ad6s[/d3ؾ v"fY\Hgm7S AOz8kFE&b>Ğ3@ڵ^OVk@_$Xfe9/_Jm3?mT)*ꮛ4gn?O{;9sF.>ZItKhRNg`!C ׈v@X)GBA[Jk`n b kAGN)Z 9U 4iHA}>^IY ah+fNyP2W"琶HM  O[^F 8.ٺ-͵c(S`R煠v=G~-$JSK|^WިeoS,0_rpCQb0?/_D4Uh eLE~yfMn@NxclMZ9$:fPE#oKaWSQ.6$nl<@TaLTDl[!UpKpFtiZ$GpV2uznjʠ,w$Š j +~Tx&xK¹Lv!PvR(f͔p&zC4 WK/DZf괺k`R 2[C&0\ .{Wm!' Ry-DPB,+Dv.ԫ \MIQ";z۾.L _ʹJwP゜3V!APȾwU'c0=T??1F `<5q@K&#,3$-Td3RK5fƪG1ם MY;zk(̂ CWSUHa&@5U+OۯHq\jjgj;>`EʳQ3jѶi+vlQrbFfYq|q-ACNU&H0N֢?tΐD(@(#yw6j[C 3`^` *z[^ibУMohȰL)WhC]e)l~֎!D2މ _Wu5kB!vmk[.R2Ն2-+܌ᕏ̐jچX(/To$Rʌ,ʊA7S&SsyM'=r^IE"ZJ]:r>]OKs޸U=a+Ϋ< oYUĖN@CwB%x=tf\n0g$5s)h#^z%{4w)s:[PcS taj?ܽh m No1K+ z6fe=ǜ.܁mC5UZMcDƴF)wa8_h4>w+Zȥ_4N?4>\ -xڪU=MMD'bA]I]WGz.}7 ;WGN6G/15Q2XᵛN 9c@9\ *]EGL NO#;shMvQ=• ]J>^3˕l7[><#_ _u/514f/ōpD!fj8w%it},D?D֔rN\bC3FjD!IZ @[Gl@c55`tgeνDg8$'; ^|9w$;'Gspa=w Ԓ%٢b,}.x&xq{YZH۫DSA4Xc[rdBquV7Ħ8¨,dTz[OX܁@KE?1 jo!Ix0ڕsUǤcic$`S*[@IKe, k8^]!AG!:'tw3җ!ɗ`NwNP-ʗ OAp=B'>9_)^ \i H7K$J ,,C/_^_!X BP)0F7}'/qب&QVZmdx Q>CCbH\#E[C-a0SbV(Ф7Z*HqfrR%NP*K|*{&i1Jp/BG+$Gfsq& J2hP=i9BQ;6wHnYK͵ S/c9l _`{m&zU:VsD珐:4Deev~(K VNO|MI B A-augr֝uym .F}c4I?-mb+c/laIo++E",Z}e˟%i-9xD%`}@"0;9hh+S7<0 ~Xڼ:uP Lk99Oр'9%/rQ(RHa۩ bx"0i} haO2 mDiV&`Ѧ9x6rcW 665.5gސMI1䂸~[#eG_s)5uhZ^L<͛H,dZ!`ׄArf7*i&]j] PIR** x(Spf[R6Ө|} "SI{I vW!9R0x:$7 Qퟦ%c}h4b}I ү Q-g gXH3]N/,[mp7Jrj,svB])j@?P{WD,lPjпzqsR侷`ܵ$ F4Wnǣˎn|&~׉cQyF|$|0⻄`өCjo~unIō& fA31M2lV~QŽJ zGG>0X*",Tc)[`dKCBevO(ߙU;dKgb"[xoL4CITqV=Al]˳\W[,N}:7$Q.tʮ~Dy.$ ˬC46yȟx)衎2Wj:r |ڿ,cVJW0%1wF0*v\DA/oY/YMƱ 'PmL7V%7K*.bDq[|Є8'c]vXhwM,veznC}jR~flml@ _ro1A y6Q@l[S,3[vjG1˟eJ,ǃ@p }s䛶C%5Qg~Jm_J9 ]/icq]4>7?f~_q{p1C :!d| <ʴeT׾Og$+y4Dj9` *S/q-{cjżK(8|7ۜmnx;LҋAN?*i/Lry& ˍɇ8t7owR!3&vgi-2*<+;갗v%Ky:JMotڊu. =84_-1b -LnK<0 ,ҋ_#;wG^ocI"}QǧECC@Ou ͂քĭ0ުۘ3M/z80}}J k# r a FP۵.@O pX<~C|ʀ:\G%?o4堄;PcOWMUִBCV@\`I>B#vc;ͅnm:tX}M?b@JqHl)ՉB6eʷddEa~@3BQ>dyĎ]TĊsV;v?k֠W8{tZasAz79Ze:f`E3iOegc:( b:4Elo (ԟD,O$,rɩ*AWRcb !x&o#,-5'SDJeH#wؔd 'G޳pԏј  m/%B=߇%0- um LbϢ{Tp3-u؜K_tTSѱσpzxΉF^`$G@PoZ͕ noC);b3 ڰfAJgŭXxE P]E2 Y|r)>WZ UѢsR"8≮C2pg%پ5 : ,)2t% 3nr$DBppXM4ް, c~y~P)b`u?i*ܣ dɍM`dѝN<BmRt:D,z^rtZ@Ov3I}b~-Fc \i~N;bY]/]$`ͨQZV'2`{=41wm9~SۄPiTxI1Pfn4 s..g,,}({3gWsiskJA*lP&#!u$rc ,J O#f .Y7ճJQK=!r^IOEK&WyěeߘOB;v$\\GB^j%۶JoSR%xl3x=cU3>ў9\l}w[R;}Ud+]VXd~ZWƃ"aEK<@|v<˕f0H t zadiL O9!V1Ȫ~ JSTFI1YT9ZΓXll42/~;p2;_߅Vx*w06;Eq`w{mX0~S)& Κ#P0B\Բ*.Q:ٱ ף.ыDo9fMD"FGP$9T3XhfG(mRENp)!β]3TK[˷z0{}IEY-L$V}/;9!=BGV-4{1yY\OO$YZǃb"/mN=Hnd[HK꜆bC^##Pـ LD_KFPAŏC Y<NF)WUщ|dx^-/*oVW˳5|IM,4M)(`X\BLo%),V׍\rwX眵]bN#OY_ke/I-%b TKAHp(ӹjk 6~jЃwCn] _'¢ծ<]sa81^躹1AZdi!>_~Ը@WkC.]n +ӵp/eI41~|z p8cˆ6vH0j~$fq 9aH:v>CGqi (k t(Z>M &, 7 JĎ4#Bmg;kҬ̸ E5ÅOt]lu+"/80pUqEcu6kUX(Tu_#[)YY_"& vy]SIMǽB;gCXEެye_- E^8cEêU'qǾ/'zf孠pDm֞Z0A9Jjk=F@ e8Edٯ'MOv7iex# 'y CVѠڵa-+ tFPERp:y (8 J]Q]2PTU+ ߤkjL2U&R -ԕم?+3TnNTZXV%07lc=ݘ$w&Ay8{e:.K8nG'5H2~z1ܫ± cXn6Sr"?_=<'8RۥMPg5_jɠ%|uA0[״L^3W(6>]~Nİ#tVxo)9̕Plz/Kh6}ӜK~FF7D:P;S) b %V5Nu%g &}XZ-;JI'%8]t?I^(%v)K H]'NJ<[?_Qe!$@*)Grp:BPӏv=s\8H4XܫKFdZD"KMߨ5iYlhK pA.4#p(}nͫǘwYeRCF`PVouz„GiR~>ly…6rQ.K~1:۸<`(Q6,}īǸœ(Ϭھ)bnՒQţ[Xݚ\d."r#u{jd;OgᄐOR`;k$B! 0,OESX|ybn.qFT ="oҮfv 3;oĺkh^‹g{T`X к!?_ՓY ni&SCg~lνQ߮x_V"/GWxKC6+.ȫі̱俌_2{84M[1OtmR#L_!77a $Jб}l0r{[ ( % h-Ha D6#bP'{EK"Yo2ֆ\ ΙųmInp`tA-]_݈ ЃS iQ/<[uŧ D4_!z)ɪ$Ҥ]ؔޝ26 (A$>فY'4:{uxz) t]xfmWKqBK F &^.~h5(H0An}͗$PMy)'AQc3-;SuCTvw Q?$/?̜R,ȧPo5K]*H@d *l=2 ND늁1Sux|qҷڛø5b57thI# {=1m@`0;WMMDMdxsge $ 2<7.+ !h v+iO\_)p)KihNմg@81=MTpP=-NY]/䮝a Hu|fMkRq!Y,G :Qc?xxD81!ـlP*TZBz磸 Ce\`Dj!eJ#|EKΐzXn.iP4%sN4JRKrƐnqv?)+w.QYm(@FB CzZEbTXKF(R9,ӓT+(lDKWo 9 _{q1:e?0M0p\ͳ&hOԢLp[@EN)_d` Pva h@*pdgUM>?qӊ+aNr}UvV&!*(,Yd*WZ^WjEfU y 6y샏w&O?KT َw/?3ȔD$iZ1wWFU3߻d=velyLNҴ4k21y)a2K][JPSosʳ?.Zt?aخ(5cE-jk-cX< YXȃ +$ U΀D>,iFU7k\)/ t,Z{?]I#{X>1]t9iW*Y>y;#Oiw %c?-aqn4>Հ \2P3]xdªʮ\ 8M,^Uw=ș. -~*JA$ߍ.94CzD훑b|#bA/W?*[ɰGcҧy-"W"4oH:Q__{hD>SŠCZr0Z׍XNX]';18mpnJ{jB~,0h S鰫*Vvag?o%NjUb̃Y!%O|I +/ss׷Nh<ɱ"B'X, ۢ+xJ4R %v?C-a;H"C-8;71&pՉ @B <q$ه, X)7eͿ_xӌ)K_I95X^κKvD :vFFC(2(7JY'|nb$l g#a? H/Fn7$ zr F):{F%nc[_؈10BUyw 5 _HY!pd@Ð6sKۍ lOxR H?]ּo"jND浤$Cʔ7tCIsҲvSYˣPN:7FH L|OE%o^èC,tH{xJ?0ґ&ɼr hayHx"e&ImەG 6#R2Ul9b~7SsJSJKi (]3${Ңqb>w{;9o}} *鄢! ~/.NUIuz\20lO1-FOn,Òͷ]|Ny*t<;#'G[}D SE{3'ՃU}ckBXռq`mV$ܡs~\ XaTms^"?*ggAjv+);p=r#-H} B* :-ŋ̡즴(,l!e [mok #qb(~ u(Y{df9-ZiQC}d *UrV[OUc"5*`%p9M o?&)Q_ ?j]mS GBRPrw+ syHSZX̪ }攖Ycx#Dy#7uAQB t96#Df1%{"Af~axfrOY" vz^\*6G8pd?pR32yj!kpWL%7U<Ū?K{ >A6 A&)O^>WJq较Hr^G`cYtRQmk3#,T#el$ \ޯz̋b{>@-k n[&iԴsR6/*D"d1qd!7Gͨ5w:؉;Mt>4'&ylQwEJt~@ʨI#ZO'rR(·[HZb.Y@Px8sp)yB˕5[Qñ*!\"~׎weRfRiqDtrtmD,>͒Rr?_P-CblmR+jᠵCd.Ѕ[CI-P X)\fZ%M:tnwΕͫ,>(R:<k٨ZZ-#$HTǰb͗Rt@қ]Xf&zI$ZpSd㞠R]ܘu79<UgY%;ˢ-U fR#r8Je][ٻ% ;{]MqtLP˥2Y4 $C}vuک [΁x(V~ɱtJ2.`t eZe.[EggյB('Gd廂۩%&nQ75='.( _ڼj;aRg+:c@|qS=8:s!MK Q;ǣh:zN50Aׂ`FRmHTgah2VGqtƒoR'(+РxNDc]!I*J@M>/Wn?/mzh$32CN;HaPmrh1ծs͓;Wj8q7Nю=y z,Z#pQ#u6(Qhok-d\7ޢ=<'3xO{G nMH g{ 7R Ze>habyRs{EOHl=+l;܁/nbmnLwl=7V"A=Bz:EUF`@_00حջ/:D6fS^/zDI >﵂y .9N q6*Ln1AZr0Ig뱴{w0Pz<e_GnI6s'_V]R =%la6Un%uF\:'"VE1Ɯ7xNKOgݐ:G43oԉ(`:I9'.։o fA0Ki`uWYd]XP_M)jPg>ŵF.ѥoscMIe1P4HLGʬꅒ#S+:11 lF@]F(x5L;b^OF`% ު9rdb5am7ܟمu9P"!1@9K@MBMiKG [TB~f*vW`U.,&asU8UB4IA%9]I X9AMoKVVV +aAyE aGkX`}.%Me_gPr[Cu2 q>ČDsd0I4~9c.[Y\Χ[6O.mH}+<,m1Zqxej/P!~=:q,]ƽ;o'vީBY(c[7!S|r U'詊|~~Ml_}H|CZ> aG/l]Y%.( SuR7_yh5F# 2ӎ+5k^LIO-II%uEf,KC\)@HWCG&VM}m3nd΄DK jj38Kn_.p)q$tϬ]O.kQm)jn8l>'<͖>K0Ǻq[P8 1^2u.7g:( YŠWW^k+ed$#nyڐgϼw2pR$QGCDE]IhYnaYM6ЈC˚,:h j\쵍e4 )#T!ܖpQtvGh,;mHP5A]}RL\兘 Gm èt).nUrWT=26_u"iJN"YM*W1r~19zܺbL-} @aB=avy oݷщg)Oϲ>gq -TM›Tl={J~H~!@^4y q#qT.v F5,+>쁂=&=jN BrS{ X <3ǐەN?t;߂BPTѸƧ$gDž0꿡,5cp>pԈg6=&I*Zl~7(4Ln_JEd~U z"KAAp=Vu5v%3 ?\pp-c\aK?\*^4_W`PˬZwqFm5:HoӔ;if~Ӂ1 VZUj7Yߗ@j 8d } 5zgXx@ޞq/mCyvH{Iz_GÌڻ_ZR0+$ۅO"W\b٤R5tv+ `Lk^[5c1"Q;fF<@59B )bЦg<*7‰Ľ)/Op]m\M!ƢWC0\ע+P,BÛ9˲jp D.ҵg|}ўܢq`և cIM1ob/J~Ώ#8QT"Bǝ AH$E 1KEs\ قZo7ĪCi: J0 uGM "Q9 k H#NHCw=FgeɼL#; |)ڍ%TR#MO<φI:H;m9gxo O^7bŧK'^aBEL B]L7 ^~ JJ尨U&2TMFk*b5)(Dgy?X[`;0Ɨņ64'Alnd`JiByQ/nМ6z Vƽ!MiR 3#I"u $AJY%G2bLeqP!^_; VFUt#peӛ:G zYaٵ@cBn'? ߩֲ|e) e"U 1^<.HH$*ߐ5-3*b+XQS M>"BmǙnvj$3Y~Bi Šb'!J+hhf3)fC[sNLʴHQ7l~{}EAٷJ{C{̸B7]M܍|GXZOν:t6UlUaa z%4mg&#:r8M_P³eG[D_hS2gCRҫYX>߆wQcפpp U#`-3|ifH%v!;S*Q KM‚=O9zH6@'Q^P ZBwP4ٴ}0#1iRXᲔrx Ojg.Ts~|ҴŔ? 7'C.y'gRbƫ؃Diw6$i!yQCh~1#4?J]({s𧑟j;z~&Q?PW rt)^E_᭑e(ۏUfjS܍_Y!@~cاW*+[Ŭ˸%WlgktA},.䰙=9ߛPW YFL4(3SDO0,_3 @FfS*6q-fb-P^@<礤Q ^0%&VRq݅J{]E;gNui8,v5>aNqjG={&Ldx); Uխl!d"u5|)P>ɒ#꘢foL5<7`ټIZ#$nS%䵔xBۅfO.ɯ!MIFU3֌Ƞe8꯮bFhk}ǽ ĥnZ0s.Y^H]bP?Iy'F$0;IW(`6uv3^K, e剖\r G#@HB DlJGfgAwȚpuGЕr'>6bL#>o\G*+0,6=Bt 5hk؀߬ӗ~KIL*)܂hi!&ӛ-Al&pOS v*ȟC@Τyc׎po+{L E#!$ &5 Eb+/;D8]hyެzP7Z_>nd[A'@220 G9Se>e۴o&[7~"`U@Bsa͉! _^ 'Ϝ(ГdSsdĖ|T=r[+ 3`-.Srz[ASݜ :tf1^WX#f^ڀ<ӮwG"7v4?ǹbX)]-UI4T wI-P?>q>x*7Y[Dr6J&\w8! C, #!|I3(nd8!1.b]%JOX!IR 6`bIB0l<]Z4}Hqx :mBrwA,ʮMPn7\ Od+rP-Y\JW{{xʐ$\3͸BJ\`9#d|AO i@q C9J,^ӥH0յuM9,־o񁨻 1kǽr\8Rs̟.DDp.88RѸ!GGjn3 S{#eJw,W[:"/" 彪z?Tpz2㝁lP'^]!ɻ7֎|ut/YݪkzY+zo?' ;i4N$7m+))Е-z@*eh2xq[`_U{.D0 ;Y&LU;żhrƺFeP(H}(Z8'59kc+8Ε|KW6h5cn*^;Xٰ`LѕWs 659MBTz P !2T4'Fp+֙-\+*.f;@EϗwXG1!@͡tR+@N+Wm=a5NIXx=wCuN1Ҁw?} 2\2jb \˰U(i~\P+3#ԤREE {-tb:B#[ p0UB.Cw;u,fmp;҄"}G0c;߫qlb>A,:Af5QĬak2k>OK JT lm|uf]>sUJKm {B3X4qܼǐ*(]3PvET{bH'8ş`G% >TT% :6<7Vwל҈!tչO88EԲ g (D=EU~d~Kt4,^[JMJH]xLnJZ9uQ CaMNMemM9̘} W{"™ߥRD1'%% ]wR)sP;[=DDJq[FQK6ÎNx%rqX{S]X,~DYnb6x{%3l,źNHh*hLMWT­r{ ;@kdpp۷iIj~>Gx$˲xش%uσ3fDMFj13nZGsprD;K& SNjœdCk d7 x3{cFzsяp+('P=d'.^IsNy5o"z8*x'^>C$rMn~٧9^/ 3(Wv rimcy-'px]!qetA_KLr!~OAeb\EO`]kOE͍1bu@/h&)~)&2*?η=r `ax@ #r113qœb/PR[$'-ն-k|?@t oF;r~|TIi6u u9Y`יoN@&ɲM1ֺY#|(Hud¼#V4 RlPDaJ(DxBO6C0-z> AgOh}0tlpCO7ig4`7F|K*6v`uaRt-QRPS#k<إFF)Աvr c̕HqHGftƮ%ymQĐpŞiR, c+H dn̴vDPJ>u}`*7􉟞·\gkOŻ紲eʅH Y *F@ʬ; "{zg90tg.eTTh4aIVnNB9BW[ZT5( qEĆga f1"~֊5 i)̶\9",@QϯFzV74s Re:Tްդ:n  `b(A B/.7Έ#L{{B4s1v+X_ zϩwTGԀyl~z!TBd "Gc8&1fhNJ\H)d\~]-ϒ> tO1誱远B*=rˊbrxgV2AkCB#!bC N &uuF^IwcaTA꩒l;: J纵F"WZ9̛{>l T{9G+JR`e|!A~!V3Kv)o9EVK;{?y#kn,1wo,DRXFqO Y]9߅VX),;=kؤǰmotFZ][Ө&1Z+`k']o9fukx󵕐GYAa\# K-,+-¸w|S(0G6z*Q \ȮwFœmp$IzkksXx ɲ!?QQUFW>! pr,&Q0nws"PHp|DM6Vת@’T+/%8hwo*9bGv2r9?W=8{k.&54C^udLRg&_*=A`9+ág~NđxI wED884cĮg]P@Q3nR]BA ej]u3OF\Ժ]ieoL 5,rB0 %Q}Qysyw)%"6Ifp;_z)vP'kWI?J2>0zG+k|7HA;=6n{ :L\H[ W{Or2@N_PNC[1Gf|]b3u^'nB-ړYYQ7.@-dNJ.f]GwSsJYa_+&\7lJl -ǵ L`X wsVKF@K2r_ddԯ<uW9 /@&*9l<„:?˹VE,1ζ#>u)_%hRZ`ŊzBmZ vw}U&ŔkQ*#'P " z="WD+pi+H.'2ňdJ 1 -#YtS9 d@'3x8 SيM$>y>AЉN)(I p2~Z- Tdsݿz '\2*L%+.ve 2qn5L mT$}qjFΞnĠDu*8?FK9Ӧmp,%0. /ܸaAӐ[YzQNˎAu{cb/ȊQC;]Fs+]0 evRJt;۷0`iΎpLS7:#j.6=;PWSZV8\$Αp-7bP յFw0v8% D{5؉W]puHϺT6r ?@sV,ێ<{ 7XԸWX6xic~Yc+(ϽD?${uu(1p!٦;mF%u><\6u+1Aﳔo#~\rX ǽ5{qFbF⋎Ԉ!O1${8ΠLRq%W]Ma۴$WT!wJ5oe}gshF#Y2 !3C '|NHlʡ *a}^G,}3}sswoP;a$wY٩ :yTqó3ry/s6ȽFӳ4! j>GV P0h\lP,ڎJuRx4nPDE+Ɠ]6=6hjHU0CGwLJ u Yq8 u5foeEìW%ūPޠ Xp36fC':[+:cVnaNLfSVyl';[G jfPAs'/ l%VoLRrp!fe-hOq#L̼vvgJ1][Lϔg!WV^Lо>޺0j>X=#<Qk9g<Ӽ=0#~{޶ഹWՠkNʷ[=%<[^ \Uo1Vg_L4ٿG`E |O[O0K0+}vWT,FoLm.׷@"1QC%ps6[O-d-C3 5F޽DCBz[ /:vG [ݰh]b̮\|z,:J_(Tnz&GƝLV:EH-x9T$2IG3s'LvцMށ(CA#W~%QɄ`eURZ Dނ8!Ijihb6Fb֣ ZRcSz$h'LO\6)aXdqY@$n3J2חsX R8g"`[ARxYI^e_ "P綅ylm$%&(gz^v+<_Oc_e4imNhwR.lV8YтVtV9son1LFc.Ƥ]oD{=7|RJ^z'7#ħΤNxMnnfJt4$=݌8GD1Fc #&M(U"Lqȸ7H|/J Voj=jva+$_r]085A$˭?lA.M[ҟ{Jt1$^hb)l5S .MLz>Kߩ~_'*KN-{ZeuѤSvXg[b*t+57m)kd<_ɫG!+u?3l1]9 r ,pE"~~ ^n,XXI2ë Jy7TƄAhΖeT"ڢgҎ`4ZyODuTdwxvysyn$0[̴pVGeNoXSs(RțW[愔u+DzaݖzB L~4fk[Z(l&ڣ5H؂jxh%81ވ'q=(f~3֗rC$!4=_;ʢVW:d~%So{d'zɡFR$2]JeYle|ev8i*,Miur2&;JZ{,G>2}M")+˱M˿"k@2—W #(ܳj7<1dbꀺnlS!#*.v}!W&PEqcƇ3W/Ga`J}N ;x HcHBAhc3E2&_j#LJW@;H1R'zA6_1kA4~mUqǍ`z?2s/0L/v7M.xA +k q Y-EB+w/1=ڇ"[1"RHz%n,=z|9G_TTYUպaNG8Ð~ OOp)}$b~H: ZǦI 1GT+@|g`/+T%U NM,2{BEl&oH c]#VF: u :x |@nfU4hB{+|μ<?MU@k9?8l!gX'ӿEv>^+Zp >iHU WlQp}ValI7uRF*A݆!FyVݏ2CLPKU֞(Ma4 %e%ʶL[&5{v]IPQ!huMUX5j-]%I[rx;7(Ӥ;E =]\6:kQ &{~),N֬qƌk%[?ͣtzw]O\9jQ(?Oбdeka懲<%pUe|՘XA %.7*BNstP_Z:]Kpz'¿TbiRf :™ ~XCwqu>ҔC#})ekU*RϮ@jbO([\,n?OWAh`wNoɡ Rrbo:h)v¾S}!PS~X7@P)?$0u?{Q%rN_k?0ʓ]y?wWhHKVjl 08ÉZ+Q|dg)rpq]]OTOx{'J P ~ʖP^ļM5>U=bH-bO&6L7j])%|&͜ɣwQf"=%+r}".$7i Z:uto7mX&/u܊"ўTb36v-IϹlWJئb -ks5&鞅0hR6Lߌfz/abztcʬ|{T'l8\Ml}i/Qkb.M$6Nhl*>]r=t-ݚ݇W-k:̼s@ti%zِ?マ%*o XE13nHi?XRU@þSh)#+Aikfd ~>,['jlE pz@,u+I?.^b SMXr7-Am$ }uE V[nSainA4<C /?}q5.7&; xR_B@<>Kȶ@pNÞiBे';0| QS HL1It-es'J{L+lW*(=\T5IeCI4;%C@+ZJn+ {Uq/5 ;;`@;2ɤQwbҒQ Q^" 5<ʦ~~iMZ"p, 85J9'n- c'6$Odn`i ~w?}$L8$l'TތzjQ#2BE>G$@S+LLgtdHMD_{)Q]@U'ûMuH8AOuq$ϒEa:t˫{9u-kL f7(UT-)r_yyc2V[7fހnLA6s[ , /]G#KklhiE(g rGJ93Ĺ(Yj34o]ZNt\qŽM9ZtX3Evf]W'YvIJLK(&A@Av$d~tm#J HikώܝM&ZdT^l*3:}:VЁaE8Lx6}!e0Xii큑o1hYS~w7n,%YZ*V@Qԗ(l Fͨqs9!Z1JPRAl7!ުhNdAɿcjui(0S(]x:9on"h1j! K{A#C*@Ea#<^JV2Jv%G^ewP|€ _˧AS͝zoh[mLkўw]~2ENm,lڄŢ]g *L_Bo12 ?h:*ywJ=Ѿv8e|8_J4zǬ<%@G#rG/ց4FE։O|D)>]]b5@pO\5Y얨1_;Aw(u8W%qy0Fyy ԡ[!|KnZgn(XOP&[$HWĈlYO{ $X B&PdifưD K%3,W/Gmq?V B!^_P /9`0s p;9ax,H4_.K*w#RgJ 贵1)*`eߍ56꣟ʒHg:r Wtsi#A%ZAlEw!kSxn#a?Po A&j +liY0 ='OH\5wx:Ϛra~5:~J"LuKU$ZO?;I$I3y,e/#x܈ "˓v:灗/=i0mdVxL˯q܅%FuwOB_%Zjkww+>*G, ! >ׂuj?_ɼ ;Z1ފfH8%/L_}W4p5` Ry X O9l;. lSWjAL>m Em`>2H1ȪRT?_/ɾeQuc!cTYU..P_0w?Ucqww:O8*E`I(5_3HSS Ym!oBS -44+l=Ԧ" _9H0x[[|mbt3=Zy~!O17;:QcO E#.~]S5}I؏1ZZ7n=x/wE檺\+Ui΍ |*|KE1=fV}@}!nh6r<,0CU 9$I(3bp*'B+yfojZod>y@0%X O~j>N)apBhaR+hUFd`+TKpJ]k+H0DvAӚ#)̻f-n9'<68](:C\CX ~$K8~Jņ7 uOXoZ)jaQF1W Xp~&0()FE7ޑ:|wtco*QFI@RE>ҒvrS+K~F-".% Sj13nِ #;R\EZyI_u 󻼋O+a)Y9E#MٹgLߧ ~㓗fGx +W)"1.ڨJF=q%ʎ:JA'rcp9}Qy NyMKY |AOۃ +𑑟s1ƲF[8< hcF=0E bP!{_+lNZUWoW^ӀI3-kp^؝( ${G$'@7o abf.%DGMkӢO곹=BxIIU:e] ,oBOR jǺEÉ;WZ/5&F>o#W7E!mxXJg8 vk#|<vԧ _ qJYt*f8& ԝRܥOd3=:&nWe4{1'#qI@-k!BO 6 *6Az3$y l1Rgu^Uԯ P$qtޜoձ*ƅrSͱִ7nyXgŌ:B/F~8^=g˺J69&fE`Q[>h+i۴\+tVIX ѽp̄`5+xX "$4ϼ0񂘱ز{qB؁Ei>WI;3MUC= C6'x1]PQ=b[GpU")|Kn5pAǘ̺DuBub0NlZaO/hǨ҈ITYGZ|ӶX*IAI #wݥS3I3fM0Cf)[J~CZi:2+[Q0+%GW+Qޑ(+8f%[&-PoYh ռY0!e|eK|o X~r%GJ+Mյ'|xDrbȖ pd>ܱ5g"SS3y'&Yg<3qh=rek>f;;\s=^ rN j- i?I+;,+y# T1~u0:EcM;1+`d6!j_`}X m{Z^p~ ~T'ů/j=FyGM*s#">GTXK(\10՜9kf6:$J gŪ&x&GVze’w1/51˯6u,A͈Qwz*M:1‹( ٞw"zCj=@lGhhS>\ƿWh?S!Z٤6T۵4E޹X#)#*gξ(]StP#laY V$ MjGV8dxUnnXÕ>(gh{,=TOo_LRGV:9 a9N .5%"̝g1bˮoucLԗa_$Ct}-JÆv_>]UIKL,.bm;sf}^+eCW}Eg2J_T%Y`Nyyy7?Y2^y@.ވE%.6kz?95[mPHܐS^+2/m(k+^Q{}qsɜUaY7DK9}TԃT \ʍSTJ&zUB};S21ay$H3P)Q˻wfU~+֛>+]Q ʞ*yRԼ0C'8|K(Ppo#zh˜rq|2qqS _Ӑ ` ژLpm9 =NT?$\&Lv%~"I$o$iJ 7Oă)q;(2܊KqPG|]㩩>C/j:cf0ps{-)cCGg^Y%}+s&.IYck.>1j<^(F"K{TM)r `JOf@msT%GϟP7Wc=&pt׿үC o({kص9+ }9=*t.&F0ZҤz//raޡ|H҇V4mQT4Ǡ:1rnU{$̫15SpEr-6q}ƾ8W`+ro9;7[\fNϨ˗7u;i'|Oo6V-_m?d}v+}SFj6Mow}y@Dh]NlvsP&EIPӎh$ٗ3|en4ii(\<" rdQakU3dc`jӌqCV: L5y ɺ\,oKYfY }( 9X)PԞzZKj7۔ݑNݩs)bLeRl5blj :~Zt /&piTL9KP*'+B8Qwl5)&O77ݒ#ݹ̵moWt$3e~dO,J \Rg[XބN E)\<">p+_(iORz8պ.+M0ҢΝSP1n_ }]r[[6H 1a~{wUBNi|(R%wzv)%W6x ]+>+q$ -rW1ZPEJ}5+ggV^Kp9lgSN<3A6〴@ZΧLc-ʃg/N˝V hkjG*0=0 KX-o]ko7ϛ NbY;2lɠ96&(]ΏXQ\/Sʰ 5L]BY!,w%}p.ib. ۻ̉ۻ"ȈA1szG}`W&.$絷ϟ@s榽K?]Gtg&W3m . "FNvhDf[}}Զ[A2! ձ|pO#7ev|FUZoeGcw\R!}N &0'­^Nm d2Dܤ7?Id,%_Vw7fDc`ǐт嫦 gc*݆ه"iQa;'\]SI2) wAWH.:EC>΄-p牛"sdo0cϩA߽jNgf:Ж!BYKʔ#Ptz=јeMa,̍R0%*^ ]t.S`<8)Rp0~okOeLX~" ҄h 3,<+0٤eIc~>SUR_RJ269y{v)EcR-Hn9 cu֦"."zɠԭtE+M| ACe'L[=ܷw}k"+OKg;ltZioSqP\t$kvt ۩oWY+"J[% cgM,bUHjaJ]B\|^3~zJ,hjΦ<uj8xmTxŮo@i4}8T>8?h;MӐ ~fwpө¢t8[zLב?$!NRTAMEMOB7P;Λ,[Q}*݀=[/]Ս"T)n-a%x5 `֑"0E&V0nj݇aOw7>)dYٳH\8֤ѫH>AGd[$N>B`m$T1WZWX"s[]|c%Zلh-7ax'vk` =A] J:z%TQkռvqSn~!U2r 3w;qa;ŋZ<(oY cwwTs#*"ҎDǟ^4ـN ,՗Q3XL*V˕D)YMw$*Z2wWE<6߅ ĸĩʹ2v.Hw&wpd/+c"N2 lYYst.iPfBId3>r!5kD}XR&y@fUarn|Ij>RV~S^zNiE.% \&1v1J=[`R&"wP:IY)7!]rY>Bpcn44@Ysz /0IԒAj̉z$:J' 5ATmy׋(8k3/եt̾) [ؔ 2< !G~C_$C/j3Sb^ M;M eϬt-D&pC"BHbtiE&ֳJ#Qc?[ӗdX\d.I54][QC!^))[a "L5%eh E!` +TM;P O6ij3=79k DO00%Z8zVeH<XXa y@?`Z-|irp9Jm)IrXA2~VJA ԙc- n֜VTRx 59Fsި5!(VD[ i$xAQUϞ$vEV8u1񑧍͊ ͶMnG}ۜ=M|elVp`(D+iW) oVn 6SuxY̖G  HrTc*X <׸r9*>[d Ld)8Tp9ZmKe特}N6Il s*Pg8sKlj]Cя8/NH$ey y]=sZ\wy(-?%5nΧs9؎Nߦ#(v$M,I ӽx~e>=~16X6zbȡ.*4Vx/:-Բͨo3xCyJ".Tb`}*5MNuDl,Jr @pi&.%T׌Wl[@D4 ? 7!ap#1F!`#l3} \PJV+db=y7w2o,@*(5ptH+&k ^)`kR;lCj`؃`k-|`- DD >h0#Ė^ǂ+>0饨] xn;` rTv" DuxױEOudhʕKq Vc_cOi0"bR̍19o"(ND8r+L_>}j@crF(+7jrLZZDIlԫ<9nW2+bCBB;n>N#җ Fq)I>v"$9bw^'MC74_zR>^QrWx|f驳iũ2;ctiRyE-sN<@00 dkG,(#0q:Vn\6pvU7wR}صFt!_RDG.vϘXr^^OYʎLJ1 j3.uwR,husnHrPGXY,)hv^Q1pb\ މRS^С㟱o#*_I(Hat62o^ O5Ix \PU񎶀vrYEAQ}+Hi ;\ڽ'ݚkћթ~+>X%Kb*j'elh[}'@7t~ r+ (YKD2+5OP8@`؍`;t01ppfbe,jFA~b[PrgA=.%PtNsӗ)no_|ZmU׉Sռ{ۨEd#GxQI@Psg(i&By0i-W- q?@Lfo:kqmUu{?z~НG}J֍D*&cqJ`*3Cjy}ԋ^iC{#wWE)M}I-_`X9׺q z306IFhv3"|r6};b$ B;U`r{, t+lg-W%4MυDZUH'y_q7G< ~><>:ӏwd}-ust׆7>(Bt 5_F܊=[>] gH(bY!tF0L3'<c}6*ҴC/I[z_sclڃTf\q217ذNma#Kx`АL+QgYQ6ynj}aXEN~q''9h ?¸'d`kjVYAaq2$bRL=kfj1VGqEtu,15g|wݤ0JJsvV"IƐ<'ۧGc3n;;AScB~ fyn"FJ8.XCj[J8J]*h;}nXV L<|J1'7 |;f.j~*s~0+z'dYD xx_T"GjSS'Abe6T;a3bitXiYLy'[̺P : %Gz|#~SakO:_ ,_"D$!_x+{YVS]$bWV<xQ@S%yRj$p%rTb\SbhPx7RyU+3>vѓglT( 9%8k$ xwRltko< ?jEfl) G(A &Z{jǒ0 K/F~ kL(w7 =}@UwI"F`zY_p؛o!V>nhw}аw=?`b.3(+UAG( 񿉚vMwg{}qHWR^ կġ'6LeÞ/^PCbcA i!b! Ӓ FS\|jUkNziW:kP5L̻չ"9S 0cN11;~ePH/ݘ†b vEBjvINTQ)| IeXh"x<,G}0% ##ܫ (.lV11<=y갎~a0)J`]>捎yØVkySE)@\2 X]EM{>L~(GohJӶjOʾ5t8'9MC{h\Ѡ[)zT6/x:W( rVU;ZhL{,Mj 1a- WcyFFX6ە{*vld4Uw|GJ6l]an53x##hSD֙J"mWx7(Y91$aB uj"ZCyjlKZxn7]>80p$6,#WbRʘcAPb1c)IUiR+\oE2 D$mc WzyFڦF:Ɲ gv$E* A^.YA#un"%i[G`l S G~YY~It()* A"H^̿\|e_6lU\ZuBj|͑43*1@z'炏sϊA-WYu3Låb:ժS:UչDɺ4~n?V<goT ӿ\eqrgƔ8$u+84@ahO`OhXui̅wM8+ز /$( 1]GQ':NS(uph=v@mj!Y]+BТi[sHM (K8~4Ư"?8u,Oeоz&h%W5K•Oc ^lvsCEkR?+ ⫾é1d6猗(A ,ivR&U&VL.C@UחF(*ùl.rw$kjVpNqLDst*K-Pw`ߖhoudd^\98lTd+Μ3![[v*sS.Yʵ٬^V!InzeC_FU-#z[2<^i\>IDĸ!!>:ʌm(%q-0b8S.SͷJePEm{E/hXFKƒD1^ʀ n;`-ƙ9#A;$!ZO'6VL]ϥo%8Aڏ!WhbLĸcwU=zE;sP:ՍTG5jݒo ;Q=v9>]z̃.px#V}]k Y 0п0R*Ws[.\a׍F(&*0QZTD $vq#g!2*T(_(- =)CAsȧWU@ |lvl3ko=Qbh*-;e| BXH6NWzEϖKRk0&׀K: V!,cQʓS'OvjϚƽ8[:u-A~dڋT0%؎Ҧ>FħŽU 5g0>i󬡚!Vz\Odst?9'OoUp`sUgx2yN#zRC *YժT=SE,HjSYY3pRfVU,ˡ8q+V}U^϶ i֦,TS̘k|cjl5"+d4zzoiXΪp6pk_<z0tM^{ynњ]mZB D6 iQJ;/!떄نjFG( SAX r,Ϳ&?~{pVCܱ_#XV\XZ8nT{9Ms \lKd 딤Q?yh^;'8#Jo omΏu+,CH^zMRhL: Ha"k 噩+:7ѵIIzDsG$a{1Di ]Gܘy?mr1.{qC%7 iEP! { 䯕+%Q)AأIi傠Ɣ%exql2bW? %|[Qĵe4{ZE%}@ .Qj!,Em U v7a=^n,q=RTVqsmxGS.,&*)y1yy=zI4][@٠~&n,Y!miHDy 2ݱyAqDq?V UcFPD4RDo»17{e5I;?jD=t<<{4ʝ$i! ^Tg/qK*hބo,ه@tAtyF} uk-g<=\¤ck`^"-PywC ) &Ty,R}:ʽ?~{2smsCb9D?+]#DtI|'# 1I?\%܋`7$P+ /s҇e}kqMK \.?[Sk3o[^]Ldx˜e->vof|~Tª)j<0FI_DEnK"p$MgɺK=5P&*&-P7HW3\Y`\@̚/9Ϟ֭joyіTkm#yWd!g:'p!p읍q0&t˴NZ0@ _bT9LʁF[<8Jq"1T0}~AU[EF%䒧KdONc@y %R%&t=(ob{qi:n#FFi2fRa&37g9sQ[i-jkCa!f$uʚ[ˉn qnm=oE]ޭt=e3d_ }T$]$ƪ=I~HdN+T1kQ̴A i$FfS6tlo[揟C+ESm%(S_ZSe&wnԩ-*Cܕ1,E| 5ZWG_Vu@ aR-nk#S+ F Rt63{ӅuDspY;r4 J'("z/cqjgiT{NB#o R)>4쌱2iWSUwM`wɿͦg^#?\9+G*3(N~ťY%p8Ϗ<זީx[{kwquf\JvnjB|8$J⻕y9;G R5!,W"R1M%KN1dSK;+X @9׼*i(r܂#7ҧ&}x4:8cBPcO<a7JTںkE a۴̭j\ozUx@.J̬Ƞs<_g2^c[$U#:e h| {)\chkR> '~QI"z[S10i@+6J޽ϱ)&\?kpi]>B_l8xF$$*99'vzn%2@?*j$^[4ܴ)m[9aTeb7v9(IBDNE t bz lRɒF~C j&(ɠ ;SvWP^e*W+*,GZ'AE TZ&412X}|B:OxNM Ylz= ب>30w7ע>N8JX,,TY`j!X?W. 6\Ko*h WtpvRz,$ 8KwNxV 3VyCY8(#tM@0v,SXc2iE55Omq)28ttkkPRf 8B>:m3iy3xLg<3eg$Uao=9`gF*v`A+oqZo5ځ,Xuӳl = S;Mi^]iԵ^>K>E\6dPS*c*i) ր?D 8Etۮ!b:&ns0ݟa žߺd\ԼiUXNt*۶ ._7N_Glt +9naRU;ޔX+\}Yh'[id`ȧ i[9~+Syŋқ>@|x-Wݯ4YY:A[U|IU}3ʬv0u?IS&o!H#vˇC+fu'm/+Nfy>QG\AO۳Fk`;bBz5f>ap3r}gqiltcBxES28o)U72Ł Q3Y'S 1evtWTU C6KfAxML}hN`o{lrǛȖLV{% 6RBy><$N5^ff[+5Ь\p I:ِ/g#B-T0 MN$Ȉ+_Wa.s5%@8E]L؛x5 gd)mekH" rRU!Z4茠 iɵvyf*@UTX(KV.< wEy,hFl4hDP1!Xvd}4CNo"Č8a>ZS3Ul> ş3GfDmMg>U[E+EÞUjBqL]YD@ ᐛ$85&͛% ٬|҄&*SwMj5'{Tb6Ш^Ke < Za]8;dG[) ) M;þUy72L2N-O<dБ:AY& 힟Q+9\(/q 8ۨQT 3Թ 4f{JJpU~9] V) ?vpN ud dŴ8L u[lQ6uQ{%q b|lٛBqEaMF94$Hx.)SGݼYMi̢pF_*lubNۗAh fKUeC ^[ !-2d;]qO\DHjзL/YXm<% '̕CSjq fn_WY''TG/jXjJ@J鮹4|W0N0J9:8F9ՙ^ɴ5enbj⭵f5H俚%W7cpj}aԆcXZMck"X,`W4Bm'pt'ϰz|y/&nW8;SejE? zL:'wh[Y"J^'K=vN2]Q3k$Xi)Nܷ-.}j%qT8LV|%- (BjYi4!]Xg*o ڌ*Yb":*胧5ePU<3P 6ecAu?Ue.Ȧl˞q\iW{, Oagթ6'bq?RH#V*yTA][}+Ё{[%LÁU.׾߅nHљQ+ 4(/#b4v/{>XHPlfo4(r:>V͹NLAtE$páߋr8e08ve"5q|Vib]]o>x)jSx:%`>@9JYDӨrx%a(q >^<&}SAPX]#ӥ5eA!ՃY,_xii6ݼ v'fF^cU@Vt}}"(-~qD^*G[i[HO+T]jtwwA3IFf}֓RE.N9ru+k1examo\)9lgZzReep݀TK,h=y0Bu)mA B4487ϱ(͈Q[a@*E&?iM6 " ֽB5$!谶'`vn1~#6ɉNͬH't[o`F4qN|Z`' ;ЫWlEXO!dMWRtlB+iAzWJ󿭑LGwf7'_8# ޖutK7myDH*K[̓es # /"4򷡠`X #dJy^E<^mu++K4J49i*'Oi0<2movL">NP!рtŊX+/dc!BBTNI;֣#k/?:wTWqx1$XEkbr?5wIQѩB0ۯyZVY2rh "Tr*U _+z>Hv*~}4]%b?ޑ^o=D± 'oDoOYJdq8g}`Ӟ."fߵ2,M3ЋtGܪetjU;BQmG_HhDʟ|_1 f;;Ӧ:$6t=%'^HBaF7lUzC<0:s oF)maFE7'EqSp8H8$sdF^c$( ~/֪1j)ͨ?5I0!̼A%pn <2R5(Xaק9"bMFWI)&5C2l .B-/2,[1wuҴ9*IS.]?9ΪEFW ih)5DyFu:-hq5, =,"6׈|}B1G+<$_߉a~eygxHz9yyZpm|^ Sa`m1rlX-nA #F -Ye90ൿ/2'Hc LGv{{#G0Y&FO9Ψ5nߙNH'ASo/9!x؉!RDlsd"$xNz}мr(GK],3,4zOFv/߿SUgkwP?g6?mK`(lPwO(XCDg6(b@/r+{]~0#y&Waҥ9 ǖaqm؝'ڈµ _`6΢+'ڏ٤h2e8N=xo{Xvs\C0Ӱ"k!QArCp)voµ$a>#K3ǎӏ̠V.צX8GE_ð^ ϰ̴>FSAQͩNYwN)#+fÔE.V0M@왼W@zGr>OV9{ހY[ڮaRyOMN^B |F*L/ 7]{K:XW% 6]Fs0#r=@ *G_hґЛU8vW:e un3FU~W.oj- _?XJ s4l?iΖ&钊LAZ8A 2|!ǥgGSم)57`6~->)dΌ~h@\O%? E5+!:|ZjUHVI^:ӂ]\Kkz"O#qC0cߵ9^3˫j.4d9zS+"#tw23wc.U_v3X$ҢìMz\a&G[4LvK> k 2͔,yU;xggʦ|<wdIy$YDH;9]cFޏ8vt0^TU n.dV;fi bؗݍ৕ZyG*ęwD H_k0َ$dm? W]m.埖xZ_L{݄.GrJ', GTۙrd|R1^9n:Bn Uaj(B~֓ gMw r\Tb n;|D#L5nB8>e $5,XVڍ2d m0Ի7 9g"m+e +c~z̪UԾJե 쪌zQ6Kx/s [*ެOdJh0Jde9dN|0F-|CdXu2ᑑ"lG nIGPX".Tu~=!8Mc ZԠ~(bvHiGa/?͛Ҥxl#UͤCEL7Ʈ[E7wZ?2 (yǓ;bX[ _fswKlhrT62! h~ѮC<wqĦf2YO~(7ꮶOqIvW>mi>3?v0~ H9W^Y]K"/nBj M3h>߆E7 7 p;Y텁Q{9ZȼQOgd|2.SkiR7ȝj[ jR)Prm(*)Z%1EelV`%WjmoGJ"z# ͈bwS53!!S8khgPoC$vӧ0+DG-BtRRw7QO06&% 45؜}rvU 1Kb]$[ݠFX?B[<Z'nbSoRBLlNĆTOKx]WA(+i{V$LV?-] Z5[cq>UNdCC- Y ؅UuZۇCdOLWxעuUqjf51 -p$\6dX)^~'}9uuUKVB}k= p,Bjr/s:@R(k=_){Ơc3:"h͂D㸛nkrRy)4$Z4Ty Gt(FTP@@8XhN1jЬ5*}+9ͥ٫k| W_vUA}G+9MW ,JovFf.5?52 Y[=|%*I2UӢ@`o1^/>'--g'$COΣ1ҩ*MrB%Bi^?N.7S0L8ujE&LGRճMp?@C+8W=t=YDW3P2| jMs(*bxGG]8A~#+:\  /T([ }]M&b3+중v. h{z^8pKI3Gq\W>? !rT4@ łARrP=)}8 LmKVDⴚtY%S8)e)0J{ŢG̅V g̃2O@+eQ{qVf볈7%a05`-ΛҒ1Q'!g%DGw8qoNȆ仭Q'/jbD ٮ@@"NsU#bq.'l1}ߺ-s~ⵛTM}j$B]a Pe5`3=Þso`*raKkp9khm8>M=jTa}z~f"*(vjfX?xpU*[A9U6^%vcNJ?!D-3XSSIςlr 1RNEs)DEnS6lBl%M.yd!LgPhPQ,YjOCsmdhYG+_a׌ծH,i# 4 rB: S)b8g a6u6ú*l_Bޱ؟ R]ȣ. w냢QZ%\Y2q4nyD'w?I'CCϱbOo V*<(Vx_rڝMKJ?tGƟބq)Gl\@ Ȏ< ,NwkMaR} O%}GCbAH9,üX&۶)!mLbq'LXVsfX{)y60k\cOt .>xpOM{_!HY&\şPȬbgS7*P#Lf;=*6Q_B{NT[}&j G7w ??}NZi]4< 7Z40`L#D_n5k1k02;GM? M2?,NJ9Tҳ\1VS/|V8%4}Bw`8fR$sϭ O_VDaH U/բDN9j8[ydQla(nT4g4T"xf=lY93 çT |$]aDLMƱeoGi/{reHmBZ`ͦ=1'Eæ}goΉ˕GYl n[Eͬj-4l3G^$ka݈Nܷc 5jU_gmH,PHFtIh@OƘc?~ 4\*J1v6dq.5MGNf[' TXbL}2KW Px]5,箺U/7I}b2QMIZVM,|ݡ^XA$nxdH>ZkEbP%T ~^1b/J]1[/ |W{7PrDs~4K|HT"u30wԢBƷxV!](~ۍC3Er_JlW-_a]Nt !U v]86x}د8LA65-؟HPM9νM&^)ɬAN) VЮ }h!Z^ ;^̀M]cÅ:GοJC`..<.7c~QQKjJ.[Vdy%W`}'rAː^\}-=h@ax1.^»̇MM@1svkт!h T)xX+pbj 'pkxKY \㤠h7-&'[caQ@BR*'pԴBJ=OA!$RD Wq/7aiv6@N 5Aj'Dȼ#OP/n*,WK z,t+MbI-"l&G,*XIAYqLS-yLّu9'mHSe^xz`-_mv3,[[ :.ӈB< B [T콡 ].v#V SwgX&ZndQ#xw|0Z;iNfL%?v# V14ўl6#a #dh$̩1K?]Wcy }Ǐle Use(m^*#V!َ޿exl#h&pz;+cW7J͂ [5W_ߔB.E@oN+q @c;ژڨO,#~+ XɋױAV7"ԴjtB.֑Q  w;Blem1v+QYҸ_z1#V^ HS?>|ҕcQthQINYTaL%-+-!9 oKv F%Ts#̛Fp@"6 xN1;L5Ps$42'v!#| Ŧ~>2M.qqS%s,WW4`'WG{2⏧1(:Fc4W dFU~h//m]UTOb /qhNԢ\&4K\`\0nI  W)^uXl{}"Ψ2U.=&f~yװ-1,n/\e|vgњOae[%5\j|XVr-Z~]w&FKxǓ-a S4#܋{|3iX@*eC9Þ`B"QolY[QM M׈!^΍cy‰X7IAu^]e;b k c^=:TGZ>O^ @V[hT ;xXj8sy[J6#>@8a) Wԏ*E{O*8{AmvΚa-Hڕf,hTPK6i| g\D&r >7QtVjmj咀M )iN5[,X5!tc޹rcn}qq$ E2@fU^kt̞<8yA 'w)˱H* s*@o/"CzLW? { ip_D|z|yi]o_ɪ}DxX)3=?,Dž`ԫ(GvȊƝiFfxQ1[}F*zEw>Tߏ)"ڰKm.Kilc11U# SRۑZ"wSMa$ZOW@^hy@\kae;v( 3qv Ύ zphq)+OʿFMk?`G[TY-Pcy+OǿR] 1\f0_Ghv2TY)/L%JeKݨSy2I<6I=ZF$)po,vO `0=pn0,[SSl_.ub?]#{#]ꞋGBN\;-vJ@:5Q= +SPiKUxcwX_[ΟLF&r -C~U"(Qu#x: Fk5\e Ri$oI9ꛢ-k vHpnbF>R}+bXws[xDt*~+}շ`ǯDse W+@pp*eZf&w |3G=Z_7/%Z[Rz}*%4#I GK\g:L "%cfQ/H_UYWx-+؋dQ|v6't(N$()44Z2DsG\+iEn9@RG:鐈#ק;^qjxvG}5wRDt~ا¢?b%/qlyǶ6 ٌK bw/+vcVsKjȻ!R<Bd)r5ETX0wV?*&Z!Ǔƕ[$ u+g*V!PC,bvp'BL)5: h"ތH&tm-S<3\@8K8S8Jd{uVuU T[cK3ڇ#͝-=yǯ59˜iVIjwyiur^2L0:u-rTExf+?, SJ/gcަj[_`|)EDf#(a<[Z` +Y՜EX$9fk[$ܬA}}2vhMx>n_MF'#Zթ̋,Y 0$ͅbd.?4yy1gt64 2dRNڳSBi SR9jfV t^Ƽ>a&f<)0y"vs"Yݒ6Cǽq4 D&?&ƙgݨ`X nm>߳˟7mqO0q_`>E/U/uC{  ovQZA9rn$Zئ ^z%Ϻ|~QX\zLm+M4uRn!>(D=&T|=+rm0+KeB"<@U6 MV@lizeF9fV H);'Y60T]Չ;[e/СR%tkpY{Ed]+Y z\YMU/MVJݠM+wC,8#q=]r=E6Lx_XvI6;QRQ_jwJiU>zC{v|P;(y{MFe W!E3 %!\X>\V %`et)͂lzv@;{űCWwSC: I 23!`?׍:a|+z>U-{ ݆Vo j0liѪ֯OLύEkL1)Dou FmU`Ner]g` EOnҪ []2WNa{=sӑGsEUeYR\TI~0-Rq a,N] S(4bp@[EK6 oTD|=Jty2=A4srEo9,!f=R5~ DI/0wFА%#,w|B!&{akA;zʾHjek'b,s ]#Z+\l{_9fwJZ)zAf)&D랅rY)'ާp,qm@NMVPxBr32V  f/?=z\?΍zx̖j$? fE \N@0P%|Ն wg\(TM%}e4{#S敨ݷPqjSs}-$]嗷KbHLfC!?W4Rv/|FРkWǞMtW L7s';KmE;9 ;Ԍ7vMFoXz߀\`v? \\7XR&E3TK,uhxpMCy4"bj`=s Sa9>zZsiIJh^4Ek6kaCK,X";2 囧Pf`τșlOlﱵ僗|ww7DsF.H 0&DJ~6EDXzT&$QmLE|/r}DTx4֊=z<:@z[E!qxڏq~ ?'Կ͵IQ1K;4?[RgbŕKG~'TFf) |QxiL<1EPmbbb"&#$p3׳6 àOr541.=z WLh|p8(f,~î;ݐ=@i3IjmJ]O,+Z'ki⥾2İd{_4 dI܋$wSK9Ub n] ;jqEFAνoK+6Ն1w0bۼ.?l%AMgx&DvH*A#zN61*/ş!9JS>Fsۍ$ xxA LauL5'~)LeMI`秌k5Vg$?ޜf+el /hkW1xP֩)Kǫ朚[qNf 9xxAT9[Ƙxao%ڢR)A' X x/؛(,ȖŘ"%RJpq*(Uᒒ᜙_~̐Yg v}K|1u<$sIdŁ B|ߘI-\>_ =*Dm4{ s^]=YR"olI/ jdf?mu墙iSq[} 1 )J @54ّsP9 j~9!C_t}^Pޏ=o7` b6y2c(A=|'SG{ݔBvDr5lJ)Mm9Tp#/ƒL_yڢJ?:>d@-d@ #t( & Dj! /8]2I+S̕|0AdUgk:8ڽ98|,(,Y!tVBcfS5xp{ik=J"rmG =bo>h9@J(mN=ƾ#SlW/!v ,uIi٨ז|#rt|933Lo8CƱls5W(t\~F3+y@xGw.1Ӛglz`_sH!0!,ki(ޜle:1+ƘłXB2 2]=( UP#QUW)CwoKJAᝫ;Qo;*7"Rj|X&xwyO%p I!P"10qI&@Ԁ䢺4P{G ,cڋWVukl^=,^G^= l ,~ؾݶ"Me kSY4i<:ny)OՆ҄ pjoZDud & 8t/!;}cg/t=N-Tcꍂݪwr@ LzX=?&8bM8;n2a? BB~XلMkM:]L2?XN_jo7U iZP#S02wA1K x~Ɇ! ^/2{-DluFC9 $@ɲA{f R= ۯv;QGQPF^#k.*Vs9˜ˑ`Guة ®`}UU'Yc<@ItL-HCNC\"u֠}0~oe&`jvbm;6kz_ YoT#Ųl8JcMΥFט1a,h!7ߨD7DH8ݡzT+IGp V] oگ׷ '*)Vk{^-R3ʆqIT:1EQDXyT^j}VTp%(q2EKxCF,ֺ_s^7&EĮ+2,hV숓pE|9=)h2'3`R^3xgNHW;Xzj5jXݪN 3D4Tjkaw}\= /dM?HĆm+L=U$(z=»g>6~ʲxBl"qtU``%l˩bRD}Jż- b0')[Kl?Db3n9a5IHs 'f>< `WWxgk\MzEB5KBsA52'R(ӓpFNِPWoau9Cibhu_a}LXi=9KsWS!s<{{ڟ"F!#2Ս@:r*rC"l/ *Ez"@dm#3>N3}?a(dƷNc"6:$,(#q\d1WeR"i}])ѳ j,[iKDALՒjJ-0~ ‹ #F©Tfxn{0uT0AWI9c}AF;_Uxs>:)p7\%(]Qc]&ϸrF!fxyOQh|l0>*X)=|!zxu~"Ge$Kөg(kș?%6w_/ ނFWs 4GjF]vVDwɯѺ~4`]M2d]Tq-pS:=rQoa`y`TE*3gC(/! BE0YdǓѵqJ8j+<;iLFGepef] m)'ʓ5bT5ʼnOs&=3˜*'ZGaBem /Q G>X('CU̒%KZi2-wsӜF/at\OБ\aqH[+3Bz[d\7@xR)0.X U`~ #ͣƦM =ؗ=,, p=rIy%Jd-ЭUtI9 /l?yn!TR% Ǩ/Hpn{ O s1B}Dq"TZN6@ 7*^$upn evΎ9#+y۵I3v&T"쏩[lϺ4 /Y# yF 19s? u, ;%8ֵ,*O^ΊV׿ 񖗖nH̐$MWA6(7=@ɴn^\'N_ucsɺ/z`}..;i)@NVQs=1n/16 uF rauV4'ofS<0\fYF3 _*u;l$Dh:Cm[K,SJfXvf59/Lz7=N-w5Pr`Ik_UixZԕ1$E?2)G8H T Kr, +`βjbi~O-d974 /l⏈jaqXk }gZ7;uV%7jX%-r vK1}&,8iMOׯ%#K/¬"y'w+ HX[穋 u%/\URt8PKkx4+ѿzUH}efV&u57CágS_Xɏ2\+^RLý V?K y$ФmF0{l%`yS͉fm j1yHl@RԱDBO|^NiOG"},N[2[ a}RI6t`x XdLaW[Ht Ͼ:AN0㝨ӇKRNl฀8.qZIVVBvI5kCc9Xb}ᘏDv&i+0?'ٛW~4E2NB$g55j'b̏MdæTN\c kOElC)HE'x؍k"U%c4]2P17IaSi4@0/HT&flP"qʏI `|B^r`o^RB eVExNQ}qj4عJ"(F"^nh)mGڦ6iOLW(Trfˁ E]ktj,W>Gb4 %x1wLY/ƲզYwA>0eǍw.)6:0`Lխ̨;aq;NDcw3 0kK 7X9MF,2e I6?Aɩ'`@_K˵cDS5M ~!VK?Ѿ[ZU;Xp]q.,o{s'Ƈ7L1vpBlN`oN#!rH}1a"u%۷\if]( @20ya38uscaT@w#L:"9:/8b K3+m,zW ]*KV$ zl'3]-hP$(*d7ua!*޸BL~H# .99FXLo"ƮAEX{'m|h(Pu=A4‘VU]s}DQB1:A2I6,{J8OH!2o-!I]P]lԃ71?~I.B*gV^ѽOq[pr%^8k %%ӰbHEw$c5خ!p,W3RSf-cYe+J4<)~D+bbR[D sN9x-јL8J>}v&eAw]Zu^l_lTnLG#mW1Fjۉ h.q(.O#rZ| pv'Q÷u-iG*ո}\>}x|5N=B>KR㷈O F/:'I;BжT!Ǵ&V+*@_\?7)F~$)q%`zނX4bWH麂w%pAiIeDhŠb95!"uT`^AaUo1.A罁391sT(TGx#RbmL܊b><~[6F؟ޭ${Z UOμ#,U73DVЏMͶ''Xx0b(ƽ0dw0Cm<*QjPFY#<F\zXeI|Ӆlv=O "fs?P&wCEG͠pofV`87ʋ[Tu2--9Ջ0O99.CXR~/ Z 'ŗf9wHkBUo&0>CWlP?@'e~?Sz ֘ecRm'AM] d+ide0He%tD)l.R;KRz:AWz'(9.TWI{cF+HYCG= --LF˹|Rh쌂 2eXgMjPqC~\RvG h;>Xjk4i~uRߜANYFpZڻ_ [>!,Ǩ?eo窺Q Xu}65>_DwBKʒbMԙT#j_,$ĥy'=>|(MhYH};qne "H YZ\3&cu[w4VV YAs-U9Q,S7 GOdUYh@2 w$mԖXj.Qhv `a0nY`3b~Ē%lAD"ɓ97☳!wɕeMIm{Ǚx$Pڳ2%$gcl@lhG#ͧScgf{ҳ⨊⿃FD#dto`B6Pg/@Wժɧ[%G*hkKF.ztw­lC Bٔ iF b6Xm{J #jC}R^gҀ!4rzXênWsE"m &_S\>ꤘ>œ_o(?qtyl)Õ/7!] ,Y!F5Ap_hbe_餰^{$Y ^4.P8 -t)^e$%+,k7@tFsNeK\{1Ɖi 13hM,?<N>1cDy >⢔Zyo*Z*0لHÂ( aBq25I?ۊ& _O\kc .g X;裥&Sݾ5fWO~u|i3}ݰj|lhVx& ,FZ 0xR0qzIZ.C=<SsT 쟇dj%D+ryv:V{=kUm!Y!gJ0VbZʹoeog ꇍL'Dw gt]'rNm]yAs!jULq]z_jŤ:ǧO7O O^Y˖(@lSh j#r%ŖT?5jl`-)5P^LԠ aX|SOa0ԦъTӎ/Τ[ Ҫ6)#[0%yKhpn}[5*H4[l!iNjUjg|, 0rY>ȧnC_[mlG(6Cθ㗅lvj92J6U䩸=ipf zDJ,U \[F~m敺 6ȃx{}3&eHgr/]M+RN8IG{űH]93ol㼦B([)cmezf+ Q Qؗ^oߝS8eRI8M;֨'Yi.5WFgHwSa%RFg }3$P٭PN݄ E礱䩀MքG& MTU'"xDd\Q+懭ݒg[˙ٔdse :j!萎RBGyɲoږ_'%_tЕԉ<):$'"^EX1͠hTwJOδ MI" kfLu{7͵x%fm!¹vm}5L'o$h2I;TK= 4\*uq{遪*^ 3(te6E9KnщW FAfy<}[9kZ΄zD/(E*zxDXYpA(Z E@FS5KR͌y(ԦAyMUT|n, s @|w0>' 8nT1P`1|r3P:e&j4\w͞246~m.2aצ [V+u|[hГwg$w?z{%UɃ 7>nu-uIm jyPLy(r;_viS`(1<>-s`NClMQ  <&>Wqp|m ·ֲ/m[˼{;=2xBw\iUOb; /&p%D@YfH@;R@9G%%^+fPVj}$|HCCg4[gUȷaX(T{Y Lͳ 1Q:<>tDTTUWI:0S~?q1,JU.4檌 gҬ=랼FRꩦ }e[aFn|3@zm!|0nޛ&M핗p[ i)?.8SBk&9\elLvy H0OCk?#@fHSrQ~'(RYY/]'9}[qipTc脔׺t9pt'lODe9q#Ti{hJSB7W=ȸUygn)2 ƞxAjBˇ{BtPMq(Pq/ae\K=yr51Z†dVކș~ź 7]sGn>Z;YnC=R R6IA?[1 _8o̗Qi_X[8%z`Ѣ ЕϨ@T}=9 mNkeZ3`g8rkv>aZ2o#6#C|AcLg}NIp %2?QԉI659[A奴![5WVu?/hҷG)y*o+vMfEeylx<7?D!y;0Xh:\7lK۝JgS 8e8"wfz=lQ|D\}d3*'eDR&LLn^Xr{(451%7|kwI#Yw>hB-J<8Op1B4'J"3`"ͪehBEp[:(ّ;<ƺvW0Y oz鳎cC݌,#c.GlcJ4-{a~{;OE>a.C5|N{8'yq0(HwOWӧXOGʲKjfKl\,WO"vb LqlG )OR9Fj)&/;CK t/,ӺT<wY70( EDGVGB=އ+^ ElRs%r75d%(lMg<9>tO|o_}֣hKn^71=}BvUߊdm꿌gMΟ<_^5&h%0I_Mh]փD2$wܱ4gbJ#N*$WcY"Bnr\k=>݀-LJM"ltLIg6!KKH`/'X ;v.8;uS 7r,  N:5؇nFIb +AhpGP"!`2`y]lP,lVߴx뢽R5 @o/g 9#k+ |ض2=pS79O21X=$Ԃ eO3 ѫїp^EۥFtc[3Y54!< mMZ:*:> "֕&? Y*aUlDPHN%z5(A <JA0ij緽Y?-ߣV˛x*]@$j_ڼ:Jޙ > 0R:'yJy]S^zc>ŁPK)0Is)1{wwn Q^ězǑ_`VђBqd4WEI2v=AE¼TI |7Pۭ($?CuGmh يkEą1\Zu@=ܘ0™ZE7XcrXfȷ>}Sp?EF0j9TCI#'[1!L&} 0E$ۈhlȆ}9y8d ʢn$E@ҮE# .:w#y^7"AMFM09 DL97-B4 /}T>߄ZB 4?VەB^d5+s]pzsXΜ[J*nHx B t.܍nwMߞb2n(N\/FmbL״h[(ԑ,SJpí G5DJ6Ȁ@C޶HN:/莯fjjy>>!8^ 1cI([IC/~oH1T}4R-Ztۏ1CQ 0 d~T\xQo'xJb6'iUDEJ܉p6BE:$Mb:Q*kelu9?ȱfRWvj 95!4\{bnExs}؟C”+ٙJLY">#9ewJf+ u`  ~:x[ i*/w!J6w1(T"x֞(XArv)=WABQ)>mn 4p>9M"dkȶE^f.N " +~Fҗ5"6S*Z'ښ܄y\ra/o˸,\U"'CV9oAaɐߊG[o5T`;9ro)qr!)yӘe5I2VQ3AL 7%aog^ A730_+u/r au1u]ʵDu&]Iחbъ? .,o7vi4Yu*,M OUtW"!P5EnE,3i肢+RDx.DDDLI_L?p'KJrfBSf'qGQ:_zծM@jaUe%b& 6((z]&؝ʳǟ) |r& v[llxF`#A E>]m1I/ auD=$;8|K>坵٨ȴﭾK`f&)@4Vj,9t?b5x>M:|#[mG"͞;Kkӎ:MAUV0r30o=E3\ Qr'yr)`Y_{ eH0_Lz^#wQ$ o?'}dg9Qƅ6L']࣒!btu=% )ؓH4YVőV{e2w(H'*ԺI>^d5rKU-gtA@OX_ݶސWpA ±ڝ ; q7LjTaƏ}ot*S^3ѱ\i1T&vKFQmHlG1El1i.0R-FS.G|ȅ= g4 (nѵ9+B*@a^5CVpNnScf-:-zB Y$bwS0?Uggld;TMmu4.eelz龙/^Ew<s \MG980Zdlɏę p`˨%Ҏ|%L=;k/[W>f5 b(Ol_DB׺\(7`QqjE;\C%kBWcYa\+' y`uDZ/~ՐO$Xih|M)9Gfg,1>hMKn b_ 5 RsSƼV݋YXhCy8,W}B@ j3 <'#SIgj`pF+N3dIv$j2gQU0~[JhWG8n+ oZ?|l#_U.Z"(<4~z"RE[hٲ]q%M5@ ,s>O0 p~I*&twtpǃe^o7<\&zWO&_Yi/l͖@>YGzN\O,q+|!(Ѹ-MuS c{(0 8(ǜ )O*`RgS %&u%μtWF,H#ISo]jQETFT(pf`6v>Y9do+LQ7ݤ'y1#熫ϓsی:#kS\%۶֢tsAUKͥ\ (;iYBtCc۪Rg"O~kh4sFC> Щ1tRz;Sk*~?aϸq6t6vuiC9D]v_53X ^GBpkhzty| Ѷ˚)rNpȑ8~**ol}jTv[Ë@ny`?<'v?#M$Nor~q-:4)Eq&z !n1HI?xw7 pkb {xIXfܞtC4&tL֠@߇D?0UkeM$v8)Awk®:q-s:+Ρ7MHa( 6MwkI>io+Z-mn+T+E-eVʢG@@hl5bmhك~ΉQC8*g4a4cc{0?T-SkqZshuwU b%8@dc)䜢RN{bEG ,,bo'tZ?b榫DNJ%35tǕ&)qiUO]OSu%HFVQVJ\5yd];_ K?;":~|j$T\jR9R;k$E`o(݊~ B{9FIX*L!}E%,#:G+A,_+@[3z?&,M(//ԏe7k.i+ܲ|9Jf4RlXJ2Ųxt!$Y䖣[w]dڣ{%NZ} t T(Hp Ft{S9qJW|.R?BrjZ!c!vJAt  |8ӌB~R.brE nZ#q77|mGC'LI o qz'"&1O | O;y@73;M|NsoҕE侧ڪ@i+? _Z0;<4_ko]љQPOE +ˈ$J +Ѭ5Q~c: įZ,*t1k` 0O4#slʝFS(cL ɯ&@.`k[i!Ȧ7uI%(D` h7v/Vjܰ#uuOϮu׬:VŬ?2_8lcyixGi7A"1A5JK Ԟ\f17EFk`A]ʨ.y:C *TP}*늘gi nrt!9lG3O++IU )&8 }\zÜwǡQ!bP-?th2<^?xpL%:# ONjCu|?SK}6M1FYjiعWH PeFY`|ikaN实 m+Dj쯚?Xr3UC+ Lb#!t(H3DKM:aHWqr4alT͎57<  y V7 3)]l9^_WgpSn >g0_n,A 9+h0BP0Saa-U3D:Q,JY)}Wήo B9,.c,Z[XS|&-jP3MLѠ*=pIkNzbzM]X 8=)>1e!0$_kc!~ePS@@JXm̅Qrk3vMaA7 Y\^ LMp*@cn|u"s8%KW(~_V|~ I !C2M3ެy2C/%Y Ŧm G rK%M*%j(۴%U> ʔKө*šfg6 oq;1w *<ӄ5Cp.ʑm /M*qJ yԊZD-K7IȬxF,*e |T8/5dTnb:`N y0/ Eiͥ"©}BzxAOQQx Ws@\ {]Z#1o}>#wgNEEK^4bzi;5FJy*q~΍`XLr/nM4*e\61G .+]5ֽg  Co{˔}T^P91(&*taTl@㔤 =6hq[ D,m?u^e8#tw{r4qD:,]3Y6-qi0OƳj7L <(韩W]_X3FUɇPw{u1)?.dZȼ$SIDdk݊1v!/1R֭}5 8JDzrnL^!lZ߾xkMjiPA:p+p&c'\a7# 2&z0uWjuM1zJ4k8A8ͣR2P=UFG\ԭ_`cWO]#d#𷉔U6ǘ멇S lP};['E:Ln7M s6xc3wU[>8 zr@hԿo- ' G+Ya)&i~4)+m|(&X( >1nIHCsH[Q>-*^Ϯ ]h7Gs&9Xf\I)d=NiPÿ :NL RVtA4;,%D/lⵒIzLBq+ aox@X &(@aj "`[d bKVR/G{H}e_;-}xE|k8 T& p(3&ZS &ryUc}h[Ϟcg| 6,~MrVs0ӭ @yɀ7~4½"'o TE먇շhl+Z.hw?n;;pn+8gi20ɘo-f!ˎ0v_CeYh %'=j [;p& &^*ee[\ByNS^sTf@/+MHU^yf[JU2#Jp'BxЙ]\`2\k^&跲ۆ>;"2^WS1ăoV+&eN_\ju=kl,{M<KPd'IYT c O$ i }P:}!Z#yR{ 2p]= 797}AUٴ̆2& yEJMYCmlAdU/*^O TJ6Ӱpv<$'7=<՚jZu5=&=uD*!*[P+[8a[kJP߷5QQhR bۭOtٹ %^ 2YQQ߃d=ܢkf/L{=Ƀ1fD+"ET1T2ƿ*ӵ *95߰4TfSqWlnp6ï_6,@v}*NG U`I'l,<٣>TVWZɃhZ1`(82O+v6W{~z};{JT3RlHبܠ3bat@CR ]@L,+MOh+aRtF>b.-u- ۺDqTvS^LlWT*x#j sqz\mҨ稩xٻu0 R[+Fy\v{ZNr:`VDl(N!+]#K6mkg(I΂4 N@ %w0\6Kjf4z Atts@ >c9#%('xS hQkbF؏2Tv^_-'*zM@G `#oHS?~GI` UDn+=";0Op?Ġw]~c5ތOTE:5iFL.it }!~|3S9 g*pͿOgK0>&@V,]mr>!!WB "W7WPj'O7Ahr'ٶYx @sF`BErK*i#J"gxԠM y``wM2,4%mv#NF{+'Nݯ YlC^cA:? 㵩$Bi8S I)I}Ms7*"I'ךbeOl4w9l!Fɉ-~i+]a;ݳ&DO}L go'3'~6].v߼ W b6%g n/'Z HiEV]*ivxa&̈́"h1(O]F)PԈώOg:fg]L3=,"TVSU?ҪpF [_˲^:xařZZ0 >=Qef&@`;\z)mvM lw;WO{wta,Gkfx'3sk9a̶@`#/,G8Tztbz JyHpWbj2ea %&lИYzdlWCCn"FN1rz=4ܬﺘʃT_sL(=LϭG[{9'tfƨQ]ӯF֨,V0<U>e;m*qM`&vc)*=@1fqOLq(ϙ汿gODvP@5; 5tό[XCJ:6oX900B}eJ9˟/$V]Hͺ{jڕȨLmiHS#i7sjByrxϐ>49% k)*eՐVE [kцnɲޛOih- nz K҃v 6Cj)fȦFp=kOczEW2B,#S)cr8q UeIQ/9FBg l]B04-+H@5'3L i|0]Pz-CcݾܯXʬTUz#84ȿLB6V|0mqʷ9 WhUxLVVQ##i#CiS4cJ.6?mqGNhqӔ@\&O;2FEtõKL"c߮[ĥ Y^IF mFҁhԡu -}q B]d@7 痯dcY5P$`?:#{5(p~@i5 G'Vu[汭Xo"$|3w865?r &)<4d[F=ͱntE49Yn >|T;@5?QDC_s4$IEھt^"cnϬi#65so(K\|228^l?O4J@SnqX7 "f%W* 6Xt= ʇ[~Glu-n d#/UylTⅧ@dj>kPL LP@z[%M] ֐^)nz{, DVzτſ a8e];O&u4٭VjY:}8\woAWjF@YũAbAAb%ҫTb tudKca[ "#hceecdڼsrH/yz.WLl JlKJSe#Uܟqh|+MIk1~ݭ.b0b྿$Z`@~c|$IïF1x`9ĥϹabK/í!.瓾' <wVA\˸$U:ڪ='Q݆L= vd 6.5X)4"rJm !,>&ŗYW~ccaؓ$w.by)i~?1@g.]:|ĝj3a_AZ> fե&(Q6W4|۰[pBL@]"ެ{ uaNsC'{w'K&7igc`qͮ, &J<'iIt3A5ɲ^SȑRldunp#$E(P@0d"ƀʳ-!wlK/#~/Oz{o^E#v[|Q W' ܢY G W)SZiRx;%[1T^l=Ʊ<>q:~ǖTX21,!l[h[3OBPbEpҵʍ\AOn1e VM amk8:_%6P"1~b–['Z/9w}tRC&i 7'jџɘNRˎhg_[2)V~~ջ\֊tsP"o IC-|TY4s6UEN^xmz犕AN-h+88 =.bkjUBن Y䂞g3gϊl=(7d S}OKRHa)tG\86Ee ytLd!},gjWl)'aΩ [cj] B=}VIo͏ePur;J5/chZޱ*-&ޔ4N݈.,n3#^ 2_HJ}FДrPK'Ø4In?#\T2K &%ar#_  o̓ogm.yY[LNͅ*CHDJ;Uje}E,!Ts'0roO ّ-Nxf#124 P`kf&QTuCcGh!#fD&,(V!|FxXN6tt%uk-Q&-} |WKU.aN`ɓ>:JZ=`pY`__0q*|bQZ,YI[PtMh{{scw&fzW4į/Oi|!SC"94N3ݰ[ #h;U|*eU ףʝi6' O)V|sNP4507[*"ŘNGםlukDExQT |V@"^tE#Ҁ/3}ȳ rVXf*j@gFj\d @&y6ldfI M xtzuk{Zt1sn3EZ%(*Y/lxΩCx kcgKxb7j#|w24 C|k\{!.!@OrWh{l g_Q݁SϸDxG65EA>birIi|lWx $9/}{8zdt[^d$Xt^~\>K}TmMG?y,o?bMqd?,^6O 5ŵ]GL/dUjII qߑZ5ܞkQ<ȩ:{{(dU:d)KMjAr %3}1,دbw/݀$%J9gT2w5!{KR謔{SW]ٵ˚?i+= Jttve-Vz-Me+:n~h^Lvʍ]SQ| 8lJS%eY[oX1c Ed\>>$· 8i^@*-x#ܿ[olһսȓlpyVf[22=hy<`ܡ(-3, uE9xh4,D M]^#ž.fAi(/KҦlt\oƥS|LL,<S*Oq '2Mkɥ>o|!@Ma7D#v_ VxE)S*3Z&r+<&}RF\Ź~dzd6ӛI [Y,Yu: ̒(EX|~ | bU7A\6|ܦ K"8m^f57!);IG# Wlad6-|MH<4C$ 6rՃAvЗj~>k/*D @Hxz`U ަՐ 'VdBFQl$BD/3Vm#O3ߢxᰪ+1Y5k QRUQ^w\T_Q3y/r8sDƆVyjhS[䔪>w׌mI489 @npmVR48iZMoKXKJ\VJ>jnH"V<#mҼs~8MDSBW O9ΏLMz/uVAq 62c@u,3 7jir--0X(.o9(6UՓVܡ6FX#K- \*KB^t@1J^\htVg_H'O^7 D]'Ks~ #R &- /RepH\2<+nHA(B3鑇sa['T3f9akk"8RRkWpS];ˉ%fs^"\zD[e vҦ>5̧ T⡌^ݗ%خ˞o>Mh@2ىY8u?7!EP⾺~"Y%a';s8N3,Tor$8 %Sj7QpB1C(mT[lqk,y_nTERNhh ʡNjbJ=B]{xȨhLxܞN~ fɖ֟T}|28 8>R u=+J|8)F$ծ{٣ 9ҎW7(2OmSBq3Lf =%D:5XGCQ#"֋)DR$fZyG(o w@<.I6䑱+n`:S }/-^Jg? D#)w gӪTڽi=b#5X֠Z[[߲̯/cזli\;qD?<޼).`㜘Zu}E0jӬxԅXcͶfyWbE| $RX9\t~՛!QEq_+aE&'Ee@}[tP`Wq{eɊ\`"Pb8˽'Pa+Ěrac:ʨ::>TM#_CqtyBorvv]r6%VZDHYPM"BAuF,۳"mK5yis1 MiPFQ09Ԫ۶)Фa7x @+seAqw[Uvٔ~x?R['6xdp. 6oIڈ;ڳ١tib( _,uI= OmSLCu^KpM7D W7 B2C+j X?' ӆZ-Xb;kb@De}N5#5U$j;P{ިDk+lE[ $akvP2!$[>at3l8W6/8Ɨԗ_kc >1J; P|h]ό =f!󢘑vt%'$(F+lRzwi*G1sJ#؋dˊahdlgg:g}*ƭeeo7D1z-?c?sýŀ̃(TϗĊhEF ł&9]x|W6YXcUjhY(1|1H¼y[?+`KX ZK%NfOhAK8{8q +AT8Ǥh s"ڈ0ȝ/OӀm"vj *OiXJp0m(Ü.#H{5&ǜ} C쉣M\ |R`DMY "ӹJx]FaI |hրgr9Ca`F glrc:-)6h Ww OQl $ʘ>ɯg0!vE 9kV5=&~ĢiGU"\=%3eV8Wzw2/bhck()[6IymQvAjo-2G5~r:Tirv ꧖|H=TϾ 1XoP܋J5z %5  tdWF q=ʥ(yh&@aH5 W39Zv[[6f)u]yR9 vrU{<b,rz=)xڥ`NJzɢ#@=^BzeOG×o%SD@TxcT+mGYk 4~ j1 F\jTŎS4a/,?3 r+?:grI&g9Pۉa `Qks(pd-<%q#%Q"0g_<]C(0 ec[}KDɩ pp؂fl6+zx!3^}+uL'XCDI^d 5WZ;`SIHbNHՠHMU V koru<>RSv}QÿL-IZ&Oz9('c{w=ܲ,IiZuI < b_4_xڟ /Aw>NK|$&5 TfjF. KMG, \ʄ~b4yK>ˋe9=]_ȂeG c2v[ΧGD#J>]EE^qM/A)NaA:(FJI7X{$ _Bn<},$ ܿUzMb[ y`9<7fx*a+x'66 0܇46'P9aoRĂRڶ|d5T֒-o^nNH)Q9viSrBtw\7-<*AԐ\ ɤJr\6$Aila賦7gN/RZj`Z~"Hb߇Ph˥Qٞ>)&O؞}SYMU&Tӄ̀=tP5sXLO?K՟{A^dVnFTL;TG6I 7odf}<юٽiؓ~iѠhߏHI"XR2>],!˾2 m4m:iz`yͺ~ڧl/L6Tq!mS.]*%1S}.lif(9Gs}Sp U̗D?c1&vڻ-Qg$ Xu׻h|/.=?M4fBr9r+fmB?q/8p9M@ \4oN/2Rt*dejQ f] kl9\Fj~+-t/mAeLڥ)+Nl'2NHrUC"$ y̨&%`j\ȱ!_^ovT&UGsd1B BR5LW̕S(Rwɪ:)ZWOrSf^~''ZN+v4mp!cpeКLb'̴ ް!k|Xm~̉Č8 ,5B=-qkw oYeHZ+@2+h/qO4 f)ܙ$Lp垎 R7~B\Hm(zTl@wy d4 {y6ebɛ@+񂟻:@3^AdGqyoة  J<=*TlUk8$N`*߰0b2*Z]t܌<4*S{<XWEqtv )laZh_n$-r@&>0R,o9/dUL]Ɲ*vO z];WZc\.qŸ @w:; }qAZ%0%JNm0SyFX6T3B{VR1`E `#52p? {Ω _qN/N}i]1G-z7nTiD3SrTd~d >}e5SzV6k;Lv},[_L<(suS;My= ]XcCf- . oVQgqAw42;? . m) ^ӳ̺ID{n0#*yK'/M!ŎGHZ@ wEA ) Ա -=Y*7eQCDy\`P+!yfAahyJǼn}f t٦n= "Z ǠEKՆD߅` T!8I0TxAcɌԮ}r->tV)l`fq\wzA>)㟝Ҭ-<xuW'CWO?L,k XIAT;\M]Z DqRgM~=FF 1M~ܪBpU\ Hm" >'֘<OZ+{SQ)+αhq)ۊɐ3h0;B, IʛPJ6­q3ズ@ ݝE!n8+EPPVnI"Dϊ"rX{<;T-kt*Pnr?inIr}W ꛅ bk1&-EH?[DόcxIؚW s腋*:,+kAm?ղŐ;u)L87M!uL?Ͻ>NXKsAEH 7% b1)X0ă $:5vnng:+ƪ63c꺹B7F31҇{N>Ԃj~N+r5QcmɦZj9OpY.|6TC"}/m^'sẆI6i>#5-j}>ѕM7K <;0{ pe!K"ۓ#=0R bT#e1 Kf܉KߝKMv.L{ | zzVK1eOlEɍ ̋Q~fö6CDȹH jH\nJD!x'mzvc[F+gL8@Zs^bue*L݁ R2rՃ8 K؁mX^' Oʋ̈́IXaxύl"!MD'GcxVm#Yl+l=°Lo?=F|^#[l {;;vDc<& ':WOE#EvvL(W_=3uYt% /pWٵ,$Q*@jٜb~h-oszJ{MCn1E0nm圯oDH%w'A8^΂fn <*tpط_t·ѓ{;a,F|c4:ΝV;$ڲoף }S ;q p&K<J#R:w0O'o0bځ1?uN?uT`;^!nwp{rz<YJYhj.L~Y<&qAU`!"E/(Hջ]w~+1+67N}9 'D).=iJCRRH=6yRoTYe $іX6rt1N`@}_.B4,VĞIc^Јp}FѺv)ЋSX/q7Y+!l<] j[$FR vpLQrpH@ U|p}ۛD]:uKæȂtFH"˺YOkFN>&hԚh6,q^;oԭ쳪fa:A@ )TMaRHjtfǑߧr罴A?q*r+#"l3έ?,\ేI>MfQb_@-3[ :e oڏY] Ju? k<+<t\@1S3mqլܰJ`O$/.i[hB1pm-e"˓ƙhVڋ=;ȝn+ǓFFHP]E,,vq+܂֪c9{#Ŵc^N;8IpoXdWgf 2Dn iAKsHjE8n`fͧvDէy8Zizz K}j^ۊkcO3 M2ө)˫iQQidE ԻWMIRVɄz7)!!Wr}'Es^wU}#Jb, >.h>E]&)*4ed,;79+C/NT ׮)ZB gٍSNf? )wS%AZшQ2ŮϡGXy5OϚ NXGe:iE.$8-%}Qn/gN`eȖ`PSṕ24MY< Ժΰ#)#-Lp.T,3y7ԽzS£T(9QYsI vg5K&SCp#\Ɂ;\ |fc?pKfv>N6a1~]]g !B$Z*{B*0rev+G"r~,Xbi7Z*8B`KЖ:{2ן> ݗ\~JVpRN!!g)WS) ,?0h >tUyJOb+e,S`r疡pixJië[( lv=kq+FW^6n]裸|XA[,~K͒UP `c */cHnߏMM6CP7A>xxÅ_0s.ƁIc"oQo54vMX D;D{UL˩:{VEs`GX/@.roAґNJgt.yivćD[bjx߳M;ۋjjpv1D&oR ۰@#A=#ήZiY[J |%|7'NOâ貑ȣɘ=2_cK k!4"8'Xe.k i*dNi&R$D bZmzP)*Zd8_MCBS2>^*ǍE:oIx mQ8kH cIu*^Ú$V"&`SMq0@h[6TVW͗ yCє6k?,ԭV9=`S^ݾҫO(5Ss2N[tnd rǎ,?WD_͌DBZ Tm>iaQ$}} U@LYbc^* !Qs|Y"Xϗ9zeD#c~>MF ٨;b^;<Չ(+}JSSHiiTПK͎W GF$V7r*Fr-}A\Asv+`LEf6p)'+؀CݓW1⽙/'_w^ezB QItxz֞=ļ0KZayhH+9ANE' }QU]QUijv%H !IԆ䉝Bϟ@NEoTIkx |ΡHv,G+% 5Q# _JQ^d9/_P}Oۘv w(D{cSSH38D#ݤ00bxLYXȘ֨EDYٰyl3S{ Me'T! :Y*tf#٣R2v@Œ61,Ԑqpƃkq| Y>N)f?~hA h«E4&.sʿrSsCl~|:AᅡՅU#exs Ҋ)S|ByCߤ2#g&a+}v|Â}BkKB~[&-Q?' ROd]~.jD5BiIm2ğUn1'j^k$`άT'z6ۇ3v+翢 Wsُ}K$6`Tm>`L>^*!37 i}!mÁҸwC/۰8sp4g[CRTmxz-eChw(s nS:6rn:X'ǁԟD @1;ǔqqoYF[Rc;͛-@KJcT޺ ]#*ΚذHʪe<-/-A^'t9iHY>o_ 4햊0}bFj(9;2Twh̴ u 9d 0' kbr}5/vfZ-0ſ%d0>.gCش7yPxS?Σdzrs*`2|gHي*/}VV}|DZيu+&d$]2"#QߡH\6K$o95i^Ҧe'6"e?DG~ok k'fr6󈆽vgceI>yVV0)8FFs:!zr`ؼ\` 3\^ëUxZv>s ` 4@,tS_]a68! V~+*fkAm7'3W]Z4oڣl^U?H~-z_<9A![S.s V68&7< ĸUbjtM G{ּ1>ys{scP]k`UE&/55W.˘^RYM|̑:bhӦu/8 %Z#M*t?T2OX!ebUēM :O5`fW/ q`Ֆ=ØFVyt/)NB<J u {  X//C1 wҿ(N,EZZUf\S4 7zM wiE-C+0v\A0;W~"g9prD $ W/nK^&GSSUVTo8si|ʱ% w2䠖Q >sX`UrrlD &QkKUџJ[Z"v֗*v3nilUO="AS*y qAZSgve.J9 1H4G=G%Y%"FL :7-D:@~ yV41 OIܑʍRVt7us c2%ԨB&ifv?N1ME-߯i MRT128Bq!VZdȁL[X}*]2;S0-3VpM|lyzj:jdNçXTKtJ{= U\;m]rψߺ8eB]zRNՊ:4/ŷ h%)&ĹǬ0^rw:M.39 ݊օA~J0$pLeVF%"E 0(Q}&K;t.`c:pN q$Ђ?ɩlTB:3Tev J8rN=)U}$5UٗoQy N, (Άrָy2t޴Uj` zmKbE#W9Gxwup$e;{eHU C ., '~o']V)gzk#6Gw4)I T^aQCw8\qJCi'}Yb i'p"h%vM+e1h}+,}$"sktSݠ5޴lWn;+i2k k߸tVQ [W|fsy$+cE-z#8x1BݷԻvT)C{4eu9 $s`po1Ոz9iV,u!4Ќe 4%Wn"ƘN6P:^EI.Pr y<įncDj5xB 8kmD)Яɖ@Šy]6YS3ǧ_P5;Ŏ9xٔùF!ejUwg *[Z!ӘnYT[?`d\bYha!kZ6~^ndeQ&gPplŃ5qZܼ_q{XKB޷S{{A(w([|&&H)qK@:sڪeQX22viF$3v-f'n3 /{0׉$ v *$殽!-VcT oKkmv ܳ<'<;qz0+Dǭ7uo, 43}Ѧ!!zZ _1V䲅Xþq=_9Ⱦ(>8xsW}5/Y&fE~ Ovv֚ǥVNJT>S0MIa$״ckn>qHq.aKܪb|emP;54ro rN 9]CB8:*ox.T!Q(5,5BHwadG8*9/ZYAנH΋LE8r.KJG_$2.ec'#c(Wp>tQ,d "۾xCFU)/IoXM#dj[o WlvyW9hWMe@q>MN8ⶇ1.>afHakǪx_u}% Ѩ'xH&jw]pZ2pdcC_N1\Fe"Af>6PBfYO ڗ5bHھbԍ×~w-97Yd2P"rewb^pR}}HZ9I%|:EԷ ebŔ>(x, zf%4>؁5VfGPio7O_80)_inii.XJ#fd%IW`7LG+oghxBli.Z%)=gG3Tu4r?G\p!;K)k Pd6}Z1m1{zmEgG$vCmCf$ 6fv q$u9t%՘tMچX flcA6r6O$$Β*^r?!?C2@T.w4jXp?v)C#]#2՚5yt: Wy5}3gI )e/g*%Y= bwRyL2}~O֗j{c56HgGAʥr) bE:pԈVF-*nOzF&;ãy?-[O ĕzcB FtXJP_胪&'iJOo@FuH悟z% u;Q^<3;}Qp2 GZL p4kVr+ R^1FhRCM"~2_:B8`{5}#]4Zy@ݔ12 f`iX$lz%<<w{%VU'ch,e\hly(,$Wۮם)x_bBޣZR=8jz5[CtL,;Yש$;moV t9Dk4$FbbcduPM,r q缌ʵT2 hsF)ڴeQI)RƟnA͊N(JJ"۷(*19;C1xZ"lU$$hاfTxćPCm"3!;iUhT@6"_-ESR _9B]n{{V) о 4xE]N10sbJ9mjH5\hsuL .߸fhCT{&лGڮNq]ؙx e"poXIp bHPȰ¥x>oX%P`b ^zGE<3gd eg/ ($y7АwO/}O)QqBg}TR%(34:R3LPռ`%Ͷ}\ӓk@s!~!a$ˣ(0Dlsx.KͳnF ].7^3еb,g5l+G4ZsD  { 2gnveI#>j_BU(3!!Cuw^K-0N_6ɨ&sQ\̥CvqrfAyMnx=½~rK]Wy2PdRĤn,Pųuf9IWwrmc?ּ\*}^~˨yH*_Ƙܑ˸!W?gMѻj s-ieI2RnT=+QccM}l-˵7iAr9G*q Ic1&]Nerlb[~=Xit"[MsĒî 䆴 I! 2d_)Ln.j2K%Z$vfe63 ˀt'`m%Y.AFj7Ϋ=*^|( a;#wY:[4^۞CVΛI 9xG[ %vM@ס͌8"I_SmE;,SeBn @e+i/is")Vyc㊗*9j.A8?iqzUऄ$,nPtg8khF nLYpѷJ*MU3=ets1u^96Gؖ^" 6Eub񁳙qAWMkZ _6--|/aA*I\7>3hS}6h!U"R.r>Pḃ;݈H#o=C0cuU@'׍Kt.Ie#40 sƢMN p~8PC&O$ʄg(o8#Q]C'P{yU7Im* $g~0!%<40#]n$S2;%]w7ZI0e-\LAݓ5/(?QLxOb`@StRä1b?brYtR@(xv yGķvNjɾlQˌXsRQmOń qZM2C`.n[zywK#A&`,Wѹ~fbR_G IZiJ*{O<>@g3mV1-A AS]x+2?u55d m19-tF#K \m:f9 L.l+?-,sRs(ٯ5T4Vu 9#TUzFx!.]w_8?BCIkɘҍQa{Q)Բg W}>|T\3rAϖ,&݇0xxvg` ^̊>n[YsWkqA"0<vSeE]0m@kNH%排i_\P;WdSKڕ38vIE+Cƍ?ȵFpQ;͠skmyMhceh/jnV2#=*_rO>oILZ9Ҿv&1h=Bdq!Iegb+&qIbPYЂ)֤&V"k{\,&l͗xblK0a4bⷩ`PtZC ܦ8fms z޽e  G4I%4_YhWS.^}#dIoKoĜ r9H:#;pz(0SX<ɱ1"0c|b+f,K֠<EVjo`m_@PO;q˛>U1ԑa.X7J8N!'-:FcJaMUwDQ/IGjO!7^c@Yh0)e!Gt$"e8ȕ/-Vڢzthk9S"N"h_8b=њ՘r1s#-!J..tȞY@p t߽x?@jR8wnEgn݌q&=M^HRbAIb"巪>FX~:]xNe") ̽+ [ (g`Z@ґrpc%B&S@,#<4a#Mo ) uDFY6ܴo!* Hs2U)JMd^ +M7ҵwӋ$[ 9#2OֳQ*Q$9Nq+°KDΪH{֤;]t{8#Е{ڠT5E2t%(Җ;{8I_B0c֣G h;?dƉ朦WMPzt5.>r>ΣFXaW2r*]luWO.ᛋnfg%`XFk0u`B#D 'YӲ2&9UڔiNԚBp,{vE /2:9ez Hjw]ȟFI_6} D&d܏ŬܥɔDVE6cE+yK a c;f< $yޔmChy*'Z4o`=NB9V P!XsBEhgL#XtXWߔ&k6J =ևE xR`VPkMpvLO;XP(߹zTl4b!鳓+a yU]1̜ 4C_Ԥз:]0HOπ/k}hg\/;ɇuF!|.t.jIQH4 xVGCÍ OS x8+JFAJM3<Bɽqi]?~4}*`AqnDjc̛ߦfEŒT| Fi^Aܶ?0 ?ah  ;N8d4Ps/TI4R S&epmMڃLI T K? _| #)_)-,^>,\^^JŽ2R_M"LL4I %H1"jLɆy,++Kp+F]&焲aY^/?N9*>Xql$ +v?[o*(ˠ}YA3.@d5Ӱ]NBB%JېLz[jr?d~4.>?^cߞN7W U}OdW+nMAI*98;(y^|f%>B*?{yƉL6A0  ޴/X؈GyLeQWZBq c5"RsXq qW,9R?hhke/!Q>%kms~~<4×܌4L`?>V Lp3[Q w.? b(i|JmY>UmrȔ*Ɵ)1&=Ji>}eN8˖pO]$+TGG(Ż?@ ph|_mH!xІe rv١, c.`=Thu$i" Oyj&C)uk3Ic"Tnڪ|FhJxV$ܸ}>]~*}RS[+}3B0-|aeTD E*7$:L3OtOŐKZ)17XP!Zil21[Eg%mTKP@x282E8 :дf%:V$#k^Y:As(Jh$IQ2UC&:7+y:o xj$A#)߉h~5/u5"~ߏ v@aȲV<+@@-32j,-e۴bds9A0peo,I>4)GiU/:G9'C%~rE'%?8nKRjfHdoSEx/-zd# *#H [%Jɯ"qhTÄ_"xgP)|o84He)c2sk(6֗D}$(B#b t~L%-6=edGq;ѓ+O6A"~$/ogT1`*.yY#SHxFE! ;/(t2`qr7@(y !0@\2vPhQfZ189N]u5jA_c~3u$r{毺w9!sG}^D G{_Zy6_/3l,P̢s)[ڒqCx 3$H}.+^l,>b_ id5@fi UûPQԫnWf ID)`v_M/:+nm7{ %ޒR)(Q vD#涣Y+).fM_ydC"Tώns,ɉM'[|zCPtae;*ZϫV6~M5+7% Q.JrYBCN! ]~覐(x;5J:,1U*v(9"9dV8ȒdHB^) aؿr˩iraب!oz0Lϟ)5&apPQ <.AHzt *8{Gykdo:)}P5XHC$1gP"\Ƭlyx*>GmE=H4ml+n҅"@d’#͠dOW%~\RW~9g٦˗a?@xl%ԆLѢLFb5,,F~[jW_Sʯ #TR;4P`kn%Fz *Lh#s]N#5)7[p:Ԋ^vr)¿y /gMKHXMXѱvZܙ$@+}9Y) U`zAxMw@ݖ<sn0o~wnv^W{ԼPiQ805uVʕ\Ku 1aV3:XWϳp+$#-|Q3rO"f, 8G0Z ηئpj\uJ^ܡhs rm\b@ EB}fI =9%Ə6PU! ^ 0]+ĖnrKV’ R6BBTQna1 ۵x!t ,iCBa!΄$ztJ|AQw h\tnk®#/lЂmVϴTMz\=/ыbEvǜ~\A!b i2"Qozm}='k&g犱k )nXXr]d*eVLWkP7CPZ-jKҨSQce}ZoJzmåuch{ 2&+qKO.y<p"'6 R!l ;!'~ 򒓑믹q٤{H=&'%**| +>Qb&!niDe@WwFX3>QWFnc,?z$?zݑ3|!*LQG雸!ɚ.g6qbvy2FaIމjlBX4եkط ܠ@ñgEH%^;#Y^ hk-4?@-ʭeNu}=^RH]p}sLs[=쌱0W #٤4IдNr PTSƼ|?d|F77w, =-In^:\f{=0ة#@׬EHWd jKe\O.|LpämϢd0[l/7tvو$T0HJr01&A]?j y^ltGXF !6Hۘryj$a6_;QleGNL8o+]gcYRi3|h=!8-cnCՒD"kYw%,et^xE#:nIYzSd;N~[u\CR=6g'"~]Dm;Usw@Ѡwra~RΝhP,|ToCcgPm.jX?M3":tF¢ )dsc =?YrmƩoOxrF+C#,o LچQߍ+.{ Ώ&ϠbsX7Qř:i5@)F͐@G,6Xt{md j@tu d! H qAn@a'i-X܆trX@UB*6#Y%9nD )wZqUĶP)9R'}Ab ۉ.}Y?jk+zagw9aWbiӬj?OG':{%>SReaml3&"Ոu+); ~bg ,7 !y<ހ=15Lńish-ȩ `;8!7Άɦ?bmFZґ+!ksڛ 9Nu#a躢"cS%Er~$Q.|Ofx<:H&El@U2ۤ ^ӁpjW&Y±%YHxƤ|%IM UsY>&G+qbѤP]3CD7GLw_1U>mP<&Uh-J֑c6ζWu?d)POyj|q#lpۯfI ^~MF ON 1 L6>eՓ+P 'WYoQQl#с oN~&$~;ހ6 ,rʃ41ƃ pS1*OoXr~U;+ .uM|0CטNscjxmB};"< yȅ|@a LÆQ^B⏮+_Z>r&mU@3zN90t㚄0[!7lr`1wҽߎ߳9^3o:k M^,˞ ހ=L{ud~I^pY_& &Ue]6}}8*ℾ:GɛVZN}}mREMYz3)Hǝ019Z|"v!i/ym78]Q[]3DYd^y,)PL/B{%iT>i4 I:8q]EHH9=NiGrpznW6$"-I}01c|A ivo{CQq;P8т FO$nd-"{98.XBL m~y^B!Z" qنAᘙx<@8#6:r@=t Qt%>c0kd(q (ਸ^E{ JLYǒE^6HE[1M]-cNF$9os4Coslߴk9Q: wXLZP"7l8{b"JzE%"G'F@M vr*~43? $hrx t[͟몫 6K]᳭_2Y3M"VsFmfնiL:_o2 (h#J'+fm^QmdAFnͩ&wzqKKJFLd̯M?>K4He&.-XP7B?sw"iApnf64uML)ḂA4VںRsФMPn~RUyr)*V2P=Fz4ϰE:x{ù||j~iOHj f*޶o [ /ia# -+ƎSK;y{Q Z<zH=:6&E[ Z^(y;:Ei= 0k^Ew>>⌸(p){(K5҃i5YƌNza?tu%3y`Q9<`iR 贈ҡ$-^Ge6R:v ݿiZ.[4WMȎ 3@_h,Vbcuřv!N>i_-DYZUV<B|y?bWb#+5EIA_'̫ϥ4E:n %0<7OP5$riR6V?0y2dBJ_\~Mn%Y=KD2cVkN]zy{+vI +( jG*ՇkT,;?a)09pƿK6-xT%Їo)=k]FVU=5!/+V-t/GR>פ:6B/Dk8@L[b'k-`\:V`BNɟ*xNS8zt;Nf͓!_Io$[inBpa*-G54=eLnTB #yGJ6xGfO}uXƳNыqK霢PK{_TLaG˹2,l6O%Qnj@qN үU}q*C%8tx\)/#'ZAC~ce+Rc*WXR[}TW C?8~#<ǂKDۺWB\ cP7:0@I !TvIQ#G<ӝ9g1dmECzq M*\!& q G1GBşE% u.6 Ku61t>,$K;|8Qظ{|ThET*QWg6H.[O(p7ffvJ]@f4χ|4m@qhXf%햳pv:@C@Pf|Hg %cS;xsۜ q^B<^)n/ާ+*$lB 5XJ):ǾH˖Tp1"G&puP1M_V+:ZA7tּ#3fdR_yQVԌuM Œ@-GS+<jtsfˤbJA3Vz%w k*n 3<vv+΋uƝ)Lt_JtaӍ3,p&UE ԅIؔ 9'sj~P3_3CUoxA+ިC,D͊bVoAQT<wJU+':aqm; nYUl`t#8cϽzRmuAѮPiҟeǔ@Wԯp@lT}u!a_sN*.*zX|Iy;Þʉ#_ffd-e5ꖡUͰCvքn) 06 WE@=0U}<Uy U; "z܈/+TؙEdv5$tsߝT*|aw1p:/hr<1i̓Y HsJ}OWiǏS5y-.vPTepgCΜ%0D+hgM -T@G ;m]5Ha+eJ+Ԣ!UsZ J~|0:#IazJHRN8d]qlD1ÃUV{]A,_:rO0iw $ sٟq9 >1o*Ġ6wtRr3DBwu<8QJ`(@cI mh^N@9 KWɗdÿ"ܾ*Zw)Y2lW(9={Ozˁ hU{ X}xݺ W4n#*=xV]X6FQBZfb<.s֍_Gx dq:s7]biH)dVMu#zjib&Չx3WE X`OĂXy/rb+r>׌RÚD"dAS;OdoϮ}vu FۯJkQZߋ+b 72O=3a"rjk8m4zˣZ[}W)MIIJl#3@ u9DR{$Z/clXwԤ~%]+G’k2m_0AewtDJ#q"H#YC l^a)-X.WA]g *- T1fHPSNVV*Rq*um=(7~l-9c7g F y2v $RJ0K:->DJqBkV஘h"Η [6} b ]mqضh#[I~AA"NS_Lr)$rBA}+nh\hdJʨ/+~s;,f{OTe'MIq] OڃM[tWBWy_@eظ"tIeVIk1lU6pzm.bJә]wo-4ô< rPҺ*)g!k! 'O: 1*]>+|]&}Kʡd,%7vGүwPֳ5U1䮬U B*g@ftܺ+B\,D0 Mki,=:^^D."&Ֆ/ }HCsЬLğTΓѧGpΆ=O`ыы>Pk()|s*ߠYTEcw("\#h]H #rw+=xsQ (13c"v/-n(+D ._ >J09+rwf>4sW@:'C!>'?cgr)βS[{/mRZ=hLѯ> {"ƫj̰vz(xxg%'G_>5[z"@dIw 9WfNvF82it9 Hl9Y!q#vױΕtH8.:5ߋkO ?Dqe*z1DvMr ruFe ̆kS0uUB.1 t'%UAlq.#ANxAՃݍABS*WM™~+$ڪAk9dl[ ip7q( UZ2A Z+yppG,N mi bWSyAK'XMՆWPՂYŠ/`CPxAa+Uv߉1qK뒳Ǹ%L&uV  SYX_;W%gT9 趣Y8k*A67Iy5ķ$-D꺸 n‰}ء-l#ipA?) ("0m(S1,%XKNuN3!*9Z0`ԏO7@RWHƾj;5vXioW=ǽQFY9p"X?Tfk3|E%gJA"Zʀ9Vd){e]7\gyA QmNWK)|{XE'hI>+9FYsU0:wU`I3xMeyeyZ{zYXeYC EHʤO2|z0[9] PG"T֠0T(5{{;A`BU,4􏁺( t |@K(2E *,f[n| ɣ3nC'8)mmF7RȷZ%`"5U}yy$ݙD7@)?l@0urLtYf+Zj!\-#BE yGŝXM(pWZIIOkZhx$bMy"R(7h-M"H`&S3q &3ͤ/jp"&` eȑF3ˡlB$2;"g,|SD0}}_ _R b pOeʙcSXi$RIS$W9MTW5DRz#pm=&PL }᷃&3%@ή4>q7ù‚gUunLKc`qح4ʍwE_'pVB.ΒSps={S]%)p~st G&2 .^iTwp9-߯v^r/f5 <ҳ\aW6H_"߅$"%!q\؏oAEmuߎd6:-ʳ"$ r<?}]3c CKI'FQ®ZȳT$5$C5rQGOA{)`fs} oic_{ Jb-@o}5팍U\ D~1ARfj#|BM5TZP_(4*zӵ볼ILj-.ҠrEnOQJ{>4zMD9fAHnO'HZg=d"c`Vj"ڱ& \qчLjAUCi/78[:*1և7!]L`;?©%yDDnfH%]_Ș|jӮo^ c|h,EܱQ^ Pd\AO20\0SPfTGU؉Le͹Dve|ޟ6& 7Q6vE;SPͦp Z$m-Qv?W^ؑ('$!קfmjAgGv BDa<a5Ƿ3hpbB>ԑ|۷3?7{DF>'}W8x5 hic?`lZ Z۰*dTA "gX+9gP mN4iDi2hqG$U6@/›]w;mfA6j{!o9bMsUyGj53px{e R39ٱgƲ헊*תet^GhAk?c}ҁڂ;TE- :I*tmP'GA{ʖ1vn>Dpˬ.u$h$019dW b][[4A֛'XǏ-ՈSM)aP.ӰD UwȮ5^ɴ+N, e~pƜr ao] H^Y+,L#8}xEXtR`u/M(/ek6kQ17F:Mf<ɇ̻ͅtV!9$]_ky`{X;)}6dׯ0#oBQ|FV;?w&Vd%OGHݝ-㜊ah~@\ҕ~<0yj9J[5Uv8OK_NBR!H'b=dA.ews[=M}0Q/l.'dP =)FM\T{g}"uIHXAoK*\Qfȇ4g$;I-̮2Ƈ8A7)Tt^y]^:|mZJx,QM97񵞷=wCUW`ЃU(z"b]?%OސwX?+:G?_K q@[ gǩhSj|#fCįlGD d[.QdA߮fAukSkZ.Ĵ׎F.'l{LU#fZA{o";~W 3 C+86Vy{|ZA8q:UQrḄ|B0lrkFDDxӘ{VbJv/jJAoV}(_G^mh?*;Z>(56)G}VIO!JݬM ?\1M;~@d ;+\s: 5+lo g[cơ>'\Qe4Vt?xq&=}_.q # |qUb.MGF[8=R #Ai7ȾzUqYn<(2? :-S)첷t3j$&#,1ԼKթnj|ZR?9o H1f@|BհX6~ll{~ 8̺Un= ձfifT XC]:`^D7usgEFL{h[ ouy+1+v"є6C#mH\!ֽbN=4tu4'lEf(>q]IdzcI5JE rwW4.xWc!IǠx(/H_4zʛb hե Lw #eZ:V1E9<23T G5-εS? 6`~iU-ViF?e%ĸ6p/c2lVAKδCpm޼|E>?tݔj[^#+}Ϣ ۟&U&c !0LU2޳vRz|4ó˽bG@L%G|6@Ց; )NuNups*NV#ZE*g]IrV?'>tGJb$/K a婛,HXF^{r1äWk9|J##}\Ը+*CYTK}\uf龶N˕$u!#>cV?5@{LGu& 0Jf.g .V8L$wTyCVDc]vpSl_Mq%GE{s(U4huZN/ŁZV"/0a~$sc} bVmmU$eB,@'O&sk\}s0>y@ǣWͿ[ (a6 KsHw].Nv>5N32뼕ҩQh CAԪ~0_!LG_GĎ&_qY zq"(^3}IkB= 3ISK+ F xӔe7NDC A 8~۪c!cs 2.G P[x .R_wT7{{1 10WE`,8rǷX6R ۊn<<ﮣ BeBV vYj;so;!}&9`T D:bu t$KoG8d8"J{2o@?Q_ 5"ݻG-{ f, cx pnR>o!ߡ/#;>Y/vr01ͺ~q}IO7ܝu:'"UX.`\sO/CoQ.X֜ɼ2yҵ9PzPs enM" ZaH̻[>(w%7u*F/1kSgi }yk sD. R5G¾[j{oLIBtb`v Jͽ+rW) <4@ zH hNYJqMQֻ xubs>3Ӟ^{ֹ9@,Q)t*]j428[PS!۔X d&xHȲv1ze?K&aӡXg.S$ؿU's;Iȁ]DIKv?:uqtp؁XK!r+q ɢbDnqb=J3k =S*=%4 aLr랊_&(ܙN3J2yLrE5{V+]:ű #3  UH\ݏ#JʏR?ҟɗpogyxzBNJTo%Z8'w -NW!RYf]X=>MSXf>X}Oq#w{RP5Mz nh䮮 x}ebeWbμ\arT [=0+;F.:Rp j[Gr&UWT5?e=:TbiEpal aCrw恡҄_I,] k$mnjT>]T9G =#^=:RwJ/:DΟC{Q *^)!0P?@[2? (SM2ছIȭJayj$."ٷkkG;8 t8n|BzS P9nNNg-:%I֋7䓔I8i *M2z6f]X.}vYX\oABlzkʲT(E5h v[0^w6&mE >_-fdZA-mZJzb2ҽ{CO"qKՒc@IsّH )x"zͺaTM~ƀkct`ɾ (,+/,ZA<@7޺SKZɓiKR \4zhS0` Um]֣ZGZfpfԺ)oZ;Bi+  ̳.QN 7 ~'Y%M#diJ SM1U,|'g+hIHhB9 Mb4Ib6C?v@2&\G_\ȭ3pZաetFsM# fPdo^ ر#ᒭbok9Q~^'CCjmZ *|[HX .3z*ɑ"7)d?͝i_ ې,\7rT M $7C3mA"y?~z_OAgb¸Zٶ쟗 dzn}-ayBcoϋ'!(JAy zF'7SŗY3W)6 D}!t3 l4cy̝ɊEU3~>_ jY$}|#O=/ަV+ 60eۘ6;*shwVɅ*)tub[AE8G*}ko:{ 20:p l[R8{ pA8g3%к^!\jjmѼN KpA5,5Z"mB 1bT#8^ IDwb Д:ꕷx]-ϊ]yfcXj0/㖟ư! ٜX =-ߊx+r LjrÏؗuIぉni#\> MA]WAP؅ 3R:IquE) }ZpY5g]6\n@–E1R W_ bthh% 04oz(׼j4f[ݫwLZ@X*CriBЁaiwwJ9V‹e+ :Ґg{rA ~ӖO)#;л!G06t%et) ҅H窕`-~e(gCY~ ʮ_?nVNx&GĖ7\ Uq_@T76͚\p$RQ6>= cjݺcxMF l|AuKvLo^x(LFyP_ݻe3pu )q3O]FܞD7Ftlmrv 9ﴖLYE)#kV g\6߫ʢY nT&ku@-IΟ|$ʧρx=Փ?K=,_sZ=T 'xkTpKY~/x=.MԻf Z{n& EI@Vl]2RLˋH+aSxC)Q5^OB%6E8eFi7CxЌu]iVe451Mޔ96dojp\+@ TZNPWd :NZo5AJ#Gr q2a* Г`8Dۋ1!]o[DzLdP~:OӇro6dK*RVd TR;KMԴF>}rFYA^ZupEh>%cVH=ۂ= ]SBeDZ 7o`Bw6]#l]"]}?<`r>@T%;ľLǺWfvy{ G"E%9YLIp5ć@y^eڀWdBɳ '"LԮ{so{<ÿC@ 6o^ ]d?Lh2(;v_ TIѩuSt6 )B!%T `qt9gnISRwg"f*HVQ&~z(fme8{T*/NO5ۚnqF5o~(q[d#%@y{/wt~svbY;MW0>;\~֠zwnepO-۪KpHk>}Y>pt)L ɭH:0gA~OB3bdz|Ra_縮V/s1 JJvHZ"4(4324Dz#1eʺceT,crQs2.iuz&E[.}xXIs`7W󅒟,z:,o"OIOB'}o2anygDŽk5!];6O͹v.ۙfŽU(Px1W׿vUv8 l6\ t0;V z/e\ s4PȞXB.bѣ?E{ީcI5M,ls.d6FlQ^63d$=ŝ'o&,9_#!]_2keu6|G>azX,9f~*tv=( KMFRG<E^}p5Iϩv枕eKP= 3+,=і+j(;:>?G% ќ]iW#9P5L]OI^1V, g'0ob.l *}le&ʷ!kz \zTǷyWN EH_w՘F{B㭡 PkS۵{MR[6f{w\]xqw8U֟.}Rʂo[qL iq/F0X(&QTbA'RU`E)s}8pİhE*C!A CX;~xto\mskzs^MZ4ew3j=& $4G^&).*9r{3umDGUf/H7l?έSL֌i7VIOk^@ uAK7}X=fE x\hבUkB_?Tgt IU,W s7%(p֒~J{yZ$xsiIy)u(JEH+~B24l\Y5?ThnoKtFD(tx*Ny @u<>u?t'm?%}w"~S$aEw5\vځai7*0 N:!P@ ro1%Ȱ0=%Y0ͪp! PTTRi뾣>J$_qV6jI9^P,{{ʨ2hhm-]xIʤ͐o Xmlf>5֎: 񤭈z%;n1|7Iy68p P'm[C@O,D>5Vۆ'OQ2Y|KN y&uɉ:$Lr?#/Ge&\XA v+^~E4hSX7, vJYyށ֌@{BS뎼!=&)`Nl·ޓ݁mاE= ZP<>f'Ql&Y &O}nt[Fcc$ 댒G .|38wJzޖK~ε_RNCśuԟ\36fFe7&1uMS|} 3zBYw]l፧3lcv`:|hoi_ 3'ɫ' !ݻIFAdY~|UoH-W3@ob"v2Wn(pнxmvyr ˓W%>y&9lWo L9%hG!PF=Z{G 5'|% w_EK+Fމ k@FSU5Q=̩P<ѩص+C@C!i0I^Kzsg"gB}6+4Ƕ*h},]9ֶgY.|5ZL1)LY@z>I+6QvxUq*GA:aa18 7k"_>Tv ؿP\W/a*t"IOB& /wU 1z|mA1O2\Z^ٟU#VZ|I1zM^ؖmnO9J-*kiQiYO%~a5hؐH@ !o\Viǿ Y">O[hLYl}&메e&9垳gM@Yx @Q`L=E ]oG<"<蘗(fD{!YYW佳xYƲyr>k9)tA1 _mtV[YCЮ;Ix=ɏ0G̗(/v O}2d~ҩMC~;3/AЈӂZAiڜůLlxp8Zq%bj5.摢H='uG,zͥ$eB8CvDX,3l0W5FMG^@ 7`q2e?<0jB/@ -eUp @V0an] ׵ VaƑifV{C?/MuvހDnՒo#a6iAKu3/;ܐj|~ ?ѼM}<@РTˆ(ho ?!_I]0d;RXXv |xCN&bq8GKU @,{t]l D9F] TK) JEl+M3M>4p?hT*cX;j|#3ݒAG/*daP^tϦ ?ۉͼX|dnpmVpYb\ \F]Bb[͕rƓ PbZЙ! ͒`nytx]ǓI_ E10Qj7t4Up 1:˿x$mFR';S(I* IDP)1Yo%E4n;> 4 (( wüs«zVSB^Ô# Kl'3Lcpf׆Xn4S5K#@i+ϸ*B4en=Nak'l~UcgQVN/gP$T(XC$?dlZG VxUZ%6~4gx?oeimz$ CaZIpW7lE[:T^*P4о|Z9}ǺZA-MO j8t9Yy3XUsHX[R."Y"HNZq?0,(^; %{=4F (VV0g /.P~.)`}n`B)5\b<3S}2i*qz~t2g3#wb{6e< Or~i9h)DžsͲSdI(JeB>JL֚+ߦ9_lE\ >Nt1>(Q.3d|QyMKڟE 0d`bKDcFU{J$F;;9"J G~3j\LHr9اNw%tngw"oj'0:D^Fdʍtv~ĈB|2,#_x* Cr:ICQP_$jRÆk`HjH4'?*{M1U}.O@ksEвXiم\0Iӻo.%0R)#? =74 &ρsƟ~!tx 5"_ng#)MuE6''&@g!|{V Z:7}JN`5NXqbZHm.P$$<5IGkX Lb 2 ;S̢ο,&(T^Y--!!(o5jb㰁{4 )"q%B CcxCIod4;p?JT|ᣱ9/L|>=́mH$%џ]7pPU(VꂍwF]Gn}0q]勭ӬD>{9'h )ª@xubVͷor+XEo.V=)F2_Q@;W;ڲO'# \<9h/Ey<~ v~2 bJFq pW*O^S t ]>$'ss*ʼn vqV2pSyRt%_N'}VGs-:# #y1Q}n(f]f"+]}Mx,K ?SUd\h<֧h]؎3wh$ʩ?vh*zNJ-QƼ5wAjÿI(3?yF.j"ȟ6uYJBWD쌖e\|] ;Aq1{ <,cd3$x R"XЍz{`)͓(Vp%%{1-9v2ld$bQ 9ѷpggJ&7ParY[8=Tn}bZpG6hڔgrThg|iExy.nNd]8L|)-BnQdUv-:Zv6C%o{QvQ]S*0~V%RsbxT:d3OS-"`/8`wPYRCJޙȳ .s~o}4͆Q*,(7eIv!;sH65[\I'ohjr!a_WWnz+3ԥ*D=L"ʬ"_mΌeAlu{ <)ٗR'dRq-E~,M<.uO"2j/]B+G=)]Ѭd?S{I2Kh1$̭^:ni>3;!MUpQ(-}01|*jlm'6^'[hXEWiAٮsn$9 071**_N?B1$T0'Jl7<6 3QgJ  ]K&jǥ[Z}b gFP?xH\$4Zsޒ)4CJf;SX JE ,˓^~<]UV!C'BTaj`_Q*|=ֵtm[a7*4"y(, qy!<_mYW @ɽ7 =vغEh!X.3޳$"lvLs,˨w9YxS~(Ir.o= wd+@#27n9yzTzw} wYEyXߊ5ME2 -q\G ̴*L#3}<;jς]n ebN& >}bl QvtQ>zy'ĉ]Dl%0+#|<̒Zϙ ~ I֘_  x4\x+c?,nCv|:兽ߔrdl cNg \$vjF/P Y5hSz%#b˭!Z"/~}2ǨRY(~:y>$nȆ(-l[ PP t8Q0K+v^/˺D[/P0-( - ??d= \-3vjd6XEi 8OI/c?iYw) Q<I[woBsom{hGobPo0R 1@ҥ%\n$qdrx]Å98䜣:B˄L7ʧl{P-I#1͋ 7b8 J8l7OV}P#&Zaw!|ݬrGE2/l 9x4_]~m P&^l#}OFg;ƣBcb a5yU(A?5b5gZi.yٞgG= = !;$!t iГ34DqG-\'o:F54Zd];xL2HAe9(l&"v,Zc:i\\ޏP~y-nK <+ȥ:𵝇=B <{K-Dz5ܐ_,4 am B *1U AonCy:]̜ÖY[$ ;Q9ɸ_miE3COy NSS~Ew(VX 0@ZBm5=$PWea7`k8gCq,0+nnIzzƗΔ/ZiLX֐gsuUs׽RUP#%" 6u1TxkDjh>P' }Nzc?߭FJN=cEU҅ۜG}l۫*׳vXkEr rcj^= }=W\_$Yx_eVL,Vo_iZKgI.G~XgbxO@1@w\Ɖ w(`j|qAqآV|?8U\()fM @mM=8t xg'oV|1!%/Va%=2XTo-j| ؑrNj77'^x[9 Asв;9/.'F?tK_9݄f"+9*6~H,gтlVY/_x9&]J-SJy[̵ bK`NO"5d~ ֨6`155͂SͲ1<}EueCdS 'L|1'lMq2gI"l~R34"`=5]Mر" nxTnzo3MJjSyLՎ.P JPQ쥋섵[t0 (l&-(׫}i-)U7}X֙^G(YoĶl[;= 1&Z)#3EaF>UĽ5GBbd+3;eEAy%%ƴS_p9@۝܋b$77믈ߎV iN:Y!|(Xs74mQa*u'&:.{IGXɏ5F,.BAT= n~.] IN@tՔ!WD)n:>K]|;Q9ju0ͶQͨTEȮ9-r >Njv3ܳeF8gI^_+J`TfeB1q~kspCrH +DmOEߌQT7r^,Gf+BdF(uwp*=C].(>s=f7AM"@i'̨8{Kկ|cd(~4S骸]]^̏>:гsb U\6ɦv8&lE6ZB73.|E0<E(o觩9Tq=5B@CpF )r5p19 K"w@C(oj gi͔i;彴(p|GR\o>IMT9>-KHB} -]Y9wB/.>7՟I[\ݸ@F%0_+}7GjtEfN2ՓnF8?bs1s)De퍩Ԁ]w\h\p;{|nEoMQ-S.s54m&3 aQ <6m$L0(U=||P6ܞGir y)h5պcG,wmj$|G2DFAhy,ֻ/cƨ٧m0"zbMDY!A;y+n؇q:K)4ľ{|{[Q< >LjI6|`ep6CX+D'6vB=Qc2Wč8AH2awyi5 B ⺵1ڴu]1GcԹxubgh*uֽM(#_lE3gp׃t苃e!=8RN#5Mqw1&* HwRֻ.xEPN)Db=OYo:k;͗w,r㥨TsdTMxAٽ10)ږڪh}>)7űZdo[: b- ͳz#t [p_X΃.u:F]0%%CPaڵ .&S)fJܭ'޿H>{n+d?wy z T9|8S }錇ßk+|`!2^ʈ2?BM } uXKIjwfGzA˳H@%NP1`,-1S/Y)3,V^~^tFIx&WQ=-}!f{jV)7P$ VQM -r< b =E2#5|dY{~u=ޤ(S2^i#>.RF9&}GWae0e WxM sya4@hQ9vzW)o~8U&Z*4AJ\ :. (ȼ"cY]#J h7yurs蔨&dctJ([N v3pAbzbՈV3,XEhF!T&_x9vQ>i.lF1xqY[T%5f>=2F,՟{F$V5ŽE ɥ޶#'&!83Q]vvbT4`4M>AMV56&jĮ)Дޫ۹xy1vAw[4\?&ɮ c0(aPudȧ"x@䀢<.l' `^0Tb7Fg\޳Nzu1d) YBZCߺvu ggPdwPn])$^2̜k옕%ibRnbu-Ӄ8_d@( @mD܈4?C. ׼.Qk%e"zړFtmWƞƵ-&xo EyYFGrwZs 0x(*"f)"#&}-Mu:R.wm9Y9*M넿\(T`hyZ,|L%c/Jf,xe/ ڋGtbG 3͢z[Vj׎^YEn/1)nv쬌xhg +RA]˪cFJD[:אwU Hw>d.dBnT{l@!+4WRFkOwR5VWvD=3ל@/#otJMr'> W]M:yܕ;!?nS o]iGCnM4cFƶLu3F#nA6oC4j"o5FL0ʴ?̓(Ciݐb%]/ \*jyS=E~A )bt͌kAiQH#@duh C4}pH<( `4(a&neiՈv~lp|& D5t_/oHobjRAt$2瓲~v4a^+@Ez? YvG DW#AIhn.U)P v˛ faVjJ;6^qZ*W<~kbЏr-mȴy׎"ׇ\Z`ެh7v=Јse`U [mj8Vb-y„D(5.΍Eqj$^ౘm.kz`:6f\C[_!a>TG Y8%SM3.A&&|-Ae/ ,zhKo@u#q@ :B F+աZ?AhW7 TE}{|IKn"M3tJ)`e(J5f86z篥_^ O:)H3[mykblWk%v}e⇽:Xp۳n'+ggݧD$R F :ض[7TcGFHEۓa2IFj"K-kKVLV¨1s\o`ՍJF-(&A4~/ze: u{!,ߟAF{ZY[UBQcW$_"9aK&n3VE~|T L68eb C)[OM;S/} 4oҶl@~fXXʿl?K/Ўn%S>vSk7Pi`j`u]H,_eX^q](Bⁱ+MoGg X3cB\"8@p1m&@1i.&e\,7ݧzL 0%i> ("xݻ1[$z\u%_N,g$>D#pT-EQ+P~EBCkn޹R p;/t2.og)MU&9$@e|נ-<|_|@O,0uI`(/' IRRo-ڢuo~A~%hNPY$h޺;ڏ|z"-ܓ$m 5BqcLʝe+zOci $螧H{NB2Bٵ\{4|J֋l1[ReF `9Xa \f$iKErZ /]rX ,oЦK~)J= "K宕RXZ[v-Ersk)LʶIhDI W$w *g>-B GhXuT tw52"m4^Y.^B5]~E%Vƿ]C:qpYftV9ywиR?<*곫Bhzza>f׵EeHO4ǡXm`q^6Bjfyu^kX#,uT&KXˊ @%\?1`AiBlY j7S] G ޠHu8^cEg*nY1r[,G gut$mf"]6kED6"jjZv*-,;^_ɤ,9p&؜W('UK#/,hp}Pvq8&J#O3B/'dש׎w"qT-;`sh/g(f԰|]h|z'2ڜ&0YDj_J&Cn>6drD[#Ny:ߛVk)Q "ApA*W$Ϛ!Zaw)t3GܑN#c?d ų#>a}oѲNЯ?po0)<!wF't) 1rW>V¨ޒKмc=eGK0PzGX8\a"ȌfKp>\O|T(̋jPer,E~Qoxg澸^,t?Opo4w1dVhq\Ҁ!fl!dDa0 1.x ՠhR58tۍiެQMK.y.Ds^me`[Ţ v`9㤢䯂1ZT052F͋&nq^mkݧ!.09/D'mȦdY&;$N1ܧAkP9(Lv ;rQ#KuIo؝.^SyuC%'OEyC6V757%E#`=ngH4Zk}XN:K ~75xJv̔;y^s|v?ҡ]IDH`ͮe &!3ICae P\g&ZOe7 RZv2^r$܁.D]ap4>jKf~}dqɺ.s2A]*bue_Gp$e=z1=-3:f)8N+up(9̒og44j#-"O g;Rk ⟅ 3dvbaO \)Z{ B1kkϘ3zxg5ӥh09u1Bび>7OE Rs :_ص(<>SٟBnvBD'=fDڶ B{;Jѻɪ;kӪWvZROKmOHީf愖ck'Pu``.(`{hpޗ,WA1G+xo hj;O/ Z$}ôE ńD$ZouB̢RǢ)& f"= Uy*"t.]!ec2D͊^^ȺR{ vnR.ޓPߜ~NF%M1IgYg1՛}*ƞwEdv !P@$CS/#4Qz͟TxZ`ۋkx*ϚըNcT0&@ 0 DHt7 ӹ@ʪ)pk$) RE'wICO-]V;!U?v>`"*GSgLi()_3B*Ő'#jOx+NE'Nӯ.9u>M[Hinnru>T_܁jc}mD{'-}-p՗~@z m}srv^_27lhG8uctUZ`Rj-M((!7WQ0 YBe݊JbunQ6J , 9hɖd`9fd"j+q# ZZT "9ưR [>cİ8qH,I-ATX>C4yNp_p=>58d H0@e1B\P(5e*a~018|HGoVՉKj@^N YT(u:0$[clb&PIN߿z$D9hXn1\LMG%Su5U(\JhAAX'\pO-=ߩU˨{N+ Ok`;A85pͨ3أ^ʶR5g։2WmCB x"ҭ1?-h)5bT;B 9|\Mf\ܲ[|VK':0* qIfccudɒ~'f0R4 Z#ȈTm:F}:Ĭ~jtR'k>A⢱!oBXq,kp;p7YjZ'ʢ@ Jֈ>Y0Ue>)@=G5"*2f \OeILKf>P@t&#eARZBG9-jCC'”vRO&C)`՗6: D1DZ, ͞dk~{6*o =3ls(bf{mqWdO@7g`L'Dad `B`-gXRRrr)Ea{ˬu+bjR7QsLȚ dAYJ^Y}ʅlw>~&vd MW@y;RwqYώsHkK61oDA0ԇqQZ{BaΙ0Ok~EcRtׇ溍Xhż[tUPr q.u5Z7A|kLG`ʍDI Ng>-[{$d+5W%!O` t`8~2*^PP&迺cSrǒ4O_5fG9ye .\S2,'A_YœIw0=&r!~07( Xl- u. oW V'Uv$-] xAEj_Ap.sd69/+uu͌cN3[SÔ׶=[$J,E#wO(@#V,amWQh 3CtO;)sUWŨ[TmdEf]yTݐhX҅T\&up&ΉzB9:sb,N_n2M,iuKV C]<|x(2#m9Y1hD! }3@E16ߵ=~|Jhǖ<Зl`D.Fbj0,b|qQ/OgU > u+ԧN1lŃeVX p^@-t[_[Yc}Ν )Gt^Y>bls\[F^弈 Lq()WBad\j ?/r\j/5,nQiWHz Il(ӹ?h 18\ Hr[>dcGjcC m`t E'ЗE'USk0bK9gee-F`nՎɺѭ[Ro)vD<,>|iZ7͚t.! ט&ݠ  {Lz~{tYeKcJN Qkz+L%OԉY*|SR%o"ٹ55K 7oo% uX#?r R  :60Bb%l"+\V9bA>j"pj>#5ȁ/4ꝗ.XtOFTD6 Fw-ǝx{*lg풽,nG4ܹιM{yiF_ ;E¨(xp:[RKĕo >nUNȔ/&`p kd]+?-yH>>'/%/ϓf i$Ft"p=ՋV(VқhpWd}n\i,'ZHuVhL^vmH M39䮳YBEV(8d@ CYA"A<Dw[^*H^AƟT3NnzT&[_ I }xAW7v}t:#TP|CQ<0ͺ!^x="[js qа:FDU~x RF;[<;J#~*8߃c[]kVyŌDnX?F1YIo*L8}RD] sxX,x`Xwq'^iA ̊a Vⳕ*n`W 6o咼~gLdH@zlw6j]_"p^L?[v9:b% ;|S!ӣӼ -´p >Cn.  #gKF"CZEo'+)"6Qa$ x;-S -a_hU"F H:A|.ci|CL)lyUmg<Asiugp>kc đJZ=[va͉ 4 aK V JZ#1$@iFӮf6ia I﶑-,BV! sB/Pw!u?Y@O EdF>@˜Z3TҝtWؑfukDPdG %mzM7LSWzAɓBDzv'=?fr7x,㩔%l/x!X+&PFf45D64Pӧjraj9n (Rjoͣ;f>^R6#9Dѣ^[2Pl G20(*/կ-J#Zui{SB\'NW.#xX膆WɇjJŖw ?@IH|r#\G9e8$ 2'j8袊ߏH87|OZSR-F1K2T|GA"%%"Ŷ7eDly6"/dGMDZFWI@>^;=Ku=B,uv32"g_8:уy{*eJ@ۊ*5BYNTo{fFuT,h?40KB_nHBH6! "V]DHgT׹gd!9)>kƽkaTHM33NePTJw$'GԾ), oSQ9Y2D~$M*` G_gC\daJh(495ZiȄ^L#\jdRHq4Pfw(m'3޻j~6rB[~IVd/6k;;_gUbBP!B iN漼ţW "xKkfaqG2Kyˏ#dRo̓!C-> _x|g\. (ORU9wo~JGxC%x &>p M&_ȭUN3w.P$ w $]Ɵ^rizp$Rq*=$Pz(-<7_Z(4N֨TyC^zbV$L஖]Mzv ڱ,l`̂U$%]%75XkDW@:CZ(^.3AamPQtfKK6@|N䞣Gl&-v1XcE-GFP ͳreBi[{,|ftP d$iטU_Fx2\2}S^aaDZ蛊 _3iD a A=zgE8\ >;؍$J`$ fwZ)XƚptQAټVy|SՈ=eANO1`S5^! C8c眇Us Q5T;JWP *K6-uw (wMVI5 ֿB>{IvRf=&0{*)RS0ɴ{ҷR3PXp?PsslҖT+>鈔]AHx?0ɍ6JM}T"~z9c~a;3Msd=c9Wa2Fh'ʈp$$U"sDE+[0Wo*A΃rw Yم-1[X#SF86H5xĊ]ڟx Ia':qf>zn'*ӚsCalGȢY3KJj@6!^Ͼ_/NMnPҸ3ioxD'^t!=h[Ŧ(P `)%TPH` ;5:hJ`joQ<qKS혋ņz_"xWXqne:%d I dλG-+`bUeytMYҌm( L?G ͵ܗnWFl1 a嗸o84meP#ѷ)N7M⇧'6\I|:4DW1R-*q`|$RR&jg=!2AmUyC%Nٖ2)&rQߧ a~m:ViMο[Kz @hZg85&x@X"V[rn Jc=:Ŀ mr|$ Y+h]#jPkLlFlǼ˥Jái aM3*MF)H64r3Z3c.d}23T_~ o0Dmg Px)Mw+eWT" X952q!VJդzk)ބk%sۛ(4)j]&~OWhW@n#=Λ$`|GcZ(%QV8")Q6k)dzLcfuO)bjVeDpNa-z/aSA8#@~5LBTax|/] } Xܖ_=-`*#]h_2NV|_Zdi-݊O6 'zݮ)ר`,zQ Zh=a=-u^7bynf'}[yA#fw@ؠH~ <0 s&,\?HhC*/˛õ'Ul)*Þ%k 5?M?ZⅲCl+3Wm'Q Pʺti*p?eɑ$φ>y &>):7(P[\+ltC͙JW8\>kbQ/^H3`a1PO?QIy97^#\,}2Qc?U%Dgb^g ~4݊SeIx 0/j_s]9uTI:5owNxpXm c$=m+ aPY)N:txd;Kr!(YAaDâͤshLojx|=G"(f?Xthſڙ%b qKn0OHgw>+j0w )$Pthkp_,kkg$ GT=Nl k̘w6@ێm"Sg~F @mRoP!X~CCЭմJ׏5 G&9qs%`SnLޞIL.s@C™zJ1g0|N)ԞDsG]D<\U |v^z,-qŲhcW~aL!> Uv'gmcӎk!^jL޲ t|@+&iĢY1Os[Vo1%>~3 _gg6 y֙ﴭtBPD5$.&@KRD|8l \apt)#|'VG͋-*L[@~ ؎VH(9N@f&&Š1sqZUu[,Ǿ&#tԞtLW ]__J5 ðNtI_UmTfS>XwgBL~S:?2.02Jm؄5PVɚP#I8,;ȴ[J^'cRRzWV|EU| q .M\j=:jw  Z KWmǞ QhUՎJsOB50"CY7:猽9An-VʜęK :GII- e)L Y4wɀ+^T7Ut_/ g]-Z jA>h쾤TIˈkfØ. tkY#|2?'qƇ§=s9')~EZb>ĊJ G>5s7u1Z'qb^^I(+î7 (Dh@Y9ƕr5L5k9[d E/Σј-ĊO(xVSvљVzDG .O#Uͥ= ,|s2) d]τUE: I[YfOŖ r˗O` #h5 f[nдXx'h^Cۛ_6!)*q䪕Qlf>a`aV%-nj' `H~ZC)fGENT䆡, {ި4y;pp͹w;_=y_&+CڥۆP1;-v;ipi*Z5҆Ճ4 7H3{f l yO_h.qt,ocpqs И8cgmBC90 zotUj{nfG;J}l )7W2<i3_gI:<bHnhvǮ(, c+ݸuϣ *tW~/y O+,Ek65d)GN0ˀGR[#ǵEՆ1A0RT|e;J }}FX+@ÅfI^|@31:X26d6 Qn>xx&t^kra,x^"}b 헝?,eZSPlDf"͞Ss6 dGNa%~INe2Ř֯ lYE+7[SJCDDoGb,Ll}ζXȲذ4 2PQSw NSN11ez6 DHxT,+Cz#yD@isk^#2 o8V8W>-u]~X|\w;uN?Uf Qj3=?RO_Yn`r+[Hi>;LTSZ9N~s Yy&Myޕț"GWw 崧Jh\d0gd%g(-X:l.:="Lߠ44A5$##ǯPWHx8`lp0 TNAq'A[4D/mһ-o)O@R ^ߞ95 Ԧ45SNA,>''X6 IoAx~v&{J#9iYhi8Üg9DqZ+t(_Tz5ְo<#aۼFPވ Ðd+w'Z;,WJ!,KgC xIU; AGLr0.HrruJ]xbwۭ' Ȼو(Tz2tR=eT Ͷ}E h pGt# 32Hi-yieīd^W7AuI8 rgr\ T.QȕxV#M!yja|b&;Qpط< w0U!CrB-=OZV>(M֣ PPpwٟSLO_>()QY@YO4|D4\N @̰; +YG,UVG Rg,fP-̡q~P I|MkVz.޿9Ik978dQnV~ݺAb֒/Q,No%9rz1_rMU/wne>uoGB"byw2^D#men=sI"&JO?}o8/wCf9'VX k&xm?J\ 5򜺞 b^!(*HYӉcVJg3&^dxl8Z< ucٿ~)eJ2/ۯ%u->95HŃESPL}rqlzuHc*JGeďFA VSsPE']fT\S~zBi<%VC*o8xli6H @U:˱CPaP2#'=bSjn'B~)J|IHl(P1!9z!M4]E𽨀hSRড{w Q&HO_I$g5.^ m >'yS;Q4nV=wzeܬdemx}S)4/Z@Đ3x R\"EK2'D9eYKe?NM*d6U3lÄR׭}AXeE{i_/[*={"SwS+gx~9!AVD|86]: " ҋ,XO>е 4;*iߔv&̅-ldLH> cAa+ L.">sI}=#рam;F uVY([$7\N5mk/KU &?%`D>? kJBm\ mMLM++I# T QBZɵ*ϣS€b)!U( ΃ĉO} 9 `O/ͶREvc2 䔨4fBmrepkpԜ"dM rO!OsX =rsغ\OhwP`Ol_RXr[J6 iVppK|"+RqsŠ'1kWoJ;KW3|b.cz$Aͫ8] 'Cg>Bq莟(0-1#`#&5 JCf2U$ħB`R+C8k7ˠ؉HWbElz7'lҁ223y_#7sND^s.OΞe:5swMn3$v!Fy's.Mwѧ-COGQ.IMV4#Sl+Pqk_;/e);mHXF?#,ɖ%8itu4l4HGSRO"<%} ɕcݖ-41o?eer,#1@]=X +b;nRTuYSZCЖ\- I <@Ø4Ɠ| i`A5*1.y#27Dݟԩ@FUɺњ/jS@d,)ȁ pG'LU;6Y~8iUcf%eR]\5;S9:|p7t.R4yh:[ƐIVA&JXnCX2k8=q`QOҙB+Q}u᩻PcR\* ; l4+~scb,jZt1.[&D5ne)܉SrUtݎqZA?gK[oe SQw2eOsTT wJ\J!XA`M fqs/&fb~$y7vdTaÓ]դzX"kFvXBQG`_{U2ü)lXvV, W|Iu`X\J ]@!۸* ^<>(#ģ T辍c*Kb^ժ{3\TUa@9kʑR&㏮Iٙf$5ڸ"\]}wOȩ6Zpm5'58%Dj l6_J:2S8%@ύ9WacO5Nsh ^$)(rw#JQWz.r !/HnXS== :3d4hdEq>zqʏ ghnW v-{jB+w#|5NEq.TÎ+8b CAf[1EX-BQY̥ ~{zP:iq"D``[qAeO:oTg٧qqg_Ew (ja&u']_h6qk־Ӡ^jc8jAH= {pO{oaCYw Evn1VJo'wŚt+ od. ?(R_,GYUa.t;-&ʤJw:3ȸOU9f}+ IX@v:^LcLF+eg\YsL}_ەh1Mk>Wf ަ4@eX_1ue{e FHA85\Q{U\^w׍!XuP̬t$Qq鸝%T Tzh$p~UP~9۶ H8w8yJOqx_؞f-7aYV4WXꛒ* *&Nk8ߞAu/5D\t´zodV*rdN^Jԫf/H܂vPF`CO-.e8RG8 z1;Ic&GǕǩCmVƨ&MXa_bsS@ Q}~<TvI!fךDRj!36,U9i~BY謹M[/! WSPiYtC?0g)_r}O;/Lhâ'MoLO \|| =~h걷|>uoџ1Γ&zƶgӝ?SuoS!c41GR&xGhƟga0&#l$p$K ,{6G|giYzi~W-]ݕr t0J{N_C =b&U+O }~WP(^)~vKy=.T7TbQN'|e?*4-W䊵>Ns[3Y>=ٛ?E-܅7S1BQ6%dEpxX˿j6viFA!,Ojsy(n54swA kV8 e|ӫGnXpL~od´!ƘM7$"#6M8?jܵ #)K<}8gw@b@h¦Æ]ҘB 1كc$J vzpZЍ&/W lK^Vp5O^/50f|_8B$-ZCo@uz ${, ~w"Zx-]Ivr9%p'󊸑R54j5@; Ma\u8J{%̕u‚/c e|$Z oh.(MћfC(%aTd_'լ0 #*«z7Um4&+u Ph*c >fղzSbKVQ'8;GZXF&H+,OF8/]+GMn pN\ 8%?vSpeT̈9ܵ2%{O ֋Z%lpaG*B5 Lp(a(@5jSB?pu FZ N ݺ`%%M>:3S]cO^7#ykWqKQ_ذ@t-!Ah;HqB5L _&p‘7c mr*x`gf95$dlIn" H}.#l=(Q2䪲?'4&`cNX_lJD"oT w5D@.|I}+c>w}ZƞLo{m&[M7JF^Ԏ8G .++) 9:\9FdD=f7quaAb5càrK~&iW-o8e+X e[r€$h7ňܤ.G&)ްC'KyC` qɆ"h 1߄3ʶmkG0%{u ٘)FE설%Ǣ4[ݹZX4za!8vrp {ڳnY.ArS?4y!)yX#(4U$׳nDq}(]a%ۍ)Ol -TMS9vqH@'>ܡ>7 rAcKA= JWڸ >e* y+n zfuM, ,j]%&o+4V)I./.AxڔgCIr3,U~r*1a,}P͈">K.a*w|GˬxlFFSˏGJEuO޽U1t1 C= }s?^ djcw5͝^L ZD}+XYnuL#fDH5 ŸkD7, .JNp{LZLIt'4Ps(z…M&npd}cMBviJꕎ8îX Vtd% Oa \RTv?W.tz3Sfs'׮6\YoZ`b 0msC;r>%̤ W72&谲"p3'DO߿ `{ 2:FjմhѬ1XzT#絥X= a8,OXcb{ vx^ (S/mh.ޑO;#&6lµ v ء>m~zz)ݰXL >Q|H0V]ˊ`Lx/*9 ed~B<_u/(0{0Rd5x d- زn@9 bzo4 2HQWJ䴛Wy\nNi:VBZ-L޷2P?I,K s۵fDj3&wXf "P- ;?~H*Fw3}Ɓy^ɢ ž DFXE1Of\d?;i:o #6/b)3.,x6Bt gHo L9L+\Uckh|10#{ڳwS^*䰑j֊UٵV/6Wg}Zx mS@KIҷB_ 'ۦ4-Ȕ.~U2^g~N-b2L2aQĢ[:_dDqZwW|Ў@dښ$b^26g>dҀجLg]$Fċ! Vn`:c+>& Lskg)4?-\%dB/2%cg;#8f9_9_|jJChډgM}q4Y5||^I|1L|vzqgO(0LDߜc P Yqh%T#xŠVN%{wkPfx6Z+?ΛHK)` +#HnüyhDSߞp)>X ls( Ԛ/GmU6y~ U0M`U lDD)T}y~W3Vkzf+zgˮ?4ު!.FfꐫJA밃\J1Eu.^v@[]{͊V,gcwyv+4zIOYoaDX-Bt= [lĦV-Ez2jv2mS*WǺA b^f2%EfS IA _SxH_$)ļhB_ݿ_l8<"2ٔb˛LjGc1?'㖣k\v"BhN\uCzɽJ곑\m vKbE9"՘)y+l.!c[P}U߻CSV>79i**"`: xKmɴǡ^['?|fY%\bB{C/-G(4߽H~4Y7[B@l(PO3Y}PȺ!܌W_]qcV!OyfFܧ gK>`ods;b`?FZK«. 2:X.a4*+9ԃrrRuUL"U <[(k M8ĈYlSV.9GJ$a >VT@iўy/ëo_V<⤹傫~L9W,5Q4yDC4{#' (%x&k,qPּnZlfiMue ОkMFNAh^0d^Nĸ<Ղ+ 5F({,;gij WY @ċP %IL+5fvwo1RgRf"I0Pukӱo1cBN3FgIX^ #8QwL9 GN\;EҞ>ΟHc*% 5E("y NdgK{ܡb푞7U m07c˼jӶy;py & z7EP[oGQ*_u߼1zHpz"') .^$3woP-.|n?+v8ԍݾZFv ѳ5Wo2S{uǻ ]'14W݋Ft$K%\/$d-$O|K-tQY)ūD?1N' rfku\ ;gźQ?LyU^t;+Snoݳre/^P.yn*`4h鮶z`HgkڪkDkr q%ɑCM3+Z;l⑾ku#qD a{K Wn>9GBܮtHY)&]_0ck B?G6\_߅k)5ᡢ,s&[|w +47h ~&gӏRn6JOaEE"k]8)s(*p+W$k~v9T/}Öh2BL` 9)jgD^8h~ \rϩ`<԰c4O;qd ]BAV+/m!7n)U;HAيUaL\pQ2X%[Ulj=|lbn>\r6&@9f'-(,6 Ays2(<Wf 9ňV{-UeY`?Dj5dd*%I~kr:F\ģ`9WWRm= cXHdꁛ p&"A]~9m\?JCF*!. W$%YxmL^1-I3}LRk q)04XH_dPV9r*W7! OcJ3s|Z#b' C6OU}@0 8ݚݳ=j.7HW&+鏥W ?A]ߋ 9`OކP /3 S*35mǘ?Ƿ)T`[')m4KcԵeY3Mo#nn|z.zD@ fj_Q&3k#]i.q@ahhPluSPHf8"yΆ0S5͔L38UGzSkd<\)oLWgkB' q1n G6zg*w>gnV$ᒇp\k*!9ɍI͘\aP%wbVTiik9+;J!B=Pl=6+& T&yGJQ^Mك5n3 ž%UV%ﷃ{% Oo Y6ы,xѫr!r{JxPE9ˎ:u# *YA'%J,Dpkxs`"4XEKo6wď MyY}K10csKgkww eXeUAf;4җ%l冐}8wB֖4s[2'T<ݔb> |%S[~|UaoGvs<֍xRo ^or^ZdWC{Nj%LD1н Mm=qًk!+ u.?Wറlہ/euLPץ$Vyk?|Td|ٱֿʛsAn[n7ױ_TmYEZTKj*9^}1QJw|ǎHqf_sAcׂK8Rf/)@5x_6"{ FhC Q#xuV]lLjtx_Qaߧ1QrMHG ] кj_tNs?I'gܐKje42HnTx ]6Hx;sњ⎾s `3%-G4(EȈd<B[Sy#.צ"^\aI]) sfqsW~|/!L3c^$ Y~7#-v bMH÷/-3ZP!֙Rڈvtŧ9 -CN޺~8&ʫU<TɢRnlADUIdJFe n̓B=g1ixK7l_ii6=r~m7€49ATj7 *{NIbG!ԾVe"E= )LOeF!בJ Xެ8PlI$(y#W5N@? ًkvʃn#vaJ Wc74#%6_>A`P'AmwPlh@J&,N/NВϾ_鮈?>>#?0ΎT9ک_x뼖\Ð =aLRB DޟaNܶRjOWQ!{T_|:Zl{qVQv !NRw)Yd GE _ Z@S@ͷ a44-% yzAMiozfN.I4\CL+ެj\`׶wi#)`f5?r&o Rj굋AuKlwxÄwom߿5f6F9uMW1C*,W,c݋ʠ2;Ag-H]U~)\uA#[YD'1{s|fH+K XUN>>W1@nq[Vjϑ[e2{Y4>>ɍyS) c2aXQgm6.?A)IһvZ0wڏOHI'tL\o| Tq$͵T gRE_tK, XISadgS\]}T1Y.mͫF9DF]Ti|C V!5 kZ}@и`vjR-xYpԎJdno3G,/ӻ\ sշrq{\ï#y`RtkPms؛.9UU_g1pmn։s6n5EL1v]bM6g@Yt&@>w5beZð޺ITM캈v/Al(:^ oɞvUQ#RDz!0p_ -%ZFi+rA/5G1Glz4ĺ~lKy]n lmG=mWT&ή5Yv3zv .hL4(b4K*9ϥ`,*0﹭ qTʦB`bCPI_ކz[}jո,uu]qiޙ:R 3˳!m;"Kϔ- 2`j\9F^=T+jEb9]R߄&6}o!Oo'EV24I ~>4s}Ј=Hl5ޓ_խ hȑ0c vA-a{* !o:C㥠}+/t@DPq(˃Sg_fCfG3>@%'lˆV.N+(+ȤcEBニ# z칻vLSmz uwX&g!NȅkacJPZ0/n{3]έ.A*ήM6>.{|3z9*Aqby!NRaɚHdS I@ϕ3& TB#yS $&ex^eG; T=aRa Mn{A3*%Wx~備 x-tO̴EL_S|Rʙ 6\ f@5F*fVRly BZMo a~+#.oߝQb`3Z5]@5 1Ϗ5݂1Kp?ioQ%QrY2/ AބbۨbT<UCzMDHzEO/KFPѼF*kՈP7řU&4Ni.]'ўT$%ٝHMI؟ s,"0-ր51 2b•YRܨ6 [5V.AGx?1n^}9Cqb΄ ?tp}qfYS* Y:-ZN=Z ۙ2B [2e5qjټuB.Č=vݵi7ʱĘc(L" =r^3$Bj* 'NN8lUH)=Nvy91w5)TD|3vbJm >@{IdD.E bEb%VKJ @E8EptT+6victH0"s/iJ8dR;ŽFJ9qVc3";mUKEVg^e6/J"Vy'Dzon%֙dK@!+rm0HDGYC 0uzjLHpj1>{ ~y)65 Sʗ!;5)|'-"()XhCZ Ny\t%>Z;{Pq T5H9 0DEK'ujGy$`4j|`✂ނ0 Ħ(H^h9: Eqd*iҡI SdaQa-AWKqϙNRxr2~/;=;>K!( :Dy95@XTRshA9Wx|:ʨ/35x+|Dl43 X&>"XdjUq A ȑolv;raDK"F9t)Ѥ[oo) Åe03v>V O4Ef{ɚ @{lalg0i:zRe-5eFΦ4lEo݆0#ڏ>ڥx,q^T"-kc#ij^;޾h'/&xe+|_4sepFsz/ڝqx[|W fB~C_3u2Քќ@c)RefXY_p_Pr/M猕q璧Rc=^hX$'([ Uhq:/^@ Z#?WG!f.s{ /{t&jzW}ƆDЪܼ5вKuDd5QV4/?J*nfZ(r'Ϩa603Ԋ wƆN$ҕEK6F M H0ɹBd+ +bPc:jڱK<2ap<XŪ>Lr,O UI FCՇ2$eCDTiŝo3u9{N/'0M*6zOq𽭟 ?/ѐ2 Ş<\n"7HоٕaHU= T:$W1zctF>]%#`*W>eLj*zݗe3],U@Z]uz*PL:(v\!/C oC$xDmjӝ Ms m_tQޥt  Jt"\(@!Bwr3_bq:!:tz ^1n |=}WTjhGDcsgA|6%k&͡swM\,Cgm#4 <%-e,+' 5G 6=Wġ74}"9KuhݏW#vntvЪF82V{Qr}L>0d5Fר~4(SoFyDϒ#3mge7X}qajga<|2/j,$aӈ7Ȑ_PWٕ'iJٺY`?|'P)rֽ3Nl dݕ==nj++QY07c+Gd-M!|Q7;HpK#:u ukxh(' 4SK'h MwOpUj#q4+i08T+4by޷Qk ^ꮮG4$,{rUHS~ i~:,Ѓ爽|ոetT[[>zHDF9,i:#I&uHb4*T-_u2%^58o4p]6۴=-b"j۸Gk({=5*l1[sTUo+Z_BD4;! ĿLBR=E\)P3R͍;GgZph]rΘ;í:lqZ@5*;v`K,=r! H?Vx\ҿX ֛z4#ߤ HƞÑ U3\RM=9jS#JT.! }tL|A*[ڧxxoRyg)=cS$Ոgx>h2j7oGP'ɔm:M;7"Q،;Ы4]-,$w|UPWp5QN:_δpXچ6\* )0L!_' tO0VLYw5fm2`4٨i淣ٽ( $uF~32l͒ufb]cʾL+8=B"i AGmYaNfve18J C? ٩`s&Ks$,/I.#-ybzv50aW x h8,U=} W,^$z?sm= :u ZR"\;S`嚗_X킞w9H ǃYJb`u#0o"`u2 6@rK cw\W V+&ҝ`) Nގ 5CBiA㥹\.TˢA9<5xyg%e"i0PUp1PW` K J@%5j0sIW~nhژ: D*vǸW Q׈"ϻZ(fO2|29L/:zX bq"}<5AAD?_/^,mgr葨q~( ufT*1mn5n%ap1SƑ#}Re}GMhV&D>Nyb= (yh/B7Lkl zEdjs6@I|/ofi2'_tm7Uo. C JBDIY^M,yB㊠-&Zj gk)qWm'!A(^dDj)iؠ#)ՁJk}/g1\+le~<kFLtN' {c./A?hMF'C$D*֭3jfW>8ê91#G޺Jg.oS UuVOud(FudVi1GD g̯YPomt+jO^ X<%AN\l8IKqWO]ؿrR( A*PB62g4ʊs<`0d_2N;kYDW1ʾf7d^jBs~ E? %-%}1\>4͏C&數!tnXL VLP,Dn&1]Q7uF:a"_ k#?X6>.#7b1 PeZda?gLB@'jr(%E,bgf> h@,^U/ܽbAc39e=Ǩ/nĭ`G:;k3yO͕$<-@rֳơ9p8+qYCtJ\}Xp&Jd7Nē~Q4'CЎsC.ӵ -,R;ܔ̧U/,WS"TciI 2v{P CAgG!JL3<]S&݂ E$;zkG>TޘI},>5$$ )Cc̣۠4Q/K`ZpA/@tO:mDa߯{U""4guG;Z.*DZ'g/TD{^9B@f;8ϙ{^%6*"< }%&T]ݸ".Q/^zYq7{ ־"/O0.J==ÔF YyV+^ǜ: ?*6M캇ě~4X,G=ȿC'N7ҷzTpfH+co6Rsh:0 V2g߇ A)%.sN1}*B L L<غCط#ԟIa$e'ZP.Sy^N||yC2Ra$r/©l4*سn݆&x=ީ f:ªme2_wZfXof?HLB{vBb:πb$vD]`xz6ct AqDF_dp+l0?@<1*edb `ٷޚm꿎71&f;}ĤEARZRL O  6+[ImVYL)T,O[qy.`RL+d2(0,tf=A=UOaĎ RDu ?f00F0O8Rsd{?Ѹ08jBQFZh4tE@Sd灄cw;p`]}?IC@mn4`7~.+ e🽎aH47pBnVE:vrSw`#)V N ^&G 5ks$ɸu3}|'1DVAt%_pz |hHФ{jlZۑ ǧ(I"_88(5JuyYB^=M 1T-8BO條ɈD*+}yu C:S|ycѡJ cz]"<PCͫD {h,@bJHTݧnJ|yzۮҾu !F0_6K gQj9|EֳtJ&itW۵ > &kvsT?k743A t,!<8B1 auJ߹&+j vftЯ J糝@gN(ۭyQ*~X/0E33B`łXy##4+Jp{0p #_cѰ`9Td•5'Bdg~r1+hܛyG{,'J/wӗ, 8e{,-osdh_H#Q S">jy`IKDL!LI q)r䍝tdC;3M'"rHٿ&K`!A!ex:Gk{mj &@ = '*A3}uoȗޥWu4e7X!F_KF]`8n:@J>Uǭ\jkڮT1LI%]Pk2,vl䦔FИ' l_jeR1y%oP"UwE $5c]?l55g)1/C=8o ROl;缲(MHwUҠm\"ϲf4ԣaD"\>Cajc I|'FoNSd9큾(/yͦԠ'ݠYx_/&BGF (]﫣M d[]9ĝ@%=ᕺb#fؙ9\5Ӗ,_p κm"͘\CoIb&oЊ ûyv&(Ump jHzPL3ڮxi mdZ8pAG[@:}-#~RlAƁE<klL9F?.0~yvP⣰>tDt"-V"{ꕃT[ #Vnu&DT DG $*XXt[MN1JVxXAoQ;͡J@ogS?&vVweh_!(tNju2?۵gG*ڌq^@sˤnt}q d؇V 3h' Pl0cx>5"-+u$x.B4wEd+>Fvԑ ?&- $nt^AWo>ArHG,}zPwߗ[g"lLj0M!啋G5If#Qoј u03!?2[#Y7[(x5Wp&š;6NqӑF&E9,/ɰ_ D%KWkRW*gZ!$O8[* =)LU mO):J7ifDx|RJ(%()z:LB_+&R9L0v792t@I"]-vP.wV=^WqRvH'錅Nup~K@>%5g#eXXTZ"07΄_jʲȐ(p.DEid, :6 qڰ0} :>yѡ_:ʹ*di `` v <]gWMqCxVlUk;o`H.h D!Ӈ`Bw:9)3~O?F;B(05Zt `[R\>N}_čÀ482:'sz3=U2tk6A58,9 |ҧ.c\#|#{j["X,3XaN0ʳF-}xNW bQ_ݍmT4. s馷Ӌ FRufHSEf92t"$ѐYCT,ɼ-P-cnHC}c~l @ŲUYȴŸY'Qg)UukƒT *8MŬ&iXo)?sB0CgЩVJтf jw~beG|/+caNS[aQ{g 9G ~.Uj4!Ⳛ@x47ҁ`(K-`U\g(f JҏCA~ED󕲾$ w97U~͎kY&6TG L/,.3YVBCc etX;KǾ-G-Adn6rFpӬnT"_*#ĆwirAN iߤ I Zq:l*&[=(:jh"$wGi4IY qmLMQ"W_}5J/Yhm;d65MM&\ Lyk5^Im2"ZWN "ey:~tV( t>/WaLI&@<{ 6"y}ze+LV$\F<$d8"XCηu Uck3]`] XZ0Ic5XsVP뜺bsn*-mer+t`HM)Ȭ D[ 8DUq]X ۵BTIn{n~wpc]7786.#Hr%}v$V&FKMmv#Vsw{wt-M;Gi@ @SYJ{p&wpm*{fb]7\Z 4i\+阥~#%<|mF/aqI~xLf~)0S --L6RVrI啎3֔ , ꊖSt ת>i%8 Q ^7HI|2ʫ1"ј!#VG݇T<7snX6ad[NiLSN&ܛ򹷹uNẻ#t>}P͔t2>Y0vh 'Ūǵ:s$ 6~)[;?adpjP 3NW0pYvJG+ !I6jf=N$n\Y59)?5 2:'ny*V1v0ЮA*[VR7dxwDGwX|bGrլS@B^lUQ=r͈O? xQ!vlzAث#C2$ tמXF4&1I>f+"sej[ Rҗ-~vbN"HXm6Kfiڛi8BߵxsͧW)A ,}IGʷ},-J|sa)!U"JgRX.D{&ȓ&5O6X2$IAzm R2זX6 3ܻo$; db( w@?ܕ6ϠU6T$9=Z*HDl~_Fj"u [vq ZVa͕֮KtCn Y(e[f P$`Pw nny{BF?ǻSR 1h5™>nwVi#ph(BFP1)riNݑ%Ggv7vK(dAaY i<|B ¤Qx /L^ul~uu^1kL*K*a,=~gm37yweJO^?rbr%7{>axe‘vZ\Z+)l%9 <"Nk9u Q_tov/`yd&),ZvV ,{sD0nrmeA%xnX"n[TKfHcGUGTBTdZ OVg-\U俐 h!A iXI Tt{\(}8Ugq^ubaаߓlښЈ}^^l4p)oAR]ۢ|BB6E o%$2ekɣB&BЬhdVWe=jeg_!d~רt, ֻ3>v\8wWnzE?@J,`K<`pS$1C,Q9y%4*k0I޵3NۍTK L1tYxF9;J'O?WJW$H{@'Zmx l03Ҵ̘aÀ 9 7 PkvXLqX| aئ!F׷C;4'*yZU-w ֕ӂ0 w],]_1MhL6-cۨ93jS~nlm€ٽ>zkӆa9p r2˿\c%7]!yU[Z!8m9rGxK']Eڅ "K.qA~-TQR`;3^֣;&.kJR<XA -PZ诅:MT*~Hf)n~U}4D\Ep23h_}>5!KXo,-h: oASBʌ+Mھׯ@2#a@Q5f!fS @iCfޮ\r2 s4ͫ02(ZOڦzrx@sҠI֋:RYD S{gמИ{IGrRëtD5gf @RDoua"r3g'Av W̻T\T.iBC|NFG ʇ-RR'!,=&UPN IA r$@ ,m\d䴉t~p :T˙1K4Fi-J2Y*ۡuJr`h)@YU0 BǍ,O.랖oh\,P_ ֭O$t#ztX'łR uSzcWп;DԂ$-S)V `~`8VkkV*^4m*^-&K`;inG<63s28]:x]9A 8w'-핀Yw##p8/!xs߄= *E)H_hTM~b+WjVlGwxy\~^%8 vgw<>{]W*Q*;;W>2`)b&}℠v4/4aBPI6,j,۶}߿*Kô|ZZG>k"PΉf t5DrVأ`Η\>`kIQQQdtq' RnCyW…fm~QM h9o©DJ)󑵭s j՗ I]- xN;A"7bn%&5[N5T0j*%86K1fo Υi["e k*s[Ե- 厈f8IR 1n? Ipa+*:e\Guw3J2oe  3U{#>1/-\e@QT`B*߷]( X);Pj*d ZfoM2%' {SOȣ¿L /s_SA:(CR.C֡KƻuG̮w!͢cRxa RϚyr$?؟Q\F*H@-ե kQj3*Z){ܠbF%`N)Rע:U.~ړ(>>^c`W~8+7 @Q0awv pD'R 2>\lz9iBkz{.ָju\M*;-~V/"r`z iA闪E Q6kI}+3գ4 CTXDK#!-/hֻʽ=j7}BW1 FVE[n 0œU[Ɓ2Ev)7_F$=9pwtGTeDOY.]ǁdVN>˥|*so6Ľ0pX^~(?RB00Yr݅&I}UE5̍H} 'ckmƸ,LSyA4I[X0a2\&4hD碰okv*}X&?tg[Ħ vT_wgO҉Bu1PC>¤X0vW1L2Q1R#W3EϺ챢Fz q ɇDrqdH7%~]3ܼhBP gispa;U>Jz 0SlmӪJG;VgF7=H:[8rQ1wEDٌi4Ӊ"a )^dh?rLfm5ܣՊ.\34yh(_vv2|"8:zi\?m.G7c7=9&;1_ϱOPgڈJlBnd?L(W;"vS"5cȧ/O]4'/~`&B#2VE) oVKڨ)xn-+WPZ0&{1 th%-7'Tq%XepmwQ2X$4%ԯPoc V7Lq994E`QgL\L S.8KQ17zfv27ziYoZ䀔Zq?uc/rN{"%$뿟tkF@2= Fs 9}O*M4\GƃIMͼxG?N=8w~!U QghHȟ'&d~HpgSɭR|g E$ʯ1jEø/!bD<;l!U:t馃 TG<"PPD[#6:~rw$v[ EcF<8%S\n*ծdH1D&\}LѬ:[ CXۼ8ycՔm;{ 2l)N=S"(~fSՋ NyHaY[7F$8|֖KX۴Ilg2&~ڮP7y)Ah30Ti(~%6"pzr|r{|<y!ltQ<sˤ]{ =l#ǀ)NAnPG[MPr~kV=8)qZu>* }c_I6TvwM} ^jlR".M~m[8|~<=/'mU.@͈mFoz1`0+8#.c񊔍9IZ[@_N8;lqI?=qљV'`dDLgʸubָCcfo. q"iTOe~̏&hB#%ԉ&hrt2' 䈰ABOBAK?LDb쏃c()r0B>Ow#hcrٳ8`1: ǹNdH=Λ3cfenmR gLC%H2̓|'1AWP>X¤,Y2(Mi 䄆9*޿ɛ`]AجkklT-r yrIʼnjN>g{kY]$48ɚ aݓzH'q:֛*aKAd&9\h\cTO'+C־%}ku A]=PJ!Cb{A\*Q,4 {"dqvᓫ{0Toqka% `TBg|1U^dWͳdlh;*/hʁ~A[TL<:#QsC8K:L 8~U/H^xQ|` ԩ8\<8nߤP|߆Py:s B0ݼ%iϚᶲJJ4ʦlھ1U`">sGQ78-= C߆QM}da_;(Nx1emT2O^l:ڇ7WS["T_cQުA pa {rK"|"PC+oaM$lUa' p+0)^>̌b&q:H|3Kϣ_PAS5NF[e%(;!^JR)*~rQHP!L~Kr`oȸʉs٭.q|s<?"0w_ħ;HcV/bZֆ"Y1&9 805³s~~}M52=8o<'NpaIOIy ={a P0O >mb39m悝>~=[S ټE'2SH5Tx-d;=?fg)ƳB3䂻`A@U_ 2@kFS2=lO+~j`Q L1#eoEb44~7ߥxvF>OF8d { 8k)wdf_~(&YwNe:}[JlbV!K])~<.:gYaCs\P^]Q pYrtCYؑق0Wኦ&Kyc7 L̴œaU*rfʪ#\*o:sft#kU*'LA@݇IX"ל146qi Y0@;B"z|pj[=JїbIԞm洮~֗iӼ2Qt4vz@͕ 2/p/9Ī~O9W3-RmyEp^ 80Y@qp[`}XR3.BloU%3-mv6GInD'zl[gHuק\%ى7߲*c뉦F<TExʱCMW  -AU:%-=8"o*ٝSBg:.>}溡 Th~U^ |͊k G8x4`ֱ0>t|Ngq/p1Ǵ]ɹJuēRK Φ]-3Ļ# TЅNK_ays$m`^l&(#vZɛBo]vp3h+e&$FG^A+FBƌzߡ0IY"$Γޚ |@ۀÖd9Ż1 .^dw$6B]ږJfDmM8fu{[nuIN V8/AvI~'r'hUs'F>גVz#nj|*)+dt TI*)w'kg'&\ZMm13b%$qK΋!'|sUZADI0`CavZf6m8&%M gGe:(1=exao=K (*BgQA"g% toH(g{wx >4Q/?T,9w_:[iSْ_M7QքLwL_cmo$ߦAÃQ?iWҊ]Rԗ^p+?ܡ?f%~ 3 '323p;7fKzB}әUު,b^4zK"5} a]V{卛xYLl4{e.U-GIXǠØ(ó2beO{=9Z úa@]4VG-uFsHa$y [֔H%d%鬭dwrl2}Jbuȷ:ESg >FH,+3Z`GWdR e[`59x`nqڵ̏L/Lb4uᗇx6c Ǯ3&\X1[ hȸ=$«  >WP bE&DFEG˭}wrǓ[ Hw}И5C%͞jT)MYw}o īF [xtl۱s}A~.aќ]` $UmOdً_^A'踪SGyGd<WFVk뜨1 5!+VoKU>DdfCxP"?bPu L<<\ !ȫа攖a~o}{G1Mө*RuV.W6 b[։{eć[{(geVc9ޠ/bzGP7 t !n?[K?"K|ѓ)[JED =`pcjwh '5fzeΞٹ"{-JY8-VYmQ:f&.h [jn9@s_!̗ր?nT >\lrcy[uAnH%:."x dtO͞_@Y~c Z:C.^G {TVaBѦ}>$B"~vB}TcU6Y,nɰ;)0 5UpaCv =NV<-p mQuǚ\Q v7x<QRJ +U-&Hzj^1.ƻ&չ R NjT8Ry/Gz6y•l1n;4 r2nɜY{?EKQT&oUL/?pИƽP|/r Lce9Z~݈ѩ"-xŎI\pjDmcP?Ay M )՚\BHk8鎋?sr:)Ĺj xnUQǡL,cwW@9%!`C z WIl 59,U(q+8zJuw~eRU&8,1W`#y2tOO(_{*+I#HBhHa? F] kke`gƏ)N,/@zE{Xq g= Y9>e`F@R3RnXaa&7瓤Xb /^dimtŪ۝ C6F?aSwc!>ڂ.M&wޏđ0c(Clu&"笷xnN? 8⯿o TsWLe?7 m/&\b^Ai/;7*4K*B鱬 ;皖D' ?9c/h)Cf=>P5k%cn!+B{-mxLEm*ZQkl#[i=8L7M鍂ČZz Y[~Ⱦp^[hzd62[ʃ 'mT;OP }#@oPFTRqo C_h`Vu[h߃R?S=QuԯbEEnc3 ;&6@,E6)6F'o]^r#{ĺ+9ucL+:(SvvS,2<@ts h -G8kG2tc vH2yY c'7zPS8WA?T+ fP#ƚ}XgοnN0{a3A .,rQ#كU;cj4 vu {tfD/ަHg;MȰRa >uBGI4ޠ25Ttṅ!Bq/Qfd:d{ȥn{ :H)i(%7\܋_rsi m:/0ȼ-걖9iBg; r1穦γܿzJBY\˸H#uó{&z2^8cM0 \Rtqp؃OQp$Ord^Ǎx#\ 7--/%;j+ Yp輧&nEMp.Vs!ǦOEEpaE+(CYY>oðRzF{Fj\Lg!@wR=T9a~Z`6Cq,XTd F?GLJ f4؟*x^fwlbJX`_N?G/u:#iA^GwFE˧c怉-h!y 01~V]],4cˏ%Z5 {IQv6("6teP2ult~0VFCݫMR1fbC(v5;v4˳ J~ @J< [uB,OVgcP&+S&d)AT5, "~+;{%@ya g%eJ "c4jxbyKvY*0~f -3S_o!S‚a0Cj#ZE{$֤E- kx̌[)f" ݄e- %?5ZMs}d.D/٣jl2|f2#y-;9){ 9c+ rgx]@/<@.:bFCL :rvecڞ)Bݗ]7|VX]- gKMXE |V҉0Kk]WhkVyZC9_nD胻(Y-6b 3X'۳.m&泤>AU݅oY缒_ Locp㈆0ZR(FW6@ LuVŐ2Fފ SȒX4E2 Qn0`})o 0I3UB4*)H/bh9X u; &.S".-Y%j.H1RiC{~2M:sJB˃$S!'Du섐3}c{Q.Ǚ^<[>csǕ"i $4/S4<IBZw?f4[@^ln嵘 n}D8|AqމgLc9gT]Bz JYvc#/%JtgN?`QPP[-yoICjxD-.+h0RL {fwBLD,axxM !Y5Ug ;+8Gs}/ti`:27[mKVee̝42p:ۮhT>Yv0PGT2@)}V}$`4I RbF$61F遆E7.)s;X5y%5fQctB?XZogɅ}chRL)?[`uq ,|ilvRK1ƿڔ.U#Aan X2/5& O&,pf۰0Dۅy , )v1ص'HzuY|H 7thsq3HIa(#_fc3^hlO@^ap%Q25_Qސ a}^j[l*߹#|c'Sx[Y .󄍭xt=j3Ʉ>_Hjj8M[d)3N9A!4TCY48:$iQeBwʇ tcOzOy5-qIcŶ&g%vOޭ\"‹;@Uۈb%k)j{sۇ`:dyӕ6r>r?0 7 ⣪J4YH%J= t 6+<Q򲳄kU[e(.&$| F <6\`OwV,?.v~8G{IS4.\!&-٘zQEn 3eF4* 2< .Ņ"=zyw:,2W+; Bd-V+vGRPޚB+Eh^ O^] }fN?F_vJ͐Tm'T=)-犎| VK:4m 2ɧ~+RFU'E}]ϑd'87꓍-rtSS%)PF[Rø* eJJ+r~$9Lk\q߁S.dnsTBJU3 TțI 2ñe'&y>մ:&(W2ݫ NEf/ޫAG) @|_D"-8{A`䌺*@]-: |OsRP#,GjaSru5 ݴ=D bs5{u5Zt7d h Tu|v1X9nX0.(p="M0$#67Zf,G`);l"65RdoA<-^eG!W`v\x5#PӪ2wm MBJؗ3n$P,h7ץp&i$&0AAίX0OrOm0~3Ev2Ƽ D0 # ms2@=,%sIAI fz!DWˏ@*K~KV/ʋwb7r\yǣ ;fzn2^n97c/pcu;q S4 IsZ#n?o鹗}ԍ^bwAo.[ E 'K fXrD73 (smpݱE;|7+{[ⵡ" ;BmŞrA κCsѶ'\-E&S8NT-nK .eYHb?#Vʾ‡umYj%HJV-^˻t^#7"m4`vׯZ0f"NH Beq6g%Ms:~W-w>Gl5zKĝһ 7Y>%=[f QuAuES]vHN8n7߂JW\-g5:@<"O6Ԩ t'<;Iʯo'ICb57=r/Ȫaj;u^{(> QG/|,WT:<aZ+̞F Leb.|2ռ z4#1i`Y[Cd&,9* ?Ir /:aI ؆3yLsSGyWZ?:ٽ=ZQ|/\BXiuʉe}/2"N%ķ|߷j5Q̫3v3:-5@9ڰM(A<rQ~d$@-go 6CA3 R )soj[EJ޶Pvϻ}U$fymDFDxbM9Qd*ѿp;fBy^u0YE,@R(-cώFDS}܃-3OQQy#V ռ4KﴺWUFiy6C#rVA5{6̾}T|bzyGa-/+df*E*Cxh< 5ݞbkQiwP5џr5 E l΍.c! 7,mx KbY@Gfqc+)5H-jǫQJV *"bhȉf9  o/m+{,:MVZkWNG}ߔ҆ihaAs%U6".7|rG]mdžioj5!mߢ t`Z/.cHWQ)!ւ81A%!P(UᦪPZ1L7{sRX"6qHqyе= RG@8;wGi~A>-TB`GocMx&mpLیi7U-"%\}Z^qBG'!#+oF1y YFMט'J W%'MaHLoqUSƖK'a6܈iT'6fAPT承ѷFYCxji mw9tM eܞ۪7s:ef<7E/MAu|A<ȴǣdL&.A+vC")UeLF(fDUF!)`yXC< uv A:j`>X 'HM(DWv=-ɯ"tP|@ZCb#o7rnc/2 =Q^̇,uOwiK`qÁ7b%F(xVʡt_+y&ۯ<@i o V֫FI)RjO'V}`4;)B:|v[[A٨55޴ 6kC8(pBwGJȂB}@zg<1ql@딨z VDD]I~omCϕ1s},h@2}ʝo66Sg4>bc[ރ0HT̩LQ\['9XH5Q#tCHuW&%cv_\; hgmȋM]3"3_= tHG6pWUTɘds"<#"f9c*L[m`OO-WjD́ "P\ҞXRC 8ͤ&>m$DP~FfDjm aw޿[Av< $7-ME2xo„~uMKjrrO*ݿ1{(y:sP3~JaqV`LM[ f&Q̣kf?'W;pPR2˴y:C&Ty\aCCmKv/:Dd6/w6)%q} z:h4}IdU+"M>;ɼ{U2uL6‚9}F#*$]7ZO={G`{I#} ?n$3:%$  n=yEkHxO(ЂVYbGdٝ$A)OZarVþtLx |M1J|v㱱Nٱm}nL&BTyCg9HOml _8[l1Ět$A7/a\d JU" *{a |#[eMV_ NU6ZbKIl2&|ߟz'|5AIgfv5 EɚGGi#p|Th dw`eg'S:Rو۰jylx3 [a7z9=W$-\{5 wvEcG89=a%\4c\ch[+_7fQwkJ,&k:"F8IA)i.L5=9J m.T6E'tx<'9DAj"|M6ԯƳ{x)g9sPr7uݹ0{OԠ^Ƽ8nurt&TnUwF&"ĺ m)1UrY[)FR>Ӳ (Z͗ Cj_^"G8ynxC}~eL5L q՘0ϻpi4lpNn8V u`.vDmm0kr4Zxz0ve ^nI"_Z-M.X Kg6'柰3])9t^ky۸C`QV5;LmB$ێ$l9GXY5!ު6gۖ9'disϗ sUER[16;J ~֡k6GhYb?s?UAJZi2(( g\T a!މHm:(ҵAU Gp +V??7e}CԜ*$&5BP?A-C{L}xS!57}SBIJDϊ\ji]pWG?Ď"32jq썩yfE8]K0+Ev%^(r{s;1j?bq(1Ii)6:[ (E/xp)j>j+U ,ѯ#@y4kQBj9"XTf0叓{]]"6Sn9l:/V};T`+ "_[!;P CQ*'q$Mȸ/|kH 6x\P~TڅB1QAx@~8=̧dE.RD!ʲqUӴxv;Jw>mn<=d/,q:mjJ CU(/s:d#|ZkjKwv.z0g+%Dth|:!os*F#=B6 WdV7 [ k|dFA&ƓK;v1 0~FFEy\*8}t2H`/i Oe;1.=fř cL۽>ZfW4 2smNă*D po`ۅqKhRH%i>tD>J;sULZH2&yi}Ul /sm)WX!b`l$__GU8{']+JWZa?bs>[9R){oO PZC?VnmE+uSv\X||2뛾ZP#%dL(AAdDx3 GSMϝ ۖN%ȔOa617Ά>]lr)kv)1MW qίH?ֲAh3Mz֕~o9)] glx[U~I  R$O2O?GP hJhx]=v@\FUsR$# AU|ԾP ԃ7ᢂM?Y|~@ĝl>L/V-PQ5,o,$;acY[HvZC=@ z9\NdT_f by~Q}gE ?í#&Mͪ:.?Z΂IJ h,zMٽ s=υXAwfS|*wK o I4I33M7:bmZa>ZkČkefWAE5Un4Sb5yF +NcMQz"7-;thZ磑}G-96XwߙWa-)`Mޟa c*C-Ct%r>pדV)vSǞ[Ĝ$4he)y\GEܽ{/'&WB9joቜ\'A7k2[2n.$"Lz{$W#f8Dq9KU8{k&aوˊ|x܌hi~;$ffs¡VDSc}xD,NM535 >j .>t`襍 S%Vc,g=@s鵍]} dêVܗ;ɪIy.Yd1F^* Tj%>+QUj ~)7O4c WW\W59xA C2_iNX#=fIRϴ$ܻ`VҾye/޶YmyMR|flyLQ쏢x>m*,a2uM :Z(řWbn D;x'w稽 ս8;S`j &QvIRL~쳒l6=ۮ 7.kKGeaqB){DdVWF[$ (Ng7\wg2#S[H?\u CKڼ8z/K| y`rΐ?v c~1|Razee㈟G.w~RX?rf U]YBm\<|WמbG⧏\|qԧP-0Rͦ_ǽ;t9.)Bil 9uk;Fb$ On_ra[gdf_f IhYV{!)[^Fd cFDV#Dj-td/ڡXABK[DBLE~}8[n){brtzddG3Je4ɂEFCYbX(+;M٤¶iұk|URЀ gI-'#Bp*ļE-k1ɋAr3tXN[қ;(q.Ao:QIV9ÓW{WEGͭUYBړeF]v'8U^W +5qR7\9Ӊngn{U:~NJ`44twAO5Y(O"B#%7;g05;k!)3 Ғ} -[: [WT~Ukk扊aOחg#⊈-x6 ^l]*FV{q\0Iiٴ3\s)7%*h'<0*= ~RZO A s}'SAh"pTHQC:?8D-l^hC|+J|M;R/^_=]R@;@d'2QF1C n@~1@iL%Kg}C{X(fTU1R=h;lcJtZ@>(@:O\vura> #y^SM Q-}-e`$Z\aӎC%{BS9+BgI,vhq7^9p'{;1N:I^\&4rAi)h9QiT85.oP,'(br*0 WZ0Ys㑋>R+akWh?jHZmiy}f2C[qEfPm(K cf]mya^>{=oVrifccO ć~G/1k[Fx]FHT@!<> MS:Tտs b.c(ȭEӞ7 }5x:# VR5>5܆!R{`cHLj`uW^&AN_&^=E8Mx.d4|( #&$_#x|e&#d@ㅳ(Zk~00xK~ti$1gVQ>R`ly)!iommgr`GL&۞X ?Vdni7rq bk^'fY+26DiQ4E > nJ m?vU_ɪqGKX9dhul~rmw.~?-!ǣ h%i2b?=cx7+Ɵa +PbGf9[Ǽ:&4-)dxoÊp-Х1Fܕ I,(#ƁN+8W',2)GwP4ƈ||f.-<* >{8 F!ٶ z01>oMT*Wmf=Z_mh&x>E<2F"P&"tϒ p bUP״33?,9a t#Yz9B^FcW'ҪE)P_bX'tH{ע6"ң4aߟL=Z ޽|lKqR"Є6KJ\ueM_Wwt UoI}Qj™ tH9a%dO a -MHҾ]?g .n9ٮI2=F Y u^7VN"f>UPj~ ,wa ̄^*@?m-JWpd\%xToIRo1Im%5Pcw,j (xyaW@. qϬ]jڠ,FC#̠IJDhnR&0mVuTe ]~lV;2)}Wa(ӔJ= r\FaT=S F$TKфp LsUE;X` {SAAT5'V˄~v : K#쯸^)g_Vb_ZQadIt–\ͤxWŗS&T*%-#;Sc)aqA{tͦp\JT1l0<.r'MQay1"Pe 2Efm*֙z[Z 2 x[@ټ vM?G*mQZwW,ʴYRm #a]W'ow;7}2QQРݣ]~7#qߴ-2 v븄Mīeq EP3VrT˅D OB/{ѷ;9vYtǔzl~'r̦)\uyuK"c]^rϸ P6)aqa QMoVv^Yͤl  wwml UY8ܬč*Oݓ3i#KUq\Gn^$ 7ZT:wҽqE2A"Y,S၎iႰ0ޑČx+8Jŀ1@rFEHJ^H䯳@0w>R ԛxY+]+ FF1~ݏ4c|*:'l*1m%ߟ+P+ߴ0[ 5|$ ^(| g`_cŷY%S#1) He՜ #?5\^ՖhY-'1̜煝4~#*nP#a}1 NSi{+B9_ēcZD HbX(x/iQ[9=fRh7/|V 12s|>7l9Ad#whf'.LHfg5~~_x>IvBGGav*R讘dˇbjDS\tgF [CG"J^\b ^Q9%̤2HWZ4x~:t[ O78{5`1{/Y~;yX9.d?` f'T>*Eэ/HJ{LHk 6f! C,:j/F|^Hx([;sVJ0KLcl ֘%\IE! %;l6 *%ʥv>" ܖZbʶ,=m‹D9Ii^[ѯzv(KgQqY\Ldg V#~gtY>/apOFd>&Ԟ~+$N,v֫z:c[mҶIu;C:Q3;j\M5i:y'W^Ɂs:%Bap4,q»4 \Xԑ<2-vAv0j`5Xr$R &/j-=HznIߠt59/U8g'{sby8[=2A4x H0qZFb)5UR/TD{'u¸,6ӣt;6F͊TYia)ؽuOj63pl_<݇Z^HKG;Յ(eWSv}:<|: 갯c gV]M"Pi`ZFaFHc֔x::2(cYgup#^: bݵ%+\ߢ5ݛ@l̦Tc ᯽dſ5/ _UOvv͞-*s㒿 fG{2 \Ӛ3 i;:|!l4"O˟ ofYwr3r@} ڍ/ %ePdKG-\ل!D]ItK/ !2Lw]:bT=bf\֠1+*|,@2ظ$56% 'a ٬=jFw`@Q@[.D*G->V0l"G1+AtRg/"oh47&&>S̥9QkG?WP1f#s9"tHY gd$NR8.V"/!"̢=\-ڏ0u\0Ⱦ\8>.s&åWЍ?ή-"Uwbߏ?I܃7U{2WIM i.>J7^Q{&w8z-hnj`Z+=r>RTXxa.ԩD@4 6W5}㓍8:pq)uc|YسsHtu>kMoiV_!CฺJD \,$ؤFxcEzU-3th|-l`S"D*BSB :]xK%KljOR`*^_) KeatHL{wI;PBq̅cOp8);y9kN,] tKSO soqXM=NxՖ+s0>Ju65(+e[%犸x!|s`ǵt2K[\?wgO=^z3JgȲX7&J.6ovk =zOG"1F,'!p1zqV76tEڐnvSX2P6àL6}nRIՋF4yIA+z"CbfYX~wy輢G*,-S aj;?GkOIҠe$O9.ybgV(U^aKdӔ i(Id2 ) y+#T }M#[KSEQUNe']n=& W\Rtq^)ZݶV xho[fo>0.)L}dH?ևʇ̕J"ּ%MD1{ $eE 7} )˰w"G'&1nj d5 caaxG *=JWbۄJ2͞o!+"" l{Ee]6ڈsYn")Y"xCW[Κ^"o_ cQa3Op^-NzWl5) [ z_>z*y$ȝFr `e#)/nіK:GbI:f> sE%(Kf&?|{ UI#Ҿe.fYwp8)W,vgcrg6iE1 )LR.ECs-S^Y"0+ʃAҩﰮ԰}rÁhdoDCNoTp+͕"yZ[?huhWWϗ޶FDXAϫf7JG'\F,֧FmR'%\vpy2h́7CYbOl%B;C#DOMWѰ{UcR;P"\3E*Gv1Ԅ> #Ʊ?#PW%?W˛@xqibdh}( 2` tO }wW=2~3a˥n =@V[$^m`NsGtO ״e^%GA l.g3l5GmqL+,㑨޼~]gA7jq(/RN셫j] ^s~!Lhp,H-C<9(*xϫaY޾u+աV ٷ}ٹuK #wuN+U`K@%궍aS{zzп3,߻h]z{s "ZV% XLF,Pq9"u0c4u3)go~ 9V$. 8P|3M2vpʋ7>F%v3CW(Wper`By! =F`稆_Qlta>`:~ c䣩莓UG9MYڼ_Xl0Wㆅ~@B=٫:U$N`!F7w{¶Hቲ:#=NzIu`,$\B MO\d!e( 8(/_ݽ~ÀlxpT ~NGhҧza'֓kа]\u@]m\W pXs xVuoߩb~Y H! LfDǸ:]i=X%*5ϣG9ʽpYIˇ@Nx^{>.xVLge 7-Qڬ Lv@7\$h!J ufd 0QlV3<*K>:6}d&,Sb'SJvsrֹ?'&Hy6fBaqqShzSy_;R]IIɼ!ߠ F8 ۷ <$->=CmLT0Rml{h}<(d&8|%C'XR:IQF 9DբFs)7H2ŚoB%ORcSs:D{X 0F[ዬX?䎟e"}:#b#A )nx{cIGˆ/RO:⎲}*Y^E{q# K41 q&/#i`j~ҧ NT p'+5C WOJ:r%)GX=&saitYǩ]{۳O կOjb^֢2&R:P yQ0H5_]B~T0fE XRQP }6kbLG`=>cf e<'G4>GyRrVx)=R~ e@M(Mɫ%~~bK= D~F:to7XkT=^Q!x$Js9H #TYX9 `ym:`A|ij*ׇMnBP#%>z ^QPa;iXU cTɧ;g4y{`}؄5*]Ja*vG|XKPzAoH!jhOk*e K?&XeK"˼WfʘE|rf}}4[(ɵE|J::vtբc!^fXJV߀Z5,2݄_u+z !N Pu3=+F/#!;j]Fzl0޺ @l@Wj{T84•/-d ZvW6?h{":me0fXx|R3 |knNGCҟݡԻ$z <#]o@ںL0p$j6,k,8yync3J.U>ZCeR Rϴ_Jiۥι;qĜe],¸b~gE{0[{$ !j PtI$uke.D&^N5>V&l Wt%f!%K *2BwzXgU>eׂ3F\.V%ߞ**+!~ C5К5wH!h:T"} HW c$P۪ѧ%aDGg$FaC'g4_ 0}?nqݘ6fO ~ qn_(ᆵyz a/7LcfaCUbs{L(S7-C^ޜW!}[KǷ=mG|6)©TK _;wtK/ߧJ:_C뤯Ks}ļyT5fZa7|j8X/r-ۗ1H´ZyDgeNu)9EcL&R~ V,TNop^PRifkO*m&d|HWT0kM*kװFv.#FmLb+-dI7-);3t*uIA<fFn/"jXcާ?)ie"ښ HO16=]BE.y:Jއ%? Нߠ՜-#Y LLoflt+!ڤP󑧱&wP.F4մn"3"ND %7ls?z۞CUejIgV̠kM&ȑʸPTۈAL/R\p&[OҲ~ibOO?3 cñNxBDGNEgZl/ֳE.Xvϋg55H3a^^7lH=q՗&jc%hRՂ5Iں"x-f_$*$-*uyqĽU X25n^ʙx fCxQtz ɣE ' !W#i[݈79_O)P*p/&ܴX({T"(0x: f77P<Q2U6f %vPVӰml]s;+Gu'YSj>@!cմǭr  ) (p aʸA j],ƒs[pDY6<%:Ј_݄쁅,s~u4ViK.25t 5KR;Th`^[ăD$caN/iO_o%0)CᅯZxD(Ɠnς̳hxa%jG?g>#qI0&:eKa/'| MQ'%ajcX_`&h@Qs}Rg쌞$r>Fs:8^)E(weyՎ@%\Gߝ1Z%ؽqjBݯ(h3z ¬j4Jx_ljkd欳ô iqoTP~qWi{htMJb5gh.j M}2v@ *:㈘Ƽ.t %ffrJQj^_@bfN\-SrT+O"fœx$Z6h#GxRD**~=qCd鵈xɚ, Hl{n,GvgC*gP_V;UȅE&B(XuycϡDRg {94S_ ['=MY~} ЬWD#X^&lC3@GpH*dgs.RF74gw;wZX[_ѿ0Uƈdby$4]Kъ R]!yT^w3Xq34£4\F}Lwq}kYy/~U~[Lfbg#֟] v;+9FA`f2_G*U@uvFUI<,YȤT8m Zp]/?3v=䂩OfCDܺ*Vf@kkor u?ßUT~Gs9ul1XJS<e-H&N]}uZZkv>HpMظ?3*pI:UH=n$UY&XMHl 4m-чFjXO89~f rmT&wfĥ]ۭs ^m?r&x N dsxP>n0S5#(S( *Hދe !2?e _jvA@rƛ<|у*v?Q93&3[$ô~DGXծM,3uT۝++//D񵜈.hvYqO͊J9#Rv|I.+8;KRh%#izsrfm0.kU_X*(zW¨~hrIv YXFw&D)z!FM" 3EGznzǷ>B3]A2 dyE͒ j%@ %RBҼ9Bs*Q(yޡAs"h{hY$b,V:dB/g@WѕMwWHDC_,3;=J_u`7P' u.n 9f7B G +:!LW 8Y]?$[8UH΂_WԴ˟ !⅂am78g]D?+~!@sF7?<: 0k0@_@ك+-[lipGS2A_#>6v,7̧ͩ5yĦq.7|,>UKA7dM`ַ܉{ŽIJ܎Cc]O˵ ~ފ6LT`K4.{0ANOS* $ڊ3)Ac X\8IIt˭Эč'v¸55!O ֝3 ެ79ΒTzհ=Wv6 k$(9BYGD&@E'ڟL|忨_!-qKW0Έp9boP _>)0 &kD|O_wm[L.v%oXbpIpnHi@r׳'dEjufs46D8;s+T7Ue e> Xo0DIx$Dƽ^Cm D qޕm_av]Q--l".w6F#]aKl` '"a(M) K- HpK[ |nJ 1\S~q**1U<1!"q7VAR2x&aPuh'#h;Vv%i"|^RL լvf9dDm8HKq^fs>^ꂡ/#"EJ ]xF }j4DΝi^X Ƥ+D IMwppK1@ kJ Uuek8gvhvVK|g ?K~tXH]>:ghWY]~>.T#XuR@rf)wBFG n~9FʗiH] c{_&3¢ۿTceV[ftjDri[r ٠mU,Wǂdhn?~;9H=]Mˆ_#eNΆ5}4xc,k:SǼ⬌D.FDfg$Ɗܔ1q M FR^G(OJsZxJyR,-yAt:'f;~ {s s"bzc}I iza+V̄01uWj_ܷ_)& _w/`B7\ /,y~DY̟ZNI[$%(]RALksTػ˼\z,ǁ.oj|-L*2qh J'8k#5S4n+fMaY ak4l%z[BU[FղFt#3O 8"[* ,;{f^[vM%s+-'b^m7z3){B] S”hŪ5MakC;. ☀C@nD0K 2ަ^qcGكThWf;-_' `fW3'Aﲦm=a9:_3'$;4ī  Qɸu#Zh&?Tu~:>"{r른uv2#A+x䍉^$>Jd0DTqtޤz6'KXŭ_hطNhza>qjƾl9j (d48Pn^6w`: ڌyʢYtлn9V?ٲ\D(n7ks?i66o0 hV~)DT O)$`iRԱl9nKp"pU hp^ jc{hDdVgto{a9vfoVhs*rf n~}"h?ћ֏G}&"p4Ju1A.lGKowgzBW պhͮ%OC 7h_z{=+ sdP؜DUy%M2ɑ"<"L$Uj_]Lc;OA&ߞ4ZHLޤ&Hz8I ;Q8/wgll!u#w' &4c4e2WBLQH7YІ B{$ϻ3S'lL{`}JK }N^ lW{YjT{yStQr{0E]Z 9T&oRy=k`}}$Vp=sP}Ӌ.Նz"zH1 R`QrWuuC!Pdb#:dGw*ó,qj%9zcho0CE,\gaNa[`}F?=MȈ5}ՙwOMo$}$[k{gN|_gh>/_ R/ݬR>'đET ;mo̰,ENKʔ*luCiqDP!&Kޤ\ٔx`IA.l+<8BcNie8">5ɇlMi]W8W2y3( CTD> _b6"Tq u6D ytT@Ÿ1D /ڄU ղڬNSlU] v.k.@ CSUX:=I*}"f̕8ɺcsHL ^ũq}S⿠{o>3II D?XcÓ&"} {VP*i[xp"lh3 qABG{I (I?@|jp1o i ө ѥ1-[@0on] Jg9 B>5ۯT'U}L ߱wvE5IPKء!r5pPU[߈9& nA'w̿+e0@.I^$b bI=|܌[Xi aqH;a4u(A7/][fLAi3Wy7 (j(fzfhUfG$@SY=!;Y{CT*-)A٤HDp7h?HV=,J씢G@`Pv)op4z4O=wКmIsZRzΎ=x״L0,0<}aTH*!QcnȉvSCTϫ{b/Z=iԭFJ0c?Y5)q[%vs  iso$\mD6n6Uԓ5lX_\cFGȱk"e7!JC[_tQOf6"l,Mn}VňaE '5*EkΖtқic² S~x"Jw/+-ED5h.6+sa}?q\He 3* W9_̇Ř $AA$*b`NQ{CV$:Uw h4Mi1WХOv`Ww>XF<̖@dyY"3V=  R?W_nz*@c&jF;ycăKs*T|?Wz'.g^{ߛR>#xAU; 7n%.BեuخQCbw#0=VױS\ dusLI6۹u&}-I= j}Ĥ3~R{ W8}̘a"WUѪ%dK~wj5M7 [-U^a^m%4sA.jMeyfκHxTL}&!a*Q{:**/fvb"K*ĕP5Ԧ$>@dQЏ_[Hq@YCa-[݊:lv[mcֱޡAG.[7._4{Ɔ;׎TSǙZ+;ثj](o76oW1T/2)d4&kޕw C*'G%N 1Y3 JzЋj 6NɰvO+dl V=f)zȂ"u"t[>#wȧQE_4ayRцͷ{7Dl+z2=)IXma`rv;Ʌ,:yl$Fߎ6cTCFBf~r6s<3&]k%hZ9).p;=AqS֤@d8n|fY-]4 "$$6, C¥M|SKjI0O*|GZeJ&bnws"S&Jʓi 8'!H)`3wTsF+5<'7Ͱ+,p\@҃2h2}FTă!C00bb)|6n`{ W#])OdDuKǰ^yy/g DFi| |ѺM7Δ7[1ǵM0r`.ɢcl"0L !r-7ϱeDXrfG&YPA*\2?ChS ^܅N[ j'UL*ESeLR]iBo|G ł5~/!~",t 9DžU"JM3פ0-ׁTT`Cl1iWF-ELcsJ (f 'S_u: &2ƻP i)ĵɁ-7BTԔ5rt,{79|i]Lx4HA &qzJ[C=#Z Pa-f0[i-ڂ`c%ƩIg`!œ` UV_;e-y{o/_RNՅIudOBL@[Y+k& r9oiao,h^RvZrj3K3z*M֓QVuV&. ql!rEw+HQCMVp IqHuV2|Ȑ-U{m6:V5 zeulopWlEOcLb0L(1p\G7g mJObZw9*vt,~6/W1nݺGʐ8VC [m Sw:7B 7?6"S*x()I&C Ǎad//K8d_^ZXN8ule"DD]\CI;4w%N޾~QQ j)itMR䵍(nH8H ,vH&G~a866 ;췔%"W2p1 ty:@g໮rw#HFW4D ]΂P(<4(*eOZzJxyG*h=yus6wA2 t:%k4wkMkkF#ikپM4ߝ?_i={VTSwA?ϕisa7`ZlUp{ :[ 6>!S'LgK(h*eΊS޼B~huE͍J޶:|r;@ ";Ǩ@tw] ͊4{^>dvqrKd%4רjYdek: =A)g,/#V牆z7&'_ v @_+C[`ccJ[R-#*p6a-/k`hz:_SbI6S7wuB  +{}džp֭v:}XB#^iuAt Ԑ6@#i_YI2 VƱGq݃^s ͖7M )pddf]+yZБ5@&Եx.0[B:* )Uw+R'}.KB rH<kHJ5:@J#EԠ] ׸YjOx3Vaj>A@6AJdvܣS4gۼQǟqoRbPn?.-jZ *ii֍gucVWMJRc%47r>eI qjtߔ0L=#_+?w񱙱z/{-7 q;/$rC3U[̬+my!l(Ía"-D ^3q{KO1Ff n=<ٸ{/7ۿK}Q@ԥ0oI/6BLȈ>,s҄aKCckA:" yǗV7z4B?ϧS[E! M_zKA7iQLV))WF(S5lJg+r=dQܿ%VK!3BPVT>Mؗ>wr?([\`|N@1V&?ZHQJuQKkZQTŲ&0geB'(q5𪹴@c0u"HRz-kapՖՃr(jE2\HPb8 Bn, .XD8ǯ js["Q |9'M^RJ_:`,#S d޿w] fbVduP&T֦:΃ $f ѥg:+W]k𨻠~װ<>׬v /nA} dH(ҘNJ+m~^ OtNXZa1V)C+W G@gI UCuEҵ77b)I؈qs" J=~AynQ;\ؓ<1XEH;_b g7gqӲ`u;WS%{gxRgt/ h_!E\aVqCs$Tݗ?bIhOa5vDM,@XݷJ|*ŖDإ@Pe٪aۿ ~F)\Hd,+q/Nb q BI;zx: VI&b3!!IwE+ɊPMreuyʭ|G4Na<{:sކpRL3BI6Ѧ7fti<~6xV|QIUf˶}_\lZ["*}okS=$puc{sožH#Go^ Nȳ! VtH%Vx$CN;Y'jHp'%X"A96Mک$Qѫ{;ec? }gvk N4OeLޖUV(0[@-6QBUN3r1,YF$i@ZPp`jȻ>+[>w1!u)Fa&03c'BX` Y`G*W:pfip_)P'Jzll  ͎tDv.ՔVY Dgimo zM'hmgq}EI P oW8*%"a;z R9ͻ>,};0Đ5pu$ !`T0sфܩ!4bHG(b6ުgst cG]TxKz6C\.8"Cv/+<D6F2: A& d4 ;dUI |1a4kHGzeB]ZKd^ZQ:҂w+:_Ѝw=3#O5 9PByY'I<{ 0 $#{2`<&3(c% Ŕ9}$q IQZ/TP5Ҏv9DR[S cC\^j]BAA6 09`iIA63ov%l\hje >͐ǎG!ߴOI9ExYpd9ڥi[s@:/vmE,4K>rb1F!fge.VTQ] fjAT(FHNacoЬ1!|F $ Z65#LK%C Ի OY3/fRU30I6I:{Af[4X%ASUmU ^=yK'(_w`5N:Zrl-q]?QɄtFeH!=c x)SZM  doU#PI=ne=#@+S[ݴɀEUhu$z6if;/V(4㞻֡KΡJyC@*ņ{ P6^0a C}ŊMT&urX4R*'KSɗm@}Wj@GtH.1ߠ˂↺λ!eR` -~ėPە3ndg'M_EH- p(-;[u,ϓ2-qS#~4 EbR)eiroww1/uk5z`T&7&݀FS:E,gI"tVe5{))W*T?öj:{ǩ ,-lZ73 /H7Fgy9亯 Zp*҅8Nr. 2-t>1TǽQ.eg93Ŕ"*z<3) f(h \g +aF)өtsHd?ЙEoZ砀T=J9$%y Pg7?wAUpWm^k<?Z /SB,'5sf4+!3J $򖠄V?6YC҄o: dAX6F\"2env|~YqS/. $fNJjx%]9!y /Nm-m"-\xױy:vB=(?IX9'4x?`6'x徭C#X,^;Ȋ 3M<&^q 1` vu}5VN` 5V*}0[\Oy SxFe:M BnHnwe6k%JpzO"!L.kuMh˘ꘪ:23jp_<#":Ѥ=b%*=Z;tհfpG"7YL/@ۡyFa35 Kb:QJ1(+|o us n4!x*|{_D}0LjPss'46MձO^m(Ahfϟ|w62dnru|)&xW=TِľVȜ J.>zNT3?wǔGb=r+kz #CY[Tpfw=5οbrhjY^3&Ϙ љYLEr8zL!5'2΂ GRXk@=UQ* dZBޞ?hRK>]qu= sp3bM > sؗ~AZ=|n>BcVy3K0o_ \.S mt | " |?6KG1lOu}35=$cZGYG7ϩ[ P'iTC>,H*ob֊c4S3nK?{oJګ Ny# \hVW+Me5>.h2J 'P5يw,Vsmϣ@$:!*J7‰{6<’խ'c8B %Uzm~r5-dOaK[t3aNOp  C՝{ إdY掉!4 oANpذ8 n$eY{MqNFλZgе5H^mkZymK|z%t^sem/8K>; ̲u$1ln`܁'kiͦS%\kD_ O vZ:[m% tԁ6/(ZSskD>њvib!0C)[E I=DA"?PbZ,J/p\׮qz,"* `ec<]HCnrln\??­6`G?ok43\3}D΀r^__82]y} 'D~}٥0g.)AQ~Hih3m+sHTֵy,Ej؀CG>$6!Dt:\ތIGx2/s)ݲKYĴl q w%br[2yP2 .(߲ԺShl/0~P?fF9f1r]I%yWdhuVsͩZ6_`/T8"uDW_C6Md*̩8QQ#/sZg1Lj5w 5)n#>[*($ӜLڡwOj[PPwɘ('}dy>eq?@P[0Y5(Ȉ4whQ)Ru~rzEZ\OL!ڕި[Z]Ntx"sh0+[Cbϥ,M&Ѧʠ.oF}hTwb*B(b!`Ah8@{"ehkWw}EzZ㱃Rb0=^OK먭+/>Rrx=nxL1KmՋQ:,b]e5Z0qeU|6Hgw`k!7V _,El_kD`µp9Z<4Uq&Өr$RpbčlTR ;Xi]FТG^ n=i'p ~x.B0 .(}|V׷W_Ж+ld,4f& ꅙgWO K/N{y"jdU9+[@Ol/,O Gb!9FR*FnHS]HT (Be{ѴP=B1@3e1% w0G 8=Od/ӵCɾ3dF.zCqO2!::-SR{?_% eLڨgI[LT6am3pg:3 iwRU"%-V,NK B7 1!EHE8ThP؁h+``CA)G 4[XCzm12!ߋ̌Hb_+B!r켙فvPQpwSB~Jy|+MXUi;o'0.(]9яy꣟ BM ܱW[8R`bdߍg'!Pf4vE@? H* T@pdSW2k< Û~_ V[Æ ahK 5-iK"Ԩu,\Gi1 g<ظI>=D 7_(d6>AG[ce7iȏu!9$ȖDV/zŹglά ziQ'~c2oܾxTu]666G_k$_)]5lZ`t><\dgXd@F$UZJK-e~MȿO%"(r"HHtMJm2HG:#Xz6yFX#c/ ?uG=rua}֫4^7#ܡOW}itcnJRK@U󅉭peS6l*QIʹ'D ۫ >tdL>E?h^\|t-ڲ+VL*5(QZ-&(j8:Mo6 BE3DS݋:A=]MK܉xHxƕ/|ZV%mo_0PPKyyhO5k8OO~2xHHne~9*w#K8DbT#{ ,s4{ 2[5)ϖq~Sx0 -;)YZMtaP:kd9tAQZ)c\~cZA8ڙY< yS+p'xӨB2},a``|Od)N^/4 u/Nԃ@NƂ;cja$$~@j\[w=HgjLުI"ăQճdnA!*#"As]~u @^8 sL4-y<5%y)P0n:p-(ZZhy~V˖.:Tυk[ ڥVpyEA0aciRt3fKqk1NL:l>&|-ƼWer\Ta( 6R H,jpi+SPl(.eO@%\.%D6>ME^zFԅ'DڂH>߳'pdbBl?M29H#D* ;GVmVXqo.>MI|-O"<B!מV/Lg),;^bd, ֖'Yq )- Y9^X!] `q;IG cjo6֏䞩P˴ ߷4S+T{瘳6n h]ѮFxLX=cee0n1xMu%7 I;SNUToݞ,};`4#\`Tkӟ=RJLo%~RmKn] zjJe0b#_p ='NEavTm٥k'>tOj](g~"2 A:ŐP۪Ў;7`cŅ`P&g Q>mln?4u`-uk\ܼUd^2|m6$,9"aZ=bFjgpu< ԩ8iU̿ W>%WF/qCE]j>?1@H:j]A=\ͨAhu }I8gI{Xr( 0*PfWcU!Z)mԭKѢtWlJԯpIf,AT.}Y dW Y`/gQ{eb.?N\Uw SiVn>1%zbUF85T[&xKqLG>@[1Lc3S9v/ S=ćix+TBz~q- |/Ӈ/rmے`%*s(ɋdWړ{C T61Q8Oג Z-O,?c XpEFr>>sfݗ`J(HDuÐ}߄p` 0omBN@Ǐ[@.9ۖ3E^݁Z}`J{»j. qxK~|+yx2iSH݊x˲X #hxԾhTVp B@LZ"Bn$dۄey#^5>^=* MݑVoQK~~F88R44:t!&ghAκVxUUKMȷtZxawd7^5^|c[B x!34w0ie2b4&2%*-.w<;"r@~H!;bz gQBanLY4 Jf$?`.8jiYp&[GR~8P.H 98U,q3(xˋ7MMh9`?h?)Wv|¶3R-^դ=UCeHԘMA5A몛v20Bx6z)ئ=ef=bIqĬW[ߊ]DfJ5[x2`_;Ni2{ 7r ]7@z] /W'M:J i{#B P#xGYš4OK.>>&7C 2&=X R3= >p>W#n@ f2 Phl. V+Gr&j|ZAay3ֱIprĎR?A~Eƺuv؞2>HJ(5',KYio(|&JHP}5q*ND뎰Pi^V6yxZ"' 7 #/~*b!}4=rʯX(Y'8GSR\y2xHz+}O?'̩b΅YfIIxGA58n t:n.VОu?DvInRD2?Jg 1=:GPahj{Znisg`uɜ'F!Ӷ85gɪ5~ьeg]@kȼ]~7.R]slvR]kO$#  +XX|SLQ:")24N~mMѶAð='#a]2x?<,19;p5wd>I44"ϦxgQ,~Yk 7gZG/bN Y`ѓ=\++ H[lA\ ;i1P]t<L{xEHw)RRk%JHk 5 IJN< g; KHR5;29HeRg뜪OYbmL舻 @5X|QB#Ajt%aC #BKKSd zIsvXM3Ƨ%z?^GX]Pg)-;AE.vYֲE,w@s⛻&[=e4^3׈4Ͳ`!/}xC[TKD*^_[t{H@8kz\!GH v ~*P if?᳨ll5IbGhG3Ҥ&CB36 +Yզ ~3(!١1|T@nПY2 (K=X!>:𶆻P=v蕋, gAɾxBHIl >DY=\>$+?L*3Z mU P磢(49V=*X qwfE*`҅N@'|6j56L-fwhe5mWG).5籬3gGUBa!GMd˶'}˱J[6z>z,ʼnMupw1Xη(r0< 6YI.0&†m:KDPFka$k$Fwxx- =b-1D)ՎGFE)@SPe۟372IO mW$X瑖:pOQ ?L!{OK>$kRIͪlui0mlJ%ͨ%~ >])w\fyc%vquM DT6cgz]"P%|I +\mKw%8]]7Π6?[=|}T# 8SOmi+[#aa\68Y1]c5YA~\n ,cHF4]bSHhѲXӶtwP:z$c";' *#Kبl bHHX9%ǃp8@*̫qa.n:>G$+TPٞ@+E^IqT(n H, Nu{\_Ӊf/D<`#wy.b]|b9nl0WO(r{X!Y QMMP'! ZxD4L eڹofM杲"/g=,ymZĠʡ)^ƕewYA섋55j.-ԧ]_zU/.GKvuFA'f|z#ZPóhSV;^#ߔ4x&[\jiMA1ҫhvWaE7w}TɢsV^"n%<ڂ[4Ȣ[/vQO, GW{u\o!*/4tZU[`7}~CK]t9}%f|k@*| l na!) ;)M{)A/wu}WʖiiɗfZT3H7$z(H+vZ]jEBVb6c܇m 9,eWh IJrx D8o4yVʼnIcY\ϗMuL5czK;,]NӀ ij+Atwla ڌx}0@ jԴaL!d7n:jJnIaA-`FE|rF[>EC1)`rs;?{(h_sN <>j _&V^&45^x`|>Hy*1͊g񄎒>l~e$o `ƥA棣G?Լ9ɞ@|O_Plj8ƥ;+;3dou~Rswְɛ+_vE}]WgJ1%k_Zz>LV6Tw'o v3̍¹a;mVy]h&pux^Ϡ V'2Ǣ٪(Sg[yۊ5}I?]briwt0/a7( /nO|3XȌ$2P1JN*e NfZ"`;ؤxF6O. ʧ(eQvQ%S ].PV|?F~oi#tH: =U-+1t 3Fk7'L QA*,d+c ߲F\J`—uѡ#@&]}%^0Үqz|bQe<ȘnM^d|-=[YU4KYvaMͶ)9ni5r΀qY?nv}momE`O%im3ZݪfzےȇdV 젪iI_Ϣ\Szcv\T̝+&lqf jB'l.NknGCO&=zTT?ݨږYEQl tXr}$F%VvG'f:H<#bhC~Pm >ԬSh'V<ĕXw[0er(+6:sY#n$ZyO}N4v5Jb?^DD 33-bjz`*;Dh/65xbI)CݦQ4ݙ^[N486u͉Kklab :I'G$]ug㐛 |k>v7NxazڱbEѮeeq=@Ccs@XS#@QF)޾U445N¨5eG"l:%JjgNvT+ 9CV|]lP0[p( G}x1LHzv{!.;NXB3j֙XC42*T,B$Pk VjrS|/"敪WM:;q-tWxCU3^ė$OOz>9K,ڂH{TB-ΩHRM=a]:PT[X\JOάCoҀ;$C3( IE Jg+KJ ]zS),9]°;!iTB w"FAt.a/$馞YY|c簆ݰ^vӬd?ۅvɬA3azNq%tە"l0y>,9 ihw]PWrsq"iT q=*'j〭i̙rr"bGe0! 9?RJR-u= 9Qv6 A5ݲdΤDzF }MQ9ꪹrTZ&$!O8 (l#w`컹"_l\mJ(=/.lWrT?-slQ ;B+E2AT[ 1 )8h78@idt%7Tfw}*]Hd\X>JIi@wڪtuJ9ex ¯.}ŨQ@~4_@ZIM~Ÿ\ +Opry!{9A,礛~IyEB.sj3|kq )o9 4U6f = P8٦jpkplO*%E.gEOY 6_Xv <$$( $[^~}o@{4N(lq^ڣBG:,*ܐJq~B;[DnZysrV0Iy|MB^/ols@+G>l>|ޏS#-6}Xҷ R4n}-=s~ZG~#dQ'W-C目" \bͫt`/mfG1#?=joia(!J L]aNOLJc?u 2A4ݶ* Ɛ G0<$4y-4ֺV{0PҤBP$Kv/6| <%/U:եaO"՝twb69&HVMՁu|a-:qfݜ>` P8p>RN&PZTx f^mT6K%bqB2{/ }Uegur.%z_wo^7AB(IqR8䓪I>:I>,:qF3wtJ|Ksm_^4{w l>|8u^i%f,b+Z (|Wmi;!*ze}x{=28Trios?VԿh]1zMDP8 jBozSiLZA7 n9 Uς3Dcg=kI[ϰ:>V\9)uZW]i]DŞ9ۂM(ߦ!DG9: vB%HQ v*ohqy0kt8r)WI%6Mm*Ll9gW k!/D[e7(H\ֻL Q7P3DB0jwNU1<{߬?u('r[GE-B)K*F/)v@rи4՝ȀAw׳WmӣU]ty'{Ӥ_l'yXrO_-Nv!켮uJ!IG ꀣ 9A[M:N=@oӂ Cog:bA:oqɫhABk.jH} !uI)&.>0:CW>kQ64=L~7:Ĝb]}Ӕٷs @U=!,(>֋%ӸHt5x1E2ܿFFq1|ؾ^+7䧢yc "MſƮ%a`eD2)?n؞ӰКDeov>?aY?KB6CzIf'SR*}WãZ香bce~ɪD݊Cz nLc%PQ*v\N)+pz`.ZuM{]2Z6k+xk`=|l\R9OWOV};B-\%v-t1+vUm/%]WD.ڄNʌy3 Fqv<l%c6"]xd8;Bd{@5oJ2,hè&oP>fkU3͖I \O3m-- ,|LM@*t*&R  ; e[iw- Tw ˭=֗|B%cMn=o2YEBqߟ}LPFM92i,c۾>LlIW~aaIh{@ݨg3ѡR={L'CZ QG.Q( mӥUk=V6ds< *$"+ʦq-GP$o=$z5L1fg3d@^ko. c N Un^UE3?9ݻp2CSN2@  s UE},rJHb(+ 7w̶\((dVINv[ VBq$bz/;@? ZbcٵCKKjT5K>A pc.@1%k)ws-;BEh{̘@5Ak`d}PQeqpí.& F"5} j0V_b5êČ1sa $QS J4W>E)P`)شh0XP`ikRɼTCg_&DQhuIݘyz7H!fݳ4iq-z i8̤R+*(\ۍm`XxgcӓkK0+.;5kZ+MCՖ$ݼ% ʽ9W, egYm%8kl Cm߂L93Sc{P˩U84s5M.5N7n$^nL _OmroK-ʥKcYu1jgRBդl~e۱ܹFx%7u/ffŸ9ƿbL_-˹I'e4MZ;՗Hk*m2h`^e q|F.:B{Ö 'S\{\Me$EsGr[yց;AvšAm, ԾPٚKbAڊ< - f?Qȋw&3rwrA}-)lE{7$Ay[B~ _x3f36}Fd-zXCD>n\q8\3ˍT.U(rgk^ 63w>Rb HPsxZΞHН"gdh0fHv12YBG|7Wc5g+*B{ytmyHz5.yk(! G=p)JT X1r3Wh}!2UAcmLW ^|T}T)5b $_$MS&A L+ȏxIK neZ>Vd:O4ё\ 6:VDZ5 gu_m{T|[o Ch3^cלn PM55JtW'X+> 3kI0=C3 bS0-Z]1}]Qr3 4ON!$\f־l3ln+TQ`BzMͣOqC;ZoH} վ#οW;ꐩ-T B|U˛SH<$ ؟4w?n 7E~ڠѨ`iT6Òhd߮J,邺nXi+.D<:B=jr&^+;s07l4<'!z<^74RAg힦ڳ~>$p ђ;6vXE2/=x( 㙥LXJ;v*Cx,:/*2`q^ψ҃oa&̠l(77SL\;1³Dy_y#fkm[czGc7_m (q#IfUE>]+(19aÊ$ ^vIsuQ\pғFg-n@-QA\j6^ C`׃tWiGBs琝2u樼nb>LeSC:N6ZKg|L ζb 4iA7Jzcs9d.ʠf vf˵/\eHe'P|[Tia"4ٽȔNpR\F̯PԜkjhiz0۠+@` zsm Ѫ]/@,ˡ(M\=voIv&o@nd}VfqG㽀({y~bͻf¬6fCۭ{]-Hkj MאK;6R/౉W#[@qX8"gRήBa%׏Sy[Z jfKXJ@רޖQ +.[R 3|j13TUf媓<'F!p)ܞ^N}IIuF+p Ϙ!Xrn'%1Y5NkɽV哝_m92f]) ŭw,< ipIK#R|H>`x)aO]z1ZV o ""哃3"fEk{ϺɅI]ץ )X{= 9zkZa*: kk(w9L y &tb)q },/?h <cm{D+P~S8W)Ε7<2M )Iޡ!vm0 G0Y5aPјEx-gDZS\-ҳc+:$/ۈژ ԤIJzt1ڞUE]Rrib 5I$޿GxsS q96ıgFp8V1\QLkri̵G`O3C \NvV5ezCL30^0P;ĩ1VmAτ5$Bb1+f3x1k>'=HT#_4Gug{nT8ϰ G "/V 0)!:K[6GdbG:)ozϟ:b*ֽ%)>uY\Vv[S e.5/G&&>Ŧnŷ5JGFt,#V*Ǽ3ǜl 'j9A6Uj'%+wDž$9&1(}KQ_~ U͘\S.1o&.:K6X4l_ Y)˟ #w %/X4[αh,/ ( wCŻ7W&Ldp ЏaʮgD26:6@jK'{=t𫁬g6C@Z kșf-0^ q$n}ߋMnxi|.TX0:Z-f$ɑ|;?kvR\:f$.H{ܺ$;9y,ن1[5Ng:nm99rKK8:yG<1bFĵc*h.P# V0\`qɃ ka [&]^}>M eZνD}0UםVAFW|ʉVh^In[֍/ UmO=gKNK\HaeIyIIr3p[h"N $=oƘ4xmQ! IQ6K?,4Z?qvJ m2^l8jtc:6cwOUxp҆$$⤆9:c샜YA6WhB']үL fxeb6C 翺L4̉Hpffq C ϱvnk1POؙXЩūD<v.uF@oƯp(9liΞ/gtL:{BEZcӹb]P$Tع[yaV` b%s5?$^ř~Qd5iյg1a;~l^Ja{cKkGYNt_ UbV;IcB0~~)?/[#{K9{,5Xd FLvz Eձ"'f[|P2uzdZW?"O]?W:F—KCzGXCq _duʑXD28q: m Gzk5HG聾NQmRj%F6hT1SֈĪC|K,E'`sLЈK2yh`UOg3OzGh,>Q.:AZ"m]8`7'liVwmݤ h]7-fD5&(ifޡT +BḼ+OOiI H-MXFrqD{gc\mvcj?'"k>Ri y`"\ΟyÍW;+&FVwe1V%Wyvշm[6ս5]_\zjdRzfwb{ ƿ pl[#tj!aןi1#`/*_uQ͌elt Օ H+@PCrRN8QG'u4kkP,̢S`{(;mfkQqTYSW:Hqq$HU/#B@f8۬~Vaoij^부Of.TU뙵)EjQNBp:,͊L?"4@:7eG:k9%d a'v?X*rY3ufځ}~D#lE'$?Ăch kOn7X[)g\Ne}]gGU_=݌?ءpIx wq{@P`ԯU8<@Tasп+C0V4x~oyiUbZ `44>CeBqhN=-_U 4IB̺WkNoKX~[bPNu/>f+"{8d?Gn}LЯ€vY X seմn`׍0vxHIYꑤyXx!?} SYN("Hs:@5dI2{Kpzi";(rCBkC0QRygh;v_?_u[$VŹFY16rpǺqڠf4u}AkSQL.ÃM'P2~6Xe,uQVC - ꑷ1T6괝5U:x+ZJUHH7!=2jϞԸ.m\s_ţfsjy]IiV b(P肹n+9Mm\km[fⱷ=r-ghF"o VI`\{WT$3 |hZ*J7A}Q9+ Ec0s`f|8 :AR N8)D-i'/J&^-e1 1aLO*)!šotS{2g uW-^4 L 7V&BtDPG-s܃~}ZnԖT!Ӫ;#!إPZށmy FBbT(b*Zw&ij 50蛙j!)qbiX4D}=޳a̪\zns)xc i ւ\:ޟh v!LVrw*K% Yrܘʟ+Z;tƜfq|6Jѽ} [ONPs fSNVBXta+7  ydLڶJiC2qMEio#p[lqժWA{6nӑ=Tݟ~$5j 8d9D9ڀ@\{PLJ.YodPzjKj.@ GL,S=Dx>CbR.Ƣ tߔ9 @!\ig/zv.Ml`=AD:j;!ϼ$qo5πhxG1Kf&ͩ}%WcJMDۙ 烦3UPt%!C"u%I2oO 3 8 O_R&6"HA2}Rd.QUz8t5l;t5V_9ܒ$:c4ḟ^*|/pW \dh[2M|{Z7ޕ0%PH5krb29\P*E=ŎYT(V)=ۀ"Fa-f(+cO)k)Oվʏ _Z uPO$%hg^Q GS໵K06BT4 P3WKWL`Q1.Q)#󮢣, C[~W d&@ t SkV1;,xHVlo*|iansHew/VU|⼪ 6mIʾC t] u6:Qs,9]<EfѦAɜҨ̛rK w[X&s{c.XwGwX|{&]1ISA볟{zn{0 v;F>8ՔHUN_^؏Θ+ѿЉt(MftOy,l-G:5KZ\t%֩ {IP*r"KU'p4}8{7#"n"G&),GOG-$2!Kd)}398o5ddwUR/8X:6 <,񐖥ŗ!tOwed^EK]{{P}AW#Ǥ-1`c k׌:y®ը))W?C5Ŏ²,ShrZc)R I-YXsƋKzX30FcY5Zwt̑)#rxP/"uw wܾ);e@t(`}~9LD1Li&7[ѼCmB\Ce[y(b!d՚Ov Zr7@tU1Ԃ nB6eZqgģp'j@Sҿ ?88%qˎ3w L p? 6UܾKҬ׉{\P'$TP=2^)gk~4x 4)/ٮwj8S[&w=#X_e*YGwjuRX+ig0r'T?լ6Bj_3}WʇzTT([e|_!x$pm|`HBBǠ5o*޷`+,|>1WV@=1rWU^)0e5Z8e~zC 4lncd6cЀX.K怪Z+m.ݷ_I[ZV,@%_501{@OU@ ;@+[*hbO#k|gb/3P~}sJ irBfK.: uYT h$Ƃ^\Iދ~~ i5kG5KGNq^>0w~lBI"nF=‰ep-3 ֕yl+~{XUPJLIfߑMWV5w1O %TDs'=>Zy,g{BLG<%aX(IWenأ#dpS΄8Yq)N y/uS<Ϩ ߲mr5`wCP0N9^jUv\FS+pLqWIWYqG]+*@2a}|Ya5g\.B7D1ꂅu1UBGj|T>ճI@_}N`mpR ̽DCX*TʔXQL NE97xhu܍"ާE-L>!hNgK#0=9KG2kFYQo2ȟP w.K s\]~ fȲ3QPa53CkRO%Zx5wQ(ZP$ ӐdxAa6bD4?R1=+b5?{ iPQ#FC "ˮ}P*)SZI2'd]ᅙLӗץkFW3?Cmiu:0"` n~mr}6nAB˲k0/'R7Ay]N\6dٗI,SDHO|fY%HqLƒ I W: 8r³F)~?XT\LQBO=b4w$/Mwx(z᳛){{]\V"qcJNTz6SGdotakFCd@^ί >9udf|-B*X֝L38m=E5<sWampN\ &wtDM:ȯl؋E +l%E>@ә5𣰴_΀%4{dnTT VTFtl`⃁}79:067WRbpj;aNUb<2%ϖOTE~Ȋh f葋x4.ЧXj5{á~tZA4 Ve VP`VsK:6!))Ny;cxȚ\CH!;gM}Ypl.ymwpA#A+ƒ5: izF{AُLvnIJûloΔkcFҡئ#DԪc:Bth[\}NWtڷv/Yο'+Iv˄$wwF ]=@naj[X'%3Uk HyL!vYhU }{pXIX0v 9d)LB!:I1GE[7ǚ* GWcܩEd)\tAw浀^6nVQ9dxƸ}N s̚i d\K!IFa*^=@Yܡò=ЖQ A wEH v'xp'eex[> "5} 0#͓-iלgFWN,@)Ez+[o~Di+GwLv[+)d4`u𕑬!jRO}ŀkpI#Jv|MCMco],ʓ`|;4[MIY'k-%0;x\8pi;&dg\;>Vmd ;\x7P\HP1 ui{'̴n*":yBK2d%pQpP,Aٵv#8:( ,A` 2đQ}" ZOl&"zu7mHv F?`:ڳJR;D*t7.T-E}m\9׌GϚY9i{xJ<͸2n;!r{/x%BQv|6+?U09B dRKGKԎ򫅖 :`'H_\ۼ{6.F5]3Dz?)M)Rw do닠&4Nu0_^QpE  -T̶˺ǯlAq͎C] ~wxJ; D#yߒqm\q͉̌p:o 3)cijs8#4<!սb=Zo*i u})z;Ȉ]FȺNrR4GƮ;XicE 3W*]Xja *=y I^pYV\= *ʧ0F0=w?Q 4lKNe.טU/lw& s}sV@hC*5DI!Fān,DQoЀԜ|VeA!W*A&e!#[HAgW'%;l Oh)܂r6%( Ҕ6Kw diO|U4Qxv5p>LnU5<:e҉^D_1"0fbD6o.lRm@8687x+}8|yRA]v*!\伆,e?}_98ę~^zWL芗f%j'69h?͢iBUDZBA'.tA ٿ4V7SSX#zV#%\08ęKۦ8A/2L6HʑsyŤau(}r,7lm?wOGC 9u b,DvI j>l?aT>bB( +p~BҜLnJIuH [M7.D/&ނ7d0ӤT3Tŕo@",䃌٧?kqB ^7& <V|s5VC.ulz)FNjffV|.lTi^sWLNOIIȓUE4\ bU mީŏtPE&j{16iRuCg:_'VLԴVеkDzF)V} cY \Ll=TJ+{Tl|kQg =OAM+D4/_uwVCde (!_Bp8:]@ Emw/0 '  vzvY;AgTbrY}:@NmC L#~A 2"t2㚩F(dkRwL"0'+32G_dp:#¼RaUXDWe#%{Ќ@W;>~mJ?~kmuW[Lor{V>[ ǬS{DCOl\q빶p) ):?#ZOSZ+ur#eKh9+rNɾMjpjGWNeUDq9EIcj4_}sE)V wfOCP#htwT'8)0w$/=.ej(2*N;$iva:K2ƚ Z|)2]O4,b߫c CD3E!"]C wK@ [HeC_˺qeDn}K#~iIlN2ԥίrYhp8dꭈI(cZr \dJ imoc %YYApmpψ=d s3 8&u9KIP2%\G^@4ϖ,#n(EfY0MD>ׅB\PaqVhCvċ@'uoVyǞMpM*tifeo# xq) rș@Xƹ&$N}m?{R;'".?zIDkb wEFm('_0O=>[8:Ta\?{f:Q:۩Mnkx9C㢂n֌W{ -=-DYu}6)c! I.<. 1e_{w3;ɔl[(f7qIa̝\elEup[ޚ \3;fgKaCyVv]QPA|oӰoMYtRJ}Z.FBrxS)1!{r^I%ebF Ț9Ys.BMkRĪXf>fK>EO H [a4Ħ$} DWӯ"Й r78cc"yqe- ) RN`ϒA^jf>,`TBZDC|Z-DP .FGVT1ev_#{"JUK/^|7䧱P>yJ-3t9~Vx>~!'s\~\>мfMv9Rӿa7شRV%[c=J̈́t)o{DzagD2qCʥO[YzΟAU A#L҈$)6`Y&0LJspo gO1[u=qAX#\<QT[b2cH%da8-4c\Is=Kqk$ޭSICwx Ho0<(P B Z#vs:~YS5֟*K ]{7 'to>N..c 71`zBI7QISG2S3c?Z2ՠR:D`Dko^ G48Hɪ &6dT C YEC+I}{g `AVHhFzKqo%Dȣ(NS(1-gYEs1v+crC!)z n|2^{D,#X#*/&' E!et(̷TH8g&"x4H1~׽0j]Zq66#   ȤB'zY.c i%N ?9"d&tWC-HYb *(ygB,>n$cvIEJGU~33{LU5c棨yž ucJY<_/ 0\eT8vX6^c kLEY0 J=l}t&W ÍH} dGYzD!d3#]w@nW#(~.|b PQC٫w16_r;p e\D둣ZMAb(y,H ;F$t? QS--жԝk ?+,e4WGЦQ>݈#9((5N@_v<%.*4t@)!cVU;g L} #6 ΃I*%&Z2?kxaXؙr_}$?dj-@g|YU*UDGSs8[`);v%F?" vj;ݍ憜gg;ֽj%:vu7bXT'+}v OӗgvSԟ6A,Z1AX0k/,[Dc<֌ TMh[[+9ʖ;0RQatų>C짏!#RQ.O.Ku60S֡'|ue) "Lr84 f};! Mv'%ْr4C.wpӰ/ A 2Ƶg) ;Ka.6~oմ-NTގŘw$68s\]yN,OP߷ "5X4"=D&*E.-9A`@F+!F>E?'g'j!km.]cc,1#;kGp$2!dߍ%L!$ 3Q3/u,-YPpZmN@94xԇp D'[5tz0¾Ԃʦ&BLvtҋ=5G'Uj&sSn, 'bRK(N%3 i#~oT'v;w|vkiaG~RJ5FM\ݔ+PuxjPFݏ^w~T$[ *ʹ]kBc>͑~NWҥ k3*xpZEVs8+/%(H>Bp&.Flu2sY&OZM2Zf|1b'#[p0 xǽQEXP\Ayfb/|w@^Sm J+ æ [}{DAwsH4?FoSct Brl;瘅Wܨ$Ɩ(pڂl>&/]{!AKByakX5ler`t{|A3sѿBt`8Es tu6FumԤ2|MLܣ;SlndqҶwprЁM'$Q#uD,'k^|ɵ* *~A3=J,q3XXO˱=a_>\-ZcAV]]ٙ xP0,U :cԵ>r*\RÎ$ '5 (?b~H0Gyݶ70 .|⾷jtz!QYyl_\mY2{2]uPH/RbL/K @*0-Qbs5d7FdW^~Yw J{ݽ$PӾCb6m>€̦fڙc69d7,qƘ VRLqU^!El-3vPN^:Jv^wUR)iL38P0mgnO)E@'b}t[-N\r_yR8QLzQ-ok6UyY ~-@!ݶK'jAxtcr@QUb=^Z,P}cԷv `UQwBE Abu{BѸ|Z` M\C=n~vOa—?30Ȥ @#bC{e%Rr~t*iv+i($&h*w## ֔meu Fw!y)%т#*ݰŸЛ,:(oq@oB>d;WvARt@ >T:5dʮ#D~\6w^Eг.$,l {"4oE4d d_> N!l+1e AON,9#A:Eaw6ka^he7cj_NH,zvsK2iȼp.\XM 0 Y3 =6a] șZe#o.̉"1Hc>VdK" 8]A>Sj%bۘb'~l x5BCZKc&?Wn<<7Ȧ#*n@ >:D`*=QU׹y݀d.Rdam:Y4li5s]E^j+[ o%|T&85NyXO* (yk4C%Erd#ff0sU#N['EQvGF^3[gd,;D{MH"cܳb7dNJtw=.̩\Gtza4d1pT#5vsm\\[TT?0%bmj+• tmv_ۺ1:fAn=CjQbXI0/H}[w5U+S<պ2Cq ۱ATiB¢;nLHpZ[8\"e5jπG?d{ͺġ˒UQi"B@,.11\ާ **̟`rXӉ.s) ijCAgY<:u$1ʟTޚcR" 8[rht!Pܩbv1лGDrnDŽ1ڀs`)AŷomW̵MXA6zR|"\Cmdg*Hr8lZ+ ?V'3jDMZ\a4oֻR\d)lJuJ?mR҃n(~s4^$V~m݅bA[J98XSZ}3֪']JvmtLxܝd uڪp'p6z*K`M"٭fk=T[EA?V e6" Vd6n9Onfμ(bGѠb;#FAIyѓ<6L:九"8lQk،Z|4U)NF} +np򯽁gw\L{۟@ ٫paYS wY)XQK ŞDˍ#g8 G髪&ﭑ5X}ѰpJ*+,80{mՇwOwhԁ7.) :yl]lጸ"QԨŰubWP<2Abb $L-kuXLyxH@j2+Wp&Y.h5xvEQ'ҋL?^ bdyUoO f k0'FU ֜SVm&'=<~i8EGFvPu^">D,M@ SF?.;U1nA28,.|yM=w VD*r]W:}*I&7. C/`O?;lj'̘41x6yohU.2qLKm<,KC]V&Fy b8R=&+Ⱦ[n+r%?#ReEVf5 3)21>=RN-:z{wHМ$ ̒N<Ϛx`f0T\ᩦIzS}fꃓgUly2KKԠbt@bQ(KlSY-{agKԉa zKK N'qhhS\xm&Wx|z]p:@d_b*j)TU$3սE|@f~ C3F[uQsumQ0&Cʆ-,Fj0eR>mE K.Z\q6WX' t͐8eɓ)L CoB^v Δl4.8X7 Jpw2lԉtX:36 m#@7!Zwj'j>=ޭvғ:da y Icw#ޫ<h*`,p\Pair셣&3M0hSb*#CdQ11W)Sbh[xזStHt;䤼_C*l(^hۧѥR<[o@=F|ƭUȑj0S"(_ĸ92⮀Q q鏝 T|h[fʅlcC慆DȂ9fV%1Q<F7i7(7ژ~|73"] h:ѻ|:adJyH96exE׾i1naQM 絰ZfIQ]YoZMY^xsF& d4>Tn%x%Dlv(}^ )u&sf*'ԡT6e&j?5LPA þ*ib䆗W@UC٣mK=!MH [pXvŊr]~ƸٱxqW>!vೠvcSmUpQSg o [~Цt--]{eEF Pp/xkCO#;O՜mu;j{gi̍or9V(qZ#" %ջi VA O-rhW)H?Zʩ4~q2a9^ng5DvBCތ)/Trf//}s2羿:29kEܜ=bN]q~Ve/^:,%@B??SB7&9DIzi R< 묢;ttyewd= ^6QŖ #AKa9 u]Bɒf3$, Ȅ3~l2\3\FL,.G!Rsb1M@ ɉ~*uMh-gmi;Iw?D8ݛHd-ur_Ģk O`}Gvt/Z&{eu )2FCPk 40GfssȫJPrjT (ρJ+` ŚQ[ȑoD94{Lw3.`򧫨>c=Æ㺎˵ 0m9++,姑d׫&a v4d`$Cy`7jF{DͶ@\ǁ p"˜ WwyaĆ.Nkb\n#C.\Z(̐Wæ<{L3r;=m5< 9xg پn'sDjyj,(*NVujzuTb+HcqIu XԽ5 tVt^dX!>|X73hANޔgm 5`G\Q褀-zs=[,'g tv _r;c`z)I(V!fqWU-,GD.-S-|^/~ϻX]p]GK7Ko[#,L mOI乢?-vmRJ}]nXؕH]{E97j5";fˈh r|”\E!&#TM\Yw(K`o%G~ Kx〥^t>6,Q .v-CAۋ,-=<P;8]\_Gz 2l*F=ecozxHN\XvT:aɽ36D}tȣ\-W!f &uwFܱ.QDiY T4!T|~7ɼO{]d0\L|>pLx>[qxxa)jLtI;ߋ1c.& ].>,@  2ōۻ'_S Dӂqօ81rd|BnbgO}?3rxڹnJ&T/mѮ'ed{qfsu\߱0eB܄ %$~~|XZKݰ b.idS2w?$SW ]2ptb6X;% GbK|`ar^Zz+$;b-~g.eo<%0H$z܂<#ͯśߎEgWcWUN3~c qh7.׈v½JAo$S b!*cDH v,XN,Bv,AVՀsn Pd%vDxLTZh2|:lتtǃD]1V> pnj.}SrR~2/~ا ,\v4 (:F;\nNDSyS3QŕCgIU9< w+`iVt6NOD[vM$`zO}YT|wCpx+7˒(m00`kyX(o]uE i^̐x>CS $'T -R>QN2׵O}0UX+ֹ*`zܧ8ALaD1DXvh+D7=X w']31Ʊ܁:nϐ8Wp08WύrER €xGJ9*練hZh+ٍ5{x:}Paeڷ2w[\dEb L{W؞f;8߭C3{%pN 7@$u : 63:#-o @W9X)0 TC\5c7oH$D`O _H4.p[`9^pdQI%ҁ<G㤿|yRaXFs1f[qv2{{%*~+K&!R)BC0/M `fHgf>[V00$'eq*~խwʚt;(|) `IY/ ?[m^1ڏN7t +<$O'u=6`NPa/$QN9j:lN˯NTkmx!4k*Xc<PQEZ:i@ s,V1IVD_{hɆexCLѐ>/rE,>[IZgǑQԮQCIaΔi=QV3oj ^qաu~8EK֑jYH{#z s Ea;̅l.RUU c3~VO0X(\Eaq{J6_@f:MM''Az'#~V]QVw\cYᒎ y+Ӂ0cCJ0cQ'CG~@2 DlX8(,.ipO-g (q_e#,_>B:ʗN3M&E8\OUf=yc8O!dֆHQüM_ŭ<;u&,x,49mݓM}#HoZ  $@Yfd2.chCCJQ i+AZ~%\:= 41tޥ91w:&זW6dݫ!/yk79+7غ8'68'Ql 47L@[]&,:g:ѮYDv/-or?a"3آ/itIE47 吊$$W yN@*4ۗMZQY+|Q]PT ƣ؈S+qU L6*S4SC#qt+8\/Z=N1kh)Up#{m:N!dLB(iU\lfq:袃8ܨO,5`<7V'b_BtixQg֪9p aT48=DkL*hJb[~F/`Cz=Q0kJ@\OX/j&FƆ\װg/w)%&~W.DoOZEHA6,~aLx{Opڑj!b9G)%U=^f71"@ B-gWY(>M+A<, =ǀ%6T@KqN&w)%) ʼBM=΂IỚĽI'|wq1g?'CSՆ_sO󐰹7 8 _5X:v9Y'#}<} NE^P NܦRaZ2XgwtX5Gǩ H|YȰ=+jN=M8YDDkǀ#4Px N@M쨡!DP 7T6+BOf+U>V' $GC j 36xdj(KkJKҰ᚛vij䤢bȻoyFdlHѿ1^vL;VxhH$uRf. ݉`kk.Z@#  AD۶~zS^gwvTHPP$7}$U|*LVo#0\vn&ݶ6s?Bנ7Еy[[Skr19n+#0{AؘH003$U)ռ[,_Xȝ9J"kqP\ jl>s m0'Mo!5oi8{=ntTC3ߪ(}@T*tlY Hf@3l21<,z=*'fgG}d9ѝ_b'lI@L~=͑WR%^RPPfDYY,E2 ~{R*QLiAd_ˍw~QEyj+1rfi2vSjDcGx$΀ ! JYFE*02vUX5U#;q,@(ׂ^و/bO3OeX\'(kB +*l6dFm13ÇRzadg+ӻH$dwɣ6.I5E^ՒW@L d bq)$+2tk8AICyؼzLw\18gE^7˃I\[]v)W9q-m2KKָ (&NdSsi֢v+2}H93% T"/w0JvF=}ܛg=d+rsK[,^;(QgW`xClOR2 bPWM"0ϐE{U Gcx-~M|?vP $J%Ilx9# Ɵk ]s W1!mpUą@'[d:@9׎nS;t^5+zHZ,Y4 .?zcar$|(-v*#v+YI*:Nw\fLHEhQ06|WbJg8X{m2Abq.>GC<ſ.W`mO"_#Hx&L4eXʹ Ǹh <#BbF_Imo%Ts~nt搕%X –+${t5p\jȘZY}׷ 2:dp`tR_O-TavdGjo50t}׾9Dth(xϼ&A}ᝠJMj툙ȞU.i!?#4v~Žhb/8N`-@X{m1N]h R%4OlDpLnB:tu wJn Ahտs{v)~ːBh#g.~MEYqM<&ݍ {2=3VaTՙGJ޶~9r6^=ћQg ֚U՛3o;'9leyIaLi̓exY?:0ZZlq'@zkmvlbY^4t-LpÆp)'އ/%\N-\Iʎ49jv2LN3 oSL^`ㆆMpoMH+3)ynFh/Hd( JLyZa5sND f+J&z{DzHKGX~qx^j)bY?dԯ ݍZ#ݱ?uQ+ s/X00tkD|rm,)U-ѳbR =^Los姕T6V027gQŲv:IO(ϿJ ?Ͼ}~Ex'Z1%ޜ*]C0|̯a Od/gu9kik m$^_7&\Ft7fCaq5`L@8b5(}.ˉnQ+lyp +etM~@ˠ(5`;٠2L8+u!W ~gk `/D lh^^_`]ҥkonnƑ`܂C@@9+;[\FuڀT(\+bo?x2%pLj3b``yU!qi+yF\^[,yV {T뿠"]ȫXK5''S'<.AKǩRɖfND"]Y6k{WT㔰VF.)n0n*3ZP!sk[|VBtUxJpߵf5PUN%8':}a:nP?;XՆm7#6U\FQ /[M5A[BUţݿB7DI.В4QW7LPҹT͔[P5fT)= 4OU %f([q 8QiJ GCҦ6.alpE8Ru|9a&&WoiG @={:Cj>2V,iBei`qd("YY^(Pm1=_+/7+-:|sTQ u?Ki\}@̛֍wϝjnU 'w)w|zђnpb=sKWqN) QHj Jh euw((K  DbBI^VC,Ng4. sn3-,Di9v~+nVUzHX,wz/ OҌ0*Q"B1V[CMz[f$hBl(rM,)Y[9(Z c{ORce jU,U2PJU](~gu]eU4g'xJa* nd?ڝpϢ= OV{nnz[ۖ;YU.+l!x "5j /lS! 0g-V)sp_5ν?oeRR-UЗ1__SRVbJ&@,gGR pA`qfɉp؎L~.Y|Px_Q:t') |砓EHY1 ELm-:|xj7,SfCYMWBӺY)t ]X[NA1Yom;|!!R.`1a-M.hg&݀,Jt\񒌰ؙ^KQ (Mπ_Jژ/ `a%"Rd8؝՗Bd~!JZ˥$vpCNcVnagWb26jC @ D-O` )qpໜ @1ocN1EKWV-kt bݔ%P5VY 2Zٙ#5;S8*&` /\9&_띊ǯrq\J>֏6wS AP-w;+D=WD qHѶz>G cą0BbPnna$ D|%Y) ׁꃻg6f~sbGa$.^&407HeY&kk6"fZ:ڤhVXI@wx !6x~UIڤӃxx*쐉5]M~Wn 1T/]*|aS"E[5zbZI+O,|Ď>S(,-1bX|Ǒe4z_̰ر r$ S /YjWىeUqg={JesӬPlk5+F6SǥP#xRh7qF$7d4zv}5mļcF ; Ŧ./{})k/>Z"f"R%Q QeF(o. qGcd*鑶c **$@Քgh9\.3{LPuduOQKIЕZT՗;*|`E$4ݹvGMC[4 ܱS2 `"ifioD齬MIPeawq%ah\Rԧ WI*s΄ NQ2;9ȯ'y0+k*>JT#J@mt'} 2jliT 8{5q>DpI>d*:.psI^&2"83_t~|~Sjlj_'&&Pf f+zADn OEFnyBE7P/}xH?f.=VqzhZSX_ Dui"y_PcG\3bMQU h!ӝ'&N4J4Ua9)TX]{\̛guVLLJKܒ vX8k / iDӲ;8<(Yxg %ŒtK0NHIg߻ $heqc{cg2(u pb\&IBWu`5^H!~{Z@f܈)[{n󩳠iLs N0`m8c`~@2N|DsZrBX[!|үE{|r&"Ȋ.3m@q[l2P!yy__~)uvH ̓WCcQmQAU鍺_OlL ||%LҀEql `}7140dm|ZHA_nUW]WV&넔`8OM$ }</Mn#{7̩>LݰZ)eS;Lvq -^"rJdyiò@gèC&-`dVe/Kq'׷XIg#*B2N>&5_iT@d`K kǩ1H]P^#GrcA|q~E_1i>}kV`1 x@&_%Cx|QMqƶe~0`"1Cg '8(*c'Š!W -*B<3}o6s?@F(Hp苎V'AFCt꿌PWS~EӍݓ tZfQʚ?xT5".Ԗb0K.UhW Y(Z+,61Į7V0'|؈<@့Ԙϒw+ Āl,GpZI1c UBmɻXaG*UzR t}5Bɂ񳜧r=۸E\Ωw}=+I0u+@|oQ*>*3{afAvr۵=Q+H0vs[`2.jkr }/Gz,!xpIS  PX?¬>@dzҲ-Mo0{nG}zoES.3i5af+A g=d\mĵ`ƺf˓}E zhX?oZqks9א za_6p>HԠ/ω !Z@ԑK< _7BQA%AqW8<a\0I'~fW[^\b{ 0`KWr*-oΚ0ðݰN1Y;$ -UsCfGr6T&ttՍvD[s ]D)*݂)a߼DPq_3_B hL +F/5M<5MRf{6yQ̬crbS(b[$N1; +Ch;_*Nv mieoG9av3>h X_ު##BmY% Ns䫰Gʺ Fo0,&)ihɒ8Y׃;hl!Uo"TED40u;)I(t\4sn¶CN u boKG' +4( ̓ճd"p}tz[gOm҇z%#W CA943V.Sw8&ˢrw-w?YFI@,TZ"3EEmHwCH 3C9 7aYevleag84eS]xDlQzB犏t152#:ljd8 ,@5 g^/Rb W+ݏ-u2k6#@igU?jA?!'Fq5>^t7ŕ0EM䙦̛ FzYT jHd몧fޕpiwGe`Q ;fcY}y\3g$iD̸>xY qϦǡ)1{!O|F$pY?E#@jє/B,2ws5wyFZ~,;.2E06zx@?;X?Kuc)hj4C7a@-(2Fg4Aѻh(Yw!^8RM!) N ,ucY2<6Q* i;1 d% jLxE!zAnQ`5<;*<W|.BmQUExY4ڤ+J;ڏï}]e9I|i>n$ '&oTpX2ΫT~#]+B9 x9@KGCԣlD4>,R`dIQp%0v]c@< 5H MO.Z*oaw}*̘>doBu0`{VGOmKzK) Q3Av ef+Nf^,,.F\Psvő] %mmG䩑qI_)[9@*#϶ݔ%L2Zb JNoI" +9un'c@W'$(Nnvtο{j rHL&߿-ap]G=U('gs"xx6bڕ(R&6 &+/ D[7 x=a;:7C*mN_˨x#CQx=5UResʜz ֺ;&}X`1GF^H0!/!;hx' 69s_yE cȀpmFn{y>UZ)-z ӥ3YWI8 á@km v)f,Vlk2]k*fBlJ_?TDS]^N%ǚ;%mW_xiU#XC+hG`lx"nct7?;eœe*狔%[ZbLGo"C`ӢY^V{q|LN֫;4`wX 얖!/Qg IT/ [U-B |U&;ƶRj@<[j ~ϵ4 Ϛ_{Ws疵$Ǐ 3rin^x|xy_;-Cٳ 0gsmPXN+)NR6ʏb>|^1}e`LRU*:,]>Wsr[J|'$Te|Vm5tDPMFF`|\s:<Ь!G[:iN$bH)椷fmh$% Cxmi',J,(՜t6WYN /~Aֿ 9W͘yH^@)}n[y"rlQVJ{_TB:Ƴb;g,pI>uM4b whjRȃ'jJh+6i"-ߏg /dJQ 17HMTiZH'^{ڋ>5AC^6۲mXel%k(.TJ"b%V vA V%K [hjSquR} хᎶ#ŷ"2cP)8bf<6N)XgWqr$ŎLkm5/| Cu1RJMAΈL' vpPG>k˨{`pR0VGA.β&h%{L29|VPRքz> u'J^M.v"ZTyt/Oڀo +cG;)M. IVwF4m^TEғYfȱScB?=2ua-Zn0)>\W=P8X sg+ W%CPdI[ 17bAM '^M~<@ZF5N5Je@ǖ.ҭ˓r{^RIl)ҋ_&%Ě \]fu@uذ]b\5IY:{4WQu4-8+ 9+_&h!F'~M{+ AVm4𩨦nm!gٚN #7ybCHC:$ߞ|ڂ}i+>ϕbk~gG$ܿ6`&rCC.A[IIa1ާpEV4L*]Xr$67 Eѿëi}?!n۾B]c Fp[umPe"I_(՞V*]5v,urRb0*f9Vӈhpwu #oSXFY U\W?O֑K;CwKOpǤFeʈ U!.GoU31Gϡ{daVj݊U92fpEu/~omtFqXdLhYGQ~,P7<1DQr*ʡ'VOSN*kW |:ѝ 0 D˂ދE7GW@sHzXR<. k65X.?wjLvm 0w{U?(T;[YSrQ&!#bĐ )x>驶?Ww 6=})e^Yu YmBX粪,fI(z^Oy#{A[/')HL T$Wk@8պ"Dtm>  0c8*JqLlN0=M >N+{ڲG .9@ן7X[P>G'D[ C`;AFWz'i^'-0$?:C|HlˆuUR Pƀ`-[mJ1x`@ZXw8Jm_xD 1AzkB&cmI¿.mVE۽/ډ×`gS) Fz0lqJ`|\@i#SvHu6bkYlՙ*A;sY]J MRJymQv8ǐ<]ُp(сׅgRt6I fPdv].^x )GRňh٧M\ӹm+.JOa]u[yB;l' 1o`%SXx>%8p$HfzvU~5sHڇ"_9^]Ĝ~Ģ0k U1G]Om5Eάt ڛ5*nr$F Z"w +92h p.b2K'R>!T(K AUaiKh9ݑt9oztu[8l¨qB_2n}qVʝ.c,/0f}d+rR/\ЕD6{\& ׎lod/u2rl{1874Sоw;Ofo4f}O\obU YDUY|H C-^oo*(:pՋ=jq@T7{{\Z&/8ˎYۑ|ꕧwnˏԫssj4Er/C 1tSD4%8I(t b9ǎS/}dݛ揁HM` di'{I 1еF9 O.oF pX,t/ NM9hE#ºqnT&2yS I%Aح#D5j7:8QkZCu9A5=3XzZ3_nYE';!ō ռG!~?Ȣ?R;mKwY`U[mW<"G%xE}Iɻ܀C c}F'(U7DS>OryNAn"ezEpICQ+o3ε7B% ˥MPv@H tPP=2޳?Ǻ àe6p`ކhjhmP߸J{u xuDWW*X5r*OhyuԎKZEa*H7* b'{4$^uKX:0Be a+SfXTr3KzɊ6bZ-Y >i$bfJΗ ]1kjZ] %cpa%v⯼mb*\*w7n(DH{lu~1~[5yH W8&8}>=Z5Y^!WQ` h,P߭A0oBGx@ɼS0I "W4Yoڃ-r%\)%J~5j࿤fib ĄJ4'<&H(}ÓdsKNQrW9e}C*A19Ę=64"0q\qFI JФ0!6piA<0Cl@ ;]I( XpeH = ]yw@r rҩ-Kh)D "O]iqv=؉M#98/қ_5ea !VïDfO|%ZTaZD0We+Q{.N) Mqwڂ0ߣ,mo4QԿޥ !١ݭ|0ޡ?j^?AJY$nQuyo4nA31 ? 9KgK gW]8w/^6;tc.xy,2#Cl{D$*|=^4VdB[+~JY1<ԍ]g5p[9ik.aW`ܝ0Wy݃TJjzk 3J Q70@0~1M^_KvTɱ7YRۨv֘*H:%G1V{zC)us;hxY)UJiy8l>oaӻ·t/Q4}Z^y;`0{_$y݀$^@;C+ gK"Fs JeP}Ӛ;дankCWscAɬ-yQX۫!Q T $0`O[njڥ̎7M9?c!ӕx͇\.L5EfQboO= HM z!fr^~$ⳓ ?'Ӳ_IJaU=GCGdPP%h) maq$*@khޘvBnpx apo+2C~KbdD wVicl0i: D?*<-<,xF'eLGD0َ2BjHϿ#FD]*T@4-mn;! p9iX˽nI&E4l?<<kUV7:>N:8Yi P,B" P<t3թ]-WUfk)<^ߕ{_Fw"cx@7:MAj-@CQb`o91ض4JLpӓ}L; b+{CH@: 8BnԆ2}-Z E<)nf `=q,m<3 HVh^Ꚛ.dS2VCM oꬁc{_kR`qp_%'W۳#`杋oFm$1a7>xBԎ̌%gql!hDF]OhlJ) 8{E5,:x#CSv{!/n,A(iqk b}skۑR` j =:c }N9*ntLk>2)-2cm"IHi (`@( GÅִM~] @Tb]oBj_* %"O) K+| :Ϸ1a/IS;Ɨp2~">BCt+3e7C skƞX/9VodViN"ڱ-CIUhmP.΃! G6BcXcnNk0w7ʳA0/Vp'@ o~6i*>& miE=x&x|VRoE2+R#lG3:_詺m|VМI|hKѓ>rЃZ @k+K)VRwx307q<\+##29tW(GE9'ҷՏx|uoX;\{1|,-ܳQKhYi]& =? H2ȷ ؋</%CMlB-Il`lv!יk1-Eg,m(0ݯ,-(PK_bصdhri  p\AVtIDǽmyښJ*[s\L.zs!}SɧgbWI(p l]!gfh; 2/=1uvdiud n`A{@).׊e2 }RW%pfNE S~N6]V *sDuȅJv!|N?HV,`,UsdDqSL1KY;EΡ"pf-H^і(dL_Ԯ]p^&-m 7) @QA7q 7hÐo,`փcJITx8o_yƞg"BmJ޲G|8swK/#l(O352sYjC=G7='fj6hUlgh)z4tVl 87Lj~rfX싉v"ْ+tKy*Hj!ʣ)(?+BޣuO뭇;to1VfŕՈI;m ֠Kc;Y |zCE a]˻[ D.jMzn;]zku, R -g29pqcYAWI]Z0ո hB`<$PHD\BFδĦ7}iN͚_* !6 xeOej)A %L8z3V$*"O{jҞrL00l6\J[܈wpM460=I.@-bwȢb/%ٍ4M3Ppȵ0&U:(;w^<>q6 "XUQN[Ml؏6 nY{ES[Z1qm!FVt0TXG 6OFuyZ sKzp!Akj@!3}ҰPG 煑"R01 qN%oٓ;dSJV2!y.Syy[y +j}OK~C>b]Y;gY.yχ];'g*A+Sa2EE@/τ3zIK7{D/:Et}JUqe?g$P;8>?oYc_('\8 2t]B7ڡO_KverqA۵.eb,S=H$CAb940"$vŷ'.,C݀g*"zGB; VM>r8G0ZnvO PUیMuO)*?TԠ`N0oxӨc NJh%h`y^LQ+*<ǼygW!BHw'w" 7Ͽ, i|r;nf/džR#ڛ2)*g}#n)\"VeŧNE4xwUdN%`Nz%A֙WΙmY{Id"(h~FY`$ 7X*Ldicb-| LL!iy(uξN'mWKfvfɖo\e6Zm0擵UBE:Buij}vfmK,;eKQ[iŨ*JAJD^(0-%]AvASLߤAԎ:VuM%ɻuqE化:/5c>Z'S$Ut[5'U9/f\;_6~^Tߧgɖh rB9JU"viRf6Va:yag;LaѢ>3&Ry@ۀ݉5[* Rڙ; ^h" mO4L5wW&\u>zO V`O{0~>LA-v5m:!>cs7*!W)Ki=&6[٭d!f zԔD]2@q UT#z,k9gn41 بщ܃FM IZ65UgKxEiRSQxƻGb^Vsq:ho*[f~9ѷE̸5DTŧs*Y:CFu>JskkD~hGvEXl)֮YX1uDu2H]U=;,eOӶVqNP\ ̉ g̱@g5B^,yksKљj#DX KYdEF]^Q_}]P-D{vLQ).Ϡb$W6icw<1]sk Jz[nnK JgYV XMvxBS_BY0VҠWpIZؚeelЉ+1+f־/DAWN.AW9x[ u=brrUjBQEQ+΀ Ex4ZB=j)l k$>%jܯ(c~e)$a Ԇo`6sO_? qE3Le[9mc2b?VkPۙI$S֛OJbe~;{iV*,H5?:5Х1b~kLο1XF%0KEPi *3+R/N*S5[{ @WxPx$p2! N,8>ta>k1pgʩoNi!GN%޿4$)!v'/z ||^_o rl zf,m64ׁK;o=Y؋Y$bmo@1XƣsY̥up:2"րbSM@ vӹ3|kfѴ/va<TiQ Ql [L(Gƚ2'O-Dջ*4>h[oHԱ7r]o;`e)@T 82z=+?.HGyw#*}S]|J*d Nم©ρWȎb;.9YJ} _enT6V 1̠ B sӼsHi<>:3n~5 ɍz#OQSoy;: yO '\:-6_ozwPk Eɩ3vJk.x_ tlhk>)Β[e֍:tCf)ܹڠuDW=fz2Ϗ|.9K;_GOeJьݯ!Z;*>) <03|pMl3ǿNJB: 3?|Vz΄Oh-Z C;1.XOEN:$^^FN$Qj}VHckI +fhM͓$]"Fa N2Si@EI|>>e8`? 460lz,CTI؀0&pe(D{ht2p C=4Âr&FxM,B4Rr)}O8K&L N=u:6=Pb8I>kFcSAS.m f.U/w>p+CuhI1̓ʻk=vITҧ+LZOt2u98:e=Jy_Pf;4%A&iɹ3J\ny^O-{W^\O@LkU#0/E:LxLRUBDE=đm rgTh AfP/9R`u /90xnU<Ŭ2.Zf]sB<> #7M?#Q+&&҅d?r)u[M+ndה)# 8CZ1y:8RLe tu 5m9ڪv_Qټ¢aTEE-B SN/|khn4P4%A&3])Syс{"lgq G@ǖ/Wan/(|K!}$z( bO0yݣ8.ili"ńJ۽8,} ݳW?XD-7RϚzF_?1^(w㗦, uͪ5&8}D"v1Cߓ-o+dow bS"% EU_J`'G8ZzLƺwza~v IC ~E\5c:nHHشvJƸ+>Tpp{aPWZ6f/bMG  5oM _sw1׎$s3Șy>!XgT<33_} n-w$1!FaԽf7RHW;qBrUjؙ=]U1IO+`㚧" 2hDR\U< ]+O8 hBW)' ].G'jNAfXՕ:d{ ܿs¶LwXZszKxw]THrfA${e”>VX+z>]Ή6"#Q_5rSOWӂEǛ;G ɵј)/ed75Np?-.`=Vݏ: $7 )kG^,ɺmO[?h JpĽ٩\7C+{/8e{`>*_!"w}MR];8ۡ ofse52[Uewr)Hw,Cj sKTρv :wV-%+a &]DpYwu)K!! U7qd?^>2ׅͳ}*,99b0m,#%Xӭ'1q7ϯ`>M1e<}OYJ&׉mWΚlE^v V"*_:tp+8SgyY.Dax;7,TS\]j"jtHybet0Xhr  TJm.)Cyq?7+_> ѨIZJ~Mv/$z'jh{7 ! ΀x߶ҋn؃Oǘ9#זƪ!eD1>_."iZ.rO+8}^ztF'V  ?L izGdU d X'pS>2 ^0jъ֦B 3W'gKjsT Hf ,~?_P.i1[ۏ>_7HL@ BCƠH4uaY+\F-=AI;{~* # )䃜un0;G W=_s (W0G@:#Y O+Mjd-c[30*nB$SO8t ZXs4;-`oD>o2BO8&5| bLOqM8!~p[@kk14ޞ[ LW$T,D0M`&<}CsMwW@@݉nb OzYÜoo!b)kp&w='CitG Blpw^hf2p6wuoڊXjNPm|-VjP"C_%X̰Ga+yЀ]p*bZzok Pb PZ*eQ@lI/ e#V^7 vuLźxR;~>p=%i-.ч 0A/ o`a,\YNǼ rS^*ڽgLԄ6٢\"%(F\k"iU)Xey .-$׍˩Ctd@`;P8${M42!ibtZцh愝yZ=4 CU]G` xKdv~0r\ڙCb߳`F;8<֩Q\-n^ *= ޮ Dތ5ޚ[z i-ڌ'9HB!7K$"mH4V7E]6:+Ee٘uepLU 9lf\n'!2ҦyIF&zxk~n8HzNMLR=,Uw]qՉuAcӒ%餷G6VKx /:mZod9^Ks}O)ukdv9'iw@t)zt_I;K[ Xs9n\OST"xZ8P%u# ض}_|ۂ۔k1Ǚ58qYϕj<[%Z.\lK'eҎD鞗O&#bu… 7ƺP/#y|a(٤vH5tT%fؕ'B-oHIdlz\IK+魫Ҷk#SAZ `%ŌKSň`lTNr#mg nCJNۺyb" bǦs4wtvײ: E׷޹+u [ CahD`_v|y:I'2-,E+>Uqy/xtUMV6w$%IopOq΁ެ;Gk-zʉ)8+=>ڍЛH, &̻>h o3gjtvDp ]39#֝$It3eb=GhZ>4S'EvHTтܭoY% J/H5tnr'4Ĩy/B+Yo8:PBOEjDkL0>SLHmlwdQΝ3}N8>ԳAAҜ.ܢ͞EM´j".M_/2;牥T?,uF`oKkn{Ȉ/NZx8Jc(3=%n:J$ëوbebtMMγg;Zy]mWax;w z( \u: V&>248.#â*IW@'A- Ӭ["4ELW%Xex}y,B&]\6ץC1]H`6-%L\y;Euk^4m3[1ozXa9/ mr?_\=(u.tk{wr$nq* Q/bmDc&t'hf*ǎu˰x /Ya4 E@̤}`kE'%w1`X-yn\I{[:$;d馽h.@VR=MloK#琴ް71WHDr4E^AV/U%.eS[׶܀2/+_LRƐ(vBvkNzZ$F)J<^}-\^ Y†;RA%_oNKu?SDYw>Gɺ?j/"n9ER.)<)K>/n6# p(KFfSGz?H Ja2A&dg$0v@߷Ղ~j :Wi jy5d݉Z5%at 6LI?[ATur 9>Y_-Q)d fl͖>bo5բ2M/jfD)*r\^ocJGi/Ds$Qg; °s^P% IPI_H+,[V8Zʺ#-%bf,;`M>}X˟hWiVb<ʕ9&! 2Ec5|Bm 'ՒRBDa6o>mVyɍֶnP^kX^.FFm{qi}-\CzO(sYc3miJ(yT7 ~EA%cy<=) ٠"n4-F՛Jм&g" E`VaJp,!+4L!^AgjŠ+ P;UI|BNWpzhkX’vT=a\YI=YE譧o)IHὛŸm[m17=[@ e ycI=ʼnSQ&ң;ݒdhՉ.~cq컗$!݂:lιA$YE ϶袪!}W7NQ^9ȳ)V4`+nRԁ Rsv k}x^1Q "mеد[N5I0'-Q{ަI$9;uJ/8]GNRRy : XݢsԛvM[NFLbKG3 ^-r'7^*#bg0E*`}kTp>+Z]*BR}5Ԏ!{ƈ}mgNd3BAcX ]_8S T.<."4aF6 eڻcA9jNRpđ^yw,Hm/I X@#@6.0+s@u(XvIt8;Q4N;vaߺ;F9K%Z 6Cxb gWK^/:W(`K:}wTZϏlp΍4OEDIAƴ9՞H<ٍiLMЎMڊFqz][nڠ #B"pLmEK洉p|^]Cƈ tJ9lf B Q#0pg|sg!z] ;ЊjeKbed$g%?ldJ!LF}Њct;Y- " -L?s7rD\ԄydBoO\KC}J;SlN N-Ţ ipȏx֍u'k:Vu86O:9/N^Gx A|?ho"n%z9L_xF6CHcmklaLw}e7](;Le!\Wn:CT0E` m\36# "hAr%GWlZO7jb+,sP^pWF}pW,¬Ahՙw8Qv:r\'8|nt`}?&)@fdU[bZ[`^B`\bD*GrΌmy#_'3`Y/)BS?+]$ebǣ6a{Y6t7!n a]^[k))6? lË&dO لF̀FNGdӢKj2Z潞1ʿ;xWoFCB$ֿ4GȺnt(Vb({ P;^t,4_W?Hh4QT5PfY=f(_.j_!\ b`k47 0d2|"~rdU^xY@l>%S(1KLDazJ39̺%8Byf@۪2ZDgn ϶I9u5ՆL`+ ӽ.Ey|Sc;ҚiׄE}h|CFwƃ -9YHř@X_H:>^MXܕ )Vղ`BZ09o 4@J}(I.Sd'B ĠY'=t'@8jGcmz։ IRAI^rsٗ0r@k*ʤ' |=B@BP7 z]F7S$DJ|5hIs31!|;uv:&#\]k9SՀ )/82dwpNn`W!o=Qf[ `qR ߠˁfDǍžW`#[60rfseZ!Ei>*85_hW=IY봡aҪ'IUM،}/^(9If#;HC2 ~A0{(}Ηb"X;wLLETD"mw\4O]{-Vf ʫ'DBLeqt~Rh;Q%̀N> bomaWYR"TքϤKhE{<@mY'ydsxt%7*bwapt}M9. fO?DUB)$',͖b @"b/ 0e'G3 Z^/.LǸ/~͞ڣ";niT8+7 &ZToVPyZ05ztTv|/Gg6%U[u1֯NL /,Ämt'Rs&#{&”W ] >f!E ]OuR΄`]!km.'N'znv&Ivـ:YCzyICD~ϟ#QeBa3O$d/-Vq6tLwCg;Ɍ^ejLTG! Vn Щt$xft '%WRےF?ʞX5Qr#057B[<[L_zO@sH3P9 H@=LjN&uGj}}܊T~R҇Nxv5ѡpr)÷a`a(ib2b蟑78-52Z"oPqx9/Yar0% V})+u"d |^ LYjJ)L=kxD|iEKK!#9[>ٕpt4,y9_6.i9Ke $S8>qKA031 Kϟ=>2R`HF {ċC?DZnhz!-K~m=2\q͎*}P]X= &~yr}v6NrEX9v]-G$ k,Yx?mDe F=r)[hCP5<ِFH]ä&!ڗfeyGem;727QxE^1iVڹ^.Osò kk<N!Mkl )ߕiGKŰ8UTm})~t!t82T $:5/DS6/#u@]ţQzld6\'cc~~sYǦiz%\n.*zKjz$H߰*ѧ$ $[ L2KThuc:؟m* 2`( k#ZPhk.԰:z(3%:}/sA %%:t`|5pס0|TTYkd,D.th& j L 1XJ$ n^[W^Ï{.},iZ@ 6l Rӷ9񵑒F.fޏ.Bԧ4FuVնd#nV&EtNs }'JsmM N3{!h;AJ+FXy>X'rfױx$K}Z%q!ͱn_Qz$ۡ>^j;ZCK`v/I8b wׁa1Fkg$e=6g}y\zXԚ0}8x_.x7lrlӃ2Q 2`O[e:7@c,%3@ل킄!e]@75dBG5C@RT#sƀV~@c<M= B!ӝ3M|!vw lf!I T=Atڻ#6"FlK%~L| #_[cFJzٖͺK&T7|4Ǥ58PfV3F<_8 @0U6XJOeduGG+@xzђvƎB`x9|$=7<~$Oo9:j'ծ=D2OP6SB9&Şi' )a8go'`T;66= 0¼ مYHnC&DVEPRb<@.b*6$0*M`%ZϮnc%2@.|Duђq[C&,Y{>spoz>(qH􋩌 >H^Q\^/bIC@#DvxB CE%ǣ0K87 46uAi0{ +IQR+o#jQ$joSO{.eRš'$D~Hnb\s ;T `E5.Gƾ {R-y+K㤓biFXJ5 ?Z}g ~=,D&45uL#.[9k!NS^h-[1=FYt>vU@tW*mAT0qeHV;$9GhD,8{#]ϭ. ;161{Ҋ\Ztlvo8(eA "~[fIo6 e4P-P(kxTUm`k6KR{>+;L[CSʘ{ZF3OR7☍3$+֥WMN{(bZ[o'sdW2F>*vN!z )a9HR'.7o-o&5Xԣbvsթ_]"<~A~aOcJlgE>0jtJd„b|6W5tYӦ62KpKa\B$ 8N]Y[ ~|#6N,b`2"&NR뗹ki M[Ȟ~y?-Sya!5aXuo Mp~sdGjdsʒ&RU62r=Pa@K)BkB_vg<' B\쇶SG^E\@א y֏J,K*_V`W!UDEPgU8X&^܃ /9 x'sr3> klLAA4OZ>To'b&'**J"0]VrФVko}/7 -CA6V+c0& ]j郸1Dr@Ͷn 4V^8e>udhIm E厴cbUzܸQȏ_xG~⃖J)`HU`R =jS\剴 ݧE=rSlMJn 4m@,jY*mPYnϦn *3Our/4"bfL$6vX2HnPMkqx=66gHKu3z"3zIH%RN =ԝ@%^DWW>WLn@CG)f.=jYmeK-/ocK'd9yP"}Ex̒cyf=mcWTkL (wM}jǖn n=咗|E].຤?TI!}  h\837AN=% y~6 { b9#+IKxU AÅ sq9 {VU"q͐"CC㫃SHqk^ V ?~c.죘mw"r 2vn/U(3#Lz4R6sCX%J{͉\Z / \.UKݟA6%LRL8 N;$6eōۖ9P!BM =8GDv~6iZNx2<i cJu"M0߉.Tv(B~J\Fx$X$A`9i6i/2)2VtНߪ H ܥpuk 2"82@! ^ ʤF$F-Njߵ5^I \C_* t*/-1T>o2^X%bn EW'A9$L-_{_.6:+V4ߣk( =OC'A,Q; szcm']~nE%כ}$ CivHuz!y,̳?|enه̙ϟAa-|y#D6-}67+L#oK 1zWwߺ;3 ըQn~ ;qk:bOb *WAMKk[$'%)FDoBsEJTu&.8OLI~=IlY!7>K9>w^}bhe&Nb yf2,-6 ][C Q8xed•"?e> BQg-K%ƪ篹6.5C]ct՟^ez]^צGnz%D( ,'nVOA4ݎ^"uX!f Gljb>D{+˾6ѕsKWz} Kܔ'%FmM@VVC?8GԉxL_sܸSծ NDK3]mx3u q;=qچgH)&fJۢYN;anٗJ)): lD5J櫔MV$TBDhO+v0Iza") km#NPӐh N+٧XgKJ {#7x5?\fbe!-RpzO"grgA#IFJyU(m-_&(t-iq< )sQFIf9t$O5K %%V 6qWRG:._ <V7ҳ-CpH(WpSk([~S/5vKRWg:֘"%4K-\}=msU7;Il'W4{2{\F 9-&w'E>||&Z H:E?$B8 l#Tܦ#B2xcnA(a8qվu8yM˲Ϻ@] (5!זujh5I:lN`FxEZ*έL|5ӯ<{-l҇g4i .cp9t0Kw Km]"`񐗈πPMh#K @WSmnK!Mb@aGY$G%X[2saTrel 2RĺbZa «?q)KK Ho>ܟyriQnz{Q?5/7؂A7oTG&0~TG*)-$<V%ӄ ;&p'cgWL#2s(@"&^})XT:i-m'EhmAh!k0(\f;0aPB{W[h+ oV^By{>3 {Etj8Sti6CeWA~cB¨kȨjRN"|We+|&SKkl VsXrG{8;$>@ R*Rד)A'gDIE:uCxν z r2~\G`ͷ|O&3{a۞ Rj>;s^y7Y-`ZmDSBg7b8^Z5ly9)ԅa )3O4y1(}&$`bֽ8T ؞ڮz2sqA=My- nۭ= bpǰ./- 9pl~גN}.Q LNotZ?JMBxNDj.r\/N.v벾s,d昭 +U@(1V'm)}`Qr}in]#`xc)|񺧠6%3mF@]8iࡸE)=lIJ }͐6Cl4&W}zTٿea'Ԙ88B{K}.[2N.2DوYY:3L"+MBu--fU˶#rWX)ױD[m@h{KI"!bc<×p_rcHe}|2ZA!vN*vH=ZGPmZ$'>Q2J'Sʵώi/n1-LFxI趠Lњ`J)[(%'knZOq|4ȗHwK}'OAkf%OGsz 68a\Ll8 <ݪcGDq#9$(6޵?F￑֙I g ]qd|_j@BqҴ1$ [ `_TuaFಳPb=owHWj*.Wzs1 cu<(!oLE W4t-b%\ݥH~r#"SExMOj0n2" &&L b27F=Ňfƫ|wT-i;K(BEFR%_EO`Zy& XvvxŘtR]}MvzV6yz׋pu2l [AֽtFMy[^kA-|؋o#!:ЎV]Г88&z% NhdxWMB-)v"yv(LL9ۧL<78IT#=(eKE({J`hW0z(ϐ5*\ђ!RH~M ^KHɂRSD<0P-,-3Cu>7p5xz+@]Y~;1n12~_Ή8k>yEt߻d;Th&|9kU5Aink׶fɥt$)E.lR#gðFYb'g^zL&ʒYPч*iV|m-m^t7I2Z69#-\@Xz먤t*䰩g J, 䃝m9gqy ,-SҟI`ɲ?hLe$ l^^MZrMy>n: dYMdM lw'༲ 45zu^f'OEE8NaRzE*r*8Ad5j|N*N~K$}Q/KHˮ˸ wmy갫^'%b[\&F-G~C 5BInCIA1 adPc|=.zAԻ!85ӺuSV=u nMݘK^VdFkm9pD6UmqbmcΝE_ 22wF}$fJYQ\&g_,/VYH  [wvSBk?"#6 Ffj;nX<;6!z筐Al6ߝGL+e L5צyg];pMTvCSFcIo6բټq`Ap*LaPm.>0hB0N?I!WƫKo,3 Q>=>޲P3Ty'RK*xs 8o$mri<=gA7[g߲ozh#΢Lt{0UNlxXѤboݦYeMu$$HЙuM!(t)H|-kP4t̜xы(Œ2KVte-P=+pX,,NDH$)lJmǀٹM6-LWHX% fEπBYG$zR8ސ iPb9c5q|x0SHs v-Ug V) x<#`znƧӷJg8"{dL8BL N!Sj=9J{ĺA찅Xoy+b*0}$i+rpVB.gSOUC5,P6Uw?&/DN >Z.F[ɠwuQJ*4M[D?ΆC#@cM"Dhe Uۯh|ʧI|S4Iqf*ODrJ城b;UuƵtu +?b{4nbLar,&d3Z>)wS|a6oGny+qk^, azY(kjuqPÕCwڄ|S+v)7wF]~aD ^]+KVU}f yK?7{Cmvڵi|#%7߂]4v%DI9ŋ¥YC`yLX|p+0<* 碸giC xs.ҧV7'9]S2gP:S@hn3˹L0&؏"M12M=gP<@|<([/o eY_vP2"#4s9"ؔ+ 휾"97"h㆖iB!5ynMpUBY@p/88pVpo%Sɂ6QCv‰~ASb8?sE3x4}bc أ=r{>n#XF[颡)GލFBK`>QVr'qHQiVҷFEgueBRbLZ6.ba}Ae-*.+%=FPϋ|H鄠0 ;GKo=OOxPf1 Us@Thrn]?LϲSZ^?~cq.VfN<*J2wl!+!'?1MҢ\]brѵnEPeq)zz A2ԋ$`jwcN2Q䏳'GzV RlT9hQӶ׳ܼ((GDhŃ!mP!Ly hS[e_-LG #f_/'Z1P,1`#a)eߠֺu`wϊSHs̟ͱ-kg1諅>]1<<6\:܏Am+A#qQI"BF!6kܾi2}j`p(̲ 7 %[@'q] ="RT4 |ZR^TbpxR89m߇|W`J)zc7TijRͳ̰-ZU)#ow` 6;A̺=DZ_gc Zơ'_R31e_%ϱh^I-c}-bw\9xZP_2un&|a(4O⑫N?ԉJ&=qd]P#DIIb8ET6q3yb$G#V6wiWo:pԜs=( o|v1D*̤ac #琶K`EvyQ<`0T@\\O)m~P_ s⍇,,!OǏ<G<-\[>b.ަ@379AdRlt NHȰ/԰f 쥳6 0KSE}%"-LZ5܉KrLPB_Â"wIV6Li1f -ZϯkC$\|\^I%:~]Md$hճnqk61G=]V!!t` M\ =T]qa͑zhRB7}1Q'+[jz]'_'N e^4>~$9=ps[3!!ݨgۅfz :9ӜU}Xf F{ED~j\("gҋַQLʭb=tBM}?^W ZE={GVq$K~8etB^g+Vf?s5Z bl&:D)C6o pX[ D@L>w$N Uc<bWM e\7 `10-?&MrtÿP+;l1bQ('eaUQ[ԷwT|\\WP]9.,t}K#(]@W/ȰB deXw_P."9׸,,S+xc .};ʌWDVTWǦM89z7BEh)w$'/ĜJK0NC(x= hcVHtw\u^6iǬ:nL3N,Z!;h~GKJ0&4~1^,zFET|XːDne78xހfxv S@!yUSו4{_s)".9n-Mۯ{LRɊWWCRWi@r%.+EQldY^6 +K&ASh䦸P55%Q)GY;(?diAu!F2$ 3/*'14JR 6f2e;0aB&H,ed2kͯĘXtG@"媽3IZA޽N+m-8/H[+``*0Yz95ImMh.uv\zsY@GH5CxaZmLF0 }s.8t^ܬ2!Bj9v/^|v(ي>tx*e==.(/_5reޠ.H\9NJ^ IYU07Sڐ C G4b1WqM}#,l,6?UH ;㷙 آ@ji:xVR+~!f,zGj8^!P``Mz&G&`(И[[];IE3mm [M)p zoɓ[dI%ѵSN{MG0(f3>wSZ-hG98a+t:-pj> 6җh`]zLArDʀqƝŵVecLycg\ 84PT(rkpwQ-քal.Vu%!bo e4{u=uiLDW]ԽK|0scygD&ER}NM-?kMpUvk$(tzn+VL2xLd;苗 P?li #dnd–퓷q_%im莹t < 3fNqtmW cdf tVʔxV:W0$w l y=sI2"%2h w{hbffH Bm7.*YlծUy ؋5Z3{Cd)u!++SX%C[; eU|u^Shg)v@vT!%hm{{!lKʊ4/r5)?6v!Z@^h#,.]%ꉪ "'E0u6ru0v/eثߎj"eɣ=!h^+^;P0u;CeM+DŽam!oU1T.SR R XH[nnN:Mt U\3Pe0jǶ ],r|yMmue!UwHt*Qcԋ乊L-y{2H$H ]P(C//3ˏ&s DaT6޿ܷ`iPW н-X<. 퐽cLͪ\#z3rׯ8z|O ȼIV숿\* uaculr>5Hkn(_0Aw~#9Q5R5Sc41)pp1ee)H9]L7_WF1,|Fзjߖ3KN"`OE7z<0fzcgƢIIJ2#;)}egNoFy ']^q\R(b<齉@o T811GtrU&cY >r=#Cr1Q;4tZm:}DM2{EЪU*ls(sNp!qFʖ8?G F;ÓrwdL 8X!S1*ĘJe5Kx27{,NZ@|WղNc5mpg>3xE<3OHLm$CuT*qj & 9tVݎ?\mhL_!RT6Ep Uz3!7,] ޙfd(9Y޶^O@@- f0;%I|ځx s~rUNjgMIgQxu,w68)O^wR1Bt8bw%e${r}7yi?Ufo54fhGU: EcÓlSJ7XhqioI/YgG-"SF)eJ*wpP ($.I"N?0b]'Y^VT:{\5Fr!uެ[gCdm/\N2CNtM^@렰W':6W[V}n܀7'tQuh=,6\ۊ)/cf〖j [\bazɎՔ,?uU }h_Uyγ-bϠTӘL&3}~bjd}j;S樂u$R_ˎBuUYjMYS88`fqiQaY 6WR9] F; 5b/45ǃSJVL>%#Laٝ$T^` }(b)6|7B O 0~v5~EE^X`l<{yB::_ٲ!_*I\^,:Fm@Hc_?!l޲GC|£$-tjΡ0cĮk klBrhFg͎`/ܕ̄3M3!uwv҃,kwN;~&]sDE*G2T#r!G{`KE-[*N.rI_q-%Mq+A ~\c6TaoYv۝#@=iԑ&^)2t8D1?` ZFO7K S>+{S6nL im3W!RE0! -xnKsWSWuhW!e2՞/P2ۮ1G 4{͙Hb)\ICP_-Ckqm^z>N7NnG>ӊ)Iu* lzT:7J+F9%J'?1ts]׭%2Mhł|ufi҈e@ˁ R),sȍyιi5JJ)P(`Qz\p0Hurj?^*=>{F|Ų(vGEŇEzD%tehLAQc4:eCl dl@Rl(?֍.q\q΀K6 C0 MeH]<"\B$hc cr_R]6Ö45yZT3wY`7oHJ\hSS Ds-1\b!v>̧,8S͂ $Zp!s#Ŵ\gzc#IuK\1f,KwfXDCZX u8ҋRa8Y4p[ws|r6P 0=K~s|rϚ5f.lrJ' ^1Yz\PyBm(M%WeJ1='G V@+p/ȯ5$(gG[ݰdt[EfMitVA? [瀛ה݌ڒufɥE:"sqG&K 36#&v|5A@{}Rm0,C PY͉ 4@#.4U?.ȟﲯ8o 7MZx{r 5߼9¿Ӎ(*RKqTu)?a`ǜ)b'ecGjy@HUv.RbDke2KKN8aJS_}imޑLZw9kk@~c!Ԃ$-]>rI4?#p$fgyM!cʲ%[q#+؄,DI3cGi]kdv8J$~'?51(k$i'qc^jIm+PѴlA?^O2.p[+\ @Vh] ǽGf)Aj- |NȄ|ɑ}G{<{F^LRA_F©ӳiTwAS>Bݮ8 c-pl/.;z2 J…;\1'*FjJUql& dX#;(" Ĝ'|wbK[VSBrZ*r# L>4 0ڃ0DqHzKZn]SbަO[iVX/hf8O$cz~Q+˱tgl;ߔ9x9W cv׏6LUOKhPĠ[UxO.˱eD'ml>UyM3[i xRs^\_>s+JAx F͔2ٰxէg ߲&HD%f }0̈́p?b ]vcMڣjEŷ!v-@m۶e6{6򽡇s 6趟viN*`OHŲC@/_g.lJX#n8U9kl }`EJٖ8 Ė Y&`/ DI3筁Gր50A ;4nt|]>;uVh1rh؎x %3L,"*1V\0pc=.Ey*s|Q$xz^؜\;M4'.*#/ܠ~UX* ;nYW䪓4F2tuR. RmjΦ[`&K<-"uyrD ުl+0 k$Q߂Ox \Xe6nkt{zB o-’ֺX_UTl!ٰځ`c[CTkafEEzb+o=D'@IPoA<#U"L3r1߂ ϙ-gH+ !+$SNPiq8¿e.ҥ]=;_9lrB1`YL.,yF Ujw52'l{[M{4px6zf a_h).@vWÑENߨ&J'W<:W˃at`S &џoO.߼N?e's]hn^Vwf!CPDTPL丮廡_wMKLAh4Žy.*̛.uBʂkR3hS:-ĎF`^8vOI Gb]X3|xt%٫8oo@n3%wٌ M϶ᆰ c2Gꬽ.&|g|RYKBGJ1yƀnNITO~`}71kӔs}oU, e3"\H_]R{wXs] Sa*H10arytXl|/3Jtc ^S+<,TF':]zF*EL ͫlMNpT+1b cݕ571YNIC!ȄϺ!L)C^)Y~Z-gb ?'8gGYQeDQv^uc g ["Zucaey ]otv$9Di( D,e$-w?0W c->7 8&8!P&ԯΝioq\'G=gY.7W&4EӒ8*-ZiD?Do)sz$6٠5Dl:%f)$C6Z]дd=@g8 4ǜ*-a\5:5:9-Y>6"ʽ$`Xu1{Y~aUY-_[d.FWbz}FS.'F M JSg4' ژ56 F3ǬЃ5eV(;%c?ԣ&S& A ^uB:#(H攂Eޞv/o5韄Tŧ Ewӣ0DiRJkU*]FbbW3Wcl~DU% >{v>~k.-%]L(B/f%G*| lY)A/1>i(dXc.Ŝ4Ol|<˓'gb.;|6bWeN[&1iN; ։ԛ>?Oq`jr_G"Qcn1֊QP8kBۑH, cF NR{{}xnv=5Q/`>G%탕OuDiȎLS#2{5LQCc@$ *[߭^vev U@.]U@])ye{jRtb{Ypw2kKeCA+8Y nj@v5;% vUt1,A;OH֜N AΚ }_R9θ6QL@_YAlL.#阓L*c&zT&Y}bWNEQ6c*ۏƒ=|@Rq699K'@{D˜*ۓ8[>FIz9 q"3yW:ӊ!Je:ox ƻŗqm3DFޓͥj/47pƍ,r1HZm@f-͵ =fTB7"I_͠h84Qe=X]H,k*'\ w1a]XKYt"/1.l~FP ~K-^WB𘃝)oVg ~-{?8Iz$W,6(/e T/8} *]B8L\u[}^)Pj0'eq܀:>NhPWLC WjW4yZ>j2q Ԡ fMm[0 nu/= \& ӞȐRrmfxLbHizӥ%e)QӑC*tA^|̥-,KShWh}J~S䢨D޾@ߡ5ϭ>%iDžN;f%øXLp.WӶm@ Sr4 rMIGr*N /'šplr)%ߠ^m#:|ud$+Zs=+C~J\_󈡎"o bAeV7lֶ%YL[>SV:XoWxn zظ2?t8n@Cm#n_xz*1r=pp^7cbv O&^6AsRO8Dhzfƚ6_)^C$֑_k@"EdY6=E<#%X#[obrUGP".H̚j$)vcciХ_EY#%W6KRNWs۳&Fpt Q-uqq)"jK=HA"|E(&r KYݳ=6?`ަ!XIH{Ւ یg7C43U+a| _)bH3JgYa-8П[=c[-,E9P!w=uR8|AQg1MiG $e:ɜ=kf*Bwn#z_-9(a0Fa&V3C$<:ϜLZlm;G,bljK乣(;.+ur SX"KAOߘNDx[epHnNa~0<Ί.鍧e*AlǾ?܊."8OǙF6wڀMNwt:r̗3նI',C=6zLuu5&mb9`?'LY\}Aɷ_ڕT~+<_y="f Zн[B>ܮK]Y%e#Z_y,Y)L3[s3DP٦H!fm ōU33QIϿ~"Yu-,(2)|I~?8zr( 6oWv`緸]5J!y-$ȧV]U~-25;t-l޷P*Laarp[t<&hPdk@kRDRFUp8i09L88z֚fיfҥ`/pN~T(’AM6Vָ-^hJhYʞ2Ts@UDK!jȧ/i1ـ1 e}îN3 ۨ_/Db0՟xuݙdau`zS=vHڤY: $g v,QlHDycP=cQ؇+c@KSz:c_@pvpH'AøTj$[Oi,9,=b +k^yZ*GnǰfP0ND:+9"=;0/QuaUؠ lDٹ볐5Z_.9*Jn$툘rCT|l0-GvJ7ל,4Đ&W!jm'|f&dpX+~Z$yam/&\?`""Qd_23Yatp{"EI.p0wRfIvQ>9>FRde#OS WY?afcBGf9Dl!+Z8v!~e567`mGN<}d ^Tyl,ЬM:B/qR4Nk$8O;>js\Db^!4t c݉N~āj*?G3xC^E|CTlH& 5譣snnq>Y:bpĿ`&P/Vyfz<;]TC0FS"mH VKb%m=>?-W[l~W[88_Q-}6'b<q^dEǤ[ M_ɄW떨٠~mܠڍ2gA5ߊe@&U,<0-:}Ѵp:?-+RtC`̉偢A[` ܩ¼w87{L :}B3Z'.wI9#PpD"\i"VPUγǡBn X%0ɵsH 8ut:+Tگb*$Of޴ %:r$f>ɠOtcٯ(SV/Ḥv} rӦMG|84ᖳԽ ݬA8}1+g^ȣ0VZh@+2m:OUZUAxZr9Vj)GS:tk=fa)\2ׇF&f~e|MKUbaEgͯZ$锗& <=kybEO_kl"NR&zdeFl֑} cCRE>+{sfW!r:t2:^3 L U8II&'E -^xcrğ a &J1}0̅o*1Ooq:>mZ0 I a @PMn9B Cv\ n0jё>ӣLCe~uB U gZ 4@~Xw_[L/_!YĹNOơs,SSӋnl#&h.W`L3P$5ԡez-hmUCx4vvZwmپ{v^QF۰@0)J6pűiqWeEIDު+w;ޫ0\8\e*ŁB7Hp>\RתcjSӸqrap.l}1¢p+Fw kKhw>yxK ZAӽi_W;YMӹxm2;?#::LIca(KwYo2aeïFF O%k]{Duylb Ǩ^z"dCcwZ CzKJߜ9/"LqW@+5 GEU׹҃:rCm@!:{ek1#¾Kt㑺ϝZ#a63a2#8l |Df6 OK+t  LQ#_C@(XH/S#G{ .}*r(뤤<YS*h8tqwH8"v[|5Yx,n77o/֔2#nK'9?gtޖsXZ!%& 5'P0yC/wB|7b9g,\^AR.TPY$1R>]FTrvbmàv g|ЊDnQi=Iٓn ֑S&Qe7L~7\NfBWn{GluF Z@_-xDGhe=&C"[|+S=TzbfC֥`f!DcM; :R#~sm7uL_abX;zŒ2N,v&[ֿIQO~<Ωb\/Y M`ɿqXזE.Wg,d> <=U}#&P/ h9<4OKki T]I$7G؍*J.;avo,#"y :̈́#l~,k3wB]:4 q(q;c,_f\򃖿EBfVYP+67L%%˔G<3 m= g\}9(Y/?o3!h95Qpc/J ľݣHLB*_R26^;v 0sĺf YT'- 򨙂:!MHoҹ*mHafUNNH;*<;ċq r'茤KKy̮0ҊY]aDEGe`0݀kDhU!zfeΐ9J2צ0fY]U +AѝOl#j+nAt lڡPiLr5T9nG,ϝpBn\ Yε;hwOAz,C+ U|Zbo4M\ք0d4_7\iX˯ bGJ~ʯ^}q81#{iMF&OƻkxءHQ2q^yWg~dbC D}m\䄑-/A+P'zk&&hhpr4FRX+36q,0i쯘,ܛoƨT;WWV1D1,(~E{qvC0r͓х8鴿[yb"S#[<:4Uht8]dh_7F{.2>\.tTxnS !OCEPsd_p-7b /HuDp1BA@ ',* .3ژ\_ 6OgVEGdk搫pǰĦqcBEB&I.t"̰؉L6K4lXk"XҘdJ z[D*D;V5hs m|VZiVJ%H:}(RAGߵD|eV0Z9ptRy8CPĸ^z>FUcrB r<$LvUL1u6=J. +nh~_W!dZ;bOGD. M7,t:о_ewH0o|}ub# 3NL=,֤50]-,Ds RCt1vr dcq\]tVvU{Bx L`6w'7. ̛2x'* ֍Z6g-t &"Y)Nj#l#9j c3n.}zb-4Uj=$g69/ *9筇+q°Wh ~y cr1L@xMW7QNӐ&lƴp#k TzHH_r4f$( W`U#0I1@)-VIL:j 6Rޤll>3TNڪjEs1R), ƥ*(伤>3PwH_d"`~A[!m|V_T S}&l ̺˛sextr+n}"nT#%R} gaDF[yJ¯π 5(TTp2Utoa=/ ߊ8 L VSye)ډ-#9U's'p\/Z3IhTcdꂣ]ddۛ\Aԛ-P4;nvUf'$W?xP>]E9=^} aڡ,c ZQYTt~ӨOcL6W ;xt5RSq1%D܆<6 uDX?{޹ZX>y[݄=|3ZJMMdxBڀd42+rؐrT:+S g+Ikt *V}vɋ^cӘ +TPA$g̏(rG-הXxN ꀋ'Qv|L\e~!z崨dN^r'%΄a?K0M?R,Gr*njɭHO"tAH&}\@XONZrR!4뽉Hb- 03:| I2<ؾ#FeKJBp!'U HRRn1y4_UUf┮y o[4 E5{݅k7깟eB844"v;=n|tL94dѯLg8dl jϮ"҄.>h6#'zʎ-jHq ޥdltWyhh5F䘵5V!XۨUUdlYgDD}O|/3dpk\q6X qQϟ*yRisrhfsU5.n&eрqn9%윇| xK+K'joY)G,vb,unFFz~J[RϷIhaЅVi+?HYi+Kva7iN ژg+t^%39Te''pbk{n\\&ZDM_l@B:oHSX93xHhnظ HaeZgσzGE ̃ s! dnUvt6%<'ui(&i"dmԎG>*dԭa6i`6~bt!PYmϪkpQ5벧#' Pj.œ"kp+͞X_-Tk섇#i;~\ҋ:տxO`4Uc̲̗CQ)9f-5R b,ǍՅW8>eF9eM;JêUNe*ٙF |,Ej-w=m8gB}ޡ0;i7`M2yvcޒsrʣ]>yd.&?*!`ip,7(b&"3TDz^6B@19FǞ5xޠ=5Ϭ65*͙G : @(}SlJG`Dחd*[a/'؞ҩ7FqE|An-(Xv;ױOm"_&N$}-3مPo Ȫ'r% t^Ix`|t14{XfW5=NURsR,m+H:91c;>q ?l4$c`5G;e#:N;rqkvDr32"ܽqa[$26H(=e5SsĎ~ζM .y=B<9glgq6/iqiTNB @:;)?v"x*W.]V*sp^ ĿUl]@3| ph/6گ7T=[2\1M]7 {2` wTLZħHp!ִ ugC#d4`TkƵaFfoqy+bc{8 D1?P(_j@ݚ3[-\o*%qM>hiQsWw&}/hjZVpaW#"LjB +jsm,Jrm2cX+M_= KSgeAvP9BU1Нz5C@$9U>[{sQQ)9Gh"~r*ui7v4Xoƃ# Cߖ8=g(5?joU;C0hp S.W5 km. Oe4K7Ȟ<ҵ-:zl KM+&ۜ{jIvm}x"ղsCҢ{+JWAhp[ ɉ򒳏a#dJSq19DW(g| 50$ {K Lf&9*?;PӀ&:7ҒA2i0C2:^XLg"83Y.f5^I) (MЌ1KR K!fZHV\^\4 7dy…|Oe1uܜK{tܴs͓5oY CLaYs|W{&FRSUOM>\Yp\]> *_>dR|^ m,qk?6]E_|?;X5`AeL֭ $ 4v=vmq=R?RL}m$_h|ě)ڞ,1?6Fa?3Ï!f _%mo& Gt{SO^宒F1}ղ^x:5Wis9UQynXrJ)Ul!mS4azx Sa`?O£)ƀšZ7 ̯&y0r?hƨkۜt_ъnns c&٢CQ"̓}Plr\OZ*&Ps:i3#:*r1 Ꮓ`tiaa6~;XTQj2qnmVǤhO:~:(k*&v<$jAWr۬PIҏ0ݟu}*&dm'@`;hΐ@<,@^Zt-:MTu='6] Q%8Ƃ)wSOE.^r"c#6?=DZH,K"W*p`@UdMJr\~YWNc[֖1+qܵv'R/mct²̯g UZ4Y-0QG?O_R{n#M %"uJʲ'NP`v0P+/x~t`giժnآ؂ 1r\P_ɿUc,Ss[*6"^Pt Fk/ 9cDTI']%%Qjm S0qOU6ˠ-+c VoLD z1A8lBQҾ^ӧb㜭chsEKϹ@ QkԻ(8&}M]C{vIcQowRW>6%s{ ⻹[g!wgA4 T]6+Rm|)IQx+oS7O&ק䱄8_SRCP~QL.Wekˊ8wZ5\ F VަdO̚yĴtc{T~}A*$k}К/.%Zjk?MDvaBUVL w=&o|>`v:Ipu]dbeKXBivddLFrbbXsJ&7\g)V֏kB'^05x*H_,"Đ&@w5P: &~,GFZ?S{$+v@72G=I٭O@ |tg ΘtJ-&Ҽm&u`Zee7=P1Jdm8خPT'*i8bl4pxd v!Jy($1<>xyR.A]y,;[cT납&-3=k~F>t}ƚ]2k2 ^8Gb>=O0vr+NNfȁKJ FIB.辩ViZ}KLD['}\tM >)+@(.aIGBzl`#&ސ{k`ÛE)m F{vav XD,SCe. 6jU.D\Cyg>)9}e^w4Js6FZ68,2EXlV(XM0jF) ,&=mtR`HvyFeHzd A0dTl IN5D3Xϙ;&Wl-*AOskª}yy: >RhtPR - tOӄWR6g lIe8dJnʧt'r0pi%аdd_9hG;i7<1 + TWra3xE$tP04v՛,U_cيFRO%v>!Y¹Vw&\Rg CM:06S`L3#_b8 oUΆrJV8 `o)b,8dgglSlI /~x @-9c ߠީs0m4mHrSk B`+j٬?R9eYp>Z J1؝Á/{eQ;U0E=>dM\# $ݑI@w(ϴN%j$[nQJ4XT{.&1l[Ё18{飰4t7s鰫3#ךDVER7|!0۹ ?E|`Rl/GRDj [U.<|@GϿr?07PȔ|t䥍{_QWmkHp"oh;%4M} Cb:E~ݺIEe8 8IDdoT7~ ̀!BED- 0uk1˒.I_U4E&3>XfP7d-AeOp8H^A%<++z׌`w] efEJs @>QZ5-O62α,^nv(k 6}j+" M/E@~;nhqxL@YH^iv}{gF2ӑCxPk̵f$c_ ̰)2%V=VG *W.նj͸0ICm6mG)TN؛&"Pf9^+3ePeM־ :8lӬ;9l`#zjm= *(Y: }W "O-CÞQL,іF܌ʙ[>憎5N۩v{FsyʙB4o=,+hO/o ˰[֙V`jkyV,Ӭ6#Ǐ~A*̈h6%| - ,X%2_ c Q 8e&qgv`nIg^ BLBl-. >.>Js @I-)ض \jpç2׋lj-;!sQ\fU. YF;Do4cڄ"ؖ,DʭL"iyz2VֽjY<叛@ F"Bm\X@%;¶[Y .Iݛ(C3@j tEI,_;/vHT64oX%/I5@H?ZP(w5SQIpA!teFt Cr &Mr6>/l$+=|s\3IQVx#QWK!q er/;m:uWDž}eL@u6X4+~KA495lYo[ UQ& 5"uɱoZ-UGf * ^FZPKxB9SQQRLMLs.G1'~g=s[62?k:47oɐS~: kk YET|Ind~=^p(}䶈"'2c-+jJܦaٱ[vѝ)wA`ť}ۖ3=w|l#B![ƳA$灨|;Q9pWvp#: xF9SOs+p ьͨx9 #K#75;Q2c՗$8sDxdOM̹EyDHۚ t+f/^q^9k25.K >b3I쓘Dʀ;mQOQW(6]hP>ڃ!aF݃"!|x2~⢩okߐ$ӵ[x-];*+:RƢ+woqLAC[j_W{:*ȧ:U4D?|zoB:Px#7la(iKcC cMLyZAhU xԈuƪpVh{l!)e1 (lp~\ml$y}aػHoGi:h#[ /*@I{U+w-Һ1j.>* !AEoJiY e҃D#aW6 +`XWl4: 7!/QkN5kcVR;KyeGI.g+EW[nyV?Tr$o*:\ ,Fmp'5 ㇿ"G cX61o#/#]A'@ Y5rOoyW]boQW]AzI(@U;nFVH~Z<]{ĺ C"כe4bGGA(H3~ 9SJO%J]βMemjtE~ck:72$oYGޗ1y.5d(?W:%dZ^v&riqw'1/N\D!}$?kv8Og+L 6MĜ `-QsɑI@zwɣ}趒Wlk?~ndB,!Ɲĸ9unTјtHMY1TmB}$&0 P"NfV>ʪ\Pw ?GoPZ" JY q#MKuv}I(ׄ?_GD4!]p,%_#SeI=ڶ\hLp)ÕD[15A ,[$]&uH:^8v)5Z4%q-qF S׻,=4[j$nnDE4y2\vko!Z(=ҩ)p0*1o*19}[e=s̭fI {7=ՆMoJ~-QO|j;hm ۵W{tuyī4MG0dTol= L`XXw.6 `"@mOrSR mno7>sIQnlW]Zi+To`)}Ց\fdsG^+ v zYn>ildjJ1Ǔ莸1l𙾏zJN4SѧV=kocuy$b!#*naaRG+`A~vW^ ͳ/1殘 ujU2i+hadnܖ0C6(BcIaY`{]P~Jr~L;LW{V ( q*%B&{jL]Qˋӓ_v5cnR8=s$Q  Vb=,i&Gmv8 A~k"8@LJX?Kx%NJ?B*/@(pVtGW%>Q7qT8NWݥ& nNw\ERZvWgAܡ!yP[M zv+Ҹ15AY(*=`V ]FoyԦΐ ӃPY_ ‰  Y:P8ųbTmoˠ o&r42k'?qK9>3ac)B\~ݧ 4H@L.ݎLL<+=~q]h*yE +$zS~zw`>1ۦz#^)zM61䣸S)O!#tFA;43Yg_{nG)Ԥ(Z w!M.S9gŲS_ygC\lrU3WVIUV,!X]nR pyU$˽~ˆ mw7XbaeU'bOIdTؘtTm4o`}8WSj@Es59;7eh X W)|/ $Ms4L_Vg\TxZR1rL i{/mLhʄd vjhz vq?p{}oE79N }X r(. .Kҿ&@GYeZS_a?  ^ A&EI`gڭ>#Z \$(xܛwſ.Zܲq$><g}!"9V y _` |(}\\ygǙ$қskce%,Ges9}a}yBNx(|#A-KI %bɐvl(ҔQB ,b@⿢0Mٶ@UC32{^GzZ,F5̧5$cIL$E^eWew zj;zDJΉwy+/9߼Ufύ;! s{bˏoHA0yywM3,%xٕc(>N;Ôa=.MB@j*ou)-]'hNV~x?AsE̓jlH%3|\NB+AYet"Mm-BY 6^) {Y idxR0-G>%#g]NIOj?T+_@(ж w+EZbr@Y0@ ErK=c\ʇF~-=Rotq0:]?<SA8uc@!(ZB7PYb%| *DC[cu'\iUjhz_xLWky6\!tJFY#2-8hlڕz=:/=x sXMx !:65ل ą!cwZBLq7yL#`gvαJ./wM) v{mG' WH@-LJPt[rB`swRw77bx:FE0D;w$ ^ؚcՍ>x"$l:LseEhwh1P!Y2CrN?C֝mE(q*;v]Ҏ@0޼1tKn9ɨqIV& d_QvǀۦJ 7͒a[sO' l_xЀ䌝!캴9b\g_!}ff]*8mλ 4xE3c T{5IS!}pEE'lwv(܎QBc)cz+'4@ K@£[-~L/٭E RqjmO{S1)>B"|ݎyfoG6`ׄ3K]3^M{Bid!7ǷG񹿌mtQ蹶}f"p̯̜Z7lZۍ1m͝u] nnw%a.w:0Nj=ATP~꓄W jq%6Pgt\ %p^Yq7W=~ XdjpC/~Yd#U˧6*' v5 ˝u%nkÍs1_Ss/?7bEEC3#LC.QlQ8N(5g ޫԦ R|:Ab5P`N҈bb}n j'sfk|j0W@Uʯ`3N|fQ#8C'fhOYTL+ʈ**ģ')z^w,%/M mYfkY"!kbsG^ z%%FSoM Se֦E9ӏsRD.SizX-in*lS= mg>;凱LVT4S~b?\䯈ig:4n)?UG@I+h2ɚra2lc0 d}Ӆ2`L 4(n7~Y-Fw`FȻgΔt`_ (fYneE8^ )Đ"[Uwxl| S\|v6H~;^F\p:3WTmM;џQbyIeEc>^r@h*1r@\0urGŹY=(zx]9&8u`N VXB}D;G YB=iѨߺ/8do}t)md$QV?' f+%,*Ipwo{Kri:5Z&`Nq/9HuP 4oSu\4%?o ?LR-QꑴͲDWTi)ѯeLҝzƕDP15!gI95v2i6D+&0c KH<@_f.,85U&RN`aqDh^#3(i`%I~JtEzBl:~1UqdRQ"l<g8acv~ތq. zPڵ*'|9u)YwD  ۺ5H=CɫFF*&Ђ7߁5#v {&&Mhui`Cĺ%2nZ#9J0^UT|֨kH_ [fVz_ *U7e?\H :'YkȅF3'pNϧ}ߧߋڽt0Kpt6T!M8K"(ҚI`{]SBVC[8Wbq 7\MdaIY8̜Ґ|35ٽ!T3Z D(dIV[O-5\ֵ|R0ާFZDM]5wI4Zd8rbXW$zt2r!t`Rq{WB}S#n5kR]F:WxaAgzNL|azgjp57*R|Iܓ-PzCd0{m}p^ @m'#>iWW9>7!fx^ )Dc :b#LdvO~+pp =J$R6)2 @0" &537$i!US^֕xs2yգ |ޖ{Lp#%zkI הC\Fd=(s+pB[gY%\WaBER3\_jR>XRa2(1w& jVgۘG%oZ c$ >zxJ 9HuWdl7^%{^f; yřK -]ƾ 0 l-{fBhْ!h|=!QuAe֛8# _߹Xwr+ I~R<r ?sO޼(!ʊo]sT^ˣ-, G?7>LpQu2L `Mq?r]5#Or+a[nBj ^^kfӆ=x=A)5yTa!lb JJ ޛ(W߉p>=~!EbMH-P7Y1LÞ3/:ؑɭk-RrLv0;\K9bD1ROZ:zMFFw5`*+ɡp쑏NrQOF?mԛ7Sc뒴:/ :Tv~},]θ[fE)j4Cmj*3b!Z?vHOGDF3uL9_:3; eɃgT?Fõ0`#s^O2Ӻ{j[CyccW Sl{μ$ЙؕށC.RG͒69Gm0 H;|B1?z15Re$3,mޞ1X;ɲ-_&O5‹LK֫]I:ؾ? :nÜ%0]n(Cn^V8=Tk7@.ݣ'dpIS%sq^ƳGq3オOE;vˡrо>BPQkq=WDFEB7)K%Yul u.kWס ^$BS$ci ަ tt9k#/ VZћXA ;xH[v`;o[ d bDT)~јb~QMICq`<1PrsG@8X:f(1.aL8x8oXb{L"􏆅p~BI\bDv!UikR]0L.L}* HPK` u3[;91K'''z/:ݱgWub?.qD1~rJ9,zwd2hGMdYDC$Jsdۥ΅)$fH&tF5 }jz 1&J xzTl `~?fHNEcjhiߩ57 HT*F3n7wk>> ڋzvr8Л7fɶ]VP \P$QV sP<<|5 ^{5G˽Y ~0S|Y 0+;w7 g`Z`wC5I7M|?^NA52)?+Sغ4O>9iKގ;u`lE1h^$3EblJ|/*+n@''8ҏZ? _)9:XRRvO. wgsǝ9ݼf]ǔFfk#˹.ah)0a 2( GCaJdh-:bDJ?Q=cz%ܣE{l=æG}۟QoAӆcĺi $\0bוdH3 `('RY90mn' K-QoqHX-߲V2ĕW=VߦFv*܁%LXr 2T9ed/"rSMh^\b52ؒT`^\Hp~Nk]ɾiOZ6TȀ6|n80yMq'(aI%uCV 1R٢G0#{#lJ? r=3(i_oxTwIv Q&-ORS3zː aο֛>g&N o3dKߛSAMWwenfeY9D0:cgڊ>w`H$46*r?&Ko)H1D&e翥 K\TU>z`#=>cjCK̢ڙ؛' Yp4!Y.94Ͱu#S*~8yShT+%zXCVW?ֈ1}7%ı ;hєO?S,xqe~^}2jLD-lIK5ܶk𤹩0z %ځυC&9}# Br-P̔n?ӏ7qWF:F*9|m,sӌ^-Mx9áJ,+f!-*I-Z*5@GS ;SJK;1&t AH1n牆Q4_mruvZ]=L]G^ bj/4/^P2آ_nY Fuoƒr dz!C O o5ix,r3Ճ {#Ӿ0?&N# k,L,݅1+S2|~k׭@!eY+aڮZ ά4[@: 1hl XP88Mp)Z5w=9_̩EVxWg#Zo!\5M/hx E~@,DHn=|ma%*+wև9Ŵ%,esewVqz ۡrɜeSFUn4r=_֚^(:=q.<]? m7ф)׊Ԗ>5ܑ7Xy53[W-jy#$)yT0S-򆉒$@Wp)/>qqzr"+%wb<{](x6X'79u*jds|˲o|lf<&|︙?iX^uB͑/.v絽tP8 +KŪSQWd=XʱI S]'ϊvTˍR1UCot-5k |hm[z'NnVͲYt`ŹԀ{i~I P VLS4ûV(1zeH|RIR-O;Qx7y[~g5-=r1MoN[Gu9p[Gyl*}ynHwjl @6nK^K\NoEsVKR0uZ?# R6z`c6g{rI*Ukl6a^-O#e;n>:-W8ۀ9RLsmu  b=Hǰ1>W^F a 1+4IǑAQ/Lz'yb qX#[㛬ݛH~UDa%n˔h_-ED#廙"3-Ww'pޘ/oעkTϕ{L۞ʤHқW5Ax?u>f>9"`;+L H>~6sȒhla f3 3 ǻs&k<iaxW+zG3@yQ8"4 8Ap9Byiv\zM[Θ\4^~eI!W%"d&zHeaca_/4q+_h8GF=>]_\Eo ͛?ʩJtޮpiÐ&1+T:mmxlVkfbG0ð%Ay#,>"Sq/;@7u2MmW{`s lZ|6['>f:?%&2vbsȎwΡ4 AֵQL_ {KO&垗[MyH[2ʨGUn$j3sAvq͂倿A$8ڰ%TOjsvƱ ~O}إrp5_A89Ҝd+!<7hn}z29Э92kjҋ8ӯӝ08c_eJx֓cFʮk/;n-x7+=80׊ NI;P0 n*,CW OFX^J#>A=Q!Ӵ7^/xVD-Hx>KշEb'8T\G CP}Rp;IbVog>x,)RvH<>+<-n#JގN>wr9͑Nm]'Q 54*=5'ReuT(_/3?=9q*5Vq۵:+^~ ߼] تMxKC"emH6eolG3k7FZP ۀZ+d^Zޘgv- j뜝@]FX~d gN5'{wf*R\Hd}v7x =v/|G.99wĒx#{;6'e`cᤅ,d)pY5nzu@2n7%mU lLre"ӡbAdWb%Sm49YwV uIDS҆ϙ^?-BLD*SKa7y7Ubu IC2ϗ.j1Hx&a"ԉ?94m PoqvsWYus! ءX`p( @Ź_$/?y``fyBߵ9~m2o>hG/ 9q[0SC6V㱡Z߅3rd,1cɻNH 0_!my0~*PAkTa u˺@'4;-A!H a] q|س[Y,*f*K[@/Ui) nen+Q;p ut6>Z˜ i,Γ#y9c*ܝF@<# X2R#*[s |eP 1;WW &uRa2賭pA^oM,u70d|;pSyxފ}&Ka`xQJmKSUwd!lS N#0RqAM?N2 zHOҊ=o'€?Ol"j"C+ [{򼾋%&CN*h.h8B4L&1Iltq3t W knyۅ-V;bz֋L®nG6=PGfW*qfOSKŤ#/2Ya5k%Tsb]ic蓱d!K"X)bC goez׭WPBGa E]m+34+h\c! hmYt )leFndg݆&gWӊG]!ݳWBJDK ="^@aXJߨ , VJ+4pFx6{5y&h:<Q+%B@`*< `Mcf߰ "׭qe5̡i3AuhBC{M\C+zZz A~eI CsOn]:f̒w+s(iHCwP(C M(]=z /ujT3INǒ!9;/ y& {vgA80+Ul>Te)s1+`Gصժv<Tuu#t B8>m9@{ho`fz(;dj[T:yν+z%LUyPAʵ;u4 ^e].oB:dD?AjS[}obL /.s:.ĂEZ*<\lxll,QR+QIsI~`G\ϧ-M GYHh!Ez P㦹#w,L4y^STnY񬥑y:JPW!VO-}!14ޘ4,# LsWz~I)~e׺`ԏe~ wQކԶjG+)v4+\߯zg1Rꖮ?:t-tU=!7b橊O,ȖF, up:P>;#)I r `]-Ӵ }Sok)T>鸰YUu1Pm)Ỵ7)' M 2i+R\4w9潿dŲc|xXJ)&Y!?iSkhD$2! .Cx-/~2?j~OiB`_.H2#|;_lk5Cej%k8t3n<~JdW.:SOonRr6j1e=rYԡyeéˇ4ˁE `kIWFt/Ұep28y}VUj.£cO(-Oe4cH7/DmaK}тʉrVJN89N|&1gy1$i(K$`b n o_MJ&QE0>6CkԶL-_5*dQVEQ]["$Yh)QƄh'n$ P( u3negܽǩt2aI F%%J1Ӱq[zci` - ۈ: Fs⊓g?@NYN!'[S,3R:c'\ylw ~[R-}u]?,<'<Ŏz%%Ȯ.;^FR G|%ԿP혗y}Q&RoڭK W i.i^ϋSDA;EE@&6 (2,!5V$ fNE+cTWTMV5ܖoI;}+uf˙miZ]Tn:04g5m 4 ׿2Ynza'w+]Czƨ>BY4>U(ǍՇq_~@-.}hiyA{K6e{#"Ζ:(3XI S \~+{: aGm;W_X\!y:XYjl~X+fu Ƕ>sPqj㲌xsDCipim7_\r Z9x[kF.P/&X/.Rjjph31sգo@?ߴg?/ff&|28mNfdVޫ%R+65·j$}Sm-JB7Ն|у,0WU%G\5[ykƼ\50"bHϚ?*ltsި$l5:~sq# gf#LYR",sMgzD nM3l6QEF7-5ڞh,5etW`K~ Ǻ<;ԟ0M$^_ax2Dž@HPu|#C?}ۆ0Eg=Dv@yRi!M(N& {?iHg2*ڀ5ÄS=%@8 I%6xru:;H-)},nk^ÿ́hhҔn р#MMRiX.|kZ.GJbEi&C|qk|ּLQ&[h~/9"-C&M9JMC oݎZF,I ]mɗA5}9_O}/Ds7Y_`u3`9UtErƥI217!h #WKLm?467 jd]"T+$f ]23i`n,Ae1SRM/lҮDa>;::g$B.YVs,"FP1wĺgWX8buY+߿)q;xȖH@7^,ZQIt +.U3; 3|j7a%MA8A a y{)Rvߺ 5u!IӍ @`/KKbC\f`vs<;bi*洺8_me6=C\z_`2- m5!4Wedᩬ5KF(ܹ R=^na1__3e-WǺ yڨZ~)Ϥe7)]k#eU3@;㢹6JԸ_xWy" ޮsCd;!\͵s[!EC/~^/ܵK]zFOV3VD5tṽ{UD~Owhv:\ӆ?PXa;{&iҨty)Z5p*LjZKiR{/0~u/v~H³/O}P0ۚu=i An$1lJ]Xo$k=>Tv#NbDaVZCi`s: 7Ō.}=o΄=4ygbz(}^bV[)w`г.4%6}ufVumJd{ D[pAW#h `pB/\zu!L "8\ bPqh>TRx:|A4:/-) {򗀑̓z|UvrUǘԮpNEb` &ZxXBC FJw8 . ҆+]љ_)_Y B3] ~(|Jj CrAs[ب'ǔbFRyaE8ζg׬Vu{mqӊR(cnVޚ 0gi.3N?qǞW(@(!m9XV]ybT_Tr:mR³%8nu5|#u~d)` Qהp$}HJy{nd@c:I}RhʊLQWI~E7\:ql$_@;!v]~Ǧגb)!0/TT I.nl A5/vd=`ߪӨ7Ff"*)Ew؆SaYyG9)yqOZe$*y1}> ,NR~#V5%~]b<*`浧0IrO+>#cdw r aoIXd we>y Vdp+ g$@#?=Hȃ@v,f IqɆSUPr;?jDև̚.:`.kÊd]$̟ $%=Mt#MxKb;!Dn9r_n[@ԔOo6#^^Ȓ9J5;UY\0#tFq %C)WX0?kZ8#w,Ty@NJ}t@ZTa Jgh9^Ό0~w6(1%W@g Lx&袆\-T~DGۈAO P ﹻA< |`y[p]ęBF@Xh *trr06mq.@;* 5#[0A<Eފ8vV ^n #P:ТYWRh;J69jecޡ >M\Ke7fvrFtW ඄ bDZs ohm xvֳա}oats7[j+ِ6 /Ԕ`m+ 1TeNΝMU8g|R^+:9L`$ z5_N(fpUf#?6uS̾fl;$~2 xӛ?}Iի4K/2r;jAuB;(*Q&Hr]nwPAVT>@ &l~AtHT&l\$5=t4ϕ*omەR;;/~B^)5+BĠ X'Zrc(Dƻ+ FBTͨ'^At/7wqc5 _=T OP-,?Q79 ^Ʀ=}=@ձ#߁ ߔ9T iJN!8{WsEG8Qt̽N]KЉ%|L^6$Q*"qp(Z8>y)M)jR^Fyϻa Y܅8Y.DshB<:͜ FV+xx&D+8-o;ŋJ;ͷW&uF`;V@JW6=Tl p]δG$nSrbw:>Dl;zm5rhAk|> G\2yblfs3Bdi 8DppoHHКW;+`%T-QǓߚCnwzW9RRo)T^%^!:(F,1"DsbK"lSFӘ^b bs'А_ӈ7!clrcSb|'CSKp0Cfaf@AP((W;D+T1L2ڪ#d{3kaՋ2l&b D0,>_`aM!yIz6mo1ڠs߈S*aF>(~M qx_AqzʠXyCah`PO3Y\Y̏=bJIX-=(Acx2/眝<;8F倝>Tbd>+ R {k+RX K_] 琔9X6_NzWB1ۿ~kJW[J&Xu_<3 poVb.!`":!X ]o dTVH}C54^;$ Q+v,2X +v5ɫ&Y&e+)e@MW7*J't"D d.-6̀[5.iSI/€i˾9z)IcOc}w`Miv_JPur9ʹ+At v01AFc_BԤ6xq651z5/*YAgQnre#TC'`-Qys9L_vSfR! hLSA%P)J qLqx+TO$r:X_qPԗNk6C?nKk :D>tG HecSph/;YPa.ٹ%DWWJu“8[Blј]ݙa#f`GorDbUr_bGke:L|эp^7 \)յwTR,g ҲyǽxɾyJӲ^7y d*W5θcZJYdB: "[ n}aC:Ro&wG{ q]~ p:ѭ%!VV]QL-b2VsrR01($?QnEg`Lrw"Iа`4hٵa ňd΍7Q&n8GZz{s&8gTv/ABZ(f+R 5W\*s<_BvǤX西Ig %}awPʥ' ձ/Z5ۼ,W(@_{>H@C{"^$Ǧm?^B"tq-ǮITț3FGͦ &b%UߍxtxerOTR!],8+ބYi^}@Vo:D^eu[WĬBI,1TG & V+=>z#P5 آz-Xu8/ÃkZ͝[d#c3t\Q}R՚a\#[L'2QʓOsZTeP9^j$u zaHuKT,`JbI0o<ƸQ40R:i `@>Bk;RcAW-60ϑnNIݼ۾IY]B[cpMހbȤx~BbXA!=+Zm-X 5%=Govذ(#=ŗ3ow!a`1[i8\v/ V,9QE':=IZPʗ 6UAڿPw0׋, E)^'O$DOYj&O&Ee%5jŅS|J@; H8[xdRƸX!a}D!Hh7ִ8UVcW\2h9lI͆];LDccuA-:cԼ6,}TDy,l$5a\O z^2\LJfO,Unkd9Gp +}NTq$r+|g9./6X :/hTsƒP#/1YGj|: 3%@%Yg:VoiK=$Pa<$dx`q3Ny`|oS4uMҲ2z(s̢ۧ m \f՘K] _QO Y<)`I:FA#Ԓ&%߉cle(G@h|osY5)nX^J)Vyg cȈPLCAfY kken_A{]PsFlYG@{N.=F/LQY @q |>K~9gX`Jg?o;z]pd|ks4M^3B\py IqNg>?H~ʜp@Ed2ǂ 5x -'KD)VtLkģгS ܊Ue\B-?KU z7|#v4W]'ofJAOǾ*t\,Ɣ^COoyQh D&zKL"MTΚ.8koRPXZ5$Ͱ{3.SbW"/v_h~+GΗ?7L c mgx,N'@ha6,5ڦ5:jzX߀#W^>ժ'Y{G0#Gѽ ueAvYzL EkN.`"Z-@+~g/q'l([f.,U}{_XGnU).^=X.شUٯq(){"ă; yLQJx qe>pK$N| yAM]cL٣?LOxL!jΌ+Cl\CD6]-8;ђ]9['r!^tb|]g/#T 4#΀Z>I3@ay>9CW5/`ċG8g{i k X٤x1KpeZ ޟXjq:.j ƫ"$a{}ee 4= 9Tlj⋁y,M&ՙvE9|soN)rQߕol&dط OZ(Z_Z=q>xpQ~gyYak#x* f8D蹡QH3BBH^<8G^tV\zZƗ0UcM)qvUo`9³hE'瘤]xn.*nrLghSSsba&NųU3ľAz48mAk4&uw_S'ggGX/-iA6ga:2tWrI`{{hɾ6O#kcdqOA/c/&AYGѭ`.6~4`ۜqT-u{mg7^KTF:}HAFfV!yd% )NNg`8> ok<\ 5W2sw|T48k5m^Dx8xN%|:jVv$Nc GfCM74S{),_qb:ׯѓ "li`:VKox+(6ZY!0gT[R;1b}ԔtNu?]cȗҘ4+"IPe$8E}?"^+'i,F" {e ;n#Z`KkZmeF|#H)BKW$1 73ZVu;\;X-doQ^q/0 'WdwQٵ#{5VJ- #+1VarI]N">k k7Xvfɏ[2E@%׬ܑڴ0*e'sQUׯ̶L9TE_83Cyإ]Q70Z[ܱIAdBzQ`0w7ph wf|z/16J 6 G=,Gi2%ȕphxAIMP HFx {QUE̿Ut'b0{q)OL*mP@]:pMT(Ktriՙ|GʆU "U!dv#<_%R+Λh@-O|cù zU.b)Fx}{Lm* q<"قV~/I6J4ǩ]%,PCֲ /4'N_x*ݨJ{v@?-7zY RBƝtrZ}Jm|+یfb9gn Le6eZCƓqFի$Ƴ+ 1>bmrX{ >N~" hs衛/xWv5 > Qk9p9=6[u7ON|?(a~D]>?;+*Gٹ:o ĦFF!Mb~]?-aQk-wx@^KaS}(|f^>vEe[Jk0C=s3OIYncyOQ0Ma՝ Qve0>TXȃ"|HvKތ/`WUo!#+s[ǏTN$<9DM˸$/D0jE1^Uv^] ΋ou٤3t/RTmQc{GVS"^*pٹ.W7WK8$ز;cr7L{cP\ c {شFM&Ur2ygHʳ+G[ݳ;Ԁ5KkFc7QY. ^7 ɒ d .OX%{-Dc4aI1|4\).B*fM K6Gjư+|)`Z9w4wC'__ʗQ(JFM-cN#D\5AM`CXiEwA{eceshydhSOűb)pYhM>d $/lUmR0.\8l_-ROi>F@>D-8έ sq{]d+֝P'#6ZI^> mK-N,6>J.EƩ*R`Nx8煟clЇ38 9r1{=R"a'bdCqP |u#'s%{ź Yf2HU!;z_mY=elMt7"G;Ƃ6sߔ=aoTd&8Zp?SzQPVr; *ct8nvO0|Jm>aT=8$zֺS@Uʰ3x1+J`F=cZ/F`-#Me׆acjÝ81pBghNth, ñv .x Jc Djd(j*0<'J=x,K9QQ! VjSZr"M a)(/CNv$6i8o{x'HA(Yq5tUHr$QCxq>ڋ[dM_ܮ,{_RNleqO[" MnVsxWlpGغh;*㕳p̓3)v1zu򡌖mBo[v`)p9Q9cR2bN:8/D%;\_ *д؏mv(`=Y 0Q%(DϪgCJkn[^?3Aa|]z{ЁPq{?SN. <&_XGD. T98=h+Ki|q.m{WW1_dE"| [(r4s}* # 1dES te_M)>>nxNtNo+#ԸIW99[o\=hԉuNO:oaU)bw(ذIO2A$1ŧ.Y:p@VY90 QAII@]i*%f,uIxXfPQD02M/dA_^&M\zV ԡT`LvӞLmTt4Hj-aZfm,hB3?PG#&ʛ!N NcƳUbBӨ%j!c]HBf3ڄA]̂PEJhT>*#_+z bxfЫ!99+L>ӟqo lW"yE?óg4f`qY=S 4yڽġmBjD^::9F8u֏:.G)hOYic'֕&K.]LIcR|BL$'UxxH#!.OZ>d?c0E޽kJ/'j*,G.zFA!TxBڠ}zeW#} CnF٘\ǺR/Yhq" 99̖uTnrt9ﭩ Ç(XĔ~d߻8>]Դ,N!j9cNÒb5WbU~8qKL-)f>6qY2[ĺc].6gҠǮQ6IjyP3ueWE%i[HҼecS:G=AVL(̖f?}^]~J :|0ViX ;(* puk91(Tb/@;t鑣$:* ?~ȗ&O.sTZ9/dnEVIJÑNK|lBHT=Z|*yw*q>;|BV ,usMo]0>"zXЎrV)_6Ӷ@'0jUKsg~3pwBtKR8gX '"}fլW>%orZ/mYriiԚ%u!*A@~H|bD_EJh&=uHcrXӒ) B맣c)tT9u.+{⇮u_ 8 ƤNG"re7RT> dXPJr0 y0f.AuՋy-9!=(h 5ƇT-6T;,kҫ%ÌcYӯhSg\s ;Eu0E|/L ݨĜb`Op EeP9e.Y &NiFXh"d `{47▂tΙOij뱜P!Efd'O6# 77 >Rtpx bDMp7[oOR'\N_0xmT4 2Wy,rϩS{(Vq_YNI4Ί F1sN,Z#8B !tAIuY#5f%ɏv|=5QL@ZJ8psl8o[ۈ@B}z~%_R>ŵ) _,6BNjyǓm\lot:^׀`# rdiftA,D0kF̉ 0v2aj%b}d^'k@Wz +JG=jDU=WQ3AbZu >ՃꜼIKGfH;QY+/@ _muhm‰>F H0Ml9dMnRZDHbqTW/ >Rٚ+e*FgXL޽FQ]=A6@W)o#hE̥xBP\<谺wovv 01 ħwG6 &!nBGUv Xk&/>Qw;HGA' z&rd @|CXzWDNo_!S% jju#v= "U}dGf I Ǯ,坸}tDeͤMj>K?w-׏*GۣY I2\, Ym&εħjwHGT#ANlSA/~"]$zk(n+M\*\ihU8w]i$/^/ZEʏmzLbڒ u CғʜFmx"ҔV1X`=کB/8ϳ9p>Ռu+?1R2-@oڢcn'A+}G[ j.cN_.|~T  RGq<;ȯ2"8F /s>i|SQR)]YSVV޵v't3K 6'ɯ?/P`Mqo"Gv7Yu%U^XD*"e<1.md4F-F3 3F0IBrgDN@_ 5^WnjMuM'PՀ!LnL=;QCb;iTbX4I>}t$Y" K@p"-lOwNgg/pv7N44umiIB.DYbiE -H[k~04YiُV7r_lZ;jyk0Ia`!j}m#o`zEpg1n "u@~OG_t=ؼW&珥8deZñ!KiuҶq_O(jnf$`lT2G9;ў`NvN[ "bHٰ=`y4ȓ[I#@§_k6GQDܧX1ͅ0a FE72@33 3`2o1b͂Τ )o݋݊]]J#FTj/!-=7RGgk K{{ FڠdPKB}nIdȠDϪfb$M X_-p@RuПLNᖼȾBlP CRe{ gި03dUy.n9: M@nQs(?^ tXb$=u?JC0MTcb.5Int"mӪ@fWniΎԧ'@s\Qzoߓ7lRdw&V~S&rx)d[u%JfΦ(M;mKEiwz%AĀȡ/n?V)2 " 4}Hݰzm! ~T?=Cz{U{k@l`_36 ]8j֋)J=Z|ER9bdxm´CרO~iڌ[ R0,sF=w1p!B7-\-:v)_dMbk1;LlycS(R#ѣɱ ]c&|:qI_y808&߉GQR7aC.e>(XtqTX_h9>_q3zRaSy5u\*Zbs+"Rtep (3}}&yӧ xUc m # D\St{ /E+od9%P bWE|w4D;cQ|"*R y^-BGoGLmÕn'i=<7&'p ݁MPOԊ5ٔ?WOe$`ӧ"<p\p2sZհfhVH\Ty psss&lb^^(iOH eƚh@G}uv.O~B+FnO=| DBfXA^H҇3 P>rP׈|kАЖD)Sp 5S(A妕ȹ >pz…43a yM#}ZJjJa,:DtZ|GVg~x.i!-\\e,hA]/9^g]pqS |_,kCZJdzQ"31d@"\V1q_a/Bar3B5^,1OWwE5&PYrĊ]tr=kFjqqb㏏E j5;ڇxorHJ4@x=22]ڄ${W$m%0%%nrq̇MtcoJ 1`|"a~|L \dLc{u-O^%sgۜ#zIz&Ă2Ė?AԦM!AGC^tnNpӼH0[#~Q $~ʒIPJ}2/;w,VEŐlo}I[VyF ij'C@04{($= ;DaQ#^d)5')k `mp()Lq#NbjEK@kq ^wnB229+¤pb-9r}H;暿'xݘ]?jreIXSx֚H5{&\Lfodë;j~a@ިC "Gx|~sj3!w+V ¶20Np0G*>sif#1`L*҂dU ʊ8&!p͋Gꦸ2J 9\f;ſt!$ޚrd͇$ 06 5&,c\1o/z&t8Qt;& 7"yǓIdR\.h@lI;5Dj}m7=#X$Vs&t]!Ϩ` (Ult$c2~EvW>qA5Ģe{?e_d1yEOڏH툭8h'-PeɷaBoUˁP8&A.U*A*@l͠ၹCWsH}{bD C÷,_;KGɑ( gY{K.@(-{#y×000UC# 2l$ %)C9y뉫ZP. +:EƧUJ׫ȍ3ퟦf_S/i؎O2@Yuue ǘ½'Xձ4 %pǠ >}3:N@e(#Fyi.-ΗL7 uC"ʈhly'if Ec-td=hg_}ϰ=LFc g0]sY(4 U7<+3:ci/l? XFE;ړ\)0֑hB4Wd}DiF p2O_l5OBց<Y68k:xHwP 0Fy/{ uA'iS[f~"/}∼"{H{EbwS2>s'eA|d[B #]ƻ@NSWjZ aeN<e(+}RVלFn3͒N< Qw Cq̍'u-V'kz)"—Rʼmh]3ǡua5op~[q ;%djp{sfazqv m vs@($%YZ0P"29y){MQ/qGj833@2`rVDlk$Zč ^ӥBX$}>`JIGDk YVޱʶKk`;5`@#3;7?Ly8 %g;OK '~I ?著 ܦќ8oOF{pV|4N|NqUm9i;A _UUf@%нP Z $Pm6,_/ I!QHiliC}إ` "C 'ј# v*zyn>H*ұ|# ]k7hTX~v( i 'tORs'r{R끶[.:d",ʇceXZ! yl[ G~cup^՛D/IWƼi+yh<]]f4 wB ȩbL;ȾE]6vbYXz;ԎčU F1Aw!=pa-J) .5fַ\&2n[UW,&`JqSrw_ΡpvO t7gG_!\  R"8 M!jFd Q,dZ?Uxʈ(ս5Js[c j>% 3^rf9DN6=luEFf,ܭ*Р,Jz|Z }#/qosrb)ª0Bh l3Lf(z0Ķ]B>ZùE2Qnq1P͟_/hۜ-ޓ*ιf7IQm[ʟ\\?2ѓ=pO,KcQjCqE|%p7.3&X}#,Ev] ,C'b:z@ S8m+ Zc๨d䴒dEUk L?=%X#tW&6=(.&¡ RAfմ/8,y~VLJRȝM2C3TT~l Scy;nEj?ís m܏~ `;dIBι\ +۪T?[?md:4m.7F?u1ʻOM³Oj|cP˄0Axu #"͡S)OW;Z3iچx虮P}]ӽըnCM<¨ߘgLb#c4nYW=r C%WKF)(0j4FŪb+6=S uIKfIM$w=%XV)]v`[eC/u[%EK s!Z\뤟GzR].SՄHjX2B1_K{u3bkJ6Gl5ͅ7e2|<$s=dBz^@H'Nؚ 1|Bӡ.zQ`y7DjIN9@繥VDg>rնh: @E)[їyfd.FlQ&3.JCњex͙ŭVCZP91>/}9sl*^)$kc '@)"dkГ$Pt=)F4 QR~s+8(x]"'YyߑQu]7F6#}̱E W vk8iKbwI{ZXqMR],Jz\ -8 JR̒MHx8Er`=H%p@e[:" ?{.ō"j\ hb Q3х=* )T bї"߰`Ĺ,lZ}:X7,9(D?`7b"Mxp7<5|Fۦjyq(dJ  $ūI%ao(nuu.#t٩[LmUG>slws/Kd[6PQ`~7%6;Syv1'6Yd!Z:=\%Wd!Po);D\(~;Fy  ~s~u eH3)FoS<O&(rŰ59J/% ÚUy\()OCgRهh}mWQʻl79a&ŕڌ$We:>u5m&@0FY p"ڑ 'w/lW> '> *R0:eȦb"¥XȗOSSoȤI9Bsg~)MH2Iu%"YBv{.Σ cV]q]Z >"syX%t MEQioo*YL<x.4TC oi5K( K@BQ@!OO7\mN-:N-w_1ڴT9zMy| S+ G~@efiO^y{f"(ؑ>4T3 !58+Sr 6e0b&ߗSX=(k:'O"ˤ@uGuoEm<Z"[hgÜ⢋uӁD fV]OQ|k6cmK9q|^sʃ2AWBpv p\%!ovCDJ }Qcn[jȒΪ4ϱA2~a펭>0uMO}v+)lą:zN: tHh08 AfS֖$\{t;W0&JHGCVD8]]^B pILj#؈}O[ SiZ҂ѽ+8p[I+,3F 6ME]2Sw ~@L4Ht._އwKn&ϙ;+,#jXX:9 [?($z8GKq< 1Gp=F^[2qѢf.T-2gWPx'ciSlg $3qD(e~D̽|dfFp!O&_6s3 |Mev9GHuhv'+!| TXAi U+r`7~wy?+e9*d#:x͝3QFzK+?y6@u1?g1GruhMݼ?as%!g~:vE6*E8.'\ս C"STTb z@ # 8`a^IvHfHF)n匩t~KaF"} `YBq%9@ }h$>ȸt 矖)Kr!Ve/ o\ /R'D&9/ ispǡ86[ARk~uH2HK<)n[lShۃ5D1M3Ld4-r\xl!GRr CZ\1[m'7*U1ۢ: 6" a5q:jCzU6x>o֌v4 B =D m"5Ȃk눈t{'&:eC::qqF<ƪԸqKd.ue kKO>T]IlǾe1HP߅s/buYah) x%co#[=8`3RK j^icXږ^SOc{Csɷ+/G9hZi&BSw,FS GXѶm:*演9Xʋo%a*Ը(rf ѯLmk0 [H1׷YOE PF/G-i҆tc隲*b"DMtC(Kt}sj&f0ƕFgcC\oꞑCg8BJߦl]kr`dʮ7|8QN:(wZW!f4saڈ쭀BS2Xpx,q]ݾ?L ױϳL0)ٙ־qqeGk\/%1H-g`GYgFz>w2&['n|pXc~ ,chCAȔU7#UO0,|hB=@nޢ{+p \ǻ8J&5l8QvN;`^YoT4fa ˇDkf%j֦x;R{h<g=W뮥s 5\\w 8Q%FF [\j El'k?*N?܂=2_Q(Sp~IA X\HK d=ɟ,xKGA$|zkZ 9`DxZF% }߮JNG}ɨEjϣX2ZyGVC$Ow&JhL!: )_w,~v:a&> U0f'"hɂq=aNbؤ%ϒUijM Zܻd/-S^ 8#T ~2$Hu aa>#IB84A1H=p՛ݬn/{+8 )c8k "G~(|ɇnj>=pS|8%~mQ;r-Q@"':Q0:p:&OOplH)JDݺ.A1*^4N龘C-ۘUZV6ܧcqʗ9 I4{\C3?=@WJ`n*n@B?N Aپ77-FdJҽY#Z,vjn)i-Ey7 J?RTƩ)l>ՏE@!3 ~amOeIޟ|g]@@$4'AZ\DT>} ⼡HpEj q$s*=1ɸ9&L۫)t&>ХŵE^G|V5!BD5d+uzM aC {W~\Fq@s ʹp5 :u0l#RQ5x[9pn򮗤N -1QToԷti% HT#O/yDr?()bmQj;hs<5 9{?G!UCκWo>)wGt]XVu4P/]еYp+D@[W4rҮp찅Y+3OP,?f8҃/w;ۮFgWWd;9`>]]NL{e/ 8c㒎Z -vƄVhh]xnIlt"hޔeJ2 q5,8L¬ 3T#4T)0S%)]Rk|SE%7CV:e*5b%N>UZ)&طJ.x0+hѡsyGz*ɻ-`:Sboc'~$Nx~ĹFm,( EmV`)Pv&P^$W{Ð gٳ랮Z2$O8lq!"ͶݢdNpru="1` pBAVI\j,{x: }h&ʴ|C V;gh %y\dkZYˎmR% Rg4K=4`8@tP$OLfAr"ruW']jпB15trS\ 0ЗZ5JWR^PYr66 8NjB/F<8C"Yy9hu+^R0uZA9E%Խas@Kg1Hs`WWC;P43~Tjla$|&Jeb:s !Ğ?DwdjuaH^4AH& 56zZWq"zo$M'a9`" m0{[qq[~DO7RN * $jj=0c_Nj%19~.`OPV06+ۓ;pҼK'YwBڒ~<”T6Z|lrNV5rDrM~C6zOV]>m˱ڼ2f q@>m\IIlO4yUj) Krdu]^kOk}L6$c^+< ҋy)i~BH YD4D&6[GzG W$Y!<Ӻ!Kf9i(kaSA4c8 \"0$EY-w!$6#ɟ`ߓ)LwI{bN._/-Au&x=^UʏUX#qJbDClߑMStkg/ɹkX])?[rrHE n`g5tVAՠ20 P.W`Nh`ܡϥ)߭4vo6]gܞBIfvtjoV/J&G(Q.0C櫿 U}5~Y6N(E?n\Az)+BM)OѶW)&ca=`8?c\_cZVP Rٰ?sH@U{Έb&|%Ra;-GTޤm^) s~#{E9tIxSR/SUmb/? p09O@a0=Wxsl%fܝrCT߅-h:Ú#/i4յaHˆh2?Iyֲzhk7*`~~=ԆjCRxbSW(}% THtP#A'LAO$r ih߹ YihB6eȜj&Zs2: ̶4MafO@|q,< >Jj >n ڰ:]H!*ȺF" 0Jm͘^9:*n"9j.$dT(ZB`R;ی6^U'\$.(CAǩB #W Ŷm(#VEϔϦ 6ݖfe͑Q>삿D{dR2U]y? úF!fz]'s h`wqb`š.@3ʃ=XHLTYsQ9td}dVLWycEHɓ8Bx=UNjw퐀N m lЬ&]Fg)?sCf੺hzLSmʭc -!B_DsR.Iqz ek{/-Mt!ؚ+b@//B9W &U>WrIa"E)9|3f ~o?aTx\mJo?QtpvIcب؀'}7&ceis2 jLapLNYlQExՃT|I!db͚?i46۷. D$ :`Z]EAb>ɩj[F[H5F0_3 "³(])oib露Nvb#T|Z3# "bȜ7&W3TޙvlL$]yBv"Ys^uA_w\XQ kyP4W 'ɮ4o&.p'#;]΅"ܸ$bл.Z[f>?<ؙ>ưHEJ>ڥ$zP}}RM:*ؕi#6(LJHAf$,p~?#.XMg7"g`5ˣtag ֗o]x[jI, _P4MugS87*o?N/_6{>}yPnP8oos*t.ye^DW^ԥKS4mXL>Nq/DۭLPf dGTef]0Q{J0ϟN b.jZUo9$ qw*t?u&.o\~H ŠOİSQ8:Hw%| } H8s3lt~!7xq,p5 j}BU-pDre V2Alpļ)` yxhw6EZɢ I CLf@xd}'^pT괘=ZSh-3GeۈT&Lj%0O$Klk_2+ FUN܄Z\KwUY^,h_obsQ&zّe c~kh:pKG2sf6vR qxZR$ :OVf($,'n'Ur:}^qwkLԱ0}Jw/>1vhEZ]mKOkᢕ2uN8so@[ZrqD?r[ å!i7q5_./Ŋdo !Z.+ث6UກRp8B!S,>q7e:2&u\/3۔ nxa#,*$ڒn. WpAma)TNzIO.KCe xNvN@Ek:2+kU'>;#LHPG: wخ'cUpIbDo`|>ˤ35Q|M`,UIa~8"𤗮ȐfBf0')|;S`Υ.W Q.#ȵ7ltتxCo R s/oW^IO22 1C,\6>?~7* p>k ypMi0x ݚ$QSENr9ŒI֪nTiY-4!LATzTVjA9j]%eհ[E#9dOϱرL 2&[PJ ]gewore[헞g#C!XԴ>-LSI/Ζ nO͠~2?~>O-ۜ0Iyޥ)Eǹ9+_OT6 acAM\;ݥ iP 0n){!{"ƺNmp2^ R[g6^8Z~/_pK)_Bu6Cre 8H4DܿXVOd6nG~π!;NV(:Jʝd^k.ܻ@jqTU!5tFSZ(fp|,GCjd&)B A@ҦLI``wC/B͂g(feIRQ_R+YAsQǀMg:g=d !CnXA-6uTxܞpWܑee3g^n/An <-)=yQ1l[HAzїՋe)EJg=TppP'Ew/k=Si]R8D,'eR_3 qe$C/ݲ*^XI,J4B:nqvhzigIoad+½Y݆#B3(X9eZxk D^4QډƃS̴9[nvF/ݱ<ĽȅTn%";fx] >LomϟJeB08K0y"}9dN5\Cz4UpB $.nuG2Lp϶x ŸJ]K-)-!?aNyZtU e#FCN($*SƋ!`-76t"BEez4-yDK0U#b)~9/oi1mN-wI:v; _9B}&^iGMTh/0UȞh> f[fS.<>!:oHsdvbLGW-D\qܟn1ר9ƚ/B\5y}?``d7[ܗl%ey#/,x\۬"ePbBU~U+B!X:V :4~{E}}{4I!%D u65Qg)|f S7vWL; 0fѴr|*m4.i8n{82_"7G&ߩHBv#B&"j&1_1&8O<tx ,k[ڽ39Uڻ|챴 j?ИsߪY1cvj+WirԌ,.7=B1fOT+t'-fsV_(_) `"M> d5Ū33?5=OW>SU挾,)Fi-S$4-8rJ@ qbѪ A3G7߁'֐F^w7v8,[kjަ4MNvFA;Rd>e #笊 r[Żb{?:Ld!i&_eڪ!+ KmLjSz~܎WJSbCť pt3{C~Rd?Z*Ge6s1ۇ¤̈́%$ɳp^uw?ipW!s!i!),){)&݋kKaF~׺ӏ t a9 8CոZ`"n˹PRy15qUC}=Rݬ%4_2N#e7{heךd &E2pQn4nz#nY̽5InSdO\^2C]U947kok7jԅY=nMDqK>}C U@H*r.-t3 ~#j;gaoV]2}S'IPx 6_XsucRܛӜocGw#b#.Ixt^!(΂ڿq'{wMjf#"98z}_d2@M\?do L^~׬ Ob쇆$Y˼aw?TYݹm6 >Di<=8 PBmPuhmGMcGB3IЧ~䠉(\2sjS]Gљ^n$[!6@| ;#N'.ȁG1T clO]R\ U6q:¾**K ݢÑi[N @5`xl4 )'h%z^5P!O<ԁR ~49DoB" 6y6pM8Y~"U42xƕ{jF5Wm"JiV(oiͶ]Rz|Mɸ 6`SK|/LH9Z)\gn̔ =P%QC y )k=JZV2nCdsЗG26vA XJ0];nߜ@rCd ԿZ$V?b1/į{G>龥X-$,@Ά3pb5L{=g+;﷽(W(w"2u(cF 8UbfWZ#Z舄ckrJ.f(.iD$e;)rbh*``bAmC* Fx2Wˎ S̅1SXLΟ1Y#zAjàE8rm~ E ΒtW4o\j5/]_BdRA W_ L:8­5sxFJmQ3Ngy1e > yl_;> ?tgJ\>HH )~ NAj OӥOоMQs*Rrr0X3FN‹׆454#Sf<(`eh _#f;ϠsC dARR_!;uobsbz.U oKR E}yb!$%s`-5F)d2$z\^$AJVs;)~m1 !t-|:]"vlW#꘦Rt|Y@!(@;VR+(Ud\l³1|ȫeU`Ϙ )٥{W1x-c^ЋOXM?({449\/ O)G7̿DCMe VK6*#l Z*;FZ`J};?' kAw_7 AJe[S5L o(l-E/(1<jF詏wlM ABwt{@ס DZaBB/6NC8"өcPұTJLRo#݌, p>UE,'7 Қq\zt_PG3ӹ$5S,0F}#P{Z{w-EWb 1jR&g`IRHlҹX/z{J6`$m\;{6Rfg dO[Slm1[ }pCG77.=~OM .1M.Sf3YT8u OlC"|wS Dj^EpצWg>R"v$Ibwu$\;{e&FKR ЙL`e7j8:ASᗐi0aHh/R6R7cXрD4YVy8ڟh&}S>* +^Lh{hͮW)1&2QDnijQ[T7cxYaM@@5HةuA|Zޑ8`hlӜe[>58k';B 㥊S&6bV5:ZYAvFeS=^PlƣhB)л~nDS"z$b aS_z N e63IyOGGd՘FL9[P0qe`=Uo k"d 8E}wpM< ?˃0:!c;~!1,A2s nГc$bSC~ ^^w̽%-![Vȏ җ?VӄɯJEqQ^XQ,{`Ĵ|EiIf:CjGYkPZTUmpM\OLv3v@Xt} YB\oM-L.k %Vci)J+̣@:b!(tõӷ^($Rt`zYK7uqGeׯ|g  lj]cyc'E.Jvͯmk8+s<"J#4ԨlKtv%ZR\𶃬@==5Vs /=`qr?heM(oG ¤觕)2 tNw5vn;w]Ē|k&iYРK35_`'KyY 0t/mV.9w !T io9;:s ]x1B(Rwpn8TR3΂Q(KIƘa 2Ǧ*9SplԞ ΄ g@N9߷Lk}p帺 1{^x`vv{>eA9tc1{MGʅ<[^JCЋ#$.vc蹖'ScZ7'x-d7EHӪSv%#a]T0Pnm[~b>Ѓ,&ҐMJSf8z"dJphDe{78lI癁ڃx܂ aEShu9/6Ō;?^%Z+%ktRNH3ׇ}DiuWS*a+/=J~' 3r6C9Ӭ.j>YٯE[8]1D9 X񏉞pd%>uƱ¤cv?bSfJQuz"F[tR fnd ϻ1\֬ $#ERKZe,o;L X(>4#|O1b2#}b٤ˮ$rJAqA7z Q+b>Ϛ*C ֬i^uiNojEe6Վ֬xBQP?a[0T7:0HyCtHPVl Zy]N>o;j%4YipߥܛosAɛ 9l UJ7=Lܯ>O4bgJc&# JD%E- jJ ΑB r#9i2j*zt<.D<<"_&"׀K+{eZ衟S0}u3bHHE}#w[`v3AS Ȼ$u4DG4HpΜB֧i1kt`c;~"X<1ziơPU(~Btph(cZ!RAj@ZlntŘm}@ |/۱ uPs|\kA.\q>LDnH%+c$y6y7)fi+UۗW%!,mLn)^AEES_pVܗ΄,$PvHi\:M1l`vkISofOK*DPqi5ocmr(^ Z0g2ɌX⥰!׫%@W^lVNQ*k,x\+tƮQk>A ċ#XXEhX|\ +blybGS͏D8SOu~Xb`'7HĨ qZ $dȾJb>yCDc*tW'ź꾂 VMPMcĖ7TNPPHj?k%~74cZ |yk"Yb zRLJƦe"xc~^2v~\d@um[MJ?SCqbͻwK薦M@`\eE" jP&dOV'Xѩrd ҳZ& &e ŊjFΐwG 2=V]C@.9ӥ%үI0 ޖ3zr]j6a1;@>KjL.+i!?iVirZUNDN-@--A=յyZG[tsa"@^:{rNXf_dd?ȡIGj &^AQ y</1O"'Hx_-WTXq=ZSl7s>k*.ii]_yz(< ;=g KmM'HY 8*)D n:^+mLVk6ғ M21dpeH`kHJ2kۛGHt3rO 7Kŕ[&ZzB֐n]$̀4:يJ ҎJ[939+!6,-K!|-mWzR}`ZTSnμu XK2]T#0Л4#ua7isx1>/7KɀZ4hhd\bN`\SZEM x;QS̾F0n<,'JL3N\quG๝y7`@D[qq27 {]q&U@$ğ2!A#AQ(b>Yr"漿$MU]z-\N˚{ۙa< S QKľbC\v׆'ڵ ՓQigAd*N) [W=6|ɢ7j ,\(Kǰ5KCR6C$ MgJ X>mfS?Y#RhN.D[c$gsqq'fGUkO;汷;9Gu޻~s$y(e[NkN@iXBǧdK͉ЖMk,UEP~BM:N[=΄KeL*9`{d3[E45ҋjPg!0)l .PDHy WȷYW|[6.F̭ ܻH΁kFU7KlvO`OZJ 无=c# <& Gu zg,fHr._- ď?kZN R kW{}b -etQ}?0G[^!2 /CCѡB&cY|F]&E 572o~J--jBn%27 };jDs$w1 .. FXAJ<1ˇXOFB~a| ?(9eKS9V&DJ~sSHP(Q63Ty`ۚ&/XV _磏ƐXg܉̀^,bjtS$]WBIX[IIpu 6,5I{SU? `tjsޛ^Dz;?e2n%op_V-30$`fݳNq>p Δ@`.Kh5a9j(meDˁayw`Z`T=9}ۍWVpG溮k^5]7%ϻ#&'DƮ]JI[=wLhnTamdQ}ȝ8Eer Yϻ'oȨlr.d̎>|Ïl2CzJ?+5ƧU^q4-{Fڥ2URdRԔ.TS ӭ]D"!Z6n(+%O,sKdj^&(t+7 Iֻ pk2! aSb@few8\ƿj R"O㥘dxJ7JT<cщrr`%;h dLٰb~e5چ_Q0^sj#u_ (hesDz@Gd~iu {&[Ub䨊rh*N=geF GAt&&.)iҟ>lcԌܑNVE̩sVNiꇥbT0&juZz.s,Atp5%$I  F>bK-1(@/R51]2Л6=B~oXR͵#mÜ^'(7]qKo[_V+W|'Ǯb?!Gq'x+i ]nn@`/Fn7aQv?!kdz<~\O]Z,P8a/$gSՁ(2x+weudt]Bȯ %K6L/XrsX&rVW| 6Q} dʼ/݌~̹Ly]mP{)S_9RBc%=gP(n5",Է>CR&j`<%k 3^yMA6wGNۦ`g V1xƪU&#~f%:pT ƣsE1P=ȱE:|#U'CNia| ;jR.-3iҽ/kbx+]EFP>30[xDdLhE:ǰ.)W,̐gG Ԟn g׊BxA>ԟƽ<ԧ}%mN ?"e\Ih2W=6ˎ=ޑkb1"R80ʑI8C"mُIg6ubhN8 Pp㼫:SI z9+?1!3]87A( 8'WCűߐ`Zj2_wJ-BGmhtoZ,[]r&7zi 8M]ft !lY7kc[Z,ԛo C:0A')!yι5h K@+wI.f ssIS2!SJ!ԙuV&Q4ng(Cc'LqwZyITM ga#I9`o_HӲYX[Do?I_.;r픷lkF'($b*]`MhXBxUP# a)s (b.$hA4.",&$nhcԖCc'lk=Ǣぽ;]~hVz澀#Fjz;ᚸBNpVdFSB`e}?EȒS{];.S7o_+us,v5=2vX8Uqwaʳ]*G!P:T|],x)je,B]ϏP;ȵAspf&'aT'd_V9OX#@ǮAڀE"Ȉ/@ߐJ=P.<ho/^I7$[1רrKm m=TvNkt*: PJUMz=|b1b,X?V,ZTvщC3-lH02XSCJˠVmh qs2stu혱$޵xF#d`8bhJ,,f1zcމwjJc0̧앐ށ8[XSmRqөGn.(>ٲxt:XLF ;X+q(f\~!s1+ءE"6DlڭM.49 p)ybX6z1WCsxF8~ ?"t.(۶o#7ƚFߝeMVW8Ϣv ULWް< MCڄԊ7%|ar߆fQ $y~UFIٶ\Wv϶#\JaSklĴ3OF"ȢǸAT;׺`\@]Ҝ`qFNnZD>Nڛj߾" ~a\iR|QԵd$P\d ܔ_оĪ;H".2> P]/a3g2K `6OR¬s4XϨ1Φ%{9VA:l/Бj} r+O PMGh*W ?TzZEBN0cf:@ `AqCT ?E_qƌ_ 8h"4o(1r_(S$0HyrQC٦vwЯ-lOPRHNGTUz>yGHZ+V@G]fz~hC%QD(pV,k'ĚMtW{[FfroLEaz8if:/c:=q/Kl΋Jy~;d' Cȭ<7.#+Z̈́0ـp׻SL$E+Hud)ƀbTu]lidH%JuaXh+&"p\h 7⫌HY" pj(}2y&Nt*ӛ4rb\BI*Pjd՗ˏVWe7W^,<iXH6O[*`OKZ0WNX0t$+EW!74-Pv 4ꮹC~ű82>drnӍ~wuj'2 ꮕ x=H͎-wB3; h.)6aFdCo隆Gf臗~+zFWbt]-JXkTDHH;Iښz)+}}9au  <րV6(߿x}3Cri ;I?P 2vtPuLg[X8 KZz=ݙ /,1PwsrɅۑ{$JAφmscȗ)8(KNWnP6N"FmAiakLlG#4;PsH$?(Ⱥ)ى$!q`rAy?87cKkg%Ƨcm2τJ=K&XhP(ȡIW봰6Ʈ:L)^hplR>ɄOHJ))fI`]D[ȏ<6ƠeMY%?66"jM%ɠ @a"^LxD&748EE:mm"F04r AH1uk=C+6bh(cy°X*%0RҞ!}\tFKZ8*fdy @Hx@km66Cˉr)MO P$b&F##ضCRѝEZ%n+wJ/gK[oMrȓ~t%Tߪ u: !QR *w]Q!Q}'$\còNska#daXBC4;ib< 2@ j)J^DTWF?A٩8.j犳Or h2S{f,4')CD|qзd{P_L'v0y9ٗ 0h'VPc,+Zc˒@UTRscpyvVN =;=(he*6'*F!6noHꜘ܄m Gxp,pƐ\' ~=D3m\$ :m_@3 $wVO3a]gc>d A}iɅg"E (.7?*MsIz&_KDaU|TxxCR)"?}z3pCmm Ѱ=qFȩ'IT:z)ҟǀLZ6{5iDMT ی8/ܪڀ{RHGa0zqB<*Q-3 !eT4 _vwnk .ɒwII;q2#u/6;]mj?P[ W1ں. ԍK1C>%+AɰKI3Y bvL8?='^ɐp_[ڨl~yP;6lV9ýJ%nAXm5r`g1NBk=f0jiɹ0ыԟ:L&aLroX+ `3̲6QˇPe4Ԯ11BJmի챷!1?t?ݨ^b/׬*tm}ٕ8F(~K&pW]& X|a OOZ0w|(aup<`Y-EIm`0tabYKdUa@)DOx$#hV U k%LE?ԸO s­5aRda{AeȌOvYL A?P {[@=5]1?NC*ZnyZ"(#=}|cE냔y$P YƘ f>.+Fr6>o`{2NL}BDzb)izOEWa},S.#zOх;bcrc&D2X## ̹ d'_=gU0fNv3%>+9qÉmP7 uapG4.=19r̙p0bܝcUgJz,` o>K].:tbYjIsf+^ em zy~EvnĩPM'fhOQ]/>·2mT $~ܮINnSVY>ȏ!⎺ Q*]n:vc?iy:8e?*:I' Y@IpjۧGj^DȞ)Oup*R]y&sgex j AKкXeq u>@^.>|#+xm$Z.^a}+NAJ^R1̸.ͦLGʵ$Z3 "͆$"L[ 2:ѱޓycNJ\bdsD!dۊe9XȄ`1UZl6$mA=my{3^(L0PìFd$+ފ{8|ں `5i;w: V y(,ۤBg Y:w=A&gnu2ZD>mB/#q($=5W (f%U3>>^d._WYr16QV;8Ӎk)r8:Y "t5F}^ȗq%[dWidwK ^h#`C6Gd)LS#^c#{B,frbMnG3i\s B4o5!txk-$qH웟p_$FzΩҤam`,:wQ{Ksz^ѕL5W2@"Sgx3~b)ʀ/AB_"v&~Q}]'oas99Mpmq .ikQC@Lf3(`9%)S蠄``YܖޒpG_{B4S]Vi1sع,͆5.> f J"oܰb?QI!H%c}ϧD)F46j4 M(1q۵ ͊Қgо [cCP0W9iO_p177gyzaqTTЅ*F[VJ5(O*24?8ObTN{w|zLl/0󛺦8R2oIX UϖBX`M^TݘzJU4*WL*ܙg춮Dbhu:.0M>L=;kaVjwws-{qߴ F'.fK%e}?~^.VP5*O*\MTyQӣ'n{z2Q'Ӂѥ Ye"^"v<ߌbzEX"btp::ap?g+"jڥla$a.䦋Qk Y3/0([?{\q1~<;?y;x3"Œ5 r^3&icdw|`t3/bŜ9s'.F!B>/@Y޼ĐD@DϢ6Ti}nЅnw_$P,~rEh8R->MbZ-ũl" l2~sSڲ! 0D|'Ȣ@x)g U<1gx蟺[2ڶӾ(nw1h9]ni+ EjL*3\0H 'xBDTA'/u[jTRKD* =IKDuJDh) J(n+sϚI]\Aw:+I5η @< +{7pe+Opēo"W}4Ho-^Y4lzs_ߎϓ6! Gٙak*#ͪ&LOQcC>ђ0x;ӳR 52JQ[5p<5!&3`nx }ƾ'P[S NHp+A+ ^=͏lRdYv<^ּ<V9]KWmyzKf>@N>Bei'^QB3E1?iRߙ+ ]) )0~β+7 |i]Djvj=<ޢnYeڲh DPu0:0OqnCT괪ޒsl$/fͳ)E@`:Y{&:q;i-h93{Si)6|1xDd|/mV~Ͳ_ BZx 7I yJ߱4A 2<Ψud wf/!7$K83kg2r_><.T^T[76Pk99{ B`ZORgwQw,s=׋ Au:~:wpmj6-h#blKĜ]m"pZ] ׎X,FozL,іL $ڸiZS';cs_x.lhvŃ/G]޺1J7ᛊ=4*~[љ XxMQ$#`1 QԡKޚ p,EjS[i6gL3}PXSr|M?TcU^׻;09\-bKur+ m`%F^|BBəH_g3IV&=ݮPiYB wnĀr2x ?##k>P)4hY-+4O>Je]T ވ Y {$ Ul0učBπ]sRV&28{^ o`Om pm@|Jni0XbFު\C]Å[vNl#rYFǤ\~Z/e]^ L+Ti #U%"!1D#igF|-V,WTU .!8V=i2Bc9U;ZJeFܯgl>vo^9x&*P>`Z]fCZW9'20sW.,M}bj"Б-,|iHwihWQ()!WXݞ E|ilMhJ Nr+>IEMe]!qeM{ gcmꖰϫ!y7%H'>]ř13tQ(ȡMi9 W{l,?Q(̺K7S9ůONPc12M@Yav%*Xˏ9 Mhe=Jb^/͑vƣFp}z3(A߾_LG*^9M(-Uԇb!^ BǻW!%&`id{'v YM6 %KNpL)0ZH 'vH"by=o:߯YlP) c=t>a*hFRG7 Y#ERЛ.Bw:|)?Q:^?Ԙ~7l}L, G#{Ӷ}y-ӘSJ/;(//yCZ8:?vWW׹`zu<#7l-mGx9d8~DZ]Ӵ(yʏ'?':תLd+RI&c阄9 Z06)A'/ܒ0a~U`&a>0fhWCFf[$if3ueһQ BTt(d"_-RasH'}hW?+baR+J{^Vנ}<1H/߁ǘ?p)CLD_RēAJ>籂>)@.pDj"tdtVz c umIYv7dPzR~ X`.{%ujVJ [}V'h{%e-( "2Ï]T`!zJ~?)eǃQQs3ƃ4#ŒE/D}I~])2HGwE iwURO^ ̹~aD]Om5B|m? )^/V6|p;*$ k]!q4茰 \`UcT&|>1MĕF_]-Q}O.Wܖ0hzq+ãn^;^ﶓg0aV5[62N*e >Si eBB,Jt$Lw>,wŇl Z38;pWOdJ/,}kȕ~]B_G ج P6]tB[Zh(ÿ _A^bꉬ9yx/nOk.\xb.B/pY B9P!]U fr4o9.Ѯ0ՙG_uqً=iRGJAhw0!p>4 ^16@H<2SjrvpOn@ c5ʥwr 1P]B?,Oy!=b8s69qoq~Î \>]RmSPZ?Z\@ݺ3fy_g27?b['Ln_$7IrA=YB@LlWtbؐxUڤϿwo&k‘]1Y:"ceVj>N9P\Q!ΧkF*+髞6֯S/5^&Gt-(=JWdx& 4>Hc($WdL#_BW1t#ni$ KÇ hz1./dMoUZL|SD5"glg_篪S|!g? %^#0WD՜BO%(ics }ı7‘`+ )d2e*scMQG^+iYs<@#QHc.%Ce~Zv߰2$\3> ƍϊI6t;˃V{!'+ \K6nM?b`wŧYT4VF&/ˆO6iqS}n֚›-.6C#pdCYT@ym/ 0 i1U9cLud:XlI.1=8IXmd͈ҷcD~*Ĕg UaD$KW7G7>ʾHE65HJ= }%ׅ8X|Xܕ#MiDH Dqg*ޞ)6 L.#@I Z/I$ƑrNJ<W 8K K;ʆKӓgF FSMOGZdbpLm\rVBBU0MHm_@P}A$l~l3_/8/ 늈Obʹ2@:h@:tt,1)tE0c\p^#8U)쵡 &%+8 AyNR&,˂ui5kǜWYJ%ۿwaU4!1| $i=: #LabWt3ҥ:E6k)R(bb]_nw+uŋ\FS MLBwԔkyr!#~Hu{[U{ n@lۆblFh/ansm1IRO5HEef[&].=ٶ ާCDkM 4Z`gD91ux7$J{~v~Ǵpa)$%Lŭl@lB#}*|!ݫ3lPT1)u!TX8k {aP`~(i'?i;$˔BW/7RfXdXH)0!ܩ@ 9"Go¸Ҿl.?Bn&nBJ֋3؇(.].-ROMIȔ^à~x*f˫tx-P,`iֶ6Xqp,p) Z.v̜z.Db\D(9Uomڼ(Qe=i5:LxU^}KσS`kKP#O;FUiM!JY0T":SAK0x=;h~qh\ܦ®]e$fZxz>G3Hûma_ѐ_@~g,+VgQVPiȏ ;h)uθ~Q؃%)V#DTt7[x8BZz>BW$?LtQ:m##/C:\M\W0νcoV&yea$&iyNja G >-a;BvdrӼ^46w%Wav35; I<:#={Ę馳c31Fi: p%*FL_0A!ز1 5c$'8N-߻U'(`^,Jw0ś9Lz|V3;M-"yDyǻB|Jr h?cs,X7ZcD|HE&Xݪry Pzb]e})mEX.˔6gAlzZ~>cY3* iN:/mr]!ȗiSr~|yEdwJ,xham uV8?WԝOT{vOwŌ;rP PU(o.L%P#`}9&DY9^ȕHpD78}ʞM$C? V>Og5Tޖгfqxl]` wWyqVKs.zW V \ VMڱM$LS8]APG6:N ,`M%b}hF֛7 %GͿ)3HȌm_ziYcƏj%B9++5jy8o&yټ(/եK{DvSڦ 2>곜"bvrڛ^X[6}pUUKDIT&_+Dy8d#E/r4X3@Mͬh' [08/ ~/U7% [zR 3B KrS#R (̬nl@&5$҅FSL!Wge;IK/!DGO(k=YE`{ e|Dc`W2-#uѺ OWZEw(%=GD2Zq`cDzP҃[8ي2 ueOc>[D3n.5Gg fX;5C /'c +.ϒ"+ +2Bɉ7Շe[8%M ¹. UFH+ 庞Y]uF+0ۥ([1UPuVq)E(%D_En.VKP'ϕX,+ȅ=I5/#XmX95UE;y*F-Bi93ʚx݄IgC2/{ ËӊMrMZ1`+ w"9ۤz+`ϛ"vI6El؄si1=rC%ӫ?W+K~@р!sp Ժ>-C3ī`Gl&{pjLFf2$`Ώ`}s>f0v@3 f| NY_t b _0 >XK0"D ֚6 {xL9'+3HW\%LUxǑ\<rY}/w:WNbǫDLA7Z`M3#u!"aC%(6)N*秎A׽JӾli92= +X#0Z/o 0%!dCnbEPU6v3=z 5^Bhyў+Prg9@H#RQfv(&MoڤeL@?dbMC͞qব1o 0.[Ndg@CY3\N/W|4}U[polRr~CB2ct)rRYo &fr VS0WQ̭,k5 +QHp]0:BGdx_Jn?nڕV&q=UR,n'Yit%I ߓ_\vzc|T/W!"I5tD }zH1"--X|tpܨ|+ PTސ%|۞%p Bkgc_G(lҥ1]VPI~f;BZƭ  ^ިiX+]eBAIuV;#H+dvmɋ9%cWWz=j`; sׁ,vC Y`SN`ӨSݞ |wZwԍj>2TIQ^@(5R0;C֯Un9dYz;*3kjs MX8.Ç+l.QLTիB׊!Sq.SaP}=55^&"q%\xJNy+ &-@Kˤ,~dR:f:h`yx !WKmP9ٝOՔ~hz7ͣ_D(.Kqߪ5՞%}Fg Ѩ%@mQ5Yiv=Y|;RXSI.̆Ry]|/Bဃk &l<ȵ Cjv1S>YC Hb6O\=ދ'&Fa M=%Gr{^8d^XKI.#K# sT ̆(APĞ/f|I&؁P %R(۫Dn̫IYjb(?"1p4ȏ;(>4׌m_YP:gb#"|+VTYj'K$t j{c*GZ%)tSY8KMl]:yNW{9ae hfHdO} 6fʦ;[# m=)!\nՒG_ʻ?]Ŝ #A v6f-ǡ0Ϝݼ#MkyH4Vgj ~й fB=Vu^WnWYݡ< 3e ^z@=.aP;`s3Eʁ.UG+ Q 8O~:pC" ѥO: xg_DSpeta^EoQ015[D2$)F+$RVdL,zh 8.i,/qǢrov+M^U״Nޡmd+]F=tHxoe4=Kd/~Q|Hk͊- d I v]E yq'_ɏ% \.hp!%tv>c.DF^p4*h`=*2Q QExZz%h 8ތJVkEE3ibdcz|1 @ܳ-3~ G3c*uhKȻs iD}є2~خlbhLNݢ^>D/( P 8M"37do=m1\qKNE!*P<+M?};U5[j9+ TaN $R$J /ě"T DnKx&h2@O7]UN{- Im16].Uw,Gh^R=t]}:-V=~Lj{)%՗%rR ӅR%NtUj3E})! %]N\wU)a$CdnpiWk V+1/"-Igs=%sr='KGU'}։&b>C(/LXm6j\GT`LFq7`g> o}6\lKhda3E>&h!U@1~j-sF.HW \HmqJ+; ?Dqyc/DB`}r:Щ!j)@O Ri)8|rT|ԾTT L]O

?#dc藕=G92W,K>: ;:BBDݴ Ml:5tq<ӧn8H5*;iams3S9Z} #|ɡtF姲V+}K6/wV{^[SPq-ZQ ٣|?tM?)ɾ-68hc5طUqÛÑmp+*D[z:+Ͻ_P*.'tu ~Zϓthm|&m|jJRLd[{u[o(BPWngQ4GI~|!ЧVpCr=f H`r7%L7q1 нvb%oYySF(]G ѡd3"36ίJʼn5DЈZM-g5h&_UV{4W-#F#XQvn$VJrKQ>+*#Oq=6H؃.#1IE9stfs^Gde9tO\z%tϭE@!2+:UVzOM5w7nQJ q<#t_>QU)]%Ϟ lL4g*<.:˧®{' ȜCh%E5i4k&+f2/Tb![ bFŸ-d:9Epޢ̂M-`I+ā(ݻ^Zlb2 8x7UJipqa=AbzND1Mv+04 E RZ[~ᰳˑD ^Ɵaa(yb15ɤ8W4f-o[1^]" VMEGpm7M7ӋV~M1TMͫ Jd0XL TsC-1AgV!V9N{YIa4_ثEk,,xD\ #4~MdF[,eBs?_=Uh6?[tig_So{"I8lWw]-8\NvC[ * b&$5<9~'?^y8Xށ`z9?N32pt,$rŽ`+tȻ] imEO'8l#v&A7Yr@GZ/KxbDj߬2M%jMpd=SƑéb`?w% 3why ̀j!x +m׋Q G[R8Se:v<j)3ʦs$lREvi ;Ʉ@"[3 6,@cPT n%ٞXދ!:wGx/G){`4 ř%C'-k=g1> IBt-\żȴڳͼͿ;N.9{5Jq`_>(4ULGr!J5 )p]4 ظv'L&@)ڙ_vU1"Y[[g_U@,KJ@y</NTOb\U0IzPQ>A*/[թ'շgeE/CˠC@BXJ~xk^Tj v[4n}H_3aΜETOq<7cnH IZYf1j=lUM5OZ]$gYz蚹P]=%ޠbWy fz(glFq96TsA} PqИMb=YIw^"&zi:?e#F 8c"N(}w1Sm=[/UhW-9z,:Z?XaQ󯃱(yDͬcg- kn+$_GIC<ߧ$-3WYdTݞ[*"OfD:#4f k 6KЉ˔eڀ fg˫/qJ%t뱎Py7?aw /ƬYI'3i? &`h23[>-:f:fQ 06+ū=m>[JZ:R9?!tQ6L&X"Ѐ/Xr$, ZcsKթGŏ|{\c xh3ZUݷl-CiNQzJ<+aN0b0;h?J U^,4:Ǵ!_)%ܘpdhu1B7w3=9zXӴ+2hPx6xm: OC#Mȶ[yhJb ypP.XaZ|+5=#՞E5`?P7&f1PDSM JkaS׻F u.D}*uK_Fz}8<ym7j= 8-dTۧ'q#% eyU; eQM(WKBx=jʕ 1W:%c9C`}N"wkmq!_.͆D' xN:3r nB~^*#txE`0k }zzԿH.juGk[u9ǡ}H ],wZ6n[! QCp`hخ\Ӝ|TH 4BY\Gw2694⧚cW\Hb/t7p*xC$Cv*^`\0CC=i .WH.@t00^zfG <!8|^=w"2% )f.`eB0L7X.y2aɋ[ѥP6O InyF)z/g$4'9һ`A [9O>)RK۸?,OswDQ`Ԣuy%"PҘsx ߐD'Y=UISqPLЩ69<9şU>١.p1vL-tT-Yhf%D[B$'hTׄ|a-J;4o tRE$)\c#[,Po0rFcBK]:VpڊTLseg|HUSfa- Oc3epՍw\Xzt_h2WU5 &Ϟgw|pࢶ4=(B,g_Lgz3oXfDFvЃc97t!KEEvkVyMܫB2crpZY p~K毆,t )?Z' P8{ #"ɗNCTiz{@^#*"PƧ*l<v0+|A0Z&ܛ@s^!#d-ffWm/m*ewCeU=1CDx]&p } vU%mctUR@e& V |_+'۶[B*@ !.vM}w\t'aߓcL8({ɴDAC|sX60m%H{QH5=@"=T BA3 TL?yxku ٨`9 \c#§-rN_- XAχA쀦P QՍ1s@pIQF jx~LG[.-EDvدem& je+.kqͣ}!N $bg݌ '=9oǀa ] ?|"u%1nW@h)[9Ҙ؜rj߭{#5`9GB@>ۜM3ݻ%)_#]%d?W^lɎ?zX9`0۹;dQvNuI^s)mNv8skoM:Uv2v(=(\O 9z&%a1ZXXFa:LΣ3Ĝ Pf.,|L&yV@qݼ"Q;MIAy^_#d*J޺-_K zu~͡E㪰2?j 8u -|6[15jm2 vrڳhkXxKVM.S: `z7)|fJqVzvb60;/?F< hLm/RRo4l 3Ntr q !Wj>/V Dq P7whN@%Ĝ(Z9_? ,dx'GQZXRP LoR<TGh,wCw-\HmHR.yr@ gmHAtw0| _j6ma?snՅ7s>Jnÿ)"K .B)0wg OP`#v<`vq؜M#Ill$p7iaϦۺ!$*UMi9j^Q|h-r[t<cQA:D64%:= ak?te {k7PUZ(Aw-L.sYF$@yb{ߺs 8Oݘ=J1/33̹Q~-P[~)2PprlETRgX YW^%qW;/a#,手A л+DJTe QHH( +C7k̵ řQ|9hxl+ȆCXw*^~',9{l F(51k$]HA 2u_QHǃcyjP\gb%G#sxR.f(8 }C95vߩ 4PnݚZ:=[KMjFLMn-ج!Q}|D>NoM8ӥ9W72ާhg:ey9h:'enQf`|~"}mW0Wt&m3R( VC`6%0s-`R(7'v\?Mx6̏b+*e\o,H#^: xAJa`OG0*c2@=@TD /qM k*덹cHo~_" iG,G.yKmeX8 x  E݇ k[!Ǟ -r~_/-Y4`\|xYNt?UcO6퐉Q%R#>)$ao/է9;m0o+Do׮ ]@ȦK[ )bBHq܅<¥UDx O.(Qhؼ1Tΐ_ S _xNcgE_ i23)Oڧ3#3=N@Jt1H`B$ڲ3TS"B7,ëzt5{{0FnXr]L N σn4?tvЅ>Chy9g@oD- pOg)uYsOj"k"HRAJߍ:IUYjG&KF{:Hm/JBl ~N-VaIf fcUt[d|")o}=@<D,A)>fYT_8,)ѩdtc:%yޚtb$ TP|~ I鵹4_{ h*َp:0On=pY<)w C}b Cy"ml4%VhE\|QkMmFY^%S&LxU ׈gFKq+_̍P>yɦ)$퐑n^0iV X4V\eE~I"tjjJuD[ӥka+b '2dOeXpŷP L pN `Δ؅/ʂEXfK 89> ƛb8Dw!by UfÚ~ طOS-֓_]wͳr kp r%-ښh~,2RyXPJAzөN.AII {[";_%T ;^$^fQz4)31 GT0nMpK @+.9 4[-"M~~}e-W~#ڮ+D,cF 9z-؝)Z2}R&IW`3M-R d hV[ T?0^2~k(Vuu5QBkF~6z1Sx󼕦YdPG )7'`/P/-6RuA}]@ . 0[s 31_EV^E+xjj2TwSbDqm%}ޗPک\l=3pn\h\t@eQ.U1јGBv#T"zoAhJ ҧZ[+ _Db$샇 鿘9D7 90}>˻vq-uGA})WTo̟|elfPE`y`M$&S #u}Qmj]D&8]L/Vv7Hv9"KM]E0:3TBܟ^֓wN^Xs}ڢ %&j&Ak˙irpCſ4^ObB{%F[YA(l }nVDq,XwZR[.W5vBk\?CP)0@xWzIV+`CkaECmvہmX-Zg$0ـv{4Hc>w} >QƽY-sfA<9GdFձ![_ X+ܔ[ ,K|#^+[?lK{yI.YD_5$̦!&  _& 2'a 5' ?r/oExEV#">[>!qŊ{4`Kfс^;PI_K0z~<ڥΖeuF$5a2$;fLS"?XC< xKKNAPpPxno'nq1MɟH^~"tD!#RK]2#=h:8tMq(][ecwq@#??'M~8m1X%bj %W[(mCgZ|3.t6>2 Z;,~x *y4`40YrR35?r_A¥j)mҷC>E; (Sjs#[(32wq9.({tʇb(wi,SmKgA 㔸;uD&ѡj/ A5Q]wW3]_qjV13kigEBJ@)3esZmڜTB\-Ws)Aꥳ;̱hBn)c{&y`S@I ת,lb&0J#+д$myxC:ĻUr2`{/Om +T(K>YU0Rw:DP>o#ԣ;b@>+kK=ДYbU2(K6k.$D~&˥A(-0pNMtɋ; l7OU>ADh~ hl{ wȡE⚟zRG{y[SŶhg3kK2ϜFzŐf6*fs|Flf.Uhca&87^,|TeQd*<ᶟ5V|$om%4p6Г2UǾ}P-.fDe Hrɚ^ 1U$'JXuNIw)ZJӺҩ. (~0'ȥ_<..;nK.I~ Ad\l#Si[cM(=xTTډ.Ct1!;诂?|}Swm[[CΝ[X8#ُLa(>zPAfsQHD}q&Vo"e+ԛ[i3:6! ?g;rh^2䩩Ra I^M$|PaXQ~e[lv)OTI(qF`8´._C%ńcH|%*4Fu@-KLE56qۡYZ2iao7{cΎ?!¡ك#`j`c_– WB{Hb BnY-&+Ԙ؏+sUP[Ru~@sYF{"fjj>׃A4[Di…%1Qgp߿/?A&uSh8) A>GɔV9#]bis~Y9/t.Z 6-_Cf:hǙ0LtwaPi%yz1A|E6atԋD!x/sf}N OCe+0q6 (TN"xV2rQcIL4[r?=wnVE7 zJR>bo&sʤPuS$uqFtˮKד a⭦P&p=*E6t90"efԲ"oU1Z vx}gWsi"&;m}FD6;Y厄J}r>:65W ] [48{;a!@$HrnYtssDФ Ն'֯,Y' )M6KpHf8XP- ._3|땪VXy9葌6 t3mNM#nΛM~QW:Qך8ET ,"n`~l(=9\wLKPK܋'5vOZ#|1'.=gލӌZ$ +p&B qlL(v6KbY~а|M5]<: r!_3$ۤLܾOA3dh1Yw>>5h I5Ei/deݝtve*酴d)bnfc-oۀ![4VB]ئg&֬}5C,ͼMA&- .wyH⻟{Ph.`Q!S[Ui ߒו< %i;lhdVl3XQĴnNYÇӻKd˶v9+վ291'RxV `bJ# F /3ݩnޚ0(,L&ش 㴑my+Ck蚾s 5 -A"%89JX<J gCmғzZ<2/ ;";.>/Cdi#,>*1z;LV9Ҷ*7HOPi-՘ r+G7e,ѵ!ɃH;q2f7m؅vrJT${})!ϼ9ujPxd9~[.F4]Gx ʥ^h/MmF9-,Xqt~Tˑ uWk,x?;d|:')`;ޢRBd;W(o N$ca@. J"1)k29r?Ƃ rύ&=mLnULJsW(ir_9$G6 ؠbLŸE;1G?Td6:dJ]e'NYU,{Q emz~f7 Ef|IQ(VD5+G(ROLmWǢ] TwRpfawqqظ vJXxۊ`7n,)@pȶqމvl /,}F]g,cN\T˙R~-)4}6M%##.[$h:C>M"7ѽePRe̊}+<oO@ܖ 3͞y+9zFyp/G瘶 ~8:03_+G 8PN+SӭDRN#w׿gRЭI߉ @]xYbÿ%9AjVzzA^ϱTwSMj#4;ݞsJ_(wA) `*ZVR[96I:CG)Fҹhă36Y3yz'>$ju\S( txSxDz2\i?:TAޘνr ̸vpRDZS$Am?Ȧ><5FZX-mhs `2R: p,'Ɇyۏ f"\bG+luyTkt Am>aȸX(`1CE@4lqtݵORoA8#"Hc\@-̇e YŀtuB:*A^}}q"1A е#IBxBo#U6l@yCZiE: u_~]J h;~|)P=.4`"d6Zy}4[ = !tՐ&.7NR{K/u7BE'O$ Lv,|-1)쎘gEAPI^B`N;^+YO49Qhբ}W{ԋ)tǝꊬyCe %r̿GR~?E34z0ue/E99͊w>jg թNb99 O7ٿXu{uBw,9+AִRJ e/8nWA҄'(8p>2qIqvOy|+>+j_hk,38\{U'-CxKuBcE= Fk/$g]u}1~E=HԨܛ=D]zd]HRb0oBtY`pNUFw*(w[r$ZXqy!] l"#Bfw1L#*6ٮk@'1( fvjc5wXuCKivi̤ N`C<0;gU= :fё:?QR#v4/&5rzftg;; o? cjQJb|ll?\a)4GZpC?"˝h"zdsrϽ[4[S{^LpcB=P *{ԂE4Ϫ'V/W,3t`"Og^UWIn@ķUL(N>pJZ[͍RUQ|3A/'9= p +gī5Fa.4} Ri'`ԍVUW`zL$Ta{tQ8v97aXSt&xTBBܚ%U%5Κfp`dy59mzZ6!5*뷘XuAu_ߚ'HDc,ݜ ?$݈`I6ʃֆ{E?*rVTyX${"G}Q\{4bYqPI(lE7%(;%)I(֐n"7*ⵆy(WNv\KGZ?⹥?/E3vuXxcA4W~,*NLT<z4DZNMp W'uh;\;`ˆhe*f ^eCVk*)&[!2VjBTSݥ ]|]CO_>gU5HQsQ|d?-iWI7Vp:"aJJ>EO-MX#|z 3s6$XV@uaj)ں|*O"Jrά=kSYHVSi'wotAأR#$K|iY|KOnYVg2ǃfw֟'01P`9@KYl̴l;Қd7;6XDF΃#/Pm8S+=C/ShMe`U%aL FwH\jhBiǙ!L!"nXbѕ5Vu <)mKėNu+/&0.}Z{T:)ۉR?%⭎HJp+CP|n:jP;3קw~iZ\&>%!X숿r` Ϯ+DAiT^J"65:r4̴,\ 8P&UQ8t57Ԉ5` dE(GW(:Џg҆As2#j)۶^ihur)y~t]#tZ1:u}/2mG$Ny(}?rɲ5u<؇*s z4L5mℨ)RaxU2']KcaCw57ucI=["I6X2=1EխS_jAJg I$75'vǸ5HOlb`I2Kt~h>[$PpNa+櫓<+7~1NxU7[J,YQ`sVcodA_a)C[74W.}tp0OU7FVen R_Zg$_*~"qCS@ב|Wɫ[B,rfR}ܩYn.%'xTM2/הV2m-|d,sͷq~`M4H 0W鋵Ԗƿ ~U>:PU(dtA:*skp pخ۫$Mj39Pqs0Hv|T6e8|n>y1ҘjzdQefΜkufG1y xM K?2a4ĬTP},E[xQqǺz1_ڰ28'Jg]"pOXY{QРu_EJb {1W{}/g;^mIG.@vXz&x٩ׅkgT2ϊ?.$_q5^;sީe1"_a)PeG$"j% ~1=v0y~^Q-μ`ę̯߰"kn3z8] OԉNIP\,OUᝧTcT(o`j," C.ZFC jٲ^d^g(8x/NH֦#cmoZ;W% + ^b--aWfm ..G"W;)s[e0۱bJ.Ksj_LWc+][ w-,.K<4hi'T]3ey/_R ֤X3m׍qyS:# E`b}mc ~^LÖv<7R;y)~gux @(Kt^+uIc<ZAd8(ٌI81aty\3ˆd5Ϋa~~o4 wX7ƳOkTO~mm yEpfҡچ w>r , ٲdvzTW@6Xu_UPuF5q \"I¾$͡:(o5 *"/|~7' ]3 īݻa 0~1a8IXWX5b{N{"#>F A7maM!JែpW PԼQ֍>ZK{{ 2%]>{JFe#(f  өP˃vS+D@ڠ apT62DJǥ& 7>:9 D3܄>ֹ7a-*0Ҳ=`lG 0;h4{ $gQrH Xef]6BݫX)(~y)]*y[gk.oRq9C?*q!/0$Hkd!8'Mܫh]0n i"Q[NqP%Y(VI%@Zj9M-EX W Oն-mHOBHɯ lnqP)y?bVk4kF7Y#*M.+0GVBh rz{rh?m##1(q>OkꟹN@dQڸj'2{&>|UCnIls>=Өo^7KWU"=NF_5"\4]ij2Wx._dQDЮF<; oi26¹PL'pt U?+/J!M{tftB~Tbu12Aebfy *2D|@=j!aq*gk_,j@>JGBLx]-3eK|q.e6JCg\y YX9rBI<`؟Z*ˇus,8RJxLeXރ+Gn6Op3ж_91{2[9f 8Tp|<%z vg$3Kcj"m_,2p;`T 6v[Th@SMKxsxPv2fL_iK- C ] ,\C[8HTo2UqG8lΛg#m& 1ZR%}<`qIA>WFϾ&`gR^3 o17[uʳ /ʏT'˺#6S^ִ@hDX C;d_; GvF S;}RmCs.Ĝ l}y2.CE7OiO A XZS9 uuXAk..Isf@0j? 2tUxYWh@F)qS!q59ﳑ N1Ej rFb.FBj:!]Mmc)éRVj~3ƇZ \x>|MByngؑz;2q.Pj/ZDa$vi1GZZ"dM(kRii)V0>K#a2+ADuTs ų X U=8_loHZigy#܁s.`sZ4)3[Sg ptTJiJ isDC/{H`T6VFxaӳl$9\eK6Y\HLCPԏC}eʟE;XPN1B4kd(;&;y~;ٌHMN7 ~ ,VO6(dhImQ-nb?c l7ry$V%jsV#n dža0e: ]SlE٢N%`:7T " ɱP(8*Ǿx[1}P.8_4I  *+,?V s`]T ˫fu\)2B:E\D")$CE^rA}@X!17LsPP|P]0eMan-0TvV!k%ڼhYR 2@v0P訯%^cwl.#E+|ayc:WJ`&`GZ$i#8p;r|5* XrtZd'/ E"v1o䳻3 ;`&32!^G[A|M7,AF47q|IˆtiFoj9s+T AqC5"<")&_y^|w-l"9yaffog.5 t~K%fRbntS]C,z+_Vzځ]MC`vLJH&_jo3-[cic\ G#9~nS* Z6_ %kyDWuxE)-,7_r*{ xM#ԠFc3ۯO1{Y^s4(]Ӯ,[7m$4gkII v*&ίJt8:],q8EZU-7ĉbJn' >9pcz15Ӥ2FdM:<(*hQ { Q/>U%UKJ߯ wwky!:۱[߃?޾_ϧOH!%q#;D8^}{$ 79kQr#:BӃx*ʪysLfuO<tw7sZy:v+!.k-D>_9z9|kfӓh&k\ByƢQXҪ=S>kGcEVW}˔|) [;ۀh0(z|M;{,iAϸFҩ~@^KRI)9Lf%"LB.a3]wY)bB_/60 s'3E4ن6 _r}H27ˏv~Ay2rC A ZUJ@lx.Qb~yyՖжݿxU'@7igg E߳3J9,\%TţF+?]'ItP-@˺F].eKj2ϕ&Ì@~ YG AvrrS;GskLpPQC=׳_0odBȡ維;Ii/:,r=D]M(HWI~{zuRqR/)33sfCoV7(Eh1l"W53D_]ު{"4wϹ-ATJd|Wˀ>i有XoOWv' ـ "Ȭ,wJ9OEwm i5S~7IZ!R%- ;FKN}">|Y&+ ~84E_^̷YB%_6orxa@N5D> ܵ;^ &$W&7[Yc*`27W# >勇df *92AN=*3AKs9_bj <Y>3 usAI<8v,rq/Zp}}uٛXg,OHӓIsCBpa%MzuI-1 +^9s` ŅZ~-]jQq΀V1}ao{-'\Y* 3 ݜ,;$cz_Bs&줽v *^Wn  JpL.Tvdaԑ @veUXv*kF#apD:UBc d%-R΢i^M5{/9P#G\1.HmU?w2<&QiPL)A vVw9 =iT792DmFµ`f<_kWI" ~/I -wqS|@yDŔ v}P@(?ʹ#䥸Bv` +^ޫـ 79oH5Lv/y~iBKHnRNaC0\Oo5Q%|x2:jP&X]gOXT|8.[+dJ+Iy;o@kQ%ژ"ձw= xyCJHJF>³.eK823a_cVVI<ʙ(mdq6,CBb\~`p{AI~o<|{11YrC&Οn%,ZR ZjL/H\Cs[d") .,TBd=ndLґ=$j9%nc' /C<'EŬglٽc7󽗡0$6 .t]O';+E~J6&(c0yWcGX'#6ޢ?B f=!QLÔgg%#Ӈ}}TY[x_ѰrE?#;"p.@LmN`NQNKrM(6M-3~;?$`iS\_f%A aN"\.\1ryvxÍQ8:75ՋA S*BSa[o!uГ]lm)ۂzMR똪|A"`T9&xQzkʫ%m`RC `,X]4~MRqvFOU%)&&‧5}.C6EP}.@ [q[1G$5 (.F WƜXJ:~Kc3AD.R`nWtf) INWqlϘ&qҊ#쑺==hPKvc!|NC.Guڢ?^/}ZhuJ76G @d@eG@&^Iǿb/Dy~C7d"X%r^eh9.ꜛS:тa PM/H; &baFA,;.|呗B0~)N[I^/Y$ >wJye[@_Qf˜h#GP@=@W;L_s8D 䍏3ѐ عR܈B-.XVY>4QgzDŽQ]/ڴ7_쀞עx˃ӏ"hBi#"% }2d~Ws؏E?aQ+_Vt0߉EO)lW㟥1'3 nY7` Aa;,l4čp;4mT7h@64QSn2E]gށPAN`P dVwU= t{yFey7B|SmɭFg^Ch? 8',B8ke??@C~F\ 䡾60D&8 ܝ{)m?#䋣61iz\!U{&=^iiw|G%LҢٷVhoh_7}"pǸH9b0>/XoOB_wdmrErZ9 ǢDXY7blY2_|$.eqwI$xVD8[+!O!ݦ`yryHkٞװCU//輝8!S</e}ݳ\)ٺMɖ$rhCl{3Nܗ"M] :U|j+یew* ΈOIPtikPlCmwH XWٹ #XЏDvlQc? @qrn2B?6բ@LH6%-5j"+U"9?qF,ĖٲI4~{c {)ߵ "UMcr?U),YHrUkc'Sm'zWKPJ/f7÷6oiۣv 5V9 ('Ҵd$,:!JaN[k׹6X~iQK^ Lʏ&:\~Ωێ݌ZDC;jqۥ<5 4@=r1>ƵvZ! %q>wL>32𹝫1@cs揹C .<7W߰i*X`YO<(W\E/%Oygg6[nϾt m0HDAq\aܴCOqbLuo*'@HN!2'|R鿤HgoiV˂̮[.5u ci%AGJYIDDX1H ".΍!hj9; )E|h|UqWGq16՜KN)Z^CZ<shDN*wJr8 sXuC,PZڞUz)8달j/TJǧoe SeO R'>1~v&u8@XhgGȵI}VOiB/Fu{%?'{z]y ] TJ#_Rd=gO&zdnB {mN; {27o>bjXh:jѩj %F=;^BULJZ,.Bн{7Ҡ}P|;BMz#B)VЕ\XFP­hDlwJw`4Q%1+`P65T9wԤl/ix<ͱvno 9T0F w_Ke6tL"N%S9٣vB;)&qCî"D;V̵Hku\xPiȑJm%/e~Ő ,_eE}gJD8dW[u; xm33ޏ zHV+5Ah,ug 34%i%bBn`\:S~EJh7/U4F\WEBu0}\dVX#3F7Skwy *90kueJߺ]@:@o&`:;MCB~b8x bLSPEsdڀ^%~ U]8ܟL̾wקtE0Xu66Y^`˷cE}%u!Ș)"Ö۽)u/]T7j} 2#H(? քUw Z0LG?,9Eei+R_iԸhQ(Aor3$ga]Er}V!ຬ\DByWSWz4}ܭ 1{ڙš7P6}/!g*6Y`𨪑yюBVV?,5"} @f-FQjHd3 Nx_dkjsJ-5tK*8۠2cYa;$;qI YL~K 8K'ܤH pzQH"Փϧ|PR1=jvg;hFӵs9Skuʂis!ouy"U ~]bUÛjМvS-f-ېiCaeh9vI|,Ҍ'b}`)d%&BL+ oRlWr2eކsU"њAR:rh r|4xG=GO-a{ZL}~3}tH |̨F[g-@1}D(Hy0h5.Ce|V{Si#: r߇%vcP-;4Α:Vn͠aIe0>FlWuVAtXR($/oxəwQe0{#5hx:qƼ!g\мlzhyyEXs!GZ핈Pv[;!=+7ޥ?x# R۾>`*n·NI%t" &gFaV[qM:ٛ'x'߷F>QՏvoJ`%!2Qc0CE={6ϕż^N9{,`,`ZNװCO{R,#(VfG'Nфy0 Im81| Lj2"BmMnҀZ+ ?< uST.1fB=#1^x!ln}i| m~qz[UJv— r`s/QJ33g뜍s0/G2KS@YP]+~@-O^D5rD'RMT,Yفw #@NJNYq7-b>3C~C}Qz\6!&5[?^Jg2ln񹡲=XP AKeJͮT:0K]A_9}F0^:K7{xXcՙ460D0RNJ({#(zc-'gȾ 3ߊAbEeEQöu!Hd7MTQ:wLx> d):^+j.,gRЉq>: uk6$z!+ d-ՙ{v0f4P%"3TbbO t:.'wƻkh;\w*/d#Oё7ubk*AP =]HueM@)E;w7l*f@^;إ9Z'$eR+3@Ͳ ] ?F}$$q^R~L2A.f!S\2C q+߳dcYVx8a9pd, &`}ٖƎ^f&M+XjxρYˏ5uH̲~s)^Ye[fP*\,!7/Č}K`4VtT׻n;D2:s;a{xj<\ZdG [c,5X n:fNR@e))і~9uI+p'|yڧ@}7 K^63ft "XyyT'h(;] w$ #XIwō HWU-V!K71ںb}qCip":/xG6$q>SȺ|;`"VpT:' v-gP{"ԑLch C(a_-Kgm:{Sׇ`s.dt ~mS]&w%qywZsuKz!mPT j(kCp;adD)]EWSsݔ"5b({:RƉe7f~[m~?: (5fՁ{2@I[3]#`eF[U/Lo$N;UI,|6*⃘lpmd-o×qj>D]4%%A}f;儓soz07v;rTV]f̩o~lʫRԬ1?=@Y7E0G½;b3t}( LN"nm:YAeteH9m)OXSi'm4Zf1A}L/ ,~s@v8]&de2oq~ 7ʠp6Tx vӨ#ijDPHkhav*Ƅ{ "D^xEj#j*Ox ,8+/=1;]I3 @`_MjVo柳lфQ#+緖Sh+ZԎ7vjH'ig+d\}{)maBqK*Gäe?pv(c{N&#b9BW>P0G-x,^%g`Z0J5gFdM%2b6ԣnO::=wd49Mwsl@FCkj@ؓC&YZpP)]\4!-_*||De5ZDt\nMJ; SX& ~#y2Դ+x^mk}k2`R Y^I^S")7 TXc8>Bgnb{Ɣ*[c@ c.MIfPXRz w-(,j½Jh6`+lA"ZB;?:ïd~iEOOx . tpi;v\o %MS[9EPwihQa0G{_ A$! :U&/T |95Q"施p+~A܌&ئl%XnW} 707:~C$Ċ4.?'2HrZ'htsW?%*uC;P̖e^qH)jjORIU+\1TL'!e\~x>{Yj@*6c5nGHgnO\!1fed';\A=Wʕ <n7\Aj1+  Y@J_`=zVBͫ%aى@P7h$φ8% >GQX ?{INW:So;H Bdήd&BCg,H,fd93+# 3EkI::(isdHv95 Qːm"xhj~rp:69@>'>oE=ImwgbA1ݍ#H"03VtI>sа@%b dQY#otA0:Ұ8_غ"B @ٓVj̒,[xfaTX>N k/u1\f2"`9iUiTSip醮= `ǜ:wɁ˖i|N1N2ܳ-ZکV ! l:[[ 9Zƞ&'cWs6ĥ}dA.afљ"(_)& 8;Ok6𼏞`lStuEo(5 EݑYљ1K [<+H/]9w Nw?`H<Lcd?ACƬ1Yֳ_u&^d׀y|J& '[@1"{yjJnDEvUFH⡚m7<>bI六VA6K,]մWBM k} ^_ Ao-u1`2WoױA ~"롊~(\-ȎFHx_]d{YZ lޅU-oΫA ʾ9̻Kn~mzJ1)\ثc&^I-  4yU)~4|{A' ۷YnN=iS'GbFmH1w޸PjF:MW۟?rv8AQx_ݯ,89ZHy+2#C~/kz׺a Tzy"!zDsΤy Gu8W t>o*{rm~)D y6nZ>a\Gp^ ))gZ|Qpt:8N1h7*x۬+:,h KVp;P>!wX34/Cg㬺E+7AEx[B'ېs[7/~h_H&ow3cTib0,^aZ ,ma*G7Q^w2 H8ۃi|DFp ;ghtxg(zD?s%ܣ(T!͋bOT~>"twn"׶:G7ީΒ~Xt7Q&Y4토084y<HS =;gWx~fO:'$sH(S |U!vmDЬR;Hv>==+LŦU_$P@ykcn)ykT ]ECQi9"ھZfJj\CH;l~2j>5Aѭ7\a.gLNƳVj1V.kŁrsp s}G^ݯoZ;Dч %}WAۊ'wY0XmYE""S>B/kL R4+3 TBj:((݌ߴP *:\7_r,WG6%uߛz`V9GB@q;zK a/]m[#% qzVSd;@wbͤg aԁN)][̻ nlVsۤDT8tyޜUMK aT`4Ss3/^qx~[膟RKx!1a(,Jn9[sD4 !bi+|綳şw9|K}6˗3c~ؙc߫ 70nܭ{(n%Dxga+jσ7C[/(gʌh#xp=-FK{6F4~9>ϰL+l,nu5A{>a"Ɛu _Yαq)bMP.aK_e5-;h%j7$+A1 V:=· B# 6ޗTxx."V|hA9, WveЛPtjO0FzbHĚ3|Y8njx5 p!;q: :!k7@'7eE$us- g= 3V1c?&լp* ֺձANg/ )䮨֏rò9O)8GE4>ر;QƂ0{9l #]ZK/8VׂzR{\<Rل( AfBLt[\#lY"ZQTI+WF~tLobC5cC2*U +I0V)x1aV@,$U>[FMK#D2֏D6$Yȉt@8f7U~}/!)PryHVX8Ḱ@gF LI.q.[ 0O62hfu>:'cĪSzjQ_*Az{/hŶ*#i͜(p (yQύ\A3s‰¼D_ZSGyilN35UU$\Mx[!]ʌx+vH s"aAq 7| \22\~p((Q%,SIqL?)&˷4UrNSF_QXeV kz:2_CG9Y# ˬX]l7H.^)*VK jSPoP8`N/c%BF#;{[zT͂RYgv+tكWK\crwJwiXB8oT8*Hc4xΤ)ev~'@f:ޭvLwDkT;G* Y $kfU`D@O U/N0nl6K JMbzI1kk@`cB,xN_qז"Pf  g2:$3Ωn6.!ʦx6-`DUO#}5{S@nak{u$G1%aǁfsJl6 x$Dc Ҁp0&N@'oR9L_ cuŃkmu vbvv wЩZ߅Ÿ]RD)k.͛`f7|uXPI^Gȃi2/ݓ NʜvHr0]'Gȶr ~qIbk[)wؼjrBUW$ >$"&^C?2/vZ3gcK;8HUiRκ;|stvdﴹKMBy?JCP6h{ *W. e؆DHM!;-q׍.dywMdk~FŪUCamdBi@R4@\Pe%f4\ ُW39&vZ~^hV35c#R:z &j]o/UkVe@j<ݚ%eOy VD^_ $~x*6څðM Վ韷əx"vpuEpSG̀Un[EΤr4*lo0{i?5ǼxLxOetwSGaPC7˳R`B!n K\wnn^x?;E{AAo;|KÖ)fhP2h3o.s0+jqȩvCf%q}yOL>3rI4Lвڷ +%W&1.`]Wh.ƬvĎ4H+g}.C0l2(R!uzU&,`[ۮ?σ~8-Ψ䞹gެfBVd:>d~d;]9b3ࡉAw)aI>Til7O*L̏@<)+ zRfA 5 $# lAj}|Jv􎼂j9WD Qʟ:S;C_\Y*9]Q>}uuMSʯMjG(8L qW{t(ђh-7ӥꓦkI!XJ N=lDHT-]]_>6]MJ. z6\gћKؿX)JE "ؓ1`s5GBU&a NuȾd,2We9n~xRz2qm^ۺ.~Y wp7,]'$;:jq,PlKJXg?4GONIB3LwB-N7l3>aEUvX4IGy3Iυx{!h]َ, 6/)J>lR4֠8X |[M*Փd}y3[*>P Zh;L. 4?*gբ-1FIjF:Yus:\K5R#l6r+8 pKݎBM F &eN&_UʼnAҸoX.7!<&v:ꮋ9**H*F#A?y}'ї넝Qb',)>Kˢ %}(5IZEa9@k9gCPԓHEnUVw%vC?bPaqxK#>(SP{:n8΄nziVƁ03;F7LCRC)$h2(jP.k{F6'\NKO F ]@@TTv&{Ql.e k6 hTjVv4S> BHVshO)Y;`Ң P%<.\=+mqyMӞּ:AcZu?g:AMĐpTsFSTg緍yD ؅l\M+8ݕm7",YxgՓ[Drkjo48t<_V.Q{mfPK(?%RD? x˕m\z!Ÿ6vfKvqқ"UO@%gjspq7َ&@BTuhI1{[ecdx+@&ViB u.TENb1 ot;CqliK\1fs:z( V2xbzEpᇧ5}U[ZS'w6!)+h8j}}{5X,>zskMB+ Rlًу nuS#dRnD\BB h>daLޖlv7.[7ET:g/mkI|'CN9v|#hzpspB[0@I-QKnzW/^J )TH,՗㤆a>|y/Eǽ0e \a\OAnx- i(;=d/-4`l?@4GDJx""|7d(9?l#v-i >~Dj2Exv.jV%Z)~SLy5}5_Ciϭ쭳p#E Ǒ}[(x1x$;8~뼆>~ixH9Xw >C(5Vh3 !a\Ĵk.ŒHIE6[ߋd_ahLf .9ņV -)|Jjz dWv0+QJW^E,}MnE0]atP9Q.V)͌~j6K~h1Lf5zGx">Jv쁿KTzUXB5CDJGw*m'Ƅ.)z۳C姃 #PBμt9E4NO.,,ۛb^"h,'0_ӹ,1l3\XB'9x$ _ckr^ ĎpCݹuA[%nTGKaF4ǗK&puwT7o n|GQI7o*# 7~#{u]yD“㓦uhPFP )Wwː>MʇF.N^3|2ϝp ;9KvioVmۢ\xJ%QH"f:pTS*N<ͬ]=@h;cHeF/5F/\UƒnP3ÕK \GZ8&^^{r8/c~"%j?jۉ)i1:5iHkXTY\qof yXx&,dG?WlW,}4 0l4AN%Ldu}60{r:T *汍xx3q})qu@ sB&$e{Te# N(tu=%"<ɿ:֓ pj7+q7 (Z|.CnFڒiϞn" 6ҏoРRT,?$OJ5tZ[24;aUO ( k,9!k/3&Uφ?Ie9 C!0eB7kWgQi 엇!Jc+( r44D(;N A^B&Vkl[ >Y\\8awoxq9J &kxN ~N 6|T;N+iAf5rԤ(sŃԃoI20l0KMs۪[krE֫^#MVv.34d˷6nz3UTdB{TnL~a-Bu8"=B# m s գ UY/hx&*K/eT#)3;#O?˿'qӐx䍋TmqջSmP)8O=ݯYz4U:8XWyF~@Y#hoP (`|tM@w`*Jk"eV0W >X Ygt-@oՆD<Ԟ:c@e_9K(\DA׍ !bgy#Ji{"u?^Z!Sñ2E(s)TDB>߷('ioaqʶp.'v$-I0 EwZ Ht KԨ#<-ВQ o{9^K^(z3cJ{ 0<#y!9 J۵7\'I(HYM tC(g!;M9(MFBfHs]T=ן؁մ=EɩJ,MC}-@տ&|`S(\/D?b{][vo tL% K1 P0Uf"p3 Uƅ!1@qH:KX) SnJ޵J E3WF7VRɌsPG;8OZ0?۠hy0=%q`g K3kutd#.Ѓ#%5Yh"IY*,*8+!7ʶZ 8*W>18Mvr>O=$j]nr;&43I3rSOҹ u#'gsO5 6ucM)~7'M"/zvi믄eO`217~ڒ1 hm  :x'&9xMФwe 0?hҙYպʾ5eLU5 6f;neywbQ a`ߖd~İlzz's9~I"ܔqfV{yN/bWnS=~dJia@tW&;9FOӀF5d#ZA9/P[~?Õ TOB9nfg& 6^"(5e26K:C^NKQ:9t[GޖСe|8vV #-Ehc~/'H3R ۽Eu=* %G>6i2&9hTK3\/g AguIX^HC]LcZd~7#0VkzH+ڍB/ʠz8he#VCg>Ë|EI"t!;8\ɼkcпQhiA ?SqZ25 Tp[YMf}mVG :^ }1 c$${ѹwxkWHAGާ.bhJkmNJ\TT .cp2oa?q~3oN T3aF5 v *?4,/m{Wĭi!m[`BNJJ0&|JTCg]%xI M}^QA>Rpݖvig`xiO]VJד7w.]JpR(gIy _\9]V &ߪ]HQpsOQfUoV5*ݷ0߁㽯g؝fxN}e#:J:XB[@yɈB%cɍʒ >Ց} ;S}0dpP(p)$-H|z c)4L,Xt(ucaΐq<֑:nV@4ڽ{UBl ARb> Ԇ;MeAUcL2v,[cu 30[(mv %v$ 6}2T4AꄲF$+F2 3gDTw+emET#,p&<H؊!K3cIz^Bf\\뻄| Aaw`?ukE."HOLp1\\oɳ!PI.pH3bWJ: QLl1,.g" P&daG5fe׎,4N}еN!%Q?%`PNK8m7J"EI/(/DX%z+b6,y!|* 5 ߩ@;rQ =IS8XF@Z> h{G!-۟$7P"-JY}>i_g9< >+WK`Y."q)ܮD/ x6~Bˊ40k3B/3ZJYx 5xXK?\$AۤW~6Vȓul /ǟ^ 8OC\-m&clV/A =кD5LM]*|繶s1R OB aB/M;JQ:1p8ml&0:=t9-t;JWY9qu:*~ 0y+$s F2it\TytL}ߟsn)6 zqTi10gO~yJnĄZP_$XQi%l'2b$l-MXVMP>ɔ >4ScD5"_~57? ޙRh)9lJb؁vi"R}Vm.n~Z&a0ʳޏ,^M̔ Pf. p$Љ1?n#|*x7QMC}M!pcQ" IpWc45J.n3B>9 "\9~,?ͯpAWqŹBp7[NdY6Ŭ)nw'l6"Blc)GFwAn_5#{8ݥbfq`3._ Ȧcp+ ?s(%V4(e 6d&Ac> w*?*vR`í@k0dAtYSeTW(C2~83Yy ڬMU^{/XdMc2G_4^ g>ځ>w8k8BV&Ȏʔs{" nJ\ojЖV(;b\TovtG!<کP+S.SWQp~tBnM0lV $:3 p C=Xk%(SG Ke~[LY{Wn~ƌ>3UF@~s0 q'`!Ez;Ik@#uJ^ 3u/&t v0_"w ӃPЭyurt8Gb8cEWwS`6QI$򌥈5#*t l(Uѭ<ѽCǔm$V+ xQL6jf @ /xnfh njZ;S{v;d)6"ư*@& RyDlt Sh4shne"p8'|P~,E؃I`%ixTX Jƅ>aaɑL>dlG^0&,_P0.W\~ey5; TADžN8pIbY04u24AH. QZt ,YTqBkHAXcT ]OT掩{<Z؃nz_>B`}<{ZHnREIЉsحws?MEJiXrcD8AQ6ЧF }O<PqJҸq2dZ@r9Oͣ" ]XU7N$ŠI3JC5G=&EYôZǶA:4ΡgTNZ LWM&&>  V )?׵JK_ "bv% \KM̪,r&k/fRmݾ!? <]?==}-[ gz0JDž|IY*NX% y+R'b$ AÙk3v-yxo)<љ ͩ. QTcNzls2r3C<y2Nw'V*\ۿ aa.5fɃh]ʍ@Lzr. $Z o_p5T8bbbCo[e0x'CV 0 lf$Ra4e8Fe#RfY)zxv EW^r&\S?j/8֧?|x0V* 2W%b2gj8 }k7a:cs$TbgǼ~0-g i`uop//g&(w޹U_.C*D|_ p!,o x='I {kE,CFЃ-?U::;1v=YYc2i}h6EAոmXcz^Uu%ApXOohLqzS&1rP eQŖ" f%귓<[G:Ʃ )JCz&|PFW4x6W9"=)jkl\QP~Œ7f,ה9qG'vtR|UH#*vU8-AZj`R/6Q=}0SCKhk3Iant@E)Qؒ&h<-ڧtYZ٣ߩ #B#p1XFQjSD9t)XR*) ^5kvB>IBj~$#;-9aPF[*1{2Vw-?LX%G#^7+k kS+bAv CbBj9R..v}SD娖< }'2;D,J-=;3i1;Ox"\EFeԠu #׊ I5nWIo@@+Pz򕎝< |p X+xЂ@hNV:d@81Yy7. ['iL}To49u v{-vT 5ToGM~HigTЌXW*nSgDNB|z0X4Ɏ֯X #>[til{uPk7#w>a .٫͡NFϏ+\DH8)mx ;BF7 .CJrl@m-G=s tX"]8ikKSD*3 (GúvU2( R&'C*l!>.77N|.anaԑGM2L"ƫǴ|u0YOw -pn6t_oy|rrVڤBAb(oAcb+mTe3./($"vI,*+ 9+bY fHp>%!֖ms"V{ [;dzt(BuƢE mfׯ7.{Af JeXJ"8}&t&JiFQh EwR de2#~!NZWtb/l3*A%?]k#]9T%'%.8S˦6ʼBUۛɰAhtp1Zj?+ͧ(y|R|ɬז3PB4 F|jؤalw/Č˫SmO{Y|fn|L3=+)yIɪ/*kN1 yb,'Xp0n`ٯo{Ij/U[ߋFEqgyaB()@k|:$*G&&XFG6{> %m4\+T>a5ޓS.yv_pm =!jztޤdnݰ4؃+snJTGf%X=ZۙJ!EMZkaLfahPiQ\N9VDpJ3aUVWRs^q^ :9Tyj4L~!U&Cnƙ ,q ʷS3ZH=,ZItQI'dϠ0f9CEef كI{ ' !}g{4r 6,_>54_S( AX:Bx/x*UNX 6 FC@^،Ve2表lLlo?$rL^·`Q!` _SU?,۴^ff9i,fA9+mDjLRFF1*N_~ae3q^Wx,-D&w.RAkX⎕|lvܒ<%+'CHK/hU& / ~IEP]t&e8;lYLTe 2Cl>l훩LIdH,GΌ3Μ˸\ν{L㐕qO\eq;dtȩSs֨\b( _ =ĞdG^9rVkrAfusDl!$ڽ@OOWjc) `DQ@8K0V^RtxzweAX"W_&2>|J{`p;[lt߿’n(Ԯ|p'`y>oŽq<\эg=6<󧻐lpS~ W`(ڎn--aLtzL]{D,!X4&z@?{ek^h@2+"ZdM<*['vԭLn?7ݵ}՚@" ࣅu - kjj.WBJ+ ag4X5+LIbA3O! 9gP9Rx&A=GǥÀ"3|:%)A9w-(mf΃BrO @5Q6dP g2@@z:AYI//zJmBܨ;~蟁LbԶɬ5 v ;K+jyήٓƢHOwzXmhD IOuŸܞofMA!5]PɊ*\ᄚbYu/E xKKoq駞;gc6M]:7 ߥN}0qCU c F?jԮ<^+ y ,qZtHFv6zNKLQ3_NT;>bT+rg?[#~щ+wJCrKE9/%՜yHw*4 !b{}ƱƪNy@J!}vYil(Ig3wADתr_ld>etSps-]vy쒝W![N=J$9(,E&hK?~Qw}`á6Ru3lTSEZu@+A bH[u~=che{b J!U2Lb|w6"/AϯH61rgv\UВyu͖uP{˰*o'Mmy沦E߯<`i9(%Jo8 %ko2 $!W2NSeZkޙM3hyuтnpfsQK׆}E7?KuzP]tc/ԀG iog<9e8Iu2P5"$8IHQ-Lp[Ⳁ8VIx6Ί 4J,THL \Sۏ"b߂u,@s"rmT !IܦZK/dJhW `f51~b%it$hLz}~ N)ꝍ0Q-2Oiu~|ckg ))'D $%rgBG;N&y(pe85~,f6;e} VڡT:v:pwpFD%ݩ43~&.;1A &䡧Hapϟ)5uoeq=dIhW}dƧOY]!?zjSFA)MONV̞/;; W>Ga '5=_TZtcT}L|a,A±.Y@?Ѕ=X~>j x Ec/[ ZDV?l,tH̃E6{?KKuBZ-lQR&W2Q@tΩijZߙ [Q{X+2h^5-(*&=/f2 熮1<㴡e$o{+p*aB$m\R8`dao"Kb9QE#LR" ʄmɟG-h<5snCl‡y[!W%R vy 9ظ{*gYo:F<*9L(!)UruFΪf*Nvq|g18DQ5 euYNax`.gBUP"e62XOwJe1yʲ7S+J-(V{y,=shs!*GO,! qM,0Q_4dWa|\Kj޶yױb\LEwPj1 OsҡP$7{ ͌*Ƽďi+_k1Z5JFӮ8ZMPc /|1^ W/~hk`P4`~pF\|$I}N7unO3T ^:=cr`pBM`›:YQQL5~gMfkUG[r$#9P̬cZa s;3#$֊:Wgą]2YłĒ ШBP 4qq|D/bM6UJ'cZ#IŒ1)fKiiP2 Og ` &tWX1hSnG}|Z=wFL`hζ| |; ];֔ldX&H+p 3j͞f]["+tuW-aK>9eɉGoisSM>3p!.QB&R/tBE  ڸ`e83/քc3=-bEֳGO|0N\'}n?۪hc W.^j PU6>ᆥ I|I+0:}N V0M:yܿ;scG-) K@hu5هeǮN})|TV0p9v*@ӫ ֧Il{w5|_LZ`;Fbޑy#Ηo:xa,۸Ww972}8#P7ۛ5t&4L-GүL?x,>B<%'.!84dALu=uA]-CoTh9UƩFVihAJ[d!2z #! <ʃÒBO+g[jΦVCF}YW ìkЪ:Fʈ*ucaW-VA)&S u[KO0wY >8DcL% pY8G2;NڈV?4=A"q p{QGIw Uac?qD4 qeơUc %RYF6ޑN'(gN P|n>gXւQ\ʹ yD/Չ1s7\lT3c`d|jzѷ&:o(+oev((ۅ< DY3ώgIpwP<5^yfgɻWxe%T1Ee+5@Yzm [-OwzU?͠i{}M<^:h 69EPMFfvrs[M QM-`XD,t8>O['f.@ؓY8[OIAA8}& Db?PDA mLˢ{ KoʮXM"]0kME'kZ 3.! [5J"aqRW~O1'ɨa[s(~u GVHQcV>rì+jp֮H|u)-b]Ng=W)ʷWE)B}ܑG kǧǴ!ORh  ) .Wԥ2ifJ[l.'(֭MǬҀrv+Y}# \ y_h_Gw #˕lU}.j}K= 'YrOgnT糼*3(HvCrY}b 'N'%Q}?!;'2* j! P>"cHRgezAQ%O4Y&rEj=lC4Ep 'UR #p1!QHM0iF 웞gٝ;nrAd ;Ⱥ<6#VlKeNJl [aYKh0-mjCCyԇ6Mx=@r2$UZ˩QFZ{(z'>Q[T&k 'VHM ˪w 7`]Uvyw sǺ?5taI^'h\Ș7&V$߂y?P%(D5zʼnǠYZFrlyoj妊"=:Keŵ |:U*jhqZe +-odD 8ܖ7|{`}hy(`ȐPFTO)nST?q UZcj;y1ϋRTg'epAåp'`+ÕM\'(SЊX}`g=oLX)/ru@ VRt: ;RMJDt'gbf4(YTS.Lj6,(jBmv~aS:!6GNnuA"Ls Ӣ[@A0u\~͉f,w 4 <B=:#Y hxWA-N&nzp O~q\ڍOQҾW;\\uKYqZWjUWub&?r.ް\qVc}ykVc\"TĮ:ԉq&fVplx瑇yy=f¼Ih;ߌo#+P1trP}jA+(dR'2(ryQ'>@qI9be%(XwjP!iFn4~(01P9дp,EˎKTQcšTmf?t)g-MM^V_F5wɇ]zp-ڨ 87h&oʳ!.3;椗qE.`~?_%92IVePQV<);|,!锡'8;!GCޗNAs*ݖ}" dû^e2,2wp yZOME^9dU|22dZ?X1v7q`o 2 'kQGejGhs! (&Z %"!2fO;Q*xtD 몋9FWU JKY%u'X3,$ ԆJipݔ.5P{zbPPDœJўzt1k*{{Wr1m+ j:Ήj52V/#|8 mсR8h|̠Q5EVok"F\H5$6eQhV$9ucI?:"t:Q޾gBW#H2>_#dtR#܉GliĖ\=/6 3kkĦ7q@ p S3ytYpp}Nar_b)6(g{5Xhܢ mЬaVMn8&\dOJMfq(.~:e}?I:b)%()gcU˭5 89)i.2$ׇ;58oֶ4uUؐZg 6+=') E,z,N0X$S礏0ҵ 2 H/_bs%0 0&g<_K9_:Ĭ/sJ4,$D*NњWyHQ]W!X1ӨHDգju=ٴa{C1 @" /sQBЊb[M1 , CHքeVU8Q[ jW/[~a"69:υz0 4f>A~<ս^Ziఱ%aSt7{EEP<3d MqOO9Z[>yW@g<&L@ an@>">t"mvl$TZ  35FXJssD o#՜`fVLFq@h#1x_$c(,$:~e ]\~oZkH7bʇ+:D 9FњϾPWw|er`{VSV_`UDIݕIN[>4nhd75+ >Q8W'L->,sOh|틢',4&`/&"ijUyP-AܦQx}ю ˙~.>(LׅY.EbjVݞc.30o5`M# ;>̅IV^\R.4a;߮@5+msy:g> dyXivA0C|&)UrTknMh iI7Ekf}VUER1R9_cVԘ̬-ˆF* C¹`ʨ2Tr9d @+՜`AveALus#?J]c10$9:6`-\5>c蒙k+(!Rr 5>8aTKuWjsϬ.v7$hW2cR9}`ďnWoD?|b'C҈#AcK.$A7v6wpS$ߺ% '4Ns|5aggTZn=GD7#CY .;z AŁ@~JJn46@I4_('FIȖR&{N$~RUռ>??§e[ 0$66(OϞp02nDa)u(M 䉈.A6epI/cuQc_}[5tbDbvM+{-ĂTX7›[}B~ћs1kW[2HgH׀Z$<[7\tO0냩3.:X (cpgw/ߙɖҮ"rvz{kNJ `gE66/!-!1QUGו wP'5> Ga% ﶽ,m0˧|cN#j*皻 vHI:sFi4 BiX 'JK}&!υ}6!0$ Ƹ๖;:(һ! TVŷʹ^R_?HW,s5궥QO֥"g zRN*Zn=JsNU?TfE\7GEhX`vhy<EAKWhΔ"2$I& #հ]=7웫@v؊̧#M.28~y|tǘъ>=Ik]ߌ2,hʏKL nuAMKhܕ`ZWV2&ѱ8wa*i/4N\-ΑmXylBBԺ/E@\2$(E Aպ?H7 ٺh0晿N G|foxᥛV">H#z:/GU$U|5"v}}s3WwإS.a]ndHhQO_끡%zWc3edYW|gɜB]]ݵUg\O-G˘UAg^L_['@zp^( ! ]޼)@sp1@*#+e>sg.㪛[9q7,&Gد\\z--d%bzs\1 "յ3g)g)]wvc~'=z6 aݽt% /Yk=Oeu9,ִGd׬?ŏga%8G&L50v-M/r/8BCvmٛj"DO3iY˵!\ UA.Ǥ-5JxXKr.K.&$ D&oGJ?n/AR^eC1znw$~El٩OXujsMMyT@e}d@٩8c^ Zp5a-F :PgG4"VLb1ͬT (C>z_E4& e͚}QpFgxǕFt4FY:y w.KPU5UU7&M?= &_ :c3ŒѵM>:x+f ]{GfMoֲH ݖ5q3*]`)?wi߽9ήAD[\izZ逿'S4C^eK ΊVUo{ 5&2a|*`]D/ݪq5 |=\E9hTr5" ǛC@1A҆*^2aW?VCwmx5g͋31M[6 ?5V"e1ͦ˓C> dhIooп{sQ^R\Τ*蕺[ѲÍe+fՆT v>S"ҘKCz½pWeW͢Tn$?󒎓AeE[*>Tv;HdYwd*J #41P$]gO@TPe,tR:w䚿٣?{ BP+xd[Y^ȍŬs tp R\y^@}~gs rlҾ?S(HY$dKZX`H-"Hw%WV.ܫzmJDWEV2{d Ѕd~  f@_jdZy7ʰrI&'wS+ CO$Z 6N?JhP7m>i s߫86`aoKtX}{WۅO[؃X!CW۲NH qq% [Yd}xZQ]kHs 8Wˌrh4Ε0C+_j+'7rPhj/J=+5r Ve\s@l l'@;ini5oNors> z ic5CTXXw\!F?!.xrZSzs/.I01'j^o}= 1OZBEws>q>΃AnEPgs|Ml3m63rR=Js F*זHj *~m Gҫ zюlFlq>i'Ч+&}*,9eAhwˮ!I[eU  (g b؟Si@as\ϬcQ!m|* dM|=N 7G.5E+/֡x:\s^6c5i -)_cG]}wT+ꚋϰ:NsmIzi!#@4/s5>_oauHDEHD,hy5P^^qn̹\Q(bvq6$шK+LR/R$'2܀LE4j= %7. ޒ9:,^QC9r"Tm`:g^H)IEg嫝"*Z}JMhFG4N4 螢 e q>`0)E v/ M#~) e5*%n)|K @|!i%+IqXJ;.p"5;0or_t.uo0qy2 B  R$IOas{NI}ѕX0Q,!޺J`YzN f`mۅX$Ҥq@ݥ d6Z)ڋz3/f𞶐;THKʊ\VϺr8`]՛}@h``oiQ3ENeC\|{RVɭr/pMVP{nO91_9N/SP@4&_LF]fއ\,xZ{zdizܟ`¨˵."ĪkQkq qX^A Z2W` UC x~Xyl#`rb\jar]3;rOYԱ* [oŜ$9>B-/ʅ_4^9sbJ\;HFpi( 82@CX¯JӾ -Ʈ3Ï-~s%Q^Yl/J-*}fڿ쑥i/L` &NP ֹ~B"ǡ/.7 'WvJo+Iu¡ȰQxiT_->lw|.yľs$UrKH.+yrQb߸:||#_vTF( 1 ,,Eec- ĈM=LDͱy  dPU!HC;Kw[Tg؆}_9A-(aȸYRRe'[J޻C6M\0A caO!>c)Nԫkh(*Wdc"=\ٌ VXcnJsn&:&6\NLr)1FL$ӚVTwBpYj;6Ug4 f u{GIh)v~Zf`/BP&pbP JvDRݶN]G׃,So2[c&.aHzho۫nf|oqcǟPŨ*#zhNQ" 5ל$[lc={Z'Sƽ3a0 zhŶЕ6sO=%P%?{uqhirRy8@갧OSP}`YzY<~eDB̢P%ҘD Vs˕Wl*{Y_lyBsDXg9쭪A |BܓD_q@vm:Lp8Xm_jiVkޓ<.T!eϤy>ctCjdՏ C)o(ALt Nks]fl\;^cn^wB(Eԡ/xX6v5 ޸." O LWOG'i'W u"V"K-O񌠁l*-T;Uw⃜ћaiᛛdu@ӎ6X.y܀@d {  فi0Zי4?? #rd CN!/djb]%Ja\r+9+^*/ guL_[JeHl@(WYgYk rD>4-u.#6Bֆ6:@>l:.k7<6J kW<0^SR+Eg=68L$v.9H9PX/Ej62jH:1 aZ~(G%s- ::Mk$O7WxsFHk~LUZw6BgE C1x:H,@ J"W6¯]?$g0q:Za5 kQPHzWs䭴q߰Q~nDiITH.}ix.V5jZ+5``P؏1\ۋf{h@/ W3k{ ,֙-}zX.I pB7q~0 o;/^3z-4 en8&$Y:fan$2Х j n9_zmx ͭw+(A ] }.Ri;U+o =A6u6t>_~g33QQcEtcHz8&;Z xΤvd3ET*zI[0EdXxJd\u9_9gnZq8Ur[6.ۃ)i8oHd:7`o/2!`];Rby Ga10GC:65%(xNM7hdZ}VbjJ3e[6ٲ \ZQ?Go`lbzbvO% 6&SgycTHa8_oa svwxG|Nv)X=bW!LF076Hˆ{yxZ0-a6Ō.J]Ga1-9Pޖ8> li@{3#V]66Sed^<ѐ: EdL{ q$k#*Kݱ]WAxOӸv^K i}? 8^?ݭkC5rS3k -&}s"k|IIƹ>ّ{*SA~}̘gܱérc%駢X `-b6"46aiѓ*d_q%1>MYdD[2. 6@T.t:'IstCZ7N5ݮ Œ',LɜeIxk3I%Шg4#+A'a'OdI^_u҃_z"NTuDkp0hpQ2]mk'A B"0C䝟oX&gX\O5tTI۲lC;嚮  _-Y j\ʙ"u| ic6 #"RܑMȪO]0dDN @<楷ک ߀a!4Uψ+\[w@`ĕO Fŭbz ~|T'g#vu>WZ%u;nT9DL\!A:9p6' 2 <3._)/>KwT=34ϵ?i,p%a̦T4@wfW-sv"ս}>x6hhi~knQ\lgᶐ;8S᥆TspO bPd* 9,fqӖd3T'~ u[ xv_e!J ̭Bujz' Tn yzTZ$3*/*֛n?޲.rw (aY[Ő:f [ cAWh 'e >RVD%I;u;<;A+m7LR6FpyirpIZA r(*$ԶAz0,C\ֻ߲67{L^\ 1BbeARwa,'fQ#Anܢe߰^6J&|luCDQmΓE>aMUڢ?9jb^q´5?fcXj UDJ|aOy/âvZ9! Z) sS͖78 )$a:J(yY7TKt.!aBB+w9 TŸAN"J2Gw9~\x;Pm;Ό GN2l6SB=^'VxX q"Ͼ:GWm+o4 ti-UNwgBJO TCuaTQES 7+S9S\[ U>GVCT3@L#5i(6BD8F,[p)& ` xetpqCC3PyX0@қ s`|;C H&i.@ej/UB (M]B5E/` KxtrW#iqJIvgPdC]0A8DGB&A3~͐ dD@a :8)16|$_jO@ :~]9zu BrjˊͣTRepmW]{TNsy+M<A=xEmmKT9ix󵮘"0BoyYܛ^3L [ʫ#GP'hB&;eIjp ~f0?Mk7/i7d.-f1P94-sKaS;^*nX_[VfZg#@LP"eB3@Hǡnk}#[Y1>m] I[,Wc YDl-.K&[[%)KODz3'(`Dh͢I^bC卼{5ij~6@6.ls/P@yOԱ sY@.lKȋ ?3qXM~j 10'}z壃7fKGKRik`W臱"ȫ؜h;p[lR;Wq<ҷrz;dBiFE7T?2h..Ь ҄RCob"kr cmJ#?SKV|>sE5뿔30sÓ<]m7Иjxh(3_䙈 Ff=B fJyT[o%)ֈH\jMѬ|- .M9D2;N5"&:②tAGz؇| ÷ d;>viF\7.*^9bt ^cjنJ H~tӚ+uieIP Hr6McZ"äӛ5+|3y;\0ʳKh| \iGЄ8%(1e01fb NzďT;Gnf϶C)1֎2 &al_sZva84nd9t d\zv9hԚ+T*:pƨa @*0V/iR{Bcmq/0!̢DkJկ+gYElR# `L N+.qzJ;S۟^cMAK"euVbC$ Bn~S_cx1]#橫 RE#*8PPĀ ~W@s 5] @?l72Lޑ.A>͙igAmk)pVT(%Uui-Gdb*8C†wٟs"7YmGGZkM $fBo4ar "ӂɄB;4TxR %0{ŵe.0 );~AZ@ExOhV}լQ./P\`ޔKLEӽ\H١PNŝKynVt%"Ѝd3|d{IXJ~GDif3<0;N`MRG8:iX3ogʾ~Dpu/APQk0/Ӯ\Ӏ@<5ϪFƣ l "[exjqꨘݓ,#߃meݹ0|bH,J`&GS]ݠ9Ά/N >ߚC; (UWNt]j6~tLL9e2l I7-!〸eϒ$#j052GXK@.;Ϲ&xۀfŪڐx/XPε{93M 18}L}>MΡp:/P>k'EżK㔱a-c)P`է2'<ѨZ 7:dAHR-偏'Yr.W7nS"k۴)Mj;|FUZMm&KMi..3VJF !Qīush,?H˄Lt Oe!&x$rNK<$7eQ @ EpV%E-f-SG{S^ɩm Pru-Nm+N:\JcOc]&\kqH!fJ.0ޤ۫3W_>sҀI sȕ%dZg+ S]V%T%# dO7"Y0<((#+ U4/D[_Uݙh_Ly-{H%0~n|Ÿ%p뮜Dݵ=X\S1L~Z&S:AXeK_, 0S"sو-őrb&wsg ,LAev*ɀgZ. G aɡtbm,q*.6ۛS 6OdP5\M*ڼ[=tHcw'Zk̖/ mc**e ?N޺|"DcLjdF퇯OfNŝΰ.[X+.TԄ9FBya_E hVqC_8Ebqh\7?Ҋhw,۸? đ=p n0s؍i.vI^[\aT _fٿ\LE[0:Rp{;42m4JOaը*wrF۠QND/AK$jj˴S<z7ԬL N-%Pg/SŇAQj)/EW"0gL̂H4pg,FFiCCS? l7aXMVw'?(ГckT%?8}~qžј>e|bf9%mʪȷIXU cnBbvr6L*ŬL$t$ʪ#:v8ndno?(ˍdxһ0!iΌ4m"۴~)$#Qr9r䮢2ŸHOMRt2aZkP8;.Ăj }SmϏsTT4^u򱗦2v1:{ >mhle_И,f-wAy d!\T Z7ѷe%_R#T5xhmclE?>3Dhs~nqIVjlZoKkttxF :eMܣ7Q@dOhoP2Qڠ=db O21 jJFVR(KG1Yp{NlGvWm~5/FȱnH\pV$/&XL'ٖ3dNl3:N1zq 5P:s佞|w_y:9ghW3\=YYJ09CmuEР!E]&0\ `+ )4Nq4/'g BoC O{Z*A>$2 ^n:וBS;.y~|9`Y9DYQEI G[4gTRi Vw{ۍ2wPZZ&TN|P;Ȳa5[zϐu@C;]2)m?P."t?: ATvוu[95B6'i\ t.ᨕ~IH !O5̿r-+}#ңPLL-D GNX=5/ELr%r\ &ڊ*Zq?pbT.`=Z#>7≟'sA'ܿ%۴+ 6ҎfS-Aί _pEEAKWMc~ny=5Mv9: Cg|TeIy Z(;OJ#xA(ǔ Z)`VQOV1} X-zW^Z* &:pm悟3\Hx]uy]Z%_t,7ZbOku$$b ,Iv'=1i JOyΘ?}s;b&pB.Jm=*tN7e`)jpJ8?*xݴ3V{Hv2Y(+P1nGjm0/e ;c }eS{LV";n3 ΰ/~噩%jT De=.J:~VFϺX\11a'X=lasy2E2M$8 %AꉲT5?{#T{z\{Auun sxnP +jChi 1x/.D5Q؟itn+Ct=z'OT;J ] <8QK&r$AQRYz!$ LX<Ϋ'9nbI򒦌yNA~-)3ԏa(pL~I^iJq/:T47}$v%7l5P[\ɀS*(+}*DSW @?ٜY]i5hk UW6tШ`'c=zPg @8sVc#"1>&/_#x~N%GpGucaSt eNmhpgPu-psBQ'Q9A&^"[!sZ@@Es_izhT6LmqCr98̗& GE Iꯌa ַo%@n[”T`@' $,h ¼v qaݓk'Ci_gj Ae͡ptXC-vu>U7E变n|P*M]x_O0hml>qBtN:@Qޤզw6v+. oǐg!Nc:EzRn%m۞~0Db2qLL`ކ E>bOXsePQ Պ9:rwAt9eQ}ʬ_^ Oť8YHlybLg2$ 2!~bMrډGJaؔ" +̚q~a`L1dz,O~RΟ<&0`]w̠Hsͩ'gu׽Q>1 ]錢ɯԉs3;) 2Ȉ#(I vx^${h<x*q0`R d߫1eqTG5( P} l+gMfNy+s!M FL֙F op܃xJEnVlJ" ,5C{__\t۷3gP>sgц"<%"-M[@?Elʓ꬝㺉dB#4TtI\@" =v~ MUo bI봟k%#@w ܨcTbh͉ αv |Brl6wy>wq^L>{zW=YX״&9CKs|6aNǷʼnu|eF_ub)i.󫹭7Є9DOt @FKEnZ7j߽2b-19wF`3FvWTXl{j |a=Y&,8n0e8|[^!6T\S_.IQi.wYkɂs W&=ad>궀y+I0\uY3ZOxJ*a!.ȸ]ztSn#;h_Iw8+" '.љzGbgK \fHYyuMMҟ+sE-QZy(CS' û&s9'zs(}BB^ w)"[QbRgBy{Η:)fI7\dP_ {zeiGuZ9 0 j P1Jsp v{hFPx<P+vR4JtM͡TFj{ cs( Xq/ Ӭ A^vՈGQXSnSkr4e&LŽ,J`mR|?Zi"y&FW"5&|zca%\rJ6'd ];2n{gZ!PM KIPT?y#ޙc|nv;m3MC*ⴔeJEx~y+)$ݾxq @F WQm1HjfLRyG]mؽ`.7(ԅC # r!KO÷4Km-^Aog'N_ލ5~Ĵ0HDPz. O`qtiql} Wf39f}4@1rBw&KB3crT0}iַ_\Q#z1yx3,yOD ߂w28 ȋ # 1( COz/E4iR& ݨa*MJ\dj Cs+ibҺ qΩoZ\9 qH*(u |"YHཕ7:MS>g{}*Pf҂gP[\+P: MH \{\):eo~V+L &YtX`,3![zeDzF 9$ɜs5zFc={'sEijf_2vW!׸c>5p`p"l _M8TvR)m_|:NkN#l*9oχEݱ̻ m=q2PoCU-mԶ+נ@u]`jBN kڟT±zzQE$tq3 5 v.Eό$D%HQvdLcW:|Ś/ }2At1h mp:FCv9[ &]5z!óYUuQD\Wf w G M 0Gu+CO+Bv8,$60zp|Rf#F 6{e '8lY{)RHqb%0p+~. omUBqѲ3&@{D" ̈́#Pե:Ag %Be ?"lkՁX0<ȧSC7Z:Qm)& \ #*)m~Rjַ'_K0|dKa2yvs>eןث9]&W "$VI_h(}9ϰ bIze_$a&8\txzOBS0rOJq؎Z3 KvuǡWa= &fi p1 <1pk̹l|fґLdMBtV/E@4̩['s\%T:@@mA; ZTy{dB 3} Y[]uP[W5 o 9i: 7M0{Nb*E.L%6LB!7:<UzjdWM aSU M N3!G;z_C/jOy0f: X"{gsdGzB:xJ+r(tqQ2"̆f{ulE< mwJw;+ P8uғO[ƿt`w=S#`jZZ@~m D,p2ț"rV- s4+;=.++X'uRk0~׾חH_ gfƔ=&]0V-ppoۀ/;H8F?\adtV*R`*=h-ؙcn|#o_#΢T(LZg@|8/Q2UrqgȺJjb 2H0gSx:y?dS8XGܯU8o~ESFMCEcmirp%g#mmvWUz zKSC{/?cHY3 SYHpDSXOV܇Ɔ ]*N:D=BG v¬ndlrjznnYU!V?6uA.g<{zyvbpMFixZۮO:p h5M\j]fdLQ͔0Eƅ%7arlb G9j>.וs*SJ[ұ򧐈zVɖ`0[[~-lFPb1^n?u=4mQ|8t;lI6R-+]'UMtNyT^N>롗z~p:fneN92bD7g(p1WW\)i4weq^Qh ߡƁ6(ĥ[ZFSsfn,gw+<9,ŜI_Yv>둌*sR!P(bG89ԛ< gSsu[fd7([kYO#U2 #>ޮM*yei3q KlC{*O!D_D@[q!+KOڠc~2_ZT'L}IGxTuޔ}f($F&{Bf]H(F)tcpM9.EܵaT'3iҋq1 @ORfdžߓq:OHqn`ɏ`ڽVǪ lH):Oj֡|C'{ű1Wҍ/vb]p*>#菩#Xf+}]V0kׇBǁ7sBazj=L&Ĺ;a촶 (D<U!m A!TJzՕ]OſEÃLyßX7E-;7rB#>ؠ0p_`mD}H>&OLbPiϿ:]f2nrb*/W^ZIE)[fx}6aN@* $8Bjl.5+瘹ǿ{!P5VC~vc7*1EIw^=1>Z7z996TM"6isH`z,Ovbw NcJ1Mk/.jF~_O=h7Nнa+楾6/ c,yaO11tHYa*p*(nf!+)aO0ac >+(ɘhxNeZ]`=h#&⹉X+PO`^0uv 1Q ^.;ؾ&\7CmIc`\'I !rm~=v*g4$s}&SᓤQ#`%OtAK "^gK=Wps+@+=6yZ@OPyC!S)80["Am|8>n_2hO/W޲n%f館)Q,Cȑ N'OvavSՓNytB :7l- A21^~kӤP X>O=\sȓعoVO"2T&4+͊kPz,{¡,(2!5S$ pbs5Ĭu^VO^MBy8Fʩ|ZdR}Nh &-^=w-EFC].)jy!ܛ%UעgG,KR۠f? zG,#Zhg{çx̟_a5ٴi$ްC5"][biExS$w}@FsFe6puըvO&Qp#,}Goen}a?J_}"@dpEs3K_S}F8t /0nLGl6ozkC.XAs 3ȅ \D+j;2eK~@QH<77A;;?_ TfLlzÒWبuE3z(iP^rgM[)ܤ,l5"~aJ%[ZLQ+Ŧײѣ0u7iT۽qݑleqV S{Jc]{cIiq pC;yxYI^&`.HMyMr$ gNyI:V58gL1_ < ݍȜV[pl.Z]3}v+/dyk5?AvoĂd",t@|DSl?'@H= -E- :zBX U'Z%4t/0 ; pG$m`&-g|͈C('$sBr%:+w^*`xp`84;B=F'(I~"4*4Rj#ÍYbKQ*Qi&&,̟k2arVJE_{lhlր YqhANLF#w$suO]_z@nh?U.`\%ӁV! 6fM4%C'jj %70iN?) ,X-Uy.P* QWCy#QU0vЏbHqjSJLEg+[]!v)w^=xowݶD97ַ$0≯yQLkd Gi*U)௖jj0PF_K=_GKrGN :!4T4@gzA]J"mt}4CtN*M dt}^5 {㹑~>b>--d[頠t4$[YZ!⎼ȡCry$߂|K:8x覿4\ äU[=Ϳ5T)?n <-< 'm,t#4X1JuX9}xJ~;q˄5&ۧw+g$`n>/6o(Bj;0$w|,z(JʱmBl&т!cˁdg[ nh*2V^HkOꞎOߒVqh2B!M39k<2-.J#QUawwD [\ zoWlbXй]ãzBS$`r2F7`P{_5 y+u>e5k--,0"gL 1'vk _ڒfGs~N,Kz{Xch5PjBQJ) Mٍ< +c#ٵf &,y^zAė~OX°36&6 ;t]Q6.vwMp@('BK 7G邠S:V35ߙ,f]6H=-µFk:ZnM!e!ZJ1ĠgkRp2.Ϩ2yy)2dsGo_8w_e /)n6VaUtFSIr>[ޏ2ӹm+SEm{ugͦ!ŶXh !'_oonDX<5}&"4)cďZRI 88kKcnFeqɥQU{gY\myYJQa?ێ4Ra l2m !2oylA&p;ENDiM&$V/$"*%NA&[1{-߁WJ0 RF0h*A&̗QzqmA?qGٱMFuUyOK~a|SG53l n/ CI1hm)z)7W,)4c2+R!]2aJ06)HԞ]=(6)CsGH[ MZ[X=.^L$d_JS4 l, ^( ġperkk$*vӵXWžoS4uzUE=׭q6Z1'z"{;$][Zf[-_6mGlm??LJnˆ8n*"]G_TR .שX9OnBPqs:gMe%D0]c3i[ޗm@L:a6L` 990!CO KhM5h:M 픿>oRW٤yA)!daJ噷E-٠~6s9r $`*6 JI'\59}cT:~=7)e坸dK%=9FH M-@WkӷTK[ >#y˛ 0}H33S&8L19QQF9:\3ާ@31N~/1"=q} W E)F|_@Њ/iZQDY-y8D|N` (jf&+KFë֟"!'H׏9551|TVw{G⽦ht0#ah[-8)s?)s}̚=VKL@:+|$O)f)^ed Pwo=D)E-!/ٍHN/KBOmԶ!zua,tPeZa,K=T$CW=rCG3*{lPر9h}S!\ևNPE]yڇ;JsװsQ8 r~=+HZp;;l4ּH& o bdz㪞Z݁w}[ ~4q/+mw s}t[ϰ++AFSRƧ@EXs;Y@W"{,#C婞Nm3ܑcѡY[dRN} ]ê ;:diNUzJS>q˱eDX<û/Va@BH!{H~; Э;1i~=.6r֋^C3\wdC۫_bW̔3|’ݿI=Puls'v/yfd OEH<7zsyxSQڔF{gZdskԭ:QϏK@[5'7OGK"r50sۖOK0] Q CeWA؄cƨŁ=XGbAnÒk-KaU ӶiAώ<37 <%[ͱ'jZ/˹,!Y ^q#F9$a+VCi2/BL:L4mn@ۅ$F߮XهmL]A LHqOh3P: :r/0*VH0)yŴ19t ?}n40"-ªKou*ˋr\E>zKЮ۫mufpU'hhhJ^Er}N@TN?D^D;Lk9%Dy1\*j5DpiI}yg+ aARвKvRfޯ ~<KEyFm9AAUX$UٶDO? 'aVx fOkHi# v.S&tmSL* 749?cZ[MNjLgRmbjp>@ɅnQ9.h酔e"oKa^MG(t)\s+2HEƼ(\%Sڲ<@iQ)3 y<ǯ7(}s[u*9 A3C(Fe,h]W̭&98 7&eoY h165%P6>FXPT@ޟ\`n%A")l! 39d`HLE`0@)pha 9}ՈŜN3Щ{aCc1tDi/O>(M" |.u;Odm߶-2c'ON@D:*J#MR<25>_tmz)0`{aӒ rB vm!1@9PSJ`VJip>.=!O'39vZ85Mq+@^yڟ>99pkQ9\tK&meIQ|~n"&K$8 [s4p5ܾš*U-"E&-xe4WֻV[z5$|+2Dto_lIHYDdd'ƨz'^~-./D'AZ ]Q|` ڂ&8+HnVZu#b2h=`9Q.I2Y UW'r?ClY.ctyiJp3t猚a! ,e*:uKyJJ Iʑ Ii7oziěCys(?=" ݲ}aZz)LKV+x]a ra ~\l* Z{倒ti4R V=[Z;?KT &D+@r& M{昱"{fuӍNܒoi }c$+w) CƞxI^F|W[30 ;),ȁ7H ^j۞'* S SG5E=0NJ=BhNVzX 3y$:MD]5Ϥ~f(VD%~guԡb22yvoؿ} hp;!Q(2O D%$#P5t甑SvU(} Ԑ&aG|Ovv<(`NyM=BDKldz!4D71V]Mr*B5z1!jFH6mS¯ֈ SYo#GMmʺbMv?핮فEWa!)v%wq>vnʏB|6ƅ@׳joc5/·ʎDt He¸hoder$9>ZK1)ni+4׻Zt;z[\J00DvvWy@涊ң4lYkFDJgt}1WCg?'>VKXd b7vB ]&QM)zw5<@DA׊?9kf [t,!Ha'̈Q T=KMlMt&CӲ_ABAUǫJOPN'Ps>F@a _s#X =H_WSq!M@_(݆L'"|q5x擃GĴLWQ}iRaԥMW1х~fiYkUK4|>YM`KaZ}_lIFbWrF-[NU'mJ`s_-JoB<1wLV\,)hYqE/豴k/RmزHؿJm<Cm³C%cn+od}^`Vcp+ӵ>^I+ @=L[iWVT6XL 7 r̻SPfwv'o/OȞ#5_sc[\w953!%1'3 Q}Y>菌X08K56Yxsw(xp޷D9Ū'_ X;]/g0 Iꍹѝy sfq6]@,7='stӺոDk>S@]сvP_!QreuZtqWZp0̠|:r>na8|՝+]*V}0V\k>-OлUt@Kr&*mH`b$H-\ݗ9dUE/"=DWN7#&^]@nV'=:m]\ߘQ8pwdl(t_qt{ZUtY}55Ly`ڳt޽)E1@h{֊sryDQ&"+¯/6eH~3aO(r&^述~ *j~%S{VEP>a XwܭMs^'=pF轓9I0,g &|F1?'Qd7%BPT7{ & ƪpjKM#}CG,5Ҟ/^ jQNHm<\`nHJp IYr離vujl:4dG|m[G] ETr,{QDC?K?–nz &y 0p%_1O{W*yU`4^XIGzc\0b#'RP@B`'xNUBY&x bchStM-wqeғV})pAf9dv|- R-T*qwN|>3c0tq}8ש'aM}1sK\ b9ΰFP7tЌ״g IϜ|zx.q_VB矗_<>җH]ίh"_6w}r5t2<1<# P14nTP_S9e Ф 舓_c ~czu<}v}B酪H]! E[IyiBz{]fZ_a6 'OKzCO!%I]Zj"9HsƗ<\0Pu!FK70a|*ߣEɭYG4g$'\@-_s]\C7Lheqd+ߩ/- aTS|嫅) ״!U`TS|۴2@c&_u 0p0Id$juV/6y,Fsrj6MD@~qݯ; +~Cuyڌ{ʑ!*tbΉ<ʸO}M%]ȹ^Ҵ"gM`A(%Y?+sr)/䊸,976?gTCs>\k꾻uӖw 'P fR.vD$:3ֶrk'?d"I ̛ bܻ P~~klR4=+|4?G`Ύ!#cz H p,( >3i' rhƞ;F°.1=3\;BYԺ{)6=ZU03]WyOh#1O7C;岉'dc:fP߲^ "W5u50# IjJLب0}(gO5sS䞝;e^ 6(9wŁ*Е|ȯ=jke3= d#QiE"I-}00-P~S 75mC 9,ݕC'ry,pA8>Ic~NFzn*AI>*yO!ɼ3| LOV1..ٴ$OB7m728n-4r\EU\  E)dA \i۸:GiyiVpZ 2)3u֝Z/Bk~VJ|фn؎HBN%<`>obv? #s*A_uqlaYE NFìdqc=:3 苛b Yړ @4Wi: gAnׂcsCKBm.#}G)3 uDx4ѹ?N)|p&ۯwݥMF=Jc.=6QaS5 ]'S=92Ȕ3!Up[DSaŌb<2ՔF:&>uѢUƙ8·:9`zQ~2N$2}BFLj R͙xfMUoT@\%[עWC=8KPPǶ7A u>(Dy_6"Rӣ'.M$4W߶9']\6kTI"~hj7ҏn,XKw&AG@rf^r\ky+w l 8pUK5m3ǀX+r6"Ywz&Soz݄b1 %i[B~Vj^}VN_P'BqWf)ƯS[G*ާhDdΌ tãwwٞf7''Y 1>jGq4I-Go' [}A9CRpK`?XE\MEК :|&-qI*-iw ̠\ySvTXGA=ZX,U񍐗hd! ֵ9t/_V+Zqp+Iѕ,1(dq%iɥf|>J8;~(Tj}F/j'Nu$N)c?W O2nnMO% {SfVGS(87~ss[X1z^7bT,J W}׃NDV6ܓxb =O|;MapEi{5yzh^<W 8K꘸[oA~Y-l=le?)bѤF$],$;HObMpAsd 7 >ʅ|l55m_Y8!?L\>ԗ`[Q0@Sֶq[Xhnr,&S @ x}\ 5p>0MӡЬLq=0!` McP97ȑ rsm9#6> & bou \?~)CӕHƮ Dco[R$K- ąk*#u\E Muh~_:7+=t:9p?B gH2p']*lBC_ҏ;AsԂ._'H7Is2D71W0I7vELjub.?c%1 16"GSg386Ʉ#}l8+-Dp9. rywW<4*Ķn3 ;6,ik/mx,-tF!~ythzHeQFH S)O-%up-Ry8_y(cLG)];ǻX5 5 >m(SNP@yFr ;L> }j?0տ@5"?sw0e '1@cl3rc~Lmc>Ap,q7m F͎Gֲ-!Qav&+Q$ -{φX'-*Ipڥiħ$$DvZcLɡot}8cg@p=-\A̰~"T4pTa@"m.%е jQ{W}PBbkW_t)BbM!( ӷQ`RߤFS `qRXAfk' XCb'p|J_aNB(B>mWJ謘!.cF*FVV-%*{4o}x`ZHrN(Lg.O62fm^C<"* 7J8(mY=$`a,eΟp%~|^sfq#M&!.38Ofvo>z"ҟ ᜮ1TP/uӕW&lQKsx^ReݼuY'/=17Y`J/EiÞ||F4En炙ðH4eH(»#y2L!\ {n6mt!S-9z +\^ks'k~eqM Q6w߱驃шeųU3 ecmc wrWAj+m]U h4wJA;7T>~5$^ ~0>zXZ'haN'02֬Պ64Lk^NG<%-!H%['"!AK§6:)*'->88glB;lɟi*K9Org> w:j +R}k4w@_2oK7P2=//Ӝ8\Jg>V5!pn@%x.8p6L!B<%m4DZ:+h*˻` >7`BX͒Th5c2m_Ijٕn$f"{H`+9 O[d &s XPުL-bր0k`֑hv![*X;܅p>Yu3.h)HezO閍oTwM~a0Hhҳī4w&@):cBP+T?**+5) k9Kf4u~0k%`e87~bN_wY`-z:%~l_5}ZWQԝ̲n;rYGC A'{A{ +l 1ypj"3"ׯ~K-? YB`b\eGFRK6H۾_ஏ03NUiUxWU"w72W.9_:Fa9!扦F~I3L"M!cwUQ!:$3Bと~m߸($5墥`omB5wM.-mq8H$e_HA9(ۇG{2- DdmVΈ7!65! #Oܘ[{_Ť{oH0H$=`ɿS,I(@$@_p~=rvT{䨛k2 qUn72ޒW"':|mكK, jMJu4(2_Q &V @XK6n쟇טn*\w #6 0Fjv,hY먅=iBr( DZPӢs_- 7 AZĩ=]u5r`#pS2;R#Bo9Ԛ4xrPݸ)N\;I:7]&ʰCٷ3uR]r=;Ѧ+?bxΐ'A)t x™ / M#=4fbaqwF #%E3*X̥Roj;K7] Xr~BF}oJ; 'Rϗsb2( g> y6PM ˗ 11?&mD=k)7<2?x{#$/A.~\%}Zܐ2L(wNp:=ҲżOg31MĬ=(W0EH 37U6~W ZΨ^H=04$IEnѠkTp6NK O r5Enϒkkd-vȎy='7cuVγ)lBiւH'^R-d֤O91EoK #m/rD-a(F ĵ::ޝ{,hB"4:,:պ.% 5WWy1,'Qj7HƲԸ_Ň. 7>yNzO +>wz :/nX28*O░"x(>o"GVןD@{yC b4C,גʿ^ QtQ ,#Q1 l9Q WDt a#FWvn:DI0aKݿʺ#kBu+Mhp {SaSۆa5'(Y8Yq.@u  ,#MtC.񶺽i[yvH5X+z*ҁ2vu;8ȶ*pj[`fWa#]&xv;pz[v*oP/GP̩ô-iZ}ĨTC|WFӑT6Ӎ%{ +^,3ߠ"7Y~Dx 2+"P njFVGe\",呃Pv%l {`F|kDE+`P |FhBE5Žè'&󛒹.T=l=oTWXJ{CUZhBZ) Scl!H42cNYz#JRO]㛴8ןwgM-Cvz04htqboz]q)l %hɐaѕ7= Cw !Q 弚%SIBMݼ:'UH a#$M6 |^ڹnO?$kBCnYB7n85TO‹E\l!9 kI杌4XQU|Dk50 7Y"%_؅BTzCA*wOq9``ܘ?Sct] !RCG*M!{raP]JfcHݦ=v>Ww<$>dJ`v͡[u#3!!uɷ"_f7sJ *Tە-Eײ(r$4L2҃Ò(>Դ.nZU|S/^!J<ǦUGCkH/@,,P* kpVuL=)[]'wkuZG۞$ #s]>5V/`gu&9br`{ӴL@mDpJPQsY*BoTO9[ݦu~,|WJi Cp7*"Ớu%n\n9 @OXRL:*V},MJ GdXBV: L&&Vq`: Em!=vސLj@U ytq(DOZtE~KK_R3U12<Vv+:(`>&ꆪ.(qtq0\.ϗRv+młis*z&`bL~+g]ozz #`:pܺD+^"EXQ0ļ)5*6~Ox=YtgkYhţV8f!ߞ̜Sd/Rr˯cpGJmrc{*> ½slAN~hif8 Fym# .Gz:PETe 'iq$򁦔k[R$H?Af#X\\P1/Ny,`'D s|zw#+ΫtA3p@"dÍY+mOj ?%RʴviclҰ:L乃";g%MA˭=IX*l@wHn?>̡N@bCPi(o?'Ŋb*[u\/g"5%EϝĢRV`q E-AfmRaJ Q>o ^BX)tʥln6AK؋H-Ѽγ9qq"L, dMiӴI܄j7x9j,`V:N^ῠQ-Kqƙ=REP;d[Dې=Ң+vY:2J~aG4,&? Rz\ךlc+l4F7׮CT1 jAAX~~lAMzï0^4ZmP1n\xNH)TJ4H楈|:vBY 3UnJ|▀=&A/e:1tn%YC]+O;UV~wJ!i \XIu E&L8&ԐJpBeVs zd-s!NV-q!Ύrx3NH6Bc{}/T*;ɳ l}|SQGhfy|)Wx˪8sHyݹ'j>܉͊& 4'@=@5 \{GW"Zfq}5З/l^L"\ˊ!cq%e@UQC3'%se 6e..UO`s+iՍNԌڭE3zTCΟj{*1TX G `i{{]DIZuM1yscE\EACPG\=8}x,_I%N8@A^_o dC3#\Q7,[['fj[j: z+ݝ1I I)j$v]a&fz$w .~ io 9`%8힒iN>*I73[yK/3jgw(M[+6uNG%@Z8V(aKu(IxY-OJD_+C.rN|_B .a\a6y+W). $ňz.Ӳ8ӏuMg K~RamVk*8A<V5\L{[55_[-PV|>X4Wmm0b5sl(,| Q.lIKP~*7\4 Ѳ#ͺOXa҆"%.ԫ0s~RMxh}]lWf*[O@gwXD/cJuцcͧǗ\QNIS/SP\FWOS:Ф6sSڦYSK 3t/ Ts!{4Q=`{A<3Jl(b2m8np?tW$XIXK q?[c954ԱGʢ3GuYCfB2 C\ >Td߁Ggaa~7O=1g޵[.۶; cSyp')pFNHssuWREBhb*|ZgWkD-ٰil:0)'lgC[D2qb(Pd8oU%D:dTZ"SUZQUa ?]Т$t$j(^D%' D0{ }8+EH($AYn @T oA٬;4yv*ԐщhC]/8Z `R\L䜇N.m 4VamTs$i0{;3LlY|ULGkrg|<[с͸@2eӔGrLb㧧`zڲ!e )?Ķd~YٱRyi=M}ܵ#S+B r}{1'AQ30y\П!Hoc<ְzmzhXT-W2jkhZF^o,/ \K[̻hp;nN *g0l 3ˠU9+ % oSMm few[&4RpLE9iq-IE,6ɭ 9wqY [iV,zf$*3B1k 0VrHv WxwH nE͟6. MQZ2]FNY𕌁쏘pj"FK'xZ ?@Ml^$KR،d7\poˢ@ٍ)\esE|mI^] /A_W+y'4^,<ܲ}T2eAq ~-BPE 9Y<&jah__&S律m~IIRL&X\Cg coR@0 K:E:G(1cһE 3xd&#Gz~SX6и(#K72q>u< KӂSǒ;h2IJ7(&IV:gɏX&mB?1Xe k>0=^L[xzW…k7X2@,.bc eOA`eMpWj Hx0Jy9C"OҘpՍ`% lTn w[Ěw<0ޜĈP=c`,}a5@.$aYILKظ ޲ =heF6\R9m@Kmz #BAR$pXeQS)EmN^D]Ut07郑@f|>,.xW=qXU)izVR+ T.]d=.#PU.et7<"AUy) $ Sעr- hiFUu]Q3;+>=J7Vf|x ]rCl~?XϸIwJ^'^}ч^uO}hܠ/#'t4x W w8ǣ2TZgY<#ra3u rclGQf)r;8Թfga 'x착X Nb홤#h 0IL ZW=KD DS'PaoYV;.!<{9>\7h9n,H^ ҟ!]YFv'5$+C`c#Λ/GE(Lڻh~cSrp Hϝʹ(Sx;\?g]_YwЮ mM @E5'ϬZ#J&w{C{b&/kJ4UwOiL3u ^: 3r ~EݖhAGh[r; iYE[B1IxիJ*R* &kp}-8kH~R}HgW>oVV4_,(ů^'Zg.vchg>b.]< /6eRdu9:ĘۓKkԮ|Y*Bgliob,gC((y Me\7uڿ$$}P 'jEhoSa7 0?KO͖ ˰^SQe? eb}uS6)e%_Z4f".rp#*\9#k } _\`7\ּS;+)J?#QIJB꾔zbcOPF !9V]A/}k~ %ٖ~;jN nQu4^v؊뛅=א"|< QQ^tƁFQ\YB29OxC*lM rU'6i6c Ti/NULDv͡5l2c=xQ)1 ;΂P?˖%[ 1ń~${ <5%VycRaF'L+`ZI0 +\D\A`yg<`虒1#Jh=R5"rä_w%Z?JhEN,5ɹg-@>r/?qwP܍t-Qٱq<vh\ kյP[F(Nj_(K0vR̚3xf(^ xy/ e7<9b+ AC`"[f`~ej=>Hhxb$ $.s#%)F"]{EuM7x$I!Ǒ PzAxt?]Oj@!QvM)gn!]WU⾩S3ot`H:@;be$ǏG73g+'zΆe G>du04@fE |VtQaT֌D oLg)ufu 7Z[ȓ_tqCɾ/1ZQ.4sbPb{SWw!I~੻ysSߙ#e4Z6XLF:}Mo(OM)"nV"SJxnexWj٭-m|) 5E{i{^{_Փs}>EYAR_Rî *Æt aQ$9 zF}cuËuĤff42?\f٨!H0>5U`'l+*ECo9Xk n%i?B T|w\x(/ҰO;F7a#~neFZ.R_]l_8TF-Morll!g>1EQ qۨ1?AêqSED?c;4&N4OݴW=:}yEwr68,-MbP $8Z(|/JMu%xõ r77)KpWI]6C-8ܿ_P~ri3jX;-dǬ(bC П*f  }-73X|ҔҧL, XM %_[FD _`SS'2nfm1`NTLMLXSc}*m2XݡQyMֹCTybm*buɥurNq&HNŖoBQ_x/%xC$ӥoQlD C{ uDSlz : ?bW~5=-//{1e٧TAѼd)ס込Y>SCWH sEZo@{k:7?3MwIVC~,{݊Zr/|6= ꤯{€<"oD9I?)s sN;qFΨJ?-8d?ZH/k.ߍYhaLz֐+Uâ#Glc M:69,j.t2t z sEk4[U綎/W6Կcv[  E(Z(,*i.%,1!>"3O(c}unХ+͈zOwk_Mgj膋9~cBX{|&,R4$,SNP-kܵ} /U!f\/G)\~SgѻDզ˲z  9KR$%sY )xFw3WD4R+ 1Dȋ^*g)HV!t/zd_lFDB}q>Y/ (5:Mأ}rȻ;!5Dt6x3c#UWGbְ &58gam igiܮL%>Vcj)z|V>eɈUԺw^o\_Nwm6 jx.iΪɠSWE?z頂{.vZaynZox&7^5cOH)Â{#2On-2/#m*Fm¹j嵂grnsY6d¨0cmB$,=4-uH°@ @Xi!p"VHեEÎ8aΗۉHkѦsؔ̃;ދ8CEI;b LvLRѽ`1?񛍌5GVCtW["H@]FP]G8OApu;X9dRO?HsF??wJ"}*y$&t.3d/@qoWRʧ6AώbPǍls>dSW?*icL׀bs݁g/jnU ;е5(*2xSe!K'&+6++B9Po ~r313 f⏕DUDm9Nv}gB>I>Sx)8s {f? jP"eXc9{74TX6J2eUȆROy ldi@ƙIҬX]&Xظ(k%IY۶.! 'ojn LL{ΰDŶS[h;}Kk&*0U\CXme6O iynph\+MܯDEȸ}KY`cȬ[9>JI! {zBM>!tp[T//Jħg4n_5٤(N.ȥeQg%N*l ,O7:"o)<+=]tw;>+f_nK:K`#}Ga΅":Ep*讁oq/!m#HZK,f?"QaODg-4:G ԋ$doppzcǀ"K4w8Z ?lU.濲ehFJE*cwM2jM2hzCM*$'ʅz `(a)X_/kʂqa;w^"6Uk%jrń%lEWr,TS瘭qӖvU0_Fv\UQJUab*ũةP|\0̫ݒ4:˟V1>+v`chd&XCN1]'2wUE1V QfM@8>`[b!Se]= Dn[]ñ 'TUhTF[- -l_ $bm *.77@K'ڙ07k/.p md,XMx,kF  b_^2ElYʇ*A¿9z /[4Il#umRLV`N= wkNqN P <; O)E;Ū`L{*hk&#F&,t6E9ZTB#pzAT"v e+B(\r Bme>ŹŰxSwXy\;!ڲyӸC^Y eX6 BǞ f)QS0L:Sb"xF\W9tW Æ=Ow)¨mO)6ZK1abxuMu kVdzي/0q8.CF'Ui>Isu BӨߗC /e|ŜT) 76yd]OrV-s3D\$}F^ZDDWU$bqZ~w[*n5{j~ (ED%:LI v*=l]AC/-pF^GCVdF.c0|4Jx:fPiYhB@؇i[y-/*IYP׉ݤ0t^]!j_ `+s*Ma!Ϗnr$e{`x),tq#r٪a+sѶUA5H*T b)>mG]fEOBPx^Dؕinؤ'A1?mTVy?&s$#Bb j]_gCBXږ79v ӽT6Ǽadeeiq$m2(ivʜi4y!^W\49*_kR[MZ|0PW [>y1Iӌb_+<]D0ܳ4XRz7fZucX !bݖ0XC>0+'kC{~cx-LEQ_36 @38Lb͠P|nZ\3/h9UvfM4)gZ?#9_sB)Nh78o> $B8#. j^+Ӛö'")}wQDžL9?wi\AFh1Iӽ\P1n}d^nGQ׼\EaH‰HX*n7f/yAb R2}ƋP3eT]X_I(}y|ZijO%l:n`70{!z t$Pj㮍0^_n u`X|5ECzFK^.hHva|nҺjKwQ`*,z{-1Ds|9 !=FZ'?lBgݤSxr3p @B ~|ltC͂5tF\J}>P^C%jV6PoLw HbLJZu49G̅(eپ8m`4lulॽ>_5ʸfQBE\"5᳡yqInoX8z}vOK)[Z^ƞi/q0YyԒ,J''zuOn]n Q[V@1'y<blIZ>aܱ.b%T44;E*0URfg2^~8O'o;*XrNG(߂.z)jxS+4<ᩣ;'RorV ֞}ٵ}/=eq40b59/Kl@Z%J* ԫgJyQO%3~eWF֮Min,^='h_ y% HӀB'ӭ'ksSvrNeKeu"uLjcIOK/ ~SO \$~ӊyHŽYW?_NKٓ{Ɋo*lxJ^o'1mY]9Rn "}̇ M#؀a10LyvXb:%eQѮ{Pju.LR"N˃]y9t[bI'VwQGMt1NdE^<+ #s??×fjfOA_Sc!a۟L=N WgrpE#P)=(:(X] I8gZ%-U-zHů;LNh)lRId"V9?r>: zX'0@bAKy%10gs()_l%:6U2K1 n~OӺ % a8H˹U0B-^ /W|^7bQ-\Z鴡Mw_ٖY.eJʰDl! %m ̹ pٟz2vX}f0ʜ)?!@H=ƶ:mPA% &e &βxb $u?Q-136us/yqJux/ M(/wZsmST7-Be&xq'w0g֨.G P9˫EJ.w2~Bm~<]T]Pz.6֔.Ԓǰ̝1g =)[|E)3;'[:y29bDbHMe@9:e @tu~Ɋgc9*L08Cq|kiK*' %K'92WfZ7bưE(:,MY &n=\0s㠮djhYnSA)xxLvw k<5`鏐aDTY{xySȡAR-,Sإ>Be+Li(5F|;م'.C⨼u:i'b"/>N9'gm])uKBy5{ '՝_VV:g-g0&-?C8@v<[27'ְeM=fQOAtGnke׼&J[Lzp?hJE-y0e(>(-YŃTwBr7:ӸX[_ K^l 9:kl&L[ ;!A^s鴢Qr@ w]ļR4ie:b{" Cʹ+#ZoxoL&M6%U6?T겠JTL?4T $?!A8 n-Y ّ!AgWC Sk3-%i638=d6C$1s&g1#fa^n}Nyj~2_J LtG?Pc=h8Qп/ޥGLܜr%Bgiٺ+Ut)2GV `xƳ-g&Kd}qM)s ^PN%˗ja¥o ]O[届fY9  d6s ;6-:Ӄ1F KqYpW]Hnk+59oOޭķ4v0'Ҡzz),u=o-lŸΎ x1ޯ/#њb4J'o?.0oh[FI…$RʼϺ@ 1Z-@'\k5 ẍ+"nK0u QLax&.3/医qntWPT/,ĊZ9aȱio7e1P).qQrVOC-|p??f9*iU7G//gKuEjK܁cg4"qYc f N@s"׍aHǜ+_L0W#~$}B_fwlb֞vU }y3}T,k itmanmzg,(M):d<**ˀAlȬX6yE'r`汵>qc>>SƝ/L i'Juj@d,! WЂ1)T B91 ŵO$6 ]gS`k"Y+=N=y=$vp3$ytvՏk~‡Mx=Eӷa't`!({4O]1^?@\-(pz: Maѝ>$pݢH+!m){]7U!)H]~ |Wm: &svd7n@Zw2ج\VxAp#ͪH[NZi::v4Ws>@4W3F{|Y5ZR0Z3lB0" PKTfcv8 Xӵg2.Df P鱻E@;R١*RɭaU[Vqg@QN"nR- 4zns<㜾+Ӏ-(@ZWT!֎~G5YxʜB1<-eo|߹Tٽ.-pTC6܁4Dun - ;\0h é`?0;3 +c@;;RSOlAhHxB[\V3Au액dKN` n"<(UWUVz-:u?Hbc5̔9DʒD j5eJzDU`m+aUb4+6 n1&:진ߓ\'&cy8!/}ĕ'o'e`|k[^~< Eaj׍=lg`,I0? IIsZ- > O]ë\o#n= u|OvQY2 uZ9㳹-VM.Z$ A;Õe}{ྌ`mD^w *C7a%yY=ݛi L|Llru`@d)xl&f0HXͻwS,w5)q|s~voD8LBOC~eR&Ě8EW=P@cڊ5nXG`Vj!)x̓{>s\M4] GLCag6z~"xj*!v%A!UbhcPUlT-|;Po{Q p|a)FԲ iaD+>Og$dTw(-b?ovaZ FƯ˓A?6YEgmS/9:JI %x'ZkrH`_梬L:"o"4.TJ?f'(]I &fM&F}L2\&A;âGyUl{y gm[L(e@gY'tpTsutm\V{쨌z]~y>?_=SH]Hcz v0vέ=cZvTU@RM}!|PѵQnP&!'P(z9>kWYeu*#{qݥJS!!?>ˋފ 0D9 f P̈aAAi|o~1"F'西9m/OFHWL;ߦDo{ ;gsP ݝĮLFGk:P 3ΖB3ˇ={5> d^K"m@mc>8<(8tdo^$l7d},nf݂Kl{֮3Ȥ)r:Ga ~[FdWRe_jW}=86GٰwŅ>x'fU.g3*G]OaRt0c!S$߮E twDi Js~)-X|ZTQe{Jip4죵XJJa'>t-M#QKg>L5E>=>Jh nr"Z̙럵xnQ"X Ef HRx\lNCRHz-i- 8{0T3ͭx’6&ͪEͮ*łS3 >< yFɆ!\άZmj<PC ` jhG0l0:(G yaZij>DZkhnEBQԌW'Ysru2>VeJ袲0(v apyT}ޞ&k 7=u8S=mEM*KMSs7Ӧ8`2˫4i)Kx*HѢ3'೏q[oR#=V+Urul' v'Fn: %.*(<uWmo ] R{_rb&;7ĩMa<e,U_%m~cND0]LEwI.X('()O ԉ[\΍AH*SO݁Vl#fEw$suK)|^ւV8*@v:ݴdA嗃ȖP(>a I?#V|"A7& iga!V[˦W,."zc`f+ϱFCd/d&iEJ$oOZJ]xPf|NwՠCYl 5z%5> cfk øH"qkqKtnZ57b mo016Ȩ͘cʋ/QߠĮpR"q`15>٪"=ijUݓo]IN?KwQk=]<`t>/ZPnSN @ŷ!Rj;IB&`h_ &Zhv/R|⼏ Jp Kښ^xѹ1i-JM@/pF$Rg@ʼj ؇3vM]sIAJQyS`Z<6@vu}>ҪGz|y~w' f6EFT o/Ki#*EO URzBY_ W o :vGV ~,Är}N~ouHkƸSEW1s[b^95Cl8zK)>l8ʏJXG_H뀊Nzk2ýl)dy{U ڏqkX(K+^y`6խ6QDINN]_[EU<~5%1A \ wV v71i{&+@|o+gC"7p 2A%T`O^.pf/8\+vk3̯Ue&u^Ն̕UUfDeh">SJjUFaFn{:@2G़z]?/d1|ѵdv"b65u7BCZPwR0Lڸ"RR*h϶qN?TKC`#0/6+cFG\=6O2I&4NND5D (o/xyp\`1ñH^*:(/HI_Ņ:>e˽҇ذ.[ (0 8:709{Iǥq)8s(m~5A(L[^aR uc5w XO"ڸ<0Mfw?&kiz`5>Ϩ0Hy /K7NTUsD5{p#=1>\-ᑃ-^^6D'k@elBF?2#'7L j@:D0 Hb(8-hsN&CV."1'V}&л`j7%Q@ǧoҹ'mOSbL'8k7mXS'Z< 5ذYv@}!N1O[ߔf5oI&wV1n_N$RZŪ̟ӝoEM398TҲq֝;] Bm\́F%?NZaTsm?>9VΪ)N+K('E6gX-i:ZU []l) yFSk-Px AckL/* b\hi'!X]m&Ħy@>C&Cd:IG~Yf@cïf~\7Su'' 6!"a P:8|pUkbAW<> luզu3N&@NGpè ۓ&.߄x^yu'}W+n,S:Fdz3B6TІkGdw.AZ'!6&&ՙ;HNn1:);Ye-ex Jt2PVTO>)X9kΤzH!#BʒA2왩'}^W ͻٽ6X[©ʌsB[B&cV9iOs}S`Q*۲P}m^li}qDAԚ*Oݘ"UeߺsaM -{V0cCQ,h8ÐX"3 s^IiգOUi<: yx|_k(c/NuCTWQ\GW)gnpяw:s;'#YYYҾL6')X;EAR A qu.掍ib~s[3y'68| [&aOp*S TȒU9Ĕwvj" ]߃$59 p-"7~D?w&&;/ +&)QNAcO Bk{9Hy)aeL"`w0{;_ޏ V|O+K>7-b<%doXM lf"ŔEQa I}Iΰ Q䊊0mb]oJ1f\v7-#ȭXUrf$ rߓe +m|ݗ)(QS"\L r-;&α޻ia@w ) y|[2h7g]MK)osuJgkH_lHc~[bs94_F@-ԚVhZϻϕ iZP:P"qӲ{ $"o$g'R"qRU?2`Bq"E\Sqf_$h@gIZ0bE0!&N&;J~$<=4Hj M 릨RӐF]<-ۼ #qE ZAMmZ@,u7;P-o@>-Um?fǐlTrV-)kاE'8m_{dMAeBڨFĻs~疺lJi9IyLߩtr5H q8~ʣv7 ^th9 n)~QT|ɒ+co;j@RxBKnHȯ1(̻;Fr1.PG; ߋK֒7q 7ЍeIT&eiQ@/Ŝ¦u"%g(ӄpwխ5˾ oh\U%gH}ێpϕu# }>`y(896::I+szPiMK1;Ķ\OJ)k~^: $~EƠ<vD>#Z. /AgL )e¡ M>K>h@ic/bz+(ΉNj}:^f"۽ n*uA9LE B0UK3>?@. sq[$x. u b}Ji^$L;Aӭ4S6C+$GыV£1D=%GQA0.rtlEbYp_>gx"W^ 4E̍Im{il.'o^@X%]bdI:gY}C7q7ad8w ?=;\7/-lP]C >olqE}\ =gn9<aKI C1򫶚s艣qx@PhԶm2/%a&9b &r7xf"Nn2_ԑe3R r7{/O_5[x,nMr]:lh9u3(OlZ+ҋABc=B-lF;hCa( JoBddpeS #m8 %!BC_iG^4!9@ClT\Ksi(Cа`,d1ZR! v&J{׿UwHv / d[NIQAg:28 *ٛ朼 `s*RV}ß35x9ߕu7`s$)]`pr'.w)~&l%MYƗ(yH*٫'-۔]{v$ѥH$Hm|R{IճV6ҿh B9=ËBٚ9ogM dqJ7YdYͨvi١LqĂ-3٫.*,% BUVF/Dʢٙ*/nY 6C~9U螪-ψe[N38lC4 h1FB3J"gma/滠_c|`INUclFcNrGgZcX¬LƝEunmv_p0['?dFG%NI")w3rl-Zr+@ O#w-|V?N5gw/pI]]8ߜ%Si8hcRHMd4 i|+ z!)gnƷ `&)@#Fsr L>=B}awv縚 cU^n1Bsn;"WXpr@^k1mK[ZY}5U'0a)/-RkX 8IYW>hj_nJ缉Jڥ.oX$ĔedcsSW1 ĩKȴΨ?"𽍬T cT՝؀M<[ bB]_N;/FX=.<7 z'B @;YG'|rrK IjPbI$ӒL-c#@40PNXx767WJ`Bjӵ3WJRUNJN dQSѯ>.茪ϖQbYBW@a\W.1ȠNAgEո/DW$KQ($+mM4:u`FsOpI#x=R!Y(~ j`) Uܶcs™w֜Q^+r9T ۻ^|r桷)1`a>.*NHgK4N4naUtljN{|ɮ->0\%%q 4{Co{^G5 &TF]j٥Wod~JJ9)Mʶ+JBcjpL"_8r8 B!Z-w4e%q8ؼ?- (J32bVĐJshhX4ML s gl} 9X&.?xŀPdz 'z:ܖu|P׶:9Nh/72W pBK?A7P<⛬'wH|:R_/@Nj-ClDQkɱdПs=l񭱅b eMbaWUmDIOCU"څ n vP߆j"J# H;Y5-|xT;>g6"QTԣw9ѿWI&K@h!R֪ӳs $LRZFS_K+o^"=BXMW9LT]d:'z{be)LsOζ;ZA9.KCGibpxlb &fb,(d0Wg3f-Τ~*VR]x6Z8%V3 Xw3Bm3b|P5رQN>xS=%~vi-:tqB) 6߉AeʇeWqkKWv -Ս%˖-?8(~ӝZI//9w#iܶKGFGڙsJrr2xrz_!N :( _<!J5H\ݢஒ+yCj&4l+̱Q*_+E~=$D K R0)r՟Ѡa=P ^ג]bl;-C+ m>nNzښ]9).7Z) (uMl@.͈=X;d(G[ DO Iۧ',[}mRÅUʬpߖC%\\(˾ų1?.IiӞNεgͳ{ ,矧Tf(<7vp.DT 7TÞ?J]dɠB -ON(bc杜&;(JYFu-Il>96obakZÎI| ~;%іvu},kP~'9W'=syU2Ϧ|9|Ff[]ϖ07QxIbAs^4nXӕsCLMI~ I=k| :x mzjt6[,ǻ';~ 8Y$KKo3O k%f6PQt9cij0wHǺӫF@qQus̫^,'-!'),ErEθ~n1w^Chv mL+xgҗ9FDd]gGsr1vxk{kGEd azNs: 6ψxnN;p~7F|'K%_{'LଚG 33ն"rb#/8Ո#NF#(\+g :ʷ}' 0&!0/X4^t:OM=v K!-K @ c?K8EtރZ :2p Q씛|,`Y1n~#m˞SȽ"mMcb#{dCM}wGi *GL .9_\Ud@wO/ Ը178_n _$u} k+3δ[멀)wPϯzw9;愺@a_nuUm2t|w(k Œ@z&EH4O 7²P;xgaCmwZý|^_ѥ/Sm#j;ufy[sནrIکmfzE41#;=-S.:ۯ5 jp$bkenu/%t(f-ߜ ss[Pds;([/+G^3~0̿&?GG92!ST8ի^?g?m~AY:l`Iw\#poK/OԎ[H d\Μ = N_}% C!&5{ n.go_ҒLd.Y!NflwZ& 'yjч`>YƼX[E7wNΙFM^]sn9 ^ޑFBD`c[OTLA0&7"@?Pw؛ !]I[rD9na^`?yL G/Gqzy)\\ڗkaipUͼleL0HSkp cV9Vg<5wb[F:?iJw"bL/T d/,lŤU#}cjS 2`i G;*ȁIÔ}"xjݳ(I*T Ca|)ߑd?|ǁaV1fY'CYE`:L]=`Vf nԛt#{Y@f&;eYoOc*>Fn㠆20cvE4:ҶDZG^9g&Wi|mu܉$r)O.`h:`x ]›i4ֲ˯j+Vb-m`ӣH5D]@r-dMCI9M.t} @OhjNw4_VRZ&b(oy03nJ2R(c޸Tmh={ ~~o{Xv)qǩ\%DZBCV="!O{ˆ.w$jPCW(е@`#T(4 $B6z^JSERE8 &G@:3w|'RWG8)2)Ϙr94wJ2‘a~5tIVƂHW~>FS*j Ϲ4H3 6l[U(eGZڌ`s"dFZ&FXZ'JKFE쀌6\yQ0KamI*`v=w8e9'"VssL7mkD[ -,{,0A#)Jjr-Ɛ$gjEVun; Oz.*:I n~Dže !|}r)MtҒ 9_/0aa]/13 {S㯬 ef%#^`V!ȀcvODn~釵:ޅ쎕Z@>~."VI&W7@ 6V׊ J֘su(7!P |g{-&CI *gi=$m/9^F$67s3Y|.0: F渎syn X0/ZM"!)lLߜr47qTMyQբ!PbWqnhu (ѵDQ<؆ۓlz??ʤ9'J~S6 YJeQͰXfp7)`F_F; x&vMiΗX5Jj * p$ Ϊ(DAC@NȐUu0_@@Sur#G Z=&9]R)hLH+%Yc_˖sПFS;B2%,H}C lR 4-t1.9o,5! E:SF)qIőZw>V1A3@FiwwL= 趗Ѯ;8#p!{=aTbi4"&@Y :ۏGNe*`>Hj-e 5hו|a 5 swfɣK ]\ U~/yidnΡ_HJwbWB%Aj\a,*xIq gў:, Dg,Bޥ4.B/8 ]\u~X!{'g۪Gu6XBmi^ΆQX,Tkq$q@A=l@޸O "4*1RQ5%5h̃AqoC_ ~Tp#U YZ7 voFɿ|G@cFj›Mv SB;>JM=Nk:WԈ5M`M/Y//a]U7 H.qh6N /Io'$SiE:.bBϡh+din%GTl;bQ(3dHŭm"׍^cFIZ9HL#XxyBO=uF|)w಺Бb(h2>ߗFvI!Lц$1v˸ e1NCIʂQ|kX˛,*yyWXoۙF;v s6lžRm+^`褒`U s@ȈRhliU0P3IzuXb+×N&{g9&ɓp,9(]o~吱L/RUҞO32˽>qٚXGs &ΝaLQs` Ϗ"~S?9\޸|iݘYYHSGRKI+%$P{> NV@F%O!98_&d:iƩ^dCHr[S9&)vVL"|݁b$x]xp[9$r ciBS[֖ߺ 1R kHp@{ciZC:kiLA<u@GpE҈wsr@}u(VNE^XwY1lɘz 7v,R%Ga0#Dv9j~4_p!8>o81\⡑5p-QɈ? oN;G 0p qC='6XubMy/Ų}q߯=⴬(.YwM{\64tT;$MF9@T5+GPj}3>l/+,[Ai$hqFT(tG\Y~T D?xoDJZ1q]fO9C9~О5Yg$?c$쪷7_y íawt3OL&p=SO{\^7۔feh ,ԂJ! sjKLVDLljw{HcPM0Y2_'Td9egbXT;P8O]E" X҇^1J~P7~k-{fGR ⇻UXD^:\iJQ+U5yhrBFk+(}UY6FkݽN0Qkp}0u1 bh" N3zퟎDG7'B8Y-! {U^5\Z )b]i,aRa#ݶix|VbCma8W\ `7eO@Bai3G Y_DŽ,|̥Qqj@ߦ~2x%'h"d'ڠM!&bBrB(]!js{fIx,?*Ј6ZLSZw8;Ǥޤul!~d q7:7D;S`T75.eiLۗ'#gI˘99188#'dp[YF:[y6BNo{d$[މOƢʏC9l>2K2f:n;4C]h`q|E8K;3oi0W B3W팉.r3p*aU8ˑEpi z]U~?Ή.&;}3|3eG|ĝuٖk!\)|m( K5L\1/˗?4{|Rlj,`ЕKϣHg\g; .شv Sa:4)584Aݍu#*|.N다ogfRRƊ)~bU"gyiOFAWs1#H"R#HFJiQxىd !^JtBZc1 AXׂsA tOUwTɯf-m _Kӧ=2!UɌnN> N"a0lwm9He3j_xIyKz7qN#u-O avӏ]Bh,цZm6-k;!z@JϬB\̲9A s$u?F% `ڛoo[Q$x #7 \5q{bKWjJ=5U1ͳi:+zF1g!dr'nBF b]GuFNXqPAK8CpB' n1!w,f<^\bI ' h绐M2FG"i9~§%~Ծc 0OzReqm2fR!Y͛ s0XejgĬHMlVjl RcVAaFi*N&Pͮ6} t;Yo 84ďO{| / :}pieW/~kX}?Oi\ğru֠/uesư=Ty EL*V 1lTٗeڋYӞe(&v;I@4 }?^b]K6.7dUTTlvP-?t7a&jt=ӬpCGrFQj  ϓu+,V~~O6P2'ɼ(Ꞽí:|gM3\̬:,$?hP216O&Uⅵ۲{B96{&aƁwZBBЃ qd2Ll* Xo#U\]p~. g+ޖAz\1u#|\z^tWHlFjr,Ppj>LY!m`GTm4V9W0RI5\fr{p݃(b%{ 5 nGnb~7pQ*FpqFCUV(ЏZ˔jW[!M"ckFٚz(GaGLu_sVAk`IuŦ4.J#}>Ii.!Qܞ}5Jw7>H$RArib2Zv }a=Hzmktz!?}@#r}U#%eڟ0bu{vj 2=a"i ăqSo_ ~q[\S:_Q/zW^YۀxY?Rfi6ٯP4n2W^8#-ُZ  J~BT`KB#p>))5[/0y[2Z=# :xcDPiv QPz߈;`C&NUթgԀnMk}jئiPпa跪Q(@!( T5CqjVg6꬚ yO9 {ٟBrNBX6l;}@1< N{v(E8C+`Ƭ൝greZzc]&j{+@,r!Z9D4gM+{d+`&L9ID$5}TKs&IǮY9^J` FަKDlGP/89PWt y{O,J5%oJT[7DzoXd%?uG*> `sl~r_TXQnoGeL&)-nj:\BT8]k@p.Z:.,ujzώE-+I_Ԍҡs線s,WT-$U|(eIWc#bHO5p.^2( ϗ\Q)Ily&d.mdC$>~uJ{GC/43G]lO A瀅,}3ڼē^eOSFK n@:@t$%Ʊ &_δG-r\V#z\ aؑ֏"_pYd{Y43js\6k}dL0F w}Zuaݭ"limلD`)[c{۩þ#`*jY彣U\M$Rں{`j40|;k[8dF!w%GӼcҥ}E`dn 3gBДUuoP5( r0ʏK N<[ܽx_e 5KZ/&[d0qtȁ ڇCT7T&PjD5qB=}ܱ(ogeϓyضZY1k,'~1U( ǽ#)<2`JG€u`}qSR_NQWrڽg`fÚrR9Fx>\վ鴵.d^!dytU7nUG4#iQz3)dABT9EҊ]43@xez=^U\k7qC .cד{ISH"78 c6̒qoM/a+IT8Funhô% سn 7\,1G ~jJ.kRȔ;5۴p\PŽAԵD0&kd; d&4O3>jOcTT (5ʢԟЃ\Gd@v2l5S:#2}])qhq[&'ٳ&:&-RjU25-}h,{9  `,?{6Wd˯~b3=ċ!(}H5INct֭`yOxuU3.f(˗ >hMs{yJa4C;n`= me4whoLy|N/Ι&5=E~3'wqiG_w~2'Oimm:Y=+߅;b+/u u}fґ>,YTj<&Ծ3F\&fܖm"֩G크Xc3XQG)`^obW<T/Fm'Fjr[ ~䝷ؙS_RIoCa0yJ+ϡ0 nd!Ȃ ۜ#:j ~!X MIhb^s2zcL aVWTXgvHToN5V[(N(цTkB:hܜ]d48h-a-M@F5F~C.#2LdphG0(zuz:͛ z$2nU7%<l$ ]'ІiѦ3ze \-oR}V\+QXoʙ0SބC"o~ūhCOd@x!M7޺%EG]΁c!;-tJ.=%\ %D[rYpX ;=vF 1Ʈ5 wq%bc&fAfvb6kaW?i9\* h*gnc⯘rX:({l'_P*?zƊ4!'6JIEm5I [ed;hGX?2n$ #uxiOɿ.M|AJ@HYe6<Ż[>Q_}TpOeZ>f)Ս_Ǽa +ޞmFg_Xl ~p; yEr<$z-cd {X}RMf7(ܧS'>{߃ ^3UqWҚIv{C>֦o:/k#.L" MvB' ]тʿBƷ*Ǖ"F;kR| 5=| /[e8P 1d&VSOI'KbrOXL.`Cٰ(pUw7l8hF/!OMJ2[EΔ1$GCem RsMh8b#]z &mOx$;ȯ3j?^Z9&4e- 5:M\K։">ڡmB<}:Br[`zY*,v$ּJ:y8@*Yuo9pTO+>\yթw 1RF W57M̾5~܂4Rژӓ{'Hhb&&]o0pҴ k [S#V%X.HL}P><y ueO1{KHիPe{Ywɥ 'siKUm>\Rs7,MDy3<ڹ3m]W# Sbq4PGX'-=hx)ԟ:8)`HTΜX|JYYћc\`sw]lQS*N9t IQz۱^t83u*KNk ٪жqJ9arٗscWe1yEbQ#&szSEMCm.9=`]4ܠ+_(]b3?~QG}ҞkrHl-iVa8=dep;`8 v M;8V ;_/9@5 ^mK]:1vLaf=,w__G s]f遰o5<8OE J6CK"8ݶ~=F7(hMɅ׼:0e`Ik ~Gh(oXY9Hg7'#^ٶQ_Y-[rTjk ?cFZ PC_gmȬ\9å7y2$z8ßNjuK|tM3I cOz b=|5Dp(AN0 Bscڕxa[>|/+diU,& gteH:!{. 8F_NҚ|e w"_wf!s du10E9We`ݏf*l41wZf Vo0KVwߐ1kN-?7 +Ⱥ&+R@쥋Yy)W2"6 A(j8iDf)ְy TzbU6H[]4+X0]h ^>ě?I CW.R2ڊ8x/<8߸h|ƺ"b[6aW!{s+ dԠ8;Mpܔ?TaSt(:gg-bwVjisK*5ͷ&6MvVac0WVMā GVly~pb4 X<)2+VnySA{738K4vǯ.*fV=)lzԓueB|~zhUUdl0n\E|t_j Ieٌ'AeG٨›.%+o躓.@(JAMK[Pr_ꟹT8B'v+e47P'j;]jJgo:6dywy"ʁ{cfr4gO)0[Ljw]Dh6cZո4z3{%!x\n6\@vL`SH9o<_ZqZA<m۹WBeZ}w%q« G:T[ c-)ܤ#scfV3HYIqfCQBAiDf" G3޷Aqyf1q_Nm QgwfjG2*b"]XDy>d'Sl/iN YB_A`⌦|,?~9{$㙯 $I#s3]ce|{*#=yQ/g! LL[5>!skf+)8L,Gǩ ƖHMOQ"o@M+ y{qc{+-o C`P!#{2 Ik>Ԉڳ<Ҷ1瓉R=E):@K.8̀:Ԗ ib:ौQF쯕zKIFE-6}AɲI+_ķ J;,k$Jl(;,<}(n_i'>Uyaƞ{2n*TsP'kM)uϖ  Np ,`;zEf{9pf~ A3%OY嵱:VAU4 &9&-!פBOd j,vT%Z Pml}p.]R/g#_yqh )+M}aKA!Y@ƕNs=vl2r!(y`ͱ$d aqGr]k[ue|e(h0T i6mU$l=+?{`GYfQ7VMv{o:9!Fr˾pZCds YbsF0^vCM}:J1U 0?TW1<$;`]ޟo|GfЂl1LD=w?dhGX .~ExD*A+yAQd$Ymq-//4P=:fl=Tigjc6.kŨp9y vvj( SgCTvdOQ 20i!y&k. J{zts`|wٺeS*" Q7fϫ_!p+,XC@S.0x2z @) 0=h-p30KJT^` ݦ![|;@s0|Qۜ?TZ${o>fʠ&!|%a^ l}qƇIu@gvӌxLɒ~ͥ8̖_T(T~Hmvvzro6!bqDo)˒p;%L^%!+S)Joa㉤j|_I3N mdL@\u"Y+1#A@>^LVњ F@SL!1l^'.zk۞aS%7RۖG6Jmod_b_(# y,%ȇC*%^QIub(lXXmhbcY?6\/Od$`>%wGZhܢ Z[ S>hk@I5 {FN m$A:xu=# A`7-w>a,%~bm7 44̓?5rWO ߙ"zTCj ]hu*7w|AGCQu)Ȓӱ7[;$q7KՕ(^[ J`1q݋+Ų2F+!$ڳхA{Sg[vට t`a7Y0ل?mP09íB^g̫)XBAiT<|*}/));=ѧ"T{B|ntdH+^y%/PTMBiKY]Xr#]KD&\ECǕSsG\$ 6 3κBczʧخK6PnbtSg`@īE9m+ %*&zSA.8;/Q63P>j!Oq:) .F~޻K]s|L.'2.;+^/93o'ZNR]'ptzs-:I*B*"ԖcuޖA]ō_̀Rَ41Ȝf@iE*qoT5+#aZI"g 5΂Tg;G.}G"8';~;@ Nhvu< Yّ~ϙ4WSwܼxd@,G,c_{ wpTSӞkEx,9kCcQy;Es"G4&q|G<=ȘQ*jf"dh*i^#b9!@"yKN@xk$:) iK4= WKP*_?pڢTI 燭C_wڣ:Ʉ{FQ(?y(kv͆ˎR 497UZ[b != ?ZG(p]%Nr \ K<[x6F4,6BzhKo[tQש6d|@16U_W jN㤭jS+4ZtwYށ& G>qDb(@&蕱UjS{?]sDܑ"VK 9~ |7vz’{b6}waqNN^Nh8yK^ȁ)l}uʵk#EOB z{y>h)QgP V𻯺9ƅ(|jЕ&;47졯S?sJʽ|&z'HmHhz*oráDp=UQJ-Z$y=ʌ/J<`lN*ə qfv>Г{w UGkM*Eu%$MJ3kv#h-ZKCcxJM84`s*7 Uu­0ې^'I=LQڎ>Ͷ~*@xZf#;<0{t%8xa}981۫^ϗvB %+Pr-8k[Y"2_4M52MvJL,5@}8E$nt) ѝ'm7l$ B>Ȧ|vϲ)-jom بp;RJٟBү"Q6YGvk t~N쏞.w2j9\gJ? JFH 쀪&St[jnylJ)Z:JTBxK$̿s3*LY|N6\f\ 5:˨Ճ)6]d\qLxQ*Qw(*?qu/nd!R!a!z")Y`,2}dE^56S">.Rf Yzk1c"qCG"{2cW|KS1ͪ铐ufPx=QHռwk呟|WsYyAN;KT۷F!\Nη\H@ԖTa} /)7enn~ Ȩ && BӍ$33xAֹ_Bʚb:ϘjoVaEx ۭ&ыv |BQc;47" /N+^Kq6;IRVIf}T xp>~#?ԗ?SABq eN@9AK+Kq["_e,@R+]]ul\c%+Rai":).hUһC_,:&{ ^>?Θ[Lcx#1HL G\`~i-/KfMܐq(3~U٪/rEHSǎOX0DMbw1\)k˚Sj1(mD;UUE ~ڑщ[+2Y)qҩ4ڜIq6FbM}6{T/Xпmf,f*dWPT͛2k3?X Q+ {tH%OTVovLLrd4v +] RIe5qz+xM%l;h>A H \=XSEҜkKrGjWb=esM_7Z҂b[ֳ}%Kw=;*[~3kOjuB^o$<ێkE{VdysRu]FӢ (s J֨s~^όlmq(0y.vLNá̀.܊@@M*g+)x` ]=CJ:bX ¸@uwɩW#[k*r4M5BhgwX:DǦ2>C/:ͫfL(.A/qQgUjOQ%8~F\C2e(\iu!$t~.9BjIpN&%:"ZEZ<mo޾VTz_m5ʞ'@ v왟0h+YH0hNc=ʽ{+{:y$Qj׳\ Xq[ >:Ha<=*s[AE|.t&f]:qv [FVFEe& U+ GA@[S2}R:8PNFN0k I8wU}sCD!a3$9MHN;>(Ew Gr|:$_89RTPA紦ztaqaNks^V;@"69q٪r)/>z,`@VxꡋL|Γv I|suCQ+Ni* $8 6 Vv-d\!8Z&ԵWuSW 9qC5NّMVQOԘ2#뺥 1A:SՍ-:\R+PռU (`ߢ~OXNW j1bG> 7oz)"|޽Cs㴜|ڭ3/ "DPKǟLْ/_0j[V^[qP*nSG@%BK%?_7XXW'i\lL66f]} #HR̽$++Q1L$ #{E %waEh6NٯW ʟgF ^f7 Gȥ!TSSM_j߰̏%?!h_/]B:9)jPpQo{ N=x#*'ΖZ FG]ūVu,"!(A=eZaO~IGfz/W-祡֏ ѾGcjytb3W~͈ qq1;tۅ>p6N]VzN l7v=;FewkVs|~q=7{ڈg HNឰt߾_K;2IhF .53êK!:/w-m;wzyi6v:r}匞(t$ TazrowKԯÆ]Dd 'yFjR}< /KHgו;]WJLI`∨R^mD/%H -pkKq0߂,mEdbp:vW>r;R#Z[IByf )"a(As b@N9uD57w[h,VX_>Q |o}NM푑E[bR͈ S Y*6] 9ρԊK#,CsdP&"f ڭE$ )5z~z+#%mBC7H#<\T?+sF{J/lDG3?c K C%i  #*:C ژio]|=eb[) Vjqj81(K3$Nb]oyŞC0.:;y:N/CWճZ,qpjJHQUU)G0R4\}>bpo*~@xZ9QèeQ/fPz]Nrf,KϭIWݕeґ,8|mFG<@I%&@%$lc >5Y&']8FTdd˭!ܷnm7O74'm&dxHU~"Z:rBOڠqt{l/X@XR1n:Uy{&%/xd W3B !zpޚW‚+ξHmX`uEe_a^\/}@Qt~:Oya-@Mc# 4KGOTcӉʕ?$|o 7@E7Kw?Z)cmbXW0rb?RUvd/3t6>O@MdvJd=BTہLksĵEPUJ37+~[h`\*Dz l2$DrLRbSp8w, [ =ra "ɛ|Ţ+"nob˧d}H;!\WIPK;4^ՊaQjߍ3Lui'KI%1ʌ?H7sl#6~t.XY/`h1) kLJxP]N88f4 x%9LNIdN (jV@{ (H3K"@[,4:dk[PeŦBli,dx3w=N l/XlYzVQ-jagDDSM/yB l(Vk%8]VZT|sRh8$4%l,0Üs &C\L;f<@@^OJA!K^EvnW,'OiHm AFF 3Sbz t{9> iƳJPvM¢P:9QooPˉy6QL~f&-Z.ZSP]bjR#U3t g S{?|0 ldwBfz9~,^R&^?'W>X}Gq+i௳ e=vr`LYly?MpZH4ư _s!H-1biܹ4. s"^'fUDآge!`W0|ޤ9ԝ>a4fl8 Qd3_=Df"HpO0~Զ츗-п٢Ń@yGΪ6G?N/N@Ե9\H̙8VmI'wMBO;0x $ewk`q1Wbgߩk4&HwA@\+Wj{@M7C h"JF%)'/$¦GEN븮H*5>2J?[0Cx;qEXsY|۸1^)@,&kTk~>y[℞.x>(1t5k)ɟˤiwAMf|X)$,")GwQԗ'%dmkrS #Y#!Uw32j!Tmᐘ .XNSe{OڏZK]76 'FYfb&ƩP- au6\>J8(ô'KF=DqQ䫙2r?fZipɅ-JAqø 5%胕ٛ إ@J#D{\NT͌ڇݕX挈KNIR3fEVk<|W  .Ev"ZmbGObKbK{s,>DNߝRPh>me”2'7ޑr:.wJd տ EI|nK(9DBmJ7ڮwy~0h`?/,o}oBqpcj]ˉ3Z/B**[|GVF!;,6ܦ|h[.AKϺA  :ţ\h<7>AW=v*z>ךLhN+ɆAzHZVmRkmCve~kC4A>U=ƫ?@ԵrQZS_aRtS0}wgmW:Ol7=رySwNmh . 96Ƣ *)R?o I9Tsnmί,;U3rJe3 oCV?*Eצ[B#nEB. ^T)9fM]NwNņL`Ik͠;&0TƮImݓr{.Uǁ}*"е'w4*8s·r@X-m0_IC@a[yq 8oubC% `Du!A]bu{۲8-iՕicw|!R$zn &/mؤ/n¼6/9yw(t4mT6|vYqsfkPFLY,:ı.i˥SuY_so7NN!|97 ~ ÑBgqC.{0*~:%"d.zզk&o; z3 8iI?sXڴo; HN9@F\k; w\?6s,u I+ K$,}^ܓ*s򱇮?WطʋjS.^αTpXJZ82g'3)AI= ^O- _l,;D7ys3 >*rl`C0"t2㖤K) "E1ikn%3ڭHfr n%nhHk|jH+e[nk@ .ş. t< ڄ8ebwvyPV3 zV5"a!7#^ &0jiZut2$O4VŚ}Wv&ɡOjڸ6<4:ۂ\TwuԷf|3˨u."3E9is)VL`\qSA#_n1xӣ'Kpv8z{M>PB`d4Ag*x髭Ik?Q=,9лWvX_?y/ڣ= GZ cscdžf1H\ &L6'l\Wo<+6`@nVV;wٙ{5ϣ0=<*m ?fEeKok,W8;" LYNQw0S'M gL e``eGuf]0oJ!3j(s~w9nB*9W!ϻh"c%h73Ac1eV=K{HE~-ݚH#طNz / #6޸tȗqc20o 1xm%FkZCI%ET LrgC`xXURqU!#pUZL^=x{D+:i!tFG;Sa@ bGIq( 'T3cp6n(W'k9hXs6~4stZ1|=Ot[ `U!6WOY>&J*+"Dq##CiaęQMS #W^̎ykGhKAL\ރ1_^p 9)8Lt/v 86 MOQw^MqKLSrt+J>n<%SFFwipZ3B;%.xN-mƽOtÃ׻ ^S>*Af'4g[ZE4JI(#GH bF39'0t9 )=4Gd!dR&-*rncsxϛfgn!ٚH-:'!YЀIyJuG|Du@!ӪjCQؔ|o}L^YTgVS&5%81TW W./-n`<:ĪT8뮈EJ9-yg)gm"#Ǩ;)[/^ CU0"hݛ Z8?<ۥ6A\崉X_+H<*s4wch&k61lH&(F;$ y ee?/uL@t) WmQE[Dcq*ˡ!+3!K;vkޅ,TgQSDjG<~.{Ƞ7$ΖV LRM\Tְ/|}!DbTIhKy8} 1E=R9L]}JfrݟtK úƄEhдXnx1u{rDШ<튃PO_ 2E@De9qS#"ϏE(RSc8T2z^ \U\_ 2ZLEwv:p^9Us;|JiY|l ZCD8t֍r`\x#۔8E@p+}'N_Yz?->vMx&GhaXSEm}ʽ? eBht5kA{^pV164_.0()19Ųîq*!R2_8t;SA)Ph'7e^r$u i ?R|@!0q[w%khߊlW'%[+<1}kng/2<1k`OOwC6wX4]ǁ'ք\`wwKUw7vB2e9X[ݝ-'7Z+Q%x^lLёU'E,6p49p& >kL4x#al3#1QX̀l -67;|, UEt,U0bvcUړ{vA_ϟwCz7t,RG̎gM3J66wGy!ALJU`MKZza)@isBUeu *k?%OB$OyE[ڈ;At.wk{GmbA q| ;) ! /%N&PɦB[PG=PFdl8{c}Qxh%<[3O}mYAnw;|KTٙg))P{ Ggg ဒ%djoܟSH=GU|2@wc2:(9cKSH)>uitAh6ѯn4|ӏ.c7B8$v(\Wv@3!=Z,dW҈ky:F唠C*8622j ‹cK,ڠ/J60Xŋ~-+.)q5 HOGh _zag(OQr_3Wpx~|ۺ%f "S:vF b.q2N-]t`4tz|i9P$E{ݼuEP=bG@?(0^UDY:߭eb'&ܗdho1R+ʇ*Q_aS^:L5.x7BQL~Jpe-oҧWdtZtqDל_afK4="G\*9&ʙ>jɏzo~pilۍ7a6W!$oڅ{$BJy$ɧG MH1_l"k|ys"ouyZ^ >rT8%U/eO^Kf͹ϬLj?n~oϙi_r艋;LG,hpBE"a ^OGN"rM4K(+yfmjqMGz;+8 v.$M *8a/oǚp e h eS;iʷ/bO-m㣉LIsXJ[ -BAqF!ZBRrYO|Ӻ=΍L|w)!\A.K.^pѠ?sK+fٱ7Hv92 :J`E|/^Ҥ~1cE{rm/ZS@%Έ 0{V亄, 4q9ni MC8H?)"5B͗Si?; kOQUE.™x˴S&k!Kx ^Bq&/=kWכb iob)~m8귳)qU:yXV s[c+>u"2iڸ38Z[Ts{n3wbvn%?d+/tuJUݦ6;0!ޘ#QvR^K P#FRtߣagjnoƂ=ʵ;74"k wCuO>ZdP0͓=IBCMu=X{;c`Ԓ썙J)䮖\ɎCh:.krNQYÚޔMLN j=5Q0t~au_5 ~Qɟ|+\9V~Ki*bM),ẅ́X]2泅5%{5|ؾ.lhŞH&>.ZӾPU.g,DnA]CLj:Mn@ #%VٶllOw 57U6Yj!C#mۅ6|}%Q| )^j_娈ws @X)İĻ(k>; 'B &-aUqliѺ?u26GRk!W/a(ٻ8 6so<Kb(f 9(Qoop̯D4IսT`#}};uA6rNw߀34iri* StIF ($T+~N53cl /|UiًUŗXq9mD,Xl7N; ÝY$A(rsCk=Lb~G UeUN_[8\{L*5~@vP9]^c8 kKoCm9RޛmQr%(XATg]C.Uǂ;AQ*0Z JFhPi*#"[aC2 +Ebjw/mS/,RN<.DWMH)^ /\߳;ñ~A$P`KW PHOeL8@dQh|>GKզ.Q! C430oEp)\sdWT\,gjו9.a\ѸXVmFw쵮Zo7{-AR{Gm|.q=3!/[M71Q,^G R\~VCY]rbjy!AIH仂k!SD [EdDc*t"2V0qc;0=l)4m5 _>j[ՋLݏ_7k|[(uuDF٥%E4)tTˈ޲97yvTU%FRlk1` ,Cdv;f_<;/X/H„M0l+slM~l~JR\͓'T;+?HQB[spPSF(`# )Hhw3^_O[o8aQb\E.KOŠve3z5n{ՅvFS("ܺ >Hy5tL Z4qi>•8,Pm K̰b>!KMYoW]our>,c:y;kBLFuLA⹧CZ$Ug EϽw8=2 ~.JPe1a&t4.)adGCa֧@2 خp:kuOh)ѡMWYt?E`̳DA6atb,6i! E24ϵ>=M}},],FPS`߭+!0&'iyA9˜T2 q.븭2 钾+"z,#K o.d:j*nr3[7M^?Nc߹R?P: H@a҆BA\*m; 4g{`zV7U°b,Xɱh. =.mpgdGz>hm w͘u?)i9G+N8gx4 tqR[/ !KDRu[+M\oΐŔeykANuM8Cc !=G\hrV5Eq*Hmb!Ld*R]'p*,Ym-ˋrz7Cv@ZMJCp քz<[r6`.x)ji0W:YSM*ܦpsD2QDz7fQ^!@Bb|ǐb 8{l5 |ភJ"k l1\#̳-Ovh[49G`ڎƘ/aPE}s`6 |w;Ls<UN:~?>J(W0v 7:n1PD#z'Va>p/#TtɻJ.8q?LL dP[ko"w=$|YEYʂyfKF{l*)޵Y=\nzٴU0ULZIVۙk0g oĢyoEMg &P +ʌ.VC[[a2nd/̼n(B}řX@Ep ٛV2;D zH~{x:kK$YڬD/ #n\^eM硴 gD6A1IfR/~$ H?u(<_=Vޞ\`zxzQ){-Z dY4:}!v*" R~SS&Z3pP,\W$ݸz^R精,}Ȥf^f.2F,mB˴bXk[rǯ n4(*qnhazEpzkY6)Nh8Aʨrc堋xvΛ@akhWFv?Sܒ9 " |0Ң/B"(Ǫkqdh mۜ`ȳdJz*0qc4: &-B?Yub:-G 9wmI;Zp35Kp,.-Cr֨B=c8+}V1% O @m{Z "bÂ@ * k!s2LDz4y?X4ƃiPt0ZW[O=dcJ 9HAk{kiDJ޿j8DŊCzI^@$yΦњ}SnBQ0KPyݟf5w?MSj ¬iggaH]ӓbtG(YSTY@kq$Ɔt\r 8帠&a@Pe]_s*z5=GAl_L>1Y.^,+Sht,/Nk迻M+'ΰFyTKcT Qsmc7Bv+-|!p.T˴oÓ}B{DŽHIhv=+ꌰ4 Y*8Xl ,Rr--'t+Mܺ3O }V.gp5uEF5?\D BӾ*+!+?4qrmMu;ob|2c-Q-,V)Une kBq|;i̾J3:nkg}xQTA7tJ[ {Bu#"v^Clp[3^ƕwC}@E0.' X -dxvSwoww$rlt \o6O >?_p3'C ,@  Ұ EgYdޫhmvAno.fK+ig9'8 4t&a@k#K'za2un#Q]l[e/!C;y]_j}:̞$Hg UÒ #z/(^/8S&v5&xPDr{so^s(m~!>%=X( mѱ^g鴸nڎrxSIY{MҔ{,wTX|@BFrtKgQ=+g`Jy0V;I=T7)ңb"CTs(. jJp ս̇Dx!'G.*u֧S=Y.)Uָ}wPW1$2-~vKbQ- ?l8\1ϓ0"IW[ŹMН/u3 $yK~A8|e VGTo<ZY[&2͏-ȑb\_ /̜~q{^}ιJCۏ"Hɢbo淏d6ݨapr,k?Wǂ" 9'/ ; 2$)M5Oa Wb:o| +F1S\?Sg #mHsY}8^^ vŎ46]׍ؿ<9K۱`&=5*%8#?J9 Q%@J.'unI0exciZ@k L V6+N22^ i;l~lex|@-,ݺ&x"}iZUՠ:foHejdCUJ[VW| ]UG82afmW%0;|V@0?hzANn-V_MJ``x{z՞71YZ $l7݇~JOg!fƣ5HdX-@wUpqJʧJa[V|N{ 5oٔ?rbA/]\q֞e,R1bB=HNvҰQI(ML`5L$qޱ[@x48ƦŸsdu XosdF"-Q?bQJɾ)8S5-YrdTdnO㍱50/ɘ@x3jw~={{3MVH.ޘBKHԓxEzIG?17.5J*p:s<$ Tw޿O҅IQ7i0wͥB))):f5sUwx̱jo Y|[%' ?Hdx$!V*QHɚf;Q4X(PŠA* yo(,) g\&c͑$&q[nYӘIAj ɝH.*$}X%6m\kOw1QZ}Wj/(sr>)fRΥ" wK&Bّ#bđ.뫟gJ:۬LLUT%D;Ɯ/K)Hk5n3ؠu g:Dq U:oh'83>=pM\&~<~ďHa{+",^]oLɰJZXy2?Mk}-Js$^$ޥ{kmAIY32 :+>6Z0R6Me-{2ݓSG9,0`m8YEE yD3*۱ILvt;ty4K3es 4_@ړ\U.hә1B&ׅ!%mbȾM۲ >+~rS(u+*o =J[qSm45S-:ejw.{I lu?ؠ?A'";smq ^3a$i< ۷0V i).^# ƒP *HX.Nm kShh|,S)GҪtRM&M$?'٘]3|K^Mbt8"8&|k) yX5Z̏ѭi!J|sg#l89 fDBAr|G) o)4u|$ekL.~ٱT^w̝v  EP:8 Ũ|B/45B*6f&cP Hi@ G d rɞA䭻p sfJL#Fr%SsvHyO@3I4/8;FTHf}nՅ[Vj#Z٠DWM2S pc)U{\;TKpߤLgRNyeps- pO@8qtGvc -~tH4&hJxQ-T,(Hmۡ3^2{&rdwW.' >(NF: UtMrjKTl0l&Qg5 wIv!)H*$j/- *[1MkwܲK5q#n5eØ&qxE#.<R=rk}A*4Rz,4BBR>FIdf4KEa i/ѭ}.1Ḱs q6%;N 0EUfZAVSpucT퓺f8nJ=lg$NN7ς͟b8zBרtB_cl|(\t*'hy"uaшkωgnF70UݷDRxWwU˸vO6C/@q{]kLxc;rp 9F&ZnR; wV%e𒩀3!D)z[( -GΫ)+ mc=\-`nWgJ2/ʝ;Eܱ;~vO‰UZmyfFHͳ+L >MgHvc#߿{2|e*@¨_z;KƘ6 9`r#3~zAC֟@~av2XX~LDW]>(a-2jc)Юkǒ`F7+Fj_^QEKwn1'6a}5}ׂ _K XCnc6L2P58V'W.Ft2𷥷r S)s${@FR]I XʴΕbxR39D$0 dx2"t`Tך+) _-s¡3K%8ntAc!cB7 y6#i=][Φ|!z Ŵs ⢡U8 Wq&۽? p1%+SJ aDO.%qf̬F)f0ӧaKZp`a@DQ]d RR]̭Þ`"Gur+UmXnw1BX ~!iS35 h(]ʐIz=ߕeV(E}Rsw+ĒI?rb!|I>x>$ufa)IlJ^ %'uв&>%{l|jSLudVm.'\1#6yeoV|#]Zc("i-NPI fjiVB݋>={P0͐X%r]Âb%p S߂b\rG4k ZeYZ9wsOY$H4J.JOxP5 (DͥFmƪa*d%zA9~Qۊ/(5I<錳 , ̺'迖1"잚:4v礢^/VCb*9 /2xTSGx6# "*kA(w>Cc3Ĭmgrn⛡cHTĵ- n5D?4avk7Z@%@?"* ωeqh+r ,h y;F0'\%2GyoapK-`1ulKR4ʞlw߃sWDt0TP |(ѝw,}y(c>1/(2G*3CDFE8)^d*j=2x6/pzToeY[!I@B7>' lʪ )\\Px߲'2kZƿr#PUS wObvⳙkNɈˈ77R2c0|׊*~yuC+/#85+HZE~zGm%ïvs'~]2Oi<-F`P7|·2]@-oT~^BGGU6Avnuy[WVӒ{6_CU*JN26/w3^H.X ~jѥ@"-GVE¦"'S{U[[TZGx=zv728m C\`l2aa~HzXٟmC3 G@W%2eRms̖%;cʠsYP\#Û[ }pQOʱI`C (zI6~G2GDJA0+B! 6Q]N9|sH!cAk& i88޹Nv ]H7_u{랟X3.Q[ w`o}ٲ͑^6ꅆ>,/K `"trf-zI4Z$m/E'[1lRGs k}eV`O1Sls鐴$+u*?,}V#{`)PnvL 16JJ us䏮Nkc<]ȟ{l%b<fXJ0 ǠQK p gKWԳF "@zXu lƽajq:}F4a滃CE"=ŌQJN$x~=w 7/*!|o÷H!XȀ ,&UWgZdD_Lj!ܥ-]MpD9䮜Vd'TX}T:tId.w(<#QUPHIEiC>NQgQ|;oD`2}.̀3z!D4J X/Ow#ɇvv$pmr[Zg,Qyxi(aЌ#@80b5 Bes,7o9.Hz0PT j$p=aǫgREG amܩ>)Ȼ=9Xe]W>t";Yrb b WZybJSZU Eژ-qK'DB>vi2a-s*x0XaYy]=J1TįPc Nݱ!b)@R67\g”]PD7t?fv%U 6p0 z5 6h1BG\c y[ԷQt/um !V7 3 |͕OsE/).Ġ%hEe>m&r=uTOIh(|+k <0uIC3 /vMB$$^&Z %: |n͜SzZ&6q!@z;a LQZeH+ofjWߎFidt%\kQU=d- 4Q-^#KHb `7-ȯ:ˋF0nhlSy9)BvjܭlԏU!;YIdK@@nbmJʽ?H tۧJX7qqt;?+Ӷۻ! m3PQNg&WjЛi9o8k˛ڬ3YS7椓oJ nO5Uf&{iPMNoՅ&$^Pb:? ^2K:\j(~> >1hGXWM0yVDQ䩲x~z~D6mNv;>r \ҹdH>ohOmASf`01VK~m*}E#NZӘ Q+) xcȩz|;KKIA |?}`UREE7Mӳ}hgf#GQO&EPML"m&Ə_N엣|ߺv]:7Wha)wLbAr/# >kһMڈNmwmc ~ƣr3QPCahf!{zgOj3533]had5=c;}m6!৔,/{$J _7*B;WJ)v.򧖆Hf]dU ;f'h3">e;; Nί)J0$=g-R0!c >^!x||8>e_Zx sQa?\̥; ul|8)7zh+cMۻהFp#l^]w'3/SQ1+҅^8*ZɔmOED8?&߻qlPf 3[F9MLWOK})`q3n/@_}u]Om>/X'nCRMyKf@WwǺ>b0 'kNעr^k}7[FG.?pM"_[፽N—G |n`e^h\ubɲFgL?&V?<$!9n5vجXm:tߩb;"a!P jK?a'l{BK\4@e5:vhX -bDG"^BZD*g9~ﺂ [AbaګeT?6}#CfV7Y%aC$2L aмh' s|ڟ;&ӷ>Z%4D7/~!#' 1zD˦+g{uZ`7 eW C/zl xKBh틠 iA:hf%+Bxu/GNx rsmKDD<]D>0 pМr^fԭ~j% ZAe$a_ 7:[ _Li?||!!-Sj˜8xzPG lDGw)" Iwۍ}%zt٬&6c3^mD lrvΌWThlx\eJ |9N F&fr G'XMQ f@p#=Anߡ7K&:Nc3Ԯz,/*R;MK|c;2HF"yq -M .5= ̲S@1t\;V!T>g"Xi ^DTE;Dl^(L{b$Z4}Ɍ*s1`-Zr MQ!C1\I] -wv1f10]t>#! ]2=$$33Ajy Z/ux7&8X)H/;:֭P(&|=N%7+X-~Ccҏ8}<}1f 8&in *}h{%{Nj`!6 #.Z&֨K|#J~LQM2WMŬ0JeLH>Lp/lu'T [E%R ގpG#F D 3{mO7|ǏD׹^ y2hyisr3 D?"#ۢ"^\Z0gl8Hh`@@_`d-Fjm%|vT2~5T2fzAk`s+H)G(c__fA4MB5,7MyTׄzct|U#a奫s 7S!'2]`W-MwuN %Ek fc#e\lvR$552ύT/_xecwt|(l=vJHsLfk˖bLLJ|t~N_44RuĨrԆ,݅Q|{`iodFwX_Wsdeq<1lH23[ (lm,ە, |Zء'YD64k|P$DC=ۊ)ɣgXt U'?r>H~8I0sΠ0k9ˁDËf\KNۂ5g_>+Cne\[QsHR®m-wL7JєmwŮ9ڋBG/ l銸2Ĝ=M#>wJRșQkwœfK,c"] ?W%dkz ΖZo yM<ާ%>x a<Q$Xc9.o!X_S2<WN İ /:ITtg^ǮA>ifJ=-Z[H_Ņ((';T;E RFޕM3ҺD{NaOf=Y #A 0\_}oIE |Qd?sS## ѲЃmT?9 ޾r H/S/`rI&Y=:.V^.]DqܪqA¦ؖtUM!}"\9' {+c΄NV:೓NJZ[|)EQvleʔ2fXab+|#QU+kF2`?|s\i~\Gי^Sl-$ (6xcsn oЦ 0w9"rSAWw$<ҙ%gR\*tTbМ>%҄+,'r\!*8Yj>P )S7as[3c¤6ьTl:b(t7C=oXc*,ԜMy\޽,~쎈Qƙ"rOXA^0`xuҶEkz!ڋ?,^$ή؄lJ>_l:>Y`Qҹ# c!ctlng~pݚ'ctpT ,٨@9R E0И}7#9 ڵ1ᙥ liWu}aȹ5U+#6}&>>"~gZL1jl51~`Zz& o< f`*SƗPͫJ(^fE }4S p̪ٞ=%Au1PV^EP+ڗYѮ)@b_1ķзiz~x&?L+zucc"8PGduh^JdzDh72{Hh͒. }.wǙ ,庎}8u@L:9z }%A {! H7u0`Vї'||)bVEȘ8(`] ]Pp? U@3-o4F5y+,Utm-"3@\k1E`X~*? ;GS-i=*Sy$-#/lg/O/|$&$,44v>Nbkt;|l c~%w9A(ONNUJukZZݪ-|M,nT,P؝`|U` l3q"f/c{!e5%W?ԢFglHR-Q -.MS8ZWNV`Cdt: WS4Jy|La[ԫ"> %{)X., Po}1LGO: e/SnuXEӄ|?b@Zb.XU$D6Ѧ`$?#܊Eu:CAP7ϻ ]Yadyy_Bz_@NYON*\fS_R4d׺zFO}"-hx#\rHә 7Nv(?7܅v=F 3"T!9yQr1G-N;HFE϶$.Ŋ eqW%M$gYN%tumN%\9WL/? D6`6v+JR58NS78P>PԔ'SGt%tMGor%BI[lmDH4I*03ea'&2=WSB9yWJhgy76Ul}rxW 2,+XAdpGԙl X,H\Lex՝{Zr~Ӂg,bCES}*^j4d([U$@Ev2O (/B*eQ`o}+;S`X~ eJq=.1;ڝ]vNb kǵYY߼̓9M !±ES;cR@g%pOya%Ez3׮O8$ț)tٲHgL㇉kq̍נ>uynm 7)~״|lnL RZOzuaA>1[}hj#)l@ sBj6T[efUzG^"pib + FZA1H r=LmI^ a#_ vO-؉\Mshr>Ke]C7?MǀM >>vNROE>0֢H24'y6I9/7(#;l03WsG$0O!9c]z>%S0,;BCEu{b8"M|1zjǃhˣP}Xx v`d %!-A(@zu9jWP(mۉ'ͫxd`PŞF'S1 ̑65J2x`p|E"qW)Qg s&>v;܈AWg%5P Ttą |:e-=$>>"3nC3Ϭ\U5.j0ff ;h[rFU{4􄖨Ldau`Zy^=gb2O$BT*nk'H"_ x;xHǗ~h׸J(`;1jJ O~~\ǹzT:"Cۿ CL$A@㇘KD2"7moDM"׉U ve]2&@RK) ILCr2OXU0S -#&8~t͹v /R1v Q8M>>[KSku![ 7G/ʁ3o/m[N9ѩk,W#t{ "؁Mh,EaA ٸi3-2{90t [ԱdFAo>/efHV*[.L(܇yH}Wx3ڝsY7Qlz.Vrυ (|1:)MB RxiF.ϴ=.:̴ow#IV| \w t2ԕK{|'yZg܃޶ }d3c+\zo^Zpc:!8dYA2 ?Ǜt5v%3ϖTO!F U-.Uzחv +BPQZY|O,Vs/V +-QC)Jj mYI*x$ul7J~C$9bdo89 czp0S+ 2O,fF{v}z'_6g9#ԖE+D9} Pw4FviܢA hs:Rl|V={&"-rX8ʇO)(dʜeVSѶOhYRuHAcMNGPq 5(ɬʝa#f`D6Vw'cڽgqupLVIͯ|AiX#:E%PLsF,eJqXCIkN* sdUIb>n ys wXNg#o;+JN/YȑXŗuaDQ{lmTjJsMS>2z%I''Ӳ~:3lRFjeƆɴI&0DF-`Z@O4,(A,\Ꝗ:ۄepΚ_KMGcr!b-)U&OakJxPa8¿ I^OΫL:@]:U?uŔf%LNjaԲW~iIYΰ^SNjkKEգRٺEv,aΧfv:4n )Fva` my=Rcգ%@J|,0~N_0tH{3\h>p>·\HUw @xB~g-OJ+@䦛V oF'OeWf͉~mfn1\B4g$TW aOPWPj̼wqyD%m_l2?QmevB?e&S2nqM?)r }oUvVcs4?PԈCZe<̏+&9Sej c0tPOL>`YLIG>ͳ$]XBPU~"}$uW ihUghz*?]&NßGi%;BDԓHLѶLW ECtU_S<;X| +ukD`:3Ҝ"݃Z-nvq.aefy8-PD ,z^4 eJ)ft|جf}%9( 67* ѤH%p;k^ŝӋB%=G> 03wfM֘O/zbqm+o05.@{G5s°Sr%} TĚ^CdX[]a{Ah")[Ie כ&:w˾m:U~owWcxEw#)HD-]1qz i@ץ87}4(6f+ ^2_|rcrR5 k"gc*?a $τ fGBV@z9DyZBW??XUU}19m-iDe< 'BR LJsPKXH=v?yI]qZgzs̈cI7QkbHIyNP1WL-6a]0v#k]9/x; mZ tg$ncpClŮ .wK_4䙛Lu&g'H!CZhkęѾ6N&C^d(( \:S.צ"L4 @l6T$5xDf ґG\/>Bs oeE/ 0^^ZnROb|JRz)ls0(hVKn7 b2AdxGf@P Vt5BRR< !f_V*,^Dٮ^7YUD'˩%H:/kQ*P_iu Py g]4O\6Bre wFJ`E/Kӻ@ <;U5#Y?:P4H_{Mxzd+eC)QUt/b7\3Ya؍po6Yriq 0=9-Lk!` a$`%E]LbqݭoeKE'lb4,T/^;J ~.JDۻ>l9Y+ә,sW>: |w?cYW!܈E&moMjf, &?4.;.j!*N@sj K\B|۸ >^C08qG܍?Y=hS?oeOݓZ6.+rj_FcX_NnW_ ^ W-?ZR[( "&oH~a8KH-'`T9ۇEhAD:tӱ.B fC37$>|Dl6 lIǵ&|haֻ>!> I͉Nk<1rKwz7ѭ.MRrRT ׍=Ɂtre2-TcIPbJp2Eq=`J`[YbOy &2&,}C KOw(L&i Qx0Arn(gRN$B*Q GMjyx%$enT%Wir}J0(7v+y#wɻk)`i|:s 3N\ a[9Sl)LBc{F]|BZp:qX[N`{vDvZ梊R͝m:9ѸͳgFW>EۗڹjD i fA_ {;֭N~;ի3,UO1iPCp˩y. 2KPiMܟGqF[$Jb@G#ϖ  dt soY3Yݘx;&T%<\9zg:8謒׀j"o@{M#K{rFgηp;o 7hfd\xΔr-"Z70m-?+XR&bt9[A|) KFfV| }O'˱v̭}g#У sҒB-,b,+懔[T-aA0 4JTtƅhP:DnW!)Ab/,,MT֠2 'a"JРAnK8O$a_?43l%~¢K!6{?['׃&*"_mNL#oU=`}ʅ[IJ`Z*XQU#C([ae LBDI6aH?5oڌNTPCPfÏ+KYm pRfiٚW˫:.ld٢ WsF.7}ܧY8Cށa"x+PZl*|Fa* ֳPS yt#u-1$#\\Ҥ^'OUm ȩ嶴O^r_?qQ}(@{͞~[-*OdUV*hY')تfdv*C_ZLml`LrP%n;K| 5@zu|EL2Mn2&|$x~οG C}9J]`h#$„F֕HQ3(5>!nȤ)ߋ̥-a&QKO RC ݟ ;.`JUє1ܖaOI Blj62M\gvO^+xܣ 7ƠPt@&~V}-'=͓NH;싫%<<ա7c,֩n]^7|סZ˗ylYcO^,̝ʞKޱ8f{6eT5Hin’̨ݢʐŏL{ֹ_in 1lw*  PY\uκskW=Ilm ?ϣCɖ5aɅzj {kEViifݮjMd qeMM Q l|KM6k+p;ߣCЯc5ynF pjC݁ N /a]&ډw9Щo"gaFwV^nr=.J(rHQ,9'`^`Xq.Wͩ0p" Y9<]1kzEV}AWtɔBdyN{A}XIԮ4V#F 1B_[6`!Uf68pzs{R,r = jz) 43VUi&wjeߓ='S8Q@`^Rו55Jlz}NKL ˟i d(RfK7{kK;#h2 H2 Z'Wir"{H 9-PLYI^b@:φ|̓r$>[&5T-DU3q=a*AYZrМ x߃(ey0u!?5RxJr(1r:Ɗ`n"F׈CG1?VCprh\u0ե!ᑷ!w󁩡T[sxZ2piۺKfoI =%: 8mO0N0K1i|z8](8{8gzQO卵i`{h2fo niJ8jy?YPrFl#?'PIiimOj!t tMO+mIz5%#t{ʽW1If\ q@^g-'BrH3.ra?l,L}F8glVUG)AԼxHN>hsLF~'Y>]FgݸX˓RA L6؇Z(}Bq#B1#O\ ckf*q]JpgT?r׎-03uiZ%LcddA$:9aEp&2$L#sξxӜZ"%`\ F/ɱkP$"̺hl>+nZEet&hCVmo〷 :^gƼ鉣E9R|}: ax߿Qu8l7/(``_k`מ6%66(W]_H{m1&y|[0t` +)!VJo)l.hs<3pVI' -^돜YA=VaZa$ٸ$Q1NW؋3/F W2%TsС/\)`nLDm@ӝد2\)!,&]IW?8=ͭ#:>7~ +gxux4gQkR ekă s"̇@3PxA5;QqV\NT0~Ԁ?N(PQN wÈrNO S ;d94$9$q=;S'--&p;/3*p 7\^mD' H Y{W<{:2wټIa]c(%^9Iaﻊ&__s=MJD3ɡ2rجXC,INsi7(. ͅU.E ymI'iJʄ˙}׎8y_;PRpZ`M&^ 6/ 0 Os;O-1@$g[_^bǗ@K^A'=*:*uDj7,{Y.ŷԂDbox Ȯk6wInX;oK[Ik1g+ݺ/mKOr>Þ7? Om.:ֹ7PV7ˮi_M@<5|wCBe^

'dhNmvTJzVx݄@,C?;JB-([7Yȕ r@2avΖ̇x@9o| pRL%sgND~O^|% n S>>O子Wii*I~æft&eYDqԮ=c_M&YL&n!:s#IjcG*| ȓv3G 8A#{YVt=&( tF_gFmgNpx`ZĵآL.jg{:,w Dexa5N+BB2 qLw.^I?4y%@C7>Fr]ECW K D]E 2L y}\DfbǙ4d]%xm֩QAD nZW<2y;c_O]oC C9;HHQ6tfx)'lb%1ZgoAPɴyi]À&%XAy06OΉT?JJ>JipPA2j:~03:KE#I)Ob 9Oli y 8ƉmVv܅W}FCzW GgL:3Tj؞.ǜ*LA3[˯٫6V\Ε]t/!V}ϴ<yz^AN/$asKnq[d 't4Ij֔ xRp'n'Z?Cu}ue" MbUj&_!iwYt¾D+%v8{kyR7 i+Ӑ<.;ȽA`dE1Yl&VVΛEXx?^ʠ:jvd^,Ot4voΈGAR˜_n<{)dv!q:9b``h?3||؋N>?d2?Е2ﴇg5m*BG&pTzbSÆny/UU3*U4K8A#7?tu|-a^;J]Q19q۾|?LwhV/DSRVjW.3HV~{". xHqVFz6"+y ?&$hC] 1DfLw7d 8k(]q5Mh;rz{h[)Zؼ1[ّk.B%{ z,_,jr7p}c8T{:/z oRa3 ДJQXDk sEF:f43Q9&!|UqLVxxP4SlCXxQ*JcLpGQ R7# uP곱bB[)%?A+H?!ZzW[DAQuY)Ge?xo|>AHG۪P҆%+e1. 2S4{ ɔݍkMfk :G4X]$ Fハ{Lj:!6/c y @1DžÈgtc"u;eTnUjb޾%[眩LƥP ju? eU?{r2&Fr*{,$:4HfzmRss0F W{9orkT~R҄~Gol8gfwIm2^W#JJOR_+cCb dT )`#v?{E͎. 乙 9 ;9}'E;dU.rS]`s[pu u(30F˨vq, M!2=++ғm܌AIq:*|3:dmw Nʯ\~HnE\-j⋉a7g 3' ^2'SuLy)^1'{ RLqtVBd?4ߌwÉK "sA߀:Xb/;6|̐x~WO=OM Kj~"& 1O H?> P;ɑ+FN3<0@G1 ^4 9݃fj %#Y!kJ_DC$Q̕@pYJi\f|Xsnu^^g y[8A#Twvj=a>֕SEguiM zȔC%1iE[&ŸWQ$rѲLRqVt4}I#^L"~ӰR"J?-CDD~wTڑn3T!?d")x$AmR-K媔 ާLuyV…Fo.F}9 >!n`6@g,WusF}%]]j?, 7w4#92@h+,-g!js&^u:x8=E8?ݿA/ *!(Όm} O!7qօbo(2HVj;oVơmBGmC@GxWijSe>s"fd95OY9^{|3 @^TgSi.ǂ< _$w 5k!퉎sPtiR0rɵ/Z=7MRjNۘ=R:B-vב- BàJ^1C-YI5Ѻc3&P'!-Xg3_4>&;ݺƂjD-n̳9>?L>4$Աԋ`=?jN }%QAl\܏ݙynބ#"e;ƒ544`KW%$S7pwCWHؼ` S067l!@ĕd)7=N>];+~H5ͅ\™3J#`-_xi=i}$)miF\rsJ'uxA?zEƵ'T/<!K*y896@θ4FBՆ6`v"I)XAiAB[\<$oqdnrLYU']C6l*EW8Noϭ04)Jă_3(;Q/A1D`#-Еiߕ+ -e{im̢ f ;TY֫Z.2Ȩ8p'J SYmZv46FDTwkV8Hʲ'$=3$Mʰt MRNJWZ4%" * g~Q6յS2 GT'ߺN,SgS^tAg޼K ?WӔfFVP% ~qd ޲͸W=cue(áUl(Ǧ1Bۡ8Bi`4+VY$NRF&j׵n>jafI12zE,~QSؔy$bjNO{K?g\ 6׀l8aka*z(bB_%)mxz=r]*TV&im JW'P.> " JF^Jg@ިhi"whPJ{,$lFBVd]R""&PAӳsK]]8!f8`sJ%VI3G(m rq(;/S~NBFc8A3'&\GƂe:4;Uj)r~U7эqWte@91t^Wu/6_ o-hrOw_cjMߡ]j*ǝݐ6%#*V.C}~-l6{9ɏ Ohe&]X>C dxvNHq솛D8e#yb$-G\f,m{pD.֗6l2kBަaCA FB(xG@i`Z QAl9OX3P?[Wfo+FHd/ӾfˁtrN jo*lD̂ ɏC 'qhճ}:O%`rN'8F.'݈ƨOm7uD:jIE_Uz~Z})mR#3P<~zԉ(ǡ#&KM+7z0tZW!H;+ݍbPԘ[tj8VP-ia8Tb|pm-c",6ϫ NB53xҒzw=H&}*:n=ӂk&x)pW~:.kwNv2O4fKzLq9eV6V T6Q\ N‰vCY0.KGL$RR<[Eb+l*OBfC]֕UNc}%v+KFUB.񔵟Á]-ٞ L*E6xX00`k:>[Q?_.fDDq Kڔ?{..(6.H Vxdy%w: ũ%".W'IdxpcBkx{G_,HYy E1 djJB$l2qۏ2w86Lxf0$;6;@~q(O4Ox+E̅/&qqַwm,̊0T&)*-!%tݚ7*iس\<048\k36)L.HznK4y \/hƈIy=o1TKŋ*1F*f&/bؙ%hF<¢L>:Z?z\< ;^ۃfևeNF4eOVP%y+"F9k.TβroQFOvuh /3<Щ KI{MS_4 o:x~:\,}ۀ%14cɌ[-BEl^Oup7Š(Ii`qL t ͸"k qX7Сe#}]߄6rfȽ>(9ٮ}54%RP*;,tLJ>Ӈ=) -z./=f<{BZ:D~{Uʰt0X5S %\'߻дLE}L 8}.2?^f]C֣8)Sw@wh:yhUk< upt| (=p.h'#M~Z6>P6DɵRKG[S]ncX` ߺbGC:"xd0ŖM Ŏ5oJQXjR&4`uAM!3DƩhb9g4X@)T,^gJi-{( U쒘zlV?>T-GpU]1ֲ bB/=qm g01]^9wβd+Nsb\sLs#?`,~t^ۢʈR>H@ܻ`e,о2g> (O3N^=V˹&&HڋqFCaY+`Ap4 1W" . dM{m{1PG-o9ˏCI* =UcJx2uO0j'bpS(p\6?A1J!K3X1\vWgo4,ڍiz) kߛ/[^d€ݐ;9úҞF4BcH\,M/$'&ʝ4cJ`YӋhƃL2֟`إRbeTHiYc낅,ND=.Lx5n1ur*h%Z#f]'g~0;)Hiцph&ux cWɋV Gp.KqcLQ䢀٬X6 W9MVA5ouNy.ޞ ᐫZ=rߏ]Xh$#Mbg3L-@U0'rPiTI.l}諆> 9N+!>RLLQ4Q~]Fj2~&]!Yi_L[ya݉19i:۱Qݗ+0Ի~B}7}k.zqhݢQ"#0' `vo^n(\\lP3B%g?i] ]"W |'_TdC jk|IzAۚ5NR/c}1KW< @;:"W/Hn%{l3w`<ٿ0 [ (#9(spzlrGu` Ws':؇Uȯ0v*[qkWj5fJ1Ddٷ0X)9,_(i%8O철)Uѽ xw(=QWĘOH1@.}$b::Y)~mDj_by dέ x) p GSyI/O{ZI|vXdrWb-{St~bHBIWŤ"fc`YXٶV$H/,Wr:XKm x|KZ9`aL TLGƒvh:fv"XMyuqS@ c/S Mvpg*zIL3u`<t1HaEd)lug( !1Dӊa^_wbCIVl)-?EzV !EїMxm-VKji((o>нNyd yϬ%׵/([J3\-xd_l΁x*βo8 }+x6ghTOb (ߖsJh_ℵftB@b0ghX[gٺ:=*`ƾk2'M\Xr2[OL'QBK>BUMR!ǒ2<' rv|R΢ YYR Y3KrFZp^IL/MZ2N*]LdWO+N`'Z&a0_@jcޒ@BɄOy6ZBi078Z*t^/K0>Uֶ>릉tC}a[fڷ3dzZ y=g멸 p9O;Fep7{RQ0rX翕LD_|[5`D*C|k:1klVv~~ComUOV̛e.5p5^E24ic/Fpc,Nnd/39b>V}!8`CgMoo۲h/u#JHw7V뺸I]sSy(OXޢݫ HisTR5k,gmjuyM7 y?gh{^B+MfێW{ڒc XMΠp ul9o'/'I;>fzUee,Bt|(Ð.\kxs("桭]h ! P;`Buu`*hda]J1-W6Qsi#񀱟)RhP1꠸WLް>7P%[L'kuZw $eG5۱u3l<7dd\+Ta+->`b@R -0% O?^*!{w׬C7mrtxQ؆T.TeV=SUC}]jVRfWahLsBJzĭre!T~Z_\[e<&KԬFTlz)}+rAK<oƽ'=0[h< fuն-|x&yèЙHa/8E=19)̦XcF'Gm78^ X'zC4k"kBe E]TOz=x|YpM4h;7d>Mt9s V'UJęeoT3Iqߦj5)FHTqi֍g#Ǭk`|?>NeHE6$tlormU\ LvRE$_2rT#^|+FcItRݲDj~?!RuF#>8ѝ& Om'cnr%0x1 PixN(P@wVߖ ".J&]Ȝ䆕0MòO@Jomtd(-X5AEz`$ϓ (Y|(D?`x]ꞾGMBl(X'by{"A>V_MpA=])2K.2F,1Et}D8#ͬw/O4>_7<:7R`/u'\(tjKK#0IZIxv[)ӌ8M{[ֽS 8ϼs9NC'fU"Y}G7,2^3r(JiGl||3cz™//0>DNI;a#YNֆԆz`a5lWb .*K+q3fVam͈)2SaݷMQ§'4r,- rAe@zo=j~h2zi{Iat jgyƋ߻;z)_Bs/4UEN P"hJ3\f9s7_%6|%#:R 5"Hz4$׀+%ؘ"vB-ZbdiSaVHl8ŚXWr} ̊X-=} =Xf}$F<#7w\ҿzx ~FR@%I+~ ;,5E'0gRRUu kt5rU\^wt@oLN dcp\% pUs #RA3n r33٥|h}8!c*ٙԃ&_A_ZG,G}Ev/ś׿m{1FT6r,M =NUj]B٤Ӟ9CqQHm#h4I?9 Aųaâ:?ZI>xz8MOͪGNYCyR?p/#FWK& 1>5#j"-IپqB4O3GD%f 13A481\QlS8cMxH-a 淩C[&n-Z`Xb T/`.9z=0(9A5ER:a}M&p憴ڀ ɭ5x%;w#SCH7KYwOЮu8j_]ac N[V땾hoF:%>y!0ٜ,71YI\Φ"=:ӣ 8&}ǑhKe (&|$lRdx AQe\5%r">c]]`ԇIiq7E]ẈLq}1Ub'7znH\e}$}W0q^J2~O—ښ=)'.-\A ~0hV>*b._Su)vp)-w@nLN[ۿ'C@(=$ɸ0Be L_nto\xٲ*bO=!oWw W^>_^ pvEa:4vM'&Y͏4il㹰vA@N!ރ٢Y1gS8i)*( rZ5 # %'!xhd:% Ngj033ihAeHwfKz&nyWE⠀#S5d|yceOjg7D"0;zߓj.-ݭwBD)Q(=)};Vs@ Y;(d(c pZ9kK%>mu8?sֲnt^-b叇OˆM!|+6g:ƧU7%򃊄PK3%Ek/dl D3I0blxSM ȳ,7-S" RVA=nu][FhJɎtR-'aӢx|꼮95gM^C&H8a˕Y{7!IiamH;89SM H= ,W.Nս4!D4$[`Қyq#^GEx/~16CedF6% tM@e{){`>(!NRS?m8e-#?p4~93rϏWlM?PvSTc*Odn5P%+$476IRlt6fB0SG#KIۍ>v+.QEʻȈv^1t]_i[CR~^$r9xa0շvryq֌, ł/&CC@\\:ne Qyca8PU+Xev -aYFst*&brF??DN4v7vle?{-% ZlQqjҀ.dS02ɢ@oj&hYՖmLY؉)g' BtC,k'IeIJPmordR40.3||oG۫6Ȭ{ '{M_^dy{\ۢᶯ'Pe>WE a3; c0ǔ9Y<[L" DcF|a^>5ׯoJKP %ܢj8s?].J\)AB@RN hϮ+gQ&X'  XCZ*6/ nWHa8B! 8>Z4-y%-'GBNs.aU,bЈ(BL,n[~m){eJ&=q #-b3S*]vGԬҖ%,XWAvh7{wof 䬹0.hj=ONi등7kR1᩿vk`gĿ2.NUaQ=~7DÁ{hYw/;[,..]ѕ0r̃8j!rX֏9YGR2^ (eP7L@7^^p8D^2BLL.9d 9o6Hs?w$t 0n4[G ;}Òݴ \n#T:ZX:٘v#1]`ebu/ wE-_1[|/wO,v8XYno4fv Y@d]#,$`Q !4U mX:d0MRD1q<6ah/؏GfJ4nVX_ʽ vm*13b"?+ NVy#TިW'ɠ' ۍ `mQ38b!%Jdn'M38qp$oAh'őbpm0W1+YhK tB3&!)~y=P_rH,ⴅƎ z/$;X(f·V[Wb1B֭ 0uk`}`0{VԠ>k寲Ȯb}-XK Y%18o#QzR i.1|~!Y1 =9wiS=\}pl,m`eCUT[V.ru33C-y%Z,q&&%fڽ#s"S@rLSDs`,q9)ĉmd iE|Fi0Io7S6)ł~M98R%fErzĞ˺7"jlR8p)#%DsTneĔ>ԑ:g"~ il EKfRR4ZVTW%p`nszp m`'#2BbzU+>T򢠝F|Tu4k%)gߕ'Sa@drB>WrZT{z8cm,&S Ύ'*R2E29{CſMOjϑi=P|w.ZwTĻgh`ci)oڇ! ɪ=a\G#U1< Xj޸0\*<"s\wmBSovџ釉" v1 F%Ad|ql`'9pI1* .@CaNTE6|A;Kt?Z "Uaр%RY8zC!U[ٻ/Q -NNykWQƻd5G Co:?&nRƢU+Q 85?O-8yWB yHNA ,ŻKCDhYţ[p 3diGy#oK/{ >)-۫\=:l˙\^O v@lցPZäiGd=)3ĚCk*@蚴m '%% RKX.IPi3T 8ƜG@$~=S_Z4УN5r;@3LNvP|^xyar BF*c=`Hc ւ-> Z`sD@Nh# = @mǾ0xYM]Z^ w랳m,R)Vӣ9f԰cA= !2rکHE;@H[/-Y!b4;/sLJ~΀Hҩ9(x>gFT0ҿgΝ52$ :$zd2 j Fc};@:QPMFo-+cިd|ˠB1z2CGno15 O1]cNݶAz^B<_*@QM%< ̵*NY1hC0On OQ&Q6|s3_Tb4 =~},' ¤.a$J:ɿpjS"*37n@Ei~ͳrVi' VƏB8[fΟBY0С*訒TUID[/,&Qt#:#"zd+Auck/> w8+OrYZq_nL(SuCP2c:|j 7Hg Rv4M[0 w#5G[ÿcNLRc`ҕ-0Ȓ<\[ESWB [2}{Uc-cC.¯KJP 96cHb$@|*k ?;"^)IIhxf@+hd#ՄG: G0ĝ=Jgao&ŶEv B8LzY6-]ؖ 7$U!~}M+'spfscUn"Ƅś[o4=rv}EK=̨mD-_:u¬!U婕+P(W[FJW{WyQ.;eۜ\1 ]5| t,MUcR[L՛y>*q?+~g J+,9j9򿼡 N 1k(8|z MbͪѝyDZkb C-$37*_0LnYb#@.{te@HpPSEMv<5_H< {W~HNUyiKC5/de5r;ZT =ql5orVo߭_ D{xjdjEk"JS{GMF3ͦ[]чԘb w r+6 Ur2Q۷3g;-HIy')\M izn^N[[e2)@46IoԞDh4_$߮'K۫ oKDw8Iab<`K6z6MJqoQ3=1t>2ԧ.hw ƿ}#]:<&Юj.jS$g/=KJ])+ eݲɺ(pl^_Ob/@C:1 х9d>\MezegE9Q!p LY5pu~VJ% d D5]_TJ Apx9&amMplW#t2eSWͦ[Z'@s5D>G`R$ՖΧÕ?MUZ"unkWu([ʬx9ms{w[,gHq vUvR$(D~}Sn2 |V"Z~0諯vN!0 ,'S[. .Gm٫5:j}8|=׬a-]' ~uϷR>>eB8*|]TD\Z'A,Swh}cxhnyzMtȥ2]vl,wzTAU(~?-O'wFq̡(+2/{T0})Eܔ(5 J5Ԛ=zbYηr׾g@X;G"ņ2 D9.)"za`D`nncCN#BCpFCso 0g!k E_v"ĺWhCTj4 j^Hٚ0Lg-IBY,+ ^gX,M[@t]$(VͯcaEnr0SߠG=l7 HG}OͿ so]%1,&mBrڟY\'| d=8,12:3$w=\ AQ&_J`y9-cLQ޲2jpWB6߸]}7Re/FR@oo (z3HB3-2L#z'ږe <ܘ؜XT}8 sa)VtLxpnb5WxvdO HjWꅴ4滎ӹF1g%o)\8$kOH+>Rѧ~58MO:硭Q)t&x qI/)/ GI8l.nfvb 't6>otcQ;  KK㐧/m(q$uy3!M;f^\;qN1w+:QCSpj܋Ʒm}rES8}e):2̽eZ&el\QZ=$t~^E$`%Au:aFx)`qxIZ,6+L6igI] w)BB,#+cŇVNb)E~.&g3N?MU#B'(8u@Lg@hG2&Wa%bn-<+2s5lh+ڥquqRQ{($e;pD@l u)A鍕jRϮ`qҭG31 ,E b8zl7gzFQ\a}~jn /^M*cH]^B۳O#BԊ'+eGߔH.!ek0q:P7I Yk9G%`Q-T\&Ô˸YAa$VNKp]+KbOHg]0<'9`cھuț,*ǎaQ(ptOD(F zۯK}IPKG(f XH{/chlf;2$+_Nn9S +Ҭǖlzo&3c35y ݼza0.iM7.oO"6svb'XXgswTgD\M}=V8zt+1 f(Z'Uėc5㳪9)sw)}LPmNu*Ϸ35:} Ttbl,3hzn^ ΁l{kR4*%!6yBURG^Yey&W N*^/xy-u7J̠ G9`ȓ{$0S'{hNWͨʂ[yO-w;b0^, 4.c\7nj,W{Q`.ܒ"v2 =xS D3"cx㯤sD\x-"XCDTMZfk,dq7-E hKu~y_fݫWSR[7?TFѕY~ԦN$HoIxt cάXfEEҞx@TEM&Zl(!3hX0bRE$_ 0T jp8feޣoN9x2 k{8APUsPcPC1W5.5qq%9X $td8@SY4ǘ] fQ9;ܝά4̦ moNA)Zzw7eަH]7cM3di &@%7 B"s8 V%I[b?Kﱅ<^ ȋ>q[~W+RFB4#tÝRy9/+7CbNr~brDċ] P KIKg5Fr#fFYQ~sQ^([Խ*͎yJ\0a+H8oY1AbV]bX޾#>PC{'vƛLw~D*O !F6`H9R*JyLpu )g\+;5p=CZ>ư=бd})H NUN՞N#M O0!(YRT/꣤y \@Uila4ԩxO"$CrNw{G QvC@^%{CJ)0+{F"9ݗTg/4U\j T Ճ#aԐ>mx,)|kRw..b&*W57zcXR䡌~pYԥ\!^rֈeybHϖXsqzXQ]v"3p[et}Nz. h\[m4rE˂b{D{zVj [ ?C 1aXȾ7SI(fMY b! [D:a0rNzy0-VƘA.inޥ( xuY!C䷷sl~ p' tm80y}pAϰ%[~x0H#3?h˰J5/k_J>bc52U C5I_QB~a ~:=%grHuMn&*H 靮G,] DmR4<׌@ߘ [="N⼓in=S(B\M`ۗ+lR"C96jss;ol=d}CW >4ױʳ_5Ӎo(R}{Wl)aCh!!r"VBbHGMOe AYOyy 1@Ѩ~$s@DVtt!!Tl{Z[J@?n{13&W7&?n'ks*Ɩ7lIOE_u؈P|TU@%*Itk\0 lzP- hP |^]~M(VKPDǞkL00 㠯/xyȐȥ*ԟt\_o$-iCLj1s8)O4"JH*+Ox mbDq׶/zߴۍ kTAD؍ 5;H\ƽI.&'A(^q~\k=Sʦfw醶Mr}!vׂE wJM31`Bî0Utk2N//JL[(.gU?:CuOnЏHYilaq>x=xLdnC]7}5 XdH]xJaT9Nc)yf6ZĽdr0H9*(TbIt56@ |Gf!n s6" `C4Eh/P$iSȚ>pW?sl>r.!¾F)ژE7[0a1i:('̒{ڔI@k)ԑ/8r^Ԝ9 EB+qڰ}~rKgñkxJ&դ11~:ss$P]3fnڀ0Jq.ιC8(ϳaH46]/zԓM'W$'#b(.l]5bV&*[ tEɪZ$^dž֕yBPst~&[|aa4?-sBjr1 <5Å#>^$m_\)IV֚Ss\^odRE]fTmEٺhR}|hٽEF݈Bײ-EԣA r\PBdk։}wM V4ljgն`1HYO_=]>ϊKᝍKFhQ[,ɣr3'i臶}>EGd6Xj?jPd1],Kl (_7 6h1tɠ{anIX=W %ȵk!>VA~dkWN5<:6w3/À4nUK^?g)@Lj:q9+PJf¹D4<>U9`0lA6&J^ewieT:Ì2{CjcsI]ɳ.C` HrطD\CޟVxqSYq2p)$/N4a0RP/jҒMkycduaE3ׯzl,Jo2&6[%W0gF}j_lIuΨ3aLWDsjՕ.jp)$ߠ F(Nq˳B : WAj +=qRK[@{Boxe˧lgα^^6KMPä}oC^B:A =xi8] _O:b+=+臝WS:/9Ҭ&.!` ?B0HT܎7!DO ? qXX7kc=yJ"~i/MOXST kI)H0$>a͙`^?fF(d0[@Fr>G:cqC MπgnI@RX91QZM FTxn!܂]A.$LY!*-4@ %+mSGI%Z <ʒZ1c\W~\M8̙m,|kZ6-!-Zd+A+5rmX]Ѣ$br{z#rȄl@&"/NP^gFZRԠBj:u` XAJ@@ ߉B2P/vqP\\c#6R@t#xK}EuGZ5_YMaLKg20a6/IίdW.$;j3+{ꄸoswfmt0'ߝ{Egr`(pWJ2 ?Q;BLV%W7!~vp.`R{aKR}+KV됽,V ֆ?*=aѬEuTa+`xM{Pc gatr%D|4/9\/2&qY.|RYIΚ}mkJ(Pz50Yp(BnE~'>G8wmI52801;9}IbYs9ހ9{M VG3#$[3sv&9PK/,CA( =׾$+V K"wqf+q Jb|!*]egsV32 .*Fr;6nHfߥ{'z751'LC}}w =B쯛4?E@:;b:JW$֙p,%C9+۔Jd66]XBQddS~3zUAt0>b X-U8jX:hm걩>OtM0.,b/\H;Ѻ.Q*zjrv(ߌRj:%p4kϬpVX軏ͮ!'3{َXjS̕Hl+{b 8uFm32 [%UrjULAt;ݜNn JͧW7pu~%YN.{".d up֎snGpՄ*X3}0_w'2 ϣ8y"=Q. ͟jwO-˓I3u_[<n #] sfC˶ TS;j' N ^E&{Γ1]vz*t^_վ5U{S G=9*o7Wsr9jOi?ͺ6/N:FΖYbXs4fE^ 6xrdQakl UGLI&9>?\뮙|;A-OikJB viﭛ4R=|.ÿɮ&t [&e!^_in#*&q02zkДsqIC.Bְ{} YZH)p`eVvԁ iYٌ?=2fp&+ E} #á%IƳѥq@6!E)'bwZ2z!;)YޫO@?G~EfS Nှ8}n+ waʄe=IdDͯb'xeX2S<'F_<]7p)a*6eDl`ΐJX'P6OTU"A׌jlK! F⧳괧Y'ޚIf)G܅Ɏ Ž+}S;w>wn*B]r+ :ē{yn9z>PH`޴v^@٤^6l?MnP,5\%淇{='Pk- H93=eqs5Zwq_¬UZ=EĦof^+2aΞr DZyto2^]']!8-'lqT(z♙NO)\U4dWf= ,UeH!bL+KĹx8uʕݬy>UWBGRYa")eӎPhЮtX\25ix4">'+?4AJt3=^Z" K7tG!=3eLsBj arJʊ;u^wBf MR(U'ĕ֨`˄CP*m_/cgC2{ZCf7Fm^ { G-$7:ƧzR0D9FD$dL3] :@tw\7 Ft#9-brG*[>W'tmV?s5CCK@RUZG>ҽ­]. 7V7_"dc/pSXUèXtj"ѥ̈́$jIsIKs5(f6I`=A~b@ԊʛUޝ8uܐ< ռ>IxXӟN *.+F4frt~ ~OKVI]eF텍PTUoA~ s╩0|%9ðظ+fbߔH(\ <5@RNyE{frGZ6(V i$>X %OZ[ _c;:2~`K ap-&^saSƢT7WrԉXȊ7SR'^h0փP?ޜO90䈩8oFBN&:26[|ƦcXap`nWC.w>j΋+}$Ի\|Ҁ:s8Bͥ*)³{<1OF ;Tl@gX7'ٛ-9hu_Mɰ\#gΊ= 8g!:bDWwT,x4eBFI<#9|p) -.TD(9c!'ַHQ +9,i71'IlMU cG԰#t!͗tO21;uLKM5(۰37&ˑ%K"E3ՈRNtBlіvkˢQ[~o5.yĸ)?ɬDHb=: oNמUc645ÛN{S'4k>\voJW.Ϻ*vmz{>Wzc2t2y:~ K+ȕBH.3࿻\K`cn ' >ޝNtܶ3n *A $WgR/CQߜ1w۹mY6yqՕ!oWlTK58pcڴ׻qNkxJ I|h (*~&O臛scK.M}[-MVtGYW4)|LñrS@W0ú ŚS ;<kmK&(hݚƧ_62\k ]VOd@7l`O~3m6$#BaADT}ܼ5P&*Հe!qV:2Zτz6mHUևtuMZD5Z_L FZ3Do[?ʆ_3`D]F|z'F$Ht XiG+t5)q2 0{ٱݕXs`ˉiɷmyM&ToZT^ͳ1 A:N҂3'VRۯskah"I[4pP;Dd)+s-8$sI5=Z{ceJ#5sdЅ  yΜ$>4p l*jefƉ )cơFO)Ѻ&G$ApgKKd@(m5,vi~4IDIǓRr3&rpB%6{jCA*./oSaNjr["V/ >-2s#%o]z K dqBcٜLinCAЬD7Kn61 *:X anvFb_ďZzy ӕxr> aB{ؽ2 xHTI#,9_Tߦ!'m_seTv~a_Qͩ>f x+7iw1PEEHw|?ͳVN >M2,_dZwxcnJ)pmu7I)0 .ғL.a"L,m<ƕO_ۏotS?˫@g;c Wo*Уպts}ݳf<[U9d TǙ:eL!}>ك'&{ 1;Rpz]BgN"W2׏K%1G1`=A%wDxaIWȎ@IПD*W)@ qf@z(|`y~r_Z6[?^ՕK}d:lxZ=Β ^ި7, 0&w m>П'oGɛ`c# ,o[lic :1o NFc.\ն1h2UF;cTT!ncH7AXIv%9jTUw, b&Kދ_XeeL;}\%5IBªh耪aEmDb[OځE X;s )_AϰY&컳3 rx`-}%ցZ3,aAb-bh5}č24#/-(88ébyCi. (눶jpi'E:҉kDV] ]ňMvMWj%!j'?< ,_^`ֱ^ ٬I:ܑiڛi)U\-r56t_OkMѠpl]:Y[?5eW,-0A1)@ogR^z~=J:9V 00R} 4cv"Qpi7\3!vN2E6zar|sFYf-l4ϦN|FI>Vџem8`tDF1hhNt*=8(QIЎh7es٭FP\e ev btMzZKfRk̈́ ip>I#w'`$IἯՕ:]uPMBײ2Y}Dyh\W`CzHML\$8^Ҡ;ᏖsI8CWu'F[uBYN;}k>N2% k^hiՏOHjU˔w\Wgɯ0^?4-^Ҩ#̢A"4o\ M{a?-Y~oBF!csm=ݼ)1LD`ʲ+ oR I{\.hwLFǫUT[˴?R*axU6v8+|bCQ!%X? 0\ YdT vdpޝp|Hx$ G.O|5S*63-B |4ggcNY62"Js bcAZ[U k45/̤$;sX}H+F|wk T]%Dr.z-OOFt΃y@K՚V.ؔ0u۴ S娔#'ܥJyP^V,u=EI7:$j?Aq 'i$*DAms޿0x0T|VaV !꜅z4,pEAp%}] tճ ³ jogOS?w? IEA5 6_LJ-q%_;\oݮжB_Hjz3 $?v/b\ !`bvKTեFb$T=c@+o2VtY@>HU_^\ :O]|tu"DÖ%o>A'tOTR=rYwaO* 3CMBi`n-í(馓[ ]\OmvPV[.?TD>D&Gx\3Q:D@KϹG4Bu>;&Z,A iWҊsP-l0deS(=.=у Od\eyS˔3笔ly+̑cwUVvRKNNQl2 8c*i<0p4ܜk. 8ވ#FI-;3e*Jz vb z$dψYˆ 0 v0gҦ$ 2kZ$G%SYZ %% *oq4iPn鯕M=c\Rqeӣ{ 1E`iw'fTW.L\ru{#FÂxTD eG{&H)[Rpgg",}cZn.?Y㎃a_M 8K yE-,CV]bګ9]Hml#i6e~u*.B&VlDjCC{lEG."zZ %y{Ky a,x:R4C.ΒUÛ*oݴ[M̝tuȊah'˜fݚ8,2kuә W< q{J EU8VR/{^~ S[je|w% Qc6cR:t(bq"LN j@y/x>ˮ6.w06 =\F` oSr銧M۟4%j v71z}q 1[?pD(oºg$EY.Z9NNo@L$V#V2*s9\3.M-/QL7{Ů%lU5tpAWܡ}7xqڏSh[먩f?З$A }n9d7*l[;ˤ=Y|e.e0ݷ6&S6>G7  2M.ZWo+b-"~N?2DZ-7"6`$(B8p2tJ:$j+ }RpMB!5E=E8_NzĿu${l>.XKgmzr^@ᣕ~P>*?PWx&ŮKE O¥4, /-~NSt>}_=2AזQm^ZtGžGxdD୴cRL)[@mv-Dً8| Ҷ;سEq<T[[]AJj)\d~xҐi|wMO:$$:^m:jCƢjg NJYFe2Jx/37e%pB4.]s'o -H=Fd47zPZ|6θӠpBz%vKex#'OayU[;YkK/fnӨtZ˝2p&&@7x6 x0(an-ľ6c4C1ڄRiD%rX:KoM@8IDJ^F8),EKjrTF`ΓQw׾RvOt5P /o~[wBu+d6xH毶) -)1x1I=$b?Ҵ^75+c,ҭfTPmVPs&:"?iւAρRad ?S'7J96? D9DZNr^RI)[Dl/ޢt87Qe\,Nh!aO[49cd8 yy@P_W0,|4˱L^CV3e&|:v PӺ\]*60 ^ G@taͼIR븖@9|> h=5EJ(ڢRQ!uL7Q_Wli,p&L$LMF»oQʀd|}ĈM^ƚLm)F.}!XN5" xqJ+** 4fцc_r xu5s]~ްmotB_tۂa#ˀ&*B@ERqS06K{i'wLЖTA*¬e[ɜҰJ;Շ{tYߠC}IJ}kߡ{^uwt?L?Y\4yQDϛm?. è}<>1y?ݺx& oLjEf;I3v[iD$o](LB8&5dy(.c^p߻Rto`KjR &+FHe]xtkN,j3A-l+#'zeAyklLJ9,-Wخ&$J uU? VpM>%*;E${:*vz{ÅÏN̍u~$D{d>1cVKysw݇ Ak Ts^ ӘqWru0` f.3Z e6J3$!$f PO8A jv}`Qb(y!Ϡ[\䧶SwxFhٶIO1EGjzM<)LT0ٜN+]2^J]p|nlCpx draOH Ņgvz)!Zy{lV;7yJ90^1Ҍ9,-;7Jqyqp_s# gq7 ?#tf~D|eoV?1jR>[G)ȿK2tG14#\/G摖5{sFA.?u@6G~SfS* hnp]|:AGNDVu?!2~oj kiJII>t&% 9Hj0=[dg:w빌'X/Qi2(`U){+m=)+-2lܓIIE1[Tio p 36 D[1ٲք*\YA1~8"Qh㘍;,l\Ҹ[a1<2'Y'46[cG5xzqxAj#i$$c-+`a3Jj&'Oel픘~A9¢#-t&dLKfQ%7d܂)oY(<MES="$O2X! n!u:s\wNpߨ;]U# `O3f=%*q[Ć"!,+De,H3<ʹ=mRNW:Qi2狞pik[%i9#9&)t|r٤8bE$4b!LjFߨЏ/!p1 (Q[lfRImӦq1O0 e*ND$}J+o}VHPˆVIGHm?$a:K7'w[ g潊?:668jftقLO\t'd`!A: [g߷j.Y<ޗcojoNRX.4I'6%j,]Nȅ]dzN0╌,L&ЎĒeB=Hڼp2sy4 ,&^WD;Q-?I*Éo/̓qSrό̡ iNgy[p-}eǽGm"fU hUK]JsS2 ClJ>k»Q͢15_~]BL4O&sN-3~rgqT?!y-QЩey'G kg+O%F15UUc5]k Wʺq.CyU ҳſ?žԆSDngy0d<֖` zfi/xL+@}Q4+-`+0|SY0v4QrEsg Lp0K뺾"eÄQn]7,?^]a4ˆ ):hsl݅d*=@HZz.\|ޯmhn3a`¯=a A8Z.Y,qJ3-B7; gY7EjxHq:J'ʥx'/\",>E 5{n.PjB-{d0r| Vaq6& r> TB``?CVAqqC,SoKNL)nfk4٧r|8cp FJ g͘@?DBKE)hC3iFA_ ],ϟs@+0v1:G,dk*uM6< 6,~\}NHC[ y'X{iRNߋvPw5/-Kj u]l>p bE:[:3ސؚ!XЕPM6V}\ꈁTo+@[g|0̆\j<`3FFTlE > +pz"Bu'dh`AϪWmB*:&|z8'f?E6Fj0)\ yJg'*/8w QiD=JwnL>Z'N'+25''.of GYAh6!8?.F(^ow/7|nqƜw] !Ȯ6H#ϒe)Vy5m.,ziǞwh|2'P͇\t7+RgWL)$jF4L$%޸Vn)itizr,u(;c)g[%Z3`6/A<Gxt4 l? hmҳyޙ 8zK` AmI/S7(_PY%("rl},7㬰Y)@sW`aCЕꔺ {&Z(6K C0xvǂDEz,# #ݎS鉹fJG[] ^/g5PG֙zzER=#K| cKy7@R =ɇy4XnNK_l.Kݶ+Tk΅"K8jU$ټ퓁6pT?a0;h\K [$PXt݅fkCeAm%仲 n,~WnZ=" ~, CeVoCaJ5 mjL}͘,)[McMy'lJ+ 5FŵGXY۔ %ʮK%GiyX$/s)8w PxkߴؔAz\F[]EO. YdFj\^^|H YEixnt>,SK(ЏI#vj?,ŗOPz=Pi-}vmf7CᓩCJk'H!+zZڻP˗3]T́AͿJ 4(㐍F̞Pͩ@ JyYs)@|Ҕ2# dI TddDn!#F.Lz[%LB86v ZLO1NFGh% 0(O|'P}T/mK| V[ׯqo؛|~V0 W O\3fiAHWD]#L#wcCb[:W%jmDy2]rrM<ʹ z$}"=wNǝ#cP™. U J͊ODSm'ICe_0mXO ٭G ӣn*WPD;?RVܵOL!XCR*`Yt$YՊQSO:+*CqD&+(1Ҹ&eO =*%_},iÅ3?ʼ=4DS:s|W(x;?# i={ak^DR `R V gRU.odx f(~(\8x[G0ԵimIofi‘词pJ9p)H gdX6[.<K׫; A bci"'U1kL5 b͇z#^sLoҕ[]˅{?eZL$&˶m녇ԮMBIl $/l@iOwgJn)[MFbq`@0pm"[@duP,S}r |'r g:uE[ɂ݄-Ηrձ#h2q "W&S S%::)9j /_:V?2us4~Lj&UaycO}HctY>(;r}6^bpCRveC砫.,]UzW+_Wyg%z~> bޭ24̶ܞ8?6NfF$Vyy%t KQX vg\Tۏ x'THPgQH"8Ї_KŀB4>hek6uc+ /``-wՏ=3[{*~$kG (zVrѺkBh,)ui5]:Csx 1'b]zFs\3I7҂;UGW lXgb]:2{ E6ePΥX ha/ JZeoXj!ؚ·u缇e,C Q i; 2 gSNH94'䮤NJx5'/i'햗5Ek#P;ԭ[|jzsOiy4?91c8)D?cv/ej3J~P";vrCxm)wnhؤsJdJmA'G2iO\APh-dOH7M<͒p)|tABiHL>pE1e1~e Yq[Y$5ia>:r=,4~X+T=rhPZ%2!A@Row_< *(lŲYh6| fn_kg =R2CB@KQ,S, ĭũTA~;{S$m^˘lj5$H_ΚȽ-*h'պyzP+f=M1nuIkfvEx=IZ%'DKQ kAY V+PO]yGkdq˒olv̕VƦ$LJUWtL#xt<@d.6߷ A3[@vi\C]kvC_5oX`to~2X=7HqY~.MqO+孅Z|0xq|E"T||~Vtg  _'XLVTug-ҏe(*<d. Lq'\S{48RJ-=D(?H^U-YbMQ :^FQ 2s])v>ɃEw2U2//MA;,ĮE!~y>ɋވ !gs9<[jeAaV% H(k0 zԮvҧYvUN/8^9S2M#nK25NUrUUӇ O%Ws:m݀U#{ڴz|<%[>[ٕ7M)IdDmR upeȇ { 56)o&ݻ@~dVm`2.7YrX>+{,Gl1兯{sGYhLM/_Q6\Qc_ f'DFe>pL\ v #\FEu[}LϒË`'}?zNEVؤg:j c`"{&?wJIDn'c|0WUh!BBҾypQY&>7 !xBo{ MiWcjZGdMXYDߌ|S_>RnO8h1enJk3AIOX\z"WAAAg~7 $BXΙOHs9 5,L%_ [CmX5SR#~N8o\ՊZ2d#Ng#m=4nɍsRtA g/о *Yɑ+Ú JcWǞY6GLi90ɪfDٌ9w%uđ,[%%FTfnu{d֙75]}#BD%>Wz`#g-f T3@d|: MgXʣ8A#*u񶃻D1rP_-=9+od~S3 n&tYj*aWp1ߟ#7׺{}"<5-6w#'$v OK[ihW)I\Ǹ|YO ϊ6 \{޲+Z GNb^9^ʁv#) 9Rp<g=h0qNFcr4燴yp; lUVG =!qI3esp'+$ˠ zz>Ʊ=eyQZ'!NxOy*^ #Eg seH/dI4&Ŭ|1o(u0U"aWUq7\WAXV,ņKr22s| s.*T$%l$*| {e M!,%)(tqG ;AA|~E"IP[BrF^ʾ ZTDFYs#PfIL]"ۥ.qB|OmCIn|?̲i&H%ȽHqvf*/?c(5*o6˄9)J;Ap{v_Z5tKc)nEjmش,VjZeXY9R 7 ~ Df:N;{ K?mB)`H[ak+syEچK\w;j%2OM\E""E@ң ? }culdwTᕂW㽋dt V9QslRiPOF8ӧ7uTɷkF<9,:RFBu;,st^]_v*mqzCG4%?-]A˼{ҢX#e:me 9%`|s#+Եvi+n6b)P8)14 d dRP@$_q3,=[c6p=\_z3 j#;|Nj?}KgYw዇fV/ByA$ W7ٿdE[ 6PBbTM.q9`~Fe4-ЂܝR3r;."ySRi{Ćs- @M: {wGi[-*c]{^5ZF .QT9/o iP 7Vj<xZܝujl^0~*ҤfyzV0ݣ9!&( 9QeR }‘0PCQ&yos)< SIFe\ tB $b Cai'kJhs GX HUb^ rWkm^Gr2UYE9&0|c ykC,.#o=@e4#_m kF+YA8Y8 JnzOWGɧJΰ~ v8֐է^24}#$OyAUrԅ_[Se md7tΦ1E v=<lnnVᚇ7lN I%xTۆ/&Q#$jwTS40ʎKHαM6dD\G8Uƪ1T 9vOE#|څ @ޅ@tEW˴j-'zEs|V8i"]9Am Ð^v㨱dƣ=&S,%6Ej64&j>kO]sBVUG׿0x78ڧ3F߷! LpI& #~7S ~T=\{P1l 5uer԰2b_3hA+ %Jp^IO72LܹP>{ UvdlYtd 9$XHפֿl!dj7#Zz{Wg :NAGGy\_S.\&zQ7iycZC9S_z@D(U`,bPtN )Szt!+EzyiD([v歆1#tLoZ]` zĄGe].pH t`,,>@~M,+|Ra(۝d4 ڷD7k1XI\:XQMh%tuOsMN+Q. 8]Ǐ K/X(K{ ogrɶy  ,]3:Q{c;݂.MWMgmPAae/sVhMPro&] +)-Ҝw~E<.'ZFuѝF1hm(էri$Xykj<ʍI[dUϞ0U$Y!Fqr9Aɉs]hӴ=gK`zGlXt49) &y6^5IJb_Z-/'/򖸺Ņ\egKO R+G%#kApFAOnӱ:iB7%,]qeHV&߽Rs H,Hi!L"bY1S0&)U>{Czf <*Īdt3A7bh^:z62+ 4MUj!G^oхM E¦B{'%'9O3,ܵwj|#!ls%rq|(( rcCX8թoFH%DE4vH6 5wr^_Q8u7mjgxS*7K͑b#;`ȫ9,۠*&ȈƵ{ṉSBZ_Uc әAjm[Iҋ1!_'c# E7a>*&RS\tQC%Ɲ(_!&IrWb"~AO0LlBOg#D{$4"$ ap' i "1*}T&!7"ȐuR&tÄyi#pPcDs+޳9v]jBL3NW7TlY=)\*%GMm͢&i 9]1S> "R^_l Mf\Z0wS/P`IfNBYtU_ y_@v%oBHJ)WfLn [*` b}2$3#5>-aqa3 9Cd5Fߋ6 ΂p)Iɩ*'ud^7-5u ވyd`FVf0v"qU+N-Ѯө,vD&jsUIڷWפqs<F}{|J=z5-SֺE 2?+h@jR*67Xʧ"~&ê?:xXc "JAD=&Rp*qA):ig沛χ" *HWTc!@>ޑpr^@h!3iI3q|`6ʼn"-U"on!Wz Ru-sif#EeyP.u!YQ&t<; >(׍1] H[E\> |b$t.0#R2vLojf *l5a Ӵ+\ٙ=e96Ϯ>\ml |iEYtI2J4PTf9 ަn_iSyvxiX'#JTzR7J6٫2f_kS*pU: Egتqd'ѣaR: ;X/6+1IJK.f/m=`5 DnT}G&{;h4m,pFyZɛbY"9df@|_14F֒:bK WQ63;=(1n眞X"}L X 垏`5di$?QR൜aP;}[u>hNwGi3<:S >vfUdsB{m"qаz̊^ r乇=ìV\)tbMtd26!Z紎d 4WR9h ZX|?[Ԍd,H-ȯwu4F0gNS'WF7dχpE*؝VWX,U~:!eqy[\_@I^2&tҩC $S{O_vl6\ȘYaVJ.n?}<鐶 ǝXz7ꂯں2dzx?BVH W?O!rȴ H/8KDMYPJz$ylLE=<OjV`XLSs{(!`+#z֟POO1"kIjybvo1NVΦm纻]#:d  ՎQbh;Ma.ŷ^CB>ѐ>0:6W>'Q+6R Y0n~AMS-1?Wb˖Uh"@d2$ߊ5L$±T-yQw18N]fn8})k#.BS!{b(v.K,_?۱ ZNܼ 0 LDچ,Dw]@Ӧte0.a܅K1} |n(}]3kP#J^e&.$4PE9ip'M9jQ&ڟLw7\'9i,v wyv!S|h RKvȍ+@Tp_^^2q;β0!o$D^L:/0_$Ăί@C@0N:^ޅ6Yz[=ݎ48Y(@N6~\=,To/FY!̴m3\N.m2~T-g 6lx+^.q^vvƧetoU"P_=ܴ hJ[Gud)@)(:bM5@W9в<=LA E):: lwT*Qь_4aMJ y7ѣEN1CfTf'$ιngP G;ꣶ .H8A`ɽΙyZ$cu%H[[}~NVK}EMy䌉(A/E~DT06PT4ژY< S1? '5,jKꅰ5>Ev  Ďs8DFH%16wadfȠF@y9X8HⳗXk(m&+ᠣ-z2ALQǥ {mgP{?"921E ,IE9F4d>uT?9xR;iD^F+eb>uZ+ڶI@:R /3j5J3^"mNh1GW9/+s:H k*Ǎ}Ya-Ja#ºo:yD|~@ · M>aZX?}QAlecM+;7Q|hB/5T_(Ӳ$*tA8K$_E=vG雦KSPKH 9gwOJV+p"lHFF?N#56FF'60zS s&m<ηՇS>>}nDF"U#+j2+W9 P&lέ&&V&k;rv]E,Uߦ|!P/#n"Mbgؼώ(MLSgb'?wqKjV)"\WO~D4;"VGR01 \TkjkĂl3uLI^9DwU.s[zV&Zs #i $DòR'bL\C9lp#"ޣd|%)jfud5Eԯx{,辨&u \Gnت.ն¤)4MJsIzY u7*@wPº̼wpF=o _&$B ``daaOEZqGa&LRX*zoQN&Mzjf G(s\ ?6 =:։kcD&`;0}kWKӲ3.уS;.JضgFz)._\9"{GyldDęBU79,4ǽq:;o|#ֽ{(LY[!vR"i;$bJMw8kCk乀^_b BFmX޹vH xzFe4>'rs3K{= +7ZRj$+CB;Ҝ.=OL2 |'2.sEVu!1Vb˱JP@k2Qt|X6 9(; B0[7 z ͒\%!ǫJ8ƞ`\4G>R9zŴg'QiKё93* #ߵ,TG2=K{J2:>TqYAڊ؉ݚfnUiuW0SeT?}JEHNp;2۷}d/dS,p` gQB*yϮMLjL[ 5S}ҬFdtX@ T|.1X`Ǎ Y^-  @MY@Va41ι9BY<"/8WgC*gk`IM2 RA<  "ǡ観Zњ4-FCiTv臘v|c& {>8e<``U}?cNt$*C;TIyl9 g/\kup^L]~?@1tSWό񆣋yĿ+8N 4[%S)X0 0'4bi wacQɥ[||pPmZ*nro@7r3 4;0OҤS$UE^W@z|9f)kPj e)yԆ4R6XX`K@ Qdɱ YR@lE;Nm+ '>mJgd=Eĸyc1ēZgk~Z W}b3`y ƍ;w4 rHY?ozu DͦR #k>+!Y)vq3\%ͨ1ZpovuB}+sWӸ%jٛ(yFȸp1U+ !xɥ~2=b0f9TҶbD̒fbx!ѕ`hoBrJsH7v`U;ؿTx`GRa` Tڅ+|(Q(ӡ7Kј#h$o0_J5 PУKuddݚiV]fMwt}ߛkʿ^ʛ3[ NrN /p gY`$QZQ kOOg6ϗ8Kٗ,\S^/5 :}ZHHik 0ssɏ)VӜ  [9BqܙR2,w{0BUX0/oQQZaٺPhwU1=cOc,7f>Ƌ/e0^jt05hqg؊M 1ν^&kUI9IL/Wni5 g!C )LqL{PLb qĶ[ujHKhBȶ*[;  /H[;D_ ASʥ{öN$b<&{\FnWoRp/ڽٷiZxnSGZIf!_ǥGFحrVSFkSڵ3/~TJf0pĨ9iLKv+ 77' Lso6{4a\v#q!(NyK%vw`Ըj`k M'T0kRRڧ7m1SZ̯BOꍅݟK3Is0,9Ƈ;`])|O]S$P"߅+RHT=CWF54()uC5l^DGr%ĕ EdTBCKUH$i@\$ < _=ʙ=ǧ hʁ 0k'2cRLlO FqX/DlUcEO:p] s/u%9 l?K-!kziFX7=Hṫ.>"'%vCvr͈*ʯg%4sG h2OQ\WgaKmM|  ;f,gO(|<"kW 3,`Pm;Ls+Bw* /&; ^SM@*|KXQAv+ɤ8;ʮX|1 簫s㐻vV2l+ SYY0jTg=tH'v{l#^>]'aU|;͘aK l \Hb`9HrctkQm]uA2Pe̓2,>rc͓g8Π)CJ쐤\y|VOQqo=ygFKufKiy 9DZجJ3gbOI69 T\<޲:ZzZ_V iLj1v#)1E}k9a}s9m!`926-dݐho.c1L|40@_TW~dA?>R=:gӛJCIxd}$+I}2AIـɺJ ɟ`;DY8l81|0oCʪtJpxvb~oP'N}-7R9B? p^|-yrf: jQ&{5-7l8Rr[L|{C";JR+-ڑM4!X_Xsfi>QdlQLF#a;2a\Rqm 49 iHU[\ ]N  TC+ⵇ#m4۳ݻ{DǦ5H mp!y@j-G1K#Xը46BK>v07^En9e̚K&NyijB!*ţ;/1k я 3]pU?l)v9yT;<2I{\ˮ l{8޵j\4-Ja3AVs}Ƿqn &:D!I&i].V <~\4xo){4B'bKe.))Hg1ik@ir׆xqKBv9'2&P&Hdh[ 1 *x<:?U@ smH+OgLBy`Pi|:ůq>$d >F`#B JP).TrȬl0>/(! mpĴ&h^~` "Hg+H?&Z_}Z_jD.\SL3*օ]slU V: w|ᴠf/$Qx>^<;F*V2f:Ț~dO6 ݞl7, S%QNnjvm=WԭQe#t՜9ۖ|ZX"M?}S\۲")YwRZSVAcDC8 %i(G5H-Ac<(%7u &4&l'&Ap`oG1 t>ˁe ]VN1ޤ9LX%qm/ԌVh6$3H@ $:{Ȉlvt.^άW| qsHԜ W%VΤw O[ :mN66$jw53E-g8%:kj<~窥SMOL#Zr4U ZE%͉(|FmPл6Y%A"<졽MPqut^H=%CJld%q}m*;)[!2%_^D(} 0oMYg aw_ttnCA!%\u/kbhzJO%TSxz;:/L]fh%S*OX.{?2r(>j`[0g&8+,2!׍RvC]v}UP2Vu;Gd7>:A; OF +{)b9iW_Rb@89Anx?^N7wd# dѶ.\N[f` ;‹*N09AYoZ`IGŦRov!SZmaS]4t+J d]cA]a*su F's8}fI#RLV}F~"um,WpqϞx|"sA #.3[ >e<,%p_>?J1ź|) mw+p!OCB1nߍZB0{.yBWv}Q/O#aܾYAlf^b"'ur[6Ǝr5K]K_/*netǮ%Pq3GnDE`sCkmp{/:6+!fݦ={nq CjC\ʝ@BͥߔLrJ]MR֗e Ъsvz.[fpM L3i-ߍ oϙYo74QɜhQ`Ma0&'âYi:+OBXw:u8.FyHRa]QD1&|NqY)3LX0кSFaCbt 'v mFfק ݅s%zw# 6dܕQ1+0Uܸ{ dydyMt{]f%}R_ uQ ~*&puQWnW$J\<!Ɏ𵙿T̀Hql qOr4?t@_aU¹`A؜f}hgvg2.!t6Qe͊k0.(lq<{4Iˆ]osH~$v={Q"/o^~nJoUޚ4|m/ $):6ؼ)HSq`C'}c8U o/W}=)|[rv%Kӏ"#*_$y“C0R\J0Nt< 7J)mΫEˎˏpN>kT^X/jdZW]x7ĨD+a&yhғꩍNDVD"yڥ紺dWz.v.gSU0/%TC#"f&vȸ5n_.:j?N@#,uQ <9- jL;{]v m!+nySh|-/TM߷pvSٸ  /й6tw&qԗ` `&Z=9@&{f|G &XPzUGrߍ4+mYt\฾8֔r8tQ[Ɠ' I'FÓUuMK"gkE/ݵz6Scja ҷ,CČ~gR,U+;g7 Le#^p̞"-T'!'m#R =Fw3PSPv S0"4aΆ#mNHvN,xʋD^[,b4~$Jx Wt1K.j e+o](HBMz!zap)0Z/wW}m?N5R(KCI)ۧWlnԿ\0z4$+nt~E^RSEb5,"yep=[Y/Uܪ Ѐobս϶ 5t !SW^ a'R.M MĪ; m]cCTF>Оo_Q'.n@iTi:N?<}y4:VkG/Yzt+!6>#ugDb3}Nд}NZ#kvB' 3硶~6s E<o+uo#vM:+{% _wAGHӜP';w$tOtoze"p8F?k}MNÎt.]3 oɦ̻4gڔa(*$BAX?3m҈g;lL0jNN痙E&penjjы)=g ɏ `pY&o^W[}7 :DFY9$X;}>J>^i14D$(QhKFG[~XxɮC]CMX"eAx1;P̔>[1^/.#:ĹÆĘ@ SR[[}f!^a_ 7*v,B'K\nq^3!O{DP~9N[/- G(^VHe <Z76=#PZι}2n&T.&1 7ix彑;XzO8gs"s^"0M{T+:rPV 1a'ʩL=qq$|~eVwYK D5`eŷ-" WnFqn)L&1Y:M/)1DC OgV\d2v-dPL ,SX&RGJ$>V $ZAduX L>R'Zfވ/!#RR5z2G:>]gM{Z!ZzQKۨSR>\׈^n{;Hm7*mUGų!z@Its}~9Ho& ⹱6jc FnXQ7ԏly3o ll<ކcSS nSb׉z*pɘ}xcX*mUM|Qc!!s` 646ْTY T tQUimA>фlYhnHc&uѧivnMS%į qwNJrP /Dzz6G_-0 3U&Ϝ4z6c4 RCv;̑g j:P<˸q%BU/4?uȳwuc8\E}Qw2)8Ɖ+% =%{P5#@,mG^xi1jCՒu-o} ,!+96 ӳ#hmRĝ~ 0 %#P`Nb Ó#·86GκuB),=?f\7hk!9œkT]xSˑ'xt׬` Y)\Q8)i!L1PhB/L]n䐂@RO3dIa*BޙH[iXJ >jz{!bʷ!$Cc$1>Wƭ]W-e9Ye*jntgX n5gw'CgVl]4'eQ 0! `*!t?9=jiyW؂\6ӊT'湫$CqSQAP i{T/yO|z%ܞI݁W bs/-FG^@"}0Պ>ކn q!;ŭsa4cͺ8+IRp0E? uBӊI ]{/B.WV4ofmvN^J[,FEgDMCpG9ОV_ccz`zw$ޟ ҤwgI<Ȍ7 GuG#,go:5^uƼAKflϭt_e(a2^#ʝ! W6TDlPEz۫%6^ҰX|0ךg•<_drW~zJx]J4)/tZ.9C2\%$,S_C_&Ds-^-Kn!^KP;CFʲWt.=GOߺh$`TģoPia. 9.uNZ;ir= R/\^Ah."(h:+y0b>%(VՋ 8 OI hyRT}[yf&^)mvao+\Lw@+r|wRtS<:Z(Vy ?Y$ݕoxv;tA`*DkM`X 'E ]ai}dwtaФ[F|z^5/EcM28?+(nC%O *cD5):.<:E%x(x Qf.|C TQh8WNIl=Dn/df5`߉c8hHH$9PD# C>6PSM&jKD@cnlDV}t#u_A3hf?~5uEB,/6۲Q⸿xf-\^eôB`!f%IJd@-۪_`NxBW${tĕ/`|Nx"lx8CZZ 5p7 j"P6V/.'j]G RB ^OKY3 ^QL*u,crrh Lp Eic]t+ZV|]~Ϊ<AݳpXG-N;[SԀL8+s^GTF2W8?AWAR6q+F6y0B^QI&7T79jia T5Kݑ ZP( EtW|o=ᒬ-KaoyY5@bH!\F.=%3IujL'[>cX,O()_nw 0 $E:erpwK?xi&qGY­#|d漆Aq7@ 9rϰ|P[2BVs%U5Eu&\RjfB-98NLi5<0̒ifSg cM3V|XظafnJ t/y.+)Z5 oӧ?s Cר&׾(Ee=_AXP/ 6%x ,`0qxG[5ɻGi&= +);\"{Z)yE|`?Q.FI ҶZZ;uՃ0:Ǥ4CԏZG2X2Hz&f(Qɸ.?K [C+ɖΐy=| g=&j "m]@.jR-EJ{x49Ұ42Bi3upyےɦbn1b96pϖ4p+%+6~l8'.WXYI}vW):Oe%^KnES_AXuT{SC~ʓH,@Ю,&f@~7.!)9]Ң²T]#:PF깲 .vd*R {. j c$!#_q9+I":=j6mga5+wٲÑzB?u$E |H E(:3MeC:$K߭a.m 'n&y[ VA1Sw׺=U~DHjeϿ\8?ǒGJ`C!1 B4ӣ4 7-j%o܅{$*vwL)Ƙώ<}c[xqpLβ0&y|G OW?s _M3[#ea3o`i`~_/Z~_G_=|bT>vhظt{[|tU'k&s;d`Cj]jik<~Af?n~U0QEXTjE =.Fyc{]u!*HqMM`+Ƽfyi '@ ]ؾ#eşpn!&朋5$o-9~W ߋvNN~b,Td#?A_1JjBx0ë5W-Fe-ް9.Iƾ?Eצp ڙ})pF '4U䀚XF|CJ(9PK1Ke gGdl'NE{hαBݷ8"} 9JRorHdҎrz9eg0d !QQnPj*ߗS*Mȱ}_f h ApCi%bw"Ƣ^9ej@Oc9aBo IDW9WbQEGR~dݎGJUح=p^MӔVi aqXc*P ^n6yOPFCUрI$;~"?/Y^s#TTAkn\cJc0 l$ YMx7VN!:R(rk!}7r_” 7d&`u}1<Mˆ>##  hпyj_( h4uk;;Z'tB4NnU{fx,Л˘n*(%\G1>!/1ĐґONg0-Mg܈D!ϱ-V?(VA3kmB?1-P^~%yc&9-tp4굲\}7MmzϞW:vp S2:sy*b'h47e[La2#s"3>x4EM@; 7[by.n#1qlU!#3=RA*BTFpi7袆hd`3pN< ~v$ԠWRJNcCEڡd7t(8jfSwZ&;9> ` D'A Q}J+ _bd/)U%@= !=8i*t]) i8fCGyP'×" \5j͵MXpWBu&:'[b/LG|}Sy JGv'`| !V^j@v)WE ȴF̾^8OfW-[:5SٜL{M TffAYUT소m-KLaI,Da$U`0M7ΕrQ&>ؼ 9_/ 0-F6ZNE 9S%b¯̧i08ޑ`ȄπVŭֵv|:{,r]otN7יb\Zlk4w;5T4Ta#2o,_X+^O(QghA;͒6X 谿J-3LI]ٻQb`p)[z?kѫ"@L9L&oob]A9}aOE83z6=i_{" ~.kx[LRD3]HRsS"^uwGձWjHP9y ЅxjFw#bf)Um" Pr}j)Yʉu&>;д:yQ B LyXNUev4>ae~6TnqHExʚͤmEsJ3|lED] DI:l,!H..b:1``95[$h2Ca1>KeQrN0h0Wz*}>B QaΌ-Bg˿0ʗVF@QV%ie9)$6ymoKm_>gǝ_au BQ!YXTdbQU:l\sXOO]0r2Dn_s"UO(c%eߍ7 "vm6|oC+4wمd2BD#(܇!M0K*p o3^":޵~{8+ -g=pq9od^h@kI*垩mD:5*/z}"tvJf0wv󚔤q\?zw ;ۧv+)s C5D}4mn}a@S ͋mjON"Yiq.vjbh ^h}xH0Lj57Ԭj3rATd/ho%2톂9w!P!xAt.xSb~ {?scYdȚZceG>1GwqW?(Jy/$s:l?5Ӥ\o4v `}GJJ݇ۓVY6D)wрFagGazL*_Vlœk;bpNZm1vE7ֆJl987D'qO{o0IW:? @MӸn6C^, \OhaN5]ɭX|ʵT\9P Q PrN=SLTKxnXT@]^v;O&>?c+',/ rFj|dV"jA`1G 0QYugdќVc3$j>}f t"RvޖtVUx-զC+i>TiBcxivjԕr<3&~8T{P._}hŰr(S0' 发e2}Gz|HXGEoNʆzC3X~"E?bae*ϮZlP#+7O :yw{*AxFpWF83-0KbC< ^нES0ܸ6a;VTbG*hDxR˪.SȦ +"ͲoB!5(#>.Oġ,$(<-{;0`Snk 1zf?Q~kT,u񣴷s{}zv WN/-'rMӔ'/×:V9/}$ c(&(0/.pzo,:3˨f!ź~vctaAzT6iPlD!mfpp7aox{B/!|VCЏԻxfWHm[j+'d%}aF*DܴBt =$#wk uNf1%{.fMD/|G 2= XnO1ht$`Ղ/ea#.(,FEe \ugB.:r*BVYHX R5ĽySB5l<9aTs*isHb~-oz-!u, #oTjrlv(E=,a;R<,ٲEW*'RC&,XtIĪaL + »ad08 w+ $nOe)"$ú 2a1UAa0_-aV8 M; ?CM\{pr -6^k1qwzיg;og$ " VJ1M'NK9[͎ʔcJMYgtcN@TnfeӺ3M>8mz9ScM۬e?I7#32#7ؿq67}Z< A^VbGe4}6jXx0/j=*GlyyEZ!.û}3>Ә Р#Ox}Դ-߾gCJ-nXD⿳ 1{~ IB$e=c}t71T! GXƆ*.=mo2Kh;隋#]*EnEp. QsL) Gq?݇ϐ6R yXT=é2Ww6ܮRbswRKy$굒 򰸣~O ؽ,뤯tT{R4ǡb'f=4u˼嗂75vV>#h/_N _ϱJݿq L,ҿ{U\A%s#J,DDH_6H$z톃ir&@ |4^OiR1dbZ`Fu{s^ğWe`NQWh'ZT8%=Pts&%Yp4GΊxpȅۭAI3>6h_W䫐t^·O@&V dD"`"[;ňUruLۃaGu}EjTBu*8.qPT. if0K"7ۚMV%+A]D巭EGc7pCk1E**A1ƕ":]:@]p ]^ge"qbq9\G=/]UsD(y~>XHZaSϮXM)첻8bY7 *rԡX/ Jt CQ6hBE*bD2g migCo9]K\(Hg!r wwU_."'&[AG2œmz8iYڐ+YUC|VrN UOF{C5_q <=0iH< WA.m#7<܅:>+@m&qP!.)Lݚ{֘u,i^v_[Je.V*hJ@o nq=A%[[q|ZP,>)p>q[N H([7}gRr'(؇U~OT!!D2>G,ߒ]$^M&,#98ut]ѽjI7U%o ~Ζ>uC~Ms75ǀ_{0"}qqVmzb{,p%q&E S秖Tv\R퓟ќZ3Yf*l4ͣW;M3sKw.􎿼#@)ڤZ_ޞUOb:݇Ā&؛$Gh)/س[hP [jAoSd; AYtC'd %5jSGԯ@R}<2U3hc27e(yZMM'd=]?@Ü7M[.cV3-ZvLIjqNK(b/^L^}O ҭtj_ުe> 9uuو}m$' n,Qh D<B1x֫~VSJ_)uY <`ޝٽM~,dqW!<5yc3WW;,fXzs .h/.lo48p+*Op~+M>#\L>i2c#GNU7]d~D֭#&0V5Po dr[B(k+ќ[9k}rx͡X I'R,~i7)0D-(q@ BIB9xXf񒾲+AIծdv$=P@ "RE6(WjxDs#st.܉4Ԕi9S G]srhp?f7YBrTDQxrԜJH[j`}FէAR U;{/=)^2h Gm-n׮x&J^421.f+ӽEOs\u6$HAX_t{lHe 0,RD/9Hmӄ89i`7u<^JM0`!թY4ϐ[+2mޱ1xQAZR*qyEj#jhP )nq$0Np<~zqVfs>sO9Y+l4 }_1SiƖ ~/6(/ZrM5R\kT4AP܏1cP(\nE6'"@N|0oKy^ 0HW SzLLgiy"xD 5Yxy/, vOLlv rwy&"O R>jX> jdg,AfR|g{h?p= otIcPX\_7LR.C 2Gg GIlmFMūMlģV%:jp0%sӗB'+ek .M #5}&3/Ju!M{m"3tiq$Aa pXKeR}y˗NCu:^2Urf(knV[ I  !zب</( 5]3[prf^#KRTMNh]פ'c PŁ y LyK4g75AY#=1)I%k+K&-y7۞"p6NPPOGWE *V;THϩ63z+E)l]nvV-NbJ*/vFZ2 qdesɤʧ iJB(Bs 3֥I.d4a)Im=@=ƚNj׏7'wHQ Vφ G1lx{㩶 7/\hE>& pvƉlg)g=!~ ;?05&qN c%ʰe-CsޒA[1(vQ%?ڭc&bo" BZ\*w$)>Hz g*ǫ]Q0O8Vj& T0KRO:-04Bm2URdQ؂8"pI_#qh-*f8l l5/y@U~%b\ފ$,0%+M"@#vC#GoןԠ,Hk.Qi;>9ŌzGrbRwt:9pSQ%=tjft z3ZD؟`{C9=?SF0+D &"?mõ!#OaƝ..0NKz݅`:o? 5,,I_'^ɻFmQdh)wos;R݈]˱1$]8ֳ%?+D ̈́z|RMnOMltg ^"->@X;U eu zr2j3wiJZ."]+; X}(M&gTJMNnO1bU{V_h66w+RzdXW.~+쯂'1ao=O#LL4aZo;",0M ZVZsCyq8M:o;)E-TU$ҰQ)Bi ?~j,ugvo?6P=n؝QvqFK؊8zŚD 1y?Uf#Ԙ2~Adg%;@{ :֜8Q?6J2[\pucH{(Q`==LqȲdhWn/ο){ kP6R%Y22C4>^F+!]alLڈ1{z ~,/S7h 9IJh^a'r< xG]롣,r̰\ #Bor\kR]5`VmBUĤfdU?K<ȌLS% =OE3v%E5)1$Ƞrq["LJd aN0/|6zoɑaD\Q<xIgZM澂D]}= MCEѲ#d#DžQWyd0R>uCzHKmoJ+vM΃AESZ}-cayHvu֒;cR:i#%Uj!P:+.J ϴ^d+1;kX:kl[i5%oY\[؋_1fߨٷߥ˳cúBurqVJe]QOMR8堤@;@B;0*Ãt "qc]!JHHК^#}`ۀsuZm9];̣dVIǭ?  $ c8gQr럵h%\BMv݅1QVo6eP9'{$"k횳 =xOu*_RKw0~,Sbu^G52ir@b}OJ=D?.`6, +aZ7zn TP̘ =7t;N_-Bp;Q쨅 P>uoy{qbpQIW~/L#1Y8m {s4ў6i X1XƓg/ƆM%\q],\7y'f5\^ =0:Zs i9"9އK&YOͻ rrJ*H _4Ctv۰VIю6Wz=c$Q1i*JzmnGzP (md7G[>h-T!qc:ϦpM fTpB`ZACB,]Nx<G•)bS&8ULb.?c4蝀d QTVOځyZXƣj H59)2 uYstl .#_[6{ x%C]ȊH/ ^3`$a`wdPt* k(0k n$Cz4ƈu*S?OȖzz-uEB69 _9dC疤x^RA.P{t4 Jp>7('BC1!~u 3NzKJ4 ]u#y:CFRƨyH :eh2V(ClF!_Q57Sat̎`$ܚQsh^PlD"[gFX}pMMPd2#NiԽ' !Sr ϥt Esv8M$'ط2uxSCb%T>?Ntp;ol r.@ʥzmzxZo^f!CD`X px4 ˸}FIpw/Wº 4pF3^ڜ `'8uFk~GPUp&w'n=B.P3R09pn()iauT$X+X♰ FG:%@Rh)*kDVڟف 80kEٵ܀ӸBJU7\pK {Ԛ0M}/(17Kݿs`9ǚȺ= |?|.D"űlM;KMiO3+]b6@%@@]s<0,Z+\)=c02P کMUID*71Y5 -XMG(>ixN( %aB &BԔ.mq\kFIsM5lH>oC#nvwcZƕ*is~^˙U,0Me/pf5fufGrN~#[|fRcEd#kkgx|RUD.jHD d *lsqL^'2fӛ +'!ZU:=pfE5b (Qpq14'F[96t;)0=Vj~ed@ZNV"dzgw6$ZU`/lTa"ܯ<^߃[CR#9 T sТ a谪G3 8'F)uW˱BP&EXmSmǚE͸9s>0^JKC끲A{#JBO%Y v(s#>U_ k36i|u{~dϫ]D&jtbV40ꯣ)`]A8fgg]CSj\&%h{;baww 7tfR͎<"Q {Uga4 л\p/DkMlW}aߋ(eDPXjP|%VtAQdB P,Oe>C{alp0/P+_ ^!T`a^=|?Y$a%JVޯk{ބmtL& 3r8!($T&U .]; 9D?ªv@4q`H [)IcXW8Fk_/RK `=͐a2-NLI)<-'ǵ֫ lKke^}4zA <7J&Hhi_LQ4jR_ڲDW$S,o.p 0bSP# KoZmϣ$O&d& /8]9bZjj&VXa}%:Tm,#<㲗@ct RI)vz}5ʯ1Юpb"iP`aG_2˅u"S/m!6ի&˻+[:lW`[P現+vy`?_0E(A:⟍ڮqkܺh(ByFHԻOi19//%M]>m [}5[gqe`{sZ;kpP$w\bɷ@ʵ_A!S- P'ENݩWkS;˃%DlL1U)>(}p*G<'1ӆ1MoNpN ͽd@ع$dC)k崹 /}@+^+<Xw*ř' Ԙ+T%,8PA6P˸ ESl-Jފ4qLM ~G_ߴQ0h% :oᅯ[hDr,Q1՞4s&`vgt2OǜJ}˹8Y;Z'Eed#&@4l z:*}[DH#+ Y*6V MŴxVӓlˤ#"cv]AlU)bܫ߮ Vr[Y+4 Z|3*IﹼaVKSt~UaTW@_H`،~Ȉtڹّ# chJ}+pdHnݞPo:A.bA/!A}WkQ s "Q`9/P1j^¡-[;0,D慱}]T)"q>)v4Vfv88ptp]KhaPf M> 䏴Rz-[΂MvcԨrR B6>bb c; 6Q:_>x̐tń^?B=*P;e9"&(^c˱H֥SOW>X^@Zx>gt'w&1::̾Hj&8"um{IaȽ4@K@_F[yPm"ݿ,P(sG,Yu8:%UżT[Ĺbl[.6KR8!%t(SFKƉ񶇓OĻNP8_Y `Phs 'zՈϞ>,oV 9qt@ xr/1/p<鵼X g(|M802U/㯗P$,'+n~kW/(S&cM}ɡWsO9R:0EiP<*q,=wW *}b~a}^%7c;tXp41 [|+&pgY_PvN@zV 9^&àD~xrCzVwMX1ᭁ'y_/O]1$첮6WE2}b։ڼSVeYq0V_NPV+iz?XUwRm;%H$RW8_{T@.XO&zo E]!3os8?ޜRKLz$Ǹ~F@SvܽPmpɌ}T _+c.,WW`l$P"aRu4h1]} h`Nkަ(),uB%ЉNB,f9I-͊5#Ip .ۘN}TiP9Iՠ;046p4̯:4S#WcIO>?/bU.D &[Bs,[sV?DD2_.S>ŮwxW?Yʕn2/-&kR*\2rƨydڈ;ټ{5Q7x>_ȆR^W\Rq*)N(^f|f@Y(-7^=^GY̯76=_ e/ymU A>#X }FxP:I*dMp(1*^eYhh '3UffUPc؂R܄@}sJFfݐ5ڷ M#2EQtQP0%q>I@MnsMg_r[}4 }e5,o?mE }=Ot @i7X`Ix 9+#GS?c%p !E.CB9N< f~TOd(ĦNb=`u_ڧN lqˁy4 PR9n\(ᡪv? o/uQ/l*,\]qSAnb-)K,PTgЯsn pY7>gǧ9_'1;lxDLxO8l 1柲Y @})CY5…/L-ckؖZEPpn7m" >B7Lz|9u-3%i •c9 ٣[Ny8|jHQ}חۮ62TqJPFjm#Ց"8M݁WnM%ɱv)Ռse8t8Cvc.TO/1ͲUC)l#.㉍IQ*QÒ0l%nNoK @/> Ze-yJ%b30-GY~|nx$ddۛZQ٤ 5D-demkg#hlFB$U4}4pIT|72kb}LYNjb~ Q3WOh: hvQJLkA,ǧ]7q >])!*B3e](asw4NPֲ҇!oNճ;M! "YM(kr/$ִ"N.!K| |粄re Wtn1Ң[CoGNg#ר*$om~ᡥMM@CAAv瑋[yoqSrh_!sflJ>=J'1u"WEVK3>8 řt1aoʳdH:$-V ѷ$F99x,A'P[.^W/ ]i36u& 5R< EɺvO<1Ƞ*t3l\5׷Jh2jZ7>çێ1JÞeK|-?WG#" dJMIjC p-;m:Ӆ}KEa| ΀ӈ0r'3yG2Ό+Ar;cu.O%B͇leCs F2عt'},Rfӳ \벗i =k 0GpsAۯ ˈȔm.@oVX_aꚉ#@$`A kC 5&P©ʏ>1GFSBOlmȽ{ l|W4B #* 2wJhgR Ca,A"lrK˯\6i-帄y9'TUtEkTN./*fBeU s]Rxb6 ^om Y%`|3qBPS/zec9E8s8o%s(z dW5O+a5 J0X1OLh<>_߉2d;.zH+3f׎8 b`ӹkV;HhDi+2 SLƆ<9k;xPBf-a4)^_4|Y6R6 f]+# .e}~썓4z@ YMԍKܾ vG=m7cP]4ß$f.tJ=vdl^'A JnnJ:_!J/8|6'3Pxςw )I}WGISM*Q/ Rn J ;Pg>5队2ܴTa/qP$tdU@מ1Y_@%T-*:;`J 4M~9!p.R hJ}Z J&t=],?2AY9=ո]2au IԠ,|U3~e5}o O7jB>a ȸ;҂EBVWi6Z%djpM*myW|YԆ P c&|\qJvIrbkvEG)O1vrvf QwĮډ ?lۻ%rc1&'rGF^Xy3VΏ9ٻ~d-~r m cv<\gq':Ϸi=F+N:]or[[}n rk.~b/Zu,d ,Մ᳣.>9Gq)ʜ?oVXM*e2&hDC-6STkqgx},bzXCvw Sߑ{2$E`qNNCϽ#[Cdq'(/ >w*BhoPEP{R(f3hXLOxi_5]o5J؋#ް"bh$xLs:O÷]-@eI]֨Ԏ'ۊ,W$C(F!(e AXDm\ߝ_A0w"`h"QHY-Sې!8gxj]X-$Dn]u4u񊮕.kX\3Zm~޿ }CAV>Aձ̡ѐm9⠙o 2gpOA<#1Jg*OJ }5sl-,Z*(A|G&ʠF HC5UPεEe8pU+̕#T [Xt"nCA7䁬b`3 ڞ"dۜ~-C}xI~hTFN &B@0VcÏ\?Gel9ih~ʥJxpkdݏoBV+t.װ-n!R_\YG(ׁN[ HT]uLm/!n{']c]XAE I(Ӧi}Wc˸TX@5oHgmKQГ6ip\^Ζ0 %F?lZk^̅mvtހLbW)1c(KreF6-fDטP6~xHjH(H8`g Z/V Yaov~C/1Z2 R\a}03l p韐|/ +/ijrA1ב Vؔ#GGpz iԳ6~Yt/[猯9)犑S`x(s^z1,юdeÆ 92/cDcNJoI¼?ի2QxG_ܑM[T1Q؄mM{P$cڠ|gUG/IiQ7JJɜel3+eaRZFG' mSܳF+nC4v B2^dJtEX*:^mTt'Z_8A׺zrۭ~Ks!kxP7[cb/\*fwu$%9Vaɿ-.ZȸYT ݘ ~NN4@/j䞚6bM0y T{S\CK_^k/iF6i#AItD >P7LgB^3؋׀G1F)4nKQ0Perx SS/`.xd]s-.C=P.Gbg }[AZxLoH1DOfW|޸=b:6"Tћ(~ϺݽP7~Dlkj~(l&m/f['ϯGqQ{˷tO]< <PޝJ 5& xrOPn.9qs(U@3w_uC(]JCm6U8!e/޾wRt|S78 ѻv/ xC2c 6oRkF?ҟ`sKz1*hP؊Py?~'~@Lvo[Ai?+z֠SDbx2Sqy+T-k@録l_`y0/nVQlIu|/WV]j"#{t|\ͪt~›R?s?UhJӸѰT5cw[Zpdp7XT8BHW8Cqdjbv'㏫F1i+Rb/O83hi/@ɊЗ-,ڥxP&cF:zܠVwƏ&F`HrpoeNfW7mv]± 51T1={:KgN()*A-s58OAKAwRق}j =ڲi_-N؇zTxCll& i Քn_).9H$EXa }(-zޢsT/EFUeԴxFӉzwV"XCEHL`+]ҟxTJ\pg ٣- ]eB)360o48QrU\nnLnH_@/`LfKiDSJ*H Oc] CX?B:oz <0*m"?A&>3"ui&fD-d 12Q*y϶u"Wꂌ< 0a 0Dߛau12 b A^S(ڪѿ&a;^:R%}- DGX-܄ͬ? 总O~=BE-pCa" Ul M-5S'bJP}"RN ohݚKR緰vq%`(¾$qJ9PQu.*Jw,#Gm߬khI$%9/5A+[79fl]0;%yutYޗz|h ʴ:7f1*t1eqe6b>~5cv"]]NSU5`8)؛V2IeEf.ʦA:\ȅFy;=;y$NbYoYq~ETś qO</-fRM;8b7Rz5g}+> d&zGK\9Zn'FN)*~kG .ɉ-揦.) e<[maA0J `(l׶9KN7wO06oOKqY s;1. sjR$*h6^?sZT*$*88:IvW> sax.D[|KGnDa"ki?pBjn/82T ~VxaԭjD%rb|z9HuhtzB)ȞZR֓yj%V$؈tl-B$h\/AmfO:Y.1ҾPS92ju0[+K 3il9wB[?o:y;E>!n&/ocasAO09۳݀Al$<zIh&L#d&jlR6R"Lr XbL=neܛWݠgMd+AU\pMT!s0*. nqv_dNE'*N^efD@Q,L(ȞG%>j~K :zkIzX؂:-KiKށڹrc #RG(*?͋2*O_hm hss0M#(8oQ$O/ 8 [_V i=J\2Y/ ;9ep)*,2I͓Ddeza'!%Wfq[szy^CQ _Ԃ\bvyy"5r^Qx)-8kR5cu Q`yf.boUVZ A`_NXiTmhKQ<ʛ$i4qedH3(td1+\+ͫ: j\>)Wjj7bnwC0pw(Å>,yߠfwQApf k3R3)'+x3}wO@8Uyw_msEDgnaG(SuA.{\>L8葾0ڸ鮮DS~k69'b"c7x^ot|yG[ a@2ë]"s~pK$}z.0OM'o;M(dU +܁LDN06Rq=ޙR'k$ sݺAz,^5QtPoR_1'<'AhK+qͥ*PPkR/ 6@0^wNZU[&L;o W@V]q&౦޽*]^[E\\Y]}.u/:L+&Bs.qG|NxhzGk$Yq[&VdT2:_z]~ĻX׍pI]W+p7nEDm‡J>+N 釛e# 0x1Ȝ8^s)7ɢ xOzg4եpeP [w.檹I epnl= ]3^=moNibOQ[?&e (Q7;đ-e::HuIq?ot}q GÁk_}zBReY,EsIK0{>,uZ4X(@YEAG`.|^ !v|Yѳr'-&th3U|$8B6ũX|z6.VU\!!B'*?lFq0q̔rt411/O2j-\_|3\x+뒷m+^ù$Q->*1PM^]q^Qф"a'!m 9@gKé$81;(Huu(0;Mz'Fp=w(LݱR)r2Qc*RT@ P:XL77n.K9{ik_NLˣ2vo*?>ԠnfTƇS=8!b9 N,!skOD9 %5ehy(8P>bq4UTl˾˻AɽՕ"q 鸤P1)fz_| %I2dU2Uk :tCj˦%9YõkpMڛФ.K9GN2@MI*W c )\o;_((61w!]:x|&3 8 W/7xmjtxx^brK{i}Le$̥(ĭXN( q$SC%J*|w`AI'jީIPOcB;.H$$`Uu"rY`yk$n};5 <m( 8oXFteׅzϩqdk!vSN.qwٚ'ոk+ E.)Ҙ(Pc 1n]}-<`&A$8.VT).:gÓ'g0ͳЎD0 rW[:9$TΊ'nj|i^߹gO> Z7ۭ qHٸ9MmG]^JGޱ6qd}.!5gp|,>ay;gyKۅŮrِtR05o@!Gk烸JD\- R3Zr|F"ך5ۀ+  WLDٱ :0Rf`+]%urPgnv(o{4)A\pbYNdw4)N^B,_wPN387h×a chXbhsbgMtS΀8H#G+`i (Z9ߧ7g@ťʜҷ$ LR*`ZV =%hqg[]=䄺*,U| Í^7O9LpA$${d}^^q-@}]i2K(N0K&WXa$0g elqq͡-._|œrF۱4 CRi,V2}A^ 2f͐(^л}|/,m Z$γo =y 満w:r+>L,nW\ٕȝOrȩeD -;!JĢ EGlhbbi։-k_.B`f3b+&8Tu[N1{2 T'O@PZ}7 l$O!HLgsV͔c(|XT W.BmϢݬTB[aX|2] ޢD Od_#zZ[-;kr K= s;ӏa)#9dìzb7Oo 7Z<:Hc\}x)tix/d Ÿhx Mb5;g"T5/|}Ua `+zI(&!, \Uldzu頚*OFSsj#zP@J]g?X=ٍ D(qڃI .$A4R1dA-/)|?Ș'$d:섷q3i%hf"?^Tpu¹Jm"i+I mkmޔ|rGhxEu;/u_>|:}fP|F¯e]FxH(yY +_1vÕΞoֱo Qtk ?)OĬX+nRGՇҲR=x6Gj3F!Fl47̤KIgj ڝS@E}PRH䧒R\g{HobPdZܣ tJ нՁt[=d<4yZRp|Izq2 "ǯByoձs411SH͏RX3v{\~;Nn\ٛD3!>5]ԑ;3$v^AE8`AF{~r "8@ɐTԪY{D{dm+9~W-7WkN对v$f\ޡ_O;{ KNP85~Q犁u* sK< mw9Lt_PzGa洳#uA43yfuc?aMzXK_,Sq0 RD(A\MaSs8Ug.K/v7[~ ml`gC|q-a 't&%%,DͣAG=A3 M\񦠋ڋESĴǑl̃>(i펷L Pk^1h^4Wx쌱[DSt߲] ·h'uǢ urH G[*L!P"&ؒN 1X57Hf(ª5ƞe*׋b;r]Ki"~.a)]“4kЀ3v7N.rv1VVeYc59*/+ߗx$zuQf=@?0S>U8]I2m\7Xbg{޸ 4V;rA,=)ʧ-G/mKD /7K=$PX[@.Ua`ACfhm|F4E"P@hkC9C +#!O. ּ:&ˤu3"QrmfL2nfVg'KATB ~ (/yh>&*j8jk(PϿBm%N[ZD4^T>u7/';0+#b{0D Ra%4Jq"aҍ|{uO(f1CgqqorV5Իp9دn!ay'X<(aU\f4c B+=){jqy]$vgo >S[l ^? ` ƩT\kz!2g)­p$#g_]Xetf~+.LKX0AeND$ -P6腨_{{>JN4ҍW%JJ'Pkour%8$o~(EdzsFh9.T<0j'ͲCL1պ%ZdXX2Ӣ Nl ~ 6lwEBlpnzc#w6,0I[|r EX+1 pћ=2/'64PeBlNv%1aӟ:4cGO$z/XFmՙT^Un!i*Nq}:H2o՚Mom_$LW _Qnc̢f N/U^ijL ǯd&f>`q-Rd =m5!廊q{wi)̰~_Σw_/.fmDSpK\¿q)@c 䨹\VQ!QBb`ȓV|^#0"zi^n<_<񬁳Z)corMAZӅ#{0aBfPjk'qf6 X&9bEqU<Ƭ" }̀c]*F0-]P^~f;ea_DaJfH^rf꣬A&^sVytruW.6HSV9T+7 LL\QP9v=DK8?܂A2+5։GENBF6nN`Q] wj+Kmĝ;+[u6eb; 2U^ 5N {GXv+ۣiE;\B56+3Z֦s< Lͮ=-䐦:!j<$ (/vT\1}v$'B{.c~ ̡Mp( ͍fL;&%.>|ԪX eoemJ;W&=S!1oRSVz͚+4I "5ev $Zkt1`_2+FlEr"vx# >@!:{i#Xk,|הwg zlA靿 ]{ P1w#qKpDW=#@KPec by&_YQͷF[b*[N | NtB2JL†|UW>|""AM?8m "*?N3YCMq3Il>yJ :^ .u4Mxx=flPL 'iBHYÅJU&% 6i~9x-A`BjjGKXjEۛ$ycIT)&D1}Ǚv=4Tkq95܈ ^jbB5`_YϏz ֧lU+u/tATcvbԀ GE4')qX\>9dFc~|aÁ35\؟cf%v~.BwQ"ŤV 5c)QE5T@x.4,JO_ыWM;lތ [fv-X?mYM̓>/PZdA,{UiɽV[ysiPna]#@!U'9 콗@!ά.}2IEdMa$mdCp.q) *->U8*<9hkBߙ0$i'w V:\Z{0dPKbʆ8dǼ7Nm(-yBJg[Y[YwrnFnTq@烔aZ1mlY(r Y2̇ZS:OgRd:qg)gKH#f~5GٸT⊶`Ro+M8v7LVmyqf1DWΫen0f~T~J,#)0"L:řƪ[ӫL1< YDqM17 K tmW^R#G^HDW3#v߈KZJ|eavFugG``~qxi/]3-KQ]>m=;a"1}҃wN ?')94!v#!'(iXϝKlBԈV/DM}c+dryb[aZevv Wy)Ua Q%5,Q#+!!fp qcىǥ)]OrVk]^%oY!fFDF%KR:bR6ǭXOֶEuΜJvµ:qt*X3'+嚵}dSGv%n_@Sr=@[e@#<~!{Yzku?¤AvlC0-¸ys">1?EQ1?8Bn2ξ[E^{$4rbw%hU#?vUynP:x G{;ާ®xVnp<`=xk0 EеrWlAQS9Jmy_`'B a!,ը9"w `Ng$4Cbqw@jB,\G#zj h9"ã澤$2$ndLkwa8Όpa9E#`嫴˓RmPgJd0aܿJK_g _1?}J3Xt\Ŵ^6dx|w8f; F)w^[+]}j>F~(j>p[yg @^˸tRgğQm-Y*CӈdK4>EohX_mK-n1ߗU^B:R+"IrnBُ!Y?|ug}ѲU==.v )E?"ħ^t4I9<m JNcIaI Nv6"YR<9#3|=|^"&m`:}o@HjƸ}߭+ ~k ްۍݻlq5tx V(g>|K"~r0U"\sIRe:)_bF/!ҩ8GCCw?^j>`=uy)Dcz`|19zWBy ?լ|0>-/*9 cV";|&׬^J0_}҃u_~{h{m ~<͞\)?ZqjJbﴂeF4'w g t)T=\/v,I޶z+9I'3tOA 7-ӱS4nANHW`yu4FG5g5[42ιǎ`~űcko0*-^nn CK cLӋo͙U@h{U&[<ѣB9J^U҅(- -E֑'ZjwR3liG(%XQeΠj5#lҧ{6MU+bq/ 4OHP[KE4$2CE`yW 7@R؃Q`0 Y1gUbY2!4H?NsA{b5KMdeD'kVX\HY.^6bdLᮩ@!㞛 fcq4,$߈˦Ύ)#OQ >ab4eErPo! 7I z!H=5\NE}vfz=G5SgwxajZkUS@l |!;hiRߨnZQIlސd<i.8e .0H[;$Ykʀc$tmy+S=k"BU8A1+M:lcN"xggCTՁp#k˔WM'd(KືMuyQ=Nҷ0f7&{'娧;4fyR9,Tadl'?lRSDK`]ڨ*aɯɩ] -=(e_VT+h ]4Eh N[Yưig8W^|$X4eYj|06JJ 1_#, WVrK(0m qܶUNGX$>^Rτ%T p +̯n(8KV]qI8Ug>s]?3KP!ݸn{v_&3:"y L=R %>iStKMt!٣ݟHsxm ljn5L* g(Fa ,d|E2yhAY<0vz ~Op[6uڲZY/qPP"v}k;$κ59nmFZ7]P_) >"٤㰸R'f=~-)b;Yԩ[ne0qAw V1 ]mn+)~J[&Vfǿau(X&cn,lK"L qx V% zF*<?agK9_`ƀ&'Hv #)îPoTuToJ zdekrAQg`E,WA^)Cr)wt6r{"A`>t9۪PAH`hX~it]r/f=:~{*Y|jG*.gө#qIw$u7곡\O:h$':$f7=#H`yԯr[4}&-*7Nw7N5(')gpCzɞ%>.^fd D[s2z(30+Aժ@;y`l<!elމ9El+M㩤QiK#:y44ƌ( IJWZ#X Er+J6O[ʯ=ID*L/DZI w_gq4"JMK7ԌMhlGjJE vڛ=*CWGq}Cl *` r ,1%{ˊ]0Lu>S#Ǝ2Ӝ]0"Jש`_.q8E0C\z+n[rWzٴaj {QFyt&-5Zlal<ӺhLo]`IzL:gDZ h730ZH$aB$ ICuw&R*Ov: _onJ#8UY!V#Om5wM'Je,qOAT5k$ߴs.el=[3;Hz©0FIg7^i՘y-9NJ`dNlˌG "҈\<keB_}ŋ6W=^ɸ4F]|[qo%a-Z^CMJw7b h;)SY xE2 F ֑YEMr-)_\E82ofԡDs VElgD@T5exX̍Z±<cN 8)0Ü7IMy4=yďPF7Pq/V r14;E-iS{$&\"e@J7Ę-az {)8&X {\d>aO2}r}{uCl{cIܐ*Lfi:(*tSZ9xa&tF9a;\K(OU}j"&9uזdCƜQ34 ]YM >v6C *wɚ!S73&85l4Z#; ,\ʬK|f 5:DU<!%I zK]"5";"|'mEd"8P=CԒ[ׄM< H)@ٲlEE9ǔNK6¶2J %K#a\AGG D 所Kd0_TM6?@:/fg.x,FyE TfLq ?h<+eǠeI wjcr3wo@].m0NF4C L4b 7yRP yTC1\"LTFun ex:$q*j+ӳ~w Ozi<2X& ( MC(>4$a 62_?wM}짆7|WMQ8>-!*YUj YAV8[;bW&=%‘Cpr@y+G D݀b W uc2f٭nɅI~o17.K£kL%Od᥋Ǐ,JmvL7D(#kwD- ܄,KAJȰ>/%K=+U>n҆JD!IǏ\}5ƺnoW;Pg !UW6W𥳐`׺bi, \^$"0W#8 |Nڪ^D^rliht=Rt֬;樰6hq .K"i8˪[o-Bd3XГu!iќhz W,`'ud/%;?w!&AXI^h.bRmpw"PLsU*5 "br42.h]Rm"vYz.s0l==ejj^zF#j!5 ֖}Jx L"-gM9@ujk-}=.9)8A 沺(RDfx)Q6[M7,O^SvNjL= 1S$4] 6[sZ f[pZgddb߲#+'rE{w.Uښh>IFIҩJ66U&nZ7 Nx#f:g [vՃx%-u釹qJ4 p')Op |SG= V|@zt| Fe X:h½AD٥V]~܁J.aN*<%n^-Z9m@MWۯ:k/ rg?H{}^CwI#Z[|t*pK}7ĤDo%T>d$.S& šR@)9K}$RIkl5xtcg?Ya ɱ7**n@ᡣe %$ Л35:!Whb @M|1]ÍCxCQ'DŽ)zHkޏO㉠ )Iei/.ǏDuN5=+$9Ζ,fӬ !J>tW0sjsAUO g(J!g>嗗U_q~{t:P%޵L-l~dJ?WҌfQ]/}=RY * b?@ydQ.EeXouD!^hyl\rDLQ~z~(Jkh%'䀃@`r%Ȼ:D|'-26v|AYef.Ʌ~Lj jt,x$iIB֎ϰ5sxJ%pe X7Bͥ-mΔt;1 u^rv?i} }"&Mmd9[ i5X1>*,N'(ym8H"%T/rUK ã,OJ4^iۏkP'zZ^;~\ -58Id DoBB(߳O+uj1oAUcfJ!.19*C0Z(ڇG׹_ 5w9G%Ϣĩi:R9U(7iاO?B].NaGBm*ƔߣQ-W(ڤ%{Q)^˱Ѻ7qNF,KdfJ u(Z&xsX1}y gYtQqh*iWoGW]:V=zc{=b3/a1Ocf=, ӄf[hʲ7^X&JVhʼn~BhEד9"^y.NRjZa[~@pA4LH . d(?`驉'sa/'>~_Qv^Tf-kDOieP|.-9)|h9aHh&-;A!G#W'R8 _k|=] 5-(=Q5MME4Q\VI?z;Cfc5X'\!Tu# ĄؗSdT{p@'׸r:c8%)> lJ60G^>7х$z+u6Ӟշ=;3V#k܆62xyZH#o4{֜cV2S7ά~oX?#DLǜB[(dpc鼀P%tQ^1 Da˄.0tjSC=(*x3z׸֞._K1؃ieOBDW'؀!{B]&w/vXEry3vg%I?>Q7»hSҜ&'!+i0, asrƒO~=)dR= }(;l$u0 cNXxކv~W{]P0ke+2wf RavwIOw8Gwq^DR,d;^ȌV$N H≘v&BT2x\tZ/}yu\"_G2]V:[ 樜:-V=pZ2 rwas!`c \&XeMĈLne7 nݓ@) |{H 9{l'M -Z.wUˏۉν\Фq[XJQrM@wyYHBAET7ZUoiu/yl\'0_bK',I~v,HGAiHc%C;%xodGK*=ihC&`+^=n>z2gWHh~L>_tg*G3&wwLh6Mcj"A)WE+t# |֙z1654gKymz$QJp4V}ĜrX q+hѶFq+OBeӽq")|wQ!t*6 $@Ak\ii3 gfH:# AO@I ܬ=*`O 2vp,9?6_[7Ӿ ZrGpENk>(L`=okISW[Іu\Y&)fG f/"H%#fǶ8 τ"P\}^Ҽl0rskjFwE^:DD{Mi`mz1U&EiVu@ێhrXċtgEUO 9*i y 'i##8"'\} BCvYCvk?}9m9IUuIVI2V v+BOЌ̝|ar&z %g+P Zg|cX^)q)do} _`'@ϓD[ _DŽK)tڙ:bzt@xI)Q4y;$0JDTCcv9*'R,9 $K ,4(+Iw$鞛VJ3H14 ~WP~PU=ײ LD+z!KdEeEm B E<~cWG-o+vTQys`مk=CYGM~kzeE> - si:Ni8sA!Ҩлj XBA9[M[r^~M.YaKT=e\4ZXD"2= \z&W?^q)f"ń|?+kNd-ܓ}gN4Qth:a P1f?Gqx-"d̢? s$EbHA;i~ˢ`]P:t!ރM&IRuΥ"r6CE- zat%v7IIѣ lq[[Ałs#ފÊd _C[4!L0 (e1dC%sSGAj$D( 0@Bd&//XMCM1-g_XyWWoEym?(TraH'fJ/,zd b)3?gGQr'S OF,J1 :U۾;3=K&$纎G!ueZY1bnÝ E0-$flY2[gJK\^}bJGæ|>W>I҈-෩~wTrؐI"%7 .SFOʛm3s' Ѡ,́=$o/X.r*S$l*& T>H<1HA99h,NCԁ;GĭV 7bx6d]F^׆Ui+^TH$Yuύwnfg@aȶk{l+y 3Qag ԯUi%"!O`O2x}h((f  x9I0feɵ=AB)9A}9`&{ȸo@YoyQ#~!x܅a O%|!吋C)j뷚V]ٓSi20Nv M2ko2RKho.(+^(RrJݎvGu'Nv >i9+MnrQ#3fFV{SfZ,7Jq>M-Q{) lZ= 4} k/Zу(bߖ0|I 6d1#ewJ.mT&Xr`CIT5#M^&2"7V y- 0x[tCK?K =ɌP;vN xEg3>ۂL+1xϹob*/3X/|ߞ*w_aaːry^8u`^].vy' ty4H{THE8eؼ2в[ f\KAcF/\uT͢x9<~V%$'hCRY UȍjsL $-(J(ld ϶2y`a>-qxr;5A/>!8!W9j=*{\ζ&anZeK~lo.hO!j{^*QIpghYt9of1K[.7K얝-/*d[vT{?l3S4C'%qLF D_cN݃>(MsoPA}=r[ [)sayL' z}@=ڔ /9ƵS^Bׁ}X[ٙSv35Sy|ާ;W:(Oe8`IlquMݏ ڍo붱H0$nw\e(mbQձ!z?R K7|P=|0yI Bp/;L\T. ; ܢg {0ϽK&9L}A&.Z3$⟙t[S2D7ߺQR َ-]|1lڶi]*g3_e!K,7,Pw%IaQa~Ysl,SXknYG)+!]OS8S{, W *UZ8' T`Q[-d4n(p˖%n X0MUK`[In%a&G)4m韐=! O KkZ =譱I)e3vs\Z=[.?=S5ѝjgsG>#̨1$BB/*fe@M&.3=2#5\iq ƫ9.`Lp1-但 4}?lJ+cx--:lJg0^˔nX@T g:3SJn;/tZ꣓U@rpvl< ]o(ݝMF~Cz~Z얂ClYbxM3 ҹJ嬙t\0cqzl=&9vDUl-,ՇM[N`ТRȋAÅQTzE4V @ݜe_ręw/[pXH"2]yH&^˰`iS;~0+^X·A=+hl*9*|`O]$5q2 :Sag ?dѧqpOudS|TV}PjZxLU&B;x0Ay:3[0oɕu sL_xyn/"R (b{%3%?v\Fe= ډ-E/ S`6FdW؜LB|'4HGRRF:\g0E>f{؞ de2h!AB4dR:.Lmt[8F7JY>7$3}VmeBP_r߳phi<$H¼Ld_B<Ѭ5K3g2lDum~8sQU3cLInÕAk[sܨ>U}6ɭ+xk_I:S|g&ǹqTZTY(zviv,Z[.6wG rR:P٨ߊSOI‰‰'ً@Uй7Q]kFO8֧)mޏ4ܿ$J!VeT;9GDX*Rp2FpWtq`F)83ãYF0Aw&E.D| o+eOQ1s7Nyiae Tq>uLT,,yN!&ѐ8  {9;.e[M+2L\i1G0(ZI_0b{R@04%L%$JAPZS:Y "<7ۏqN>Uͮq)@NMvwVk mya0V3B4nx̨)W((^%5,xe$] Q2 zzק㌱@qEWsK۹\*W7N1N=$YA+e]3ad+~Ro 3EHG(A)~'~/ZdQC`8M?ʝǻVZ?e* R(=[(^fٟx4P#}5=x`&Cş>oU'Ʉ<@l VliUΘ\fY2K7aOK ); imD`p)Y:bTvRt9ℌUs)/:Î+GU=^%mz6[ 0E<VTJlמv,6)%e>r}7B!Pˎ].*]ڦvPvD7e7>\rbjnC#zLV-,EyhqD:-RG?ڙSvt:)p|.1"ͻ S&\=x)\ ~vNj-|ݢu*8~dZP6kUD똌nci:v0˿^a{{tBJ+*Ǒzr_%Vx:p9+X舽8y> +n 5ohpzGKQl`ހR Ppi$*'}ioט V 40("?:]Jfe6;_١2u}Z/$,~$Xki(8Ծ)6hlT1ġg( 1vSL'M\ܥ.kvĕ|Cn-ABw.͛% >!QPΐ3𤑳H lu U YmQ;DZ6܏|^Qpĕ<'B^0FO96X4UUG\4$ *<;k}J\ykM$_S^Hvwbgqٹ"z;1Co@0ʽ445}(1DV\/UgdҒvKpIzS9i$^4dSRg&K}oc01n~P"iCr0͸ǰT4yߊnzPۘ ƫ*zbCOJ)krq+R9Z#xmdq*M _@I"Fc44j^Qq@ZW~:ndJto /}^S=':o|S2pg? u8!;-Pp!_60UN~lmTߑ;D/+6jgd-!|c45PsK 6yQoO/>r Ttյv- 9bs:t`.ȃ ` c7/I:>z82lx!ۥQĒ!TaosGb u<C3W3zpsꧧmK:0f vWfӱeVB eY2]w-4i{ 2ҟ*VrjRM.IN@ð;х4CD,Cͱrp!FUh]4\ƓFU"RιvyH6d\ Q5{P(@.:5t` (]uF/Wyb"K V?zDAYM's*Cc~#MhuG$Cdw.,ln=T$>)#Pyt}< 2_l– p/Ս(fF>KP'!6n_`I*t0;'+Ros?DG(/ob8ǐ#JT\>|nym*ب+6:l |1Zˆ42 ~T^7s7`{\_OY:ھKfWlCsÒSa:kloc^?DiIL l~|7p̋=ɜ k{_7ϜT,KS&{|pxd`m-Fa~ Z Xm!2~d\족~zs :SfkoK| Է:ԕS [e:i[N <ǵ{ kېEdqn;ȯsN}N<) ^:tya}'(D-!nv.oX;ΆLOZY ʗltMGl0tS nzXUp XI& PL>p~QQI&Q8QKeto׼dCkM^KU5DUb'lͱ3do=.PAĀpE'1XR PDFxGl!!DLM.d{?Blg'k%t9Vp8= EOJ xù}at i+t>V wq'|MIPmt?T:{&Kֻpa9m+}wʕzSɗ -\ FVXCk7w³>DrϵH- lX5U=7Tl')@"K $1y+.ZJBw>yΊH:aRASp(js}=PT^A>AgwbO2N8t8F\ހlӑ`"Fϔj| N5#굞b쟂GhU[2qEfם4O,2 ؈) :_^Wk*rA6 jE-rAr Q}@N;>G!: M@Wl:絛ҜAth`MlHv+ :|L{חU35!ޑZbjY'Mk t]9y]3/RE4OhLо窄e-{Jb.牝&]+if~R _  N!_zDEJ\1.N)`$M O:'NFd'gx[o\]snihh~AД_ RR`U;DF H*Jw_kN*]w;oͳWJ2D(rAlPQ^!"k1^irE86D 52ݨxɛ:>tswwC{:k12 DCu.}ItBf+YV)l`z"}e"?yFN9G T:T%8L,6@DOwgϭ7n@Xl}[v4ڎ_--pFʚ~^Ɵa)È y7Qj*S+1ʆŨi(ɮ.u8@Ү?߶hy6!ѹ4X•μDD 󏣹m}W6a( S)X̕;. Tksz5#k˥SEE A $ "|RwLۗs>{, b.q$$jiT 7ϐ)8"@|v}U\ˠ߻}+@~nA6Kq?~NȞUBC9=[Jif $apkxY#n _IA'g(NV| jWoZQ p ו]anՉl6"3Ko8 i-~T$EЉG?MCqU4j4#c$Ko QF 9q4`ǯü%HOpOiH*UB Kn%,075<6ϧ"PZw5odKtlEsܐ 2xMv܉u{zԎq"yў$XDALȖ:o@:&1v : ZrHUj92 WʵG9B+ok@ "P#iņ@gmKTUh=4cܝ.ܖ\FUǰ]_Snhs(yÔ<=.w6 Tz?a|G!ަU~ІY/ z2-QLetA|^TJӰ@o V@ /t+eg)ސk=9k| C{1;NYUCak缭-Ҋ y[`*~0E'{ oMYr]1`g(L{|;wT2]?PX90prN^F&#, s"r9YSB¡81h{wZB{Z2[oՆP xVl`G : 4KY#%jCYe6|15Pךīgߩ堬 pb6&CE_KS|'GODܓvRuBeeSss7A-1Ea NN2 /_o(}S:OJ ޣS?$ A)͉;SƇ6.clܓYc7?z`i0 /xtfI0w#$RCF>U{ r^Α*^Vlo?ywEDePI3S ٵa.N{𙱨)Z0'V"+4t!}C|'[™T囖گH )`'bC`]g_=nsW9@R oB4K=}BV#c;pNǘ-%~/;5Ңh` ?R[˺+ڹHu<ۑ3RqSxg/]]DԇzU4=eN+(4={[hr=Z<@z) +ˀELYXPCLQmf87ǠЇP qZIwA^Il.E 2;u6ŕ(R8Ix ?\v 듅wuy]Pqhwrow/@l' =ލ . *L6yAPa|S=׾|s-& 7d 4ceSc>~51ΛI_[S^h;kQqҾP7Gz{J*YE/'{44 W5hSw;:7RB'_5'pG{^/VB<9Ц.*#h2\1 FW}CA5Efk@}reC}H,_z4!#"ig+ lYOdVqupAL v`o?JE}[mƧ0n 0 EkP/35Y@Ec L"U1Ƴ)jo[VlHz`b/M~oRNh?~ y;UNQmpZz 򤡞uW+yA CIVjdc?4Ȭ1WhFY +KڼvxWHXMг5|/F.bqr\*`F $~ tD p&E&rT#:[e%[["'Y6K<45?/)NbxE8p3d>/R esN"n_ 3JdoW6X`j*.؛k钌rPIPCXkk0{FU '~q`u?57nPmƁ <⁆'Ep|a 4Z'{tus&N5M 46JڇFքY1<5gGD1ӆQ<4o݀.F{845։*trݱ,Il F|m~{d5a$ 0rtZ%<Ǡ>Bˈ2{8ܫ'3fHgbR_A_|6a6`GBeyZ~³)Ɓy=< &+w>Hax$Qށ?~1pE@)ح_tE<[7I|A zK\x~eE2]3F8f,rp?Q KMᷘ׏H3)np>Tk‹u+į>52TycDp\<=WebLD500!x@HD^J?jKlAy2ϿWHK~b낼{R_8gX|߆Z]LMTJwCZt+p=4P5zia 0@ AU"~K]l&JOqeȹMrOR]Y~Cq .Ef:ޝSFlep!L!L?3ZOЧiq".e /<1m͍4.-!*FVJu} R3Cjsq,a%c6ÿata,W%B:x!P@%=]n:홽rY5;Ojc&=z,S,\q:+$+`į߽~XȬ͘`/ L+ɦ <僗,rkw2:L$IGe3BqKx!sF.ZU5{t;i4SS{dLa_b68o\"Mt(k'iԐg^Lji(j l EZI' أ)!lOs jT7&ywdVdˇ,K3p8G*gvq91T6YSg C3uGRD쉠$m|H5L}!7 $& R뮿g򗟉O(mfezfDtE/{l֟%?!`qlUe%V1ff)R\R.UqW.3&MmXY?2GZ!OAO|1sSc%:k\B`̻Yqjncttɩ9GFޱ;e ;ՀakTꭰ~y4~ X2p#i(0]\&?eYN=vХRvAmU"H ?/4gf wK>!&yl:TPNB.Kq`(1|;tZCMX $!C9ok=#F&t,[1ѳ@/mWLtU3L5`\9^ .V 7O59w:ϻs oRZSlr lr3?RO闓ӊFēn #q #UXcqJq!Ua`s8~SQOsr 'H6 e g[ "YZ'b#p 7 i[ilȂB@.Z354d `{4VYEГRxsJP.t<=}vLXUpx⠉5fbt'5VMOp%>ذ s 5J_mN>p\BTib6:槄ˏߡj؏֛4`!ԢevJzG{mOUG*y_'FCb;'1 dL\9)Z9oxCP洋F]_#.ktRX" >UPY"3]דlI}Ֆw@u_G! /[[6̢oמAHB1K?HlNd5}^kQߥW-!ddJ tk0c2|vM<+>JSUpyrAohxAV@V1WFW᯻yrof7=T}9th߆vQ痫'G%%39!ôB7 'E~F:~c |=刡.8q)++)fǮ Q7w U[\4s_5m)nLnM!WD*ݘ%jGxHz~A&];n[Tb.|G Cb:X]GfVཇk B@ .&F6^ܟ#EeȀ(UbsNHDЯMHdL<ܤۻ!v4N 1Hu^l-KHwNoBMQezs& w?`N0db:}mJ7`bċuUd&g;׀ibG}ORpp^۰U2r&̔2 [u1wTIg"~`W{Dc^z<,\i3Ք-:sґ8b\i5Ť(8ڟVm{_f@4Ϗ!tbJ{uc&j"#uy}2DWD{յ} ӗN!o(u=}EorY) Ɓ y4Y'ݠTpy#w>#%ʡ0?2m/i59 f̦5O 3Lךm_S]rw(wEǏ[  4[7?aE)rP i=^4;2ElhV`5j]}Xُ ,_neE ~Gd[JjIC-"{$P 9M f``.T '[qV -ˎ Վ4Pd@/ K3/uN ֠+0O]hm,m,9[@Yr"&, LfR6f׼v>&&+pgz:/ Eе")&a |Tl~0xVY S^^6 3<"MjY{YDB~]J
9P&ectDX g) d"T aO$z)) o,|Np澀J8W>zOέ$㢱Y"MG*N&Q&y<y7}>6$QKQv㜇J2-8O;[ ֿT4)y5z6 S}q'w礽ON2DxqLr_mj zT̶E |RE/$m؟fb3YcjV;98(\4pb.zy{QAk|1+%HO mn!fWS:3JA(,5/4 &_9Rw6C\)!\c'PPM]-.uQrӥN0s5 ':Yud'-|;cwvR `X`WY[P,tHq>0;k \h0.mlV{A+SQŦv $)1$.\>CZo؄P/SnW7mؤ c KmNkG~Źyj%C)X#F fdp܊hF~tRtF(7-yG䡺Q *D~z ŷ#(o*di @5+LZj7]L1}G;v[a,qd7ebMbJuQXU KV* VcNqPG]"9|l$H7w3&oQٻ@k2lq2-{mYr B]ݱS[},=Y(f񄯳d*vrO^^gLݯ^1|]?|)(! rVK̀J87 -i$]נ7Zd&9Cj"s;S1C1kw-tϠWU~L`#1jDFv|fT>eרYc"C*?hg u1GkU eJD_[Y% -~KJT)~5A;c?y0tW=͖+ڮ]v M*B:Y t?&G Y,^[ڡM'L|RB\ȵV537=T.&^"2椬ݺ"lARo n.xitοER2&ZعCdԦZShqFDQ\Bn x,^-ߖd܅>_B zm*l)uA7 HZ +eЈW//CC65/#vU'4s̽;YC"ZԀ=1~At 4~p, D$0&nBf(i~7ͥP^E}JmYk.ҁ#_Rb HRrfдa>Аkn>ABȴD693,fWim Q;C^@zMqOI.rl<*,\/lt>Keܧ{u0b/!O(y`i3:n;s֢ jSrbcqnuWp>ao[YpT/}*$XAOv*GX@Y(4sL3J V7钋p1,)v4Ka34n[Nb-Pa{WeAdklL)e A֤>ӟ8x,ORKcX ]ȶ /<{}'<ȆSI;3\.ىʭce e.-d4;wkbK][1U#={}%{2Fka?9D#3q|t -J lO*t瀞YVtu6#^Hwe`&XF@1 j]yxMȸ TfSEF쭈TTt{ḬbтSۅE!6Sԡ p,(: ^S;I%+rgu_o$,|S,s9![]xKԚFzs[z8'F%Zar&n M~v tRv %Q,qjRYX-_+ u3Jj֒ɕq:S/4rj2F?zg$D9G83P:'~%kEHaة^rTEVe2?M;அ>B.:e~ځ#(xbf^QKfc MAϺ7U0^ k'2Mu H`9Gm74X=9S`{L x}D¥/[2i74@Y ξG㌃󁵼mS *3CC8~忀 53GŎ$dqkUҤ-O5o-oi%}[rRP^B1X%Noa]rWc\8cXHeq~ ?\"I}98 iM%P ^P. >I󊟁!мIշ'Л0 `H“囚:p`.l{FIG,:kZ뮎~ۊven:1 !ws6dx5qRK9rK(TzlFJ~-qpU݊'4UMp$%1+G_>s|V`{AvG^7}^8F3;k`.4\׵q^Cy;Z&w٤VL3_􉙁"&Frp[eIqȴEDlGw&Z3 !=vV'n C=mv* d@Yŧ7j\% ya@Q +YNQG^FZ8 ܏9CtrK䌈.S9GH~_~O0ߏՅxƉuS!$#K$>~L&o(QZ巍 x *VnH UaW˦VͶ޶E[68|/e{TL؈t2u0yQ=%Fr("_GB rWk+5:e, cVœ.u)qg5,Ԕ _`LiJ`@ȕFјB"?7}؜riT|exɫnpTR} FRC5ۼ$-U!ț.^yEZ9EEuaIk6<sM"~l~UAp ?M 6ebմɛKe]L713✰Fn8qZ|i7|CpFLeL(jtM,a0eq!~1R;nʡt<n=)N9y7IGZҤh[4>/B/:a!jJ[u'jg+`ĂILbݯ_|l(0K(oBjm0csqUR gFu ݴhSYbwѝ|,,6)t ґCFx䅙Q31Xc YJ.vŹ}4 i<8Z^;\ WKli܎f4Ԁ:2^ vO$\"]RJBd9wmG>=̈́n XӈqT 󛒲ɸ!$^PSEc0uyAr :䫏wa݉KvVj9n q]{kv!PK&~TK66bHlSV|Mǀ!wF,EXrAD`: Nm&sՃW?Uĩ㷅"__7G`[˥]ckɃMif%7,kV80wM;y! ke%`Q5Fk'hɎfVTѿdٮ ZalvJ b6a9wEat4 QFb V)E)eܡ1m@ʹبxX *2Ӆ .ykxh 6!xÃϘj{a*zPby=ߺoI-3.M+tֺc2JּtB7D`NBٞWV9pAipOM_6DRI< yBQsBrI@ .$X$ 7y|S5GG|\p_6ktN' \Pw M*@á7dhG,O`mvVmma6Q7Z ~Evo;@'8b|-g!ߊ3MqKf|5{~^DR!L z;_ebgWd)'ƼsQZxޱ0`v͙zmo벩CLt^]h liEmL^6Ӛ$CYH2bAE|,Et:A \)PB&vͭZ T) 1 ւvHx_l50C~'O,\ٍşɈARr`g9-W2j;='yyI[O2.ut7]*}ٗ}y|qdz#؍ @L8 jRĨ6>vXT v6֦` /!Ӛh` 3^:'dvEHvՎܻE99o*J ~Mc0r|dUE4g7en[OY=&<%K$ o]C&(G4y?TJ ޲O TK2٫pې+%rה!CcҲ]kdLiA?F *me!@<J7vvr-vgg@{3q@c n41 {r$Y%.uQ5bB8da%1:]nksjppJ+%~I15?r޶0u|dڗv+t@=cx{a{"/H/ Me;uhW}]/M &r{bO,ʛGu@GuE֫AaѣγSgVaݼ{ qloqr<*=W9PyQIO( =.zolWp1'g\L|j$RU~22qϒq-tV;{sR4<IɆNBٹSjDvAx;5qYUŠ6\kAKQj6Q "ҧ8 ^rd0_070H@! 60ڲW(qޭp@/Lc@g&88 Pϟ #^B7>BWN)̽pm.+|Xf0Oc lE: +̽PSʢMϡ0PVsaɢ #2Ȳs;9β Q^9^ΣzT`+zn6+I7 [DqK- )j>i nlHD'v짨[~BƋq:l[m`'cw&IT#]RҪߚTZ`$. w9}d̤*(Q='5,L~!.(r(.LvtÍ´l$ѱÑ}[%OOS1ihVFOHfug[=Ǎk8.Ki-z|T9R{s ]RhH: RF[Z]0w)""ءI03o:pm89zgyKAE`dkG|jL|;fY`m)c.3- _6wƻroFP=JiՇ% o~g0M{$ᙒ"tԃޙ7 4 Ϻ[0TF0!^XH`eSvK[sGu ߬G{i ZVbj-]nHZF)Qwˉc5fD]Ci+z J1KCD(lv7Pw<&֓v7l;Bb7Y$\cv][uB[vsKsI3{A>{cy©(7JoC oͱ wxZOec/"Qg#f0!m+}j3} Up6TQuatNP_+Qy;1K5QY9^2 ?;Elk6`g;pJ^Aب7W5nyL4UYHNjbt 8$zE̽ڕ-9},v]$G6 d;zDZy){#HXi " 6a wq]h,hRZ&d)9u*b;Ž3VwQ.}Ȏ1r4(=]nWH\GpQ_ҐSn&k.אoFlVT#\xRoڨs(h v̋a(Ju:!*DU7'}8B 37UkygK}YY:hNPuۤn%]lo =ݗZa3"Z ކgSumW0P8^+R&}%čMd5/cna6IIddI-@On*\i"  `{wTlsycaksCzgQEكY7SSү~r㥊;fʄ2I7˜ $-CxȪ]7Yՙt#;;4ÖB8<i.XI׈2B"Z ҧk}F*9ʕΈ\k"4NM|sP5OVY=7dhvyz>*{7s6g|` &/wt$ջMUD/?^ZpL0 7g򺏲m!jƁyv72U4$FQ,䝬-8cۛ)_㽋1&WB+;6tۂ$qtHHA(J,]ٿ cPn~";H άN>`u)`YbU~!~2O ob@omC}ʮɮxeS' ]uBvB,+>S|=(a٩šZM_DHג pRʊ^&5߯İDØ/0P=p9?3cv⓫1\}K誒 s_>dd[xDR^.vG$JTW0\-&Aʂ^{& =!R?B]aR Wd5/3dȼ;#jermY_/ɼa>̕-חt gPyʑ9p3dxoQl oWnw9r) stA2sRrVWC4k*_`}j0_!_- *f܋1k0d-8&"o:ݱtq#r?n yxJ1Ex2de\F<Ҽ?AmG KZC$1nU `ܫW lW!7^H9'ȧ mڞ)+TluסL$cb%*Q)wOll;Te^R0F{xd~3u q;OuB\`xDaH $/s-;#6dFN6L3\CSd%2=!Xh^?BY@}D%HJNyƾ0F/;[rxQdH>vXJoeC@Fs[g(+l'MN~a7KfyF2?uG(@%8 K! sb_y,&Dtft诞23[)^0@i!jnw*S'-ul5\̎P 1ILr'%JP|绾uMF/H47ܺ 286`^p?mU#ǰ"'iߠ`HKNMmJ3OڃmT2SK~xr--<2dFzQxZL.0o{e ƁRߐg!eqaͫ"z|ONQrD'Fߡ?J[f1E<1ň0gG~]GfqF7;u0iyɦ1L8D ݃uOW&bFa%|ܘjoyciv_ eG(&T 4pGR;)M'r\)IU[td¨~ '#ͷN`XަW^w4eMVgABtkniT^-5HBߴ ;KP%2wWP"׍Fd]aCsJX)m:LPD; ȣdTj3_^]OgD ˆű<X%:J J:,9L؇=_`8uлG@[۪L6<,,-O'~X@fB=!]X6ݏUVQenRpdzy)Qhrg吜> )MAsesX^? ԧ3 8˵ -0_{{9JWPq@FkA` }OMRܶKbNG4x+!UmˠNp>Q M0f?6oH. `u#D^?ݗbJΝ+7S߹kb6+¸Jނ\dPy[ufU$+=3UX D uE~fCYel,ݾS]"0~ܥf_lؾDҭ :,L4k>V(ztD}k=Ԭx'Xj,5zj((h;w@g9eq]\{6,rK=30O!'1'8a *+b,4(!"`]eqM?!q9TL7 0HPnu' C_ =`,gS)+aVȈ6+ת(F!aAH`}H#Pkr&{sd\ ȝ1knKNK:gB5񭱂ȍڔ8]Ivxv\go՛cLqp_q=aQ&' @xc>evD1lmt9y.ry֧O;LҘχ3fy98pbITN$>C5+-@]_LVac^>3J>DH E D +QP$7;VNk2`pbYU0coߔpm1/&Qh?a]^y2Xx#93"h&lY ߢ[XTr\s c4F|ʮaW*#7e0'7tfa__2hYsڥ9q"+Tt](EC|])PgaѰx#*F9T +ΎʙG{ٌBɣݎ%ًS{NO[h:CuDH캱Z.hO;6! B9pW֑ؕf<^{ z#ya@[i\~!OڜL@c賬>\~/O>\%h|"DF>yE>;]M3(N̹ hz?j9qYҒGj׭2:bT1y'/4I,{E~WǑDz ~@~>u{^ܪ%ׄ}ٸj_юrs89٪V2vV@r3<ɯ*YQ͊ ngx{NvK\c Ub):z,LpW WnAxĘ>>E*hq'3.FWg;X)@P%{'HѼy1L\vEzQ9v^MNmPG&wͽbiTq2[l il>X2кal:SAY\㶬' 8q=e~~l`P$ IU'))w?N"ߐu}Z_?P=7@C6GZfw1BvC.ݓxΕ:Ǫ=4̻"QY> Xhw<U_ǍYRV ,[X-טq|*W?f[$O7lBj$0ZL{,J@DF^tTDbU&|݃%-葚iz0*Y#1Eov3ɉ攊N!҃z,Z~INA _gJEQ Ae @jV V;Nm-Ph!{~mb i;^*zΕ1-0Go~ m3L_umi9DEeQ!!Y%="cO _JR>R]chЩ|DY}ԯ׻|;݆vcF/8!}T~Pg͗5!KT~Fb-r[:j9vJfB~f|IVy !b C ߂Ě?2lșDBQl)$J"exs"jCeaUW\!n*d{>v!8j~&}c>T|lf]t"i;7q%|ue\JoJea/i- dyCͺ{Crγiej5|˓`n-oaRmT 3z*oJ}MH[14uЁ#|jc]l ?r98&",XPeR! "|G0܀,*vU#ڷICʋL.eջ,8(- =l@8&{p7e\ҹZ郃O YaѻCV~6!ʼnzMND6i)X$WV+un 2Z҇vIrw9 po%~EnB=]J,q B5W;VpE}‚tX;E1L渕̠X &`51YgQ4JFaʰ|4qlٵto髒,[ֆ$-4:dxkRM).T]Y]{]6w&aPpgqң6O]M/Jڦ1L F8;hÎωXJֱ/Nv*EqHwJ'RU/^K=G]t?] 5WޑG=;D!T# 5ʔ9:Fe<dN- -e9JB8{U6/93%%wդa?q8)u4a3NK5!̾WqÏ WDQM'wN/f kqmPD/;P$OHpd:Pƃ>ug߳ey(?o󈀤S{ةvz6%y*Cg v)$rIضaØp,텅 q~ze/h1ݪJ~s9 ZMI@^B%jw^I{4<ʉ(5yM`#_91MNYڳ0SpO69%-ɎԚ=F}6hD_)a OD4B7BZ1v\`axS͏9 QTӌ1m'bБk=u&-@:4@BD8HF(&U ЌdF>l#[7'f#3I!Usߧ }2Pw#F–lF@Cu'0|Z^ ,^4,?1S$A(É'&% HLD> j/::oR\~M2C4HQ}xqQTJ`YF}/*DbˢNT~[j\N30 */.z?AM)UIX!Q_jl7,UR{';SX5PvaW=i'{Q8o^(* ґڪ R1.6SSAG;\h[ˡb,xS{:ڐc}Ln{7,ҋ_!]UA&Jg'HT2 9&E }Z'4ƏYq[:d/D6>eg|d\my m #z,O'-MO  HmX_mۗ4^E=3-A'-̲?vQB}I3gXU gxb⁠`ED ,d_k_VFHqUd$)|#k wyznLA#/@Ps~\~Pbu7/عZ?*dSqjުL`~8`-/.i~gXFFVnǹz*(7b1U Lqig1S/ 6BirJXʢ5M_q#)]H#/U V 3;/ķׯڽ& TS2nҡÚ=-JmvbEbl|aG{&Ͽx6Aʠ౭7ÙE+K?":0hKu1iEMe#v,17ɋ?&INv7IYz.Qr, >N+zOzSM)TT >`Aơ.0yVyL'] : )KQI;,QWo7'׼f^08b u6~Vؒ/ŷ[)ٹ#9 d{*[}y(Rtji?!9ٷbO'x*wE lE)Mo*m ]_É{@$_@ 4[*m 6bYyB}7&֌Yl'u&\N;Y4FW$ylw@r:ҸY|>r7[o3<( ǨcWe=H՛&7(^yp-l5i]Է(fvBe{J8> S1`}wkTH=ũX?[~ F&l%w{Z,Ey*[n?ṇ|Wq5/P6F u&<~^FFr-{<@" 9C1?ߘ+/tqԒ3x a}t!ᮝG8/Jǐ^;yxaK.8bh`Hl~W9حʆ?#$ϿGR2?<l~iOS77 X{p)͂eJ Y\(>Rg,ec._P^^h $Q̔׺R!_#3k>> ,6&7lL:wP9!5?^\WMT"y;R:rNKBe/!$ 7mS?~$9P9Ϳ '-<#]w *.~ir󣬬܄1a+e㽡%E=0s{P{+-ȸ6ęgN™H=\L ʱ^EҝdU&Ftn a)m],`B^Z,}Ubm>\ @A qYǬ^ sXf)ty@-|he'/|jb"a6Z;H^蓛ۀLX*'I/dܝ ;^b!"m pyLb*faK86G5>p @jE=ƍ l/Y[~1c G\戲j(.O ۈ6MZ`5b]s:EH,MFX @{s2-hx`&)SO܏7!cfiwg}i=E 衃wOKx-)MZߵ ;UifG8@ 4P|oM_d.Jܞ%d˶Xuk|.\\6 bq/!Tz) Y q#'7jbTvmډʔd".:|eAuZX42'ef6K,>G&4a stGB寧Yy=uEb訦6K('O&I!5rh!~ b#/>e6IC3i~A akY#8+Pa01 h@^yK]ĚANyuI׏ J03DCy".ccZnPUԨozDnpk"lDTxJZ*=-͔t}||?n"(BUABB$[LFkƓiFZ^߆7-y#ˡO)pV3m+P #w_L6!d257 |Eq\Y^(SaVֆ{ 4ltv@g@Swl 9g(xyZ5w|,SS#<&%C9񨯼t#adRW9TPajT/^tn @*+ZAFbz?cY#!^*-}fm]ARy;Q8`5ܲ՘ n{$U:M: Eߛ"s%}\)Sn pyvGSs 7R~c5`*h»QbqD$Y+JT=vK1l,yG/z>eˁW&P?5.Kzbp;L3:j c:~ؾ\rHY3L_@XGBK#^{^#\28[ЩkWV]@~BԮhnK 1gx]bQA F@JmpWȹ$:ur%~dZ`ۅ> C:iGwtI> ,=ֽZ^X42K3՜B*ub9ш*5Z]RXtߊk4&m@M_3=d')g56hsw{#up - VL*Ǻ^}ڪ,^&=YD@*{&C&RrviIW77{H}ݼ 7@6AciCΖ8K9g9t$"!˶v9CjD)&5kd :bFZ)o>%dopP%OSem٦)~[JSѪn';.50ȱ&7 3_1"waDh//_IC9iiI_]{.bR8!%5SnJj- v1`.og&~XCRR㦩`H zY 7֭i#0y푥FzIek F MׂQ#P@r٦Z|xQΓ8Hp3Mx4Cd=M8' &.XAdq!@6Yi2T姵0#b1.Y"¿9εZvf<X.Ʈ8j|xGGQC8 pGXʎ xY}aBFaAB~(aH-y49́DDoh-)RLKk2׻aaYq|#bug?I%C ổ5# If'8ƪ@7W ln騉qP@Ysp:\sWȺ[ڧt˪[3O pFl°S.n vԲOII ,8 @|c<+z G .e/WpIns~,[/x!;IS UiV3<]tu0SlT.Ϊ r[FjR*VNF/HZDPw.@ ]ٝrT6*hv'Gbb*/(n*e␀9uHx$EOTC q"z V  ś%WtCV+Dw\qmBtIUk-')mB]q sT{<R .q$~V,C :N6F3@)F K;!>yi»Rfzxx>Z߁nNj/m Roihk uS皘*(2uvDTX [L߃X=!4M7R/w5A_2^FڌXUU&+Hng]v~ou8#D:ȩx ;l5u4pBfrB;NωI7ДDEL۔?~N*xkmtB 'G '[>=P"{NZ5̯"22-3Zl; ~ Ax!"PCz#r6oG>ҼZ֥Erm)<_1[jKJybtԚ&%趥ɹ 6ND9HIƐOI j<Ӟf- L^+e[hkb tc)7$Q3^&WDTPЯBOվ t.9fy|`hFoFMgp7v0P0E5P!1Ry?`uΧЖ6)^\(@n]CǼ!ʮuN-Yi+eEeg@[#x 1w7JF SRTs n䂪fz1Bq`țu 09O }36!hX5|tQ? 9CKra7Jg#ĉ'$Vbo5Du٣V\a^MiuHدbny +W/K'# j0#ZDL I|P;&?N0^jz"P%[3:.|C;XO&MH^+Ibۆ2>Ԙ_u[P*AŻEݬ;<(y-2ܤ{q&ӥt<^({}|DI V/=N"W,$M2la_H1:Ð"niCH}ir8hJu|l< ƧN *]UhM)msx3:Jbǐ*oE=\l4037735bbfRj:.Pp3lpAF7X"}S@a5~_~brw^ l [f|v;02^|'|VZ`!wELj*wy>7|F6Zlw&PV=3@e,!wz0%~ a*KC/קZTjQ#cKE#6eO"b̄I~ NYdc;{7dQ5\pkFgx4[Øzqn:Vϟ%T[8Hw:Z8* Vt:z+HV;2PPD4#J@%ItnZ5 Alj{:12D:٧gDJ2h݃.[0> ;SC_ Th.xb)ԥ.(N̟X_ ;Qm!^iY?ZTG/ݲ [ d'!7(!lYAE]5@79Hah}NpA+ Wَx|f3Ws~359L(٤|7͝TKw> V#͠Q`@p4ɵӽ4~\%CD^G' rހ,,#2 1J2;$ }mU1yQ^#?bw|˝`@? zfȻrVu9#\b5:4C;riq !LPx;MwVFЫ 7<6 [i?۰50p1H}NگX;,Nڹ;яk쬎<, \)|Ӡ~:Ipw<sBr'r~vk0? ~2G'UО'aQ3YL\S\0\h&𳕍 0eݩ87j 0]:W!&UocGE`L8i/ B_ֽXfv ͕ҡ75y$2hɏ*V*P&b]u92=8ǫ>XR=3{j]O 4 F'͖ KѢq~\R _n9X.ۇ&ppHCQ,~Im5|lԗ x_KrVP6%+Kv?+ȄrSE410|ܤ$Y,v `z1W|oC&iɽAm3Һ&ѷ7K$H6Jڝ1*_]>idڧonXql ЩiQDI^k}_93OkU4Uʼ˔*qkfM ђvTVomzp4c].J9p JT8dw14 ˔FN,": ͉ fzZdE2bnE| 2;_bpټ0!3*Vy.HzdkIsK[LѶ9l[-,[\++DϚyCps1,KV/~《J9kb^ʄ;Xc_~u78ږcZk$w0ӭs'kdd,|JSXߦ<ʣZ}WX4h s}]!ZUAjF h|ӦlZČ rpYZ}r`Ar"J8dC"v9=EyiL!dehz "p1%,D &qUxRk1 IEcf:b/YEWU0)7S"d/tNuctXO_'n_pm<[fKqpI{}&Ҧ-(`0J_c1=R < H: /,5% R2|E5#ŠFMm%˕$"r"r78ȅ*/ǤJ|o>n(*-Gsvf#BwnKs~쵵695[S輓NoW`؛h‘<_ցrqjﰔ0a{%Ev4({ M꫏KG?e?A妳,fWuV,=X\&!T f#цxcJ8J1BΛRaZ-. >o״QO>9a<+Di{-'僽E%U)-k}jj rwE55>oK`E`8^e&Ny (OE KŃΡXw l!(UJ 3rCD1!;v&8QF: 7G'UOƘ?y8@v ap6k'EB0!E(t:}#I{% -\>38ir]пWqAm0r81{`yAֳ/nWD#={-} HR"Gvq|LH4e\f<zzSP`W3j^tE"׃eX>(g3^ ~S܈D[=m 3 Zk|hH4/w[kn1Z5[}5**/g5{ڟ}Amrky4}O:MGwX1}ٹWs(q)"4 ӎ6D@UOh"mPC, [ƠV@1D3;;UnF@;Mm;cbKL}FLT_:!JԵ]Lޞh#/7U^7aXJ^Q1z* ej)$>{уs$t80X>huߎKZMo 8mh>:[U HP Uv?1&0x CY?FLeCR ]RfHc `K0r_t"a؞CW%〈}TVv 862"BplOU(= D4[zeXҍ,w/Tڒk&"L h% Nn8"vidgp,5^ 5I@ gՖS_me lW3 D/Xo4o_dyeW UT(pEO_z{OB_7Ue9*{癰r(talpXϥ~xP2_q'i޴R)ϧ #;G؂#=̐Gմt)Dzj4ߊ: &TnxqW&otozF'3*  }±cKOv #>H 7=m56e,F cU5l[nc. S iBY{+Kx.ݪJҶιmhVW5QƃbˊNLS6I+F& DZ Кl/I$}J SDbbv=n|lDq;}yPÓF3 =ΐۑzm-eL\^11iԓٶf.v7\{hfA80e=:1=\곿ڥo0͐3[Җ|0G{^2g;gGPR앺畄Ҿ+DƜeW7jgv.!KL~v:O1/'Z*&8 e)T7Ͷ2ccЩsp#>K.Я!21W"|๡XZ _fa4hYDEٚجVGe)&סe! O֫́S&{ lr22^'mW+#7ԅef;` 3JWƐ%2 @[T)cU<~l3jQo$[OMNjlgq\y9'rz| WM@|d;8R4\S`#x=,tq)HuR >֤xOӇ͂o;crA \ OfKT8q 3לJ`?ANV8 '9Qf QDL7nzg]Qgn*S%pX~ ]3oES(ßZ0 D@tyV#WaL@nmT} K68 d~2? CN̏e1J]M]g7D2̧;"tn=y=tT õ,XgB1 =n.__ qXߛNF}<2ۮE^M.B*ױle6@ȦZW&S(AQB6u".rDHwcA4O@=Tp3!ج5AI 0#b_w_Ըo u=܌%-C4¯-~J W/q6S2QOQ,I*69ZReaoI9,IS8%.D6I<,PahHM.p-<07lJ13M QdX@fSSm-]C̭ү~b}ceW2wf]17h^|#E{\< #"n)nSul:_N.k^ϴIEPAV~z^wQrPUx?yc},Q\lu Nw_':3kٻ~'>jqfUp"~+Jut6OV'apyͱÉݙi x8+<5 m7@WЯjʙiG*'Rc$'e*@d7)>fO\d $^Hf#J*e=Y+X%k7yB䟸{~>ʀ00H$$b| S,Ꮝ-(F5.:{$KHmɺFu;8;%[/YB#.LV4] vu90~z6{^R+kf6 (oSߙ=.J^K:pW/z:*q7ph14nrX(c&q\N´4:uxCgs͛̾UuMX}HJ~r,XqƼGd5ƶ}7=}ЀW&IVF{3! sm ²s Of4YVB>G.*M=p0{+1/>3$QDthP6N5=Tͩ' KP}Rc/9o1rZBhD o- ʀ5Ho(Mhkš/Og41fbI~Q@`!R 6J&#㰜f`K~`(/Y1j 8DO:^Swl '(V7ggu}؏(F];ZaF̟hEH j6.N;FẾx0Ua]b tD<;5xu58ua7IfM?$D68y5(~mt,Ψ=ӺP]u-O[l%>ru]DME3W0@8 Gk Bea(]q|3jJ#scb S?[(f¸]qm-|68iPÍ P Ixi" |JGg>n0\-dOH.!`Uv8Csۉ>cqʣEW:̞x:XVj`I)5[FWZA,X*0& 9k5m0KUXl<2%[~ Ys>5AQweξŨ,G^DlspW-EMi\- r4MLfy"JF0 -spFm ;K=LVPoeCRaGFʎ f .dߞ߈6숄j' 䣢8S^OGb|+ m'c楻87"A`jYJ & @;K3OV#kG g}$vo 7@WѬ-wfP JnZ̢(L QcVݳy|Q0WiRp#ߜP~׃y gs&kK@~ N*B1qHAN`pI8 ,bc8Vϻ%fB" \3Y5n^vу%/q5݊U# 6/r툒IMrf%R(e?~κ7g5X@~/[4bҫ!:s9eêa@4SRcz'5m]3arg)#VҺ!YFU"3 ^)O8gC_Wﳄi%G+N'K?ęNH?VKWVvKC3ZC v@z[6Lۥ侣 +J#Tf#!f"܅ pD=rr=  *Nȇfa~eQ"%PQiOK~~! &ak;tR7zU q c3ЬM$GTp6c ~L #Rv=xC,9|(!oY*|ۢS`7xbO1X~&ww?xpN$쁶&KQlkN ɨPwb]oabC`r .ꕘp,21ͮ'nc}H .0ꝟYA!I kM]2Rx}k=FCzƷ+D(nQW~s}ʷ퀦Wd%U!e\}VJby.RWhBU[޿f 5χA|Q`XruD} 񣰉k3-AEB +%O)\l' Ӝơ1Nr`plQdP~ 4z$c/=n>sdmyk&mεI}Y2M|c״5ޅ oncÖ MZ+<)GQ J! L  1M=^_{|QE)'귟Dg|SU%0ܿs%D8cX|a.0~ F暇ʞePe vNa$#b<$Di]ϓ!HM.OdK# >|[?QW9{"gvLŏLG\u]qbr9w Hc=l 9!lA'/9'AD- 5Үa˽U~Ns5yg+vRUϺSi^73rF"}ӨB*>Y]58\Xi{ض"]CZrG/OI"^#Fh_I"V^1s,6]Qaߦ"ĩi'{`.O~++/*d*(>[~ /%%XJad6 H_ZC5md"8'F'CQZl7.8 }VfyC&d"?ch˹9'S.n ZF/֝skAzP)~l=蔂c%)a}E8=U !pu v"s>&aV0lFP*as6zl5G=K"ѵ5IR=6z1CnDJ\jҎ4+ ?n@(Fޏn5@mGL aHs_FYEQ}uח1A 6^!yҟKBisQd>Jg!` ?}lzusf o׭omf?1" : LG]wD; }nsڂq$T[tSd}k o% "yA }>8|jÍ-=y (֟#o!Ea}BuΚߚA}k:HWFAyYaJ>SGo%uo1쒇 ׭}jD1WH0>[Ǧ s 07(=yr]8$n8D|&r܊:*r˔kT6hXq]E + RYZ]h9y-XoC;J:]OviV6R tEX]6QM [59b`3њil"8)M=v (JeJ["&k Ga|vn1 ~b76gW;CyoOН#)xb5dђ(]v5OzVi$D=EgIfZtd߮d֘j]%_e7naă֮k\'J 1tzvdLҘz剉wJ:ac3\⅛%Lu%5JTj"%Ch3rX2pᧅ>B 0;'NI)Ca@$T{ Z4NÌj BpNԗ]0q9n߁wO";o@R'}4YOWCM04˳YM%bS;/]NG6Sw!zv~*Wu|M[zQ:UoM5T`ZA((-˘abſA됙evP%8J+\oR=Tvcl %\x9&A#'X鵘{g$AZ mHX"`b59G"K̸΍hiݳOwZ5VJZƟ*Wm}}%qL˖]!$ԃwckh0)諄o#O@nD w!)..!{-XQffp75F k&ϓZƽQꌣ!WJY\{6E9%tq,H](8^Dp2Y@tpNk&`2+Q'S݃Wh@VVs5UE>,,OO"2#U pcߙrӜЃWM0eW[sgUuPr+6+Mi@f4A0 ;bMc Yx^q sc]TxMgy|çW 2>`CI<"'+ ,c8+%lÁ?H UBb*mC!9Z2FaQp ÚabuIMK-* 16hiiAy٩Q^{3dhUϺJQ:"S$jCJNRRB+f8ջf7-gxӃ`- ae>IWL}dfQ{ fK} P2+]/"ddT,p.piUJ0-)X+ WmfMKx>nX{Pe4[iY3+N 7tU cpl!O-~uV=rĭYgm_ f#dK kߗ('KT& ՂFW}N /đ\o4u=ֈb6R^5NΊhTX{ o \5* ҍ.;Bn9O$c wYpi4!ѾXO&F=-ҋoL{V@ zn]lv[QULm'O,a*n}du&'uy'Sf-B/g6T[eB)rolEa? ?IZA-iF?.[`j*J$&*3,d+-eXg]?'rd$11$ Oi-ULXŕv^.jk488>?_V=1j1Esm'V}ӽ ."/MJQݤV&|ب2Gn(g`_A;x7%Kv 8..yOwfS&Z~U'0<K2)ԻΓk1f%Q>f m'61 >tASW;0O$'()'UI̎іyvGLOg=&i(~"mwFɽ޹NzY `+ޏ!X}&Wvy74CX+ `0ȇ/8&T 3HlKH4d E?l3deprDk=/ P+J3mwaG8 W5ct pCyޔid;hɹ4k6::y$^0|TAkk-/Eg2+3 *iٝKw%@Su|.Ea֫׭w@SRDuօ)o IƒAwqEtϻUdb0DžţNaŦ$>5vQ*YgH.񨉙M & S~J{ O;a?k k~}UԺv@%Ɗ% ޤZBju d<M3jN[&`iU G.v'z9qf\emfW!<~u ΛK<0'#ě`f5VCǶ#Hٝq9}Wpɒ.RDp=vS3{ &]헲 F_s/JޅC[/K#$G! +ԌG''Z{NȨo]%Ԝܫz] 3.4^I,WCq+!iM# / NrNN0||渭";<b͌gQ{_쏹ߘXn'DAhB{ZnuGԤ]`Y'nRf)iexg}JⓜnVӄ3vQ|D{=ɖx& SQ nn/'`Uؓ>u^_"xf }%Ljc^#')\bn Zr:It|, *ge6CT {AQ ϬUj6E (y!j ]5ݷE$jJ~ܽ[cZǓB{OKQV9Y8iAkQ'Dl-/- F-.dN%"SZLlfh5 r \; Q4cS*<=[(+ށUN+7D7y nl1膧|d[x(ЙɗHGD͍7AnAtſO0W8r k$}}[^.cÛ w; _;àYZњR4 etDžͅxjfb {ŸR*9c/YJSo~p5 ˖ńI EuaN&EAoҰR]  =He4+|#m[&ѤN%%}/ F~W9L9.omZ&o*bgddakf!O;ShYx *SW@P9)# 3ą6C) nG_/I.bŢfPTc2-=W2E;Twǐ з$Z&HV!=>:B}O[}^7NsWy7uN@aL | U${: $WHsyO{ak-DŁ!93i-GȎD-mQ/.J-=뭍HP(lds# oJJ5C9V.'Ǔ\z&`nCbj7K+8\҅9n| jl pu]9X|nyfG$G"FOIa;Qsֽ(nC~{eK" gc̱- 1f9%7p_ȢC,U|窳f ðꀹUm.r6&#&q<EvSNp$ w0h$KKO/(PĮ^,dΥ8U/)HtXGi&{lB`F9JwI kww{F z~NӒ X~~?n7lj]no cz'2;/QԪѸ56-4"Dj&,-YkTQ9TÜJ /-!G7nR{O^~@Mp9=/0pLFʂqgv )'A</Cv"D5<.[O)ٌ߁oږ=Uj_$[WXN-'9IjiDf(`Jo[Obޑ=JKzKuT PCS-*=+T ԏ_pM#?S3RT!˳4o9\! x"W 8ΚQos94\~P(.~XV3vdZ% uAD q7+Ss 9ݵNӬ4Lkݨ;lx=cʣX ſ-"'~"PLg?eTd7H`|\Gq~0;B~OEQ8#+m <:ZWn> 1%D"A_r5Qʨ(fN 6LF=#,m]}l\n^+ZIz^u< .{` W]q{>d.SMfӎX4R8՟*\D+S^0ï|#!i$dq# Ef; QL!c~9G#D:aVG̈́Z:P/YR{2 rĹf5=)"l}dm',+d0OLZjv B/3rt=}&C3zؔ`8:Xo=i1Q3 k=)YFK OtQY&TףŠ BFuytnh F)Eb<-Ty*!p1r(G o+|aQh1 !,Rӹ) v?(5 +`1n&R272r@)kK+ްj U֙ƓlrW$'A[B$*[yh{0#?PFg A%A\1GRxB2@ 41P:=7NoUIe BPϟfg^][UnG:/"8g9pA$ؓ=(1u$YUC9Xo}W!-K(Wf;‡| `&!\G7c&[m+ w(ޛG=Ò~g t!f璵/JtuNArr~ƃYoz$TP[(j@ -¬:]-KLnlmx; lqzׂu?XMQ~2]FJ \{]]^k<_OA\Iڊ1JNc#|ƨ {5;r0Ť['fb~ EDG\D$CϿ?[5Q6 Vz<mb&x/A`-Tbcg[4{]&d hVĄN-!@ǿA.ͼjbs F2ih2uۻxE~eL"6oXsO…sZ5=ǟVy]ٔKoIsя!@@;؁9/0FsW9N?vnCe G쭰YHtl0 'Go J^(I2-Dr-mMο_39BC(>ڸM\J SK{(67@] ;;OE 9jIs??^t,6?hQ+@ZڣOλ<7-y{sw8vi~8 'C`X`I ]ucvb!o.xKDj 6"82OzT{hQp_"̇"kn*)ص'2X,X֪v5Z/Y=tN{-i:|?c'nCrы~e(_;uw ]ff wa wjà54/kեi,hiK/m̏R@Trف@? ijVKxk4~I;H>Aɇ_iMg䱓JFa&&reXyk3>})4^<#qSJ┆8xR ǣkwPSiiɇdq>_p3 :r~:xP7*Wڀ!?6)$WķY&wn X/+`WDžY1ޢ_~\ q$Twp_6qQ9$[IfFsJ2t3`8նUDmCdD IfQ%7鋻A$;:y~GƟhgAaD]ڟfB-j4X^@J2h~Auzi ӤJإ^g0__hD<Ͼ(ȳ c=LԟزHoɜh3=a-fRXxh{$2+]l\N2KEb.l&,3M mP≲5 zs@V^ PȃD"CO1L[}L$Nt>"OyQ7p*,b:a'p/5#aDLj>fWkw;1Xkm%/[ǹk0p]/}D<KknVV캠Lq?ߗbl xWkԸ' 򐰋 Ȧ$ 끋 &mkQj(]rQfZ0=ߊ|\LȑXt)t0رRscٖuYW|KyK^,mA gQ aZbhp#4H[ÙP %J8ʽ_-wC!$T2B2f`gЮCv"aϘiM:]VYץrBK+ _O$x7%Zs?b2ٷow_!?(9rd띙/?'i>Eݟco $w`' Bg=d7K"UQQ*Sb.z؎Gxj=3trbb/L:y"e9R}fO߬SFXy"FL;v)YC yaTr[[|V52աH'|Ⲯ<`` 4gPkfcX⺩YQӻsdB\9QJw͑ί`Jg\Nc[t[PJ;|f'݉aX\[sgRvX8E^9"7''VoXxbuDV<2POVBڌcF0beXiֽӴ8Td~=H~ {pRTy}jJ'?u93F-wa}|ޞt;<fF8>hEFm#uaW+,UW_*) 7 +'\jly>`NVbPE1B4I.DQ U RD"(<_0 鼝xMn 'G1IVt6B;JL6i&MOҡ=x0 :k0d?ALY(G7ML L $5\퓱XLOTǙ|F0ŇRj LrpͶm ~>$[Z? k)5jϏ5)Z&ԌπcTώeMʛ, *_L %+'Bi8ҏLBzh=+3LMT3cѥb \/}n[8ɢnm@砽AXκzKpOHqTo\%7X ! >.O^G>=0zWfh&)0W|Fw"@Y_-scoUyEpqU}a'̐ V2}{:p|z=# 0iM]=m0`oY8f>cMlGw!58pm 8ىə`:i2ۑX1+2"@ܵYfHf5a>1Hi?i9P?OfxʏV5o<2ylUqgע?0&7qg~{Dj0M kd+oO4PGjU!A8[+zɔܪ9"f7s^c2^f3Zi8uE*XN',t\?ҠVv XAג2W\X*o(VzU+4#*n)TՅ[d) _Cl Aڸ(~u%oa;e7WOǖZ]3?wY74K.&6< t,)=dNUx¯Ib 1:45ϠJQėx2#ط~k^~N(){vPD^xKO+Tb*ks1kMC stS&ݘ'RL˻1;)|̩ [%x>Q!^Ɂ$}QߴHԸF Iz3mNA:Rج =Oe B-'@Cђq34ﱕX।=Jn,U׭*$^)mWۿ b"Pޖ7 TY1_QV G塓a2Lw;pE\#o<| mX>S~SǾhҁq(b'3}e# 1Wn5KS:om4̿S2LۼaŅ\}j`.&mR\q~,>+"C.(>[ Gځt~'!ncޚHϹDݽ90ˆxЖVӯ,ig'ĉkx L#hD$\ /mu㲎`ZOXR wd>Rbau K7V/b}!db\e.Ah_ɴf=l_\^0YNpڛoاn"6KZײ͝b){ĖOE ' )N):b1Po[Ps?>E(AvnaIɶ@ j^.ɴ`L~sĺsn|b!7)a=/59͟9}{xQ}=Y:CH#dS.2IL_T~8nC\2pAp`˿^:x jˡYB-p(9%5t佇4{8#d+Ado.,vHJM$%)r|F?4E(Gf'"X ҅CSv⛗^!YsRT ^LjkR}h,荩U{0ױ/ffgH jHB;NE7<:4!bKКo3}B|*Mv|JK 6H<{<+'[B N?oBʿޖ)IޭY-2N`Е+N^e5&>_3Ǡ* 6`?8e=~8g;ZU٦S=.qEM6[lƶ0I퉫BC4͝B2m$RutUI23vF 3+(W$w}>&h@HweTLC jJOpXHdYD OLƁ8;Gx=vY&Aɔʄ?clKM xi*-n  E/]c`7WV T,_S; 5˄SRDV(>hG_bX]NAg#i 5ޕSHx%j7A3#^up$QUUǯx[t3"ኇkL!x h5PXL+.Jq6/L#n:!G5~sjFp\)QV=?*Z59wKv+\MN>ž}Om,{≅ ?<4NtD-2 Uc>OC?*#o9?T3C /у.<.E\'I~JT2dB`lr7hM >giA6J ƗwA{f.B8=w~V@idU. ANLl=ua(|ƽv4SVZLCPԊFj\=g V;9ҫ,''1yĎzecvMBvϺR@S4w{IJ<ϜLNNAl:F/d'jB#D(p[eO$7++i}T0PKU! C YC{p"va cC;ko Ő8rOKdW/or+PCR r:x?Uǵ80W9|J>` pQ9ka^L7'? ȿ~"?f9]@hxUַV=LRѲx(ː%~{ԮĘ%_=~nU4H^@Yԑ"*2c _FQBHn*|Qh-xQJ ~Y1R _`x}Q0?{ u`hM/CG6xGNzܨ&0+;A \a׋Gh]p:r *1-err <6LжIG_!JUj9fKУa>L=09*ĺ@-|+I tiѦ _9>mөQ(.q+9GY,pg Q*?pA#߰)Ã&ll\sӶ)CIF% g3WJ]V\`rj_Do"~ad+`R"/tO}uP(JmT $5[^9TnGCQv{A/3b?e9lOϡOعq37{1Ffx/e~!xtX}$surNV`H@rϑ Xa_uv xL+bMX2 ߽Mջ*x;akˍ |p2e`^bq;U'0\7lAtiʿO$O0 m`=3G 1we3H&tGi>YVW2pz-E#Y|u )^Lfδaww(7Ycʔs9@+wYį2pneCL%ca ?`c$y É-*xT1܂Ή8=eeё7pt#]G 0#;tb(Q0Ԉi>wR r. kAܞ}9W?5x! Dz$ U| ȎBO%IoQ D^V@!|6iޓQZx8^uZ* FkCݥ6Fᜓ/P1,Z;xL叕c!;rdx7Xg녢?9⻷i jQx_e͸B- 08ŤN5>d"xLopBzyg#)H!9k_n[CZ˛uOZ_PB.}#A&:>MhAD?YO輇0 Y>r,+?Zkcb)"ikw h%Tݪ3$ų:#4֝{6E#@UwxzJ4|Y; Pˡ"8QucG jrg?jn^C1rQOYEDfu(%T> ;0.Ѯ)]zrцNhGC(F8JʼnZ Xx7)lOγLٛ$Ar44f1dQvA\=&O 0൬9]؆JHU^)_hC7lݮ I.Y bb"E%cCf fq.䙮) w'iU4د5D _",t& h~&Q9٨cdx6ngb almɜىj+GU tKp2b?>GJn#p}_K`n]f`4Hy>GK1k!K ySslQCA[G[q:!Y1ۤSڌugi(&7YQhϖ)W M* r-/\%,[Khn2ü-qMQo%n!BO+*@ԯ>>QA=:HD *zkhE#ŋY{R25Ix)U5:OTF|:ʊ) " ly-qoxOEK=ʣ}J<b,TUֈ\ 'clR8a6Ɓ8yF̻bBc2ŗ125!RCTݫ)zD.-oIGA~m%g|kePYZG dP4#C5ѐfKfu]Do. q &^;-<3쿠fUQ V?ؽw5La151ZR4|'3 s*RD;^mnޓ T-n-5xawPzk"Tŗ#i,#$/#RnzP; h1pv -n3q(j$nDZA[޶H(% &U/e(W Wt,z, C<b;4G؋)$Q깄^st?ɠ*F/dk849Uqv2̓cfd צ6S0g#9Mi-aʨBTa)`ig"q@H_0˛EoꓰAMQ/u(\Vh46g7Vcׂ_oL`-7nLDo͔=';L{wz*,x9fq$\0LutVKEp(h$`)p{R *kJi &Zes-Sѿ0w 2fu BLoOq ̇ OrKq Ɗ^&iw$ EoX. ㋸dxZ@K3y'1֊fQM> 6>,[L`H(t !)]'"h:t)ӊLܑR.R/R, ŌboݵN)+Z'~#b]LmJ_dlk]n:Al#RYj, 4/b8g~:z_!A'EO<=ru6 V(t\V۷+F'かd8CG,i`FI"za&Oвb&[IVeF BEu -J>}A:kS=}e՘Γ.}Ǩ±{ӀM̷щq^#-rߜ-)&e-e/Iu$̹춵I `#5S*t#h+zn=LQ?3Gb~ܓL?_t |^#)YʋhT4Lv:RFpb`NiZ3Mt2Z^8|TpgOs CƵopzy؏m8QOx8I=?[>,|ާPv!eT}{Z@Ғ䕻]h^O"0==,h3؇iQRb90 i`y*̛wU/c 2dRag:zS=ʙ((D&]H=jfXm5g\e2"x09L͍J'$J]cuh@cyOUg^r,Vlh*##ڌ̆9H[i`d)gۅdky $B9%)vb1 z{vMVv뷀/zm%U9{53 F4_YrEK*;zC,<<&m]"U2O`:f)(ݝ브kFf֢$US Aqǡ"JJL!Z!cr&V*V# {? /^Ƹŵ᯹yi <3s_Q: [hol嵡 YBN~Zm(CN%"狱KCc&f\d7ʣ}xRncc2wO2Yz]?&Xކaf5Oѽ|uڈJ눿f.5Տچ ++P.t4Grx)tƿ SA[W>yi0)J&, (7*jgqu#~ Ʌ*gx&~`ĉ *{l͉!#H`1D B=ƀy.WAf|WLE$0X2e)v@ boC!.9[s|jT^]hvPH+z=?xE:|5~;AI&΁63#*, kDE pdK)~gNaFf\`MaNf;vRY@ -F؞iQ0VչE7-tr"92AKUM㢅m >F|(WiX$14I %( >"Zn5SoJmNm1bKG O 俸ylF/th8i*xvunnV-LS#@&Ո#g ,J~ ߥݭ?)I#EKIKfůFOxȃ ='=oz6|VxKGgHz,[#lN F9D iʞU-o/_ݶBTH =8pֹ_%XjV58Wh? lS%* !r@V}KД̭%lb^u8X. ZAyqFa>"&1hd;`5ۣLUAX=p5J>]YM 'XKvy"0+☮䭬}WFe)å)Tt8c_uxۇ"!,;I/R1;e>[ٟHt$5`eUBZ-*ssugp$ ˧Db=j"Fzi:fO‚LF㱮#0`#{s(¨xVb \TUUjHC!w2y'In6k:9U_ X5Yǘ%H+[Ze(=JҐ˄4WPda;if&*7+_a,ys6VU]l P%C,0.4Nj|\{~yDDLZf*XBnFޙ}Ep=І͘ :Ĥseo!Is;e4wÄ_YodS*|n))zG+KKaOCPy(_]Hvg wpn\+̄)|c]m0mĔ"".ȌPNן/F@6\<#iM8e=jM< pIN"a!.Th ~;LGtIw50l㯇PK`x$[Q옑#bc$(\Ux%I7 |Hͯ3pkKHJ RRTAП-G3*.cCo?){8զ 4#&9,')ޢWFG͡ ԛ~}ԕA*FŸPϿ5#n0-s#ոF̢ev&5cONk %^n(/1"p50]&jI v22 +,ch.4@_S JLPu@-3m,NSw胡.5tmFgVaӌ^c`s]͓oMx|~iZ'ݎ C76/]J浧kB U~@Cg@)-Kf1,TL4j-q(iޝК &|!|ps|qNžT5} 0F\szj Z?/<&ҎOkCvyMVҌ"D HOUAÉbd䦸TaEO)L`ur%Aa"28xCH0)|BE ޲,hq QbSB&|Xj]/fXXCC@Brw n ޔnG״usw@]MKLti%Ll"&YD8c0-M}z"3f"ջ*]9J"H@21q҈^;Q)J,Gg Au`T)0^6*e~7Q΃7ɭ+J{^O|XD*>n-e8a8#80=00}:]ČR'q%#ғ^zy4>zI]=QSMElE ={WPԵNhkҘ) UO]g ﶻv E `Dzª Ч! #dfGGľ^e՘ynQ7Rcm/ʈ ?GˉEj$ߤ"phƏ_xH1}7dM<,8! CחDIc6?P0]LjoZXp[O7-X8oׁ+ =Z1"u O˫|p'f;.Hu\I &~ɄhFӨgr{J!v独$wq;(Ud`sd.[efNNMFH`O]#oT,ȪIcDZllaqV,tLr}[>dg `,:~?Hm8~G. zP#BIv:R#}[xLf~w "l D>$1sdv:hxms)#S,Yw 2! h#ݓ*{އ:d1>t.ܲRkYlacPmHw^ `ʺbaAnyFڝǎ_,~VMn?Y:e!}{K^H" ]w8B,aKw\0ftړMm?1dMnN47xJ4B_,'o$n}$Kj8q ,="${9 GQ!EױlB! Ĺ%/{#0r (AOD A0FU#zTYqO;zVzbL'.XD*1>G;)VvjɉA_b؁O>Fg8wW&~8P3`ӑ1)"k'DB"pͻ#2(7kg9drLRDtOQ úz'u9A]J&̮lHŴ/\MM'^/X5҃Du9(ՕQɢXf":瘀AvUudj))pBQ.m!x42 tH;#X6ed!z7/442˾U,m6Y "fjr3QKS"=r r8 A:}\Js#j?s,M '& ga * })}P#uk5]6ğW"dp?hSYw`6ZZD),S Ysl~Û|@i"UOwYMc[w݆dEs=cyzwFXka5Eۜ{J׹47pF׮Nꬲ,mRD%\$cP23eg"rУ/h k q#ZA-+c*+T9%FsY8)'nI)c2frCD)q HO4UFog oPxR;>%J~60`~k`j9u5`r/SHO 1uzVjDoJQ)MKm2npz8#ٗp;9^]2UdoI4ET;U@ GSuSzOēCxbC[)!7+P.Y<RVv"%< .и|ӨEh`?%9w.; [+vb| JOOGh%W="EBl96 /ԙ Y̴.t$G>Ě ԓS|AMĺ~ET kw c 1Xݓj&lin=ORywiۧ|։d)_Bseֽ%ss5# Ht@ST* 8sW-nPh*8?x9\) w|$A++< YbZU; nB{Xd+|-sc+TF;.Iٙeeٌ,S'D804ډBQv! i5u]n+h 2rS1{NBPT0T%2m~/|͘ˆ\;NƝA1Z5AYcݍ_Q}t g]@ ^{M}V B#_k7Rj>/rΏ:$MB:wERR2UD!o*)KD-8Dp2E8EE鳈l@QK@PnQXJŃhN1( W~<^5Yhl>oe0 g1`*NG_e']wr8N>@w) G~3zR.0V8X_roEC$֣L5#Dlg [JH}`}CPJ4[ O\6B!a'mHo2;-ްn"ms:n5{}u0v8"Zh] h7 VP,:#di͙hQ(FԸjHtf'2/I 6m ;wDAHϳ rQkml4YVGIT]{8Ժ%@xZ@Txrg*>X=)ıHU얹m|:"V.@1}+vz]}$e9(}r頋W+kX !+<ϽaK!"h{+CgRr=W8f'iL=@ڞ۩X -ϧUuu@Pw476/Î$%y߈cR߯;qIʍ(Gy'skE(d){U5^ AI{Nڌ bsK+8Ѐg(yevt{])Rϖ_8dAa$L<ρ-E 돱pKcƧ_|f=bq ۃ&PGExd{nUݛbX#DžMH /BjOaZVxߺa~ #T]Ir}vX%cASQl@j_:ioS8$ܨ Yb1L 8<{ J- ~YLqM;ҡEI}ba:r@ӊOUqRgs3 i~,asשvW? 5R5ci,΄{8jHe/' Wes ŝ$1㊕Ļ'gܶdO% Lƚ؈m:7"\2u6u'=7GTbj٘+WQfS9@\M*Z̲xdIю+Ru-^A2Bn_9{uÊؽ88Ue 91[vb& (پ>C%<7Rg=8J)xXe%7㬛C}d\c= ?j7BckGLڢ hkp8VKH? 母 br* 6Lm?x7d0u<#_0Zq) v6è'KO2k^t7KOmy{w=k \`kO-EiD+U ,6]D FmU2n2Y2*1B;/[*Ug45snr x Rq[i$KS d1庿-(T-qP<Hƻ((jS.#XS9ٓǾ, ug/.s\@ȸ7i dR;Yw0BK9M@%PzԲ԰מ'mU7sߤUּJm{Sja >TR}l!=Ox/d ٱ=N{Z|YNv7\] ۘ́j3y 3 -lX:{|R߂[dT5X@c=>۱?9:u #`Cov&kju-qٍQF ~jY<8x#?Big;4$'ZUFInl%emg7O:}($3nv{γeaQ!qp7plPL2E9y$3IFk%z4^aX2y2oF} h,|1y.Y3QِLtʕDJa qloFl+"\lPOUUJ4λ4a9U_%h Y$A$(Ql3dIxeDs8M/39.BG kU?.9WOq`C]5$?} ( ~xv%3:RO02ԇ!{5S<ja+<޼qLHYvڙ[e\n3=*g@̲+SA WJ?55fm]`A 頦? O7[fa6ͦE,eV߮泌|5iiɾ{~H0C }ye2q>&N$6fۃ#i:BTylg#Iz.⦮ 3u&g8/rF4?:2g0/[Q ra]a4qKAV }t/~UOgoe4a ^ jxgyadl|=糙QS\#h6^Aǒ;m۾ū@4nb BFC5:Sye3 pz: j`RcgS}t KJ$ 2^0=ZQD}z_嚦eGm)~xݕ$& xD37s}' ?< ,l~Q{k#yhkW2 A@Tv=g"r1SkV1]E!!_`pMW+kbU7#'{ l}3UĚw#VzL6dГ9ϣ R@%8*z;uE2|.އTX'Z֑xF*yŽĔCGR3 iC6$n 6P3E }KދzmQ5Qd౰ `L+BfɏT!e!O}^E䨏wSbHJ8  j}.Sd0gO !jl]85rǍ,hWR^ x;9zKF c $h>h7mO1iCD#9_1< \E^+ײL8|z#K@+]9OsBrmQ9 _#g,Y}ǸY*hp iUB&i%aڷyցqOzkcM`˧ɉ0u16iy7 :e~ gċ%Zcի9]XD`C&F!:10Kt™ %L׉ma"kΧtS"~] Raʔ@6vg݀K}k>z'Ŏtgx+/$Wd޽幡WRfTM4M( +v[p敄PEc4Z4oDý;PF= Sٱ[ IkL[~,{\o|yh>ofKKňYNbPNy;a~δ%GQ@/u΅>ǔ~+t.-jh']$vN: M ʢ#GN = V9Z}Kq<MsK(B:CݖHG bI Գ JfiXuXdr7Y!‡Y}*a^ebXވPdw9/*7JAg, WM 71r 9*4k&@*n]$u F}sQʣGDQ.B`WBXDSvC\sٖv,ǶvhoZ%ZLY@ atjx?&Bs! =һHy$.+G UVU=v7>\]A3G7Eߘ ]s2!e!oX[qs7/.tad\5t,J\X`/5{@j+붮L0G.fmzˡ>(u_({gјݲwor3 6jT:j.T*,:vHfBTQ宑*G bCz[n~v&(@`SAOGX~ol\B^(q+kz&glH֬W[2=%&ln0LA 6@ZN^+Rdt ]mhNi5!%pbQQu u`r+w{c#p/`6 #` ;c^jg([ S0qYwߴ9ZsKcҾRc<8S%>wETgɉl<>篃-C𩢳^iZk7B YU>_-ҲjJu_dX] ĝ'[':@ks?)@קɲ1@ݼ^{#s覅2 ~q#IsI-øiPTZRIrC7q3rg q8W@,:|@7wT @qg\#y]~ZSPhMzPsࠤ@'҈B̟C)>.z:Aپ0\I Պr{6tN6!<9U9z~rW{&E~1hWҸ[<{fVl5Õ"=lxi1ޅwwi3A6 fo!\rv'V1jKQfFiNqӑ3tȺ #fG)j ypTV]Jͳ’ ~ֿ&J i6XsozC.c oAY4Ҷ0 бb(ճ}QG]>&U^mNo^r?}q+zs…6'c>wM7֢4SreSs$: kT󂊌nsթnpM r|/:@A`1/'0Iԡ3UɆ2)0!Ǩt](M<шVE7n`|j 643z'+4%˪u' .ƈna{P>Uwuq[FYPDV)<@O4lM>]7 },njS ћ+ -8Yq4J4ǣIيO妗1/e|R&60+ӄ @7- $C`|J&2ǡ'NBFbSm;q:5Gn*w>6+2Jfs6I=± $*{8_\1*bW-aQ~ ӭDJ-{M] @cBH6rzyh`zڦW~;>5>JyfZ~uE!NCu­DC>7Q߀ ~z#4`qbyYP+&t6:{Xxƍkh^ Ji^2 {ٞ;vYp$߱Nw%YyJe s8\`ןH4-IP`6Ǫ6vEs_ 8Yk/*q ^55HwH-y9ZEXٍ?흁;;N08U=Hs ^;Icw>E,a `7u=n1qb#g!S$',ѥS6669U6: ƐӋ g݇9'pgm )^Z,OUQ/kS1Ֆ-`)%7s7+h~>H?)3JTG̻ v$/ۙLr`!\j?|㖨ٲSQT|Qa&ShAYcteNZ+lbZx:&%llGFZ>ݹr`b"K< óW[H@v= ĖrZg(3J dS܀".3`}ޔ{˦ZGY(9A+gL04HE~EZ?WHy{×V9d4m#ye #C.̲$E0}Y0ޠzWUd  dʆْeYXUD%ni*7bvɛQQ`VO5 %,RōYfj+v HX-+V$DžUm]?qn|d ]]=UDqpa*o`>'ky<6n w&wH7'h?Aszl?P!}"h25A -ʍyi?rTY!VFBcj=,G%2WЇ^N| So]\=H)6}/bϼqWZ+K&It zHy@M 4 ( @Qܮx!=GBoB**N nDl)2 ?y;ШUOlbO ֞ ɂX-O 4Sx_\g 5K4ZB̂qPud $kvm3n2MV"<RF碻Ż[b8NGiTZ9GNߎz׫سwi3FH ~~ЛUplLnKDj1DtzWxGD߂L;:.S]e$%D4ޣ)ΦͻT✜>HO* wzAa Rwf c`3ilADKIw ެj]2đRK 0ޅϺgP`N2^ޘ#nU%3\U AL^:nP2AbkuةJsT.U|wܥAL,uʦ8Ksj?b1FeFf]QE[Att?BߋY3 DBD֤@F' 5]nM'Aue7P&݃fQB_("\RlCE8m ⚁=zLXlnErZ"3IyD'ůGKZr8 J;j'U/#M/Grۢc;X+chrU0>L+ס_Կ"= Lj|-g0`m#hYmXnlE\mըmxy#d)pP [n ۪eWeѱ38e>>6t|"`ggSdݒ>HoZo ED;nDd攫) FcH,/c}[0CprSe켿-5LsHht%*T\*EH"sFu+ UTt^YR*xѧqƁo]ꔺ?cm$/C(ۭ75J,09ҁ~e +>h'<ו86뇧]1Ƨ^ 3f*{ߏ'Ojy/$"7pt,9cRţQ7Q&i`CmR#Q][wf0x:\}9;[MԶQwʫN[fd?NC 敁bB ȈMuwtPX}N$-)`\p-?s gJ y}Q("fl]Su*":wcڷ}o~Vƃv~p9iWTHظI`S޻-j^`!p<3vGhoV9=$9 3?s84 Mr,4H m|[iQ"'&7r#\m_y[q71THlkGˀk䎏?﹚|@^Z}=EzR sA5X@a[ #>$n]{ j#t'TiUQȯmz8V6!hWhv.StIz8΢5sNM(Ct&dޒlV@Mem}NS^8,,IkX@ w#sσw$r!*TKÌn@ض2E5 `F A&>i5p:p^.eus:u/([T9e"%/,Q8s`rg^BhxJ݀PekIA.У.I1W'vP"TYs-b, k_=-]D0T,q5=/YbS~7'(ҺLŻV%Eޥ r"<=jpCZ&U4*}.۴DD)VV%GQF,3F:I 8^PA(޵b$-n?\"r#e{,*o#Y\߭  46!:Q.@݀/w6Ƒk7mrk X:f@ike}9gi HL3~vuBC%`LҺ!8KuF,oLzpNddېq".p{^͊3sVlaY غn͞uјY.2$EsP 6CeyDظ!.3A \ßr׳CP =g2 R [W0O<F݇EACi?.cxϑZ}+y:#ۥ")|sy<'z]&%hW1f%oګ =1ON,(Y23;@5;#.v{/ǷpÂe$X@tG=oSP ØJ9i@ Hة$ UR 7\{=n_JgId2?K; T+8DÃ;5_Ո)d}PKD䟭;upƧ""g88 m"RW;Tc(\oC-.^3ivaOrjTU_1xZI Fظ!h:X˵%~<d>' |V0wug&g?cZϔH{tZ&Os%bcg"އh|cMD]6*.W)|b׷X͡cж:`q7w"b8X5=%ؠ6kwybv:I8,Hj&9]?˒}j)C-8࿯4cAA nxZVN)~H1c ˏL2.[4x>ͮީ-9YzuT P$jtSn8y yɃ]Tjz*מY%r F2AqR<2CS̏ #`ApM G/[YQ~No&*Cc>ԕR4FNz Ή&;<LKӓo0N.^_ovpK[Aw+|:|1d%M׽'|?*Ь/vyǕ/T]Vg w=dT QK"T<#čc>(uju04zH 9ej$6$NeX]>NWjZ!Ssj:7=U΂NQet!.40$0Ͱy2 [*lքQ/Ӹ-iNٳ/ nd$'^׃3g<+v\$8DiddSh'VP/UThl9)hY?.TھYoZ-z#J9EҰ0$iʾT=גH, xdvG>1¬#O-Fe&3@Y;ʹ&&d,\U.^99!"u`zb=H/' '*pD'g!%3D]UZ-+Vͮ){ 2!%㯄kDE$dc=l昮"}20mr*Vu68C+75ecIIQQC r-m"V0Nf![%?0&N3#D{@͌%i]@N@B?~T3V%3烮iTPjgE~9`sH~>ƆI6^z6D6Uܠ7)ȁu zreqe0cgp9h7].bF@ŞX< >y*[Y;a&BJGUYە#ʋ„]+:5`UAFs:&H!Z0 qtJ { z%X4`^\_5Kw:rwVƀ@+^"ˉ-NƋ@@wh.X-+ F,'$m6PH笓 j&~T)ؒ,^#tR ȍGJEj۪!+r!R5(&%;-t C,|w酟huz=Pn50cߨӇ$ʙb\X'MeccPw\=GSZi07z9j,?V{}bG0r5=xp 43<W ԏ pL V]Dbʥ1lDw#P揷1y3e]f׻Nl6:,?"x7͒Ao̻01B$"3= ӟ*ED &! ~O>+R1ȸ75C˃g!wk(xv?_ |r`ہw"azȜś]u硟%;qEJTZ4SBP?$I9$W?'ּn$~@(| >)oƤ0` P梙Fnc?L?ǽj,nbg"0q`a}a,VmJmܲ"8^19SX'IyRhk«-\mϸ(de}7!] vAӠ>]Uje&3_X"3[j~4A&qQƔ .sLؘ:|1._ZY"/]q:k (#^M#K]φ&Um b)̶T>&)9)awő^@WRCʉ8 HF8.,2 Am;KXL}EF@aLi`Qz`7OgX(K \+h3جZ UВa*8#( lӾ|L:O֔~Ĉtrm TJŐë{@ۿ]5#h0βٲ<'4l+6tw1& m^~ӱs⦋%j )#$ޗmZud:5FvwLR10ɴG"nLDl ո5Zr٢<J>BWqBP7l;pX3'(aL &fnӼk㋾V1uʠ!٥O# &\V]3r ĩwЍ Q2g//. QUI@K6Z6`=Q%t巶u!5g|@$hݞ+[vGӜkB?1 h6?w I3RKN& ru,xaN{& Ŀż`,룿fIӍB0e'HQ4>^gZa0}ZK5wiƥlؑCEf+V%9 |CY<,>=7KXM S|֭DԄ (f*Ragx2SGt!DF%2u[Ck"6m$%1˦poRAi$Ehy9p%} .oUmesqi`dAZfJOJb)1nҕy HK,{U=X-i*ܝ*)ݎdՕYBgB)g5bgp06'yTo׼+Wѧ/z^-Az{DŚ2eanw;]os+d)yIZ q|€O|!'~#t- %6YFBqnH׵Vf14f)v|K37XcTv"ݘ]W*Ӿ1eȮp?yQ/L Um&|V/}ٜO!?!+v=J&,0|)οb1+\穣ddw0-B^T1Z֤*mI {{U9tٟA&R8=a\8 y_ܨ,FᡯNuΙ0Hyy݈"β@ɯ֍X^7WÞ8"lq&O_2sRL͟$*ݥ vB|#0[hq`?P*r`u@-Nqn?eKfrH)ƽ~ Lp_t bN-ʻ?e^f3`+zQHٳvb6,8EiifX;M6fJԣq_+^(@GO~dUxD]"::bX`1ЂNQ e880Us4Kg+1s!9HSQ hR8QI#stoil"^@(AQ,Sp4tO㏌ W\ZMߒᬡ&62oz+M{I3*U;  V#oÁ7a3!/à'kLfm%ø%R;"2=%}ɿ?Xl(, 1R_XXst;y~~TC*qz{g)jk?dM4ﶹ%̟/ N?sZ(!'_*bNIXB ҌOҗh_'{h HZS~L<$Q3Ȝ!)Z GճPlN@bSe{yʦsLU/ӵ:|+ 3ʮ.Z[i7rtOI.8P 'HF~:;UKkJB>*PU 6Fujپ]NS_o?gvHsu}׊:~PP[Z^ҭȭGYƗןw@'3W]ؔ"mӨ}gْ\ tB'1!rMTd@L!<-~w%cZYT1r}`4,Wh(TddWv Z嵒v@_)'(pS:)\D€.Br;)lGk$Z__eҼrc2)JpOStQ,~F#^ëU`eL94K"j=k_Vc| :Ap|Aρ9#BGl9.#G=`||]^8ٞrvUkqz [Z>pʒ0*WC6d@w O̗eADvy%R:5Ie+i>Ϻ;L򰴯BU|`YL84֦lO܍SMj_JUr&pj\e (bE FPnΠF l.2&@yctiIY]QC8^ۯZ"J]f>;p[`M2R̪c!\W5E,)yƁ1c Cet5ֹNǿB^+&F\bqv)sў.JNĻǰ EF{j N\'CJVj.[ #?*kӲ~/3_QA=$:ôs+{{g<>2>M*k|1dzwL uoiy)I`QGN"?V5 -7o`1.TV:@(ֈI8Šn-V.gb_lqІw`;EXI,Kb98 jo۫'b>WQ,7]>c9r oJ\aM`$Md*~5ia!엗]q(y%g̛Gd}]!)cDi{h,Gi lWVke|`õ!r (ii폁.Cl\L{Zx%0nޞΐM"Nѽ)*@S 0;{S0 @oƞC_ C9[?y'>S=̩oK'L8|}txs$PcHSʰaa[#S _X2_P I㢓2Ã90nȗ (׋2m-B`xI0a!7Vхmvȥr3 +- IX(Ҏ;"vEP~M ǚj=|qL6R8a,m" *Ǣi~ij0L^JJ92P #'[wS%RsγkMOx__֌ߎ.!Z~Iij.D|ӷ6UJte6לSNMZhR`ђ q1$G$ifA-٩n'iYM_,X/b+w6-K_A仓$Q .bO0C!`u|Dܩ@v^|=ˆv a r&f>Uy _·SfEͼF>YtW({siU{u8j? '? . =8_\[u^?K=ܡ/7 )pXFRö+Qwslt\uAFFBy¾'j:J䭃 .֞L@ŕZ(Xq6^俙O{t:i 1kӁR&t؅)61)3h`SzpRSĐ)Fڨ]>x6vf0zr>+zf/"m@]ɕT?==U+$ -?B0QUER\FLC9>P}(URwdurz6fX\[B;{TR,RSk 7[8.ᥬY:Bʄ f- Hf;(Bxu"iTK1v,I=5f JltXî(Euy@΄ۋfK"&g8G|Gu`. sky[9|Wxv?PIG@ucƊw Szm?uDjAD!p'QFf}E8pn޷tԻiKq5X}[f#C(4rק|0ǖ{?F'NNd,vAjGo c }3o IB3 ӃP+و`;;1p5 Lj_-!dztVoʃe6Q 7ʸ9B2͢:W4PuױhA[E~&IOn}#=3ռFAl9܎+Z?w=%":Sͻk);?U<.#8&] aJ#:"/k#,wJf(Π˦{q?<4RuC%Rtf 'l7{p#YTK ת#PИ+Xs9㓮g+G'= NTIQ'Ir&vsq6b ߢ``0s5Q}cY`dN6WNj !O)׭s&,HqR#) ~iE\$ZjD =fo׭dOtQ%&+K"tq}#gf2IYec _]:K& s:櫯]4)>mMI6c0087%ą}~3l {U R@߫B~6fZ4"0r?mno7ymtܚqByV炃,5.Q/o i- Q+:lӠynX~m4W{H\F+E9iɟwCDƾ/~M1: 3`6,vޢ\]ݎ;i%G %:,P{%?/O/$:&Ynuvi5Vw!{55X޾rmydWB?'y7qOB;4v2-|42)7ntAʊYF~Vh5 E0J i+nvǡE=r^I@hY];20깠,ZsA$b^1?/4D A*H*ДgtN*M> q;$Ձ2T `ڣtIH r\NG7^5L7 R > fUY{3_!z(Emȇ:d,0:aU. 6|v&T'D5@\-ie(@4~ȻDZS3^>r<4^3'`͋>s GdC<So6j93&a(76W~&ZpCi;׊NHetGj .B͡3bgP -@Jmt8-5Z[4q%GCoT Jr70hc얱/J!R6_y/@nǵBNA 1Au:z_BR³6|5 M%Fk`k =x/j!ӧ|*Z.(.KW^li{{7ժg--/-H06Y<'=F*_+kȫ'Z² Uz՝2їABUqpIuS=zR G6GuQ'X(zRuGI{0`.D;ٙ S*ty rRgfzW;U[np.D\^jͰ,>,fLVB%Y-'Z4s|ZJN$f 1'<"9&9iC;I^2;LBnU`4 ͮl%imUZ(+EDC:Bs Ws sNl P= #ȟycZA1;?n&'I"-h ! i<WJ{лsrDFW$RrvSSs>̍%s7)&믪db@AeT44O9o"?|]^RZb8noՅj:)Oya=;x2#Θ  h쩚N o:;)J-5*ňK5wc-1#Exv(ɦZmb *ӇIϫ~o#lh6Q-h|k3`Ͱ] ִgVuĥ"B0oxIцm6>P4/Ů ȁkLњÕ紿)MJxdKk-e7ujmoD%KiokREb-)8k4#(!1w@#IKryKQ[=FZӳ*:1y@m~:qbXؤ6.[W.Xhҫg%oc(QNt~\;cbݟµ*سŗ=@L,'@K<(5\*`wge x錜A}mN>,}tY'?&E_*!r% r>ŬMThbEu(W9S&%vD#O&zo|ᓋs̛l6/ '\t䅝w7lS-Q'΀uD3)$xT!kjF!g5ӞvR"xf ~mK{ȢT7fG%'/7`bwx(-jY Lѳ8xz%:@KCSCգF-Z^d8$/HG|Z8-.{6 ^ɴozd8}{|3?f&#*ʲ)87vGqQs!@ylN\ A 6fNJ(aVc9C&K foqKbIvdž2r\oGu5X@FEƪQG a6ΞR,QaD&5EllõթL~fH]LPN)?c){.u!Xa9sadS?|uu3AҰ|#+aZEL߶Iɳ? iٌǦ"`$j$_ˌĥy(pՆǤ Q%kqd"jMRܷi¢yE0B[(%BdR[@' T98ڗ|3LVT­sJxz$'D6|ԦƎɸݭ_p h!c~aO{26}:/6XJms~=R "wI;cEi1vdWŜl wPm@0U)Pont'F+"+"}AІd?bnzGoY%䜖J̄ 7 W7xlmN PPhXݻHz?uaIW xз?s_|9Ә9Kqڙp -9KY!?j}~vCZ8^Mxlx_ᦈ geEC5:dAm Ͳ1)!ZՌctTFR3k VtiD'*F bjJ7?y)s%|lpUz1GaԶ]8$ - (1 h8y$eiQ[;9OTsBP;|B<tZ:Yc& :!7PAտb>=Tp8Ml4œ'WcyE,_>S@h[X4EpB 2ksvY<=FS03ͅ!^%4-lO]#K1`#v9}Bwvh۞8bF,^m^&n}24F#UVY9|z? SP\b,$oqh`B-؇si.53#odҳebe>0"@\3`qX&(_Ȍ<9u9TxV䏡w#`zg"KSrl0EMuV kn]f/7̵UjuEt&+qؔۨQߴo<.:; K1R0/ϕSѲ-zF^IaBc-o8ڲľ?(7ZpuF=OoV]dPG6GCڔ;xo4k wOXo)CIuAt\[BKc9gW<; vh;sFŝS-IKnHz:(&sƞ3 4Q#I > BFy5)ʠ_3Ͻ}kȓ9ZNpCJ׭%YK&\0,ږ6K-X5S {B;p7] Pʠy*VwҨBїNQQx3AoA9]/`h,X IBI72r/\ri3ςx6ՍЁ~N"=>I ,UՓ=Pd%U Y{n>-3b Oe]G"ȡ͊y] my3eEng4a,d0<#,fI,Y\?JϦx設I8{VThI:!^F3<Jo@euAi\bկ1Q&0~wA4v8T^Y1j \U/D]C Fcy8k0/gB׈ ̢oR~-o;hH=/xGk#=ʫzG0>4Ťm:8P.{ZC{/Q){]aqD@v Xuxr eڼ깟V:(P(pڡŜ `dgѤ*?c(( VGq΄/J09MPo硈hx#su>>,8F]mb7;tf"#XưzK)01F3XĦ$[ ^p\yF1 Ep=MQt\(@na$_"eKota)\* cRY# ZugNΰzN)ӓ`s Uc(PmRŒ%aq{|L`mQH}ha`޳ upnvrWI4?S4NgM#TEy\M՗U}P R|6:nx񜰥ʭx_3#/3:s?H&o5so-3Udm&q_ `5^ HH Ld\|QViXLq%\'dԩ#pS0+kch!~?]*?-<ÜHrVgL$iB E׆ӈ_0\ g+|uCs]pT>3+<1N<@t΋>Qe$qGʺ.&!a3XP`{LDmhBTT*e>`kjp陮 F+J}?/>y(ˉ^z#I'S_\Y=ZUBӈR0FiDgOej ܹ#؀&cXfy+۴#=W'CGLh$hl滶_!6R8TqGZ,*0C ׁ!_bJP 1]x>}\t>p8BjtK屒Q5d}t@R&Zq(ڙRrx@?|-CBQ N4r сO]YJ_"㼖(NPPWiCo'5BT^h$6dZ!B!w;"G%߉ +C8"eCc=dُJpڂy` =ru}0^oaA&P LR)4.^HOc zJo?Snb0v~X_[f[B#vj2x1dF&6̗Ъ|f ,Z a L%W@3hV4ÀҀKN9,'^AO!#~K' FUxCIk/]~׭*|iMce v BQFa)0|LR:{GqqAs̮1KˢfT&!bG"hoׂ_5r*j@&y6́>$!̤rKsݤI9XDhu7ז'<5Ŭ>OLOY2M(0~SPggGޑXZ;\ZK1~\`3EcI)3S'Ie\7@r.I;дcu"1oqǍ3:`*7"6r敳qMy5)MC)@N/a O)T$>GkVg?r 718 f<.A!"dMx6VOPקּF3$kQQ/u\Ԍ ש|lI\2ߴ%z~|äC13ʻKp(]$8^2GmPGôM6%·$==69y_ڌ3z5G_5붎PRR9$Lk͸ՋG6d _56WN3lKpd?72uE"Bq;y4o/BȑѶSG0 s'_^ 25=P, uANC1FVD@mv[q 7$ ا9m} ! ,>_AAT,n6}aօ~l@#YY{Z:pK1hTcWe</m<#@ٙ*6uva ?TgƩp ;i&be4 h].DIOoiZ%U^uai˖ WET5_\~awqD6v\.CTjKf"GTm7h@-;_0R' .`ƻ*tહz~EM[h2+ψgsf%L~mCm?ӛU;DFt5ƴ.t7壞;0V>θs3b ]@Xǻx6Wk-CɁd I3 6u#:/λpUg<čᴁ j(\@:/b)g$50A;mQ2F(w|÷vɜ 2e(^@,mSak*s-U|]-g Mu;GI-8?/%]\/YN%pImRԻ =2\S58>:%3ь֐ԪwRwϊofB:¼*,8q;y:!H`әGf54&K9ɨx|VɿwGVf* vDt4u6g2c/3T*Fws]%{%ScƏ8NZ# :`Q(:B}@+B90q:%)Ȱf?&Qe{H^â)n}g?,|LK@=bZGq(1 =~FFo-s8 -gPQ&K.$L=6c ._< -mQ:G ^#lbO2<\DtCC8F'@J;K-sz&O︔.aiqi,YH"Q p\K GVqSwpX`oG#eJYQjٰ(orqOBYAgU1%"m+ջ3U8 n'?yoS?ZIY4qsi+:2`y 48j>%i,)})mι;,[{ӁQPqZODT ϫFxҧ2Āq"Y-Xmh؏ ?" Gjڳ;{Y.e4ln`ȧpR4Lu08<LOtLAiq/*F;qjN8х IR%C=v8nrS)wbϋY{S\ǔQҴ\^zӌ:;JӾٲH:Xme=*SV;{ӡro%l@&dަnFXхJH?cGjD\;9SFSYWÜ2^|Q(p &K}ذLɹm^ʝFiJI]LfXt64P}^h@3PvvfVK|tM_~aP EZL`JMT18`~ur$ ZbSQg,-O߶9,x)9mB| H0iC !ښꈰ𗆗c2;D>07"y/jx$YOu\s̩? &oBb B44׈cQ+hꦃ }+*.̰xƢ-JFJwW3B9ZzЃX]JGO,]Ő> Պ:y$ԩ]s5=jLQ6-AǪ ۦrx]/eJki.7v'RdUs~­nű˷0Zx ih ̭ڇ*E+(ݝߙk}T\wei;CMA22,,Iշ/{t3ΙkoT^"ӎ.T-=ܾ95 |7MR_ۄ2(YLbk AʟVEP)[K= ՀQF'@B-\i Ff$dtĐeȅKc( C\e6p.f6/2&u4jg&b&ݱ3XVՕJ=X1ς&#eyg׸+f|05]Ae{~rf/1rkK4-]5u:xU:$5l݄D2n>HskP5VkGZxH+ C?ĖڀBUw0"ţnح~Ո sx1k!Z`k\|Fg&!=Aa#e|NZGTGӢ0pٌ>e'}ΑW*HH}Y өhʢڡvRq#/FOCNu㧰$L2 sUHnS(tft9DлVS;^ M$rP^ׂ|FV¶ӛRD~JMhRZSͷԏDI)(9đ |,Yڵ7\d!\3JL=8 s t $88l4Rm7:[lW4EE­6ӳùXU8g@nwƔKlyR A$qY p6QO!0W CUj@A2$N>JgSWS ~o:dqō(*e0 `6@"8>d7DݫW[Rz8}FEH]Op}|Nʤա:zփUS_L.~+XM0 BoÁ78ҢIOq8lxwV 82$S/vڃk0=x^vUr:}kEZY}]_"HgIMAߐ:l0y`?MlO8wjDa[ c_ تP[Lкhjsk2#; w̬ZA?H*Xmwvvs;)$ sLuuESzN9QirXX)GlЈ5W|~_uc=4P?/onWqbN\ƈ?Ls5q- tc!O90m/z X6+jHqJi8}[z_!P){ASuޠ k2k imq6߲p vc,gȼtׄ&V_,bA1} *إ}jӶ#T_0h2;ڗ x9 %l?mtHL)Q,c` lQ~ӣoQJ¾'&C=WciB>ݧڟo˯H]Y\?5kQM۫|S0*dXV8Iϳv(0/n\.;!Aq"遯M<'=qפ˨RQ\|n$4 DCc}UALAgơ^qTܼQ,RZ[Je'@1ʮU 4sA[A^_j& նۇP^nYD[Rx?Aځ3,wpG\;NA3au1(ϓ䴶Cݿ WDuV̳"G09tOp #z@l v) 2 l֏t/s7A4&^q.vQ)_ԓ ?ޮMJ]AF[x5Wa\AYRT;. 4*FIATfq'̟FvOU@c>>Y@˸>*2}"Zj&Q3WOS1GvDo0nOuU J&rd,6SwB_eiCӞ[w0ﲸ~UsD5ѾނS$FJ*zٯN1d"xA}5Q3s 5ODk@o7I@3 น6ŷ^'4 cG;Ѥ"[v9wJ:/TۓНu|, gM|垡*ܗZG.pNl&J`?.GEȑC:yz 4`ښPcpWIg|[/<Lfn7|L2-.>g؞f RThZ^`Q1i!(|Qbjhe!`400Y4rh%7%WdL``^qgC-|G^9 ""PK ˬVqpFءb2;?&JJQ:~JO{?Ǎ cuԙ׮œ!eҡo2n Ħ*aAjh NTt6 a@23Y?DYء`::@;Ie}/.;ut#& t\m|@׉Y ɣ3i{Ek{Y:X煍 >JGz2:‘sPm!Dm K ̙\MNw=-CqY+o! {P8ٜ@:+2ͣ'aυ`íq׃"WPEQuB5jJÓ{]&Pe/hJ|y=o9%pWkqiBamL1S waAg]]In[$~X@Pa,V [5HlNgq$oF/YjυXo'ݗxo>&ۀI监Hv&;a:'S|2PW2VzY;Z+ Ml%" +)HS2KL&yE\*e@ g2#Emܡȱe$\ʈUE)ޔr`Ͱw&mdKD[&Bο컈'l a89jHz/4̸b!SDL. e&bS7I$ϱuc+jd8UI2;[/(T+Uo{Ïepv 2XB~%|ְ;cJ"P 3J-YI5|4B?zWov :O'&Sm鮍`e׋Y1O ETl6ΐzO܇h9/{Ck{i0e#SR`%n̪j؏iUFq\>妶+f%԰a̞iAޛ#Y]u6[{-ڹaW$-(b eam7)fX P$뉉% U~~+L7{ 00(mSk;? wcbsJ(VdZVnL_ 0fQ7R[ #g,*%|lɎ~'& ["j.4;HPHu8fRd+C!aJ=#hX(ؑ鳅"~AgLfE vbO(6apШ +R i/eѐFUܯq*UͲ8oEn =˨$es->rrlőP2 4_K&E8bWG''b(񎿘.I6}% Pܜh `^~|s$2^'K>ϋȝS%O|p=}(ޅ "џ@Ik˷hkws9R᭦I}EAxXDS*63b.ߛe~(}El OǝVFp-W`C$&[{ JP$S;aXc3u9-tOuS(FNΔۭF#ގ1}`S<gcE?de?T^F"?)AD>D|v(@Bkn@~dSTp&gRhLkr_7=xN)4mpVsCJ.}BPQr-abuBK֮S1Lh9Xc\ͣ"ˉga4@OvC,M1* Q CyPqf2聋V'^s/=(a\>&dOWs 0?Mњn딼WΤ)%Xȉ a&:q9%:q85댂+'sBoRáGT*T,C,Yl{W~&uR;=nn=]Ali1dF@\АkPStd3 Y?/H,-r !N4=Hn,_ZWflI?XVlF{PPx-2_y:&b :c\";pJ7e96ғ zo;SZ/\Ѝ4X2yQL+`*a(|ݽPE# >@z;}RB"|o+,\Ļ},;@Ym:õ:77~,#l wRkL2y,4 rYqR6R|ݸrFT,ҢOYe9>=_zr&piRg(TT[!8ƀ?㕑3GWR*j;hmUbQ˿1XH)9 'CjDf6IFu}%3M;< |Ec1 #}Q9*3S_~."!VU#t4wO⫸"%r#'jGM.` #ĪVOCd> (.(B^2 ;eṮ/[/򾓪z'atWDU"Wߔ"\3>N.)2we|Am,:@,Yۭì+郬=|]|g.=.a8$*Dk^GHKIW 'f46J| ҵ%XK 5؇Y0UXIKi㌯00fEmxg,s6Z4xj%Eȕn5;YNS^DG\[_ b DKwSYŗ 6KbYq"3 Y'jNaU#Rrc4O˛n2|x-?!Lzf C̄}!ǭ? j Uy,?v;K>E&>y!wN%Cn1ճ8JBˇF6^}orX^c.pF)/t1ys8>]D45ĎZ:Tarb%Omm7箒z@WX$%#\Ia"O^z@Fc#he70 Ǔ]Ptl$ A:`|5ȵ 1#҉4ڽ!;nyS)rPqgcNCؤFNd˧6Qi[6ie,NʬŖ=~7o^=a3OIK|9?^'Q&{(,.DDOV2sm)\98>όNt-ğ+FM^9 dZʄW wa-"nu)s|'#5 '1,'+̖#~:+[`,vn6u꿼b J/l2c1|FZ啤MϒE (MWNW~N][TMt*g3b/6<*9'܊VG+1gxkQg^IyvGq6p᪄7vbgEKnR#w'W)z%|WtGkCj @xE60 JGh&YE KEGSHkهI>VKM{ΈX`23WF1vWV'ǒ͝cV4I|&t)a92|!x Ms8TYMbKdrĶ5rMn&m&EläU׭l3C:5 oKò#~1~a6y0c0?B2Js$вZ79jԧrlCgLh=EVUwrpΊBWF~$=JZZ {7>'y E[i/=Q^q}@ePEHxMm MdnSbep}q? NJ6F` WL |r&]ںQêLu;ʢzs W| 4*7|ە"Ou, =OIss+⃔#j%fT 8TNqD+z5``Avg kB[ \D;Mjgqè( h2 v7vHt 1wRmTt[i#: |w;{t=;>38עkV`*=m_18bO/b0̼wQw *ǎ~8ɂ˹LPȼ^y g9׵޷ѵs6IB^U['xR{[tP` }ϘC{ bqvOM OcK%JѮ KvwJۼ)ĸMtfbulޞѺ.5HVX10C2h`##CuhB<5Iץb]Sm~+Yȳ JcubZw*Π[7r)(yζ5 ef(F陯3QsS0Pa:]S4&/#n /K|ӽ@nط)Kߙ\Ο3¸fTdrUsYK>p: -L=\dx}Ô=D$z m(p } 1QrA2L`%b-Lpvm0N\ tHLDʹAAjLAk,VI[*T`du-T"zB}c V|#`pFK2,2Z}Z}NΆ\G˳P$bBQ#ֱHi$Ԩ7ɱ0t "4tL+ 3 ed?ǰaW{-^Nr.CH2 l/"_/ڎU8'AH!o a,\3P9GP\MX&|휻87* - HΛR4+L8ј,Ke˄2Ͷ AJ&ڿtX:ӤBPr< c6zʃÔ% ]-PZ_mF(2ʖ9.ArGIݥ zs=v` \~c}@Bebіb@b{Q"ҿ>`)Bm2~i>."~]N97&x{r|>+-^cj}" N|S7\?ĵerN 4\m 0!},r"w&ɯnLo f6ERt Pmtt Et*H6#b]}`˞ ըCZgIgZx:j};VTkfv{f^V¦w~wm'o|me-7./֠jl D@{O#cʹG@aRQ0+h6p˥o^cCƕ'-bbO,_HuY|"oehg&@H+@0jY^m[rnKe X02$s0z|wl }.W9Sh !Ѽ@@Nj F7 ?VC)V-cmK/^a Wk ]!a&I22?͋J{Ge&e, H,J]'u⃽D`X]6a +SF l,6o^G5"\,{ۻsgSr=wY&$&LYQ;5)Nh#9vƷ=>KfQɄRb fvJICcRoŦI7Ղȗr+XK}ϋ7Rͳ4wu 7ٕ̉IT_E2Sh/dbid5]-ŏ^!͛Jfz$zp4O>ͱeA3o~*S'V?ެiepsijk7RQ?hlC DQvW~HpC'+ Ѫ,(2ԪiރuJ鋚]+|ʟ@a"zq\suȟǢU[RgQvu)%l#[F(59cYTP@,9=w-x*Eދgi_SȿJÓS+ˠ74]\^>mD=B.s%u]x|a"i3 0I FRZڀth]Qۦt8v3poxGY9)ju8@&&Xnͽ]I 6Ȃnъ5M`Kߥt^xEΔsB {Bj\lH=$qHdt{ &c.c)R*'d-b &cKd"d+|wi9ԗdԔNswGmѼ0h"ԍ){K^;O4V\!Hx̰ y%_d {>&Uco Gjyonnb$k*J嵂ʘ]ph2 >m8p8}ZY)`Og2OY. $uPbd(#V{8y\278c}P*AӤRƈ8Z\nڥ bF,[t(&&'zy/S>9dUbErHtnmHvnC(T*iI$/{Q\1{n|)@Ԕ*~q"ʬRxAq}L=bؖhu]Ggސj p">[uHҡh xv\w@¥Y;Þb\x?q3S&Ux 0Hӣ:[3_K-~}%<;jW( DЧ-r2ewKyxhq\ZNc|CdQt{TBYz31]ݰj "6jD42ȟZ7'zdМA-^s6hqj)\7 !ܯ`SX` -deJ8: VQBfH/+-p0ΑًV2S9$-.YI,0\˖D=4?`UO)ZitP/klV)6ddlʪOG *a7S_ x1~ں5z{:_ԡ\Zfr#ih3jܦ]OiZl1[=?ln#x"砇:|orfտ~u˂XMc Vq{v;tr09FQ-O33mՇw0fZ".5 &SNŵr)F󈦾raFzV'%J}E{J,BYحTxdOm<#ꋖ#RH7GުHJ&s-qĚ}HnF葀WskO@z&߷-h6)UK*z[wF"y+NaFEW}ck2能&%w.%EEN/<+nBطmv7~Cv@E*K.,e۩ھJLgQ K1"9r=:jcYQZ8@IG侖=CE0&?&iCmhvdؙVsS~ AkW+mzJmpɖ TE@FҕvPWƤLs7Ʋm&D1߅|?\uW4#%Dz#Zpb6Eqy .^@%$~yF ,"Vl"N oXnJVrHcRy@R*CM'ʄdh /\ʊ|asm 5œ\>W\Q}WVw{\ήB˶i:%]M!~ n_2Kw ȲUHuC\@`J)7GguE0؝?Tk rj2q#45q4吔ӳ|mu-UA|#>wq<"W'yϋEhN:ĆMHL(+y 7 >ȼ!;$ }撈y0]+õs]"PkodyHZZXT#.uL0MB*i%Y:y_+KMJRaD9Z_oW *sQfc0?E9DݕsSD C)_ˣYŘ @T۽`cQG{VqWμ ׋ׁ i ;G\Yp )nB0 6%/yEL.AйYςWCRd>Wf#Z)ુ | %Hd`*5 ,w7^a.gG7~ulSB:ݵꛢ{u%֡6ȱp#HY\ݬHGȼDSܡd *k%ތq$ |ѝ)->xYe^Rɮ0pʅSg[?$fwKaނ3lĶb[#SKCgm/ךr" ^[~D%s%BlŦ9}hnZ駱ݪild-[teך֍xlI)yE彔A(ZiRz%!/Kaϸl'$bp8\WVՃSp(zMaNlyB wencՙ }Q]. S(|-5{?Tts//ߙΊ.`b3ExlhFp0 i"cne=,< \qV +Vr`> (£ш;ВawJ$nl ΃TmUǗQ l8yv"8 …װ蒟E:"&F1z}+:uҷBτȟ"\:U_z%s/`3*7H{lLEpB^2e$lTB|,i.l"U<58 .#ko:Kñ45o&u #CK5}t6, ZPZR B,YS"Nxe< #C<:aBSD?dM?^[g1롎j[]At;A-AJ4DŽr*.O3YZ->.3%;q4Zcl*`GY?@l p]e Y79,o~t\4 Ғۻ2PX68C/:4EʥIq]6SK[揥ʆ*0|.E !dXB΅|C qMU{Ɂ}\egb}?zE oLX? W ؅a(k,:[f3 E#4HisZ!IJ\P,ǂw1厨O RpmECImm?C7 n1x.Bp[uo!-zNq|'PdB36)03Z(/~O(л`6B<7A:^u'GXC~#XM.ܭ9,.-x'T׵ { 7)Y",+؊R ,_jUWL-CN6,(sw6J!o[lvL# Kb>aͷcpPyMg[7A7Eqf׬biz ÝLPrT#1 Q\.r["Loz2GА3Z&w-bU'݉ b$7xVFxpN@`4? OlD&iپxi$/zIeIz">2͔(I="Mh+_qY(癸/bX1zkozR+EWD/BМg>McP 3/Dnʛ63__˲c KSHw$7RzWH#*Qp;D < N5qJ>/d4ӣ`d1uT!H0$]J  NǙ:ƩμsVkm Ieˬy@z'/D6,~M٦#.Ⅾ :x{8]7 =?= F H`Kr}wѧ f"za' owC]@"0.^Po9':,̠8VAyn(ZYI篺|=N=}> 94(9C;ɶ,+MCa^^KxS$U,q?|7V+`}ҖѤq>'rʏ0XŊQAE/,,S1)_37VR!2x-s@;eIu'AXuN/]6a„NdeXrRCNsCO2@[43<|]R4}f`[Ez-Z[>qA3TAƏNH9ﶞ~i`sO{FPǻ锿6 ջuQb"2ڟd.|c˃#ET8F}h& H^f\T\Qat nЩߍ2M'&HOqc|猜W[w"WL$̮}&C+.?`iJ$2N">&q2{umZ>%QNbeUu&n!">#.Ʉ;ڶH8t+#G/^$4{g+`awmIB=FYħb HBYc?p=d4Ļ`s aeH]IQޡԐV0UЧb] @x&"rn5~n%@nSmLE 4n^X(%4XHI0j 'Έ@v8?olFi×Ioo$|_&P Ճ_t|zvum}]:k|hRu]WpQXQh:50[EA@_Ra)6LJۦ~aC *lS2Bb;uh>I~qIou5qPpsrQUfP;wW-Em7J>KvUbx,鳪™n5`T-S׳Jazz)Iq|EV:. x6g@[l}Dv a=FbNocdIE W9M_u1;ǦS4"s:P &[Lk&vV˩#Y(>뎆a3JᕮpqMg ^ (t"{ O/&S=knkBF 6;"ܹQ '2t*@~-Fߒ0c)pop'bv@Oect ~';!.*8[.48(/rw58k8\Ǝ@mّ/zZO\Fo 0rbEYUXҨ$>UŅ~ -y2)!>P+уfWo!It|>} NAPq/ ,  $H; H:| l mv.T̆x,?`~ jo +)*j}ɏґ:l?Xe޽X4Ӷђ;Ψݚ'\3荧vkW);NpgɅmCx#ڙα_k:]{ @<ɃǏ$](y֘ c:c'ː>8<z۳ uN3 SUp6W_39JV"0׎5Tf^f@cمnJHcrA#|h_փu3_L@1LDw&sj{\ ـ70D>^%Nzo5cR6;q$ΚoTVWs \#0EL~E\ 3 3Q{CKp ׀q+B p? a*I ^GE邽).!ToLS0ψwhg68TB< :mPJ C3B/|nF.x DLg\[E7.[CrID^gq ϸAq`_X-m8g\fӻޣM+YLا _Q|v!钎68 }L9(+ /4OAMWZo.qf% " UF@jYBk^f^%ʼbN`x+Aև` hU3Ƒo #͍~\T1#?pv/4n"Mr;zBH-iI2Kj=VIrӚ`Mb%DEQgNBIp:nٯ~Z}B18"auYdg{DtA1z|roCZWId;K0Z̳ou{lCHXbi ^v\68ZJ99Gv5Z]ƪ_RJLNgER@4J3 p,܅SY 4k$iSY‹.{`CJ"ˡ?qeR?iQBU.sT}ZҦFwT 8 n~UVBhV 3Wwnk O whiFPRzmB Ni# '3:V!G1@7:CRGc1+o%S{xdd/+q ֊YGq;s8: :U>LUpYQR0_6 B!~Hh@F͓e k/c*zle1϶h#%JzDuܠTl%CUvm$q!d`4 #i.JL9bӫX+W2}=5}WMTȫNo@M 7Cĺ4 } 37*,;D;T<5QmS6 *7!o6oj3`/**lh,AVA#n[ _!FF3jϑskIcD=v0NW s7aC5%w&0D輴?wUW`Hs,7sD~8:ф7 i& kG_"(i(0. SvAW\A#1b撮ٚMD|&oS3rRa&ߙ./ 쵸ͤIL}A|q}u?~2f7S &AY$6_/?bp iͨ &KQ[4IQCA/tb0pȯA=u߮ZqAlEy@y[e M墁U u73j Xld> ~T?FɌ |R)Ei9 "QL rR T&z3;7J)9@M \hqB|1CXᱷP׎^2xIŸaO3FRFNJwQFr A_T%]wX"Ё0\DY27#r+v`;kRW˷:W5W$01a1hp) `ΑܥEy`|w 6,'YuB̐EۼmjD ch:ZCߖxHl+@kk ET6<0n^UrG v':Mm;M5 hhh)toQ ^tv*ԉ5>tbXJNuV&dB1=4gka]ch:MWC+j H"am+7DU]xJ.[tzXGn " ru R 9>e3zP- 8+-V %,I+TwŤj{mU2gQ_Lc6q#`dx0ջyln:ha9H%l`##8O[",ȿ2;Vlϊ*=m>^MwGкcp\Hd} QsP\m[aHt" `ݞ)6l,1SurSRz]e@*$3rr})Ð 1[hrb!9j<*fw9ӉdՁUҷ,L5~ +Q!@ -Q',;UVWỤ-EPn _ rh5h7 HkAٜϖU/&w^QpSeAklArNǥ>|g?}H6(V#4O\1la-G殚)C+ ~⠕ *]sxR|l8z1厐hlE7q@ o,!:r?$0{MAa -u4}Pp:by_Q @E޿g[^t DAbgTNy_ ۱X`1i,o6a3)a)>\vs)P Z#K*~Ytl7b:W7{ lY,/~ބ )K?BLx-W_a@#j/ҟؕnavoEVዓ@A_~'y%15 TAw+D?)l{_X xg,Q3}`'BHYGc -܊p+ʇ}3`S wD͟rG- *os;=Uԥyl]v%xnUY/e]\;6%J&笋w]%yRR0*}(ύ&EuS*>hүv[u@pܓ\M[IIzfP)2N.URkHHzNaRͬ|gmS:; q#M-m`O}-<._Gc>F:EUep4iw=z>;US~N{Nj#_]R MXVA~; i'6X9\fxN簟*L۞'hрx}CnT2(4wPNy8d¹Ɓ \5fF~@rc9@GPC'D$U2P1 DBa8ֵI6mi1#'mAApP)q FMhF<.\DVOF-^KF` I(S(-wenyԢxG?'HpHgreΔ޼DR2B' 8޶0&FX+: p*e ҏARЄT/N%,dR/N!sUSP]:' 56(tQIY mP-\`T4l-k qi)kO(PBFM Eէ7ι[g\TeQS+ $.sm;`չEH/ 8EC z--5t#{}axb(ފ4tv<2^6F4З~ ImE]FHѨ41CkSG4ܣgIv'0СqeS'4DbkifQ(]/@z=!/GD2wWGY.UK1i kw R饣F⵳U9\|#H{EzIe^]ObU^yAx0_Ө{]&8 HFsBwswQN~weT$cVtr/0'j˨>cZOّ ;Ha;j!'=iy)Ȏ%w`mMKB{DRB 5Z /&mЗ+`2Q2+e -nʬP[+\Q}{>9M{(HʛA<,+ҥJzxkhq ,8wAߜŢ:բ*^N4,QY^}H2_n=DsT<6L'iE[̝O$~4HB# N-!q= Qh F+>Cs]IHC艵{D l*×ՕCU_M`xJni##chW*rUR2oְɍ>wgsZH+|9w5fN$/}k@xe.gc8 ~\g=&+\<.5o7iTG%@c6%5AT"k; ->W5"pv[&$Xs|>,WyPҺFSj(E|rPH!f4iEE-Mw,v}af&|RT2Yf׺}4H_X?ɠ^e}Y@A :'tD+"Y̮#ejoyo}-՘"('ԋ_b-W:ǷE:<Ih3vzE=1cUhyS0:[l(Hp h(^w;'AoS~{N ?u~6f_u qTOzlW%_G;2q8}Q\/둞=-tsOn'kGLO705t籮ܹ?ePEO5o> |Yrx9!21E__tx_NǻAQZlMqW[%-(dlQ٪V[i */=݆q?;*.;{E~&9 ?aܾ^΍2U:/"z8*c qX>?Ck9С;?в=F pP!gS*x-搩c}aC"g['Ć _V~C[WބCO=(c,֋k'nAȥ[Gi((mly_]l(b`%ĉ1L۩Pٻbd^e3hbJuwR^+1 ᆃQUAMþL)!i׺cQ]8Z^E&;(U Hj`޸yrO&99Mܳ8LUD+oEyC;ꮊJpL}23tU4X/ K[ 5"(T {T E#T褻ƈ8Ji=u#'-:S{/S+Ln[ސ:Gh:{fm}9=b(- ]J\}v@0~YN഼pkrw4%Rf}e dkgJiӀGזcu4ײ,.xoe!Ig]ۺ|؏o.mn3&|^~܊ʋ!ߊAJ"2Hxo3K3)asNŽj]m ! >ﶈRBrњunʜV0]e7G;SA<8iMm8E~g <&˽|uQWQ{UF/f>hZĈv4q'fY5iÔ!_ЋO"h nB Y8:{4N׳($f=Ab Qԧ-Ea)g@[8Fv=[ygKGyJ ]K*挙Ȓ$XC6>(Q5@OØ&^wIJ,'e;%P@G-oUH [.C aonv6lPJ^cvaMG#T58eyC(B=_6rNbڰ^נ]s`P5R/?"{ҨAX1j Ǟ"ٝ*,1*:%+"gU1`m[us2gJ7).)cF4P3j ,?-"on(H,Q0%0,GpfwCɫOGگޟN*cgnr#G6) AYײfV >ONg=>ck$,X8ƣқF1!{B7zaYTl F8˭K FVĶAwB%f $C,sQ6~KJ<74q&FbYjx8[`hrOmz\A ,qO>T^ gs;͵kO@<o8QxI <ҕڍ?|ةk2L.s񣳣N:fPwkn= `U ]}D.Vhu gRZ ~:).mp0_$vsFq~7c!WчuƂ j"ߘ] Rj&Ds 75t@7Is;  v)r>4qECSDX%.o:C1GKk@4ͮ鲆$[aF|1H)~ZX/EsF~ 1XjeRڮS'hhV*uJZS1= o;0Ր3L)Z ᡃq8 F*YJcy#H5l_ * dsÔnt&X3-=w]9#o /٭y_CC mJ'kX*Ħ1AՋjvrs,kwA SZᎻsS+vC\~fr9eLY>9gjȗiUP>lC,,bR 1 X*ߣ?rC$i< Dݥ\QT#@=eRk*ٯ0^KPT2QCF`R[Fp_A}.lQ$7C'!'8= Sl&Id!(Nڹ+4Q6A5pAµ>W4' .Fr\CPn#{K$8vT8( h*S͚a, %ipc?^UK`z9\Sj>tuvD>AYPnխaN%2+:,]gZNpZ"2RFi^.LNinXi9AZ|Q;[lLɍG㔚(陚9I=/ eѫ/ it;HPb;z%( gfף[ bH7: Xé/kE*'YiHӺ}&ȚD2)J-4s4xTQGPhQsoJr:@=6iU-I>X: U 6@~0uO=c])n{n)ꍋfP 61)G+GVcf#䂈IL9Oэ칩iIl0:L?xu|^n\~йꖀ ؔOڏ驵}p2c`Tpr"@ B̧ ײ0b]7P4ލz`/X8VmOG:mQDi3p@/޾]7pʆD!hm1$,xׅK[zK4ód;kxJc4=l@V-3ɑZڄbz& anB@BĦSzȻ[?cX,8;l)US۔<&!Lh}ccJՙ={Y,k tҹ=K[/wsAR՗^C0S>s1G-A5͑Xnê{|q!:/ӹL0FzϪ$^<;)ReUd&h=6v:v|(N K,5 Hy@=W( ɆiaRAb<vG='Y S*Ö=y&A4N3c$pҾJHEGxlP4@>$vX>0x s7BWXA\bFX(lx~Ek%( =,hvQFQړŠڀ+Cf_yo'??-N_*j&ΰz7+if(eO)?:Oq?<exCG5WJ s3)h/v5|IJF+)\0~ ^^we-їW!~^0ҧJՓY琀NTN?2GB]Ejq+7p~0Lšp52X䞒Bܪ8hJyȴV#p3{t`P.vz@?3TUakPm[HёIJʻ..z;{ƏkkBW_?_u1A K|B ʤ6wS +HH^̏p4#17[:Hŧe!}寱b' %Sx/SƕlNsru= pA߇L,q9A~#;aîyy%`:J%r0`i̞DHG0dzg4ܳv>J)uaQ s훯K MaHD)@p"WcV!7!_ ZDAjIRڜDٿ? $vi!"}&Teל^aM#?[h{k,>e%'KRoaEZ&Xg-]H8#Y-]^A??r[[/^Eڒ`w 4~aE/,8 ;j  n}UVm@9HPpD NوZD3'te  .XmhO qCV>21Дx51Ť)+E}JKmMu4w͢kqMJ~ {ÇDaxܢ/}$JGV=_<1T$a@-;Д2!v:U[cDʍ>b\]aBX#&" D2x\_R)jb^qBBV"S .yWy[?lP7Fƚ5W j.(wTRut5􈝤 3O2gDCV4TF , rN̺)RڦH\De$ !9 !hH^Z*ph hLQ*rdEJL2~B1JbϤ! r!~S9IkNjHK5 ܬJN |?CVjz"]=BM)O_W6h2wV_ھ~v p5=0m8J[x/ĽlAQB4.%mq?A Sɩ!bkV^5{;FCQ$Թ!*EG/ȹ/: ]GkumѵV-R*C0 Ry*lNO2YnzQk.gkS'!_,aJ82s$i.~9q/a7ޗ+;>#Nت6L4+䀪\c|9^AuTRgNāk#f WP-$V7|mxbOIͥMjyo`!gY-wf'okO/ӅC Pd!ڏTfS4♌|BMtrg:FRGfN=4a嬄^xלYlNN: r>n GlQ {_~738䛂 A =p3\q1hN8N80ܸn>+XQde0742 EjDo EuYH&X3UW=s"A# s~ڔ(6VmJ aL.`ă y\!w-BfEo4%6""Sw`/Z7ܡy* -gl@ʦꆇ!p>Ol|e?Vq2 ?b]یrZUp)Md}["t%{Ab\p[(-"!_3)+E 7N0#'Ѣnz>*g"_]sxfG O-)A:~Ц1Cb >=?==cѝ}&{x+]lnebeB{k-UoTݣY8:L+H u%ר+%KS21h;B)K_[LUEɇ¡܃j-OE+zڙ)FVfuyIUR:qVH$~U ?.idtpu~=;nNŽ%mpӋd0%612hfZvJ E @?DpX`T4˿Rh}N}bٴlQ>U\4zTQ BRXW(4`$+v] # >(R쵍d69 G$}IUVH5GIōU ruQ}[gWgXd(?RMC?] MB2Ia,1P_d &H]ҝ"rZ ' Bg>aKڔ̽ʿ],)ӣhjJkd(v?o@k`l'˞dDQ3rV4AKlc^{7z@*2"a@}zBp?,DI7夃{$:פC+جx/DN6Cg{3ń[~ lT 4N6_Bk9o$3jҎ7['#_u-оjt8k6R 7.* XElo|>&}o>V,}o/P1ޥe{ `_5Ä:h_0Wa_$`k*`,WLR}=b+5QɽP+_HUƲ{׹-Kr{u5v|SQC+AĠ:9}!@]@aޯ+H%nnC 8)/g8} ' svcWZO~3 qyffxujt,by>ޭ;pot\G\'1{}Ae4L&*BCI!5֮A[ԩƬbТ_O2D+s,j ٢OTTUň𱻍Nqž'Ҝ:&PJ=/ ߎ" Bz[&8x43JlT_q|0l(t <\ʶ'#ƴo˞ܭCek2ߠ5V6:fmɱ*[FySחRVR/S~;.GGC {[{z[*I0xE p\[Cm$\]v2z }!yUѶeTc@Džg;.83 84EV}x"{VJVJ 力e#bǚ$$lNAJjHUZ1;)it*k 9}cWm|1stY[f\ʮ½(\Ψ_]H^78&B EIN[:{HD]f0u7揁3k=۲y;uG(,' ]b`a ˵ZDE5ɺ\H9v;}olL_ |0m5%Xtl߀;X>U@I.q BN~H'7cM-tFKc: xdQNuXMW]$tpĢz`ud>wAs٧hǥWGj*AnhuI~I1'j־-qP6*$ߠRU\ۚgpx9za<ނbaW,xPh c?4\Fp^WO",Mʗ٦b^uC ;Os3|C]=I/yO&>CZ^ILJ Q'Z¾8scDO6hҎdk_h@g~j]YJHoWホrm$Sa垨cv{ɗ|{URI}j~'ܖRw8STw^-xN`4m-F( f7E(Q6:(|0 5rUTaoKkԆ),Z"h\鬔>Ĕ1u1N=v7`OJD%J\y+n.WXYw>g,˖8C;ZZ ,caa^Ôږ`gjk.Zt4K氕1!:N oi(CD)u& .5f0vLsu uQH =׭NPV'VxW;8i`PAܢ6˟QxoA\r$N-c[}0ȶm}9Uf9g9I:F'{bpv 8n2胥 ߆]9+ySʅ`LupO+9,W7ټÒ\/3q Dw<k7E$2 o[Uȃ FRBe&؀-5y+0јm7tt( 2]/Ǘsu#RCƭP(vt윘ExG[[\*-ovt`3%e/q3f;'{ 0K(; vo;*mBk`㚋ӢT =IChIQWT}#]޳ÀwK+$70XS#OzLF2Q81ir#\PN= ~ 7w+k2dF ղ,L26xbF12|Qq"dU9#HZf3bNVɀ501CDlrήһ=@ {R`@µA^?\6@U mEi9 [̓hFWcxQ^c_B뼖4aP_F$jpMn_%a蟋9Z8 AU7IVw$$-$Ԅұz,P;E@Qאqghc1+3[ӓb-5RW 8`>aWCا j!V FH^(EtƦ[ı>)q;^ِ[A 6-M~O+7˾vxd` C5Л.6 BaÎ AѶ"dfYZη/zi&taW㯰vN*(,Nc : W;_/2V(lA7n _z$(n ALlڐӽWcҖkw*i>q t fLh2+x? JrBSt?/O-MZcA<{7lœ@K/z̰_ 0*1g(Z_$ 5J,CC{_JW8jܞïVk/zJ< Owz.sLɐ HHžg0a ڟCʴFW}J݅)nmγA2B?0T°l‚;I+fꢥk2/ \ krԮTLSp@޵A{g=D$Pk_;*_zgAYAI,vPx< 7GO8ﭠ丮לKJ$t"§+szeT}NJZ;ږ/#\8ڀM`{u>ˋ/ڊY{&3&w8f4uՠΩAr9 [p=Rh1}4).4 \߄6؛8<MpÌ ۯcqcé^ ~ FC '8Ƙ (hw.7rt *9KDjqp^Cx=oQOzP7 K9.3,lOcjgbo0;Z3G@4P7PpG9E䕥r,O.4UdS7O˒({MtS5y]N`y#Q2>lrR 5GNʈ1)_Y; ݃tdo[Cxyq2N-ȴ"Eqa^e0pN{sa~|ưvU3~٣2쮕Yh^M6f{syTP H!^4SSKiY쯴[qCcG)vRiG^<@_SE\n5UP >HCG+?v&I.4ӽKp^ `roT@Q(Y5Z0p*՞SBT&N Ad~- vy:1 g{Erq=hX0A$V3%]UUW ˶0s6$a^c(݀cŒ<8OO<9 :^H&PVƚOG8^of̘ TK%A_v͕+na!h?0NLGnl)b$ GrMt_o3 צ}Ôl9i1 |CPIs L`ϥ'OYSC:DG`zU43l/≟ o=?SNV^t܈d9-e @06o#GlGQ6ӸZ>( p.~+.#WriIP'UM@2GGJ G4bSI[\BcXgsY hr Nj PF&Ht\Vgd`Ps"Q&9P1S͡zyK[p׃(kdT<]YҎdh# S264wfpHJ8e\C‘۽g` ĒRw is~G? \7)7! *-@"2#9)zG\u^t(;<}JE+pkX(Njdz5,J`̏FҮ&/-8I17WiOޠ7ċQ S0u}.ݿ~}v@g&7!O9On }S2YڧV\?j$"4]P2 a1Weɵ-ݹX)Y*\s+d'/`Ɛi2{.Q!>;nؕH?op g,Z+^ *HDmczЇJ̄-h|,&\Mlj3˷%.8 Mq(-($lů؈\nWyen]-5jtqwqt~PJ{)10X*1X6q-Y7X{<0C.WS"B:2@Rؘ^XEAɎ cz{\ӭnjs_trHI]-8+\>+kuY"JPǖx;E*vtP|jκ?v`P9ѧNܯgLk|I^H ]; g<a"G]ORĐ#hq#^?f %{u3uq*X? 01/% iFE-mN)-g9$o[m+zE ហ3M (UiYS6bK?<[~Ҷ?G{*Y:@S02({uQ1jٳRSFd BU},H!0Lϱ[e/׬j,HD;1+E_CC4~q .l2lUC.Ax.tZXTbWS3f%q>KFS^3nj7X̛:_D)rRwQ=1*< R1I4!jMUʯ_S10J8 ? ]qCVYgɨxCoT2T2+<;:jjkA{Zp1~SO+7@ qwW[0s_!|6+MՀdrYx#8xTN&iJv[BDd?)ٷIr\Ay(!WH ϙAJgl@9ʄʰA G4lJ#vz\E^7M=-AHhp*QcnK.>EiolrXċ$@K4tuIK&mXj7 Ӣ3SeRwP5l~t^zsBimnS *G4mBd+\kY˟,qx\BF`vtf>qmE#0) .S}LjiF ES]gz/4xIuGXP*e@n^T W\1O<ӦT>mU֚;my4)E$<%"t0jEQ6kE c(Bηv_wMN=;`tX&-uT>P#1Nuwd }u>Xlo+;^R_0bcApTâ%jH*<`/ZI [0EiI 3x2XKb,xMdžʏLp>r2S+qv]n-Zs"-WGy4%.HԴSEL*{z-jm<'@*S{SWH#P$mJ~D&ao y+f00} |v$5M36K/7﫭>([,TWYHaIkH,x*>W**<o&ގ4~,̐n]fT;IƆT;u)kQH)cZB?TV5ϕ2,d㝕S @Wfȉ77]^gŪ8Uw9!u06iCs ~ů.#Ca6s #_kgsyk ύՀzߠ*<l'Qgo{"0: T`IĮRˁx6gne61EZʂXv_O4p)ec` KÉ*PSt!ƨkp!M-Weyݪ"Wð/×-rst`b쌁g~|hK[CGbR ?XT`02s%XY$Z4Gt@5F1-C5R8𨍸sEۜ>к>t>RGn˷/q0rvO<%΅4Z%ՀVX"4(ƀIٟa$Qݘ2L % ʿRYDjӍ-cCq˂` "Z@u YāieGe '@iPLU14~ L흌J/2՛x"U 7,Pg}YjߟͻT&G[ rƣچ eG7VyGX*0AlN7Sŝ,#iFQHܰy&g,dB8S𽁕H'TIO{~M(cܡ;acms^>%PpFún 逜x3-.UuGlg.ũ |qBEgG>OTZNY[ԁG+tLtoFw+z.*.㈘ (!8k$=I^ƹ_T- mVunD 3\-c# aՓKRrӁ6atSB«UERfT8Ml `0*bwe+oȵa!/)eS+eJE{@T8Э)o ގ,Z"*ʁ"_ٳ^ڏܶ튴 x3i|Ϫ0#dI+>(c1 #(PCk$Lggq\1}6rQD.vڶ!2D=zrj}@=*M?'BmKy2cQUuYqcAaj=ϲkS > 1զ/5wmQi*a6Oǻ nn?<9>]"0r[bDGɏL?!p#(*.*BQ~AX/OC?%n (|ζ^ۏֺ !~%x`R }r L|^09)Be. yʂ w⠧ZL;T"k$# `:&3kvh`k#cu2Ru!˴qYb̐hj(ķRrEv#2wcTm ό mb؝߰?: tLͯ8XyĸqU4[ mgu͜ vl4q×Q*axL|ym6~d/_CFĥ>@2V_h 0(CH@?KXOWy 5(U#zTˋD#\G(7Ϡ+`"ؑ iy5iXx8yq4$ZOªKupE6 frدW=o*N +jna2;( -}&@@+n?\qlq/*4δKmBF Lng +^E=(|H;N9l+"e6@(QQRԌc:Qy{t0Mim=<K$ȗàՐ 7E/'KSPʣE7l'Byk|g:Ye*|K U_C{O>2Vsx7?u,UEvTehB*~DPɒ!s\Q3f5c4,2S;k@D|o+Che-dMg`H7(yxyj21Pޯw0 >; N~S|LDLں_RDPDG~0ƃ%ZK"f9Qz%|qEw|$/070jf nSu:w#2*ܣ$.@01"YΦHǧ U.J$ {>J?Xϱq s3~2pÝ}," E\ `_}gB/lI!c#ЍvF*j칓]pb'ϓij 4gӥफUaz5 46Nx͆pV5i+K \>pdB@!fRjrU=zzkv?ZJk:vjJ3|:a!T$ʭ=ZxvVai_s8w#c=峾/U7<܎gs=}M0lDgMK6(1 4aJ[ ‘ֲ*:+ukx(RUZ ૔>c^JZ>M8D7TYh]Bg %xļgNia:=K܂\TnմtmyaQfăl|:o_y)%\A/v<дfaZJ̨bj^>$ )q.g>Y`]|%zcZ$;3yc>7ډo+xc+UDXx< 9пwPynn!h$4!$ny,5B,nh޳hEqȍE@-=,oNW.}Bcɸ+8k YN_[Xifd$9ѧbyِ XSdp}Eÿs̍Nނßvn:nMd}_\zvf'Ji"a%t0z3pI #hA #_2Q |FIP$`kaq GY}0">]7_f qZJ 0 &@ONy -Me ,sBH#H}/ȁ\nSۿ<-G8ƛ3_.dv;S|˱.gϩ*^nq~(mw|{v6>LsޱFdQҭp W,ǜp9OAI嗭,E:0],ݚOvf~:\UIK^HtPGY(Aq\Dy9#@v84&av0JѻXF g<(*t}H+ɥiĨE!m[g n&J[G®K-ebrG.t%54*럋$ِQW,&aJު?ݣ+)l](oA}iŠyPaz -kRϘ>A#zgcVyYuϝslf 5c!]:CA[4@Ds Yxת\;QJf\ ظz157iRVp9/maVA~Tױ')._uCF$ joa̖Īf,ZU\#U|w"B%sJ,c߮41[ڕ$&E-0t$ÁDӮ-şl$ɒ|Ur:agdž^,U@00; bE*-k,hwx]uBE?'SL!eB 40g HNJKw73h|ҊkIAv>b>3SfRX**kUcyέ;|ny<#j T|O+٧ >p}Ap̓!r/K _ $nI$Bq& BXqYc|>+Q3K'6=0AdƯvz*I/X:%PM5~ޠ訯\ݻcG~!Ґsyr,Py]at߼FoXzd.._gLu*9P$]qLTTwj)d}Y'ü( '|~:s zenS!YlCЊBDz<JiӼI^QTB*`kb3U׈p-ݏ`6kB~R%LO1?h-wi ;l&/KYv D*7,'MZ|_\cWiD|Ioi0#Ѡ?Jls}ZNYB2^.042I꺉ul<{ȧ / f2I'ydUq9-femSek"M[;/RDp/U}⑨|s$/n]Y7\Q[Mg#(+*\ UTv~׼4OD}e4| {*zd0zl NPg+ea _+=.?LYPe_3!Plóc 4V/i?п#]撾<3`~R$r7#&m*0l;~567Ėyk)3[8j@k5%Mwˌ2R[`R| 2)z+!n*YSU-q ӇtoBuc>k97uZj0AC # k1ɮuI놡.(9>~K/%w cuݗ_}Ʉ;#A-5v?mFQ*@@Y̞\۶ʛN2}w*sjEOp/ ][Ic 3|<6g= @O9*7.d \I{ e4R `+?ߢDKsr02Q1 IF5a^v!bh<۳ңY_I,f1JHղomlc!#u .rg|a9L";rT&:b]>G[Ǜf)V\o 6AV[Ԏ~{dLRÂ9g\5L ):1z HP:=! &j$bȀ7qۮmivC9+vI]"{X= hKj޴_ĒqCRΕU 44k%)OyK3S 翘!0VFú%i>gDO<mG^¬wtwh(, %D{7k$5O%F3 &̽ߛ9A^q3U4\!eÀ/$&5 o#}(FBOW/>nZˉ`c|4A57-}4mw|xni |r5엇Zji~4jI]r8-{6WE3#is{T[? D)1(SCs Ҁ,]gHrZy&up&3GT]`TfCTTS.&f~qdvN7o%& %GNPT -ȣW)E@4&!(i`GPIB60_#yM?L6$+oiN//\4 e)2lhDh$3XSCשClTi t>FўZbD%SI^ eWo1x$qU6blYW!Nj at&WsE͞\⓿'ZGTyS=5D27 N#bϋ`j^FF%EOR?{pRXx/ӥ}ۚ, %b-at`0y$R棙6%$ƌLa[==ܻ[Su1Y)6ly6#k|M令5E<+sh h(7q¿mh+W}}Vh ꓥ(btԉWqƍ7چ_ƃ_Hy=Aȿ GJѝD2)@@^0544.9kj~-$8M0mpyXt/0,:t739lK:'"*=f_42zTLxv2˦^Tw%nZ?m7.*}E@r -!5 WF|3mz27!*χtE͌UUZ}*l2%1d?c6 2x49 7w硺`T * ^' PLg5 +!!ҞɟvyXin3u$M_PȄzfʆRZukjff3e=!Ϲ8T;OB>d3\F3؉5Cdd5pJF06R{󖞋MNj4x?O&tg= -smʹĢ?aЌ]%29 5o_rHPTG Rntd~[Y 9](R8&飫|8yJjwe *t$c:'k;%Vp{=*!#wNž {u}EՀ|G#wQn/ՄQ)*Uzx; mKsh˚`u_7|m;͌6([G&aP̈,GK&@g>kQm,}gN #lkQɨ)vy1c!!}sMdU Cb†'(JgE _ De$/cw!*n?$F=쿄,t ʿЅ)MXpŵ@2fw SMOZ-Ě I_cÆA O/dCZeOQ<8I -[0 ~۸TB&}ɧ l5ꛭ0xE@vXtSy w_eEM.!"|zÁB֗Scvl$7D Vl/Ku.Hnn&0|sḶ,v=؇=,>\n\ ܳgkg%'adRoњ83{X(yOa m^#-ѓסU֍* TSʹaxI7-=tHֽ$wh֣m'@[[C'`̃WY]tKafN0"YJ6[<%rhhZV&/3ŮLQOq1ta_?FCV)itSkDV@1VSkeS]_f#&<}+bUQG&9T55RL괆DVSD^yR rcEyI>6ݙج<4YL˳{q9Y}n~ Mi#J,;@mөR=%n-ˣ0Iޜ)|b 'xsQKHB MGF턱D?hu(m8آhxL hDi"”ۯ^k[YuE*̚K,VCN7hwVG&vs]$7 ; zhړPx *>I_Fayۺ{g)    w@b9:XVR,ےaDtMEB'j,YdPH\Xvx.5BK# î?8vїBԾ0]|U >Zh69F{8x+ye@k)Lg wo#-bk-QT.x*s fֲdXQ@́-70.,JJ4WZSj2Ža1=,eUiDתR'Iח(s1 #Xۂ_W}zuq =+I5SYK(^8iAʀ]b{a>Fa!J-/Mk:g(xn#ܭY'J <muׄg Z7#zggè;͉_zzͤM;- " 8;,*8f7GlĐ+o#k,4 vͫ gLc#@en46uV!6"x$g5rс;E^I$t*Oiаje@ bM9&O,̳dGjX?gPqp"+y]w95N16/eK=0Wٌ-N?&^<ϊ\[8UjY^N8Ĉe!떤yW("tFj>Y sjI@={;]$)QTH2$ V:^JhSR>)+xc:)}AeheZg֜.Д"ќ9/Qyɞ?iv<nJX? ֱdKȷrYО7ejIU)ŀk3vsxû!$q7bSk-Q??֫3P(Id΍R+S:sbtE~%3*Ywr[np>":7ۿ02PE*FcHG+APEactB`ͽX4vZpղea4^t>cLf#qi$ P]G#4,u} "H64i btj6/CҥsW>3|_"ddDcӠlM"mPp][MZ,YaEd7ؿ阁bBj'hve*۠yr~1Awry;UnlL K\@s#}T0bJjzDwEݯgWe.'c-mj2yu] YciV 8j_C5b8xw`H-4F :CSÇQX!9'oLQ LQrR:xlU!ba*U lԿyRcsƬZؚ4go^b;#}42$d7e)-|uq4y_Юt=Nemd9o9_sV(y¶{\@nMIjw,/IXj'+ ER{[Љ2/(?)&L(%$=*|d8j[ `9lVaJJJ䵱%KS\ѕheik.0rN7w!Ѝ&dȃ:KP|g} :ɖιėN =|{-!`c3fKϋipѤg*coi;=M@o00xZIG艕~('o H &pzߞ+`*E?CEF5+bf]#儂Y`0hP*D9Rc-oXrg!Z9h9&C) >-HORN,1/6jŏeag7rzQ >vqMH&tdꊟ IEj^:&&F<A-YrmFinD>`94k96|de>f&ϵJZ=$'ş?_+*#9Hd /ޜN;- tn۽Ocn0ȧЁ9Iߗ*dEM!OVoux2ОS2%F:JRu5 =j g`ǨTJVNW$uѮ,V !g=\r4GH)Sc~n4=1zCkPʉ;׻z1C!]uO#=JZ7 [I6{X"߰IQ Uӈ˟bY!"r 8Ro9_#Q:Ҏ24 ]1*U #:|GMnw[ L`1S V04b(nRs#sƀA*n7SN$7hE#biA==.,mξYi@VuDrX.&M0|HÓ "+SlZ"f#D&9'} .!u|`" kNBmnCnX{>fxFi1v]';2\B{g'q5g]+hAJ2w:c.%ϖ!œ*|+=`硡B9bXhoV:X' ]څhS[\QymNΨg+e=EۦThh/tJ+|Hd hZQ8)ΫVdWfOBq b|#[ 2Yoľ$ [bZ<(Ms  YEm9YqC_f -14:_cl'BbIMĵ FO^u $eo`'̈%FyitsL}jAYͪѣ I=\$ۍޙ)՘3cµttl4 2p7CHB(@6FީM I w{RƁjp_I\MD|TBb5 q\Ihg0"9xFnDm'Gr@z:ߐ,ȤÐ8G *E{UX5o\x[)6 #bE5CYU'8@l~S5p?MD/M+B&d%qPx}d yY=f@2AjKm [ &K@l@H]| b ªJ4'{Ŋ)~kٹMs` QS:{M1^ ɉB_z(#S|8NA-sY׸amrX_Mh-Ht\U!trz2H.jjAW~@&ӺѬa|BN(0)H&-WKLpxݤ\iL̇iYWYW\8 g8}}@O?3nAΪR޺ ?@%u9ٓRŬF? `7'|%!U"q]դ=ESrc/qTzn P.U15Ys9zc^eJ(w\KC xP ZSx E/kW{"-b^x-=4cu>SC8^09tX;?u}*L(ނELGU2{P?rt @{񪾥T%(.$#nm ce8W>iR]X\v"H+LfpB.9tQԕ0Tzc ?Gμƕ<: *#t&\PCn~эڻ=es1ds{&ng/]/~ qy^wiu,E"+1ߔ@y8j~k 膻1 iAExQWyWdԁP/!Bg='1 [ØNBŸ+%]OVdmv6p-fouSnz=:W\[1WYz,5x =(T,j=Qg^EpUCB//<0wYm#Ӏjo>1CήNOtt+u A7zU{s^zU:[=ȼlH|jl6P"bllF*KL3%&{ el`GM wu47P㭁f{0H(^+><.=oX^bV"O6[sp7)YOa7@r>(_ +os>AEG)]zx/ /l'@\ad4X慁X<` փn<(>6i6Tgm'5`o'F>0?7K䗘lȴ\rdj ))h!Zcٳ7(Ӏl/Jo7`>Փd u@>bq{QE5vTrV EAGpI$H&tz05$6㷌qa;Y {ȭzum3 q6'gsp @ 8B;G~rx.2Zis }UwCh|pG? ks9u`U'ުcaIT5\SGNo Ub $dչ"I*ެ] T>]WIG8b9BۃWţ|. 3r[ W=B^:+)S\ /ڷD޳t彍㇋I$z<Xl{RE-1;+qZ+I:S^]\ mMCPArPn@WK"L*x斨۪t <|y4W 5 :pbۓŸmaÃʭR-;mJ[pׁb.%W=0qqO &\(RA-| 謗 ɭ"N~e VjxH/" Sy .}C8dDsW6Q!De1yoQ5p#(zkHRҕEQvYpdUs q%7!-DgiCe]ɴ׍@ ]"@DNoޞ0ul 6ʞ]A}ױ9'V(YwkކQ HC*\îfRmd0;NXhV8#u__=JL M`T={?)U@ff)n~O}}N-7S̩Չ[PRx67K1ld8&ze߁3AgB Kz<FQ PM2&|~֞gO?N5-9?\Gg'YHH}$o,ݬ!MF yr%ک |[{%($Y's|t%Q 6ۥvpx#gQ}Å7~鑅v]&\1?1.`\e x󩀢nnO)9Y(e:~x^)K}ψԚ֮䠑 *ݮt7d ە@:Ƹ-ta >.w !v(8"Z',C=]|h}D5K"<x,%;qV ΋dw+0L[8y!g B:xӯޛe\@{2l7iZ VMUX3qqUPf5b8_Rv`;`'F::0"͛bm{][古 v&6Ge}# lЄ/Ař[y s\BY-z1ujDn5ϰeM'\X4- DHO{i>$@#i DdblL!iXẁ[3F+,%1 "U5G;2s_"S={vfYЮ>-V =BKxMv>?(g]~nDiƢK"g"DWfl,dz32*=b B%K[)12=mu >Ns՟$8LaٌEL$\br6߇@K{JpjdX+SeR }Bzj$eN,~'?)rZC*@ض*Se Ee;/jb=]:-T`+S(*ףYEԭAR?1F* tJR_'K~ f.-'bA[pnYh{x$0nQ!ļG4e[~?V~^з-Eazh3E1bMwXt{+WGBOl. }&h{\~Unm 4Ca׺U{WѨ3¶nVjc*Y\eRoNł6$4>L ':ç{Ds>yN^ETsg5̔`bZQ,6Stx:#>}wn:&}ޯZxl09nvB~5mYik·?d,xwP.bG @<O;dީ{z!۝ IދSryyNj$ZJsw FsQ5Iþ8=C8R+VC w+<UKp-tϠSԔSn(cs>4a`.d\IA3Aag\=Eq5}f+\ԊZL~")Kl6HvA3t5v/[L}4\e7PP;9ʙ&c~?]u1srxtXX, $<ۉo?f%R?ؔ# QvSYh"tLp3 EkV.8V9pYK5S7lNA vi}t^@ug # AQvc6W1ӎ0Vڗ)eGA@,\z6g&x(c^SqPjw%=mJ|IB6&icw{W pJ฻wKBI^/LJD=(x~F|>#ﺑ_ .-3(~qb : {6*$S/L~6o8oow[%|GQqD."Tu†*xUgB1 0n"E6m=o " *^Q4C&]F7-u$Q]ʫQ1ʙj2`EnWW*1ۘx~zG_o_a G*/1¡f&ܒpK\+Hذ`٭1 B0Dž~ANŅL IvgkK9u F8w/R8A~DW~'KXc0Ag$K ]"n|> g^\@(αܜnYR!Vqmos?)M8EP6S.s%>,V3b;K/ :Z:ecjc'VX$u{;&n*?;|dJKҍ5pR۸ #+)DSή}p&Сx=J3u[l(B0;>SB#uED=Ba;нm2̴,GWʁZD/NyLǟwBMu"6ϴ䋘X{s25]ܥ7;2 K+؋CXl/t})6k$yǁW^'[!V-!Gwt{E(4xә|k3.J:9[` d Y"8RpFfn[s^uPR'dh[H=Ge;_:Yf(PmyÞF]8imys1ꏑU 2 m4=TԌi,LCpNܴ\S(Mm@^BZs@q$<v5Sb,a8Nj}G+ UM/P]w4yU8zboBfI(i dmQٹ'42īKZe >H+~"F@=D!fӚlwy|hɺY;N9LyU"vǥAw{%P8ƕ{ tPx sst5x nnS_X=% mٯef5 f\ Q:f\žNAY.wlΕͫ7vBO$#$0kϜJi^lJ*hY 4=*vn}P*#x0KM׊`X.uN6o :SʝL8őZs5|CЎq3'$ڋ BtѰAG0weK 6D* Yoouˠ6Q^ށPͥ^^'T$G3oljbC2o27=B|&)Og)Ͱ' v%vAnANsQ.9a)Jɱ ļ >eʈ>S6M$W K^: 47 cpmF& %K[B6HUVת< 7yIԏ~_:lG.15nʣh~'*֫H*c("hGu4 R ҼIIo ]!8cj^= k%Kгpٶ\rwLR 6n-fj S vjA{N֠7AE3AP h\`qVv-Yɹ(tX΍,Re%t #N<_];rK%js|Xynvx<{16XDz-͚Sۣ{^_ A|&[;$rImotuX;旁$!by5x]Hw?d2p3WIv`:()IȢ_82In!F<²Fa `b,>J:ŦjGpcDg[@o S2],HϮB#^_,HLeA|MY))j0aP<դ,k^nP+ՠG߃GෲN_㗹68Q횟SG]7O3F9D#nVDL=P`ן5==xY<&Q2`Dc,I/JjRF9hhd7 Du. P9[/KצSQ MVLŃ]+$Ii߉Ox+~q\9l;¥.UK9(tڡEM]U1=Ty3:8c[yoo|0PĎTԓ!om\b,{ٞg8T$-ʴ*YI`1vcu>t Ĵk1Ϡ"De)jIS@cg<@i 傽ɖ4u$W>4zyGh7w+Kfq8~$vv(Aܒ^xpN•1EVl1Fb1hr 5HR_AH墳8m*mVYwMJ"Q}/K,I[!^S琲y,TY@/&1lh鍲,;yD _2sWFO\Yӷ {~'z-$ib))r++5; ;163wID&_83]$~El\,lm+YO{:{I?DVDMg:w33]؞zh6Cd*إmyCQzcx=5ЏOmRa)mO?D9HA[]+Gj<6 SIn!gƪ vg̭Mּ:]r#?2L<yfq|uv @ ϵXOܜ0r?b8l]ǥdYme~2 Jp.+S岡 ]!ͧC"5JZfπ'ex}6>so-׬T-$N "f"c$ K͐ 4b%잺gHAۊG1:nA(ܵ6Cwc j y5R9& Td?~b S&0t)Ru(Qnyk5e_P2 b~%cnt7-*&ː}Bx ж 7 DրB5@ha aiAO J Lu{)}TUƼȂӮ>ΚP E]'VƩ9B[f0  `a9ƤkSd/=, "bJǾ|Q/P]uCulz'QpFp|=~e N(ȵe 5קafs$6c en2b&Mj.w>~g c:Ǘr׳A[nx|e|pΖS"U@VjcҲQ`}La#Ք϶ vp3g g{-Iz|B"Xy[UJ`2d)Lm/ +0[ F!閾`"qcLikD׉>乷j6=~Jͯ}t h5k;Fҿuje NzU#AV9E%v*n¸y_:uRA?G8H)s{Uh5vB?hp{0[Yf>B\,Dg2y "̈́q| o2a PHs"TeMb [ |dZ.תQ-0R?-(zN6y,Rj9"9|}RԝB>i}̜`z"GeNU}MSĜ4w\9Zl 5lSme;I1ن~5#b$¸8M) yO[av ֐hbRט(xRE :Ҥ>K)Ț$[S 8/ \S3+;y٥ߴ'P]l1_XGH='Dw` ->l+Vl\SEk?rRv p*Sz1tH.f_I#ܟvq*tӨMdzmŒ c jKaU#%(7Ϙ cx# 8bmr;#6PU70K$p<^*DYIe`3E{_0un sR ㈅n]7ҎƱM|*ZDz[>4>ⲃQ?R'fR`nɔ&-;Dg_pB:eD*t縒+ QeeF2-[ [mGp.ۮ)rui#1N; -~j+a$z*Nە9MRCY1c.8]PFxJϐzTeNr<.p}@j6Ș-\#S|| }0:1vNӜuABQJ*vӰ1x=G: ! 8S΍=(-kSƛIoҢHs ue|ڰ㙸eSCUu ACE f4A0%wsI<^ޝ4-i lƋ#)4Wqs!B}Ѐ C'9ߟ>ӥ*HUb2 A&0Xo<".v$HayWeQUؕHMUw WZI Q~_l?(z_ZnjĚdhz v\#.gJi(V{OPYJV}A "UvF'>9kL16c4y@W75zjZQ3_vfSg(( &Fpv\mZ؅Y= 3țlIS#D 'jT~+'Ya pAZs?Z%}uSQ> `#$`}*S(pr:Liӭ5+6C#M`Q Ƞgw\1}U,6uIyEuiᕹ$A[ݬD5I zڟ)l5gOKEljȾbCҤ&@6dC#6hԯA=?Pμ@:I:ؼ 2ޓ8SWfFEQ@k֛}{xD2h?+kpyg ?WO4!cCE$ B  Lj q n:R2wrLYkbH,^{mvH R*gɿbG#Q#},9fb|%m?#H .tHkuea`oQu*4q,0} CqEPcIFLT4#ڳ~9%=3 !$@e]Vn! !~\<2ԝ˿`0Ш))>i""@EHbՠ]vյiZ Ρ4cFz3dFbe܂oאbYT(PX/$ZbQNMW$&)"ƝEpXR:냒t}1aЊFJ!Y;)wE-!/.6kDg Zo?ZG0-0(NhW-0yEGvNAzqg}1%Oj;[aPj$M gMk ߊH&AX8r00=O~ZO]PP{x ,j RK֖=s?|mk*L4;񉰪#EfeyڇxG_*F-xj)%N\,Ok ) zcHw(ߑYa7F)ѩow@$!]WR-?弇u1D=YL8b1Hp_#2]ή+nEt8CP;=|e:\X׹|f.+yNI~ v/>Z)o-!z_՞Iȷ&y"#1BWZgX8̏ɰDl #i @'2 N*fp hv9vfrl 9P؄^5oU29S8.S;zVqGذJ̯S* J;$k0$GG:Y/!u@ Z}#q-T*RW39GDL#M6*Q(hmԕ9{ŐKrl\hg` ;t#0X*A"m}p?f #-.ZYH_7a[q!ds((7Ӥ|}'>츢ϼyz'`5q f Nuqh2"L:(VKs 11_cfFIH+y;e4!Sxad2D{FU$9X4a̿QܝvLj{ ,z LJ>/I$3'&T卓Գ]ì'邲_DjtR1E%S'!Z x]c`g1ts]N |ȶF]#BdӀX lۤ-آ u)PV rvo!gǒȦ|=PlbS}`KVR+FsbĪ>nDXg&H7Zp>;x-DMԡT1uo1Np2sC+%`>rCPFq5e$b 4aЃsRY90!Çm;>um4\x-'poRBjG`/MH,%j^ 49f3` z:͑ b/{Wcr108hEWv*A9<3Z =J~]G7 X$_>~m"/6jZ\@mw&5s 6UtD~zJDyx֏%a241 %ZC7i 'd_(s|E>bnlg.e@jC3qT%:ckW 9Y}L\Ug)}d th(Է#ǒ٭[ rT/zg T=Z`օ1!LBU-Cgၒ˫4-ry:olArx1g"PByărRɅm+kI7?l-L@SȋkGw)>O,iɩⓆt Kbe1ȹ=O$J {m3Rov& v+DD eܷ~3qZv!^*6)C䂍!bt5{#q־~n"ϛhY:O ZKqqQl`O ?qnn1cow+S% oAtgjEx7u hfG=c~;m愍&We6"czЗbB\oLa,Q 7uwe @ϐegZ?S\.d\-FiIJ#1zJ2zviiW>!hc OF ̕ z7 O6]7* k9MㇴÇ9*9.3ūcEV4'!g@mnv-.v )8|xzjz2dx335D陶`œcܙ`ɏ!8U*=F<߼`Yn_@҅0j?ى6ZEWb(;:gzbb. "JdNvb 鐪;_#}hPF 4vſ㏂o}υ׋gZ`KM=RKT$9I~K.?m߼0sh:e۩褪 tօil{Jmh&!jKl#vsNI |TyU3n,Bzm>}-o"oO==0 ,}0] -MHfE*b\ ڿC>yl)^CaN9,gq"L¯vdM_'ShրޫL|m0dIDza)L%j\ q)!2cg9bGG-_&dss(| JuXx)_KcM|"YnF;6ѿG0l$_} -`V!(@H&ƈٯ]GR)>{" z k8=uP(j2t8]^m>ek6ĹGlޚw@ }($E&k;vn '!X> iYo,Sg[آC4o谢=1( Hy hRHa;wzAG zJ3mNW AuE[T߄ &Ui@2ȩ`6Jit*}7l/C=ee =QNBIeO(eU? +UnAxQMnmOSwޅXdϖ6AVrO">22 'GHϏC@cj/vu߹,vg~sȈﰲ[]8M(Q>7fҔEZ_>`M⮁d䵖{S(ӔLA*zqI', oEz3qrxqF-\¯I]xEI̖3,|!kO4c4!=WmHvLW-DDA搧}''mQ*~@>%zj#}]a>"x\X85浃C.FA\.+H]ăH& ")4>&(04"kk(3vT81X4^%_uC36HDCOȂu{e>SnϺw3%UT-98z([S>C6́ᄐ-V4Ãce=^r2W'h`„e!D ս*APx`A՟,ADG?ʬfd  Mx>ںMIڝbĨK Ԡ{j\ uZHi'&f 94mw *-7J,2\1޸%!:P-.Ģiy9&:e'kN zz;]rVT" 9n. *3\q2yVk75T֝'n1"_f5mzs[8RHIE)SZc}KM ypB)cMW3p<-Z9?6 "aeuu4ޣffXϯ p4ImɽQV wrҭ^IrVo-aTGh}ie1n@׎C4k0+>Hj?vf~=3-@oI8]L2R)u;- |}< 2DFp [V0<"CEW:+t.¡[-zăRxi"&S:-$k2iSRT#pk7)U2-Pt 9ROv L/=L*#=QXz.́$saw%޿HK9 |#1K:";ф,?nJD/&υ7R|hUXiBK(VF{{e^(wN:Hl !E_tLEmq3v ?snDoi X*N!¼EW~?ⱾE|.r0dqftRPF#]ba]vͮnw籲)%yd4l+$ W"l,?CpzX_V bղݜ)fMZMv/ki#ڣצoir[*A|hhB|5Ɔ}s:dv[! qzh[ls'G` Z,b'oo|YKg3- JC;&@ 7k=i'b8 krϪUJ}cQ=ImDc8R&?(iMgNA-Z,q }rtgP1솈XNZ55C[X poήYJX1= 2IǤEqany 97wOf*7~RL*5: J;Oџ>׹z$M 4:{߉o, 0=w7-=s'J֒,%=xc~NvV@_ XvӵVw/9 `1^~Jp_5%2`]n_JW`tz㺁- I@)H#.bMcldC eB3-"kTrDrHH#> vy92<"1_%%ch<8ĭhٛ[r2Ĺ*X\lH HTt q`qlInFuQ_$2~E(qñ@=yDRF]U5pؘ%YZ9 w#ֵ`gEsx|3+N8vB pYΜ^9)~& N 槾ʪmUK$p}2;wb6^P}O M"\-:_No-=}˔N-5yj;_n7}{Cշ7ЇgEF$Xw6 .u$%"wfzO4Ij[m_OfN"DAWu,5!GO' od d`C[,܂QO.ע^qf7)`frPR CL޼6d=ɒ/t%⠦[@&Ŷ5%@96[O=bfg<:?[SȈr N9Z-ɨvҞ]fd;ĨmAP#[IL)rQ"0!U5 ȾbBR$;Tknh>]j/uϊTk_2Bjͬ'57yEXnGUYk(w&;C*xtş\teD+m`o5@{dJfhaRpˮ$(Th|Db/lPMYjg rkT"xstKPh M$@%pG?("ɹ%H5)|ak7WQro"rP\7#upOS =[EKe Qbgq@Kt ac$faݜ\iUTx0Ua5A䞳n}B@n(ޥC(1ք+hRf6L(-.NΛȹ<_:0 㶙!}/C}S-kN})y@m\ykR,!DBלV;rD~ ,jx!M,(oO ٭yNx4xzHM[ZP)™;lYv.鞼=ߔ8qSoIDl FpԞ/W7' WK?_yȱ$8wIg^dAV!$HB~Бog3zRw4 )#F ip()Păʒ ЌpKg9,嬞%Af*[y^t9qu-RXNm+"o͉d!?b qbD$"tZe5Cqcfz'=kDd JNAB|::J(7 MV1, [x0v#>oyA;酈WZ3#{ǯ=O,'ͨ_LvT (Bh*D!9-^b=T HK :Jӳ"cl(>D`F.!v) _91U؇9ސa"+1(F=a41¡Z>%Hd*9ЂyNe"G.=9dJ`i3[ 7*A.2]ʣݤaF|!q5X^`ټ~ ~ CJ(g|v3єu}l<9Hn(ip4DYN;짃*tV\xPM'GGĜbzO}'/ wv2ˮhYJlSl 48ꁐ}. )1y@Q!Eڠ{</FzPhkdi< \WU~i (8~KΕ˓F QDk/c =c6pf{.91ct%)`1,i#嫛pgk^$ݎX4@ؽ;nnpƳ9d/H4{eٌ3DQ uǶQlVKFLaL%8),c|2Tf)e(׀y,TmGCиgeTd ʘh>׸;cz.j6ܤM:禕=C@Y}g+(lٯWMm7Up7Mcp0t UqU'?!Im*dKu0~MgGr N=.Iiv5+r4[*hŸP|quA2p~n&Tg]ֳXqy_չfج8ˋOa:mXLH,㲃`NsH o-@Tv\3:F%?օ/ð0{RrE{ Yԥٗ# -г:fP=(33}݄y@`;N//| cnAMJE c{CadW~2NQ3he,gYXeG~t9*f^w_=,v192t[e^*# {RM2A{2.E. ?( otE +oe4o=nO?ŶOjqhILf+/J}q/ O8^."%3@ωtIe@,"ް]So ^kI_'0KxH#\ۮlC]`ȑ5xQYEB~4ѪL ࣼ^3_@b;jywrD4[!{P-sFt=m ኛ/wqԭ}hAcYň;{9\EWmz;MڴBA*'LXZ 3z֕(6Bֻ=@eL*26"8U@b6p&Boq)p2n7֤f:N[Kk8L,%"E5>*ɑU/ywvCщ g8x3DHrxs BI'IPCl%WXŽ5Ix 96Lqw6s^vˁsC]Y֕h%./9*ǀmɒ8! 0e·C1?[QbqE蹥(}.㝁BQ MdgI)/O$΋Yjbz}S>FkSEBS)˭Š&I杩ugbSltѐMiPbX%0AEX tUJ|Ft?jaHޘiLj7dnM˼?>Hbsq{MOrv[$4r֖Cj]ZCH(aW5\=X=A-ѫu J&| )P,{XT\] O{`nkgy}% ' s[Dˮq񙏝ASSp~5xooDM {} < :a$݋g`$SNOR90e\fE/Q,b'mhW!ܨ˚Ϋx2?[?Ab >[ *1RJ'#Zb=xEk͞ S|@\9äʬp C;*<\L+$+$[’2|ui SġUT6TID>%{@5;sNHD[au䐖 M9vdGw屹8aJU&o7>]xx3b@ObT %e :ҞHw^;S-cB;'C8)Tm7D)r8`w /*8W&<;j{)7]tc7& `m4|^=]wL7j+#ҾSPmi#w1&.;ܦ1(Z#Z'#ԡ9=wJ.S0?0\S蒡 \ sL8KPNT8Izyj E+Eb*]/mEМ61ρ^M=sW@kWAM8v,u2jeMe;0 \[F@(8\Ye7Fz욫XA+ٙXAx@ ?n DT-?7>C_l+ vQu6M:|q,l vT<\dX]Pط y~TKhقGXPK-%;b߂.Jɭsoe0(Re?} 둙T}GIx7+ZL?V:w2F լ"qէj@ Fj4aU, %TL|u5v7RH^Fb(f*~|wn&_ԕ*(*hܛdaT5~&i `:I"Aбr^173s"zN c;0!mep.V:Q@( ?(cohF>@"L#!}<c Ӱ{l|u'6"} fCBO L[8{W5<-7K)/(>ڜڼTfq9Çb3n\euZ/=G|!lW$CcȘ9%%qHhI5 N`ڢm]@RWÍ* yS uY^9p3r Tww`1C}r?ߖÐ[bw%y& %U CpOR <),笸ޛiyHPw^XQy. ^X} c@zt r{4sUA Dr>c4P?驳2hp!9D/H&6ʝ[–A\:eD Q#K#EH/D΄L t?߅> fKoܤ8E;a.tFp{P?T@{Pq'&i#U0m/ze`LOB.yzv[Sٝ~'oWw'( c@h~L *BRe;ow#=kag EىS_=h4KJ߈-7<2u{%DJx?zo_U3SEpo**—z._S:NXw@a '@ !##q7qD\TQ̣Coq}Bsa}b BX#g3/ڳ{|nM," ޗՀύӕ9'3HC"YjE'*u}* iXֆO~6xDi#ҡH2Lxګ X6[$&IG'fřL>V?7 8Rkmٯ0CO0@i\ ᯯPj-RT (,A<7Z6.MgJX5eOVrʀ#/RHA C* 8?c#9HO! bMP4ks\}gڳ]w`S~+߯i.Kd V"KH G,;U[%ԝߏ{s'1^ LS\:V bK+gb\( 0!Wq1]$@a`Y wEҲ]-`sAi?m`&^gR|Y6oiLreq*'I ]ZY|Va\93,̹:yo i W65OӋ]yzgD?:|KG8 Rh@W)ܷ6,jY}(g B TƊs/ dA1<.oϙIt=e֕6n&h tNQ|C35KsΪ/,KȊI{|o+ۻx YYldX!LE6d)A^!kq4:v4WL;I{7&^AdR>9,dׯ~<;( j֗pPn*>{#B?ez\\S yX|%{sPKSd1CW7ǐnbmIL_i`RJ44"P;t4qLpHHӑ[)Czs#a<Iy\Vf  *~ҒPL-DC3+xeqlܙV8&~RAfȜ~pν{l+-!~!EI*1R I8)"~z $6TYӀlYxp B ui2g%mhT 6%*A8)mPIm {U (*'>'ʹYѢ*,W[ڧf6,v0 w:;# |BاR V(LmIWEHms!"͇s' { dBTZ apÓ|w*#,aAL-/ ynV)I9fhyT-'_ӗlɨ1TON4~2ǚu+JNwe8ø(,'~s^ Hd.O5oǷ1|4nj?>zcqgV 8kD msD`R2VبFQd _ k8RVl. f=EjFQ矅7<)f!a|i}?ve$[:Ul{̈́FB(4}ԁ=Sh =y~V"[_`fO"t¼ a7Zv4En~ө:iu,2NeRhsaxft^Ok#d˦R֜p+BfE[)$9h`Y)]qG܏禢0%WuTFc\t}tO$T,e><-:7cw=7pkD7|CD ]ɉU!dm/'FǾ"0X_k~$Olz\^n{ FY޿c J2&_*Lb6G谖P&ߏ2-B`$?mak1y{3aDfM$ (JMTMe bOЙr#zԑ)XLrP<>"o)Epq 1V G_~ȝر'n)Xj0\vɩ#@.Q@BYt#ѬX:N+d?~/#WO#3`SwL*ef poʎl"\oH TfY& [k]l0vcbUHhGFWPj*eO{5<)-SdZ腄tLg.HPɋmg oWOvEl 9 B,eSM0n刺wbng=`Ꮜa:WZ Sv}Q Ƚ׿D`jh&)Dfu_ f %6pݛcm/cuxR&P25Wԧ"wJ,ʰ^pԨwytGEyGf= )j_}Q&Sζn[PqHPQ=RR,LhHW}#bfSu*̚$m~LK `aJFXXrXJPS(2Y׃EԋF"0Q8THaBwy  wjE:mHeb%,XH KY(EaМ]ΨBB&UX_߃-Pg= . C(YbI&;ǿ@0pNj762d-N)q)kPP7}t.MKcUc T Rs_Ǻngd,b$'VKo 2鏒wз}mNHq% yO5^UuBFt'mYO鳳? X}{hkur=0jŷsS[BqofBY2Q&F6<&3 l ט~} msZwݫ'Di P/[t5Cl)!՝s(V.ɛ f6i^Z}MP0hy\GNr AyLq&zD։ !xW,' JS/޼a2۹I>-i[>􋒧`?qF8uƃ(KwNtQ)9ZmMզvDZ%W_lQ4U6\oYs[GO JlAC_`G~ӂQ0+,6Mj!)r4;ŵd7LO#:3.ȃИ<pf}<%ܔw|3&}^P1ŶRKO^-W`N̛_E}fJ ԁYo}dkS(vM &qjV=pX 9a-q)zg:~ c7fN60~dFy)8.4gZpTW] Xȝ>paWb15ȋh?)ɤq^Ə?5|dx#Ikf_$ī.J])ϵ&g߂k_s4'nR2"=Z;XdAN\ 9ܛC 978ofLf֟#?U'd~ a{C>]== ?䔚NJ;8.ۘ iqRS:+ R:].bb?dߎ-,*rXG\Y?|5d4}D="TB]33z;Ra@:#1p=9'#:VB 2,/;䉆AS *DK dg4F豬U2L $q;!C`mLqqnl+L,*zgU%T7&6فAHJEJ!|kl:W,S!T^vN뵤͇} @ YD!zp҃R e?u,eUư2؟Yk;#u6qno3YɂO#6b%t ?Aa@Y!i@zkEmn,UN6iM @jrɪ6ԡ'3X }9KaMtax. -Xew;L%ڽJ@xPն \G\ >pVN^wj]}DJIiy!Y M*s&SlmV0WP-m]P$tjYa2D^2$~O.1xХH.`9j )oIl*{dz 5"<*zvlXz!*!:{wI[zF0eO^eÅɼ^WoTDȢ7r~*\m}-8wa+tGd㮛=HdnFw azY\u]g[<λ<.#R6kGȶJtF`oL8MCm7M&VDQcT_%j ȊQ>@\ ӣ@ W-r)%Hpo k 4tXvQTv YFlL~UoE8p>v4@ *"#/ĕX}9ƟtKtg6.Û%&P)adVr$Tcnļ$^hϝۤoU=W 7v[ɧ(җvxrЌJ`‚U/-@ݞ<βլ;Ϥr*2(?ͬ԰Pۡ!=4d/ ЪXmhZm=#Ob>4LF% E}`i믺n0Y6y#&ZdQ9wZG'+͇(ϊH+?ўMYKJ: ?]>ֆ3~9L}sAv~G ciOà>+)U߫B{6q(+{L8IN@M$96]։᣻qK٦qzL(%uNI| m$j jÊFVqIB=|"d)@0gB!~f@&rRΉzwfq):ch{ߐ_ %ŞFHD{@NbpTJ0)=hQHL~KɆKr;5 zB5_ erGTP/xk-';Xt MTWݡSls!hzf"b / Nfȡ]OM3o2Pe7x FᮧE#"czI'4Ub;.MAX&+2C*EK!Du1]"k;d4YH )_ \M4ob9ND; yUԗź3nǨaF^Ռs90A5e>4ӌ627X2˶0.s< ݧM@y:Nӈoߧm2!F i=0.h[#%m^,,H͍7++=t$G+Bo^^a Ƞa?"^_5d4V Ah([[%r#86,_YP\>M;N}ט| 7N: yhU'RZ|yN Bf!!cKEH4ηd~_ .Ls2o% !Cʧnqc0O䄵PTsla9iXf1EdnnЧCP#s'& *!(6?H3.R C+j:V4]& Zw"ͳDfqlν((4م`{DyT7-Kv飦UGs]&j;5Jt1t }R,X.j`L}ʙe[ Qũ*3gu2eo1~͖0F)*toX1鑙<{" |(i2cxp~68r) '30HkXQ*䓷[aZ"l;ow[/r~I'+P7AZyI}$:OZ;V[4Ȣxl ό!QZ[9tگۭM"6 92{U1 2ߕB哄M_:|q&JgPIl\9?VH'O­ {_ʑֿͮX _}5q3ɼG]~[q`DP5㢼XX#{DA?o5bZ>Ka? B!Z 娚ܡyT;?j"hXCdU1h+lA;>'@nS~4d7b_d(АL7T(ML,Fro ^BMz~poeaoP,`N8˱ >5j!8&[-28;ď{+f`ZQ6m^Et7;|&Cȓ;b0mt*ec埫bq]@ E)_Y脕ѪBS̈҅`Q˸a$qDyLu*mV՗§G9h}tㄩ%$Nofb\Ը+󾀖 H'cCS7$/_ҟbvm~TBI%$6;t`dٕ@8o?cW)AT&Tsd2 v@+07LO("'#L9$_,+aY""gHgXPU5 oAnS79gy-P{T0 e_9zh?X_ٰv˦fKQd36{2sMGu;Xƺe B3QONҮ*v#qZ¿J܁݇5%.Fdez)qјXݮYD; BhÂbL{H =[*ɌuP\`}0)g_",룂-gjSVPP`n@ive(6 jSWj el<L-c%5@͚m}Sh=YtA'Fd|VG._O/r.kɥ+)'(v'=ac[_y4lA  d;|]&N sm*7(jNcl1vQ1S xBՀ 늴 쓦&" N!)M_l M֙,{yf>.M?:/358E~gdaDVU$R_^ܻr[!2tPBA4fтC[@)\}*¥@y Pc^ 7U\iE@1עP;]޵ QL%xt᮴"xڏPg/?P>ve52c@_z t޴={рPB$9[8'N> \OuO5(ғΫ|AQS2YΏޞ5s ХhM14 9-in$TĊ?Fq}_fR>Ew8em z+W-_ޣ-׽C+ޤ.ef}&!'k TxVV"y{h.A\+eip2S ~uT.Z,17:ʬZ| 5/: ̿6k7’ȷ( ;vZFk|@SZ,s?"9&뗣_ig1G0e4Dθ&>qH@Ďj$aVffOXFTSYΝx?Dw+T|6aLΘ1n93/ +sSg FDm6D\ (LN ;HFcX+/Mɓ[%.`M :!El\ˀb_R&)v,?3vh0^oyΕ*⢫ IηyѰ}]⦰^bH7%/EPG#"-CHT̖m V#_P/WsrVaBF@<޸YYa/y R QvƑ@l^Z}@h'81@<-p:oK%/%C%;vL.=4{tde[F]$*<}cYQѳ0# jH/dBZB0A 8KCX9)N6o硎7-ARVzYLޮ/⫞@gD+hw&%x(5r'GHI߸FQJR HHgtSc5BOrwИGU(Xad?{ ulekU΀pq25r `hl 'cJL}8&Kנ{.ˆWTAǝZtZ_  Q:fZBTBOc=.x ,6ɦjhOAcBm" V]2%|gŐw.b>_?\2n-дts|]s:9iKlQ@CtQD@(zVIA 1$ǜuq(W܍OU0gcbSBj"k?*Pwdƪ7)$&n0!jVǫM5;95qP{"ӭG/e0ZÜ&z+-qh/oTD9*0tyfI#K:h8Oc^F?]:6;cy7n0VNJR#\Z|x$h)uP ^0n̯8P?%̆Ij/p "(+yjἺ%:*P;|=HS7f/mu 4)aqy,/]Eqql:~0^jxFF?+Tv63\>u4J^p&G[\߽7>g T$0ւp 7lܷC> O(taO[(-vM(P[Mf+Яx*SMn Ƽ Q hZbz.&qdS_A;DWeTs|OQ8s֞ed_kFY[ZHGpD=XD+ J'DAuŘ:m)Of.QOýĖ_*v8̋1K3vG_dg- eN%u "Y8LO6C>vF:ͮ5A`7bv:g $G%? Y] lD8 :umJjzMڔ˾,|/8 #!LV=C_\&~?~~c,q}Bw a&GaS81"J8)e3LVfªRT$I?ssW?*;0н#1j 3@cQ>?18pѪ[`UGms^0#E%̄y iCGwoGWxxZjDy2Hi!uNs~w7Z5=7&Mq`Aקk&E^|Z0;i%FsZWX{5;'gc IP2d2g ZH~R%ZPfMe'955ȇ 6]pFO=+n9mlU?U>:LZ[yz avՖs$۔Z>2sT١"oO.!T9?ޖeGc(T7aB.<2R(`Մ^1Zt*M y8ɝ8_XewpN~n'hJ ގ(ހl+ٷ{Q?_ÅZԸxHrgk/-<[v>H4V9Ck(m{>j'-'c7]+>\;I5XU㙠d7FyxRGX// Hghӛav0Wy3-j4ޠmu GM y:yLXYo *$(1 _;oWTc$J3p7*Ӈ}SʓYfDŽc.;^dI) b[?O٦z_u`Ӽ DlS;1ic|[y̔o<zdf/K],a(Y5U^}";^m̔VqTͥդW$Ϛ:ɉ zfJO<[?ӑS'=Mb4sa3p` 痩lXQf dP& Cqm:o˓Zbmk gy'4c+sAƨvOYfu5cK0*tbKW%)0.Sc eTb?&<u^` u 4' mfc.qc7M|Յ_kūK{0);BfvP̰ .g@ wv l1a:O5>֦As 3hz;HJ|zv8&^ئi,of1QnH !gӠhoLz '#o:l":MXzҟMrُDrzKѐ)R+’_zKB AStЎ}'Ƴ:TgHn[DM+4X}> ?dHo|>? ""tVw >7W*̶:"pG:'E@a]h7yf(>2[ѩU`Hu)<|'Կ>=)ϋy|( v1+1悍qaWEX׊ʙ(GиM!ϵ\O¶.3%u%g7l#!;~BStt|[ "9ҩW}eS+`<$>M~dMa1ӒſNk\bm4h,gc41: Bўivg:dk7U .?ޮC417^Ya.RogD2yK 0_}<[¾HhUߥ/>Ĵ6q^5WP .vbq= T*مT=9輪 euk`ՎckλN~O݇2mm6Ks{a< ȋ& HmQ[fgKN8e8wb{Z12 a4KfVA!0A9^=z>9/o=22=]=r$w){@"'B"<;+޲:XSmK*)ap):ϦW6[$9٫J-(S~ovҠ@ tzD5B30G/4OEv`hBgX ձǖl>&!H*$*P*Y֕?fM^Pdq ^Xm=WmAzmu`|1V4x)c/~*ʕ83(@n"j1:&ge ]P\Uf|a t{bI1;/Pvuq,n  ";{㎵X`-85lxІ&Y~3FT~j2Bwt=I6u0Zң&C캸M"3A)i+ЙH8)Ӗ v]wAkNv(@ JefnAR`2~o; , at嗚$LőVB}K8[GT< u.ޞg}*sͶrZ:&=rR]U-)WJDqQM= Qm!K}tUAm WnN_Gx<'Ҵ]#_IP'2͉;aDD4O8|]96,xECiL c@j* aiȨ:"0̪Rs}yf=ދs z27g g?{/اs= aD3"憝f7gQ!4l[';ZHfFd"p{54WKR)݆r0 'uтﲹ;_s8.+J ~x='i΋U!EA5t?J*u\ڗV1:D݂CR#,X,~PHIP3R$Zꍳcvt-arE۶E!'IKuިIg`[/5׻ߤ˸UX% # 1иnjh} ,8L`"zaZvk\IuϤvNqpv0ԙ7TP%>6̷Dt'MW7Whɚ83sQHRAUOBFl'%)2_ 1Agcv41 6=$Õ93 Nz&q,L[;.U_8)(TgfQfWQiFU} o;Z O؇ae Tکl,`^Kӡ!Kś2]L%9Q^q0F<G #:4$p ~4Xgv?M 8N`Qx)V) DF֥-2ꡳCkX<طn;=&΀u;VZĨK}Wbݓ٫5QUgv0Y{$WHAP,0AtsN*$˵l7CϲJ,BT3-I#J[ƎDT,aƧ$~lb"f\ѿݰч 68E}j:Z8|Mf5RD:Ófđm,oа1S<4TXgk` 9 tn23>AViJS/zKًOtnLPdY[ׯ;#,1Be97޷ʢ[â /jq{+ o4eZx* A}+hNVq0 oh~Jk;o܊_xE<ד)朲x*&2qHCA2JЏq,*J=- ]lZu<-%QWV ﳦ$=E6MTkL՝jSWw??)i+z LEٞ}nEDoeGmN tkd 0&_F(EO&o?gptPH)| x#@eM(4/d+SZ% EBPZzA(&鶇WïYRi_H}9EuN2?S^Z4J::6*U)i7_GryF>:8+ǽ fo FsgVv k@vK\Ak"+-!x[R7 A%ԬIsƷa_mڡ|`sj#/^Û O=^~>V<8Xd\O+WVmГYd?攦jC$oT0/hG=9piS79d,?%FUP1Hj'$f{)놆RWUߒ+W" 72_& x!dyOr^*H;{L 4}GDD*: {2"h2xh2&Nh]a06e*+"=.w?wbsK@)tRѮ%TeҶ7nhS6 fR\[gXMs4 >Wr| MQC4/q+5boc9!oWb@ 銍b" D#FrګmF1,"uؔ%ERPe7s{qHBq@;"NS=ݣ(d'sgcOa m2wI%7nkOYFItMu߳ ھ Y35iw]=õLȿ*xFcW=M e3 ־ԕFV 6aKR+nG}({׳/+s,ņm˄qw2ݕrMw6GYGxr,+/u(4{).*Ȟl˩h.CqZ!a#pXܿcr&ڈ e5Y"ՉY_8*fN_73K+!r#Qiحb/`eyϏfδI~mۄ{aߕB_!֍iP[*5-cx8W3@N9Y"K(h@ .}M 1kuT9*ϧW29Aczp(×to6bhǏY$%LY:09k)A}է#1vz:AJK 풜{b9ѪXܗ}v.z`_!85OTliھ|?d**tZ*w¹-rv4|hWFm(N`E'd[Ί9[|Y߹,”6KLN\X"ç> >WIt+,KVUWG0 oXamcuOVljw \{;6;[D83ڇEdO@ʼ72!(nGNpDSU(N~K'dWB*h8?N1_TE>46y QNY4%nOX7~&{ٜ%3u'H$xeZRϰB2ˆ4i0ŅHye5uq-ex$|3Yr[bN~6IϮoYllOs!yeVJ6+M1zQfCuLGW13E !#{ LBT{!kVLs|թۘx%#5܄X`k_ɇcBMA؅[ez#D{ 1ӓ"Õ6 FJ8J\UԔ;'ðWTV7x55 (d&wDF?[ϲO6 %W.JmȚz 5tJ-וжE?oQ#.\Y@5U(I%e*fڏRPLo2k/4h+{؀|pͥ:gHK:>z~4k"7S}tnU!W6:W\,LTh}K8A۵ w5+ދxDNǫp7B Dj8I!م8.>EFA+ɖgM:7,Fliг#wvRn,lWF3n^n/4t(CuoIP3f@Ue dw';x֦n-p-btOѠ/eT)uɿXVRwo&L/jzyr\NBBKy3׀< A]Rρ+;}EBNf?Lip-f[cp>$k_@+J(ϯn'NYF򔭣vke;,>t>hH4R|'+rKDBYRA [USZ E{5&w#q0U|rX]Oʨ߀Pgk^Hs!ޑ| a22"7%WE\ GѺxq8lr1 lLKiҿ*Nz }?Đγ^8qǕxl+U]p֥ r$Ղp9mY/odD0Cxqqi[;" ' aN` WߜEU^3# 5ЁOg`=ZcEtM1ĵ)M]%$% jjqjJ'AirA5^cOa$φÀw(b"zsHs_ zpf4!"ޝܝs! vAxq# &˦Q4^Zt'np,ذfzr5Yo?i'>$&zcYa1&DM, mF;(PnU5'g-XC,D;q˝bi r)޽L*{_uW[Q_ TapE {X7St tG}RNơ@9uVlJX$ƕr͵!+SG*3 _cVrPM(aJM:B/C{R@4#MuɏH}.GVlU&P DiTiEyK&?Y}ͥs5By3`gPzZzFIӽbnGL8BovbK nZͼ/L^PiPrq-;gTD"uȆ\Mߜ'$v:\t\J-4ÒN O ylHEߗ@j .*(*9hםUCh]nj:ezQZ)Q.I!VO5Ȍ#xc]nhl}n <آ›5mA/]tc7"+߂מW@K%/K)!PʜT8+Ԏ He }Y N(ꅦGZ|)Et-]1;M5/xWey+\*Xy'^}*r#.=THf%:/Tѹ_Fb@ouxSvwGeLCӯzy{~?+~+TعQαfv;nݑNc"گHT].+g/WVoc+ 6bsGIM0BQN ӹs #.jhiefLD]]YX ڌu\}wLJۏBSh KX<4ylGj[,?s 슥b\lVxBPr=eqo &-7_v(FʖWӿr| 4۞TQu50C3?[n^I=OW<|.bQ+E1Qyy؊n?gޗd n͠?QX5c_NJ)\2kd.ѻfV<7>oeuBOLޘ(`^)C)5oY녛quu08ljD:ݏIorɅ:䮂0cl8CYDPuwmR M$%3DTl?YQXca`9AX@(FW`Z:.=ژ;'+uz^7;/kX.CiɍQ.^ݢĨqRk,n r J-P,QrjjO D.@c;yk^u/yKITqjc]E&.l\$@@FeU:wD<7QnpMlַ(lF4e, b'A-޺mtMؽY4<"2 dFcwfq gbd$9 ;{ ĉ:zz o[t[)XBu uCr??$jMp ,8&7NyO,~͠RB(eU'08JHґgl?(8W8N!O3 }`ހ-L̹FtQϨI6,`SI8V,05ذ`ɽ -n6߳ګ,%ݝX[|!\ {|[gv̺#0ryзaן6l|Q}  a> R9:3Wve8.[w+xMfW>L<5G-ڛv)K:e~ r͸ڌ[ULH1'R{(z'MMȝ؏%SfoIj,bHHyopٞ]yPhkX]SjtF 0벑 եr_Ev0MmՀ<G5q98lNv؆܋7< Fu0HZk!E(1 ܱY:w^_ιn Mc0$ Y _^=]P|AGD(CIgc3ٟǬ@SHA1Q&}s7V)Fnݑ$zllte"WpܴϝVTc$;Ǯx: "(B}Pr6J'4b CUILng ڎQbMJF-AS[Yjҕ!{__ n_== Q7.[x뉰GJ+;MtJ2gv얯烷*XqUg>]:<[>P#/cDϫ]+'*|ƥ_H]0[JSsl4ċvDHv^J({p]d,լ:vj3yIX\:ZG PfGú8ֶY6YLi\5h&aϜ( ?ǐLݗK4GGΊY=/㖲 DĻm ͷc7.bMvTdLӋ{Ghn-> Si8Rr7$ O8u7- d˼0ɀ杯YJs-xwk%.GTZ)рvܙiprZI>YD j=E_Y1 WFA/ V? %bnm]xg঴MUJ,gߡk%q1v1\Cѝ 7z"ψɏٯP!%se YA=7+ čWb>3剟nWH+g rjɁ:a R 3Rd+EfQ@}Jo]\!0RrكR)f?QVRm&N'$Yjd.yhkOo̹,QUHjQN i fsavx P˵V@߾g=FmbRFStogs%nA cNY; 6:'fS~ YS&W+XDD;oZc7"_|UR0W K#Ȓ/"a_ ~v ݚ#4)UK X< ^hȫN#΅Rr9lGz%?~XCJHѾ[d-Go fD׫#kf]&C1_PL@:|Tkwn`|2X>d86IfFo^> E;?Klܻ$ iWStp G{$8&h}@8 |0 9 n @`||z /[y/m-^?DZ L^[wT,䜇ȦoM}Pua~ ]V"ԢYn(ζ5uK ~  I$)sR떑$Ym𐢢c~i, zV?Q_qej>Y+RӬcWKd(a♱{{ב!זf/];y, g ay5yVm9W?Ij<&-oSt& jُ{Y_.к 6SѥݥmKίn?oKq(ıYzZpҬmf+)| pf;zu//K@Nۨ@Բ"Y8O(wtI_>-&҆aྕ|S-C"+Y^暖] MV7≹+->ER(KDPv(wψ1Y=7psaO?M7eLz ՆŤcxC-+=rHDx5]6:b;/=Td^4[𔃲5JO׶w@jyA( `#tFX8Pc!H8SHO?gC2PI2 ά?Rm VO299"I/%Gi`vT tƊN/UPCY +sV"Q|.$Uh L0;x9K>>@,s4q,ᆘruIkScdY 6o8ZGy=z&s q`pțwЉT,xWJvJԦ%ŞA=/JZ1xWnc;@SN>Px(+ng⌌:-0ׯyx: -޽EfV79|kE/EefrvUyoN+b9x߄$Ey+n1 y&#El <ĥ3ō </2aIw!_daHDo)"DLrǪ+hۍ֌"UU~jƙ9fd\mC@ wEU;~./|hqwG*YA׋u;#Z/@^ <2Q0@VʘoMeGeW&76# nZI3VK҆D0/ ZgvI87t&rEB6Х%-I?2 Gm=oYW-T9nYk&lu]fUeRW$ ]#A"Odƻw+QϨB*NvY"l,7BO`20{ĠzZV{37E /xc2Cq%66U|p70|.y coZ]cE4{mGx:4\bAz*(p k%㰕~]ԯ]]|on9إDV F6' {}w! )gƍUJ A!w.Qȴ:/HAxtM>)_\_ 1A4Hw*Aa\kjX<_-zu"2No p NH^,jlb*@;AJB_ JApatS0߽B `nmc3bX1uEtNL2Y>-N@ƣy:_)0eDs6\%V^$99n1LuuKȨEŽ@n^2Tc1[_Dl ̇= a◨2t*?Y@v$- vgešl32|r@'\]NE?9mu$'9YKh^zT6g{t6.;DzWT89Ņ@bf@l5(Mb%en`lڧ b,^0LG%F'k?\bnY.X-)6΢6o ~c^} #MAh;0[^u؇5bD)ޟH0miM:=oʙ2civ|>eG}*vuJI [J>y_O1S?=iz+O.׉>!td{[ Uiy@.K!%K〨V)F 3w͕8܎r! d"16q4pMf7`Sv*0ȥ|nf!J`wc~ٺ8ja{ȳG?!=%HP0e ޥsTE0z-ů"5l)^6k\i@~D \`1l1jFqL|?kEN$eȺI52X:;w%­o&r e2Ϲ@8ϱkon梐ث(G6a_}zwYRV=F0|N6};ss}uŹU@3\Uz!0k?;IqDm"^o}" g4t& <ͳ3V7{y}2ǡ2RzeS מB.DJ 74᭑hx6/Hc]$ kšE0$KKrGgIu/T͖!>%.QRӀQ F}ÉtxJq#mhиHU@o(SGp?7h3 ĶRnkd!= #dL'vXOVRkyt6'i:f!U3tX̏_U>I^d25cld /J-9MAN楚s?.$.a=nFeǝ{往@oQSȶhIhB僠|u[Aw/9? ?zIy@BVAlNcK`RFo6lG֗V ݇> *J"D<{%t6'BJ|[K`Bi<ǟuQlxC~>4'hJP^Bx]"FwCg?RqmLnj38|:EbQ G+9އBkm/5ߎm2OGIo}IDE7V,J"d u%WU$ FeTl( R{_G i)L!PwZ 䁾9[_{ФtIbw=^|o0J^Ca.$ 9K_@9| | C VȱAT}.f=IJvnioцvK䬙>9W +8Y.rh|Wkr>#iUbX~*SY~+h ׭p ?Jѻ^S*>S7*`S D_>'*6Ѱ{@Hc>w[距z53Ɲ*؏}Oc.Y  ހņ]ϱRRlQ 09rA0vcbS_+J?co\Xu jN/n' [qlEk]tZp̋NuMqZm]:cӏof ;a&'*WbJ8լiQ}mU 'C[LNJ.V^Pd&}OM*v 8]I.P~[Ew S̨"Iߪ4k+8pg_l:Ҋ(l"cN N\V0“;_SSp H7sxY[!)x4^_w&F4=4oFLb)K'Z=[x`J+} 挖H<'R{]݁v!gsVS:ͳR>3CU%ի@Om>:RxT~֟>\_* cw.Ee ).4;H+H(gaNCEZ3H}s󌯆MʩuK߶5~8m,DKNeBO_

PţNGϬs[ܒSuprMtJLjpRj^m$)ޜ(g7L=Wb4BJ>)DX4OͷCX,];ֵDT: wV,px:)_s=Үڐ;%k|Cif6сe]H-T@_|wi$a`!JTмM@KO "G 6H&tXa‰'iclqxծs"{h{b2\J-r6|s $[Y)Aw; W0f$~c[՘tEZDz:6:1mʨQnd[_Xa*5yE~y{2}DX(aFѵ9G39n^zLR(m|A'(m|5\L9JL6܀h+cW~y6Utx#>yFGΆ3}ZLZTʱY_+abH{G0w{ZS`3dl|o#JTr#}o(i#OM/ { a]$#fS5?}erȊz7Kws;bl&0?/W<<Ћ׆NYb 18jW`N2>Y8( [YN12iGuVs:.I6qCjr6{t"at 5G5fPD{TdsֱƯ b+u35 G[r8'|&¥mrp|aH|؏ dˆcV`ҮN pP4@̭_F)-`e veOmR-"9m)-мU c=}T aOd 8Bz%E%iW6Hy)J~쇜GGhPJNJV^1l{i%G$3v*KFopuj0*?eZN'ܱ &ZJq8nU@>\ğş+w߶h=3\9*Xut%`'gk;ޒ('UG@KX j3,g^Q`*@Mڈ06ȍ @,ZOҿN\@ ;KOFT5$YC!k5=Ysj% drS&uHq*#(xY#^6t8l4ߔAȼ lE 3;_LH3k|ʧzzwPʏ&}UM lg{sJ7ls:7 c|$@ 'YϜ͈Sdޒb$. ksѽVP ?]fNIb#L7 V*eqӨ{=`x.!p4eRr,[O#U10Cj< ;d8ǸHXhڕ}}+Hnf'cF<I=~-Y̦)R[x`3wO(EW?b,*E:9(ju;sy,LޠSlasä] K.i O+ +/h 1Ǣu(Y]gNpEQ~gxWb2=`}!@?m}]_S =u6X n}:o{ tqxsvhXV$yޓA3}!͂P}|~vtx &;>[@qջq !p囚@/bf#pu8Ǎc x[MTՇo~26k% BdFl.E hPܚ,8 2O7{ pY5t@ 2ȮOOˎ l^W&mBSripg<[4*⧴k `GW/OOqs;!PR'^Qx!㗅8^ $ 8'k}^3w;:&fC*}5(ga+H'{t.2n2f 4,_VXnuoр^$ocͲ#ӽh?1⢭V͐BL1U:^i #i[<\$0/.VZsNmd/N{Pg0Ы f6̆X>kuaE^PR2!le6>2'*Pu(ޭ(&o7x՚蔬XD/9e:Ok< vz0v ѹ39R.?> 6m.\D!`3Re 2Os-F { W"rWOW6撮! pZK2]v&}PJPȚG~ <ݳkd$?Rz+g^Gf/$nVNhZԍb:ڲ1>Hg>U7B"ym7Wƣp0F>> xuM]ϣu9䷎=]ɰi.MFs^+7K# Юd"D&c[(LbA͕T X8@^(*" =]Z}/Y%z| r iÊ&v e[#Hzj/ !oE;9 I|pR a1J{_f=^!űWWJMyS*AEl(+)A|M|ڟOeA]l 88c.-\3ёON/HQ:v*IشZ~waD囤Sk\@Wq(0= oڮ`ar\g88g,HNdOQa([I~X.?%Y.ߴU=>EwqE+)B9,[=.XWgapɩw㵸- u"Ew <9x2x R먖%BMB2u1eS5`2Dl V:CdM޻ ܏r\#u\K)W4p4ɪKmPz0IS)o'd:A}J|<-N#1'T30 4p_q:CY*l/w~h-2Z&lmܝ2:ɺL;)&dn;XD4$S2`o oa%^s\]YכqSlϏX-Fe ' cޅWDoXzh#+޷ jPv iE^t)YVdtɟɰȼy(_:X';ф;,Vln$? 4VPRվ|pǪ%o{bj50X 얔zGXXhH]E_.gRkC2jBkdx5بXHBg,&d>$dn6?jO ((F20Rǩe'3R["e*ݏwm4RẺ>pՠ$0*1gy) p(esbNrSOZ+lcѱ'$N"EV +qM96Eʶ휚fv0<&^ ut؅4h5͙̋ꗧ2i>C_cN{Y9فxTȇ0^\_GBLAl8})1 ?SC!&Q`n p`.w&}c3WJ~fYJsc^q'UC]߸pC$'GÇ4d1w0⒪u~k4]>&ԈS iƜa+ç 1n++q`+0k$g|:v`woRijt`]0 WR@0b-X!V  ;s ߝ2XĎUrfnJ L }umXRd[-4Lck ՃAC;Bg80\@$o \_hs`덮Mk{zG+PpqhL]?C>RbzNn&MRLyıo0枀hB~\҇<kbkaȈK1)KUB'VuHNtR}Je.z|Ne*l@{'wAY)tKK<YLd> rlm 562ǧ _)Ч27Lx` ǖ`-zlaCХLDzG^ea1O[F J湌Ѝx,;6:HsfB(&S_`~~?^2h_&-"x?*Apçcb Dm6/C/]7Y2L'hcpcNHJ=\}sA+EN0 ڍGN7>Mc†9i%Nta- ,HoVꢝAPuEX2{\4S0yd-1W)/SYgoM޵= [#RD;`aoZv#I![z[IH}$bgoj>K* :`]P<}^Jpmu`ZntS 6;؉]̮>zzε?FOYMN,ٜ ]^NFrR fm \V<V~|!uJN#LٵjN,{xPnGGBh,wf?=@<6d\Yw%-?BM{`z)M͈z7] Qk97',"9_аt7 q/|XX(IR(P8-ω=2Q.`R{z@*t f+g۔֏*0C݋CtGf-d OSlWr~NOk72 a@a;T-lCv^oO˻ɹP!o'qbz@Otj؁M!"b"%Kn]Qp{OHJ;jKO0!ܒ*TJ\cA[OR$V4 4$y }ޱ*#X[9r4}n]{7"/L }{dݶR leQޔNO,U,G؅J3{'N&v-'`p"ǶC?ϳ.%vaF(G:vzLh aKU0'Z* WW\-A̮͞x y`mvn8JT/d=>—!u%'2R$!H~A_XF&I-*_SBs掝6m[w;P0OJ< `k ji /gN7 ɖ#JxQȝvxWϊnB qTrT8[ft8W!T /%uF41aJI3q.`:M]@M H݅5RP F+G\,nbm):ʸ5Yٕc)47TY0ʹoհ,OKulS+)Ȼ`l-~sim0/fLo7S 8jޘoJ*EB>f|CZHwn`Ml[&lAOc&'F/?jLSi1C=Ȭ1~ቾ^%[}%aL{r~/cR\=&bӦ%:V;3캡;ijNLAYi}kUY41 繞݇`eIaR@900deeΕyY5<`Ν*N4=#[8/]BS:>toAxľfb;OP8'97s\s8>3⨙6@uXLF$s|q` ՜$FL~/D$RgFے}垹c ڻr+XR룽-1`>ͫ !fw LEHN~_sO9-Я| CG/>m6Okz#QMmaYZyҩ ;i$𬗸<>r&?"o7$j3{f;˝gƜ`nd!-+M`-`Uvn+8Ӣl5J+\/R"y.SSL8ޛű% }xNˋOn9tU7/!S-ׅ kyb:wa[p!Q}-1}9`Ph~nrt5o(D%s '*KQή#<ʳZ@ZְveTbJ ԩP\vݣ\tMjd6lSY0{ !Y>úpGLZa3T!$2:K'8;f t8u5CHly76I; ?e |Xe[$|KOf[w@w?Rܛ3Q)T@)hwW$Md{eOVe5z?QVl(̱HUr)=Iy;$&3@{  xpMSCP7 ׀:l2Evx},w3Ն8Y@3h6z&Ӵs3K~zw_{Uvwl˛X64 tmᛖ9Ll#|2oa7"GT@nlG) yiwRBiMo&UHN|5?!\A|ٔ C$u=^0&BOn`sTbVɾV{T9/g1Ckvd6o[hm$U^[)b\ᷡ:26 -B bR: ӬB |cvaxE8\z 82E[ Vi,L'Q;2^Y|zf!W~)8&)`K]Q tk u ,jp`/(dC$Ag [ |jWVj$LM#%BddK@uc2r9/>G`LeCWJi+/Пxg'i(_]yqBU̴"U]4#?+RS{|Ui=%CSlWJ ;lթ+g>e~kRC؎_0Al󔨏q.O04o۬7iDN69U` tiAO'$CknG"B7>ƒ?lp 굖a}EJ ]>X^.hm:>}2փ=Cug U$ݯZU՜${/&r 8TЉyHK(6TT*JrkrYmړ9*BݤRdJ@ezUx/YsYV:5>ӟWЁi ұk#(@v~=no֖V& ԙW1=+:f]Wwne?P+R0kнpr#gБ3Wl|V FUxȴO.N5}#Ω~vRWU/#ȱ3Ni.J/鄺OpR;۝*KW4+nf 2cj/K".!nmEx-o{Pg]-\]qt6F3s]igkӴ,NP)*/kaXQ n7ub.)CH$Q*ݮI3iC P\G)L<g=f„1)Uɒ[clafa1+a𥶏\CPQq3/t\.'E9M˅%άAE`Ϝ=:9㭞ԇ6t~jʇ[E EgpYO:;nz Cd1.5Y֕v"&RDQUN-x13c<(&8luitߌ]2+p9h̚#{x9c=4#l bگG @6tyE49u1U 2\W[LXrRzԐ#YH`'YAΓt ynV(mg ,̈́.f2Wr62FUd RM% KaU5yw\IܙzFgS:U2ԝEnz&q7D#y 9wctKihz@Sk:R7O[p4 m ml8Fx뷹7J@&id; HL3)WdY FA}z/KeĎW,fZ_)wir@-UL@cz;!z +(*Ⱦ~/sILor%P3 iPզ>/O~LȎn C{]Y5|y! {6dW?-|K.#TW#;.ΈX"+?^bhNՖ'nawLCbTH;H /##nMXoNXQNc~NHԵz`AfD{n50]|9Fh KMBO$^x&qL"6-Gϑ~?0\u`dz<|Q{F l&Dӛcb/ZHwϨ{ƃѧRǖ:C/!͐<fMȆM]r+bMh[c*Vh]V];S#㥲 |OZWhsާ~:]\U},'y ϮWUM-VBՖ?rL$Ȃy}o-'/0Qky 2msc L2i$,B5+Z%Fu- ii5$u_F$9m.}Ze?%ѪP/IW$/Z{׻J9bsFTnm]* Un6@!m}@s9^A@΢N|9-ֈ+GoTT"k7 ̔f{'X ҃&551|u]:Pv/?}0*nWv=G?ϼmQ&sH#RDTY&6鼯/D:J2;1Kt*M,%Gj[Uf YP{[!7k3F Dp$R(驻J 'u :.s*~bg4[f803NH\n0 nhmw8 TX0)y~92?o'!_o ÑjϾrVOFRRS&:xQ~ gv94֦5I@f|79WKm_d?YC^VkϕAyM9Gy1)W2Sq/N-Fi4o/E񹗆@KJ2֎*! ɟ S ՓQjq C/猞`(vdtȫaHc]@.9g,P @0ݙ+8;PȒg 㷆&y-OeݟD_ʻ~m|CdGHevԡPLc|u"b~4La"[ bD=t+mJn(,U-S#;6j&aЁ_t&nOo XɿY!4:'K#kF 21";Yf({Yz)hDbBY=`;![*b5VLkOH5-:Q$ Xj6͟"斠GKV:=bkK82{ ݧquIXs(̝*&'eє4jǔ94ػ`X2@ ) M$Yj3+\0O˂]אVL?MZ}ը-`߱^nDpl%&'lqPoyYA^08BKט\eV0ˣMhd eN0}.˿46D5NVsK2.x*EԷ~EL纖EJz zBh㛫֤TWr1V1xV ; iֳM?ϯ0@iY"G7zGi5Z1oEΏrQ89xC27^,i@_D'U;RwIJ e 81Dµ )x6}mǎ&0&\yϓs '$%!N{Ok,+Ot e8Vg&Ux\iK _񍸘Q ^n4TYܤvsj%9=SG_ĩ#r{.Ց60K(#@uJoJ}u0R9e Wv1`of&/ȮpUOdK"љ'X1,bx Xg;t{#&p{Wif K-C>^qG>ZҤ\a^SXxЦRyZvX&f3paLs_{ ,=DfKp|f*7ā7fQYF^fIacHqPq޲)Ꝏz|j{]>R!lQ|_nR>`NBkLe)@bFr3PPᶧW1fo䅸0o-t/شT).RMWXrquu JN"N#W͆;V!9+ ;~nZ~`@W_3Qߨ$,CzҾ̟xmkd5Md017)J5{ yP؊a{N 4\gY'-@]ec֭ $yf uL1WQAe8 {ख! ސ%fߣ2IЇl;~zIZrl1"2dM8 Eo򉸧Rq[uIl£ 0#0Z@Ӈƚ+{6K<ה:&Rg]Oj8hiU'h?R Xn7lᖽ(E2)hUU_26+<,ǥ\k4NrVߑɨ=ڎF4Z 4hh AY 4Qh1Uۜy\"ON4$S`{JR;cjQ 2t?j={BZg9 HPrWp/ o;8g8fw#3xE|8[jE,Zo"+FִKf++T`GɂpnQyo%e/詖p`*E!n 3 gUh3l*W:YFL_rDU8&ؤԌS;o-y6fvm㐹oJDCkkҶNm^/zݏ&Oil$ҾOlN6S /OZ$5d@y"4 ܭSjXR=cnd J YW,Ek)W9Zyf(]/A@mG |}yG)({ ĩY+ wդENgih7/S?'_!=s%0Nm?zGn]p1tA @ԭ,F7~F2{s/ f wS^|6=6pa8w#ucE}L9Zaa{Kwsq2ڱIrfL!=բˬwn KШ~T|u2E0J6 +}8Ψ:L@νW>ڏB^eYIȉӔHx8R V RsdIg3z-{?:?C At|M@jD'6GʔeJ%mQY?u~n:gS88W'kk %&B\6)_ٵZ,|HPdԚOW!ɐ|(25ԕ}Yus1;ZJm\WT% QjP2d$R^J,hQ1!}@C9pꉅ[/#b _{=oM!nЃOfXgfOq58Ye,_}>oVp0 _M[hTj23e2!s?: Ԇ`c7Gv yj|[(c+rIލkUda.$ $(Fr 8 ]9U8'5!ߖ'LX [XIS:[yٟ uC@޾K\R5G{Q'CV!9M.>0CA i3 &P%0#pnr3nDby7>:%t>;{bukcnNQ,I`6sY&p|'-L.Bg'WD(,p3A7,4~'"-RĂ`GRaL7YYA=ֹ~0-Hع=*? CMLE3Q]Ѻ搃.AR4n>Ɉġ݂Kh@P7*tJL#!_9YY75g&[*fx$c(?a(g=HGpln?>o/4ߨoIXP rb\r_XbP^ d R8#hbxpQtmP%zw-5VQ~N@"yxc&fɰ_NM ͪ0k'9T≛њ7mU h*ItbB4eR]h>^.AqV,-s #9lٙ2I{[(*وI|Ex9Kh^`Wћ'yaVS}n$+kjsy[ M'4c-(}TfsƊBa&d-K!d(U ޿njk9nCqTaTS8Qٌ~,w`:6ՉN0\8o!Q$\ﳏPU=V{w\! D}[5ξa;OJ HVbc'|y6( Jʚ z@hMV[ 0tu i`_>o0B,67C%3k/5ks8CKPxU]:H+LmBtgJ*yc^~P'7 F/G7p ~/ nvZw)ۂH. ,C-SUO> ,_)z@''Zº|S:=)RKwTz0[J&EgbS^ Uhy6cF<42!@dWA ^s'YQ`Ш5ܘj&%bq`9LmOb#BQ#9I%oKx"1e?ҺͨXkw= b4GQ 0DTpo!1gOT9H˲5'QPu#mWa=UQx'm̻ED;L9T)n"v[Lrcή+1MŲۯӳd^\& bA.b3&3q9ҳ 杺!UnD!)!>H:w*Wxo>O˥Jd|C{7w{4ZWœ3'0ڛ2i?t'_N&*-ؐXݟ+r?{ї3ȁt.o =16Uy1VlYQ<-$uT=zriJraRV}DXv~kv |iAMY"K R^net%pmZ%Z۾3P1rOK U\}\a*Ђceأ75JݧZ} (aΤ 7S1<\X1 fc2+V$]ONrI.) SẮdi.nٻ!<zd ۹ 1E*cOUk@ D#j#GdҦMɛ:u 8QB]bg~)78*%yP<;SS.y/Iv2!CT&ӵk@086%vJd Y]Ij3-yQ۴/PN$x5̲TsdKZ/_$HDY ]2BA@ݮXNE#7KqJɛ @i܄)v#~(91tn>=X_Ɠf7PKwcgzC\ڒ㳫I/%/4⹗9r`& _ϡ C|Tbr]o(WL?ެj>~-Nv2v9НW&r0~h\oiUi|4&L.=Eۿq pRT:x׷R6/$R݀1h "~yʰ", Qvƅ57=MalnsPʾJ Jj 'yfn6ͅd=cqzB̴aEE)b8u"w=l7+X+So2(\: m]H6hhy4H\.,fs.4ǧMzȂHF+T/ NZ~EPq33BMf FĀV#-Wڡ ~):Vt-hqȹ3};j@J\c;<'1 ms%ٕc,B'f+|QA:0*tׅEyv#t:<@a9n:~Tz6ƿ5>V{(@-w>7 |Zuҝ;ךTW*@Gk+n.)&uQăYp ѦԠXE*_RzXJ9o7#wWw-KI Q 9Ese jc~\PafcX}~/b%M2hNZpGpQ:ѽW#CnDY6KqϤst{ɪdg +yX{Zci/=1;:Ta:UMPfu8t(i&/<'!: LG, ;f<%?!|pm ]LA*+>vNa]:rѷv̗G4JƉx/qoX́5"}>ؒ@[v* pf2{޿UD:80gRC7x5)ĠwlܓoIUP|B>N̞QzuQkǎ2vnШV`qIRhc\" u[C5i gx^.i gq&znp RHCW!5U 3_4L<`7FB*WoS=Îwe$Ehι[w5p=#?,O >ެd|5vAˠ~)4r8XҨ)h m_9` $_gLHNKLٵxs2a||^T9_nN ݢ=i&i3G؉0AL>sTqǨt4YZڝ9]q6z >_m΄}Ғ 2Л{@>HLn|@Յ<7 }8RڜmQb(j,u,OyB\tuA7Ezvs]ݚo\AК<GW5N3 udcD+zEg6 Y@ %Tg҃MJ0١7 ɫl Ets2xNNq-+XC24\>K䏢TnMz؞cT%?b-3<uZVl!0B~OFt((QlNP1<.Rd qSu i*aT[fd`- );fweIHZMpvJVKT]?v(dIACfFq'TD*TQ%\sw }iRPs(6 ȓ0;[ikQ``3KY[y,0REaّR8%'гQNHwX^8v`^j\kmCJ73 Ex~I920i73&$ ?FW_̣E/O*>UPY'9E6(LU'i(#q5$upf lwޞ[//"b jÇ/簎"jﮦ5,@1+F2a=-ֳc ]di?'f$SWp Z71jZ.[ΕqC, YG-TZ!HtBMj58Ҍb2k3ZWy(sU9BNCG1FQ/g3~=7]սVºTF:6 zh뚃fl 6/.}bf]Z#G4`ȸ)[*UX?OCgya2j?],F%QUtlgXBkΡz1Hh^:rƻI\1e`&e}Zfb%G Vcrj{B~oNfs~/<qʊNJGptL hC7YPMP=Cs\JѢX>Njn ,8՞&"y\ golJ[IqFOX^lp6tp"&{ Ȑ?tIBw?rE p|bw0,fajFqָ6"ބ$pô 9j@I9 @>(I5((.h 749kZ}\\ܥƊloƖ/DŽjK@͜Qmp^jfbʌNq0΃zD浣d82ܑ;ZP ;btl&zq*ޙg,Zr'Sg a] D@6.2#3ԪGûwTx$-أ7u苒c7VʞĕQﻕr;TW;]5->5]pL:Wi|1]Dl U5q.L2:x&Lp3-Xj@(} JX 4 7ۅ,6P\qu?̀1E~":b M0 þYk5=?x8rX;&p**r"q+ֻL8W66G `N/GCw6Sr&,r*\#YװƻfRl"Ñ)p}MT`SՂW"pw-HH,ߘG^$Fj8ZZ;1H}@#`nGI<TĜ۠8b6yyL7J1 v~fȄ[C "(r ׭+m1tՉJ2H"]}ɬ73N"Z W[slA!*{@_~_J0ry8|d胢3͔O[^}y~,ޖXMxz&^~e֋9PD 5`R);ӭ(me&',+i*oH;SO Z$Q L]Ȅ!KZ`Rs^Ɠqů  r\QX~\cAQ9XyhFiO3'¯zƩ}suYq]Xr6nM&RTĖIfLE/O4!vWm4"8 zޔǖ?hST\Ⱦˣk.ɥܑe(i|@9oP\lIȯ:{c !O$A %Q wytYzQ|=7߽(fO %?md8Qm*9`pK8kOCMo+>rEƎz:RD']󒲆SoOs.8[!A{r}dn/1CaxѾ4s=C㎬o柵%;MjvoQa?mv,sRMg="prQlršKd _՚L]dg-z.}:]p"5*ycJ.=T h&FT\n ŵ/*p"9w؝h{&ًn/mZI9O2cf oQ^sVf4u0ų|;(es9-v,qxyJS̭qx2]ק9mO# O_ݟAA*`i7A5(^ >NfnnvD8Ht}U2wފp<˖ COiIfβ TxE080Bf@Nz 㿉gYp\Pm .Njj6Ph|UnռVW@c\d^ QFdxذZü$2 s/Fo׽pN;]W 4zY~+'Tq{BӴ[5B< y͘nJz96rRF\$1kLƎ|>8HfnѳWxG)z'.xT۪=9,&ھ`'KUi=3;KQgo)*CUKoFhXoŮ[j*QۘKpt|7ݛT7WcjCq}&? L344a7GkA= ℌ8~>u",Y)J Y\B֝ŭ )ʑF|m}ΖڣB+JY :!E6D^KkaFTy-:6 #.IB&'$>81,RmbRTgLsׁQ>%?#3ժPfezov`Z'l, q{ n|:5Z0//޹m8{Yqb]TPR?%)6fT? Eu=SJJ<NbX25kvXh'ק͆OQz`)^x;0'NߑOّh%! Yf8(-[%Ȋ], 3 mj1 s#LSc_ވvDܶy2!m;oo;oy@B+-J˜ $jC⇥=1K~\E5L_Xb0~٣^q pX OKW$dPJ<S{Ti>~Z&x=ճy]RH&-#žvÀO>UG7…L}նµ Kpd'.K,<QN}OtS QqS7TrW -ę7AuBY:Y{ i?+5Tή`{씳bXnXĪk=pD LmF1Z?6>08na(&T5SDui2Pl}zVf iͱҌc/_?>hPtj&6(8D y:㸛 ÷J;?s!.6֛ <ܒb?hO]!.@Mb~$5!\x9,"GR酐~ !$;O\Z>P;Df] Pr}ǧ]B(xyS>O%w6ՁS !Dh5Oth}wd[>RX< KW 3r=("#9ѽ&5)iWJYjYNeO6 G;~ Hi/ׁŷ(T1RcG^,cYOJ:}?k-v%glVŐm2׉hX@PE]'z^ݿ`՗+IzXLr̍lҍl#`YZg9 /֨3N~j4 J~Kj803Hj s׋=7>#h#FΎ{׹OPkm'o1K}ZmJ?00~-?;݁ ,2Ж61'חY]ȉE诏.`6-˖m+J2Jԁ5S0SbPe+WePm60kB\U|j<[ɯ#p~x̼AD0#\banI2 ԌR:d <<B ;7HJ,s*2y[Hv4x#ݙ^}#lː͝бUM}'.[# uNfaqȺm\TkMF.sRi+i 2^訴 HA/kٌ(wAL1Z*zkILw,E%@/$b+p-^k;%}+%*Np +}bB7XY8D 5|.'*]Y 曁?0OK6W3*4'K^#mm,IO'.6yv)y^;[i= jeKUOAgU%Wx;I̝n=XPSZ9 ޳'vFucAWm{]؄c'(9htɩkb0;({v?͉W],ҝ[{]JA^L( F<9kG+sZűa?#{IqWξ9SiZR*;"X7v^g\K. WQ?O݁t7-\me 7{3gf\Gz*4 {izCՁ;gFzv9zH9Q]J䃉iFnDbof?䜀_7M <|wh: NM8CtLKιh.^0 4a훍;/c󓍦FK_ӅzViwchj".UZ3`/v ^b؛`zz+5>lM3] XȷԲ]ء9ͥ<[ɏ[ 6bH\hPu|J dk?Pѝ:Tv4{,_ +"b,}&$ZRT Bv/1Y‘J[Xo:UjrCK[Xc7:*Eսf| ɖ*q}׫`ZӖ1c9P.!r k'p ][&uTQG(4":QPyX6y~s;_/c:#q|jcF=-yC-;0RADW,񈔟2CJ`2 vj XZŤK!՗% UKɟ2[ B""Pv>Hߴ݈3VԔ R_roȃ}V sBHj\OUVducDv!, p#SxGYUP8$wnn\K=oqZzrv'2zTgϩ14wИN _AJ_0s}ƞxR\30l4cFV2bZ!儿诶 ?-9_r_@ pxU屯5Ht5;sIW1uűAcv'+(1v!X}y:4vS[/Q_|Aq$= FtTl,*Rrwlȱ6Fam,TKkB -@JL~E-%vOW8^л>,T Ba6|>n/΍fK +[)ƽZwj 7`.vBj.}Tb^axvU5yf 1K񏍽^=qq{[}./-5S)K/0].EjTQ4=F`=tZGFo6*'Itx^ysv#VY8]U4+; .T47U뇜]cǻteĵ!d)iM5\S"6 yQJh =[#+MοX+b:rI+An+Jlozvhc❾o5ty#Knjq#v`R g9)!Q؉t(W* ziq Ȕ,h l IHk 5eY5_XݵB-ݺl-yiCKZ]8q. ޏንUAZ 7\ZXKn:&vl(ܖk"p1P k`u& Wg[ӧ+wa u㠀c\܃k [ӈz+tYuP*SA hI 3E<#X#\)pia!hQM$B$&xC Zp2!^Ho{8j]+N'qx! (Q?Znb5 H8DoctT~kKw!ʭF;7<|&@ Sp34ZXm W'bDV| g㕍u5OϬ[/ XQ ӹ^̚T"\R %8v YAj(7+qF24߿[uOF~X@C41L{q*.g I9KZm{~*@-_IH.\ &i_%(:ٌ֟Bߨ 6˗^zBN- gѥ )чt(aiv0-~U/呒B;I᰻KdLVhHT$MRqn4YRo]wU2L/I~7Zr$&|.eE}'+y t)xl^$ choSLΗ.Ti%&1)BS r΁Q7uzb6{ElZqL;3\m/Xڋ'}=OS5sAGzq۹p{w4ȗ_ny33g6OZ4U@jЉfJNA ЃnBb:yCUܛYBD;/$V 0&:B^Q+E[u }Lf]dNY~oGdh1OG 6 }5Q]NjSJf<üߥ$ִ1l-%>m?k-}E򞑔TwI`r!E g3~Sh@↙{~]z9rܒ)vϜd>R.ǞBe5]|-UE|U|?ZSj~\őAG9킭G')ԼSPH|Jt XRZѯ QCꣁ<[\;7 ?K;*&ͷ๔SQjt6 ]_̂y *^ $IJӁL-=@d򪚕q*-z'8%U1s7 'ޢ =I`@GPR[U/6o=:O返_AaAɴS e}Ifz]`)֖Ct+qzp>^&jS1bJMAUgA^~)KKWAQP04r]U/}i=n {S\T?̧*H-:,r? ҭ4PxViNT}im[]3߮;4Cz6nbL&i L2t1S7](Di> r ] E3LM@G FI׷aQE_L"oF2yq :|LU:a]dngg|S{ZɷE@[T׸+-ܔU.~j 8f逈 )vLeGw?dBOj %c$,Jw!hgw2/|Z [5>;wDVC3h-έD#R w,QR3r;ߵkaW%8/kL3RrXJe7T-&P,j`Uȳmo RmdY)l_r2 nhQO?`)6Cz[eХǼU7Щ5r"Di'}kkR,b2A3A!RGy%XY AZWZ%-S͓(ힿz$Ȓ./O׼4BM˪l^Gg2\𾕛D\AC-a8XhdzB8{D{9DV℈f˘bro+Vq3ro߫E63;fOڶlt!dX 4<d#󤏵~8cu ie $2{VA[G^%vLl%+{^ɺ--`k;l.=Hg"Pxc-N}ʨQJ@ܢ-:.DzM!-4޸u0*2̡Έd/bZs`i*=8+ ;վԼp}oG; gzb%PWl*AjF7.YPGt3kG2>]LTA)ۄ$[;BCE!+ jmZMa|>a`t`݇␣xIfM x̘> u%ICfmGq FrV dkNI5lo8Q4?,UQ3@19 PQ lK&Hw:#K3/sgiNKF(IXkO hASDV_lF]4Az<אMFi)7{'ip$N;lZ>l0Tvs%c#i-GK[UXDW0W1 ~ȗjr7PH'Zj\?4ۼsD{0㤻qJ<wv$k>Bʶ[2[ދsL@mYtgء͇.D3]V!?-k*54E/8-pȕ 3~. l2s:eQ.?$R{s=(ԛ% "#d,ibNeܯRŏu^#clf~4!M72= {)PaM?^VuV(\1_rG}D扣丝7])!~Sȉ3EQӄh/ Ҍ\R+Ex2ecU*"g M>_r)G pj<{ʖkA.`ʺJ%E^읫u>rѝ"zլ ,穃!B7dQn!jL1LG\0#x){!&f{VJU{+>U"cL:\ٞ˙"EbãqtUk T;1&Ex:Q 'vIqO&tiQ ۚk]yjʡ5ʾ}@y;.hWH:!d*f[Ae/MZx9,@Pa0[LHSn9S4a5go(@KH+9Kf#|1Kt:Vuh);x&l'MȚ \@D>͛c<c<֧|]E?zr0ףe(, As[X<~W^I"4tO?{_Kd)8;i>)ܮ͔I-U Т%T}| PuE8,:&02޲9i^1tYS9SS߉O;## o7XbM?'}w\yrg) ʿ7hJ fyć׵rb&-UΊneOǽwhM~5F,_r'y:? 78@B ׍C:4Ynl>ջr8D[K0Qj(3bI7j=u#IYNJh&gwH Zeڮ*tZwG_*]M]oO 0Cb=(d})ot hGˇy)~3|&˙ySPWwaFm[+rnU[OQ(Ya9PGjZ'k֙y}w^{J:Fm K<D_<GgS<WfީӽR'> j^K#ȱ_rvįٕl5T H0* E,jK=dsi?Fz%"M8}& \_IUȑx*-^0[^ jMkCWsY}mUA2kùqTu^ݲ?WA{׋z%&J5 e=0?vp+L`Yʎ +u6<(>}lq-H"8Lyp|ȫĚbkR=Y7IQ?|e@ާ]jI(˥nUkxFCVetk !V&y|k|ZvGJyZBy)&gZ*bCS0 Ǻup%_vѲ {*ѽ^*7kcԸZG@N۝g8ztLhSF޴1k⢶y{esl1^l $YBZXDoj`fcIfR3LC:B'(p9jvвfx(]}QafA8>BK׎i X7 ݽ$ᅤ{n(.R,̙y/#jp<VR Y΂~ϓ*a<-~7Ph0sIh,gjx.~{ð `"w"U_jD1tm6VY_{UktV`؋QT!ݑ 5k\͗wTF˾"~rB[4;O$R8=D=YE1p|>Evg9ˆ2G/'l&ܗwJۉ2m(!]ȃc_dRpd/)d$ <3,>wj <1(#2xƔ=c szOqϢ@љ%yLۻسd; ~.);F1~sb?)<Me:߉%),e)p*{09D''X,ybѴ-ntlOyˡ׊8!nTA󧬫%yvsxZ/ů̃h.2-8M}UUxMiJb(ջ騴UeM)K72zEs%[Od]M'pT)lkFJYo nޭO3dk3<2soYEEݠ&,˯&E@1Jb<r^x3`?\ gIAD#Xw[gU6u.W 9imWubߥUCx҂b zi9muˈM3P$]YU}c*Tdg=#,nQxޜҏ{?0 t͕64BG'V!n|QZѭ&+~ ǤsCw SDqJ7[AEVkrDӒ*\;Y\ w{E\f$V1x}[x)\N(KZDgG*W W5|0j5R_[J`!al?hѓhsȆL\ItXq4L.H=K3iˀHsy>pbs 2j]æ"-ЬϠ+,۔DጀT砌p{/Wg2R붤!juFB:8먪3Е1e^/NHXFݴobzND4Qٛ b&oS/8(_h֠ύ6~4KAeI&=eGB4#6ۧK{6#vVZ,"!pTX"JQu>8&VabP@d#,CtǒHCr&Ԫvy_ ",GAdy=E';?+cy욠'W0Q(ퟨ3w.ھ'kcT+Ut{-LeggȆY+}jxJ`0e (aqyw9XILH~2-T6:~[EZ2*7ua dSc%XI{1Տ&Ej VsyeOĩD|V0e%$*~_N$@1nҬ 1K3QG_*^sܪY|s U Z"Ŗ8`br(Ju 8RKKr?eJ3j4.&+lw>Z㟨TY9Ki&gH"_?~Mfp%C/YݤPƟ ,*o?$Xr@ęWIqmッp$$=R-^k٦)fNn] ;^(z? {Oc-k?!.[q*Xcq3|LC`_Nu]JSr.(~fZ[X7f88G)К;}^$ȞV=6|q×bb9b+E{|kw?fBv?Pv\blϩA8@s48ƞO6hO y2˞F0<#Q~O JĿ/lJ0xFmW/SA!,3F|ܒB><$^fx_~L̚,r5aHm8e/rV3;Jf}"0JYAI QAMCdCoۉ-ǒgZFǪ7Q=DH(\̩d= &OMaNnS[g>*>JJleۗ ZU#9v}v"Vf wbψҮs;*q޴ҐCeH3cϏ]1ԪvvnM%?[SflFSLAIo P$VJh\Cϑ4F>ȅgRSG!{F͍t's%t}y=px;'>*#[;o`sty%K;{ IER=V=?A79[w\ߦ8M@n£93r[|z@d>V*PWv<gK`;Mz|Vd![S@5ΨM7a65+u Wz=ڨ옣ټY,]3UMnÂt9Sa'5fl^eܗ؏iܯ a{zxq?`=&4&?ef1d+5lSn}&b5 -*ʸv?͸BJfc{ι6-ގ7EI$ BADaSI^1,v|aع)\ b[1>Ql2C ŀc`& 8YρGA)L}#c`M */'$%I`HQIOK{%{axd6mF L+z\m֛wzEi!]I@ޢ f񦶭/pI01*o|)zR*LÁBJ<6o^Q_F_eZ_zB10M ǭX//8':c6C$ ,~["g#s*fǩz LN.peˋ>џ![ 脗Lh*sѼb6VMB`xib Q`M!2_ژ=p|(4`SM@X?6BujnޕXɍdނa7ڳu# R%CgU(@t'>d除LF n,vٟ&Qst]P+I Uҕ77Zɸ@Ԧc) a@9@"*- ɋ7@u/ڱiv~ך zm;Fҿ8EAjR4_ WT[cPMksSSc. 'l)Vl3b$a9{7T 7e<؂|U)Ozk`pC]I*H>66Jw٫E줮ŭ͚Bl4CFpcMM;!o-O ֽL\ĴSF-p_pu3$%="DÏn]KYX їaD1T.ZZ^12寢e3\"zc~',̅nk] $M"6pO0ekEĄ2ڙԨdF_ڇ{N=sPa]Q\fXf?=LYA-Wq4XAZX7.|X`\Ğ uP ?}GD7 Q ?] B.Ԁ}B@lCM]]D+MxE5Bg)7ty\):ѻ2yR?C#,+Ny ٛ3:mhpFW}Y:MP200=5"^F?"ɀZMvROqkLup7T]V'm#8|~ % Q|Sxom<`,m>:v2QogQY9^rMkɄdV30*H [ncg:.&@&Żk h-kJL[ m$h5#! \$$E Aj;i;]b6ͭT~o n/fPc_3mX(afo1BfɷYJ[ kv.}]KսI|6Ū]ȼ6'G>+grT(d f,=+nrqQR$Qtڷͬޙ }2kz-`Iܶ7,x %g|JjA8^LZL1Fvo_ߵ|×Y.)>ea8O2:D3?r9El'He)|8z4(qhL޿Q*X|9)q齗F.Ol^x|["Wr$}=hQ@z;ረlp{qW u`vdyo1IhSڔ-ʀNѽOWwŠu23^@)}!晓Ͱ`$R"1-44w%?n 鳵{kMp [(4MsGe5Nʲ3Tk&r_PwE bh=V؟ ^C*GL78Q9,4gNTp X}4]IS/™TA4 3]{C4̇6 ͵ںc*SKŘz ,p` 3'C)jnx GscYxou yy8MΙt&VFj#M(esJO_bװ7 Ud^Y>dB59'?5J̌:̒9ZS_bu,|g^ɰq|s QFc5\lr { 'M谪_(ek^&NMq4hpLh6)Nb$L!"B"67RHËݝiGvZBQ/nakbs B@w{#tHc>д血W%oGUILMBsTZ9B"Du[7튧zHa"ց攀=4>g9PsL3-vPį$VÞ96hAvv+/۞wl3|"!WK{ؒKDǣ`1vp蓢u8u9& *t^ 4?\XO` h~nM]#%bos^S ePL8DVe{V!^z\<ޏ,Ngˌ Gx~:A(z=rzzgvg𗫧&Wj 7VaA5V 8|~!POs `޼k Yh@ڲ"W ѕB ܶ[ ?+ <@8h73G~g`LL8vԕNDֶϯ < {N`,>x9[ ӂf)^sui:}> oBoJ8;nY e1%$7/&a9ՋFaHN̫^ZaRǣ4+Stv0 +euːP.ej(F'nfMsIfau6T:f(1YY/]3;p8ځG` H`"^mݐmpt!s7_e> F R,01 Ģ L*|P(1W@؏*$MRa$6{hi)$ܗ~thKάx^$A{]U f? ,06|qvD8Q/Kƌm] :q<%ۜ$$rbg!!$K{x]ԬkȳߞфQ"΄D)[泯'A¡l)\ކt\\2U (>=ܲxuXt'Yީb7ђ0e^|P MI-Ⱦ^X$az )S~;]TOnp/rI ͷRȤa*GJGvղ'_Pd2z ƸHgX4PL̽(a5tjV.Bm WZ GYq8ԀB>'lF-}iC$5MJʸ>R̚x a/0=81#CQD8xz4)ɚnBݨs),@lǍz\mzDkfiΥE=  1mP,!Ǽy&V٢qpJJP`nbU(R)GAx{CvJ:B$xUe:C`J5a竻;5ڔY.N)8+Y΅]v0<HD׸U}2ѳ68g/1 h &RØAqd)E!l^ yMϚ 5u4Ll$WP_hBEɰDoiL34Rՠ_P EjPVܥCI1+SCuڜ/`n'Z=JOWYO$WGg:5Q&eAٵ00h{22+y.Ofm5GeDN}Y=UTB2dd轹0޸;4`(K=@nx>iEcU\Bjw,dTd` )U.SM{$*(g D&41y~;n  M:T0>gdctLɀ$\I{X;E<LL6GAf[s>tEjE(>AuU6!r]rQ{rKU|7 l@/לo 2FmOsdIw],e=m)=}wŹka M02_3Yd4'<6^ sT/kU3S~ ,=to_%j$iRo!E j8dn`: H}Ф#G䐷9C379Ko(TyQDzcbh.v1UV%ĕ^t7ߢ>thk%DAGDO}HzBW_Q*w?=}|`hxt7~!L +[\RшMwf=wD84'ό6K<'-pӐ\wB ;s.~mDKdcyʳ؄[,uW Wco=E˖ϰT$4 #qPt1śtJ*~u Ìg͸sHRջ--}6P('kp6 Hbƍeݓ c'dyR7߄S;gچo~'we^P:ӥogϾ}~<>01v뫜a]_R\ij3&ݚms#=/2ۓOxrۄKQ2kT}shu$PgEakE̾+Y>pF=iTS˨^4LZ|@ŕ_5b3SԆXB@Ҥ$ 2X+iN ^;}ά85(X Y?zzv2|5Q_uAʿ{0mC ]D]2tpn>ۤv!R$+ Pig"} (3CCwoM8 ^(vnO Z&U@~/T@}}KŜУv!ܨH"I5 z1K9<#ΜR46)L 8"Lq޶S_zN[DP5\ %N2ӊ5v"j aA%LD~)OEf"1Z-KLuM!i@Q~=er[y}c7|8K%ys:U}k>$%)=&25 MG`'jGӮg[*v'-p /RBlئb:O7k ǕxM1 VädƯOD HBc =DW7BGyQv[meپV$ߖlIVCPȟKTR JG!\gbl!IALt#ةvẑpƓ\*BaZ+NϙJԟO8ߟESY~Ȗ/ҡ)~ZoFItU) fmf/ᐆ*!wLʼn]41)6$ܕuK ?c(F?A$K 'h7q<>f8u{]mF)zFYD\5s-u&A-X >+3|=1^\jeGd2YҖOC"zxlw|V/: eb~07/?r΋&x(CrrUyLM/]<_7>~`cPڥc-fCƬ_989>#h~+j9^FGؒ^οGP|F7zii҃QA6 _I"ϑvJ}L]5S1lB0aFUjMps72:|V`H(^S bs`{Z}v&ϳ#aSيElJܶ{`~۫t.XӅQvްdwزNS$򩍌%}utnD' Fwtk=пtJ+g;=M5bwh :hϺiYr3@_gRĝQCy5\62g#w#doK*6s) #8v%g((=|R Q~Y4ur֙A@\dcvFYgΗ݂v|;ĩ*MeBnX/BWB~ 0`pY©rak!W` Gqg)[  ^+ 0ۻ%VM *A7}WݐLʠZ16$B4 ? G-1],0 cb16@{v$m9<苙@V-*'ZA+y,'Wv mR^tMzMbS;~P8\{&HgڟW׹ o0!٣ Kگ? )nN[Z61M+X>*?Ea~&X67e*j挆5q|1ǫAlۈA -Ͷq+t3^h\x;pSL4]2%ȸDاMMR ﭬy ,pSNor: j|QF,Qf.0Bz JRlمs٢|&^qzR{dؐ ?q&*[6/ِ <3}JSĻ%d3epsx}-l^pҞ> #2EhH[u(Bʈ?FXy"º2K|>wyQa7_[ydƳ /#:R5-J=LQf7 Ku(-DB+K{a^THхQ } #N)Q ' I)eӻlL?ll蚺G#Hɀ;_R zP ,0~CAYUFX)hkBQaT?mHIRP#Jsk bJbAVSu/{v.0x%Xu&tuAL V1;CYLJlɍY/da=4V#J!U'V_;Bؤ6YNB St)hXiSSR+A3 ]je:{;qq 3*Vdۦ|*ѸzrE3zQV[1O_W!S Ce~qWVc>櫒_#1{V &g^kUЇNs]9YD)陓<ֽ9]n-!igWQ+#AQSʪ=G|<{BVdB}9t-`s&/z>f)syx 8EIGqX37:<З"qpp騖0Z2}"cAELLzYWFпY2!pY9e>N-FJٽYDAG'Itl.='Kr=~J O|;^޹ :YohciK5FOK8AԀf(i7bFfn9Û7\B*޾=P\&U:r!z䫮 E8"'r{K&" ^EBn2'*^>[=(@T*R=1 tK;@9<{vdz9:nif_+iOsa) ك\vZG{plf |~]@s?@k©ڃhXo,A$P!>B1IH_fRɿ̚o&WSO09k_)0'H94ZCC+ s 6_2C–׹DGIq>+zQضr.->63Mci*;RByUP{M$3FNbPPwȻٔAg((GxxsWaf]aDϗ4چjl|#I 7b ]U5ԵwWR5iˬZ)؋ ҍwm9 ls*)E*RS dN;O ьX h.յ[Cvwr]s7}K$L"l}N^Pb|FP])DŽY{o^k97zVA0§>Uെ.=gBvp.f\Xs}8Nfv4 r2qiyrú3ϒalSHTM>umShػiHni[ FUOŸL٤vHF{$erS1,CvOQ*_?8©C6. ܎gH ^j"q{rEts~0Wu龣 \ß觲v" (*n-:`crFNqԳ5R /'o$FH+(Wa(babqG{zg]OE|B HW>(]6EQ-(Ztݑ~KlkA%3,n T fcaN,9" wHG#ٱgDAKaeɱ_; $0"%! d%O ^L"Fg3NmĪjDlQ@5i[rLMkt`[\\;!>7.XBQؖdx`ere#,_Ԓm89z䋻%`p ?)QڍG< a3Kh(y (7XN„[3;ZbJĖdqb` u#Hf ?nWA(4/Kץc6A9KŖ ?se1T@gd Z`}XN0/s ƿa@GOIߡh4<[ayPHC K 7 U`[*IIYŒq~{aK0] L<#eqD}h/;HL-k= Hyt(pbIEm-#.jR_&@w1oYkjX1|mXTLnlF/փ %]:Vz:,Ǫpc;zZÆN.77DP{kR" ?W@ߍBeҪj@g6w2EGt4B\c$/%-VpH9n|"P,^ ͨFߋ.fxSdzxvWklbo {5G|̹Ġ@VBMnjHz`${ +"(#^N n:4C2KW׉--z5~0@w$ͶZzٝބwdה1TS:3&|K:App)fȦ|gg5Md!brHh>yfmy2ԍ^sJ`$)sѫ 2OE;aGP28pi"d{]s?~eZPS1FS[~ t0.]b$IxXUCfrt·THwmmkg-u*3NyXar=NyzޫM;JA{ )XL Xh7ÃzXga*q  |ϳ,PG珿=d>< C`z]&d8P z}mD|Bot۪4R2/7dM̏?uޠZR}:sՎ9iQyy30R7eu*^WPMHj w1㓐x٩g]U= QB?)Ҫr$$T4#] X"%wlv$!۬Q݊ԕcC5V34vQx-p{?qF2jp$g/lfqQJf7f +gK"WЯ P>˻n\(iCPOn7R, +<"ewn1)ؒiD3Cb!OX2IrC4*kE0o0; -ꥄ'I=*>W]QG~] YQpR#5&`*_ҲP@^`A\eM , 9ysƄ5\v''~yejyP\ʪ~%ʻ0~f!Z 7ё2{ZZWjgAܑI똍 B AWZpRm$WGMŧl!*%}4-x7iydI@bƖKc^،/n9T gFڳ2VLv7fa0IN'iSf΀P7L.o +wZ/8j{Hwl~Z[NFJ(Mu r*ѩ&9O Ŝx.Pޮ&~LHgRƮŐc0BU-M!a``iю}֧Wx vOCU))$L |^Mң#ojSuF׳[-HմgoѽX'+>#)<1Mv<:5wٴLJ`+D>/9#i #*q|OD?<^a_(8TF-DWkΰswCtFhMYJGB3vrKK\X74n]?X] vxWٙY29v+LOrjjN׎4$mgSw0ڭFL&Tf;@e2iT)=U:hk=puVeХUVB~*Cz0ຎŐ!{mT5OqP?+P:ѹ[s{%>LWAn.z鏺e\vUIQ o:q]~rgN9q^`a!CFeUVD*APFCN8J$n[H^ 0hHVjOuP>վ/.U3%MHyaAi *p,'Fq p ?O'7- gܦGXP!ƻ Ōod뒳+jda1;ov,F7 hCHKf]QAhtٰ&92>KmGT,Gls;1tJa͏-m˄b"ēTrE"3OS/ W)gгDa>*:KO{3Fdidj*w F^eWn̛Ҧpl-a#IQ aBke⊢p(UŮ2o|cf9Zw| GZi)9AK7m7 \vݵzVX%uzPYDsH TcEr%뛢uXt5`W\ȓ8+q`+i,G!&^ާ8_W]"R{(C 9eF{ \]5BNS(zMv w"931skd-_/o5U'Հ;(eFݛuj1"y lf^=`T,PqlOS!Z!J׌V[#a{CEK0~k!vOXu!m$_?M3!ыC#!3\ݫob%-6JncQ6Dc[* ċ^2{,bUIQ:; "JO8a]F̔({}|CCBA )F T-qkүA޶C&9|BX=*𳿸ǰ=ۄ$ucerC`HmK Jgbg_ DmvJ XY<<5erq"-+N#F27^t Ѱ_|yg2dJ[rl@oW*aTSRTZWЂyةqTUV'0>ުJy}QIz9vEDc`}(17ofMQ!?vD45] z~bޝw]/{TpֳYxh_vZa{2Rn*fXԅ +D P1ݒ!h٪U讣FYWOS3etԶÏJKZ&QͮSv yK~ơeF'Lƺ$vR*+SgA(=؛.3=)?ϣ0bXmX&N.(FŃg2&ߞX[惡k +xpMfI.$"N7/PFbA+JH{YNޝwj $_b*gI x9̅m u5%lA%mG|,NLsi>V鸨͹]WPDf\jD|Y 8Kè19{qTc)"q9T]$ĄLW;`$UnG"G%r`,ALb`n݈qkJnP[*0<̮NV 2F]Lj7ʖpyg5z1}}2х $7'Qrj-UΞdm *F5#9\ak3T}/3חTN> -/".Fېprj)ujebo/!`zd0,R ¬^KAf_AKu#K<0a<"r `I#)Ud Bplqn3EU0 xO}v/X\ߜ 5:΃i$w$L*|>PEj%w(jLu%8-GW"='IK6Wwnjy`)//iMW`<0/&9}8,j wpzzp<spؘKGqϐI:*%-iƱNs ̢ @~ڿ|CFz6Ծ)l~f6 4ƫ{U\ =Dq;{;gtt A'=}A]ap F)>H g7'mdH8Ɏq1DyI{܆\!<*kyJ믂PmYHYۿrM"A>dA)ͶįCgΊt%pea2NּiIqL%N8$n믁[^~̌5Lhf{״YFD@yBp/T^n+f_A^,#[x_ %Bd w!8Ar6ZN:T̜[)l>i,ߪVJuB]3i-?瑥9 Y]<94x>CO&eӗ_F\ɄsK7')=]R.D##mckȕx&\u晼F2i$4P\,0Zk3! M Y8EWE!F_+{r#uX|C `*QU/t bAO퉓W" {udZfeDO!t)K8#5hpYܐ) i߷jep 3Rljyغ2ެW:m8 e<Pر`)66RH|.G6̋WQz33q~fZW*~neR^[ΛwB˜OK@V*&?o-T7N>Y|zb>崜e|uo%02IkTPnZDF3+Ԓ>rZ6wY޹b"Wlof#!"BnmXV)O?(~?2F(ca)z.J{ t Ͼ5tjYdLz}KBf3}aލ{l/Jn̩{c| VQ\1*[_m R!wuz_\2n D͏'Q-CYГ5Q?ퟣ? Uy_KR =ELf⺦-;3Q( 3kteh? Af4zx=+/ՄJvSbqM<˯Ŝ^@;G=fq\5y 4Ćf- aadPto>_DN!P`GĞY@@:Z9HDrF p>j RI IJrlD3R|j"~؍X#Ԧ #2Q'ڿ8֌^T=d/?;GDZ@Y@zM>s"]߳ʁ%Jge6Jb()j,-$8#O^S= _U4<# t%T'fl5Ysf1 ٓ8^3]OYMTk=htҩ[qZeQuܦ7hHH V>Ӓd=$Rˋ4emS$PF$fv—2Ȑ$ YH ȜH7EQזS6sɫ rᚩ}!iǴ*Z/Q#Qְ2`9~@l؉7}҈Yy3n#Cᾌ]=|5\*: $:%F_v;_&F~t:Ÿ+5;p&' +cE_7ߴ(lb)U{\!iASWŸKe0 |_вSܥNQ~a[K,M\ j2qfFә8FA1hˆ>f aBe,g,k[m_ 14$8rhJlW,GP_ߚBE] ԁ i>S^} HȽ9[5a[ *4}/2.4MŌڀ?6v00erm>IY͠yư4iX&Y,,UpHw ۆי5Gb` ,TΆMYu- ɿ>x&(?'?^T`=Oؐ9xly:'ŧZe%{%_L܉j`L8!|Q?(-+|yn{r[D)y%Wb +ۂ6ҍko[w? ވ'mN?8&͑V/Yg(GY0GTo.K7bNzT 8.")|K04fUFfQQ<$TM* I1аHJ^F.1h֌8 KT|$Ȩ>.fձ TfiXn] pkNTdjjwF\^:rҼFx]_mZJa>8Oi>b*rYUOfy(xo^WW@&>rUϣeV:䲬J`g$F1tKВ?WklKV(sKcVG'G"(`/o+8)yVO~!Ow7YRhbFL~/҃(X>و̟fYO-85 ܲ3 7#%&Gݜ2SHC{8 c0.$끲Q= O I -f2Vh=[vL9[lSMYPQe PϢ3; <ްB`!+COJU'}+kuk2is w˕aO׽ZQ;\|҇cjj?M_?$d:LHq3&S_Fp&Z}g/ K{ki_ f'(Edm պU\OvSX\`O:YIjb)&_|rC!̸drVRJQf3ÑQ6&FQ%C2+ѱ?bbo0~h}o Ӳm ̔ +-c. fNh@ U&iSKi8Q'F.ެ&WkgwWN4*@J!+He ?w@Opcp K[1kW F^b`} (v cv-}H$]ٱՉ Ln@S$χ1O`V) 2Hc1fJi6TR h1LOg- }5O rEWDMJx̵a-fV &"Jk0e1K8ZyeNydXbovh":K%[G;b:n/SGAu,Ei=\yi*[tS'`Klܐ$qD@r.Y}O[4{w1N^wnU]5J0^U:^J|UVes { Y&?6&@Mכ դhr9GZ$|!@9 :%oDu (,Fi[&G6rgci2[=٭;nxXƄp*I/8B%o9 5fIճd%›T6?eWdd;lW7M $'e墥~'j(0,ei r`$<l#}'ބ.gnIx<6U0H^ k #+vio'rWTTʭ8Ho/5ZC]`TdAl_iRzq><`D 'u -O :oc{̼K?.{=ԪT 9vC.F+RĞA`gaQې.Tޢ|\pvIMـұz{Xك/3=m ULDj8e)w/kׁ}9o4&x?FL\F a#uA:}m?}%QܑaQ[@6ǫV*X' ,T:mGr>:VقJu %Z1~:nK~[`r2saYyբ*%Xv "q53b= 6+8c!U/3B*6qBi+*팓Lx?`|8D77r+Sfa='y2zMMɔ&6FLLD͓ Kp˜蚌ƞǵxHzV)DT9uecSE]ߢ0Z ;.P׳٩e&g[G䞽̚amB6t~4Mw\ĉۦj $r+:R#0yygB`sנR&:]fw(JgH ɼBnBuct@PˏF/#PU;&*Cޙ}ࡱ'~} ܳ{^{mhRo!MFiL:-hdtQrTE}Oֶ"TYPQ7ג۩. 9AĂ`9k+vЖ'vKRUE_HMƌ}\†z eu/U?2j, ׈7F-- =iE*o;/͠QҔ}˷/jgfWv*PkWe] (J<`*"OE'λ/Q`pb=l ]KB|6e $XwH+'E?۔$< ?e3P<A:| Ρ앍D `by7:dSk]]$X(Oh_(PgrOYc* fō!?V:.U#LMCR^,"~bx39^ t1pZuF2 b~lOK $gffnB;"0ŎfWN"= 9~@O܁XuL]oE(_5)FbC~vXfUCW|OmCcZuwe:C3 ޶a鮙Y,\4: IJ}6VOMJ1TQ9#Խ_05;YsC!BA4a*<^.-СfyBԬV)ja85|@'Pq)y !s=$p+h?$IH~Fg`ec.B)-"` YD{ʹ[=G#j?%.]ثK-~.B9=גVĦ"pYa:,ƇHL_L wADWdE{?4܇r [!ؖ3r,EITEk]c8a9?}@M⿳So%fB̧w[o0#Gd(37ml[Eԃy }X[A]cdT kZ/wpğ!DnE$7pRnj(/"a @&BbQ=ՎYD=.?̵cnڷ$d j}~AT^K^'im>; pbs~nDXL6)[`6!頏2!U:lU6=/WE 6_5(l5[O}v~ϕH|Ԍ@DAC]M43ɫsL"+d퀲l6=Kǂaj.ʘY0dE|P:Ǯ}pt(,YiFi1W8y?1QU== Ge6K. ĿNQ&^HlLM5 4i~Ѐ\í]4cآ AuQeL X^͋-#(v"Ϝ(- ~>JȤU>rE %|.94fLӉ~FJ~4c=FL֥<ǚ!=?s`H.B˗BvUP`G6>"Ez?Ņ!7z9_nh[}ͥB۪( !IߙѶs #xQ_G޲C/!̲C/Pu؞ʞ7e+Pu 0s{p}1l \"C~4";\7~ߠ9o7X9 @Vn9SIL~ ,0G,kbÆDtxvv݂솦"Μyc3;IUxQEh{mOeZ+Ww+didϾ6-.h[gHfѸŢiŦC'rjx?iwH37ȊR|L$&t8l {\Nȕ4 ԵwICM:bgOqM@cCl;t}ۡoBқsȐ _LY2%ǃ<_x=FFPk_蜭%fHɰ< g˒jR )9tXkı} !ح.bQ(zՉ.^`aKJYa5׻ ,kzn\q'rI6 _zcنTS>P -!lk\KN#\'A\W0C}.ު#e2Rd쇤>@A~qrL9r~K&"ğ VP+A>?tI20r8n8"n# 9Bgt'GnU3/ i0P# ս§G1EW/^5V!]D̟5.T*HR$(+2Lc3goݱF ]ʓ3(Fe|V/C&wݞu).a XzN"(QˬyXzdb9) =t};Y/aPasJR#ID8@4;[@\ꍮhb7}{E[M LWrU ghԕ#s31H1g 㵨M ؒ祅Q};XFʄXf=^m˯v=_V{}Vl08PÒdZ=ƚ̊Gv~p-ǟQs9NZa. =˝h',6)fiu,Rvlw=KO 53PWJh5mOxcgENr]R^1wS)B-h8X`؈Yr3rNBԑ*6XSjԽ6LQ&!m7_teaٳBP(ēʟpfXy^-P76IƧN_4uBG!Z0rkro?~1g#~AX6#+Z HJGa#@$h^Q㵯㗳oc4#RlPS= *n)+zj a BjZn0@n z>uHGi7U '^PuRF^ 2N,{ɞ%=ۭyg\<¹^eMN`:JԢ9ZyJު+ wt8><9S:R@>i]xPOgOħZ9#D~mN>:טO2X2m8߸A8NjKOg'ӑB xy\] Jz44_5)ږȢpRS(,#BO f{|m/n!+c*,\e -a([ ^ DZ̆έ t!`dyW#y1apxarNĬY0c:yt_WJyY$z:XZ4l֧4<;;<8p?+VH5xvPxʞ\,Xkj9VZn~tGgO 9J!a2!O\&VR)F_*vZ1AlDO7=v*-%3HN.o ˌ/]{8i96te%-*T#OƇYʒtrpfGh"1DBrKޢ*>d^|ZJڒ15.Pr@YCrʲu]Pd޺:u Z.b ̑țD܆͚[0eۑ]#g n(zLLU +fȬ)nDڳ$@p/&^? e7QS;R_&U v9LiR:O ΀A=kzX&o^IENf1[sPԈak'(,$rVc!@nzLnlafx423_nG"5uCB A p>яbnm!>DM`{UPvY0QӋ$m|+ހMtwJa`&Žϙ/RNo gdضFDc}6_6$->povqԇTC|F k==  l!I6㭤Y~Sg"b[ ft.#RsXL{v6|l.G`d2'@85Y[a`^@d:]f5$0DJkYTA7o?I f/*R&,@3 (}:qƀ Qie޲}-)?%vmc0D}I nfc u"XޤG^ʅ-(|I:_ceމkpSX:̢xR1G6ejJ&iB˞kwա@TJ(K9{65Jg62 7m͌w\?Ƥ^J6vSs+ӟaR53qzK'15:0KŶk ߰h1R6z.2Sˌ'Dt'-pXG TSa$"WbS6/=!Na4}̤Gn?E8_J0۶685 hcd{%q,}%'&Ȓ2aJB*NɆ<9M7F6b+nvq*#cp(*Ԭ@ޗJ1K:.XIANM Xs|[&-VD{UlzEm^#M^烵InG6+2qW !M]+ G}$8'wArppN\edHT=plʼ=XP?6Fa IehWhP<fpݯ T:O~M,##G=d[ kalī)tt{*0ؖk$vO5ǽ2mK p;KgPTПI@Tm7<_DtĜ ׏6Jft((n ~m$c?:wd h0qfFlKba]@zvg"2fVjO,BBҠ+GLVYc0_s&y3@ֳ-PLc>̾aaœJ:cwXU"NQW$x6? }qvF0Xqk+jKS FyXՕ6bOb=.&p^#v`ZHvy>O"6 6 .cBV,L}G ^ nČ3/UsS)$.dbF7J|U#۲z|xXA KݗKfoۦxGSo œZuǥ1lE=7J_K>]vWۺ!(Rݶt=+3`%i HE'oK" M4$.qn #,َeW->5 12p( 4QzVZ,Л6_K UV@[HPtT`}X(%'0Wl͊5˝]4A>% (<Y{^1θ}Үcܙci)/T NqU̺z1^}g}9_jkQt5yfCcl{ [-=TJ[LWx X V#eA{^X/ڶJ +mpVMW0[OȎ,Rٰj=;ɨNrp?1(pF6.D-ܧ PMX?R`󮚜SD"j6Ciץ3}9R A_nގ;{t)kCrmLjvqX~'x_Z`oV/g*3LBcWEuerIRWK~r71!6^ݡ*M0RT|jIW@&<;5_G`ɫyv`IaqPچki";dNVToڲ'؟#A!AD3_QL>YJ:ZLvvyaFbeW斂nE~mFב^G¹RHRWT)+̐eJɽNL?nV(<ӈf2Dl8=&Kܷ x,=u&W mUs4dRe멊[R`" VTO]dEd2=E Dž#uz}v4ҽ5_~'@rh 07@!Ω03qm~"pVwzCkOg|[92tEa6 ,M$䞹A& &ASI-Ux&a8&Đp'#- CuAL<.lgx$@daU^=s.O,73E%@G\ Mg=Re2EVyco=f,/KJLCῊ>]:iS M{%UW I^v}0p̯4Jh #1i:Y5X @j'e~)mNZsy)^MvD`{V믮ie;QZ08sjWkgY*A0 d4)ڴY],)3CYēm!5z"վ{λ@ͅGiUFJ ro<'ugބP4z4[zO!U{ F@gڐufYܱ۷7-QF\RL7z<*eLH g 6WXyݥڭi<Ya>9g Cը׳2y2b<ļ$Iױ09]H./80yX8qcBbCK- ERI zswE5&np㮘y5+&I 7"#P<ɽ;><,HWlOti3h'Tn2Q"y{!a4q9SSItn,g)9;ȦPnߕUra^>g s1j7Pxb,­toBx )ko72 }aC?~\ϷCB {$R t}Rdf][RT#T +lt^HgfxB#L\s{  5? ~uC,HF+h[.k)"mc5\9·8/)Skh>ꏁ[4Z_BjG̔5 ki_KLk?]|~ r&jK~ +#ERQ %^j"3b ]ܱI=Ԝ4XT[V,y}LVNiȡZfJFq'zyN(D}g,lK&#]XY(n;!?y1QѾA #L48'@b|1Z'TrGg{C#Ny}0a@a!| ؋'S߲WQ@z*9X$K{RLF(3M)j2Siu2vua:FSi=]"u?*d wͦs`MZb5.da(ۺQzrxYIe2YdOh Ta:Dʭlv&^XPa8@ǰF ;mgEcj,۾D|b s0 K%PzyBWTtod\!T.wvTkϒڠG[,֋k!KU#l7G ;%WTO2+#궦-`/ԍOyccC@StIzDbz`QMvm`r;=\5TeeO0%l.rKL®\-%nfDHTV؇7ˤ *## b?G/7N)9piP@E+*@3/8=We >BzA9/gUSf2GWMR9M-8]vDF;Εry?°IJe43<ڶQ>>?A5Csd{fx)NK Q-)etĒQ6Nwc_e g; jg Og;ٖ0$ׁ\#˃ BN5DLxBpdL8oOvt(OEY(g֐:`IfNBUpŵXmpT,oĞPި n/+- R&$Li٦9\=#Ń>ZEg]Jn6 .lkQIi)6=< ZS#]K("Hܭ_ABpH^c./?ճ*SkOe 0NH>ӅNm8lAyZ9lV)3Z=>bV>usNq<@Ƶv>kԟ䖹Y5~jaԦ!#I253ע#iƔj#:w FB\ovgWl*U!虃p>z2NU?1@Q.qcz!=`өgxGC!PgۋFiQyRuhݲv]'^ &OZ3r?R1E'#RUTHNbqXZ <:I EC\NilNtT?vO=%PD&m}@ެQO /`qCyL5ԃ^1/1 } 1&Rb+(vAuELiX% ̘chGڲc-uw4XP̓ FAQ#^.ǔbp}H`M̒|\H*M l>}n k LLԴWP8 ]G-a HYd%rSV!}-90ݴȔs6!]л1;`6bGXܜi{77')qglQ!cV)E8&+vWf{'}ꇶVO47@}E*lu`nD"S/zK4RM]z;}@rE7ё}sw#FV=s=%+O6$o YP ?q 'rL`=GGuxUSLUdUrq \h*#VR~;:_fˈw̰ߩb#gc lƽ6AM!ymq#I:WbDl+Jl]F``S^gB_ n_iS11V}V;N@F EOhRٽ) u-ũpѾfI6*T}khꋫSXH"ׂt =nUq**~WX 55vWAۇ(k?RLAQEʮzQ$zirv)~&-B] /H;TbuP:Wn-B*l-QM:IݽmId g36FvO m6w╵c*-g-)߱3`:6ԥӒ -z.x'˧08x"t:!͵H5; kIޕO0ǡH27J*4TA1#$H,yliL:|"v^A{\P>u_c!a4s>^qFP2qsգ`Is⍏@=)L%rYs!nl? !&Pg/L9\xxJK= ~~(tavMLQhJZǵJ<. ThڴG!H*‡.u0BĐxm.e ؔKx׌%Mse9Ei!TU͍aQq0NyXsΊ5[N}ZȰ usif ;}w 8Qʼ~jh]Xsk2Ƶ):Ǟ#|6kDg}+KċbDNZ*ϴܕuaKKOp(.q$70V=!Bwa d&+Wwu6 QplS˗k1K Wg n̑ {*Ld>/׌Ktq#2beao,IeX#`‹>O(1haݦ v\[①kBN%w_"Gmۿ L_B c#q:ml'/ dgD:TNMB;p 0d%V_#s_,-~:^'o0Z~3"LU d!h!WQ؛3\|l΢ ζj̬g^N;5 03* 'Qcbp:L=b7]%c͏Xwn U]sfJ;,MIqX!q* \I%b.oѠ:GE| zYߤӈ,rgt]c"#o )]dP7$էT=*ΝjGzfx%k{"m6T7޷Ԡ]m;~VMj7S:s f˛mfĬ9R tK-hzRtXI uҌC)M\~'z0}ܺ1'H3r{6mp43ʞ@^z9CwB RήUV^P UKꮅ檤zZӛJkSx`|u^/]7^YA80u Vx/4efhdVٽrì/wYj? ;–$7{7bN?< 9BF'Ԙ5N%:]u6rDD\Y'Ȁm/h_R1~d5pN Bs3qt P-\8.4ŊƋ% fOvx$My$,7Z&x '`zVƓ@[kIגxOC.0Կ%.l>tvuJ9bՙ%;._aUZܪEc;bڋ:7EMG`vVgs+\jFQF|DDighZ=@/ҩHҚ4Vp1cSHy9I He%:n?WN%[U҂( .Lw&ySKcT>9!@O6fT<𱏵Gr=yW$wCߘT~UYMb7/*T>͆P V_ a8Xњuc$\-0U9׊Vlw涬 ?w[= )3R0 4Tٜ$0 8;ӿ,^\vA}sMȴ`.W =ݓ 6]%!1A#8{ 7g=~^Z"KXeQD8`A.oJ]:݌p9y5bF`J &i9 ?QL ]D6GpM}|:X+^>Lt m$3˖bvs6%m0)|ia_Gdv8^}Bcv衰_[Iz.s;j/cR~6 &k.-V-$62piupYtOӖ>^tn3.X\ l0#q+[L5;S~hyl0tZ]#K즵[eYOۘ$sAwev8˲ ʪ3rE(xbS똾ʄi`ߡdv) \} uvNwsdNl S=߈)'N ?ܑvqrRDJ%˻*kTqt„"O%Vnx(tkjx%!K\Aprn \Uߞhh}lW%IOPYʜQ`UTSZlQ 0 6[t(P%m]pGWTcx[)nVBx@ԥb.z5Z@P%vBSsIe5өX+w>]eM5Bǻfy/+~(,(^~3B Հh YU)NlQ6s#8ݫe~d9y KgdS=[AՓa%T T_d1:qGKT^&&ק$u_|5]4Mz/L>^46+ɨjxmNܪK% $R4&skoT AoPwyLI$8nrFxBO0>8.~_#0Q:尊9*1=r>\p7MHȁ8jYFBC:1K9Z$R)]h -,ːa{:I[ZchQ[P8ӷ_Cy.=#F>9R~7~X,mLut$qKƥn%qAj&d\mϮAhQwzo˱q˙}lj-E}Op>`,}Щ1G,Ը4> fe~0~q1;JZx r+c*\8rq t,3?/l3~9!Y͞Y p2./٦fEp5S8ԗ(GZ%@ PˣK-&_'te0Kηe"9,S`#筈%s$HJ&"œX;QsAn7r-o@KC\u]M!TCnq^-Wj*ZI!J9u{ .|WwRVT80we~HI ,/ՆX"ؠ9wRn'_R9pN7SO?9=6rrrH3.p3!=_.7 ^3Ӄlݦ$%gjKvvއ㠿4t{l'26wKOW*+OhbF;[V~bW'hW8.o<1A\^O.2R7=~*F'жU0qg:x%`He}=T5t,fܴ Y=#dD.{|M U Ӱv&VBY%Fy4Ê2:rl'?3vbb9+bƦHB3XW 0o.(}؀~YWr (:Sny'LV SitGB$Z, .r:#{>a"5qodhڃW|A=9n0FMXW˳ZXWa.)sgO+tc~5w\:\%1i2(&()/NMez2s?6bkޔ0 ј.MK>)qYHsXAG"ɜ4r!G*^qZ^i*ҬqLR-Lo`B=%}2 k"^,)rhuBHY^‚8MÎc=58TO<TE+XBX+??7w6ctj!@0N<{I7}' џ`Q}Bpީ&.ayrFs'*vCu8umekks('`H0A@r#Vg eCuXy$-U.9鐀g&o483' 7-C خ?F~ctC<}PɧjBja;$N^be*@k"rއqj4C6ssCl3|f)j-O.|zJפQ J*BFmvAQ<=UΟ2Z@`&t9ΞP{rvP87_su*lgbCYf@hj*p&lLؖs 1ɮ,E9䓚/տ:de˚᧔s}R7VRyΖ7}U 4<'Cym;ѓ9<)S[@pt3.b^7teu߮>h`d>r)&d+.?g"VZZe8.+v/a۠8ycl~0V,N鱘9ϗ:u.4I=ه0Be >@Z_S4?£NnN!T+l;Q,#0Yx~euu^¼Ӯ. 'GҠ_`RײI(W/KIT(>HJhz#Aq5626d˸U.I욕;gX w:D`v}3p_tk"`'b{%< hշlx{")[ۿy35-L`Χ=K[6SY<`IQkc=f?^[.nd d' /''Ĉ?/Z yYNVfBCׇ1^wņҗAfY٥D[$H\Jؽ4=:j;ﰝn\$¡m:R\DBZ _GTrxӉIU,pOQfWgZwW\Ǿտ$W${l*)ܼS_G~+@J$ɏhlThvLOGC'n1 ո}m :#ht0DFj;*M'.Dx$ $Uo>z@LBX*MӤan+}1* x$ F8טO'ZwSRBE r˙9e[h e1^{/ =a+9.IXp,Mi lCM2EA8 veiN0.1pNh̬+7,d#Qvde3"\zT(eqrO|ޱ ?NPEԆ )Ÿ]&N IadaC0_8c%-I2]? 9j׶ҊOOlA/$2mI0+_IGJ7Pe+Z6$KlhE<Թt8zƕ;#$z&z&ynQdmrvMaȧޖݶ-"ʜ;yD$Zam~]IRcg#q.z,p%g^lЄ2t/Uzl]́1 %Ql^lCF39pt Ь'Ă08n_Z |l:Әݔ)Y-}v/IBiG`"фk@ ԞC >e xP,'c[hkfS xBhMFY m?[o Y}Rfj.KyC^fVx ?RKxRWQ1[{2 E:eeؕ扫>sGykY*vC"$( 0Һi][A z8]; 2l2wW#-+j#f6I/чJ 7Caӳ4[eԞy{vC_u;s_mNSV|0!c,$_!H; ruwBdӐ 5AD,fQeDckGL!0$JnwR^mO>sդ>MCIXrv7Ļ1]YUT׋~<q]ǿӣEɗQLo>W6l-G*&H[򤁴~1*!>`O-9Aflr8(l*bBR@4 OO2D("2\Q38 6'z=A4,5Hid%]#կL%y]ѯI(+.R'_X C ["|RzYwt$|lcL<1d_wf, 哩 ZS1VL8͎x(1 :iw>\]M'~xvf,e ?A92}97H hAc$8a ­]"S;@Fy:>8y8G-MoTWoΫC۬Ɔt P;@oIЋyVDaJ6FDߪQǍ~$ ˉO7`u7vd̓4o˩A=u%ZE~(::.gvE]o"yD1a. qxJٰC%dkD bmڶH!] vT8Y?(qOjZd#COq@-ʆ3-B{i볯-zo*MtPZ-?:B7`*;.XpBR^GkC0mX$3O-Çq~ٜ+W bujǰ(6̋O4{-^HX SoTwI{ 6n*[-t{I0 Ow Y ?OQٍ}|IU hqe@wo-$X δ// cVY%e"mmLıUSiNz4|Ϲt qU A:^71N[nP]^Xw*M}V]ƀH7EEخ.x-(3n֙Nl ak+2ڂ*bZrOͱd+hx As\Mp>5_gj0jӐZcK-d 5oaϠSYiyB\xLCb?j%F~9/qPR]Ebj)o bڜEN7 _A"5uJK/G&uZzJ[* [1 C nEWCͷ: +5;?nipeXE`RmNvbm5# +{o>}b fvcs~T!$eM?|>5̙KfҰ;NT ΨVk3eľK6JjAL)4F<_tnjSG-"JIA5T= rtHdޝwP{h/-R0XM=F<"E"(3*O"9C%1:2kQ!Yi<Ÿ:;'Oje{-RU 'LB~(RUT5 d!yKϨ4"8Y@;wfM*g1Fhb{jp XL@Me {[.8 P^upaٺxpDa&Y8 <(-Ծ]_.E6^Ghɼ`Eգ~4@"-OI01p:{d¢}M+r`or6߰[Fm)Tg#a{o#)p'tZFڐզ(TőG<%EvJq}g "IA_*嵌SPjWgV1,q}mkFOV zmD¸$+*M*'59su~ht0|Zlw/5{o(a܌*?E%  ǃRΙ@P#ΌQ7US+؇va=t2LHw>Y`P D!buy=P'LV j ʫE'o iFNc=p8:];v9sB,k`nJ49υDq>*x0K/̕>??EOs-%!듰g(Hz$g417n* ߞDdgH`Y <q UĞZh.#V$%X keG0[u%f-M 0A !SȀ~livJVp.d>f M6'Ӷ4ŭgǪUl Spz7Sfaqn9 J]vԧH6=D@Jɥ,imm2agmS@JơcY?ܗp&]{lsY}sQmV}M>IŮUj7kq`af UGm(x^ҵ+ m5z&MsE]ef.g2tG "GM!'=4ͧwAE#r"`mE WDP*dџºp+ +Ayhdߊ `6b= m<ͨo] XgnmErL U%rԔRz/i\$ 7Í 4pN7\=?[] ‡@ؐ=X5HՈj~vOUn,Im2Yk0ߣBy(Ѳ0" H]MQGŴy$iD? Y&] Z{+g v^@ᦐk XLVLc^rj^ɸH,iNn?Uغx ' tu / 'w<\N5#sƨD;1ᥢdk,p ۚUxMC Hvƍ3{4фgS/'H fXɛ tRzhwvC_Pc}]Ox)EZ2LM@ӵQ)G%h=H`1Mb/2QoձLw4!@ =^JM9=ߎaC*pϣ*;Su~fZKhݱ}MhGVofA;uf5Vn]z;<4._\Lܛ_s 0"Q+b|h|NcUb.EҴ%zw3_D܈i=dy|=+&UV-HNå ir7oCѮW/0~r8?BE \~A&k=볳ru\AwHU;5dy "=7!I` { _-G/*>^һ#>qob#Տvs%/ͯ_p`yIN\-÷B9!G̗4l~u֡U|85kֻd>IQ0gq$PiwZ%&AJ12Iͯ/$nU%EaIE TgxؿzK'J}IXw<)~_`G1v+ɪ8'k 6p(Iqз;4aSQ7ѕMҼlO;52^&OIfEwEGk=B$R!qyBr3쁆YS(]iK[UU/ԌcUP~ fV`4s%fLe:~0K953ҟ?RF>[_AssnH'[k؞E+uX:ʰ#i=Z% JG+(3sîqvYڰZE)KC;W zc@9g3[u2C P$zaR41(p55TLpJf/(=Ӈv{#X(J bJ7ljAH>b@k+ʨ4MÙ4EhwO>m t=;L_|$y6l3,ohp2*_i0-0*z_v,1u;'6WYIo؎h 8_ƞx+E1lЯa٭J( ݤ=OCέ<ߖq2%d [\yaA\Rvrlfe5֦t {[.ID ! _dӘ+s[8 t"Fh] sfP;~"W0zD#>¯%3udM#u蹞E׹o 9zTZ7eQW)3$eR/ᇱ's(kzITNa`Hy&>y!ň9ٍmhWVhh7niL(EXMZ6[cZ.g "ed̀ cQT/A|nSiǕMc|R ״U΃#לĢX}~7b=rjpmO\Z1Rbc9B  FGUr@QA,"YQn`iHZm̛@ larJUvbҀH6֬瀓gє䅖pXёSlW҃Fbo=k|{ M>At%v8E>yn+KCàܴe`W9_4dAk&< c9*w<gunmag4*O_P~,(*gNȂ?q p3\Ə O?ylLY'GB+^8lOxǗ5 GHý"|!EI4*KQQniŞ_>LFC 5YMK1ԣ1C`U E;3̡˖ԯcD)oU:}Ki=A8isՔ3m'JS`gY-!)K0vYe#99J6/j1Ԧ&r^Nd/ bi1 \VGEP?u{8AFqON:@t;f u>>f/Ǝe$yH.h0Ē0"p.~Eĩ"(E^~? wџoC33%~F_V-;ahb.!un3E}o-]['q|zdA4f[E#2 M_{cw+hWE2Hr"88ph9f5)j;wfxM+~M9k;i9kmj ٸ`$S#H7Q|8h*GI'|N{[Hģ{hIО &Kǐ ѿޅO|N=/KdzHuȪkF-Z xAL=0O՜0 \mR9ޅv$7@A#?Kt> 奄v~F~g2YxտwF2 +~Vxx"ij Cig0Sè<ή/iq67&y۩?NFʡY ߿ ZEdtLI!MGD{}~ #i!F})/d|Ы/Waݗ5mk |x;L<dt{l.`HT}b&\n\)4 >KV2 r2U w"q?sywY^iFfm+K7= t5c\iW^'㛲&:1/Һ̬m^%Mty}4+ U`,.Hzb9(QskL)F/)G~)sb)['ІLTG&cZhWr\Em%cpQAK^/f $9SC/LY;=A J$77٘bYkq0f{(7H?>~na蛧!@>d*ym#L( 8'H<GˉÍY[ >|y h5?IIY0҉v}!Խ^č΀y U1PnrC)v>{.mK7.^-9m$՜1n3{ P&qǫ1>($@Y'ar'=nx7a%zPilzdg`$xۜ]_p @mqiKgdW1.=d_#Z7u!sD= @@my4˦C`TQ.?`0p#`ɟGWhrЁb藍@9Q /ЌW>Er;P3bIt@/+tjd؍7jOxԀu`i-#\7bGG6m#vлh8ioE؉t]36m~0`h>1BnRJB$jr# -@}?Ϋ^EwůTB "ֺ?Bϖ !JfhKD/ap VktO7n+^X緌ʃ=OY K!L$;s 97C2 6?=cM?]eg.79L 8GH~\"C4^]f:X{RcG?v!r>UqX0Khnax02%b,CV+#xKG vdٰaSإ U=\&gN:B|ǂF ,mz)_H"-`'M [4&^6UKń=zw:1gU:[^*n 3`6Ӵ/U8;Gy.f7̉!f?Np C!&k HGCxIQ7|{(~^Yp*Tn=4$*'3n煐N )ʡ"oA]Кsp۪6Z~V -aSḬ×=is(#PD>#U.U2Q6+OB@oV7:SG QrDjj#y8kB$)50<:c=oBFP4 X J@E`9Yar9) )wI39;mÂܦI=c kXNrM=TESڒd!^u6؍&A_ާ^v%iᤄrAz֪r൦x֒84U$?:L]U b 7/䤱Ty a"IТؘ8b!N=T^68<ꪳ6?eW >kK\s\`%t/ -'>5fךa) r 4k\l}#&Ծz8iۙ/ 2O٬v딊zZ 8SB1MR]/M2ȵz6PWkZk00T5 q~ 2qO.{q۱HΩ؇Q\%t딧[1-_ȃŸT[D=ɜnzu̺Y>'/ŸEtϦhʠ" FT5fI&VJ!%av^/{F# *XT^D/#YhW֐VGX<$!;>=Y1j7y, pYS'TE^N|HFQ{K+!kNY+LnS[GBE!]p!Rgᩝv%zHL(0{r5"<=ہ4?uJ~?,G;-aS㺹 4l܃ee)ťR%ȴt2f,֡D2ӹќ0?{ pqPIkfBӚ!G@F'; bAr*I+~Q-@.Ԅ!՛h7% aOxC5r0QN1pIdyM4&!32>xD}0z+.鲓`O-呫ݤdx$ t;{&h1\ E3PVg*bPrXSdR 6Ǯ!SC[4hĉv1g*þ "oi($܍6U $0`U h.>692 ?~w k CV12w|xWhm4.a@iqZ9 0 …@-ݔ. ދa4VPWW'p:%[ZJ3VX@{UAT }OD FB_1^`_m8 '&~]kVhSlfP_~=l>˵6[)AeVFAh3DS~2)/0, a*]2sgMvg6FpTG.ϤG#{M1z/$< hGKj͙n'sg˄r?e(< r*C @ւZE}ZgAu&H*̸Hr^I'LchR֙(ÈTI1=$@7#rR :Gc3*˞pOX@.90)SBW!kK[ >mEƊB/ƲvyB~~%U )ۇB!&wYĒ=璒]dt^O>{I("&jkJpVN:*.ݙtKtݭ #$KČ'{ϤNcFe%W%3;+eh_s \ᯩ4(RT G#*cO1iM,f<0?X+}? ˳*\x.M=䇣;c"| bݭŽـp```TPVQ UdG<jv^bf$xߛnF LcGKW#"&$;Xy)qR~x* Qf4ϵKol+>oe3V=(BM~xhP*UΝڼ12nTH)@DDMx[[SNمڎT1-v(E&ꑆK?T@*InPM \)`gO'kaԔ8XKC{ug|^'1a_Cn k FIC Ne[X6n"WC5dQu@w'՟\OV1l8WNTTF`Nj-#,sW\y߱iD}m =3-1k7w2Ӻo'P?'P(~wJ35/t6ñ8M _*N-;͎I_ߏk)$XSTZLȕ:*:J@nBA+{*sF: ,MF#.Mr>!co877K.w딗 sɊACm>o҂Ǜ\D)yq᠐.E$6̌H} \J? 8J9o:| 3 MN1 YM<F2Tu Ni.P(Y"HK̇*|0l~s]'dm)9Jz`醀#9 Ϳ荀 ߻l1MˬI]ݫ/Bxot.SPa̱9q!hA |6MSB8\[x\SE/ۍgDhoŠ"hdAWZQzupܗ'Y֊Sc}~UNOdh?+ՠffZ-$ dj44 i!AV)ܢG9ϽpmP_uKLKҤNZ1]UJN{]e%M*cCjC]&$nӮv0',HnNm_􉳃@/(ȅK~Y0*}n< i6%MlcXZ(A"SD)\&⍥|sM5(rZ<*6{ma{患SFS'٨ՃeDQlƎXy#J΂r3OtF,h KDeU85蹁h}(.K+ ȆPV*r׆{3"q<<?҅K{? &U*|k丽Na%2v#gxqH6+w"F ;P¦O.ԣ9][\q 1 ŕi~/tX\Q [32n8"&m*yJe(fR M} w qM-$Nyv̘h"NXʋC>IHi4m]65870(EГCe˚DAc9#MM qfkQ.u:s..EwaYo ?>"Klj''b- !è/ߗ=UaS3"񡀟ф~Q7$Jn߭r! 2ɴv~o_a6_a@gG4$~s'hplL> IkjNfU o7XcZcJG'K"<#%'>1 HieTaf–'jגRCuO~8GdHc-ӥv#or<%F*c?ypzD8*!}f;R^WDJXޣ Z=+clE-Qt۷ua.y8r??kK#X"<(2ӯݶEP:AӟBq@& ɺR";(KPyowu5nBy |\  0m('ڂ8x4t@f @qVQ(}}bT;x3CNr7ma\iJx_w+Ue=MO xaR|V1SO2VPd[Emޕ^;^P){1xܫ^xK(xQW=Jj.(.;3NJBXbM0 o{u6q\ѐfD ĄdC]-:'%ץ?{xG_W3KU7_8+7>b"Be?Fi-iq1¡( c7i#a$_x={-li*3=iA.]'upg} k[ ߈!Ա=ud+㛐kOÏ\]GIEƻJ$Ґd3ZG͡ioh8.z)zC pW el,H霩(x#Y%1i\)l  I.i} RrMIvr)s]3åeqO3}RL!y+xj왢]4릇,-bN*Da"Ght}uMa}vƤ0ҚI7q7RZH2K8 ZڟQ2Ia(@!ZeԥNskQ.|Pζ~=e߭gIg5[L&XJZAR5rR-VuI-^Wf*tWD'C56C{*Bx2,ۨG_"uĮzN,W.Ƀ3 Co.PdUnn1wkLLu}~ c Wޓ Þ0/h+PlP4bџV"ŋZpi3df u)frb;wXRw5yx2#VrbB-F4˯"Ps؈9YNgqWUNvu.ZTˤECh.FԼԟlnXiKPM^$:U}&vOvɟ ~rd=Ș*@dqCBJKkc«~$1Z44sxXK'h.xX(1v0n|nԥfγv^-DDCiwg'f'TJM3A1n5BaCArV2Og2'f "y:7=n )M-Cz^3Ff0T)_4ҡ-01͚ac.yv{Mb᙭p+^XXSNԿC0O;mހ~qKJ3%$)2#`uyWVhR6L\9%}K~ (n7ou<(JɎ`c@`Ge?8zZI`3_JYꚂOvs:m,73~ŲxXT(JK\-J| .U۬Y,&3Úz16]G;k>Jnkk9dS"\͝ b,À=WYn l/jH 9m:*qz6Є%D{1{ޟXQҶRA0"~loѢ WFScz~u|hnCA)㻗; )뻨PiN2g@>K76d}LN,[7$c- VSǩH 2_^}}S'j8 pMc6{e;F`~h"5\>h e0;LW=Dmvq~nV& {dc;%,\NOwvμ#WWvT1rC17ݲfL&Թ}9gL)]5 `A+u G/Tܖ^hSPNp5uPb=FZƦgN#޷[W~<+:ܜѳr 1 aj:'$;MLotI&U^$K ܁BHsw ,b7{j*ji6v[4EF{7\%K2j?;k7s)ғT_K,EE)0[=fQeB,7B6aSKBγ]l=*8ڠsa*rX(zp< )ޏh9EЙSecI!9vh^첦@ě7x̼r _tf$oBq}a Thڲ,ʗ[6fGwiFA\:Ѡ7 vDM{&"/۟%|$ea3)unvn`5 ],D"K42L LLMUCgS\`QlLš51WPZ dZZ2? xTb[{+6NL_U.U[bc^<:LM9@J=G:_U꺖  G'<TقaWOzZlUƮw||GH`ډ5Ǡv.R|$ Xnp>̢>w11 `t&8ÑtU}YAT&'#E <qP 젰(v]l -MheOMdU%zOk7Xaĸ馀(ª:QYɕQ\ΒgKLspVG3A9.7d^Ee^lT.s}K<28 `SW#egotҀYۤ08~eQ[edukVU-:!i&-Im ɂqe (sIG=ľ$eN)>Q%haկkԫzGN}I}}HAxyJ<ꔲLQ>#l)_.eg(0υ')$Hsb!p-^X xؖ q(*jL^ytKַ>(~"n(GUt==:B+UJiH,L) ./v?3*;2NBֻfYC{H$Ä9g)}(3PCD$V_Z#qǯ=mc~ul+،u~JOq} ~nW@Q.v¥$@0Xv+{tX[Pvdex.BE 12Ha-qC@ 3sc20]d3U /;hͩqqM_X[Xb(=]Mi.8 5V1v3C+?d s,X4<]>jͱ0CYrҮ[^3Y0nM?ákΐ%3v7.@إh7IQJ+8j"3)(}OΛ# f-`Ǖ{Uj+E`^Z~g dAC+#jBmzN؝268ŷmJL\`W%)tڹh*z1 "޼e W 7p ʈ꒙KMX2?j-yƉ6|﹊5zx_4?%%ZP>'lb;$1 N؁brRd%:8QL=ǘ(Vg#92oՑO^ ໫d?5…+.'*X"@Xŕ-P5c#}487Fzu:q旋P"2 zϦ&6߷d}Ss:>,37&x"c| RuW8DnwRq!Ppqqp nM zb-l\7 s<)fJz82cyxt0UlX,"vb$ Hg8l 5B~~4nnҚÔ[=~'ښ@ 7"V6@+3 FFP )my55rXδQ$ ;Y%TcqQ|PѰn*}Ik POL/49 nFL?2Ѳޔ_~/I0݋^,d 4T$)ةME]<3˚&4ldB^w;=6+F(MAdK()1!ԉOfsLY=+~6^5@*LG}hꃘb|CH81n.` (0 kcU'@kjoV*Tx$߮H11@\#j .HG>M 3+ciQ5M5fP3t~Agx:B]/B#6( :Ce7=3=W`.TbU͢ɅнEmR~/L'%WBnv*> XKTX4 ɋ";Y\xCrf9"\T4vw_K'1f͞, ~k+_k9)_Ě9?Rz+aB)gI=O3Y3sAq7iWHfzgm c QW>!BaUB4<*z)_TITBO .uϔd (@f+zX8ui i3lv?T3AKh|'>«k&3,i5?̌9\t1m]/7OXQe:+4ch@Y=OwØ4j!23=I_ 2BG7u"]xS-ˎf ]UViN$g;D&E'KA`J@z۲<%ȿpad׸&u]]Dilb7TLÂF@p+X;*k*]ڶA Ч0 Aw!=ljk ]M9Qs4J$+j"M]Ǡ|ʿ/04:vJT"fcV{, CE ˋ 9$cDw2%WI/als,}(>0*7p5+UjoQZnQ8 ,s)DW+ G>X(m  R0,MFRnXL=Mw6h8 aGlЫ4!yvmΏ ܥKoah+t7ANJ4?d3Fт.@~Q.-7q5C˞Vrz ?m#MQ;A?GdlMdMz/9/3܋oVqY{ʿ:ڬ_E[a Iݤi C-f3 ^|5R8컑,"S#o.t'G[@Oq4y{U/?duĀT|/N*͈P \ri^Zo鰀లQKLmeb) Ԏ_4\d!e"R -r-lr 7Z9p}[ GˌiOAU3C=-Kd"x )+p#\XIkUmٴNU+ցf;eߨn3ԤFo:]FtvJƶ#Lo0ޟP%fA{/e@N# sˋFVXt&ONJOΛT<F},:!%> $^@!93چe_.'zD oEYZ50m׻YgEs%Q%ђԠqx Yz(c&Z]lhџu>(I52!NЙ6rn."cRu+h];,8.rƪ e,yH2%jfכKd-p{01|@Ȣ&V܅1[.P 3c]uWh2Nxܡ\a@"zmR wp7Ɛzj3z;dQ7Eԍl5[w \ ]Mc7MK4Acr/b]:<}HLBG0.VYK-|~G:Wvf"QzpK?OE)ݔXs(4jm< ^ ˯"L/3&jS^^Hejщ^DŽu/r=h8o&A#?E*lrO9O 5h)kuʷX67!_Ag|_zkvՋFw3J`$UBo̳t6Hxe[@^֊7ل+g8o:eսEv췘B"/ʭdJ=yWt0AXziD!`wT*{Gʕ~&R@QG* Bj?NG$+Z]w64 /l[o| q ?Nۍч<vsIs۸ӫw(Q?sPN(>Vi;Zlvc)P{F Ң @>v~?ے^]ϛ,[Qg=-rKu-8b=5䰭΁%~jH5wJͮP`Pr]Rm3wT$E2+ Frq^g5Rt}X@H`t)2B6p%7}ɌQpy՛(4(<tAa лyBCPrWI) oUR3gD6·앙 U ZxA攵n&W ΢?Fko^0܇ eHll&-W$:7^sqN?PaW#f+#R )KA`}cʯȌ^/m;[~ !WES}49fce\B:mjۃ.jd6V#N[7M񇈼N\NKYX-菘S\fO?k_wXO^a/KН/M#ξ7vQ2ЭQ <@jGl?Oe籌@-4Ҧ) UuAiq2soA>mPa7n]s;߹\z[Nd1~DXd2!i{+G}OO!f+s0%,E$or2Bwr^LP7 qF*JZvt}MQ! A. ~j#(ň%|3yM*0Y0F~gD旆_; oZZ+qzԵ q^.EJ6Iذ'"(BCHIhmMcakXZ$O8節N{ âC5ZYĒz%-l;4I**kh 0q!ynIf҈#gYM;j54gj&D5=ߦ1X*. -Q .G Y rXo!c fvҀ@Sv>SZ7ȟOU/vd66K)|L4h]ƜvEKqg%[^ 6!edID]z!A $OCUxkD*Z|f`s1m4aOeRȀz>xtAi4 e:5t}lOuNop`M*|wNqAn`#&,/tcNț>0C~,:z~:EKmJk#Œ ir# +cTۭFI{D4(=h2%eJ'T7GPܺiq \:XIQrCB 5gڲ]xɫWP)ish_`ͻjzc҆0"3p6t!#^I@njv3kd L*\uUgKAX=*ߖs8-KSr|6ó =j؃D<t*㸴<N)\.73m-)eֳ^9?G=cT߻#6 P&~+!Z=u\[<${L(nlFfT@Ks\Uc6vOCOu iv3TFIؚ-IT(M V"n&a+KA F6vOՌpbBwv+t* !W{)+Pf$&z-2lC]ֱI/{d1v'y a҄HKBg/Mjh@C,  \Fdfb퀊ʰz@F7ّr=?VmUPD  bNXv4p.6F[юgL:d6MBͩ66qc fLbkT+qq$e(as4E{e`فc+W#&dy#bԗX p^yQڽ)<+I<6ja^VELa4hA]C5dc"h,ۓq>U[MX1X|=&?R?"q[pXNV *` @Ɍo}?5\MU_8reJW=Ld2$;KurqIEmK)ǪHJB",buRVs`P(0=U潮w`. _/$er 8{@AViW,m;Yˮn $-zcsws$@"V _Z#&菁'M0R%.тlPUpv[64%WgKYn!_dOǾK#xFR BSo: 9`mɱg,爾S+̼encS"gG/L:#vWR P? .꧊ly5.eL3 01^ fl4h&ɛΘ{sV^Z)ĖObG蝁\؜qF72hk9KJ.֫j, EJE8hiJUVjr'5] )%.*D;L KHOF4λUT˄)ʒb c8q@ؕ!"bDjZ`;Rofje~Wcc~u5vV] ~ug6bCMgE+Dn>p_ٜZsS܂9Ij8F >:t0HJ'ˎ#T(]8Kurs]<J&w-B<؄G&Qgn_\Ywfe 9-V/+ov',%ȾsCdk Ҋ_*4A !#R1S:v쨄rHmWxPEu SQ3&/e8M7[vA75SC^X.l,FvAp\|=gv3Wfkݻʋ,0׌l~9-z4JuQ_EvrBۡSh*R⼹O~JVPt*Q6y0ls%u.oSM+oנ-az; w(}aW7u{@l>Xir} NWb-I7a -NAk|8:y_1U۸aJ\G'Blk*~3)H9Ow .8O ?mbY7A^ jd"D}9gߓRy&ьe}lhW7gV"%ILM#erN"&K3V&5J/1R jJ4;01Tv,z0+¤#c8$`ʣNrK݋Su4܇cF'hg֔S4 BC`H2BuR8Drj>yilGT- yOJ#fr@Zt7NؐFlh(֫d&猷> 8ThZAWVvUnnx#{ee=#.M>3N⺯}2ԹrXk`š7X'QK#HN P"tvbs|Ր ͉iRrTFhnGI 6ϥoʻ ^ s( Ǻ,U zC3deIrY=tbbѻQ|C`)}Uo\߼'r4Je8E44y3)ؽdxF Htc틻d;$Ms|]bXO[д?L x%Rγb ?s_H\LbICsbS+43s~3Ŝzv :?Og!JkRG<qdߘpaxDv]1]Eq /"J[צWm}rRTƔk5?Xk 8=!C R)T#]5b@u./dT׻cݨX|#2*fTM{v8$=~F1NnM΀+fKlZM#0XZSlJu-G}֚ @nk݀ۦ\UMy}l+&Wo9hoAI!0,TX?fA:eٻ1+hO]xLc 4s*'cYgjQpcQ8˦HOXmYpHNն|~O  2lT̥ >)>$di͝a}+5 ~~a~;Jlzx Ql;kQMowcYzrK%8 FT!J (͜EJ"ej %2޺n>Y]|*2I/,\Œ A@:`r| c%BI͠ ,! ' x7WniQ! X V$L,T4Rt@>x~~jNɓ1ʊg;(%4G.6[&Mj:ڢqE߽d H7jW &S?Q\P.JUGHP N{~ |~ [ʳviC;\t3I;;5 BG NZWʖzE_ڀ_~qkǕ Mz "+ǭCHSbt"-_;ߵDnS+g%J N Iga\wŗKg]77}OPr_K|G]R.6%hÒuU_v]-B+{'U,^| `n>U^32FKd%QkROoT¡uӟ^XZ~AG t t#e2}A*ZM򵻴P}s#HSu+mbijdxh˩w;){(z\] ^+ONZO>Bq>,7d]jpX <.)Z8Ty49{CZ ށ,KU\j I^%o5ݰ7(HӒD mJ9Q~=}@!ɬ3|/ zd%̅? ]_ț`P>< &2"J>#?=vrĘ[:-#h`rN E,Mg ȑC(zH~UvQ?Q/ZH(#n4X13Ak&`DU$stMgðVUwdxÖ7"K{;&^ /jnqQBze~%!JfUU2Eʻcsixbv8EԾJ@3sD$txA#lp7 [@^?m7G6h_FasdYf(3/9+b '&).t 'rb^N.= $r EaՀ+dIȇud`-ty`0Y.Rn bVEP & ,O%]DlOJ6Vaf2m3CG 7'A䊼QT U}?3n.( ./Bi2K8LódJ2v C$^%}  z͊tԹ8'1zidE3ǐ 74INVS`ij]~l0(SͰMĝ;!Z)0Ց2rqwBKڂLs~IG```}GЇY%L=1xRݿ]VoU>h(r_Aj:]vRG[cU .F5Y{䧶Ó6b3w[V +Fw'݁'דTjR !P 1щ0*z:҄6!NAC\E !{8‚BpcHw/lo?JLQ֤~'A8NٛL#خ] ߍsp@R@ru7X^ܝ}^qY x꼯&7vjk51~!I^◌ TS& ֈcYPgȡug8mT$)nHɍw(nڵ_Q ?!57d[Ò n 6:bk64yMMaڄa}U)T+ɓ;2<^ٗTf>3H%ߏdŵ{a̮ Ml!"?L 8ЗD8Sʬྒྷkq\Y;|-10kN 0 yw uu(:z'`=Q]bRk;HchݱmBlĦŦ6 4~^ aO²;[\q~+֔8Sw6?"j \{"ƤTJfY4Ka9*d=T2`sXƽ$_TPymt6<jJ]\kDne:ɲ@X [BU1ٯ)Y:[$ɣj\57$t%"IgIy7k rAF$Ps{` Bx_6~S_^^%w=cƛd% ;GMNcU*tB:,tp4:f ÷nZب8.\V8r&w>^~ͱlY/h U96R]̀ן F m6hv.,muwSf[pZ)_׻DEE%ʌYj"Vɗ"'k~̰I;h"'&>"Zw~Ɋ.ײU`ªfJm/ K-Kl4Vke%L d$|X7bR^bs$łsgExTdʭ羄}-U"#^e&Y:o+'c>hUxg㴦5k_&?H!t&Ϳ_^uY炬%%}2[|Q0D8u\詷W^=L %䬻ɕ)>'ebR\BD{j6@dS%t Z;~<:ԛ<=D m|O1$l8`xZ9 1>0]'gK٭9_p*;ɩт,V)dnݤ1ep21:&=Nc~_j닱lok케W]ꫬ,P{ђxl)C7s<ŋTuntrL R5^y" Lv^(bطdQӵd]:mR MyRb>8V_1IӅӴ,eHL ,]#X^&{Ky3 ˖V<X{n4a1]`Ib[(@X(8i~% GoFi ڌFBRFs˿ ǰ>9+B-7y^E5郼1A?*)M:w:}jpZUBe*- .D;!sw4b+FoD٤d{dhk%A:9C&0wT'H5~4ԥ+fK[qCf]jg ʺ,|L 񱸻y(lm<=;{qR Lz)lΚOkT6)uKgT[  'YvU>|J=_vwAJW > d*Ɖ4$J"f׈l~=!^w|lpdlPs".E"~N!"9~ HL=Y^N\8ݞ#۝{۬j(2c}_POc.L͛iengV ci/QQx2@d[93ؐT5c;JI_n}Bq_$Y+ V%aJwKFF<Q`u*?Y F16VapP?z1 #aϗ7ޠ9be!__ wiљlj*Nj(l}.#Z)LWrƞZ4\0a42^X)<o* Nmm3KRW!W'X#VgnDzFvH`*kM[= +] :,^ Z4_b2|W\ҐRVH*BA/O9b2uLKK?4E/K ndF[Wc!a@$ʙ!=? Gr1n>`8<;'Z[r:p}1|A)>[jTόn!wޤn>nO_;qd[O873X ۬O!Φ-x jp'7ܗ<&P)]!$9pR@¾5EMx_~Sa͙CW%d' |7$Dqh09[k{'zp9k0F$PG ~<ad:}w*R}Xߗ!=N xdJߔNڏO ƦfEf.w |%& GV(!/I .p{9K2D{1e7=0^SˤCG(O܊׼~sޖ@BѸr,P}ز)WWqbXL>96w;>g[9X=Fm F9<K=g>\+y:0P#(_G)@0b{J~D^ >Uۿk֤7~j{v us>5}ű۱!!>P~Q`OrRAٚSTx\8%VA'ikdժ;NѸ,GGa !: /y>&JԧWYmFX*6ae1ʀ:F+J"] X!{,(Pg;{KU]L_5gg9ו U`"u(|t,P_|I r<6Rv%^TQߪ1XݯH{Cݽ75_ ^x#X2B guA1мY#E6r70RsKJ ;kpX==G,Mr-hOY(K0`¸۟JIl췓;ԽT{ʠѤ0&{Y]G;Bgo.PKӷ>;,|3iƘ7s`qS#LՖ5jEڎhe3=Y?ȯ ypD#27 Mq&PQ&uw1x=1eجʝ1?V6\KDF2_: Ǽ69d$ٵ .:3Afd3A{n~ zr% BJܲb 6pqscEm XHlSxZO1}F,W^$r?s?@lq%,ՏL0+٥0kPIc|Kׂb 'aoҎYT.o>"Pu'(zĐ dD=i;(qN"@W$k>GjFʢ &=ĩRPjZa3tel«,/Ġ^I*J;lkkPg*"E?monuoY!)!?AvRA6"/2k",y+H:t{Q5*l$Eyo?J"JJ┟>J2`CgrKQc> ^%U. &n}!EVܐ&?)M VݢY-[L]b{>Q; F5}8h5eZP ` ijˍ9cQMθ ~X% wac@V-'rEI&`U-Ac̠7h 9fn` ZO 3´|R]f;?629 XOaGٛ u875:n| KƗn̓(,;:C-*qjV?(b(Zk=Υ DjЩte61۷q4[o_g)P*G,2mVT vύ<#&y<- (~{i 2?g{zeg.KQ$d!㰱z~6o`'p@j7q,Er՞qt t8_S=3 V*sgI+{sCSI^ln`Q&}2;>;du) N%J>)/?9D.{6#6>'vw|}ԑYua_#LYi ړ-oL{^C !NS$&kUHe57RHg5z҃UP?Ӟp[Nb<6sU2{*~r_ASTBCHGAG:Rշj^L#s~d,PJ``@"ֆIz,`6B 4]))0va(Uq0Ϝp'/-&轘)$G*۱!c+R䱻 3{]ԇ%hqh?'BVEuS@Xŀy4&knw[^{av|!N>Z(\ ƨxŜ,+k1*u~ {%يVaOtY?  />K!( ќNeo</@7u:1dJco*a(b]H@Wdr+>O?%HzcFSfH'3/RY.' oD-4vEMm=< pS̡@ϼIoYr&Ȟ9 E3vԢ`aV=~v" BkK ediRX ;1;ҋ1%U}/}O5?ϑ竹E;Ur^0-Z[gͥjyZ+zA8|'g B^UPAe %z5Նz7|##g(wo1{I17%cDhXtal kk]׬\<#ҪRFj0Y) uiW #ab7) E Ξq-OW?sɖFӤs\X &c\sVHTBO T hNi3zEa33o" x/nd6ں麩X@͚ 4:vG-S#JG *R=S4vnG7N:Zk&tu#9n06,:+j|XAS/ _)[qSb*<}:xN<͕E)Żܿ&|)קAC,sڰhnHe^^4ONk5a$Va|ydZjnnBבX1[mވ䛕X`Sc۝rjvZQ\w> $:LeBd gpm logQyCG?\IKeFvAZh[8rf>^a |>y@}D "7m(`"X0&J @>Jv4u*tZ+PQ]YLSCx@";<- z ?zzrU=^doYLR,ɛU>Px|ă]G . H-l͙u{K40$w-IvN35]<}7M@ID|ຘ?W~lwT7$%oJχH꣪v9lo oS"":Ǔx^Έc^d2]O\#w4rNI5Ҫϛ5"=E[kB.uC{ɛMIޜD kVד`?ޏ_Uw#wvS'R1([;0;5vY6]b ^=)x>nPFC 1ˆ<*q+$_{_>1UJv'j^*ʇkB^#d=?w GymVP[m+U+Qч bcZRs6.93MStqOn3 ꩬ #g%)pUǓN՝P줵H7w M?{WVU@ssN%_b0+Nn1" Dqp,zHPI(Sj2"&e^x*5(CasC9v5}rٌf&)r .u Mt60(,uqhZj1n9V #(\+Q ม?f7zÕ5/O}JڨvnxMWxjGhy ygbjB| I0H Wcܜ';a cIpxJTN$mV`y#;/t~Fг;vܩ![gX6жJˆ&?^E$U]N6u 3bXqcՄ9ɭ\ ylc"%m87V%wXR[ۉM[ɲ0!08O| =` 6љ=='Uy|z>5W)Bvo9Y<oZ,re,}Z}D~X$3./ajE0ٶAhD0Jv(W٥͎nkщzCճGdN \6!!eEr:$a/[ =-ZM7P:"+$Wwv3A[M{@֞M@.!P1]ҌCG"ٞIqcmmq%ݓe)timNo*LjIsJwR&c`<{Mg^1*EeZ"P:L\FyoEBJikh>sF8lט*"Ь[J0%wqK ֏udJڽSUZ5Vo|XWr^Cl~ __.r`[>‰N_XŒ ۚZ.Q4g}|P'b1]D)(h,7} L2?+%X~epR]hg }^qxi%ܶy~a߱{^5P-huDBDQlV cᲆ?H)C;\%*Ia97!z +Tge*`{y 9E"H uf2ʝC]Nj6_:VOkɕN:柤53,^fBk"~|IPVxGh-5AVړU30omN*-2񁾡1/8XGa~ v/QríT=FgY]%ZBx!-/1]a$ SɥԲ{kj-mZZ~:p`Nt:moJe=% + r-)OTP&4\^/ླྀsny/cpK_E!qگؿL`<:]zvT2%RdcɱdKxHܚ#E/ɒWviѼǙ[zuQY]fV׳{o*;|xR1w+wO (QiguVFJYRzh UCd?"vE 2v?kx`oֺh!BV%&Mcpѓє$jx֮)Fq0 M0ERF?)! 2v{P O [/cY SS9ҴWf8:{ԏT, $ }dҲrM=%gJ>Ûz[L`BL@XvX+b ZB'E@U_^eǩX_̭F?<=gGoO{ -Ja d<OEC. jb͊߬ '[@m. i<qQ3!7}x `4.O2WL)aJC#͚N"ƾiz(떛j aX$TUmg[e5&HH#h_CI|"mv!AJK!i~pc'~iUc1 w}@BYmX&^9F(}P|,W> 6]o$bb4fӔO}As#PZ =#'SU Ļ(_UBsKQnyAcr7ݚHpIMIj'"iJS&0mLbN ̬Uk l.ܖI^^Bn;E^U _>&x.Vu=Hbj+v/#hH/nAk $)}S"*N&5Cgb2ҐKL{iYO(HG#˔HRŒ/+,־RKeâd2ǔY¤lV]< y=3%nĦˆ 21(}&c[Ӵ%8!*1݃s#UŶ&QԍRړVZsS;eֽw;x4?NvWDI?7b!KGJZY*2^Ю a"CO0mukH|F  ,:zl,T35.0qP^E'Sʽ|07'7e d_i;n7U#Li4 xq#Yq(>9PE1Ռ`()OȻ2`(k! )s {Wq/kS|!M^+Sm塈UuTIrt6s%nʽOٽ 8ZTTU,dLt,!QD×@ e}L# $]3,w!C]$'8OqSo߶gHC[vmCRQ8x^o3 hXcp1e@%F3VTzڣ_a85uQBTJ7=9O|I-6[q=Ema&.Ƈ k99=z')X~gﭯB)|wr;s E>='w%h-W oQQ`GlC|glT?3Ysz $gOSU Y?p40M@ȗwt-gש(U]nߔ0iebSXdA AARW69jpH9PXa$a:tS/W{>*=;3\`d>.6瘀 B1,,4Pn}3kNךpBWw< X)ҧrc+4ȭF S|_'( ʮ)hv ^9ݶ" (cMZ~w]32ȶҞJG%1S [ieT o3r/>`?2}g/iłjVp jlVǛǼ2k}vK,Fh::ѠHփEjJQd40>)~_,EU4)s. we[d8)Y\f8VU.jD 跽rGg})1۬5!O+iQ8}OyWr3F?J,T1 Æfi6f\N4lFQ~14iP@ȸݼH]L" L,TO82_cv0אw4фAܨ2K air@} Qa4}) 5]Gl*1ۛv\Qe ;&mԁ.IlI $^ȕ-Ƽ(pl{gKN ]x!DМ%=eї2X w+Yf +N_XܴOpf-wL/2-LxK0\e[|xwR%n4%K!cH06H|G#ÖGF 16D/^Ӽ mMSi }K g8{uВR82j?n8*U֌LB;Ga;BCn,~{e\ᖂg3~&)l(a h?)Q'n;72O I&tm=+R:$ţݣ^0pFUc @˸00tl , D(/e)/޶Q#HIAo*Dhs:kތJW=#R!QHҽvg '{-#KOhju(o~3}t @Pb/o!:E5 biޑIĐEx &*Db9!&dhS2E#hJFѨnU6Nƿ8] -6ocs Ƃ=rHĂwֆ-cnZ_6Rdk'y j.uU[t?u VndV7 ~7%?'^wő.uW~m܍џ64' |#;=NJ6Z 0`MlSG!eV߯FYqV EP8;~? }!$A+|Խ0ϺzsH[+W`2\(ai+F7oiv&(|E/Xg)TEatWݱbo3eW\|Dvƹd#QRy~5u< j(EVkecݿK _>b#9JEPۮکJTȐv=a^Nkd@Vn/gԧ䎳*[<} ڔI+W JؾL)#aR;I+jꌡlSY@xvY#^P،n.$w{]s #VĩJl5}z|t]⑍F%" 3w`$|?wL9ERdIIVs|˶N!;82ZU;(4guϛal\0мZm}f5=?'̬} F?.P8K|]J!ȞAa >Wi9Y^O+4-]LߜmfxNƬL/~CN+_F#&T6N@vrꠎ 8_7/d~H`KrX!Z_A!)@ @+bF_T<Qj6XrNc 1h8򆽅ɘHDm.S%H몇C[1Ȑ>HS4rIy[JaXA܌Qtwh[ ͯ&NͽĶ<ךi7kCm*FŞ#f)p2Uϻ8 >dB M 7'5g'~a=p?ѐ" !,P&NqWs |!8 ü>{վ:|j :Ы\ysU ɜ_,n>&3Β^/ra=K1u+͸oXȵ"JR{7<ՄVCC vfINN>|p\4W{"і1Â',ƼNHdy1_aquSO-0bIĝ)~ì%FE,b't(ocs-kLT(([%6@CRĹ"4 GYvDchh29< ]V~ϼԫUTP_,3k\Ct`E~IZ} ޼vގ< NaԀnT irT޷ hX_`_Sv?S]U pͿ=?Q D9(nƋfdx)Jd$~_ ׼rkF&ΐ, ezIi&2 4hH$3>^j[>z7@1  P홀6z<( \)ޘHo.+6|7B!+%*Ӄ!澙B%S2ydC:a^#hpo/ =%SRr2xKj*b}y8@j-&f36JvdZY8ڟc :ʟ"!{=Ä'սs٤d2_Zd7 塀4g)6 ΀ Є2lvT*#.ZgHs^ɊA:fh!!W@+!ƵBfDW8j7 _u[]&PAS/5\h|g_-z+ 3pT zI㡫YȳLNіX=ڶneMR K OD!zA^vlql<exKc^˔=AS)=E_%1# _9nrrJt f!]0%K%/ ٝQx"pc/3q Mq(p L0׺L9p1FƂZ ߬xqIR=SMدRfu_ :)QJWV>NL̇+Ӊ=3>%%s<\T}FK9%^?}x'5N2Gny'D84H\7ʓSqd oT (聓,vzLEr1udQabc0i&5!q܏^l{xS ١z!!9d~R5;gZV;|>"zq /q,ܾ#U Z5lă E]@|KPz~ b֘H:g,k?Tmg? euGxH⳾DưkQl iC;ʳӇ6ΊZn#X`LDH&v s@RfBm?p#|S% ;tM6aJJ!&aUl[s 2 M];p'+o ntw;5yBᴕ+k1>nfKv#_(3_;?T:t~ 0bWSqjiGVP#PؕչA.*>X>h]4mJe<`ӧȠ96쥨i!w(G"d@3}:  "ΠsǍ-ܴ[Dtת]\Ko?cW1LО x)`J"hto~/bi;Z)ğƗn<NN/%+L]íOٶգB, c{#'1zzpKuM*@0c^>3W˴hHH}5GDGpaapCIk9qbw rUϗr1iFRbφbUb~]Vlp `{Aq>1"嫯u6fC߯T,YngZ@D559} tc O+'(87Su60f er7ᤝz5+O_%. ZTydy׶To{_/7[{񵼡*Ӹڂ+ pI4Q4e} f-j :ON1y90izU|Z`CN]8 Na1UïU>]eO&sONhٯw_%Gg̔0B5vVyu? 5& Ȑ o-;Ǡ_D\ݔ(Xeͧff#%FޟҠ2VM{zwp WX~]-b_@N`>3/Df& dbvCe]ul ]P!R`uL/ʂ>yOֶ< zϤ &R1KyV6ԯ vY1b^a_aqwJv啄D, BF+_\stp9Қ7''U*ewXHӜ@7T}kMDH`LbE\ZT5he1˷3|-#X2HubӍ7cN=q76=+@JDHDhe2zSq]\Q_Q^Y*+w3-[p^Z[/=qlHJb4B.xmwcjj #sLm!i1ATuP4U|k-EysK's Vt h yo~Y1Y >9P * p#GՀq+1Њ"fh/Jό^4n]>KM]@yR/0WX Bt@KNfcfk{zÍ$rB{gq"p~vkH2O\= [CI.8B4 0x`'PAg?HY_bל[B:XuH->Aטk1@):eM6;P ~{KNFa^(a |܍jy9Rj+p)[]6=>P:Ł)4 #o<2Q`n5"Nk*ҮP,}ŋ.!2&S[ޙFw63}_ZU=hLb,AxIk'P>)Y:ܣ^D^0J\BHߎUthk|ڼf * uB!iD׌@ݖ@o[u_ML&C|W7:S-T'^n|a:m+#eQ NÈ0{xLJ-jGGU+Qdm‡vGb M3bRΫIYQ^TM?"$k#y `\ ;T2& y3abiڌP@"ӶǦ Y>dTje֐!bK"z3#^}օyQ.vk"0 QU+wP j k{Urpop’K^ZwitL 0 dNJlksHv6bvȱ]?T,!9z$ۣ(q|k|n`K4w ;k##p;<@TY^|o R =^sNK B9Du y"e}>`QCX y-ufD*ogx *6Qdٟx҆ f)J4G cfL%xE24y޼bi鮝,Z 9Mf"W%Bȝ^=Tb=`v[yK@[ѱH:M4f/N)q[.vTW}%=ŢXHm{ַl`2 .4$0; Q9,gɰ3%tگ"ԫrIezZiߙV`_5{p]! pͧ,{8{,V 2 t7ALYv|V"EOJH:H'Fѯ{n4ˋ~Ó;KoaEH"\I}?,x ꊿ F3ރQHH]'WmlOJBEXWA}@OB9$YÐDdIJnZڄ7;|Xqy:Աl`l}X\!%O3N)^ʣ:Ux}دXge/kgw T>eM "n!% ȳD`x>=ֻ0)FXwܜ=QMiC*Q]4"JhmKWJ.r . Vi?xoa Mrc%WyMAMGr4"ߚ_G')Ou.жRH)5춑)I<7&bIP -b{u0~kU7Rg.ڗ@20 'ϙdeDӣ9;wPWױdLсښTuqa =%dxo/6U\wGXv~ly΅4 M,@:A[YyyRki$sYi)0o>O{عyIuA·%)N.|A)f2rlO.*;<ξ^śFo=-,6E>y[J o!(7"[a3>@7 gC +_w-azyXW|45hj l߿L{y; sE 8{u^^~Jo1K/n94S4G&DACJVq-ٻuߚxm."yn6k1"TgU k+ % MNŦ㊗">@<b@j2~|8Q]&fU-ÛćJsH+[Fet(I6t/-~JFr \9O #J:zYt\-}ƀ8dY~}BxO, {MZ D#Wvc(>VSiNPLJ~EiKPE_ZDbۯĆ\ 9Da@8) 9Ɯt8C3y-Pǫ b I<*},C(8~ybݱ ~hH:4e |L/^>;_%M 0#k>aPHc !J.NT 3 K:5͵bUužQ~SE=l]L&?^e8,oKmȬ9JPƨ*?3n7i!u=94#nQ6 ܜ}kzB *4~P;΂֥pi1LsK`@RoC5E#LmdhJ OmJ>ɲ Gw9ʃ{z͓Rq0Z\}ʢL;ai96?,sfFQ0$x&4$--, s)WI.,Y PwQ@ܪJ#-'Q^om#SWöGGi RQ |9Wh:!0 2nLLҲa'fQHGBe?I ) T4#(hJ4*WP 6`!=,9V')zWmz+DDi[ {Fu Xt3-P$GX /'4ОtZ$NYJ_oŞ~͖˹Q$7l3uv߯&I?$^Ҵ:x$uw_{%Y' Db*PNx? Dz|Ggeie^@4VXgs)PiMn]s~ i8a6ב̳1ڍQm}TS9by5 r _X7a[}.& G[sVxn ҴO)ا^gp/P>_gb-̒kW{*jf4ʿqWYt3uJWZ؁os^ObCbIN†̣-YkP|?7ZEUAu%X(l|W x`@%-|aQN {f;{ KcW حc8?<.H[,:3g`{J:U5(A f*1}ּ׃$5WRo52Ȱۃ<+>-FOԶL&mP-.jQ͝0o_Q3V ^"Kzrc=쏤_Hl$Ɋީ<sv,/pJ, #:k\KAY֓4ʟҫh]ɋo䵇 LvU;ϺDQ-i~Haog޳֋N4uByAW}[bV.qs`ȴ(ن'6u>JݽY˹$V@97qcvGdBGA}pNdXw_gEms ]|mR>pӲҜH;e.HT ,. "o7m=#AzPhH*2Pey&2q tJjʠsIp/g:P%x%R=qp=ΐz-zgEK̰⚍b3PS MvJ'93}>51o]dqiqB*9#v76'`7@"|yw@ʩk96w̓!t@f%j^^/fz|27Bd*ەqo`}0*[2a0\Q^XQvSi`$߱TGF3 ^ㄣIӬ_O9Y*”蘺|1yK<5/]?/-2Sæ(}} 40;ˢjm=w2}Sڠ*^ B&$ݪK?@d!RޒpGTi>,꫰pN܂-6NU/95kO91wny;`7ځ$ZUS-[3mӵ6\Lnvil SLь_abcct|p)%G@'\DN[GB;hG|5'8$Ԇ*7ҏ`sKTPzS!s&(O &uLၖY;dyqAvj{` A I e`5ajgI!GQRG+ZKzyLGlonQꩋ;pZ@UvyMec{5~[ 0(v]`jJ&[^Yܲd!Ҡe>&T d&e /RLuíkrM/ݖ-{$My69%c)S闉Uhѷ6`MN`i)ўZHW6%xn#~ҷHs(iAckN4g^Yzڇ ofO 2m}o{sЕt O4PQFУ:^9 9 ִg1 #KLJ9`Y,G2+`裭O_`RIԎrcloL6%f.5UeSMǾpw~Īw]qaL4ɼ&'칔Tܝ[h>L/n*Sڃc(4v)U/=ǰ #q=#5rKAu?|h R:5;+5v4nqno134Hq@݁K@?'Gx/4BS.i]QaywWcLd~DžZn$J&}pږ⥇q2w)/:;tihGPs IEKRʃJ&GrAEH{¾xsNe+Ws(n t3S1۝9f:2FPU)Q q-ϖW@mT̅cƋP|fi_؉P)ub^\H5 [ ûq^S+8{_dNyKN#r/|lWaď1挃&d̢^H] CF*GM|&5Ɩx@iEC3/ZSb9}>Lfn :(((&Hwkx4:DhHݿR9nR8O,˗|qm&+KB\ @HESNixYڌ (9ŵ]竐x icRby6#MQٹRF* FXg|?`sk.VbEt]oAy(>|`JB~5/$ }OWo9!Ybx=slY [hOIOsC`!퐬/@kY`ݥT*wT1?\3= a"5}Ue>tS1O6VԋE p)gvSr^NH{W R_Ji$awafzJŗ2P@=GZ~A:yVv/S!ԏ1i!rF@ڑRmgw|;@dY2u@'-5r GRָD5\'So^rH;P8p\qq? YMV±zTqK櫐|I\=:gg+b]ci/&bÙ>Q\ 1#>kL; ؤ%%22`1kTQ`읢(Tc\"lbKGqaӪYFzqK%یj"uDhL7+WgaW9œ`dzy67R"qe6h[bJ|+@tuVdHCv ZqGҚ ܹ$;|,!5wkj!S3o辦gbTO8#>ԞE=  5w?Y$Ӷ!om+703A5,SFH@0sl׿$26Bd]^ۥFAj|t0̎yq@nk7tSd$cU)+q US֨̊$ F!{¿(s lCӨMļ*,ȼ>1ATй9O[/O=Ǿ>N:%z%|ej9%t-lT5;TSL˘>Gf˛$j&{3EYɆ?8R /YiCsxɭcKTUfL_l[$i<Yʲڝڇ4I]+G&@o໓PPŠ)I7" [ܚeXiHV*T%DTD=UmY +w*:RIISp<yn;w0Ջ6۬:o I$~+친_{ *<-bW#ZmW y+nӣ@O夂Pu;or“/pq: `VO}w~LlWqh s&i6r("Y:`*%oAGOhhW·DXv N3Gop }z-d!ao7<ϋ[MM KK[(,(e A @zs&| AvغO#`O"GGT{ɜy /A(^6l)C}~Lc,"~̨QJ0 +oa4>MյeA+Hd^5.mЫDXNK D,eKy3*m>ڦËÓxش3ϻ2Pdnł1KV-?(͖SO=8VK2 林 6h BTJQٴ rBϩ%[hWE-OsC "I>n*ܴ# JU6Q3*u& H3~q! ru68B$`">cC,<㌃z)9~MU2R]fW]DBtMvbԴ]v%:@u1.k1kmЭ=1" sxq{s7zֽ &J:Y& U/4kA)}Uynwm|> _U9_LTY;hOwPo0:ҸC:М_Ry]wU7*Z7I˸_zt4wjcNncϟp֤ 6rdҚB<1vH8ev)GBz ѥ0c#z4 0ySyJ) @~xm};oOWr3CF5T'S\a/ eAtM[ k=o+1prm{crn$Lғ C ϏVVܴoSdQgvI&OzDP*zL|BxSWJ/xZ"43eɮl!x7@ݾO02a}!SmDcSF‹28Jtغ<_7uډlj!JTJίeAlatSShBs5=Fb*Ǻ ShO˶D\!K:v/Ji Byu))osm /lD?W P;Vxx/yl.~YG `5 1qͺ "BӋJA*Jxv@#" EH:uΔ%m0oZ;z) Omo˧[t NU'MAO{^~Ġx!ƀ2h@utsx;|jCsi7GߴI/IG ^nѶ_] o> d}SwUt;EE " tz(`o{v]2F\|*xmql#rG˔`|9#DS101]OL!%-1"mόgRldk}tI?Bfln`pޔmNuv$wtUe x9be$KXuPIėT+wyU,Ah kQϧ~}ؼu<ץ4ʝ[nH5|ٗEkT>)Cj̪WG D\[v $V\~ 4xq"%XM+ gmHh8|i!BLl(%EL5Ls'/ j }Q̩PϪ:h8d#kOx@_¶{N0g8ո$::@[twV_*#X x)u+d*|uH1d=?U325rzm4&7!*ǥ۞?}ThB~Hg.Z˥|쇑e7i\J`H ֘ud錓63?|gw~znA< 45/) IGa!x?6{ٳms XXXe+NW'j zpN`7"ZbM584f𰴦Ѵ<κRZu {_F䤤~FWDB̥|8?{B|QϤ tkY>h a |7S s3ugNh\Q\9?4nr>` _Tg@+S`ѵ4:c,*TOIN=I&¸ťVПǥfU:J_wIֳ,.RbdžG<^fɂvJ:߾,FYAP̈́Zx*d88WݗwH@>@+U(2~rߩCc6{7>sS25UcFAւu}} v}"3 ;rJCVNPC"g@Y  d}ϳ8W.p0[eT|P<z Ab3 2(T:$5c[ųkw{DRL9k?wM=`0y%ຜ?d s؞.5fz=* }gF@.) :eJmKKL͌>?l$EDQ#zy:1}PL:Tҵ4!dx"(F&yDeylu =!O+)kn6MEq/k(3emo6QKԿe z~䋳#1R։=dz so)xEZ 4ČA)iÈ'g&R#ġ.&J'+2HtˍW2t0q? LwIY/nz$XN oi>u2-q0 >.FPߓZaN9KyR6@%WQ.雪4d@wG>Npr:>DIpL&Vn/f;LCKM !/Ĩǁ}VLRVAQȉi|W4 ~>7@wI)Iw5M(i!FR:.c'?%l_ EUw6τKkCJF5M˅Bodi Uk/%3dS5ѕY\ 2`Ho[ހEjV9vhBʽ %;8Q6Kx#be]{+U!5T&VBMV[բϖ^Ib 9˿\KU HGwZk mş \ h߇D.Pan4F7syKY^:fv6 ,{ef @u6ԸBw׋5W SB|œ͞Ci4& fyRsջ>ރe 5#=Iɉt#I/)yc7@^ (aGBMB+yC@cB =8 'Oz Gv~}G4cV^UYؠٷS[%z R Zn)Q0-BBF}ŐVJbN[g# *Fء@<4CݔP-87n{z. ­| VMh)vΧSc/#(k<])\T'#m>dW'qۏ!M>4b=?k[uDĢN4!cC {m#Ibynvd'bt;z-K,J j}n64ᄢ-̇KLn7wvĝ9*.XlGC@|''T%ӑRA}usy}Jyܙڸ꒑uXR"!?ZI0ŅX*cWr0ѧA#b/.^$W[uנS .F#[P sm&nռoetWd]g*Rg{sw4r`CNM=ܸFjԣ&m_@oJȵ`72;n_V51Xh4L_@ЦWAa.FM2[soTJQr\ ehYFBt^eNͲv0{2(96Uw#BY=K[Bsɨҹ; W;@"ܒ1#{ 1gn¬'۸LU-,h@:"(^\NKlEg7ஸt_)m[1w"3[+r}[ڔ%-oWoo Vx܍\ Z{IMonJ2K'k ܕoc杄}(!Iհw"[/*MHhԤ;5lHY:6T=Xs8D?)YqEeLcOhdpnz]{53ߜ|D9h<ח:ODAHXɵH<)};Y<5.LϏw*P{SQF->qOj-sϤ7cTQc>QY9i^ m-"3@<4#sY%0hC ٵ|m Jyr(9IR0mb&l7Ƌ+l:Pֲ TCik;&qfߒ[83)H39]XS{Tr'F\NeWf.lhl\i f@~?kYѶjC9Fx0h3u銥Ȳ'kn>Lw բ~jk = |f$ьmuߵAtTO~_Z!w}}q׸(ziyai uMq%A*mhɝz1v0A^ԆkBjhRnV0.3 P}SW'H:1@@}lcJ!ܘㅔ%g=\xݶ|ծVq+ֶ¢@Ԇ"Z38:< S>Zh~Bك--c?IP0P\P]vQxg 2#> jI_x˔8 Zqn=؎ 6)%jói@JwaTҕk]0e2LDZRls ⪲tar R_S >2lЋ(|Kz}rƲOK^֯ sʼc$yp,eΜ_S趜cvBd ,)X:jgYb({ U7',."(ٗv&=_bH M#f$v96p-AjL4u)ޯ?ސ./o&ױv%1ZӅ/]!%oD.G9x~]*DvmJG3s`PDK1d[l wTab eSE#aOʠMM1DOØ>\ \J d cXOt8F.Vqt 4eJ9/ ' ~\%zgaafv Yk x{uQax}b'H7<1^}X__ 5/EuGbYG[k7GMa`]vF3h.҅$z)#Freϋ6o,ioKB=Ъx쉶+L Qeγu"9Uߞ-F.-RC)èp+[5X8Ȳ3Nhd;D1EHԢsnAYCW-cL*)-X4X(2s/ؤqN\$/Ks$+ Pdٟ0pƞ ^:Uod$ͭVe]!Q e 4^χcU~(ycnR.ȵw͆aCVmF|Vx9K]|Z1DǧJt˄QZ.]6 Z!d}'adݹ0d< E @BXݎBˋG%h!!mCS z; [5]$c^-`:+/.5}7S`uDt~2z6mwzNNĸ7Ɨa֏ozŘ^؄-«Q6 㹸S<޺Ll.vlh0)eI {=MKxLUh>Fy[bbmWξ-5]jp_؎L`RFYnǸ< p%w/ Mݥ M54Ļ]9<莎{sg,=.•fSk?*l4YNyq)eS{gW f^9Ӹ` GFRZNLRF =sNq@]}J,Zwo-D#r\E*vp;XSxD_5 0xĿ]$}1fHC28;H"^CXRԨ =̀ VWka")ZvD]QWԀѾ?huU 'Oxf?,b} ql&(uu&ڡ] ,lzvVMϰD Zbq7aDau`5[AMhۤ=V+;G6.@/3%̕ (1]1f[0G{]ؠ)  q'6r,u]-\ŇWZ^Slq" !.B.u͑T| #?0 zU؏Ӽ:)FO/@@šh{30@Nv@'')rn^E*uUh"oaXdw4Zde Y,r& {!Ҍ(S`j-r;tQ,$Q*IaFis-B݈1ķC~Z݌4mʔ#r;u7QC X )sleIZӰ>K":EDD19?:6cZ i1vxee^ZZJ)YEl9mz<|$ 6C|Dur;:DSQ{9aԿ~.Bc]k)CH6QUSN&8o6E!x rm=Iw.\5⭺4oͺ1T"74n[1?SQ/yf_ PvyGZǣ+űS/9TsCB)U=umRsDwlJ&;3 MFQ5M,۪KWzwgLKUgk,0y}=йiN!xL?[*SfRK^(s\\X@f41xT}cvCqܸu9Cu.:5Ѵ:C,SRtc i&Iqj|ZQD2v)!q7Gf4:wu{{͟g<w17(nް   osK˼#c\1fPյRCi'!PLwW/2hX]eS6J]>ƧA$w#(5>E4B*%3#<}]òfwi`i'SZ$16CgYzD ]Y =5vۆ>*uw4@(mʈ)6y: = 0fj_ m v !Uh5Evjqϥ^Ӟ Fq@ZZ<3)sUm#ēv~32rv2xW&ۋNqr ]W.%/}r~"N‘}nS!a0(baI^y~5zR.M1Ar- LylJ^bϣ,Ȁ9)S]Gz0lZ|Y<ڳ . B0g_`q*6!Odī(MrF0c>'M&KV 6 Pv9M\^A/Z@Υ$dfb 'vl 9^E9#f7<,Qz #VGlKSA6Z?<>,!?:se T&ج0 z64IsҌq_FE'7mb|LpU][>N8hg'M;YIe#Xl wQ5&vrl@ByۙRj?Bv0fZP*u X@ -~ΰ$_!,1Fā ơ+Swc ?B4#s4.#$|TKjdɏP Du=*΁4Z!`&@>R~R 3GV)6{z̠ߢأ&9 0\䒙 ۲Be>5|Dk Rꃟ?\F f*E J@!S̩optnŸI0(&QTC]Ův'%ܩMMF8K*aM_*Ϳ1"s<6ktDk$8ɽ⥖\!9/HE7/ A EAԉ9 ubL1C\yattZGT%Z@Wxз{6vv ãYz?Qk!4O8$ΪuK9.$"ı{6Ug|L%_d!^АǕՄU,5z907ܔgP2olTuԁ:]H|L2z+*ӄh&İA0 oE&:=C ]a٪+˨o1RWfsTYwqfxW.[v0GJ/^br4]*1ɜ;a =5sKR!?5{28KS>i[7i;B9;aa8힜ct!m_]pbx'3A` 4q޹ QLw_?GKzjɩ1gyP'IEe-D0m0*]SC NCxJl&d U&Ţ MnaMxhPpK0}1`>uOֹc 8( ('[T[gSWl#F]M iEcL^ݛQls5Xu/ EߘV&L5 6dtݿRS/ĸe؁HH35*wvGpæwX_6KpXhi^?(>Ud$}gIB(y"ޝ񺼇gh}0KNoE+KL̏BY3Wp4^W;yWRm 7V.zO\lSYFph^]Fx ya"zv{͐)^ʇj,,y5ֹ=U1iJ_6$J!:~_r?Ӻg?UP6Secð7媙%:XnoQ(G1IKb=g]e-O]zU^ٝD'MπÈN7Tr5b_}KpSMHu AH>Ft5YP.WV|k9ն\yh: _GR`FwueMSI/Ħ{[YBi/HAi>C mVFgڱj,LzS%8'ABl6<^#$@Сz QmaYЊ!$r*', WSSj`=(xb*_jQHcPRouFTUCTsތ5*u]$SΧۮ5W(HBhAb߳m1SFb07\W)ʴ:P;iyc9t  ((˶p{ssGd9F /1l4?Rp#\W}NGMZGW~ 㘮4䔵=YhoC~U`U4|?X0Fj @(;vcǮھhDS ԰yW}k377/ԔVE5Q^Ba(ocu6M;-d(=p6]'֜ut_fh,7K/#T)Ȫʝ}!6tm}>M#V4-g)kT B!ߙr9ʶ(_+vEk"50YJ=H"U=, H1w2b' H+>6޿K`ZUQ*&Z}Lx *Ч :z\|)8!4vw {W!hӞ0)ϻMԒ"D'vivDVlr$#mbjhx^4-`}L/\ N0рmK?E#!;D}wP8DU}v 2i϶co^ OE'RF}:6=,NOUsdc L蚻Zsv =P1fٷ/`FhΦTW1A#j:~G/eTFMB6&;TS m3]-jwq5z7۷hW瑔Y3d*ΦWcpQP9뢦8W.'pIS)ZbDpm9u;\,$p#ƗtEh5/Gą!mԶ!1:r}VB $p(AvTs''XM"h;/Ei|p#JO~@;ws_ cT1 53!U@Pzql0?$ .$~/7iezaE\F'^pU#e(ˈ_c a]N~΋+bUV[n4uc_@rimDLɰ7`ƪ6:e:~`7%s~ kz /(dž=yu̅$}m8L=l{Eк?ki6{D))ˋFO(g8앭﷩IR/̹&j ~(_S;76,© U{"{콹YLM]*U=0g2OixAn(HTݹ5|KL?x 6Fԝu4gBk:vim="q؎ɯU0;7Bof4 V9aeEzD{VKUnSݫ*1μt*0CSԪ8vHmt񾉉+1#T2gpjDcRnm_6 m+ބp3oWS*,+Sk9?z;1;Rd:-2`f`W 8(@KҵA#Sy$SL+;A8ľh*X br@!?)>\QS }ĕ.*=ȆsfLSX1oMjz1#f89]dr*x0US'gEq$؜u ,g{50):rPqo~oæa.!}G[9 mIm7rs0-2Z7mxCE@ݵC$TfA71< ZKB l5Qz5VpQIU*9gX=k?y!s}tstylQė4jm:gb',~C@1?]bF8y2a=vD^!\fRUdSn^s,lyxczYÁC.B3 4qг$zK m8˅rN$|@qo_ޏÑrZnx52g %5DjTDkhyF'Ľό7kiD.<ȣ'\l׽5~K3T&L-CcO<~~ƉdlNu5 *-&al⸝O6P<5R:^fQכƈ@!jO"o/NOn|)aD.9NUEe퀳Q}=m͡?~kU\é> M~s)%96MF7]>XTd#%a_DfKkÞ̓S/'u^,Al2`ԁ9g >Q;xqlfSIXW D2I"'ھj4ҧK 7g )͙kAQzL>|bZҺoQGxUrH+u['V>-ni7}fމx[9, ՌDp`׵cFR)|]Y Q4Ό0ifXSt7sdWܪxY# bO:'% $UZ? !*)\#p)p,n7 #~EjC#\{ 3?ۇgeL.N5N7^]MF"C!72PrB&cԂ_#~_UX;Q,u rP ?f'z:b΂&=NHLx;BԌm];u@Q+8bHA۱hJԠ=S-,@k8ƫ>$YS/MNw`D~a{}|` n4 Ļ?Ϊ8ȃͣ-&Zz.Do ݠw4젉L+tE%VC+r^K=4A+#A7 [{7fˁe| {g\ )8`A[ O-!~lD.:IPV6.l: 6J >Lx9|YWdNBl|͋B{~'73&D] !{"8w]9ue^xoRmf["=M'NT̸ܺw|uv 1mEq(9Z&\sKWԡ ܈qu9g]U@x %DJ,/HƔfkʍG|ojt':@.OŽi}t%+ZOZkxˢzF7o j4 .#rZ' / Vk=Mìt}ҪX sJk#NK:YlA'hmlC%dp>T-0LE8CG|=:r:~@>%aKWw= O칼b~Le02 V+ yt|lW%'_1D?**dy<\Xkϊd2je̚xGJ&mþN@ TLFENW@+KCK"V(O}'\u*W$2󤹤ec]9QWfE#8yEp ޜj~C t}oqAr6:qu]*.oU?x!yN g_X3!.|Ba;x2mݢ+dkR M ex7 .wa5B)> h Ws@mZtRVv?m3'w%g+=-ho[C0z+ =C&9LvbZ$s{"ǪJhd5:ZMje ȩ0Ɂ.ـ,Q0l#:bÉIk+dy>m@B/?8y8S <Z[O#zSm"1#FoQ_6QR"ð1nJgYH^w;~Gf>[$[`Oޕcnm V6= B-'\!tx^7R!Ybj;D)8qzںByp̱t׈ʛc忺-X`bd?|ںp%%'MSqJ4t UsH'z(jOy0<oW/! A|azw>H8z`{NbD@z.1Ob-ɇzz^aA"D;k%"nZW7\7rzǩ|+A-@(ld wZzI".Gb]+1O&NA sd'ZeȡUG;X|!6GoI:9zLr1Mh1m->m=۬ fa]Go(nCuU5VS7uDe1@2"A,*L3~˪'h Q&2|33\0O7fODb,ؚ*\2fJ鹃vr1zf9lrV]SS\duC^ Z_1V aM3\_!^7(ZVǭHWv,1X(?]IYׇnt27 ͶbR($N6kP KZӋ}oϔ"7W ^d;[%ɶ薂XgNڧiި4"R"۵4wz'ӒT©(tW"y⼃2NܴQe VSيkAW/__(Se: mJׯQ0Ky%x>w*;*zB}/nMT =qz،$RӵX0fǮ#ۢtDhȱlo%ŞH2<\G%k V͇':t[ݖȧ KK)*ٕuVnZ9 ݰX] DPSf Ϊ\c/-#<X>(}s}܍7!0"j1'lPRJyEKB/-R,*0X l'Hw##s&O=ʏ<^_d`R_'M62c"S0IaR}2EA3u~ps>-c U?1 IZEǜ:~YjifjY-}%ɻpQŧ{U ڍ!i5sp9S d|--wuR= ŷ'5;|_SdW18C/a%[=X̑ĂU.3`=pNp 98``'7ܪ8NгM%Ybщ6t yf@^N YEpByc>,:(G8#uey0ƹXFF(iq>c(3~0U , b92$ ho+Ƹ˷;g>ק].@#}7.Y;jjëlsg3\Y&8?Н$ tCGi0^fYn̜B}{[\hy۫ʠ Ma W-S}'En֕K9j9b/[J z%$Yŗ +4'70?Uwsp$XYISwFEZ8wfqAg]kg\wɃkUt.cL][C> ->s'Geџߧ8]tÏL#`?"}efJ>e5Q؇ތjM]~lCp[zvM_#!Sa'زX+NS|8=3;AȖx?crh*c[ѣ~/dطtp1Gߝlh'nO)]0jro2ɤ˴E<79Mrwݱ__sg3!*4~Biu7cijAtuA;!69-{(F*F\)f ŎG館+l6F@q߲*>/lWH&\r]OՂiA@dboPAG qbPI=ҫ|Q]P6WtN><݁ HT9G.97 RC*pesWxúݠT F}XBHH2f8RH3{p(3q.hqsk[aޖ\,Y^8m"Vn^$kS~5t\vElE2c#c;J!t/Jݖ@(73=I&b&*?`Wqk]9Ϣ0NԋYEy׈®srϯ^aGbAIM8D6 `03$8ؕ`Jk{blJN8L"8" hlۼc:N+)Qy/XJPazi.cR%&srMrώ3a-[OO˺{?fd"c*.U~kOg'-An1߱nHzk%ƇMP;TIQ4RCg pJ:׼{ٷov ˡX:u+eЮ8'MC#{2\ O0yBf nᶌe}q< ]a52/T{cy !4YcBH Fp|Vbt pŦO6\ /Wo/PONrtP vR/TE%o{*&f*Eַ3<742i'T嬍7RI[VgJb8,m@bd+e (׫{$Ůjrrjr*eeBkV:Ts?r)Ď`.ȲTJUcr)c!Z[Y36S(RUmsCk!ѹW^p ؇6גmǂJau;Vք*;IT"LcFpnmS=g ;Wռ~Vم8?Br(–=I`B*=74Qp. nן6(LQ{bq^8E3@= mh)7Sy" 'kse)k]}+RSdP󾴜\r0Hp@".ݙ 8g,~jBaR@!3}<*N+{/$"k@ʄ熊 륑gzD\-so00`$v[;|Lz#_2R·]#P0=>n Ol6\]Yq\)r͋欥'-{)mjP^A#:+l!Ox蓁["D(ql[ARbl(brjم8 k~%N4"~fMZ(ڭUs֢ߙ~=# zd L'&Hhz?~ȻAr׸wN9Li]R !@0OI~4{ܫ¬c= Cp [ʲ)"`,fU5郿CV|9=xy \amW%FdG^v|&D%26/Q~Qf })(ڛύB/y>ӡð<94al V>YKn) McDA8vZf1evϚNUJ= #Mia*}@jNcVw !aIvW1mLe55`q՗ɭFrSkFxPRљ̸ؽDxaf:F[BiL0v Buš"4=SsvSQbT=qނxcloc@1*Qޗ+83کQM`m2VcW~]H"*hMK#Ϯ ^ ;NT~Z2io7EDf\:ٝo׷-B}R7k.*QQʷrJ Q1$uŬƏr&JlWDW-F Wz VZl w9 -_lu>Άn@̒Ђv^1hP< R*| #)% xv[gGmi\A&)7Ϟ՟f,R!w M?dnK3?31PYT*О8Rdԥr/Z-C3Ka0Bd9dZ2Xw/w=lڃN$v& Af%WsU;P[!YȂhzZ9 CBHXAHPA\eq9vL(`{"sH9v`+,S,< 6|mќټzE:+-[nCI2Q, wPѠz UK~=_69v!hF<֡& XV[y E{w QaEp 4 bW_0m$QM? kvV[x4 r~̔\//3$/lD{o*Wz$ >PR$eʚbIR>c@CeN|Fdak֝sF/`~p$ccҹt>$"5_ua5KbEOxL0_!$&7*% i R%T^3B2vV9~"ڹ$IyGXqT2!0򢀊%2Gi`y`7|p\l &ծnE|7}2)2 i7dÙ}DQݷwtՒ'-uNHxAFVd0{[v#2M@̱XG 7+Rrnb\R tfF8/INT'#Njj=u!V>Nw@`U%pwpޮw;W_F۶._ě8wY 'Ud|7RyGǑ(3v 2{VV5vVm`6B T\҉ņš<7Hŵt:d[E>0ԡ&rNCyS58o-&1jz˜-<&Xˌq4Ɋ-Ca[F1<@a(^7B.#a+(Y=l{cn],^O+F3 C5eChp؜I損Y$/piځ8^5ςD JqO 0%0J߉f'Y%SUI(^,U~RG:b|t 1<Ů1\kQi' oX0 74pw8܈뗍gPN`6gMh}S|tHb/鐀ggkB>sx9!bd\Aٱr7L+\n8 6ElDiFPm#(A$P'DT魎<$rȆ>$15ݚxC ?+ߐwWryxYnn:e%m!ZVv://tCwzŲj?&^3NƱvDe:A@N@1-[d}7|e\75I ˆ@|vV} fl[ΜyC%Ҙȋ|eZ5W-B}z[]jVbK_ *W`en#*9\h^=db&j?(ޘ=ӒChzߜFP 27 (\c,r4~:<wo:-8ӄ/XxPwŢ@}ws>lo8i^*OqqHdq.@vt}(mX\uޔT tڔT!~\ 2Wj\iCO(gӯ4gMOMRօנ?9BXkX8:&B#o},}3aVtJ!FO$cpAdf}@?3KuC c#Da y랿1 ;\{v@`l#k>Ŭ K zRZ(u m=9m*ĜNڙ5P7/F<Ōr~AlqLgZŔP^qAa|2ȥ9DĔygYZGs.Vh3YnG#~n%j|d8?Sx-^p"&P5ǔ8גdގCtۨ\/ғ?ʯ6i!+)a^!Dvb:aeЪ k{rPY/WC6^ƹl=>"qLW4z}AUU_NAL8SZީ8xxC| P>[F }@v/=D/?Mou{q^G&bS3Ni[`EL^ &o5aQ<ꇰ w?GSlV.Ϫ )f;Sl@}g&MLQ"3G|:<^j 5AcwnׁPM`Ō-ꑿ;V)ʏ9xmU($C4Y!DŧZO`L5(擼ֈlo]| %*Pưvb'٠1 &+7ˣR>T>h:ՓR0]!NauOdKgrNhB&moMT7bݘ1uSVxkLU3U"%(:`k@X ѥ7/>k9^QއO;.LT9/6IEjAQ;fjl&8c8&e6&Mx"{W'Svqy~<2UPcCRe.=~)PgM㘰,B_66M:אBN VܟvktX@4E臭:S/ȗuF\t· W.VVmarϒfD+ѪK\7yJFȧ7ԑodN} TMוi tiUzH{I}s%UdghbCѵ+vBܔAܯZXNݳ8Xí4wt?b% t328,z[%diÏ0d#*8"`B<8ڃJ_OjA[Axy:g1w{VN z [{]DV8d}\g³9#dٺ+; Hͨ#hB`Sƹ 4ZFz+YRr6@Mv>&<m?(8 ʄZ5cJA=޹"v۫ji.AA9_ iV)Sؗ S\g, *9' KDVj1SΰF?ϕ61q_S56oާQ.i۾e|sR}-/̈́x|'a{c=0Fq!hwڧiD{ ] 0<1|%!͛8żO^6dz .FoKT&N͆s;*6q r] ic&+v,+Qa&A$ $!~(U)&/\2R׻֯zĥkqi)K܍0tRȁ~At[d}hĽ1n/+EglWFB!y]-y8PYR-4355x❵7:5wcѳ!u eW"6*^e vi0H{Ns9BQF/@/ή1tőEhۘ;prL#s،JD\3B%Ol% 7At?!hND_H'FDv\s@ cB) I{ , R˫Qi >!<y?U=oa3(לӿŀ)Ma/Ą_:$&%x")cO(Y^<`p4B/񢢛Tt*J^1?0B[%SkdjvW%,fHaJk5 e[%P)' mBnCx*9,.Epzk?,ちR<mA0,׭`-zƙVKr#(uU*0TYb"M!MXJ ;3K!! p.רՅB썽g^ Y!lu G`H"k,6C,ywӂH<[2u+sB*V _!Eч/_ c܃h'(C4uϗE,X\)#4׋䊃W$q~1nCC+wqVW[ՉLhQ3ԤǽZqpe/(wt$w9eJIeMfe/8>;f^;o Xj8#*L8餍u"$s Vi7& `Syye|T̳UY= <'o\`@ݽX{#sErm.@e}m VV]/醳qF1.&',i:b5$>7n9k^ 21{ B˛+Krq?wJ `'F? =jzN79 Bۻ.gި8fW"[Wa[1 7Mם].wUE(qy;[PF'.:dvs7<*fKie"cqHɭwʤg!Ak %_9w*$YoxevWz@V.K1gbC2qO1r o֞IeC_48y֎@2  lJvN( "K|0<ՇhK)"+g|>Ҋmikzߑ!;%#L$,!<ÌW:mi=T;qL/&Ausw }T'&bQXÄY9!(3}ZPLj[}tXIn^N_ ˯MK,?s2%!+W-%>.NT=#cޣR$$.hrP[dl[VI/s`AWw۫XJ)W\גuXK*yYp |ܫ`T\IS=dr -@L]E`c2TaW(r++1ݧBY}D bzY L冄PK6 5i؛Q:\Y ?N\E!uRUT "YuopD8ǝz"(IJkr!KJK7nu-`nؒWˏֱ;Q :UnňP>(xb+JDn!Oɀ+^۾RV7V*Ռ›AU9Bl#.V*p| ph!Cм93<*2?.~Pj=?;(&W] 2Zcn_wIß Ļ 'sxEQ!LS{3Q>٨FBHd If9ճʏfLiv=Qb10bx"9uʴlA spdl2LfE#5X2m4GhE|g8~Gh1hĦrt+i!q߸E\jx pfE3<=ʊ[u&dSgW(0\)S ǁ>f1&%\]}CR:C$N׆vZ؍udA'~uB2q: ik5@eH`5nc&TLą^ 's@Isy(oz4@?c8얯4E fJYCߨU# ÇʬX6A!FcGD\זLta3!5DpH"^=0DTf@N)P$, o %X+ }H%'k34ӵG #XC xg+;ݘL wJRd>m+[)zdV=ohڹlX$/q]yE][HfT/v1١zǛezY_l!م"[^!]n1>AZT%FvIybK \e f ٖJc#2W$T[AƄͥM5S{I-EQ^Ec’r}%Z#o<,Ea>=aP'ijBE/ޝV: qAB|l2sPh_zsAb .k[["pBF苶0ՔeJ6Rc37:h dСͯ8}y Eڢ^sLŝsm:V]9%mSg,GLq,C|dYT'%21k"x *w U+?t> &(.?ު0} fls" <,&bZ>ZEu[hEuكpJ:unR lS6LaɌpa6#i•QGZ%^i %ZE{9ga: #鐨l,ɫ p'K'x@u35#N2|}|.3VKuE5$"}{sY΂Lh@<~#m!2F&j(xܾFZ1oY43ȣ"(%&!)6KR<췖e\^>0"I=I7D|G7yqYo 0=wȚ:nAzS)-1ZQ Ձ##b,5؝'|{ƒ= >q%#כδϪ3otXzށ~`O_@4Z[pHY<4s X*9P  צjr 6RS D5ky5Oί:l5mWq6WKR[tu|Tj z9枙UgǧFy̟@7 na  Y#R,l2RR-L}=#V#<Ԉcw15ki~lS.Yy]`,^KB aaEd_Oj_=Km=HW)IPo f7/ Svj+t♋?j%nԳR+y|cFyʡy~~U)>ܓH+,TsR;}u8 )"<Ltm02XXZQ-'>vB,b^xu"qK8"s+YE-Hu (ܗFJI;h@N[TBEёǨ^Q ZjR@jZ*EkE ([-)i2r) zkSL]MqTm*p4>h9+ӘD6=)hA0*LpQ_" 1r6i5nXBphKoީW*=id8~/=XƷ:Aٮ|V&w:@=Qתz!F],jfLƳ߂loCd%|&K FZ$2;&1eRlʼ,TϷ Iu_NJ\\xolzM߇D|X6%1ÎXJyyVNL6:H;Fc~W*kFE=K<^}@"qKWSqhePQlsQwS8oHCsp;d0b|Q9\%{yZiɢhw"@>+ٮ 72Ȳ}q5'gОP%l` ^ꫪԎk..Ӫ~MO Q@y@M[^Juwh]ĸel#0i*L&s]SNIJ65n2O<#G@ ֵLQyzHڵ=!}A!$b~W!qf!ƴ/~>Rx 6srDƥ@ Yc{3w#/A#Ms/f {(X\gDH),@C+|IpwǸ@hU:# ]arwC?NzwxrPYW 'JgSR*TL޳ [P6, A ip[DjC|gC"K| q9pi ԫ*M P_<n9bXѝm(tJtv}+ fpMjVO } <ƖG;e$l즮M\K54q v[p+>T7r=c-ɢL?%:H`6p3PBi'Oj]`HIjyuG*f^ȹ$o`hcTn]o3C9Q-){9 4VBR0lLtXAO&ßl䷦?D8.SY56r΁ō1^ =kCDIg<ygO E6=;`uRs5?$VXwA_Pqs8HFwM H% ?ŋF95 ҇|nfCN,k$G{ۏRVFG"&xd\ ˭ ^^`~l.mQ-,j%ʞ9`VkW|LZUhJ/7Q]x.geͭ cTTWv^>i_mVGu;I&lI$/bVS,NAJ=x K 0<:?jG6Uj*I[hNweǵODh6bo!R>HţlOOO(@  WqgS`tZ{$b ^ŝ#网#MժN nc/2~NԜqr#qau9h(zH&|24+ [u3 FoX%nb-6HbS0m ,OHs>l4NS Fk {(@ zB'/omۗ.q:ubPB`Sπ{RڕMK{Sy}២-lOhMuۄx}EA(k{ǼEO$zws`xN?j'gʆEy7xį >ң9wjYdP[Um^7<fxkΞCyfʙPO=y[CidwAL@4*7 ^npE8eE0_Ɏ;mǜk/Xe#J]J]T&v =@p Sp."DJS1@i!gM80Y&oj* - ͩn Lծot<^cHO$x`Gi*y0!h0N_/&w@^-mU AIzDlt@//DGk #&U8¼ˏvӱa"1P3;M#AJ+pUф=$+fq|)ӵ:R-a79II꾑&}9(X= )@lKmό!Kt\F QJgTuI {dq 1ˤw{w,MefAmo'tn{OL6@tA# Ue,|在g;Nθ ut\Rpq4EL.ŐtR5äD5R.&.`~ą˦ݽM'#!+ PqWG֍5E#|# 4U?33> q,rgD9Nzʆ];J']*(tSj4;Uv-Sǚp'L^d=JJ呀Tk5{-9\FH3Z"8=^i@zZP6%p5ap|^ea^aN9xp%{~qj.,.?NrՃ&G,~M*$T}/B^+$kOx<{,6 }C);}ˏH veRT<. VWEUUcU7"q%Htjuܗ7-,ʋ;l0QE}~濭 իqbTz]y򫥁fTZ֭49M bc?mkiHW{ˠ.|ؒ*МWjs%5]±< dBv>wцgkėHerci1ŧ~uAh ٿ2 &Y ]l U [# `vW KY$uȀ*Amq|, Đ0-~9GV-nR7Z 6Cem]*_1Vnrͦ g 'JT̡(4TH䟺\#94$uX{"MX֜D-sX ĩͽ sUBUpcʈhdOk?-XҚ]w4YtL'ꨴ L >۔y߸HnMWp {8w|6 6/m} Pu0Gd-:!n?$$jfG2P-JK>L:-Qt=Yxkpl YMzC)B 1`52ոrݛ1'Rإw*!]Na ${}ƋxKLEn)4d#MhOQ97"%r7L^cuqDX­ lKhuCHE0_20r[1LPPo%ڥ7J-T Mky"E9;ׁ |ѡ=*iB;բ|It:B *YA43.O2Ǝ_O5X'.f w$c)qBxhdSvR€籑1߀b&#;Q@{4Q scJ^BTެV=42'?Sj1>~jC}:66fILP]П NT3hvɠ&{BdFoq䱉{v`-?o=?ҲxzVD8D\0z!6q~ n*Ϩۈ;w?ST9WA ݭg RrW:9 >yQn%q6 ѧ#z5\ a9eyL)Fqŵ0~`e2 .Fք&ثإz؆Siaԩ̢G ܛ#N$)}!;<GXaxZT߶}EcfQ!Q}]5caފ%=u86Jԗ^&l~9)"r|_kM􂙿m!څV j8]~oahg Q+0B1l x;[: (,b-e/q̑8e2Oac ɛ!PER=a; A ek{0@Qt_p*kɬzWY]͒ [8 Z C ~& EC3D%۾5=ր#5TlD,F+9}ҘNbA q+4C9J??2/#@ݠjHί(+}U~>Um}qy]F Ui S #3aޙЊ9*1jy*҇B6>ykU8_ Z`\-`ښ*J/!jLmV%Wk$DJS"1 .ëD mU?0E5hdG#{bãW}اL$lXa5j>+sgHgMod3鼋-B 'tK5'tvm4Tbf[34Djf%o>^ֹgZ~cH@sm!ͺx %&.?}s`=%[f$c߹1Tؚ.&I oehJ_1t8)S~TЪ8w>X5h4O!BѪg;~|Ub҈1!g}h3{ hx +ƺ4Q .+9:4kI+ﯢnbO|u)skPW{}1rMґyUsF A)R=-]4uښq`bZ.yČ?L '+&Lj e>O+s 3ÇcER Z̞ܠ19yOoj+"{g*K#C|a;2UȽ\\m\.|kc[,-Bqy$"O?-WDZ_ 0PDHч ڋȲOy4[&k1 GF ͊pv )݄"j6V\ޫ(_}8eٔZs[g%Oby$xd\e/t/(H|7QϘœ~PT3Uo}~?&6hX$T[!\GF2PF* ɚAEbk1|mu|1,Evs2 k{U1VrVv&Y~RX$n&'UP +:=|i|!-A\ ڥz a$cKkG!"-Xʤ=@Ʋs\v9ۑ XZlaE0ˮ<ꇼ4 4N_neTۻ&ckYbrG&ft_e++<lIƪ)V(m D5d%<֌}_ ԴczrR閃 LB#: +L CҖZgUbxe%{}"Lrb&%wJ $&^\ֹ{€8(y϶ Mab o-%k%xYXT(^h0/WE4Aщl :RWnLA]WX4Q[.?o)jB$bG_xAҺ{vY;5mn=a=Z ?nOa h^J{~BS ``tz`WedG(y=\kȼI 2 7/1BAmA N&zRAE[)ad3,!9Kof3Y&Gۻҙ"?g&̊P> &_ܦ˺Nx_q,a鮳 |'Z˃~G'=g@Bo?6f[1OP ;?{%q[uzqaJM&\wz2kS`y9H~k;:^2ؐE?Ob[p m qlr\r>COq-YC0|4H|S2Cc@~n9l'Fߥי|$~mZI뫡I ;R'ҺqIˍ"Λ~CcQEs##vT, {$~C)nLԒ©m ̾ٗ./%@(Z:}oi)3,ٱx- Cng)&P3E..* tP_PB="TvRb̸!ptCQQ,O6hD jgY_ cmPi/UAҋS«բvxA*~kߩE_?*Q$+ dC'M8Ք?FؐR4OV`vkUe|K$+𬃙B #!R/^NbmV"SW-vgWXO+ -+qA ȈJ63kQ 1!4H[`ORo~>PvG@pAPS |Dr$<:s8D w 󿅮AP/ }g NVf78ػħO[TY9QS5[K(A\BqV{G =B &㈀ g", ytdS|" b |uUҟQ}@zc'k“TQ*)Y[Sf!*V8,D&w[׽|u<3&)-Vpȅ }eG=X*tGc@ C-upK!! hR n>4*3,沰~+rV}#=اTGɫƓ8W%1JVȸ̏3cZVk{G(-[iGAˀOr *n~+f< 5,X#,V*F YI70(mReێCWĔU%h, :.)mDt>3gENvW'ӌ> na ,]8ܔ=keE=$5B$grqZ΍ڍ{x,V5 3 Bu9X$WSbMuL%S:>Q(zôf&ޣ|քDa֑vr_jK2` !+^拉HKzbW0mƲJPNdY׭g$$/lI2_6xw8.6B~ m͸a$Y> oLZD3&kpeo?;vrzF.%#v H $9PhXJLeUSM)y^"!5K9kB]*r*[,i s$Xu9Qg$oZΜ*qDiiͯ8Gϓ8|kEty&=;ƞX [ aMSh΂}ѿsc[&&d][A ;vA:cWq%k])УAs%r<[dx8'pUDsJaGsW̸+e[LwA<؟mÏ!Deʫ}ˋۑnb~ ("iWˊ}|͔Eeٌ; u}wkR棒"kWq`8OS* q1q87gQ\ܫ9]!ZaV@k# =na]jFjtPI$k^V̷ML#K3ӡ+_+E~p5UPmy  ̩ZZEƜi/\ީ;BH[QWDA'u"1Ifp ^oz8*Mx?j3#( Jݞfy w5ULЂPtzqQ:3V<$73@%έ6&.r_Z)S*P#ܜE 7LD}7nV]^dry"^/”ya,HwIhсLw.r~P-Cpu/!'0i,F #VDn$"/>+ %K#g tgƒ6E+֊dd66e %"CbC)vð ף=.7.KPc ǷD3JoaݞK#9 d7`!1&.pfY*>`_)eo4u%<wqE)8F <قJsmۅ٦& AsiNX\Y 0Ao yH̿ݺBk%fiЃuAXf҂@q8$w=?0'WkE`FN\>{d_ڹp`Ep_zH/)v3+QږV.Io4:!>zI)Ƴ[ "_+3'+cqgR،-=r(G"=j܏wioV1@.c:3zajcppsuHTD deC| 7,M^S&>\^koԡ omWj(9I ;jCXdd)<26xODV鄈RE#0/5i12!um+E9?{ ٚ&)VjjL\Jf䓡2NE9#4C w Dg-ނm]5'\6;&/DX\BQ3(xo W*y>|CԠ4 _?4Q}"W E]gQhX@xئ'9h>u|CΠKf徿h뇔t|>aA[F! f#I! -`C,KAuG[mdB@-___M]/𯹡x4 3;t<_W3 47KUgkV06H]3~:cf̎C6^ΐ *geK3S({6*7ؑBG ~4HfD*aUAklv=-H@ua6$u+~Q:wRo '21a Ϭ/ J{ 4I*EXw KԱue (KDu. qSan> $Aqr-r#)Cװx&at{gnjz>Q ()x8f ]`^'R B7)1EH kMBoVCI2$[KxWE*-$9t$Vӿ)Y-:I" Ɠo玗GEѪ{c[z?(;0JaJ VbJ6C'2q2L4߬bcJ{8THݝj2%܌!_ +b#c=^B Ϥ&TTX"݊>Vp˨BrJ6Q=/qW^ʨٵD7GbN;bD\z zy,3$O,3#z"BŗHViovt6\ER9#0<+V!m+C]YX/BŠ(U+S~657?i8 x7x-<zM' })BK n[ކMs)iXՍt}I)S^A'˽m9|_ E`" 9z:n,JA.V Y&cn#5&̨,kzؠ3x%F\.nY ܭ}eXn1{Ņ[Ul4ث7+0I(;@L᧛8S5,z6+v!( u%݆JԳˑ Ör6GgoqpiH(NOJ2.WM6JKcoձE3σ *!g^5 A{(]¸1)0Bf"Rqȴ>$vlArl%Uz1\l=+Sm|P?rBE}]ZvrzE^ptdy 2y0=XKǁ1@Y-ΛW.FcAB @QDYҙx.GRu(IY 2%Z6%V.7N\z5;\,!X  Xڌ>EmKm-@`|D.߼F"-DU cXoU ܣZ)MB1zxA/̪#fg^`nO ܼ`J%qZM總18ȋFy3mXLK|%4j),XeAY$ :F$ۄ47J2áQ,9JBk"wwLI+!j~KcuK|#Stu6_p7%Pfn\KL_Gs4O4ܶf;b=ʊQ/@,M1Bi$ֿCRlDLη d@ ]b r: 9I^/u7N}_B§xʘ[S,YT&E\ac\CY|/Qre=0H΋4+:juˎtQ [0WkU*vRBG &DhhWi;99RX`5`&y20jŸDDf0C 帙B1NQ4$|XGIcļg׈HC۶^\Ӷ wq,Cr`<5;fj[T@| #"D*<pC٤L9jug8CM!Gbm*_IHP<; *c"- ,mE~|)v\6 ߖt?ij C"iW@ J,.XfpG,Dz+=mF8΂ xD%cW\jI;d;Ze 1PEo ]#pzɎtpG̿: .Hb{:Ps& UD ThU2 .XvĐt((q +w5/k <˔S)7r)w'pNjz*hMMqH\!KD`a[ۺ Bowp5Ta2ˮiu'͇g8fA_Q[O7V",~P[`gs7K}HQ+ Mz fO="_х`$YY<4dpf>qWPTU_p Te" C'4p0|TޛB@h56|,2GZ tʎkŷllKjd9-)GJYB(< 0Dj?޾v/uʗoU>.Z!->Sp^|{Yih#k¶Axpo;[-!' ЄʚLVz[FSwH p]<:9@KL: m\.8G)*M+q[ϮM铕z:V]1+ ~4z/ĹkAuGq06~AtFaKd?>9b؟ys)4WS#nWMѶZ$+eRJ: L/rrqq]lWa<[Lua`EYH#V=ύ,\>҅Ղ (H6GzSXhoPMVJ$?t#k P}z-j M/W'T;-=Kt$uߨܖ!rb_۬`fAV[ Кs0/"i0Z<I#oEZOw!n2[KDBn^'# C`GuYdddn7˩3"l.r, wsN<Zqc[1#{h˄67 ]YjS~C1kb/Ƨ2qQyC O"CU"*u %;Eex-D{Fm)X$pZyj l47z Sjv_`KW09z4(͓Ԅo)Xo0O)J%(ϫZw:s_w$s`&]mk39ݝ\-1jz*kp3IGґKZI/ Gz\z{P"}>j w4<+$kV[XDnSG>|<2>GkGM0fEovTa&F/t{*1teuiw#$^*딸ÔLJ"*FLD(s9ywwKtl9 x^sdrN`-?P5WhU1">h>lcIʕЌnWN$Z?"JuV|)7& ExW 7'$dO"2̈́>,2)+z\^/(t8XӌO(JڧaMH_#ܼ8 {~PAׁ8_b$]V58 & ƥ`bh*I+gGJCjob=BA+C ^*F8Wcfąam$*/)@g&9`oYBa#qFr(nFrzd\vnG^Q0̀41[֎M=%Nć=-̭_LH4]2UhF&L:dl:eCmoSkFsGxCe"[c1TB22Aql44Vg܀*;PiiVcيmvׅǜD7ɏC*J-gq*`vSJ9MTS=0VlKt;t[ZUtm ?#= B@ L{#*Ȫ GOJnpH<5}30k<uEmpPɒ6T5kyS}AN()tisO9sT,! ڈgz lx;z{sɤ":ʎE8Ct8R̥1Nz}vY0w9bߣu4) Ԫxlـ ~=>!l_۩5FJi@G.֋>Y ЊGN@*ҵϰ(qST=0/B$Hr UbA?PKѽ‡A{$fm?V!BdLkK{$몚Vqw] r#ue:H쇂ZvZD#oSJ>Y(N͇z洿 C[-q)Oks+=oԺ_sተ Gmv6wv-q#o[ӥ^|cˮXyKyVdO0k4== ȣ]>\u~$dm2%ܧS%$(yFz>97 t5A!ܥRHg~OGR:Z/^S D+Q!sohoR ze|o{O'?bTv.-1K@XkLM 0_Z4C`%bu]v!vb13n_q6o|++ ٹ1j˟=7gǦcUZi-cp< A`p5_x p'hq,Z=b7'_a  n,/x(ؔ@8jLkTsތڐf+,u|RRsQL_~1y'`-SIRBrh+Lk%!O*0 o+ybv! 7D P[W0-ޒ .b9(~|v.nqHtH ~:8-vr{`Z/(S{!@!w*YE0Ѵm+vT0| C]vE ~+I R˳5Ɍ] p 30MΩ2^jB\7o P:NXcuB-]@O`mqXJ9P[9;kdJm{W2 = Jn9tUpp@˥N`v@%yУt· [/i޺_-M^10Έ4*,M0CgLR> cT HB'y_z:.i~^W,}?ؙջ9b Й9mľQ ia2=L@k6nJIΕŭ}06'oEB}b,U(v!a T\~xacsYA%p/BSI/^&]U57]QbuIevpTOSǩ{Y=j[aO5pѸlP]e F<!>S#ۋԾ\mB{o@(tqOiC Y[4l늱%sf)^e~u3< YarSG;+ϙՀYoT?~ՅG5y>BLSڻʞlLkq Og2[j1D?jǏT:~rX2ݕFz֞`PlILJr!NNoP[ 5hEYTdIxPԫ4(L /mؠT2u^U7z /U, " PMyvΩآofjBWchE )ӭ(>Y!w[``R[*gbA?.Idoq)HKXIڤK BG[5˚ 屹3ŎrNEOڵS(U3hv !ghCXឺT}MKH |c*̊ mvFP  vK7T&h}, cw{yH-A~̘*p9 YoN Ȉ 'ԿTҠZ%0*t~) HV(R%n,$|khT$f7Gٟs+*hvJ76Zº~GdX[C)1'SB>"F "Cb^\Sp[/y;)yyMq]>hj 'X/‰͸oXuڜ}%Yuʽ &cIs Y@8N 1y8iܑ< MQS:auN\?Qj^;%X?g'%5c-HiMod \eUqȎ(pebBrg⏵~H.yF,"?:]/XɟIcҝKJ%.WH*g)G,j}2sB^aje q/H;?qDe(vm$.fFSRS1?O xN|#j M&e@ٌdGgɑbvLxlCIv߄ $Őz$zXY roxi ׯ$gz Drro˅Of7LyAhq`$U қ1BYb:$l?:"B``&o&?s[b6wt.|6GX*e RJ6UvM yO]Fi%v6߄Ma&09+C9O8!GMV++C(S.u<}u2,JO ̚^^Xc,etp+.+8++<`2W㳗ލm^lIrXs2/,H;]xO# uWA=uUݢN_AƕvHU7FIRӳ{]jqHĝr[8WIfvk sH w!%;H`{C,p[9\uV1形rh}Q#{qy t_ 8(`oEK!Kn'`rn<CpKpE׿IN8Q2SKKxK/2ӂ 5 3⇭= .{E6cĝ=Jd4NuJ N򅹺XB,Ϡ R\t;:f(}DAEϚ ju(Y d(>;,OR?p,B 5B3БNyELĆx`~#^qiP_"|n{{u {m8|+Ql%H"mIZ -"bR9~ilE,zP-ҿNJy#SҒ7*.UE o,X)tp^Ju$ ) iv"T(3Dݍ[i{D3 0|ŘlC=jH~RaݭzCs+3T`Kud{ɗiQ,1&8[ҝ+`8\.Q :yQn7.vg-Շ y4IfS 4Nu#YSnd wؽR:mG+rQW"3S?x1|ƉI|PT*Stf= _$eKOice>,*M6.BVt|u4栥(ҮMzr…unuK]p!X0*xy7jo@j5[tE833xox2tÂ5hro&$U$#?o޴Nȑ}j&d)s>ݗy룡F_|N{Mj{ɫvi wQէt K Դd10 GcHmOBg4{":$ҨM sƹY|jP&$>x_\ײStm"Vg8]adyȗjP;R'݁IbKI U]N\Y%bBiJ%c_^'))&K~RgO`V{5O1wbI~(C-wE֖nV?;/oO;Lۮ͉u 䃢yPSmSv?nm?fXn'~׀W&- !ۉO%)@CEax ۉgRYrIOmgZo\²% 4;ݬO.mNX+%=@BL-vۋ '1ʰT\B=Z.;[ "-S݆#G5xW.c8Tl$԰44mU9A^=XCE,ٸsKe'G"G ^a92MdCeZ6e-a%;I34_5VV52O}_v\;:yݹ Skӟ`+17^(8^F8S"W Kv*Pک1u"-&rq! |"Hչ 4 `{{mS,R8W m("u" N :78P}EAjZdZf^8l!#c-')kD@o|j 6,YsE WLM|&9<q6(eO :jj ӟհR ul_τ^\-1ZP[ʦ<cwҴy|+|Ub|h#+h}nHpiqFfAZKn-fvz*A SngKmU؛î~6^Tr*&);Rth4rb_맗%eG*Tc ksq u5%G}6k#mHtΌ:͘_l&؅ĕI&ݯj@\6 jDŽdRC g(QEmCz֝lNbP $[^fXWf9gd݄}f/hE:h4 X&bƉ.(`@{UpP^,1v ex˜8|p2Ԗ0`@n]MH)hq)Un? ,6E9Dz_%>Ƃ3b{ (zms(z1m9mˊ߭FRYv:!IW, Zti8Vy6)`T|rՌX4INyswz9!+4qY9އa/;Y/ Irt(61+lwܥ%6D Otzwv/Q EB澃rH.ph'vսߓdu*`?'SK+c /3CtϿOi6 [XPi(j.aR&gUs& n G !Kp@77X&͔*d>ޘ,e,HB&1E%`5&Q~ bwх,ea/>'Q6rކ bbT1o PA6M$Dpv}oa۪!L>+ylwc֠3拋v.!d& ǶW̱\ہ6LH`Jl]: .":aMֶΐ>UvHB3ߕ-%:}T~]]atq*@ҸCyu7."\ړ Nq>1RdDY25n Zyd0;ҝޚA)Wn㯎솿2I6oJ -C+3,ݽ1o%7=jl.ygs:ORBwM]1ž`} 7[w)9&iu`FA<(gD!(=GaH4"Vo1P,YxrPX3n ~cHGh\q?>E]x,%q~o9ۍ\@-Vԭx=4$s3F[@Hlq?m[5^zbk |!_@Oj}?̯t㿋i>L2bj<J8e4Bȣ9ɖt"f= ؖ@y*Jah󎿎zM*$ jd-jb11ls?.~ kE_v_>d.g%Cn8Mg`ᨾsT~T3\}h_w=~qQlx| I5tTR QLr\Pu|QD%3 ,:?K^ bE) }Zͫp`'j NJș0C4f=@9(5,I\M1dcz >/[L^_B-2SFyoPVX:K5ZJy5,x8}*9yGq>yW:K|{I&lCb1cG3̲r==GPBT Kp3!"pj]w(U49A8Si6?0#3jSm5h*fDjc+t*N@>&4񋳻a/k;fA2I1Vm]0n Vlo\<6 3fɀ_po[sy{*ak>wV8v{qR[ A--aU\ !${$$J!D+آBNr'#y4*@m(oi_fN 0缂 ƲQ |JoIrW +v_>{RyVz -tRO!EEeqv0W7b G|* oI%Fl\@_". gMr`Pd@#6 FQؓgh4eQ4> !c^sGˑY.54`Qr;;.{3Sr` 9'bJ_H>0\jmz^Asv/ +1,KN#xh]x_uz+?`O '^\SQx0'Zµ!r?[^D)FxNg.~F`rKp)۟2v6󂳏6Xn= Mc&6(w R'a4lgE!?ߑIHz r`o+~C�**v7X1DӔZ(U3TL&3_O[ӯA۵"P} @PɈ,YC|q%I+%4ZX!LJ|.nA0x jp a1A3aX򛪪ZcsEZ/s͈`.=nk`lhutebhӼz8ާQM7=:Sc`-5Rc4:XŽ#r$CKDv0ISLUAqvyþ=7?J+~)xFzV%h.r.o3eL /۱Pm`˚҆b9K(9m5|HL[S<*U09 K>!Ѭ‰?!)e͎ bJATO6)5+5*ZRX5ț GQ _}e\&W\y*cUGY`u -ؼ d91Z: ͩ(Y#sfSZ'.eq8L"⧓ULwXQk?:0\DkzTZv Y*$ >9\_xMi=xz 'i(y~G5qkYj=+ dSXF^.P8f+p.^^ҴfNADGKT,w{ϧzn3>KSra/P `F뾮I)8 bfPHί$.h OH i8bE(>J€Y`ӤYא(~C%pf Oz{ww>?8=){/G 7'ߠtc68^&S1"/?u2(tJT̩ b RC zBӶ6vI**0,dzbtƏs} 4wڌ.!`6zp[&gGn>ve p5@[ *[山+FUyX5?/@t%䂕oO n P~Dq\V$ $TfGeǯ|ȯS(7gy#o _x{Dux9Ysdiϼ6`_>w,W䶸?eײBFZ,|@WuGD4?0'TJ4#gwmzuj7Rcm'sX |/6靮~GU|m4d4HCO3TCgmԉ]r9Քj܈eQE[{ݝM<4LGK1+Y9 ԃaukK)lm$L)+d6J5`쯂ѫdsa2;露FAJ_=>`~GUÜF6sEeZvZHm零SS΍-^X\w}5Fʩ8161("Bj7Sȯv6R+\nUo$]gY!x$#u P#jK/5ާgDݦ8ӃɁg%V}A>zY<Ȧ"^|3˰!%q9JzACp+zf.I:Du Zat-Wo?-*UO].REaAy|<smi~]e:Ci5/21)MT\tQXV!% E?T \I ]YNP2WViMt],Tи$ۦENN0"6T%X7` '[D#Av_D qLq.DeЙF@ fCv: )c6j&P/!ZW UC43Tfv3|+G*{q%ǹ( |Q?ɒ]y_!yk-6vp__E7c\[_x$~x̔ ?ôXsn9;+Y`D!(1U<ڼ mcZ*}gyt$wb@ViF.ɥ[ڇ`&V8$۷n+nK-*3GFɗ0l <9]ndbJ}PҊ I5;y/NGDxuo$D25W*8ᚨ\@h"Ǿ2tSԿ`ROtXLzhwl,qB;DvVţl8A"9u^[@ƟAǶ3 pKу00:o-컂{kE:=)+z|/eډx%̠5F=(fM ^"NfI مvb]P'*r@#CC.Zњ*[T5lY* ѵsu b6zboӧ&u,b= cxut3 1FIsCY(aEk?U 1 3=Ӆt#Z1sŗo;p43UPiXseh!b?5V*, kzWA?<1%/> >E@Dhi"2F^,rhJ\4uj;z&ˁ4XRRS_n̲ir(!w-kX:_=٥ .qJXpi"*QED> O*"-wjR32Hj&Q/iDGZg W%rOx{I۝T{<<=mOg-sNf2yYk@wOFǝ3W}.;x2TRحCTYZ>pdl2>Hݢr7(;O+kἮHo09% }uan%V,0&ٓd5ja ; '>8 5iKS9=O ;d2$.~MuU-gjf.;I Ҋ\d܅/QulH.$tԋi,rIcE۵lxϦJ2fT|`ʯR(woj㍾9+ViN/phD+7x~n |D'3!.hs%(ZfßO/S5#ף*bO>~:}"uAe|U0̃g7GI=q.$n[%DcV+qz\^ ǧmkZY ,ZjᅥIkj/Kak#zNQbӟ㨽g!ՆBe C^|e_6Vɪi%є8E~S kL:6EpJ)$qx~v]\'Pp|qg͆c i޵)Êjݞ6*FL+zl{V0Ӟ>ԠUǘoYX!)Lq|@?{HdgYm3'׹VVߨL Iql4lV Ϟ1;BfH0BT s1̸CDI#UB@)񳧜q*<]QJ-[tO3?뎊Sͬ}.y];~$jlgOSn{2lQ["jXV}G01W:I@p4oWlʎ^E>pS:{պt{!QZ6fMJ.L. +2 E7G&Ùd{/? jsYAw%&&7G q>xԌfWl`wmC9xAsNpg~̈́@VZe|9A_goI8Nn`#CiaǶMڄ{ɋ{0*?3"ET9lARѪ! n4q*^֥x~e6Җ25|(˒qW)CuY @֋+i,:hbx̜:^_Ly$(,ƅr2T֜C\ h>ꊺW9`f0, E%1xQVΏPx.,0rMEB~^dA1dsXH/ah!T8\+(Ҕk pR铖>GƦ/4h]RgnH"4v_l%3.HӨPwG7u6Ɩ=|IZ4|z+lj'vmiޭw bVO["O\az~BqMun"*xݱȌC˪KnTJXwPJJN1p=]9\ipypA&PS_{?yql8ib!;\,)K to?Q{.lt72EdmقE+d[ᆟ_MiKK%䵔 >0 r_ Ot&kYWbEjkִ֝3 .ĹS$-'xߗyt@7NdU(McDkhz#;ȢH{0WG?[jmn(n] J T0vrIc UQH8ˌZ/o.X =ۈINt;;`L Ǘ*sADǶ uF]oo*O@4q7mu=jc d+O"cAxXRDV1ntyؼ?ycc P 04IՆrQ '\cC@Zzp)KdSV  \{ğ~3PRdN5/h>BSߞɵm+W(lmSm.ȐiPb ]ͅsښ5ln[(A>Zج|Kq'1Ū/W=Cq*C]J9,[ 禰C]!؁]c9TpdANLx26C\hLtIqO bXS?@(bڢ,xk;1K!F6B[inQ~!S_M? #d,c|f쑬{ҸDT,qڸ|=08L`̛pHi <:>.4RؼE(v`%"s~ilfU_]nLB Lc!%G䞲J* m%3m;Z6sِ=k.(~ ?WǘQSPROqvf xXTBd6ny6 B0{zN>c[}-I2[hΔFQW/M)!KȢ8ri>~dJc i%͙U \da }-۞}pmH*[ Na3i#-mT"^c{ٙZ㷯_qd Tީg~ܗsle4]ѻ .Y$p2 jHlxrs%~!h!&a6N=Zے^0e~jK!KfE7ՙos4['6 +b,go"rpz5XHAxY?zt4nHm[m&oT@^VkՕJR ߛw!arb_iݑ-.K?; X-#V?lXQJ%2_5tFt6c7VՊVK 1k 0x('1Mgc'2ռ~47*;y7(Ib37 j?zc-@X14g yöQ'+l YYBʇZ?][TK-kZ+g:y &@C- .~6jSIPb#(&/C|g#zmJ qMUW+{p*#CËN;CYR'.O5e#N#X h!l\ 72 ʣ[Vi!+C2'j}'9eTub``iV3T(haØ`tg3eeW^lNCӾJY,lJ{4+G<@,B[C6qT_Nk3*Pfr应CeIV(p0dr,xHs].s|eRC+MʝѶ|dINdJ j'~'l/^"υbq6CFll5RH YӇp´3tF_tׄRfF QOgzDV\l=ezhl+]Ggn-|]ţ_s1l+w%۹ׄބSNM%(C wP2s`Dדμri;ŧcF@(IhSY}M5LֈPrUj$oWY4~bPɢ6:΄lYD )RZM`׏!\o# } lr Pb n+;^D;8;0Ζ^$| \T䉀H`xK Wa\rE:ދB(g[{ /e$cLuwVZ@T\VKnd-g|8T$!7Sp?#j,ɔr޺\OrY ,J1=NEw(SԻjM!щ^޼Aa4Jv-Kƭ .SuudN PV /bKVJuI؏Qף̔ *:`Ne5⶗IfySJTqŖ,W$}KU_HQKy*sĜo@/h3݁\CHQ9ksJyk ,U':M-u =ɯcp 5ء`CKۅR?HcKGU5_[ھt)g YQL IuX5ٿag6XebLP3Iί,J_JLڕ59._"E x5KNP25C1ǒɆ 6:1t60K/gс">9l0 85ָIC({W&[Ehc$>o\ GEZ#XK \Pv~le+īu%0~Z9,؀(:2md5ْơؤDZL^_f-=$" +i,L֫IUթ?HЧl?~4B3Z1†p-a.i3^/؃iQBS/ XoM3 j0tpYky*6}/s^cȭٺ\ܒM1|Wr zɹTE# VҘ~g/Fm\"P+9uYؤ>]&&Lٓ6uo;_sL7լ+0-%Pz&`2zoj\U?Ymr͔* 0`D#uȖ%m%iGFZ*T*q,(,ڟuqбӷ<ܤ(7i~"ƌ w_rlF y-xY]h(ἏǞR~Q ߬0E;BpdfwRz 7̼3dJd^QB ,&4:%= 9\avpcB/6荁p"}l7Uٍ_>8< /a* gӜe㿓g$=CV/l/}+m;Q/b[c; 9L{zbguw`ڂ2ħ [\\g"` RXTXWU <@9 q9F.Xq$HGI@eo>ЇM20c5fa*6w#{q DRERJ蓇|&OcPzCPt7c*;6fh6so X#7l<khcwpsW u?WIlB#m$n.ZVpU@g}mO{GqnBqxX2 o5nA ,OO.eȌ <:pnva&_~<]=,M6OJ.+FF!D@]ty4 >7:]y%շ'H)%#{1춇g8F7gBėx0DkQNr{EWwN↺E-. ]]!ŭp%K:5ю) h;=;\Vkc_̠cryV3b$yjm`//dPa 9{6H`mK>ĭy\"'jcN]}mw4ǀalz?.6(Ȥ)`Ĭu9?; }[W1jCs.tKOo#<̐Q_* G -k* \..J#*,l|R$Ჸwvwk.+RȑNޑkߊ^:cHJ6ֈZ%^:6 ƾ7)ɛN4<4߆ؐcM˝W hD4>'+zQwʹC84|ӢքpqB:&uB70%*R@Ȭ2+%lClQRVKf ;qgi9I"qpMˠgXRA|zdZxG}c`-:nښP=Dfv["-3#~튍Es L>R˾ A4O Hrj[f !gH)*>_W8X<tw@mI{_K!}s ~Ljſ^lA5)7bGX D¥ZD[_C5K >`.}|S. UVdT2Ԫ" )!4N\lch\UMfctb 4O )[,Gǜ,UkG>!2\7In%3D:q^ vBzI_$."'k~R_41}Udm(NK}M=;M?x]~p][ΚQUiE (]szAҫ -tjCEZD6C~ sT-wEЏF^| 3`4[Z!q].me/n>s?'s *nRיzy Ea@<y*+ Co-H--zk)Qj+ Dόm"rZp۞ |$i}XI&~t,5k?y=q ԬbPYl_f .IC\,6wzR1B4>; Q6pJPXZ`O%rh d&bNBL΄@ҏ]DHW&gD$LH/AV3V:o% eTzijď[k{h8n-4i̾OaKb!o;jQۑR!*گ"sv"('Z.J@N_f@.$dlμp gf7|>R՟OYJ1R1& ӪiB89ǡ96>Aǔ<zx p0Vwٱ헐Hazއ =y [2c0(}SU2gt*]e]I.UKRv*=Q-E=5|Q:|#vTIF~{d ciP|>Off r?g&jhT ʯk5x2QEKsC r*f#c3ߡ ݱ,zl:ȍ5x>^&-90#>o};OG ).1hN6_lQ~bxQJG#xQ%KUr.TAGA(@ ҌIa0!ߐ SI$ѨRwt?}ATЏc nwlfI([DkHj}@WQM6tk]D:KF1 %m^7 h k'xyDdq⼳w۸OfB˩,e޲56RX0$7\:tNL]A5?˘7_\3T3#b/-k;Z`$U^Fg6QY sX28P(4] E٭3~0,]-/?i].=T9GR|vN')o ޒ/۬!o`l sM]GM(A#e˚z0Jtk%` c/0 )~#RXQ2Kh(Bј{ \hՙ˄_Zy~3g/o~.I%ݼ,XOULEUѲm֍Xx=u{'sSo? >oˠGQ%z5%WE&xAa heݸUƼb +I_Ge pieIu24o_^rA^hQ%|TP4Tma\]6:.H 3k4N.}qvܢ*X]Xg>~]BY{VBG籰ɖ|%23[Ԉ-RQΠgcs2Ϻ+}:|.tߢY}biLf0 jc9t+Ci};\r:+\#;JdMQCCUn/< "sGVUHE E%KzJOM:+Azj~oT~D%1iL#hJrncSp}$LV`5%idw7Z>sywCB:aQ``祃g/¹+A;m҂)0ȉ|Z CT(o'Ɂ-F-D.54>B#Vc}ȡ svH#fXUMj:-"(% sT 8l28C}ު*ȃ/HAK͚ د ͤlEߔmHBVaت5`$S[ͯWN? QOGq!_+|`,*eJJm voD[$>Cx/} vq{xqM( ;fv)̬8} ?`i*yMyMSvO2z:JKMsrA]_Gc.bCM~Œ> r,FрL-u64 Qכa2E:*s*8!0+X H"1%%B/!+ֺ֞'*g$p9 8=v~USdZ^{[!45VKO *~= 5PbHqDYSa10A݀7b=9uY+ڨ×q:q%[D 9R^y7<E7p<\pTVWؚ_EQlcO'$(U'H_!LLM/Yd3M NpZ(G3bO74.h 38d}$@%u$.RXo0LQɭx|1SI~/4X7#eK,-v2w0s%OyUj'dv;8Ecs$FC*PɚyϚ&il.MeœxMՏzP b v${)dv㶻"?T1):Aj=TVznU"m>WCd+X"[?lPVa\qo-Sndw{l&-rٷi ԁAZ ~̝}ex~d0e3iI~4 JZ>1Vq{L,3wOI$pWpD( 4=A! m:S1Ә*!"as Н Ky跡!/'%g~NdOտK srКJ(U !!$mBԼ"(CՑ4G).Ű G<`ʩp| uo49G}F4m&OnPkHePlH\: MNoKx3Ϟ3!5Nӗb)2E=E5<^#h'{P޲zimzV/MIr̯$6h,nGdRlRͳc scd?m>9y= .d?jaԣ$r!8K9"*n<GӬ=J53o(6A)S58r#"gᴔWF3Vy)l;.p{yD.̜:hQqWkB,u +VC^oxt`eY/N%7!N&IhXYk  =1o_9?V_o%c YGUx'+Q2cj]t>]7m~X< eУr,Folp(%-&vv231D\)x]#xu]*pȄ_#w VCp~MRd cؗ?[ܱ=zcѫHݿ'tm&o.ɼI B8~UHwYH $PqlC^+ySL!uqU#}Dϡ &5m KYJprq\<#ؔGկ&%L1 ?lB. &_О*ȍNuzڅU%SIAQ՚/[ݲ-GX 0 Ѷ{ %))hn9W9ׁټ~qʺ/֍^kQ~&tamyRvR"~QiDGP_,1r(KK]&iia~n$,cfYtstU+T#ՐxIByFT6v+9a~1΀~qH1UW.\ 5X l@ \`?L|k?aFWƻĢtdI5ȧCc?ٰ\knt\J}ay/ACdJa2■L\)H4 &JQ>2˙Y>p F inD0Im$]pk'#`U .{\GEŠmZ|Cy&&~_G]PqIQj&nX ̀w UA3/Ѭ{t`_%?IgU(1skCUJ G^S@`K_{EIdfA%Wf%+wῧ=; 9Դ3By/.\5;CgyQ^y9=bi?~xAw_v {Y_O/,=-ƕ92jzV$ D;{F -ě!a }&M:Q*  G뿂SGnTlv~NkK8n,m[ +׉uirq8-bWHgPcP%+ ^-wyT$v~^Vq_!ٔ^a4LZ3½F,y~*IJჸ 9Ƀ%)eWtXgvB0< 6܆G+ؚe4{6%#^Q\+(֕m׼=J.D׈ Fvf`%Hɶ COϤy ֶ밆$ gnEXwQzaPQAڜq0Qf!o1pqg2#Mg0::Q6dmD7SL:Z oX=6!2csiu4yπl)Йn~%9#]^o6j8( `ZI%OY-l|Lwݦw5Z-@H)uj+[ H3r̚1,RYl䓺IIg#U{j)fEAGf5y]94`cl""l3nG(^yI^$RtZʾ":qQ _@ xf\URpi7>&{o.c*b< |Q"|pĈ3L!;tڟ?–S([U$5\N0DxΗ&;mìMHeXęFz{RZNAQnW;x=LpsX4$B+?g&쮺=ܱfsS]]>N͖IhKp@FijmevGHP"4@h>fE< ΋oIG`@7pFʝjauHo-3ݘ ?$\~&\y+2XTpC1ߓN_~-_Zb>ۿ aԌšAs+ĭ7F4Jn]指{iThb<4 ƥ`1 ˧bgB l/M+'aED{ۂP-eE,KQrM08:f4%ǦB!MxgN7w4XxXUV2y"z;;x "ʍ6z2_l٦P+X]LqKڥrw>SAjP?;8 \'gEXCAK#RH#ܯ< ӢhcŒd8]fȎ ,_x2q:|@Y0G誜\6gq'ϴȜrpΙhx7ݰ>@&p߆&V`?? eADF~={Lp1{ nu&,>وCa-^ 戭֠O%"P 9RHU2fm,Do"{"?]p(N5yRR*,7W{u!:Od6:G-,mYdW)@XdJ1s֮|Tzu 'xA=3俭GjwI/M!G2Mܳw$t;mk\(5Ie԰үJSˇk (sܡ:*~ p{P}+ :YG=d5zSS&i&\ٺü[nf&>۠*\'jo%˻m O{X9 28h<^tIr_}5 tgyp-qpݪ(YsߧQA$0 Į,i(U,"okͪ~MKe(>UP|[S)->۩ߌ)1Y+JQ s+s@6@ʜahEZ۩}2(U~`:`׈ ^B!~c Eϖh̅BRL%26M@l 8fVu0Yn&rM2c`e4[9r. c}h&VY>HGd|XrGit{߶SJ (.2nJ\we9\M g_ }p1"X~?z,t-0#dPhK]aa*Ȥ2T1x|dXֺf yW c95L"݇i knE5}]S։!nT>{Ui~Ƴ8Kᢳ#띲0s/mgX"գL?rjB@FU= T;%Z8?N"=\nV:h7sA5Y[iz'dCWB%).o _mdā[&9D5QT7}p?E3o<&I ^vfdaQVe@f]Y'K/85Ǚ)(|Ն ӍzV}vd)Q-/;Ʊ&McJY.ZCV^Bo=M7d=kl{Q["lVhWM/@WeEZ+K۴ MD6ENBz< lI,(Ggٲ@ɨ{]XFb9(txq,QhXTFA o ;7ԟj'^N49vȴW(o+KGT~ةϨޗ~ҧQ:kkY/+c! \hmmr?uo.J*ˤ X8qRR#1%?Zf1/${(Jskẹ*nmRqRRW{kXg\@;/tO_~hpvz?ӽE! b>LU'bSIyq Yg0QnfǢ/V69k\\8Bt_2vIǤk$Y]"WjpӷlCkvjְ>pbZQX]N˶;"/̦^X^WBoie?5l ʘQ?bѺ=aʒl.HhX~묤,&lp]Nk2gk"r &cy H3XA޷"ܻ YW=؅s'{(޵ܲbT!NRPj'`%;ֱ# +κ  'T,TX19T;)\Htp0) dx^ZBZ _d}sf["_ؤo{-{3TNS/g$=vBA'ZW5B޺HOihyL_-TBh &D/s8>t,~Oy2FFa٧^FrۨpZKKy#}%ٝ27-S3GNn"+ DIZ]m<$,OumYhWx6Eq(c;FC6'˞يgt bP^WYn%#Ïe~h aypgvJyq-|jhҽ4-A(Sn Iv .$6K)Hr6 ,|ݦ:MC-/}7P!Sx)z=G, w=ta%UzlYʹdK^FS("^f@} ;q{X+M?mi4>=Id09 ~~Fh-\Uw8lȽE36,#m]#![c)V07 |>Jbȫ6 ŶGver/HkCdfdЗ@n.,)BL-eji>*Uѝ/ǎ?8߫ QH&JhPG;dݣFeg~cF:%Tŵ[oosgDz:RoBMYDWb.~ЍE۫B(H9>1x-aUReݍ$i!92n;;L$lc iXuG ^ʻA ԇH WG~ a [x % к׸ŭhmU2bgY֖=b<O$lұci*܋ІM=y[Bvy909GD(CZTk%fA&2fQ UqYNV]eoQ/FBK. D\Ø(ܺY򅼴@:ךN2Hs8YD.)L5bzך<Lzݘ=HrB=JW3c3HhՐ7zaҮOĆQQǘT`ZDMPq颶n jzjDf'5*JkFa4־𱚖}>A a7y)p "eHzșMRg?7w@EaR.&O:اjQbܦREE2Lc!Cn)'2e"1f+ $LWy?F'CYjmDf j\ qr2 ɠR G 0~"B5t8#c8J#':%VrOodI:=ѝK42 b-AJXZTߨD"Lr'A ;ti5$?C^zAK{+b~ ÈF!x 7YFڤuVv7DV/UľߏJ~&mΣ :)+*8"\Ps> Q؎ ]bєts(A Wx<>^@"̃3C!ArT)3{3Q~/ë78~TBnsCrn/5=YX4"ewhTzJrͳ#N=A<%߭5ZU5^9>}>*T_w;"Qy+GC{~?_bk]t1sUxʄ Tjgbjo)à UUEEOG r< q/ ?޻[*߃N(+x/FbSZʘi}Yse C\5`AN?翵 )(FIw-lOwb#`4_X (LKx,CL\&Z88* 6%{~t=m`r%Hwh(~P?.9j! Z{?w<4m@_t:(ǫUm;6 30jVEXi~q9/Td"'h=W7>N|0bФ RTFnwe)u׳;Ul0Ud%T>̓0p7D%r(~xmj*q<,YYL:'6 Eyꊐkbx<Ai>_C3dF@&8ԾC&6x8mZL< 1/k|z LbP|%,X ™^Q0Dv^'FPDDЄʓJAȷQrTq!%S! d 49 e0K%xs?T"/wcv96D&Nn?&dw,'ۦ_Anަ89+*7R:~7Jda/|I<@߿j4 g )b55 .OGXaauST?fKʃP y~~-Xd5Da0Vu4@S`˱.UYJ?`ЋF QDvf#UHIϵbߜwbAmH6#5T7}o"5V2 *>oQt[Qf)*#aI,h>I+Y5ZV PT7v&Xm0@-qGZ.!J0J-#LAW B%EsxYbהc3ՈIpJz"떶3+n@` xA$OB? ѧi]BVYZԛށMy =hR 260hQ{yw9Ǭjt9dHB߂x=?sʂ̊ w<+^U1/LȢ"DPv{;CԂ芈[P>Lw!Oi`}nNϻ^)Z!iD)T_hhΘ֘,oJ nG}#]Ejk T.'c`3CR,Z1zȯo>ԔzmZ0<$E7 4~BG$xJLmߌ6d>tSD_%ܺoAoV1Gnw7neD|O J<\7Qf3ۻr3.9xw7ڼgMOP6LFi8`JpiKKZ@|e+T2⳯{Dn\TυIi,+iAō(u|tU@E&T:z[e(ne:-nҮʮ2 g_:p1;L"|݆Qvad#7Qw)T bd"V*LR`$씗.p.PX-_ۭ %m\.O EG^w҃8G%p?[{7M PJ8VLC$YFfGGz'BU!܏zjMkR&+;3c(UO>0<>VIˆNZA+E|SJ)K|:^IBxiX;.n@Ge(4xU7-^OJ㸄h9Uiw I[wx澐^g' AX7wv`/N P3q4Ý^\X+5>VAǮςXV@4OouҦAd#wWtNvbEAz 3uͯdS=;:![`/B o v\R @I^olǥD$qXp)~óG+A EPŵX>%΂;'?AU6$W귑~qWCqŌia ,a[ $kiiK} ټ`3 "0Y b1p2A8r<֓?e6x)tJ)V{S^-&Up [BnLZ$o̢CE1En07N~AXT,*#% h1,4duE-bY-{K#1С Cr6AӉAMxUcY B;^ ?buSBXLBN@ekҹ4º5=8U_CQC!Ro6sTǦ ށY: L+w|aj3%0ڤI\͍)Δָ,Dh„|5Ὲ[]dvU$iA ?}7G f!ozj] LwXg;x(QppCyG(I3$&W Nsq{,d냤JwkoJaM]rRG% %Rx>lWhYPgvLTkr& dH열`RAƌeηm,`Pi`ҭN5b9{&t*Qf|']7zv iR Ũ1+Ƹ{ U\#o ӽ=Ғ`Yt1c_.y!g)I',ЁmM|8~ ?$Վ8 eEUL!UvḄYA8!LJwTyE ٤ٵ jnaK}vH(F?ƣ\Hr<ʡ4ʦ잫Sh>L|" 0cZ?Uz[{ܸW+֙c^1o(y"lf1*r aʅ:3 5V'-dc`ƨZda7g*i%w'ҥq&Hc 0əGNmwT!!Ҫw'x *Cfd=~ {sĪwϩ.MH6iRB'Jq/_G8"om 32 0K>$|M]JPްcXX* J 0DjaNĶMQN >ww)Et;c.IŇTMkd2H+U*96[HZHVw{qwpu BdR&!Hp޹,ɫ>W|+"]tFԈ@hͩ** (ӜY-pUC!UsлwA &Tp[doCV6 UG=:O`r^m Jy2 ѷ.ӫ.V}FhvP2N(PЎTbqBU|/3D]gYnrԲEՀKU 1jb'א~J^Itɒ7ŷ0MKMDÏr՛/}(,]2uW(Ʈ4+!v%ơ8VXIDp80koхCl7,;AwI '%OQT] El Q@U)o|r>Z9qT/Э^X;%!L_&;D9&>йoOWW뀘;_kG^1V1}d[۽;' e#xɧCU@/FP~ʒHN>G3_Kj&Z2Haj*F-Q( vWhp!0  Yl0:4A=8A뒿KLy- g{|Py><ч6_ 1X4:a4 -WАe-D&@^TC%`b#G1/h#%+ʎ?.S) mΛ7z& Z OKUq9$#)wmXak:7s9EKUbo4.)=~]}猬1_dT^fkAp{NpF6>6E(7>|/˵L8ok?c\'v?}cn_/5a\X4O7s{sx@gMep>!;&sE#I>Bֱ_,,hՓOP/zqr{ݓҼѠb>vq_kɰmw,ѷhg|oTx)? RrIVxQM%0zGm/nVNf5Ց1Ȱ8=jl:Qa=E&6 0qbؠbCQ;n-]5x[¤X6:t"8tZohTaw95j|T^WޔШ?2so3G60; .ac 0ݠl`zz@k֮ɧv9F0dM/-Vf@)reog1o?fɚ=(An@Ӕ2e#C"h Mro?з^GӖS"`gΩ cS)y&5MKXW"Z_I!~}DHt-p(mI]z.}R?@iv`Ж.C;ԅMYANds z lň6ؗ1Ҥ%X4~KK.#h&.Rk՗ŝg(u*(Nl&*<BAc?^2ͪI\b[gQ`j{#jmШSfj d*˦޺{^$:MgC&5?`RfLE 5aRoا|q].˨ΎXI!1г' ùU&;j.sDAZX't3Qa~S=Ϩ"z8,o!y*8W ?'*k#=p ֓`e3\Wb$ѫs"eʭ⇌P#q=lB$j:{#.{\x (QVvx9Q<.n|rWx] _x_npYivmBgrnd Txu-uf{uK3L0}r=)1o8o|xlөEm&̲ʊ˄4QT^K-|uX~[Rz:IlX6jZ%dE.HgR4duziTN5#Da[҆6z"ACQԲ|nQ`I:QbTL] ƩIٶ4|ZcıDZEvTȎ'9:Xȇca8ʁ" f.$:)\mLx3ڳҾ.ą'J2$/K0dj,JEJX%}AyMSu0(5b4\E$eT5;L–PIJ %J9j[J2sлI;DP@O 2*l M^ $~8Q$/ɦk*D8$ɎZ&s0@]b-n:w!z5\;>dݼd׎n-x3\@$ɍ nO\:}>P* hoԾoUMiO5<fiÏf#o\pt?:nxoF淫( %|G.8MoΈbcflkqAx8ɫm0Uw#~Qhz3'Y}!.hVj&m(@/)^?]4W H~f(J V3l%KsBl6McdA>8w[,I ?#1 PL~hVH7(>U1fAG`цJLRe9! !ᄋ9z wScj d)޴78-Әc@@W)[u‰,xΜ-F"19HnZ=JцOߦqUy#8}q) `o4Ǚ&%Sa2r?#}ǽ"7l{qܿ/RBy]Ѕl,Nc,qiH!Btث]!;t{~I$x.}I Ed%UV ]WLw=fa1D:/Gc݄{l!M/ e NwgzbgCOXOŹc7?f )0u-%Muj(R .lhVql )s#sɽbg$YCN ck]mi8[`Cv)|;}E8xw #I觿w.vfӭ ғ֎ٔpm@׳SS=^:7`dkfC& -YRҴɭI^Q}-& @D7>}Dd UP(tQ(Uַ;c%0T+'m &c5ElM\R%BngO7X#٫@v+-15>WT?t-]wcas.2 YMP<.f)0Ʒg/I` AD#54`p=wUe}';"9ߢW?PA73/|6e)*wq5ʊ #CLif[JPVt+t>;k/6WQN>Sfzwl]hEe/Ep*eoBhz̨*x&Y ^D$g:XbyCEZ\IߑoMH|`(ImKbHr$_a'`#vniqG &zYb.w{T 6({ mة?O iX|-eif8Cɀ:%I1{=צ@X;Slp^4 \gGIY >z0A&^܇zh`GGv #o{#h)4wnw0EV=fESQjҿ )RZR`pRrmlyqYVO3 Y~S3.-v+}4[ U7Kn䞞0J_`u9(2`;yC&AsJ'uU24DG)jDd kM4JVil*/ Z!f2N&'P|TQ:ӡG+O៺zE }h[$<Ij)"L跠|>C;e1 9 ka*ciMP1X:3hj @~WcJ7Qle8$-I Tpc]ǫc!Tj/\Qwݐ rwky6m cRmdƒּNkgd uG\M6&)E9erPA2PԹ&fɘ%s)V|MK)=gU8FeAm;wA}2][ Q?̋`&-w*Og|@ϳ,YUi/Gtt/=k >=T{6S0u5#@yrF-z4~{' xwbGI1Qr J1(] KzԴT O0xCD"YVC+ 4nМ:Ln]j@fuO\7)&)z~9DRSb)T 7RŹhUv^FXxhCS+LΝFsXݨˢ{]e{>BmH #Qx=[ X}rL]{pKq=0Bo M1m-U]Cʶ&޼>˯F*0C-XE<" "{+%zf18 dg"'ͳQp;AD9qiߟ;3?AK  m|޸N|ְ ȅSK:)^ jqz< \R 1qb;0t}v%ʝ"-|ƕ,KFOo4Jݱ߄eUqv~ž0IPz.lqzF.1X[n1{q:@9ߓYL1S޳9zޣDਡU~]hM2q&]6 rd^y0`khbd](<[/\xR x9~Lz}Sa'FϏ{+ >d={_Go(:QRFdcrjS?Ț7Npa4M)9MTPp Gŀ7&3؋8>m^$Y9#&ײɥ⁰A?|C1{X#YFdkn9B`n<zv ܛV.Ϋˆ?@~3Pz]IS:)~+$V#q&153[~_:Z/$£W#U.$S=J{_ROwZs~lFAKr}h~~1ZT(R1jJ+Y=r2b\33gÄaϳ"kˈk϶}{ oRYSM?Qչ <'fR`m3>SJ#w@#%Z?|ߔ ~Ǘ{[E}ŝf|4zp{EBIƲf䃠?ȳ#n2 ]0LQʨ|kr|8D MU⁋zӓcC#NTRmdy{* @7m KC2ܛ PXonb Q^~DhqWͮlz{^bhtY1Wۏ4'.FHZA%p:/)/ ΍)_YWf[)4 z`1K0Zͩ73GKD -p3kۦ)${k"t})t,يlH!̂?ߣx`%nz $ ?e.aXM{x#u&pjQ)5i30>Gu=pqՅwMBͤ0a]C 6ibfż PH><5ˊz=y{,dVG`,OT,ssػHo &β ޣ;8 ȼ, *%Ǐa ԑYwC~$Oڅ"=M~Nigl!9-^ڷ[dU'3%4bvOCv/Nl"~xhRjxuԱAyّeSwZmQV ~yEe zpTI5W! |uNKG bg**$`:htX`Z{lj?]7HǛEY4cF1 }{f{p%szmu6M!y,s srDp߂)_J%P弛$,1il6+ !$leJHW' T@ mU̯ȿa#RK_y@|9eDr?gOZqr}S7wT؝Aۘ zޞ#N16FFר? Cb'K]vܱ"Z5!eZr19UU -h nc,yp#h5*RwZVbe >; ,„< '4u}BitQ:v8(˼?VdIotQBfQWH$+.͗Ueh:Դޣ' _;?7"פȈ$D+Nzb&;k^i?!`kq`؍hoj(Hņ3 jc:Y3e3Fsctsܮ#,.s(<3(M$~<=+[M 1ߞ5mėB6C;&2+M=`3rQIU컲ա2 -, { z=^EM)dvC궽< /ZJ~IyT׀s& ߠ?voXXL Z]"T6 8>qՌ5H陊΄'YqE}rT?$Omf7uB$=.0ؽ4 (w`LZL IA !).k7`܍, M' 5#+ ;S&pRO $P.H@ymh9ޱِ(Io4Ia81Y~S,*4d7,Tԯ `U xfc fB/JoY'g e/C*H2sJ} Z+jc*ؑ0 Ί3iz4GnYUPaȞB/n&4U ^|mjӟoESpxE"^,#X=5&5Ke'Sc2GYDP̹P =y ې$nyMjeJ5j0̉}Q)۳6vSR4m.Rn+63TJάbp7.Gb@boZJgq68-ݯ>C%V<:T(."0b',=BF>\䲑kU #eZĂϞFY5"w,i P^ӌHs9H/q$E TͶ"Y^ 2G+?٦zj\W ɥՔŒg YDlέRLKçT{eENdEe V!o'F2%mvZw]&U?l̙Nii )m@ "8X۝ =UNܓGzsEH,AqJSL~ ̅S;.ԖWh\+B6L(?5 B yY2{j8BTLD4 RCQaм`?=Oǎ7x\Zp3}wX5PH!^&yyr3u- D15? 4fu6sȜ:2 ިĂkU`${m7f"`#V%p5J[&,Z6'֙ueg9.DF80~M_\ze?vyzp&.w1UF΋So^\0 qA("#^>cRFLJG} NbF4kԢ V\nx|1 uW x-g<1`Rg0P,Kplo1KG)%=J 9/H)u *8OI{PS7"?@2/sj=Tܫ#NZ)Zu=|(m%@ X|HhWv"7tz ڕ)lIl% 7J[>+qXCY _;uD;//Qʋe,NƜlXX!Ǯ/YMX.l1C1N <‡L$[+8]U|W$ G(:I/֧KumO\a%@R$4~`$O˶}f+ZMX2!nN{Љ}ע yK\?yhAN#T_pp6cG l! H=U%4 e3 ,]y<=ѸbHvU>zFBq[aiiGrӰԇp˿EG/ \z!*a yy/[.6ZZ&+x]"My+.Pʾ6/$emE/H=_10 C&|ui%ٔX'u!~w/^|=)g+u}ܷN#!8 rdK%0 s 퀜5,J鮏" C k`xceAPڎzJ7_j7 a!zwg\{P]݊B5OPPH0'l\u*V$n C~+_Fطx})b ҁ C1'ʒEsf:ڡ m .'M7.nsw%U9Ȩ%ݎpSU;+["{lʀOz&29jN96V"7WLX}DM޲4+d t6ŬhFiYUG5^{:uSr 25|QJ6o$;xhA-(aB1!Ut0,i">,1c-Aܬ 3Qf!En*w_΁%'iIcIjʼ8&50i>Sß_BףJ}S H''җЉZ+ ? Yv-1 z,h_t^ռZ pÂr'|8'+Ҍ~]~/bo_rli4,ޚ KV"JtPA{PokNNFr h9~ n; ^/viIԙ@@ ]^N@+Gw"kD } 0a -K>6eU(pk-{!R#F$+S;8khcܒ0XI.ozszyH 6C!ިeA5ڳ;i8Jq6lmwtƒM6.R ZQ楎)lT=LOj`}!W>+ll ziD]sr{T)\V -"%r(dO:)ҧT]rPbw9}^ b%b"}*2hlrOsLߵ﮻,Q}=WĭmT, [S7oΟ0s̗fbr G7WgQzEkזɢ+[8y$T]ٵ3ai:7)Ӡt]aKn$\6鏏Ʃ}n5,]GNb\ Lx/om{!j54K gY1.*҄WI,:5)}TpJs*o\.5HNKS;r ȋ_:s>):)մNlZT㏤lCK>m8u&iφTeY 84}^"<5>;,G㾄p*/sE&}v#rXc$- >emJ9Yҵ7R݊Ŀ{m43 &VLL` &"n*TQXy.PGXj,~ Dz4%sZ&ll-Izы ;AߠD Ҳ I]3;E_uV%q픲 WXk#$JH**r{pEl$9] ZUhTֵd r\X4bRaښB&ERwKQA,r~[eҕI:A2 ضwu,Ojg]*Zi"_`m[FW!,M7Fbg!*UGXb $]i8RW)iT^fJ@UȌ? ۋc'g6鯟WcNHXLv6*%3 9:mIA~RF'cdEiXC191MZ-  [wђG̊:/Ye.4AhHV;bl7Zc:܊.*WVZ8RIoKL %9SR4݉rٛ/O'<@'ҍ?s7qW7g9t7<ӨnXq'!`E /Gg6ּQ4v^s5rvT+=/Yd~$².X, 1ExYf< W&ǫe$+dR|O28J" xy#c&ӽ DqFàWwf=ҦͺAz_g!HPPe"<ʤx-;A&pDC|B":FG;+z샞qo\Ѹ"Z֞Vpް xىS2H[G?g:AǍJ%qhe"ŝbض[ŌCS*_̥ʣQ -ѭ %<Åu0%;,۾﬉ V\xDQ,\`JU-$nQ a=r~~ :2O(vʜDl7D 7F[as+(+"mb,^F y C@`Irx*p&Nʓ6 RW}%HbQO N;,#ѿf)Tép9C  $;`j.Ux-8 kg8q2]yr4c"ˏWvf;-Yw:Uh}" hi\ o_측@ ":c+5cDoBϫ+̾wr+)>THwߐi Mi+hWv|k4 FnGdօDYUdc\ӚuIy}W'F\Ψ n))Ǧn,Ͼq}lv0`RRn/\Gfx_#wob()tF^kF=nT|t`3qY“yf,RmܗZߊqYC8W4#zdᡁXmTI.uRs@@=BT0Np @]i=N:6|^Ӿa GZC)EhI &6#4;A-ch@̛]q+kFqxYOa]%j4bRMBbDP!њh7XXߡ"H3'IswO}<@Pi ]38b^%wb~Uҳ[aGVaFia`<[}k:pjIJ/ mpxzRv~@Fbc&p?ٱ4n]ɻ vQi 5;GN*K\L`v,ASLn<+~UK?Y"0eE,xgHkv+!USEOsfX/Oދ f !h6sm$@uM7[Pz McRvV̠<}k|,,- w|m']"+sJWdva }ڹa I=-ۡ\& @pl3CFysvT)OSz0753<'ܚa[-^M%'9b1GN-4grsuQZuS@ՊDj9l -?#^iIF; Ae JrtxI FeA Mp=czAv!SAOƮEM839{x&$NwTKԉQw0&A5J⽥Bgo--72SCTMvJwijny\/aP jqBVuW  [Mݷ4}S~n'”z kL38(1!ʿ)eꠢɋOeN%CҞN\{\߻l UuRȉڽ\ VO^ O;jqʭ_SJcQL_>1%c;0QlÔ8`v\#&}d[UW!LH M}^{8G>C̫5)[\"nWnڼF=`WگB=m?ܲ)PTLW{Jԁxyܔ& ̰hl(,XJ `%e+ o<rUCQsYHggɛD+[3%tIx점P@ C<1Z\nWa ̚>qT+=LF\{5=۷E `MPm:"k ֨}=BaˮU31 Vj{"G.sG }(w~r~n`i@ۘNLۓ]a , Bj@h@]zL2Wc:sP,QL&(\5c l1͔uYrZ&^)lFm;"ä3[=n]g! Y<]܉ GEds;‹h5wQDET]79*PG I=mX1@tq8k+òL2 R.jWAJ[Β618^דoJz %>ivK'>8SXoV`WޒJUid&6}16 PW ugޏ g6<%6wWzy0dj9qF*s 9 F SJ8'/r1JSi@[;qTDJ+6Xڡ4 CnБ@ldG+m~Pz:x&Hhi&zK-JV9? tK(Nj>'T6t1>A|Wx = +,OQZ;"Q_4G<-lKۅ/34#OUhø¿%uZ rږ \H%z^Ϭ޻720^']ΰo%/| j†d<8T9/i'UgTKiF)hfba.΢8JO!FaȆrJ1hR1Rj q$S;3X-zK",`.s"doa׋D#Uj f8{,Ԕs Gڌwْ}!wЏ9k*$_cYiuLM^&۝< z ?҅0mZ>nI2c;@RVPO~ {4rIݙjn'}F~jo+ -}Ҡ-=m9usv~"vVVnmjH򦣾 ECA{@LǦp.\˳, U *,Q\A@P%0h˘(fxC<-F#SUqKpAYAƪ@F[h\k[+ұYo"9B2S|P R8a4᷀ 훮B-A8p취b&ݔ4右0K<{^+2U 7U!co!8M8\Tù-#Qh7" \~;5]#?:z^CU+4`Kn3—KDvd(Dن3قCdm  mY>P|i`eI+ȃ+7+J s@`tEHJ|E#/'8ggO,ry͸BFB%MRӨm_ yФiNvB)\,lƨr\EM֨bͧP 2fWW_Pv~3:Ў Mo-A X %DU}x5p,c ZBÝ$G|(mY@4NÍP"( 6%rPHٯε6'xlNaI2 Y^#>T. XԍHzD*U[R"4S֩×u&_<_F5>K%M-_A.x4^XJ dR0>Ҍ -B#{Y '?Y=Y6oO5N^ cVܾ{pwO\R65x qW~8zU<3!D/A^(2Ja8 ֖J}KJךU~2n_sIk LW'|A5+[?b>VhP}4\01;y S $& :}KrOtfER]r#E5%ʨH( O#Z1]yVZ$s醇HnhӢUtGiQȔXC/xl[evruIY2T#aȠmųhn,Tor@Xt/` Å@vY/:HqѦA=O"^sv6U!'L(,z!=ImfH&@bѨ/f ~ms9/9oucnuUVO寻贄6~s0jgn籍gO\Q~ć<`QeﴗU .ryR\ɿT@ H' |vulSVISdWUQ-WV$#1U ^މ-|ү}$TPP:.>,<"^ɫ^m??reۗ&4]3b뽌W%ϯiYn^ } #Yo럽#I^f8ӷD\=A8dy^1 +99iF#qut|۟}0Pa_9?Q0 5@>DMp )3Z |\ɦ`ZsX X&-]Z8%ֿH22WL&?]KχaFUTb閊qK^R=F/t\WgP `,.'b| ,0*Z8l`}m-*Sԕ#7!e ȀdSR[S&acٮz&AEk[ġBa)!` +]|B m:'TOP˖ya@y{ -7LBG@ѽ%xDI H%dV6[ 7P]+:ݹE Mps,në_lYRb$s/@]=(o_TL D((Op /{)5nՅ@ҩ|6KUZ֭T"_-; 1XQ 2>Œco)EVCPy*! gsOiB1:/}F,8Z["ձ_X:F<E].Ɇ19qې&'oY/3kܰ,UzFƶ`$I/9(@C>`y[;dyG"ŕ3˗*ظ];dgrm;$)}5k/y<>[tn!@q28qΦybo[ <⟹;)DM̟{T |YnJ@VeEv)4|2۔dw ׏Sѥ&᧷JjV9շ%WFt=˽`$q잀Jbj]9Ѷgj $!Ʊ:][8\0~fx\Eyڎ@Lp u&tj*hKy|k84ܬ 5 W(gUOR?qɗ>u?dWQ?A5_`3;;/B. h^ Me"]UDJR` nvߴ wpF)_ t?Ioq(A2 LD+4kRdz<Ss֎F*D`cY HvӰ'VT D؀y.;M8zmi2}oT] 4l17]נr9};SXRB@FhB+UN(\!~&s05[]Vc</"#ԣ;zZ85S1]_~;Y`oDYx"A#QIW"]FLUet^dFOEFݯ"eJHIDPBlHc%!]uHՋ&7d7{nòH]kӕ{ fsRU`'9jn^7;cji TDɲ9@+}\BP̉hL۩9zcl%psoYe.XD@Z2dKr$N]&`iqA`t@C :)`XRo|&cJGh*OHT{-8%IDتRV>>H \plEif+CL"hhCdEYv_jYIv?1d oӨ'߃fcFǠ |^I A&R/ %zYG^Σ> ቊjl=uH{hҸ` ꀑ7CC.QW m Luq)!)PZ"&xcwA$rFJ+lӶ\P[pA Q5w.sZK=sj mpbUIas Qy1Xm۫i_ 7`Woq:C@.Wˆ/`0Y }NmлJGg;)!!Mr*]yN\3": 0wfLTUl1LUx<%.|0.A#0rLfGrN'H;[ V5v=-E| 9-ٸИd˼(yw٬-a?Nȅ=$2O"6e]U|WǁYūr j,䊐7X=@¯@%9OTYv>͟N4ңrم:Fp~ۖcZ?:gKRA,q}w,Z ksN< _5?XCm깐˻ן[!Ρ%$?.OF߯j9ӵ3EpVZcTn7ZIo|}k+N-sנzNa{yV<An$PP!`*yE4a/WBƈՃ*sB>G?C/A!WıM=ѐߥEO⩵QRL(5ږ--3q{F\µA>3@×u ͋*Ht45džorxSWDl+ ?ge>>W?, L!.6AwIA:rAR8Nx%۝&(sq31]@ \b `য়eZ>I)@ӡ)X\RrKlkK x]יHM!+x"T‰p}ꦏV|:bぜ笑§+]fo\˂* +$Y×pXE nomɛmQGD߉>(=*o[Ajή*wc4z1d̫J -%}aK)#YsN1v̍ML%Wv5pLhetvk@B4'ف^vmȦYĻH?`4gdLP˜UߒS Pn"8yʠ2(L\Si\}gkmf/Fabiwb$(~#Rr !@)h{<کvj b%!Ȃz-ʳ?g7 _{܇%7{;Ggy:…f& dif_*LM#ٌ9J7K^c)>6Wgxx@#U8Y?|cF%cb987 *O-h 9.˰_E^bMBC{hқ!I%7fC8Fy>;†uWTFk$ˇ.UcOe0*Q,;#Rj #,ǨLGyetPy_4X ;Ց7*f:ԕE#TU>Ft?]kQV>NC"‹ iIDCVc8lW_K=l^]a8gsD!~ɍ 2F*MnMy *5z*Si潹dAXHܤ\yCsj5D OYts+JP9L&eƵ߷0Wf3ǺZE7`BUV~´1bs$AN ynШ(Oː =$v:tpb3/Bj_i/Ϋu5\2Xn"Q9jƎ+@O?C*F9_1'Pa!F!qi\,Gh-}T zH㺁0tߪE\Ǝ7^ \-*S'o lJ'1>A5'ʅ*&V"]F5+\%5A@ٺqCw訮-qPgӑ[@%x/"U ߻gl1E3D+ JF6j֡,pú1O'b&ҝ}>b&Va,WpKm55G38۠i8"[\^7{ݳVq$#cU)pB{cZCbwk2nkl?œ4n6iR⠿E/4a6 չhj̫8PW%@u!IUY]JAe'|b"zQ&eQ<'Of`? \;؎#mLtՏ,VV@Nrzב'`X05!-/A.*eIU7eRک\4`dHp/-Y\^LJ4[3mxK<}:()%V];(`2l_㱿׆JLobgZ+^4t5/Vėvh0P< UpR' NY'gBDXS*}5"LAŠ9{X ( @ qc(GAI\WVrp!?ao?`aA`e<)LԨ*# )ri/˜d_{S_ Ur˕tc?GX7u 0qԦFK+r`o'|;ˣ0F5+&0CbWL ܌45V~a w;d|)m$NJW9khRl95HBg2UBU[H9̚I8AgT]- @Nk/j#X AyaD*0bNFx-kG12t#b>s+鱯^,6l\Xzol %INAc`$K'Iwl&P[.^S`F6#!TacPԕT@O3=FuBGDl~ſHeLLi$/DPH"6-@=왐*;x|9a$CpxID:vrPjZ j7:1 ,M%7 N?te[: U|S? .HwyƩ+E&)6 gf6j]3 Z%FULԔdUzp1' .sGQgy`> Npj߲)d2IU<솊EVAf%=!w%CƷucyu 4ͯ,m;"jh&[mY{PfXoo4vÀ b_{”qG~O4j5ek.)r]k%@݉Om1HEdnxLGgGq ӽ̈́k^{]dT_md͉UC1C g4;~hЂ5FxͅZv"1 :S;Gd]P\\X3".etꞜlZPjIK^=DG{9opO Wa# tAZ*MЮ-pdgjes.}b<`-n!bho}ha zn>("킊dCyBݩDn#>]ĀUl0RЦ=Ua5gvS_&+a1clEShOHn6MڅI^B?0%Qn{m0kyTeXL/926We$9)IGD(aRr:0rIQ1krWc U'`@fԐzT&`V:qoj#Yc@ Ώw43?Ff 0px\(6t$A~Bt_3AOuI5;)%Y+J8M Bhɟ郆f/ر)<<QхMIm-ya07dO`G{ 4Ax_bZ_(iN\":eBl,),0sDFAkp6vN@Nl#H%|xu 0 Zr!2R6=$# {v@ߞԉ|VZ;xEvEh|(W]h7+X$x*?i.:w9bS6eTtNvTOU)[Ga9s 0^~5A^gtrq~F1-4A;f!TK)LVQ⭧?Xޢe(GAzXK=5 %2zUzvJ0R8О˨[AƼ !8{]:{<wrvn)jю+t.O\=s <[ơ9ߐVtWg稑¯tӡl`E*Z&NufL&)̋%[ghk>ФHb]Q!֥21ue ~4/gFiҙV^8SCF0648kC2\% >3Ne|3c82HV/:\ MϧLp.A?=FsܿQC\ߩШaŶK(scAje6rY@X"r] p:ЩPni:t-e k$?"N yb4aq '~k8߇ćԱθu0B[ouk߫Σb'4^?U˫-ɳt"=qP ~0ُ`EȍZxYTpSBy;(+ҴK%a2zX^_9>iV}Ӻn󑶿Ҙ|9_m3H->7eo]!9Hw\N9NwTXCji[Tƶim[ϜdJ^Jؑѣ1QvҶK. ^qK6 *AzbbI{dgxv'D~v'`} | Wh61DE_Wfha/k\-硈kBL6[Q6ԩiS`=JjM谯3:*pu|1 )j}TÞ`Snu~B.IO}fO s 9#%^{~NW el%1c#^Mνn9R&BZ.-^ #$uUT| >.<`1}ꄇ`RQ>W5!`n*:IYdiBc@k(%^KXSe]\6h ;"L׮gv!$~ODh"cbP) cl3°bid:3!)/gc8nt%(+\׽y_]}#E'nP/RvixeEY/HFIGJ[94Oo߂z:B6!'!v[5zl../kUkZ!wI 񀖚|^s+jM\O\5j%Z{_EҐY:^pWwL٦<.-hEjߵa'; PbnLԣ"ߡw"b'C6Ngֽj@\ "|sv9,YZkS| 1 h tm%J?K~'JSh\acY>e$*JtJ~sAKʸمyˀ51O(RIa?s$xK d0k&9J㸫녒Hftc8SWDy'tPqdݽ`" BUԑ**2`,J|o@+sXE^Yã}N=AFva9VNoC4/HR:N#ZKM6ĸN g%W<+M2R~]3p;t"ޭ-fȫ§[cr~i5p,L00M9BA_tF&e[@օS$|KK-HΚeCY֒@H!Q FxzUa eرnRZ|%_X6!d\"e`\9^h`F_aZg/>badQP b~Z2h/n ͿnA'mn{8lMj_ >ӃoŮ'ʶ}myq(R5D3knM٪qQuģazL췦:ȇNjD҇9a̭ވJzT,Zc]#o>^euCx*9.^P!eE2`eI%B!jPQC}7]h7:Rq}11 _t/bvmG.Ԣbt2˜&^Ėܑ*"%D^R4;Ъn%TzTP'EGCN#i18߮?@vR=FZ 4*CH O&#yz4Y24p rafKI|QKvT0_@e8Wiyԥ3}XhO(1zot"V'k^q}[nxZ$0nf{ >6tkg!ROڥk| CNf3ZWw-? ca` h-bkAvifvvu fPh7É#Ŕ,jg)csۅ^B.եa;}Ҕ%u]zBMBPpvcnEES.GKBXwR@ƾ~26zX&ތ}X!AE'c%׎q,eW>ǬoJ|Rx3Qܧ* X#j琐ZGf87dQ>пjqr} , S T7q/V#щ6 U\֦T;ط]u7R#,ޚEUiR:\$ ]< C?n0z^&1o7̚ݞe2hHO"?]_+7' FϬ6]W=kV(^4na`d]]+垲{# 5VPNSֆr0>3f"h}h;t,f>`gF&\W|IJ+(x,icl˝\7D'*FvcBׁ/(i;@)FIuQ\87:V"@n#RT"x7_KcYz^9A] @~oZnNcv۔w{-󛏎 SmwWK!PnS5)OQ=Q$'jmoITp#3(=zINSX7|?3-ךsfY&9ʹ')[sQ#R.:5-H4UG08<7| ?z%&'\J +ˤ`{Yg#8ڐ:I)>YV$l<ed4Oy^ΔhɅr+L(C.O_a$82Mz|Q]sOy|;}=nN"}ג`ý_4ZtZEq9^\g{jy@PBv&(:4}@!bθ `cS||1a1s%?A^tCH-1)g ej%S=l pm"4da.LKIzѓޗݐɑl0.GХp{f4u(S1+զ2J!6~Ҝ+^9Lq]XiNB /҆|2Wq 7m3/JM t?{w RPwEٞ$K RHH ҜH@]OIh\9KU*~ְjD'9Ϲms;O>@O0%MCp"e1~YpG5.%_ |1L:UHoUp~e_؂GnyǙs'H8dҿ/7R&GZX}o*aT ?E?1O<I^Ckx[GF'Y "$v~t뎳MT5%#UL6[8z X:g #taƉDI) Fg5Ox6䨬7!jCZtf˥p/jѓs|6 xjfB UmwJwzƜ5 |K&;?1|Å $b~?6\V@|F|y n` t1 8_9}8s8o%WؤZC)Bzb5=MK2؇_Y N-Qy(S C=H~OdA"Th0VbEl?7XM8o@eո3w_,.戚}>CEB+]"d}",u0gIϟrPV i4&e{+$*Nm;δ2)uowB_b"k'"@ˤm-#n[7JC["QBT~4ExO_H.r8KF\Nضbs77v^uS#~m^r~{le:%wT^9LTh"vM/у];8 K7uȍ$[XFx ٬tsPVXMSCwt -evA&}$1R2F^#>6L ҏ7^yZї 3\zjӨ$RzA[]T,6Q} %W!-\fbk씗+Wg",u<˼L83\ǔ w` 5!xu8hBt Qʭ#&7K̸-Q7M5cV3[6:>rͨw's0ԞQ𴘼DL. eQ_|U$qmNͲ5$t g(}B )h!A-OY=2- oH\Y\sA礭ba+X({B)ʞfN "iv2U^͟vF~sl<[h8#=.uz_yE؂XNv=Qex8a=dM/+DX[+#]:/;۩SɶŪ*Ôez3y{hTijMR|mbkO`[~?ǓW$4Ɨ5}. }cx=Kz0=Y\9\f/ذKO?s5M{P hC"<}{h*8-Ky6 B/GӯaYF\#+îX ~.Ȩ3k`mxϝ6"KcB9-㑉D˚5VXiAKTPL P%ty<@z^j]qƾ+Rpdη—  oJ-6T *^@OUtA%VNo&WVw٦+..t\9"eiF!Xdl *@v} Q4A;6aV0Z%GKPWd\s.L6aJQ:ٳGPz]F/죅,!Y&C-?:>Mp$zx1M23a%YE ).'o^w%2DWatÑCĬeeK=i ô_ S͞A hGhf!34`RRwP[N\[W;ӱ~0e]X*#Q@qG\4/n̎@a~$x|xH~2FY=_Є!Y^l]%1&k;{'|.C82<{@Sr'GfÚދzoq.}>Rgg9’(K$pΝ= "V8! lT)h|+L>Z>;TJ:RfG@z(oz+Fm"HǭLfl_J!'Nj22О̍C6y>DB~!( \y=>Im>,W!`jozi.$ jLuXrDkmmWˢ+V 峂2_;@^?#QMJ-hQq:ǀ1 %l- oҿ5Y5{>d5$N)%}_ZlC H4 ƭ`v!JzbC 1KOM/ 秇nk]p0Icц6*sR^2Ί=*LbJ/;΃a%Ģtw`E. L3* l~ZMzU4 w1Gc[y+~ p+cG)67XJZA؂jeCih6=*bQ:vv.̅ J3-xM$tp'N(E{{ra6,-r`GxTӃE3Ρc1xXӐSczULg=Ն\s !Fey$2_`GZ 扇 ӚE 1z,frrj~4PJx,8JOfLW&yki M(jt())=I%UL3ICF`z^1cCH Ǧ9oHLǦ(c Ŵ@'|_CVF2;< 2'[ u DLχ^8Ht3Uj~dӕHrA\Tb̃%j[P#hew',\>j>E!@prwISJ85bw'$XpPHS>g$)$X 2<רBdHI?XoĐTMׇ~u2n&{BOM;D](kT3Q,B(fabd |b4ިգygkOeڦw:h`hDZNHh4FWxx\{8B8qz "Fug7G E`?B"iwь`QN|7 TN"ô׸xt/#VgoŁTdj2 Φs8IgC./EQe։z;̬5dRN=s@Z<4G>i~nX[k bED|O@i0ǧa7gdT't+{$8oli2zvoע)h` wuRA/{XFDCKP{>_ $tZ2)C8݃[pJG8>n tӜCR`زY.xďVg/hBQszp+qvafB FѯNQ`1)Z&4v] P1sG>iH`W@6vPR?eLqꪃw ]&XV^xFoᵌ5@U)1 2ʂs,62ԿYD:=H-RuPyXHK"n2Wh,(oUi=&;`vr=#Dܚ)OaL2͎:e z ,x`KeU1_'1c[dBC kE؁,RyxqjRרi{·ESy寪7 zj]g?&!n=xd^.3elƘH69%.C*g)`XBiyAHRm;gfDhD',wALN|cp/]?OZc (qD ~!y5YrųDBb*Bp4h$Ba_\X:,(l'F64M! rXxi^|ov~mܔ9[g7 "Ps3x4Tklb.J0.L 5)DZB)yG~e]٘TSУЃrrfq w튵qJr3y_F`ٯeʱHсM܌I8Cy| @Ò”"lz4# 9O8D{Ep!0iy~SEftT]Xl/d4:"@;BRL/}f{Ə%L`8k?Q]ɗ#P7͠! g+(?fؙCےC,1#⧜S=u.܎9+s@gCҟr~,3Yu')E̚^%|VcxbW㲒r~6%z#ryQƾưrnsm\OIU}xZ?/*`b ZWk;mFL=f7vI%G)\L[s&2 s|vKn3+Q M_M~G5uҘitR{pJWR)wせ a䁶SD2q⤼^_׌r}Qb>S[G/Sj}W @C/lc{Elej2Uh<>^lŃ%aϔ1BE`cC^7#ȫ2q/絻{5UbE.Е-9&\ ZO&jvcD0,qxk .Q@پJQ/-Xb8N9E7cLڌ%|0 FuBk<(Зlt7dꏫvMcD (s4f[CSUZƊvIvJ(#ilt?">妋2s&ZC1x=rRmQcR@{d, 2k~ީV>ʀ I==tN3 i)ӧw+ՊİZML+9C3)35i&U'/G:8tWVML/zyp dڮBOݵ.ݝQ#;g \鳯w X:=d2Q ~&pv`UP |~MpXqrJE,g[Ŷ:P;-'IښLk][*^" 1%Zb}Ia =(i )QO sD9gߘ L|kK$l1BG5BNt~h=n6'hqNnnQۉpbDP5AZ x i: eɉWQ^7,M|/.=>Ў3u`{j#V{'I\D%/r<~T:/)x=#XIaΗ4)YeLž!& xkpqJICg[Xg\;iÇ#e_5y]zsXU{X\OGG ySPb=1]-L@Yl89JҊt9 bR us U}V,K8Dj4&@{\#tU1d-Jx]̚?L=WTWq$j9IPMFus&,g`;I$TH8_$26)gF7A.ސwrze`]:!T0&Z"".,c4 +rZʏs2O7H Y jg.PbdF[ ݩMW?-LC31eD@m:1ptc{UyPyNziAlu\Q L$*2YrH][ V{'rrN(^Rooc Q(ҘtJӫ_Hit3%ԶH#&]!KE9 i ln]! p?3)"@Ŏ? s{9m+Ԡ%=iw`;* WCFr8+2@yZ¬x (hcjؽZQp#Pb:-|ҰQ4Zr|8`v u,Z)%{LYUFoX("0)(&9m1W %]?ivOWX늹2U0B{B27,ebK%v$&I4Y ޣ]IT'ԥ.ըM_r+2%$kXNg< %M"ϒ6%DM @jw_dHkp>oTgR߫t2}ϋ\jeԋ #8[6|Ha4#a >''v)rCe(Yn?2 /TT'T4G~oV~ 7K[;]N,S z/xf͟u5b̀ EM#O_yVE K`TҺgE.g%)DlpR✢ZGظF%^d1i5i[ږkkыÜ?bLh6o ,r/Yۉo"ῄP A29sJ$Mʬ;e%YhP+JJFP[kl"BgCC…r!uig=ڇJ ;#f2^)/E#\6=ڰ  BvQL k2d0RE:8\ה(I@Rg[< &*9B#\%MMB ~l}e[f[f~h&_IBc&=Dٚ]l*~- +$3 jf S$aO֌߸ eɹ+%T]V4 72I'Z$sN!:.nh5V`렘ǚ]/)'RG@ÿ4*Ofz0wD&v)o;ooГl>6{;eG..|nϙK<[ţN+4vZ`_mO ė$N\%$̶T]9/ r2T72Kt\lLҮ{"j ]S. @JҜeNJg"P,2m`xD tH@([PP8*8]68@ "% #ۅ)։)G#nzM^RϬ&4i3t\w.6bX ޼ K/nx$fq>}{ۙᮿ]"9V|;VOy6' ^M9>ErLkOb@J3%C8qN5K5Jc>w3b~S*')ME,%]{d/QSLMg!;#l@L1Y{6NC/O[;csU ŭES g~eufb%m [-ZZ]'8P)m~/+* f7Wѽ]2g+w'h۱E z:Kܒ-F7L]0'BW~K^>/Df2)zx^wU`{p)"*Pxmj_F*`4M4F8ܣ;b"jesz8j',fB!_Kmyvmƃ ($ӕ&m-]U\*?Vuf]~%h㑇\qTML0! ^8' S1\Oˌc W454K]8({6Tti9`eI*r8A7g::DnGYƵEqOujfP*cA5c`ŅmDž=O}VOdėeSڑ:` 3mK'"9,q'-GTy{:8{!PsJ+tSI+DKVTk)m!j?+%|eM}tђM;6E, 4xvY:wWC=|óN fUbj*BX>T49Tg􇉍`jX3}bؗmߘPڄ gJI"84SJJHz$k^kTa%=It".#KlE1 k@k䒯o7y~arndhIiظ 4bǵ @rҺ(١QURKc#N߄\xg =;~!qk4ƚERA-rU\uS6 /hių%rJž ZL)J!PDe9@RvgZؚTDʀXsn͵YƠ00| fr`fn%$bUVKlq:"/=m63y[ \'AuTE.Yj\%zƭKi&`j CA7 5n_OAÇ9xND=7nnL-Z@H[ӏz!v3ċEEi3P<@a\o jg-dǫa:ċ-G@-ꋨ.cnq8pʛ7*1JW:8r{ZkAat>0E) g#kG ;%QR!hivR;L|sfa+_/ϣ+`aON!#yS]~$BX@Zy1 X+>Ub\?'=9s$5AT6M>fU2JI=w\".T2mX8iyD&KEr"pK;]XkK89?tY@9JK"]X@+sy&q>3E=UJx_ֵAPYYTjZ5DB FHۨ)@ N,:% ka_ϝ3e^9} {]:Y·ޖaOX МՅgKy`_p^ U_bz)Y6WY c*Dicca?jP/=hgYﲅm6U$ -&29,S"ZXqLUu3 J<><+#H`Je2훣tXlb죯(Ւf"=c‚\PhM{}@< pTΟ"u L[3[`]wzmY 6еZïI&y i$/=cʳIZGTuS֒Ag ,Oߙ-Y1ZRLg >"l&4ae snӂJTӐ~ 4\̭mo?QY^lL-C{iϋJ3n"agYkA`t*f{5)P-M\V ~IE 5, j,>Td ta$&k^`gI5u^5—Z퇣(U=$Rh(A7eh0 %8)骯/Rձ{\q̓[Rl<yCHi0ΐT\k; *'C5Ҡ۳4UKƶV31\hwsI@Xqqa&34zvùsm /OV1!oF|Lt15 m$a%MDš}_r{2=IF/I#kjfW Pywۅ}U碞HH+fufBVD1p }x$q;qOZh /`awX.UQiHbc44Z(뚵Tu]z1e^IzN x5 FCm-Hα03yS ^iX^O[ oofdpGۣzżeEBl|z9My?*d5z=>})Wݽ﮽x,}se#knHE K+Ÿkzd𠲕o^ON?`TD;:LS<;3)Rؘ?MGEQB1zl[E= Xҭqu=`2éu:w Ïgjl(Zw˨K`Es<9rk-iOG&iZ!*M5|Azv )d,O Y~ hR]#L"EU^324}4ruҡs°1JM8;OEͭ-<ǫY w].| b*ml[;P\>P pٰ2E~9`@ƵTr.ݒ>I$$s˛$fLYAGW=m³Y*@ )Ӯ ¹ )Y wAGKj`wUd6y!艚cH~0ۑK4 ʈ=Y$37\ͷ\FNd_ҹC+tnT.o%RX")V"]2gDJ<q))Wqߴ,ՉMb:.;(ic1$[>{h4d ! q UQ6v!MR.]*ҽg-h i419eR# yY߫O~(#-&Uyha`*jJq͌@TDo8%iH-Oɡc8>"CN?}N2VWiR9g̃‰a8:gKCzԂe)x.\``sOĺž5JmhJMW5l "e\<4 H,ܾxv2Ӯhqqt[<<4 ^-jZtIPDWGM^١q1#n9, Z$?[@]!R!N/I/H7=3@χR]v2S _ %ճTu˭| >ii!!Fjʿ؎'ŬC\?;ADA0H4V\_gc&K齕{&!kQfVqق4qx-ZԫFിRQ,xx(f~_> 3_+ I(-sgI?ߤ*ri;N/kUc7yt(<:aXkXX= `M!e8 nnq2Wyn eق]\@+8u:o3JAAK`4+[\Ӧ|;>*cƟNTIaSD MDmKh s__Bl]ƀo`=jͲORE4vku*K^:BG6N)6P؇WZx9 Y"0<I'뭉&FVھ9;$} *lZ1䚕<ɉ=cVJ(D/V6y f~ҖNȭVr>U]J59&_ҡFǓ%hb5R[FbW4E}iz0(3jW:f:VnDz6ۓ(Ud]42ZHy0:ca>B6y@X[0'M}I6N2-L8ǭ` TZ$UcȲ 4W2/>ʥAH~5$򶔽e|+ɡCkVG3ftV:a d hHzbtFUD+~DO $/(+s`91s4 h7aBv&02i&0Sdem=*6G£ZJlJzàWd5%F.y憆2>b>sHT/z{}\ĵ>)j!ҺobrD'kxO ŝ4x fᵇKu J̷lJݶpKWB{T\#wgw 7@K2:r`Fs6cweb,CCHb%C?3'1ƵϾk猌x P10F,Nw\O6<[*%g1Yb_ݩj,ɪS (f+IRYCM4V7TOW~Mcd~Q 7m`aLJ_!-q~v{e̷=T6N/ ;7@X 1 =gD&bˌiqNi ZӔ9)Ai]S5L4Z(T b?y>wp^| MVp, Y¨5Rrq &8记T⊍lGj7r?UOQ#Oף} ؓ&5qvԛa]yvIa%]6^ nolj<ψ;a@{VD`]9wWaץaeAl7xٚt~!v@X϶ɸ;O@$O;i2H% *nLUAE$ou{th \}i՟Opn2qX4~NA둚̵,*mҕXƄ\P6 bn l|AZ!6P&Et?w5ҳ=j"]]T2ZZJNU¸i'#8"DN tx?og.0 [ջKgy4&_ɘwQCho;N<V79>u!K1<3;^ԅHZ>$EċP.¸+yМ.;Qq6NG[k&_IӁҹjw_AE#f=Y|PcmZO#pg$#!cddPr\v;$ ЏtN<i~ 2.T-q:36/ cƯk}BR[Kcwҍ ZfAV{CvQd:Y?QU[M *q^lՊ x:᝾[P.as}ƨP%Zc @?@}»{ZP qVù"p@LA} BF \( ՁhwB[*FHX*Xhf,'+} ˜]=)Oo3AxRmח9<8[<Z .awfK٤8=&X rp,<*٫ubwxhF#Vw%Dz2V ڪ֒k4Zq5GRS):I̿'g:F;Jy`7}/С2#f~5F.02ԡ̡дQ.-fgjkwy^WΌr-A ±KbmɄ.=0ĕc,,/ʑW\Υ)U^׎t9n}ȃa yą }GϏeФ6 n-U v`UۍKHzWJ=)il&vgװNZB4B5~ֽU 1wSiljp`s:H.ڌ-R(^W]IiƸ*@T.3ښ!C>Uu) 64=g P{k xyb N gsYݓbNM3j7rOX«MC=dd&fиҞ!wWK|oIѐ"Kh-c?5X]gp p?܁d/#/EַYsU\ cKN_ ı4*#1"vϐ|: * 8I '}R鮷4](a/Cn?{-%uN @RX{G"{jGO9tsMoʠw ^"fgFTdT"-Aq}af@yImz+ڿ.h9OHsP#gEo[6uZ "||hC"܋͝>-mےPGҦ4%"G_o-/Oxܬ.@o8oݲ6#T?~H t,^?+&":.֏8&ܑ@dF0 ̰ , 4G!S ><3th-}ADbU۝f ppjIBmJЛ}Q d\V*޾UUHВ jQyQI'oq67}i0%4^Pe1P8<.:9![r[}_i 1%I J-/=c"g |%659^ -lK؅k3pjYp~8f.yey9 sZ)\=Ȉ͈LG%Tbf {UQy%CxLN_Iq xs3Zz 0Ik2i~v!w$m P9^ ٥Q>a?  ǥȁvT珛WO`MN574Oe UzF培vB)e8tkID?E'uC.e=\t}QcqvF5Y?6k]SI& tإ1"TdcM=q_R%$ 壪\hn5i) hܭYޜe8ޗ02~x{'̠ɢ=!4OZoLٵ]e3BO;tVb7h87u#֮T֪Q{@HZ TgvULA2+({߰׿K,"N XjUXp"3n',Yys&K-$.Y t5Z)ґ FY']8W53D"l$dxʤԘYh ­u·D 2)eU@t^Rʺ(o~(69VJeNe66.&ǝm_nonVL 2YB dI`T,TvZ(VAeiب8@r@ X:*CS('^3(IPREUt(D5y3&{X ,5LD0{qeku dҸ!S*H by4WPZhu;lV6Yrj`|ރ!"Zv{ڍ @)MLg<(H7hM.= `nԍz8K-R^&N/g\pTHkGT%i ޛKMK η7zlEtWaHRO:+ 5&9Dqd|=Pĉ}EolsFGZ_{lE謬qE竁Or䉶fLd_Ǻxsu@6O>EԥSjQ&mxT߱.LH!J+7~3yGHXv#_C׍CX|jӹ)׈oalS@0E4>eo!v阾:g]&k Yh$ ̄q3+ M~]m8Zz~)u%ܭko]oR bn^DpPMsoI+֎px; (!#Ri'xFE?>+Yx_iQVd%d=J_>]qC03/`zOޢVZ]Q^9.=DwH3̓[y ?%gϨUMNq Rc{8%ꄑ iښX{Zf)ܦ )$ zQf+8AS| 'nC1jQaA4ײ~1sz kbq|4X*:gmJ& gs&GXpnj~/d|9J`;d1Ӱ~a^{ V:AL\^N!8lqE#4&&^fW mbazr-|JNP}^WA< 7=^Rj”r2/v1gyfbѓ>%D^KT-kꪇ&zÇ?$D@&p %tHر{$'[9!_ol`Z8]lwVo%MƮuzu>#4-,_ډH4Л%IDz͘=¼kYJ=-J~mZEAMֆhe(=\w(~:y`.t/-[,`=VFxgKW2e!|@m +;"*Iv϶&צxW.K47ii.MC4#^R.3!PyNJ!"򡪓!!Y w҈DQ`u m^3/BLh썴cN*9 ʑ ]Ea'U`9Tn&jeU2[mr%Ũt!'UN-@QfWw"uotM"^ AK߆&%Pl/鯭 2rj i#Rz?Fx9m;m4PaQDGBOa_Ou Bz`Cߐ)b5MEARecӁ[g=` pTO;%ANpjaSrz X*5ӤkHZ`}WSϺ,rEӐ uH?: ~d6*.m>6KU75•/3ڵ~ٴ1T `<&e%* >L"'uG@?-n᱒~jWOHES4bK6hvz*f.u70+1wZ[i9 [S !_COP2{u9ܰM -|T?ɢk^ʔ  o8QNQ. E1 B 4ɜpv2suVE6~g;#agp}W#Tn0;@H|,Zl%{WaK&$pHQ]_jE:+gBg ~!u^?]om֎IC_+)\L9Moaޣd: Dْ m{t)UhÄG8NyǯtA7^gzgUGI43c4Z6=L`v@p%OU4fh MPy~i<pfl&sD4Ʈ~Q!isQ~EKX^Ό S<71]3 hS* w pV;䱹.!K.ECdҥ>adyg֔Z6xi/?&B4~KA֚2iƈqdV!h¼=V_CKd:#-)K} Gy 6y4ͩxU(w)zO l͗+leh%ſc҈5+PGz kl2>O=#2OyrmU}:4IQ@Z L!x^U_>uFv1\B hicl|hGx"A/6 iv+?<50k1k~XG7@iFoJćBzQXaN]b "8h?=j›M6>A8LVFutv@d̛ G[po+Je0#,*_nGGQcѭ53$ikR8ǯ+|VkgP۪u1w_o#rHH앎> | ՗}2Xf e)Tv2~!_ {ԅo#LYM;U^R|Z%&}kEa~AKP'ItV^TxAנfVkz<\_O<E5ne eј!E[nu&?pΕGViYV(*1@>- 6 r=yҼ^1kzɻ[L5jj/њ᷹zjLn12 Ϩ.Kwf|@J*.j3p:;u'}2Q!7э5>f4Z,r&ԦAjhkNXA|s7#u7SQGK%-(#g<4SF1Wwoz!h۔[[G1%IEj._W&]A/7#-9zA{IU($X =Ƈ]r?FrCzYuʼ5F7RXק D>lg"z!T ]_|FNwYMUR=d'?؀~-x{gRS!5Sry/<{nUU|CLuKA!1)f*^ζr0VEs˞jA~ [N+FaPrQBa`z2u[G`V͜l` Rˁq9+Gil30b:z,}Bryzy98L5΄fLhF}vA]NBY|jDߝƕˮЗH{8nm6M㨦woD1Ms+B6yT"Mk'kZeh A׷ϱZkH o"hBJ!ݧ͏l:oɄ~Bp\ 3SzRvMir0 bi%O{6X822 ۔> 0CnAA.Op~o[M.PC}(:&ɥ[BU҇},={θ2mӲp|+)<()-' ^1;20ܻ#LwDLeFyZƚ8\3!cx{9=C,H/L\@飁{kʓ6 B?6$t+ NUgзr(5y#|Sf FSLJgrd0F.hȾb`x i6UTogGa#7|Qv&JZX%s@(ySS~ۋHDa9%bu,X=~|iT\)pmWt0nnP>'G;ugmX:|o]DM vCT8'ΨɢvMA) -|F6 2jInMz.9Wpik!(LJKlQ@MXiWjp-Qa}o]0v0KdN% ]|P7YlL.m'׼U:!eZS4g8=)dhZg&0w7NtvTlF#;U5@a,ʛ0|'v1XQS}/#9 0TR\͞{LM2KLGT\sfo'v!9\~G^0r*9k琼$ lMUxv{efDZN8` `SӚä#6z#|T]0.0ƣm^*|F19%v7|dd%e ŅDv&&I?MMē"8OT*hkdʣeVfL69*߹%y!;o/sMKO %x~ 7Sdl [F2cu $kȉb]ϑ<OFP3wUSI^l[1˼եP%%Ż5'6H* yv4,kTxcs}a *rf YF_\xlQӋUhm攖?3lI,9x_.kI1#2Ic<*jSצn31&񭐱C|1͘^$ghح8ż?%MU  ~;n'ޤÇhAY*}dy;c~+OKmXI@b[o |ŠV;c 'l3^Վ}D A}:WC^iG f?؄oz(>Zm }U) 3(DsסsW*(9%3L?5+Br?޿6EL=6I΂pODҥT?`Le`i~KjAŏsKĿ!Ӹ#r}Ia&uw`m%sL44K{:)=#`EiN u~Xy[i- j8 =uԁZH7ݾa]d% Ɍr(tމ mI:'ɓW$q,Kr3l^q^C{0.vmVϢ^L R$O@9U6O)\[v=iֻS>U%N>Dzf,Y /I{VD*z2Gpez3:Q˟u4#_J\?9>-yX;̾ś >b"en܉؊1{j/7 M5* &.IM=tWLY|b' tYzP"ƙnQ$C xj5C%ԗavrC) sW笠i,nn\4ըN9*V/KPn"J$߳so-չ`8"إ\FL+kvaMXeyƋ ˟orZUEv q)~=E@Kaғ/j.@ áP۳p B'ONrܤ~ פN~Ij$:% cllY4a=bt0 Nc/+o+z5g@O{0 0S RcɆmR IFpgjKR<+nƘYHn޳LbVL\gH]qЀ59IwFx KOTvm=;s7IG٪`eMY9TŪ1ey{+{1TCPF۱ L#㴗0 @xBZ74Vuyv|7/GSJ7+I I _ |x W,C!`A}j1jz^0EM1p:^%˕|صb CgC§ȇG*ԣ0}T7k/~1Ă`?7 ~X GUG#797'wv(k(UN;BGc?yl 90fҡ@Z?`vo|*Přމ8S3ހVCox_ `]a"+4.LHwhH VՉ!U"!_QE0])–[l|E&}܈sr&cӳ66f~=0_Ltۃ<[6Ū:%f~CO[L1 ^1Lt,\'tF8v_1>}oN; 4o*O8M%ĵ' uf+uDYc W1{а&x!e4fCJ<7ƛl._l-J9tϫ0 ( #x(p"(گ谬 z Yz I+7NX^gqt~֊a֊_QLyD(;y2A-($.;n" ͚z87벾}tH(܈_1ۺ^,DMe`8-Hk=@IQ) ?Y z;-Ig.7Ǒgt~G6W A9.~S!1p &dt3m! 5@u.;G UVh.1t "1+QbcGtp89S.,~[;N;O_H*!I0&Sqwb}^2c1yJh'Ћ\faUs@f\oHrmuNdºsU2.b=|p]![ҵ#^j 6]Očܥ8"1#p(Y<-#ꄂƌ5qrgE"xwo.*/w؅s\Rhxϳ~-'*ũvAs<#m醃:O]>Qg??7Sg)Ȟ nBX+ l)L^;-Д/b1ۑiѵ|sL/ĄWYs|qBU)0}~rhB1ތ/]CcCX2;@g+hHD^F-Gyϡ#s'ygb)_"ŋN]"7/Q6ZqQe([u>e|Ӛ~' ^ d эҿ~kN:, +lV.YUk{@I%]^3eO}rk3n 9YjWF~<0Ņ1(\61`":+>l9n/Եw$GjQ_h(C%O)^x/[#•X.v-Vj"aq8~"y uud{.ߖ`wO[53MyMdRZsu,/D9SK@+h2ý25hKqGr71A*?'Q{tM-ړYbX'}f!AIʗY @ kgxPg,tUp (r řSg8ҵNgb>+ܰ5qLξ/~5%M"*[gvw85dmt{Lk3NR=͒[=͖g_3%O OfUYN21ۈMIqz L!U6.eInucqq>`rȟYE4_4 kaj6,NVTlIWMOڊ)K<ˉ1fsap9w5o#wqG@FvP9H`v\[vxkWٜ1oUY,N. D5Qy~ h@ } (ނcGx]Zc8/澒7Y}MM4=f8ۚc{~|$x=%aAj=}uGbsWJ@u!%V#uz,)c4@ۮY.n.)gv6^\TFElmvjO]zs8|*KcK(>-sbrؘetl{$jsՈ"|>ځ!Mf3=4t5N/QU;٤Hs%C\:shp ij?T? 9\$,"_sA&T W{~,+P _S]AYq;3N,E [vat}ʷ<.WPE{@+*BT"/a<@>5".3H/Xv̍j=IÖfb;Y;.,,IS[T Ã#AxyzVQ=98'J9󁶋\q{" @' k' `=e6F5Tg1,91饌ߜRbsf]s:e@RN6=FzJ{Zړr#* ic6xՐYt#c$T> 13w4>߀э64+{TA8nf-+K=:ƪUj@= g5ح$_J{JkF~̈rאp/!G;+G{z ^8K6'.?h,UsM۰a‰u#jWegټiᴞ40K X(ZF*,͞V l\˫;K /VɇX - <=J)+^v9+czHdݎIv&($[I8`ʣP A{m8S*`1G}FAW(8Q8zF"n4" 1fVghvAC:bg;I\J.M22P04CR|"(5•% s˽@6uTͥ,҃.8P(rB|F0iZ҆=?شrI|C]P±xXz~͸tgbPֱ1G$pG~X(LɶE_^x7L2]/+]W;oi'csOizG>:k_}jelMn؛KXW9K (rV20z(`Bx/"_HZf WVdW])fOT,Uѷf)z/l: sWمވb ^U8%~m.x٦:D8)C^$fnd TZy\g,guh c r㍇j,85BJ<93+CYCڼA2* ^CUq͙wRnMVZ(|WO綺P(wi4[]-FRtRb&]CE/]oww4|_ | J']-d$q>ݗu^zo%#0C yS.l[u8tf$۔eYߚ5Kf~W\^OB(#w}e1YҰWnb _%m %Z3P*WSt%`?';zfxZohe`PXЄcIJO';,ۆ#G3}VӴ2(㿻iHdsW rQQNˡoAY@ ჟf/Af%Kz$v2P93V-Ҫ/;˥_Y[_ٷpqcnO{ z|%#/q0[qؓP \/O#y{0c_@,9a,H څMdh/[)KXt禸-VuHT!f_-= !^ ?+>|>Mu(GGGH=Y3$lb `  :腙\%(\3`rTiZ,xځٱc Վt[`]р`B +\ȍ"@no"H6XUaRv0Մ=*^74RpbpN#:dޅytinΧt]/(rK46;JCΰ^Y }{E_(C,$ vcHis XG'q^exbm*~ַGA1Z$G KK'>gM2*/>se‡p&OsN ^o$& d*|boAE:-+(ĦӪ6sqC!g஁J?-rv#! g &~Ƞs/f7{lanX/}oWs$dl!:-:@sh(veXT\H#AkkZ;v=YovI<#4NvczJjukk@I%މ8H\ٖ!ӑS (ajwu8rEe/ W#v5H+\Jo^hTu^c.ZuT=էʦpգ8Z2]gE7OZy!-!lB#qh=&B{,Fxhf=^DPcS/W9OM׍0w;҈q'Hrdo$AR1.Iqע׽UR!o$ƛ2fnXaIh&}ݛ C/5L J9+hŒx #h}DO6>~jo(%ZV@]&aqvT)5q V>ݺT2>I@o$Kߗz^xJϖQJGO;6Zm#ɉ5yB(9z,Wr/ G.7HJcI>e=$Ԍە儍 Jv- 7+~+cGJE,x:UhCb^"k `o J2pWb"X7` #ArO[D"'um"t>q+Gi{[9\\d{r~d2,1hKoEts.E{wwojy7M GIauGN7˜`=CkݤzG#qfh@ K&}h\E+n^ߔ9gh çA.^1]Lhjfe[`kq繣뙻SMg1ë&HU,) t ]>|dpz B΁=Ϗ(adTRd 8 u'4/LӾF ka1y8nYݠ>"ZtY-<յniH3CM-g_iTrۿIZMȀX[LLiiR%rZ >E">" .AƑ*]x tQ o|J<Cg^[cly52B\M9'\ާe)t Ǽ:+ 6q8~ 0%IG s|f~qZF@{Fj{An P+VpV~.KD r "ZEg `_Ѕڎzb0Nۚ!~x ˟b FH\E㼐B_NpM" ;d e*V1g]T[j1gf;A8:E^g36¹"KT WGQP]4Sq, O<@7Vx7=H F>;. LzJ60U NV_ a̗QG"kۮ1S`ByIl,Q X t;vpPu$uvR?G3ڴu \v@^=mx~4PBg ^B93SgjToO˩UH ۿgn O)D? &ʣ; ͉z |F2lTbn- 97_C\3٨ o4&t p!t0PȜ_[n"R|2J4+R'=,&MN'L v\A L:Y P*KPP0Ҡ(AacMϊv`RGHrvXM_,==LmŠ,!aC-} ruMcr''qoK>_ 2;?n:sr߬OO_{mIBEYS Q>eF=khѓڧvngi#zGqx/DNYv mZ2?ht5gA(ǐ{ [ q&xY +09/e%ФI# ]ݑ^HnjӔ,BS~P\Jn<iہ[eZ\DmEܞAy^WˆzzO2dDxoQTwg\m'$¶{S lI r) &JquSDIS&0gp m$.tjjy*f3Mv9oA} z ۿWU(vMģ$jUN/XjW#7m/7gi7#JmeT虒τ_2p%/Ym&ulXg 8)lҶ{N| {,qEp'pW웂>f. ^C((v%z!DeILzц@ĔBj#*xzQedK*$2x{&ofQ;t;5':I#|vf43 *q_IԊPWjnɸဏuiu7xA681Y뗰f"#dB`D<[U YwF:C#c[Wӌ'^cE5=U[*;6LjB*ٱ"g\bF.H%l# M=E ][Gyw&,G=i%9D 6a F_IA{&)J>CRr`z2!nfa\J_<2&/֓%*yFlƙj۷oF>)RH,nZJHGu + }d<FD[?1k/)=Vڄn@g}\*a'6L2ɷ֢cL?a5~l(@ `!VUڃ\Nolh!%|ňpj܆D;T0^TSVvҿ$\bv@!*6b&964Rmf~Y*ӥ9F[߂&,uǵ$.;0mۢa-ؗ& BtEN  =!xoKUja+yy(s(qX<4]+\`xH7eEp2~8&a)E} m=hig.mXZ^ oA&sݸ:$UGC'b%'0f5*~,}ʃ٭H]|uz):-"rc; XlDJ8gCѽc9˳WECjS,X'6֜e0~mJ+_SnD^Qb4ܿwBNHLqs"H)뮡҂ Жd2ـ0j'[H=&>_ wug>."NtTb5{ ]jlrA#2 !DY؉srApR/2 R KaG'wQnɱe4$P5_$@RC70ZPq@y˓Y$bqyrZvx1S.ďÜ0fKiU8D. ]wEg$O=}"U `*"˒}~=;0Ӽ!o+e(A[p6cޏ~3 <p ɋ`G)_KW |( i"zRUR`&!vf?. sm ~vԣiR!kGy;?N ךlfO @} 4zX@rycmm0&̐kxk5aaO[iWTx#r⋋|_6,{q3az~Fi`U}-4qgѿ+:4ΟY?3v#m_;Ü_YzK<̼ƽe")*ܮq LD2)؉H$pnHR#Cǫ `(2jLX'ǀF!cp3t~~9B+:ׅ-,?mWBA/|aNDG_68_0g Qc-6vW9L|KcVKʕj{FsZM뾐TڕHEmYiK1Z|,hZT>Y.lY{Ź@c9-o[y G}j9 ibi8ac?Nњ {S3*Cx2pÿ Z<^PB72ctW᧱'Gأ;XS :鬤WDU۰qޯYڠ |4Lg@U}JIM Hʁ-T_ Oku[2Û"GB[Gҡv0L<0?T%a*QRjMe$۳aIjOTcs1c1l˦fyB HG%oL1Q[:pR|J~|%џ}}vڭ/Gn\ Dh#v o:^;|Sѐ .bF+g6< c*1A{êaAǞ gXήS8\x:**E'!&gpqs tM{_rt 9_?i+ \VvPJD[q$Þ(R̡MI;"ާ$Bu/DЂa7hIB+S2'ѴcN]g40I!an|;oEhnF!<0!".A\G59C)"D \Ro-{s.lPYKwIF#OɁ\`.G1Λ(nXt[Cp4 ?T8-EOْ%t}~˵C{B"F[mW6-m"} -I>>傋۲)^;}뗃Nq=#u9j>3v03jB"68\u64.-B̸S>*`/PFɝ&! &IJX;3D.pRra&|LToL^͏k/o lIUWgZueq5axGxOY\? ܐh#KS];g qr0ObFG PYJO멩7M[`!u}1۾No4x2AX^ a~dԽgz@.砊8*yB?B}0Wpj]ؼm+3jL˯wC`9K\PvjDSs[va ΨBQ~pd.񖅞o: l}[=׊r =ن"ssGx Tu)7YE0rg @ AM ^R: s=T9B9޶jV_|O^rzϣ&h^ 2ڧb&@j޵F^Fj "f3T:uk7Pݗ`e0zfȯ@mC!ձ5=+Rw]HY/|rD6ևxв>QK]t=^ ~,̇U+UxA13"t5N$'&} Rt$] Qu2OYyi;2._Zxj2+s0O\.p$M GP.Q ==Z5s/Hq~)5H~_B:mG56 > 5TvFJ,^b3 5[`ߦ; zrI|~KEBϽ(~{9j$~yL0i:_Շg1ֽλGYwLۘ+LOPӐ#DZ8gf~ }LbB]?`Al;7Tqn;|ύp 9|ؚ }d+SoXf F#`ul;z3pv]cXXhtYL_ue&jRio_G3 -0ԭl~{ ;<.~6Hs{Şy*|4-uDp9NBGD_eAJ?{StvK7Olu_oOR v˼`+@gLP- 侼%gG)RLJ{qG+%Y?=h<&a݄ g2)RȒHLh=H^! nP; *C} Q3)h m}ݧ"j׶t!,љBf@o#r3vED#Ucϩ?chb~z|(@d#\34o.ʄ7XLehY3A|fh DžeV%xqSt.vt]uhU$zx &:“ -rBd>lm3W@4¬Wڲ : .6YhvKij8kPD~'~YA Rno%.j7 .tw%,X920"dq::b}erL%==uYo~Ƃ}'A=1^r.BJ(z%$sH\927w SF),qH7NhYeE((Ԋڭ޹%Vٵje\;-F̵#% Gu`,L ~ibfp#Ճ'ɯPw^HqXEbHx50QT`v|땕i(/W Z+*I;h_/݀ rčwVÏQ*`îxW[S4Dc .B>=V3H^h  K(hAƫE7'$pa|MHĩHsxDcOSe9.)U>o C7s~ErdpuՃOYBE)LS뢠1Chrw޴p0|BB4bIC7(%Qݙ?M<gSf"u,&_Q}8iC7.:]@4EMœ]jK0,wO mTj(/\\Qgs]DyTYL^a/ϬLs#e, Y:qZ횯Һ@^}ap-)bӱR Ý/ S]h-̻8-7KxeEϣB,-`VXu0H >eLJ$/) KU%*[Gn R?Dr?Y{NEOsnp׿ɸn@&B M ZyR )3IF͉74%5H({ӉgFQ")홂lǑS7tLjm`v<-C`ݐ>'~;qLpr5Gmqy=vgK;q{ >/`ð;J(7q *fp$滢K{xAߟR-mp 9F ]ZOa,WimܒӢ9kEM_ՇF键l3YJl*Jpه,/[Kz5pdZJrOɿehSS㷛f   êE|/(G'E3Fs rҁ 9̏E#qg$K w.aWrf"ƓX/^V_҈/H1աj{*jHdwCo;\%Yc!ATIU U؋ifteڟqڟ\qn ǵ)G䅫8:KhlK{JWcXo (R3q4Nu;yc_99 PMu'rYVO_uJtP^,Zorll#QN'5Vq֯|(R q;]؏S!B) D=lL'+>hںM4-p0TuԄmZcQݞx†Z;-$v/DeOv_k]2J*ƫ(jVWcEt,_OЌ!-o} Hb~a(tlkBPwfH{OǬ2gcsy`N.bۊ9_Z8j$ T`}`V G?-Ԭ3T(X9`̻oӕF735yqI 6jfX|& l\& >'dב)weZN={:yyO7.ގ#`\E)ʑNƓ ul8mt-'(c0E)jS劆{MoD$1̙]:J-c>!yʃw.Kjr A^n\=χ9?`!7x5RT^(ȏI$\|UI-$T5AFtT5E'ĂqOnV23o!|},!LoR#- r5 f$vpnP,*@4[No{Lh~Rbz5pM bZ:l_Iǀ25IJazF94rjxy[YQ|~ FiBx2}1"ꇡ",l$Mug4 F ` d'NDg&Ļԡڑ d[u呆SWMGxO`.xjh?$0$'a;= Z(H>jЇƳN2QұLAy/a岊yykgѫ6VWeNfgn6w+W2; oG Dz.'9.}/0LNeI2urM52iHn. )3Z( /"(D3aOnwK:>&zm)O<.n`P*?頇\PW ay;8ef,>rPZJu;TB%N/55KiEpX]H Y ho;5> p% $ramJlMaG!I@in_DCr*$bB<8^ ATG0O:[z:L?(޳[2)"II8\~U62b"eyݲBJ(yz5@R/}b7SmQY?7#9zBQW k~Ld+{x:P52Ŧi@.r+LgoaSL@ /h0"1ߤ =k %Wń FgfGN Pt|Xr)x.[zpм#x*zbK) NOk} sX{ ^g3϶P/@N՟sj40M|9BEciaj*{x4C9MuEQEEHbt~ FWlk-fόrMVZmW¼&0HSU~Mt!6"zb&`ØC B4wz*eϢJDn 0 cy9؝uj୛'(εۺ11=Ԅzn+;'YoE3u!|{粷ЉKP{K>9wVq.ЄlKjQJx~H?p9e4 -h_;kWH~=S6-vV2 2MR&g 2UebwT{_C$5mvE=%ڰi/“>@[GﹰCU1-_{u`yZf$#`I=CMkwAY'UGMjI9XFY9d`o + ޲aoezsX>QǮcVhCCo %i9x+o*w 3IwN/^S1@{-8q82n ʮ8DٍN뭤&$0mV<1@$:ݳCjU.B:܋g 0m"* sbRf yB \lMig_'ReU }D}9K7aIdu/ؒ6Bi1cŰI@Pyکb'H.ƹ…WdB3 HEm0}JnI)(Ѩo]D<5=$7W:ʅ]ęMPEY#\(v~3$ m`*0N|P׹qR&;ϐۚCwL *wB?(Q :Uuc$KLq(g7;A$=ĘL2 (kܾCHՏӍ.*wg$fgT pSє`9^S3zdx_KJ~f+ ^$ކ5<s,Kff\t&%VZp;"8(}#kiϵ8,?goCH}3/`ԂewKԥvsG&+y @`ܨOY0XwtޓG} 4%. zEjjr@ #\ܰ;=y 㛽duU"e+rx:MW\g@I " JYo@6eF3ĽEF'Jspv`G6sx/$@K&ȵye@;Ύ[ceiVx鵈C:-srG4eƇN~DtOivWzRKG!މx k:0+!UIb A~,;Wޑ7r(QI!@KD8Y)BfL\XCoP),.d jZ 'n-H?Zb=-S0{Gsp'(8R>>wwLY5U{\%3w [/[pЬtC7$қ\ik/w,'*\ƊQhNok3V-=ɟx~_\)j-> 9htls:V`cߵv1!Mm3$_ykd#uUa\d:X_88r$Jɟ2 \z4qbN`wլpM^2,vR)a+<|DW V1<ӼF=Fpݭg^c]qwP5Y<|8y:A1m Dc`V4aPu\4{|;F݆%B,C9CxLAB*1re{mh5h3US #҅ڳH ;6 E"ĬBKnE1,~d! ߲ާFW$ڽnIJŰ%$ǠQ _9SvxgmCԪ1?t"9U8CwSˆϭAm M275+CodO*R~Qjy/^ M -sj.nj6d;P^;>ΐ+k~=\ܻh pr9M[?3I| [ 0%/^6`'M,q0DĹDzlǻ GX'+FsEEPٗvEVmX[WHi>_I8Sg6(s=܆ǧLAcBk-Yya;6p,= 3nx:"P76jU#.TLDs=Al d?_:Œ`\ QT O<:7]v&0J<`ޤH _7CqFSJdEKgLt{Uy+Ih/9 ӆKJ`:_2l8OhSi5>\:0B酷(6Dhbr?cRt1_RK̼YHyݽP?:?K!K}Q{+I3X2[dq- Yכk(8I~؟$Aqm"ɩ% +UMg;^[Gy*΃\'+v~ya¶_t/l(B-Ϳ`te R!<~>YɢQREyOJbnu%0״:Rs)8d*t[=.i&b[D()TB. ?εuSܾоsy.R~[9P{n@,.G4 Qt `2ďqv 1Y7#Bb`F牽 Ts)!t ww-Fw#oB$b5kKPީnَ;j$ڹ4'kRFB >G@G17څj_(n +u%lY3M^Ⱥ<9z>m@D`} R7!U7tnMYv/8<m30? !\{qd\}ۓB^2O\:tE$?3.<ئ>:4Coգ|2}PpψlY1ـ﻾EV-;HLoṹɍv̹;7J]rGoJ,(nՋZ?!igݿFb sAb*Ck:pZc@CgC\~KNu!<5!F )Ji_~`(#τxQVFzx3GjRɦwbji!X$+ qw%u-!`:gzYp.֨FZF Q6Z$-"ڒcWeͽMU4y*25 [";b"]@޳"KO:xEʈ-uvHBeʡꣶ=YݯSWwcR6K!|ޣ${oZh"YɜrX +9)\எhgOoR'ҘO?=w[-#QL}f(axy>^1 M3Š?Z''~p+N*w&q|S.Y{#Ά+?Q;OG5%1Ȋc+bWMpx,GD fAH^[gHǮO 6Ev0J/W\i5hHc .=#VC}w'EL%twRLh<%?3L;q&j[ z 9b{6GA:k.OsөjydёWQM#хܨJ78g:8ҿG;s'P]pLز6:dYyݺ̊"kԋ6OʋAVnWāu"\>wv^>h 0՘t3]WαAȮy`}} {\ysQcrͪy0D?>&2c;C':dJ%^OJ[dXU7i9@ͧq8X|\I$e06 C;/XbGJ]=qbRa۵B{i^xI,vC;n9I2þJޥE6;XcRqd+0ׄ1L+0~BpJz!tk@F4益oKO Ojǃ N*"-9M[^_w%KegMZXUs@ߢ|t!+lu,#/X^ J30s u_vzCsQ848])G2Ŏ̍^oC<u!Պ<~ʍOYsSYj.9_` /owוE(Ip#>ani[ѓX+ǕjmF{ eX[;ՠ\߲dhM4(ƓL\\ 3Z^8+6mD8^\ )s홦QQK,e#D`^KGFY+b|=uJߐFdrVLnR]Y@kp~{9Eq̏;l^ ܔi&E&'3ov>{ b6k%萠ʩYsQz%άrM1iaNHȠT ;o?JWWD"|98{k¶L)T{\c_"pCoVk& o0t5 @cay'snp<5ЧP*H55C'@ZDƵ!E}Ϻq? wvJ4 ΄F*^lE vNӐ"7^a~23Mi=(^ND`]ӻJֳx4>m̏T0 ߦ$8R57Xg% n0$/&"OJ l쌐~NsD \9mF.3 GeW8IF̚<['w[- 3C B9%WJ5Tҭ˞5n =?†+(bzNqqlj UZ:=>*3wYK7-񗁧W#?'=&NfP/.X"ݡ"@{~yRtQ}~Vs Q8{gH5vFf8b8ʹ0"ȼ ]W瑮pZ,uBoH]:VnJ##emw_ʓ:%mstryPdF^A.p#@wt(}%L Z|q3?Ϡ! 4Ariubv0=F2=Cth%ȂN51蹓RaQc&ɾ/V\ͫǓגeJ\Ļ Ȝ.a/HBdRgR"/D!6΂*RS#)qpcB<#9Z^W"pF$#dt֤뮨dhcFj1FEƛ)*2kіz)rQN XW@87}2o4 J16RReiZlpF % jq!#1p55q~{Cgggw J !0Y,_Db Z lͷH cnbc\6V#ZGLOXL6A=|۪UW ؂pzjPfG,ps&hQr.p]Et(2|.CK]5In5P4Ep9u#Fڍ֕ B{ Q)sx`#4q䇠!aL"+)ElCpgПR($AL*#n-³RBߚ;ucey*MJI49Nϓ;Bkܘ~ CY)o[sm=sUc8&E[d[mL<*Pwj8B2uCF$0H S ViCK)}PEDP/ k.t?]#{gcaE?UrC Nd<&bS)@m.X=nф6׮ӿ.=fN}VE v?*zmװ,58[kFjwc\=}T0+~`jzC; !}~&)U߹%s r* jru.sf5Q?r~2+!ΰ7ZO*d^Rf :?kR򞺙ldֹA;Nqz 60P}&6J |Z|~%y!iG i\g[|t_0gJi{u\\8|5ӬMJ ZiiڴQ.O?dŅWWOVVcn@Y䋭Niݧݐҩ܏{F SjGYq5N@I;(AG$Q![ޘ=QL.0qD6ɣ@2e+FG]E/0ʴ'KV79θ@z׊`=(-Zz6_rrd#-Zs6%1Krl1rq}Y1b H&*k . [qׁg cQ`c 1z|"6t*86YQi9w: s uַvwp켆R5{ذxk"KS8å-oi GG0t*zc<.Pqz S'^IvaR"E |8OXmMԡ2p|J?+ D {Doѱdxߧ 4w|?:ز$ G#On]MEnIz2~gϘ*=1Aġ;mPE ok[ɬ`o2 +k_ߦKR&K% 1"ʆ{xZY7:X|ڸӪ]dy6x nJk+:x#< .e?HƿE@+nqt3fYmM Ttxs6P$MɬJxI5=F[#ǧYq;FL{wS4rH8YY/-_Iju=I.1@jZ# ^=wR3Rg-aEX#RE[BHIz--ܧXQJ;{0`35P4'ڤ wzI|f ^5.PG*$BI@,i ,RS%'e'N$+ ʈ#haH@:$8y$ci S3G&~n *jkA ܏L>7񐞲(=qqk ^KkA8[^pA"rrfnpP1PFeNCs".a2Qщ%;P1/MIA'mS~@5<O/RVQ?.8g%U|64ќ (9 #nv:mJ_ "s[j0;\1(0Z^i Ap rC~,=W/Z2=>ǫ G1ψ|oWXթogl܏nWj5 qb֌ fpDTpz;VV0ǐǖ'D\?pgRgtwd)1qIb@;C>/@:͸TZ}X/81TvG׆'d còqCzɑ`Hv/H߼\'I$=$▗؈|_91 s8IoA` ~ғ_cJQumHC8Rw%}{NUGվ'_TXc[z8%CoEĎg9yOҺ2E)T Υw\)8XCn%T@Κj ϛ3~9 j9vGF= eOIYik8JR@LgY*$` b.u‹ԕmv#q)0"J2ʵ)hC Wb+,d4V?S.,j\{q>o6"õ82٣>h 2i Ɗf@-Yi`>S|墛-m}֏i J\=2{x@5Yx g|R?X8͏G ؖҬI\ֵv,&T zEEs_JatfLH>/dQol6K{3h~BŜ5YQ'5cCOO1do^,ul!uE  97T*<5MTs‡-^hUsC`oR&E~S TsXUR%_AHrfrh53V4s#u]Yh6J#_)Rs8J>i7îZ Y jn,:$) -/cŤeWU2G $i|ϝ IO*c#ѻJ""0_c`)%"պ a{ i*6F` (|-nY)Lx~d0ƂmYt u9+ZdԑEP뚏XZҏuﮔp,P2G+̊ .!KuYƛ%E)Sl6rj4!xj6MJ3⑓pK5|/cr([\=;.LS\~ }|p[{JmKpU}ecHayezk};H~s'UqFe*bU3}U-V||nz-QFܟMh!<< 6rgRj5o_ eg2&iOEI`NlϹ$jhP+TbESZ9K/VFNz[a^,\:dӏSw?XUedK# GɨvH}.j zw0 iC (øn7GN)'Ŕ1^]T+z^k{%QGmVՕ,L϶snjb3C[x?4NF+p!18$m8^~L 9]F-J9WF@)])';<%r'ڹY|oL$4)C2[^L}ixxF @Z|ig*vk&Ȃ@?.b5l>S7ŭLXKۺ쌀r!5*S q'a 񍛾،la_MmUt1z2%FCHQG 6GҬ:rFl=:!5s+dkb2 婖#T*d5oR%ջ%ufFT|c= 'X qDS1;ǽ)umW\zAU>5WK@K[ͿO 鏷ƇEU}V-6@zzQgֹXN̍A0xegXwVKUohs]8}ٳtceҊA]ig JO3 =/(aR*-w#O.w~h.]NC A2sVX +89"2$N" NKt! eh8KtxwcО UReWn<Ϫ0L]49X 8D! (ƑXY{j,1F~tv`ߺq~Vb0Y7Rf7Vw ն,K"vP72KRto\tn=~PVqz1͚`tڥ=ƫ,7Mxg!U%tTdqhLJWr-?sk;[ҏ},~|vYdL՛B 瀦& 0)U$+ Fbx-iB<.hǬ45ctΠToFr{SۈyYt$fd',ެ >l_1 ڟ†PdJ`WܹJQ %i37|qfk8bh!iǜox?P(e&M`bQbG1C`Mr' 60y>Yѹ4/GU$Q#8/麸YR_j\ x;"=n=zm#̉@Mt3bN=xUߟk7mik+?_>\fl&flE=_[._j0e3,1W 4TC|{^!8h6Eӫ5=P Q0P%Ď5NHmH;9G`Ao ,? ɸs@Atnqt~'$nj^aFW>N[mSv-'' /( ,; 4]łT+S;ퟴ`\JJuR6 (,'%\mR@hza})'fx} 8@gxa-G *QB+\~0h9 㕮fZDHTg2[De791}/Mvj <^]_4~MXUz w+L( nS:C!RFKtןOHq㦣~(Iguɭ[ 0YHw(KEJBaob%ZK '8BtT_x{.]^ր&~3[./YWֲnYkm/{]b~L=k=\6/k t-RO2l߮7JwҔ j~꟏2-I1%#8M +74ch/F_~n6*(;JI^ orSOc?,QGպʼqr.FX MZgAXUs$F(/mv([EgOmc,seҵ;n Y4^~MJWDJ KC]a9 hwGK{JP!^LZlz"#D$g`iv9 zC" nUTHk3vTD@[v)WAjg;Vٻ;Bك ̋|9?!D-f$Li&@3?iǷ_m:Aٚa$_Dj%^ʁF| }0;8ǐL} 4iJ+`Ń+R7Ds@%lS!o as2StzR\\3W4M zSqfx`yycлM} ?3<8|fMYPϸBo++8Av_ a!slcMR]U#v&޳伄rELyU-~NB1.IU!vg)dR2W&nYI,ՅHtb;;ډ=&U+fɨ+áD72(Y'6 Rʘ6 }_FHۀ7u6}&1tLHJ?, (ɇ Β0nhO@b޻ ˈ}q[˹}wlzG$Nwݠl!STqg5*qp5Z$%H*iQSIM@h G|E`c4Ő yxwhuaٛX$\@ҥ#)vB⟜\5`17Լ0{]tT9,R3"8&f,ۍ?bƘvgWzHh\gba̔-m Bvq<HEyo!A;@S1^_ϥWFO쌫bԂO<QvNŎy-ѯ"w2z's%@8';?T&'6/6k?ŭzɻEh o3/ӐJl~&_qJ]%\d },_N\V5tN0 SG%Kÿ%NDU41*t`ΦH/j;NI#!A(RKhwXK9؊8Q[##.jVu)fܜz-Qq}9kF8e[:3kJpSlϑv-$j?D@D+,v F-W4dMљk= jjԲRҴo^pٓkn _\\3[˩5:8YycD60RB2B$G OFsslpeigWRٓ%"$IfnSM A(P7plrA.巜z}_8=`o0m6 =X8zIG"B]"wNQhy/ż0;ru鲿MALܜ|#X+z4p'΢,!%x4pǞ#F+՜U_䚶g1U+cb6Lec36(;B #Z{IJ#,P3eởH/?]G‡(aһ..7ͬ;v 5ўp D0KzZ]Gfm=.4e֠\˫JnZzyZD*`Z 6,7' yP_6)fXTtnm,"_p֮N8`yM#a8WSctsqEp$գ tI9<0 6O fm1eW#l>a4%:lm3D^ь<"pdg]JD4֧@G$At҉J$䝺3k""=ƗXk)[ @]*Pk4 Y(W=٬+jqT"$4GC:: |Hպh,n*-h=Ѓh.Qq˹,l6 -o #;)t.2L##Ԉ u?wʎNh什pӱPժ<n6C#;2b[Xʻb4Rm9T[܁h F"dGs|k<+sQv|>Z;i)Qnl&o0`~#=|8z##pbl'[@yqέ) S<ò>:j[p|d}հ^z7Xf|#JHÁD@9Zu-[P$kM`s6 T'Ԩ&q%W)$:(e [4?zyu֩qo=ft ,>! WGE.VҶgXɜ)G\Lͥ~c mn6zތ>sGij眴lI lU:dUMh$N4\ xaڊ NV2s{mM|ԇ_T!,/TqFoL#0aVԪg$X?e&UVQƼNgZByL څG})/{n{(ϑGX]O|K; 2٢ HKLܸ"i03ixirUzjtZGB/{:-Zi݄/zO ~4͌8 TpZre" E]YouՄGe{Q%j&hF"3lz:Nq#Um O;y`]YTo9ǤMKNAYHѶn]{[ :'4u~m[RLESz؈;>X <]6omҮaX+n$U0heZr<*{׮sjH2-{a&l]4$o.vHe`/&h`JDL"1QjV6\"G#?*/$^ډb (˔%ytrL4VQ!o>UukƠ#_McigZD>mΎJ|_*$`@-(ċq,vStx_Ywnn,& OnPBe lH ܑvo k,PcX$zǶd&%1)Sѳ4#WAA򯐶SJBnNAoRR_p a[f =<+xb+9$Dmf9h\a ƯZ5jݪX>  WX9fP=hpJQGEx-fjT@ c;jy0~jRtNvy(c?#s_? Q-ݹP1QT0!&ٻUH5n7ǐS'* ,^\1)$ziؽ3W!*R"SU iRQ\)T^[O}BNE!}mEf0ʦNC-FxJXa8!\l^Wxrco*'ik }L}:6 G GȤZm-P6wG܀*GKPX$ (ƄGt(eT$Lfqv^:. x[:GRyt2@~Q 28[e?F>jJ.O-s~ۀDk"C:*7=:E`KeHWIP1JJ:٩^ǫWGwkg2&̻&Md"m$N3GMvҙ liuwqh_ӕra?#0 xn9GY3Ǖu7(BU#G",ODVn'#Aݠޫ8V6͘@L>awzh42vDWo [t_J*NyC'ѷO: R%]#wOUOH&⚃kPܒm9Q5jŠݏn&[%iWzrE'kJbjRT<@{YiX"o_$Z`_'dghf&雳qK0C{kWT4mIiIU*!wN0y50 {c 9\G\PdZehJY-%aC޹Pt`V]08 ~2Wv yJ9p "r,  {Y|d9[ۉ)mpխelb{T.%}QqrYт oI rlN\&8s''6 + I)z>V<[|%e^);yUҠaKhyjĬ>1Ն26bG#47f-6Xғ*TR*@#?Ww'|NԁҪq՗2 ,L+yuG)mE5BLd>$'EF+DF! TX$Z;o'oy(KSucXg=>+rt\ Pd>&W7Rt}WS{Mf.BqmP'?E\~ާA$.Bښ2 #u|w^O:W\rK$&ZN\j 5_€ } i\\7!)`YNÿx4 aFEQlnm"mթ`ݙN;'*_LtvGglBh@ՂGA]^Ä:c%|NKQO `0 ѯp5f)^Efp phG+@hq|UŨEPDdULEQz% C$y‡;htnB/Q`INa?]=EW2y Zz!-bI{X>㛼Y7f[k93:F #WnT`b2W SpA&4P^( R D u݄ 7`Y F S)0ggK%dA˻}Jlq1cѠ?7KCζ3UD1ul^y-(+0)L(t9PA F 3>c'r,IT]$8&Sio B_ 0ųkE`<}5N*2rU5"fz[("!/"fF C ?@m=!] W GY~A:u`eykO0b;JQ'/@ժ#ͮ&@Mtg{lJ$F^`ZPUsP0fI磞y3QN>.#pw/瞨~B#`/9Ϧȶ*YK_Y'ͺh7{{<U[?lfdTڅ-{*}l$W^0~FO~h/X */M%eٯ*ڵTc[Mj#̓*A#KespB8UF:Y }-2mJ%+ @PtBZbs<+B i,Cz7`k̡k+^:,Ky*/NCs-;4=w ̯%_YU`fW7k[jV_Mʮ7,N2'puA{|Ok-| Rqx=vjBO(>S'VzlDX+_dɠqR ۮ*w do*z֠0@/ꯁXޫj!Xeb⑑=ŀUxĺihQylZo\R؊#[HRi{JIh/镸 .֋'J?^j oyӡzJԢ~~}`j+/ #H71tp^el'@̃6߁xaB voJa0_*9%%a.X͵F-R}1^y#d /fȹ5;TCZi,Dz:%`{ykFqX3%(az|1C ;i֬ܛEN R̓Թ5ؾU(M/Ԣe'KNL5Tr.!*DzLZ(jycbm5JvLViۛMb2tJ7hUsS}M Ȭ[G%X) l9"K?_l#YSWw$Cl#3+N Z`sV_]Lz]Dhb'#@Ԙ4JSVb*l/ 8~pgenp=GyBEHtuK\Ɣ4wՄV?_tJ?xvp!#vBɅ`,7mhaN>ddz0ͤőJs1 A l zJA)=x|RjˬiTuإUX \䕵0N2*jxȉxY2V9shEv٭g^ΏXVsb=I0ٷF U4<$6jt1*BjU PYC@Lp!I4 nwNfjqS@ p'hEנJ\8; s#Ĕwۅֻ;퐓iV/db>c_݅;t>$n\fxr" w-{_B`1}efIp=J6\Q1ʩBLR=J)?XCυ .z "?JmRpAp6WG(,5N3d X2hجb"4*N 6f[g疞9Aʨl#owymLC+0ѫ|')!߂Q6e"?3݅|YkD^j%¯5.'2ކs#Āo7Xzshp)> #IHp ꚥKST"2͓>Fc,`]򓳶C-lf%κɧ0=OO)%BmTx^X*1P5Q7AMX&>㊪Ћ AW1"-ph"* V2 Ѵ382Rjzˍ㜞ʳ,='mXDIIRTFE0UpjoN$ D3J.)P84Yrdg<9s^rQ,n{{jz\cm u4ܦb9T3?}GW&viŊĄfUA5-n'K_5."AN!)i{씐efNq& \XoRֶ&5348 rxK*JAWZymRriV9x1R M38-hv~>Y7o-{eX>HȵW{4GN>e)O0 30olw7xJxqNRN?̪p1RlԐڄJϭzјmeh1޺aa1PoWy((kp=bĄcՊڞe~%NCK"pmnmI$JsYcń8JjݸM!_V~MHw*T50@.=t N͢lZJ;Aa/ZBgO/lHqije{G!b_Mw-d3"39*byb7B`ʥh\HȈGv&u{`N}Z!uwwNum}ߒ-?4Mݍ-nyGSDiY/ =X_D6)HBuִv=p;a :cb5`!&{}S%/@|g͎63CR,\:nyINB!w.I8)s4 ۼt׀3x[Tլ(ad\W;^$ck  ٲSc/i9\#I#\)'3FfeUhw~/~B`;NtOp6+̚Cȇaku#>1~zE^{4K~E2SH `he-a$*Pzᖣtŧ/7Z4XW$ ) ^7 sC=t ѫ+A`xs9D`_G_qo6, }oξw^xt8+曒muo%U䯵#?֒S<@t_$~)eTEөk6CtvP\L-u7q9Hց$L;.k`hן u)spN,Iσy@6^NFÕ'fтR0`MmJ.xycw3Xw@nl!P8NKmMy2CS7wg`:=ߩ4q˅Cj]R[,Na^*fvזJIoߤb%n^7YAwO?#uel$QsxKox7 ,6 <\#hwfOw/(5bq Պ89mgIAP=eX<{y9̀Wl. MD319g/˱ ۏL bB9k yӝjDe< _ }rV37b<_ | -5Gx[Ԣ2|X-ȡDJ(lcQG,w#_qq=Qn#Pn=7ghPNnQc GMJ^͉5Xʎ"P5Hɔa ǔmʊn8jpc>pT(-eT!ibK]4!/#9;*\{2I-}~ wRl}Di!cp&`bts-{uLȗM"l*j\"ď*`%dOr Zl݂κ%*ϡr5"4.px]=Qc?P0 r(َn3IS0)0H 뉳%ryF U-BJB zէD :Qt\>|Q>*)SpA+@Ug=2VԲX<_k1g.A:,ZT/j:AFa}|C/26sZ, 1>5Ԇت'ZF.6H6u &knn+E_B6BH͑o}gw3+F uGK@3k!cz[?⎆6HltzRXs<U%Ewjxb>PߤĤ#o ghe " tTaܲ,hs ֧Nq/o녌:6 5 "sDi ,u쁟C['Bc:c>\qĭ(}a)~EeKs}.6~[^ʳmnSĔjUD@m\,Nc +-DE(R"HTE~H wx"OKT홺k yk Th~7+w6Xdop[S̉F XX {#ԪC֖X`|]Z6v#m;/ uRT^|d+˿yCx) $DPd*|#lβ+Uջ%_Dsׄn\w/ln;U$ 1B"F6^sହ,fy qeچ]t?rFT"W .H\o%=//'rL <0~ =$U%qeW6MNC#k)ÞmNeqT?|`MQ{_I %*F@1+sEjY\wM8A$$t>_SX|HqsGUl`)O^\ -V34=wpC͹Łon]E{kKX,:0]2|jy¡}|2[ @yxޙ+y^E2O~gl ύ?@I4.vϐ*@CgR%ћ[c@vy>{T r݈]; 4wC98_O^KM}u`}1]!'[4bj9TY.g!b õã꼞Wx OHR`#b*6[=oP摂wgRw06j$shHʂ4A6FsF!Vw %&yuW<+̆sQSYo. DZ ekz#;?X6r&}Fhh~V.BGOP?K'mrt 0)sčewƧ.ћԴЍg qTM l/nآDѤ_${ԋ{ὡ-rW7] [ \vw:JcŕhPJw%|gRf1ZW(<*,O5םBCzS^$!gAJ4=$QI]w)A|nK|AGq|*={R&;j{e6#k>b"^y W;buƉ 5CRi砒G?b4=^h]\Y DFtrx< ?9/yKq][NQUc*͂e:- H7u5IM"oPoEe lۇfЗ-G Ơ?Ec´=.bFn]Y0oEl;`׍22O p6-㨵a`&!9n4 mDoB=O i(iS-IB7@Hiy5KQ|KhA/Yb]#O- .L,>xE;w{b?L2mڹgX*X !Slb$Ѻ#&7I5+D{az.O0rz"D>0 6̗q14sA{-d+`ޘG`^aDeze,ib܉c"j@^A@QH(y Dm헷6{^ JxGUL</XF+@a\TT׮t0kZJjG2d/PKM7`\ a1_6]ܦrw]vD<}IVaRQT~$c'CLV ]v̫t}mUerWBGmq.}<ۍvJ@e`uSБze'|rpØ_(EI,in\f ,*>+_-%p|6zG&iAXкoPZXGգ$ h[iU$.Ѕ04Mz>_5⚈ :`$v>VԞW+>3JBpm& ,/f}xOvD^D"ZYz)<$/֜aPV:OT>~5 Aʟ u3 lAV- e0] KWD/U;?Fx_/q?Q(m!]t sd^.>/RݔOܵ+\衖@ 0x=I 0pC8Reqod 8=at2]pEl=q.#=?^yKW`Z_&n:s?rya3bP1Bx Z}i˵S0&GK`[*0ZK΃u|I3;3!KINmic2a8/}eC ?`bі_>WZP$Uag#j"Jާ qA# 4sb{6P|&&{ b蘳ʑwë}5^ntuGQ݀1BFeO[2ie~7SZE8lJCuo% X4\6OְM^DM+Y *쐅촨"m>+_ 1 ڽ*N|`6˩A];.&լP#a+bHrU@\) ?rE($#O`}q%slLaX@ev .H%U3b,i٠LɗǟR!cUC W[y7$&qcǽ2h= m?lX> 7Eԏ#c%M^^bq?yYFr9b*#/B&[4_V25!sQ dBJZ'6 K?҆o tHPBOo›$"^t G#Dj15>1 |)v\JM[]Mu51Yz#e2Ec+_G @I)I`ÿ9Q$h+X SǤHe d뗎>!ЭD$$Hw}-+c (1*s|OFxh5ŝ/ɓCƗbS l8Fed'dRIaRY|mPܨ~ńʹr^.q&Ă sʨiNZA{Š}D%?V|+d9-v`\X`dX˻ӈ!{UAsÖ/,r=Z6յf(5Yl^]e Es4!:Vs3m'Ji [I U8 ߧhg$ Ga?Ia^' q:QXYjL(`S r\alBJ)-]=IT )74`ȭWHу\G7Ys9uVt4.kВ#~ 䲢 Ihb M>ûM)4"ΔZ1Vd a%|.)pl]vYI1/D]قD(fgye"fА5'y]Dj"[HxUmi͂uC#d EU87ʔ] F'|=aeLԋ-Ԗ/VF22Oĕ-m 7ǃD dgBi[YhpfK{]8k`&_-PJ 6ȫ+Kۄ3SͣͯzL%r"̂@ds[5|lk>B!* _Vw /Oۆ )(30СZPG!cmH2W!}u tj#gLp] T8MF#8p oũPDux6) ]B}ۇ8%G@±zB#A4Y@d6EJ ;s F8YU3$ vDLp:]#MZ}oT~ҍzzw-p"\+D[LMpE\5M(&ҁ\5zk !$'P2xԨXteϘ-J ^LMsbyN4u:d>D}9<7oܝj<]߄oA)5psW$4\YEQhA=Lr%.]" 80'$v{,q0B̩Ҥϔ jkh0‚#~5>\ۍڑ?7$f ?1L$XTS_LLW{X$!Y;c>;*x?" I; "[ p 638GHs7i }4g:+"2U>='pSC ;\E[l8>Ny[kO{ PB{!8`9&-T %``5u'Xt>m% \?S͢JZTc1!8/!l-c{uϪo&2yƀh~e ~1Ǜ E^U f*Z0 eD[3ԿzR2ُXEsE! l ) =Ij8Nfѿ鴸|qg~-]]JVw>'#|qwG`Mh韌Q\S_z a rʑMpX \Ip9I@X:m qw4`ÁL4%#\_ rboP} YE7(yB}g5Ye}\ Iq=_:斣 "='?v[ ̝te PnKs*~f-lYDgLg%{=cwHkٮ&qZ)$z>xa-Y&7茌BC,:ByKjTvEib:<FV*[n.3s4Fe%CZcbՓ`nIN;ʜ1,`}QPRC7%Hw]\SR9/vmLybA#e~Q- {M?o:$o0s,LtRqZ RƼ⭠(h2! j7M |NĞy0 :h4H5tGcf,\;B쌗h>iDR }JbBL3]H^f5O"n`X9!0UK TƯKFk{*h zAl\j6 WsZ;{ugN7=峦bx3M--3VɌlQGDdt{a]u? УY"-P߳JiP}ܙxf}p+nSUśjZclk9V䁅; z#i/CU7o$’ ܩx`w3p!aѣjZƩwIlst*mnJ/\S]"Yw BvrПVaB fC`01z-uY|C!(f~zOІa0 # 9F' IOAgYm\w4OAG 50C&0+gQI$M1 bj$% tz}m$AᅿψYC9!\{KG=7z'$CTr1 %>Ge_nאF \cFH9XӛASUCRɭ)Q͏:܇^bBFʠk cݍ]'NM6JUh=V)3VυSrd|4#Gr@.?́@ SMe@eί3ouQ^ ؽ|n75-a>1k;? N*V'W#@3ˉcxρݸO 3q>_,'6הt0#q9-A6vnBjVm/s0 ,K^~>Z5!]rҪ% EBCKNkS/#sueQz/mK7f7D=xn~>l!Jt8-[{8 ST@Fwi8 9qؿWQW V7Ґ8EM>6Feq~FsM:<% rT8׼> @m+q#bCwJmǁ͙N1NQ7r.VWuz_Vk-O׼*)FUrXW2z# M7LW48w2JԲ*:sԅ-Ӆ&2<R540刚CN(2EI;!J|3E]סLeSuM FdkdJeXAJεMCgK}2rk[kJ_ 9t?h2R(|f>B&~JywLP(jFxRC=HtPMjM\G'сt~enk‘zAxQ;sAk1ou I)΅hx pD@X俒SHO\tuYdN @f{n$IGtݡN'7Ӌ[n |:ً4-2 I6]2}htNL_g*u$ Kd}sSH% VxҋЦ\tQVcb@ԧݞM"Kϱ㥛N#%e ع֝}s]Qߤ:ʲbTcFM]$ѯ~G̈ +mKƠ 06߰5{(,TPi(* [U]nuj3n?f!bG}%.Am{Kkh,w7!y;Vefc5 EU~1Fz $pC\ 7O[%EJd9N.|$f|#2drƊ W~O[,\S*lțzHzŢNG[/ @:I_BH ֻ}5P2s%@zbnT75W=Qý< D~@l&ЦU "yxʪ0 <]\kj҇*u/)YZee̍/}t K- k90nbiƙyy`N_}G͢$R5h- TF?NAOEyҹ&4O IKD0 nmHp9wS+u# eDNB2XK^(V<7\ e65<)ێ8Ue)2iv}>,,kiOv<>'gpzm$[9H,ä*>uU,zEnTʅMkid$#!)E+.?}36kb@/>Oguj XP6 <*(uJ2iy1Sz*\_AI·s(8RZ4=[G T/1g}C`o.e4ͩ7̉ɽ;tdwl)k{)sJPon~_hep>^Mœ1b`'P &h 3-;ʇh G#חBY2*f/'y%QÔ}%FL?Z3s+C( }@iwWY[ݢɮ<:) cBaLwF}?M!7,E2{kgV'06,,\W|gŖýB{M"%;,v\z{(?hw#{Pa'>3R@FTWuS;Yp#d++bMj!$= ^ZPw(`3SVZW:V "2*KۘyÇ>hלO E։eH%yD/=yD/Xr-z5m ]u7t6YV!مT[pZʬauơ*@t@V 0ӯ?@~u1m̂Гd#AQc>l|LpPx1vv 4%h J4-Jr*"ɢFV!96V%07cj[_wM+ӖJ]1@|־}%jʧ]V)VorRpeyOJNMlcTn/iR@;LA :ـ=Xe .٫c_*@_~]Oă+n*[s3Tt'/j,Ϥ֕ÎR-ݵi5Qj)U&B#)ebAq6g$7^|5[1fij!:[q&{K_p=Z1p-JшqT }0P}ѭڍ]߾iةM9ڒYqwe n8*GW:d (gzF CEt4/&ueBBNubJƘcoΚǰ4X>R{+4 4S5[G֠d9 _ 7aGC"ؽLWJ@QFVBpry`] z<֔BTm/B(2l/D%}F{$ px&,XiB#_h;)TSVäE~nPO-! Ң/ڎF2&R«H0XS&BH\d\g V{οޣε>!wIi"Oc{&YSjêΪirgk+uMBS3]YLФ < ;Ŵ簽-@!es^q@͵}e d"`,5>HJk>An|\@x}"R@뿳±&L毉jPQ8RO KjJ@GM.v&ÜA;1re5<`;])yCGqWUK C z ׋\B\eEɎ,G4ZݾcUZ礢&7fBAGX-XEVCt/CހK~ *y c0+A765 $M@ ] yyB=,r_I=8?5"@jVޡ/4b*+fE8Onw:5Z?T3M֫2HŕնWd+h[Sc4oȎKж;#u%MEC>"s.758kס!cޯ&=…7 Ug+U'ܢ 0Oe3`xs%5#|U{Y4j1ٌ[|j1ݪ$O81G=hʚh 㝥Y#}/L!xm%Ɗ]vB*fdnwuvc>R֬1RrJM 9I:JIQGk~ɛDrݞf0bAn$ןR'3 jzuwd)Oh`)YzBlgӊ@0j gw2RDa#brBE\ș:~l8zze.PZn~ _zqxi x ;'-G7:u w5Zl{ ؝~e&I+ϸxFWtԁa gW^Sݙ9c_{Jp9<|&AM])L4]k|m&4jz9{LC-8"ɤD Ń[1MjuE&+u"h&a7A|+ۺل7ҋ!moG_6c[gɱo0ظQ3z(2B3kmKGU(n`DžQ/e bxb.ZufBK]?< uTܥJsd]=; `W W2hЛ{:~ %IR~pgI/=Q[#LGlcU*nO LL*) ,IT3pq7ľ$M!]}X SoLz?QL/Dᆩg;,e$q:՞ڊdEz&v:i=}A.ĄޥBI'6YLBsc~^+fW*x$|=~һTPfԁ9EX]."qA;7|W"n5P='"`rAn]z ]*jt͌U!5T bj5(m6"2<$+7̲+]wJ:ƾ%qBMw&.O44ݒhǘ%zxCH;-?xT'V17Eڛ3v)1=GwNvID%1:e^Xއĺ/;\x9oM 0'1a\t%5 U9Wx5KkRt 2Ff<>"#T=rQ;b!KR4Zf b} ;] {Muep3\ǫU {=w6: 'Y뼟gT-Iɮ,bnV&T[ MMu{ܜ@G䭪&l^N޵<hk9G{ Mc)4Vk.qPk B]+c? T'1nýȻ=T ҆3oE}y[l{P.uNŧw :lXw zp~#S}CYKs5g̓Ix3'[v*4CypFPDM:D\F|{fB^[AoKy-|ϧtu;iD-8bPù1 ;ÌX"Q+LwG+!KO.wqC4h!SQF貆;A1A)" \`$c䘽bȴ^Yerʹbǎ-Jz!75 BB+>k4ӑ~\ ?qj|Lw@ҡrSmr f]_@kAq2)Ұm2УY~VbEț)]db3>D A{-‡މ2NqV@8* L!2/oq3 'UNLMDroQ.uTw*ǻ9",^+Μ$!0>IɷK /PCnC-ڭRnHZ}ե>SV.༢a,V4tBBL%} MQVXP~j3hU\bڂls"膪#ny;7ox=Pb?ZU41CDbz2ptKd!$)'t*>y\11+1;z(+T@BT:\¦晪1-'Mb]W@[:bo'ꁮӱv]lJ3'oIXՆoOà.]ONxm zaꮲmtDub@QՊfp ^9Jw޷z#Tte 0M0hwPD)' *2"H =J dr(K[}i_6/n)p!UT5] V玝 l:hqi7|l%H-/[[EXz]R ՌkТ %qC~3Zۏhjn2<3%7ALMN.<].,Y\' =l'* Kw>`_ȱi  6W#njQ!QǾCnν#{ZxE96IOĐBc ^A7"-l2B9V6mk嶅vAW%]Iݮ\zJRbh_#OQj0Xi̠GL{2d`a=~[g]obZl΋3R.JXaDlЧ »?5P @#mBJHc]~&?Mc90Or>ӡ+*4 hZxzF ;:c)gT eKpotBJAB_T(bM5(]*hZkI@l^r#~j.ȝj"{KOM{FwCCt| ywvKk]6>D> 1^3^>35s;/~GaSКv/.% >ǏL#\mA:#vC[Fo~՚.F3$۠!a'14XҌP.>}~2Ia1\n/lꡓO2& "! uѱi;D/Ɋ99DXqwTޣ({vw ^O&̘k\ r?N* ۟\'ʭ) $AJeba˟YL/k#yXNej^|8WqΔ ZgDF"k"H!Z%LyV@IXeg6&t6nb;2W1T&`[ cCQQG66D-$d%:$CCNIHU+ Ǟt*MT$7 MTwJJM=^ bN^]m 6N56ep[KXh6ήrV !y" P ! vՂl˛A,V$+gzG.0?:%0fT_6u/arf`$sxt1 A1uo!}(\%Q 0c]Ibלőtd&bX*鞤spUQ܅'uTջ5z('7E%CzZlan\draP+ Y*ҦMnnJI ("m8hp>\M9:fVPLD.|+: rZ8mB!=]uƇ 8.(~Ã}=396NJA2̗JR'On-] ?5=f3͟IENna۳AΪX (YkC=#XYTp?SMHlX;c2?M^HSny=0t$p@ɠ3l>p%iҸzK?q#~%-@}Ķ7kX I#7Hv{\7xopOeH~q((}-ZW\`dl:- }hۅ.H2(>d [}~ܘ:ބQ8c0X=" ST2X4danYd͔H۴K}-eJuj!BVmwt)18l-bR<͓y=?bՠyfބHY#F+w]=oW2͚w ŵ Y揻XRh:> K~t^&@tGV~Ȃ8yOܟ[X:VfǟV(DT:f/'X"atE5O-qcCRYFܶ˿ ,{-$Z4޻]Wܮ!}̹R`5?ƀy7vpcgc{9oNT}(UQgP出G<"D&i-LN\hq'j^2|K\VߘLJr6xI4eoxuke+d]^yNTwS-)0Y4>Yw^4b E wR]6/5E&?GGbEïui6M4|biR`%ꍩ[zny+h?BHuy2W9[)| }RR(^ʧ" aT.o:nqzsQbӁX̝haLѝ͙c>B|t b">%cı7cc_h4DZa댃;U|>-Qr:/ʅTaz=ƺel7dA^&p{5.Wbxd&t e吼W$夫 l$꣙W4e#QqhjMIf}a#qk_[Eoop<.C &T{ $ֶRϐ2 Pr2-?.U ƈ{ |-,0k}eV>gj$psm=kیM& g8\fY pֶʾSLsO d;++A4gBj.־8~2.Zku'#BXgb5{ 7H\nP[Wbd1,9R+oIJOi/ŒPq5sM^L6AJYH8+vMwE&Rm:H X@a.# A؇6Q!IoN_ꗹ!XiJ7al: ^nIUQAAl w8TT8Y[s(ޘ}w~(tvޘA"jMw֭Ԙ0)m\,Nv9/W ֔]HiSdR0Fc#vhuq4?Jooc,-;Ev 0Antq}r`#3nWl'2%ծ*5 %t4@csF PP`< lS gB/(|3I^@Jty joqQ#LRTc [.5һq88J7T]ù% c@?oO!1"iw1_T'~BJ)l4׉柨.JrOi[&׳LL4@~(FdR^0p R&3vT w mDjuMR;Qei4\>~ivy_9Cܻ-@b.G_,n>[ dǶGv߭R$NGrV:! RE H JA* 7N`Ix*Y\HM( R7a=)ʩk_e{mc̉ ƍȡW 4.z\*L[Υ_ՁTi\ќ]UMױ6RYQ*=&|jFQ[sǯ&Gj̍b `d*m'ew\T QVῇఢc*0xsY DUa`vxZO96oJ،)9bu|& b%WZ1v xވ̵h2ARhI[`4-7D|Vr(cNf4(x V-󠏼 r8i?ψJ;,w< f>c໛AU+ɣdX㻷_㷈VnBI&n7i-Y0A6HޜebMpIOlkl Ua|{2|PKE9"qёY{m΋oױRH߱'|isuʡ rTQk7Od.Z>?=Z\NHFFb=FO %ѓ)O2g990 x, o˚⦐Ð~ϲ{ +yҷKX lĀEB]lޚUx$֩pZCB{1콯W(p?-?$q@J^4sX }00|K@+=Kc͘%~Cj3ÚXDeח>9Y$KER KAWD W{aXLB}v|K_h:d @-X cj Τ)w(2:xYbx/Gpb|Qw=bz}!c!^RY&=lѼ.\S%=M.McꬹSE}ohugؽOi&WLh_`$Da*q _m.moЈ=X6Q18u Kظn4HJǔZԒRr]x]8Ԥ{_|B<㥎=iN3讘o5НA TY[[(P74 )~|O*;mD&rM8- Ɵ^? 3?57iy?&H0D{(/ԴV>^peewSK1wvTWא2JHc]& %79iX,ewLK 4됻6y[![x% źW'U;ݵ(ð:9"}n+8&]'J="-E6?L+ GڽTQgRV-8Qk| V_˦󭒰%h )-ixEG\]Pf$~{%GY *|F(ҕ#qcB~q4*`>S6~ޮ/̅|^^wkr/EsnѩXBjx +У@Y , 5`ie/= 4+8|OO, [ˆu¨}& 5c__(i͹%=y[UgdL XD0н3gtBPy%`/@zǍhc_M7ZxO ]r~]lnF!7V b܊RoчaUIv,;\ð;jO0CbFpX5$iR7&Hgu3wRﵫŇ€ ;Ρ?P %Dn{P-dDT6QFP QSQ6H 23fwR\.oz/K(8Ψ8Ք;>]XT+`Q!vEPixOX[:KVL`e8fU=\q٦IR8ϨmQo^u<9N܈yбs}:5(][ͯ-Ov赬\ a$r0g&ŀ`y}F#:&b 7fa&rG=wSS"kE6XX#ͼP]WmϨDmiwn]B&3d\Y;_o9]HD䌇 $x3D؈ͼ6M: iOq#; 6h@Ɓ I:+Oe5IY2c`~Fܦ:b*)")XM0_jPJ}[0|L4 `MbSԏ-٭jy|@gD%]l(y``cuM:c6خbwaYʎ3y#*Rzrv̊vD3>6cSR{Axzd(յPݧr*GHIFLB9baW.)qx5v[9`uc1ެ В&m|D<Szs/A-[Dbi1Yd10.z͹vbBoףӽf+S?>4>{;A! I7Rfk󫃝G 'EMbkO=((KO&^֑@,gO84" BBi;atB2-vey^Nq/UA˭ᵌĦ=kjϥ>T㺭TW&i! 2ˍ)s'y_d.)&冭fsX~OXH$уmטd+r k)%_f *NUإ|bGJ&40ieK}OgCEa/uunjC1p*+mS;s– lO8k{!{ bT]SƯɇ. -2сlN^2 _VPX"@}}6w~,|Sj ҘsqLk/*I^@>œQ&mz(qWphQg×fP[Jϸ?u@9\[|6: jtQ*13rZ " k`ƃ)qAe_(Swb;Y4 Q|]n⛷Ё=[F܈VɁVbĭ7 kryU`Pٱmqro4w݄<} K\&lxxfFJAIZ)(EH 0uP XGhu>gJ%Sk3hW-T5x?6"{7|6D >o˩x6U0}s󁦟E]I(m-rP1S}Dl@`hVbj12 v,_(o7h  ׬v|H-U /W,GMcHX#QB9lH2]9R EZ3DڍFv<9O OH.i= 3ԟOOc{nMFHsx] cv={0)A~]qOz7ϣrA-NhI{|ҘdTe 5#Ш{jӸ.TU퐑16gf$S,_^YU:;j[&]>d6[r&l^zx^r<05wsv,o}m/$<נh[ 4Gt:)5}8 _m,f@㬞ľ2mn1׆ÏHn`4Lw*n' jhPZkvz@s@\Ñ3'ttwO7FR׺Әc .!vRjM^'{*y8T(.P=~/-5B6^w=taY>vKUW*Y蒙T1 {} nԉw.%Iؤ\qSGM=jतH$np1"X ґ$ r{NNJt_џ_{]G N]ۇ>_.܎GxAI[4 9C-:4yhXYX" Ko =o0I_UY&PR~M 0ͧd (O`A6_voz6sO`{DEd'Lsn ~xT(.c; ZXhL/Né5,A7c54tS}1Y% \a-FDKP 2(D }=x5#FEg"H镻OZeXdW}~l%l4rx̹;QMD䘾h:aDZ,)z&G+IharP WA}*J%+, TY[(8 ]jmwRBwIf [}u1L]GZ\ⵞbv_I7\7YF(GOLj^ԅyQ\UT:(zr 'jfףhL/mKkĐpj{v~l/O043A!I2P^t\&2sC^w*ϟhaOke f_t69ֽ_V?}5s:3312OGq7?>~B/Tٳ*JQmJMvA~ IUnV#hLZomPAG|X"v早1jm_c|g}'v$G5d|-5.>ued G( ˥V r9,<|1-2H8ԠvTm+vfBwtpcF-L|2a 7HZ Yc:e.ضӾpri))v?g]RV.o'F6U%x vkK" /Ǜ*|B| k\@* ק@}ụ̈̌]c _,5UN?(ekUkoG6p[@chfUE20y5I9tg_k kH*d!CfIR\vO9B?$VZT6|yچf4 6Z WjCy)LѧLj')x7Ot#LvW-h$"` z#tzn-eW㳸hJ)k= r>"&_Ve3@m-"(7]6<:tqZN9W'cw)𭫌" {Y IJ y!ShD@ŀޫwx 7 -=Tq?1d/ &zTj.Dmgfi21&lMTv\G1{K)[8gR燯6J?HO|8DɣP:} 2H"ᡎTlg>rI ta%v-W!5ĶcU2n1p?)9Vk#ig/#H;L4T $1={{RqdA[cE9J߰F"P7yT;⁛8DGl BCi p-Wguwb پ`s=e*j[Q7BZ}0&/BMD3%'<^Z`d]誻k F/J|+jueMnit|:''P~Q{d@ O*^%ɯy<0ewPsSBu-Թ&d`oYOEz?'Pĸ6?UHД{NAY\rT y61lK,aޢʴڅMsvnH; YX'ZN/,N-~: *cǵ2";$;ۘөƶ?j=!abzɜTq֨"z{up?}Yk8f|W Ñ.8uRHބtkY@?A6@{ƶ.c(-9s;kt˗n+Dh Z8ЩBg4:$HxiH_0]T>juhJfM|<4KA,Hf$@S}5xevϏcԒz@zD舸|C&^u./,7¼Om!*٫dŧLĽ ҽhK/bf ؒ* w^)4cJJ% Q5)[QoZi)42GҦ3yV4t]Z#ܛgJuqk$zexXoR˻)(7wͻ8GS:@9Փ `"D\!gNaa]C䠀N 5Q!f=H%+0٦CȪȐ{Hcǥ(UWDIFStMnt;L"W]3=ntVbp4IvI16]nez4B1{dھ fK poF<(k5 aT%#Ts2)7ΓЮhhov39}lDN:E[xc[Ǘ،jRSJ,uXg!VgUs~ 2GOj?抋ٶ 4_h2WL #b5U7Cb 1*yCEϔs#Oy۪af vD`aunmVs~!q}nc<_ڍn\6tV )$ɌP*дcwM)HvRU'PE|#6!J`B~?DewEPmQ ;y Ye=u_B_^8:yG=ߖ-X mjq?(sQo9Flad@{Q Q` Yk-!NgFs>EP9*l0&ҶIS~׳)F_.Dre>z=C}ø";&J %.=τq6tu%Օ )Z$!tg JA%j\oۅ̸MSv%FcBd6;^%׌V|MٰK{] -(3\_2GKu^p8tbql9vJ2ˊR6 >u)'iT67~#HkuUϧ?˙.h>E8SM]iZm^uɷ ? Y>G$3g[K5qW!ltCg#~ۻW_k /iݥPzy@<3MLi-i; 9^ roj`T!< cΏO?LgU!1!AFׅ|@uL7Fϗ-.O({Rozcc8z7ўՙtp51iI ZHa+X qN^TgT'qOa2>̤;Og wffn*nc&3 }Ki֋b/wT"ZqOw&Pb]QKE٦-11I #~]G+X\*㦡R(R,1zeͿ?Jy!9x.">㑑rBlL Kt}v-l:sԮڵ[ى d&aavW}%o"j)ڨo c)p SQ-y-񛙤# `?G rZD));q4Yx$ @RVڤ1Q]wG+Ш2 7~uCSbTc_LRxkC>]&F#Dt5!ѭ'~`x.nbkSJLW 4WxV@ۆNhF;sEW7rۏƼ&_k3+!Rk`OL?nC4q^MNCRW>>'ڬBj 1IMY)6|VF߫] bFf=WQm&Q9q#J*_TaS\xH:+#؝up snL!$k~tU̿+;E#闆YwdL;yP@ב?5YѶfrwbx1gU]hhjN4q?e#2bCʠq>̝)qGOծɆ' ey?sS6*cU'q$8ԼUBxx~n Q>-̂Ag^o_II\($,#_zj>M\e0jU1,^ZV*z"tLvU(QԱ8EG_s366> Wz7C- 9dz|pNbvj\3?C\ׇ\< vugG6|IASGO\!KQ~!j({E Cl(hP:'sPU37D2=cE^k=CSu߷[%${>-7$>\ 3Y Rr1 fÃqBNn%B`. ۨ_.Cu&!pwԱ/f}ʧkZ?NGi"f ]t%, xft#М5M3 /vؘTjw ]9%{ӹcha<Ib'{!Wb՚›g߶s =!Ri{p#1u 8Pn܉;MBQT>G Ff(L;4͌s!}(PTX|HD.qD٨x!MCnwXЅ X*;L]~H} B>ZxI:SύĬ` /[Νӏ5䝸~-{GTMGٻD3⿪v)obMdZ8'JS1V6Z $"kvT3B=[i\pLMqV2/w:H'iRk71tאKKGXE^rsNah|鷶?]D Uul-U#Km*̸hH]xonR |=3HO[Υ{8djحkktTscAfT7O8NJE]TK$unڝߏ3uϑf&.QW_"nubPP;$%,8tE1eIJ ʾ=!]ŧT8qeg8$C{w`M9U6X-)RkTN[ X/f"r>"0 qIʴ&2tXJ̮Fg:s3˲FE=SC`65 /QA][ӻOQ4-H!q4iݟ3𭸝m_'H4<%?|'rWz:sFa": bP56*#;8IO{+=ɇ7#X& VCRhWYYQbd,̾ywB&q PR5\p2Nٴ| Ru8zMs68q-{% }WwoX'pdl' ̶m1(*o?vzsJr Nc6ZG5Znn+L[/ }QK&T贲y˯pyՉYPeQKؓC}۾ۗJ!_ j*)z/`mUGk/etB{0Bu`+W<Ӱל{9Lm)_&X>~?();L8!b 62#&s"a_^fEXU͹Q]}#|`k"y y{  oO0U>ǸWN)=?hayj!S5#){nIڗL@hDq*_LvOa, r2\^/!\alUTH13NZ1j/L HדqB1-ln+`PMYX}(}Ev?U3<{ ?y*Jΐ23qL:Ss&{5صTF6{7Z!|@w-&]l=Et=瘙,TJjG \Ɏz!?WPñρ:2U̜Ʊ5nPC 9"g.qT׶9%߳mj~?$y~S)[ӔPhL6qzT3̥Q$tL W*pr<1|)8a7Wf+) ֩w 18ypj YC7CR;%Lٵc0d03Ln`uI?b'`g젖쨎5z+&D~QƵ,>Q]E!e[ jDNJ26nr t0+I>%7Dl3;* 4r*g[ fqTn fe~p.")0ǖj,C\V95(=T66$Bpvt 0js3S=&_"zK^pX.w4 _!'Ǽm_ 9fo@ƒ]B祟*ŏ `\lObvL쥒n:2yl[ʲz$4'4<+wl-*4\(Dziz#Rd%G p*q` ǑRD%MoLKY%8:SL7M^vfac˾+HW+F{*̽2ȘP{/' 䛮uxGJ=_dw8|)DQ硁c^Aɛ;'j~|*?$׼~~?xO<;RLSC-IY~ٺmY}/zz1xPE#p=&g=#>)WM@d8|3wKbEP:hSG!EC\Dp*3HP *XJ5irOTG? !hZn:AfqB|eQ)23ʒQdNx c=ˑ_.b#j159Xe T>>,̮GQ[88'[C]>& ;Q۫lVMkS߻D̽y06*:۶<KC^$YK9w1!"%+Vs3JRk[`[=mEa[md *^Me4JD[OO0 )ee/ He < ItA%.KG[#jĻ_&+幍m̞^Hy3* Aԓv̶m9kkOW.( u^p25!1>np4iwK4퉽DLk C+F;H,}LEKbG|eѭdc*f[/GtV3+q;Ȥ]K%`1q񷆻[I:str^E7z_1x!oPfRw@iIZ;).Dݗt$kK+U>PyDsGUoԯ$Wùƽ}C~qd4B}6؏ˀik}$jm,y%-do.:)w8E.]<Es#z5W4bZJ *)'#U{*;[Yq,{'G>xSGkaNu1xOCKcnJ*dC!͟թgsM;_@!9| )tlޑ &A*xjے̚!PP[3+n`<ٲfeo@-~PMTJ1b6iI>CPn#Y5NJU<>H1_1z>C0qtsf9eQѦ0ŴLUҪ,ung0LVCaa*c(fhfm {M45jl4w1ǝu?vvh@S2H19(#lyM>qAGV =m9bqf12,-@Q[X,yMZ-;_i/IbI?FOyr DW89e^<޵7,SjhB2fX0 8\0bZI4|Rll:F~Wﲴ WiګR,gk,:?߿pEE ZrM8LQv„L|չM\IU%%Z|wm''멃#A[4-S\T?HLX g2gu 6{hjr[/_]3X=hd=-ݿj gO>da/HW|◂d 1%|,Fs`ᯂsY/HA/i LD_l# w}zMseZvtά+i:< 6ap:2ה8}A\i n3d°tp0\n[*wZo]nA51 - @ ;^ѥJa3 A|yB^m- \(Pp20ҎS9e5GEc'2lt3f+@fеtvS.Z@!{`tƾ.xUDoV?q3RlϤWu|j=LxZ8[}*BJ;P|Fŗ852̓2ۖ_OMOhbk4cng&S0OE<-AZOAZ6@Ԙ'QK[*)Saw ]1ws?haR$`bV[S߱ )E޿o4&&$IkƮÎ}),Yq#r +v0ψ 0FO*}xI'#sNJԍ0tϳAtmnc6ޑ{zN#:_ʇmTy? **쒋tv m)~A?HF+Ǭv`(áBn,po=^o[{TU ݿ,q( "ea"?[pPL렴ebks/28/\ɧ'qNt3'6X{L9uUa1W>!;X%XúHoLqZgʎwh,E"GYJ~@˜?,04!"qp]Vac;] m1 {C8^ZC% O;g7Usv!dַ2lH$^Vo {Y**FHۻw? K Pz➬UP 7{Dʁ@`n.aScvG!TJ lJӇQHyz*u >AfSI ߰9sqZR\' N5)ޮWkkj_7x&IOq/&z ckqN004S:i NFŮμ5qK=5v2A޴ya\gnGD|kJ$A<=N\(*%;k+z1dOH@&Dbd[H."Q@;VM+,z%uf~xa6 ¿I-"fg-n=S&~4X(91g'7M/yǩ%|RTUL,O۶߇Eo=cld4\mqEEEߊw[y9(Ne{2ML.}%31Ub@ /jPLΝ ^/9c_y{>ɌoMRrHR[Q= +a2;[+.Q!~uf`\%FSH?={ETTd4 SrcAQ䋷+EXX} {ϝueAvUKSݠ׉g@v{~0\\%ގ@OO :xeHos :dF@QN-..ʽ5~/K4ɕc9%f}\٦>E #Ir 8G!F%&`}Ae9㉥IEя7M-qWR^{%Okh2sS$ЌrO3}N>}>/8@ )uWDq$Å̕&/~RюmO( 孠6tUhAf9(Xbm&C33v."w t!?0))y"E|RXvΐVZb}+OL90Z>WPDLf}T U[j` w`N2o+I3וvY Y}ƵPzD~' ."e=$VL"ϲbSzœj̬-M殔bNby/.\Q~q{&$aGcqeZqݰ_ G^-ȿkB.C8ICXAiP':㊵: ^waXԯ).HR2pO@UOSb-z<&5إkzJ4GէCl9mJXۿ͙fZ BwIR2xsH zzq#n%$ tn\F aDKxJ%h`d2>w39 PS J8I6]70bT$>WD~d끑@Ns Y2Wk6X( Fv&礑e˙"-dꗯV?iAiriW"sPU!zZXo,! !)䗹sWbZ ė%n:n,;Ӏs`.5ԝV;1@^OG\Hotd/%si?@^uЧOF:|SB vVbb*YV0/dɮg$7R^m ys T[A'S&eOQgNJ}U0읅p9Ûj4)cNij8JZt2g*0Od}[ێ@Ey% .*k?휸O $8̻tӞ'A>O&!\j܊WQr~GN` QĢqC/xwx`nj[=ZtUBDY ffU"]FecuY٫gׅBr.RbJ\c;/QOR QQsNF>7bD>$RronbnEeÞ's lTNsշݘAK[(*^W#5t3^ @'#&⿅f7h{{J&oL{d^Nr-Z8cߍ~y&rבb[y"ыlz{mldlY]p[?5$U }-_J0W,&iITI`y V #0ԶK=g[޴C2U_Cے_A6$7}b9KӗQ,;eY /v#Ven'AåzSKwV\ٚ_SMQ]t\)tX/I- +1 aʯbʡW:%@a-T # ʇZZys4D$H`/e1 $<-َ[^0}PސUG2؝L Ňg&afȧ "6;}=qZ[x]Ƌa+x(E8H7%|:3fVUu}?ЩmI[(u\N̫,nPr\3џpDZbSfexIWb>_ q‡-UniD&[.U./ |Ƕ$' R:w" 6pVqB>Q]$khfZ ԛJA>[Ǩ U6*psz9Rm6+/nΔdC бX_)RJV44!CFG1ܢ{iko> C]ynAz࢑|x dB8]fC2#9_?"ҙsvwz&F"7.xyXH ޵#ɀ2lF$!8ZMs>h[?pշT^+t*9d 1!~"2;s @$ehˆ􈅄ة~bKe5jSr|qLD%Upj?;aVX~yR9պ"c1;<'3c: \IqՖ$EQ!fݣNe=|uIzc4烪N0.&[ R" |"0c! 7Y/(Lh2"A{;R_Lb扴rAJ b E8q}!6+@e"&_z84+m$FmѰ?4Df(_fj$}ohn QBs] Mٴ|ޣom8Nn10s{L;7`c屵ŚGɭ(C$)+^J!Dq/voZ|Ѥ)G&D !pO1:,J sSu4GӌK}a3 %i`N6$&ð 5orV5jLRr;MXQ%_AOk`^dZ :wB(o* Wp7CAGc#0@mW;vwg)/}sYn߆4x(nUG~=0αa˶=ykܫk {~e$1 b4uO͉qDW?~P!Q 8o C,Xwzhqyk? E&?~GyTCzjfz@+[psP M4[Epa`g g`®^ц0 pD*e5zh4{JpE󯆎bScv0_NW@v,13-JT1 v5N^]=v@. r\E;ړ$R_5+Y~ jw+ u+l`H$^h>ofh=̵  Q+6~ɗ@Rc]C@:'BM[qȴ)ÞpCHqsӚFyGߣUTש^<=*2+)YC])uKF*TkXEnix+`BkjZ'^ȅ}|d ?ޠIokqCtuA٭鲇dG va{  7ga%qͨ8@P36@xNn&u2N Ը&Y -0 Ɂ3'峴KyL6jWR>>fDUؐlt(0'hJ)H]ҔrF+ePh}oqiN<)/>'F6Z ?=Pn*)'vX!>DA(mi#e\W"vcM%,0N|b>np bdoRWF)A xيGhf&>Z܄?VY$pG>Υh R@̞ 95Ů&5IB'Ƞ(Yn\2ƤHQ\p,T.@ʑ$6QZְބM#A A9.UnLcG'hzJPmB~E"֘zUųNt^V>"9=R)xgL'TիlJZtFtǭRJ-E i.zq[vsǢ;;f%2+σzZ'0N_JO 8b 5\ xǀ#"p`pT-ײEڀ&kL> 1cPH'>HczWtWx?+':@=Jx^Zf,n-&ܩof|s]XfΐxW`񝉐j;U9׈Iv5mI|Gx ޼ՇxBI'nOu'?a8 uO\UW*d߰yO3Vt}LM%eܽ4`-Oaw@ݪ(nM̾rZ eM Ҳ8/I<~-e uvW RCŕ@%*=;x ,D{Qx ᴯ$Jg`SdaV*F`VV5,52PtØIqL/: a;:4QѦ4&1\hLT<pK$3qwP)|焝n=jIف x$$roPmlNH23wGZ(i% J2"Η[lw Fl7D45Tbi% $Fbh@{}"vu1p\0]S"^M we5\Qn"cj xT>qZxGgvJ Mip8_U9š7^ iӶYj w K?u691}z$8?@ Y@ZF뿬l^>^I*{ٳ #Zs+7)~ueЎr])*9@]wb^,C=`WP3 FBe8 dK i8vijR$ƕV E)}ҁ c٬aU B(9 Ea銊q+>4% 7ۭҝ쁣1hܘME9;K?f&??;XlUw.GLc4/y7:)m`>Zp>bx5guGqq~n @Zn8F1ŰU2TDWmb%T7&]#-Usqtmk1l``O틋+l%XP04y,LZ&ӱ\FnPΕd ܯy$(fpӀ#!F\Q`[p\G ~k]g=KQR-ԏ]&vHN4OFF >qf5U * H\+g4cL)l)$vǂ)B%2E Rq0!w=MY;4?ˡ7)R>dm @_#> Wr-P|2Ge4~_F;L2:|>GR۪Тj:a PSA%밗9ݞp [G"u~ %2'*N͏JeafhrzNdZ2T'C[e7ݼ/:H.e;j<%kY6kGtkqr‡=Jt_׊brjZ3JiGO58Ok;>1-c{zIɸK&nQd+t\M}?g~fiɆn6,\:~R,RiOcu[mdNj^0 d ~cy`|i7^F OkK`?2! (cD+J\yx?GZ;y=>0+f2EA\4e7 c:J"P _U-TΙLّT?4>K3xI$H@G)]0gdǃfBx'7t!&wKFXg/ng?[MzҼZL-2r\h)rFЀ0˱Wf 8fUޓk@5"AWTIoLK+ĞkY7 bVͬ*4d[}#dfJnk98tNl7,Ի!_.?wDՙ2ѤSQ34#$V<VBbX4TEBp?Jp9ᅮ\Xx&}E@E?M *ԓc^lRcPXn7)D?1Te v5սWfz7\4m1RO -$gSeN)`i1L6^˦կKw;!-fȀ̼&3VJ ^Quz4fΗ,BE8i^/w0SԾ3eܕda%0g)#gHsP= 4lZ'JPIVA%N.ޘv5 a'``,~ev2ƀf!3T$exփ.H!*#9$'v茇^yl-T΋"28'Y>p;=MZ-liN'Et&]@mOO ߧ #YE+6t<1%v- +X/=1GH]]S^t,Ҽk@]+O&+9GbV_bmjgŮjbʹEw88JOYkQAT8ޡ3yK s`O(:ˮK7vG4^O 'n뤺-#x74u""jDrL6l~umsGar D$[:$Icpo +(e^0&@y`>b40Ʋ_G踲 f0dR #}`3Oj&0j?Y:kEX-ɋ0 P oDS*bښ\g2~L. }rPXS<*vEqSjC0 qIzGƖVgg9shceOSx~nXS'"DT}olF[pHBR*` P73~|߉DK}?k-M:ͧIpwFӇn2`* ^J,*خHN- >lr%$]Qd bSs1M9S6G4*{"۲|7CιjsgJOj|Tzn&+ajC{g0|V rKQhNNE'V|P\5JU)'o3[Ql@V ;NZ-^ A4}H‡c~W~s9?&o4 nο魐)mZQ@A_AAQuu+3r0*oծ.u8'H7X"NIO1T]Q]3kVɭJ}]ydM 7=*!\ ۓL=m'@i-|ܾ0] ;zc1m>&S"Bc2 Y,-Igq_6 ǨhX ) j/_C/fMTJ vFTI^/8Х6sRKj6-ÍyfAB{ I ]Ѵc} ;ҤUġ\֌sSqIHd]'cy@k*BibsQQp9=^3i,Od _j:0`uRnAIKn35sn:H{&3ޡ'*򧡦9Z$m=IdmN:[B 0gRZfn&'A72'ѐTLV괌<5IV``p uy1m&"kKoD&|=DftYi ";X85Aײ^M$tD տ.$ S+7Ofvz 4,zV-s D%\,Jpi`J1l±X,#ĹtqJq%]l^oYEGv4ƑR}]pbC>?h#*:ݘyOX3#e1Бc~V4$L";=Nҽ&uU76~4&W+b"vi!͍&4gsDGʀRC._h,t| Gj>dZU2Dy(=m-N-|rUl:N_ Lkvh1Kj"u1>C Pz:)9cج_I3li<M` TѮTGuiͅDwAoOAnQv ^^+uǦi\`zxv!D7U'C&GF;ٮ.:Tz_TɤH!o 4)-|et__D /ZaȸfS i'9~Nłc@p=}Q?5sU ϑV3[#y 5jQEZ.(#SCdUچqه6ݴj3S2>2 S LJ9jfW1q:} 35GƸ+;w3ðRZ@DZ,:Z@C_Q.DYÀ5|k7 VU=CӇ@қ˶pm}׃SV}Qұ6 wݱ=Q%{Y E6μORj%^)sB}e[.u II!w_Ul4]UwDlfY&۾Ȑ\wJn)LgFdaX&n.7.>A m{,,ZQ?QOLsWh}s9x$=WOuȽNrYp7L]] rj\R8[DzCxد`ܦ&;/~;r,hQӋh^aǃϘw]1B>o/#7$sXf U2p[;n$N`^`;  N5.xmC;\گ%ޑ_dCl)ӆOc3{/bKnؕU:l8a29Do2?M!1>(O cU-.bD9BM)+л1k㸂> Ƕ%h0>IM^6V&7QUW-5qL&hU[ 5R;>@s?᭄`A~ٳp5z{GaugR5Aw\Ǯ yuj4F&vɁ}>hKh8.Bychߦ$\Ek;'$IES%C+g%AVl^%hnQqaWDryglz(DEPtH.1V{&anM&NZ~W0P'â3RJE)14@hsذz`emdBqX%sg9'f`hLnryU މE<^WV<7>0W(ICjAK@x!%YcQH:Eb1{RP>ϣ `7G\r*^wֵ#]Ē[Nx &ڼE*] q^+m u-1~WHyw^_Zxߧ}~?cG-3KotΦڵ{S\l3 k]0uR>-/:}CeԴ>}tĕ֚&ڬy&hF&HL,D0MΩK*6z-=N̩ʒe=$P I&ߐx~|- JWތ!rsc>c v62tv)~s[@ٳ.\&uOPs”*.ĊV$x.aIT>l X4g7+"'ӏy.4W>"x/hSG@vLj[u VÐ>qmD6ܕ| [NQ.cԷP(Xk_ᚔTpGn}OY 9bn`OAh?vb&`whv4'FrzPUËmqs؃557 6T`>OJ5@ّҹZRYN,k=M(W6,d8, qn΋ۡ>y/[mIKOo'%EsUj9PVS?lE$jDzÌ}ҏ_N.Ss`8.\kF2^Gf/;.2d:HD8/#pl@g y(/W١U nP>!M34;IQ_Twv1I&.7KTpOvmO9! OB%//|*kJ~h< *b&xJ1{-`zEnOdp@"WxզdD`zʋ.[?!^)R*eלc\f &&ƦsK2]@ Lw$%+0tMzLjP!aJ]\(FjR-"7 ̠b@VwE*(W?wjb6!j#  ΝL$iY-j(b1}͹/jf @n/>+Iǰ}9f>0m'~/ f>-d:"kJze@"n@:$o: .Fmz Axm11xI%}mZĖ;u \/Io}3~yx]q.?gy,?s:Lhf,#6m"&0IS)?X׈&9' B$oԕyHs&]ܬX!X3[e#Yl6twGhIJhzI-&ES=#X/I*/\ t"Ag7j ³ohW}0*)+ E"v{<JNkdxir^sYB \8~ 4p,]u}'|'EDwuX SΊj=7_t(ug # +|M$h߫.B!vCf۲X}uOwci?Js L! .M=+ᆚlqIجҔuI!ɬDM* +lOE5 FBO?Ap$vV*EI 2%/ Mg'8~-Bdʵ^++hfp,_7~vťL+H1WbC[M%i"GPf.%g&Vq+r Yd3Ck"T9ޭ,aE[ mG?]vf9Jfy3&ܮĽ[OrqDYĨX_qFzBښf'x!9Waal/ɠLMz% Ѵ07糅.N @dSV)w"чXƂ>?V ؓtA'ZrsX8gi[c,9;(x)kf|06o$~5gDQ,Զh0zE@掓Fv$ .YNDJ%j'[Rr ŷ>!.y!ԐU9`{0zg܆cN6r?zqNi X8LU}7j7 5;rr))Mt CmKJH>u':mٙ%RAi [vOzUrKbz°d6LKS O;dUFvzu{rlO68ҧItT4Mdt^}1FcB6\>EUZj! CClBI=\{R(޹7w|)LQ󵭨K}y| וQnC9=IrĢ2iOX ֧Z4*.im0o}s-E Y/:,XOp6.`>^&n"hZvYZZPֲ7{_Oc5Y&ȃ[ `NSOZcp׃S.$̭#{W8<) BxoRno\gG񭻹5y+KHJXC$LqΦ7\ض"AY-Đ/UO?0=%A9]Zp%H?+]>dEChOQɥ7LviEIU?}vȭڋ;`xT!?|}?58*>9z2y5rjmHz&؈\3-x:uީ Zt \8YJ) 6}VoJ3,ϗ6W4&&μb84z Qܻjw"ORRtsԔ(*j2s>lGHTV A܆2G2U ia(bpzDv<+s@5y+h?Wr!N4ѐ*s\Tq: g˚B9 2e|xWzө_ܪ AMs@ q[]4XϨ7Dt`w 'סt l`î, '9neo8&1 ՛޴5Q<]d.&A0%5#[`y%􏄗EI%'K-V$ [Z" !(͓_b DXO )}W/e+I6ջ#9mg|,0@':z7W?bowK<qp֞uo.ݡ#Η=}WKOryf_njt&:_ o!ˣry.΅߈G'f FE6"[В,d5gBaQ6=]ǸNEIDα%+ә+S Eh*;ibLQO 5yZr3VdÕ ֋]r<sVBKCr.|WJqed?Ju5%{_Fˑ;>AhW1#uOApξFT]br7ׇeRBSwq/Ђ46O^u|Zs&72ۻ.B/eﻰ/+_]`RЁ-] 5#{ \$4a<̖ocF1Ѳ ZHì n)!W[}J%aT֦~ײ$ω@,iiGnHo ?#q8 )} y-Vߨ= @['-~>wwk[>.1B_ >nwX@R\,ε.q`*c$x,ٍA[*5܈md'~Dn/<$^.Pc@2ׅX|1%A>|aXeCRcnsGm#M㛬p>;y#BZ7a($@-4eX;q3@,eWS%VhD?MfCs B ;)5QwDlx 䖷rkup2B"C-#^}M*Jq[eeoVEXBLm pb4e+ˍ  ww@`Xn0`9۽ɳ DU_X#09s+</}_d3O0,0C !x7 8ua'f'j CxR!bKYX96j2u[ɤn%tj܁Tz,?a(`rG%G~Z>龚tܲ`q5S!f`Au2MqpePw+c|x;$>zh ̴k|Zrm.rc`].,-Sa7rFxR\$og; U=3-.0BB% m^2;I~]KC"ހ%==`Gk省‰&͵ ?[نI4c0|^1I ?Z&R;5D+aHf#;)7zI@\~-:l1&:9"4%4D h _ >vhlJe[9('S 52~X /D1Q 538XeUMar]K-#5ܞ4Cx(~ ,ռY1,e(h_=O8dc<"6ԲTdy;!.$j 6 6I m:T7d{R^=B0ؽpt= HqNѯ=-j|4Wǂs?΢Wj|+mIM|nq#FJ|7}Q,ވo u7V426Zk S7&w;Zcd6L6F(@M Ch̨I͏?҆b4|n4xCDf xMy1!);oEYBg<?AN;r`^l?Y%jT=i86ŠSd)Mkzb˴yz:~Aui,w4Mb-6⶙BrIamq bw͂uR}Ҡxpdˊඔ\ғ֛64*;= UI 'ܥ吭ȱvgG|;oN!Ĺ")0me##IBA [:Fєs,f!= nK<bw3r zC@v13q Y}触[M1 wA}67BZ^A=osY{44t -0aF/1$]kΆԥ.yy4]4?ك!|)d1EQɻca{߷ٌ1T["L艽GH/r 1m\\#rԍż.\]Ыp(:>0.?4a c쌼XBlM9G+/F5*6IY /Ws5-GB }h5;Ioq3ɺ|,Hsi@(PM߹d;cߞ$jҧ"DHaL AE>'/cPUߡq,I pIBga:=+DW9|:O71V :Q+npZTk'+kVFa*W9>\'^ E4܆Ӓ\X2lh9;\;A\赼ؖK1x7C&,B| :- ԃy6'/o~9%iC0{=BYY)MrS}2Y- 6.vfrCcee5p/30~/Jփ)/R[ƞ BW_$ezy*ee j@pD%Зn&D7ٌD94jxm $ dzʃ>.LKFS9y/ti#[WsҺփ9=>Άuh])l+$BǮq(o\#|_Jlcf{2B:_0 w0ۚzx514>m*y$oFx]uw:,[k=>12Xr$#׿g1;Ńv)%ȤqIà!Ob6*PH4 Nع뀟w27Y3o)'7 l?)cZ[ eQw]_Zdv2 }#2VT_^tR{W#}5;pvl =~?ŕUiCcx0^ܒqLb:f 54[sy <1oBh0xmSJ7:;Q!ȝ39{ScIG#+s1C"tukP~e͞i S;'dm㗑OXAr=6\i϶<ߠ[7A6c,x3J vIw6*0uE"%ـj]T:z;7xnLÏjIA.BȆ@:2gZ9"j"|Z`x$.4_)Fk%`N<4&JK`]w(kgfݴ=1}@`9= xo:D0.E@kl(abI q[aRL Yv(+H'Y%pVFm>PBGr]xLfTS|9|Ac('DP4R/'$17,rlgmw`_ ?7u`/e灊ag:~Fw_ g i479՜9[7r,?d\W&5P=#p)7T<\U瞯M>R'T'#ڞ0_#5[B~"C>+Em}nS>כYHơK #B .;ho/@rEW8r6-8>{_^@ո!BQ "c=f:/ OQVٶ83j!>$\WoGe`?2ϴc5;HTtB,8LYъ ,~a4@6nvW+ ;ng4:U3;!=3;i˨F05[(Du^C-ܚ6-Y dvwDA!vu;Qm0<[=Udmq7(/w;T%7'4rZ9mӥȫ=mSم+qSε\]R?3g1?n*a_~U]"oybgX}+}w.%-A<%3Nvr*0!ԾޟqQwA+5yCS#v&z]K+Ơ YUVI,E-l6nr{ARݗ]b1$TT2}3ɂ.@[\ţ9[хAᬦ\mhkn2ZL a*:r|v.+qR6'D~_ >VY6BgRlk;^ߎOAΕ8rh|#'vnsNrZ5R?Qc7l(t9 Pͽw]4q1|:eD2/pz>Ns:M֒k=l^, $Z{C _amBlCg_r%GVAI op5(^i yV\8"puVw7&}B*o1N8vR,BWks6Hf*gCLeOR#UVհ_o:ӽ'?DyAiEی7'H@))<83&OA1z$\:mj̬HT&ޚ}EGԩMB-՝#ղ_|y[yWkb#>K2+StVUrāp`5(Զ-E-nVAz[**F|W uin[jןd#J1K;odn}@a.U:݃X#[c<^wHM3mET/ ^3uw3A@_e6dn3/cYwS%6Y^ܸ ;m,mP(72EU]%rK'G2pL,} vS0_ 7}iZn4G,dKZ;9_}n v*t $Z\N5&OY2fIn}L$L=oa05ЊcQsUJ?F'NWg6=,9V qXB5/,93ᴻ%&:*ڜsP񰄘ɚtHW~,Z}?a{c؇ D^N ^8`rqgsNJ8qL3 WM+*+) }z2Z-:QxVIuҷ4vĝi;5QGcxa559ίm&*wEYZ0!C~V`Y@LOKӃ+6xD o\ K֋ Hퟶ!L-?%ڕmHTyX{+N:'nU3ܞ"%eduU^\ Fsyn{hwŤ߈m, $翈A2yM)LuD:d/,jy| %+GQ͵Dd_'fwZ\響6_YSe_(VjoX"r6lY N b:BJX_'m[sߡ1=C12kfd\{1J|ҹ]#?1bnQ#G}_YN 1'x=[Æ=@x8O Gd)L$Cߺ;"(Z;Wg# e^ W̨˯g9H?ЖT9I@y"ŊO՞B,l\ }0>?^OBbpnu{D~%G]X ѰX4ۚ9+BSZrW4cTh _J^ 4XpR|荱H:'C\T:eY7" 3!榷7 *B\n?2|Ue®~1]/{m kΉ3g/'MK`c:*fͩ +`ovDbz駬kMDaQk>*u'wEk{jH-; JiTо\$ E"?DJrUHqt화V8^&c9nR6NXTOt"Tgq`pySާ%C;ѻJbhګ@>"Һĸƽ9_jfp?#!kw$=B,8f/geȃ 5 Xd1ҟ(ϭ'm{Jpkٍ{PDP6>] :7`:eR9WJ4A;~G`'X(+W\װ_HBj׫ ޅ\bR`8XN>< N&K K[][MͤɛT3 l)c~V9ŮB <+nmK͝#|UƻzAѵc1-n8JmRrD8N›8fJkLdB9`DU(gy'~3f4|MkF!퀝?e1~ 7 n>l)C I^L!|)fкfIm>k]v Qڬ{|ue}諺:oe$w0s\#,r}(iuV>0\XPNp(-hB/%őy|X4Ab9e^|  bHUkRee=N _BuGJΔK,3 *B0HR D (<04eFj鈚.WXxK=]XsLWwFh$VE qߣ/EuXRվ?cwt F%uCQ^H3 U]@u2W^.q8ںF4s {}: lCqb8ЂzQ7g"siru? p9:VA7}>tw8(ZjXm!<9,vp|]?ٲx£Fg F(=9ھKF#ՋR[X Ը㷚Hj1{ɔ Ѫ|=Tkxk"s]Qiƾ~pJe?~4dtͬ[YNְ菴(gdh:.Le_VLd/sJ&K!jM%ӡxMIYS}IWGP@!&-2] ^\ᔎ$+0#8#53yRap%? ǯ̅/(T uv+DkdFbDarDxDn+d6ُ(md*)&zY&.1("5=i R>VY6rn3Ȕ ߙ0Ʃo4O%l^˳v%PjXf51΢<~/ث [cnI<Ӭː\ҕmg&B`Ki"Sށc:ɩb9zER1D..E7]Ta/dr6o[7NR/`CWYajΰqm^?@74IZ23 */N3yy\p{V|/j BpuJiύ*{{%=.6bi?2b$S 8I*&>5?`xW;4p+nDo)P؝n@M ){!OTq{J# )Clɼ>9pQpNy[ݟNeow)+F{26ؔX3<35h/oA 2BȆ"SY5:AnDj ϸTvfP+`fDg:@@lLB?"ϴ;ѩ7q 5(:f1Le qd_\Ou|P\C`r]FM%9UT{hGfi"n?CZ` +~}@8!m_DKzal)uP<PڡMine V%AkS32&)($%q!*|[ݲ@!ZeԈ^Qesm=5ZExk1%C'EJiGc_pxL&O7(Gnp)!`wUͿ+u 'xff(]t ԞklZ^j0b%KD`P|*,LdOzxzWӨs>t˥c*y"/^nI[.3% )Pλŋn-Farv^e M*-B@I* 1Ŭ'\“I7x iEř/^k˛&iDUG~7YxM Oz>CY4Dne? zF69h.4.m3\`z=@Ĕß Jn_ti{.ߣ<]x@c&d1lÕ)~ j۷{cjG6 pY+ 9E Ea5k/zk?g~}بZG. ˧Tj/m24FI 8piۘgWCG]^˝;>5\N-^Rݯ3a3DJ-XC<ϷKK>JO-rsҗJVU`}~1nBSN5UkOFvXEhy1G{ewۧM@_p yX{EY޼; 8vrw]F4°FXg?-i:p1v;43}^?`:~S sIjT'$5&DZip% q!7b&K]:DCy*'%y8$cbm>'lFT@gxP#aRdLWR`.@g 5ٻ"UӁ57mvhugP&$MJ@t2)\eߧ7 1:)Q߅CөE:u0 K*4`;vc!KƬ#$jw::YuC~@=O [uSĮq5]i/of פj:YNGNEvrOov UA/Ķ%5A'nAcNpp!//y:5 ^,(-Je7NfRX[fňeuQhmee%~yoj& Y6#vpEyd33x>x|ԳVR6 ~9?XSbωmŐM`\ժkUрwyäLeæ5ݚs^NE " u;bQF`;5Io>RKXuSq/tH I:l"FJzdw9&Oژ~|fލrG^cQa A̘ Q`VΫXA kJ@".CnT2X]{ڝ| f/<_jdKB^ 6cPR͂n*ZnSTCs 6R((bliTG޶܉<+_.@HdEiBONov"B؄v{~9* <+Xm܍f:K8NO9{WƹoFy$8E,8[8)0!iߓ1{f)ō#j[+#d脔ZacAh-5$<ytтo}1# = t/FI7dYc1,XU*zGY٦є"׌ɘ~$׮V \n=U!T圹!G٣y̤;9ޠNsmgy_+Y qzGe>儲,I%`Ïx- Ǒb"vCśms{5(GWj'_]):UB.axkYOjU8sO{OK^hM؋4=mzICNM+Im/!{>mN(LU>ƛ>=^cBɳGRI$."c-PCxHl4!;8B:ݠ }T}bFz#{]i0cp9fʷ}Hgi *€/n]ʄǢ}9$.tT*XN󀩃ݻ#Hy ˋ%c7T'cYWƴ=WmƖ4@Wx1CW֠-q _jsx-U&!ϼi?g#h7$7pZ8? bOC9z #.u^U{vDxA;'C'˓ur7@ cynׁQotI:Zt"{Ǡ`1~1"4e8|ݗN'dY. `ʇ0)i9zi=b­\ :jm.WI|2 5@ *^3FϾH:ca{WI(&kUߍğ`jiXg&0y>&ZMs^3$ZUh@(9aJ]2*$eqxcs\vq}'͜|[)mAٻr\岁)xDvOqH/J ͫOR]߾ж&xLl5׽S?G8ˈw0)@\| @=8g\ bދJq"R}?DH]b%%EƵsL洢Z᭍ZOA7 _vzIZ0 AЗ"vq9;Ur-$OX5$HC`Ѯk^!fIi*_f` G0j{c%0n 3W+9iFxْi?g!^rDdC@Sagz>Ld ]hH1 a(|SH+afR~w:xy)q^S ̪ꓨkj14rpBBm jú znSn{5_g]l܊!GU[ivj n C6'USd|Y^2n6ɚ͘~ά+R>ǢLyU1Z`<9p=zX>$ZPnKs)зy=3ԇ#jt8Q̱MdKCF#FYjH/pLnF`s&4̏twwޱ0+nd6ݴb+…q9EM!LmaMhh,b_d}GOQlyɺFmAjNί<*lf`ͣ9ym< }^3z( #;.Iכ ͍jS-ų4 ôb Bf_twM5b )vu#X)4E'Xgn]#kQGڙ"ʃÞ-Նn7+,s2p]N$xeu}z!{pC$,"ցtϻ z[Q&鏘w#1 pOR`6@ˣU 낑Z I;2U0<]e-ºsugAڲ7pioKlȭ&$]m4:y(*h(:[O\>zc.JI›yĽj:S8KlQܪwXthưZ&Iۃ_+VZLkIKG+tᾧ*B&s=zqVIȞhI+Y|3||,4u|߶@RnrTKUӔ8t@WpKU|ͱ|_A3^R ' D.3l[piVLjrq'"T>}Ѐ s+ًG!~Ŀ@feji-'˪3ii1 ?Uc{kzU<..=+ ^^lHoR+W9:gcsD8A0 g߸:bYIo, UYk5#td&Sb܁ѯY7LV%_~8iG̑ز؎bБ|jЖAq)e[ <&?Dka v%7Zf;TeNky}}_my4>ˇGi Q?,<ζ.9OyuH$)R#ι<.8C{ rI4c,Ӫ}iE+ XϏT&`l]FPgƫUuDP)ހ}*zr/\3MOз98S&h) {f66p$` $w/ʖ=a-Ii@&+t}0u:B"b`iHa "?A=砤e)ߕR*lz\ȵ#2g^N+pwepUErggglMn)A#N-gt:Ԇ4a1/͸nO[2bfe?G8*HtـRrxAQdJ#·5Y.ii',RFE_fR'?  2m4db*īhtVv=I.ա8hv# =1+x[\L?.5A: núZp4MwBDHO%X(],ʑ*1J UxC[ ;OM8EyfSa䷪u0CRc|q>$ק UwmC4 Z%C%bHZ ǔM\ J'eD*v"9tR%K ◇Y_T鷣S Q3V%:R;H6hG4B%-Y6dtxĸ71b3|WaDpb `/ed> mr2>t`t:2r)qyj"^ѧYt!zSB+Su0/7̢(O(4J7b VOC: јdR[uJӊ|ti}xyg:\ګϲ3IeᳵD'L*8x & M`i/\ᄲd#2pJ/ Wc%AD{7l׿eگ،ȕnlo#aWe7C)F;9!0 y`JܥӖ۴b+qrzKV@gpcWy4,p&Z{.)>Pe#1R<ggM-}^`KJ M8I`\+ 5@ ?h}t8 BU&q1BWtit']PU'E6jD,M3lbg 3;o$1M֞TwFZL1l ܀ Pg ~#0dݖӗ5V jS3e| 7:zZ&ͳ o' lG8%$x4H R=SĿ] ɒsb)xOT16(Nbvԗ@9#2/x\2QexF+D͒[>y3kR,mfByuj$dcijt[(L6.D2kPiQbB]_>5T)b:u 1\ÓǖA s*[[CÇVI>0?M ^PG^]Av祪@H#OKJ ~QEpSmsbm6+{]IJ4jWbå2,c)t<7a{[a&p˾k?M(cB@MRԑB2q)ժmibO2JfIasYmWt;}JdV~2e7 udkDidR@&mYL/n>_Y;^ *nvr#9I|ws8zRa8z2xQQRhi2Լ.(ҽSe𝫟ѡMft,B-fmW94u$Hĥ%Mb"pG jsF uz8 yFIrC9ю)}ERGxKN׀?ӮV%`_=)Z7yiK:&G6u5N4/W\N9pqmYoIU"9IEry91"'>p$*Nc< ?M|::0#RO4)|g~Q #mYyӜ1&p VJ (D-86!,oڽWS>wLI;u+&mh;O5XE!7)70 jlěTguc⌬=CeZMME'5vmU.Ɩ&-1dz*N_;۩8EuzD\agADIn=/}(܌vvtxRz(TSbcoWtDұU_jU SJ /t6~Eq5jDo L27NcGD]9y#5f}^>yzeg({3glRǛ_z9n1>fѢfS7!#$QYf 'hUqIY`Z3uhs/oV-&I@)QהdHG*8/D97h#Zх[:Q4 ^1"D`ZYqiUGz˦q qTFY9m\4z|)<*|->?|Bj]:$@{!SUPfm~D)ê;3')DXcu-t230Y Fh8p?V)# vgx MwJ-r0yrY|\ d'{'s{qHv  t7˜o]K`;?׻sǿyݷN38A!וW헖<nc6]rw}7K68b“:<` sD)ו%1H/W3T{wnb^.5 |dCBQfف{w4'ۘ~TC+q qOвM@A(?^ $~ –*ay bV$8"zLfFSWz?nX3FK}[)M?u' ee $9̴[] 8n B|I䲭=33 u+g}L;@2rf#wӤk֌ Ҳjavfjb|bcH1Vu`7$\`'~znV}V#kɢ8XD&NSfgRln.|QBB>#>WdG6zgIbu0q}xFiPKC/;AOG0躴$BmN`|VFCD9ZH;O2"\9b MҬT,[kcXXvy<c6-Vwmޞ>J(s4# 1PD~[JyXXf;QPW֟T*y,.nW2c{pོna&L É神3a@Zj2@^dwl6Ol7yjrtp-yhj NOV:'5lXm' QqkfHd\nd]Juәoɼh@l 4˃(gwD5M Di*E'Ja "mtnEGgZ2N〖g9*PӸ`6F=v1.u?0n 3/p)֯)RjbN^Ùy}2c7J IC|[*egoڪR9C@4{9~M~HBزIEn_9V gw(U DwzDTݸ!'1Kbn NWM|]՛u9Ge>D5urEL^'ܠ욶^0-O? ^-?iY'O !0# +ݏݏVlc|~ )sdDCkHxxat;ws#+**YRsNVLj្lj/E48"ZkT. ~+KD{%=Gcފy&dS$|0=F:Uczey+RCSvtĈZSn'?6ڨmGu Y XZ( ?3=1u%/ BcE]B2U,kilc2Z~&:G _&*BF X؎y10[Bg҄u\{2$^Zez(PоyLp]2ADL"`wV Kfcˡ0t.~0(=`{WB+T*R?JDӂ̉ںޥwH_ mlڨMZ:fuD(]vpO،E?r'pTETr S_݈ycf,'&-=ZvroM3*mGJ'ϕM/H,\ RP+~sQ=´4b ?!g0c63y04//2[ sg<\_eI(3pXbT)eQ >, $]%#o&Y~nϐ}(`IgqNJ} |TfjdC}qA"QjCc,Gd;,jMܙo6dV5GKVK{}3do.źd'·,ѻ&[ɡ^ jVvG5w]U4×Jx[2$tT0##n<_,Vhٛ}+2\P 2@Ck隠C~z|w挔_CXp|Nȹa)#xto`UT{6OuG. +[c̔tͣV#<(0;Lg&d fTdX;0% =dAx#nA>?v)U4Z&iP7P˕36M;~&(kb; A>C{{Kih ;/0#s€fj*#^2 ^Iޡgj)uC,B-(W6ssltNB+m`ZO>V`-5K$BkL,Tvedm=kZI!X<5C]F<|O0,t= R*ˆFI(oNhւ5˴_e93 +AnwrVq?=mȱg]=˃~[&m#܌m5~leeA8;/ !%qf)GR*-Yd9pK aeC~F}-ir F+l[:F { %s5h<ba+>Sc2A0/>o5!R}*I4% sYUE0xMMQlj b6'qv6Ł~* ~b87(_V=xƨ)2=2J'\Ec)F;+c*iǼu WCtq yD|!XeY#"~0B/ !~۷;lh\Ιu:G(`lÇN ~KRc6w&t &7Du_]_we5渧Iaٰ8'Uݜg:XxwB%f㲅br!0t[J-AR;;zAroz1X0ʺV^`)quG{*TCF{vڞNmٶ MsmbT޾6N[spS^V?ټUFg5::p4ZWJm0t՜aj)dyo(?'%Xzut>\f|"yGbTDxyV 0\zcېs)&b-iډSU zOkOB?㬱2Fs r\W`PNG{,x[/@vH0 c`ق~bUtKX VG]=ʚR7.I}g2g6ӲXq-&x15HXAɏm {l=>ixiD KV|6[Nutv"@uyUpvf8j?cK#(-Cᱬw b|PFNH403Ei0}2vwMޡP!~`#Z˺ZːPTpWb7~@x! ճp|cCZKo~Yw_G.<nꄥsX;L݂ sDA,a$HeJ[Ԁ/j0'uxp7T3p ;qM ֔AtzQs/1;Ɣf-b4 4qez>KW6@Uzצ$gjGƽs ׻[=.5K(?0I"1%0TM6;#;;J*xQFj*:p,*#B0Rv&|v=ꡞ~D[p֋=\l8 ' ~aDR *lT5s9o$],$PBJJ?3^.`)dxQۜ݌.IeTfu4ZP]G7g&#w4.MG:D/ZD..B _\q|9R7и9&15^WB/[?M~,=+$eh?A& EZ대/w3.lI0dE'OI(S w&̦G0("G1Z৺yVI&cs;=] WO)ufi+6 7ΏMI(Ɍ|1 Abzbc6O\UFZZGB҇4t#&boqxAtM,ho9{x+O3+leЬݙ{!!щb~X{d܅IǪSO !GW ,FcO?֛ŷ>*Dٖ]c)8!9^_x=^MޛdmL @_NZ.0T vo.LJ,וNj IAd(#<[(zs_>HIYjٍ77߬\BPZU¤sc%sj`oTQį?ǽ>&^'ا{q1xq-fأF("ז*?3bs]$10+bS(@vG+>P*G̩f"h@>N Z$@NG;xtWt9$]r1ڴӊS™s #CM/;}9CX'BްK0oj=ZÕ8TLN2[=4DWHt4G[r[I[{P q:ȷ“MR 8M\c|M%Rϔ[#)ȤJ"Z?ʽz #a Z[ci* hև %M61eJu BYtRęēM eX;L]o8E!BXB8bzjeo9 \\e*HDɠw-v4^a=mB:T /ȗV24Q&jhgq#}rHH !/Hf3̍'RǣE! .Ϭsz'1$$ }*Z (= qi`^ۖpn[<1UWԭxݏr+~/'m+RvK~ nÞl4 }ip/Xmml3K ;\%22o576@P7?!a>@A&ZZ?0DqvA5ڿy3oK?G=Co+2o.2[nt=a}4F̰gy*{|tBW2}2{Ǐe[BbfFjgU5:7z9?rHa%X/19H !٦d4Ű?AQڡ`uUS+6V)ZaDI ֣J578->n"}-qs0tbtz.{.ŰB?s!֑ O˜{y!Z{k`;q#@: #˻!ئ5XfX`ѩ6afr4o@9^Jԏ"l*҈{%46A'(ǓmY )+OɃ6;[}B/^S+Q}Mo5br4d(T{rmRCZQ.:3'IǗG) ~Dojcꚗ$bto:%G* r)7 G0d4R?U䝞7LBio2K,W#{/wʫCtt0('u,duJ7 `̋4KuG_c`©5O-X@u+fkeXIJV0h`Ievk>y"G T ngDRK8|>Au3(葄G>BizM .}& 5d0< 2}9MPk9$W9b"qk8 ̏,&Oޛ u6*GU9vG)SMK9;`ib[o)cifmrA/*Pc &L杂_ҬIȲC cޓa:ݗoX+A~0!ם4ӻS[tQ?Tb6/ǵ6#y-kX/N}=qi{vɖgYS!٠Z~fI "UQ'*| #= qյt*yj:۴WcY^x?E|4H[:f1Iw#!|:oJXHaX/ YUAjYFӥ#^w=8ȯ;R߱[ih)>D1 !=`# fv&[T8S\fsaA';wsuQy~)#L =8 l=w|{6hiْ;"ZT%| XZ">>-aWz)5 JWx6>XoLe¶g|z`n(&G$?2У>i<C롥kV=y8pV8+KsB~b,Q"ƙ*Ӑ~M[ƘnZ '4I H܎'x6 iZ2#QD¶f,ջ|&Q+-dE"]QcJdE-%%)r:y ;'qS]n|4S936r߂ʯ~>gi:=l|n鯄3,F$I:u]b-E`Ǜ{OS QD4}gVJrVG?'SO%Bs@.J,V5xVbXf/wR" kU48Cķxj#dkL4Ie[GҌKĝSuq 7sIv](::Ũ)9:G|v!LH26E-vijQP c#|N1z£KsDāecAXu }ghi.ߡDInb Lpz[BϨ?XdWlݗ6k;jhV-m3z~.ۖ5"vܦqMRiU+"ȫ:r֮(GtPh zp(raJo} R}H%?)$z zXMGs2m* {Ig'3H {g$:IđQb )ܗ" e#V\dO91e"I hlXGƲtv@:$qN}-zva`SJّsEWy%L.z3c\߂[v"PpNa\'H2>UGLzy|ݳJl\۠;U_vC[2yH =#! 6`e::YO &UFunWu ֬=l6OSk8<,"ɟU-[oj60sNLmOhּF<>r'^$Q TMP_*JY/u)}v4y=R5ϐޑ= LY@8dz+[-"NU'Tcg2K n$=Ҿ9B2CDbÔ}|56:< ]~xC±e;v[-{_D@~uE@ة"ݼ^b7驦S\z-panK}Wj([ܺރdJ:&2#~ol^apLsM^Fe>NHCr8հhXIDN`iZbՎ;?ln! ߄90&FSU.[:Q;sI v 7^g}J>4{%" !D[]Z@ qO2f !eT5`c!>3Ͳ$+UX"ki-%%Q!c%t`DqK,lC8\0TyJ$(U΢]ꈂ΂׸5(W'%1 N}jBDmbFGeNeT׭<,R: ƔD?`z8&F}:h*KKS\rj(_Zt#h_69;͞OׂHC:ߦҫU0MK=<~7^lAElXhbڃcn׷C Ƒ} #vag:kl^]yS'*ְ}"O<3MMYMƗ]ŇY6@@eu˟`q]nο L^nAʱlk +̔=LxW5P-3I~$m7TTK N.kþZPP<|HD*iD&'_5?Mb^,_Wt"6^,j*s̤m#7<bּϭ3"Ҝddf4d=4J>,,8M7vSN-Z @o,@%"`@P k5upc^z34mp1C9Kԅ4ц+e9P6hNoYΓ *Ѿ8=v~P,oA@s?kK)]\-DQ_fItO%E87r;M9d1AX cOVVhۗ@v3|1 b9䑎5Vd`8[[ „n@ܖP3ECD|dG;\f:-Ro$xH8d3&u⒀L~I0 #Ť2[7_=ج%aJ &>[m@Z'H$"td;3XR`.3qvmi\B6Dy$Q/0ۋJ;ɺt7.{j@!d=1x%㛟"& 1v*b`Gϑ= BhOd@qM7A o6'cƍ+qN f8 ҇``LԼ#1(S涓jUNɃ r:FܾŒJA=) A'9Be 7dj28]g_.뗎  QSCk&Nȋdk?["VtJZAI#O/5nc߻ wjD ~/8LR _FX E/,`_zh\ݦu7mڕ{HJݟQ;ܓ{fڡQ=JA5IP8 _̅_1˒^j"k9boE,'}4ĆVaBQ*f!'K):*&33eQۣ|=㢉v.S[J)s`L,hv\1I 8lVpf.DyMt-c4E$~f޻L==$7f=\2‚`RJ-dΐfXVmqf&+>ܮ)P j&~]9 `_V6ɘ|zW]-D䌑xD 9B:p*B !U Gpu |o،r,Re~Q:HAJ D^VgQ7=D<:)ɕt RVxl¡pcu_VSト}AA͙=5駪O-Qc >'JVY *bIߜ"p4@*Ӡd]]71JL6+=Jm\"7Ol"qXqbd?hpP`5iB?5?K*زE֙˩V )ҷe8~D.Ix'3ߜS|0 啮x^ŮA%O*?t厛Y4FJnA![磭MQ9^'uuU5YqN Zh\'jfu(a)!뾹Kj~#dtșdւ'JhbGBEE+0kMzX2`B~d$&bf)౻"|y49"C+VZAk` Gu SXEPycpnzn~be\bK8H{RSʳ+(L8-b˲LJ|k0<`F%ɑOȥRlTZe+Kel`UO˿AcB->|JBRSd- @RÕQB]Ȩ]s!%jzQyPXk:' мz& lbԄv<yR3=L胉Lyu0: T_Sok45,L0,S4wBKԽ725Mld |RKOQ9eM{K KDo )^oc &ʫ=ҋ`@W9<.=4݊L8[J 'Z19<~;3H:^xg!kuR+ @O6J20Ǘ bRY%@cȍ[HMp}WϦ$b0d.i.դQ2HJtQ6B0-Im#<9j$JdHc4B˝_&l}D0U^RcG x2y~>7"&IoqmƳAv,K΢_ x>F!VTۃd0#TQ!ssq|Cȏ\,݉x]x҆bf+IXs¾#>oa 3i~`]e3Hl:lNFn!cl";@ %VTjOgһu"~ My7`֩Z,s`"S7-ްIe~#]<"P Pr0yR:(vmlaC ' z6`vW_}5ԌWv 1=WAkjdQ\Y:Ld~!!lr+~."NR/}-)n+\2bU)5j+͈_d ǔ{avD2w+4jetŧ4Ѩ[3ׄ3@q\or(.<+_|o^su\+Vtwt#"EҒxpq*V~b@>3KfOu]4 Js혧H A~6=WEb 5R o@Я{^?y;Ԫ߭=3>s_Z(ɒ OO1=SmƜDo5+jI֏z=/:eA' iCդ&mٍڼpeY@39 G ]wݖf6P!6|<$tӱ)xC֨ 2PLl-{la1V?$ u7M.JEO_X*^&igh_uۡ8=DPyǨ wJLsng7Iu[R&]h*bȅ@?٫#.rFD.kH#M7Fk0IϾvGAQ`z#qr`S6iIu@.Op烸Wڠ._RH~)N^vgҌ)osxBD| TJ?kȦDɝF ?0,PČ%8l%~=(\AgĘK6^flXFy3G!PI(X5*j;Lm#vۋ_ z-Jeq*&(b=^1OŢ-Wn/% Zvtg$mE٪r巩cy?踙fóqA'y'%Oqg>.?ȄQ{vq^KRR z[_ѐF8_m14!h2NyNjZz0PͪG8+ݷ% Qڦ:nE׷l*O$p^xanhC GG * 66+j4]]BB/9zp^j_%9}c_L}3I>uf)~oS|P|M: :%֜}auGaXqxg6F}>\p tl4t-ՖAQm ιDdV~U2 t-iUciF(k7H%@-V/a᳡P&Lb=@qVcv鼘^k6E&i<2'0bOUzp/56XNDIqDz5h^IENZ1񣸝(v`Cz6~s/ >jr!*HP1Hc4cU?/ͣZD҄2ZI齰F]a?<޲.UO $y~R؆I > ٤c^+[UrdwG2Ƞ/oTqљXb.hF(zTTW$NkOلVZOSώPelUmdzռK)J{+H<.ٓxG| )uͥ:0sDb / >'K|,5*Pi׵5k{Z˸MS F_hcېy > + 5j1 +G,TxUݞAykUOqV.^vHGh%|+*RP-hgnBMhvyUXˍxq3qnN^x f#qC;8 _W.tߍ!g:^ߪô}gAj*|nhܳ<'Lm=ZQنۆy>%cn^ބkMknD&ƀ1o Jy}#ש$3әf )"_Ipiu1ҟex$ѷ@7֑l:E Rg8 dKq?2j,߫o9GB?Z~yüKm&؆GC3E5Aj}xI`޽臿٦Lv̠@qtmz`U.7 8Lr6maYtMO)G54⧋X.r}}<*u 1bfP-0PwX90Д(g1HdfxC9`ciT)Ih]2g2ء!lnFz9̙'ߩr㉟vB?K@Q+X +9!TݢTKBg=P4ɻ᷿j8|k<qHC p= Wk_n_H; 5̎`ޚOJ8?U+HUn)Tw?LHeͥNfـtHf^RJzxԿy 7 H鳚>J-;w\;#:ikU9i1caR^76Qu ;7^.O?·"Ap\BL_@tA.ٝ pԿ2 |B6k L\T mV•M.'xWߍE5kaќ E9_E`3fڼN|׹uLMt X(37Ɗ\f#⛥h"ZRA&^b6+ǀEQ˛0W8yA]/Uˁ!"5GZOt]{i^T+Rm Zcd6n'Y!6ю=Fѩ=2N-M:gԜDIY;_(#p%R9᫑ZB c\|.MUHbZ҆PxȆa0:ϻ`ܜ%#F`T;ɦ=|=!ĹC25t7" iP0]&^KSk98 J߻b_2^ȾCoF]ʮžd ][9 ՝ĵv) Pκr{=A{z+k,?P,lVօ6? ؑ,:O b. ¦ٹ ^k#5Z`Pc uvXn<ԍyml8Zvz* - A}AZZSiѰ(a5=@6g.=* W{slBg7[B^WR`lMhK]I.#K!-1_,#S9,ʙDM]?;0I1 \Ӷ\g.ɶ{I对Vzϖ;Nψ~/o{oOnO.B0KNK4M`>x@_2}ÝOhhPUP>vMUSF4&s,]E71Y>SޟrHܳA'DU<ؽ7՞j됑ϚQ`(ۜs6 i yR} |$Q>{!4cCbO~^*2h?xZzRIqwԼWQnCGmjp*%SAg7 'l8Ũ^c˾R-uM HMĚ;Ɂ?B\\Ε!h4)K¿A8nGv}ÆRЌ&(Dӗ )hdEq!@tT%߿1^.Tobr&:~_-f"# nn /q~{CBIF PGǟV{:igN`\QX[‘5XT|t 4t1PaGSʏD`#YryKe%~[ bFA[awc"qʈ\ 7rqd4W)T _E, pC[vS]E:"ar b>n!Wul51{ORx >h\\p6]=BaO|U(հ5ЭeDȎJZ!dYC&5#e_r YΞ?L()]+R03%q81O~e?3-DCo;Ǵ9DF(wй8`_$!9>zQ T)wyQ#١2.6ViapLo7n@L "8Q JZoQ$+k4P5avXBͿ-<(4 0#Sߟ =İRN-a>A(W>vvݜn'gz# @ƠZ%D(i .j+ǯ;4*wAⱰ6xpp팙TML:_HV{ ez53|ʫX%Jg{0|v^ d1]=sqN]ao0Y6ʤp FP 8Vǡ㪶lf6V;T~{FR%UV0Pc>۬z|‘78jwk!6JW֋B.^+G&!tղR5avB?ƅ22qnYiXIsW:EaP4=big\K~wU]]UChu}][7: ;19 LJ?pMSVÝ+JN3srw&aa#$ ۨ̉8P K8.M͠[@/DZO|R/bɿW@CW⳨B?G~i$}60C, 1]+>p&EP$IT37rB ާc7'4–̈@viMZ[ _RWt8T9W&yӚi! LjӃf}LYqDHͤB7Bzw1e _7CTp|(9'Q;$Rs2쬳ٚMӱp?}x`A$\yڙeKkX>\e+«Llޢ e#,=A LT FY\4d%ڃQbAC.Ywz9W܆&Hrt7%CD8]mix[#9]wgpm:Be4nnN), r}!)tlK f-2G˧Xwa`.BGRp &:RH._5X".P˔ҌAe$]֑Lb1xdx݌@eUtB+ JCce<$^"2[S^ԬFj#h-ТKr;9+$7h#a᭻UeFp(rEhlr(V.xM"FQTZ ,XC&nc1za1`8_L GU*hfF#cjq&48's$&ZAڸE {dIUEU>):v{ķJ"su+Z I>*To2p M3QNSxl:1 12C^jNvԨxA%JBLR8,ەUʑm- 5Sct{ǿԢY= @yY ustesJ3BCjcjRDϢÖ߹\TVX1Cu Xd `F9 YY ì+gJ22;5^\N} ,) 2W:1'39/#S2Ȁ^ iٲqJ[>W0bQ'm};&!Xąz〻 찟МEk潳\4aәAw20ziȩ+Vp >.]=_]7 g"#w{+:D^BS"aJN˕A;,WEX-eϣNi8ֳE"e>7~~}&ʉp Kޖ92؀b+&7 (ڛbS[иuzJoӄ,T )+@r G7>4 BS .ׅ7b9ՊwԥR[d ŏ8c0}\'m'ەO\GǧIFHd)z(d/Sp#3z` nu7(w(D르dy4Vˊ~NwY_ wcBJF_ %:86U9+ 4xd-r'XNV*sEN{ fv$΂=rabva0X;>h+3JJwd_N>9U̠0!*B2dpWA:tc4HGPBMu"+>@ xͳڗIriiݛ?n+hL@VZMŻ37dzf2>uPwC S @$ }mgX|i63rtD׻A|Vw"Wj 3ԛĒ F3OS.ʄ3\Pƙ5މq6=GEBp͡P>v%zQ5A|?g"4(:)=Ϳ HR-2G\5)$䈈y[e7^R,M{/\Lmʭ ~%c-I T&M5@0rv_I}~(~C|gd")aLiOs837f u˷5h's|O<\E9P|5QkJbsvdFvyV?aHoiڄ0k>Hl#xWo"ACGu0&A?MS9G8PM)]"(PR]~>#'#LkVD`裁"uWj\r !kJv?q c2:42ŮʫꇭlQ݄WjJA UwUƃ@֟^jzVܸinщs̖Q\}K|oѝ'•Eæ'1(7cI57M:B?ZN]az\2∜]wME6poJ虍Uzܮ مA̓}}1܏C 5t7D[&iV:`t%xU}mlSvIEڜCyFᔔFI7-%rKYP'&mZ^D)$Y|H1Ӈ,*WJSsynLRDo`,6iX|L?BSf]]呍XSDah\sȖ_;!طӒ!S]R7<O rs 'ed1V!=jP(љȪ2z#.n#SwV Lz =ժHp0YgX^IM3l,ת߅H6Mv{bq0[I҈c؜mGAr!Ck\c!Z"/=*Y}גGwԺY)b49) nii#tdnE•9V= 6 ޮ֦QYpBuNɻ3xB/zOh!F?B<ԑpp ⎺{3YVmbB!!7"wNPPѕpUDS!`c׼Q) ݝ*Tye;%~[Eo6H$AOi.h%{3Ae"z45CS YbVJ i!oAWX"YaAvYw@@j5!=v)d%jY4Y K3"*,v3"^L3¶㽕6*p bg0h6Gbº|CQ"C2B%"D)jea"oz#uw:[`}*??4IMdO AnBF1*UK#]*$@%}^ƣ{*^[,ϒajzU|t 2i3[7}{gE# PU#vQ5f0v3bŗ unAāP: g;_Ls[_K0LWo>څp wM{zhF1:,RRWXW!tuLOGvBo[a9UAnBmYFG A܅tH[I[񄬭֞n꼌ځn_]_R셓b²EN99V QFU/3o1$4n36K3ysvm]'J&M׳GyU1(oTQf,z&lyS-vlƦ5ҹVm"^|FɚBcw֥-D“S ˱>t@t/"4H3@K'K8+?JB8spuo}_ a7m|SN͏*{"uJ u)\ь wSr1 ZbzDZ047aI`x?E[|"v_VXO=,\]Css2?2͜Z@reA-oȄDc4ÖaBNՉ_w\4JQ}Pz'kϨ3rCO>k!\e5 msL$Lڤ׃luчuutr52҆6=ӵG>u|L[6:%S'F_YZ<*_^ #kxhe ٙ4EA{\y=->k^ [o&~@>tJҔ&]_fP&I:U : Jj@x'|MI8w{pYNcDuH5kx.bbL#`9$}C~#.KfRt4.T=CIUqQQvB,K+#QGD.BLH ud oz@XI;Mf'g NgDgNU}ث,ɃݜͱNiJL 1}g%LV?፝]@T-F0fՁ\!NT-{2M87h@>/ \E;mǗJk Tѡ8{IbTaX'*z"Ii}0*_j(;[>߻oBG1Nnև[O]-Bf!rAm&6J +7cl>22szKԞB=zKc- ӥuG@^ b7R]eYQ5Vkcͺ_GOu-F\Q.%@rvAԁ.   9#FlN9ŷxj4th?6%UH_dqUy-~+̤Ё4Cqтwzӧ t63 wGd""PBos.ǷkSVaMT䨱3%#OˊB/2$9Q(si0Q SasI\5A, |hfiTvfǒR!?Ӄ5Oǎ0# /YS ƳV@x@^ׁcWͦ~+^yQg쓂51&rWئ.w8;H]Wf;(,r2OBi{1hg,/_JJ!#㽂2dfL'Z-ZW9Xuq;sݐ'н2/Ę`6=lgW?rK.R?,@k AEjFk WAS ۆi9mDYjJ\r"L 5njQ\/Jmqls~R<骁R<+/lo0:k%)X;Vtӌ@O$jdn&Qlp8YoZ[̷y٠5YTjZ^9uBz\(kx!>'4lOs-졮-)NQaW)O}ysۧ[d#* KY>yv , ]Oim]> ߵGm~.Ē7m DG8Ӫ8K'E]e,Ê4Y*ߤGzfۃdOeoDH2~c0S.k#7q%:HXщͺ=n7Xثi|(N="nWNDo4\ǯ/TOl˫uJ <NYƌ`4-,h?P' &Ә  v,KGPѝ64 k6QQ?,us'RHjKGrI "`A\5- K#~Qb*g1.7+^Ċ !UW׶tw%$sAϒskp|$u'v#M$8 s]GoN1wv&7}XQLϞ] "f׮ PyEJӯp;eq^0ꛇgHtIe/(+cj8$C}uh웸$T4Hcö5ְ)tDWOzM)B|˞ΈG]3xsht_Ln |#F2>)ۦU[/ rٯl3Q/b#8Ԋ/ǁOB,Z6j,?Zθ; 0k%ND$d\snsvb{;1F46j]eZx84w!xlHug4 -3bo{^Gw(km~Rh_%2Zl*)i{Zt~L֖9< #+Dz0bYߑhWMԲE+U ?0op ٱ> #7y>9RZCo1l#~P;k dUA}A3xJ=)ɿ0B?CPrF6냸rLXmm\lsCٞ Xb2v2v!y伫Ȱ)Q4fM/N݄Zus([9 a < {V]Y'sQ/A;7, šSЕKƦ>p`u*sɠ'D7_lHm#t#@i`B4MĪA:29qpo)w ۴d*O}S|c>A 'aز) J۶;Ɩij5h:Haʖf.RUwJ":ُ݈  0dFT.RNK*@[ ^4PBYuJOQlǎ@ ]?uڡ4 - 4~k^jWa04FA_Vn{}3jcWjD fTO-l=oC*<[Fu< v^ p';&} 4)SFb&Ee08H*P1Rϰd19p[u6mEJ"+' % Į~-1x/P̔Lz ,LEu]ƕb8BlͤWF\;8/$Ønɢ`Z12.?BIZ.t@@en¸CfZJQ~m#@sa=?ﳬKD1 MF*i*1i%o>̕"פU0QG=-se178!s  3N;JH]xC47L-`z쇶ZO?a\qɔo@̭  8.%[-G͛k];;ۮNhVBCy6LSYpd*XM!ּ1o^˳FW2*Dv~"S^H_';[!KT1IF$ru0bty%,n'"؂#6Jx4ɦD-@2 {N@v7**& O gc TIqnAʛΞC)Q[pP3ehAoei'܈b[f_λ]i|dx~)+ܓ;4dҮ>ZAN{o$ًwIki9WO)2ҡ{tǺ~؈D(l983裍UHY /5B/u-*{ȵi1pdiLK?#xФ h4Gep*gKg(gq7,_crсO>9ᝬ+3L`jIvj ɡ()_6'NO ߟlu|_Ef.ZJ YֵYK)ԧ#r2Y&m8@7ҝP!'cMurs ]<*fv;[YKReb+nQR6+bA Tu KݴvYS}+ 9"?5׬i;7o1F7:_? Ye =ARNN iP! Q?yѳG4 D t`U[بq)!fYWaNN@,u2Iߦ. #߅$ т!7ӧ1r 91姭:cW0ɏ۝E8JZp*g]33aݱ @*'*Ϯ֦G/9-ՑtƜu|%^*mM!v.js!@ $.::"_o4 .еI3iìƣK1usHK"x]R' YMfE">]u9,w ^qd}qģ5@8$؁&'[4(QD @IKP*YV-i#n\*NTROB˳}a w+,]1J 耢: Yʠ~~=/*=zm~dP]Zqӕj@k5@^z_z{,~m> ؕGp1+ITFG+NwI0mfHrOT +>ph?# 3FiRIf2Mxz5es. m+ߋ`MR Lqs㶼 cZs'S$沽$**ZXkT&T{lV̇n"-JS*EpZ.9BK+2;!C HkdL5E"":*V .[)s UXMPGrߞVO AxH}mJeujqiE`ΩS>|Uv*TWtQM8b۶1[H"%4ue‚W ph}4㑴=4wqo@ZS:q 0ǽyTh?uAgf2DVUm 9nwX'|)gtMo?1lEF,v{_q1C_-#In,wt׸G7F7 1vY ryghdK`$̴)|| r @9F.Ka,jx';<6L=ҏ0寛InuVsKUU/ðPF,(ˤ{:2k(ͬmhaD*DV=}$ 1OtxH φpda_Ǻ4@̥dtw zY+O]Wug)y#9 e;@PjCg(~.c_Erm>Rpς#x_4͕(/dŵ9*9)֣e.46_ B2pA0<|{1Y,RR%n]DƔFgk@E3ts׺fV5!f} )0{b|`X+d#&5}{P$(!ʇidf\V ~}Მ]WnɒwMX3Y߿_ _AZ`9*{gT W=24%.j1-A(QɎ ,FC39AwiVӭɇ}V o12=3㳠U2Zy]ё[!n;D+=_\tIĻA׼JO8[-(yt nW>A-N2اc Q6V.XI<41Kvz++>gTr9>PVaU1sƬs[ V 0ʕӭK""ü Ad2$T׾7wnA޿٬Ydlan ш2 PVr`A}p0o5$YaǛVߐk+\8ՉNN(V NT0na0Q6|EL]{P{R/G*Jqp{}QoI8aWIne)iäy>pii7yúU 0a 9A9> m7'j"YHymRT.'Of!'~3L#._#=ewi96( pxM(6 B{2! a+]TLtD!&=ȽD*Trzc7 Z2*5`<'fB}C`VNqVQYׂexg,f ö)%/{ %/n.):律 LN Tdz1h8]PD8Q?d^qUE__Ox'r~|GN:Mf5:&A zdMZ{9ڎ&|[S~xy)}x I I0}T, ˿R>۫o-r{0ߢ ^gͧ7(HtChQ<}|lX"QÊ0F+ x},Ɔ v۷X$;Yr::ϦNؐ̔9 I9θYy*n/3$CC5u}qNRW|&b[ ];a*b<]ͥ3=$1?d{9?'2+QX-L@ǐ'0зX|>P)18}ٟꈔy=-8%v(YAؓjuS+>In_^'K<0+n{1[uD9Z2.%r)5*Z^tM+j1*O%,>";}_pk(ϋTY6ۙvsNc; t3([) w0S]t"]4u18Т9I,M~uL0A됅/ۏ6B$]9&%dNkGպHWGF%*q* /H4UYk[>҉{N#9":ֈ?V.^︃a ΉddKXkk&oN3pYQ.U&Aj"E`@-USRo`qӞN[tɇ$`*x)g8;i^>d~-j#-_" O1=5Y'G ~ *^T^lTAk\_E&7}zeūd#v3zҵ|ܺ`Zfb;5 f=?;[PuޑGqA׻7$glk3?f}Nk#^m9Bݯۭ|M08-V$Gf0||Xta"y$:m>|]E𶀞"CїMT Tx8|í/j^f}&)yY>&z/Z hcKL!^?r ^GI1E[j[*Q׷X4d> swnS+Fp?Do*9!\W ? Ó:u RT\׃M釣y)OkP;* M:A( [PN :BeTR8%> / HHs_Ȑڴs2d{}NקõvT"N^p7<x9RFHzOaRʣ<* ;G2y )=6@M_͈0-bȔGGI3p(Jbj6^z+H 4Z;Q1;573k35x)񒤱ZPP -O6 SWy- XEQ-(L"ukNj;Ѷ%' w;qW{i)gMJTG63 sjҚTꉘ6csUsɟ /`]J:Ջ4E^" @!Xb, Q}Y6S~}O6H|j̈́Uj썄ua!kq!MB?WcX]z#ᕝ 2=:M$J˵̬jgjiteNHiuԗiگ*x:[T}p.Sz\SD5仝HYLT1c3:Β87l %z o-f֛;.] PxS11y1!ᣫA(":T%K'N5:F M 7b76b&ͤI#5l_1Dw\hP&Ps4y8DٝHZ)?unvA4!Rlwa#cBvIYw3S=/#+AxuˀdbSu5gz bMH&ƘJzᩧ J7' Ct} oz:5to<*)@|gޙ'UZge i973Bqw$ 5aHs+¤Q18[/[}6sfiTV4i_/?cy[鑅74֮؉N`< %n9"MP~|ҍ^__FY}_3V/&9$M7(}L9!r)oXQdj:|(SCxe1ݰFx]rh(fg>av"_ m"q<-lC}#F,p 9pW"'&$jδ)Ů~ ?LuZ!<^0浝e0rFZlO})NuxA~zʀ_?mسU%a)ǡpi>#}r{- sMB^5R%M6$mٛPIإnlrzt-e#<ۃ%R`qܗq6FliA[#fœqjL8. ȜK%LO@y%:jRBo;"xy 3M 6_:L]eMpϨlf liNΌWRbpj4gFΖP{_ ^h] =L7q5HۓF$+;4d%Ł7E2k?09*J;OAkT޴\\~ Av LѿjPG699e^ȈSJw9Gќ48faPS+:4^]»|i7^2.*O$s0a2n\zZ.h֢]V?V@8d M*љ<6&⪳kt'R3T^/S伍k AN$VA`0[LpBioɐ4r@YZ3OϯpQ' ;|dWlFoΖz{iZ$Hiz,pvB&E||db>vOl. j/ICXDo4sI PJǼm> N.^#l` $k 6`(#jf631/*n{ (9F~XVǃ-;Uǡ..z >zFcf;{rt̃4xUߘ(iSx V*afND 6>mKt喔ۮ Vy#ҰYdÙ6PQƤG4oQL;Rr}]&A~l7sA ?ҩN.~ /fe}9bY2 ڜk8;zq&bA| ?XIT7+MUp$W\2@eTC eͭPѠvxCI9=_ `F H{`m֧ k6&A)pvgmrw0c |1si;U/_T&@` TPVP+ 'NbypPdK6rsK]%ögӫ{ҏlTQ}8/l"̄$R\dR)nF HɿGSIZ`.K vAhh 'Df}ʌ[ cnE/3,Q:I}=l2 S vh^[ޘ`-g )lbz ^P jbфq#ml($q>WRq%N J'2HCl'AkHлcb^) Hi7 ÌI-BvcEyVFו]澴ch|Eʦy^0 ,+۹DzJB^anWgަ5wisS Ä wq7{(ʜ2|ْ5h'E홱2TEQ'I#ݻa;C5#5|h\D e@rBNX(!f>գLJA!鞛Ao:@9.S0TMxϕ*!%zTP LGB3QKC-\FAE d'lf0pyHx|\c?wpDM)O)=a;8jb\`&;CҴ޳~Lj|Zăk-/~ɌA?vuםNs#槡fN"?u$w'fzWd.O(tjM˅ /l&kC+d]Z>i8uSZ|)QX{4V%Fjýr0^H$&_+vQ3k H;`@(e+ 4!݁(uyTb –WPg|!^vWF`Kߠ)#0 Q0va~'@U!aA K1bMG8\h  &!rh׵84.U@vT'~3ٲHUdn,Q:#[؊D)"%yvn!e`3l%;{IρZe1)׾)ԗO_Ҫ]Hѹ9()UVT{[g%X=^ܗkл /xl)GC,ll&b=z09l˭|sϳpYh-K']ГȠvF._c*qhq$p4@%IKZ34Y? )v&rSϜo典(z 1%y$k弞eS>7 x=&sK !YH=2|C|:~&qnUAMr`tuc!)@BdЛʐ%in-B>Xw3kF[MM*n G& {ާ\n}"fE2D5-rvCRJRw6}ߛdHO]![rzS4c7& Jrm;8.bs{sx^6ኾ݆Mt6}i?l!C;7g!|$J;Dx 5-jYKr!Z2t]zO j^%xaة}-&xRiK?%dIΫ^uPte[ޞSq] An,3V~_fK?9lM%w3 KVa_P9&;p=QۂI}_#i 6=Ы~?,2 #o`ЄZV7l,)K2`  [ zUѫ%+&=D|0v6h"PMbH\5qi+b]OLPI6hKf,VƩ8L&KǜVv iw6# W!}5T= ;}ZFrA:0_)ɏYBHqeu*HɽXHˑz\ 9bUiYWp]ZT)6(x8YubS럫a sh L 6sbB8@uaG',= p,c_٫#`̦`q0t ͏=Sƌn3j- ɍ;\mn:nUi#gTwb8_<Fb%NT@H\O$pR|]3L\F#;o7.RqȧΧ!_ dƃN uRaB[H@қM-R@$&2H2OcR!82 ܕ~8_}b ǧVN\#^SK5.ij S[fy pǕF)M͓Ԫe|i-L`zPX}2/DXuȴ)Ԋ:*F2=s]NujIR6d q+ y捯.} Sq4p ʻA;=YR!ZZqyw2KT/h"BY6ZQ]"Jv%@Ia1\-O(է'Wq_bd5R8bZ0W]aSjI}5'x 8٥>PQrJ[ Gaso2{$~:7_isE) g})6T]H0m%]I4Qfus2Gѕd' #-*@o'іy8XO˕@--A塶i3qngK2'T{?g/AGOd#?,2Զ KQ.XSI$,Pb[[׆Z]WXs)YcjKЉN KLݐ:`~A'`[h3N zKSd| `F](9U?겳VŇHα~dtـ ۥRAZQOBu?T)Z5Γx$~PE*+-?4B JpRp~/C\;d./:|4M7JZ%94ݷp0AG30h'\'knra233d >LbQp1{Ic[*׻7f'Z\#t.ҿ 1c*dK-ZEx,oeXۦV3+MzC*5gO d~[b Hpnm۴d*̤׾@VGyaal.2 Ӟؖ۱O!ռH5=@PQ>^liRMlb[_+tY*>b)[H'}kc +(٥jaED(0+p y+쇲eX JƒIX ú @3/ L3:v]D k,{3tClYQԵN?{rEQ7hןe@%eDyxJQ˥31!h5GJʔMfϙ%sAON5~1NpHJW͹jWv9@< E;# тHem7K= rFͧp@'daCjLUVr^Wr߈⎞ܕA" H|@-~N=5Ǻw@!Va:'Si" jզ( =Jl{  |\srX/c@wqiqy]eϔ֮z\ooPP."Oυ,nNJmZElByDwif7M}iڿP*,LJzs<ڭnIdt0Kn)r߅eݺG}'F1]Ҭ FxxLV.EB6UL%F{AdХN%vU`[n)g+u`1OsDz"(1 7]G'WYK 5(ao8ě2972yɤk}LAp3q: VZEq?찈-^n~mA𵙈 |>lr:bPwK~G舦K֨V C7rD_o܂,]<~ZY,WQ>U4Į^W|}TntCq,^~XYJFHnn/?%kEmo7Ϫ (tj yʻe1潓XNdM *aT8~6ePG%t'^QR* }:ְ%rΊќ漖t 6V(6TNe|q-^gcojsa*R&&3`>*,ءn}kB: #uR3&P&ْ/dF!.k 7HyCe@P9u@:qqRzc|c6v<&5 Q׽ysْ`͆^Psa3-40WYl]5V"◐rfZ<=+zkNОEuQR'd7'*gܛZ]sI3vK`'ֆXnDl_-2%l'R-I0yCi# $9ܠ& 6"&h\њKtF4/dӫmAQHAN12km^&}'x{bDge*'s^*rO8SA BY|C:\_fqxO5}ৠ +!2>yzstl>t7HpZ\rsD@,FJJgVDjV4j)*n FU ITȜgL_o!{&LYNGqa!!~#j_('g%9*QDߣGʱT&' %L::%aÂ<}Żm4Q~MFyVS5В;@L+s*TDƌUHt*%߷4 O?+̚n˜w~X;P62fc-m#L/fFY@"_Dtٚ$I kF/ b&| · _PkzWYPhH$v5aoӭ΍R5"[ĿFq8/l7Hz}YaS?lH0 rDSK8 kcxQfNVK z6 ƨOCmd(Ds6 ͛SSo q*)!S|Lv%5kqۦ,X&B|h i.)8v!а|\T^b1+a48"JF g4Z*{e],ۍph}q 08mo뺨݋{} TZMIlR|0enOeR-^E/+g& ) EBHB mhP>Ő;YDC^9p)؀+gH,/,X Ddvz?( s@O~|9K}6\gܹ.rGwFZ5ށ/_:g#'E×٘q rrW̗g B.Ց_C~/Y,m5f:$y#1 0^ yߒQC<Ÿ:\SMѫ]3O*W٠(,8]ZEM\!5:J:tYF53Zd]WM(ȌXs;nwSRP[3jCz)/\iѤԽX;ʪ ~3pO+{5^ tV8xydڒ3 C$ m44ټ\NK!  4S[48WgSKCawiD?<(y9遦%VEI.-i>Q̶Uk(?ZԹu~̓i>&ɂ﬜g4Hv6x|JUs~"# KsOr yQ&. q%$N9 ~u38=,)ykXP`"{!%Lz.4tp0bII:qY&DB7a?%i}דRm:D IuTW$L˲{ndFQSG,ATyh*rMNZ'2w]s-@ nsHrS!=~v} \. _Ni<*)TxXٍKݘ@Sr"&v+GO7|$ Ȓϩ).}!a сwVEŏ!Mj\j:Frr~̌Q3=m* 91Ε뛢ӬhKhL3XBxֱ7Aͫ:Ո8>}h蘺6'쯛FFV!F+1 MH%+Fq_)ЛBa۫QZSBX͡u{-DS=ȲRQ7;@##eID,KSۘHS]A' ">p `b"#ȆAØ ?(!ۏK>K ֧ #zm@d:8]jTka)lZ5V=Ӭ 8(MSlrypJ]gJ"٩ԍM\q7|A3+fW!bǮY`꥓))[oV1αA#^?0sDh{*g 80[yB*oKQ &G2Ca}@N5`5QZi #(qZy-BNvTǞ}lok?jC 3yl I|s_mK>Q6\>oNb \G$ohힺ[ "GtU&Au=e\d6)S]du.D >!JͤffuƦuym\sr{3| ;dVNf&yꐅA yנl쯭l稜FJ\p3k uMK}t$sPqݰQ\m6oO;F&5Je^+DBZX펶O!՛>>R-o:%ȏV4XR/-*wD *_j$&JrzMbvD۹٪E 7JFPH/'&Ξ}6Ļ4:Y{/=e5砥2gz7H!s*4:In@|QDkB,s0-R >[ͧyy^w~qQ0F@xSY|.8l{}a+ְʴsI[Ӕg| s: t=py2qZSQUBD-8'YgM';/S5Ǥע3KW2<'bRdCWcy/4eS_Xp6aNdzHԀ0z],V|M(=Lo&g'A6iȬ H}”vk;´uBo;0O(:_f)Ύ=fĊ~**f.kqT?/iKC#ȻK-eV=DWNlU?2ϢzRi-cP B/S&z:}~J<PLJܸ' tGj2X x vs dUӇXֈk6,B(&#C>ZxR۱쁃+(5)ǚu0<3AoLι[$Hzd;;r˅?+wJp<!`tn2_}R-[JtXi/}TGZ,"CJ W,ś0pSIjy<]`[b ߫'f5,@hǥbgN/V؉G(5hD/jGz3T\VB_o/ڒϭ ̡-pk#sޘؙ1> J؇9vy_-oU&TfiA"a u堥{$7"1FNr= AĔ\} MB? m/:q(?@U<\f?AG)UAʣ,xv: Y!g6<,0n*&U24 eyOg=Uݛb^}z4e 4uשX.62#B`>rW^=f %z!eK qd_0rLbk)q&皾j%8.ʺ>u P%_^I"rdWeqxB8ͳ9gj.[N8w+r.zE!H, ?t-ROȶf|wv;_)f݂-vw@{٠n"|C7r,c6lug ~A/:5w8Wc iSqI -hQ›o-.NKoEX(N[\]&JJsW|HzovDIade@eƄ6kS0j=Bԍk@QI&,lh59h:udlwL&VUX _6UA la7䠍1i>4LaYOm=UAN/w+*#N@K)4c71.nE L,ytQ~%MSVmFmdD5#n#@5Oxl#BY/ gUACm_[ ' R]{ZqmWMCkPyCsJރ?5p?au4PJZLJs,s7pmd1@yꀟp(1HϐKDɅgHv(w.X!"-^GNN#tܢ;oWwr #8 &v_&bI >@S's~ D}9j-D[Me״"<]x,R=LVp2G79Y4\]%F^fкOPe1؃0=0]A@~~i/\NRj &"/zT;).{sNCP`(𧅉s$)G?2H\O嵻@csZ3;6n :Һw,H]Fc!kw?="aU~^1@"с8.С C-{@Sr$-)=XݍXfK=3#5/ ?\a._֔%| R(6* Ϧ4֚:KR (dJU*OM[HA8Ef!;DfENT=`n^.e7-!֧FƊ!$ ·$MO^zݙI˖ XD MlM%#`vb ӭЊε=`-~X{ dJJe䕅DeE@xƛWEB/d@4ؙK]?11 D@Ud5D.}I F)V׺ۑ]}%:UPT7عmW 6b62do̅zWg+PKyO՞+$Ugii&Zfzռېh)A`#rK>XOI>MƑk)(g-s)œ5钚&XCFE)K7G!- ݤ[:_4i k\+)}?,=RO^zQymɾj,B S(hL42K#s#h:kH'ZcY<̴81cH.]RÃ( atpdv #%V'S-iIdh %Q33d,{u.ֽ'`Xc("BH|ۼ py.,t.wnMڡT[1Y"I&c\§D ^d|zpP;$y2$r Pp>tm1'KуRد[yyEqnº7(dJRcDUM?99d c^a/[Mut_ܮ({ ?Ҡgդ w6\cx$q'sBqFQ%N+dBN(aOe+Q E:&` Pfԙj SY[ D ?ߒL՛9iJĉhrGE̎0l H3-^B@s+D+ va.\NO1ĩ@mܣksΔAS)}P' Q3[bVk=Nn rO5(ںMDtە ]De_?`Ri} .*UUDt4m=ˬ> 2T{RM{+dxs{>a1 7틫XZgq{/I>}fg =C' 5XGqSXf%{&}灅y%a[CWWF@2N/0a֏":WցmJA 0!G>2Ad `T^~OU4glYkZGRYUV>!,b3/a0< j9qww 0gGRےq-sG/[y $XgDV᭷ز8j21 KtbRE98;Vc  Q8u΢fw!'AX3B6Fw$t[$Gv&'隅ۢBofyetwS b u1kKC`sc7 #jL*B;FكXVJ.+}/aSD{kܵ%nH?kR23m6go'&'bH<䥲 *|K8Qwxjz4iޚi~Մl)sr’A<{٤pֈ0Vζ+#d(fܴNfm{XܶN&ZuJ8a>w? ˲/~3-CN7}ӽB4= Dj3t{䮒ZJީ+hڑd5>U(X/ G}&`Ɛ3G Qp2+ hp0h✆{=d߫&JeBH܊U7ft1 {'}õ\Ƕ/N\)ۧuHz@;/,i!F&ň u&WEF)sThȂ%X ,\cC9a&^. rηvL,Bp!UCo/ ė>LbCFd yD93ǡA"62f]*Il W!)2C%Ԋާ:@ɷjn.iع: ʫLma8ս$x$MEׄoS)oQUyR_9XZcVHp< $c#->JO~}b>(ߪ{0No n1)| 'P+5o9sy+hyPaMAq{ʰ;J,; %۽dt~kLLc("7=foI/k+@H{M귑Ae!nk)1 HGa> XuovL!O\lr"y ň2AB[G&dB 9оO=|O3; Ä^ZI1ɽޤWoII&EC7 lJUS?G! zz,ГBUxryqjpJ7] /d7^|2qWwlB'ɎtBK2)twq3w'$¬6d*1ep7 +ӟM.74(*C˦6"u` "Yz{{A9XrT]ۑvJ4}ab@;s Fz9s] 5$mK=4#0ypQDG%z1 2A5 ŜYtxǷ--rWq }U$Fu-D/ 1ރ*)݇1wy>ZcQpiFj[j]y9HRKr'VBѬiPԘk@7 q"t6C/JПDϒ~u2y^P"#|*bW\3|ڒ_ a!}{[I'HIuFʼntK~+57yϫ~`͆1 u7v6j6 V\H,re> ;IͪR,8vtյQYF˿YCŸCBѭy"a .7K7IH'ك&, zkMʗA -iN++J lsU: 6K͟a]S,36< ei`vȝ|5I~u6,vKaT sM((yq;$}-l)da^P""n-@lRnC+c{1d- q K!A8``e*Խ8"? T_mG_[ b;Sq!L= U,~^0dVk$Pڮm]  O~d}$I/2^G^avr˜*ģMŽSLnOhCYk2Foq Ϙ~ڢp%Q['˛Ds[!#.fpn>!Or^ zL4o/%o^/@p,2ỵni$-|naEQQK6/4v[4Kx`sIR*Gq/es 0+K8e+/A8mܣ$V#%rb5lV飘*V z9Ԣ-%ޔ[FRѴpѤ2UD"r=\ik0ߧWU3IޥЂ)VnP5:R=~1LE(wZ3kk2L|/AEvchr`ms1K̀Hl)]ಿL3޲}CF &RGW/*?GW71z0aڑ7]:c£ћExz9.y=6vm^g>-ly-`1:٨UW)N_O?d"zQncCvlZzx!y0"y4 ?f(4}E'~ i⸭Sz/\&ZKm B[Zy :aiSz!LC^ag1-6FCwY\nʂk&QCKV)'v7Dx8./1a[=yBb3xJELHVgY& T #ua yfzs)׫, B5mPe.![P0t_0}ɫ"FBt$1fTk# Y;\I$]5uF0嬭QU}(se|o)[ï'xr"{͓54E̳zC?=u o*dq#`뻜OQ\w3#hNxR Qځ8LϜ$PgvVA 'X-bkp>*J-ˌ@}&S|V0 &ۑ $SJ Lo]ė)"> eEWEᎺh:X˦ J|Z?ƈҤ'K>("ĨH7(_KhTIՍ̫YP:#WMs>rSK􀁮Nxv>̢]+>S2%| ]p [Dr+OhD>8om}hQ(c0 og-%f~ü% }*fpG﷕ B"_x/_,hڮ =d!d6ǹ TՇu1$ѮOZ|n+yAh}bo lƠ΂@VTx9e 2k&*7z[dm*mB׏oiT7VyҿΙ>ShAuQH)j^& EoٚilFP+ǑHhgo6I sHX`0 aP߻rFO6 W26C/l[Z tfKR֖p|G?'_~E$6)*@AwyAJ#y)/&W21'rV)Ivxz|厯o6:j9 c`ɯ~G±k:ƩHCeHMNԾ߲hUoszlb}?+MnNj$d{-{ѪnuYH*9I9A(7H2pH1i NBb>cFT,~){6i!ծf;RK&CoV1ѲZۡHޞ']l){^Y F>ٳhP{yw b97W+OU!xO|%b0"E}d[z)!$p?ygFQMqehx Lbi.?>Rϩ?\LDy6V_ߺ`rٶPFdVg@ $퀽I2 &Xߒ;Ȟ,)/1*VIO#PKp@L'~;A{@G6BFy.Dw(+;R@-bʹnQjGÚ'0t 4dh^uqvXѰ go&]j@_CːUL1IyYQ&eG+ZŀbVʘ(ԢR (,PGdI#9׌dx&vlwG!\t0 bs,|kc+I|]^nr+:tOkS\|{XvSComLwW^;emԝEBn%9cv&K7@3 g}㈧8 ݐ#A`呏<3E-k]om+sgFD˽vmTiT[r$U_=;P0rGƒ̜^*NNMNٮU:b_{ΡA]!ו^{BRa)86ꜚ}# l6x}='fZDU\xaw!wAs9:9w./6-V{U_mƟ+peEX=HӶ`?gI~si{-h$NQfbl_P}JeR3!9RL~{O /Z|& ڿ"Kbf0EYL3FӠZ%1 Y*Jp>u7? F5&fxr"#zdH;X*&vxyC3 tn]BݽB/`m_lA(f&$Pt"X7{z==\,taNv[pE$If<)`a&H\ઉ^2ADjMΛ(1`>/4[i9+;Wc|-V~4I-oө)?,#"dX*HeY.@-d/XYvv{0;+eCN̗#cchydZs4at-?b EQouPO,4En|_b>#!9]<+'hҽ 4 !yac;c8/JoSU`u1z_:?zb 7`4 `%^2$y3{:S:<\i}E"%eYb21t 1K@Ҿ7 yقB4,䏀9hI(Mۼ "\*3[NrV FriӪ4/G.8ZR?-Ơȼ'|{3t 2}1=f,Xhx|C}|pvSև> ׉1_X+C- :)h7dEҫ`֗{;$k#1뙍6{ )Cg桰J)XuXveC)KQMx)63Ys*xSNikh!tVI6GOq.-"&pAxenwoH&x$XWl/)ܒ q??IWםbT R]y(Wy8080bĸۏ;=%<φi)/O˗j%\]!WpҌwg#DcU[ߨ@G͗p%nQjfHS&~\XTh|qwh+;x¿tiܢ|?A8X&y#B֩{S'&{vehuiW537Wjƒ *Ιė? lJk0f -{ťX >%\bꟐ"#`up; |FoVTY`.M%`觲R,?Ow/jc1ɮ;;^Ĥ)NPj ֗ٳIZ'j⒭lSNYHx [(NQSYvEy .`߳\o2ʩ6=?gx a(ŗ^c%Pr[ݩv/ESBLs )Ɂd^tHu?x\<( Hl:IxϽfUD*f8iߝ%}LRp9؈R#69IDRT:K|5|6|$PƛCЬMrc|);TYG9 j CN% u@),f)i0 R,aXU>Q}ٯTi@*}>ݕ5>U1i?γp!>:kz;y-m$X PIZ)8&-HҾ1M-GTnb፽1?U%7ܪ~ %0T{6%/:.eC%zy%N ޾*xGGإ ߄߰q鈐̩\C2 *PsjX](B+[+|OeR>(B0x+$8ِK- ;A'%CՐ̖2 f7b;id]\F%p},ʶYeq$~+Mz22.l ^gT@;?s4VVx^U;VihN5b[ ;A".s;x<]lu`vY~WV Dg y,}Híz˧T".mT};va _QD?;%T⠙gr;ͷˁp2QV-僊%*w x0%,ve@$`e\0`T6|ؐؤܶWoԥoSho`%d''EҘcWm"Pi!JU^k Z2>,MΙXtA\Sޡ%Ms"t'SŶ/(K@U}nwEg۷5Ɲa%O$?x~<^9I/ɗ⟸ьY$Dn\ @H/J1ubY7;~DPj'0:;y՗<дhna{mh*\^fA`;϶M)?gh8 K0ojLs{v5i{_קAR0 Mafa{7!B ǘ!Gfu~{QҭnBqYaDL%fݑuqxm gֈӭc_(8@58[f[EwV*^"%ά3\+2M{ lKLVmTODR1!bϝg'M5V!>|ocJiѮ\ʮ.:,$8F<9:瞦7ۢ& tUԨ4uGgj$|׌$P¼3n.iMYfbfHf;ˉ#iaӞ|2rc־P %\wէGDpx'2Y(̗'S1 6]4>su^_Yƚyl=4MW_2:"cⱁW Y$!R*w6g\B(k탹nG:_5dRZ;GÈgڪfCu_Ovv.k9S[Pd@{!Un="-=%4* Z~k <"0樊ԧz2ɨimG(1[vԯ\4{Ԗ1ST5WKjɜ &3eZ ģU ʅC&dkC 1LDZL*S_Q!åY ayVTf»o/d8 r-{;W3O,雕[zWҤ#zo}Zfl譁j;eVPnS.ۺ4C&ˏ0{ۃN";$gl rX/MZ>{*,#դJ63i8*`hjral12+0J•$Ԧ[Dwn|wb,0Nĸe{j/x6.h LQsiĉ\hi@#p+MfFzj*`Έ -ºE7+oꌓ, B=ܘLї6͠;S[ڕu) 3j^$eASR .gxn9/Y;摾Fli%})j}j%E =⌿'myT>x?jT{5aB;\ksF0Pp?B>:uutT T\f2÷ Uzlbf(T?$fَ W= vX{2m~)B5OttDiݍBQ%cR3 &>O{Kfy8,W;_\ 3k"Ow0" RVe 3̦K[7̽Y$k}[p/Oڔl}@ +:\!騝.8 ud9T$YfGu!3LF((z7ul')E0@Fai]x+0 &R@Q dD)dT f?l]'ӈ/U$t'O246^xF\ҕ[U5y{37%[i%m֝Y\cbmn0}zpfL#M6Ioz8=7bog3P_#r@y6>0XDhC[*7ΤG1F9}fMzu Zغ0L+?BCg]MtvEE*nn)paEn×ph> B=r7GpT$u^E>w8`AQfYޜ;Nĵ0YE4ZBLI?{zo}+*XɯADk|ӛP^FQW p>i-cCsDg ֏S\]Csy2VvOEɱ愆q갉VD߽"懃L^D/*2X{3:U' P3E5J*8> ROf hDg_Gx '@| sW9/Ϲ#v\<& /iz͆oe|M`QWeF]ely0VԱ00?grhB^^EEp'4Cvb -)2Yrs_+Txኯd@.W6zjj<8 SSly Sv :_?lc}0-8=t5uutEt=b&Z`bfȁ &ע|c P]ELKEZ:'絎V6-Ahؽz8 ScC6=t͜h>{BdZ=} 3 97S~ޝSݬ0@p;z]8<4灑.8Njۚ匠妌Jf+Le~eM*RͣD0t4^MI{8oUY}25$|AWRF jtH2MO ,[O*tU sq>5&&8'il1*5d-1Iѓ Fj8]C.L#f^ܮ=/^dk$u]M+6]>. MfjZ*xyg3p9h:W/d~;|g\0H"k#@I'Kħ]z,IЫbaG,}ßqWB=3387SpL^|it,]9:OC^"ȣ_FKz"YrہhOqыAOV_C#}7BK2UJnw U@OkL} K(&™lÎ.Ȋy)̊ܭ+wBH4d[X5q Ј(%;j$.q5vǕSt^~!=箯xVbMb SDLDCfVL6$~y4QHTAu&Y ; CU"ayB^f=(,{[| &ds?'I`=/Q{E#R/Â-IID%]HS$K-0E*oF l^Vy*H+p|,4ߡDkJ_y K8G>Pg=qwnʒY"ݒH]L&Z6;eJދ10V"Sx_FGSO3!a0N'vp4・\A%=5^[I#bbEz3g!ztt^֞y&DhVWR5%U}kʄ04 Kèd[B Cхߕ~ )]d Ɨ67sftZ7̊'DȢm(1~jo[+ݸDi=B6b<*gɒiʫVNp{@a݄rp9P"xwb r|>"8? CD_qSWgbm`7f#a#$-XOGw 0|JA XًZGY5y/I?bIzS_\+&R8#|PYB/YI-4Byq8v(k4H_# ̰zԓYꜧpۨ@aH-`&p'SذQ_߸lݸ?UW_ hp%I][0ە ^հrr{ܒ[T8E>%G"DJp0JaֵLƓUvqHԭ1ݡQN釲@7Sd_['&:.Y"ӀԢ+GRҸ<Pс"a\hc&8$ja2%'4rM[q̉nj \RZ3_Q?g$[c4ľ^Y(Ta"q^ƹ(Zt%BlϟqRy%'o>9.q:H6LQ6R[zV?/w54²/2dyS.Έ^m?f)@ mfp2C%-ǂ [_޲-T>)INpz-> +۱I+1խ|e–h !1ě3?"Z[`g1I8 ZlPd{@{k8i-^|:+ KPJ ބ`/ sJu,@8+KJ W #ls͹2bp# YdPhB8z!5P&I1͓&w朂yf_`l^2wxգhwb] Fj l?&. >'-ͨDRB|CDwؕ=tXJ.kВ5) 6TƿsԖ2m_5ݝy|s@8fꈫ-K#5alJ4;~C7^gK<ʪ.N!_mW"vƄHU|#@r:>1p8s 33q98'/ `/CYOӶeo^,6 _ɔL08܅_Pp5@o|QNJst*ڃ }  [ z_BVg$s-(:80W6 *D~n}4$ _þZ!,cYAn$OޥFxZ]gh"5Rn|: Ov`йؒ@i]c轸L m!C+yv3_<`~3:8\2Y5<)Bj{'O*7:&JU舉SU!<;󰱥̌zD}-O)Q3Xp@&[^H7;] )>vN lZ0/?mA7xaOZQZ,yivKۚY'E;u@j-yη!D+͔Z[I$x:ju3_G5rd ( PcQ >_*9 OcQRڷ☜ȑdxh6\fm@/;r« ͜ݪ5QT{tg8!Š7  .Ų Q F[6+Z~;off!-JN=.Gy|aP:SgA^rڝʱ-{3, QEAX'ib'mB;~psL :gt|pAoil&[_ QMe9-j>zaER0eOҙ X8og|;Ǖ*pL洹 ft=g=`,9K"Zһ~\$6~R`k6Wæ 8J \Z?%K8 d P,: XK5{)L VDTHޕ<9ՙ*'SƧ8dč 5A%^Qv@ޙE&qNGS^#xM[E)`;nYAsĖ C@47P̃{^Qu^ue_OjXG2z[ w["SKnJEsEK (rucO`Ab" ܨ2?=T`RY|m X8M2* *0sЊ92xFrۛ5B y{ֆe1=)w(F}ԣٳ89Zt^w,x)7q\LjsKJ],k]6dwQuyʞ sXCVd} C'#!&eGaǩ' +kC4ھ6x;qA$L yLf[,4fgSœ[^qͪ$*Gb1BBw0^qΩk~GW^l\1SZb". Q<s9ǁg\z0֫ cӺ R C[,2 nwjg0T;C˳]v{캲Bʚ4̋u=-oSScϣow;QR;31wlMׇfaz$B#JS)v)X۷Y B&O`dh%H(Bؖ/lqhBuBQQB]8_ j'5|{+C)>_kpvaPFLn<" CtHFׁ4,XbQÇiw+Z/szbEb>G.?WƖr]6qĹ_( p\YOdQ^T9GՋT~ B>) EDN_8_WR߱;nyF8f8t9 zfY \Ci#ż!DqksY< M <Inf}S4)Dy{.KJ,s/,.SCIJJj&8fivPX&z+T.~lG(LpquQ!,'z7(2DqIFg u>5R"3i4TYDU![.r.)qԅ~![lL2#Ev|×y-=MDGG`˺# {_6D#]c p8`] |gc7*e0ӡ%JM=Y &! -WM>ՒSV;f,UEBNb#Wv H˦SEf@/pv (Б>xWY8ט;+ _dA\Y:; OKAh/g0E ɦVwԏr[kw24lN=m0K.SPZ?Yވ[P0Ү> ڹiJPXOd/Tr$lϟ~j'\Hã`.ƌA>ҩ{ DFbmh<=DZpd+%z jxҾ~,!nɠx$w[Ԧq69fcdlu^NME*J7f?Qa?fkiuyP!~^SA@Җt|ylL8-o>x5IuV%M) )\ȳnE{ֳ3w'c|)R:w5ZˀEJI4rO lM!ơ1}.Mb!9I'Dq(Efq03\=S6."98(g~yW-l_3@/Ԡ[fѵa$q t |c80g FNU$S[ҟd!ȟI)?UE?c5S>_Cd YhG!Yu3@}#d%}V5ߜW?Tj B1ؽStL^o:^_c}?ɦ bTNt-qΤ@[.LΆPN@ Vfl׵# x~='mJp3n:qɞq(c**w6iXO`c" Ttqsyfu[Т12@KУw ]:6k޿Gط~UAXK)-CO`Ə{2(Yc Nؚ`VU ֶ73[8QvF"DObx+eWCx[xwZ"{[I#Yci 4FtJHݠm橒<$-^v*B5s Ndc5Z"ŮnGwZֶ:c"4/ l{e!͹*AUWGYH(TQ);5Pibh7Í|σIX,.1 f'nĆM~0/},3݃a`nMErOqgMfG|tBT! ?U=b%wk|RTu]%qw>?PҶJ@5\6wsBs9|YqL}q~8#82fXؓ۹JVmnIF[}G=q 5vViMV({}>u"f˓ G-/[)qiH '}Oyo(XG PeU;8b/֏CN8nq020V{i)CZT jq΍qmS4t)V Efil^ &F Vo63֑}ܧ7m+wls"njou^M%`1φ󍐺J2a3!C19VY0:%EcY9Ұ k _|ֈۈ}pןV@T nH\Eޔjȟ;" <~GJ)#*ʥs TMHGdl3Po;"w( f5yo7|XCq chEJCu_T}p3//랐UO;բ,+&3[Ga)8B|[pF8@QK7`yc[X5V-y"u?+ݍ ͉<ޓ@.m|$[16vXG<8!kqt,0(ɻIk5~[U]%< #|`[#\`UzET&@'xZ'Z]V9cV*(]*,M%i[TLZeS9kww >rחUb#wN#yhU}4gρӮ\cٺ06U<Rtu(SuJI vIǞtoƷN#d7Da FX i5ŋ,6v4/(vQk9)ó5;:#zmPX׼!Z{wv QS󤊗5iK 9`{rl1A1U )r&￯iXSnIbNO!zݸao x[;#NFe5n_zv=o_IoaBr:]ݿ֊ya Rڡ!s̢Tk]$^_~1z5pUޡf9Qj],uYؐ:9.o '4'qLz{R9FFQ#s ǥ^ܸaTFY5$h8 Cdx)8λ4#RŸ+][?2KAܒߋ6bcO^]>)޾Qu* WL JWCС@ƬȂK W{U ҈ܧTS^ZIC7pº]nr2#tcyT&* q3,p]mdng[Mݞ,gSqaki5BPEjQO;j|eB Γ3KY89i2c鍫ga'aNvz`gY:[ ؙݎJ-(Xj9h{QE#>}@[}p!5[64 O5tf ګ} ݫ"OLY:p 6o ^1 >s2][Dg2u髬ClJcUcAz.8X+<8IT=(ܜNy]F*htFT'R/4vo:bK7֥\ƾ5#+멗}]X\A"X<+"op~UE.t%(7 U9o$6)XaG8?K3Ϗؙ,NԑYG 5dHmQ@!n4kT`of5@NlS2)Yw\Ɵ`"mS7 Iw ^ } =j3sq>6̪FȣRY&E#áIk~w <{͚ԪD%@е>vC]=*֚h]oӳD1/?MƟC0iy+Anu@Y0 cö%aԸb dxK q((T \:]q6nNdKOS>nOhmQ#j.ճLFHwQ>W5\I^,c~$D47{$AH@#j-g<}#$@, X^©Fi^<3l5ey";T[6h @1H /V)hmJ;oT_+]uP%$nr(ۀ<:҆}F[Os#.4IeBTˢL d{O'Ѱ3cD4nQ͒]qOڟd@a?V^mLÚ%,JpOELakM9!N* C=ҡq6wb7S(jxEȈΡt12Kgox瓂dʌ<GɊIM^ݪ;(y\/;IȺ96΂Zygԫ4S;bwR, THĠ+QQ6KуFHV_5~L◀<2(T앦dŤ5blwL+~x~I|VtY>F=5,++y ձBG@qVkm&R螆͈7^cκmH}MR\sfl:^" A^3IE z!?w 81}"'~ae8 ELclDMx%4C:{15/8?Wgԝ;罩#: e.L=;7Op^) Glٰ Թ}x&Pl/v4Zedou1c3^~< Lu  d[:ξ?T3|+W`ӻ#C_uv@/ʤ!z>%OEχgD]-E'Z!6Srjmy]k Ye<6no+ CS h}h6i8[J͡qĩ0Tn ̓sۧM..JIMj~6Hfׂ[هWQKa=ټ 31S>ԫA!M:1o76.7uyϒ8Ye*b̃ψU|e6>Џq`3{_d*D,kE1oE LЉtMs}MCbY)7XK(|#] "im~Q g%R,סƀkmOBGKuMIKwѩ%w\R?My,fb\Hk,1i O}ҭ(x 4$N,x5mr=vlI6b| MEaz!`[ҢmMjueЙUG}ؐOw9M&ws#!zD )x9i¹)š]-Ef ɏn $6iTՍ! h r; Q`se!&Xگ0!_o2(a!ӖНw{+,SD#^K-~*}XგYC:S>{Íc];.@A~@K'NԻF= Irq>1(kUxh_%> roA ݏcJ}@8,61)Xy^]]ݪr8̲*`+Ջ œ[E26zH@)WA&3yG(k'|8ey"F샐ܽ봼aN7K()(Um2#͈#a#q !5G5%~:^ˑUݝ4#.pK1 ߰㈀4ǐ2&Ijpd;>O؜UᐍLbH"`d0"lDG!1p _WsriOl4,>/ԲO *^mg gP<q}WaR?0d5! 2œY B$dyuIl!%(zGSYr$q@()H;jq^4c"ffTNI~L `#ut,~A|KGyȤ|FXԏ[7ϸ$͈}4 K-+Qr$e@MQ#&gFBzC{P2Vϰ+'> )){#̮*6Ɩ-Vc`c~9Y. K1Z l:ޤQNt])*#ͽg}7Sjbh`OOt&=̧pZ\u$)M t,8kX9A\r y6M+mlD6},<1U]kl_8k댤෗+ ge +uz˩ɶ~>Ѹ@8&f0Do^܌Z]<kk4K/Θurq[3gb7A"Psc)e(4a9KJ |{o|;jMƣofZIU5+ӇrY능:\߮-h:@$ճP1lЩ5$Ys㏕۞)E0S7N벅 `%G]fdQ*uojBRX+>Edټ-/E:h>K'n:DDŌ^Fw ;^W0r[Q-""SRW)8)qmHi;5$F1k'Ķ #Ռ~@@w'^Gv5oon$ʡd?ӾɐHu8yv`wqj`5!ظ[-S K aTl"1Ǔ?DHoi:u/&b}N.> N6dE ,Rw6,R!.۪u:ƪJpum̃ 5_8=Ye#|AFHB<7fuzz]n7q̕Pť#%ֺPKIHAW$Vaboqc!L8%<5Uͯ+KUךiib\#ڳQM٫Yt2FO1{q*(|O}pBOt[gЕ 4˩8?RSǫo.8?otqgrj,;qa2w'4IO8Π76/FZ\%>X&%>x4azO3؍vP@v'6v4{5IP1\uߦύHgn'60e\ej.P=MAX\Ζnao0"e-]H,N%w xerD2W}Quw|kCf'3\6_)2Et A!).#5GsXeAe<|olR G!ڣv|aGM1[-*)Fb[xA%[uRQcHu7[V*zFMgJPY'iMa3`a%=a7cd }j=X )վd>bXhYbR?@ ugAk8mΐ3綵ZOi |ق_@d-Mڋlj)PM@X#STeJA  9(T@ԋb;!qitS ,N).b`:؏OpsM*#ʅIf|F@ufL3] *$ ch#an g_Be>xe&IcU'+M0,g?.jy|8\Tc,؅}1M$ܧYńnTʓ$r&hC>ٵŰ~{xXy6{:q3swnepMc0 '?pUsd#g Xͻ5&p ?+R}3Xb76"hִ!+fr9`We/UGYw<{T;77'!9aUb@l'6No6WF6\!oަ|bfֲ)Cm4qơ/ѓVh\p{?o#.9(&2PyżMUHL&qnٰrl-yݯ2vb؛. xĔ!5v'=C~BiSK4P4M, U:r2n3TE/au>p [2 7sŧxKt_+ Fdhu.ݲ,IfaR'Hjjqkؔao|r8r;B\յ]! i[ S゜x>q pc$l urxU s7KvœcfJlݻc-=kvcS<I̞9y 7-t]H(iIkU~T,>.,~&(fn;Mryơ =||ZL44n$.Aa$dbc"VP8P06,՚8DA8Ot&r[('B&WzOl,8qPCHcc**MU#ӭlןR!MbR(i,'_C(㝭*D:UNv(Z_:2D{m4Cz7o%r?xFü\Ub zn^cR4^<ylкد,jQ؁N6ђ4 Ys וI}T䎩笈 jn_?`"T OϚ:uMp,VuCOno:nBjӶPMY>{(/SYl6Lnsn}26p|I{-|7mYuR NGG[LfKI.MO"E&owÍ~X1A6u@t倝ԃQӆLE)SׯUd70 /*8&.-9CȜjjw-„ë#5wv 0ةr>[ou|s ?27͛]^'4.L¾aH&ev+T9/9ǧJ=鄃^0z}lc0B]\(*Gϰ*eYssz V-bvIw<u$@->}.sgէuw*oP]%*xF=IBr>VX~84})˿7uwIL&8 *$gpjU~nn}sY#Z06Ոs:00+m@^8F<ӛI<7 p ,^mp@ɃP_s >mc#fzߘ>I,3v}ùQ%Fay[lf#2fPƖ6ERL6Y"Ha{wʻ6P0/ <-ǙT÷szu45FŇWцӤ2-j)'O{'5E<Yǭm#uscN ~߁R5GR;#ZhO2f'gZʮ[{TWjλ#أؗ${%~t`gBMjd)Y+z1I0#q{([X&vJr$ XZ/6nF˕aQG '^uP&prJ [{zo՛4Ik0a`MRM$r/3_A~DILvq&^{o 1kZB|jNlyq،bуK{ceX *&s$Uy7 <P-LJⓇ[cuN ի,F}tr|=D8brơH$`Qo_ɢ0 Nפ>ZRÔ9IWQ_ nUa1qt jTdIM\_uSA|HU <ŝ9!bo“vn6m%}Vlz]- 8+*>MmNzWGsٔ4 YztזAD/>&բa7V#w8Sv`{K\#>dj")\9qÅZJZٴvAb2 4.]RNDMlinPM5Zڗ[ɟvAkG t ]'T!m1)[LRzggow88~]e?'twek /]@ &R t3 la̠Jix;k3)ת h,8wx77Tرe y*3hO?Ѱ"]J["2*ȫKD^/=@e)8:SNJN oLH=ޏ@!Sxv!Lymap4qHJھXήϿnΈYqȔͩfO_~9ïXqMְZ5]Ni`->URUhVl)T0 awXZyP䃏9]RNCO.B0ʟP']tҧiXPܖjЭk;/68Xsp` K$.BVr~tI"%HGt:eԾbRhQr`KI3B2NG>ۄvlb%gvH{Z|WϪ|{?Ƅ8DcZ >bgDLBO$ K4aU~aр\3.f3w±Fhfi%ɍZ[,tSY[ay:ZXX& ;[S+{j^Zփp*5:Wx& e;Ƿ?]"_ǣAyIRD^˼v'&adoY Y\].y[{# ɚ|lcL.K $m{XQI)4eTyp͑tLkJp5h 2όIIG.Q;@?I74uZWZh%E)awq us PUEĬ0ffЉy T=ᄂw52ߧ\UȂz'>g8:AvG<-ŽxƵ Cs V+̐ę¨dRֻ9?o;I˲Cm S7򽑡am f ޕVJ7eIXU0t@)%`'|5s)勊DQUK#S^agD3)eͧ/u*۠WSp,y"G;sL-WM؇WJf"յ R#ffiӕ[46qrG^ Փ5G[wqN<}OO.C "q޷v77sfc:|}apO"Ze~ t 8^J50c^uzPˇGtICknT/9k",/#<8r= ,U=M u@ԹO,yaDQ7 _E]M ]M#wbVg@î.SE56&DŽ+3)j+R?.Vw"Wm dK-!g9A+EX΄>GpAu8iu]9d 6rP0uwYeܡRРs1CRx`Dt)ڼ˅hSc9[;LIhZK_PzYW]A#$uEl7*bxr4~yFY4ci۵)*Mp8@oZ6ۏV[iƜML$KnU,r{øZB£ɷ.S㖪v^s>Q0+sx!Tn.< krztDWYhr/ tmw.?&9Y@Ьػ6%k H[.2 e2t, :m]}ETϡ`#Z$: YWƊA P^`;vԬl%Cک@LX8?HZ g-ڼH<}u+0!/;X_5FFEP{V8QT]ށNe~ȱH+6 kVfSA?:P1\FX f"{|ܡyQ8`} /2+U"ך-"k̎߳v%֣ Ȩ%ԼT؍җ0pDRFeIJQl:]4 d~VL_jNQכ,E~3&fmjدFRk U))NPK=* bS/w|<ʢqU6̐L%:TPqZ?;' UpJߋd-kȫfOS)!}Vi Q}rۭSiWu&L5"[X{sbț"g >@a ':A,pD-ktAUpo9i"~?'f,`zeͦq|G֜ՏVkXEr! BB2)8X _Iw5&o7\P8`Ga$^CA<7)(Q_iѾtrW?YaF |GnyˈǽWU˛E.=F& s=>#p;<z'uqWwExby9TOo&ʛ5N"dΨj8$PiUu+%R9|JUbgw 61DUD'\zki@I|y!kGJ[]K(\ 6YX6Y ˫$B8FVs΁ X!{nOiF >|IAQ3FIO  yy~' i5S1|VԞljKL!ɺ[#f$s3grI 6n;M{[]_Bw~MtAۄX5U[_n$o!_MԤ͘,;1$CX{<5zߏ !8^LH[z e>$=D׎Q?,dp0a>gQ#G˅h>*`p}R?H5!~F%9lΪ٫of{-T%`0(J tpa ;HqRӳ} 7((EjS*2a}! ͽUՐ*L<GplՑAqA+*[{lbA7̊fLmp- ?L(s֔Kdnshv[o! WR12nV_@>}W`9A޶=o~BrbCǣNp 2PwP8tYlA"@)|o׫?q` ѩ.WZ6ͫ9+_2=#((!U2ܘHB?pV]S|4 j4M;6h[OWhE@K:VOJ "ɿqV]i{GGq.S߰⿷Ee/^ mRՂ\LUw_qz1NfZ.E$9td̚aS#,TD1v1˩蛺sdhxb/e~ƠGbCk--"m=yo-6iU7 Yď9?; 3tXOƉ2{@ݺ?PTDњ=*Y&v&v0n(Iݸ/+>^mjLؾFьQC#k,)}O((wI߿:r K9? ϞIPpG+ B]?rs䄑<Q{`U/t8km/y/~rs(ŵr0) 's"GXO!ڻGhrt!k&u4|h^Kz#Dz'1){z7(UdX#\Ry,~:jAm74YU@ u5.l\QCvS?a7F[XZַ}նHvإM90j}I C8=%X^6m}޿Κ-54MiTJPWG\|s07AcՓ! Nh{ "ニ,D|ߙj-I ` =EƚjЕ;VnN-<ڤC,۶ʭV-SM1q9pv_ߓu.HqT{ 9=%(t\7.BД`׋oJJՕÊ`̚UqeR48@0tv"bW!\[0 oF,o2{{.BLp_' [}ƫzɫHL31:`iC oYпTo@/m54d{܁ %_H1*qߴ/,#c~mròSuEF gv]~e>b4ҎS)䛱Ԗ`w,\ Gr"30raf.Nz^24V 5²9OO}^:&h !LJsLE1zLv6Ǯp@G wN9^R_y2UyF[$=fˆlVr> 㩫э^&]sZj$kX$8bMxU S /cy)Oh`ŌV]eN͟{N'm­|*YuKb[uP_;[vSV8λ8\x$$2L)|ޟ>0Ф] ]ůpMD.ս1]jyV9jb05 4[`#\>lJG$E9P44,/p}MvKzOtbtf₊&j_M0ǝA$ty8#i ;iYD k-y)6ڈ^8_vl oٌi#_S9|reNYWHV EqF48d:@shk}ɺĵ557,n} O“e_oMwN\ [~eDd{W_A򸵔*ze;tv.XmQdNdp(]I@ ,9|ްSal$G^qOnYN,ORٟ:߾+o R/ ýp[¦o;)֔lt.^/Fw*2j=tl!6,TMћFd)h]iNU;w9ÔCLIcVw vT U@o9oFJSPI*.pMwj\IPϺ᳭Kro;;j6L18+X)ϊk? jgՑLJ$@Quh5^Dpr6SOdr2vV5Jㆻ~t^x` [3o.EIH-ak0$r)C۱3;o n؏"uGј2_U&󜬓+eU'+-~iH{"ЧW)`&?*!Orʊ- ׮r³@Th@=ΟұGN9ًH!l=3nr,f3fP3r5T]RN5Ag4*L"nL*}x+|[zSz@ܕEvhzCbᑑ%Iءk,"sm}`&^J;[gh}4z$C:<&u*^5P*c[.PK5/U!bTǝG}qMPioB&]Y; ?1mn~;߷n(x9E^BXsprH+^ /؇hҼ gbYcr8)vi7'|(>W 1!A.6"% N3ύߙ$RoM4Ɂd-_AL||m4ȴ5= ?g*J'vSq /8:iIA*jrmtk|&4tvC H4&0Qv[ڞE=>_\I4cAn٣oAMPtQXܾĪl'l1Ƥ8s3[!^) G䉾a1% j,`< WV&~T1 +DPe/ {V [^hOڛ|XۥkmfoFbπoBs!g4<򻛂0L*Ӣ #>xʻ,<̢#)=þ M6z5RvϢZ+ QaU\$r\2oe_:+joY bS@N&&b;R*Ts Zp #/Jlh›"0vtll¨3/ 7@Q:)օjlCχeh4wvuSӷ2=2!!dю`Kq։KoުOSTP0|= i#B&2E$jzc:?#e-Ҡ7b͚oTT}pEPȽJECEeAjpB~*WK Rpv.7{hE|Y @ B3̲C>^ho!@R,tKѶiEJS(Su=Xihhs*`tr\(c h}ɝ r!2r8T]4 5mARu k>h`Oc*l.a#n<mxqOD२ C|I)wr좁dЀU0~HL|2dc+N1:oU鶥O[_nN8w˜[{r2V+wy6b.ãڀM4)c1}j"$ yka*ĶpI؂<톶ϹkGWuܗf |ah[,y|-/Jҿo`~Drبjuec7-i"ɠ6vTSĠ )u0A.geި ( |eb&ZH4R$I8^w/m1WmBK bs_, 9Cfi%,Z; qi.ƞ 2 |5E:+^@lcrPq_0}J$7t6BxҹO FRׁzB4XboESGÎ[ܡpX2TrhkX<>U[i{qmLC̗][Aͫ/xڸ+6`ln Kyѵ7aY-cflhzzrB~3ir9q( qZ~y:qV4cx v'׺j6m0QX4!3z$$:N%2t"+؟6ݐ }5e02Mh z3e_`%wV%a1;Ha'Nh𡒬,g𗥇9FxzٜjS2A4GSÚ~M5W9 )Ŷ|f^=-q~LZj_BDKl^ ^*&y;લ.oe; Jt&QN)5S }5g`>d^8 _6UULqTGc2ovDUC~ۼv `Ƚ.tC 8%3C* )cBtY:"DL(] uttFr{}w m%uU/YGB( +П&;Htt2D`V*Dm^d چy`ܕS5rlfvѫ.~C{1zqkw7uDWML빹 .#܊% }ĝK:m0Or1<']cDR͘AlgZA= 5<о&/ng7θUSm=S,&K4jV;Zw,s\)G0(q%VҫY$ Zl9[?: O Z_">Qæݺ%mbjoJE>Yo]2C3U.Ӡ+R]7h o0$=N:}EGGf:G*<0j wM9lo)fa^U+m4Z tpt>ݖ,m)7oTWH ĸ109`IXRhscKrUF)kGѴ%>(Tfv=1lkucaAjf{uAѿ`ղO{؏MEBP/`\Q#1ZR4G>EiTVhZdt y<\$yѢpw8%$$3|l%m r"i"5&,g=raϘV>tx|gM ǏEcoHT{" }+ "HwKT8o}Ant>cg GV>< +=j.yȢG'$n5۾%͞НHaM#T?ٳ%yt sT!` b;lZ5XWc&42wXS91h~2>/yбƔ<*`8i oɩC:hSǭ^$(hV t5n9xyCMb8ڢKb^;cqsy/O@˝sQ& ^ }9ji^}IuA8U}pCP͒[QRE| `z@}ş>Wp^\/5^GkSBF4HX:XN٬m&6c^Ɔ.m.{r jk&Qi&On0f7D=g[Qk.6x]+ ^ߪf?1 bs?ǿO)XQ)E,‡a|q\P&^z ه R*SjLÃ\p2.I29sE/~g5J.Tˉ%o7|H幍*Y߸.++Y*༻q3d ҷIc)(7ʱ5 ħMx=38(4dBq-,yl{Xa Hٟ1ݗ !t# 6%WxzC~g3 Fٚ,otgY!FaV]AH`Og%$/}0ń` n3q" P!-i0Z~9lrgx;;gKS/(8m\RÝA!&U" /а\]bi  .HeD\Z.bW952(vq[è;<-||؁9>FP=K/Q@OٝYzim)<]2ZH~#kb0Ui4Bm+s='I~U*&tbIżbb`,v<">sKs!AF^r˹[*s0'grvmZ+u p]g0Y@ Trc3[y+0"@Nd~Lbe~ FdQw!wP%?ޔsaiqdQ6JC Rb YmȉB",P~@2 $@9`6$ 5>:Y5]GZ}d'U%@ËԲ<ܳ3U$Ynxۙ[m;qdXD\ٛ XYY:L2JB#L=u^hJmfm_ۺ-˩Rm+lJ|'2 sgB4'A`0Fǟm!OQehc/$eIߑVX" f1ƭ7])ԝ?kw8[>"))M;s,wa<滁l4(RMQxS>16WyisFfPP<}k8ckzh*sPk@xW%V°[\(P_^[i[DUw^If\C`!*s0yFD%$9*h@ڷ ~]VaQ Fi7<+R'{Ѩ`T9>$2I>N?=lrvi{$P׉`'g\94Fm`U^dqgmb4y #4NT*.miTϟMC y4)kZHWpH4[ݕ#NG'S@=iB+!59_7NRs(-HBأeA$&N~i5Ֆ $b~ z%C =c{\zN-^IGUdg:v И+F]YEL(=o}eS#7?&ٖpBJmQ"chtqFU/@x Gn`:H/eg.OLM)+ϨPj$)7~.'Ь( z`ِLz?_naT6Z{$x2 _Eh1'W={ӳXgU)3p2[ѣ_L%P EuS6CΛ{"#oVZsƦ30W`f/luXA~j@a- T5}ː7:qڛPV2#YCs•U l1HB/|@8{DSkk?\T4~hYݬOFK#y98M-5$bp@ kͪ*EsѪY&D諷tIA#Rr=UzN3TY1_cxPˆ$hӧAk^hRzx0CcV;ߊ,U'A#rC]׎zcCoUg䜷  o#bˣR} Guwc !S7PP_8@aEFD4P=5{p &6c|Uy 4ْpS ?`.s1E1=],;Veӎ=\B@lYuٯJrX *~ !S&$װ)HbQx;{>j$rQz·enм cs>Ru>% h4J )2<]yItVvJ{bJ/F RA2纣!|!mcw;W]5qyRLQۅm+!ra  s|Rfuw~7:( Yn6qH8RJLrŸ  ̫[K(4 \GRY t%{ 1]/8ߨnif:p7Y~l7s(ȝE+ B]|$Pn*(mReGoT$gqkOn,?\qy>!*zu$w'< gkRe1kmb I3r/(3@ݸсɛRM,\ǔ .$Ӡ$_|jUn PLb3rRJ(^Y SΞg g943G:O{E(Sk!jK߬< I59h=yx) {6H;N[4"؏P36$K-S/CB -A)u2y'eӲyoQCM(cѡc}M>o㳓'$$(p8X ?2vl~[+#¾x3l&4DOlJe^6ρ.!;Y\)(ؿu<je 80:RƳ孃@l_ !xGPg !IfaR#;YM;xLVgo=bh#ǓYY D&zw9T碿ף=0Uf-_fj..2>HZ4d(-Um_T‡y""H&HщqioC&>EKSъ歋&.×mm%,ZfzJWx+2Os"7q2ci~#dgI+tGtDv^`7"ˈ߰g'4Ht3/_EbO>"hZG Zd*}4ԔI;2ހ+'cEq^`d$m`:7,c& G\9.zR U6c/9z] RDtOzQc0C,Úd8|$c:?Jp)%ȸr=`Wnѥ(A,1ilNKqSqyV {̖e;q\fHaoF΍wྋ \gƦ3a9{FU$+83Š8]4) u&װQ Rcpԟio|N!d`;1`WJ"ǖ#pzF-@'<0P+ySeF=z!+ɶBX} >XܥF /,]qSɔ63$Ǟ7J.q:=b%V =&o!C}#bʓaB1}#ڍNp|}.W7J0|Iff؊=v^x\j>#D]уcPhW["P$i  ;Ⓒbo"=ZC#{zᐛP>@2u(BHSQ_ cb@6[9kp~( s{ 4]Z1\qq29c vLf2uz&@ izz!b1υ Bo9tݑǽ~H *2Y&^yN=]?d&Oc(nuՄQm'4sDƋd>Jj{jZ#nr#Mncٮ𮦘6?D\Zս9B>װ᱃ 38UNf4 `>0wl̨1sV[xdye=4%A 5\s2$z;{_f/?} Tv& @ }kɁlKZP_n2Ysy%sW#4a嘧-ԳؽI'jW|6܆(N=㗸L:HDU7ͯW$(MR&|wç3C@~QCYT޵˭khX?ulfzr&j#zv]UW >%7yi߱n|1+[ˤ&9T+J|#H}ԥO+mNtTB(3+JPLFl62+_a 5 #D;cꊛp"[{UU G8䀾f DSǢjf)I8?ePrSZ>Vs)srA9)u2!7'O+Fo \ApDŽ 7ϢJM_iHVQ ?CϋL*Π:fJ|`G!fMcjƥڬt^uEq^T<,$n>G8qˎo|=msQ4|W s1,< (GM@V;qB}B4!E .UA@ȟ0,<#xk[k@Vv~"vpzߦXϝ;$b;ǰQ*q#/<rr}R bΈSc9 *F}pnݰT׹mƦӣKl~|#N_QzG4)I|b;O+-Hn˼{%x}zNYaRjFGx1 U=1: k{uѷ(›=uy ߆ G-&LPu}@s Bn S/([j\6ȠB\,jgnZp; ]ÿN%xg3D8? 8L+eOg2Jmw=5:4+:"|b扢ϥ9^*8SC6 T/Ӏh/#vu8w>agqЬg[x`[ ^F19`wIAQ\U\{>gZY=-^ I+ ^"IdO#p&vU6AZ(Bn&$.Yw0HW59eEt9d ҝыO~gYy FUj>^8ꅥ>E>s沸+aqZ쒛j:t0rd^])72wKקէ}O/>xN |F贐Yܔ|pB_\c^/{3aˬ7b"QVarCs}VƣLTc; 6 H+XY \t70<9ت2LYл` kMP#mL=,VSH>j0z!*䮟]V@7q(ĽSwq|*֣-ލd.jS`Yx,rFaш_L B@cU槉+lTE5] `L V㔑*aUpj $C,zbLݜ.>ȯ+bFEAF, ^`ƭ:v*xJ]_/i_  F#GB$ş O0+N]ajQïgs[2drms hhvt&bvo$sP1߸ru zS<}YJ󍥶A6:dzƲa U>&θLI5B>BJ<6~z<#ôzw9oBKZQlj`-d a 2 (ɀ4] HfZ^KZO/%v4!' `K2P11Y"7'ބhʙo᠇ql'7+!WsPcKV~C3 Ff,FBA":3NnC rp#G|uE(Wwțiӫ춭*ɝ%'8=y?бL ,$zX HP_0iBUDa3# LgW~L =b?<RO,Ww_-3gBc_H0b65mݶ`:l)|5OQ]>A;?tf~}6G?zD"Z0 wڗז7YUQY@%RW9d},0+&\$^VhI#$<}^u|ޟ.E `-󛡌 v=*o5~XCϚlqAt(>&}X 3%"mߊ;0<٦ђ#ވS^4r hoQꈧEߐa )S^a/D1U=~vJ?R#/iܪblq4Dv̉]&mG ]1*L80! Id( B@˶ѡ.Zy,Zʫ|ozGd&s9|nέ[føSyӇoR9#C$&US-&8A$HۑAC!Wɞe1b+Dljg {?b:HaL aYv6= lE׺-1qD6o(r"7! GaC&8?',c*o]C4i|b}N@䪐wɗn~h}+cr3G GX:Fx,{a="l|]p!7k0Wxkߢzdpq  yҡiϙAfq/O2/8S.ۗJ;eq^枞5e>2:!y޶+b2M`$6x驍 ؑ~<.LQ-U! MCk؝8NY7J/6THyȀj+NsC\< hXUww_aʱ&GMލ S B`12  Up!LE}uœQV`Dᯆf}cFR[)~tG(lRx}-^دt蜱 OFindU3 F0yM-Yr06 _Wu•|I)VmuVIg6 /J2[7xloWA,_ DQLW8@ܚfqJ~28]VG d*g*5kpB)QEl1+=+3dE?\*[‰:Hi2JP *T@_iW<.{'̟WmB!iTu׿[|ۺ@%뷱|xH`E?Zz{ IH7UDZD/4v]A,!+WlCSJ3?`708&P=L؏7r+vmGSQ?u|m\=z!sS6DIWQ}s=}3۔x4tRvgXFZ\ei6S l qnY4W3g#.^&DTC4zt{\C #t#C7z.Pq@92"t*/[j4h PO_lF ne4xrojo\jLβ{_?m4gQgܽT6,!֙P3ٹ2V#Sg š7]clqHa8Ы UӚra#uic9.Ͳ+tZ8wʷ6Dɧ#3 ]ZrJ/fz'(mȦui|n;eɩ4LCkC`07Owmo, /"c8B.p3Q ]Pw*1j(Y)OvV8 3 l4:T kkA?!s|N7^V]ǕʒDF\-p]T 1oŒY@,Y=Қ?T䡄Rf1w= ch/C"kd̡pgs}\dMbTn͆L?l\aǼ!}lRBBM։ :VX7,Nl!˔yL"c?b˦G&/u- i(i '=ǿq4rQe'E:el9?4*_4`s'9SYR k 6]hTS5xSuH_aß zc>n[KwJ{LErIzh²0[-oZ(9{>}F~#]/:)o$- .j"ͻwm 7q3$0NI\J'OpAzoX==xB9Š:dX#}ϣ]g^RĿ% eHd?Sgq+adAVq%0e&ڑ$ #4.sMBMP|L e25ܝ@ gyIW?JTbȡ_R@NG3KCzZֲ3h}iTܫu_WK"$.dU_ed^{CϡרhK 5_2+[w;f:pODS1D?ۀH6J07}i~\sZ*is+!8BTt]/YGa®< ~8?6YOu/ {|xb| t +|ias-\GE+_ɏBvcJ V}Ho(H!&^ vzvh! Vͱmpp~']j~tn-gz6`RG5䣫xfca]axe6V$JIs(i tQq^æ\aJz[%DU۞ `5+Z#V-s$!L⿐H &A\3i g=aMGX_ tT̾_J{jJQEW1"qph#PUFL|s-G)BZ$xH)JP\WڈV8FzA4T-G, &A ׊}>.i]G A bgM=d$g7uΣooдlk0L1 joq9@ma'NMog" #U4 Ic^idy-jwO|Iw m֣ wR0+"nvl2$s{Xdz+hs>-E&'~m%J^ObU O|i>IzqFM|G!rꏳ./ΙPmŗi_J(O ~ kA{%l0NNUK:!$ɢW@*[26Ǎo- ~6PǽxSU"$r!,Wǽ Sly,n3c1D?<N^ =iD]`VxjW5PS7 >6H{?9Xwj5,Fh# ,-jFD#~OM16ʍMXa!$ؓ>(3U-J+k / ](N7Hz岟@&a'JVEx(YqʵqH2@CxxZgZu&TωQ:LTUu08zl߁2cBWpNDLq"K۪Ih48K8lL?֥cXѰO@iKHp35Npm\ H܅x |i9Ҟ_k'磎:wp:G7Ѫ2/FxUwYv*g@xRm>R*dm5- soĚFԤ~?_vL¿Mqaj}Ѷ Av  kmD:3 J}8O`=`襬ة RNq'Vv!z~C(E}rWXuEd綜H oF{d~B3\CFs/Qp9 )o%V'F;vݚV:swiIղ/"ꆪv-c5 \Kȣ[ rP'C~;oYt: yqdňꓠC s/.-#pLlx1lqjx~嘌0a.} CU@AE#\=OInjŸݭuE6#vVЬ- œ7ޒ}]v$s2X`.&9yMks+0S<'](6F'6^$C$Vg i2l֏Mv" Sd9?sJ~etgN&•N N1WLwhlLmb}Q虬 o|aħ^Li}PrZf2L84l$ }O1nz;p˃r4 1XfE)YmpgX|f oϻiYPh|D':r"b P36C U"0DJGō83I=79`Iz !jވ1~Q(J sI0O9iG5&L#ZQ긭26TQoT[\}!`LL1\Wlɠ&tB38_F\<{&&Hz߀b cA+t4F뚩 ?g>e&mlm~ǣ6?pI"rJ,WK% .%HUozkǣRBXױeӳ#lZq?oJm4Uo*sĴyLF)xH/C!3TOdOšױFc3׆ ^<)-%f=ݶWCP|qlEÎʜr vJL|BHqMu% s:q-ǭ$sw,f'[c·Ѐ~UP)xčR\([ESL, 20>vf%aݍ@D'MU07Ic|ɮE=[@hg%*vCL&f!keĠP\hg:XQ3pyVέMUˈI֮ tR\)jgRDM!LЮtc"/oş@/gǼTyed\^s8!,RvݖDy]5>r(Dea7e8C/D:O"%Ĝ&S_bBpmr-ߌ2 ]H|kGt} 6}?r.I<],meH,.rӐi.+xE}"rjC&?c/'+ n.dSeVɍU@`=ř-{7#c=7)<ϐEFy.GGb+O3;|G ~_fe<-LrcZpk&;9>Ƀ'\ `~_^7Z*lqiGv4P91d7]25LcxZ=d>%^=]WRrp9K5Qjjb'g`ey%`*Wy"b: +#+ >&jD{D XcjeCT ]4%moPL <6~ ~@_EعY)\J{CD3bNJna:UX=>?|6%d'.KNj4R!x)޷#Gp6^9bi `1O)2RQ@Q)fT>K}4 `t,"# s% ܒ2W\ FK 8mXXZ$|#vb+i 2 6n;oJn-K iܓT]fƢC."PRHOJ͍erb(KrX %ڴpA9 è#@;g#<֬yuq0JKd~#VDh$ YntKr!h61a-ʹȁ-; tv,ocUa~璉s&_}1,-#w獰W2>_=ws# Ad0jaxyl9m8S. + p"X!5Zd ve|i$#'HIX0Bf۲P3 B- kÒm5˪j64C?wW̔j|EXDݻTֹW53odt&2@/ڬrAxyH-W5*q3gUJ 2&:$v9W;t_f>]9n|j cy"3ŎXQ|6μ`9e .*m&G=EKHG}C<|^;nϚM*|2n02;Y . 0q C4d?}jo&]@xۻ$!Dc2x ֐kg" eY *ȸ%uq  `>$.[NR[\9n=MN]!~-bE3YvjîE/a R1aɣE _'&:XYW~V+T\j6 r._7dFx\?H@Cz^ h&P^vsd0iqD65ݨ{+SM tfWZ5G7KE}:T֪|0.x-.wLr,3(@#K]O`0)S $N.]N/$,o7kbrHse jQc=)Ȥvx}X8Lc.4EQ.oQ I8U84SG':'&;l;lnI֖:fm!!A:XY[ǻ(sȲʥW,㹘:~(6gt:H @K;_bGhe-kH:g4fL v΅"<Y,lگK6SVev C҅.0<~R_׉TjGe_~"OK>9}9tG;vݕ`n޲[BcYMw}6Εz$*|[OUz8PFpap#d #v2ۊ{`4I[rbA_@]^1s*3`Q 5Sq4됮jk`綡lpuͮ2 u{5'QZ!,3Wj?F#omc5d +*dfӱv̛|^_M5plK˱|yZw-w n]tITJwyߤ{Ua^ 깂&5[=W[gxz ZxUNX[g'sJR*0JʋI'yœh^>`0neն4>3X`Qn+[ ~h Jj4-!O\AɉcWdM䋸4d|1 թ]܎i8dJPjVvHk֎*|_fF?V3$qJn%C:~v4J p Z]ع="£Xhx/g8>9,V!DgUZg-wSDTkvXiKB;)N㜞~h_E:ׯ <"y'vSy+D/#|SQ NTz[Ѳz{0^xs*Q_3?I &${Ae[S`Yxm5b[W<JT @HЫ M9yXp7M舥s [WB 2F|UR(7,0. u?wT" 8*٠I&yCoF;GCT )Љ/Hvp̘P\O5'|Î 97Wy84bu-Э4$$qB]#P4N +S/SvC&*nJ 0 VbOcS WV+QCۃ\V,Zv׽ݞBʍ^,#HցF˲^%6OXxHkn#yH^+O> q6%̡EnV 07#5͚5\BAKl'b({_龬xѺ@V8ɶ|ya'uLTM:` Ñ|nKX|^/#Pm? /(rm i# U;Õ^ؚvJkѰk!`֣6LO} 1FfQqH(:oKx^D$F/=UR%+֐w AF ?l-R_rIOges̞py!#0qK#sEvn{O *YK^" 1) U$Aa$?٘(0yl1k׀݄ZcE\^0"VK6CTj{Vڔ#*.m:Eڀc1m 筀%y%vE]e`?jgyְ9wǶgAu&(ΦNoZ[ $Usi[Tv [UwKxk? )2LCaU80YU,t#J/73Z57qAi}p.gt8 1_||%f3_F>_KpgF!` x:zQW懐C9P ᦸaC iscAxH(TJB '{1Dt xs"&zob eN_'j?<= g,Ŝ>JK(}TqUтʏH8qj [Ofi[ U%dVu݄40!=_ T rS{J )f1k/Dĕ9'($iwbனQm%ɄBC 005U <_\Y 0:OVVwk4lՈJ[ǣ l%oLqW˷:%y_kߠ_5M.%ee>(]W5$m׊{k.L>4Y>QVb=NJg jϹQg8G3zuwѲb`䘎8Hi[CBj R*ww㳘P L$TWvAj6 U (‰pe<{^anٌW`.Lߟ;ڞXA3DYޢtKG/jš (86Z9z!P"GCr%RuX+ \g;!tШl$Q[X}N, ,g%od#)2S}}UL`%nx%  Ƨ[hc)&g )4ƒ>tbHQo]s\+ iIຓ.>"5 B`BKbu6*bMB$dp!a~_Lf8+` kW8ahۄx 3o\mgMRݰێk#9 O@n_E$D,w9N~fO3+|12Qh76֪ rJQ>lTv"cM? 5HG๐b؁ ՛JV9?ߎͰe 퀮Go$gX.A) >+%WF_3J$PxG:Ia3;1!֫Tî݄v-Gr:KPʕi;We:$Q 9Qq]Tc9rw7iu3n2@JߡS\J݀ lY慱[3u+2CH﹎ʀM2l|Vkf+tp~Ft O]x؍7SgBŷH@l-P /۠(M?CF$TrZ T-[8GF?xʞxo˳>zz݈A)M!+- h"kYAF<*[?q~nrh `G(8h)o_ﺰWGdgjxgUWz_Z&XO uyD/C(v!сџ\W|Tšs{yj?_[![|Ѭxaܥ1Xh{-&L&  _2kOQagOH2j%K5tѲ}pQEl4!+l :`2+= Ffv ][u{0|4L`Y-UwR0{Қfai"Sz=>8O4wyQA<9/2/L-٤~#AH֔,C08W;f$R10isTp2 fvn4:'?8&^wÕ҉ބȼ}0l,XQn-9>h_=Ic*#ņƎճd4%ˁ@I+]EOĉ@,·,s4ֿIUg ~xƺH|.P>hՋ'^YHWؘ؎jy 4bRC^ At_X C/^p%E>(x_i:ZGߓ-ɓٔ)kݱ"~E4Fu)+L +u#& Q `{p_ŝ08ѣg%)d_8XwTEJO> >;N:{Ʀ?92DoZ)rYZdۋIGϢCv%"ЁU~x=_ѶMœŅϭpb} rcdvԖZw~:Dӈ LW5%xh.}ڬ:7е 6jCunmEv}VEZ*)P&n0kIxnA3M& C5y/ <sq%O?VuL/r宰)96Ɠ^sW&$=?B6z+8 웩h <@O˨eSq8Mv`R5Fem,0:'Run2ՂJJ2\oq 6DO<л]P<ٻ.-/->aMn쐀MELJr3.cA 3Wv>u_<+Y%[vZʸg \#02#o F] Rכhԧ4vdO4C〹5y"f&^$9̐)7ρV+Wī4`u5蓬΁yB41'}8j;B89!ܛ$Gy.70F*F9G8ɾ0 *-1U x (e2k| O%|)r tMEOݎRXw9RB)+3M0pI_>[= o=xgEU#SԻX-lF  3Zit|udK PN}OՓ 8djUhc/NQo?lkOS ]<CܒվE,ܷύ?Rro7mR}y<Ѧ\Ft.=s`l:uHJרN FP׺59ܼ2JCp|XJ|S ~itlƩB? nsesR6Q cw^⾪lKQ5c> &r؄YSC0CL܉0"oD &\/jsi(@ bBh,t}V$:bZI?cl:GSBi[k9'Bb(mzU=LʫTC84ܿZ|~?-ҵ!"q,گp2":+/1[xE}Jj[}Em!Yڽ]qPhC8w FO'KcPmhY- 9Jfy;x 31ohWLc%7Ro01Z;!1ӶȿLG? C|.oȃU5AEIճ$K sBhcjϕ6ߢa'׵=vn nR=#;M} V BG)݇PDg&KcI띜l7&>*ԇ^ ?Dsׂ vO ѵ{31 KaN<{Ezx![mO)`M `ӷ Mmlxu.Q9[B=BD>Zu˝͗@yS m0Byo?]:t1y'2vH/7ƭIoj)EZq-ŦtWv-;:5xn魭ELNڻ>$.nD}.imTPݚX TLzb &}{k0|h؇*l2x05PL5b8e*ns%~:QKMT)!ATW#=l-a7Džn7jz-V~i?;@:3?ӳCKiP{f;]`aR9W ܷ#!Y|,C}>6(ЩTƃԥpd?99mZaj.˅iE`8ER)7lK4ZkWl{{'y(aj'Ε,Z]9"<2cn Ce'qk~]eH/l$8f%:g,[Dv/u:kxO\i-P%-_[[J݂.0343(|pW$х=DWݠ8y 'u'~oJG5xuR0@u=g&!H\wG#bN`>7' 0"Uصj ]C'[HLCC [ _fֺ:GjQˆN^`ꪊu* P ͯ"s8u;=Qg9RQgqZd\FKgҗ7{%(2O͸dd^C?^1!fw d"ZfۼB̴ [@/rj>jgr^NP퐀EN C5VYGї;aHxCSs<uFжjd?咓݋K6]ykWqYTθtH>U=oǧ)L*v|_UOh* Be+'Aeė=IҊMys~g~̵wjZq+k&^hHeod-\e2QWν\Ix}_O~68@=+q1[q"Mq>06b@[rb)^>#ЊA-!pĆ ^!GVe!EX4 ԉ-Ln_ٛeXxn"$r5?`4oeZXEh [Y  n^$RO}sQ %ijô(+[& 3Jzc`Y+pޕl tW+Z&0?_ hzUJg:5@yƉ5K%>53֭su _*}M*[Aֱ`r41m菆y꫋&@r0߰>*>xc.N5 W*Qprn Mz\>⩞ a=Q':d&cTqvk\ο0.EFΤP:Dߥƹo"H{ ̲m*l[}]WLMv{ RlD~z<ѩ&r {)οR;M6Xk1Jd753qG05-G$MId'?.)g}& B}99dx58>9r6ۖb? jZk8/ݝ6_F- YV aWҨ|9C*j#&Fu~"ǩo!q %@@ wRmr£~Z"P.暡؃뎳E>|,Vrϧ'Đƽ8w=DW=7 p ]Y]Lw.^ I,h'$E'?/E2o I~dosĠ{@G$:~>Q\3hw+_21M6Q%H'I!B:囙ELJwsJǐć^B*qL&L_8TOjѯ;;@5`RL@G3Vf˥@|'E*ZjQeepuL1ט᳚G9;T b-MĆ!N_b=rFh哆h~|rtÛt@0ѻ I9^m A: ߊQ-kTX4gˏ_5ihPwŖNMFA]4"'WK_'u?#HV73gTS<4a'i$JKQ Ȉfsp%Qņ@ ]kQ.\;sא:SMˊD;vz /L^ҁ&m'UĊ_! 7lI]471?/ 3.= T̔Mg&.T*0v39YG K8* KN]L%ƿ0ጓ ьo\*TJ6_jky $S`G=.-L|Lf:<rPt™J _,j$iԏ!!*TS{g~f'z1Lcpɖꇬ/݀ÁUַMァ.$Sig D L+Pym%vUmj Z3b@4-+2Y:QeljaXpcqg  ثQ^&}6?2k,mR]e}FkR@`(ÓiS>;rSftÁ>fe6ByE]RD-o Y 1#  w{⑟=.{U a[:W75VUEpg{U'w50Z)+pDNpZNY@H4%GE0"d^Y2ƢLp^XdJ}kv" 0g%d+1IaR _U]|p'Nj88ux٭UgwoϛB.+`EJG[/ZT%2<9B66gZѴV"µ GnZ #6!q06QnDZy9ѡF=A>F7[ͽ`&kM1@-C]z+mQ5W Y~<ʔ I4$*ȳ\F(-2f-ž'#@IddF-+eG 7V8_Z1pL5ZہЧ~6Ƥzb_ [ҏ-zFʬuؠ@ w>EdޅHPT)XaYCu/WlqݪPo<#{FQ XQC^Mn(S)U3n,0*HrqKQ74UlMSp^.E|6)8 E.8̨ɬi8a &ȠOpQt*Xa3vH/PQ.fNtlZm{Xn!}>p`Es;ԤJXb1uM]i^HQryRi'8!xmzD:`4qH>]7 ;,=B!ӧeX3lz-mbuwk]v8cW|0" ]o6abƻ/qrjૹ;N,%69iF5D1M~-g[?L9 {_?GZ0, #,4% ͖'EDl=xx=)*"PϷfbZH.yR0MxFjYZQw.U\}(T-erϢDOлu:$,o3W 'Oua4aur7ay?8/j"!`4 ÛT=g8&yÚï28'Sb<=fXB؍MrhWh ϵK!J M"Yf(O}1$~VO"*R=rmXQv9:B/ qWJɍ'w Gׁk6"%߲*{bnM?LI)+kOFLX;=zb_;2 e;~xY}%Ho&JP. yτ At`f3p QA죱V^lԷH 4:E_}Qx4mkNo?z9LMK>/@]qg@wrN@Cp)~"uY +cʹj&e.;*c'}EQv)H':5lĮ7SDotS6!XZcԖg{J # ge]+*vΆNmf "X|mg%$1J+߬+3(P5ASi9`0FO6R+)5ֻ~{LTݘP_!cL9l CuQumlxBq(5(8]}Ԫ%Rz)zkxo/ 54d2eRfla 4YNz.jlO,߿YjC_mëĶN7萌-ƷS7|Ӏ]}>`n~6ȟAU4Y1sxY"̨ٽ˜J 6[) E$W6-!@RpFa1z@_+8{Op[l1ޘ`>aM?S yģsVC=GpףؚCEa,9 Tqm{*YX8t꧸bc)Q{:$B\uj+ +F >Tag9j'K[.Z+kwcOmfxh;#h ]Tmk&ŏ 王 ]-Gґ1.+0S] YEI`#٪ZД5rb@v7Niε?U&eL^_֡{ÂZZ ,+5%l$9c'{;O1&{pGJe'r-y#wLL\uRMylkH7OHEJ ,6`m(}Cj~n9ikkWsy yA,% jl2t].4x<:Z Y+iuɜ`SP>F~֙a ]356rvT7~[_QJP" ,,nz麧G l 'RE!WD#V1MW ^OFi PﬢMc]SB3*& jϵcqh3?z4[COnf{NxNefCj*[A5^&?aBvND\ oC_KiEP|?=Mτ`́g㣖އA`OUCNF_Ӛ?C-GǪƺlF{gL!QPMBN$=S,B,W6ىhfJp}x6A<*Y44D\PzLb3kTv'^n?ӻ"2{2D(RajN9L+Ddȓ|f%/nVCXu[C`[ &{#Q9@ɯJLX&W~=yovHծNϮOH]yET1QX F`iW~M%OqCNl@c܈C"!WA$O#?je۷6Q!x,!WlgFޟ&'ud>f>r!2(:|:D,9-.)bɂ# lڅ&BٜkYDI#Ȣ{qA8,Qq^ ҦF,*\~W_ObiKQd Eϔ9 biL$%^x dny7+ Dh Hǎ9-+%Doٲfp,Wɑu'r;y{>ldM-n Nxz ۼ <3GeBfSpUEXdŘ aeW|iV%a huhIJ\X/&F .uIa\m:,C.PClNv kt-9t0GIu/f܋kt ,f[xw /ܢFc潿[©'Z=O"u"Ubs,(o/@2ŧ-I8DTsi>Z2_v0>cb}tK+1""cX_`KYp{$N}ԨO0FSN,'^M25k 5'-S̍w~mz8Q&ȁضwZŭ%~Mwr<})!ܫ6m\\Q[Lxg>U -i : x:n1XvCō'$H7)#8*(JSWLu<J8kkCPhWy4/LjN6R`g ]eAJȵu9? ݧ32m6)iCvkb07pD;HJc3tzk8>jh,7O \~-LoM48IPOCh*»W.Y,<&С>@Yx xHF w~@\QjBb%7IS&2d=/MM3.#Д#}\3ύ\Pu>ci*8 i.Ze3cB>25\*~r= "ÔdNlVf~٣8&BIٌ\sӒ؁]nEORG [^_nwi%y)8Qm]+ٯə Jzյ#DaUL4B_c,O9ֳE9]e!zPl3Dv'NFNsN󨃹^ȗ z53(AI72TΪ/Z89A!?(a hm3#qt0o?kEh %6Vrd&<%ދttMOh~UHqQ*B˩>+yEjF"a%l #T|ڂrJzJ.s\Pb ʇkv{fCkSVmqfe#$*Xv@fᢲkhY< O)Hn/D{y#zXb| ]˩_U{n+,e!pf\H7tX#f8Eo\O ")Sg6#o- 8R0R%OyU *8MU^\K^QB7cXhEVjbRC-hi;5./難n1LYQ_S4 G],'2m,ϴ`Sh:,RgɹP܆UAUU *'AAs``oy^[qY}/7O\-U~;?d*ʐ&z%WD7Yz8 =&BB!qh!mH%XVPd W)&fZ[I3Wꄸ^Mg&xٲ)WR \'gvW>n全]0K🇕79'R}CɒC`L vhBUR ޯZߎ`5cl䆚yUng)蚃zSt] #JP[l|K5l TO:skd4\*̞pmfba}bܧ2ؖHETmОVt&+-SxHoVeVq~<^ޱ'u6Ĭ@OA12;%%1RF%I[b^ l^ Yإ<'|H;˱d,Rub 0d}Kd4 C~{&\1X_ k>v AuHL%=+,\h.*~/Y ц/Rf`BǂRru=j@W [Mz!չ࿵54]W4zh xj# Fڝ:|ԸB %>au߂g2 `2-SՌxdX7OEsZ$oC5;SI' #,5d瓚Ur$eB7U N$?&߄1mhp۠owUS7&&̿L:|ňvkZBO#inpkVp[[((_ti}~(p }Q~1Y!l7D~o6\%^vcؘZ.b-_&pc$KZ %Y:%l״X<JV -e!6jmKAl<8r>D27ꘒt :\99 Wvú+w,Eqiœ\v36S_](SaOJ ( jy:y&"pelpà%W{%|P6-E'%&`N\BT*6cZpbM@U5jI,B3}Eo:)dlGo;:SnϦP/yQvr"X iL| fc$C>0 e"VYp5Q4&yE,  Lb*?\1} 4ݠ7S =2ۖ~LE N<,//GE,s )elRi)4 (BڠAn陆|Sk?قhDB iUL B*ó+W>؏AǚjȾYCR'B՚1-4 N(180];1: »+lVy@(AysOq;PBM¡X7#ܠ"eYHAqz*x]:.kf(s%}:tk~K: ijW|JKD$Ht袸tQ<[aU^1\ۈޅ;>"HRE~{9ikS!+=I7wwڈ۠GW^&4#=yI)ٗhȨvXK(gGD./޿ՊzYHDaoǤv薨+uy0-ޗ&Xmx>>.m1ek _@ysnp@9tDl5dg8zd-({o}|h2k`=.O֒Ao*PFJKbإGLR&P\ 6?tqkܶ"S(ņ*oH&vh6RyӱIFN&B~xL%o& \aj (eK֜`~ooi {-Ru\q;ƷhTN0`RϾԊXْ,V_mQ&NKZrU)@|ם;u8ΥwB3^PGCLj)e0ca'nZ3YDCi 6(T'6ЊW yiH4ig0R:Ϫ^!G'+'8lp &8w2O'+EW2|q?*uAKl~}CU*J59k^Me=\t`y)w%K-yݝ?;l3 sۤ#Qp"Dl0BNʸ^ӤLH*B ԓj2cvW_Yyh6r/k#D[6N[ŒQu=5 ƥ>;eU7ЋKRfaŔ+;0l ,-RB-Dׁ<$ywԅA>gm5?vy+x5@4'K/ >`ư^`Z+uS8gS|bc.5N2J7YB2?L=PΠ`3sˈ%I#yQ N_nw+v@Úmq@qQy %m^w+#\S>ڂSzo46< i\nLH~CO7}W?YjoP$IM f=3*oeSZg;TRŕV|qBjLKnܱ#نlvT^X^.TOX1Ǣjq(/C6y=c!@+ ]T7!}qJB04376gH VI٥7}́w}b*FJY-W/ ځW挚}tY7mkRQp{Y-:y75J⸘&Tv Ijz"#]2E2)F$ƮIrkz )DDٞHR;GN]w8}Us!,#EH8"JdЛwʽNi;d?I@OR5t^Flw˱ $%_XrAAr]qhHQtQ%ts =(,UM ;DJ`b^RsҴŲ_o\p!TCh.V^iZcM":XrmI)Q '4?4E21}*+8R 0Vje"?9g]됞 ~)KJ0nZȟ@qOxT rB7'ZH$am76k(oԙ-ў@1s̉ emE1EaB.[ŸZ'FOEn =m9.{c~Vf-+JiU 89u/udߺ>ϕ% ՝vصIQ>^<%~$/!4w$ c0K/d}u2JW<^Z۽@$q>W'tq޺b@:F7K]d\ F? ,h^.5fSspOJH,ͽȿ(l>baޮMYn34l.ibX dײWujE+Jn Q=C'=G^` OhവwH4踈\룮6J ZVG>hH*5 |:6 LǦp߫8b/Xk7n{c$~{J?#yf21:/f-yk˘lB|oQ(͂7/[9;xF%(}tR]-^woo yǘD;tAW8J;k"āv$5[6l?gqsiv'ܥi]T5G0REL(`v{E Ǭ{UxܣDd27UJPKvY7l_Xmai%I N2(<޸ lC͑@kGx=5$$TOpOt6|bj]#4xiӘʊYo(A΄{}aj]$ƫCabNDƹssja|0VbH8QڬV<9xU0v@ J( ^Q/_xX#^bUFh}vz{?kuh2g6>lCiI ٕS6qW/8Sj3u[Hԓ6+\Rw 5xF&|;igtvЍXEq_JZ JlSq1x]!]0XXi "dWo-I\(x \#cw3-v/}߸/v]DRR0'7eӌyI`ѣնBPIp|ϏIh_fEȜd#d, CQ|s)`[ IYlPG\u0(N"6F*.Cf/̤O5F?qBn8Z#iI+ThJu֮i 'Bt\@j0c>jg}%r =dqyXy'X{3;(n\kMk7a;"Cdt'[|0(>ZxK/s{oH@Db@~1b=GsNdUy{N-s!wՈ{:>Lz]]Cm?pfimd~44E9WB: oId$)ZB(LZl6aÞ# (mF8nq]hvF6alVƁǟ_Ty-t(֦Cuq߆u{?ϲǻ$;Q] s-S$e {9dACD \s,i-ţ`+aM9sG#ʡ.J{`'OCkSIM+y|l-a!YPKj/[,0пSaʯWckXREeZ21̢W6m3"+!t#M116:L/7[&4rk¢ۍYEe O҉T[8Ts] QG j`I>O`+6T- ō ps+Lhٶ09ihLprh/`} ,}Ӆ RBV%w,`d"^e]ZLMr{^ k4%|'968<idN9&!@x̛}+Hh'OR%p kpo<$m-n׉Jď=j+.>O slPѳA_H ^@žPEO95@ND꼍GvϒE&DQc(fE#co#js[b֤=I r{=JifB>Ρ,)*_cj0AH"T!I,s먧*IC;&x&?8;'CbhIm|}*pv R5mS/ |2Ôr!M=q{h$K`&~зUG͛fߵw_jۣt(yԝ C2ݾ)1G*y@ he޾[}=rֽ2mFzfVFB>rN5(| C>Of٨s#Gh!cg;QYAyvXV" BtIa\e'#F-Z&QAZva͗FMZ5ǜm Hw62iʛlW >p۩qsImm›_ VF̅ے@?Rlidl("h%ݢN# i40Qɉ!?,V1Gd<+?jEz&l#`MԊ^D b( lsq5]?S_3P?Q:k*i"-Y/_ֶbR2p" 8Gf4;i#t?jɧL!ӄK(SfLz,kC>G*xڠ '?[DzQj#=zL΍煿f]^mӾ;+Us \.2)GP$5)nG[aLh#>*$Dծj5 }i7L!3:@\|:UZ{7I@tHNm}8EXiO8aWzp:v9ntB+*ΊHYѧ1mha p\Fۧdeƕ.Z1 j:a7x }RRM²cQtz6dC$K6i-GFC4tp * 2'azTZ|UDnzIJp6`U'i%t&=D іkI[4 eؠ&>ӌNoҶ Ax]0VǕKB@W&]zFSh⷗:.X-N1Bl] יּnxpa렉"в4˴0)2JVʛvSJAp!NL- [ #UJ|K4_vO()ُEN\Z,"TׁJև2Ȱb;aڰ7n4O8X۞8Z_rȶF6mҏG0N`{$>!?&U"zfΕyЃ曹=U!rE,ёMGvogzW&=>lsoovxG{xi Ye9cw!bfLZfL.;C Nޑl׈bXa5,D.igj=\?wxWN(d}ىk3/UyR)k  ?s}S֜3^h@06Hgp@Y\agw'\ri{ hJ|r?f+)뤂E;T=.J 0~iyjYc%x_э= Xi/&*r0%ޱl¹ Det:J;`RJ(%wѯO9_5+8iY7|=-e_$S/ qa`;{=ʩ膳;g~y({i :h饜οܰ`-_5,BJ3I *-KշDy8]%sW<_9 +W*\EK#FvLq*,At-# 0Cs1-:%k-+)XU:R,{N{ eSȏFkE~O_ +ά×w\^++)<GJk:J.`[`IA \ؖο 6+ :`bt#2zƳ9INS!(9l!33Ė)6|&ǾGzcPֲa)o fM뮋 )[1U]gߤ *Juz o7B|/R=Ãp|2Wdujo0q-3 3!1 $Wq@SO6X` #zǟv`3Lsk3t"zﯕCG}@7C u=Eh8KS|s*);z'Ӝad-{vw%|]S6X.)'yL {=sȉvo@'4]<3!3jDto=^{I9?:G`I|c2E/ CVBT$6;7J#sF2=Ub*pe4(Dg:PrQ+4qt"m@WQ\ΚJr1ccFԷ10d;V\#s]m*&7XBGb(ԬJ n#^ieG-N f`=zQ5AQRsX}4}E}r0_nlgKnYH%ԡ ?4QHY'N4a聼i/&{m4(F:&{`GLr@ ^UwZF;za05V-;E%#QhkbsҗL@߱xu r_(0O6 z_}ALt9 2"Vz(?"iq"Q J ƃϥ&eăWW)uhe ~:{o['T 3ٷjHnj^pW줣Hb);YXp uSװX {O{R8&?'^7$sVumPqI?-*o[TlV[Zχ&|eP"IxBZo !fmr^7L뻻j߆' JrXzJ* ռhVEX<Y2nt͹2zRG*mdYWm٢FZtJ'?]HrIxek͉ 7́l=5++qg k}j6[6 s,4~n譠}3vکHP4Q!ZyT[@DF e`LރFcѝen-\jגڧs8f]Sh NҏR7EDG[tae`T1Uc;Տ&,5ewO+r)4< XF!|oꌾZG:&N;^G.ւRz_~snMlbwX-ջG|O">XCp<]l)@PWGxl,J*D;ְv*|tAndqJ+ؒl -(s e쮩4)+x2uUI/pϺD?_F4s\\GS.wX>CF=HEҷο D_}ϴ~46 5F#DIqI2(DQ61 WϠ):g&)*X'JiL΃(P^̣? hrYy<܁ʲgl]oڧwbs g3Uv˺)ļRlL|172!+u1ӕACgLP ,UoIYB;*) #RHvM>)9(|T|ǏhQ)M utpƴ?x86Q[ЏDwR)]W:[ʑhھiȺr:lmfp[kܨD]ND17i5T\]G/}؋bxL$LL4 L6{1^5䅃ͻƊ i`^sE11oVOz]ju<Gf.5p#tKg(%-ZO[ˎ%^`L:\ ]DmzY8? F7!ȨCƅvʛQ~z| -7_c\׉ Hq:k 05B)KYф.HЊy;BGsv٧H9M_U֊ٙ|GsܔbwI([{qOB5ծm{>S*c"uQ,Vj -5ɨ^8{,a:0WNf 4} q@d/Xǩmwlצu'G&Mlv3o5;2xRGhljYQu`_UVO\ yEdjӂq$'O[=(G{.'ulAc?|RV[,螃?^GuKx9cRK 5 žW` ص4ֿd鵣˫~ u 6ۅģ- 5JB+)\7t=.#]{gWt% f9!ӓ[KSP7۶ȕEi'ѡVtjCj % 7m[rVNc6Sڲ@+[ (euK1 O1V6"<.*Nnh!mO( -p(T+ָqve@l㋉tz[Z߉\ '݈=K$sFOU$6~ RlNDybYRK!;#T>_RKe2wh_?\MS`ձ9q#\hZs2dTj*B$q;! 2񬎃nږߡ7 @WEFV10PչSm#(d"F́'dbd[mi 9hTyDPΘFQ[|C;@7 ϰۤuzMG'TIt&p-dlӿqt(d̄=fjr?p}Bev* fy<ϡh,Jh#n&MdL2^v>ېF#jTB QBSz';v 7-B@A跰j;Ts)A/`tAeFV` `w2p=NID*h wXW[7a'.0ȉ~GYk#${l("o_-ᇅOwLHN,5dsAi*'{Vwz4^,Wx\?:EULX)Y(Z~X 5wc͐U4bmU7H}Y̚Ðk KY wEYi Һ|@@Fv|g8 kt$ǟpl^"*8JǦ⛻PC`k҉q۾rg?d[!'Dg0=_DQJ5io .E,O KzAݏ(Ksb(r0FNND80/.]/%ci|T,E4s uL Z? OB,H)%(mm$8""a+0b%m6NKs٣iZu{vޜI9Y :f'Юy)M%cׅʀtƜ>GޢC ϐJTBs32";-q:-)ٓUQQf#U=Mr῕CwڛOw)n^MLEӾM,uU-2O?VhtVuu&JH/6>Acu;<,B4j1WaZgqNaڣP?ƕ(-P*U|qaؘ 5}{3|5-Gɢο<aO;`0W" s[7HI|z'jIڄn6H@h-ؖ(P!𻿍 Ti+9| $(]&+jȋɈ@SQ{/p%2zj Qإ&loN,BSu}k#qOu"h#?b(n/M3Ae\މMI9~u\Wӕ4c0]MWt+. =CnR)Abd%/KGZfLB`R遇cF`G= 1 x[)M$A1LMG>mr+7e]ՑJ/-nl".2F[+M堻nӢt;t(6Z@W)-tmb 0f`]z7À* P$RT%InAU4o5Bt vN|iE[?N"V1щȮp֡pE@;)ȉ1hҺK#wE`>%N)4It*|ujPFΙIz~hfK2q }S@[f1`OJ'yXXbV!&H}S[iTlLˑ-fRBuk:aX%uE?Z)#Ǟ3 [TH݇*"[]P#ʶ@6rxJB1ē|t !>Zf2䒂Rrm県S9Hrь'U5cp<5+/eGM*Rof>@E5Zp)G_[LD jk%`Ck,J.olhjazY{nYP)׉\r!r"f Qt~Y`} 4e6xC &E黿m($3P>9kt*9us }~H#1E&gA1;!KhO ']K{E2׹\eDA4Z@$ ]@ }ڝ2iJC鵯ϑEO(k%k'%[!%+R#[o [x*܌K{s[% ^}lۻHgzg]| 1w[+|zE.03[ܗ:S"8!tr VN3ًboh jɞόAHoRYù‹RAkO8'է 0]Y@0Els H`ƊUQ9vvUoұ6^T_u&*Yʛםؿ@SN{}@M*EPg=F*幆2'Jz=cndU #_pK:_]/ PnDXCiVvݩLQ`}–J鑴 W$LO˔J8`׵ۘ=Mw d]W//8C<_jtg&fNxם 8>0"Ro$U(}Vi~g$K0\]%F? Q4z4hdCvJ-ѵzG 5 XJۢܦ];7zi exíF#f j+(sS LŽdykBr齃awszLoxR;qfG֗qIV"WeUUvq 84 2鬋I5Lc$*"iQ6, s M;wS'o#dx]dy/Z) uZrlF8kǮQd k;/u0r=D T %d`?thN`liZP;Vx,GbjܾQ,]VʌXDxa\ Ŏ 3TĒ'C=#ZSMX\Ea%cMޣw,ELI@ eMhC$*ZPYDHC`m^"O:?|>qu"cÿ[uIk R8t6DG[0ZjoX(Lgk~2F%c+ぎ4l Tϯ񨬦 VĊӺvSj%s`(~dʢ*tFu@F:ҼA2Bhn2X4Ӿy*  ƢXV+8TbqNUߋH6-+,5 ]Ćhd՛ݲmK5S{R/ToZ4yD1RW!_V$PbB.ؚ9- j!0.UQ(|Ţ' DwyrGF#Xφ6 6KwQ.%yv4nNv?0u %ҨCdݷUJ/-uڤ; ?ΚyN.v$S7|Xr93n&G5i =VT*N~ƍRi]vtS48RnwA7~96mmf!yvr>͡;}cPWe"]W0C0͞u$%?(֤ ?G 0媢tG2Ң91ޝV;k'J}Y\[ 52&ዬ~(bV/E}?'6N?3xr@Cb\W9*18(邞 W#S![zrDrg*ҍ{ + ͿTޡda3ZCЂ lg?celkHioWt<D;K8ؒz r QH)浇 YE릃äeyμ8]Dw15iwQ΅r5PuMK| hm k=rխY\^s+5SUrqF@Vf}]RWf_=׾8VJF&"̟Is瑯{:KVe (7N^˕XI? J:H>`=?-zVBkJq5 ]'p?*bx3u, 5Q: =MtTi]ܓo>c}.Zb&oyP-ӠStfd*> B.?8SMpe,))#Ɖ PB\f-y&߬7jl2^MXޛ a_x+دFxrYTWOўPp*ΨFɲދ9w:GOvuγjV%!Q'u+nt}";o{kg\jë3}_xaV!*}`̬u <$6clk$&E6M`цdžTpI5%m`b)$s#-MI`.! ӊa?۹b [Jsп Jvy% Z4)mLPr!SRVξM?Sڌ5iŀ99gѴ?Q]Psq|a]cj$͜?&(&^g [ 1R9Fcue 7`Ҕ񫉹ũܸxo!vM.j-+Y=/ sHeIݐ_#h1% SI^ni=kn՘`6j+l$)bQkҐݸ8&}+(d0ɚZ(kP!(ubs`̜ PC?F (Ry⏤Fw/eN=Đ#0q( &VGr$w+92R#z"J~Of E$ bL ?yzH1E5?ȧ'@1ꙉ&φ/xC XS|_t\#)&%wkd/Ij!8ΩYؗ.zIm)幷rPVh"a¨@J Ѝx r5bsɢpsTfEMq]CyyMLn<˽Nz$UY8/;Nΐ9JC0ej [EcY.4B4W:hvW LbF&[s̫k7#.BP'dΜ3%zotg@J3DK[O)H Ň 2YaԺhHbxc|*q=kYu_c8 OP>Df5YFFe-2hyDF-!dU7@cj#p nP q Hݓ/K9EP+5Ѵۉڙr6&& U=*Pl\"#чp?]n=r7C9yD_pl4QoU d\Se DЬQRZxu̕;!gyk#hZ)iJd,sYC\0aSoPJr!,9 N wqbhU׳XSuIYLvh^TİޱVf~Wiݎ.^ahy 7`P %d}aA8<3X[{:l2I k7} ["ї( \ڶ̷d8&#-N&,3 r.㝬"\ЄBS"`_QB?Qב|N&U#˭G ~,W r6JZkddaV3(<8O2uuh_L]Z FIp=_(,MUdf`Ҕ9DVG+lf&?SZ᷺W:D d i=;\a^#06JfX\+vޛ4qsڐ!-;;;vgeziQfk?CIg2ɘÌ'ùI{ }A@CBd1`FGk_ Ua6!Jsl FAY\W2ȥB)AvfU4"TlPgrNjER$XyS|prH} Fq.C9c鿭31ԯl8^7ݧ nA -{WDku!־TW45s[E:ySZ p;!].~HHqP>\K)HlH>\ALSyAF ^4)lf%'HxzxFS=Q"QAX['35p"_*ȼ{vA޴ Ҝڹ Λ14b~+ Lxdʬx: Vl#[:ڭ)!,&ʫNmӛF3-s^}GHV>f%uv{N'sn/@m%_ٮ°IhfC4x5(D j ```b.] -z;+f#}{ uR*W1SSԭu9uyic07QVkNnN {_b,);ḦKb̩;gOLdԐ|X!eT)ǀZփ|"^Nx2O>Raw7rˈJ:*BP6h<y$-Ҙ\Q_kY)QӱVDŐG@ zZ^ Q)|SQس-U+MYmјֱbb苧GqG 4^ޔ&f\Ax6+GCs^2-Aw=r7Jw}YtSh֊E#dr˱*p2ó>Ӷ/m'{qX(+kԌ[xQE̙/!PLRh,--eY Y4&)j<p@nt瓈2,sjj];S"]@kL P@#XtPgl5(5N}ʖz~#b󔵡bwW` FTђ nQD =On6s$n'o=>a`w+<<;眠|"h[qPa{\- NDcÕPل%W3&SV{誅w17#PHVl5#93 qÀOۼ}:ߟ sCst]5~cq0:,ct+~;UL},zdϧvS;RP\ض?'8M+!G>TE F8q4XNxCG- Ebvqd9DەQA!eWif'Q7X--'p0҈+Y7Q3Z)iq,6<[ʅ u#M\xGɟ2\)ϕ `J0cSC&,KJ{yS1 ,.3|y1?:עhqbj(:{e+9@M2XNAc^1]r3먽?ciylVǡ<@TH+ Eߛ+PPHI.$q rxLUvHJl0 nu>y[=. fH*U-3y~U1IR@$b %On (>[mi OcW.y5Ќ=3[FqqB$Fjy7/6Aj`v9,zK!' U6 8Sa̼gڒ$=xRĀ~A-EVc69?`n#0YKC^&U̠@C辖'E C[O7=\PC8O5~Ca dF"6g%jۂۀ62ˤx{o0xD+ɹvB@dS??,)44W6$q#p^[NBUwׄww*lHXF6\U4Re;"Yk;=rJ6ɪ)'h5eSmO<9ew(jB%sSYUvM['Ouj,Ǝ.A*P*˝ƍ6@N@-1⫽ :bvr Oe3q+(.lNkʃӅm.xwVJ McxJECo14(D hLd(10 Pزz^x:f1KMŢ,YupQmx{w~ʝ+ڿ)˒E5YG[$6ܴjAqP?@ G=bͧ>2W 55_^( "TQ=`{Mˌ_L6 *2e;yE"u+O<:Y>%EZIo3ȜT\jMH?ެC2O%o{V[d+a }bڡ݉V,U?Ғn>ūW@R`jVd2AtpD]N`4d@׃m1Ւ`Pkkݽ5DO:?0gɅRly9kx()˼,'sֈ&ۺ;Q gw@WXOؘX⁁ɞQJSX|]+L4)W_͌,|yP%&!>ML{W罖PW紇 ~XMaJ-5rDNhdlW &'+kN1og~9{V*v,_rM'(DDVHJ?r0n !xP{z`-Û.>AU/ EՀӰ A^Bs}wF(AI=9J#FR/S|kRn:pIFV= q|]A>a[)VKAE9tz $čYoo ~"mc49.q%2G?_Qgeڋr鰠ő];хla gRuw'R \uQ[ү!Jzdr7DPn G;t_NvlVK7xf?O u|lFib>Rq2ʜqr*MΫtzTka1щKXA> .? RZSl^Qs9]m@^ Cԕ6^$n,`M\Uh]f-'=Eaxݬ~4ѓs11!|5ގcц)Ҩ%4`@ +d4eh5Ea* TX{QO4&wbKQG.dyl&>Gf\Ghd\WyO\T ʧKJC&zᣢ{i֢\|1g <{? _vVR_baO(( ec*BFlp̺bD$ˆ7(uv|Kwo!d5ʣԮkaP3! d&o?|=$Ť(@A(7o^8 CաpPsۖxƖOQԦsL\CrwAV2>FXĮMa՞1I$%UkwS`բIȣC[Q}lwz ö('`yvTO0F]y.B:뭂+MP/ia}bƴ+ ] f->~t*Z5uUf5E},O.Q#›SA+Ʋܑ֦-enxB4rOBqdR+-9HF$$gdfmfwF,YZW1)v&۞#V2(_(U_g\tOXWf}v 陇V PЂIV2bksQtIPTdp ~DN >D}QJNjհGo\ $=:jGP 8D)3x`Q ċ`FioθE/]EўbP7!Lִ,+FW}' /1 \uhjg/ x6F?Q0̓^TkVv4VJERGFl C !B~&YD1BTK4$}#j?q $OkoB]ϐq(C{o88:]߫Gw9yo/wXa5h%d 3z_W?"5s tl 7Qn - i/Yp.B M79D;ZJЉNi/,V[DB`L1)mi"ќ  FxSڄ*H8L\r=|^Cj'w0 ~ 0£It2d1E,f #|NrN"%r= Xy$A5acI#2t`Ԩ=gx_dit;֣Jxs-h)1qeuinqɼBNRO'Tv{gAp=E858^&͉zyxQۏQTU:q2p^5kG m)a@cRZMaP5 3=h^ &5R"<) ,8O&:tqp BYpɿZ 0c͆կVڻ Sc~͐|sxoUq^%ي,H.5/ldijfܠ䵙96_-e}. {g*Veqc ۪{c}Sb?J|ȧbYPqbaX@ه})_UaƝ$ _k JQ@ ~v/12_,vjؤ3yKE9wq%v̨ G\`;a؜#&G网'p/%~#75>j6j9a9oGqL}cp- @@ @ACl 7uŧ87ws#ƻ6l#ZTՇ!l:!'~+L+.]ٵ/}0.IltBˑ йAM/Q*,Us eHdkXK{0VW/ڞ]/#GqKWOˍx{(ʛ^)g3b"$֊=aW MRwI= ?8Έ}t8ӆRsnD#y> Mt,0Riǯ)?WҠ]ѧy4N㍑oHLm Px_ŰiN/ұ{JUFC |/L[bރq)V&"ΓT=ߡb3L&ϲFe jaGV~ؠ<(kS||z~b\p+N)A%F8dEO8*vC6qcB?G t\Nc2&=lM_r[-yԴᆱXfGrI-XB|͡*6Xb=`/\\.I ; iT\XѴt@>9M_h:wI,aoȅPcYrfgQw5cB9y;-xE6;g{[|Dn~׍|ejj2Կqa"hOBDSvq(?@Ds65`W,Aa)}21s+Oע~J> ipeFd%}l-UΆ3)HjSe1eDoY{Hϔy0oCt"&j[WDzN=nxFutTe*H)QO+C3g@8ybcRLq{opM ww#FB-}~|24Z&b󀔷J7$kzAzz_KHg@t$= *vYpǍY疌_9r T"6ݼ ZG@ ҙ f~/ Y8vJ"oj\v6Lk:Z}J)MFvɋD.coreihܩ.% DV2@h).G*_uUŷ-1cWenL[?EWZ> +J8O? X5/f/WȂ[0i[=TOS)نO!cTܡ%u.ȆrIGQz5]RMdߚ|20qj?01T-ʈ)\(Em"#cC} h Vn,m19=:b\>y`02}d> .;|K6A%R:AMrXഋ7ZӦ$ٲ6N@k\Džٕu KL$3r[",k64x52.^yl=y8GIC$ 0/$ZeRj V=[K tun&S:+N{3m9m3fຠph{RXoUy}5aT0Z.+'8٠Ѿ]6•i'/}ַ% JL ]7QZ?+<@^QA)˺@wsmLi E媙PNCѯ.G'Skp~xSk$otezEH a`sIrvP3g2U)饏P"Os$B4":ϚݜmKTU/#1νlr8lORaSCk8無z~./qxgdq}I[LR{}¡n :$%s KAA%ğx $NayƗ1c;1 EՆ.?*H~ G! ҄Q)D! n85MOt$`HQsEo'ʷƁ]? aVi&Fw6!dM$U86%+^v|(?7Qy+7][*3?bVM'cT*xuI9 28Ht] MTV<^Rrf]Ha]rjq䋛d$B݄PQWҀppSg] XҌ:"sL ء9Νc Y>媄yB45m\`ތ_]l~)/*L\"'Z/Y76s @D/ȬGDYJ,30i5Xi%DlRb(RYŸ[S x&̀e[˔vSwb;}J2vd[[z֦T8ƳYc4;D#سDfh6-Z읊܊˧BGoR"mZ3vˋۓe'gYB$[Sm M &G'Kq ҝ`%~nk(/N7ɢk/O`9X)~f*=J(>P;ځKn~d%u=-!(j걸cڂFY^kI>w`L&[+U:'m}t̐>VHÏTNG*RUX3xAL{C5f xp9{vqz)?t:jݘޒ'qR"RwKTyV& '~ҥ>;n5sta""8Gd2"Ғդ5`*!k\߫ELR*-e.Is1<ő֯?ssNe\8,-# u󍉒9VA>=':4QxsCʼ_ɋQhe=Zh,Zf|QPHQ +* ޼1,nAP}%f\-S`a.TQ8qw(ɬigxu=ښ.Fǚ7  _U|ppBc4kbrD!M6+U՛Tלzי(AnAO"7{DӷAݤKѿ<݌/ab X*"8B6g"Խ Nz*1)ċbb!PLtR(&FLο=VEFH_ 7;)r[0--> O3iE^+i6N|OW%s*o::r Τۃ>qP،:+Z/[-ANFPaVlF r+ q"H"z ka܄Vג0GL,SčӋjLkJ;$^9d ]vWb!^,K3S>-|LD̯3\Ջdnφ}tk|qz[D &aδVy|Rƕrs:Ѩ)roB~k)tMN)uC}䅕g"[b'lAoe,l<29cfiOfo2E30%OmqGt@KXNL2W*9溾ѳJq`|_eA[ dJz0U)N'?)CN :.rVr\aD/ckߣIB,s,k fx:m 7ԩ6VY<0UPӇ&e(Z tvfH1{M3n.xk=ѹjJ%iX@p[h!N%HS4%(o~Jqn֒uW>߄soGӂ~XAL3AK]3N-n#F1S'Lz|7ه<\a'Ϝ#o0w @kTKR.1 _q5N^P<Ct+Ӿ썅c%1 MkJM$X{ӭIM1s2>6MŞ1j]V|n+aԟ \b섾.ǫF8V̊Kُ0g IQ ^bꡫ0K8*E@4g%fzg f\\|3LLgm͔Fn "ѥXּ̜ٝ[%_dlYmMwS*ͨ{O J O@%qʰ  ^IY|& Hؽq=0 8,`y^8W> \)z؉H4Cƹ>MĚWӒo %å-cZڰH(HMh&i^SqS(8D5LY~zw Q5rKG;h;TchnNx_pŸ囹5@C1%3#mSrbwk#aYY@'Ϲem9 0z%p@4BM[+Sz29o$b>[׳ Mwu\]9"Ibp/4/ FNb^qܿ߈mdlP@#OؙܑV6~kP~~%cue"Eeİ|ItHbٗ>bfI_&˙hQk۫ Eu.0D^Fɞ\~2&@^~Gy0IHL:4R1F'iF8 00K[e66N1\*ăR!(<.HeEP O{^bE[NdWr%d'\]QqSL‡[uxqw4ց~"yv87քVŒ` ΓX9:~pIƸjezatp/b\x6؊Cq~2IbRVI߂ltyIA\UZ4<99-J$g7ƒ?Z'~- a/KܑcSyKb:}%0%pyMǁ. 5D026#$ZC`N丳 q[8!ܱwa~}(%h_Ȃ詎b,K#+=.gSqwXB@ n}9+2emgq]=Klx?92280,*R+( 4Ɗ;Ŗ{kܽCpwc:6@)zA`zRiGvZ J۵ ?=#8(n?vϋ&5 "Ƽ@dmR>B.!^L#sjS80ʗl܂C5 uyaYU`_ص0Y{isUJU!^ {݂!T3(4N_N'"ȿ/:p1#ݑ+y_ .N&=@g!MY8|ܒof8$N?S~J[ٗtCm @ɃD7c}4fh.'Њc-H"V-eyt;*ϛx 4ՐQ]Z|ΏaT,KYvp2E*>#\1)+pdhTa;*ϴM>΁)0ǣ=K!'iƢOђ;e*[~O]v%Hw!z45R Pu5|$vXx;{vNnuS_4zR}a 'Ƭ( P*گgK!v* Qmmp}qnd&\3JSdf@D$tR̂예OI'GwWS9 +x*Cŕ_BbVTP 8 /YyjþtaU֝ϤFj܌Q,L|8x3 "5 96p=l WGZYeX=a'K/~YhrpVU4*` @/wժba!ln(u`X5㕻ymmϖ7ٓH)IA\gn>lA]D5CUP,aOwQ5 xu4LIB.ndKjf̀I?Pkg.,.C~*Þ#)Xlٙ(+L}.XwMEq}eG}r9e klPtbhvpZ-ڢ&I2[9STrdYgͽIC؛6ecrZHb>IrE:)Dl8C g5Z4|i}(z}:"b0}Osyq}-?&>O[?:{QLm 5:]"I$4݈`S v֠X,./'ӶӵY&[hZWIM$F}[V:3ɽ^jqZ..+Eq(9UƤEla|j\J, %}p)ͦ+t-G:بJlmy tfmowt` ?ƀtƋXVLIZch,{Q}'vB1OT2&:|ˏ%R"[3W+ނtc.be[}~9knF룈M#Njgtɚ88ldm{Tiqi:Ä` V4kx In}"$LF,:={c ܛ"47Q~҅cL{3S7AWK1s };%ˀUk@?ŊWO(ݵtQ()ep<.V+tqX==7'lp(-{xbvȎoțpӶ&)]#ԜW҇7LXQ[oHUSIE'>;Y;0ˎiQiew41 k^#n>, s ~ř* ۱=\qf@ݎgyL*heNJW7v?qƉ6 VFH3J z\FLLGj-R/fr_JԱ'Vqˌ]%c$ W3swWZW,{8ykSY.Riib=}2G}$~0{7Gox#(lZ"U wk+4ҮeŌoaILcyb$ NOH9)-cݸuN>9.&܎0QU&ap:Lf:s d1/kӏ!@:F$^X^u͏.DuKC-u%TxnAv:n_nw]|QʿodKd\nRPt045əV>u]t'&ԥd{9r%l>E:ȮJ"x*5K@;f Wװּ=ցL$8'1U-OJuRXeNN)b%{eٱzђ@|'k2h bĸ"%mK2hEKS3sf#'2vҨW3#С\'44 Zj*`d NfvУjUɣ*$q, +]UذDnNgh㔎fEǤt.E@'tۏCF%!$$nHNJf'r}A`-"N$8 _,lI0]ʰ@C2;}S0le Ye| &RfΤ9{Sv# eqt"pV$116АG9FOtlb(ba`?314E:u vMͬH9IJ&q)G ԱTc]t:^^T'cdFࢅQn([gGUsQZP蓆[1]Dp3knֽ e N&yuAHJv_%94NvF"D+B:0Th;E( MU3mC4tU8Vuz9<P9ҏsS-Q5w3wy`W8E-r/1nÌpJI`9ǚk/,4џ<>VpY~Dd.jx70X@48' Tj2}Jyǽ#Q453b,$:-oGKP6@ aO=njH7~5em190pCYr{ؚs#fhLIj"gMHdjfL ~|\d?roAd -ɩzf[DDqDі'+5zU) .r~+Ck! {a(ԙux$D#({vպ? hT6& 5S%eV8w1ϴ6;;.w&ΑlAc4m-j;G]Rb:Q8[igS^B2B}q1*TdhYjb1wK^3za$t)Y()P%/rژQ0e>_ ޱgMUоf^}X'/.<z>@'-Q`/N!S5M4Az~9eHTU?tB`rk6 $t3SIQ%q7;^$~o.8:+XI $:~jNY[yRT#mq;Z,m2r7+2QD} '*2}TxTME ߩcJ]uǮմ7TXmA@i}tWvD_c>^."EE0LH4DG<3b)ࢍ\A8^F8X-HSZ26}OJS s_#Ncde{~ s/W1OV%[ڛ댬8 j<މ=w6W|#4~8k"ޤ>buƚv{ݽV*0yҊbOG]?Veq7 i?ܩeVwlZ^=*jY.'nDB:hN;xr3q7疲?Z%KXSuOɑA)un" XIe"AJ8cGZW.Jjgn 8mnWS}:?h&/~8$ و}15C#jʯ =tp`3۱XX֌?EWAzk9<`"Y!kh%m fu?ƛk[=ZTF aĬ}K{81#hu7$-U0)V󘑑$m!(CO)ݱvT3뿇LG@dPB`zǔcz" VI(]  pR $}zߋ1p-F+DZRʶ/ʝF`W QF\.$櫋Vxp&ӯH|CXo:@OKl.gL ȹkIZ W:P~ r@z[bbq={)f|jyɚq=;UmښoU܇%۰9+ʅ߂zH2Z>~H֞Ԉ],vC: Zgaܾer}Ϭ@nB )sBQێܭ$XhpsD)G <3["\ HQE5lDDw)QtZ' 1#@L/~+:*>|"q O˜Ʊq8i R+=G{[KxWF̭<e  b kzS[4ϨB1)L`H =.x;F)^;3FT8$ t\;P\|:c= (eIsi)AbASY;΍['UuW=Ԁŗkc]/vpTPe i*j@y\4ca~<>Bp)Ad |"A"B&"h X?^v[hyv62GgN>ʙ_DT9x</3ßCoq*]{zV\5TP @zZ:)$SCvuo\7 }G<Vb~ Yn~]叀zNGL#j&0-l~lQz)̅8Պrq,<'f=h͊,`e * eIp (1?}tǏ$]JsO6|'Lń<(1ݩUzX)$+&*27D+ C_*uWjb:?|*qjx?3.>tgw޽YX0 KLQl% ~zaܚ7>Bql9v͡x/KR7jѿ0 -hZ=G;<@ 0b6肋^0 T{ڶc0|h<ٶ_NZgno0Vhw$hZK;H@AL_o*\~ 3ЧɰlT( Pw8}v2NZ$u l׆֟ r0M9lwS6g>cNuvYm-uNŭUbw8m|/%̏G8Mxٜ5'`bGYŸN>У!_Hh@݆+*2nqЄp7״bKo2ܟH(!;tjQOFkn]wm)epXu3 YZ=]+NAyoc'Xd@RWV^ބ\|]g]]?Q}=x#c-dU f}!J*KVȣyR)d(j*o OR ƷE *n+x.q Wؘ p%YQis/Px|oBLw4`پn #Q@oLg_n@\MR->"_W _Xsx=dn uq\%|p3O`PeTCƉr$ 8FF~>6ro| <+2(Mۜ(gҏq[U m-.RZO8~.^GP;tqnv|OS&fҏE(לWY')^F_J нFe mF2l 4P=WN曔 -+Dzh*15OTt4x)%"),S)`wKu0O|16?FVx1QoI9b[1qܬQ^ܓ k$y2c$1BӷcEv@}[ӊFNppIT2>;QٵN2brEE^}.aX =`8ePBa轆XQ-pAdoZ`*h9`47@aOey1]c{3j{Pr)}`:𬧘&gR݇ya$F}+Zf4^^n.nx R;ONc;IWnT5u1Qpb0njKu_hUݩtpM$cbD5!JJ-)S1mZêr330f4HpdK⇽$A9}o2ZE=b1{C*Dx !_kW66tj Ôʟ_*qL<@[5/]5;wvDUXʞH1@) qo&n^׸0JSSBʹ{~m+]{:AwV\uYXN5}D{T5'$agm{٦fgWZeSHd]SW.qo![9o瀚%#:jF1)ەMc!te?9wsNojx5'7?ϕe^mpJSܖw|@@J 3.˗O{7̓og.^膷M7(6: 0f/0rK6gH0%!jqP>sڸ?tW/TELZt'q-%&C.Go@R1P"Gc!Y,. p1ǮՀRrAL+p𥳐Vs1Mi8{kQذ~AQT[5\׏„͚oI+eyUlg8麑|D6=H"fl4./x]trS5HN‡>-V3շDd%HrLNe@&$UHIK>Sa;0S-7 |#ayut7^Oi ^+XsbmqB-1aZ[>sA:Ϡ 8Px!0PS;"ɴ R<3 G6crdaps8=yG-Y](ϺT*MEɣ`l@`"H!0+;lU8)=uf'ߣ$zEEW?,~G&KГQJiP^ZCXpv빸{ 0zѯ!JP[sMN%ZHQ&P5Znv1șF&Zhˎ"s^k~}NroZ D<0KC17{:Q2Evz5baZ3ٟgs¦]I&PT1%9PE`nƮc|rNtt J@=awƓOjZ Rtӳt1aiFXM(N/|k+( ~o4_&T9Pfi˚se49*QJPA@#a nI'q.(Cːku}W?m3/H?nRb1ԽJWt,!mJ6`uՈ#4^V(R[AoGR'^GR[§\,qC{sTk@t"y?og;0(ǫ&]]@-0s҃` JW$Ӗ[ѮCF$o7*8 랃Pn[X, 1`j;"o?vU1w4N=g\Gj275+ xBB)b"2e(!˭i5lj\*,mF&=d!Iv-IǪVh r[Ew}T8W!Y(v9 Wz{AQ`7-$O͘(=&|R1M kӠ[> L Vx T˅RsR_aN%:w\& PNvxeM+JD.  چyPѢ+N8>NbpjdZpA[!qE$q ../' ?׌l(E''$wF5䩋9~ >]Н5H q嗆DmԣU7{,BD5h"iJV4[5G{;xCdä%{z65,vBLb|"Q+VT?c=S5A/|-CU/MoTrR/^#c34=>=FjWj#'q-9EIco-&tiɦPQ!D:6.{П˩N4/XΩ]L,Chb;$!Oq8:nXEuxZ4SWxCn1,p].ԼY- rY;sLv5xMYI{C4Qw+ڦ2W_}'H4cu[²H`fk0qL*vft:i1Td v7@^- GwJFGĶ8#hA& j"]V}g! L|U_@2oy|TuBl"lُ1"(e_= 9ߐbsږ*`{x-LT\Jd h}~91K-{\~arfʮ-#]AjBu%M䇾6N-:AbJWJDPB{\p(zm+#WjNGu"Ev/v8@ v)%& , i$3a`=$=Pǝ+u&SnY r^XcF^}5S(-Ñ'յ@z )R̟cMZp,:-1vѲ_lQ5W5;8z`T @\E[:8:°i]L f MܙBp` '_=HK/YgaFr?o"bmNz[Otuv/+gF#C;{A=ʷ Qхx:)*cL+mx~":NdktQ R d'8p{)͗ȑIIָZT<'{A-yaF%Gpa Nf-pr<'5E]%H~x GE=lt(MN4O7SL/3øbQ9ac F4āvSo見W{+D#޷'{y-CQTһF[ޚ@G^_(/s qId /D n9;k?),x-tO=U* Ȣa1XD*_CVb\)"s?r)"= =Ux]ѻ&zkߨޭLldy1l 'eڋ˵_II[c֐@iqaB 1c5֐8Cju̸IVq{,(n3G@df &r_rj_ K5ցC,>T'g4mr%dl WB7o0:EΎ NAγ:3{HP+ wV; 4|Eb ksw6o.g_J >N""Qv|ʸ|%&(`]wDp>d20uwF)=ᯝ<4rЙ}29`nk”p3N D=H]n8vs7 Xo%CpgwGdaȁ m 6P/8iEjA܍6\H+ wj,;-z!:I|F%$,y;.v+y#5R*H0o<,#pPJѤ߾KڜD7-~; !5&|!~!5:yn+T&Y#55OPN۸5c%[>)-teIPw$MqP#up榖T1VGaizмKxi`Z*6C,'ډ>XJ)*Y_Urǹ*m^X`6.$k5%0?m:jrdD+:qX6Z~ణS}+sXe1QNMo% &s5+CB/D“*{sΰ "pS8?˪pV@r`@FOn_@fަ]|ӵocS(;_ TA5iH-pm$W(:yRP2$iM3h3g5n{; :\pPnEd">֊Xź=l0`+tUba&1V;)v A|k; S,ˇM8kA-qHAXb.g܊ǐж=:-S B<&aUh 5ϟR]PCܦ氪>6sq̟hl-M8J.Ӂ±ÕS}&OaMndw N|] 3?w(9/V8T*G|pXb0\t91X~̫[BW,'V!QΛZRQ@ތv:[ELOMJhJ!bu&^-;{*%.gYy`~\!1 իS<=6/6wy,;MP_SqW}ZzTZ;U ; +?4K~ Yvb4's`TJxCwvLi`˅7Rw@}x2I>*geFΕG:L |g}&/ROEPD":CQHC`EӣWpo Â'[昱X΂Ѓ) `%*q; +>'l-8C%ؿ:S]b1GՏeixiLeH{EM]\Ed/\=rq+}+V8$%>H&?n :;ik+KMM"Lp+~ R9H\Ka J](*O ##@.-}`sWݾ,s?2[,yNBƎ$BQH7d$UosTpkDHf]˴3-G,[f=X,3[e py'Xɦh/j&'L?^Mp`>-8UqщYdGƫA",׺ŕ 0RXqcD +ď;P+ Yoڧ:Rѷr\q ~& 7RaL_vCzFK'|@ Uۖ&* k:s8$<Ƕ+CG8.( ٯFˤꋄ;DJ5EGdGpxSPN`j=`Mߧ{@qM:" %fFWCjGH^/7C65N<=vX-rշ3^7d3ꪞFڔM遮 3jK#Hk $=t PqTG"gci_v mqq#=K<]jX:ܱ7'@tLe"%YvI>rdA&*tZrN Ԡþ[o~/pKC=FB.iվlU CYU/lGA2*)N~ tyh'3vݿ|:R3g?@n|K-iI+-#3kAqIM8 2lW,!R%g>W[zl!86BLOK"x_]#D;uן|v$~?3lE.a6dg/i; UvW4!/)!"?sdxzI@O̘ 2wp&gZKro߮k85$#A[j幾Tǔ#%,˹8;JA݌W`!@JJ5nz+a/~u4>? $:E\Woݏ Þ5`Ln31'-r$ nGA@4θ $_s vt{JSGlF*kh';[X[g>K p>o"- {qgCv&ns#cb}r&4/f樑rX%sݥ7mN{=0K^#<ȼ)Nk B¸XEG[bRtl /=Au3P-U`q {Hq6cM,Bme0iYf+Qsca7\Ww=tzd*mSi%}mxy2 }7 W&q}A/d rM=ϸϑ޹-"0ᯍ :wWa5v /axmOL^6_߾Y<5`W|F1&A=Bͷ p(@,On@1D1Rޡ/Y`+MAT g}Y\FC+2OvH y}굆1|_ơ8 /ע6m+1w XvWM@t 9ꈮ:B5Z.ʉ>T%̿Bmxpg`4h|_.Bh\ϣJ<щ LOIX4 3 ;f`mX߄%w3L%|$Ӹ"ѻdaPY Y?XOj:+\1aCi_'vO'ѐ{ W K-{' X:Z;6{`|HʝWlc\dyXqܼ=\(("϶SC("bj3wx?Op)\σE!ni !<jMbe X -y4SXrPDq@?y-(a˫j`K{ԙSxh" \בc"Srw=(Ao%dšPE*X_Γ5$-P[şn{%ANSoGhNz[F2ڔpA:aJ=c9Qe2S8?VDæ"XcD~QEoM9B?@륀=,վDtdyN2{ڟ^!I]7֋fȫqbsN<O#(flZW_BQ7n Ogеn)o4) ave}̫ލR0I숦֙Z8; #1:Lxh-²,XD(Ô>. 6DI <-.1(ZCȰ^eiVx8`1:K{JJOA| &a|R_ف ml@Sq 3 ߅$3v{4eӎۘ7PCxl_Jq8akŒiNe'um($5c7ȹݑ8X{'^jJ L*;JAJ/fZB=S&&9TP!SySzhkhTHE* GaĴ (2_ZfgO,yg ԜR5%ܡZi5o`³ԣ3 MŬt<7ОNEJ2iEсHʣL9a<5]Oe[+q([= ln~4#=(B[ݞ#cղbYS{_ףhaJЁ+W,cG'DwWEG+>bjN?!/N1!_PĭeG*'S; f{Zs[ޖMư$>P㑧v(Y ;`NXcJqwoeo,7dI5&`EE*j4e0 NYS, .r9Ixl+b`!8ϳ\XX[4"~ 5$U[[Lp>n1iܶdشq?iN/NGCv d y[>D|OpnOZ"`0g 8?֘E/ dfѯ!OzhTN`A*R[I0 aшƒ[ib<>{ m,T"cag_87[Ot̤ A0WZv3j̉p}K,6nlW; :7Hc$8+Z5VciP1Dz*H7S;IF`%LPW2eTek)ϴeL!4L]R & +BQ$)"}Z-5j-l^{}CG㹵TEaG䯥3v7lw͂֞AկP~^IwF'%ܴf7ZCo}<<=ȧ͸}0ȧ* 9鮻:܉f\-ukt]h@D6a^/9[;j1<eX9V4*TFi 9GPKuCImkh? ylusmTV) rLp^ZCd_*Ij umr *Q8vڿ'atPW+}3E>3!Y?nHj{\ͫ^n2ӥcs! *H=.i=^evcj@u EtiFi^b^nWBn{su FFo|#^ +ƅ_t#5!EJn GDjI0TVs;`q[Jpr^Zl.M b}<$\hr[eŸS"L. [[<)22m":{SPgSɫ) Z,S/vy|(֠, f2V:R-s{p-b<#!!.ACј09'ԎP*GF Xi]fU*t$|E f !) )f ~w8 WYgNmCK`|'P;ox7ZU3eΗ&1AuW/o{x7D=)ĭQqoUVi4|<'e^ՓNǩM"R*s[e+ \\ɀT].٭Z6 Rذ=gHu+xH^ s߮ˈX tcQ~JG_ߓPGxbgkZ0aֳⷦ2}gPaW'ŝY #ϪF$#椭 fe>i`'ԝB*~T#5~zB&y:|y1E ֩֒B`(cO5טA@ E;K' R޸Ѡ(3bX D8iyL«# y 5C|^ 8#m a[}7 g'&0qbPMa76+PSrbkw-`\LGtw'2[c:BdQGeN{VZCqsaW`=G"~O_C@/5לPY0KjcP-T+QX"c- & fc@DTgOS!ZhZ#O~?}qk|" $#8+cgB' ۸0\࿪.,X"~+5;(UFIk#Bn`E}CE`MwIFj^򓍢줲sڢd@fcs aNR\+A>Gaz7M8XY()%r,./(Dɋg.!TE6 a0մZM -AgX5Wia/ 7Xa d>7;ƘkE(V.|=J$KzJĮ^t+"XD7ΟbI ZAF1ltBHOe: S i4ץOwWrN7GYS$skxp_xL xJE+<nƸZ"Wg=Bwu JJX!%kCbJ-rgV )wH ?:`N(?.hq 7a;Lp*#ϻ2n]~qWkQ12/5E? [1bm VO%w\3ewV@?6b1\jB-ؐ~{c_^g8GeCdM|sb?ppVQ,%ёKΐRuz+iy:#i*^VgE4[~h'S7-Ay$MB+h C|)` {_ڒ dxB>qBBf/6IUtuCDyP uܯ5"^EeeoV|D,FH fłzB_65Ys:9N>uz Rra^BA-%HC n%$!31tGS xk)/5Ť6U^u'9fd4ܛ~1[<%靷Ft _"k6x෇tuPǰ?=K pO⽫ #['Iݖ}R?D1m7v;?ƀẔ~B Ę9Ɩn(aţ8i`Y$,F(Jc$ ԃx\^+TI*2qk/lUݴ;'bGQpGa|@jz!0־?YU :ƉkEFx:I$jv8fo2tިcwݧ1_a@$ Mu{/nbʅG1<chZ8'`<#aQ& X/}xrڇQĈiUɹk3ۭn6)յFXSط/E']R C8q&j' .a圓>)^MhQsؤ۟v6QI^$C Q1b?mddEkQU^NRP֧1B[놕J&,׳"zT r&`iMj Uܲ|1X 0+M8_`vKCX7\&r!qj[_i›p>LBʦO+q^1'䊯nN8+CJ1/O2_K `UFiAΒwQqڈ0w'o@[1vNA3|(&% <{&Ɋ͝/Ub9MvLcbf^5{;и.diaFζA YPRj$tv{=Ykg*ܙ!e1$œI{{D Z9ӇI5D[jKJ6{jRA:>W& ̱K G^ F b6ղ{lwT3~M !(rmHzh)cFKh68F Ak&j\HH9djz>(G6al*grɈ}Qk&i( 5,vYì&٨&/.v,AU6 գ? (t\7l|f=d[dpjm"beQf* kndxeT0'#r ۸ByW#"ZD)9˖gHѤcsc_2DOdW{K+I:?۬+8I>.Ӽlq^vZSo{'l9oV{C`sm"1ƣee VN~}릙 ۤT >[GrdCy%}Dzbg^LSk?Sjv|Eڒt^x&y|MaV$c.v>N<>Y=- xQ78t)U֖ӕx]=4)Rcƺ\!d)tR7 s>H:hp''@ ɛi1} orvVmV [;aA[Zo>cRmBf%ZW~P;rnqO3_dYC U.9:s!d>}>+X>hvC_EjlfjGT&ƽb4:| .O=Ѩ`./͍`\'B*Pu(s7cYpT a,}q4z$@}ޟCG&/ U3 70Xb5%^Ɩ\Okeať0\|;ZժW:2[)_ 3kt._{d/|A^HNQJ'_0W'6/ _pqr6ztiWСq$Bg'vֻ$ ȶoш :7ܻ"~^3}OpUBZyf 7}VNvӫ+av'Ncpju +P**509vK=P~l]Ւ^6RIpC/zr;r9N ȌA"?^u^eQvZ2_@rXxA}IJ6Gr@"(Xzo#.#:1g"qM4I6ޕq;:?2UK~~d'`!g &ōF0j+ ^]ZF W}J(k d ;3c}iM%nϯZĥU.}0(lPsϙ(XiRsE ߨ*QZp _-FO#L&r!ž}L:S&'q`ؓOCG fs-ܲQ<GGd Hf.i! 8OJ(ZFF+!G?T6ێĝp,yn//ڵNVLNd@_k=xai8*w1B<ʆ;ӗ)X~b+^]p^@%m?*!$EVx{% 9'E]7@0 YXv"W&)&׌gs?zlӆ+Dˏ7 'W?.j%C"F(>!DCt!xخy֝sk{֬N/dNk:7T4t2τC6=f"qn"!^ r#tQ] dƨJwiJaF,MZFP%/t'Xuw-!:wp@}< *)i+:nD=X ~l ~K BǗ 'LXK5B}kr#bF"\NOVZ~l0+Q>)4.)hO(!]r4儾T&bpj``pđMv"ԅ z9w+e(U]*2E m}PƐ_~=v :ġ^M.rC5=pP4;k'17Kz >/9Hl\?b)&{@@;:]v c9[rf'Txw/c|1lF wf{gR%S&e:)ۻ̞+&o-m݆G1OBΰS]؛EۿK*k|^,jBٓѹw \#ط݌zVѦytL2@JBstNv y*FuӖLjXb[8H([=-VTss^9>VH녆R{\if qT˱0yO7e˽[6\/'D%I9^mDfV ]{/4hH_UE"ق?fM3z=Q{Oā$(t1q)k(9SYZ`*ۗ:ج+޽A񧵁"B]DrƀJY<$0!wV{`v̾gՃeəS_A|)4,d}0,/95`.f7=h8yLC<WYЉk@w `B:CJhu.݂dPxB_u\6%*[n59 Rz9nhicm$*̧K\Qn?5&)I kc.Nd$}Ѐ!j~gy̦Yp'*w)hש#^C(C_i}֮&)EQ=̊ t r *E}:\%с`Qr'r 1#0p$EFJ{_&PA䡁pưYB{Fq;OHݒ+E~ϻǁ]c-D%lH Bk"t兔]Bx1HUTe~^"{^x.Do9B֘xRƙ-3\QYR  7J QM6 '}sCvGԟ!r *Ya&h^lYj!,ޓsL ތV>UI~ tc$Ddږ`޵\) gqZu$Jݟj\39^d -kkjEtV w]z>(CE?$1SbH~@ڪ픢3,J>KŐBȵ5şw[δ."g吴ݦ\ػK~ Mg>cXoNFv!HV 3%p-[yèRLء1|cmqU>خ w& znH[ qgK5](:BCmzvi/7SpqȔ)^d8L > ) 4)ҩ[pWn¡DcZP@ .l?#'qKuȭ?%n;W!E5pԘهJF"k0W#d)pJsB+ L.q K jZwîj@JWE`!}n葆gK*gC;"C1`6q_Krh_F߱>Uv4t?ViE1X4󐩍OikUl"91XVEb#_pxrq, {jbCp}_7Woߙ e7Eg}'O^_Π<< քcx%Jc8.4q~`+-m Y/vF"O>65fCZNف7'(.qR7"h(`d0NM #)jQt1K{^A@7‘Ps3c$"BhۇpQ,-57d5f\)@UpeV<7pLL(&^dOt[ 9(MoV(EMO$`4\6nCrTgg]\Ft.ijivbjSf,Lm/>d5z°(]P0P2Lk|2(|i*F:ᲄb% hRRajYfrp0//~~^N;{kzOѴ۶/9!|df& $'I<{tUfmd%̨ k@h!0A8O5K 2'Y)V{jLe!Zi a{*ʓ;KkcV/L0Mk \MIuډd燷JIh%I, ~,bJKTLj1:I8^^'U"漞J Eg:ܩ"*Qh'ʜzŗ&]/aRm}PԌF5Js B0 1"QGSK'D XxsH MW3X5Sж+ CkU%_3BkaѶ7ڿH t4ڋ]Hc-ułIfcFIFTWdT!lA]gZ]W Ѯ\+a~l'uHoSx4}AYU/4!@3Nc\dg6!aS[Cg@+fH-`Ujٰe-;[9 }㹺FhV3#׃"^34Na; Yv[ @.y1e]4,e*Iy#kflq?-GN`Srۤ}+o׎*?ISO;0u cQܠU>#|FOCZlZȍxF`; $AҠ4?p3Ynjx ؍zxMvˡ\+%iUb=%>w?JR{*I?9*|L>撍*Elwf5l `^3u5^:[BRJ7(]D~9ј.M7X&#UYR8g(?# >*vt_pbQ[#'Iɋ3/*#,6.4 AEt=zZ=v@,a4WWq|FRaKs|NϴN W^g$˳{>c/B?#dWO)z0_=S@xՓ,Q`_E?ZHR9XJ \ t/v!$h-[O=K n<<|2B ;ɗןS\䄖y~2;Ttr:$KٱBaRE$H7ooI{scj\S$:w(3 O_o1SgXHRVZR[gňWzyl/Pv3] {oo+RA$79 q}1Xw0_ym"AmbifQ`0%.;mdHaʁbՂV)lFPA`Fué7lg\F몌 EI V<{H,W`x/jND1zX>Ģ%ĮSە\wi(聬>W{f@6Eq~FU ^&\MMӽqA*((l1oѢ4AN-I!s3,i׫4a+u=r=)D8`wnEWhͶ:-VJT/= Xu]6:g3թ=h9ua}j<Ow$6GPt)<ՏȺSmQ%QG8:DHR⼐tBj.sT-&"*- 9V+'o{FhKր~s6@&t#=؄֥pva=%xsgD.DMT d`Ģ*GKA_W?f 2|uuM#!;u4m|~#;[ ; b64.O4 DVP03/yPzpF䝲m}a4t5xZ{1:/Q<:ȇg'[G ;CEZrboq467rɋU{f?hͥ<ˀK Fh^$f&^z R܋3:i}Xl.BQP7M䶠>Mee2ӚiG{+Q8d!RR_]rj4CCËwy"bIyP}*1Ruq&~fԩu#*]cRZDڧʞe]op+`ЗѼ^&;hi"*."=qiJbDWY8TI I9)D)1 q '!@<>̜|/U&Z#Q86mJu3l%d*)j g`2ȑāH -ٯ?z*fԶxJgٴM6{kN k?b{JKnnWSV}GwۛbVh^lgP1ۏs~*Z: IheC`Sho]_K &7XNađћr0[) g%`aA }brGpB>C0xڳ_qzXiKnwpoh_ϰE"pyץU#h3=RR.BБ NxFX7շgZ]]z+kafɀeK?@ua6Gܞ覛N*.O \&.#- * K)) , 'rARlX;*vtά.?nVy/@ONq4HD!:M;1m%Y_u#!"hT(I/{e^űܒ0tAJiD>?(R[ F~lk`У)^vv{Q)Ž,g{g>7#[ .vX Ks=FۀvO[= }X\7DE^K%d╲0dʍG#Yר~{@~)` 4Cd @1d4#Ts" ][5T}16ᴹ2rr"h~N:X~c!3Lg,Z"ѿHEa""8a/{,O !vӕC\S|T5VѽLx]H_Acg."wGZVͽCAY‘,tsS o MvbE/IS4w* j:h'X/d wknCrqm$.@.e裾v1\aG ( PZ',ɴopQ{΂xtk\A=zl !]M~Qհuanf} JSV[=v lJ'5o7:P9F@k"m GR 1 ?v#HxdUUbsu7bf^U\cî8{:k8i;+{{^ #0 Z}M{b)+o_ X ?'.I5$i:<vmV/?3uصpSd$E @֢Ylw~ZDvL=bD%0zjcbCu挸Cg8) ɹǥ75T8nү&d䷬&[\BEx-5hS|}_n`J9cc{@d$zl8!e.0~p{F{9 B t5 XCfaX|'k,RcH;kx >4|x{GroW 1uݦð>!XgōNET*Fm71?j7DnZ7x!=QKe-(,wftX}FHM*g>Mcq:XH&/n6GyCB4BT~%ilq_u* a6*DpJz]waR.-PD}ksyXR)p[WJ J[V%-zlޑa32JGx<,+G!t^:8D,/ۛ^jWn8*4ѻ2-)byhwvraM.!x6۳gy"12(.){ytHYOJQuhE`h▩"kQ)"oB8 NNDFhshVUL'%ۯ2p\, t1oMp ,rR0q]`8*H(2 !L Ꞙ1Mi}J.sxXDT2ZV6]9uLCڬ؄&x+UP4u~j̏#R+CC6 Ʋ!s炈hG '4!{)lǓåxȸf Z:,^mO뜬bij0aA͗޲Aָ'Svs[3G0KV_qW`=H* mHO-ak:O佞Tj%Hooҧ 9YJK׽? ٿqUAҠm׈L4鶓8~ۦ+\H{K.S9KagduH&;~xP~!S!Zo!/j$-$uDY?`7HVƒ$v Yp/ldPט ol$=j$DKT;Q/ r;PJS5n$9+W}諭OIx|ke@`ˆ5 haZP o!||̺,^uU:]U{\Z dj =,1ڕ;n5:Uu]E2Y)nk)277}RW&z\]˟Cm˜Vioni63#B8 -ĎxБp'@/qXqJ2: !UIa2ў"yĔMˑ |dnAwHr.̯69#(p%R\u/]x `x`u go)3G hhECFsԙnSiEoOr&sLҫقv9|dw bT̹p JPoJ"<)WP{+l&%1A-+-$19ٹzei[fk  _MW4i^d祕9opY(=2Z9D fCyS4e~8bT lX!o84ѢF^@x+͜s1ySs^kJF{c&}WKĺ~k.Quhϻy]en5$6,PjFN@ ]^@E.[(MXigV3T}4>f0A;@Ԝm/"$Ie?RU-'0+BW&(fA1vV" =0fvo6Y*:3AWggw"f e89ӯ0Q #kB. ' bI`8F@BnÃEmfٛIAɻvZ)u)97A8, v"*L@)or]xSWo0K|`-FU8 >Vz{鴰q$at5c)2gO+v!se0 ~6?^bbs_m&3p^k')Wxy REkOPc=^a1=ڲn|xiyD#Zfi߬ $@F514_k<>y݊Itn;kig\^)[c^fy#9Y?*7H\6~:P Pw9/`:"?{|DedŠ`F#&OIs0hXgkpD3pVB\0EBt6 r_/;"E0m!B=n..o,Cq兙LU*3꠸yH)mu\B}=GAH0./& jhZ\}9qC6,ߔara]=J yqbȅ MU9̽wiB iE~*1]#հZ,I"+um_n^N91"+-~cjf;8 DwB6APԸvqJXü+C8-%Lb~w^bh Ʋ * qF/鯗qf<Ç臭i * ^bCSk5½"k\nAz Q9' <{HΪi[Z (Ny mϗ lZ=ANsA`)1T9)`ypzN?pGOUt\ t]?5l<5qP0 jf,lH[Ia,8edw>:|Bb:thtC2.\t #tx{\l46iS7q( N{OlXY:PO jIG6gJ=4*= Ʋpb4qkdHsoyr6r~8/鼐rP E=[la(n%zp!zonY ׍x׍A}ĭ{9s HKOxQa–W}M_4>m)>c+`\S]j= e˒{aGzacy"̥Yr"R0(hYqÀSn*QWRgD%T W ̂#-~^o9˚c 2Gy1LSԤƄY$"^D*0:KKM\BMh&jTSλ:es$rz8S;i:܋ՀD" fv^-O65ƸOW T^ksnF 0* >P-Y7fAZ;~N(k=?  ;ɏٕ)i#A|􌰡ž>GMשNiTi|_Xc=F=ʟ䲽$Z݌N7wu^n{NbK -ot \=_ 6ӣ*J9=:Ƞ>$vL$ H&hy@0\˄rT\*Xgss,> lܰ4>cn`U:1k#Q|@(?5.3RngL h/^Tb|MfuM{|t!.ooEoB+3w-P5Ǭ^7H2?sQwS`kws Q3ਨ!g9͖GpbG 8؆dT烈zd GqU%?zg=guY6vl9Ŀ} + u)S5/qҒ{yɶ80)M׌WX 8IV8Iܐ$^<4[Ib6z'  $4o_pwkӋ͈2A n=vqnڛ6y.9ͼZ%#Xk\NH[ݑbIL8ؓmCȣ>[;; \\2<4mc.וr+K*HQRդk[W;x2h4Q `D@ePujq_46=o梁 fکz!HMmBoBRd Qe]?}7؟TR_;U u|y*g3Qnq2ni'wdJ5\ÿN u^@I-a-h1n1RQuC} `󵻔yf.a;AqHDߐ!ǀhdƏ'y{?ץdp5ν*E6͆N ̀0q8` _ ^<:fƧ5Vxߒ~&{^F;%ST],2Bfvy6~ =#=SgGpP;r큟-PQ:GڤWlvOb׎ҏ%]u ۖ0خ]/" D.%f`'y4DPBLn v$7I9LʂR[tuwXe}!3'~ofLGΖN2S$"€/@Y*TPSh=H։R12N1je:WV&Ju挕gPT2h"Ϩe;r>{SAv~hp ! (W04q9XIKG- +ri:,[*78A %+Ltaot]ILoP6~y̘6yB!V€1Kq)xgv/)gWݪ`wU?"+)1.IOivz'|kJi]ZDtĪ2#-uibv' T!DѾ 'Xw]J}wvN[O;  @8fDsoͤ(s5xciZtZuL(SQՊ.d+3oo`uXIИs fx;n7՚fFݹj XŻC$5:f$;ZuW$z4bbRc6+9c;Ց\v B FkK*81!z󎕓0ާZ~+C0s W33#~|)T:cⱸ&]R >gbä&K1)gS |BXw}hCT|/^_~P0¹-ߞ?w7t%~mܰ,;(W_!B&/ϴxta6×+4+\|/^6-l2Y(4lZyTla8y~`;%$m1s@?墩g<:% 8c'0V  ClHcE#ݘƠ[3 W4՗gC컼Gzl eM4y)MNJcFά!ZK)sKga߹Lֲ/8=,HBoR=VTP`@{5 h }/^ 86qyy6$c~m {XՏ> 35ݠGb>=##[Hz껔 Wc췼oqwxnka ӗiif~f&i_H2BX+t$q| 78h~v2Ac ?9\bAWhMBdSo<`H#rbX]Tz,-t/iI^ixkܼKb냫SsFQ/0K]"|Y-/MgW;Tid.W L۰g,na^kWP aY:tj[/]E_lN<3_O^g}=Bw]O[SɆ3yX`LhFl!fd-~'ٰ+z; Wev"{oTÚ?b$Q[=x3ڄ,ą -RsltL14Suq`{ \3nh{թ6;$jy^sq$1IZrQj(Sj73e(5N1;Կ>ӕf9y+ ג83m&.V&VyGu5r-}mƑR'TeO2j 8C}2=~PfhMغ;1j⴪Xz!n=BG᠒ n6ZdT4\p6{WgCіv%f f{h.f˚͌]棏2Ut8K(j EcU'&?60$Qg[Fׯ+4G^,Zn,b'q0(d$wvƈnPdJZ ‰):وV'qT`8&-+K AΖKdnui*f?dyJRɒ*di=c9i$־,D~ϛJ)Ckj FC?6:Ɣ.0! 0RGbJkشQѡ, =)&mMkjIk/;~woGT"lY*9o_AlFӺ|׌ ;u7^Xu7 7 ;K/ Y&TT;bmxQO:3J,=\\o (@&I3_PϏɓর)Y&I) 1LWøoOM4>i7֟ l H-׻T'ί>`ɭ6_`~ּ{WE9oZM̼4HTc$*%@kv=[tJI(pJ%}x7gA|D# i}HG?}t2[6LP:C4HKB)f9TO g%qQ.3RǓ#ࠣr{CQإ`>W6d/9t(jc*y=P;W XENG}Z 3W9Qh.|T,hڕ\iX}d䃖_!t~hQSu|r}ȼJ QҠ N*~ᗹ\QQgKpU]2{}?W790fua S6H6RhI):W1jYiqpD+JX枏sqbqdP8 :v~'[@_g;l< 6Wd`V~QoU| {u"xU.#KoֻmWQ=0GjkL*m[ZmF1g1Af9uITUly/gGr بY4T)LJEGG@clJ䞹3wN;f"OQiBu:淒vK*A2@4>kxzyn"޻e(/V/bfVxYbvRˬn@Ou1{(E&S52 lO~IVߺ Pȹ mSv\)7k~dsTfѯ  O@2aT@p1p帜?ޱpw }7NC4%\@q${2xIo`3ձ{~/ nKI*u|BpQC QCS0(G9VL5i跑fI Sݞ>~q[!3eG }ǁTh2?]yōVP+\5&mMz/D1Gdzv8"{yN|.O1cxU|w=`JsnwNvh$41#4|²_dFP1Z*gI vU~qwvL-" T 僉-ZkXF-Fc\ظ,?S7%vF wE# >kL޴C,8_4&{U5#tS47g;gH̗ŀ+)tdeWܾA6sقjq5h_akϽfSnKꚊy6v &u}n<['bl4"bBYrsxKrm'nc(%tJl=,1v7sjWa9Kݭ<<{Jǁu |J(h͡J|$$4O? >Y[IAFb0OxB^6tS+ۓMIEOv?pv.کs.w o"glpsada`9jełlpYVsy;'vORk#i.XJţĚ'zT"aeнr^_ n`3^NJK]%ov>&Zz,jKs[  z|Qw̺ɭP W#`r 1_׮=5ϛ-푓/gNLHaaԬe(Mg4)?~,I_>(}@"w9SΑc #)؋r>^@?u)!{Ҷ䒥=z'#_܏pȬ/zT셁Y+hRo@gs)U+- tcO47ڟW)^=Ѕ L[TKҖKwzd։a"U[^je`7!*"IFb!nJʻ/5H$D=goPб(J+TǩmuJp"؄-]ˉNPyne"T:^wI]p1Lڽfd0ͺ4zsXwY_Ak~5gBBH A^{qUdXoqQ%rKjpI -%!J ]DyM{Zz>+E\@keoamv%:rڄ8VM%^?޴'+Q]"nYԀ /qv*uh 9qE$#]wU85[]D@Ie#0QC;*Mx(U1;SVI4PF-bN:ө@6`Ak I;fW_Ls HɚTHS晔k/!A}*??-I,pdZ_:LiMf6O~$Q\0K6ƾ@'@܌2SQ_56ogfO[m}#%l= @0rb +%Dt?ݞ*6"w,ǥ)Й!\ D? &bE#.Go=lI5X,GKV*s,IvμZWhP\I60CKDκ9Nxgi7jWJul6Ng8t5Hb6Ry zz+#,  YR+,@ٶ\$W%7%ܤ^S/RW3ȪSUؘUzxQ11?4Fܜd'+{0։H$AaYc&\@k 9%^LNhd, a6ēF /L + 8.oȉ$CABHp/M¤16*=,zF,|0}_,OkL8@jzX -凒AQ U61a?q%?l x`!@Dw{9X70Hfx\6iz9ߝ]mo[W P dU1]AtI(|-B DƕAzb~om ^$ mp v<*"hS]EqZ6 YylLhOQu`9疮46<ɚx]g BN?AwwZF 9X*!ӜBK$@X`pH֘:Ew%ZǭzΛC!6 MaS,LN9شYjsDlÕ5 tc mŞU9g+9)a< -ᄻS -u=~eZnd{e΢/mb (?o/zMB 5ŖetLIx@9rY\_uk3{LLXyq(UC }s`(p> Γ́A\k[Er9vջ[# v*!G³o:<1KCEmګl\I5+(V;~9w!UX6{_ f> oѶ]tJ™-1q/IV԰ݟHMlL3k\r/oJ 1RRQc1`ĊqPŮZ£8< 8)l#% ʼ"HkCeh'mj[ssE6)S #r uz' a9]-g.7]2?"KKˠYXS8GZy>aR(vR գ'C+16X+:X~; '}$bǓߦ^~yepa~Uiпҋkv4g.P};-~~F]g؞O*?P~7p$˙8ZOm>~x: W[Ff Z¾lʢ[l%y!bc&3JCiяh͉NE|ʚp24 5| ܟ]G뒛 =8i9),ܥ[+NΪ "ZX.eLjMGla{W6ڐY9R\!|~8AGKqp;6~"zfKiO +;0|UC}9o+L~E h c6NIk}Oѯ`eu{jÀqL-w}nV*Qut1UaEqUP(uP(VaydiRV[?(D\ݓ#C{Vsxo=9m=Gj0ۭq.x<:6SKI;mqtŋ'OXօfcˌ#_j++s-+_N`R&_XaO_==U  R3"# D$kLA yh͗ڙo,s] WQ,=Xճp}#Tmr ^ nΔ+з7avL1~DSRsB~BZ+!=@0FSF( 5X/Ԉ3wyP d^f| {#=D"G{\*$F,i/y> `LM+YD]n5ꩾQ׼פTG?C]C`X#,.M+U~<>I`~n4ێN b"j MtMӐؓZ2¹B< 4,^~\KJ) DuZ?*ILۙqK;TR+$nkCa]`?XxM6xH i.C V$عx~A[Cݑ(#wuE&b?{BpnC11/pƳ#*"8 , USY +E1 ԾsЎh,o )W'lOuwъ9! C)wa2MvMb9Sd+;% 0] *@&dQVnW0"MP~N]aTW^vCtɽ l\`q LM @eP7P\*Fy9@=Nh5~?VyU vj~56elyLQ!jŧV]+^vŚAҒN|YXe4&=AN)mLᅩ ,~Բ/ZmfuԫW}F]  %E-ГW6_פPlSjDڏ byvޟQ7w^Ĭ|kM䠇 ѦUWbѠ9 ѻJ є'b Ąv@cG}Mov b9Wı/*s<˴ u곍Q)M`),f9zAcr66 RIoT.'NJ{po9ցldC [XL6zg \xCmEq-\q#$RDׯV9`:){_R*P:捇zԮk4w rg]!6*/{|% Eբl+@Uh ޤd=xd"RqiW&a#pp!ɵzv{#z><8dQ|9ROUףTjCF>X \ErY@b+;>bì[ESdTd;9-Q6̻j{kuKKLkX)=%vi!o?eq=ü#b0o$Ѳqg'ﮰaJ>3V偀y vw<_Q<^- cHa< |urhמ隹/zZIq}R!@c *ІcI$XaQө9`cPEi-LyC|D'̗?IQ8kXp\$q**߱^fy\p1Tيlo\[pYgM%m AgACÂEoT!VJ"]Q 1f[!^#z; O.L@v4}٣.4oЯ>ж5ǔiGÁ)>Ӝ8оAތ.55V%vD,t0Ӊ*@DP!PAݩ v`UXPX[yu=onk׳A~o]E; f0ly8,5hgt;/:C$H$dP7}> =>NhN}fm2\&@K2Xq Do܊O)\k )e-4`w@kR*i`gQ3U6$T?تm6ALv+p9!Clh ?EV{D6ޓͩxBp68&}Lk^idK'6[0X^ hB`U^Y*s܊gؠ#Ƈ.uķs59^5"!)-z~ǡ@t#s0Fm.)\]d쀩9a4߶$2,Zh c׫i%![/hUix_e[XwlL~bR:4] -Ou@PQMnqb nZB̓ '},w90dBpwT2C PօyMi-].XbIw*Lt>xpDyYBdo!eo{,:""OQ5BucX vS0m"K{ge:0hwZAy_Lt͎LZR9Z"*wcNGGRJGJֺ~'bQ5'%7= F(k;=v,NuIw$[C*>*5>v3`-!e{l\qJ+SQn$]te̷E.|\7E8i&$G1zKE#0Pq<߶n^=́C:Yá!s`[̐wnȘ R8}gI蘒< DLR'|ơMu-!k*S7j8yaSS4} lAr.94<={#iDM?| ;6"X{nPfqHtq p"u;)A-B.. |_Rnnj,k"Q,cc}iE : VG3cW2ۏB3Ǡc#BJToB 3;3`fvo m[hМB݁#dѠ.`'eG$֋CI5IsHyw~,kɈ妎u^zYo7&T%Jr}"off>DIUyDUM.)Nm B3Qw ν{gF9,f'+@udgX%P2D=1~ʮO`7_E2] #î;YI;8{aYG8k0ŠGi;w1z$ٹ)$EZ&珀/`cIoƠl*lvs"qeHb,v`Z`5ׁ#[ohxq属f3fS8Pn?=~!3g`e!rL`؏Ʋ0z㚽uo=j|%2go EW՚zw4:V! KNzèybN|V!HҲQ>$5%SH(WJ70"X7+& J͞GCV^ýxFoG4`r/dbaƗnv [B^s_6+W@TAg.(4t˩>H:eI[0]3Sw8găa * әW]Cַk?TJ;=ݫ*oU٣ZUpRlj"? ߛhWt/<'[PrmNwGW$^sIT0 .)y! ;i  T3[Ntрb t08PΛ 8)rr3hӿEw%baDy R0/^)eձihK65УVYHלrUM5FKa(u˛Ou cv2H{܇ #ɩbkxӠ Ķ4чÒS5țlB HGe8incg rTդ23㮎9 uF`~SE((%v<*9?ϥo&$I LqQW_G=ex߹ :`r9NWu37kJ7ɽQ4x/SDK\N)wUu̺{bV9 Ҕ^9>3oc67RsC,?>R~0Q#^cK;&eG|g`,͑۸Z7u`[}G]b zS=Ln*YT?=`(OҔ~ň;%_%l9"]Jˣj\(^v 燣K|C&J\Tdσ%/ZgPR BIm"DܘmNpF&u|46a!u2NV vp QUH5 o fNY/3+ nU.'9y S sH.sfi^v֎a?\DgeΛ9vc^mWfW$;>_LTFHOD>^}~b>&̒g+U嶱o8뭬K, V1|Fn|)xywfavCbʇr-XPbW} ArUAP#e%ǁMnO&v-H߶izM@s3j̾th.9H)S[Cx#5R}.y#K ?N+PӦ 4D䶹ofhڛ;Ɛu5Sα.o JDd'nR\kB ,sUѝapȮɌ,VYgc6 l̵_{mqL Z"PqYԂYJP<ۣU,\gr~ f'3F5 Vh, (\ p$r8s?noZ=ϼ֚X+ưF{4) 6sfsCsd+nPE@/@a 㛹W#po5 >)^ݢvDCՠw~1A:Hvm8,ŃzϦ)@\vʉ#>Zx(ߖAjd9GF?@ ̓;4߭I;ѻUǐxteTzeoG]BN[ ;I3}vg(QIYi4Iswfq6br0s'B=뱮CPsӅk)> xwr\q E/6moe&j*{NTkZ-I$s:;?TB8@5׏6L E<^kafJy@T6f-JsB y8}X+|s]$MP}+&m &zcK7eLw .4*X^_Fy#wݵW᳙Φ^dI|4n,Tc!ax԰\T^'aJ@ 5;nq(LtXg^t{kiYi_M`?nuAיR7`mB)^P,`*|T9q$!Lk^ $#khDb*ZtR ɛ`}&[Gho@wIż,X{QA?^j/] bsZ3O~|9a/H*m'ʶ $/Y=4(1f i3 wpÉWo+:S֨=`"yʠŸQh܊H _C`oesdo&5| ~tSA޽]iPl[l'QM%{ͻ#U作XpH^-s୔p^-M 5ZZF't=TfM5&c< |eMe eY+m<ͿR}ΈWTDQC0PE+k"Yݨa|pI_jHퟧq%MaZ^+=BCm_YUι(! ID%6f9pl7iQ)4:Ux0m;Wȿ. s@?sWd$[?-;SEBmr60Ha՟A3|buuz$%7zN*eXC нlz56q `"v5Tّ}/bC EzΩe~֩TAn'vǨ-"xgāwe鈊F v)CY[IjtP}/þ"^^Ju70-jۛ Gcs¹y#\Qps#xwn h-˝#7D%$Eъ(eLhaXaw+E!՗9lN@@GZ,'fY}b{,wǟ)~vqGewi\vׅd$Y3.OCUPj3[`U&NQS+feU%81T90H9ֆ-@ hz{U'eUI\qdY+]jVcs+||0ђQ0fTJ)Y/R|zb 5yq?.=xZifGʑσeES5'y䩩~{aRHӨT(CG+LV\%ޣS#|0}LA#w<4g1) PU7rP{vjSm4ces] *s݋Xpq[m,I p%k/K R=L]b;eõd}J3Q:kj,]c_koKw -pQ-[;+ z.Uq|XC-Bv; `FF#nl7e1*Ȃ0YzI6U4Bb^YT){"g6ƅnU뿘MJ~)HxI ~*vFέ4{KD4Si+hTzA]K>v<6+6 j(BzeP|= vn%9nCAjϳZjprw0¥'9g$_@h nߣG |[Kǚ}7QԔF/4>['rwiirf+9&*<RÐ ?TB*+'M]jfˢ2i*f|ڑ+4!{P'uvB0x:8@^wL5!K#a5˥If«}xwx>U a_#}'߼3"!aA Nܵp:X9,ZOCÎ^穖}-=D'msJڑ_[񟿲s*iVPtk.[U(eeqw f6e( f.3ȼ8X`H+=6~yʘ#7z:Ϋvj-q'~^$σ13~\WM!a^SzN^Og˽;>G5tDjB iArޝ߉n|9f.ͮxM֒oHGn^͖T@/LZy6]3O, ^ym\iVR@~}W{P{؆AljKN%&-]0ixX ΎZ)SWv0Klb̒^y T%MArjgŖ, J vV\> NmWQ? 6nT༽|pPBݔ_El-O9vb#y;4-֩[NO}˥H~mk9Z؈Wm$R@a 5 ȝ_brKI cݱ2ɼ9sX0N^ݜbG6h u T\.x7κ;Z\ 0֢}?:f&C #i6q;YpŠ]* 8sFWBm~@$n1mh^.δHM>MoTP"0r9 !f|R꿈=Ʒ;t/.h ;ؿө${]ꞜOl۹QsQ&^uC9FI BLQ[cjk@-J%RLZ{usڎnq NT=6:lM8iճx䚺 lSɩΕ@q;,EyogMI=g'8AfxVv,=!?b=YsX(+g0_,Dy* NX.Q:G~!AuˬXgѦ^pDW{LD:c7*fk`% 7.33:;<5` TBzOw֨G_+Ђt#I~(Q/0( oJIF'bt< V3ޗ:Br:k>Ss8^ lEWW&:c @ZJY7 FOH(6d?pPb}#p/}qtUߖΒ֑m4ڋIv n +ӷPE\iO"o໡5dV9U٥;(T/_q~$Vi>NOfFYߺn]oT3 6Ve0T@ BS rɎ{y-<.Sjd`{@W= $}Ot"DIP$3/u_To,B4 PG'e:ʈT $}-,vzWL~;BWRzf=PRˉB6%ꏹ)~`!f@z(ς5L֪8C j 4"> KN ŖOpr @{Ѱ$(5Y?aZi}jF<-|;7]XuA,:gqvE=5;fbؠCe59U^)"+o#+~OH`,:F'|BYzb>c$G@30HAqB +ƞ#"l0[MbnԝWBbC pL[#h~cA2K>.L;&&,X/Lnj4R "3\µ%XW.`OzuE o$7%Ć'5/ ~'O`+Mٴ[fh8z,29~ .RQtQ`i`UN7rr?<"k'*nMn]O5sIT < /?iꭿX}G* }me4mu{!?}s7d_mQ,@pdKSRw]٭4ɖ; ݰNPa1 ԓ`RIrDY>F~zƢOGJ>)gWp]n '- cʘ\]vy0֍hy 2i ?0;UUb QE@1ci6OIc}0X&]CB@(T\äF" 2ZxI\G.Q4 M^2#3)9[6_KQ:ġi>a۷:4H@ .'9T' @3݌I>Grv^/|?j4h΅7BS8lP Y0c'̴_}O{㩼a Wʓ毺RV^粉zm(?a,s9,[>`n{Hz/ OgVE%0 / n)qRlIh|P7XڕEo$mZ-3p%m:AԎ@\Kn#iP`;.uAmrq$#Zɿ繓aeʀY i#Q{[ Ovs3&C(>_>ajOivwe @1n4 [1e" $>W%-GԆ%"e|Kޓ}Bo[8u~--ʐQkûsl܉ժh:n$HݠnL}}ob&ii P{vcՈֳ* ?[L;KDD]YYWXuif+J>K\괢وLO{@Bb;| H!VooDdKNO<2WHwCɞߔ]zJCI/iSֱ!iyl٩)lՈ-nU͇v$ť3TO7ANl+h,d L`s RkU7%I -45iy:67V4 뗷{hТ /W1d98`9x(01?$=+&ġhbi-8X](&b +7S<.EvR/ʧv[+*mrlyKSn"=rospL~]8n3 Vb7s#p/!{3(BD 8շ.n\Ƌi C6hO:bNIy;#3 FWK=j6Ef&Qx" NOJiV360peOa|KH <*?]w.A-qU;lF\-|uHYy#v0=yq,lv_ !=@ ɩJXX+N^bY's"[f5[>/LuX١Z&P*ܨ J]N,R'Q KL-9k|f:Hm[_ӭ,fp5Ʉm|#[C6%0h *';љxP9x=K̉llVwrimGhyjW VלRqد $Z2u~jc<ƚ@ &Ax_ Hvdxge(OyJe="uӨ zqp$*/nd#5Vڅqijp*j'9'F|Jh&t[}qҦREy]eNQ?hx3 h<̿cu$!u9g5G-}]5ĴN<{zu Jϝnqe du<=JT*G=ۉfGkbkӕ\2A݂ny/x=646;M/TCoi(b|YiSiuEwO x2ծ|IN"*P(+Z=D8YI=xl Z%ORmF%!<͂C_pIrYV3-x@wgL$371ΰT 8B|]GuJtuMIVtflIx }D;6=+I\Jbˤ?[\+yl{I;tmIkzꗜ.pwo49.ޭlW#>>'ĪX/by[F- z~ ]},7s<8pgQSΊ XNİlg.lPMS;l Z(Rv@0zE`m&Lcً:,DQ ,<8Q3;'^i겄,( EJ\:܀пk)[Wˬv誣r2o\:~.ş(,d5|dChS+D*D BZzͯΚDU*M<߲.WnO:SuNd-H~si,ʄQ mi\5-9V kUUō>/p5ZC 'WdV$ V^SjM e  %Q3_ =nmM<ə s +ypDͺzēݪ:$uct #O;cQ 32cXҾ|:pB ]z92}$'DJarE9T #ʼn^!Ѓ4\b\|PWAM8@Nه$;,f\7ԒCW8/N=9.~)@pNj3I g)(^W`\`F./XJ ~ZÊ6r1FVI]B|eC@nfy9Nh(@Ū5o5V_7fb#^ɾz*5Ϛqs2~r&o HCoﶉcZUGnsss{AX`ٖńF:l0Tфi!]3lʆ?b8/0Ͼwckʋ$e ݌Sˀ x;:K_qXWY|nj$Ɔ[ܪVEbk@|Nf0V.'P7|na aç+"/`|xWcH $obÎЈir# fcDgGsN6[RؑFmR;ԉH3X{ukݺzD|W ZoITܺdl_fЩ $܎`''B+˿±I`~ rr1mOiw,ӓIa릺Xu|ϰgIjMI(EY2,kao,ַPՍ/+ccBQBfpk`FfJLJ}g ))jt[.6q ,vi5oT/"ybD סxLi &<=+ J,df|ƁHYphYpn]>R$q3=U W Aԍ eZ4i4kK%!Q>\4%n0 P5sLNd@H#gU+k$7yȊ~YNp|vE˗0[=.i*"ĒFreÕ4w36M FL> sHxG _n!OG{r]~k܀骉:Cԗ6aPkK` _Be/|.!\⯂v~T-^_2onYS2rq-NxBy{e{kq\3IlˆCR?Fվl-F OfPPvmU:BP3UrBůP3Z:t>;U #]Pޚwfvx ;95wB\*eᇷ,s4 hG'alQ`y;x2_R^?tKjWQmc&ngO!n'c9O&CXoxNB–yA*̤!es47=R㞒&MQjsJ &;>`T`bzHU00$&]u:?/ԵX *I~u$D ׭ۅZ!kaeƤY5nìHiϦԯhs`ʯB|_N9&$(O Yqx OCcBW+HC\+N8܆EH2{Lp REb U{&DcFpe2_{B$:a'V/Ǘ? ύ@Qtp00eZ\uۃ< N.9iyO=`׼XE% q\&USL0t,B:W{:*~A12(8uvEzyHQC'*K" xwfΫ0*=@`ꃜq u,}fX.QJ̠hfuosNcf#N R]ju4WEv\\^*uLXQ:#"!ooN դ^M";pMڔ=;uB+{M)pݲqGEwɑ;O>59X=8e̞PRp6i׏H9 qv&R#MNvqˌ=`S_\œPR9O8^#fy4 V3 9)@{ s71)FX1DFT?^ T1#&y\Y#>O:w|SϏHH& Z0z'PyMsښ*.eYDE_|~޼ߗ-$$R3}Xy2"1/ɴp\~3w qNn^HSU°=8!o:nX ksO[v.p<]`f&*տ6Sp3VWDEP?l`l"5cnͽ~Nٷɢ;cTw/(zɆ3o=#x?ȭ4Ϫ7Ĉc4hgwȭF ֎cAmh撘w"JxS&✏@/pqleD+=8^>O{|Z@YlTAxɮȭȒvBDNwBDfCl s<XٷI,Rsυ3F!m}<{h+xj(8K:[4)֥^w bJ[R$R7D~+KUf`rQTȮm)_f$+Mo1g$@^xàwi;@`'APѻВb^]e(jwʝ( zPJ:@^8X>E<HhZߧ%6o^D6_'$l;;) J r9zf0Zuʋ-:J|&*}m>3sVCsWs,닱8rD3 ^qUNGw"j%_ZAC4E waNW\ O;X2;pލ9)Q^K+#`9A}ި*rbإ)ڷol+?rDX-`>8 ښ=#a/fƸmN0sBO1NsI/ɹ=\uvJ.ج8yJ>E :2+GfoAIS @2kڲڔM}5 H\9sO#0&DKqO×a"xh]r oU|=1Z i,Tw e]v wCyo/>>1eYx9`"C. ~FR5iAG|5䔒+Vtߤp9ʯ#83'T1d&#yy!h,p[|S&F᣶Lv$Z1>S|7Xt$kucVϻ A\CylDZ >*s4gO@ZNEX`9 !S~/X9"?v!<j,E@"f=^[`NY*3ٲ. H@6+RHS qRI5ϒT= l@t*;,_,yՂ&Bv.hWA*i_`NdQ-7 oP5cN[sƘ(YEʬnߋ,Zb%C0X_\Z۷~c#tϳT)~_X?ý$<@c_7hթz2" D_I#]IqL|}355}"NyU(iUEvhف5t~زN'pU{P?P5$h'iT %`~Ѹ3ˆ}vՀW\G,sG*΁bSJIg+l"iD&WGͫky$#@P4 bhp}U^q3M5 j,x:d{E^+JhIco~'u8ܮǂ'0b;y/RKfPMǯ_Yr Ӓª(=|(&Hv [#r.ܮoܥ`b!9t$WqS\ܠ= >HVkΠ6$) Pl׆޲Xñ$T޺ݸfjk`A摐iCÙ] AaQ=OzNY/*ۘ"Lj? _=B D3qj$S?G^U~ՙ ur-:^h^oe%\3@@x?8`*[)]3 ea? vR6\:P di㚉o4,P4Ț$IXlsYY&<>mCM2Chg~t`荄Iz);™t  }oHڊ-`ji%16K{f@Qh{L `>> Do5{$?=hzlx9Kݔ~s]Zi?Ċ,.Ѿ.%>٤ ހmTǔs&ϾbczKcA`VQZ@_/\GO1:r? fDWq0f߯+>ުd!E=ʰ}Xa@0C.Y]8[QuLv,)"_=mVPq/ ;)"{'% !0KM%dۃ:ݮ-TrG;Kч< dq|t% s-9;n*0hf(̈́Ͽ#ܿ7Q"; B 񲼸{T>n.b?${o&Q,WrȢ9k}Akte/! J)Vj]ۧ+hHb*^ci J+uqBن"O{ZS@@lV34GQżj*,HukGXݱ`Gg6)re!1TEuQA+9qb)׈`x M!LM&2ۺ"Eb&<GkQpiy)>~b$WyWr'&!wP>~,˙$sǵ崮@xPI]@K') QA~;=^՞ˆA]XOhW@i2&%"<ᣗ8U*m-1V%Cܢ usyz5|ܭ)U895h-!A (iC-vGŪGe蔽A8369: 4Ep]M9a6u qFN\ ^a2 .1eGR@sB$Y|<,D I [9z?;;?a/Fz f2nğ_B-GH 5]˽0 5Yޥvnxd9v^yMА_*{"jhOx7Yyh>nU'+D$ܬxA9aMF *Zodx1Y6Kn+3Q Dm+0ӣpEh+|`7y~ jL &$p &Q׼a%NBXP65$D腳"~șsc恬v8F0`-qdh00 r#^9s{Nw7W!!z+_۝@픠P8H"ץ=p!Ԫ4$ ftwW\&5Dd;jR=+y ح"lzl&@>rmn'Zh,!*pV31!:lǏع5ʄאw;cvtޡGiA:{z|eWkHmKg^:{yP4`N\лt7{EJ_בGM# 9;hCP3-Q+U^7a64'&)ta1pZXT"'u ,ɔ1i~%j*@h9Ł]]^& hU;[܄;5;G7vިuPq 0t^jŴE3Kf1m"FvVBkrgg70&|P`gqJbJ@M‚K )ǑԏW==;C×NKg\:(T[Ǽb^\p:ۇ^|]ҷDt=Mʼn v󃺻O97]:|&?0jFv(27%XT+YqncLU9eq`OB0"qU(STu_L2S6Ců-&`;:ɲ"{{"[B59[(bZ]=?ayHAj!4T0  geysA8$@Ov Ga6Rs@W@ Ya>$+T0mc I@JuS)ewNIz`R*O?>-- hD )X^VI54p]pzv,`!k#x #n&±t6'1 h[lk!y:rYx7֮ƀR/̤ kч;C_'T5iU.PX4wv#+ H~dXi64ն4ʫRrVh8xթASB%F/e *'*D&ԗwJ̕a#<R%Mru(9 \Ö*5PH΄24pѮ'slgLT87w*{pn219"zq҈P/h~IG9w+7\qRCf*KG"ŚwNV ?!ŵ*}f)\ g@F@9էߤrzq ܛhbAZ∮.:p7ڶ˶(9p `O s%`<ǜscm\FtQRU{eq+1y eB OV+ƃ[[9Jf/@{6)/\ w?xbԀ*) iZ=ǘ\o]ǬHZn)+ :BVdvp)mւ ՝ہ -역gɽl!+)#1$i@_E3vvj3'gHOqElk<9wҲԐOP!,*%~?>lP8 Eq"3] B*p$ ҷ V'_gF1M]jbnGV #˛-wcEڙB%t\C,naNk͊#MIr.,ǃ4[mzZPqB#8e\n5`tEI9q4j,62{ZBz1/:V j1:F{k:xulڇq"&`C +5kOpe+̷5{f9Rе ύtyr XO}P?on1{VE kcr P"o̩Ck #`њu%PxgqgmκHo5LeQqdPp Jd>>,B,6txGM7:q疛J⟧i&}A5J.)T{S{0Zs'UeslBmT'*|# MmH't J?]?/&l3g2Bidq.3 sUxx:A'cY A cN#v-lA<,m]o{V֛dw϶RfԪzjk@9)ԯ`cp+a:SOW["xҵRFr'ҲNzR'mcRqʬsC g_\ԃ|ݡry!T*f+kVlr|'6g-U&nc&[{_6I/oM5֪ڈ79Imux \pOJ:!L,v37js܂ɭ+ٸ9o+wYOQޞڰ1YF̋^mzGǿ~`. 3 2d?}ׁYͿ>+ȩ^*A0ƚF:q+=tv[1OIi #=*rQo<4z.GNA5Fwk2}w#V*,u`~0P(8d4VqM 0UjXpOۄj/򚰠`:ШrֹQ_ ǚN?ڬ?t }̊r8Wgf96,= B XUX.}˫Q ϓ pOo./h4]~ff4l oʯFo |R3{MΧjA]CaNe c!RE:ЁB>%aÞ8DVWGD| /ĂzAcZXo`UV|"`GK&ͅë\:Eye͋6*:CV\CIm*SWz)# Ye ,S9=ViX[IO/8 זʕqI?\atLfDrZ"4ma^>6{xYgf5Uf4tu"$% 9xHaj/ UcmD#k)@\_ 8,r} GA*uqF{P[YswXrV#d2X*Q3&93ir"41?y4L- M68{nΣxH_nyOUO0&0ý}Y\|@`%5 GFzcD7Bɼn7ҌtN]藱ߒ݌ 3o~cv}ъ"쯣|(: He)iհ(^z$s%PR8tz[UqlI` &l6P4<)ꙡs3H,σ6FSLd N!  Ɂn-L~0X3 zYb9#n'< 0 j5ɍvX w Tt+`v BBؿUe1q*X%) 9:XٟOtPT~zGjɞt_D e1ԇDac;`%D<MeVA`݇7 n -D\/B崩5]%=DV jvR>`zsPtm_.TQnQKEnaud, k!t(|Q'ןcz&Pzab ~y6*Ŭ.3|gCۛ<}bDO AO.TTM|Ya刔ًhI4Lf(˼,yo:Iڮyn@KC䳖do?G~+\wMںu/9y%jR[\F&+О C/f=F<_FqڏR蓎K $V }2bQ$kAzx-1eLy}.^c7 )bÄfECM5Q“ŭe KCdiu hVk&;vb`FY36f~tӰEʎe kK46 YE,T::ϛff<n!*mןܜ<7}R?ӧT+x67;w1NvF ,wUl5b8!5Zm ،[*V\4ё@wa(# H3_|*KTSfݒW9 - ?ᑸPw۞m ~Tp@'`AD 7whB9٤KO .A27J "&N|5tױnWIoh/5t1?9r%ӐKa(n74hjH %Ai~obaagůTz4z+0GUC-oZ'`o e29CPȃ 9hp|Hl{I-Z5Ѵ~Pm,s dx }h0NW6+E@D ë.y<5vI\2Fp,vZ]~ND"B>#e{r]nG*62 st"o_%>2?qsH c2=Q1װPqLa_Y(@ć?7Z,eBr7cryxncMQZ(DQjV;?Q\8#/|lNHe+9垣O>ڢ%hkAM9\_ 41:>>"!Hra薟@XtĈ=98kgCGvWBJ~'r.ho3 LBPDsRøLz9P>aq0nu#Px^XYlα;?Y9{BBWP)όޯJR2{]$U;_$0⅒6-EB%Q]=Q%2a6x|:B jcբx8._XXx77й5ßw#D~}'i9>Lhg03-nBȲvxƞQ)nr}NlSr\|U :iY#eVɞ` $(-'?aMW~P* gDG3i  Ȓ~33KR]'X$ 6?-iP̕e&W GE}i&VrOҮZgDYPSſk!VB  bYGG(fX8Tb~߸U󋆮So.^?%XX%A)|)XP`H>Oћr+ty~DbrX^mOBȚl '"_0Qp%&,aboڡU^!54;VG,"W-". !To.$ogt].V_WUGsWFXOL9 xtP&mC lN ͵5np< `yxmْP&{MsۇWEA_ 2obb:i~9B;aLر , v? LdY4 hZDz+ }bp5 1lSK\<LkE#}r/om=Zq)\MJ柭,Ag3@d9o,Q _Ϊ 2BMg=M {Xɽ'wL4jsҌ쇾!c>Sm#t@rL~ ͱ]z}-97 uεhq,(W8 榥+ʎExю39<6r7& ժLw}>A]2L<t\W!?]G&Lㆺ^?jPD]{C6iX߰o<< uKy3֔#G5KWW" $ EU?VJʹDuh_D@&϶l-ԳAI?Bw'jT@dc:{(*  4 hU(4QIQrNSIRGimia}zB2{_.~v>PĽb \dlH,e)/_c.Z nΟ,2"Jq-̷l:K1!Zq /%6{@=5qdr+岍Gvx:Ck!qw<)h)=űut%kBٯ5`KVNn ,k,@c脎V cNڂ|g.4xIP+FsV|-n;TdǓ{%!oc#2k*ϣ"\}E*#nTlhx[Y f4ٰ)$ύkGCVY'SrQCPzŅ! =0ӊʂ/wӫY'')}HhV0;ĽAca0 $Bi@Eo(謝ʃ8&SI7%%8[Hƍ1nEL2Nj؃ARRȐL8λn7-bpCIHur(A&6CZqolzOaaL1槞'w܏cjdLA]Tv]E֯ޟY5`vԂ$! Կ)femjA*E#YV0Vl_ߝ j+A,0G_)dR* C.&"S>|Jhwg /-xs-?9í!^$ }Vx _~L0?:w֨w Қ#,\VJuq/j@xawSI-?TW PJ>a9._nǘhd%܋/B55*M74hyG uVHB%sof {4O :~w,:f-﹐Q1V`pż\ɾ[WGu;^ٲxd5:JUuVs͎yqDWC{uѮɡ'$Poxyᢷ|vok\'y@5&vx Rمwk94n7S|]Y`D.Ⱦ\,0PL3WIh-VҍY4|Uв-^1I>Pj.NB-/7K;7tT2y` hdy$2A"?V`:K\̩H8ctdeI[,cOYڊ/BUo?n}=d`DZkt7c% gS sh+Gg/ iӁ5ʍ֊(،X*YmhI?j1 \3EӬުT}Nx""R=KچMRJ| ԥB'yMрL#ڡO̓zC nud|x껟=:^BeUZP"b!85%U;VpUSvIs9o%ŨdmoƤħB;1ݣN{Bir|[;1r RWl Q$˶!9$R l+b+%nj[+_Y6B9As;- F͆Z刡}1{=!dst/b"ry :jԌ^&LCRsVR* א'yӥ13@cc4![T3FDJe;l21D*zJY3k5 JU/FP$:ġ%w]i"ch@ȺŚTV/ԦɊ;NY ^ǬՃ$z A`T(fhӔ{1MBW3N`m:BYݯz]%C7, *!_g2=ov?_QCJYAz)&)yO} 6Y'qJA6p9‚F*^ٛotW_O$C%wSgK.$lF]d.ݸ~v5vdUn$a6rx^yUuBPmY4JlRn2,^181k xZfսW확U6(^ j^MrҼUJXZn*DQnVQ3YCa5r̚y9zfE}Kajdj\]>aeW-&鹴x- IscWcit6 S"{6 *bSa}E([bA04Fxd&[n9#+dsTtpcmIdfnA `Bbl/\oM4T5^21yTe{*gP~e8LPbj ay5bKOIM}S5W%@  !dtǜB%G6u+[VHTsE, 5 a)ďtr3 ^$n߈He43 --d{\>mO;D$%h=Y.{ǃ( mVEd\OnA/ltDo8u1EQ O|8n:s9 DEF 3ny*g  p-`^\lSMItNjm9M@2eGr,RI??5Tu)bίIx#<~shKgAhE2>g[IRW4al(=)Zo5"|hI?Ż8uϊfGYQ8 1 ?eXSɼ|:LekۭV[ڴj ?L G&k(hցR3-tr7+?P[7,H5Hzڝo5Sgw*Jqc6xfX!-.TSqIJQ':6ӭHtWJ` N<iXvz&kٮkU%և*8xY,,LI柤P>:Ek_EMΟo (/hӌIћL㢬K]շΖˌM02XȰO!1ɭ P}M-DC8[#uvČ5yc`SOb_jW#OrYi^󋮉ΦUZDjMh72a #R[Z!'/Q||8^3_Ep흢ohk]C\^mW,M7fi.CY "Ga_Y߅1`5OOOoR%H%E~5oy;gAzy`i}K8pFwB]wYˌ޽JU ذƓstJF 5eF_\%`-/zc#ZG'T'*Z*J:žN";Rh;w('0y=YkZ᧖GZ :< Xlk2;d}Ff2mTJ+, oж#ĐR[3Ux\^0"PrO88U^⢞kb@Ze)}#i h9ɀ?򳟴-(ܺ3Ko,BQ҇[ԅ'Ԇ;ld @uyL#j[10UYӦ Kz0ǟ dz}EN;𶱸t?թ=W J (?좞{Evw>檴scx١SA u'i;3clq& w}gm(5}V"j8S{ nAU7!p8t):W5t#2ʳIӃT[4Fo*:2bbUMiA 0\~HIJ=qNj B J w/-ecKcFC{G@fVN^]_Un <]GH nl@MaV-cf7`)@``07bKRaeS_c ?SY/a$ہ!E1 m,pA)NIyYY@'8$X xROeIzQ%5} %d[>Ls˚R Qd9*BHI9eBQXr8֝'&a< Lx<I=VBdy|.Wl,Rݵק;sXfRqe5Y]3\ [X'i!,g~M) 7Oyb;REF>gT+od֝6c=aH@T-9~ 2Ӟf>`?z5^ 8Taw۸L]&%}2@qGz ;3:|2{#+XYd0jZ*]/=D Chc`f-w\dR`B֩%0V"V{,7([Yp6+ oGMqezkz($9+C}N68Lo .ނKۃ$#*=}f?էdpUKh2 ;V$5;@ԘsPkɕR_5lw=? j(y~_WP'#KW406F t|T[9`p#RL4?54Lc`^q2s3y7{!yˠ nQ3-6"mϫ%#A.A_!(@aLC[ jۢtcjr({&VN1EILu^pgcK ۜ\.R68 Q=uҺ_iȸcR: VA'pJivX^nLNYvqO((s;rvFazYmWn{_u湤$1Z|*Ƀb=*ѥ5i\hz= ZtN9>ި5R/F_]Yo`}tguQIx= * yseH^^~y&SiD^2Uת0[ >wkhuZcP[޸}%v< RXWFPpb~TL=!>5{ԩ3|E(wMQW5eE?Epl ۋ(ΥuNV7,%-/&g1_rsfvjb:Dm5 oXe[?(3;XF >y?Q3McES/AcSTE6#~(cYy_d$/P. *PA;eW,z3Yqݱ)1*Gi +ud'O>4ɴ,EfƼZ k[Eg7aԓ;^U%ǒ4+S$:idOP, #ݖHubN?!Σ(r6l؅H齍9L64ڴ#\dNtHu}tN)zZ >^rUbM,T2JKP j4Nbdk_W߅u­M$9jF[?xlonk0dgǞ4Nr38(RL[*^{gJРe4ȿ,B!*zc,W)\B#y>^%ôrL12ɀ?[&:KBD45cP6D%hq*Ϻ |_\ɟr)V/R!7ڰ[4\C@;zλ~RJ q?d#[-vϴTv`?Z[rÁỖ -|LU'QSوZ)K42e_ E|JDp\7c(0Vg՘!LӠxGw^d[xe >ma֡0 +1,wME͆,ŷМ*s+:o =cU:m_V(G_[i&_㒔{sMmj6`+%g%Z`:)Ayg$_SᠴA}AL'ŸVƞۋ!9vAI9d]n5 %I HNyCij`Qx%,NA˖!4}V>ާLQ-sNpaO*)e#eA ps5SYA&&OS,E\qPy/K^,}f71&PV8T:q_grG?755Rǟ F$[?* aPsV<xȾ8ؾHA$IQ%m>QIݟnƋYT'u8!`))+0бT("'U>h -wM ȑ/E6&zݜ l9'gÁTtHfa1__MXͅ`&m*쓡 9+H9 S5d7o3wDAU]O:H۩kk&靼ƾb <1aw>o~eL:Zrryg ⍹cv'C3M1qv7k }6$l ɥ匧vDFB@o&sTr[D-);2Sc[9֖(>QM+ 4sַpE R~@3n`}{P=C!o2W/Mʩ,]9uGi>ωa 4`!sQ`cvGm̊첂A Fl f>c4, [ -29w1hQ*(:&]9fOҞGAf=3Qpb,.nH`6lqVayhub/n zݿ9U,?;5-ĄJtRTV7Tp ,D+ T ,ej C =̷b?=$~{jQ4AxDȪZ!}Sg1~ L~n6[P'ݝ.H2׸^"]~cFK?rpxJ*R q;eMqfeB ?) ]MGrJ ƾ{6sSTO)RiF-87'ME KPAje3H <,/ϴA,±Z *ЦNVAl<-]Dbtā>itR pyuY3V80mIo\N;ϩ+ <6 3>ra1c(oN-Oj4ï~AHn.EOɓEٝ9-ɲ1 ~\y盠<DكT7'rU]t'piM@pu,狧 R(_+ }@ФHl'̌:bZ"Gץ5;.Ѡ):Dh+m IIͽ4c֐6"9ke'tc 2#Cmnnk5bڨASm|") XM5ݚ Ё$H<=5ڥaGDFx9_ȵ.%~b$<$3~¾ ̶@wwu(?UKh)nt WdGgt3W"=HJ$SR{ֽ\!н1- aCyP_uRM7~(<]1T9DiXxbْ<# ä́uÆG>(W#Y0ŷ~čq`uLv0"hdPxcB:Ro &8"<8Gv\NG:jy:brͳj.YH0 =a$_&0w>0* h&-Jut# s&o6ٷ*C9y?uz!yӲ|"ak3@u4!V :F:(߀)"i~pe^Mw&zI5wM _@s2U)J))yyN2{!YoYxx{/[a؀oք]:a;myԼU݅58 waz#N_Zj K Xtk9@srx:T#vQ];/*=uF)T4Cf3ӏC6cpa.(r<5JZTƗUӛBVgS<+G@:,tl@]N?'o20/T6G_ުP@퀫D,t‮K#^ȠIEim /?ev`mzJ7-1WҶ$w(ި5+*j Z ecB٬F{>\8S$ ?7/ZybQWEVHmOwFlnKI "4| `o(Y3ZƲC gcGfQw⑞83e#as_X1Y n 'aeX[هOnDv l[+VבV@C݈Ub&kA`Xɻ ò4GH]|Kc)Y 9%EݿC>3jlݵp[3G(CV8kT,?5Y뜻ՐЗodj9`CۤhV] -:m1xKA$k*OpN)z?X=6fNxJ9,@8کa0f_#"=gb#OȅVդi<_ 2oۄpp!3+ݲVfa8]2ўz7nOĖ A2jXs@vZamms_qU83f՜l=;B-RLm_: ]F(B$AbD3z*eQJ~4n0OW553|i._* r`vbfgIY @1w{W$O-9TR [{ {ΚϜmh\/QbrsyPyf BcR_=[>*~1BʊLXlȖҵ Z 9uvżrh_NW`KTڧ&%Q5P=cK/ZΩ u)m):Kdƌ}G5SdiX:sBKL)&e5>ٔ1`ܼ2^, %dG*Ou0CB%0}GRZj4VQ@1 >{mT)?ЮJ*dWBSr@3]8d5G2$:`uy3#Yw3HHx<(aPC\\\=Rhkr q/JDS~NvtЙ&8_'Hp=xBW ~&,#R<=ŔR9g͡r>ֻ5X8`v.;1b= OS6[1f]UHueѡoj:2"~I4Q,>V>YxK/$N]UPֲs6e$(`:$yO9{OS8zei<[Y?:hyZ{}S6\k݊. F[4'EZdiܦyEJ"aM~'&Xe`%ky7eEld~W M@[ _TRIw~??jw5BfF5#h!dmlz:ade)/p I9E="{G=N\yE4qV cCG R2xzci5hkG[@RR,t%IbakVz:8GnMQ+L F#ߣ/z\`B,cE(KKVl5 fJXi 0PXA8 }Ic"6u̶$]h%=م^&k; ´UCU!f;ndd/?9B2`v}#)$J4XMq\D%9v7^g讲#1*vnE :9ϖ.Zp&_CH=bPf(z~Vje܄@$i Pni7S,3 $mK"\xŚ̗\L$ȑrLQ٧*pfac(DXSU\~w\PaN4n} (sڴ= Yd҄!fJ2247$KS =犞.^NjV\-7'0J fNjqDM#⸃0A\ך2eXS|Ϫ/Ps\g+exx_sKI< oTG Gԙʊy54 -10a&P(ѱKV_մL_bH8ׇd]×ȸy:YbaȥOA $?wP&@TRͱ_7 Իئ$^d #K>'vĤ0-FY)ZvD_Um.56}ސKR@j'TZx>ӭeZcQer+ޛ``^-'S1~XCvŧZH~!\!HaM1LgD"}. ܺ`ۢAV*YstȗW0ً4zxZEg-A 'cqJ)R;qKbDbc=|>@:%Ց:9)j(dx*;lK yUsֹʌ FhՑ+*EpP,ԉEUze^ KMLebRUFF}2$-%&Ay3O P d!RIASWAdݚh(UnFe8?9)D8Oi#oW.!ߏuQVndZ*4Uyc2'/Z@m{o&9;lH\T4L@S DLt߶6!rˌ8?n `,{'%a1q^/u>D,Wq >>JFIL8H]Z9s}u5O?xܨ[tS R,t_6%jq4*! `". >}϶E e:%V+(mKq?W;}ÞG&25q 扃lҿ2SoJo&IxяHgq^i I  hgo[U7x] X(-tP]c($(@KDp=Jt83LW*8Z ]2zGZ9ܴbM4rܻ*mzS!?dęv Z]!-{TLBn0آ7ysjXKy=[\ \ Hߏ,A" kJɗ? 7+ymaseI =&l6{3_Xe `^8(q =HZEGHwuO(eb  24 L7K=P?_ow)‖)u "VCp6_en ݮ,. j%͎Ng*2]{6{hsH[[< 9^On BoN\+ȗ4Сe[y% PZfxn&&Vw-PwׅٖCGr` XMu'Og[!;C>;_UɠC2޶kͯuzK NzO$ݮ0` g_vm",O&bg Q;ՖX!HO!;!n]r|t:Y7B k yģ1ٷ19>:G ; JO" >Mf!OPbCDey!ʜR&hϴ椾XRgs+W"\6dxs Sma {@"Q:#"o2y0Gʢ=VϚ"/km \U._<WzQ ~}"ca0R`|qQuHRoZ JEӥ}ASW h3=0Nze*2$%RÍ@آg9s* Ғ_+g݁4z{ 2.P7KҌΠ8T$@s /׾][`0hn0B+G$մJc{B2.4I{d`7Z#W˒qm.~D_c4uuUwwRO>5zkNB  n@IB"C>̍ۤ{Rmz>fpd￑h ~#_]iu-?̒ LG6-%|XgǼBQpDJ 0 /hs[ PE 15F(d V}Di4O|ԎpVۦ*y-)PT #b( Eѽg_(AoCBZdMms.Dd_1/C<2x)GׁH }F^_Lۀ٘ j픩;8/S_{Z=HN([T)+G=DΏ1#s|Ch6$|:+Ì\k w'rRCGټ%LJ ߌS&jd3K}+ k'e4}hX6AO9EȀI/cH`GX!Jym +ŜO-h,(΅hXOIZfr;W䦃j tz vV9NH,A'IS|~E{Adv~9rٗ_hjb Čgy%E 5|*Mz*;3JQQ۵g)Sp3x +֏ ѣ|2 ]{U8 :Ѐq0׿s4@3;K<?E{||7 {X^$o8%: 0&9VȌYP>~CL.=Mu.ko'!?\H.jEzd0ʻ buFdK 7o$. A+8~5 ;@-&wؙC ԣʏPBC`N沦CtuoĪ~ McMSzŰeYf,T·.5c 7.R3nH|O@#HQ{KL2^kh(1pahnq]޿xbR\'C.Y) Jk3 fiv=W OQҞ \UjM2B̓.}G_ԥ|o"0iV sU9kS@dJ}H3& M>v3`; &ls=8spTƁc枌gP8bCtyRw#MQfAJO:6' cb?9ZLC5KNC,M鿁id !-^|´Sl+|!2~gWeMkj1l[Bpt&Mm4h(p0RAV_)gȨ.lӂvtB=̟'@GC>` xN|d}YJw\ lctpL=n޾ gQbk'oD ssƅ`#=tߕ%HM'6i-}E$7 ]dz%ato&#>"g 1(`2ה˹U\Ғ $}H D=_c>5-; ?qʭUN޺NPw (%|gr 1bFړEV9򉞙o*d<(%=h4m,R=sf;R*p~ݭ!X ?$_9wښ]7] eBʕ.(8̅b/ ޖ(V%KsԧCK(DGۦDL:s@*+1ӫ g{ ^9[Z7lqtY`e/98Ҷ:%Q2N}d=9*$E./J kk|oifH+Qڸͫ&)m=4NE9?bwhgvLSXLB 82ۏx`7!=xXUC*)ſ#8%3P4"} 5 ~}tk!eȲjRg҂>ݘi7Fm's"<}z LflG$~ybF\$v2cA MRJ.aNO}^ZG џ_D;B0~J8d@K Hԑx([Msފ[Iez:܁xki8KȽazޝZ }6P!NE\(WЩXn ts޾Kn# ~]Pa g_O_INcYQ63=)obu8:8aIAq%3JͲ`58tI*K25@ULRŧ2GOOZÇd¾ 鄏2ch!@JeҾ]R,(Uv:e]qb~f ,!PM!ZIT7V*>)Cd@+6/J //+gAa`,ܹ$|F:K,$U˻Zj9R|ّZ\`9'iiҺWO) Rd ,O&Giu@C?%<6ȏL2}[eZ5)/;,:^hc9 8wܱ ]HBp40\夭2i! JHy}['8ŀ͓*M%I䋝;2l|>ӕcgJxa1Oa L{ gXy3?GV`CҷA:5TJ{ c {ɓ|yu]m2>0ڎN4? 1\ۣCHM.f6A%FAz\@,==b ;Lp "t]NdHf r&Q%H^ad/5: [!fou\IC=DA0,Xio` Ǚpe$c`VjY h٧vNVok(ha~T mFnCdB.|HB9f0*p A&(L.:JSL`9l)yWJ")dQ=?>wM'|}pQ saÜ(>ʘ?0',ES5Z 'v|keᵂ7C̆ܝѤo>G[t;(&iw~kFzR ٓ=6v?`(Y޺==@Ƽ Ae뫱8T<jЗy`s%X_LpsJhIՄ^%1pS!tphӭ:dv|QӍrpvl~Bv.yʥ51FmabK-[Ci">Nsu.j7@#F}ku q"'vm7?ԖTኬ͓Y:K[)YwU:f%u6618c 揁u/_ ^XA7Km6?{JGlHrK]DUwe?`X^7 gw=AHfUC#=z w Il} MVsyE>)pێl5|֫WJ?KuRBI6̡^ WfHXhjF m I+."@me!9+WIJ&0mꐖ֖d؉$(2b -(y^$ AK9M,O0,}wyՏ%*+7noZ$>&k*2rax]k+&s/uNVHy4T&xƍo%fYk.wb[Ze5Lz9'F%)SM/ $hm[ߨ¸g/' ~"Yc? 1mfPD/e7I׺f>+V`pIbu-͕@'>}q߄qQbvVP~ΫwJy&nB755$^aiOw̞m2 }=Z䊣#FIHzxVp[L-B !I5b6o1k JeC]`UqZd0-H] xq1Z2I,EL8nͿP&!-SXjUei<ʶ:DŽ^%?oq,>*}(|5]QtoLU>J{:k"FZ?Ukc[LX?Hj<נ<pw7|*_U1d%EmGaEl[Tv%#NJ)souL7bFha =R(HXOQBV"^3:*•¸+q)^ҕ5\`b#MyÅEgv/AS2:X)ec!laXxuþJTT6.R3kGv<9}q9=vY٤3(Sq[R黟 ZdG =ӱBMڬq $ -l |]ʭd+ǂGNӿQW;=#c F!Й"ύȇ%oYg g_E5D`$ߎ߯')gClH(^8yvǧ?1lW :r>GSqKZbhVvh:%D.Z|7[Ʀ7\8qUzՙ+Yoa- /_ -Óv61eXI0iy_α`4Bj6^_l]~m-se)Z+mgdY7,!L~+2ʐ٧teA.6ٯz,#WU\j9QکW{P#=D 1+j[T;?;XBh_:$ZԼv):@.-y')_nhr~M[gU v5f'[I%uNBla ysBheh\= ̑-rM_|0wpa'FYIk \8\q]J Wt #F_J.K|_i"hpikeZn3@8 uӌ&[%{L¬{FhE& ] _q;sI|4VDÍLv`(G"!|ॿdfK HY/7 YZSZ>2`yMڀe-6@ `dЏXIT>aMbbs _H?vNI.17otQܝͲ ETG8F ~7?&UC_ mMlqXbɺa5>VFC LΉj⇁:}3iJ$ժ<)l^@4i*t|H:(;г|d+,h ]<Y2svat$@< Y/5\ApPT~בF3 )#PhX1>ysXBRJ6=a05ש +wT_MIǠM ]/|Ǝ_ C|%2}wo \J*;v?Ɨ!Ul(JSt{6@w!6ҏv3-;~5*9zE}S#TCiɓJOH1{-'6ſAur LM5φI)=_hU1@'+ ` foS (4hluZv>`M9K =D)."+@ 3}r cEn s [>,Z?&䓉g9qO̔hźOBNk4m)EL ەA@u?j{D16? Zf Pk8}Ƃ: JmV1:*~;mxƗ9&pҐ yο^vv F:-Vm[PS^?Rۉ`R]qyM P@8ۺQLy+u}l1$Z- kwii2}h1ekH ӈ^_TY/! Ռ37ە#8'I 0K<(l -P =}@-b/tvŢ;pH VxV;2C-= `q?2}yo˛|lB1|uAJ)J|8Z~vBDQa>J^?r|n]8Jgޜx^R/gs_eh~ 7Wz6 5R Г|E"D'3;ӎo6(V>]FvTtQm[[<#`l/aA} ᅞ<,tg@VVOt@YT3f$4V(3cj\cY[$:Q+3Y'W\џ>Ԯ_i.8h k>8ܱ-=ƜϣE-tnЈӘԌ]hRUпg3Ʋ=G'Rzb"&OīaCcزdh;jhrs'o K@rk >|7yL:a?h ?<Ҕt|Pq"]w|iTq \^7?*K̾+op*L~Hi[|]#k8}9@?:5\x /Q ͤ}j,>)7J8SC B zQU#,i}c>pK^]`a4WRA}ŰI >$f.ȕ a."K^,R~w-K1EPC@9 ;̛fdF]yg=k%.sMh )m:*MD0P,1PA>E;5b;6`t<=c3\芭nG7D F%Ȭ5 .W2UjSOf MAoֹЇ؞kYf{]-g/Sd\ZX7^7EWdMDfz%F\$t?~ڛ6(,RH d@QEYQ.ov.LB9 CQn; ppaPܳ<,51+}r,EJݦ >&#*݈w#-+RՕVpGd DD (T=#Sz/庴ޮ[ ,@ S(+ڃ>U)^b1iQ2҃>Ww7 6!K2 g`>cR F"S`h!e%֜Q=]0 PK+G ?sNJp\2:㿟R$@eY͸~jǹGjRxXǼGgp IHԒ;դm_;iEp8IM09@HOT$_zL*qX/B PD|[ь-Զ4}9sc!kЅfIO>C-t$[SBs)!/<%`S\I2ES>͐>@˖C؀_Gf)#C4}IS)dDm=cy6FhOkש&&Y&s'G| @,#0-  *A*3ٟZVCl5bAC#Hs経)Z!Ai;ZR=-VcBPSaVwTxq K̔ *X Á?C9PLmݝnrHqݒP+4M`DaR?}![aqB#ӆ|TϗT?&Jԕ~{J+`X`ˍמacXa]J# wz|^ g͞F}0bȲ2l5o&m8趄/ѭʂo~/N佫d Gj0 Z׍D(EhӤr1TN[B !r45"e¼Ef;RIJJ]f9˾ ιBac(㼰%hƓmuPfT¨N7zthh9dDNTOIJQUCJޑ Q$F h9f=Xe4hy3-aE]`12߇J|9RTE ܕ: ̣%XkCY@HxLghr+R 6X"4所W/=rOmD[672ʒ^CBw,$֬jgT U}O2cƏUG@1%cdЪBz[ayxM"R@n?^"1B4>;\`yWXtc?BЬB)-ϫ>"( )XZu 1?'y%"Ws:Z+ g*(7qQ[wByg{࿊}{8cxUt6s'{'Iɏ9U\:kǰJNuǐ׊(0=ěH9Hxø+}$w$8ϼkt8;3.-l1u$u_ju湊nEGd]%;sj,> yk, 2ƔCEe]?Y&ǽݎ_?om]J׃jR9jIk3HD=ppjLVA RS)r -CIU焗 \`YE0(\_3"%]P%`)=S}Nz/ x+,Tnݪa^p{ɗ9Lc*?MWf[trN,"D}WaJo_s=qI\-p(Ӈwn|'o[ҖƼHy 5JF mJm-+Jvp%PMƳc#ME~g4Ts(a)HN}d >IjqӅ`׏:ֲ,dK_ kՙ k {K ptwlMNEBJ8>d` ,uxYM&BrW?;EguYI4'GӶ%x*ޅ:WÍ<h+ 4]58ks3SR^\%'pۛ1jDtUcL<Dqzج귢@QloT_^oEDSKF]2F5 - ՙq aGEݪ:/A1R;V%[ѳmM}aU=?W,PRcxJdHqjIktraOrŦ- tW`%LqL\7:,,ԆWBQ̫݆;inb08@ )#13ށ+%)[Ê 'eA墻@uZa#"$9E+Vx''Bw?{F_+ 8ϖố?LUStIDcjNY\+(_9):zC0;[uץƴ |U49pd6)|gfJk(zlcUu2bcļEgLv*Ir*4LAV9UˠYd'V|P}H il&4ݫ˜6wWO|>U[#t!̘~r2Cn7dz!?|>É)v;[8}u 1wq퇷-TۿG9IV>y!Sa>.4"X Tj{ -gec?ȨWd{4}fz0( &}:@SKwP,U27-YąXdZV||$k04i?tqչ~LNM3j* ܓzD1ɗKaq*AДl~wI$.S$&$K>]JG[JYr&Q{}˜@\*gSZ񎺩02okq"t{]d;P-0) | \x4^_@8TG Z ~w|H-sF(<ޏ\XYh3֯ 旖Hk{Po]ҙȔOzgP?6_piqƠJ uxzSb`+,,85[Q?Y s vҐ},)<jW35,mP# NJc]K>$# dh-GD~P7F_> n]9-G i FŞ\qKHv^U־oK&>P8;TƮ. j*FIͥI5j:̺gF *N@mx{zgLO22" LC;r$OsxMvI,`4#u!SЏfFTx[C~!4B6Cq)(W?6O93U(b|$i&1|Ff9e:1cC!Pƍ z}/qNNڃduj,pNpVi[3QJu'U2r+ҍKӻ4]SF,mz/K)_npi=Xy秤;M;d,;͟kRdy#J;s,Š޿܅,/1d}rXE0 1ɥ+ bܜ'iC!V%@9k3dчSݒ3!M'swNI5 V n6jԩs1ax0]e((LL rɞtN%CACSO|:cI` F~U QXs]ǩّY#b3ḦҪɹN ?oMic|#*S*2&5 vEZ`SSf+P+&t!O)]-So_ؖ *}ؾbzb/b64nj-?_ϩv܍PPcL<kQ^yաb9w w ;=.bLiEz[b\l2VL$ǼvmP/)g zhCza?i"sg ZbX3ߪwPb* ~8ɅT}Zd@1ױ/,ӌMPuZޅ~X.|9w}ˁ{s;͚<,P/PL]Mhs+Jd$P)}!B, D 7!E-2S^X[ִV̛ C[Y,*.iQET4V߼҆@˯>*3|i%(wYtni GEy jGD-1cSQ!)Zw"z&,8ɦfoR&<5P2ā_mQdj<}VȺtq˫tۂ@}XdfFW^ʓ-DH XxIJmuonefOoE+7v}P>hKη\K xPBv^IFE/)o>H񧿻K= fZinsؓ5u+f`q58u7 3tR,Y;{ėwu,DĊ8>,u'9i!ݓMFE=P_iaC2 AnB[mr--.Y~|@KSt/1 JM ö @g/G/w1!:lTBh%B*y)ic%nQ zݿܩ~Y;e7!P2^}o?uKW'6"ूgiͭq;En~#=+8q1ke5b6QăNIfVq #J C&}j0)oB0\uzoĘKGSbEr-pf7ᒳE P(t9;ON$T勑01R"Ng6c;? IZ:RVy&NNW]Ʃ9 aMV~ݓ" wL|%mb@{3jF\N܆lঈ'Gޥ09yؼt{C|{QO[c[uyJJ Aі" ;eGi&%縸KjT5 Uۥ.'ڸ|YB2Õσ&t>҅bœk:A3s"BBx`[&'n H2(8C{+ܬoSDq27/UWM݌[5=g@(>&em!t{3o,8Hш٭BXXRl# p6YR^B1k-m]61/ IBo&>c/qj(뛴%K|R:#A$tO }o#$ HWUS 8sQ#ہ+ғN#3(ź#so}A8FS6âƴL }4;|ӦCվ@+Ę0n盕L0J=J~d"D) 7Vp~;%T;!Q5α#Yw DLlP!@|%+j%-`^B>@KO›OxGԥZ>Tq4E6P;A~TԀ URZζw|v_H3 *M;r ~ `aX   DxaR:*kiqڸ7z4z]IP4j>^;D)p!R]RSC25'tAA+< K% eh-պg˗\ZE?lN)WP[9;NtB*:L-+!] 5+ ?;Rl-nvk[5PJ܏-^yl< xnfKRqT|ش̜{j $<7U_7(2 0+rxsS3x-e&-[ B zrA%F8p:Kڏ72OiQLPԪ55ZDB+-@8/Lb‹{|$e_C&R!^oϑ_pS4NA{{#jmקZEz72Mr8`_A SkΟnq`l)+SX@V *sۮsMDmm0wD1/'O <e]&I8yb/n1ºwE/[Ud9(m͚UEy,Rg5"M-3Rx/-@p4G&ߡ%MoV]?C|ɶEQeo[Ȫdy¦h6e9V_:R<[PBvgB\0 \qVS_lV*U@0h̠oJ5zh3krFY LkXc=&Ec|XNὴ)ùd TC/6b=x)pYJ9*P"}!4{z(VpG}bEmWsTM s]JA`\ JmxqN{ej[l۟LevOE&O{{@ !/JO**9s(=j%XvYfQLlO0ĭΘah\@E`Yغ-I5:*o dތ*. Qpvd"\tc/ d7?ձfLcŭ'aaVFY[ޝw% ZޔPONIK/,d=mέEt'GSX{@v5/: :yD./@ 8&hψ:1pa])5/=NwF$`UvRҀJI9.B3 ~w?M gPXQggQuj4O̥wuh8tָ,+0Ah,C!-I! Nߞq Q1u}$w4?bEI= >IVځf`z4*Іo%%+JD1=VS x\u锱aF&dIz`uVǚD9TAK+P2țO9|Ғ>& .tH4Dd4ա:20¼e,'h/\Ju)5ӑihehI48EC}=[ee\ <[K >p'PH/_+PkO@)"  ='"B֡ie[Z\PTo'Z=QB>02D !ƄuTf=ʙd >cYaBgDݚsNBh\Ewcc2lR<f$nhlz)LW%BkP3aOc@{k^U@S}҅nC4[AV0ZY!Fj/'((Mh>VA :C{TXze;6P.(\2#Da!.U+.)tIy\ WGQBtR[ "* yht:UzQOQs#;.oF4OFE{ZaE00d߰i>@Ps*^5#w?7Oں-M T}2AK7xb}bG>}cmhPFd(8' K_5?G l&Ӫ=nSewl&ʊ)7D‹%ݲYv.'{a"GX0EKDr!@Dl$T{eQX>+9k.ӧp̬窄T2 h}F}iV@M2Դc=Ɋ\<YKL%`rŖbTjKch̹{<==\9?=E]:FjX15Dܻd)-sI*C3D>< _h= *]f3l!pߵIfg;z PB^٬%7|vLr h+kiǸ'/HgE-Oūad\F,IRcKAyK 'w~…?qO#&c-h.+:Dknk: @>W㿛4z_= ^AG0tU6P œS,Yaz ܙkv!8o T4,Q^2v04m/9DT[D3d6^dc*QduK(+H.Sf[u X}Vŷ@{ЗSt"10N?8`B|utW#Rs*# JNUSxLF"8I}29%X}Nk:2xO#ϻ?H"Ĵadd_*pU%Fi Q8J[(N^՛-7ru)~߳K܊$#}cfHd{+fB{2ПťA= ?AJLXf~kGf20L.XQ^g$չwfx0ï ]ɮ!|ÌxIa;g2笁l|ʲ¬D)h3<6#EaJ.L-jP}Rn˲qi6X`Q%vLM%%ѻAw Fg_Bӻ74cwu4")x">pSmm'.8z)>~SèU1"uU#ӂ.{O mN"! IS#Ja8lSޫ{`50Y,i%*3Hӊ[W/h,ufvr JB.#50sg [⠴Spr%EڂA_Y>.U‰i*mDC^]M\bXEYu!X4U&]{Ak?P||N,2i/jeI `0FLH?$OXs Vd[61AprSDX|esejX$ԬfQ#Nπ#ʿk">fLG'&L)y=swrQ Qdk$cDAh/v8YD* 胨;/\7p[v+U(WwTפ^ 13VPg`\:ѬCnaX&m-bK@vanz|Rj@kQzb߅V*eAp;@2t:bD1BcWJ? I#4/6B=[6ʊԄf&^#cX Pm+|vӓ Lÿk eZr2fԒܣzz4 Ϫ~n)Xc^\k另|戽ϥB*Sq#[v4N=n| =('?#.gFR=aӘq i za;%OAjY!W{'Ɛ|`t '8`hm e39SÑLn5'(μN$RM]s)Q?&qN ě_QsM*. C~QvEޔMԴ'O=h=J\>\Ymya;][A-: $'M%WC1*1_>wla١s|TL|~"udWq& zWՒf?gxM^79Fm]W#MļUÞCv` ]ю,#<Q]XD#[ a$3ܚh8E:𶳮WQZzط~Jv]Z5x1(UzH?K~mr4A:Dh~DiFC-O|($9 A!bMY=8Aq[\4rb5C 1DP 5qI2љEg7C$- @)'Tψ}i?@UUl锠\G)6__0݉}te$}>av+t.A8c} $WO,e73-TH:;Hf"}{#!QG:J&vW悹$1Z,lKV]d@%ēӗR|2E@ˀl'Q%Z1ݑ=@bwx\mamvTĔ"!gI 'KN@K/m^زnIDRntj&r|>0:[~.30u]BV%uMR1V?jw7y9$ζ!V]~5G ~U.6j!xUs2e(Vlw~ЄD?Wk6C{0}$9ZI1,\ HQxR%>>ӞK&}M r9mp,d!ؑʹz5Hg׏}Z4@ؒ#,KZie$<hSRd;vpViF_骂"]9VN^d1wtrsj+f ~bwJtow>=!84-㪂Wʐa)Qv1#ܢڊ-ߐZv,"/pN$θ>@ު5 XU%WС2A o \䓅[Sk0vkN˨L^<,KFv ?О68l?<:U/wI 9jze¹Ke\>,+K<:ر\-:veeOYte(TS0o-c޶X-dtikA:Qಃc{CG% y]ދ;mac_qzbXZyA>0EYxdne~əH~1>dEb<0ϰ/qZ ,#JƀGY±nf* ~rut)B%iK6X~𰨶eaGC3(۽'o|= x¢ϿBO:N·_o\{3[R*:kXfyuyP~<Ȫ<޳l|mųԐ?@(^ ޴g*zsr1ZT7@M)a1[F :WKx{d:qTd \&go.9z7΀jlkz@m/.n02gX+Vɜ},ֶ$'-xVN6$%:3v0H7©LcV! n_1*Qf T/K`ӥ8[TA> (ыd=?}g7g=pf` kNE {amf/Y WŮ`OY`-VPgTt˯b^"1=i??9B@p3f>f#V+O ӯ]d60oUcp9*E A{GW..ir)O10eӜؚ /li!ڑ|UW_xG~~/O̱Zg"Zw} lü3Ģ2U<Fa]-;j ȢkŰ]2oWّ:K_>'Ȕ$Y22B]J2qϻ@iLgx.X`Rйȍ+q!sCb.Z \XUE(~tÈ>͛\Ap%rU/4=NϨ!JJm55ۙ+5|^ڹͦnGB񿢀ƻB|jxsoCzloZ$gS]4gNU{QyCf9F2B3{ѽL8 ᚤ2fELßCKY DV% xB>%80lUchdNLR@X3~-*W?E^-_P f@0V 5mX@K|:O/8E:fY8HZpevxUJ>e[7̐[}EAՐqdj+(O戈> nC_\&&S{K~.UfA_.O,XG()4~i1i k!i3tsZ}ZmգִC_lN$ٽ^/)^Z4 Ӽ"񦃕"aUXj#?XsF': r/ў<1H0w@WI-&nkX u{-Rt# `\*S0 56C qiȃVI^N%ʋID[L7U(ٱSC#“'H=Z_]UDl$\Ello9--dP##UZo1y-;bD٨>U[}0tNXGG8\_ߦ20x%$Lb/PoTقUay>e,} reVsa9qi$,F CNO8ا8Cj~e ZZp|{:u%CX6ps nv%{b&h< B_0^m Hz$; n?$%F_~I6J4l9xqz4B aNfJcxWXPB<| :4؝ ơIrq<_Ҏ(j FlgtC%u8doV27\!`/X\e7az86XS;qds$KqGGAIpRE WH?N@wO~*I@\ԧ/ÛulEbFs)4讬EC65b~Un0@4Q "$ Yf ʮ ToM=[^v}y/HVbqafo%J+Awf",r*CaL^onw(qfx  qәP{T"5^d *>C _(⣣urQ wxv ޿ VO⡜{%,56P|>[ӽu~}"a}[fhvHYL@eK9Z Eʮ`Xdv!![~qb7{W\q֜2zz*21=7 WgcL%+{NGVɸP~cU<:'iO ttoi)Nt˞U`ʘPOIEdUR! ^H $ȸ*,*#ib]x&Dkb#6C3AK S &OvM# /lS~6:.,xUP|M;-pfy Mt5E[nIUt*7W&V3O!UNu)r#wL) 0R~=B8ݞ?a,Y0y<~[2IFKXzɝ2G+#B||9j}/uBpI˩g$[Yvt!sX-77bsoޅƵ1{]JhiF3QTp}A/x{׵_)?&Xզb` y2Jv $dS͎wTvJ.4j84Ny>ZSIc dFRޯ(6={W.q,3cMتwUI;9 :J?M ./x1A=')? WM g_ėi k(,ש wTJ`1yշdD|&klN319Ը>E̹F<-D@ȭ$[$( }~2 ϠfI wvQuRo8Oۀ<f F!aR. 84+fD$H>Bjzt%X=@HX&)eS{zkHˤs7%yOS]/}бIg3=Ef|#%L Pfn~RfC>c@2z>MMFYp )KgѸPj5xކsXLQ~V+|"NNlew 褌hF 袙6B.OA^b<u+p`_p/[v͸g $ET]ܧ@'X|E'!ThL '"G^rIT = 4FUHڃpO cϬ'špqD5YN̆wRԙ㊈d.nC6 o1$w tg5@}3g.)G WUs9A) #rlH%z+/G_ZϢ,h`8dk0 z#]H'[u ơ}{/ &~RshZ H {dm(XVt-o*;'_ 0(A0V2Tio\_Q7#dȀ,BbZrb9&V$M1O5sf2ǤXv?sMm㥧&os5yTΒzd4n+l Ew''p܏LDv\x 9ik`JF?kG*K8eB@)=VVZ0?A$݌Ilm2?b"?̡p0N2bucr:5c`ۗ,IϢ *,97%KyCVo .7;"g_#f[h"^poȱT<c\oOWk>x kNU >Cַ'O%NRPa|e'cn3d{=mxMBE UF%r!0+Q?V0;rvu(}:]c A4 *@~z] ;pIJ-kZ `e1054u зt8f}LjT<%w5= ߹z!$z|#3} oôX$bPIM:v 0F͢r]ȐaEDmV_fߗH~2r͑oG98Mz᜹DST78+]6%<i2I%G<\٢ɔkE',I|>'ruqMwz)<{E~#c71\/\ DOF e4JwRAiz Ѐ"]NHEΦA`¯\}jU"eV ɥS祊ƽQJwT߭?=*5^ۑse𧢬a23NCtʱPdub! 1#Bv87}?ˏk[HDmrвr&[˔O!mB{8@:=.˻L`ޅ4J%i#쫂#q W9]x=f:z,Lqۜ$]؅e[.mƃߌmNZ`#u5`~QvBVJ5*Gl$,|mҪbaUPhz_!ojًNۧ yD{ v_jeZaf{ PMp-右sFνh)c̞Yt%j)z6@&@gKŖv]~OWBYFha9It@RsW G.#`|G{{S2V7.'۝'WYXW[a·j8dUq5G Š"k"L Nw"M(k| 7X)P>۾Z=!D fSG6xcb !6 2 l0;z|)K+w2y#Q)H::ö俊)D<IB;^ĻӶe%e0PԹ6<\Euͩ!'L{|ٛ{Hu?~C'(ep77Tiӯ#7ٖ~r!vr\%i S$fw4|j!"k53d487~\ rD }10ľ~::1Sa @2r41;yB5!N{;3s`>Z&?$ScM__ (y!&O;+x,JW@JDtL77V@ubq}ܖM.(GŐFG*1݀_m)jOrLD=3Sf^ߪT)a:{nQE;vtEyUH~ihf\0R"E9]S?xFDbUL3ge:}aE C;d3q, < :6=GI\{琍L2rƾ [dq\*'dɛe n+fll[9(^_\ ܼ0s}֮ⴝA=J=G^wLZMŶb,޺ +$iSB7D%ޤcrV{Bә ᭘hPGzDVB53 /^Y,N*L.9Ϣ0Km9蹞N)/و`։Ѡ?,Tp/"2h7Φs7;(Ki]7ԙ$4M,Aj_i e]cDUgp)J^պ'@ĕ?Z&S]݀rI†F"asVs :a27]*_sN|WO_k3m5RggQ>gvSmW+,#mP!Ťv}{R0fB ;`Q%kܖCt07}%ɧՒK<%`\/ˢQVk_$QC&!܈!vd[I,_N.xxx3ebtpS/([h\.%vOУy97-R\-IF}n:뱄g@ǘ>"!d2ύ=u2 D4 Jn:XcA"JO+$ʊx;o , x0:K&fe럶: /{ֽPa "Rۣ*jJuG; U Y'Y)똥cNۘv b%Q(l.΍.!upᐯH \ͳ]h>PYN 6a.M-U6zWW;&G 8u J.jO̟"C_n<c};!;vz* S {z䋒QmѸBZ%'+FGP"Ley>6]}]<=T ʼGIHE\;:s<+N nM6ax÷ei b ?V$5~.8Ka UM'Le~) -Պjd8Ѣr$9[E*&#C %!aN.$ଧi= Z`L3GM/DIst"x;2מD=d-@xJ5.WV2܎?Lk5`(ܭ~"ػ]$%ش{a.!R(E2vK# Qv4wA,&aliGD⎅DRbQx Nhǩx&?nIIlX^ZFЇ,Xڣ p5I]>j ]kJXoմ'c{P+#_J T+N^@,GYЌc7pͤMK8J#ܛ_-w~Dqqr@xMұc FyQ8o2Qo#T9oC?›B)smjv`B[ϺE(Y $U}=}吿=zJ$į >8v NaoRM[e4l=,q(X*A [hmIgɪz _rGF7c ʯtR]!omsZ 2FET6J߯Ϸ%@G%x*,@WgDwva!/,rʶL<%kiWZh@A]ŸgKL\cFKR4pN:|:~lhqO%J$kmWw .d$kFe钑Ԣ~K`=G `>T ]l cew xw'\jWlF wi2jJڜpBNk1AH z\~[pvȧPǽȖĪQ%v^~3~06hjcW>想y|Gnײ&Ar#LM]%2jɗm ;(R80(rtjSXk5SЁ\/ɡ$ga,ʢ$t-UJp#jXrѼ7Z|E7 [u.qd7F B^5[Ku70bJ:1*/`{ԗ)ar<\*h =u ǯPxJ1.{) }lj}R/eje9_tBlj V$'8jfgZ!oZu> Dߣ MPh1/{)7e*amo.RgFaĚxb] 2̃gIi^u[=h2w׿2%87(6A>Eovvi@S)ii2 }ˋT+p#$gqL>)A5-V7y;- hS; l2_K ~I 0̯-4ȥEEAk8s9Vz<0rODT+DM`SDfn T`9@ ޤY-sQWtoy=OOA>f%؋XF;XL}WnyCEIu;C@U%hlEv4Id (M& CϧFCv#2)s_yILVK#r 4|,\u>4e,Xq&X1>`H[)DrDhL:\m{9An׸غԣyL=?ZDtuͳUw3%餺(%ɹ]:*Ldw"# KMٜ:zy7A5xֻV>DzbjeCtvkrVf$ER#"U26 7tr x󂼚t m+C!xҟѮ `ÿib6y^.N^wտ | \6cV[:R'y[խɩ7oFg^ L)HX!f.F7KmuhDXorpʼR,&9J Da1_!x !:1':r[g=EA@ٔe"YxUΣIGY'A~ͳ[D_H,9V:6:Je+#8dn/@iJ!Fd2?W _,J+s0ڠ3C;˭4Dj)G;wL\եZ>@;35LJbJZO];D?aVs Ba) ‰)r\=Mn'ʚC;1]'|(0ծ%)]>҃`]ZL}* ۴EYa\ $vL!cwt]!]c =M{ϓhbn5+$[`yɉ1Et]EuG& 7oMuy:~kh[.:3id)@:p?電]rP腖\C#q3TU(Yĩ Ii%j\Pd`N;Bn9qNwemf)L^ؗl~t 嶹K_sCZC[z;ݻЖK7J#׶HxfO.+C/yL^DO3d,_$- &CFPKw3Mk>md~ƯA6jWLdEWMe(Q0E,`0lZY+8慠l%^qa m'];tVa^ (8}NO픟$ G?P=`1t߷@1^>#hǚ94,%;et媽J{ȳǠ1,^!e9Bkd0cUS:cZōMxIAbNc!`YǪ3dD&L񓗏 JVD%bÎ-'~rv7> <P]9J{{U:jaOPoPs0S*~Ew!H#YضEU0WiI =!8D]ȱ^d6' ϕ%;gTAGك.ΟFE.C>>>hu㟺\N;yӳw,}z5pʤH'YA=KrcmYuqQĿr#NK yyp O胝6yzN"ަ<"bGR[5X|:mw#jsd< %w:INn1ЅC@oM>r0gϊȗ+ِ r CBnl`*"VwQ9)ιC^LP+;Gi.a lw;IN-bz| E"ukd\S>D4# *N^?f}gpLO'ǻBCB}םuRA'%V" \NSWj|ŭEc{}yYS@:u+-MRA!%j̓GĠRBxBcZTĸ' 5lcuR/#F{m h/)W=N{@}SZIΨvy0&K.[CZϦBR$E#hxin=%oK%O | *J:]XhR>&%$L\~^1 ^ƼZ Vj]hWhz]&5\n/"E۩pF86[L&WΈ6͞ߺ[oO_UbA锚З/:5'A`spy(bML(/aeBP9?0Y"RyƼ5]2EJ f ^{PصG~9T̨9i713Y؍sP*Wp!TO>97AbА <7z #ErO_qa!Jwvp}yO &zc֕쮌 %uY_ԭo.MO4StZNFS8cO[ٜqe(Kz{Ӈ4\uhJ҅yY2736g5 grRz34liq?xQbaiXO(My"Xz1fVȑCJ rݷ X83X}=5B{6'Ey.hRgyA1HpeIie>e-ޏwGQғpw> ,G[0{`;NfSdVgK)]\~j"C~^"WFםw ҃x/Ezlܵ,>?ZK*zEZOiQd1Έ6Z]Pmr4y/YIdkѲb4ztω)x9VɭhK+A# sX*f%5#\X;B/3Z3e_e^߽DȩH3I-MN ;LWTuK3kHbaC ] xF.&p`꣚) '⸇+]軹 ԅ'"Cq %k[,–r"װ2; i䌉"}IeΔ}r.da>O_QGQzzݟUl&$ {a"yL]w{vsV:i;vD8X C @-lWλ|?2*Y z}Yb4NkTRB\DkLA`"fNs#JdI g6t9H,AaM|S^Qɭvc5.qX d@hǭy1Pm(05KJ'i!-97N&)ؑ(&^@4P\ * *6RiCӐ9;~7C9L*J%DVVI3`+_!߳VіzΤ `V% PI Ms?'} Jm7p4ωƁުB$tS]DžGΎ|66Nvm+0Ei46Ht&OT!Vʚ~l=M0<`QH#3U (p2+mxsO煝RX3=Ɂ"Y)ڦ |ƼMŴ[ Q"rz jں=>d42k޽R`h6LwGmSWBX>SH-\&OAvzjTMԾLnvMrq+dVFIBcYI 9J^xD]B;WMwrц肪d:'f(8iz(AH8v_~eW.07I3#]# .qT<j{k2hƲs)$4vDT3cԚ,Xl#jsr\5H.ޜwe!{+А{~sRe%Z2[Zn_IK10ms"hE `!ϒ!w)|Z: 4B'H3 hd1ﱫ_OW ǘ@CC{Fuk"ė>Un.86 ʯEeN}Ya9m۠Du0Ep(B!e1 qe$Ȯn3+[J-Ʈ7V,~ H~92,uCq{ 3=8 ~\B)9\(=$/yx0INl{XsCSI@[D|UE|~I ̌>Ql zj]JpV,!3q9ZY$sCCgr/1Nv!IO8J0D=^,E4ʶR=1p ECH &Ű|d% Fɑ}Ud ץVf~ Iz0=`Ox!ѭB4]T*M@Zԑ9h| 5G['|H"@Q)]!2}+^A3;+gt ^a^ .Yn`j!f70_ր^x&*oE `n IU%*yUrfmP]RA#u`k^75O9ƥ{ DD[ɷb#zAjw^w/Q,´aNqыTɭ.>Mg5%2R""-iC軭]W8J#St!CX7RA|;ޭYW=}|сU&ҳN'+GB}f|(_~']d4+VK& Mveb,ͳ}VV:5nSK;s+AIP6":ŮFcqmW^"$eg&.M3p%u"Ӏ*$Nan.`UT c+(m_m6E^Ff)qdGcg&gϒ;#5- {W+vkNj5W--9:.gJ:A&NSOr$R L̤?_t:Gc] بcHVvJ;HU|;x¹Ug Kf.T5ˎUaE,qRv{x}@/{ 4oN^J-o|mPSwaoilYbïik R+5(,DҁTJ7JDl2_- {m34d 0OgUh!3< C]+NmE@}tq kJ8"48~o70X~G1?/$]%!{6yF= .L[P{0uo2?ĎwM fKHz81] ln(,MVþ-)PbWdkS:ўD3PFeSݛGћ.cCi} x{s:ȄU@` aɝ+P95N+(.]X>ME]!P剰ZA5`k~v-h~U쵥ҮTv,t] ^sbsF 3% r|NhFu'7f +lg&^ o- Cɚtq~wC"޺^54QDM"j<.N6RYs>pCt#&M|˓ Yoe^4G ]zE 9jxEک`R%{G&,8>6X 8"Exj37y+-9b<whVHV@ ] $#6jOaB*5wM™D\!S#V].W0H+, L9ϓ՟ 1Z  2R+umӧ܏29M.;31}rS LpbG~n:6Ѡ [ ,\JkKgP;l+֐(Cux`t2f2W+\.]d@z4]*ha !d %q)o[CZg_V(^FM.&CDwp!llώ8As⭏%͹RHCXO۩ =Ort],v݄T=$mEqy׳ľ1DS}W}4y'xEc1G/QjD x¹飧ڦZY납‚P ӏG*@,¶d;i=UDEY "ܝ[Ӧ-IA%Wȍ@g3kTYzQrIM:ȗAʥJn2 65qXV! EaX“7I>4-P2u0 .~)tQe$DNWd?J-i>$ulEg;~NVk೬U bM; XE'3( QMee<= xF)Wy?mx _ c^ &7"mKSmYjH ` zyUL &ó?b8p״ωV`P0xPVE*Ľ?GM+4a&N~Ʉz]VV~Lb"lîvgiwW=UUdHbD􍶾/r&] %g9qqluT2ѽ*QN_xD9BűDZeeHZeJ/9UnY7? l\{Lҍ _)Q'A"|yc@P:WZDN\gks&C^\L8)հ~L 7Poqԍ8rͥ9g2wU٤#e"moU'e͖T,ҽZ9NQ81{jA@룹ʼnt>9/0z;M‰Lgbdz뺾ګmVQ(y5G7*-Z)&[f9Cم0zK@Y4P4(S*q UchbɩFueˆUQ1[rne-C?ta4XX899XYv16Q]XW勇CyR)Z=7'"="VFX ~( ;:C~CsM͍T̨X4EN([DU2ȀQqMtP1n.y(W6w`2`oq@=]mv$[QeT5rvjN d@gB DvLuBtirš 怹VJ b.xވkv_d8`RQ˱5W_Ƙ⓿bha׽m$pX6⯷dD2[KF_^u3!aF7Dd%Ⱦp]L,w׊jr3OE]ģ2ވ^H&#=!%#b=\%agF Mךe(Imr1YR7y5CK}ngv3֥:u8f2F2r8Grl#X u6:$ĠaP! 2j0LFD%$`J`-=/[8ÞBnOcfE])rm13gM`)O#l j_  Mo4 (G4u|X> (ⱟ,L^_Y$u}<)& 4 ސJ*u%Ź00N=Y!s4 )0<ݾ(l\Wе_NbI,&Q=T!^UzuNQjR&@eǙ%JM+<~~VΠuw6Fa Hr9E_rU͢-jO0-az|ش7L5rhzE@sj2MJoH&v*9Vf; "y+":އ&RBZXp% A/qZ] FX3#j#`)1?xui~VDQaӬ7ِ[frzaSkz4j:DxKdnP2ethWje j7W}toঁsGCro]%zq{Jk8>`8)>jb1x0#)JAh .ɗS s7K3h&4=Ϝl Hq,^vSle9hF\$ώY)ğ{pG s@\_߲kSE+kdjβ0$cL0ē-/>ϔ(< ;d;YtإWsWί^SCXFVLǘk["qPͳ_l'zA}h$曈L3/nT d Lb`@9_[:oTG^H̦>afξn>grէDx÷^3(ǭ:/jeOf܎SwP[~C] uvlEsC"%% (3cd33V$¦Od=@X௨FP֯+@٣2较#dZ]%(>Ylt"r9]!%Y^! 0BwVU Zd.UИى r3wh`ũB)ɏ'?Uuu2ͭ,%|*`Fd;x% Wޗ2b~ v4:?l^j?c˳zg~M\)O6Uѳ%Uc_:8/JC&;p~Oc:[Ij]\/ % +}ixq\\JoIn^s$!P1Fc{Sݭ۔-BDQg q)„4Q 3}BJ#g4~0B_7t/5V1JmPvEʸ6725~Pbob ' wc W;i0vM^Ÿrf C*%Ÿ><^Y-a8 $ R@hEbs8ѿp_27(yɖm.PEXUA䰄o!YC1+tA}S!1ɬGX7e9T L[DLwv OƚK^Пd*J&eҤˌ7SGȺLV[!ϖL7 pȊ8-;$IcfNCM ٕ:-6JQp-Y.7 HW#@J)x_]mdO Pɼ Q+sj蜪@$ΝމxQ쾀B9Rr``[V- \8"p Goa1{:OM5_D;Fh*2"b+>ɶ@a0F3L8J;7\ՇOQӎ7Dz'qX )}64p92&tľXY>;ܦPI턆-hkTaې~őO4!a!Rkk߇Gn\y%7|&Wnvg=d !,ww*%&'`NM}QA::]g 1c̻mt2Aw5[t+_j&oWdWEciδKDvSh-GUdBڍR!@Ѡ!]XΪER8{ͼy)\^__G ?,x!%AoEG~*Wa:zn 93aR(n=LQf O*Qpj4qn.\].|Qf}gAj=eP!:l`ܑXCNUōS #9s2>}wtȖ)uS1yc<_!>6 ~VMcuu\0BG|/LȽMYGȗIsZۻd-q8&OV>?:7rEIO֢Rө/;1KE3^/m4F};Sٓt6.#RzAhDΦb!5;6*,l[婮H')y4%9, I+lSG/>ھb2w<;AVZ-揳;p\.W=k쌤 IK|?$~>{CnZrpd⤩.34 1 А/h]bpz05(m4ݣ )SH {D_MHc2T&atsa`mܨ2s '>+ɮX;H\Zߜ};OJud>S)Qr&(3H}TE&{P 쇾j6ԙ S[ W1hw F{]wQld`ȇ;:xCa-ӤzUzNp zkOBeUE d[*Otj ke NJuɼZ Td{&إZVGP)&zS´@ϔg"xagL nL=_nvB Ĝ;*1|\_N붱--=Ot= [MXd4bW~@x]IU{vbIX ^Q7]q`34JTS~{L^¾Nh㽌q‰N&m QX{קPU5;vaxn#(䧓O9J('iN &1Uwq7ݽB5S_ꯄ -@[\I]`z9FL;^*6RW&"}UnkA)[Z&ېyg]o{5yhifK# %hrKm8jcCA(",prͅ6R\zhlKڛ 5З-6f.5"KRUzXyel$ʏC`w.o+VXokUdW` I1>gC1uGv2jFI#2a~n&;|&yC1AaCu_~I#\kMG +!ƀߧI}Ek?을 z2^W#':T}E=~a-}a5᎟y̓N>kF3]Jle\t[<4M]PgCJE@TcuK%"S-zؔ Kzv[Ր @3~#j6dPlo"XKpa2NzŦ8Xc;0b(Og`A`DD @?"9BR@,Ja=ĽQ̛_XYj:=}`;Ȫ. Z)' qcu=V1~G:{}YOcf[nEzl|O^2rTp=I.Rd慠걹풎 y5xŻOݺXeIr[D&r@4bd͎T~~5s/&qd}ZsoNޒ9Kչ9GT, څ8aQS/aE}:u{^ݲ=ڑOfJ d"I3J4-@~RgxznLժ/@,ȁscd*wi8YV2c s&ɒjvc|ڏ-_=p T]b"!>+3F MFCZ|4\ť\=+n-,e u}u0IHXcр^I^XK֪Mz}ϗ,61Vڢo2Ӵ09^(&zԸFo(R8<^JN}]ҟTM֍zY#q=g>ڥt1D<hb`JjdÜ%DM4CGE&}g@vsq1IUS$ l7\ Ld%Tkۯ9/U>}!ב?|-yE)wVڂ #ȡґdk':$tFVFU3m:\{WeMf/IBwErHZ8'Tu:hoޓaքƓFֺQTbMA ):D 2Txas_mRJ<)K~ړHp{:R)myI؆Y@*n6]鄤9{P7,N/J١@DM3d~g"Tan K](sC>E^Wkt%0ujpLɶ!cZX,5=\|&EJj+ ݢ,:a*=?$`[-=¤_pㅑuPȐE[W#ꪊqV])OV(xH m~yŘ֑/*<(*Bn~fǬWkf5vNc 2X}-ξ@|fJ{g:ޅB@:8߃pjDO*U8xƨ6YcF*](" Ӓa+(Y Z-B-@Ȁ?AUku ./?ޠJ|֒ӂκE}5/]p,x/+B);N{9~}{2qaxK4 ] ǜ!pw+]) Oyq@ $ܚ9x:\{^RHÝaޥDj0-vPSd\jeS=?=5xsJo<H%ųAyP<$9jkij* JhoB[Υf˰?g(d /P&խ8$^7.U9a7-<'$12CaFz ׎-Ԉi]"RFֈ nE;l.J5rM3]JyZ@NVnNL?wϙ*#6tδolw +Sa(":@KAxdX0jƯ_oO}k_JHLJU|]E Og~FR6A0."'Dޛ)o/Ӽr3͍A4C𣥬UeB^ie{\ j7ATC,2epImxA5>׹xh3@RUx]q%j-T=-^hYHs>vƮ}ZTN6/}R/Zpb"J` &{`ᑃ׍5L7nIr~A?)Wg8VHm':O1Ф~?}[<^ !2NT; ,AIui a6G>'˸!oMōBL."* sF$dA+YY) ?YL"F_"\Bhfګ-%!љokRRk}#oHX + r =Dl<"CSyEXB:whWc v-I'܅=p(_։rW,˲ =04%W27Lp f+|:ƹbg5, 7oroȘ3EY(;yf1Yُl@XYY*;B`X7-tOE )$OoyHr]e|Yb>5֖`Y~%BU~6NN -=j>%D]]qrCIxS.3'gꅗ9Q.AQm xos~  +l >{McO2?xZHB-5g 5'+3 1܎-i/ %jICr1Ur MpԦr{oݼ;itpK3X`$ PD[ܔ.V9OHi4+gKN/I^P2ȑϲ|{xLafz-oI^W5rYŚdnĀToK/H!?Qؗ{)Sk讇k4F ys= HA}A<1THNx[W>5Z{46FyqH[YwpsOEJqhd>dп,Z&ƌ9 Nh&ioMRܒ}Y q =I&*p3A*bpWr*f-^+`Lu &&cഩۋܬeqۢ$rBDA9!}ĂhYAcȸoOΣun@d9,qv[wʂRY֚E1f i=mK> VZW첶%,>B7eat9#+(xGX7.΋[o9]  ^1N W/~L9>`)׮9b<Դ}(eOѦfLyc=lU q{4E_Ԉ5멙%SZZN`Cp87CFys%{ykZˊmOswwRD_`uar0 sfl]X]gsqm14-D#0kMg]Dy6ᜃ-9kG(56]L$I(@7Ta䩨Koeݿj^0G]1weX"jp7Č^S;/csq7I2Eal-={&XFy֫%&LZO~2qFJqr1mԊ'ԇl6fZ%h#.KȕtnT*v;ˈ^SW0 cZu),8~x Jvszԋx h fO%R3_Lw~Q:X[?n>5%"<8&6?" 1wN;M G4/aLC%" /PPÞ3ك_~gyt?o.;!yqVAֳB4OΑV_갼c/aڻEN٠ෟ$>T D=z8%mDjEJ+dGWhbrЪݴ@^yR'FDM j&r ,}p9 2r4V:G9[ޯC0g&*]pHqn Ye`n&"s%Iޓ.].pP$ I"H~N2wPY$Q p_Rʾeg<úr:ŕzoj6/͹t\\%sVв^3{ d v,9+.*i'lk{*S\mG͐9DtbpEL;@;&8$2rM^*neI310ҪAm{gN/wΛ`X~QЃʽYf<j8c͜{Q!r.sM}4dH}lGCɭh:u |pa~lB}j_2 |旊{ ˀ|N7u$Ϥt1B擋Pk˭w ,6,QQ!4z3_`OԞ3݊:*FYy+Wnk2d+B}BhI)fafzi#rD]UMA%LЇϷj)[T3Ĕ_WR[Uk5&myknd{r&|,!%xEkB-օ|hFz}a&6=>$ IINCJ,)j $> rܞ~]W}ʀB3﷍_T`g@&;%pbxnWBy >wgna4r[}O-ge&Yem#[w?k!ȱY}$_ϊcv"=5S־etF?TCVr{z37 㨴-(ݛЯ- lz$J p49fcI7C&dd~b;#yHS{i'O\ a0A֒HVo()4>I0(WM#$.A;n;.IPm ~2\\`Ib0ol6Q!L(FϊDx*i>+,\P(<K'X*X4yaH`kHs_ YNS:--,+W[O;ũbĩ8x%|$>%VQKI9GWӨlFA2.bӂ3b Olf*K=1̬WC1l8xH#y%O9:-DK"-#ks(udI` ,A1&He П|Am\Z-e(WHK%%n'%~KbEgCYhɬaY bJ@ά޽u;JcUps]QLb%旻Hz*q?OmDQ5UF^_p*D`!F&@31ry:aՅW*9qJ66U,}C+Qj^j`F}ې$nh[~} _1bb=T)}&UiJePY I?.CJGeCoUxk >M<;lCA)ywĺcHܺ,7Iw|.&.TmU:Y ,+2dVBGgW4y>z ol^s:=9 l`.V׭i->Tu( mڈ^>e33)ƍ<(aĤ1δ0WCeo}*]w7qPIQ\cR%Ok޸"^|+MPM9, ,6JlO /):+ƜE}BM8Hq\Lq':V~ >~ w)LbuB21\L>( lLEjO4qMw^$,&^l#_fL\kfH)n܂\`Gs"!j~(7|:z΢;W 3lir!^&o^=Gf6gJ\jk9S"|krڼ!㩫cO{{jǖWDAVM:,arL"I/߫K/td$,Y"CbLjC]&!٪/;zǷDI5lGo+ ;{Os?!:| l<\mB!pP৖?r Տn-&ʡ7,\NuhvzWd)0yYpl`:N% wJ%C7gi~RJŁҥf&wK9/ ׾5Z蠰,A(ެ|}̻C1}[.,-2YEptsCbU=>>~_1aɕ:&K܁/T:Q^²P"u7FMYXV'B/Dr}둶=#Y[l@U]h%*PO۠ GǖӬ:"V/aҬ>:.9 !NXebֽOmhcEn~.u]u)n%T̉ӎ$ $ܷ|A*=d:U p Ю1xԳ^l# Z.h^@[`I];[T SL|U N)PL؉oy~ !qy >Ly.OM ^cY pSqa:"$8ݤfĀ{ >YDZY,8ʫ+Cѐ,:8PxD}A o|+:Ȋ j v)Kx#{_ip.H-vk&&Wbc Q?9jmrx. 13PF: y#] 9RO0 ZeߎֽNA:Zp&^UW}3!;_SXjHS%lKI"t_5R4η;<6nGP_-s{z#!Y27ЀK㪩~ +ScS檿ڲQ9GR€KT-S\vkg jY6޲bXfp"Hi!xp^OL<~*:}=` %3S!Z-|Y Y.>!r'n1۵l{x'=:4|SFM+Z"Z}@\I4 җ"ANĂ6*Lg"xX䋬xHz"BڪicT%FN) A0s$%NGĺn8N5"pIS/9fL >QRtNwTV5%[R4)6gۅ!0mw孺AB0e^ómDʘTO7)` ◡*ͩSxvX46Pr7DK\f(MQC,TDJY:axFGҝ94EEa >epZYD܏̇r+y;&z2;@[&gHt h- H)an] 黣wzҼ`=-ϐ ~rwEh ݻKAAгB8{ڋ~e%59vU6CneG F=!w_^M-.:gQPߍ@5vW%Jh2606xmئ;Vװr:y|ɣ|Vy H-D Ke'YEEw*w䅽*jV .aAˤ# +'\z [6 c9NC "uTjRjʋt17z:v+9dT5>`]ؑ ^KG`*\&|dz eJJ\O<B`#ك<#H z7 cRB#2JX=,g֌#ZĆ.p_OB'VxBR:E$4Uw'#  @&޽ )ZkvK\9H܃= "V63ޙ[TO] u=UñԟTj7jPi״uƳd t@-t"{-},;PSBě!)輢?!eSE0foĆ븇")V̤XPO&κ g5MɓA&9I{~m~m An+{Xh R*Ǒ w#OX^Iq6ۡVB~BJ|;hdYh S< p4C-h?ib ֵ*l d`\$/l!a6"@轎yhŕ-?dbfl QBr3"O28f +XX'5y{\=h(ZJP?Iayj[DBtJf`23w@3XO1'G~u=%߷?20Nou)Ƴsob ]\7@́qh%|Q;b%<)T WeJK4&{u /=-ORY\2a?5?}+o-AnZW=ͶBM}t1=ܦB*uj?5#vr'`ؚ^vj]1Nye`Z0;o:I+_=Tz8'Ikei%}dF,5/lIy9awυ(x\ ׻g+))+\>JHÖ4hIRRr0.'!~%,cte,[cjہ(<19ki=DJAĝbN `1>LÝ7ȰRJmGPNPW-M߅$a'Զҽɒz;Mه\6iLqj͡5G1s۰I!)etH<7q-W }^g; ԆH2|l)Z%``Ǐ$q2h R`BMU \v;n?IPFv)A&sHpVʹA:MLKKZbQP׼DDvlU2M;.಩1cз0}ަۃ:GjvRjF-+ҮfS^(~3>?6ZfNbؕNP3mzQ>ɡ޿w9w7 L8 -_)8 .!>3}" M@[I#9=O[j%éYz?t!&6UKvv5k58)œ-AÍT #EV>fT蹂cS_/.T{z0yBҕr"dӗ6 dRҐ~eX|_Cah {wE4p–&QWkI,n@1d4(OO5T~x] 5yֲg|09-5a־FlнkqӍ*~ 4:pNJPI#qGUP"CuheMv9p('у-ewR 0}K-"eG0HXD HI-'F;$|A?Kr Zqh>A17ڇjm|ۜ|3/';5tloz3DQNz@m?$_I7-㸓.BZtvi/7"jhR( \;Rh*/D ?f,xSFr!AxFbvy$hMz gL8O1 !YNc)͟EՆE L+ֺK|-y,;g`mt'>EZ7=Y?_eȰ[ SVd6/9PNŭۢ Б)yF5|  ~>wKLfmx$YTL_h:Lh[YsYKM&3fxr2Иq`2{VcDŽTomt\YqI-L<1bC^w#_ 5ޮPc(P*Fظ ZzO9 gw۠ٚ6o9R?W%Lo `/s}iNUJOD!fȍ 틋ӑGv{E=An8Z(4E ȕ*#9TcNOE6MvKaZ*9lA!_[kÐt/dyR!ƒ6xz/&.=/"pN䬡QX/]sO8X,s avP5sW7yg7A߱֩[Q}A&6%GDCjʎf=VnVG9逪VXͅUݬt[3KmB Z ޸9yBֳ٧j^0|YdscvCn Z) G VʬBP@)LVaξ׵.3RH-%*+8?WG:{}J(Ua țve%WWn۞fu}Q* 7%%S3x0S2FIo@Dfgfm }*Q }0r$e&%"1^XyQ\ QVs'^zovma>VuyOvռ(qd^_BLOLG&V#áw {/Hj0,P_RS#/%!kfg2" ]-;,O7LR$obz {φdBˈ#7(Ad^B6t_Q< :̝\QbcRȦAru~'uEī_4RDk}e>tߐ7 _ B/&5W32~i^}ں,~2.a^Ν)c!:TiՒ}ucQܡCb}Fa~ݫ *jM Gg7)s?С#Y1SRw).V38ꮟBs/IwDLoBB;슇@nO}~y 0aãǠ~_\l1yAOW_/3oBJe[K:OǩnQƪ1LZ5d&3^KiȬJ U3}nKN0fpqDd=\S2PcHܐؾe0b ״ow[I1q˧ 8-&g$ S8떥|Ž26j P!':A>QaމCQ|@ we5]AC92AL0E D\j^->d.xP5}Љ>#L }1$+d:Qfk\\f\r3΁j˨2ߵ KuqͨT jU-Ri{nNЅ~1=jGEH(ej,75)m&o n 1lңOs/fDIrP%[?y2@(a ^qo5Is@"}=e"@|!p@S;/yUMU+YKvg9X]GFBa2#pTP~R橱2"g2yNUHsj(|H{Wxy&xuea\ @1í%%z>2+ 6vvWϋR**lY=eƢq]^Im|`…;3+vNe旝o 7穊77P\Cހ[,K=ɉ)/,VRKyyNEpÞ^q/*>ipG.a}#Ao-c'tfpVNŸ) ԍ>zs14ۊ;z]FnX 2hd>s[);(xaD.7{6)5%Ot4zsSmgmd;I> GVCbY4eN\Jx([MZwN e9]Tsa,C^bs3сzUzS@5L#ۻ3Tt$sEjODmhUՀytx7s<{*\-ٵJOsQ: fL 2{t]bdK Z UX*^~ћ=7*FA@o`[Ywbֆpq\FȨ A ؃~l۱6 cO64?ţw *bz9΂'YqU/?Dy8i8z]&`џ տ䶡Z#luC"Ae~+5! R=mQm*.tV07PO3$kkGjXNɪRBZ@Z5,k#2±(LoTR!JWk %&K~:"ha`O}9Dݚ}Iiܲ~C2/,<uv: < !nS%\65aD+[wKۆ_<:b X, 4dž`9 Z{ S; K OHH'o`Țuur#mll7ufPYm+ʯJ^(mTH(|( %*B((v/VmX AfqZr~*hvEȌK?tpx `Y4:[ KVk0M|:f IPyo;&gpXwhm rO57WYw2Piq|SQe,e#VkZp FZ Jca]H+PeDh@ $$ET/G.޼5rh$w/g~=܃],oH-xr#\qԙ .UY[0K7Hu4Q)専F ¨# 3l,)D`.[k C$^2*8+{ȼUj/)fߒ?F7LOI;z](Cv}h\wR 0:!k1i`|͖Bs=C>#3 [kp$Bdx 0Jc}ϵ#CV8w{9C̠i>}_ al B?צaď1 -݇-i %/E {\h{XcV] 2B@`&VU L3sa#\7{eCyٱ]Pna6^ZJ\EmC3bb2"Ld~#m}, T885VԨ5# H2HXS9g 6>ړCeHo'W º'L cߝnf;"tarTKgwI!"E2ʕN"nAh~ű\N۸R]@2JSgL8ry^mק` [[H/mmƼB1$9a߁=: 8MԬf 6U aCBP^eJykڳe)2 Ef\r#YC~睦WW}XC-ءpQH5Egz4PҪ˂9gUޟhƜSb 73 1ȹ$$,ΌԻ.'ݦo=݌| ͼmX"m@c_egC̟7D xE7=g8Ł;KruB@b [j Q_xzɝ- Wn*'gL+AgCt`E4TJ]$lu‘\2jꢑETcLgೂb"`x0A1byBvJiʎuq _3--9ȩҲBe/D*~PG? ۷} H_=XFc9)daJȅ{e88 }BTs{wn:?WN6֗ԁS2aHxP ,X%3Qu(9UYF?"v t"1瑞 1:}TOM$ADӍ|+ uwsj~쇷/ǗKQE 38HyRp<< HWZsMѾť<6"ۋ1S:"u7ߞ0ˌY!{UdهFyAJ95fUfJ9}r:SYN(:PiB@f滝M?hnOQBYWun< ߽)T.2#8/A fnl 1zeyBRnskCR1KUy(84!f\#z<)AdHvMT ̍Ex!0B"-91UWFa1zi.GԲ+ۃ|9@Ag &<1?>x/]?wȰ][IBkIVS6hmgꚹ9&$b.GAF5ha)Օ)||cg"wuFlưXkdQI? I#uQoMV2 0XqJ9 )ꞡӨp u 68IЭ3xgIH&5m8$Zx]܍'rZ%`RHB-Fbfqq_ܡP# @\C Kb-]*{]2XZ`fպXBz5ԣ[ұs^G+:ɦWqbIvF,n''Ҏ8[W"UZ{MozwY)^P 0*'z!\I'I]?2'Ih##+:t: 8nn9F&},YKRё D]ur(AYf>{M'+M'Û 6FZeDφAjE;H+db{3Ō[rh3Bӆ-.H^{|fvV < uہ&Y$a4M2`*!{saeV?_"C6'7] Yj%Q/eJK!N 'fiYeQ#6G~eLo=ߪg_"+";ϊ!{\M&XJE8]/<ĥS 퀯4J'>LQwI1 HTE\++/卜R 7ZҾHJGI/Cn/MvĻ]7 Rb`\N>7 fa܉$2_3R.lχS}M% }a:kNƠl!12$<6»=\I%o7a1?НTy$rGu8Q4\m]8)+ ˬ I ƸkP#DD-9K/ԦMg[ 0xj+7tEmN᫩Iپ >sd>V F嘓G”HֳoSAgNi%3?iKv >̡–noSR*:05 e'kY^m;/@x סpDỲ}܌Lɥ61LV6܊vR?ʢ{ ^@:e*;y>,Tۈ!5^( }dˬ<(ch歁\?H0?( .f-B v*(Dj/9R#:` pu +w:v$ڜxB^]`%BgN_C [ҽ-qW|;䖴??IOe۲D,DEHv!곳t=Uq*vbSIu~vjPUdxAbsA]6 M rЋ|'=msa4\b߻reǓȢ$QKRo?P=ix Yz@%/eX4SCe]1BKMԅm=+;cM|7[AS?!#/NNx9}C♬33&l=\\mR> 2jmW{t) *6"e}F S+"$& YХb;5E+E)S&`^wL g2E(Ԙwxz^ȟ⽒dY79-GG$VܣkqϽ&gAqZ1Mhqf'\1Wr joPI=L 67JbkSEwbΪ45>"ͯZ6{Nα i*^NԳ~uզ )BphսsV!A:R:d.8=#Dc~dT7q.LIld>M NrnFI-86QZ( -1\hMJiyQeeyn h"[mq\+JBr%LN:qM7rNY1LjbR ivzT2BUقIxl~#"ָhudu#n:<_:uhVi77T5`H+*g%D nCfQ ѱ`a6ދFmi t*OtBZe."ݧ6zw :{`X '⨡h.?*``ܼYI[SPGy>/b6Re<:RHwyU$Yj5#)y-ߔ'f7" ܤoV~0& <|M'w5RPB?1s#W=0t7J¨MhnY[DSL% b m7*x "*97gs`$I0#$n/bYxdA)&u_Y~S^{Qe\Ē nWv:h=M䏴ەOx M}":s'!Lu߫gڗ.XuGQuۄ_%46_YŦ]*w,# @~j%nIq .Xo nW:h2Ya Exl1Z|х0 zd$G_[d2r7l0'͓6i*DgC/)m\%L*)K247I>2C'Z˚t1f^kr"WYդؗXtɗ^1DmlE$>WE1O#oZ/,DG}ڟcZrݏuxT2@!tt=P#‚ 'dzx+BG5B۹P^M \:n\4 R4yR1md04'ŻJ?wUgTm/+s']9ۿrOU6ɏ|]`2[-3n|x~5ې &r\@a6}xa_@x졄H-+Ɔ9I$/""sUkXTw4{g ;kgCn7aOLo[$=A Q1)C] 0j6S齃{qƿa9gаqv\_m&MO3~DjJ íԲO$K4yXV 7K]dY'b tnǭN89T{!g&0Tz6}0e۩\aӻU(L+䠠c,*+$5!B㈄e<֢>!@Mܗ (%$_EoF/V絎J|@ ړH߁@;+ R 낄9TO =_:Fў+n/',"\@=}ii lVn2Y 5٥lIb2JLxɹ؟ 5u)(QV72EV!/&2RN(̮lDy;`4ן9Q}٬ΙS8ҹN|=x#[O[?"ԼIxFfQI1Ȝ +ia wj&'Q) l:aHB3_Cj123?8@7XORZhCC8CJk+|5/gq Q;Ԁ$áD#kg6F',І"*Y=,u=z3TY 2'*Decw"qiD@+ԞnGIvW־9tmpmu"?%D⤸<\.յ#^_a==ey<(Pڕ "㶧_7f-y= \㳑+nC3xFxlj!ECZs mǨ)#uK5"JץlR7B8/kQp"IH?@Ԭ`'7?¥mTWwtQlre83OȌf{::Ψ.cbҰs5OLHRMI")ՈC1,fClGc%d FC_+)NpN a}Ztu/zV1mEu:[jxOC34ޱlY{cMLo#WBK4P;l[TwG.Cm?3^G\5\_dzPtߜ8T DH,(}&jT/A+oO\IS@H\|&マ:<}C; ^ѵy&s)+\GwrGS8{ՙ"BXm0aŝ 5MfGF.cmIJ==f8h&[ Tvy^r0}X+( TdW~KR69d%ϱz^B'HYDC܈9mx8fkdFlݏ^{쒚&5Wepũwu f^x (}SD[P,eC^L6DTu/2 А4``ʯ EO޿nHᔉx<5^-V#!Dvw -<ܻ%t]<{cy/.B}+lIk%"Xax0]M"#K_q+Q7JmVCĺuM&S"vxX?i7yLz5~;7H)]=ΎrM{uJ֙lGv XUy4jWm$?q+7(R4b(}-yKOna iId{5ʼnIYI׻3 LT~w`QI=g׊VÉR&2D)Vׁ^[X-frԇEE3>s]E0o05{-~LNGG'vߞinn LZKڙr "A0I|,_qg+&|(Etʅn 8[cdC !6W<v_ԘZeT$ z[b|h;#P 3b|Dv^ Km\{1]!4^Z 懁f9cѴ́ lUо؈ET;skG蚘L# (1꬯1[ N/? ^V4а P*c{jܼ{3[mÇ:q^^BL <˴Vb`N+"ӓ?9s {;dGaLNH9/ed1#}Uı=@rls@x`> ^*.?'7)x[Q{܃MwQfhƫ8Q h IM!QRPhQӢZ/!ƖwI$g08[OIBz?b6H/ާNċuc4讔pΝX1$yadM3а̺QLu}(},YQP.A<#FfeIɿP g rBn w2rJB8Ա~j!5hR1Z?1ETeYȬR!gbE8!% כ]!jΨMWmȟB-೮dQoJƗzTw!v /izG%OxC i + ZuZO7')^KX?ádݱUgi? UC+\-?~@8b3ym -5@@R^BW ]$]<>43@:8}RS-Vg" څC?<OS{qM;7gx':9љu᪒ɺIKs\$cbc@p\~XVg6[ hxUB yѿ]wcꞾt&UJ*1ufFkg D+.oM?^{RAWB)v!T&>L':0uNSu1r5_ ,ùsPLM@ih ɴX*F>2Hz9 Lg"] =o)԰l՞V\^Bk_PTp:ذdD#r:{~p'%OWfN4("Z;⎛Ey58bA&6zrvpO* ?FL8M94M~%;J%*8`6W.鹰NyMƞ}0PwAI-aDJ@FGnBkld9#߇LlI9o-~R!R;  B`H$<-i8"H0ȭʎA͖Кc(X@mT%KI+ c!U @ y~1? x ~?+'fVS62̼G>{y5 Hjr 3Or䦋WX}8L=%$cxHeFz4 5;[{l 4uR Qij)uj($ɡjv _U;v[+b&e :fk+dԂ)+3#cR Ӛis5 amnȮ ~S)~ xS-째 I{S6Y w\o+LtXs=9,QC,{0*KMNwZGv<.g|*JÊ|X+~f#NGd$=?܏Y6hdiܬ0Y[S`쒷o"~)t;b/R[nm+wv^sJ(hί擧mu4[+ nsC~(wRzt_䩤LwS'=T'zB WInA9{UfTx{T D]G90ۋ:Գ"%يDc5|,=Sa?J[`!q?5n88pUl@g"|'"C)n$k6y \<) q1HHƳedg @L'T# "u~fABR a_am28Ӧ[JS<@82F 643f슕 [yq(Jp` p<%բo D.,ϴ扎:{ܟrXKXA҆Ԅ*Fkk_8KU 7rNّVNAGs݉C]JJqRjPɀPm!ˆP q54" e*$/f;59T Izᇱ<9 &KV1M>KW^9֤r[Tàp)८{aW`Y%a<vl[HFQؘf;`m6`<-<"ZFYg.OZR@ ] vpU%Z3Gz{^՟0B:5Vo/ByCG60Lj#oJ{52q_7uJeI` GbXԽTkʄ0C^G e"Yv\ZMkJX[q, ',bBCۆ{;iԗ"ЅSNU(,5$%KI u3Z 5dXY@7֫! \ ( ɶ"*E@t zlӚM_p=0lFo6Fb?1ݎ#պBb) 4uOSLSޔpXB@7hpTYSfQa{H϶ĝ֑ ":=J.GNpTf>Ekx}[k#t<p4PBWT =sqBnzhޖ9=Mbu?C5bn60Wo FU7ʗe~`axw[ M=4I`jI C_f}*=-4p>z}ڱ 'cvhfZ E4)Y4zhj.AKp8mAD"12 HHK3Ar9g`YݘHj1j{,:Ocյ"kF۞=S_z|Ϡ钬*։J 5/ꝖjHhiXW@}-j ݒX7 Lփ[;ٚ l{>lMxx..T_ '_}j7ꨯTv* $q$Af$>)Z( (Ģ@Rag4K`j1oH`v$ڀKvb RBvK5SpY zGHc:WgзJbG׼.i Tvi3zw@M+Lq#)}]n(iHFւj@Z#U}-TI"i ֮atCXKrj ; ~*?^͹^` l[[*@I& BN&.3ڲr'v= ? 5w4M*j a׼9 /˻:ɓ?Bj3ќބ"71~x 2EYpTgM4K=DVWn,Q>csY:BTؘxSݓ#**T闩ٷGAxzk]X廗5"x/fLRG=횋w%="<&4J P# b;yfSP3W0L~2#VRukÑ@U2 ]$z`琤 *EgNc4qkFi\rv6J߂Qt 3mRW9$J, ;ekŔ.ZG5L>u1?+gPPD1+W}logHI؝0a\N_sBQ\ U3y"&1>T;`I֕_^7Ůؒ1Q~+ܡO?ZtKר̌v=W< 7U~$f7[Uy-ʁ DeWQ#qzgouOLķH|%a>"[?^;MS/HtbaKw=L~PM)^{A@V7#$\R̓+P,e 9mؠ1k3?ILV<2@&awϪXbߪ8;| _K @4%](m8/PF(Cl'.)YK oԗRXZBsĐ|K[<unLe^8?+oGD5YJF;6U#8}A5+=ĕsf'4@-˪+]˻um]?G UBC4+->[sNʓEbd-hyUGLa ݞXɌ6c5;ENOAlOde }q"腏{ӟIH WI&BLPGu7)mTRRF\9t?|h}6%8}|<"P=]jhqZ3a@#3R-HH.sltbw(tno1^@>Nn (,t D֥B&nW !INI)Vk=b"Y̬-kB0'nF؊%F5Kq^na V|Ig^۵l +jsbPƷ$d8>]@&c.HauZ;_N<: 1ӹlcw)A..f= ~BQֺ wʷVu8%{!HaV۱V!B1P۩&/KM-ץ[qyRgt"d*5 v,'Ϟ>x<5f[/v=H[~w{ ,L4[?||rE&M@z ݫMnjid JIujڸ؍4~ Ĺgo{Rh'`rDCPmEz_0ky6ffT"h_ф9ЧV͹&5ɞ!!& ,\2cx1r%q-ky=S ܬ d2eYyܣջ)*^Q. 4߈Cل,L1@j٩K>VvCRW*vo;ܳξaUTx0dmYXkGA9V?鈩r%bXYr0^|&%r^e];_Q{>@;? 6h;S2+2'>DdIj #KEC}G *,n mz9Lㄕ!ӰQl C]B.+3SAbM͖{6Jp~Ya~N:+E'm i$Dt{ Õ3`(eik<eKt P鍨UuןN*q?Ao ?um:C$^'Ǘ7A9{ 7E^`]"S^ 99e 6ix27R1/"%/DWDgKע+x `S#QvD]wKRwT1OZ'p0F_1-FW6YۖBjE`Lkj56RsCO]-eE iA8A(h--6K,41z>bpd]lCj<&D^ԯ|mDXΈ0PV="*pf}&Si$YIU8mt0=zɳgS惘Ch GVqA!D]X A>)tu4ԉ{Lh!$P@W Y{p/5("YZQD+>`-P_qҎJqst>o Y=!l:Vq/]񮧥ͦo@xƒx!Q;w8rJq~xwI2$v[͸Ĺ80ɑ:0 Z;OLfU` a} c}`ʿ[B0(nR&MliJ߀_-|Y!qyݭY^k>skClץe4Qvâ@O  ;k(Gj)#'M%_n2ێ|o&*̝cbkU>fԯ|d1/?^x%e( $U`f?ު9(K_}2~-KuB(?~- Jn#Rڦ@ԄL'hHaƠ>Uc WUm(_%l%I"#'j[:-F]f`P .nxkOQ#u?/~\N =Q :^pڹN#)4%R[;]{u+sp K9b#%;/)8#eu״JeGf-,Cî޾YϏC=͒T8gq`Bm'r1@i  y8{.u.d0yU&ѓ5d=?q_?;?̏^mIcpz^@Sn7h,=7?$i=@mj{7CsE"9NA! cl18Bn88-sSԬnx2^ϣvҒuUHcR2bkc:p9n K8/ j5kD֌$4X ʮR8>M=l5qP D(&+;;ѥHE=2xp}{l+_FRCK&C9*jgy'ؓ&CR "Qc@iK-cFLvxŎ]@ݍgg=zff(POhsЁngBN[mnO ׻58i6}Y,voxӚyrrð%wR/xF;eLl3P6rmlNwlqt"L9C.JL@O>,$F6W^q51cy+Ҩ}ԋ1jbHG'lX~\lmIM)w~/Җ% w)ܚHK3M?'b׻'gt4Y:(hc7lqQG [@\Z4"@ DHC^Ϲa*S)>8H6-=y;з]lLL6#G k*Ҫs/ϐ@(|AGk}!|(G̭#MsnBn؛6KOM5s6䛘AN 2^- pQj! Šd<U>MC3W{:lY+HI8E"䟯eZD*xw^qaqp'#s)8!BIjy[ٝ~w^5h #eS~c8=v'9iGyXDEV{~b@$zcDTꋲ {E#]4m*˂mФ'9kp4 [@ "ÔKa8A"f^Fݾ93|"vOcCY[(B/;k<p H_Šu)uʖ={&C}裸8 '_'1 lJu<|wqz I(dk“'msMZbӄ=٢b$ i511< uc{W\yNEy]\ wrِ|c2ǃcg\#$r6'O 1w},bG5[$'#+hࡃRv8S!E dY>6)qL*3t{ʁ'6$vҊH_0dNw]9S}<-+ 1EM|m$w/i :ꝑ4wə'{z8_Vr#U>^ B~1&W#=-ۭp6;2Q=n+UEDTz!LnbDH 'W3nmrʍyj<Ԏ?D)ܔf g+!0f܁ya<-cc _B|7s`R%݄mC^| _PDF#lÿMUk wNIФIS߂KdʆIUs\ \M/h[ f#L=P! 䤶tq,=c9\XjI@:Wωɺ?eMr$HSe_>څ90jkvH)3G=ܙd=ꬮ`J8\<IrʤtaÈ+iw)Ķ):adݼ@r#U=H!5kNu@$o1s,ȅ(V'p.Hюz|~i@6lX.FN[,=]#Qa E|DϢR7 \9RČU%!鉊=tsx1݂I'Ҥᾍ˦0 ;A-D%vmHC9~vKGGI5vS=lEOꄣ!iHKM|娟:Lgʰ!} 8]l"j5C6GuE$օAH|02~ףb$3Dv_+M\'!_p* v[\x4~ء5Oؑ:F{~Ž0Vs:'[:zM.S[*1n>Z8$pHkv=_m$]*﹖ݱ'U(TKe9~8eVifjE_ D>hx2A#w[Z&,3lvVKRc8?I8'/x1aΆuzm ҁx2ݾ2z[і?qax*Cֱ,J[ѯPuX'_UXYshdbjm*,8ST0qWu+w(AY8ViqEYWFvp`Wy(w7 OÁPL8>xMuLI;GaMoX.}XT%aJi.|_i6Mn&,?}[Gb_k |6J-joRҶzZV'qHMD&q>ϳMX xՑ77^@psCHuFVm$FH?bͦ[aJ^BvWj>J@6K .*VzKHlA4PFzg8n0ؤz'ka&  Ȑ0[o\j"M(!CѳmsV(R*%17IyG9Eg+u{.GGEFY}/֖ fG?Dmw1Qk^ LCL(w%T"B73rH~tn[)v~5#QCvH!aae$}4'L+!S]s3u2 ZR\HtH{d "PI;I5IplZ٦sq|hU5ť5K wz;@ ͩqV%t3e r&a$-|ō>#- 7ʉ ~YCM^#3׫hф([Dq6ח,nNL kkU'%-Fj]N[aa2{WY/: !;6pxʶJC/z?9'n{ ~s&bhE7XߘAooL351³9,}wۏbqOk$>dH@É4.k͌xH S!=g&Z!(`/ SZ8&>GA)$Fy n R[$AueNIW \^Ѥ@nn qAfk,(XY 7ںLJ5\+<iZjPXR .b?Nl/g \dC@YMA͞p:!; s2M;9 +QY66X$BRu{oi5~I`79eZ=ϞI]|+ M k%Aq`$dq EdhdC78EXJq_"X "&Mu沤eǼL0DbO.kD_#k?'KSc{iRaQ"]ky8&ě W7!睎^GӠ7{[.fd#0!7-PHn_]j/i JܔDe ҧ8=;d6PiRea *zs<{2k*ji&Uvp (퀊K-0j}rf5y)%7qyOxrX iZ>cYvhit8l&+YwSm: w\ݨ&NgtTvxݬO6)[m5DO!O<݇%4*qMSjSGhl$d#Ctcc$5\C\gwAʜ ZSu$h{"Ԭg 3tA .35` .RDt~sw4`t\W3sƞ@Y} c Bf-h_GjӞV0*%#*hB_K>Է?lm^@/</VU*yɞգ FKfѭ_/:=rڪNV?E*gl k¦ p:yǢ/I K?m =-l)ԭǜ+Oc~ <Ǻ6cDbM\Gۏ*@"E )')ٚzw 4HwY/@aه e@!c%bΡvpy^ f޳H'i$Z%Rhg-FȻf(eWbJLl]ƘZu euX{Ooz sgr4|W6 q]@:j敡&=x0U?v_vx6 hY!8<; g.]I5ƅc7taizQ-nG׳@yt65Σ1. :MǘDWt O t %Ε5ꈝPJƋCY 4PiCzL0LahDnۧ[";3fѓ݅bjI1#b=I;GWY̳ ׻@}#Z‹c$eC)>uoF2e;ͽ&aNrǻ?Qg#YX , #䧲f_!{Qi~Ŭ8l,2vg6E3rCvpS)4^rbx} ==a=m^V#=-xi<-@뻢 G -t("$ֹzœ52v.\.R7F(UU Y ƴpXKM=Ma}]$TwLEU>H-gEhI .`G 3M59L Sfߔìa0㙸I!aD@t-ǨIgxxOKO63Mqe3H~үl̔,c&Yټ[g!' 6S綉=E7<[v%VC5GyMB撡?«YN)r+@4/(r Y$ؿRTU`JdYYݦ6ih,) _6h%,\@b*IBwuzei!#F!5LE9Ԋ 2Ck Zf鳷Rl w>ͱVweXmROs*ݿ9.M:D;ew;ׄ0uoJV t-ӹ3!Ɋ 1-7kIrTY%үߟ`{v/,:6 _3( `[x_;q-y.z/]8OFAMx(\J6GG><%#FchVsࠚwWP'r|;fbB7n<<yUg|^hMfg)EW e]R[)iM ,3wwKF zB^]Xxt4=`۰5ͷOO ?l`ǑMBrYٗVrl'h@f 冧9w8-_@P~ k%īx38f GEѵpȗ5IQ@gyjL@)yܧ)`RږE˞J&`0CT%;!$XͭچՆʽZz+hzUUx)h ɿb.=`7( 8 1*Az0oLNY{&SS u'po]7msŽ}'sߎ!.XlOOkΎ^ޑX3]I\_&wqtu֠TՑB<]qAaaW mNTq8Z[CVO2iyEyphv~g-e0Vmk7i_.=:ʧuĐP#j[敛T%tÁ{z 1t权[ 3 x*,pXG! +39~×R~@Cv˃]lC _yGl#pR 098+fm!# |"Uj0Xpˠ)o$k/o6"}jjiw:^}{H1|hytU\ß0d"Lx.o+,kl X\_ay- hW+E.Nbu@| Ld+]~#r;*{"[;G:-yP(zC̯JW% mwOܾwb̃TuE9Olhof_dꔧPd̼" 7~8s;≮[ImEl`6 mR`K[VR)fkǀ˔.xX`8 ~1Wk pS# ׇM~ eF%nJO~` +Jؚ\$ i׃#q^dhdo*_{@P GJI>gȷ+x`_em){ v'܊u腀1rc6OtG> <ewzDZMצ7]k*񹼁5gUA 7Yqg.\U_{ҧFjM%H=Pjx(M8X@Td$g6=t rA'* T~cvtvT?dNi]Gb?\<4c7^F5ɕZ%!Vjcsz;?A\*ᚽg`΢NFCr5zŔ(!< <̝}bUM}j"7DI]2TL%:zt1W[v[+eEMRz#m /2\`BT$dUv J &B-}. I}y]L%_y.'kB'xKy;c1062!C)i o~t3Nx:\ʷ 3lILadu3zW lE6U'VpF9w 1S"OdZDǴsa }zۮlS!yRl*T֣)4KG5~@S4^6ig,2tJc 4nR\r|ufŠ]PXe}4In~kRښ?{ 6Hz+R+֫Og])Io7[hbfvK0.aaBMRpC1%z%75[WJ6A AC k4W}#C%R]K7onGS ᫝౹9B;p_\Sb/|doQ8'T XH@Gn L(ayNQ))z;Ȋn py# GP*ߧvfSL65L!VZ .eaI_R\kKgLf8'oz<5u2sRa>R']*ڍ ѓ8piúKصAF1PkŲRYk~q\{{g`6hȤ,H ??fz*?5Txk#f5εZh^/vv0>1mbI52gL#ɋ:5!3ϐiV1,(xwCWÊ"E]\iA'ڜ27[[Ipcx<pcIނA)NJI!.[e≊$IEb# pC-[5F DX$'?5,\&7;Ϋkl[u]$\ Z%Zn-%6SD*y0t_cwp1=|Sp}䬥N6 }[8?6S5g﷿0ܩFhRȊIqb}P 䴹lO8zb ڑA=''_5Tjf-&<8\bfT=p\z D2`r{~&?zrTjnm/9k̋rpOiCm1'̭7fYc]T%o,B) ?Am l.'H(g#+˗6;\- 賣HA2 9{( į~&gĽ< `dӹc1<* aЧۥT8,`/aS(~J-'$i\\E?UȱQ#O@w4M8x 2W[xtnKe  JeqzV#+(#9Y*U*( F\yy6ׅuiGxĤvGxa9:6PUdc1qڈ[TËA-0@ˌ>(>ǩp|y9e KHՋ3PniXz6IUVfՓk40Ű`a-9bW&Ѫ]"5*@'˻ˮ@{&HuSx<9g$uEʤiXO2MQsUa2dA $0D[@F넇niF[ |cXSOǛ3KA04X@x%gխ {m< NH'\781So-r!ouu7_xgj$NtKCkT HcY4uTKhϋ=ԈŽ@7SL[z ʣ>Г}}g\l}Ē';/ТG4.&%!u馀nmwďwc\S-pkFι#B 1w;͙~~jc"yfP }:GK͏o)A19x.@8lO* dAxQ; p) )69Bྪ6>=T;eu+qQĔ[ES]\1AGiPY- IJy ^ֈ z](d^ؚG':0s¢uq\c;=wyR`iR 'F75 $@nA]"=HL;CBt쬫\[dw0tliA eR]>3X)&"+:ظr5WJ:Y r| _WdnI*+p9n *9c[5ot$yF+0pq ;?ik4A @x9gO]!WHjo1YjMfc￶im=GFu^OuaD6ugr cdlk'䟬a}A L|Fň*`EIt eӾa LuH nѷ;ڌ}lX'a/j}RN3B`܊ =Fhtu/Wjazq>d)J0PZ].asUQ63*xΧ*)F-eIo C&\]?K69>͍6>lg;ЂM{&I.GtrB2$p-MW]Bz/UxJB7HAl>~yqzJTkA B;wnvO M '[Sri8+=i}>nm{^ _ R $Bx͐$l$2C2rH E["u<ݲz1Ԑj(MٸF#BԛQK? Sc`gO;/> cVA0#:-ut9~%]Qa/b +mnkUD"B@LH-WJBO F!٦y @RQϔHO| S۹e@7Z{^z}yMl@ΣK:t+L! P]⠜.)7G{\הw3e?}"gßSDD\xJ*GanX',Xjf(!z=L[Z;B'"w4e:G=B8.wDZ`Pn笱'cP{D0 x 'c8sg"Ö9L{.6:vSzP>8;d>:YU&0yiHO$n؋Q4SQk)H2]K#MeAͲ+p7%C|q ZUz>\0lhgdns43gMb#?u?ꅔ("~ӍIS=i#m9,u7jj|~߱mѿOJ% ˄K#kX)Yt"!R$-µo{.aQZ) iTf1o3(Ps:X (}zTie[N N$ӛ,N3Ȟ9jD E8H qH3)vhw$gלhޥ`7{A8wnȓfӲ[2 ̈# ERȢ\՟,U G?XBx=Z}xk&t# cc$q|H(%odJC"īɶ}mӕ$6#.EDRe xرI|Ardml!Jw<Ţ'#\5UJA^K|dK@jrO eHJseE9G@N/JbΥ|"q= %U`}j06;O6I# K oFG9 諥nlYì='߿>x/A8`qm7 kh a[EUf{CNLN0Ŷc%GlG47җɎZ'Mg6ly]Zޔ2?qeN _7O\3Lʖ;ő4D65ƫ#BBќx#``510L5*-@ k`(*jbJq_`&מ%;bw^rs)~֕xb%y_t#E5Do+t═3҃?Eq$RU0AOAj`z8*ouA2T`1(mT$(N5$A $E|v{}q OAQgq&(Iz2'dڳ7ia^2\6{jP1 wI <+U/P 7l!f|=׸dUf8;1@"pruz[{x1}@6ki*y@H$גvgA nhJ5kDZ vVY߀KWx*Yj'6P(VCfJ399wy)YfOضe|sBrO{޿&mGazvr & w,ȷ:|oCgDӭ経cd^6rOm?Йg\a~tD^p;5u>9^ Kɍ3}CQgs_\!Q]X0,&LW7{Wgo?u0[G3HՀh!xȞK~b[xv]AӜE+J.70>+Vy5ǼYx3O͇ٻ qYQ,|dbrI25O6{SrAOJ*'sr̨8] =ggqX9E&5=ԋxU;X#10[ tI)>k} OCb\A逬'jr@'%mͰȭA<=ێt۷Nu Sq;$%f^K9*A2xC*a #N,tak#]:A@ m4/HDBK !sLZZ?zX:piH*'iEjwdI*|O A[3%z[1+wB@B]6cL EUo|BèJ_J|JeZORLC5) Ř@D3{;$Qq l"3nn ,_I6~uw'~rA`̾n*%шIJD"3 FDq_j!e&DG$>•Oƒ4 /I7-@Gč "ΔG-}<򍽞${4\TSvl"ˎa~G(|)u fH>;,גPQLRWceT mƐXv!:0g_0y@ s!j1JDD)Xsz?"=2;)|ɕfԨF…Zٽ|2WpMIR ՞؋M«D ZjZ럹Gxm\{嵧|'/0?ukDIYxUi!Gv T\h^>ĕSc -ڗ}^bµiCƬ"^JUz rNR&z-U<"y dR\ =_(E[RybJ0>gm{gGmUcP\¶ho]0C jDI G[8엱DDj/ށ u1ᾁ^`WF!+Io".陽,3 H1a::lt8C$L^MV{H/>z9CQɃ`6Q>Dr6kXTz>(ƻ:Y<^5݃T 6&"UWWqmVm~%&C)2'0_:Jd~Uyr{̳;h~wvqbQ e@0o(Ԃ}PzƴM̈́q]Ke;{%_ke>Ћ옊CWlyRRyгCwp.Oyx neizrQZLH׼H=H_)?MԞ !Vqjv9~8D@4cU$(";u- E_qĦu)Hov\S#3/8ئ8G4mbb~sn:}KQTi暪(EQ$&1N7v֟; Z;]i9OykLvEŚwڌң.`S## <.꿞i:o=ډ☜5Zae 6 ~_ґ^Uau& .D7g?z$`7eF^D%8SF P0&J3|FS-sKN^=@#5h3͡|[(;}HDqHP1j [_7pj :1_`{i6ro8O0zU9A/(_=JΖ2 bR \suO4u7v~(W`(tvDQq?/9fX<@-R йhay4H(wXu--e訟`TcfO8DT|O_n^_sv]`*@6JuXx%:K$eݔRQtc"1m_bbLV=%wfnRl'ׇ%$8YkfۖNS5@}Oa[J),VB$5t"̂i(;ՅRLS,DY4:?MzqQUWsmC1I.zK˓q=_$dk[TnbR)AB>lv Tpw 8\,{j[VZ/'FLq2yʕ9^#XLߔh>QAxign`u EC<Ug}FvAAgDuy}<%R죽-h#$IhrB~48M|.x3L2usՉvm="BQ ~J+X$ qt݀~]b1DፔnCBK 4gW.pJ(Kmo?h=e|yHJE Mʗ$BՂT(ظ -5 G aL$x-!;i>vr-<.Iu"Smץ0`Xcz$ӦcYq~?Cxa b'wӁOvbS֝$}y>6=yv12(vQy}7fbՠZN8[ԗP5!:V&᩸i]L 8Br-W{I Z%>7JQ %?l[SQPD(iLzv6f3uJn?g6Iv-D`F!~ ؗFfۑD|.Y(Ci1B[֯165 #5̯!Z*.=,`hL<^~;s7 $s*5Zt>e4+S庭q5V ^q7}`vr"z1]}AoCW\ ̃׬ÚgڰЌ5ہ0lbóiQ)C nNJӠ"' xMՋLt5tG/A(lMgFe½& f.#K)+lF؈ 5C/)Ҽ+I4 Wjjh_!4I)lYN>idS *mW;I!?,{~Utܦ\&r1o7Pt6]0I{g#?*| ^Po܁". &tz*`RcrHGT'2whu]v.VxuaR@d(N"@^ŝ6jpJj}B).ta~cwGo y(saE bRq'[]% x.GŒ_7`7"gEΕ5xt~;O^=6_Exڢ۷.3Kr&Y(3F4`1CfoڂkrVEZy[|1_bIe\wTN#" &ffK;X ؐ\qoZVlLΧJUliuoyW,i]ADJoJB2 E4DW&.ko+?3̀B6o^H1e/&|(٪jp:<1CqۑWD#} ZM_rr(%ǜНˡ0@H/[tJݫ{DC8nдv-,V>n7>X͜g)O4FQf!wS[k.ns la-F ŵ)~j,//",SǍHkl>|i2 3xO~G5}2gXV <-Zka|-ycArFѵ*q-QmJ\L$Ⱆ,״iI8 NwGgУg\3jL4a\$&>!mO8et9D<cI@944j#OB- h!m#y.:\~mi͏] dW(e3$V& E>bSv؏ lh&BTM*aߡA5ܟղ> EI=z !LL<"0~{3?0r |E\fAUYL7 ueД;QѰjZ?kN%), Ro-UT֤chLɑ%{0h^ʺמ Gt:P uͨ\Lݟ(-ɢ{LJPavA=-q"R9fl^vYO{8⑺i|X"kN@Dsb S _{w{¯6na֚0 $W77h,zfJj5[t|"<;P{7N#zY5)DQAnyM &\ :7R$mN1 ib2~dz|Ӹ.6 #lb! 7ތT:X(Qxjw!m!k [_5vyO( c ! rGg:ƵIϘ?$K)6CS5ՃrDY9\WP;Q*kW͈ֆs~ IG'(MTGfҡ 8ҹM2r~Dx<ʢ~n^k#ͷ΍@0 -ot2&E]vwq=24XQb6\C&}ƋR{ճ1I:w!#Y!KW!k{~OQ-dE7Sl?j6qleO2M#]R:ۜAc]iXOVc[z~]oτKC@=̞EҢjXݱf=Jl&IrX%)K 2)Nj4Doz,|fWQ?V<0iDi/&S(Pn5ؽGT[νE҅*GQ '8krm"e"p8kV1SY]^<.H} \] JLOP„C޶S5("CNX[Qr|,'\2;Zjzb=0FҥI!oÑwqٿ 閊 t_ܘ+~i:eҒ(t= wJ'rbOG˶o,GSW+ayeMޕskm,2 @/_NMF8q~O| $\eD+hP";6]iLk$jƊh3*E;%sp'C #'KScN[QmmyT ߒ#17L>n2ýN1gn&Z;;}  z:,1g%FIM:Ww]gKhK]0\`yL| oUQ ^wo\Y8H|i/F{Q>Ecyni)^irSKu7gǩKҰLj@z?p(L+^<Tb$( YH% ݀|p_v/zqw踅+x"ckFp{ڴ)a6` mX/w};8n>~wj| ɃXRǫG^n \ =W/ 5K=p!.HY ו?%1}KO>X`_-x_+Љ(w}", Wƒ 5SbNau՚3 qSBmS=Mk8ȩUq6I$&)hHWG A ҘRvptOR!0r:3\51y"Zr !scF6vi/T;GʍX"T"=$]R{&kXQ.xa R&v>U]pƿLhK5Tr@\UDI\Cch,n KSbShMNo-H?yA xT092a Nűf 8߉Y6Zk '4O8-B ̄ Ѥ_mh!5- BWިW  V{6P H}Rr" GLpn?.G-Z,@2z>lR20foI-1-u vƽ#F^632aCv)M"1:>\FH(ݷ&!-&}l>lW*?Lza晳/݄~%NS$ȓ"M':(#7(߲(<:'ۛV)*nc1](M`Z.dљ+>bհ;{ {٤%U[mR"NUor?20 yomCT`**{x-+}0zɥ3mdSȷAL3t.gIQpB,-(a+&G"z-|Ki) ӕu.ͼ/rm#HbNu.5۷q҂m: t5Цe=TO'1y'M#ÕH?+XQ1ݲAHu"N)W7EM0&d}R 0C5e }f,>;-]R+:ݓ?07k|| ˩C)jPNݕWgPW9,MXxRƋi૕  5l#z mQ JZkqiMeFb\A<lYz8hNqBNɲ\" b"j,aYj|RN*4#&#ˆM'U+E͙HQzM~ޓ|?`bfdyQb$ *6y̝<ܵ2H:0\VrlkZT~f4![ LqF){}r7K*ErlCA>0{@0uZү kW*W5'W +Jgߵ.fk6tkSm(T揲,䁾CфvYn?+? _/ŌBؿh$(~6KPѦ*V :D_]˒u-F[Hm̂ȼ~/ wb{덵`È,N-TS^4pUF wT e汐QJ]d{\x}R_}2B%?W4||iiu@b]cv$<]6~۫°uh"a 8|4ͦA,ʼ Fk{2Bgg)hvKWKMN0H|nOjTT1<& \UDTuC+ ^dZ /xfR3V'ÎVWBF={wdHՑ©8HDS[,9 FZʤ8H cęV.W2CwJ橌^^\, iYARYh-c9I`mёji+L%rb=ۿڪPDh)|,&^$R66+nI13 =y` (^Ľ8erڷn=ÖT$)(6IؖVy+rP0|DF|kX?34G,%$$z5C$.цmIYqA"\Dt)=$9ة"e̻)~#AG5{y)ܩ)'6^7Zk'$F5sֺwC=-@HmSf[ort&Py︻eXQLk(`!q0)~dNX}:C oS;7r;bZp|_<#%уP6e MɹD#Uoxܦ"]@+11-Q/D79Gd"[ i{@8mG2^7U8Kl tĤJ"S̻@F0(u#Emu @(0v x<`vzZwDNY,sП~b$ 9F\ddL8$]'MZ@oW-Oa9*82?3DC(FW}ă{10|6I&:blU Cy45{9u"{^Ġ*\'gSgsUz9xԅS89ǩUzΧD.WG}-xլ]DŽ+%sbxwo[2(NDJ!;h#2!mn&&}UEN1R]9!lנܡ8*:e8E^3|O5]we!-q_?sM`.+=K p9օ@ccwX>%'6+|h@x^f1M9>ΕO̝ayU/?)\'CUU^OOe:H~ݚ<_tڋٙ!L^2,F,(0olBet4P_ZU0(~c^n}మA2Q:-0p"{WLLmCŎx ؐ };.S sN[گ_̵̇=ԊQ!&DSC<4slD9ʷS"mB⾢x2X:<y*Hu4bc?YG֭Pv=~/—,]r# m2طT"Ks)t_^`ze GQ~XQ54C< <Arv# T:#_9 S-01>Quw/`~`e Az_?bLp(sN핥Bӫ'q;m>B%cje:8q[?GJVN=9%Ug\tt˄ vccه!y}(fN ]s*j9sm;G]i/>uD:]ohyPL@ S7 }i,'ŢZ 6Y ACΘ}:fd40]~N+NyIʴD]c0,n0fkR9$9o5m(VںDB搃&̝TO^ʜLk[M*{QWTw\X,Rd)VBPf[gN.gǤhl410+!v߃᫅)(=WVq:"m¿R,4x I3-9tWTCZT]s =\HF@ _{&+`,ڨhwNH™dpJOewYt>j}8-骫YBzE`z,:;,J6HJ6ZSX2Ʋ!lVnAզÈY\'AV]=)7wn"rJ/})2`]ArV m| 24 =5=u'(rKCXᯥskدo:Ȋ^]0!Np(kTq5 &ZOFs?Th'#;*=?kaVI5Y:|)g -D\8<{ JUҰ )蒌0Y(%78XnKh%rU҃IB^'.//ϨsQa<ג^Ы`5;peP m/&79ؤ-y";(pcw?Ո2vIF;CY/V O/BUB[(.>x #)e/XgKr'h-Xs7n: l+kl1RќhLe =r֢ 9ؔD\-%ka"SE|rْ;U&g;9me)Ԕ? Nwւ-OTMW-Hwɓ#L@<_n|AYu*OQ(X?8"m(uqxV$fZ12QSg=&GrdZ PKbNhC%Y֥͑S+"q-IH:aRQ!DG \L1MS,LAY9v%m^xcˢyc0 7CGnV8,E8W-()c:  0?6Ѹ;^wFQ{.x!fN}&_AR wsvWce0P|+`D/y$A2vޞ$ et?]TuY-$B~GSX'=մ&Ilq"}d߀Qa䀄mW4D-b[abҹɤ_쌝pjgM!^J >S~%͵{ /ͬ{PYX&}*xCz)X 3c張Y ɳr,Ag}9 kX!Z*3l)`jXC˺kE(GǹE5܁5jCɯEbCn= ?DIj_=`]gk|B )CeA4\?>q g|5G)!NL;9W6*$XYX4 &4rN6vBM.0 d킫J$;pΛNUPtCR h;.f*l}zhnL…5׋.%jo5xx2򮼞 Ypyq 2Q=vIK"ɕ "0fn; ^3MNĬ)N`R7GCk+ `M;(+6R?D:cJw<8/l<ھ1lɳ!q?[v4i04joȷȗ`] :.&eyNS,>0y;z).dm{RD^TUG%!+Z5/eIkl쬜KY*(^lq몦Ks9u<{N\E.juËk|jOB[ݥ6oY/pp3=1e KviXmt(azbK2`)ɭ>LQTҪڍbeP4ybTUH>՚WiԪh[2j9͝h ocGtHkt} ca#FEÛo-r #&&dL])?#O.L]BD+G0)@Yڢ제oŖဳe VñJng:We+kUڪ>l0pyPT:`XjԲt hAr:0U?M0PEokCAO@gK;Ūl(j'9.+X`_ޞ9 hԆ*9F[,IRaq$4vRYą@H ǵXm y ?4 @ ˛m_#kN)8nxп~BjiU9%֯o|jJ6٧M^p/]Jr~*iM" aK까&xp 5r^fڕ]^8Hڄ3Yhcb{z400CZHS{#Q3íFZ<Н9E™ۢ6l9(z'o !MSZi& r~ً*.qock,ͫ?%NCܞV xz5#cqEt3-mvRE:SΨ[6UECX\,(W+*"j^c޴g8ZN`7kF :C)iɠ ߃(z`(ޭBժOHil /~8C]QT 8׫Mt>p@{OWGhOo GjuSٍ ?Խ?Xl8Qe~Cn,nl!'i62MSYo?:0pKߴuZ|3U z,J^et֨ק]a.zwd~ Z(l=Vf(^^e 3)3󨺦zJƘ|($\A((_ؓ fcЯxM?ʒ'kѰ{V'$U,7Gh:>S *]bsL!^&_Jʽɳ\v$=rHT_ea*:%002*-m%:v8 ɗ&/wLݒ vSKӯ4k@M`Sjk(l{"T [h gF@u/ z/"<=Lv]c.sqЇk, o' g3~TɈN۲h\JѸK+8*.Р[\!MrTLapMyy8=j2Esݼ87ۢڠWBRG<ثa*2eAe6]L!¡w|6`h? N%4qw:<x8I3c0DK .4MxNV$m#Kߡ7[rt%m 2ܕ vݾ1` Mph($h]?輥5 )h?cio ̴@oe.-zX-s6m7K614 GN.=]\XzzhJ f勥qk-Bݠ֝z}*5'=,+j;t*&tt{ {\d` v'6@B=M h*XCRV>HoJ}gJ?6":{uzyhlywqr#9 !w1 BwT j )'pVB6^e>zLa(?!K١۴BgB&m2Qԇ8tV(6~<8Ch,UhXJJ%6/XgO щ ݶqNyT< G;z ]ֵ7/]S22Z 8/T?yyYBf%T0!;?m{ $S7$tfoʨQ1b^]Rd>eYǩ>x*J,Ǡmk_ ϮRn8կLWWz}MKv<"I.MdΖ:7P lS(=$vq f?=$PIC0DUozy(] Vy{2;Xȁ52tdAP G=\=uY~G[EXD:`8_W4lD5bukJ=<"G?.+VEܬ%5z2+D"x'blrXpەf%Lm):.(!7.E)1~a W˕qet>߭F oaIf cV]3J'ܦX2 !&JF̑ Ok8=02\1vJsBNhNƈHrhSH)h|d,dVɽE"K;.ţ2f%;\=MtM) >$ch]zq{xv&h@Eoq:CM5њq8(њB-ϥq3hj6LYk >WYi.[εj!_ynP^?k@?f@g7`Y-Nx}FCh5 bQO'9{dbOTD5תX!8':rjӤ1t .ʥny$D+ESBJUHW귺H׍OU@\`;&4ΐ2$);+2h-E;l(/#) F}ʨa-)[{"L!zX]eTDOwR Ǝ)"vP$upln(YjF]Jo(N.n2+(Jظm!n^-W*Y;W-l<7oxſ׾cy`f,tF5m̩ . 6$LS@l(/*`&ʥۚɉPLx~S a{<_,}O;f1'_d5@*Ptm/˒`Y<Ѓ/' 3w>?Ja]_jU7u(뿑-HW'ج{3:hm$&m3|csk=q*Th#/ܐ\9>M%[T'wX,YY: Զiŋf8DBrl;(`@uPIE{/Z\Dd.dБb<80ԭ; 9O@wxU^!YAYuB>s0H@fffWvnEj c!e"э7y|GꌖN߾~[=pqNAuUP)ѭx*18E7Jwp7,͵#Mvgw}_*JL!WAfmy(53S#D;LAmY!Lټ]R`V(CFȣ-x;uy[Ā.R&o]o&x`3?ră50hWDaڢbGT|m k# z-}ݣ @EZ׊mLBp`K%WT’L r ?E%s&{T-ڳ}| H1=5tr?>/la>jXlUl>E:bq8m"Y`[k!A ËQcm,]dD_Rۑv8go)3~_Ca2e 'E3W'%ԅΥ,A > 9M-\ di` WqV5Y4KW}=I mʶi/61Zmo]̰9tλߢ~1,m/' P{~ Y{e lƜe&QZfTCc[ ,ZepT_|{n2:3EC6tsf=typ3H9runKNuɦI@JưWeU8^:(oK\ݞ >#MGam`;tykwi q w.vw,&Y ȨW9,!z[K'}aX"OèIsۧx 5Mmk[Kx2*sn52}S>!=Tje@ZIF^6=n!]V6ɰR%ceL $!zqoZS N| †sS2g`?E.U{MT (n5@'7$+tO^D]vd~G== T 6jvXߠ~\ͬƚT˰65K =˜]hh-bfC3c7JNV=47X89f_";!Nol)?ZuS!FOGՊ.s/?c`wHg[iEWCq{g.ꁾX!KٝEO ԁ?%M_4`AY"NRaі_$0j>PVy)oLdedSк '!kj)6f3 nl @'&_n} [?Fka]B}.*FGl*qOUE43`(̌OÊi Lޫќ帠H̝6L.5{bE?jx%=\kȻ:%Z%KU!]tqA2s?M+>WozYpKR&{&G&JX+ Q)O>VY' L>yVr.R7jyU(ܷ7ʠG |?1:݂MӠoAP`~rU` 9I4/xRm^< [Q 4ĸ62(ʮL5E#.J]8 ﭼ:M[%5=^E +$WI~YBH_W(DhwZ] $́^&T>c'ubTVDmf͸GVC޸ 0U?_i}#nx9)MDWlZS>yAMWMN{ePY 3pVBv}OK:<8cu DsyO}<`^M *} x?"tÚC ][pdf!WUoZ9?g:3} e"n1!l^jgOCO]QПIcaA=7$m Sy*Eb7'8XzFa0C+x>rX Dx2BgMX.zrBDqɪk&)W0lPTqtǗ9us2CⳞ%^FVR,Ywveϝ}\{jkx/Kujk22jlvRCkٸ8ZpTLU~}nRf.?mtRGnqWb7 PGJ sb 6}vS{_t oρzχ7R*"91KtO M0FzO?ϰ'\w}q/8Dm&>Ċ"42e;[ePڤ>|vE;!.#ZQH<&I'T:_. +gXg5F`u'-guS6ؕǩNы~T~Nr=_||2ff/O>Bs C8Jq6esO޷-GF"Iة-_9L1H,ڈX5-(hVX^ل@)`׃("No<>W;iɛTU;ok ;~nmdxFRd;)EmfɈrD=Md5U> (Ws!de$/`#KB٦1g77bK1i= yeW m6Vơp\;zcH/UZʻ [O\%S̼.E.avzKx; `dp=7hR$i5,ʚx JL%EĴ62җHN Ap,K0㓈6>~>m)&a`X7 O H萼LY+VG-nIB.!SWe6P1Tr<P}&b?}ƻJ NR3 9bX>"z E{zk٪6ilv`xO B»qsafڹ8s"xE0ixn> +sDN6&H[~.YsD<50B=X\R<'mcǢ!や5᪁#EeK{<"m¤q^\OD-IڢMl+ÞWb׃*jq!l&WЭwUpob]@B1$g: }TAX;`b౾]BRtNaL=TF;Za}R.T)ŕXD*fb֖ơʘN[8rT!+5>Z*F6iN7` M a$P? 1`os$ƒI]xZs l`=AhHzQ=xω3C8@I|7A sϭ}VrJ*Z_]q@09ռXkK֝לaEQE["k& Ȭx|.qGKo[9ئӃ5D˦-Ep+c$꥜ q|bUnDw*ڡ@۱ARW7:/*4J#S_sR@f{l2O YChv賛(6Yjӟ{By=%j%ߩBӮ6ʟ9I K]UR.|}s`e}P1pT ؽ榦o(sBMxc ZodSX|!=+7l= m#&sthl5+Uk-F`Z>e)жZn~>2%Sw߹>(.0{1jG yHLcv{;qW[ipUGab*_ps$R஧U8R *&v J a9vyuD0/7Mctk:)Ny✭'Ζ ^S ƕ_u3ۮK56҇rHɈL\ղY6p뺙?|ȞRv-mUD ;,OqL嘞x+=Gp&%u-ITh*,u㢷 0)iw 0I [_& f݀$8 & |(-E?~cZP׮IK {8Ewk+c (9>mY^84>M=K uiH}&t:*zzK4x8 01[{l59PxFm{|_8cE =mSg8XbGf4~iGٲ_{ߤAxDQJ=xҎ&l2tTB0R˲d]1S}R#+8X0NtC?%rg\!C 1|4XK lnc~xԿ1Zѝ=n4.Q1(7[/d#%9W`CAXC])$8J /4T|~[ek &'Q^„3T HWEi(ͼx +PzMJ.ɚ\mPC~MTo&qlz=5fJ'MxT4oH- 'ٸ5a+J5#A9s?Z֟! tΊ Fnt+JY m?Ǎb2z(kn͕bp&@zŲnsl6FN[d5G)*mZ16`*[pko6$clm+ !&݋[ϛӴ]]EKaG%A2gH7W8]hj^5)V0ÏC3'1?R+q>m`?:  Q^v# fGB6\ #3%˩ >cQM gh5GEcHLTc-(mBurFЖ.hy F bwᅨ iACPҴh{+ؘێEێ ʀl'h,U{@F xp/4z17%Pmrӡ3*5,)Ayn_S PkdӘOc@9T5*bn]oF7sU,H/ 9ey/3FG'hiLLIǐzk*|ԗ Ԫp1wXzTRa+7]rՊW̏BM77uB~ȑ׽?{xԷnqbN'BfFJ;\. F<:C/z.!LeF&m /CLav1/r"5\v}ߩ tCM6{qTOfbY, 'xk\,ZD$a6Gݭ~hF \mq|g}\ 6\ 7qYR( 9X]$LR'+M|qpĹ\x&0np(5nc[IܟSA}% /*(.h^1;׌8=C!OX#.!a26k~4hJ-G[̦"JG偂KGSbGQ<3<!t @0zJe&yq\IԀMhO $O (?_lbt L9It,Jɣۼwy-~o*? tZ[$9ۗx],PAQ^̴S'ϾLamMya3-CDT)eSٯ5x9 cͱz0]R{7<F͛Y($+,~9gYXz1W򺍟j/sXaGuФ؈5 =nY!Pe231N9bF' 5n%_’!௉2xf`N?yDx j8m_FC[_DqU.@PPji""͕ʨ;G1Kk]] Z\sI]hixΦ[k[,'eEAG qw\U3~w;"t)Cw72 "vhmkq$ImY]'&;}6enRTi'ͽ!dplTYM213AYJM#ύ@i ۿ+;J`Nn~'6R2qU,;%4L? B?O3۔%5!@=#e<^Y9.mm7uB0OsLkʙ{v~1RRF,quFܛd;B)bMאq ېFGT\L W [FgF~d1^smhpY1H:4á}^{jfK2Q'ɇoK+bTs×r(yTVJwX7[YfuIJ瓤.K^AK^5{cޭ̠0@\R.efwi -ͣ0iDG<?$0sP+V* 8[ npEgUqA]˿5UOw{t&C<~$1Cz?ỏntqw]I[%eO};du<!AcϓD\DcJy#Z/~Mc79nv{GbGS}-d  s@C=`>] \>c+^JD6MPY-"}=6jlJUdqF]-\  ]e)m d;OA<=:˧C0g0i ?Cd/9LHÑo"Us[L{0]phewY{fg)hw9 A.RˇˈEI2ڽe8f!ȼm!^[ N|sJ=JE,wl| 4dH:X>Ñ5-BZJh3>u1d1v@ fpDd_Ն#Zܬ& [o_AR42I0VvfWPuX9a7n_W9 !qM1U7 ۹ow2 o+"0 K-syr}{X5of5-85Xq¯=hRQaJ,pݠJkѮΝ2&RF$eGj 61ofz-FC4QPLA$`'~y~]~7ݠ"KPh9`5lgWV'A$o?:Lsb+G>%KxHX{B!C_'sCZW+%Ap@ :86whSe U5AiZ0m/ \]쓊3G_/#!@!11.~ȟ9g4ƴW'EtGK3/ukGǟExaX<2& ZYTM^B&7],n9Yj;/{E=%URfmp r^xksLE5־l7F\یjK cXYUk^qp>P j-Ԕ[H0ĺ*>L!9M}C}ﲃT7=SA Ϋ~ߩѡ~Pj1D4}҂̿!(6( >(PU],h,C|LI& cb4Ҩ-{[Zndǃ$97FI}Y J#$]޺> h@(ɿVW[ &$Ι>s)d^+obroQA}?6= h?L7 `!΍sE~P@3͐Mr,25q;#`Oě${Iu3#9=R\'+w.BWXn%PQ3d(Xc,ki*0zDXxSãb9P`7' >._݈GM/{W;|_LBrAxX3X}jba5b!,7+PiްͯI8[7>xd1 sO,e Gxcer 좶NN@qn~]<"b79vDpWxXh鶆ҼL;GdM3vjWr܆.#lr(3kgeĐ _Ww`% R|)RE؜Đ礚4}1 bӞ$9kjn8ACj z}E.jp-f(s+K~"g=R-ɺ}$: $sITm'2[V])Cyu ݖ9p#6<97{"3G|kS0syC3M o3F24_j^y4ʳƀd+I[Fj>%s鯛 Xͧm:\y,aԽ \"yc?c8 '"[Tk'gSҗO] ^$(A\S|S=PIq)Y6RL<wVF -ŌwFx}$Q֬'<3v˴2 _dF89*ŒuC"f 0 :OcK1T&F[a7Hm>F[L&pdCjA|.&7=^K OF0T(|_2"F,/`Ae '\Ȏ<•/Y҄”F%{ft@Cc&: 5Jׂɉ.i /0?iq֙04)\o;7;I#_d@ e)& q=B @͈j(nK.- ?К;2Jq]y#j҃*!.ꢽ[d_{C2*>aA 91u&Bߊ@S*{q>tnr ]@wrȵ5Fe 1 ݄«QPJQV9>TWFj%ĩ^}g# &Mgҕ*?>OkC.זs3ٹr2v]e>]O]L;}ՔӍI4{luWᠭT3SmS v(no6uK~ _QNv,1=Ric2)rWBj N7{$r6 [gdO\Rx ފ}ly0 |ied3,n"k#+σ&X*Uqmo]vtRMg*]({+jYyDFmA |X[u2ĆtRfĚp%Bh7v=STLš:sg6;|sBȨhPk*SD>O&/qGЅ*s?G<{%_L,HCz/zq^ƚ߅@63mTߚmFyzxvHoEgY W\&  Z\e|óCIv=> |li2`'7\ ,a. z"Q {m-mKS:{A}.evQ<5JV(P>_5jA57(ΪhXhTr>o~m"{?רq"/-/+DN ›g碭pՎDE^ES։XjJNGGA*Yg4ȕ\&uuIhFC7m@**!`|q/zT)nRBMpoℊ U c|}/#mg'Fd+Mҟg8q餆z}q_#_MTx(DNY N:ٷ= 8~<"BFqH7W[!b5jGk_fʇrε&JT7g,($ De. i&x|Pd8s$$I%_<;JL$r|hIT уOd` ף=AV/=\wO_ G[~ID2*81t`xS#nM$q)Λt!--&لd1;e* iQ/rstpkQCju.U$^̟OVOYI֐ZB)__~_ j q5z?y26Q.FKSrƫt]mNf'fV3ë́"\Y黊o3qPKHfZNxJt0Q[\yG&@JۥJ$|٨j qA(,ņ@1"nb5OD9W*ZMInl2oj@ Jce-rĩK.W TH(C5vߘt`3D*,6NW 'TudWQB.FQ>@ I0%2[K~/'V}_.1s%vR\kI'OS [L+; CMK+F|Iɪ__hٗm1swlh]B}ZK9w.L$ޜyS(NJ`X+F[jq6G.ܩ0ԜU :y~Qo!J>CPCÝW FyAf}?e^@achP7g ky,.YP*Vrn*xΜ2 X!#.j6gpw@uJ-ONěb1gAPgʸ?Mc *  Ri8N͢aHɜf!U^lԖ&p7Ưlᳵ'G< 6c47{>lj]Z)kp9bPMG~8|[$nLa A<#VJ%U#('>pTTc OJnD;(|q'jgk1lH(LO`$q#kӌ%iHIƚhwq䨰4AO yoX)wyu^&~c/!M !DڐPcf5W }3AhdlOy AAr $Y,Ì=IYpc|-sZp1ӪGZb-NN]}fN%~;I~`~tC2(F,p4:9q3ޕp},A {WjeH φג7 DCVޞZO2{w˻Z ?dyxoLOi8K~]]P /")ن%͛7S9"3.`UvA L1d aplM51aB2Ł&6R| уFuy+- mq.ՃnV&-~9I{3ᙤT*@_w -W,;Lqɽc!Lb~='#dwZfh,O4ee3S%Lee/!5`TY9'q4T<֤Dc Ú}ǐۨm(b1"Z)d#m:Tws7ky>[ ef/x j([8c^Df,0rn|G I{*GZ]|4nGHr5K){|= Ux"#wWG у{rp9&`#S1ÿ(PxqvghGO\ }m9>{ {]h{P$+ ibrmcm}–}0-nR|2&?f2s秼cg{ve4LÍkg!w-z%:kĊxw1BKW~apvbFȣz3?R\/p_7 *aM8ȅusG=S.Z-*Qru/ 2E==sl>Th_1ٴ}9ꊶ?DZrGZۥOν@d"cu4J`I4%Y6dJzPIڲ"[ӞI=5;B *$} ~ pQ𘌌pTz\យdk2zW !,TˢE BM:vH0.z+4XKCO >ˈQV… s8j6Eo = -8+\1&o&KxELq /R}2' y#D]оs .]l&Ѣ3rX~}7e6.xN#s="BvEBv9=5HT{9{b( o_ 6h_ 5aS%u*fgXJqxw4GIOg \]ʅH[`1]jQՀsBĨ_X'z"7mJcI3VBl^}͋ř4SEgz9G a9흠^(u]w!Y}B /yAw:WUpB:`6!Q1T8Mb-;%csˋ h.$Q7_764Έ sQuĠhgX;1Ch=l)Fx99GܹǮioRG#f۾SW +XW㔗0jVh1&<Քˬ8YG4ok_2G k|L1qL;bGś~F=lS[ZNG -5o]]ϐ? ֟*Ge 9kSy>U;hfhWR]1yd;z3VYs mBy7s:]*aY^>@^x}ʲ5Cq'op {LCE#6V)dـP'2׺%|=9z\62 `gBn VoU85|-B{gXzyG\|u߾D E@0Q_D**d2 #sp#˅S;4ud#݉M_ :jq _;`(gpxa+?`OZ@%!s]n2/Frul*+<`\{qڍdJ`go\ us$c?I<8bҢ|Pbxp+k*z* _E5x=Ie>X |jGde< sfVhiNɹ£@1]Nou..]M-kxSgɘɼMie eG]-`ކbw5a [ 10с@MS8C inmf34Op;{\w0̾^]1y>)WXzkoO&ѡKfU߆؃/JM}+ i礠2"^^(kj;G_y:6pavAUR!ђX 5&Dh+4I-J Vÿpf#qKQISOIhiw~9[;*s &Z`iVT9[;1Tn3F7g"F3X I9j_fژȿ UY,$k?ݕo;P.AZ6.آx;NK}t߂Bxs#~6k=Jǀo1z ykPD7HUOT<Yg W52 ] P\}jƐOEaʃ I^/_j1-r>!n㘪S.EeĖ [aXC|=|j@(Jw6*,a5*50NǾa۰h3C$\BƉ$G%O^{sq#Ws^ޓ jFD-pPR~rGK\m# gc{eGoesZ3EE8xtњ__l(?GHpӤ\j c.5G1:!c HRz=u醮 O:! />EC>nڂ}[=aptHjHu(bG>b3 z}Hbw:5/~:Y_#?7y&kA{A`8h'[ruVh81#n%B]/nFju"Âf *[ϭn8ZZU}Hh%79"#ǀ-CS+ML~˷dG@a *U֦o }疉|+Idʡ avVb@-s<ӉVɛʩ Km(ܥkW".bvUqaL^qɾ6x0K 8\B;o"# %F`X*T{n$N?mSeď paM مT{Gx&B$|@RZ\=гSq[Lbu/a7 !zBZ]~d*U˦30O];-JPg2R炝,i@8dguܬ8bCZ0*ȾWr+f3=2g Ȧo/&|chÛLG`H4? RK $_[fOzM@)#cx<{; lC r%*_-DN䥞w(KavG{tz_E 9cb?,βB3bTqN^Xx:JˌlJ+cE|տ$<*Pطa:K xMXZ} :q' !gᕚoӖhmW<|Χy>,rmiw0YcIrrfPYJ@%%; _m Ƚ: ot{=oހ o*ʺ+ڣ\OhXwݓ1K]L*(PāC R&n}Oo8[2q*|!!0P?p^Kw}˭\!ɻm OR>m2HPj6t)N#S_C]Q)5mK?Ċ|#-FESI^G_l:l޾5sAG!*\"k#<$;)$BiFm*s|D΢ < t/xyd8:75)(,b~rbJA6کHm%juqAC1wl?R^@".SL^%>;f H`wpz.{hLjcf.Em`#q-D R#焃H|Nɵ&kYRAxFwԲDYfڛʾ/ *>52-_ARq/ܗUN ?J15xTݲq9q2grY)pa3L}YpfFm:eFTmQL m"C{#AY˅!CÜg]116wZ؀=ڡ -.7Ayz18;kN'2V>ը%#o"#Pe_BZuͳ܃ۃK/`HvQ}s7&(i?=[x0# OPL%7B.P\!Ogg(A@U8=t– r\@73x# FN*4ÐtǡVR޷>->nqqJ DWeٺJ\14"#en=i_+i(GxB) aHp/YCxgPNlMfR ,x"1-ʆ GV5>g )TY̩Ȓnж:|()BUb!@ 2d5l'q@l2sD4`x3;@(hi6' ßn]I98R$ٜǠxxT/U#I%eiu*'~D~bR/b୎6TItSormK B7rQQ7cKyj29 I]W320%c4ٱroٲ9;TC:zq[{qGbΎl=D-I׼M,Bվ-ci\͋;}O_r#K4JuMN;ʮjzU|`Or1!cuU|$z kǕ˛ MBW F"#FN8{O`SY5*3Tvʕ!R)M:07 c>?1xX黖%:FdE߮EwL# FrM9\@ ^CuZxF_i 8N7/n{J !_@g'_K^"- "GhxVe,H-YLDF3f*mLu `w;Ioΰ^mƘQg(#eķw6p{V%U]e**xۖF+I7^KXWڰ|v㢃;}2qWå7-ĝOo@ФvuoO^,8%qLxI0(M4?aYC- ߧ;FɈPm},(n]h֣@v .6NԘڨ!K0WThԎ,u\lBd-qVe&hɤ_lvG I ^"2.ś:?4O\#R1N 7&^y=s7πߕ˚$:s3J8q}ll״T%@0 b+%E㓥[@2js̤7\ 5D: 6TjSs, |SoQi'uض9#By">veե귚4f *'_'HB֮Ԍoy5C9{i?H|*[վs3cujr#;"1pPyb|UwɢV`[A6?\oFxsװ]TPEe(,4af4[i}wI*)jFk{d-!U{FTڅhcѦPYb$c")ߗ ]dɄ̐(#-tUgq¾sc}Y1H]e"5 r=MtPMeSYa 0CQ[Խƞ72!dve3$&]hyFK9uM%ɯlY!)nXMdvq~|UA߉H*%:iB¢\zvԟxX9N+ }ݍ@B;Z<QBb.ULwS?$@-"V AN,Sm>?jbŽY׏L b,@m,m UFZ_#A t;v1f,wĨblNx]#קczS4avB=5q Fu;<;9i=:L qZy(LPg6m\͔̌.xG#ɻ K(3 5$m+SFgImJf^V=-CyƖI~va&CښK2DZCJD/ #/GeVUnڏ7;2M( '7{GѦRyr^i}`L?숀RztZL%uZx5zIďz+Gti:ŤUmgx|5a1~Nt{ķruq\wZil9Sj^"_+-{d]4$6u6T{tYi"|X!\ {MX ? 8eLjO'^`M>ݯO}1nuZ8j2Vٺ\lޙ& |C Ht PfSZp1}q@Yē swM EӡbVΘtsۭqάAӒGB$3S{P 0x ט{;ѨqTWZֈ%ң- ]+D=Ok yUi,p!ݪVze9PE*]0nZY/: O,aI6 ;PBe7!sqzfr9x.>XW4nn&2 ȸے!354;

|F)p'KPU BZj-6i$Xjxwұ$A$glLEHH/٘X[uʜ%>b7ϦT(!gQ|+_~zmjO_'j$o:hFKL3:ydd/I$>3iMC l]yɺt:@) =?Q?0d’ W" v l'"!}\Z! jr!7 6ͧJ]Qg E"[VuGE@G>hmh Q_*JH' nGoA%S?mXNaZt!ܣ2%|qW̊0SYnrU]jECF{Yyxpֿ<ßm.m*J,)UͲ+ w+HbZ~Ⴚ8c||`#~Z0$pZo]-B߾g[1S][h%~ dSVߌkj$ݳg:Ct:xid<\onōͅ?K%IV7dED^?/kGv:.zQ)QkD?,Z.PmX8 Y10k6,h1a\ݩVI*hUO[n wA5;|?6f/HRd(-pV/Ϣ^D%':=kK`ߔ}HfH/fbjB˶i3*&(?PY~MXiVVytKIX]Iհdxp>mKj.ٺUb[Қa3GRBGǗ0XpF~@Ñ p4r{l,.e6e9FZW;9.Wl.f~ե!}eB {j/mM\?q2҃/s+S[Ǩz6|Y֝M[z-ԱB؞-:&"Kڎ0TG֕<BKOnG?77a9ВHr)$LopH!irF e>2!y$5|7@ܼ@2ͦ7TC#>sOQKrd?wзGmrr{ǣ1Y<#IDh;*ϝvE$@DΓ۳dirw4hÎ-QIe*9` ].,cO-5⁏鯞 68oTAxs9 .!e@hZTqSKiL2$♏$ma@i*5"@KEH\e= gSq UGDK# -QpoCJ\4{q^>ME^m[8|ec;ↀO?^Fœ0VL>sb6 'xzuܘ\3/msUI$p7>1Ź҈d($+8__(-ŤN-h-TQ#Rgr(U[NaΗ^sbZYxv+ zzvn[ĔQ\ ٱdrb>Eq,jQLr&٤l-1\koD,v&u)y=ys^_뭽J+hPv@;9! ?W/9@])FHu2h&z{gcPwރ(PƸ`hsʖDS+BKQYO3ǿ+IצJԖZzqˈ`Bʹt/WVwVvk>^Ph6=YRN|ջM+4 1 ;UKJ 5$(A&i\NΛ7}) 'g ;2ƬlUTdɟ"* )04nv_[ܲ}Fms~)OiH1gMlg 20 F<&}9 빦(CGE6Wۗn6HQFϊ|v/q ]1L\,CBxscI+S=-PӹN?ɧJR֌ͪ}&WV55cWEGxj)ИA6z~`17dDߵЭwH,y\dƺ&Q%6BGijauv]҃!,&!M$1|U-Z>ީw!(hju{5ڪ&0ˀ+wFGĀLGyNK&i k  +3~(0hwv ^urJ}j>n;=e4OlK>pGXĦ@עʲ`U\Y;qS6,WQ/z}_|Z0Wr1lḲ,7'#(Q#W:H%kMȄ^ט% MFH\0Zr$mܒPǖ?܁6 2y֛Ջ_Qq޼Rb('ĻDE1${u*Xq q#3I}W$>5H=״PJ ~ё@pollØx]z /%QWM. SC7Pܩ^~JWË1~X_jBאiԶc%! …"VShmHG˭+yF h)Ţ Ur'VFG?֥c `lukAtRT?k|neØ @I]elY ?'},:S<8)xDz{g'@tG>E%fn(_8(E kOzɷyDVRI,4e_Tu!bOC %H;[xGzhg6Хsqtck{mwLJ|T@?KXŽU#vQ2(񸓜Eh`nϰla)%nq֗2'eC5V?=!ZXwxUQ((MU%0_oփ&z]dẘįHJςJ6'<}d3ן0՘|~'б]FXl+^ 4zoRܰ{E]QyB5N[JG. ?sQzyT¹,te}[NFU*PSkD]Tv>쬮ZR5=7\@oHq鏣0#b4[ko#&xÕ?T/ns-R=G%5@NJFN5lwg獖F]O/U^rhCO⸝_bt֒nwDxEh:2V=^Nhj[7lV b_,b$x(A/)nrn/Szpz ؀b$3χpd律SDwgD>"M.Y3ȯ"Rj#o'5A\Y(>yQ); 0-/ $Qiy{x2 SrD%g3'C(ϜWe˾ynpzF]/BmL|=/$TA6q&fT97&JP㟙)"`a)K@Ob:7 @: |1xl3'2 #skQZ+I[%ކ;(ZLQb1*H 7s?%;?!_lwk8SSV"ETC-!D\s *Z{k/}{Џ[[085)dS]C 1vPPS X%05@8Ϻt ?_Ap\g(?*nԩt` /Ko75zob0xݙ'Q cqN8ld.o/lY,aK`D;h"H3-ݭ*YBd/'b1rUf%`ӆ'Dwz<Ʈv:+Om;LwLW7^%Y6uBA|Фǡ?rCQ&6njڥ%gk+hwˈQ-ۡ)ʿnCpT34W;CN+4-HK}L=Jd *{E^Q(s2|59}o7.W EE?AŝGJ{ET+{94~T$ț{5Z`롅I^_#(ͬM ȃ+Ftbؐ*[KwSJNt+(kX8J_@`%C9 HyH:\ŇL㤖JBijHV ^*j{Ј!Y7\{<4N ~> DL j++FCүɃ`@r @̫Rۡk#R.`'783SuRq}b19rjR%(%8š! pB6xHaʖ}Vܰ<F0Dw_:J)|zYGTp.⿳H*yyݷ{'c{f]7$~^kޏ5VO`-Jaf^rx*SvV8l?o@JMm<ޕ>5'`Imщx2ux4N9tj!@iVD9/7%#YuF@c잽!ޞەSMTJ M(_. / Zߗ{g=O U A!C;x6lP'2@39;'|z)l,  $v'0OFbj(RuY}alFNuQt-Sy7Y̫ܥΨYR18B&po={(?(j6TH۰Ih0xP|H{s8)00_z%>8)x߃)ZŌh|BwU#̛kvyDIVQXDJK[4ǹ\ OꭸBI}!:咅/BS T^[]O.Ӷ |ezY+ Ɇ "J9c ETx"]'qZ*-?4dLi0 O5}qSٖ qr=2GS'(U5KZ gzX ]EAF2zylR["b|=7J*)pޕSE sX3wbRk- vTX6q`R9$H@/NodRP%Hҳ#KlWˬ b /W-+eB״Xur*FO"_8B83‰@GF_m&Yiګ|#Cֽ垹45ֺVRƱYY4/x rav,JNVX=p@X8h,F [œ(Ӊ ABTW b{OsƷoϼK!IQzp`$3tF~vA3sSpDK^oP$m^ kKvC0*Y;@m[We?TrD+b\OC Ox3!W;ae rb33Stzw/0* 2ǠEfł .J b A{e\ˮKn\ቖ!ߵ5dpI'I0]ҞPC_6d۠vV.#Ԋc&|QDnKy7۳gqT6mϝ\^ ͟ S#CvP\R⇦8HZw<'*R{rv |ܜt!^HSb+R$eXs$8PJ\zing_K=r>uF:؃8F,R΅M>{E|,H.x( َVHZ$O\:PojGk3z]7~,V`_J6DA=56E/lj 7l5rK#2ƛjnZ[1qevRz8J 'dZ2$t"V6j|A>V'6E 慄qY>@`w1qWnzV1cFޚOn9ɟS52 u;F`8{,h%1ذ[; U6JVhMtNidzwr5ycN]|XZo"}_@chA瘯W JK27+ecoI"Qe0땩xe%`,j.\_ 9Tݠy }}[To gS3ү^[~2X䈮1GPTM*duZ=ى4\hll=TOt͊ "_-SR 8&`J`^'W!I#pƴ{TjT,7B Sܽ2 \a5T;[2 Q῵0F ќyUC=*f{Nr<7ZGu[Bj!}xtC[VZ޼%+qE r%<~F Dlb.QT6CIRѾ)g;BP͚[DrXDX\KA:erǥ֞/2Ďp} AOYWXNߜ%7kz#j k v^+ /Bhg>ꅞLv־9wéJ3"b $M[ƀ]%J7L^/>I׌ϻ,msޢʵR,0>7M Y]^4"-^-/; LJNkXUJv0j$I{=e5!$E @wͭwaFb83-:9yLԮ}v _ZF)1uN會9T/N7 [(Xf:HK_dL7(<ֶ *ޥet>ԣ*/Z^9eD(<"sOUu޳!abPd3|%rp ӠUER_*,ТgA>c3Zt:o3B;7Q^ab~w?_bLEe( ҵ  9=Y%-! D> Er$چ!d#p;S]i$7 Cu!7V*aSFmÙU8הs'*,"W [Hb()S?oI1JY>poA[ a5x9s$ ф- Ji.D_}d\:(cT0e!}@O!ytUC8|s1uL8t.UImq@~tk8%=1&Z-~\3Lq'U8C˕Lb8#Gђ< 8շY0WSp qw[\&k `2}p+} QKز=;q)T~`ՙD9t`Gv1P>$Zq f=*lO6R1A{<&.p2b|`~3spTѡF@.oI"(W-\7plxz*xޯeq.W񼘩 jk $Ԕĥo;uz_6ehgFO$Xy1*X}˫9լ?jrp­?$"k .HNi8k(<(O Qۻ%jUҗ? NzƲՔ 48BWr}}2}@  \P\Xryk3f72٦mgoDh*oL<7-oe>S쾸Č(AH6 BT;y"MC$vWNٗ(wBKY(` @ȤbQ:YgwOS8S M]0h%2T,,vʚ. ? + ;3bs5}˖}x6w:F,V ^\€(#!{rmb6?>Gtߏ4gM0jP6/I UҰy|4 ynGGdmrv=7M'7%y5 |Nt:2gM03yUx=!K[5EP^(ex2r*4U*38?+r1:'Od+\i T8V".RK׬Z./+ = +\>&w q;nO E8HVь![]'עoJ"` "w?]Q\I ]V&vE8-aLXu1JHYte:fnV汫cUyYNf՛ h!NW"HY.WJ+T 嵴Iz尦}]5DN<~G5\ IkIP;?u=4x M"Y~mڢ@y[yP@?NUdcZ=TE<YyCt9J!L}XX.1*ˣQf]DԶ(7^2TdwVS+_<o$G""Ezj0[U>'/ckjcu95xLU'%Z׌tqޫ5fjYs|,jc?THqGyRzqZ|lRw,Vf_ LԎLG\Qt"FK @29wH!_yKrTyٶjR8r|39uU$a]1D ֨Z'>yf_ u#UðX< h@Pj.9sVT 35~iܥjpaӔqfL}/ǚ!78K꒚hs*#Va-ْ% O2Tsi\er]Ou4O9 0!i q)bיx߾((0$)^ (Rٱl41FL Y=]xsz RBSNpzlv"/W5V;+j(Q9,z'[&ÜNe!:nB2zyߧIq0$0f3d0h(&X"֭j-WŻЬNuuOle^)EwdW\0;S>2rr;&"Du+ :DdX!Y|<_/}g>mQKZ14Sz5TD0| U5JlečhN|m d9` ef|͹uQ;*zkyzj:y`Te4<NJ(i$=zǬO(n1v3;5y~mllL e*#iiHFŹ "vg3xrPu6D`]*[{=gT FL7xEGbNx#t'kzЅ ݿ+_HRe*u9VF*o.lFO{xP즆`YH 0k9!`b#5P*N;RkKe.ߖyqލmވ I }VD+uMC YSsmC3 pÓkH[A<- 2MM[i K| @P;݂ek}yySDLsb<σ7&'m?-6Sָ>/X`-B ~m ᷪ,TgݣōlSog$;9?@}3 NF4(L\੻ǐv$R$_KH2-/Y eAPӤɱ~za8=¶-1ܶh_HkT忏Dɉ)5= )/ "=Q&. ?8Q#k./ ~)nGIC KKق}A׵0@NcQ#{*ht2Qj\Q?DUe_N_K_z?uSnz]pųl: ic WKPZxxBa t..~ .1DھLCUWʱۯ7C 4%L|EMt(QHYy+E~Hwf8ԗ*@M7 ?Ր(=؄e~y2o3~B_$xcdŤ8wK'ߡs׮Lh0J@iGHFqxm8̼ľ.cb_?g;PemfߚWV>gqW)Yq{YF.K$ЄUi*?rK_9C cW(t-)ΰzr}à,{\l4)Q6D)}4y!ԉZ{!fD]p#MٓW:[owQdqHpuWk8;DB4@LJeY7CqԌpl2zȜ=ȃP~,HE=z񏾱*Ij65/?s1?ڗ4u]W,+ ~jF'[1Bdd+Ykz{Fcyo H y{'lɫȝ)8_ ZG6. Nut2rPd8D\ǹcK΁9h?_Rgl)O W*4$BFըpk{9ƹMi[*B0[n.^h'*> n Ll!BX?) &^FA;Ғ|:ܟ-f< g "8U>\ɖĄj =58<:(hOJU:ͺ [ouEvXE^.6[;rM4ZkД-''U w` nNFv7s0rtGO؄nePWW."[CMm5p@:'*Y* Q z^,3sp'v"K 꺼"1kY' 1ZȥV55[EAin2l*҉5J`4W|)̎.V`܊9@H\TҒٞ\.H.`RvńbBt^FQn<=qzOػ"[Զr TXIǸ+sUd}K/ύ25ð< K 4Y[l9mn툭&FbɏޏӹbD܊p`v!R47p\N-ykb|rdcӰpN͙JvH,M`9hvp~~ p?2L`rRyPL^PP(Q{E5d. {=COoTOn5W1 [|ݙSOkh^S1Z'1 tqrjFtyvDdIW7ߐ꥓.|a bѴm Mw+xl`9IR`Ft-@N=^BMwiF#Ԡkc3K]ה"ˣB5"-t2<[-Jv%o4ڸ<,'O9ŃB Ej:Tz^dZЋ(x/UV=i$'1R f<!-1j杬gIţ P Il{Odӥ @p}EĐŘC.E4 y By%SS4!?~d|Zl]b4ZuIa"Xt;/ J6IE.ѳ˸:F/lf]ݬ)@8t~Zc!Fo\tzmrLb3>L/]JNtjYXO%nd`'ՔPUl bM<Ofg۬p`U4tyUxRạIyY=Q*,F_q\5&B ,yX2pZhM8,"`i#U.8nl^fg. YA3F% Rwy3wkջ.- 0=[ˆEK{s7jQH"tlJ4[w7Yܦ@(@yP%RZϐpj1FB3?%S6t;T{H<_Y TRLs&OE60` 91/1;FRݫwF' cc^C=uͫIu#@#Kr'=!| g^yē8Q I>㭻x#6O8n@3t4"R&bd+:(v*֖=Gc6p5x-B߭f՚$Y7Di;3X5PR@w}~`g.ەXK1\LS6E2nƓ_fyf·=c`E&:7Z+O@/a/iVңpѲyhGt r{rZ6=,l9ϳ t\E_FQ;[ҏ:rgO.U5jeB&̓rXUsE Ͼ;@cnMػ1ކD}%ٺU'G.!b]V]Rg?%B(/* 7BqɝTQ.w+KjnEց(`+(Վ~$ףm7pBd)g]$[@Dٸ!:脬%5Bgʍ"I`%20X!'^t*  Ⱥ?@1tmJ72×o>1g15[5݌qDiq^r.z]g" m!PTtm"Ȱty=M1oM-K' ;唿[]WN C7ɬaЫʻ\JZ=t2n"-Vp;vpd.x eIH6i> &ʁЪZp(b{y̑a“}Z݂PiMȚl`E_5yH#sXUt;jTP\L"FZCo׉ZIyTJApFvnA^4ɔ,OgV.ca*,%}ƹ  7^R!M=6tЏ9(HU. S!HY6boѨM!ihF@pq@T { cVvzpQ2)@9F7Pbl%XԎؕYu- T#phfj)+fbiP+10˙ԮKfTJ w#SȠ)]2؈" y^1+[Mm'c!L;pr7j~Uȗx:=ފ=!Pt̓_hs7A3E.9J[JF,: cGӝm7~(x&}D87smcY$Z4Q}yx4!/Z=fѨ݄' (M~GgEx-8mCTDڨ;}/V™*Ƿhlӫ@x G՞!;H,WaGKjw"!(t*PBɁ>P}̴B,"EÐmڮwDz3N6gx۷@N)1T >5aГ!r :Hh6Ovq+{px:oSKp#>VkEЎcdS/GMagzZ?g~~l\k~ P%'l'G%AQ ,-0ֹ5JGvΖ';΅\xIu!ŀˇmo "Ηt~Ss}.~K2(@edgCNK(VIab| 8 @ep*)(zb QE#v\1PXQN$w?D8Q~ aXrݾ8MJvu k/}lC@--FwZ:ږF#pm{R͙e. e-bfg lnD{RRF~-.;G9~h5Kd8mلՙ[a Eww":GCkQ7q2rI}L.,=R$̓% B0`g~tb E!eMNjGv0N];#YzhaBujFc9Wj3{`{g!nS]x.'Y0U' XߖXsay+ԉǜ?.t>MB _fi1 &|;d`+idcTAuN{64b̘ayQ1#!W֨d[6!0#O/V^zf=Ku>sY'G3ՀxCE;+\׶1 lͺbo)Khy8Zn4- ]<Д| r(E@G9H"e0KT"gRMTȢ"(OqiXWQ&Q7L ,kjr@1tU]> >@fӢE hHw+EM7Y")pK#ƵvzEs>1{.-' 6eQO:\6rή{܍`pr? -]4Wm2N?v>c.TV:KG5D)tsmP+C)>c|-?҈tcQGɱ[yi6TYaIi1Ɔ8a>xBzcK9E@v_ߕ*M2V2N!,LҝAXnй0(C-q>*V4PXۅgo5K]fR-~M+ei#dݨcdy_9pl@FU uOTN/W@o }]-eyF[kg' 2j3Vr]&Unںm6q%/L4>Jz8[vdcV鿃^ uRxWv} _

.eVAl^P)GՖtsV7r) !6E8~neA:cMmk^}^/I7桡z V{ =QwQMS(&T!\&ښz^r- x}ߚBsaFw(ڳJ?{TL>^(Ѵ9UKv!r4_+,)@lg{L>xpѴ3GTrcx| A70?Ƕ+b~ߎp#UP|Ua+-Z%Q*P'YF ox*6VSlGk21q05GQﴵ;y6r#\UkW`"+鿛uˉ $D|xajjҊ;* 15t>vuޥ7&V *'DW/|]ɪS %*mFƭ-̖!jy3{Ɣ ,O:d-3+%lsBmEj,H9\Ѵ/s|$"y{敘s(E{+1ך;Q(jiȤ)N8~X'=^NiĐ Py„H,=N7lmVVR8C!.zeU"M1|Uh{~jEUe JnD\'~+D3ҏrV{PPbFB N)Iq3S_hՒ*wN၁"$Yp@ Ɓ4}u"zpMԖ~Fu38)~RI}Z+ȣs1c[մ[68Z}7O4^CRY]Ca=êcWΩ+ah۝u~a;Be%z-QgiCrx. q>q<%@TZsGO1}}Ոp(A0:GeD?ΛMіFz].3w@ ZҟR8Φ-|Nd6_֏3OǼ1΋!K7I0 b!aQJJc{LW;*̀Pgbϼݴe}UDKˎO3aO6E^ ]aXnVCU4&}P5g*1GF{33 6H'sa1}J,D\4F%H&{NU5"/| 'W Xn_0Q˰yQVA=r2WxE-NDOE.;"N'ܮdF˻{`b4v2 a'q ~&y4(h3/$ 0HAV(R{>Z^iV\g5q[ә=5OM ~I t4A7^v3_߰$i{^PSF8ޣCO^qtCme |1IXa/G#slj)c0":R;>b*os#YC,.NbA&c$48PqV̮)~=*–Du(o5= n憠بo $ub)nGOk*>{դm`XV \h Oا sh0 {j>Q4YaqNEqؐt ߹߁?JG72),A! )3 `!3t1eα7ڲ9#>-F8h12Л/۾2x c"' )!B! Xfx_g]UD_qe0߀R ۮux5ŸCw6ѷ{'&lPɧ}ӽ&n 砎ӂZj]j5.vKc Ny#p&Zq1:txfqU崘`vٻb-3J! S3s'&_ӳR)L 0ޤ/^ BT? vIc4H[ %{rJ<ث>^tcDDt !}Q,، )D43+xTC~TPن9AK w]41^D ]:8?R6F~s1ؒ{ Aѝ8D u0OQ7IEzd3L{A5w> ˹l(_T*I끲2R74JOP6[!&p߆cZ=Yfג8S'D|]!fN%R[SHrwf n灚^\W:] mR_cv"?It +~)͊dټb\5©&5>UQ A JK9fPaTbUۙ4]vtHjWA\)|PcbG]{*j $8Ȇ_>^9R\Y%1n^6E"ޤ]&o?F}cͦ> p.T]/Cg4E9bLT;q@29w@]}i{X3l_?'[W3!VvOs 0rFSy2otu. >k3i﯃6[ |Sl4&=a==1R. &:6:ZlXEgѷ ~$yg4,:i_X|_~!\ 5tqSB+~[leUV 9_ $NRܷnӼSvb޶֐w* r. ql~s -`0I>>*D͢]1^ˁ{]o[* !:~6v^ QQ6DbMvnU[7&RnF8k^/ YY ;lH)+v_XV)z~%[hwI 6R1ذ`(b((rD'2m'c=w4Zp(<1ͩͰ0>ChUX8nGBW3uר%1nDA VTkC+҄Q6q*7_!Ub#5_)26GQl ZsM= $&)\ת   ZK8$X݌Y`p' kK{=͉c"<[YnH?r6 ܯ3Qk 7 {pOp8+TU8jtt]ff͈/qṞΌ Nw*p _n%A)>':L=!,AMkC7IC ^IhezIK6@WA鲈-<ϫ; <%7"r@zdƳswW#+FWW$hԁэ늮n0]@I[anut󾣥ZEQqk;X㚧")L5|q\VC~&ւȉK9. SE z*ƣDxz!<#.^>q.M!i۳S8[3/NXcJhj556#5MyԱEZR+ /EInlijKj!Ђ0mCMnetS/Cy BW^ "{HgfTG/bMcR0iOJ/M]9$=qv~_}--EðEMds bܴUO{V,|J(q^b-v'DjJͳ2nN]?AHdRO,7@Y{_LJ8qgBrzXhi* b(VTodpڒ L#9㮉#=.wUy<9 D%4g}y':XH9li,Jz֔ 5FL} BM%ZZک`z39/L ]`&,j% T'|C^)c]oˤ<CDB qI-iy| i=ű0 FMV`%gyxdsCihVTy&K TcAR~r>EeGQ8ܚ~H|F\;8D'wvd8\qTB<ܚMy;?HuxK"8ˡ9ԲA L]sof.M++)ɯ*B.*?-E,NRP)'ћce ظQlM9Cb iM`OO;6tԴGTLm; :i[?eU:'I93uo%D[ tÜoJM-7UhMx.VS{b4"\zo6F?aS`4<'O@{w) rKI6p7V}SU, ώ޴$4,mӗH%zc >F[+]OQR~t8C? @X#2q>혌EVF5}DglSSٴW5mp%oZxv e60 ^79̘\S3#hmmTKVMw/I #2nNc29)Smpj`5A|z`,^BycM0}dا)~&2vVw~\N}w<=7 ;NgRj{ SjAW~V/ ,fK7!a<m=Dȡ2⻿}rqHP'rW=]{/(LD[\zi<n;OЧ0D+Mu=>I8,lk 2  7CBgT. 8ZVSR(lLRx0`蕤"BG(O|;OX;3wF [\]*rOKdz,>ӫ1WҡnHQӉ$c0JRfP@ !d);k{[bWTut#;!Nsϩ> .ҕĒ |򕌿VsCN **iOE2{:h!3*|빈,A/t<:sڼ^٩Fch@WGS'M șձ&p szdee4*J )dy #^ oW%;n"] %ͽ8xZkuW&Ara4]v/Cb")%M,'݋45h07' >#3 $`qp>#f0.yD/.@Ĵ@>&Tsp -7΄֘T0v?o#8$A66(}0oN["-L6)gύžBGi=h0}z)sDI C56{UR= U h,23 >bWwc tMLOgh3JG(<<$ːfJo U]cPd 4 +ƫ"o>3Vݼs) ^Qx\-࠱.☴tJUM#IrsoҲ y)6-Vb]i22p4op?+n @ K88[״K qтHgjIzJf dNAV{w tNAy9~&F?a:= UWPN$ Q!YP8"/U[^}oKy3Jo2^V<ĔĪ׉g]$^?HbM1?{/`2|^<Z8PL LBCއ n_vdKR1i OCB%y=o\R]]&}\ŧ'PbX"__\8˪/wB?e+\$IvYUcnπKꪃe=q_Zzd}|L2iWW&ާK+QOר9yjôNTaPh_h]@k .HesB%E+Z@ntms\kj!Y)N6SbNH7dt68V6@ |37anȇh^))gpiKF?g/<7v,(r]puÿ]MR]|\3SLeEO;%0~Dc9Q У؅B`DxalĂهp'g NG:.3@si:/;-G) #~P dIڗ_۠nӶr dFim,.*,6wȧӈ4#)N`]ybDBDyG: %Rsa&2w޼;}d@49xE;\߫B@Hl}˂LFkJ,*={ޥ:\|YP-N0E3X?. 4:BQ iGk[fş@EQ%$}\?ԯL\ai#hsx1?&5mJ ^WHy8,եAFPSrҘbw6@L$ %bp Dß_čm0w䔶/%FʽnLh/iwo#lH"7".q%J29%ޫ 񿵼fg$oc˙}]oe͊|ULcŠ9txDЄzLiAS3}{Ch~2-MUJ҅a`9\lqP.hIηot7?CfYD4fjubK?~ |i?-TTS >Ė RYΑ=ia~=*fS:JXSV>$Q aWbf ѷi>n]@ G ݲ0U}J1#qb,۟y>]&Të&rkzh#R}e)D$f$ߢd$E2-jQ 11*[ds3aVrgy37uTG1EW9Q'flEH)Z#[73]Ury{0=)c"5_UlaT6D78zxm[Orm6(Ksb+DK4m٭c#\ʵr#*iWcn{2]-WQu~EW/u{-aE4ԽF1fx :90ѫZ@I=٪% /Yb2BT)9_+ՠHInT5:NYqAr$Ge|ժdѢ;K|jm_P^t 쥛uiuu8$֤:H=\]Bd-^u}.IRkͅe-wX@ ۯ(g0^';Ȗ Xy-x$'*Iv@.3&ˑ'N^&>O=ThgGxxu؋J[2uPJeZEaBcq0z` VRf';۹*[-t'3C@i x'HÕƿ1ߌ'ݱr"η.ϵܚQfL]l?6T,?eObݩx5-=F+szbb=O*s v!BI: 3Zidpbp(PO,ݏv%^h+-a9[ r?7uiA*F(* +vE-~YSxqtE**A=D#{X&'6bkM+{eVghjBko ?2Yw7JYڝqȴH Ujg*h*CJЁM`HND{T򏂵AKooƭzrmUi$w@If130vaP?Q@iWkPY9"YđJ>_2C[0>Eg{kI+z1 8/,rG9T^A{a:22S[:tx[\57SR]X*-HىS@E58L?WDNG .qt=CH5|͍e8ܴ*6ɸL<|ڍ([& ֊GIcUL5Ԁz[g)5ChQWwVĂi?$rS.;Yׅtw.]`ۼ=÷6R)UCP߁`FD=ZX)G^o@GijمlĻmtbraeM7R?,p?q[ee0-Mj݋ ܱYR YհCH.jwk`A?SqܝJ4k$9J3k w",0=;S\=gŗ8>E#w>1_MĒc0oyJ-[YOI⡠[,(έX{P(e}9x ~mZ »-8%:͈I=j9Kd^vFZz $\VF ń-X; {y+lY=Hoh'SSVKzBtu}߳߫F9G4*\c*1'紵Fkȸe7(a;3ZxX뱦"Yh̭ _I Zaìsq+N}wLӷ\Ngo܊,U!s)PdU>Vw;E5bDa,UMVsՅ: jCcL])w u {'}iFu`>ˊpuxCyVv V"i5nl6oR 3#FF)6hb2_X/ l8 BX)¿ao+fSjDzㄣ| ƨ".&pKOIx<X:Nk5ԓ#X* %H·IxXvLgic&yOÒ2EMV ZG yFz#ڷ3/Asg}\*p}4blW"(&mUlQaՄX_ɽy{Sz#9Lu0o?~QVER~=c:~e\:toW}imj4wO^x%ݯݯc69QUd_Ò)QZ^. qh`,avq>*@FhE] \s|XTPojiB2\>]Ξ/<> "ݷ7 r;߈&~C f3^YW1q]Pr@ô4!աDKN_X{ tH?B 1">UАkj~QG63:mf3EW1#z`cHVuE9 mwbk!TQSwC{dٔ,!3n\ٚ džs F]V-W?M-Ci# A\i>[HdUŎ-<'uWc\fKC_Qx0sՑ" \J΍~P^ lGW nKv*;iԹo,A!i>kO_[NzYq{. jMo(%kx]DşK˫~Ga Ú1{Iճm3~$ܥ43煶0@Xg^fyV~~B&ǩPB!ޒ/}B.a?QεV~Ө6ֶ aܮQc:[E7&VyQr0 }*xZ͘?~7\zU\-^9退uh혋>nF7Bb4@X+ 'ӾΊ~l l4$PoYXtʎf-~Vv{sK?7oInn{ )I]@x~nv쯔^^?f,ډ؇*%c>l/U!ÐX]#mR~`l{1 K u:)0)'1;Bq"4O$0 #<XY;%42O ysJ&z" bO#soPt 7[Z7;K) 2;FC=U@%|Idp1}h3>̣-Yov^Ҹ̒ ^$!. Jm 6b58bE\ DHOU|qa0gBd(} EBЕ`TP[U' #~sm?åV qP-&aJ3)LWVx3Bi4R28^v1eMJ,GQt[2_[ʶ:h׏)OIS`75Y݇ʸ=]*ޙP`c9([@wWV(4q_^| Y5qo2g#axG^}p5(Lۊ6e+%W@zBn4~v-v>\n0l20/(@x` *d~Ft?Q 5<~\%ÈNؘu{tHr2.s,@d/Mǒ _Fb gx΢Ua:Pz*Cٍ'V4(nF'iV' A0l8@Ok:[u՛m#Miw[}%fs-(%A5^S=_6UjX|CYg?uC} p\ʫ;pSͤ;!971\[ ѤKW1ϭ?!H!ģ{Cԉ <`n2 pZ箿{ښav eׯ:qo8gK7:- K'`Wj:z>UgQ6{b54h&5]U՜ܥ)@RlW<t{ x_V&R4AaZK9GMok{Mm32'ODUyMNUO5 J>H,.$ּ2'W~ }wU)tS֑:t lX4b"/z Xkzx(I}:3b2hD/cf)[Mm7 /UWɞh)blA LSh6̄mrrK(/b^94 )o R؆H΍;"Uxi}`:OO6*GC7-RSY~;x"`樋c{6B+ [zßD쫇FӄE׊XM`M? P91Z\2j.EfVs6iM͋wg=9Dpj\Wm!nLJ;^ۗ6x#3!,g9g*hYj(M[P{WxSH.ynLP5:Ĺ&բ&B.8.IX-i1._Er{җ盄0рO.Q<^e p}Ul-/ɂVDnytr'!:w)rG ڀ!}}W"rPReJvZ۶B(sOvwn }MtOß({ZJAIZ=\H'26+03-B-WBp_Y@dY,k%8rMN&/}zV(QjJS L8SdQ3U[[^rEمCh9-At4(ERV GwF:e{B{Pc@~IWkfK2)`͘~m~0j*!XDӫ]YG쐻/r`JyB%in?j }͈?m طe!Osx|5]Oklae {{`p = qn =RCH82v5G+7]6_ke\-{~f>s*jR m?Z+"n.2z?<m̄(a"OcJlո{C4n?Ώ\dyZAMh pa /،8w .U;#aT4CZ!5 9ފfNaVm|a %D"5Eq{ҕuV TYpqh,@7B H>^#ڣdrXn2\a T%jGzf=*2ig8O2NOZ,8aiu:6l(d[Dg:;Z嘧-F+EJ 4,KI`{ڬp2qttehww{ ְ0yo$@ǎf<V$;̚7k1[2:;.$6=w b%Hq|210&P>킵P Ul-l42K4(O{ꎮk|F5,ωy{0Q&"2c?\E-5#B)\%˰T;ZY+l^C:*$!oPP4cAs&$$O4Z~Q%mhΧECm镕+hg'ɓ{5<URb{b'j.m(kYN!X& Ƙ-Uሚِv s0Pl BKل˕N"Lhkr& (9B$ ݐžǿ{%tV,TSf [@Uq춒R8iXQ0A844r Wx1 B$o?Bfᛶ^R׏WfQ.[F:?pYfk,z'f#a.T+9-0Q>6b> p\!h3Sخ]3Z*b8gZmF}1Za QpQ\|h^c1A `^Ӓpefs d g `ס2shY/dܴhSB (3u{mG89WԤu ("3@@ᒡx-_  B]St}uaإvIVՅx@ӂS@ى!);nk\J 0CN;UunHx2&2՗=Δd#F]ܣte w7腝1ڿvݸ,+ۦ AQZl^Im&/^Xp6j3w^0LM4c$d?nHVv=Mu&~#ߡEً|7dsK^zxM4=` (Q`>O EޘOt JoeNJՆ;Vxl= \R*M{+ +ѥd55pUwBP5OT1q޲W{'Mj-LERb+کQr]'mB41fBV`KbDawmUI'3nJj+Փ%(E1L~zv3$jwVC8^/Z:uOGXK )y܃(y4 R赔;7gpx;yVz;ٕKP$\ځ<"̎f(؜~G4R;E) V8Aq 6SˌƗm13cN\Z&צ_jc=KFEGB?(UA;풫SqZ Z'UR828vXBa)D],޹H`m2MlJ`U-HTo:HRG& y* K ҳ(&P 21LzRkرSYЍ 0H}Sd>?m.7(%I|Ί10f0y̟vV=$>ɰQ@r_FRǁVNJ{jÝi,*rCn8@___v=,H(i H`@Z~aWjn4'>2&m!=d8zU*,TC`τzH\Lm!Е 9*=ǵ[@(*[^"r+yo\Nbx7'ǘ[2v5pVYKMeVpB+KI^[-4;Z{C7_ k E!n!r5N[{wL0zlwh^@֑8w #eW"!4u:u'}: a恦<Ж)"Sm|[ ֡>CTYaok܅"ƨ&(c.&Q)) #˘J {1Kמf\j)lɅ+i}Xe+]sF, #}o*oF״B~1B(ppY W!%jngng$kehQ#_~^ pG\)>sL ^Q,gW(2į gm#IRe\Z0 zժ-v:[Nie 3cWQ_t1.I}L! | ݹRylUc^+&aRYR?5yTYԦȤ.]G/.dH > <$LX(09ƖgMi Kޞ+5d‘Ǽ>:Y&;\I$ç#Q 2QPZYf4-x@3ykABHa3t$Nn;,*X!{VTȯaϐ$,^uAhz_,!pk/>׫31e7I[\2H(}w %Ɠ+f/_s U>]>RA]@ d.ISSC5=߱L ϒ ٜJЗG%+'PbBwj>_CwmS)ct_eWE@XJ@^g/9-=4<%#0l lػQpY Hld~wZp6#ZAZh\bb1=̣a% ;nL3^Өxxԯ9AEU/y썩ٶƽ[Jpg`B\\erD9XBe|; b*rp#hWt@GLz^v9aOzm,ZrCڤ^y sTKi,!KKp<"c$v*O 4J%p.PahI{cD$- [r7GmɆ1*L¸ysxt]8)ֺp\(6򑎒:DbReDMwվkn=ʽHfshE |[>b Z A4vuC-HԖ/⬁GoԐHO ]a}+5-e'QD 80Hfp#h 5,g |5Ez|6'ztl/֔@Frgis\Ų'd( [QqF=)#krn^.QE? %?0>Ш} 䊸Q[r=AtNR]$sƙOK.77e)^b,?5uKn<&q˻UG&H^1\xg*KR#hb.:'4~h&vl.I1ܟmMvXd-< sU(IN/ W*@|69pf/xw,0rX-ozlU0 '~ BCzJu!?p0~EBKŖ=×9:+k"HK$&FplZC|gGS.*>}L0qC0+:;gK>'a KW٪7Wܿt+vi7/gGaa6GWy\iEGȡMmլJag;ek:bdUtxPږؚU{Ith{ KshLZB3n9ܲ)Zonl,yhv/2!10.*$U( Y'qԡ4b#_-'Ѧш.,IQ+ R/6.l: P*. =$=L;klpm_.T=r\SDcItk5 ʫM`jc& ]{9&yNf.NN:BPWӀ=IR ;gT*%F1coPѾAqSR!-HN.09<)'<&AOϏ l9as6Dʙq #'?|KFG%U棾 ؝ w/]wEJQl:j^U⮶聂i1E[m ArNLy =O|VG SʭCEe_9LV_kUQ#h/H =̭$ͬ.C(mLx$Ztw0j8d'ŨguVJA@CtVt8*,kwriM>sbλ2jrP .n}x5',l㭍& &^-{ EQ:ГF~"c-e|]89{Z0T1XςW?!9ϝ ASLijRb9kn`ⶋ+d7#is&BQnuYB@~B˜ނI;ts,m_-|AQZځggO8V}B/m* 8c0h?%G}IfBaיXeHa)I cI{5vWFHa#a ~= j [D X밂J e8T,Й *_?[Ҫ)mC_FQZ EO&p}n|-~"sbR)z܎-I>i؁UKՆ(A::a#zQ$dEX9Zavh !V کZ.!zm!joDgd5  t_RuBIYVU|R(h}=~CvK򀆜 eDnHkOðf> 3icbַ๢0b˚QQ&VB]ԢU]§mF(%ÙV%CϠԧᄜ 9 .v{ "m^k{LƺUl\pi=xIԫۊTFg!ͱ?퇕ecoE0O 2ָ=VXwp{F\[҉! p:,Y=xNP]N$gu5{z"+SC V?.>/o> 7( ЩUy6UƗLhțoXAM^3bdt)TC:7{y,;oxg#]Y5p#NZ꩖I}";!sŸe_,Z/ܺ(mxsBfє+u̲8rl2lYSO"y$+B_;CZ(:@DҷScgͼZU$\=KryD9u ӫq1pi0*xm/7#nG𲵠짺o%ٻ?,l[".^ta1pWQa% ̔GFv>3+yN%JؗlCF*LFk+^  2YPt_R[]Zuڟ&`0$yfu&0XױiCp Xܚmb/qIQ89%dMV1bwZПP_ Yf;hOc'Qwwm q|1`;q;oZ6ʣ ,δ&ԧQIxׇ(ezÜ?|mТj|]^0O *Dr$pq{VXi{ MgO1Pb"C92AKs &u!BҌJJsQMm&x\ TʂcO\BwzxTYE,knߋ8} A P(vչ賧;i]P<>##e B/Չ;BI,<%1Фr4L1t9ESHNlET$I 4aev|?cjC]t`mn{Fz\ExƋ}u4U}5Ap]Qx);3峛׃z7|BId;bu۟(AbMoӲvj7o Yg JNUo l1p>u 0.r݀C+W`=e'ik cgU0w$͝)zh&*4ѧg$<%8a4϶6yÕxMK.:%ըa+m6s$1D #zn(Q!O+q- V?\/./0v2=!m`/-8m>T_RGȪduRc#c=p+NCe9r5)BWLoh;*|RZϦgx)׷_ BXh8.@2k΅t$0{1~[اÝ2("!nʪ~9O~{s+VQMުtB-[hQd# Eä*MW;MYjl@]9Ѕ#_GZ՛Ţ o ROԿ:C_=x1˧IVvFxͿ=]Yօ}RbS"F&(I힧qvv{8QƎ37b7a4bqC⢃:ݶ5 Qi2??4A7mn]a+EjGigjPDK/^0S( hg Q%nW.1,t|~ wxG c4@bƅWiKN`cfЏ++]`627N#iw_Jd`[Dfty76W:eTIF| PS3gͲUuT>6Q0qQ;q_c5o*N'zfVv[[F ץc7.<)#ADSBi*)Ն_YF(_hYU⾙ᒴH08=.ro$-] ; xo@Cc`~/@ǨsPYa7w(3P80P&AFª`mb共Rd5JD/x/ ~BpY52W%,'mA8K  .Y;%La)xF}$NAW(7s4U\GBnMSuOFRDj(Ѩz-Cd( 6S ݴ"yaZ ҨF{154? )}0A!๝NJޜCwUҖ)#⁀C??"ckXʋČ.*X0/șr|QNŸ:2*e˸&;'Ny^ܘ5Ϩ@EQȑ}qu,w-hg ;DTg=q+ktw<~=Ҥ{jұ}Z^y+L4v(ͩЪOt<ەX粞QK.b%ul@s8O?m }#-LhZ83[yeד0(/p'BkR%`OJ‚#H&q q@-T(&'k1N1 ixEZN\xN 4iI !fǾv^?Ȳcq,&O2m uMtG1YJ> HHhaq-/%Ww e5#:R/9m EM䣸+9vQlU ZKc4Z$Zdi_c2zpmdN#40[щ0զL420w*& j8)[\awtS&uP 4CXRcgl}P'-*C9Lds jxJhZ`}y4s+(^!JCa,h=Hd%QEj( a^!cxRO1$ap瘄7-:6gA Fhj0ҹ:Q>rPΊm&cDn $ u 9->X|t& g>FQ`=ԃI;+ص׵ple%#rb]CdK0Fj2ʗc<muRyQź7<zGƇЍӐ4b?K`UbDXCm`ǮR;´i t@-:h:Df;Կ{` ^VƇyNɦͺdV4jœyt3+|*?ski$ gIxcثں?ģ~@y6:H=@{, 'wI)"gy[WŴͷ!7KŰQT2.Y0kSg*Y,}_Y/XH]vޅY10ǥv Dlr8*ur[9kDO7$ȕX v@|h٥tcG/AJN(0v zwi K&L(Ѓ826H=/il9j0lVKD9;ArΑjt?yh~l/r~KtyX .S0[wP>YTv_JzˎIi%6Bzx<БQIZ, ӟ73ƎJ%u?*Y:IgyH>#P/D"Gwq\I^`9x#)y".1s JzC͛iߣdj:ԧē.fOOF !?+:|P-vVĠEc:#j}FBp2DC?5}wR|XiR߮8{TRj5}ťoՋ Zl&ޥ(g2 y&5 Gf:^5UϽP `dcח4ê;OD] QL_ 7%>2$eV89+Iz ~=7{e]X;d.`J+D95ʕqi)٘r]iZ!>Ӷ9&lwM^F`'ɀcik />i>& )Vx(+֬Wr91@\Ϋ&ɍdK0,[񐀔;Tkܕun:w\Z^h c!)5k(R_^5{Sy Mf֚dJ;nߎ,aUT8;7ב x.ʘF:,4Yp |*bs">xFd:mAfP/g+G b% `wT0̉\L4|?-z| z񦏥*rzp篐kN,L6p#:Z֜R]h_k6mٗOػ+ om(4EPJ7k3MS希R'IwVc9W-c)!VAZ8uuD.,vn)5 )Wqfg 50.$, ^(l>F+96_/oiV{޸ῌsmd1.#ء^w>"el Jg~F턥Q]@_bcM߽A<'[֎S81u2(%9Q&a_=ᨋN~{;9  (A7HO> M-8l _)c'_Ik0o\S9M^f~K8Bd}#L䈫 _2$TiW!GF}4Z 1-g:[OɋCfbO ɯ&-)d)7O^-ՄRΚ: =. f Ia 52>^yuA6ntO QG irٿyVPaղ(Ȗϫ,/$ݴ̠e{l9Iտp3i>tũ |dFȰ]XZBoƗJ .nnrh4өp%H"+c:J+}U0y-8_I4%g*;RqH8dDBE:I߅2GỵzCB*! ?zƸuj:iQ&5\qǠ~XC^҉{-佦cY+V Qу~vȰ;M2&诉mt'H K."p'I!iY[]|Nv5}2Om%əъ͂ƛ9ax0F+B Bn~n PZvz'n#bǖSHD8Vvm=IkSԄc򻤯iݍ?aU-B,~-AoׅrT}ܻgk~՝ꔖ﬚h1S(z;7T*֢卵U6Bpzy>ħkKkktHrvԣM+ڧ<6{J7FSfTuDy +.]3qI:vjݝbG1Aן+k#Q k*u:/!C~c G2gHv"2 U <Z.w*O>^tnE|Hԗ1!MJ[㑹Cdj'}~H(h Z6dmHI`jR"y"be 23 P`hO$u?FVZ1\Brh,WͲ`-BQQ'YUZ2UNj;Aaj]b?ߗ`$57KuҥѬN~AnrsǓ 5.mŐ!4#8ҫ.t_poXmZ51~5H[Hx~ǹJx+q;~ o*Sm*Wx]`?-E-9I&lY{ǰwtTZBmՀA,~XPGO2iN~c#lʪYaic\"YMϘpwc?ts9)ǂACM&bzZa$;0)g@_4`Qb =$}\aBTDfØ^SxNݴGJC>5qT:#k o)S&'J'fpz)G]T8 atFدN%#U/LcFQQ.9T PDB| [HF%_Cm7cl "5Va*,{!/_ tvq+`s%!tMhU *î3P\\PJDF{Z{/o$ ^31zW.UяW!Xz푺_d_X, Vf)DPӆa9nJjE>4M~!ᒣՋ%#fuu ^Eϫ,>fBid˻Vߕ8J\k:ep0zɃ~bagZJ3Ɛ<7L08b$B7yJexzZ>gt)UfI]Fw={.LU_˰΋$!R=bMv=kҞ;=50Φyl8Lۢܟ9,ZIG1Ad:8rF aqxˑ*KQw-u(K,ՌE''\݃)mF1`5ƎDE0Su|>5j"zidb+eHifTYۻҕ[ 52u8OS,L)sB8s\ɵV%b'sdȞ:l@~65R [2ѹqRmݓ]V?"ѹU|b["hJX+(I#X6]gs;e%{o|bT W<=)|n8nh32?*j2WnX:ZGd{q](&29ح=F n̨^!=d|19+ zt{\ îST3M޵j;F99ٱHIC˂ڀ;a?虑mZv~u!rY#ײY8sAֳ1o^0fJєO_xRyaI(" 0 %ܲGUQ/Ezgき%u\h$-V'M >07m^ZNp_)61YS)6:( 3buHV5nFy1g$C=GX-S+=/6Β\?c(Qpj,\q ͿJ"77/3peUOĚ/9EXȪ{mhZp~R&ֈ_C\;{@q1bǷG,J(Y}f.P? NPGHA\. "uPJ;ЛqNI@c6:|@ąe#E(J6*)1CQlېU Fܠvc2eCq~=匾!II:uu:/#YO`Xn5-૫'CRil_Y>nyy61{,"iFߦRJo)yѽ@ʺ7 '~RSUsb!j~/u2P i=.l࿟  nbb e뷞Xةr3 0׾G2b!&>rQ{଍'AgDfȄx;ܧQ'qt%sb7/^ZF΋&S/k^߮бE$R\m}c05Σq^jpR9ҙxƋ0`3& 5b4.Q0RJĂNk8ȒQϱZHYjɢ_d}I%BUx)`j8;u64NP weKKCl$zBQ6 cF~?5udM_ %uPU `=Aߛr%TQYnOY?i=[ȩu2R:shXP^ W})mڒLz#'ƞp8o(6exXvMDӬj~kybBƾ`/CJ=ƧrȀOt-j=x s`aea.\p-mO(R6qR¬wS=ypU6p,k Fniҵvii|SUL~?It[X-An&5=ZXyg~N]uHr|_'i>AvIz{:oxZe_;$ 0ܩIn 0#K(sUzg_N,r3ǧ5 p rôA(+%F8r;:dxXWA 6-}P'sJbru?7y\=cЁbw)o X6+dRXC_؞/OQ (Ǚ*YuJY/v~q)k"v%C%rfԙEU6np榄_@TwLS( \-c<*r=f1ߗ]Zs% d>-m.yB:G;2S7\24հC¦ŏe~ykb E7Ieڀ&T$WzNG5-;xFڿ۞s2^Nm?*rJØ0DeQF)X S"6kٔ:s6*s;r+׈VH/5HYB>qIwM\v@~G/bq5iX{ %n!c_%,\pu3Qs|LLgIk:R?`FnoN3# bVQr׬6iZL:Dڡir Zk Z4\Ub)(O{u:l)& qM+-%0g8qgeAD7XI褫oR(yx*?$wUs dx3nJ[鿤PxOU3S`[@9vբ?|s.L,^3[z.7*t켏ov*AH'y ,! CG#PR%e0G76{?N/.-?VQț(SeĎv:kntNȶ푂voEv"nZ{}R]8@#aHEU2LIt%r`T+VVͺrK0n ai^Z}Ѐl계S;SHgJ=ͩA}O|-D$vN{%UDFYd\x*֊oOHςzUʶ·}3[@%ZD3f(5|?Xg6t&`˥hYUMpF˜޻E$ÑuZ Kb^u3Mpa9r>gYf> }T#(7,ukRkbTx<ry] m4δA'#ϡoZdʨ*TV(JI^#27FiM)O'v'mRmv;J*i (ݰ-dKy%{@r'Oq0CeODN7LԼ9m λT\2!8.^?HT= f5Czao <%~jKc]`F2Nqce*Q}Wa9Npݎi8'.:7a˔x;]ӰƻfZ'.H3`/0U\ E;v qE?_$|iǴB4e`(NL\;^Ȓ+,+ _oXJ5m^eF Aj3zTkA5>ݟ#`n؆_ एY!ƣֺoMsE=eiTwe I="^͊gch5Dcq{.Jj6삎 4<ȯ)6x%5AN4X٠s@#? /q-4@О"B~EU|qA1 U3bMK1lza&\q6tI\ϙAI7 0>Tpe@x|#Iڷ$O+hr>1&O@[ x !wLůaD@B_G ST$dLT{TzLXG}glN}Ѭm fK0.֟< }N G&QX'_"r4stk K}wJU=%ZOl0)+_Nqnq- >Ly pΆ0)2.,> ?6.\g})hp xtOS8 x̆, HÆտ}MJvYF1Yӎ_04PV Wi H @P{b o8Kk囵D%gCUd[T6\KJx"&0ZuAE-=hc {"2pJeȇL =DYDP|2 .0qUkGխsn!e^aHBh+ <@Yy;Yʐ *S@HP Ai\ *:OM{{M6Ӹ|<4Uc ~#z䖫 .u·&nWlL`})ݘMrEv g2mH#UD{|QG|&8ʐ}Fm35^SQLҧY6tP. ƦkȴP+&"!ܒ|CIRB|qf.|mcr9\OdUݔA&6&n.]}e)3}\?]CIF2W놷TZ\D}*aFM{* !6XY]eekE{.hrx98tAE3#H%AISJ'>ƠQ^rG;[fRcm1")NY$l7is%cyҽ\ ^i? +Ÿ\8Qb u\0 !hJNɘ dЂ'7Usz4@?!K. tMmw2]ӹ_bN$2YpȖЏˇ'CjӠ 1Ha@cZӚr<%蝣YV'翸 1-Em'bB_ËwO5GE s>liʯ-,U˸K4 ( <0:t_b͓ A Ғ&a#K(zɒ*e5_JAXSxIdԳӠlRCXt@WC|E4g.:k[.2;12;i%TዬtYWfNliA48EQI w4qxx]=2>k|aOz RRKÑW0E,*Aɜ{N<[>,9o`2 c_tk:y00yi]KL 2PF =Qid8kAd7dpH Mhu10]3%Dөڮz@[ 7(w^v DYHeL,Op ~q_$#.@$@c|d}0 74,ͻzG7쨜UtcP0h > Z@h*lr}PjSLQbRo.@@ |n~Y$9{wSPS+ĝ=1OV  ~/5͒V tx f%A.@Kl$xVIAV[C%'.'^QH؂Šq1@U:zCLʪ| r@Q$YNgr:YRPG<%Ќ8/IIcʑ .kL53@_DtaGvFJf< }^@sϱ2@uP?[P=crX/IO Eh)ז/m: ѥ!eLk\jYd/ܴ3 8WM F'k(qʉg޷!Q0WDiv&3 _"V$eCd,o IĔWܣ^8@Y(riiU~$[z(jT/*7> |:>.ɾɋV-*P,_E_P-tx8ֹL)g!15{'*A Ͼeld4yYV8,i̷ݾf$]xHF+ic\G!b!.16A04w--B{7psLqN.j4W/fđL$p]\>p:qE3 bO2;3:~?Ȧ̐vύmsOe11Cu>j.T!$y_yؒ0ZS !UW ƌ2r 83F^$,I1{@ oA4I ./LY py{|4@ ~O:o2ў^S윉`(\™d5h[Tڊ7q"31tz7҇g^aOMԭB [OBnB[i'=08w N1?xzѻ! OVLfcş~a\g_I&#wR_ AX_,&rG 2VMo9M!􈫛B>fPGYX=֮չޫgH ' 1rB;0hȜ?>D7hé"-,{?)Iu\مA8Ոכȸ Ngiooé(tq@G16KM]̃OwJoJĦ_.Iyuco b~$:4´_I,a7/#fQ@s_P q-McL D8HAo\Y?5|.I0Q=Uc/{/osCzrK2i|U~z[IwXMEpY3e[}:~!}6&0g'4F!Ru8 jeroEi`Ü4<Z=R3.FXPT,="yuܟ`d6Þ"Xzwx(,9m^^xeVDg<}֓ OeʺbPrݶMEUD2-< eӆµ˛n5Ljpbg}9U6[$7jvuW?{*!D@uM(I o SJcPui"L֨DZέ (ߦiZa "2 BrR5fAB0/O埆}~#-ƥZ (1lj^;{-MRdժѧ_Гؚq+g£k՛Dfti4KI͔e>{(Ss[x 䐦0e}87wa ]՝Tr,; E> OVݏ)m8'W}zV ro$k&>DJfmZh" #'!iNt7I;39a,5:/ e37nWƥؤc8O ?fY3C#o (we<p۪/l*IFb}<}"իSDS0}O nsU@ȩ䎯 c߯R?%iz*Muza_-xta \o_{|+ H—x?8hĊ9UBdo?*yZ<fG4@8[08H^yK+no:0Ey!9A"P{W>D8{hU7 O[u(l9QҕOq/xّ gx۶+jׄokÐ9ph5nVYi-5H֡=6PQg$OFJ݄p4:+!slAtzIdD_U$sERjP")^A8l&Y߳a(6Uh%sp3>$!,~B-3 _䮰 TR:B-r VWF^U!3ɵ $L1jS?ꔑdwGk$^ZIm} -F|H5ɁΕjL(4hSu-s<- 3$HGw^v/+6zPbeΪ_Mh/;SOҨ .ag~gQ^hBrM^Ieyťe|rBq4Х)͒DnwxWՇ@3 *2BPq}C#Z{x0kWPLLj(iWW ryZWbFeN$u+%Le%08DJx,].X0"~r ,V.\ (dfB[ok#y089y mri~kv(.e[P‚~ wx7ǧE}S>-1+Otw_"hQॣ (1cpg%"Ê)1&τ{,j7ЎNm>zyiHp$;B@ NbӞٰ$j KAΘQ- ns~ĭh#1b[}ЧCr63#eRJK_⒲-NIlJ:Q3^x݊eXfTui*Rw%I`O6> ̜|V h .lk单hFEHTlbpSLt~PQ' _ukP#nS9?;-9fi+(v=] ^;*4?kj2y%/2U5)\᜸psZ AH !|OE'4Fb^`j`OQ_:Xy9; N+X댹G SN×ߚ ~r+J&Ӳf "Lf3B -_d5f-єN9>i wOz?p)=|s&`h Y bp}"DA_6 ~]Vi?@P4SrBos OM}6GҔЂZwi lDEg{\=1  F%x* ?ڂͺj^;.Җ:7l4]x6fr__a:C'R4rF c2/>T:9k{_xCQk v&)ݱ"I%4˳ah^GY*)UFm5^8;)+I3t\^;; 6j$Lڈj(v T"㿓~JuĎ^AV$d j?w]Br릴 owȫrz2aOg=vu&QKo ")^0}gRQ>#h8߭p7_Q*rՄ\"1oXta>o%ƈQ6ayItʷ!jɢt~$CPjnYzIL}ΪH+XZ{PK^ mIHVP%}zZtݯyLv=;+z5XD\֨J(Riu'NtPB+Z&υ%߾4G12UDX >j?stLt>c M?MI3f^XlF,\D6 >$8HesfP Z2TTB|P)u n!hϣW]Q3Q: M"BR 13}zD;EKP#snZ0s_/yܰ;,\Tݕ5 9)y&uIjRC(<$&g"Gl]N8h9eO 4Ch"Qa[4 dc"GHLP.ok,ݺj-q?]Hl>|JczX5y]A="DCzcw=U5Y}m)AF^[E CA:[^C)Nhin[qwͧe%vIO_silpaՁ-h] ZES AUZawUHWo-&UPސtD֢u/ͩ_Ow,ͼh9lʟ܇^Nݔ |&*X+z5k*n B1j. XT7l&\5zMg:/wvirͮ5ShV\enVو~<3\`ݳHhun$wqt .SqHH#%d8;ĕ֡͘ib=1,Mh!fe_k;4%ɗa+'˴dž3p*Nd&s;Sˉ\ZW c3"aST"ަ,7by((7M/[|PBJ7XjXdkU]CҗPzQˀ0d R5,5vE/b\_\Vt=wCfaѾsDcO$ "FC_{ }4:Ot@l!1\ݺ-)lEvT~2 m"Z~А8ɽHǘ~I/z#vkZԩsK0~ 01V<3+ɟH ̚hq:gaWVxM 5 iq^7#?|~gnNǒ c+3ƦYRMHtMAt2):4Okey>]@Y/sHo!ar/!HAԧoJO||]#^$df B󡩅! "Bs}fqܢ WVlrw ֎ >oVN{IfFh`'|!I=--܊B\x|{Y"klbqX kqE<9˘^i8Q[uC]HWaH$#mHԾ|enDjTZcsm-=`Kb4DάwЩ-h!F+~*j8K{\ۼ8 Nl'\TM @^HPðnJNj,H_logYݮo~Ѩ3pJɞi-3fz7rI)ܾ͞>;$ۼU$Ȁf KԒ]ghk<@0^DpdrT̕~fl:PE3'ԟCʿMX6`TސK]g9Vhv׌*isk=( t*=L;sO'nWW20mM 8r {!* h`oTHnk-F5(CԆ~cpWG}V'q,*? uz2ru( Ax{)=--?"~NiʱPr!wAۇz^3\| v#3mAE+H/ވ_L=a<2lQMcHf{?8[a1?oU>l<#y;Z|K%e=x#HU6˜a"9S\fv?[H7a%"@A悍޻Tp1_RkQz tj׍p#Vc4sD66wA|tB Hy\ڴAT^JM5sIx'ƒ-jxn}B$tє>PC]<Zh ?cm-lߎOlNNݕo>I`0ICcz!cJc$IP!:9g+{D(Mk$ȸLsF𣪳j) 5 QGM+R9~\)>Kil8obeմx|1ZtR0pNia2m@qL77u4p0==rR xyK'ADD<ԏc O}$?5k]j8<^|he_h Sp{BҥyN|?M7wg.'DpT!%UZSpy?m#|w/YAq@ZP\ܞgz[r砕yZו֩y (Jofwk9϶)B#`q_  嵖N99ɖLƫ|vITq ց¿Cs#?VI0M }3X21~5roG[;7QYsmIi ܔw9:nr?h aK9{g~v4l*lꁤ+45#7 .5-sݼDm OF5z`ddt{Yn⮇(EϿ> Xe5OZ)Nhu8Mo2MA7 "֙pC/a?7ɆOYN:Ryg~LƂS#K @4S'ǧ |C\ B9{ν/J4{-pQq/^d;oB,fQYcD>ESf1 Av MN k:~#h\y!|ϖ5G2($EK3 X5J!@qqNyjׂy>C<"R$P;V_n]3 nrN6ݱv=L2(9$qc>,(8Ĥ/8ш) oͽDsp3Z! E@ybh I$KC4QZ]$F Ʈc&kڏkʬ0^p|O44V2 :)?rgѵRiNGH4a ݣۚ$AQrjt _wK]9,UtQޭ BD[y,q_$86}t%'3A8Im:N_-~m8#Y&tAF@rWZp(ϵ)*"ۧSH׬]yOǤEt߸7T)an&H{EI +B2tV:ÔcI"{kk5Q~gHꥥp&y*FIJZOHqL[3qF}BVTP,-9Օ/jUܗyNNBDU IPld'Wu&>xuLpޒy@OyڋFtZL)cIPhRnrQy"?mӲ}s:ג@ MGw  {I`d"7ƻ (&# G f*A8rpm:>2 NZ Fmt9:Ȫs xـҢ(|)Z55 S)bH޺b2ĿM37#& !;dsl*BZ;c*#_%=ΰ$1c ݹvZ8X龟KNw qn0Hl[׸#"nKdE)H/@ѡ>{O~Tt;5jHMvNH}C)t_uw~7ģsaI~j+ib\MwGhx/'{忦NG=ݶm% BR.?.Sn|Le0Un]ɢ:U`e z`xܺq]Tn=CymTCL0?t<#v5Қ F`"5 0 ZM&}88Z_E9˜*"N"˧L4<[,pzIoV'l y>'g/Yi,EkxC9s*d$vY%y=gF>jU}=o< ;\WY:=Dq0%5t3IUUUGl0 6Y*]7}F'-$*$}Co{Q$dtPnq|)tQ_=Pah%eq)AMlu^| ]xq l_&bnCH ydMK>*e\I/ g̀I'/%x_u;iHj#&G1 :zr,CI}g&dԵV$ƒO.".O>^u-P adKP{`)ڇv"7'!92vȊu~w~'G}W_>XOoݐ&ӷl 33R%(Qf_<cC+KEᬄNV^3L&&]\wYDYcM~YD$4!w!ۏ%ߑOz|tUc%>x(,EB-0`t?@KW<ɞJ?q6Č/jqSuA b5,oXRJW.baEL3tT~j ܈$&/ZwN=zM*|<&.үނ@™\޵v\#([mP|2*$~>auv 89̝ygdSnͅ>3ҎC^& ;sAYnND+Xna]Ea-L̡tERR2Y pm,P1heZWs[)Ϯ駭&z\Gpg?]E za#C۷[]yeEғ3>s,kg\հ*6h)M mj(4TZyQU< ;ȝ"av} m?ZiLU+{lhWJ9|u9%~H3t#}hO.4pSMXRFQjBtSI}EQ'O Ɇ=(!s ށBfZt-~o=C *>w񳻓f APX!j0=R#f%$iwh=h]bLL^K| 8ju\SB5a"2 $nY^n-mRe6İ `*-@1`iUPΊ+¿ .oD4@0e@<,ރ2n=$*Ihw9%N"T] $)5g86-`Ar9N󦀣)qKě=@.3hUVSD\DνI SW7 #4ƍC,";8t7Pkd#T?wtSj%мWb/cA5SIo4TxU3hkAx +8!RHঌw֓ P3Ң@̏7X=c</PJ&ah$Nܙ܋T୤bWnmqB[Wq2či)J'؏hPF+'{6obn߱n/кd!-%R9J~jv@`nA1$. -yu0NmhN`{tp?p)xB7P>2ec61)Be~cYalCF *J -nezN7`FC.OP{sajȜ.K 5 R;J**:G^Y\S]b9A#($eObr9OMADzv`d+)N|M_c g!C!eM%bڿkQBb!x*?0f'ud͞εAI}1 C8zsP_Z65%xHs˰e!4˒{A4\W'HN/ϼcPQ%'V (|h RƟ9qmEu sܸf/d^©^"UD\|H;[|5lԋq83^ }ܳʗ ğpyV_ 9pQJ>%L>7c&u)dCp)?)"MeOdAZ1y?TwuH<F*y_7o9 Q/~s0;aݟN{}L,dX>oW6QV\2TBm-wh"?jG'[z ȧ-N{(iZzWJqP:UZZA_1бxW~vY +,~̃¥|Pw(BGLT;A9iEn^_<{ |,YNhōIIcZ|+OkVX B:DEZs:d2Z`~>qo%}J"Gad'5+Zutc3Ӽ>shyeJL,=-LP`z0JZX*=ABf9;+H|rբNWLzV Гɿq|.nTa|ǟY#~ /K=1J*LHÏ^nga8_G!L‚Snc@IbFKW/$s 8]ct{_9*c&z)Cc^E}[olqԢM*Ca",Zh[+ć.LDsw<_7F?n;kC7x+>٣wRrSM qt=j9G y]ۘ -e.7Ȯ_-0 Qo/h3]GzAEM>0W y)7yAB?sǛhkl\Yg"ʻZxN[H*6# >wS yL(/8xc=$l&`2wGa0eRI܏GS!RF*|Dkwun̴]l2Sz/#|u*6ɥPbI\Yd6;k/#7k3gˀ:x )#Z8߮c_eR堚3%m(5ԟ/S(nkq3u zLNu)7>0jE4LNs1 gL1uZ7 [ qn%> dU>9u ,#x~5-gFTxd'aǴRo۾,i h麴*F4;i>; ÕF!HB$m9# LҚC6γ-s7u+&OQ)<#cJ!Åv*$jǂA$;D%*ӼIaL8S晐W w6o}{/ 򷻊X ݎC,b?;/OAVG_!y=>/U_-uP-WN~Bq<&3!#ag|B^̓gZPOX=hKTMp'={:(qiq4U;eHvyw^xH{y΄CYgo۰LE BB|Y: _7tݿ¿A*<y)ٌ>98㓏?1e馂UF3A]؉.E ϝB/r n mbY'wzP[?]4'6 PkQ[H -ۣ,LJν3?BI`V-{%;BojL˜3B֖.\ړnjt+ee[vJEGDUg\ tNvZt9GClPZb .+Z֎XL? (DzCv\L.MHTH YHuCPT|#mfA\ӊ:\ieXA[Vfnq{v DsJw+aa(<;+hdVaΨ )Y˴eU֛1!Rm۴ҿ<7,ځe'^C )G˫HoX䌥7o| mZ'#K]M?p,~3K:Ȥ*GiDu DL jӼ z"JTFDA-Ѣ17W9ˠ z R>&g#2\f6VZWP?ԂW@3p6a=|)Txb 9MmvɵFH?.R짖y).<{7X?xYaJ4 MlB(C/ZzP":$:~*fU \.W3oN!J_G 'sTJj]`O}ˠ8(hkVvwh.jɻ{oBhYIs>z;? ˊ@RV,R2e A{(쿖ƨˉ'iII!zsìx]׋}j T)GU cϲzi9ݰnQNYuRP5s-˵EsJ#%{;b1qKa^X2Y̏ $S"[uk cY4eFUO Xo(&n~CF Mr*.ϭWLݺPFg5EJpc Yp0_/=R QKy= 9tcCV3ONm*av3}{ J0`0i3g\h|ק&K[Zԇk_|%8Eః]X161Կ{XbrEC9_5>"B!HlAi*q#˹[ʕ!Y3N>T/k̚b`gwQA6M-ϥU/53Sc? '{kq}(]p_][;p3VSd[ m%hRY !7h`i[,?pE3>>l1"vve7ho`X?#Uo/ďJ)e?iޤGx59"ݘ|bd^6ڷ edsqHQ*gF6ʭ\ <6U1fZ4 IBjpG"9}1 'v 尞 P"+9hu(j]fsW}=Pa垪^siN'pa:HG =-GEqٿ8RlRymp!o3i컇K$R$ե.ѝ`z~C3]cC/J^zM~zRN\[e^K򠤌{e6`Q|\[=f5#Qۚmg]e ם7%M`-I4' rFۺ:HxژJ\Rި4m^L-8,$z➲e #9MAb [43~ d$S]Ǯ8̍(޲RKpaVAf~E ~s)2P޹0mm?(7y&>vbLs7ANCyDߚ2n?l6nLގIcu7l<}I39Q8x 3 u. 45qޠxKj+IPD%:"7pQO]GjM k\zN3Q b$'F9Ƴ!j*-\-}P37P3y5\/4ͩy4(t+>ːu+Â枦urRN#c: ;M=/VF̈́&)HK<ޱr˫8 4Q7=WQT̴g*>3.|r k#6R98q! ykpp^byLmdX nOX"n⃷>&?aL듿*$sW@K؄S'OA65t <9C$/KUinALԯELKNQ8Ps!ɌC;*~y=и3,5j'_䎮죭Y<\ Z ̽ ܥj7ioܐ>1|XPϟ"drܟqsogxezWNVw3?* K {# ]x?qk K 4ow.LdܻUdOKpxd>Mhm%͏c LS[}UggYS;.RF@OYbpwy.P\X;bbW| s)8:LG(aoAރ(Ԑ5@#{׊&oě l3M;J),ċH1ǂEP*Y[>fFN{ eN[Nѷ+W_!*-gQ>?KpsһcK&es$O~ aS>QSx.2 %)@?n,Q6"XCi,- *7nDml07&̕uEC n8f&[y"zbo`N_mDvѝWI6,weyM,2` P lPÓ^j_V% LWt Aɉ6ek67wzF7 t@粯d`ΝlTI,֑S, _k@nc lmRpg`3|ךH;C𦋕!(Ik'ɒ4%U<$ZCKTBzVN ?H{XR+Ư,..ƙ{.rh1k7ݑ@lak"*6=sx;V{H-.V#\OnC gSf|T& F% &aVM>˘쎭<+`DȢ8a+jGjj&mJ.,)%"bPUfbk7Wp0'ml!`#r:.6<.,] uw*мLX8#w l>+rr|ۙGQ;A6zgdGa^aeeȭ,bhM^ncl%n]jS-`fcAV5]UY@gҸr5$1;EU 2M/]&^<v%rpڰVfʐ Q/LQT8rB .Q>5#?ex]R-"g"ux,5J5(ƛ$]O.'ύA8Οr 6)mg2@N eӛ%pꉂ>'"2+uS `ij#BO u<3K;,xі8Fl$Kڲ;;J"V)9) jZdByV1߬\@cm] b^-unT3 sh8jvpIr.B^7(߫͢ bСk]d~S׬Ĵy_?-wJ#-o =Oe`+A4%aÊO#҂aw^_ yYiadeK’ȳ=H9Lhl ol|y3e4BX =czOj ڝ%LT++}u*)[ډԲScb q*B@&7ۍ4*E5vh5v1(u^ֿx9̿6XP>fTq%] (D}5ǫE3tAjN Y0#84x8b2|b aoUJHI*`|Os|q8{M,'Aܭٰ{J1@`O^\U=]. ,fgݯɱuG_8 trU*% ~ ^A r===_2C/k!N kYB:W=Β8OV U; j֕ Aws(>f>)/'Q|q}GW@ Ch#l7u޴6Xu/wǝb tiUkC`<۸Gy։Fٿ,ylڡc,L041jL.N +TòRN *b5/V_cH#X9$#x&lzb ``J"|mO=,&z(2 X!(Ğ)'"TAǺGTNfuP2ݶ61'J۽=Ӆ3XQ|YŨϷICYĤZe'Ʋ~J }1q¥"Ht4?LrZrLF$(YKl >C-^xO⌬Xਊ"O5 R,4Pj*8,jZ׃O) 5jݹ^R K1Βc N!~yFCo Aў2#w0'Ur'2 8 R|e|nHr:'gD*GV'yT.Pu|fL46~:]iOe^"Vx'JVMeF6*K5ĢtQ3ߘ&,Dn^-BQޭ4q~nԱmS͗9Ƶ[6܀{[o,\ ̓;ap0jLN&Gjc-j(bJ7x ȿ^cI-ji7%Tff& r,ڳ2R&@a !gt=%eMq<Ŝ)SrxO_zu/Diڒ]gzotmʡ1.Rri_; xQ@SNш0Gڽ)[dcS8bO2@dw!:V e&E3\QwWFۄ`, YZ`b'VCEכ'-UŬjtQ+YB=p^?δ_{5`n'F@c:IP٬5Bk|~׭9*U"e*DY83vd}*[&_T>ڹ-c퀞Gt6tpA\Yds #Tc=hᕚg,|z X,bm/(>OhyKL=1; KvlAl< ٛM ,~HdO7̫C즟]yςn2RHډYs?S|rQcM#~Al$`mIFR( 1j&ǣ L$(؇3zmllP +[UbOKY~Hl)!&:Pmځsmi3G)5LQcj.ZW@Skol< c׎K YMDJ-/:n1K;DP6]pVꔉw 2;ŕ$|J'('T8+N+d]JU=t5%~Rb{ں68F[qQ0ez5(*`5&Auv5nZ [¨E2ރnijvq0Í]9QُʙTQJ:`gVlw{] KyJtc5e8o9VZTuA#f՗"0XZxU/!P:`1/ACycm! `TJsU_z:zDM}<$[(0yN#Fh~'LR4ZivN%<+x q(p 삀٩/uOQ0 V-K |&Ds~F8vɵʊk Wı"+M 6J&=K2]rV4E47<=qBӔw۱c۴.lOfQLS-Ǧ*5N 2TQYw8IL$V\Gpc;>gy#њ^K#CbؠUϤjYֲe{j}-N@کZhRiNɽ{6c0Gr].ĖNvs)_{ >4&D&4SF7?uKv7p}v9+& &1 13n-a!Cwdl'9޴Z8 6#ݳܰGy#-~zt? w{G2 t?\Q.7nf$-J ;b.EEy |s_ 9V1Pp4ՇyXi_2 ;IԕV^3:Q+M3*tWBAMS"x{rVUE P}z^ ʔ}׎TE0>MbL}y1P,Y&+$e! ,t,Jdfܡ;\C8ڃ{1-izӬԻ9P3FdlsS]UV] xoӘo]'s* Ot^fG5[1P'0\9Fe {̜ʏ(w46 r ~Q+A_!7|Z76C;Pz;aY>vFwfgacPǭQg"j#mg%Y*yZ&}#G![ШfC7E\^ِڸEk)w |œJ"EQ1[ ]qNoBDʚt*Z(\!ih:u ueW9pi3ua_CC|ԚZ{5'_>BB3;#e{a JDGz6xjcԲ攮Vy0S0-5d}{n Z*hHdR9\S`^mPؕi-XXfAu Of(QWguEyͲ79e<) GbrP9[Q`pSTR8Z(o0('}c-&36\ :ʷAMX ?cj1m[Vgx^&D3W ۅU ֗z/)NkXг1.rf]Yc3?Wԥbcȡvo6*nR]CR©[5"$pyh4Nbތ{e)'W:lo5]qg;yj.N]^w|hSP[nAC VRVYiέcXPIUvX`xJe]M4E/sۍ"$s%ta}BsË[-M;Un]mp@0I/%[ Q!} D 8DMVW&;~0|( Hy3 !\1OGT[.K4m0.V iv,\/W;# k1fjMS-RE`y#x32 ZdtjmD¯Hn~ MoYw[͆c+E@4N|Vޛ@pػMn9jP#KͨbD#AD:R3aS"rFM>{uBWpN "H` PӏY߶d;޸ g 6{®mc!~_t?R@VVc]S~]"սoHن&O. >I||6pz߱5MdAFqYN3`ۨ]IU.~|wS]H<=X]vS f=7QK{z|-6/mRMT((eaP XP689&WBI/e H=1y+ABGi~vfrޅsәB nHDuٛqB|h$$԰5jғw0T},Z74@7f90=ɷ{疴(7Cq]>ΊAw5S\ Iʦ{"_f*S{8#C陁y\FQ6a0J6p*Q)4ߖ{n#-kRIh%.Ţ)3/x(3 [G8 ^& 1&2R}g}}_V58Ծe`ٍpNF|^3's\]A_Zj8C$lLb}l 84FgF=In(|J9BFY,MmE| 9V8vV_% u|:8cu9= |-V"XBg2ȿmkКs,4?Zr b'h|(-z,gݖ-Vqr_*X_y0 %nVA+(%ձ  וeI"580tIJiUjOA#eA tz,RBdxq866r/QQz{qoDݎNgѷ44F  #t-ӽ$?S EZ7.zGP-ˣQ_߫Lt1mB*-W];'qoXs6}a:L侗?W ~F⡭n=jP1BFaH!jWdc3 H7ً:ʡt/M*$:1. nQ|96nW.yG4 Rƹ. ڝa(0ϊ"py`7v* K_SPv / eu秉oulQx"3kGP@dfT J\^wb-g?fy-;zLs+f8w 5/ħK=UϳUCKT_WS_1HZZ!Ę0b}G(MKj@9[Y0Uu 7 z Pٳ;@69^8\>!h}_P1;밨a=~ηNhFܲJih`R5f\rG"@XLj HVQ b8֜"2:L0@9ƋD,gu0'2DL3 n%k 37PPu អkl֫kt)3gk)59` TɈ3++b~˩tɭ0VZŧizL I I3[q M|eR2x:2w4U&35Pܚ||F9#p; u\EAh$в2bQ{SYߐ Y#]N>)vzHBVZ?\HYV>*b>rny#wޟA}΃ʹ6VSukxjL쎟jNfQ|ZeW)>=Jq.Z9ɕ~[-fMFyuo!5P%$`:4*HWGY_R,ь|;F1㺯LF_:澔oRJ,&)=sRvAabdD6>ef EzI%ߦiIIHA~"Wǔz s%|=@(n>9ʒGLvU;3x }mŔQʪG$E?7ݺ =H; Lps{(*!mͻvv%3J "/Ff32q0-R`g<*h[VsuLC}-nxMm"' -/1정u+B+!'Kq~!$fC[ )`Y)Q@y\P6uǯ\ E38Oc${+әH r|:#1ea8Ɨ `;ui`.IȨUr@/qChJԁC]]KUT?Fm2 @ ?=0t1~b^gK{ hܾ0 4uw 1yz:G|&S'EYY[f&qΧO_'>2/3 I0Wȿ nIi냧.$諫); t܋]rM w.`m܆Tu@1L̉տAmp!Ӫ!2{WjدSB ԞC+wQZќ'k\b5*w zJs^-wVi[Kd8C$ & /.s S&>ÍF=\GҒ'=A(Epz }>`xVgx5 [͏P.K qٝ\M+~yeH{ ALb#ItfjC4wVK|t# |3 P-dE~8% Ă1\ǰ^D(oR(kb%[~n\ jA3^CkAif^^ŀDkϓc}0 } >.oQA|SZ#H }S\qI/*\hB3Z3)u )F) 2Q(@||; w#|̞Q;E2…/~}CZ.JorC1p{\lͪD\,Y1^'8O50>>4.( X[nr$wϦ>a+*cUf IpF&Y+kUTm̎|mv۞x=6$e*٨tY6/R$ye<@83;nbPTYnILKB: 7?tL^j bM[C̓RV ,?^o/cYM}1i⍉X&=؝FIT 5Ҋu; "n/`1M;x~.%, W|CvuThk bfTC*ޒqX1?NQP\oχq/mtɡ0vmX{K86|y0Hp W>gH[ah4w嬧7>?\5=Fmhy:zeV; 2K" sdTEfsԋ3~E]kjabq"ڑ 1Ĕ5txftp(O6+~H/jlFL $yՕx/<vYϓ~6p6w%Z4oϦqi拓ٙ1ݘǸAiFkz)}h5FNj hXC*08QgVJ$ڟz'7~yvKpo@_EqgSU3gwMCWoDLDQG (џy^Cw$@NVqi,E k5,;nցc3}urLw-vr7Vh+"6!p1tK(W}F0ET# KøFV[ݜg.iGEN\]##7Xaޓ He`i<+jHV3xm9cR?/a,f~(A.HSڬ}S/V-wmt0CH\¥HYYwt;2 ;NTpMǨǐ3}.#vh眏ǩ ơ%Gr! xOi7,7?꡴7H]Mh;Im{ѧ;/GȞ o4-Ou\x]oiLw4-\x qGVw`g2C]L ƶI4QB }VZR0wx{aNYVbmeg< j;UL}WŢ,|-NIO12еI.ik9'XHХy&? DZYdwowPAD}f8Ԉ]-)=%yԁ{Vץ> \Zo?쥶s$/z=RNP/y޹߀MO=C5rJ2ǐ,GLѤ?|IahADv W)ݹZe2?B ͮ`‰wJq_T 0-ƀ;lX0FwE8 FKU!հd*aV[7)ݪc" &Yuh9`ߒׁ|4ژi &Cʬ/Ą]AѠzp 34)]TҿQP{E˗T["cģXei2H`/̉UK.s H!z YϮ6c,97_ct)SܙiDm4f& ƁЎ@]Y%q'tCH9GȠnh)VQQLoKiM72ܖ<SjZFZ/Bc=GuS/ =ʷ"dA9.э-bPfnneLhEA։m}.MXmXu=uxpi,'%C|Xhur04!?SoEYbܓo99ܳ/yhS :#Qgd@La\3))C*qf)| ۟i]Fo[C Io@;h(s.* J@,V%ݷ~HUXƽPҲX+bʰ!i#ƖP@-e4Hj{fbٳ!uР F>.}*Wܒ1^`qõETOv6!Y[7$nh*#Iˇ,-FAv YG?9;gľ\``o!i/& ( ڱUFӅd4Ec *vc2(hoHboȪ]K8۬I!"~ݮbOy@CШƖ|zþפ#Ffhwr%:?zR5`[G .mQ?(C(bKcPQ|xP݋ȊJ;D6dГtvX{vK]]ŗPCW6y"e#@ȯW'm¨Qc? U]"\'Aӧj g1uVUv 9UJ~{4@ KeO6}f~h4y; Ji%(.Aӯw\Rwғ{FLv4+|Ĺ; =>KqdIZ ~.)61X۔0#1|Vd;F_ Fb[nE_j.vb^p푪7L=7eTNjrMY˛<6`v_`"- !ȂZ+Gf qPּh T o)5'?떘Q/_Q^4@/ ;yz,PjSpܡIR3\!fOU~n0eSjAj@ٯd.S3WVrBB';hJ+>똱apxf]@02+*l q7nഹsThfH:65ʾ s2EXlٓҢcn%#zb:7:c5_BUIHfٚ7 oߤ9~#AsP9h ]#7^e^e6+ˏ6i?Vo߫NFY'CEwi 9q6h;IP"@)QbNyGsrx07V-d#:facb] P&;X"yINZr8{gjevjޕjݥ ygn.,3&]WbɏCU2y9Bn{4$E 0*[tP bAZ[?0 D@=]d'TФa3k0Xvr!N6jEv6nP ĺ ݠЍ sKOV ʡMK\Ě.ïSmWF=R=/+οZN1OkhvZ'Jamh_. «u^'giB!⷇H"nc8~+l!,A} pigMy2{ NO|41'qdOH@ƭѽK#<;" _ts;}zduK<(k<\9V&3sW<a)|z(7ßx,FG] XW(RQ ' Sm)BFF[OSjZOq||fx|IүE1?rwlV5݉J(ZI)4HhW Veg"wj ݇@Qd'p(`"r0q1LYs7wc$wݮy1-DF,)HX!&EרTo.aM!6O{{GDt m@:0Zu^';W qڳ_~o)n%`ԚKm I4S?RUh֮/6r*o^ѷY;G{it܉|V8Vwm9^TÁlܢAo{ㇻU!xU- EiRIll|mO%DF_bwӘ9 ,[XCNg3eVUj YX1SAxC/Z!v5pR :i.?.SUH,+wcr RL 4Cw6^- VԧkkHKj K >2hVY0/ lwDD;T.Fv{w[y&n݂6\PDEPH&|P$ (hzxL;l<育FZƲq䏒 J 9\LKD?Z)_l߮WD{oQw+( A{\e2YRV[0[;pEGh077Шӂ3Co% <иK`VNj"q(VifVR}`Ac`#&P4ADŽD?۟QGOXz4fj? nIr*_W N-ԢIQN)wޑ jpA"}S%C#N z t./96ɚľY TK^ ia4}m:3Z %#H ۣ >lǬ7>DɤnxF5N$-heXy(lCD4ԉ8dàB轊F9}sE.ґCa.C2nq=Nh#7&v= اD.pF#X؂V$M_,%U}l߲TMgn AN. Tb]]7TRnLuBl G9`z'jBd @#{ >ܤ4- 9Tt i>tF[3egNl7UK\i;qx/\zQqZf`eT 2ToĎXU ߼'3c|w/$_بdž{It2ǦZfpL&f`\`>":vi!zq-i+8Gc{x>޴v?=稴I-滂;rPճ5`A5N Xڲ rPᩘAU?~D&|2O]vAHT3QF".iZf^?:h%('Pi֦_QHRΡoB ,v &'#X-Z؊؄6>rA6`ϫW'ߙxDl[DȢ L׌1 /_ZDp4oʤ6z DBp"y^jxK3,ߗHSq6P`Ys%2cNhc{U!{$}Kr9jq򝗾LQbekG"aѡc,ҟ'V#yenc}tC_)08Њfs=RGXx0@ՄN)$Q,bJF4݈T 5:1r S|x[m[\=Z ^ J|L-<s G( !Uj. ֜[?P'|>gqپ7#zx@]$%T-X6abnG큉| *3;?ejAx:dWbFwbTjfm0iBkcҰƨ"gƼ|R-SDd:\.I7  ɀ9 }>5asGUnZFj]x8B2oY滋ć$&UWCޘh8 W("?}}%!|0_q J{9W)-'+,ũ+CoF)9 "K!WwzWBٴs=n slh&Y9QB]F-M\]R$p㉟qp'LTSB|..M1H]p 9ޔ}6~w}$̚ɶx{-,5x;ICt>u~/턣K{yW^Z4rqS p35N iw*ļ`\O MjR<_ѠM hĔ˔ĀhSx>1fmDXۘ ,=Ԥ=f}2ɐޫ-csr$ʞu0!Z2g4=prgz;ġ; KUH79x&y{t|%\E*˽  wܛӺ/b] ވ-X4? SLB!VWF:[ߴYg\):H y[  |oe,zo A*ݢGU!ka_*81NW1-4g{m$4 ה7Gvc_ix=Jj_MM6tf_Ĭ0 4ʣs檧-p ,0r*e .R7C!ՉTtW|z.voTľ bf閛JhM)'> XG_DY3,p_JFzٺ2ĥ0'{Tx=!ykTDFV.?wX3Gi/|?:-v-u7ӡFUF8Zi3|r2_|Κ -N1-%Қ&)aER݂ڨ鎁xe%&5hL1W_q RrE;@οs1Ճ!&#qF?d5Vl#pmYXmzӛ)jEe)% % ? 7 ;b oܮGum,˭O!Hkz^s4}jd6qX*zOklB+&1SnWrjj'$(m!pNc~Cf^gg5ȯiG Nv[t_Sə˲l[{V&/CJbx /`Ɠo3ȍ3BE,"=&Jkj8}ZVEk^Emذ|H[~sG?eXhƷz=`3 נj|]yܬVgc@`:&e6<bqûS- D%0hxotIƺG'd;VT90W lHÝ&D.2uէee˃ ]Fs6V7gN^H7ckOAm.]76IALfs tg0V=95ֲI~𽜕{.Cg5\^ͯӘ4{]QYn`E:є,<@O =KF],p{7QN@]h5Ժ}1*Τ* mhj'&UC@ӠWo")KkҮ OK~DZ9p[oz KÅ>1A!<BE84I|r_\^0\iGC،6_0 %k?2LE%N9"m -3G#O=I!cH(q;Sb# G˕Pfnqh<*k^kөpr96G"9Jf@M8,FP0(Lkg6,7nQc » lI*b`Z7PjY$-QkZA(NVAQ(oJˀs5WX gg錁þJ{'kq[^e#| -*^  ҿEh&n7uKIVRsȘ_e>gilebD1v{ ^ĉ~̹#5,ղ-g0h|PpFL@n+h393ʯׯD# /Ok3f 9=c2Y{ϓ.WkWhxE̢9OK;( p r,ջ)jgN׳DnIzzΏg~SEdb 56SnLL@2_4b3=6e#Sn#$؄+"(6;\bᡓ° j\pNKl¶Xߎ*=% bek{1|>;$tӒaa jLYqtTr!]<˩0Պ%nvOp@8FV|4 ;30x^{ǁN?] ~z`pwOk26@]*b,(Ζ$:91ЮٖLcu\VsPül^TnaƩ9x1f>B۔BGsF?N,#֨;CvH7ViS9?RfVϩYؽ>э<\Zf1^9='AuiDSS v߬k2R5wwO@ J>/Y]'Ev*};aܲ[[QH݆z|d %[IoN5_ UhmKR3xjoyP1vOir:nIz\1OVg7tu<qYi+U;N?c1v~ NQN%}9RtH]qՏU3M}+[߫^LTz(=-[f.q.dUZ^pu*0GWRsC4nGqש{D`ySݣVpu8Wg :݆[Jcx9 KCGUee*#reY7u` 9(}l.zOSɉ"+=,lG*Y9Jno= ԦQ@WBBy*G؟"m呓)oۑQ#cWAv g~%)- 7KHiAwDޚUL*%0 0O.{m7Tp}ZWpk@v٦2 !emi/Py7{r%gcDnBEp;=Z jJl&[ڞtf^NZ4=lǽP'%2⺬;]ûpsyV(vB)YFCy8m7rhyX1MzJc6Ժz@ M|GӖ&xu(R?W2VdO?^~@>ܥ^-H,oMv}"jU䣊"@2iM/~{xJT{x;`G"Rߥ7~9-=m ,dK̉8=:c>phjN.nB,c̚BލIvs^(ftIC-73yP53XA"^hlv{l|99^A2JrRcr9EI! BlnTlcC{H @Tݷ:M:v crGO,='h?Ҕ07\,퍸OexUްM䀨r~Ne؏v+11/U:0MO8l4ox=l1\̍0X,lT=K DΓ@A̎Er<uXH*1u[$4pXs0cğod XLG"A FUW?G(N0X h٭! ڿ9=F5wN!1vR/>B'jUGM:#ViTUZ}`D[:BcZYy|K4?($㎤3Wѳe tΌ=ԓsΠw'RY?UQ*>Oܷs\Qcě5O=[fPGM {Xg=z1-:v}85Nڦ;b$9x!ӎK%)cdc@qi3MLZl@DQw)f@vYе_;GqloV$z940l+|6|sİuW*EUe HsMf]֟лoslRPwi(|( &9>r]:+Y'cy)}aHyHc.%i(j.GMb\h3U`NjX>m|H/aȁ d ~TuS!݁e Ù}sN;\B vU^3B nF! s!FwqxϬiEhԈ>gC]BTf6c&(MV*T&YlWuZ_QY` :i$*c"=;jtuEbLDY{IepHw^NV,EbJxPcՊ Mڢzwj1!U4`mM& R%!}%CպhP59EV$"Aި*wA˿Whn,e59-UԕF1*(+|om+&kNٿ7S2ӽ,"z^֜U?slHT[[4'/3恔Bs HB+5+c_~:Q0*sPUբះ&̙Xj8bX0f"ruLv11b@6}cpuq*CK m~;?fkGw+KwE2}=)Y qF"^qy={MNbG/AQV>zR^P ܩiݲ( giKuu9_k;샼8D:Σ@35CBgR쉹j%֡nSv[|AP8I~QUÝ &ncaٯV!Z>k_}.x(23;_%Ɉ m4z{ -i ( ;](\Oڨz` uO_Z5̞|km(`q(\}ԟb1`ޱ(t/J6T J3g1HUep'tQ] >LCÖ룒7Co7bM;;gnzO '/J c`]7f= {L_`n! E kώ0Ѧaڠ!}h^C׏#rj MWzg?߷ACK# L4)6O&g@;>|~ ⠳ 80k*q7ϔG$+ުg0Uk鈐W,Ap> =<nQMVgs ^J\Ѻ]yn8 +.N J #ï~ Y.9 Oʟ W ʷߘob+D"A~ z|=5#2UpjܧI1" ğH tos Eu Z)\EC%|9kk /xګ7Sd0)˟n !@RSs4 d/8Wt $iM,͜al*F]y4!֚ '7_Fu(Dl o q$, Iˈ5Z១@x\W}$"WaUT&Rql|wr6BR/0Ӆv>2J& ; vb_ВC $^CL5 &"OiO샹I!fՔ>C9ᮐ ɍC@a[e ]yh`x%^ m>@+%Wgd˨ú"l,IH,~%0REHe)8 V?**ėH(y"|aE.=@JQJe %II?΍հ|E14r}9Q9/99pNj<1C#usJX\lvG+D$\i.=O* b7qY2zS5+V| 0$Agl"\}dkjdj|&gFTxM<ߐ4ݑG~MNXf+Pͬ8y)O) V@4P̼ňlDnKUJ~ojr)\ 윓_4,& ع @L`oC^`BtbܫBkvr 24ϦVy5Jdb['Pߑ;4] RڞE"aˎ:|,x7:ȥ .%m̗q#vj@8}gI朽:DV;U+ ס6Es /|_/n]̀K P[ d+bQ4 gۖPɬnGͫe6 ځ͒}8%z˿{s C-Ό˟^vP]$;h1,+|-y/Ӵ*t s(į_Jsv?K)dKUJ!,?~\ P3G5#`2,0_5 M&92sqమIpKcTmD룷& p7K*J$Y'c.o5Z#֡sj H^ QV8\Lˇlp9NtN.F5yyYYqIsfw:lz| !S]?0Մ]hI+S?FMǑ]fC *_t ۵]uEs#@5 ڛ^A+҉x? So̵0? (݋U>@*D[Iaff|!<"h{% #Ц=uӽpX=|=ǕI.ymli.OȰgB^gM"sl<Ԋ 9v#' ڶf%XK'd5%,`Y ґeYoKY򎠱e#4yH.bypEq059&]2¿JYwwym_+xEJG A =n>є yCn*V#@OF&5kANɇdg? =5:SY/T9G55Ia$vqir+Q8c@\JgI2T<9^SC}%biR?)1]8 H<5ߟĆ=S;Ё{߱CdTqn##4nn`X!#(dᢤ~lIo>߁u9vaN0WĢI>hp e`P?k.Cs8U_Iߺހ74%1;Lc}?hHJ(cm(қ7D<ɣEy2&0T˸}j^W5%^W-%9K-6[?n`dؙFVj@tȎZ_y>=.2,`d*Uf*]9$Iγ/b,J.\33[̋/0HccF԰Q4P eОG9^"$g, ~:]Mds)򏎂 g$v(n}@hs'O>ЌSK.[O*˰W9"N|)M2`OXr!2enGw9.Kjtۋ&:эkT ^"K(閺U^"a 8W1:ޮg-1޹GRmQ3H/}ky(E}WARSHރh4E7&zS¥ b7B|=`ݙ'<26O>%w%HXz{rXW- /pBᒏ#5Q>1.8v{sWSBDՇ-aeT+VŢb@ny+9/$;/X]:DǪH˽ԓ,- LDz#^+Vjf|awKX&HLbt)CHR04{,K5ZmW6¸rHnz gZ6aG\4{('fonSOF+#Ob~\4#j,+$5_ xŧPω6!w[t ?o2v,77R(NDhƇ22>= BHZQ$35w{l;(#T7`(1~eF\4TmgႼ{mQ&hbGgۑ͕nM*>,` ЌUQW Sy΋P @dM>C#{@b^6Xv.ms@V^Ɲ*׿k8}v11&TM9 0Ȑ턜ʶ8FH߯J"Rm|]H!\vD]b *C6뛷6Э6.rs';ý8 KvH&@D[of:͐ڳY,8- ̠|mAVc7%mL@ffe?G:_.B8 :nn&03I}[7G늻I ZRh-YE?μ밖dt\6$Oj+jQA"9%e@':W5K^-DO ')ҤftA1 <`[C9K7G[ύZЂQ M솥7*|)F'BAć*O5תx$tcq;ͱ6*q^aD뙊 ciO.SSDsҭw *+#8!4z ?^D/KlK T.ʏ!.(_C HIբ^gV*yڥ1U7_x4y14[Ʃ)o^VI dc!95'| z}S%rtul)Zb?K7 >Ra.[.?w-a;KZV^E!&\buA!Saqr(7cYTE4a!s!)Rr|HB#OkeCgEm`Ar2atO˼ohZC ?(hϱ/St2v6) 4^P蠝&1մI_#gUPb*B:śc0$mT͎RoH0< P HsJi9A]D1iXm sьT0OA,3 L|fN72 $qd&ߨ"t h`K/<4ބ`S WI61⢦aʴR V+Sz _YlL I> zOǯSfW%-1Tn]mAJf# >!hop4(BjZP-öMr.#sY11?!xE[@b[ k !|U9@w+F؅Cl̏^m)ph$R054qoOxzE"LR?Ќ2INp  ; U!<~, _35^y9ij=(HxBpLCP7oz7Ȟ'Eb10K[oU.ף>wck/^d銠mŔ;V^-oQA20 |kN?3$EH^(~Cd4pXps*a|y3a+QCoZiudz~ӭ4<wMv pBˡҬ̱usi61dYG0s /Lyɟ>9&}dӟKM1IDV"+5(O4yJnQxmb 0C#-шW(O<,qӒzA;j%!~GO@;bL%Ag N5fChIDzB$gm\nI!m6lW"PN)-^9ςZWsqEx3U(z40[|,21f݈kt|s{e"ښTN-1ve4.m8_p@6[}㫏 H j$.eG( +tR1,u˪e`x 2F^Iiev4Ai>ɍaI(_^iC(ΓE!Ŋ'wl> '#mfۉ/{-%.2}^;w?¦EDc5V!3KvSԀۂ'&3o@iRcDŽAۅt`3;+(dW9K)u,j6~Z~[m¼-\#-|(0k(^h{|+81#cHn!)'"I"F+4 'Bm}SpM'a63JwI<^|lѯ&Xm[̣]IOXY%?#Eoca~$zQiYt$ U"ƄHmRڔf6o(53_|%`t>ZO%'$5=7lZ7m"quJ"] ްt$ 5`I|@%COB-q h9tLzВ$~Ғ f=f Y7bRu*w6pqX:?=Wu8@a˃yŖ #sˮd!0fA@˄.D[(m7otqÃʜ9y "Ooq̞(αw~bQ: F٨A7[rJ?ҭ\r[I1Xҕ/Eu? S']/gL8az nF'/C"ͱ y#^U_~=]k Bp;g<~#%u UUA$SIғ#lSYF4Fׁı$4ҹp$6H]oPkְ<~4Q!NvCLqpҁ 8 'b-zt[ g֥ !Ŷ=rhy|ךWcI&m|R7GI:n"@rW%EN5cMJ;1:CT- S~oѭI׍Zb dž }, }<Т0O<_tU Z>H%cB.;NQHߠ&FSXM6sƞx`K<p.sutT6@aTx ;t"VÍw>$s5a֊UCC7goT}LG۫M c?(t+ύ.ځ[4K8eRMR^@Cgk ?5zʯ\6jӌHKGKQv yG aZF.=m"s[Q|=~*Lo_х}$hڕr,I|N2š!߁*ziBGOJBwZl]>-Ito$\͑J݄o$SE u,'edEаCvF6b "8b˄`5 vO,)HD2gF tHHb12sxD1Q+BbGeWzKo+6qApS1H6W >a:5;Z%2Z&fNv,İK"Kᓿ-*Mr۷jVz@|`94q"u% dhd.6`% EC5iF S7NMe0JL1|h$[cg/F1 x6 ,K QTǨ4S+2}>G.n tR{t5 MGF4cNr#O|ꯒ(>jv0QS@OG}$,{R$W1|?G,,μU_%8 ZܧYQ#mJ浢HB2YL-)oVc*SaȰ+N>NDS0;+ʵܷf67{xeؗ9=$A_{fS<ZgLŽF^v_0˭'?Ek` 0Dtm}G ,Oxγ9'^z\w * r,n ¾!N'5е 8v!$0#uʖ5hJ ZYfwWMgՙcǙcsxYK̓xB^6+-VzS2 {ĽbyjxL |S:{tnH^=lrEX_l=tW=l|O+θ$3`#9Dh? ś P;j1 ZTe;dݓG jDOMt3+M iJ?qE'K B%YLAR-Rݼ$L#6[D_L1QEt-R[{:yg)ܗ V ڀ65}~Oq~<͟!ik)$fؐ~FWavqO1LN-L\No@B .gV_G. Ȋ$0{ˆa/miqwػlw'albo)6c41$㇋ :*4 \#鐺)zIPFHF˽pָ13hGYҩLϫ4H#5t.AQ͹[ՏC\R=$ VŨ%L^*}F:%gbܵn 2e.!gɫt1`f͐AqɸuA Sp|w5V-Q$56TSFLZx6"Na6q\sA2w*sMli4#]v#s MKhP /ZZxOmvWIq6ONR2U,et榑Zma! ٖ%[B(YrҝbwFF<oG o9SFu}C/> Ȱr tP%-//1#vV9AAڋ5Y]KK`~҈٭9\IG> XhRwp@]v;c7}w /9t<. .4T>OQ SxɃEa[U-v zOы=],dJ3VD[[yc-[Ns)U„~Ws/m<)|Kz OA$H^[<+\F<-roaQAҹ2im_w ZVJw9[ t=nLi3ƒ(Uyg?C3H>tH s#xR5ZRpsXpİPEc1]GvkGߥ5ʕQX_+eEhjU|z7a*QX S|d,ڦ 6WK`(Wu7Gw+{V[kA4$NmWs K{D/'̠8d?H8S nܮ@P} izڧuv7KἽ?R)"J}9%iK)CơtW]JC= ' Werjj(]&R؞.p 5]`*¥q B(78)uR#+~MgMYiϡ$5dH{bgv6w%iX5EF18NH?}TSUVQS}|3x [Y|lᨉWRG Px(oy.34?P :䞤r> ȑ$7SD>'VGE̍ &5^$[Ǵ퓦%eـ.b7Zm0Cō dޤwh%/q.Z託tH\" |\yIY{̵n K,2: w 4$_d%jS]ݳ(@qZL* קzE/aEȔ%xr*oҝB m۔}1u0;"7qx%,Ljɱs! _:6$ju\X5 ~Il߭$xR="V}m{`Uu\5KM*]fK9 *Vt2x(@qvp@#>{`.gG~l;PdأO[˄|Qͣ&4ȅǜ8TIs$qhiAyHMh2qZ(7xj$}Jk|i%D*7 {td5 1g_&eO:S d:X6@X@!gbr$* Z<|Ӂq)c%T/Sj+MZm<3[ݫLkmH%(fE0TbzVI%SD>`ޚ;KveeRq"g[M A}N]F67. CGC'dwW,jAR ݯ]yΨaEv$[k[{y$iٕ)3(>!gQCNk87Ȭ>2go͢[ W O ! 0Ք]׹_k!oԟCbMoC6$|D-w߱4ǯT/TdUZL*պw+emaB`A~ku>n0uXoMʭE4l@Cm$su%-ls\ *-aδ]|m-2`QV0̊Ub1̟ bխdHJO ;f[nc6q0uDa抄]F%Òg_;zVl0|hMmKHeZ2<}c}DxՑe9w`IR$Kѯߠ d-2%ORxh" e r!彈%BN) WXΡǐFEʋHR4@"™lw|Z#SK/SdB]ߤxp@k6Zg4w0$ƴ:f+fMT6p~)W\K pŁTOF^!x&;.aLˠ2[:@2{nu}n{$@بXvU2B3>ٯ \6ufzC!l1<&M ~FD"rU-9RV&y70Z E5upzߨJ AOUw6nynBGTy_HDqJ8:}/RĜ=*ī4-Zۣv3]&tcbsIr qcL8A )Ӽ[Q3wMRŚX)R¢62^9B9 +VSe$\1U[fµ}|Jjp/|؄,iN@N bL0|2mUKwl D8Dߡ_VP&|ϑ[I w8A.\)j#R~ǭ.J׾u^w|FTɿf+T4Jjm+ 3`NeXMQHAmJIX ,[!Y8, 9hto]eåC;?/fMh< OqMdպ ̯x4OW`!^ƿ6Đ4w"<)`jʘN1{%-9ƫ"d*ǺW3KIhd/Ps9iJII.pSFT] -]P%-GHr> #)8g:&V^b,qiH̃a &{b^DY6?Py gl+Pmlhno7 9L}m,.Il.Ώ4}C^%g2kN\FF^Cg:ej*tF g0ݢVۼ?bzz60-E_Nby٩6|[Ѯ >aͭID\`m>źA4lլ;peʜA YU2K"U+Es[I=`.@Ise<=hj /b1T4l䧺ّ bq?wÈSure ib mC4˜(UH6uQ?!oj~"  Sh UjXq}.<^FOS/Iz%8CyLI_)d5,T Q*J'sc8A7枂IU+X*QmB̄ڨ\'[{W* cM}ȩX%pjq52n$_B*<#zCzM S_T R`#1DI.HmǯRF<\qNJѹݔz* MmFp Hu0>  &gE~rۃT^\8 P(K V%J,F3Ƙʺ>aA8`so| O,BWyě@ bI DhfJI7AӫGKmf#(:JԬ N87%4Odjp jm3j'A?a_Q<+/; ~`@ l /דF/v3b1yTt]WyN* lbx)b=Fq2'AFW i=pHO6 Sؖ߀?!-QIm +,koKLmJ`]n>d9>E$hj휓q#p| 8CiW׋cnɁ?'.i $t]ѥC2 ::⟃ZB@ؑӽL2f星IMP->ְ4x}muAkwiXm%U8>Ao4[$:Bqv䰀2:p|~TB􋲯R uIG$wI 5aզds4'N˗6;4, xo s55 ^.vTbeVvt]}U~iKh_¡H+dY#>桝-aL##RfZ*fNj|'c1kǍ3M":F9r_wJ6W]Uja4Ӹ2Z翙\qô?癖 0\m4 }Ʋ`i c!XBGO}sY' *y phμt0&$;>jxY؍JT E& RmټE,,o0"xU͐R$v %Y5pY0ǣ|%wI>ҤFbOgO& cmpbE| 6yr]f$vMF8uM?zO-5 [|܄2U |!\UIYՊ1}`hPT0i*Oi5ȕj-UGja%xBZ'61"\!Mh&y GZ_N8# `c$MQc~h#Ħ6ZwKr!]X%i  J"=:ĉ wf5G=.:~sÃlA{(\tg\r 3:&t|5:_vض܎8Y]*DݯC> MuLJ-V1d=#E,uV+/ɤ~!&艥}3Pd|( 8. a>&J(46vGhE{h1(|q+]+V!ėXD0󉓎eԲi0>;hAck<'Xt/BKZt_ݸ(Cl寿1WW f 2)zK6|h=B=bi`e0ݢ2] cQ(\{]>^D r]ҁ!đF9 _E^v' +ѧOzq1 Ѷ' nJ|̗%0\$En T/;9 En0CXoiE2{?&-Q/h1 I 0TIړ)ޖk2$Eݒ>I%2T9"fzGqcGhm2W˨9z䋤29vkEIȁ`gaLwІp_^A~a;3U͈4pLB`8Lz 4=Utz(T$p5XލC5BYg?KƹF 'Ѽ 3 #<w9)A3[jXo[Q\-}j7B"4ԇ{{]| [-GWW)MjHB??Ԧv".6EWb)dl% 5mPI 6vZPrJ6l9 AF?isG@G^=W?i0Sχ64O[2`YN~mpa/g>]ŋv}OXhTyjfe;(i^OS:ΖX\܁y5B14NbmA;cpjCa@|5:LNHP?M< FntسmSĉcN6Y{CKnOaNMk_(300i`@&|A۴7z`+^Ik2\λ`:;Τ1f,p4sKtr5s!YG8;K=! Qg |/0wHΊpsg \xtcO5YJWkga #ȇyzMCF&qx:fQJ l#,Q=Ծc0ёP(韧h Z D[{x>jj[uPj*.~.D~>i/$FZ>tGU#/P HAՄ~x5UvTe%;]ONWy,uˌ~o8gKGX&߸(z.jM.qʷ3!nta8#T²MS ,c#eOTMuBk/O%H="%f'naԛVNpD2<&4u4&/9cNe Z?, `#2_B-tkdjArC:5U;,|QGv~Q؛$t"مC[BĹl ٯԦ!2** wuҚVY&b1Z}y@kVQBsS%iv yv$w7DXm )(m|`4 xWB[VZ$N3As3)٨t4 6Z)\ZgXjZdA]5W+=[Gp ouVGD%K:;±Bs&,,.)hT5k~swQjD_kt`Ln>]a(""ldkoϡ^/&2p-a#=P{zJ2+[pNG㟱 <]d@Q\=&|$&{ɵ.2^{vHӹ4Q֝> NC͹XOdZX3ZƕeS:ijH9  DK}hSq0bgR;L\JfEvqK3YXV/"&t >U%˕!`a;W }%R>ܷ[G`dH]<`@uIQeOFz΢n0=@? 'hT%Э@c @i-W twUs9,4R #ra.*p5\DN^g&Y?PF*[U;,t* ZOxj)ި'%p./I;9.!4%!@{,lvF%ҊN5B iA\nOd|A5幚C0+:CظSSͅ<ЀUPۢFj KTֈ?_/;K.r.\gN $@9r%gPiU`<,0Fز-A1}T!&{Df:L`M=!drȵH+狘&$'ROo}qe`'i'ps|JkIɩ3 b`ф5EG4rȁ5+h H"9ïx0d]vZ8CBփ=JaVwėjEN"4,ށ4Ko$r̍smCT*3d$6 Ps7|7`(,fA?VS2]g %߫T7hT>KP>v$~WI#4O4uXm `G"^XRE7CM P%$ M[GVm+r^x F{SOFMFܶOՄ;͹>`fa&ݙp-6pVf5;94/_ ^ >he,>ug}, +so^`8V:I_ڝiqI]T lΜ˚RѤl5;ߦ"qi٫kE!.1w&ݎpQhǰGU_|NAwz> fkzY`X&dBh4LR/c^O NM8'e ?WQ=:ߒ|%ok:EZ>J *(WS"٘nGJHw!MaZ@/XI=_MCth$C0eEY E*^JRDrKncd#$WU%FBpD+ ,֫ǽM\Z!<1BQ`-üʏ\ vnbU(/5`S?=hXĬ{JڨOF]*tgQ2# [Kl` gDB[oo9=?wd,WK9*$fĶO)B 1Vʾ9! LSbpǫ\iۇ-UĎ-8_͟|GnG?铒;?KYQ~6މ &ȧ(G,|!t K-cyޠI^V6kSrZc([U\Wj 2?P3m לWiIwS.6rN>h* g"SL~`5^]=DeXtjfnak=~ ] /Tk eʫ^8`7u:𖺡3uda&. yO£HA%UIEO""d6SwvMp%豑xstwjgS2_ӻd!͛븹ӏ#>{{tCd%=/9?H3Nr{kd$aͼ?LK UWKO3e1;@ ^~ ǧ<۪dԩ꥽P*Gҥ>J"gxg"cj?Z"Ko8}!~A0.]<'=iVk1 F $F9UZP[6to&ҼB&We䨙:€Z ^65e5;mj#RŊEi͒d\WZݵ]޵tO<|aS@p5j*C#(ȷub>w2k]E <)JϝpD~h{K(#6I/;pŞ3$x):!ҔmX䏚Փ,|svZR@]"&Wzt.+lU;0&vUyjCА@}4Pp'~G9zLE9}6[Kq?^ͣ=N'd^hN&YT[W=D0< 84z SG20&W ,$?@BSN hP=K,oG#k읣%ҳdo%ru h5=0FlǙ/Pռی-hNP鶿 q܅>b*7SrQ#v!񧿍 k*e7vp]0N )*q㫔f X3cq[΃{_ՠcJ2M:Aw}IyTl^fbRWe;< Ӣ>p}/H @h \=zu$-[KϲSt߭]U:vr/Ufz)h0ЊtнnCILK𴀕G%wt̅VInbc' Q .v2Y,/:wWEU͟ aK)) atpS5d Hz0H 3`&,w=Ҝ<Z<|t&|:(c'*tgH3=T.ܖXu^UujE' #Y4RKwWe;r㫎(J?[[o%ұ.( Pb/fЎ՗Q-wBfcGTe;d"M~w?m1RDY(R Yqv^}{Ҍ~Nځ2:e`.@Ȅo@>3dY*Q+=I ȇ|@mPsp4f2ǛBl08m6P[}x԰L1ٛ"khbމ O'viYfgdŋk[λvZכ5p -ۓ']H럟(Bکo׺L܂/d4(-Ä Iވ|<9!{ @*u*tOGL7P9gsBP-m&y-3-E^>SxZ#Ak6kKC7k)WlS U=*6/TnVP= DO'".dEbpP= w+Sѝ׽t"a ;ڢx)re у>\٬(\^*3$L 3*١}CsbkUV1O{ []W p:g~!I DW 92#ZZoe3`DgǚfկjF Fm󎍢A(=535^pbo<}{AY5&}W5ê}C8.lXHmǡ# c{y]*6|΀ eX[a-d[PءT"دa cŽt rd' XwcŚl&R(z5P:P[-cTkhG+$&SD=R](JJsD&oN6p{n xQQdU=6ύSuuR]퐒fr hG3u 0݃΁&E~V]bTvG0G^X8M{bD>) ٮrc Ă/RPƞ\gR6kA sy6Z܊Mj.> Po|y!sՏ\Rކ^u)Xsw8}R G^ОJ|фs6+ؒCv}!n(he|8 m CGԦj8ߧa1_V֖ rm}!wDWT8D +"QW53ÛR oGc 3&VV}3<9b9}@UᔚYs/mno߯L ].񅉹.dz!QC/&ۄά}U$O?֙8ϋZ,9888&F"i"@eXzϳ*4 Ma2nA^!2HD:]& KRmN Fhuޫ%Ș.K tjzꍓ09@6{=IIj-EԼ2yB|-^_Ԛ&O2WiY|#_%Tlpv0=3)h#l ϩaq -@#NlӪqYqʁ&Z4e ~(EDr Fpcg`h)Ə"ڮKha^X!@LZ z6f6Kdz3M^4FapDNa8䠾̵ښgquajxaM["_0;7Jf%&G͎l Uk;Ɠ6$ XKAvs=ϒvzHzjah)8&47g1,&28?\j7f528Už ;!] Rx'R^WhZ@[ܚ3 u:?HHx5ŀԢ1 jLA@ ;,6o?^C}ݔz7/|\lÞFzX%d SM6%&l2iu<A0k;@a%(iȉ#v_<δ߭UAr?1Vr(':&{Ո~lgzm fY?y3hNugiD4P$A][,߬T %g m= J `O267lLX!c _90.¤XMIKjh kBLqkWڢ!EDuS'9*FŔ ˓+e+ LQ]hzFƝk 8^H,$bp#_ l9%K9@v1-&@ O <1l^)c4:'p ZƴiM|c{O^Kh⎿JIq`>Cꛟc_Zzҁ$ӈg(k1}ӋSB}~N#oMЧa Q IDEwa^BYЀ2{.l4n-L`R(O~@PA;4p"L! ym@x:7rK<{BX\Wcm" ~l7lZ+2o[qv`0?|)ێ:zk+ psQ=–'_\'>ue<'׏'kuoټ# :@GoX?&ڤ]!j2JDl5@+0= Zƺu#?%k[{l[smpbﵑ"돔L୻d8к<ݍ V}^)^53jdhCznQȇ]S>ma\Tsݢ<џ0]y|1>u*M@֎-JF\>kѻ4=s [I^0],S\ + H^@8ee أNKr,&'5`t+Zض ; SŠ?g2&ctxDZ:G̽:EJ ۥf:uX[hØH9'jZeᩣSWp'"Y[ l-:LIѡ!ddZٵm_AoMFQp!9hѱ5 e(pM @T?6i1O`rgƀfYG9i*3tk3:Y \;&#xqz\Gkcbpt"v6-EIyAu w4߷@[rGs]o&xQ/bq#>bX1R ;oYbo5!?p)唻 OF_*&pʹPm2Fi&gZߞ +2!mdWz7z^IC.2f# ٵp]BbK9qz6CzE̲&P-orlW9 KSDN&هg0$21j7Rl!({Sta&U`Bӟ9f:NBqE#$+ V&BIآS:)E`C]b %֩ry7.f,jb<6lviKO]޳N;2# 3_Qju\Qe#Y;IӃ,e4ՇzxX4+yX \f3F)r{ dB*_}e`+>&8c=Iۊ ~4|s F߻< Ovce%8'E?j<ƲA*8#h_||Uv8aYnD/.VY#j~b@"!짰cJ*wW_@`Q*Zs=KT԰[`P{_|9pCb;) n-և@1*2M%WtLK\RFN wDz FACRtkv2BTJ~?Bmt#%UbEʜ.9@^Y0Wo'M=2-9{XV]~<Œ[ʋ8ڂ)!O,FLm/{yd2Y:6pJgTadiv$%u-Om12Q63ZDk2[mHGvd5N%Ns=sp *$(iݠ~]JzllpS?5nzHs"y^ySCGOSB- 1?uQKVץ-֭0n|GAY.G_!+[t9(Cю#o0qE T5`FVSMtGq#!0.Q+++S_*@`wg<9kD 9q/ojy},RёI+*=C z(ol. tI`˶=ŜDabjMLĸ)v׈n01p"#V|PycU#*ppܕrK6r1amIq$ٷ_?׋'|o4x mhKI>EK+;@KކR䍈 :EH1b^:"Zו\% 紶ՆҋO&>.'MhETs/JT=pjkh8yUaQxRt>L%N.7(+ t e``/t+\!n9T:gi(,*%lx ]g)L<,g]$l7[bPr3D,IEъT[WwpgS+-*/GI6_FŶZD k97^bc* q+uB5ۋN/#+jba'#aGZ(Iuۓb|/']$蒯};6(#Z\Th&`a}lzr} a TFZEY2Km{Gb:r8a[M_$hiLL#+ѽF-Hhnַ #;ॊ k ~t2V>d8ŏ,E@'zn#$ueQ^/2vFn1'Q'契M \k3٠ $ERІ[=ɿadS ?J!71k:ZSѝqG5Opbk~Y8ب{+D;o9u& cH;=F&X%(Zhwn s9IY'Wò{%v<=LjPOէhzʧG=m[e@pH|K((ƺ&#<`i/!/=jǩ?`-S̥C Yd ucVk kьu1|\Nb'l{.Sgx! }< py!B{!R85 <Dc4HM4MTܾLLGa0h9C\Ɲ(bB^.c(8^#A",c>gl#)OTZW%.j2;Bɟ{{e5QDo#s9u`O>ܶh3;>s,4Oˊ Wۖj;e1q6^EpRQC?<;{_/ _7QAkf!f9 ~ƙ#T\OWFh pmyCTj48ʦ;_t:0VpLcﴬFj]ہ*$E(u]<>`ީװ WhXQyX$:0wDQ#h1W Ԍ+ enE"r]yz-Ky錱M3uV:H7*#lo;۱ȏQf%I. |Bԇ W&H8bVNF]iH{8+ }5-u5#"Ge+  o.{yAJ8;dP]uPbfIjT-㳴IA!.:z-SOoV/4o 2;&MUob]M.*\Siʯl8ۣ̜ADjF8 ՊM9]@r՟_RI5m.ö<)}8kQuٸO!-לjКp:~m!sݛͲPvt_hB#)le|RSl*ye򳊩 ճ0bwxI\ K^t,q1nO4_d%?[Z8Ӡ3/T QGIJG?m!1X WDZj֕2>/n~cQU?a<@l(Ly-fϽ1r%%aXfe8Cս@p+0VjzB z(;S[@u I}5e0bA35KN e~%*,;%}ps\PJi'!Un/'E,4 ՁO_anlP+*fʮ6[EA*M5$6!XQ;낖  fSjSuGY'To>%7#j:Ub7SMH9tR8Qz\(Tڝ!Jsg.nU48 ?ΑYAG9y@U\ul`p)nG0<Ĵ!)tYX]`r(>LKo&ϋ|]{[ yșt禚^RI]NkOkshc X+6q>_6ݨ0k$Z+枲+vOoXNm(^ڙ da&QM?,Rw@.eJvP9wy$%U#|bE=JgnsϑߥN -4 a/TFeifCsq#@dlVVg`&PSM q̅'A˦Q`8 ATX/6upЩۖuB\g@;SZ:7nyKR[[K15>ؙz1HvrӨOqB+9FG?38*_<4sz9Pq;qs~(%d[Qb杔~ l8\w%M[-nj v ]JXC,*?T*Aptfdkȿ rAF 3Sݧ[)}Ju Pk3M_=<;B7w\;Taz yE4/q;$Մ\1s!PZS~itϫ> -' <ե,NT#A8L,6*>5QV{E?j\aKV«8n6{%7}F@Gb% &Z=6Q[ $>8eWMX,l,?GΚhAz8h&Ĉ`Yk/l_G JtMEO\R7+ۺ>'jƷ^t'mU5xK DVֆ.OSqx evA9$Z V﨓%q~'1W?zFsNVE˟5pR}[^^U$ph5i'fAi^fKd[αh hBڤx"2ﲆTl$J*>{DcHꃑ8ڠl.1%zǟ4UfB}EyfOF}cujIQ9O%:*{^]"(NR!1vʟakZ16*>Mu_`< |Z({*zrcҤ<d:sQq}eo_ *P*: G٩7)׽C:5AH+IYVQZk۲ekS%넭,HKsesytlX8SI#κ*'|Zmju<{(:k-8ѪZP%AtQUJPxmIt7E@Ekꊱ+"݈uەko[DQՃjsxV(xIVd1UZ|c8J3-)ʥcut a=@SڢZ>4PКl,6]JTCyx#qk9'̴ؕ p *vˉݐdšWOrysԗ3U$ںQ'a>u삨?o WA-LSy͚/cP!tjp҄ .bbsePz*&rI]?$vhz9.o5dt'0 Z;@/Z1i v=VrsML2a.K(֩;: ږz)JRs3ixtJK-%d<2'd~JqI}]/'$g^Ѡ<:#9j1L̫?3$m Ԛldvu2ߟΝ0lVJSu"ar )CirkUN ۢdǪ욏babѮ\'ĭS QzAɭ?2<q;QUyPEKl:G4~I0bجv*Ð=RuE Į|vVVGT^M:/66za=77/eWI-4/0dMl2b b3}3ӝ2, v?1Y:A r7̮h"xD/VWi?# D5a᱌$5==ZoC~Eޡ8, zoJǒ.񒇳7{Ir.TI2SD(>69C#'؍ċ';P(cC<#=r]PGtٶoa\VelPZ|)r1+3M[[Rt3e-@.QVs5w m_n C W2)aFmZ3JG;ż_2Oo/*U))@Aġ5qn(s̏XX-)>w,*@^ʅM3j%O~DDBJ>nbRqGCb`gwP%08)xrj'rCaUٕpO||FKgVo˅A[5upztY SLDfD\=c#>:(añ Qf:| Q2CaUw EOu˘z$Y NZ#'isa<`9N$ȳ?-o+jSk ߧG (l l=L>pvՖuRCd/>6ʍZKmtNwz2?E݆ta #rš]s }oM&]ljO:~ި`&jDWiEUÊ10 k'J#=C] i'i- WxvIh n99>:=Pvm Ba:0Agz7Goy ϔ%[%g\bޕ)5"<凕("S}&yTl9Yw+c`E1Lct_&~IljFׂ9a45<-qa>mh\KF9<;ְgUAwmW< r#Jk s$v vzq zQƅ}(G. nR?j -wvIto]+"6 dY z_9֋vK0Ib}^kqY?(AHu\FƎL|T̫e0T3X=646ήc'12c&gc Ꙇb&n)⚴*("noYY6KXYB{c?Mi얂֗aDM_ ;glhRy3^oI%>D@\RK(Z7_av \BO'&wToZd˂0c1dzwv5g: IXXgƻ e:'TXSC$U bAgO.:˔-mߺf{|#l zx1Ƃ+DkD5eh"y($nGS"3vQzIzYFX'ERοdXF9 n_EROMvr3G-0b)hDﰸW$"Ugk.si;L̙UfH-`)zR K]L HjG;]pI/mf/AHmA{%!"ǾSpzjsѼEC'_j.'sr~l9dΕ ~JuS8Ɋzx.|&2ENOS1NEZ;v'2^k&.~~.FPoW8⺌ih+?aX  Jm%,W93 *gj%BOXHE _+#YhTJc|8jpzq7R W;|RN 2D9_Ψ(}z'5ȝ9Nn$jDFyFmH=)Onjzt)Awžڭ֛^r.X;Hu+}Vv8PB l^Haͩl\\"!F? se$_ ߛh4}ex}]}dvHr =ƎgLq[ u4ggr;9wLI>.qp\B+Ds 9W;\0ΐD0q3WL̾#wҀG\l"rtiHK;w%I_G32Q|Ë!]7D~'ǒlߋ~-33%;__ K5 )I(N2yBm\#1S55=MOS<8Ƌh=KhdS2d^f;)yYguڛ}2jRvɲoO Ke]9D{ α7m*~w*Q:Uq&coՏ(d=şMbmΐ`jZX[s 0T29lC')8|F5K]Yu؊ap}4T#X>wRðmoqٟ`zgK6! h==C-t:?/} Am۾[Ӡc_{'>W|(*@)X\^הg/Tt`~__RwÎEGL}iI7 3Ow[ >yd WVˮO.='4A3 7:TZhW}Ġ"/ H}4L-wI &?'UPv5;:q/4Z6J6w`nR r̈[) ZtӛDnŸiʹ9V =b?g&3"Iu)R-+t&Mx mgCkh[6W28@&Or2 K06hLW"LA+ Ų|x\ x=q`E@➫~,}˛^[6WVw=@X9ۖ{fT TA?rx<9(WBQ@[u6D\ՎVU*\/KXmbX CYYTtKDSLzd pz V.S?^'2b%ϟoR3"u&5e ibކqYbxR8ACX.4o.o lHB y{.M$6_yr&132=߇ D]>Wd*s?ShE>"!6':Y-%Hu$:1B(kKR= 1' 9<*j?Ly ݯd=" ! # @w ~ώj-A!bnuMB lnÊh\Lo \H 9\vJ`'+ҡ6jY$H^Z"EdK!w_a%3#52vð7 ¾ C@ޓ`MحBw+} FNTF%ޮ3b9(5WVl߄GU'em`.| [}, “ |M7 OSFcx9[lΪ.pl'0#YTc Tw 7"JF:wS;+S(G,|9IKR O>Cȶp,^؅dO5qݹ+t@פGZ@oт|c>^u.gѭ/= ߬vgQh`[:@?yRX{)'Ί9PQk氒^j 1FdTKP%hM#<?A~U0(~-[@!"mAHMwd ʘˑݒxm d װÍIsP3~DLEZst*~m{ՏݱM8GTe}+[7, 93ӇG`s_ߤhQeZ Ndž\bЈ44d)[ȧ^s`cc ׫ʪt'v`HcEFjMmVI٭U6~d059JWn&lnILG]c>Tҡ'31i+lM;9C|3ǘ7")Z -a՜KBs* 9|T)0(>ӻ$;MBu44QCZhupD{ ܁ 1Uf qPbRczү0`Y-@@ bwsޤ0%FxvKE\S⍪00@ ,Sގ4̯Asg^ROӣ0u"8!0JXeN Hs^}`LL60 @ut{eUX@`Jh!oqBv:cTծu$aD4X6zx}Y5- E[ i<IɹMܺ%тZP^+-aThG2a>բ7OUkЩh[|bC=dń/,J(,@f3t0eӴL0t *I-(mDi !i<{hv)Y$UO? MNk .ciǠU#5vp1 ?ACN<: 5V#zwufqԩγH,Qءgp9*uLol*kgٷ]ȉټ!*yKa s':穼XGM]}ܘ&;m).lC8PoJ;:A{Ʀrr֧:pʟ+ꕇHڂ?3Jƾ~ǭu *R>C^.dC!B |).L{J4I^Nw؃Kea@p& :Ϊ`Umc%d:L"u/7җ,몞eXzL`L[Ȱ,8 " us *i:ۮg$+pDD='ed oS#hlJs<(;2\$-m 0j`0ɚQwFTq [.݃}Lũ|8Z+IdyZA\Ivc;\\9Fr$H+$ TDofSv1{R{GY# Ƭ-jчNYqh:ų~I7P\nu7|6DWPZ*Zg]9fsK ү!OgNϭDUw&S/@CB箸ٵ5QBZȩtb8^ZQiy 3\%[5*!~n(O6qu3dWd>`! D>Օ/*F^W:{\E6$/* L .Yv0 *AɠE/֜; ɖ5 Ŀqa] TPzXQ9g~Lkd8HN$./~3A̬VOM,ige+2ǭ \`3ٳVsVv^Pr:upwuD:8?^$R"C'+(hUc^JHwH-!ߩhzr->MPi@ K3ȝ&?GX꺇JhPWXpL564Kyl-3fRJ+"c,U/2-&!_`|8`r3\pm3shc Wd4J+ (1ˣd v\O+Ԗo*ih (3v&w|B/hl?VIYᇦqe>>`N3aQJjR +E(纋9!~k:py v6Ft Ȫ/Bjr '<(v22y`eQl.yԟ5+, ScfQm߅)`'c2-$a V&Wέq`pU(Rqr@BH1]M_^7DRHAP+iu ؇YT{vuB_Dp \F=зE s`6C~@߾vA:Ȏ9/:]v="H")xbcâ!vd'F:r%.L`1`F%qW')8]suV79yN!rD` '|)RU7u:'/DTpgm8 tUD !)++ ok/ 8H=^ %V}{`{ISla|!ה'_8d ,ađuy+1i0KpPCehlgfLd+"⩹}7MƷgQpj!…NäcSa+P*0,.!M Vz*ޫk=\YgeG!~I_#MHʭ1eBJIi΃y z8c SN;1o,=0>o= Ul/.:N[^JB$No/}}=۞MVdt_4/?T  v>-7\ҧc,8r9gEIH+>j3 -%^0SP>7LlKדn\%LĎ$&6%1IUث EP85 [1d::<qqK(W=CvinBsm(վ X0Txs6 +5!NX)9K(x(ݥ'sG"4 sfGy> zvbIE4c?%&.~Tפ0#IL:sګ]6@%:ϓ}#~Dm]ȸUrۋY's4f;YF5M^G H]Л HHG w/0 %u3u:6>ΰR p*'(*2`1ҊM xd;OݞШ\AK!3FtϤwK>-`_έ*mЈI&{?3"ެ\aШ=lUa'EϠ :׮H*3Mɑh/aQ-_wDc{3)Ζ^Y [OJ/ ¹А}FTai$#TRk[qnrIU=,,(35޳B BД'~"R|k ##;΅~(B cs3e_xV!/n1D)Tӳ$m!| /Q.3s:%^Ν" "=YZtKݔYx:Z\CՅ4"  ե'5O_-LᙌACӠ?2%fn=;Hbh{=,nmsVUe F~>MdWrh-Yxr.96sX$5'"jpH{8UlK!I1pn`6=7仗~}'jrlҼiCS4DaňMgx0ԃ/(ǰ돻q_NʉEhu"*)7x!x{F}c ]TsT}sOm^2Ж5wÎ%nZ;H@8RWl+7>Dx?b5'!Q9wK_ԃ@;Q¾YԖvG,['S%&9h]mz̤3#xYVN9ӵDve{mӆWJ$˾j$@:/vD簫pe{ ku{1B盲ӇRX';nIR)V~ . oCoj`6|),dT uO;m#Ώ=G@(Q2 [*+ ZRI/)7WDF-#=|4 Կ8ayIIQWpJ\ ew\1x* `[fĖ` ߫IFC5mvmX^]:@[vm8.K@G}H(3MMD7}!e{#:d{O{y?&^\BD+.IqlZbkkG !tft>Dz5lh&:V5Qէ Ow+;^n-Nii 6/WDK#ovREK[D2 5JJ?L93SVsB-ܑi ]mO'wmӇV"J+ Ǚ<1fׁzi 7x{j1f򪵢G.Qo3{+`Dv7V \3crqqlrήw#j}p+MK` N@X@'tH/zqtk+ \o_? [B;~Yd _1EVaNU= cWx t\Wv3.SQz >#EF=`+LcR%Rx[맂,Xwѐ[bץFtC&9dLنϐ>wz47<3TZg$i,Q~Dx74?Bir8.݅b.1*̴9~d]U$93 %F] \6fcaf"OV <}/Ǒ)G{^Y3! a}e^JnZ@hԿ/GsK6'~)ӄ K!&.uE\+%?uJM G=)`'bOލbPc)O';oUjPEmɳu9%2 uYhhNǼ -+/Vep_!dm(1[ 9 $ie&-P0s֎փdΊt8-zRa; cC~ 'Lr%N+ouk]ͮ Xm\CB]!#h$$x9I?ܓ+.TE2xZSRưKoNȮtQ.?-a<LD\sd5kmNW7us"&^W(2*%5>6;[Ro]jn3(GH"u8Ȅ#\$8GLEOh9,ڎ#)kS^;OC&rk|| kQjAG AF]Ә=nX1+8Szà{N7`d''A X,i kmf6d&`Uנ(N$kɣn>U.!4h̿bЁo+J`_zӢ֦RC&AeM9tSGGN3ҝ.fmkWj/t਀]$(,ȟJ ss+) }+e}GZx?1 ec ŤFR[V\r҅ƛ&;s(ӋW_i(qIg] FHʙ כ'XrwS*gYJYUCBm!zz鑋: 8E *)o,$^b:|ز;e`ƙȍ ELj_m6L'2!p2houi`)_I'r jx^c)i5em0}F汻~RXVzs`eGP)Jhtln>⠞Ib}SԆW~ uie 09RMi)BNqrtƈTKa]kS; w*pYp$0[[~uO` *stTB(E^0o?ǷjGN3 ;rw~T[ipDo ;*JY߫csƀǞ*4~3U6{$: VW5sEsr(̆0A:3dckU{ cmEηʼnFG͟CN uɂqYKA#ݎ{F/C1Υ=Sl9s56}lvaNZ.dܣ4QUy5g%B|:QxP%% $wĀo0`Ks#E#K32r &r7mjȱ~rôʰ$%&KΊA#:c_uVWvGC"neW<;rY7>4R Rؼb7P>^y):r}3>h5!kݑ߮- KZ}ʍdEf\#pDafVsLcYh2AŬh42&=ΓyA5>RVtBKoHrl?]$}c j4M ~+4A[Qv{Z>9iP9k/"㔆4Ğheb6HʌM<˜d5Yʨۍrq;-%9=]aNjStu)J/ IXo/!mgpnYP2?nQ%<_$]I~Y֤sDbn-H1Y6noodWwGc hTLJrb>wnwdj9e3'=]: lݙ_+¶ގg-/]Bf};JɊj hdcT5B+鈛:~z]I,1s pt+ߘ%M~O/oAňp>C@P3[8JJK|u(rH8σ&ϥuŚݝ%;@ا}>Q$R:R$6EY!&:h۷k0u8%J$+9n"ds5Mʹq {hkJg kT;uǀ0᭯M'*`1FOЏ_#΅Uڥ} ).ǷFI coK}[]rȓ8;.K/}L D*k84q&c>Qf)ZWTD]+UQ"@kb1 l C jowP[RR>۰|kpYq[;A2GW&e:rmf{v y>W3VV+ X& ~fF하X)wVKTZpJkG#}⡈u#`bN2W2(V]E*M>R8)ٲϵ=F HXZu<ӲRSq+uDpz|$֠}~ʳD2Qmb3+aGC>Z1 FIX*n[Hn`bS_a AJ{n`SGb1hr{i`r-l?OSjй}."{ƞ١xIނY IB/ck+l(2ߔ_8׶7X_}^8k|TXrKWl)K7IЈT3L}cWeƛ|VfDf:o Zg#]Nl-B\am;+Doo O;ͿXfmfN>"H0ʛtYXR5Wgt5邏A+QR2Bߺ׫4:l6S|31)CT87/'shRr5A'引CF aҭT;g_v5!6=L>([ 3Ġ,CS|Jl:,' s&9Ify3yy%}Xqb=jWcdȐ;rvJ]0Iw' i0ʻu׾Ҿ4,{f>?{x+K#h,=AzPNDov#=lE^Z5cSwVL|9\b/d5D-DzmiݲPƇM; OxG6 ;o =2n(nܟKXoAU4}4*RK"0xW* :z1gJ}/"&GB~X&l>DX+)GQf kׯkQ.G~:@6v<}-mg[)6UdFo%9=`2 @jf FߕS؁"Pㅪ|d8$ n_ӤHb61S BW>̳WlzLVya\ ;%RQ^ "0AE]Q^]Qe+|$7>x?pJfE"oD-Hj/>wGkuO] hKzQ+CV,'}JHtċ{=t"7E%w)`B|UxI-]?Λ|d\.M?ul*( z0wZ# XBG(%m\wݩ\|Xn?/zk=tA)ڶ\p*"΅ uH.(_סk3KPRZ{d] X ezEҦRcIqn^E"UWո;XQEnQ) 5xo}>}WSqKmK)һ.Tr1hNN@#nhT[<{516דfngzL 1JT:+6p"5 "g#).JM308ue:-l7^RgE qJ;ƉJ~5H'BJ.h[D겱97.T:<fI2N=jOj ;z;.HrS%!|{? !WX%bbhiH,LKc_΍[Vu%2,E@uMn€1Ugh"Bqȉ]Ml2l)7clN)ctUCa͠0uEܰdc*sD\bD>Ny^R|ӜKCNªu6g@f2Z5qsgzh|Fӕ]뉱 tn~V)"EVUfUQ-RX| Z|16ey%]X]QHvt9W,%HLPպp*l_]߮n5̛Nh_lpb ƱtAOQǮЌc}e:x7ET2>PêB.Z2?“asljoBßB΁A.v,ЕڰP̅ L߱q+yd$"<$\V !ƀbʦ - rMq_ v<-ᦝBN~Tk Vm/t=g8Q}=?tLc%{KvHpU; /k%:[2SVw]lpbF/*N* kyxǔtòqd;R!%PxS' pUoa$˟tI`+qC;eQqw yjJb\zJfQb&YngnDyRS6iń$Xbtwm?;"{$h2kݥTnr-#l Etܞܙ :͌L:ٕ]aH:ޜ^\l !il2,h?d)\(䫙bsrr r)׽(|>{hOXfXد; VO(,إI9ߗ\Q"Eqq]%[F|XZ(X&qck9.֙n*zBDJcKWRHwL|8?pĘw?VI974x:{NqƔoEq|lO>Z}`Da0n|"IQ8kXu* OgV-\>MbD$q3Τ0 ,N Q*Ɣ6wF*R|ibo6d$ R[Vd{i+gE-P5/WgWW?ANՏ@Bهp -vrݝƭvgL0Q  m'$nPIq,72d> Er3'_~uκ bM_p/byv/yK(uM5Nk'  mi]\}FvfFƤ-2?%ˑn*sH2]Nl)Tީd:t-H?ʬ7/r+9Wp>FttWbbI ]tL$v7L`K{!_:hR/bua5t;3s~,ޚe۾C=jc髛b/3d>xdƲW#*oV~zpj+#q9;12\P(JPd Yy*viZ!_QѓX @$ |zȎ}zĔDUm]Q/!! ǿ]†Dݪbt|SP ҩ*8lh-/LkNVPۑ] jԧ|7I*H\8&7+߅O6M@B\ lh[B'TQU):1Gl?'y2!z9 }aQZҸ ݞ8'luC2#CVLGQAĪ# OioVlG`8_ѫ7K:ST8{mYAiKyLTs"eH`؅MFB?!M*5Mq]"SQ+BKSR"~ ыI2 Y},@"j ]Tnoͭ[~ HRёZ +5i|A[E)„*F5;ם?>{@B؋YDՙ'gJ!/4RBO.S-$/~s ج LMٵ!WP, iĿEk/\)3]vi Te2iʣ?bkw$A/jU͏1*9[X׬>b1]x~V/&# ;wSz&9K^ga2fP.18gT V"j\R4xߏMnAhꈊ5%%4$*Хlv6uL|bD;b-6_KDI`Djڗr4WE\8Zn/tږ@B3%G۟XG{[Iڍ%S:\l1`>E޺ܪMr #0tY(!-0 bW>F쵑x^a: ջPКG%ӂ}w[xra>6orv_A?P5-g$nBi;'r6hG@9DW`-ǻ:rcBnՂWҸEJ4R">a j e 囄Pm`Tj:,H(&~ll3\CMLŭ^mCh. wcR*Zz1.{`' 0Dxͤ #[YɻPۅ*~;9^I8ii$ߌ6 o ?|+ɯ#iN㮷TZ-8ʟV$ni>\L酗iAE:Gm )B`Xd r<)L dZ޲xg xm^ԊѡXCi rxYoimn2z7h>D.czXी$侪o6+Qз,OWkUBA9pדRXNVT?)-A;r(2'ϽO]H *Jɞ-=һ_:Ds|HԦiЋc>!(+leOR?&M9H.FWm'b;zN-x\]h{X7U7\Oޔ'8bvHi%:͎ڔb,m&G@F/݀AkA4!PҔk@/ )Hc8q6%Kl1ފHUe &@R˥ ' ȕޅ5>_iI> {r( }RF+XH_(B~zvm/X|wzZ#Zi/ӏ[L6z_k7xBPwmðlleza=\w(`ņ2! ɩ=nӿQ2n~|PHn' n}Uw;KYc -@n'570!iaC8_lՉxQܷYNC@BV頏O#(OIP֭kjр =QHjAޫ/`nxBxɭTfæ+yZe􋴩@3gA -F!D\ua%#%[S? '.m+3^*Ib80t2S%ߧaݓUF !':OtrU2@iA!;8X& -}2s/*c@ iC$ ȮjtSJ *w eP{}.EG'>(C}ΘI|{m`D?.ff4b,dׇӏ2I[Jp) yaY? vͮ0Hܼޙ3MT%.;PQ6 ,y5Dg\3|3&UoJF^!# s娘n<4c)$-o)L"1"^7؊}r|DN-32bˋ4 ,8E3zM JH\Ib=Ipz"ûX a;#iDzzq]Am|S L?Hp6I(k6ꧥu3-P(|R}W o \14;J]} 5o9CK<r Ta~_ x޼:Ӗ4p #;v]1E}K /]W"3nvGӠT輝H`t^")b tq}BE6\3EITl "kƋI>U>6"0w0&WFqi*1p|1( JAW]@=4^ޛUvbE7+I6Q"8(o]ȧm |4bHFͲ;VX9dWC*;O _GB[e"6V?PY_աo'vқӈg*Z!2l)tȺ#b]{kB 91&3r,Jo 碌̖*eGFߑpy~lW'=6` sPߍK^Tݶo|[QhдK-rWDEd%kfYV{b xG͙wq[1zԫ=! -]L mRچ~L/ v[ ~畮 We?z~s, *Tg6S#>x '&7RF$F 7?Grx&N/ЍŝObvB;",'$:?+ \\.UԩRS13f3wqKl7+:s- 8ztPFi> :ߔ"h8ȟ3[ _6P~qN?낞jgϬȩl~sxDo!p0`8tOdw3 3g墋 ty4ɩ;(Iݘ^"焴m &yn{/V {؎]z\Qj `R>8n-nqܩ?R{XqvXO_t`S&+4,ũ%e$v4AbeLz/x[> `A` y"6.E4ui =[6𧎴!i)rzttw94y&"t/v oѵoۊydOrMkC"9*rʒi~#~Y5 29s;O {@OŦl]8 :U)-NX'#lT0"n#ts4`3xJ;쿊qg譩\\ N?wSk$&eF X4ب);յdd=FS|$,< :t5 ߛDzeؘ];Mҍ"gm % n7H*FkJPopUH%t2У=0R"ʑ:#r\W jAi{H>/6Lױ) %=~`_'ʠ]KL?#=Z.nt6ё#E :bAwJE^#UHߝ?5)'bm)`jÄ[@"jdG%KUHۣd<#zu:+ue{ {yL/^aUpnN`.`v̷r[[;q˄nØ/fa5@h͢8=rS.&YklR:WY1vg`WT0R.ICB0Ve"m_u+^4-'CTo)n 9'3'&VOx8Z:_u9N4fa]W!r4iF_ lag}cvPcn@45WYڎ]0,)ӛǒtE&bMci21 -jUm?([ q}^َ*EAͯrսO#jp}2(`LX^|;xxCN&4Nl\$+4 { Dlla4!=NoXu R̆{̢K[3ʎȚ-+Iڱ]GԚ s^B9[akĿ ' ʧvE"x7-ޜ^ߨP$u=8[H+J3júB[FCnJi3$alS#!=ߛ 23i@X@ MGvAG_"0..k4sc8Yhw::2^ 70v[Nj=C$omv(v~7,/_AW)XRg&iFY/* IJ:ȼ)ґ5ǧ1D܅22WL>thqx<(-@k_z5Y&d)80i6|k 8Y=_DqˆOi_( a:0g$ߨ^(Anƾ̞HuFD;EB }ѓ@u77ȴzT`]AVszz ޥZ1 ~.]Hu"5w^j+Mief43<625_4&'K@*6}Hzqa/:P6kps/?\o$W{zmaIe3`V"r1yl Puܸo4KwڪBSÀ%}5K;㘏yjAU]_)ی+GpQ5\sW U­b콜-햿 oIe+f'"MC|p epeMHg5YaY\ĄP!H@AzY0wEԚ{+tIt i5pݣo[d:xh| \)bɡ,E~A[ & }MmnAY.].7`f_gW7A/7z#*a^F؁eL\arF'9>xBXI6WS-TPO.I#8Ԯ57wa*U6'~ uXꚙ d_ AVfU%q[TT(Q{d} u=TF&)|=ܔ@mPKjnԢ5Po'vwJ'.3 ֜}]- ؔӰ{91XݩMqCCG, Q9c%"5ħnlUZN>wKՏzMN)QGڤZu$ߍf[ vwO_d1}]ߠYVި׹ZlHJ`G8< ud=IReNz"WjJboAxIc-lR?{d 1zPw9IEnڿ#OpVawjBeݳl?Zz]8D~]RM aLɽ/ bݰW;n&Rw6dʽK^ՒY^oP|Po}JȀvph,nަH['1R͓T2pa> ీEv( R ̈́ wzzFqQtv r2nXcFu}.'N(Ka5n豭h{]w¼]OwVd$\(G 760 ]0w<0$sP0,>ێwsր!Cz#꾮z|aȒf4`eWU}4 3oD&{M`iз?'p(~u(Hy?7k<-ץ eda7я7P*Xoj쿜'm8*ηCEJgti&o&+ Gγ&B$O^ H_fQU)Y9MIHSc׏: 8|7p14}ȅO|b<rΫX  @s&)_ hMi<D~DnhqS;ux a\tzRAExėYlƅ1%Xc_ָc9,?I kmmFv1M[slYҦS,#Jtevc%T.%-95Tc84@ f.w̼fkuU`< 2XJ 59eJ,'G}2e8lW%jKiji*wuM;gםi@F zN$jL:%ʷ- }C6l& !auy sאp0B xtnЮRE.SCs>aau+(U.iZ ŅBRb09)rvZzg̱mN?p+̼VK _AIve$ˋ@G0gN8觙mkK.{" KC"gQotw {_]`ۋUfCO[Kl-`ߍ'7WSJm!QOf-'2ҿѬ<s2oK~_r:mK<5ӿrE^10Oݺ굃u$MV}_4F-)p mBakfW]eGS>3g=G T3ht,_f't lgSYw{.U7{A&Mlݎ00zElra'PPzY[L8ƙ5[4IzNG\nf\A4.4o } BÀs8ENQv TۯxKnrDOԟʶ$z>0Y%"g afh5gm_YqWrrGO,[T.5巂wH)a]dA٨4r lDlav%2E9Gar}(k1;< G~;8 }mc\CEׅcuyjelŭ/gf ,+M2 i?RTf2)cqh c*j<  wf]Xt$ S>ª&;dP(hmnޤ>Rol&?+=meՊ~m~j*f?X$g9 y~bT7XZ$Twz8^s(D5%;DsiY6#A./>Rt? yn+SαY\b^Gq? Kp w HC9Jb?L&4װykcέ*RnC;8ʌ'fu,GVO|wa:━MgkKc'b)Qci |츋;pQA AlB@0+DC'E#EF/ $^4?Te rޖ8KS870hݕ^RI>* _<ƜS"6K 6{ݮLob5Œ&.tgh:i*]y&-]:LJ*!KƁ(}IMiH.7ZxXO؏%) Y7j/A~Eh?0ON,FpuȰ!Ⳕ$2@yv.>5#52F`I6ZkԷuGsayN[D?{Fl`ZsԑD6Ψ ROzhKI$5$Ĉ[ett=kƋ$7EO/I5o@ß $dnAd Bbw82`[$ ;c+96~/ 9CG_DA Hץv]}NC4:/< Md3tns5 T5"^g#nYw)PҬY?%;AcU=Z/͗?Gzۈ[{MQ6aT\A %#ĸw@ ðofGXDjWȗR 9P|9I5+8%eβMw3q҇PY¬o]ժ_~c˓qᖡqQAKн XBhPƴ4NǔO配 a\~_FvN[fp"x#swKP$_RKEե4y3a2>Myd5[ߧ B}p1A7D<(x#>+nL[+}_y^W yւr:% _'ajߒml~dL57j,fUlx;TD==[4lXd9bܴ&Rh0ד{pm%dJ JDp;t%J7/L+)D|,$WObUuC84 W 7KY[čL0tycLwdQ,[im=ʎ8w;x!eaRKE0ja% W={an9ɉQH[);מvMI@"aĩl88$aҩ[4EuUtlP_g8=uȕ)l[~q'(cb"v'=(ՂhaL_K9ze "Y5VRbU$ ӂb77H 3e'& `)w A`{tF)#\QdEtI218Lc ߒe'("1x`bgoΙRwz{!ˠܛy.J$5H8p> k½k]ZvhqIhSv!Gemoa2_[,W ҿ\V,6㈟nZ^>*Ev9xyk u] jP[OlPmmn73ee/]e@ ϱM *":J`W7a\b>D Fϋ9RE$l\ӗuO>YH:9)ɻiȐ8Qim" GC'`$XX`[!ְϤ{9(8{%m|x[1ĦB'+  *dGru*{V h|Iba\ 蟓7RXV?Pw液4 }x] x{KHlܿze8q$xIavkCՑdCU3gEϥЩQӡ}Kk"k#*gcBB\a?`'c-r[CPdC˟7WX%#žw=!9 njuI>p6SܪdXeO"6cyM sWK,N%+ᱲ ̴07̝"4lh @ksbh9,i: v JHSh4M_w1=952&Å4@;u)aTI|RE#;m\m < +s)JZsGG_o@ˣ5!2WNDƋu Zll?=ý:ռM'f ?^Yמ~'B&k3N!;5ܮ&z~g-r3iVzv:z)KPRܱWyD.[K[\Ɵ3C!SX0c.ȏMȅN%~C5G-CSc@>R.ѝpAF}= #Ö#Oy҄;)ϋ ƓQst6c+f3<+툨{EZ:N ;!~~5῁’@DU3}af9\a SUGrg#nHSYk2RnK^!A?-FitylF~Ijly0q^pnǡ}z[xguÅd23DR ݄d6Oym LPõ6hZi! جlٷX G<&8>S ȗwxsn!<ʓ5JAk{sjq ̌՞o!|`(e (j${s糧#0GFɿ5e/kj2 m2e(s44 yb"MRx!~/u]/3ф3ML<X>E?EU[čnaBY`y8`ۭXv,!nU9yt}j?rԀ *Ih`g.q򬮇a?~~ȺgzZЕ^p}K>މ7 2ҩز3Tǹ M`I|s>n/Ö{:^4q`H2$gO`YNu=}|>HL]A*r!mܽlR$oM㜛ip_/Vn#>g ں]7p}՛y!Cti{@L,B&^6UQ^n.K?a`3"kĢp{yV$I,;tfu| T,'G=BDlkIaXܘ?|<}l)U8Puzy=}%ʙdrj]sk!ke_Vau4 l`MjLsD6,T `/M BSO?g.9Z*=?_pjbx:h 2%X&kkj' I=GG rBKiC-&i_+M<3YTg-;Qgb~Rw_z?<@1mŲ\mt]S?ut]r4 ۻX?eA7\Y7CuK[!{smTNI"oC}׹r D%O[ I>7wɵS\yp&<.3(+ uպ#GDDKf].rk<`.`4LZE/ogGˍk澯`;ƮsW {.^ ED7Yf4ALo_g\3^+˱ klB>nDhC6ZW92t@묢5 o!Cj+ZYQ8:[Ma$DM͞jc9t" :!c@}hu29 OK[8T%oFUVVwj{ ({, A ߮4/7v}ڠ7KA]^"ۺƿT!Ѹwx4h=2p-].avz:.XTDV6R4VUc}> K4۴!V ro 3GqQkasF\ q 1\JjjqB0>3\ĉZѾ9d0=KfP,1Kn0={SX$b3 /{Y~Wytݸjt=V N09*[|҅B hi] ^~*8Abư鰾 $}4vf5=)&WUsgWZb9جZta]0!/IvC&R4YN n"7{ENۙ$+v[h oXnUëN$zl9Kh 0”xkYd8gyR|%W o%BoǶO/@>'efqohZ;HnYqI,.H=b;6B!6 z2{5Р6"f_E3e<%@N}3ŭ Z駗O%8KS8ѫ}&u"ڌxa_HgAariQf5~ 8]Ԣk|H:iVϫ.Jقv4$ߊPslPِ0 ڽoT#w_2·GꄗU6}tɗ1ƑM$k pIYc_rCo:RW+ )yUidu Hu Aak[M+DDD-m%pKʹ4k$/ FͤaO q)@eԯ< ݱgڕrcn[By!m2le-9mC8!mD݊ USdzRU&U+;c6JF5{X\%nFmg:~Q|6+76A{њUgqtmP ܂NpRh'S6E 'M¡/\_񞂶?@n;Q{ǤX'}Iroky#k]Ɠ1]Il#cJaMNfE4kҧP}nF^wpJKX23:¤T˘3΄ATR]de>/ ?t5\ 3nG+lFQ_Im[Luz9נ4_Ia4%HLtl@>Ki o' IRDjw1bvl8DIe]ח נ>KSJ),XC;F-mp9W C7^Q$~'=@0 ּ>yFS*e]-\I=J ^wvXb #pUF9(rkX*DL@坜7R :P){^rHĿVb{7:%LI:Cg_"}-- h&lkn!r)0=-z;'=6My)9: @;YcmC=\u!o?uF[(P`Њ4cm@iAyU+aŕ:06K#ROGOECsH0~(N*[^h\ֱBT$/vd %@]B=- M&ݜf",TWn${;i]WT[YPNcLc;:E䶳w"S|5l2 nj1;JJ" =5dcfSզ5}02dc+mRKO}b|ykSވ4۔(㧳~փ޳>}Av)_*ǻ'QlH0S`c}pb~GxLNbCXT$ \$Oe#*peP((AlTFeK/"^@?Ubl= lmg04HVm2lȱU;˒ CX+%1$ԙK˂1;Gwk6 z hRHDֶ̡̍uU2ł2"]΂14 _pRp'\@weT$b% 20֓aᬷ 4Gerр>E3葫J8D@hGA)Jut70'1到Jq=62} MTo\jg å{HX {KCrʴ;>`x=PdQ{,Cj1?Xs:XQx 0F%W "7a~o9v &\eH[$Rۨ3Z[#V[۷`w6ھ Cyظa_ tYY_ h`$׵n*䬵vvxSx ^r.ES;&bØ ks'=3‚ĔĆGKvF9¿1;r E uLn 7-z6A'H!pZOgν QjK?d*RSWIpF qYP&S̨n{ LFy5gYQAne2w84Sm0{ ?$ ϫ];! */]f{ HhŊ)90]$[ )U&363*g <@]dv1H[k*|5%&6Xfs t/{G=<)QH0D]){>t[5ZL["F9TG$:-{UStڳdͳ:F _"yN;P)Ǝ;h}j欳eca Y@ |җ ]T% 2[r"uY'k/qO0cC'#$pq ;7ҩȴ5C/vg7Q>᫈'G޺?D.7L=V+~^r<|)~qΆY8Bi))f/T"zJY5mc$GP5Xf1^;gjR<.U-N8P]&סMyfES9\YP5$yC` >qDL6JzEXHzXQr/#wN@LnۢkCwY:G[MH#m~r2;6|TVqc1*:@ xE/:BI&%aJk2o x.? BU"֜Ao\vWYck YQ^5mD9d(0Q2.yҗqlWNy\7{>2ك^<%ϵ1z[RMFʋ axG눥JtrׅbE g,yj]n+B(LU/i# }&yR_߽ChE\e7Ox4]8MzVJwy ϔ1?#yp~%z0D觫Y.4x IX=h^ϩ1*՟GDtyi;Z#}'i/})#^+>+8`:vsuS-rhFKzFG<3){$}b+Ok|CM?.tVcXR~?@GԳ |xqu0F&Z|ˮj[HR(6:Z_T<l49uygl?xm{۠`x E~Tm&Zχ8_nǬXQ,h :jf}e@: NkYH'")ҍ.R$0ƙJ pץC8 WX=emmeMh' i;\Nb1 &;h2c"7$&z-%&#`P0rAj]>==G;Wt/°w7L˪CEOץ,n4,Ï~TO&^]u%&Y zX[i l`2w2%Th f̖o&. `2+29{4=̶uIŌad'sz!Ò`k7KKyU=`k UR4|ѤBeItؼB PM LV8-=Ո㿭+:Y- U}bm+V|vWԜIN3hu:XX6g[Jw@D|&Yy^፣'Sr(d߭1I2 sUt#&Pu XnK۪,L- @cwa3T-$y4as gJmʂF͝+[͒ñ.d4|ͥOǹn=CnIvEDLqVq$lE\[B$۷2yzx$:n0|k5B68h3o+C@uħyזh_<- WU(QΈxk-rRb#{ۑ*9AH뚎jNYQc͗U9/OkM? L>jїe`~PA}&뉤 +s8[I-еc1k(Pz>[BV/9y\Z$ŸmHMab&nnHɻW>Vko_5ZDTDHv]6_"d/B&x(t}3Y64~6=ߴ.HI`BpXoCikGGmbemh!†kG6 lP l>clzBFR4 >[!-MW3jUhlqXӒ;P[ټ*XyQ".S_&HmOJIIܳxq$'vWT T$ MR!B|C# dYJ9β+@zp[_9_|^*÷ +g |M<+/xH[9gw;JQ9J-na!IU`4PŞ 3ē8Ȯc%|W}dl/zd ,}]6zMSs1+ς 7f4t!Ayc@pQɠ鎦}d}OD_?>Tɻ,HOKN/O?v8tkC#; _9\!CaREQLO)7kP5ii:׈FY C>r-l\]2eoFwiBL$ ӄ<ĢU{86'@.ꖻkxOeB\t Xyr˿#)J7UsKw@ԨօL,['p>nFxJ>UrG>58 cD}P\) j8#-j.uܰW-}iL3}hr;p}UX(N\_ s-WQzoCˆHF>@qtr=.[%xo7. n (;'i>mUqqbꕘ+"0jϳ7bJ$ H!q_`nwVAd-BN#Ah"cfnXz:,Yǭgd D!'o6MyO ,+;3a& -mծtn G%"h/y,h W2eF<ժLr[ && u"RCQa chR1 1 p?y5'_E"ԮVi*0Lӭ_?% no N=vv VQE񖖀_BJ^ …eljub30i\WYԢ;d98IU:V\(<|sv-P S Ռr*V>4%^TrzH nr׸ͼq7r`6֝BPt7S׬}^tf7R0mEQX(s<::'7I| k:N7f8H;u'{ƏHN)rTe}cݽ]oV86?|HcjX1r b1_d`|D<[3ѱp}GYye,lEbj=8Q2)Fr0MKK7{wl> w/Ĩl0d"8E3BͼX? <Ed €;;9/sv5bI(XT:*D!~youiֽ*b(l:8Ta^+ )8j$eX;^S '0f\/z_eVތ%򽨯3s=Σ`fuwЦ?V<lΉNOKx\ȽvfO)&; C6GY8YQz@K`ULail] dlScly7s`ӕaQK@JJQ0Q\0z0()lb13={6יYOKI%ru쏌]9k\F|biEnltO`_&<$#mI/.SI!e3x;ӜlyqZvOtyqݽ2sVyW=: e签k_tWd_FUxafW(!cgI:zsIwV +BP!yl[V+ah!X3oQZ=iA&F5͌ lkORhwIuXŘкLvR;~$K'Y[]]5g<":XVtf\Px%}2DRtyցz;.DYXHD;Vsy˽n9-*)7gd3ҤoyUBz20}. ~oVRџ1c ajpgHBCaeG~2/kD3#fߤg~Q{̀]k8<[ɩvaOA/|o!D\UjI 7xׯ3gA/-lT{!+e9kw\Qs~案J]k!Llaqc/T=cr4%V(e3>K8|,lĽMcr= :.Jx^ξݨb.l-^0ر< vɎ^֋ =Tݯ0܈e%jȕ>-B!=?ۼ$퀌o`1"*cu 0zC ᑤ6IPS|"lخCq(ֽw0{%|~Ė0Fr r$raZAX:-"[0{UB'͗„6zcD)=ws,K(gX#!v4|Åچ+C"l9zխx9usfµ@.MYYN"{Ʒy3w d폭`) ZS,쌼DZPtzj^!Q6/K8Pe<Sh@lEƐHKas96m(^.y.|NZ&-$]L7GF[ȴoK#[*EjwˇGwUaF_N'RLD!Md{mud%>Ӑ.ZEAYw  ЍY+JSeU.?G6wM3)s=+gs4{'m.}h Hm'BdҴ;4]A&>zlro,\>1@W5lC{W'=3%iG{ v߿JNeJ땊2Xn`*[8UF(}Oj|G߷:4nn6KLM :y#ipwš 2ɄRD3r8>E Vtv Axz ri&$~yȜA1k g}q 4.S|T㒝Ӷs;2|y}N /Nr"i0Aq O BY ̸ bngc%u }ړEoBPC[,Arӱy( {C:4^L[ 6O; 5 8n\@fЅ;S|KfPz:*X}B&ou}пm+JQNO92 Yyf$?(Uۏg|=uMJ lĶwwRGmﺐ,bnm!/O΍e6,CX!͇9v#ɫt3Hi{y7~q=c %+Wג2bWf4L <|;Jϻr{[MQ~ߎlþ :8E-90\ p0=aR'18Y= b 1%L6n"Y!?LhfG Eҿdw8yԩB'[\Q?r)/4As{s+fלd9Ximϩ,YɳI&MXI!YKޤ, gj R,yVԛ V` }hYh:5]7QHĸv%Y J"FiwxRKʺ'0Lu7縖c^aߗ8?u6lXߜ1#Ƃbq>+14I⛃t( ")ƤcHgs9/3VCp rj5Vݡ5y`3ckMus% S͜hqgGW4P%g8> ;7!o\\Bo/%-جhhI^kuD DocW0L ـ B?n Ct'Ht+ݸP Vum/a6}~EB{pZy\W]vsbiwQ>ԾCd×esdgmL捿{9D#plз^"-:x(>@Iմ`e˴a@+؋ 킑"Ss(F! ʝUߞmC9WGf:d aDX lΊg}e[o,Ax즺[iuȧ/S[#Sq̒ HTU‰WF3RU`#nSC!ww %Y<$S\8]'D\6z%>x,tg_ؐu?$`FC_$Nt߼+iD]eE@d_9ʙׇ[vjrdqdq%p3VTA֚ Dos(GaF馿=џ/ٜ{t@ #H.Ô`qnPh}H0^8DUO4#Ȳn۱!#zg}tR֨<{8n+JM;Ӵq1 jk, &.A;a;_hV -QBm#A1T꽵/kk.-E2 xIѺ̻[2s#,UzDE0Ns`%=X | $TFW"D>Wv]I_'5K1WDFrlQbn?N f  %st& vuԂڄ&I_Ga249RTר؋Jӯ!'Gf%N9GRAN#ohdS+y]4&NX8ߥfue LpDV=S/ȁ2Լ O`[ Ni3$)(Bxb8R^nwoyp w~ƙ `w SKH=K;w%ƴPf:X$dyBu 1)t bR1lӣtMĜ^hmhןnOت3B7h#O-qɜf0lu.'Kz*b,ah̳"5"AZp7K2р/,1bS*B1/Hd>U*WQ98e (j(rOIo\ewNq݋sOkaL ט"O|ƆwssZH$v280zD`p~)74}*>Yt{ܪ9̸8Y3$PcsO([=.vA4TbWk*i s_\FwZ&,S1E=o>%f|baY1gPhs~lQ e?'?kQ0IyR:,SuW&DG@/ d]!=1P4s{OdzGP]Rs%F{LTX>Өzڃuql.Ǜ.h?\KnVEC>QD8WWmne.CL|bn_&[ZM{>*f_m68C3gRᲱȊ mfA+>k똼EIR)p3o7~k+t2864*!FJ<7vK`k~=H9|;X*+s[.5l1yק";k22"ŮpS[(nI} ;_f' O~Fڈv$Gp%v9 :իշ@: <8IY ^rtf]@0Ѿ*l;$Bҩj˃eVVtQ~9cჵ\Uw!^ ^U&\ J< `rMBH^>х: $cԟ̀F0i;̖&"#_p=wC%wAꙖ;bS+Al󎫧-=êb##l,`byҶWҿ& ,IQw[FZF-.Y2wmל_K8ҵˠ ~A7%2͘e$S*B}#sh]b,jK<77 xŧJ(=s|E1HtGMeɆ-ݍX*V2U/n;Վ]~}= 70RS%ㇴׯP FXswd(_ef!=㙎KfWx)7=wpQWlHKz) +:IELfYb.6)ڢ~E*(l5 W$؉k~?‚~`_kK%n^${atڱUkunR!;4hCFVM=Yμj5þq[*`qZa{)tohN$A`@ Kċb/rz:i` S >ƻorύsU۹d_Ne.A+=0` ՄClj,Xԗi9{s9sO"sΐ #Dqe[!fym >RuF{U:T*/h{}.f *E{6K1 J"[3)&VF_\眩824~[>l ;@bzTrӳ0hSOaǃ c8"q|+F̠vF3M6Z(6IJln Pblp=$G{ȁtx=FnЉ[0 mwD[_-ckl[wٜB wy\ g(ȣ?V`u-RZm8b> |8J\6X܌Ut_AU^a%t-=mݖ梻VHC-YU|ӉWu{މ8tZRf-_^ucf\3WִAil^(@9f$٠@ :΀ʺ Ʊ,^(~k1pC3L; rY8!T-WM7?@i5O jIyRUa;_?BY6L[eOh#B7wl-w3rɝ>`c(ggyv?nWeGPUwN*֯7!8 B]%Ѫ.P;I+UBO!YF0@SQL'@g, PggjJN #V#H8Wz<"S {sӹ<5)*l'@sV S]ʲ&%H+mt"3!juX 3͌{(4-VeGx2\@$Av)t|p_y(Vh&@ [LA3UrjuX|m,'<:2U!|A h`=YÎ6A[bzG2{eӔX} u 4GͲPWfM01}H$=`oڅեA*h S UN'0qHlFs?>FdEAR^.mM#(2D91(u{O M$4Fb')^zx;MI3VsTq$S&K(2(Ko$9(bi6DW8>1/KBuT1Ӫ*g AP$kX儅Sp_F$e 'MoJgɊ,>0%(} |F߷{z !eU,pЦfR8zqD+*м}(Ȇ>. .`bqd=\3h?tw[e͔?8sH Ϋ(e=S(ؿ4,Rc܉e(6=ohCi·C\!͍4;DRiW^[rt0QAP@lҐsW ֙vqGZ`q\7w8# fڃ0ېKN)( /͘Kp 90* pI21ż݂ `S}PJ #LAL!䙹?1wE^;nji2J`&{Xf u݅@C! 9=屡~ q% )%0YR:L4'ob3Iu]+e)w#}}\uPQ5q&Jw$GSVnxb +}R"@bb-%|БbI!~E_,Efֻ3VO 5i2[^BKA 䳚0eONkH0<95Z~1mP|kJ ǐX8k:RZT1lJ%`⣀oñMud?\_7i N0ɻ:: YeA3*MZ>ɀo*= 6qV T.c*jyXuq>u?FVvq2hZQ6W@"r ΍> ڀ5'{{拯 凵Vu;spU5xL^>.'rRUgGvUкT?\A{Fxгd-[H62޼rinfUo e0& e:6BKC!Zٿ97'QT/˥$`L'k`z5ѝy>!!P 3vl Y-JA-ILw6V: jeMqɞ [xDݏ;(rٷ,iѣS!JFFAJ BO@T)6aSe#ʜK.k#=$m? ň. ^?,pdk_P 7׳CEаTIYj!2%gֳUe./>GNx:c9VT'΋p Â4'0d!ـY?EBGazrv>. *7xJ  "j1hJtZ<4=s,Sʂ_sWt]*qP!]員V7prg0*cBNw*"v8iӋ7\#!K+A .trw#twcaJ2Lϴqeݪ[0V>9G_dº[↍Z٧Bq.y*{sěBٳQPOm+~CeՌ+ɻw;(Tb's>YE@vurNz=ʚ75I $)+o%#Q Z X;d(!W <Ri*)KLlN8MؽfƑoT76]FHs*@$Q׮fü! j_p!pQɆ:mFixOZ J* 4 m1S)__6&@E:>p3>ˁ3Gu-8_pVfM_.Դ56b pWmeF@CT~aExm@etݍ;;<*dh?8ja ʷ.J@[A&9(ܱ 5 _N"{1#E6/tMtwf󂴦`]Jͳ^:)Fw͌7[=4Ɣ}<ڮ\pAɿLj5PGZ50fEf nE],;Jv8D$+o?bwI8ǀWz p^b> "ߧ<_APK85n(c*K'V "lp=7k~q( m zkW7Y3s$1FPoT ~X>@Xh"_ r{@}3MpyA6 /(c0k eQ>5{|_s+B,~KYڪM$knH Z] /KΗK\3!Gūdoߌܱ *Vd{N@HMzlsrTVgԅ]ZspLە9$_Rwߟ.9<]?EvZΟTdY'tg2Rtsr8FbvcRɐrc(Ԅ%vd W3Zm4b ɖ7 KVC=)Ҵva& J`Ӳ^ur-la<(IHq^PK]YHF ,S,9%3ܯgYXsTf=iZ?*?t^ʎ<"6nſ*Pޣ9vw =WMȏ|Uմ~.N*I`='vn?k>o#YapQ901UPhbgZ2N exs'.ó4>W6rA^̇!3hJ SPoHq2Iibz=c2膷խCG_VK}u2/Gbkv ch50{?u'[O927᳖{b+nUz?ДvGNvAm&)atBIlXt$Kp+.c2*}zJߍM;KE n u](3 ? h,{^lQ羇<NH"gY8n- cO2i!"Ii=o-=>_R~`}RY&9)i Y Zra./zamOlBS]Qg3 yxN[*`z$xI9:n9W3y{0}Z4eQc# g%ڻHZ֡N'лW_D.adı!x.| ݌N*Yь\LvylasԄk&n( O(/'>$iE8B꺵PeRN ٷZhXw?<d-/+{ ͽo-"WCAR]l^1 na|Od)`y?cieE"`lԟ-hP:l:AL q wlJ#Vti62aP3PAͧ O4foz3_XDu ]"a m|ngu(/QJ?j}(V,GHbE|=? !H`"$~Vz;e6%;vTִ;ˊb5Q N={$R;Tj0t |\,]׹1ß4,+7_)&1Yj/@IWc6GV,@[$@[;mPW-6ˀ'"t|;8AkG#jU"svO)zf<ǽq{n:FFaZ&- QnCF[ ٍ6(1cpF&%u!Th/dU?E3JZniڬ<-N6AZfnMBC/6vOY"Ο&Y|v&at4QD aYDh,;ϔHe~Pi ף|8)tZ1;0 ,ܞG_1 ZV9H#e-((8btPNj,'Ipv@r_D&UNbAψП#l,Ά2['sЕI<&o f1"6w-I 9QShɨ4AuCjЪVA`:vѶ/ljpMԭ|V9~@ rC0- S`mOn(+ G"Q6m#m}SgJӵVlyHbNY7:.7%ಒ <ƢAοx SlQn%; Q$j ٸ 5ܶ?1%shKU50&&n}0ivwmkFsyL~p:0)BFo]{Uޖ3\]0^:?,BZ xFgB]-[0X]N;>_l\(AE .Ix &![ąk?$`GX  BvC+g  MkBH4jx^,XJeoiM0`7blDQMfhvBMO ]+ Ӓ#vC+c@ [\LIsxhɬ,1qY(ܠ4*la&c"mIO ʗ210R/)8)PW(|X}Xu,]n ~nMIG /Z0 R0<5pjqWXRN/e"?xo?]Vtзs&`^ƯO]! fPH F:d(n+$+'o!$?Y4fY:S1YL8;G}B|D]gf?{"PcLIGHBD8]`3 єsb=fNޟ,`|Ub-)-?u_TX aX HdEj#BdR˽~.eLK24 jRIPkYƫR[y}Ab*v7-RU{ _gW01_|›)^l"160/X$bz "5ڄ.b 4cf:1 @?Ѭ1%)/(z/kZ.N\ mNʿi[74X Li)sYr=kq4VފnOv̫idpUXhI7Ec/$΅-DUZuW&L"TxM^nA_voEG%  7Ny:feW.zS[K VJT^˰zNB`I nWfP8}]t H*FI+8qOPQN/Ko=}Q#L3CGΐ/HIhse=K}MVR#~ƜIå\"|+~*m8h'-d $Qtml'TܡG:y^ٚ'b||G䒹燚u 6u.H/gEfNr"*V%f[ӆ6]YAN2cw* w xt?Lw?49Yԩf f %SDڸ\ZWdz!$ʖx7 lQlЃdw;2Rz==P^j4&ܜ46|u_5)>qhr }9/Mcu.,%ER`$x&Ɣy܈9w; `DFaum#Y+U=K|ΠxR/:[z^.z[jT CztAi @ŭd{gQhv ifGlIovPh{{JޖŤj[.q>ے%0BKB87y ꆒJ>iO?T^ 3V-hU!aF\+w&I^,ӍHE.t[lCƼ-WR HC+NN2WN; R,366٠faoR"3;\σ~i Bp7*)m%"L@{`#6mħL&3&A_ixg4:`Z:0['a:{^b'ϖ@%@:REMߊt"?Prj|)$ʌ> ~O>eS@"p;h| ^?/ƫ*;-<96TE{i!H]fitޥ)a-'Bsf]\M7qizOP+{k5>ƭU@DJ(5!AZPc\+O^ RL>#=vzۻG=12~*kօMW2iEw39['n1&u(<+4w>eXK4O)og!RϙUُ3hjL䣫`s?Kl'lYDy|SArvfC7-- p3Z֎蔹՚@#ۆτϔPf,CzrcHhn%hbW¡*Fs&Po @[W E6!iNrc.|!iu>3)1hN#9fK%\hp]H5 %H#!$yyt@7rȉ(XUB srԑRRe߀A=qh w~~V@W&&_f.tNwmi.?M×5-|AʐЍT q)ûs19,WHܥ(H=ASUPa ʘ fJbLJ1⹐)m H]L@rT{4h iܰj~ &"5Br?䙍4X٬+ӂX >a^4+Bw|et %F#ƣ5L-aV?eE)2սVcD 3( d.Ln ){.eLٕ}U 0}"WJ{J {-0+)?RQB -h 7B#5- S3*eW^2&+* tU:|G7[Qn:k.|%|Y| vmuzo~aY6[rhsfN$C5ע6;\Dus>:.e2eL xRuu NGBB-,»*1ڳ4/?lZT|r&Yj7ޝP"M`# 2&g٫Үc-m-8dدx 9':܊G[?;Vn/3~4 AT8j4VC(k@] q_hvablڃqDE%CbdyVڝdӅ]f~|$ٰ"Bob5ؙo?8JeEFi6,ӋAS@;d>+GŖY'4F25< B#/`G|ZJf=kYYğ)*Uw;W9=gX2 粮WQ 5hFC9u ٦("<<<:!%S(Vwb.G>@WK&x.#'m"Ʋ/–4= \FcʱPJ~1`8n*޻QoI;U*FH%V _~ǾQʴ"t2&SYԼwU,qKdR)ϱlQT5qq87;y=IYw^{ IP$\kxܡ_Q6f9W^^i*䘍QZ=D}dٷ/}wQѯ\ẏdȒzw$W( KJ?Y,py>ƗO6ͼѐwlyӉPgYq`z+riNKYCY#w*ԚRiDKxY xQzsѻP!]Nb5匧Al癱5υ3L K <*[4w /J%Sܺ=იt$L A@^X- ߤ0(Gn+M{L?dH4J|G.1#uINC 'AY!UexΝ7xl.̅o$h1GIQJr=3dсL Z& ]\,/uy-zՠnJ3`e]\bP*JTϯyaWa~gv@pYPpI vKcy)pBbn4mجmFhDž⦿a+xhIH-vgQː`e DH/>0Qy'TUĭ5cBM\[圊xCWՠgq75\Ӓ[__F\J0,$]%~^蔝Ga0A^M,´k7cXf' W QC3!W~} ALjBKtuLQ1dJlV,UXfa fL>^E)wJ? >v8|% a>ez,SH МQn sk=ZTFAq4r~KJ$@T{\M`ք`ʶvCV{b1f(gм<礙}es]Pp![+8d.[UB@Q/3i}<"c |hTvk,sVwcA#09tNovcZM_]ְT,|?''ahU1ǍN2]r'fMѳ"K 2\PD]>>E(1G<*VjTGF[~v*qB0Hy{Ka8/qTK*o|s,J_@Zg /O)w"h/aΌǥ)jn5"Uj5I} 'B$=sOؕ׸8eHbQ#꜍p"t+x(HlmCN&".XNϰϏn$8$YDw#~ h|_* 6 PB0dE!/yt4hHm[fA1k(J+31DNދ1!ܞ{aQKD[5"#`@FF/IhHwupQ̘CGhWڹόv#qc3%1_ uՈB6 *(ܟ6YQA ǖ&Fc:Ncv'@}~vkGEH^ϠEKLl 9&Uӎח(W(yԑKL$y!@sp.tkyT.CIV/=f=_"e`x|{pLa@6ir6H 6Mk[*W)0Bt]05Vƻ,!w쓮mh4Ժ|/=9 <)?Qb9'.x&hur[yOc}3VBBKk17vЖ~0JǺ`M>BB=._Nz0k?RpB񭀵E HY3eWVġ&֊*mPB˞ʑg2@6mһ Z.e q܄ @`Ci@h ,mp2|t],I7 GwKhk]B+SF]3V ,^L@f C-)&/9h 鮴ð7IBLzeF~а]ӬޏS2,2vrT\}RňCK%(5?F.nxFM k +q [j߯S).. ]O[J<b0]MxzCsiKr8usK{IԸ8{[]XAZrN6#GiqKZin<xkc`܁Ak=r1M0YCQ͇2E`86E'yLf')Q7@4D!<`& qSꬂ9, TԐw՚U* ;G05\<2N/wxbzu7̻hD6b-7az4.Ge ihjGawI54Ma]›‹fj dۉwFFY?0ۂ7dZ'{102 TKaUĭQ#a3h VU@IJE@v!oӺ#fxƘQJ 34PfRtךw{OTʺ9D[YTu[׀BCQMFjM:ӷ?00yg`Rؠ Hrl"_? _O'lWb}?/ 5C<6(BrXֹzzͳU1&߅$m;!]2&ZQ>LڷfIO9U湹LQ7DP2ɅT1?Qdko6# 9p3uVI-pX!,K).h``K(!{OcÊCx^d]2Y7+;S~2(( 4 ^Yz -)nbr1- P)p黖f^tb eprr +4?m2bBʡ3a{':N,NBoŘvd4׀ t'b k;1To8hk$˕[w>zOhzaq:/:@{@HkKkXEJNpۨK% &`U.Jԭ֬qdm#F: grV&Nֹ8CͨJ1Q[/s̶zB ɒb-3O83f%rC͑R2SZFQ߁{SΟy'z&ngJv!G~#q_z$5hi$p]2E趰7NJrAwbS.z[ߜ+gQƁ/zgߐS޾Hz9ԴB6ϫ\V6j0ۑa[.˧CE,+@Xj8;PfFoʡ.?1U,3qYM"H󬑕əqyR.7=Sq6 @VVmxnK\xVPZLr,kw<= cд> >!Ԋȧ]e*'HbWpE!P/WJ Fpmb84)TUi{.EWhma o'!9/ FO_[㇢F>l':ە YGn qv[,t: 4U38ƧF[5)P%,6zxPM/BLF*?Fr8nN:`k7άYT+:"C$V zD2$(-TG;X48;W|X/gXt+-0"?S%KJ/+y>_%Uo&=n<541+d%_j5?kfM@cft{:|B&>.]ZY3?Հiyh]9B,VƜ>M(@0OW`z#X*G,-f$3&vW x (A[vF e h-Wۑ2?Y&r_ e?lS@?᳙ a%Tt:zvc0S? gﻍTHf:WlV4qb<<{V؝fe4yOыe@)1p޺^F2 )#s5͜]Lu\v5z~6_OsqBD;adi_U=xc!/ҝ-&j (E+PylMU P4f·-7ªnF!PzHTCWnm9ց qkg&&`{r-6rQ<[d1c|%F3<@>4TE{Lu]>$&p&)TLK[zO 6l-2iDUE$/~nN du^yɸ9Aծ9h+8@(yUL=}>oҕ}-mQFb׍+㚼n*q`-pЀ>M)3dsDc6b)9Ӏ0A;w;K/#Uc:K⨼1O-&℅0$XҜ$cj{<])8z7N/S]G7Te>_6~a-,Vd|>Xvxp];"5.(mS@Rx TI9T3~MXr@JD=rT§~n+*k-" RMiCu [7<8kc80ʏQg%MkD[帆[/"`~D9&q4|g9OSb%!5/Ћ-[9=Š^ͬrL]&XjLԳ+ӢI>=o}Ѭtd4֙y0M'[dc"q$[#uyk nPӼLTy =RtoX9 >njv5+ o8E;s<=sSA!~i-gm*Bx TBR܀f\Ģ#Z%s63ꓼwt7If livՠ'yћ6SGnGz.ڟ"g/^$5!?SE!zP8ͺ!%pD;ȳT9fgl^EArGB:]3cmYx;[Omgi"~[fsw.wL{1BAzBK8 -lvWCW ZH֤/F?OǒJK b|}cHz:fXp^/|BkU V}rYq9ӌ1yK~5 B+6߶+3ײl-s폫FV5vRc-on*!S kdIhft:7͑ZdմeFr@bCZ=9k̰'O@81Ezk9/.8Ik8+Þ#;2杉@ c"%0a&pRD_ Х\Q$ܑܰBYD[y@)ayf!֝:ґRVP6ZJJqџq)+mz~֩ښ~BlƏr4q\vv89u!{4 gҔSpyPm`X!epCtߐ{%y}{g]gF1,ʕ^(Jހ)K6/hT$l46MΫ0<-]Ff&typt*Pef_^O r0*OXkCf9c"9@ün_7WN PV@\ *ZtP|;U玥U^fL_^x$hwwIi ⢧tS[$D0YՈS;ݚ),cЕeo±zA?#8{%FA1D3S=FdL@%;ש(}M gDRlghaƨh1vi쇼.\霛9mD-`[+(ſ%pܗOZa\Lx'@}I'Ϧnԏ:+ȇg!=VycrYE%6 9U\r v[v~]<(1 &|n]2?T6%1"|nW6Cnصۦlg V-.LT'$AԥԺT{Ľ+Ш5l@0Lu8?qKBR\+s1`ξir {4—{8A ` < u?.-ZX*-O{{r@. $q?dX9*ka] Syh{L3C/ |UI oƐ',GpF'؞R'D_h[d֚#U3 Y{SBlh<  }Ѩg šx>q81^ଙWy>ͼPe2ψM4/ZAnU-ьHՓft=h!I92}񲻤40>~t}SzUo7m큚zl}_AwޤV K0I;(x ##i #EL du>b,o.Zh7GAy<i bI)a% q4y_yɆQizX;\)P" H,$ 8'ӯ s jO \9Ya{~IFbfbIDAx.;VγlK] ^:y]EHWܥޏ/ !i! E|?sg_]S0 pFx 4u֬ڧ:q!iK%\|[^ju^fc n^,)9{cuܵZótE7^:5E i1A%muwK ԼRlY;歇V pJbF/I&cSmJxQ=Yhv,F*ѦJp_q*t735h[kXuz`$΁d?~cy7JQ+3]D^d=$p3u`Gqi ˠ"s||R])YnG_6HGK?nX}H {+.v3*6IFϺTH΄jEݟ07F{F[!b-cv󄫻.bX9 &+p^N6Sڂ2nvuykk&h普_hv+vkGRaX=L6.H- nYԃo. 5X/a &HV(Ԏj *@T#'p\[R]u&t_?xqg $H9*9}j.SWz[phk!(C,fᛖ2FiF97;)`t s,]lCjnv}vkeꘉm-= աlfV$yL ᛷSuh%{kN-K͍RSrr0q]lxUAk5~QV AӘ ړ~`'ڜEXcBȼ¾A .MK _W}_&mj"U'P#+XUdcg<#^VshbWYl$vLS֦8?A$t0$ZA@F{<ޤ@}@uK0uh*k{bsLI2*( 򶔱sQW Vv%]0[oտHk&g)IFqXߏ>fd@V@4?|-V*MxI6>M w:z{>VF+6>v~k!T{f4r AfCs{̒|WK8'մɦÐcolGB^d{1?f_Ia8|;1(/V]Hebv 5ybHtj )_b8 ~@Oʬ5ѹx>1pþt"?^bOU`P,Cn+_I N8LY@% Eei#ѝ-+}l.F>"sPpj "HL*["Y^Ʉ1JՒU.xhs!KRMCS޹9 LQ# ȗvhu/T~h67qwy$i&a$У?7d-+R2g J\f\\|w1fhK3~ׇܿ@rUH:bh6قU)M^jx/!В/.I"-uR+MnXcm _7 Okc0gQ,۔[UEdc` L Ǫޘgčd[Ŷr.x:⡯@ÝB0 EYs1Vii(f51!ҫU|eQ_(>֬茏DM)g%8\`I {\to4]q)Ϡ(HyXniQ7հ&=LM{΃ܟ9kNzs ǴMUoJF[4K{noj7@_Ԥ/#0?Y2ؘƝCDh>_[|ɻ'Sμ"@CC`H4~F25=zrRkoB4aՉ&gYKk:K$H Z.Nڷĉ,>1inV@O2XWYՙJ3 <9H,^Kus8["jpTpBa7qhG-=Ń5ҒΡ\T/V!F] qnZs"L{{Fx:' +,Nw.,wWFP ʸ\fEZ14]OƏg5sةl2y'Z"Q^Xs$ 8E7dz&O#2M}^qgZ|MB"(-zٹN3 >_U$i1q'.5rLꨈ{:RjQh޸ͣyu֤ޓac(:mCG+O}-!p~~d-')5Ҋ1kHH )x񇆮잕~pvv-]"P4\[A,e@fa]Eo,+] '$:/VځC;:Sbo{|3~Šv˒Ǯ֙yN̫5*>@ u{5|tKG r|8nȘ]_tIQ]rO=ݶ'UؑybwʰYC1]6awb1͏| my;f!?@w ԜB7hZmfmR^pa$i`Hf!$g Y.zX|`ͷ%KN}]i]ںI#$ȝ9y?.;) r,u j)UW뀬1f WDfj9W(_hjC_[b&dc"xog@cڢX=U7Y41ZhlT~W2y|2O&c3rf%X;xER_rRLzÒTUg9&w>S^!SQ<4 Bt^TH񲁞"p F?k l ;-@ZHiJ\ GP J7zP9jV;Ap2튈ӾISIIQlYs=5h}Bm~ V`CۗpU< {*Wq[16(f 7)2fyo:quJßssrIe‡Mܜ"fwbG2܃'k'Q@ G vC+㋎+z)*ڨ6qg2A}f΋C4]P|7-r\ib Ha-T>-~0+)/&vd2#(!ӷUՕjo*WM8&( O@C`^%Y%}Й;);77%|Gfp-U2W)5c9Ĝ%w!3S[^R| Gs]JQlص?{s/Q~\IB$|Xg6iHsS?c6}54ޜBƤKd2U$9UoAȅߎz r;ql c~5,(C;gR2dl|.x iR(`nX)&4g}&7C?>MZTs6n-|@Ȅn)OXͥΨ(V˸g f߫lHR ^d9Eyqc(Pk剜|su! m>6⭅@lꖀ􋖀Ԝfx V.-LєHt=%}#DK?~c TC:p |6,h8j;e MXeo$Mfț0\qR*kCKF$ii tڰSy 8@ LaٶߧN&+,k}Lc`ú.^>Zl3  ʀfu3ƏJ~;fNdDLF:tD&{bNFx:=d ε'{e7co[=m|{/#lMO|Mՠ+ > ׋ @LMr>J6Ymd ֑,gF.GQC;^M!#CǤi7[+0wr4&]S(ÑZ/#x c N9=G(Xoq1g 28 }>,H p3t|x}~^7)Т Fe:UzrJ/EƖZV]C<[ekoW2ǵtʛȩiRRCH9 1%a"]6.K"rF~R7<;WʁִĮaLlUeЙG-/ݘ'2ؘJ((q}RŲijhVj 8)?1*ZJ{` N 2Iq81)gFl 0!!2J3f>tEUJ$^[]eHYўNiˎx0eK񸳃2Y0xR?m!3 A#Q4GFꋭk}=h2v֖-4OS$pүȡ{[Sp:UsNc 54 8X0m Bc.}+h)ge𪳎JI}>)zRvnK`B.0:GnĭZ:trP*K|8}9ynL w eHK]et HdD̐mfJ\@0>nhK{ԆoBdS+Oъ]uvLi%ڎz ff9AɷqSEbEh1|P~pcR7Inmm 7O0U{r8|4zkU3-^P!a_x@pFv5!ֽ [ym\Bg@ou@8 ]7J]XX=8 I9JӹX ƈhj{_րƖGT_D : 'c$޾Sꚿ о|x bB+(WRX@%PP,AQ71KНTA)? Գ^A] ӏd@UTeO]2I3 | (I;[Dp$T;g9ڋ}8ݧIw\:H7-# DG2V0NŁ ͛eع:7Afzr`n*eL[t#=7p;]jQ3,?mbhX,uJU:z$ru1tabCKcًQȣR"Ԛx+rMM%UohikgSy),,'0JŮhTTL\4Ct~S'KV6^6L)<1jp,㢃&fd42 Jq6j8T]RHR /Û)AjU:CIAY*1;S.ƎYmg^xHpz!b_anF5-k( V~3WfQ<;bDX7}6fw/\V1ܿԽeȿi've 'pw7zzڳMk0[+h*-^qΗ70WΞPAFB,kry a 0wrH]⒵8NˮT&6*ZQQi-腃/1 Xv|p V~"+2*{.53lNC?䈜!L1].IBcK sUbn$\76}Q!6P9VCf~[ԌckdSº6ɛC~' ⊟MpZXyjFLQ  \t;G~:Ⓛbp.d;KXN?Y D @8$c%wn-8rab\4yh_WB~MS֗Ѹ[l i1?AoRuy}cAri[cha'71tMtlЗ%l_mȠJ(>";$5cu(}]D)Zfz_{!Ak@ 'LaGaIKT[jC ,g9@j7rQr1v|vZtի%CB2 Qø^8Ǭ ehkg\*K)g֍];YllY: )eƙUy6K}д2j ~Ċ8r {m[Z4򛇂Ur29a2^ʼL3nI"[ƌ3~5(Au k5"[L0*oČ~׬N3Oyi3|[zf]4zq+p/Wio}C s\dўGsCfCb/ ];ʾ{ /bj`_!3`ZBoy!95P8 9PĖ pߟ䊆=g;a5Y}:N?s-eTセT!z7_{gF&]>`e`Kvjkgjg!GU[{)^,$mgЬC2=na 6\y]sM,/i+`4^'ZZd]wQ'N@{J~dePaj+)>R,Ng~ZԻ`u @0O@d=phPr;vhTcS#9JH=ڻ}Dv͂S!uVpg +ЯYyO@ty:T Ә+#b`}cұeؒAmͿ7"Z;#ueNAi-㍵wTUZ,1hg5+I'%ko5"9(% Ý:%ybvL|fLD R<4 'ܐwB\e-;5г Be1 Dul7?g ,XMp0l>GOՁ0(o,\%ARxXY3(a~w$uab-'I.BJ$cL\>qGj]4]B3e󈐻f՝u ?I"޳EO! >y.G(\/bm5k:9uMq4y!LIw <[,j5]5*˕Q]sQnb|^F]vb @[NGTv Q-It+Yb c_x/Wk}gOv+5^k>/alL:&+CцȬ *Gu̻)9u‰p?.BE/W"ٷ[z*vV <x/}f/-ta+Jk Ġj)eI@w e"JBw;0M[+=S僀=(H T})rƜ>B:,/ԑZxH|D(1 ( b31OwC&r[Rԥ0FƂUz!{we8; YKaӤMXQ@ea$x:7Z=S{87|;o?i>̴O(-m|\?DRc ,b0z"DYR_VZDm)~aAX[ȑ( p*Jp_+[CMf~MYdaȎ%rTr!$ao糖FXIYvBţ73 [6TAIbکR;Ov&Y6 K 1+ [);%˖0x~LS$FfYsCk<4Jt"M郁.9٠_e7vY;Ox6?zٲ$ чLL Du6a2q0,;ܘUS[bjdtdt*yj Jo|!gY|B(ƔD%6xAPd04E+2Gt؏o`sXrbW4lH7Żr]1Uyuq~2Wׅưtvm͔K=U'؍+Fggf7@z^tvJYgMJNwJ(K=0ĻhyU0E<1]8.U1@k_+[U.&Xa{#ݷBnDsa wvģc$#_*qM)]J~ql^UIZJ}j%uD!h]m4^Npd,TC]&uMlmpxeA.*6$uM B.-AZ:'iO bnu¶ M#ĶBq&bXFlr"D92 qyzJ)&:s,vS z?K/=bt2oY ;>Y'?S*-ބc<./_==,v j4Lb 9 6 80,J AՄ:AzfL]C+$YQSCSvYK 0ERmEb8T~MXQ$I^h4hٕ 5"y=ɛn>^]r[rjq찭MRy䅕UaZV_cep#b _F^_oJ ?sbdcJM 7arwMհ̒)Z^Tq ^GE8˻@N&"M {;ɍ{+s-UDSPrzR'm/1H2M/^grRxag.;b|n_ cۄ0i>x9fmlefyasC c/tUo f՝323@-Y-_Ŀ!lC{Tt*ۯfrc*ynqbg!mn`BF:֚huX^ Qǒ|ZrAM #,G YEZi3M#ȲoYiqB,>45Q߽֮Ry87R'{ci&C?p''.Hn(Gُi[&[p!MAs> % yX0'G_c)'wg$@ʶȯ<-2dV%3v}=UjuF|[VarI i򑘐q, 8հ~sma1P'-c8{Nl\=h(e3^}ØH">W"JM k+Xh(9x?֫a-R*{P Q)DSK>_?YBN-p7$+b}v̸$*S*"[r@zY$LK(qt"r&H;A4Âj4کi9v0kL4NSHc\GY)H;|nW9~;D3 YiBS2 우DlzGE5դQހ vˁϣFw2?vqHs Oz^/'quiF?ƫ[?o*8:sqmʪ VARP4D0p ~ۈITW,@[LΡ1h4Fg>ΙqXgXȁYN?<6wW9{;X]2X,`j,|Â~R-Nxa|ս{Egl94ke:CGO j]kB >ce1M^έ(n̒p/&K^f&4;sN 9maהeCnL#ce.Ufdr)&K%NFcE(["E]%ˎEVtMO:[:4/)Hd5uƠ?v}`|,@ b)sY =Y@s䆭 JNy mKrO;}TKUyF%1/\ݧ}Phoa䌌[=M%x~uU)ql]Gُ? }eè\FCn ^Y5a9ÉH~x7V=pr vNz^q]b; KWԡ7`?v{ ;T7͙dps@̞:?2]r-p!el9odrD%q4i%ȏca.aav6/:!.ڟRl\CA\ֆ(Ƭ-VEZ,tM.Tڧf KHbbK-[f}RW¤UzԵ}اCnAb9%gª{l YC\}L繡ֻ 1QUmz IGM4Ħi1V4k"ƉԞyb/b:FR_$,|s 8KTO-!C7*u`C^eL/Q~?Gj]]k;bt2n[!|Kur蛗<ՁOmԴLayjU@M+,:oJ(m7t+B#x#o/C$_3ݵ!%u`Q_%•ѻJU&"J F(V,3lMogLiTS&h`=oҸrrGUrTy&mWT5n" Ww)%^漕(q\e%n]PQ J:bhORbt51s%eYz/Q3]JuLtɸeϡϒ,Gr]c*0wk1㴡Ћq:e/H4޲㲧D bv'8jvݳTA 3|//*&V:) ~Qxv5-r0)[&ēxPDRA|E`ܰsuOn7mDT,Ij?8c#Gh!%9>h#$i,=9 ɺ\4Ak`_ wbBZ|44Z\"pidki<CQP^${R,7 AX,JgXؖh~MC9PR)X+:j'ٳ5h9ަW20X~y\N-?C*ZܮF1Oó3% iUe04m Wo72%J`ml;~8 rd"R2u+D<=}^'sQb0I9?!mlvE yLbȸ{q600f9DzG(3Őan)cRStN6'.5DE/YmB?ڳ1G&7+?WnJ>"-Sq;\'낷`Qw +Ił/`0=/`gXKF >UWBF} "y#\vD.I-&/XoW!8Ȯ!NE7! ^/q8j,1,և y&|ՙ@\<"!am#Ccc<5fع/!`?#v["Z$1v~:\K'/^[ܽPZw fΒf2Ң%p0R/pkO 5D^0Du +G+R^պ=xFR)4'yyzRb#'9U^& .|}rx| qI_lԫ &`b % @$|'|Or'V߅)5eYmo&6o:^)]Wp`O w9',)} _O}ֺNPJ/Q}g%L?K@ #5'\t`]ţ9fx`{}caUrGtߊ7"/R>Cp6iF)iq_zeTWKHBOl ΤnV>D/HKLlb,#> #C9 $ޟ;+dq_Jld8o^^CDL_eiقL" X/Ώ v'+]1G j%ҕDĖ(S:hdg$ކ *pe*-xwRs,# {l4P6t4sk:Vmna(>Z8v {GBIqqKҟd͇)L p)>τ8┧9;a{@i>@l2*:q,.CF*O5N8F^ZgQSۋxճf/ rъg|N0ˬJ /*KdQs y0x΃VAS $0A'm/FVnG W7\a3E巡+:\"HF1w=TCB^>cwʓ[N(*[RzMY 'L˿ KfƦj[6sr /o:I?mM+cW2lSֻ5PN_)a&*cﺨ%~st CbnQontQg)%V h'c&rvLC*",~}f3hWdn&]85zҨ3<ssґMA/1^tR㗆T|<=~Jޓu݀k7MIɖE$QeEVh&O+066?-fU' %9+y>74-GFUL GV S>{9 ׋BO9@m<#20o7AB]6B|І:y]d>Hd 'Mz5&Uy8B;g@bn#簾U7|jU579EJ? םZJ2(w${pOe0Xn\1ȯ1J7=zXwL0KiL6 ÒsFi(;J7DJ|}IyXBaV+4udaO^&\FA@W!{S _g)CˁÓOY y™ ]Gixĩ89zȧbm}Jɔ! rԷ K#j0v|CiV11 Gj=C _HRDe^8ø(橦hOM5-ֈ{J3m]{~$:e7 8pR%`t(addIvaVK+Ўm.5>*CX3- $;1q1 B*4M{_4' *wrP #u`[K Gj7*VTK,Yۦ SauƼmZ {f cw,*Lͭwe!#?}!7rpHƮ)H>OV݇"'1ER; 8 Rޑ~\P_zZ_0k\WRkw}7B[uiǜ>!)sXt>2jG5pO l4}/GX`!ijoCybk1>3G8`X,1gK3F_p)UT\+ Qv4r |qiKh$ |66$p@մi0}F/$Z0\>MbҸY&5B>u*}cU0ԳZtD쀷 {P|R '?G/=[Hy/p-Ml7iv>HX|IKT+n)%%=% EG즕*6f;UD U!yr}ϗO1TAg boy_H}ebqǤG~G57gM~›~II؎Gavl3T'F |=䐒@ȣ)DY'l?E>PBo}(]`F {J;ZɀD< kh?R]5DlWk/cj&I@<zww!j'Κ/2z7+nD-ohٜP9|$=rbd-u )Ɇ41չ1j2y&8ҮϡEBuQk ӄ.㪠(ŻJAjmӔ@ aǐg2ū%L3kQG?slpZvIT<4=ZYZDڴ[?`܊_$_gn8 zB1P<}cG2z!mˇe̲W ,\ʦPI ^Tv /;_` OEQY]KJCE6‹ )Fw~Ӵ.w{Ǿx=(xn+X__1Iɟa:ߜ"-t:A[ce7A?K)7.SV=pz0VיA l9E~Lzr |Z)Z5ɘC5q[~r1Y1!7qw* w:p^!6{шIҥj#`F:Gr@dK_vt%'uyۭ.vMH$xR6NPc2w: (ca]`Hzu?=,/Y/]FK~Sof]jw2szh`-տWCsQCCt2WrvTd[q$6$083!DtHxjk.[S;믠ql*>0'q? 7ɝ#v;a25(H蒡BxeV:RpJ<  rxj2 P<*H\"Z2O+oSK#V !Tt}Z9*f Fvѡ$Adl}MIWvn$2^8{jA@M|Y)Bs\-e'V^uQaӆMMsZ>@/,{VXDC[eݨD@YlK}CxP덪ɂ* P:,jG6D2M;du4 nTOӅζwgIW6,0b>7~8aכDN⟤ouVYZH[W i~,|йj9QN=N6&\ 7K["ⷆ_^hq+=o0By ,JA &ӓ#'F,]oY!! *otA u|-ޠJj;Iatj{g씟!o+l V-2bK {xQƖ5q%?(35J<7B~c Na\j)d6?4=z5\-~jOeLo境m!੿/T~;4o|m'=m\bw[>}{Nz~az?p+N "dBݩz =L;PCLa4x!Z`Ķh.'HRÚ c疘ϮBPG+ʵԯږoSCIW eV<|SQ\GNRx^.6P}{5ߵQrd@ٰ7`3.$"4me¡ЛUto׾fAיftըX(;brbwuNJPxa7'~Ʒ ڮBb0 ʭ H%<\D%ᘖVf9H$%RH+]YIN(lGQk˂qjd[B%M2ۦ~7egn(_c*܀280p[VDEDת^PfnF}@ j3. DwxGt6Fg .T!!U rmy/[4|$R1M٤8qk3J9n%w8)Wོ_r*V$@fs~K2Ŭo&HHs@-[^`̯Ӏ޹HĀ`K_OQ5'= CC˻'<lFKT_&&Y,)۸c N)w &ܚ^\p2hzJ틴|vosQFr{j+>YYUWcU&u*78S J[QAx@}qۤӞZ/x,^2: R-*",G&gHv岐T'y ._3߷$1;BծaXuaYNs nѦPaM%hᆕ)4LJ1Q\EWGts)ut:j"mr3Chz_؇"HQK|{5*]̜P괎qùfk%D{ԛӜӭISc> 8&xt`g^ C]52W U)<5XwuHU3jE[* j2*!8JxVo1r0;J Ly} Xq-͹2r4b[ zF:QWXٍ_ʑ{^@G˙Ǡxό +P3zP_+دqI&AC OUcRuM2wD3Cr&LQ9 @{=Ϛi6*<#yzE3ÍҲ["Pxm|g$*Ҥ4f6P hW+cܥ/k./8s|(5+x©θr;; eVb#]ľ :"絇&"aYL5mʐ#1L!pP2]FHr}!^C]|uYX=SDS}|#oaRx~FC O1]je5A ajEJ>S1,0SΠɧ'&ZMM=<È_ V%>ϣІorCLIeB ~m \$Dj^`/$"0)EYL'ܖȞEsXQCfztuqL#7yjƽvd=2Ч^Pp T20(FLw.iK^X(}T<ʀ"?&;?'LmtzmB&RSڢPoo(]]/7EXQVԪɵ+_ҙ/*f^vdWz[ MQ]r8%<:Ǯ%ƶZ;2fˎ{j9pT@` #K4t3rm/ZF@DEB_:*)Aꉦ n"JyP43665G(.+% ~q?ģ.L?-v`lG\8K2-Ҝ<2m ^P07某vw^M?~bx%e?Scc5wĒrj 8Cx1D"Yv\E$۔ "-); zDAPAM,_]ɇ_'3Я1 mWU= -5@ t/r41bYj= $>#@\Ǽ&Ŕ@2` '& _N7VK'<>*f./ħOEQRi ˠ-CzUMk8pRQ[6Ng_Wݶzcs?V:-sYI&TF $] Ӊ҆" T`mPJD"p*]FR8P8ymޝS#f Dw';m}5In!4\p{. `y-g!p7G(eCl :8x[++C$Wu!~ĖkWG1 )@sX.}_;.ҽvP$1 ]C·ﮱ[ ͂*@r`)LQe!)m|cE*o ӗ3Pgјun|0kv qsQ=3kO w!ΫZk%x'_++zr&^<іL:moE}}42[E!yy ԩMC^/H4A#o{,wJ,`= |ELυ"oQO ¡P&>G(% HO<Q'S\<5~N7cȿlLLjf_]{ja ~) 5eKx 3Ti/&Sp tb_¦QA{~̏Y;IC(qS#X\ K 2 R̂{eDH|D[tJY@xL]4\8a>cV:N @Swϭq HJɐF xϤRWв˼7STK#cQm.L_75J3i^^Yz>Χ:e鈸R5̷ ܢk2`I v ϗm+z6(Ɲl~#XLjRK=%;bǦRgnCvGнip59:IG )N*<'%sN6WRg=N^fȁ-,ȯ b=xY'꯵'Idi:gt9}z-('"񆨇3bPb:>ʊ jD,)l6KtT\iNOp&2^x#dc}\^KS{&\S^8PJ`{ \tĬs;Z}rL.>|wD0Ho [x;vDI#O$.G҆p yq+^Bf `2! /q a^|u}hZoT˄ZY>)yfLwg(Ja_JB= /ݎq"I.O[hq%݀c&Yߟ>o]qi7S߿FۃRl;kYYQ;3xKODV4k]YYiMC TΘ@H@V@gdCAtX (0,i;192yJ `˲yoʛp- RDꈗXcp,ėPpH/<|$ 4-KnzR=/Ҏ6:iD繩=^  sٹG&JSo{4v3/*Damd(mDb?;Io=EYRGxCgX.š0)VLmIgE,,5`[:pZbR8x"w@у*]缪nڌ.wkw\*{zF2W>?]V.G+?6KF7q sRf<$׾6,ێ8IWvD>:62ٰ!Ed=V7(*ݫ!/@ȴ=cK$T1b@B%9ڊx}!'(Ӧ~QQb=!1B+F !ja" oGm Ǔopα5yO/o,'=ξ?46d!X&H/w]˻ 1X~zÕ' J\1=+Vf!)q Eǐi+dC@->AVAyEy n׫CnOu oBV=~sfFb>A#]݈fSspa(jY8\ F Q5|(8; zggzlʑ]T6Sjr˔΃9'Xr1:(}DLNF"7ocЍLq> KIw#1pqѫ%MZ!u-LUQ8ZVB/cG%3᷸=JuoheLu.|Ԑӻ/b\b8mC<-m PJh0F#۞ EPܧzF$+V`:WGK'%N[z},c'n;Rxs9ju`p<ʍI$Ez<"/B.hY*BdiV7K'C};9Ke3Xb v3FK%(QrMTsx`tgHf^Qo T<8S7t&EYB@&o䀘!tA a!Z1D;)^NԟE#?JU zwTIH:_'0 !}צyam,|с>ɋ}'iCvq#,[Zq{9B):6*w}nG ӌMPqjuS̈em<.R y>ȶ7gőAu l$"5&sb}Y5"]#c9Q骤OD:3z\Y@[1o13BEи!yx=~L  )s'g͎\~qof>ooa_J|<+BՈ&\^# '&lh: [「5z򲢤4DwA^\KJ*L! L"lzU{\6i$U[嫟€wui'j['qj6#1" (N$5J /@ʻ_=~g\Y/gUeʳQ g`TItK rcFkK\zn9jF?~8 x:`nN K@IfSXm{ÓM`4Rը[:p0w2ysJ`fN:Uƒ둓أt~T}Pfk<lߐnMyY0 0'=ì2SIJ"TJx: ڦsºFS+$-U]qgX;,(0:-pN#I<p.{J(q\4Y OЕJ.cuD K{Hc-C`v/͑O0w&V$>a@`?7D/9,S+졌;Cm \CypKz.$QS՝)UI1ju+K>L_& ,ij̨%qC:w% 7zq$=k]*ϔE*}p76qDTyXPK|gk`0X`/.k9Job(!x9P%d@Չj&gpOj>`IWm(VN*^7𚆫<4"XM]R .ZSYa SLNȑc"CVR c#4B=@G<)^V-Ar((H?yn6efD \ HsRΨh?">ZFk-kg@o,3P|5D:e"IH3)vFD;Ȃu1E_4g?h&/TkeenA2@|לA*C5nť1}$F~}0kcx-$GW$\wQ 씿ުdhGR NfճoNض?b@ N,=EA`lD C-%0 c&EA7V)oT"Yf}tC:i}$vU%/ua#7e?1TziEzWoڼU})+mi45ĸ+RX1dw`g㸕VchJ[8!!-sk U &_eLݿc!܍" 3AqDĂ.I2z,V[ FGp1ӣyj­c'qSI$e'>1)z!5Z\'rtiN[VՅ388>rjb9('Xˣl;8 EM?? ŗ}q(>7@;~O%\Q+! ?&9ĊOs0sGHT}'"Z38 Ny } H ;ь5O%;_G,^XĔ=򙄏'}|[HTrgA#f,<0I wpLvOGfLb~\'i=_bo$m0% t7G"=󸴣H',ٷrna+]UKzju@^PjWym+0ۛ҈i}>}0ȻK&>"S4?;!t1께j"2{-xҏԧ_f3 )mcv |oʥhyE70N 53on(UUBKr 64Dn +c__bɞm9wg;C5HT^BFA3AKx]g[ȅVg{lzg3ccJE?E*3TZ֥#S;Ό^_P,&'ޢ|VԏQdT-w pv+{nb9$xaS39s+cqpxfB6vcO)՘J95]S3@R߾Pf8ɭs%+&@E@p.Tb-#ۤ#щ-S )P4=d6hw4X@qB5Rw-j#\ULVIRoX$1bB=Y ,z04 KzrR;f #? J!N/0ņ*glh.J$Y$櫠sU a76(,kvw<Ɉ*hFa8B*K9v,8op0pʡGIsUQ mf0iVDeWL &%1_FQ]W{art!&PQ0{:e>f>[q-=gkBz?*⦩띒HO:|Oq+L K#}ǨQJ/5зf(wȟ6rB=/Y̾@iZA؊,??v'y CӟY" c$ݡinN_~퍭zI(oӆ-ԏJoc%C^(dߒ3\$bUW(q5~x|%''4~Y%He,@K'v TU_=Xޑ+{Qq&Ʌ2n2-ISB#6?crxmc118!w\Ξ9Rؘu<@Y t"ҖΡ,$؈ "Y,w!d\(CEyPBڧ2tU4Zxk-%osjq6 WT%B~wA0x03X\5U/0ӅT84y-e͸ 6e.z8dyB*!^5$+'w:Ws?[F3,1RT+:#]4|TJc^n \Df%:X@u{]nc/)4)!0E-nrٛWhm:s|[Hٟ$\mO5}-^ upeQ؝#}.<Ը;Who+TזZ~a+eΤq a@hMz# Y%mVsvR'm&v5CwZƯƾ.R֡we }#): Ųv/;)R>d x0 ~Ec%qo7l$n,`z(7m:ƎJEF>Lӕ* /oGjHs-{9y7UQGfRyU#5ZUuS9;NDlay:йċLs(E:=)P|1W3Wv\q΄ЄV7}?`JŢm[Iňʗ}>]G">oK4#v~=@f$3EVtY:Ncۤ86I0Â2^s' q{!87?M$~Pmh9ӝ]VH#M~kyJci%bEļHB!eL|!fhf$B DZ0\8|4XŽ= [HC /ᨒE{z|x&YCwhl9X ` ^Le2հ%'F(XdzPŽ d)4^Aw+&?-ϰvixNYQnϪ*(J1VDqxzv+kunEu,}++0v{Ӗoe:5eJђ,m o+ü8F:rGWKkMSnW_CȸG7YBd,@*%ξbRu= Ok9A 灞{n8RT"aO3n7B{ ⒪Ar7m-K% ɡ̮}+[>Kj~mFYX dPHo\Ϗ_ cu:.d/: q U}}K5`YgFd"%XSt_sa7r[m:-t{9=)ֹ}諒%MʹEY)DP*⹐[.Dmҡ_nC}!]ڞ@bxb-) |z&Y!7Jb_ncLLE]c`rzz@wum?U RF$؃_e0g+r&SPN=,~,_}nYYOPJ7f.]&9Nue/vy IF{dlsdн8)O\!q=+%HDѴ&+ [s;#5F]4 w`0IiadF} 3Q9uZcQewK>$:{itY;15̚ ??hm^7ì, GEeᅰ p{bQ?nW1Bs<.,+.kjE ?,=E؞\n7^P>[T$`55~c&2u[w*^U4 z6RS֘sCv1W;nɌjdNӉ^R/ ~1H-G=0Tn-?G=+ QNZٞмbיT rlQKŮB-=yvg'B[Ev'3F;S4>?!ť-$"{>QbŋAgqV8{dnf>G^!8g<N&E=h yfI_v\u~AXC& H"?B4)0T&"lQQw%%`cKtfŦUk-IWAzGAb^.gl8#D+> ahO_ oą)1_wkSK1A#:wc 1L]j HcMh9JQ-!w#5*N.(m>P?)m/ AAB˲ O(`,{+Й~B1G4!.}HWfԩ8̹y|b6 USO'6~s&- S> 4fF@-9"qhOt|l7 {Pݚj15NJQCy&mPB#PN6/PxTxh.qiAxRҢVSI0CmLcYNILc'%K{%Frhf‘,OU-2uv{̴ [d@XI&Jt?YV9 +YJ`g2I˔p<GfWhMR)cɲė|HH(zlM57u q<.,le E8>UB؋w/#Ƈj$Ki}3j2y%fhp$HMdƧorA$#Y CB(3z]%!N$wf0QWP{P)‘S!x'`<$& G2׹aPaj W{[@DF>]*¼U)@]9{8;r _[n<\Ar%^,91{Z"0E4_&bܗK1M.ݾ^-vMQ92E0ݼG#O_&5ioxCSdm #OT]PrPm نH#)kjP6(;쥹rk1+̋)0 rl%kpL!/&Xa={ Gav5_N1,d+o赣\M +hl0l@]%b, 5g~Us=^AlATSsI?|",M* σy^}cނ5e꺉VM?k;+Gpjn8Z d98} jE}Y "͡|I ]^tLXOqf4JpYd4b6eC`5\f”P5uN \K)7lR1 K;P,rjuυg7#n"WBuӬVJm^>!Y?d o  Zٛ4G*G4漪+ZHjkYQDn6)v>){'m+;V`"!R&_؇/DV(\R?2YS6ASPr|cOe:ƳC.P:X'+}AMTnV=yvM%▤mH +5!!DT d~njlp%F ?̻glF55|ôsf,XOuIU|zqw*]'9d-'M-m:Go۵BΎ0EL "Ws $K[OU',qTI=Py}apCGΣY2s20f:Ii3!/B9[JR\pM:"Р8/Bik 8f  ǂ;H s2uwcYS4$@LMFƇ]u"t-2YTUƿNj궥U;>d _-XHDqռ?Gŵ UsL0<+#!@xbRt_Ta"/,pA&ʍy,M,E EoXc3#E xe("ёƊH QPn2a!ok~X&|o{#)kf;TxSƑɯ0oA0[ÈȻjZDdm~!_ڶd,6t9o;dAseKEv' JbCػ*%7%Ek EF|:r2^Utl7r&8WBكQ^ԎӔPhFcD4yk-6iQShS7zDxIx1"="ɱz G}yw !Y% ^@,c=ޣDC]X3Obx J/eDI:Dwb"*mWٛ#8Bm뢂4/՛.ṊAϤtEP;:e6Ub(5S7.9$hfTTr9ۤ@$(ѭdech](Nvp-o5Σ{,2ǿ y/p պ# 8bή2veT) :Ii]XPƻOo sEpI[0[50U+ظ.Eoo~gyUrɉ6ӽd۩L)^bHwW 6nRr)]70n S}@ߴv8YN&YP:h4(QQos+vA$F,g)sLMycGn, yD֎lTIo-t̖W(z]O '^Me^Llɸ/䉎va87E>*|fLJ$:Lqtv{`s/'/1S.N{X Zc,}ZFd@G-e3Q$|< 'aQ.͙zl-Y&I3cdN Z,޻+Uذ6]qӝ#}xkZɱ#d]&SAprOB婟wuB}H imTS^;+26[j[J.8%DGDx)p93qf%Aj`XO@DHdB賫f 6Ve$r{iZlo^7f$b}pvXd#)Lr }qZϮV io77>Cqia_"95_bG6!` tCx qC-֑cs<* _wǓrg(A;E]"Φ"YA% JO$K~y2@a TE1&*ax"RϹ.-384A 03M0\ΘH@aN.*5X6 ]}O}a[)>-[Ub2N~eq>L.`Ḵu#uMi\!q;;_J%h>nleҵo`5 Ce'+G$˦ P ݞT?o'A336xDrtKڲ [Js][bWU.ԑC C_<,Ԍ jkny$_|l OhcqgCwP 4`(}I]Xn^/F>h~c)ՊsSj;&[:!8]p+QL/(sQPC|3_z[u994pץy9XO_ %'ԛOe-KVPCf2837s- xl!XJrmsTS\O,+9ԲPk[@=#% 꼥Twi1o?ᵨ`5B%eA*̄f,Kb,[~ɢY@NQVj j^3pW_\yYc6'F-و`Ԗҋ 敵MmcXE(Zm7 EL=xQt,[%-=jm\YEUK&pĦy62##Y#oqd-pJJ;Z jEPm.=Bl v9 1[y*R5Um GNpRJtTٸWt!6+k L`{T9x'H#xuI[OD s!DRėiܻ=>+Wq/X-!qôgdAZsp :WB C9.l1wv2H̘n`kT@>xV—0'X(d ~RbΧ߼y 'o_kWeJPmHC6)8w}J.ܻ0"Du|[_;6ȸT ˷CKo] ,E.i}Nx+Dk^+O 7+V PI\Q}'M%jE%GF)ץ#YQw)@^ RWxciSGbs5bri] 4S"s>1TMkPYIp u9 A4׷M ~uPMn [2 |H\0Qcbҗ[+ l0@I\K8$rf` ߳-{iU!FpXVʲs0傓pВn$ =H6_oC saPbFRs59"$fyDWtGXbrqh4˚ՃEP![8N^ce^VR9Hr"ջ.<[EAh ݺ1w%XuwV=*ȼNQP$DFո511D݀E=w3hj=-+$:SipK$;D0+ ꫜIbp5 i ׷W)` Kcwz$:hW Ës kXۓ.ܚfFU'i=.()h~ޣo9 D^RγVtrljZ/X7~nX!MQm켗U2W.n *YCǮ-#zBDӈ,r=!-3!E+4CoMK(#Y{$4}yd߿-A;>_{* Æv.Գ3 a`D3n*\"4S b^6,f Ql[`lMD_ϊCC|ŝwI ZLV51>[& .0*50# %hyQ؝TIwBI{/z̞tj8s7{seƔ 3332;T@Jį>35j%c 9Vv*^KMۆ̶.L)|"i!4Sg%O&zi_s>«+sOmc }Smv }Jf ?T} ~ xhVB.TNd`L8&]ΚPy?IpYjC4̼ ya{7ld # tt-Q+ס[uQDC,6"ve1zC.d(Mю4-Є!pCrpPyiHaGLyi78Sg g.sԙ|@9 E2w^&t0h c[NɄ7 AUej@4T n#}ܸ?hԽb7eMwb:gkm`;K?PA{>2|_-4_eS+1sxgn6:W; Z )7j"\w~oc &ޭ А-ڤ7w@UԦGiX"ӧHP`Is{Ŕ@M`-.JB=PvGQ @:*7)HhD6hx,*;`0wӰ%`0ܨٕUUL{ljVegZ\xagN4MP! [ewXP:YOSe!-xۖK.҇LeZUP'D8(VdEo5Gz䀛]d0vUὺ-_CtJpN$ ̤r/hV`NC*](g:"qg3a բOvωH6B\z#Mߗ<[/)r|!ˁ:C;4: wiޱl#l+Q.$"ƝJMu"'X@I_׳gD@iœnzLb:rM ̢̇L2aQ@z~rncIIgS{wɠKr䫏nHixNKםɯmH 7j ܛe?HXkp0--ٖa iOvK[eԈxH2MrCϗABG/\~k>UO#onn -*Qy/Wn{CRޝؽ^7_IN 5iXFR?*:-AJxݘ!:q}<~ĭ#~9h٥$S\s.ahrb>ٗVZD] 28œݘ [_&z Q%M+jP(yBS5w;.*&6.QԞCQ52(m E#>K%pKQ9"L1ue#Si&›펺+8iFJJ_Q@ıYޘ=O;fԨ6QZ4n_7QjyolOkHk)}>'/ƽA iVpO%\‹A' h-A jg}F_'h UcoDjPq&kqDF0>A αȧQGVtѾ1λ7{O*p@m,M;P@Z<=^lSi yU **;9VMg@v^^E.`oG7끨飙 >U rl9<twnO;^OME1,Z ?bnqT˽|t 3|_ZZ F3,ؾ)0_')Omo7XET+Yjḱ+9/%`/*j*/f q~+7q2,!7M³@.87ͱIb$E>""()A=p:"G(N\DJBE "1$] i+"`,eUM1À%#Iz>fx6dx8:3n,u2uN`4`{Fa^ˑ oE Lßmj`F[9Pz>sػFQwVs:Ί7RE#2fe@J|K6D&٭ -AHF+12_ÕۛLT8 5A&m}l ԗ&j 'HQ24Pa>N |`S8{d lzتrBO~ W3LsF^ݫ _BVRHf3)>o!"&(M@ʌɤF؀{|[wg^AShlؙ}W c ]h2 5" \R=Nì|U)%uVY#k1'' _JuPBXtlݯiGVQNv>2q#u%I7^*ݸ4a8rcظQ<5[ۀhRhޜnowc}lpEB7mg)_O܌U|m!_ %ޜљ.Dsbc{{g Ǩ1k+Kr $:9ndlS$Gz5XCa.R\kMޤ@,mo0>-IT«,uhen(6l fe}s6 RpȒ7e:J0>}@N!scB5;K@ ,'!i4-G$9f@뾆!RVxLPmmA/\#ݫy"D(R{P*wTcO_TuN'֝PմȢgP2Iz^E,Ր[T/$  sC0ߧ,4+In<"{U n#KCĄrÂ<2ќp=Y'+*&A E A4G+d b(|dZo}^unT FZ<#5Dm5E&v4YRێ5L/4xl$gA<ǹ邇~1}˔ ѦYfW6c4Yn@z}5O] Fm]d*V픥+E:W N`1P.`.G tU[[}iƷyCae^AZ&pȓNUCEwU :iNxU=8J`R,PqR"J'xzX-Ls!vb[O-"0|dЯZpI+qMC^LTY9-9&TvkVRe45՘L*  3'> Bo TcqN8?;U E2 d6wg6hnx} Ey1ܰ72:JQ囜U'g#Zqگ`槄Drגc`t$2c+X !b`/*b}oo&m.WcVs ȼ?/-ѾG?'a3snD aS )"; V ~cEל tv&礙t N qi,-չ`$QKoè t: ̪unjђ +v)!?Zj6G(+I~/\E^E3}6*  tF<׍k%ϢLlz]OMgk`ԫGD͋LJ3ΰl\gl.g;2x%.is`m1v3Gxٽ3Dly* \@~["3Z ,} ڂ$ ? ]˲N?l87cUzD 4L,.2wS7ΥݕصXTo،7"é; QHv;ғcč+5V.ȗ/& AlGBDx;,@kX.lcp>K$a'A 6 <`6{2,S 2C\Aa',ΩHLO oLJ%r>ji易tN,8E,DU:Wȹv.ރ4APK;B/m$D4h.dad)ژj=?t*ܗ1>ca}U>R)ANtfMߛ;>a(TEZ37+Xw2ܡJwh)ϗI1qh6bN[SJTN 5"469`U1TA+T]y g 8 ܁͋t4>nT??JXC/Z4$a(Q*%yD^Ir!BaQ-VRmChf XS;UERNTB9eegoW eod@;Ѓdu᷑ dM2!FaŮ 1 Vlb's=69@}Xai!/vA5wibECh7:$zgq-$TkR jcKS_8˫\cylT3QBjxFٌ"T. f୎wTI,hvO\1x仉= `}kXVnMUn|>B)t# e٪cI^}HƣMߋb\C>;1sV6Tۧhc=m{!#=-ɛBm~U^YEE:ԶO;{c?Ƨm +78ڭad6Eۃ^SNhI0t*.tф7] 28\;>9nux-n?:P~=V%|IDn[iGւI)K:V%zMGǼyxn [MЊP6D19\ïy*}4Nw [ SĜSigㅽXC2lcX}=I8H2f!5rԅWޏH\< eݒ&u_sdvjEhWlb$R^XZՑLu .RY?0,IA"XeA:DR`+ti/jZyB)u>PCZqti99ܜ|l4 8I*,jSȀOS$!uE|2eKo19{ǘ-Dy6Y1ݟKoj=i;+9m(F>7QKOT(|K&þ J.zMm~|pHͩ$ޙ. PI$v٢uڑ#%?GD"agb+v08QQĉH0 -xr,RwnY1%"lodsMv!Gh>zx$Ꮷ^BBx)?&Ľ6Ǿ6Po_S-ȷW\+S(B`q/$M1v"ձNoymV\,mtU{~n"O⯏FdčoEV6 25e^Բu;pET,KIԿ?")"p`iףAԜM*qsXEJܟ__8fHHԍθ)ݼ !e_YWb[wuJbLefu~Xcۂ~0QI ҏQz"!"v'K$"sfAWg5Ҧ^סb@<Ʌ$X)/br_DjH^m)Ne='a#F%H9b߿+݌Q͟+|$R P:OBrzba0{Kx0sb̎ "4O ,AmLlG/!6),FJCJ NRv%Wu΍|ޛGqyq38Eg'XuJNlSy?ec>`?O@`RzgCVUBRY rr-f$Ul(MAAf^~4:7iÜ-et-:;}f^z,~io]̻e="Mԛ^@d,ȭFWY4r.}y2Mn) or:7Ey`}FLnm&35_zZK)u>?ء6>qU5. ok E=̷Ut܇hM/;=fsS*+lH\s? *"%zmT7d\k==sQvBKE_X'0%p4~>c {6DOX)z]/gzG]twWhF2GC:5]*r:?ݔ&Rc0yvJ|'6\>Xb کL44ȰqM!WV].DK";DaWtỦ S& bՒ cME6@%6\@~xJUBZOd!Ӈo2>(]Zd>-T1\9B^mQz *&`}RLjc`Jy)C`05-[>g\.Q#iTQ ; $~/vL`Q]4,%mރs\poԏ]FY*fH-[NM/mZ@by0TJbyuF,^Qm}BBGBv`*ĵC^\lx>pہVR.HW$66o-He3W^×0\vcuVG2ONЇUT{j'[-N(d ({Eݭ5l0gP0ZG7~gST_2dEExH6Q\TPJIȪ-t :ޖÄZ nUj H[=o˙D=8vӷ,/9>=UHfc|Ti7(+DDžVlm׶$qgtп ?y.䯇UUO{Re$'5>99 S]op~k\^5{> ӂ:gn Sԇ]oeuEp1S) {1w0~gYHi*U@_ヤKE'Skkz(V&N|zF@$IS7}ΌOAG1umPi&r#  &?czݦ&,A<)Wx3L(v0_޿^7 + ݻ G xkMe(($(UVRMo Wq[skl N'qĖ>?hJQa;v b]QyZcfω?b+ P$Yu .إt=%T#f6Vc4$}Ĝ j)$c˿ى{I7D"ԭv޸!&XiBVg9SRτH]aNkn6x]; hX㧁ɗ[\Ƴ >BGzQEIő*S8aWf)y[·4iSCyH1"bw pĦ0}n-QkD씛X{nA$`V=N㟉a96@6dGu)TL*!cn I八HX wav!Eu؎'ͯUr-g$NV"lX곢 bˇ(̃YMK9{Q$}8gSpO x7 ))e9\~}D{BdȥOq\k5ĖqRTD2}q"H!hk_ߤg z*4D.=9& 3վ::r i݀27ިbxw/cUYmCHMQqJ+K|R P@PfTŶ_x4ǿh%mhb~EdX>gY0M#fD>͘{L M#I)Xd4Q ,3B2K4x3EOJ7FCB5XDQjq>(ަTxτۏKwE3oQu^0j7Z7wW& JF;f`z@ lZYoIP`L|L | cf-eQ-co^S[&jD -^>s:.Nkn u%WX{I.GtᨹAyIl' 0y@ӁM,ZnY7ib05 9X}[^RtQEw18 |ZؚD| BJ| E!NbMD"K̴iGjo̤i:5JÎ@lwTW>lmrd&;vS2.e܆E~ys1QPݬK8Ž7*g`–i~$k}R!FN`țusA4;E-EbGM(&'N'uKONP "x]u{ ,-}ܚB 08s0Շ#j_u9+[[MC!ML iVMeu0 ;=͕e `❎#oȾF!Uɟs*b8<[ C-RlABmnNW?jdDY*e6!["£~Nont'X>E8؜=3@kⴙJ[<YO5_Debθ"{ё}iJiWkKEZb)@thv Oz0#Yg=`P~bUhL7QVjZ0vpJu[MB,tO @|˛L&I'":^ބd['>>W!urT)^r͜"  ΢̐3eRZ'RHb,M;$~ӲPmGy>܉!AwІ URcJ-Hl.4au3of yʎJ]M#ƴ-SVZk#W?KhmDuȺkd:rm3`5EL@~ۅ$_>(XH']@VT=-@.[glhh|aEɥ :Dͤ^th#=KX[ cvB`4N'bk?\L:6(3W>Z{_2'pхj?o3xӨ'ß!7gMэ0A,M?t_8j;QuDRkq ) W+tp󓲶Ɇѭi -ᆩ޼m}J|[N4P UR9NJN*Vwn}G? l2/UO}QzY:8rr@V}3ݤ*f5]$7F M2Ꜹ(k/|1BU,͛gC~TQ 6dBY݋("W{͚@W;fGuU)jЋ~!_y dbʱ? Z5'nW 1#)unv$;YƘWهRU$UIF~T!|dȱ#oDXR+a~? ]J'CqӾc7LYȐgb3 ǧDNlULvb:|G o0)ҕG>޾1k'ֺ}a| bb.LXr5G"C(70(j4^@7iP~Dz+ pB@,2U3vz"dFsWk4y5U\p+׬A*a.C"{e~X<Ol)aI 2 ?Cj%B_ݸb||%z^4MqΔ/j6I3VN"3ɢfW{odOyc*);j"DЛUH@ꜝErb-U;$dOҋ<`l2g-,^L\~BL鲾Tݺ@R[ 1o%j.9]> #mԡV87 Q|HNk~kn@7|6ywV2YWZR5%*|dl',kn g_f#($<4FAP-"KF@FOAY`!e#9ICQ٘ n)Zcu%->(C䟯 ]mɧՎZ4W))o:>X̸#o&.¾3tNV+ɋdIFca;65k4FÖ> :kG}c(Wm9 SB[QwɔUP1B(]>H|\E__K:2 O6ghXX9m[kF߱hFYJl4Y@!Opt)tfpՓD1#!&p_Cb򇩕N'$#0IuPs2BK.)|BYȗk栞@!!}-]hIJVk*QϧB*[d_ޢpWPwO7@{8r>ng=SŒJ( Iv.ؤ^ bD9 r8?8 ݎ鿧3#!+N줮̎ }e7Կ_1d?EOyD5D\n"wKTB abqSLJ/ɧC$(ONl B̼@V;U3G32rKH8,InUXv;Cwy;̆vOךc;>IU(G*g(3Nlgi]JLoZvmeء9oU,IPB9S ,鸴)z /G9D?4~@UچGok "cJ/j\_2Z eCIG{^ Vud!.r:|z_ q7FWjR+Ʌɐ%薚Y%_PnQ}]oC@FHd0Z+Y0n2OiIGAV+t%lLv@Jojob"گ`.gK>U?WtjhVekr/YܐobsNP].Y_9K鮊h|ik=SƋnE JmEO=>|lsWkuYzQ$(qw[}@7 J.Be HJ y@A6 pZW4&`߯eUU {knZO(=jCdתrE k"zBхKkyTy#܊ ,`>8$;"'k^9u Ԟ 5H9a[|izfm9?蝼E{ X9@\{)/ڷJE%47"<RݝcyD\P4֑et2cbr#cSP B/3`B3f*@`jL nc&~_ggZH}|lyӜ ׆MŠxWz1QSuD$pW5S ݣsw_aMnP`1Kؼz>  b;:oUuɾKM4McAU gu-tVa(F%(Sxh3syS娘$NLG7S8}$gi<2<=.Tfh`o&g1LL ˍ JXDXZ m3ﰄ4 Lj(k!m#ox#۔UCXZ^.ó@?wedҤ84[ŶJ7XAӭa4mXf*B4;Ʋ4W<qCMmP"^!i/ q$0@i~ O򑸢ʻ(g/CX%o"n~}X|NJ{@ x$T[P)4rq~xLPB~BA|NRSנj~HU^+-RkjiyącE܍ʯa["!2kf}$y#RH?4!&  mS{{=f"]rUЙġ9Y,ьXy{k!%-Tz '[i,XbCQ:o ^"[䅠u/TQ. A A Uiꚅ~3 9\]b e}PY+) ᥅@ Kr^e>r',ƥ%DL eйGyv*`>ֵ$:)D"pE29JШOG 6aD &ek3[{ɯĊo ׶/S_y0I⊑1ut܉VuӸx,:eG;PfߞiO/|Ɋ+~(`z%aD[nO"t{ ?%Dn7/O 놝l.];J?צٷ6CݾwJlDP+1.)R4u J|E+FZ,}Ӵ~5BVsdՉy)vWT^NiuwLGW23٧yvd6dT<ғ9R2,M{9 `i !_| NYS/ CHT4Зk}4stۗM*Jh=84Hzba™3xPA.YՁ[;@ 4@J{O'H&_#tzgdr6õ .Hbf28kHDZ  c$bf:HF4RGm|ٳ%NSOziG<Zeqr962X~ ]v4)ЬږgXW.>6A6B|q$aҹ,3pҚiUt`r}<;HEt33O}(lfKI(e(w,6L|Dc;x*v3}J!JUyBؕ}s?^Vx&Vo eƻ - $/8b4M:X;WCi vd7M1n^ko\<)(-)e2`0@)/C+%CU[mƑ32OvC_zTkj߿w-bQTu3:=( Eҋ#4%I_WkghIb:i{>+{a4;ޗ=}Qxms}^\R fDQnzI}Ij%WhB!)@"EAy;b6hX"s'FiCE˟ӆRQ1 Bt]MG6=׮pmPUjsHDbi3HYB#Qn˔zg;!kUB4rIh~HHF9iCFpmD^YU8cԡl`uA)LM4AK~hbzXa7x9܈UϢ# ww u q5͋Jg#U!8ESg\Suu75S˫kLm鍛}úr7~s/P/c9u 30fқr%6rHK\U#PӞN[4$VG9}\ ~F3s4]w4JX ;5D"\!G-2WFyRHPE"^6A\OȂz HFL7'p@LnŎfr?L$1ϟZX489 ;ahn19ȞؐÛAethSkr&q?wHl, bqk[+;k?M.5]50mm >a͍/Yz(@ݙN6F%HE|]EYF$:QUTJU$""|{{E<R:%3P@ѻMgTu{/ L+x|:<>}u#(9vϨHpޭ y@#`OD7'&N o}k eՌuNԣwWp) b oQ|R DEZb78 ʆMϴSN1Xj"wH@qp UDc$*Q2n=؛eKlk3U* tS?)zylj́&5meE/[$?}wA.tWfB3F'ڬTD)Ukʩ`oUm}؆WXZG\`RpA{bzMx@@0Iw L:JbqU C^wp7et'`)HDD"TXkyT.ƅ!I$-v"`/ęU_Ч.lt.L G @!X)ʜ K}d)3SWg黩-tY")r5 {e$8s+㒖 hR3;\lp(L L"LNVeDARq[|h-sdϿW@Ljzp֋9>7y%ʐ(=^$( 2T~!Q \@-}3KY%upO.md8+/4O%VFr +u%<ݓ(-9!KMak+IY^c>d?->~r@OfؼxgH=b!kBҽ-Q')Vuiy(0794ԃskl[bǴV[NTf7G`Iw5J"Wl/t:?md|- Ϳ!\)5=厶Л^&ߣ^$%'oƸOEi~n=dwfxg}:JE{UgNԄ@r;V'`\cwΪL^`J!`vpp 5u!ؖY(3Bm8L\2=ɾ+w6uF^SW.ȈGz;VUӔ@\sXiWH!=NN*P;ɮ_dwW 0ր.R: s2>zo{IXUF)wx"L9PBGf%_< ~|OW92bѰ~NH@{aKǮhv~hnyM-b!WJF*Ф[e~#l(k )_7N`&ψͭ0*ꂐ d@A{WJ=Ee "E< H9."쨸Bg*3]BTkY^+IC;L"0A|{Cqʾ=HtTrMt=Ji[>RX%$-B/&:__q˕[dnmܖ<)yc,'@p?FO~V߻$LxMJ91zoUn9!Q kV_MQ $g徬}psRid[S-aW"qQKuo}1Θ+3FmF@L\jЈAA(>avR*avze՜U=3 )É=/Ļgݒ? ;N'Dq%N8n ٺ? \S SO*Sb.F1 $7)" .d{熿gh-X2 ]Y_2*w_Get7-n;M "(Oy[N{ ~$@p|̵c r]k}u>"rX),z[ev)sfF#7(~ 2GANEϕ@|N[yt "l&~5( r9jIy/ ObžC\aPv,Uc3.<凎|LX@u|C]\r ΰE1ԯ2.vFH`+ĥz۾6r`/"s }"U5s8ēz(Fww`PFE-V i/ G3}9U@-+3ʼnɻB"|J bҥh P2_`yD4K^f]l;z4iق,5 POF W[BôTl>]eG{;,z{E,oQ@O)*Pa\S"Uu2驗ډ=_#H8Ƞt7kQH*"7,<09Q5 ?.e[8t.c֖ʀ+ psڠ[$@hۨ3:iR WBۦI$U ƯZ*6'.^W/W,ȎC2$m@]!4D_(Rի LjF[ė]q_fs D:Vz͍B(;7,p^[b.Hw8T#f6CYk4k}cVǤ匦Ia+1xBwb~-211?P58^T`>'V]YՓȥH6>{F0dj7FiDj?7^+W;]Ns[dF>oY"+J.,q=b>\L@}yzKs lVM?Ӣd „6 \gi4rcc"Y漙b&dBpgia MAS pi\b}EÜc\ot]y̹{lW& ñIz/r;Nk{h\is~ @(%U hf>aN1#BLU;+B\yߕ~Q0V8Nqޙu$jYf'ZjZɴ?ZkU)& ҹCG;NjxVwzn̾f{Ƅ>AWZ:HtV8#sAn*m{@ 3 b@awz6M ?)FQRcD݋M[* e|Z+ݐөdŦ (J [ B"y8|,}Ag Yinx'kex&A&0-wHxE bAy?kBN<_;5)iу%D t]myS԰NKbZZC@V]7MU|4S*iF=:ƙ45͇I !my^ 嶔a9tqv/J B4V' tyaSmssϔo}^ߦ\^pmpc֞rސJ`8x=% }$%AO0,ǁC+-8_]Q_/|407'u]kPн&03Q)dy>wtZ[A3@1%PcAy+gNT@,Y1VPSQDD.~?z[k5W"ܰY7cBNs˜*%OԗI WWŕk-Mbme?Y% UZͷGF>2NjqƑ|cWM PULI1Ѫ55,ݯ7`q_[񼏛!/m^ /4`Jy`(6fg∽RH^ ^tֳ.zL{qM4g+=>wZFK=q44֫9:ur=F{x~c23sL_BKcST龹H( we'ϗ^;YTmDDu=ycxHR ]uڽ.:xTLPLU&:p?` N/TUDIf*^E"d-VPcIZ13F|/ AnuCU) %9gntM$_ݨ_:R̓yhł*D2g˒<Ҹ}\^NŽ5hof/=_͇I`Uf<9!PjQxz?8p(Έb>eO hwSzqӓ>cPL~}Ny qIM GAqu0ʬ Aȸ/J'^rJ?W3V |B;O' V0LҡS_C6 3 V>3[5Gkgi62*Y~Ϲ^ {sgI˾*Y+\}fB[.Dm_Hr-nj+*RhDS%g.Sd#z4LĮ1!"'ɜCyUwLaUmc rG? YM7,uȦL7CӱBAxzIeU0QjІ0 ݂1*]eJmIylܪ?"`+ÔS刭Bd3֕Z7 $ۦj"ֺڮcK`0HWTXC31Ws:nd#ԨڜfT)( ]Z5VF3Xo짇޸4wN @I.WY$&̳U9T^NyٹEgQZ;$BTq8/@ rk7VDP rOM]L=+̃<5 Α!Xg!UuDt!s63y|1~1 agiUH2R]uV-|lhThz5r%xd2Mw75+WyI!pIi~eu" +Vn;o;5R#.V:Yyؗ1[zIH)(8tIM<*j#@Yc-|IύBJ׊{`VWsؑ΀_N6KJlGIXBHu[= fԖC(]^Zvs"$& 99Q+C4O&'M1r`hcBq2u@7_' +yi\fcHd|< [w(ź x! hhpc!h723B _٭;.z2aYBG$dRt.pOƶ sׅG ~}GW0ڨCg!8<дI٪HdbQ5 ?901vfhJn~?,|Z&pMsj9xfB3.11;ŶC;; MBTTA_eY e"Q /px"==5 $6}X8 *;ň_{ZAaK_8xsG)⚟*v[/h׷:Z|7Π &.lF#?h +g W|y-@b۩@gM 2 tJ 5l2)6 Z&'/8il5ӿ-KVoUǡV_. _BB=noFLE / c8qM(:˝?N=@weo;etATr VJz&8 5IXbM7 >xktTu= -;تzY-TRR=|Jp#fE> h36LE#"֏iؘv=ʹ_bo/wwb)T uBuk2QfhHUJҪUwYKZ6m*f$.&ϲ 'm 48T% =EwߕQN"IJg7P@ n$KEG w&"4$ # WmWpMJ;Lnחq55 gC6txf'MWt C[yX>?,)-|Nh 3dX]];V@.0WR-hL]siQSG';K {EHs5 `V<úr 8XYxjV0 purP>dw4_\ ##Cyxic/yr©ʞN/8ӰQjT,,VLz=ez~@`$:KF7)]05!(H ͇G&Nf晩]L|7}Աi0jܘz Q+ge.Y #sb7{0qTOppE($L|b1j9O(Yc8h}kMI |PF;Rя_uNƑ\,rwhRF^N@ X X[8g"ADQpqAʵޅg3֫ocn`\y(HlV~;E&nj^S3lӄÌ~^[%O`~j8 " a8I`/} A C۠uS4 QdGWA:6-~H~~:9_9BYGPbQ}4Neqvmp'?%)(}O0%bPrd,MK9 FUw)w綖U=m?(~cD1-DGoX=I%i!M8[Z@!a. vdO) C=56yZQ_Lhk Iӳ-s'ŒIBzK2LPvz^7vqe'9wZaI(b9xXpơ5 re!$lq䰼5)+&syi}Gsa*e}Pxq^.m)1V NS?/e?_06Jg.E痙V=3@ȣ-;Mosξm5kwN~ƶ7|T ;jnvRpD'TU̸)C@ Hz~& fog'Hy?p. l#c* g$@)V6uoxxȿp ߍoRF\; qb^M_X_Z S}δ)qZg(:PNߵz<^MdPSٖoC ؓg[HYOో= Ⱥr|7jgltiώ6X`,%.Ńδ%/t[ ~&  l2ulWm ^.iv8nQ9=tv]Hp}7۷z'Qɏv0e0Dý/@^*ۤ`LP?e &\7Q(:[\B4,(уJs|=wfIbF dL&i(pٻeJh<3t7!%\8䡘! K*(σEQhu>[ ;,qrϬCD1[60{RYASr2瓔haLf&V9 5@^/KpS&eR;(g4Ƥ[P߲[p~ĬXkV(AŠWXՔ@3aӖI`^ҹ#8YVw&c\H=;2*5!_?S2:]GOyVY}@M\NӏlcemҼ "K dVt@:!^gNrCN%JG!nf9"av=HA,83Le?4yߎSN ȅ(kݧlMwG2)rq )y5z,Ru5uZh85 %k^yGwWkH#_'@/kz`oL0bNȅ R4$30 ̚Gnxe=I`#@iLgMm n]@ )I;sD:( tꖧ4U(:HА咽]Ϛ- {&2U/0ǞD3`3JOUT-Qd{7j_+ԳI.^im'h><(FzQ TEW5Mvd$,9ZX|N1Ym;p$zSS95E~$NYzp)Z`tE}o{6*29ZL>4*.<za܅l4Cto3{={pRo( r+Y/Q+'`Lfkwn S*iWzf97} ;(@3uU?s5σC x3ms^4mhg¹q\0/-1hYItR-sŞ; CiK5\#: <@Yr}* } : iLYA_ITM+ìrH-1XKƤgS QI2j2kVPEi=3p{wJtg-.θyLfumM$}Ԓd\X~/P94_կ`;Dur7m^5w6k8݊@/RV*z%a9oYKGfxkȿmg- C- Ȫ ^_~0`0MN/  J8jBMB˕Abȇw|y&9K2pbwNj1Bl2CY7+l?WfؘĎSTi:od@zd:Ib )CZչ4' .ܜ's\|~`&g`9O "uQC#]ٖe7`{EV$,c'B Չxh%Mu23.v9[DI΋< UG'h!X/5{m]JouXh$JʁX Y;.OZF:Op7d 1Jy2|HIK+H)><9V A[ٴLV `?6m ۣR9OPr.#B4U pv*:\/[ѡh@NYD |"q's_֡ v?Ź%yWT 7Rɴ5ԋ亶1*FIΕY>megCЫ0#靻TS 9+Ϫd8azxafNhxDՁ ^ MBs|x*Q(bCrB66N.@n0 vz(*ʊs|qv{.-U؈"Hu]$O] "rpq%nƖƱZc|6{~60}._s[1l5bqͧ1Y(z(.\;qNT2hӲc'q ;}fqԛ%r`9ɳ"\d]H$y72 P] V ƹ; >C^BbI$C2b (jz?/BUmn jz#!mD_E; ˀh^.g[ڣYv :ɞ\y7FGd6v1]@~=l{:h7v oS=$vey/Γl},AFpkOQ o#V~chFgUm27B0a^htª>(P6N~\%2bh&}&gw>֧_roAy7=0tU])u[: ?N;k'^#Ly%x'Gl 9Lww$e^ՌXYca˳TQ{!ƅDFH@O".Rv,;UܕӶyDr0igV>?t*m*xl]K,֠Gb W:':ue=Gr:<sԈc-Roc?{^TE*҅b_"ib,xW%ޜ8 w`@VcL y+xӽ]d) .9+p-` sO֩X;VA~rMD`CO@!h."L\aL :3cZx{G{)2fUQv=4{ 6<= 7E)­ #_cTxld0aho?r-3U<w'BgK? ^Y A:m©yMU@@UCxί/(Igdꅴqu"8^1/,3о*ь"P/_"bfT@Xo[ ;,> -Ub/Sa`ʓgy奚@{;`'a =f]A}ùuJyœtыU\B,6|J!_Vn'D%' bbtZGY涱TӨd Uo{fNI[Juk/m (ƶy9b2WGxٛF*;~ż{`ȍl4\Bhvݤ5%v2c}>`yicR%^ oXyy)mO˜%Ź ,bx—v-;"zW2]Ͽx=XTB$-~r+.1TKsH=wgm^dfad.Cd? LH øռqT"E{i_N5S"җi 5kϰLLO(]IDag;k!Λ[>;p%T"⒝|{+Q)8WHdا- Azl,<ٯo 06́}2x*Fݿ 5ـ ^ "b(F"Ȍ{HbcJeYuZ)5,kL ?^꾅=d4jqT};)Wx OΥ8 L>#ms{X2h36((Zr#"6v1v)![} 2(8fv9bjop)鉶7e-) EX"!;ךcDk~g52x<Q1(.Șe¸jŎHpܩ1RTjQzCd ?\XiBeyq:@kLtcNߦƠtalBbStt/bIgě%fb[s,:2ը]X(w_v{T{<\ 1=-KT-T΋|[ ! cyڜHN[˄h@8*D@ @ iu ?'֓0e >eΐ\PIx/j=0=RwxNt8(~CF?k0w<0KGST2;>>7WxclM:,zz:)dގj蜂ͩs<ndS%"IGOXX]~[Sp/$hvvSXᢑ!'l4V$Y}8ZIh1Dl_B``o nJ4!.!~䮠j&r)<%dCL;w#M:NAe=;v1g0۷/ǎ:#%=" ӻ A1}Ka&d{;|‡@k-K ;yf$e/JD7'ub~yE8!6ڹ_`2sWF6Չ52y>$Puq;`PܡLbx1IJOVfŨ7`yih7Jމ7YWuržhgbʊ9>eo::_cFjv[ec&oLL Ҟ~x0vΩ=5嵧v<72MFn"|Z3)U^ WoGyn%m@3HTU'aUaHX8.@a񌂀0P/I೐L|?#qEāLGoe}~.V3pA :A;h'9Uٙ5t]"ɡG$0Ug- 2!\C)RhMHG޿QBPgnf£Y٢n2t6|q[O׋|^K[8ڐҟP㕔t[BݚZ#(H݋ Rp`.!k0nC2|e*Hef'WxկADdq{>@g߿+0}$P%Abas4 y nLaa )23u2 Ӥlˈv۹޵CfV,$ DUeuzY,eT.5 [cթn_4`3u}ZstTsip^_#h_enף4 LMP ;3՗ofYkҬB&*tSao w[V,s֋Y3 y>`z.WILOWDbYB5. ƺy9br # }x>xx=S?o ժ|(_ƫeLՀvQSQ`xݰenC-z}f;flo ޜFH^GEP w6"Dټ& I|{n_Xlhl[[Y{ETC=cvF/r jWJSi9ޠ\`"xSt>jCR%,U=g#QǮO &UՊDpx%͆p^TJ35u񠆷ۄXW3'hQF[ Iʐ/k7gy+MZZ16$!sv″a26rOër,@ؿ[2!{h}iϙd9x]zS>:#mKlln-ZX)"xPf<l ̶{?wOH#XMKB׳$C;CЙ!{:sԝ۞јc-W=êéWho[nm=Jlsb ʮϲh3)PʯJ`Ck( "ciٟ,;7ڬBz1IԏG)4Wyy)~xdu1́k@\) MS$ig1:aQ eELYW г"̔4 D,?VCGw_ºچeZv2 TRŕ]-Bⵧp=Ey%'s Y(j.yb1/'j8,C XRfY7NZs-NՖzhc"Μ+œ2߄JwFd'ieGXbcl7FbGe`m`/\QC'><ԕiYn;I0|r1iySo —.K)߼,Pxw GHH#sN 7(U#DQ,n\ wYEUvR+a/L֗vӼ0lNNajYΚKV 6 O[oVO6LO!,^m,tǐ]=/4_rwF|5]¶d˻N9J^V9~ֺY["HbĐiďyHqX~Va<A|Edޏ"n򊑻}Ϩl )C̋SkZTZF&]8p[/B3I;[}CV+Ҏ>707.3@ti0b.([xNzO3 srC G2~ 긘 X 'o奝,N3p9#>nʂ#)|g 1i7i7@? ?CdA}Jv Go1C )?)UG'Cvx6ޕ0vSt~)a''ì gϏPr>x<.i aFYq Q:sN4g1}]_-`+N?$Lb0ВC'FMRA!,( La&)wEerA|wRd*o}` |<"E{bA+UK'wi|6*Y8mahJUtGe0]AC߫6԰ZЯSaӢ)<㎢, 8y*VpXz!epк2 AKm*E0wEfD>.Lؘ"3vPa1"|A2裏\mJmګ6OmNӌ:Aţk2}wmR0Ǜ6*x~xP~KF⤂V `$Yr덚^:@;ies#!=|1հDU [#dGr8 b.`7ʳ]J^v =6nE'Nrp &yIT9Oބ@ e|kRzU =A4,Vr(Hhnp)6DL @Ӌ,p.mXFU`Rؔ~{$vG%}/. zwuNiY Mp2ƒkΨ=W¢,[T$1v,z^??D }\ ZK3;s/^ؖEwL%8iwr{HScO!!G-+_z@k\ڒ翤Z # J\Ҽfw[i՘R lN*)S7~lj3VD.X"-,2貞}d 7 ;[ 9`b";M+JȌHF _V'pRd LeJ DICs5K0LnߟT>>giJ;XN f14ClŠ栟mj)|9[#̨t]XTI(kZltI(𡐍iٚɫvg$̃ 37`SL8eJ;(?*T#@Dl޻Y贊9BʍS_p#ŀ$Se=][0fV֪ k-p/ܣ<=l HE ]#DDTY&s 5%qFF[cc NҰRh+kkG*f2o' k8dd#:6{Jj=/ސC@2Q^!DI 15>UO"orw+q&`9ua %KZ6ݬ!tfDƆD-iɃC=ۼqX.SF3gZ6ɎCB\0ZQʉ]xXj;w3$QsoY0։^JX6}7W IA*`؉Oܮp'&!^ 1E}M= (X?ꖄ%Qi'zS뗦1YliPb:!TTMxG3އ%ӄsmC0w*TgXj9j63=n{/%#SV-iY6Vz#HJƷ,:d+j9u4iy))K2y! ;fA눤m*.dm5as p-':jbf[m߁k[ { 9ʻeQ \U1Ub7_ϖ@w4qJouyb$13u,֢\lExс `̘e[J_l_e|.[U+_o͊ (?Fmjw4orͧ&[@ ;)Ic1 /oTT;zm-ЭXO:zuKQBq%G43Y+[˙YKAY*;xMoe3<G#k!:ar 8 ]&"ɰgŰ<Njq,ջ>nٯD[qd2(Nk+vj}cSEŕxc\.q}oL, f|K/AqM1$f=h>Q= 8]U'3L h4̬GW`Y ۞q먚vRdpC .n$C  9[b&yqX{-|W|߭RN5S ~oCmfQa1IX}.AD;./ OzvH>Eec0 KzVhdi59UnUk${U606?y<f͐^ -9[Tw7'Yp de>Th˵l'Uv_jzFJ Uh˲C…[/l:qh$IGñGblb5Vo"3x,N`;IJTx}4\Б\*Y6ݮo,12~gQ?F']ڷ|0gAdWc`ҙ}s=t3E l[DNQ-@?ܘ=÷!Z YzC(Nj}5'VF5t¹K" }rzmL{.Ҽ]| $'ZM/)ST?+o*Qsq%D,u˲A5TTH3XmVANrSNղ_p327@)oD-FD~&x-{PnkGbm-Sȥ9BRѤo՚PdvӞVBIhT9O/0!ďݯT`e2Gy\ebOXZLP8)vҧbc@,@[4(OI_6ۭd\4""~X(;d2dL&apv 5+׶0fͩ6mna"QBɣ, Fk=//ϕSRC؊ :|/h6&"rdB6ά|(|j.mQ˻?u @l6efﳫTI'7(:/TVsޢ4sN.] (wF^qd9GiWc_2T FMR.{öMyQ=nf>vߑ\`b@>{\?ʝ#eMlĶWJARҫc)EH/wl3Jסa'g*(Nh-2xnW=ҮTK ybQ$AxyHR!ÇGXυ4pv$l^j/[E"s@^ Ź_x5ndf*0y 3u*FII>6[W:bq.yG=oG6; Z rqm=O'rlRT4rX0 _OH u0bE8AXqC640Q_!I֠2'&BE "V ;)$~Ց\j)V +E th'6T70h*x> rCe"tlFS`ԮIZZh`Ơ??~ꭖq+ g+ʦ]$Gt΍c׾ Eq l=~6!7)t] n4! sKiZlЦشy3)nfRP/i˟W`)zy:X1Qϝ^eK7Zj ]\UflW?)N l )8ЉZ+ ' HP*j1YB< zȀ ୍&GO<Sư#_pyYdoM<[M0 ~(AE8>3nhG_Y~ƭl+r B Tm%.LbVoh3,C rCibCI󭺚Ԍ 3D*<^&m )cΫwDn-w'KEx[:^pK5V4vJ+*Ir`jw;K@hK0湯 ݣ0^m> SW5,T8\Qc,<ѷ*di-=pC|N$bh^L_Sgv! 9!{)S]. A}]~3@c/kR?tvéƌT8G #K..eEĭzQsPL`xhs!m;jH.p& L%|;iƗ~n hLd_(@l ,~'鉚S{+-GNXr終?z^w/Ԛ X)euk)PQv9Z`~^&+fcUg@@Y労_[ Y7Gt|=:O*% zp@`/\{cGHȥ*pC1 t,*(Q`+vыȬi}n;ƛD1$X X ]oƦ J43{|ڶ G+=:HwϿn=ɶ3N˝(es˝U1p.0 ߱4ֻo\5rMgp0))q~z&y8t~ѢM4x׋Iaa䱢;:؍~gg>PDMor;v\j.P%[_ImJ|̦dI0 Ȼ9)ׅVs.g7/wV+VkXy\})bvƊJMMtN*$ejc6Adi.KF&Z &J%a@4v2&[ٜYuç[EŲ7"tn Γ*eu;=aFmWOpcfZ%2&|#bA-G*y⻅KįTXIv4`żk,4-GqCS7)X՜*Gg*9kTof6vO޽f=K h6Hy#Ma(wv6.I]~pڎyvkD[be,x]\j̓i#{;"ZTNO˰qZ"}gϿEiD?Yc<sKb] YN|ğ9HTN<F I9v\M7&lp!nQoċH q|'<6wեǂ!Q)~IZG/)sbe/XY}g|E)?~8Uz6n]Hp[( ƥpcI: P Rbn&`I>5㽗X'i\x#r!3N?+Mfœ Jj%a"a'f42r~YсGZ͸XHjo%^0ᯃղis9$_ގ<3?gsAk>h0܌Gom:mDC3 3'+(8ؤ6oS1*AqT絠2^&a޶|RH|MdBeڕ'i ^ Ý\)TJЮvYnhky7L|jX ճI.j(#D1\mosUXvnP) {ŎcmPh%se_RgR"&Lݕl&ƀVWmͣL^N .,zN4,'zi%J~}J@˩\૛!:UHϵkx%(7%Nq;Ai ȵX׶k; )ifqdd&hi%%| E_F3(֨m3.Gq$y&?GXWC*Sv x|uRq5Vx:(_x^۰hqSڵƏׇsy5vMƋvgE{G4E WaY&~~rOh6NFrGxx?Ch4-;j詼n]6)1 FẄ+cZ0fm"AiSL7]#*kc~W0ͅvD6~$&GZKrUA8rL Zb-f[z3abڱsN0%i _D*  ߐ۩Nb)ly^=d\D`ІcHo1ؽ,yA`&G2ZB"*u`7x&&rM]Pʰd\!ff w*L1Ͷ`v8tJIeAQR<Ç^dc\/G\]ӻP#z_b1tUjӠ[`YJf,E^>l K:RH[ Vb9/el4\sT~DgȺCSNO/fZǷcSH4!#VᝳMR"x\J^3ҼC )a4ٲl??6T{QO iP#~qR5.S =? Z>ï(7ڄb`fh*jgIB-E+We8yJM1]|Wʫ־݄$fZ 뀵xBYnD8 BZX~MclwYYX: {/24:Eܮ W/ |V2-aɦ%Yꞩ)V <"tFCUm5$1E7!+ϔmbA%3"*<1ٴBϹJ1Ty8]?K Ӽ;aԛ6lLۇ=IZ+Jso.a3Zp{1Tq.bnQ14TTyZq^VcƜ# [i]/U3P}v[kwϨȁ`fUbr]J%<H|EdG#?QvdBCӴHcɆ5e {],_ !4\_8J_+MW=W$2PX!y 495yVSkV$Z$بlEnm$\zQnS5êij4?+xm(Q[N̮>mu*xމ67s/[ڊp%h=X2'`@ϒ- v-D ;m͋ulgX{Mz?vfʞFlKel,lXR%"Xxԙ߁ur &E/w)8'*~/@ BFq9D1*Z 2!f^ ERWVẄ}aL`Bnw ^RY5.o5+#hk4s|PRmnƄ }H\Y#Bxyƈ=YLMR:d_:j.gn,J8/떭r'@Ѓ[˅ҝLLJ]&{$ 97_"BSֈ.`#+?`_!s qSpTii4*X1+ķT #mo ":_ g>'5JkiGPjLdxQwl)<sZ)Mi(Ab,68i} GD/"2d)sϬ-k=Tèuth6'19Qn] Vl~nCȫ)np YD3/Lq&?]euQ"e"FVΒ61L 6;CGgೇ[Zl2. 5 GIN7 *N)` qjVhTސk@ k!(7 2䚱qJO (<K`ўQVN.Dꁟ ,d륁-H RpS Pl:܀w^\,|[Yܩ,bJ)k o3ZxSb|*::TPޫ_˵.$`ۃ.ȗb&PfF㫊XbphY3ѣ@AHS'ѣ;yݡm BVGz@Qb\pZAkVf3c-t!|u fxsċVa Yl1pӉ,d\-cZE[|EA>帩QF557_~[(Uy5G׈zGj @pv@ySDOTyWT^z䦖wP~4 h8kU.KAB=8 (VX)_,w'+BiPaKCaj!TZ_jkwBP 'B4W%nnh`8m閨0=\3s0 ʱhgQEc_j{A\0̒|O.IJgB5{cKVw/K+늊K9XnZ85HTMB3m+YunS>ޞW솠9;uД)LQ р/ ʢ葤]=^ѩhXW<9wE h0$!t Ƅ}!ʜέǷ~HmŦf %];(Ic?ܺ+b6e0Θ$RҞ6L+ke8j]=к%Ydi6p% ׇe?qѮ b}|p7YiVf;wS3XM(虹9u6e?P.Mu4bO"/K!)=g"؆f`ej M;Y=s(ڠ8/؁O :o'h>AޙU+7KC%s8dxl?SW? ;'Pyю,z|Ik+ %OWQi$ *'*Fu0DEj\$h> V_.yTK${9m-S',\.=ԾjKA]:֐(%h{--wQ Ik"?vŒz?XHЯ_B՟,ϱnȎʈ"'z+0_ժ1죉A; kY([s_kv}7%!SSAm3 %@]%ҨWGtEBsxJ 0XI:QgyZQޱeg<1=ÓХ,F@Y|O퍿 8aA">{WX-WH >{}y%^ n EL$7fH;*lC15"tl, ډ&8ۥ jDPS `03t's9vV.߭U;Z4A N}&BV33<,snFt%?oے@ڑ }Bu>U٠sn [&Dr)xp$cdhWӄ$ &YV-Ckn1NP]KJ..ʹ MifgG}J;>djq5d}&xMN :]:4ǔ+xYzGy, P z /c13l8Wq%Ž`U}q@-n W\0)\W*ËwocD}(#9nTnyi6] *8:M] ,ڐȢx;H1G4{E 3|k{3ufI~cy4./vb w;n&hЬ”9\Uq4gK)<媿]N] M ۓj벤H'bQ@Os3Es/|ob2`+8Cw8Ĭ)Ȗ6so;dd$vFu ;44}wUtg„h#5N q!ml۝5"-LM68[Rߚј}káxi=>o+Nhً'T$gcݘ>[ WȑZ=hԪ*yU^qX=(NIc6E9i"iЏL*FMpHMzM5rbOjix3 mi!3.l NItWW37!"x FEGN&C 2&Mhyܘ-%`YT^v2Yd`-3^/yĈ  Sn!Y4Y ̸"cK/ n@Y/DsMq|&}`ݧ| )ƛՕMyFg''[V/(v'WCWuAx}avܺ,`-#w8ʮxGE!}Uo{zf>qjaX)gԺ3*Eƺ4$m/}W 9걈O3/_̀ n20_TqJ'nK[ F(2E2~U>(Nޠ5&:Oȸבet)- KR~ALƢq["(Q㮤2 .58m<%:ބ.w `Rf s\$YO jX9t?а۸ų'n.UbBtDžzR(b^NT☻A/"ԽkfI?)79 <:{ht=wCúyP0"rG޾$u*,%Ö8J+ܗ;L6Y Bk ̛ (IչM G3Xk&\:Kqt/ ޓĠh_9"V,CbaT|@e @Vvt]J /]VDI`CDS2`t9fאme4q<֘q.z9l)!y&G4N#n??}{Ξ5hٓ %nz]i ؿ~DOM {TVjf-HIQtA:!VMtoM÷*ㆦ~8?DRۥ^i[ T?wzKH(QmvAH 0r̒|wY$uVm`lH㰳w8i#ЎX+zp'a->)\ӡğX?Sh;Z#u BFzT)[=Ogu!# NOmQ渡ӥ#O Mx4lI?6'T%mGyOW/En`[|ap^W62=3fe X@DuY…/x'Dwdpl2e# VW }speŠb^%ڮgJ+Vh'QLg%p%M[c9Wz]kW}oNeWc _/1 _v|E) %Wݘ&JIx}p ¨Q]bSp$X-cyݿGOx,lxW0FЈ>2TwtuPWLʼn@s7c)JtE%W#Ȅx 8l};T_oc`5R<-@߹&J LQ] Z<`;qilE95bHnpY29F,)U7GKdUMEQV@hi?dcОy/{!gz(EW|r314 VrKkR붮 ަ]7 Wr+~ޣgQݷYGGϲrRXD3`h^TܘC hVN$ Ԇ@1vqБ~/UD#LBC?Cv HЊ<$r# uZ$&g9F;!}*2G0_$- u!R3݄WT/TqmMGh,0})J̴ 6()zogJQ'q$7˸U7Oɺ.FoRPNA$8"7s T @vPƳflX~):vk.Ce*aL/2'>2X i`yf1DdH&Z@XU|`[=Moؐ$&X>:,#GJ * Nse1k˘G@˅t͵ V+"cUtNJBT#?UWYVZ-!}!>[ψVworN*A P9T\Wc̿8!Y+s*s vŻPq86+FkJw @67ƴ[Oבn6IiQ?ogd>2ef8nf9heT?W86=WsO&Z,[( RbX6(JC=|UUYoM*aԕ7D5d< |- Lz,~V =YjD_SHG!pcc1b+Fq~ DS=vrʝ oy˽4ZIX?m2Xflhx~ɭMѓT SsRҜْo3gٓ :77B7׺[1MC\˫Cġ.-y|ZMF P 1IDvSVt ;`j{/ R ]" 9VDxG=B]c G0&3ogN"8)i4X|o_s'<=p~n^{s [~A:rq9uf"N{ke "[sbOAukew%h£ʘ$M<% 5)zp?z+bMD+P9nbzk.mHznc[b/yvr70Ԋ$'L#hݔA?Ԓr[>-A +[E\b̽8!%^>Joܟ)KByV R\kF96癟Ӫ "N'q3R>bEÊwzU-ͳ%X[RF 4i \`-'qx߂뾔mWWl,; E[{h9F+SF7D ú<Ο4ٔ1kX~Ssapړm'f*M)OBJrCOWQBM0rQLl_p].[gtB>pdiW¨ʅf@g'lI.#>kGRzqWCI,vyqITUb]S K:9e'v= Qoa$&SK4@6 š a:\Pj#-@L2Z2FՒY oŠ:U;~grT>^q޳u&5P \Ha'=|оVg<.[_oM9?$۝CO5|}\cE7 V_o\Q|F#5Ql\p V&c,  62U[Pl`x0OY;C͙>x)r1LU(XY>ؗx7yh/!èVɗ~6 l+.9#x8p;m9 >ganT (D(:Ѧ穞_Ӆgj6?ͷN;,>U=nPkųڷ&khHSGb/1Af˦5#;t1^[o "y=TjtfmhyvR0Y!Aùu~:Yq>t)?!N֟)L5" "xl aV(D[mA?nJucGIrOY#al3.'jk ̞hc펚@vaEإ\2lt mY)Yp'Xftx4_οT}x 9*ă6|иЀBpD͍ꛄ"Gh\">69TMZ珅|*'\YSWfޒ#06p|2J -@İֈ9UTǜqO7 xIag w]E'Р4*mQ'Er;|i22-"Bxa9B\7yݡuI諴c=[a(59#2G;g\|%8r[CZ^Ƅd %v)nŅHMu³!o;܍ VGZ O ,ړ@UF^LjV tCKA2L;@]<%2!\St .'<7Mzލ ^vk3M3:gPבD g7SGDp||wu.PzzI☧A78CZ!(b! 4ev(= Zd3KjmйP̪Vz::z-~:!Z(e$&XWTCٛ-%@[ Tqzx! '3/O- wѢͤnձM(%_$ᩎǔ=Qt7Ք!ukTl )',`#$ex0am6j( ;zÔ uY9ݤ{A-yq( hT?\ /|?Fz3#M~bÚߐT+QFFhi;- a!i0m;ۑv uv1^AZSqPּ 0X"npt8%侒rrmN]p_i0b-dPjՔitm3n(% Y]j@_đi׽KN: Lo{>5X#3ȋQOy>&nw@gfR¾6U%7A7;}t9ӲMdʐ-+ t4][c߉g3;^]= >ȝ24A*u_D&8 tt ¾z0’Lp^R!se"̑/%I0eR0/~ a^p=ƫr{K4b;üQ-1u'+39dv+ P lV[`P;|ZY/ֵݣ\5[*|.SGcT|]%w&  1n/HOsMO#H^ٌDrAVrˮMT{ؔ-&^ Xti䥟 pm%{G5vxNkciFYX!~jV`_T;w#N+7#)Cކ=ABEu `ndLWe}\r=" }9)h_i>jU&ϥ %檓x LA]3A]ǯ/ nBII2$ vV7mSRȔD)+Yj݋εBb UYofJcN7[w8 24֖eawlчN0})æ+6o|PRD7,Ĕ-ܙvRSHSu\izA*Mz NRn(.jVS2ȏyWN"(VJ(g/8ˇ*>=nxrDeS{Se3 l9 0@g-n^2Gj`$zLQk9)ҙ0G2"c%eAP˶d'">~ڛeU*i~А]Xz_[I=[MyL]f|UAD)U|6pe!28f[]-O_d|&qG]B}=GC?!¶OV̛ JKZRɳ H1 ՎR)a":LB3pPB% q{/f^6gN FNc]N„ǬeCݗfr<0QDZ5p^ t ֬7M78BOdA1os*!X9Tbɨ#_Q_;@Yqۥ1&hGSftdzruƅ f[f "\ AZL(eވXQ`>S+yx먓bwZ$KjDI (:جbѯhʀ ~[s_`w!&5:k*EΚfs)" 7&m_9VY'vE"^eYqGm٠X-Y8c=h,?çnɷ\WTl:)f9orf&qm̩4^_Z0e>+{P½0SAfӜߣnSx՛lO?%+tŊ*m: 'շPieS}@q2!IPff;a<$q_ΑZhfIFD.x` ԋq fnM/t ?rB5{Ya|!s7kACkԝ^z\Qfڲ|+eG 5Y. s: ,}{XM޵zۚ@Ss+kx+iK RHo?XJ|J/Dn$)W;1@Ȳg ^ɶec*j`6ٕrI[Lgh|" 6CKk$Ԡ&wf´qCpqLqgQf6rZƄñf2 {̰ )@:((e3#u݊MՀ2?l K{/I=ivѨ|*xQFnS̪c fk_H|k/Ub[!s(te26gIYLLh{m?ZJm8@x~B,Zݴ&Z&IP:5h$6BN#͐gYsok:9@g(!'m.!n͡6O 5-NO>/ amh̟&- ~8S+Ĥ*ւM!vmo0^0z%*)!-gy<!FW0KL~/94gݵ]'檏pC HV C-M$!wY/%$;LD=e0#XfAI}?ປ^X"fAzmybĖ7$~/7Y2M1U^4w/pg'_qEhj3ufp:u *5#lPh_p:<3#N'f[\~s8sd߮&J_p? E`4݄1&%NSbE?ĀrbݬKvD6f71t6">(z)xOXnIG\C|G=(rdm`UZHq0}#Q? wl%6NXÝ=RK^_e*n ^y_#0ثCM*;۰$ L#)2wEWǿ1΍;%E :,T^8ۆLH|37ő|,&qpϰr)5l}$ANmoqǘw|1!ړ$ ỲpHTq(F>MXe5`> ;9E5KD&A8 SCu%,GTڄ?|I?O=r֚kz4ns&; B}]Wƫ" 1\X`܉{ɞ9 ͻSP"Pb:"%;1 :sA[_5ci~E<;%) Qbjyӓ`T0O.pT\&[z{!oMAmk%+F&jQxi`y¡3xvKAdIo'҇6V%a4x u fZA{eeXSzg51 #/ZR 7qѶ)C&WQ%Au`{Y =J $F{Z*>8Fk];}pyj0u t\b!<&x# >X֚{Rjۓq͞FN& uuNeS5/47hZDށ;6~V:F&: qzrvz30Bx؉hemuퟄx%EZ0ct5}[BRmv_7"'҅:1Kr'(+פPb$KB"HC854:q?+5MI%S8\{l"ٮ3E*p{SC;laM !KS㍺x0omj(+qoeRN#ےmyE~׳=ݲӶ%ƈ e$0ތ`=ݴ ڨ @l֐ ȕ%d.Cμƫ5WQ(B >T'au]˕\Z_d3 ϹN@BD.+?˭Q=xREg$Z_v^k am*zI똖O$=."fTu=joAMγ2XyG^1DZjB!.۫N.ZX@ɉ/I&No.T׺LK(li{!yh, v L}^*rCZ'ik2L0,6YHme2]0cNhʊ6)8rw{H!.jY0~JJ~=I-U1J>z}m]1{{_&X+{3wũ򂅗 *-:[yE>Ip#Όoy#:_"1oЊ]zNɶʳ&&~ N wWmh*jN+?]m,ޣ _~X-rf~-H;p0J~}(X&@cW@C=MȳD| O߫{ ׆ڀzstk]P& wȔW{ t)+0 Ip6  p #[TQZjq$or:9  A^|/ 'u9a-UQ@m:2`7W1:m2p.KTN8/VmUp"Uf6*;xs]76)xsEd Y5™ 9x('9%{r^[rd}j&*dGDhYzz]&״sp%&#BYMrdqU}ha kGUv1GY#vG[wb8LauC21Sj?vLƆ8v\L\I3r K5~'H&7q́ܶYз5 &M>bIKP_:7ɸ 'vca_/3 XK8b"/IJWp '$sWEc, : Z/S8jjRꤙ2ՠI> 89D,9u܀G (7{⯥/ snZ(״{ Fz`2on`uݢUԬK"FF嚝a ]=RͿ&o§IsiŃ{?,d6"Na`q9Chv1NJ'x`Q░ .mMgrуM|0q ?Jq<U|1oj$.f%Ha~&.Ԗryd= G/`9ePͬIWR~-['~qkW1vn8 .0ҙl2չ@m*K<|?MD#.`[p+ud6W&DHn\>q[|o<D Uq ,\D?Q~umrúyyzc9k~ET$ 1=lF [K^ib& xrJpOg79L  sf;6MS$0"brҎN[ZGC>m"xGBH(U^95$ hv-k$r 9Âl>]tP,e+W؎XDH*MM#zBiq3JVi}TA% `уb8sAvi 4ʃĥ@@&pu H[;j'Ʀ!ᢥp,cVѥkca2''SFsb.0Vq<kSv|́T%H"|?䞉3.)m6igXjq=q:rϜWhI7%j ÅR-i7DZŤ2TR'pz :\!Xӟb#7ΤI_lI=&uMUTiNsxMF'jn@A֍7{2X r1QE)T)ؠ2#RH 8ٖƊQxk'IP1xB. ֢af pcdLtbXDy,*ZB|*% _1 H|Y;={KÜU)4Wռ5z?/` fK[n >FQXOq/SZk I^.[&C ğdPr|te,fI*UELg,cz+\V}D=;o׵H߳3K ͸r5_١PjRq* *ʢP/Ԝ=̬iq-K)5(b5O_H}y8Klzuտ.Xڄ#fn wAf+Μ/"T6 wFIr[MUxv6bx# :4c2"f iRZͯH?GT2fga2]ޜ@:7vbM*(9}4e}8l N\1$߼|\Fã7`>+rtVvV3{_s>;֭ |1*)jF-ϤOʃ2Y8hZ~O[ _YӡR EY+2PXj*ĸ uImG~Vqa7e? `*[MTќR%ͬ%Ͱ:R8wd A1'*(}R9^d>jtǯ2b-p͌xqͼirLGD[j@|tC0*?Ut Њ.Ǿ±XhT<,t<7/l/XWK-BJAKܝ \4h+ŦacB[u5\z\d=T=0M& U7ێHݿ؂bU8ײggt^.C4f}~w=?| dzsu"S.9XײbBzh ݜNA/6ϲ (Q1ϋ{OmcoD,`("`HD]9fz,& (qfozץ4 綌ǎ͠%_P]` )H䤚P$ d;C{~-h1*wri]5oVX5^":p:phM~>7Z` p͓p0'z2@nPOzI1 =V N 1ʜ o%qFO~b\ "-NfTiZlFrKb)9I%I%e$3;/HϫY_KaMv5C1S՟[|6.}ՠh[xi݅HYD1E ھ&u*{F =+uc>aa EGtѺKj.1qUFVemW{t2N rκ"o>] oŌG-'8Fqi"[9?6 wu?̒p"-z[ƁN. IUjn`68HtH{CA{OM 2BTP^0䗊[&f"uzƵm0\;Ph"{越vaL9\D0G2`A)CTG6jr=,¢[ۖi؞UdgZ Isd:Mԡ_áa`Cw''qnP*-$~C,qK Ik+nqNOp&\2?h$cooҝG>}H }oAX,:X _vzeN~q 0Xc,%AAm p ب@lklj0BV#FĿǭG*W2~9.u~pILt4:%ĴQ+K$S:v 5p&Xay^*[CE[.y'#$6nq<)d%fՇ_/E5<-:U"t9wB0c!g0yNQ>TM#~|m@I3_5Mit Ԉcty::GL*gKu)ڻ3tZJ / NsQ[$&0Xt1'([:Oɳ^ $٬[VFgfG[Ge8(qq'Η}_q%\Q?`)!biuiF8Ll ,y5b?yv)}bo؅/:pxm4Cwv,:v6jfϿ!&Wkj@U'Ы_ Jwm^3YpkT/Uk&gi`0Fag~r:g n3uI"zHH\Ye^#-N2-&PRM_E̓ՑdJr3I,Epq <7, %9/rځ(uўG5zD p0?M=OՅSr)(޲tBZ ` RC 13LD(]Ԡ.lñ VL}B3\hӡo<9߃}[diN{ :@t~>H 5DsS`mmd!Å0GO.&Ÿ3ٍY" n/I,K&|鬣>u6 OvHjcYnKU&CAɤ=6Y‘@5~䴬a=E&;aȬ[7p!b$.\)Cđ,v>uyQʰFPfu{|Ѯ;SGY*a7 ԋucʸl<-25Kvj48#m^TFMt/{cFAty)/-Dm4rs;pw>lC 3P/1#>ӛ1¡ J5c5ZkB&Z4AD#%=ln*'e̐89 h3]zm;$m| {|M'$ޝ)cV Z5 |urty ^  ;[UYD?KMPw mXvr[De5-v+ m>r=a=HNTs U0KYG@|`e3HSu#}8L#bJzY ⼲[n~r6וN qJA5ld59쁔{{9_֭ peLP$5R y}TgZp}u'X?;z)ka$ŜLqJ0*U:;۝a (M*@n:zF MBU_!-P:E,ڿY`w}[>pV(.'_XI Vh8ЇK-Y6_ '[gfƛ֑\L7]6+gu#<ӗ$7nEk9տ  !rrӧ 0ԋU6/̓Bq%L t_MG'ԆZUORp5MA&‘/XƱ~L@L-&i~ܮ5x4Mq~!4.t% Ł7 |t`OY%|EU0u=D\>:gO6vIҋKX`lulයeҋ!AS7H8!{[{X}Z2%0=ďBתyҹ%4R4fOr&4q1ŽM\ǾRijB+NYz1CQ")8NcAc ޱDn#s@#5?w}'wqĕ \DUW\a5=4QeOLUG%Xx?cB%v QI෗HE&=X*V)17X ,H<>6qr$ldM1Vf|(.7Br@FHsOPn7݃n% cAJM0j]@*ԀNp8 4V^F q  bꙇbIR N 4-W?K[֯xVNu6O`AT=KZ [WXap0C>B,?{~*R/1rDofTe J0(`CaYJvJћV`OLGmr0bs ׼ ѣEFԮq7m0q@V:v^="ƸIg]#@"˴wi3vܻ&l΅{&Ϫ 6+T)aA a9k so)|йn>97n^ֹ3/DʫLY8=KkH ԐtJnDA[ZH-rSĩHԲ^™~o!˃8$bt8ƅůGۏ";p^vCab *1 B~*փ"kD^#'G C.72섣珤j*wYb5Z0ut'swVѡEn;uxH)HckLRoY} CōAj0 |wj&GI00T ~v&Hf7^)E(.l'@ċpQS\SdeTH71*J:ƥG>2; k^(Q˒Ss8T;:8L 9ovJ4'\bƿ&~M;?Jmw.%UW\{\ƚjZpߌyk72W.'q樬4&{&ttV՛/UpG ca^1Q^ +|:f{]zGe_NI;SM:yKׇׅ%3*jL;A)X`I0gMTDՓc6ΒSq?ȭIYt-7|S]NU _yj¥ hP7ăh={P:H/m7N1˓s1AxWXC7s1AV2$.ѝiAyR Moe7F=3O]nuhP) qneWI^j=94EeW|tz]O۱SC73(aȣ"v1 m+Yzg~ϝ-DBkV7a?B څy -13_J;CȮu(ex6^ĮA JC:sH8SÙN3_2̭>V^/0LS9( }= քd=_SN_T#m30Cމ'd%6K TfZbYy`8DÏ t=(~^6W{3[}M;ætS>sL X UA y'LPN}lbp Hlİ9_j'A=J`Wt\cњvu;ĥ\I݇Sd)!Cp'Lwyu^Q{F 6 :ȘG+ifaTqX_u`F:Awr%[V1hT$( 07` ν`z}#'|̡JIbi#,y꟣!"Mۡ˭0x+{P3M*Fe~iwc)4Ω'hN{2ta/.v͐0 =u7Si:TT5O.+yN;DF5PۢJ 5^SPn4vsND][XaE3|ƒ켪E(Ʋu9`ѯ0熢t&LKo`pZ/\y-U!5B:H!\?9m][# ˜H*wm袻\ /8beG6?0`;G3ƯI5;1_Sq؄K5!`)~tHK3 L8,ttuȣxbWC`|IN6 yxˌΝÔ7Ph I0#/ 3麘 O!@Tߙ5)a0nG^H^A`DSP9->èyX䐞Vԅ=_pcX5i |l0*Uvhc@ؤX6芅8"Y&dPzܗY^K&d9nHkp+Q\yӻռv9 \.ԗVRTrŘҖ8%/T}ob`F6p?QFX݇d~df!xQSWػDimKy+f (]7~`P~ߡe4U 12jMĝeDiU NG]l!=Y/,s臽ϖY ?)^έQx# PzHa#/T2x8-A]ˋAYPnU@ %L@6! RIO+{;}ȹ_2+T"HkT1?qaɼS=GܱyIp5",d83+ 1 _o dݧ~0M)CkY2Yt w@o5hcV$#W-!Zۘ6S`x<AYh[=l`h(s8: pC!nHCzeG5Bݾ5Ŏy鬐 ^h*tn HD9tI<>dDZ|z'ʳe[x7}hOո&9Ki,ARUGa'A@a8<49FI^lv HvVjX eb r༦3Q";!~6Vq]DVM!uut +UP#)&U];+s][6݌) &Rv.{_+X`ҭ)*ґô,1ղdu Ly>ś= l/64a~m4%i̊ 3ܷps{.>a!cd yl(Z- pez3 1mBBcj?AoGgKf8S0p 1tAbܼnK-ħA#,P%d ܾl'B^n'S]xt MàXX}WW(!VG^rhgHKMO<6#>2%?נG "2$:[ܛ,)1?6N23EHؤ*d$́:%6@z} }37.!d|.sHkZl^CYЙKp3LDtJ\Ktyb^Oުl̍.m<92>wYɭzhd-4D1o7To(z)9@'sx‒9kuD|ڬ.B|S@F )?8r܅f>-ETx@O@rOt9% R+sV >ClQQyvz gsfvzRt >m[LJ{6>}\mRmH`9X 7P%hx ]eM=}䝱w9vz׊vyW%לq0M$O AA yXYt̢ 8X뵘~]F]"io*0`aA%>M*l^CVu$Ʉ5@צPiF`8ü ⨿y,5{ڈU`SV" Է_ h|b3\d \!)!͗2 2bXGdz}^S"Ա1`M ;!{o EG[G ^FCe#vࡸbZƁ03CV0:QԂAK5hrjB_L͘*vY&qDr '?DXF ogFn+ Mh8!G.XYxh1<Ԣ58#C̓LZܰQ#B]Q`aʪZya8 j&|S~dvClU(Ϝ8ɺAHRaTk嘫5I m<Ȼّn 7SAç i nCs{(\r"UyJRXغYiЄkȻ/XHNÑu&P*V)h*HGpu22L_oV2콃C ٝ0!%.(S&S͔zB_ՠn{䱁~ y+$y-o$B/ӆ8?Z~&t|6Ů#ss06ɜ-U$w%!%tw#[ZaKeOEP E?9:/AZ! MG!e` qfgÐ͋! -1.Jin :'ƒjų$*'DY]uo /;2M8L=2@7| C e u>?%rQh9IѲ52z 8ɖ fXv6[#X/VV!J|mAm+.ّpH",LSa5ՂBXJxCQO*s_@{kiNPa6iNp0F~n{4s ,Ѓ6p8`7>Q1| Dz&7\nhN)oF&g"i(#VsLKtMWGdCL4c0DZEO5l.֔ʕ &[V1+YOMc%`r4ʉ+eh?['dv:He>=J00'YeXxZ jU"ƅqZ;9{w{KLZX&qw47t*(D>/g.1 l{>'=>!4AAWЎ XfA={\o>r-?"ˏknYG,#寷PD5k*Ҋ&3lU?6 ٹBxJ!Ҿ4-ɽ͹M~G,T.8ϤWSgG*A<@h h꩚;d(g0Kb8j)p9*w{!KAn7^ZR %Vфh ]Rx֟T'J|s½ <"2[t0k!Iy_tQu^`5qboa2|4$ / b+Mǂo Y0d!< >:9n#l5y[/*AG뽌x/H{D)JT`_qRz e'U2-}lR9gr>RBc{, ۈOݲ<Nm}(>1o(RQq6Ut 9$( ih/6vNY'zTz,wuɣ`Z0Iȝs94oK)L|/kU&^wڠMJgBĖ'c27) 7z  #Rݑ^#G?Fwd B"BfKjdtG&[6DX,T@@lй8 ~_D@szCAӶ?/$ȱ&2C _:M\oSXUNiFǒ; l2@".{PC)"*TǂSѷFE 5QշFX9БjEDg|)1e-=kk 6rzlJr=B%(A6ﴱ樹[-k'Yc É4Msׂ`qHrjy+͏up$ 4 ǔ7+c zO>":%aH{\ף,тyxZ5[kώu)T;!6YTQ0YV胳6]1uU#tUX cCN3 IsHnK>d\|9 IB1Oo95ܞKB<;y\iټ]o'ķyJnޜŏGudrD^û7X; C$ Ge_dG"iAfBGfq6<A7 |ud[ғ5A1ivޘQ}{c 6lB0"eÆh|P-ؔw7*͟+kˑ%^9 +,c:䍽e7>#1Nɢ[3s $ΪݙIhD'o3ږq>zG90:ep|ۙ{~qJ섙 TA|X!#$ƚ\ORq} |Eu֕,G C_Q . "xlVx1dlsς/-yJ=i,h'GIJ9~H,I @pp:Fc9ya INB}+^^?Ȓ8]jWL_ǼO~q<41g"/:{f0/0 yYgKe,0:uuYaD:` dB I%,]f{NH!+9kߖ~I>R M'5EpleP2<;e`'U m{_z  Jb ƘxS63B >\![ݯ8?HsS],V KJ#ơwRKhMUV:4Iv9{ 3h#b8Pgn|A=29ksNVpIɖakըZ䲚 `f!b-̆+(-K -&݋VKFb3I_A`GT਺OcLA=\c KN*^R﹐髤FT#C\Я`J* Z }q4RfsB}[is6fO7I}]N{YiSL!62CӏAyb)guOWtx0RNv(D&&4h0a{J4$I^&-,`'@H*רQYlӉD /V [s[)QwC="J\c/vsp E=3zI+(5=$&C -+r.PRp(?˫> Ն22dm3\ӎgVe~0\@?˫m ǐ?@j?BU 5]/ڌh7a7xQCN~~g%v}+(HMѠȞ+@u[m'v0g}{+pDs4GPkfzc}f1p NْpRT?Tv^&&7"Da<+F#70 F/Y=e1}q2P9Ze䓟Y_]z:58h!f*[i. "|$HGbch^PirKz5)d!: /Z5s&wՈĦ7O;ƚy@ZM޸Խ-j C{aZd?}9g%}9yjzG{T7/x,ed㼙F0U~ 2]W;alXPlXPNDZLLTY3itI#.~m<ībMX; d~i>T5>_B/Aq7HEnhɄ ]s*,.fKi,c B~atq Pgk\u,@e | {Y$[I9HYE"L%?^N<9֐g Qs{oNEQF^R}:r;9Oe kJEΗ%\(x]8LϠ*0'SS4O "jzY40O!ٙrRXǒ ͤVS-I@ .d)\ZID]z^Q =Kx>r94~=fZzEJL6twi~v佛{8L.[Olן  z g0’nUoƪa_Y֥UheLrX'6#qzs_ͻm5'gHGCB:j49Xsa]4>k\ouq%MVO2˴QA /0g'-2_&6rDz=1f68Ҡx6Frְ[!չgBDf&N> i,F;@frC;{KAot)|FՓ{ز1v6U![`hp ,Rџg 5 X^r\Tά3Ї2Z](E>L{r (79V!"]YoZ36B:Mmr=Yk_MP2 xjYR/}@_\">\cgXi떼 >]`M.K:;]b{>v71 >,C̍h6PEdAcEz l`rk) h02 7f)ʎɗޗ.%\ZAYa?p~؉d_y4?{wSi R ,ix454<yWѲBG_jwYAxG ;Vx4&;0H\םtAB l'xS: Ja\iT69yI۳Ie75m \M#"o쒯deAV`~V<}LJI4ܯ{82F<3nA`RV۔'i"mBVY [~S@.ûrɴY 'LK:}Zz!={k))iuüد+ `if1ObVӊ\K *ZYbufǷ$.9L͇ 0 wB "H2Y 2Ȩ͖@ O 6Zmwɡ~ȹ<@T+l(n%`׶*FHo H>~TχZ4Ɇo3,y}=Mq1t?&g[8;HpLZb1 l"E>oo'O\~3js/^:2 Șj`&0Kn(\ csx%Y/'# \zY|h5_EJNg!Xa 죝IMDDqjq=kՑd+!-.Y,5([HaWre,jso^D?7oWW 2J֏2 BݲZ'>:+M>XxXG?!o^ tyZr ;}k4 թAS@KrB\T2J$86;C$z &nW7]~O9Z$ R k̫VĎyRL.Cyo-V=)R݀BTHӡ+q'VZڋlqF)O E`$f ^40mgy4MVD y~WZ|-`o[~K38@ w\kqb!r@*j`gt~iqaO ؒ^Tv)1|# >{QѢ/ e} [=AZ?޶tțB_$?#fUάN>GHԶD w04a _zwQ_եfxRcg[¶5xH#2X"NI0i"]έM>.C4f~v'dz?R)vpa=p=`ƄUfg;h,M51 {cX(->0Ij5[ohǥ+e+G<~t">PNߍw72;xVSayZűHYU;5T#XM%}Խ5u= @q@]XWQMKgDZ7c?cp GYř$`/pD: `σmE0' j{O߂K_w @q_zoIIu1"P^xhՆwh6xuBb`>u;A}c%R d5`".A8n56Jp18'my*փq{-5YIŁ E6{,}C`J$}_=-K3j3}ViW1^V mxijFS~cm̱$Az=}@TBxu.Ej82i2EcւYn 85Yhn)s쿪MN9(5g̞E#jԞU_ uRd>=^l/v6D1&f xbmH}vfscZ eeQbJUjE\HEOpV׾^  +y.әhqSgjxCI},ǺZtD|3*]HQ"Ƽ/l#|u|6+g\g`ط|}0k@[: .\LwxNY')# ^Z?ly1rS|6۾՞ "{Fd͌R(EoTeN*R[/" y*)Ff8OB(1-:B+xCw!tw}EF"AZӪt*UDKʼn'g6uB3.~Sk&hWS`n+ٛDߟl~ qμ,NyzN]XH̛]"6o>)"\6 5|d&g|~%ǩHjOW]RWΨĢ΢VT{[FWH$0\D.d0ˁP3`8B}*c޾ץeP1U!WS,~?>x9Yϣ-sGzss䣺d7@.EA2c1v.vX>nUtqCJ荓.<9}%O/^@eKj/I2E꣈֮n0%71Sy=Keə#e!LGmzqp5PM+ VqNc&N l@ uyj,(mL! htg\P% }: fEzD<?zN-T#pݟ44S=l_}\P!c)ntT|`2Zr{VG:c0"|IK;%ߦv7 6YaP_Wbzg2:Cfo\R|9*)Nz]eR >޶=cjk^XLý?'rݾlf_A'ު*L:#>SȢ[Eٜdk 4P.,m]I [)` IU hRK$њ[z ;SHԇbQ% `8 L|_aDcoΙVkuݜn{|J ,9~ogެmg-`R&Ckڹ Gf3LSV5cV:jHYv2L/nWY'S"ɓ)c,ëᘛq$2fy'IEW3XsP9'#@KguÈ;,z5]74SX?=5#z/Q}IDI6&MMV6Az^pm|߄56I"2hDŽrFu>NF^_wc)$k`fIZ>WF1DGrhXȞPZqChv݌*9\P3VUnm. Zh7n7A*ʇdc E()g;k5S"5EGo ˭W>nNUF +Ix dx?ץ5Ha(b?83N)#l:/ŷ-fiٿmA7is&R}Ӳ Aaɲr*ʷ Qg.W^TLÑk2@] nj&jDU7C|YV'PeƼ k2HwxGۤS;Bɡs!Z'J7>Ú.WZ6XAmn 9~x*W,>w%?\صFRCaçND'@O67\{o$pfKCT}d@}Ӄ(\mP?}J,OYAf3YA<Lژ"sAFctBNo}q;ؾ@nhVMs1kĝ<|ܩ2!ȶF <["HP "LTHyyGxrx _ᒂ׽Hj=rp565ۋgmh%Oi@!8,*/q1HLz2kZϪ;_wrqΜ+RECc*2'l(Ub ϻ&߆I"o*:yj Ins.b>A23C 쮠xZ0c<?_.)Zr$/,n9CCm+J Ba`IȔXK0.dEKȸM;̉1*ux"Vc"5/=!=UK JWX  |誦z ;3_s~t04Sv'Í-xOaK?\8M&d#n#spiacY-/2^Y tcrJ-/zs3BɈL-3#YA Ap1< eKBIV٦}?-B;dRgNu|_GRgh\k+ 5j̏n8;Jy8U{v')_̿2iNQ 3$d+GUW nN$JLyTBYxRPh$s%]>f\̘ STZ5#m"M[NX`߄)F/l zhn(}x|K2P2\#Ӓl-INMՖ#Ί| yp-2Q8 q鎤H5'i p @^ara[*7N !k[.-;+Џt5Uw!¿Ns1}Z z=Ф/5%"9BrqDkc訖_u`0"ѿdIz. ZbٮǏY6 QF|9Dؿ˂k7|H68ӑgHVyr0$aYks0 ?I,6ފ.VR^ =~,-j.p!yg4E*oaʻ1};Nq|g@ Z#e[}0#]-B6=*eJ?3^14A# PvxpE] "+#g&'a҄_Y^w;/CNO%0KG\A:EKHDB^N6.~æ=pkLe _*ќ9if-'X m_oyaZ֏~b{l楸VriV¤ՖnP  ?%4T8ŐU!QtGuMƱZ=% (.@cNelt[d"[fCxa q9`x⸱8ϿA6{a &YBi"Xıu.М}ޝG߅vV(v$dPhC-nmGR) ܎ 7٨#-$6N-7gu^,U4nak%FD~ĥ#tiQH7vxrpO#S/E6u\d ;,ÄV-#qUElf(A;#GoBgJw_$Mѳ&XmLkC|x>]:D> .x: ĞN#LTQD_S1Ch{KS8xytAZulPDs?OBmOF%K^C҆;E֩KpاQb1Y锐o*GgNs1dWH-_wa$/Yi| .uѾ+G Hs {ǝu B/e<2)-£7^1cxp μEXEzS> !qjgX_l| /l$B>p0$m⨹4L6Q:uK13pW/2-7IwS)[,.Z3]٪3ϳ*/Hɝy4=xz_Le@"F-L?|uWPWQٴ* T&8,Qԑqk$E"0 U[~`YוֹSRXxY߀' g+sv=|V?7&܂wLEH[W\QGk q tOa4I?QSLO饿0gI!>:f}ךOlqoZm6Ӏ@4Dp5k $g+&_p3t4t[ HH?3~!Ϙ~s$AKp@&^r?ͩp8-)cu+lN\R~[i۾32]@?(Lb!sCN%}Jg[M? `$FE$Go) b#e$3R̊uk ȹu : X}mRWK--lOIVz%C'}2(To6.j5]_i]"Q_0Kg. Ip |}̌ƶK2K/ǵ^Z6xdȼo6f~G٨mL5:ᓱ&ZYA?j6>) MJIZ5pWXL8b'dJ6\4aCl1XJo_Lú^;Iǝ{R%ޗ{,>udfd&B>^e'\Z RDB[M--VYUKdT ȭpaK DN+s(Q$E(, = Й44;> gڢ}#F6$uV-'R6H\7"C3Dognq#/!\,Y9d5psSJ#e>Ϭ2^6kA)һ8]EY;_53jYrdDɫYuP 3_^׫aRyo/n~`'G<_<Ǯ7,hގk~)@vDl39Ycŕr9ϐդ.Oc45EթTx(]fC]?%9u m o_x8WvזKF`Oњ}ߪ/(HC[ nkq_ (Й&Y޻L[!eiZ~ 6Rea主+@dw KRy[ yb1S dGG)#2Q&jM]>!'R˚b"r;tH5؟ǟ.} }cJ5MOL!bYdPK4 __ e+hg>)bi 9USKA ҝπ-Me4' ʢABܤH d\;0ٶ֥}< U|fPF5&œM=]9'5S-#s&:@vAkc]rJ660٢w~e'di׃OF̶{o9I9H\=|=dن[ ??"J3D<0tJW6#BZ?caSޝIJ!?%q6WIIA az[,6lc"[xA|@A_QYS瞹η)6PCט>J{,Q`%s {j\|n[awWV|L3\GkSRP$/BU/yzTIak㞔ٮ#׺( )6ZNOGն eLNR+m2IEP N^2KL~Cy@ⓧgP8ش؁=ռ$1UrJDVM"jˆ2pS7 (!`.Q!JjnM_M:{vB@+OO}",Qs9ጹ\ra]u`{rxTຳ2 ;ںɣiB6JH2q=cVrm? b(7KeJpFrIA4vFBXK/5TJG D" *q\2d%3lt 1_5Tb[[B9!D(Kgh~D/!BY)JFݻig_e{3Cmׯ쩓cV`TxM2gr+. tID[߹ ,Fy]spC?xvК^w;-Gau:psIKz1E;](N>7c?YDTS?c2BQ2|.!jl帞ecGL@ޔ45Yc8Ϧ)N'Lfzךe q=wj0c˛"zD"RKI{G2{$o5= +"ߴw_8Mr`=chwPt?Dg{9JO˳]XQE#M|-Dw^--hS@;@x(( @֤fDA?ɴE#}jꪺ:\s8? sBXNf9AWYVn077SYz*6`,JPӥE[ Eq75]EC em< dLRL!j3+W~Ai݈&g::VJU֘ '.zb5+{IbE\#:AJtђW9w."XǯUU-͇UY4u%vF#=䈀ɅlXC.m%jlu EJdS'[Е1I B$b_Kd]_a; yM/b}N)8:aq,ZlkJQ 1! qg2:XO+@b?+ƃJXoXut4OE(rpDcQ6?;!N~)jyPХᓙ6-x]i9 z sc^0ni)@Ӕk0Cy@Qh8q|Ζ4.v;݄4o׶|ec*0+*JdA4|~~F,dؙI(f|Hy;Uѿ4o! 8y2alg3;\Gv)f% yɒ#_ٚ2EV z!#%GQ$dFY Q %mMZ>4C0DoxK7If$vjUkyz@ kFuSN%e)uM@Wٞsr5X!fR#1ֶ)Гdy yLT "hgig_dNtVuFd"&[=u 6v&M#o~$JB!= Pzcbdˆ*Kǣ Ə6rm7ůBjebQۀLmO]Ap-ϛ6قImqjרMιy0i>Ds5ZRd$Вd 6BʼnʍYy򬄞!||Z [ZDx@*jMu"C=e08cvucނً$?T#itzֿQIζ4;ly† >=Nzb+C3XHeR.ys\auA%5R>ޢ;5lR5 QMe5>{hHߟřaQWzebڏdTHjѷ3q4Àx#>/I棜j )w\Gm6RC< LT~R ~+b KѴQT:ֲJq΋ 1wH/ƭez[@*ZPĊC i ѡl\"-(hTltRoeZ NAlA#2Ij]hUf snM0񅭦%[rAaEEcps!OMGcL*(4Q(=9$Nz-{ |قZ<Ǚ%l؜Xiݜa% CE԰=&w3x*GQ!|lT) cL2cy!xcQTg@k_Th~n* xDB \!J;7\W2'IU &/2fT|l50cI+Eg# M͑@lr179q;DNgR|.W;w)s}Y.yny9V fi3}k5UjI >^ SqKZfLqE#6Y4qA 6d"8+=eJ 5@GWM!& 5K:8 D1 q#Ӟ <4.$ B=}DP9}f\m$J3D3Ǚ`rIݛ4U&$) &h|y?u5n^#+ 1X~ȮNis =njBΑBbd3=i@DdkTC` o3ʃ2'3/#s܈"̓|ƗsA\qg I5=XLT~I_$ȒV=uIOA^bEb0*"1J4yBւ,?붐kXrX j|;d8u Ռt7 ޙㆳPR;..<eg8:a^dҗVr%|6%~@'m6AK2]I/XZJ 6+U&kOI&6Im 2Q qM~ZGM <4ص װ#v<' (+nL_;ᦀ'iw0za44aF7]U*{,P#"UʵHD󉜜Db=3<%Gj .#NcVcb1}{75 IB00|.倵U47hsn1 LW ~wz`Tlh}7K3SF3wRݯ^[H9k %XE{wEc {|ǰvˋ|)=(Vv.X#nvn\T8O'cqs:`=Km9'|#[nδYvXhG?ޔ>Tg%/V4+g.1C1z:bW<3Dwaxw-W~dO-{gmʄ̋؊$TADtmy"L~{ȼ7(coPW&if43feJU|89ce d[X*0ik?-# q^b`1=>HM O2 b KKzjxbyP*F3 i\ݘ/!O7%fǡOZw?L-t~Օ(2H/nRo G[<$ߛR33_WUb71kG;&Pܤp¬q[/#Fjng h?V 5"O";" %6Jc!.7Ì-;\_bBa3qQdZ.OT>" prH>}{Mځ N8{yTpCYJfoя3P?w2ۇ`H*R2<0wT&lmUҺ}v"Ԥ!#e Jt{2NÃ}L'0x+Ɨ;Ҙ:w{ q?bNʿE37b_ ;f%DJt+9v,w SLBnц#]ΫE:Puм?;Ơ)}N;[㸢ZϟmUfyUTՄn(8jܥa0ڮ#[~N9t|gǿ+ q!t [==14;Itk5]=_~1%-]pA p,,ĄpW,D"ↄlH|4G]3-P^oi'Y/~ZҊV IPCiXZF Eʼn\ -lƋ:KB8O & {J~q/K_M;ϯ0- 3~.y}&L7kQO/P{搈QPZNN<88tMmŘg 7S9˸Sc(I 35r ?ZabC``G ls"yXPA^=0+\ɪa:唑zt$dMlf?N.i񟃸|RxP2r('=kNf?4grse暨:\l]u>t6j$ImsQ+k^b%h*iePF@'\}$bCS;DlrMнC\3cWԊ/&1N\^M8\R.=7,G[P- 7N4cp T9tv@<0mI<s,~1пuJLqϼ`4R`sУTO]t2J@~ok )A%Ncry:qb cBDwӊ?TKdC.OV_y{s{Gy_ܙL mK:8>rFz׫rPIETlFbLxՅߚU;,!]?FzsbB͹U5U~T>Z&9wlfJO` ףW :_6>'¼Oȟ6S1=򮷷A'Y4}"n r+őS(W\~D"X ߂4pIsT _xsev^AUfS?mFPr ~#uiX÷];ĎϔlEێOf~IC_AjY슥A>'fPa#ovݰla҈[a dЍ7ڼ3$f]2y6gE7Bb[vw.jޖɆRqMELK6 ̈́ GDG`o* +Pw{qLKugzgáM7oҔ| T@D-,ac//_8.} 6^seu 6GL;*\l%e^=v0 ʇyx1jm ^c Z 0`[ f&Fq-` @nfK(_IiĽ3Hz=>)0Y{2¹ٷhd6h9:@ L?D0Tf E$$ⲒoT:Cnj3 `7ߥ@bkr %ivSC-}< e1M&V|Aܾɀ:Ƚ<1-_BVlw`vUuiY6*~ sҰ2-_X]O)fISg)4i5V5m1|JsE>9О&IneLQ?l/ztTLg4D+z|ƛVDU9q+Lל3yEn@)/縗qkkm#5 ŌF]oe`䧦4c:'*'_E- zaU;OG'%j[VsnĜ ڬ/mPOM:pBz7pQU`kF\]&] 7r8)H'E۝{|Z\K[kkrݣDhԖ0aC:0'[Iݹ j1!2{ڢ9u>Т*:?·]iAXlUگxX#xT(T߽(d:?u;lֈ ^ztigy(nE*Ot{g;z잾0 }i|8޸)ajYkY(ZEo2d#'n8B6W{huX\{`+\r0U^ Y|%GeMJ,1?8 #z3?w> Yɾs.o9ČӉޢ< 'lƖBD*83oIYIמGL1MGԳ6 0/ wa{ڊ1ZS[+cQte=x yCM%AiM6)@up DhhH,.+嬉5X!9QMg&Gf^kYitTLOpP) ؄HT{-b~g`9-(iojrpP*2TE9+{n\czj&(*u+1"_]ol *p?#dP$mL)G1XGbj*FMOt^ayg+v7f ?DK]&}˯.` :0 z[Vp%'ÁJUrhCXZsژ.- L8,~2D"K?|3m8^3oOT{`|cg U9اeQs<ȭ0|V'p0AC~ZxĴ 9PylL"=9G<0umo6Y"ƥ^@˄EH wwp`ӻJ_5b=L7RNXˢ5A~˙kgwEҺS8C A'S(S3^?v6Pu- a5+h;HpL&Tqq}xJI3-2K}ΌI4'fgߨ/Qs dF4+$Q>::<A@Y[ `5t@.)L7`C푸LBϦpQp"jHc"?Fpk{\N *p+ϟ']lp ۔h@/&y4>՛mQRq M)i,Q6:b~q:t/XsaRxZl%[<դ=hGLj[u el},ˆ&g0%TÛBVlX‚ཡ o;uxIfZ&ʬ Q=6L;J$b N-`֑={5+IK^i^X֍<~օNcRdXjp-q>W_zL1V=G ilA/J:vb[<y4Bץ#. ]BДjDc),DغHBw y|8t]ݢʹ pK/(I|fpMr;Н[Gm;]o7?BOY Cu.$aʏcURMh0bW+m1+ࠬG[UL`7|5бֳP+lIU sAR'G9b$Φ߳͢hov5L^e04lB~v1e+ѕ$՗!c?e}UEa]K`Ǯ-s_ %ꑶ=2K- ̋pn4bWo]k$ƈZ4mf*'lHDQLtsswUv΀~^I/–x~gz-Ξ' sQƯe5~9ΚZ~ m6bHjx<QRTE #Vd2T#]GƔss-D6A°5!oe]lÔ5uQ͎d` bZA42\+ԂX]o] {O0@͌ x90X *EQ 4nnYzBE%OY51G5Mq,=?0뵊 W3>*૙aE|Bҋ!o(ޜx6dZC7F*i&: >(rǕ:wH}f֯C%IȆЋDj"{>c 9/J7CȌLj} K"_w<|WM5UVaHG2l8އ$f`1CǗ|;ZZ! LnY${&zKZh[d{˨sqOojˆA -Bh4o>;.^USM2/Vfpʟ?<̈́o[a`wx/YkjZ؛TĬA4[-fٔIt\*k`/|bG \k4%h-DrIITD \!j8RC >Ͽ`ԌNVse DB14=*ue m/s<#fZu,"f '.O$O r{GmdgHArqpWU%ղF Y7@2u/i0eCs6dSzݏ-lmkgCdsտ]TSK;n(6%srAPޞd 9 1iRщ0qTSDeSk#VwT;C%WZ(I%B@ ǀrFqGN(F27`Ee]pWqȚGR"r>'&M%)L| <.iI3ryDЮݐJѠھ!*ꓥw֔z{WBA If - 13h鲎_ZM| :RhƮuB[l>w$_}^dkT#H:|lO\PNNE%TN&^M< -g%VhaWa9cPv[*`#kt؇ GLjmߑ8s]h4Xs5yXL/Q6b,w/F?t>|^>:84` ֱ鮄I!:; ya9U[gTw/w kJNޓV'#'ɪ#?`JGo5d?]6QLex;^Iv3`܇vkf 3m:Ox3hHC!K^O|'!!װ鿠H8rѐ? Mq]P&z6yjCݳ"PF?$ Y%n=}Ȉ"pH/#k nv-̾hu/IB^ {?wQ<0w~ 3aa(hU熊r66 *ue;e> =K5Wϰ֋0eМU:W ehNEĔU@,>Wy~lfܳgfH']dbC%M%hOڛyˈ;S\`/S2)Dq_gZN?[2禂NZ jiI'Jl:YKn48X3tTAM=c1+9(l%.^R̸? h.‡鼖tJR<б͝5f%ird6UbDIȚ#J]~:;/dSؖXg )r "*~ d0ͥ(:KV iao~ڻ-~Erף@;wgpvE)=/=0SL~7DHTKm?] %A#g _)IlȳrTDOi#֘5SuJk~q/s )n#rdOb$B> }ycOhw`p1\m!b"u']7;EV=^w ,K_ `(. mZb09[zTq/_P.+gEqntf~𭘶j7RζX2X[y!܎ dF >_O7]ʂ&SYmf4̇wLū ܌#6tzDz 8}ћC842n6uW}2jQOht&91JGJ6 r-B h$n4,74oV[1䀆t>p%lϒX.Ӈ`)xE@%d7EK)^ nOCo:+1*;\nS4E-+;-ȟ6W$W,D_BO3Bc^IPOoʀ)}a/EKUAsؙ?ų3t.L{0V6`ڀ4"|  'H>浟P_u8&^Jj?%Uqbo Z!őS9X4,O?ٜc5 n^7oP[\U:HK._ W~1?ף[*,հ ՟`'7r^"pI3>p-B]Mlj7Z[>vu@-r"2/kI uRFi( XAvP(!,r6Z3p7אS΋bd҈{i2lK873\&kzz@_mVBYp,xڙX.3!4T#[7_J(|T J!&B͡s2R=Y5TLڗ_T2`Ms)wхmf}G˱_uIo5&j~ޙi:WO*;cBLCݚH8 `VB m%(i}q5f*zކ58:m ) [ӤoٴdB%栣8%ฌfL巶c}{4`$̖qSVq N7dsPD P0s _lL%C _Ȩ[9 ͽ{X65pnud AX1T=d!=̇ {*O $r#'%u!Ei;*$n O_vѝ>mG10Yo2 ]mJ(7P: 5J; ?8\;.GJp?E=obȬ* O4Z9ſF60 Xe%fq_U\ v箽9k=]Zr Jfel&Fhw_#=`'铱i~,(;[+ђG]U3/V7}o0,T$(iPϘ+# w (}.TpצaK*|GE'6^0w^~cŸ?<+vn:x2.ZLd\ KI726t=:xm%풄%B a j:+Y [|]iRS8.$d9!U={z++6mݏԊc>,Tm.FGM6#Iwx /kƳ"{7ST)W.=NE J)rg g"4'6;Umcܳ+:#c0Ԑ`n 5Wfyb6"SgIG%8n%z!歌 R)X / 2+:{ Q|B-b`.NnyDjzԵq}DIG+UD^Ru)W1i*.릴ّr!]Ieu:ΗouS 'Vz'³ n՗0᝴Vl=>M"DMo1ImC]8S+ m`D8%N(*-'TKr7pFf0mc b՛"|G^  W6#(~ZUm+(cw.DSG]N(AjdXHV%k糌l ns6I`#s3MAJHcx)"ߤ䩟˕g+aUcIscҌn\Cb]@RElҳ+V8/8"i9IL:Zu#O=[e@EpN<bcV4m=z;cOϑ>1[uH{A xb˵.%BKLy7Kڞkz6S&[D\fs6ݧ'Ygd eW-RrE|"_*D*J4C҅6'};"B&}24Ѥڴz&8tl'^1J~~luj gbP8 }.&ņci}N6ǓSUHzESu|R%d*lLS)H;ˋ;x˴6X _C t׿~7E+xn XGNN1j~o:iaUƭV<' $RRN5[+Yr;19pn LM:(9cYŖ^5DS1iҺs&\^%+otuj˥XO@"=w7vṋaiyBmN.Wز?lվS>B]bϵHkP[e[ &_>l"S,-49Mpy6|i"A|{ٚ,<>P](䃐6O!7NJejؕRoQ@ow-)taSiźݺ >Q=F&7Zk~B, msoX\Gkg`_(pj*:}3!KG%ȷ)Dzo'F- LjuX(#&=#Q;vzO!`i:@ #EWNy a!FW Rnp%?mFc|!Ie{؝Ag `e$N:8GF7&fzRG6 E8 UD᜺dN06V{BÁ%츔dE@XZlۜ*3^R PY?q/U?JAԈӲ;?y8KC;uK"W톩t |*$h\9S|7 J̷v.&,,FV.![ `TPW+F缠mh\ Ԑ d"ǁ04J'a4Rs9-PWw+RRi/ u]s bjygH\}^VKGul)#.$Xگ8v p$8 HpxLh,zO1qDJvdpsr#5+); v{e];9Y$ pL*ڎ;~Mz6cdhj{xqJgwuy; dՈ|5A8Ut?(0@A {%dfMsfmҏQI0ѓTeFwyk&P,WKb<ޙ[w˭H/AOI#eHыoVEfRLfZr~&2FC܈X{۹KKT9w~t朗b]_^ry9BĎ^P#&SD0KWQlŠ,0LI c58ކ2r^ aAȺL~xM a2 E]mcwB?u2wa oTz`VA.5y}o(Y Scsw1j"@׏bN.#07@2ӛ Ҝ[*ޢ003Gq%z&֘-0]$ܬ]-iqyYLSt+`N4d^Ȝ3BzT>7(o=}{T0yO)Ǖ78H*8;BE ͂DvuZZpXٖ kٻ6aiDϕ /~=WÏ\љB m$ |,BwRFVՃu3bCdU|3ZTa S]%(# HO58E<{ ckK|6ڹb_WKI{"ͬF*AYgd)~1L0L< zC[<ۤE"tߨZ mtJ!3&ZV%HtbEh=`soƨkžcy#bEnV.32o;64?ug!)YN08JR\\f;5n>u?SC:2l2s!/xJj[bKXl))J!%iYeiQ9=fyӓQ]fw&\Y0 [i2OyPtM?%z\`4ply( ҶY\;Ka+M^!_ME`!0 hRǝ,ã4*}lHdٸ2B_[LIΏ͎!C<(449ӯƪ۩HC,;p;pq=YPȩ`YkGq!Sܜ.]r 3x0{.۠NMJS`HmGk71͙Q2m4ew"31$DD#riε )Y]Ji'MnL>|TufM6En_x! #0!@nʼn#7[A^ gZ?hZ؏\*wV<3čaU-|7Ϋga s{Y?*־ޱ@4r, X? ޶ {;Q־s\`P]<HS.l4LgdֵQE9o#ȏ^篞!E|qxضyh%K,>6\(Q.zz?ժEJڋ펁uK⛵V@ /W$̙L+ K+:)_'V@#h "^Nr(?|.E29oJj[4mcJ *ʴf?]"@w .4Yn.fMR6"/~JIPYPJ[pk+2ѣ3@ΠUuīcJ~@,3pH5J7M7ԵޣY!%@˶n34(Re}w6}Vi*yIP';g8uT`Q^JeJmʔa__{bPzɋ|LA:P^O >V: c0Qx$XڄH\(q+&u}XHCa/m걜Ԙ8O.(R~,Wݷjhw-+B3XByp,Ƶ4WC%%ç1JlʮfR owQO P4@ HÃ(O:D㡁Dhr]ac46XG33)?IDWCG8V**Ty܆?( 5Ojxvg 2ә{qm_y5P0v W"*XN.SWg^g6Eg.RHbRn{W}+B2g7rfc}U [ @X(\=A7r+njs(<'WV6-/V[fMٷ1/~]Ho)Ҍ7'!5aTL鰣ax ߍ%%z{?3Sc9 *?`EnwFAԟڄpdx88N8>Au+9<(+wLAX_~*K`Zeɀ)]upJD˾N Zo}B Ko-qݞđeV54FwQX&8DGVDTg_zO}C?3Α >W2ȁz͘DFd²lFw;+*U}YvqG)BbI9!>}#*|;7v]yf4452 {G`~&ߕoo47ў$Rxg|D,VUSuoTĭ_4 lMsyr%(iYB-_NxEwd=.F mf[x;=VF8Ʊ,X5"4%# jpya _*$0Qʵ(|~~5x:R]xR8+rzU>\:֤|Q^6ѩAdER2`,ob@4p"ٯ>6B\Ӟ=R[idV,:;;<UD,}JJF 13W2'[J3`{I͚O(bBax߱<>W/S έ(i!Fg)2siu75`Hˠ}>0Uqo͉0p/ ΂A}AW!YVyGiBTe O A-ɟ af'X$m!ᷖzP@ i "ێ1=5SYQi>On\8xT-ne,mFɑgcQbؽ6n;9Oؒ:̉EB ,?륮hTaz v5}Fw_@%;ҬX*Nְ$3AjzNl)~^RDSa)-x4J5Xnyrc7ʜX+j|P-C+fo~ki]M'K0C C;kj7UGj į#9/gO"WTf04%1Xfޖn˔o<-~- tщ 3n_]͵y#v"d*Q'x2'>FB"+ᶪa|mMFa9ț0P5Ƿ^J@T/7ta)]]VgBNyGﲬ)ِ~ BH/rMFIzq >oe;H.T.~v !x?L,Cʙ9>@HwVCa sAudoИ<-8!wEuAZtrhlC Q\"Sv,2Ua=71tEZy_ʷ bEJd?=v[ jZ>tny9RHū2wy3x `Ss.+4yBJRgdKWw?pމ@_t6e,8fШf^ 0)sy?m(ȝ̴8YTj1hǸn%Fd%kN>Q@Ef"畆4mйZ@\`F/wv0!6mfB= rn:9̼x N4t>q1 04WĄ0w6hnhݺ[==<6[|2zD ,c&K.%ThKltj!s"/#EP$. 0Y&"m͙XCX0{*xMExm+$ FYӱ{Wy5 8kA_ KÊ-):u8̌W)1vN3<OlF0(hwݎܤAB9 N5ϯŘzxe4 A!89P?-\ Sa \@g3bWbֺoe=.rr_6``<`W۬3҇ : sXcc-J2r3hxsɂlP8ΘH)H O'J=XKYhB^/U!d>*VW獾e3-m ЈEEEY-Տ^AwTb܍yܪZz+(lBՅKϟDGzD?X.'a6 eMzt& !ǹuV\r*cc_+ ->i!܆*Av yк`@ꤊ>48+Bϝ5g*pi.L\|/9hZj~Ňͧ Gi \lMJ?Ju!J1/tU/Od; }ߩ339`nMyЏD@ 4P@C |"gEOB4XJ f@&x^ke۱}Wwصf9%n!r-mј5m`r:"9?^Y^uVņ2 VJNv=uzԼ{i6K,PD)b"`2f`i|FfZ_S)G,r^-M`پ WA˦M`&r+LbiF:^o$c+]ϫ;rP9d[8vMݒ™~-e]J%ā0B[IB忇ń~S^.fQ #cpLg:@Pt8) 0dgԾ"dж >DٚiZz$-<:l sVG&fE1zd }ͤ1:c4hش < ׾߫)_aǷs#d+haV S"I?U%o5;>z!%d7Ǖ_6a>WE G_o%th(UOu Jkk9YlyI{-:nܸ}&o"E_ϿQ@La),`#ҭx9DC_A._b;VwlY?qpSg7x9W]R ]:Bt=PNЁvI=af~rcc#Oӑ"/!1H16Y7FQ&KjM ElG}(nT҅@0U # <޲}y3 (0s|"wޣn )}G|{*>/}2L$UD$_|2z9ͬ+! x PHݻ4cguhBc WMXET'۷rVZ"Et.9Im&Uij=qcoO%?GzTN^#ݙWnKAɢ=Ξe<[L=6Vtu# P rkA ۨq6@_Q~,@[w+֭vR+_5ջTRzaqJ%hIǪrgӇj yȗxa2w/HvwkOnbM@&"SL ~Ľ/t7ޥN|aoDA{rg >tOS4|^M=5׸Ewd9|Q־-}Uh%! )\f~Al\ljL=;[`KP,+ :F(+1GMnv&?ڂKMD{l^ IPjx y怜p&u5vq,z1*aIb̊gLb"-ݒbYlLGC8i Kf]F%q$N;ShILAu33`<\)|PД-+5ۊ0PbP@5%UE`:D3 ڞtQ('Qc qwV1ޜQ_|lk#j#o]̀oHqb}2x |c\|yf2ƩJ-m[$~փb uZES4mWG>PAs|b*Nu62rOH [$ʵOv-T=JCC ˹uF,hC-`H4Sx/EDW4gtIFg]?ʙa0{z>}I(FȶOr'?$QKSz>D jSlߴ%/QmJ@.C-dW(V{]3pmޢ>V0.*;fdQL䫘óegx%-BԣdCQ[$8G#S(cGS=~P%I|ˁI8 $CqPpv LQJ;AݬA\&@8Y~"P/`Aywgu(xͿڇug^6^[~c2et1=GX zS^lkǝT';JR/{C|Aߎm^K9tpPg)brKJfy̹e\wEP8+2~Y4`7VN#nk3]4\wP`äC)$= glBཿ4Crc@3IyIy{,BONfK{y6l*2p8.4rmڸKg+8㖑-9SHLR'BsPܳ*Vn|I1u$jsU"~@]ೢ3L/O BНHD5LD@dɲjuPvFe8RIYQ/.UӀO|茠җ3d[+Ea#q-U hp/XtsjbsۧAfih;UU8RIv㽿/- c3I8C3h_.B"q JMBৱiu떎s .k#?@S{QA K,0ZZɳL96Մ#V }gj|H\7VdTo +t=us]X}P;u 9%WgYs\,_pfQn" }6;[+G:2kcO^{fVAI~qR4ǔ8|)[mB)dĬ.?E8 *B4C;Nk|\NjwjIܪgN$z' ٚݕ \\2?KFkץŻ0r/)`(vn4 "!7ҹD\_E ưA^oMZ(ʫK{*Z8PTwz+#NTנ!.KH;7sŊ,4<WtPgS>$Nk=ZSW֤E`易Ė%NX|ufc|ӎ.۲%a*8s6IS+}~F&3ic?7E;z|nzZ%(캫6\taQ-%`!Xr{O$F Ε32KPg_ CSc|9!/jxz i~r; 9fwk'8#e_p;xoܲF>hN 8I_;JQD7Ƀq܍;mQt~2@ਟbW^@qZ#6y /h ɢ0e΃c#\5̽Xڽ\3cx3U>2zh TJmT搫}(]ѪW46w[yBBx߁~N肐qV +xC=A.:TFY0UkvG?UfWeGb#HL/l$joijdn1G"\e4Js^X4Nd({0f]y7nB~.& *-z:VLozjfL5@qY4IVvŴ:ȥB _h2sx\j*aȦLtYя*Ti2ѡ^ÉHTQI"_8co_ i{bPKs-- ~sNd]M)JA߹tN^L!Oqa7I>{ uj]Hrlկ3bA/rI/yYGح\!y[ ˡDb)IOh`U;e- g%Od,aI97XE_7x0R@oofv}HFt@{4# A+Z!;&tn}NWqc. *Xs:0l{B&cU dud"T:\ njPMhK|Cժf~7aLp4+6mAу˯gR^L<.y/B}TEfqI./#IAmZKew^NȖJZ1U+cF #wښ`ffэT|$ / bUfGwv5|Sa%Qxz/F$$ C gTw(&tɚ͐謂'P(IVc-W ]bd(KeܨT) &{X_FeJ%2L42G y_@ _aI>URG`4[x|>`p|j z3H|6IA[1,~Ӄ+4ee6hl0 Z[ ";]ua?g7LhPm1euvm./ \d-8G|xJp!ANP㉀BdLE5_[0[khH`&G`Ք&޳ |3!txM2vWƩ/ڮMQܳB=\7 Ae1An|gϝɯ-.f̷ZZ'}zD.?څ)uiBv\}e{31f\Skz!H5Q͠9Dqs,ᇖmUdr /)"02{&|8 J6(F. vc/ySivzj$}e/ayU5<>43bɤ~a߁H']Pj^{BFa!5r6_T9*0^͵ڕ%P+8uyӝG?u^WbڻvP&y;ER[x#B@&3vLXuU9EMֻwb Yķ!LiO87pNTp(5 +ybY 6ԃRT @:3lWTa\E Afsmx9.O)f(zXl/Q#5]"fV{E JS-ըA) W[ǿ .2{ @Ʊ`_%Ʌ.Y@TOI 3:i4/n~U+QˣMLAotNc?O*疀 oO읔K^%­T5iC-MxAȮF[Ηx7 oA1udCO"]Q&B8{<0>v(9d} z8EHڗmP#XqZHTI% #bY,Bj^=챍t)2^`jƹF'}Sw) airG P3d؇œ /DoR81R@2>ˢ 5'yvB AA`D&zگTVȣL\2ŭ-L@+W΢۷Hg:]mn0 (TdFd΍2uBw}qH9 .Q`%^  UM^HFkzq+Ǘ* Q3U' 4rW ziFps"C&U:$ᑠ97$RٹTpch:!Cuu$S7Ϛ4' k̠Bf:Sf;6pUI;Rcd:KjhT $uJ֒**׃7tρQohRZ!Q7̔mD{|h$625y{Xe(:')-xu[1=ϋZ+BLI2-TҸ/J1Q uʓVr{cRfSts  o׭c \ Q(p{gͺt)wd nyٵ/&ԎfS@5b陭NB秿 LhRުFZPs!]FEuzH_'6hrA)6'XKf>iL7#̗^Ose[1w%u#0ϨSgUtӝ1x|w cn' |c:p{D\'3NHo,g'4%,7AGb@b Zpmep9uxQe0*(:l0:Gt4gK)E=I7'grc/8$70uƞ A絝Gz2MzײV|񄊰>5X]jA?m+23ިl\VU*\Q@gi#$tt{Wi,-0 pG5O~H=5d=*8>&}i, RޢT'mECʡ<o+w6l'hU W)ޢ<":>$WcmɎ앷:?'B@efzoV&f){k<-%Oa@KKA#$X_ F%|q-< 0Ns$_f߮~t{'J upf"RGw_ĩuYqU™9Z􌜭XjXibTaW8x$xYXdvv(tjG]Ϲ@ XޖRS±{o&c >xm'gմlt#SW/GR`7 5>qǖ¬,CZrlW5͡3O{}ryDa1}X+ND,u|5;F6%%$"SOH3u݆]vЀlzd]UU(WQhVe}Qfګv@c~5&Sͅ vh[t[n #iCbhWkC܌$dҼ,4σ:v k~4ZD鿲|;$n9(Kn1c%&2߀|DI";VY ߇ )BvւPm`[..{pƍ[I[4N H]Ա" EkT(*jEEB,d oGEZ|@>U߁Mu]N΢7C~5&C_mjHZޅ 9Shk=yBv_Pl>IIi<-1ޚIGuґ / _79"-z 6.S,߱ظjnz{"MA SO3Pg n>cLLx?Tmֺp޹9{v¤ր`3 ,N^n",3[?Qm'9:bQE(]23O+Yi(s9KkG xZDX* -쵂Sl3)@7翚%8Df.m&?5uS1IAİ_B=۩b<4 PTrf]>w:)^]/Vt>ѢkCUN| {^*y9BG2 4CCG -"Ц9eeGjcDj{U{i+i~}a@ Ch3Krj>gpI]x^hX~\=,]7-Gu|1䩵 mp35Nn7b~5T+CRx;j)R]G͛G@Է|֟\g$vڀ˕`qt#7 lJrL=?XeJP4UQHdá)ƧQ iyYj^neg+tZ$5;sQdO@%P)ҟ8IVm4tl A2w5 bd\S*}'t {6YgFf=8^V;K-`ſjH^79E6{E<)ʤZeւ͐0}(oh 0$Du߻A T VT̬+Hqۊ#{g8p4LTSꡆVfR ˥ĭzRNPۈD6lHR]nz)szxǁ,O<(j8_ՇFؤZAMnu`"rVc8NP "O[x/O2Aֹƒ_}`^JzIU%BMiDŻnD4+Ƶj*6/c',$vdѮ6OUE]jRAAbxV#w$zĈ%4N)XYq:]8K0*U P<$`t~7/Ç~Gӧo#SVS or/PQ0cL s>i|SpPjxJK"8WhďJ b;WzJIeٕUnYW^' N:v t SA XI9`<ާĕ]vD,k_n k`%d=Y qZu fcB"?*W>ψi/ݺB̴'#gApXPS]ŵ +7o޷ R:j^ranl>àPtJ>Ƭ2ʄRɗ(Lם7`3x1},P` ;ǁ!@eL , r)~}r?hƜՈ ȣOo.=jtƽ{7)G "5؂݌#:/xN, g.[PVvK%.p*+<' HAT3ouoڜ"SEHPR$W:)tٸl(prh3]B:eC.et!;(C۟%.HrCdKv0ytu^=Ĉ*?LˆxAp%91vw0uZuX%8Xhjmn<{tI@Y$U*W,D!![b3eRD.O_v&yd?5'ːdmJ8գ``u5})iӔ- Ro6.—۬ H(CƮ0?W^ڤʮ.ڏj=ҬUɉ|q8zf#3x(?Gg8'\w q\ګ`oip/д?V1k/f?liS_,d :?7R!PgC3"c])To6R93%2ȴ8#&4Z7G*ԫ[J~77G)۵1|F4-Ч"Dlu]Yg|hOVF߅IWAj6`4oz')jXCTUmƟ5b fy5G.2Puf@vU%S!9iwm1F2ztI6- bblRuRN,a*Fbyŗ7n5A5I;z_7f&^p7kWAN|9tڥ\RUi1"RZkoU)## .D389d'~'9Vɨ }vʄo6##[dvәf_}[&ѧE>H,~ŞX2;X㲩x  '/ k(H|fdבO ړQ7%kY̵.H q-0:an.9J'U[]]  CFƾπyTe0y <1ivb!2D~sPkOp>gfϧUZTY6e2[̟EѷjS} MG) ۽ iCn+L }WkrR4T@s4588(q#`{$']zq+эƨeD 6vS3^$NlBa}H:(8 ݏXe eca)ubؾ:B;EPD.beͼ !'z֕ |A|v:ʑ_\j T.nD!$]*1qvi7K.,]mY".eU9 OBcM7RlAg#)X6AᑑuI< #lp A]ㇳ"&'ԓ[*zTfK-tlj"֬-4(1ϸ 6Q r_ڶ^ztT<y-+VYn.|$F)+lG(|qaIkqGiFo\Z7@uYK@K ^OPkO%~Dbvп.5TQ|Njc/@1\lAR3 ?dǢcxp`q R7B \yL)pX_i.o3%$|%ƪmSGT6`ƙEE~_Xcܘnqv'ˍc*euG:=1+Rlxա x2BgOV-Rt Z8Wa:3\Atx&@a,xn. d3U)R mcI>&ٛ'nJ9x#E>F 5N8NWXyy&W󣍅Aۅkle4 \&@o_2ݮZDž"fQ@S@G2bWAKT8HW?t*5-¼)maEbWY"];#LFh[?QCedDnZ}TkE_Op?- T j{\Ɠ؞[Y##tj*tth2sϕ'&t|==UWKw:| (\vTՠ*N|AV@Y^ }2i!ᴑmsJߠ:,5Y$V!? \{Ƃ_$ |ſłQӺ3d%ހ/Uv_2jLe?jY|A٣?i3LG g $HFϡ\ jm٦-N&{AM኏f+x@#H J!?X Y[DG_>DyyrYobqmJf(n&æ5?s H0;ncKM P bGRvL)UmqC١D%Ƌf . +>icJl3l[heZůihd?9D`&mQ$&8R1MtZ!Ȋ4 H Zߺ&d76Em;bpĝa:E<5XS~Aaid/O=Wa#(z 0Bx#F Qjk~@)1t ^G!xWTi2}^ یթmtNy㲳 S (43*r8&r!U5>6<4 9! ]@F, (RHP)IMq3$n; ]d4_zY@gu?Vr #7OY}v+=|؛dtlDڭ;j\ ٿ /!~ތO ej&B+2ap&u˹BΗgE6}t7BXa  QeY uu*è;TE1Yxo4mӺ%u:4"v]# &b͝׮æf_n-#-nr7Mx 3}K<*0;_-$l3ӵ޾Fp[Nf)9nEWp[$s|AhfIoגYXƘ1Vq܁%DQfț߻*aV' $ b$}'%ba%6"jؙUŌH5_80#l~Fbߋ/{]L`8!Ae{DNI%BbO`VEY'*Ւ}ޢ>)g@!+H ii`EVګV!yC}菢U.WJ^tAlg_W)0|!LZ~1C `d4OAR4oo$7*{XޓO{hvq]f^ ,0 Z^=蹃?D-u1stzY .Rk_ HCu0\sҔݪQh!Wj 'S~}.yE]묅(ȑ:Ix^\mU Nɩ t.)r 0f4'09bo 7VT|44iK^nWqqR׭P:9H,@+e,? _G굊#=VD** AQ{kg-=Wl/-2 ӛ%N4DU ȱ"b*!m*{hy8[gNb;Ɯ(i`g7lGMiRwx&2,(P5>% Hgec@u1*K!io)ElEPYs,/KY`x<^@TI`k16!ӌp̮JϻJ*E}[VgO `wW_e=cR"k_I\.pȞR?JiJ;n]Dj )䇺hbˏ ]x+$|8(>rG4h޿#q~&k4KM7_دWfn[X_ص,~[>fQ(9d?_դéhC^E8ވJYo!2f #r~\DW YFź7 ҷfXi{ބ r <#$kZ *ծT78t=!o8DZFaMbJŭ NZ7w"Fv Y:I6cs7*&7&hɣ O!+iR;&b &}BeSfm#GԧQX".6ۋY. 10ұtS$ eG u Q>j.̬_}nVݽ8cϨl-c< %Q~Rhe*+u# ߘ>`w.fRoxZ(3A5cC(ל\. g^!@/㖘\|M-U9y;gYJ,GzMς PC"*ZmMMe]VXtawJ\߮89e *Dz_S SOX_ MgTcܾj]}UO*KhcD'\wWr_Xy$|i?uhGbFq&$}LTIV{KEz-(=5 W`Y7qbD Mn:0eĸ&׈~[ZzU(/;ͽ>eѲ#3w+:lJ{NNV-wL{QjW̠?eKA ]|̃R95gY%Vk0-ެDZlQSȿ7-LȬk'ʕp9bg -jcH:t$ E?afs#D*)d*H/_gT}2# [Fwⴝ#l XPl~)v&*&j}ث`bp28@B0H|h+$(M1Woӫ3};ܫŠS\3[\ܽtG(ȰZ9E*AY{n&,\q"w4xE#B.|o) ٣NnQdK;= ǑְِH/ɍr7_SǧvR/XTKxSr~ʂ:ǰpC-gؾk彟Fa Yt|_c[,@gvT_BӤ*(@J|wRvv.pNT'$ %VPCx2/jUׇ'6AU4P8iG=714/f.(zl^0TN}=iRqؗb:}\Nemr3_Ȇ F*!bgpJoz(VzF'v`L,ӡ hWU3/Ƭt%'7&3 9*S﯅Gx&Ċ@683Ϋ6Z* QcxH!U t9(=6+,E9ȷMos/Q_#I\ ET= ѐT*7UAw X ׸U/ fxr,j'rR5tQM4e=} ' oZkE 6(=eĈe\_{/6CD#ުq4vM{FK!}fD2s4‡;en84+նP9i'~cj.pdP(1&Ia{]U+$,OFhМGh&}y++9_;eD AYP(̖ ! 1 W_U^4?B-1]ʯxI;=dP6/3;5֒FuOTXx *aja,%дp`+GkS i#C&M[4͂(9퇉,M| li X;lC3HvsbdܔW>T)&KP7UU~W,hM";ѻ&6J-M[4R)ö9X A|3xx3;O`ҧmwͤ9!rnwnuv|2.ʟ m3iC^tX9'N\j!w 9NX6i˯c/j%2 Z=0y=ٰh5QAW2^ݬkw6`?%A}RnxE{2o_|R=+ /Aꢥ+x5 1btXد_%U0k0,t0 Ӄ>u'=WI3=Gr~9EwNxM(/49 ; Iv; ͐HInI6Qfc/+1Dfػ/5x؉m{äe.oB:yE'xY%ߥ֭N'!*iv_jwKua|)-((}h F04(xw8D w2J6~gKO67]n~kg}8>u*T.×iBuMA+qJfX S~NN-KEֱ'Ƶ셁#V ]-WQjF'*fOWv4BsX8\ xRu/v&NPmKb#ʊVbd;Apyb"ZaGbC`>ZCzrWv'iY8Xn7:"AguP M@MMhBU!b{仃w?lZě[N,n#pkg܃^Q-LE.^_ֺ#r=4k/ApdMFЃ4 ZKw<boGa-n_.2އ#/G::Ɯ~8}pǕ U0M1 jG 8 xMrTܾFyYEdTim.9`K+/\MM7 |J:eX|T[-u#xzE]ZW$42Ri$˓#k} zTAva'~11JW|ZM17f_{byJQwUylzZ8t|y=F rW-[Lz*]盻nIF<Ac{dty7QWa|9b(cX}#"ɿKS\׃%oEz$=ՐTǹb?fa?p%o'gL(\Ǹj-PDh_e+ʽ?-xv݋3.s{A͓lhɳmP߾K7YJ Sb!32 W*(}pdXXߣ#!U6l=H}K'^7Xi~5נ̭+էES&(KhZ3?KR}LAD`_r?!+xa 8A0!Y-g=(G"!B:-5M-'/s˼{ݴnIliG?0eA%kzN4Oo3c2гXϏ_}@g{`enYX꺃{& .oyf PK[`Q>94OZ!IdRStur|]g['X`_y0UKrw9$TqkΑG-dwA޷/FAKDJY hqq<Vb `Xs;ع%4>ݦ_$wb,eЍNH52%E%7/Ǩ)B^;ZXd&9.`!߇(bLWХmoCNQKW TH,wƽי Q0ӂ^]EY3Pwg`HCG$]0C(UМ ؛"*BY̍l`Hd ^QU S)X?;US- flx@ӱ:Ylѥ:r%A=z{dw} cb߿ち QZ)'phSQaޖy/cu4}H3H,piT!?aqe/ #=*Lrn=4BE:$ 1Y?D[[HJi+p]Kf}% .jӿOO R^ vȋ|~{q\utB¡i\ɲ;e1Q,\˂ϝ5 a z$qS()Ιee=34_vTv?ws2ރj> f$:pH/I@M! Bp NJAx=oa4qQCwGfe8v [%Xd\OR(U v]a>9đǭn* WYXgj%1Ymr̴,: .) 7:|0 q!{/K;."aT׸_W[u}3&ȱ`)&Ij2㔆7hH e]K_+9؍̓W ^/ 7)(io4 +[}Z]0cG\M`&u\Al~zFPd–1d"[މ '*"@i7о\7?$0)a7A ^7;?\ (sYI[#N !ǶNUgqAF-W1}pc8bڐsYra4J0,!3#L=W֗#B#'M)@V˺zzD:3ax f,u(0 L}7t@}ajyvusLNXZRgq:'_K.: ՚.kG,'_J ׽y6!NsT iRu %hʄX'%/1Ux6rEKqܬ\bijgȱd+bgQVgCeG,sTԤ2 >:K"$ݯbo-:_{ 7]7icyW޵EI ! N >V{[͡0^ĞP&h;%K sB!wÞ*W. Pf d23xc.X)r0R^~6]u I0AW[:V8ˌQ~'LWJѫ4dyh4l4.[f[" / [ؽW{1M ~aN.o/ cI|-8Ŧ)) ڎ'+ݫUwwV0~@k[x"e᝼s Q R}e}@gS+;lf!JeJj([5NkWV[@;[ՁйU/zv|$PΨ`G"ݯ!g5cq^a 8,39ľҝ,WA?n\@o|q(OzBY4>/ބ+'%=uX \Ё&nShpiR>V,ix#A* "$7nbt嘢#i៛xM!ث AH;knfTQ=84_< (Gz5$DPJGD9KwL tಈO$WcfG`R"sx,~Uahqs&=F_2{{ō1;F0f0g;::< j.٫(hhd̯uE˂P8[nT#kgp\ļSPҩD!61Sȯ'<9h*N_7s{FKDj6D7Jm2r/O+1;BO'2jYBN1ȁ,H&[w@^agxnmj†9>JjtRבe no\ܘp~0A%Xx.re6!lR!/>HR n-;Vn)i]",Hb&DRJ҆ن5I^Z:IE']$GiP/ i32 I'Batw@ld&!G JLBxD% 9B^̾ZMZ;y7tmjbɯf?`܉-krG"4K9S8W\n%ng{&̤n=Թ,1sCXwS /JdjmHjyz Ÿ=ˀ P~Pm5^;;t]yEݾ T3g=.I{m4GM~Pb s#?\8΁P״O\ <=3%3V}BNT6W7֝ ]$jǏy;}𒧖O"dh3Q?Gxhx9I P(SB&u erKLR>۷;dNn'}!}Qmeaq"Ѧ@}fň[4I ݔ`z^JtkL[vܲ_+bkõ92AWEh~taiN.?cBL/a^(VAs_"v l\D*"H7 7Ö1VnϜd-;.mpEڤ}ZJxLjny4a}^sR" 5 z E LʸcLBsfeW*J@lhi)ּ/PX[ N;Ylk<[內X@D [Hm-CGUI|_9ޠ RbyۤOH4$T-YUBqm6 +XDPLhp WHYTF.l[4=wanۇk?(a߱39g*/[6\݇R 3jώ |4)s>7?C#ڀ[P;.sIiCh?_QK#;L| wrӤUeBcg˱6B >L$zckβ4RD؎ExW4GX`⮞>?drޞ=xgN3 ? Фf]X&} b%D$ n&z BMG:NupJN _5Z|;1PyKU6Ot,-AT,>L7.rn1-IFD&fCUt"BDlpi2y8aN bT[]?+~~;[=CKm9Z}K lFo^+\ 5b ;KQi=B+}~ja5(aK_-){U/]w2IJm-21g=Hz|jO 8hl8yp*+JZT9XZnGY5;zO_BݼNe̓هUI_mT~" MF}-WN_"K,--Ml:GېWOήtr )?eѶ 4_^< Z^pJ+փj#CXb%5ſG]]hk]!{R&Tfl ~}w$SvJoU@XҢ^7\7 ofԈ.lF3AdƘ2ܢNHF.!mZ GgP.Uc(u>O m\Rܘs3'窔M>BcyMN'`6{A :2}ƗgEоvsr+WO Qce(SXfIjRY &) ۍ\5s@"?URX܁]&=o!rg̞\}p3 VŕT!o_oSt8 n>M6Je)6UeҴyq6g8 1.ĂQ)QK1Cc^ƵA#a2O"$pp #OŇnDWI}/Z~7TUldTG펕RO:VkJݍB0_PW*qOx.-9HdgRx3.ny/ڊUCC`wbGmb:">'Aޑicr18F:%ÀwQ= 1\?8f8nl3-aIُ>*wsE[t/JID)) N.)y`:NL{9^.6eݯVN%4w<驡gQ.̔t F?|PHr RVDK%CQ?{;7BSJ*%&4v%%ԖL gk=Kݤa冰%ƒ4Lf*ky: ]8m4Q=_a?FWfZ2Vj? 2_!U {% ".cZW#Bt?f?su\.scd)c&0fn!bQ\tyaqd5W)9FLrC;|O?wې͉)kw6]5 >~`4jg@ {kxAUF+KnԿcrpXc >G=+ЙnKևq4 d=gDetK?JswH,jD.ҵetB[!kP{{6Y5=WUȕ77k*C"mlܠJҋ[$;HL2 )g#C[#U}O|/4ɋGh7OT@uk[$OA-LRc! PEm&сa(nqFȒ~@tpUs}鎒Bbs".Q]~e&g61W`$M'bu2QxP&SjꪍAyAu^C2^ع< mλ3,2'ۃfVsR74FJAx d=_x;q|i}[2qʑЀCfXips݈CսRdz2L41HE>A(tyR#|MnD\grFq:xJn2ɥӣp?o=((uN&p Ϻc%v, "U+ͧ)^)hln겴 v7?wu? EMvD[[CrfkT!9,NRcMJ-a4?0* Ӕs&%3VU+#ulmDa>1;A4 0QywK5eRŗ򭺗f/';Lmm;ݳ]6?,5E HGMɜ#X~EEĵʧ vbR\:Y6#^0!~0awQr j^ 'i@]Lx[EA*96-pVzUaCG'3Cg(4Ҧ9{}`qٻ/6h_YS˓ ѫ=4L}} NjrÂ3,i`B- gb>|GgB؃,7ʢ<VR^y2@_{'N`b( ŠYvmd Xq(&<4Mnz1=Olx:CZk{CAF8`,1Xr$VQKAZpo"! Z Zfd_@0Qda =$fq 굛I~KsbꮖhJԐWBL!xWn:0l=.Xfp'8ug/ydx*gf {lE31E-gj&G~)yq] S/n姳_B #uFL,hYF1+W3<߈:#g R^̕ˮ/<6ofoB+~R `ݼ>,t(TV ivs@!)S{k uZu7KMŘ8Ivs0߲Ʉ!C ,fyY.[`˖ǶݐSߍ[U;w :q/TF# #K# ]-0][vOn2(C2[z0 ng{rcAY)_'dB)H Ǡiγņ kchZ GiEqwlrEpw:7(Zޡ'e-Ib̺SdI֦Ar+o\8jPC4@$ 5W=H hw,p*J~>Xԑ?y2 zGɉ mXtyv!B( ֢s,"`9E<TBl`7 k޲ya o5C~LJ4}dtT-4If.(;Qu%T7m8 xf.ߔO ̇mӒ^ (Z0T6)Ւ2AG xv&!+ \66 gvxynH;*LC)mbXJb]{yr{n"KZ t~#Rg|6T)46DDJ\-4qL7gvQ+2"צi\Wfwx]t:*y6VrPa2z}$ߢ4tIG:eAla^c&DVjNXn(F*)afnXT"zX@SLT,m -5_s1ظ}̴sRP!c,20 ]_b>Qud9ԃo&(PBXG-aLpCN9$;\% $|@!/FF%vV7pX.m;Ewb^raќ?材(t1I]+ƣ[ g6"N6GNB>ԗ=BF.xb7,2ɦK1ll]%;\-vvWXkytطzחnş>ԛUˎ|)S mw*a2<29 9Z:v?o 2LϚǘי7$; Lif~Wv هvD+DiMPeױJn?vG"JL+ngh8.TXd gϨ=K˔60_ЬZ3_lkG~6'r`?(ʃ-?SCi! )޴Uҁ,E`8??`ppp__0i:  z[نH4umfg͑4>af6hgʲ{D#=ϼƻU -U\t\UZZ")ߚv 6,+bnSyׯq>n5Wq"ZfM`}<.RU'ZǦ*=A[.45-8|RXe eg&/c>Zv{<9/wEcc-"U)dT@1qYw0U?JIrB5O/#1"l+-Rn1bMS Ww_粁 d*Jݩ,Vf!(Iˢ`Ӧ3 4ɷCb5b%,U8zH1^$sڽ><-U%q7)O}>nCگ^ѾKaY0'b?,cOq<:8=yٍF/`5i9<&e3N]>j d s-}j@3dz .mYO"'Hb$} 4L9| 9Qa~g%cBZ\ @|k.b6?1 y|wZ ֊KhPthT`GkKU$A\}9`AنЗczUK oP Y*_TcI2,]q0# {h'ݓr4Jr_&r9ͤ[ņ<6*lڼ, N+@ / La3ũ-swlځK1}e[AWWqXs΃t< Ge_'Dp~ScR~F5SE + P^iWlVp$`>j`u|*07=oQ =|.47gUc3f1+cwi'gb ёyƻ;ZqggE(DX-?vtlsPӣIߛWFlvp9) ޜ>aKh.}7$A?jFX ?LJ?;ѕ6':yoڇ7Z:p8ATO$ױH-KqXo&9o"~+VYXLf״Yo|5tʰEQt9I#o$u$rn;ZN[$} Ìm >dcA݃+wNDgq/w@Yᳮ-eX$vjoGW\5QN11l''!3aJ&c)8iJ|~Tڑ샢ktIJ邓ݥx;t­-fDl<+vMݱA(5>LK\Ψ2 mC&PhRr s4D&hRs;o@ PO\h,)% hp'vnE%!.}.ꄗk,m3!ZZ֋лk}2mXC*N@pD8>yM=QPj/OtHbOS7٩VjSTMY?89щ3Cih<|0yc^i|W0Yq^\  7^ᜏkҬ]/ߊ-sQrAv47Oti[8Y# -wŹFcCߥᡓ#Ԟ۫. [S15r#l7;gmɂKG䇡bHLPuOZ*®B sYto;!{)nO (s(Y3+| Id;P뤴rV d͋5siFqHC3n2&Zro*W'Ъ͘|HrsnW~ :[kQX\>xce^0 D1 ҖFũ<9PcVD+?μ\>,Y~k| ) =|B!:<"v^OAEVeBnĴӣ><0f@.l޿a9#j|?Q+d"/ʩ$\?/lclNl ֤ZjœW dsEzU)ΉFiG6O)48pՃIjE_$ W;>xt`yKh8`Kđn8BP:"eһi/[C6Th D悜MBI57m(0q,q"fZ00l^lћ;/ ߁XuTVgE0 Ez,qY[ XVݵ>b­,75!x|[ÿ8:#H-ZT<9xoAFO.tu= q7K TOТ']S;֠N'~i[x'~qpNQ=-)v+ݖ$%4~W23̶s0[JNۢ.-&jnE JYv$|đ -f->̊WJ|{Uk '??ˌ r8ݮT.L)<2LS1I}ZYe<iCT&JЪZZ?0~lp`P{sXX-àZ֩d.paKDAyOT9@{9de' gq*cLwF=?o pLvTz "hss^T!V+O cgf6/1fP荍eB`~{3Leq l:v>J)O ކ;VF^MG-`Zܡ_p2ZǂwI<]QKVP;5e46g +ㄔ萕I[\ ']!gd9rDAWgP:H{lHψ<>@2쭚·^骭f({+o=d4*DAIf?ׯŕ%TU8BY!.^љ`g/t Cn瀛;Oj삪( Ε6ih"qP#&2Xڅ>c[*iL~t ˴A(60 Uŷ+]0\gΐlxO'gYts۹lI> iEisJ}>aH &v1oyL5%MJ혀R|ƃȢj:ڣDZ.&9M _S)cskPշ2z%5e_=qAMI-Ϲֱ⭺CPkz xy FF3|4ZW>H1ƛfk>Cxy fdNp$Dsb@gl_X9` p5uH2eZ,I3#gX'?|SZ~[XQ7ׯ zE1 :?irYB6(J#xluT0b&ւ+\2~t}4M`(3&N#24}4:=7EPS|#{MθS]m`M.Hr[8o]UT< _.qP} S:٬" T># 2DH y|+쁘Ym⯕ mM9/ jQ`C-wO;Ƚ p}K@wx+*g8qJ8b*~Sgj2{4)Ab^ ";`d~τ_Bޫ/>iR#2]5CKs[l] qk?QOi3BH4p0N9B;֥HgI\yA%nZYwn]?H\nkU=:*:Pm >ZPIrh%Dq`%}V+KFPZOHdx/G\!d1wb$9pN?q *w/|뇞G}5s0){ Fz " L"`ZgJ̍YG1h/YvsДs5bt>CLs q /x*M<+%kL.fB_; m+')iaOžJgdxu͉/#Ĩ d`APÀO<3AٔĪnmN3%J`pB*Tv=V]g:I۲6IOڲB{ ]gӶ] CdԏIHn7wH`wLat,;r%P\~1~;U"@97RQ/؋Nfy[@E1G)wiNf X.)M%FHw9X aYǘH7`׌IfƆL5J8g4=Kny<~-S-,.YN|Yc_ήηd+Vr3MEI~iqٝlۚiUT Zk5yk/DG3Ⱥ:xK`SLYw|II( U6򰄵g2W-C(̟^+B|a\nƘ35)Ӹbq5bh}B Nyfr|i+@|%]OD[6YyF"gFv 4㋞[ҳYJh *=KhBmX+72yٻ٣v#s3fSK1РXn8wEv|Go ҊsܦEB5ϲD CP)h`LEoB]"Pn67l< )g:j=|lVnY^h٪XWbe="a#+KGmy>P%ʡ1HIjlF#rמc!xsj5&Iڹ; F,-ecN/HhnlX62 a3ePӰ/ˊWXיKo̵$6K|nC_O.B ic`oR*e0|d*S|(K.ok&'kݚ S]4kGdqak B I Au^da&pNEˇ_K"0R| Х,lMPr0IN嬖Dz:Ww:wN5`NMN[ll4,]6G`k2V:8XI+JJ"=Fb܉-i6c0SAAgY@v! mnj]/^QÝ0 %E?7 !kTHmBZ9$A GiWKDϫ.`&x2O--@[B~iaΐ0٤l{d_ 7S v_'0J8R[ޞF33d.`KF Ym|4/d &Chw(d}Q IC62 [" ɁmXQ.K<6WgdzOՄj* ͦt}JL,nysez[V} %6~ǺK:L^3G@֐OxĶŐҙC8Ga~6$W{$oQ~.=ZbJyF\&__!jv>iL!^JUY?Ӳ[K %SRO0?hwZ;xYb !=-UξUIۏ A(XUuxwC=Ov\rc.@5{I뤪$gyC|K"׼XɌTAӖ0#IwQrCKjG%wo.% z}鎴ŻVhd:nSVeλӝuࡢ}ێ)l^ "J^ɯEXGO)_)fŨ}Y|čC/0)D$.!C i5ЃIz/$"HpA7VXaԥlXq] @$!pgzDV5<j/ZirLH%E7A[̬^{;;7lk! ]?e'";mm"7{l|M߂HC^.[.|]So(k7[cD)f"Ѝo3v bF XbFLmh]0SW wW4>816<}#yǮa6TF&"ah5Nz/-LEg:Rr}>y ,= m!4jU`\.IXqP}z:R}I#He1Za?Ч2(ůM\ fK-Z`y6jSl9srA ڝZт|p> M9`zլ줺-ehWh?ӄ}q+/Nku0-SwhB}|nfU4i-׮bSsu{#/8w8bW6zU̿!7qAM׾$W]t8PԧjcdM|c ixWV1}¥7s̚wqmSWyZ ֭fy΃Rg\Nz@P !Ҵ[ݺ =f6H?dsFK&;8usn[Y׹Ͻ o)Gsuٓzs;ϑ[U^Nٟ<NraH 2K0cfȌ8X A 6@6nzT =,g;jӚ1p $yM)pU(pu'6FK[N>V%a S'yd( sC\'=x2gMAIB0˚0:5;QFͥ&$oe,/㧋qwmS]7;`ȅ3fImcމS79wU{CqHzlJGi޶/C.[є_nӇrkMJD4x4Uu_`W#ΎGawl`u./̰e FD}O/L Q6ޱFP2 /9`8Hs坎Z2*{x(YfyIsS01[ZWM}{]P*7cՁ\%hHvQK?J-;f"tSG{*q,FDhfVmx ÿ!T1W\`l1WO1PG?]N%JLS A@*jSc3*=gjH20X۔}%Q3~"i>B-;qy֟V0?5t`D|BBfRBzM?bRIoWʀG 57gws=N0<'(*[sĪ $װ:+@$^Oq<4q_qõXsnl),:=3~v+YTvJIM9Thz5d_&D=s?GB}w9dIrOp7\suMri?EtĚ8S3N Xci1d%I Q}6év/!c2oZص^H9-Ba02wA&J1\ zTN4*`Be8w׵EVR-H~i ^ѵIȡ/Z9ODǻJ$cws!&;/ll0f{ 0tYN#vϙPcXTb|P)gk4)K5 ϖZoڈ``]:`:lw ) 5Qɏ m$2̄&"`e7;N1"qc+#Yn$EyxoI_ˑoPutػ$*V}Ĕ^l<}SXi G&4rvcO2]ye͗LK+sfY/ˈ~X(1Xsbjﮢ+\W ]9A4>>`:5 yC(›Ǘ]OZf/i."xs5.̾vݱP6&@(7L>|"yVٌ}Bhh%DES+O`cfi$&0\nq7I"nPqlt. jOY@iUݹeɘmX4WXWmڧ5}CMuzޣM:UtU p 7#={/h#9ik}7u.ZuJ~r][5 88ka@l22u%^2~DƦdq:w3U(N8L䵧NpќϞ "XNeQ{NyB$#s o%),3ꤌH>5=qv^qnHʌ@IUyHÈdЊFCT57on/8ҧ{#fkD67ӎ5Q_l"(\h{r;oP4GYxcOv GK]Cgs .!09.$ @ROC=%8Ny ̛;*yBAug ⩀c5ެr3õCa8lTL~M3 n.Wn簼i:0±E+gm"5#z4bkߚт\J,Tnˠ]2N2(ۤj\ 3KQkX3uEuVҘNM !!C`l ߍUbͯ n2J?nr`^#[^ *{ JUMR'euzmTzt.%uTk;Iaeq͡=@/J7ɝ ' @L,^F$M䣏j, SEZ=*GCe@~E:*D@ Im4=*&Uh U=art'k`˼:@w4+#{;~r NtɄN D> Ζ 뤜'-mjACd!'W46)h='j3?jP r;Yugw^DT&TBϚ2JQwS*2'bYD_&_g_`ϯ$ScשGVi9cR0N=0=^k4w!0RRZjCpxI4ܧL޻Ek6c Q;Ʋ0؃Lp>I@:_P4s(=2ɮܩܙX'*]Wuk썝}h>>^Oؖ)`$"ڳjQ^b 6`NUWh7ϵX]- t]kaY:tKXqFbbY@ ,F%s=)GC#f=2cF]5` Ʉ^D5[ĪaU7-u-ӗAk8ON_[r@) 8:.1cYؙn@0; OpVlh+Up@G4r"O!-%569OYebCɫkS`e{Ҧ;Fb6DHvB30.@,7 q_LkS%H=BC DzQyFg5'#&nU7JǾv!&5~JY17(9aiʿ9%È(^3)ڣV=ޅRi~G I'=G|ASOsg>غRuc~/|R˲e_wLն$: 2ܗ8EEɬK;K_86\YC=]̦waڤJD:~u y ]7k|եE^{Yt <,ŶEἰWd fv BXThZ@S0 "P6-z}8)kKg\Іa)e7st@A5)2UҞ`IS-=~a˹N-"d% B6X->4/n uvJ!{}J663I$2- 'z)7W;\=v R1Yw+`F7n '6d|'aa]j?*X X?zN> FF<7zLLvz'sxsN6g싻dؐ^a[ׂ9 n=riуv XqP +v'kN*&7Yu $^,u %rscB{1vPJL0 s=|.LLȥw7BFգN# j3,X:@|2H}ldLa.x7m+3H)Հ#z—c[̓ x_ m4:CNaKHȖt_M5.J/^zWq\֏ "R:$u+>Mz$7xUr;^*>6;4X<㒚E*F0"!Ű]H|6aןV_4E.|&9zr;/B& f 0 pfq,˫U8/xzVGsBr\jU=3[|"a\W't,X~اɅC̋;2AbP^CdT_}d1i gU k}dtj.97.w۰nayhU<8XݡuuClU.K؟|J$ YC髪<(T9ǺW^"FKbg0fĕp6WCڔW[ +Э(ǚh&X.AG&tFWG|*EDxVt'WFyH"hI{XO][ ȆtSxEu'~KTAzb uK֔9zb/&RZхg%8,&t%b=@*1 -~GmD? n[[\{lWwDSD|)+Aƅ8av^;%JcC0M))ֆJ[HژYī&p[~4߫|y葸?xRL\a@=$05s 4L콖 (q-YcSb;O}2 M~õ'_MlW :8~r۠Gy;o|"%G R 4 B@-aT9˛3.ڦ ;_ҙ5$cdk A̲Jy)|2fXT\;h 9 )`U*%\6֜ĩ8Υ%ڥH^`\sͦY^ش:`ҒiY6v-U=[n L6GeS ;-{kLcG9Ч #(ػ"õY$H!tl )+&9Ʋgi(Q!H?}Z&FkzAQhCZ$O=Հ'Q7X+(D>/EbN`!CԾN0X-6 . jGD\fO{1 u~8Ejy8zp5gh=gLm[ ϑs"2d@\d[˖5(~3/ؼ`U^;Hf_"H<_?DdgԞ}gyDeȌSY*Gg1-r&qLdcn c80UF>l"yaD*,ɜ̙n"9$ipgWP*l'ÕQbEw?N9U$H&Fp)ס'7}ѬP1rRǢVp ިuJk>A u륖/k}Ҷ^xNѪ{[:@Kc 6= O?"MAֻ~dR϶Se~d5t7^DdnDh5cb|tz989~ݙU)hv |d <,UobXOGENŸA#:[j}he&в0C mUc*.OP[K^X}KN LiTu}{;\02&%Isڋ-K~ j(}*А@; 򙘅BK?+?wrF̡=ai]>U$xȻnx ~y(0,s/W:.s^u;pwxzEKOX[D,6h D@H_:^$FHY{䥚GD_ |B 0[+5 1)Za$\xGw dK15aH(T'`WY]l-QF{-\*t1OZ;*KHWS=,H 21&BB 16{m5`<kQv\lT$,ÜI4b-@ ց"AS]%RIr 5 ̀rHX*+ozyhf<*5q4W " /r-*מN}W;%TwqD_f6L-3lŨ!(T(Ҟ_{$w;iKj隊y(ܜX2Gg4W 'R_6*JÝ:  j6eaP|Gk<"V@1V]o1<#Їp/5f$۠i.*GY1'W;*yeN2e#Mq paT81V(v9e= >6E1'U!DPk࿾fvn4nD!I'*dwo@Ђus+%pLB*Nu_ La1@J{=ͅlM@+@VFgN5ل$A̫*Q?<4䇒׼tWB#zqU5%\vt򯱩)2Ѳ@/R[l/@ A 1 21fiZ!XN]B;Hh+I N]PTSvG9ĨbdK~Khח~aj{&;б"OvƘD ҥ]+d[;áUsdbMo;2a}'kVLiJKZ2f SOO "; pGˠY/j<[M[k` &y O*kâ>d{Jh|@Ǯ%oIIM m>hqxmD3BE#ٗE` h2u5~áj*qf6=k^z;%~4 :^zR.xo>W3s; 5 rh'+=B(¯bO(4zn0S2H8Sy=Gh:!Şk8=rO#f.L* { U!ݦT LR<`8- w%$S^ڎQbrX^V,VAԠ~,cC@z?E#]XP~ 4ch42(fԿ6o˅j~qK 8iPf,K#28W~쳅iˇMvc$U_ISQmŻ]|T|/]! 5=Zz졦.?|ybL$4u@.4`$⌅OHTwah5&*t _ʢg%!'qYGZ̈harl/,O_ ]ԳvmG@tL&3r?#LȁV鿔43Dd(cG"傗 xֲhobJ dQrخ (uDg|l4T4VyK!WkRTZϊ ?1{Iqn v*_o{8·A}kK{kZ}fW1+MNkF)F 7)ّ%%Jy@*}a7_u~aQEj4ʶo,{K ~JVjȋբy !럻!dE%ƈ/"z! hOb|WMx4׆4u9t2.QW:7.3|\?h˪̶fU|W]&:^?,i{U7|R6K {O>d0u8:'Pי5gr 95!c-GVc֩z"!uGxb.zwfBh!^ݙ %AIm2X`X'#v~ VZ:1WŶJ?sBB9P#uHBؑ<&(i}3(?=)xXOd3b7O412#L Z@F+ PG6ԗJj< `#`:u4&Ap%ĴL=%8Vx>3t!dn)?Cr 0.P yglIy$O?0/6iJ,d]b_WK:ӵk92]%\ʆrq k_!ٛ];/!Y ju=61O.-򜇇qqZC[!ύB$dAg}z)=yw_ ]7&$kgyz!*IC7RbX7үABie|5 Rm@WF @n +~5[ 6ʳP[:H>%V߸F$`cm咜+FK\v)^qY9>MYfckT[o"!ST/ȄbKWa>bÕsE->+ YR (+5OP|jg6V-ˉ[}F >b(>oAʔ ^.tI4"Drf ITZ;Lu̚y'ZmreQaeoImTNrf g2duO}S~3Z^BN1^X>0 $PPv7~˩a3Pުf' q441l-jyuk :&#^'o22!h{8E>! JҰ!A1Kpt /Wxyu`!e? 6 ,;踿6&` kP^Z|J $g'jb.Lk b{H@UO[,@HȢ+W8-!G (E͜EvgpE&_O 5ۺa\N9 qS,xxmܗn msņB L𱒳*3 qfbCZisSd.fSrc~vkX}a{)̈yzŗF)D"P*IU< RHkW?UFK>gZ˘V}[d4[wR:.]geɨEY.VYQd,*Ff_֪Uw%?Sߖ:3Fb"x_ar;çI`gY`%zg %J$}W1`%PdpE/]iN\0=QMȭ#mNoS"ypMHEtQptĦ8Z:!A ㄜ|=B en'9\ؔi/:mEorjK@yb~xjIŶNޏbHx, *ѿC!@~5SA!g2dڭ:>Βܣ4op 6[aɉՀ8,iPv"3 ^%s#vѶ4FOokz g ZNYݴwF]͢"Ba`wdI[{eL+&}ʶj捓q* dqvK5ֳ[UBj˻ᅠLf0:Ǔ* &GW-QvIKjь5 Mn!z*ҧ0vA-/bl$]Z$RrZ= ڇl1,5'rwn"rTIGg,/"Hȱr=|ӗ bDq?wkK])~h:[vJ ҦDÐ;BazL (>= )n*2 x|osO=6k}oHE2& t:8q:b3:8@ƵSy.d8˘rߢSωF7"}p! _C'Zͼ}m?HHMjpD!P/c&afXZUG|>(J< rI+Q9^-eXn 2.BZ](SևeL# 蘣Bk*P (KYiA@i˼g\h8!(d }?RZ >17*S0mC(6{/RpuaO*/ @2oݗ;P`-Wx b#9MGC_a4}RX&i%XPguqC 19WzqC~ddcj|bݢ&!UfijbJZ3AqYǚb)lLed_֖ǵs$XhB: Nު{ gFش+XWs\:B'/ +ڽ m|jNԙQg!=ó/\LJ VvA51\wo;gN?q:ezyK>'dq.2PM@:V&節XgZg"^- x8V7CF)Zр-e>B p[g+ RJ\K s ̂ :Bi(㆝om!,~Z:4Z7Vjf{L;}2vc;4MA[ ydlkS*8K/ثi ϠE:-/rWk9z|}V"'^}~ 1ɢF2T,\EaVUO_(Yf;ME@4@Q-OBBg.6W83N{I'@*WeqQ::"/9)am>w*;828aҦ0IAn!bvFEY 35; b答EҙqՅ؞k Vssa3 V/Dh,"T~`xqLD(԰JDom}&esC믌n͝n, Q6RLuz@0VF']4`k7b6 @i['!2;6[s5%͸MkVHm3wD. g^M*z˵Ya+]ߋMcMahdI|4A U$~YLV2xcN<%d`=S@vTDޠ Pf`AlҴ]wzbr!݅}=ok,I*٥U,M0v1 ޑx҈tnG֫kZ@azLNpam7Ф=>!o|HH+5+XGsԵ*;ioe]XǢ;ZNoឺtt7G[)ba^)0c N}媖o`-FfV6\)m83Jm6$&@ 0p{Ou urMU҄ImJ=?ڞrN )U)l>{2ż'ypƬ5FS5KT7dPs}ܰ10Ưd ^klj\h6K zM^G)yƒ&(ohMs.so^?֞ʻP[_!.Pٕ>sC$dd+jP"6B|rArpw;z\dX`敤r`mH[ 5̆ c56u Jc}x$I~[ifj]U#*M.%/E |,Vl| iQrUӰwom:?QXi՞*cVm,O6 ş/x P{ԭ-:pv.])rKn)6]a2p,MlC<+ZqЂR, xGwD](I֪ iJ)sn'yQmTfyu輸qmkBP_['S!?u@gVHN>ǵ܁[1ߚߒ )eHFX0>jh=SJn`v/sLM\B+ $K]xp'y@J);}THѾz>BcN8v'2| 0#E?{Ǧ^G4 vĞvM/:kxhqcs.V#tg}tBءpu*`a`_>wqM',g  s%-ky$Ϯ#}VuT)&r":%rSMQ]Z8?hE/d{WbU] C]f|P]5wA R邌Eh#ǃE4o5$`#|$Kr HF=\-?0\ZMBc9XS]K&56fÓ$UgN/]2́ Hzm iGM!TQ$wpFrS}'g,Ęݐl4Dp|`?yϧp!FEhv֥@C! }A_=1H)*V[Hݲ_e+~Bq) L _|A}p)ʪkohk9DJζ׻_j$.7oJgQDiEm~ Q ȚPq0gy kRoI R?]|Iz[JcыBsN&dv#в%kpT$1(\~ŁܨqdzHq mfZh{jmA ݊` ly0K+㗹@X c_IHљвK,NdIe#%%Jg]؀G" |Yə_eRPVsS31rG3|+ gw6q#VA_QT=̙"PR,0U?m]+(O7`dsVT"n{qPb8rVr5_I>x:;Evy\^*|ݼVf ޸}%51YWJ@t>TtƝ5|3>hȜ>F~ }D[?yȚ]9>*`di}4<0~Ӵ/`)#T(آ{I-A0E'JGc:WXM9Eb#7^Vi@ d]QBΥ:+l\x Z(6?J8"~c}DUTC}TM @T#ZNK.K;:_e[8W @ʼ ?[0.mldr ' $Ş6:?K&`F wu0vEQ-9d5> u9^PLbVpJ꥔DI ,ġ- jA>6좇Ys|m/,_{S,c?k-(dI=~qķVFۤgPtGY/SyG2ٔDt $L :% l5%oPi7q§T7{Cs iN{hV#﹐̄2 =?ʎ dHRCEگJ-O%\^8:/m}|06 PT!|BB3+>4'PRV6/^GL{bB uu_LCwvΥڣ; Js4՚Zbdf/QMfWk2S4%}P܍j(b-*lYN(Meo=myZg2Rh]^>'5:- `Zý+^EAb6XcU֚Q(Rӡ&ֺ֚GkBΛ% PSڸo1S'v,VE!rW0JI#xW4jo3*jbtR+ /!SBM8- v'`.7E!dFYτh2+<\?EvuèZ#XE2K+J Q~>jr,H%Xm:I_[ob)a416V(客 9krdgZ.T—kې딅YI0t]RL!/M1OӊQ}p zmIᐎmZQӈXQL۞g?:TI,u%Wc8)pCn-$3[Gϊ^.rs)EsÆ: 9%胺Ѽ bI= FY#\E.յDWYnP=4otˏ_h O^31c'ݤy0Zn\g2]}g㤆bTDٖ 3=kS^0G9փTaj^!I~pPR(6D} bP5exk7[kkAZ5m85}K:x]Q2j8A ~w^oѦ(>V՞/S`W gt3&ٝAAs9ȡvmMHCqW1 RNd ymvUZPb%,׻bT1h$|l QKdߢH1?,UwBLnO@KO/Mj&X SH/1\m.6սXC$4شX0X!)y3~^i[ !+|KlW_H8=!^$Д}M5ݞ.DYS_U>0}%0S~`%"deN0tH@*iO*8%?*^DMWo"?~f 2g*-ai/桝FpPk3 +OC#0šzbO͘ES<-4ӟ]AFU{mmiZ&1SkdeDQ:{⯯IZț~#-(9sĵM-޵ p0y8W!U8y|S\Ն{+ƅWj6Xmcm(c)D6Wm,Q y' h[Aa8f΂}"` pm LHFq7ĈY$L{%GgF܏#}ӕRIڇ8y!ng{2?^x.cq܈`rE{[ڳ W!G#a:`V]+^C{~s4e{0b&xs{smlrӷ=jmeˆ9)xN2-ؗ;5>V;O3j\hcy{1' ?[F9?Kn=x~ʰq C;y+m:4x%6^ƩMRrB? Х[dJCͨeQ yÈ`NeNOCEIכ Lۏr(f-W A<)-1R܄^bUNLT!Z~޲B_~a-#wnQOD2Н``˪;|pV]u$"U06}=,p5f*\ { 1N6h5=y@*福hU\y\"hۖ<]-꩗RXRQN6Dq?2 bUT³ CDn$FRXd6rFFG\z %190khh"xA:ζeSuCH;YG÷4@S^)$GBS;o/_*v|'xhH }19+=-1 !. 7yx8]'gp -J~ zp9)E{Kg-_AsۛKr HU{AZ6n"A]IR 'aWe}A,ݰ台ꑯ`Eѫj+ ;όJ]GFOl9L~2l:W;=z5Y'cQlŭ@Y {ʇIJ({ax^jg艂Fh?1~y,w9u~:on]c?"HG  sH=dU%n,ҐLAiƅhc3H=NOJrog{㒷epٽ$MGk#~?G&&\֎ Tzg3B˅Q9ֆ\xE)#AJ8aU:"Ւ‰0T} Obs6\X xB BHߍ3a(y =NbtpQwqѡ)@/?HTH$ 5Wtj)c~)0a}!4_5Qې+v#r$S qZ$sT[~S(SK nb2c| 6K␲u"PcݝdS~Vyf;4Li\Պp+\M\*}2Uv@ ݢMC:f$QbOEo<}[3donMTŀFTKa/P)B2sSx6ϩ9mpApܒtG&D5zW&|@`VfV:W]d)!c@T!D.{uh?: 9-.cƺsz  m¥S"~6fI?b>LZ #NV'1ۈz uM: ۶xo $m 5E-`sXApɗv8Uz$=FtfE%R!Jk2 :-ؗ_}y`+X ^Wn&GKWg>Fun䊢Z6˺~'=Ka4pF9A+/<*ufp 106iTu{B, ckk#B5D$rx dhamNhIQ;ޙUX2ISpEOq &4L.LL1Vb2@M|yNkt|E W2ߖi2PeDtLNz_b 9^Z@! nvud5܍ƺM<Z75u1T^ 75͍}cB#]x$\a6lAv.pgŴaeA2ciT%Q9g`,1*QS-**)8*G(#V&bG;u"ۙ1a[PRT3NK_9уt fGf+ 65bOwb; |VU^ANޏl1g 'w2ןbPG^G t>Ԏl+DDm͋كҩ\VeBY_"2ƃZѰHq́ukW,.¾K|ԖI~#6?˿\EҘp@8aEv=ڒѾ<+7+]ﺪ6=#tCJ;e^xj3Sy;f 'b"r+g7wgE@ N}AN#%q9Z?:T C2r|᭵'Ήd$!Y>>iG1*qKf^4I<0pUϗ|gNk,%\@"[J|#D`\6 {f_Vq4H:;]N*dkz=š!VI/`5bA#)paʌ~bI@@!U֘5۾F(#3XKYZoûpxk Y⬝}"nY/֦D=:z7x͉w2<|qy1٥;ī0xb>H[3N*L23 "MFQ=~wD3Cs^ԣKcWI2 :jq /tH8-lm3%\jwo~<68(Nh9mbGRᚈ}!U 鼃f.TCنxx{*ϫìU'y#뒁FY]) 5˾jcWy]ί[C-$?o6(w_dexzjE1C.M$%)/Z\1Vx±fxL%fG }^iM͗_jf2 _&O_{ia+#\hF9)!yUsL=ð"MK`|լsju2*݉7NLu`꟞yUڟ Sϼ\-g?՞f6=-oo{&K:ڏȮRj[9\;{>H-!o\.2zs?{-`dQU#p4+JݴC [kSIÛVy˱!gq2C@yZ_:iY@ Iw{ل[eqԊM2MS wp!of6cgӓyҐdHܝۢ0[e/Cz-^3|:ԙ+I4u55=͛Vs7ԋA?ĵϧ!lCnkm,cK 9M},Hԥ;4 OPkc@գ~\tsGYNq/Ml:[l4՜*', ޗ)?ێzEZ#Ҏ;a[Wlv;?YON崜q8_'E ՓDs/ѹg8X0q)M& qR4AՑjrș2<2,q^ǒ?mm |zE3su!:PY4 u|!u,ÞO<#Fn4iqF-3'rRTa8R~UBEly)@@ 蜮oPKxЄYD!a} nGyx]Ix'E0kjwgm_8N4Z5-UalrRrKΎRĽGwm̲ 6,Q\xԒE]1־XJ3.z ! &zKGEp4p-LSDtr%K}ڇG+_ ȉM^ uK.0X{t5Mh@U:F2P}@g(׹bE Q4^-Q8| Bo|B%EW ^x*s$\j/C@MD2&I.vQjn6ވL^<~YPB~ü#/!a6s^4(Dh޻B\>jl z5O, c%PÐlڅ;?ٳu8]6\Ć\p"/u9qt.*Ehl: 6,u<ȣm r*+OЀCihgEY3f I,~sߘm|YziTłw #+u-4C4%}"kYq6HMX&iRǯHueX?: ?W?]I##N,4aH" rmnk'߃c)>[ Jn'=Z<)Ko>BoH#ҨkJ=[Np7ޢcܳok|n-(0s>ԉF+ ɼd^' Ca$m ^,;7Qm@)Gq6~4L r<f{6DT#N{($x+fe1l|iedN5E GfwY;7.~8n $ll9T1+ EٳI $-2ZF\]PShw-B337*:% |Ch~#}O%!! Ju~eᩄM#B=DkmCԖxBO0`/ |7#of6<{[lo= f;g#Cj#*Z>`p9yp_=ұy#o qs@i#YHf*(umW2H,4u5sT a|B#U xG '0Ѣ6VWd&}#IEQ8K"TTo`cEU~}JfZSQ~ ;3c=VO,QB5ȹoiĢxKgzc4;*xp۵{V: BPP67"%R]r"ON >XXX(Aq1BYyHR۰% HN-.釸y,J&`cRJ䅔ob__=ݍjK -exDv ^:)dR1m+٦IZyZ'~Um75 s9LZAPz|Q4Èm-+)K.IvmIPaۿ Z $| Ci6|fÒxaI;睊ۑ~|RQSp Gi3`S_U bB>iVѿ2y{XM]@:u4YP rgFTs|;'$baq.6W'TCA4VQY8 isy;KK!kw/m'WG\.v\׈a 5]Z;s#FHMO^4!-BkWv`tO M($HP#@V +g ǒ8y=ٳ?Dީ{/IEv̏3P)"U4'8K mGܱYu]z_h?@o D,g-1dDmd +8!َ͜r"MQql"4k6]727 lo\\~ْb1}摨@A,7x)W~rr*V=)\il_l_` 'Sk=MO% #y ^l"Z0]nS/)^p# =I+'nO\o7sVQV~G|wjZLivhBFdL?ѾFm%1YA?b^V"pxϏTK{Aus]vt,('Sdt 9` 9s+\A J{{hxΉvń߽@~l7uaiғjY> DT7@SS/7v3x<3Q\4qwMi:<A΀H6s,Y}+䌳 FuWMV+[b*x9x~[icZE4b0k @ \_%r2 ~ɊsspktHl%jbE/VF~XwJdtrH 2rxH) /ijOEB*Ng\JWmz_U}B{˾H4r$O.e(pp|,WLdG*ɤǯ(S[PkaW1?u ٜiQ[ h)rSd~G~ES@ 6z:)giHE"X21 v07te+mќ!Ua؂cYWE/"YၭDy #j 0e sCъQRѭXHsn[_,)~6вwҕ>-n-n~;33k3zD11roZK6-P^qޥ=OsfMx4qr7 Q|7?~jL1PeU.?7ܘ~SU}HTڴ620OSQ'ŤuBCo#t?Vo )>WDOw&OSa^vKԭ;O{6v\εA59Ȯb/B5I GIb9''k`8@}Tʦ6K%$H+TcuDF_$&ʍY?M>y[Ǜ:PayB7 HI:ICG3,}( ?^0n`+^|7ŊP",EٜUւył;=z.Rj M# g ǔrK(^-YɠEI nS*Z5 hQK!Oۘv iē[6#Ň9ؼ`c2WLV>%r 'QPȮwnB/QW|OC!d=j% dGj73aB )C:>L )+d~ Kwp[XQ@{^a8Y~vޙް u?ulQ0uNi]W4yli)g#z358 l FȜ@@*CgqbHukb|d%?v pR {&~V,mơt !ED;/+ZKeAm5مaRܟ&#d wL1[r RI-y°Buj;?]-$=5* I* Na*U۱*[>ch Sv ; 4Zʶ=i ~AeYɰHg|ݘ[LwĶ[\s":&Ct/~{ OekiU6Jچ.|٥8KyϒIP rWczjkӃ' m&/j&P};@JhC2!n)}3th,Ocs|S!9.fkO]^)G)+PO470:e}>PHc` n?KX^􏆑>7->jT]U*phD aˑ>)킷9ը@%$'f "$& lk*.ecJb̕ QF>\>$}DguN&gGb2Y~QKK,L?ӡ*s./"fcEˇ IQ(:4挗Z ^ӕxO3OaشDmQ 1nE p{bL%j;ܣMLXJkcUvfr@2bQT^< msjyjKcM^jJ>9V 6A.V7PpҴq>%uM .~[ (Yrt(?$}ʫ![d+bУyXs fNs;zjKΦTcjK>" %'Vd_H;,A3iԑ-/jf.hnlLWv7 +1)(`OK- xT88EmIQ1ݿQq-BAEF unDHccKyΌc!pG8;Il ӁP@gZQQzuPIb@Z6Tq@jMSz%eHM.2%m Ux.#_6pv[xȵy:zjs hin#~ޏƭy A z8-6N9Megl'd]A#`wVs^&Ka\J`1{+sw2Ov(6߳s$PM} @5?(H\BuBTuRb5&˜GGN6Frr)"qybf2b,;jݼ3PÆX΅ԌxwCsH lS̕&suجX8Ze1yUw )Zqqh/zF/kf11t%e߾5@MwQ89ҾiYd,4ޣ!gĂIXkcmU`i-]n2ҭk~fXZRl3,KWPbvw7}`ДŠjHFiU~/[vO:TVQ<z%fX;$(*5tGCP6?ȋMTHxg[7 v'R6!{dn/]Hxȣd{K=3Z 7JzEȟ8,2lϴ~#l\D.-଄_~A0W'(O86◓TT3'N~Yw\w+ D߽2vO;ޘg)}T+Qe+|J:H4emPkB\s)V<X=_M;D.28 .gś(T7Hbsv{ 3WVo] "un4 lEȻsɟ0}*@^?߅IQg-ƻ懻q+I>!5WZKSw> >DP9{}uXkM*")^u54[atnKTj%ԐsǯN -e|-?]`nxGA}Bǹ䈔 470 }lD|#ȡR|yzLl1Ћ%]!=´>C$jee~{‡?qoU PJ"{ Ua0I}Z8NN>)#š~EW*rS*R{- H.;TzSǽw] X%Ma͡ڏq .#>Aj8wЀ[1&&X)n4#cʺ2:LRsT_3OnAK-@ @'E{'—"m5Z_v̬.R4 }L"Z+.AT5' ٸ \Rӟ ~Ac 㑴hg 9SXv OGn[E4\͖SA Z[ʐg<7hޑmb_iy-B8n;\qYf>N%. S0#H-"C녝zKrț.UJv$7yWl H=D7ݰ'@\hl+74aROyo6zV6B?+S_oVkJZ&!hOn{#z22dw.W&;$cɿ À>n6j:J;u!$"tܞU|c8 ߴKU%-]eFkuUJ8VP7N]y~EAlG5<|px];8kPTj'aYwd ݨʝC_m~?Q]K $v1C}0c8iš諂[Q/^ M7t#RVHeC)huKʨ2j^E@Rʟ5c\uegӠ!T7"jlFf`ۺK48 3ˡcpIÚnEWxm&[wb/J1 J;QNQ, }+U%3jlDT@w]@zS@cI~+$"=:q O)zBvTjQM| >5Zn?H^K@cY[q p@rTrm1lOq>{|sFsllrSix@[,[hԵs(8)t˔kA~rwu4<|(%ws4 3&RF[s G~Cw)L`16O1:AC]@w b}JFh'[AC&V MM.H(&#O1AIhekR$w&S}Fk I朑0 Aq W;"jħnQ PV ^eר`kRN!H Y˽jgW%-(F۪)!}z LM0s@`-ҖI[$nKlH1CMH+%N|01esKw}tbKU}T00 -͗d)H߬x&}\btFXW~`;j QlHŏpuU$niUr;Q$@ Jjt16#';Rtƌtx/ r #j=GIUj\~ nt=\2A@O+ zc@kk ɶ#Wr[ <|&v)1A]>9|R:#JS&4cWe3ѢsZ%.\mLj>^ACod%y̚!g~yVS;F](d t|7c2l9ΥBU2cx2jxf'= d1k֕SJ{,&W&}Np mf^YUɠ:L-<52F!'TLm1>1ŀa+V3 3faK!?cp gJ}uq[.Bc6?%dr˧ N{)kcf^Փ3~7#؇ߙ/a#PExnؤLGhn<ɝm-GL#r7z5tx);ag}"(E- WqƦ*;7#} ٝs?*'ZK$` 7(% Kap4O  =H!vfɬ{KD8R$eT;َ/"Q x6n^ J@;҈xy/w [+ͭ+Pӗ$HA.yN:Q#'3*(ڔh)`]4˾t |lJdV6/2=.Ot*|˂Lcm,mP66@.NBS|7s^ 'M"E@ p9t+|u|. g^].вB'$ NU8<=nz_S{# dHGc8Ey@T2{/DBs DgH>HOqW\At&%^:y" 6LPg$.#Rd[8t$X-%` v2L2ypR*5R3J%~}x\H"&s$Y=#I9F3! 'd=h"^1ŽG֊B;N=Xya:K#o.FP^V+~[6z fʮ)E ٳ?4$=?Ta!8D1u∄w6=^f~Vm^osnoDzR_p7:$M*AҡB~R  E'N/[mzB\ 9h)J[w4Z<_c\Dy,k(iNiM֝7ͼKU 1!t2ruܔ:(&Y"#WX G|.B= o[a?l4hb&Ǘ>nr K%lp*$mhykڷ`,#s*Deg n1Oc WLayjڥ|>~4\v}NԲ3`,Y>ՕiTߪ5̖^ >S耮ptaq: t+~W&,AI'҈OUVlGhjCŅ&.~Uޫ /[0QBLE!HۦL]y{IzH.qxefFэv [vV9Z2IG$pG s#j%eZ^5|)@f;Ɣ=m3hJֵO8PGZզx! lЎ?#sMhn­ EI\[Qtl{r:V}Hifs[ )iHk`| }8vqDڢsBH^dz|u>DpM~ >L.1C(ѣխn+. k&6UC.~%mp<#ϖ@hڽڜ96rJߢ!X{53M9cA2y˥Etc+iSI zZ=Buf!u.b]OBzy_pmMgh%Z5g[2' АɈj@ͩC.oL5wT5 9*cC=8o8Z6.xd¶VLzjO\ihE!?\L3\3DU R(hsw0WOZ_оhz";4W \RZ }rxH?t!fυS|ZEE!l߱# ♤\1]CY/ #Sb}a߁Cw||DcŦiNGyw.әzNV;ΝCmM e#\aiL[: EwDb]cZ6Pj?¸ooe)EКnp!@ǵތ!z۟"0ڮ|ymxI(\70Tu8rP\r]k}Luz 9@qHƭ}9DVy>:h$r3IDj ,J  /5J}2O~ 淧P-&5p3vQ+Sտ\.\x*U񔤤P4 @0=jAuq^زL^OY g7ɼ7 ιIr8bV>g J:#9Dw~ (@t5ː2m S3M֝AE#cGSP'@NLz6_^RSŜ3sjq_. k7_} ؊*[]Qy\}cz he0. KJ+1i= NݪGr%>ıIj&p̮/؁cu֢(?=[Cpir^?m*k0e<˳]$S[y3, wx DUXq7gQe`:4+[l, 11Eyŋ3b:_0p% q&$I@^M0S0s(5w͝L'!}FGK}HFhJ;IhRklXz߮X=gJsylJlN=iLV" |M8T$BwGZZmw v!`W$rI-Y&M}1IRt4t+OERnvb43 ObR{* acxGCg(aoTTq{d9] 'NB<5 =C0YQ[J4\F9'W `i"(Q U2]rȐ)#W$.ׇ^Y1 %wII!j|msND'.O"̻tX?9@nj݂+ U1=Y,=)\?}KN .59u&9%/LUkHxq\*iݛklݨMɩ%N]јמX0`dh1K/˪(o1OQS #Ov oGbЫx?W̞hakx?Pk9Akki9QnZ"%UhvVxm&hQcK5fm S^cV7*sj'V±ܛs?iԦ8 %IL%h0t+4vsh{zV}qၑP?3:QPVkʀq^Ǚjo:-\|{D,.RaCm퉟=XX¥L8 /5/ї^ˊy[E[-y/A#$v [PTĀ8@̽\EpId/?>怖*T`E`' {?os "5b9.ݴEe9Udس?ftZM|uF+a*R:ȈÕM.yWG:TԬM#C2Af* c6#7j%*6/l1:,xCF1KG_/ŒÐ!14;&㿜+m>.R+C$]`}sf,gUXp"SFt+t[XWhrc Z*bM`a?#1{qA2bGWkw zSNY;:C㿖\Bm廻0ߛ&T!o|"RSʄ;s>})h ݦi).2M54wAA͂Ȝs@Ũ ~o="Ng7f2)̍r8Dn⇢m7==tѺ:q:2f֠?}oNTXV_~6.ìLt[TCl c+){ ͖'\pΰ.b П 912MB,5-ꓭYN,́V !Օ1ӎ~Y)%Q **HPbV QuDyE^IKh6h~E73xDH<[-;咷pcHuTE?Yr"3̓;1Dӣ{]l DCdLrle=ؑN[}1J V^G/[^ĝLcz0qyInAZjBm2ޛ() {$y 5._i3w8BScdW4L\RɃƘV$U2- '`k:l"l8jBpրko hrg\~htYX^O%YΗp˸ L3w}D8 8݄+O@T8^4ZF-gx gOйaǚ+IP#͔`P,BxrlSLhH(j|Hxi j)R*$I8ŖaȻd`}%鹯lK+u:kl@LNp]1t(\bB> :<`ܒ %%2J_V.3Z,{e|s=r`Gf{P%,.re#6OrSAq;r;2ULY&H`g= .TS'eqwxUฎ.l(}㪨q֘r|1T^n򫈄A]u͈ j&13Ws!itO?Hn%4q.rjUFh[> sYm@֠o3fIx[A>O02M?ggBZ݈0غH nS"}~*cb?sfj\h=d 9%F'k'p)0 CUf}ۇe= \Gt- ^B zF-ȽFk8*G!}pY/#Er1bi֨H J5>ix N򛑀ybq$PJP<94(Xѱ[SBs7 oƄu!7a{)P-~yo:;2ȉƀ_)usZ+9 }aCB~PP;2:€- Eard(,\ylF$}[{SDc]:4ɭ0όp2_xZڗTz{Z̟f\yq([eOꕐØ1Wd񖌴V(ij}?YߟDhCQ<&{ͬ fSeqU:pL*`FO,RФF庒vp҅E!iø;mhIeK!ϫzM? g DG&վ+v,جOCNjUk(t+ꨯr<H)|:0~,alOTzt {ETc3y<ZA2qNP #!i8֙:LEQA\. $'cTk1}^'Sl.+& b8 1ƙf3Rzch߃yA&\΢{ [8=V 5fm"!Y)GaPU"Bt+xݎ&;WijI*Y{xqr.-G+*ůb>:~go~:YwōF1b[H}QF@, {Q S|-UJ6#/R#`׬4 RMBmhIKqڽ]A+FIL-t0,Ed_ltmR2bފAXb hv43}ʣg*w75qw-?%h"ꎌXZO!RU\e>o"~JPBtUMy"RjA/ԣ2<7&wm9SČ?Kg zJF"1npg% vMZj}Cc!}0ׅ. ~)a[o&T"&qdOK-x:}4JP t=L >Fw~\Ja(+H/Iif?!sʼݘu B|Pq >dǻ X@عDgHŒ`LMuz6ѡx3ޢbVv&hG{>x(p8o_' ZPyd 0q,ВC>kin,ZgYCd+n $Aƹ|H C(-z0v̓eY^Gyg'{1ǝRl#}!CLjmd?S?]i>bus~ͳ8AL0CۚF.CY<`n/@TtO& ג2tav'sON:Rt禥 @2apv+%D..ac?CfPX[\U1,է2?4Y'p;K*>Rj%>*6#*TFrV8%䍐ˎeDF#M4_~_}m0~{nۭRA2ȉq2O (/fD*Oߖq47*uOC^MP-ho¸Li;RdBRt.3KLƷ p]ʟ 0i۔0D&ItthE(<4KjP嬏%ܛT#n7Ȼ )5n]mq6c Ō!R^scw31^`N,YOl1Bz k$KU׷,S/peuqn0E]aˌvBۭC^ou mA5M .`j`isA@jSE8ΰ: $[;^voܬKSYu6QH,"ۮwAF.'0A"W<ֻްG<:}H 49{5vI]_eϛ8)JjG[ܝ>$K_TP)JӰPT0H41_(?gcțԧvzriqC=YyshL.(Et*huqn& Jn!ЕT%Ҿ%/ r[J NJa7幣C%pM 0䉱3jv $;sg=F\ 2t/CNcoWaA&.[Po u|,/ }i,}M a~"9")#2oH YSӆ|ĒM|Ger.yZiCǀ/~(CM^b9s+)sӔPi0Urf,*v''H]D9s7L|TOf?d & Xh}`EݐC:L8wt8 ECQgݶp~qG _etgb5p^`2Qk"L+~Kö5_qiى|蔷КaJ/)ظlL݅Li2pXoº?ȶ8Gϗs(9CNT[(3,W@zhNקUZh-k,!#Q礣0'Q>\π-pVN Hn4SRFk,nܪdwmx O/㌀Ndj ՛hEwS\Y[ q&9)$G,r9c{|!<#v4B񂆇K)h1ʹM gƵʭQ&js@eUEQȯBc+Ƴ?$VOzl؇<{+Wcbj2RT}H/@?̂U73en&>R$FXh.6ɲ9 `k-dw$nDjMQqH#@V ]4SUCXx]c͟O%BRTjԋGc_lv<# XQqtUwk!GI*gLm@x}ٍl+찚-93<\d]7 z% hQ'k O>ȸL$ 1ޙ&0rN Y]=->R*'#Y? Y/Dcrmk/9vS؄{6PJ3lqEaOa*il|Ұ;N[q8kf)N=HLfݦ:W4)g'_I-ktbi|4y՛u؂M!WfM+vQq1'i-b'dK |Lt!|2LdM=`yBrSk>=4 ,#H0͈Ԝ<KeҺ?/e d쑎7P\;jJQ.4ݦd=v_{SzrT rLH)> G[3Y]M{ٽ%+%tL-QZ7-RUH'H7l.ˇª汵J0Lj8<jqQ8r?3p0&V,CH挪L葯~1ЋӞIq qYh=l-˝OK :H~{8:Ev#̥dR; j7`~ Thq}whjn)tGS[HwJ--N/nb xa0@OlXsuahCpӆ=2̘^ t\6d3NƅE?b "9 ։[PN >/ڃ33~HػT&0{i:<8F[8<%Qe&TKኑ`Q:ΝObfO=h4>>]!O]9К0Ō$C0_ׁz KesZI/J};x(HQ kWm])D1ac5X[vPB)Ť#Qm{Kze: 04o4\oJ^R+kBT4W2˹۪5H-nbkY/qR5Vsva'jsv6*xx*p^V 5-M MgzD2yL{g,YZopf9`57Ǘ_Xza|D q`JTz .i`yH?W99au y`Uu>gjybG7[y+;SJtkG= ָg[rj%"&N@h$K$Es>.9ڦos84yo* Ηy*"Y9Lߗ[)c{{ʟrC^#+HKEϛ>2Qx:dAb NGUg{$"w8iƵŶՓ|'3H:zjth[8Zew/mԼLotq`s%x..aolAH^up\d` ] ׻,hjג˪{qU .>1&\M)KT odB1AIq&I &5P>3JXl i@⮖Ƥ4x~u۠' 6?v IdIdKLuT+ӐAH#gCKn^<}ҳ) H S+;6Mo-.a9:4‹94wL^"1e.p.́R L&1뱖 w;GZ&Ee=JAi timVI+ܐȋO ~x0~uWnEh\YCv]}o)'?tȫas>#0k X*չA_<ʝk[ɬB6(S+ăgc2~?fgc\s)2)ݤ-h.4#B!8sEPEs94Y+FRӎSW^:Et%Mier#4岪 7pt87t#b{EWŜ/ n{ Cu͐$zD@ H$2?!Ym[3F$*_uL[]M^t}jǖxB)z>vV$][6o3۬gzYz:MZbZ6VHq 1nH\n0fÆ/6NQyېQLdEPҒM(C~ R -5UAe_,QaPa'\yz"jy j2%s6C÷ef lUT DiY!cVF*v:p,<}N9]p,~:7 I"[+ +[Lz_F25MqcM9kB>`̵y `̶JjW5Ʒ%p۱j73 ]ʃ%?`j,FRnqzDoPY:a׿>[2a3sq&AD>Y na8 S.}NSH4䲦{I3Ɲ'X}\K`>D9D'upmҟ%ڳz:QN-N7h㞟 /.R=I>].?yQl*,V/Yd!R٩*:{@?% ݠ]hI&)6lyo~4RhwS}ek0N?HE.NՖ_ Kxa+Jl 06cv`HН4p}f/*@eØK &J̿SmTmOxh ! ;Q:ef{dJ)x.l7w@ڹ9߁T֭ K YſcgK.||)OURrQՠRb$_'J3A#ܺpJB4•ҖWWz>^0i }JWL&GuqO ѥT6[2光[v0'[1p6=itaPLx?*%^ 5.6 Ԍ菌&Ti$[tɟmv5yX<}iiِ)b0+:PcxoHn ÷hF-矣s95'4Q {cXS`]/2-̼tyӲj?<^>o*75uZj)'_ p/A_f'SQt㦉́ B[4[v_K+h#JQa9nsh$\Foi7aLTrJvv}8A[0ȝN%`tXor\Wtc76a!)5 m^lF4}plM6 }'"!6T|VA|o?ޟ[5ta.6rdu/&E{Zf-!.aI磸 LqkIo 'MɄ%b;< ۨg;KӢXF.הɹ Oоbɜ.ȍ=UI`w_结kC-$-ls۝wIVDAŭK*P9 Ɋ]b+,Fl., ͞6qǩ⡹]>LQXT6_NќmZŸ'Ay1`k1K8S"JN~*c Zت7!^[ bf&ԒQJHXSR6tC4 dT8`%;Y+ ti4FiVCU:#9K=zD9hIl_#X/*X0c, ?(4xv E #[ \KB~H7z6+xtkp̦mc1ȉ23""",1L<ռWѶd/ޑCE= ͎#2c>PvI~6v5.?[̓*ɞF N _흠$dY#b`\"WL,Oc \$2؟lNa;ahjPF!GLt19wQv5+OUrHs!|ؘsVP,| T@l*9o 51b/{P'Cz/j:8QGo=iw˖ |]dH-Nli)}FDyY9tFa!X1cȵ1,*oe4LuNl>1:9x]~*[8I^!E0`YʎVػv=lDGL ~Fhl}Pf){Y LE R* =tBӮ[.Apv ZI4 ?[C˂'0n(sñ'^ek ^?T5$$,e_kwY?rAS;E]FT/KCsٝ)̴ug>a `3 gs[}BM꼉$|`629c0|E} UԯY;jQ3 Pq. ]3pdD7H ]lгqRQ=Uķ?]2Kn!)y2!r;Z~eKqi;U)p˛:}w(ilwcK]y K[%fc (d/jqUmX+ia\5Yt݇߳&C~k,nZ- -sY !>^*Ml mnBh| 9/\s$c:L|n1,[À5Y2avGSS.w fiX s! C8"vєs%,")oq=ce`H ։G X P ep\HAQBՖDrg8 %SⶫV|ŒڍH>/ID>^>W>)¿mNƿ祔eF>LBo%ieMlmy UR1rb\⧿wlT"4w[]<5|>Kl@ tNF4"YG1j,K^^LcyL"$6Uagd/hODчc '*+Mj[B~nD 5Y3ؿ_oꭾL]b5p!ddV$3`G8i6]5D+{-.fqدpY/p}gkaAmՀ!r<="i0cI-Br\gE :[/cmY5ݎ{V>tm U':A$ ]h:/+gBL;~n̍4׸"(2uN_}iҮN>PG4] ]1ڗ{uYѺfz}Kq9oZ`{5Di"UJ+!X<-/ k4dfI>͉zC{q1*Wt@붒 ǘ}Sv´'G?{&N`YJ[/#):@Cҙ7dbvTFֆ zdoތ.Njȑ*d!*u{y W=CA%m,./Euq꿛b #onM@%'0BFX` M ;iX>H73 ͽ ^g*P;1%<R]7> nsekm@7E!CjڭYε8Yb~8xEǀ$kmP`vSXJ$L|cpz2e۱Ycل}W*`a僬[\!JeLP2M/( BʙﹺyZ08…nA&ebr|X1BGnt'~ eԝh=Įow v&ncI?di5_j9IٻR6"|baf1ԄP-%Km nz4QN>4 \me"%c,uBK1iVܪ/j%,?b9XLe0.T1/aL{o=I!BN$?xH__S[zڲBh7Y=愘O;wLR㺾!FnjGcMҦ0}BYh;ui˨NyxNa^W" u:q9'6F[pD#?ILA(ipVQD' ItPbQ6/B/C9˝\g r(@Rݗ q4G;A z׼DhȎwF5!H, 5|v5fA?7R욤'eNa~|!_ħsK'*x`B1<|^gCU!f9 ma `z)+;̴JyF-A3vpG!B>|M.*:@=KΰUfk^Eۥ 3ʘ{}ʲ}dnɈKGni;{nI$̾&O<~T@Om@UqF?5K?3Q]s>ny JwjNqTkP;.R;C,Șd3H*8KWZFw Ψ,ZRŊԟD} A=izrVcꯚ|3& -w 9iY5t‡ºcENzAx/K1o:*00|vIL<%CA$B_fmAja`56̯}_7orp z de@|'BEyQٲ2^#Am'aj'9Ms|O q9pe#qDW-I )"ŧ=̩_D.²@7x]V˱I\ [3I4eCdmIOn:4t`P Ԉxp#IPV==>!y),"@n1eHrPU׵i)\GWvi8P^tbi &jcܿl$k}k M隝݊K^SG@1J`NHH8񉩘*~d cpܽ`?bӰ8΢YI?UQb&_- <+Ӝ-44Ӛ{vʑP[bQOܰ\gº)Pv`^>l0]AvA5^Q|ÓQ65y[_*޺gFrVlz#4$_3A]T'逵ͬﶃ4{F"\eUԆ-SutuT#Uyܾקf`-LнZtЄkEkUGZ8(!;!ßZh񾕦.x"V;FRuCs52%q}/g(CSP:vh%,2G>v7=YPO^$="o&e>KZx!j 8DXM)ApmZ49JkFȥb9唽aKȣQEoP} r^+Nl86dt !g Kθ/|ѧd]axg[0F,NDЬ:@zKHea^L}kR8LDEGţʣQnlߒ4HH{_0P,4'nWَt^p3mݢiO3$F֘fXqǞ+ҒjnH2@M%k_JWΟAYyC!mK,Y_/Got7/Qpf!,x/%vF Muߕ$;/}I vdž0D(˙o/5Yq,zZ~L;Qlq/D1O84"83FS{f>x( y$ 6%D#pt4=(OD^|&9T+Q<Вո iD˃F$w}9x?_#$&V B _E)Pqi Ó 3?ᵍ0Pئ "c= #'d@+>k-ZduZL,&O:Lꄒ%0NV3;\ܲl$Ϫ:H遫uPW+]MrO]#tyr1 9\8f=Qtd?⌳a8\p^4 EIjM)stZ^6&a׏ V3 нJ8\@?,(::*j#q~a z7zFy* 7槾[UNFg3w˲N<5p6,<]Bar{ f ]I:~@MĽ5>^,{D{w4%LwU=@oIA0wwv_cILBfO>d݃-Wn>3]i%)Ki0O7?M&(?]V vcΦ;#D f[^76(Q#{/p*[6U0~JTP"Spݵ$jF84Br?,z y3~Vͺsuzה^דaن gÏ"1='ٟS1JA,(ĽM EZMkY',?H<22žU B34T'fign{X'êkByW uL@}`6TG6sGݺŰ$FA.62Euq)%%vR+xQ)MS:RUlkM,6i #n!7)A ~ “>|C({O*\ qvd^^!TIw D._Zypwu2 >KʜJxWJ'(4Ky*0+)d1+|f-ii+t "?mM{E QH<+;m"%L۴m9{%"+amG8w 4^HeԬi3=Iys$E*)¢+ٔD!C]zqbtOcs?)-<^ۉ+l]J Ơd{ɧe]OwqWWyfNWO8L$w^yK¤!vkWQ\SV|].5_շW)\icc<(pD 5#,eL6 Ԥ9:KsQV/o0ێ>KudQU2E) rqb2!ٜ+z@]xVo !lN$ƯSsYwqldKsR*z;~1ZxV^UЊߍ$eOBrBe7:T  ־eFsrpS-B "tZkmbھʺ"o% ߗ} 4ޯJiNThS>"MjVd{uʺZRGg/j@~"oF᪎S4}v⚏/3 >u׍'1wƊBf r08Qߝᯇ5?G5)6otޣUB0/*Z!pNug+u:\):yJxR1ex%'3"sk@oxXCZUnS&trAg]5ʬڌ/i>_[A2ItTV:6? XZ;jzrD8b.o9e`a tjW12έ_&ϨUKFu{Xˢ_*=C$cEN.8Mz[#jA)$ٶCS=,%>\|{K}MW#@>p 'P}kP˵a#%EJH&Q="$f -3i7SRB2 pUm\i/_r@?0*ܷ5\V(P(T9^UQSA4sͼ_):{ة3aھ~뎕_[oun%lK  Ē dqp)-iM>9Kinkل8oӔ_+ 6 >S{ il_>cM ߁+a,NTwע0׏SWcg)ޯ>+W/Hm/W@b4W/qLl ,22`ڛ# 1Py_G\8jd,CKCJ| n6U5:cc:īiˠR-d$ď5Y#7lNGqADBA'|+)rP+23.;!cSSؽkܛXZ|D.?d#av7pLEF(qnifG& D𸚌dB$ޔog>fwl3G_0'w8v5sb_RͪD$\ĩ5'vmfxp5E6Trtnͧ-Y0|{[7y\iu :EO6}M0]hEMziiWRj0ʄm^ ,OD"Ma2E~dũ}D p]:eo pXfb, OIcR=&nA@A |\no?r.BRjx7ui4ɏ*P"5?E~S=KRfb f>cG2cNCjc#ԵvG:'l̮`\H,̈<Lq2 k-rs-)#k'6@˾Oz"Zi_]h&mX^j*0Yo4/I hN}Y<^oHJ /eo{|{%C9 m+ 2BJAXY 6zqO@r`rQ 8MuĹ՞PѐSɋ8 J,!!MxTq ,FQXR c=/UY/^L3׳^diɴkcvh(,Ђ]G3rh32X0_fj. Mɲl|W~g9I}ns"EQE]LOMth߃~$͚:E/d>2(?{ΖGU/gUE3 RW䓃*%Yg  7msLG4LQ f"zıpO$jEs=Ѿ46x`rio޷i m 4$Y~2n-_qϠaI4)'PօI%l Bf  lrEro0.>|C?,5*n7RUNO~4kGx H)?G:1졓SBںqkw! z -#Y&h'WoMj¸xBɏgÔ׈ho!!wM?h&ٶln ,-UE##k˫Q͸mZ9!:9b nE,6EAA Q`!4KP|Y e/DWZ`ј5Lj qrBJ5Vd8F0%f$aYZ7+BkK:, V(QIL @x,3.M}?e% W/R`x.-^ⱽGÍjw&&֙*5,g{d.9K|\vXsK},yZa b+u{EΒBW4L#gamT=hoCN_Jaf|SΧ/fzQmQ/.U~ݞ]eʅ'AU8ںF3Dp H-/t9|}4b5֢M2=r9,'Rm;ggAtL@t 8]yÎzo.h=|vkpzS堶Wg,~G":^3G6y/Ƅ\DPK;tݬw> G GX|23 _ X/Dɠ gD?9 oL-tNG]Tv=e,eDOv0}à |e|6)omt7ەp|V(E<)>7) m3esE/$]l֗l4(ґH|ݴ*bim{ WapbYѬo5%Wg?oݒ/ٽ=%$h=XﱭƷm,3[*5+D;v Pgu9^{ w$NUäѿb3UkMy c\2),:&saѧq]""OiT'~ F꓈5lawL; |%>SK!m$p@0e(-hSVaN$M=MI3@>ŖEԽD'Ò>\%lz=@ZLP3B[olHu6lϊ@qwy`&[aM>D} c fݸzleK%XdɔȝM;+ mMqEʣ'&,|a"TD(!}-/gʯUQZ~8].S9-!F@,橤 X?TopSt3!=w(wDXUsPrS;j檢r\%G|2T *32 y 쥱KLwz׳5TMDz&BqlK3 VUaG +@Nĥ>ُi)'EFb&Il:Y 7T?b ]P BGvcT5Iϡt@Y2!nCR@ܶ荗,9K5|{3| t Z7e p]؃:S7J7$i𠔿)x? WܡJ֎fr"k?'a-@Ahy U T-M!OpmдGK\~mOiwҺ{Z'!*$u'F WO 3_m"ST?cSG%Z*9+ʹ-dz9.]k8A%&pCX`xj8R }tBNN8ReWByRSS.e ]7ی* hJv tG,Wh] ^r?*`ᛪT=TkAB\ok8 9ĄdS IY &@'(/m'b[!"5r^q'u&>85MI`⠰2+\J RF]\7HڼdkܥXPg6 B܂nEtjEn1(%TV\Hd\AMi0Bfvaj~>gw~cy w V'Odzuی /Y]|?˞d[6%_#%&f(FԖFıDf"5M(zpxm9m$sS,5hK(ZXq_x˃4[)#U<„ӑMͼA<+y |G6lg! 'x}}/Zőәh4l}~Mm H298,8-^޹Rtz-ŮH}:Tg2Z,mdonܷ@{G0vJԏ vz\YF vSɏwG%CY]2koǢJ1>WT43Q%!ʢXE>K J&4s;]v<GIh. fYdc\2k=E)"z)3芒YElv.TxR?i/o]] !kIJ9Лt/u΍^_ܧWbLQ0 -`UJ79mӪig~'P=nn^0k"Fu!D1[Ѵ yha'bH =^Z |Ձ(%z23UM=nNF֎KE"CT6/Uf>_'g|/*р" [Vb@\EMҽ [v碻HFnm9>P%E%~+Gj ź]{Yr aފ'y [n4?VG@%;qYtК_?L\U#x3' Bn(|FF@"-fs* sn'uTku^؏]i%m҄Ux7~W4[qjYB!30qH\md3 Y?CxyNaSI +?;Z?8 X-M]0uՕMwzyY1EuE&u?o{r.+9EIv[?[A3=":9[J8i5QH]MJ J쫛c!JKs12by>KJ?~覉Ξ}$_K5ɠ>GE$[]Lɏ@Κ||DF|n0[n\wˉ#-.HQgKGdӝ7Ĺ}Y X^i@#I X'E";E!LcgFo78"u~rܼ@NUzǣͭ @s&FJ~puLfOx0gIj1*ZԺrEyۖ~@dp6(I3YÝ!L ΐOo ͖hYq.*n$3o߮C%A;[陸"nGSEh6m=n=2 #}تO c= ïgRXZcUznrB0Ax3 Ԅ:s岕fטRv_$K:$gQfGM}.&!v{ㄢOxt{g]v lC˹&W`sY_RVHQn)o d\XTm] aioOV2Ɏ)55!L EcdETMBŞaވ? (E+KѪ_/\ b ;d62'{K9Z) Bޏ j=[1{z`pp~ kpEޕ8qPrY3Sbba%2{G?~$dQ,իt6ѿf'u߮d78_m}xJE1&Є7Hw~Ӭ>|8D_6ϛ6zvacό]`ΕҲQw8x  nfPc,kWHB/=dU &{jg{C޻#g;LdwdSl+vfxv#uwxI.<~ْ4S!1$nWŜ1ۨZ&­&P}xor53g9PR} YGI~Z{\iò|I"2emyO1R*<.d>Owlu0!DE@DUCFԵ^im"`+$Y @cJ0CfC0__[/` `DՒ$Ndť=8A40QzE OzWa䉹F2Xk.ke;B枺l6 Q7 .r8,+iO/j2A$,JWH*tGsd:ތB[" 2c ʻ0ҿ)e>~z$m:f⋩S%kr3r&jК?HE^Ή4sh~F&9 Sb]nNH s`eEno> $uiU{6A56EU$͎(P@CČ-I'Ϊ^)lxFcdm|hRP vrY*olU }kue$3̂.F!WU󘦢{8'Ty8qb-2ܖ17b p.Z[I%/iTx*>4!(l2(2[b+/P lVq 9L4&?pNfwog,sRA"pȩ-w;:AܳUF]^ eYpԓ '<.hcn8yaP,YJUXr۫a$m3_*+f˧ $\f-;QJq3<3 URM@b/ K:EU+b!WԂr{a=Ӧ)ш[M]nat#a4RSHTl3ٱQ(NQmg >DL+S?YpyvK#~/KASIܫu f 8W4/뿍1)/S~xЏG mӪZ3} 1 @'hpj5֦ ᖎ߇|ݓHh%?RTT @ Mq Znw"x:KwOﻇim: ʉ X/`5*\M[CW \8ޥ3m`gݔ9ĝ^oPӓŶ!h蠆,,)? ޟoJC;Zt]8W=XӉ·l,TYjC1M (b, 1aU !l _.u!um>Jᠧ7UX9l-/ܢ[cyǜ8O|IQdMNc&$ȑ+¡AYt NS쾬P&B5"lc,^w:6^-^c7ԭbR3,4.,x<*`.AyYٽۯ֝OՉ| bNg%i _2a } H6BFGʲnTSGp.eX dDBhz9ChKe65"~)`6_As#Y"m#q+\d2'JPsuk&mNfԘ/ΘxVx(38g\Uov] U#BE@"!hJqmnutWɱcإ✩mZIX!CIH'Ўk~A3D C!d5FxP(q\dUTcAJvWz)BrCq"|; J_1o<`‰'buW跺hQJ*~J4+]+zC[XO%)_ӕ|9/IWWsd#Gr"ӎZ|DHWGslm*Y^h1Yٹ2)+p/N(6ϵj:DN5xV(;o~ 5Zy;e>/Θ?7 {Ql. x[RG7X ~Za˒{AeJsN[cpIcFh |6A-_W~31'cAD.D#C9c\r%ucT߱GΌ"iJc;e{.҆fusDa%"G n!Kn>ݒX)Xme?#} RU('RAq=H{r<*.;KQKb#0Rń\ځ, P2wسDIJDK\Mb83#(JWФaBr'=0J nCuFY<ˠVƇfObqXQP8)[co#sV H`5p}mzvv@9q[M[3^ئcقkb2jboO1P^yS-j7 u$J8cP$LiQ=5CbH,kRv?2 (|+VheeǨÛ`GI+aNd*)҅!Ig록 Ҿ)9rmuYJC*6CNÔN6ʣ-QУ9hZ~q$s$ C BYu5(,clt31tuq+1zSֳI:U#A7¡]6*wh8aFj\IcE'$VO ]9}Ai䅢~V7i2:%#m fjjM4 /Rj1W NHI[,VCuYЀC{VchgϾP}wI.'&l9x" ]1yEmF:H'\*鏛XQ?*O0s רdxDgW$T,\J/](OeMwBQyVaH̡ “ %e_M5=#ȣŒ6Ja6jlg`sMYʶT~ ~ye~ "V$qHRm.i|%vѴ2t `D]Ö6Jn5WN#SEiaQ?x[N Ɓ}%ہcD_ HC~g!V@vg( )MDK3F}rs K.Feϋޕs]T1f6GI¨̅geM]G$R'2b* eXxS*y #46ѶtAWʀ1w^t%U^2hDs:(#t#VL.l0IX.M]kn&Ky>Y$ugBqqSnm0_Ӹ3q _T Ue"Ђ7]Gj4 :i)tTO94SV:|`U>(LRæ! /5!UfIY!П ^Sc#`)=W2GQjܹ+0Wbq+,L($L;A `l*vy@}*z R]J&TiMSJ)/f/?V$Tlu4f[[Bo=#w 7po\(-Jk̩Oh3PtZqS[͜S&(<~oߏKYB ei,c6*mL)&r "4|mC-6y b9 Ab4JTsWJmd??Sn4jU'ʆk]AbN 8߯?jXsU!wp飤7jϏbYEqRϕRM[o\D^5mʠUy{tS[6#ʌ[ )i6"JP1RdKExi<^ˆUz#Ho~Eϔa >bSRI^gr뮦ɯݭ(a *̔+3eҜIހRgVi&֨d#)2]#!*8Qɷ G/e7۠M'>ճWմfu\b(eCf؈䠖-2eP(W\D#D? AX.K8+X U= v6Yb}asnqPI(|P)rii9VK*)v?둏2鱬Pb(d._SE!L!)*0X/oC o8߬1v?CZJ.Ww;N9Z9ku49Cg6ͣy@GTItLW b)O:+kiF7#Wd{*nZpu%/3mvqKZK.VY5q;MVs%-5X]d;~^"nv ;9Q{V&V d_V`bUw1/On*PpQPE3!$e6:'cד%8(pt& IXؕoon]nQW' e 6;Wg,x>7tN!K3,͑G:/Ab P|L(/'H)!0?DHf7)/}O.ӯyGw{^-qaX{0@tE;pǃԦLYSo/,bb7ML)_"%؉"MClC~iV߹x1v !l$`pxATշͱzE '7)k698W6>snY(N-'7m6g,խ^x&g>^χq= dӍ$l5D'rcXĠ<O2RQ G2E*9 U}e ?mRG{o[! u)*^)T(c $wԑo%X) pa0q+7 g;y 1`Q:IffL}g4cCj,;X6 Xr>k|g=6ZDrX޹ZIOtD\N*+v/LA 1 9' ,L~W %y|v2@\Cf~Q4j* Ssnins;I ل0EMՏ?Ds1R3bP?:cc|Z"ܹnj HEkHwJ

e326P?-P V0m j\ֳ2ZR#@"r4|*jɡDaw?Xc8e:*qR t^a~ca@f,2YۏÑ6]; ZRB1 .0H|ŠHlɞx7&į8lM+8% >3f8ݸ 9s7;$o2H>/F$s_#,?C@>(X%>;7h[q3[[%EǍ{Gf?n%8 ε%!;T ¯} >$Z3M\;6]V)m Xh7ux!]|\$-f֥zW&j}L;o]+Jcj2}wtwpRo?޼G\26Tvr׋FR. v\`ETIXD_sokٰ%Ʃr" j tkf YI& pQ Y25SkKү \=̿u C)BqBk951y1i!8HN 6]R<ВV{Nz3=jр!G* ِzVw'MZtaDƔ2m]r⸳P$K[4^d$BS#H[3 -MS~X*ڦB|Fb gD4[ N72E N#}xњ1GI-bWF3  ޞB{0tuACкG8'z/]vS6jUl?==* T(?3Xa&)4xL&r -yZuYC28)hx(806pWKfWO)d3.9E53n,Ԫ-ǭ$~*t(cŏͼt!T,8,gB _*NU(AnYT,( G A@ 6Vu^φ4YB7VAcĺJDX&.wJI)42>sD^aP8yf\tȘȬ<+Lbxdy \#LwG榑U0yY?yWMJe*x*0YgVow x뤌:`<˒e,L8ıB8#v1[6DYnrg2UbMXA'tk;DLLǫwi>ROrh[ BVDx {F3hthfݐs`T3j!0Uaȧ,%O_؇<>:r=CTku+wsRUX6s 썷Q zS=41X6f',I8VV?4Ire` D⛮~JBte^߆+w/Ж[}Y?}sci˹3aCXŪZ*JbH :q (Y;y2,"o XNiPk~ƒ)[*`x2zx PaMn }E=cODc6hk<|Eb/Ǖň`DzΣ z g%ѯѶVMnX"JUozT7 82:p`PH Z0dj>N?FBOFDJJwVY"4#ٵ keq ?i K^#*䧧,gP%71$Xڹ# "un]G ? Xy\JE;}7U'&w>.p|(9:]#hנЌnI)6A;n~g'DYvTX*i%>~DnzET9d0#7!](惠Wո\oHt[Pk=:]<^]WF0/Cqd,۷8^5[7.m%Qs!Ҏ7Ot^N?S.ž:cFOSds մx~2uE57/'GkmUb^uwdw'򎷁Ciđ֏C*Q[v/S~_H.fVt%~іgM8PtanKHV4{Q6v飧z5i_&=$K_ 'X0~$ VU%{K2Ht1'r` κ"^ڈP}YǺ>kJ[>_]&q)/܇LE}|YH 1C=sF>.A'LU_;3D}]YżW@8؀ch,-rnK愈,Z":)1_E'D`7.2PRH>;*}bAߧ.`7 @ t`S¤=ud⛓ v8iW1hyՋښB!T8B?+,j߹"~Ebof4vzB;[ Ԉ#ח12:xjRA{`-[ |w?"`"?௿{ex+0ї=RB z>QBY{sΫ^!nnO){bQh-mþ?c6Ĕ';WJzEF!K% bUq]{;|(E5Zqٟ&,]m3?6?y$C`VEW([~,=L#Y3\xSudJ+~aۏ;A'P9Fagם$#X>F}M@k^@З8:MJ%ۼ8liƥe{RE}[O?`cF2D/c|.sP%qQMю(u-|ANmF98wa^u6|PT!]$kpކ @(?GbѫQkQOL%[wole)~ U` g(֙Tc A / Ɲ/;a۔ZoUAB0o_qXj5z1Ո$Йh0{sSivAd)ç$<pC$$m#0ac%f)׮fK@ݸqSq_jQEp* 9LW}Z$)&UmO)<0|zOb`l?Z7B.I&-dحS91a0{W,̔QG*rdhߔW6`5ωXsӛ8zIĐbC[!Aޱ97ޝ?'>>= \8>3crcr &U/M[IzBC ebP2Ghqs7FUI[Ȃ +Jb©fL%iEõeTrwq~pG #UiQrvz2k(qey7݀la%rqke7;x[1SǚMz1!Nk "=^q(AtB M3j@e[oֹv ./tI#5q'jfUrI:`uo&46 E|o&۱j'$m㎬^X 致3z{Wihsh_41r'E[ק!fX&IA=˗PtY'a > !Crϼ;h rÞ/x2٫%|^ 8f.Ya|+?jv%":\Kq'x_6^}~S9C[B V`)VrB<);UV]t4 _O ť_4c ʸVW2,x^5 u%Ht{q4::Qfٯ '`+,G[13dFa5YIfApDJǔ$UboȓN"EAPi-ToO|)kȟ.2on}t#HXf87_ɔL5`!I >g 5tV ?gJd]3GKCr>Zba)l,u}^m9@r3 :լZwtbDV#LķI~]ԣBmMo:CH~+O3ݥb]L6)H^vMz% !D]C" @  ۈ2U$b|ouo!I/1a%-ުb[fAhW~(w,PJ%ڄ9IGaQA@EN6CE+%&KۃMunOrk 39띬c5 3R62wٛŤ5.;i/dU$ՀZ|ZjIX::?=aoזck']fmE 0Vz#n.{VeD,Z֨aaD;3y%lJZlLnZnHg,~RZ"ͯn0aԑm@/邓z]必A@z&SYWm^M<·=n4~9 5ջޫs/&j7H(S``+KzB ckt:`5"$ . 4:`rE1hU5^j EV;dOt<.qkC-G |hb`'IAO(gvq`\ssbyd;+2K1cywfk^Knas F<1l?IӨ:F4H(c2Fg{@o.aK|^ĸc֬bж%}GK/El#(\~.Li]?|Sgr84ش*O J!GC͍k҅f&6K'M +(zzwŔ[7| V Y|(6!9A(͕$Gz4ּJf Jt\=QJA8M?`b ȝ&Y1ST.np<w8wAos5(JFW5ؐ` JiOJii`OfW>|/nB{6 BmcZؒ3#rNl*/ï6hxiV6GmKyX7--%Lƌ#Y׳zv~5ՔM_R__E%l0-dJ:J~|ԡpC 9h H@AV/w!s@ ;_(TXT=wh(s3mT/w^l +f#D!!6}3[w4imoӵ lv/+׃2V=7>>8 3 f h?TA!PAarnb̽W(6?AsCvJ~FmRF?ɡLؗӫS?}‚!'DŽ}&][NSRSvBRˏ9϶ iy$| m Zԯ"PG4)<ș,zq@2қN{Ő$J>PĪN gg& Ļ!9/2\t"+k`Hw{;w#Ks%4 o uGQ]@m(p^iG(og4پ1Η|-aYX`RbLKl9a_:)Xof#U5 oM)F#/J"Y(vUR#Y#}裸!"% pG¥ u>MQ!7T?J6ڮ=}ĦBuVM$]Z.]()ZmYhVzdsl5$w0plZH^JY@4zPU,B24Y5M@;~^_%0l4Wj1o2LJHMjÊ72% 0۞gP E /`&C9zV%,cږn. ^Շ$? uhn]%oԼ%z]H P}S{MKnx)($7&.]58+y-0* ̨=k` Q"5!}n()DVOT޸e@xPj7cxFH G{4|1hoALƀtuA#!u#PGgcPъMQ58q9BAv@PJ_jܽQ׊yo?Yúv**p#c] ?qtIыO`'%wEm@m$BEVUmѐ*n$CIv@r>TqăDzh=K bk,åmB\6giV=KPo_tؼ.Ɩ#?<7!\>śåc2V쩦 *u9uy\@ '0CF?B֤t8Q#e>jlIP;{Lj)HSCO/Ʈ3oCKV~gY&@ \"M erM*}^`·i@,s%c3(aȭG nX>؜lۭ-m+ y`1/I벛c?]kLǫ`A9jh*8bGНzq-X 1˝U\etp~hAM>ƃ$|x4ܠ.0\"uogfWWURۢ|+{G"4eڌ=X_,@캐B*ç'LȾPG? W] {/ ʥI𫬣 3LY(ʵo9R#|IQm$};@) Et,QXȇy(0F*&⌐)Ӿ-dx| nMbf-\ȑ(;Ј Hl-敠#c~TƄF|rTd ,3+5% u8H}˃2gS1_,3@ pp3V:͂O1uVr9-ߦj{& #&@0eCc^ ]K NPFRUTڔٜŒj/qI15Zyl3&onVKx٦x-lTڳzjW$=^T}`_c 8s$/ (1T΀JK@s [ 07&X i6*vE[B*'gMyE>E 'NuA=nJJBeV? 'RB9zJl [}Riy5ܘa8i+eܬmx&Fk+@oz83ou\gsh 2}yBk_׶#эb{=8R<B>g]l<3d4[6SũрG*0gX>cjXd+x'pNpq1{%N5!%{PsQ5Ͷ6˼Yq762xr[i^1l)tq$e3E7p);{Gȫet:-`_Qu;lPct!4ۥ__ 5] ~;6VɝyiO.<]vtE}SaAzcO__4T3PC8T'~Zʒaa΁MZab f sxdxu!ma8P7iݼl}&1$H1*kVF? 2 I}'[\,LS%"\ COqRg@k%/wy灗_<%:4<#GEKlvG礧/#q"DyH ;쮦\Ɵ1uz;N Btf7|LGfqPJه*l?3E6C6E`$2 ū=)9l`f bL{ت#/|}x2TT-0>{oC] &?#K$e~N3ߝKhbΩI3mDb nU܎ilg9ދ1>[Z.5ycJH z%0CjMDAC\|,%2\Q٢&b^K Vye)H=M01RWA$FU[x"ͽo}y3$Wv.Fx"eHRܰ TE2 ȇ>At3@"ڸlk܂K+h}nV'q""Z=!%"b<'N4(WfV8UC-; L5_гy)7Օ1Jca?r:6Ke+c}FZDU6cC׃ Q}Uc K7unGEzzrh6 *6%aK[)Րo>ŕw紁̒LA:`nS!$M_afRaX 2hΡO&1րJj=540k1[PD -ReHN,DvxvIKH|oqMI376g+mq)fO휪FLeDe]eP,X˙55"):#c*Dy#̕S4j*jlh3zuQ]vs2 f[J'5115@ch3d턮wϻ&gvt0U7,lym@Xvg8%L `;=6DHq̛E敮ѡ}Aйs11埪 x VXf^e9}+K Ԃ*.3{ჩ OH:Ѡ絏?LX)QrG14O]<[F\;Mp}fњڨf4:m}f٣˯F5ȒoK+GW_Ro[L mLV8(Oq s1dJ& Ẁ52 _ A .D X9əG,;$FOAxgV>\_4hG~p^[KS`vU)R$z׶uTCI}hʙ^p0L)rO;c(WweJE~yti)AJO;QNϱN?Y⒛fK%aaJ;ΟO.I:{Ԏ>Q|)RÏfOS bI?Yzݐؕr?W8[S<`Nc/8eJ/`I-4 SO.fqſgN^_dFUM_OŕQCQs@OFq-'gFl+kJ510+GZ?X5F__,5A; {,A'=N*T*|=sx*pIpK/ /o""s\f3X'†9.qc"suUTKkS/,b>ԧMAs!`k-=T~c+Fi-`c@0_k+Y?㓡<9rh3=J(8> L) D&)SKt#tZ佘4~+7?I_ȪQHLkʾK.zތu hV^#6^QgEAZ:-hE2-*ݫ/ 8Dt &Jmv%(p׍5 Xjxm0bS#=2 yq>qelj9Qn ֦yq,0qop }6 a?FS[txM'Lp끒].YvqfA &M+ٓb7rJ ?  qA$k|r+4=1>G[J7zj1~ ))5HJ,CurFB쒃) Go[?'T#&]⁷IKhq[gl;m?{;Ϫ SQ|IkI#۳zn czQ}0yjx N /󹡹BvH* [Η>ۭo:)O!Es(j`/`0RX]2tfymhB 4/̄7W2&JRQ4pD?:ۑjz|mCoAAȺ%Hv7As /5frW4͘Y+K<*%J6z.,Z'Y?)TP^W&|$`ZSc:d\qYn$=NB$'6I_(l`?f؟Bpk2jG9ېCI7@vfa 4TJAH3A7 #3JfSܩѥ8 8wkqafr h1o1AX6}J*kQjwH§.0v'/=8)i;Eq:DwE_|c1@Hx@W}Emw#˱AǪ&@nŊ$YSwP:s0NoIكDT|Hԥ$ᕘx1ׁ#@VdMv%OYqUCWH+sZ! Bv+A-(+k{~px+ yҮ>)k2zOv SrmÍ7 yfT[6ϰJφ0O%riė7U7#L#Z]@ԯTP1Ѽ7vS!q+m{ij#[$ (~pK:b̅[ΔEf;5P+JDA˚v:M"fyAB"NMӑj߀67Cy!xY,[FISځ?a|7S Ung]y.ZM{B,3jya_^}nnZd&hCUuӉüOGժuk`dxD{ckjD-dh-ON aJ\$Fi;LHїtD#ql~nKgZ7KX6m.)i>bhd{ !WJ(Oj(ck0 b.씿@\RSW˗Jnb%g]PUAJn d?&s',-l6GO>qa%d;QH3Y^PtBݝ;LwQ⋺P)}ɕ1T|-d^DDLrw[nXQu/~Xs#)e~)sL59XD Adr|Me)#2z>ke:O-\iyKCnb=9^mDDBuNdL߶ա7|q)ir%%&%swET+ɨ:"JrKUw8Sޚ{YpE 9z-'I y)fCԻ!;8c2fw3{C`Wxυi\ib#kA|1T_?$dJjD$4-j; =zSJ\j҅tسi?I,Fq0Mk['EMQ͈xPc^Z1cGC[bBٰB h noc %wfJé8\@ិh{5[(`幐,$p. FT(W,ēdz͎܂UQϙ"N#DN|K tAj(!i{ aoM71}cշ׼M2ϓAj݆"-XѩM!ÑO9Yƴ`7T3k땝+H;^Bh `/Ag.5<'\kkIomA#2"4|_zsP!ܕ:gBquRmkۋ2AGia^"Prp3*@o0q򠍰f,]ԧdzC6GwH/Ai/1 \c ;98K!7]$qQba`8,GC#û/ qTq[χ%a?Z=m"|“j`ѿdu~8܃F 4TPj+U\zN{/c x􀔝?}r2Sr* n(UǸRuU^z{y0GYL.f=uH{{g޾(R\)VSfa 2n{:Pzߋb5 ؚ?Erm = { m3J=4) d ɔ8;$S|'|{ac| wt3k%7?kw~6㣸`m YZWl=iƀD8\в°p5`B5&2yA =UVh~ADMį&=}`Uoֲ ٶG8wz8ylČsp1g."`*p2Å drѹl(F6tm]+2z,P9H.hTUlqkL(%:Yrn)a  ,"G8`ѿadMA/M tx>r7o>< clA% k镹^-FTU]*?ym=c]Ŕ)<4E<c8#{*Վ`)7=q S*]WmI!<3|F {"BÌw/;i ? 6CY1z^o2?d))Ԩ=9TbUhB8 ?e"2O; vDaz+5WQ3T<_-XAc$ܗTUߊȇ/{ݯkCuFO႕5Q$D3a+o]*|c~uz%Z-|%*.uvH=""쾼 F<5>ttyT 60 5YS9[֔j2kYS &f?|]o Uљ0KNgn_,q%ߢ^op@"z3g"xŖhtsܙqEK`[W1КLp!Yة'&$D'ښj$P;[OvΟ]Tc~:-upf+yp\!N$c,N ^$">wҲ[uP|&ZޟrpXs)Z' lfLqVꢫ!Bw|&Vs \hw O80j6>=JdbGȸ$b9wϥ1_bC`a^FZZ83\s"K mĄdFk1[>b2)#p46,x1dtvXz ] s~ mA-vXCB7[7z]a<)Su)ځq_HV &6^pF|GdM)$Q7+^ UGA_?.<'Io]ߩ[2~pawUD;!kex|3N`!FEMg\Q_|#u&SÃh qAל i+T 3\$!֕MAloh>E0j4)J#rPs2\a+VDڃ%$&_ۤb*>e 4̞uh٦us^sJTAl$P4Б@o^! A8Ɵ3&;z*:1{sb[ VPdvtLn'ߟ@3O?oddֽa{ZpV5IlswtO&\ {N#^NrIÊ:mtzWϡQj]~cP{΁fOڔʚ`f (Կw%:$]ߠ.VzU XeFv8ketD~qO1|_ika hqjѴ\c[87cTNk»8 +ULiR+-buHIgzt$?Rg+)|!0,`\JyߡvG`twr?6;ExDŽ?S#/ԕ9S+l^ʾ-%ΙL^hRѫ}rA..]9L:~^LmΐAe!oĜtEdF=N[Ihw+p?Zc"_O,l< P籇H#Uan~fMʄ)&v$h%p^j_ғgp fYʛ4F~~,zsQLJ/9YV7ht&-P{\.;[ Et\I5ޱ!b g0żDD5i3IB5tE\1?wWh8 :fc{U|K 8ӿ Zq Ä܈%F4t+cЯ.Cō%%0xM0M&eadޛ|݊Xd·ΘI-ĒL}/qJ:MTQ-CP2m|q e$'^7+As䛸_U4{{w6gp(M&QqTS IGoi.4w‰mkv,G Ԛ~7QXiH>;L<b8Z1W */YC=}$Ku6_Cp3R#PpA~0) /Ji'$z }Deysv9G-g}띓o^3`lFQ6wd^"EDC;`u R+-PJ[U#M\qKp(P]njYifc$we8ڍbnӰjTUJn9g""#dbw㰁]յFS|w^fVլ0kXS [qAnFﺦ͞GM` .\vbcbjh:\5 5w@+Aoږ+4#: tLDɍV{v@&n@SWC4v33=!*G^˳+HHNqt\$+X#O ో47pK#׾;(?0*ZDPd%)6LNݮ7ʞot"ǫ;FcnԵ-v s;ζSn=Mwd@^ʖ^\ HAI9Jʙ/tfYܙt]0;T!`!C7QJHi BqX$B8:;yq}RmDZd^W -ha}^gx̦ {iTAo:3a Cߦ7L?ǢHFYp6I FD^x('JU&]TDvlC{^&gbr:  # K(c*> eR>/uF8%bxkRh=Ͽ;~e1Gu/}zy0C<U0껩˦j-*l<ۡb:IIϚKQԒ|wotN@NS\YԈ؅G/;/GycPJ'\M0r"3rN~` PDo+H(䗳+ roR1fd)ZF'w!{9պ+{>"Oq>+;+#?kb$,_Ibsn%De/pV־< 9ۏ DȢ 6O+Sx` u+ɹh 8\\VZrC1[+1pZ386Njt8a9h%å7^(XJ7aOz;8%y*wwּ;iXij >J27%62ZHZ=⬤@>9-g+sGS(նC1PhŖI B)UZJcYļD|fvx: 6@PӒTDb#C@`yʍI")8 8Y7Q.B>ЃؙF5Qꚢd9 oO`CF\uQ*MBbf p[$J)6,z?JL8Cdp.S]56kttY5ua&W>ޟL+@]24>AvÙʳEe'Qk$$VX4-FB}DX-܈y5N[e$*vUƓhʵ@HN@݈L^ű4W"H~(CQ^[OڪUt/[Nag|iN^~;DȀP#`<.uLSRMXQ@77쩮j.@Hl:+-.} Л-g_s@k^QH'"OnJS3%ʠPmZ#/zVU" ZIE5]UF踏x^s,*N?"% 9;鋉OTs Kp|nL( mO]KK!a8gp:qG26j.z @CިY<@{SN,Z6Q6 i H^+lr0!Tt=>ӳb{-\TaJ>$ G0$jo.Jt{F=! ~RypsVڸJ26"뾏4a(Q0JS&oK4D솛o{("{x.: i KZLXznɑٱ3^L#ʌoUx}L.XU.ڭ>|_'u)1mA~ʵ:R{GX*;Y`p`IΛ ie#%l4ml F4k \΁Lbx;?BrxayE+z}Ɠ~xM*Z ~(z6sb`qu<)qWh'#>{m'y6#NGF*Z\N؆,i|}nMl!b]BQ33xǻjG$".;Fo2 l"z&sPe2/O@>E8 ߴ]d10YN0ԃD\]-Y'rg\i5zcNG>Pt}Yxtޏ0G@dJ2Rl" -]ܳ6_n9l~~Z Gnx䍾fHl=@_hQK-Cip\b83{s)TcOݨDW-3j.V*"6kY+N;feSNKzA-p%&Gu4lo|R VxPWts $ceu :eDNMjXmf*Cg"'@nD1JNn;p ?_-UxrE`Yrqj;R!Nˏ҂EbUI-2T,ǹ9Î oc~Z_ߙڲ_7;5Moi ftL(r2;\JM@9i5&Gr,pcXi(f+C"bSP_ehBضmjXCSV==Xݙgp>LϵfH% j] r$J8UP>8/ֵ :眃>!Wu1`_ d%Q8r}5lVɔ F&pzl Mұ@ca#{W`߁h'&Ғk=WrMex} ASxb^zF5'ѥ}b"u?#)6i4,(}{QJGu:=?V *4d[ nSdh;8ƖM~u]>-6ȴ*1?SΌRe5K;@A`We3S5v&Ӄ=ۚ}GST~X9»Lߎ!$X<$ u'Zİ>Wl"pu8~WbJ(љG+_y|KW3hZN \* ӥS5?&2PG̫p~LDt 8/IոC:WȊY Ŵ8 />PσIƛ#sW:J66HdiJxD:sd"_"0I7ݞ #,랑 O\ړ["F~tbAŁAӨ.4. DuC(K̓G`tmxxptHP-Q)*oИ'77d&8P|3Fg]Zd6h4#O2`ń3SGlvgv<1{Uv<-ov0ӑ }[+;w D< 4-PׂdxN+@}@{z9H3"|zn.6>Ǐ+շ%<%@ML8@f?j@9@WX_򕽿!ݣS-.*^r˪UX`E!Pk(]/jr?&4Ȩc(>!`! yէ0ŨorTr!3e!bQ/=8dAOKt#ؓLh;XbYѸ&5պ S/^E7{5zV}sսjP$NGΛh?J$f=S1"Pb Fjmif^kp}^gw;/ɁzΰgXcshQ~T)-ŋZAIe9Ϸ'EB|^h$԰GjGebД4ZyZgc"."12gVl}?׳M䏈NN< O>y|O~2d聗 B ʣFcmz(K>@= >Ŕ5=,zA p2M_Hso3l&쒔J"2hOyao_,vAt՘-8ffH|vۙ$wS, ;Q$L-g" pZ0QG^&8P /:H6SBp3wé%sy%&U( c8!-#S+5Zq!ؓGO23h)،]c#u;8H1ӂYOm%9T^>e ʨμy5ZwX=6e%vtXE.=s۟|B9r}ɠ܈`XM>%H$Z`td#>2X zӘeq%-PgZ;oyq7X[MNPqM;u NÈH}&ȏlct ו>n3*l嬶V^1䓖v7sӬvD60*uG?!NfKN3>T?pZ@!zT~XW* pM7+c"P؍%@G5܂pӤ@aqZ>]eoY<| Ƙ u9bzNgR;(BZb⺒+欬#`c} X V<ذk 1ku)e-]ӟ)AamJ_[\kg;:E?j( _0Y$īƽ̀*hz)3nw$v-*J(.㯸A+e?ng6't4^vdl.A: {)+m=UlGc+6) C-QH1:?c3)zVQTǝXi )Ś't~7Z5m*h3ߐ@ zpM"G׹ʔ3:tr:+N3TNb{nB^yu Y}qQiDhi7mac-r.1C&%g3zkuN 6i(o芜=r!ڋBދhɖ^1^v= Cd,V0\O6[h_AU&4lq@[<򿒖 3rӉ"6'*W $w.nn kLf:߫2!q5[޵ן55"9x4- +އaOğ5pmn#fvz{t8^ru<:-̛-oE2XSqVU6.qupdh@}]FL}(2I]ˋqNTo&X3-Y,s0:٭ pđ=ζ;c?ckb19k5oKwQK亨G n`EQb>MH Jn>{ҮsX`mIT5*=ć*7JݪDX+.ZdON3'lm?m.UPE?KmoOo)C^" cZ{uT=:uĨծց#X&_ dExv'q/\s۱dAg W`!,Mʬ[(y2~ژtRx|!:/e_%R>v>=‘~./=ڏvZzhq7818L+Ẁ=E@ @?`MQ8;v wY# AxK,Z,>e`'ý}>ĥ З꤉~!a<tyas1Xe/R)+2f)M9P,ٱ$n4I٥bme2=e3{v)a8PbPpyg.dQP%i'AJf쨞Ǘ A]WXEjߗ1<9o *"'LL-jcy%1;wҺFZXJ GIzk.҉tR-*7acVWZ 8FR#t9”53iTT>V"DgQ7WҠ])Ra(&d)Er-Ed;p𹠽l^rPҰ(!JCn;`\/>hga~fOp|buoHH*ם]|oI9wqVr0W'a)# H♌ܨn,m{ an[.#}ǰ*`9D3~Yr]6l> k,EK^߬#en?q]ZXRdvT$KyVdNMr=4y(O9[]}wJ/\&m2M\kZ Z6DsPLA9t=ZHOFrMneRx"[SDj^Ecx^NZp-:a;'d zзi?Ɖ'Ƙ!<Բe9&bڶ{[FE5gދ(!Le-P\7Oau'c8q$^ӭ1X ڝ^rD Wf,wF)x0\<_[xhLO0WS&%[3۝ js@ i$6cY\(x[GŦ5 ֕v᬴O8j$)Bq9zL;b:zu\f[/Sx(F:G gx8\B{9W#*:-ej=q(Qd}fLR݀xyu&'Lr/BG!"AL.Ѐ1u(|cnF 4y)KVvkEfTSb~ n [x߱h ElD^̇: BYƌ.i1vn% սEh͂BC ' 28g؀waz8*ҐOycSi~ז9VqtI^lyjo@W]Ga%)dqlvF5rjV XIdX;;[9-#XRJCG&0\kC^_ _KivB-quUw-QߝG(B|i8#<CJS >{ג"n 筞8ߗ~Ȭy5_OˊˉyQ 槥pS oQr}X2rO"l XEɛ`l.$|KwH^mh]2e(Dj[d=#"b"ĝ;IPܯCMD\VdN9m,o&td;ҩ%D,^hRwl]o:d&qCWNizIhy坺S7oc: xS!.{ BhIo^kXuԜ>G.k(UIV2h_Čk Eɲ0NU2ه53Y ]k UF)/)- Srҽl_`~lժ\]4%sAqnN týI[VqՏhe kE>W:ΊFV÷ِ\1[}O,eSX6\Va~|9uW JG8e{7r(p^Βc{DNY+ x\HhJ"ړqGu6Ty5r0uY5-|>vm5.<' \;F ,97|u-Nes WVZ TB_uUl3s25gd ְkLVJX:H(M6!C܉Z5b5GUA2=suVIƧZ Fe=L?E"03UjUp .OH ׇf{8^٧M0X7 HzY2E<- AB4o9!nq2yCԤ+-h&`NH DYTZƍ)R\{ QO;Rc9fj>qB0=F\j61!9}z5)E]SmK'o v&y./RBY$dj龲`O%p'&[\-AIɞ..m _]`N\&A?ua;sy(*s f+9bC~ ߷dX!c#;Q8 գHbu/fae .f 3ń|$WVlX_%t(f#kdEnbxF좮PV1{̡>os$X8D+_Dp[FOet>`v!X7oahۃ-ҟa$%26٫7ёq7"(r ?ӫslgJ`\/4BegTW{Ҁ_1n0nc]T1z_dexm̿h kXѮF먘ѓmCU Twg;R $%:3@"rJvV}ZQ9_=Nı)LqMӑ0}sE')PSf)[}}19[˄8qh"sN:lIJLfQz $oBq 7|A{\XL]-{ȗqe~Gl9x[WAm࣠Hem2})νspl'n*~pgdt@6M,|Oߓ?[NJqoj碮O+בŸHA]Żp^Y\-U ( W͐N{떍d󾖁wrx]4;+&(sZ:bF#dX8N+?Ejt_8#%Quf_%]m?LJȌgWz†wɸ);7ao%MODM{g>ޛYшk˟lgn42w&_rg @4K&:װTT  ɌMkiOK@fZ''#zLLL}L_7c0 ^=$vN+Po\!ߑ  *{J[^Vw__mةl+QR9̇Sս;4F0YЁl?uAZaRNu:U-qG@4f$% sZJ kMN:m&qG kQUXr{0Lphg"1J$?ω># x-ɇRgI8twpxU6Xw̙ES?J; l`$5cb"Ҵs_(gdJiJO(\-^!Ir.w,%bˉyqeDwD탽Ca}'r709MY J+SlYax mՍn!Gv,KD^J_{w0Uh>G6W ?ۆ\ʷ6ִ}eSDxekGQ΋tBBu>p0ocҮIDI/`C&zN3GNuӃBk)U6_>~^؝5O6OL~ڨiQLPi#:v.f,0Y+^H&SuIs-B+kewUv%j4O 4K%5@%[S{W'?L\KN:#ڈԇ؆ I KtG G$p0@IOF18[Lq&Gbs4-98Q7BgFNA2"d's?Û[QQ\.#fNsT몦-t&0&ng s\fڃz`yxԏ9,b䤐P!'9D/)Nʶ&4ZUaTߩ.4*-_Ǵ`1*Fe8gQ?;hĠ\^4*(kʟxV8Xl J5bc<߮aNi3+3 ';sQR[vCm'rfB[z g鐑}okdCݙa?ji|g7[+=aT7B5ȾՠX̀l 0\eGY0m}J{{}@M/m0a׋r^Vкx r.HVy CHȬ}Т*ds+6jBt((_y(G('e3JWO> &}.Ŵoό{bUZແ8D6qQ{3̋[(}wWQKGw _-6?bo3WsDgl͸B5"p7`bķ@z15Ҹbc9_z@茪+-6x65 ;D -ka<@ cHKMg`i'bLBv[U_9j{J6WGE71I ⸳,rr;̋cF)StazxuӖ1b._5ȸO6P;`ER#.C3MbdzaIL#ScQ^r_C 2 @v/ކiԠ}\MGnqb$SJS)-~`>:7a4'EɟTV~%p^~3?X[291|>@!|78qi!7zI[spnz ,x~J̎6Y]qE-O'e{rx[{3J*W۫ &>flfP T \ JI;">QK -%q ΑE|!>B\襤 g0)I¢7E 'Jyc=tj57(y S0"avw|'wI.M6m\?>KQ%orYP Abꞻڻ~[t[R0Q s%k 5"%Dbq=aeX?ZǠzgB9uͤo>%D; 4|!")ILaqRB Kshmm$b+R{ԅus= `_&QK\0n'(%<~C5$e1k"5Fxw`]U ^#WB$*TnDFºmW&:ᰄzֆ.7xMpV64wy}.,bF37::9"_ .; (61XT F;%sEty xt5PԼɗ{)4h"V!i\r. .O#ϭo2iO^T>ZwsMٯ\+HI=L~*b${X &9CsahLJ.;Vﱩ_8Vvfࠐ:BUv'+ Q-#CZސi+xh\M?qP\˅@$T"I1'a%7ޏ+!bbpFkKx+=a{?ij V"s&Q7'][Z)vw=bLjL L#,2Ccin9ohpʶ\-Å1x[蜖5ƤGoF?-NC 6ŔbvuLԠ.GO`,is+H*Y#uEg]T\R{yt\9gd$E4.:zVEs/IMjEITƛ O/: l&s ﶘAvoD1xs9j /A*2 ,hl ""uI=9RJe.?]z1hAm+WC9h((ET.x!VLBMؠPRuZܯn~˖XTo#OA) u`~l6R9ɢ qme)HBS&h?Wܘs6^|3؀'JF{] \>_:5p.(h>HQGfN[#v|+ v0)6]e{3/\_3$ B}Dd*sH>3Bk(ܔ";P89AKuE# ĸ\mbAځA[ݓFzJ,ѩu7kk%lR#uoo=߬J"f$o"k2]9@Q9f_)7;= L#`u.j0fIfE%_W0@Z_q`oȁ`Hdms$C鬧z2g\&l}`K%aZd~hY{\ʴ|Lց>2PZxص"/mlj#(U$nkvk;W O: zr j`@^!k;Eƭ]_37"0eQ3ΪZS4/Q\L$g:ȹJňZoٶa}7=h U.YĄP/Z*[/wt0Txӧ4s͔4z7Q1 Skd*{!m0RƐ6xd%0ƹdp9l%Zƪ&x8AOv[o'er&{ŃMQ,P q~pC!vĀq>J eS,eȟݒ թ,n3<ڼTmأ|ƮQ鹀+bU7n@1/D)".31焑 eBɃ&o=iR؟\[O)RSN[Qp0wֵДLdKu3?&:S |QFg50\#%x\J.=ln}k 3 shs߫=y"<e2Y*( VU[5 °]aF{_.pyA>=2>:~QfxDS]7SS;ev.U@hW%w4;Hn?w&MF(93Ics9]*éAYҽ.{f3dWvcRǀiTK eưm[` A-H1o*H[F?8/B~hNI|R4gw#kr"7_a#Ww7\ypmчL@E(%0(Ua10Àcج i7dJCvG\o;y;OVQʧOiOI/W"EeUŴ@O7xa&Zj߂ZZ6R(7?B=HN3kua)v{dN7&@cڀK_2W;4 ge4 }e[NڄNϸTfF g359ly갋w.yJ.Y Ig1\oK5}6n,87+i)]B.$.))lQE|#dg>yJb&9ĭncY,]jc.[SwYcp29bB2.tȩbCk'<5A>n),P늜NUujayiDsCVJNs >ml:6A/Q;3b |9 ؄KϱW#/9&äI7' G-D9o<t:ANƙs"ޜJIyv˵*vl肗 Qe ~QV0nVRToOo]M0qX+̣û5CA!)&Pp(#yxƛ‰6nVyG"՟H#^c>o/gUjf@ӎU`dߘاdoNUS\ſUV~fD:NtWN5beFUјJsʎ5.>#|,δ䲄Ls |eo04= aG+5Kk &|)륍kH7ʼـR/0 [-xw.ynC-jf܆T_hR @ߪX_s0؀%&1?`0>7,;̂&1iŜ`Y 3Rmx}^7ӓGFm.#5B℮8F}wXFܢ8A=SE'5<삚5{!%Q[ t sL]i,pheg2C=Mo9&1ceH3ƂZBxilu.iaM@nKT0TW)%G5ƊZLȧJ꾈[wxHY0_K ":QJVNjc *cEyH;)/ZAa3@I: }!iEnKko4MZ1dRp>o45t41Ci lmgi2Ӻ frX=w)JET]ʿasۭ0w̙AK1dJ#A)I31ѴI$&ؤV$ib%i5 :<5W^/ECD;QF*{+`ך@al{Tߕe0#bʓ%KnZy Oߓ.fOU |eo .YexǗ*]Ŋ 'vP ;؁~U_D t"gBK^)ʼn"e/]GÚEMq\wS>EAׁp,Lz5B;l&z<À[S-/OJ~ۡ}3TVRk qewpM:7pY_tWE?w ڰV^6tɪYwB*mK!x{O);35x" ήk>WA[A!BTZpWYD\c#W,VD0k @[WB0Aavt;ҕ1N@vrdZqiqZ5[ms)l5V^\w]HƤht87fȉ]oGCtADVa:5Fin;:dy7CIdmO ^IתMPdҧ_øH 8/L~—]S Wg*Q6PJ/cC/YQܴR@B/Tr ~uq;:qPqm MrJu?*LԨ70|lc|kfǽ["ڼbMxo{kFo(hM~d7 Z8rBo 44 L?Uf [=S?U`XǴXFO`1O0͢"rK̝od#s9&Uqg໩n89 KH(%GLw&29(I冻&,oP"j0OS&r_TLeFKONSmrB\ hvPtBsD!K۩SE 9HOoHrD m`no%BSf%nbc%9U:.ewz#E鸱_~ЎO h=vdglm{~{+ j0A~K+i*}pz%z"O_]o8ԦbދH6e/c8aKN n|8n->Jhj  bH9H:|e` bj3fQe5;­тeeL[tAZӄZkfV]GKWe<10x"J\uCcOEgWUCާmE]a1ix`>X̬Pp9vtgg)8) E&n,4eZ֫c6٘vI=9  ϟ/Ukj`ri&+$Lʚyżqxj[d ZSKIU=o"3PS vu4A?/`R=f "[b~Z#W"^naOod|SX1?*#ZJKx1 iYtpVNj~?Is+f, Įo+r_ѓ.<萲`ig^ĝXklw^Ðޙ*Lp h3^R1,lO|,$U%R`nIb1:`OSԺ0੪Q$FF;Q|qW&=sAQe2CFTeBMʁoC~xm~MG = @NpUXV1caTy;RlF]h L׵r]r6.j~yT88X3Q3w4Ø-"\Jj1ެT@8k9Uwm @y"Wy,F%" v=UiUWg!w|@O` pgE <ԣzd$pwu.1®'qi"\מZի?>UڜV-yy%[.]=*.vՋ3ڗld-etʬ33_hGF Đ]mԵI}VFkmEũD-蓼ZOzX/FTZ׋)թxV[$Zgcl_BAK[X}7`-s7J%uKuGj:mAi7FeL$xf*rY=;θBHY":2dD*՞ !,*~W}BYƠ 3IXPR/u% YT:%zmi:Y6 3$ZDN!ɶK..^E 1ԳܽtF?5rgWOat,5Yުg4o NqS߬-v,Mg˨=Gx Y[۾;DRû\Dk:ڦRul!z8YBay~6˛|ϿPdw :Y*1t}|ss'  i^ȆJҽR@u.]rŚrΜ0OK@F=QU7!! ?:.'Z콍&Z hT1y,%.|NKD\duo!ޑtvD!TrҾVtep8):N[+ixN^m9 7yNk9.[ݕ0IMԇ϶>)vBzi@E+`NVޓC|JDڝ@&T+B?h{3o 1 ncd3`d;@)M2&kmx9xھf?x^,vw}[bvB"ԩmD͕OY~ris=xx,d5i$ /u9 3go"In\>UYBnhoh#AMoZՋq 1-?fP"j}|92!Go դ7bm7gh%c;&?Ǽ89@#S.yhZw{r2_'sژ;Eദ0..0k!M4SE՚ <{!AGn:6v*Z4O:c7%Њ+VZ$Rs UBٜ;UMYU@e9!Ƀ ~{EAGø&~ZYSJz&[U$15.@ɩԑO ?QkZ~治qݿaQZk8- );/+Ij=x&c>ߐt"X=\Z[TSK.Ws Z ج7dwIƏI-( Eu-eײer98ʼn%~(p}ۣ2RE\wYIgp58dvgF󊭠Yᬏ l)XPWyoeBV6.{Fck<&I/k t|]YX|-O#Cv8Z'{1wRk.!F%KoaYy6 g9x\9LxU-k,4\o:s >_ົ6gPZ|.֌&oDz~ ’PóH\Zٙr{&-Smu~lONҮ?3$GMTzB H=.Ln9ƾSL.WNoy.C rkmM tQtG@#\/LTޗ`_㫖Se"xqu2wC5=mlBR J&cFJpxc"1'b\izClB34?JjXt7DvCq.n|5{3rIWgn"[F?U>wAX۷ i}[zTiELU:[XRs 8?/~wIHW#u#VmNDU8H,+ `3UBt46 iRYߜ\U}Ĥniݸg0un1UXuTM~OuHO'x3$l +wP]Q?Ywtуm5WIADӜX+ H]ɦU֒SFyFԑ亼B҅|O ֑ j < Y9.5~z$h)09I^=> zt}!1۾ѫ#K f7O"Sd3R-/\. >RƢF85̟Y.5Jk^Y/b74D'^=K}gTDbc[㢯YX0Z[bKm[yCIK0jO0އ5}p CqƢ_b٠JZ xj>y]F[=0%->=cˀ8Oɜ 1~`5c<(*k Sa"U]m| *3#C& = !ƣ} bP8Hm%-''Oc`}ip2%}eFf4 :sVdi!ĹlXU +0o ~␘\8@N5c$ Nr*+$}T0+#zT9]^H(-rLqOnZ5h9b={yPQ%\PjAMy(f^k s<\ĒI#u? }VBO}lMD,>?Z\ XQ2}<ݨ4Dm| MEC:T0^,0[d~. .e9 3k( UVW1IX$@Fkw>GskS:* Xq DIuB vOMjGW7afKqī{}dvsND;E}G Mܪ]ZoE/r\8dֈ=ݎFFD:* \eD7y7VV.fVǤ߉=)V_s?BU I9.y-;FQ/vvác_O9jA5d}*STaq2fw_GN j܈RI3 co]v'N&pCr8ŵn/Bb 0zUƾGBPgOZώyDV %=bhp(3ذ=|Ln ;d9v hzy6.T/a I̶{ykL+9dRp)I3>"{ Cj_[H*Mvj 1VZ"m*aoIf歰U8qOb+X2?0I*RQ/by)ä>āsszѤ/$@o Gz Ḇ2>egfW7!ډx6C7QU/>u o^ 0\#bfXWPa<KC]i_"PzoM ̝Nu,з?zpAEgcR~ قE07#vJc\NhvW&d{}-сCFK2)d:L GIeW vï"RP&XΥ1 -#Nd;BYEC?yu=D}·E)UXZ?c)РW*(Ufo5x±t* n{F#lCBAhG#v^iC\Sa*\!ZpPPgt՞k_y;F`c_]|ο Dâի4iq|NNΤ3B1:sB*rgS!9u`qof̶x۟LH}vʎe˻+]Q8儻WJR%̧U*:j5zB.;HDzg?PR# 6U>[[ͮ os9JqjeFq9"WO%q[Ri&pA>b "h// dG9F`GB '᣼jeGQ*u͡{|I^b88QZ$37IMTJf!r74X*ĸ (7zOxA-qHFkz'AGBXon e^$3j5I a}]2jH5(S)AVr3;>/]n3?nNI_$@︥[R0ESĄ?u?jmJw $\dH|FC8vmԆݾ7]8CAV =t3:}E,YG/`4x|<[jMJƃ;~jQ;,G.;g-ïDs, 1&Gvv xtrbk{( 銎%kC`Ph X *'>\&~_čT-6e|yG`1lZ;HT x XD?L䞵.@݅w~Dp6IhGv{sK~W$3E+"J+2ݵ&vӅ"Uluz)j%\^h<|'!WK5zw5XrN: fo߹P{˺2jC}1b b%+4[:/p{ ~w ԏm/QX ("\\{&ҩu_}K_ӏVЫx-EW*Z2֟?* ᪶3tB Fi0WD(}xLv ۂ`hr3̽rzt#-[ˠM{jM4ҞvgI¦>LR^.P5DO>`Scp9{cHtqWy.;͗`S5A*1ĝ* !bǤj0G-sj]?O @5V;ޜ=xnp x~ZhSjP[a[۪۠TuFn甔}1D>eY)ݥ >0Ge" #ꡜը{M@^+1Fe^‘ ;FEGkY(T3eP rPyTu;~ F[TнFy; ӛuA'mͱm %Xv~g 5 }<}i7ĄBb<7U.ѭͲi}qM`KP/qn{&jV,{͓/(K}C7bIHe_ًͥeK5}SUz d\G L?4}B-]&8+!ZC I̘zn!JDzh`aQŐocn:{62Ket[k=:R5DaP12GPN|V =[@i6%D/ـ_D{@j'ՌL@GAf]U~o xHc6/Cu .RߺVX2'B9)0uȞgNCfx4\N1Q)907Gb4 ױאk ,&jБ(8h˺@j`7 3n44a $QR, i(tK\:*TZ~̘y`F2OPV׿_l$ C8=5$_+}c4TUSaRW_kj8S]vx0Q|g^_S޿t,pҤV*1GE"4}Y \Hll LoW91gEy65J=2cG!c =04Rdm$׺గgGGג Z9PV(0H̔>DnCR emuA5Nra 2̣ǫXbܹM0q4' +=NrWW e?Ieåg5ht*Ʊ=1}UU8aC̯gK5U/woC  {ej=2A]xo@=XAk>.<$lw:H}?rQJN;^3' d3h7"B;L0+~}(]M˥;jFX;K`dP>? 9X!M$MB2e8+BZ-yIl)~Mӎ([#g",[ z9[}z61}Ѷ.IێG8$S3+_,@R437If/?˔ 훐?Ec43kb&1b 9hOꈱJƚD/nI|jOs|(:%0ݰ4̋!FO;'}wv. [ 1G7!hY;?#=vH& sìT`D?76pfbDbp9-b kvyEJÚ!v^k b6sӵN_gtuZo*0gg }hP6'dG:,w MPjXgF \Y K/~ m ^A}wp0:S2o)d3훍o︮WH?N"MkL ?1x7foȲ#"籓4{;qJPђ}&jy&U!nz$`WU`n :0{=Ҟfׯ P݈62 QkQ}V֠b Dbݵt[t> '+0j 1s~8pf&d )u DâK3C=;U3.#s2M DYUqEg{0.QUqoH!Mg4kk8k5=o픣uQREsX-+D7WQ^:Cy~YwF%&=CU`uCs*w)lXGGN$NLMc LgU It24*%9̩.] K*fvTmX@zI$UF)*β39uf?*3ie# \\LD7^knMHn)IqϕrHI]cEu.0/]R|$H8Lt&s8+?gG;xWlzTt#sO˸ --~Kղ\ߊғO"aN(+;A˔"Xx {*j$CP}E+l%fcASE`$4I`Fč|F TR4, $e9#׽ xQ34kEDШ%GðQd-|gOw8*Th:r`&:6Lj]#py [FM^gvifezA=k6V:HjD'@ثےݬ%r53L6Wuתi 51X%6ԓ~V %liYMܡlOex\}-@'u[j<)_~=&pyX<1:vt {0,!-f2#Pt6LVXKLL>O<`,}Ɯޙ=o\n`%OwA=&xA02NF֩%B>Z,m!UUaCH,$c%X '+cB&{ |[saQH1-|d5Q8^+AyEIcK> ݴd:1Ed _O l3IiS5ӏE>WXydnFJh,Xkh!q;_9/*S嬔- qU`BӸSFqF3r&Y͈{ӄ?,\eW9<(y:2H|1e"YY⭙6GJENnq׳ԃEV Jc=- q/;GLlVK(w5FΚYxU:K.fkgdG+ S'U22{OMGEt޾KʎNvAcR= 诞WMy_-Cӥ+,\MM_dyz%WXC~uJQw(=]>P"{kdX 28ށ8;EU@󼜎J(83vӞ+RW'_:?rB)lkYW@-nDӌkaM2%䑩W,:% 4I F*bcOˌ6 n.}$Gj:t^ #4j0YY/;{8#{~b:^%T.7=:Nw/w{hz!X! DaƲ \mBu xQS4 sݸ&8&2TfFUq@.Wz_(S$kN^{Z]:ܫIL4IA )k o=F䝊Zk0EnyBZ'$qnp+g1)/jZ7+X99G#L}Nbj'gm' 6g s+R\IA`w3jhխFͥe̠O!6R\9(fb56¹Fx1aϽky+ቲڡNR'kXST3>@/sx s3 0p̉9$ iZ.b$1̉b%l;̀`:zaݻHJ)A?T y`5Q s?cPK4xioPcO\>ǠQ!sLd?CmEʬ3Uu8Я`LOxv{ J'{s [&v mYoşj͆x|dM~ٌc2aYQd".2z0P( 3ZVM?,]̰%Tj |ُh84ߏ[fXrMD\hZl9ғЅ s9S|BYt*pf} ȸGb1Ilo8"n?C.n3+ە t=҂V 4-"1_m~eOj9ak19#ը`A}vRvAwny=)* ]F Ts(.2i)V~[OWf:7lp_<_NFQ-tMO^u%R [_NQRђRVױ)_o3/5~) ~K0bnVߖeQמTґ[xh bASvBUT~:B.7'ߩY ОKrgp8hG{?fḌ5enDb.((K4!l,\LEoJjB%w3ծ.q@.>UxnܢަːwrMu7J[+He.hX~᚜b^⽻~Lt.,L6C;R Ĥ7(a§-2h+kMD;}}-x*Ai0F$U7}zq#*| HGI\E zEu8T_EiYP4P302. '>aŃo6dS54ҠbBS ؑ 8&]nn89]dx@E/oRh,V FC*b:S;Fm]%"+Gފ]v-})^V>2{$r7P9  s-k]]GT3_ ֧DpȯK]mH%24+4mR65R*hǑ።߃K--|1Q,WmD#P mH ^'JiG Bך|u`dA<;kV,\ Qwb2P˿`n A:|I|i >BGh߃#w 5ގ X,l F+b>z!l?(.{ ZSVE! ET^Dk/<՗*SZVeW#NZCpSu#řܲ1LW)tƜ*BQMhI^sfԞ}䢥Y˪v T'f,a-gu[]!8/A?z3^Tʖ6b-臫D(%Oh/$"SN:0 -Mb< Υy'EScʉz"vOHɱ^]wS"pG9owAvu>ݦR^-es{N&)r%Fo]s0Y?ewLdS5ܳ3 W\VB֍EgF{eP[YV l:H%+-'%8 W\ڥ4ΑI2D9#Gߦ#vn0myަ͗zj@d9 L߼̑MN|/J k!mN [,bIu/=({^} |C.Z҂1. D:RPM3W~~8:UHyhº;#60T,i &M rS^C% " 3G *Gwá˿tm-~A+=ѿl4q SStfT(llJىS+SzD"gRA(C1{>)S0Gғ_\%p26fGh~.포=},v-ةjѪ/`hZ香絪]%퐴,0Q¯5>d ^B੐u4TP< d\ak.h2#C9a61 ~.*8^6OMBd;p,+r~'i:4 $ l@mePR8$EXG)t6}Sp Pz2k'7H5_ۭ~54N+Hsy(qJzNw&!mw1G&8:Pլg=x ;HS:ed*4e7^*QԇdS V  EGFtfso@Y*ӪG\gPf|CrrYR7%]*(5J3MVb `册._D~vs ,^f(70,lJ;|&#bk Ft끪AԒ'BSs2{^0{k-2E"ɸ 3e~#IuNݟ&@JѓLgxlTW7wjc8NxqAKO8)~z9[⬃;kKx)y}Z32$?`0}CyAlr<^D_e#}?iZ.!",8n?݌aPuڨ`S4Ոe{Tlvy)NZ89Z5ޤYFuYq}@jҲz5(kULWv:o X֓>aiVO[j6'O uIE| on"SHKq? pF7 RK$ÆSz @8}g'47N&zw8% =JrtQPS$8)ƕC 0uj"B_cXC\s\xOAG|)>VO*w+MI^h~U]nnFvj|XtZNْ65`H|SuKWI0pLĎ?6VƟJnǙX<*e6"nhL;Wd*zud΍~>ײퟯkiȈT3-)n/4)pyHvKRW W;~ϱ f*AMiʻ+νɮ?\Ι00 >vgNyD\MYhbIs[*dPkh,8R.Ih$Mx^ *$"جeMW &09yqbt\tece px[k]{,!"t 95'ke4ϪaSs9޸|}8hcxS=D nTe^fnjB KM`)Ѱ?΁H&ONr ~C臮hEXy]Ax-s%m&n"+6.Oź8,elb|+Yt&N~@CHkm2]<։*<*PY9e_- {:r$ j&rt 1"9KK?l~|[i2;<|d.]gˊ:zm=0:#!GypS>жf5N=ΧO { +կK;#V;֏ZҊ R.43C)x KYKY ^.gŽѯi)]Vu$>$0"87Y6;U%3I n&}qbg)W%/ :RqwN髶8Téۙrّ#w !Z.Y0u#7P>K]3 ol?_N#u)[nPN[0@1zk58o+Hƒ-<8??x#bj/i.mRPhΘGR'|#k]e싯6I8oe@_bZ;KCCCޣ|6侾 H({〛+Xg,jFVLpyf#ckbI>}ױ40)ÇNW:XIR]ܦr6GD)F$op:R_F6}ډtƸX+Ħ#"7|p PP[rT%{ScK/}SbLƱb]JW%ڇc[f<w15c7t98h <5 Ӫd%mCkWǓ aG.tc=O !=MmjcΪ=!5t:UpIWC^ A,>+,+)]\^5^@:ެ0lJU#L7Fdz0,/Ex@V|J3GUE$SmPJqQ %g#G&KmJ_`'rwGvQurp(NJ B%%7,~}ιmzW ~jPէrcZapB4CPkOiW@j1$򁰸ޮB~)"dUF.4㝔H,n$x./,:UڰY 2㫒ޒ,ݍIu}ԃ\t=ˉP9#;BlBG jֿ Ihܶk]$9S*t}۸bȂ^D+o''oJmyyq&а'OR Oݺ%qHq(PFi~d&Uk*Q>{|`?0+[j䏯qvu~pC;}gUYh .୨5YL N7~'|;ь9ܝ˟RuH|=HB߈,ljq 텮b4M&w쓸e[ $X f d+yH3hn(R@}ZP_$+GKnimX\nCgp S-.ATeNaKۈ|;ƚW92E2W--QQXPj1``C B }+MU'Ké;57'fH*`}i+c^ޫ?݉\iWҤ=4 -Sv5^xt/$q/~,ٕRhOA<c%ϵ/|{[dlxz b/(&QZ2eM/frl!_ J!{]\TRd9#M DY;ܘ:Cjр`J@PA\bHvAȢ85IHg6 ${LA(bSi{ _Hv (E&ZYTÆ>#R֨G6Ua.6 1vdN`fFk4=+"ڑlZ79񩲘5>)ǪY3`9ruAM^[he|"X+PGR?j̑F{L]kRG^l!ޱDIs"{Րܟ1|1s!@nY#$fUaP̭D@o%H_v!;KwV66&^'S5KK}r wS/(%S$ywUVW0DZY6mQR 8gGtzllDS%=7iGmX[@.`netv/6& \GW Gˊ:F GfHř0߿ ڑbV3,R؂R࡜I0B)]e-X:y@K0@,rf :M! <'Z}K`D4.|PM8 *d~UIx`HobowPDxѝ~,(!os;w|(f Aߓ7`G5c~4fB#e(4%߷~6ȅel xK?8w {<=^+'mZ 7RDeG΍JqCgZpi#!uERw+9>o-ڊ*T%V Dozk>W!qt/h)h4#STX z(X1Truv[+~<~4\=30C,}2oɆ-Ļ03ʚ4JluUį*p!PWbv!$}4b.һʮ{0)FvאaA|\*bhNf IGU¶]Vy|98mQ F {3ٹ΅դOEO? Y.bbΦlSv|pH\r)8FY8NguDSV48籅"MHt"V=Z+Be;>'7r>WyGW[&[٭ߐtu~'C/N*jůXMD^G-sY'rs@E/4۩ibs٥^.>S_v_?qvI [MsM1wJc5dWY߱b2՝ej?iuf'f#>PaT5țO&<Ϲ;jjٗEMy|kҝQ#2 ib&1BgbЕ816!)gjHLcplFF?w(Eob 88Y40JlQ}FNi< Iw TN얿_TnCrwK5ʟHכ4?$&xF (nU(m1JCRzYO^+FMs/K*Un&؁rAÉF3T r,1<0B `{FPcs]g Fyr ;د?]VB$fPJeukR'f`Mut?/>ra~Y>;j-i@_AT){Eff3\h;+Q:ߖt F 20pD;^b6S~T+4_#h޴[5k58TCߍ!e%̊Ic43\E'^:J茗_$cTXNGSztُ><{ n򽸩>$i:Ӆ\Ãۃ]P}p{E_D t*.|+W~*g6j}&K7ޘZK*k5XL3ȄT%I?z h?t .廨rmW=yX٘)@Fp--< IVn6r>R Uzc'ȓ¡g7ƯV!Jc3nRd۔ u*e'V{ _N=*tx=FQ+ wd𬂮1[I{Z|Z ߛpT3oog,_͌\e}ӈ۞@´w|gHǤUTCwTf]*Yߓ?rT~PM8*{牞N1V.BMbMZ#{þ[UX SPG]Mps 8L>XTAGs ɱ"ꬤ%4R:&1SR\a̤33}3wl B$OᮖpJdՐ =*9Zd܋lWSfz_5S5%^ZA`(N@DezJ' d.)f Ssw`ELVQf ʺ t@ydlT5﫨QvUh ŵxf]&CԻՅ@nI@bqC/Z£ xߘVbA&ڀ6TS)5E @neK D |Ij96O(ar)76ᷛOp[zYAuvQiV܉Z4ѶO=Ɩ5G[X eI%EGIxUkGϤ+2\`fO,fb03W >D8rx`ƘYLMXFJɺbo1`h{j)1Lo"yg+*2TonFU/Q&=:{J-Dbڧъ mUm5`;{7u @ UTx=\_4]U3ޢI1TL?5%iͅS2Qw]24`y`NZxX/KI>ݜ IWդ1=5a1#ɚl]Z^A##ʱZ _L1R+sYL;j ܋l^ ℓ-#S!gF%:jkҞ Zwi"^*y|E?`sH[K4>nN.`c718&“3쥁]"uameS^5}Y%;ice-z<6eҥAy0S$γA1XT?/^)V Of7>OGu1J3]Ut 7fBt/@8~Y8IC~+".R:fNV<~e֩#`"/6bkvگ-P]|AB!͊M{u:G۪jN,3/,po:N{pXDvx-=d2di=^@}<4l*A>j%XBԍ@߼nzHL]02҇S7'%Ahw+~}8_s=iA2u$ N̻<2ʊk;Z^8a׮+PuT`C5C*C>"L?6/`?p=N~ߒ'}"o64җB\J1>7(GClu XllK$ z۾h&LgYu6 EoC?vb N 6; 2C&!lQ4wM'O'T Ҭd'-IU).8t#7jy%^[QţAvv)o]lE-E)3څ-hHۑ]|CwϚ6YM?!b;}>OEHjAm'dm|]*? 'AHI*}5XRBk=[5~9'm'm^> o\W!/Dj_$=.1/NCJGs(*hz_C_0@nJpBYA) <[)pOܖ|]@|i&Yhqpg7~J^7u 0%1Zao~aǵgPNgN|1>Θ 9Fc!?*@i0VazctBU_yܯ[ I.otXwÈq$=yoELf۫9(nL\td]X9Ycȥxh a[n8{fmްU?Fvaj)[ed_k (ҍ) )+g)0DB97w˸SetD b.A.M<(퀖 HĆH_bfun+ +iգJy#PaF;9^'%NzKmRW;aw~,Kg I3a11/AȢù2Oy|eMЫ=_vcUCm=9?dX,9fxQ;ݗ^K{!_V~j6 np}5Cc43CϿLQ|9ϓ>0O=$-gj2Uށ&ꃨ6;cvxyB#Vȩ7ni Ec l\ZO0^m tfDg[d^]å.JWiPr. g2D2Qhf>`U1̱7%RR& I&Zv m`B c?(L"!Ɏ`r7٫jΫ}bv˲<\a)ovÏ: 2u{BD"2)i}q֣tD,jIFw960pp5VĹ* VpG{OniD0^hr "+%6a_΋L"[yP7Q1ф $/LhV{ ocSDFy' 9d|H]_Q%G "l1 TW$ʼ)csAKk0CAɭ,#X^" \\v/;9x~Pm-4"d R5y?2Srn8Ʈє/|bC6 LePdPGP?BVZ*_/ ޕL^'y=rWsT!K%* ]!.٫P)r<َ Ȥg(_,qŔǽ:DԠ\HWө񻹃}Q4l x|B!ynq-n6Px2/u" ye2gPTР3:~cm>ԛ')@H]cr;HMQޖ1d8k/bvu(Mx͌yc+"8fb`STD&z{=@0ƒUY*w醡]M̧Aߑa+>;cҳ&aj'jz]OԦT"d'ó,^T1ePpNݴjbzf!f܃ A~OD*hrx/@+b< Do=[^4Uzim,ճ5Si3lez5SjMhUF?bg. lY90AnC['T8)Ct<8H @-J!eTW/Thg7[j2`.۶iԍ8)-Yscm~'۳c]^S94ը7HC %15*Ǖ#Hǹ{s_1=)h{I6cz/GYy+3f (tipٹ?*1/1c\TFVlɭ19vH3:0\"չ.`FL{,dww>/#v~a{32N9a~N3[, Ww<>j",8~7ґI1`gU p{iBr9EX=l4t}zU|'z=#LQM"rv ]VnSHG"cݸTkZźØsdpF,KtD?:Kdpz怡M o||ӕ*V[Wd緣h xg׺I+@Yu'+C{œzmԫkqu 4\I.UsVE84Ϳ]{@#k7cW'1DWbroJfS!&nW`59Gg汪RS ͕O̮*4GH,tA \oȺ2Tx>2pU -N)?j0̠0a;hfWB1>-$σ̷Zs w5:,rL5p?.43aڈkvyxc노uvk|Bo n5ַuF‘uB8_}#m<ˬ9А!^ʔ]5a-tkJ|:| Ch QQe[ <3pJމ$*wvlb4}9fjo8Ww1ly{׀HTU 5 Z"?l[.G`BeѩzF]R}`~iU>NQW3~T[+1i |WO;qhf+? NYtcp7%lsnУg֕;:WD"fS; SK'(-AżJsX%ImN<@ YIA߆RrRyM&s۲Ogjc}AoY?@ǵgj-m4}9|BkZ ,0L؇*~HjZFv&{j)Q@GݬdzNfe3aU] 9 _r{X5ń|XKNtA] >ѻM O K|aB 1ǔpϥwD4V(Cq^h" :p<^sԵscZ56 ̖삕/-gdD-cʐu9,Dq 5şcP*Jt+!2N8k4*|DF>*4&cbU]kCD#\ #/V\6cբ: oگ abV^FJL(qdCUQ}nAvFlmk/ƿ?eɣH}XemК_{s'γ;ͦ՟0#"^Y'z#b`w:YמT:> ۔\'sI%'^Z6L4œCɪ;F>1~i%9W4} P,l.XGL/S6D}qbw\"NVlDM@(Db&4R_]8e˩Z3*#/'-pkזkLԗ[(@] 5Q!0ksqPa،hb-/tkr*KD_QI#jduI۱ NXB4[Qoogv<dWP'Dng< 3l2œَ+"R5iΞ(@vݜtV@R4P$C~΢Th%z R>V D 9QE6!oxO Y^ 㰁vcWt𶉡z3o_d Fj& ։QbZqMVși"Y1fjv28ղlw~^µh~HR/D2X+6u7W3Ue7IM%`Z(jk ꖰz# n SV(փFrgxooF{egoU]{KtDN:Y1e'/Tٻk r"N~Bmr Z,^|7t4M k92ҽ014IM9EO'Ђ Q{I vT޳7؋t-̴On8xR?VH_U^Ljtu }8LV oJ4c{J;ʅ˃М/`crK=Fz`.W"UR%,~>+X7T'LuTCC5N6Q#;pϗpavS"`#2'?y ~@ y~Np +˶ЊbXom]}ɓёJLCɁ\?oPgJU\0Eޡ~W-0VI'؞zK%IUH60Dw gIB?w9p+.Uby(dI͉ .:XCv-6OQ!k[TOTM VG6:Lm= z6kB>M^\xg)pWtˡ⚫GAA6Nbf[**x&+ [C tRݔV/pOY̧]J-"O4$T?l5YJs\gC~)E/s;m?-eER@U!MT*G*Y)n+(n8&4mKdn{0n8*Pnpni^wm_Jg9^ۇv/?B~',10 PyӨKxRzÍ| ^"=tFˢ_ +ܦC*8 E/9~u핂|n Z{HA7m7,l_@3ƹv-j8Ռ4['ɂCPh8J6nt:XqΡ L |;85 BZd`.7I;fN++٢>hp ĶK{W䑢-E ȨwUZH*)@m`"rT߱<'Q 6{gm0[QشK 3OV%^ /7l$ȍj&ZGV8j "iF?9>1&99\iqGDW˭Nw0U $Ȋ!k{4&zqcGn3}~Z]^1V4VRAe=a"D+-B9@iˢi=ߨ_ID J0W'ΏaɞTB7c\q {CFVU9 Ӄ}@0S?׸('Qu .EpwJV\p^Mf=~Z}]OB<x` M+c20yڼBXub0Cm -P< >Ίc \L]*]d b}4#]{c+@߿I<{ k:o<0@"g ڹ l0k 9K2˓}3]:^m; 8:/RdosA]喷&&7N dH\XTv`@t>w!S%9o+HחCǰC?,*}AU [t!CZm?q*V D||=@R gf$ZNF3gȨgVwYD5K=y*βHr u+Q)VDS͗l'ҿ^ @VcS Hh0=6#a@cVhTh`Ln? ' */Z|P~Aޮ+S*v60{^%`Pɑ8j'pՙ3D^G>QE)z…bFĪbYu4 mH΅S =+XqKc!_QM)EҔ O5=)cơ~\VQo<]wtNI -2Z-˺i3Ist"$ Z?OK!&j6H\ux5ہwͤoağ)R4P>&'Q WQiYXA,On}B[ g\ga;3 Le}5(²I&O,4X8Is+0DsɁz<=g WFeV V+nE??gbh2x K]I9%46oI۪L)42NOgu_kzt͙JjD.U]Q [#5"#>T˵&1FO9 X/Fx9"wHG6n5KAbIx>[]9Enh2vDjGAR{l!2٧_7@*ݯ؀y+ wi%=olgaȕWrs^{I_u2 (kGOFā Uv "]js ݌(x5 Xv= Xl_jX'7C!E8׆oMȷ - !ewŎ߯ /)9  )G]һ&v2%Uh.`֓niJPfݓѕڥ$LXc@,_KZX$b֘Z-qKŧwQK0R{H!9=i9^T' QɈ)x/?'SoMCd? j@N{7nM%Ѵʩ5C9dcoIcL ?~j&@ڌ&\b;M_WDn0xr_/%E[Ր,J.30Vba?蘼4D)_Va 785I6F'Ұ?IcOoxoux!Dl@,5tN) d\7A :۱J,0gñ'䇖O<0a-T|g&:,{4i:ߋ}[Q'vt5Y ~X8I-GՌLʤPVm )$j7fW':A-z,;΁jҵهO̟D㫷TX#t|xYOX>f3ջG( `H!m? u*C6Β"? WXA"dAS݊GIT\`\:dѠV0Nhޣl?UeUĔr 藎+%zn@ԋ\~.Su?-:*3APCpΧˇޜT0.zHDlےڦ)UYd!P@X== /ûh:it>0 fI[QꪆD^x7H5vOqn~+R!q==|vզ߲\A(zݾw2&O&x< t*cZkj,(+eo@ՁN0{` 1M$KEdq,i %U{#'T n,Nu%16'eh4KsJBC1z ɃDE`|)d3\v{7:m3cVs0-IL+r9U >Uiy r6\ˁfw_4vLJ5g'8Y=A%SuOyXD!FT oSl:PL(tDOΞ#D})As= OTƋ*G)p$cju!Dm5xx.'Gf.11>xЩ+VBʳcIa`容KԠ2f 5G7 :4J4Jk0y&,py?C~ ӫ1D6  Q9`H]d,v1ղ(W^P+(.gG5dzfڻ6;2 r {oP\C\ ׃*NW9!8w@oNnob [nuؔrIdȹ^Qػ8*blrl Ha9D"Kiቄoè?ESkZez1jpa:$!Y}F>sg ]ہET{kM B&1qp}{x46gɼ.wQ!T392)iez1S77y/Xz65sMٯ{S&^&2L)NŃWgOƃxPOyuu$ Ȇq:uUv1[8,n8W7N11_b{* ?q|:C a"ಢ|euOӥRO=% V5+F^;k>.;2DoV됲*4ٶm-еĴ~# "k k"{/ Ok~ l"a L }t rOnI#mYqL%͢CxNa(,ֈVuX89[b/Tz~~M>+K Zc09g`q6* ĝMD o-+g6܍]<7*qՓ`k|e]r*u90[Wdûʾ ojlO 9q(#+z*y,Qe^ @'B_F?ӷ Ҁ}4G4f}_6$wFWׯ$7gI%) }^/廂t[ApX}t03A+UH#j:!UJ-X^2+;;E- %D%+MdL=By{'RdA]sQ94W~ŭ.i&]:Iڢ6eT؜SB&\=یDKF>'E8[, _;q'oawSIc7.@^M$80`6~-QLUlHl~9u۠Yƾy]eդ.:(!UIw/U<6mE!ܧ[#-=ClM(ݝޓ_E*its kg_A|Z|`ێ= p1H#ܶ '%A/)c1yeT 3ϙ~;lw>C*Ӵ d8Pڷ,5N"-(GEK.gR :xxܖ^|L8uQs/Coan؜z :}#AC9 }vYyƝSMx衶k\+%f*<@uͦ3(4J˽ &t $&"q15,k@k%"sdk=W`>I ]oughY.e=4*gͨS~z5)FSY[J~rJ>yuyhLk9J#XJЗ 2OawFz/ (hbsVȯ91+o' 7؍Ut<i0i s/szD4C>%>I9N f`IpcL P4C=\R35_NgH^"C9Pt^tC}pǔQ[+QKeH cGq|>J6ȥ"rZD=h 컙Ij#/ 3d[y-@$yKĊ%+ 'իr%G*I 2WwV0c-r vX^z&Pzzڋ2eEL5o<26 TnVNW8Kcx=3_eq |r&l?Bp(|ΪF:o/$Nxk~5}[Cƻ2W(5|w]$޿K 8ÅbY|N- [-"$r/(4ktp4)MRJiy[x NQnW閄B):'ےCEɛY&1Z!=( h>k?>W>R]'E6gg^.L΢Ӱ?+B*5zٖSJ":dF6cu3QM[Ӌjr6/iЦ0AdN̴Nfg"HT?M322G~Mzy@5$ tH&= GU_F462+:E 488g0>N?yII05^>bl*|+_Q6̵os)#ylG;#<G:խT-qˬTsFgرl<=/=RX]xPeqzaÛ!/}|l"baqk+cD{DP?i01{G.g0AsP}ttQwJ @.\T)7͑7 Tⓟϙܬ2eDLÂHf (ô,7j2HGfgKYn%[VMA7unv9S:cvrӁ3B.s m󵍃x|t /At78O۫p-D{թ|8 4r!*kyP Oy~F%-uҤP3h{]MTsgz/0ίQ@ BI T; ÊC82*"T@ 0iy^/!Hd(xs>j[l{So28OxrH㡘?Gs%I}DccFSn/i3:OO?D.Nҟ<]Mtjݪ9_nqWOͥ3tɹj'1-O&MA#(eֆ~WG}i_~\Bx"s 9SآnFIxsa@ Y%ǖvnMQ+ai&?.ɗo'DXAz fe|hv<3pxW+Dh{.߱g`sUg8b-IpȧtFPСjbE0 2P|h!M'q!{X=25JSr< Z2Dy`1H߼)4 /o\Idfݵ6x|Ү`֐x Hxʊ1( du[9=n lH,5ǒ2!sP>ޕ _W q0O.ztzǝ$C +)p]);lI(ِmgM ^!> 08@ePqہ=NS8)P^Ad:Ɂ оl+8Vhuݎ}HRτOdI ~Ǘiz*"v| M|Xʝ#0 2PG}EãƧ0'A WIyw{dWf7,аc M"6H \1bJ-]= #χ+!c8s 䡮@p{ rNY;ދ+-[ߵsf@ X`˓`(wY3nvQVsM,Z" sG$cd18[Y3_xwVw IV# 90(zXԄsLx&xqacV .B*3GZՇTx@)%w h+/ڭPd'yׅBp9Ij~ۼď"zz߬,||ceCq%o;kZc.gETXf'M4wH k/j+X;[hvAB Q 3f"Z*EAV|CzLnnHʜ볰Low^P2V (8' %K~RuW?u%\ w/Lͻ)b.P*ٓ0}#+j/TVLa[tmN59߄}qr8{>IWCE4G;ڒ[ofe1gn>ًR*SVA^ZsxzG( o1̂po.= وVJ 5atu\ . ) a%h0g{Kzzz1Q!0X<o;2Nu:?YҺpG2jʌ)wcWv:-ߛvZhg~YB$;C&/cf$x !bQP}vn˨΅=۽)Fߟqdj毺KC>j>70֓`O;4㼨fR' *}j},OsW/6龃c| {/#nhsz(IhO^WP{9`SHOh8=OB,|m o^e_ Ğ!Krkk^snXjj(˅hL8P{]Ŕi(DeT{&y9 72! ݼv%"! /mI#ԁX a1 Tg(UR`(0瑾0_bהjC(zs62ܧ gm/Jp(%\ _ZrgIo: &OpQRnha*Dvۍ74h`Teq0q_{'u_1o^{;pӋlR&$IEx_Pi5AϨ ˉc%% V'!3 h0I *,8\ &ҫOVs2(W =),dY |t/m|)tj\u)}i1C[U!%xtq keq L]g*[A0qкQ薝ojrchd";%*@Zoa8#ѷt%E}nǏ)ǽy ߏw_MNEՄԄKw}]Y;= 7v+TkA鸷&xwÄpt92u[S@kxҵx0R:'G/}O~Oq-q3] lޙA8 @:w Um{⸭>:*~lMP^\Gtf R_`ia%EGIv+ͽTGMM`S56ˇ"ҹ-p֟G_K_@YQ<@kyq3%)8Ng"K KM"R^ g ܋^ZZn(+wZwv59eq+=ϕO&7 61Rk6OHɩՄU̦bMO^NJ$FU=KNsg>=Uޮb=tP3Ւ)itVxJPcu.J:U*;j@mJ-(#!QeC9=lnb3x42V̮Y ӝ"c{JB8F>.OQ|ęf7O2J?J91UB}r6WPU!i0n׍"~^4n]LrlI; z+RA,ΰc!xU0LwE* ߃0g*>vO%C V2q zkZU谷?]~YBdzgRRĪf'(B`]R}씗3 *^SԪP'c@tC'N@ yԢc$GY;7pzy4"W I'#ȘmL5wp3IQE^wxfd$Viy+a΂޲Dh^%a٦x^#28j|m5GE *SR/B[GbÏ62=ER^^"YfŷtU %˸_3~wa9 `V[ uG³9Z叿^a{ݦk4>r4[dU25Z!Rgd!px,0jxRƮi1jYg LuLniH+\R` AW°5u|&x`#ǖOM m\ST([jYY8C5 葚CE54qNG:Ј&O/u2VZI޻=٬+M[bO=y\zLeS^V%# ҉VɝV埭?h!$+Ơn &.xoMAENbiYR6;bB>:nO֯A7=A!`ޯOT7rMunOjQ?? kF͔ #$W2 yB fSms(r^M|>*I77` ̯pb|wGPP`%\&b,'*oǂ'Lܒbňưq#E)܉+jv,!mwx ~k!?K܆_iHqCI#UO @3X  1,n˗iAZ}L\4h+68OP7OTw"U&zf5!A\Ip4zo(ZyJy>87K*/Ckk ̭1C HȢ%w~q[t} N:L. nq+  ;DS*Qυu.?۶1ݷh</QϮhw0y\NG@O'KL7^[> Ah˶V!bW"ǀXUm/3b7ܔ7FCIo;KV?\!πr-zXm>JYy+|)lS){g:NEƊ`b>+J7Q3sFB*^c2s$b=J6E.D*V'5o%DZR+9XGOuzc vs0Ϭ/mo|)\ ''_+qwA|lFD6_s7 ʍQL rR* dǘd\O4ɛcrippod @:0E?A )GVw'ˠE[H+aWȡcs&;WhΈB¨$F2~|TV4(hy,ֱ#e <؆=]pir<||#Pb3kg QdGj>na5u~'.S*6GAݧݲx(Z TNֽ9벴Lwrܾwx)w}3%ʫIūDՕRQTS-3ƇxOǏ>E%?HV[)Voqp!Ha-f@ikx <9Is9l%"x́x\ s*c7TWLwMS*9qJd S̝Lam;cvEp_7LV>|VO> !1],Q%C+ŐDZV%[8JH9/bK/QI Pkܐyx@|,TIE.l9QȟUg(ⲄDPBq{E69 b ߺGRbol'icIHbL #fHڙ/c 6{WP߮3tֆ*ЌKr9z$-J9Ɛ?  tdg`a{='nDȹvb8e!!Sr}U7Fۤ0ɽTV ?&Yh"&\x>->)3T(/QoܽEI3I. d>*rh} ߄7(`.-PӢVirXߙ䶸(T&w|UjM~5F/y<1ׄfd%4X;R3?%?LͼkKXj"}ɠ#O610O?f \omXES0+&-jImg^$^,BW6 t/\/-Kibv)Ʉf>!ԭ[\;en.@1n0Y*'z))Wj:M| cgK>{P6&}0щ\z戋i-.8i8Yd:q@8{۠6Qz64*Zip!a 7Qڝ]횄 }V]]oF {[2xvdҨ+4FKCO )An !/u"cG+|P>|yw>s8BY6Q׃`wCSx]M)i0B╻X,qow"l y [I]<0D1$ҳ?-w:(Ƈ_tƸ3댅=`{PidV2p>pЧh&><ڵ"jȉ&8|4d}<ͬfϼMSXn׉_9 |))[<̴IJva[7^*h'"Bb0U*T=Sސl +@lj~ıj'qlHX=)V82PohapTItP;QP*D%ndhxn?`vXIՅOSj`qyWr2JiN62 ~ [<ÈnlR3IÖEOd)=biJh٘h4Qkr K&fea7gA#+jn^\Kp%@ DrW-<.ͮdKvHq1 e?RE:Ar!tZMJU8~&.rXoVJtT2`I9З8*'fTk f@  i~A@'_kRV!FMfk54 U|}.t t;7EwbkAc!Axs {'I8#n:cU["i]o&%n% #9jgm*i}UZdʺk$<`RDliiYaQIdIA2AJJ\o61rœ5 L_MHM|sy\t꧜ Hd6CA;8R"MMynŕPz0>A s4WVLZ T}t͵ȖS+~tt+MKs95sDx\-ۀWm]|`P ƩO HŤuZO=`6(*o|d heA|CcS/vm蟂b ǽˇdD)WmA0SkɾBKY1NWSS(\jHJnp̑'lR ,j} |=//9onK%W[+1cOgvbw!o ,n#CyfO#:3e9m&B7=Y /n#GYt!퇍-U{ѤqP)+m 㮠%LBsnnĜxhW06lCKҘ q:E^X ڟ^a+~p许{D&Be)Q@Fl͕4]6|K;eoQ%۠WSnWTנ؛-i}b1O=s,|y9E{N#aULWj5cqw*mc@GDdBY.Ж+rMDTAa"ڄ_s暴$@'w-ZOx$+wWKC T/^H/Fi^luXonG^N99xCLpDZ[-zgD/N7ȡ'7]S?断_ Pn*4uaN N &އb(?is6% 3@…Ĥ־Yz&]yFC4n-:i&) RnD[ 18Dz>HN],XƋ1-$rK٪ E2=zA^u'P-g3SffOYݬ6jݠ䴘 wHtT-qxɰ;^asN 3î>eSq$cAѫ:CPoT3ld4%+8fK B,DP4!/no-)ędzHXeVRhgw>=2kFeZ`aWLG(Bua V]TBoGdd]h`j, -\\z."X 궐G8 Iyࢣ*&mL;^ۜY9Dm5 C"yU$A{&$y4s&|]WmRUxלm&UN=mZk}m1Gmsx뤄@f/- hI v8@o f 5C'M fZDy=חpfsR%<kJ-|,nmbqh3ˡHt7,3RV?ݷ4kC௤UUJoi@$c8y/P3F;q+Δ l $7?+?}ܨSƑIނͯ%>'U=v4v h-n3)"0XhȤR k]4h'w܃ c\VWꋜEm>nsÊĐX!ypfè38 l @J-P"#߂κ"eeYz ?rcn,Qr]2@^ {,U kkMaJjUf.@#gGw~Y/'. Mo̵!-fIۏ.oJ(e)7ps`G0_!~Oynw40kEY1e;tչO}"/#&[o%'jô+_LKN0mY0Ng Xm~Ip+-9&Ex&F o3qUTM G|tU ŀ70QJ_}p[`~% z^ S{Dض>scu8S^WƱYo2:OhO\( 4hZmZx:pRaBoL bE0HNagSI̮`Z*ݎ߀13.@C$ߥjhsQ[/y<P1EPk 睨-('[471~fp>*9ȭ@%Hl? 1 Kc?*V[:(ޭ[iCۓ~+NmGUNOWO5K@9mCufK Ii:*1}Wnnt00:&;MHD6"Bl+@<^63;%ed톜kuf,.9)DBnF^ۆWvb^Ob^f[BVr^@x#vچ nu1{: ^*&\n!vs%SHC_MM Pepe>yf-HhJWGg>QnHg޽`Z`BДIAxt5qe'$7 H{WK+~q'pjt LD-ӽJ萍mp$MvƒE)R 4WRPjg%?qލN7&Pߏ%6hk&8w6/P*ٰ.kK~K\{WtYwZ ?<,Q#&Θe#*D*ԪJC:HKv^Ch~)Lt Fu uQiٯm&w4eׄ')+ '߉|gH>7ٳwܤ2q~HQJyITȏ`r\qii|o|)d0KRVK6Htzd5x'Ij=v|b9S-Fx/攆u6KMUQH@-MT\G1@ȟ$⽥@/5V*$ѨȻbM@(L]^xib=h9FY$(`xK RGZYfnKT> 6>#dyj%sC2ceX!sVU<=Nq́$[k;`3c:&Z]SܳpAڞJ|?9"95xTtT~r=ݢعo>:`aUL`7>Lp"=I׷~߄NrɮB0UP?K3ZP,ngi2y O7#38 ~p,3wBJ̾U@!k M.EthqNq?]ÔGYt;KI쾫\a,zJ Q@h6˲ᾉV2'즣͜)6Y)Uw`U,"Hnssoy~ ^,ҤcE%LUAkf )$PkCBCP<&p #Jx`&@ͽ*RgK,!lpz\{${5hO  t$_ZҪۺVIWYugxO^Cч!tp|6 gE%2|lŘÞ&w0ni΃<- rq gP{-ykӻZCBbzVRR\#6"e9MYKI0wOUP$ԷLrl3d$MZ_t pNi ͚U?+CNg/mQ@uY6@Mt%v-]aΩe7W2D==VLa/&\I )?s]q\I̅F PbdRjlf.n׿]((_ zCpTO1wݚ{=~k{![-hlb ilhWMD o$}X?#AhG-櫵P$s{(ROSVFF1)W!Aѝ SIx'tm3ݳNq8 n ";'ȑy.쉀72JwP :~ZqMY5Fz_MSRSˍI9!yOsF1dyl%0ufdǶ^oȰ+ƥ92>WB3y ]g I=ӡv | nR;-`k4 d/r.1覅k@fpuB, A7^~"՜^CZㄥޏHl_]sj Sn*]"[!KOve y1(MqV׉Ͷ(ī "d>c_ah^覩m-I4z>YOW;R]'H2JˬU%0)'ɧ9?d "Ċ3A "SѱREb%qMRI ϱ'g^B11)jgVϭ|iRyHN*^gd(͑I!u0_9Y i8g܆QDLYȤRy'A{((^ANҖVxD^` jɖ@FҬ&YQ4j]{U 5\3P $5\{$ն)B%n_&&˪B' + Pp{ 舠k 69ȃO5*f^ގ{8ص&{}/S /a%ns@ ?Ԡʝ*R1D]zmOEuy=.·bK;oƥo8$I4Dy0ccZ1&Y !ɞ3Th=7L}֦jTe_ -u3O縋:HZ`n*M*Hu *+>XYdTaPܪg RK7W+J{\B{;sS$rL? GQN%7HrX)s^]ddf&ho3r_)开 JB!UԈKf$$,jM0 <m|pJ8G"QR'Cvo F 0FkrB#@` w(͢G1;)-_twcpt$sXa~.tko=2 f :Cn(gQs{Ixz|o[%*fyUL%Cu2s3bD5LOvİ i>zYOj'7Ϙ ©wFe{Ua-̎Nyd.Qwׄ`Sn5䟠C6]S *-@_GۼB6n8P[dxd$wok6#>,2oEݟrMX{ XnoumuqΒ }٤[a$8ʢ&g8wx%/|~MĻ=Fl^T(׊c;.i5*;4<=-N\ݟJ#!gec`nvV䋌rP(7k,m 0Š2&IwϤuEm¿騬nbe|J keIzd2z;@}I_C3s1Mxzѯ|UQpjvm7`Jf. J~oiCTx\yVcEfM&}n>\nb;_N+g.ɟHg-)v?1YCu:HoF zoD/ PR'߂TZpkNJG+jqlpJK%B%"D96KhL!n]Qa*=qdGI5`0&8F\p'Gå4?>oJBwT`O&_(&ZŜ0QyZL8VӫUjY\_|{NBXqΨe>օua~k)O):CO119dӫԊm]Ɔ~+5"7H .߆|&zU->HW{6g#\en)?:Y?UH(8&Fir-n+-j.~$(+(rV|%CƩvtrioawHX# #Jz[3ؤ(r yA:IW8$ӊ(1VޙNߞl*g \g\X,iDϣ;0,|U Ps eUv>쾴jrl;hDNb.|&,75H95 HFiߙdap6gAzwi|Pfׯ< G[k3K4_ŭ6Fm©b糿Bo|ƶ/|~EzY CN {^ yk32vhP<#CzⴀMY,3I G2Vb;̱(.`.UA QڲK(ǟʆ~TV0lqӯ^g}l 9":"g8bizӐgOӎf[R-u(E_&qɞ4~2@ǐʹBu8Dd9r2țigԥ л,LeTޡ"%& qvr2 o2!18Q[v$888jvU JL;a |A r[ ^"1_&\+ݦ)٩#ytnT 4;C_M?vQeM N/PO=6<\G !@H Ǭf0Ɣjw]PG^1$X+a7t-l"3>i*W_+V2FlF-\\;\1]*WC;VDV]~` ,e;䆴bv&>aȳP5(4 g.7M֎6:4 M֋ :Ŵr 9wǼQ?TxUYl: 8=}m=cIk (P7m!aA¹$tfl%e䗡dg,<ƕm*Zx#a!~R yHo2 Dm.Z0lvVQa\J dJ3gSΧlYR5!*$½:+LZUӉ(SpAßѣ뇄[D q( 3 gcΔD]S[y!x/{d+ l+,LpjMʔ{bTtȹDgBKM1LawfsD>?%6ya *v3Vœҋ&ogB/UAioO={&>G3p/J&:z r;TA*}fBTaNOR̳zCZ{[;;9~&:6-U˓QpYg}R[񓐭'`JKF~Y(Zs?8A)hj}ʃVZ5XAH|cp+Gp/O<B6l񠟸ҋe%( =V ($sm]݌R9.btXȭPFfB È%wnϷRw\Y;ǝك$oTyG IlouBTE'N%ao )AD Ⱦr7i2ޏϐ]ٴaC|č|[3.B%h;|mMs` WXjC.W["϶0StwD\'jubEabǸJtVx L}c;6X/N]IJ]Q#dIeJȹv&85+(ăk]hl5vKNy~\$v$[|::la|9B3m#U{,ͥE dX=>. 'TĕD)yq'C v5[ļFA@h+fRJx,ʧCSJ`n@In˗jx r`UB)C^EZOV#Gsw3:FCeqX螉خXsl_ @.*0 {p\NָN^ x;ݻM!pKLRg9Vdxɒڻ]YFؚjuѴuU=*){51dkρWke :WGGP5aPQ$a {tߑCQ@̅G72`"F3, UO_&S7P[4J՟[e׎uI-ל6uI.MQcMԈSXzsȌP)C7)@C Gp hƚ&r T~F8B7 q|kޒxjбNhE0ADOƢJQ*y>3҈9BbP< oj E[>QĩEG#}Ҙm̯LTt; fPP]i\yYi f(i~>v"}@mӹ )*|z$;2*\c [0ހҦ |vh\oqQ o.$:2QUd3 }w =ïҁ=&.SMoھW{QsLKkr'%>Z8T)EN 3~?*]5d,gz<5}QLb0 T8?&gs˚ X]Vꓭ5&p#Cu;58*rK-˨_0m#[S`{6_v l'(A ZGj6NӊǼtdw5!̸Dmd_1xWHvԒ(!7A ;1ߑ(%^5D]2^ׁhW-йp i=qd0ua :J|}@CWf*qoonms:|ߘ;^]~IϦȮ@W;ť&HH9Y35洤6ۘ,R2;O"fy+ٝ:_,"Uݗ1^r;+:nbϱ jxIg"_88;-PR1=2(nfcBߥa7&A8nN0[_ęF.hOEDB;=kl4;0LQFLѻ1kǠ`ZPWeqn ht;p-9?a%Wo|['4R=$֠4ȯMY:wyMY?QW{?Ut]6?$ٰҠP73QG'Ά /鰁<Ӱ*skz6 5ͳR55ql"~EaL+񞾒z_y:Z?̏]Ο 1~,][v=q0Dn){Șt~p2:~dYJG}.9Y~ޅ[{R`O뢬öb/4ү !Z9\92C9Y!VLFG,;h;1%.?S>Ⱦ#JBa2q=TJ]X8\fD#RBSX N>M&N~9h^k$2Rgy;؈HS73#2ͷ\aya͌F Gil !fu✩cŁCX=r\LSV@%FGOEJG71U| _M SRş{b?igF^T(3H/[lfHg!xJؽOMd9DZl˃d@ T<>@"{}7a]R0vXكWڧOyp̳Tp R r߮ԀM7{9-9{^l%g>i2vޠJ4k3!56>s/nj2=TN{) /Ms.}#-<=$.PMO}P<\nɇi-KwJ iG,Pկ&:{/%bZ 5o'zŜ+& ձ744vT"B5썮o-D Y w+? |Iun~$U{fLv+Z6zI̝ Qzv%1>G8 _k`tLv<"9}޸Ğ׊&Rk|FSeYdaܵJ/:oHu&|Qc)m*q~ djKIO9" }?g|G&׉yftCm0,/2jl)(rcGoP.pE~0S g>Wxt3EXɯmM8wbܢH-Uk@ ۺON~^ qnȯKf3H@1DGUg6F\M<7bxpdof΃ 1 z#H4cHgxw (胥2褠)l$Cn#ң ?ȋ`g^c_Ul0A]}/^G<\5 p~W <×vU֩3~epy C#R"^3[->:Мўo+rMϻgKqY[x--rK- 5cx#sWL$,룺𺤋Bҥtk:#1 #eKPK<薺3!Ya:Sbd214FW0pmftO志X\;':4p!oL9RYUZB?kdaBRt"Ǹ Fm9X>F|7tual@*gߑ`e`p&3cBR=#2ub;U]w*a3QuWV[T`/7ˤ2m*Y#TG;*^3Kv)#dνݸTpW> U7v±ĽX*Y&zo~׊+2N[x@7UԴC,n_jGPY> DEݧN05Iz=GvO5Gy.E@6*[3# L(]T^"@K(ݭx[hT.!qf7wV?Ug8x+g&w x+LgPD<}%TcH(<(B^-I?ɔ[C]V.=< Z1.ML6F}{Z*Px%3\"GQb3E P763{~/Ԕ$UDyj@|XN:9,qrݝ-TZ y8NzU,-J{F/eW߼+*XAyZCzkip17cb~`oTAQx+”eg TL!@#/:,|ca 7n:Dnic@'W>~tϸZ:\?65+XP=,`/ŋU3q:`&QB(RkE-Fƌɡ(;`g,.ʙߤ=[&8Z:c/KPJ\H|:`Ne"}Uo1aMr>NMg QkOHM8ѐ1N_ "{ĩ'* ,) G=* [X| 񐾊蚘~.HQ "mPNLSc b P9RX߬!ӈ/_,_ŭ] ΝTgѮh,jDYķe.3M,ʭj .Mua{P"j<{e+txd#/i]GZ:ɚ>^Y+y/< w.r^8`|;w!Ƿ†Is8 :n `\rb:I|49n,H19{~^HQL譻$6n>2^ cU+E噒PVd))QOlaOۇܙgX#i/8'2ђol$ ]ꎐPUt?ܖ=%4yWҎĵ 20vNNyuM%&~Q`K:XQk \Wd Gy$VMVB FהJ񇅵}s%%A''4i H@oJT9Hz5Tjei^YuPH⼽M`(ڒٕZaٜDe95}b9@"l2%2 0PZaR#և$LZ]Ԟ"? >aUXkolԱ~uRU:`(IxH`@ѷqT +e&atp%ўQɅF^MG B!ȯ?| #$2d;]zV! "gHwsfj]q @^""]c|FU;yT3#GP-{΃uQXP]#53|YT^t\2#'ߥ,-?sEd`; Y+GxT`1'a\iٜI`)G@ۻe`ity^P2gH0lA>E|CWJ$񾫾i{)SC.kww)|I=X?9 g5t;Me&i EtZwpa/ hZ7E׸.$7x>9Ev$MJՕozR $%ova(@ ԛ F![jproT^QKa ށMroHt)~׀j8"z}sU߽e,h𐎄1Yȿp]u7MY"_w#.&Q{D)JSX՗I0g/sWW>K8ePZzӤD0#%2jT+MțkZZ*HйAU K>`f {s9Kxi@7%q>Jz.ݲxT\"lMnkB,.D%w㡫 :&fP=ƋCq7-rjf'nQ4D8 WC1j* Zc T2~j?69O_6WnJ7TK@W{ǂ˪`, TJ|%qM$; ض,)&|QþB:GOnVtt{4{\B4N';ǡm K_A6Hi\U0q뵄Q (|e.@W0|}Yqw\ݫJ0#rU a"QD!x8Ő4z9Q=xsJKHq57udoQ'#5"}A.:M 5E^\ ,wS厨bcRvx GN鴄iQH( uAp)j%wJvylc oWUA~$S![:@Zʓb-\:Cy}% aaSʵ|aҌ&cu 0@<&{nVH㉻2 tv#?>\UHݔ \Amh[ yl+?x+V>5TPD.&޳u=.*GryةEl)TL$実~8PwNIJk$aSY?;׉=W͐ >= o,me[%P5nJ:a `nvPLsjx017 Vo~WB [A!;h dj;WOh\jFd.o%= oo474lBY%PzkHHeà,* {P*gE*f,T5i{;BFGa%%"hJmXonW0sͻUgŹ)TnKSqq~ߒH+p$Cp9e͔'ͦXᐞ(vn6NufL>&a!1[jsixh+ 9‹k;+i^]VJ5/ĊNQg>#.M3/w&u0s]O'/3H. j& m,7`pEHmv+`^rh )m0Wg"z ˂6]i׵j - ]XӼZJ=9Qkr0^! =>ptT!ѺfnBSa#!"jry9 %c{~H#t*Q!Huy\5ŵ %jCT0 9r.1)2إBN "!#󝊥UCTfBj}5_䳃l!lظadNű =q~rN[af.;VH]Ѡ~70?A]yaSSqE[{ 'jYZeFL5xѨ8ꑇ@3KTW[7"}+Kdd pdOD֊h~0CI~oě%W"챂ch~.HϑNFeogܞ!P( (B<3TOXFi(|"Ux`lNC|/>^(+(@[ӛ ?|s"ʚ,"SsluX+GK6Az(咋 5RnP_[Y+lGB<3U kg%ѪI$nh&F$Θ~^4ƒR_Fe/} &g37\D*Mx L+jQYdƢ \%O8Xsc#k5|w\b&0zg3$,- 6SC}OwoЅp鮢[eqE1y: :vo6 ï${?duр]#gY_+Vx[n$@J"ebZLY5;B~JX[-r QI*sr7$6M 'C fpԅ]ZoɯEƥ騞ZLwᒇd\=[ TD L:wU.0a .U_dBcIʶ3'9v]D&Ɋ$v׋laL?(*m!G\]g;h+2ny[>nHhAf9@|%siC&3ԥ15"*B =ڽ>F"<'ʤs/41z[Kۓ M" cy%XʆP^ V&[8圥\&;`*Q ֍[D'5\GYp + |G~;8Q3˯0b(%es4݄®,\d'67Lh7|%ͪw]g hC^&rgUpl6@ Q >U 3eB.5ա E;EрA"2dYk͵ՈSf w+N};ٹ%Оe/Ƈ+H!#}͞ËzOUTNOCTgXdL )WcXP$qSft1 hFh/_qR)Z (.#ΪҞO ٳsiAE/LrZn=2t}$T4$8iw(nо!uK1T0& 1U*'ў) 1ƒt}36`^>@˙fd ^|UCAiZVv &oK>U}8`%B,5̧ÙϔWm ;ּ4f~YcJߔEGB!(;MiEWkTzRVm0.o~CH͚ %/zaQx8k&"V(b l mdZvVs8L\uO\ћGA(٤9%ND/KGe-cK. b 5RƨjcGjԚsI:dzc̅υS?IsEPlGqmoָlMc`Y/=v)S23h)tEG%jbrg+LDp8NKrdŋoFΛ]"~t:EQjDb] { tqEC̠Kջ.V&sR|U1},.vݝ&W)RtI5@"<,`wDwڋ3znSM C!6S-#0x`/lo/EibuA塳"/!2d,CVlt<}80.!1'j&u/fg}5FWvO4Ҙ$ġwR8LZ!#ޅѮ:>熜O(UnO-D]imB&""$7J"_pS7;ĺoK]&> 'A=#Jz֙ٵ lIkkp,dg>0:6.0`KDIH`o lV9coi#=owS]L 0?V)[ fNر"&7r ۻm>KVWgh To1[fn ;]_cea,-rؠn_5.rQ}2a(77oO)ݫz=jܱQI4qan ^MLSαi* k-7Af$Y)z4MEaw~Fo]U &S5*rE_4u"Z0" y@F=eO<@ l:1zZ*]K?m GΩxm'b4Pʱr7(a.8oiB*[ESB[טG V_T&9F9jHr0BQ޴ #/esJ{{q_Q-9g%XfG{x} ?ܫ((2劳` %ȄEǟЬ;ύx-G%s ^#s2[4:m'V#iD=Y\0Gr 2hd5{sD`  l>L2P4ҳoO* 0ysg4b*iB dQ`#pJ1ED>صH|ܩj:gb棒-ѻ\Rj,TGYo8Vh/BUgM*sKiw2_WX/ֻn[Eb:6¯EGяK;Mڎ,˼h( VʮT_PmWPe ì7~!-?'0{>OSiZT(PJ9_B{1=BS}Klev;WsZVU 탎aנL8BUµn`!5pfq1~!r)c HȧYTPd {`JA=G{5(wȨ5]yTvT !F7lsIHʎI<TD udi PSδ2#M_ Us*M+oX5OPNģ()EG{Dʃ9̈Xr-*uQFQ_wGaLU ng00yPK,L1Qq̢|dɁ{qb<ɔxΔg)5ǘ,{(bOW. Lx*(izuLj $ 337!<#ljPE0>=<_-6Q  >m~Y42CE@tUZ>0̳F@IT1WAZhM$GP̸[3qĩ"8²W5P;D7`7PV{pƵH4Z]~ c-H"l[sp`曘NT!;mqbϯ@AjPɟ;EvtdJAZ9`2`3.3uEu^{CƔu9rppA@PidڜI]D6HΑ28@wCmC1~B^?M3+uw ARrM?-QUf0Qa:|ًbxF6+hOjsXxdZö kr8_yZY3U)(aw_FkނZd_8kP2 @Kɸumu0; Tǽh0eGU-=oI1D?7[ ^OPJ3OUn=ce!2٢DzaQ$'#_*:6v9b@YLls2 L;?f`f̎*~p|iE*'@zIcOY9;yCףj}IJ\Ѭ8`TAɪC>~"$~8雭Fx\\;vѐS!$YX0<{s&%3=[,KNjlAi0u]1[H]?yݮ P5aJ[L8.S` g٭1p$џ@ o#5o;cm"ŝΛY] :{'GLxz`9P4;9 }m ʅlE94kI)wُ^1nƪcjK:2J^#XTyqG5r/Q 2(9\=Xt ԧ!1JF*egfnSװ'h1F :0O=9C`?i({Vv++?z Z _Nūm`ICKl'p}C,R`bìķ`sb l0rk&Otk#߱A\ *vNIaO,'1+R&re^/V@֓+XR_$[⾓5j:} T5QQŮS.X޳vA4vffI,MzxqJ`gpp`®=E ve8f#00)o@͎=HnRK6, Kz3 EeAfHe5Oб _(1jex8p7ڶꘟ/ n,BnnY(F]⅁fqG2_ndޅs(eH|UẔ@7cr[dNیgBk'dlFƦQt%Wp3gI͑ݿ(o<cCGܣ?P? ۽`2),?oİҟa\d`EROo'b2US]$P౺~ѾJ)t7|JY~r[)D#^ժc9mJH Wۭ^ϕo8JutI̽PgB.̖v}:(\?kr^jNA68y0Z'ro*O45~͛c^Y 㶒oQ)*bwwJ rOpS#>RaJej-6N GkM3m<,.`( أ:d.D!`K7 Z%cHdw#ܶj3nR9tYRV%P" S=Wz?l _NW.EsCg){ `3|@!DDPbgXuo^5  bI@Lݸl'o`E~~HF%1,}r']>WCIl-Jp[NU6iZ6{/.0xoۦV,{+ͭ3],p?g0%" +%gXz8֗Pz^҂V,o764AyD kvbs1_QвC(K, ;ȘiD qeFXOeEvm|o}a!I7%gNrsdV V(QI;stApfgY %p#va644G3xQ0Z7ddB|3ͤI[O%ůo-܌xc3a!H1qZ1O @lw:brKl҇5Irڀ 7Sq0T*]d+ ,5M; {''Ŀj&CU> I"/Y%qկ%"![+q ,w;&ߖ/ BH:-JL$ XLΒɺBX2遐\'E?1T[rD8 zXx:<>\] |ORϔ@cIZ]+ Bґ +w/^Ě "|-$,;>*r 68&~r (}^ lo(^?R@Բq Lآ7m͹Ո~p v"zCvy8$ad/,?52dRIjHΧqf%{2.%!t.X2{=aU%떶VlQYKxSONWo3Eq-':]:xUbcCMJ{[ЪwEc²]g?$Nb@*2y>-X#ר#n1]WAR@| m8}'vT)]gE;pmfn)ЛvBw#1sd(֜E*R(n||A,[HJ @ڇ,ƍ8Z/7[בkdͲPwE9թVY@rC?v9T{8vx{2~UbSK؎<BbmC\%@&8HvC,f}/]/S )9Y`(,nR]% _MjOPf= ʂMaSDeN !1?j2?e݈3\4_,SU O-&zi?Csd՜x$a9P*ޕ)fi_ٺ'IBQnNO ^믡hߨ,OXD2A$& H Ȫ5,$RW(m%f :jo4)aͣTNMwn]/V-o8>y ȣѨ [>@ו' 9f  ZuHD gIg2Zf)T8XꍜaVǕ1/a:;!L|YPW)"*2qxRnvN'?2)߫m/8[کxnhڎJ Uc5ҳx̷*ԔшjjPoquƨLHB6Z-$]~^Y?EV֙t=dpw6,aGӲ9mU0,ԥ4Gll \e[rql;?e2+s5?_ɬH3]U͎,ĬoЩۻñxB7[~CP?9J.6B#yԒ`t*vj+ಛT C:Q?qJ9'1icNCpp;U14.g5IeHoe7joE }\$aku˶Ӕ!c_#ẃV [m%"wvs-NKi5HѸ8?2yoWȚ3ƒ8otV*l^K ) vkdtY+s aBEp{bޱOzԨť߁tkʈ3 -(`Qr,T"ˆ9g?>%OՍ'9i_lU;UIa rTm\OJۢZwêB*Ye=J^!psz&=r-^hQ^b)rNԥpC:!U%m}Fނ }h@h}y{m{7C7E$XCeD5ЀERH[ 7o)fY4k6.Sˮ{# ܅^RqG3ZpWʰR pg?Jy2`S a: 7eGޘE+'GgUs6#Rr.4H `D)l2yΦ( 4Է&YG|u'ߔI%4mڌdD&n##('G Yh[JU0yD}W4%%WF.] 0BPgN)4 u3$@vʊ6Vj0$&AGf1[lrb1˾ԒL3N;rFld?vcsYM4H D_L6jTnbl_QV x~r7I4hBI~S[ @^hv8ٸ$5t"3cPi*'7I"rAڱNH1I +uCn{ST1AoGr{N/Skj ip~ڵBѥ`OSdvxّ""RpDmcN?Dehz̊ӏp,C\l$92v!pJN j5@ct+Yw@y}lwTj>~6Ht>>!tE+MH[T*|v,p!o 2iF8Yo2}c-2)3"M[8$L ;I׬]R({ޓ {Pe|EHZ \=^B5}.L%r.B>[w0|掮rHsIs<q-ںapU9x2 ~1$HqwK⟬!(~b̛VZlTڎX]uXz[8Fɭ:%Rlx՛fE{娌͈![|OͧW dU]'bx+ ,g-u3H}ŎXܜ-,v9=Hf*?֎}#E']df)8^3wj}!^!Q}344/BH"4&(4Z d Rqn_wFKc-VŽ58 WUt1RU" hj| ޜzeMpfW[(PqLC(xvu0]xw7e7qL Hk0sjXLOD3f8Qd;VDx SܔEhf\OFr?"/"Y.Qz>W`u2ެ,vn4.a&2Y al X/VGs3֬4}^X7/DݾQЩO:=V&0Y$<k3GJ$`1$ʨ_uC|Plj7?6>ю0[t|]P=P=q\6gq;S&;WkJk _Ŷ"R;/u6н5w5t :)+򶥨nκ̅:r&+?'r88,6Tu>+K[<$I0 TuDff'iӉn- Q =\hJa"4VLy-4^r2"-2kR&"x(ŗg$]*1+HJSi}Σep$"R0aH9xfk$k$Hҩ7 :*^Md,ғX#`1BHY>N`HAE;2k:lƯCNjXf(ov,҈1c8;ko>RkS8J~n?}I wC xU ,H\+,e;)UYX{9R@'%ל A}x;бQP,F~тw(X>0.6>/,aL#1?al1b79I%D)AnAve u4"\C"zD**fH S?X[o^qfT5: yK4i-~[v.j2um]zu+ N4B8h~ڪd{]E C[@b?4៉H28躔rqWFXK5! Z{ixU}Ke%862T%ۢuv[Ki[ヱ́ >D!2S+^m?#@GBW#9ģ"{ q20QN ==c`h,V,'AvuKY. ~bsce q,ОW R&b_b;WacZ~8˳U2 OG捚|cMptIa2CpKr;\wګR_&^qUY!^j[ 0ef(V ݤ RYv\gƒ*@$(w:XcbKHc<2 6[HE45󅃮-^=<}@p4XL7SBZ-O m?-ZCSi;̵bR.s$Aь7B&{r]/!ibŊ40" M#>"NfH(GF| .Co3efkrT*~ ;._ϸ%DkyM41؏:y>i-c L!lq8^t=-*$M.I,q˸dK"Y`OC] 0vO\C ](׆Ă1]ppټ(fM=1,31p8BJNPVϙ3 n .KDX:ƸTwrmAʦnޞ{ܤ5ڼi9˶o\0=UZw/p-72R}nRD[j蚗Y'ZI$_XЅGmkcz/UusCuɥ!WLbٲͩ6_ꓲ~A <$ZMd=Y!P7W^\5R1O?we#8>|XLjt4 ;VOeNznҟ>H"T]}k:8}[@R M@M2!KQJP'9+9چ?S!R kb }bg /m 1O&6iݴe4N~I| a:6Y~GWß[| lD]ꀊ0`B/H NThloɏ+#W?><j ^xKLDw?4)GtZ"N @kK υG3I0QTy\1Dxـ }C܋ظƭk3s?GV)UE-fV%_K"I*DT=3gm Q[`:.嗹wX{S+lo0=wY,lde Da'家HT $T]-V<"TyPMY0"ov*/(0MQ)+Xn 2,ib-ؗJ)3aq\ho(;X~Z48o͞Ǖ7ݾ(|j7*IQ5@}Vb*jus7}@e4[uC64%Dph|1WݞYڥG<3{knBN9Bԕ#Og$Q^54E^ɣ`VבI49w濦[{FvXFx}|C~ og9{t7$.M& @sP`fmMBd]HAx< FfmzBSc]V:WLMPF޻D]4yf]8RZr :BA3fdINY]z_`Ut" _Mp/4?__fF;=azз5hw0;}̓qfff09QC@|`]ޛy9X=ݠULx40}MS,l7ov%Tg;(q ͫN$몟чW򌜙~dς\<?Ϣr#*m~1~ "D(9Fue_}i mo e@M@^5%?e:[ VLXݞ[CM]l*XN)܉0XwaFg ttxfL*>˗K)uIoe-3wXp`]% y#&0qyU;1磼 w&^?FHU;z^G4TC+ڽp0gZM]~"7Ri 𰸲0/#^9!g7iG?e'v+ze_ޒWj]J|Y"u寑))K6TӀJF0AߠDuΩ\AB6bAA z1;@9j&+ t*Cv1ZҬ!zٱ.%# \şτȯ>?o0Bo<)Ci5j歑ɺfj?prN`p2(dDuy@fiv,{_*wPǎ0Bs L7BD[Hġ'p4ш\B®Lf Я}L}],ЂIgtƓ07fy0fa&A6{U& KMI΀irTY:IHk ABD2!%?uƮV8P7[|"ҧcM@ӶgvC]l9qaid=h_#}kzϦ{ |r-ptXMЩYO.DQ܇րX|RR߫8fS/S nC$gPrs*$u]M)P b'0נfF'!XqstVqt.L`f-{9++vш*{!aw9Z`cz|4,hA v .6˰X#ug!ͨbhP2QyJU5MCwUsB:AhsjъV:flli C&gb%WDxŨ  xY/%Ś$:OU xK9<KhM3FogsoOxQLoF qvAwo ୱ ymc|v.Ϲ?2u|_}ޢC_ȑAW+P4+7c?'f Gu$Dk}[s1gLp}rjޕbZ_IOH KNX`8̸\Z$Y<@?96hmdyhz4-_N݁l7kWWz:=NǥTPz`Q%{a ׵RjOhݖJQ ez>% vnݬNNW hf B WSzV3[ym)>YC㧯a:}Ua5B7([VdV@>u9Ƈ`~Eï}=->4l$vwY;s01'a39jZIGfDlX7e7 4Q dUޫ_a*sAdtB{3~e͂?$]*vG+]\2ݵeIy .SꟖѸjȇ/̝ /I"X2?Q9܋>*T1=ӓlgi]\IV2$&`c JI)\j`;&鑽=TGӥ25w@¨i$=9]nt85v/9vm _<MW`T`{ͩWwk'YR )^PZCHLC\7@m vҍ/[2K,i/ Q 9Hx1_9? >8! _P&G40[iYYނ'89Y]ޤGl3?e!m,tI@ #Z򓫢t_hҟo_A\q ZO}+(kŸ6= y9W7HBHl)B d Ճː4 FNqe{͡) 5Ϥ4U *7 RKPEuW+.򀑀!lľ7|Fon-nB hIGH)I1L{]LK beLQEcg23<Boߝ3A7+fƞ1mr,@2l{wʋg >њ32yTuY4> f_PJugo/`kϨ{T`@XdD=g]m,2W spםd n J%qpds+΅m #=!M ]Y8ōMzʺX N8\{Q%i63iގ.fGZ\xHP6$ 2xL.\Nyg}6Ij$?Oˎ'-M֧GH_<ԼdJ|bk"p3wݘ [\UJ/74'".0@ĕLiLd}sJ:ܬM%DžULÔB` rpm-#nn`[ U@qc7);W y'Ӄ)ķ++;xy:x}')/FML֣$H]_ɈG= nkxw=4 w"dP}_eiЦWږð@ItDogKoc^Q謌S'볋$Cz@JrH N4z-(NK .nNZG&; ~aAQ.pMf-(\f>=k|RVrԧgb.IpNi\.|]>k!H-;QG/(z<1MXPPQ"|USչ~9]/] F3xԮZ@]˱=jwGpv5ho&5xyVؙ+V ̙g}bIR ͛;q-y쟾?ߐzlus%2+d|G8u!6/`ݵRs@#N['ƚj\3?z1|3nHBh.HBX󔨮Jn!Ƚ{-CG*XIcauAmˆ_%T|5`uZtvK'nm-& ֚zbɕ.IwO^?&89LL uӠ8> `lht(wc-\邦fћ\T] 9g{0C*z.I57n 2?h7#y hJpd&Qlr㪨ycTZm>sjDv+OS >*ѭ6Jؿ^2 @ r42=wB踀sAx=ܱ(E=ɦYx-&{֧ iuzW̫\6]cX:l!=YbV@u> 6U?헁G.a } %l?]>9r| ]L2= q\22ij"6U>lnsP&T7ęJ)recz =GRKp[G@##j8:^d.yc)̫w/WKu?E\בkm-rvbS_% KΤЃ=` ʬxǖjaY4Zh۳2K20g3Z&M?Uˊ;2]N4_JY7!u~*,ZU_WUE+QHAr]Cݞ/ؾRI Mr..Fj탣On?H"#xm%ys(lRgcԠw였]I<ڋEcA؁i*e Wc g:̞LaoSWD;=8.})~ٚYMnQoy&9ݎ 56)L ofaV$Є!8n6I,0팞YSh!#u';r[ĒX'ӧN/7䰺ym܋/%ϲXpj0NɅ5Bî{KW6*!`G_41Y:BZ.{B>^ObAz"v=H5#V6Xc}BƋ#/&GkWq$(u/XBUel\wӡ"3xjB"{QVx3&w(t ն)y}0{kl9?TD)Ȍ\)vV5Ѝ u5=;u q7?wywEJǷ{3C)fpCT@dn"2hz nfBbw];heQgg(j;v΄[އ~ܘhGՋq7u/rbl-KP}`?PmMc U]y qvp=a鉡J2kC`i1)}` Gflf_4pCH\oEh82&" c|;]d"%x}[B# r Y> v$ 7*A8l`mxo u#_u?ߦ%UܳGE3:\Cb,OZanw)ߍ ZA 1rՙwǻn>z|_{vܹڴ†fɠY\CL.{8>սָ֠85hH <.8] sQ|C|/⊤(RճY٢ Vrϲs6F&݌=je1&J[x(pciZbǴjL~u.0|[ m ;銌?h`)3gh@="\TeM:BöTUZTLǑp4\gCUmqr$M0x ]f=П/L@1c-&NG?+Z"u hv;ƸF M,:򱒨y)G}W7PJdx78_'m17"+^[d _v DAp-K(![Y'ۏH8:{7/?ؑs( h,6ulT^L$犹; CJ YZezzftά[)ΕGVî5]"1>C ıoe[k܌N#m}9U,~΍PK _K,XPb:< Ck.x'Q9+?~_ sE%:WP-p"p(t-.l“-"^lio>/ʥ![[("KuTMlv>ذ9jA˚z}{[b2ZD[N8)hx2éS@eNp.| %} {t5qC֕Haݹ={*kՠ*6ZJkt"Q鋤TfFj&`XC %8 ,E ̤7ԩ2).9sGkI tcT,N։FnIfԃB=\⑀u{P*X F(5!᪫h K"I\Si$ކ"5F4۞7`0=0^է 0EUl}M&-t *Vs1fn6J]-@| h<wۗ mONw a .lqq^p8 |(xoqlm .1&4%/P< H1F0>~:j '1k+Lzc(&LPIf6yJ09;XWL\(ip`2}8'{q,՜W@rWW/R?ksIvКhpPk&=z oR&ޅpUÅ̇,kx줈hXhU1L 0 0 E7->xEo/z_2R0Qteq9= NJc*%ִ,szcF")HJ%1D=MFD.aHuk)WA&倶J D;(+dy߿;EXx۹`62g`p "3PyBsybKj$f0 ۠:*j>l!b>r8V-Zt̘.L=;ptOV&ˑxKG\o QQr" N3h+z,F.n<i#VE zVz+ak<* Ό,w;a|& V~w%$M59@5UgQ Or)NVm9}On)ּ'jߨB{(鸟tAٖ%tY/ȵ#'wr5e.";)Ef4=I8EBbM(/gRէ;wjӽs|jnE+(-Bp%2/MF22!ރB'DR&I󴐛;! erJfjGy*伶OvA1g| yׇ* ^`pnW5p& jw]:l?=gx?6Ĵdfgo_f Q`TR:};u|ˮwOGV2 vH셫^ʅz tQĽ{Mn=|_=Wj%A-*B@ E$!߽~M SjSvl#9J37sUߔ3hѩt$0R>?4s';"sn3.CbT1ךLg`ME|ȆcΛ4>[W;6/,E=46ö"&hƝi)mh{1<} W#^CcmĖmR$1OWH(V6 2j.lz!Q%Skp`urljRޛw")\$>5Y>H"A*De4dIq7tg5N6Qb(~z8"PV׼/V0 e$7#ET6S_XHO|[UNG{7Dn S cA]%)K݃\S4-~"hHBs_)(o7a V6"Zj=T4᭰ɾ.%2 Rl,q` EHdPi[e_5ЅkvA8֕6hi ;Z*HpXEzOrz)i4ZO#l%ο,#svVcDR}1۶b~ibf6?XGCLDe@7l.1$'LyMӎZə&piG7Cc9c8(r#Oѣ++ϹIV hՎ9jI]h ۔Z-3)HQB*a7%M去{( Vr8-:#.ۼ& Ikdj`ߦX?#+oaʓhЌ|J R/YeX[hƼMz"JEY }.V!TY) KR<q~ViTkwHKbLfm3p3N^?CpX݄qĖh2C16rYr9,@+ oB`ɍ,T9+!{ mmxšBJ4`Z* &e1Yc&gy8ěQU3oMtr9\y_. pyp6 W򦯩KWMQ\4 ^Pl>K Ҏ VT*yȫݹ6F?O^&duJH>}1G7Xn~XuLd"SY> &V53MIL?mAiDJ3RvT<֟np*y0+^Y[[NXoҩSA%# l:uZ[Wg|d12;j<ӄ=@#0a V|Ο9 U0o_#eg>I)¸O`,O 1IBr)d.^H"M=sTqN:eQGiiinoraNLid]3tg:'b7"[YUTڐN4ǚO=2)S}ǔ`sYiXb;.OrE%CAMۢDr;nɋ?^"]1|QpcAcqGh| YX~Y.*ײ ]YaZ2C /"$e^Kh9_o,NU2l-a63t:Q'`D;W%i.x=֛v(sS)gt)FeI05b-w 9%ig>2LF34I `e󰅗\+ȊoP8oTfA[64s/9iH$EhR6M$[]m6Fz8 `*.@~vDМ=c ǽL[."Z\_q & וc3@L|"^9nhPrjKO.hoIzjFýM'V ),hɆ98QK9v4fh$nz@w.nKvn,|"KXx"~~S6.3\)7&x68WG,$$?Elf? dhDs ¡0JǺK~I9q%&UKZK{=Ԛ P{j\'j( x1\>"f9#|낙TXf# JqWY*( %>YPSp iQ<}6!-1Swڷ Qs7&Qފq4Ը5:~fRЗ#X0^Ȓ N:ANvlz%RU\YEy``xz>Y!RKءc7q,5"Eu?&L"w0b^&f q^IX OͶ9q}Lҟ/@$.'Z 耳]fwtN.I9qheѮHN(J/\nOX?H4bG:FhE\-~m]X*8=)|'fwST=}+xݿA]}vj մ_8njY\WB42u4沽{+<9t@XsO&@%aADOC6D^2\+jap |dj,U"sqQZt^8{h8T:UI˧?,6'C ~y_o82g:Hv(VϭNt]&t㳬x=bӂ(;Zm%5G"x]Bk "[l2_X‚2SGʃDjx+_CiK>J́FÒ-|6aS` z+ \mU$ͧD N :,n'jS-^jeEi'ԍp Z6wS^Y'tO&˙"  ܨbWG->&uW*L yRK$6e[U-FX뽇Dvʎz-=eqmLtOx:jueY!Y^_;N5`Z:7.~*Z0|iGq?X7ê$6_7VuKnP5{5ZuU$T!44ĸ2w}O/1u(q"cW$PrOmV/OW©&y\a4I^y+ &!535?,`|2]o0 fCuexdGؼ6yG 7R3\ݨ0P!*1eWӴ{c9Bp~!PTmqw>$p"J JaD?'x5J.e$U뛧P2쓅p9#OoˁƏK\M'l|a +c(FIv?a{ƪyst95[T;d>=gx?Ppؔk)j_$?@/{Q]roi1Cgoz4!iHQp͹ 3ȼ[h(qgק$c+ E_ZAPV:<IzK('b ЧvLk )*K.\;_{4U _d5^4s$bJP$Aq =TĔby0vLɏ0J2T(*$!< !'?'qYu}Fp>#(/)#waf"kVJBw1=glxS= km,jKi > ?,*l/TiEwqR;BK9eujj̩shm j"[rz l2βR, %o AziYM6 i {Ջ;r+cnX!n95 ,p3 85 0ol˱q ')qv#olܐ/ǬVgM8a/Ұ'E>VR=xPbfU֑d9@U zT2OL+֏m5TLu ;9)mHlaB> ~`r 0|<,"{X^;*6c^EHe=޳,hr7&7M<>k/ O+s@ԋ~!x9a19wڙ˽fSƃ屇|&ZʹѥԒOK~9 Þ rC9BB͞((Zyc-J}.KpY6L<0U ^<*Z3dafF*Gp'$͹H95)<6U"jʤ]44,[]*E{-à0U*T .mY/1LÞ]OHr!{ t=4) X.$}g4ð*dj7>t@ <+ƞ ]A|z(pxK nq4L%w~Bo+eĬy [5.ИV`wʘ|f<})4et:M}_"*7X>?r54L9vckq"'ofӾ@ -B/V^03s\~u"{|e_z!ai$)(hJd]~mzH=Q2xOoƩ[E!%\,PMkѰlqT1s,[3U:C/dFd تJxqUawQ,|)1^ru%9o 2u΁*-Xe2T}=7\_@ 5!޶7B+ 4ґ(;PJu_(?zt x}x#" ו-Ʌ7Sw04:0iC%RIRnE)F0 ~A#sC9FisTO;oSNW㱐Ij=-j(flύqYspZť|IAϛL^Wepm8_(b&3mŔ *]ch/ÄΕg6V~(EW&V,g]PH >~"49ErפMס0v4 wnwrNɰ~,\ _jep g37BH3zuiUg =k7 *7ePX/mL-$j0F<\Y+Q3+ t;,+fԖ3.IadW#{D|'M'~GCtټgCl:95݋W-㈤ĺk:~-%e2A!鴶 d+X1?ooɵڼc:X3@f "K5> j֧Θ\ @TVE2/YSk5orfv!*2N/1M 1wFG,;,ހΦl+r'tom\iY6f/+wSNZ"?i}t=YVnJ\ډ+n|]f/lsU&8JEYAEa1tnمLGlJRr!_G (Gk (>yU0F=AV:˚D}$TЋYEfDkf R/huZG{O BPMQ@ ᐧ ˵%Ws\ھMʲ:)!ID{:}ږw t{x[Y*C(7A&vUR~:"TSfYS DN%NHVQ !aG#&8e?UW3r#t M/@b،7h ;( G@Ў(O/#ba#>Z@Ͱ@;̯t ;B_QsVD򢞁N67]+418,@?7 QnBz͑dhY|⺝#m͠Nd5sx)rxK9Bʕ6߁>/_ ).޳e$./Ĺ0ڣBoH9_ԨDzp67RC2aq*_"lʡޑi҂ f5{1u[V oz)1TGsǪ$r špDtK~||;>/4T`^INiy>vx]ɺ=v \aC_7XnCTr[Sy*^foʎx>= KΣ&4Ū3ĆZ;%8'ɟ=)lF:*ra(2>t$e #37kOudZ?Q\ _DQSj1gBJ-KP!/ x<P3!J:%&*ķTjo}w2^`}e&)mY7}>g.4mj@m%q-R "C=[ 9IP.z5G_oFl%u]$ױcq)Ut;̊& u#%;Ȳh|وpKّv@qh|GDYtWМ)WUn˓' D@=3jPy8.9p}]a#[:NBх؞ <2?2dtҝLɥ;Y%"j=Rmr0M3ywT4N ء.ܜb V~D;/"Grniy^s[ ۸^8lG@8~S},tj4>Fl0eA(B!|BZv)ܥ^lc^u̩ ST.R46zNTzdo=蹍'kɒdL1BTS@zx B (i >JV=l%p@} y.S4X/|w4NT]rDGZ VnFyWVOn6={)1SDl>Kdy@^Z!O0\_S6ЉPHԳݺY1dNOFǐ}lB~¸H`a-q*ٮj 斡='ީZdzuބNbVp FݚjSR}:;T3C$&{uFx%╷Iy.Z*g{[ݽ~)؉eti诫Ej !J ;#5'?2̾LKlsd=%'o"W8}(UIYu}:{\=k ~k>\#rفGƒ(H`Z5Z$hggQccڿp*~~D Ia)l^o6l>2 ?{ϿMhC;IdtZ5?jho~y$_ѥա>SS i` .4F2|a9漘&Z8h,Z^8YӕNEih' !TUY+1t#\kjv1J " 5 ٗPXA/^vb6_p7^7.7/F_P`Ե5`t=Q¤STqYUW)& KRBRj*˼Vʊ}8'^Lx>T obad|8.|sr ^zƸ GfocPHrbZ>,ur5S)Ks |_h"pF<~`A >5 ;1CKC嚎cA'am#p-TK\Ŷ_2$;j0UxWSo[JvGk.\ʂ6 %qAYlPRdMHmr3֠sV'GCmР,D]#Q{<9R|sXgU#6D= $\2AP(¾q$Ή5Hq04qVeKI\PE7sVR"V h(yqBhBZíP ]€_K jhEs5r X!8?5panPe\MW(h_SqUo`.uz}Xԅ;}I\cbC&=ODUAE%'|^7Y ٶt'J_ۚ/W=;Jd rn2N6ip'U4`}}PYcP?Rzzt,FC!z2(ӝW+?zΔcTYX[h_&-H}D@^[n7 #\I-$p<3Ӄl({B"ѯ.7y7} F0NI.V)+'#2dnh,jrV޸k_0C"LJt(Uu/&aMS`d2h? 쫐7Ҝ!K׻J4T@ %{i6礟  ʽP04\4rJ8B`9* 2*I?̖s@֘Dy #'BZs0JymC<_^5׊X2JVL'4L;7#sk=摔er=@K4otBꁖ$)YUK@SSjgt* SӮX_5wN`5ARhI/EF|"E\#݈>{;ƵN,w]d tR?l2UūbæWq<_z㾒qC,X\6XiTԶ<%FIY;@dξ\0<)>p #k/_8 䢥 d%Ɣ C?XL3 ;6:t Z? ~r_)WcR%W3TG=BwN>tP_$u̾}3dޓnTڈ``rNqn+X;(QOy4"10Nh?]#3C:yE5ֽj paLFsYQė4 "K\Rȣ\4Jv XCy8Dm LV_N-VBUQAPfwN?57sPJ=7wkÔ蕷h OBX :8[Zu.-aL)3?b?g:6Csxɕeߦ<l>n|#,xAM#uҤUJg8;(>-E\ %GƦ4zGe~BAI6[ WzG͠el2Cȸ37lG,|Ў}`5u(K6 Y=57 >]8cL[%,n[ri)e$BնNr?)p>ܭ.rHf+d=},q.'ݠâA(qcUͰրݩj&顭S GvRZjr ?'o⏵L[YϻJ-Yrm[.Y ]A܅e>gBwᖈQۥC.0[~ix_ߴ2SNCHmf'[r|R_Dp& l RC3O LK6F [Wl ؍A(ڽ}Exڣ垽Vզh7¨/x|6N B5^?@ѥ u/ÁR:a ߲\ */QK; SǬD,%MTǓCNDŽ^TK,tqTk|Bp3KSMI :7Uļ2$э)r 2mf3֖1a WV{A@qE)Px.ڰsiWՋ93ӊL@Jw=,0~ސg0!o<.MSe4a% U]镑NM\8>MhW# R ຋0Fe9.җh#_c[fѸqfؼ G_Ot[HǗqN#ѾRo^.a9$Kmn#܆*@bhP07&ӺF00 Y1n{fzG7e _);'ۘR)Sɞi?G{m  x8Jq+-(}V8BgTÔ+pQ.Z).h69|0ݩ>kYo7+Kz=O{tcAV8cf*l氫4i^N )b^tјwaLO_ˈe?66MJ9>$$wß%]~L9E"( waz) IG5$kHvfS.W"I1ˊb"f R9 9\/Nk=q?J7ᥖ xo'W"$ %k\syŨ MQr>=QNV+ } xЖL<O6qiCE.|FAڂ3߇GRN{tcA׷Aø؈:y:dr[]-p7R@U>]*F^ i##ȮݏYcDl??8ZFpð=_! pDjmM ^Eq IK`b{K5m3i4fKVB[B[4YDbn F5[}!|ѰOZ՛& !.u=k~hvlFD֯bt7A*Dw-:݅WBȱk{'Bֱ'IZoGo<8>V#!p丵S͓G-=ֽ֟W%5 Aw R: XY" Eo{ B4ZLb.JiAMFYro=Sw'JUI6(UI/:(/KXqmom0VGWM1~wޚR%\?l$:n;ᠪ{#GWٜ1!!1ciaKy~Ktj{1}>qAy6IYEOv( \Y+ ff1n-K0 ^쳄 vx%洴ΝNIwWmߝu? S LgFҜqhN|(3r@tF!cOfѹ>|١vJ0Nh{UAC=I1~K-hY=1)|~gz6gSηKD<<;FBN:N* ۑ]e&p;v|/﫽]P&H/p:<c rl@kbs qZz|s=0CJ_09<= iދdAв?9g`7i{+!oVP2 dƽy.1|!Az݅w>N l4s8 %h;۸8+ k y\i(^VߛSf]͑s,>2jNTea_ԁ'Ytp?F  D˞i=Wig$#4צmܟ\[tk ^(u9W+ㆁ[YչLBBzŸ ?;.!(ԯ `+i]$,5;2'I:&*X3HvexĪo!2~ClA,V Ֆ4cӵB9ٰ Zcw GmYuLm{;vZF; ߬naoÒ,Jmv!٣PXtxUTR&&1qwЀH2,iԃF-"#^@}Iw@["ue:{7 IFBiD *V\6E]'p˶Nv0ƟćQ5fC2jwHQ"uێ:`Êl+b Ya!{t_vf N Nw,p/+gob=1}Zǭl#<U 7ieaL18ـk6D!i)U~Բa3>uWeׂΊГt- r_mmE7YLe.ҟ>bZy'h U(TaMdRnM`h̙TB=˚R4E20IULFٳwCUe1$Z?Z9bݕ55V1SC >ca' Lҝ_S( ׫OX޸hn:U-J^4 H 耻vBQ^Zjd˵Ht,;h F_+'f~eBFfCximlj| 1.wq .aLiι?0PE{&ّPK{4$+UjҾz9q9ūzekۘо\"U]XƛmM@^ӷ?_,~\30*A9.߭"i$.ya LAq}ji&H"+fȋz<>1ٽ%ۿI$gHG]J]2}gTu,=AL3m1=Ft!^34&X~0ʷAcCnm$=1^d{G;LtRjq JղE*5.hU{"ӟ x+s+~dP'pɾKKY!6Ԙf=Ycj"_7 eWYCfibrM<&~<:nWGbqJz=w πWGj9՜KQ]:I~Tآޗ⦎?DԔ4H^9|d,CtkG10t:X*AL=s&KE`{\\q`2&A .Vse˽SbIxTP-Prs4ͻ.)1 |#Lr-l^[w48 7d|YcY){Y ~ge]%iGm*AwcT||3bTkKjlL8.1"@oҰ-@bdv}^Tߟ]fwsK:uE@(N,iQڗ9MwhdA$|w&)N̾0 n~)hxqLSnA+T%Oo}4 [vhiZC oUkp0>- 9ϫfd$ˡ:¦bf_6M8Zԇ#XC^3n@d,م<\B?0.M\lv5hl L.i[ ZMvŀFΒ;w:4!& 2iXN+NqM*MPm Lk: [udSmO>`Ns4q3m#;`K;Բ~UP |&MSP&LL7ޮ_0; B\($z>l[R=}P} ][ΐbѳP %iפC?,! ox,i=>ˈиy5twxptO515wDK)#r?+Ÿr*[٧*hn%pZdٓ!!/akw{!3%S(vb/LƁĴŶ$f8oENc?r2J)R4O٩e;v _م9Wv/i]\Y s |wm0+Aˑ;(۰4+QheEZ9$Ve'֪ZC+yT 4x/~bWdgHgQNƄQUNJѲHG<0:E@c,cC^z<CؗRȸɓ-WQό4%t7"*W(OrC .ٷ3%=u9`~5n +pЈiO<9,eˉyY^ u'l.)&,'14a:?vL$\}N-@vecaƖ0&j+L")C T-Ø7ېKh10x*T 0IlV%XߠA.Gs֢ _,tfRf2-wWjsakb(kHY VduF#djp)Z1VG]sR|9e̯VII)uzP>mLJ<rRjc;7Qu]fPuM܋+K`GH x]1!**" 9~C*<̛DE`4ěn)OQᕹyZAHī#FZnc 6 4!k!;l?cpѧc&:seܤ?U>#o|7m]do@t80 6L";G׻/hޓszݲV=(s PvǗ7lmU{#ۦbX?(O%At?KU ̴8G*ߦK =۽9% 5OPdLDʫJ*eB"=e:wHab|_.~4WxN/3c뺙קҖ2Xn+.9_an`/=x9&?}8g mg}0"dÖ~`Ӏ\!OY {gr-=.TIw %7{?_%V+>>8tI@G-voU 4 Q8XVvC8uws*>c4IeXbw%6mcd:_ѝl`=z-‚87bET%ôJF&Hv?F+$4³"%!/4ͮL}trFwF?J er%_J0͉_ELTu8hV<:ك D&63H`/PqE* MRX?ϵC~i;sBs/BqcܴЦ> &:ЛKM2'kўtO.7J/TweJXpԚ’p~;go h&>$V!_X;ɖ~_fX0r!b0RYeh1$[ D^UDvGʀ2Å!ѭaۯq\ne 0򄚤J/hTO)^afzG rP-\m5,hsW5TA4Ri?Ѭ26aPrXfj%S}'](y5SCp1ZmuE Ǫ:2&`P:/uN!s$cƣЋt;_/جٹ䡄AZaA*jmϲ_:oqì=b#[-3!v"4+zB85j2ާ| !f/g \1-%$k1hUE}SbĚ7J%[aa$I?ϏeiIJ&z4'"l?-I}TLGh:h^V%| Hnq:aֺd=[RR8~CCh"'s8y<8= SY]CڕuFV h{́fC^vhϐ=T 7^ O3|%/!.f<.5(lZJC=,'VRAԴӃ䶜j[K[inw0/z/>9zq?х '!VEeW4|n wÒ.쮛 _-$2 IWjwˊB3JPy; hD+ŚRp{Ϥz76Xf&BȞ7AX9.?l{DB2a@unp,Ber̨eyHw9Y( 5jv$)>mc#s}+^=g, y.7EI%c5OK驄j~SעC~(TŋEՎ,k\R_<}J[${ AYpp ٹ7G5xV~D ~e q&L:fo's:>nΛ텛;-*Ũ7ŸOjw:AC.zEk!&NZΠk$|4{m790Tv?X } / %b)5ռInmV(ԌprGH.GgET;ő? ^Md6%g#`Mkdȷs kj8aeAVy@V; ppٽ "ѽP7n3꽃dx`A@Z oQ:~O^)"M5 @.+V0+N5kPF gB|N>R?:xo@>S_ Vtb!fC4-Gꑏ 0'ûdq|JB'Xl>u+ ; Q u`ܪv}X+XN Ū.,t"v IDRfbLvR{cwH:,h&/eD |-Or{#Ņ*Z,J)pZBo|.l1:݅&^36}awbwMQPаʛP*G}5'V[- +~m9j* `v|G"`Qmz|69ژ Sie4E4tR9ҢAEV\h`m7bg )3ZeLcU;U 贺Oٝa_F[vco6i!0CلʊK>^dcа3I|,|N;7 9lux$:3KE+R)ʁtUc'0p6MpgƢvP*b 2\rmC>hwu[x^dm'c.`5h1߆YZ/ S̥iRV~ڠ2c99ɢS)xh <!vQ&@tkTboՇ$Ie-Q :de@wL@[Ğ)[&ޓ泔zZ1%m9Xm83ڪA5YuR`(y &$4Quӌ7cYZl*rM-#@7+ܐV6'!x= ҳh"K3ө)PiA995T&=wGz쏰[!!JTZ{ _6}uz,i*k*iĒlrSa rk9YٰEq.Tfj_ mF eۋ7Y &$=nTŚw֣=PMN;S n1HaF:nCXk2tPrePmn_._.@tg3a[+_QeDH P1 pFROY50k ~x ;)߯- ګ;&W3X+UF /T"i3zc'nxB BXc,7:au{]߫ ث?qTͬǰ[H$k:h= q#$ΎTtPC0f#n//SRJ67wW Ӟ᚞DOK|"b:%IcQTdHE@aRXq:Ey (cIr1̦nʹπCĀOU8\* RT5?J6Q$h{b*ه2{n" DrV%w_X(DN| š7wu-AAR nvz] yڤ[9iSW >z=r`9YV*&5GC{` |xh@aAv|=imm`0giOt%h'? lZAnSI^@@qX/SjrCp)R1J0V[h۱vs.pbv+Z8^6TKҋwc+/TWOsM+̛b }5Xw:@QǗ`Hrlc= K=/) ^6,2)>xr)v+&Fs-#`[Ğ6_idD7^y:Ek]q^M:ص7}3 $*ޜU8ڏ[Y e0.aeQ&yL#Jic5; ůbӎZ=,_a~Gb@㦾j?B:&_0~ЄS \D8W93&{#:~ӺM:BmB!}Dn<'m7wyKbL@bvM EֹE^.5Bny톟g.}qRKGŮ[rI>yV 6>D;/ m6+~Ņb}z7:qB8 U1  `wm:wNT/6 Lr0P H~/iL 8} )'`p<tTCvjG3 ,Np`JБй%Ɖ艎s*syzRu> 1[RFOzi*O]ŁCA7Dj])#pw5pt̵ ]9USG\G]l z@QY036#?*Tn+2?iPd Ji{5&?Fﱶ%#|vRao(h{ pZS뀲lEF[2zN6i=Ǭ$SmJ|0xc;YnH52-7~=#Z4s L|p&]5` "Ĺr(v+mRD iu OڼZN>}XoY9e.2$[!/ƭz:CbNg:Q"b+turah'5 |Nؼa_/MaёcmH-Gc`߸ObdLD]GRq>_JXՕ8K`ZbwIǛ99 83i,&"ְia4 1*sV_vjO$r ɫL.g'`A'n;éAqU0?tWDd~,FRX%OuI\' æ/jN2h˜:tP@~ aWJ!J=T*w2txw8Kiߴ)70@Է\H/oekUط ͺxN6;1P"{"x.x#djKCg LZvu%Qċ8k7/TWAKf>'*Z1/j.}'>&{)7;:E[8cO+!0kNf^,NMEB:C =#'PSq-sh)d 6֭HhhzADas>gK$hC, }-3wO̩Ayu zi;1pL/F+z@qYR=kaZao4i_M2oFe8b@zU/]kO pLq;K'ALǟ=fQ:nH'"ƵpIh}?9_тT Ȭ<ޅ?h\/tz6KY|6o6'#]~C>7l:.!s-Bꐒqm&>Maw/@Oޫ:f;5}rob\Cۊ$SЛEd$tBP+sX?&5ȇ4N wxbYU*$a6L<1$״/oq4g7K)M$sH$Mt$prSLHn^5]2*l@Uû3K%1t(JY+5(ܪ" TĄݧkZ<]oj3HKΐ SjauMT&-`%0Xԓf-%\~yYÞ>Qw , t c,s0&ՍW@lo^#-~όqyv\H{v!&n/\A-XN&-M^*M$TLxr޽6U宨ص7We!z[Ѵ3D/ j |*m ~X}c} '>q+}Lsdܒ_=kRZbU#w-5Yw k(@Rid &GQ.wz.#KT@~pO Hsɉ giEe5$p8ඡÄGB ټxS 0]7y2 Ħ,L͒S7jO$?2[aYBjvњ*_BktΦu u{kYm*Ō,NZY58\Oƃr=bx#^Yy ʹnIgy-7srYzvF݅RH403jGم `~U&C@d;_XC(ʩbp17MO܋saLz)X74nBf%'Д7f=%ֈ /Czhw7c% gA@1H}|Ll뵶v F[$%,O',׆2l|&@e?b;h6gE;hP [azk %]RYdۙy״r0+ b -x)-jYӫdδS1"Tv5{x F:,“$# 3 `ٳEIfnkWO+t2_ǃ; ފą_6EB5RλY&atRנuEH^2=ΈMz,?4ѭbBj*x/Eo,3gdrpըQTbTum؏Ȋ +*;aLk( zw+jَD1d$çe9Ni;wx{&J>ZHPz̜9X@pP-Xkȗ91`ɻ3q0[{Ű 2GL. $lIL98W#0_T?VCh]nnTgwq)RpgSs%& olz,&6zŏr拞vv.#F[un@C?skMBJWO "1nd'D)êli =ƉdwL{xN(x8U"T DHV0U`R ֘U0:"Nf=96m0s,6\nzAB+vNʲ#Z.|T&%[#2{.YG&B@ϼ+ԟR;Ў]I] w?A}I!:x0~bh5t P,ԟ(8*%[`7+;ýi{',Pƅ xl !77=88n"D'rlb2:WTHl>2~z"r9Sf^mEBA6XwgK"o}F{;-VVCOy_8H&Au1Dԯ P2ڿ+AoCEh5A-8k @O(iD%jC Y} { ӜXfT+yTJcbY"^ bMYk1 uHcʎ 0x \۶Sw|"=0U^/)Z'x\QL!渏=4A ߣ6~؇VID М"oh\Eb }e%'FQR!!wqhWLCEH)J̌}2 Pu|h˕0ՋOL$<\1͡~0E M1Lqv|XaڙY]Q CKJ\Rjsmp70sò,#ǏRcڡLLW9f"''ybe]ҕ ߐyM趱V\7b;/Ks<݃-^U #'(?cs@|oznv-5BySohF6BZ/A\֥2C-qm=wiyok?)NrYd~'ě;Rzċ>hi 4843* syn9J|֔9B z [mLSHSX5 WW -Osd#։8%"ǯ(oxL+PWȱ_^ܛ\RTwLfmoBe>*Kmg5: KP~4ulC@&Oi}£4^{W,ru _*3h8hy)`+U_"xӵUfͱFWSܷwy bx512T/&2١}E6D_#A؈ߥ2䇴N'?i9lh:.#ZGezab>aG&N26M#1 N< P C ,[b 4ځO|=#*70'@G{Kߗʯ7SrT΁gbcVi$(Jrq6w8ȱPECӻ`C1?w qϊ^LYf{lCs[<p/;*T[".[~-e!Vw,+gnV[{Nx Dd73VLsp !c)?M6dAI;4Ա*o |B$m -v1,DqNOKD{-5 v@qi ^j%ndam+ҡj@UjZWBTRzK7lo  i Y42oIګ3m7A:QBVF!s7e7fh!{ `J3wdIm> HWpk fY@t$I$.Rz&s0]Y7BTa 쓱B8Ȧ_ ʲBZdɐ[Z8.l|Q`{l|/ő=@B! ۼϫ5/z^]a\mXvKrj]OAYCפO,"[ySz|H?;bo/Ա(H8CnT@A3,|)UTmzTE nH R3^|] 6s \G?H{і vf؇2jztD@ESӀk8%q~W>9,cG7^-'Ȣ&C,Qpf<޾zbAiwo&Vs'MVo \sbOqEKQM=|ꛐ%Q}H1>5ƍdI۾?'W_b^^ CUHi5Hv>$L +MXҘTb'*WNi +j4һ䃽npD[+pQ`$}R X']odS3zY# XU`߻şCz*20BxŞI(v'{(MM܅?,)ɢ=zC=|L H*`>Vv\>s3_vm9g@vpm, q?+^*  ԔE=L\dG[h;ȰjAAU\22 tman~x"EBxP⮐KsYsÑ,\ *aqf=Ő= rI u4$gw6#m|Hezeտoch'yboPR :#c#Puq;PT=wX֣[ ?H&4 \@@VQҴ򇃱Vj^~0h$OWWcuժ#Z6s{@O_Š=wb~m0Zۇ>_RP7`.^8 ?PiS<薑"d766#u'ege*= PxOɝ9%" fi]ݲCڇRaf<Ғ;)99 ~&L$O>Պjv"+]оlp YVwEԿypр`0ͧ鴁mMe%:=US3ل~hiRY톟stus*_* ץat0KdSXgq\/v"0UQ:7@jAE~);V~w mMMt{\p"&eLS//@"/Z+y>_k^R*YCw% *9(+lz~&sH]?r u vJɴ0?k,m;+uma9=_ꑯ%=VV  \Y ,D۪v:}G_#=,l4"/p 0;foJQ$|f$w}KNb@}.|-0j )WfeŶ>i&;v`4׻ZplO=Ѓ=T+P{B*$8ǽjh$AT=uMGdT}^{]qJ 9XP|s8I;o@吩^{Ц{~?1P}N s̎64b2,}6)sElќ]SF+r=?N%cOƐkb08܅e@%  #MBtϚ:4#0cbn}j1;t3Oc~bGZ+Hj% u?A|Ci\AP\%){yv;GpwVEk RY \bU>e~aqE$s&23gTŮ`~; ZRtùKz:RNL(EQja<0=[ۥwכђ]o|K{e_䯊֨c㽅f /\Q+W+),FN]u7 MtDЃV~2@d~Ρ.'9-+V޼xieXϖʑD`<# ^ˀ {κ8TW s.LbCÞ릩!H9$uȄ DzԞ}{ZC62 F)~zq >* Ruė3RhlD*9}yښ]8eE2W4u/NTIt*v]ɵtYp.+; FEU:mfD [l#P>ѝ8Q,'5bH077d;͏Z $cqts$X#īVjź;WlQZ5;+y pq:>LzKPA ́>mlow&lu>ip+c*_A9/-]M`5>79bd|X6LT"gWLqHa&ms=3ݑY7[}0a|4W9؉p EeLmՉz>ɪA)|juTVnRUqKQA~1eUnV YEO>pf 36JN#55f"u;iᅅʎH5Q)jykr?;diQdKٖUG&p/Pl$3X&NߘXt)_s/Lѱzǔ]|(waSH&xy`uQEs%+AO`] Fv7Y}&c!P\ XNcte&/rV_Tץ :];KM뚇@RtL")?nyZ]VF U2C*H]f^3c~G,o\`-ٖ) ]7Db:ud('C^X[жP <]m{+l4+]W!_q=Io۟hh~(r"R?` >Nc-RJTI(wu6m ;MuIU;@/oEe c~/:֟G8mmU{Ot_z3WxڢE~ӈc9Az\6r†@u'mn|dwpi׼ &xM]Y[e*&uli0>MM-kZL9@q N]o~#h,{0oex+dϑQWξ2/ʥԏW]p|&sǚE]r-.^Ш|ێ/E/ ̩@NʋG߂.UC;g@OIHn VA>ʤΝxDV* fZ ArjHMMM!Hi5v»=l,Bl]0_*ꏑ4>; Y:U1܉/a?ÿۉ;W_3Qa{ \$4k^. C/88ne#>sJ;P[af!49ʎ*bVYqW20mcg!o4p?H=2nB. WNԨ5z˹Am~Rd@ v/pkvܟ]Dc Rr>xfF.M>Pvw7D)c5M>)~a2e1ßQJ#{x'n0M /:SX$ѦBmʒ+BT LcXq>g?jw_)< > upuDֲ%N(Te1;m<ȠeZr^#cikKOؽ5Y%t#_L'%_o tR9a RƢ"R$STU(Wl:)&Ik%Fvʊݟ%5 }'}u fx'_FF0)Aa^޲n?8ϟGZ67#qlhJ|Wr&ktbۖb2UI)v=`E*V>w;I#jV >:Nc+-EZ՛$VJlï>2=ooZj[l[ńUGgP }(2tPEŔB^pDSZ?*emB vMB|;2l n:`YFg@"G'zSEg{}Us& ({d59yg$g #e͸ m8[I"G ᡆ\E"|)\څK >Nſ^XC%\@Y}qF=uggS_XƬ2٣UIX`f.-07wz ɳuhAg !vg _3vl2^_q1rz/gܮ~iV;% ^w%dbMo3Fg}v׈Ldw7^|١G yKc( .89.>WspѐMQQ+9[xU@KV#Nޔ\PY|N]k/uO -ھ0arq)3xJ ϞϰUy~ P}ҹQP~ +x:C+H|sir#Us}!hGk6 lP nitiP '\0$\ 9)nJ\,PNHt헼TpU1aVn6z*L@9q3fbW@.wCY}REx: R3$ΟZ|vR! ll׽m?P#rA5nƴn[e,2VR J }q9! cMe7}ivp2jy/-[{ ݉vG*ʐGa߯PhTϼ^^8-ӟe.9Ap m)r+JgO@-W\ V#K%<,WW+{s{mDS0Z+2`Oρ`pCCqSf>Q ?~ұUTт3~Z!¦ J,]ramGR>8F{{CO ]06Ȟii7NGZMAA[@~ q;F,dγ8vlis4Mc/W1}L~bi٪ bro fBٖދ^ Qj+)Á S$2㢘u6Ym,Mw)2` a7 ~bql@Tw + O}ДlQE=6=ң?ANbՐtGf:= @j|-₨|[=4D%T*es!IդRmLD6TvF$g&6yf-#ok#2uAqoȾ -M'oe a_ {v q7x-߷ޠs̘hiـg`4iܚ$ V ̎"VֲMTgl..]h9R\s/KhYi פ|Z1C:x 3Vѐh10R Кߕ@ 5$cᏱO8={^q경hquch+򘳛:ׇ[T`MZ.ϵ1`@abT&_} ՞0I)-)e^6,]~mFY,W2 $ U0kC\ _E`aO;m,@J^lN*|q:B{ aiI4}KjEzxAӺ~c9͢ D3D#0W56T,0iU\[AۖyudT츾p'gB<T~n0y)j+J4b3|Di"xeHE&4+itNH*ĻΗi=׃.%UHofETe"}͉v4:ꦠp$>Hr[8C_[/E20Ȯˢ p-374rD\lMR+H 49=}{bHQRw0JrF"~>@2UdkD6*7UunpћEt]W+hEx(K/{Jl/vOlCj6(a/dkgkz"U SуJl2qN1FдI*@h_oU0ˋ^ pρ;>xy}y#i\Sbwќӣ$gOxi`Ajعu^;ňxe*0Zh'j%3$TB{SHe ̂U@Xeֽ=~@Qqt8sOdϑ앵G.y.hm}Siyu)r6!4`ԞJjװ7&]%B vV<C #`6G"{EݮS 3Vg >B '"n\t(8*`flN=8IUČ!i <ȝuUČoc4tMLbaBLM憰tiy t&Ii.m ZgOe GF"q䄂h0i69@V*!24uR*_v.n/EoykpʃUzvTfQ"qdq oY?,~p+)]J[HT[n2nA|ՐmD4REzN 1[ݸߤdy52-1Q[3/Ie~nFnjä͈'zڂNb"j E fs*fKK%5H/pvW1Y ^'٤Iڽ}[JHM"UjC?! Y0B gҋSKq`اC;Zmf+bm3 p($:]vH#8n;.}~Hqw" ll}{UrmNQWp?] F Ap/)1߰[;4ĝPysl$%ټv_CDh)ZDx([L.պJi=I xQa}O{c$O@)dwÛ2ONƌVEB Ov KRΑwIdz`<+e"+ٱ Efꢅ>8YYJb"w:z3&j(;ntyOZMLYĀDW]`.*|]iRaL1z,>?j>[7}H=1Q*IHX ?B1X5hJ  @@&|I\,aĨI18u^xzi;YPH/L>rV53"%oy2ḯX$y|=ul+D[=怐Dme-tL+1사7fi^ce2w_ -䓌$gC@꯮Kn5}:A/f9,/NhiSTDNjԣ*XAد'5}DT楸oV23\=rNIB6dH~S6Ki_ CU5fxLǹŰ*x/K'byZ~6RaZo)-eH*xp`Hc/vyI/|W>f^ʹe{U6|q x]ܭ&-SIu3ꏸ=ZgHgt]A5E$=%k B)Apgy\L+?6/ϋq`1z>rC I#mu{(e>{zFYj[9=OOѻ. vX vsǵ;4w+} ay]J$ y/ԍ3ֹ- \Y渗xREƀibNmY1X ՁLؓ+Bȣ|V!0F{Տv@#N+a(daI,۳RkIT )+tN0Lbzl|yZcJFv}g_8qW&χhFp#.`uzk }ci,C;ꁅ.PI4/2%8jޓeVÙhΪ~ϡԯt:;!# nYf`|ܿ>J~k8z}"#?lykh|| WvF} !IJ@uQ$Zm0f'^7tt)JѕfF3餯ڊ|T2DR7ᐧ\^vI )]ZytoK5zV E ֈsFz{டI4[I.ru+s'Ƒ5v$U2~l}-Qu"*KʝE4?X3nI/\S'o1>%K+f=Iʄ H\,^qXE[]to41Ĩ&(J]<2Fp^7*|2HWV ҶcHi%/;|/COzxtڽ;fn]ANCmJ/uUM֣_H]'[nޑ&';BpD̖5| ~<́ctJbZvRn)@|ZI8#j TCHUYQAjZVm)<`{ˊ,Sk.2ut1Rp݅e gLW+'ep] $dlNmjt_Ќl8iV]ܒ 9UdJQvr2HށP wsbc%/u>j 0Ep>T[3a͈%j8J9N/'T5@S"}zUY0P!];5a;B9k!ji>ClQц~rZњFruEE ͛DĆlMj[pNm#l<o:ޯT7(#Ge{9&vpb-P?:^@0g:݌( sz[tMg|vdq=]}rB*j%uL{pXØ.1x3f=:yꈻ@|'I35n%(9"e~" rP0۝هɣVոY")K]6B<#S ˕MQr m.P|,NyIq\$zEŽ)puKpcΰg5*c>J͑ӕ6/ssst\=pSx5V'FV;0f0E|mmVP4/P/ўMockܟ ~U=b Z'ՠȥݸ| g}:ctO=A}+M`%7n +V-W݂O1XX:6kwo^>ֽ; 엄n }xx"q눖G_o8b݉bF-lyxwnp(x5nY&57f5.wctXlqB=B; Y\}.~5{xY4-8kܰY_YZT0mMhx%Zƈ#y!YOe.c ‚i bi2/l!5ԣ vgܗ`Ѭ61-EţXmD0mԹ%#E\Ets}^hXޛ,e;NlyE21. _]o[(@NH2b ml߲]`G~-UhAbax*u8iݻsac;|)?i3k tvzmJHQ~$*,h]p̜bEHpUqHy'=(|yZnQha3.;nh Q{,j+8<&XV83_o9@sMmw`#sE-:}>mz ]ne<qy_+Mm1 %4i$a#41#KǞ|٘BP1^~Iqks 6T}70#Ŗn#dgëZ"}9xq,wwFhWĀ`oUdrȧȧH ZB̳AN>1$XX!ɯAI>}֫g{QJn/җ(Ȅ%rnCBT'枳_k =0{o{ucUG͟)y8(')HOOF+8]^TDt0ӐC@hRڈ}=\4u34՜la9sY+~IK϶J{~I"fVt>0!YUBiT;+#a 1 }4.cmGګ/!]pJlhnl-Zyr6Vt7rha'Sq\]vBj  P_}8~V0)3U ʓN=,wVG<0?j75X=E^(ov U8*roY#y~sh.05rnХF٩Q{Dw(KVWƚ#0w:c"vOԃ<% LdI'_^EaNCK@du͵q/B.)u(u]/wAeŠ "( A'TKPG)XO< e(_EXے: 60pa̅A^ ׮r9R]o% ƌR > R7HćKԴeok=(lk&tDGFN҄c>jS|wc"T 7ciy>2 s t[aB H\f׵h &-dܝ`JK??Ơ&$J.1:,Z0sߝ^& ov+Sd``GujT;ɦTQ^ )N Ϧ߆p[KHc=9'Z"V溗YĔg~M)ӬvE$歞mj6٦"&[-O1z?D`T=4H@~*@rbg=Dw݀Є:،Joe 4ru\8B{q3„ޣm CMQc˷Nz:;NؠHYZX|S+6K2f dc1FZ+?DzJ$iAIG\m5CY ЀkkjrTV3eJzY@tEyqq!לطL, MM^]*kVgPzJ}j?I#ٮ;!Љ;Ԏ1PɆsOIC<*5@2{|\T]m3!J%?"8 N}NQZY _ xȣ8hG 7>ݘCb@BL{ؔ#'IڈÅzߛY^LӓWG#>X?N@fbCv2ynV?{]2ՠ:_['U!ZȮnKYܡ O'ejU kab5cMqy5~ƹG5R]s:L9IN}|81-C;ǢCג5/k5#b>;Y'5`5mOߔ1#yRf$F2[&c>ͼ䥛i# A@{s/w0]qS((@aMk0٦aznF7:+e)'[.K0 T0q'Cr̹PljVF bo"p(HD~30T,M S}2f?/hS̨@: Ws]ZT5jV `zN5|=ry +Җ5WI@/h@R , Wźx&+yoH!Bc>.ctEXa~t0a@3\DQO&ƧÜ\ykƄO}S%N2cD Nf PC)b'WWc3M%g |ͽ$5+@* Whi1U-Nbm,Q>IZ٩`Xauq?"YC-C!G lk õ(@ֵX2I$ |r GJGׇÐHl$ZB?c?1 8Ke[ H&Ѓ \ M HFc7i@YZb‰y UJ?WbGi?Ǧn䑢زXЭsv%*e-Q$ϥKa6G¿R%65/w^)e1Wn}Irأ`zdfY; #fyA1xeZ`%o 󜇀ar(0ub*PwE@~~p]K;Kx#}:唵~=.ۦ_;}J88oħW9<L!Q/2OYlLB;:}fVSH槝$t9(Jt#1:+^8[ +5?F/"|Rf@BDPߝ'qmOs)k B LZ l6W+ lflI6@!æ^S `-XjQE5X_jX |c֤PDtwS)65b.c-a66iT{mLvV30&^,39ڬfgq{}sDlT%wMV*?8O~ng3Иml@ V .>V«w>J~1]OWAj'SIvcnC= dUǪ bހ6HN5NK@l@VlhQE'>ƹ1RzLU(,M6OSbS_AZu[+o89ګ)juͰבՏ Tf ]0 .4vq6zI(תlru&6~l#*\0R@$a*>XANOiW.cAY SܞQUiU&bn>`=,figюENDIz.K/SR vd(V~e$#^SX_`2PJbfYI*Q.I z6*luI~bPฟ1ܥ ;@w39 &#'au܆c-[( #~E6igM^nNi@$W;0'M^8H#Œi3 ^1ΰPU[A?,* J.?1[[b rN+gp5=ˬ}r>D`*p!N[1eC.UkkD͙/k}!ɯUp=S{$P޴.0;XmkȰH\Se.^>rq޵6݄C,?=ƿf9ˈ jxS}IVz)O~1:sFؙ<ԐuuVka}p\9J^kYMPM# [ =A??0h5> aȵl6 }8O'aC/eɒWv}GoۗnZ_2 IBIPMLk (&wH2 m> Ek9m 䓱f@\P&8@!ә֎ q AçpDAR:Q$ ^.PD HCd&p@"Jkvsb)~RBSS@QEX]8`a~!cw6 )'ᎺS%[y+)@ s5W<%:9}D}G:Emp|_ѫ"O4I*dlzӼ ɡ!}[I-F ǂ0u^ e#J.]+![~3jhk@٤@VF {Z1HhlY)-@P X*_ 0 @'cp[<+e>ڗz2w22R'ň_ b Fs@Ӎ0u7l_p}iz?p3QZd/QLbЗP!qFX2| #lvK5, cvEc3YU\NH~KzJb ca6Ԧynn#J(~ϡ<̳>c~ꡗҗ(VkF3 yj(* 12DRYI6c{|r%{m]XzbBjR8L'!/ľoY8Tb†po30l+{H B AGHqQxjCzY"0^\X.C u_%& =YۅQ^?md' c*MZ,8/RDb U[;`1T3xZ3m=ZbL2 |Q9pPK)TۍO gG. ]p ! '$vӈiCbTod&R!Y=nJA *GВF ʕXoYE+tY/v> ĝDRWMwVft쀽q&)`*gFAF l,Lx V,Ac>*]V!(IIs_Z6#cG ݮq_k9$q6j%N>mR&6X@Bd^?-7!f>P_DIo-躲Vw ՐxΥP$p[Y/e890eg_Ӏ!}dGC*J_ z+m.r|ƣwDuZaߒ Ӱ(k>&39lհG02ZeP2͖=ȍ\J߄wUmEV?2..&"z ✨EB£"M$;JSMFQ|#6M T{ctL3K)]G60{Pd6K8|@I٩ !E!PxA3t*U`hS,'*PкLR;Ɋ$@MYd[TxzKW\8/#WcwdN Sđ.@G@%/:nFv``~)٤mێEoZ.Ax{Vz;҈p!qKQ([#N1S+=M`@e}uhb1R?Mc\9Ȓi_oE7#ۑF10[_-YpͅMiPԉ6AXtWiJfJª1=VǂwCɥ^C02Vo[E 6R;cGqi]ky`:|z\@ݛrµ *rlv&s;BOWT~F`Z'Ϲ1+)0{tfKmw +>*Iagg@e?<,zPY]mh`|O[A-xD(1lX>ŮU ?:y]FQTrto3Y^&YIzZgY;gY$cѳ8]rKM4kTB8y6EKv-<."b(LYN(fW ۄp,&%%Ykz4$vڙ~{t6w Bm, Ky_T]\22YIHrE2D"=ԹQ`ڋs5 *>lQ2pUOA*Tā^oTe{l: ˒ߩOGQnD;+CMV3d~T UL9͸bb:H'NV6G㛿Ѹ0^,@i/%ZH84T8YrDB|wkfwz䶄+Bɝ[,Qޑݽrg]햑|vb8"ܫ Ur}~\ߋF8܏PdK?(mL=G2Ȓ~Sh$Ktbos D῏f)S9ĉA(r++ ۖRbs_@ΖϠw Hf$Cb,c @w3˗^v*I;U1_,^St8:bZF֚7^Fȍ0 N4ힶlFf\ mp4p̲<6ž‚šI;q)*@p%'n\K30uV\;,\$VIsܶ%l 9H.rN&A=PpEQXO#<에.{q։ezxHfvmcPWh :CI->%xy$⯕>[j,grz46xLBcnw` :mNvG_9- [XGgz"k ~>Sėhbai+ͳaaCQ]> [M:z:ǟD!;рh'b܏бI,Y @ڻ˨RH_gty5b&:lйDoX-C"\Gj@HqDta3vzIc<7nc +Qa{v@gSHu[)p}}zDeix0p)R򖈔Efn_|aH׹I皧7H5ʘMNca~`M.HQɐ'f0uHz0W׊:Txa{Kap`U>Sn[c*sq^$"f|dH#aDhzw5a@?ޝ}U!|jT‡> ԡ q$BxrdFGA-umTXH[ 2@䣎kpv}(OXf ~%L{澤Ⴆ,r 1'נL(P/O3Pc8a dWzۡ4|Bt(6ࣉ rлgz3)-F &PM*A*qP@⨪]o0i:r3PY_j݊#MQT4,A< ߉uCGV_[n@DciaA2* 4)۪P8О" %[ĂF0|v`"a]Ѵ0MljB婬ն]6R&217r^c4J _U*{~݉ENa닞皗7Fz6}fGHI߬ m JruS JܸrL~јDFޠ;.MkPn,@7te43/"M]v |ƌLڛuGf#RRͰegVcU'`] S ˰a $9nDљQA6B|Z9h-m+koϱm"!DX OP,O 2cj5O~$8lZJnwt@+CW~K(9ׂ} 'a@ɳ%[OMєhy7I9RõXb,z{D~KQ֖Z{t I΋lz)-_!~ٻ^=HOJ0{!ʨ˪D SSHFw~Kn|!b1qc1ՆZ)F-s).t<˖@P-2@e, +Kn)ū/NaSo:FxX솢-UJƏCT%-L4dwz5ޱ$폧;=~dnvb;ȾV\UJze{[!Pր FSu%/,1Da)Cxv ׭mG7^ÇW86JSWF\zhwf7G`˔b[U[0* f~Qi&Ri~)'XS+t1Y;j{e|Obsum̢1# "0QL`iclLz™ fGYKpQIKBFOUk=[Dl6eaj%Cصэ+lU('u&dIFr~{#TI Hpy{0+G3TygcZhx2#țð4 (Uu%[ou}ſ g*`3f?ګ [5>&#l$EC.O\lzֶF${1p#z[X{ ߉&ۃK9uxo 簊Ty×m,q7G55d Q(_Vp'ϚiۅF!omE]7꘧dq<h:}nk&=g2\)v앀=C+\h~f}3.ZċO y2I&D&'zey"~ftɲ@7(Zm,g81e-O| CLsgxt6kinTpނ͒gGn<_vo?8ia[fJ/z#D3i|PeM{i5m跪3ܹ퓦bl-1i0H\ڣu - ,AVޤFZ.V! R^rPB\_'Ɣ^ih wJ恅r ٮP?]witZvl{_8#jumq (03 ч6P:}ۚVrօEhR+%͹ } cMO⑓xC=53Ҷp=-jKKӐ`@H'zsoМثD]!'ha2iQ:?(An`S wɔK|jrl%fć0,T:[ BtLpqWf5C-`N:5[l1#p$!(̔Ц&)YB2Ʊ(ʄA( &Pێ' *Wi(%ΟΝ3QvzÈ+˫טCl1P֒2/޼;_vyU7Ex@%m'h؆KRS.,S?4H\ٮ$v^Uz4ց竊` [WBSM n{ɩ鎀۵TE Owܮ a!0H;@ U/l)/hLAF,^,-(Oj 170k%\Hٱp}H UksգA Z3r#45-( 2pTJsg&A֮Tkpߘi]! v鏳LW H֚O$;.f7yJ5㶓vH2b02& 3,ЖkޱvXÎ.XL Danh g_&3J5I`Ȣ 8(4 j“%=6{|Fn!^QR۵x:=Ҏ@0ɩS/  =/O^[ ȦB Χ\z̮]i^*3-Ul[ՠ~O2a.SW,Y: }@V4^tfi೚B]x妘(8 cײWůΚw1<n0[B̡ Q)G*=SA~;I@qbҧ<2nE 2~V!Qco5, `"9 sJhq.}rki ^  MΚ5O{ vo: %}3aزeVb)D .Ia%nl@wW! BbS>&iמ;mҁt:SIK3{Ί-{0/G\< \{Ԩo/ibbcΧ"hlMŜD$O#c$' F2p {Q8l%@LBCq?(*.NF\,`TV)Y'LDbuyGWAx${w(2`K W.?nETqy?Xmm%J&^JGeZ[ӎd|clp@#C9—M vovn5}dnpw\ˆnDqgpѣNџ!$xC#k͹ZpxN ѵԲ<渃, RQ3`eѨZ?;>bJtP_ch=F!r!m7׹hx |BL]c,(%|eC_^x3X>%ވ,GTHJuJ]H׶*pEV2u +;KMIl䲬 wk1 5KQ4mJ0yĀ(55V §!s:śS^zEaح sXj ޒOKZx"y[a10 X)1B=Ko0m2oŹE8mh:)6]+*8}Ju|ߥ3u57 M&~k^ANgx`f-u1 (Liu} Ķ{Zx;ٓj(44r=1G-:]r^VAiuy'&v(JK.槺:WəԁIei 3 Mc=?Xjwp<oK<-҆ lq@nJˠ$؄a K\c=CE@\8u3}NuXZMмZ_ G~OR}h;Sp?}}=A2ä4:!G{Wra2 Enk۰;YnY@ ѽt&M%.hseqP[| Oe?f3` ML)jvֳʻl~8ExgH'v,pO/jiX@K[J?w\ ni2H|qؖa `Ax~8%MBw@'C .u2+xbtyjsG†Gm8H8f+ 8I,q=@;Xq3b*ufTb-n<ndB+s45!J{x6۷dϢ;Yo{xeDP1+Jiɓ-_xP4!O4E4i$̒nxQ6 T<q}p%Poy:\G:%P<44R Er%Hp"_ 5]>Sv]_+Nj1Gzdf72tqJ--4pֆ!IF #_9$Hq\7^YG N X+gj8 ht)-G1Q!q,t5$nQFn,T 9&>cٌgwQ9js!J$Xz<>ETnO@N{_H2ԋDʭiB a7rL^|MN~|8|,@88=;F}>FUz6;UgL`qSAK&Dz#)Xq}Fdyd1f+NaZ|Nr<pZm%-)cɻ:,T?P:^'yfWy;\iSlilP[}l{dkLv[cH6`*e;=Xլ5' )סYL8m^ fFLS8M!"w4@HRdk)H"H8rH%h|Lwvl.WXlݏJ>h+c(Ku> &"̗8XyfбGNp:ђ`PneEeFVawuO3Iqfp1n4 w+,~e,ot3']߅ClR޿ﴠ~ .nNM"QzƟ%񅨚L_rFyDy6X8~oVf hv0{>ؐE:Y%s vi&4@;F FwXtGhg#&Ltw{p//'-n\u_R} 3;_2t|gE y@/@"A)k0:1ڸOKz m|VqOm$,A2痶 fJIYi\i\̥Ĺh!P:%"lGSz+pxjrX)n(,}^mi]{gEAfOOn $pmA1{|AV|_MfH g7đtzZ$L ׹ A=u[<6ೠ_4ȈhnIQ҈A 6Bü-plX!<|{y@_0m )lASi)c-MW K18#-`uōԺ0T xծ6(zAfh)%#ՊyvgswrZˮҬָFM([>[[5YY݊<-կ:H-K +BC.zAYַ&s:OպnaEݢ-^g^^Ihw[H92P,7 %s6A;[0;ۀp2)=nigϯ}qbwpA?Ogǒݱ.qX)=gc #UHh- tgEz!pR{Z&͙f֐wڈ=Z ŏ8cH2aH'_MUKb'|˧sF6^飶(t;z_b|XAx3;+(>&ًMP2)#ˠz9щ.+y ,V 6T(y]?ߜ21j8WnϘh!l}g  $JmsbFZn :mp'V!q,+YgM~$ >rR_=U΅]<\]KZCIOY&` #^a `c";݆X@IP$.I'87k84Bj'$X1N /NIcB xxζ5^(U-8374u)D剞Rpr-v{G79$hFIP#i"NųkBxG 5}Ht{͸8 ߅rOjν0:8-S.Nw쾀p  [!gW~ܚ.ٻ>E'iKy;.0e4fL@#Iӿ.j.~̹@4a0ViF2G`MVsv=Xֺ?*js :]ʪہ}P1,r܁겓{aA{g4ּ$_Z k VX/1ֈs(Rx)԰(F߃־E*D~& C lxgz/iwbJ5Ewduɽ{Iu"Yny@C%/#2ƄҝsEzэply8Vwg:6^=̐X ϚLX{.nD+T1.欴 =.\[ML4Fg.@CWdŃ,@| ܋g;U bd`` `N=cԾn@yvsH{ YۇmdG~ĎB:剠0u 슇#S~\ %+8K}>S 1ű^.G:Bd\<Bb׺134Vȭ3s8(B2(PAqRz }wANt<⮥.h:ˏTLBC_7۷?xOn_!8b U nP`m"tG6Oj&@fSHtq*i C%9}ϗS_e#Xrct8ā9ڳr o ŦLeU/“%J[+HAz]8 +o}l6qSxb/(fC~1t]UרJWwd7՟[iV F^+}E֩- AX\KnөsL#WOoRЫ9YET8b/ce37,XuJgMϑ$F>G/Kq`N$.|uxG- ucKK,;j\\p> #J pp0&ZB1[|) V֙e4Wm_d CnӘXA&w[MI ڋ聼RAWMOg@'P$VK~,fC:!VWLVltR?Pjfgx/U0im}JB)1y) 0}?o(4 c4?ic X+sz/xq$GA>:2mmhæfDkEѡc5X wFhg@]+ Ivh$1{t@D2-[]H9D=5PwI r*|$D2̉3%J޴rL@6 K`պF4˶ J}Gs[q> k4X&G: hNSѷ&uC!IG53KrDa. @ֽ-*CԨ3'ry:H@WS0V9mݔǪfMs4u gi2(ZIi"%Xhh`pfp5Vz"A J8/Ne1?AY=;`{aj`c$Y2\FuŨT,ы-Puk&ҝ n&| C2|c1diHJhCL|K#-dM)YBO/߸TsΜġЪzmj Cm#HXx`GA>7Rht74~\n &YQH4'-" mWf)PQف>#1 ۨGH7,q4`%K6?|uUHzvy(#+8$Һ1G&+h0L H8'?cɏɳ o(^ !^ST]zlGXU8$r q1tGqgWǮ󽬸(lGԉդHE/># mﶭ]@hX? Z>c[_8)ʠ=nǛmEveJ;p]E)g*ebyqUCo-MhOXȩ &SVHd]IP 8vR"_@НpalȨG\1'`op?V!ѽ;lOM`[B_{,6:?C[vB[_5MđbJCW皳Z{Uب!(tا$bAQ!Vf:V&yԞ J'; e&7)å`Ju IŔ&~Qmp:nSTO(鵑&&y#4Я':xr?(kyPOe0=Ϟd5D@؊UjTcؠon̉3r ^"J ୊/Xxd! rRxTc*O:e>>v<*s v]`fԊHY%6ȃ\ވJ-B}#_0s5wWlCfyb #L!$ItxhA?Q&u[XA~rqap)(=ՇK B|!-ڸ{lZ/*~d #ghuxKM rchr$e_ H C>f94oz8@x.1 Gh QjӺbJBqdhIjG[0'cJF*өM= A6?Zl~mc'4!R-a׆2lM炪6fR<}Yakk}+0 ͓zt}z{s 5$4U-][HPOΨv\lޟFY `?P? ͐C$ ="*=Z7em7o?'_P#ߧ<$[Y骘|iJcP5"v( cl:91+GdF\ٍmv%|IkA:T'2TD ARO'c a5jD?]GbeXYo^摅@4^ht@HeΕ gK"c̑-%KŒ0‹,s=_WR3DotPy] 6V!>RlޛRo?d6] 1EN3~q.Uwumr뤐~@zcu>=H\u;:+EL"m0#r)̚"J홻,īaGlyG '< _U$>x <7;/dWvN%RfQ?,y.l/SXbqr_G:13ă3U g{f.w-K@i726j=\7K FRBŧ1hfx` Cqd{--dq~l͜h];[^t|3 b41vӇv}Lg$>Er> ai7E/ Ez ٟ?wtv+j3͸Jd / ]&d$6_Қ\xIn&/0FscS@js2xcU4?&DL"C_ṰPjHZNYJF{#ZAr36*a'|2IxX.OĈXu?fmF*f:P)[aqy8d1\.镓KՐ"PD`q˾ ;\ά>KŁ0oO r,rǀ/ILk˞ԿLc88S>v)H J&Qq.oy^.7;9b"aއ&'8`3"k3'pǸq/xWC-q--X"}tz ׷~|m'f O%+@Z,t1 8@y^ީ. v{0|X߬p C޾Q!41ȴ|͔ݺ0\};K.P&uw.C*:[ԚH}{#v5 48+H}Mz_$~1`!oqgW9F8y%ڝ:S@&6i:=jjڮ 12MpaQIwqmn|=$$$$ij&n(SRg?y7s)@7.E #铥dSoU}lt/u~R)$y PH;HԐK&zQ{(AIاμlݥYg:#t;Yxگ]AHPs7?;6];A^ s Zb,LOnin,¤Mm6,M4oVͧ& YBKO9$ 2CͮF]#vRoÅ|H9J.ABޛFY5%<-|`=˪*^雾abn֡s?i$3,ѤU6K']#0$n \ E5|g2h/ס^\("3'yNJꢶD+Z[tپ<̺*+졑Y7m!`lb,5# ]^$}46O)KEy녗OXL潈`"4NyBɻz'>:geP N} n^Vlum @6;Ko1(3Rerpke~KՓh* 1ɝ{lG JnO55-Ny"oǿ/xè0ZM)I|r . 2wb7ecNs&i6A=p9;-$r'~~,@'v{.X];9)v@?OzmyoY"_oH]gI"@csH=}:~YjdNJy+Gp|̟\i{oN̦]"D ЛDʷM ҅/c;&'هC:Ϣ6WkFQ 퉉ZFvMĵC!?/D@3T:I h*gC:5TVӼXn&dJY<,VTtIF&MuO eZ邲[PA3=mz9^gv~t|)N~gڵ͏dKMps+:EvY [p6C܁m.J) F-d3pHz WjgZ9\Zg;P812|T_?Q8Spll7Zo{63z; _jX9{J}!H/ Ӭ~PJs:iB⮀&.4b|M4٫}x@!!e6ӎz*7UJ][wW͟dҖEt!0թQٗ3y .RiHjx+J5Qkf5X> 8IF,Xh+~~1J S0Rv&X]+= ^D^.ZWKv"rt s=-& ``tz^gLp= Bߜ%(qat&pAЙV6إEֻBhc3mݱbBNŹFB+<Rdx$}Ua1϶NȤEQT)cRk~ړND$6c`5Cʞgu#]IJ 'DBAO ZlRZr$8$%GpHbRqV!6);fjU0F!2iW/Pz:%jbgB\Z")Rq;#m|ZOnC| T`U].wf^-Nn!QO?7]bVo+1XMްb^]O N$aQt><1܆fq^ Z͚g+ "MJ$杼(/3qMĀgLB5Q%C9>"3,0ga__kyuy6I6N0ϼ3045UUi(C6lIYia3&j5Z( 2!|5҉X9Y_ULHR?*t9⍔ڙM].C74ōN00#K2BJ S se ھAsE)pav%J.PBW6nq_ =[3SQZPIyD.|:M ?-srso^!3h 3:{;B;) eJ9!4g5:p[ͳޢai52aA69ϋߢl "/2L>BC/1OԆ8;*d7@H'nat' <~oR ay84w!Flbj=p&7Y}6$#0)Ig w{%R7ü -Jzشgz+l= 6c.y#`Sva+W7h4|o?7y>9Rq=J@Q Wa/歙g!>D,pS9% ޥ[CYnj I)޲߁i\g(5\#Rpv9ܩ F>2Ʃ\k/똯\yb4@ /ˆ4ro\0UIF1OVr9s|_-Y.hHr~#rɾՌ49]{5fΆ:]=XH{ۦ Cpu/߃6WݘZwC8ZS۫scpA6зD-4 W//_ҹE>dfrIG 8X.{Bhaɿ,kb.EW>JF5 h>ƖwcÕ6flu&ώ+?AH[G^J$9 vZ{f I'̌?m qhLbbF'V+Jg%eQ5剴Z 5*k~yayܒ#]k }ɓd #1bbRR]ȏ˜/es w !Ѥ6?¼qg%d^#;W>DDt_*jq[mw )q 0{>dDSyhZ?/rP<(5])4sQz= uxJ~o䤬ٻ总[%Uq;As9{@9s[py&P!"9dC$J(`BUؖFVuqNlTP_b=a8$f0V?$]&4jXWU^X(dImx9ul3SVBTy:Xv,ۘC8kO4q!h8ۣqd7㗔v봜(pa8ކ7r# BS^׻w8<1.E"9SAck`_>n䁜OxΑ&̶sK0[ů.٠|Wr\5g;t,V ϝoihuDNaj; 0fB݉RV܀o ~Ỏ'kJYpq;&s/$U~nydbwW)ՉYOjSAz" mw4cv@ԈُUI+v=]<[zW,ĿL/Cb[}ճuu2bCPTAI1b\7AFRs1+ԯds~.́&Dq+hpR)z H[A!M:z^ak#I.-l4o?\LzA$`K7Pud%\vr1x>kto)YyCD"6n5*_4wE!O,ȐؤzUG3pE<&[>j1v#$<&Ggmrkt ScOD,g%T`z9e^M.R鱦Gwѕ>Oo:ӯ._{A;-7uǞ B>%/4)`/pr׉1 >mv8žL1 8W?p`"GCSk.fg@AwdaHSWmaMwc6 (9)7/XL䔠ON2͙O;/z ِڐ|kw1ɉ^ Ağ  uT8CDJ` 6Q: Mמar{{d +vI9YYAlwkRŰݩ%- JO Ur?y*"qxI[.} $#TՃ%NQ?jlYlJХI@@OAh݃iJ"O5l0vCuVAZNXvbl@ #>kxv*PӐ)ΝUUэƈfźSЈJtz?d<0"񛪿kk (jf,! .IFa3az!xRE\d.sژH3(;@sGq(Fמ%߲ۚ?>$ qTÛH"]Zۋy:;0qcN*(bʛϘr+"8SA8Bl^y1Ɉs2|uǷ^[u{TNkR~:1W<9S8ʉu0wڻu1V~ESlmL 9}GR!ItC , | i6wh'ldZ$<ۻzwʮEUiၩ0+ݩ .=Bt28P=䝄~pHrOY7T|1I.O}Y@'[KR%ؚX 98]M69TKG7ˡr!E2N^qN3K.[MælD~/2OA]!fD;uYlPj@ޛ lvT(S$sP'0qb!bdޖY|"'̟~,wgkgz'ؤ`$IbUeUr[3VܗfN,cD V_ZLz7ά>(= TR۴ٖAJ+gp1pvbSU//~5:0%rlqX#C]<ʪFzkPjwwB[|RhW:zI7 Eb Ν+`.rQZMܕ5`o4q-h@ڍšwr򩔒ݧ;I+M'lYWM2/4 |b(Yg-aet<%|*A (g+?yOFf\lF`Ȃ=/\@o5ZZa^~?tTj*H/QHi8MG ]3 11& /J%/#98x"񛈸|;! t  8 d*PXlQzOJ_i?N 򰠾`D<.rJ'MֈS>+_+睇kau@ FA^9;~ 9"p0YPENF&bYp&U^u'۵Bgӑ tV:77ia\JD±x1 מouK` Ee0HtV[#{-`ՂPHhgf/?r-*aZjK{r =.-$6T|q?{V=V;+cFJ -Hݬ2! #s ݭZݫTQv]HV`5$9j@HU*瘍/7{?`4/\bW9f֞[Rw3`gFgCoy~L@zp‚\^Ze4g vPȎf~%vc;l L%~`ZSX:78Cpl1{qsVNC(Ne7W3OM@)g16.KH ۯ2(9En_jb]<`pzVZ5Qvd-#$a?B|mLKX-j9 0H(HvʏdJ X iDܔRdѷjOe5sO)cT.[J0+aFpIvj&o!MƵv +oWvAh)&_h ЎTn ,3D(:ض1GUݯu~$03D4n2PK-\ ri iCdvDtj)N 78]~[ b>z2εO%}*D_C8yohi:BZ2(K561)l0pg"yH_:20!C蝘;hV-CL5!?,1kE8qΕ=}2 TZ(ɡ3=Y?˽̅%46/zLmnVD:ӎ1dJqkI`b2ͩ@9੗~>ёՇGwєuP>b2(<@yQ&mˣdp9HRws +ܣ^RN9A2l+_eբq 2KX^ϱD7 l撾7K3Em (-}'#MӃs K:ưc Gz*n" )7Vi*,s˪N >6A LZ೭{ k Ot5WD b4yz[>!PR8흫~5+}h='P,վym9X$T93SLr(L4IrG]5a%뿂{vy2zu-wu'5\Sh W`PJ_dl޲H/{UgZtfZ1!Fg#&(yoxU[3X%El$F= |j~f{/qmNgןPO2LO؆KNy+UdVPŲqh'Fe5)!i~h Q޳i)p]&ΩA$q : )z o[ЄJroC6j lz碢TCȠGEGo&)ktnGkt.7*B,r2sIlט:M ƯͨhP'axn;jሸ*+oц)gtOQ5.0/rpv`ui\i1)yQ3F̏A1OT$PxUh@WwF9٩>T}&e.$HO*7DKAc.Ng׎A1X⎖v.J&"AתHԻFn"dBͲZΑc}1C~~Iگy>.qA\M-?=9A70H4<$渷|)OJq8-ϤqW 68`Z&]xӲ4ٸhkz#݉F~]=o{DNiRvl eOޤϓ}z' φӤJ31./EHTė 7g~?,}2?d/;Bd<?G*YozyL"/iVW @&q' "žDl!S~5"cKyQ3[DZwohQ9{D!*n ol_~~>̾T81٦IG.և` xA XHvҌ,}fiyKQb6=#"a Z,!|&VmnkxnG64 >~} , 栐<( odBMsd0oJTK$ɡLƧg^4f2n†?H|YK>LN+jG`o5Y77RxXK?P,k= & }Ph$) K1)JM-wTT6p's3ꢍ/SyP6yi-8bp?jە}PiiZܴZ""=!E MT1yb8e=aѮ?S LjFF( _Kv2BP쩪^0qoEPT`~^~=$7)Z,EO>d|HBT@Mz y7}AsTZ!y cPW"^)"vѯ=ANiupp<⮆OiT=&%P$_hnSDǞ>sCˠA$_-*"5hh=EŅ88e37?9UM$0ߎ)J=/Ѝe'Xԑ2zEY6<ĴZoY U'jt'.h`ža'}]u^^v~#lgx7ѕy4 0I)IfYT&s2b-MCSizetq}kM,P1Nʬfq*@;V~kAI%^*EC{$|̻}+MG9Nh Q\9<\8&U伽`P[Qru" <79,jxWSl~/DYቱ Mh"Zm0]NG4fOBr_MhesV#M&}2I2{fa]=Y푩NFFI rԫW̵^?u57HSlVVTJ׫ fZ{wɔ*_Q=HzW\"6CTϦu pF+/)|T9 e{lkA@h:K Gay)@]Z}1EV&Nwڍ>Wc{ _*hj &E>1)yif e*ǥohMg~D &bhoDa[b^:7cu"jL%DCM`AaT~^iϴH:=t3E xτ#N-kM|)(~TQhXSAjV?S^rv&D W0M:"KC!,B +gf*楟猄پ6M]ݜg}cbpЪcy"wFiI JM$Un_^J ݞ`D[=\G6>ZQLH\>obsEq?)ԝs!հ26/=j^.Pqj&OSJ܌3A4O7.<ANT:mTw h^I<̰tw.@,5Bx0yX6"oJCSj}kVI8'fpt7Mk2dLF¸(0+̔؝bn8a4яT7Yޱ_nnVV(X:P+B+KXr+ZM';|f3v$W\prEqʻK :g𒎭U\jc%T ɯ^@_fdŴ?_t?nB"FnС{sװQj- ~z_$n ڊB-fi =wEnrDA@CY5F 8ròySieپb: nHi XpDK,lǡUΈ[ GYqTӪ/sN$I"{̥xBϤaZdҥ(>-X!J^/^H{(_v_/%N’“x>Dzx怏s$zvE0 SZR vΜH݊kZR5Z;5.SJҕ'D+"SѾ=zlXS :0.)( yֈ Fc=|fQə:' n^8p ۰HwDkQw\b|Ί 1E P?`uEzᅰDV?VK@ ?9>QhRʤ~g2+puHMC/i-}ts ā׆W l[ 2[}ղߺfl6K e6jwOŏc?xR+auG1]Iۧp2~mzVYEJ٭ou|ʧw Ib*3F"#><2cjm>Ovtbw?m;u#Y:1;ʔ.0Q$ A:RۤjQ{FX]Fv.AaA׀!^yod{IUJ̼4 9 vfwe%m hW!)[X$;d\bt3DgWZvѬ|7Bv.qK=\:?P(׿,Z:tA :|u*Rx(%\ {Ǜrƌn.$ϙR~hV'2"">~e똃Iv0IےhvBl]y6oA`8@tckgQmgEMXC +_,zX19Y9g.17H/:phD7[GH1cOi*@\(:q>Lন v(W6[5@t%EɎ\ )e48 rQ,D zw])RT@L4y_o|x*;gȜV0lर/0r; Jf[3].^Vd_LS4VWlt>5HA~s,E0k6C J׏'G7eH8'AbqMSjRP$0\i}Gn~ZlNHVF8i(K@WCM+㆙uHly5ob,ʘJrّ>EopE6쿞Ξ/;PIK4sןж|A%W f`c-2HqU@n &ܧ ,KfodiP٭3B'6&Ukgwu$PЦ4o;*Z 5W3\[u8zlfhm:Vx clS@£BwJJBw&ϛSm* :te [He w>➾i?]B3AtJ"u )GPPR+e125՛qj?$YۙI .e߾\ ØMoBMT/KrN" w7F* DIKJuWk N~v+T#c1Y2D5!ø%kɁtctt?Ťʟ{Є1 8֡~70قj3]"n3$5~>5XH= Es23&u2˶;V>[PD݅ 7I־+{6 iL( ΰ%|Gy}㿲"Ξ?\S.09H'1WΑڡ1dRqq¦y!ӡtSQJb<js (H{ZYQ>b [xr5H$/yq;M%3rPNWÕСjбP.b6??ڭ[ fdznkȃ۝wX$@W RiʚȘdzӁ!@nGlg*BI,' RҧD~JxXO:{֐]8CgR3)L$ p塇4psA @\6`{gwkhӪ0zz)u]5 /bI6Q9ey5 ɏ޺ƏOI;c$2?POو7Ʈ;NB.Os0VNYVpaAI~NzfSR;- :.iL0"6B~0 bW@iS-&)h`q;\|˿mצ]_XP Ս9eMډl4;.3PK{'j枍. .+n0O C7@$\rx웓[ /:?48ׇTJccDNP6&qCΪڿEy2c,`"Xp\zŕI й]_1G8aZLg-q$1 ?cT}kTTH[ȳ1e hA\Y͟ec0͋l.^Ž”,pr߼ K#G|TpܞFx@qwɔs aA>.B%vq's;Ld0|N8蕸MPd4I(Eœ"+P#G~6s $|m7H"]7KZwa)M#;!{ TV)~1%wɳL3C>0 $x]0B6u Xyw|QU p^1n2&yvPA`g*|O.Dd<Kk ~ȆZ F%|KcC T%.;u,R S3 Q+d$W e᰿lddX.Ca.0ϞkxH~q!6HTӾ< Vl~~<-eSO&"m fhJZ`bٍӏOC{W68h'⹬OLl9);nmsw)|rCZS&Pˆut8_9}#/%$ W:ǘ}8ZAU=^xԛ&@7.'Ɯf,L^,%0lwiG<|{>!tг`zltc{MGA,z&ʺ9-ۓ*B6+B&p oḜPȦ[\o5<5%"Vtm^+$#;}F8OX AG&&EM"XN<^c-{Io9ܨ]a.>_a+ݻc|Yj)|ln\ݞUP\5o k<+LgPB) `rlPf=MϼYO":Q,*6$_53.P07l`r $'U >2uZ#6kU+䯖fTYwBP0.33V`ۗ6h漣qs+]nU"X}#w;0iQb+ء=mJCIL]c[5&24P5hHϠ"BS-cDT1]F,<gل>yJ;\mi|At%6 w6*VՂ&<̚[L sbrY-ɐFJW@ ki~yN$ t[<Nc_a_\SQ_lS@/'1jB7DTQA"wm $Mf p8HQVzz>d\s4Zܸʼnx.7f}vH0قPsyHvGƇ v@7|5UWھnō="wM;69)ؔɎc :N'C}.Y 7HII"~>oj %]Ǯ@_FX^n593,RጁW|qF}L4q7~[RG$J i{fGTZ*YʙWM},Dg Bj'#ԋ>P3<WϞT]lnׂBGJqJO^DN^,]Oc2B6]%tq#7bo|9J:|V!y?}'5 1ϛiiDzId|r:Z7^t\~S 9)9C_qK^䳮ǣС s`h[LChq@^@WNa]Tj >c^a`NP\lƿAWD전AKsAQ1 P5}n#q1ĚQ;|ʂFuJ (jMr\xByͷSt\O7p>"S.QvUP>1?y׃win .6kjrp|ɯ'#:_Yl6<`]Mp=\g Cgy?M8 `Ry>0x`]o_Q0fM*bl5lkCksRs)#U/ 2٬vK>5m)~${l/K bD<4&Wit\28Gk_LWwCXzh@ds>h3_k1#AgD-vpEɝK?N?Ě1kv32{#t.CJB,Oe~u-˗F+p?".*W+5ӯWCaI]^G@R_3w=2U JY<+6e9u>{R{=')լ)NĒpO  y$^JB:;ǛЇm10@N:-aK`XX>r93Ϯ ) ,фAF>IԯXm Vj`t:fA~m)z^̣M0_ yX#m*d8w|v:}z7;̑o(bMz p<0Z8< +\¨!^+V'œn6'mx!+eQQcD~Xs[aϘk{rK ғ:Bncm+.v),ʹJרN/ŸWĪK,QnT:x^ӵHǠZkJEςb=%x~ş=||c@U+z=Ԯs ˪h4MAL֌[]XDY$ܞqjg'i fc LKF-ӥ_~N&_ S5He Ќ8nn 8a:n+ZYھ#PʋPha /ǘ֘qis3Ǎґ-oyh?S`W$.zbqۑZ8G.@bH6"gj1 `_.q=.9L9s꼢GWQi N؀Y,]˰O:`E`{- t-eCI3jCޤ/Z4A@W{~+gЩ[h#mri- 8ٲ-|rh%`UۃAlJ@Qr [0 IJ-D:vJBT5pc? BN!G]Mw 0 `oʯIKI$y(QH sպHݩY؎+_F,Ԙ[IB[9M蛒y@[8?榦D/y]OkoYw˾ֲ zS9t9pk0ZNpgnYTZ|Egr6>p,C _##Jk( x$ϣU1Q|cTŽq527ж34Y<ޑ X+ۧȞ߾.f @1EP;:h@r{U8dD*QYq.ep(N; L _f! |1sn2(~<*ґ=D S1PY=0=東F`YU&n7'*mF@ b 8 yŜ#9ߞXE3h?Xd[S.4@>H`<*kpO MvJJБbSk̂7Cw\R؄P@> Q 6Ѡ7`#!E'MZֶНvF䶆@ԲHߏD{;r=MEZk)1D@ !@8c~`Xو1&=W<8?4YIѳ,ϑ򎝷$̱{ NXa?#,d»MR;C0>[~+}uʄ)\B(J~' 1/]#aMKXVL|`hܴPlx-vwb:O|Ej0Ta3M61 譅wPlb]OSd<'vÉGJPZ%i &y&M r6{ Q񬍼J/Z ͅ 3FO e7F\-S3 <:^vz&0Œ!ΆN 48{O25|FtN;u%{G#2Jyi\,NJ5ʿs1;d?+;%\2@ؾQ un^$Gu򱨤9ŚB :O<X0V 'uĄJH%S[% в2L\և^NLae ^K<ٵvbm?-~#2ƃu~ m`Y@)t*B&h(ǾQD{lrj-tn5>(t2k"D^ޯ8XrrjpVUA=qCC0Q31dE9-<^a(K+rHd^ Hc4$)N.եVCC9̙l="3 \9d=H`~1],p>vZXj+޸;ZIZ8}3,b8ʋ1@@|4}R@(ϕYO{ЎMGnMOEr԰;H}[Okw3ℾ}1) JN 4e (E,y ?0eL_J+,q=/{c4Οݽ8`@.v}u[8+f Qy;$ 'Hd$s~5uh"kԯ^Od;eŽ P ]?'yX5=<}^P*{¿9k#ė( ?IlO RqSDsqcvpiD됄Q(hI+]zplJ\h'mήѕ+L,+j&U 8n_q2ʃTU_MlUت *@&.-߼,# K)G~:4-Tob+ (-DlA)'pޙmH>:t* Ks48i]7*M:7p2H(wIBOpxHaWmɁy >78/ڽǖ5b?.4\j'TH;6k[/\+yaij9U^_MyױP·9"(sb>=-'a_ȏ_>6@D{FAGau LҸM84Q3+ѨNY\BaPXUYX{I%+U:ҴUGئ%'T˴V>(~-j=5͐yhb,K*z &v.ܸeqW⫉<8t!e"X@g=pZ[B\+bK#머9y8dcܫ,ϯ2vl2Z 0V$%t<{d4rU<^J-Ԋ [-q?:ڨ"aPrY(6"+:Fۻ2}ܸpഋcLԝ%LI10}<۱Ut8I=+~ɲfD lhT{kqlѳoXUcUL\$T 񷙆X-4YfjpV9'V}z=fo 9=J̻Njr}[wX9)RLt r9ps1t4@X ^.edF8l 5Pf "2 RΕ%!})y)uY g"*02cMUUS|mj->%V [Od m_ h%2D7a%# eT8zCvuϬd׎E ^lH+n*?i?[z=w"Հ<Q:ntE`vbKeY֚^s[@xf.Zs+0G5_bKQCUL|̺nI1?fj1qբ;wC8 ^asCm%(&C=fۤ>qCi +ez (VCACޘ, g֦g=q;95TǩZzy- /%x'J~#yPnMjh=,o(tM 2w'Pt&Ҹ:X>%0?،(EǤBQr;+\=T;4LZY݇FvnR{\ꃠF9{foP 9$nDQGݩSR2y{wq9̊+.;!fΝ}Wkzcj_pu/?9ЎG9=J=\}*w4nnh_ .j\a-bT@1 sX>W}u:Xp6=z<`)|KC$tOӽ4\Jrc#^ D(# Cgk'dALNOözmse+d-nIC|jZ5VxRp0OltZ\EXB idǔ/cwEp4.1#?HD,ͽId0:n:Dǖ::vu(aQOj 9!\0 7>nAmBs{شi6 |M/2ٶh:?' ix{  MpIA>_m 3 ^D>ouBWꂼlzS۬}.b@A5bmly1 \dZht`16"mn\D)1pbLs[[b%evw9ٵx_3m*g%wB ҄la ,Ԥ1Da{E~> o`ǥ~-DŴ1N_9u /lDmg;0.udZ& 62LCGOla  Dv~KAPmHYbRy{:d>H@z_E\鹼1d0-g'`qUysTnlӂmmH.׷z1ߙ$pMlJ$8Gd:KPh 82WHqܧglf۶~2nU(#7LK?/?ސm˹=UI,Bֵ)inF"Ph6ƒՉ$Oɱ?F]/]*+3x*BOF9r -&"<'9@ ~lq/OfJHr};#^.yːJ@O&& ؼot9 >-;V ư_ t5ðCMs܍2$ i].!>ٜH5I7+yX:76+CDv@`NT&`;Ϟ^g1Nbؘcǁ>]eK>d!fl?Mhʊ1c,ɜ.TՈBLޝ'yg|&Z0i&au$cA**&-K?ϞR8C@:nNrVR*lnewWm%zף/:sb@4f/GyWd n5ѯ$jIyHדA{iwj_,^I1\J0cBw~ǿ2\>Ҥٗ$ɉC[W2 hlWAcZJ~\_w Y^8_L YWG"'Ѷ-x "qI-|_I"R 3&G_jsU"*C;7{BK(49Y}ċ Mڢ#X E g݆|$:SqӻwiׄЀ1[J&ZR:r 5PxRGu.h aF En6_Ź̋KԎC5O٘7R65(qF4ofn+I@Q;OSxOq-%{o<e3-բ_A8 \Eg cJ]z鸞 HHןg=ږ;$: A; m֮uC]BaM?$9f42z %[.Y~Y[nxד<[_JAMyojʹŲdh- MxҚy\" ӭ^7|#Νx.Rn'vheH}2X&s俓2_f KtH=UdjySI2 R%efަ (`ɀk |?Q9K])pufj|ѯ 1wj0B>#V8jsQIgp+wpAڵt ~7NlxS v˻Ws(ݹ 6NW.)R% 8+"[]"VM=>EF]X(] d`ͣsZ-xƸ코&E:-~+8^^/+sVh3"A riDeM-dy,F& A<(eдoijyp萆-, ,E17V|9c!o,J#31 r'wIa"Z޸D1ESϑ\9C"MI.ԭ ܹɌym-_h ("H pWzv7(blI?N8XnG2O!s8,ϣf#E,;{nuG6M>|GYgO&GJ`}"Q!@2b̝WNƲ6q_V'}Ϥ^ı?S ; &",GBGe#D <]H\i*Rz&*R "-PN"+</m^LIc)M!O y ljɱLRlH I6hɉ'%3v0|:X8C ]#oOǭAޣ,8,8$iUkصtÍ0Xr@q4"80G$Ys$c%bϛUN 6*mgѽW2d>OX+!w&|޶vV^ P;rUGE0Zbj7K^d@vb,\ucӸCķV m3,.xj۽gsoBL+OQuE%@3:IcDeXqС 5)t$nOUz DlZ44n'] tQᡓP ڼ˧bQmZpq2ױ c9i8w"qp> LeGY7ln ? %SoIB;%Ąs(鍾\Tᾚ އeu㤦'RuJh@^ooS%yh >}rFɍL~G_R?$*Z?ríД9~k#* 4gcEd\sp . lqTo}ԑQ+b(j/qѱ;ls$ϳ=\H!vI;Ja 7ImFtvʩMMQrG}0|9>M W2 {io *E LS~OD/@K&q':XN}fW6Ec~4>wWYŐ-Dxzatw-`؆Ném>@MKt}wNlTs7~j1o̓lȴ^ܜN5iA'iwUu˧ҊB\UFf;jWy7uKb/3,3S`'|SyUr)}%F9uCi>L83*3@3 iUx]ӂJ-YC#6Ȇ5Yq8?EP 7n'A DhPXߢ5!k-lkj%ƭnE*"N"9͋5f:R)ݖ0"W )ڼS 1Z ʂg 2B%tBy"=iGѻ_Gm^ĬgOH#Elr QFyp!]Vq! [fʹ0v^8(G~MX= Pg:b;(QR-uv[B58ˍ6d=}ڄQ*8ʉq?GyxEQ6YzcLN[B*(p:;+>:l}m#[L#B]J8p]g5A1KEY0@rhO=JqbxҴ4W' ,S2|PꢔmfSkSŏGO)L5jt5繨`x uS惜YHXz6vbڍL!tH[5 -\V.0H'yD|\z5OC'oOxקoCy{@FCi9iEB^7 2Q[k;RRUaȓJ8]+h)VVu;yr^v`Ovؐp}tC^&q~&Ej "4&͈7Ӳwp!wtI {c$5-3ZV[YzHd~o>2x:j\(m#**ޅ1JAZ/d㬁R sA^qn7m/0 =Kq|*F䄬١᠈]W|z>\~Kb=ܝg&SgBRN k ?KgYw7F b|v y6P%7)o MlʿY U7f ȉt#-v^N٢VGS@†Mjm4`M욥y?CiI<яj>'ay  }9nH89;"#+ eg'lOb7VMTkzer~<_79$᧮)O oq:^?sg] =q?dѯ1քNKK:j5 +JЭHpk vgCX3DKĸI0k4[6d>݌ zj5o2[nsaKv;t_סEI yt=[ 5#* 0dc(e4ZGhגgYf!ݛ{DsLv5 3dzBtO6-Bؼ+fAz}wZ$o~BvC75FΧ%~ZH1dE;+Z J UeUJTԅ} BSTU1n (PK{mZg7< ؆# Hj !GzDYĽFY YN^3/b БE0;u+_Q_(,Iv=ڻ܇Bz9F WU3 +u;yLSB(axaכ뇚taiR0N [%pqy%3ڜ mHL~T< ǭ`2#MEq&'1ۑmX1KwT i"bmޓLn~ghBlpY_^id_GP{ת#*(;-nCnI=2cݚ:Bz܍K^Vô5w@Բ{[~C[ @Ƨή̓tҘ/t^w_~7t0y;xF8> E+h!3\9O^G1ygTnnM4!̪7ѥ?(@PM2cS7un:W:N>!TH|Ku3%4iRi{GK ^ C>j :71|I" J7Η0a%SXWWkA5 0,Z6N#聾]|T4[ϳx &TLo",Z_l}WfOz[sVn= ZO E{e{n^}DX[=@Qɰ fty^/"6Wz٣4cVBa9oSw=SRA~}XRJȘ'Q3wvDW 4FڃVו0wM2oܶmEHc?^dFc7h]$At`Sk0E0i`[RN_ U2&aރ}v˪PVFhn-P*ۭEFe CGng=}{Ic AeXRjޔ'\'b |^3Sm+ȧt8ۣ&&(1:YN]N6ѭj LfD̏YT̶9$ O@Mon S/e%}@O")lڌ.X$W]Vl4p\ղמ(:с$IyRu3RGA#3?8XZ!(L3"k;uI=GbH+7?<Cp5=RAڸSH3(~,۰:MytݹU.GOk9&d~MEPeJjN:'TE/A7*ƐU% C |sTy4Fw3H?;sf.:N;HΦERVAS\M*Δh7I܌9 咙dK@1֭qv< =Pˀr،艍'[_]ҷ@Θ%8d<.@Kq QU  $RRfXǯsQOW'U&L'ҾOO PlK6Hҏ*R(lD/hj9?&ch>IZ 9ꢙ*PYԡػ\wǜ-B$Z Ks=A&̅at ]A9*O.Gw#Nob>Ec97aH%D-:8m>Fd0FUYb3@by\JINJA6pCImd^RY70C ʍs aN=<^:9=vM} WB=PҤD(ųEmO |pbl ⌁ T9l| ~щ5Ygs!bhn#P&n~Je,RG}|0/۶m")`Xm8FMGN%KI7'}0>K]'a%ZH|2.ZJ@YiGy*9i*Ͱ&)BpW3*%_t{6 dHqʙ/ai2 !>qqk>=\į^UhW2Wce7snw;m)뢒kq|E2XLH_T I/F۠q;x*ídʔ 'q΋FQ;ns-ͽ5vx]=&6`FکVvZՂR T]r9nC˅l tVw?| @$ A[ TK$VE[z@r$*Z@rMYk|Ni&3Urjzb@3FdvCmO %q䧗g865 rOD&ø- oCn$dZm1Jz9vpbzիXx%Nq*do/FUe{9 @_}S?{>hOôo J="A\0.1cf. P#)Wvq@y`N(ھ.+=kT=ss6^{̩X9ppB˩.Iݣjh =36S>~Ðn /6S-iMrE"!jtrWp5ԔD~ 9n$.%c,&Ͱ+i'?S 'iTKΈj2T0Co{z*uLJJC&oi&7DuyQqMȨ}EМ E;}VfY)]w@bnWʞ4v2#{vI;YHSՒl$mXlC)yp%'>%L+Dz/e5#QizG^A$rȅ>!Ѻ4iaGCbtS$ŮBēʪM~)##&d{-3; 3pbEVxfVhB~cޝH^9Vj鑳]qUDX!$g <:.*P %Ḁ%dqM?`y֝1z=ttL]&510WO$Y#$Q vU/u`܆)4gX]lw*kV`lG)-,бB%O=Y% L@[\op\A\(L 6ZI2+QMUFg(4CkL'JCQ9oSx"yċP1GD)WFsSJ˳|;$orq5Pb[.wz"fFzlX%~IyCqo~x 7^~O2R:SC@SKÃ%w8ed4fXpeve\G#Q/Pҕ\a0%Y~u1ޯ D%^xdIAFY}.'%Q3ל8Uǫ1]SH-CYN<.\z N޸+b6x Y'4|$6|wt0ڇ>Nwa~ H#8F;d{uQ$g_rH燏mgbf渒BR:~TƮ֫O2KW9^Q؋aNC߮kxQ & 0H~$??A>h46V]9t@|Ϥ+G"{Q$ kV3-3ނUYeE4{r^hgU5D6|)L\DJw5M1i  msKN1U+%py )nQD|L KMq^>Tɪ tyz]8NyTc#Ϗ6:h-rk@+d"刀Ffb)f!E{!ola5#uѮ9i Kl!E덾:Q2a2 G˃b04X䀴oE H.^ `s{;E &}9$aB*hdYBSƄ\%WʭwD *#ئ/BߊlV!4pCoht4`ڣO+54 Z8'm\܊DMwi*V񅇷&y F[Eժ(87m, r:$e}dK$چҋ7ELռ֞qm4ORrxJRkk 5qqe]IĵiƬQ3: _eI&^7"UV=kޖcKzRWDt~X*"ReogŒw!B z0} []>"7 |5t@-jA;q+7*<ҙu ^MSsW&D+ܱI]A}=I!.1z:4]`:a0=P1,5B.cQkи}NW/;&/wZ;`[ԑvdҹ3ZF=]Y?%,Zr#FR ؎}zNqP+T; !;\1Q1*IY蹄00[1nBfnVm+C GUne ,stwJ>w|ǜ6SU}SnX=w8`GW Bb5+-#k|ؚ w7+e(z^+ d`B 'rBɻ@ڑ~ >#J~YҲ&V|r9#;]a 5ID,%V)drljp;_f:ݬzddz\wU+˔J4}PdK%yԪ2vwb A: l䫍~1\u,j+2S/CE)-Hcq 3JBX a? | 常%JT@ 'JY|)(,`A V@ 6bh3٪r& \^KS!;iH" )&U .mzв#bȱ.sWt:CZII(XylXWCrhq0> ~r¥5frYf?Hq w ͦA iq4_>n3F Z,9qQ9$'\c5\H维&2lF{bmPNMe@' vӹ̱ڶD= #Qj²@%>0E#e qR [ 4'I祵|뷼С@ pW9.CXpV2)TZY3% |< !)[^a6oIKW~%fa9Uq5* xV/#GiwN"Vrphn[ص}!OLYj5_պ G0.ncuN3@5Pdt}P@Bsb3FARpd2X^o$zxhq{&ad̓8W7[]$m|h5ԅ13+2;J)%̗`8AzϵMAѝbQ)((aS)*@-Gh~~fZGV>b}d rW0bcɻ%9(0J  ~!5ďDE"Z"M=ςMQT9W=: ~)Z"U?)8`fϘu&F'?r+u| Q2ܹ?O928=ۇz6 Y'y:AG'HVWѺ4!/Bxph>a/G4%g#@R*'V)7 Lnߕ(#F` \W֚ZdmR7 8֚v"ZPt:{KLyH(;C(yȐ ?1'xH4q(§R/n:!4M,GѨl><[@ E+(d9\TwUb a1Zݏߧjpc@Qv{/-[0MYW"Fo3 Grr,d׫bD*5R78 z Wk(h+ks<\/*V?X7}KL YTU't>Fڸsfr>E:|JY z $`cXˆ"f9TƛG/ѹ T^÷)n;XLgc,G.eZ[nȃggaPw*'Tht@y`ݒŒvgtХ2L -Ӌ텍%˜eJJP-&OˆIdqΑh:X~~=FPx晢Cz!S^I}Cn(3.L5)Tqӛ t^zE3ɺR}S&ᶘvn3﹐vl=7LNYz6_y{̙ilKF\c?i6Rݘi&R/F r{O8_|CiE.%>]X'Vb.&uoyDd(p' nc}N8 #Q6J#_E5 `~´T8$/=WM?8 91A, XAJ S0Ekqhl9C6eoIo)#x-Ws+Uѣ4M@|V>2,$?Ğ`Bh}Х=ZfOo:fh0!LBb3&Ý'? X!44֡N m̢)z |=As1& YF]8ۚ$ZT?MsP;'Ǵj,)M|8Qh()p*J?f^ʖIx`46E.qZvjp<Dz=g5CZWv @ʓO:H@*s AXc 6)}̹ fYۢ(8ʠXTERıTQ9tC}p;VIlVt?$*.0ƞd2\,,S X8`/ð c 6)聵B j*T t3Dldo?ip/#. >]/K? 1!:yǻ?r^P߇]~YV@}[iAiKzn[/hL1r9LTM (/#UrϜ85P*G08#I?p o_}OiY/ 9:Ġ!4%`~Fҍш 0j6}0>x~MRmAOOZؔIEݐ3*gf6ߤ .GZ$Ç갭cX@}UiXA qxf(U%x>Mk>4l߈GYbHvǜ V[(j8 <-RIUʜy²1'qbNl<WleJaI\ʾj5\p/#YWcl0b4_%0t~AϠzW?´hRZӋ)0v] Рp֬&& ߠ.gjؕ/>H3CR))v%p˓.}6R8b郣 -"eI (g_ ࢘M%SJ-<5`Y%p.uT7OGyo訉EkԭE:}* ?Θ2O; _W\{`@,-ؽ+ܛYmxFY&ay)}O!߿'_X5X]D03 >Z0L}&6"NN0eO7UnrV+ͧ5 #E9("Ht^WZxjKLXzxT֏.$|C`b1ߺEK~ l'!N9.!PUqIg#1V(dS5IV;>'-dh\7(OW៹(oeŒU9>-4/Mct,fvu9Ԕq܏)[#4MsO)16t2**{Ɂ263p=b*/k`P"HO+{-FF_ WKDzg:Ƭr@I<@s.>|YħMt&'BUU:5=+@%k =oĎ36Zvvhx1adOi̙ H?a.{"M1|7grJ0gushVLC n YvNu-%_qwխkOF7uQE EFwz{0 qcj|+F*,UH5޻&yaj9)Wo}L\':gu$n'ČDWi4d=ک$}-T3 FXB7ʣfɿ;NZ?1N(b|nwЋ"Bu3aCI$/+dzaÆ2B/tǓ{Ke112IRd`*O-RO_e-F:4dF1u<$i/[uKSѩU9OtNЄʌ&3 4MJEno'&+rqK9YtoDɼcSBGN~BDӘƺ>Z`/9mfMbٗ*]l-e_'q1r8 DIr/iM l蕫3  A1QKEt IJCwqxCb='n>SБ#{)$ZwH }qbXA=Bh6>!^ ؍jHiGHrÔY$kY%(kG$ܔ1LG/g]3cu~Ɏ8r,ۗJGrPq59+8tHAt;WH̗[ 8 CZ{ La>{&"M9pt{Zޮ_ reuC5RJ}zȋd×j:b99 vֿϛ= MBgr[oP~yEb^/Ix4jbX>&2EUvJ\=λτU) Þ7'i- w.IP~ŏiaݣ""KH~Ozϙ2]S.PpE-O{ߦ*Q' Η?2Wkl /qqDXbݳb.VTm\ m84j4( oJ,=XVEI,HD~ B.06<SчbFZn08UQ}E)p)Ev_q'I|KVMeutB8MM07Yi?*5Rϕwdx85b],֢r.a7ɫXf(&P [6kL\I0Jœ(r(6?G`LE"#}츃KWEA}{)w؉Sz-VE[ӡKs.D ͐ 9 dc@Ro.ŠCn nwPR%Rp[Pqzi_.`@ްy֐ERƪ^#u⬩ST.ђlg(G_^Lr7M?/I)]JZ81eZNHջfءV:Q1Ps۞<̀;5 _?i\Hc~}*;EA֎Gq`q76Ѯ4 Ij ~=*kRUn9h_S* =G,H9V3F_hO^)m lrqcO@} d|DcEyWwj(vY:'OCE}L1ZDt3z_?(JK-/mpOuK _}ЗD#kS3z_7n#k_.sȸ[>o4ć3udY;8]A g|w!5N:/ ܲ\)xDOp%~%acý˖^k c<vkv1R Kw!fTBD 0kEAЋXJ=nF7iU1oJP;{$=O _\5K)JbR^z$%Bx*Nwo^Iӏ[4+%mB> 6X:b3N&'REOa󒷺ͰhKYGۺm}.?im?, X>7\enQdꀨOI d *vCP Ib8X@LDO>')P$(0ߕ-x5D!P_*R">Y<FVLay'-D`'ڣ4jClvcu<M-/~sR{F؈H_R! UΜu {>\;Wl/}f#J; m 8,% 5 3JPl^9\d4=xMgnVj;g zͽm}oP'o*E*B}JS,yH8PИSZPY@H~C[Ts 2mwb ꋂ州gZRr=y_<[Yw@@<`}cRL]S#U)Bx/8hG+ nexힼR,K:{H ԡN]90\:GtQT9uJc(,Z _m(Ŕ)If wInl PglA*ץg%1 zlM9{mMZ<)7yzuؼ[KS I&H;'vv:^=>'2zVL^ً&xm!ɔ4#~,Օ?N٭317[j-QFAy],L_e8L+%)w$/5[kx3_XAP1tԙl;Ӂ_9Yf]mV~VMKJP@[=cc4Xzr̊4EűN6wӜg i#$s@W~*7/@} 4g?ˆ@ͨɂ "ԳL`R2zPD-}F@Ydisb,Iѷj\)t: B 8A}ahNO}+o.%zKVT)6; ܗ;lK+{egAézr{bG'7ĵ x\5}N:KeJf–,G:p肞@Sy2;m9͐.`Z*y?MlM 73- )J%" ÖKKz (]Qi&rg h8_ċH'Ï?})nFV!͓œsSSGYA6$]Y)S٢*fuшfgxf g_R>)Y܆5|QB1&ۀ}:S0 ]2[ lILhIŚ֤1ƈȫ÷#чzڳ絯Riu?@oN$nnI뤷G{ u ZO;' ;ҏ5Hd7){|+CoC?T_l^x{`FHM() {aY3F0H{$R kXʎ)2:[`,0# $8ka?R]zl  - d+: -!#Me`=ϡpղG3fƨ4^4GKȰ4t*\ƄS;0D!uLoUȑa8DAZ0zZ٩[XdΆT DjkC,/}?,fw eM-~{)z^;r?A2_vrE 'N9 #NC_wec]={^ʽ;Yh9FbEfƽQx0&[!UՌN2cX ;4֣,Im+\ayD#D>{+e45G53榮<2n];MC4=eӸ[hNVZHaܺi`pŋB)S Ox$TzgT_< gRZmw/RveyiFVsG`{5C<|G!ç"Orn0|~urBmͥĜcAB^ɈGEON>9/eGucpuM1>jhMkIPKAZ1cLm1us+ޭZ%q\c$3TN c釰KpG&I4!.z5,(')ooGX/4u<о)S<>hB8P(YxOAR0w0FlB; .2]鲚9-ΩMLxI_:%2g@Ԝ7Vf37_y2Rj}H0e))ɣe[?mD~1Ϡ1sbHvR*RUcܣƒCI V oǘThraTD/'kgqi?a>,dXbN46mQ-mLv6=٥W nH.}_ZaC(RK^R?;9_ F4TB p1=fqϪ$cTE'D ҪI@T R#U-mbQ`KJ at%2p`ЪEg*Ya9TZIod Sܒ$>}{Фߝy9-LAE-k`^\"kEw样i6$ $nηB>SAMYdW}0&CFsxS) R l%bzW@-(>P:p+AXkJ;]Ã`i+FR[YBOmѰKc Sf{*77tS;Mܓ##s&(4@pmV  %h2{}{ +#|w7D9[c#h62͝~\ɐƁ%m(.g6k~@R6Khxm<0hz/dT/T%-n+ҥkUS`dvXmŒ8T?.h.k/~+ o ; QKpx8k= yHd@"9sW~׊c`K ̱/06$Lp#^ Ʈ?NR7&t!T͜ct$G)ˀ B^4~`em5y2vQ4f=gq?K`dHg؟Ǐ`Z}:o4rf)Ώf8S5~6Ys@>ZNA $;>olKx-%\ǵlSlւ>tMg}QNR}Ac"/ȾV~ ~4?"Ζyl XA5:#Zv+du|ʨn2Pw3$}M'|2&WCp ׋:ru հ;[n{\ vrD@ۀ̿8y){'EVYޏ-?\6-<Ȉ0 L).pry\(Ҽ*k.x'䝒ƸAɥ3S_Ty BI;]u*QC=ӯRS<< d)?$-AܘV@Z>d+aJ;`=T`pٌ`6@_.??$2SzG&5hU0L{v^%xV18P6F-L 4%ey_0!(p2#CX cWA#<|8{18DܵI㬣GyS9g @(#t! H]4426+cw8k/e%gfUB {gCTVh'l_f~H0L0I L?C2dϮi!PSNc.mF 8N;4XO@G}WGzL)+]|3о3l C>|>_\z]nx7p!3x8[iV37 lvϔ/Ňlw;Vrf@զ ^~Js5qg5#uCiZ5'`F>쉨[o62}c |Za(Ux$Nsfvؐy`˼O16ف?l5;o?<k&-~e, w7rg̪%`IWi`IG`.y5:][ ~+1x 7ZN wQyxG:rP] %Y3hxSo4kadN)#tHH)D(0u5Ӳ13556j#.,h\v*]5 <G/8<}ؕq⡨__B8]l;e\`6ִdNLGT0YCEȲ5F8UDzHߘ|?C*"b2Jےj9{dBRye6#[cS\h$ ZV$,I?>3v4~{mkW;x!;N&B^wexNȎPxB\5ҋ<@nXNL"AkH0KWy dݘ-!^`J(}U<5\5~|j59NK"AI#UI 6k4 ':Fz*ՍQz[Y@=6 td6Z\[Pt?)}%Yl>]U_i9ͮMJeE=>S"Gl%'@ M"r ֭ǀc0zR }4pş4Ky}y2)e+ѷ(vq 9NQ%dJ7R͈( m$ DdbM8dQ^/s_Uo]sgvq>yLmOAHca r9[)ݖY+8@' ѿֈ \XWHrq?fVF9vHyJJj̠+I-M?*t',N>VD[XHطR8!6B&O#[p)&.բǽr8)ed+ ]%utK93ftX*,[MғzJxi~h| gNzq'3FN2w JX>4%"#j8nյGjh7geU.U|pn6$ :Hput BH%5O+ZڍA}[L;@Iagr }Y-݂#%cm!;τG0>6"w1;N96K51& V]G)iBr!c:h!U` :uzr9nEҕ%L6J0쵶iw99,| tǧI ͚)F{[Q't |DZd-lC,,VYyzy癞qP}PgIY@%/-qT c 5,qT*˕y4 !#Ap7%J,ԑkc]TGVE ~oMXWFkHƟVd2Gb% s9!}UO .X|! ʳrQ>(R%uuziX%-K@<jxw45X|JmsgdJ [D`w>젹}U&B:yL'L }L)FЎMAx|U+1g(p\ .[1$}%* RMj ʰt/4-ϊzRE7~1b.DR'QjaH 8ĸ UavkA 2p_p%GKebtYޢ+Bo-VMi9gD(u}ȹ!yG)!~J@I0?cT,t޶Bȧj1wk&. OIt)!NCgp$r "x2GZiרCwV|jyCk̩f U,G)ȍ^u4<E¥){.`J~wc?HY" ?Џu]SVˠhPTQ# zqy\=1˜ٖОlކu8f hj /sS$)L6;U\$zu(+eAZfqJ=i)o}6$`6Zn&nDp4h &=/<2ٞ' vu<w[yxM[tYhn9(iؗb|$qqFhN\f3{h̞*8 ҧZV9fɻ(>=,sף'<;- >; [ N][< ]i֫}b󗞵p76`I!Z^ ;!P3(aF)rYNN5g(QԦRSZԊ5EYd؏'["^۱WʾYw-? VȾrڍ뷚 K0΄)Ɋ÷ZNާ'.uDǜqY((H^if9iY4tv8AkLlx06=9 ngwh5^DTy d.h-E7TWƎ.ܚ<,9V!7gX`AcJ?L _yM ĞtR{s$8 [>|V6T88 յC `}q*m q4UN[PN4Q8$T&XxЊϕ\)Svft=搄)ok1>)PDJ6r@F@U+4yљ[@xr}0g5_4}rD>)'Twd1;xpc_S@'mr a3V';^m&Y0Ism\ o|&2.i}DhFmlIpR>ze('"<9:<ްC?ҳ.een8|_^hBi܂ {JM,],9OaI_CST0{[^W@Ձ%CLBYrD7P|"CY޽q)9T9E!tm)R-U' c棫’X,oj;a+'~nL7Fucc٪z]OCR2揹QW/rǘ),΀,N.g8$< g,lNX{*&ubG8V+]%?𲰆R .M, Q#j8%%]VTcD.8lE-^G KT0 o1L~DfOۖzp.@RdD,o#Fw+zp2 OU1s~ypK %Tr䈄NߗK) I| W vMo|dh 7zEWr ;IHRxp$QAN2spAPh] Waݷ"%m<:Eql?J0QetѸ:5M_pHE5M5x: #lt`\_޴{vߤ~zKzQ]ޅ N=]o}tcU֝zh9.y[kCchR"E{bCn+ETchO)VXIJz^ o;&wG|R$G|Q+q>/k] *en} 樄MU ^(w#Ã4q`Q{ ;.T49}I",Y3îv ]B>+#;/0tgZX<߳t!kӁnXMӶNWfY{lN,sѴC?;z2221_7zRXvCVHo{z)ui瞨9l2)I;ƅM6*gxc vz:R&ZpzF{fgYۋ}Vn;|eꞲ!˓t!+V~:{/ưQ}W^1]fz ޷@UVB^XXс3.k&ǰy>cgWx)Lܱܟ.x4R'$V2v%yڗT<[,+<hƒW;  L_vFDIb`;gdzfV= j+uO!\nhC6LYy1.ལ9׌lX H)(R[˶e?;1q0'j4:]3WZ">c1]o!%!4k,^D]t'jX7Wۍ[ sҮFtk?v:P^j3a2xPTب"VY!wLQCFLnm^zh!`׆ApXiBd; #p5zMAXAKK~ZS2o(KCx2xpVQX]]dx[00MPj_[l|\GDHڬp qsjt:$E/AkaѰs(E.{$Sb"h2XNaO0ªL$AfSƂI9  ]Q,X_$;)̹WQdA26 )Br`%r8.pZdD1ro8ξe[%~3S6G5}+o"g`.Bݭ-bL'buH~&mP} 3|iA p/?UhDK+UBsh Αp @ٽ&h2bCVڰ"WUMjϨl{nN:^n) QTdOSL܍492NtNVe{rHÅ8 eiaWaFs1O5or`ds|{bFb.ӄ}6Z&s$RQrwwHomѳ  #6AN}I*,A%z찱f%%\ [2KHpW `"7ȃs[54$m4{E#>h֤Z>=QAzfiz];pSU)YRvL #(F Nl&)jo\1ZPëбji/_Glg * ^ J_ Ҡ jI26)wsU D1z:|e4d,"wӒ $jiɓ+*K4Oq〕US)qJ}r% D!trĮP?oDLkLw31̨Oatq X ţ7;=d(ϔo?=>l81tm(BnꖵhCBVeL&s_\BLD\\Fu^B&4:jlC!1+Kk2@cu ,}@FoEM|Ϙ,"xQ=N`y8"kGm)!UШrƻm}Yp?qS}UC(#; BDSL XdcԧTěf$ *etp9fʴ_}p@; `{mp?#tM&ӓvk3oՐ"uM4!uLXýߜD *ϸܔ-%#RW(⎦[X퍺wHn>Qz@Vb}KBbnث.~c|ӍK!Ețpfc.-g圃>@e<8L!Q# QY2om4/bo"{7H<%"f$|*͍Vam1Ԫ_rK0o?2|:AE_T@rWnWJ!;pc vcC bU\/4DF3Yq;'+Ƥ< h]D40yĶ=gsNH6R>RTyU:e)YxdR`i'|GϷ>KhGOy13:LـؖKv $<`\aBЂ#?]rǽ,L>еYKȈeԳw쮦ƴKYDRwƅ'7|TP_gٙE҆w9jn?5bojEFisbrqv(QOs 4,Z#NחP _x~;R13ʡY۟ckk+Xt8oα]U0u?]ڣ=;1J(4QH5l8*+@-J}8gUd,S+bFITs#$*SJ6v}?vۛkubeViHun4l`mn߻^1*sff*Dz?23gNbzkwyII=5=Bkc9bmu[KLH'%`X_"bO@]h!'{y<^X2D&݄ 7khDћ5H@tdֳW){ЕQ aS&<u|-LksDKGiT _L+hAեg1X#ὈINb5G֐&}Q2N0`='vtIJ[+oxEZOn eEFo t.9G BcFb&!%ez SGEoӊH0x۸X[^peih5KOsseGp2Vo#Xc)2[39=ۏZYz ඩQ.M}hrkpnm/Fd#G,R!FY3i7ۥ\v&d ػr%ZPD~m8qk"xhR{3@wI FnVw3V9-_!]k?b7|o9,. :- ")ŀpfm4rќZ }I>^Km*c `-$JXKnX8T׼yex'*ɰ!]*b% JSM+ҝI,-5_?Ee p1Q:2P# e2Ll'SspgؚxBVOwiL>݆FL,QQ#l.C} 3u7&lwOu*!}΅/sv yB۷R1j%߇26-.P)op)mzCH6% C.#b*dTxa%: ̞. =uN)~!;ώ$eԪ Ƅ]yxVJ&ɢ0]U еNJ<;Rɡ^PubDh턜MT<ܶwgU =_w Zܦu2f'7+U㡂{zrk!t-"1~nEEhEC0Kc*j!׻mk.?{t:/;OFʁwR[Nyu> 2@`A'ĸ''\]ǃ xTd+YJ!tz> ,)/HI^,3AL6Gg^! Q;nk<֯Q)hJ@;2\?`F'ɉ2J8YŒψEU50N>U8 o?sx=ۣYݜkU!euTJ߄/fa龆ޘo盶lC#?=!gtM ad6;Wma RrK,m;B^={w8e0LIE7NSakъڴ?%t@\[*;֨]AHmVJRUBԤ2 R.^}ZM3aV8s׿ZR۞YC9UF۵#J 67.Ø^ɔNu<=AC &_(QZ^ D4~;o`VEގͽ3vzw(\p1?>oRK#|[= gmdf>K8"v7_rt%#>@ž^Mm '; =Fe3hfxzeOI<{\=B߅ r†;\|M.r6w(}P> i,MDtqkx܄X1F?6=6r)qmg\wCvr0& /I~w|26; C kn5%i߰!/*ܪU_mZ]ߢ0$p}K?<dJxO+ϟ1t7C%re@O8ޞ]cb t0 )g䊵w"8P5EZۜ}:[m‡7# zK TcP&D[ B}Ir1gAa7Q&N:S5n ɢqG{ϼdmtS+!-\#LF;c6l妝Eͩ)(p x{.9nn<֑:_ڦh(`ό[Xؒl+L6B?CIխzIr~XvQ~0Š36`9GkiHͿ6*D>uFjh+X2;k?:\O'8TU!]w=`YИ~/ {`T/}>c{~a~{x@dMU\NJjh)jv|}0og{qC?veC#qQ-unHzzQH khA^7RU H.Lg4#5Heה 4L/OtoJ5!Zϊ(Jv0lV;ٍ֘,K˛y*e撥7еvbnV0#ȗFBq)m UTmRgJ r% j vOo\[U$oJ)(@iJ}MM$2 9YH R)ś;a&yh|̿M`r QWXc YEJ|3vb\vM+)m.S7~EWhwLyΟ(`Z{xa42Vq @Tz0td'G^ X9R*Nb. :) `"9QlsX I]767 iNR[o#a 9j*4*GoمպCTsgˍ3TcTH.)&O4@ۥ}EքFSn$)%&E{8\ zA!D"c#8LS =Y\M)֊f9N7-vʪ+<ԥ0`uh+[E n* dpZH+>~9|e/G&vM'0tɻz0_Jr0o"RTپظ39p܎{)OtX/VNHܔ(*փL(K >: )(5(Fml][t~=AdTAfO!>Vתo$DGTM)AuLQFR_߿L̪uUE=Gbx?>bq* 8Z'IY7diVjUvLx`}߉^f8~M ڙuo3߈ m`8L68k1_[*; arS1WnHo #I8Co` Vv{y(ʷP'ySR9WP󼨧_! < #BpLS|<$2u”3{+C^T.d}Ot|MQ3LC }N&0ڇX#&+yLku +V?^:^ڣ}\9uIiacKi֤3tR(b?0"h7ʿ K^AP72V>aF:R7i"u"R+Z8 j#tL +[Vou >Ÿ}>}h'Baѣ\E DR酙-9,=*7vxuXg\ee_=Rxq ڀzŊ_J7j"I&P"AYhѶ Zurv)+רZvjق ''(sS Dg.x.6P=1?U;B |R:ɉD<,6[z^ԛy_"Eck. vGp|nUmׯ =7^ecqt?Zy"rYyz2,tycsHXh5Eam)C^[RLno^fIFL9=.\0[+D H }l>qȷc/Ia߽3md`ZP+s̗Q&xxó+JrT)ƒt{Jy'21i5w"ڔ-}V $ꬩXظOxjȯ} ː09s|,Xt#y :5TߘvtYR?K|>(^jB,MՈޭT1[Kƀi#C#>qDʁ9nt\ɉ{&HV⤚x$'z"|&DT, !^ʃH%:#C w;]&!o:I"qIi$|ߊ]q#>Hl_{ś`="zKpQ䢨oOZ2Nz#WN7[h}>\`9=^LZ5LregS  ̣$'PrV 3:)TZψ>ceryzEoély|p5>yuqWDiC%2򷻵;M!xMKOW-.~ mׇ&: Zt#K[_ :ܸ5PAvkf鮱!7CEG ĐYڝ"Hs5Aj3'Ot9e!v#&s6W`sW kQR#Yയ$4I>8㹜Y-x(7_hA#k P!%j?9lH~$K9dj _UJ>"9|G'>KgSh[>Ua8эŋlE ݺbpO$4|ҭH=Sb1ȑDL6wHNi5z* #Ӣ% }}@#I;C&wwSsuq,DlinyБ#=W>,,SdXGHQIM]k&b [[{x"(Ħ~53|?$}viޤ|NYܰ j(wVBNR.FGO/F/)EUdMUE]/TJu[v&[ MVIdoc ``8  '0t5mh}Ni{{M򰪰d}3sI r[@poMgDmOO4vV࿿q2./{hO/a U##C{,bkajڅXEq2BNJݼ\or3G.yՃC7;jC ~X:xzQ1\p6 qrjmn̺M(UM{amco#Z .p|QpѵeZJ}4HA*Йg6eĉW<,g]nPߔMFT+GȂItO `͔:UZ7SAq;<Ø̟kshhOF*|d]J&лdWZ6k zۘ^⛲1^i?xKBUxMܿgMWOec•U8|uWFvծ@0)m*`"nEUE +mr ׿wZ0@J{GYYjhM0 H[/ۆ"a;B:7gra+_! L<5 *E`(Bg@Ǖ㩦8g%N̐1(UG nt,hMg6|m" ]j4&±&Ƿu0Oa3}{Kݡ|`3 v.hD0} U6Yc)¡ &&&pn;B"Kzk1/G<[_ֱ5?/%ݽyG%6.i?/"/̟9֖NLU~T=ve|NPt!B޲hM,AE޺$r%Chs='퓤K^A ,eyz8ghȯ kAlAWXuP|}PLF/k#,n)3foƵh39ޱ~M$qU6>gewΎt0Ậ@6iOG?5[viy]3F=Ps I(/_,*+ h2 @S=sxtzaKX@!BQs f} ΘR,( \ލv02mr[$G%>'~Y^}qo[\zCdzR'LqUl^ftFc7@~?R13^zD5@'fe6 l0Bv7:X K^y!õ=K  UrhhEb 5 P<"F ׫׮.+@P}+t h5]a-;q]r(#w,* ǿ퍌S hsqE>k+s=(jr6un{G(LiJq'AAeH9lώi\>ɨEDJnwK>6@nBUQ``?^f{ i2!;jmL: }o])ZrO6lJ tD$tl8hg&KQB.$a&N6d^既o_}{ܢ<%R^0[@v/1),رy) NW}(T5:<6ҭ|rJ2%!+Jt0 )"4 \<ܭ`N\hCiu^ޛW!SJwaCgM:wGh= fd#KX!Lѷy #ocMD[Ai*cr (ăFb/9>G'ɉr;]Tt>^:/)({b@ß w~pRoqA )k$L !EIJzoKډ)FVlRE\Q-fey5X1*%J5EʼnFP?+VOHW=Bv /g*"ƒf+ y`2cϦt"8> 'V ΢Z_ȺOo&hp ~f4$ F?B4$r_~ ؈=x 3BJڜYu0""? |,ݐIC!Rj@cF|~IO=4 R\ǘ"9 [ቿqdWSƐ6>O\n%oI~3GZf(na_ܷ08-l;U "GcvJ܏ȿT<Fz9!駰3"l-SdEҘE܉J8\T'FF #p^ lk#S&f^O:{A~>bcW1Ov@q2Sޙ)J9D e4M$_Lbj/v.rLmR{W$j-qo:kLTtC= U'MX6|rii5M, LO:7w`}>pnԨ(zr8|r'fB:2=`c]Zv'iA7yJYR46(|Z@\.`X @S1KT7ԍayrDeij2*>i#~8{IOLBbD8` wu{vh}GHc !_IO;q]H > rUm"컚1m`ɿ-fs|mP[ 7 we $(R/ʠ\av;]cfΤ`4iuYsAb*4=O6?u?+yܝgC vP'JW*uyL % Wی?;98E%qs(hSa3 }h J`ydw-is>i[ſzxuSho8F&J:潉 BYAx/X'F%IYФIA81䤤Y|oV\5碄TAqro ^;Gǡ\#I%VX=8qm8eIsNS38­&܏vHr*:EX- T6}[GDѿ6Wints5 _HM#{(6jOD&+>[gP:/7&.GTG_uaOžo-{ރ|p+w,.6kȧobaؗ'A {7(ǧ O/.JGJTlZ5~wI)"JЬmw怿W L G2E^{$[tnOҍVqXe94J6۵lS(|ݾ¼ĞTB6K@/ɣG|⻠8TS|sIk? @uӧV̠ D]2OCiRr5KWQ"cFĬƢye1gmМ\~ EȻ01k+͒[td*3`h-|tNGuULnLWEn sP5:vLE a/&ڨ\HsnL0$a 4EBXv1M܍T P;6,Nta#-;JX%P}Br~E njMJƝQ |jC @Ts` z]\^q = KƇpEN;!f _8^p8󲝋(ŇRc/cFR`"pr+n4Զ:H{Qx&KՂւֻG=M] d 7)˸l4^Bn%{_Td"URT9ha)'U h0qf&tڡ{kW2j   Ibhv$);]UrtI#~Tga O<IPZYtO Lj_A-*8n{ PL#,dϙI=ġgq7KL+"蒗Mym%[IEgK3w'=̓+'8?kB a eArVBBHg ;e|W&\ut鐫w= |^`GiM*dgO0>mc} (QYT6tqf{ZշDaITxOFRJ~vp|,%y?#q.80xD "VnӪ1 3 m5eؿ"aZk1?O5-N~L?).`-r7y X.Ƣەc+lql@GP()e=,O^;QRPٳB f 9Ҕ4c皅'Tk0/)eȣWU.wTwt ɀ P,2sjQPONʚ~.A`Sr'ءwNUr2-jI49NZ1AZ~tkD P"Ttd?Mfȵ{ )VynQpQ«XRfKUz{%ID1C+wKT4u\Q|֒oeiNFwemr^=; ¾e$A}&4! ;BFW>9c_gM%Q%h4Pd-/*N8mf+Ęe&ꧺf֖ak[RÊ&,|TN(#di݃D-8mg0L1qx~ШxoAA! $̠ǝ^8hKbKϹ?ޙ|hܼ$LJ W-?|B~X@mQ%7q~D㰕,\|JWA(^Pqo2T'Q\GMˑWv ɖt>6HiW(_@*菜W787aY'KG`YHQs>ɝx s_U'򩝵6u]Kp%FYsO %(wJ[މip^| <Vw-Ny^:pDo -#G+E~?6Vo37(ЕƎ7탯I':]Qw,B@'m)8ط9?3m#o{ɉN|VB'c,JD6^HgS?=K)=BZ40">W.ZDMb̪ O X<;/E?Kb}5 bAU9\YEɘb8ݕ(@aUrz[4ױj>>SǛ* 0LVHGSR.ZeE&eQk ؀_o=A.놹| L#Ӯ-⨻l㞧YB^I62P_ŷwӞj 19氦A!Pe/2Y@piӜb$xyKM Q #'1U*-Tv~/xe E Ct$h2<ҡ^MdvzvO20 6q܈W>DUJ,EɲcH'OW+ڽ¦My/x$:o:*)Oxjdli3=>&]g֏ٯ%%:o" ibz*4~3" eZ>̖;>prf;%!Ie<&y4() d'S$,QDdtX$AVçf |T:g roұ4܄?#?EZLT6{4}ʊD Spo~ l4*HUЀXjsj{ng,z]~Q5Nj%=# dk6LcGiy.7"7W'2B{m [sP C8' ;G`#MBF1PRrOEb"'sY%&@*@U qC>ۡfoȀoY;# :cM͓[d E>FB&3QR@f+vy=ODS'XzM/N1 4C{%!ă{m )̋iOVOĝUp'%z2 %ο.B«X!:Tˡ?vM}sHTQgz}A3 nx]-j4Hgs-$Bt˂¬  zU ݊SG۱lzg[Hj;օpt$|.L@z9+';YF BvkȂb3N0/9 n9c%F}0|ѝO0T$߰le–,$i,l\YK(S>Ç8ocf%HmaWX]e'Lv羪XzZ|a6Ԓ-P1q*7qHW1i^լ451rN;x"TKءg,rM}vj^ud4\[Hrw|S$:_/CH ] ;ƲM"K)xwHP]SP8dwAt>sH'["J"zIMD,":~6LfbJl#zi6d{`VB-d*FT+QV0sd׆(7pƧ.zWLKpIT2{$^, ^ҳ؇*hO ^~,fUՍAD("N`.4v?_+QOz;d/O] C`7h i]B B"6KݯV pNK@ND oj1b\z9x^wNv.o94׎ &ə}FkٽbѮ#NSyf!M 2!a?}EV9K=8Q(ŷp(B/Qذc\%ΓC *;=yt񴬗L%:t]U?8ؽܫfID-z?D$^fx #*,f4n{VcPbBK. L/TnxjDd9sk4Br!Q[;W򶐙z Ѧ'`a^"URb+մ S.WpfNҚՎv #m$:H m AJ)xOg{IJ;MUu-{]>" 9-S243ބx%[(`?yţW75kJ.jgM{ I%GLtګf,~W PH[@}ӱ4#L|0h, yEM"klmA5D/Du/J Qd v#~'/bl(~QyLMhdldj8ޛf`žZݰvζ95?82{9XTD'ŸiHm宧$'sEYYӑ\dըeF.g׌OrZF}fz] YzCЋ`BSi$^>99[?{+h}}ıсG*=J|]pzSɿ(N?8N(QΜ 39-`n@󄥀ݸ8 ma|{S@4Q]k$wv]5إـH2W'nvT2MMIohcyU>p'_͙KЊ: 3ιzy:Uvbeil\5݀1onu:%{ָE+RqK;?'c7qI,QY>0n!Z=4 f %q:}U@2П HX?D7Ӓ EnM_kM$AA|oUyB@h?r37_\7NNͭ~2Iˤtc0)=^YI:+(=𞢜 VQ,` xk޾hRӌ0NXyU {LC/;kQ2KY0}~hSw1F̧ dzIfK^wcuUYخ_JOYJ?)Fy(߮_M3o>`"SŽX\7@l3nII狩hxJeN&yeGpX Y9 Gy M#tdW'XKLpqLY5b,γpSc''|cpP$NBߤ8A-Nc[6^}gJ-| N+7B6<ߤEFtO3DbD U]ޮ:9?A` IY׋ n<-# Ts.DwEYh+Xbv& L^D]ЎM?`B%шy|;Bvmυ]{zUg^bO8Mz0TlPR,AC}ÌŞLR^$1ys],&ɞ,3)Pec#Vx祟swR"Ҩ_)rIIjWD97e$:E\ ԖQ9ѳ0LB;]2XWeGH 2Ь- <6+6%wj*1.']-#RFxŝr}}05F&цPu ۡFTnx4r@./ N!:brk#>w|EߦYt}4hL8}9_[D.a5 h:L!2_+c $P|:+[l4Znü+od8 }yYs~,\#!K&hٜ*z83 į9EΥ^jL1똱J(.Kȧ^@ך>)Zb^x]J#W袯/;5OGc@#Ҫ#R $U|x@|$ y=?襃][%1}aܓ6T<}^F$VrasVJ|;]cOx5eq:fi n)htP)'RR/gk+^4e=Sds6,/bK唚A{2v\qڮӧ+E+:B.i%3:!9_vSٷBye*t7&/r \McBT1Q" nG˽x*A3qMYl bسHR~@1Ĥx>QAϭ&ߵwlH Ϭ6!/rH|5ڟ%op k䤉xeLȄ ymBy;W*xCpk$͖?UއՕVqmyz6R]Bq%^UY!)]V #Ԍ>ӗ1#4J\Nj1z[R"oG"dBW -s`)`~7¾}vgo^û7k=.{gZQc+]XvHq)ຶJfX k6#~ukBy`PfQE5[ҊOhy](L;np _l~q X)j`f0+$ x?^@8Opcif8 ^rXg])ҏP90KDiuֺ8T>0Z҈;_w5b}-0u| O\\[g:hWq.fkaM Su&Qc4*]-v0ϯ^IQPYeu1p>gh6'̃N5w@`O~2ۋ%·eɢۄDue_! 5P3ny4sHHEWev` @ ,Ž/^FoT^ bvL;JsW ZMB'Ԩ;$҅a9/~_P9`.Wr:'TRY;O-&s.@T%KA.+lzht7FѪ-sȞ)3ƞ=U욒k +9hW^t6B*@LxG( ۲Q5tLdelɸ=NE8KgVo݈i Zx)>eq= G[%0f㟄 Q[z U2aZv-2hثB""&]t;wu'xzʻ8T ]LF@(fvta9Y),MFr+EQe,H<7iX>2>ߡb! t:[xUGݘ\^~_-8 (Oh~n]2uAԒf\Ff}gxҐ/ίS/ڎd9^=MkqkkwM!Xtϴhm< !SWT:f"^,dKvx6*tY!O,KDީujٛxv쎮*>wV)*:P:گ$C)gDkj~ %f11;]72yHLu)nqv_ ̯fKLq*4^#(F=JWVQQA*߬|Фhnjs0% Vxs෮FK%Zi8!_?q?1L0hy)CRC ZZSn('>ڦi (U\D\.VS,6W:^ ̟nL?L:t8~\;M3mtbHl Od$Y8&j3[ҥ[N?FrPNCo7]]nǬ/k%`'wݑ"e{*+\2BB8(*%>ϵݖa{0<D6@v5luhcRY ;KkCS3S>$Xp%|N|]=Wj8cߚu4;kcƧ9T:4#M,RWSc?1<؊I^t]QNvJ= ɐjmoXӧZ5H> &d6.^+B=rNr3}]5zF4 C$T%oZFLo͞K2¿Bą25| .^F_yC^s8zրiYyʋW"8c~!#a+VD; `H'M~}Xc9 \0?s/ 0Z_ }&i/rKruPd+u2Ǣb:-\0Zؑc=4Eƻi*TtUtG_L#xM!7`@K > ϏßPZ*%3L'K ^=k4T38c]~e3y~cF#ܔ pIƝ r~]Q1RA "Z"]?"@tIYe7Q\;xɜ[1O ڜPZFD,X'`,(DrIBVeuku ÍpHQ?,\/GA4 EDqlIb)(HD!j У-%A"oh2@|hR~>K&~xO.ؕI8jolehAd^l}q%*Q*z򶵶ɹĈ2}tנ;$ zzfD p~y; \72;hFSƙlPLuGKMB72mգ&Z/ht&T\(JK\_D뷤#;+S="@YZhł%@ ea[lg2RV %8>~c_=6Q̃56~(-%=Et-cޠ4$e{emf=2z "5 tL}&Tł9H\P/8H#{A_v6%e$qr[G''eaMRˆu{w 4L %(V?Kc s>Ԑ;H_iH\!(w3_۹#D  Ԋ\(cq/()%X:N=ٱ\2wp2 l8)ZԞ&Jd܎ܗfwԓku#y|bNWV%ysrR0*_դV}'ȾH7!fgc2/XmRRuT/3lrN OXTovAv N 3RsVg+ZO!S/26R=6p̕^}LyXک T@IMJVٳFA%Ub;X=QxrJdO.ecHtb˝S>/v@a%OVZ}[H]˰얚+-3@!k ;x@,H Nxs\xvf(hk t,H|%L{;څKz҆"tp%tG~oAo/?m'JˉQvVƄe sp䥴qw0ma@É=qIVl}@,cdHUۈnlvzwo_PO&EnA 6!Ȝcx|Cw֐ł7 .X$MPiry=A8ӫYORdMlO#u6Z`8 &la%Ӳus81ŸKJ[?j=Iuko D~]X.#Jظʏ{bn֩!8D%5bd7aw)W!~ܠ,ZW>sƽ>H$h$͟{4Օ3Q~*+ŨQh,~ + !GP 9pεu>*tXyAFOWξby.mϏR_LOĶv]CtA`U Efr1#6.!&"ip@+]TSGX$&+٧ *ط/wqN=R^3l $cF*iQ`Ѫ?R􃣏 cɚ/:Ah%w*J4{H/ܱsn7=?*J̢C,HTfdH},6{KiXoMdk498H(& \ # oA[^:+7wh" !@(a|"^ Di} )].8=;DcU^n봅  UF}HKJC۞\t$ 1S=o-%4|9@{\;OR~Gۨ>Q& Mo)4ϒ\oa;㔌qh4˵- ߫Qbfw$PIÌ8 {o9VYŔ($I &xz.5le5#l7E~(Ed ]pKp?wWȄ5'݊",4}je$Od\?Ғ,(E:g *%I}&(K䏿d@ǜF\OPw.:]=X֤Դ x6+*8K+ (kn>|xhcʞfaki|ʗB/DU/l4bQ|&{8Q FsgptYa ӭqk+)2@/^6@LGShA,\(z[g\^!nyJRө{r9Qɴh<|a@q| rbzɩux~uS?p˺>ؒ*wRW(,V^/n,f1xi? Pb4vk6вϫ ٵplܴtD;sO w t*.9R >kM,0[05F bkRYFzNM`ÊekPh~E+ _[(/^lTv oڤ (q r{;wn<^] R[A?rZV0_[bt<$[('`T縇;de.macM*Hj4 ZR0D2>.Sbi bf75B7hryWz,424C *h7eH~c&?ZbFi8{mNM6+67 i<U̫ݻGM"/w؀ h[V›bNjO~k=Jᄠ;B&sT397Y&냉Ź˃` HiV=_xjEZsx yQII)oV]y"jO9qj/eLZ ԖX.ؽoץ:fP҃8_b{ T}sL( Cm &{ '~owL6|;Tw/!qEHA`wCE=Ǣʣv܂ymԖp?t~)Ulns|g0_a@+=H\}Kɀp+-Oe&K!VmJՑn5R72[ ޅ6d}1h 0=&gQ3ǹN6oWTh.S`W&^t$Dӽ *ͽ7yʹG6hF IxAu\=bZOgz gC^n_0D__Ied't^]=O1TI\f(Oh>86wvŠl&wX"aDD|l#~5 w 4B& Ϝv:ݑud%I9'#%MCA]׵{nlamD '4љ ^J&JW_-e` 8 pk gt ϝ"[ ,e~hN5τ>Gu}.V"EuxlVvA=@9́-'`vA'2(0 !Y_WI-ȥD%E @-b!pQR7Sd5I(VCXš rwK.K;m+|>=:fx{BӛoQ'I,CU;ywIG]JiRUD:AD0w͡\0Uv'yG/rPg'sN\;~Owh!`e#2K ;֥Am^}'TbBU0&!B\o@ܱ PZBuBƴ],.} VVz)Z,4OР(,i]RfYu)YwԺ[Ϧnf|c,q8BYgwxGQuQ(K֨"&]DR4'~& tVWHCLz>6 D> )XRޅ?/.\=@ʛ)9rkbxYVAfc))Gl.">ٺ5 4[J#qBmF2 ƍ^8o|;@f4 ^k䬟ɞǰ\Tm c;/'Q ܈4X CH\Mki?$ր%.L1 c_v :P|asPKRCYy_Jիe30>_[_` rK\zzqX/wWڞ[W1-yi+Ļ`=(86팇V4rB Uc1ZOImkճor5}[N} .ts6,-̦r={$'ܰ ")K̮prx'& mvЩ8Lюd/ VOdԞ`8_ >ҍbrC6$0lG G0˨! "9~*aB=/D!ɏ{/E&r]pbZVCک/""~UъC'; \'"ᘠU;ʫCl2>=nKK̼u9F7s}N8S!<k>rD5m-Rv[$$Z7]\[;dl0*%H w3)XZHQ ,%DZ]fHKkAg5 6 Ou, wYm245;4y߰U7@u. ]'*ay9ֈ`|DgZ/͠, p WT!UZ<*k`\/v S%;l`!B"{d@P\[CQHR~?__ hwt+heimB(qϘ-I..3ԣ c`33df1 <덍 %s> /S,Ħ ݚYܚ+HCrsL(UZ{~Tvm Tad\]f=% }yibWGw%K/7\frC fejz4netxL:ns^J6KYY2ܳȨ1B$lKf;4s>]Kfuϟ I &0L/Izi cAxu)e֖QG˃v"sK,Ma^S4&?f9qo/?9J8%Mm^:_C7ڍ ,6>•(j(.YX/ɛR7ùrLi}Av*0Gho}89r$F 1F=G{!d حanlHa+prPjt+\W\H&xL+HH-R~$•7)%D r.ntε b T!_ÜC7Gk'&3,!fh4hԾmr@ GL ͈6Vo묑-"u[VA,g˳GfHp"BԤX9ૠ٫;pDT/izϔ@QUӱ89"ez/dytg éFwTx3#id #&=9k<נ`D$deB6>,i.a C\*i%w n\hva꒹)}S^[ΠdrNK~3^FCqJ}͔I~]?bFM{M5j'SLJ ^=j)TKY^ )L2jp˘d8 0~2b,+yI+%aL=1]G׫ T{sA9!Cž>@V; rk-L!U.1DN}od﷖st짉g#ќ:~(."wDxd5}ITYSV@\1YZ<8ef,K}cG7kf!9#hgI7BԚE-+L]TOLW{#&EK+=Q(x%b1-aGK*Ѷu"Qd@&Aj2;\*Ӄ}*2wCIͨ*snx߉ =^.#K*i}JjT w\NɛxB'3'K\4mS7{>݆c(52 /cZn𽼀 I 3 vlAG4JS뉑mf2>0 E 挬I:1?Ҙ")h6D'#u" 2EN(Oe c=׫'s?F]KhٔT(A4G_X#*Uko_AqSI?κU;aQF~ȩQQ`D9f&wOPDڙJjn?*cà[W L,B@pҝ^da}'V(ѾޖE~U`B? T:Ij2x㸳Bq|ʆ+oGN>־E0*S4- "Vyw?y$H+콚*̔1Jf݄j?ηl;HȊg,3/ސqY-{.}, JM_MaRAO$&|J7!-"w27!Z0Ȣt+oR0}!iew/JsBR.:Si:2R`N  -w}y{QĪTxx+D8 uKΔSyNGoaB-`v,E]t[Z'RDD:/53&fT}}[_lX݀|b]/bfC mxb~[?A I;r+s,H}4x+ϵ{bl?DY{(@>k6&k!V|ZM71:D~$<*IƼx;\}׹ǫ 0(d+͐w#.LP;H f%UѪc!#dZB C(nS›2; Z]"7 WʇȈ~$n%&&^cHGF3bX!~km|b!e.[Fkn:d'+.O_jVc2䖻HF*kmN`[+znzEGm ~  WX g[_V˨0@މ9T n ҶJmpM\$dZZ@|Oދ]2}z4Ey^/< ,etne&}J+fW 1P9`L=k_dʹwҁI[UҡA Srk[KR}^'>FQmg*NK% iN}#.J\u^e0>^,.PqWtu8'ΙM)G4fꎯOeݍR{Zb{L)[$a'X)OwNMV+䨷?8@ŕ!ÕsV^Dxq ]7T:~<?cpLniMWVˊ>o$c̱TjM#6x^Ɗ yCX%AΏ~Џ.3tB~ }3 wYw y`ϔG"fSmy4j|S"xocQFx=Dm84C+"pcWؗr$<T<ܗ}ٹ ZiϛvԊW^ q9g> ly%|F?XEY7͎_y@Gt2#mw> 6|;-69U;m`-]ףbQAY`iF96U*`=j/Om=w}A{pvG}ň "E svCJF qŮUk/ ,INUT1V洩#l학08Q ? #z۫m?QÂ+;e"n [e_[rq` ];5l\7οUvQԑdiնDL};xs3$/=6`r(N45*Xg]R ST3:4Xh~z;w^A;#@3oLs h4cjتVlbH.bNM\O®vC2ȗ,o F`%y^.gdTï= FҜ+40OTYwuR-bZ߫6Xsq8/Ӑa0::XB0׻wÉ| $/3o"qj4$#\8TnuZNr,~C $ ] $b__RYw+zΖX3Ted.TmOq̎5Nt `ү9 "2 2ZDvly@W-t+m3Qt1y"}8~IGcLc#e >o~'<mCo6N5<ײ X:-]$tZ#&SE8̲1ӎDod{wdwRaH| ZB&۝ܮ hNbl%a!eR-8Qoֵ<e5tYB{)Q:i׏[<'w~ 0 gEqw9u Qr< M`o&8s/UY?ތ9OepHN._|)1w1S(a,&܋W'" ր0ڊneAg{c5GIHaNi_ȀsKqp¹Rk~}DX[oy=_jQo9ew|֖]}ie2 47/㳳lG=C4BDo>(os_ϚCkic fs8~N+֫ y-#]\B?_}V0|WΖ*l1G16b Krt*4Fv0I(QFe!}x|HDQzXHOIn⧵^bv%v7d$Z߭0KX --4Y3:GΎCsXO8t@\ʈלo!7Lښ.9Ţ^v<4̨u(gN",%MrK u5H[fPt!.pX\yKFvTjnRϋa/WK-商W.?([w-d^J;?(_Q Йp5%pqMJXl:u; }gm*AA'nic2-fv$FiB{ޙw%ur,p ӷ+yܰg$$ ێМ:SQvvM<USK16GH 3GI5ױbΌqKKˣ+ KjмE+ݻ?.[Ι{RwSA%̣B?#-gT0sJ+`udL~4R>0"&̈́u!|T>"?ݡ/%Vˉ$fU,SP3*SP& bycrُ^!7y@즖qHI&ៗiv$E١LКۊ78u-x 6'k(2σ (5]jl?Ou9Bn&rhr;ssG/2ZdQmkCGcv0 jٸks)Ug%,V%aonDx+ҝ6EXBk4 CUI+2GG>_Z#qiO|>Jq5]:Rm^ySjL44PFV-LY^0 :cbsW8fG=Ka$V, 1ux!)9x>ܕV\r>*d6d]'IzM6~%p&7.fO *·8Ϥ۞i>n0RZ.ʪJZY܍U\)Ѿ'4tXZ:\[ItVܭ?d;*HrIi& mBg& "8L_TI]3NБ!vO8yNťDpYE}?Ṱ'SbϤώ.Eq>׆ em)C\I *xөn {_1QXM*E7{ҐiJMfjm֮,y$$AYq,|q-`ě5rtiN)Eg_pϔ[]cBt~gtjRz6<0|u[޴\K<}QAipfJ$gjDkΦYr Jc:%6*kݫM"|ĸJG,g!m66~R'g##őg0nbKITiPlxD 뻱 Y7IT]:S" Ǚhʦ̂SC&NcdpEau@dl~G GZ-ؠD !XX­;t,&~+cTU4v g`i`D2+Ҳ3Nڮڗ6Ũyh*IDtU\ąVJYg4CIP81CyCՎb*2f-HLXẔY$J4p?"j BR❖RF֌&q`V9jdowzGeDJD|KFz͠)؟*VWwYxT8cgIv,U/\0[)gs{5Tj۠,W=IqbA5!H[1^.# I2E8/;aj5mHg$/bK\T1i,-]W^PFiŠ5.',`Mo^TG4#Ȩi v+Ƞ\Vb;rDiq9J䁘ܵ4%>)ߋ8)t]N m[9JHEٟ mZ0p1&Ծݲ^(h uJ`-Nu[Ҁr$9$yWi> 9%flZ hPv˼Gc#]%"hx|.jh+ &H"Bu`>X+d'KGÞX7#-O[%=4] #*ԮcT 9`+,]_?[9oCw}-9eV?=ꍎcjΕ>vY-N,OZ9EcX,G VDDp¥ ,7 FC1so`QgFE=YLCzwQҮ$Smod$6<"~8ocW0 t1 _.83lݥf%u`OOض@zJ{@NzJpn.rמ+~HRɃ " lT-kL f/(nnl?ʜT<" 0\`^\]˚ŬǔM%n-P%/2k3ʏӻZ;|w5ʊ9Y&+A2o0JhߞtSm#DeVtό[u r `cUJʹ\Z.jF@,y(MҺհ8;axMvR_Z-=ݩK܇VVSE; R 'QDMjghM{8am/y8.w>捏Bhv!]ӂgՠA > ) .0pQ:b_ = }s:?C5:\_T^E nAlp)1y՚аW7*_Krfg'I;C_"nDa>#w3YQ7,)@#}}:>C af 11k.x6yG[1@6nr/E}O sQ{ٟE8YEOAN|5CIQLc12oE߷}<;_BMNd3Es+1pM֥ե12i?pI βV(-ssE>jD^#^ )KtK%{VER})ZB#)Qsn9f8$U#Z 8lsS\2)p^Zg*ڡҹw &€[l_KUtT Cw*Ϊ6 yW,wMίud#F1\B A‡n#3uLH*-߫urD`|vMT8\D@)% .=& hZ:i~GWV$SXc1Rs'd_gϋY]}ruH𘳏Y%>"BL=2oPZA4w<Ȁah9h-=k~M*ҧ+$i;zw:طw5' ڹJjPk~x06zFh)QRm52c&w+Oo}L N\VQu)#0,Z[r]痩=RujL/ll*w[L8WR.MEX:j{z&_}h @o KBFuQhI8p3הlz C`E`R!8f]|j 4w<P f ,3vV}D,U0`-P)݋K Al@>E<_UQ:zZ^O\iZAⒷmJ0ځ!i8CdPr/G$ < 8sˆt_'c:YIOG:ik\p>RVY #G%G6[4Rd e*Ҋwpƣbr Ie,ƣ\p匡(70s;pPT6W=%Zj#Jm~&,/\]*Uh/ ]2԰y X=ƅW@Ÿ'$UQ4 LA*eFS\@]L{Apѧ]#M`ІY3T!3,##dD/P4!! -$.]f8ܛm)n#p zLl5 bУy3mnV|Րa zYy5Pf4=>qMV:&+xEYWpP`_y-#yHH% t t2ImB2-i:">&rT%s Ѹ3*. RNv1*U-–?g3<̝ m54Nl0I@J=s BЊ֨ WS "H/JƾyQn.A>ȐD9WcX֙?fVK,w}/`H?wo?.[ǟma3&ytWr#Ҙ_ք%α PkP%QU* 3c b sU5qȰ[FQ3O,zb &DM0`Fsш`HJy4A4:p۫s5OLQB46z,mZBMZPkV +ahjd>!NJMݮ&/f2D:ʥ{2OT~,s3;[f;nO`WְM* Y&pQBϼctsYF\&MC) #8С5˓ȧ4Xb|G=iUe ڊ/1L=/%_nâ7HLBvMiғ$qW'j:C`5gHH٩$RĂ2R% zJsF"=&-%T<{F\O!xӒEh|oW󸣉^OߑI J HsX0QUAn)o]gFVq a9cU't,%N VGxT+ܙo,袨BWgzͩdOkNM ;,)-IYP_S5ۘy t;+/?5QqUzi \2SkC>3op 4Wg8lˮV함: ^Fڛ/ݨjX鈐Әy'Ih )ڲ v'Hc ?h3[C% 冺8WKc=*6šɆJ"qz߈ +Q/a&r킧͠ 'Z4jan -4!r˴^kpzONL zixLr_W%io4$MRU$e ce #t〫X~yxN :6}D: P'SU>ʣarKK2*6Vt~;WegNefPy9)aHD\ >ܐOg<8̈i5[sȜtSaЦvMME[d`Цi4N,-\eSy~f>JSy_lܽ#90>k6? M}̤?ƣ=WDh ףDY*H dYfQ_fE`ESbO/ Z:fq\s̷ ^,J? a8aG}Ez^gWmc-+hT$oȔ|ӴS<۝H_DI[Bq^nWRsG=7H?6b#4_4R;>t0w CeU֘Q1ң[ &ؾDL;_f=W^ycy.6c:kWbhmX0>Rꄓ>2Kuq䋓`-C |ݬn|E6\;YCٱho.أ.XFR|9A1FpV ]Ҙ䓉$TAJ ێ1T~nq.!:]h,Sшۓ(\&E !.W-wC A3րLB7ځelﺑ B[шk`= c1d";~$3xQJ]a=fN!}._2b{ *ftt^ Bgky˭(ke2:eܛf׿zWbu/Tܡr(m.SmǶ4Myjr4򢤠zZG>nxiXshP$yWqe-igPKX`k@u$Tb8u%J@espʧ9}" ǸĭfbpNLĮj#(5l;OӺ#:1ZZUAd'yp׀ (m5 ys}ٞLpF - H'|$Ø+ŭ s<ͼX؛;wI'oH ҋ!""dEf]Ӿ "X[lTe-1n޳d: !Oly6qJݩY-M-+auotW6}Foɟ*N7Xi;TIǃ.jF^Fɹ`@ŌOI_\GDO;C߆|kMLd5P,O:2<.տl FW:F' ))P{18ncL(ȕ-'w[J**mV?l #AXI@ĨouBd%m@b:ޱg1h%;8Ar=yJbd"k]>*oaϾ4 _ 1Y4-q-{[5^i[H ; ._}6;/^L-v=λV9w2['a^ob%J9?.ljMͶ{ I0yS Z+ D]#Z<ʚdC$c2KՏ$=L, Cr W/aם}.HӬ0UG=T!H}C񁷻lc'L^PA IF,߸݅8H2ܯkKR NC)&VՎƼX.I8|%}qf,~L%ȭ?ݙd0g r8'Kԯ~}]rwX#eBpU3iHdIOK`>mVEI6 ~*zZZ}s2_2p%Kw(7FLg= "G3"zUv;+ZexDsZaX KqŠ8 N *0XXi;>D^(5.dⰥ/ ZC 25d7 FYY-l/q"߭-o֖zP ?k6r_W@r70R䋫./imSBTDZѺ| ^F ۇ*”@]=Xڹ;lѵ iEjvq@GQ|WvA,8<^~&q*M[*joMb9a@.?iqAB>끶Rh/jRF 7} }|AXWeWk+竚,_(N :sS/}*J?_IJߔo|WN0RʩJH#sU@/EWOӅL]oiF :Uu G憡ˈyWWsגe> $}a_5L|J4C261d69ScDy2Ј`Zt".|0Y'Dþ~ 0Tq*^{fAor#ا(M е لi‚gjf;Uh9ޚE k,R5c%r KYGd;ufW_Ƨ Թ3g$k 헴]/]1\YS`Ը%~cV>@5RJ{ٟEwBݺ>5c`G6{uMtX\>`SS侨X1!0T.̓4:07O>l!s;L?i/CĘPK3 q'>Gd\JWYp+zB:q#ی[0Fh; z1 f1V'ZxccQ~WsQTt/ЂrjT 7&l8> r. _֭5ŧ! ֬LV\NGV*Z^L!x3'wq$ZޝV|9k;fw(Z˜l}%bx#] )ٲb:]g5JjTy.}gJ?~h$l⹁*VagoR3!ȟ6._5y$(>-sx43T̅vã`N[dE5xs5'ڰ&S?TK؝bc=׸Ŝ*޺ч0 ~J&%2Oހn"6B_HLb(}41xd(pr.Uru+ۢݽM1 <)DCu'#Fa8Rbp!;͈Q?9Sh~Nz+ MtR|3tݯ0UX8[&Dvr2ݤr딅L ENjQ#92 I# ю%3N~GR+,rxT>؛@3ðd1Yk~[A/3$uI5[_wu 3懈WϜ抽P)7D7,0~O͏yp뤰W7w B4qFR79IYRx%ɲ8I;oshݬL7i u[8B]|Img-@vva >P/ ߯@-?1WUDOϦSd5lj{5JLvl"cq468oeEx„q3Y'׏%ԕ帜5?4 d֒ʌfi[}|k PJh% Ʌ|capm '(tY٩#ISwo &ז_LKbt̀l,vD޿X؅΋D(~yȸ#V#eLk*F+-64`䏸v1Tҋޚ.E@CxrN3؇JQ9k-2۩h'pw64lZ 6mr6ER4jB=)"W}iyFeߑr(%j1f 6ǐp/]?ԘnJƲ~GN+2Lg%q_K't3HWq Ka,r|6/+$Q2uqrٳJr*K{ns_eH&Kz. ᇤewK*ZgP"HM)i y#%B&`<zTB!n"\> Z!Dַ5}˃TJ)Fem^ דY_)lCpEVn5_{(v)I$ba =Jo} qiXEf T/QVPǣS,g"A0N4>&k2%5[ۭ-|ɥs$BpjQ5ȟ$1@tg rRGP@qi נV:tNye0<,q-E[lA`pfa+`7 :CӮ!?&'%ğ&PȞwzix@x m?LT Yo{ 1$NxĤX(GѠv0ݿh_a_z Ik!/GHypO4T: #˥Br&O]INqo改KG}A 1L,%_\NJx&#|o4#0qywű{@jl1}E(0 A_ /xj"Í(o+cLJZk-X?p Tpu@WĝPb ~.K8s*xEi_d gБmV32&DB@&ݏ" Ans@>ܦrs.XPIt2~40f}JL8] 4iߚ0;vU<V<;#MEo+u$a@(r0-Ш|}-$۾8 5 @,WTV _k D]s%V@O…b>MڶEA‘z¦2k Nt}nC@Mhf77haN bAʓQX`f9tCnmn'&| >bu7hrVV~8"C׬s!--rn&WN$c]I^tyӞؗYU&PwAs`˃ Nxo] (Je^"=gmǓp^0F}bfW+:'J? '[0|MMw+/ފN-2L-lʲ'vɘl˚먷x9yVg)3=ozyӵZQ:,"4Flm2fob{F$P.smu=,SlM<AsZNrBmV3yT0|Y`n qdrkW[4 GՒgJm>ۭ[^;CS#Ʒttƥ5('j~[C 7S#p຺c4zVZH5%IXaȷ~d1OzP3i'Ґg_p8wr|褩^dRioΑZq5 J0E7Ɨ$\Ul9Y;V}I69apu~n6OfJ)X33wdq|E kpz!(z"Q`}>Ib 1K|}z#_ Rv,Iz^&1O[90p׳v,[R/ߩQ9ŁP¿ƿ|Zc_P -^o\no|W\T/=U K IF`Fx Tގm}w?a<0 }7D 32nH"horT"yN0dZ9:H 7}IF@&'wװ)VqZI$1JT {.'[Dv5{sv5{LE`"EO߬z7 Ԗ_Z¯k QEGpYfr=Jߞ(_A=X-̞BGg/qTCOЀhEQ(u>wd*F>ް|(\gp &)N QOvIi@|}F,~Xt9زa;Kd1b 1$)jLKq4Yh*df(*jXwK`0[`ܯNtFHuhotz-ugayWK"@[pk+O3[U6 aн%'5a:/Xl,$;>[0PI:Ƀ벉o +yvJ`R km}yAK%Yw0 /,j)R!\*M<y.KWK2Q(‡4Ÿج}E&mס Gq5 z\;f{Y$4VY#$ vci ^~rG}?P`]ڃΐ~` 0 שҊ638FME:޵O;q/{|h/+:>ӪP.Fc'Cz﷮LN H|~)D՝DnQpT-^1~`.EG&*h5wG@UVo]$NЅveC})DEtz(&&WPٍ"*.^b0 xjnFmSeDC$@Ejތgx׹a+i|n+盤#fyc6ÿeyNhX،4t*u។E*=s͡,NɁA[r*9@QNLznx1Ї(y@-S4#GO|gG0"4Z >ķ$w~5 (֫Kb9Gqhe`;Aa}!O¥](7;=nG*,~~߭2$Gy 41 ,Y2şA`=W8p2= hNI5xHݣ۠-o]eK1@|u',FB7657tq0"F-65 %tyKݎ#{9rjaӦ@>6ME)gC6wIL՟ ]miZR2fA`Zaˢ ȟ̩^ZI V4'~DPHí㿕|<Á M3z;Q0Nc5$ %bA}x'>ڸta3Nyo4LJUG-[ةO_ʎ|-$_"9]#j)Rwyeb%hXV`cvC>Ι[GiJCv\$.X%m?Tdt!P OZ@'k_1<<2Ғ'hWpmQNuu ;۳ytD5$ŭҟ>hk gy~>N{C3I4$Re[%Re1?;@b<y%Է Ë`]C) Ar8inI$ A<*2<Xd.BwAi8R~O rq =l$CnLM1=ݣd@ɒU-VdMyR8]o ?\3)X[eߢ GrCvq )Կ+53"] `MСkQqԡtlXA $y&p\c)vП)AbrNJ%~P~e"N<( e3E@u݋-R%ȰXTʭ1 U6GMږߗZUB:xK+[E8O'g('$۾LKᣯ,{VȓJlMDG%8/#< a~ס䅰AN 9;'mzRЏ{lpmLiaU7u^ff):r!֜mCDaTˮc5鲵[Nt:ގ"  Xv4-rp]5h+ST2O.pۀbPuѢcJ, ༎$>&{@޿?) Tc ~8H"Ld\0P3"C˯<+Y%fwT,Z1*2.O~gBF"e#\Ke<.!prQXax~zu}w) \}-[߰nsQp7s q@kl%#Ϻǖg)>x lQ,Rͺ"8ui Y:18`Im6۱`/)W3yRJ Me?mbSܸy~PCZZ5(s7z<_9At ZKi+u%%pCH an"毠_=/zʮmOoRh ;kN:vzf&S}H*:B[02U(T4#) Zq{({;" p )RPT7:س~+GDL:C3s-~Bc!\X+ucYE IDrSn,Y%OnZ!Hqrb-G`B>|ʧ8M0VOi32l4B }G4 < 6r``'f͙'_3qo(!<[ $t`?|FiЮ\j0֔ !Q&xMV`Lht측1]*_W'|+Ruڣ19˹`Jƃߐr.| eB|Xa\dR, wpI>fH{9>hblxS3o/."g&@CxEvW ‹q:ZU{:\3ioqVxROeL'5_$A"O[ u^`8<_(>DOE5dD; n%W"vNz?ۯp̞Ϡ =ك %IΙ`aJn,9?lűG+*9"l55iɩꀨ. Qʼ97mId@aG|!U[9%43ZVv"0BwkGdr:"RɰB*Ʀn%DUL%n=@M7Uɲp?@B!̡8=}/JbDs6ļy(| }, BxͼˀtjV 5 Z;`-ǐc/WO aIf?e7Ll_ݞ?:2SSèo6ljy(V z}ZS-JpyU+ <๞?dY>,\dq ;s>Nh _O5@ss ơbDew LݐʵEo1cX \g#Z"MIF`҆GCzsZ#6%|AY #dcjB/.CILPdfՐhhl9W숐=+ɽ^<za_V{y?/zh.Ծ֏rpt1b978Ӊq9:u/\FmYc&\j3I41%m$)6XuZm]ˣT~FSj${$$Lh+3i-$dzXyvD T|ʛWynY65Og CკF蹾WY:tlIE:i^Mo >^ds:~JI _Vi Fd"' =NbRg{)f%҅^ 2e+dIЁ\6urV[ihd,z ؓծBnvkksݙ&B`7*7&0/eEĊ\G- 2/˙nx1_ձ@W*P\p#S fP"vWZިsOmdzPaz4R/(8bz?tγ^*/ʉ՛jS 2|~) #%l59ڋf4O {M1LTQ?¾jO3 \AY26GƑp9*|~N ֕)eIFɱ4~+nv:L*e /6߆lxY8c[~ڰ4فɻ ]X(XRMsvø<$@e(TPI#0^VǕ"[rSO3jq)BZԏj yٻДVg`cRX'[N3% zQ0OrXe,~x&H ZG3{+.ԋZCP[Lt1o(jGA͑jyF;塞U7nkivdɿkQ69}T{%4c&=9\)-HrcǓiXU͝G9&xz<.ф ;X1Aê8zUӽP1ZPUkz0Bqe>jʜS{)>xB!߰Љ W GT#Sw?+ἔǽ;‚h6&fN)ϤԺh<=.۰>|YcܓH,*zTElWR`[ieGӬ%rfz%"Z5rXZiq՝{>CZ~{ "x9,~QU@*&t '-J`v?*G )R,}HD F902|hTgA\MLQ^#`mɕU3SxHW|+tG$J~l0_Mkԝw9ٗt^N"튀+&*u6zx]oлu˞W޵Eoh\0Q1c47Ѩ.!-jc_G)eTIG vɳӿ2dUe$GgǼ Ӭ_uh5rMŸ僛]N26ヷb6>ꊝcdaBMf }d$\))Gcuc|d2b놼,xSYF~6-Et{]ʷVkquI.c[(y-A[g9u5G1H{/Ѵ"nKgOB br :/s2Zr6 6*!|1*FeZcpH/ݙo UĀ<'KǠɉF/kFKYk؛ ўo0] +27/Z=;"RB>ja&az9fG8>,ޑ4!˒w &TrXwrmtgX NV5_8Y_n"%ɅgxeBY&Q{c z>.Í;еRFG^vELJ@;'Ճ 2G$p]ctETȷg!~ڷw}1+A-|8wZ4)֑>f7no@ls?Uc6eAx0*.?gK/HH7%N<{憠SŲguXR}Sis M;NUJQ@))maZWA/;m紂ʢj}g9rQn0*/҅*W/JCZvx+ed2hTp1S݃bL(+h[ϱN ,? ^XAoʦP뺜tQb [UiJYWyv3сxozjnM X0.6Fr"#SR:@$ }H36;umIԁaȏ`+jѷnh7Eg 5Is o?>6?db%V19\!.#}7KC _t8hj¤H<QN.\y;C eG٭H-sO< _.tBLh6L(:[`!yB{ gYћz=7rPKkmh.T9|VG%F"`wBIh*xA'c7x#f .#uhurYNlEDX/%ܘg7 ۗ93;#gm_4k"S%ŜOƩq$/̈́E R .p~X7X رӈ'G^Vaa"S3 T|p[P KpB5rGFd,n(]>*[Beo+%ϟ(H ZKDn&CZfƞ̏4A,N D]x 9>+G&ٵhJŚ|87EqGρ6(pl.Xk(P\ 7Fu)(1tݟ,]D-keC@Ma8yr38~3ZhFͰ@T3"$NJaB-0]v/YiUPNZ߅Lm؜`5BuhQii]#(r.\,SP+Snq A,{CE U{ @g2S`L`r>y&woyKozۉ`ӵ'RbsY8h!-n+6L:hQ`aw]vcmOJUR=1S|^AM3 %VrCV:vkj.72l#W1O3U3-"dfYg.{!mun`ȉub/='t#jq,qM?BYH c + Jr `**R E吝ѽ!V59|T'xT߹LhIc'@F04=;hb=ͻiL杸U-l$Y*};oW$TGA07)rOLR[AW[.xrD LTP0Za8ě0 toIi'x(ÞԘ~ #NWSSjz{ 'RM}X x$XkV+O6Aѯ8{1OqyF69׫ +\U}DD}1m;y-[f9遲lئ_Cm/P "ˆCNhyrZ4>[,UPK x-Db;%;9IM2z25>G%Et~j=@Z+eJul'*% ۱sWʹQ֦(mD~Qԉ;;X"}mFv.~ @N&nFFB޸lyߧ3% ΁bAGlY3}6_ t;!A㌷iHUy@(s%c\@rmٚ<*7CF>V>_Naޮ^4*L9h9?έhj[9uԆ/&roKȀ+m @ ٺ:hcg?H A!"d> %2.)(@r6\5 CMFBhK۝'Uy(<0#D$2Q+ʃFO~%-l)} 2"؛w;n8ry>aIS鰓ι`EгxORSu{听fqS=W?BMĮKWy ] F-{^m]`L҉avm.2`"t>wYzpe@C*@z ܊)z) sda>²fMO9M' Rovygq-!Jhd &1raP\~nN@|쥖W#3g Y&5~z֯ˤL5T4z9BjΖo)mi9S x7HdFFrצwڣT^t#MR 0}/i3H2$b91`ڈ i02XyTK/,V.>Nws!9|^9&W#Yy$anzՂ$6@Vm IիA(~H1p?N $Z2l:Vjހ!5am-Dk Q<.=2EbBV_v׌x5x5˙?|(M<l ΔpQWneHBgv/ſ2n9KiCK46PN4Vx0bOs]~!) ɀK"yp!@b Jm#J4|Ps~/&! o&i1ϏuQ&oOu*¤ w ZYHScwn fr!`Q\)!(S4Lh\cՓ7M'9dG[cQ+W#UķˮQp 뻡G-@D#"s@1ry*1&жgzոz%>fQ\(1uEe b ]RXf,Ц4:y1NT5_-p9Ј'Lux'@~ D@_ւg]&4y|aU늅aY }Ŋ[s\Oф{\ /ٛ09ԥ?/bVOQt8=GV:LRNplws' قn'8E*( m,ppI1Kb?֩b~RmK҂^0lWҫ}Stpڗݥ/%̅{RhM "1-&+XBb!|G+܌(8n-E-;wScDoJĸ-sSxJ@rv~@a5f}KX/wR,bKS2bFnM1+hgulDKyo41 =vͩ${!Z[c۝ U*Ţ~WXLbcmzšŧg2aŶ)Tϔ/T ==bM>FC,@}_;A xUi%l};_BY:g4xELbM %Q'j(+) фbԲ*]gur As^ !A31(mf3$Bi4 R/02љ°Aނe4rsܝ7ږ.P-%~OǺlY:w,gE !s ǀn -G / [wwܖ>A&Y)]3ox|ٚ3X~)t.)q=ApA'}h Z9+G+acvsciKfqc% ТBA؀a7rD"YDU`=Dc/vV0(Sb\+XɅn\h=Gz |B~|^SL|&OߙxT )K p,@\v.1.Uqhʴ(J(q,7Z#)J3J,͟ Y1\$'{c(gxaGxC^lS) ~i"8mt COćY?vEF<7G?UED=}Nm=LC̈5 ٗ:ˡ k%i KA{c4l"ZѼd`!'Yb@*Z/2F:#jPЅM:1Skkl]QP r"qY.1 UoM\~FiG~Cfbƺnz~N{M8ƶGȦQf\rS2"v_M]fFbKF|𧻓f&Ap(&-Gnɉxzl*dOB]d^3Z*Ki #8+T 9EiI;.+r?ܭQ;TL_Q.O'e 2YOvR,cddMG>{3Au:fѽʓ[Mv?J=Kwt@pތS]TNlw3އlfsd:2ˍM\qW̨1΋.#>{T ٬#]&v{@(z.g]8ui72EKM{1$+=Y"1U_B[<>) ]}RxSrC%_{zqqas4;snk4VeCd` x&MKqQ\]:/bmåWjo_nI.4 {rBDEe9VI3ڻ"fkPeNS$tXշ m왑Nzto3?|$^8Ɣ&a]h;)b.m_<*Hd\^$c.ZMV azɕnzqO|nb;fH( iG^ bJ+Wȳ/K7z{\ _jLIs wWճݣ5bxJe9PS gF*g@`xǡAnqN6 O߳B-ߘR>$.k{tOc (Z芸SRh!">d)p}VuZ@#5HGq9Фf''3Zd,: FeoUaaj6LX5fjשg\溅)jŸۘhj+P|opd p,8]1ћ ?q\!WQhhce/|ijů/Sw! IaHpU緜C$>s{M[!  ?KUm8?SB^;R2EFע%FPoj2 ],k-Jgd6H*g 7QD(){6} +Pb`ɶʃo(̒Bw@Hdž}HKU=s8k@ 7rސ1,c m`gAWԇۙ2dYlmG vZ_&+9#lRg@ #Ӌ Z1Կx0V3}bpdMH4L@=w!yS~6IqhOҺީ9p"(gI{ebw j v}jbttE1 ƼxX?c-6+_&.jHXKuхe#Irf3Jv"C:BW/M %v-{tk%TE4՛E҃@Y} k&*0`BǥhAM =QW8 `esPi^ov5$qTIq3'C=X"[NM">N=q;fv3؍OL'Sý4M>1$ "Nbr8XP8ʔwp1w pd}%)hyб f%o3'AOݝp;{_z`8oRd<N7]4M0D5v{YBGCs`7=)$&9vHv"AY”&V@qk j7&Ó63])X ':nAJB1=GKlDͱؼvC_4S24#!²] 2;qEKD)a_pOɢ[}'l287Un{izPb枉URWCИ}><.ܗb6+ TaVe No9*Af'pAu+]Sp׼W\zLPD xb|Mɑjxrzi@h{SdݭiXQ!>DRa'{eΥ&SYc"T_Dx\6벓S< &u zh+y&x@(3ZT=ՉK3{8%d^[]iw+5Aj&[ٴx?xuS5ԝgO~]BM7T~@4v_RWf &񭅝mN=[N 8 u oF}:@5ʂaT'0:̚<~!Ftb5}XOlݔgLp700iv/nYP#JfZJW+~l6J䥡";."|Ζ( ;u\?K+׿`;.Mv~L3:DViyCd07r>ݥ4&h b)NuǼ VCBg/;vȑ%jndÜq[u.b^_:ύD4B gʠA-f jp<:-@^':3cKΏz {z&V{:pmD"#FĠZ|X=$Fc,aLՇz/G--N:2AB W:h i1yR:c GUAWóXLa+A4'Q,$J'ij v0NCB !Nx ̯<׳"&~nKY8b*\INl-id6~Ti"r.9XCH-Lނǀ+:J)* ("W8e>ۑk1cEĹZeG} lSg5[#Fu|s.5:Ho.5:>!j=ܖ~ >6^i>NjmaaO`m`K?U;\IwoSo,_@{ٌЁ?U߲%leU:bkQ;]*yfC oAV%|Q0 svgPm g?38qjc2ߕ qMg(J]N+4ɜ^ɚ=Ү'|WE&Je̅ih䊽v{ĝ7A8 I`_716rG7SeH9rApk:![}Z VkS2O""˃<}~rCCM*2~0^4] %ӝU:H!L6?ğgK F>a6]~z]yQ]f[Y?ٝBAejP|,:(l|9ͷ{fChKÌ^^gYwzBe7'/3oqQUI sC7Mp}YAffXsE.~sk@(Xc ߁1|`2{$<`i0u,S2. O&&,%Rܚ#k\VzP0FMM=VNmHg.1>M\mP!SufiNFֲAind%QxFsYTNӉx ýZъJxڪ(vڹk(r\{^T17+-(a&Y*.^$QPff٧KswkdܵZt PС0[Ng}rV"],)mSX@d-*Y0ip7|5ժg^D7ͦ:2\-ԇyڥ8iN?vupSʑpyBp%`E(':@p'u'ezndFL[Teul)#o16?si{,sr%[e-ta;ߔP[/"!Lz˺-ǤlHWo+K Y;Eutl+@=xm/{{鎊L,;PMՊ(jGت H#3*~z3ԃTg- XH?TH+}?f@y樀r6/ W9B(7S<[A3 ;$`v>  *>>NVn+u]]k{qth)Sݑ~Exғ:_ MVOUFYym]0XtJiTDgU7)&L@pdO?oak&P'w!OOu?NnJc NS7>#E9HL/xEuYi`4_/\ 駀IsKXݑ+5e  ˓Y"(2SmxB0VAmIm!l&/ n/=$c2ǝohAMY@7;L-ŤdΏLERZѶPLVM)tqdd~|!ɥ.nqeD\Jq5?^{/nMUG ~ʛY{3p7J71 AwxaѺ6GEMg~*]}7O_ZٱЉ> hvK:^2r(8T22Z2S:*{o e|guzݕ򭮨@,1w=қŰ+x{#"\8IVA/YHvӍjhMYN)674;aشm1w97zTc4G*;  2)&ϱKH;j #|cw[vg*iDxb&qkWyHYdm Mcl9 kZ6%ΑL~fuaCT./?k(t+9SdTw 5St;.{W-o0# 83/{B2ܟhJȚ1rBg< jlg"^͋`} Ɋ)}懓q0 If\6*R $0. wNK)+s@EDusUm&k΃81:Z5Hx&sqw(^]v1~Ɋlr )nQN&EcF.o+9#HghqnPU@:zYnf  J i2568^%;ށRF;r6&` "W -ah_ kܣj:鍳-|&Ivb+iR21s l,vE{ B;Go~hOW.]`\{'Jj8lTDr6} KmzF#u_s Bx6*)ɽ_7٫/<x|W2}ٸ cюj*9;#^lZU7¾uA {g]Q-!` :C).UD7T`cXcnO$xڐLyAK=}0 _җäDhn IA{C&1) 3*b } e ӻomFkRKثJѥ6;Pmh$oi|%Zt܂ <&,#γ:.%w~]Sa !z" ` FU=RFN3Q]R{[C\ZeL0533T#*EJuā!π2,-]:?㸝XOU@#>|7M!v9 F򗽘Na8f'}vw03{{Uǔ둠!,8]^TYwbqRddjV~E5ۃ%MQK_F),-;hOt[wur Q07|AKS!jxW'sOfh gPisx<(:^ex<,+ %JZ\6]KI'dsC-hdbTuu8Uz9S*0> vϩ7'τǑZ4o޼}cp/A{9aȪ! ŁR}]Jp7"B[ FN?j|+WFr?tI27T8Ęa*qrsb,N? QKej _ZT{~8@eCMMWuW/K sKiLTԱ ePpI;p%i3H0 &YOݮCU wuGVgwHKL7|yOH5% ͉|[O~Gl^C];zrciRr)ڷJ+^98hMvFcQL1yƼߟ2e sj|'U7|5C:Q>Ʀ("]Ehtv%BTGؙԕT dCWoaFNgrp#X. OgTD5~ }wB±=v/.gA꯾򘐵Mv^--?+$uXCg79J&)ɷ=a=`qOeMRd,7լQO BqN =UV*Tk-'&,څU-,o(~:a&;vW\j_c=$ØMP)ٕipql~EgeZ=0!=>T V(VNɥbÎp5<>C{0{"5d՟nw0b1g$g駫@=?)uaYaǦEoHMAʃi)1]òlukQrWro̮j^>mpßϝR2ɻP @m";XmfNDާLZvuͦmE('MEl{2 -g#NFif( OnH+N էLf3Ba,LwqC˿t.qOFKX :'tW?&  =iO ȋ+R0Zʊu!گhBl e8a4i!{&6y0%I;;z)|sILV,W!gĐ]!9Y],J# pWȁ`r%/0BDg_aNPj$m="!5iNp5k 5My OK_BKBӝ5esH.ؠe`ֈ1Y j)R՘u;ʁXd;lgv6{U3QqWܣiӥKt^_9!p4 81 kN`qT;l3SQ0wk%AbUrIdT.W0;Rk 5?Lx~ɇ *hNB]U+=r7`:y#n#愯cP/뚩1 V-d44{n.5|ߒ>·c *OF1M9 3& '!Y5/q A8. ر(#GChF~\B_rHNtr$[8o.iE/,cU[3NwM$l۬@&>CY?\-ӫ൫~H¼CKS+ xRőIzdi@s;֐TW,W_>Նas8$.#f-c7ܥO@46suc8cE vhŐ!bFނ.6>t+%>揥O&$XNODG o;h#%j,bVr爥o4 E=0K{edqFCk]ApKTkf 0 *Dn qt--rm%IK84Vyf/@z%0e\ dR+nRi5$/281rWA-,LnSIXq>n5GQAjfc{J0$3ʔ?>AT@%>Q QVƏs%H#_%i^XEkɍt3W{ x7-mz- }&AuE˜ߔXnHey9[~2}8ON:f$$<@9^_4 st/ݮ`P *6eq4V/! 9 8>PAe,.x:K%mT1ipBKC0P$~V\TOPJ]Ah6B͵x2Hp k^$@r0M#ct^N/<BK8ϭo@ |7|@:Oٳy{L|yoJlqz8as[-`iq x%|ohiM EĮ:Ed!:fe$7SԬTPg]iQvgrU& S"&7ջlN0O'$`2{\}!`D͑Es7Lѣ`Jv)~lT"Fh7 ޵2Dd":ؒKe#?.f+yK,LAVJ+f-(ûaV )Δ̍rI_^=TF.q 7Sͷgd}r4 Qܦ$;(fMKjiٛ CX5Iz?z\y6"|z9M9/~!)2oˠp Y`k͌!: BeacWMCo=b|;İJt)wF OT涀~.M?+{ٟޯX672 Iz9R%;@SՔ&Ф&_Isͳ8\ycbӽ]QQ3pUH5?n}jD LGIOCi:%ק9vY\b[+BHQ|qFbHQqY9Bցlw@i.4A\l% jVX 4X2xt?Y+۞ a|Z "Jy8`^]us8pw28JB"&/}ϾwL-ȫ{l kezs̪Ey g12=HmD: `T $yS蕺# (Ԭ `ޥ;Oz?8ɦ$֔(/ګMX'mqXas٪%wv O6L~rMQ;WU^O1>?!딎pjI2iYNN[f. X N^Q~nߍ$q]/5*=k+BqChqV_DQ\t&ؼy^X]"whnm5b ׫H&L= !,m"\?Io֔~ϧUR̹{Hn|t*li M8V y8.☧4U5/6v$twd\TQp2 B1/jӤe?b;`e߁N{p@z} @4%҆^)lXQ-UpJ~$Q~X4.ꩌY h[oMip+Δ+"{Oss*PSbc`X%{ZҕbxAin:ЖZkUF_T]M7+ Fɷ|YLT9_D8'+=|כ 淪nCɿI7˛[J,)JA*tc3Gx])NԅFaُ)s|&A%LL}`C:йPjiv S_"ُZY0t{cI>@㘖tIm\f̅Z+NZR.<PS_4d0?# xJA9@TB4gEq~ Q2+O8h ,wAFUuF6E&c$}218,PPmA} Ey|ѥնp{[p tw-0ZC#5d׆?P|m82D,zƳ Ƃѯ0J}݆Rt&d?- 1aM})\7C'% &ei7!8a~S>]i~ S\2ңT0[s#Tj.RMFMZo1KJmV\0]}= RC5mՑ,zwmVK{:H8Dȵwpfɣ֢tō צs)Ö[mXSm\h(u0vtnyRDn4exM8pŻw/\ %W}w*=m^k˔ibN`eB W,=rfA8ym[Vc!"]2pNJjt1XQx0J'gYlm 5+=Up~t~w(vy<"RZgN t}ΈCtG`U'08,HuY rLC*4w۝-as$H?{9'5*ؘijAlе]W&ۢf/b7ZQBg ᄎ{U(<Z L?Dޫ|aEK/*H}"8>qüLVH` ]}//D+|,*93ȣDyx,M@'C{a>3:R\ Ęє) ?q WE"@Ş=՟?r WCj'Qǎ] SYo* A(L/y $HCRB} 7Y(,OWέJ}Myx q%1tH*BJxR6jްd |v.Qw1B-|g@ >RtBAژ\Uz"i:Wxh'HVʫqИ:йq8hgPN5r d«2r)Yo{(CSDϩ;2=>HTa o_qA*v < "$0knt.rGq */Mo.u4}YOMEQ69oq daGXcT]{^Zex}.*JbzZs奮q .{,p -C@--K(5ZN|,,*"V=wW P;MC[@V6>l[mHVldGL(@9 [ Ëv,Ã]vl&Gܭ]jx }rk 9ZZNl*N_y@j˔ֱJf zD92@_T(`e1 >Ӭ$6&WgZ`Yy1KނNxfU}TU nKPAl5C P6%޼Πu9G^a3KʺE-K:&DſwIη! YS$IeonScE}|ͣbe^8*A3O/8v~yYM )/1?cmPIZRu?=L[k-ҭ .cs Na0+HJȽ! o 'aGe5|UҭpR0mRD+v0te-7_&nl"Rv jŵry^d^arʵ5Jy P꥛X_J^21R 9JU0¨߹w٧3(|ϪurE4ip}[Kɡj'8՞ SXqm8e<wz%&5T-0J({CVmPfr Y|qƙGv $S-TٮՊ%勥D'oMd[7>`Sw,}QTҠ|\v!oügӏt_B >BBN*!#7nD"Is,31n.&`n (Rt@0NC+ux歷nn.uQ>;┆G@,R#(bU5!,ͯ(r^;$3\ԫWvKD6тF@39-%@FM^) UsZ?:R`D4ӭ8 eÂ~r&Ex4psLÑZH`-ZJaU-j>ޑ 6"oY49J Yq$̦A=/.D(Mf" ٻaNO\`.mS^kV@D<|vW]18qG(8^D:OAuS;;0lc!lsJ1+Uwκ̘T+r# S@L@@֏NxHC]2ގj iC Wmp-WX*~/ơ,VS]ְ *hۉAzF ɂDW,B;ʘK-b7*zO\mnw:1KހGM]P/(U>{hϲWUc$t[Y`N6 3{c<UHkðGZ}q Qx\CHz(YKybf # rA~ Z; 4;/7Tz'ovK[ycdNx#&[~kȇ[ Fk1L g$s ENzl[Keo:7 o^*ay,6NW؁Ze0LQDR/o}8C<>vb4ga jfu)ô` 閉3#-x!`#6xԟ" hL8 bKFG=ka=?_a?= *$l|~;m|t͑ vW e&BQ&das4VC %3MH0<Ko) DlƊˢ?M_9OX!4#:m2|51$0ן3:].c,.ic8, ڥ9. !GQB!sǙLd%1&%'Va$+##V/KK1CMx&o!_PtA/M#t#oڪUO[Yq x:3R.hv, S'M&m!"0TKѸ#C3ٰ8mT(_G'ڽT8fQ4l!)o \pt@Ez?@RQ*ľ.*}@~[ Oː{j*h*r B?%ӕNEL.Be rM9qcb^q`s xD.ux S\āYImfRI ;OCH'zgkTniNl.6 WH׼ՌVf`#Eink@읏(ܹYG^%-`$i 3I2v]yr9x!mQuxhz$P΂$j2m"=,VlP? Y<ܞJ\~{"eđqi`l;;XxaI-5xIA|9 CTw3I~2;&}O@® M>zPŘ-ξV# qAsUPm`ijtEGG,\%"5_hƇ," 2Gl~/ rV7W&Vc R*֌? E|>cҋt.Hox5de t皂1K>ij 5F-g*/" A$F7|AG Fa".񛘬*Igk%NQpna d> Fε%Fk)".P!zF׀ڒk7B$6M,%{&N`q[ c&^AثHtM[+W:sObc}GP/?Ev1(KUke% A#@$m#>ąqja^SNH83+R*v&i`>R L'K{PO \P@pk/JL{8҂(\c[M{w3Y>.j]3DNwd1:0efx 8873+H 0r}|Jڂo?MG'R̗PE8wi/_1U:^X6m;&HBt|H(Ϸ/gQK*_·3#wNMVnH8ȕW,-0'5|Z3˙Lk-Ȯu, r(3n? I[ n0#ղSt+e]$C5L̠6PWg1&#)gDԦ*O 6gѧ~o{H/"uqM}+Dp8|ݯ:&84nƼ NLUQz&MFma\sGD_B׽Reӿ?U_>|ls)2ErB?`-L5'>nדK& m|%qM¨?dվe^fZ]Ϝ}JQ n Ï+ ho2'֥Z'W];;6Vۍ&yϡ)Tl鍗12YkR7T oa^c+NQwD"-T _Vk;)`bXqWQ/D9*kjZ&TYYGf7AGiMy8WMrM[[5ŗ s܇D򩮞t hh,%- m5#a )%,wiw5\X\ۗ5qS dX8tu mC*AH֜"R =@|19?&l5U8BU#ZwtM\:_d?1|+esDMHh~{%W4MU76i›gi{Sv qS-bN|by:!cv{ǠN*v01e xR1n %"XL&|UgY2Y WAF7XT82 z&I %.aAD>@ւ:HC]Qb:RFN$WޝcA#Ŗ:K*d#:9bY%xEjd)8scEB 9Bx5%L4ˎ|ػ#*po^'~<\ DH67fҘBJyٸoU (߂@^/rQTl Tܷ!EqRh,^SSnhd%kf$kZz(5j[aQI!]cV1 # /vDq+,jia @Y6h[ Qx\ D$ufM I2:L3$,:TDߊ;0DW'i#E~ +Sẃ QE񰨇 ;C@- 6p!}m-&v%ȺGp%.O0IZ 1 )2S&RG!}IОxoTYPѣͥҖ(?㆘tq`a9xh~t;,yXP(_Jm 3mx,MQ€*詆 ͭ1gQ.\nB6pmXf^k(yqR&XէCZkuj)B8B5Ý7*"5Ƀ_EAnwJ~.ԌRG1c{QGg\J%2Euk/ᩋnovO®Ͷf b[(~Tmg YɎM:dwg1pY0G*B I# (U@@9eM_$yH7 bt;hB+6<88@ ljP3!UԮmjf*mʿOpΘ<2ȧNF1,":?O)| ]!G> ?Q'] @b6ͩ36  (`<;%8&/\ vی)gJԱtb@em[" 4QԿP"K#kfGZ }U6n4 bÞ0k2װBK(1ův?&|}u2P~Boge'3NyRF'!k_Y/0 gِ#SϚuQ939&M䞾jx&3 eBΒ}lD*s7lbLCɵdC Lxfe6XIXjho]ÃhvG\+c 2N0ecshk SaU. HS˴1zK!*N::[>0o@x7iewDV8 q3rzN~ Q!4q@ky_8gW,LZ0!'؅3mWGM:>$,gR7h,$2Wo6I7'&psgt#TV(u6"N:̺Њ_Z߶Ugןԍ p7M= Ю>Zi=fQ$̅5f%9`%cE֟8 F^P 7@8fMY =תUK/gQQqx,\Y31)6WCʹaFBMV;"ü)Psb7v fea }~udGƯˬ3dh*4@+~-_=1נUFtq?UvlIh-D0V4&64(kIqHXw}Fj6bqv(!:MfppƏE(Gaw ?Fv(q1L~Ry Jl%Ev`Mo`Yjԫ:!tJ l(G{pL.˩W7R+ghZ:juGAB">q(AI욓tB56)ys~@F{9zr$3擮ۅNx֎Al?/ڝt)t}kк*:!C2 `Aͅwђ_o)=u) Ք EfUAo; l4 dԾ*=3REKPMQ%!Zk!vbsV8;sؠɵ?#cMcG:FmKCr'UǙexw;nǰ{W"̷SvypRj\u<#:εTNV,-D0m\^oZ@yq`…h+MJIrt+<0msys"#: ʁt6Xu;]HHp%%ߍ8/R"7.- HQU)@6g?OIw`}Q"ʀTDߛӓ PK~jBmxe9ܖ4w} {t雷ܝɺ1br6zzffc gU3ձY5qKn"T:^$K+cs$XLIXOz) ߀R>v$fg‘[g"V~8m ڠU-KjZcr_~!=nn6VK` S*ͅԃ>w!Aj& 坎'J75K()` `!-AJ-_=>HcGF'3G4ghꎯ~1.ɇȑEI]QoNŖ wW[臑#y=,`o:t %Qnyh}̱i2sZo쥪~ɸ7%"8IvPt:xdȗ,tY9(n#{j 9;k9^Q3o!5^/Ä?ʼ9|ok]->*@㜝 ?mo]@Moz(\Pŋ=*0ZRxG!Мf mhge%O8HvE~gRPEf:2躡"4asc#4`oc}szN$=SRǴu#Չ*ւC$G 2pztfsnfJMpoQnV܄F:m4p )9P kI&L􃳲AsY;hbgv48S[Shq!Yՠ]k7 4@uR)=_Vm~hco U|PŴD)σ,t|IKa7zL~\mED09ZnyT^_SGK[==l?W _ +ĥ< b̓wx[)7iqJ;K!}hfwy#F ˪M;xhqY} V-[FaBs 6`ȤNTd> gE)YlLRc9c/]?DWh(,,C}gճ$j\Z^20+ʣ(FqJ.QRoݩS8b gJʉ%L^Yt rsZcįYu],7/Wz$\dm;썌Y?p ".'N]P#Ѣ tbTIznn ܑ `c@o%N|i)XKndG nt$0_ǟ z50,摐ѨYI2o}LҒAZ #M>tIl&hh@CM[5DܩNFI%TNyL˽HD3/*QVѡ<M`8h¡Y"ݸsaO|hJ:H鄓Ji {#AP}u=\b˻jf)y҅R=*`*-FP! 6y7ĮaϺSoG˄H?A+CpT'D Wu(%敱7˴^v/@m!s\v:evxNP]Prӳ.6ǶaO(Z Q2%'8K*o}bByI4GI< Q9b,0.X^#-3!“t@Z =V{P1UymĹ6xҞUӼDgf:ZehSxkBbG"{%eĤTP]yB ,i{}tj*%HDH]Y˝7 ΤF,ˣRpnN \f<ܚ?^S]yt2+a (,(¹zHߝŮ=cSQE^M% Wi}"R8yJ.hWgNvo U^Mb~h_j q}N-u/urv َd){pf/D@ޓcZT]JV|wR(ٌ=ms oJsvOf2no]>="9qMz]nLJ7-:A*$ws5_1<FA.x8b7hjBe!j26arF%mz>ofؤJ.]"pB y5Lejj8L Pbzs|i> lVu%2cz♺J;>B!ԁ SmAF.6` ")vjxRgo > JT C1DA wog c W=ƤXvC\Yq+_uC'_;!줱N:+hUx T q /:)adCc3,XJV>G\s!5:yԬא^'+S_P;-L:|_{zŻuQO0kaHP_XĆ2[9ɖW-VS`t777u/mX{H352oHI$Ƨ:8I@~xۍNoa@컪QmٰЖ Pl3GC܃GܭkKgaX\ j@Zua6zj_Ft\s]N̻,yG7ZOm0gY>/Ęܨ+@lo@¶>}g4y8>#H oFV`J*S`k!SoL]a"aY YB8<g,few*3PNϦ +'dD@k߈}\-43b;`JWgf 55B P}QqM,m×PdD1J9[4:WE3QjU/#.MbPT>sjIAl34 Ǣ>cAR+޾ MؐxE΃LBEd#bsg!D1mwcޥ1w?{54Dt=$qZn  )wipN ,: 瀏p!'zb`oσVr='_`у[d{?ӤwF'c/x$Dio y+mStH[>eTYJS7gJ9V\𧻓DWnٔawkF`/5YLa(o%>Δ.XF]A oY GH:P]QkZE#9¦50 Vk:+n^|ϋ#g6B ݱ{'a2.G@( G A r&nJ!%if*㐗L#ja?Y$+ӽx~?hA5^<594}#ʕ2W9k|ڦ1xb 5z BPIpUک(69K+NNO[U4F쾪G-&]p9t33=Z<ް̃Rħ4kh]HThG~C&Rܯz9^a )}[g}bcr`~STJť*)=@tu0x7NE&tޒE0\RYEcE`Ӓ8sE&__+@\:ݸ`9 1=:feșk˔k [2aT5-`wZ˜D)d| 8L$WVz#Qh-XdAjJVRTrY8`[8$f*ڻģ {loGPEpdvr "‚EW?%pT(=p6ú#rQ śf WmiΏc+)⿠Ҳ & p0L'CP!僁xKȁ b ($fddOQIpܝ2.LBiᆌ6GdSk8>+ZASk o33i4TM;d??cr+{7*R҂T$ `iF:I30:pj&xzoۼɆ8%!0Lb4a } NeW]K[ +kMky8/ GB E = k~U^eMa&`'۪Z|z:V(}>R۹L"ۿ|CЮrIa\>)Z94:HcNwRd~}X9m'L0F1I7V *.L;]o#w $lj$lXOUlvjqr5g: Q{X,kU,tx^(1Fs.RwEuQruuޛLйЯǤTa%~?QRA ^kCuMo◚=J@#<z8$ܱť.c.bn|| V~-F՞viȝ}`~=#nt1~͸x*vM{V߆Қ딊,r .Q%`X.O>͈ƒCp1aGФ`FDac"NW}d $_ 60Ϝ+q-6*!>aE86sX >4o|o.W8)v6 աFMywrg\TZc9E Ig7J E/JD!C{`WTX!JFDUzfQAvLdw#0Tq)C33?uwOocPh"$2:?Ec޼ IU 2ꭐk.:=!lʼa {vt2 FQR"Ơ&Ζ¿S̽kLe 3Vkhdv8&+nWcTXݺ#ھhKg=C< -Avߠ_ˬjvJ&jsFt"SaQ_Ǭ+-2EN}[daTReLצ7EV|S ^I{j/Fd O,Ael ¤/@@v8CX?.H$̮4k?2!Knq4ZvjmL+Q) Ev| =g,5s-cͭ|syx lhR8Dn{!d,T%;Zf(ݓ]"K<1R&~Uk)^2m.l@Ò=~P vlKB GI3Q|I*аJ_s;[Nj o=Xe֜|JbSl 9 ޶r6B0k~sq*ശ]~sidT#C4>~7w^ с߰2o-4% {xbwQZnm}sF$?`/O1cT<>^%Foh'oM@^=):I?Dg%7d9 0GMOD5HsͼJM@=%잹"ݡq)*Ch9F7vK_Tf$7հb+ya*l #?)TW\pGNu?%H8~!2D/cX;$X8Ll Z9W\i,;Q5?oE4{#Um"{j-yO.f#B,3h~jdRPT՜w6ۓs;)BUΎS3Ubh┿05Kuh!GKDvHGL8s\|(\ ]d={ ̴]aM܍q6~:&Jz%󥥏jg>SԇIŵ6l];mB-qq>RU"K Ь0O,RoՄ}@hcՆR~ˉtTSˣ~ 密0寛Ȱ{T>[s^YאaG4HMQZ{Sq7hpP~x>[NLf qKKu+_"_YU1VYe. ͫ,RGf-,\S4hş<};rսtI yE bzni_CZu,/;fz'#IC(U(:Bϝez //'(Fat׿V VFF%֣ת,_HYX,\K_Y9'kc4ݥ'8/VK/xŒ*ܶ{viE^jKt5+\\fɩfSXҎHl$c|9!Ġ߻r*d0ȿ{5/}-?oƾ1]ods!JF5#,oD1T0?(]0P(&OYvM-tT ~5yjD(T'^]F Xv@$ cf,np{odiN%%o[6φRYe[)XT(4JZwsPzcTac䞅P e[ISuȯ(;mOvM lׁ!!?|Qef_[ƕmo$/6* Cǁ$)F8K(ܯ%C}(Al3+g;$H[6+ <9nnϝZ|do| HD MNμ!Ѐ(iUEcG|WXl(Yn'0/n1{ixńL 4$U X&\)FiBCy&Dlsķ,5ɢztjKDgo1?TPaP5a؇Q9_)C帗1W@eGqd.!DѬ Ak >{zprS}%p9AZGQv@[__&+Q2lK P|j(Vӫ(!BBU&tUD[c8v[6` fdZ"HF(I6pW)4e3;o-G i7o"%iek~џqgfv dff}Kvj,$ri1rC)?8xӌ>Ϟv]':^RjA;L,Bd\hL~W:v aRvr8m8N+BUN*K? ӗS;p+q j@q{+n/A}k JoVu$vC̪G948oeT崢r4'MwW.G8=#تCxUy ߺ;W%0̾p7 0j]bj@!&Io?qS1ZcmasMb񯓕t霬Zۚ_uohЏNrʫvdVn֥Hō%|#0F.5qE$$o΂ sԣOwB?Hz`0EȇZ0rGFPkS 1C<)]yD9"; Uyee-~SgO q,ˇ4a$qaQ8Xw)Cڈ?{ŀ#e(ih_ژO]Z.BIB%, $hAzͮ2ĺ%v$;U{v5FFl<,/)OirᶪqukD7q!HQHz+Č\ p_i\bHl %&kU,m*$B.WEȺ[C^'þXTafؗgY :ܦE/.t&~bߡy?\[GRaoG|U`Ñ{}G`Q>m;чwlO vM!zdQǁ0D[iR6.{y,*WKma-[{ ӨCf %t1x0xo/_QB*GxO5~oq]JƏ(tE@վÎ1%KF!/[D?iH@²`g/~y??c^*[4 K)BF/DŵMQ|OE6 //>'ݺfr5A2ɾY;j. n+tlx Pv]/8V_SX76ɳBmBq#:2ӽ'$Sީ`OFe9`ŕ #T߹ .G6j%VYeq 'P&/IK%Nm$PL]& ߱+Y.10""DPוóf9t;\z,H`P{&تќvSqbt9/O roj^ meGd#[~elm ol_V=179GyWCEupCʶFk*3vXWQ\( lImU' I4]x:eyUeK  /0%'W&o(z"۞`jW =:KO*J pd(7ϚEڟYM~F~ _*Et'^*.Vҗ̕J]bHR<uG b`[gW 4 }JFtu#[=R]fURAy<ם[xA-ylB-i?᣸%o{Ź4'2SU4+3ɶ,dUTH{C%_b?0!7^nLKp[e\L :40{w6xxuD߃ajD-L%X&oK |Yt03=(R*ضT&ox2z'$jwm6Zf>7-ch:']%q?X:~J7A_awnFi(βRfSa]6)bTeX}deWPD8s/O>Y &ePXT#5sh c,|lC=4zvbno ~ײcЌpHOWe a7*O,̠B)NL2@0b{ J4ױFa)}NH/;eVjV 01v L#͕%Ō%jAr+ D>>ӌyG AוMẸ,1ǁ2Le )<շBBENJn$k{+jU_RJs'jtjeNBaUv&G@OC\gAj77z6ae[X>fْ~J-̺Rȣ~hLGŎO4LhӬsy*}/E TQh$σY3=ջܝ8f7uT5sְR2|Q:-3A;eO sG nن0q-i!x+; E4ϙM>V@(YUxh3bd_4#l.E;!N.Cؚs, q72`Y{n`VD~d #;I\` ROo_3IPnq )&}T!~N4?+FH'bZ1D%7DVn%Oe:QE׊HTҎJ9d]vF8_ev rMjџ`̋Zշ/bV7-!\mKZΧhtWxhTRqgmt1h%Ǣa-",?dAF}a\*JfkvagtGWWA92:YlZcv(}?bC5}( MrM5O2WSKݚ\:0&HٚVƁnP̷&AZ'Of0EJK;;*l2sMA}(ەn&tb]:Μ8ik:שEr*/W!FzZ8_4:RTr'N08UR:a4+Fa@k/J#dSr>@ip;GzVFr]aU_#KiѼIcu ;G2o)h|rn(KD Xi#/9.w fYSZ2V#@d+V8~d=L2r>5JaMGo}K]Ĥ&97 'pZ.zBh#knnKogmk(4dW{DPoR`i+iDWZlk 26jBGB9 }你ucXSt\m XW]|WR21e,U%%F$gGCv6P+.<:zj+ 荃;() OFY.?NAdTC#c #t~_W#ġ0&Ǝdijj79=R-x(aȷ.T$n _h%vDJncߊXk˵Dh"l#K )pYyH'9-5Ϩ0bF״;dN n;EK)i¯PZ4HKlv|2@6N\5$"C ̡q  !79=Rɩ7go3,ӱp,HQg-6`4EښʻGUn ioʵ(k'X),t_p=d'Zե"sRSAag]kI2=Uo251LGwjz]@(woWk%}ZZBNERŜ{F.U,ܻ!:&&8jlTjɂ`]L}ZhyE)[;(kTa˨cEYo3\Cy@Rq\K[_6,LF ͒'tݛb`9ֹK9U4ry;+17kH,G+hytiWJlաa6")^dިZvٹ!kma;VϛUK!fHLFsXT[ܪɅSiEJ,&} owT( kx"l*0 `UQK=yS'eT"f^kLڽ?9*j$iE̿I- &v r`v@ q܌lZ:v'Y%$_NK :N: pxg6Ytd]RnjĘ\ %Y\@A= NsҺP8vE 8 ӭy2[m;zdVCͬ-_v"MP±IܠMx@ʧd=;`^; bbuC-[`yS.sM~,X+H-dEvZrmTGx=mld!BvT@V)eWͮGha4TE눌|NN.+r#=N4 6oaTN8B  ցѧ| d 5R}Wm wTQ?).MB+ xo/ʯ|T6!߹7}$)rB3@9 =S9M dx8k2cJC-w2xjDHieq vzwtS_Wm)~ Y 0.>b*޳rƔtcqڟuH18ʠs(r.v0A{};Mbġ//wq _L,Y º]a*С.g ;V-s6,p "JI/VjUi2>?ne#Fl@<5#{7?ˏ^m3lev. ؞Ls}y^I/W'eZ bE3{߻s94bb*Ii>%d{E>&Y4PnY3HZ;bkRfoQ_3)YhO6!sej["~F? ǵ&rŊ^DޠR6֒s`(_r0: J>jo{ C/2:_a`ܳgxkR9ns0]9*CqԱ概0Jj4")܏G ${sgH~w~?`SpݢAE~) C$?2gm^P5wrȌ̈́A)?dd15\i09k[a2  =ѢمM!?ɗTj)$K+xg&Bic-+ȓkHqJZ@63X.l#zO;"6"厙ZpZ{Йb#GYVyDC$YO‘;eB;> e4L_о0WQνb0IC2rxPоahtq!ps} كڅr 主g )hv '!E,>Xyun- &jjYqds]a%L+*s׾[v ߞG tIky_]_,bʳaa\s2)`}vv', H0=lqM,SB<~)NѹCΰx˚c["%D?l)XD\Lj >-_Y83x,ƿ(gn?Hr{Y#& /c;,a6Yr*_JKA`їͮz+8 詜 *(N2q ǧ2< mԥJK㈹JQSC_et^} `/I<\Thp|(Wz|QwX c# ʯ9IsKmMHTf& \fv33x]2)'8B[򯚳>f&:eC"D ^fCq6 ER@ڟY,ũ<:'&Pj*C.MGF"A e :' ̈{! O! SY^ѰYnR$7[#] ƴ^'o=)~'p}?[Mʶc[ƿ.A OاZlF)/BUBvVSSȕ8LLA?#F;?#0O~;<4u[Iq㌃NcQ5WhRKlQ,N`(ـf} /,f-˅9u4 Rl`֎vxT556 Ň\#y<#/,Q 0ĞIJ %y<{` T\PqPq Gba `[+)Rg^;B-4B$|NXo'9Leՠu9RJfH bE?DŰ[ Q34Z֏.ׇ+ 6r0m2`N\KC ԕ&ӰHfu̵y6~[|۱h>l?6H)r/չ(X P@]h93'd;Ir\052qeO1X)A뫧!i3E.9gg:o1A~&:3\"b[1܉w}[p e3N%)N!y(N]h^Z@y5ߑo/yT Hszb+P?p}p|0lW^?`ZƲ+mz=kU\ll$bfMy , ]xWM]m}bFֵFq=XW鞡*g9,dS~/%I;a8<'2XI lGe{? UV-QZ5DŽ(F|O tuS^^)QTfJ\T*BK޴75F-'I =yA60C̖ xS'afT@q7Lɇ7[^*r/S6`gmWI $pR :R2г#i(JX+pqޚm7Dr]FkgZPk-Ox7bg{IKS6dMqzItjܾTZh9 ZA {"DFel=+wfW0*pCO8b\ za~_;eqHMqz2Qm6i5X 8~V.hOHQ|O{N6w @;Մ\kd,T`5c䃂 5iӯ~lfkV:Q:"*290q<&b?l[2<{ؑ=F߇I9p |K4 T0Cv=B" T$'~?Jonlp~*z%Vu6YDh@1W5J7&\. lҹgWbgSԹ82 Is S[^:Sis!ߙH1$3^ᩏ8zU`wIX#~\OӨoYI3 s*DaNz=Pm@8֍lrRpD-^X*ŕ u"A0@n8M@CC gRDl]2@-DX?"U"YIWA^˜;pG Tvnz^N3Wi<@F_4&g0:'I T:{BAx-q`>*'V . OЋ[ٗ!~7eh2CP\HX @*.y3R 6v#ZP ،Wvu$~bJ=bZ略W%P9<*X?8A_#J9y)6][L ũg ѵCu㭿G ۝D52g*I:%cpek燥1 tssP;2 UO JY' 8sB`SX Ӧ>ɦ V3')tÆ[25( ?5zofUgi%{14/e$X*:tNO}nG4T*q3ev+_)fNw;r֫Bm"+LZՌ;RAG\+Hm=:e5.@]X%`Ye]E , & s1Ax؉o 08 9q]LN:[}-б!CdoϸA8h3U8#=q", (*߭Jx^˓ɌwbA㢮eLˑ If7+L\*}Iع5M2D~ @*Z.䐱)xqtɵIb;`/IQb%jK>\:#ՎřQΣyXAńyq9uՊa1<;ߒ \׋yd\B_[ba A߿@=Dy|0-7Z4 $Pz:O#Hp {u:K^ 93 pEjl`R+ O 14NV{&sY%IvHFh9kYJwHSs^0 Vi!V 'Ш]5 " >6,Harm_/GT-6?ĥR,P-rj"HLVq0(8KzюR$+*E%19[aN> 83N&%hbOwXkYӛ OPJv({ 閁﯍Ӂ'(ȐqluBN{ ~H&s --U2#x#"P$ţ̸_*&zv6- K_nj]V{6R XW؎!@X3 :_Hȑw:a*gw r%S(GAȴq-6 ϱ۠nȄG{ JB3 :LB[^$Kahա] W'4,3`t|(m^9WExM`@0G]?)H3y@ :Q"oSur04te\K;|Cڷ9qԌ[X:v{s7]Cxr+"J$ב]+6M٣ L֦618dv>&`UOj($/N k -o⁸<˃T}7`vn@}Gf=gy;*E]bs]`yde,eg2,\R!A`QP3+srњe~_*N49P@RGi I % iuTQMO? s4cW)0V)qpԕIO:z^҇x`0,cO@qjFxs ?k-rp$1Aɫ `*-/tHb:@$go̔P!q`eGz "?-G~yBKXC KhF-c 죁+6!%hi:}l ]~MG*ѭVbzZ2ʢQG\J19qNg~? .9A$N2ߺcb -(* +YaqQ:_}5 @>C u6c3I%&r_ jPm%pjobLFT}AM1˧c7;+|"cCψHU8Y#Yy]Ttnf`&Xy jŸhi/kӹgf .IaZm~UJ{,|쑟$U\s7 nmޏB ؒ0 :M3X)U%e"Zdwz&X ,%MF ~8ssT TM0-2+9y2fO1!XC1H, f3YY~ o>HJ+{Z4P]6Qj+!V ŜǛMwKD=|OCZԡOm|,ĕ.Dn<5aʚdD%\<9~Fއ:m/5{726i3B|m~ ^lz [tlEZX@kTcɴFEeA\}jߗo€A ".f$ii)8 i v8XEvtc2 Tt%dS+eI.kx>Y?Vܢ\6qJ$0һf׷ָޣ@crȴ&Fj ޟQɸ-!QkR0%S̀`U|ٮ]D`JlR]/5=7\,j#-]!n~f9_~Oi Y_g;Ig9,#3)9^.Z \F6<oZ8ϣvhm(_"~2SݧZeuZe\ZTQg;0utB1o$o:!2\$- dթ7VcByid)bwn h# }ǥh,*D_j p觜K=f`y .L/ۭ&TZ3OPuaL<{h5|;6G\tۊ.E*F&{:%O֠RP:Vf~gRk+QpcX`DdR㎺ZF[؄n4GRPǒL\7aTL[8vr- P.1TJ^sr6P~56OG툎Rsٷ%Po73Uٹ-lM_‡(Ea=phufn۟SP^l }Ɵ ) lq];C12_)1?OeX=|\ *kLg@I@<* [ͼC*cgyFU׀!]]hXz{&lun#2?p$ ӚhUON"mzJcqJ(U?f%:I>L! U2 pvr|\{Rb|lϴkOP{ 4PSR$\@{"/IPA$ qiopIl˴_V 4[KLea&LF/W֌MZ~"?ޣAVL5xP;?"#o@M+]J}5Q(h0lcU÷BX_ftL0U •|LzPpw`B. J4]VSO"H޸|l@^hOM8eIYJEv˳`Mf3Xk۟3.Z&l v$((lz.s=Bj<,cXȌMFL8ڏǣ;q`̪`hj$]Oj2ƀ{4bV~ r+CqCfJ@pa?6,dۻ2*x{Ee3imTN kBOgwL 1#8Q@۲iӀ5J@3(|Fk;3*4ۯ3*@%":dl62[=ԁ61􃹺_ GcK355F Ѐ~0FH`1F*1}V:hu&`qтъ0p)@AǷǍ>z.[?߮hSxZjOp$m#Z<>)S<BB9qDf oɅ +J1 cIl=䉇_C]/`g~ /rpg#0͎R6W>m5)ĖyUKK4zҮh6=F 5gof>dux~/'{ksz~82-Y2bdyo57 .H`-&ۓ岇+;M[=%+C#Ҽ S EE؃yS^ LxSI8c=!'>ȷ21\ TԖ)YII4s4Qܗu DK ,E'Z.t1^~ ihX(Ȩ,8K,X1iIl{P""Z uu\ԫ ,km|SA!9MI1&sXЦBT#sH}F`LNJ(?ƌWA]!sPyQ'(%5Pu׋ ^AhF|06۳t-%<)yf lav Y<0cTT$c0-bE&-s!ާ!d?Qp3PqCU̪Z3zf?&Z۟9,/\ۋkm#@u 9cZM6Ogx8щss6h4" I rVZL< 작]>ٓ N>2\@E] }aeM zBa@#vxݸR `[7axխo?b≁a"a0reJjwʩٌ@^}T盁]itk +FZ3iCÓYY;˚"OYfhQ#˛;1+VxxOij/:`Ñj >d=\E9t>Rk!њ+:Q]TxȿMOڐ[q| *aaSۆ^oVJCkz v- [$_I ,qkmv%t>DxD We]~q @v*bCFX@$.=B&Mڜ +(1vThu,oB /XsE(u0/K2` ϸm8Jl&谛\mKi}C9^ZS~sRYFiP;.qvb uNt^:H!&p5{GB[O\n *WVd2uGN+1Pת^HF&K]0]0FtFaqv+'RNe^cB+TlHt$NGStE]v#SoJЛVɸ.S 4 #ȃ'ƵUQF72zȬX6$04ٮJKB3 >12bC?\EH-ћ% fWu F35h4\}hXEZi"I֤ikyEu響y\` :WoJ`'5Nj;~]Y#TZNI-}C^bn!B,p(/w49iw6lnzq2DffBCU,"3..#&,ܘ LGnlkH1yG:!A*IŘu6FOԯ :bAoA$~6rP""D_͡l "hkLGAȴ^  @ǠBd"Xj4now1QlFX̾kuwMzi.o$@c?hxևy^LbIelˌE㪲H8(QT"C~ѧH\h<^ Hxv؏T5yitjW'\ljv]d"R/u^Hon ͤ٭Xs|[Hֺ!_-ձ7!ڨ\SpzAwtV&+j`\)0LƢsgx t 4<b|ͨ90d1?r_E_X?̿cwV+orKFcNB̗p7qWJ # wjweJTE?zt,@<ȥ{0aJM{1nvyA }`@ij4agh7Ix(1A;N ΚTL3zQ#Y윦[IJ6~v nU^ $G?YlN_f[,E¶:>|Dqe[7i:ݻ׮GS娢q%:-?O\Y4F3<=6/[Ւ#W",(^y&M@hޓ”HED(⪹]`4[Sq<ȃ^<hiǻ¡V." wCuc3~Ά*/R℡ʳa5/ct/@%{~|<+ Q=TAG?m^~)lVЏJwLF,0D!t3txV,VZs#_j c" }-%l7ơxa K*KU@ {\gN1 TyP͹zۘ\@pT FaP^|v 5Njbk|s6nTKQ<'Ƴ%XJH Hq.{o.Qv;Uu])\&Ěw!t<='(") bРtɳ6`pz0QOyv #h3;2u D<`V|w:~lQ}=L^3w<u c:Ejfe_ ܕ?QAoƓ7`QQP T>,۸vZ4mkpG@1 x퇽ɝu>? kgmO'ԃ~Wm5)#fp}31oALS7yr^!תSw+0=Wƽy!%R' 5GqP>qir׻kD?=ybs$X1+7@GX@PFcZOC?MV!"u$Ma=!3zDk`n14.XDuyΗAC e˛GBj1hZEr?B]"7mbUFF&lcˠO~g|=XT3Rw;iGH)+Gk>%>:hvBbku;>~΃3U?vxG-FQDocfEv除}۽< uMKEÜ\+!4DGB)noNI>ݳZ1avutZ e ϊc '{Io '@"w5eHl3sۓ?QEqce /[\pUtDr&?(6IT`|:bkBԊkgd !Q3~7$) qJG-f1zI UqXL z x ,pDjߒ7HNcraͿB/w~ ϔl-tR]F^p\y뵄jR;!/`C-#-8%>3!lsV9흜_.K֤V-lߗ,f+Yȗ k I/yQao]r#ø tX9%+אu7e邏Yq '˽%r4v`uFy.xJ_r1FP1 lwX,a";YL @6QRZ~寭'Y2k^s"z>\5h\%p8.KQIiR 7=bi }7LD^ʰd_]a)foSe%P/^~?1 Tғ٭ohR-.bV#B Gu$F]?u^dj+e)|1K?T[Lmx-$Fr6 [{Σ+,NQiy-΋}TEb &Q3ȗH-9AM+M8Z,K Mh"ժ1ԃL-~t~ٕ6N@99G0sr4J޲cv?i>E;Y& ?·}+Vh @J`^b?# %4d9Gնg @5mf.}?%mȘ~d9g}um$⡍%63ε > hwu(W&3 7pL#SĉxHzD3UjsLbe'o:pR"L9$''+}B7|K4?̗3=Hgiky1N;|}/NmK:~USFS8l|w+{ӫg1E+wsN{gՋK=ᑰ_*Ix@2Khx#˭dx 8Q hDL{=)'? pFgGĭ:3# 3p#w6HK6Jh,9ȴV(!o홣|z].x: gUCJP,TϮx$sB#PXI}̘~4l4XC[Y Ƥr&B, ,CY.ۡ ݌&7FVi &imRnj؈)Z @ [tߠ#Ȫ-jg[mpsS=4'2as,,jdS/ssq f'u:YRɀ#Եx"@MVs1?tK¶@bb!ŝRL H_pz Sxe EU/K@*uВ$UEB͠W[G,p6Lk*`A\XtNHRpmb^a3%ʃ׳a<$(F2Z1?EJKQ•Ǟ vr ZWlс4:;jtŗ=>s]U<#!`UD(D!ȥ3>>xШ$TwByOȻ`8I3ޫ;'T~ccL\F+ ސ k"Q.QoU/HЖh=cZkRq !rwE _nDsx7mkWPɁˈ{E3rIO/yX rوQ }ET R,f$ͩ80 C1 "_(u/%^K% *Xld Q$yWqS V^6!S7ץ48}|)Y ?L + $5&B=sB)XEgMq60 nY1%mc Q$x+{M'@/>5.#{=ԃ-(%Rr}m5eeT?pܽlU'5&75䊶Yh <c+ތG {EiI+_ڡ^Q3\9oZ˪DrkAҾ d7gR d>(F{f!PׂAy HiQZךz Au<+$fP5Z fJ+.eWt_%DK9{r"ml,;œkՙl-_6b›$,; zSJՅ3ն  *%R)gFu +cm̩2KW@JˎB>"++:#^ ׆4!Nmb%spzч9cEZPA0.41nW x{"c4͔*MPI6k:V-˅l*IzI}Mkf(qwbg8mHBDIN5[EoaA6{*|/C^&3Զ8aSG0a6y.v͚yŊJ֡5cWwdcלn@ßCX LfQ SԲ۬-TfrY+pT>2<+zuA.Y{v5۵P\v|lF3U`%u張 ~fڬ7= 2үMj5?&!n؇Ï`W vR %?nj/i6x$GOI]=AߗEiAreG|2Ħ3~ĸr~n< XW@h,Xh5T?`pJb`,ƪ t:bnqLgT*w/sゎdqSZm⮤zG_B.(n/\)@rp48@fLo*Ow*͉Ftn$R \9 WiSWh۴80w{zhjUE9t+L u[ݡdy~0nv^9 鞘 ^apO[^'%5ֺ5`}/-xRܜd ԪC0S)jwB/xV3Vo-˶xj(f˂ntlWPq>e3`dWSfޖs5`knNez?aY5D8nOQթƅD>9+Ti:9 NџFPxFv商)4]q#(y z;sY`вl,1>ޜ+/pC!](5'Iۡxu `A5}\r9U2 7ICn{)Ϫ {1m"NUz~/|®>Lea^AO8KJ| kÞG'F.,-*ʤ_O4ۯ^'d̺?/.fTΖ"Z7(^Adv i$j{Qkysh G"7i5ٕizbSŷ: yJȂ>ujI_$ ˅l||vj )h$\w5Rn`*Z( j\yͼ(vrRZGYqV>vu?*rDU_Դ' ,g8g eJT17QMMA\РV _6@T*b2]}?'t0 7WT]{cˏ`%aVwcp\B-k Œ~ϫukҍ-Rrv!$n[B R|`確$])RzKD/ 킒lKaz"wZ7qs+V`qK 2,e \jΡ ~Fo T%҂[Q~gY9Ԣ^],4>M ZN&ip 7'gD'~6v)\NJs%1(a8#yrġ+u(_Q+uzvD|'IZt-3 ÿfTOsPNiv\LʛJCîJ;j֏>ѭ\(x#ԓ>n_7"Jon<ݹjed8vL>9_r(Mf./b~DHr\va#If6mNUt]j`_i/u q~[=YU_=,Hmlg 0u%鲙 %e>) ~Sygႇmq%(VciImtDX01"1 YGcb\G~7YZ ƪgD&{V֐_pj+q=煤4)Wht)2D͇ WuP" Άlfe Ũ2hv a-~\ %re7_lK½_WdLLf'{F+l=4v+;\}5?^}1SPC2om#|LhTLT3כkeCAƃZU qm@'a\QA5K #G3O#ˤ@*b`4;~$a>Ù{*>SA!Қ"8:!$Sr7gHEx>4o8ռc"H59zF#D+PlVdx'I }n7*$p}inRHgְpf h]:\nhU=G+6*DԕAȤ[ ش37rlZA|sEY{ɁD:?O09/.'? <;@eZMؓۈ!IZY17m_L)W03NcQq#̧/ vSoq ?B Ъ`jG=*|x} ZX`'ƲJƄQ*E` Gǝ"I2;TBtTPj_as .Ufв> ҹg{ս|T2[@( Ϳ.CDA* Lr>cL7lɦ)64Y ̺ap1FG6wkY0AnCȱ/wԣ—E8}WR BNy:\NMH$DBqlܨ dͮ0D>xo%>i T1Ӎ ۨ񤧾]G#1%VAM"ΡYm =c&Wq{}l3Ǯ,k2b?Tf0ƒ#؋b7flvXNųLwM0l<}!RlD:Gp4-|9:pCG@>g \5həVI-QC M-ahv2{n"p/T`lklʹs4^Nceަv nSlg>"J^|KPċW^[hִ3xK`#/!|'\ @oǮ$p =;^k|P^6ܬd,|V2ag ^`ZKra0z||S }ItVeb#*F.uB"B.A>,6I워m8Udгa[J<5z6CtP+"mEP]΂%U@1';ݡ@i4)H,܈FJ[$FAdA=Ts_8Z< ş)Dnhl[3=rsVڋ*Sd0aP߶.Sep AY_2"ɨbL BS8g8T R~V@SBѵ "~TS!Z-VG̴^!kP? ^1O dĘ&{['u"V+OӍ {P up)@55)M+* 9y%Aײ-8xI agX.q.L<%Z$Y|W*pOs-)4c-f@:ӟ-X]p(E 3}E"RړQ9iSj;͚^]h/{PZwN:( vVLr]حqHɩ!kMh%yv\ \\.{i*|e*:mωHʔ(CD;'i 4ꂀ\8Aآiƚj6U @O oU |9kk+l3J^.b.!y- ՝n0iTbw2(K9}% Q]h'WWWOLS]Illɦ*֧n-3W)WqɷNʵP l%Whw%MU*);uJ75c'}S᷐qC{ܜ?h!w:mjũџ2=jT㒉_f8:VG9 .\Qz̋*&t(9c"M"#! GK,lwMp"Z'9{+  ?9%T>ᅳ8{x6;vQ)y.-Sf.X~ِ7XR^z;;"&r .QR D)#_ ȔvW+07 b0*#lX}}ܐ/qo)[V:ǯ#% EG;I+>Z2 3Aޢ蓹0?Y$&tB9`SAEM3F+MQT x%<]Rpi) d.#K`\pZKGDjU. t q&>Pfoڈh_LJq(s)g)^am(gq: Tc>|:R쑔t ʵ "Da C׏D)a f4W7q o(-*:W-Js >Lda!jX 4cVF#z%YĕyCX}<3i(҃&ۇ D`;Yta k k?HE7W`㭬rur I*LoptM6ShP'D v_Ew>3?lxTo zn.`ϕ=zY)"(10/5f8fPcg;H%驄 ѦW~6U =y@}8\Lі``sjTjK^` vh6p`nC[%s )J9&f!`#i.H[KV=l rVG3;L I8zbnaq/ި?s_(yuEf" -,EH{b%;,ݬ؄t0okQ˷p돩oOL9PRCtT_rI{\"+|՟`}>L8Ҙ kg3z;Fmx^Z=%Ar(`_?ܖZ2p*`Tֱ^`k++ѝYбUh]/4},KX5 /?f/_GCoظ6~9ǔz#% .2(:H㘙'q^0cғ ȽAmik_"\Y&R*ij-w,pv|-V]:!eSP0.Ant3RnRk2T8>oUhIܽ7x΀wa˄-2vfTEĬA?D룁o1א)&-`beCbRi܎G|Iv@\|M7[CƔ1\3[8 "P8~uG^6g~Ex!t'qUy,uuhz.9bkڝ|~)3Jt'6;$MӪ.>Ax l|m flx>Ψ[ R2EpmQɏhvUGhB̬v:>=ZlS8*>*>63-_Tb;aQ[!< uY^650r ɻ_'ٗSO]poڬ40Hl(0s7 *HآrHJV2C+%ץrNW],lo,ᱟu+ jcn^J4{#2{`5heԺ˟Mճ8 `V QOU*aydGfSoQOZUY}h}.) #KFSEgAu=E0:E?wAn,L-antWx->=^)nf܄X"cckA4) l!_"iiTU ʍ;\eq2'XJn}q$U&0ʞ;_mž{c'sVȿt|{Nhr80Oj%'{">XWcl<; VZz(̂D3SKmyNr,^F>{uS翈H"^<GܢBC%P|%Zp3Ng$LṊ^kGK7>?Oo!KմZ#n0.F|50hP(|e^{ VBL+2Հ bi,8'\R^V>Xd W]X'f"bN\rj9 5i/e4"Hy`#jmtC/2*_} R7 ȻX޷Iv1 kdQˆr25x@Z(6'8de(9 8 MNHk߱qD uHgJZ@<+`zOZsD!KFsoqx"c!UGLeW5'jiqK9Iܣi&"&e.??E!p;'xRvi1FhvNV5&zpʶa]d:L3|ѬV&e}Ve,'DіF^o(Dz{u4]&(Za)pQźTN\P"Í vk).ra+Ƶb̍tu r۱0-I<.~'8* hC b|g]SYrFʏŨ Q#Wh<[osX#W4=䦇ys7kBz)vBѴ@qыT"#]u/.$@e?Ĉ$o U8 t=/bZ,A$4LV~KEjgW&ʊ?B)whKOyRݤƗdoj,?U1;Ptd'I Lֹ,`fû0bV; l` G~61g]w kPL"9|+cn5s 7&+ouE[g= [@̀oU-F#;>옉nbdzлlJE3TXOWT˭ *G]NuG{4k 7x~:صmclcP2h[czb F3+D.őJDaP2=y v@nO_nM*0(NE>= z)?&/G49''D[vV|vOʷ}"85;yfuYEj5N@6SH A/``mې,l]A͌ҁK"PlB{ڿK{~s3!N3*<:vj[$# e !sբ/9&d΀AFr 7kLrzKnG%I$_ /F׬;WGT[Sb͍\mIMٰ 7Pg5uC<dV6Oba!r61hXc 2`푟Kˌ,zn/*z{:lf< U7/E4"qH lV8vBXM?!e'hH-EHάǩrZ#Fs)^]W#zwcnnjt*Κ J$í5Űt̀D  |.NvV:mx_55}WP(~0,#0!eǒ<"3VPeǩqNKUt\+-o5me)s)*0i $= m%L~(Zn< 8p #ȸN :'~1`Mֺmd!>'Vy* f9F[K0G?mq4 1Ю@"\rJr:Ls$~?Z{114$r٨! ^D?al]jGjL8\ LؔrJ \PD(عMұBOK"@:B) w}:,!Y0]+VKekv /|.B!S^@ ୊,JzQm+^L=#d)gpU5X]Z7b; ?Kb5uGG4~-D)PoﳊD|0qi:4WQc Q2gr]dE!1 4A6 )u|#2P.֙T+Вu?3HX?ge骪\m1s'/GDMi:h~E3yo]IwUN7mLӧ58c˜~y)V@7ErX6?~>u^w1 e@ћ۵.ƛwc%O% _sYQkq}@L$!i @|#kvINv8&B6ex〓D/3bٮMȪݘYvFF ;c+^XSNԝfNHoF\R7/@ƆG "JZYfbx܂R0-^h>/W?ȆP 2Ru*2GXJۙq;ԧrT5dDm&;-؁ 8[˽c(pw7 \wVzL/ &CvVOz?Vw:BlYori HXb^W1g9MTvF:hJʈ928R3a{v38|jc1?n#CaSo;3rSN,mM8voۥ=#(xqvN,YƱWP!ʹDJevaS3G3ZBm%#/nh.~ؔi예6(zlqM}-Gf`P8Pϲּ/o&?~V`4QZ?gFMCuu.w`:C"ET6<6eRV(>YWE4"$IǢ \֢Y@lH?QBksQ:渋'I|>=:>:eM,#|=wAzG a]zo^rioY lW"*#oIeǢ2Er^n1}mȤ,EbF]#[g=|נ(*'GRs~ yH*f9V#<1=s8*Oh$. ~5ScER ;!<_8f3uXWS=3Lcľx;K𣚷PrTlMuO%+h߃bڿռca7Goss#qi ']# | s~/]ξ a/W0~%TIXW,*4"Γ0X. iAXߔM)v} V_ %=.^8ZܛtֲV^,dH=$hB|+u)XI3YB&q&i[t͜C_ՊhU;NCNos6ݬ%XʄLa'zd `DMJl H `+^Drzd% Q1)/P<|ϭr!61;3\CY1ОhGP)Ҹ/m}# *<;`>p6q[$zjFC}T_TfL36J=H `sSeRĀ1H3ư2nQ!8qXȟ51]?@Px< CIQ7W%{!2L"#QEqwh4%>qyk<+;a+qRj}H\6!X2S <~T6Is+ؓ-RS7NՌf]"’2P}ġx<+wv}ҥCuEݿ4}@J{$#w/ cZ5iJ@CIXir>'FϤ l}e1!5e~_E3On,$O/૽gԽ8Rquv^ "AtG󲱣D.7YOv\Djc5Y?'KuPxbu 4tqǤ T$g-RF"gMoN /7`bQ#;7ј] yDSBkx^q{@ c50T$ lP0 4ɏ|2>OVxxunWmE@p5IFׇ:^t D 0Am1fR6#MPr 0tMX"Umsn?x;.y22B :.;pYץ؊ :s8$Z^vOd @$Byt$i󍭛 'G#{/o|޼LIC ՚ ԢXKXDX] + eK`,2׏n՛@UI49ǟ sS黦C)Iz @:e+w@ӽU3(>9O+$מ4(p/BA1/1 #8+jI 2~xד97"2(}2D  =;@?=cƕ;v)9'*"fǚ8瓜!]qR> &r҄lD]t0${TP7^a]>N]/|nbnx]n,@TLV=<3c ~YՒW8*΄^fybN GZ!ҋS^< ymI)v%QQ\[775L p"G ] &޾*"'5EqEcQԱfhpM䧎٬j _>&)ם*N.i3;shi&M5[L">3w ~`Eư;ycWI7Nh~UR[`|9Ed=&(F7TKsBۦtxoq gl?g麎?*"93 sK*6zQwV–3 @d &ǚK^wS M*8a \LYD @?eb1Lw(cF$f)]M*nz^~u|sp dp+VF1N.=BCvB}/)hU4uo 0ePN_HقV׀/q!m*Ӻئ ,-_-x.Se!?e@KjKI92cFl&5/~nҀ|PFąQ !Ȱ3a A-;>D{dL-Pzw B ! 4Z3I!%i& `^v߀fX?]RS uMz^> Ƞ&dudS&S"8(} . 7ݼwA9({a׍h0ޖ.Q!jHlf(zm66W-!T[ZsJyi3$Ae?@w pc[{F$1b=!7b u?.0>3<-4`˽KueWJCşA4ߜ] a@!U46]<|E,xҝ MREVE8nBE >| :@q/UVkH,_d/_2wÆrY!^Rߖ6䫬IJ*R.XD}q)F "&|V5 _f.ƷZd ~Wq=h!h} G@BzHȿwepv/2z^%Cdq@mMFI&d|1ƿ~ lvde14lTnW-ana=xp}O6px2ϯY kf_u'bH 5"#I0~K2Q0#8!LaFR~8G6dcV} yǿ4yIөyPGlQ?s8^8àMmawQj#!]/.,g4ہi#7) 36VεӋ9E478U^퐎u!4:U޿|A=h93 !a*T7ϩZ? NRD]#-E~|{~w('] NvgAY$ Rnj-+MyW]\-U .dTVLq3hTgI\ŨKUʢ:pijDqxgîeL$~V$u.kBLnHBߌ+ح"δ0,A)}fꊌx;)>2wh,g Ümm4{e̻rA=~SQ ' |$+q[&18 ;bh',/hԽ.!^q}LSln+\"R| ^Ðni8'~gZSzھX0Uuɔ=q9#d ΅LJ..лO­/j"pqD+J Qp!kĆ]#6-*j#sfr4VwH¢u6%sW]2? $fP}xmS]l,狫՜YJ }7GROP~@4v&0yj8΂%V<=*Q!-\ѻi;,8={briZ p~5O}bBϫaf@É<u^VBց&->E;y`V c 5hل~ F~LI^DgruC0&µ^rQEUd f䲸ie}YQlsS/&y4=3BM 2 e3(`SB)L]w ×6s ȏaMOIF&5f1@jC zc|{dC2/?GPl iY` :CmBNh2.7;:! mgxjyWUKĶ%ѼyNž}<.fBHΝKCq S}(zh~jnmZ0y«Z%=`Ȝt3[(p@=4m X zڛD&%[x2)2­ċؤOTc8?vxV  2=PnRwuE=Bml>[Q-+݄-9s{EJ qQoGhq,S`wGd;RN3'D_6=Y?թ[}pC'Z*؋LGMq=Wx*߶{a_Z@ zVaqO2Ϯ 9 y%6ۜLa="aZ_:qw^yɐ'KhҮJ-ޓͳyXNM]NQzTm/jBӽe9 {ݎ|w+Y ](j;6z͹ r܌12_Uqp; *VYڮ\D : 3€ * A7w_ӍR; ִsT8)MPнdEK `(^./Z5i*(bPwݔMͣ p, N2RNIW5P҄~qUkq]_=tu)*ͨvG% \R5Eܞ#/]]&;3$#x^d ۷݈$K2)~ę29ѡ|+6dz|YĮ_u)̮9<@EIQ?ڏxLA}&oYӡ=h6EP a.ЬQ`…c*F&9,}߃*J%ʞRH|Z[ŗc9JT<ʮ{N#5~F`ZsRJ5f #\BT(E:'Jk o .fPGQr"0j{kW(fkT+EVc,o=xLYRtSO~;d|rmfv#8Zg|&X aW@"9B;uxLX, $ ) -ANұɰfuxyyv@^כ6pk^BSl{d" `#Ѝћ[&гrWQm"u|^d|b3^vl*XoР"ӇzReq %&6F>Wy,pW`Zܟ2VlQs riL]%N/Ev?S}0oFoXbIlӨ$BO|d S|`-_ۉr,z:{ {lcR[ոn1ro!i]VRLI- {b*&JEM]d&0qr7x<.jYO+Mwn;9M$/ h#AڙH%$VLܴ5m { Mks/lUi=-oJAF5$Aޠ߼ `z$oygVߔr<_sܰ0ŇL|H7BۀTE'`]NͷwmE)A=-r&Mf:{xnt-EgCǏ.(`M)9p>T<1Y[Ԡ)hyP$-`yo"] f Nh ;]HjTXY/\fBe~Q)wV! 7,d_3F/";az~b m9]> ply6vſ'a,߾%ZѥGfbBk0 H6 aA~iNQ@VT;` "gfWT$cE#^9`W޺ZDQmySK߿VS7sr ɜG=̌0,i aHWN ^;} Fu_] dO_㖵ÕI8 t~ )' [v=00|֞661ꅊMP8 F{F^ݛ 4 X)I,Yz:04 a]浑} y?ZK*\u02Fmb'N*wF 2Nspx/C \q;wz:K^VE/*8мKe4P=\7/ǃQ/s*:jf% 'n;":# m'r#*#F ҴG7>C po.XDVS>Gl"CF-үkŁm"' @ lEF6:Gs'jҧ$TඖK o,!#,o1._ 5@ڜ /trE(NT[@˫/pHdVԙqsGZ`R1]v7nl4+ bCGI4Xd %b/lᇽ^P:jf&psd8b٢Bن$/L Ie0&{MV&BF ؍DTw |/18L#P[WJ]+ݠ7 Qt͓ G{t>@%ӱ&B,ix KXzyD`[ThtwۚEnZSƑڅ橭Y#yTwǼjv"ƥ6sAĤOwy =] P"(X{AlԸYp@WcTmz !qU[.>ʭ ޷B|a6a{[\zP/_\ ݎ HAz6?]o)[/kgsFz(BiC8_PCL3p:4T?K9d腮5!`gx5S NBO!En0)Kh6`'6(=Bk`&^ҠGwUқj)% y!9\G@B+p)|ҖrVUE/2Z{OSDQ,#ނfGD0=ʿgũzaϰ[R"x___W wu0B9 7y>-&|@V-g ?12[Jp%GКyfStQMPbS9`Ҩ$L>{ v; d'=TcR'uk^;xl_|2q r9;R$qGwrE$8׼ËP;6H<(6*OƷܞ|Mb#j}Q |jZK~Hל!/(r.=Pz['Ee;w8ܔ-3$R:TozJL^4T mkD±=C Y2odˠIqWJ ?z\M @x{D;bE_s{=_-Wwf1ij0od󔲥 P Y<& Cs҃Ǖ䑐X"rLR5#&UqNGS/@L4-SevźL>\7 E~:,ּwB1nJ/R=] /XCQ%4'N aDuUQpGFm.TgĜ#2 g+;>e)#3!ϯR,-ڪDH BZhG+4ےBНCt`<eXR|MoV$tRLW 8beS(Q=|WJ}65WK$^@#3I΄tsY22`).64WNIrkJ^Ïc\p)#8ԉ iȸk*$C yC/ 2+ݏi7i\t&lx_ݎ,",T#ss~Q*.^u"=ׇK<& O0 Ml%fW}Kk!8'hƠ?P$HyD]ULj^XdB9xFC:2t5v`1(՘5jxt{GsD\ئ|ӒA?CKMF4:t7hlрlt]u/ 9' |$(HNu䑑R-<=--'g>7}=m#^tJPctydzA _ GȩMJf\_ـx(S;UBg!|%!'^!%@LwxgjPSYiK\FA vl xO]> <,n׹vDpSr}Ĺdy/9,G4:ie:csy }s iC`ѩqCU7g0uAJ"E3H:J`b%`$1OJrUP%ÕM%VrF; Qfc*hJDY+aӽ~׬xMɹ&ϯ\Vli'R,;;m j@SzL <6rz,nxݍ(3plT -Ĉȗ:H]>r~9#wk[niی!p?HCjV(bqIرCoT9zTt!HCB֫^+dDfF0F$RlL }50<HXC%)+ #ʾ*gݑ` 0Xĥ;?" (3S:T^Nx{^'$،unxN٥n u"D FI$*JҘmv{0 t6#-x=.r_՛k}Eղlws(H<~ -urJF}͏-653@kzQub<%oP:6.ӭ̊w~.{5G4&,~xbVЦ7xXT(&M8NC؝PB}Ey:8a0h'y8*㩯.nyJ. rrwJ6Dfi3Ym$p^ WUg"0qdn\b|>69}޳ątouc KL 5 -3y P [)M)i&}_UFMFsi3iv/@*0ŝ^C8qdA}/yJ0.Wh},51(vEA7>:8Gp+ds@ }ŤiKA:9@G\D-t%p)绁J(7& Mң(Rj ?}B[y#%EӄrjҴT#1Q kYCR\9|Y"4g+ktR8WR;VM?\6EV@+Uh(tpDcZ_hͽ+`Z6܋6ew_Py9vПtց+CvV zmY_$'.H SN_41"dl2D"ߛw?1YWݍ| Wm6`W$5g'/S^EG0ME\YM8﯁*sRPB'diuόÛn+;i3э k_}k5b{hOELJ#V# 8`JJMS҃+Wo"XF&~o]MTZ&39 G(XT׃ WG=NP>{7VhKr wԉv:65rZ`<4@ʷ_i.?[w0B'rf}1?VO> s{)*'٘.F!&Zq*"w\~rV;%c;^̚y@3e2혔"HP .ߣX-4+SHڜt 8a'ePErZFv10:'t!! Y;@rNj7C,T:L#kE5a~{* w`o{{?c(af,.Wt'pPosŘGt$hw1C?^; \p7}޳]&[rXr4o-uN_dIll;x|$ NMU7 RbE:Fv/Vx)@z9rGAQs#WVP\Ϫ\Z(φU5yS4O4CDZ/mifx Eض?;]fHF-BkPǃջm'Qg`v:5#Zl"x%+(=>؏i<8i FT:H?k= xC(R߶+q'UZ[0݉$C =P%*bFѧ9 _u0q Z i,-A4H5McByƽpxX2ŸJef.LG_o$ґEwMzF>ʥ,EP *)[ 7fI|`?8Fq e.S8V7#51y c>WGǿpO> fS2->U9B.lݣU~ k+.d0ۡVX\HKέ(JU*s#kydT  \K+ɔւ r&Eu;"Bۏꇀw7=/p,,aP 2.6rB`q`\%m#?:0{#0DXCBEGu~?W/1hDꆋE-*أ?j mpƓIcRkAEfgIs Hm$*f` T% {SU3.Ldѩ_sj n ~6<?{~#zG LJiZB QKx^/ ɗ,bmJ ArA$q߄D΄ax|׫]rFl#W~Xk`UȌ]?d:Jc:7&:(K?HlF{k@hLyT6)^ C'$0:3㾴7B; yD- gTmDǴ +TC-4s X 箘DÕ&{ 訥CMz-Jm WC\K?~gףDDp+T's+]O.`MQuTGZ-]B{ЧjSFK Ʈ>0# ҥw -8| ~P5pQ^41hq%& {󅞧Y96+'3O(H}pGax֡jڨPuDNE2i˽ngggBdBëk *oq8;@CkMI;]N a?$VutF,?r86A$\߶Q6̴*XfcyQkTYgX:TCoW_G?wGL? H~7yXX@R$Ȕ`շߎ<@(M{y0e p)׮O0oH bG5)B^[{!q!ԇ9L* dv"`Y։vc܆?|0;y j3E-z ^XՎ>O }#tJK9^S^jG@X]e[#)ɴx/3ܙ/ޟ-%R R8c$P{-X>AèxEQxf!Y3}:eQ2;  '[ݕR/ h1Wtob)ŵI٧,!+b!&9%t MA?RScfzJ/yG%׻%`\{$b$m d+<ւѨ@i˽fs * ʉsMEkfﵰ-ބgB!̠ۯcr1 ^T/[[ҀE;nj!ԍYv|I]@{U8gL_ H:s&)Suͦi1*H1>ksɉj`Y#@ƕJ& 0^NbOv^&0(wz)$b.e:_j=5Q}.%5@Vk$ %EKT w| DZEd$hZl墑(K8n4O5ՑT @]ddB]ķϔhDŽqEgF%NϘ=^y)2Qu(=ᬝ{\]ۯ7ŃӜ*XҁBzd(1-]%6P^Qc}:/ɋRϵ/cs("Op7QtA#ًFE Wwb4>;5`aj|j&Lggpa0Ķq&/j9*R*H@u fPI"ؤ_b#栎`VcgZN ʧ#f)XF9ೝfO챠{ooDr6"=2II10pk@m1:êpr/Wƀ~x:#BH-8:9Wxg½,8Up`EO }PZ!׺aZwyy yd߇ SfJ>Up;ҁC+$Gxj."Òa>4P w.V§0!;Kc-2}siQІT$bvt" [&! Կ`>c'*uMKh_"Bkmse"/[W] ?5 OY.>I5jik_TSѶV-wV<]sgpu&5?Jh:3(N0՜䶣M=ON&QS3BٓV3ӡ>7}ƌj67 =2H7CP ewNq: I;e\*5/ԯ9CePI72;!U8]"02b1_PP1E %Yy[s!So5vzk8tW ggSLpF'HOf^gd:=Y`#zŠUG_xhIy=cQQ?ht}YSEWC\/D"#[ .t9 ExE b"2c6ܡ |[)urP I9/X l&Wb< ¸HrU C*8ӣw~Uy~EӜ)I7hVc^ORDSy7?-M07Sk9}0q_l^|S_'aH*QdVVȹ95IMB{vwgZ3?BRdfB%3ہTxps3AN:Gc vgﲘ Q;ge<.ːK(Tԭ0C2 )OeddiD q#IoDWEG.8A2&)@)nk8Uk/`,­JQƭOG0 ݬŌ=6[JYX8r.b:6ԽQ~-Tlv!%lCaFj_FTdY ZDI~pA@qBmfYzK_ r5F+f>k3R/xȌ}/m7Ce+5SGw\gipg*Q@@4J8d aw )hI,S U2dQ̎Y-=G%]\ -0 TdD(kV|F›2DR\4Ϝ |g^?,JtD1t]LguzXi`XYRpe^baC)RiZO*Wc`x^-D/v̎PSW?$D!v-d *ܠY#U jM!K7[s{OY A*qԕrw $tqZI7>QLK4A,ڃz&ϸpcyܢM j '>寤ú~@$t^\DL3O$*@05z\ /gr?FFkH!B7'=? WZ 9>ՑހQTcD3|5$ú|$w+ '2ߜP)Љ]޹JةҖcjfJ;~?sqHd2qAI]4?/|Nh_a"vk# l,A}] hU+IqREsnNXv7Y[ː\F:A驱iНV)Uԛj ,5-i^.pld}(q.bUa2lvotn>ײL+$M7:qPi0~Kn[K^9-= ٓ]sꏗd^~R?-[!mY֠I}{&ud\'_yˉFX~Os \GhWfĈ)/h=Aa@7MQk#2_ALrC}%kv,ˏGHgYY>D~W;{bфeP6a8%ٯi.+w [H,OfWfsd? *@^OcԔO41Н{gv %H%[5ǡP1^!dFy/5Z~sJ ~A^@ա^doCJ%b4+u(:`@C)*rtC9~"Ng>A*oggzH{nOa:VxtD%ʝT]W2 U>LVۉhxKH5X0lo:lB\5ڜt7ZF+h6qFYqhCSj)E0 srtVtU|p+^n lBV('9Ji^6sXUZNMugp ]$ÀpMT ײ94Wgdt[8]_#u%sCH>U9{G?m._KvqN1ttpC*P }YCPlkgdHgamC^;?Do358  3qi%U"=UiƯۢR)Q%fR] )SNE-xF^M,Şx̓jAp?4վbdURǪS GKvm ,]ÜQĖ }bhܣ PV!Q3\Cґ˘1@}G5ĜS1=K: oZ'g*7 ^}0,]rVcj a]i.vEh?U.`db덩۾j.=8ޫ@-K- A܃NmEB:v/}'B#G.b\k#-:(7)G=q3Lƫ۾|݃\zC/4񄑓dέig򌺊[6:G #j4! f_x0:0{4"k iwGѕX@M:=9_O%xG."i3 \yXp O߰Y?\E GH:_SlSjHN @Mq2ƨв嚎C=~@R[%\3q\iPFb_0IV7M!d!jmV@ 75TilchıyxԘQRF#`jasόLw0H-, ȯP+M;rԆretv#sPNt[3>wp)%?*ehDp@@H CHOh#Jq}.0- SKai+2 "s?߽Rd3YOH}C6-[0vKۇh;6гjP#@^ rf& Y| b:nrkS2]tS)ը1WHgA| ]HAܢUʇA ?E-Ƶ[9y+EW]ePn2uچDpC֦]XL %=o1G$U)B7O7]6m8([JwF z04I p6$%7<~2$jViz%G1:Ƌ؍҅ӂpQ3"ˠ 7@ƒG _LVe-sP۽Vhh/ip$LMcbJGmޗ-t~We݀m2vz^ukxڡ?R~|m%Sa@J ,)J(@X;ˉ}nZ: h 9g挧[gA!j)M8|@KNDc 5<:l:QQWtj8L?@ҽY/`fdeĘ)[H@9L By[C}r)]ˆs0X$mO8R!\{f$(5Y/_gݎ༣0Q 509w|Hf~N a'^(䑕<&dϬ ; %DmkBqUT]axt7'DHtɲd%΄LL;Lp߮Q!JLFt@۝cCzļiVMjJ}E2䫰e$Az#ɍm:+H;.NpzlAyk\I淣b;nsKum?v0. #'A[AU0^lE>EP㏳{ ͓my#j x\'1Q\)" 2`gQ <aޤywRv=mWk)t{Q:Xi72a$a`ޘἥ[{.i_ `O 3 ^F'  e mh-k-ġ MGkkg(Д;#dL1^mУ*7"Yc^%G͖ a48% ATB)9ٵ@ZG,l/ah=;;N(;)Ð>W{5aб wtSdƏ"F_,Lg'ަZ>]UQhs']u%[.7)ȫBy#7;_ڡ,&_2;Sw_ă<@Q:8-'v :*j}ȗc ,c R.:sYAd } ze %F^g&<~{5i:]uK/j"·%۬(`N[qgs @b3}j0Dtokq(lY%[-Y9M+PjkX+MyEt/m'WiJL)k4KbwҨ]F*%% asͬ )-*>f%5|Xtsy_WLč(HXJSaj.} BG> [A;?'.xqQ{ SG8BAH8s1JQ݇^YRPp9$tMȻ}Ћe7U> D=;i1k1d!Mz3Lc$8U_0H>0! VeEzH]J,hD\#eZ>vmjnFBXå78U(.8t,8Y_Q+*W}Mz>O~*Ք(g4"핑h;Q`CT.'D׷)hSkݫU 3;eYCWu p*i4rUOlADmҕN(94=bI8y+&’vbyd㔔|X㼽k:Z?J*8y\Y4ȼ> \ds,"[pئpF zN/GB@]S ‹tvUVE5g-_`"֦Ug:aiI {^½OAH4h*q/5\tcJR#8w@&uY[Ĕ %tdA%qkV FQ/f@dm̈1n>dQ-n  zGΦR"@}aIon h "H^ zz#1]p+1B2r4W` H- }}J]l4D2[N&sqq]W.kP~WPG'tX|Urw5 *I }i N趩UQ\pHMK+J9DJnK4;s|=*O{Ckfg,#'NΝ ö>=1LoN1(i<|ɘ-hx!Umx*G S\ }\& pUVLbrFĄȺ`I={c{[ v!>" T:v5E@EGjfk?2Wr{Ѓ}FklmgkcC4XF||#" m4>U+'1D Ww;|'!q LPr:8h@*%")b|&uο1dgݙVRºVupq ZrdVr}+4|L$uIypd~遫֟F= gh.$ɬ2Ʌ{Xɽ'Q-$w~S1҃HԽi tЬC"YCUxhV<#gx⬬ be IE9K?3*+xFwC(KHLpU)0N'KPTiru{WP4!l,\𤵤iʶ%k3C@>9/xptV|s8?ܷ('vc9h;.gefd?{+=$u@47Ioj W.oXw }fs ^F of׬eɠ)&3:RNDiv-:jTxIi.v:(m;.,Yӵ\wR&ks H; _>_֋D0*b]t,yVO*Ix͂:UmZT3`~>@$+M+rtdRo6I{זdVIVތSpEq~TZ_Az'o㗤Q[NJD?qܹs_W6eE-Y G(ι{S6)Fj eol{ +g[5eKsI 0 rqK>Rc5vNm NT[2yp t%dljk {fļy'y&'E$J'+]܋3vQ& Vw04^?=JwnX% nŭt)NwD ۫>Yd*لoz+;w;9\AU 2hO=LU@XI#!X;n[ vzB-6s`ۃdOqEF,o#u汛>VwI}+._A "۹CJ'J'_/?`AS,n}/'B4sKi vG=>g^/TD-,Ɋ] հƾcFwŲO %HZ߱xXsnr^Qd Eq5H1hbrS@phl%WA>L.7a[fԳ9LԻT"3g=J#7S07]* *4 Uùrod ְ/}ցJؼi>KKh_{ zߛԴ'c@En`z}]cKnF ϸ>@UY5Hi էcZ'05ǧc(OU^$~z&NZH늠E RΙ?xYLuR/s2NUld@6XFhVqC;%XN+N-ij\Ae{ 1 48Qjic!k?P""窷>ƃ;&|#sXKKX.꟏=~,wT <\EFOZCW{5z,qݻ2NԐ,-| Yoj mHPAa;{=BMi0M?,2A o|c(x'զ E/iug,aijty5|jSeGKc)Bq/f Fꝶ,lߎC<&0l;#VnSiԼ?Hl0fv-d}0/ ?G 35m[/_I4FşPVhj ˲$^|ƝS17PĒwqtp~@sE"bO>i4>/WcfbN!pU/w? jv x&Q+cǩZ{ 6,Q7d7Sv\$8/>YǶкM hqV a*]plIHF˺&߷ɥd3\qpџP,r*8Y}ʉjԠu.C}yB! EaX. ɘdfK/6eCt(!+K*av4m#o-4kAbL|RTF_W6l|ɇa>@HE 1rhbUw*3>b#Ə),ȱ!}7aX^&-<چO%cdrmBY0˕l` QWKT/y7(^g5ZL"|̠SZ ԇJ,tI0O3[(bo>Gsci8ؠċAEs&%ea-ur "&^';3l<6y9)cKtLSO08?sr$w8C=RxnƐIz(ϡa0'OÍN+}zC,COW޴EgH;u$JF`0$B?QQpYJ913.[_^g;e2!O'WD=t9/Ŗhsu3 \Q3%J1%"1["r 2t$qc .|xWSfK8B/3p:\z'2 gU$DELXSwJ:&Ԯ^Ԗ}MKQ& ?&W)Fi<4>,=rRskbxP<thpdx֥R@1e;@i9u`)a%57xuy{n<هgq] X rQWQ Ĵ<ڸ>+a*v$iѶ"{؎FLz!07bq% X:,41; 5iE-#Stmdɽ,"B6kEzjZEi03%C tJ(*mS>B3 Nk5O ,?-y0r[\kF_ech=#:ΠT:Iɜ^G0=iMZgI.['y;IA![N&T˘:>`㼱|}*@te`:B8PCLtz zTD˭eaCs&W׆`TB;P4ifDP>[56ʻNYGԢQd"\6//88Kq3¨X8G:,'״e7[feٓ ht'T[W`f! н1͐NSڊӾnʳ}|W`ג?\_hs`\͘cZ+;u|6:f>W(Z 1 &{`ęh!2W?ࡶSh0e~pX*;<|:!Eg>2@&rTD3HI `=H;lyBhPOhН/=g!~A$QФ>Ф))qFJB!Q乛#zZJHe}秿e11C)+.,i :S`pAEy_^׵ ƙsp7*UurN5eq]|]ܾ-2"k}K_c? go`B-zX@{&96Dj'3 > 81Uهe\7[ 9?_3xޱ-% o_Ya?œR> UJJFx ǩq[ gQ}}.]a2>_[dv6k5-zKfwru]ō@7רhjڃIp^]%MelKa.E THF'Qǯk(%_2KeC}*Br$* tW77R 8Nl˿\Z:R0{~&)sSYI"! UGs0TV&Ej1j7U-aA/;mZJ>ab'(6~ c!E*Mža{6P{|uژ&BHy7<&إ3$W:Q۝T!^CaFI~| _OehQ`?I+{NI8= #}sϾ3823A Eޣj)A#9>Ntt'Ic2!vL`>bĵ>'vh]>5…ٔ8xbmOTATjK"ɘ#=%_Lt+G7=8$ijr? idkdٙu/ԳЍV$#|5*+ Nm5eu03GD! Pʇ6'zr&Q,2Nm2O!L:B|o㫷3{k8 @vo}wl)@_ZFPRzb›}_[mQo;;5>7RϘtWYF4b]v ɝ{K/EgU_=Pwu Ǣ1ąX~zN9_`qdԳIJLb(OdDkbQl+!ac5x.}ְA.%),""2ӱӦ*kY1ØCHXXF'"aTyec:b'c J?Y}})mHl?vzdp^S%'%@d}vi*T:%2loѮf̽$}OBNcAJ2芕DI%[RVs9ؑYdb5B*&sCߩSVӤ=Olɐv/ZuF=cbU"MY_>TۯZr$ g)'v/t/ H`5>혐e|֭n,׈d%إ=ulU2ulT{E|WW~JVTYcCt΅ Ć) '5hHt/¿Q\ .Fd$ Cη.c]5Rbo(q|4!Q \-hJ뮐K&)ߛ5'pGBTU~t҃جrI^_Aem8p*(zN9, rn&'4U ef] lXT.NyZNQp$wl¡ℚԃZѭQ΍ e(gHI' $YFt /\BԾ8QNwn%~(z{K(-Pf Do.ߌ eD󛪒tTQI?X7t>.B M~XڪS$Q- |*#:k{ ϒN&1@\z;Ϸ/P~l]6dB.POl<T|+{PGAX1a&g\%/O PV>lra07i9V9ZJc AjŘi[NT\\Y73r>[Sp״s)%(7rZFܭ>_Mlˋ1Ϳlb6FZsѦt Uʧ55i:4HNg48ӌwj=u7(XJ[]@m,_Yb$0fxAB _lZ[ETr7%/h5|be% tGo,j*[{4 ^B1yἶAH@z rlu;O)U_O9gey0d=ô>n@ԭQ8K m4DJ]hub-NW֡zkSQߪ+(t0/6y͠%l~湮ZY}sx{e2'eN^!kp'ȧ0JY=4s3DPr/~9Hʁ^v (NDJ[ *v璽#1|*2:H'jX4ogT?2 91D5D[;SԥYqM }w;WzofP6殺b8 vgPs!v a'f1q8aU6h~4'1_p\%{|@+{7z SQ]`3:N, DR?[]}aK?YN:7X-fd KJ)cmĵ{-mp+:YzW^ n3|oWQdX+ǻBgD[urYh) lDnԶy;N^d/R+5nj8=o/҃.I_gW@N<: 9+zvMp ;D1c Q l9 K}_!hY+W_;s/ETsaVkZAƲC\9RXAF˳=?_[$;d+i bV`o;:NCԬX`vf7QЄ[)IhcIidv#r@^C<|% W9ʽBGC7$&ܕ^Կ 3aw>s)ۚ2B.01OFR-Sy/TXJ+# G5WO{_W(TH Ao9(-9".(vL4ѕ;k:K4 :uծ* LΞ3cs aZE do 3D2E#s.O4dk޴'+퀅j(s99Ǟ-PɳxF[΄}zuEj i>c^勤f𲹯pf>jK-z^xioYN*>JL.iݘJze%(f2{- ʯ5>Y̧.(pB*A>9gR>@XE}}t$lȔr+.3 "ڶ Od"Ux3oEݼ\?|t)yIJRhRgN>ew} Nl21`q7 9N"ڋajp8nK l"HqK$>KCH;*U+ڤYz~`=`JhXҝxEˁUU`v` amaO'h9 O@2 γ,vA=tƴCWTj˻%Nne ;j>1V۴Vgz`Zم;Ԩu'ZO:!VAT{4rѐ`t.B]T=woi 2ON'"g`r0ݝ7 mM?Rmcگ-vJ $Lw=72uOz^gM;l7m }9M')j5,eDZr<PB~zϏ8~eu=)czsoveqn7FtA6ꂕ~6؈^_n~ug'{A<2PV通ۅv: $ߧTx'l BƜCv1@'kI2s#>Lj>8z|jfpѶzjLx/lN"eW5sHwMIOpM{l-ﭒ`];^diyyui1OH+ ֣cdji9]Flsۤ9ұ1q,?(Ar\pϑ(aA,2u#@d=ͅ5N|;Ԗ{yCzVeQ:LI\xlpSKP(%O=ߕ}B!Imoc]@Gt,p'=@{ư%* h(j(B)ge;׻ڨD4?R.f*Dge='jK e&d7]V$b|~:~'F䕓btxOuYx=tl>*^#ɿaX Bp |_:*3abgu: >k2]@qN}i/kX*qYrYO1.S}#뵽eo $hy7 Zߌ% ;Vm)ZsPma]05ݩ42Tp/C>ȋಚf I .dO 'rz 2-]'|2TӀ tK>ՇMv_'afKDA >Af'++n$!g" "v-Gcd Ŵ@zWuCCt%c!thPG PLx䖐/1YZ>%z] lRQnKWzfy !SͲzmR >ǩ[^\6F!w  ){Dfmdo^ *RwИ7ɝzzE3,|g.X.˲`Z3t۱S0o Gw2JeOܰBs s*{?ɜ<="s؀"P0Jl7yF~Tu?h_q֤yH&RvQLDU` @qni` +b L@ NQ=f%&ZPV$, W-.uOa6h{rj. o\kOhDzA bƱbQ`*er ;2|@cy_QV2 F=xN>w =T~Pt'z.|$֎}Bg+&G-8q%Ii~d7]3g!zmj:a0_ͬV5jatF*h3@$_VB ]_j=.Ɔ̸{GJ$$2 r!˸|=eU'< n%T2LjWov~L$6dGTY(5(dʕB{ Yɿہ緉$S8kWMxT;~=a\{J~sR?R Wnw}Y2l q!Mǯ 2N 8UCd !0zvV)"XԿ)t?E'F`fyHjcՏz^R =$_#+rѾ#N5oU=qYsAt1}#ꮴ;tx8:.z"ԊWʩRF&R$YṃOUlU΄@XˍDsH_#C5kͥ6YV~Y"/j~=ˬT%||$"nxzb`U 7$GCiԯ\#ʌԚq++1)'zG˔o}K{,-!@t!ӫv5h+9\ m1, Yxr =MɌ2+=EG MUSG6nPVTc^"[Y2x }:>s =@ i/bU;ሆrPYn\k$:͖ "v6/+cŽ]/&@d&>ޮJ oOE$|(.)Sr(3L,"Ak'oo'EČSZK }◭2>T0Sk`F.ȸ+$/-]mkf՛=A!1$=vEvH\va&U{0ij |WHHb3 C7#k]rB:RRZʨ!t_$PRѷ[\ ^bP%C[qIk\MzJFHi?hz1 ry#Bbm=eE+҉)(2`c1wyA30h@2$3ڔnkEpT0?I*S'Gb.<):Snxr/Kzm_dD(/l@Mujr=hx ybãAs,{ TV>-4f7ԧɷ;A1F[ծhq ,H&|M!0G$ '02 !:x. ͟3:t" 6Q)&o˩DEfӍ`/vT&؟Ɇ֢Ql+ÝBHx h-CFFY\T)bev+*')_;%to&oLDzXQ#N{Kwŋ7GNz2)BrnbmQfm>/V?Y2{Pv!L(>Q r2{+߃ڈڴ _hcb>YOSTH?X:UVTY8LgjlpEm*7UP(j@ 1Ѓ?q5kX}]sV758źH}4XwAߝ)0jݐedɢEIRS?͏m_@Mr7wvaזeir"I;C_⍱º^oA4D'ǻ'mi< 4slnEɡ6X?pm'G#= *:#^THDZ{1Y)S / ƜZoP$c>̚C-9@0kcUMb n|H޼^2 \k5ܹB'5zNՇU[cy(zZBLKVńN54'ڤvkgGꕺ/ u UR2HR|[B\:B;cܕ pcJIؐj9g5D[wO0?4ZHb}Рardf2¹rJ3x/G,&d&ﱇQjg2Mw5N wt( {noV'/U1V9}qcҺJN~'?sQ+i,<,'yK8!Lh3sxFq?17LU#jt9= mOm*[٧]Btr7\,ܦI URTP6<2\YN!jpo1j j57úK!< 2Xs l=n^F?}( },2%)U.qN OX\rZ@!.bWDùDQt u-k/!3`2>- Q݅ ï}ɘH2dP:aB /#Sa:˕ m2[dJ(3+(DGiT)Yv0 J_W@xOZ_-lˍo@.A(ҰE6o?ҤLA"-&FN׹Ryx'AVH(/M3wv31j]w׃-]~w`A0c(y.sT׉qsYS\4[P5 Vl QđtSKv!˜! SGVxua@^ޖyL5J"[ɸxςLx3&Y`|i<- ?Hl N`}8ٕhՒ`ίWy%Sa*jVv6~׎<4p,v^E4ͮG/ B!{4;&54Ś/dNk =<=!^UZ!WËǑ MRfû!2pM s0j:n^[{8.xGst[xs p*rcEґBwqE6ǿNCў0^uFmXr:R]DXp}lgg@ۮLwsꤥ&=}V ,㚠ϔ!yg\i\&=9e/P_vziǜ1گwTYqeVD۾H+%lJ-4abd$%tF-\[M_!d֋ߡm?T,,Xsؼw45M5P4%QG޲ j5QprMыMy+ŔT`Aq8YW,h<$Q9ۺ'Y`U-%*;X`բąXHlFtg=]r'boca20BfˌceӅ\NJHLVmY,z<1,:3+o}|r'{8(і#\:V*βaio&8{޸9'qVbK{a4$wH/T՘h*WDqg첪|eQN"߶w;|RyΏ\ip:̜g :'揉Y[w8 Ɛ0194B hK5nB%"VfXK=}@Fu'&jCء롊rnVΉ+Y>$r׭/`߷"'CPX[ 6~Vc22'O:>ďz%lf徃ռ" )P,[UHu8B6fgG2f09}(JL"k{GX@: 8]=v?~?Jzt ϟD_H(0i^%3 ɢNLJ9$o _8/p6v!K>DItyxkmMB⧑Bc*=ٜ >Bm}r?"(2;?,On?Xo*wh) b8 `tegڸÍEhm'`Z_sG\ǴT¦8 My hx!_;g[تL4<k~b9Dm:e77H[bH]ȻfSTM7dWS9o=O3ÐJ5c)nd qs9ͯ1E=q7AR8/z\Vx$nZAy:~31E5sQ,*-^BK55p"Ewe@FAV~Vy=/}vDF s{k?}k.DtRw qX%7 i'rufHguehq 1Y3/l~wbi9YvW~9O}mYU D:oD<QnDV׎ b !z+_El fkWlIwE_6rk lbu`EH28 z4R{#Hv6.~t * d ԫV'vzyϣ@=tlf*v7gW˺(<~nŜ3%jS8.P@˘"SA@G[! p 1p$FMۥM"ľsMNet;rV"z_B"=-bA)yXǟA UN²#`Vlΐc0v% $)u 9)C%$}7(IڕLy=$18'5ՁC{׵IܙHeTVQK9S}1=mR|Ԗr|hCm;1x|tZ Pqy~22~SLxER;KiYsuL0̝OjK \Nx8y-dN_NZ,b8oj%X8"+g { Zƴ8f2E.,'KP,i+Tl5AadNR JM?Gq}mmF/0 JADx"b8yE[k,•:P@ fYB79J?k^! ;*[2maW*'%h=cr}!wt}G8i(r M0{>lx#axj87j?:o 8>DɇW{Ơ&8KӾ3{ S h g>  c=2X@]E. ј؍ Fx&5gj-yܟ-YUp߲vG˄I)a ϴԥbWyri Ӓ$F.5(Ek`k(j$a SC)O,&GGQ4؂'.B g 5>]gKAmP?SXlY"-\*; cVjdڅ'=DcM6356ç2$^8qe|0NGͭ~qys4`Gs'DYObEDN_ŗ,,s-|q+϶byt=oЊmHac.kB}߻92g>a^-)G]3P8s㻑ht% vYSsq ^sGZ6KפHЦ^7ue#*9_z}W# u;ǚLPSdtF|xLkKR{!6fbPSЇ.9/Y\DEuӅCR?I  Q(7Ǔg+y2TL2MVX؟IFc'+js#㪠oM\rgXv,sÅx5qw= ;G(a f|HE9>9 60 +॓͞^jA5P Ǹ/*1Z/8vW:dr}H65Ⱦ'OiXf{h4<* '[;K z8TaxP#_:^wZK LX;x,p Q@`{5f׾$ڽ,}FAj9\p2>A'%eG'0X鲅^l+(mI ]h~uuf͊Ʒ"1.&Sp~EGKIjSPZ`]coM|ĬVBuFԻ4gN="?Mq q]@@/w;vS[%ZN ϶-"<ط+O~e]D& +zr]KQAf#~pׯ0/VE7vF} mT$8ky:5/I].uGUɒ\m'J1[Z!}6!;(w}g5(DmbE4-5Wq,k,x3m#VLf)-^;^Yw ' XQ_hJ^MT[\*RoiGD[=NN-w ,%SErB*JLlsP>Bi7Pz\qaxgzIOz&k-4lk[#b@qmזosW?TNEjDUDV z~,G +6GINmCV4ހXW#.SVܴ Ta b qd² - Xᙵ| ;"/<{*QE(@6E`#:TW֌y[T eo/tD~m® ] /S@[|zbIҳzy7w &|65wy4cJl,hi>Ne .ȿ=IT =UZ&J 2uBUZ6pfgľ-!J :mk?MK^ nbD.5zv&2WڄBEhXWN1šQg^'!6) RY*ճC'Am.kG$qM}ꧨ0(VEiqT ̌OS YEˈ_Ns[k5&ʾI g+(3+[2AbrrѤ&G"K/Zgn 3~E; j4[6rL:Ӧh@UAǦB5;?:>}TԔY} ?ˁސ?QGc=ܾvh-G.V#[=]X/L-H.6Xv QƖZnt>WmL]~\fq?] ֶgud)xWcc)eVpDtR5*r&es'm`tyHUSC>jQnP6+=xj+be)lQsDㆨ4{ 2FHhosB]t9SQ%c!Y9F69xbO &Ħ/*,sz}48t۪bL*0Z..2A`(8R"K/EqޜŶ39 +nsgg~O '?Dz%`y1|\3ܩ¸ƀ)Ë1o`6!@Z/̛.lsێMdSaJ^,Ev;~r4%Sj?tU:~  @UAr寑~4 )ʓTQ:](-bl~#tP-l4j UJ<;=} @\_!|;|s^*lZ3\(]a | Oh = FiLn, K]w>Ew.\bw \P7k%")ߦE&`Ųe4C2X7lO=$ևY,6m\<$R3?]\3sU9,\<,g (#8 6npB_/?PUd1&HgŮKo L eh0M8yZa|?SE%y/v]3Exܹc,9O?WZĔ+B "l\z 31*Ȫx@UB I6%[ ?_pUK*2L );5S7M= EDȬ@>Aޯa+|b:iQ&,^<8t?Մ-gbш9YDvm{A򊊭܃;qi]|7ܗlLԼqZ60ԤKC/j`8z_p711 Y;CF* I2r- P:*Eu+KV g !8V%aۛKD[r%F< |W<LF>mfJ|}fC6g]YycfߊI~'_:[tNP`Ltuy۷L)˂06!%a%+hg7E\FwȂ%U`pS)T P>c^ pV3veێVtj9 Nۛ*E%DQŪDF>AX$5362ww̢'v5RaCKWKKw|*䘴T(stTJܪ`[ܛuAP{7 wzp]&#ϨP1oa*r+e28o Y%KsiMoC}P&xc-pٕQbUD2e1Sl)bUN6"Qj}_j1k-VjyɋBeg2,E3s Q ܋jN (lZH`̴a퉾ũd@GmQoSK‚1R>beô$ %?<k;f,Zy2R5R]k˧58K85xv xHPu'.ܜ!b 0'6WmqGeG*%UoU5ʭg\#څcT =4&$|NUӋe"`y}kڪ>ʥ~Q_Ɇћ|UBE`keOiŤ+\X9B{kq,*QKK9;0f$AY6]PܛUtqUeCuZ{z #ItDכ7AS^z&1*wrU菓(OHLaB2p\w@u#=#G}Zf6Ǣ&Ԭ*JWAs\ |vea 'xqQO!(%Q29X~׬ NYmh!{s?-," oݝI3%ɞT‹-#!$ _sGaFѸ&t7穲 E澪8l(p ^OOIo*n)=אM25^Ge$SLܒ"6'nhd 3:$ćn=&7-Qg_ln֚WC#PUj__ux[КS/cEm=+(lWFĬgS3k\(qnuDFkcQ[. c;X("HFHnQk׮[9'({uǝ;]Tci_H^YbˊQP T!z!xBɆ!0$5֘o xap"o)WG-T&-'EY85G/;tM qwަixgB|‰Yts?X /0]bL^O83_fT$SjC=W{6ыӁ pTjݗCk&) lNx <+&gL|3*4s].ʰ0/47rl_n ҔOZBs]sM4whaJS@vݦKa2vcx嶬n|{ ќ>|)A?L +e!K+R+W - J ʔG7 9'8m)wr'qȮl%d![6D6S0V߬É&]t@87<3Odxk4ӥW6;MfD*oCPpL c\dD.l9UNh)jg=i]#v,5`D4KE (qQOq Kz ahi>:BMT4.쫀@XI+vIqy(7y« }lbloī~B$`${n5MϷiR:K֥Đɹq(,BQTNmA;!\?"JEժ ]ĴRh p0r[wqmNr06"楗DF@F߸ʲi<Gw׺2ݰAv+3d3Pk5',pyw/ѫ X9Ue6D7G)E9OJ1ԣl, ^=9X?b̛ȃ8cQE Mw|[pZj: k79x(Q,su-pGH:JǑB}ȉu[;j$ c{D_ >FR@qQ+4ap9[y G}- 0U8ιz82FhE.dݙ8Q8㠅fqgIز]g}Za"8+x'X>7{% %qxUSf@;\g]hfL@lH@DNj'/Ad-1>k“řƠۢT+f?HaVoYVUpy@66\^{&•>9hog,ۼvҞղ|ۡ` QQ5ǂ>TKEg։sZBʝN.h>y M&Ca3G4;Dr R2A;I,4R8blSYLzӆ]T#`7ٷbX^DR6asEԕP-#MDuA /WO-ULف_گ^gm+nXC@>HEPrf\U8WrV ?0X=Uɠw쫼)x)O!Y?#ܱ* <3@mA^I/%9k(6f vMKYɰRi, ygdؑږwϔl1'M$𸠻 xìwj\&UO@uzen8O_]bu;9nqPm+r<($dʞ{=;ЎVZ)\Ch0-n_0fxN8tw7UA7sp`̨;?NA˥cnZںJHܹ5h4B3LKvIE̓>xbl<ɱB nӖ퍕^+VsT2I\ mwb{YMf{<Ո>| !x:g2XAW(Vh\&PcVX}sh1EDeO:m0H ގM!ʞГuB$|nb䣕'(]s1oAmˍV+}ľľ6q^o:"?溑Gշ9W[^1Ĺd0R?EbzG򭮵D~o`\|RwU6h5 a[RْrB>chuJRDHO0/i5Uu \TfgSJڻz`x*m첓&.=%*ˬ3g3dK6VdUjPpw9>PNLuJ^K ^ u=T^qo QVubD,4SZE]ZL"kjLS6By!.aQH : mg#^OAe.Ԉ*TieGZv(% 7_e XijA}YCAC) h<=3DƼT 6q @i"*jjJyغIdğ"ɳR'+wci\Ɓɱү&0Mb|SDmDA}jMZU["A-[opOTxv([HiK`P8$tªv< ѬjeO bh$m>a߸H@'$ئz P  |xXey%!-]xJ'J2Q!-ar͇"SܔGAUe*GK}+Y;ӈt̶[,f.s&Gȏ扯=&cQ\,C" g%[0xf{>2&?+R/,a (yʼSۗ:2,zܶ@J1~l.ZXv[ _a^pĿ*ʆ\3˅9\xA|;}>ndK$~5l+6dʰi"-hwO ;4<R!n 2Q~e2gj3 "7;lZ(Z0U*$POGm3HY.ndrg[BG֕^ӸKFӅ\A WKH73fyjG6'}WU;_e[|$Ĝ gS78) R趛K#9VX̎_ vq_=3^‡=V V[L3K6.BwaQ$YzR 4̌; Gr?c\n< ,uBq:D A.jk$yR2Ƀ)ば3ӂs ńn/<-" #ٿ[.E\9;1A3ȻrV( -Y:o56q38b`nFcepjGՍFtHoh};[bfD{ Iw9="=eQ䖏۞!TH8I֋XWX3'JX M,ZLguS'r7_FtU_8f#P2u|5:j0':LKa-Zpn>LiwU=2VE"(J 9NL{8A80D(gdTJKB:gh>+܊Kgκ{h( %(Sfiۆ[;4&/q+}vC<<Du`;ƒtnBKoK5 9Əؒo^~ldS?0&ߣKzQ&*W|Jȁ-AYfbmH$Fa"1n~O˼Tզ2m~R2)4&]Z2;6TC\Og}`3w&(g HIf9 )İdžk T3d(Y'2eq=;8KsEJ#4t{ݖD)Kځ=_:~OP0 d豶 tI\]uUROLn-meX0h>WE؄u^ߌV2[-iY*QZS z^$ G&*OV5M)9\$O=l~/6_ix" G73kFJpf73!rn "Ia[KEKCo3KXm}}/],OfVWլDƮlaGse0C9ũiW?{[WᲨeb1"ҰuB m'CKMj0720]XlWbc"C[&3K4-1D%69~T&?>ū=ZP{U$ծ鶞2ZlD1AH~N]^K֩w94sE_f*G͗T[| DvOpI F|XP1ɬPHZΎθ/Ӈ*Znc9 _|Ua4J..&]w{1˼xcWe0ǃђTkx> jN,=,iS&[fC eW+/Q+5b3@sir4L tclхWzs7aBG7ث!J#oTL9L~+w3zT7=rbVZot6S6t%y(dYJ-ώ /oS[T?7sf#`ܼhgIVV6FzJ@'(6XLJ@4<^.W=ś>Yc(HR'FSAc~H4y[|d"i]UV#e;tجi̔sQX=qyg$lۤѱ/UQ~+2W7A^'&Z|~%Q Pd ? V&dCP\pިVE[侬\*rePXF="lj;:+D2C&] ! ;=gJN8 jTEb-'Ϡ3"rm(L ml"-?GEWkd+F5(*LA>[c +d Sz叀XMb܁)M7@ɯ *]im"2݀ģ1r&'~ѕ D!bR+Bt|6=EIKG@c) '-[*kJ^K!AI| ;PȠeۣyg]1#+|w_ۑ5ۨ݇vKՂO[h?t9'dϹ (nqujyQ|_&A~~ yaҀ9絁~0AξKaB;Q@gkxEvS|sZ6 UZJirA͙O D J;~b=0Ggh:g-}ync=>` yua&@&d\,o-@%l (+,ɧUO@]_r]v)ڜu~%d,#ڹ1W%OmӘC6J(].΢{Rj Ow2_Nr+E  T(*۴>QEJtS>-#9Df|X zȥȌ~KtC<]t7Q,58nvTGŬ=Ɵa@+9V BI ڴT@*󢡀±1N4ʏǽBAg;IRb׻aDg/t:M_QZcJ(m.ONVrGԳ['|>6J2 nKms Ƿ8H_&\1NssM{9]tclM\f\W?O;Kb%3szVaiy\܈He ʽ 2m46@ʞmVlR' |8ef^f\`_]Xh#V f@V+k5>wJu }|eѕ$ s^ILH&At2$ަv)U8t@0̓Dզ-ZPN~-6G{$B5VSx!Џc֩UI *=f̸L_gg,}DaS/O[e/cqVYyo[1@&m(:O o)eeƁ:_7,JKԱ5>#]:6p4nQDͪbviTV+tzuzԿY {ݒ S+&i$|6@UE8A}`_pi]%oN\;s7N$g٭Abdv'X 8AldE9Е_Q>lczѕLoe䅪UW5rtL=R@l4q B)K5{})ɂ;8^Ido33BYh}B2_=@DcNu(%LjB~Gx*d5_QyzO/-ΪQ!.{u KbÌ=>2ƭe >Ӻs],kɸu 683H1k0W ;o1AІWԶACYe(# -,`%b\lK=A3HۀOJ2'ҳb蘒=kȱBF7оwHƉSm[,Ҍ="KEj.#O%8jJj6VڝC!Z_)`\|6eR`>/*{jަ%z4~\HO"X/ߏ_iڥQ`sesǠrzw:ᄲ#q\I#dЩ\wקL> I5W3g+|,v_%5= +^ū~}&P x04v7g߈_ -QҪ߁<{}MG!N]aUWP|X%.E^ke-8O+z[sk% "fXNLID"4%;B n#WA/͝ xN`PJV3^+L`quk#@8-BsX'ɪ$">@ ŚۮqSy`FۋG//<7|,@^hclOr|O*9~E瘞yu#"jngaY2|TV#0`ύ l\`Z`'ĔZ]zmvn?ʤHeDxH*`[2tC %xPLz="[7sƜsqTHFs{\- U t 8oMؽ_ ~=wn4ߛ"ypR^V;i-uaC$!tp%A< E;4U-aکJ ݙ-銤E'h(ګ%O#fC6}ưL^M^k$}G]}*NHZGM:{֡5,} GϺ}@@mUJ IBc.3S7 E3 c2%S"G^ȯ"!wn/X$++w6f j 0ћLجJZ'_;[Q8|n2|.\jF,S 9}FkXR5L̶o>'큄u`Y6RwI4ڞoG{XtFKkOе͟,'77Ч`>1r i&de#"uOjz!7b. bzv^ȍ'h6fw>&>)/{bHx4#MNj1C`h6`p + \KHVaӵ|+C 2;BmA`/Ƭ.n$#ՄF-S;‚ϯղh'M/H~J4ցw t}?~"wAXhgЍѼ'Lx](dڠ3ىޒh3auWۺ 放HC2y6W^&k8Z7Qc~|0:z4@l64I=: X]Df}#5^-Qtف x]&7SMRZRnv ]D!HRIF~ |l9I+9FxL%pPaR]格BiJGsv9"v#846 "qyzA#lV,1:V&6~l[z,z;dea`K;bJSgqOpe ܑM6QQ3\YBLh[Cwf K3>*7բc^Qp.Nd4ko}d$bZ|HdKp_TgI b'_yD;ޯ>ϋCzJzhޚ}ҳ5OlR9?Jn"#:)_qg7DP i!$s[όN …sk ztI{@O_) &P^TF$"$)J})p@p0f*tʀg:h>'ӲmH1NtQ=5DֵOR0֣} :"26 p/k6o_'C7"ߩÅk"> rlҞALeiak>bXC+gުYKIo!7`|T~.W[O $8xub=Z@~oX{7oF n?$6j>N`Hˈf}> TEbRqePkYyy|jF|Qyv[70/vQ<l[gR!M X7IGþ<6}EJ+Vl^PZ62)\bLXn7Q<]$q;΄O4u-T Le PQ*Ƌ$J.*m3BVS !d Śa 82WFQS5/R9,Gd Enjsэ;P))߼HS C!eSl߭ÎחU%xς𣭶lfl?AQ6e^ _0(z3˸)%&*&g\țF6SN2r#ЗKNf5cő''kuǦ8B7yZY"m5 Iz?–с[>'Lo%`>*.ZII[_C̈́ل F.S1Ue S<( M鶸a\GaLNZ=ԗH2/ ʑ{$2m\J0a-vKGT)~'5Vi,Nq+%~j?8}i!+OAǏr|`X_k.NL43>`ZXG]\Zg#XȺSf޼.l1A#L8Jz 'c(9֏Զm|9>]%meiklK7ƋW@}Wi+$5sHXb\ SiU9*PQL=D#<<p9-\;KCiu \5ԍ`j8™0 *j%vpLa5-WIY?CH]N:χ\n̅y.f@ *Eƫ$[MȒf+ZyG8+Dl».2Qݻ2vYtNWn܀A߿evj}T5k{ٞznЂcKp:‰s- :9CbaG xKYPV~4l7teH?ٜ& *3z,mϾ2GVkyX+}lTʰHP\c쇆x|# ݕ9P: k@;1=ݔrC7=WxFD-$*g/\9Q [q'pFxi Y_^Vb%#Fe@]XK:^8Җ5xwO2 2Z.EbK+mĒ0R>b#qqd]6أES6^SWZx*I'xY2;c+^^c*6I0MznIVنe )7ٲCu2matX|YƮ@qGw}"ʔzA}Eһˀ&,n Tmb|G7Y#Mc'uF&m U։\I'EF@.eTyq}:]._!C;yzbT#vyzV!=G|9Fc+~<*Xy%v̪lih̅DH(Cyl~)Q2'cA8/w&ŎTm[B,G`яG"Qg}*ےp}!It;k|`:偛y l2a0u%~'g.2z\5!ngEبt`e"2 ibm&_RRF4U.U&ᔿjrʬ$9r L>/:iݷvPcjedG+:D>oDi|%a1ճmۑ5cX5_j)w,*TU`&+upu^U5_[qȞA#F*p۫sS$Z]537s7 -\-&|;E[lHW\Z]LZ@ !xt0WgMI/S bI Cj#FCXM1눞eZ_ p˭D21[*rUu:%4،nH?nC/_ڠvQfԖfhj_m7[Qgm 4zZ֎f%/i@ܟ3n.*,OrR- h |%]P!q<?u)c$`A5yex*N5`iʍ CZgsQ,o&:57fT߻Ӑ^xZ9\UR퇖@KRP$'Yƍ5?jo{ ]Se{:eZtq1?P,I<::|reTX ZW~3Fcq5_״f&3 zH~ٕL9ӅyKm:ɇʗ-,VDBYb7I&V\}gHكSR"%7U~.A_wmVLq2@o<6~z(߀]W9U^|[RL]ȇyJE(q RS9)\-].áNi,bݦW^/d2q-;zYQ@ A:ґVllI%\y ^fwqB>4u k?nۢФ>{Ö <_%i%w;Ahh㏣C{'rNSC& O[`KO.&)u7y]=DE%}{sg!rO^T@~A롩Uqͳ60{'iXX/;37c&n hl]_lYmڧ0M! 䀍[J<RDz$Ƃ6#N%K{F1iņ|"2ϝ5Jŋh6e22SEoqUbіx) %Kd7YbǼbR ?u֎232"jW di~g75"q0(yq.h:E`e3k](q{`㭚~Tcf# {f+'~r ձ΢1T UB$3%;a<†j\k`k_ì0J!D79+¾YW4]I J7NӠyAGn۩ƣZYa /@ks ۡ檕G=7𑞖wQ ^;zo}btWl1()1 EQ!3sa/ZZv|L;@[Ѕ' /뿩a^8N9(XhɭG& 3ā߹KֻAg][j%ۯub-Vlj6>)e~نCu;#CL:?W%Q Xl87?{v޶f+u33)tVy(zm]q2w#MT_vT<=Ĵ]:u%o.G؆2s} e1'(в]cg\~ ?zH;lD~A#4=P ;)+iJvgEᗴM`8Z"qt۔Qǘ0JQw=!3ߗw>YT@GCJuWbJmo!C +(*rJj#$b;صNP }+3Tql_ƣ{gҶbrGj*>~Yn4<|EJKV7uf.|jtk*pAoRs{duۗu#/iK@l&S<Ji'99u[LNj QHD(\b$a)"a~=/KVyG@m:,nnݥUM[tkl7:^ia5x":V$Db& )Vq/xdak&7J ##ϐ+.3 NIۥYJk'{]hPwIZ*ǒbqNѫUɚ۳,DjQ 4~f3ԑҔG7Sv}ˢ NK0߭m J.CO4 ~J)S0L$a"۴E5uP9-9WT {N]Q~?hi[U/m?6?*q,G}^D~xiWw \0OoIγ=P-ĉP JSBBVwZK{@-9:+UEsOi p:}l?/`)aNww6ezRe3?*[ޭqT?K<;\יsѸ3SnR j~N|Tm+H-@lFY{HD?v>:]-y;U-.Od0ny ۷yWujF!`?#{ R㲖P(ݽ#n:owbS!\luQ H5PtƜE#La7nfx8dODMu Ĭ^M<_X " ԄEfFu.o)~\ [ŧcr߉)v_^1ro[*^ *e8_v󨲴7 %&~ٜS~ߘN?x{Oo;c9oÂ[O{rXtma8L7>v<*5+8d$>ɸ̑ZKmXL_h|S`ջnhȾلrwݹH;R},TN@B5`iJHB&XXXbtL9-=MxB@eJN|_ 09tNk74]mr;q\T A|%OiJ|Ƽ}jb1PV2W93$ߓ$TY @ !'bokV+;6|y?n`][N_}: ppvtAvi)nmZAJ4R55#bI$G O@ Ҵr|8kL5 si),ԑ Q)< h~V^Y׹tMߴMVuo@P4N@xOFF6c=vtX{ԉOǟV^KIW*.acM O=3^55HZ~r';.B Y]L[C,X:zy$HxcѬtH ů? XhieuX$CKihٔn8|E *AʢEjƬ|V ^aIa/k`4/FNWl@~" rbMf%U4$ /!^URK*2%#|h2\rm72R5[^i.51rRUa#'S\WE%QW PЙ-V!A;'~h,@z1t\$p7.yMDBQ[L=,b+`(LSxLv [d$KO$ &yA٫=^}Pf7kcZ[Wb^n+d%^=֢x6f0ĽĹ:c_G|~Aad0]֞EHf2ف'U2k D΢gTZhcy&iQ*ϥ 9Xڜ٠+X1._ H֗DxM_'FF#K+2Vw6b /N3cW Ѳ)7r`S"L{y깂jyF|>?d4J0{Y T€OE}%[JM7'ͫȑ6R Vv+fÁ[MS/iѪEydR~d`Vhq B@A3 F՞ =4tE gUB-OX7iNdO Eb{E;5NG:i~19DgSʕg늓9eedeb $sYFcvٹ {P _Pazŏf~}  E+ &yqJzj-µf2.T&͹ͱ ] :hoq|$!њkEݻOsXD1Wk(푉]r l13#} b&tB/wE!PJ 3NreLJkhwrXuĢ7FuxUp+cx{ LQvAtG_Ѣ:Ľ ıY =zJmkJx>i.|ʴA]oP͝dNٖtF}@jf_]h"fŝBoZ lOǃfo?)ߴ8.Tj.2b'ihjrNV[$I2<͌DCyPY"G`"U9.g w; DyzdHSR.mn|}ϳ7}ǡ2p$q?#miEo?b_bƨ?Qeh]zodODiR\4o㊆ɵq"ŬeZUiC{+4[)XWDS@p D4 yQ>6!P=:Dn56N_|V9>gaï@<{c,ƗڹM&rO\3rCFQEYՐA [w%fmݘƦ U/a2Z$]G Xֲhn[ EqmG> vɮ ^gcPz)^tKXwT!0ҩwLhXSM y/=/6)CQx썈"9T*>~qѡos=]Z:@:ɴߎ/-"H לm+>BxBWmlP49}mF#Z!|!LJt6dzzo]pUSrJ1B==*Q K8#r ,g7LV',tu<^U-0u_0]BY91{d^r\&Ho 'Sa-Nn}_AqN.p܁$'(dw0 p۹c9 0 B +/ ^-s [+wPJ ^4yFu"|Lʶ- U(=hU午L =mWȼ؈4x{5gIߠ@5>3 Τ}Wk}sҼ \]Muq7%*.x&1S2۬4 T3cǪE}`RԄ^RGUT}?i8 &ZW&)֠`vP=PD qN NG8Kj~lV?`϶SD&]n4 _UUyay2Ti| /u ("5U)j_d49 8+@-iXXeFirB/N}3T80LhYIӅ;L"DXፎgJH`HD.͏[,mO{ 뜑'=('lp7]2yetJQ/R҇h~.Kp+0Cr(Qܒ*ᩔğM9=.*QulytguWJM򋺄>G[l v]@UWkphToNa,NBf$> A,Hi(U3Y~SҌ,s¹|kr7g{@]IqC[aÝg+UqSuD Kv,z?/uHA`2#k% $n 2ΊZކŎ}f(kU:V#b1%>B#΅Y\ugv3Ul~\o l>INj=;CҘ7F$dnaK? Ȑ8᠕U %>0[jC[H6=ݥ-D# (I><ݖ-]QCϺ6Sw : ʢi}\v$KIR3 srŠ܁ {8 BubYCV r[ lU-xFm=%m4YdxSq6.ECuh"΃ts+᪽_y ޗkC9)49~*g͚`aЃ2jF:N1}0Lt4*9ݑSNIm aFƣ\E#SarӃМ*4&UPTSn^Uj#~:jb-XkN"5 YHͧbs|1:֪p҆[D^. $Oe0i ;ַ=9 v afRRx} T*)s Cj `G%yK'eҬJ`L7"5OpHůdPv$|4+?D(c9L=EWDv1?k@MWng@Zt^8Pu5q/SvhzJ{1͔Lۊ,5@k5a6LW XNUy(dX٫eͷ[ˬI?ѤV1 Ht7OU_m$z5(\Fb,7y֔G%HҼ8ig_x&SxÓ8A1k{!5)u^] Rv9ᆳWRŸvU795MA.O yI!ו5g:w$^5ՅX9kno(ƌ1R#*tOG=w,GN;Χa{1#aמ6]sf, ]Qm0#.(!ݚ_QW"r(y+GD WoWw\WR~_da#WN‚&Ȝя)g'FlT1,խh0cjzǽmU5-: ̊"(;P=_S yEAǛ[a* 7, BzAYG+T3,6Z,ALiOMn$~&h!wS=IzDTߘ{Ś(2 &c'Ժ\n|:_ y!9xC'cz/]!m-y;gWe9G"lA(x#Z2+дۏ| s}ft$:Y"-oY oeh޵ ݰVV#>zZ.^HH*{X֣q{""=2Ն.f:Mzl2ۡT )K}gDo c/Hʨռ3Dbђ˨r$ɗj5O}~%5Z#ŠiKX$]wA}{1>Xyʦx$NI͇jH|Ȃ"hg<~Xf%h 3Ngז݉3&說0Gz [{ _9%?8v4OrW%tFm'L/\'FTI :23I Nv)J,ll]9.΄^~{~.-WXO„Nfj|H:D)F8)ݬ9s16f T^\@*)f]Jϭ##*{-5)CGlKjta/\n UDLL.=:7[VEX|/8X.jsOЖ/ ֑wߟQ&JY٢E uFTm ށR|Zͫ؎T}7T7gwUbQZʇ2l7ݳȽDfj;qh:R^U[\GS0Ļ M zlu✴DuWu2/]ܫ֗zÀP ^o?]WERp|T1#L"e{ l)#u^9؈2C݇y,A)f7^`J*i~ Pאe1Ip j* klL_R o _t pX룟VrhDpZ&8: ž{U=উ/+-5^n q)r.Tc ǥӝk$Bbv@D@^]@Y 4yn?wC2y~[r6@j^K6VHã1 Gi Ecʷ*B*FhgظMZGf4mÚ GսoQ@[zQgybT?  ,6ZEzƽP-?oj7)r8! ~W "Ñ''+pg5T}&Qn&T&J*a6{yMۍ]%Ē!5jg^,i{?}q,!"yQ'Q42t$9C:[sMnhvN[Ѡ^_qz6 >}GL%Z.pq(x ýLV~SٟB ǒ](r39kt@/QG, b7OYyamݣae=Gkk!]7#Ѵs +X5p+ B hz0B[$uOx?srv_:03^ta gI"V<&@@u\-^_zH@Yi j{ѫ,51+}nEe* }qQ[mJ_g&s.cq7slFvV $5jzY6||q/ Ҧq]{0,Y2Ӥ;N r- <9nHh1)m a}M8XZmW=@SIS ]}mu?9~+3yf:R2(6Rw3]O]^bF# pHMfMmLqGQÜ@#ɮJ\΋9i ,;ZH3_lH-Q{yv`< jsfwZWTݣuASTtu)]c-Kiu4TLD Yut.QѨǦpVwOdy^;'Y_S뱧AA|yS/ٸ7Ų,R焟 |Q" +_}ݾ2nŦC"C{!(o6J"2 }ٍk}XpE`}Eߏ L^ጤΔetOekrn穯N]zͯ(UҁqޜS6]gpv6L=j C IӉF\ !]mGۃRu.9ywmgYx( _}Pw͙!a %|ڡd7v{qC"tp55@dQ { u[, v6R7Rx1#Byv-Gc<:ӗ@rzqXS{,Ga^tBNǐ6qrjԂ}X>OuPCK|q6NFeG.NxXG2KYt6ad뤇#<X* fuWGMsgFz+'Th΄ɎS{3< Өbed}%o?dh!SXjHM Ww˧_:HFFoFh Wũ:+(7ϴ|UϿ&RKǼ*\*6y}UeZ/5 ±;d^>P^8B ҧ\*g^:9Aj]<v;'B" 鏈w="~Wp=|oP[.Ωk' .c.r<  R7I+Uk˖0>YP0g`Pu|ئn" f1?MtF]iz^CQ/\#[E*N+Xa0TDW.F$ֈO7lX޶p,&Y ;4oğ7>V*(eBF<(fZyB#ږ_W?YM`qhߧ"X-T?v>hoPmkH Lׇ+oD)Y6 4jb0,m+ 6ycdUKIܚ;U-kFS9D'J|agXVF|]\W(˜qC>Nv0#]ZjY}6ͯ O g)th7Oх󖱥.brOUȂַH]-=‡ !8Qp-g5~RCBrV֫Wh̰PEl JYWolCۖ>nd$5QڲQAצĚԽKuHiK I^s혶1y…|ctK85^y}n&IF[xBD UKjm#}yr{v*xm.h7V P<:"[D@s,l|$MqҚCxrZg_JM n(UwʄAFXܷFa Zn9ѝmGSIƕ^̴dِVUT th}Lg) . vrCZG|FS?"fqSvkbhcI~%tg%upoFVX<zfRGUU[: \r7Ik xw!4h[d(.ٷew6H͒E FYè[۬uKVG/ Tf!~AiX &E͜# j9:au{.2ovp 7w3,T)(Tv΍ǣ4GFMK|{U}VB4SA% P@2dְ)]{dm_Q'[|'d| dݞ2'Ta6&hkU+uɹSh/Ȍ4Q1AG=|T*8K0/2g A]e夹"@4+%qǂsp%]koׄ-KC0(N)7o%_׶_[0<Ȟ$Z *\O~<(B*6Q]!΃iE}"TWZK zz dQ<#V;֟iܪ\d=yuG}%&.疑Zh?KnS+w-BU!ۆA~rtP(ov@A ZBohpy'!`zc΁|eJ()^dr,D^h{RUDiH r]ҟ 曤&^^7-C8֪Q#=üɐ60/<ĉ+N;zJdN=FM?p'9Yv4`u{rbι&+ngz2<U"WoGyLhx&" @oMuCEOGh;{dhKJy3aǏJɉzOpݷMQQc8#%ƹBciyRb!:fZ̰I @F[eC$k6-Q[*vpu?1`suRB(O{lg5jT3Rrօ"k5U^IgV_ pLKu*xaHgc=VCbyiGg9hZ1„8MI eEQ$$^Yr#.Z7D'klȷ]g6U/&EA/%Armb|`V=պ5y?dUz@maed<:khUbL R[R"馌9R\)6h[jH*w^É/gNlIKS0$c&7w$h4x2#@єUB) ;.j(*.2j{\/Y29G"Cr9qZq^A8U$:%@Gϵİ`F!czUAh5Ⳣ߳xH<@8jeU2+x.+8@aVREh(f keyG^-53& ? NR_47#\%`&UԔ6,ҌEZ{1y4ptCu_eY-S~mlamf8~Jº]7rIv5WU}@}U9ew&z5įgD8PShB(u)L6_7C_? $5|e3-0Z m$lԒn ^tPiPS]MgBra=FdgW?rl?)TS j%jfM}`=W0\$rŕ&rW10&PKL&*2Pe0iDlnUHm˦E">F+EEC2,gnR]";8cQaNS>GnXSQ6_:fcz2X^:R]ǻ -# }|YmpZ -lGk;ሚn1"tpgIb9jՍX?3;!#B8y-ߟm~;*(s.WFi2 rJ]P&XV,m"ⳣ3Us'9RVS]o #r\l|v^J5u&I*< C^t ҀɴqFS0|Z}.՞ҭ!@>E;NTǹ@R:¢doY1iz*oaAnU#slj365/W]c%[hܦɪاFNdXB}5Ip䱟N J 3GFI+R5_P@Dߒk7*Evob4=Ϟ.oS !_%'04;qM XגV%?9| {5 @)βؖbuդ;nk|'_ζ H+Ѯb5t+MJ= Tu%84玓?jE罩?`aVI  Hr({l˖##;pgĩ ȿiyr .@ha%DToBEpgha9Ay ED lX=od|3EʀNM`#oBJ_mTw[9(}RD Bf(€GUHVH.o'Xx}?㸋r9]CY-`$+Xkx<(J'KN1${] d:1lE{_*⒵(vMV?3{lCʠUJϿQaa˯R3b*g|wp98s#>nvi(S0Q)h405ƻ([)~(4s V'lc zх'Vme~;Sh~u1 oЕq.5,`BJ`۾GA1ꍣ" %z߷Wa34s`w) Cb(AbpUPaE.QXކӅ?O U.!5Np GDFƉQˎjW(@^ 5"-,w P^jiR?[V! Rj1o*K u9C^vWi[Kh)]b =Njbzm[ɶ-BrG5ݱW]4V X}ȴfϕiBߍ]^1XDh] ~c2zJ;3;9ю%LW65=0hif*ق.@U_dLX<JH-3ϵ>dzRb8[(,ƓCIo6B|ʽH߳twVH%(O$D5%@0:)."P>[p׿Tmlu8*b6qM=FtS$m0}5&N~eP[ѧ!=`FhG(>߯k^(Iug1C2:xXQƍ&'^+dž(i! KUjn?`jSA} %c&5NƊvn':.ŃkA4!ZwK&xNᙍ7Uy-cw2&f;dq}P^i8j}jL{-&Ser|Vܨ]P Q]]yu@֎y}nZ8&h r#`m]Dep޳qPŗ 8jz,AýKa+1`5 S'`l )}_5kÌ8O؈{ uZuโ~65 Hpr/xWM`yW>Xݹ˧.unc$fu|e5$^ћ^eݛ%Y{ \~AD9W}9iA s8+d0ds:b"_XK^iUrcD!=S t[42#6հB95 G(r}3ÍTeJ 9CH_~,K= 鵘zmXE $[i O j "l3V=1 5Fο8jgM*w2Kjy#5`=K20lShmr,\(ɸywPR&r>F/I c N9DOCӔ%yէWWz/q/I:qvKsD%/`GB ByTR )!d] ЦerW(B? `\P<@{hd>G2 r7d9:t: t3&ħɨ_LϿ~9SF_Z%o$U;4]ǡ %&lDc{ΗpAJ5_Wϲl|V8_Bً ȊQY@om~xa^E*xO+ vǟ-Zuq $ϭZKmd Ȟ/&r6kv.`P]]B28 {GFw#ɼD)D+ AB.T?L;)QRg(̄sFEx>Bf$dDQVkgٲ~2^kI0Zasܿܩŭb#s[I%< %%zw@\ % W~v9O 3akjI~` T -㘹#Lg#L8Rfc$%́.&.\B=/-(bn@[9 eFrzgҦ;+pY^$&4Qxy͙JPqToBA9"m@drw_}t|l>F{l"7'Y{bx. ͯt 񁻺Ќ80¬5 ;=-I5]*(* Q'EĶlOGU8y7{'_#s,9ʋ?.S&S]TrPO〡#0-j XvqnO"&܋Nfp9`\wmV!P#L̋NQ F9X?-=ҦS,ȁ؛49јfiܾ ݓZFȏ :+LŒd: :i?CfGBU;@:d֯Ldˍq5{?q.,]6J0F!i!S.}t4/tjʂlX?ķX[]h(xMԊPX>񀹫тkPfq Da{qWe]s^WӜq[@ԲIx?G':RhZ 1ޥ3P摏pWLֽ|$UPjܵej44 &Lo< da"h͠] Dt*mlk|s0+!oFRyL3 pSjIĖ!Fu/ĈK =ϡT9qwWf;G.sMk῵nxȊxEhd%Zͼ 'OBXOQW*aݾ=3l6wTNҪ :BQp<*֌cIGg17'8D؞gsn='N[.H>i3hgMw/ H@7ZYg(1RiLp1ݱVs (IiIOWW}= W~uKbT.|55n?QvTB9d' 0r.Œ'*qÖK@N9 zo@kؤxšuŹ:Wf[3h^VyW㛋1yC6ԆLl &IcIqKdQ_ KnrgQBL%@Y^vu6\c ?Zq⧲["61%& c?]zFafbbڌWm擟:$0 ;Ek.tAPgٯalq+u(HSIɂs,bxRw#G#Ri7s7\FV8-6 1N{d܀ky.s8mNdo~h$!3 @v L]%~nv~$:+D [ d1W4k{X8]KOVvE?K7]pgNn{rl;䃥Я)TOL(k76ݸBteVͲ]& `Q |z8/ZfdExC@6_d[%.H%_.fhxnX$W ^Xik̕i=\:Rw)-˪EsN\Z# !0& :{*imy-%>pTI=>>\v0uҎlK^ܦP|O掄ε-̒y&Rhu(?Ԁ~[L3զ|p'%NӳZLj7+ i,78Ĩ+ t~}Y`5AB0ox!Q{2V_RB3Vo[*orn;gNi;W 7Ϟl]-jO2I1 FwҮ@~aƪ>K ]tWNhVz,TuN< z"@}dKLz_yT~~:x TDZkgL=K<ʹ9t89Mّa65jbQ g{6|S .){ <)Ϊ -U}cE~rPр]'Q\Em0 iHў߅/GK\OkEVj 9=Yw{G37 P qx rhF%6u}֠la3zv;@}QD;{5ܐuLnqꦠĂ) ;+NLǶC֡񙲨3 U#%eƒƕnᘮv(9Ȱ.b%PrDg9XFc`=52`xK2G_l`LŘI?boe~\0ZCwB(w- 9"x1z-uƭZ|}xڒ !]|Tx|3Dhj9m+V)dq,R|g+ͱװsPr SbvS9QY(FA] "qTwt"P( P<"A'1V?N^\Jd}*NNL]MDTҮr#V#o!EQTxFkʏd&XF].z7$C`uN:%JKH:t?ƧO`r펝Aj<R9D<M+6}~&]qSQ򺒝IupLM[LJUV#?e4ͨuS\Ly_t\qljmhM/72Zljm"]F0u%t-̱w|SM.ҦC63͒FDEvۧ6oݗp~$  q7AurHGڬC+ޓک}(uq!zycQ1hDd{ÍF}tHGY8CdEnJ`V}cX1X%7d: 9Uqi)hꙮ4$+j]*Q;kA&b| ӍPetv=}VGl݀~1oTzdis!yD[4Y=0p4a;7<:|k9h=moY{ B ߍZ 4&=3A81|j bi%78[i{f6yPodq"OX14>pnYԭө( *Zv`4}VM-$3è茪$ H<臽5t^Vdfzqx$vHXA޿~}D ^KFH$㴱&ee{æ4ɻg] X wQ~+'/ >N^lOQɍ)}DI)+?#^,MCf2{X|.]ndJd=]ߤPmr `Ϩ {_E< `mPu68ޘsdEw)6 276`(XDXkF@8y3&~)noN0^DEt?/״U(&RmAbmvoVl0gl1dutA1}iW;qPb&y槥/(2zgfĦ?wd 4`  F0w6౓R]0}YN8K#<4UA{jT(:U$ospSog7KW3tX#EW"ґW@`~ÀLx#AF\RLOLR;͞6߄Vѯ]5!_GE.UZ аs@MjQϐp~pv$y/l~A/@S H>b[ KBLZ,g"1qE} ^]3(pjNI.%f]% @?-/?MM V1B9;8 ' NBƹ9V_͈l w(4$)°Q3&ߞ+8!t阀^z#a^E[O4hHGXY,+߂2 8fW׺$Kp7 \\s?=|7dJ?¡LƂrilׇO0L3'W{AuAg!:G*+I6\1`NV`hluwY*jVY uQ@7[h -W@Ҵ;1~)̓[=x3kVQ*P;C@~ڢ*ͧ:-foTry$zIL4&ݚ7%X?lRtfmQZ"oknrXW.X}٫Ul+ڣKFq"R' mr+ooͧ`H9hW Cb`#W\ 8A-+O=ݵGr}Bx +bp`C0H繖IAފHJ&˝x ~aՑN]&A,. o,]V!Rk ߌ":Gno8)"WUO=.1q,^,F< vu=Gh![\#ID=طb$ģ<6^j)y:aǖk[YLھ-o%ǥ V<7|7U|R~4YR>4ʬwJ?eay:p?*Z%uc\c27U2/lݫ]uzkAuudO7/@v:&W\P &)6c~P);(jkqi{%ϯ_S av]،pB#HdbEf S9 Œs<ɕ{ >ϒ6C/;_p iM68ċ3 . xX ӝzv`?L\bK/: _)UT18vɻ1'kQvR79yBX/0rid[╱Wj@&¸|}x`mo'~V])vm҈Mᛈ΂U{?Gv{@~Cqēc"#3ϝjo ~#E Or  |>PwTI*lk}FiKa6 +U[՘R&FMфq3w OB ,˫D[ w׺-@'B9\=.Z]+ʹ fd|cc F(rEZa1q{'>s@H s_]' 0zKFQ5m )&hy'x;WtBSañʔ>LsH%o列@tkacCePi}0zٝ1U0ԭwDW(/6.M)KcL+uɸ}tAi3^mg&m%UNq U A("3^|#R$y^( { Oy?2^9~ Qg [[dX=߻=n3,3piY+,/0I,o_ޕQCKO!"_S q#=hr75(dV;]6E7wDqP )3O90tKQ4!'/R-P%q(Y$Mt lPf3(hlK.xu\0fO5uS74>\r aT2Y|qÁX*+ue*y.^X2ܴj^Z^//lG0Od`KوfNYܮ]Y0$HГI0r@I)mR r㈍Oss(qbe0{:U*Gd;;ZA|ga{OtNNQTT&?p`"=HL Xu;EųM̾V駌#8bɇhqG_wҞ_=ӑMRp2k4һ 4:_~Ԡ8BJ8Ӡ;V |bDۏT6Rd=zr7W-wk"{JEu/?Ɉts%{3v7BSy3w7q{o[L'Lh|is'aȬVׁ/mW:X϶F:Ouf ǩ[h .t5@w@G<oP=w*a'~-b[!z0/#KgbxpqM-߸_ɤ:i&QWԗK6GW"H1xcړC~/}n黥{MJ\1bo3֋!RJn7!=K?谛ICƏH=a(6s;xV&0~7D"o? pū{ &&Tu0ZzdPs&)ҁDh2ZA&)E:nCc] Ӎ/XLwA嗀`AAIv sn ٭rt0zz{-{xx+AOI]ijt?U&:lL5wY)QRAX4Z|F'])*ɇ _jLBm*LTƪOXÝ* &{q.pxx UѺ+5.BTBa@]ޕR}lWr~hۏfQ5Z5AI ^&a#2oe|\zƸ5 Twl n۝y 2r\݈c#TP7>@QRlBaWCN!MCW~yY$mf5?n@H)ou>:V鐫MӻeUDa}Xe?bUVzg# љV9rItwiU^CzǪm(o$^J'D AM#3;SD>]&`~wb(V 7Ձێ$/ CP완fB_d+sݡ$7ǩ" 6k-%qrg3`0EPA-NA$51qejR<5a81u+IjltӓT|jI%]ٙJ!#`NK>犛9d~hmJr=ϸ̓)Ps(]BRu}t dN 4Jh_?&y^Ij\bLs6)鸷ٹPGz%H:E;/B BSӒqYeܺMNL2Ljuݨ`= QgU]Q|lVwk k?6I|3j 2[ZeH!=Lvl* P8!` ?@ь}0fEQa&v3RC OpW.̼j'mo`|Iesmïc; E-| A)('*9 A2c cƯbW- PB/Pr0GdVVU ǯ,PSUOs3^,YёVa'gh@y,@c~VfrĄп~Zϴ=x%~oӸ3B2LcsMw=#Q﯊>SJ&5vNOXCS7!w\33$5`r[`1\Pڭ݉c\cwU :Z(A_=&rc:H+qќj;Y:" $B6[9 gYWХP"FWi7Έ\=a;؟8iUJ Y$q~"Wd;Ejſffp̪&9ӭx`*ba~弱@{樻_BreUA;zRS!="!1w2$XH]m`xbZE7ueoT JD\ 8&9ꉣSx.Nֱk$5M‹WX&{#wzU[QͺI .-V_ =䞎RsDs_ރis<@֧SXBBD\ς9U!ܹ(2"FjlU102HZL4~]fd5u/k *e@(xiKH@bbI!nlȞM/TG=4WAӭk!|ӱ6LO0Ty H4V8BI۵Ⱛ9K VfD4:k,7P(;9ϤlR&05u~>zD!kg1+X碘P"Dpn#Μ5 `^iSx4@- #{6ߜ /-k%'E۷᣶y z\}y9fؚE(o51c"{-0"*B'RzC5+yz8=_wZxR]_BIȧū}x[ #/*3M 'y R5Ƽ^]~Y{Df@Gjf1Zw߷Vnf05 F_ l-d2U QO1Iu=f"[5xXX5|wKVwV#@awy$UA4$w.۩B? i4U_ihIu=I:=}?Z ;uzJ*s @#6Sk`SCVa)5?PR§棖bSï௖[{hpX2/Uiv-BVV]ӋeA@dVZWk= F_ b!%|v.M2ʁTz{DĒ¨ͯL2p.O[woŝ/u' źrDསpI<\[Q0~GxΗÈk|R.+;(AWqU _ri~׊`\I]&kkO< X'["*N)C%sr{6>-ZeSh&8ڌ:^i2F( RRnc4ٟ,/7{]M[s%cZI7O'j,i]'?z78+=LY3S0!_b$VGD4s$nZmW{U9!$T _ Og<#P˰93m~l{xLG5#r!" j<`EEeL/+ 7lLKL=4c31^ \P *ёhGQ, }=appxmQ8s&1$i9-u֔EV2Hj#a ʒ[IcĭjwWc;.6 T?>;Ys&Rfj*M)zE,;c 4l=o~dpԨyu&_'b#851t٬(4*YU^=%_VN]GqKJ8tѕ$7{3oOfsŒJR|Tr`\v0*g1DM?ѭ;?f_i=P QT`*71@UQo vl(k4F"U5^9O%Ks/MbjՅ†}D5m,|ʲ8)ޙaoUwZ.pcf9mkV.g徟HTЏ4*rrY7vC??ko3VE2#7S3E*oTozi&e BVsw)'O7& ~ y2ڨ9ů- ܯ`=Hqnd/z$>wՒmKڳݮ>'=#ͤ\ Œwa+(J99G%C !i؁(q >pʴ2ZId 4D.o6p, Lk\ZyfƑ%& ۸5h,& qKc{+HkiM9JoA{~_hԤ$EM{ 7>U=r1T/7^Gb,)Gy=TT& -)_+&MJ%hrU1{yq8'/B'm4SH!ŊpZOͭ |.<m%d6A=R;@,#C<_hsOb9atWN)Q% V%=8I*2?=^HHd~1_\XӤYTks5θZ;Y>IB[@^y鷙Yؿq2u\BX'DOSt>>6Agw`{UYf6]XGUz"ٲ/r8,:OqŴqX%Ex*K ,l{:rIrjL6ۢ> \Ƚn|ۅg~(2@pڶR2ڑ9q ZIxZƭD~kl)a5Ϥ(Am6Uz퟇д̨H \–Hߚ)'Z\6J^v C9D.g 5/Ǻ1ʤ~/ piؕkOjQķ\[ٷb]>M^t!RaXXRRy)ov7.|G$kj6' @f ʗe(Cq ;wJ07z"zM ޮUu|,]w~(:,f5%P 8(+\_{t{RݙX9Tq-ֽF;ʏB @& LTyMnۦ%MBVyš̔V ~Г/}4D{ũWQ`pItL7 7T?ޭz;Ao[ f ۆ*VFdIcz=ԽMnIs =}ۦd#ڜީik`[ -Eck=޲[|^A+ڿc166o5$L'.S t:a/Շ҃;``^C3\c< L҅>2o-LEc`/ir~Z >T`4Lׁu'icv!c"M}HX X5E"Krv1 ~yP[bUSyOߗ,c`w׌oΎ@ !A' ^Rs'Gw&)oeD[:3&;^pZI1Uk'2>gSI/ዡ:݆ԃkkf0Zk:y`z]"#G&+2)@[Uϼh"H|?hq9sN-Y>GF fJaϡ&].5rHQu ʃw侣X}l.KnmoK3=K`9WqHQ䓀m}śی&xΗ"uLw(Xze,*.&ၲ0*wφu[sŒ錀R-)Nr_}^t -#ު hjo9Z2*o{47xLO/t=g]}q(dRw-ξB(rjG$ŀ Sx+'=~e4u$"M 2ג==ZØ3;Oe7\Z>ta.=ԥ+0ڥtr;7^sō&l -/mFJ=|Cg?4_m> ( 2s5w6(˖,l∇DޛdB[lRIp&E'TaZ 8ػGw%"tK+)KSQ!34ۏ4ua\r4L@#;]䮾s$s,ڕ3LR#nNOLEea nqW S=Es G Ǫ&wep)>lMZt".rSdYm'?}*2y^Bt+|_*_R~RUn[^߀gvg_@SˊjqwEA Z?YW׉yq )]P;K[ocp1VlMgk59Jx;[;fI/H3\Bi5n'V!NY`Y_ y %oAol I2,ZI7U n2CRc",^5Bjv!;{6V?,3uV /mUTg)ףN}.4Ѐ_Pw\F -`b1, Zw:l!璌,}uI811UloZ<7;W@ i#UoV,sln9V\bG 3eGbD \ҟS e{H?LI)ێ:+ҹ^Z`7~%-ybyI W ؀5'o)AOoc|NۺlC]z| 6(j`!J!)ջaDz`\-^61  Vw~!^D26&<7P%pwlLCz^ro`iʖ]ndV?3qR{}{t_88M [/-=ZϮ&ewYW+fk9/ :$֎ uɟ2 LA^jD+2"{b>6\/NIT/u-Z]Qk= @ [yY Z ܃n8cL߿5kgL3-/nϷ:1Bte=syhSF"$…VG|b<`3t_:]JV/zɬ.ec=x\P. E5^ C: 9VhAN3BNH0ە Egfc/\~?>L+gbtb){RgR,a< d c]'MC6`9ҟzw>GipBٹ#tX CVVx3r]TèKX<|2_|,1s^!;s%nqa%2f n \Č!ToYN!`2>듴}3da"&Ϳ6LMNh;ea!-kl{Yw©T!U䏼!J9Z$J/7]yXL^ F%i#fmC_'2L/G]M<~-+?`xixGf}djYvh!@&X%y-ȖA\rsx2$ \U?yicGd 9/ō[E !]ƙ`D[zj]-Ԭ8+yGI5Hhnv-ѡK ]^S3dpIFՃY:=ǤJ_P 5?"D$` d;|K(d!ç^QGh@2|!'8jkvq|XJ9E[!HԎ^@%,P`kkgasl0{uEI'Gh}x1KQ?"N[mcY|霚@N`{<.nqFx/"e/:+L_Bd&r X=!Zv1F8HQ& l+?q?{J#X<@tWdf a02n7M~qOb*pLV=؈1^_vPuPz5z@<`j0JLMFAs k3WEUzGҺ{?5eטLA<7Yc00|- ;@1j1)TeyMmЮo{H3 Y}(U,*`󑖆!9Qn/a(XGOU;Ipag]y7NA4nZ>-d5#J)I>2&ƨ{whPi~6 }zLsu`p~f.V"v7wKp4 6<ו\"MF$-CnPq;}c𫝢̳d.N/۫z7y?Iδt1z& $ẘ*G- w^F*DQJ#E8nkC\ O37OZllitNEm62)V1n{p8= xXf/*vQp aM92SQFC0n0A'!<ЫwDŽsarrTRL+Hlbl-cC\,ϯk|ܫÔ*6ŶBodk$q( J)A̚뒇7t^QVzY~gXV+@灬D G{wU@BoRRJ$3MO$ ޣm}ƶ_gb;7:Gk |gJGXl+.+MZr4±o[^y~f`ޏt#7;>x$\_5eåAor_ AQZlZgf:Q,կ(ȕۍ,15̄(5"% _FϬ*RW*M 7\\a,j.糜vݛrx嗞._S9..\:2dB9 ! Z\n*2+3_ls[eXk{S6Sb},ly4ăCBd BG!m[]E6bbA!~#8<Ԫ!Mi8H4:+mV/kj-9~E@=Yp+Vī:%N&An Yڸ0/a>qqjMG15 sy84b!|ÒC腔{5#^)̯ӻ`)R#/cW1)Io'I"%43H^1^].k; KUfKƛwa O̩;r$-Th ]ƜF gОS2 ttrE]7N@%Y>?T4/pv:ţ96Ȁ%0H%:zZ^ A晐~'t>X`J9G2-5;W+Etmc3,`=KD'OWH/Mk.[~p`sS^|@<[p')C;q,l`FKp1 fajUΌ[0sa?K_%zC=BLjG+A2z"^As*R(6$zc`;0R)G6J DXTQSR٨{˥v/h+|bH^:UDB{H22p$k;޽NO1It>E$5Kmb?kFvJј>2ܻjdJRI=ҫz :)/YS:@eVD͢*.V2)-eryq J](N}=wWŐ=+ b:,Ά}"'xi% 0CtCI|?,5gs0iWpةym&Y/MaӦw-U3.ɚg}>s ԑ¨(|[쯚U'(zJWS4U[8 C-(쥛"t*#Qwz_Iv`_EK;RVwb6IsC"юE1\{)fV˴s.CɷϯQhJLgIKu&֓y~ZXezg w8<:\3?A5bT~}Ej;har{~4d{|P+0Sy5d/bUY)pN)5x[dYP5CI'mv(~2U鴼'=%qavB{>)ax#k=웇EK1e `Q1FxS9 ;9JdgK&L*u(Fѓr'ISO*As%Mb{;e$3?7 ˡ % jnp{sKJH=ro@R@F,0g)cQ.}ISbXikUm} \AMZFkҞ$`[ ̽wt]ŝO.huuuDҹ;qߨ2$R 31K Pu.~},*a4J R;قiua`*n'RXYbe/?J~>faq,ݝrs~>2o>zqBfd<ÞW۶Thn =.Zi+EQo/*JO%gzOS]a|/$ȺmM÷\)bOƶt1%*>9i$D %kO>΂=[b @4bCOji% 5 ;m0\,|@)|`8QXo {\|<*]۰sy9 imU`9l>S+2K-#XU,JXJ^ H/tIHk's{2N d!pO h叉FgaI>ŒbΧG{"[hE Zv I=>Eһ':?`ܑ}BZD0׎-=  CDufVw,4"ڣT.JE"sф>zHscp:"d T?_6AN_xku-ˎh1Gq{lQ! b?g%c?2m;Yg!\[(+kwXK%3mWG&yᱚ5jr梔2t*Y􀯨g>#r_H<;Bkد|mZ-Ad@(u}Xcgh:WUJa. GD&&)^{zһ![PVAc 'qSx_:=aS/hEdߜfy9ttf&@c:|?`pht0YT#:Y@[/51p?PO>+"@G?4BJ]M(([`DxhԐF49+t鯌0{@ݼҮ 9n@HxPU C@F`[@R[lO e`u i^_.L?x{2UnA(NDkK3Bj{g?M/N՚-a|#Qk@f͜ \=ozUaѾq qIUτ:CDb˯|'c ՠ?/eXie43=6)I@쫤̯v˒m\g#Q$7+|h$tn3LFŕM0u弳x~["O:PI+o!PvbwqtSշkL88οn׵蒔-}ԢX[raw 7h*|jGV)slf X4;\ t(qN%K;3ȼy+IJtpU%59Ӣ?J} mRgPW[Tk# bxN$QO`Wd ]MJ dkk3k˙6fL0(Sg fIP 8! ^,3JgԶpnE_BqC{-mh BeX4czk/ڲN62:"!ia),zzulYǸQlF?[6a~"KB~%k JD "5-P[Hw"cj\ruydJ)"8c,!BĴ5(WU+$O}{~eEԙ Xf K;,k/!):/" ;rvq^hH`?$&TE~2ўc0ۭ<pBӎNrSsJT,jθ,w-  bM";+ħ,:/q1Z&G?oy8SfO1 "AqJoSjn#Xԩy׶zƘOhJрV#h0=_xWp#,*A1_yItŏ=v%|=TdZC`,:jlmuIGF۵"Ǧ >/0,jG,|JGj%?,N86 nUӉd T5˸qe=b=H~ـ=#/A"1P7GJ -$y^ƴsE)87wWdi6=WRf"h{ҜunJ 5"wU{E2-E5-N2$vrՅeg0Xɺ6-,5+(#xu@U#-j+nOѷZ r~56y #Z$4Cs 7Ϛ5 (}glKx2p6[6\ <*nKKz[jUʿ4e 994qa𣆪#C9k@ f6oRGWѬߪd@v~m>"^z˂^ۺcL&z"X}hCW U fŒMvr.]dI4S(C&p:=_oT# ]d̊gg㦾QfFUcJ&<ٯcSllI ckm;H[JC2ARUAzr/WdqyeKEЋQ**"G} Bc2 kD)Uη55"ğgj ޝ?on玢LhnPsSgAtV~T1 e&Nv#Xn {p3aRh@WBJt Gͥd19l~8* `7j7 @ >(7-!qũ\k~bjƤJ,@UʟVH]j :<`Ƙ)i=3ҹ!4k:'qA G׍{/(L{ ޒF0ۇ6J`x¤tͫ]bQr >TȏOJϷM+)w{ ^ "QE7`z]gt d=5k_u'כ{.;WnU[o@9sqa2՘*Ll"?݉X2e{;`Q:g8v wdax+-|F`.Qߝ{[6: %.qJBl`үP}*&دx2:|5SAbBLidL,Ur:ϣ]ps(LG榏Vt߭X#VCխL:~WkmG풳E"(\L-<9.%E\1R5re|HcI Zq>LY׆_0ʞmM+ʯ1;ҬAh8ْL<~K5*.OBnF NF;2Bg3r?W\fɦ<7)K5Ęizt2^yCFMce A& ת'FD .4yyGmCF9[Ic~D{cYO 6?]2F﷊^. NJ3u F5#MVáଜ]3o[OW^x*w d,~T. 9fB Զㅠ2z=: 6Dr8.\Y@I%\'^KP9Jc>ր]#.*t$x/ONǹ^ZO,riv4˓mAx͈O Bv^-&I$Q˶3tt9_c |ƭ5h孠% VxGkLΑ#eILu6̅ ֫$}P Ҳ\Q!~Z\{8Lܺ5AUϳ8LVz$2vre<( GIcKFVU4ƯbMZR,̰(>w62ōS Tjdk7 4;=^asf!_jݞM_ڼv-B8ыqA7r Oz4x-Yl_ϗ"8H4YLI~љ`4L-Rv X4>ܫ+*5P9Xo^Y1o"PǾ,ɖPyKqWtr[:a'FVȦ-WIV1@y+RN+~MccU@98p@k-kfAZ a1l Fxd3]1iW龁:`5E0>cpVє֤y (kQ5&Yj ih¾:,R.2֊ݶq8I[5\brXYM+<}8يq:D_i#"|G`C@?~ ^ ( ]%80?i=~d U+{ "WPɟ~sI\y 4]R+^02!KV=/nno*mɩTYn{237dwib2"JA|h/}6 xx-rpy{X!mV(ISbs$cT֊n4k 'poݩ <2&N Ps֝nq  p]@X}@Z U`Ϩ9 s=% |DCq3} d=}.nwL ͎t]0qO٬܅/ #.ԅxu<ŒJ| b,t(~.nn)PF5<>b,jN`J Lj9ԷʻQ{Ee?C&LjmpuyRo?ԅ/0مGmhEa<Ѓ{4M P ,m|\5+}\ٷH6Ij$km, qʽ:pD4``R+}"+mLlFPM(ZQDM,WlCFOlvӛGF]~zh[hQY{xcDo@@kwh9̊# ̯,A2Td3[RSh@Ǿ)Wڂ z&_6a+3ˍ@8ɫ,AyOtKBP|vT"KL>Qۛ{ƓY=<5=ɽ>K"*Xfd(EU{< 5-5 RٺBP,߁,&hD .Պk\Nr=O1ࠠq Q¬̖|$p2 -P%G?D &ssQQ.+׋XaYu Pkk5-y ͱO&xc+Ƹx},mz6BF(Y^c͆h5D\0 $8x(XJ%:gċ76!ز9C=jR/]-Ɂq !3_z^$|K/fwTе?]m{9'a?B tЌ'E;[yu 89ׂgݍ%Y6%SI^9*H#rɜ4eɲ"EU8w=h);>p "rۗIO:`|  )Hkaj n_ݜN "-F !ݵsM4x,z N!ߦ],9'@~OK9jZil ^8lv9wՓf5pkM?eDJk3ٻ25Fh{a^rcN/=D=a#ƈD>te+v6u&⮚\߶?>grttނnX}Hf2v*FvBmp0ɨjR%&p'#*@x`_MVoُѼD`nu6K,'>yp9YTS])@(Zy );hxEiu5]t*oorc)}+ ~B!xY8X;2:E]lPwiYx6,Y9|Cg9EIs䫘_q&ͅ!T,4s k`ZW}19gts,8)'qG2F'" 77[2$ͣ_u#:Wm=Yj"J FVpmT0oL_6ZsRԞŁ(Ȭy޽Oh($۠hIys٭y=9l{SLR_nG/SZSNrP^4jO1s|!pJW͜kh2v!nRPfO=o'Q+fGD'lBSKAT%`^6٣ghJGSAzi? X}u4D3G@^4&Qlw\;Dr .bFA[KT k=125# A$lvZYs}s{ )\n2˼N=U@E):lM*ts1B=T2geF, @* iJɳ,j8ȁڲ*:cf_7͇9w܏DWɹA0%/G6?[ G'9;$]g0.\UQ g\mc|EQ#q7Aϫa)|1 Rtڙ8 ZSSO0gӡZz{i7>3LagZ~?y"D|sWoŨpǥ(Z"%KU? VO:-G,G\mt7C5H&lAbR{֖b^Q*IHxm?Ը3 #`nkuI%ڢXcsPwXIá}rat#bMҍ EQ"˲h< aJ9+%E Rn$Dmi>WAk jV~B?u/aIQpμ; ckNȟ0^0x[iN`N%BℲ$ SDjޠ-*[}YyVWV,5^U_vTR5 f:(X}jUw0Fuw*X#mNB#P]f]3-69d̈́kocLBIuW$$߷*:h4!A*ܫE&o,mNe"ݷBQ/bkn6@>36LcE+Li\{ZحIaݷ-d٠ݟC/n>B/%Ln\_j&"1&zxL]:YRK:qBb 71!*@RS{N+Of)T'㭵" [b}Q oB$EgJ0`}O.qZ'շEyIf-Ƞ^0+UrL.6ymtBX!A"гrSg<|Vq<w]wlw+4ئdƿe_Aq8HqG/,M"ML5l1^۰ {r[rz^^oJ6Ϗ}f sk!WY#bp-b̕^K0Z,2Q;Z)i12mDbdfTȴ?C[kަѽp`4 '~+ҚŻyQW XV6 D?ɬwvOS%bxxf"cL7Y`&H1h4"y$ %5gFdH@;8g2F6 V#HrNGjJ/n"AvmqOET30]S ״uK/uƫ6!=w%"@X>b 57G]5 Va_!0#ՆvE;ȋ1bڕ?Ro[tF柫/]{@fg ӃmVBDOruV.GDMEMe=#9a Gdaq:]%z ~hQq_DU_GH yڂO+h|G ?Xfvc qT?0&{I doLM,"~ W2r rk,ԏqroƽe^3aGr2KOY x0_'VZNJ@ vG\Ll=vm|Ka.&\ldq)$uwYlzxtAaqA }k8^bhK:!ik vNȆ3(:1kD@2}}8E4̊'1Xk+( >wh0>Q?O Ldİ8MXyK^0S MsLlYIF/%$)p$*kyq%_ٙiNQ{wbڅdr#Cx% :G}R5WV3GQ' MS/'CWgC_Hc@\|zkC.4%skZ[HN"i@&ˆ׋%;P: 7{GS˧-WnD̻h|ZThRN(15 XyZʽȿ{y)Q%h+N]Xpa!`w7$Z)QLd=ت_}k{!IM*J].}Oo\b%2`U/V䷜* W|5mvTsaf&,V fa1]VRJ؜w#  feXoNF_hyVB-q1i1Lqu< 탟V^Nl<(p>ZmC_xrxc]i(JFo|ođ@r|}/:2?;IHtXtI컎9*)*n7*__faWfگFk,ϓ Ko0[s ƚґgNG Ao׼/hvnX[nr-M9dUq}zq^%?IF\?t͑F 0ZxU"V#|IGo1$}WB|?.L)$"w rO48<"+ے;N_ -2>#ΞpV‹b !\1nLN>)p薡Q~TH5W ?ɫNni-S͵,V v,0ʗ[wǂb8*Ml(&;i?栓$j.Yom-u^yZY::ɺy#ϩ #w,.Xb:wlr&b'hsrB:g88SmeExxn?uR[g-qHkjç$_z.wO`e5v&e}"n?tԙ8%))VJ:N pk8ӛE#{O'khp{znap۸nLL65@9k,J el1 -{o;()+VRz'b),UA P,C^t͈$f !J'#~?%xvkc~kSm;8*@pH&-|">%{tͱ8(E"=ڌ]c W7d;KbCVs ^y?(9lhX@= k?w0(K{+6[}ipƣPJ $+ @SJY0_f@ k\:sG?'eGrWDTvt+nVdz$sU܂8oUt`]9.9sȧ>_tV3:8a]_zp7ZZ'c]t~oZւ&I fIAg}eYПt&MaL?kHorJ]I9hKz.o|Brh`$F.[e&6 1~&9܇*t} b]W8u񈆬*JԎUh.=fMTln=Gvʘ:v(G;bSx''&DSV/oKSiO׫p¼ ɇ 8g%HcP)1Yc־:/֪ LM]AܚLr< 4j8'wrXp(N['59l(w}DC:YJPbbP(ll>#WMĒ}Qַ\VƩx@{Oz]b-dqté.@ qU'kj43Nk[z9Dz$hmޔhjʆfI//>x\!U9>ًِ^dc >^[[*ܗXDz:U[Q%Z7v6+r[X!JlK.T]&GNɢ=u%|)Nhz/%!Q9H\0PҮC1*m6sppViGRSH_~M IP@B+G<ڗpninq!,-Zk]3OeR9C>M 쮡 ˗ޥ\5bq!Ui҈1%? k͵L%$.7ZB>tӳώjy[U},rʞ5@ ?u ~Ђ %Oax k/^2>4P?p^5Nf[=糖qiA )yF[[f%Ԣ,;PTfpY{AN C@a A_֫4iwZ"r;waKEV?)@]='1hp̿gAue6qiFk9b=Dc{ܸ41?[fL1w V'gOQ0N#b`@X+E./9@\?a*S:\FcS.l_wg˻t~?-~>;Ȇ}:q>pzc5J|r=G@(lb0B%B7yq K]ƺ8vnN0Y*(r|;{jVEMNI:]@l:R"w&ԙ6,aî|h Ud%m@EYSm O_S]<ΕGKqpPyv=7[L8IV1u[wɰLsIEϓ` JvڤO?K'zjS`C$lJ#˃uR*40SvǿՂb=:)Cq;xcA'|(%V}6U[ h@%wdx3.P-&xD ) KYREq_LjUϳAL;("{t8x6dtZ 7粥[Tiw Xy/aT|蠵u0(M:Jb96EO)1'+ר+;.G2=VfFE  IqmBFW4OF8 o9ƙF=dFCWftPY_}Ր*U6YE{~\oִ`/&z ΛjiMFxM-&yxLGPV:yEy0m~ 80eq%3>17j*y~  ZlHբ HpkhI{ħRoVI|&K;^f2_{KL je] iيTlԇOv4oyJ\DTxs rtÊEsͺRS,8jh10 r8T6w/ݬF RF9֟jJAw˜ 1`@X>a9TC:!?pƗS R"|t[ ɸGss zݢfF utڟ=u^Y 0u/'U%q+֨'F/w0Jq+nEx?Y. ]R20ı"?,ݩw=.XH> ~랖ð#iM41! e|E<]7k7 uZɝ?HTb oKS>J&HxUr]zoq|چAA֨4=pvdʨ,`& Xr"{=K+a?Ifвn)qMa᥹i`}L,\pQ̑6 Sy_1cinvYXb ]DWoZ=9q}1MȗFԡ֙5h_^3zKL%l&Ct=E%JP9qDh\ (Ve0 ?Kte4rM3HoKx \VYfF.V'D Q#'p-zޢ-f O~Y^/Sca9\o½(\]uѹ/%i;ڍLěx+h91>Mp`mםR~x{;CP^G4 밾@]J~Ox}~WNP{^pQިOu-W@qX)wT+b8 ZO07+v8p{yin]I38v7pq_UNK5[wEi-00M2Sv(? &\|oԙy=/FGԎc~ɯc͔~ 'KE7̌&&pK V7uOBꡁ%8=qj1:Vok!{WFF\LxV '(JۿeMBKs0#"V&pĝ10k# &n͸V,5y QTIs^"muqUzz#tc/P`ǬLde~uuoA><3a%WUtr׼|{&FZlPƴi(<6S)5KjkoS𐺤5Zob&9Ů̚$U=*4d5vtrcQ$] ۇ'P䌙=>?XFNV8~ -gBݞntfj q߳8*#.kA~H$;s 1dNߤC.puT}홷 @HZس(d4^"BY})έJ, sTXi 6+F`&K#uBL3ߪ9ʫQp,'C,Gg 㙉jBhSԧ3}ڪD_&2D`ބivէ<5^?՜!2~!DuYD4)Iq<$A-mVZcl n:b`B4 4&7)d=\zٔU &?[bAwT7Sؠ&*xM*vT" :ȾA1 b#`,!`HF9RsLr19h b'T-jsik?2=Ȕм B++ EWQ r*tD=/9{>Ęzle-HC*^A_CP֬RrAW蒐Әxӫ E >`0BmV|>FW'g`&`(*`>nVr_u 5O3\zѼSNڹj &GmP !/_bY:pG5ֱv튧^uVkº#`rSzps%8Cg'cW&@i!Xz"Oy\K?]^r4OJhZ[3+vs'مvE)m=G9퐤."9a:5T'mutPHj*b88Z?C'&ZrjsOיR,1/:6 ΍=ԹBzi`~*bod}Lq-}F@6* ]v1# 4Y>,FCI6OI [@O {xvE{ L~sՀ;uTK#^UR/TyK][[9bJaTe}sW8SlUi:8HcmR^Ά$S%qcomg_z+wSYii.e*a9ΦxڼZ4/MVyyIQO[Q"ajnovk1_SQ |~wxánZǠu"9&*Ӗx]Y=uNM}]kn+Vs,CV_,C;&> +kn~) ߰6$UKbjR5_& aCD֣)ձ 5&Qג% }5Ěd@'ޏsԎ8Ζ!)ș̷v})LyPU3&"h(j- rO,JxZ2 &PNsh$' A+ŭqXJ"?'RP]QC[ZBn#oJAuόQ,OAv:LNggTGZvݠk9NP#YoSc C%DmmԶށD}#I\?I}-:E@LG>dy3fwȭٙ _u\^\'|xA>w2pbaL8x.Uo'MJ}#Q vnswqaHܘmNJsEͨe٨~!n|*BC DSQ υG̸+8afY܊aX&AEm-÷9Š=p3E.1!##BÌK)C,G#SϟyI1f\UZkr%^`";w=xzU+0ȋArEeb:V^6Z9J}$CbG+hL4%+T{m̹3 u5HA'{Y;bQ͡'pr]eec )̖I4vRn&Lkj O@ɠp}wJ(2լ&\>e83 %}oh^'>3фJ0Y/%ݡ9C;$3u }M8eqqhK4jRl!e'J!\l8:gۡF FUzρFddkWvoVnd" f>szlo.z(a|0iT]ˇؙXx*"`4X!%uN01B>dz/ 0aCw2{]et3*ԔUNT[1æg vA uqvӻ[.ىok쀓UӼ(;4Vɼ UqB{Y%- ?Ii.)Q7L\=999 Sq WPsʿ? 6wlO=4'6rH">^hcnMɅ~V N豩#Հϡ)Z;m΃UpE=i}.C.D* 6 e\^C!=wO6ٜcdFPa=]sjK&`>UOZ6}ub:[6cCدeY9uP8P=?燾zg+ I掅${*4 HP f,j`ka<qPI6w#"èW(/ˊ|nNC緣u^Oi+IA$܃B 2N!*ђežaRBѽx>D[}gc\\R-h4n9U_}g{`"kƙPGbnu#)).[+m6Q/d4bҫTs~J[/n&-pe-H|.Ϫes|'bK:8ZZhvm$g8M4 R?w:ͺl`q0: EDx:z3?߱XDrxwgS>NLʰ5aƎ , RVj$%o63?wk9!GW['>CD'7K N jNSoaeA!ntYy=Ux79F D ;0NIfMo4DrrQ#&/(Y"j{ 3+v Kl0Rɱgf7 Q$PI0kb%xOz Cm#'~Bi|787Jb(]Ż.at/ ^xNh8%+SWEll:E :bMǜl[M[(\E%nDt(|p0P"'{!%6fg-|/,LT$̞<7(>r 6.pMs]<}X/E ؜i4Rn3V1=~MO|dN]Om|U~ZtFN'PՌf}lkD1+1Z%.8:Y8h2Էdo'<|*"< ʺiFX}[eBˇMY' 0-%R…U4VRh7n$([K'R4j|'bR0q.5t/yNؗ"=AU 4]fƽP>U RŇbe`>$8'_G&=H7YSD+\\ZX2ڴu" E} \@PkVf},\ ^`Y e?v;ipc8Bٙ( moK6H%ЎR}i%@sTߦ,KS>LEҹCJu2qabC2\f$M/H6 4+ߐg`jݿcJ(`pӬYj3Lm!1ۭʜ:un ù kP-Le1gƵX9߅xxޠvP,h^Vʰ6dE&b5;ފh4M04ob~*pu"qYOfQT WUm EU&o${1}<ZvAڋǚ;ɴcNg؟>ȱX8Y`鄥T#Ϥ;l֩d_iwcTZsLU(FiQ䚔ӡ-S< oD^_Ih:Ai-+x*=E=!hȗ$JQ4~AW)(RՏjӴiAص!2PϳK$l׼CjwZ~':?ž&r-աiKo/qQ_wҼ|]]s|VZ^Zm1"U6Ma a լ>3:(anRbOa Co!?6zwr 02JD` PB_4O3QZs-ha?(PY6E芽f^]dC]ؐthV$cYHI_c }N"h 3p=eH܄a0}'ht:nif `UGdz|,Z" \X^y0[p Ǻ {9ꭃQ{=iZg|\"u`B 01 r; M( 64ʶ/G|KYyשktʑ,G7 Ҁ=d{z֑_\I5u7 /sȹTE~m6C?.VXuP.i4#G,t2_g-犜bfiܲ|~),k'O11 ,Gg1 xrݛ6(Nƛ5Mt2@W3P&=-:ɏ-uކDbP7u 塳z6c Kʖ"0o9on>e0bo3۝6ADWtZ 3zYKhMiN?!#AԫGOoc1 aUJ|J{u>Ҳ{3P4Yj8S%Xar+\|gh4܂%quh^ +,eb}^KYt װ;tHi@_d,9m Q s?yzFb2 c"wEҊ.ȧ؄r177qLOZ A/wםcegQjz1V}ZrTߛ *%+p24#иl!cmxTOҿ9? 78AZOGj~S:a}NSF|H@mEc~Ď\;wԖF[Y|99vЮf[`pL$ u% m˩=D䦷Y<=FQC!7b0Q]WmM RuڮQ|9 '.kz騯3&E_"uc(ub!el;izb/ 4x6Fܳ/D܈fD{+XjzJISӎ҂SK5D2p@jv?̖츛%H9}IPK髬ajã;1ܠ^0GRd?KBgI~ eC4Ƴ2KE7 4{7</̉ DpB̰5ڨ[RıKt'MkOQ|H=;q#y lDbt]\Es4hhydcTE<ء va}\;jwc 7K'oFId}wf6k\k(;$v #)%鰇a_d_, ;8#suPʱ+GFD^ c\ :4a)v=:2QZ'Fc}9.dV'I:f=4o^0oJ'oj Z \*2E5j xi#5SN(>RZcf\hm:8EѳZߪ(HNT`ᐩ=Y Ŵ[MԂvʏz:kQpoG|LڋG2e|Li8}}0}rFũoX+BT6j Q dX;iҗ zJA\Pd-j hT0؊0;gf\1w"~kB.t()cC꿒;^#? Y$gie7Yl⹛M{ }YlONS5qJgY#Ak/T)1P 2#p,MryMjv7 (ӸOPUEr4{FZwo@W5p=ER!&:3"kmsph^+3:+udp^ qu]R5i6 (Y}7^BYCw ]%&ƌ! o@;@tֻPN ^Udچh{9B'CBN*vԌö:赁lԜq9 kRUulx!UâmH<&gփ22e&Yms})\ >,o:!0TF:̑nX{ dqPxC& y&.VgZȫ'HV3r& -s`ʇAւRB4&%>{f w'y+rvT[MwPP"DC5^YmI*SM^gMb|H>ͦTWepܮ.KT&Hn_1`|vlJ"' σa*%N:XHpЮ.S߳uX?`k`ɥFo30=|/z[J9 jHAv_1iͲ hA)\l*5TvGm8KS͹q ܄v_ 1oh׎RXWΤe<ѷ~Z)3*Z֥t`R0'_<ƬM=4 1UbVQX,(0,>팵g)iHC'+hpOu9ģ R` bV_۸)aRJu:(k9e~OǰWR]&"{Bu@m)S0b/A+K  ݤn\:61g xRA] qxͨ$Tg鹰G3f\k:Yux IDrE9/6J(&8mAU+TLe0 8("ǽT8{n 2) /uIS+?||` Ook'Be %b7׷8g U sP⹉A:BZv;V▾~ q[JVfK__Km0҃>i U𔏊/ [Q:㿪'BEip4ͧs_g(Bd9q@e)=-9ꈥ}Y`\ߥ}u?JbC.am䟯O{?*iIڗY}ǰP*}A%QzV04ʸ>7MT|3(Ni|7/r\4I ?jo@c{;9T'3iY:ڜ1gmH;= lY'%>_Qdc#@*^ԕ1W1VsN Ɂ %^* /7I:nAuҏfFoم4PUۄ?#f7|F@!3>) LM} R"YZH~U >"A10HJoMd?!U"C>]F7\m2|S1Dx^xy#MF>ۥ@%1%"6P>v]95Nաg9~ ,_6CtGZg#٧eʗ*sA IuuWZ(?=[ni{L{" F@f<.mcܬ:,.UNϋ돫˜`9* 'v̱~tZf6i̇Bw N _%֒,.W%NVh:oPv0yE,A#'4Z:Z.5qǕxxQLq:Фhΰz~gRfV4ui$ҫeLLe1iиoR?X[,/|8TIu]4WLњy$$h֦|hFwP7"nۄ)A۰E{ud yrJg6 U>/?XH\B:Xt==(!=DdN^W\$G$2CS Ic\gi1^߾;҃(p+OBR~jW!qkP=Q=tdqH?|ǀ\ӊxZŸ6~dunU▭w`,+20g{C%LⅥ 5CN𶫭OғjU0<[߶,* bm.@̼5.c {]TMj0pƝ.hkp|yY;<%i!F.,WxMb+8gÓ;Xz~Le->]KS7UpTa:R\m:n$QQET_D6? ՟EF:e@-5h5rW;TMhc9DgqhĶ4>m{ *Ό@Ja3pQfθ6X zEڌ] (W3j/_>/Dğu%K.vѥΌW^;-E.Μƻ|X>$sy$tLK =Sq1.VX~C굧bɳqKVjHj~Tc "-J2X-KE費 L̩IH!30`2>e*PCyS'-eb$(Hۛ+[ F^ |Aýdh7ßsWJ&?ό1%R PO? 8!,fص ɅJ3wYBoSy {[ 0;XaP݆5**jdo DQQQ9ϑ/|jߨU~ Ncn<:pf"%lMVБ§uV}=2 `10z?7yZyo%ɡ’IUJ>.~"X"?o܏2o%$C h&S(d6 ^-W8Q߷`+aq՛h'wI~!_&ܖKo:)i<0*.(FoS*H~0h_;8 'Equ# {M%( ?wJk283K-K3IDc0ۣF";~ϑ[b?-X꩞܃SLt1nDJm/I5‚4N=W/AI 7zkp'@@Jn\Oq&VvdD)AY(Q҉EVVBudc%zY~`gȤ]Ax8pER|0_X`ҁ\ǟ%8&;x?Jn(, 'V,eȁ~ai ,Qp'`97:ol?:tV/ef "+ʾKհΗ-61 L XCߤ/s${iFҎu)L&kZApLL7w<2A(eQc3tu`ddI1ڴwΩ>^Gn3T;ys~G).8C=H T-3DfAcjNT#c׷qTc-;_,+e6 r٫rWԄmh)y^*zDjRP]tri0ʰ"$XQ\jCڻ@fcwzbS c44 h)q! Kc'nITՎ]A}bws?pQ jN,5o%#0N:LХ O[ `e8[dj Z;h: CK<_n0." N,P=ưa1F>vnB^:DɗָP/ֶLЖu%2IswtBBqկCuO O \X O}'/6Cڅ-D>ݹz06zWYU[ƶ )w<{_o8۸IDI(n> 6(`pNegy+&g{&aGnr'3N/L]\=vB 9r[gnf`E7C<$M ̮)eվ ;FOeGM1#bHnhT3IRM1k#* aNz[i~r&lY Sލ?PwT* 80VPDao!h=q'Rgz=Ĵ{~#"mlP~9&`K@nkW}>Е6W,.wHwbA(ua3'3tN /*YaT B=گ^DP0̨I ْVO{8f)ZoC aDrSz_ZLNâԡakHԜaCUy0G/D0%ohExU[Òsr;3]@\W7)?H>{%伋fH q}P+D0HLxԤ!l (;fZItJsgN$3anr3?F~,%6i܋_Sŭv @ K$%ztM-m} B?Cf~f)o% Ԣ$VmJɗ,}.vΐ̺ﮫ(Rr .{y+}>^C?,~g]uuCi׳Tl 9̷5/fNЁk;:dv{Ȇ5X4GQ/MDbAwu,-~UiY :hsKr^羱yO"h[Y,8VWZL9퉘z9z<3S1zEch,0 @#WFܪzChci @~f..? 0!{P[# I{BDq6y0ڗQ}-ӓQsE1W|wߑwDqnxxO/(~^8CW 4qɄoQ@ϫl5M4 h+U"17ra 2: \78C+LCT; Y9_lwTfgf]`?SI)྽!>:|dA?U:lFFTiq]NqCv5%f@] eLQ0dMrRnFz2 -Z$2@ +"[TPʩT6{6^>pҘJ^Mn'%.,>O.;4^31ߪPU5V`!ta+_hq@"d7'# G%F#rA-/mqIGʃ90Eu. Lf-LQ 5G֐J#;f.^06yx$Y5J}aR)ld:e0ґ5q'е%ǒIF # %\3-DD' Đ|'e _kV*ʎ< a$H3q͆솫C6_F aav#5WjvR[n͘`\U2RSӔǭGrmac(4yTABU?&.:IIn;.($fշrke[dC~٢lj.w@o@짿s\tK6!9QO?ihNߛiܑvD)/W ''?<fcpG"il:ؓ},A[Ǻ¦:27U? 1hqX6qm_Ba K#knVx*y3:3YKQw<v|KO} sF-VGҸE` 7D'nuCI'|mB*XV f[ MŇ&ݟa6wt1Q _?1&8K u҇|JJpѣ"~;8{ xA WM ,E0>b{!Nsc1̋m.zegP0oN/,\rSVn1(sfqe5_WiiUJ[ߦp] G*&$ѷY.lS _sF~gC:=,cxw?z:w&f(J v,vx8W/ *c/ W%6aP}[u{QcCMD‡nbr"Um""Xh= %:= Ʊt̉ѤYHL=KlwyWS~0Y%_Z,<-~% NH<ؖ?CMrJhSҙ]XPdo۞ Uw}ڽ@믒o:x\Y 4"MIBJk XGݞ1o-" MDLJ4:"o&.JsS^#}MQ8~H-aK`a=4"$G>د1Tv!N\n1!P OI(h?2xk<,UE5c@}կ-3S{pXA%fsDmHr1zM}$s(٨ή'=v3*#!v!_.入es|~7UvFJt HאSW~N{NU!_}wәj͛Еk)]S$M nZOQ%5;s݋L1'H$u{Le W+K, ?Y=X3F6AtJr각Ql('0\WEG75ZBo) 9 k1C;p`6(&[t@Cw)kؗs8 قf/w_ƁO')h[F(٩g[rVI݆<:|ޭc&j!N zNN'²vvx RU\4 `(`h\sr}I͎p2pO~+QJ^#C iV hBNA؟g ]Q0c^ub7ɗ?[7} 8bAWR'φMtί*7sYػ$Vdtب YݢQ)v238np!R|ߍ]`$E hӅE&I/(_,k0C+n;Ety,YRhA@@!#oDܰ3#E &`N#xßqGh=)|!Y]Ȇ1`= ΥmBu \SeyŚu"^az'Bz\| iϜkH-P,r!ca*A~\gv,Hǹ!߀u*LḦ́MF82uEɁ\w+\g,ne<W,9[ON$F&.Ы$ŁYͅ >-ثihxֆROL/$ۙ=KlCjjhZg`+}jAXs]AR#WxiMoJ}Cw$6 tq&Cpy=F?MvNlhՙ߂T- ziEHk\dHzY>NLfX br3g:8]!G&Nk:^~N9۾'mIz4;<fsCȑ'EkWmRO;A3ch$Hzbԣ 'IF faú.g9}3#*$$d<\|l3m2'ۛ4S"/dUOel%_@_gTP"oT-'`3ꐂ_-G=\\ou7(aۀ#źy,G4w`A-gN1o0RA~1hdXV Y'hC)1;ϽGh%+㹍D֕^{ Afb#+r=[Y/PՎ78YY|rFk^.Ro%Y! 7jcH[>1ǯP-x0NXkyP%*@ö)6!*].?x>BDg |(;M~`*a$1L^ rB('y.lI MN(NRT#42C?ĥ/(jMPZh-Dy)W$Xų>X9 ,Z20c <qWp7kT7U# X?4jg]ul+R0jq!vlՀj)}CoTDp>7YuŅp\P?kCޑaXah$uV>Rv"Ww<GHten \_S](n˔|UrP9U|o89^#@?@wK׆{p:ת6kbM=9' K&v*,q|P(\KĿ.AU-΄2|eZəIIZ_Sk }{3`†B}^Gx `ڕ %RYFƒmg"g;J"Ч2iy @k}`yc[u]wӗ5qb_8 rڴj_RI?4&#PI \敎1u4d)N\˥R,|6ke=eQLfG!٠+9u DaS{jZA:z@9Ո(Gҟ;<拞W ]-ñ__HNqu:l$O9g*>QdPI|6ؗ(iH+ՙ MӛlAtaL*RJ]suP*ޥp5o*AVf]2bN2!b0՘fPT+n\ms9l%0a4&>1EU3$?C{=P\r2QVAޤ#\`#*ǝTm[2NXP.xLuVfMK5aTc1˭F9ı}Vl%K^B*/y/+^«ClcIEpkzhGA5nؽ%4>Fusܒ3%迖Xv Saz!8 Tlkar#,h|CƁŵ7Kwkk6zj}e>3ϓ^En %$\O#x1'NJ[ !&m Ho~SdjA"nl$WŻ³@-ٲ{p 5ɨk2S nV읝aUb4{X?97> L*r}GRl/K6B## BH\sĞeikz+O Dcm3U@yH暈C^/n܌l+WX/5 98Ӡ։yu`hjL.yCbwsЀ)u7& V\ ?+s"[XqʱP06L6 k7P?Cd}7F,O{K}c İxkyS- 0E_p @-!9ү]?q‚wM;|3 /dXѯ] x9v!WfH;Gpzؼܬs񐒣5L%ޛ,SGxNn5eSH,JB> %`fQ&_6-q̐Qv뽟Z:TWO}D_ih$o^f=9*\C5<sjB,wnXL#3ϛƔ޶/-GR8.G)eEL1N fQ#rru֥MgU] ;7pBbBHrr5g P[EA og⡊~вzSz}Wq o>L5ԊjSl.Y]n[d#pw35n(s٩UaR?bj|+owW ;L!W Es85[XU }ì)‘-M..g(W,.MՌ\) Q ?w{upªno懓~[gЯHA?[3Y/|.͞ f؟@y ֕0;RZe#C]їƏEЬB /ذ¨6t7 N㩌=<;tPH[UFX^ E|p{%6>e'U4Y 1HqF;uOw#톝Tjw4vS_c_9 2JŔ[0B}o7_OyİiJ[ W8m9*̢T:Bjtb|?ՊUVCb%T1&0=wC[MMfGnL~yb#5F|j_՘ؽ-{Ѵ&0H3M *P\[$/\E5cUR@&Fg>ǕAu$iLggy$tEljșb]>/Kv}6mJ!F})"+g4aXn,/eW6.~e0iZ/[ LM|DQJer^>w) @{1}! }WT#b# ,'bhom6R*2nl=1?-RixCRPьub?3R0ja#qjgѸ 5! t8zuȎ}y 0H+ָ-Ѷᇷx;FmU1`)DMDr;H?W59']𫁨>OP_ -3t1 陯ye/UC(QPƽbJ՝%K_4`>%`NW(8O.FCcr,&e2U(nOh΍&ք,YpRgUT@c0O1hrunP U!9O JjxC閖 X,i!!6bP۶9F>{sκ "eR*ļeA˲ĩ9 Q01eWVc7K[q4#S6S"JS#ܹ➕L]Z@6 ?. 3c-SqO,c"g^k%0IJ)3PGzmOg8ԥ3 @R}3 [kHUUߔ2U?קZ8 ;G;~SCghBxNjqu}Ń|w!)Jpϥ~Z{JKwYN WnmG#D=޻ q->hk"%0Ԥ=rdcJg] 01M-hsw Q{]wKꙕ¹u-;,PڜobBWp>}8x̀S4->& yib||]`'D.9DT'5ndAe]yխ/O?xEf }ÕK F)Q"݈Jf!5+IG I]d.OȃtY1: N_84})k?FJ# :B3v 3T*0~y mOTc8^7Oe4ۭz ;Q=ɒr j>ySp#Aa^nfDXLSvn907̅Aȡ}@\)\m3IWB{Cl#7C.Ƚ ]5V !퀴37\6wlw!xVp㯾q`a ~\ҤIUKC6R1¼]\B6N#@Y uKV60iqv$O=FlykDw^/?ˉJ7=3'W*ØOvjH_6M\Oy/gtkN6n;Y'{O4`UV>S;]z[k Ÿ Tm%Гo~o-OZN7e*>Kx}捿 ֟\i!݃^8_m;W= ;sLPx hFmٔ_[e2*g/o ʡo!Bj<&-no.킌%i!, @NrP*Dfb6M,QF7z&ʤ>j0V:![I7E {Wgr{{cܗP4 M-c HCnuIn|"LGbQ gn$n ApTl,4N.9 ^,O(9&u;/$Jc0W5JsU7^hk{f#< a$w]:mgN`GPCg蟐j:&׏ UЧqqCzvhn fz%,ZX 40،拖E|"+m*u^Dz[5$:d|ӼZzn]CHCTNyLz76?lPhKrJ0ld'-}8(ں t4abO %c=r'6a!K1oC؅k뼚(nz%N|/@5w|\ƵqWet X،:i_ǝpl|o_ŌT0D?^˵lBh =KMU5l54&=Ex=ؙQWXefU:*Sx~sH )HH{޷eէ=fUn m9f{ȶ̀vήFp >HiuBHWR|~’ >M`WNʜSi^'RUs/e"&MD!4tczkM@>mm'q:%[HnPbUgP[>Kx D=!Af|iga_, mu2Z=~ԭh?%1%JBzH Ϻo2Q[hιElvzagk=1RiSRܣuAEZBKxLv;;f0>JQwœpyyv8 2RLA/{G^\l֙G,dG^@Zߑv7@bo]2r7 ܽlF KK.ūffB2t\dp]rv.݄W&!sߎрu#$3 1\7O@MLn­2ٓDr)f-/=RwO3ڛzsn/ZI*D0R`8\Y}!4ܖg8YA]&9z>znymJ]B9<3]?xtzMDaݨwR-3r`SJQ,GA.GVN/A3s MO&_lNrmMw]XG2c-MJ vWL,7'oVāܯ;ӿ 4E4rӃ#™QW}w>Zf+(ca?=HXp̝=F6M-4T#Ȓ,ZoMELADғ HNI"(.;#toc-\p6)Xf^sߤ cZ;Y7Fu ,3$'bbI(wS8k0 A[H @m2c K7mZ(&I] qlPT; %.>'J,ľbje:Nk~Wط!Ekr7iN1`/e2 !h@rÓ@h)UwhiO)@dN⬗@p=z!>w.&XW'vt4Eɪٲ_~uDD.o;W(H/GNt {Mʀ(ϡ JP![&bٽܿ9 񜓬gٷ4j{M2Սzchn`Qߵr2i쨟+YX{8RܼC=ԑOx3?`?EhOEz߻XMN;jl)JL^P1xtBɄZXv、Uhdh^ GUf;g+d2 t9jfHZA$.8){ 䴊/|)#lϠۆnyL:2iv;{"bd1!>2 X6O!rͬ!QϚܧC ;'XD4:,Y$08ї%,`.d\'˫#q VmS0|߷,|yD'KzJRJԜvJ$996 q56o.V)L g%K۴A<[ޣ kw̌%(oA69 z:^UPzPDA-w!;]Ϥw*UQ&5w@Zil3%s4A&fpl b >CT٫;؂&(epX4wdہa@T3:d=4$*uHUkok%wgvP ud/*LL:btRG\]V3ȡ=JtC_sETrGG ntneq!hTkk뭅S;*ğ 2E<]0i ȴVcƱŘY!;R|Kbd*ֿjC0uXe[IF uMP슐D}wkW}Y2TeTa欕kifq}@(zBvYx|G0ŬW5:?=Gϐ|vp hܒ[izoL]uUzIטyTg -F.G`ڲ?{̖qRVNܗa&NWgLHĹ8G %9=$qn#Wo(C;ʳ>[IaX4g( Z%C5q57Fa .Z9BQyqJ 4\FpEs~5ePX(m5kd@< d }2EbcA=eA1&ÔXeAL0? PC/T4\x&I#}?( ǃlix0#J]xU{?Ka _3H5Z7G0`\7N^m' ;į8cʻWʃkڍlO'մ7]VAR1r>3#=9Ļ{ <Rs>y7NJ17%ަGiXI3oEZOء-*-)ūL%hg]1NakMADr 1liAx>3syH>`gX5ZZVy')sR}U _{iRgb-OצfkZјLQסޘKoA2nɣ螥<πcN@jў}UZ6ZY3m(J H(fy [s߫1S؍Qdϙ:szSq)_E_ Ť*Zyla9X_A(bN 憱gV?0z3n`'N鷾[ h{t覎bhus{B y.WbBb+ч]K2_/L6pbcx/ \$qsG SVhO ~z`x|ܲR\DsMG`f6>O]w gACۋtPD{<ހhKP7oneY@ ,?Uxcԕ*t,5숯ҙq=*i UgkG|&#p4Gc{#}'n!V&F! = V=NanfmBE H_ZK\,gcI+bw?o]x,J!t(!x%ٗ+ƐWV:3kt'۸GN&vϻw\}[9UHNޭM \ASl(zn,!i-1&\8i+/@9qI1P;p>3.XA(,*dbGk n{ ۦ Z R1\p2-P.ImP.c;Ͼ'#"!rV 89(! pBnF3ԯ k FZ=TWmfQ Xiu4jqbt)9e|DJOkwבEj::'fv:-S=i-,PSzM381=uOW gHW8R[lv3WgMRVx>*3MZr?AL4쭰XɃpaxǑN=3LC%V4lt6̈.vN.{ӝE)MQаj0ftW3))):E`x¦ᆘB,6gpT}4&B7m'6w0%^yZzv^|2c3v3Wz,'rRfVkbFmCVJCCꧢ^dZ$is ,5Iȹ{mZ3~GH,#5KHBb. ǼW/ͣ- nupt$iuOhE_\4;L@s$%ԙRHh3el2=Zz~ԀQ>V9n]wv VkLiGn8pȁ[n[ <Qf c D3E Rt*} 2 @5>02Mfn~.Y.VA@UX94}Hqo'khVī˽g`gȡ' FڳwKȩAbC>g`ҬʹF%|jfp]W EJ113{'g@&ՕTCaXs#.qу&Vf*F/3yJtdp; ܇Q<k2Pp-+3. oa |5Y(8]\2'}43X],VR4lLT_$<3CհM^ ^Z/F^5Iw%/CNi^A# 9Ķ3>K@Xr =TUCY=>!ևc ynAkZpo(\Be ~݅'J9>úXwoz#"Rk, !6-tsE1Wj4m,;^I^F;&t3(eY-o7GeRpTDZBjchR }mdUVŸhno+Yw[f:T<(e!~Lw̝POrs:<]ųU_.GPgR4p:/wVtNGw`m"<4Ԏt%fRy?گœ fE}G( cWk<4 zU]=H62e<]J Xt2MJrxhk#v}/[VO L2]B.ŀY'bg?ebzv7,em>k!l4t$r #hv@z- B\rHۇuc:̺1Ә=Ef0fDxyjWʒW;Hꄁ|&I2U_@1\3 Jġbbh A[QB󵛗n"\ÈGed"B%<[v)m6 JxX۟9@:l2V1>>@RdaBQ{51rGy]h&F K}pε'.7m tR}D J",o!r:~x1!'X@NWɢV6IDmWEf JpIὍ8%&wO%L/fk+D}Kq"^a.<',ciTw̒_Ih&3``|U،Ө6G (Op\"l0<(\clid_F ^_ JB/& uE݋{vk/5n$u~÷a}VRǷ5jh ]Cņ [(_q= <=+# ;Խ0kykPٰ_˰5 _ڡes^Pg"Gkq> 1jcշ޲#v &BG^*Kv$SGײq6Z1yACϰq†~˶KٹJfRyC}R5tHCHB,eGTMqƜgc>bŞeoB].6ӟ灷|wCC!i"MNLX?*A._I2J-ݱ<"nJ=^Vs&i {f.dɖ|E))9'9Ys~61(gѣĎA61=> l|ḵ%o#/s^QH'eh 1yf&6'5!71P:!;X`= lJu;Js!*1FqiòEdL3 [Ojs^ -r]Kl?]tr@#>e"y%Yy”(j=] 3|pOjލO4&/l٘g7*gS@=[oX>ixj-sAxxX#@+PS;3 1|!JQr sG/LP/Ŗ7J-1( w HĬ\D%yEOOg,}-]B~!dF`uDnƇnoN-'CO SX Xݹɉ]eWd)(̵NIʼnZ }Ja&7"3WTMIzwM,ÊT e U&K+풧i&EWʛE)BI­1aVα!\6x &Ryu?N|/x4{W쑃6`D7RȡQdfdF3hY^8 _lfCV:8t]mU06шU5@bjy=LJ1s_wzD05_)q7z~Y@}ջge*V@fM/# ^ B,|>4 ʃLI1~(@r"^+ C}qXcb4^ i; 8 ~Sc6݋|v/BHyg?=-{0w)߼ޖK)ƪh v8B _ *[ńW|.״T^ (bQwBJGTF 0Z\Di-d3҄`v8֊)}6 ^*›k#uϙF&Az{5$J%=k5yeU"}WRUȏQ9)a. /s%r0'7%GȂ ;_ Ҳ. >ه .lX.8}iS;Ϣ%h@$4Z y*Ǝ`L6[g0vv8 &>9\G\$\l5a0;)e+>&m>0*[U,R$׼4lAt yi=pZ\ΊCeM)`Vv@GHZdRO\ڷ@v.ɉdOhNcOwGn }Iw)Bsh) ;:|s^F$6甭G2y.oБQbUgX|³0i6>6kaXwu8ݣJ q,&).ps*ӛR wkJ-0djwK}U?zt RB݉v&nO@.J'D*UA/qp9yHh G/F:I-&$_cF4W陭lUE#~dɇo e 6,oWS̓Oo4[T(hPV*`8Ӝ`T9fqVx(dܠDΏ A$* RPj 4ʆE-#y (7Rc D mTIWMJhQgډ~=8lװE&%f CVw!{bxߡLѴBCФA?{zh'5N VyΛnmuxzAdB ||l^Jzx+<+iRQcZaܹUP%ߕD-v8v y{d"6Yق  xSJ܃A6|K]Yn )u2Ķ1s>t%d(Jzt EkVv[Jڭ|h+'em[4ٻUAOCAy2sT)Rt"L`4;"%v?Rثƀ*cvy}Xˋ"L-33ukĢG(h A:ZuF zs?TS;i|5zTq<l  zB6&]l` fY׳HJdwù}?8{s`LQ#Rf:M`ά%Lh$)#DH)GQsT?&31"j%ZKƼ& Q+_m.l$Ff`ZcB8%\$V3W~bGY+` K3,7S} |ˢ4NѾWv?(Vaq2tobZ'N8(vܚ-#*ig?77zFJ~C`]S'/pj G^{j[:> #3W+@ \R K—z{4嶮* Y2<K"_WGЯPɞ ky%ohqZgk"Γܱpa1Su(PIIsiXݶN'&Kesh QS,WNq^ת!~4'XE右6v&ZZ^SU F.B 8!5aMz//ER +OǓ$_rMǮpW7ߖM{+rg.1ʹvrX%X}dTMuTU担,khUD[Z\(9oZƈ[,xߧW8bÉ i lLI4rE*i(%5ġ0mafOD&JA! !`+"gK:1ʶ% \xN(T(Q/ NG/D 9Kl?+&n &P ~2ͥKGޔcˎ{|BCuⸯQQvOݠʦaS~ {E@U:HǶr|{\BWŠ9u(;y!`Md*dFO(Ymb:f *LDK@ct5tPćWC/$/'a2RI.[=dϡՙ. !j3Q Gw!{j%dSkcG69,_5 j_&%>aK/x7S>9ξ Ow 1 V9ǑC蝊hvЕ!G ˱FI{Kh Oz ,A߂4YPh/w`HTQ)qc r8*s|,|h([7{| 7=&EWw*2cry{#^%\ݠC,(sӼW &ξl2U5[ϻd"12,PX) لYtl \b[@p~lhIe[Kzl;^i;:M% sz{o ^t*=ymT7 c1I!c0..F|Cp;o%ŮR58 Qo mƫr'V?̥MJho\H=dLfO=LH~3'jF}qkqG5KyK '9hcL_m+۹hhuK2dtN`a>U" ͚:C%z|x1DC1NCڨ2G4ΓaԻ*_9453c-ݨ@gЉNTJXo p/PI\<$ ~'jisc - Lx:2!(b.I!> b;:9HL,Jyv8 g)C'* p!;Ï3$04*aaN޾aK&6JaW$+-l1-P),TgۦfFPeE/Dh+>ȗ{n'pc4A;P1 b9Z_}4.XP,%)V%S)$aOøGiގf;K:Zi% ፛p*y$^z Gւz7E5VH[M*H3(;y`KiQ݂'g4 ;Ս_,^Fcx?c*~*zt@N ='_q|((k 55p:C-Pt`U$ 6!_qE(i~; ٥AY$A-i [ f32Y 1dX2.񡔥 q P@^03 ћ{D 2yqB玤ؾ5)5݋l &mKmbpҹ @Ȉ3DuYLf 3$\gibꪛKUX(ز-I: |R9N4Q= .dcP NaUڈeu w ;x#s.}ӟg$c#L1ޗ?R2kcǫ4CԐ< "*#_aޭ O:gIE1/]s 0VSA="5I+d>Jx{ʦZ}8{JM,b\<mQiQqd˞FU?{FO0x&M)2*a.Go?K VPr76?KwOU\|;:6m$-୐y4cөf(rE7(JHa0aMZzaIٔ \P1= ߘ/7:ZꞞKmF'*6DSh2V? |ːEͿWk>&f(JLbM0@iL㋁MMs 7~R&V 9>lya&P -&<],@ʯyѧmwi'w+.ٯ$f9wJWDuptBfړ̊-=G SZ_ Z%J|+ bt_\j” +5DYxJl'k˫=el6M<4@68D \-r1QlvC_"zm{$h\IRt۔IX1γwSLJtԝ~D9핍L v\OSs"pm{v%ԠmNY >*`$%DNtPgj6 &HLs`Qgy섥APQ4,^c_JFl~>EWyԖ-j_q;wWl鱺kt[G/[ޘᓃ9hFIW}6YH5pffһ38wҲfܝYa):.*)]=ePS:Gv 7bȡ`bgwx4 aMWeL*f)G*@ƳsI8 2''[|sUe16ڟ4M|F2-[bStwUFji6{${WfR ߫*wY`Oj4$#7J$(0_8$Mvs9sO(>uG]o@q(N9ߺaAW4wH\7Px tEBZx uuRh=[&nk{˄F>}Kg3X %s[:V{zoVZk1,? $ v}N*0R?p/րuFD wZ/hRŵ)?6 ÿI~A;iflyox!ue`kHoEE;n#UU ZL>L>‰Oop_n -x7鳝Bsа@vLIPPJ=-;am-%9@Tcq&y%Er]"k u֕jlJU~{!epl |9&+M` I,Yŧ"X(G< / bjca 1w̎MIsW ҃9@=ܓ˱8 /dE4/9M1r~}{:bq0+AYl1OT̻3ϑАu_?H^zYwB(!~3wCܛ`+|nwRDlqjv6-c]z ]$NVIt{LԢ3 DWU;tlxJgΤ,3]Fm(]@p^#Z yvk_GOupi:)Tb?IݟSS29ގd Fwt~+>v)s? PfMpL/(]۬!uy+! ~S- J`լz3+ L*Q`~yxFS߁ ,׼0Aja5')KBLFlQ0 I, G=[&0gh(Xg9ӥ04xMVڇ~ )'|2sHYCO3^\g_#}L4z>OǧDhBi2ód>^39$#\QŸĦ-)0]vX~dW( ?dCTf+&R =HӡDEbtfZ@}}"Ui@P &KrZv,&=84/vTBo`-2O(_<<q7y2l>CY* 6a+VMr|ӜZ"~c2*FDw4ԺeJ( vRRVsϤeD&w_w\M=Iӻ'UXb:-26PmZƹ#[@%|z9]mSkP۹#WpW9nj[ۋ$eP_Gz^W1I64S؝ HVM81;,SwG:z5^z$`8B!lh!)V=MЎTvTϝ!G?L'Z_pto\8*u,'PsY&Mn=5S̀kCyO[Q7LK 1(5u%}F0Gv9fL&)e9whS7u`*]of:@jBx>!;N>?V!9 %Wm 0r%Y5S?»Ldg.i[x,i쑉mHP2g>ozjiwG7g'0>"$5⧰S#wHhXJAZ5kL?DGf\dλ#3ءC.σ<ꤩZܓ lpbW8Ё*B`}{Bgh%ο઄D"u 3q $S`ӲI z,-w351V(FM=\̊ ?vHlnJ*J0D*HCW$ӌXmDV=Nvr,, S!wWg}VO>(p}OL\-B?(vV ƄO{`GT",dUp$Cb@RIdɹ/µnn3ějɏojٷr7%)P[ީi^[\Ϋm.$Ìg<\4L}gwŪJ +> lp4^A`Tع* f0N`8BzAb%:uY߹,FBn+ɞ&@":/Ӭ,h^b8DJOܟ[VpsSrwpܣ♘jVG.%Gmx}%STi[ϣCXbI^Xk1,%#K`'v灾Xe8/qNyN)2.SY#w g2ê\*>o/9Zm;t^JҍAX 8k"׽A04($G"5]G| p^LyCs;,ՏTnk%x('A8Q{L1WiWaڑ)PVf$c fY~7}W3"%a?2sԤ4?H3S`͈`RVu'J/$7P!@D9]D~ZO;fak%@:uW*~@\\|*<2pmǦPA JxUWL:JFv㒘 wwsGaE3&=kܹ`ݤ:vݥ`-7|̧Q6;.> @1e$fbͣqأ2 U)+\S,uzڱ<ec-S(t{qnnWhM|m -@g-_ }],ݲ7? U'SDߴ<͘` օ(=0c1h7tcwSX_R Yj ww$*W_Ɠ0u3zg0 9\#ԤxJy`?(HG/SU`>0[چ| l^~oM>u.l4SP@lx OY7)P2zWu}<3?O2'1tOؖ&Hہ8X.,29~iQo0I scp+uFJ rH҇A1> `h*v^/nZRջ 7G a,WAۍ0'PV쏲ԟIlt]Q:F.Tny#2w;nvD!S;UtVv6o͎bzk#:>{kh>$]x=S('/Y'Ũ9O+q۸>'|Xe[ē{.&s?k:0)VC+qM9 0wV4!kBZפMI\gꡳ&kӴ˜/8y=-r䖦}ëξ<]I.3f7|d6l_}9 ,c]H*o+vqӡ%:hMl3Glܩ<=Zg16^^9d$oM}ҦP熄ODd?Cʐ瑆B!߃6c[DT$bl`>bWhttD0.K\AYT IoTy]/ʼn: }Ln.Ǖj5\7>f}5Ӛؔ <'j:ps?cvv/=&Լ`hFuR)lla,ĴA6L'!k;'խ҈7 m/X*Hr-PK-l^Ј_*>kYLYXUzBo` Koip?jVBE>[8p8h 'Zז].@:@]˜HŤ-`0bVAߡa}iJPZ|O'Luا&"骯efkaD$;y"W]u)|A#r-'%Weȳ+t'6jzYyYTQٻXOkr:Ck"' :;JᒛIn<&_NߪO'mA8ʧ7U/Be1-( 5@{p : e:B)mxUhƝ`&롑Ne]F׌kaoĵgiU1E̔}.3?C@)6, ^UD'DޝF0H܁*ZϽ2 ֗fk;=OՔAoLS,BC}HΚ=.`=`tW I +]3z 6cy!=gQamڅot0ɜpBl:E~ξnR~>*To#Av2KUP&b);X3d]Bhj|~,}{)9>KA\W*<ΰZi;>4AX Wz5kpTy\ 8S-x;cq[Y69fF{d.)x:.ADp$d[mv,.f1CU6L_74-Zj:'w'5GC5`/~nG3|i0hgarj0|HD|PDSfȎڷcL~$`8oWQgd@xV@KPTpZ(/?Xiɲ{=^BIJu)74L\}p0y_ᒴu4iqdSoIGqY*@k>|Dfj&!)n qwi]T"@oHwoN&ǀZ1rЍAN|u0 ?'>tA9TJ*BQxSʯ]0K>^s'0ٸqL \QXh=8<*%^ɳKDFJҡ ] 8(>>->0&}̓J'یw_ ߥ*hEEFɭ=kBЯeYd"W|#˽|!GXywmE?}kTN|li?$`U&צ(JCݦ_t͕"w*eJʞj6D?R Emf9aaa)!cE5Į I{2zf[‹ ^P6tMEiyoaզy\K c#) u,\?Uòx@!=>Ed cv56%O>63iL ]cS9RtoH1fZ,L i^[%jL@J|[czoY|EAF}H `$oG%SmPكhd9$V$DX!m؅*bD&GS+gYWPT\5zWƷĆX ՙա$گ 5aןc(C&aLHU{ܦ~^&_}[K@)۬xHf_KFd~v32͔䯋#_mݑ,nNA=_x.mayre:e>W>P= `4mEZH_/(+_I i< ʋ|{ CUM;D[!J>iZ^:Ob:z{"m[7ʥDҚ8mn漂sfBV=L9J|A 46Qa|꣩8߃ KckQn: "~rj2-w\o [$ sBR;a|>²AqbggZZ$C>\]be~4LӬBRdrX-(=i h}X ^|eR4Cbc1]H KчsnQMjk w^x#*2_ 7Dacޔ}(wˬ =4q[y04EÍ z/W.#"3ՉhVF ap{xM Y&\#mj13H*vTKc1,< l=ֺAJ VX )zJĎ8h![/WVH1uSbqwG?DHP$LO^D9 ~-hBy޼4&J"U֓2F@³F>`Jxd{^`Yh֛pw; $BpJ̓ տ % XW7졛'c6>kB~k?TY "$8d龮P?t'P-̭QMVB8 aHeHP/ y{T J䉆CŒX&$o`wMٰ >v ;^؆f HfcSjKK s%6:NuG{]'p%֊{;@@.ʃ_C.+ ~%+$bc'ek{,*s~؝/6ڂgW6n. 8б_ˡsu zMpYAFϯd.FHr1BnE.[dfS3~ጼjE:Dhl|3pA[fLiIgmZQQf$}o:11MyՑVv]syCn"V%ҵvҰADޗlD䝷 ;|+$uۚ#&gt 7BһM98eXZl(q%R` {F:@nxr_\84xoC8&s鱎2 S|`D# &y!N1cTAN.ugE Dh9 CIYٖAՅ#g-:JSu#.i4CT8@ /s"M1cwa}C 7 uu"%cu]^K;ة[ pI'=˓*zO2R.:0ɖ#VNe~j |,20:D kXwf6;C C'A<'SQ7X`V7m !v[گWD([xľ\}cH1|2XHE3O(fEΨޚ#n0ߵv ŘZ$Yj,Pg (TazEݝhd%YyjL#UwƠPKh/^O c3E obL;yt$޼5h%ԧ> M,>3bNKSʻ |_^㔖YzXI+}mEߖ)ߏi)3,* H+5堈>6tcJimqL3g b AHJ+{wKãZl⊨Y6:F#yv>BK3nB% E^N^*nT 3v&GkC1mQDMm@$UqoY5fN*gdX"\j%V` k''oe_"2b<NFyZ)9nkt8ÄCFEQ vGBS(8)~ m˜!b3:-eZq~] H{ҋ@BqYDrRI_ ɹl (-w\V uԼ1 8KдÇpqxFW<<<5U ;ʴG] ݧؿ oͮNʨPD R"X%SAH›4 k0\hތ3恙 b|W W5>k-FFsR*Q63\OW8u1DY;0\,)ebQ\",op$}HUX匰C6 ۧ IţIg)aEJS=PM!1 33a}^_=ߢ:E eۋ+tUV6G+ zv[ WgpO׎w_]]:[͊3rM/`Q6l9z8E>;}05YrA;Zbv*d2 gzDΕ.k1A"xAe9 Zansrf)/L;5ɑsB`{}G=4jC^/"4]nM,cLѼڄ )-y=1~Y9ow?QG%Ӹ.{cIf`K k,$q -X"P"vL KA"6b[?鬋t5Jǖu P8dU49K hi6xEVe5Nc(+ݤq_h%#&8P;ИgÏʈ`lpZV8wXvl zLYm$ˈu`F$۸p4JdPžb039I7tEh: ú:Sg:\$:4JcQX"?ub=D3!M hF SW%<)S";>X[(sjsV* ͔15$0Qasm"C^'ҷZ$k!Ï[7rגY/eJi9̧~ug>,Kމ cb8Ksf|5ϝ"6ZnUd4MEգ&];.0nT[xٰ*̦j*?oU-=gNEZO%`:4El oi_B3e|JHSefk.6m̋nSWʃJ~TlT:cqA9#_O ݧ̫/ _&0Y26|[hSpn姷ψ;㥄e. +fd l/YiOZ^h eg 9)gxY e۪!h: *ra1ҩJwbk?=. F *E*4;f[~E 6ɋ2/P8hu8z\PrE~U|X"U=TEz$ B67vYX1RBe0ǁ&]\8bT&<)MJ@I{ *7͑=d|l4 9b ʍGՂfp mIǽm9#h't*$O\&./sb_.B쀻%|{T `ʨ3&0< ˠb J*d':T< iH̀rDMң˄|Y~Ddr)33h6q8#C!Ⱦ׶.ƢF]KUMs+S_tt\Ej+6b vR_NGmUMl4M {ǐ^H%𻬖?SQ\][=qqEPOBj|kN(1/*( gelY0(d[<)o:R27Ihݕ>^Z kIm:ڬ!/iX|aU`:T䬻H|Ȗ2+^ךc *${Y\9u<!poS at!Iq,l[o=.͐32d(&En8- @Kw Z\QFr0wcLRp1Hxs:{_$U6I[#mPUqĪ2I*ohFP5U!q[|l #»HV[G>Ƕ!VuՂM<#W7C>c\/s6ojէ(+ZsCG44t6W ]o_9|,eiߍKkWv#ԃ%Qk31by}w/u `g:ԗ Y e9uQs: ۆdGTƕ\,uRL@X\ßr7mu_yJ;बny^߂_Uۮ;jNWcyALR8 t8L4ELb:%sREp)G^ˈ$]Hmd-bx; U<SVӇG=#wï%ͳ n>9A& 8_ihBU꺜ϩ7A?/HCo^X8-5g_(94]t|ɇ]ezȇmxW3DЗQ: a.$ϕE BsOET\$ox8CT>"M#. lc7 u@^ [ihقNu%j>[ڋVAfXL< mؚ+&pv}>\\ j\gڡn,6©Uӆ p~f~ˊi NC!kE.04иcnT@)Zuh9Y#Mƴu4Đ6>J' /L~R(q^[x=2e'A.D~wDĭ1FK~Ƚ~4bGt#"{4=LFc=VC wd<1h ̈́%t_r8A?'ۤ;^kX=h8G2FcRIsxt Q ';lƼƇ7YtNDװMk"c.N/!2!*Zf8*f6N4 @U|D7^d?~#sg dm$sDǫNM8i:y{Zrt7X"@[ڕ K );DJ4r 6Ti&Tpr_Ql?z`Yz 2eF7wK [5|DH|F^Q(@nAiQ 9yAr[YύVST0"DFMl&&#<׽[ɣI]o/I}[;gKdrAa.n>O(V-ƚdKTjXrvNvFY֝E zP +D4>-xb-'ZxUZVF񧦜#rZnsJ,0 rFHf->F>@YlZo/=հwV*@S &lx.SopS{:a  Tk%)FC}VYE3u"G|Wjx噎b${S zGp'~3S)MjjdA ^JR~X^(طy[>{:ݥy^K\gy*`#g; ZNh6z mgeEjk KEeIW`{TmB7qI#Hh_X[K >"R*w҉`Ń#ID6U [ 7WEb@QRk\ ]˺ \`T~ xHzb'Grmm~V?k̥fN0#&<г$ئd\+Z+[BHS *PʱX;+qY[wHL[AXE>6gYb ֌%+ g=Exõm7x՘vIZ##L\z.|m HH[ o>tUEw ӓ`)?tZƖaq4Noy9rϕV#YK-r] v?k8r-)[i~#H=hU΁/{'r2yvvhL;"Yz=Wڠ!mQ07sVMsh؄'\QD+)"EwRmͣ<` !JU4&t¦I5Q2s!'|,tgJ_NDgr?:+C< L^m2deeݽΕΕ(=w7p4?U,2sMF4su-ocITFqc`azu72%kUrվyƴʅ@'_w>Jro"9> e?TZ)70K|g{0W"z vV BRD'PZ/E߱8֭Oa֬|wOۋĢ3"&Pk?eS }EdwIc`c3<3nQs?5HHC>~a @b !CC=}ӄHa3cB!tM" /9{{RZ9ݿ^f.vV(H$[{*3dS )]ەopze rĪI|jOstm)}tmHvq. AFٴcjQwɽjц+  ps@2쳾:8vL`~TFïv6WO|F;FWwen>lXjzuz;Eo.%sHc2l)F-ai3fڃWa:S%t*X3+Jby{ޣ"ی=; Ix g$U][_Tu w3<-(T e oZ^㷾/Yt"0^Yhx{aCӱ %N@KD,G׍*'Xcb>vMFbdϝTFk }:vSi\M9Ѓ&3y'/dgw+h<߈8k^BQ݇h7~uZTa4l(/M7Y10/O6||Ek&һf!*[{o^㊵Z}ez$K;"lG8azOXjN[_'4f0' nh|Zr29ʒN)qfdS _Q纒zIqh{F@`ڮW!$W&-2}x󜰬{ ?d>sB :ob'WG82sf9qlmM~2~7qJ|2ئ֠bчƆLSB=t{t˯8ݾ=_,L)fګE5M9ZćAҔ1Uek9lp]p _:yq3<a{<hBIQIN|`GHxz,ʢv-.vQHWU9OߥNS7Y؉"`0j)יlאHwJ B?Ɓ,ƈ,S:{$1do~H(0)C][j6&BxcS+r t)'._AzZCxܢ 6@IQrcsgeB)7`9]jFdaF!Xj Z</Eh3wg<>;F0 bלC+] hU4F6)gKO9]o(sDR.'6JɸEWx:hV\uԌo$Ֆyiz#bq(i_|p88wCMA=9] MSǻsjz \^MZ*C}"$i]7H屮y<ѡLL~։veL% xlA׆$As;}S&5pf? Z#um+>bz'zHQ? *ח4Pn!Mz=2O0FͲV< MwiعɈ4-r^6.xED–'iWQTяF4T{l59QA6-wuʂ>3`Y9jbZ$Ys,(X"(,d- 3hlQv1]gLl-_v=N\#!"\qֳzBS1 1Ux+4mg~B\|^dk8ӊw=+²Oxr}dGé16QA E-&Zn%vU0w`f^|գ?oXP"2+2b#@ǖoN'Gv"B!Nbo"^}k>ܞ&PўWhz?൘`)`d!e.TS5`?Cz21< ZUJ$^84n[n[B'rfd0z%h7*{Q?aٞyuGTnb QAxI_ t МA4Sq9DY z)m̵o$_ t^[lBƝY)㚢 qTb^[Z*{%'Ep, W|3^``S>!7X-o2z׶;j^2]H2BK܃6בm 1qhW7HDd=(<5 f'{e1 T' DKIKY=(B=lT˙pxGSoɑߙ kJ(닎V dV]5߷-'bnۗh3v$2BE'Nк?[l:Le联K>4cKK̮c \vTD\Kf4uZnCtخp'4֒#;U{#i*]"|m!5.yv(s=0#57' 0 raƳ -?xjjj﹫tfES!p{T$ɘl5n쨰q5?`;`5MnԈn2p6{'KF.4H"H 麛yiC^Fhj)֧Lqr՗?W:ţ(C *H0:g!$ Ȅ7;_?`FRV%.zu Go2Ʈ\)mj[B#¦8kx*w3vDP`3r(±[gӌ)!Dt )y_)[ R`:PT[gF]GJuu# S/#lT=O*~ mFYT #U23xX cl52pnÚr[pbCB NJt?@)@;piL ~ )mNP k v 0Y8F@Gu_'7jfeΪ `[=h]HOq_OW)%Qfk˚v ϢRV(䩧p`vV7SI@ЩZdr=``ퟵE(du8d[}X8VMJV㹎Kg5 6L#ϖ!|["XxuIXzSvWSQoNƛVҼ%/vUWDHx9LSIFy-!fl;!В \>b;m]ܡ|CNIتW꾧}Ќw2O,fn8y8 $kàN5 CX4tZigw6y% CR𴳉Նk_^ߩ??`wzվ$l-z巛u"oS9qf!Ld~RryAL7Y]Ҭ#ףFC}f ǃ%ϽbTa~ Kr,#(-<=Wb{6|$Ee`dɉ/F'}æz~p22;FF g@ĴKs6l.NfW{'q`͒i24߲͊TE*߃Qاg]lL=]`q ͮ&[# j@=#A{K*kv>KgOE% OE A#ˑ/ZKqah؝cLYpP~ubُ&!3(] $`\)h#OS* WbcC*qԅcC{7_ÇYN]WeΑͧD5En zFuy*T]|$]Zphd(ɱ}I^Cw;ܓNZnm]=h]6~s}S|;5uy0L |q+ ܠ|_V*"j2&-, 3$'86~V5ɕuGOk8[GZ1ʻ".Hap710h2NDWcҀUuMƟL84Y[LLJKUhd)\Ldj`?7Xk~@͗IG?n-HE5Hq# 4f5x&;x ?۾`Z`~&I+8]cxvoqo"^X֪ܵsu?:ԤfA'1!%  WYƅAHc#'iignI]6vD9ן3R(onL#&9ئUp:%2'ʬ}80w]>)\1:L[IT!}Ie 0F@vV˦6P4B톊yKBX4 tp7ՠH97n.;_C< P]O f[o5Y53Ơ|ID9,wJ*ZmҧVJHGS1>džtZ$֙!C#ϜO>pF .BuOǬF '#PN-θ@`x,]TznSt鎉QnVt!] C7W;@T,=z-9'p .Llߨ&7PA,U%tFOj)jg iLBˋw:Gn^5ժܤBP8XrP<(e_oB6 jR\!Uɝ' o}}O1},M׶/Dnh 9+NRsrH3ێ/@.) r 5<"SIEDj ?t@?QES/|eZނ'6f_s-Jfr0| f†c fG *lp}:YMԚzJ^[!pA ΤE+i_̶VtW7=b%,#o1x|pG[s]xoR7~b'-bݗgJ^:3>4\W;[)G iT9 L .BCw?kZ/pݲrJCl⡈$+=_<Nr6⟤=3a| 񸔉n' RgtXUE OsR`e_*SH;-]MƁAj\2eCv(s{w 88Y ')d$;ٚy \j`iCԉr@#ՠ#sѲcncP&UwX lmetԪXW)Ok!l f0 2@Z^=bX@gyCm7.*1mgeuFlzvBIT;o4-sdwl= G_{of#тJ kfv GhS2spt8J2q+5s{\ bBab>#/"g:!Fߡy4@&fu5_ >5{×-;Rc1Pm tME 9X cvY3s:+1u $׈:/*%ן_ez(WSM!@BD~j+U8xKi~>X}UaG^ !˗cj^M/ׯ程&m8C[FH]@J.'TD>ة3;8ƺ88B$Asѿɸ yWMw8`I`$<'t~7HEEN䟆FdQ{wWl-Ďt3?YtWN4-FDFr@nM@Pтυd m>p]i"'@z5á9#BH"{F䖾^v/<=r bHGýPqKnLnmOB,.*e> 4ͿFšY!>(B:J˙M$$̊KyTf6Jm] fh&n=QBKם [wnQG3WctdjDM :V'iZkm; c!;r5t9̷7 kQʠV!\ Oݫu}/SD q0ɭS݃a ™14Bb|yBh,Fk HK'hdJzPb`8RY0h~ _5/{®O4/y!N*rзquXɵ5&KmT"atW;@Mkz6 R# d}''G} 4 CNiwkX޳T5]Yw#C+ $ ԇc_\[S_+EHk(oAVCrxȭ|oM38M?`~ _O->hb?|RQ4ցQ9kPCK`ZN%v4Et D9xg"a5Vü#4]%l؏QTa&bLM\@bn5 5|.:,ro} p>0?X˝kY1ŌP5/",CB QhT>$oNH_{ *s @zerʱXWElEʮv5%c^OU]UJ8F3o=-޳ oh$^=U,:jdԞi9 zV1wslXXU58C9ߢ Kq L tZ C 7 p͞U*k>Z [_. JA賦=sx uۏTq*od z,Mw c&"Lĸ)_S|A"shbWeBi]TǦ%gH969\Tk)aY׉x"R ]XI@^}?E˿_րP9wX|G\g?7 hڂ@9IM׉:›QFsN^.G,l~*';aiFE %!ʡSeBs3 ;iʽhɍj309HnOD]$R!!tgy?vU\VָOd'$P\^p}g|뀑AH9W7"ep"_ -KI3>S|n򌿼rz ˜ Uh[yy!;N @ò)|:6<yÈ7i&[!}Dq1%t2Oԩ҈ a2ˊ @ 5'^Po74aS7)(I?N? \s8P"L/A(jdk6c*0W#@ez<]ܽjsi=Ov;O3 Q%Z{u rөSm三U51;RtL2H2ø*Lz YjR=RADh:0iQE'E36JE(snUOܠyϐ'fN=;BXoEEb+^gGu ]8ʸ'@/chV1)MF%m3;0%G0 ,&DZh3N';*ȤCӬ}h szY ܩ+շ<|}XD Tl*@} Z}3άn(ahO7(id빵rrc6m s5ϖ^-#9L_eJ% $&XrޤKC1[ iq6,\%>k|Pğ`\K7NJ'~g~is3M*O#v,XŰ:[jTؘʘl$l|Fԓ1ʗR#>O>v@i%\W+qY[P+34HUxHz]KDH/7c) f}Ȫ7";4+Xpw/$#`)(3*QAXJ.Rk~%h薁#-jKS_6+Ǝ_-@K+QJi7P{5aFaq"cIharO9.UɱaoaҜۇӖz| yQ'#c#1ʉmko+0~8G;2 ķ0 ]/yځ;GjsvDr;Ҳ*uxfUpA`1we=P0<(RH$"đ#̆nW3ˠ%\ᚺmveqhHR&-3-s"Fp7ʑTħCjpL҅ppQɢBZ5MH7d/+ˍSPzθ6Ӧjz>X8mYDr(zrGJWB-7F,||k ooܾ<'0VkQo5k|ލ#Ɇx{س}1}ܷKH#opci~.g L) :IG*@*CROs >*$JDtai^дwP96W}n;v50A}5h /k)oTGνlFwPsu# *Mm3z2uؐI 4$KxD DQeC`ځimǸqLD7u>jIR;ٺK)V|K>YU ÑOdi"c:T㋍^- ׻5&zyD¤4Fybz E #,2ȗí0Q6AEA &qEYF^1j!o'p٬01PrUobG5nN7ܦ5k* \4CwȔ`(?2B"9(uf3Ha֏!9q(uM!,7}ȰԚ444-3ʅ!~|uݴU;Cs&f$ƠHp 7+~<&AS_uKՠI^zIr@0!?8y6Vث_hXW @ u˫M8 /ʬm59ݙF% B˜)NA&!ySJ 6h5İݾ CJ &ZCт)+[(] +1cM's%>Rӧbf?4G ZYc' WŰwhucu a@8PୄÍ*&I60J8/b ,Ls?Bn$7ޒ#ZGY;jL)QX D>cIyd)o~ĭ0V  .BdAiU}l mX\F1ä M٩ ,kLZ-JP{I1HQ$yeQPVО%(u0[x5"r,_w#4$*%ŬLYtuk)_KՅ?e(#sg}MVޠii IF)4|+CuG7bpGsF8ؤp`(?^]Sp3]yܿ<8}!rȅc [v4RbJ?_t\>=O|@-+IRq 4H cwbX.ak &/u0XZfam!U##Tt-  h\?G,*)VE%]X3y@d>|/i֮77Z/M0r#80a~N7M}·hU6wv)$DXoK -Z=^8$D,C}jYJzCTC^}pȈwkaP&!u윟BM?';/-mzQ ZDSM_Oos7 sܾ\'rf]T %I஝=);I!lQ4vWY6{s/k3'y$$QB<Ƽ=QRQDI|L%w_UeE/(-X&:Hb lK,+`~us],&ZkUc%=_+5QC6a=1V,iPPqGFWZd#깅}.LyC^L5NV;)vE,^c$8RM1Ƹ!"XS (l%'[ΊBV!dY ؎_5mI1(V_,3PE3` *]Lj\|9 ?S8)\V.fFȞg{X`rN*[E,Зo:;{iK<};+5 2;L),0y);ȹ@0AqzG\lT' &Me?`.i,PEJ?f); ?`.c;iO&$Tx ~>UfVUdh"b$coTo+LCSw9/%`Pzj>nH4ۼPumn1xT4oe¯ED:XŽ=SyGU;=Nl HL<24h@}/[~"`BQT=g@=bb}P O^I(Mi$K ?[Ŝ.n7]eL9Tek,;T2qBÒ5lJ+H4SWaO|¼fbW솺 t$Ur VϏnNʑȯiT9@Xd5tũ]B6$\%8n]*wo& ̉FEcG=k|Q#؞Kd^2}UԿaU.4L3!=/#biv9-bu4:o<2L] 5N=B2'l҅!>!!6K+a`fX ak֚hkL=| S+t 5e+,m5Ƶknlh'lO;4JW>ŦdpeDp g3;W@™ JEڬ .ԫ!{Zq2 U"JRr6#~2Bݓ!9 Z"٣OqD&QSR9#Nч?z՚zjʎ`ʵcwIJ/e|i)] krCq'OQI@V½uBf- 5`R V'=ivyu]$jQL2i#"c뵐 WJ%d}~=`aHox\?k.A;jjKe%ߢddʟ{`-LΉ-T4["X [t }0Oq&@843Sݴ,G-g2X4SǴ]sNS,arDϑ1p v<m*k~!T}# H|e%Ⱦ_Xc1|n{Eb]q { z!b?@줥(y&]\j{6&4XCHG+w},UNAtΜN=3& +Cm$1>ak[ 8.}hAW4_LŶ `ZJKYNѻBm o֔;3̍[;E§8΢uyFo[ʿm׋4 AkZe\\3hD& yw6팈<]t1~5N7x]q/pFVus#ڑ)Ngfh䥐*6VBHQipe<~k4B1DĹ)x:z#8#fԆmvȵag2'4fH>"1<׭l?&nJ/Bc-J3_#h,ӋK#0Vd^ JgzyJDbʭ<-T+X%h33UL(o&1 #,{"Pu]Nu\uL;DM2_sCJygtsp5wZ`h}.*<%XQ.wpno>'O W "?C1M$![Y-ROC6qbN#ɼ+Naml^1!F'N _ؘ`* eWfJXE@2ܥ-n2#nn±S+B&[Ty-n-A TH$V&D@IB@ %Y+n{BfFzD`9&FO)xs8t.Un. :L/l )ֿ!NB)72,o. ^4mSew7(6+[v~)UfpGTM>(!^7/0#q #Y3=ǓPј *Fk`i)g4]茝B"o:VfT4tMǬ>3w )3 4kiW>np1O5C_D>N5`0̅Kqֵ3e;EsAw<4oit=q]u{>uܡn|Y܉*۽/) x60=+MZXN6D:\ǵv@Wxs*J #]l=f}Ϙ鉋 E{^rqI|AAPf"7d3ֻʨ.uH$.c 0xsخ5b *b`jޭ&IOi{YB6YKq$%Xlهws7?g*dʐru$;[qdLy)PTϦۨ#\f&Y}ZHaQi`U[GE閨WdS-GuyPC .kc~Y9Mc,A{]n3Fn&{$"۫ł Zx7{)~*  j@7qSI<󍚤( *0˛ˉ3Y:+[aka4"Y-ݨ;qnmHZ 'Ed />;Z8mk ېY/ L+1hևWȨkWJ[l9Zc+A#ˁT%Z q弦axL2'MnewbUkiV;b' gR$ŏ+Hen 1 55HT>Qh~sͼmO|F2"'3А!dk~L'󽫾-r^oΈU$'l:r4PIݒރݘ\[!¦ÄzwNQeOlaϿ2sd]iniy.8ɘlXnrʚR|=`NJU,%Լ$ d?)T#8fve}1)QQDZ.뻊 ) \T,.u~ Va)ZOuyniɕz4 ⴼ9ޙxz~h Enyk.9,s]KqcJF t+?5EdAXS+ ~fV^΢`O<\dᱼy' .}!cg/"z-|!'HzhaEч }Xf JėP+:x]"KInlxN;E^16<#rATf:$+%ғpOfm+ &1Vb5s0l߯ 5 :<[Y.[Uކ@eô#2.s"DX$ 66-ϵvO_Ș+r" eufONLB?8~lx'{}$6]ՃvޫljBS*;e+Ļ܆I}|XCđC]Bz\LW^GA$#_ƀmNͷO(+o H.4V (8o ܸqa;E+{ѮmaCaWycyq Qe7U|Kqժ[LӸzvxQ$jp3bRIi\3ٌ2B_u>gU/>04PMx`,Bwi{pp eWFT `48?R 5Wۂ{oǺuxe;畭f$zZ,R̯.3\B͉S!.Ex沂KeJ>"%1IYSFZ*PaS5!|:vWRM.L`[QdH9Hc vWwy3b?2Vz d|uNB wQI8Qqi^d"X@,RıTk06̆ch䌠x҈4A|Yb+^(Gϲ#%{YEjy~VǀOvꝏqgLX(3Cz3,=Zl m-E{&abi^[ dYO٘v3KL]!XM{eǖ3vj/ӮŸbpR'Tb|py 19:|O>7Xp$1.yE77V j| @Jz97(DS\k0}yENyd܈65H d~.~ H{ 'CY<5%y-w=ɬm8hB@?,iBH1Kt4ݐ+Tg6pq煀N1J]8<2 !BK#}JkBin 8B5H({53:n`B^Bܙ_zm5+aГ0 Iv3V l,I89ی]="^I/.de-Z/g**'GGdx.)@8CI86Buέ^z:ͽ%&5a)´m,>833֭ѹ*eZ]pqe-%he,Ci޴F1mr_t:i7\?x f&RgCbDR:a-To:)ЌO N5TrgWc lП73R[m/r.# sR86\o&1CC&!44S*VMuব _XײtI{$6`Qp\,5 _rw~pO>m.q8հiq!fsr2&;D68r 8~u ]ƃV( ߽쉪DmF&)0T; @1݇4prQ8P(YyA5HqGSw^음խZ9VYu ׊t24=Bp4V@N@8#G6,4W?6Ӡ.<>@@ntS+6#XqPA:"_,ً/NFg Z{XUMTJAvJ@2lg.Ԟabhl~!O=UNbwh^Pó{EV\z YZH\. 0(Qhc=-\ȯU @4WbapMz}jRB[4oY(9-ePh>9(~:iφNA;_~Le|M؞ʅ52 Z9D=)+i&7֜D 38::+;)k~w 0 BP4Exkmj"GSgXcͅ~6ui7Oa)ѥт7(yGsd<4k+]>}^UvU ui+UL<7& 2ߟt2"prG)ޜޮ|g_9sENV :8ǡ?\?o ': dmP9 ?4\ f NL `e=sX>;^W%ͥɖO *q$fLJ>0|^.Zӈ* 6݇p@5/}=cTh-J=pY$*Fk#:Q&9͚C7ġI:əc)B :57BC5%u@LQԔGwƌM$*^`>/3>o_>=T|""חk΋lZic iF~3{*R 0.w&NuTUUV-fh!j51^ Ӏ? {@T* GBK9qM .="=?ȭՏ(0@g[5me!\ 8WW&b,ڙBzȉI>`|iR !OrB[6q2А9Su[ҫȲ*@]:s|rҖu]ghr+E~L:coȗrO yJ'lw v\5@ڿ7n_& UԫN^ɩ\p#e4R'9l#VIL[ݞ(@ezU\Xy Fq1Ufڜl VJP E. CPcͻ[6ƍ.  Fga 5ѱq (EYFK9?+hwg¨"o sg ~Sfu9]Lr=H6.d\*Qh`;C8Dӊ>=r9sXWVÐ]26pШ͎~9KK~ߋx.{DK*SuHε~-;frvV|C6M75djh/E,phvO0IP[)(8tNQIH$f-셵J"6lf+)Jf6^K9ǔMBR]UVD4 E%ݗ?aC*/ѪZ.)Iɉ{{bc5 \Aaf!ф/yvW鯗n˜OHmʧ`9KWD/AKΜ(I{15Ù3丌0޾b١&DBrt(8NM|z~'k5 %zOJ)vu a'xYI8NS_C>Qzɋz,p0yNΪ Jmʅ󥖺C[Ь^KB\yLM#WEOGz#힐 *{ z7! $& 쾇:+m,r1h r/sf.bv1mSS:RkCMGGRL'v!W=.z+5F C;„/5حW\8};Kd2,0y= Qg3 0_`a湼T%q)p>ۻrr]d#cХq%/C4t"Yzdkje9IF^ 833ŧ7?;*`$ P;nXc("&- CM1%68&DO V;aRkF't%.NaCjwCfENj&M^KD#3}$K>Bk\'bKj!(bXnv=#~m> &%Lh ;1Y2Q?hogRV'@:bpĀk(K:d=a0ERيUY}:ɠ%!cTrHM֘M) Aqɤ5Gf1^BjB?3gNXbpu^":g֦bjI_蕃]Xa'-c]AzHN-I=H)dUǸZnFbw1@ɔs*q&> ϸB'/5Lh cU%(J=pxwǚ%)+HAO綞n+og,VAx*bJRV?f$܂VB+0+'ݱ,^,!-=  JtԸߧts(VSEn{K`=*D4jj&r2*@]KVȳiFf ְNPu2˅Y@.GT6f*,^`jr/5 T0a@Kg ߽d0p'+y+f0vqplzWnJMyFv~`on'A`rzբզPYasOU8),A%cﴶkP[!"_n/+[$%-)04P)wr9q0dyAAfDzXL`48zϸK7VMA#OGQ՚)'L khpZ y*bjA"7^Ü4ņ}2w[&q9DyL)I ~ 0@wިmJ?0GByNWGen #pP$~h=VO{Oj+C!έ]Hz)Yg^xa ˎc*ޠA2>T :~ SͰ%V }e%.'A6(s07sYCkQᛉRyrvgӭ`l)^:l^hW/))Si8Zl`e1} వ 2M(dI>mN^SbOhB:pZbÍ~g , T`6ί0/aWrQ1HǕk>CT>G81Pi3c.$!͂!g_KJ"eW10<*PT91Nh7 P>-( 3-67GN+2KT,w> īDp3N\0Tc*-M3~ cMdx"qq4 ad$?|3,Fa6PJ:z8-yM!;3WLvM{3Mʃ b4,_!SCP'_0ƈ R+JgV~$pr.ӈTD8KtTS(XZ4 o54uPsX X1YpxFƸul0kܽnǹs$w2]ʱm6Mr@Y(:g#+&"S@h! &@I~=LwU~k2dIsWդ*"%T e>Ғ׊+$EI}EmA~Jbk X'sc\Tz\t,5,':3Q怬.XSW63ܳT[ZCM,^Rv.TnYb{0i4УTh[JpsMjkad&K 1 eo$A"Y1R}rӯkJ矻8fhbCDho8˴JVӼ|g$Bt{G@pt\ȵ+W|$\E״-8Xt\,!]iZj1|0^wn={lI a@lp!7ĥH93̬{ y+I(aѴ?;!(2Qr Y(37 ]WTR^gV2F.lbZSIm\R#p/Ghui>4 9Scsn"KLw`Ld}S/ܬW]] { TSjocfvUazW`+b[c9X`keN ӭ~,xJ>[9Yq>6gym>}̍,AAb>,z0YWJ p :c1p0+f{N8Ɓxr'e%kr;xf<6p~aЙ@H' E$@DD74JzL(z]);-noNWq4:Z~YwPp#eвaUrd:{xn_>YyQ˷6_2`/# \#sw.vu;4},s|{iq]Z)S`3Mm nCCX(ۦ3=j2iyPq΄Pp T"1rw{ĥS wZZ!X eZQ̈́(^^/hGXl#g)ST@D)f}b׀Vւz[yRz[c&=>v {m|٤H#!F)&3i_x7si9َsOj 1),* !bK9\~J7P.ޥE]HnbC3DJ묒Кd=W/@%Kbwwj U d-_%Okt,KUt ?:@>qBg2Rs 1ٯ^PL`qTepİ:;[;z,TA.f\kHrCiI. IM}˰32^>$3.18yh((GnIw6wO&+Zk[-I] (^ǒ%EAHx3_y-sR;Sf_oURJS_rw8dlfՋcl08}{dhv"ct_a_@~Ir J|b\hZE( !9j5ֵޗ%Ogk"\d|gYNBAhByNBqa߿ qӄ4%y00ys_ EX!2`}r=tUdwH 7kdB~v-౅-X`{ kGMYaHD,S307?2~AG-R(BcwLt` SQ-3T+!ٲH2*y(Njߴt|; ͥRAt)H"\&(51ƌGIH\y8"1,5ƔɓsmR72zF~ǜ9lGe MӼCyy$Tz^)EIKxE$7䥾E '>)FK:UW"+3lxg[YԕYO8Z\Suˆc%D#>2kM 6ܿCpCG,T,5z63U*@q!off@>!,fdtSEuɫX.jTvY:oi$3%z\CC+׉ier*zmϜ+4H{Eqo E}Jd*E..e *t$@ Kq2)*ؽGE(rK7g+-q&v{*GHd1_ Ke2FxG˪N\QjUH捀|yu! W6 ή:̾WT"N6׿aPf$ń`[{WV_Oy$ɴZ`$℺QDjk6ڋ1z/ΒI^ 9"ZD(gSxss3tIf23Q>%v^t_L"8͚e zpC$X $8e>hE~>&dNMޮUop~F T>!6ǯ+u,J.T贒6YlGZ2g෎ o2Qtʤ?9&бW&@b CB"dN37SLycw2? E,hB:$D{ѯÞr #T{0+n\T_Wl6hDW LήK*nob'+M?j]wv7GlqwcXz5aBd}Ra0-{Np˓Ѧ@h)*S,v*ܯT@P3 _51[r`/9(U\wi7uW4!W@+Gߓ=tyd[E02 O/ܻ(ڱ@;UX[<UYsB ke%/ p+p^Eq;S`|bN O /림 ñP#WV H7φ/ZSU=JO8<A>` Tdž$5=3`T[^1L%3[=C-n#N{}`m~xԬXSP m fY @FFjS77 f>+N{V +?l|PMۘ3fgmh:rSwZDo5e{G3C GUI_D C>V@)* v {-@Ԑ U=+MDT4,'XD$(%e$zVd~|ۻwXy.yuvГ\\:jK|IhtEQo8@N6L7kJ0AGG(c5KUWu ^6;'F1ԅ&Mn!OQx=KxQɵcȝMUǁ `7>,T]5w\v|kXУS,hJE2C`i-ūa?Dj0^ Jw\r¡j号0oX~WvX[H&H~@XȆAoH+t:9b̓o=hICqҔx=gs2Cy{k\]aT f<>"($fޟ]=bzW.O2#MpL}x'mdjAڊnJ1=?AEP/KSVՅx$֝;:<va9R:z",v!x&exҥYAZe)_Vy*Q AeT%XWj@]:["~ YqP5xʴ@ Tָd/(I & Ӥ+k IU${ ]9+ Pͥ ĆHt[9wd1-E˓nV0^FSRTC\lgdjFBvYYOk4«*"Uw<Ttkx$PB̀t~]/1A<3e$g0JXX8Ί1 KUBNAs@(ڔa_\26#FI&*Zɽ96ɴj ~FW!$8C8ev:jW2(6s~-[z\ 9QN% {u!|B)]%c09q2|@B*CӜ~./Ѕ[ >/Ieb  ryVMԟ^Kw]]K@CމD!#ZzyIq\?L֘JNqѽ p8q"T_'i?ɾU7nkFDHWv zfEͬ^{б^]Q \{sr;el|\xj x1O%Zx释 FaXBFLtWE;n֥- F.~or,g"X;7Q:ŷK|yug.;c@)DμA+P+p=p $[V&vyǃ]G9W a\Un瀐JEnjnaz;GLRPEe:*5u'*F)c plpY~ a`?tC#+Аms HW8#:e6 ue.8$Р TG;\?[JM|y Dcl`"-WM [nb-ۋ X,!/OrҬo]5 ۃzm@D*BȻ^KSoN۶VgrmIY P}r@"JOS8搵]M]ǯGkku)?@9n"@3f]i"y5YQC9sl#O۬MnHe3-gU#XFꀋ2ڳ, Άݴ+J{{ NL?Sm -:٫}ǣV;~&ʮϭ7~R\9Өsʰm0arLe-c)0YXH0j%kcW`NM;f5ΡsN!8](X,^PxQ;I/?]LQgX,QmPb/40 CE:-! l\8_6e81]O3s*Е7m6 +t2 '|[u7M %)ʟ{fe={I^\[ p@U\}]H]owRU"ݓXoGhY ''ޏy7USLn;<߆Mæû9rhM_}~:-ixQm*u5=)*9ZMw'kj/+p_ iuXb9b}CuGL=B ঔ *zQt+A tv.:ϽcX+^qc4C/xBZQbC @ iVߡTF"VN|#w83II.|N1T~mtK>yx !B~"ݦ)0as7/\O#w?SXT B[8XŮX$* ulmש3ڏfUuUd'^w_e:q 7O 3,%S7pbujӧ* 6͂5Oe}/jn?>{U\}NE `O/ghQ:'3 w?s9Al!R%dU1uZ,28zWv^Tat^ǘ;K6kCd\P^kb@cJNmjåKj.h s6Kڌы)Ol0KȘc9.YDH7H1+Ri^Ec@ENRToND"x9?T4?**bg3=HЄxGnJleo@}iLM)G#DqjE veR[u\E s;Vdtиرoa`!(`=BU>Ewy]|ښvk%x:%Eln B1w4dd?5`jd[8jFemNҫM7+)9)OdCP ip7gϬ(qN-'{w/pvT zDᯟtO4V[5Ds%+ύQ2D4b/OAu: sOgϹ}CAVw EDlKe!=,@g ۥ)$zJ ~"}G~!??<9Hٯbo֋^Wd},h'0l*1.*td\=D̖!,?=D%mqxE^cNv d5F#1{URnBS)H NsnRMNu1 .u[XzM-LQ45OIFWdTY !ۤF'`u@͒BY63'!v?/VMĺX=b\B©oDϵr.?=0S@C"i}MU\ b۹h]bcs +o*G 8W#}tQО߈.I 1xF%}c3 uquHE8UwMOR_V&:αs1i/ B1_忲%;`001ړ1f#$B? ~|- jS-l#CY`q}o+F ?@NAWID0o(iQ alj叻dth&~ rMi%YCfǑ6[)"լhXQ]L؞GQ_Eʆ|j 1/nTۭǙ\/1){ls-@<V<pʥs"-zr# ik2#*exr cGy_9lNKN[`^n>Y'.]T6 ?Ǚ[c頡G0@\>p $MDBCƈIM\שm$ 'a`e/PEz&^|,W&ƪp H JoG,#wW%KEwPӵ J'3ex m\6Ar`lm|ȏO=%%0ó+19b)NEw#1zZj(4J~8k f*^t$ 9"(7(L>Ɖ^!W,ei4ou:}~qvr]uHb~{Ezw.CXp$%,&'%ȧ6ie_tAC9E na_ ln@ئ`k(s'2$/fsj(+n%,+((qՆū$e1*1_=tFBF4ɺo. N&8a3CBܜ?* i1Z#aasPje}a?1t% Z=-`}"$)vu8wjY4{Pt1 ^&b4b鎄r2Qҳճ1n?w4ȁ -Cؕ v'Mmj{ͤ5 )2?^ > m^TΙʹt,(i/;ȴ&\m+ 8 u2}ߕl0A% F_1?Bc;uAKKf$xan[ uӝ필'.gڸ2C4AwJѯn~I'8ٵ])553׻\v CpbHY%P{l&g@Q 7ymz#5Ȼzdݵ+yYg4TQzD錇+&@¤f=qyq3 .n'fX浛 RuQN8\. iźߧqJ\;P07? eP( K0-u_gWnN159une4D..UQ@Y};p8qtaAgſ!? oUQMOo*w:bM_**9xJ<^<gK6yB > ,ٵ\ՁˮT)B9T|)/Un--V۳MHN?h ~5|a[]y}E6/eW'ki|<usQ]ϰ߲/=dNogu'omqNp kѠl0/N"/λ89\ %5eb+XF,2`ycչݷܱ+(:W ͈Je`f;ђ|B۬7bq*FR%v`~TlȂFLE˞*4(*k5@wc<Ǫ\66כx{ro[) .gh*6 BbP^?WK#[A 8>ʋ=Wo]i,0L814?Gn:z ۄ,0̣0"Pe}5rۙTZ ˀׇֿ(e`#JB0gln2ox2BTk͖/o"pa[TN}FqJ-nz*ڿ}et#^n6ϳ$>>uJN]ⓡ866"gd| iNt0/zJ#+!\qoa6iGHyO'LM]nځ?amz#tf yV&?&lJmiroQyP#;ӞgV=7v9a}- TMZ'pi "-4&P>XC+S V~TXK{HLzu+'ᘖ3R1'#v.Vϟr Ze`Fu`?lE.qr7:p ̟EX;gHO@9, so`4 Q h2Gqza203g' h-%3smAC=&'3w|wi8I_W2w0^(:^{y}i|L=ҽaedSgD.*jKFF "d6mEx6SEae$=:_s1D׾u¿)_VFHIu5\ڟ;/ QQ!Տ׷Op ~i@ qx(#/r9qh]g2ϲ/?NPy+D@}$z7N#]3ۄ? EvqhVe4 Rą:oO,}ƨTf#h8n.;&b^멾ٕ\W&y2ƾ=tR@-_˕x\10E]/|.-\gORZLNu/cŮz\j:)Gt'FsOz&5J[ (RcFv;źF3"I$`maHa_Ux%eבH 1/ H-I_ߣxykUFN2kdecXG0艴LwhB|m.Vi oR3HU8ndVZ_wFrykPrp|Ĉr8)g$+\b7*&;GR,e[kCr) !@:Z`8|\I0pzT!U~LzUǨSc}ueZ(*dhE^#Fv1tj]uZ!d:!@YDzHV!U]RFؽ7l͟\.8S CK>PK4ՄpQm;\FY5g.*rB:̩ҧ-82iOSF-:Q0f/۸2H>'gy g{37# >U'X3@Φ/6&.QաP,[ai=faG,(y$* ; ݳ&`Ӑ mhhh-n##fgH"vj;oX3KwM:!=a?AU {B]EivrvpKg4롌x|`H쎖`XGCME;2KBH'6 #߹sZl%7yndZuȔ0j6$4D& pˠ= q:ńCqݍŽj$HنzBeJ7T;|Uè㓇5S&MyYc7R!R6`6iB8詗&$5XN1_j&g Mh;6,`Bo"V w!˦ E\2n;;Y$DCQÂMqn= 怳#-zBsuaÙ,V~t$` nQk`+A^mPi窸⻛MnyYt-[cA/u]dD-:f=Jd/SZ6IR/ \GhԈI++g1t 嗀oE;(d9{E@5UΓiR뇐aЌr*kv<އѝc0 ZbޯBV9͸Hɉ KmUJ`G jÐ\ ŽC`rO,g<{O2EZ]tNNVf[*bFZЁ5(V0gU##c~eoO;bXj^ѹtzNEi[VwY 9;vC g]3Xh{>*%]BԿaߨ ,Ɏgv WO͊D i4*^CŹɭYM89b8c黎{y2q"txE- Gkں2`ʭEbUkr64W= oۜ]tݯ `.no TfKtX%n+Տ?L%p5bZ&CP?3Rd)HEԆTކ.3Z9-1ؘF1]&LA}7)ZFt Z$C4n`؂EKbX}r0%`4ȩ3ti&))>='k}*\ #xW6/-0c|@\Ts }*cꠐ,&֟Q/wVif@b}7gV`yx+u3EWv$UUkJo!P?"RȽ ɚ)]qq0.^6F3&s'g? U>|ДE 5{jf*UІ{;S>9Z$]r5u _c D[|ώƇ=mɱE 6+Qe6+V;N*a^+U$0eCNBcj*a pd BCЛz޿&0>={k `FU7[ dcKq0̦*X=/2WnMnۊ䱧p Ĝd RGԺ4Ӕ`7=;Ǐ?ŋB0 mC!D?Nd]^sSB菁gVܜ]~x~땘͞vgJ گ!խm\BPTonkioZUhP(4wԃ~"oI5-Q+^1 }u 6 뒠Нd @Y"#ɸٻ&úh2>tV k)*zGn>VUJ'~n1mA?>^3l˳DYdL@) a!aiCYOJU4:!<^NoS.pWY7!c ۮ֮IJ6-q%*=`mVķ~CM Dp^R}Eqðx?48F<ϵ^ߛGtWƵa!@ 4kȧ]eȯV7i?n>Q͹*$i$`} 4s܌8D8$<9n ϝ- g\nE=P\DGd >vt CM}DK7@hԮm#́A",?*|B$tɢ/`V]äu %T 8(rEh u]'&=P3SIL̷*dH"ZDkA&tܰl.kFĚxԄՙ٧IC!2y{;b]醲efа_V*jftuǃ:H^T7dH9l\K:ǒZ=zF1J}JpL6n?Ww6C 9|uJCŅ z HtvyVnEffO9Zv$P54̈AW E|MbI@"u\eј]u|z!B:vRn"/XbS|3÷z#a=p R106 FQCF;j2D慍A2(s΀ >]` *eU\0=Yn/Rp]{%`i񏮂[7dK+eU;`щHc8`\J(ioB/Pfw1qbp<D4tiaR A^WWmߢ'qcϖݸf?X'ir1kxcY-17ɢoJ0<ޑSbk'cCf( ^+.nU[ ]f3ށng5Gp\H86~|@YIX`A=G-`&Ws*Gl[MG"aboQ"5xǃehU?<5|GހR> )71Orn%ƚdӾ>aږ=z+XH'dPehMNݙ{B}8Pzo`kVRJ6W68!z /"z-o|"7!T/I8M7_T>0XO SWj%['kuija$bvݰ{`T!l"0wTWUv#AFIۻwZ׳:8z^=d9a&U^3b|я?o&wZLI -'_[k|iɃC!T"KaZd \Ѩ%e*ل %6IsJ B.Q d>DIݝݦ`j8 `aY`Gя:K⊤_ErHC8CN`?A IK6Ƕ&u5džhZS Zj1x҂ߓ={dr!w/3Z*[&ߦ7rw%:. C$)peb$dgZ-?`:X=랛ᜑ},B`%{{RkBMRvG/aC*sԝso$9&(11~8]2V5Xnu;U0+̟/.*?lO~-)o r54 e;b"#b:+uEE~\&oB0!bb'O"Āhq=RM`<<;b5=LFuy^7PdOGlMՍlܑ'dH-k~2 LzXO!C81V.6pEgq۫q #4XNg?D_ Zz# qlݞ8 p<-HB:#3c{d&.<ҋRY?Zw@Op -54auC߆ yhue7muqTP;V!qW"Fmc!ѻE-ڙ'M(Jޫ!+r&İPr#Xc+bϟ,PFg\[~@MNCKdQCofД*??B Pf>'8DRQ犃8emrD2-UJߧ{ p ,~'KtQMΦIYHS{7XWl|[6k#uDԸQ}vE`Wn p <$'jd!*ϒ r}{A^ cw\k\bL*l pa܆HzYy"cIUa.Ń܇ML 0n35F w$$o4?DvQ MVf/ye~{EZ jQ-w)$SI{vbT*\Jr[mN[ab)puo|k'4Q}%+G|kG>8[iT{jHo xe>DW4 ~.yk-+ J猻KWڮ$OH3c. dkHaKޯ7bgtF=U=SDnIr#CYvPE\!ẹ9ٔ?G%8X@{B);0Ըhe4|So( ;`D9څ-pa [e^eM&d \%~&yޞ_^#bdj3DFS>L"yvW"[r|2`q3~hG6dJtSb N5R { h =^n.떺 cmc=ȶ^,Bv7t{iIb/OP\ \X1}C% ¤඘ ttjfZVeR.a\'nZf XFO煋 L D&%a *GtԀ2bb!κu~ǥQ.cƒW:n=a~J1~y)nE'&>yiK*Mkts^5\+bDh4@ в:9{F_4` S8 @^lbyz #tԘ?ƙf/oM'}8'v3\o$M[I?n&-AB=,;3Qԫ =Pgw}&h^B{Wy>؛c5dt۪ԸyyYlȍtC %<7q=rMU +|̢AȒĨ0k}U'>Tۊ##T$VwytWpp#'IfS1IS ٠''z,836#r#`PvN+,=S'Ẃ.,m#?ť(Cˎ{ߤ3 k}ׂo&\L41hE:+%d&MmA;' B'Ho⢬}rEoGT9qvs#lO,0X "#*w0Z]rsQNRWMG@;ZU _p:}1{e$V.n q>!Av!Z^ ؈bL9YPا8qbK]@, )Y;2mWLڍuDΠL %1 B$=xOFԩr$=H@a6gջws@^=D5{3l:v7]gtm){[a, V2؎Vjzz<)hp 5L96B*+]-_;,l-0`(B xʦOвe/+fNS I 6kMp<tKAOdrQAԱ'?4˂[daWA.|5zj}^w LsfTRKNyjt;pklzjkU$/Bw%.$I༞mb=B= YU)3r \ Ct#F?ѧi\gv)B)vQn\b[)!7/ﶯÉ6*}q_4KCpV-omsϚ"dCcU>Zwh^,;@:5z=b}pNMKLqDXsenғNR^-av ~2 a+Z}^Gd %wv{BUٖ$ysNY蜽L#c[lY?ZG-h}A_J>ľn{MQt ZA$0HßA(]4DHr #/ 9uDv 6/- 6u*/X٩t9ݡ lؠ/t ~:;|+ -KAcv)#/|&gW U,ILFDAshM S~\Geܢ52AlcĘ! (֝ Q8r]7L,!JeJܹ!$1Q[ӟ$Т84!y[a߯+Kln`:K4X *dlbb$8sץE,BƬC\iܖ^]7b@cܚou߷/+ӋF9ҐO߃= X')h$uHBb,W" NKրr`o\?%U/~}K u_8.W%ˊx--,6FX(Pt8lg/ Ĵ k c԰n/x& M ^#5 T:kfN`~Ep!LMulc$O "3XR}^z8k}1Ⱦ7m<5<+%Ԗ>$Yy8Kg3㎎4jp@ @qmyD<-L XG(-?%UY\hb'合]"i^,Μ虼?#;>"Ɛs٨UHꢯ޷ء}ֲ&pI=6۶g f!] ߦms < fV]1vcؽeoHP;츁KKO)x4@˧WG[dtg&T,ݭgUd:K6p5.-7o庇V_i\C/aO]Ict {]A_2c_?s;XY  UHvp&},G ~Su!8sQ*@ry{,b~X#4&'Or]@(Nl@Ffv#zi+V+!nqU0c9>x|Ə&h"cIX9fUK$(wU𛵗 C8XNkP hYž}z *[(8gl-(~5}-!{o{u(=-2\x%~=/>G<K" Tai =Xuhr(~q7+o,*at Wѫrf6+G~KϞMLJWQeM ( oF]E fXS20mr1fN?&sG=%.RVDTlp:i>/Ч{\ O|Zw}U9-lqc> FWRXNP!:tp^- ޅ0yeグƖr>׿Myj3"D-}%v3K^k1.@10E:KzS^s2W KXF7%U=q +7" ! ޱmv8q{~҇2ѓʃ?6\,ġݺokiJ#7O A9,cSH)WKFN>HHeS{v2B>rd\C"4eiH&#e6k*]M9f2YO=ys.9̔e'`;B]QB~,41mt00\qN皉"{øk/}]IYxu;a4=_Y63޷,TĠojRRrˉ"ՎBP)hVK":9 fF3@AZ$%e#]/b4GI?:'EYؗHWy'vh*Q#[mUR5m5a\"5a*SèqٵFDEEaU.1^_)( ź`q-Z ;o &̪&rgC9o ^QᡖƓ ďL^ˌ5(^GmA?eTrLnmf6Ӯnr@#>'i,1.fh]߫dG0y{ ]BEl;;ȷeP:C VUە%霶,HV Xѹ E:*Д)XkziɟBEn*;uh3B۽oe@8>7AX \n{*\}%DT-ӌZU%2hʭDB 8 P'莸J4E)U? Po|@W _|W73Fܩ`Ӻ:+WUCKWy.2<0t&z9Q:^fe~C &o=h fҗNEuwξFv͵fLKudHA]t Hؠp=&Cӏ/wa'w%4 &,, uxYD8GpW6Iow W՛i8П;4Yd£\bAJB g0鬠ؕ*])o:Ӛ#[hؐ Jg%YQ^{I݄}'%1\n0 .KtD`6uƱ V(4=(O= [y(ఓ)% s%E5>ʙzl^r*4g됰`rؾb2gvOeVcO>'޿RMsLOe>LYḛl#W#}[@S]I pB'PQ./U&?y拰">U3 H=T#$è_Ɇĕvl ]8c! -EJdGgl~ =X洰izP&);=ax3L^%=SD$qXdeA9F x.0DKvijc D"co8 Y2-WGX%hlm`z7GI n`/.؍!e$|ebh?.! hT*~zMԲ#j[@:qf~?|3u;" >GX-03שn4?K3 d6.@pVM>KnkHحC1 qs]S]y&$N@ǐRQr+qYhM?U18Riz"cs[G'HDJ)DdQ' _ 6p`-wלv[dUy:ڶD U|7:bS.g*`|Ǧr#8`┶P h{6R;Ӽ2 &+~PҽA2jbӴPd 衮}Ze)a"Dʲ7Dꁡ \`b (]4 p6L?(ϊmH=*zaܢ"sԳPw0JAe?%p`QJf+>z. '`*ҚkPoZ22q{!4~fR2:<4Ɛ0pR>#ru5EV7` mqt`fWC„,. s|nHr^=ZJ IGTx֨K}jɱzoE)kaNz&0 C:+<8j=V%F!cyChan֛ʤLܼG{9TٍʁHo|? 16i,͜KhN!!G4)Q)uR/kyjzY/ؠ?CwF򔵷O{"'e_<&J4PS60*= |2 D))|\ꔳ란u 2_;3ȉ @Y4aFZ !ڹ D >r!$ UpətYI8KWݛ,.vXD!VYq%(7vðUS 1!u5੧uPyF+)B\&SϜ6^;cBs%5ϒnfaGkiT ll ]+)iKMޖRq{HZڗ_z0ZUuP+VheGqdq,nQc܍M$S#H8_? jFxoqL0Q3Mvژ2퐇m#T_%qL,nox0wO:,]ù B,PGF3pFWB]դ?FovW zt0H6' bgNn%,V vvMJ⍢Dva2vxAV0"qI% 7%ZO_^ݲ2sCSSSV̳b=0Sw; w_ {q-u岲AK9>E%!⣥!lo-L9 =&݊lk-+⶝s W=4I+DDڥ}b:z )q*y GbkDE)] K~l"憧 +e?I9+ $ld!7v# 3o? OTߣEi`4+TEFӄEY #qCbcU?{XSj40y9~m$gswO0,ɉcɾ$2eguh_n@RCEtMyEǠ_F?gkOCպA}"Jy |zex ąJ͒<b hN"q@x6|Oӑ -3 #fJ-v@{z/4RuRዢu9V϶ fc33𬨫+D>Gl‰2T\_ K}t FyޓnT;+ük? wp~e>6.VE\j}HE3491=Ksĉ^/C.%~`* pJ)SWߙ9{Lkw Xap옉M ;HYYcM] dgΧk u!˕P{"> Dk/lY3s=]һ#L/b։=kZm]ʮ _ C_!s޵*L^1c9]YIm)X9u]T)F9Tv]W*jsrc ld+9Gđy򩍚PY'(GccR9 u7<dEivm.H '\ȁԚn8@Grݻ *" dVa0?!jsJKs# 6D*8t"0cb[lt^!-+^=/R_Dq`2i0"MpPHOZX`ugտD1¬(cHJ_sc 2}" ihD, - 9E#k60r"4R!3< 1/ߺĽE2,wt\M񪚘,M yCx\OWnɺzw"O@q/g֭![z?{EklL>ӿS +!źo&}Ǜ ezZ}o9]u7Ma˟)Q?´Bl* )40C`r3Ajj̦|h uQLڄ/[᱘s5滉&J MX_01'#2e~ Z Lu̐N24 A𔭐L/=EQ!/=3`+S(#4rqJ3m!f6`fSHm0ݡ\*;7H9(z55fᲽ!{eN'4Z%}X=Z6c]8׭G>鴩G~isuO4VRCF]U,]b TZR_]qs̼\FPY94dMH^^Q DmZ?JKv0uFIcƆ(*9}>֬CC T‡1{]ci&mqBCvsfjxg7 6`l͵@gmV,=#9ϒM(K$3ncWFUFG%}B$c;v>Qvg p\BT[*%t~V,M'jQznedy\.,V7 ytEB1$pe娜h2BzGNGY"namp_J{IJg`@aǼı> 5?xL+yFܕy. btQB )Xvnfkl[bpiaphJ_ *:p^Krm/3[8 AՕ,ɳ-w1oZu<Sq+;i就٠v.ƭG43$JiA|ܩeB eI/2wߔT"*q=x_ov\6NU]bo+'bΚu;8co]A[<9>@3(nSC^|c9O{e#N%]t +֕σ_.@F dm U52S99GΎ ΥOJHꏗ2yT,QSId)'FÝl+kR&ϳzKEivdߌ]MBum[Y:P@"& % ]eN%PE-Nw),aD!&ÂzQ]C Li~٭`i3#*s pcxC+]\rτmR^t3.g= a݉|[]*60s1巹$ P@kD^]; Sx`J!(uCH/:8ZtşfL?Ayxt޿5%a~iӟb!\D"QΕ8JNl6Xb:J۬ .[tQa "bZ@JmWɸ{aO l]V`*T"+Q?%1/ .ǂ=Ht f9}L`69\>BDeyR=_ yBu-M|q4%>)2FBݗOYh!mRJ1$7x2Y>dF/s1 "?0d7f|/<\T*#}; P]YCap_'hRYq"2 TH6v"zRDƾ9.kT>Q7CCqv8YT2Uf76LFl(Em'u>g/nBS;xj }^9SzE@_b6%׭=;אLu-[%TFHQf{ZK^kVU7w^g_ {{X> I{{_2.E4u)@r~ѵ@"iVQ~@NH\*KSb 2GXY/6b%#Ȑ 5A!L8i1ЂAxgfw`qƲƌ`̫ \Lҩ3u>L;I" ]-|g=d7D 1p=vCۅ#6da t}fglfӤ=$};s*e)" 4o0̐k 4Wgm8T"62eiv7zv)?i":o%J{c.]+2HBh'SG q=fʣ2 Q.k1 YrY9)1*𳎽U~JdB.9p@GT׹D)M. 5uij::E;11 Q `^aD_c#pG=#TSO۸q9=D&Ֆj7xS+4'";EXd5 GH[VG#*`xP'|@p a4!)n!#{;>犐w< ֱAkP/SL|+,.K RrLnZN4՚.a' >FT#&Gz" +ކ:re=}kM2p^Wܞo AT1v9G 9 X !g_οOɼJ#OTsJ׫94W~A)_([Gt,r*9PVOLC|ݟPS\]Nqc 2$4KBm%M4-1iE}7#}%.@cgS rYB%*VhƝKxQZHQiS6>dw#i(|lQ9#Nq4/鈲rJ0o[9M=d5 U` &+4Է<d`kїZ+!$#('[C8ۃ@ʹc;dF}̄_櫠TG,?ƓYCڗ jFmK"3]|ܗ@\ \hOOA,L0$*#FS}”n v}pLªUI0)`7+?ޔ~15C;KZ?NGQB7<^MGhN3^uy u=yi1q|~0# !^>rr Yqrb٘ݛU y7z6*`gB 8hDCYG"S[ .Afˣk8blqHI۠'9a>y RTPTmuYޙF1(!޸9gM sE {VSTo3[i/%lc:F1u>>7kuLnDv'Fn:D1yVQbb#p\6zΝCc'aQ9E3@tT7_4DmvggEZ'syDfdTFx3Ufs;IGX _p{xlU.S7Eܠ%yŲJn0Qh۸cT=2 r @ Hs;1pI㗯T˭CJ(A ƌW g̺N>N?y`xy-W|-ZѸˆa_$bM>B962'y=ˌ]`ġ0G:3­Ut}vw VeEqfбvӗJB'18gfhFqX6`v{Z7" ܻ:1Qa{n &NhP<|HGII;]9d2H}(ص]HE"EuުM~ؚR罟Cs44ATMPUe'kcxzjx*jBKDn5E%e{?SxLq'g"J71'5\IBM}"9Ldeіd0; 1UE; 3s#^ڜfRRx>h+0҅|l0XG˓Y uޤਯ?heWݵkt4\ޮ{o:2-E&h\I3X`8}xM]0Q #.{Hu9݈6\ֽ9gڦ1BAhgvOpDi阽hBאNu!|H$1c*i<[B9I}!'P<ۿL5%Ev+GIZQc6ı2> τ,ƳɻߋiTn<"u% _0H{k *5yK!Bў>5o*E@Nu6M01WZ廿LO=Ol[nنk^HM?K9[SeP^(9r4?X X~BF :1[$%f?) Kns璯Ëk:ZVkG̠yy\@z4rMC&& sr 'ȩ1~:Xeג?Lw*I18" UU;-Hr2K>Pئu-CZ?uV|ߺ3}hT Őh~'!G{ C}m~Hŗlv~+z[Xqb]<(H̥E_=nKkIgx>v8/ Hnؙ0v/g}jco󡕾ne~(.YlN M?Ubuy_ aгsSJwA ||,rܽĕ bjL# \yaشT6LcH,#bVq `~!;^MuJ {1[ 6hEշ=M)>Y(+>tgI<B8(CDK}R wɨ}; 72*{'|wcd>C c M Аkr|)QºCeqeoƁq&nW@SrќG"O 817V 7Ma/cGSȈkXMثy qeo 5r\;a5-,iAi}1cׯ!^T=#W]eNo *z}7P@% < ^'rI%gI2ZTeXp'_x |w%@c7 +ۓ>SG1)=R}Bija!V{IOzFem K6('!35V<2ihG~*ѫKv$e9Q΄N "29dNDpcz8:Kay۱a-X9-R򉬽AR h=mSע706Tfy =QK!!7 :R[ 俘BT:^Jٽ??\.z0 3-0˂uQ:Gc5ٺ"օ mfRz *X|LJ9-\i#1 M^Vio˅'IkUfldqu@ [Εڪw:i4UQVxE]*I3#΍DLCVe&VQj|xQW~߾'8Z:N/59A_=XB,kУ"&ڰU* =,KJ3fXn1k{{V]0vK>7u&f)cʼOCDҡ0*#GzٍAlřjl:Ik}zW*QGiX\mõSf~×ZfazaM]< 9#$R:r3gCg: 0DHDz&;&YN_C X/8UBnp Vf}@(tbeاݣjUVJT4h~"O-t'('m͠$r 1YHx|GS͔7^ hd_ qKU%g)/ _=Xg86h# wCn#- N_HE +GACj8MQ N+_:'Du Ux^w:~׬JDEȦ5E۰6Nڷ]ͥȈJPOQ_6LҝK2 %Ďr)*&ݳ:wPk+J*fח/VVո-m1ܭq3v :;xS>K'ЙCrAe8K ]{!p?"[%ݟu>IJ_(k 㿰d7U>Epw;=xEAAq9P'qQI``TFD9e$*ie 4Z-By3W$R?[=H 'h ";4;u|*F;@=5 ;s%:9 ^"EFs7x]Rg;zƕe񂸼t_Z]QA^I8e>Cq[)hI-ۮ)B D܁/cI; ƈPS8ޓ H#V[}clnk[gS͙>yՂX |C.~4C(D-_a|Wa lTeKm64mRGQ8Kx\Rs2f,=%{s=Ţ3NX8#vprm"ל2;ݯ[K2ʱ"Jr$!52Eޓܥje}0I̯x|u(nU+`#rJgΨQ 6 ij - ,qa3iFh-[ѯl p \U&_R _ؘ6ae^\n-s,χk%S鏄8+g܆m^h0fIvKq!Q$e}dqߣYOk\=^3vVq~]9h9I|n Ы {[} ѿH;PW|}I(CkŽ䝸P]C `] lv:9cqDj~&bH*CHt {VO^T#v/\fyvO R1ڞ4`j/p+!'}yt@BlxG8p9i."P7-Dݛ 帒>ݱ:htҊԘBTQK |.!iRDM>*iuWvLDŨ[ @G^ѳ9UKsh:ϐ7 ټvw01~ܱʢ+tt{aRw*J'oѮ9f7jB^)qA_E>;ΡM#jf|1RMqR'K"Tf38IAʡ.^>Qg$!jM7vQ :FDžzZ%oZٞOo0RA/$5ZHޙytr l|'l@뵿)C/s&.n!VC;t0;y,87,W8O?O. PJ{*PsssUptBc}KktMFpG((VgTHv#. %93  tKLY_v'LT;(CPxR,(9$jyB3N vfhܱ(/>PG袚' Q[wuY#2q_}r󤗔×D%RwVF29-\/&tTGeveX.9Z8 ߫wryBx ]daTH+E"H}\Fqh!5 M[qt֗*UT\f{.DE~:hā5>;SQc7< %@ftqp l7PQQ@jbNxUJ,Q]7mG<\C!x^3#<,K(!>vw<:ە3jqSk>iW]\rBȁI<`ȕ_dɐ&PD׾qz@1B mpe5J 6{!į*T@`e?Yn (^@Bl`YG1kmj*Q+YyvJ.#[6UCs: $zU‘񏢿3S*Ќ#EA;c<0B{ ZpH+`cm=ďxjC>ԘsCVЙcN:>h$10r5) H;PjR9?|+sA\,Smw`%o踕a5Hb#/3+1.y{QMd 6=Эۇ>ǐ+ߑw>Ifz.& iHFd2& NByIZ_!P(:M%oOO`*a? BD 7vm_DڢC?$y"K (j;,/cl7]θ(=U?P+MJ}o@~#^=`{Vx`|Z6jLOw[>R0"ˋ>miE8 +j7B!j=eњ[X󐐴m/UBnʫOBn)cٴSA-sc[- L1y5]2O6HUG~U_deV̌)t9Xt:/ԓ!$2^iv!+@fgW a}˩١VÎ7 Y.}nUDDf.rܕɆ$uLHx֛hA"e^K60|B\ؓM.8@kB9.RQw6u2=)LElHiSf9BVBE!qG8-\R[02 f7O85F0]ګU!b 0Frp\ )S]5/Yf]>c炼B ]wf^Ohkb3vxh?ʓKnqj0v3G=kfn,#ԿRcQ̾a;{~zQ'.@6h-*210{l@R;,xe_=H<3$5-8֔a M>- öh2V:cW2!Puf&z,a\?ǩj1g4Jµr +7\RiqThXk,k k^$Gjm#ߟ|?DXi)tN{7~`ў04{/OYJ>]PO O=ƉFyKt;NPcvBѬV~`A1(&m`QѴ l)$~Ph`l -)b]fMQC QD:~ `>VfEkq ?kZr :,<䆇p#H @⽣^6o&Y`kަrT.0i":}*]StrD乥΀sZ>_)*ŵ(Aq^ue'"wѲpiKAWI6oOxzF ] ›}Z-rr⃊?@3!m捊^bXج_K#TP܋wna=Y"YTYiנbm+PGXϚ;X^vrXm&$:bwc<}Ƞ2yrv cCB"e,NϛƴViKأ} }$,`_z&Zztр^)pY~\)Ӻ>$PnIfBnRJԋBGB +pj]xZ])t}S_j Cs$u#-R[-c"Trʡʞl{1igɚBX"3 /p* [uP )o }԰*%_m7y֙.-|s]tp-P(qdQέ;Y|luwr{ "4U C;8cڥ g-蹰 A!MIO(0uhݸXf4 mgR鮎;-@gX P t챩8)dI*7 ~k=g Qb].ɢ/vёRȘj4ؠXrBYJ A sn}]MPZ7w?$ƺcU*t0 qx)6~N:fIR,:6k,}`mm@ۡ]-MO4.p6H13-DL"Z 1 UD' 5,nA _IrxBOSAwm#*IT^@~)Kz';tޢ8U9O6L }| #A |^Iy1DQ 3Uinh>>=(UXٽW!R&eͮXJ^6Dg$v4#WCY}|4 3lW)TGt2׵7'nJ$!BEGx/ДgcZa ts:/W(cuȂ1|.O$rplN޽ɷS5ܓK`f%۸$a:@RM#5u߸`X|Gik;6ULh?pn6G&9hcCbgMMs䑯y`ӕDOi 'ݯFajV2*M$4jt/D D8Yj HtZwg3hyH[tb1M5b5M^y:']{M*GbYW8#JI8{hR.?J+yeJ1(4o]Ói4!VO-o|[zE=Y.!v2q.F$Jܚ]ٗ|ŒsT$g nd#VUsu-K96*cN7I5^5 LNZ|Jl+[Rŭ<96Hi%WTUwއ[ "KԼb1\'x!ICF1JVf%llKwTq ShqTRwG%txz4f^s ?g Gզ!㻊c cxyny%ͥfwYџrpx$O'GuN>.M R5%ŹO PEnM8sGTї(2 T# ?hE[j0Ϻѿ쁆8#bM}z'J2aXbͧgi3Pϕ1ae ]+$q, rP=' ? &:xpOeG]3^C[ P&0(bk[N i^~Qҡ"jvT5 o9S+(4)- qpc {J^~e,Q.7fl ʴzǵ~7:Lۇx#"׵fДG;)tE M-Oc2;߀N$BXDOtUL擫:*7[1$NABLGngtNPoCvǹƷio4urd :_?я|Si]1N-7̊2$h[3*pAK,ߖ.#YNhW߇0e|Y()qM Fhk; ~ t] ؎3'å;9a' n]PTu5S3#IuDqS1jao`Tyho].83Z,@m]Q'\wse--+SFhzmb^HXg_#bXm.q N% 5"H⪱|ԢkTc#S,UźK{.`eC.~#"2EC]Ud;0TjҨf ;"z"3l*-`:pHzagB_p3(c?w3)C j:8WP>ڣYZPR1wcSɩ vNIcAU9FlY6 ӰPMobk󆶬A\$+MMZ &2[h0ւ$Yt4dlV>\`Giq 6g9@Yo.DɋDm0j{LaCY`__]7-xi0I5{_60'(ӵ'-nѐ~Y1/dpTڔfK$fBP"A0a ՛TL1Z-l`כ rǪ= ѫK*7m͑[ |zRx&], ٺ벆Ra׮aEEc7y@skEc\z{)9Z٥Gص}7_ ¬Iö=gѣ[\J4ö rQ$p"l>^#L-=>hCHJ]g4\BGIӉ56ս0zGSP{<ގ(u  2SE. _hCauL66IbR Cj?H_vSLkZX},DKY-qhl.m^+خ ụ~kɧA"!U#aCsTX½QXZ81e_Β_WQZ߼4S=/ ^2itgp\~|H8`\%œ5 @>d*Pv6 qmVU'S]*s( oqyO]`ʢ )t~(q3Xaa8ftRrdS\4(_B AK`VN karloFDSQ83ML" 7WؿiK%uZuԇHg OI3-lT}:Kl{[0;(0b zU^(51xMҎsо|К'rMGd"<.a%Ix՚| 8Dd6i7rsQ-gh3Stv-2K 3*4e#U~jו\<207JYPH8:c"3ΨM M~P>,`z9{agFq|8#e6%mP: %UFi(zvĊp\&~@[Y =yƕOLSxR*bbhcp:o!#9 Dư(zsr40Lȭ#?I bCP3%x:qӟ-@6)kJ iH+TY=咇3ss[4٢,KH6-ZNy,Y0°RAe Q&+Q4x.~UkmвrjQ˻k'@fTuZ]}9`gHIL7 1\3B( GM:k^%ۿpC:'tvȎp^b#7\J"^?:$Ff֋VWwa_w :G3Y|` THBI] A 㓾>Pւ /b:0ǵQA|TPяWs_gH\4,[骉 4ʑS_ it Dd2uqͧvg lک$<7 i7mĮ*\>/I">ޙf"[ӉRC+dVo󆑁r]85âfQPӝJRX4Ec0/wkd"O:$ɟdyH9H(T!ꏥu&t*M<Ԣ<#rjcW=!IrooSzZGs߆M/"e26^ZӁgC'&wiGi֟>e6ܖa-פ [S,hJA/C˪_u1LxOh b Hl AW=6ݓd/I I`i䰞oEob]t%}0ošHYk=H*C4{gD `ZûVL:g?×p)SiP7޼t3jA}hqwI왊/j-M¹4\zbH8fgQaX)pko`MD.AC.V%Qro5O|aoXky⥯e)H gEl4SJX143/A3}CX:5}֓"'$Nm^W4tlN}FVi!9?.Gɹnm>ZwlI="`.ԜA(r=)}'V\5jYJ&#r}d^T(;2H=`^?AqF ƞDZj4*9vej7IK.xxP(8>6<Ơxd/㪛(| [oFUiȻWhs3H%9vn;KkG {OWQb ƞD.dr!o6(2xa.-tt 5~Q$pY -mEaòa*2Q=C&6rjR>@^ rdPBulἭ=^p='`-,´&$ GPn׽3p}ikLG}IW,pס%zHr3P)&.&r]=0`d֝x6]Inz (x&Epcu87sԓkI1Q\e'1j9WS>w eUך3זm #sKb\;)}* *bHOfZ,?㏮)Gyag|i;"^eyҰڸACm"Q$YIr}:O>(OVZtã"-R ]ξrs7}}*TD >B{ "%Ci(esZh{C@@Rɜ09 *L%!Vb*܍3EYsн8W(Wn*R[[d VfОZF\'FYz[MYT`޶~ft8RvNzlD7}*@';+r"NώVO$߆m(6C`P\2^ 56MO  kˀ~t'|/D"gW`dEB [jH%Q.weD[lKhB?HU dRfo!JM/A]`w&'<6KXps߮_4 zx~ rl$; Q|EoڢBX?=.Lc,=xs 1M)jZ&Ak)]* bjJEif̼#? 8/hd}yV=l[2(.{CN0.+sl+P!5 @#)O;D)&a?B|@O%'U0E?/fs@9՝0B~3s0* *i_C *5dHIl?8̡)NdY{E+ my8-aOtQڒmB#Hꀷ&"&@"7~]ƒ>3/3"Y._\dJow T׉,S;i@4*E,Pl\83(ۡ(E=YM#+A|t!pч+i ΅Hv-#fF=@>YnJTzZo $u|thO,cBOo<(TIS(-$$-LUj1|zb'@k"UɿoKkMf+6bN7^vհNyEH|46t9kjI%;k.7A|׼&?P!TNfװwknyRT`ߖvSR%Xr[<$BVᾍk۴xynл*]>$:,M\MNWrvܽn7QX]ٟ%TdBv>>x_ @ڱ\FЪ$x+Y1"fR'l&kD޿~3Q]vVLh銩71Pe8@J [e0ƠVL}F .[pۻ2rg"у?G'~"#x#Q?6Hz{uXL"n@)EJ4x L:e)*}䃳] =鳱+0e8ba{Ӏ5PrR8Ի$9T{i-;C.ڑXZZt!u#@FmPII -]\-<0:qUA5 Z3c~+sTbD}11Uޒ:-bSx9c={ea QWIWz\;n跥_ ()OmTf-8g ʣлa7~6ÝsH:ǴӆclXY3{r\=1ۻ=zĦ6s/ic{ȔPp6f?=^N8j:;.\zk—σnu2C.#>Krȍ ²ll?ÇXLxbN#JvV2.鴚QϣKn*&ua0 EH?MF?3_ fs"&@6^vE CJ8Nb·gRsWF {_u McFjxV}d>3BnJ凅澢LS+a]q"JO@Z: XJp0[iB{fl~?nx1mt5SЧyJh7ݽV+$ݟg\yn ;!{NYGcGf )g?xط剌~\CyZ5N9HQi\o[ϿOg&enX<~+[R\+t~:COKh=}qn[[X|pj˗ M&RVeJ}5WRƘUÞEc3tf | b$4dWY g5U|> vNZ`BJNlԇJGQYM8?bK%,Z&M_%HMJIORB:Z]n90") (GIXHQl3fYV Dy˶!0 u%C3j@8eج R܎$r^1EBG$l5grC=HmNlIeFߥ5lϐVoUJ /y;TG|f/bm4LqtZ][pZt90r 3WWH?$YҪZxՔ |DA4G}XNg:YU1Je荭MYA3T(}N>)#|}K:妕M]USR `hvRB%#U0> )Cw4tnqovL=5H80P$=n+%1kL'@*Dʗ=*'S5bj `0sΪ2j&yòF}z=ۊ\Bjªsnym{}VTaXPJe壚fȾ{J^QفQ#gTƴ:#3~_ÿf[BKe4W&%;}2ۀ]P#KX6[imx>0/QQƷՎt9FJ|(D0,.g(bx )U ~0wY3eЋ7,xtiϾ{*=hyj8874o9zX0Ɵi u0d6.TA]UlɫtXF$IdkFY2(P M9%GhΈVޘVZ2ŶYOI \͓#o~-|D?*'~.mzL55GĤxհb$+Ʈ SΕd EMDe ]HKqs#/Ơ!NEQqݏ粊 m1ll_ϳXͶUH:Zj^b % 2F}|z^ Mނ&\@JNmdX4,Y%P59iFej]$7'x1Vd Kd- .ASk1^Ϻ`$~@6Y*lrfl㣨IFo>=@:Ԝh9jr&KJ*!7l7[lYڭ;eӧA?^#?=Y4 B^iPBαh$&`{غeDx~+Yz6 R²01xPQ" @dY[t3L&1"H*+(Ff b<_\qƠƒz<1Fӵ45R%*d}S<{nĜbc4'F({/Xt0b\!o5Z"\9Xg-4ErSV6kj ERD3X},כۃN,Lb@Hxlz~iL5ą m{kp纈H#&_:c%|LsufFy ݙJǭF5o ѫ1nrF^|\y!y&1|aZM5^v`e sV#bQ︷rbNf#kWU[ B];Ҟ 6 rN.5 S)oo+QT?MJӞZtkr5c5DC蹽;T7tM]UỶg"V ?{x53cͰ9/|Cl ̗|)g}m3J?Ǒ#aQo Fo~HY=q9__SoHUr NRRdZ32 ҍ:gSVRG4뙹B֣63ވ괐7ؑ?ifB-5V^چ6H\^䃍!js^~q C!NM@z (p@6uqAڵONS~ؚ' uxNJgnapۭWE]b*SΈ-IVvil֪@LA  {ۯ5*9Iā"-y(n);dᯁ Cc-]b MY}k${VWԖJpiإ dE4]C &1nDv PO ㏉ mt6\-XE7 v򦏛T7R=(Rb}z*fu#N_B0ᩤt:@j-9Qٓӻ̡ѩ=raPЊ `h!d} u"P&\e.--ӑ5?J:bG?Ļz!a<|)ø2a"HrYxF;+$|A'~mUr^[ JV\WȆC48U .ltng0nwy9k bW6d|Wvq"947l(0eL Cgeu.jD7}D"ZEh=|o2J)uz%fji|q۶ d.YW~_ / Oe4z:>ugV'jN ]+om|]T*<:dl+_]><=/la[{}'P@n0^-YMO ʢi3bbpnJN2U}s; y [<N]4Rj60g$^ > zΘC|OH'%lc#xpXG*|$mV,?$Mo&}~}hNr (]y)#3O;QѩK! )) {h;lΫ,%u,:zYB7`e8x؏& Yܖr K%sB,'uэ.vUQ}^|5Ox^e~H1J.15P0Wu,oJqU9Y?KEN@<|;0czRx\I<8|6&Ri+2G%BSïBd^:YuMB r%Ƣ#뭌l;jV[A+b`Z(v2Vnd,x:h W]mOxO,0`8/-L]OA(x5j>ŝ~Wm"@ ipYWBD-d<∓/)"' c(ŝ81DUҾؽ%n$z!l2I? :Ϩ,pHJ-x<==}@6@{Wla7:lfPpobrw>J 1dHae;.2Ǹ)mN|+ A8*+ӎ4IP&ݮ0J49ؐG 10nlY0s}EIXPkUL$aЄ\ͦ-nI[Bv4E"HxAH,z*i2i,Jy!e6g5)Y%L졅v}f;ph@ i[6XAw!;KPr\_o2 G ې pp^#cv.ׅ~Ks2mP4iR4yqܜ0?PTE;Zŷ?#`[^RW]PKGF+ǨݏQ$"BԫVdPRV%G=D٣ x%&eʞe4Lp$)WG7,Сc)DziWs>nߥ>;(!nW5Es/i+LxπHЂ+@ÄǨPh K)8[GnަTx)3Fcl=Ԟ\nGSVoaqK`ʍ`ID f k 빨}3m4T1B p;*'[(>!rs]A=S LXoy@nEZZWvQ*>B Vd?{~DҳױgEIG~Zx2o|u_n|KzN#sVuB2}_"S zrq0s"O%V#vMbàU='t-Օ[#$le14DCdfv]ߪT&Jyx캷"4P<6dݬe s<7;nΪ[ژ sXE^Gonj8Db!dM{4u%i7Z؁!\"8 n nٽƷ T~2т+λ]h:r1/\QluJ(l PMc'-k\3RR}(IJS?_+Պb} le0p}OZ5h~7>= Kzý`X)TOCg'Cy{T.3¬u$Z#Sh5  bƁV KžCImTHij?Ϸ6>"MbUԵ*j#()B3*Qh!#XEC(Ts fvo^*S;Re{jXpŅo>T&?.q060NٚpތuEK znvt_ *WQƦO(/[Kke8ݯcu˷Vg;l~¤.K2N.I ?PNDݬ.ي+f lo~=tcQj1'm#IEH@H-Hd^bO0f)v߻ARѺ09~u4{7?e*.)pp^9i[R6 J3!Y\B+jY {佞(u8mfشgKc|# TP1GjCxLND PlB݊\ ը+ZϝGjaqO'(:`PUE?4p9iW`c4{,gr4䙗|CMq`U;(QG˱bs,F|0=)zF]ĜVfӔikX"0Q+.* [b(̱n2G]Iא~БSwqX'o "Jar\p$w@~)./swGU#'x՗\zri)E2B0D.HeUuD#B:nop)ު`L>s| )[vlrKg_Ł1y.LVa~XDvh/Tv[PFs_aK2h6 ݕLJ8s͉~>tN<=}nsoeRv[?`8%ѽj;x\~:gȒJ[ɟb}{~W#u|n'֮UDfѮ Ŋٽi T˲yT(h ![U+&㨷7qR+M o)k5Hyf s?4;γ4K(YXPጦqI1VnメsAa?B YQ,,WAi׈̜@na`j<_GvW#?8 ?K\Gn|X\+ڈO8 NLԑ0K"tř%R>۽?i$W eV -Y!ēE䖪HP`K]H~!^W豥`%y3TWGWKF-[.gKG;\B43mpw+ 26).cVZ"/Inh?v'%ㆣ<[^1nm  |!8ًyljoe&y`šEԾP "[1Uy2pCZ¶JYբN^;cԃG -ǘ< џK̈=3mx}P-bX/afҪLRl6KճMU#S ~~I_7* ̧UE%:dΤ*0jg "aS*ޞLėGƢZ{m adѺfK-xZef.Be aG%޽2_f@G-g+5k=wīlMsSL!c9$5-m1dr^%XtuZc  .F-vELn&<*" +`\D4tEvAr29et*!\6 ߒ)z9QE|t|٪=)ADmq&hRL<tS q]:|Lָ,~Uc4Ý?P3~nHr,E# HF#_F32=BTR юXT*«96ʽiF,8sAy]-9pT؝e<*KruC@p|vdG;WȖk#J i3R:fnYDBxCRsE )F}aIӶ H]}WBPJUgS|4\Xda)g!FAHqł\i{?~^N܊2y͂dse*a\!0eQ 7ʃCW|^Nܤ  YCɜ,vEyG D}%X,c ujp^SladNb Xr쒌}^0A2_o]XL/21d6SyJ 4tE>` aYܘ 6o\.^ UdT%DV-X6-N6a/~.R@!!,/Kk8Q_^FsY,E/X|Vpm@ 9ȀJrHCySߋd?/s9VgI R: {BPVox}>',Gc"9#l%R6L鍿h6FOR^(#ij 2 ;4şP&$S3L!. , ^L%fhCg펡 ]˶Hjd\z_a}m*z+eq'D^瞥PqvpM qM-b$n#ti/T5炎ȯ#xF^e O[Q}ӳzV=;/ydV|[d'RtI]Elڛt.Nod>`o YCN'P4E7;[b"/ )Qk]ʃFF=YZ-k ' $헿QJc|ɰeu\CXeo*:vrWr;hfM?3pJ;&-vU%(E!JڵQ`=Ś 7h0p|4y0 Qe냹tGx;[.!I:xWĜ_&9\$C3F<ѕ`/?QOv0@#6OnEI ^aݞȋ U%lR _~/iޞ+Uc *X+oSgX)>땴Z0zziA (OV ܮ 宐;Kg)g 1uY(V9a,L|d1^Ej_A٪R$q /N-HJգWKԇ0~ơJ\QE€4H@?s T]/EJokt?dpaT.#MgX SHM͈Tk}*D9apУ H MPEnsKuda`csI\{ <O]GIKf (n6LJO17GP7*}@b <Χ ˌ\/K`ko: 6z3)pTe+8o&BT8||duTV;p{'!6ڙI 2>4Zwm|лMy٢;jN7/ ]D85L+geaj^Vh r[!)Qj=\Cw;#6bG~H]f }FX"odf .cN*,=B=Ro))." gr"г+'\[x>ki6]1U0ך<%%y=to]UOӍkdTUm-$TNAG{Ⱥ0}fAT.}//OH qx8KgA•봧HtL{Л^sD-6GSm] ,;RJº^td):X S)yP"wz0ѵܧ+8kERԭ#/v# #qTOm+]Wg^e(|%9|gvR Ad}إɐa ɴjo|#ZGS@fYsXtk A6=Me-PH̆;(|YDQTlNbl'I?{QuK>yHYܲτbdEa8g.}ei<ƌU(=#`}oY> FRKQ ns' D:6وr/Lݹ8q8YPEOlk+ !d>>KeGb"`DEm X'{s3DK2hJKM |[uHq5u 03r6/c;/^v<ۢ/7Y[d|7AQ8{%1QSNN4d)s"&+i CS6bͼjKۜ:!^)n5(w8HD:+[{jCNڬٴw`:|q㾛9Q=J%{UBTNl݂"[.URBsk :5>T-F3.FqKq9ׅ跖d;K4kQ1lR@*E(%6AyOpc\. )睨BA>7)AՆ` i4 .ǙDe e2-ss܎~|)<֍%d=gIa ŏJJ}뽗T~|5#<'Vfzm3-a E4.qV+4Ueޖ( D>yQ!ix(4+YtK8kGܘM3k` E'0 _P9nCF (Et WMRStH1hEho Mj#WuN<B 'PSVku3.bMPIF[ `L[R0qp\G"2$i{ivul%QNbouU"AЙB9N96[.#bGQa'UOmDN=2ӯ'xE<ڛ3l*SRF~?2L^mCr2u߈Jsw^Dn}['i rӨ_DiwWmkKHʶhO^en4n YQ\2=-jFALHK-{wWVJsg"60 uo[ob)ZO:= 5HV~]`#8!iq6r^V_pIMU~F\C7u|nB n SD U . |Gٿ= P~ u1r%C }LJCQ3bO+d`IqVe0sK)$x\9?wko?_ӽ\1&O.ӽ z!EstMج YA+Ͷ3 *k Sa 8{ҚaÕ"(Ę-˪K~9^^(w׆*(COb0j0ۺkD(YW ?ڹX%#kC42\IHNGO Q' ˔ ET4 SuZЂP{mv1-*B.^@+ SYax.i-Yl;.g]["=?\L9KA>h\Z̵7gj>i3dsD&n 1^ J;.{] Rcjek@"?c*op}c'{Ɲ$u=iF7ĨVdl .$X"ulpӽQfM[l*@q|cA;VӔ`]`',icTXa9bA /| c\1&)^,A9[Z5J4XU0 D9߲@ZZS7z.QWbwbz3bѨ Q (gc26P٬ebli9YS(uい|EJYNlr˩mϡq%jO"vz>,q~<5\`KFat6@pw @dVR{Е?xu^-{hib5)RYF)L\I:sBK;*@+ڪꢼLe 6Li^@ǛK]0VZ?oi3d8vVn=ÂT-v[=mx P, E4"ZD/Ƈ}Ay%cEI=iζ(jkq(=%tvN$RAWnL~}n/bQՖ.Y}z/rzs&da'ȠykRNCyϳC@b+5h/)b cDQ2Qs!E8qYZ0L#ā-)TJ?f-5!.K._jh=g;75FHh},|>\tdCiu,nouҜj vȞLOnno2K(((̽k5sm0$X~~"w`@]:&!çԇgē/2e{TeҙMѱԧ}5]6񼵃?E~(ML7iZ᧶+9L9 Bq>CsӢEk| WMĊj68{b,!5V1zb/q,SonȸCY7Wpʟh%y^W c6c`I$"WQkTtҲy3kIOw N qGo0 ,dc\b&I$+Tfxv\_A=nD6#Axtni/ze͡WBVp .t}2'1>nږF\S.ϡXc@(?f>¯me>>yё ]r˜"V@f3Xb1$T R >_DJTMx xH|̊eA} UqH2t4;xr!>zh5[KCyqI9Bܡ(^=rNHHqܖEPсt/En@0Kc\#|}Ih~9U`ޢp3<:s!nTqQST|B@+} j2_㒗 _< x]dRqzd3B:\*ɋr΄M0PNW~·#y%\‘w:κSl> ܓK$^WQrz4FN 5,-}k6}TL4*0 ͹ Ls  >{dc}ŵ C^#׹ɩYs剼s9RdEžbX|h~wUVvb@(:{2b8x5K|PKw]jTG;[ZY*/:[tqeڴ1ɲyðڀ(AIl10DCzv'2"`V c$`Lpj28r=SMI[#ı" [ m4 ڤ%p.Afu'h#t)}g󀈉aR7Lb zTE$G/Z(+N8,hºnhC_)F ;6ɠg~ꂔ/[)A @`D֟nAA;鍡ؘ[h@M߫C4thF+N_ mU_:(5C/Ջ'VJOBms &=-ȊO<,YTm֕x:k\^}kK_q_TG DJ $r, h -j.j֝|k~EHO =SN&T:ũ&2ɐ 0m%r[:߃8]E_ ~sfa]/^mgURɖsLk A>+Y1F0 3 -}*ҡ'pT҂VGps|@ObW:bz )Li򉥚c䣟w$'R=Bp?~] r3ꯞdg4Kw6v-i /Z`xfsbDzmBT͏6˥vnULJQb6O)D)jVL ڈ=.u旒1cJ '[T&`2XP2$^7]Ev$Դ΅hGuĩok_㮶8p!B/&٘@WX9c'E/wv>baИ`VRXԼn"URG%{HC*ǯdy~U#m:?N75QnLc;΢]3)ndL|~aFn3ݱ:͢a1<1-cC پK;4'*||K-W9B%"u$1d7L̐Aa,b,^E?g59AKp:JM }0%{^b{-M͉EV]y[Z+@<:11q>9WeqtL_?<lVX7iZ(X*H} +HR[6+M1SBs]@K؛Gb/ e wĚ3 J܎%_7z =q-9sq3cf։UmKGM;0/ Wi+`4dy s./t#0;#PF҃5v[wbߴL?QUVϋ/-) Q˳&DuD3c'\Tp4% pS+` (^F]Chqx ;bC̊Ӥ_~a%Uu'떰zA I߈axS:KZ,^Bu1sSg/FN.;d@\2ry׹q),U=*=-?B",eSZtn-mZ B  7*?'WZP+D,XsNر =fnտi!|:煺zLe`fG.D)W?˸RdϢ:lQ%DcG>F4Ӊ-s @^C6EVL5 F/r]f /8£; u _l=%Y Rbwb?ҞcDWܣ ܽgvIw}3*Qo{,Dv*?K{&{|o`ۻ TB@jjBПb"ݞѮiXzz,r)\GE]⌺ .^\ CBO؉.p&>=Gˌg iybgS=+SRu/1JbB~­%;/*ki#hCh3)JvtQ׈St{Ҙ/Sjlo!(Ή+k(B7a.}]A+ 2:Ii+<5Ske5Gk%c y'SiNHM 0~ߴw% mѳ[4Դ#G(=h=E'>kh]'#S}Z6RaC*_3o6EM\HHX;`!vTHc5NWoJ ]p /0^e@">TZ{jfPw~RCN@Ay^IE X~f4b}> :dXH;* ><f ^3} o}dD׌P] N3"tdllfXlZ$q)j1ݱ/o"++UkI"=u㉖Tdo 7P`ocRcM,"Qjb}6oئi.9q^Lx_T G5 7Z.I9 %^q)y)>a?he)kbmBw/ұ1U!0]mgh q9U7:T,uO c\?#zi>hb{kz,8w0Hz!=h'};vMCڣcvfiuqN /T`a>ژ?N7nxkuk4paAa }؈o"kUȡ,\@ۆ/f[f d6h߻I>Y1fZj'GwڤcmSʕҿrRAkmR\ZIm ID":J^5i;v_^kcV) E0 qCl6xײ0inq$ cITUIH [6;ZggwS'L9)i1(FwxYڮ1s Y2\0,OCslY,-ޮ=w" kIf4:}˪WmE&6s n`%\dW`Ԯk 0va]wmDA*A0KO+kVB*m0_;L6g_{;w}WݨҜ}h U~hK&:h(ﬔ:o ׁ~wkZT{S;v&sVDfv~s44*HC10Cf~CHa 7 o҉S,^G%$^~ҏ/9_4W5S;_6\JÞ`| w/XLG^Fv!: bhbB ȠG`!/1xA|egZlfbZ E^ 7dGe s3(.^cI nVӲ=dWZR]~icD&T0Wem>x;oq81jG/Ym{.XzjY+Nf{tsX ujO{mtM/hxsD6q z rM(oB&W[|,ZLF7_},GXUM&݌fyHfѱR {lu"NG*lhTؐ;-bD/{nx+ypX[zC/y)ЬmCPUy?P.j 6iunqeNEwO9]?E BTl3L)R ]aP)݆ )TCzъ˚4\H]Ou)WŚuBYH)M[j]G3oO/&FEkgV/PJrZ/yά[q;5.-ch5CcXY.gsf(M":4T&[[x dsf\27WWecZyfدL;U4r$S-u%w3({b"OXUк%*kǾ CP0Xv[s6Miy=\ HA6@ݔ)Z>PG}-T3?RK1hw ߨ8I;qx;^R}&S?7d˿jS!xGTv3MohXSbEKxH'$R29:/%n0 ) B|ޱ/3T^/ܐ +E77!r^ 8͋`Qѫ(`lE?q'N|c%wT9 včq;&)4'o͸%=rL1Coδo:nM{q/Sj븚=+kX'4!(4c@Kp6U@QqF,XcͰ iJWWyr}zYuVwZ`TA9k҉漪FYǚupv$ٟ1hGaԑ98Vԡ]ˮɋ_e9pX>ɨF(o!cG\ukwZ 礂$Ҝ~}ZX9DjٮI~&e, l9x %\2oDApa6A>}焫؎,jiX@)xAO^aH`dY6↺]ooF~\HVFG&:"ٟ}v9FZj1ƥ[N.W1rW|0ǸGj~_:0B =Ɇ>i|?}9:H:'u,69j7!!߅-%Q MJ9/F̈́*Rk3aH*vXZX̑';-a#mA!XUz4$AO|U 2m$Ky0[d[¬Uô_JIx/#{ɖ霗@iy8+D/q5-X8dN?\ KRW]k)Pbqb%s"א_Y0Y:&nm|ͥEF]^:^} Xw%fQ$ ־0}QvM*Xũ_: 睰$v~2%ЕnJwŒ!c y,/?̫+ gyI!;k_c'x EBkW#^Q\l("[E[^u帆kmvSn7 7c=ī64/h@qn:Wv?#ҞUh·헧۱HVfkv Ad8J i1v{C :(waȰ1Q4o68Ԗ 3egY~P# xDa+Ok[=P#18plH\'sF&= 4|6^Ms+2p%}̘j\1_QPAY8zR"?q^CYDo=SN<`jٶbʖOI$䎄%@oɑJ;g}#]\Q߼1S n_(OPk40uzߔD ;R:rgfz}'i{x@O9X '^0󭴁3?E]>|grЇQL޲]w Hy+7z_KĦ?%× ]>[ܑ {|{%?Itś4AʨXKo7pS#sa]RH@4QT pG ;%^xMM8\v(wQi(m3rB@" |OㅅwZ!&H$ _/K>)Vר'?=UE@oHD虺VkK~0]Ϡ#A!G8Z-.T4qo|kIƲ`ǰlEB$0eb#yYBh܂zY=G CZb Wce5O-vA]v3O`pĂ7p|Iz}=,A{EQQ:]QYxwO2S z=&,_XB{ ,wY$Ma"z-g yJZ":12 KfXƴeQhe,"u^-e/~y9d+X0A%-.2[u =j%&şг{S :YO]܋Ƶb 3#@›@]*="45o$/ثOh9ATՀz1)S:OO!eHڶaXNp1?-*AՆ?8i0P qZdOφs~gtݎpqҾådMZ,H)>ڄD`ƍ6y, `<}/O4s6-^7x!3Q5'Z.26MM1hR;DAiUK:N>]`ǿ9! Omqp~I k Lo#f^GP$q+{5(W^pϯ4_1`C[i1]Lqu+ۖyȢO@4 m1d^*5Oڃ/75Jܠ| |ö'b\jCh[۸.x޶bNNUL&;NT(QT53pbS)b xs8W.mq3QV,i?-ZܸTARÆ '2NtaD)C<._ցGCp__>yn}гxI uUxO{kkլ~`b!N qKNV-n!0Jq?V컛.󊊳Y^V{nL3m6 ޷sd"ٰǼOC`Z+% sB,2y#rYUaƄ n1j3גM H嫌rum6Wp#/E iܫ&/<[>&R!򢯢#5W3ΙVEF`` IWA|1zM_d ҥъB2`?Fx8kVs J ##$+.ÿy'nCìr29owwF~ՠ;J.e7Qf^&qYXN>ސp 'G#]uuզ3cN2$4qY*һv}Gei>ćKֹfnm\bpG|00$?GXdZ`#yheCC%h8$_ks,"$%pzMآ|CӺh뙷kmL՝ (PAc(ݠrMv oN=fu7Goej]ZÜ@BJ390tJ->%bnx]p BԉA0u%)hxhWn=4,{"\fk&MLF/%1dĨ^9)` &=\x?CP%oTcKfA'pV `~=LWUbSrEۦޯN!} fdÄX|JKX7^d Tg-y7ɒjhqi9xRDŽɺqH $31<&0BgF[=CW.%ÏsV=dZiŦd^S_ KY i8ffTbyvP˚[2 WK5AY>eEVl@ӰcA@Z 0kb|o3]\TC[bHWbI9i"'tN[sU$q7JUaVO9Dk DBy6a?{t؁@:₲&) {VdoSfhz[7\P)jwP |RQWQ( 0 f u&2cwZ$h },JEKPE?T-NA7p8ʝ%a_W*1 $-4 Hyp'N$c~LK5vbU]7+MHU>\Z&tI:Vm<꒍W>iwX*2ğldɟ\`׊Rr;uޢ~QWAIVw `ni`,VqƼ l__(5 dFu9?Cz{*Mymt^Rɤ#'&BfG6r5 53޻e4SmQςұزFI3Z-8HX=|L߱NS!]"nT!c$::݊גVC֖ 1C!3iVGB |5z/J 8!.!;ph oqe=JG躐/|P/duS3S]V 2G~-{͂$xa~5↝&UO1vPPl15i%[p_`j9#+""B\LB3NFƐ:? p y5:@ d~Hq QjxmaKڮbj_Nإ),͂xi/R^)0V)7ZkƩw%p ђ2LZ k,\V7Ŀ~f2dODxV$qPӕ,-SEgA8a:Ѓ%uV%%04D!/AS?1"&o>5vrRISWJZӸSW?WZW/pCT`&[FUq[tZLocQY/H3gqB%Ь8_'9e CTįz?v6zC'!HnI-Q8u2Mez+ƶ+[biT;tn}i {UM[)Ek 5uQS 9*H5,cFX7g~Р 'yz jhes- | A}-m#x|t -_buw14Qt`\r|2[{޽J:c# T;* hٟӣv=9A ;Dd? Qw߻߶ek'U K[)cm~>EnwgKO9 4id2 adGR׵:Ȑ!B&XFϯlO&q:bJϫu$%0mKwF_k\\(f^ le;CjEk 4~,!s-:pօơpe0X|*[dy[=4G4r}K0 N=={p|/cJhm1,Ga 0ÂU]mr! M8ch  |E׾ d_ԟlRqO (;:(/@ȸ3nsj [Uh4џ">h$Dfrn spO~akA!X FKUKu{Gp{~UƻѶarg4,.!{4{kQF8AI.V`6㰰&AAJ$;+9AIGfDy"Mhnכ6gbw01HEXߦ\Vr!MSVsppw.:geɶ]{#L{SKkF7 (2Ȅ/t6Suk cs.H٭lVU),UK\7k1դ4'uHR/e׶GKC@ec#/z ,Fu|-k\Q*Hg<$GjhMu<ܮ%o TbA,r('kLɋFoY H!oBq*IN3UwU6#bނ6~Et } 2-t5t9 prhsk_I܂Gm];YpE/v<ȮE-lc#̎GCC!r4iFN *;_7?6( 7C@w$q4Hϸ~@ @z!mث%+z=ňG]ڭ #=7#k2h m;=M5l@M1"[ !7*>{ĝlGy@7Ă|r'oug UImCF-ߒ߃O|Yl\g:Hc!]/{ָ oCt~ KT\̱R\XRDZ~%-Vhbnc;)>pWjPAkҝ'bg>=⽎ih|~ 1KG^OSa0ƌ;tu q(3﨑Ϲnc %fAN ?>SD h k[h>x糶$uB|ZeeΏhr6trJᯏ/ڗ&MG4>4ɸaXKfiiW;}m&-S>͈=PdiRJ-c <:WٝDm@{I/73Kޮ"րf6ϯl#gF8Ϩ*9e Hy9i=W$~!Tpwٳ[; 'd+$mNr|;z`?Jwm{/C%- —xyg=h&ד@lh ":A,e'Ay.aPd5OZ7jVMb"w;>w!n)%77뿴W6s 1qӱL `z#gd<e\W }J 0t}:q>mM~_bGD^H͊OQKUpۄJG_јTO hO]Qt 1dԦ}Xbn/:Ycebg-`ʏ?ËMtrHGG# e UuEM&6}i1`ṝb e ]u[V*Oq.).A{kƏ|ϫ%7\Au$.e#"_p  c\?;4F>){>fݹqb }Ze ^QZs@m߰/6.qT831zۂ5ĥmA61u9Z2,?Gl%5zt&07&@L/1P6@d}5cX\MK:3144 Rq.`R]î5@ ,*&衖nG+h>ƭI{[ ŵP t%օ^#x5YCE$ܹp6Pl[Շe>;3J,ה5ϗPG{Q.KL? !%x횣%%>ox6b; Pm~,u I%}i:l\VLm">K[&$c0@mn{e5ª$Ze䛏 lvUJ+\8(1Uر2eSOEBD Y˸z+nOEOd50k'B{氊w ;O_EբFyANGoxz (PGMӞ_#8ʄ<4q5\+6}!B[ y."\ߕ%Q<.^]Aaޛ*1D (¶\܅⭢J`Y"ܶku5-Dj%s=j/L-1GBðjۓk1z9_V5q'l&#Y8 wgxd.lT^YG.y4;?)W>;U֙'0:u^=\m#RUi]RR"nqLZ1Ayt9MH,Τ^Oov;ƃ*+_N}v "ՂE•t0E5N΋iɞש9d2(FݨuD^MkQH]Y@QR-7].'3|F>5ю%Je`eF&NӅv/$?ʥ` %< ȢlƷlsўi^Z6|,"<%Q zkdf#&FҜiǑ>qzx:־wqs_Q[,",R6_m[x3VISfkJn Yʉ k:.e8h*|d\BJ8MD֝PP^]Ey]-5( vAO޹K /fg3iz/rb*7i`$6;)_ da44+H6^_ٟ`Om{"MfK >L 0$h;w7J)i%ǂ` ][Q_J|RAҟ({x~w"LFÇW+ҽUH|*{ &% yjC0[EhwAK_?$C9J2]3'c!I̓DL'TyG@cY.zoy1`H+J!w8wKJQlPYxk^f-Fȹ^gְ-k ΨؔBz_#'vU@pnS3[=E#MYd+2LxdMwΈLЌ#u-oj$~uv7 ; vBϚ7a]v^]i Zv $P&[Hcܑ`6Ƈ7P=2nì;?k-o< bbOsDӮF]>fN^>#lIG2p5^1$-#) PF _.cz=܊i`ڟs#<.xe!Ejˋˉ}v&t7d?ir1NK4>n)t!3F:}n(~LR/[Q<о΁VvEhd1 %vKv5` ڞ bS?j8 ST &+(T%ͨ%_V(dtdfȹHOrٌrnT}HdzM!b\f0a:Q3X jyB&݌VQӣpR6.78xPXi"GF Sg7FOATq4 ^f3Ya`W@'*P ̲L_/Y8+3lGuaBV|bD]"P&2<|#CMҢԊzjxXbϷݝ(ρ+Ld!)4O V,5$3RӅֹ$a8&I;[pã9P M`9Ry[#Xꠓou\ d3aY*|4Bhs4խeRA%UPI|WsVSǐ'wWAB/Y˴:fsY?k2':.>P\ }7Xۘ6#w8uR,Nghy(| *U\d0+E .:βIxgJ(72qMFr߁|(Q0fUڅEm /KȻqiO.I:%dJDGI{y2} ]K+'$jH߱`nAE#2FN& Y)rDo55йP@w~ٙ~ï~C2@9%tlz~\ M\wBQl9=XmM h_´Cn-\*4;f =ӷ7$"" q['s+2ѽ (—4 \T"X+A| 4Nش)H" "(6f9H DxE<`yZ{ g6+jVڋC&BiOxXPkL7?0F{TM(o3W{ hsvrA+~EmԲzM?Er,Fn+[r{}yE ?Ji7G*⋃&mc-\04p -%F]BR)ZJ >Q㠠ƺG_?3L$7غF gaqN#MY x3Vx S(: vZ kcj?$1}V_zٖ8/t6e6b#ߝe8۽tl5lrv&G3/3, ӑz?+5$ЅাKPMZF||BHaGڍ~*`ͪr>/@i鎊Ko*lզ8`پ<Ŧg%GIw" %>(6b<k`)?4*#M_3Ѱ  f~<.k4C_Z*Q!Ðq`6KS.eX~ k*s)ˏe q<2k|֘iLQޠ\^Z?F*7juc %xtgtOv=0bEfJzIoZ%]x j'kEa.cO˕0tI=2^iꅟaN1NoZN8-3 PW ZFoVvexTH$SNQyE0ϫ=`rs(ex1fHcR0^֪ T<cf4b{,H ,:Ǔҝ)c8] KiV1S8,<`Ӣu긕Qَ̟ٶ ,~kᴞA HO*?+Q+X.s3C,v1hph,]U8x"m}nX\ˡ4n5]N^e׮=!Ȇ ĸ*=ok;@9ǝyǙŰŋX8䦐c=qw[Uŗn}Z ݍnUEP>gHʏ4;kJIzv [.u[<ݸ "U6ҫ$J2 (b>xivMZ#[-_b T\bsdJ@hdJ(QWԭ2e=+'J~\!y1T:ѕ51G +|eK9Ck Br zhmL,Vͼڪ^Ipv65Ko]fcԤ#;)Ӽ[/(:|9q硎k6"3j*rHqȷ6}-(XvXͭ͘ K"pBw~A M} h#>ڴCgxz—P&'&9][1 -AVHe@ӣhJs\feZ[z-SdpVi,@?gWŵg c/r.3,n m/oms$. zGm Rz3B/I̴ʴ{ IݎIoNZt~[6VfSrw m 2 -L=eBykOHDWztaړڡffVu\$N oOEKQ$n/` =Z$-c}*\}E\?m9R" YP[hKHB\K|>[N EHX_cH>W>Di@;xJ[X`n6kbH\3)gԖ| EZp{%cgيTB*R|C GBv/5:;r,*m_K/2 c˧GH(lX@BnRC_D;ٕ]RF `L%KԢ^aIRH uv$&f|?絬@Ի~p8;@hDs t`g"$C)%/3oٛA :vXbƒ3.9%m6#Al$p!6ذe7# 7βU 5T&?lC؂Wy;}j L?lus8ʟW}%$m~*\Xӌ8{j]NQ[_\#GBMa.g>@Z=8kemW`7n%+wOgo9'آuH<5X.7ŝDTwG @x7c dvWCr~F(jX Câ6+~Ԛ7 L94쭣Lw[[<$:S#79lg({8&[#^JHexGJ.>/C@qW6F`;ͦCY.Kb L'S}c&jۆ^j !wü6f X _IEUa ]><R-3!0kr&mH}ޠPn*jW5M-t BOj=yVZF>8'6 BJD?-&2 llg }"?x T y!NPXq9@`A4蝿3ϐfl[>Rl)LJ )d }!-:@.'=½>?b]>rS^;=n;7܃so+/j)0m}{NÛKMx^C$ΦoĘݖϭ2~e{xd56[(R5J߶2¯[7Ŧ*;Wa[d5n<){Jo: 7XmQwhd΄R_.)JM`jNcsqC -_K%7#[2%sATe_^L !cەNuwLTTn@4dq#[_=ֿqxxs< }wK;1Jӹ )C +w$ J]P8 &g}q 4Vi9 Q['C58՞EO-!Z 'MbKF/H8Ɓz< ޓ뒡 YL$ T9pr"|ѥ.sgIДizkǺ꯺AngFpIo (e[LT:Ij .n2iMdxv>zS>jM %* ~$]F=܅ A#"5p0^dd~'J'?<* f:^@"CIߤٍLMynNÚpZ~ᓱٞe|Ps vs;~'sarS}q+Wg+}ɤ`5)uqq+w+0҄#ź VO=57Z@^} :ػ"yXeEƵ{W14һ,y͖?""zTM}h&equ1s1@VZ%'~$)PHt=&NXɓowc_2> Xǁ%BpyHSz/] :/kĆ8Nd*F ;kS+A#N9p\(hOk>L鶼ct3t5r[Pcή; k:N(*?F5' 0" Z^UUk@"9t\B;k"w1H;` "!cFlsE 5FH ;apײ`_5ρvZ?S$X-Nm{u`&{;Ed V-QUxuJ9=ϷM%uåf׈XiknM?\ZH 1y4cQy#@wB)X@ us)o4o-DEi"0v'9tzR|ۮԒs*/k>O5 XK 3r]NxOSk( iM;+-ŸW #JUEFB^ 5ltT,U@g/w,<^eO sM$fJhqvLSdz A:1f?Hvz}t)=R{ Kp >$_ЪUA?ȎcKAK<_FoVroQD* NDѲ9,OD(?gyK+I#/2뜮v{^/ Qz: җϷ j]ڐ RG??m&}Ug7 w)8Fp MM.15B͢2f"k驾B.Lb%M-JMgI:B)4;eZGݙ +C_§ XDТ+z&21|izV(qPxQ5Ad;T1򼀮v[Yq܈J+)[Z5yu9KUU8iraN*I?s7~0#GD7͙YM!M4Xo! k._~LI ʒL0b+dz  7! [$%SoT}rg6}π)g\T~u6FmY[kqr^[㽬CaM("Ɔ3aE9rjy]`K_W5$9}<}W?mgʂFH(tP~]ڀGقJtH ݥI[Ufŷ!ڛnF]=Z18g8Vzf*_M$( d*CIJ pUv29%BMp41c] d\Ub9-K OE00s gZ.7Ռ;wQ†b|K~oE$PO3l#%ǣv͍-sQ̻(ަcc0Q6fF F :3AX*/z\.GNG3OfVڮVwQ 8Z!룖a!B[`{l8d]=).V* +H39}Xul!hfۯ_W>9bm@b}sԂkU[!I ۶Rܛn+ʧQQ.h//,I88.z6'IPxd xoe#8&RQ@kL۷͙WHNPt臘|]A㥅,=ՂhɆqÊTp;j`Ĭ,\#wIs-PDNc^W f1oހt`Xl*m,qhG>L2\EttVlҦJۜ32}֖ݯ۹ns;ϗ ք F3ɛJXpcn*2;LU80ɹ-wR-Ks7&C"5'/@8(k~ 0clE{KUhv:zH%k4Y!I5S P9QHT+ _8Ju1"4Zs!ߙJ~\Tݶ*Y^ukl+Ki/qs( }ee4PM~eU#k;7 3nJEIUOP{NoD4ȕGq҇Ԃ7`p)?C`+$r&O%xAXM=g&5"CG9q;;3ɻSUI C8i*o˺﵊X3Z,Y2̤=ɖ4s},#Ȩ ڿ b, zAïR+g74Q`ڣG H]g>yA8$ BtRV+&IƉ "Q[ak-(duԐygfuFP2ui)D#T*7sd(S'<)ApՓl+YS#ȹS7M<וڹXV.]kHBfc8PjJ`$I}eɤ#Wocʵ/ :q2/n174/,Ct3fx,svj߳Ҧ{kJ{Woя3U8GTQoFU$453D}꾈;wf4Q4n "V@L[ 3HNztfбsYn’U[]9AO/a$zL~25Vig&x8kI]`8ܢ -B敤\^!Q11-I B_`B,T߄)k#'NH8~n%|5r ~C}K۽VE=yE9H K 1ƿBe.JgDBԲa_D@<$Ll֪0-],Lc?PA='͐nW tgmYYehDg%\%(KTgט9j^9s*r8ȺËxwiB=;0k7pAGu$fra.Wƻu5l_`©Z#%=DvїzUHȸoo(,iU 0δUҧu|LM9+ b)&& *Xs9%\.˵X!̚IGC0o4)Y8uPNzr?ALP@-K |sE@6N\Q:@~Ir"oG}\.QE_sR?lˎ LXVTqNx[Qā.͜N>'q|ڤE%Z=L즾iֵon^%Nxw.uG9Hεbgԧ chA.\8.E8 /DQ3)q 4EID-E 4:bW ӡơMU8*dC w]%Y8uɺK 0k5]r-Ƈ,o#գ? %NP2O%K?GS8g\.x\w\ &O$ÂW{\jųR&ɤ &Duxێ;S63T1FZ5JdW&UvHc[[%goEo;`880 M uS~ۆsmڿ@ ց/ l7)ƞTظ0xkvX-MjhiԀ=uUٴ\ץO+.q׶,mۄ7z-|#]Yx L hvGAy4AEfz+Sc>(596 Ȯ:Yw~~ơ& W1HW6.9&Hg´nEH?(U]|of=x8dЛ~XsKظ_3`h}>P񍖹KgI lG"lز8+$# /&#rwbMO.c[8|88MC61_dl׬+2f(">lmOkN{Y1 jZESL!F>Mb2<Sb2Kvy(:9 M馃Y(Ϝf"\hkE(řhz`ReL oOnݩOؙ(`+(:_.c"kLblKx,-ɩkVF O B߸UdF<+tEK0b; J D{@`0?ۑČ4XWayjkpg۳ Mrw/8&c?$Bg=`mt/ͳ8j8phWbپ:g"*1zf`]YГv3R7> `U*$J² a/ ÖӞ90iD3pk0Wە* ê-:(NߌQlz5d&Hb:D] ”%.X]" n]@keT9ԹcF_]thd>JOjS@@it;mLes'i.w3c.GZg(Idm.OΕ!4]͆ˇF ^>S{TT]RLEwqUߥ3.o%ҥuβU0gti7{\扟oE1vh7ΣJ2K+ܻW1zߋέPd9þ^+Z𶷛29\W8Z8JGe4`VQ`?`f\h~0qI˲3lk\T@Ƴl1Ϭ9hWq0حio;=QSK ccД3K;0#٤P覩7EGzŒSBSpQ:t٠`K(o Cs[%00^AYNL`>љ\p;& )W~ ^VY%9Q38;XOc7[k&$N1>cOEn9W"N9- 'd, X ӡ,Es_磩Lg-Ifmm[T;{&[ $c[tNz@aeomwf/YQIhzͨ {I\VI|0D>N#GpLJŝ0Ni5 eH"Ox/6%k\ b(b".qlZ̉)KXy;V=gȀuoEPN03@1iZ7QͶ%ͷ HJAa5Ui2/פ=8r;zxqj4&͡d%0ݫGi0o#q/֣ŚxUG[ u,l9%髉Vrrx^JG֋1'ޱ-SF N2q$r6!*bMN}8S-UlLjo+ mFo(=<7 ƪ'Mdi;S\F 513O|t%A@R/mN8#b [HB^ǭR\@z ?$؎-BMxqC]~lFaHSHK ;j OWxRͮvY/ngfk8l G~ts^mhJOSK"Ka'2;EL _$Cbzbe,Y_’ o0ͮN%v?;$XohsN_83 2KsTl$]x{ n}ȿe\}_WEa*z_oWvO:Hh4FpݔtӮE"&:HܺkQ E=\ەxH5G`ouɐ'^- Z`T#p4)v Bw$1 |Xb5S%7bkQܢu+](+Q'ǣpצ }1TzyK^Eb+-,7|vH<lgH@AFU;$Ά91S.ɪuGW%>]E<,9|e5h&G]J"TI؀`|^㎧ !91፿ݦ*tX:)fp r3U /( %xԛRN LBKSym[:Ti}-1#e2T7*3 @ -)KqHN7o.Z$>P[F6+c,{' 00Bs']`r+:&oM 67O+7iebF tqVOn8lPYx x#duwo${_Y =HrWfՏlS@Aj!x>=ʔcz&T`i 徫N:EG,,`(TxpxL.hgJXI,uxcz͛eL :E%FJ1?Id Уܴ1~#JC_@lB-;Ҭp>^Q#t0bGSxfV2"۹#k[րm%k[!!( PxX<ě[P.L3:uhۄr2l]ZzXBka_};`d`Vݱ<}z쌶 $^Z-3p4`Lb  X%=A,(F xf-WDî G  ychV>H1{q71+Y A Oʘgw,;C \d +c؏䓫<3˯ |+PPN.^b&ғI/1HS-Ynf~T_aGӡvz) H ܧzA}lњo-nN9&]j+TkhG9T,1ڔvK_nXc %f:⍜Qy4|+ h wo9#%V).O%l5&EZ$rVMt\e[Hv4m&9jv}G;؁3@M*&ʊ,Y4j(%n0 mB3GKjɩ>ώGԱ[,\|4d-v~@Ocaf.ꪒ q F9UH__Dp~P98g\[%7>"FwpCG~.{sV_h@x1@ &'o~)cLՇ(*55 '}}Ys<8bt6#lvV+bpX+j:q-i] x rT:L`En(X7''yMԌc {̬Ҹ{_Egp9 G9TBQ8U5R*l%<#v{gOՠq / DF,ܳل_NdƵekDی/WU1WD`a6lA>Üv!) P[BvO{WL+Og~brimn!ID#:9k/u`PbL291oj 6&)̺Be9I= oW[ IoԼsi.^f28B*0qޚ"ZBokۃtԦh/Y?CTUrY1agJ6U^_l+XW ?oq`] G=+\K>R[+67:&RClϯL`rA7+\4x:6v"n3L4ssV_e}N<4%K5\|$%H 0ȇћLJm\s}Hg"hHg=V[7BOvS0"T+c0nkwy ;`)-";qTL]Mݥ8%EDFek ظ]8"{R\YSm7@YyG{5Bxx ql{ҲAO=zh$Ͱ`XSM_jvCբdX oQt"| b7 Y)hXЁ7?$8EmV^ZhYJj7&c Hz(@^ۘcU K cJTC[D%'9Rr"ZqQ[WЂk aq3@ʹ-$=L}1P†HD䏙s3xmxAFщ(EL!5oo3EP;Sbw+K3ٞ05n|`S]g-~rAv/YڳgsOe֒ďp0e![^QiaP U zw`ۧ6mH6)#1V\r-}Ztxb󭽵vcqX1fdbyrQ>,07+@Qh8Jd6 ~Q5^39Y5` ^kJIƹy r&1CJ0MtFDi`=pbbPI tstJCB;zHa1Vlj`ol2/>Ms( L∝sZx_Gm^ cҺ8#-vnw8Jh]qYr NL$[Q_x>|ɮ{]!ݪȬl8ᬨ-|ca, ol+{ܑT}:a>\ Ȯrxݽ=m;@ oXO.$*E{t%qP"dؙY͝{s崐E,&i;NvgV %{Gƣ^w4@'{%&xpw%U1v @]!4=x!}@ n.V1l*w<5yP c qWK<9қ.sO .4ڢu=Op޶ѵ)@*ڂ~3(Lܣ&aVnX_$}+:H!sCZգA3D-^Q^*[KYaD|WucVg()(~QUI:N. ݊9$˴|}MT( ȲH܋HJdFR UwK".fjGH*U*=SSIz'3p &@nGCh5 uٸ.{@QCDMZVO#ne,GjN^ag"Zg "#h9,Gskm{͸S b%R 9Z貸im$ )dP׺L TYe$I+ƺby:qr&O X b@Vf7ҌimUh%x2}5KBletê2! B#z xljt2soΐ @\8Ҙ)[6Rz\Z1lIO-NS#@}!{F4nrKE!p)"i,35wb P$2%Cr3> Ђ&<ռr]>Yz.Tߩ ;PE3FND4A܎gY37&ѧ4wr..o`&^1RI\(d[%B*WɹAߤ}v\ƍM)0|awFӄW_Ļ)C\"%mBฟcz"$~aܹ#ߺwNǾ[Gjp@I L5QvҲti%7eߌ؜f:6 6v6?pj$:qf-Vԥ$Y0=nΫq )HPJ pZM.Gzm#6(\I=܄PQ:XlF6).=-*<0znk'0p\-I-뺝QRoG !$ /_1Ic߁vփbtJK?tԏw#(75Ip'AfXc&5dVup2NOwǺװՆ*E2P}橤.M=9auHo gzjOvaHkgҹҔRu&^u JͶE4$so|EtzFt߸g}UIF+h#2;~ jE:%"ѥD.1N_7h9=0 Q=6缮:|T39V '=&&{ 8'| 3{!jۘ8 }IY_!o;a$j; n64%[d* l6%?L2HID%z[>J9=WUw|Hk|\&#wKBi]^c.fܳ ys>gO _4_Ce#FK6'yq2# Ӳr;hV-'iC't%Ic>YD4_ڥWRi j qyP]­1wU:TX2| ߾/"ε^ 4XIVщ/'F~ˏ{C lO xQ𗨮`$nDi; kLbkjv5%aGy x)G^2gT{~gsxlbd_<^yL4)vΥtaԻ2b&V>`YiʊɁbTчGؐ֎6''ڑS̛1BEUnb[SWRy-#zP΃ >#_qLիQ.0aXg/(W z8Aҫ-ɇ:9_0㥩%SVd ]xq--FHUHqbEdbO3wvwE`6V[5UI2'1:XY%<||y-m E/>H0]Js7lrH P4`.YE%.Q<_/{Gqc4 ^:_˖ba{$>5KWGmYVAsR&'F3\B7lj2tMjex+dO uL_ =oAC(%|_UlvC>uT] +eؙG$ꌢä)/lWa5ZBQ''ӼǡbڐKkQ:HN2a_k,s [])^A{8fUW"WeX#;_=CYJOS$ε!|x6aH9{=K∹1< `,@̮3GBmn٢C?[ZȎf ӆBY0Ղm][aƦ;M|̳㴲%"%bP s7UPպw(9G׼91=e.# 4 sz=?"Uof =\sM}&7k.iahQJDZ-Z7\AZnUѥ:-p~Hu6/ upILcxОxxw.Wv>,ԺJYE_2O-lT >EfkeSKVgp3k$ʔ3Wz_kdLV-& 4wֶKQ^`P9hN_ml)hDL9"I\T]Hb+|TMmsl[1OT+gai}kY: \+nAq]IȖ. zY"gKUD/++h'QnL E(>{?q⮌mvnɳxգH~&nv?C*4.cK0uW=ùf}DS@f$$:ZzI8k a$2AqX`w ,*Ib\!jv nQHi"|0㱧 `Κf/(Q=bƥ^oOJP4V.펿1 ` q-?% ѧ x_Kx*dĂ9JëU(EK &4`5|AWy2MVG+ [:< Y#t-I`Lp"98*t5hKr-Ys%:(XjTy/_=|MmXzƂ;dع, N4 GgU(34'YuzVUÐc>톸 d jQ _qC(|ZfċI\)Gp`PTmW*em!]ƅaLvkSPE*@R@jqv6 YE{ƞƝ}n"AĜRF@YF}!JU6K: ԇFl#3@N$Oʏr`pTvq~XvԿƉ`@Wcj=gY|Т<sr`9|y԰F@!uJgQ0+NӲble=vؒ\(ocA8u TQPǮ L*Iwp$g ˠByFhk6bB # 6 ~z-PƆԍ+TkL 妉ѧdيA#C! (..L0I@c%rAs< …TK6fM{N03Qg-3GU϶XHR %rL3k6bAa#aЈNWv_̿ Lʾ\~2roixD?ix9F2+Io8)eĝC^y r#@F%BM D\gt^p|ֈ4Z1 YD^)#feIAmJ:xz/n<1%.܌Uj!vO@hARo2#̺}7"9 oZvA>{Ft[#kI>ϐޘ±r-xL`Uift# J…q5M[mJ3m&14sN8!@ɚH] ,ms(|JI8:V󨦞߀]HD8 9Srꟴ5Z}op+AOf V@Z dP-nv>̀@sQGn^K >`XV*!Q=jZhiF4$9Xts-qnG9]_);8~; ώwNN^EB ,FfcτIO0F qh2 s){.:gJzR&Qo}Ӧ2[ҾM^:4kլl2=Ŝː 5H ozAu]x VYQТm9PB10{s۽{ iYaWD&,jUg.1M93pk~wZ oL#"1fהԲvyDSJ%G bhߵ_ĥ_Hﵬz9 }Acb2B||aQB4-P9kv1$~oզR*I 3.|'32'AEĠ̉oMT54%Ŷ&D!LK-9o҄S`g78>lhX=UпN?JRO*) Icw(XLtAL(ş%vJ"OA?iJbO19 .pK#hgV vbGT70[^US>X&7u*Ap.yJQX 0p\NV튗Њns \{Zc 'J@QVIf\zpWz0{"6S#zV!j @mߩ[?pF#{#sBQ"_jb'~wH٢Zީd3:fEZ~Is=ڄdaU@8 y?TSUTq$\C:g:'Aom>Q lW_Cpd_蜐|[#)H?'{%8ms* ib1!&/Yn%z䍒v˵(vܿZXĖ"ip4t6䉭L&ReHvT̘!9.g'g֑+ I <F hߨr!RZ"!+$heY|؈w@]sWjGkF.08uk옫ih>/wy`_ñUqZ]<9l+> 墷&%\ռ:gם{ X=`MC hE/9r4 u!PK?y %EK'd@2䩁IÞCԎPI.P|ͩ<ض28O,:)QҷڳNթhE]-Hmlۈ`ͬ@bGR{8h"y?IIL1[ dDm6 wqώ=<Ĥ_~qX3yֿm$x |!%:FF/iG}nN|Ee|Ι#:xQjՀL)EW*(!8b?s,jH9ϒtM?z%@~}'4m[1g|a\s6iU4#v5WT(ᚭ<8w Di4}a> C%*B lzl6*,ߚ!?$ $g_ouWN~kڍ/ )"zu"+qAq @,z(PIZDTR{Ilb&;I%)@`0,z{+cj6 ?CƖ&B&Kb8M– t5kD @RR"Yq/ll^ DI7St@Ů%eRDBAΟ5Xz1I&^WبgA2x&T0 jnO .%hV6]r s/ܫ,ۓ k;CĊd]#bEL`XNɝпkg&\OifMٟp69YT.F;<El̎y$X:1|'vݚ"sԚuB8㘳5sqZ mƝ ,0(zpn@cV_ M Gs)$[0@=G_CRdi1;H Q6F2Re91(1-F&]-fE)#4rm[ػy#]?{#MJ'#x A-y&Qu4ԬRA~-Z.F$l,eW齕*SǓiπNY┟2yT# =9`k/^B1cxT!JN-&BT <\DLcSY5?IQ7)J"1 *lt1 8{<˅K 4ԃft2YSFWNNU ю`@XjN;Yͪ˓=c/FJ&# e}C M}t}iE;euBvp7Aw5]6W^ϴ!Ɉ,^p54~bR3kbUesQOhjFXpG y|WWWfқﱔ_٢(>a"P^Vԭ^@(L. -xy _{]ѵv_;=GPGtCþ>y^rbϗh˩``cc#‹ LOK=)8>]Z Jŕn>Ȝq{ƞ!+B~RAU|/@oښ_41h y}oIú]rz=6԰1lTI-8~>\^I})WbOl% '&1ugW]k8v{I:۰-3WFb[?(:aŸI_S>_]:vAr-{WvY:C6wztƃ 8BVS@|JT1Nyoh =ji{37̃EA06/"&o+ALΊvI(T,m $(7kpE'yAJ '22qO?*gP異* Ղ+{Lrn-()%G|2"P6߹zr%vakSq5AǙl LY8֞# З,\d[l(ʗJOWyx.L0 A-w6HC} ]nնd$D}2826#jRXJhI]NS;O7 4(p.+3~1[sjHbӋ;@܁ AElR_^pG+g:U!KoɯY\ EYMcL/d;ƈ["ӥHy|YA KkClH p(}q)CdgUS-H͸Sjzo"$̯f b ݖL`CuĽ9je(&qXccǷJjGL65J* ;cmAVu&bʏ16~#fe*!{yO9u,|zuyH$w'?=On!O,N]:a$;#|TZ @ Я-&Y|aL3IV\䇄9P9#;vhܡb/)Eer rfKKZ&QS͹Чrb`ovVsN\>^Z,.m46_r/dyP|V&tÂd^#a.dIhOkuEբ1+?az:]H> 7KG U]R 6ƐNr',|X_I!"g5]Ƴn.NUKQU_#u_J?GOg0ݶ2kr{I&!80zv6|FL5=cU'pP_i)Pj3EQ2BP_)0yWP-\Ȕ^`O&nIn/R-*GBx]{z4/vMnRO!Y216I82|dwowkɞy>U$+1~e9 L5e{~8h#+kmOgp!m**BˈD~+o%WC&y_$r=@LoGgO {}nvWGZpjJRtjB-`ܐǮLWː'|ŒlHG:'_@ B`uն-i4Õţ*慈vFz x2݆i 뻛aGvtB7;HNCf|0Lk: t pCZDf@=*isS $L砺|l{eBARjtTJhODG|,ҭÆnYVHm 8Jagֶ/QDq!,?GWsw(<_JD1Rx<"nI,;z\Ή?[`YSeoŕLZ?=҅㯍advRL#0-&;y uJ觼3 14y Mg cS u|Gm853mbph6DXl(a׌ktj?):ҬQް,Y~wd!Qg/UɾnS,kqR?&B%XeO)u}?gboQ <`[e{ͱe!4Ǒ!ܗiV҉v@qgaa7иz!BeR0^N|t\珪#{CgQA"wKRWr rC ʵAg8|!f{It½jvΜovpjg랙^_6J)߭lB)P!9Rzc?$QPpv2Zėr x9 X[}/ MK6+#'=B˘ {HрA7'{[CD}+rWzrNYF`Vv_N*;dG+idΚg b5{s]1qӬ30h^ȭ!v3}j.p~9 l~``r&O23r `1g_XJx}2# g|h='$049H |..<}opWPي Sʄ]GQ2neCI`K/մ4K9׽)$A$ G~܌@n.}8K(}ƹE滑*$}~eOJ3`K)#mv |* 0)63s'AaIeְPA[X 3.J uJ sTdx 3>;[,=WI@1WDAq}Qu5O u94uӇ̀c20ː56Weݟy%i~@TQ8XI 8. t'!)G@E6h?0Hs,uWokCN2ʅ?`j;aWŁ]S@W|s@%fں :})3/ӏQ"GK F =e3 zz+ޫԗC(^rK~m\F1Ǻ/5И.Ƅ;0+rJt@2/:vT iSSr< Ldj81$V9Wˑ=!Lg3ljOօ)Hę(nws۾8.ϸk=hHe2<툽$}ZIO윉½VM; Acz(XYZ2;oN2~W8CP?vbni7g+k@d/I%J]>(:'{ac 7v%7{Ś=ݜ950/Ն7&F'hڲx6d|[ϐZ7%t==oa~TX` \ @ݗ wyqX]xPMki' ~=;7QOv.ڹ'ג2&7onZ,qHhШ ElNHViK!^V!;sNyo'hܦʞ]E>dIdI.bՀҎ>RBrʏhxE8iO;ўNЮi~txk]ԯG/}#\[Y P>h [<ݦ eFDQp])eQsWF[4yy͙^ac(^!S٠5UA)@F~"LxHjOgKF4B{(@pZy8Mp>B;(Q„α>&)yTIJb'Y]EPkJyK퇉xIEǛ`'vҿw *=W56Q HR4MMQREicP֡>l/gu Α1&Ǘ86;O~͉P[b'O]pkl|_'4מ͌> YڇpWmE!t^bsp(+i![rZ{#P;ZM% *C# W=fvIՅK?<謲T`ŀqÝ4g青ãvuBWGz-fhCqj'rRI+5Rti H+yb1HҴU ɟkNyg0V[>d,]H' ע&Q0q#~B{ IoZu?,&Ŏw:ǰg[f*{> Cyݯ65+=NBKxJZ HPB%T~o$ ӇH6/KFCTB gǧ8c)Ȟ f"s-^Qs.qU+i$1NdiEo2O&+>E9p1(ܓ/gkՋfʨezʸg_2,;T87kop)xoaC메&qLmr% )*Tz,k\x#kwFBmW꼰 ~Kt9fVh yLXc,\ QfQnݏ_@Y/ٙ{qr¬ 7{]D/Dg]-9\_%Qv׹ʲܒlYVdPq lG<SOCtIpA28쫩fg?I-OT ?f#,˄~4"yRCNbٚ+ȫkJYL H\*e#!Z_>#z0}gՋ\ųI56 \ˀG@"a8 Ɓ-[irlf2ղ Ff=ikًS̖b%c); Xk$v ,$L)O|f&P+-]KA1<ٸp} }ZsВ3WZBjX lۯ8lQ41Xd"U`y_eAr+L2xmg%Q-gW@s֔vz1휇P:o/7Ar0YPdFHQj-3Gb`PuI)&eQ%^nHE%(iTpDMq5Ǵg4%Mi|: 1D88%﫜B׻ ~|mMo]:0?c P8_ Y]tOYCx9衶-]TњL9Ie6d ϶EO IyIcs7FՐg\2o쑑:0\4?J?@S׎{9seBtA L95䆳axG}O(߸ګb'#XK9Ǘ)XMV|Abj9Aqle`0c.-Z,jѥB Dڄn;#v}Y`l̉#EFQ@s W80\Ev&ś($aRh <41ߵD*2C8`<{Q=c8tn%N#ڴ2c"'Y{w3eQc?W&83/4@..i&bA6)RX@}@ ab/Z"49St8DD>VȶӥEMҖᝪu eY &"U%+lxEj#߿/=LF6mTHF|1\gЦ*1,mŌ_G oY0H4mom50f/==/ Q;&Rm3zZSY`8^OB:Ʋ2ޟ糍:wYŶ@eڑ'1I^T4kO1ou50Y C[/$嬒z:|o,vBPG,x,1tm|C͇4 ~V Ɩ7'&*M=6W FEF d9mZ K;8ҍìg޿*  wCjp]̽D;p;<2C;kQ.Ҙ@єvGc;س 'A)ҭ]ֺJﳲ`| $6`9I5N/$ԋvaٯyђLgί@'ol4jJ6ډCSK]`LzlM e͉7H8Bw,xgl􈈞S/{ok.?||*=94ȐЏDP܇CmLo u]Yzn%.؋HyעU03_ ]!=-^C Gk =nt6@6 y ~Vx]~W #%V ^'?+ΓE՗ >lC!k7<]Nd.| Za2_x{lWMn~_ ~9@3s;BAJSGbMBU%Lq}B_JiQu&DS>qGȏ݉L_:Q_!hp҃92'7}!x9XlCTzP4 ԤExFǦ>3%fn ģ!Ftqn!fn3̈́R%KΔh25p/8f &|[2?ݸԥ\Zn^S2 3X@TFcNߓPnEQ&vt_]miܓ3ݴhlFva5 ?:ͽ"A%Hh|{%#UuRm2fV䡇Y]~ulI[eb@δ$ $nzGg`z^C~2ޝ V.R}:2gQ꜆y$ 3ה[kK rFu Ed&U.@@*Z?a)8eo̦˕v[u^0gtt(.疌{7f0A* ?&۞E@B m) ¢RZ?_ġN ȣ ppK Xs/ŠԿ,}:2x{ ͳȻ1xvIJwiY͜s&Rh,;GVyyY% ]Ab.OHAzr4qlȳ1{[3}OŖE~*ﰂoB{ .dzcN"m v#}Bo%v:Tʽ ?f+hcT!2 39eu8LB4oFOZ =31+^[VFt&[!!R|W`0SSFf84Z.jD#Wx(Gu>Wyw@)se}[~j#m&U~ DIm?e#@p"F٤t #&SE-޼ UD&D1:'&/1sR>*/ PjU56?@y- D"Ȋ?UE==&ٜΊ5#؂OF A475s P>q"׸|rftItภY zՎ#̝av7i0'?EoCD5tXWBVHʝ# wCi>!JDEF{2$j-#qt :?ij }XknsN9˞ o-] :xPUoDJ-*#_crsU!iUaTȁ Ee9/jt_)h% >) Cyx?^,F뢛VF8ZV:D^#խ7O"hl8vqR΀Ù\ *tle'pglB@Ij R݈s`~%h.W|ԁY8MY*D6Q;`H=^ t3>j7!QqS.S"B,XH"Ge/L:gse(R,Q,[PȽjR5o31Ot} Ax_𔒀C/6 &r#fVPzu谫J2jCZ>.Χ5K)oղW"ݽW{6P @]|?QPE խnߞ|% xs"a|HhL>@rTnor4TgWaKCy.-`et$00 ͉|Csoދ*zτEL?Ҫ[Óܔx+@T=nWB(U~~ae[əa0'he[O(ir nu/4L?X;IlD1 Zt_q>vg>`quhLvD T>D`$ሙy(*-PhvH b[%uC^+]2'+wcsS*5ieKx F]efdo`??$ ^XkČxm. %<J|p',0dO.3_p<%O;. Fߕ(`O*'ןp7KZ}QʱҘy@U="dss(9lS2Ns;7SIk^KsOɐ_i4PN] : +$g7#+2տD;}.1ӷ]>]."„ng椄%IIثJ<0޽y92#SwVSl_΀O/  A=W9akAsHA#`^N$ " YSsk'o} %~~y2]GU7<0,AVht4PxiKJW2P'}tz)m4{(^*&_Ke!*ɹ9)5M@]f ŭ5o??tTCya60l<իf!w0QmcDEkU_nF5%Cҙrt9!b(Uaky71XPgk DEG%Od{czAʨ7 { =@ AT0wo &Vcg`ߧ{hI>$SP|uokQ#<`;WRŅݳ7qqctGJU=eMlk1{e\؛(pKAW# f-/79Vz0Kfi6TIF=jjRK]-[m𧻓d5!8dD{Kp(jkvinl߱tk\3<;5ҝ&{)C= \{eS ;LLaK=xE z k|J?r֢n8fsWF#t!m9,0R3u8Q0TW=)3-C\^Q󍠎U\w}^oU>uqq2;̧>v>9`/.&H;|v,Jiܒ*YU(UOf+Wvf 1jE!g'ѳ?C7\dZ$h.?KRdhebG쒜Uпѭ=5#3MvגJ@XdU8z2y)>rk/_pz~D3ZK([܄cu:3&!sD͙`VTt7(@3scb o785l戳>/l+çB<4`֑b4F"KsZ~.bnVB@#t`c}+x.";ِ#[{(+&?lf_=/xD'(mJ&鄌 r:?\ErX\DmĐma8u[ȶ5}aLaWm$/hkK<k\z|ƍoٗ28ވaC-M)r iB"ܽq13~|~O?a⇆Lg$XupҶ$.[/@Z]G91sXsA ﳰ\eUㅽ@؋AD?su.  ]T^Ǣ"?Q&%_s/ hf=vtmY4h^mCPU.Q 0u ;Jǒ"o] :?2v M#;+& xb|. ݱɀ:5lUߙgwSˣJvJ]2>u]gPV}[znT@_N6bA\jq@vuYoRҕi/'l b̥M4}U8yI岯st{hEB}K9W J==_̴ sU3od$O&bǵVy.a?(kR-iSU_BxanJPq,R'Ow(EA?]%+НaS@fZv':hFq[=Ӈ5bn;؝/DT8wJfWİ:m%X5&0\(Qg^m>Ę f5}-36hB, XrbIDdD2* #lzקv>bjJn)b0_*&/(hAr1PP=pƩ?7T9Ѯ^WnԨloL( ,Uz: Ldz*>Kúg'&] j uflSS{k3Ucurv;V5].TohQ7B)q:@Ḫ|H/C(lk׫gzѳHF06P9/nF>O=>"L*F`^Y6cxMZsuaF>F'OqV `;f6EU FMi&)c2 ='lԭ#,{a#Ք6j Vm;F8+Q7!X*7 2e重K/Cs&IpL Epύ[=Zu'Ͽd5QA:\;s{ѥ+GLmѶ|*$0D:VhIN'%ymCпF2:j-\j9H+KM9h:vTx1x.Y&\c0o-G y@45f uE[Vz#;wJª?Lk6Hɰ C`g2J,F_- 'S_gAB}M^I e0R'jo\l~h%M"goCK#ӳΖZ=K$L*ߔTʘ >Ľ朮N==fBR7`Ԣ$2N>Pm fޡ@?f1[t786Ezl[Eـ]8}'ܟݔ`w'Gv _7MM(s9W:VW|5]`8a\ɜ+c? U /#w߹;W򐬼}iUĸuU{+xFNS`&i[;^ 3lKEKh'?ғhDU\OYDqׅW7l@jp=X di Hl&$^ u~e6ëd N!HZΥ>+`$φ'䚭ykJ̒_:N>-ViP0<4W#B"JBwtN-<@E>o ^788F ߿fQ+F/c{Yʽ:Z: |- {˘)+//˺ u< 1n}]NI>x@iS gNM +qji!V9&{jǿY qJ5h/)u۽윷~Ta^$c*Bl/Q'Uz@kD.&`ݞ:\@_2EC^N*e{(qh1&s vPo2t7LE'cqDkqDWLoջ'p{6l8kbWO|Tֈ ;q@!}R|iwˁ^mH>UU PD o3O"[)1v\ VMBIa?$[%:rx8J+ֿ 5X0]d%<Wdlqr0:䳑ƫB N뾎aWrݻ`|e'?y=-MW~1f,0Oa7?g'1d*H]&+f\FAo"gtmMَYKoQԦ UeF1'A@Q*(T8 itGFw|je s:_V28&Sg  CBqkԝke\MS1=_ wXAMS=ʝ@g#T=VXlj+13Ku´Xsnul 1k݄aB&]K  CeRYWFQGz4NZ+ n:p(x pD̳O۱KE\=Yy}SӁNMݬ4%ߋWQ+NDwx3 ~qQ"[<7ڍX2yHy:2l/gR4L㷀D#s#eoez/L*HX,]{/#;a&1\m5xJ6 QIY#o@$,O|o5nKpMEofkARCBo沟CUF 5wI/Sw<}QN@mj%Mk+ܰ5yfrrYwQw_~*Ѩ.PͺQ/Cm~]{s)AOU%}VYILDE3p$X1g"n4z_?q77Za{sP,N #,h~[ӎp"!UVe8?ApoH5€ўc˶ʢ0g id_LK/eаAr\KbDl^-xһYЗ ǗxDH"9ʣuY֚r1܅ 'Nre?B_śDip5iMepCAq_.E@|be4ϓzâ.`7v 'iY=O:Hy\s*)y8dH(OGm#7˜sYjy4Op$xJó*+I%=wh9yX1hÙRxm9*G]EorVHjZ4edsMЉ75`&/]ؐ *}H8S$/9 FOe!A yr6[@1ghUV~ȩz.:}>nYQ"kP-uZ|~15/Iyzo0MNYȤaWASC͋@( T֑&N{N>!axruueRQA pVR*(Yn3 XpTd1u 7&{G[~k <5>|{/.[?DbN -6Ѥ^;c=5,ux?`2.CfM\y)RmBE4cvFQvM~yN'Er3=[0)x9xV!w4u"[R-a =B%hٷ{țrO46Jq;G7_ZBRѳxG"v($>A& m%" TWFR ?HkPzkOr]nT{/~5y-jn4$p릐 6}^<8 nThdoRZ<ёݟ.MwyB~.Xz&s"%P55$vSXxF>.-MY{Ћg.0-m$S`.UGp _*`l3ͶpsCYiT#e ь۾aN9C"qݱ֪%) }" KFܕQgsFj M0w4%@}9F\0C"VHJO5gƅx> :=  +Cfث.>%mmSE0y*s g%K'=i<)5S+ΡjIYz%qtj. A2}}^W  Neۧr]5aȶw52 <%Z)u{h ԠC2/daE;ʺGI6k ̥lЯ_m4FGָVu_ taہ/^:ơʅٛA ײm3N&;Iq^"q,;N;yDh,^΍W畞wYQ=>^tF:rp QRHA3hE /EŸaђgwdI?NU]M]W`Xi>4eX##,*imڮl(lG-[e԰k#8J; K˝`@ TpE"jxQO kiAĚpW]{`y7V(D7qr^л5fgoˉ]͟pYɋ6oS;1"V-fnH(Y /#2s߷"7G :z_6ߊn& eD'̗Cukh`&&E/]LrB*i2:r<$2mXPfmEI< ?>yzkkdo‡1恶ٕ-ENȪ +xlΰl&.3@̥n*֬(oTqCi~!O;3״g!<%Ap/:#rpxҿb%{P Bo'BVP.m(iwYH-1apWei fr[& D<sJIN-^R4>U(+pRoj y/̴KEeS _ Ҷ9&cw@'zUFr7gDM[!FͤMw4~m~Pe,#du(?__e¸إ^%Hojj—Xa %,G׭LQHI%)vc|}IMa/EFu/$>4K2>=2+"۠)tYd!ڍsc6a95QaF5YFʎ1A4f4SG|/I28 >kŕnDjANn^NXMySAqQgj&ܛ:&n$tlv2]v{Jy8-Xbuŗ{"8aúv!%BYT6:oޗbeIU&*欃Z\@4G_ZQj<_ EunFع;Vn_w`' `XwήA8I- RӀ$U . bcWnZ#r:6h{ @&.y_xFGi?݀7~@Դ')>{B-䑓ʠe,_+ǝ*33DN7L愱bu4sLKU:ީ}^r pU'u8ɅRB-x믹tAk]ls20.[ t$Qn %u _Bss WGkzMvdRfz,~@n09VSojq(<AWg}=rrѶ 9hA!✔~[Nóys0Nn\$4eh1s's:_y7aL@#hR;A/e*8/ȁ^<_B7Jw:w{R\o~:uft)Kd3阸j]8ˀÆ ;tUkO 0$)7r) My{tyw7P₠7G[hضj}DAGbYdq`WF-$-UiC2(z\T7=fC:³65@[krוkhrƒ brB^KvD'?g!m@ M~KN@x= 3b,i_:QGljvз=Qp I/<΂_",9taz}s;PR'Ϟ)MA`&Exe eb ~fua)<!;$ԁx3hu4ؤ1_pHE@cX,j2B'rOX{6kdдC$M!52ӡE\_)_{oG=&4#d)3\J/wqPW&]"}åiP[uI(tvz21S.Õthst+6cA7Z +Ât g?J|<}d3+fr+tz+>B,ux[WڞǩۥEqc.l_fsW-⌿c3LLgEhC`Cڝ (8<8$Q κ44'I(]o ֏*fP>kUMӺlq~ H6EALr̀9fvFva5FƼ {m`a`Z-Jl|P'<1p-ӰҼpk'"1ʻqd$0VI>Y+nC&2x/*!TWH?9~aǭl/R㌿yUdHn[',ՙX҉63.ršŇjo܎)_p^↸o0SJ 1Y~LMNA%aa;,Iʔ]]vzwdӍcԋjUc1:'N,p?Um;`7m;j/o \X5f2􇯋>{?cNM~<l՗PeRJ$92y5ڐI K?߹siV0*M2hzϱdggHO/*@̊vc8w#􄓓2 "sd1~G!6O!f 8KsKM`˥$ϗ9iZԷ0=$!lZj9k*LŨs^8xk7#J6~jհ=U^`v6m779w-Vɴ x/׹i6 w:Q&hǡh1qqj^:s;>}bQr~-F:ӺjLE[`v:@;ډ'~5ۊ tQ O'RҥW̋䖊 8nȤ ,\} qdr06W"ӛ%Wk4ֈ+_@i"Z?{L&Bm=7w+*EF|"M 8ZY@J=kyzςjxsǧJoR@E ȅ$ @=2,.d8@ 0W[Pu̹QQjHvf@QߜGP,JcL(2{tĤy-˙\E]&%X^)RJ/C'±0CMbIkto@B! mƬc$&G:DΎ(q2LMn t1BQF?Wmd>Md{hM55જk>YFKW0NGX3k‚"Ֆ5 c3Rt#\M(D~H_w\4;MN%:ֵ-1łLrO%m5KuQΪ xY_*zqLu4,)>Q"D@f:Ÿ=<:F "x TB%󟏋at{v5S쥬Gnp^&rşmMxUoQ0 L#uM$ukLFƧ&_` DCnf(G_ l9-缂?䴹km@3nJ \ I/d\$WuqyݴS|c's))/MFv!J ;6X h\W ղ7itzF4%_ϐ76$݅,lmW儔u|;Y`J$:D'viN#MZW0D5ug.eHw`Vu\}׎0K䅷ca4)fgr JWрQ4Z9rrJ9e(+fNk ֧5U;O  Kڏ)wZ!lS񬚾i7w٪|e, P0/|6 Fl}7C8Gl2/sFHDg4MBXwuL._qfJ?Vmx4Ijʲ//&PDN2coљeX _)& cWؘcr5_qzPU5r 2fvl"QEKzNd{#Hw)L.vdP~4Ҥu#2(Br ^?ԩubI |$.Y/pGEB o{_z:eG<ecr VY|EfgT4^z߳tFJ-z- {JF (or%H3Kk>^|m]ԛtaW !*MW-Lp5C"BBfSM:me&mQ#pG-8#Z~ͺ=_hfZ}<5ŏ*CKny122`6k̟b5RmC#jۙgD\-oR,\f_b!Q{G5DJ#^/ "FMoBkuDL5""r#7XH/X&0tU|O1f.zطRH78̾P9Uݡ^eёj?vPfL aCW])o]wg|NOB D=yYe2PSggb7XSw{ ?Y8O%FIUWߺ юΜk1/{(>_bQŋTRxYU|1V)B){P%O13Ӈ&& &eiOuPCL'9`Kܰp85oaڎ=3aj=7n9MoKGO|sZ^P6fvYY<:© g7 aA%tj Mc} "uB'(~d4tGlG#*׿K=!*ܪtWF8 <iƼ6mǶ/s;LWeݓ$/j-v~.} U9 O&O|},+at %穰( m^f 1{3E" 0\11;w/wAm?82aψJ<3N,|ߐΉbF8&C]xm" K3Bxtk fblm `U K6hxS 8p2خDG%2j=fNJd+uq<Sۼ`L|UTEehP _3 JyQr2Xهc 6{aS+6D8oYޯtkU&BTjK[ f4ei ц&3,6Sړ$R\,CV`u7]dF欚Xz"2^ fĦA';gVlS|6`\`Ax_qx_(ްilt335s~F0y_AK Ǝ/NNVP{8)ZEÚZ}|;3"77ӸI,Y\t7^KϊX\ @jc4-HK(ڄFSkIEW[ n۾\?B73@+R3vn,RZ P<3bh 9UdIrj:2F̺V>ڱχ<7nD~>D/yTqpdub@q4FO6%Ҽ+C0`c[*H^ "䎰`r߃TF5m8gdM[#&_OVE >C/ {x`1{/I?L+?)H`>,G c},~A_OD"$gk}5o󛂭I斅mDq^7| _/Л"=(LjcX HhORYqКҾiW5"ՎN4ɴ퇡l P& x%8ZxL`K6Lt'l=YOM B($Pς?SvӟlYYx n%g˦;`8JIF~НrY4?e}Y)6Wފ5-g&NǺ1Q_;XhvǹY cd5I\yҧ7BC]|lzx8HqYB|WBkTbF0ñj"#X8g ŏ3Y Rջ2mח UFħfN'Jܙ^ [wӔNoJ~2 ѷwKT i$tnv$:},ۧͥD t_Ɛ+e yaZ;Kg JAYoޭoS`UhN?,ɒ6$ഐDKwOƅh1)}qV$KCZyR'n:<-+sv~v}~cJ:N35^]8x$(?+34TH}ȲG:g&K?r DT'P*ȻiZ?=c"]}S/Xsܞ*ld"h RѪXdVѩT ((ݣŢIk|jFl'85teޓ{)(J;9-(Ehj_my;7yЯ2Nn<ަI@IjMhK4lf,:6\ąr"u'ū̡0fԾ'Gd:8^d/O, W:$ z{`Q[rʾχ~xWMA ڌyd],Bbg.wi4eYxT{:сs1Dms&e Jc˜ԭ -$x0p ;A\;4 &QcH0~izS0~tA[VR ѓK&7t̍6Pp~/WVu ^#Fmk+/-"/q_\(ډ`/WVhQ끣fdU˲BWPGE<2ڜ^o_Bd4VhM>#'x1RUXwzcBq˥ux]^VÊ:/V \s+qի+"$~œb s ס 澯Xn:qjx՘A.)7M,_rPʭT~`zS_#N F#j24{ W?pIoyQi{H@5 2Dg׻ mr G7Ȍc/RyH.GЃNeO 榘N xCͮW6[zQdA U ha;XoI=0I2Y[6|xA I;)~5'Je^ZM*J=0k!ОB)ks ;YDZ~dݳ9%MU+ɼ FXK5˼`WjY[ܘS9szv{TKhssblw~_lW]"`uJv_emv`KK8th!՛DJɆL>2aψb, Y(@)uzTkۓFMc*^e\d($ǔEVX? sk7RuTaMs c3s ӷ2lv69Wc;#f#3:S1Sĕu,C]˃E?9v2}8UG[]dz:8֥=/>)10S[?撑ۯ@B=ga~ාٚ:HL_[9[thg,zڍf Lh]2&+bfnςiv]X bخxuvj:Gm%O$VX*_|6Q\q!|9d ODv2z3GUH "_d=ZP{= 0)&5~o->^Q;j y"|̧r9a9wk9שJ{fnppAg/"@ojSӁKhyŇ$n1+_iM%L=~ 457n$oGh2l2Iܐ71 v= e)wOg%ۇi̍AP[:5ތp_mv䤗$pGZ׃!{zekh ?͚sK8 Skc-0,?q mmэjny?'L }VLMK=Cr^Wa" 567E[Mw@;+X{.V69VhOh@.ՙX4JmOfێ# li\}wiԈaJqL`P8fL]l)CzhjddgDt]-{*ΰ 39.kݕt8}&QhLT!jgW%,5rKsXR 6KzFQfSD$R ; ] @Wv ntV`.υb6,#b%;Т-2jEF aZ<] lʣU>u w%|zIܶJKfƌRXH6kS:^Gti PSxp]y_0 r?.L6oZRN5uDٕ W:QdB_Z<ƀg /S#G/n<8e>-Q[,kNo&7_+TPk*/'i U.r4Q9urO*Dx̚'tIt6wP8&ޞ \s[R^ .(ڰ>榋7}q$}P-Uvw``Z]yGb/Um BFk[ՠjdel g1'ax 㫵T-I ~ h&0Ȉ~τDQҀ/#-+P'V;o aOK6} !+JbB^1x|p|oe1D ,x㟆[9qn'bn XVcO{)7މ[3ib#eE烗ڻE '`v*7׽m뎵 a-N)n4\e C@_]cl_Q/#DheME;4TCbBJLܡ*m<T 5/L arU&q}ؾt%C)eɒ|",ײe7؈լjEiD퀍7v1e67b_D,:qրir*]nmNl0ͪ`H _ K6v96z%F?&Bn^R4 BMz<.L"/B OE8-;m6"L,qIǞ*"KbV#¶8?JG̳Rڜq!_v3aݵ׀KR*.nI fM2h$3᷐}Gٛ,XֈӍq C.w$ %Y<&Sc0 hY ƸjoteɋLqh҃^`/xT#kGn93yMK).Z3ʍ[LL!?*NBNpC{ ϯ:};[B t4bۦU:5FШn zk;9^`IXt10:?00QA4[ɕo蜻+|Q6SNr3f!L] EMX|#ȏ+!wk_5/JyR:Rٴ|~qe xZ!yi4k$}.aR£0K^50|) ǥ>dnqn_C3;8ѵ'hĀBZf&FR;=mw8>2W+>_ فDGwOgQ)~>* et;RIz!`=FݪHB㯀LvB{eN F'յ#-WѢI ."]J>مiio *Nb:eʼ^ElA ݉wYAq޸B'"Ҽrz6X\|0yVaټ_˥qjl E҃/n@*(9N{d2o<CvéfYv3m!i"P%MЩkޠuZT >sbcB#䝊Bp9$wބ-FjsڲA(F,y*tY73ߤ ^jv-I}_<,==Ho4 8e"Eni6hOC@߸ٛZ]}~r$kJw{Fn J7tDA9 ["yT)6 ˴:bx-1U~a@ ZSt"M#ewd_mJtn.*%OWȉG/R\/{Sa(Mmj]BЛ}=ms/ ? |φQҸ}V8jS*K&*n,.;S*hw?-Y|\Ic'͘}$#ٟ,E81hf#[]ao2vLVgzXk?ђST 1\ 0mÏړ[Wne^nI,)ieFm/S;d s4&{o>R YkX?=_c鲭#Vb,QR9"L^a6.4N [&;;G>m,i4TiN^V7OrNڕ/$%=ZG+E U1,\|ͱxwĐjyKs߱&7Ml0O DMv5l`E:!5򿲬#Y,CX-wAWu« %j"ӂ VFkKdd焖hH% U3oo:;f˿%NUi4i9-@҅PY&x;UKU_9yɖ,KD+L7t;OdOǸ|C~Wޢ";q4)_#[r9_#/M͊B99|KKmmqb"bL㲙pW0vʮ[mi736c0xL*رIA:}&Hp5;w7QR`niUo(:{@[\Q@`Xg"[<ڢ8<+-Êz:wJ VY>\̚l;qh/w ;O#XJ FPRr cS㽾V(1MP%$ .߽{4b$p(3r&B̯G _ntu[Jr;wChԮĔH n.6_²fWEXd羥;>Y*j&C͈@,(#\j%emh( `\H`Dl}+Lǜض{??_rk@V 065I!kAl) _] E ׈PWD!,7yhH}G;2w`kk'[[Flq$NUfS6([PA›#)i6+ZY63\"*kK2n!M!B"a˜ l{";$v6U>!#f79ݿz-)/1;T-?a݁e؝6dBdH5}NĈFT9z?KW5;4(#E=:{#'6].dü6`X?xPLɴ ^+TIcCW \{zLQ ]g(_(g4V1\/.1 NDaPte N1}ԋ1酑zϡ\Ud;}1I^N<6ʦm{j<r"9 jcU0H94itiP')5 7sëZ Õ':QrXFޭSgpgM cb|ujEW Wynءw8X>]&C2b9%[ ڽM/aD볍t;;ގ|"}Md"|( :7N~zwY 'k)s ΃ex-oQ'¨ֽCcp6 w}Җ>q7/:!5b wS(TN]}ҥжp>,hHPѭ2Vx oz9y=nAcmײvdu@Ӈw۟璌g)ONؖ?g84>57}F;Wpf*}J]} GQ~"AUSLc3YeŽW6ͩaF@7~y\-0He%0n?U <*À K.أo4=ݨo桉qJR# pL5ᑣ+|ݓZ)?}ÌgX TD2)u" l8$C߇} : Wǎ41cn&#"]/T$S0[YEaqX|=3oCĈz_t2 6{(RBNEfxpQ6̱n7#G G6+aE[[H67;櫰3J~ j&`I*AH*,ܔTe3dV3t w"'ZgkPأp^n%,RJ[go 1]:>Ap協fҤhku쨰ZR37XW$H|~ɤV@u'PNc%6eJe ?\v6:)vco`6iV~^9<$$\R);̀r2tI"r0~E53&f ZO  x/y2NVlkA*-{ iLZ.?/|8.(h*wz*ԛ7㘕zX $Gq()9[QaDLQGNrLSG {G X%yOdWm=#?~ku^/sƆ%< QU[RBZBY̓CaCJ}`1Q.18;p[7*b$7H,ǫΚ8@dIލabFu?ij?K;WBn!p2]!bx,I\q;}(|$]Y }YVBc&EtG:a0[JfwS\7L8Ǥ-QbŅ(#YaSwWneΧ"< G9r x͏%Rs*U_!OCi VaﶀzZMO̕j>k WY oZ0{ӾqVhFcH€xEjBJWir=m&lk' HԜsfW<͑XD}n(':5K, Z<63!F_zr*@l3hlB!=9ϕÙMx,ӟ4%A~ 6j:gx 2f~{qhCwS9tYEDŽBzuKƲOq0}͙}w$@tdK'?+#3mZrU3*yUn Fo:e:[ˑ=d[cS?AG<,H7cˢM܎!k&]_M~-jT?lmlfNphPߨoaNWh?ĽCcINni?1x@ uc u/a9AQIȘzc?+0M7.OŒSE yǀ]2kҟE㐲[Vu7& BTwjܬͳ$R ^A+K K|Sn ii6H#a݁ _Y%9s;.q4%5#VOz }аXe>-_P֥' )'v--`cp2vH.• IvGbm#H3-%Ap4?[k|*bf eLOSG`턚We\#h3]! % W)><Qq&Fnoc0Z}4*OG} UzA1ҨF!"\ߣw^XxOPmECcJ$vx$tzsfヿ ٴ.4*z XR [!+*6;w:FS6 d(%p$4 YO*D"y&j[?=G3t[cchh}`JڴT]a&msx=Q<>sP^=Z+^VVCڶȒW͈e]N;kﳏۮ;6*My\0.d0!C֢JUb*Ք9IVtNҫ|đ9Tq*eRrr)퐼Ow%bbPkӿq7۵uZp7U UfJSѸ`C3]C k&;hV}`رF+p±5v+;W'f'uNG AhG66EXFOvIg^b辸4!Hm@Zd{?&ӝS`zFa16UǮ2a|2V)O`ȏ/.I}|ʬP.@[sukROZ+&`j5HB^e w+jc\$oqt+5@C3 ϸ EFo/БD@θ ~2juXǛ 2l te۴ FM} ~'lReG=2,6 h3B6>WNWD'ٛ?"ř;U[o$ﱘ_y";=:"?W{7n8c ]@TM=:au{)WnvJ(̣ EcjH֮Qk=o/CCI8N)*ʏno(K/okqofxhY8B6&(R/N`pRƛ3's" oe4 jw"5kU4R61ZEM8C)Ic{iחi=x&p [4Ѕ=+NrD2LYpG7pSκΨ[qoW6P^ !aJs4V$d q7)`*$I;_;9lFN~vmH2|?qO2W"Q ƯQa k*>"(;*oڻ2M?aB/ĎwB4#N ݦoT dÆMF ѩ}4Y;Lzfe?|綴 IKb,Uo4ǖ#Hcϳy o ,\H\sHt>2T? *ִK 3^2OeCt\JcxѦ'>8qFiN/ZaMJERսOZ-A9h)0{+$|lqLtK):a^ѼAR?)6:a4J$]9R{0?/JhjSXV;`\Uf^__4ß A2=8)ΰ"٪f˾{IFM-?(8fz_IjV(z_X6iݕ/ )F)m]Nc[IVxdZAtEC$ٺ5S[ i#3-J#{5g a[Pp<-W7ĸ#k8=>d34s\X!ox~́WqĊ4'Qx k)­bd+ha+UW*㌬AT夡MBZ(1X׳MOB1wЊS"-v l-TU8k`,:t&$1@н[Li ٴ(%HqѰWPz_Q(#]X耴vmŢ. 夔5j-ţQ4q6\*CHWDҁm WIy%v^pH]'/tqLk# O5T>,!Y];З"j0˓% m@e,Υl.7&#c8Q }c*)7հo~s4/ĕV+j-UTEW>t$c=+~aNyxIlylB"K-6O͝N&Y$?Su>U͛axvЎIKd ( ^4*1Q] ȫJU6`lm cZ+ hZNVǐ AQd7$ShbJ H0E eH!)^k (JkPgŲQ!-E850\)RT \$;[6=g!~RU}}`򿹀?M>IE<}co$5)kKcnqg|Ǻv#Aڹ28I-ܑ6#Xo2L 1\y<6Tliƍ#h%[듦&DRzN.j{pmĒX=*04|ޠx=8Qd#1',0 `\ǮhƘO8F멋撟e$FQ41n+1K!}"bv |ZŧSzy$_H38OK?gG\#8F Ex _Ak1"-uG]s&>'ЖѬ*>/~X y3RMfivjLDg) 7h &>Yno$aԧs,"5C'B/x2Pf .Yb]UĈ=yfz֤kO2b"ȭrB/_xfR#Av~]Mޏkhlu]˘8~dT73rn;n,pt ^@GiOl#Sz_Neg"=ARIL܊$i  Wq D;Rd;; ijqf6m"2|aKAӍ14zx:7W_c~Zs*_Q&IbvR7:b6Q~B!rT=vLJBg-1DoJB,цOLWX_u⅕e^),BJcESof޴1R]hSF}Wk+GD4z=bZjHe;[Ok+d7x0jzwmHL*L}{f7D}NiMbz @^W+Jl~ Xߒ;튟]0m'hcaJច"ُS0M8X̷PԲ9Q'iHb9kq^DLHƶ0ۊ! bZ3Ysy)CrM)ھ.7拆/t[^}r0g%uJC=埙er+5dXɁ;&R+|:4bݛkW%1=ܧhk$Mh)Dg #l1٭#-|]qPDϝ3 K9u$>7iFG4'U/"HB9cVcbozC968}vs0ח9Jn49#c #X &q|zdykTGTJG9+S}cy32=&[ԇt: E]|+<~2! =Rm:od5;uiQs>si o =tCߤDF1x(ݸv fi&v b遧%gg-.'Q1/ .v?`lXǢa0{yͱE-R>`|u(eN>TpDXmmn #/KlxeW6H*.ӝ+sh,b g ykdw(#]r%8%e)L:/S|5U7mBg̥A[kZ7~iԦSM(9sg%=kuVŠRkK~EE\UJs6Td8Yݞk{viП.nw-SA( ȝ|?8lol5 K2 7-穦OL^ZŞ-YHW;`;|N?R*Wq\LCbv;n"cYFQHPOO "PM=G= _o1[g7 2)i~W +IQK$H(4җ:Hyؠ5ۆيza% PUlՐ{x|->^.%pɡ h$M 5/~V2FP (D*ss5g)O*!Bv0Y[V:T)ٱS3=a6?V3lnla㶋toT\F#T3C ?5A)a^ 8-C>z"jS?|W(/%Yr]`[ZR.n+r,'& WOM`ftc{5dh5;lAʅ0KvSxeNFA!%\>wiҦr_VU,Cz%G&$@ LܽkrE`l9'=_5NKWT3UZ=zd[61#dяWx1aIz5`ێY-gG*/ν!}icAboF%y԰2 VNMMH2LglRoS*PCd'U#xʐ=n}VH(&̏PvwCR^N}!}RjlS|x4襡F'q}.߹sf³)Aƚ=x/ɵ6 R]kfU;M+l҂ZiJmwk󬳦%9sQ<0;C&kуbMjXDs MYːٱw3X9It":QlK92ޖS`ns;!ccG4g"Yp;o_7$ 4cF(ߥcxqn\|/cGs?uD U#)Huj`{̽4H Jv埴=dQَH e#Fa~ǡAH5wgV"n݈jz~QYk)A4tGu/a$NKGiP;rcOSߴKK-%+aE[sh>F]?ǜSWUXl42{j%]+_|EgԮU/S}c5}ES#{u#WJQ=3NSYe|e6´;nvkoG>i#LR 8պ /^n gP䁮7ؔ3 Q߶һ *n%` :mS @ZV'ٰ x mt6 Ay:weiaM:@/❰:.k/պ"M~7CgIkc`B jm.,+""]lFR7K; x@X0N,gG}PA'Ёx m`pVz !j)6جls2b'j 2|153A3M\!SQ7o1i4 E:Uo0v;tIcD$[2Q͟;=A RȁYm]zH֩[޷}aT)\/ԊV7sBka[NS&4R@P7^ C. 47>ѧ$"(9Wc82G="-֙ăq#g]kPnu^;(>A]rnk'3iWϚ3NuXӥg FFF_R6G 8;j\sK4E( -xw,BFĶEǞƹcyz|u׻_sx.͟”ZJVFmA沉kБ}hf[Z)[ W;:.BϜ αԽ~'2DTqEC]KE@hdj"Tl4gzXЃз#靓\u]~V@YH7fWs xBpbIO$U!9X'P\ꂪ\DPYDf8qH T?ӎHz w.nWJ9.hN8o5 ;@)7<^#i;~3^W'G#q^mG*o+u+| su[.^au!%Hъa,. U 2-î4'Vq]1C*R|Ȳf bAW1b#F5v` GqquP Ey̤ D ^7>WV%={1y%T~mt $ЩM<$a2fHB’$ [|\1QLD_fcb*U!F^W}, '88#E,M1 [5aq̂sg-Ӫ<\ .yVvGbv6pTL˓NJk78IS]g0/`׆ȳP?pð+P {g߈11Q'w]:(BTщ؆xipfMӰ!YbuR_yWB7-Wo դOc/G)ہY;f6~=k|E0#, (VFc0..ZɒE\]cQxJ]-{?I;'@]9a%\= ,b75 ֨լc@l{4ZL]-wYZ:9Gs.cJk -nW(` '1<&z;馞\p8A/<,~]Q)'&ھ<4B2ꯎ"5Ђ4t#g#1Nh'<z5\:ዸo!Q%G}gOIi$XQQR==DAu\(eC.vG\DcrH8SQáޑ\UI}=0>v,Ej:44.D:> jR;ozl(x,, C|[F)Qu2 fDZc=zܢtoQm+ݘ .f[b {G$P #'s_n26M }fYL\{y{A$ T1kCRCn\@C̺/4.Y1JϟQV}s/Q訣dN.8"?8HQìjC R _ia1:xI#W_]˙!8xFn:wnh2{}K|E奈]v#uJ?b6Z@!^6s{OdFL!rIZd#¶^ (֯(9.9l"FJJZ􁍘`76Fğ\VOM,4kX3L`ְw\Gbu ~2qRW܌tʏUNe]ro9Kj}}&rPgK(ZX0;2XWֺa|pU3!bUh>™>l{ACAnꀦM$E 54IHQGSTX`MOӬajY F1QʗHR!*6/]V4J`SEa :I CC۴LI1{k3(ڌ= zkVD--:X8{)Lt^#/̗]z$%o0F~4:ѲBq4цDzPۿU9!,bRxЛ"1viU&2kϢFç'{Y&NVyD0-=њ ;]+QttwH? TVq@`^*0-6@ICY"Y}&XR+6Xf6G aykۃ?v1_ߵC՚W[?䩩q:}Ԯs7뿟2cDunh >2$ȷOi1`XGv9xS8˙(GGf)! _ە0Bv !gID4 鎃ž_3+ep?~"D:OȔVswWdc E ϛlmz+ \p'P' XKԮ8b1p#n䓼CO(W^ut0j3 t%wAu@u?$pKbRkrH 1@L [dư=(޿{H,X??݉KN\Lߪ.DwaJaٹr1'cu̪JԕD8PY *|XE83+QrnGb`r,V[b5?g:K_P ܷN}E>6%L@P&,=J+Gyr^2I3nJ<0SNsd`:V%pki'_=xFs,w~CxQH+8qv”2Eq5Ǻza)ԂWT^lҴkF!~累|Ծ{H g!>Eq yMG!/ $ YY_+ F0(wS>-yGZ1bEeKj4n Ȉ=O,5FPLJZSbsƈ%.mD]K1pd|9򨉈ZGO!-B`|7[6 ޖliiUOz[_ ٵE@&&{‹8vI A#@;vun1WPlʩcOGk:v3ߘƋ<~6K({y`}ܮдH"]W/Rt^(L]ؒQeVָhh?jS0PfY*`(x=g-fqdhmks9Q?7LJ8z0PClip7jS_8gq ҏqGPdҥR: sJ!Elk.]q;vNڻ  CeUV}ED ]+b2qVȶi)ZEZʉ2v𹝋.%'E;3K5 ˝Cyy*|b]徵^ox|"4HKLg!ef.x_Yn*6~?xnS΁hS9"x.K"2PV},Wb,lwv9$v꒧k`]>B,#l=rk]Oۣ뉊ƾ<+Ke긡ox IuIm8 ?H߱fWx&?[r V`D_دG Fx\(7i `؟G(L0beB 4b ϫ``'ʴ[%G袛gv $зJk%)@nX^mu?-UKnmW˻c.4 t.WZ!\qTv(K$ wG3MSh_XB֕%|[7L2ߓRˆ汲*q]ChEc4viJ#1 (yTө+L6fXwը'Kd]Nnk7wAYDlIsHwppPWeH :X5j?VK/bFu"IAUδvS WdovY}y!W1 Bz vJLyեPkTAˁ΢ɭ XB0MӋW:\ qهٮA1h<eΐ'iQPTJKaˊ82C BQ[\;>&g:2ߎ#R[iD"Iɥ&in컩*?˫A96J\Y):Mxxuk+v'V^Ry':EE5/^HWEmϬnIF.4YVMpb%SC\ߦ͢lj`Cpѣ0JS"7w{FBR/dD&,}VW8sm9 ijjNB-N.Y_j0n9?eR@}j"oWY 5vȅ):&MV|Y\+V9 M#XDXkS$0ئ% Uhs!jO\͏URi)VG: Y`oa=|XfdYh5/Y k÷1t9$"^HE:[#[k~_p6hfAVqįǍp l;[ޜȺ,- h1rXރmH"v:m& ?F*M(B9Vb0% $Ls@";V vbW,k<.haiXVsHs5qb:`:f92g]@m ;}>iFIml6"9IrwGq@¼VQh$F΄1^"A0k\ZbxAW>wΝ;~4:ZC2Hܑ͞I+QnHuFc9^a^J[2@mxⵅ;ht4$ҰI`&223_M=x8҇ܘ:m 7}«s2;u?2 9Wrbv%Kk3}6&ƮD u奵gk)7)ًL*;%w[a MPvК1Y^=?=s$^ug0tvđ_\?\[זtRd``Rᤛ}4C{2+L_k&GKk ؜ jin\U4$Xٛ$NtgW\jaREŸŗhĀ״ XxS"tbcXˑ+b j^͌0 "@ x=3 O[a}yhqմWus?f7ٖ^TM\@AϬA4 "j7!q&;K~s~5t? gϚ(&G\z:"5NᾮA7I=_9XSE:V|^u] k(?ilX|ݔ<#=l0ýծARI-fUz0_~ȋ5L] @>y$s׺h-Yi^vWmo "L}QpzHaxc]sG|2Qp=_+Cۓ~9RN:)vaP-`ο:^ S⎾qp>X2[sB Lʥk&AܗM2Q^# ,k=uT-[I:92`jzK0hѾ;>&  {z3'ҍk J)vb~}.7J@f`ރ5L$2#~ٹ?w& AK(*tWg6!S(oM}.+k iai)~HMi&&`Xd=@ frYѨ?KgȗQv/=%tsFm&KFU1׃<<]Yl:6rKP.Gsx#SS9;& Rh٩$Ps? A <"] |4lc)e)R6H\+k>*ϠO7ϻ/Ƃpe>N#c_X_RSUFlH澭?IpɎ~]㜩F]=/E.$MD(L10S5[g킗I]#o#kƃ8o8Z0݋8f2NGZ!o:hH{);+Mw܌&np=, yhe@b ٱ]'VSH6~HJ; zĿy !Q# #)̤,ظq޺eD AN >[AT\75 `+=O]G\>k3<ܷo8ԁPVbbod~7g*z# 4" O1hB,zHԼlq(0:j87$0$<>*͐}R+Fߥ|ShL#~t]H\`3գLf~ ǿ*cq/jMu͔Ԣ 3m!شbm6;~ S=SaFeh!c*8[ʾETJRl7 ] A@/9ﻀzH^kג[MWj̚jКtR'3{v6"W[Vyw`n劍oY\'WLNAkeg]1M=}g_]C%ТlrBchVf0wܩ`xd|+8@Ix.R|3N-s]B  .۪ ϮH@4r%oXMGn 3 8-(ƿ鱋v?l Ȩ~2cb}qE_ QC j/Br>kT hnK**|Z0UfqBҿNiR[Ɋ}fUlg$.:MK P/.̫cK QW[~w6W(p1B\>=Ve^'Tވ"c1:XxT erHm?ј9C LR#FLL26۔yO_.F8ԋ½55Y~|zy˒wϯ`~}[ !aXՌ%@{NZ|dFɹ NGـaTР~S]AҠ66'bX!\Һ7Zĝ'56Ea1LL&?:d뾞ƀ/ SN0}y<:I cÔT3ZKbfsY= eQA ElPo \rO?퇄CE +ܖII{큁6a:e}NFC!.ҹ"XD"c[ Ϳ=+j6 s2jvws4% # ,;(_&3./%GUU=)pd(D}K.xv^\W6`gaZ SF'v-U5pF ,h/S폖*l)e2_Ҙ;]3nA3@z+ٗݑA{? 4i\T҃?݈qۺ9`+"5y{TyA6/ o߾M#]C?)~pH 8'eozYGʼnbhd$UE!o擇Tn4 y)ŘܻSRɤ%ǠEˢ^5YrRJ`F^ȹ 8 ||Jw?˥X%KT:߆ ca]|f / +n^z*`ƫ%[{<ͣB]Pdnach+{}q 1#C=ԐǦ/F:H3sp݋YT/#3v^Cox΋FXpmbH0^,.#2* )-r#P(o]\M 01;Tċ9 ϾyyIOV(MN;ʕ6U06/EBs +;:f[Ǔ+98pA/ܠqp{W-b\!UO`HϵͶi !}FmjC̈́ Uʫ lgZ d:\elcө?"z$Y@DށMPHwRNSo,Bt}s<դu xT.c;`~'7:DHP*LùH(5fs%:L@z#>wTj|]{6c)GҾD葏aCܓZyv'*̜4 :N5uc\ y\4+Eu"0| Ez "[ѳyG VAnH:| `QѪ#AhʕTt{86Qi8SB4 /˿|)92j-x]9횬QA&p_PR`}lwTw՗^EYT a`>jZD_!m,*lLqK>%^k\e4'ksYYY`ܫd9l%i;B>@8ͰS'_|kF9!OsJ=fpt8#txNϖED5_){A$7|C Rr&ɘJKɐ|*%sDw]7v6 6E7[nq>(ϋ+>79a d2<_J(2'} `-``P7tZȖR'ڨKK}yAwߊs~> N 6CqDQ`HO$y?jҨPȈXč \EvWp/͑;iV)mf ԮGIZ 73!f;4 j7p>J9Aiud{|׳. a%xL$aԑ<Z* r}Lb{&&&hpj(JlKgz_䞒>hf(Zb}Ὺ14vnp _SԏBsjjU-֊'&Cj?OdNw٨zʉVt9&2QK|V8t֫GFSB~^MgjjqrR~PhL^ ])h$ޙf_=@{S.-7HSPg}(|!jFSVU1"iĚD/խ *1ZzH7$(LljFRWZkop,R!иiX:Lm`d(\.? g vعHo$w6|yP۴c%L2Y=IN ;}y zMη{g@ۤ+1'7,3%7rh9:p'0=T9>"?$;G7<:rM پlH60voL̺7}o~̒BTnyޢU&MR={i(@Ylq+䨌x›IZ62EVqALYdBR*uj6gg[-'k;(䨦ehY\#V\}5QnozDEy {|" q^jMl ?H|gn7TX=F7 POEswejs(6[SZ65;^ChBd%OT -#=pTϺj\0s}@bz1Dy8n!nеBv,K]x[TU_u6 4pjPuqghd~JjkY:K% lju#B]ΞK`;ӊpi^W󞸙,7iKI_ȈƦ95 :B׃BXFK3{?ېٟ1WJeaqǜ6eRmWE@hW^ר}pԌT l<Y>s1tAۡIt}HkZo>1'QI"J&0]#.r Fӽ#uu;e>9wR5=Iʌ l} x-sVS }>$kXd$UnNKπnH&, օ cUyvbA|Ԅ$ʞ 2`o*nLL~iLCxiMkg$9 X1@ա>.G ('&~Ī8!Nvv?H\=6 L=dRÁ;Wf_0r4$Eޱ@`cnOͲ}l꽒Gk.$Ҏ zU5S{h|{"4CP N' Gfnnhl X HY^zLe{Ƈ/j/SSljeRL\M!~nW[LyfU=jy9/n(&0 Q㸻:[m֒+GӞZ2Aㄵ [a`c'Y$5T( F0D)vgeGt']*Z;ME,B aZg.&kiT<340+a}cExh~XWWimj,ɭivF13 ׷vahxH~@mhlE2QA$&27? sNdi<Sz#85?eMLEggǐևgQE͝w판o>0u;TmexC!aqV#F /a7aFxFۮֲrM oor{ވ%]!׽L/ x~NjyX=W|s ߺJ$?Tێx|}"rv 4Bnl_f++X> ,gY;32Hup)x3甋ńv.>F$[J;Z?jtI,xMȮߎ78p#5`=V/-JbϤ32SyU Mf ώh͹C,d,Iy,_' ISdDߝzB!R! 6367_jot4j@n S->=2h)&kљdg=e@m?Ȑd\~Ӭ\ꭦ~hn _PŐZW =>vmPxtufH<.9OSk@>v',N2JQSLIsd,GgdW9VV)@{F|-. t{g}qk1 Ei-) , 0<qxbpvH$qw׌xf;^OJP_,x[  :Ӕeg dBD"Fw1ȗEuE1p BcvT{nol+k_PXtQi$|xq_#f'a4sCvؿiIx߆7+BRK9 PEM'Sy#{g<{IP ݌'"iu;ʭ0%fgv>j~n|S4 {F}{.>ihX_<VpK4!H"EYwQBs+mbVk!5o~yt MvtTMd*0L 5A-zm2$dn .-NӐ'XY3Pϓ!b e%3)icUZkÝ1>ǸdVHid xy9#}Yږ_FNyl?ΏHĉVq)P߯ ])ptnnA wp5u5QK6U)& px@ Z+B9}dDs6xCSpƎcbX1,ϥOG%M/^ipK Pdg!?NxCj'EYoETDZyZh\Fnd'uA @ >Ah?H,iFWo)_w{o၉/Apoa=#ޱ+w}")ZnKxۖlW${x1IKϲu<-p+{&mb6uk8k>]{ݪK971ӎR|/wyѮt<!sM&YʉsG/mW27#يxBGShW;ok+HN~tDtW0,S'g*9ɧ&fZid:Qq/Qn'|_K@tXE8 T]^3. uY2^snl*_w&FUaut B0 N9otGv$^+NBEfn Op)AAkąϖ"8 GF_p]..>8ukBoIH%Tn7 WTF˭½"_DǰXNx$}6…ɮ;HjVZY`;l: K,2uK5D^2pBwdc`p !d$@`c6n;| xle,O h> |^ :2\CrIaJ=xS1rsaoG?$h9WyPvո,/WgYts4RC|\InL~>%9ӣR6mL#%74y  !qwK +lWN0* fCH|ӷoGCżݱWv~T7ZޡŏGwnV}YǍN¯ɕa#~/jצ۾E-xC356W$PyA7J킆 01,ծu3S$iS^i!w0u`s(T1q(~g},lhdG"B-" ۓ՘kն6 fyÃձmw}{'Hr07n"S+>)!a=$dAA2yӰ2o4*'M۾vQ} ^U&2ʄ"ɔ*xI:z|/we>GTllF]& Ջ+Pw5bMBP .ݬO,*Vcw<ͮ#\x4l)1C _x49O5\5RA\M*:> 3VEASW}:X"Bg][{^\ZC;T^#-]߸9 _4m alhfPp$6ADz><ʦكgzd,YRnTYiD ,OyE5ƾ+p #E"ڡ~CZ@E v0 81x16ڪ҈cx@" #gCڪ`M)WgVK`+K2 kR56AFzWMET냗4ƙa,mI̶ k6H{18UTrvU$kHX>_l}8] TH|f>3%hi.쩐 X33@l:n.6+nSݚ \5R C>ob`?HcXAS'IdfyٜTaNo)PC0!ڢ.xKҌC>Z"YGmؿཐo6x$e@+3xe\@IzZ⟢'I3m 0Kf89c: G:;jߴA9[s+a6!]8,k 0Έ(MQ s.7"$km4ۄ)MD38cD &bz`>4{³{FǷ| .r yacA-?c=z$qmEWU.gjoU՛[/>,Ϲ.Z^?QqUF=;uq/3`}_ 4D!;E)]ZO%HC/-Rx0~Rl+I"ґE ,Qg MP˦G9I`mz:S"x]QIxyia"OA3_#2|{Cps: VqrMkYӝD? qݕ I[%l_:-譈im`w8EY zs43)M|j}/,nU+`X{ffx_u;2+M3X >4hv( d,'PV%b4x}V"'jYGy_׃޷3ݗ#ZAv9n$n<\gőq= v" 1 KssrZ\eȌ80 ue*1V?ɭMAI)}G/gHqG:DNy0"Cslx6=6d,ג3 Y|q q7wh$ RQT쏣F *pP[z`Es͗)bLQIJtHPo1Aѓ/?zˇ@ʎ# &}(*oL!tI[:p_MS$M Oic0%3"NXj>O%4> l:q%oCզa ϛ45nu47|=; 4V-q̷ Y.8.*,2ɠB՜;ߑBHbd@v]Yry_"l0ޮDf:?ox3tk_ lcוϼ_tJTB OXA&r ų>uM9-)e!te"(/~ùE A7߿W )[EiFj2Y+oqj'@tLrvd'/v\/?gdd c@ LGIDS> oZ%>9 ͑ ;aMIvJ vy+BF7p.@", vi4{7,EDWe8_'SB|UYDAĖf ) P9z/q6;<5@>Tؽ=̭lX;\o}DZ)<:|e ο$S !|>-]^_=?Qˍ JZ=>l AM mHdIBc "6 0v#[m}90eE67x'ռ":0ŕSTRS@]n3L 5OHH;j%/':`z@ -$mV/VĨ3&rTAYHF- }W53Kmo8:8Fx*:䌀8Ax%|rHjRk`$;77֮ؔC7 Ej:\}>͙$^UϩPôߧkz9p d71_O{R7Sm3=76Ce,T>_Y_[~Q8kv@<3Gڿ}Ihn'5YU8q,3?QuQH+tlog'lH,L! ګEK62.fâa1 Dfop%NhO+y*ٍ&#e؂3SL=lKL\2HeUE- yŗ-N2P8"ij|n%IE-zkyB!>\_2˜KKNпC?-/.R%62yN䀞BZgE/6|nk9)ay dd 3mfκO{{%ߊ&k]M+2 _Q-I,ADd0ޫ_Ѱ"`t86E=d,X]nJQG%ehŒ$DzJ[_ C5Fq,TJa`ztbkC[6Uj=Fld(/GA lYAFw:N6\o9xo/ ! n}W*@/E&eW@ VQwN]k`Atgd`Fq ?.&h5 8CfpyױD}z$ܷ[ʜR0+.<&H̩ϠF`?( fXj3wW0jcW:A{aHy JJC'G'b؄[/]t5HT| fWo!G4[D M3N(l<[N/d3[Bl(kj%Le&*Aa9+z/]hu=縅Z#àEFK595աȒFW(Dn7n_'7%d^ϱH X/6xFQ}ᐸX7ՃejbV@v e '<Ob5u;Mn6&NemT^G4W7ߘS VmJN^T˨,1wAڤ6<L{K(׋lW@c&Q(y>!`Ϝ#wZԚ?M95Y=x|Gxbe 08ݸ2j^Eb2炖V&Τ ܟQF0օR3H 񠭾rf]@Ӡ+xWwBA8YFiϮ='K'"ᒚk7}Oiu$NZY* 4ߺtȶgjm*e=^dE}St~~ n"6UfY$J/ijo0uVSR/iͭ"Avǚ9Grqh{KO ߒ/*.gzYuRpzIsEn ¯'TJFSv>ZzxΨ,h -# _JAGxԅق;ĶxZBtfYMj|9'W+,NySviv<Lu,sҚ{|j[ޝt_CTR3Yi荀 -&.6e[oCEN's._S}Zڤ*Dma2i=,W {ӄ]0gJ37~d uJn  sc3QŅmv88Gaܗbtd@AtgPNT5?'E^iqpzy8Y9]i%fqNWu(9M._FI޵??g'Y]bzlCˋtۨi',Oq(O_9VEaQ mf -/K J-NRUE8v}.{ɟA&EpLB) 'Mt%T\}T%%ɁTu4[> e|{d,|28yTf ޮ1wGL4 ^`&b}StޥIJ-Nz;NZ2'(.Xߵ1`ޚe~#LK1D;? ,"=4e6+^wmR44ssQ}Rv8^Vaz`=Aٰ!P_q$J]0=6C*,3>,j0%;NXԲ Mki3UpqɱiE%HB(7^'N*)lU2?oNtPnQ|@YpǬzޮ|DZ+ƅ3*ɼ1z0|8@L2q%x+?)U g'4ZY`XIJE~wsO_Sp$,67d6B_+ҸV(5ҁ4(]jYAi5R..mwA֨C#RNV|R,Ps4E8?HP=|$0I"$}"MYEUnc<F_4F =ETLoo ic@3 8eU`g0X$eKT A9 5 /YEVC4wV_h'5e-ݜi6QKXI}9_2aͰ*3 <6ҘZT;!Յ0;{*Եf9a)%n/G( 92gѣr||APFxǾu0@(;8yݞ;Д5g4"zURk1 ܺ<A%OS9hxU/tЁ'COE|=r1InMǟQsw 0E#2vw{&1)W-Lݑ+ϱ7/ĝBc>e= 旟/PqG0%Xـ6qJHl{]ej{u<TGE/\͉q~$ )r_y!lǗ]鰽 c'O}R,5#`o.}xMiZ%uȎ"%1C\<@#~+O}<}LQ{D D%%9[%;]ssuiBWMʬg{!)U?^_P"`~TRPGR~"N( p(:k'߿x&S&?*v҉ޔV|ay>)Puh]Jఛ3V^ hZj7HQ NKz- Ycfن)Dq`@˜b =U<6+=4%H_ߖꊦWpwHHT#Y)+T?qOW@ جu P TbD\0ꅊe ` sM=Z@1Ν]WJ%M wvm$SpǞQ&"YSYrw͊-L^׃P~\#.n緼|]w:=%~.qjήe+ɔd+ 0LooѽD(^Qss1P$:vL̬Y$,,=kŋ6iY%6NdyůDZNE8;3N!1*ϔbl ZM湌-xBZ%} eH3a^"NLOޖA:GP%Ҿ(aG$ , 7Y:>=WcO+7R hSGфv:EwՉi3~o`%d͉T@BQrm By!b\rzK(mL(fM>SҖVd@#i2~~yUuE]g{fr)y)N]NzM%%}(RIB^t Wb%%KkóD| VQ_)!Ȥ_zsLuHv)@$0*Krcjt33ETD* Ѧc $L4Zi=bEf0 ي|;N,[V)i}$Z;ޛSNăch+ 0+Lp4j[̂G0Eb#޵upb%}x@2_l`FZʡԋziԙ91jjq{_+H6ap\T4dBfXRM}ڣu<_w=RePr@G"_lP{9Gjp%p8sSE}+kGV{h!s@3NM.m6>WܤbܕwXif|d`]xB ye{7susV2onu  qe떞A%,:VCx@K{MxĚs5}⏹"Ӑ8CMӕof SM4c3K92B[/T!;ٟq|$]ruՂņ xFS651Kj{wZ)/\_;pY1 TH@5JtI<'˙ Xr IR;w@5T8 /v6ޏ SRDV')p("b> "g$SԆQP.r8\Ս+(hu]:f>?pO#Y(M+)]EZ]+FѮ_B?f$-ablJ);&3Q%CXM! H<ɒ.{Ѵ׍(4Ya@| o9G#lз+HejSQuIwAL"diM6ݟSIM.'2ȱįh, EZ 4ɝv?c[N)U ,e5N+!#jeʱN*,9,X?[ Y7j6>N4@z}1 7Ӷ2Y8F!,=*WMt9߃:d%j#6"'H_+ ^L{<4:>zOGD 685rH>#x6('6 R1'P\  ߈7l޶Zr9OXM_Mp Tyx`@r A+yay"r;tY UR+JAr;?hupL?%Ư]\^M< QpnVd0Q Igy?uZ\+c4;Zd_M#53vs%,SEbc&UCB%Tj g1 -7)}GS:S3hBCB} fopSڊVg,v\<ص+G]>nrʑbL%Fmx_A?}CUzd'V?b'K;7v],Ic}bg%TY&f}eZ|Ťrq)Q˃F qeV5 Ct?q:Zh_6@=xZQz$ !aԝU߬n19\Xj&;޲D3̇do;WZ+@qݗU0>.Oap.*x}U财KA7[ЇY%3f ;IVWs>qD$aԷhJ"+vC1!>3&?] ^24]`tS[7H-x%H,p-h7Z~ iy.aCp&YE!zE\,y~8QܠƏH|g6Cs-Z'U"I0hќlɝM_]rL,,7G91ue}g V{eEh u~c;DfH ooy#[m_?OK?s3Lk;-yQB/-qm]~ntDN_.57hdXrTZ׻(..^a` vd 4Q& )e,hc1X oo~O^)0!(P.e΄snQf~d,^i6E A]D]`/+Mx}Pm^@p,Ny)3寰Җ AqզN;܅C'9΃ ڦa~lahݯfu,Q_BRGG3wz]Η̝iJ@Р1l+d4Ҩ^5&3Ĉz9>uLTwQ5"Z 9vzԍ*hgg( 8n^ A2TJɬubXyXt&S|6Edu(څ\F &h# vJjլT@y }) &}2||*$ăK8.Aoc/ogeQՇЂ9"ma/XLyI/,zyH|-oBY~Y?1B}fa gIץtA %QEc]ݼ2xD"CMI9I0w;tqGxn?+)\ BЉ5#ub,>$.~"uv>I=~r54EZ:m!jr;FntkZU2.卧ʨ|jn1.I$*܈D^D9Ӝ"5Mq9$ϳlc^/sr]?u/ |PN6W<.m]Z8@fSi%[V# T?W`IdFn[ekO_xo.RfBqȒCDiQjofY0$رȱ;)ezTKI>l错b֥Bݎv1: >cpc]e+A%ipRWXt˸vK 0ꑾ~$(*˿WgV^0|roGc'q `W[5֨qaiI)[ K<\"hcP5FΞ>%O2[osӆX?PD I>39XT}@z>Mɂ:Nhv`尳j84\y'Gs} {ZSuky6u=|mƟŸbmYn )1#D;]ϭJdѰ zsQX8}a#m+51{.&ч_ac 3"?9d{ŠI}7xhf _2ĭ`$(א+hc6fASx+SXOIFтZq p!aMSlTA?RK>N˳"M}E9XkV W+ JVr؞EPқb}#+ Tϼ=_m&W5Z /`XQhg? >grfNsIPDH;nUÎoLO9hMQ^YvڍP9fS.vE U ,$7[K K&`&q֡X0I]Bh{yZ2?aV&Jku48 V0%lhsD׆mI%MnH8jQiVu@̑T&> FOLkv6ԹIV:$7`MMrݼ6[ _ BGW0ӽw8]@=۽4s˝ % ]z.bSDO-mx!NQzz.$s+虁dr\^;4&cFJ٦ia[p5(, L Zd_K2lv &(DX{,̢Q]xrT)oNbka+biRL/h2{ M:Qҵ?I4MF CLOVK$q?Ӱ(=Y* ]Vw: -Ӝ6J)m[zkXu͝POB+풳9В2րz^q !n'-KF4-?^Eǝ5LRTzF*[n\Yz5%U8&~xv}Ei2Y+qrcNP4_Qҋ$t>I*7:g9A|+sfY}buldsJw?To!/b FB2t |z-&'ݲ oR.}fG)kGByxdP%'.bo^Y:~QT1.O+r 4c \HuᓑZc)mOoΑ>a0Dۀ(ꂤt=ɼ}FSRy}7˙GG#߫VT[Ǡ񻴭d&[{6AY] VfjDrb2NB6b`MqL80byb6XLrc` #zt 7pUJz߽Az4<$Nf]sqݢ&9|^lԻܺĘ4D/0r22zC8P(V|+¡oY9=\lW5@윒C-=#_v iՙ?=ʊ^#aVo(XU,Uvӵn}qEq\ߌ"SvdlX3+\ ;2ūC2zCn(^gZ\V22[pqTS=^e-^Ø43Brp5J 1-3~Oyg n qkVCi^n /ʛ]=d ŅZ>ϨSϮlib2e^lSv-!F[8{lMeXu~˫/Bq0~oKVBfQF4jyhͦH BƴFkEOvAȑZKTClM4,gH^FsDbއELa!vvᆆ]mqI%-a s1z7Xj[\VԳ^94[*mØW\,%'DŃJGPW6*Cq7PV0z񯒵9 ,HFS iO,LIH9 E,=Ñ68a?z(X9d? wIt`r̪̄R^Jpfm&W~Ƃg! o0_=nPn&!p*%# AV+VW Ej\t70cNR*΍!&q&wdNGYi #n|A|&v(ޟ5vSu?;hyMYnz,T?#z|LJn&P^vGoUV]qxkQx)5(ц̺:k~clT_uD,Uڽ%5dP#zv?%LYH-CŌ]QFA?K_"v9tG_SlxcPZgiK4s㴡GaAA)Y< fe⢺LĨs 3]h `ég ٪ *Lc}[4.5~^k18 N؇'N+:R; CR{@A\J#]*K|FZs7Q=Ԏ1 O[ _}7)oB q:P2Qv\VkwBMryXe{ˡZC >9O65# jԦaQ@ '9| Kk.r_򀍨[QE9]Z_E.xa;Zl3RÞQ(ZٱFd;FRos7:@̀d_=&Mbݨ9Cg׈ @٠@D~6/Hy ERxHeJ9ΞRE(DǦix2 \/?l4seb; s!C47=HWp60{spWD sE-| aEaӪ,ԣe=o/X]v ~ 4b贬&{ ]TڜC6,{pn.buIw1lG],0Ծ'B4\#Fe,z/OWQE~bX=!QQx)LjI^ZEaKY2˟gZƄ>cY22n=]mpa9C4ǔ`Asni3WNtM*~Ie'U]};o=u)'W,1Bf$X۠P5A=q)>N%GKֱ.%er=$30JNLEێ.Fh[J}wd ~s\tJVpEfG))`WyXmK%{׬B gPZr2S:YF")8[))\Uw=}NhOUykCt$) 3h# ܫ%܀[?~[odǍftˣ$EA=(n/rJ?'6ųfb=Uz^ܪ,plB"nz1NA?W=sn X4NH;TjnxR>c`L}sP2}MV+6yNWM!D) EF~Y@xvi JxE;qP[-{'pN1A飺@IQ_Zf2Oȉc"H4A6݅v-Q}"Am[u̷TBV$W &)ـ( gKG k_[3>nc)f#ɘ8+ O]\b|r-*"SojI(/؛(#fB*KʥЬhw ¹GVy͈{[Dv\(g\ \? #$ȱH A@4kUaSea>@yv%yD9ሎzwĀQ1,AP]4Uc2!3aRƌe|y:.kDQ'S8(&Do9[l/}sE~hI>0<9f_UVL臯Ps+%1M(dR;5gF˃tmUnJ^ה#v|$9DzGfg;fbj"kPC8TӬ/d+nX3S!>gOb9y d1N0yf ,us4LWd>L%Չ-ir&9%rw>;<e* I SfGE&& MkƵv;r 0[wv2ٿlY-wǪȱjsQLl,t6ɰfnūMS;&,i@A 9SI8U/7 ni4)9:X_x0zҼ^ICl}(>>0wWfgwF$Ll}"N)2;_>qh"|$_ ؋@V;Z㢡-bGiŤtd,YwqyX+ne ;XLg{жo&J6(sxuZ/.P{hЪ@t(0S?SP;(>*8v{3تQ̫Qs>3GԇNgjVH7ܶ}a^7sAl$AI򊰕}aQϓ#6.~L͔SE&ɟ:A; vM$)ܽFڎNv⠚ ϗ()荔’9UBci5,O lêC-C-nЮŸUQ+bQıٿxS7UeҺ~iV}aj,Q!|ȯDdLU8 Rk\8rS;uups6#9rn)/K+6Խ6DFA (yϳcY(p&PjW$'Jbe!iYeT vuqEzW;22k zd*N3sC},~/Ҏ]P٭2sidl.GT^OIR /få,scrŭW=5r2d؟lE*‰ܑ"ޚ_BEV`8b4.h!JQA ~2#!Vi}tE-8ď.2 (-A!ʄq䙃wv>tHs*wMPT`6ÀۉK-@O7k=s6 wk=Q^g|ǖeIKZL 1욕 Fܮgԋ0 9۸Ni{a$);#fkǚkwyZQ/7t+ɿ =0+l/G):%q7g[վ6x9"d*iQmynfǗpE .$a) tſ[H=Tb 1h@̶yr1K aTLE!k1lz40ܕN9>͑ Qgk۹ V"kM9J jEݨGW L<<'Ft d}j6'2)AT-^UTgdQu RލTʍ=ڕVB|AMcm7nqKKlpǭeɗQu{!xf|.$nTƠ)Fv!dy.jkRƢѺZ^ -9]ܤ]5ţvۄb|%{ݵHrfg׬]vuG 3ZwϐR8c9C#̀ 9~Kkg#n_(QU垉k>7'k ,^0k;f01&a>Gr(<č%>dUgا~sMyVkwK* HANQÖқܑ_.B7ms.-`?mFljƙ8{Z^˅3$k6H ˒Z3njI7uڪ4E7^)Kooy $m*iri#"ުլ-(FI.V1vIgb Ig(Zn,5C4H^^/"ӻ x6[C$~DpLqB졫ز"{u2;K44\h1qԴĴtT [lֻ^/rx%ZtVyPc+f?=3z):"l-jt4$zI̥+{քm_;Nlgm n\H|A;1zըYHK nUqg(8 0,mdD֦|_ %vfL?dy|(+ߣܕRP=6. ,zu` } } GztH͸3"mj] )F>h9!B7c/@OztОrݿGf7GZlN:f7=yhDL [sG-`4 _fo!0`$∔/B#\Q<_(ZaDY!?\7JNʕYv`cSuPPa}{jkR&威]܀w_^O`Un15 WTonm]ުi"I)mχMyl@"\GGǰ[ud 8Ň Z !kٸmC#83@Rϝa 6{QϘ%it" MpXo]z3*wpyV1-ӞMeߏSH x8Q&)! &Ri?%(g%}d~l*b^e{" QՖ,yntMpS}ޅ_Tm J Z;hBբosMo`xϲ[Gϩqh߁/7 1h2~F (5PB˵PEvM(B|3JZhU1)j][zw'a2FCnI#!H?ULhΨ!grI{wu''l'>5{BThs2v'+JY$ LFp_{CjΝKS28d&terw:0Mk{YĂBbE3d؇0}w:ܛy)mcf]#tV4,mB;g=xƺq %AN_>&מCuLJC*eD /l3vԓa"M 6 29joN;kf[ǎa"{lfT6CfA}m5@>TSZho1YLp7F W۷~ֆr @{= `{7kAwRe ͊}Ȝ rOh{YQ;$BWۛFʃO8O]: H`-80E֣'I0J~*R\I!{|U}@6A/ KDnк[瘍tC19ɸMwdۋ_],z4}y] PY:`=.z3K%-g}<k-JMPaM yMkz828C 5* ,,#a_x`4NcɮWS@֦)ژ e~%)ɡ`CU'Lpyō}dAmN9`J(e03ڱ"zsC$a7 JPx&<"9hhBOЈ}qo(~NrYw |[t&))5&o(44óTh۶#Vr8i:#kW,j,ъkƸ)cU>!C}0c5ieK8+Q.@R?1]B׆%+H0׭5YJ?A—4*sv"r}f%LBڇص%Qp]𓅇Ðk3!iHE@F_]3FܞZ4ڴuh@W>A@u~bdyRk=切tc/vLhA)Ey˼&A҆ΗFImXjwncc b8(ʨlvB|tDߨSR9рƓy636`b$5[v /NWB?x8\D!E )۴Pԕ;3j11I p} A}9 7׫T/}~G3:FozZKUrS-5rT<#G2@)Sy@> $Z?.ŝ|1IXOp}4"t.N}kn )& M E#uELA!1ML(*&ki!Nq^ HAPG[ ŬHlxG:S'3I{_"\]]1Onm5+Hv@"ˈ-P[oL2?9uIS=r-p^6HJ+sx֤wk.X e cC#FXf)YJ7.+q%!{B$S[Žjy0.9dosJ 8ȁFL:ȳk9#UC9JT g'٬|r PlIݱ=3Pʓdjqv) ̓Dc=cMb8c~Jhj݄+L3XQ&O5_Qg 7~U}/QYbcBWտEK)vΑ({?E1iMtS 54ﳼoǑN5`!@E-Ґy\c0H$ rta|!@kn3G62tSw580@8(D2,/QP3*I(o;V´0S[`-Ę{dcRƌ;[`[AD%@V|'G1׬ ڑ/ia =[V<~S٥;̘0n2',6TEgrjЙbY9aƹ1 N!RXv,(B8-+`PK7>a.2ZT=raN4^9G7Ap"xEӦM%?'ȗSuTwygw*#%[U_ˍyQ@P`5CWFB{ĠytT)#@U[[@F1y?~"^BYoٗiEz0HscȦǴc/agq! ƾڂuPJhs(6p6UL8CM1"(Ji[1 8O{P g!Ǡ$N9cGJ.du{-R.^ 7vʾywX,P~Ž5j~Aldq4U8Zz ȹ./ ၵ?/=m`327`0!f0lfyRɉ…6%OH?@}=nu!%91XmA>g̽Ґ<ARh 5{FFYuqŅ^8gC1*8̰cNco+~KxPV$|3젢I֣-Y&u}s2Z%nyd _lWCez"&c$޹el:vΣb<7(_H-poMZk`;㈬_;@ KxzB/Z9^>)[҈' Z:@XjzY}dޮr/abŃ3 ݫbXʃcGD{TVs %֎B'y'oq O"^8Q0e~LrA`B=uN1&}q9\lljs 7Wzj~DIM*Ǡw512T 5QBj{z#T$ˬOƉtrhdt9V_s \ɤ& ̚7 zn W"N_)] F\dcΓ4VRO M .f%qk~&z3>S"a,53QgyܜTe*߸/Ϲ!~IɢFs:hF+< ;Ҭ 6 _'C^dAנIu o;IAAa<|'b?)Ks [cQ疎6 %h muOcR9<WΥb[R}cge_NC؍& fn8{qep"m+IV '˜a N'0wgD5Ͽ4]Rr%@VGn(m;bھ `1 `oN@u?g?~lҸ8k~ܧS$tXS& &V#p+"΁ѳ.$˾_?-5\c m1zV-I1!7Ŷ Yﭺh:k0C$&$A/dBF{:-cn-[Qt)J֚텯,~,ηׅ~k˺K$DĜ OtVNN:'qldNʍ?V_S6 f\/Ԍt~ߋ䨒ۢTYqcuֺR򓃮:N9&Y_2vئ_%|Z}h7 m!7/W889F2uN0@Lb*Ÿmb?5x d) _^gД`2KzSrU4<=znkZnS*=j:/0[wȷ㽜E5(u[(X)hyr1'F50pe_?4X&u/>Mḻ*v`Q=-:ޕ\_ 's|G I ?T0ݘ\6L( nV hh?XēX\kŷv__F뢩K g(kWG2 Nέ $_&${TSm~1^j 未bL JKP-gƗk$ø3<>ljX;~G&hHknbȸ'j_4^R*˩p١M1 rbx[Bz<_k5sNЄ 'jx"6(8yJ,Eh]l<@ <DkW%\ֻ!,mXpް*3,SC*tWYډcC澬N흦G "\2ϗ,1I|0a+?=gbƨ|G8]}ep;:DuFO`5W _EsGkzwK'o;w(;$1p!X4kn~i prZgu $ ,(*Q$ޡ"bLq%*$~r |кHƪ_w\!AS;^ ,M#WoQ-f^{΅^Ptcf_IÒRA"'r}8-pUm~i{faa=:*/Xoy; s'8b\>xS/l^q| } Ja:[ #Q"Ӫ๋~F3FK ŻRM@DS/7rj%I*#hLDv /Q*BVgX2p]6cw.Flj(//+C(2JܽlFvjXFݟ\xU:B QPqWMܶxnִxʞuA_up:Ickkk%%; MEXCVYQմ% lIj3Dg4r1,#)=HAIjh01; FJ]o_Z:wl|;p`"(\52}d8|=44性 G#t!i#HA* })2?ǡ18ͽs7"x D& %eC9g@Xr\rgeg<}9Wb^B>qAK62:叴i[ϴw'u%n”ߝlCt7)5Y[8cR ڠMi""Ϛώg،BQ\(_Ԝe.40O3h>Fb*͏+nU~!u2 sGA:]s(3~!2$5%q<;4R܀9Vn!gDB2%ϪAp^`l~u`RPU0nr~;Ȁ-F8wUn;D |Sd)7(D0MNڸ]>(netYteuqhoۇz=@qBKY--BT29wQ j9խ pǘDn`[CڧZݭ5vS['ME{*=3eSB rEP7A-Rn& A?2Ҹˎi)z]U&r/JBax!cʷKp=ӂ<ٚX yjbj@jo@ aw%$^KO2_sj,Ic?^U[O\ە*co*i+xdakޢ;ć(ӝlfRʗW@ !ef4wQ`lBnƸcb4$9*.r4TΩF/ eC~u:ŭM|jq! =OI5;?]ﱑԹ/xCd \ !#a(},{/:ZO8_ eؿ]0PIW\nBOA0ܣ͞e&ـVT3A,6'Vh oW9[D_87aً͟ w99jqs"p~돃3 g:q1ƪ[HpD2M!$I/)^]g@x>Vʘz˙>!W'{3aAلDUTd8ָy%I \*8$$!u,mfЯNJ^bOnҢɃ7 ɸ";ߟ'bHq@st\?NAwU h 9LdOi-uz)O9g~x!`w[*Fޥ_)a/rrz;Ps #V4EL1pNkTTbVPQ,O} P`H:xR87ݝ@E'Fuߟ gpbZvͪi(wJ2F&s֙.C扒W[%\@ny,SRd٣')GtB$Bz.Rs#e9z.?yŋJj{6F5z.u؋|3o3!TE7< N#}/i1,Ea R;LlXIK˴kza2+hqXxL7 @Fy91G^XdJG&UqOs=U;]NP Ï KrZզ_+!P<'>aM!83^MM-8u[n#|PehQCkbp g(efŋƞ[>/BMpJo ަC_,V (4Lq3ќk=nO^c=~{E+uw'8l芕P k^۶Ԙ G\%~a^X^>b'?#SUBby&kg~ѫ3yz\8Df +0sÓ=5djYnlGIHa91UKoN>esَg'`Ė!]6[h Rͪ.omm(.4hp̴/0:NYvyg8ZWI&>v_fPFR0~zeV& + ]rU]5)?kG%2l;*`"#JA}0;ƣ|1T͑sD15ؔ6l>>q2_&;XsBxT 3@ᜊMNqֈ[!ǎo)e bږEfEo8׼M{Q9nD6/ڛ.}ΒJq{DixlsvT9- KdhH?{ "dFHq&2|/y Oq 4)#%9kذ'[Mؒ %U4cuY X2Õ _!z)?7li:"<1~}r<6nY)bA+6“Nѓ#pTg?qEs5Ons0y]B`RsYs`:VPb8vާr m8t1;%gwfH/ϑhSuD19ڮ'}EO )fyMQ?nr-NLiTm Ai7%8=b l#ӋK"Po2)I) 38qX1M'yeV 'z\ǤFp>v7<J{`: sA,m&)ꃮ$벏R3,΂̛9KΑؽq7;zcxӴr3uFkz3[$dEF%Ko _Q~6Ad JI[ٹWP7# DJ|1>L6WAJ:Sep^ Øe l8Pb[T[#&=6-ezFs7t4#<;¢hȑV^Rd-q37(hh}<jzjg֭}E/ VZ, ZO0'U혁gVf"zo `k3!^v!6r.>T!-r؄w:P?Q 5er촡٬Llɶ[E _` tYuO7{JGP$ݬM5KfE 8sd-9j0c>q;ͣr_מ'1I(@-#,sƮ-aک3|⹣҆(L_@BaSi%$f}]D{Py?}UܷܳI0@*oYuȤ$؋]Gq} 3R3 =+|xΠ掱ѧ䬀aqA@8T'IV U/^6j<~⹙}SZAyZY| +[E63 q#h_>n>J.d9͆KVF!bj,0Y~Kj@QmhJiD9dG*w,lu8w] nxagjcC: P,s)G^G0zv^*‘hj?Y0E& Yo=kd`_Q:oUཆ CK6$z|_hh8"Ȱ&C\DshHUڼy#@Qn^(QYaBL(,zl1ӆ; oZ~1QW." ƤFV>;>F1#~QyW&mnR>oI^`Z=KL]rܴƨvF' )"S""p3NY+)&Us};nݱ*ǚO78T .; YTʅѕs2mͥyfT/;1#VCYHo+[d[7on*|:+(s쬳D $M i:r+jH6꒹1/ I0{6d/e?݁U'v'(dL(eЎWk,Ifq;rډj|eG.T#ubT%M/ceJ(I v+XM4v݃Vuu?MTk:R`'ǀXShΔ>.j!zF[|7jwϿ%>5[G*ؒJ~V? G{t LH'Hjv^[o=G| #D{7>?9s[UEC-]dVFCT] ~a2jA]a]=0&U#3mƱ۷5"\p(j%4~{;gR*y:٨e7nEڞ#|,3vbŭOMVJWty%ga)~^7!wyNtm MEC,̴5iTU=mD¹+Yɷ1)N1rO"TO9&Wbl;H";1rS;a* +s82$2K6ʀ4bFȍZP{Ur#w[0@?XψW}X8mp:(6Z >xh$ WG}Y*Wɫy Mm]fG38 ?U߳pUjdB4n[wksq^y lN}=0 5%ɉ"ix=܀gU55 39hd΀DJ)SWmuX{f&qv, \ Mܺ {edf<#  R&@Na3]+dH"(C$2ႊN.O¼M<\2LDQ; yIfҘa]@>扂g'ƾ^y2cEuvﬗ Ld@Ua4\S! S|I8BͬL,qgȚN(aT !S'VINF*0]NxxX E6G&-hoZp{BEպ5n^d ugQݴ^#C T?:#}z|GYjN@ҍsZyBrG36=Ry'i7iSWChc3WȠ$;?j2ItaL_"%;ƒM_|j'=.>DzlSj_% ^AYDk:j !H_L  NWS x-53:bkn*!hu=굅kA]BYvr+zxƔ~V Yû,I8!Mˎg7Lgr-zkA^FZO. !+90S]tӺeb:")}r4|$TaU> Fo Աj)ڼKZk>>F&k("LR$gЖm7h8Eu`n8H/[Pڔz ڒY( 鑸5gHⅶz@$ț6)~ֹ lWazn 99tZ"2ᨾdtWJ]Yf&N`_$t!NY}(ez`eJ-Q|ttǗzªnT_T/v3uyhnD`GjoC_Eĸ ϥUK|ey΀G̝2P=a/}CQ(+ `Qr_;㫖ߖMŭ k \?ѶsD_C-8B [bP$88tf$"#rTmK.i96Q_]w|[tm[1?1Qݿr>T7X(<i*`Mړg@,KL)jndƩ7E{tY$rqNs҉ ~ЂC'Ømڳ8Pkz'a܆vJJ-^v\p5(=ٸ%',h*&{*ZH!Ss Ś  py|J;d~Ɗ/95CԴUxFc]ڑVe-R>Sxl=E%F3pḊغc?b lN h*lsz{.^U'ΞU7xԨ}o[;CIr`{7rvV_TL30)Y=3Rj P՞׶Y; ʒ13`2bs$8LR"BBHkij:KNCBY79F&/f3;jqVݾfw@F0fwE6qXS jԳ~4҃E_Ϧب@d#I7woГhG#czivYlLSXgpNX-'oKHǪ^ {MmHXn۔-SO9 ĚBn?]o]ZꝹC5]4G[bC!$ZUqqEUw1XgAe s YKmw<]Č&!8 \rj-Aڂٶ(=SKL[K/p'=6Fں4)V2/<=;U˸ @x)pۣޓIq@d'g1a> E=,oSɇ%sBE+>1!5deaz `56#emQĈ؁L:C[Y fƓQC¾(yI>x2.-[atum6>c}.*@/ {P2A XsG@ ׹k\J ;G(HɿpgfZ:fy7"ι8xfBD`HдGhbw&[uaVO`u*!>Qj%iU׽L=7x$#R6Ikc~OaiҀ(zX7 _8CF79L)qU4bFlt`{rNT*nJ%+K%:VGKQZ !7)"Cb[Py`Cv@ I`O4*?3>5.} 5T(E:_ͤs$ an2CR 9yEF||Z[Ľ֐MLd1tzhö2woA-m,EߓN祙=p2Q꼺E E+#%=~0"Eo%R`@ ߈xtIhp11maVJ vhy,tguۛhzm'ZEԥrWJX͕65%t܅ TF4Bgv,o>09Mpzg{JpW΃j>fl $ QM$@*aGyg@`]_+*=_PeM?bW0P@g%ȫ|"I _ ax'4ؓ#qK 'Z 8K60J.}8 jYku} I]Ko:X#r`1 A{odmdUX7#{ Tn@S/ؽU*V %f_6㒯Z6pVy` #{Nkt #>6[3/"՗5ОtTLܢ#8 mާތJ*$#!kػOj tռ>fŤ mbBu#b Œ,.U|YU+ZvlST;:/K[wrJyb9+Nl^2Vssz<m9_6ᾰ4FKhχXb/_}%9 ;V 3בsץpidZgSVP%\oG7~DCc) @ 7<ɍAb qf#f{F/jBrVNש& whKZ6i>Q5w(tz {QF 4'܌O1)PD-y7%GJFw>~>(Ҥ:>LT7(~Kses_̲:b.r {أC1,LC<Uc%1}ZNr <~KR5w!&N*blҭ\1'xok,QQEl-k ͪQ Ɲ.g,U㸠l;6$(όkH4J9 r~h>3d^O6U<ֺ&oqPhQ"i2^hS2÷z3ҙNCCnF140je9iɡW[RPhL!E $P`+쁓Rwځo7&p},!Sa/3@ŏ:ץw瓟JJKU@^B/, Jѳ|g#b'#JjJpg,M{5TEL5l3MrdP_ZY)QC/Dj: "9%h扼+6ǖD\DɰYsE y^\(䎌C9ƀ e[q]8Ѽk{/yXqyֵbK3k~>E+ƾGjHL6XVEg'__dxtHD~Ⱦ̳,e>qeg{_~iEYC",fǖ6tPb@;>$~Z8>P4 ?E$,p*|3i/uMae2sVg%m!ƹ<ӁEM+mYmS?kޅ9}IԶ5nQ O:AnhMJ c =_B˖ǼWhZYB"mY:gB-Fj߼xi- sHB>|58R Unb$I bÚC9j02O4sU7 )vWaR_{IE.5{ɐNKґъ4"=Ȕ1#s35'V|2ȦL#Ql̂R8$࿝"M 0-ˍm8`E;bo׊hݥlͨ 8+Ͽ*`P +,bqHl?Dz6ghh`M ƿ [\Jbx >,h#ˀNltoTA G- ihMϡ y-RvPbq0(܀D#m!$ǶwXT1S!{b˿/G\E;@ tVtHcxqm-5ᾡl!w!@_qɪU# ةEDysWJ uy]> DxmK02hR&N@cI%^_ʔ?88(uXܜ[ Mw <ۤS\m$?ۤ blrE5j$(of,?Kb-|QJ:#!yaI/W5fX 7t&bЬR}~v'L28[rE/zzݑsj_uQG8NHf 7dLKn]aVEKD?1jia=;0%@ )d2 KYިU&7U0,Pkg&`Aqn6Y_}yc䁡!ū]]3b㬎{"5sE-⁸qLU+ua.uT;<%tJYݎ4,p략CKy:jȚdiG&pLyl4gq_غ28o<)a蔞phf9E}(RSٺ̎qt)p왐q2(9HCn0|M.߬z ŝݶ<އj||F8B2,'?8)k7pǤc 0ZXfwSG~khxn>Hp j}mX(MmVr0Ep*g=v D\QLz (5,o0^(h1ӻ0;۬Щ\!nc6RF /ҕ{.E񁆞m̄L /׫aTJVDn#n*k.pa_efl!ލxmS mCUŋ;)cӣuaCݯx|BR){=yҋH~S3w{aj (G(^r5e2}G%e2"c O.QS"$#|Pk:}ņYؖB%ugF~CJDekIѣ5.jRN޽?ΑޮeF|EtȀ=_ScU 5Z$hڳEò(ʨLr l_[k^ uvb:m8S'6Hn7fe܋EH}q/ueۮ 0*#ٮmn}F3CJKA}uFERÔJXV'j),u laΛDoJz nQ)SH—WmB,Qxa~BH$+'R NݳwGlc*Ҿ.XvaΤ9Hlk*6xɥ$.^)y{kaSo{YW N b%йPeTGk̘]*F8>Nɀu;k&y3ay>S8ăʶ|U5L[4 U$?1DFu#$ӥѷr3ʏRM)Yڡ1hO-y^;xJ`H HpNMTx.@]1 `["bN|;^#2xf l9OD8\ |pF!'k{%tW4ˎgvFhn -a5u˭Nw 0VjIz\l,Ea~`]"ɼ3K;.-0\:'Fʕ@a^ysq$ܫqˀ>RI{8%]CI-L1kZY:4N˓x0fQ&{Yx_Q,MWQ,`Z7TX}@c6wROڗ=VP8H;L}%#`A3s0}K6?|R v*|g}iiAYkVImN4:mxHr|`g'0|ͱ3rBJM`"\ؐ\5pDM &v}ؔFYMt tw])"_#L=1NW}c`(5a4Ŷ":ݾk݊cl%ZH^6K,f+= q4sH#riELr ]PY~YI`l5 / Dck'S _ʧO ZÙ`K,mFwqH5B-M EAa}G>@`"ZLSyY,MlK`2ޠ#݋h{r*4r@{ uxΌ(%Mث+FM 67-5m=c>;(:~{m^zuhnHxN"kSŸƣ}[(W4re,7]4;f:_*B G-T<( iR+tilM%bcG黥CP97O1Far#ha*M]Oi!$\SYMXU) (lw07*/4%<;OͰ{ވNGba>~Lh|P7YgxY ߰e4PWvQIXsF_/Py@n!½XJޝF/qR>4@^Fwq 4,o* q(ReGZR9MF`eX`3X7^T ?UNd8nU%&T|FXwTȗuNՂ9Է틽n&. D!5[&,zM0Lknӹ\ȫՁK]B|5sˡ#⟹9 A4oJ?N.} %I[(%a<:\U` 2_iN.y`%ek,cf򜤕;(x+{-_da`v wвdd>A rQ6DOAz2HkhܭE[[TJv qS*qNbN@;\untsJ7uenn'#um+ޤ*O7HݯR6g`=ԅ9^8 CJ=4N Sb]A џ @JuZRVȓ]`t 3vgrh҂)WS4w]i290]R {x^mR,6Szm$f2?i[v!$XEcu N.W{i,.G0 Ռ~Zs ,7MK=/S̱r&4âj?VIK{br'->ܜ !.g ־J8(׏&O Ν[B̯,snUK#(*1!Qok0=B_Z6C}_CٿjQ3XCnp-WϽ}Ӱ&dTo[Zs݃gs$_{[_Y'_˼@rw#HW6 f.0H\jQdj*Ok?y@)`|.XGSypPСYx˩ 3iS@1`ywe`t}?@a- V0&D:a B [ɄĭĈ@06Qij5[y'2oEJD.2xBw56ˆHAuoF|r`.$sv+E@۴!'&gxSw>N QٰX~3 XwJ(gp ùvD4 \fPR}-^ggYS\@yҩȽlJ/} 1"ꀓ}k33 2Rx`sio  00#?<5I jXT7kPi?k :xee*7:tWRMqMjk`3k/<ձR̖͸qFN;4*ѭJq6b,IR $˜>IVʑ5|)4}G3MNfC(~ U:It*O`'&s~9٭ΤJ:=98NzD 9 0Tפ,LYf_4|dkMվ$>V밇Z7Vuɫi u$S@zQ!,~ P_&Y d5U%XHjqtL71f_Y!!c)XT gKRpw``鈜9|_M밷(֏`96+OM'=E%[ o K^^I,UP7AvS  J-Io|%D9!J*\$j^% K0Iis5o)愶}̦8Y%yrB8Z6cbʭgVbtk:stZ:AEEQ,V3Ġ/Xdi:龋=B:[+Xh3dbJI.CH]9Zl7[ bz'zkJBF~L);rRd@e,p%X1lcmQ3(( b9a"K(0 lyj#oGdkyX7LVoFSae*^MJ4FУX"'O|*+IٔW%|9p(5ΗZD)]Tc7{ނAvY?үJ[x!.B)j bӅ du];A ˂d> ?Y3J`N9uPKG :Kc{Y*9GJ~FcYD~DWzPzx|̈́gyGo|q )c"#G.>e(fN25R/ӫ|\$$I0Y…j k7Ff,ƕs0uF2^|X3ý E'hL}_JP+Nl|{ IՊ,sޱ9#Bӡ?ЌG_X fm\K9ֳ n7f1u) 2P8{R3!,(5#^^][/4Gu-?+wOk}h U+n!Yn.Fg"YmLӡii-)ȷ1I).wk@mI,=OgYL5kpj5Vq똩X"Qm 4zN{5doDg@Й3*3g$r}+ep2~c u&T#欮A:v,VN;SnO]%EI.(FK;xJ/`&B/v~3FIOiCȶ/yz)pt(/WyIr:ck.Barx[6(je:?RrH؋?76YsжQ\r&9>`(6_Zr%j#yYb)ś7%ĵqSzs#̿n o7v{8 E 0+;%C™{E:052lTKS!;G˫6!XsYkX-%X K+2ٕKOa!?s8vymf.@3F#Gu5"R&߲8![9 ᠛G͞YYsK󄞻!$yT!?YCs"469h2[q y}EWvՙSųa͢/0;HvX[Utɲ%{Jy$G/xU6vAӿlB|dUOW p%ãb?1-q=$)[Y[Tu0iP3`'z?2z"nOA@C*31lFDۡqaa}C" M֧#ԇ~\W*yp!Va6% \,)cw6R*9g!EK{8gSv Th|UnP *Txam++sW k (f614c~Q|%>eGX-"DU] |;gu,*]qkszEQ䅹fl8tN ⤄;2͠#2MoJ{|J=^p5<:N㨽ɐg)+86ژ\CwO$7mNdTD"u{@[R8F|w|It[p.JdMgTv]}A.d8F Gזv׍*EU[\=ܔWTU!(9}y6h d5iwZ -#Z\#ǺkkcVpj=4YsL`Ǽ+uٵ̮!Siàag?ͷ)}q]u`V1:$B n>0F/Ie㞰(TJ{߮;A* 1ST>ʃϛ^d OW_XEO6'o~Tz  &QYr)V40@yNK D:@|jF8 v 3uB?A0kHu%*4<*3{$s`눰fǬ^klՂ[ אy (/+h6h$=Ic ߻A85fA&a.ST*ZIUmn4h83o㝟rßޒ)p bgY櫒,Cq8tmua4!~ɗÂktsLZfpܺe=wU¿eޭ`1[56,4*p R[v1>ΰiO,@"uN~U>s Ƣ\exU,Aªj?Mn1 LB&=^ ZS7iq v`1m2ggb]"PxfѰ{߼O @q%+3v4e&QI CV@.о g  %α7ΦKpB*V;.zesT)XIR&lX:.BSٵ!1 |r铣[/p^20*[=oYb5Q$Yid۶De(Ts5v|"3򅄍X&k]ԥKtU0XhN؞8btF9Ǵحt_)\wMΖYs7}F;;25I{ѻ3j9+BU!\)wNS>Ա_m~B氆OicKm_ij[6]+K\"jX2jK˖юD rjaOcdUkG Jª(]), YA^G'o $;P oik^_F-(在)kgX c q97OgX;w`iSՑ (V-~]ѿV_k(ïlolZ6Mĕ_K t.Hߙ;5K͇HH`*T6U^-14EB9cAH3x~< qΪW h9>yȨ9a3-4w 4άX٨ *ҵꕉo Nw+3ݹZO& I+ӷzi>vFf~c=h9YDsoodŗ=SEZ/@i:WeCw%4&CHߋGovP| eRRJN>qNbB}^!t"&1@l2q?e|}Ŷj̨ ~v~~w(L?(.?AFly4Α#@E1PmѵBOXuutUt'wUL([TS7 mY FBƠ}`Ϭ~Y=ꡯ^pB/ŗK%3`@Mbʼn,j6U^ny}fcɑ.(%}-Uk~T xl9ai3`BFeO\غ&/@Po R9~*xDFv:e AORjrzZVʔrG}}*(~?BVu}*MlFʃʿ~/lEg/c1DillB&C囨S!wn_lϯ,8C&7[48bovTs4{T!Ld|ҲHdSbsRs9d?arF$5ߐnU%1>G,?lZ͹O-*NpDX(nyȐQM鰦c0?Аܘ^H0mgY'VY|r: ܉AmDN(~c2nm5Go8C;# ѦE%Cf݅( ,@ 7"f.K5 ,l*&lkuKĮm><Z,aM#(_Q, c5l[ީq8P=G6>>Z_͗q%Oy 8Ao qvy2{sX9F@㔣;g0{d%=t:@Ng_4/hgfbzoo\d3ɜqXk&"hu=ɝ7cb^k.D;а Y7 Gf Q\ܐS@FD5:ywS,"=|7:-ٛ_IdpO+NJ?YS15}6?/tuW2vG{4 Eo0U"_}J& %|i[KN]f9Nvn@[ԛ(+ 4?;@ˮ6O[^ UV0 ȑeژ ƾǾa8v$0eѕ͘)wCCu/#HsN'Tj k0 tƴW]Ε.+k2Αjzb܀?XյT,+>(ZDw[f*ҩ>݄5{=<qA#FrFގۑ޵FJ&懀j3&jk!  <@7ުܭͯؽTN53::DĻD,}C"K0v T-b(,)DT>v TrU0 n˟!`^5w!ބy~b?w {]r:_l{k IL޴ݳQ,kARۭ@ >wiyJVZC6@Gp HJbe[xeN)`vwJQI(ڨ^YmC^̾<*>oBJ L [V Ȅ9 6 {ѾjzYŹɤt脧X^!i\ySA B֬ 2AIL hɮN=rQΚT7@/lR5-Yi;`Rɛ/YQ{f H(-mb3?ƀZPaWֺNK/}3}b t[oK\5(~wT33!MP:;b#jfN}(;i`_(>RM&k;7&6u4KxQo׿Bhwq%׊_ gٌL^HL1f˝fSLů5zBLƇD*匯(U%xy==L:jP6?W ~3%V<^ٙui^>1[xEY)ͪuE۩͆qn޷#78>#s.N*('mRq[N2h|:MS>ܚ8P~=GJs!7FTRQ+!fІ_T NMpdaB5,ohq.# ]-Sډμ̡i:#3v*]8BW]Z%` ԡH,0B2pgr۳4U1/䭷C_B`qQCԍ[^ CU}N0V I&G KDO/0'5 8æZ;w߅3}0ڈCok0*yK/oE:!LF,~>rYrZvyRU-F):,Úuw?nw](G]`#kMPB%MKŮ)p"괇| RVWf">Oq3ſ. _hV8S-( sfkD]kRw-O͢8W'f &?J@Y&3J{?bvlhA ţ?u4BVn Hni0m@Ԍq_i<џ DA֯}-5wO/}9Ɜ̭- zn?qAGj{़瓞7Ɖ^}j◶m3}xhFW(ƱMsF;?Hqeй9ۖ[S VrcKuC Ae B$}LḊAyu x[ˆg W-xTsQS!SXjRS,y\?twfE?'aFXbA55r?:WV>0}ҁ3Q;Iya+hf/nĸZ2v UG@ur-?/V ([>8}#($XZcTIIL>MO2K!EM+%Եvr!Y%=@̕5kʿ,#4 ?Z,S?y= ͩ1#I7tCLjtT~Wj- ھS^> DeWvu \(bPG 0:vAORBg̣W>;^L8VV<@,? DV + ڬaiez>E7۶|JYӧ`t*eƧ+Px@i|‰_"j+(J_)@>_%wGISqgq<+v‡ P/a '_C"BY!ϹЦ;? ?IEvv\rsr@XhTXu"$ rHP4#Ztxm|Cq3Csgbѱh22OSѥ;V X@kV O_A \bk-b]WL/!sC Gޱ!d[ܿ@RfdͰHF֝޵1 7~y4Y>zy-VGi:D\9.8 EÐ> -M3Q}3awꑖ#WeRg?VO$ } ;V2qfcqmlY>Gt]b"eXʛZ;SO ~(UQ|A7l8WBV$E˒f p?CDzQE\dK* ؅c0.RᾺec ˙H.|Np\*-|L`:fX1tw{_ݝljStQ[FfeRbvj L Am5B͗3h_I^)0j=^7ߐ*&g)ǀq hז_lO1FUXM 4cCtZ 2Ӗ?n=Q TGyޓ簖2)N32HҷPrn۱WʸfG@k_Y6`LZJ%9>,J:wڕE=*%R>HÎQA9#ZC˲WB x{酯ӳCe6)^?( y \FO0݃'\C>c SHlw*" `n/V)[g:Yނ! ϶G pyIߞLt|K׉$jКh;$h&z+F>? {+3eN.S>DK 0E| 025FpQ+~JȲcio^Owz+\^w$)F)F GF8t֜NJ`#qe^% ?CR״2˘qw *ƕ Ct~ `fq} Y)^[*;?rPaoc嫩CēU}T$Qk~i/EJ]:w;]nX@9P⊄Q.Z/#݋D4ѥX}\kP<W?VaU!zB܌qoM{?_` ȣoTsv L}Xp+y0Xq'>N<0P+v;I*x} <[|(o͐ۥ;m=T&=[/?ږ|MxdBڻ@斬=il2%‹`Zy0-[7 S2XQWkGa.nۀi@J *n!ɟ-jߪT2ePSԘls ؅|OPgImD*Cl.۽8H/^"2oˎlzm jTb~D;a qC3 jvlyf.4Z< VDuXߍrRXLDѮo萓?EDUmU ;|h-OѷchZz>Mojyy A32ZJ5XAcee}vm晒xC&iRS pM2[o#NtcA| [=I`=a޾x!=H@mOLz..!+_N >m36}`b`aLm5!va(h%y9wdB{fO`$o6R&茤zv1 .*5uy~MJZ+&;_1~;QA 颳i{O]Yfl!\)ƕ4"L20*:F[z uЧ٠*o1zJhѕZ/W&41WxҴ7:Y*MᅂVi/R{ 6|@*:'dM d%4Mh4Xi})m:De8?A( i:a?ע^``/TDm !4mK27FK6pyW0D~jǫ_ $*Gas/*aj.eݫ?6 g#;$^V Ѳ^pDtY謶;1mFYj?BP%`ޝٞMʧMMa Zсy=w0?܀龩iFnSӀF_Z;}me5T_*j.Z3|>tO9JnYytK}[L.]/(G\q [إV12K̖݃z %m0Z.AcJ4}9QiߎI!GB}yb}@҅]{IG/FVU;62v̻a}Z(/mN)Q=Ӗ$^v/e D>T6[۪{p9__oԢ$}cOO `  k,-f $޹G)7YEui!wV`rc3-̆o29%"Efp[69vb,{ ~('H -ryMOD><{“D4hӦy_z*&&pDy(lGrz_v#dLr7^k)冨I]#bx+[__1=tx[tE:I`=ȍ&-1p 0@Vno,mڈ{Ҡ9 .d^l :hPD^ ay+8m͊jk}7^ƕˣҾP8gHܛ:]KPH1Lk6r"2ZJrO/Q 60VH0qٲN֯GINeoڿ%H c-j@ɭ pQc </hH\Mɾ&޿P52Y1X{FMa"d~@ߔrb{4l;cվyMܿ1抡K9gs3eAhtMdx -.3kBvgW+VK6LޯU& 0Vdv|X_HL5^co,@D>Up(4h*+jW LAmxS lܹ%&,vsw}I>B{+N-c j~`,n$y@d !&(o0n%8)G~Yje4TA%4y5z jg8z1 C4X䱱loɧ p)>8 ),-d&ȖKLӭDm7=ѶI=;}G3ĝ`,k fJdO6,(Ȯ._ߧ'{=@R{'A@ZEXSGV\4q8a%@5 LlٟU8(J!:g@mfb)ol<Ψ_RdZdҸ!I#fv2!= 2~Fm)A~1.<ѿWB2׊hsL\LhQxI8brOdHJOe޷d3c|:~C̚PV+ܸ֡p^,]AE_jmK.89đpⒸt 2Qc " /Da L}Gv4ťX ڻ7/\Q# $Sv-;wI4~ZҥP$ li LT,(Q0&5(.5_'*%p@sw"_|6F: |P~F " bbͳH=TPҸAИĝ%땍ޖP++WH˭ť&[׆6P#P|8lvcrh68rR[w`f fW`@#'-{=ċr=Hz/<]?PY-lLeXnpsO3ͻW##nyv0 ;9J>˓_5d&qyf?Whޕztx2n9X-KŚ~7詪{e,z#Pfha Ō/$Qeҫ=Pg8NcqH>!0 +D*$trאs+~A!+gҖ9/=LN:{2 UTL;@WTLO-EwE*빉V|c x שU7C)RG@P{'ώmiuJwrP\#Tlon7>B+2iDYt&|V?.6%$V5M% 4=Fcp6l]֜p-M YZDGg ;r_{1>gL[䤊Ty@Ź}Vok^Tqܬ"piNk_$xR&gؼθQ( 8QH,'P2d2]aKp_@R=\1=)J Oh,anXRY2 .. %+30lj`!+F3E98;o;B( .6ie ~Forػj-C/'i@xT4}H%C2K\=71=Zd+5 wqL927n~eڸyHa [~K2Ki4d Sg_Ņ}<^[Ժ۠`ڨӡF],Ҽ]$x8f(Egx,}瓤A%raTR$ǰ '.+1g u&-ƑwYRKç(>Hx|@y9LD{gUh5{ZU==pOcONyφpam$!WH ڵ"# 4V#2J;q-Ftؿb O{?Bj /9ZK U 2JBce)C1s0 ;xʊ{8}c!=F&2*;JÈՍ1\tL-|7c#v(5t:<F,2~HoGPM(x~[U_SF"xcizdރi9ⴵ' -D8ث֩fo/pGJ{EZ ؃mHD#8 ؝-kq:Ql(?HOMq)SFuQfgn~#ìjj }:PfSC dmr=:sD6 Ț)V!3ZU-k l>^B-J{0,9#$D]pbOs͟+{(W𑳳DM(sɟ;##H>L @:EEFk^<tkqu>P_pL.'Z)ut$ur*p!\o@y%5I7Ez Ϗ&υ脲I}[52kl>2gTo{W5T{LIr2&ʹ2mZ[8\qVOcOXA0{za 6퓎k;AvMi3n⬭8?q7}|8AVpblS WEa}lN3wpYNm^n_J7pH}|nLqY "L'gBiD(My *΅} 1]8O_p'犫dLُI0MnGuE?lE6~F:N ںb4-go&QU^;ɤW5i 7]4Qa|g[=(sO$[VkTg@+ZuTkבT~H>BK$FH̆DNLP_|*E5ٻ["&h4'\3>Zi TƺT٦x-`ijVw Kx,S&5M5(-~ 74FqAŧ,+oi11xlXWb6`?y5Մ|jx`ʕ "0 c6KMor_\='17\1VC`QI"&2cedcT#=P >,s裕,XFO|f.ްrr,IoyAzۗ5Al;+H4P;ݤ v3vsrb"ybt։%{'˜c#?%zYj.ox#AaeswD_v珏^f >L~ލ]w#Tc ־JvЪ:-]"<s \xbBdEqTEY:IH ry׋ԧb)}4El&ÞFfA1.l[ɛ,(J!Ϙd헒7y71ؿ:,^•6` uUi 19h/<,)#e[;ⰲ4]%40JSPby\$aW]$u3L* j LsB6[O_>3?-\ݳ@JvVPl@^yUt @A FVSBq: h7o" T&>8T'r1>ݹ,G8P->(K,izN1`{Jis,^YᴂSMslgߚEaE4Wp$jʬ׵R>C(nqsaep  YAj"LC&{-ysc@Z)ug11?yЪ=%xAeYM|ױr#rMшt1*@#m[szbj@+p"X%%DIrиe^+RWY'm^j:]ʄvd0TZbk絥<[%jc@DK2@. L8P2;фo&!B $U>\ c<̄yT4(msZyV0g RDS]3E):}t>hX,eWKѾ\+']I"MAI/㧥*]ȑ-uH2XK  *UyQUJ 6=`u9>z Kտ8"N\GmpE1(N"^*JtQm%gd2LVKZ@QRқ&dm9~^ tӶ` kB"qsL-_mZ7%E݋v]i*W[.U R`J#ܥ2)!s#պRаP6y]8{•Q^n+Pά77cpO lk?a2{qYv)'f.נtf*Km Z֥Ŗ@C$MQ|'VӁ N׳sݣŦx6OǜC=}&$a:yu H:qPS*BŻ 6ڠyBn}m^ʦd̑F'5ucsI)/X%J?nF8p:P?dW.;k(Qk֘(Gh φ)r$3i|ٜh\((iQ00M,7j:zUOPA@.j7)!,3;|zlA@yQ#DmdqHZ3m _؅CT9=})(H ;,5")gĨ;`{n@+Q9LtR[J7`?YLp1(d dTgG" HT4 GuP(^&:$?7yG>l6BSVvsjЇ!lg_;58\Cb`b!FeYnZ3i.0hU@raڱ6d[ړi~,4lF^ۧl>{կ#dh+7)raO28Z ^_3vbR'@r9 t<ݚ;&iCWZD4F(/,%x M4b`R XHy'痬^>[c}E ʿ@湌$WQ 'RP_dYHXz=8 j2HdnNǚl2c2[rnw>\Kw"UD b(u/vppzKDVW۳QXk[)|."]zC.8dZA}vWjHƐ2,m4]ñtҺ :ɟN# p0 Q.\=IáLwN^2"MRʱG憴%q$ VT@hf~%}>P̍[臢}.姅7(="I\_,Dމ'7{_|38®5ewOx]o2}1Ob!s w&5w yMp%m}/SS ]tvBrrx?QD+':頻YOk5nDQhpD\`7n\FaDHyqz e0[r ȰT:>wOQؘj/~ &(g ̔,HU!ja# sXew>M&&*_^#'_Ȏ  ,o;1H-W+е-OiIo_\?!#un >нrM8c^Y0e<& 6xjEyJ1(|8:#֚GC\a;&Ymtm!uq_h,lZ׊s6Рc+âDӶe" H30 yD{8JiG\֐ۺFm:wiLȥݬ7D_+0cx!:-9dJ"(<KCD|!.cV3x.~UpIAsIN ?e/!̺JG47S ~%}NC_3eɧ9(B쪣E"0xÊ^)ώZXB -ԥ =䍑?| O3F9vo$;%eûkC^BJOgp JYjbҁ]W]UAenPbip m1Jl5J ܞl:3 S [4{cl F gIQ~rD9A,uYm 2}C cM5a;"[|3K3[!xܜͳU.9k}'Ϊۦ)v@ G$h@FWh [0.j.Mv*0gWn/WuW$4p{ em'!#?ҩ3d^L^u5>QUzPLDXHq,xs# Io6y!g"{;pR;T2AМ)*S6=^BuUgt1_9pf7s˨Sc/hPIH Q svW?m.@GyE}ꐬ)6Μ_d)>g:qw t?T~MCx]fYW|-sn3 2]×(M]xze+VͦHz?wBqi\5#35CǦM^U5`4j8Q;iai}' /nΞ-$*f۽D<~+0a3&v7M0x+׶eĝɘ 5F c H8^Q5ȬvR\x@V]-k tt{Fǥv-LQμ\F[>YIIT0;g^[yn` )dzzQx,OAZؙ[FL4(GEPR,l_sݻbm?Qh:5DM̡ ͖_BMg>_Y#=Zjsds[wA(<ԻU QGt2 ϼ G&~ :x `sK׊1HJ73.'ly/q@5 O҉i'o&R5)+0oT-yl)j[~><,!  ^ua.dcSsHWjx *u53)S\ 4?%} tGzcpl*ԟ?EI!5"L:+Tɗ.qR_B4=:g¾e~t e@UyK#sWq:e[:tٲ񃌝jzZ@@TQ}1VS%*eD&,O}PiMI5B\ߒӐHWpX/Mx$l.Z2*+{E{rT jFejRC 'gʝd}$T7B n{UL6Џ3fA8 C)˨TWs[fjƠM ek]g:j}!]1?^Fel33֯)`p$3F`D\~rt\7[}T E\7 :I;'0Grx9Yuxo|=Ū#ĽYGCG" Q*Īpb DQ)Ǿq#2w*$y%Rps#j/xgѯ\d2 Am9kh2(5Ff6%5@6;FE繣ØdY/j]&gBHQ%A9*)m7ɇ&j'c=2ƁǔxF{RءyPY |m g|gغT\5B$/+퐇~JV^|Faδ*UFs@B'~b~s,Q@!mE5v5}~]@X8G}!_?R#V0:G0v/@N* SɳYo3nrQar#wDOh\RKVP2jMgM{YAč+ vU|#Tp Ҧ \/MSg }8+$f~K1nvO˗w"8Y3P[DtLg Nul"Nm$,>ilzrsbȑ\dNAl0b?<Wsùv"ib'-%5H~HZ\UNf̭~"Ow3l$*fń%* ryn,d{xĸ@oEtīEW[ʞmN틍af0G(\z+[~E^R䍋5F|%4b|ReJ~(/U,\e]ĬlE"I.xy/K؆n !)31@pOof EE^#OD]ԣ> !Ķ"jB{c$=wl\ o$ͮ5.V"5x! ĘdؿQy%w_#ʹ"msLZo3w:=J[.]f&(ʗ6$kvĆ<ܐ\ˮ :`2iDaD|ls^b0MT$ VJ/݅aPØ SVh@Pq>D,c@#v',Mн_: q_MІ} `tPQQk}e \CS=sy^)C) 3PI 7dH-'rvAA<+ YN!T1sGqk _E}brI`?d&m/N(M礁JnU3P1ͫP{qA9hߝYzCoY!.W6}VHTKƹt{+ߚtbFZd_.h db}'d+D<3Hz rtexcwa.o%;8>ٍ<^Ʉy-.֓LyifEt@ f"HjG"P(g;v{{ٽ|*8UF!= UAxSxiK(n<\e,&+>)2b3\1F&AU4A,bƱwAT֑vL*m4ǨzR a@ 6$ssN5 2z3t\㲦AB\_01qכ^9WŔ*n=b'|#K|U뿁SL2ikG}g0Ӈh)l|5k||԰Egw W{ = zߪLj,ۺjxjEG%TK w`0bn/)ϖPN`%ߣT}Dʔ)]> AcʺH38wM=ՔvjțߤtE8Dv ګ+lBɕV|L&&btd[rCB&0_{7VlsKV&&ءXl}-^VnNگZ0=9+7ٯT"0m=@I5apU{ěvBi%~78%U*m /cZgIօSwii56zz\)/5ϗN/zX#oɦep[Sd]X793KS O┢iBILMς]0'n N}c}o(E}pΗC| 1`D[+r PN޵84% ($*ΝTrbquZ0tvZJSB"2A6h2cf5$ 6'IcP+bkFpUs"]&? 8'ue`9q?BSvŸfܳ-ihd%Ӄ# `Z )QH.<N"f36Wl^;;V$Umڙ @kɯ4 NuU2Ml\o;&~i9HJA*MEk(u_O*i6 \?ϸSXqYQ⻮?MGXJ$2g3;c@paj+XF䮼mP&;4,A+ۅ3$vc\,QM!Cnb;,W^<3-3Oxvxg$fXJH6FokJ*f,٤Ђ7^5 8QrFXL\jvlMg2m|o:Uh#deyo;:ji|)@EsݙsKXw KҸP@ݥMMq;pFOU{47xgQ ڳÖ$Rͩmz0u_=.5iLS$@:c;)4wi`Qaؿԙh&sN 5]&fakcG3T_Q gQ~&`ALSgJ^_C˅նe20%mcIoiŀR˜ 7wB|bw.Jrq/zdՊ!8+XU@㹃WT\e z k5UOW g `d0Oc{!OR&WCHӴAbáb_.IJ`UI>6ctRq,ޮ_:'v3 P\71J17!%fVhX"उ& Mdu XJIn'N16"5֭u"pOʠF(,'E9Ө'b=K8]_ )I{j`~Qϼ Q3+9W0E“(sH"8IzxCRCO QG>'3=erNQ^t⫯(=)Lcڬ%a gP$4CCU֑R|LSqRZ-!'71~Q"W m%jYw[i{&V@eas5o3 Nu9reP_{veEɶ?'C1u~wBUbAw<ɵ|krbn2SYw&v90Cw)Q]Y(c׀XNQx֞$JzGWEEFf^v6].#h]bdb`q02Ⱦ ɧ !S>ZIQyjH=/:'{0)gfDTǾqM#ej?&.ݑ 􆊸=&gGNz4)Vmџ8_-R'U&Qyl@{-.x7eNd\9"M!yv[[ǘ IAU5P)"^ɽz"B D=|,䖇OD:[eپgAŠd>:"FXP\>~틃AQh8)>jh:]q ޿87}@tPb[j2^$ٮJBx-slߔ~A~Y\٥]X͚d @Ie?25ύ3PA4`iZpQ$^tZgca8fxͦ҂0 Wy}2mdc^hT2 zSU+/'SИ7)U iC&3bRDGw'\Q,=}&SX7^㏞ ac; >:p>a.x,{~MO#~Ū䆊O>Ұ/-(.I,20ZՊq%5T}%P iР? LPGe`e|nfRW;wj5 S$Niq/z\ ’n]j@vլc_[7wV?JZB" *\ G$~8j>VZa=\ љސ-U}땝p\ٸ!AENӁp u{Z݁̉"S%b֧ ) z)/sj6LJta@@$;TU3_cs֤HW@I'ot%k6|Asĥp@adu8-rDB!.EByi0`8& -dn3brQ3X[H.Nքa0$Q8Gm(ð"xȾ͖2?8Ž#"T] 8)V4 7bS7#&k@e__>qVp[&pۢM=M{ :BWRM L^ .pWffrq 4$5L6.-ź @ o MZI[=4zwlg*4A^rt@wC{QY$W%M} ݧEI(MTLsu;0*["׵3I¹`XE,NheigiWADá0Zm䍵xA~Wa_ gJDZb=5P[KD!ջY ǔ1fب!c%G4;~;qYzY+㙓5-8W?`3{] o ܢ]q%ĥӨسZs, )+wnоk664), 﫸Ϟ2h~-:F dޚ=nHmݹ(muq*Js4 @JrD ylkXQqօ9:[ dI+*KHRހg棃O\; ;P NYNc:`Ra) MgA0Me}y'|:rzyv@bQĿ* 2 xT3*#CR;R9!hd8%)iw\&m1U޼n3[ Oҿ= _3D'IflI HPb"ApT:섨~,[X<cnM`x߿ Bmق$5GBO.4jh.)O틭e^}*2Z!Eb^?0g 'fo{Ffm+X5&hDGI=Nd3lϰ+ʤKo8[Б(*zHJ6imvϲQG+Iz"lOyHS\ 7BE"y2 ..QrNݒ-~n;]Ϳ /D=τ>)ا 4?} Z ɑSgjK !05FL K?~c"Qyn17oj*5Mlos ZZmR`IʼALYC(/J (ƣEʍZbEY&1>XʮIEDmcp?2/FbD(HJ[^S]S܈֑}o3"ۦs-ޟF 8" -ǪͶ0#_$$IR7wC3JދHM.y{ڤ81C*xpU ;ɯ_UD2%2QhI3泉|܎ 2+ :B(joQN= k@7r۹xF]s[7% nEsWLMd̫`~_z(ӀJAW4Wg^u'?laWPMNzK0`j$TZTgU瀲&;jsj]J`G-M-@H,ܥ_z}, Bo(*COOw5='%/VP~WjbI>fy!(<Ů ~xHkWM9YM YעCr~@KxYX;d*Q*ՙ)4l͛Bߎb/z`q#ǡȼG<}nn@H]"m˾j|%4 y违i)V9; :k-=jDy8F T-* MI5=^X|E690v<ۅ+oA䥗H#vh ikqۗ`,z+wuߍ\F*b$fHXoiA'#j԰#-0 "nǃLܰzpg8! A?AP:ɪJf>H3zFE#f<@=^Lrd?OCع+y94$:us}fP'WR.܈z5K蜶5B p^+Rj;dXkW@YeĔ^Q%Ka("sQwQF!²IT"~U5q z`&|/ K>o gÍ^28r7wf#HHOBxyhAŔcK,@b;.2ZS~4lƿ 7mS@JRau(vٟed>!q(p3A,><^+UrF*gj6= 8_+Ęjkgͦ[@G+pHЕ<D€X!&WkA%7sK63dX09+o8x~~HE!mɬkrAamQD[~~,o;0~ d*Nd ͝"U|-Zu6h"N[?Cvҟ;4A#l WR&)2wn Kb&JĐ:DkSJq&#CkCdb=oXEfLql'K$#HwNu눒3 dcKIm!<1u7ľ4Ȃw۠~+"ed\D˻ Y-DdjǬh"uG=O,N>+GDW41!)s\n?TFE4nFK>7io")#j^|9Tdqk} ڼ`X*"L;P,P0y=kހB%e6D⦀8*.hIcQ{x~oˆ]@]?8>Pgb0'Vz\-h#~{mKt-/=wHI##>bRԊkҗ/?-ue֍ 鸋]člCP9ZNμᱺtc_q(в5(dP΂ ':-yHX.KME䥢sXk>fpN4sD5/K:6 L3koZTAs&牐+VRJLSy< ;/?XmL&z}%:_&,ƔUt?Qj7% dyTVh\DD?bkrs fL )%w+={n/_m+*F|M[˪oGl#ff;>a B%9.뽓PP/J Wg5Iv*iY haNY+'GVl??%s*Cdͩs{;f 8hiniDņԎHnYsOA6Hsy|o >_3֏yI(L [B$#7eT Ќ)[$\(zQОK)a2[V'NC hsXrİ@E)4iC* 5f~ Q4x gmmɢ9KPw&B{5;8mxR5SS;J|RcoJdFGv/i|QHH>شҢOq@r"9IHҮMBn+&얟-gmA_w)QR_r0UJR z>)?&l=%M~@dP"F(,x&%3m'MET4SE[uc8քnuOK.sHZ!wkWf7^"[TD:,mWIARm7M5?6:s%y~qݓ5#:)+N_ Go/ʻd =q>B1srҀGhi{P3Wz|KU*߇JQ;o)DQJ4f^zNw>1ԛUlwoe@*{oB[ǘ/̊Oq:30}"TlB.<_+u()n ¸+!USfFc \7~FO@F*&JA7`8o9]U99q}}16;J4%Tiژ9&23B5%{nגO#f}eX!kh~r'#iJi۟dX/]e_`5Hu42"+6ߑLZ4roת\&fE`upVd/6~ x'@.;f=Թ6Kr`S_p Fl}_C A,9{wǺJlR1j2+q, $ P/C @-ݳ48%9w~3ƋCeU$E#B%^L7 4nW zf/:Qt{NMB0n,">mʌvO2_Yybõ/6(q!#Mk/lz4*KO9>=YwrJN/U}EnqZMi.D|* bx` V엻%iwBv{MaSe YYE|iPNq$]5 3qJ,m@¯RhZޯ\3cyx7yոzS~XG#iE%4 `^Ͱk);6'UO5vn_CR%!ŋl9h!o-N X<85T ަapĻ!:;|gԯ:9Qp$:M(>mbsy!H>*}TT?ZGZOcuFRU$rQA/?k<ҿɣ.ew%7 TMJы%2c#"@$ zSExJT`B1ld٢,BYPk1W,t*}/4ZаBs2!]-$ ik`ǭl~>$%fOk!zrZ&h`+ {>PzCN&Zp'}enĦ`6憟.Ng^iyArFWZ_\@pwu~_\>?"i 6 h^txI~NXba=n4o:HQi"-HznO =q( n-rr:BE }zWaU*x1^3Vk- <^-էwwb K%?;s(/U;S`ƃ |j0X;U>s}θ!@xE7yp(PhMZFNGA$\UTuQvsaN{zN$6:te664.? z_|uWN#p@|lsd)Y _ELy‘}U)mW}J I"Ѽ*&L2f^ԂqqX)`h文Rݟ9.m[NΡnL僆?"Dkz%ӟ7GVwh%=;-ԚϣDi>xr>[ lIר/k9B#J$wJܼuv7(J%%u 740K/2dNKfre I gDCf~U(‚[ ~BG>{7OUpaQJ}ъ"D]rgp`0CB5fw'el WiVFMnZf  bsWhH>|x!1iC=G9F͔kL<}ɍʔi^Ƈ!;-DP^:$Z^y?1XsYW21~[, ?ͤ2ʀLkC[N~`g1N ΍cGR;CF}G.h^Z,mξBGDTNPAI"aPawV`ɪ5-t3l 7~J3Zx6,s$qO0:;y[ݜ9l-VFD> Y@RO"u37AR`ρ͞ A~ x>-΄;8 vV+B4U{r5 1;۾^ YH8J8x r`\h)14e[+Ŕvݣ6>K)ޝ_[|Yb%1ʮ%6fS t^avsmM]ԴLoM(WI|gzʉpqabo$i򹰝% 1اZ=KHcnZ`?ʸCxI|*:3h\h?? ͻ{qO~ёP=H RqwԪN0rvN : 8I/ST%@ߛCB]R0DX-{en˳V:GI'+q}U ;4bEu,=^Y Ó@EgGR0XѺPpY{bk6_XQ'\ 5Qj MFQ$>jyGmyP:&PaӐ>.+*/vvkH]HmW$U-/84߲)mʒ_kdClWy{`7Tli]X*\M#&KlnMiζOVņ#֞jӨ6?7":;D$+GK|ђۢ&)/LBOdi8+w# *^i14xR59Wm?B$^5;-[9ckկ- $xcX$VOS_WM]X0@f\?WE)_6BG!1篲èXBHs*=yޢG-2>V6n>f0hH.WaEvTgI@LNb6XS|DQRM0.$^ҍNO#n}Of2It]бOcP)C~V2EaQmuJQ|>uPV)'d*xz뤕BjS7BLS52x|fZ 7Sd&ϕR>Zb2Š-sW( r)*[,n&iy`{/(Z!\3|4kD2D,E!pX1[A3&ulfXO0ퟚH'-{P,% -H`&anTE$ۈ"ul Her#c[/-涞 ?Z /\Jl#(U5HJ(!k@;o2gN-DɌV'NR>Z SYyvjdD迊-\86󀑢|!=K[ g`%bl7c8+b9B|"eGոAK.8ۙX&QReX =Ӆ;嫋˸]W$@k#wv;OYF:WeoG!W[4CM$3J7ރyc3yb[~碆IB+%!eJbLWuW"79hcy H!,= l8#} SρipFv^r%LM*X)[e*Kk% +ʐl=xW*繐@Pܘ@0, ۴,ݐG¹q;,J V>Mqk]_~B! ݨMc_٭asnMeխ~|DxaQ,*V13 (m)+FbN+{J`Y:ڧӧx@Y*"3eC̿sI=msVZkr|4Kl.oށeº}93奇tc+ݬ? =/'xY+X2Qc4p.U_j]ښ$80q-QUʥ#9QTdO-$8& >.]OrR$!vI+a|+r} /$ԮA("52foK5^e w[*nQT}A\j_8(i)?5Hn%-p\rI#͹y5r/$XUPԻ+NV+|YxN5 Y!]w5@xڵP I _)A6لAqwHj]/ v\E?F3#_*@ /' 9h#"mEqmQFI^[Cyynյ O3Նf,nr[\7^?ʍn܊ x׾s!G@󚶬Vła+Ta}vjvX<6Nc{IQk|[I2~'AJB=H;=mS',xac16xbAFX#9uĵ6OJ *a$1O؟8ϒ~+0|SS"6`w>r!'8L Vmѹ>Q& Z ;y&5Px ?gƒ J'# 65~enxZZvD9m)\؃ߎgay#t)(?1yONTu~XZn*O"QX@O0u$^/LYp\94wr|3"4UJ6y+[⇸O]?̔ljȨL FU9KӬjdX. CVi/ 8EtG}toǁ=H𔉂1'˜p,PsH2ٞZ^#}`=+g(3>Qn"Ͼ&a2_KʝyZ]- d*M;=Iy>v Bh{ {>/IZDzj_yE2H/^?nDȱmDЂLt 3gLZlFKP2+aeE\{Db,P US-)EwRFq|oBy5&C̃f"W/}m`ZݔXMCXIHÖ]k@vCojKxNmϪFZXo z j%;=Ør,>T ZltEc N7x3GhQ yUŸ=A8` xߔp!L#m#g$'wwF{Ȗ ,Ϥ(F^e-o6e;pꪍHތ%7=O[on~0/AO'7mT2M[|z~u>,M4?; .'nJM=ZC妀H .5\sÇ5oylہJůcOoU4YdCleqxbhVkY4%k7.ւQ 3Ғ=_O3mWI˹E=h:DnT8eæoii bw/ kɜ~1}N?]C9w'Ce:Ao!R2 X=JJa<85AQ PV #q.._C"݆U^/C΢VQW*Kz-(zC N̈́9uwχ%aWpƦƸ.iA7f BY1D EjyTWWFph>O۴rxUMY a3 jBʨeRFpS`ÐɴTT}Fw9D' @[[/ʍn]a蛘xUW_x1Inso>u}{YfYieOs߯xݑ&]m ag4ixv7Ϗ+v@lMXo}t&$&]~ L:~7O>c, I7\)bpXl[jzXu b>,x{O@2 v{?ޤM,Bkygcu^ZO˰:7i Y q0+=~L U 歵̐g_/qi,P h 5 ik}3D!BY7jclMu[x4 qqG&T`cr+(tmtlB`tht¹HfD @+oK5dǴ+(,0Z痹5]AA^[D&@'(t_Af.-^@9,7<_g|Pm},'-Ρ'`TSM~#'ZCI# us3//j3u4-T} W`ŝ^&ǜ0{+Li$qŅ2?Nm hH\$ z;q%F;ߦj/'x(.<07"čBp/ I84M\KtQY~Bb!(%2\ KlRfmCHu!@(>*GXPPjc#o@C54l]jbN{&qBk[ࣶUԌ>qv02VX mhL>o0Я9  L:P  `i߸& 'tUU׉b,=K~>V+v]>3PoƳ{9? ]ٿzQx"%ծ&s]DR",zF&J"G؛ fpGŹs!c`W)$lOY-#q6ZPlJ~ ɏ4]?b*l‹m%䒜̞oR+[!^2V߃q;TK%0Ddw',^ES(Q|IcLۈ(K'Jʶ`^ ;TlgT~QZ`!jcKG5IhtYL,x[D:9 %KW>$~AԚQ]@}%is9۾L٬L - r`>A#5IzHjA iA\MS/ bߋd*1rw@]Y3WPzlS+4%Xʹ3syNp$|]^1cN=.:ɿ?Dx (-*Qi9q3gF;rQ }5 vj&嗑Qd=T,3F6761%@M**m \gs$,Omqn^O&ߤ,%sP`5,̿+*_N-e&u\W{{+9Nڳm ]{):\o^* !ht[j#)+r\#Ah)FʩWX|Wr^ =өЅNqn;O"0P(Xa@B͙QOLuE+|7(AkeüOHC-vxsosA-*I O9(Yf:{ݴlWMK\Ap|vwaoF60j(J^.ї-W5y1~Y@G. S| ~#pS3%qN˸3|Ӹ(M ϓO" d5)wyV'T^<٢{eEXlYR{9: Qab.%{'SP2cb8)hs:A?hٰSƒ9 鸪ߖETD:2A ʸP0ly}Dj.(~~m0#mf72xr҆=do',)d\Af䒈9gF<%7m{6FSގ-3b|F!( g=qj@Y/TɸZ#)>VNz_1!MI ݾIUbo\zҍ J0IET=Ec"}u?]Uf'>LO0'Q5NF|3gZ^Òe*25Άnwœ'%n..hw[='LBR.oR;=/{"7jȷyܢ!;:*yp.fQ)Un,'ߔ[&VjߌNjqMŌm9e}zuG"@ D7aui_]ѪH0%?M#.0x-v4DFDtnݎ- Ċ}wP)4?r!1+乧Po2޴bp>bU]I6%YzF5RfWd`?'iPwn19G>m)}36xp=>uCRE wk%c9]{~H땸@^Ή{'pOe~ \ࣥ)Aj^=4̛{׷PrV]{M|F]Գ3ϔ`He6Yo%y$ yɳI<)O\C#\L>T48y?Ḙݴ _$ ¼$xӐ /frS@i-b%l\\Τ-YqjQ/N8 Tx@%LC1$n /el?'4%snWFT*s ac.~Dju}:G%côʠtଞ:5ȺylؚF)S:])Aϙ,@K1.%cw| 1 |4%k(t/2Nb`1IS%oSaeSZ"eԳJz^=LLɂѿ\FNdNNCuv'JwvB:n] ؍%g\2//%wjšRhF>nE6\s8PĠOPf?@%UG4=SˎR-~>Z,j6LĉP1>2 K&&[/~F3B UX*]('W#e%&h@pD ^;|SKM kyѾ( Y^5(/M&5 49lL^QS6 to6a|8dcZuxX 2v \ȝ!,X~2'wR(ګZ>ϴפ1lpdGF$/ _rkHYsTfo]MS /(O%^ |Pzc%{J ^X~(r?17`Bqw`Ck]V*B(JB*le qvE9fݢv(&M`lBN=e qaއBKt('V(5N^HځLs:F/6WyL&d]&D2 ԮPC~|+F igP٥I>`IK0λѨcez_w"=RM%J=z|G"sҳGqi|v&6PO-bH#,J+犂!J麸5J/v#l>•?퍑0ivT?ן=gYm㭈W%lg4nE6[@thV878CDz[VQEH,g$Ԃ'k0Q}?Z,q# qX7a3Q2qяf)+]l}>q|Ru֛MfVnr54EDxIk\PM/u")u[5 ldTI+K .T6vu(1W;E=*>Źy5V ;ɟ}ڭ_%=5bEU]ܟ 00!7z5@E$OO44+-DN\^1%D'QJvLN6VUמHJ^3ŷZgjiEsTtM8;܏|DrxWM5e[(.^D}!o$F졷>Qyk3i$REP/sA}FyYҷ W *wH,H_ Yh$A0JN}hNP@Xq5HxXqU<0jq*j Cu}@.ޔ5j[й1;XN L!YBxgJS%jevF{6A|ޥv'&WUI8Ejh!z)Z^=E$6zwOˆ!Xg CϠI;/V %jKERb:eJ0 !8oFQҞ'/F߄.f Μ1'߈?بZ| Pjqf{X.H8]TѪ`mQ&5z]8  ,~%ywSM C>|i+a-'A6xgnv?O_ƹWTC3ȁ"+՞,T" 7pW<5ycEr A1trOyhxhm8lyfxKqh3Yǀn@Щ.YYopXD4([RoR, K#ߐ"v=NHj/&? #Ɔ{y]c 2 վ x_[VxzF8T˚Q%jRVZ2ueLQd]5fh!):}dj?D33"lD&/j'~9 y ^jCFff2xfuL""eoCmbq b9SƱ[QDg;'谤C #Zf&vBN}7dy&MōXDb,7lssZ~sw-p,~aFA!T@'ȿMg@Dn2jV6=4[;Kzkxj~u062lScN9nLUD&p,w& npThdb|%"/D 58`E =Gŧ>q6RsS*Vą%pf͌AwX|M)i1EFxm1NOaZDJ-W3_qppBgg%XfvBB4+ѵO:_h { $ ߧ1EZ@bHTg'Zgh 242W399J`fEqjiN, Ԁ ^x_@ `Y$Ί׻K2P/PBD5`B߀>\W߄ *[輡xGI>`VzRN[.WRҚBlKBR!'kQA;X1(w0Q&A"O;JA vc&-Y> 9[b'* ]nk,V$[$h`dO7JgG: pϧ%8)a㍄BNKTw>VnP')wL=sw{eЩakܳLnL**b:$@&!Ҫa?ŧCg";gh豦qiZJxJ+ɚ0^mH4UVR<3tNom@ⱈݎo Ll10+U(~"ա[ :4L~QP&[p=,=k%X 0ՌQP!vFPi6 *_)Kyƿ3m*0Cը7$h{g%Bx!XUɶ,X*@XC3K&% 4UgOuL Ipኚ=R@/~"$E5Vt OUco|٣<M!JW#3Litu@\˳؟ȼqW0oP;]<:s9Y&Do ^rK_Uj| 7LtnjM >b\hr(h:g[hJ tv|CT5vݶ{,9cfט97L'\_Zp4R)ެ%aI9kh9KTfOt]8H2OV-Nvu{&Ʈ|^Ckѩ0D5]*{,/f,MQ"|{:`ƚn .)_,yo)OI"L|uk#@5:KP/[p (#Z*F{.5\г ͒BOYEN{Z>o=F83|sX-O "4(zmT[TڦFAmG (B:yPT B}ȟF+mEYE}7g3\ `|MeT (fUg1ϑ=kOpIpYKSɎ4`p?,sS j E {THzwtܒ\mwf<սm-NS M$և6W_>g!G l/i+Lh3y>5n÷2>n>; -zfT X*\~,thmM9jH@5g;h/S ^3iOT[: }a AdI{'`nцGk_,?GBEPӽhk/|>=u h-ϪNT&U NWڳl @lAZ.3nQb Re]Ϭ{G2JG<N}RILFTq{+@4Hh15&aԷdln =CK;3'u̓mZ#U?[I xUBsNg= 1wLb#C.<rfzZVЀ%sE}?N'=\GلZ[cH⟽> C=#7BRx'!VL9!`O.͚z:2FTq"b&.\F"~bVT]'H j`[YDA ]*nqnIN Ii۵f:`F?OD6) /Cufn7&Ia$JML^FF[ݟ?!Av[Qr!i }HSVBnՒo]ŹNtꩁ_GISsmխzLte^3 Tq^:()K'NP V4Z7e6KM)pxt@5YNW^ϢDϫb]mR1&^q3AE=@r#,^W!*[ڔTʃU6 İxوľfhrQm{:ldCiB)Dt13 56VPU>UF3~ؕ KL {CX^Q6KI'ۏeA1mޔ:Ys-E@4ߥUO.엮[OACPhYNt:]ȆY|A%V W zO&kZ3pRX=}(=S~mˬ!a1I0[ lvUN.HqZ!Z'\m`l윎/iΆ]z=}*oyrDL_4J"K?M_r#U8ƍsفa8#G$}f%ي ]?dhx/ \dFb.48k)bmm0 =J|m(䜅Ŵ坶j g7~M1X%{Bp'pވکh?#`SMJmrq<cx}B* H=.e>F~%.wo_i98Q6{@f,>TeǾ(n{0-|bv4HrNka1\Ze/8mrVˀ:zurp͆ut2^̰9Z6HQ=d ]%D3Va mlmA`SG 8kѶ.N#Z?O5b2~|{,n44 <T#m_ıGFu` `t9Wdi2}Xр鷷>\ XϔްUx3hTj@b>qըk*#}[Z&Z]l\טJz'z%<_U4Ve}eV ޶S1şBf۴vlW_-mLCpT)든ӍU붼FI@e-y2/5Hh+$Th^^¾r,VNƽD<{];A}(2:O~v;>Z'ٞf3^^sy]K 9.q':q2CeY0$J2nAa=mގC s$҉vYn.޶뾹@J=J!5|b,9uڟ9L2~+waRrR@p|PGٷR ]\ƴ JRze-X_)c&c6?Èr>5*7W_v:aԎQ|s` k^U1|)o5>c;\x6fa?ox-e74_w[d"Z.\dM,[0rБB$2鮇dze^R{OBD\0| ,߀<^w)rvfC2ߺ [x'f0O> 8yW9XŜc.\*vǏWryHxO!497g67 !<a{ D= i#Ykņ8 ~j>cN?H ׭cJKE#O[b{: ʋ7U gv.8hNɮSJ>땪R^P,NmZy=;К<i(RjOQЩCkbS/]' ;!$-$)lH ɺKEdZB8t&tm~jl԰~懸%wumMnGzW|t$j9udd 'GNA{ LUM r z$&M3)`$t?2eرאk8alQIk͍ћJ&^69b5O~. 'h':ft)_J5ƦPl D @g\4"dNE TP1MЉo3O#[HXzo[94n,1.|>m19'wWI_f%Ap4%;@qZf"h׳3( {HRc5A]quEZͱd俄`|߯ iN(y6J lp0EImE H4tݜ47LQdz<w ;V=7ˏ&TD7ColX 9'h%{ 8u*xplzQaX߳^9‚DxZBqKMO[lgiK_~ tZgRw)bgo;җ 꼗N00 lb ħ)!6\Dj@P+dQ]-L`jňjJ4R1Ri7t6bg[Ugעs(lνwg;V v(}jC:7*N-A +r=Y !0S)%D}.\^3ٸE^U%2hJTHQ{8d4R\/W[Z mpOp[s {C<@ǽ& SwC:(76Uvf"uJ`2Ҩ"C,:FY|1s P\o`ZD61'4ͨ/_-i6dt|h;ޞXA})epY:ggNv@mɌO6UT̸:0S-.5A˙:L\zԤln9QO7@;!:kլַv>M4KY]@}Ҍ3 ۂʔ%+J?=/d[*VЙ~RajհEmRi_'r`drPYs7)#@byP)a.ҸСA NWZ#$L&\0\ngt@OV\[uY{qqthQy`ȍj΢+XU{Z-5$\H9}GX*xLP1R!^pl'kTo¢CC !;|#I<>@OB+ПF }ԍ{D37BWOʹ>!+FI0Dx #Ոvanw諊zR7ꊲqX?!@W}?lJzXE }+cfAyTx,h5d~DNt5YP.?x,l1q3DTA[Tj.m!1wįՇNSM28IDwP!7Ȕ½j  ~HhhQCP>9֘uG@r$%T[1Me&s~V{D&1?ZLYm;߉5V[szAk,'\[&833|k#DNB%}Xx#M0'NpgR@+H&p#̢N<ͮW(]$he~p`ӱ'SMmXGc(GMwA7}"MFZ5R<61po.`|J5YS+B `5 =O?lE\ݤI G,d0vvE@]{fz~}tlʜpbJԎ^fV|>mC άn Y;Tf5H"y80s]{x苂qA%1XsJ~侲n=^4F6ꏚ" +TG$)耪mA\W_l{]Ul5d%#.~~1| Fվ8S.kq<!k۬0\ l`Gh7(v?[TAHY-cgko (r.H[ 1Vx)Ê!-w4"79q9MXA,ͣ 1~t6uU k{ [E!ZMoq:4hl SJ80͕ Hk ;,iL.m#-rDJe}>{BL$#+H&[9+I-n?W"k e]rS2zپܪfCb_˿@nIoFZ%QN8M. ,zqs|*pdS쉨 ~9M35݊ۗQ&=#}=?r 5 _pȟ |jW`v v}v E+ш I~I:oH}o [s[:.9N|&ua:4!ύ/8X˓ $Ĝ)əSӌ>k򡌊=Ę C KXY&`S0-zx?i(J$Z5SVy,ݫ?E;Nf~ {9O"ڛa#Ezr׭ƃHbA.rI=B0ݣ$θNv+'FG{׭-pB+mtLwggnNdN?|=l&5;~_Ի :_R S !X=q}*u/3%잸'Ad0WU8ɑ/}V s7ԩ+E^7qJ)V);vRߡŤ^/ET מzo1Cտst/Kk>$c{U@>87z$vi? Ì ^$O3O*g,a@`GwSZbP͎ E8Gi/-p4ΤkrثC5J˧^̏u&ꮐMPG?lt˖!I2hlâ3L8\{Bs~Z- B:PV=_M"U$r/L8[Khe9?i1;Dh%ST,b9dĸtu$ף,*TEyF@:*{@P~7%awQ4D\wy4 n *5x ղ$ 4M?mS/Uq躎{h ׿ݙȰBs*{aRnhcd9 p捯O?`Ì;PndƕMw7]TLIdȜDz~23XjW窻7~Hn0guHۏ/ ^,P/ yr ('A\p)m]^='pOV8 # N h760 )6K2Q%_xμ~L3 J; z8dtXL[uA@#K$prS<^//k'!2a7`^{4cz7zBTQa}Ij^!A˗YH!dB Ea p)j4ã)x/{h2F~FGC–d۸ڹ%i*yEۉ"X_?j$xOGn nu7P*ι,ԎY+4A2S)L Nz\z(BemܢRtЉzlN۽&S[cYѐNͣY1(A.[N5 &I:m*۳O&y1T}m|0À: en4=%/5,n{l6EJҀmxY75WQfI#WX| I?~8pWH x}OenqR\)^$}vߞ=‹~SWSj˲n9TrSު1pN'Uߣ'3]:w&< ͺ_ᙖO_FO- ߯n;; 4 E'ꎙ2g.2b;YP0Pj}O:+8Cl?.)hIQ@y7wm#In*]v}03_kXѺڕiD莋={~0.B֦e'(N1-żƎquXvX7śveC'c75"( he٧o/±YF>jIkd"972ht'wH s:x.g )=ߞlbg-p/J@+zA^Cf 3HzhBn™9 ƼjʑRwxᕓ?B}!%öy͇N.b ",r:[u8"oyP. far6?PHX̔mŢa\&n[@TmVZ k# ٌhO-[TC_R-V! vO'8\I6|$UO.›r!u"LT$L> ,0kO fN+ddW&QEʇwLVJP`goOިrHql|TDٖW 5XxNf3ZZ'Oފb^\ 3kP n]b&b ޯ;:*Z q|7 f ebu0hRK1jaGTC9}g7aJ*ϵ*=4WZ@  ҳmSʞ1Wk@Ͷxflae9"ElRv{}T[KzL(]^P)S%z- G* Q:]aQox! %*)&<k8+@oEsہw'̀ h˾Nؓͣdǃ1y.`n)6-"|?]b&ȅS\R{ D}cޣҮː@JL*F2\4]x][Zhv B~ yݶf.&uSe-`XG(#%Nт}CM%|;%|3sե ^zXBm6[fDd D \l# Kɿ7TLK۞t){[%5cdy w"jA4T}݁fWrq{ye(DŽESod~%-?[a8AIvRn 31^M!\Qػ+H">eĿp&C1BZDirs*H8 sUm 0mep Tc+2"=t+UgҊCoЩ-)@'DCh a;%eW P ZX;sͱkPѣ( ?>Y0شA[Kʶ_qDrIN6DeVoz%XK#<2r|P RBP't @Fi1&[>!hؑXUe)vs75Գҷ 8auT30II,)̣&ŊYŘx PӈO !pmt8[.j7*"hVF\{w-r3xf!@c"X5Y8Ge5@]1<TFz5&W M첳~_59ٲD!-y:‚z>`А'1IWҍID8 9u܎q53x[#m_b2;+5Udm:8Iq/[Tn.&9_PQλKnS?瞼S~}/[^!\'M鿟MdQ2;ϐ%Uj&4[6ފ7pfDFJ6?&EGgShpT֑۴ʓg PUKhpz2ËNۗ0Azl6`5 uWD_-c,RX5UrA>Y@(ڇXdOlJV>G\˿ x;pA{og\/or$ 5pn@hOU{NTyw7zSxngf~w2ErGBQ3Y(6d\'VtrBTRx.!(خyoX{k,An>q5ڨFr/+AmO\:-&=|I:*V+X/իIfA!*/D ?!7Aw}L3 MOOMh^4z=.>ڢEw#9Xq+@IB;d/g!mqup5c^k~f&ބFl ~@71L0_eSLR6vb\DjG%%wB۝SMe ~Y=uin,\+9Rp~mz,OiKqqX4#U^f%Y^rK 6xm7[* +*G>59qڊxT-njtA ]V Z-:V' $kNQá(BO{lۓ8g $꽼C#!Ņu%B&y57])kIN>lq.@J~D'_v?-[t~lm0" %"h|15m '$b8ժ̇;Co'>ųP,_'~}?:+ݵ1٘1u [BfD[vr-O;b{- 4I 8t_;t:㊨9ȓѲY?{@ ) bn5 BTqxߚ`ٯ(,U y 16'/oP4#8ak A=km)a #kppN2"7?i@vu5w8,R wA>!cL!7ݍgͭhYV }Ri]ܚ1H|LEEo*M-_ "@yPA۹>QtKl@YimDaljs`݂HƙF)+=O`tNhpݔI͕KM;6Լ!l/nUKzWJQrIs<ESqp$v7y] mӖ|sYߒ !M['Z~OB2LֆUqa⪋1C` m?ϿPJ!5Ύ\🀋ژv#ڦǚھm8L;o0NpH}m?!HyJԆA8_;܁6n{T9,(qn$˿1$)Ֆ",6 &rOl)SŤ4S8(L{LLsġz&e= jP0)^>S޻?wM5Gv'߼&.$KG-faԼ S{`3ѓCJ3*o3Gy jC!1w?o4=dYQ0e鞏/q2ߑ|t d&TawT.TBZ+@dp `ڮ_G8TVoʠ:e)Ds:x8-_L嘏Y^䃰g䲲 .~ U)V]Mp9WԮs+i;xtE[2n">~T]$1 QT_05iu^lcu(("#ܯ +PBEqdDPjo7ׅnw8A+K6I_|I+xQKĦIwt"N#%s7T!Iw]P $|qI]K.f,H1y*Uj!*|oaW^epC&+p '&LQ$eq袜vsˎkhzӟNY [P.|ݰ.^4,0p0<46d2,G&B z(R @@XBi5/K|I/փ}}d4V97h( #e&qu#qâi/4z9AஈՐ zz[a]ugʃi3Hg4;1=WQtjwvNҗP^DKiRH 0Ldfɥ \Fwsp5r]% @QDc Bu*?YZ HMzb틣S Q&+oc$q"~3ikm|\$0 %k0;qϛ~@X'~!bLF@ cWlJgav -#b]u8/~k⃹I=CyBz)3uTѥU1//_S!oH ]HbD9^CE]*sM|W@̒*dHopCXXTJ;x,#netA܂Xiv*cѫb ? X^郷n2Nu3>٦mH\Oc1ٕubu<#{.6VR Z0A&߹AK bqNH&L6ܲ#^\Yb;zY]`Q6[\f0M-_Gu!{_𗩞o )ëҀ2 C6# 'f'P2S,6BzRt&ݫ|/18x瘢b s|f4~=!/pJy1]72)Bߋ#gQ(ꚶJE3l2\'DVPF? M?w|Ol<%gE ~Z(WFM)-V(8M2 uC0Xz*wC6U1 |~^`GdJvs1.k]G'6Ƚ43)(hqCBX'ǡ ԓLOuΎcaV:j.VJkl?Úq"LYAulw1$u[cgRfN>-Î 6Hd(ђfz5}3ѽY!cOFZNap\[3`׺;y50q( CTALK;0R] p[s* ]RYK)f{; 2w0PߏbCa k)q}[3~*Ngy5bM`}Wk3˧8=<.`}+~ &)z'ߡ7Юoe ?/ )"E ݣ^kˎͭ yn;^v?yL?EoA0 hF`ǒ<ys#bu'R0r'7 vhkkbK;ɲ쬑ޥP𠙶DȥK!4{:L]nVPW/x3K5Rl Ke .^T¶bh#V]}FtLyBȾ]lb2J%O0 ǕM3YUAPo 3/Q2)s? s<h7WбN`]a—  m畍V7}cTr;NqSb W]E9?Y˦޸G@-\*"o۵* cCHUduɩJoӫ#`m1K+ԟ$+3CͲB)Ca A6TKxXwq;ͪN$Yu`T,AU_8Hl-cHl*nfA\PPTF_-w'*,T'SrwkV+]P+!hR*\Q!7#kc= 2Q7?LXL͔CpnV)11?D%Iʯ`G죏Q6'C ?K.4EmѯTMջvCQ)d% 0cėیƖ~ LؿP’O3l&v'bl:j] DS'H\-!iap[2c'"SjA'%Rc}}̔K#<߼YZm,sb #0pA 0o:~^Iȕ9P&F^fzIVJSr&i'6FFm|wŠ # cԿŶUuQVM)W3mA|lqYKCL6=xYm'*K`xfOd[Ոmqny$[D(nc1yӬ m+zTe2~az=(h7@.LtΪK E*JYW_3%[>#1S8/Se A@)3=B`r(^f6Pi3zHDwJ ?8F}Kg4 ]eelcf1aPcr:TghIF3X\aR\z _@[1 C`ף!tKVY8m&޲=g҄qx$;ky:/  Htu>=>bP(3̽.zҥYʫӯ) J0cB?63S.JYmW35ֆŧ?cݨLMDgJ+u^m4gd3vCSz D;< N4(?YrPO!Y뿖 4R( \@ߊ4 aAԖS><O=vVRK!?*ztT >-=͠XFv!}by'WO!)7бnÞ]NPcC&5oɊ`?JRUo) '{K;HLam聙$RLzғW]֕, tH=]2Z/!t#`JY8L@2;s9bL<=HzOjgw2֠oOg~Kgd& S1%3TX%N;-Q%`2v3W V КdQ|@HM# [4o0ֱPh>-b 3ٔZPKՄ4`r!жwCrBG:HH8Xt^e6mMSe]vML6ksi@Sd*}`oO|mN1xmg8}aȖS x N'T{Ŵ ԓ<rx^@xq#_Cf&U"d_UzZ^%"H$ksܫѮZO>I̓)oh6)0|ha37ӏ/I =Zf޶e Ƚۨ}tFxj$Z[,+ 3MC/k[+R_s3e. n 0ws_\g;ol˩b:o,OG"GY12ƻR`gnPS+KcEEӭP,,֩j('"k8e $`ym,&!I ptyHe%hVїgّ;eRVWTս Ks*4l&2Þ!+CvW]} ΛѸm a%DCTJސޡK+.p tؓH~ 2]O!EHBZL a[ 'L+/N>HML~Fy<>ȹ%H5>('-=ء |Ў}QwKOX\ZMUy%HZ,Y|ݻw,J0&֔޹=`+6BKR$|kt#J`pC Ǔ1V UO~# !:,CՄ#mNHR/ EfVyFw oU9`'<&t;l }w|my+#h(-BgTl ⛱4rQJy?:ZbJ[HHY-4^6b:U:K".?ͧ 8?׾p(;śS9da 1gZ18]Q͞pbn׏%O{bU$Jѥ@\laq(hqE)rHӬρ4ۊ(.%:oJhŒh7@|e- AȪBA}r͖lj]貳s0K&:yѐ.t x L:8xԊ֝Kui釫?Ut-Wjmk@ՇY VaRImq^*|H9v oYhv]Y3GJDa{B9N)GKɏgbRU4L^Spm2!XZ #>3Xg8=SȨmŻa0 4A5mG Ź^NS7i"hLNLWqF!i%UK5:hC;R7D,EI-vvj&5p5'ݰ0'9&Qu;?△jOÆcaua/\1fgp^i8(A%O(z#^i5;}9K4sxݼ$8 %lme?_E,!nU/$! fowI6({JVn.K_HjvG`yJJRtt=c:5ōMJ+ ^NSfم;hf-MtߌM(Ҫij~:i Ia ?!l˒7cd`.@wuLFT=jX~D\g>i#zg$0ϣpᄚ24 P9udL`yI(|S0"lbYxb ,3NڐBD4zC %. p32 H_/;D^TVGcȸ^7/+}hR[І4wL;==K,L! VknCvu6*lZ5bRʍ/W 90iͧ_ۏpXy$F(S#4j?j}}V$!8U5H!l~ D=:=> !-{l$38PNŀ`e4+YTm!+U4|3=F(Ͼ? f^]s oT{"&X|>+H2Ѽ 0ͅ M;dneEZōAאX2Ɏ)'}b)$ZƇ'^C+I ]Ge]v8t H)g@uε"h'~㖵=Vؾ1}=}Wsh!L*'$6vlCȲ<̚?b_^≡1)![̇iX s]YK-. Ιz[n蠾v 7UIpT4dh/S Guu)ibj0BGPkHɪc9%>:L7 #)Ax|q`.]VɻqI E?=F$Ilz"5 8smQӳ{ uW44<|K:&t}zM}윚>*1fM axq|$ѬߎܭCusګ5A>aPn)d].P[o}~>֯ji{g~~@L# ?|s5wݵ?LAλ>~M0E?aKU#^$8%k.SKP1BXfwȇ =YË́gxHsXoрY Q*v eBd۶ľȹ HA|񪼀3N 3j!3WN<'6Xsp_ מ. B zřjZᾈ)rKWYUة\iQSbF='A Lܘ4 D OU)Zסgw[xfe۸HCTC:kCʆ׃IHlwQiQ^0'V["}{ٺVS!TaG5wV8P#U[(=q _C :S A>+N)2)sh1n=&D=pEv|4ҳ3R G9RPGK]K0N͖l` ؛@4GvW@ZX${#Gɨ`&SޓNs>%Fv ->df$5l{M#4ٍ:@Lsۅ1^i*cnȍ3yU{k"4MP8V؅A5 LNu `Ep<`> "%>p5o3jى ]P7/3+Wi0UG$A0՞هGae 8:#E6$4EIV :(1+h%frlBʿYLtxÊ${z(=z*b01'ci`3ڮ^P(u]4: vo)ղK`+l H|>Fcbh.h,1`4^0}v `W;ٗ$hXuÂWvpc-2Pk}Nཚ [p[Not$P{ˉ?M\sazmj@`/ev젠@B(ޓţR^#gq'W@燮$ϋ3xsFYZ`mGK<:%Yl'ϋ[SI"Hw`Kw1+͆Gz4/_Ohi4)pY\]3=Pظjy,ؽu[nÑvtHݥvflR@_w(9s[ޭ"36Bd6?ŵxMz(,T~}%"GCG''DF=lk4̙啥jAy /[R S5q#&cdqm(N-* uw Q>$ fxRbڐ:Lc53,֓nN~Z$ 8/7kޭ @N%M9dcocw|uƟ@.T~xVh770 ,5$` HEykCM%%3 :څݡ** *;qV]&"~.؎!*O F ;wB>_C`m.@s ց (؀MqYQm:31r yC*C8; >X*Zy\lL[fN6h>.c^mE5e~@&ᆒ+> @)%8a@FHXjMT Yk ;J2,vUIdIO_[̣\9%r"@&}I/[m! ʁP4[=K&"դ2icdnrH>mg"lDz='L>q \oxLT՝0,oQUQ:\;C GίV^Aij)o'p} `7Ab?Jco6քAUެUg .EUg˩>E$Lzc|{촸AD1L3z-AXA`?nJ=$6 \=yxITȊbt}? ]9- vQ?|wwHbc?Y.'Kt0UL+)\0+;N_"/hIɹ; fFTz)` WHc\h/g/wr l v9BQ)A(;Kz4iJ/fJSNw,*8W]ӲG3\mG~ - 3>2Bš6Qh<2FV]c$QV!-Mt195g *$Lʬb$ZO'{~Ent:m.pSFlCm ӳz/3lΌ$&m2څn{x}{1B4d94}v 4 sUh{g7Qds+p8j نk~Bkd1 AC)ԇg=R|jV~Y@HUUрTJ'r<2߇goVm. fo(5i"kX^wtIV=2¶Sû\lLLgzY$8b> #*r %oFT1Y"t_Oղ(nJ-.BpDKqKPض4^)5F D$Œ3_OgQGK%{Y!\WwS8~a6*kNʼn^09RY)KQ2uU5s|l{˕9CeAyN4 iDEQ;,˯gDGRcdj~P&Kf )XqS[ Ra[݈[8XFIlt".ĵw:HCyt9mYhU)Zݒ`v/Oj¥mu˰8Ÿ±2e9ߋ1Q"Vښ_rl< &7=R>Sm{#!A܂']_WfE"PIo~&,/1/-ɮفi Knuvo׋i)\X*3H`V%鳯Hxqtn:5K%Q@3^cd31pE [s`ADS qہsBg<Ą.6tQ Y{! c7 7rm~"a✕ο\bC!*Vӿ%%'$#2ғ^NB)*^.ac *¶ƀF@XaY\ p &]9:hZR > gb,G;%o#1(l'Oa mMWKmԡA9x^rJC]xTB] NG>臺L#0֖o#a{L׫kw3[Qk\?ZH.MLa8")[}o@zM&{pڪx}4Pig:eÍN/؜8BSHQs*0rQ,oaލ!&aaEG\34A =0?L9[5OP ##%W $k _ F #.2&\:j tHzz;8 Vu3]"Z!?V#@$}b%%JkK"4 PH(GG{8<^s`$srX&.x7}B7Պ 77GtPp}fQ7UU)tgTg0k1P~@Mf(6jG[z+MtT#d&ÎWϋ*~P?(M)"tƕZ?g\,gLx𼉹œ1i aJz->mۼRoGb{`*xj Fێ{dޱ_@] x2󠙈::o ^v GI>lcxb|6Atn5 &12(JoBKXY[f= oHTjuC=fDm"rN=ǽf2X;QCRhAh ˓KxL@낺n\\,p9p} ^7|Z#֝i9Hab[E +.RԣdHLԼK_  VԽ%آYj),@e'۷U4ƘvZ Ks2zpN\+UxJc^l̾ Lɾ>y.%S 2n 8y١{NKv Fj#„OfF:Mm>&Nz BUK]rY{$#w.R|I *٧r$^lB 6!1`p,&JΔVE(?oauɞB>Ѽ*::}St)Zaxq2V}356!q`~lm&cB0?WTdwlc_O([g(i@mwql xBZu4,p.F%R˛p09v4HQ !D jlUtBjN? dJҋDz^hq_QwuT=#t *"t.Y0{#ϙړ_?p3Ÿ{>73 ֛B#1x{M+yPZ`_z+&@} J('@[@X ~FK,t徐Pijf n.[Jԕ# O+ZTP6N7IMxth6cз> Y64m뮼7!H* eiU:!VspS܌ZVFmQ:~6e}w+vF>Gm ]J]4\V?鄠Z$=d!//%5q1S UPDV/emü*v֝X0RH~* d["N|Pab>i11.hl4ʉu Ex]A%2V 3 jz5PhV6o)^kƁ"G 幫܁fC>˟ BrV"E&'w@Q lb& ڏHd3INޏj M/"9*֪N ӓ1]o|]A jEA)@UUF ?Ť퇮s[O|F,?0m*χ`{TXƿZ60Z2*CIce=v'ƽTB)cSۖ7ojC;Gl[2G3d^z- eMZHHqe lwZ ĵjQ1Olb'Vc2q]WRQJD0Mq1Τve}iGŀ 芫 T~23^g8Bɷߛ5}W@(# |$m.,fy>8}iKXB6hȤ{w*?{1*쀝G1Xr:nJ8Тt 2@K_mU^.Kd8_{]wֶB nwD ќJ쮶gŽD4:Y̢~Vc%\ mM"Uk{#4DxZ0Sebx8#b#Dx-"e"h?%£dAΘ9@XcjHg_B.u~K0S![8”ddG`3\ ̧>1[21E}D:0{ ዌޚC2LU1ڡp[ sJW8.ÐD|d,ňgmek?lL\G>/'=9St 1Be苧j{V"Glg}\ < |8YJ=֯Lq_/ "hF;4޼XWDaA/EzRyms~:SJ4 gNlOetƎ߭}%lt犌]Y/ .jFvg撂..bVs+ gUXmy4IׅT4l}QȀƒ[D䏳9b]۽?Cq FWM; ڏ9Y*mk684nCCngd'AV\V9mx(85;KIF꾠WQ.aݦSk\X60(OIHuʱw~s:ж{7a5 55n[<>RQ87Sc%JSv6G 7JIo!͑Oƶ٩*m/:ĠR3kρU貽G-3[Йp9o#5׷Q__ogpF".ALRE/Hm6ŜWxsl ?6Ae?H7b45h3!W¨7dZnD=p׷vFgM;;Rq0kX?CM; lɥbx.\8&HiJ!0")H@Du _;.1}CIva &ULz3$qTt7ӄqxHv8(G˲&bZ`"IBTE D$_"FN-SԸhoy~ 7yx.VrJoj[`˾&!|fx7En4qdgu'wp^;Xl!>V?5]( BW$+(Wy|R(WQ]lr=+E!0A?c)] #'e!!P_MV+#;v̦  eQvPM:;JE\1ay!+t< H:ICN,3XfSEܛsZ j&HM$Ǹu}ҩWU+=1̤ҟEd 6NZb{]vYpjaa_btVͦՄLŽ<0W"yo`1w-x]0Um9dI{42nNf+D8t:9[8FwQ Muxηc: Eʬ`#?)]luET`TAXҦv`N+0y'q1npyMg)}~m0 ݔ`7;q _Yf`hP;54^F%hiB9$>b4X_ 6f He_\[nmA:5yMFA}A)}N؀. %q9ST'ʇɥ9'`+H=p9fily[*oCwE1I02=e.ft<"'n`!KU)~7&ӽ+ x0<=Oj=dd8η/}߀+Iq+z;mCl#AGAa#r7׌u;j,1=voݍ j2q36HoNd'VThZ(SZIq}GͰ|^7wИPt$29Bg-˝gc 24[Bٌq<+P8jA,>`w5bSQCS#uM_';؅]1ӹ&SÝbM&,CcQJZW\oOZ,aWiBi:'XPx)^C\hj0o@UxY&t(]W mgbl|3LA8BUqou}1v/8"}?-dЪ@ծ4'6}En /oO D&o8јzrUw>,;_uJwnQx*诙|`|C}o{] ᜛(*fbOh=pùJ+ԍGxX+N2E6K@qLH-[OpLA&Eo-]9zS7|cjQ&+DNOVH8 5rkA!lq܊ɯ$۵^: N*`lpo6%t$fh״v95 `#?gqXK%ԡeƦ*ͼS=|L@6(r$HAA;xd8X |_7(֭FAU2xsxܺ s4恿cIh!,W8FXHt4w 3 E|}ߺʃUuXZG=w O˩#8A[!u>嫪8ZRLnvU^PܓzƯ&w2xIL +]|лha&༘PJ[#Rt:ӵ3<os8'mbZIGy @> aӗ˜ Ŀem\9D'qƱ3mtWN<5D->t=I!oFÐ3(z .#1hMDE[[/< ؖXahyY.;.k_p%8qlui)Ih@&i;2.*t:㓜yQdVBëtTJ `s(NFL\,wXE_٥ROSq 8eYHEDan|HEJ# G/?a5n*z%sMo:x #VOPfe @6ylOJvwoH7^gWmD Pxe#\#wN٢_*[<\t}b4QZ 'l e ~+f ԭ\nG'')a@wU#:j(xهs&;%p PyYbŢ%Ow˨ ʷD1uJ5b2Nن9 SK}L,n,8>(yr,`ДO%E}#dtH-ޅ0i[)Lߟa%W+9;x0ur>\cAdPt\&qBj#J,/iip=4/'{4OߝA./(q„)w rA٬E Cu] e ':u#`KǷm7cw 2Q>ln ȘyyM- 4<ذk~zr>h3!VA#WK<1W>Fi|U$ݾx>cj)|mS(o4*-z @?60H1#mi{㈵qͨc0xG`A"JE}|IC[%œǍ\ aN;pD AF}{bM^kv!h 6vic/tJW|'(3. mX{5]ʲ4)$7KL$̪vD+/T]U)ߠqÉ$4!XW&*앤՚F 14M6jdq 85?9]{v1z/Ko]2$<0¶&qp36sx j-^U#W|2<0fZwOx^(@yq Yyϱ9bo;I|4XF@+>SYgeΖ@R{x_Yߨo:#_tKdZgdpUsԌ]Y1ZPtN(..{rM, D̸peiXV[NY QPgc(f书Lj\s2UœA5 RBs8r+GJ5A,ngbR#J;cwr/ށ$Uuk:T׫mh/J'fRѯ6|g-x=E- !85(,O+c& JJZ y ,GY+gD2)l;w.X2?e輪,ɂ8, f?̊ž~+%{}Rzallg𾟤2sp{L4JL@هS }'"uY 淳"B+J+x kͫ<`(3&D7_$% 2Ə峬G!*Hx&5y\kC-Ԩ\H|ODhm@cњF,^yT?R27fI4>9Z'ua)I5")G!AS?oD\:= w,8p#pʱ%I yN-v8>mPy~K&Ab߆ޗ`>Ϯzll37% :e 7ػؖhe1TV7ɝ%X&*\U;ƥM2zy,_W-Ҷ 0hv1׾[1留uFELX jςM ]G21ʍe$79kZɵk9ZUECqվCهr񩴈ŪPC䫐*x?P\ks0S-^녒b2~tx<.>kW'$3~zXRߜ7ʙ0x!}3`Xc4슺=(*+7.~LMCyhr })\(Y v3j&|6o`hūkcrT}[,+S ^ ]CYAʍ7qY#:|Յ@wİ.Vtط8ƍzWxy݋>%!t!n,%J&xv(:>lLV匉tǫz M )G#^TYtt&1bAw-yhO &hф05#3Vf`@W"v[ng|%_{|̈bI^;gv6\ }aSx,.GXBXؘOwr/jiߕK 3uݖ0dhsA:-u=Eg_֫ S'ȍ yHά9f*dRLHiG1\M_,1^*X@!<-KEGc 2b\K5p=|9vԪXx(Q;c2~-9QM TBm-&b֦ڈeç5d/7lQ! O8yidx~ϰ.cgm6RldNiIk?:ж r᯷pg;#oƼ]$ȳlbATW”֒#?|ufXn:M4ʟ=G'⮨` F q/$TY8$$CGd<ټRGhG(|0\ȬJh ae6$NaK'Soӝ!=EbQW<2ʥ*^32-#(ĈhdJD~SL՟md? 7NY󹐙%={lF܅milg@Ms= s8] hg6 5҂Ɛ]ŖjKi"3 )%;6'J@U\C?SZ]Ԓߥ^J^`Po!o)ޟؤ<_N a:)i3Ao3YMũ*a|ewN .;(ߍ;-a4sTjcI穔hؖ[Z+ !hT{b.Ui"+6mSfrUtrO;$Eɘ߮GBVBv ANjZB36`OQ7 T)̗i>J)bgUyTuZQpl X^y\Rm.QT;եkQLu˛ k+J -p' -ut:`fk6&pcv*>; Szd}b9)}j9p}feKty|HoE>ZUN$ѥ>BIyV5}e|Hmc(:G՟Au\7(.pMԢCCXSJ_MB v[dBrV)8qaS)!Ѽ(@]%a׃ivD<5Zh7sO˝ΧSO~"k1..RFf(^Rn25IoSa.0 4-<9?X{ᣏ1(0ѱxz~swP*W>K6\ }'4E~Я3U39\ϼJclCx5J2$=hՓ ԭlMDBhwbm:ŗ-M_u5t5lL`3Sx- =P, AMpٴ:/8#K#߬s1u!!{p2w:X <NC$ub3q BԞ- -XNҍ@OM!/5i{c$.̫x˚L"Q1(|L`XgpEЁg7#+@Dthm:桭ifp:rwݳfmp@ mpX9 D}7uHMi}kh 9ggƶ@%=SS:9'.c'}5.ǚZ{B1!w)y?o̱ ^d鮊^"#9 ؚo-bS땂;mV KlK{ۄQF@\2єL5a|0'>q]0o MR$*) k1$1-Wi   Rhg [)>XUyfi  ܒ^9v  WZ̀Qw(LcNPv]eְoc<\co 2{8ic:`RkPV)괿 U~ fe,VҾ'3zx~ׄ C DmcC5:0^^6NI<X}Sݹ5ldMݙ΍q7}KZ=jb<VnBav$`OԠKqy"PM$ܡv3$M0@EpkQE-%$Cۯ.kλT0%"D6fŔ$G儜`ȵv%)xҘ)+ }Bz ߽}gWU2FQ~#UcpE1Ek:-hc,m>qx>̪o&1 4du-/j4eF|/7mV 0JgT]`//?KkHƑ|-s99sI{@B6@\H7?&CoNdC.$8!_BGO̒$ڽ?a!L_AT֦,99,dz{tme:+p}?vռAJ="FL$ ?wM>3s] f!8jI~|wHԽifn?\7`-€U.>)ⵠ:XӺ){j@`Il>Wp XEpĚ5;*7$7={RQaH0D?U]([iE7DYv0XQؤK:.Qk=99Miƶ/ @]¼9][Ao .Lsdt ]Ww`* y_dn/$ /bVߴa[\ėI4+U!Xʔ5*/C#g>&r<~/Y{A\)}*F,1v{3EU~2qB%`c&jU;JŨrXMcI|<`uhLnAx7ES\OdܻZCixTݔf/.5j1y< k,sGP&R( Bs BFVCxX4Ȼ4Ll[.rnY>-seŸj9_.3f#xGDds{}5jٸ0PzO?&<9i MY2n#'Uc Rضzt#|ZzJ /xc? #WpMH 8Zަ<#utDSr*P]cR t̂x*O{%!6 t5*߆h ,B1Èy pu+XclQuYcR;@-n (p/㵬^e?GUL<٫<šO8"10\~Mi;V~Ԭ?-Wכx?_&OQ]yxr]dCȡÙ]ܨ[Icj37bǃ4Tl Sc KL>iX^LP`T;'* 8|yM)BG0$bʣp*OC3OmDO!9 8x43٤notp̡S3iYRʙ0M`; KQ-Ŋ{6u6xKxR5O}I5*Չ8-4!NﱛsyJ hȦzJ͚$U0Ǫpq>SZyCn5ܟ5R3 MWQ[z"v`+YZl XL)ٷc\M4oqˇ=!k?ތ/cA7rE>j._q2?Βnl)܎' I]8AB$Y DHMA@T8(AӦO1N%4oXbն9XR2tR; ; M&.k̑jڏ'?B5uX{3rEz ѱ/?=/=xuZk79d^u>u/_@Q"ahW*<Ͻ*y[W̓8L/eAeºÀEz\BA Z#\凨Eܥ;sm>vgJZ*У욣i\:n93^=Li0DHHx 60I İ*_DW "5^7ZVֺ.|wԢ: siiiW:,fJ/fd'?x ’>PӧYMp]je깍$l'XAG7JkL?bqcקB5^lB 5;vBWRm7+oϥ;&[)1- }7P2mKJMQzUg/ś3~79cY; ½b4i\oqCx\@uP*x# -uQ35M[Nʃ\@SBXl!^XI׎\|dbyҒ`<=2r?3b_mk2  x9nMabߏ~bTxVxV{ [V^%  7%nDŽHGnM02wܺVLj*yWJ+?7ړbj7">zP*kb\ 7E|v`ցʠ Ӛl7M$C<5> shu+"BEb*eX2m qvTٹs^fe aAuZcHPig#zvIVhпڵxzw"b$ރascXLG )}n㳋R޲9s?88$V3CC!)+5'p*p6D,.\/7'2>z42H[E-=~ai%/ G 5~mj Q_lRᨲw 4aCMO%/d57(}h1vW@uuOO&\z̮_6߮CHvSp"6w| .\Œ 1J{ŕ3HLc˫ƩsFCr#Z34]YNlKW[SvK!₎K^ =ve~ѽ?X?Mr;@@鶀qÈO C"b\UZ[CW,%+kuWXaX0M_"< װYPݍTڐI|գzr,O `j|4V>RCɾy9Gx"Z>tjs wqpݼn@Z>faQ p9^&)Clu* B  E OW0oF6y8#G jBD.85K8DQA?t>tvڧj gƍ!Q ѢK ϖBQ%dqĄ =|beJsifO׎l+#Eg3 U<0C@R߿b,X?[ɁDLۭvzM e}bd)JJLtuij䥙$+V6B&h5e ),sNֆ > Ͷ!-]u:wk:Yfҟ՛@yspL݆A^¹7 -.T)өqtb=T$p6 Gz<ŭ"s ݆;H'm/_P?ڽO]+qvD"75os[Y l Sҿr$V`8q|iT/5+86TEg^ľ5IoB$x's4s.)ulȜk\kWnӢ Y|.~2wt t[1;Dyk?o,۵x|zIpa~W#OmK օqz`$~rHY|h"8\ңۊdʯȨN40N= * p$zj{yJ[932%gH"]mȉɖ>Y{"W{MF.GJ~k7T#`Usl7  numK 3C0f^UB"SPmxh8sD[.yV-(&g&4Ak=%"d9w &e,]fs'~ݵ^" k{.0U2?:=SB)d7_2)Oǚ 2^VRCtQ"+ =gJv K BM[Ҏ '.Dw:݄Wmᑏ?, cnF$h.{`AI=gApͩ|po|@j?ʢ  B6Ty) xv<لhr9/lFM76+<_ʴH)^ W?cTYhm7'/ %w3H eʨkhq6z;ֻb rV;VVt6}?.I.#Ǽ#3/۞ $^k]w'bR ,=-V?!DM׸1rɕD|"Pݒ'2>*$nLreK(dt,iȟJqQ~5B0{"p@:HcTݷ\eh^_D4TAltL_?׷irVH6>ZLw!ΉMcCH:'#.ZŠA; ڼܞ/v1ґQV`+Fۛi`J?ls.ގo2/i#1ȠMzQ̢vEGY8jeP=Է q1#<@6nz&UfiT\ U{MꛊvBd ~šAJiRA 0r@:\]vSUҊ&gel866d L qӐp @ۺ0XC~9 H*mChHhFR?$xtTF̻'zMVemvO 7)ڊ]~!p{.#xcu!&G!xͮw$}u<$c_7N8(|Ma>GQI#@e(HpӢ́TFɬi95D5s 8>K*G(tg 1v{N+ᣅ--7Ґu LQDYO FV?hdekCa[ѐϭnK]@ :\+vKKg #;Ggjs\Z a[̧=kux7 G/~P; 3c+XG;}W1vA;/tr%'n;5)Ӯ.DD-Ri-\$rւ[f=.۵i i۩\)ݛ01˘;ekN}zsARj&I]G(I7ĭ.&F"?>,,ÜOǕ '~Y% _`KmD#V!fJ#hIғSlx؈U0T6*^ H@ ݥ(YCna/6W!Bc4 piZqrAHH؅R7p9:( |0~UYk:Vp.{ߠDpqA ؏ ?j ^ L+=NNS犺 HhWN3{ȋYQjae\kyuS j# :3V(WgV>u>I(&I ~J G$x[v,Y#o|X/j kK `N.u dNE1Z#+sײ{c^sW#g- L[ߙiewVyeqvFVE5zxEbɩBBZxճaӡKx &㒖fS ^T"BXȝ_.|hǘ(x1K-׊ oPmyWO5j DZ*ie~w Q31&z*Xb ˯1:KtjI;(ܾUP ӣ?&\;tr\ FN"0{o+\ϸ8潟Ty(i z4a(+ɭlk!-t04d j;~mWx Tn`՝ ߡ$8}Y6 =dw X 擿ԛσEytF:WljhYOyfWƺJz6 .n\^k\ѕx2>N}|Db;qН`g4 oҸT"m$ b5fnLV:krtTPV{f#zG-cYQbԕՊnLwn"hVZ"giڧ9tl/CʹyҕCj u\htW+뮗4zB T9pĎ}rZG0;WKUx[8l(1[Ě:]WG}Ӯ+AiBv7s^ Ms# pBoZ? RK ~ kqi? P/'q$sC#߲H*Kg$TM3>D7.W~_){q~3d["}t|eq`G>M8Apn2x׭C"f8˻fcy4R6ylfru78yYPO k=0UJoЧllV j]~Fq1] LeX2,U&0QC\.zdCqڑ|"\m;=ʂM96\;G㣿8 GUᓜF iofx;tg^Dzʙ?o|t\ɾbܭ\B ֫jis⓷i 1qg+0TIT UJ23Y6O`EylRȌU< $0SK=C#́: k;gM\6>S+QE"hg^m|;i ][)SG$′ݍ^'1RpzM~à^8y*а$II"sg.jmNga!vⱗH)Ξҽc`xjn^0:3_=j:|T5&;0H9gCv:]yuq wdD/q |3$q۾.tܡg$w͔\nQ!\-.5+2Tp/w|Pnx`sZx0Pw]*]BuO4)"GD6?!槱z}xjuk/Dc܊Osgfi{yIxߢ<λ*P 2ebm!Y-/GDpY3P<\=idIMNBK+|T!0&GI@BQ|rZ! |wٸ mzժ¾LNtGVu͏}k$A{;' 5N셼<R?2QQ7]o).FTf^3FH1-#daHLA$2JvE}B:>Aa4A1ra{|  m|6u&OpZXkC6g\W@گ"0nN!lCy ,]A‚w!^W{ZTʫq(9DZ i&f OoADZ#-ʻMKCF;>fO^buy )z)V܁iLK6SS*uyhġ)MS\9:pݩS>1Z+숝s֢F`WReU;X%0:(Gu Xq U{q@x$Ré&Pa+w~tC3tlPQi%a=Uϡːkh#W}1V anFm적9eyKiL1Xo#Otn]뼑xly}|8-lm(z +L Z5swZ80'N75˳~y&Z >(X~kNrf`ϐX/zM@T%L5iQ&ӎj)Y9c8e\!'lIB j:w"&H8o -^G}sB*k1<%C:t,Z{GXڶG ml-COƀ|D5͘\߯+_0BI3AA@H`Tw;4`Y}%՘Psi͎>gR }-r'8tn+]N{˜CcxViyV#v%A5l)#<)Σ?tŒ) TF Ɍ_h}RV6''$fSąEzNؾ8:9D'X.ɃĥLiMl w;6ClZT{Y aթ]c'V C#\$QeWe3G~Q0v= v``Z2>ɣc8j; gX1N!oU<HiaԎ<05ՙKTTȌҼ<8FP6gVhhU? -L(bBw> ߥѭ2utJ̩_nm_XO-\Ȣ嬊3DW}PCS. 2Y11YW^8c$/97!HZ3,2+u=b۱k?Shcr6~*!3?2꫙m&C( . SfAnsaa~lEkm7~|wF1yhYŭY8PKDJW&.V9?zu PsǞc~Z` Fݤ]ZED1NTU,GXoIJCy&sdyK-Uhf;&^*!  i!#Ռ[)=+NRbc9>x}n^L~_4ss,jRm|bh׷Ֆp>V H["^*#y<-s1<ش~,ZeW2d|QucAtl,dj^"k(35m^ hw)NE3X/fk|W쾺urA˝"){6GơRR"v ޓcq60D7zJ8v+jT$MGؓh79( ^mfg;(25]]̙&u<,X,9/6&/}FK#Ðy yfP)16`^ұ.H,"Ix! $bŝ)º\feQWe;tqձ`0I \C@W+M L)!K}[o[ r`iڽPk5ɥ: WE"^!R"oHͲ]:~&"Eg,\͓L\.I5=i_?;1Or_[4)q!*S_uĭ֥I3xPCa `ȸc@"l /Mo Wߣ/nH$BַT㺐&9Ẅ4¬5Ń7wte K}bs=R muBNsA)H ԩScsJb>^f`½Ш.wdVkaE? E 1:2CS-hK"wLW.:~; эUFV%El 2üXvJО.RhIj iD\p!*%Z) D6R˞{ݝ ܕObyY^r#v 4:A<^X)~q5&xzy;k1%lב}:,U'5$]bo_3ttdz'" ]C?od8mW&iEJ"Y;#(1=|@(^7  #.;d?\m "9KRpr WVwtP ~U'O"A<֩ dIQִP Z)kӄIC>{cKyJxPlg?o:eX#6$\.d ۼϿÚK|$qۅ4@QZ6ZcޢyQRRob1g#MYww 횎[G3;26Eh#n;\YVcfhiæ`z0]*~u^CSbµ<% sefŖ SO^@!N\3#ZxJ'*95"F`{ɘ$L < #Ipgszhjtz=χGga-: ^{^&憛Iژc~Ĩ1RIO6+ވs[]gP9Y&h%JTFpS/ Btcӭ!#>~si>?,[}cxhɳ*d DWN:TVjPd01^Պhג z:bg w&` c򯻌{6.u%W8=$٩ kOl@ڒ:ѭJeW>ag#ȆFGGc˞ȣ j>_W>tٵP'p12 aI'&E|}Qsv2M |R37K0gF@(w"#dX(F&֮)&q]SXh{:Yt>nphVFl7wk^6B xP@Я D1?~y]T)ţAi(zB9ew" =Y Jd5Ywޏzn|Dg!Bb<mN" b_蔾 P¯c←IH[Mi޴!H ؉.IIk'+vj@7/ء+mFsS[: 4l˓h蔌vi9!\ 7*DI kn"\:ake #h WC|Ѻ*X= *ޅyNi谫1WbB}w|03$G7}d:H|5z#r KG-(F7B 3n/Ek$$9]N2N;L tGV40^=K'sӟ݆RK!t2Au7WVG<wp6G}j9FKSzxi5ΓxZh0) 6Lbboi'oemsb+Ҷ&~I+|2ZB̄md.@ZYh`!&h(5 #Ju}_tN4s~-gFtgmA& <.an@Cނ,qEL},'˔4upu4cEl |Ko6`ְnEʪ?x8桴9|8VGFI]&6|Ėk ԿyK^u.J' fg;__rUETo#5ޘtvҫz(1BO8`tcmk4ۋ:R*&@3Pp@j>ƉQ!VKml˸SWՀiNp{_\9,S~NM-B(Oc ҆5"37Aaf;Q8FNp/BƣyG0(>xy' jB}I-ߵUO=pۂe,z}4> FN0m]BʢultEȎoO1ZGk:Y@<OXW6P^zEmiZ'Apa;R9hL=8Z+RokםA҇*0#=}f$ HS+TY zl/hg|M'myK =L`}:+S5D,Cz)]4鵦 > )4}4q"a!k07CݾJ7[ٍmX)ωU5L׾~ph+{|]`Lfu֫N8ҘP>:E?'4l3tBNUKTھ[u<ק2W3\s[MS|B@ *JQUR%G Vq8RG1Ӽ^W9`@я2M'v&Yʟ&n,,N nvj%Uhպ-[K0&Y>K| ss1NϕzX_Kjs}iՒ&F!C_|* άl.l=L!OC< uYuHoBG;t#2Y27MVfgEk[)c@<2 \!_s_/W3l@+ZO2SnL{LjGYq"젟TaEq3&D5y aYgcϮ#(F\Oo"e":L{N_8 '@;"&*"Xݍj➚Y?.♴v2eB ђ$ hroVlCFSZt>ws[l{'-{x;\:)j=L^NnÔF\vUbPA\<e (pz=Wr1KvxXZC b?ۣ'jt@̋/mt2Bg_vTxHf&ˀ7MvTRE!Y+e ,xDZ޶˃۽4-]X"Ttv}x2²簰{528crv],<.W8yjj;2sQ{y%=:U)ou$WV|)> +I+<(zG!$lK3ŏ?|ɑ ,|嫱[V4 g.0̏,.,B8}iyj*F{bHt">**\A0ڸi\ (ՙM;&_ߏV{)g<{Jd KtZ6788ZHOJa~.>',?9#aw"FÜXAj/?ݐ&ffmayuG6ZI6;%e8,^408 :@3*h(!=o%)B'ns6 ߝ_+TwL9aLc´L|l A#e͛U}o^!`klP󎽳_iDa!Nn~:_6Ep׋]|8vڠcb<+nIi =W3)kmo mHZ׾z [JEԏɻsǛiO5Ug;8ȴ#`c26вSݢ+vuMM9ӈ2;(ƅѹy`h)9nr)n 1f]uȰ*Luz^XBH$^,{*DLc1=ֱ7ɷ;!Le0x,8yDNaOՄԯ}Jc^/~/}'fZLBkd؎. xsPN0R~cx{ѣe:=Xz"%|1uL5+_b*Q̆+YI;¶4 ɿeQ.4qxev`=yE ^Qq^"['jƎh7dK*[)\e.kTd0_ͤI:W;P(`s5Xл. ͘ߔ׉+:^ ӤoZ?'Po7H)jQ[Q';(@9*7OӶ=*Ix%bQy}jGIl1/EjkU2tbH|zRO%.!DR􈑄@Țӏ㨱!#D4d:PG16%,Xe 201dfLEmD  / ?_WTڏ(%?g`⢡d%i\%Oæo&4g̩+tuz#R>`WeB8Obę/L{G1<{b({lnHnLBQ|\[O q4ͥؿ!*kr֩@.W `*a%']|Np՘ SdI#v  1.˟|s枔K""{#r`ZI\g[;9vn%h-..>-“ls2C?I3 SэCedƞNlM|a nr6z޷"L|er׭c)!Lݍk~-a>|;ц(ObI9p:._ ?ش* wpU+l24Yg5MkoJnF+^X9b'bGxX#_I (9-%"РFqnUe=!Z#ws~msj|X/8Ӫ>`7.E t*w d!ǡwEB'tży$$}_j팭z@nRnpgӔeP=;<)=˄w8xW1D ˽wL Vzd8DlV GZĒFGxȥԥ\-yZl ՘8v վ[ _`G{PvIN LToO  m1㮏b;oEk~'a#Ƀf*X8tgf6VcJlΉRj7I{✈3RQbz~dRCyUN;:__Zv!lKG'hh2;Vi yp-Ċ$yoBU-^i3ȭ~J 7lԀEr,?5&ykF4{#c<ž.eSk0 2+EsTLI}/6^!D:bH'zؖdyQŸlƎvGXպpC@ջ%NiMީaF(p'P)U5v0*7\cez)0شBrM}iw/sZ@> HZik؄Sxf)_ (}Ӹ?wܷ!~Ԅ*5w֭3{:MB \OQ}TC%ܓHu(0tS$F`llX7|ȐG~}0.XJ5գnWVuGNG@A[DŇunlGFdPoUmh,J&qipUoNjb[xAƒ0xéck0d0ɂOٜmcI$[#{C=V12OhBv[ߒ[L,Rn.Ah랟oz6$|sz|wd(#Rtߌf5ϒ;$tk H0$< BtKauo=͘ԌN@ڤs&imTL۹^}`h',{?2 -&9߷ A~wЪ); OWB|M>ކ( ECTN;7>(TP#>!r%Xa.K)eih2`s ;3HP }E#!`ܬ&Fz7Q>*9$#D.[3uvąo7;g=1q$'bY HIXNL%y!]=E}%x|qIb+T2':g ;* ` RC?PAOuAt0]7fƍ38qo(Y(=YU"t.Qhv5BԟxFjS&m$Ȣ|8M98h哿+0Zf"&Ne.lt~B$%+&?rB|ͧwҨ8 1|)/-L}zP*ŸENk<Eu2ZisHFMbvFZW; kv鋾R\hN`MDn\KGP55Y?U$4Y-,zpFQE۳ּEka+ɽ5=pшvcal"ė* AaQåi{yȷe'zhN9$љQ4TܓmF%xOӨ9{ȉKt=LIS z̈9|lHT KJd4ua}k؁Uj)ㆅWwˎW{Vd"T#$\m8%g:sx :رw$FApS }zTA\vk{":NF4|_QVGn*!ȫgTXM۾!Ք^oT29)gFEڧbgRzF? CѡGEŦar"~{Un(_h6n,VY[N%H±2᮶Y׫QRz\C᪓%A-ySV!2Y9اMÊC饁 f-Իzװ*3BD9('JV/Nsw贒JgE<ڠ6aǾ,o"fb8{床P֞jCr."?jב1RH3ۧ"LdGX/mX>4Wϳ<8p8fc$2btY;^q(=ƉAEu]jT~' F$gR5&l'(h7㌄LoLg0!)ο%Nx-tvEM_o2?QYuei"{X wl?z+sr.!qkq)) @&Ch2p_H)!ޱ xcV&K& Y doz֦p `hT,(#âc(տzxβ>v1㭎sdM=da6z O spi98V*/I\\AjD|e+ASS)'3Z7Z!c4q'Te1eKkRq 1xEf;(b2JE8@߮cUXEdyL[?af 1 wQ4~`|m@{lPbl)WrY22 Q`\Ee%hzmKI<3w铅x'{A9)֏Sx?lN=Anp:١!lCp1% J6dEt7T+N.7{@f`P 9Px"s_FAVJ~Љ\LVr5"h%(Zz0 av8ڟHoIi6AڂC8w٦[;AYӉS_6bc({A1Cl i^A $@\G!E71+g.c\–Wl u`yKQXEn5 a}Ub٦488~pw J+A#5p X\CJ{i#ZxMBk鉞Ou(bPsؕnD~jɞ' aduF ?Hc怴yPI`Ty ׏H`ﲜxR*Kz-kQ-kz~}0vrW4mݡ{$:0k.ӝWfQJ,2'2s.u`Rw`jѹ\{iD,Ⱥ4Cr3c2B;h%H^U}LHښӛ$ FeJ$،fϵ"e?3Xȟ9P15rW&JTdL,!\b:rܯ^`֢ت xG_&~,#;AyHhgeq\(Bh,AȼEUVj觠i5tN浠ƇviiScsA_.(rwKG ~̎lgէAT7iUEWc+̞ g' /Ìr~n#"HaEZ+җD m_~Gt&!ܘ]Iӣn7jiyx.3\. lUNǏ[~ kiVYtq%;xCXE emc+kŞ-ۉ!TDVMNYHao<N6ae2M xr>]е Z"N$Oj%6G(7f[~6/h<6yTߪ᫑&MڤՎ4@Mv-ϡ@HáΣ'x3F߹ ࿢V"qwS5tRwbA%[M M>!)(9n@1&CU|gVE:+o3Nxʝ(e!(VTM(%oՋr5Osy2􏰷ʫ*`f LE(icCa4KdMWnvMj ~mSKֱmPR\h \`׼[}dps8T!RZȭwhzDwURNL4)ќ}0\֠LN!(Z sOLKG/n% FO",EeQ.Z9 fnt- M4lKSugPDA33 b%SM.~2PYgLhɻz%CR~pe>]Š9,Pdjtor[wmY8eSwfP<^#&9Km.M dI N!z 3t[;U$G`-/(*0 ֻ[R sӢwY"d{X5F4%…(%cniF]!EmݸI jq*gښ2_pgܜvXt.v%HUx$ŞF;ٍQI2gzs'nD<}Ml.؞N3tUORT˫A[C&=GgEɂznbW\3:82#n&zZ=p_T%6YMy3{gXL`I* ݐÛ22׌i*bHAC P8f[L(."#S?DR./*{szpL,Na}vgg2Fwq"Ҫοs|xZA=SAѭp˺b NJ$YsGrR>X1H$ lVT.a,tRFnŝ/;ҧ DO8]Y佋 /Mw[߭&?Z +ݮ/V@<]7(̰ON`SNhM5kl#edKot('nR=lj3)aW 78@ q2g41_Wi.fsl/t8#BLKod[AGLjcؑ3-Mu4 T'3Uo0?UDômA&N& ڻ'8-2V Ӱ4FR[ +3D3&缐&)1&Ǡ>BO~ 9RG6  _Y3ޤO. &ڛc1 tr#2nbŒ!@nw>zgq>u_Mn9S0A :7%GY;=붢M=tx\<76U*-ocVX~Okr&Ԕ&1\/@Jk"|'H >vCD~Hd7D\VU6a5!FF3Qњ5t$SƩ#`HG2Rd+zd_Hsʏn>-qM>;N<51^.ihDL}Eb|9V8$'Te :.1v#!KSu7;"U~eLmT،JXj%Q&$7 G*MɟX;_Iqt?\K-SmmMڨe!WGP:m歵Xa2XڔL:9g9?͔cS3' 3}!멨[6>},So oB`T<¤~8q\NA0 DN\DSKJ26Gxr8{`'Y*,5s,Op"A`X&xc`VnHcVP5淯mϞk+Ӯf^9x?3jE׭SD; Ҥ]!SøWx*\=;i&^vJ߭?ѭOÅ lbj)_7^ϨN\֫c(g2誸̆Õwv]0tz&Na68Wib]5O$LۙOL" @E{AX(qӻ:q!PӒOwy""21"?#zz:VW1J7'$U3uFNDi.vPølfj)Po)ZY:ZГuxv*?.hkX+g]N1ܯ^K=hzPc UgxؐذU Y 2KMT2^ξ,)W ņ{;V+w@o#a^pw3XH}}HÌ'F_y}* EDDy/' ,[k,WhLaȭ{}''E ^(oJW` E݅_6@O&ub9&T!e4VDS_ఙÏ'M죳I'7Y$cHȘm@>ZefqSB„)bvIEfw:P0.h4b=J]9KᶋYW`&e wAAi[:7ӊڥ:jd # e x:FW{Q珚J_9qGIr`4l/8X4g}Fd3QnxŞD}V bky}BS_xZyƊ.]%ΐxvkx F?M6 кV)<=KPtVvQ5K?Lw?ļ-S_?FZΪY6J{6iQ'3˓.[, ?;؜Է(iKhk':?l"OSu/ЄZ38d/ϼ7t=TI͗H.׽>\J'NDZL{pw y%*(r~{Z:- ݧ- qp|),mr :༳a[0H]f;ywVcB%p"K"@ |J 0<JAy1E\!}SOePp :wg ,\"p{ :!% `a1?FM}Ae^>ZʮveLW$ )^f@;hM qHI 6T23JyAOb=\b+.kǾ)R_31QZ)[ꕘMBfJS*"O >WFv>ysޠhgfb(-;Kl$ w19E0> 3x$zx lD fgz/M#[[%'DNTuڛ"6֡ jHӡ7TfK {sWDZX`FBTq:{wY WD3~1.9V6fjQIh9fӃGm]=¤L z#-~MfOXѴIV-uO)y 2F@i*eU S,^n?y( ^Pj{&nC_y&*\i;h7_#nyjPef$l>sHJ

sߙǾÏ_!%:zP9 n3"k2y~9h~h;FӤ4YZ9s-u/s|m :y'\'ek l] NRV0<7w3hϞ0|W/T0G;_$ j4$'ɳ*&^$U @5=PELop$J޶$10li1ɔZ'I5Pjkhlp>J[8_30sYєhCB 犫ԑI7\gUT?O5Pn3:`Y'ApܹRGuA6 Ke<Ŏ?"6&J2cbNy;H &5ѨBOLej*<\ԐR7A܀8eQ,-}-j MśO3r'r+zkf_*yIF~!UwҌ_q9E-[QAE.$w6]]oa(\++ڬQݽ]w k[_ 8k`EE2raDzblr룵ܯl1@FoTꁵ`C=^UNd4? +dq'u>z;u۾@&Plajk+k>&\:h@JӾs\*)Z'|89BrhiQJF>epmO0Z+DBzMFbiI?tž#4x\Ry:}w,&h=̦FH-]TMz()*'ew5[M4rn" )kji99J)+G,aw3կцoFG=6;x dwVn{`,xiaH+aHO"N^ c -HQvy5|%a0;9vP|kixfbV9{ZZ`gW.gbz@xPD&z@gw3@8O89_|$[:ۮA~Bݺ>հL 2jmeT4I7{B FnpgSdfF:/vƥr7z-r) =[dN+TB>ڞy ;aҔamɸū Oh^ mǼW1dݛ?dI# N0ttB%9h~zw *¥$O "*é LjwOd.HwR}|ӑqṚK*}pf[#zΗT)aݬJo9ǹև`]ỳ$#T!U?'~s F'(r0U FBuGSOˑwLƿu_EdN}?e2 w,NGi=_M4z.QvMI{+-ʴv]oE)Vu_QvN~](Jf F#bʱf({պA%qN 2v ج=@ҙa9g*v%IؘF~\~ H9dm3Џ3p Wu y62BMP)XN d3^P6"psރoM8H!#C<2|b>&Fε` шK\,z7ͬOxqGqwְXD|]A#]-I/uyNJ4jfGc!:cjj?o?+lvyM3R_ݹXN׾Ofh/kUOL8+q{\at_ (NH4YцY!LLDHh)`,3XcaeÌ&+m#7B*OXUݘ#-:bgGǵS7tLK۹H!0S~u]8ӆthéhܿl_ 2 pHĽ ;B;AP .{S1J&A/S8u3B ؘN*f~o[p?#ƥ`UfId`iy>r*YV[,T愸i:C<3==&h|'A+ 0# xXnZӌw G|$A}2S= ǖZ#(} >w ʹAXs3..ܔT 6ڬa}D,CM;ߏ5_lugCHN6Yk^+RMT$2{FG"h-Rfk}# _Qmp.YiWE|ғn vXjȞVa=SHS0hשAcckᴌvڇV>Kw*I,4cKhԼ@3X nV\7rVMN1gy!NǺSX獇b,,NbI*N#ɾ)+c3+81#>0wj5Ơ6BLG";OJVH9q_DCd 7wRjF}|Nk^%Yœ΀ P 6t./j-nL}_At~1}qԱG,r}[GۣRĵe^8BQ*k/ڭ< t}{?c迁R{E &+`YB(/[z|Qb.fnx@Ԉ 1ױpw>;Ɗ#r в {H5OPofdqȥ=w/ɉ CU+D9Oۀgѫh:[%db} ܝ=SEGY](hKo<Ʀ; o-mcrDD^~cs3%h~dNEN(!Y]4GY@)]$xJvm\Na5O!=3DmTp'`b?zQa m~ASWB@)/X"/64c(CTPic/KaFZB(Ƙd=᳄`ьB,T۾gyvICܠ jnKh%7$";Q#$q {/^XBDikcAN0Ǻ\f^MD[=SfM1X!Ybeir)'7_״6r1d翾[;G;U*< 1oc\%:7+t>)1icR peOs-,sYڜ7Qӑd4Ss…m.sS TyB ONM+jƄ4BΞ8 [[B%f K=los$Lr`4]ޚOϰE)n-[:HbVU'gBְ[?&!6:L]E<:K94h^U{KH ỻv^N C&n;~c܀ >2MA)Q 3QS-p J)A R7ݫa'M\L-kŤx\yHn9e u.+ɡFP}ruJ F!eQ3h,4eDQN5_ƕ*AbOI#ݞ.杶)=|"n;!> ]x al9 J^fx8b20gkinNB|G2\)} 5SU-$ι([}JpnETHf+6PJyy׊r^0= 3YOߕl}?m'(ﱅz 7R/AQA2鐡,2ΈOGړgE\IYx} L=G!uw'b_)=,^^!NWBMgЦݍ, %Cz/VnčeeER01պa. DL0ss~2taY$"eVO{ ˞%CsPjKӫR`#V{k,KWCo8Xt3?^.ZpFJjޏ!DPٜ]p 'Nrbylv~=h2ć>$*f=IF}|)'pic:x'> $=-6:Ct? WV*y쭵̽kca dKk#趺=:m/ ՊƬ~_n `ڦ ʿyM;z u0Ң*,o:(FFN){ҽu,kuCj\uuKFD;W@46IT[FH'sQB` mFUMP.oVݬ.5hvrUi|PIش:ǎF<pvQCYD&QE.*o a ޶K3# f8A%R)Es bp<Q.!.O淩Q6`̊l)9PfLBșE !.Ȟ kT[9.F~P 7 ߪ4]Rf$ɷѾzߓZ B fɸp ϟ[e3hA|n>vԩ9l!9nNF6ձ .4(R`I#UM^Kzmʻ\⋭vQ(Nl(P {.k4}wowu…QJ _7ě&& 0X W?K%^ nZ-HvV@ 'PMشS~XU&Yoi=vf 㽝vSfo g"f$728`^+*RȉM0#S68FYk9wAY:iouaA5vޑ0|raN7@jzuy9TQ0ej@xpM`s[,=fBxXe~Žj:hZuUJ XUB:oCaM,|u7S}\G$yU;P> ,ݯ:9|pIՊ6ո-#Aɧuim1 Pc)[;` @J@NUuFWRM+y??X{7-8NST>ʜ)ZkBbXXh#lkN'/-ì;P#tÂ|{IL,߁ ۽,Bhd%gJB0N;Ew{:凉lJ,Mg|Á 6@zhsq^聙DsPmݠ*uŌaXaǯ %#ՖlۗE~sy5nrWEaW Yք`5~JmV&*6-^r 0 NrvN?m㦙]Z*ϋ%J *b{lj\,(6WuH gVO[;f'/PSSe&Al#AsX7|fس!}Ba] ]\zh i=0M6d60 m#@̗lG o|;9*@8U鋛385̉h˭RgjS ._KUT^5 z&3wtk NGoGk}[嬥a 0d".K{Cs7T#aQ;&mɕG$l 1 32\ Ih=ÕJNlvcU>מ]S7NŦ5WϘFR[DrFg ؁ʐy9A;fуN^!Ń{;Zk }?绊\9mð9oH! 8ce^:éП82 bDJEvHro<8DM Ds9&W #%HP$6ȉ%k9Y''r^(H&o<GўhLV$p$890yя$(*ac\o:ޏ#=ZI]R 6{ YL x!c7`X o{a z?+<jBnD}#YKh"p:evh.j#Y C oߞ"B.dekZ.E#$mWz8YohʟL/ɢ,̽uWa"Ԡ2_|\CŨs=L9X~IXĨ{rArKxaR 9?U9{4FCZ(pȥ/Nuh,Q]kᰴ}Zv0uI8m* ?؎ڇ "O= e\X/;ܼ@b0LW0N8+d5V7Uc~GB7{SZV{,~$|+?b[t 31! -iS%:+t՝M2 &><4LEUyF3ڝUقtdoNQ=pD狤=v/ K+vOJ.X3%#USX)@ԗGB u&kpS_[e-Oa)ˏތImqX\TCqCQH\3ևc\Coq+(YO@rVYb4bpƈ FEAk).B#ۧ?$t@j@Լ?l(}lb(:抹ΥE̥,%g{ɣ+=OU\;Qs{Cyܨ(oVŌc䍢Ĭ354O2~.۷&,H)Dۇ嬭/s!aeǃK 1Uf!2*djd ̥b㦓Z.pSfW8`z9v J1`\׸oaʉ&̷۠?52ޝ?n[m=gY3VŭNSDyob$hDl]306Dln? b@m魨aQ~+ҝGK$H-hKyw IK6ov[ߗ$ڣ=wLmrF5mT!xxpoʱQӿ{uz$LHwocm;WKoGf]tZcT;Axw9W.rl8/ݑ%qN9JFNz؇Xw(>*uK懬Ra#=li{UNk^E s Řd|nQ_A$>{*~`b{kHLp~n=a6~RJ(r*37Zۣ_DDlf.*nŋc #:f֜*-4B269[GjA\d*[NIuH >D!fM`‡Uav =99EF%4PJiOq߉)6}zW*  +"e_-8'y~pCh`q`m_1?O||%vSj?_;Y4\,O3Bh#`v2HCWl坕X%&Cqѕ/ʘO*\=!fw6Y 00.⭕cpVJD%Y odQ)=BsvU~@< bMM7_iIj*2 Ԋ-}bl~5+&PX8bؤYgmP쉱w8VmS qs❶ar}.2#"+]mV 9=CU5"嫢 1UBf$dWcL-r"1(Yn˕k,lQP Cw3 pi >c:͞w (QJ`d$rbfDB."dk>G9֫+FmpzSRj&Lg)dNP35]#|9xLg; \ yxX2IEePmÜw敉Pjs{?VVp f7R?e#=@@̆e h mS֭ '>/#GƾQf*LF8%spv$NJo%u+  #yde62:@jh[)pY[߱b&͂/'S20IvMnZe{8qD9"8UXv[ `T2Q%i9Dp6󝿪(GNZ.H3Qө6]n|prKC( >dV?W8(}[/UTdwFݴ, x-ܒ˷9\^3= >O ]ӤXvœ(tx(ciBfP'ȖYYtV;1OH9>Һq Tzy|,)VI476tFQ@Wg}Xγ^ipUcn[%<-7\nWqɨz2V":CTG?z* Vd:6&-54U^D(符U$DXO _r&~:oY07=[#b$ R*xμ/Xֆ PX +.Ud+lpFJ{$4Kft,̢'IyRXC ZM8#"Fq*nxQ֋N*B~ X,K#:Եn1aV`;Y1鳮>}9"ps*I0,TREzܱwBqƌ 1U3Zn1xHa 𬣉$"$ D=-]0DڌisJ=a@UĴ g P./t&-βfSN6db+d  ),a8Jҡh 6~ cEKq)ނZ`9 <9{`>:+bB#tQ=Pv^1bja*O{ s[!:9v-׃,0 T_j*'fZ/uN_cum0!ڰQ@ [Up! 1( jkC+ػPW|r>ħ7oFS5'#1kCmjO},U/.ܫ٬w!kӾwzk UmPm;fyH̳ ~fL8%=⬨aE q|-bڡL"V_2ouYaD<( pݡ,ZJ&5Yn죞ĎR{`ٖpq@:7./. acVDۀ@Mp7X|;M_Yz|>: EvktKΙre2?yJy2!{e_l6UGjNCK|(Gƞ,E|6=i%Z]XnHHtB%fԨ群z/;v]Q.Ʌ*A&i*?Zbdad;կwД6o͊h\mcCK}Dn[TE&uqsm9@>L4i6t ql-!'!8 4͔x%O_sѯkS+Y,ĔĜyol2bH؊tWD7S+4}L|+_!=H͡Xsi:dfr>`FjRM?{aF"D )[c[@nFTU;/7-Z&㣘KQ#?rĪw'M=P#N5Κr1=tՎrǯrf8[T7<)Nhe@ysq4S׳0\VE& 6ݵ. aKEchN!TXPM1KIܯqd/BSusէRv%A- Rl^$Pӌ'Mf3yEwNFojHOFk6ws 9 D9)]@Bʉ`2Jz}w5:4ڗmjx{%AtΦ;dKL2};".0@G`\~0nLQfE #l)Q9vMv4RB/Ӡt; "+ +4K(Äp18 DU^m+_"{?/,&ߵDIN*t{eBPadBHړޏPd0QW*ʥBTO~ICw;cIЬl ^1ip؛HE+\/@wbM}SXiVM``bg_Y�P1 ;:@J<+"s/KI3L>g. Uʴh̹NЦ(t^?0F@3 Fr26g w[mDG6vgTp'&} 1kS0h%皭R_Kj8ɂ%2+ @HRzYO`x\.N=l>cF xáO"ttsrsfqj]ѕ6_v+C㪋-[}_I!qӱȔDFK:Cy Oa8 *yL]tZJ+<˝"乽YĥwL3[R^0L{X$qZuHP ~k>Ѩr7Sz>ݟP͞ڱ+b=p7ꓶ{ ]vmLD8_eM[(i[wNNǿx7XyL/ժgNKe9qV# pٿ<85`vBL fIH٩e8+*Eʴ ieKfíV]EGb.%h]FSk;j az>9Xd<sL%g߲ /xÍU]&2G(ReiSa෪Z–:?NUHT bݻw$VÄa^Q[M >2Q&s0Cw iV6-eit'Aw5:y0Y뾏!6"]bM 08%" 97N)TZ 37^51PEƍ*ȶUU9vX%I|rNcq./<i!=.tra:1hۙd ?KM2t& o㑅vo>.xk1|-bҗ#]E^>;,54|œiVت}uy $n'f<=z#)$)QLT1s&!J:;DopO,*/ȫkRi2ԏxx?44aOcL>1FEP<،@o>%Iݤj.?AMe$N/*2h=Y}r+=MR1@F)V.ILO yxnW^lD¦-w; A1X9d/a@.3e E-+nM%ksS!?]V6ܮS}Y4w#&:D¸7#\o/٥\ƺ d*3j | q$P`n mfisYe rjߺQ{2_XΗmE?IMiHF܊@JT@N2L0WGK'(j'ݟ]PRsKwD:9߽+f3e5uY+,Get'5yMXh.-%<-t(%oAh 5/iG0O4Qg{1 ~_AUZGN\ȵ-"R@+*Yp,+EK*''YW D\ 3 %M3(PdJ]-lIZXOz$9ȕt|6v(PkDќo>gw0{p! r$d+7l틚6ő-D{2fUk1,˳0[1kK]i7/৮77b~{|/ 6B)^RhCGHNdr9wᜁ#)v)zO`j?91SۼE\xKGr :hR"}d[p%SKa@2/:u^X}La;b \;䍱td.+*>G.e)3]ce߉ď!\B$2%ߙdWFj=/]&C˾`P(DD%#Ut.8VYDdGCg]<<`ӈqsy,,Df' ףё{ٕD@/ <8%|zoLOlV?ww+QEZǗN2FŎg!l<3~qt3.'ױԕkUd Q["$D_}}mDqb<ӐA6Zψ\'hZdn>D MFC)2?j_r= ,u֧(p H# {!R&.ϓ<#ٶaX?lVѪʞ {'o?|Z$=UPM"QTZG B)˟]4ruIҢm?9֠E6$yU0kzmAJ9܌Ӿ puI*To.ƢzI&,{t 寛5<9ҭd+ITTSZ9%q uP (7:=Պ%ML]5ʯYC,ae}K` , [?RKA aI $$*:mtv8G{;V.ojg@= !}.^j@|;'m\ed zfTo[cVp/ =Fk/b_KA+W2@$^W'U\Nnh*ckEtѝ~C1rZ@qE-}m>geg-}4')xͨy05&(X!}~.Gw%-{ge^qy̵`@IPvYEzz\Ug H6pb"1 p^bc +mq[͢u۴Lyu_CVK䪄g/cjXXxaR0%E;`aT.T:tv}iRg=YegCYET SΨ~6E?>LS+m&o HL6 zMnLj6avε/=I+҃.'DǔdBņ$IG"Ƭ lQʢ_so*Y KVǶll{U)ҢbRX roGe>njDO_oBMf&Z7@yCb`+OF4ǤT #x`*DM&MdO ir"дw@ЩE*qViD/@;?dt&n ED1pŜ[&%؝| ф1i=c'/0^-TOtqQVKץB3UZ++Cα/Kt݌x@d;B7ko+J0?IB]&{P;Q2ꥋ?+]!SwCRDFmT>gK7WrλwDiJ9kH7љ?LmX0'AqBg}:~Dq;f4 }s[o@!3A,OSfNXs}dC=]A%p0e]pVEPjL%*܊3y;ym`aW;aM۾.bhe&1: ^ѻ?U sz 1@gj*YD o><R7tiͅ-i1z(|6e+͐ƛ؜-0M8tQ緜+N,i铒kK㔉$Sg71yt)W9Ã"CRː$?¿1Qצ$\l#U2RKn;KH8D@Z=̛0G҉&-% l2u)|J4qZlp-?Я{YLd2RqlϢ5" AF|IjT>4!)J?t΋+0r^-@H 7[7x5xnhE#X ]P.Tv>IY\;~|TTFzN/BJGYr ִsiC I4?-$_CW.); jcf'FH0+.' s mG& 0fC`o]']%6ܸmP ~G[/#ô Yn]D9E<B*wM؞7__(g5k74GPsΑF-]CA) H!<p=#{7X0D%Ik֙;6Y?RcV좁*6 }yF%F!U,hm<|y ,%zW /u9ߩIsQ* k ,O`4x u:-dLO>$dS?1굟 YZA@h}\QpOѿʰpY,ZU?]Ӧp?Ǩ,?r򋰊wޒB:'5umxڹpӤEt6fFmWgrhW*Q;1sUV(y"39gL'#f7z!\ rB,);۞-Ha9q'k,/tǖ7*`\^jt _S$ CQ$f:5mB t0e<2gYt6iێ}benQa=,ow=a`V~޼ P3fн3Y֗T8 q Ӣ}" uR4V@XoCdgIҽTŞ琪MC>%0ѮOD~^6_Yf@H{mN!jd" TYeSu%~+IoCyWq@e]Vݷ@EiYjjl+wuOk8#uk[02.09طq@R"2'>,$*K0q hjcS o9#J13LW x7y[ARa[c.f{(Y_=pQ^0Nb R֚t77\B,MHQ8e6R2fJef(ZM7 N_0sL$[cX&vM"mq+ֶ%4WpjGhE!*C;B"@2q0`$j՞,LFv48!Q#޺y<bG fx $8vyo֡sGNu<϶o$15K& )k[rr6T"Ɖ%+~R)ͭf;m:I,֬8leN5Br TWa:oQ`/0m'DBFg9+-:f6f6"Rj4;3uPAɛ=&!@gNKLHus騷%1-Y-'t/@@Mek;RaN~&=.2Rg k)µ%$BQiNwaL8|lIAXt7um¥)dx%뼐I=܉)I͞|u0f]b+L+Ee.%U[y]Uiف;EҖ_$Ē*hFE TFI1@=Q'Pkc^YlAmanXaFv[K6֫ȒAvk۵Bk_7' 2K%RB !y#$Zv`-CsHtFc ZJ0̹.sXNo^ _. 9TmB61(X§ݔo9(-? +hUg^U Zpb O ݵ,kcWRx&mLl{;؍!*gd&[Pݸ$HrZ_Qb7s4en/A[2IJTAHiq8@~:/S&#R|Q( %'",m7#{/ {D#8f2%8\_YP60MO5 %I"W}p#X.}EU*Qסۉ٨75YQ&By@h}5aq,\j`cy_Tj!VMQ~ rLɜP6WxP>g j:kU`z9>REsй?JgoHEKHHj)j{1\OG1IW$^벮= A&\X}j.􇃇i,-hů\HZy͇E ;n5~.L\F m&+r8&.||M07 O!M/`d7PP_(/>!ZQi׈Ec@H &8LN@%°QE]ou5{\$(xR=ˑbT.j՟hgb'Z& 2ʳB+VOҷ$aetH\ج&t-=׀]&qkժmH +*$Ff?uF^=!HCdž!H ^WAuIQ]4jڧAv}8 փ~g|׏Rl lԀ>mEC{js^c2ešݲ- Mz?ڤWMN( KD!לp~a4:f,$Y1 rƆ bKm*K8|N\Tq.j4,t/Bvqjf{6o#NqJoaEVP垟ֆT=Xwoh@4{u,OwEi,)Ap޻@\;FYqv)S@FlwNP4EA!$ȲŝMe4E{XtI{ao uTz/^L+3ɧp҉ cr$jELϓKGO-Vbm:Iغr|s .{W 7ML@N ݘgEרLA&F~ _1i>)Ȩ!g ikDfe;k:_όlop-iKofz,[r1K]b IOY x#~ RE%^zt@;=UwA] SYbJnP Uu6~gZ Gx?7 #mg5 Cp&Ui\Ƚ Wl,H]foP"p,dJ34gLm1c.޲>UWf>.kps}evx: w`ng : h =0>pgJK/ PK̛5dp3M$·NpRUMb jx=5sOG%~vp~ 4L7ߣp!ZCs \ OkiyP/9ĕ027";P]zv@qoۨ{d=WБn\myzs R g4;ٌM-: IU% $Fa5|(}ZW a*ԳQWO W3[㮲"Y87! /z~cJLЫ q;j4y>")E ub[B\+d^('gԽ2*8KM+`]dSoO58/HaWqOORPc1KJӏ \eRTCԎ3;hRoXSp- FOG3^iayמ#7v(??VP"qEZ! s"C,jQ  A Kzdϊ~ք\pF7܄LQֈ>]#ҽHZͶj[I}^X"$XMT\hs2-%YOIm*;bI@|e;b 'X=/Nʫc #(HUx9Cu(i!nZO>ɡZIrp%+\q٢؟Jc !P%22v?6 =l9歁L|%CPGeʹ~DRHI:U?y4?,HèY3z+avxB]eU֚ (}= xW;&GgB&DGT:%Ef 付IQ;痰Hb4xʯ*_3 ͤ\5 R=>ڂO/ 0שcKpc1 XpE1?UX6kH󥡌#({1[}ƉqZ8š3N>`P8Qg+UqPL;_hiߐq5} @ͩ!^Kɍ.b1r Tfexa/g_.#O0{$dLP]#f:(FTVrKY0KO#j@Q1IEm%ܝjH] 6>>}+K eS ,ņ%8i_H}FA)i*"M)g7GJ$(`3+/ʣ`c¨Rչɛ|Sr-GDTq?B$e4>pKѸaNpʰh`=('WR6K󗇹wP0+E ^6MwZSxji!b?!\gu᷐2ʳşfw%b2Χ=JzH| A]arBZ]viFL3QAOӛ2 ׶P` wJ࿶C +'l˹ Ñgq2ϑmSVBK|~G.&F$/ձގcTf nwU!~ a2U}qy 9 < UTdՌuv\k}](dq[Hd1#36KR vd_ _<#c0rk'J"Jo7drj%Lz1g _ L iRWuq^"_EC=k(X*fu.⟘viڠ<^(RI+~h4 $7B$4sCe95-Iq<=V~< -_Dr,Co!KnSo! ۷~XxudO^ svi ዢTk$,Sx!AI k`q<NzFoS7vf 8 e#NSbjP}4RO bq*G6Ek2{x1h5:ܒR]f X {)UrEL$|˦=1Q<v0t2_HyjW4& X!!MufLrLnj;^`$;ls@δK%]` /"JFjHK~uU,aVK:o[H~$opEڥZ.}-nK`PbtqjR#V~!=f ǰ<5zHz]/t𭣟DBlbs/E?`!ԗ[_a2 iCajQW dz|Qd,>_0)j7%4z<^* Q꼰\&_jdkaaL`<@zrt[7>ρg=w~P7@Gt|P4nc(~0B Ʊ&n+y@Ao<>/ zv-t՟c.61&Լ5a5Хer 񖤞~9YCOf!Jr~jm15o+l*Re.@݇)Xi5&PLb=7Wy|ŧs,64@\Ae!8WJM-*DMVU:Ԉ@'ݠ$vj>3qRK W"jv|oo>c/H=!@.k3e)AIžGdٚۋ~v~Yܬe=?[JGزBu,I wXa0COd)6`dGR3w,OT¦ΈJz^ S,Ίho1J}uԟݹ.Cj|YYpOM ~J97hFe%eǪ~F.*]r | _#ًMX}Gh~Giʂ=@띇ehrF 0MG F5_wK@xaȞ|zs a}olT {,H:QM/$ST+.4HКT by.17hjS\(WPrj0(,1$U>:獇t{rI_H6z[uCPOq;(ƾL9vBΓ[$p݁%U.voۤl}DgJyGa ?{a0#x%I_eLFl4[,ƃ ~=B₏ @Mhp' *&tm͕E3࠘{ :_*}PYRkPRۛ0󮒾& Ecs5 Ȍ-:6'wT!>vV&o*z"/n48 ջiq7 oκz&X压真Þv2 F-LO7H%K\Š2R8s%!xe'㼾g]}*jY}X*0\eNW^tT ww8y0gxKO Y͸`GмHLMj?U 5̦&oLW2D'O;2Gq>h8 st3$ӭF;Xy,pѐy֪Y+:9N:I(uC=vj疞|9>̭Kh%#3*++]&#@mk%eR9`,tvY,rƭ;8U L}sgZ2 q_rnBy0y},EiYT+Fsډ٣9 bpAyqT зQ`;mW@Ϭ? n(ن~,]K}mg'sJbk@ۣv(Z&7 D\G|=pL'No$+[3{ y".O:}>?;effcنV^9{_Gú2A4Nn}|oE2cHYHp9UK;o)&ҩ߿s+.9^2䨠S`C,M(4.KLy fS2SeŨ橌n_SSMQ39~1,k7VJtoQ5vȄTK7~(R3g\96cցPJzZYrTu ]GNV)s=<0*W.QDgwto- Tc7#@Ǔ,4wea}(v:lxI?7Z!]93T[k^׸jipI :T7^@|dvJ}y]" 莜?wI`w}m|xڂƪ(g5ҤZ漫*,w/Ⱥǧz{}1sy{NAfä%H{7;.!V$:7ltb@`=@S 2#sLAO,pHJv˧zDY8lA>":xFSظI^ " }bϦG><* 8m7yUdp۴Rٟ`M-f:N6ءY& kt勛NNrYS79b1NZ]ŏɤ":ٲ}K[lO8R TAAt]o' '3/]E d܈ !s=够Kd7 N^IVVnoXrWd U\|lQlƊmŇ'{qzK8+&ݚ 5!4p dBGT3 #%>vBFTvw4GkMt>'e j܌G;m,BhE3Uga.[mVf􌋂`J9N:x0[P'oPxGb}Ӯ xǼ;a\Y>W<#`ٰd wk5ݥ5ѩgVCDRU74\3kH7d^Eit'HkV'wx' jw]k% &—ކZ/=i{C5 L/%-!y%e )i5fra‡>rq,pq !Wx/O9'6*yqǙes;@kٮ·r*~5\r'VJrR6s5[-}f3|?mk?0D[8c1gocgrA~ 9P-TJiV'-z!rd%2lG1P#nk0W݌?klgfxLoM\8`kLP#IQ_~Dd<9T飭Nl~&g^`9g`Y2⏷_= ł&iXiFY ύ;C;ЌHou5FǤىx$!X=M\˂u˙RjV ͈؅Bt+b49_SLc6IGB| X[sqJ~oZwmJK!–0ܿKtd NF;}!\wSx-51h'.]GAgF|/#&E\P%pK{jpJPn9OSawL $((\2n_8Wl,֨U+&FS!ha2h<A;KXn_k _BϾKqB\o֢}!Y_f]dܴ '?r:̸D 74nPc18u]L! 8+Zyy^Cэ_3:= lh+BGOkG|: t{4iԣRHqN;e޳?h :RgX&"J >Ӽ.0ٸzȑN(y+& FyJ^7c6QPQT|@ >1 '^J RLx0 7_|wҨ xz5ьk} }u}{W(>hL7NrK{GzJt oP<6m.NfiXB8V`Ax-U>ק/Ui5|ʼn3kBa5fMdVIKu`rYmYuҳNoF6ÚԢ<*Cϟ`4=)E]'<"mz 1؋0R jLđb^s)&YhHV 8"IqƜD봸Zk>ZK n7k^V{EYuޓcʑ|*mZc H6nS Pk^Sa'%]VmL$)! ׆ V^ucv]eF%҂|"-ZrJ51vT;<[k3fw*~u U nhFElHjZ?e4-YrS# 78b81K}.]^ĻF!qEoo[Sw-!Q7ًE4;p1 GHwt<߆H ͮ9cu79c .[!:=R=gא|)A:y==NDIΨ91X/K6Ë;%"SGD'Fo0ܶ2/>tC6wsYP3 GcPOq^tTj K.b\h9rDJlMa5&h'/SѤu@ XMB}[Gm){q L prڄf>M!S!TmSJH5eGGnh峂r26pE[ʡ\SblV0:lھL@E]zi )RDF(RXo)jKJ #B~;f$Ҡwko#bGEp~\x %`GKnKmbӽƠ|vzܑsQ!Bˉ[b8pqڈ;jDSO nZC DF>}AuA\LYv|e {Rˈ`K#^1 QgmmUOP I{gCcY[\n>}^I"Oɹs티AŘ;+?Jd`?U`hx2J߽I9G{:#i}I.019ǭ[Fie>*]֎Mtm` >)1ĺsXL;Y)Q!HQ v&c[vy%ASr-iڙ̄xIB, !"RϢ]TD(k /t'K[$A=7VN\3.S3m֍d o}1.F/Ui] #tlDoH cB\V%&D΅Z|Ph/)Ev/҉V~IR7OQ?7d8?$"整;# dYZx\4SĂvlWm"Ά9N:-/h5c>=th2:o%m MLk$xmHt^ #ǦОC:.ȞrΔqcK~FQ G@öp S2imܹh+8#D?{KŇK>{T :s}'H&hi%UFKmEcòF扺OKIzWgc=7a*Z<׀%(94?{듯jj/mdSى9MqcUDs-Ӟq^ĵp賿婑)>vۿD O-Sgggo1zӨ E;LW^Hd"`^h">U&5!PނUnf=P|&N5o6UP[豋TbIhEXV@|>Ax0 H k޸0G`cGG<0D9~X]`Urx]*Y~@qh wp Hki5<6&8-0XclKEM͢ܯI.磩Z^&t||& 8][YU ?f5$@-ɒZť -s6{#f861t/Me)V5lmo#B(ohΧ&yb55s -{[Rg9x]x7pM (Lڅӡ@M N)ߺQP`}{@#rw{9 K<30c=l boWIi#*Ĝs/QqK4Pեa@݋inDc//c׷ôA, E?2cE-Ż \t#cpA?"Wg]EDUŹZj pa,ݝp?[10J5زfVp,&U14,mk^0{"Ɉ]gHR>О.x>8`>-EJ[`؋}jץMa lFd]XN5oUھ;<9'8}SĞ&w6 _Hn0S^sZc SzIUHDcW4A>|ʣ%]Aޠ*>/쇔X8&cdr.ӄ(%t? {fK⽤n4mHD&K+c {**={2+)c!*F$xCO^ aHң+b㥆0%%m7Q0h'ǢClVjS@h㒜af#ern}ϮhS56yZ3s_T7rk|\ˊWųuЄb75zZ{n=e<\4FE.Yڍ7kQAWbW0 j][Nލ n1SH=X ٞSռЀ2}O 3h, \zb7, ]`4/Lr&)F*z4Fk٭1.2^ `{SdFaT! Y9󉤹#E3]xyAŵ8setg摽 g"n[fzbyFn,= >Ы6NST >LΚ`6;[ 9v oG)~n䍊BBc}, wZZ#Pp?3'm>d_,~6IW %>k+ ymsKUho% lۭN*e|yQ-ȶq)?-`lG#?m ]߫.@=0U'cFMO܂^:1 rB}8$Iyv؜U4{ޘުk^É`%S_#NI<V|71|VO煷ANh5TA@xԟ짆՗S`ZǎH:PXQYDCЅX.t6B_Nxo6ryJ/j&=Fb\ 1tx|xrAY,@%RYXjX~N|Dd%EGwC#Kq,Vzy>`t .`[+)`ǒP t|UwOEVr͵#*?ڻeⵧ(4Kr|ZկO̞]>:CwΫc5wq rK9{Lo(dnMwS 81BVO'n*&KI~gs?$K  j'^ŹBi&;7ꙹ%[m>u 9'A.1姮/#uKo-,u!Ibe:Òl' |= * ƭQJt+| ] PwuY [à(yP!rm8@e7$m.S?eCCp 30xyG*GymS~+V[p ?b\ɕi )z H.6ϖ2<R_W$ cI%bg~[/k21!rߡt~}{Y17 _ËV:i! )F/ )IFH)N>N97 B., NBH*BU,.DF㴘$.\& 'YRjnj)> X"em~&/W,Z$TJP~}7ƒZh3zr+mba ;۲ `N'5EȚF XgڦK ՞D:V(rPJ5feq3nJPˢ` uN 6l ୿{ԛ1+ui.Q*WoHW=eV5%H"5;oc:nm0zd]d_(˚#gdӄ6U6}`?96FS8[ADڷi7iQc!38P34s֒3ш!S)qOCm5kw yj9zWjP;(Wo57i `ؘNMM,Ϻ4,yL/ e,z^r >@^Ȏؙ쑯q(^1Qfהf4% o#ڈ7Q(ɿMBT.!E-Q>4Cb A""` {lTlr95Bd2JUBRt$=~6zfuzL$ڒ^ LQ 5HEk,>r!NrZk!WoHeׂF"ݵPgvVГe|-~ώͺv;~wr,)Qz~ߏcY^Ogpo0t-=zA?VY=%liq~PO779r(KBpeFqz]mԙe_ #Oថn;]HhYGbÅ,yh2agsFܛLs髋_cr3LoJ`gר KOjf?KU6(h/Wk5&7&≝H:tuKE4)Ye!fx=|%2KH]|"yl}z7=`;кrAٞw\%z:uURf0{ O*!DwBa_¶\7%oU9XF/#;ER藆%\ KD BTVF{ |5ᾬì ]{bwrQ ej|F3 /xYPE$急,W1JQ`o47s:NaYaNƙ&#v#*99RCHvp^"N"]0 VsX0> . 8kzs]Z.I¼ x$sMXpaGj) /S(-Tz>LdĂjզ(@1*H"g+p(pE~ XD%Xw㎏NÌ6/FB3,~;jbmoXA7FrDqݦUx¿hCωzlxѽJ"|zs%3; hiz L3к<-M%v;ikHVI_*7F-QEⓆ@ɦxwiɍ%%=s[>Z ZRN[Okc*Kͽ`ږ՘n:cOMIKEu _$ jx :oINWiK9pJM87RGKC!QeIfء,5 y,~~*_B=s9l)paV${wli_U-XËkC5#>B;#SrFܾwzJ<R~JjI_efJG,3DĨX^[%n$#1&m~mtYp`'Vqo]T &1*dֲ谵kaɪUR=2|Sߔ^., uxS/B3gLwqCegh(OIeJV yݦ`002y_K}i-ȖFp9ABC r AnqwD tI#;6sW!Bk>Oh#5%~Ws)U?xuDwo"_oC_z0ٌ;7ryzjB⛘־>$QUDq]?۴:SiD>qKr@M &.%NKL;R#Y !oB^CMOAbPcoh.\5A2V4!-UGȦaAVl?w1{ f"N!}s=$%aḿ߰5>ҩE) s ri"1{GLDdg9>e aޗ͛|Gѩ7Q9rvh A\}3H{m~jR {R=KmХDkABZ@ē^a, ~{Y=0]|30h2Tq5MY2&hG 앝wG61FVh]*t'3 [It6%.]W9sj !uPO2p֌q_Aɜ7ӓR<1 p%*YqT՛1,;M}Սk|^ȴ+ʪ̖JJ _vWFq;: F@2J܅bnq}߸Jb(3(G~kebmb~aus/&JXX4U#bi18G.؄T?H[Z?[^8)MQwˍ]5GT{@ĤGZV{^P&o8SĂ8=}VQC1%tRY>jh(c[b(Rc: K9ʺ-K4e)0Fmi1w?zׁ-!ud._? Q !sgoF$ j?M㎻sOF>AtXc~)_o K _rrhQKm:rg#[-Fy[{ [=6; :i-\;)K"WMs17(>so\eb⣘>4;A"bCU >nD]7laZp9 JAJ')5K}‘I$83^Q=%Şa`W-zGɾn^ḛ,S辛pC^~&NyMysuJ_`FEl#okLry3jFbX+~tou|se *cK,F[A6ZH=#Do?;,bp&%BϳuWݸwa572gT[T#|;NuTj'H =Z>\0рsDIa*Q=To7P*MQY=p 'P/zl4=Obn#D:ImJ-ւ~ކwi>}R= ҾTիmSlwt6kBV;}#\+,hLlLP*-nn^liȄe[B2d: 9PQփG ;ݮ@fWz~0:pMWY kK{Yj.bFm_I|i:n7{q~k*`5YBqQ}GZ^njDi5PJ5pf&V3&boHxwdzO!f@SЦ kdEGzcnQvEN'v^3h8 0@T 9=%X-3>x7lPpzݕ~ =|S't})ѕt4ţ B< /6P1O}˾H)ȈO_6%[~)"eЬ>/ˁkR |o6&%j/V+zGE;ґ^t  ?]ۈTV-LEtpn슼sj%ij9avO.!L8?]ғM%>:$$J3?W_u yw#:S?[qiA'I6Y馉nyǟ?-D[y:?c{Yr{) C/pI5J!Z*.9NP'@4P_9! ak.#˓ dG,"+/68q+L" ~0zn@w?4vWo^Ou^'Ț"QeǐNp~U19GpA%4)Է'r.)2OhA^@U9@NUgaV Ӹ;3$r'-ISnQjj/̖-521:[~aZ)˼LmQa~E| }S4]ox})C&T=MR1m5X>MΫEPV(jr7a"Ka[fyb;Fx. :‰~'mG޼lXՀ=[}&YI12S 2qRP`|} C%r%V;#|Sƞy/@w‡lPe.Q1?>htœ[L [>Yqw:MCׇi8Ѵ$~ixyS@?#8T64|:Tq_w/)J.h J%7ZZNO1Xt%2盕?uP@uWYpLi .<Rڡ깓{6KP@!z!ˮhl5lB>%X]ۭAۣZ'zS̬5|44Vv;6U^j٦ &NE9^Fq/]F5%)]35oqːsJZewN ޔNw%m*zy~& F>jblۨ5@y-<(`AEܽGhB<"Mu?0UѾ3%y騂B ʼnh]aG8[ôŶӄWbJq\G1#ЬZ;iM857ie''KN?=4-y#bnf}F_>B).VlqFO+unE }ڣ 9<t|쿂! %; 7@I.`Z̄˽XKvTcj[Uz~말WJU,x pmWN@\RB8x J$p}«1rK%heAz՞π&7h/wFHч! ѼچbF*#8q \9n;7cBLl՞6ҩ{WЂ]=^d?(e!agRl|}DoJwno>^z 9NKwsk˂5ª1yBu\9՛$di$W٠{ ͲZ0t5q[57&n5vlOa JȦG%5EA9q0j3r:/3ػe,#xʡcg~9 wְud#v)ei3O{fMhc"$y]CYikLr'({@y&P xOHe'0,Ci@3-  ꥼ,iLP4Rߑr%4 6ړx%|r̠3Xcql4CY> kІ`ww%76.O*,}#3 q'(Ә+ih6C(>{E2bݻ|Kv`46 /";-;А8a qQ!2ܳS5^#M7a (rXb7YmBdZ8.cM*{Px Y96.UR9WӹcA>l=- ZYdUZ}F/1פL :u5+Âu?`ܸ\Xo[ܦww~xdOmEs ^{ ڋO^[[|A| K + L'88 AYONv߯Z\мƒSs'h:꫄W򷿤!?u7] ]SO0QrsX>eoMs\+lK;3}-@zX&b=%6=TN%Xj LD\Ga)I(@y@ND%]}k|ʮ_qMջ@pe: ODLNvU2?ǂMOv:y.C΂jo#`Ruƨ{Nr!D=tQDhTO@KwOb"e\Abםx$)cy^fkDE(~"Hï.lg؄"Ṯms[ղC50Qd1|]q=Aטc}|5Poc-/) #bM/2%P M=8\̥Tb M{F*~F,nA~ɑgW:QV:(Q]?&TT2UKMtY7Rp6·;jhDOlŎ˒7Aw9/tJJrt Q75 ;?os[M:}}R xC\wZyL2^ N9^D!6]dL{k͇T7jbb>}Sh]b[]K v*d:M4Y.]ub2  g+#x4~V! GmA ΋u %q~FPA^dzF',iF+~7Jb%$<-(|Pݼs*TխIDY0faVSqoP&6wb!EW )1]f^2.{lQ1 O4KNWC맖ݍ[{"$6d`K- !eݱxѫunU9fΥ=WD[C[u* 5YM͗MQ떧\@KbP:޵DJ_*1T~y&'"_ wVLpWg1ϐi/Nr#b"eאKsPZ-j+ ]U'2֗P˝b:osT0O q;ؗ"(?pL?| MN.X$xf|6Vҍ·QӏґZ{.8c,n/1K{ `ۮx*ɋ;Qf끰Z'W҂$=ɋV'$2txlKTdga/d;-rF "9vйǕ{\{px7CH $aϱhI"Q7_+zq&MK٪4t2{aI}X䝠 է.y` Q*,_=nb!%ڈL"zFQo #M-_Db>˻S\X4٨6>9= 2beE<La eW}X;Mkx䪗_zuY:y`)MVz5$KWt8`kBᅨx..a熎Is@y {EFFY p+cm~mx#{f}p:m r-͠2-YF/IJutLc o뵻 @ ahtk`^PC vlD+JR :.چi,.GP&fw7>c'79̚^tu=")bAR0sYOXD'fp噏%1鰮> 5P\ b^:i}Վ=YUMGKGRiC6 O~tN/P#F 6f˿'VM4v掛0,wхB@ƎID Y ռ_&owf WY8C>𸞴nΧ}gA+Lr=0y%Y4$9KI.O}KJEUT5P@PK-gR,_}HSod?!,GQL aNg7U !@.kpIliavcvza4yM8_ȷG[YG(FJ[`tlhZOIDji*mꁎW6)OV J,%w?o)Ao\l$sۯ0jgv&t&MU7@'<- k$X¹W×[dvTm\#4L"2IGnе&mkTưH}(9JAYz UEeW \uy{z/IQJbF'֓j'"(|~]YZ֩:E a>>tHqlԺst0Hh:!@2,?8eu~&=(@蜚0}r/.}-##WŬ^MNI؎I uF;}x2ei w@O\y^ji)`EeXΉ#ͦS5G|z9\JINn սn{WIy60*WeybՁ P:_TCh4B0ʬ8 B`Fp +H@r|z_M\̓Y8'4׾( I´=v>a>B4 %)1PSU r $eNvQ[OIM%w)SP׺r& yS8"!Ma!|3Y_'0wYu_W9{J%upK1#rQ /U =G3?ʸ dFP]=I"V*Ҽv|ijp,?])vTb$y'``XpJPڌЫ3oAj1/s FJ8XQ[hVLܴuq6+U+|tVj0o:Q΁H07Gʀf*REOreBcT1 u"{ó0`&jrtwMrGk.IȚ lښ%X{wD'єW vk-7C**PQ̃M2.T'uΘs/ϘOy0'=^&1Nww(ob /mη;<9E 2AF;s8*^{jⴊ.#LWM2lR66o0 u(b>}O-OQI5y(ѳ<%ihn’:ԣcHО~ (3L_ʀW bU$6w |"jK+,T9[ZLYF굴w Pl]&7Dr 2~lēǮHdecC7j!}fŞ֞gY!9;!U<\wi?P:+&ksD8#|f$V5BR_^pC|G{L>Q2nz)Kb3ᙂ{W5FD ܍):n$[M[:pEJ lYVʏ yj>y7j C:gc$b0GLV6M-SFɓQ;!E8GDZtF& .lcj _%2zL{{l^oݞF Bmcr/uunw}FuzTTJuBیR8,q)!.n̦- kʵM%6Us6bi]8pʬImnj y+zנS, 7P$zY!NZ{L[*q^rL , WwZ6iKm*?‍<=G0w⑔Qj( ȥN~#IZ!ynRQ!y_!! ^ܷ|.|&IֈqkeG/PeIK`r2}*K®]0Xt!0F0QKQZ4,2(SX'|_Fr* h_.?H#K\RD,F <QkT!y=OI~nC#Z[?* ߘM[GtS %#Yv20Vʌ/ }7'ΞͮWm ç[A't}t. C/Ѥ9 )H zrKZt0d.Oі1@te+!d{:LS4Ρ%(+"\ͺcY 'at%`5%:Yb%?sqX3}xgk@E,F(@2lkfm.Ci)f`љ(6{)ZAO DYyJ@MY;1 {dI r/2NߕhʥwS,)YvX%x<LVO' {%1t3gptwϩ`r95XD$*ƤX6rF0 wEw}.~aɌ9ӝXik54^R. )bEC|Ve.?h1*uzMH;}{U]ȁ0޷CqV"U KRVv=7r p 8ɠRa7Q :L?'OF)^OcMY8b)z &];TAeԣd˰.;&]%2sփP^e]%#_X*D:[cNG DNtzm ^gA-QKS{ ?XmYd3JS~s*b'%O99|#A,0@e,,'ѓH0)O)fbA#,O_NSTUGb3g]Đ"96 a'$ZUq#ck8nOM6XVY)8`~]iR_|xϚI>6 -hpuؑۥ$FꎙShL?_A5Xō<](KŒ<_6R#זdF3("h0>4!o*vi0±<ŵ$]*lgEA~;_U{8l -vX*Pڮf0°қ7Д paNQһ{aj 3M`!Pg3\ ˌ:9&x:Y΄b'٭ Ǔ8Q)i0ݫeε -'Zda5.+Jmw.~YXu4ǫ5xQ?v +1\0 F;뚚T|O?;_Cjv =?ZDݟ -K&CIK)ܐq+".vv0#Ⓗ̻hPE9=eOގ&"S.S[ Q}3GMI#mLobRe]̴?"#ocgu͢Ma/ c$Y@D" ?ju T$Do"ko`UBh\X>yl\V£;'g{H.pݒ69r`z6Nu?:=HvBHYexp+,ʻPɾJxGO@8%vxî0rsaI"PbO1^hPw0Mk}c"H5NiVJK$lPW!>zWgT{(-P>$ѣiYG1,5Eko-}+GVDd2.#*zսo&}mi!@x'5C>89,ߵ&7@Dxr5Wc_"Gf[*.8Xbk#.= sZ`VRM.+[ Ux n;FkYf]*q)<*r}wR͎*eGzjg޷SI`bF餯5(kC+t< VDǠKEL=cjh ?hAvxNB&;N6k'oN|A}_L=U07Af6HfB).ѻ 76v@Q|uVK/8*~F57 K3t}tS`ed/8zRw"*e SCțr,L>-Еkh\U Ztq}ݴr|Qҋm8Nz["&} /;aw%Hxs+d.S *c+]2 Eʥp K HPa3aBBe@GΪJ·b8HjJ1U:;hD 9= lm"'_J17 )5U|cE!t]q`P2Z}nnаI;qO0RUskO'RhqĶl&?u @:T%4)(Jxw!@St)%F6Z/ܡ7*UfTgS0/o!3UV/4mUGVqrvTIˈڃtbmi7:2. mH/]~zy I9?>BY|^/wq?$,E:$abwS%}Ou;it+)[I*Ӷn FUM¿) 6&t|Rjuzl/=3-;kXqE-=.)k9 g]bUꉙjG9-ЯUӄ~%)EXe@rNܞ^ۣ5[U V=WKG?o$._22OCx`uEj 4,W=&x|29fVGk[TB'%2:=@4HHkA u;P͛W?u/s˟𶾻e:~l/pfoԉel֌4턪\~ DkQI8dLV7 j5?O,bt{LKb+Eݖ>bLM}b&Bun!^S [C3 g3P0^#2S:WZOk.9 OvNƒedky U"vbZDJy/݃P9kזD!ٶA4NNÛp b ߯x]2 qDV8|+UCnNStt&BjQ+48zWժuһ 0 j^VVޠs0YPaJD yE: R ?]6O3X%LS1HٲYեZ[ İj.6?bYIcg?KcDO8'lwƥ?!*WV$ǢE 1r$Uэ ;*1<"!~&k{F;!8M#R*{L@wq v'!."6zG'ˣ8 re˝ة4Ű1֨Mq~EI5sjb&[9cTaAo5^W ؛+K])1!KBoPp^!*b/HL.6a;3l(Ó4~r_TD8zvMi| W+xR"޺U 6W$#=rzcn]Vd*THqcDjT="]4uDV;8+0t)zWP LՑg?;\%@hQ+M9~@$F;2/ ͤǞ9e""R^J '4\)UO㴞'[6u&1^%1ЗB7"0l yo|VqUگ}6/ڧx~ZmEG)FBJ }Ɯ{5<=R KEuӳTV|<Le ;-oz]j#?As\ch_*)Rfcin=(P|`]a؟bbqّezaY 8ߞ#A љuj^/) ?➨IڧUGfUH$< |dR[QN T7/iXQ> O9k0w)&id&a-:vraPndʥoJ|n^#J(bx=rҌ*lAE R3|g f6 FBo$ B|dNJ(>EzhCFE Csk1 +ϷDI~>We:Zm+8eKC\H$p |[4}@$sRC4ɢ ͭ.YdxHPƌ!dX,}ʝ9铨@p,Ffw [Mk24ƤҚ}y#ȗsDg iHE[}gE _ dRq[V}VUVh2.|uc a\K7ీ]+;ƪ&aJ`o[gM_Pᬛnad.THYw.H ՗HOfN.ufm܉&w!sqĄAT_v}AH dߞ9/{( y5徚us1r!Ia_ladCQA44 oDq2qMrJ ɊhnH,dX$͠VϋH@-([PQZ/KώTU |-YPm(``uY V%5Ȏf&])ay,N|y';+xe|Zfm (ne|U~\iRլ,.CiE ۨZ ?LG!o9UL" bf[tsNڳ@!#6χDU9H Pg?/*>?C|-(8 W:=+m[pu!<_$nvK[()K%ÛPw jK4Bq"çC<ooV<=Љ0 sH8A,]-W4HdVF8bJ뒣{9^!H:AĤ wLeMI;$erv(`WP蝘aVrQJG˩,lfAB xm ؁ۯP0Qn(=%\&)V!zs#%m& ֯abPK:yA"OΩQ+@BџE(F*qC[gJ>@ A1|I]zltY:ᮿKeZUSI#IUۢd$lVaNg(FgPsyO4iBoki3md~d ُܛv7 -z-Y ;əC1̩ccU8Ò7.éI+/Lo+t]f~~\2Q*x mr|/:]<#Ԡo{>a;3-+-92oP`[O-x+[[ݩJ'S6Yn`R2_miк"<nXTld6SSH+rդXnkyV' Ŗa7?^E繠 -J+%6y7 A fMxQ0gI+ 'g2U F%RVtԋ&-c@oyG=J "s68&J{2#Q1/ĥЮTU/9yz&謬k09'?- G듂*#( f49d\zގoc5G Ϗ.V'*ݫ '%rm@(=qIlf3~rdaRlސ|cbÝ2-!%Qt-~g}FN~`U硇Fb_QF8ZMN nA[TS_{;p{A|2] r=x:Ԭ?oWP.zl? FMSg'SnnQuKH8ԷS8Rg+W?q|:-ǎ@d'~κs-+t.} nA,7U-b$0lsڞXkm)Cd_Ƴkp~hw3cFN/=Wdb&5&Tdm:@&(^*Qޤ[(£{S.49_Zܸ[ SĮv@d !;l߽}_KkWR*$#om[},.b/DZcuM;]t2X֍:4J<= W=nω—ͥ"*kFi玅}?#IS(:>?Nz%xBEA Kݿ@);@#@o4+!%&!@(Ἔ9RQ"oj Z sWY] նͳ׌LHf6?58q_A%31rKkFI'1UnƤֺN_嶪TYJ d۲}% ]x%#e@S QL? 0GFl4UlwM-_ztM{S$&Е2GbY[g4+*q\1~Sd 'M؊ $d@fMKGkr7)ZeB)ލt1u6g{gCf+ ֣P8Ѥغ"!z(â0f #]X G1&|^Vn͠hrM+O+(BCqDs!O֝_J YSOrvo%~T/y,Jصtb-bJ壗xxOlSlk$g}QAL~ TIQKv(܀)d~\HΆ218O6Q@*/n o,g8tGOP7@~Ѐ,D;kn"&$a"ȒE Œ״ o"C ,-&?3(;Ė}C.TaPr͗.+1LJ/[ 1Gn6<¦ps>p0"Լ]ߊQhxS2hC7G`z$DL Dt)˖eȓP vRa8˽_`÷Y_%[ga}n%q1h!\?=j{]9`lop}I$ZNE^Gx-pQU;]%5 zO03+v}i`n. ]5HLbvoHYڙ6寫TXeo0?'nMb=0Yw b0T47{GǒP, VpJ5'*5"$c eK%}Q3%ʗ\2ZR#L\4jˬ0ο t*L$y~v6UۦBV>*x͆5<iY^2io3['[%4~L/*k-} Xj/8CK|`J-Ғvq\Ѯdެ|r "d0LO).y+0|3R id$0 /Ewkڤ?i].R\S RT<hPns'S]m\|??VURj=q~. 2YSo:l Kej,v6WYcYXp+B) 꼇RS)n^ͭڇ9v/-jR5)E8~m tBncsQ}eZe*u8Gl'ǚ& ^ckG~eueq+w@ycAj+P;eٓ#"4sS!+"lP\mtђK"(dЈ# 6k=9Jpod:Bl#[ @|3a4sbL0 WAy(9Ml=y*l~֐JwU HAC`3+|&ciՐeԂt0 "yĵg`&L眗=ӹҞA<xy՞SQ ejXf 9Sf*vS#anj?fj!vY)p쒣/d. 0aFӨM"[=-ny A"+`b8-1 >D6x~gǟ7c~jz8!fJ`_e6aY8ګ#XI&BZ|39:J Hޭ:nNU=T 5k? 8ZjWk$b,GqJyT kڥ!Z[4rU(,)cbWx?A`x[`(HU(r 5f{RfDCe~L8xXy&:8(J fF|l"gh4#RU=FsC_~XKAIӪeV:@cvwQ?†dyѝR@O];lR[!Yɵ?AIC Іh|:Ky(.-')v$ŜHg4֯c]x3˻Δ eyf7Ω L"c ܣj?B28oV'tG:koC61}ȝF'rv@+k0J *Gi1fW r`N}=\I׈j2F{ގYdK\xN)q6W}XaBȷEym\uXbe>ۜJЕOMwj6Gœz~ʁuri_M qیaw@flĿᤒOf9%JQkZѩODCY'%6CW|\E%Nq X@Q~ HAi /9o;wlNf^ þI?]܇ e/mBTtG$L *aL~@]J.\RCNg. -{bl۵k=ҵ ں=w1s"; 2 T-$Ǒ:d; vAi4Pb9 {ݕLDL=y]˃l '@B퉴[.%\WI '0M'n2qHhGv/nI7E+ Uki>?jg)4օ ʌ*A浹OZ0%\59?v=~̩=]FwvQژ FiA8L<|V]V` *t'*I[!&F s7TT/`nkL<1}j| kQy L% %4d#(.>5+ mkdt2&w:ϞY b~tԡ6VBiPKiGg%fi3wΠDߣ-R轺>Hӈv(N&NibFl,m_%)EI ѱ(^P7>??Pꊃd0g~ /n嬓o(٭MD=}v,K"De ϊ[ttO*UC=4y5` ȧe 3t 얺;C ~aNNJӻ` LK3plIdtm~=N* iMZYJ/kDh璸 ڝI@HkB7lX&qZJX,nl!EMeZ'[zx4"g Y@]!}-ٯ<JhA9GTFXIx5в.ZoUi&⚖iug+je&knwM$qw?C=ى ˲c8מ(9 V01FuDf-( =]fnKISgT1PhT]g<%j A/2[: |o|UXv\\ reM:|ղ~'ZIEay-fbwG/-z=Po|Ufr}Qi)e`Kk0G0M5y\P6@e{]Vf]"Rce[5iTQM $ǐ!m[Ȥ|gRgJH+Ѡe&EVŦ01޶4t`C">VwmTճXFS]IBfycQB' PaaK cY>pvq<]T D|h¨MlQGFj$w/aHdU.$*[a2T(sp˭Əצ:3B71V`Ddӈ,SmUO~s|M ^@>ˣmǬUdʛ+s@|yQѭCF6 0K9gB#̦.uĩ^f(Dv´ ¤.àZ_T}r7zm{cZ’7&Of7\W2@L"Fc#g'0*|K`p= C$+ [9tKZ:޾ճT665٦_=]COȑ }"|M*|'Ux[k)u+EZLb4;Cq89CEVE]tQpFOiP꼻t V޽s[JU#!Ub"!Nsbҵ :KFH&RmW/<.r&\dB2—^,젖u}$<\`^+.UwG(eƇ04QЃ@"TooXpY!nmjцpqdּJy{ޯVx=]8!Y\<"}AIN0cU.N]'v_`isWNMFO{+Gѕa!k htB WAeL\-*i ,niޘR~F}˓ "͊|7crĀP"Gf1Q$yퟸ /Q!׉2N)3v;-~Ir lR4 b"&bE.߅̖}Y9?N*:eYXKk[{峗OAHy>*_b,|r໚ˮoz Z psXClD B` QHjv |O`H=';ʲb|Ce-^wV= x'W0:(]_zR#/ Aw$qRi00dpo/uvBߡ[Y9 a[Yʁ)l!giu٣?6O9+ȏTxK͎BS>QnU7ׯ)RVBT2@MqSp5PwfĆ 5HCwz}Lֶ6њ0cD2MdXҴBe&oTw黣gN*zw2tۈ{i1ySe X([:aJő:Hzؐ?xo˘jHY =ĸs3’1wd(wW4?-UKO:ВI:b%!*'sKFnC}ɘ1YQ |$=j;%Eʢ RS(v.zGhֲ vL4Fv^pŹý,[2H`.$*YlNÒ/(BYnuN*0>1"Ym$?eg(\LWmW6C"lEg⁥Iɳ * "Q. r+5PWW[˰W@VmC7ScND `KR+!2$ne(frߐ +TP.53*YN7A]=/,/tUe0i@~Aхd C|`$ލN&$pvW$*BMmZ0 țA!\grAiý uPw]5BkJ>=3+@1@,5Jfu!o`<LAj9\?Y$o.4ߍ*3ho=V y̅ |_GD^^d*: GQ<K:c"*sMѳXpgNk17}[Z .BfB!'b8\W$ߎ@q!Nzƕ;OK6?P~iv)kO}AmxTХaO,6E#ruW(LPPvO#xaeĵ5ɞ,򣹓[XOm^EVjVs~۪*s6HpqF׭3О hV\>.V.x:n7:~8/bӚ@pTfh74RϬEWBm=L6K3#luZa$  Fy5T >MI xX^RϲzRbDt/SlPJ뉬/h!}2:{FT78>zG5E?!N_0Uݼ c(CMiA ۟c7}拸R8cwk>MšEbĻ[zՙV8V#m->QƐ)C"qOߞ>X@^^/ ךd&56pUwyU^rC#]'[Wnr^b}tz/ɯq=bvTgJre&X(]:V#_MLhN NygV)*bV:xLu1I=iR(Zvw@rP`һd 4o,w^jε+yKhedc>E^^/Q)k^@hE񏹸Wl* (^% 6aQTXxyL³}Ti&KoN HJoj?2@ϦU(g3"C7N2;/8:veyS9*w4l?\IFm:j0bxؕ0) Py%N`n?{l'n݁|@L+8-T,fx]uႪrE2*U@*3,dϬoCxkyqQb-; -s;.*M=1^mo)H ./%| ϣ|@(Ȍq{D=/ ^wKnKvA$^x\bĊ$Jťl_~iȥWLs%'@s0$_%qוe[4DI6Â*n@u!1Hb'AFa1.37OdX•[ҲDzB(N3'VO'-[;h`3(KIUo*½IIrmfR* o5KX1d%xq{[:G\ʼVLP,E?1Z7.%\z,22h#@>(D AvYZ03cc@ 'wgx0byr zhȂdXm,H6w:B !pZxZ2( 5e}Ij4P n_h՚wX@+#aBʄ [OˤbH!qxu3*߁@%VūkqE}Tqݚpv}H.,H8Z٫9<種 "'L:MQ$pg > ꫮy<2JAV `=8ȝgAfp|zI!J:.]Å%1'e5-p=_>",H9UdF=f%b8/==½J HHӘ=KCenan̮vE0?hOIDӦm%QemƪDZ)!r XߑY t샐mc.k# ]uq~,.IqֻM^PWW;_+~=%TC|9nlNHZ4xf#]Y'2L$bkNhtvr M=IM(얫 a: js^IG<1erkbLnFY-'EcT E Q()uK>ɿU-\FzDHZ7GvڲCbv̥BE> Sgʑju,/VD FE(lcWQ&X70@^ib崶o32vѥy+_f?jL$5( {m  θSSA4ք{hfTuap]2,;6*[-T?(ado6e*U}? oˀصldIˆ~B\I7N60,Ĭ]ȀTHCTO \/`׽!%jAVolU[J9[od\`W`WmEz5@P=z2qc#8<5Q֭'[fHZqiG6MDHlSC9Ջm$1$ |1tȫZHˌS|Wtl;r`Ðuy}UZiS, ;FL=I}[ig֦K#Q_*WSQ f)nKjbi8 ?]Ab̡(Eb 7.y$7tCX.k~ ib,f?|HX_} 5ӰT Ӱ@@vrK)=ٲ/xƠgQ/YF=;O}#"񚤍8m򌅣 fXP"'X~b![zU]3#XWwv_c´uCE9 oE a=;7Mn 2štK~eƒLCSdOqjߵ1}0Cqչ"|mR]aSK< ly}CTXŊ(8*?WuO.O GS$rЧb-hEERsrG$(n_%ٗSك0JI{*v\leazR/l\PF ar467dZ~thьA#9}+h Ӊi<@= 9/s>Ŭ,8D4fM2?>^NS۶?ހN'?R!?uӢ,mPǤIyb@mci9K׮u}Pp) Ru<׷ H,^/Ng dw'W{祮sXw3:A=ue#?ueG}ܗTREnQH";~i>&<®ԛ?'nj6CV [r8.6*@VC'7؆n\2ǹˬ.s^-ӒT "^j@) RU^W̑?T}rra}Z!'JB,ye}JnOyM(>HH l`s@޳%ڥ9xU>f,ϵjm5MpCAFK@@ڥŚ_u奫~lEnܔԘ56yM T"eNv@YXi5&$zcR,Z,mkGThha.?kaJHJqhhjțGfۅ+`)ZfD/n$n9KˋEع}_qJϖqzfV "^;OzyvLnDnguvR&yWk1z9jF6tyl6As}R@bmԡ ~`_T>rw䈚x * (кr #>g{ʘM5=FPo/[I-,46A+y/˨:Nړ!`%,)3/`> 1s T3_X9jpbV@N,q<Ƴyjoˆeu!C fS* j|8,*iDM䏳A $P!shk)ӎm3᣹ME'ky!i֬^ֈӲyz)i4;EA9Ck 3x<` (p ,ԥ5vmuRE#XS- pcD@Nx ܷNC߽`GsG䞛=Opo ߻)qSA/^dD"!meښ޽_vͮ;-:n;Rd;۞&ŭF+ݶyM|i_=L/5nqwhn ESV!,zڷbR{7jNPN+e[6>d>nen֤zYOت3k= zz/& E~-9*$zg%oP[A\ĵx"1ʸ]֡uS\D '01yxbI3\c,Z>8gS~Vye@աvKl3i=NDC5mU @Xyۨ4 Yaߑ]X 0ce[ĻYXձv&0[ȤE=(R'RAiwt}c5YWcm!0ٸHg޽ `&yI gkѣV\(Eua1k0览A} VMYNF.gqвi H $'c>N4g 0?8\b;s 'b?} rN%9_֝3;naosO M̶Z2>u ͭiNX9 ďv8!ؒTxKY>Ws/S+Zp F޶cOU,403FzcKt#mI9+y08 4pL~B|}nuO'>kEyȷF o^-bNz7Yw9tY>pvT6 Ԥ.S-m?(L~Ă:Abѻ*Hjk?>)YGrlGk~(}9*NZx0L[(si:t* 5 E{][`1>)Nq-.֫!bOSbR#v9iJ9B_6ۘ1 ,?ASVEc9/WC4 ҒȦV@ɳHE/0bVXDf?Xazw6zDʻF.wGٜЭjKD"Z/{'aT=|S}kgV͸q4UyE8rϰ$q-̷˦j9is Dq8RA76F($if:vtx3&t 4 l;aq2r!׌QY.F76?(Eys=h;Zl G (4ͬR44!a9U,ڀiU;JӵkL=qf׍kݳQvԱͬ9g}QNwDFHm;Ujϩ޹RJ7pt+-`+`onZ!1JhxL'[oӍ{\1CقO=Nԍa{iVOn-ckɞ3IFO'Y B>TzoOy]sŪkbz&Rr`}EȵH&^X]%&/}_| mA\Rȭ([TnB:ĕ s#s? utd#p/Y˿jr.]9QҧD$غY2 \ x>EBd'+IwbL9&&ၭ#\=YZ ktB_N͆R H Hz-?&y' UKqbtI˔S (O_PkK8c7N]U.ܫj΂us\A$1F539dp~ּSEh,#C3x $PLiO̼ͯ46G$s_vc=8\5G`@MHFR츪Ae>!?纏hdqh~!adַ^Gһ?0|¸,Z{@D:x8?"5c( [Ywnh-nV=Σ'M [V]2iyv}8) k~T FqH3h[ /.\v^K˴3=;;ܬKUG't56{gW<J" ,a)/֣~?IթmS[]n 7]6ya8ut|ڑGU *!UL; $rb8~ AͨI&~sO8USeQɯVX&}D$4~8ac%|*6{8{'1AE_qBPClc@ VgRuu^zA)MF}jB9α_egh %eCwz> K))SL)xZYX?x T YaAW IVO_˂eZ+<XC\ifNHFF?PiM{x[̤4\5# O` peΕ'߈չ!K_AИ 4Mο깈u{*C$ŷSh!AzLelw\67D;dXY'#hO C׶$ѶPNOe>!5,qdKY\G̈o /Dk2՝"'i)be&৉ tY7PIK橐NwZ]YzbˠV5MPa P]i M=?64+DFm"!y"GLXOqd?"9STnPA%0e%:z`7w */I·b U@J1D QQasE r^;R-: M5|\uK7b7y1Ǥ쥫>}j̧u|zmV+3/ lHcR.FZtmP0azn)lIh^b@n], =ģ|\DGSh[/Jͻs]>Mp/<&Hwh}%83Y-eH2=Kf ~~/9)'}],VޭU=@0˜ m;c8LJB|Q׻4_߃e v<p|'Na5ز~vkPs,3گE$;%u!C `nMWR(|,A w}$hC G"UM- {xmc$͗ӰeO!x [S&J/69C kRxL+!> 9(nVJOF#3 R6?~#d@,O(jG/V:7tWaxHFP3񩃡R1g<47!Ÿ ;[?Ed5Fn$fNqGAmY~zk>H}UeH{D>qRpS|a@2=\& Pf3jVb4^?мTlj}9&W4uHTXC2.^K~$~"9re2c|4_f)J pgX\p`|&ܻQ #ZSHoW3Njz ;ϗ茒eaPvBj91_#$,"[Baeɶfi/omb[5)d}߸'tW1e` B޳lN\;ЬzBd1% < ,!竞 jE|ifjEDjgoK4~m$b{u8,{mڻfߠ8(n ɢz@Ԙw27a|p|jWr4޴1ox/`tdM'eldiPM4q8 7-2ip%5CY 8}72M `0ް gB{kwy9:mI?M责CS|meW~hš"08O6zn-賧g"\CC3}A|6G$rL"X'MJ2H#[v3|Ѳz+ŇQH{ۊ48y `[gUWθkn 8bFqQOm0-P!*XxON|qAz~Bh5'-tH\q%c38uFoH>Y8ɪe˼7.i;0䲼x0{)U`ndPU"j+j9t w? hc޸/ {"0ARh6-F9-*w+5v=J-- }Wm|aN*-m؈'Q pV&g}MR SaAb|D;c ZMEW7E0pd W\zM*5X<<0Z /ifہ"^ƪjq&P'og#x m.}YFUZURp[Y(g龕4Yc1 }bMv^z=}I^fEdCvB—@mʂ;hv/CQ6 yʻک"/,[H͡OS?F 韏U)G?FiֶrWZ] -Q䆾_}{ɶQƩT@ k _-\O c9T~^ 9>x2Ntb+o.`nkf*tJ J/i[yWV"'3=!vFMNE1B,R!5 v%U ,3NoA֞YN&`ZHVZ7xZ.3^U"Aoq'E}8\iubl "'a,e[N"V+!~P4X|5SW#ĔZ L+U'i6vTcEGqo vb$EnvܲIӈ?c"U[-ί`iwQLKbi` ;7TB҈l=D(B|=}6^ޑMg.DK@iZXɸ 1;Wc/YFG]T#?$ܾm F#:1FNdh3\T)A5==mݍsfY[٭(; . ži}r -3PmC31jWr% A[8ưFqvt}bӯzxЂɉ S;?px[2c{AV Ǐ(`^낭\̧8%UNhDa5:(-Q6yr o T9s#w5#CwJOa@^^SWҧ~0ˋL I*L]zfIWIc-oh,kmh]OxqPg YjȨ5#5JC6Seu>S TZD%h,Bfg\̑YƿeJ=|R4CO d:ɮp$'XxaVN@2|%?6#J܇w{D'4I||9R]ӉX7Mu/Irrf',ecQM=`(Nӊ )#E\t=sH)9\Bh?Dy4tRw9͝aUa+%~R& Ŵ#FsqAl&.Jf\7 4!層ם,?tMYs?o=se{!i^[#0Ji͍ƅ$u_SUb7WhVǖG"bƃhpdg9f:ýڊx*IJ4 )  3$>rNw!DD[ R*04LֺVLc'l:_pӇg3a}L%*7J2e%f)S?P =mu˔ph_C p|gSRFkMw#2JvaYi-{Iɦ{lzkn UM'*Hyk nm@YƩa*#0QEFA VS WW 7ߩƃQwנR7 $O+^QC]o#0ɢH5D[DhR"K@8b3EjAa`BĮl2k Ics }~~U12+Gءlءoi' z¹b1aS _c T x2EWF?$9d^ԐJ43(m H *PE| V\>`)ɕ;bnò=*;yl35eզ՞!-0%)Mk07ȫ. ?SVq*H s)aSK"$4Ysv3KxfmHZ;V}۽0"i@up Tt(2;7 Gw"J@-N#ˈ9a}QqDʭ[+[@~~kVtIødGVPN%wc~7}6u8RNO;}Uo%onܒO 1|M.O݅{lRz )U~[ч3LA wFd)HM {%79) 8 :ʭڶ|5j|~Ӭ5SRK Sʕ &LN[,T9 󯪑Vkd |`^y$ϱq8`-JGԩ4[fY#H[%7`ITe19wrxG"j5f 2ШA< X}T=6 8=ꚫ.@A<0̠ꌎfc-Q/j.ġa*OTXu$ Q $ K{LtcSz.&A Z,psl6;!qPxJ 8 P&wMّW 5VzN0K),P5lLa.xU)tP~*,OM\5g">/P"KLXD8Ўjr_5h0Z-/ջ^fAn9v4>Z1b^Q(yJt0n:JAaфo䬲)MgTH#؈ZGJ:s3T:xv roᶲkE*0 & GtuEPZ۾kQGf MB=xG8 ~/0:qol\Nz5(CKYqGd*Xi@OF!1,\:Аp!xZ´Ot-P#;p9Px"wW(ɜ瀑@X1 DK_"5R 󝀐0r@ *>>o&$ LHOp5h"d\}0y ]kQ7,ata?T|юAo~Փarݪ{\Ӆy= VkZq91lҝVBXVz+z@c!2_y֤O&\oylx7En&n(\e(!+jގ1QRh) bZ|AtHp1q}SQsӧxrD\O|ͽ{0G+um"x̽%-N*A}rq^@pw[K712:9c:V/cO]a[$Q0%q,g~Q#" vLalfw&-b`iߌQ1Ֆ/]0&{j;B4K<4x=&"g\Y.1p;JI!u67|e]@uжLJ)aqv1)δT۲En0`Qj!5;{ɔVː |KoCB :XhoNЗ[~x : J8Gh&,1HD;W̊7"ƶߪ7u3_XӬ6}:4x0x{g} ȯv.!+KuEH$]5/74elHE_2i75a1SzBtd?i]V"-ʍ>PLAvW,J[kW2 R#8J*,8PiF^wѡT,o!& LxPE-+$zOWZWO/v  ??Ez(JYg7ꇧ]3]-Vpơ3oJc܊eTRLssh*\ko2/hZlR,~ZqK.1hmBa)v Gn^~S F|h>NdF,TWRB%Mp-/ȃ<ְ10";2o7%=.vz")nKUH׋ 5 o=s*^uEBZ2A >le۔&"K`(~pQvZw.+@1ДXC2OW{H.ކ)ښx@_Cor f AkoY &XzO{+tA}J+nk^F*ЫD%݉v<;FTc+.Yf Y(y)KF8Fȟy r s`vGqMP~.5K # ./j$Ӗ aS'pIKy~_=FYkZɸwޠ"uk SN7DPg\Co,y̦ /~bHv_Y :l j 'Y": 6Rfnp|BȝZUW1 ϔ4K(tXG;$-X$GOF Eΐ=Z'h23b`cS'P/qo9Ċ+][u nǎQ91`ƾϣrX=OH~mK&gd:*?аL9>H.#ת3boLN>@:0xߣEQKCU;;QgBD |HsDM@:4u^/pʸ,7;8/髇/&˪`z_Hh%3Tl@H ֊7QP [4n|=[ejb0c<-]u"vp*3ԕ7$ڭAzg׭zҞD޴!Ťm!eHw$!0/GCEk,05!+"J5o/XF19#Z lilh9o]WXW6WublX, 6&]+Qj/L9q%u)ZC-MZrS̳PJrkE!R:R;E&D;(ֱ{W% ĝPGKMTۀ\4<E0쏴vO-7MNNuƨiȳ?)!IΑd|η9ٴN66_rs%'a"N}Lsm#\D_,FO,mX! @@SSRߺ8=t"NHFx)K̭QT[c>r!5j(I@f˼^.oj2/(֒j5zb͹7j#%f}]grRJ$+)Sz|};++&ep#߲2H<}SE:5qu&ss?Nڥ­~ݰR^JFgx{Ym0>F@~ZMM4(μ 9,X%\$uj}NY4 POURKxK5#6*7XZJ4 O.H\k&9 mT(9iُtZ+o8$>h|LPƿёTTȦ02 OTFLp)K*oWlt<q`_KF+{q-L ISTւ5Y5菝pPh5 XL `]^5K); _J`N v:1ʇjV+-FmFN٘F0'Y5Y< P. Uh2|d PЗq)z>GQ,-) M~Uq༼<B?hIH{PψLTuDp`5?`VlK눁TExwa(8Ai9̷I<&z`_,Ci҆ڼϫC8tMP3 JCޕ&G~'٢$.@hse6D2}Tn=BֿðJtD43]/ M>YAt^eK] "=wk݅@̃戜 kܳO=?a}RP |69Z;Q˯Li/f~ZWVXI#5pŧ9&G Uāfάs  nߌwi:!'^]Ǡkb;b.7N?̝~z2 ]S`?AwziDj~S;A ._S0:QkPj)Mz\iux%b>S+9Bu/zF'&>謂8`#ڙn. 5MPQ'/n'['"Э}O:d4 y@k/2vܐ'l!%ơto~aL}3|d N1g\*G5J] p2rXCW aQdC:[EJ6(b̃~L :C[17E߄NU4O>3PO 8$zds]]!Μ37P잠+Wf01/LVaA`/#xDlSz[%E&mH>}+eOqhG.t{B['aZ(@1/\ =e "w{ordV4m6],T o 94tMfYBhdwoY-O1Ҩ)1|C% tcˆ4T\-G`l>X̅Z=.ԋNȢjL[aA3q_%W݀ML 92s0|@1[6r? ۩]INQ@3,4#ĕ}˦?Vj!Ƒ ]L$ uLBs=ưJX&>DGwpJR3Ŭyl(^žwVZj-剰͏ExgRSwRÈ^V9kvYLÍDpBҍ?md}8t|PU!s݈  USTJ X c-Lj:{Td/q$?j3_M; {_meu8bsU"5<yOXr,jKdҗ?y.Y8d:РY1hX} a8}lVf MSf}eљf}H[$uRNlQ,UO[t=3}?K{4Ubܩ`Q\k>ǠA"rp-?:*M-)hBF'H[I⎒Ou@0l@M#o{ CwS}n-AO(Nvo uƿ뼍^W'fw# ,oANn`BƲ Y̙;4D;KTli@ytfķM|UFvW{qIي:2J.4_n҆\վ;v-蛫Y3BU#wlf3ϗT h<{FLiPwmc;\"lgsIUsUğ[mbBUh/^g9ō]r"9-E\C'O& 3C]nmώ4"D뵉h[ q}! 榣OAC\uU/w; 0uPN6poKͿWMAFaPG:r_|G}>u,QbLywOzD6yÛ-ڥ{6]X Lq#&A2? 1qe #m&mp sN8xqJj%] PHaWT M0c^zK6y= zbӇVdnvC\?ژZ{[Tw|Ua#0,{rk^ -PvDǨq^+ "GmU+5pvBhXG j+&y*k>A"b¯Z7퉂#Vu4*zib?1!;-I׼.{zu,l܉3zK݂Sn+1ݾ`7ݣnT&A:03XZ̸dh+<^½oE M˴X(]n<Lԝ|\P 'QfHB,wX='S]s ڕ\u1~]M¨34B ?fUZ6ΨkKx[kҔNfBX(22wӔ + аզ]e@u9Y[Dܽ6S=BqBQR8s1W/eo$t+o> 8Zz8Oce,MkEe8}W 0b˸n.yṈa&&?b pωfc=$4I3{c1L>Oqi'MㆋAQg 8KLPu`r`tVnH3%=8r@z$+ҽ!0˴eO TՕکDB~'a@6JAaiH4 ffnެ+'M-P)CzbCGu:콅K?AHK_ a͌? +IWjHlms,t"cς`>=R!?OYt$RJ'5""z:++4x)'̖v*Nj8lh zsJ'l s ZC ÷XR5@, X38P ة@іRpIKa6@4=%63oēUTqkOG% ;DȎ*w%L XK6D3SjeYnWdd}:95'Cq P0Yf5x2`  9 쏈pgAJ- $J 0_2,9k|lFf} .JXL: Uytr&: on<ɾ/ʣܻavAɕ0.RBQ XU=k\uej$DFo5So)3W\$!S`{.ƣQ`[؀y{㧱 =͐_: *{aMhܓ_qmJ ' ǾDhZtˡsoY1r0W6wJ*v3QVSJe2wV7yRh9SArw?B7KQ nK%|W|) ۠/SձCCz& -݂l,cc)tI Je)oهOfDN7_Ok ^ Ӣ;2^\t.\ hH&EJdzL&qRGLMCTxOdҒwON6,` Ǹyq*9-NL^ܟ- w_[qV }CᦩǙwK ?4 d|O bI{F,$7_ FV\%둯ZR~j(7]1|u/ڻ۳ϐEJd!u Hh$^KJJMt؋(l mZ0|/\s/AlVOs\;+\7j>NQ+:lI;dl]jWzZV/-J'P*Q=5T7~wQY9'N9+*0|bβr9_.u.15̍g9cySSWG=3jQCO¶f1~"ፂmz36B$҇ ԩ'*5(46M3YG҅<([.1cB47S[E?J¤"j7kEn E=-Ws"7Mtkd1^{)a9ѮE-Ё󡫐tw 4 $sBcvak|-U@0έXJaޣ.ttv'Uof2P?4_Eosj`KxϩEw2>W=RCc8y~Q9rlQqocAA$\.Mw..aT/NG:$=LseDG\}J='> *s!h Nz@+o(>6 *00ɭeN Z\l~j0V>ԭQ| sSs{|pĀS5[tEz:1zd]q^{bMOƤnP5큢M/Y5D:`i"{HgG5WhU7Ā(x'%e(vCF6|۾"ujcp`;`pj/D ?zCfrEv7UeI9rVbx^' !3.Xb1Z'DC_GH8zc't@%X*a7?Yq(7 ?l,*"/؆Cڕ# &FGweSAqI_tm塍 uǠP52Wc=AdH>QV[9m#[L1UJ2t\1%&VO5U}@mn]Z`\ @71]9{_6A ҥ9vqW)`==&sNf ,@#釔 Ȑaw~K5L*L4ZgyH%`h7'w 4_#gr*!b,H[Fpj=-f@ b4=ȝS`KL}H|c)ڹk"r!EpdjOFYj?h  #^ ~EDH7C~9kcHV #ϰ1LsdŃ4:8-k5MK-9ڽHzI.iQ-/|OpjfǶݔ$BHU55}NUcS E(bqeʉV#OW:hJxٱ6Yn7@ec*e}Vvy[-S/'Txx^UqҲaX4(04O-/Fsgʟ2$cII. ]F^.$X:DIA_IWػ`Xfg:ja GI/áI~nsho  o]K8F|yƍŀ 1& Y~Pv-Hfd!i.@w 5R%m,&Bh@0'\!>>+Zlvzl °LCzm)]e x7Vu1Sxv !$dl@έ۽Zei>H25y[h6R_]|+ DJ(8 ֡?yN͂ ²rWNbBP_+36[hXޣOy#cqMTCSK㙆bP%p~p<էT՛ |zerwW8e1ߝXv=,"|utqB#;灶`6q{{6Nr+! sbO m\KiD TVAP7tʯ3ϭ|_ idA}݂V+hi8/qDcZlΪlF? RYOLAJYUFJsg`7mfX9miQ3:/s> *aW_QM'71HE1 XKjnM %&+zq=\Uүq6k#\h|Z£ţUΡoS;tC-PWV(ºkBwn <4@b( b6@:u XH3#5"aMeBA!QeXcRTsq6p``  GLAGZE~_$J?09Ԍ~QvEMd X@ГF§P h\V RּEU|"{ cDrǒO] R|<;8r-K`c{W Vj B^F$m#R"@PgH]• 7銒BjgOY rbMsaē$?T h¼7ԃWHK#rA,#uOXPHjU+֧#14>B\GeF Esc9v>!2 Ntû:"b%j>d3 FF))rLᎅU*)H}qԫ)AKgj,|Qr1*b}$HB6ߌ/ Z 60y/ކ 6/,@H=3zppW2Cy,-xocR[tR&BČ_`"Syw|@aM5@Bv׽c.]V;5gpSQ>b0(HUb%ŭ9E 0t&A;ʹE'eAe'Ϧ[ͨ~ ;:B5O-|Ж cj_.8>4#jXgC`)g;TÈ<_F`ʢ};=xCn GeS$ފRP֫zE"oz:b.`|J_L1N"bP`g3M5{CPVyv>-vw Ѹ7l7;[)*{SLOAZbq{,xec0 qz5:X*DZbs_?b.ĨjhOhu6m{RL <6]mI#b"I?KRF^a,bW0#Kw +Ά,EꌋK@ۿ):z\Z.3vzvȑؖaǾQ:0 raT^IVW<C˿L8 Q银0uݱrɰX>!%2G3 aNù.L;89 u*!<~#*f)fRzzEaQ.1@Xi?YPB"r&ɖC߳<,(po*`w` @W=\:e:&n(@X4.q̞o;f8~*'ivU?O?&ty9ֹQM*g4QoTDja @>2z^D{Hwbpv!M6:X#hOӬz Q),q]4&tgIN) ROB;̓Mv03B/nZ߻兀pI=اf9ncp1hɜ˸}i|~Fu~^.q 1z]+Pr4&x1No1%RÕnNtg+)JtJW4^R[F45"8#3jU"jk7FSQݚ]DO :Ţy)z_Q&^*ى\ Sle'b˺ɕޭor>f%e~io |n~_͍j&߁[na7M^خg[,4[涞eF[߮@ ^EmZXqTG5"fޢbWGҭYp޵7\@݄P}3V껳0.DG9cDu&zYvYM :o *[ ` ?"`1'V]&F@!H(Z4/Qb.ÞGl]S D/='kV. K',;$Y|y%|c!{+c`p1 8jۑ84<%@-(NpGJvIWuYUh)DKdP?WPeSNft (+ilUa,$כ1nCl,%DVe>JXN9$rd \s7|,MƉd|n8*4 mtK r|8kt8Y&ԀkUv~!I -o}Ͳ"Sop*7G7A+O/h.c0M{nYr!ZNb|-Xɘ ]ڢ.[?Ӥ9~5ώĢD`9K7ã2r^sF_qchga?2a;%H(=~RyYiNSgx{*\T6,Ipa VpcN$$, RQ$:۠W8FP|4ҀӴ2Tzb}p fq-цi u큷Fs/–tOi27?63#k3ܻ?$ʛm"#4k .zE΂Fכ' Z) y&u!.|xYQqIM; p栿OqbxcE  Zl.̃Ī;a {"&*O(XU2ڪL)o?5dRyg|X&s`Z տ*2sYd2E-g I5giuSpDT0QFU邓oOfQ,Ĭ[4K(L)xRxhA y8uB\~q CLCI/9IR/_pBT2Eg'QJ'6;.L- pHA0¨h)LZCX},SyC84_d>g?8-RM{v黲?Ilp4z(cMkvWh$Eli:rEU|uѷţQ0 q7 ?y`ai- yoH~>4M{lgvإf %ŝlA݁*k/5H2ZXDO6<k 's.6)dVMeOwȯ4s,#ͬ`xL sMƾ_&ʶK8F+,&2ڢQ,ZC: tr_ ݇i`ͭ]:\3΍$f Neze3=Nq먣 jqԽǺ)ŗ7q,4(EVª{M"#ۨ5)B-!Q#WhZi"H`nIMa&:uUFN$}e3vntf&:FG 5^Di$xX"VlRaA$|ʰfCa\ @07MOk0$S8ɯZV$PÜ0&T`opr?gQď7h67ʆ:~"c 0|V8vHS)PZ>#E~;BMW{0Jt.9QfkA1xoe-/$VEzMzMGdԘ[LF"$٠hOYNa)J=@WAJ!K=^LGg$SIɘF\.%'Gzщ T I>4,8UwIO?Sd[Z6FJώU9! wykgL@VU"\/'| gvT)ɚ mB#(\{//NP2LX9p](Tkyɰ!r oѥÜZʷd>nc0:r2\(t3,\$֫.&FȻտ%8$GR]l*2o{s23eW\@FoQ(.',by95%_̴ف2¿`p㝙>)\{VtCoϔw$Z<]PiD1= p2 f}`ߏtݤHIB` \HkG%Gif9boT;ҭT=!V@)cLz]jU~(Q?^ _%v1&Tf;8EQpc'Pw]XB8Qbࣛ6mGtS x6S]JVT)|6K.˥KM:~,حm0x=T_O0 Cmg\r\0[\\Vܞ.19+x11 ":ϴ&Z#]etB}fp /Sgh\ E{=j,$CXr-}8z OH.pe? >ut+tb $'5le/bKU-Mdrȷ1Hx7o $=vylkڔaOﰣz:aq¡?4t|8O#Um"Xҩ(%ϱ)^g역TJݕҵ`9aBXѰHKh{>*8Qq}B #R&ecFK>4$#}snʟL3M> cp땙w.:klBEBjf%7Ty x5ld]5 gU-v;x"}¸2VS09]Y Lp] {(<羔' Jt/lBZ>{)V 8 FDj 4֘K%Q_DBTT !x"{w~3[=2*b39=Ts~4\f*bpHHqnlښ,ഔ@Xh,M QQ);O Yo1vLqxo͔Woi+6vw8V=kMS@g"Pw|:'X `w;{8ly+ h_MYkJ)M.! "y:bKC~$4g]tx2yVU2B6Qd'I/OY.5̉8c L[-|M B|~w|h:<4zy Ij3-9c\ 30(/Oh@%1#YX9Zt}^]28^w3GJDCklE5kjڬؤ]%gQ6%3A@c-ŽikN EF$`Pǰm< f<֥p=@?4!\1bȌ4P9(Ew 49L CS2c*3qOn!eO;$Xm9=/6aL!R yz].1 =1 `wU YP?Yf6RoC#;Ɏ n@"plҡw~__aOI{˲8eB /M@wD'8y?3r~Fx#hv`k"MZNld)gr4 > f2^OAX H0]6h[o#)>ۇ$]vq|PhYg@R- oFM&0S-1]?&*rL;LIui,uqW֭Ls_.HE6o Ni/4k/9u9WA`?ƝL8lAbɔ QԾG2GwuKDŪȪ[<΅4l!@q>#u*jt-8Ip̍|s&:r͜M:=pKT }h_ ~ѿdVwm7Fb}Ce-5Tۆ'A1Ja>JٲQ>ȻT6y4w0sd^Pi*}9*x&33*}Z.*u#ƍ~JcOy!Z6ۿ{υjQ9NPV){rd `'iPS"dd+^F`l:n`){d1h3q1b5 {Zj8V aUyP8VM.sk2P{7$>k88+gI]-Nu"8hw*蕳 x:ܢFbǮt@3khAaQ-!_62@XD]QXlrt{9 Zi$Ry#K>&G|.E,UH ,cq~J~LzM{-4.H/eD.*) zlG IOZލd@wzTBz%wj!ؼP@[8}BE طAJ-$o+˦4vXL4/kJzOp%>o|oDΆ0[3gƪr[)﨔" / ː_c]ScY>hOej4*M a8&@nGe-$z\Pх%W.ԣ BrJW#pyxWfB >4*ۇF?O2ǺXp]A􍲝z_b:[;U4@䂊$VeAo{Ζi<ՐCu4V ]>ۃD(ڥڨ^="ju*qDZV;TdžA*o-p)3KϤw8dHLA,'%SNCIZ89tX"];%vI;FY(!a*UK{Aғ|lGĶ+nS EwF(}ɸ ڒs~7rP4kf`r="S LQf29Ryjb_h[dQ{o^7U2S{|j}A[o}cfb@ZWL\OxRˏLQԍD21$meD9`o%;:?<%<P&|Cu#! ' rI}|1F|GS{ZԐ s'|gN9jeBHp ʮ@  BE@U5k& *41Vv(e Ẕ #Y YLti$¶ޕz*ϋc'Fu{&"ִNvꛡA:\6>?:/᭗<+6Jʘ6GVCPOEݜo\p NL#FXd:L >݊>x56˱|u6z+A68!{|oxHہ;Z|d۷cltYYFMa1tB474HQ @~pD! 9kwW8Uw85"3NHx"fhcfu1=1* pZL=7l>nt,G>k>Bp}9Ur{*]<#/S|U+FNuiY`cc)=aT/Joz TCafujmDž!oz1!.;a"yuIrj |N-H3n1 ԍ @5ՅlUg>l8 -K\ĢrzQJ mQ^”+^u JQÓ+ACGCjG7mH>v[-N&|+et*M\,Z".`]nTeMaF* l!_,:EF­sNTk+K=TnnhE~iJVVj|.LYdHd,^8s/3EoP@A|V1m6CQe_@6* '6?Teeϲ݋/N^>y5E9]S;WWم2Xx ]ydh2h !4 c/KZqx%Ŗ!׀73یk+0#svs T\ew0ePKxm}L[+S4$Εoj0_"m %F40\[5X{p+QZl#v£9o2CE,TֺK_xF!CSLJ$`W1)!G/Xٺ9%J-bWU%pq "҄(yoy3dׁM͖xw)0TEo+H@"5!%!@Q(bs9ڨR&d}yn#v}>GMma+T_;;'1v;WBkpVЄkeCz@ y$4~/$!|aVbjPg ,^D+>ҩįy'S^Zϟev^B?;s]Z ǎ$7/96L(9*Q~ sIj<Nf{,Sb8s zxJelFX^r`RKbpDh>x+hU5D~Σf[kȺ;B]N0x޽"@2=wa$ Da]^V-%O#$9;vGn?G6)g2F*(_sZ9Os7xTEF1icU(GYJe&wLoLt)Zh7C+S:ۺR SvHAa4Sp*rl@VcE(/j(P*e*Bz@}R=hLziP,6: 'j;iAOd_¡YBZjC&Z%u2v*B[.գN)ZCpIղPe\hsqyp82F C^()s8̺~rdyakpB<3 Arsm̸RG;}HRk(m`_O`ChOgӥܭ7ء5ZS Qt/@9HY ^lc@6`p 48SI ͝Ixu1>qR,3)4Ŗfhrp\ẓعw3ѕP'E dR+3fjȓ܄z’5_`2Cnjhȧ|5mn V9>$^F94۾>ätŅOs.%:2ޒvUc]: O,P gl^&fvM9m|ƉآjgBkOt@$%DDE_v'ULM&ak4XS]LA)ifunD~GDF{u=Y}M$|H/5_H  uxR'?۞S]ݬyl,3>#p6:h-MLSN%#2$ܺu8-& |J|l%nM;FظZP1=5͊5&%ak!N[q k+ #-3Z\ * d&"S7rQj q?wsYh:JԙqvH,E{eO֓_K{jz$L\"JYh7]LP1] %rWđ8[!v:Sґ@mP }l|qZ-И[g .cڦ^=`Ὗݐ\HRTO:=nE4 h#01uFG~,0LINRףiQrNp}u>)=ztT?&gS/,|n!6%㍷r?&v'ZiyGWt{daxCeX0 IZ؀ p?õcc#^9̱wWZteȵjzV(B[?nBʿ?>n?6&Kl|3qp_0નTP`t(®+DI.FlldB!ƺQwrCBb lQl NtyF`>L$~'Y? kϹ!$=(L _1P>SOD$:bw|w)NŠqA.) E*|c~*!aP>sc?|^],qkpr.#rGry_TʑZS\ Zu#.EnjCC(S3cP ~-F/G+zKFB“P̐AhRW( S+2@TQ#[a}8p n&Lƀ t4PCm V $\*o,fXWw Jm*"n\2dlv )d"h۫Nj8DU}Տ]kFmb=D: 섾Xv&7,ٜﶘ:)1VKp41DBKͶj. 2žv'w!u20D&cԂ|}-OF}qY~G,!<`.u1IMLΩ F.':{5B37ѼAszqOkcPzO@aq2Kgi&r0{B(*2By.B&U0 Y|wL'eE*hjT?ȫnPɍ30Ofc'+Q]7L78RE\nU#|_n. >?-ܙ +檼#(@~S&I9! x>lq&d&mmU>?&ږdQu69l`U-d(׽Q2Ĺ` w@^L'eOIe+#zc^ڝ8VQDEk^{uK(?&ΔoMjRݡaݾڽIs$@ e76(4Fe?Gj#nB@3QlTQ,η8ӭ/A\%E14Kb$ =hCqHZcin==[T>j^VYeҀbӂE乨Q.7U 9xNBp|2D8` gL|z09S.:ef%G=͵W1y82sZL*Ca{{96oA' 8%N^E%pܨGր$,N)aД~xm<iu y4eњF|e!Ԋ(`n{U~ l1؄8쑎yzx8S칡ȴb0c|}Í)Xi>j>(XUrYg<0 w7]J1`#!EՏxQ^?3[`؁s9Te GY&ib3J6ScRn%I7' ̣).G& AqZ,3A|G"~@6cDFAE[ѲA@0}!Ir{Dhf4D-U+ ]<4'hԍ> u/P޴b5޳łz O.SASWgC{̌$rTY!^QO8&}XmU!3 &V83IɎU OisadޠJhJ&>>\9esY>B2]HN &whq󲧁#5Nԛ6 kؓی(~YMlֿtv |_c HioL92dPYJdaTcpmnp$m}*fpJQ>EFIuWB9)K96\BU3ۿdoi_"M }PptXYvI=EI >v '<3p+1_>ž3Md N6#BtO4ե .֧{" < {ݶl.<\..`tX=8fC%,8vvGycHmhD>JCƸ{@"Nk[Hch͞ AWkZ$ b8,4k(T-ͻh1հb5%YCYcDOa?VߞIӖgeuIs mT0g<F@5fkŔ=U/[ڑ(jm'q]ks =;Ћ<`2kl-4ra'k< M үn 8{6M}[(hL$uYGX?f{'E#fLU4L6L^Υpr3 H z#}nL*G;rE4PMkkTD=9o46 SeASIL o1z>axm2Yrf||Z90"mni\Gqz2PW 0 KT@$S ֞@mfN4K!~:!3au1Ov#/FiQ%IHvfք~ K{ןNQE svD ?* w3ɏC\(:_jb9$aնo1ۅ~< H9jGޑ-}56ʘF,@^#+ &R-L&Z:pI6hm8:u}fCa\u¨+ɋ2Te(s 0a&'@EQV:ԧg8B&.3./g)Lz&U-&@x Qț0/8#lƥu!N5]w*2ڛCq\֥0(+"nUzG@8;g])ߔp*dUBx~7v6hD`9~0aEL-yQÐ񗷝؝B|͙,8Hcpƥq Sh,_ķ pʢ/5uQEy<ϻn5CLw;@]&CO ;ʆX¤j럋ˊRM˴ Mƪ(t}[]>^Oi )#Jgnr{fK,A]bN-̙Z$Kc@/US5`V78 ~ɌSL89=Y&]]"981l22iߟz ā'9X 7)8ɳRYc JzBqiGcw׸uT7d`} u5L$L6$&եU`M9kJ)ICamgV)7{i5hP 3ghM4Z]pgK4ߍ@HiU=YY7SĪb] PeNk/"LrLvsWt1__V}TeȱFz-#ʗ5, M5C>&4ZTz a g+]}.e+崑=EL㞔?vGm㮹naΧu5-$|?bu%؄n irpv+a ٪2b3l$۫Pt? +i]?  !3IIgG2e2Q]'_j3F cOc|N7WQ5Y n`?U?J:.x[+1yP-!Ȑ͵+_h=ӰSvcwg4XYPIw ܉,+!Ԉraq. ^*!n^fY'8a} 5H O=Pۚ4OW#i AfKU) М>37RKBMt #s#,8V TFiΘzS ɸɮ lqՓHt8\_}YIr:`.+-=vyF3Y׼z PU95{lq+Vp_ $_y7֢:e&=Hq-9QڞMs%iHue80+JϲײfZ_g)m9 ],#:c@",5Ű$Ak<6\E-9Wjtgώ"'q%Y5\ >N˥#qB~}I%/Ȅh%2U21$B!c HL薈^yi? ,v0狶Cȋx)@x̿|  뉇m ~> LA6kC#$x{U Q˴zVr9(~3u{ ^P5\k Ü-f>UH1kiI@Z(̦wcnwo3inv6X yKP:D_I%ǯ,kA9] n''=}Io2Q5Hpxˏ驏juE;_8IG曘b*Tdre7cn'<~J-X&h+v=}_7~F뽸DWD%\ ǵztлdE^Dug;dv߷1Ązŕ,ڛMeGh1 ,ZlߩwX(v.w[McPެk9SWnx@0ٟ$[E+3x0>H 2l q8G~Ig΄0mŻ ߄)J2=>KBCqt[c]ҭd"*Yz2H@UNz0` yK +2YXhޫҶD2Z_Kc@xo49F9tYUle(bn^bi 5 tk](QS,j8G> 6 (Ayd0j$\11OB\-h,=@d3}o8akZVR<ٱj*xfD̻>trRv?i-JەE=JglDICK_kV _xLkz!80MŴ\HFI)Z9||Fhc<eIT)OJA`~mKe՛M>`l$5+ ei}s1q*3 `٧טĶpʽ)Kfy%=&ye:&^?OE 䭲$ ]x *1I"dPC6{V|`lT{, /]:m;%6bT)Pl:=$>?²6}$'({U1ߠxq9cuG.zb Vp \iXYu?ͷՆxo+Lf)%#p+.: , k8[.XTs` V¿ʝD/Ufh=;$g "/Rei׮mQ-_J:ѵXev뜟rOt]<)Q.b zUk*gBS 7uBb ?E!t6fjSh.-I4#8ٕX.юEQL &%i.-+K1xt":^lƢs Y1pI W|sA{ڶ.ټ:3?Kz[F]X#͇r /i wE'.;Sв>MJ 9̑TB JPbQl=I&-i w+QRcu$]tA#WTDu=`=mGOV2ހ˞#~boU>7j}WlȌi"_> )!O v8nEZ wD{Vf.9~JoCά>1~Mx8#{] 'gLG#Ete'1bI pBI0p Xcɢ(m]Qx_-4d@`Mmۢ˩_ӾԂ6 \w](> gr5, #~ 5ΐ&Tvl+|>3w˴ؑJNvs4tnEr`FoܱBNrʐV%Oj%|MRU"w~8Ŋ4^o` X~|ܼ,d[A9ڃ5 n.8S) U{(N-c0. X+6KCY!fKc- 2ڽx'&;ku}3>yi,T(v*8@6U84YᇛL!WRDA+"1PK<М6t`fS'V5\_9^19{(),;;L95I1,i+RuA~X;`y'LLm!W^YP3.Eu 7kR\^kN}ثZ"LL){ǩ# H X1LS1sSnQFL 𺐋cP'>`(p$&\W4%4ҟLhhKl1'4[̝+ˌ_x,`WVuhfHk@uW/4fVPRgI;ҡ.\gM2D?x^4C%1qڹj`zZ9ewF,}t1&[n4JS?W Cm!IGVk';s{ (8i'x;/r1"PP>e<nEqbh2eB䉆B]_]jDNQI,It'uOxh 􌼾hƏM4GwDh *dsXE +PsZl0̹#Bw.hMZ^%I9U#FLlhnN2_OӴӈ5j | ]{{R0.DUgBG+_[qo-!?8S|Q.3 ߄3=9R'BI@(!̭㣄ٓaDx$ZufR{4] 'c볲C `78|n%R;t.ӌd0r8B= 9b2LW pwC;op mkߵY+.*.-I->,5dhǖTb$<8ڟݒ 8tU")) ?6>* ٙ:Tɛۯ-n!6DA_TѵX],mA#F<^!zR%w'1si$gYnDsiR jCz}?Ws{v bgٔiJs*I!b '΃qy!?4:ةٝG1sDͣmT0QTjE"k9 Sr>f:9%Ŕ*a)༿Y7HhqHiZC4K AH{=%c`7Ca:k;k΄n&`OژFSU>ƍ&&|&Om4;EnR{ݔp, 0 Y4ROE(MK`SScd9 -Mq5GysJ c6Ni{βsp<>AHlN3hx8\ȯ/ht؊9* 32>#ƿz2 }I1myDCm\gy[/h_55eNkg_hY:!ƺ/WO<,߶M : < 2f&~X V.udwsF@\Ct&54u}+g:K3Z\SB }?95`g 5֖f<`Y%vjոlOZGx9-$ezӚC WDTUQ.š S{u+C]TsTv+U J%LVa+IeB9ڶ_J}D:q}NT|I;&hF}h;'yc24GxP63낀zLbdK'`(۝(+- wtVՈrF],[䩕KZUKӛ08B@y([EOMPЊ`jj=I}n*Wd.$Wl%H D:ĨWR;`LÊ mj't)|٭Sݨ&ed^4 PŒT+$BP0 =Vy źn>a*!UQ"lzĵJy c533'iۧGP!0OO*CӘmkP马b4X~a6\ {vjޗ;J2U_v-!^ !>C Ru.1Yp ۂJHo2#ns2~Oִ&fDTS_Bx עtؚ԰Zs&LQ;-ʈD2ص圦0-!S>Vj=+")Ss1$cdʢ|% \tS©~lc\c`) a[Av&`ؼ6 QgTGOQ9g\2rϗuv$B$KjrqD3-z 0?z(Уkۭ lH{Jiѧ\%h1(JJoERlg SS2IHf-NYA9ȸ\n&:v'LV?xq0fG:.YϾ= 7,AIF+ 4o5X.ӎ#q // OlGܑ~!e ~CW[⺎?kHxAْaA]4K%oL;`rc?V S`e-5n})- N]y.YeDNE SINTwF ]jXŻő(~@\l)o>H7p/_|26sgW 7d0Ot]igX( Q)CLzߋ+]Ý^fȇIq!Y\>4|vEfceTGs(饁1G!~ɦ(8oG+G? ~ Z#yWxiτ~>@}t C=^K![VXT܇Ts]v?p*d=Rf;sqcriIqL^LGY'iy![\p *:{\/_*m{M,P=}Ccɐ}0W`M=i"9tGEJBw:Cu>a)ڏ2/inNq[V$7}#8b>{{1&BȎsi8ߡf7ݺfb8ѹ0:|}RjyΞ˸[q˕7/l=g!Ḋ3b [DE Ml n "h 3j; [\"qCxLdסD@Gm;eͫRёQ]Wd> %"b91t-2"&-׶?ՈvD/ചܸuփxk5:Xo e`|"$ZW2vGo0v]A6rǧќՊ@R_DZRZP$SWC%*cJɎ9}U|i>TenG{: T< m(}]13~LF&_~ !z (0IOdfZx91),DqꯟQlSH.W-+8Z5Ywd8`L)S_q9,=Я" DQ7^1F,R.螟*R0X^kmPvcfκzG=.,N7CRg8d0wQr50BĶD(nAB? G j.;%c(N1#Jv8€g 4zH|aϗ!zd42IYμes:sх+͠> q,smo630!5 Xt4B1wEIW)O.Ȼ.,%/lɯ!c@iiC%l: %GRx ?/>>u:4"T+|Ÿw6;ɮ& 15]UNY6նح"|mQK+BNO”rInA\0 PkdX*C}TL[CHH$.9YY^) ?m>d-*W%1rΣWN|Q̱) =wDx:_|~u A9 v`_[`Ago$şʖY7VqZ}=i7O >I%˄@Jb=lޓsR\7'2IÇ*\kGL؈ HˮW>h,,} H!`ffc_XLiFbW"J7 G۔"RQ&a$+K m~ ZP9@AV%|Mt1y+Rrtk?2q+Pe/ns*?@ Pg>:_<:*@ j zQTDiC:DeեXBAPsvuZN U,n*U)0& 'iAdWOM{^z،wͨʎQyxƌ7@DR >,7:ݐij=}>0Fx[/_H@}ɂd:\*=Gu@&C!9C!nGkc=B_^ @u$.>^V-I稾>6*z=C2){Br8fo'^d֍Hv1|e7#]E"l/ƾ릻RlmC(ШȯxpO{E?|\|jGF02o_ ~ +rc/N@"8շv ??{b+9Lģ;i%FD׻1K W?]n$^C]+ډ_e`x'_ݪ2ae_/,BP ۂhXK?P ǔ`q`Y?/CҜB5\ѻ#iIAA\{AY|N*uz!{m8CYd2k?cŒKYпr("W8x!^gGueې`bGz07 Ol7e;|$r X3`JCИ9}ye[nzб UqHlSKC`X8,t!pK^}5)cۡw" .m\hT&VʄO5 'MI'Ѓ"8R"ӍRݏYcEPUSz;9VUq+L@2C}~E@,z[.хH iv,=(43{(ÉGzQ-&We/.90ufK_j1=:(8y74Jk`F !Q7D::ϊd,͆L5rfԔM1a(jz}5 /%a`Ҟ- F:CXZ|y. {9? >)W㡨pOȝlkEX?H!rOb"T܍q/o,l&3LTΗANX9YGum^LHyJXz^e$&=_ 6: xux)3lLTcJ4UKc|^(LkRp7]W݊g4&1 \{ELRuyt f9鯾̙G,{=Fy_3ТP0Af Xc'zw|6绀 mJ5JջL ޖͬoS:W%M:CJo<*4fz1Z"#_uyAKqAR:y}/pfQ ny3#mK:uVF⋱,M!+"Ȓ-h$w26Md;{+vc["7_<~1CW&ZІ.vZ2RPОp_|ko! eS[15[,\C$_xT#W 8%WqUb L(E>dșHn!AI t0ރ+?m'cTJh6$#*\q|PYDY4 F·<:F}N2uNJ9<.G- .-o>cDMLذ0^$Huw܄F1`2' vQ<03@zAp~+:,pu KgqpMt]{o-LܹY RLbȢc2f*teدKlQ;Q>H[; 8)d׵Sຬ\@Gb }A u};8V:m ^E8upM9cL-JJ$6# +vAI!TPf).B6sj,߭c2-A9(CJosMN=ݳ*RJys5L% 6?)~%=p&Qz:m=Ps%0ܼ5BMRbC ,PM9sșڶWkŇ_S!9]BˎWkgM?X0%TPJp#Y+8P3~(@jj©grIagl'/Ir_dh S lP빒M旯t[t$1j7xT_Z+p7dž oq/lQKb :o N|Ӆ,I> i`;``hdJ;K;t(B ,v&ˊ=[)+;5T߰+*#sg?mA< 6.%^W4y]/CP>˙MXMu ^$>I nlp9I O?`S29\{ z6_GX 6-Kb$zRJb[o r&sn.Rz6+\=ݩЕi mK^J4,B3I24z{`a&/Ky:u91-P\QP%L8#`s"tSQpdRiFâaʁ7SD;V'5 *ZJ;\4Tp|vZ2I TPK#Cw0LlTjE!PV}e*Vv[WjbSY7{V&ۯ#~e_#h0[o)/lU;$dʤ%ο^jk"u7(BB # V>=C7(pOxKH>;y9/zJXx,+G<4AMحߺxeT/IZIW!օģ% -~gX-.dsG6!,֝Z9 >4M7OI_ʍ֦t,=kʤ ./3IHL@ju̼60 SxYTaϞZ@EϦ6 %Nxl_kŠnD839%T=39w*/B9%Í]58g)x kaKAMYRMQ6?+.*s?sqkW%Sv%V{Ч '#t3ᛆk #qiZA vgxNZ2IG<پ*"4\)0'U Ԯq j$;z_sx]d؀ze_E_ɒXMBzhM΃VSi3u:VIaiӂs}T(V fƤ`K`=2 .=L Pz )j56`mx7 xA~A~H6/I?uYl! v)ʱvw#cSl,í*J} ~ QDO"_/cۜɕ/ie6v)n!u0eRʏ{LA5ږ6(AЅ΀504 죵FRșPJ"o4.Id~nL ngW{ԓ~雊k7q>yCɜ:0B<#{:Ineb$pb%J5p=)~IЧ$',PIcT6 Le"7|vDPUуNG e7=Ѐ<>9y 4Rв姘W]L+hOmυ-IV>k G&l$lc/*{?m l"@wޝc잤5ްe!$%:D 3q`j?HXG 8PǓ1饖E1Hr ]@TX^IOCJ Ԃ}q_F>s<@JJ3Q鲓̸f')ړ{L5#M WQ+|0kvn'Gh{AxFلb"g6fIS HCǴ YQ'4y-B{ƸDLSvNe ̹ч5 49&^"NTdz,kJEN?7]iwŌk g CnňHBm6 H+NWg\v?UV#u~+Dކtz ?q@wB5zsBn &L5~xc'>*jeG ^ц c 7 Ĕ"m(ZY0f uػ0ڥBmvKl^4Ρ!k{rѦL1 }j,ӎ=̜q,:a(=(89+Gu~Iz~}wR&DyV}LB1!DyEfH<c8c|LE!:LI]pf} Mkxݧ|*6*^"?;A6۳RGD甑rF1 zz/n8g0ݶCIn-:р 2JELsLmB>08n좶u)Д`%_<Aȩufj|' CB(%k*|xNdq\0.G%Dmx7Pj0QA&mM'-7+M> cy{#H$]~yE*=y2ў駉{/2W XhpQ-¶elTԷ4dfa9o%5H~:n]Alߋ}o)cxSS"Xc5Y9saLTsVp%6n ^'u)7u4H'sU_ 0g){א#==/.o%0LA&IxW}+4NzuJg%7)@Br,ca:x S6f0(ö6Tdܗ_=ei(.6qriןX%yrlݸC lIUo>$!/*1MY"1Mrqzp[eX߉QsλN_e1X`/PrK?y }5uo  +SUufBo\SU2'k:Yxcej9+_2HvDo͇"Eb 2#>KunDhȞ"ȹ֜$wOɖN }]xX*WKߠs'T :p\^uŋ:lDcVA }Lu~!\\4.zL"_-NL 'p 4Kz;K@ԧ૥yUrmeے-d79O|U&J*pE."Øz"4skq}UU`{'z/6e YqϘX5$Ap->ԈbϿlÒsB#/ ز\h@ȹn`i]bCzyn: z fG"=b-Y =twܼTl]:tJ˓ֵ8'ؔXFO3ޞ1Bq ϴ3M9O9d#;@"SZ/C{섊I8?]_hbE`ݻ@#a.Kj#Ȏ=Ѡo YS'@)-HM$iKĔxKD ܪR哃;D.قے՘_7 ˤRı4ybw $h4[k8,\? 'ؒ?>z-TPV;V}HJ\7׍)ϊWBa3԰f!s` YѥQiޣ[-@Qu龍*7OI`ʙ,SŴ':/FQG5QۺrK<^`3)i_Z_GlEa%ΑA0W^~)cDrMUgp*ΣM]KIy4J$r`]Wަ3l+vǥeWY1N)twG,?қi%}vN|h^8cC(Ƒp\q^{^x p ?MIӅXg$SZ vX;G00(`S!FRثlf@\酔1Bc|$v4&x(6U{~&7W|bl =^Q9eo;*0])f3G/{u$ E/T"xؠk1ʻ&Bc{fP̘CWfNJs8[t;e7ek2#yϝǼ /}.a]spXC({[\R,}Oa-/ M)ߋ35#͝%l r'3!ȮJR^ ։7Q>jGɪZ`}A ov'%#cvXhɓUsA}OoZX~d-X^[Re#]?8ndK-7T:n WO.C'35..ET:((yD/XӼyRtŭG  =@J7t{/([Ź)4a:w*::t:c_b7FImZT=dkBjOBF#^ 449B)o/Ib7ap@ͱˬ "}tSp&\bMU JUomߴ ~t,ί Rytv)=ĒԝɂCżR古eo^nJhr@\>@3¯Q!t$ l>G;wnH֛BnGU:DÕLx|Dȸ h2$OAQYŨwy3zZࣿ ;<`s쿇=E-RORh,@3C[(inltwpp6v6I!lB@qH?S =dۚ5::3,lrI|lGwM>XgЬ`skDI7*c[gcȵ-!3]NЉDeru/f^g-#ol;$Lma5F8ʗq)s6*X>*kđQfDH}dD&,PΈ G[XpM+,ē8]};>SR4J%V67\zwV`MָaopT.ئA2VPC32%Q[f]Z-4[諟dOzU!pj EIA*[hjB)ISmLa9 f)"knOR$K3/]?W^RC6yhF;~\fp2:378ܲ@]׍/[}n>'[V1b<_J`$\Aux#`r&m,(| UArYe-I16bxPdnULRB!tmo#$,I& eF*MuD=6mY$ö@6Fh_'∶4J7^$0(45klC,Np*He>Jl'C% Zg-E Qoo}8!\>_IMiRĩb+ܔ{RujU-@]Muraj*D81DOnCIykW~~CfXI8;Uu~ms}V^?$\_5 ]eb(}f,ђ-Gj}($Brs:66 E]DNK/1>M14˪Çkp~(;9~Uɢrj#4SAW̯i8vfSP0bkV&ޕp)Q[0:'%r SP};c.,^{ty;Hɒ bR&_l^؀Z4SZ[FՏ_+WuMM49䫀_oij(o\&wa\Sv(:a)dhRE|5BJJ?7=9@+Mk~ qc|3aQP9l`D}HKWc譖De0==3S/`30N~U7n}{o3W9n%8m{3C \9@ <{ǭi3B.o8gJ" k{ժ!7fb"ޜit%Ƶ+:J D61:j೙c1xۨ"%'"yƴS;g7Z+A4f'SaAP?qtWE;Xi s50>ZF#e{x5T+X'FV+_;!)~*m&y2N#ѸslDb+ﰏw|,5?2VY\B[ \ ~P> a}==lv7^X]VQA-+*;\~_!';AϷ8'PY+<;}p)$buYAD_6L(-ЍyQ?W5e2%á*Nm,r6^>zl|L[`ߣJLs;-]J^?A6C'*'ͮ&٤3"dzLu!FIVju,*c2IzAmTrv|vO zS2rro5;RWH$KrPJGm=;$ nI1p Jnr)X6=hR1t9ݒDaNMqMEfdfDgVFܞIfKB_eT!N/nƕ2x _@%*jK>ky__XOWP5N/R%}k‹Zt`\ r? <jS.1 :⛝'cR-zAb;?gkceNϭA9せPkdΙ` ؆&uӝ C&SF6y11pG־)zԋ_:$@k'3x%_w6o9}U1 BE 8 I&[ķ8S @M(ѽ#q*eB( `1ri7}gvBj`] MYMTpkV]Bظ_}x>)dhET bheYub}ϟ^w;;wT'kk1-K*0ఔea1 CбMCS. UiyڗqoVM&WwaWJ9H|;w_įq6VxsGABU! h"YMG $z}_n1fĕJ/ 0 ւ5l[]7NebU'&+):L&a#鏼un@ P9unHL t5&m0RLB4-YrMK/@yxA,QM8%kg_LIc)6yd Ol1׆sA<68<"(p(`ȭ`-X?BH* El~)@м2̱vTSϯ^ WVSFC{>h ު>N/rqEllFu#zՈRGX煓 Ҟ.܉5A$ |B% d:boJoP$\aR7&!'xRC x:q##YULC:S9E8¯L߾  S-z&J2xJts 1,,_lL&:/(<47C卉&"C"LKOZaPL _)ҤvR<5*!NE^_0al ЫC;$C\7 ]Uȍgz҆/¶f G"4oЧL ~瑉1h[^9:DMMtjn$)XΣgy6A ,xcݞ3C>$&cxqy>DK-mc s3WOw<֑路2>d,(ܪgelCRs _agbbzNB?9Ebou2I4:9M:=Rcu97ioT9MnaS3.a&XWb4lc'}Zyeq B.R`MU+NiB5ǁb-=AJ%hS |&: G|%vv.~&ʾƯwŝy6H8%#72tȱxqclHzw!QoG꽯Z濽$fa"GhJ4h Rc.}Vn}M6~u|6lϒ JYՀ K꭮cƕн\( rR ^DYk_ei0w2Z|p?w$<eSzBdPRo=fš(ŝ" D,}7{UezU!HԻmF6$=1afǥGTiP7^/8(/ށY~}4[B\ic)@q0; XA/zV۴7Q,ȿ'Q jF8/w\x)t jytnht_UxrXۿjGʘZF0u0$M_M?[o{{oF>ܒG0gG\hBm/\+JA8A|DCKv9GZ4b2l&hYfS*ӟly6ϡ7o&|^Pnh, 1G 7E<n#ŹJbbMnt-XzXxVf[=&)_r>*S KEnسeKQiJskj;~>x^{~+ⲗ]ue$>dw&4u3~eVBvv"6.?!Aya7HwJj װjuƸ3 g#̿eKJ`isØpHr\Tsi4>ۼГ!H@mbݑJM1Ľ)U#+5iX&j!^>JqgeePl1ƚiلˑza1'\gW N;=-yʮBJ2ʻbޭ * O&/s]L d1״̈|M|ߥ8 ΃‘sBG!rI?0lUr;{o"Zck1 8ٴ|[LB 4DBI7AjưXߋI+BPȅ]멃sAɞhYOd^&O?qTQζ3r7;b*9'IfȩN#8`8wYg Ƴ} FOz<7ΑNkz:L̔JSSXl+SI t֋ÃzđLI4gd)Oāo֧q#s,- >y E`" ыiAtX&1 W^ULA?COrgN"i|׼l|qK;)a}gǂ{pZfXuQ׏vf^k0^nh1 ɣ@nG:)N!0Qӿt_=J?Q(Y8ɽ@s};%X>{=2ourJɃG>WP˾QHrnY1g#JhV=j c6X6+V7lHe `<]bjCp7+[%aB/A!7T@LܧM7>_l$d>t%XRbWm\\2() o*Yђ1ɋ>L>G"HR|qqrԔ*xGc.V7}?-}SEfgxQZ+xL :5Z6*`oaHٶ ^1=Qz}p N)݌)mCNZ$̨P/"[Ȥ@wҏ?!{:FGXL@?5?WmT+&T(lo,C+{ Tmb4Ӓw cGgus~Mk+s%Kusi_~1 2 jmt$rAn {{G s4hLQcYtѣ8|F?2Z$MM١Ajh.tA =T)88,` ) ( P:{9>,O&u/Rޣ4Qeb?P7N?#Y bNq'Ȱ2~Qߚ.)idF.)Gqm¬彞1GVf6gZśK{Y_!u"~=}5󦉄[RMdSBs}|bg|(J4Z ˮTӛ;Bk ~^_?!+@`8F äPfٌ3WSAJĒ2o8>VJ6r=1Z!Ο6'1^PE 0+kIy^U,vԈ~IiX~ _߿*͉4`rM-znTZٱ"&)g<gXs&|m i@%Gi g3tu_:Ƣ3+MF;6VrV^|(KlĖ<)enť)>s,R{(Օ'}7.$ (@D)^W,w^[RVWBXïOoIo XY@֯,w7/1~amsNyb[))'+^Ǚh->V9 M.B3C]8ffRfJ~܌ђM@\SzAl簛IMThwi!J>6>A*M [dU< -vgpc'f ԎFXFcJCXG&z~tX%fܰX|֬/!lIاB?!ok94KӠ w071Fhwzc +.Lҫ??=QN{\pPi. "Pxcwv 9;H6){hUنe9L&H'>\uR|1KٳUS6o2|lݧN* 5CdtuH/VHnR>GyJ;E X!\",%2Nj N"Mc*(V@E#I;M a:è_7%iM^D5p!Y&L|w+ zȎ~ϥ"d6֘" }T5ǻqCoJ18:Ko+t-4wڃhޟ;~o`wJd̰\uQ;ؼ\*w`'7#WЫ9Cp7ʖ*J<?- ty^-p&Vc Nzt2VRVk|YܭԙrWYP:d3V /_@_e#QР~V^}9];?rÿ_HAi2?pj}܍:059b"؄q}S]gsE7Prۊp|}L&wKnkfPֲ/eQ\ U$.lΦ0p*{Sa6O,#ZkeIqѪ?X)s-ȉkeDb ބ<}- Jd(j3͠j-k`SU`xIv@ymFXXJhfAbWfQJWY(f7F1m;hbp2-l"_[PJ˺w$8NQB#HO ${GpR`gc۲~{C:˴ bxY\k"J$dfD$mQ pE#P@ 2ɅyO2ơ?$J;|_ th+MXy7=ۏSlQs=$"oGjD/ԧ= #Hw2("=|HFt0HkPf)3 L%|vFH]* MNLmI|Y6Wq>GM$N$d8i sY'1y3Sj.+]"WqR0 =Y9>xȎb`~I=Jȏajc:MF  z!,<%%Y뗛m+C+ WPATQ394Hv0OsU;t:Ο_{Lhtd^?=Qi%|3ūvfydx}mQ%\L œ%F ςejcd;_k֪.@W& ``i#*=JeNGCg7>CGD\`CtKWPKTQbMY=hz'xsGҒW2 |`N \!uCd!, ٷ mOcUJ8-E`5i |D~`yY{ .jۇ92+͏7o{"I=7wgOadp[Wk"fuw9aC ;BXu$9.lygqʤ;VW]I*@"ߪ>EiC_-zj"ɮy1aF0xŜÂKEOu[WE @fs&jW~ 4%`<{[U aRRϢ0 2jBE r6;_\ecl,0\TEäO%=!}E?#- nОcВ l#lT]*AE^/!Xs*Xzg ji7eKm?!Sǩ8r֜jԪ;0:ǜ_{ S"ؐX*="A]ߤI\q}r ׈7_.*ri9D"~- wU<':iy*V'bGsTօ1'>ET wEgpk3ZzT`6%J]I( u~ɻ7[3˰}]!pog3m!o{E^,lxD~ICyM+!U)>5$b M.Ja4QVW7yU QHx8xx҇::G/%-+5jy}lXBE.׸hNVXn"x`Y>j瀚N(v}y p+;) WD)Oˤ1(7"ctB8wx5fYSlݭMVpC"j*酥-@ 3@/ + \Tɡ7ϒ8c]H.\S#5.}sSc@i~,kKB1G%e$6|p"!߱p4%~ R^FD˜F cQ'ES3_Ļ%jETK.$x])F -j9)x|gb9l]xN^f\Ze`pjd/+ OiluZIGep7q\e)F1gBSì~ў*?oV&b,4m>2 q- F1DV#>d/ɺ6mcFŶl .LQn c#l]JV44T#ZxF Ec͵r*XՊ7_nL0DH^٥}^z|% 9+,B*R]ۚ _H>X>h7\6a&Bp*$aC7C&^!R{ bʄ0+o$M@cMcMT_ޞ7CYqO6DYW (ya_4V5IfvYo 6o8Wz硭&矒lnw7!yOx#ƬbJ {9L QYAS+m*\J\29\ziA%yr2BGf~ P^u "4Cv|76v;r7S8c$-$ qҴPe~jAzh߉Q^Teذ:%]z8,fM6Of+ixCкLn0/1Jh iw@]KGB'=؆>܎by3qhaFYrZ #u~u2y}P0¬Wa>Iwhyx3HY8)T\)Hi90}xI#NӅX*" y3]&6D=VG ܳp?R7={G8 L}ae3ZK[W(n4P08?zZ(|$$Y{W5zfWYNsKr:Vb:)S|EaC]xr.GPGB]~YGhy#P_bC17 5h_+#.GKz Gn+XH$NZhCR&w?=Y@E?"k,H?pi5)UQʡC07 "sf=/mdؠ0ȵm5uc30α"5*u - _Lp"*xK5w⇊ C֐M_Z߰,)_zꑒEeˆ=rsg+B3|: @Hx{5JNi_AG*gF?pWel4穦+Z@)f6ߌYsu:E3}s=loǬQ&$~LD2Z `Sb/7("ȬC('J.4#\PBY~=x+*XSҐ:KCDQ**lXT{ 3Vԧ(>;8-LUy ôA5`57yʌٌ%tl!1{p5eӦغvˉDU'O}5(kQ>(pI`T.Se;\if2X%~Bc[ wluzW3"xQG%1{J:+;*F%k&<~v.?/De0tt9V̗iNV}ƒ-Z}ѹE Қp*C>t2)|>*҃ c2xS>Ai;&ؤl3Xm[6isCvCҬIiHHޏwŒ|пU1{taóeO}ӽi "贔u+Ӗ2ՊVKCRZ\cNQ} |/#[oo '2KhCӚu֐Sj'| |3su{ޣRz- yeu Utϧ-Zb Fww6>#غ_vI^ c汱xFui-Q$Lc2A)J2<@:ah{&nOv:뽐zRSv위ޞg}M_ "z= G7͊?N1J6i/=V4MeUui n{!{GUl2PŊP2eь@[g?Xz *82{!3kXb1a<,mZ;r#oX~=O*5naVrxm+:?OzW|f :EE eIwv;}(ݘ{JL[ _(䄷3ÍɊs՝*j;?޻𭱁GVq*o|Q١2"eύr:Y2-!.;7jKQ)D#^ '䟌do4_MH=չ+ZOߚ3ы D𖵼1spl~^@w2W,5^QUH۾h$¡-tD7f)\?U<]rبL. ͦH@4/5|@B+dSa>2J1 ն/UNjN2pZNߎ8Y 'TĻ%{BUH.G!˟sv@ cBQ1D}߬\!4mwzc4Juג4qkPIXZ9Ak߷c&eQG,DČ}(Ý[ޮ>3& = 鲧dHgϠ̚-9fs$O3u2kq.9@íU݈~P`%=g#eizpS5#R|tdU c 9ӳGؾT'~p끐1|gɟ!/:8 &*<>C"2*JKTR%ED/!")\n K}1XMAQ "' 1,5,ň&AU_*ô9 T8Ϝ ަ_9ٕåkS#tk)bwh ^(C>Dg,0چVA )H%!f?l f}Q`B3"W¨sqiH!n H5rY,E=SzP7!Ӥ믯[.vx\FG@2D^ {:A|T<")F&>hS`O?!4g<[0G/;X xg(P-/|ǝJ2zџ7akz[dse&<R `(0K{{[_LK9jYIjQaCb(GEsC6s&[ {xSrMkw!9Lr  zI;Dxf= r Dž}D42F/#7rŒc/)f~ ؚoTCS@(RC $ėƧ6Z}wBoE =/K7LAp8чL1zxU"QjϵN PK|3~/?xD%8"y$[C3w R_;MLMǵn e6sU7 k/Md'E~tyox j.tԬMυ{^^Xc:Q[?,ˆZNKGDȫpmX3jB:($Z_biz-SWLpN}"^G]: pÊ3C\B]iI :FW?y+6JY&u㼜TnܐP.fhan"(f&jV㐋igH[;99AM"`|$ \yʬDCcͷ hGO!GHēRZ6Ͳ$O`uIVi K` i"#azgAFWSC s}]}2#()".2{i3@O/l`m[rg;8uLe![L$dK7}ռh5Xӿ!N`Ww'@Y QK͡ o%Scj&'|s9Ū"-5䦚:`>]N搁x\c =>Qr?3q̕S V<˺ !U-VJW2dRy]v{RV-T2.kO*VJYMy^L֭w>.73kMԵc}H4 'l[Q7RdE P(S}3b!+>Rw[> xml?^3oT{1-d)O/{ b7xujdQLBYXV@d6c󸚏e̥L#&'u|'UYHQ6S{PU+ym:afEcϘr S ed7~ȼsSZ UQA&~kLk;ƘRt(J 7:Xkls{JI &R'YM2]')ȷK_-nq|I(63A%yzøQrB.l&Q}D\7+'Q/E 𣿭v(4wC`[]:jFZ"@g!־)++w>3YtF=] g#G!Fˆ8tqvz2WIm#72 >­@7! #J+װY=3g;P%伓R-dNAHQ޷C'GgICgܲUcwAXP)s1.c\z"'<8We qTX` !. >c~oL탅lZw16qI{uncJa,/ Âێb>.7$NѸ X/ڽow@NeZ&n9FDy}MnNWGcVal9 nv˓L\0 M ZYPvIuOzK[."ymv`_ԠGEZt@̨etXma_4{MKMVn6crK%a\.[3~-GNl#@II ŔfuظZ1,{, S4FKu:cm-o*(Ǵ_~J<L2}wWdm~|_*rEnf45׽Bsp_/҅jI\ [%`|b)/=DnT||q P)IZ<+ӺHk{BA֫z%ң0| <~Ai6S!kQ~j[ZU͎轸v&Pa%uXVө=j56r\ :dvRez)]YPP~# AzXyQ`1!*0.ݟAV!V3鲕#`4Ȧou/!їJlYTD[ yazNOaȚOY@'ʂm4\GjgH;Y Iuz8>.oegRұ\qC,,kR2BUI.jl:+gH5GcV1CO3{JgĸS r8y"uyTvVUJ"=Jafoenj bZ1kЎhFHWq,"bMn IkZg5NZ~Kk},ir`K+DaiMۨ4]u΀Vb;gO4LՄ 4YSP@c󽐭{'_|GJƆ)-n(zV8No`q@a^1` eYTis$g"0J1]S!՜`Cu)iYp&Ϛ|A$0aYbJ.'ݿVa4S=ÄvӜwZWE[텓xl$0B_"g|"JXF̈!)^ʄp7$_w`8~K(@iIG5 g2t@հY ݔo;/]տq%N6SWgQ 7Ng>OMV8R Kβ\:bTgR.MG}P |l?]Lus`'6jI[U u`Ю|3 nٍ|; -aȡV*C!!$D돗Ԁ0Z<&$0/[2:#/ d"d⺬6t١߈MK6fV=%3_ 0 Kh񧱜]xsvSTl$&S~ef^=Ik? +JY?InمqnLN1>õqm:7P]7v+pFdA'=U㢾ϩݷאHu%iF`Gart."ښ4Cu =B882mG FAY c+*ǐz`/$.6 els[bMӞvku|gJ9HVH1\>VAHFʘ_T=5rշb2搕&.SEu<~F˗`N/-eG2TN(0e x w\\ܸRf+[\/:^R e# Ķr,)v5#cݧ\bvV<ΐRT"/Gw(kڝ.K9[6䝮3.-"$>BPn#Ohkࢩ \T3⃜2_ksFIv)wG^gʛ͸xc0XVkA>DОkWҊ#.[:36~N XPti;a52DY='Ho@`'w>f,DmX?l0f#̺I]gɿ?kFg%@ [Qopt'2CSk񜿓cǝj2׷Qav*c?wa'nXߕJR|zcYwɝ'kS@j}!{Ʉs=o14j:ȚᨑtP@M wenUCH.?$gC9#CJL6d_%s |6zJ& Y ځ;6p#+Yi1a V1uOۭ颪t߂ew% C0Se.,?.ެ˱ǡ/gX%R;`K-.{HƆ?y_աħV; *GlBpvXɑo3&N9`ku]ɻo\瑖[ns!`2411'wkeg PVtx ,\C7ڌ(\׶r}.?mcy$+k}}J[Z.[E[ l|l/iLY\,^MAEu.o`;xచƶSgŐm'ȏ`-qhAN>Ig5;9"TO\ Is'UiTRF'.^ M]dA-eL7'7M(wXĩ|/Л{92D՗NYB@%[ ǽvEX\V}ߴV qbxH"wX7 RB" %m7.'g:uiS;Gx!J'\t$Z>31Bee뉞ö/3;?6P| B?_IחWCDHe3x/mbBg5nzM[Q d9/_91J|n=: i!{#'gV8U#Wؗ}xXLljpS?NYתݡ1OWߖ~V_8ײ.SCME[/^vs(Bqs _@)~v OxNğvszˍ -eaPu΍5}S\S@[a xfQy24εd0Y3f"kzڎ̔ RF|Ž.],hH5Ș-n#Y5u_JYvRUCt1̄)eׁ"n@%/tdzhypHdF ʦƴm4BJ^N%E^Dl?[pN7S#At7YRW^CzN RDM;F4oQN]I}Em]IOcA.u[kMhk0^ݘf0gR"\a9H>*m*֣ݛ=}AB}?a΄H 'Q@`J.l^'Wo(t*e82LwNp/LiOxjdy%[oE7T*4&gw3ϰk;NJȐײUxbaR2^4AǮFenGSU\$D.ݺVPaPKQ?mӒ<Ju֩ , &+N/?,[^! OSoK r/"4#t1/webRtbILvND lT%)N.,OR=qˇJӞ[%?aǜƐb Momoу)8]"7'hg"qbFگ~J_]$w{I-ݜ5h"t 仫.FJ~BͲ2aV@8%<;tҀ{ <=0Tdf]ϊY @n`CwCJKvY|G~)uGO$إL,@( cCCO0kNN~&:ncTY|fE&T NB{g3)b) n99IN`mםL=*[A`!P E^K*()1Lɺ4HF_g?2l?6}BL|z}.O^o^Y5*T-~`ɿ ͆';dn.⚁^_+޳ãH|#9Mv6.<Ň;sttxVw\/ 9^KŜXyފ,j544[.=a1Gl&$G>ԟQ3VMik(@ ),"z.lt י9-;CzmB#d1![}٫`Lb@ǣ'rڱ]|/<6q1'k6X֏pVW)NAK$ H`Z| |6nk#ߟI(aZKvʘ@99ʳ4).*p֏deZ e \Bq 3P`1P,ڪNB`JE@UM;MيnF#P.m 9- 7N7Cס.eYmMWτf0=C8z_nTЌqfX/ 7QÔ [׺|+8{m;3tnT ́mӜɍ :}p:Hf}Fǻ2 7h`j;KnN~9UT([eU (Ityb2輦B!BֈѬNzUrQ55v]h P1n063[ 9'^ F88(IxqsbdS3cʔ{JGVVA)Fb"S80H-ƇiAF2g4s\eRZxAԔ^MЍYr\a c?fwoS CئKn6_-!"7Zߜhb]5O/KոPo%!b*N]dk"㐢 U3wO&P}+O?H[8VbIˣw GMOREA w}1[{d̺/DxctYbjƮʈ CqxTV۱mׯ[a( >K_dMTħS@X2p[{IjO7OO$GJvÁ&.G0@\c/="OU1[xjDv)~q7R9Bnٸ}ھ9$h,*BqҨ^{Y5곢xxhU"atl-k#.X`oJ=aT^RᬇE`ex吊KU%^Jb%!䋀v"4b.4(Ut~\-)fҺ[` ^cLאD7P6<-&{$X.dz9[Pbu@)h WY#HtT6-tn݊3٧XϐJ |)sRPkF$[f 'c3d? 7FȹHHV*.wOrآ)41T}xN^8=zp@(u?CŽĜհ.5Gۮ̘f ɓiB!89qssYJ-L'bV ]|ʨkHQ_F Ȗxdɿ^4e.@El*Zc8:[Ruq?@:)*H׹!8c j8BseAx[+#/Y#ߞEm,S=Oi4kvi6z ӎjf YE v/+y2Y;f]& LAS°B _f RS=7yn?AZױ};fnQ\6)"tdG'6_!"}$TYFψ_\' }_B9=)I 6,` ̃sb;Od.k8gL'oQ[ |4?GMZb]5#KDnW&/50񪱬7yݒ9hkԢ[-<$Hd]ʞ{N/tჳ=ЁqDMVb0(pՇvJʘ3 ^WpˌHy3qx1AqL!agىә`h}XJ¸#{GIME|@mNM4MZB]{Yn p"n'bBwvOG>%*L{L9 b:6}5{=ANiCiR~-+rBK)g8JH,ig 8G˓PsD}-}9N@jȩ[rTE {"̮o`L]?mP k.O݃vl-qA@VP{< =wÃr1Twx;؝$?4rdV+5thdյhs6X_Z&r 'Cv?[g {CIr>>}Ԭ;Ы(V;=3`A6(r| H,j"O4kC .R8/3`W NbIۦQIڒTL95Ke K %yZ[,3#,e~&JqFpTl9H9m,W֢q|5ߓ{,\ svF9= G<hKQoq ,Sn'udrQ%^Q#6u%0I76EDMYLpIUA좖I"sN5)J`Yt6-[ :3}$'')cI<~&$QB_ \oY RcTGmw܋# Ρ T=s}n_)T Jmwd?`Nn!wG%ewqcNu ,5;V$>Sq6! N[]sa X#yF:Dݲ8[. 'toX<D+'{'8O ? 5B :0!NOI1.-n"Y"vk 쨬=Xԣ.#H`!fpx I#A;(߈8AҸ>NQkPbmR҈FW'9/FU0Q  "YL͟m {3U|_AO{D0݂{YBlE&x "O{ 4 q4,oÅ(D>J)a6ty:q|H7ˤ:[}Aְd[jyGIi. wUrG}eÕhKِ.FdW,!r\1D#>SӣObfbP%Q)J.z7x>OKE0{XwJiSk1\T(SUu*`-kL)`98"\p{џp",T1@cR JK%/H]/#(2Q؀ÑGqR&]l+ mS+O=hӭ ]9RX1S{s3pX"&sp鳬nT.Us%u ʮ*փxOK/{2S5~+K84, # A~m텺B ])/n.PbL5C"#kԢD_Ȃ-#% T[h]0Mtd!rD/餧!=P%t'I\wh-/?Xoaέ#e$JRq 8QHUC7amjyH=ށW| e>wK)ndcUR-xBT"C|}̔ HXc.?ItYD9 x FnK/5CM\5Qn:FŇhc-yN_lɤjUNIj\ceY0M1`o>Fρ~}ӣRChe:AO90aL~W/i_%>iBUAM&`s*A8%al(!+&b,>š ggi+뇶m`] P񙛪 ʵDN'G2_31(t,I+goI$< ]mT":&%֋݁w9Z`0/(90R3`z M3i1/H4] {)hpPFތ;~G'b;d^%D:azRP.Np!l(%MOY"ZHL aLطyY,Ԇ`6a7W΍JjjF9 dE}_%HZHfg[zuUQ-IZ"XS`?| n>_jx0uv!n_LQuܑeF٠=ݘ1VT4\ǚXSVHJ'-FZ#ܯRj_QZ7 FL68WGJ#S/>HvKۤj{h 瑎K6J4,6Q~iAX&-Bo'5rEBd>sY _l)&0E>Be%$\1{R=rZkH)?MT%Sݛ\xN*z;+] |nZS;+(ouO{VIG|t /ܽY1O8L@:D`,{;X*<@Imbvb_/JC|U+2U- SEfuBq̠-s1 v36O - Mę`U*W1D--޻Mtr .l]/row_yժVC. %`Ul78,&[wuޜi qF~h,k Fj(xC$z&V-uN\oʴURY°+:$4ɥlgsB$W8JOI[ɿ3zk *>[U}iD?o`菐 %Q#鉡%]I. d"2֚l$u ,U̾٨Gcj[!(J$yK5~@uCEbIӛI[bwKM vr|4N?8)-IYKniJ,`]F&SoM \z.Q1SD:6(Kɶ#" 9 SGbݸW4ƞǸ 8%UzHvlhӳ,P-;aiƞ3<4hmc~BF6HUq^i^n u[7V |f0OKh]{!c\_Ӷ,-c1VX\fф"0=z[AO> \ 0ţꓤN<[UフV:=L}Q:3xg𓄋w$+a7`8=÷dL^ sx1- |rA0mW5I?GCY ǽT^SLhչtyO9ht-d "<7gjz1j1UC@WoN)4BhG * 4WX>T=fA(469A>[&e?fMn ZV ɾwճQqx;A-m?&/[0bP64 6<4teXrDjӴq>Mjla3x ukdm"O4gstTU]VL.ԗNQ $gOx618yX6,S  ]}ȼW*Qt$1"$/\:D)qnVV(ҩU>AF{7(&Z.T C 0ez,mc B'pɮXiw1l$PG%FLĈ )omZ,TQ4?R0hT9go=F-q>.Nƶ#m-?Bٸ;x9U(Ӳ#vy nhj%~ 5fypMܦjkӷ([^oHl 1$8 qnѬK K0H^٢St|[*R}!1H/a;zU8#q铟7"[L\ / ٞíkᜀz14JmY@*yOɁIW+.'z|iuFFGxc‰> lOym_:]4!FD{bkv BQ&-mf[vwS&鬗zva}|*(S䀺01bO2!StP]kR23r_]~ M[|4a}bI2!o᝵B6j5 nܫs1B$D]$grRoݕNuGT_wʬ.f*oy%Sy D[zc`4"K=8_]7tJ#N($w ՚ z_zG^P{QDo~N|) 04_YaJ N+F}-\$Ԟm6Vʕ$J DžM )0ᡖ@GE=dkj5ydk:cOɍyғ>`gc>RMj6օp~_Gje9?L*=:DLr<7|(t(FC]:%ҫn[TZiѱ fʟxfgݥM9_;x7u1LɍVMvg@(,@`W=K*fvgl-(@fSFZuClArз1\!%)ji[}B*A{Vӈn~Nwp d_]Qzfok%߈ `!K㮟H$*%Uz[I`IqeY#j~L'p}$BYW=+XE?;mtѺN ,}e# H2S~,JOs'|`5MK/ݼ4B<̄&7#Qa?RiT#os&YI0zkq$*+|N[bNwR_?qw @2j9CWU,nzahx_Pp\ (.:w j3-YJ;Jye(!mbGaHv% exjZUd)8܎ fźVYꏅVH1~qҏ̝+b7jpPmmIFHT-Tey=iv߈~P7DylQ]8,x~`i$6i/@є"Gy׆w&Q[(q`v<_;| "Tr5ϾmO1tUAU0AqOBu&y&ȒM?k6,B'- |0FBޠ!EF@{8|p} cȎuc̏»snrp fQt%cB6>NNk\$KE]qUsTl`VɨӬ/Sdb+lڴ+# "9Z,2tnZK@?iBsϝo4cFRub@)kdMuEzAgB4TLi am^*z3+:Oz :C3?N?HdgKۂU`XF1FJXAy?luHgdgca-o Hn u?Dݼ&c?6Lɜ tU aEwRiRMifV{ J<˂"Ē4BBAbu0)}J*U%]. a0 g`:R:$%̙"[nIU5r?CT5(~e C{/-'J)j%f4BI/3/׺Z){-CGX9z*2OW6 U`6_2.AZ[ՙwp;,$!(o O'2- wE8es^?x!Wn;3K8姼i:IO}2 ދQ.ҋ5[,2 ٽːr0T/|QO7#0튢3Jf۽#٠/G< T,"x\t`<I&0pMxG"pH3ZRɴGN{m :TxPϑph0fB=Ưǣ& oVj#E5W86Аp|x|vr7-(S.[M@ORfm & )tJ=rhg"Ҵsf9<=s 'k PN** 3LҌM\#Oq,ɖ‰Ƥ%cjLH,)(E/%FIE_\O LOy"cb绱̻N *KӇc@X&TU~ʑaA? \w7Λ?ES d7dU}xUVyP^~%Bfm`G𥍶qo*z>KQ`F X0)Ln25 3FqhZSk y.k5rwtхcK MN̎*}i^k2@3__SX ?qyx_ƛ{ \eY. rL0%z sbsdơ StwρO'럭X+ )i@:V}<ľH]:TRxB]OCސ5[U:{:m]xCwTzU"*9K J8~Qƭjfn`SK-8Rsʄ`x,!6v4BN?vwelJwOb۝S-g A@˿QˤmMAy Dx9w*F.c$i]QH1Y qKr8sYdZ2 b7@)Hev6(P8Yp3JTh؈BnǿGU61(OVK,j]E]8 ;Sq22-<&Wڦ``5/{6vbC~^ju|6uZxh=.SO~&) @˕44OslD|NؔC̆ŀj 4`8,,$, V!1y$OOt*[_m{IR>qdPM߱*`p^XL+;{-E"7d3,Nu`hVY[xPi!JCA6%fX1ܖ~}N5BGʟ Ly_GolsJ Rx7>j]1/:ڔlG&QYȇ2Vˮh/Wla!_ !@ 0R[en3VR-s]ѹtl9%'*)e%~ [@T2lJ>0dC$vۆ̈lW鶓9]3_t`z Onkm=1yoQzCO2*zqd,4)cX3\甴.صZy>$ f]YBdP:ZvoJh@!pp{e,"[?9$톚TH~zl'Aen|~}yzI&";97a!3*ߡ#aDYP~zbP f95ʯ_TcPudL3q|D͜e :n@#%q".TxY2̻Ns TYuD\R†9:u_Wk{un & [m!ӏdtkptR%T w|$/Q\9n|ռPƤmI[m#E w)Wln>CQ/ UdYVLT z><&22B83u?3gG۱`.67pZY7H"iT;[q aң2XY j] [~) vڙ1,.bSF̪p D-|{=ˬ}01ղ)y |<.8Jmnu%򐯨Y@>Sp@vi^Qn!nx9; &jXB΋pSAň!Wc7h cT}` ϲk tt۱B`+Y-{|$ k:)xոR]D6O|)r.>tKJ (ƉC2 /:sE)ʆ4.\۟sdy{be4W2⤬ kRlABK-Sꘟ͜l_`MRڨߜKtFTj ':$GKzb:ǟaI_!-UB5({Ӧ^U]Iu,0[e 4X:Y:d§Kt.Ù H=Z N2 A]pϳspJxzQLWS-~;P*Re?GB@/{h(a M+7MlivyV'S0~Vx&d|]6ի\ |pF)&l :?,ߪMs'N5MI/BJ1[@ӷyWDkCXMB6b%'ٟdvqqbKNBvg+8$GCE;ġ 8Z7PAlG`)N?=H d QjxPѝ4W0qx1;kYFKބOa\?) Xm}:FuGD|U[GB{N/_bMg遌BNRP o\ZB@H}] 1و '}(LY輾6qUQ!`O&Lg8";?m쐠6"~zkDl ~Ѩe)i7d=wE>vR':&/Fߣ9gsP,Ӗc2EESU>/(Њ7&h)Z#LUNDs@܇ڧ|0 j} 9^ }15!Tb_jm4g%oZ)?9P?z{%athj1YXt?HgҞ~ӿ̚Q')&N!K~ԧe!ZC!_9{U1=jAb UHӺ kI[! ηMMocU7e?4áD`"Bbe%8z>ҋ֌`G c\ N^ 8uZ(8N1cv}b(vDCo aGWN9~qGl:!Xf0oEntfsֲU5'<@t[P˪:p5ًɻʢSf8kw-A]X EE`dG@ arggh yUz@i~{JOOj$/E2UDS? ˭"Ohuyi5P¯Ӗ^’/u,πۧj@wdzCPQj<J!| "2xz# rl3 ;-fA.J-I2=,헋P^`w[G-EQ!pƹH]0 ->f6U[ip,0u `2glpuv U\pktv:AVlFOxʹy=0z1أ4teqRt.hu_T?:q߀`\t8ѵZV2IΚwni=1 N'4$|9cG%c^NAj鮪'9 "oةstma z, QbS/ȣeG+ئ^f3RxV4:7[$ޫNIĹ*س3H)J#'ݱ~i#bYk2B{|gVLUt+*`bn:o 8wvEMT43SФU|-6n8 P3mtPc8P-R[_= Y\d9ɫxa:պc,:I#z66|!;vA~$WH@CˊQ0Ow1"AAē( EVlbZfM7^`kF麽AꩆciE;X!-8 K;!KRh*D,Y?1IoHG8Exʧی"%EN͸ensRַR"۹kZ9o \bb^EKF@D>`s[*C"Hh1(Yֵܺ&?pW]Y՝o*S("ѮES$4lHmܹ$>{)uw MJ6ğRU''e5 +Ef.TRU .m`xGOC3QghjtF8[o`AZ0kBvi\~idy;>_U 05k3}fZwG:U'9e@'Ѯ[3HBMcI'z}~Zϱ3sMpíV=Z,9\>+}yKnT2(RG46%iW|០2# ; q!~P ST?0(iM܉l+ʬ綂eٓU7Ax=E˿+vרC\ 60b7ˁ}<,\N:#o6895u0|ڬi΁O<;]qAٍmG` oB2lngZм#գ2eq;eF# _l2`*Lei"n\x)V1s+:C|𩽲,?dM$2VȜ- f:#̻Pqx$k!anLFL1wGhդ9KiYbo5p2 Y0a1YF3+61xj0~{yZ*mٮ9ȭV&‡>2:BN.dxvAqOy%6Xq^eyv6ń݄.M95'7=4;Bh8CiAN-BWFߗNUDoVBqkL42=+W˜rF}=p4ƽrka,t$JǯŜ yeLw1LytSKlƳK'5 e?'w5;0kd#mcǧ0Ҽ% @oVh4IZ.c!aـu?GxX_D1+S N>tъ拒{Bs $ؚIfF;ˢ&m䏻';;Ƽgņiŏ%**^B%^`/LTJ b^A[k3M>nJgW'/#nO160%TpPq"ӜUBV;ne隳J6kA4XJa@|_?YE&¾u=X0v>k9I i10~szqʇ :DpYt%WM-hG>6U'aq@-k˽ AZl ,wFKLxJJDIWQԔZ+jU/'H .hV b#ʸ;ҋ(7L .LLWKПo+52"lx~"\W\-0 4R q:w) a7-_r1$AY)$WvEG.hW˲) H*ّ]yht;X>=@.T.<%USShYL/d鑩m&?3؇oǁrMQWMvˎww8%>b;QXێ玵}oa4;*2xٔ'|8D־ʄ0Jqt:.o>^j9lCs@uc4\kޑi&$7 ~<|I|Wh3vT6HP)"ZAd?퀝 `ΓQ[r(rg=BIb2~Ȥ1}CW[5䏼-.l+^lCpf;!ny`3`lz9g@paݵN,eF^p>{y,Tz9$+

i^!g"ܣmLO'@;Sm¨>@=YՍr?^bÕ$evy;%f"~,a|71\Z@z;7aH |#;"gߟBw>~yʗ4{$OȎ5M_ #z)悧auu!a~޻cM͡}@f D~w8lHm|]hG16RN~rB:W/P`/"IПDb%/߁0=tώu v{Rʞ=1nB.{8.Ns7HΓRZI![z⁀s}eCyc#Iy@x]-;;xa59hzb֐9{[2 i:J*F]NzIl]c.hcx޲tW,4J Dx}p옿2\;*M9fya81.|SC1awK8KWtr"|gKp`]1 :(ȣu ^ƽ M|NQ\!xmcpΪeRAw7ԃ}LZFr=?.ߞXa}ӻDBLN7 r?̚8V$E#CeVҋ7h4KhK/? 4t 2N/~ɮ(v+zPC"y-64%f"9dA4–)M\pVu;i6Җhe Pu' ANɮs(tDcL`,go Es \܆ZxOJ:oG/Gĥ:UI/Yy{cLY Y> (T43 Zau2xe񚚄翧詴F T`[LjX] ~WIvgQhMYd4k)9Uz4@q DOѵH\+FSqm}]x.OXĹv bf10/z!cۈY|D#nU9!jɬPVT`JmMD&ğQ< v^L6س-Wzcn/&};:ԃ k brEhp F􋺐Gfaldbm?["aֺ-\?1O]<x[5肚c,ꮄm> %rPQH(  (Cx.P H9S\(T7I@[u +(94a>H YuaO0*JƖ<RwHxi*)jS=G;}lx|-J BBJ( IQ\SaOk` VRȄ#uA&#ꎇ2Ewqω2:9,:T ra~Q si<>JcN{vviq=r]{PQXq|F8ָQ(*Gdhj` RD ڑ畹@k <䝄5WX[7_ٍoU#0#E`QnFL LHn被 M%TWP6SܩCQYG63-3L i@]7B6 ǩ[N6F`v*F$˧IX)8Ƴ BvBo>-Lǡ2E"V*3v}4`8Ufsf(#nl\nC˟1S{jervoaH cYa{1|ЫnAUhUOn 6^2H$l[q70,`{FnJLLX" (lG>a|u?lP bvR} *mc{0+wIq Hgm@l0*[9EQ]^eo/\߿i@1$L<0T +w=G0rVZ#VYPVIx8DWX 0&q`zE*C(5L~Wjd^VLN7 9LƔ!Ы +gV@{m)15Ktl/Э0e밙SOm _6OJuJқ :KJXK_˯)t݁cZHW%Ym"~:d^ˇAQL!h*x~=!$<OĞ!?3ij׆ ՊgR=~$D,ZD'B`Zn)[0Npl|oĨAa;{ SJ?@3ҳ 5")Nagqh겱y4LZCI_DaiSq^"Zo.yzvP5&T y'jm. ]ޭ2$Ge?I0&8 άGMp/lvz/Keb߀ Cbk7kON_1rvW \22v'Qfv4%> ={Y{kr6ȁ)zvҜz 1}-"]=QѤ|4ÅYmhvHb!w9[۳zYG̊GA܄~|IN_5Znkiz1+GT<+ / a8lILbb_Ѷ:M֔z5BpT6 q0murH{w`%y= ,s UjMzT߰[b6RHꜥ.z6S`F*h;K֍㴯AxPȸL?pT@>Hd D%U/[SL8-bD#[jOUvih)qGMy}js{]hb o['yjs2FFTFFFˊ[أdv\aPxLXty`EV1YC!LIwpg=6·#T|-QQ,qn-iSqiؾV_)%}L) r W$[#=OXMtùVhrY2U][@}MsS4} ;4hJvsDa=MJ4U% J|D,9b&v&]d;G#5c!c"xN]xm{2;s}^ln#5AýcYL9 }>Um偽s!{1.ol&b=B=s2H⾻z!>S,|˸ϦwmkVG P j(0!Mm|Jz5z=9 4Ctу7Tt95$!H0*d]= v7Y g [>ΆVހ*U&cLVKxUEs;Imyfa1 ɝ]vtuZ+IZ}AUwpZ7RԞiX+n-, C5Mh{86BB k{^]UHI-uI'Wfr<-2fY~aRrP!9.<l8x@V$^rnk:Q'1>*0O:JyTfRl`~3݊N@ѫ( e<.ynQC< Iq %ҹy$ڒ+6VspWq9=2锵 h]G)/~qubb4< @ۗL."ko88ӒӇf9S0QvKe'VWʵjp"1Dvi/ V/QGhfɅ, $D CEfKukB?T|w% Vv2*i9 Y.&5tICnt'R0(G $3YY n3.cgAmbD,?8Sb5mjrv@5c }h~+VҜᾇa}1PZ2Z|d3BљcWԴbJ%uaY&HJˣ\X؍o&Mڅv$ף#^txPYUv(T7=^G2PE(FWb%h˿ gb]FS X- ͳ6^g'ZD7Mȝ*[tٵl4֌YDFIH$ g U{&q{_3%Vhjy}L02OAJXP*ƳXBx߭93f^1Q kyݓ?W>I2Bm7/>8sAVj$h-rZ.Vi*~_eRO\ɏ<# nť15͸Jb|c[•U .6>>I4RDۊg8+Փ*n3#3q#{PS eߟ:q >}$3nzeY xr,$2Ir ^҆9#dX4yeN lFZJ_RsqnCc-jg?) AIy·۾ia-\c^w&W'٦R]mya!!^;ęݠAP#[[)>H08^q,p-pK OݴbM|”%a iW&[ʒ ץ@ΔnZ>V64BM IWM WI~L zPvbviZi*ytM}ʔjV^?7=%ܺޟi-1iUfleX F+t,[1b8Gc9ܗs`hq&n=:$́",_'3$3.+I;]~U/D 3b3umo3++!̊J`n*qQw=:F_zprR[[m-x g#▾C~vg`]N3ޅ'\ rmg3vp-Uͭ S%6i؇kL"˗9rn/?K@:OK=ȵ 9y J!"f4rW WѵAU82Ɣ0H&cх2|IP*Q|j{%hB|茂!yXj>q ܧ 0o_H/߷.zqw~,kGhFEh cs5έ{bwgڏ%^#<~Rb X&?D<CZAe9Q?vL$`G͚SLyJL4vimpW32\4sbg$?F~FN܄߆nУ$1+ g$K/-ɚAcr;2Z(n@IgIkP7!Pgʫ'z9pUNf\W'%_R+ o wCr~f07^DVSK 3Dz'LZRMxV^d.ʒn}ݙQcV.tG1Z~gi- vUAz##kJa{kɺ7MR(GcEYWETPZT~%K,V` [.n]lE0ÑI]u~)u\2:*F# B/aJpQכ ڡēmꂺr)JO*]֛W;jжi=-L/KsO/O5FPn_NEl3u4s ];/P BjʚKX0YpTnSfj 1őPR$Db࿩ϫZ /B A\ſvRS`?9d8U~Is3 ymp /|~'S'ktg\ %Wv!r{^.c^Ң;|Q TKMNnwAYqB#lf_zb$BrK)um'21ó5KLhUϰhٰ Ez({+a`%pFp2TC;zca<==TILsp=q*gBϠsz6{le<˙T$wlpՁ)e]tbqRx u.׬[MFA9q0{nq~wllTe~vvj>jLleʾVtg7Gai*g26CWU#BI}~s43`gHؾ,G*+9\<: J_҆mFZY)tXŜ9 ;G4،jм3}V宖~f_[t%ZQ|cUcBV:AU偖0?!Gl_d/OV<[żS݄btn`oNjFa5sˡihPba=d+>L[nFm/kʨC$#vNv W;ָɂoV v6JJ7}U/a{aYNĈ&!?)vp$pA|s+O6zW{wl^U{ÿh";_\,74jpP/ %W /h_:N~w3I 6ncwt:ؖ p擈T "VIp3Y~fwgy (\fI P܃)ϒteY]f[=|!6bLn9ԡg&ASGI,k[oNg4ԮA}'-6vBspRl$JqUpbhѸ*Eᾜ NT]L>2#?EQ@uTyYI7H+2|yj2/oӲwF[V蚴V1 [ssu s>l+3`. mZ}228x>)" v%8f?:X{)ݙuΫ0?dxh>IPyvSтT4%T}TN1qđSi(&CMW-/zߖ8CDv]p& 'q o8 Ԉha[)? %m@90D;!JjuU\X 2u s!6_OVKQ28X)2f94 PbS.EpjbD 7:qXy8Wj/~ȧ,S 姥s_X^R?אewr2@]'ƧoN\4vT^w}0mg;,WEF\?/=.wSTw'W͏__JWO -hͼ+{UFBtE|-画̴u9' `,ZZ+;|D_32plgp?I-[|86$ +%Y9N?Gr[9`A0aotDcK|EBZF P.C H<Q/XEu"b$[%ٸ)QN2T+.!6Ƣ̽U Z?}b4uzScd2˄6L}ճ^s0]zVzuF^vy(Ō 6ӳ-J 9I w&kwǏf_FXّ.۠\ݑ 4dظV1 Ľ%2FuW*Gn@V-y*h!rJ=d$|I-Ҿ#kn0uM]2OKV,LEĈ9!Ue)afERu%IcNtוwmxד|yW\%)rPgQ[%vzh85o_+Ì}e_2=7Dzļ08 qM b˺w<|+KR6Gl_.P[oLZ{~$>,/Mx9zeN ^Dk҇W;@j"}/WY@^|f^ 3.ӤyXfe)*[WC_4_CN3RLL FάS=Xv2F^fߖy:obȧFݛH.;]NVRU]En}cl *A93϶w! ^259#wo{PtB )0ox7WtU/t8Pw14F^ I =ׂ6 w;s\VYjF"L϶x,PU{Me"`bNaFxG)U嶚 ha V唟(0hpUh9,î`% k2Ť[;^7MݨLdڈO.-!+ƖVh7epaHoMtV-,:iؚ9_2zD3vȧгC ]v,XEQCC;?Jսѥ$7`H~w$%_{}D^Mb#A5Ysj*p/sd*J' [s׶%g$ KPBNCfB}w殧ərsnlL 5!̿:ԎƤƫc{fc o!MR~6-Mjs$k?AkդfA]R4J@ꚤfE };8Edъg%I> Jb_29VOUZFP+P&_e+KJ QM?`@F2~_9h|62KA$wQ*i Fzb"d -0zC[Y3rʏr`Q\hT`7H'lWyop@sW+ksRJ ސu؞C+}=aXxDsЊ }_ǁ\ 4Cct$ș>3uMskqߨ? ~9sƕm]Jw O !Ԟ@'-HK[IL *+vCuo,.[V (YJo`*]WSկEQKjrf3ȯ(t|Q8nF[s7VVޱOIS&8oN=y-AĆ1=̵jv("^.eU% i[4g֖y.KW'(= + s_^胺nP s?@n]EJ  2ݨ2V^H_'/;eYe^TBF,l֧K͂{7V\󅧝} }=ZxEG=R,[7c0$Ѹ>< (y=w{3 G~l(Đ񓍴U,Dp<[Y Is# 0;[ýcȌQ1LS/WuhG,j=JQJDJ 6ĸ:C@PqtP3 L!R1䓏>h;5STsŜy,6bkr{kDIo26ySaIv\ro B0~تWr@5VVnWD|'R*&.lCێvByO  KDG"b}7J`~w+^mpGIp' fr_G;񄄪Y]~fkx1"mc-kC7F(߹Ef#x地`j ?6T$Mд^U9hw7Z˄7=ۂ | C޺( UhF8'8CLbhYBp/\vY*g^\0',ꝍxF.ݞ~QHxY Wh˂`|׭1^.  =l(,hњsS3lMh~IV&[dB zs <'րrKX>+Xdc Qq.v:.'Ts&JW4-~ԆJH}D-{FpJJ$ .D'ϝ9SݜR wE^Gc ~RgV>]./78->fx{7`1?5H4cP :>Н1 ўKp8euj\V~¬tP1r;ݚIktI7eQuHE4 ܠA@]%am*}g 3Y^(($x3La|s@iG ;GnL{`$C]*Wgƹ(a`xfGg{Oq~ Hl;g:7v*?={u4J-WDWĠr1\Ep置PIlM`0 ĖLWDu[WVOd[ bkbX@]x(c*'-FwWumμD V`a'2IiNp$@<&XON:j!wN&鵄RɉlcxSL@kRnwX\vC#-@Y]R7v ɯXSsHQC^ "+*D"mƞ@اT9wJˇaqq1cq$)..+WXd<[#ja 6c7Iq7h!)QKqoJ{"bްfMG$TOp4D䄝9/9WI8\=7g,w-d!lٸ;:P"QѺEO ([@x#']5@U1 }msr2[A4Tg֮WH|.?h?Bb!Pe؊yaL^ O|ށ@摠Fa [܁=LH f[_Z H5БΝ@Bկ-ƜA č6y(Mʦ#2 :O&ϫ/¶gt1l,!  k /s7S#̎qr/ĹƖ!<*95F]*xL'sIwܦRuC7L˛ .=^4;ȭ8'P[KH7PP@`n8&;?LGsҦmLTg>qKcve Ӝ1onrt UѨ ŏ6BjVߒR1B_Lu+@믡]=t!:Ӱkܴuǹ|yDtZ}Ύ3q9y#Y<9F[Ylĵ A@ k fh\q : \M?$m|_a )z2'`"Fe-~Mw|nѻO :Ɋ`0N[&pp/4p{6VO3-xŐ&ɑmK xE&;rcھe4ZF P,fS"zqcNY`$hQ_Sj\FF-//ɶ6'iKt4`NvY}&8=2L&0YTnF0H BvYe^L?;:ÒsH[<ی<dk#졦{ؤmD)DzjlMt6Sc9>HrNuX&_"z>e^c%`1caW̺KsD3R4~rsž{.SwgM#{fIM;" bnM ߃ˆҼ.,5^ qӎI -ꃧ3P+ZJ!9$Ym])]yuC&1,֪ >V;ЂN^UcVMN,W H{sKG1x \yfT'x=(`Σ%;]a%Lǘ @D{G&kl?}vVT(#p (4/}*@?dՈ!S?$%p" -+Y4A%j(fS<蔍 c>ff$~'*`3cdd4\ׁGu':̠}v #SDP=u<<=r'ϾR+?_lt\DJeᮋ_a|č0B18>e 6; J޸F|᭺҈7ܬ+r WDv *Y> (AIxyq_ၼpFwᮧ:&|+3 i)^Ika_NJP X8.w!{iU-Xl )Q|Z,>{v ZW7V@I$&T9 p~rskBETzQQ8iOIk&/kD١FzmvMlrYTꬠW.6(T.(+M,LL==oؖVv^HD6Lt(R Ji)?SKL!t &{ӄ6r/W+X,XD]bѴp2q_>6s^hJ?TK"wr`/~/3z2irǪ+ĂUXE+[D`v@Ae\ɱJ=^ >@'QH *Ai`tmMH=Q w/s?[MB ]z$կBN% 6%y@,R½)|u;LJ-A8o ~m^ @U3Y9Uaб`$ H 6DqҪefE43PS@ ŏ.~9LwWf/8f.͕qVb:lթ<Ӯw!o{~ރ&/9سi3-WR5w> EЁP]`I$׻禒0pFph ^si!?YUǥ_<)<*-712<Z 66^űSI Xs2%V,'tr|7ZK+,_&WVSq^yOYnmR؝ŭh!3LK,ZxnjO{N" 7iÃD1Rff^6Px,/ƃx*8/; 7^&3$eI5ߒoRn#RbQnw) ИxM镦,sJ=JCĤAY:̷?k=2X5H5 q!P=0w4V3$Ua$-d΅M*մt.y} C!!$. IjȊxԯSyș= F|*RrU6K+JiN̟0ܢY/4'XلAb-Ox Q>΂a`ȃܦ1 ;I ̶~՚mE/4.y;|i1| \_7̤!"CЕ]C@vv Ϝ'-y\=PfFÈTHy7q]rMh[|q:)Fp܂^}2?JuKDٜW*qt 7[ԐAhAb؁ ymb`߼pm9+nzo]wx],l+s8$e;Jb.M'-MLVw:by %ґk󄺨䘑&/]N,? WY- n[8P^^{~Fs Z`d_@Uro& 8}0.\E|aV})k,dm;6JǒrV㨞Q_7JhoboHBW"},^-Pk%#.#=P+Vh chյ"/(!;M',ch@ ^%oy'XRA ^z;9} bkCFMņԬHckJ^rCqƹlӌP䷕⏐#\FjF/80g~F֟2/HHwH5J+G+V[Z ץ*OZD g+Hjo5#m;֢S% haw6;TrRotҥv"{ ~{ERc)g~ ҙh1۠M?fyڞ}*,i9E Z;uա+Rl_}#0'7cXoj *Pɤ6N֗]_嚥%, +c4nWAD0lnItw%*ؘHHx-βDLU)Q> UEDKHIP^ N؄ ^JU䬶:|hg:9:bܪ+L8 ȉBZHP?ğȭ t &rѭa uW#eaz MOUW뛪(3O!}m8/^j'\?QmuT:P7}rM)"k*WɊW4SS?\4Z^BVAp1;\& *Ԟ?F.GDw 2tb!2 [r?n-WJyҩ25:rcXE*vfęa6)NHL&Bدg x/Jc'W7^"7R/6N]x({[\Ա~YQH~[=xݻS_y_3.#1ǧ%7Qg&ޟ ]) WҬKY{B<ǡV@$!jup)lٍ?bO{ 8%=0YK3l%_.R=-pIȢf<&7Bb)n9Xz;)c~@4#}E2~|eT in>ԒMa,)Յ 5 aG *]`X Q)OI?֢c+{d?jw9(%4NXGbI7}Ԥ 9lP NnxgF쨇&V=?߫cԍR"䡻Eռ,>4@o/Zb| c'C jgw`䘀3nQ[V9q9rF5kL.9$nz3қ_x9ѶDj`>K#cI5[f 5ô2;i7:\md\RyTjaάg # <G*%ǥW$xc=Kd;k|V>X+c.ꤸzHuW&׸|HՂ(|:|b$bO-]xTXA 7"kGOɥg;`MjԲis { !1pg2=\v d(e~c].<d"cyD ,N-J|jVhӡVn؋쫾,A m>E@m>dxJL^h^Qsc<9of|V;]K_M}Q-w=%6<П喰boTՈ&Fh]:oKyA<+ L|l2y;ݽHC֯Z3M#' /x"hњ38eBf;h ,E~RR""&!C2WJlwD20ƽ-lc8ʊ!SXh }͇fR a\Cn#quGp5"SOd(弎rc%m[lVo:dX»huE3a]烣D$O8NaUI6%ΛM8S G+Nkܹu`iqHh[CK)oT:j> D&ml lME k>]bK7 ҈rѯ<}<\t);X`S4 ξ`&E]HN夠?3ٯᮭ"oTv5&:l!׽#3[v\.a6p6Y(CLk {VۛZ5Hӊ*hM.Pg0}(WE_x* Vfz嬓6@W@:Q)զ/7J_fvrMWs}_;1hl75^f:zvr {*oĥ 3,ScG@# }(dZtA0iٝ}mucYՕgKWepd w$/ߗmdC1IkPQAhR6kٚojItO)AD#lpM9vZ&%G5Hח,w̾9ڎ/?ỉ"pܖ&?ʝNˍ F\AKNlP xej}2td$JjGW^,?sPFք>5SMھy BUBSO7E !{!co;U᎜צ@sA\i8 Qe{L["RfyA$10FǤV\qKdS{Ǵzq8zi3ʞZ|?gPCDŽ:F]zM;DEr@1np'܌T%JOL_]Kiա&n7cVl\Q(̘k9R3; >>,Xsw ó#lqUߐOp2(w5 S=x‹4w?V]Am_~"+Kk5+q+mN5#Q ::)`L ֋A=!:x&6Ldsy}t=9ƒ7n3?LF!('ϼr"Q3:"92-{ G2-\a&(V~:Un~Y Oң-b\sɐd<9TWr:C -4Du{^7?Y|9 fD{ވB}Ρ'&b_ޞ3!5,0IS6'gvmX#uy1k$#7Nbv|ƪs8lae]`_}׼V@'5 BV dOCs8L#tThz}w g~}7j(JcseCBXi("&uGloD5i7$ĥ1DU˔{:(c:6ͪ5ZF }B;#]x [pM sbZw [!˕Pk \s̲+=*'wqfEZBpr.i鏟lƹ;qnKVQATΊ;Kg-_;P".Y s+n{` /ZBF6mN$gbJ?VP!t$ւ5b//Mr;1%z}u& K'7񆅨†|^/6ESޭ[9oRtD(JTY?OQe³o;͸"4->$}`۳~v+t͌񝺰FAR[vjӖxh*m*8wnwwb-|i?;\(|#BJ({?iU5zr{Y&;""*֕=ƠcWEe"~4D "[7 r&$cXd*-$F]3(EW߷Gbzj8i|9^0zykAb5_Svƌg}RR Wp~8.z|j,/:vWa0v=#푹0 %В,GXQGlU۱4px쁟,=953?s@Z]`ʙD[`pE&l46v>H(AV[UY)1-Yl7GݙҹÆHb;uE47:\Z\[p͛tWA8|~ny؝v,sIC,B~gMw#IeM'e-sUD{^Fkv i>̬C x2eGu\>RA始\Ùr c3xۂ"/#U,j1]Zw # #3靘Dx֢ǯ s2<5R#DLiMYi> KYqxcG[,:/7ڐ=E4YOarX'W>'bWi4'<:<,{b-|i-(<]ݘHtidwa [.CޠgD ` 7N:rA0xRN6wFak.T]BNY˗g^ä́:@W1\-3 Z ըbXF3%[ҿ2S+8`\ ?0RcfLDT@m 3ˬІzS_ΌhL9>\;~A%KVPdMTt"Y,zLަh+I9eFF4qm}UO܎WGUЖY+6s+÷BU&W!cP$1=V{9j'D~$ub. 4QKj4T< >HǞ$kR@/i'&od"˾]oTvJh(3$ Tm<'4V/j~SzްQ-#޻(}rD0jH 5N8$>iFL_$jȹ6b2TI:e2\CvҢ>2JZ(]Q4~-(=r29YrI`dFKp`V\ $ֻˡ&wd}˻]N.h.nSMrG d:`-rꕕ4̲/֍_jy9}M5<+/ &)-q#t]fu0 V;*n D HFCy1of7 b Qn؏ ,%"p«yo>il Y3w @`yq=Ueh2d56 7-Hl+o$)_Tqs2#Wy"IFR՟"z-M L%/xB!Es j]I[ z 3uJצؼC oayt;ro aw7љ~BcYBw#f˽v ͯjBlhG<3rNSZyKAV/wYef+5PRt#۹B f^ pPM{fjJx[1=F79ݐQF2g^xf%+<NpC|7bڝt.l ?`;ec4݃Bٯ15=Ē=ȼxjz!߽E_D+Cs4;6767:O G8 ]/?ւ ܤxY]/Q&= @vgOd ?nxx%kcJn *\e`?3DBiqaYf{ COnVL-{+/g6-|(@_+׳^B"Y|N>:\VI3mV0H\u@bGxœ0VW wC]M NObȉ" !V/3&,5UG9l wfXd3~U6 _ xj\3#Y'l2TgYI J >!e{n^=Y>p~\2جGZ=0L7f1A*>Ĕtfϖk}d%EڱK[AjŠkj ٥|pd~-'.ŧyطpqiAd~raX ի3<>ߐEp){Q _Sag㟅_Cdq3Heh#sje đF0"$ƍցlKX-1G=+edg#}9^3ʐ մH 7)Bl+j4{=Ap䩎FѵseB0 OJ>bӳb0<&wGԦ\y@鑼ަ ATNqo #iQ- ^MΘ:qfwt%@<>uJ,0^>\+T_{e-oưIfCe'zZuꊪ+|ǍbbaFB`[@WĈ<|?:8;FLoիiKu bugn;2He\ԑ13}$HW)*yIq,HL@q3OQ9b ԉ<#-3 N{l}2eAWQW8WR_2jeK,v"N͏hv` %I4t)݊7:: )If?~ԃE涽-O3Rf,ͣ90ϱk XLA>bsgӌ ۯ,kW¯^%ۮ_$tR!!;`bPu~ F~aQ1F۵^C=v=KxێecXIf6s6[^X33FV.OFn:RҞtևZ$\s63O6'$-xw3Qނ% /":^E=(W9.t)\b㊳J. |Wty $Q%``LM4?33$ iTk~ǃAO4Z~1> WbԘ=q CG( OSޜ $/ Nv ?!Z=4憘"yЈo'irμ%VswFKgc17qƐH)H?*5$"ؗ عELX3^sz,f}%2hc)߲<]v³yN em jp:%ۮω ?)@qIPdhGi}ƌ)6ImPJ4D =ZPꃆxx:1IkBʙfO=IH 9x3aEUN!e\!`o&Iz6Pv=EgFX2Мv(Q ]8J>@Jpi,rwYFh.lѮ/FV940_P5oĸNeVuM&quG~R) ҽQ$^ZFՇC3.fLݬh=`)H*I"׭7N&k?~e%yJZtb:XiE/rQ]#Q VzNJB'~5幝(-Hs+!+>.NAzr9& Q-Z~eDWi'/93)\h1e>tP"wJq&HGzrwTFDk80P\` LDПM=2-PfYRG|uJdA,l˟# @v*l1r&Tge﹂ą|;!w3'-_5ȜǏ9Vj?5A3?[<9 ؄rZ4Q6,@=p X~?f IC1cg~E8ܸ.ton^خ$,}=?&Ry%ٱ-Zm!k p D2ƑKsVf|Kz K#h`(<ժf#{Ì}e$c}~!ݓ;~VLJwEqvdCD`{7SqP@Oj3{.2(mԑ{Ѽ8_ڳ3} 0B/;T=O&mQ0Ӊ誐s`D޼NsnE03O ˅@ѨָϜz3ɐw=6rx \RNRIZYW$;f֔t f?: ں@!3h*EN2$Cp /D (Z=/SULP{ryQ<2+ǾYR xġa`~]0q|XزFKBWo +UԋVtdźGklh_r{(NL_`;Bc\nD5B<'şvFHϽG#/àK3G$l<-a.C%'#<&7{Xn6vpmAK='ܔ先1tЈ_6sPoj_t~. &.CY=(ֆtlzS{IdRffx^ C,XQRk,=mCX2k޽ .|A9.o|IŃ[T85Hx.o42tIyZ_8m1EoaT,영q <-FY~mlpw9mw! uZs&z4T=l-?4Bfv/P6*]VbۇemI_H5/ >#?V}cC^MCX|ĩ/ֳvKtDo˜H'tK̲H~¯YΖ ĂΠƬn2!!ji2b e~2֭ TDͲzRC@ V+zAWs ѧțN[$B|Gc%KrKc'D8,=Ղ[ ]$ݭ}F,'<ڣ5 ַR?,=́h?b' %tdDkQZ lyˀ}T](fu)#*2}08r7#eΞ] 6c!U-i T%.g335K*2߇4w|H..N;VlA;zϘOQU4Y0?g^M UaTGNM#Iia'Mxm'WBs=r3'<؞wôd\Il[@m^9tmi^iRPgGƼr=(Uˁ֮Iy3zlWTi9xT\WZcqvWb!d{yQ׳=-xa\_`w4^X5-aQǦnb :QU\GRy,}PUE4…L@m_L-~'J. $̂nb1hC%-?Uo[;,C[8fGIul2 u|N2]{ʵG,laUx RɾsG4W%B?`tIK ;ޭmf$jdM}|ˆP%]UwW2莑g]v0|;>sۼĹR6KYd׾0/$% [^;y9r qpxxks{13 gd[UaqY0";RNY ǡ= 5 }lvs™ܒӁHtv$F?7{5WrWN*Rg2ȵVdD5BP~|Cɭ"+n>J =`׶/2giwc'O1?/@7I"ht3fh%VJ\Ua:[tldHJ<E$tP!*Ϧo̧`' |W7cX'sήAl3 ތGT/ L5!J9R|3&qeM)U7hCdS"Yte<̈۹OZ뚏ĄP_x[ a .HΗEL"݁L _2 9ir,{I뤕x YiFPgUN3h| ;x$d?TvxQ>K2J?Pf!z3quI²LR5.QOd<&}w-YMi9kUu I9 N(հ1;.|d2TSo1;@`kry{e[>zrAM cY;{yy8eS^7vz[]D_F/;cS̊x𪴫_yhx:1N#_~-U>ίlj"sP׉Ψ)X=UcC&~c`#:U!*ˉ{tx(\9s 퀷d=Hoz *`T`W0YqFLʴRG@,OxIP}B<:]),G^0D6Pru.;AXS |liI P3|k -ma.կʂʅ[-g1[$Y(#v_8O2^|!izڷj#+h0x΍v S`U.u6?\ /2⧘QLLNBZy fY9~syciGi;;?>zm[0 '\Wƃޝ~mbVk(KF~,^ؕs$i2a͘s ZCbӄĐECbv=yKZ#iJU0D)eS?+iе v3竄ZZa-v5|OǶmf4>,e)SN!Ӏ`VT[.v37wԫ̐;O=c {U37߭t\k tMW2S5$0pc<yAPVCwh|c=b[cY.9Xdw1삜cicW>P^Dc 9 4 {3CQ^)2lUk[Uk-g9Hu!>=IP9D{v?0k]zr66zܾ <%Ã^ڏ _t9Ys1L 0#&{rJ;` IßMͺIQ0*E'b(1UM-JQ' (6V)ʰ6 p"q|\K?zٟ61V?h$hW)=&m`3A`ޅFbȌ>%oENAZL+zP(80r r/Dx*Z[ Y&Padz<ŨWqSn7pS.tn Bv' *=ىL*5qge 88BfY͝gRG'R]MtԱ[<~WdKRbw4XLN|DQDJMhYt5qr?8| p5Ok,iưjbhY<n$M9 %Au0$~(.S6KTRI? ݺ8äL[:yۊq5.pXӜ]̵=4TLMQqd o [69 1lϴaÎY C]eZ؍aO !Wx@%:q%\mm$}?F>> n5D|ZѤb[`Rn e!4)-OtA1_DEΖRO\?7K!Km0oTWm6wK]GMhbAkm9ލU xyCMbAҟZ+ J+9> ĤEETOAmѫ#Yb=nQ(1i;مv]`T qMJL ر&x :7qh_;RQ_\է{L*@De$-^z-;9%jotpu!4BQWf5_R-/k:6#,stuk>w\Y&bZYl0>oIn߁&kQ9L44n )!%xP)dj:BEBrS_u}!ڂ5~ᭁF.ZɕCʧfwZ%PǪB*/=3L6:>bЋF9\K@:Qx"߷4% uJ&9d%`uSn㩜J/wX}ŀ+-hZj%zt϶z54uoU.ԭ0tyg&Gv^-pm`o+*Z 7Rx&VVu9ȴI|=85S>qX>6^ "Ғw,`ΪɭZn;ೃ9JZOmĹ5CQȠV eܼpw!EbU(nj._˄Ϊ72]=fs6%+ˇ/$нa6Ϻ(Is)TE C=Sz4 5PT2#]D'B>u{zZji?X-@1pw2[K6ղHpIly\ʟdugc,8qUfSͿEQڡoR P}M ) ڧ;!5nrFgW(ɇx>;(":lh(]W!jB{քlt}&W`B@bSXwL&!* eŌGCĄ#5u-BՐ뵥BӮ0,b@#b`R/ ؓx)T Pl#ᕄԅ T,=ԙǾ=uG @RHcC4÷ϲy~1g %Ž3iA`<\!Wͳ|9< )V.5LH]Jv+q[P;6=w 9˻>JjOL%@Sn}f fWKXN=od)  B-.Biu+o<ֈay6MB|[/FZWreԲ҅!q5ۆҿ 2?\L[P H>&M[.!YNil~V(h'Q }J4a)iv /%kP&.ZV=kx[O3A tYlFD~F'M~ƍ鱧ܗBC0lƜ\o#H13ZqR8 -L!=Ecu7<=9buTnKW Y˧ ON-0ӈ"z*=#KP֌91q!i `a,+-a Jxpmq糑\o1 Q 6c`eFOM)0E.xP(ˎ U`ȋD5= H[3o7 r='+ҡ\l+$J~4#_-z;[k}òRX! D"H Pot Tu|Sߘ)ɆOȸUN=FjOvD"xkJ.auCAS*SZOVq<'VE%B(~)ccq+W?1#Saޟ9q熣o:[$0=v=׮ ' ʓ~5@%*~|c*[Ew4s&uoJcUo0"Z'zPd%qԺFQ-ԭ^Ql /UxϷjǠTy5Q'\g ħ]5z'G _p*S lyșXx*>T20C6  umIٮKh*Iyݓ<4CnLK߈I<}xo~ϕ3!j vr5n)8RRJ{$ߢl|EO쬻%+ B'Zւ#}2~RE ';[,Knq^!Swì,GĦ kMv7. @2{uVYnmރ'5漀E$+_Hbb{,Mi(jF ʵ91`m`HsȂtjS& UY`jb*Uv6/e/w u?Dtx?jq@o0]Wo}}lizeЈ 5*w%3LX.@b\-g1+~n7G cz\k S(mPfu)rS\Z: p*Jus:TK|9K倫IȞGJ% TH]B;rÏ1- ;Et ,,GtHpϷ 2DT6Wh=A-d Ef608{y0A+˻3$Y"δ7mhgZ gcOh>H]%ȂWVR>ʑ|{8ofzsG g^$S,̓3zuƄwnV@/y ZwȘl [S ~ym7}=!$H.d`f*݃ Ϲvj_7SJ$PQT0O7m' e탒cX(e]KcWW/ 7׳=-"m}PYܴZ?zVƭj<}E#nI֡eε Ёh]sV!Duy ͵1F3D>aIJlڴ\RߙA"Q}h=p Ff$+D0j&V:OPgz)Ru+hYlkO{PFLEJR2̿ gv4TmLtZA!eNNvB2 #w+BUz7eMPy' K$QC3nOOu-+>!ȟ5&JbY¨tk+5XW]efs/}λ{=eYUZлt £IF<$NR!c]tл-.)j=|3弝t,얜̓*o?fgrxOI@kY# \Pi]%[߯=C+X]Hj 'J][^*r7s$_a!^==$~[twɎ,ǧ %1M8'y淞õ#fP[J)>jI` R )' Wu+4.u9$<@ـ*u^JCmXPװk fQHq1,ᵓ35r*?$K?( MI",Y4T^2CU$ ͳyMJg٪¢%Oq %sR^}[.?:Zr)&RQ_f-CQjjW`}+j1>pm5 =ɋJ/r!L85_襘Z]A0_DSמ<;RFQUih;V16I3z.?%suI8Ud0-`_mЇ a< 'B"9e"5E\pCIn P1B:4LM|]z9ofd2ODb<^`R%g:ukBɪUqQ_"}1ޙ̀)GWθaj{vɶP%".&lL>M#]T!Nu} ˆA6Ԧ*vgn 4:g7*uzl\Eh嬧/cLj%Y-, ;|q؆4/zI4M*5#')p=K,e]ݟVQ5S}߫)<"Qa K)ŁTzGš CtS3`Ĩ]z8rlk@KEwUF(zBx2g\j0qOZ?0Pv~eV & &Cxì`:_%ΊKϥebZ.[o< fsεe+bχZ?a|%|~. ρe6:i0_(VUSn[4ϴW+G?D̤aMP9x |s_ySStBĽI^~Wr:7LxBd^5Tc evkYӑuDUd"1Gg#21tZZa/`]j=-g̑3@O|5+s\հR䧪R'R_3r*,e_!y2ɷMM mGfVd`ѷrS\Br;͠}g0u~Y#a3Zb,9ٶnNNpf,>_!'\t:/MI#n(;[lT[dG Iߩg3K[#q!*&yvp>~;0A͸]_ظs)  92s[Cm a$engդEJdȘ4 :{tNI!o7l:vD p[=5 4Ӑz-DY7qj0̎ZԴHo n4pax9mIpٰEk7$bk2>2u8lP6F[!VHuJ JJ ]kyaEc0}t8q`%;Ȍǵ$y1@ ߠ-7`ĨO&j^p*bxa tTѽ=>a,X@w( ?q8- P2^Rak6)TA$wzbI}Ým'ioe+u'ʎ1;'lڌE>-D5&K g>ΜAMtc)INl[ vDkЬ? ľCe,icGh;o= ß^pS;*6b:~X>^Ee?SX3y[Dq)Z <䂡5$/~.$֐a(k'Ly׮*\ol} J3^Eeh{ &~8Iw{$# 5ȭ:R|3>nN)߭:î?E1Y12h3xm.9 sxd4,Bճ ,#{;ӮfS%,.M"Dv愧5FsϘ{oxB'қڹK0{GK=2ЦFo-$vߕlS),QiMo@_ W$C a .C•(Rv DvN`<}cC$+Ln`%{XߵfX#񚯯iSuŷ<}"Zݜ3%/7KLE "H}dV78. E:i'F sf Zn%)k SMRQSokE_K&H\ 4Ӂڷr\p$ y)jv[G|F:ﴣI??Wބ_郼diř:tMoC~Iso:6> igz@"RjslZ%W|5SYIvx76q'EDfzl(FLS)GC6ດ+wэ`OL@ ^Ef_?>xs49}x~b7)Ga%f"5䭘#Ϯꬬj)ڈ f}_hl*sPs;gk H_u*n(>?yz(3gtWAQ}VȑS#?KU˚ $z$0'PŬSa}Wċz"&ۦHۺ!+ iG"i>}y*}a.6`~zN8rI"tq5w>V)) %Z8 FC>mfOZ n/BU jy2S S9]{R_IuTȍ={%Ь $>P98a9Yp ~50 Vc~UjX 48\.۬.$ln<^k\g )|2HǺ"ZuڷS* kF6!z-;N" շj řfõ⻀/6գү*p-( ݢRS1r4PUo,ۇ8N="Y_&kxXk@2VYi<(%4-b)|Ag`+'] XVtQ3?: ѮF}%aC{d&)8JH702sSa4~:h\#ѣ-0d 0 PYCSSen[ga?V53VH@F>SZTy]mgoe70}s Ky~ufW$ou=*?eR5 @l+VbEGO:[.d,&\8斒 2@%m D ҚC6'W>?""7eh!X<,Ub`"2J_-a d\ֱM_:;K9<tdJz4]3L@-Qd{!Jˆ<%Z<)h?5Ry5褈ldݢ0KyAC&j띣O[$Gfl "7. - PH&L/(bz&Ź]lZ E0M )t ,Hd6&@du U3A ܃$\#B MvYNlOWiWp 22뀂.soVcMAETj=9h]kU,r"Rmdž倃Ч6tlY?6zys:Bw'>OE͋l VדJynp%Ҥ,jkk~IgC5SvnMsV| dA40l2o?z0G$Wo\Fe[Lc۽2"@3M&fo 'lazAyyWLG'ZfMέ/|[Ks5hg4?@i''t7_BԌ} (ќ#2\J8VNu$5Tݜ.}oOȂ~`܄ַ|ik%i:#2Y| ! #Iu{[/|6y${&luH̛/fhnU|`4`_`7Z4>G͖3>mT+m҉ ಣ|ln;WidjTqSt¨g.y-Umd#ּoZ Ê\)'M Qb襱؛ՠsmͩjEnP*L"wyP;tE j֋75p q~Z5)D}Ph(*dSL#mҩzvӦ89v7DIyp $b2|ЪY1,Q*siݹiTSpmby G",ڏJrz;|XIڦr1sδWk< yc}~SlY2Q}xK/lb5 k¸ o9*! fuGwoeiꥹZ6ǗSDs{RI7gk#E_7n_._1uʄ!4̮;M*N[!23GŇ.%] ?e((sfò/E?LsexpMɏ5y ؽց7Z6ji2`u,?*I^t 0SՄ"yXmP,%kh`VG賻ѓ<\m*boR3whoI턵[@I qF % #UMQ$i^mT.69x$ԶN񝕻V#Os/#ziԶ|݊f΀aF?'7hlS ȽE ?Qȓ 5jΡZtuclhNm2A (25?@ 1lO<:5ly7i"\.mARp Mg~1[m "8ȅGDQX.;:"Άp%WglsTta"?$,`7yD-%7kaOW2ع^~ _HX,ƣߣ 4~x.Tcm=M~c&M oB0R|%L4N򴓚n&#;AAa`^-qh?K颎/f,L6Sl3&luGFWE0.AeD(&tܓ}hsǴ^_-W!-b.;ZM}՚!\E`p1Q+ge5%bOr_' Ɂ[ h&RJsZ X8]O;G/$q?u[!9Xڱ#V^r%gk@rU.6,`Gkd#:focqd׶j.Q-dd 0A\w,?iZ P JdIG'2!$׫{сqّx- g.c`/"H@;kNw{/P^z_VK$dV^,Wcest/9Qn@Όntwtɔ}0 "+ĐiaE E.ga54b:vpL w Wċ Иm=WZNoC\KL x@ r 3{S҃H2Q1o _\Ё 43xʚc7?*'#0OzA)Sv}H"::_ z 3J_g u,&l{fq3ȃ9evdF.>hήsW84TrN^4a:X{3] C&H!HD0tâ1<9;='hhiMSs]v{򯳪id)Rζ <S4a^} e**UGTo1 ӡġ h1&aHz[ࢂfSe Gisr{Xi20Ya&YP\c=1̖L8."rmq&\UBP@x@gx R3ڡӈւui%HaBSY2o@ӝcٱy;g$%cLde#݁<b &)I&RzA,%=k\yݶC; k^[gj~pE+&9@JČƝ%_vv)ÈEԮ5I=&r~VgU}qO8jXz*}B(d(2rX{kQ[DFF{4^m${q“Hc. ;/-MlMnhpeu8a)$,f:!Z*Rſ;V@ VSQ3"L!I#A #lhQt:~P@i'/ܫ9}Xi=S*lf(Rk˧縃GNELQ YZT5aT^ )a ?!fd&,G TÖ^Pn_)޻IslH 4̞*pW~sLZGԉHHvKvyu*ªh9C5 i 1l ~8,&p7~8e?b]K( 6GraM?t?"?$nD:⋲k:l bjmEU5;h_32L0CMF8]—mYz|g@3vKXk~ӊhOMmT]O@ _k8^U=`Sf#Q.FAf{"7A^?BKt!7DoZWt֫]":JE_6:~TGgm5=DO&2>h3'<3jUgzD vd(u -:J 2>ͬ[alEIS~oQn_p#!^br1Aw٪Afr 5d28HRLX12[UF BR.n[KPLW,t M(G(H!kSzA(={0s}h +SAjBf!xXT5V-,T>"I>i701I;o0`z1EX6(mn*g0{ߩ|#4kI!iIXpnzp,U9n!ނ0 + PuUJ>F祐OxAr*+im0QdX،-jwnt9| M w{81ao)8 <cbJ\znև/w?t &E9Vx*n)"7J_x?/nD"Ex2(_s[S2*h)lo? |P3"`%dV3BQ=)c 0:}) ’v᪆nh?~w,&Z8i*~j_ B|d 3k0k~ W0PK#݄З1 K]1]$/}V-clBB2I`}>;5SJ~eLxh<2V]zۻ$M,n̰e5:MUT c7LqBe-q7s8jmYs\tXm+ײ܀b$ -izb ga.춃۬c_PTYEYBJi(t(>2,A>bd'<+{1:VdAMc \~ K"{~pȭ`Uǵ&q烔Hp<TL8$)~,=3k^ ).OpzOR}Yb[9Quذ}9W ?mv|#G0HѭL#nov噘IdXkܚszV#0 ٞmvZk.cQ=|XmZ&y uKo<]ڪyy!ø/jDA9GNfKB "Wbm5c1L)3Jf| ,ל\eڵi- ۨ߼h/%}uay/n`(N1=]'+D=aZ9` Nz2[6h$O&BO5ay1l}&ߙ4B}_hA~7^ KLü")赪n^ [l`e6Wع] `C,MX<'OXGs;RQBB3s6=^+)cobL[낎B]e/=ӧ|Zi8m g䋏hhR[Mom]V |-B'5Ǐ|;7X9iPR=4OӼ\_roOp|;r! L5m`49Rx5U\d  3;qKMkiGd*-0d\C޾L؛jw FE3*{ՔrrCs/?$H ~Nw%#(,D4>-z8Kᨵyvg[pvH EڪҪ'BL{fT}|hIMC  < נq0nY}I^>#*7Q" =Д%ί;zGkGҗGLLK. $uu'}$:+Hma-B1S>VJD9PƎ,GڈxԂ|6K?)ґk>?Q&VK|^u$asLZS"їM9Ig^0E~2r@kWc`kH^}7kv#vwmy? =:;V,J( ?ZQʘXKm~ŹZWK8j8u!\}*W.vf/D|Tځs#Z{n(A+:Ϻ vcBK1 CѺ<ӟTʛ5 M:.>4<49~0Xmœ~cOn܎N\PE 3̟Gt2㣃TFY<a%ܑAIy$G>}*ƙ2{J<&5@7E5姒v$>yψaE?_mċ~%8(ˋ&/O]!( QNI2|]yh=)q3\rvd،)2 O1`;sDÂGY]2[=&MG]{Oʸy\.3SGl. cEM'jӐQ!4z ]]Wtm8Wo0PZr`QeQqMcDԩ,IN&Dp_ˈ'T {COuVg)] v]MjW6$Liwz/ՆVU)aRzI$!U~?X uZ蔦"@XUz)n9 DYBqc<1N@,`KmȥZbzòM% I'Sm_s,6YmgN܅-k5i!Hqf ޡ^a]M-hn4*/iN:%+t$JE6g#Bb%JZCW,iGF%QzBN}t-(Ud;vB\oCAԕhiu8gl?\(wkmO6Dϻ91xI3RwxY;X0wW@4qk#r5,WW=fX'uM1:ZfY&T @/\zz\"9B}:XjP1\I_U'"k.}7ml{5$=«E^0 u_ j^ۅ$5+SͲ"^Msn_AvO79cnXsu+5EgAd= {t[ؔhwY><Շ8b`EZ:ro^'pWqɎJUTr1\Y$|Vg |XP>\ eŚLHu JcSs۔U''8OJƑ G (N?H,IB粫hztZP4bNĊQij][;{lete:cdV.0 c#!^&8fCj?2" d%t6vtϧ:8@ȇ"vCiI)!t|ʅ2ѓDDLoh91 (}2:b1,%:nFA_sovѧqi`O@IT^ܺ~bVzάƒyN餞~$Nܚ/_ߡ:{y-2hڶ&S ֘xL27:eX֟v3)0Ք%ihs쫕nʧu~~n"1F4-dM$U4:DZ-|kp $ȅ\\M(Ql*ͦ!4 AuQxn"i48?\}7 lWsKE"a.249 F+0!dfo/P iRW}RzbOGk>Z2LI3hX~K i8Y԰*4~0TvQG#-"=bL1v:1QOݮN^#y$+^5x+YA4w44@iTSp%~_:كƄfUXcNT<~@:U^M2Gh4-;n3 #™5DgspA 0sdRJ#o. gM|&n6!eΉN+LGy}R+!l" 0XD GX&b+7ր1+HAc "~Yr47ae:x5LRkIܙS|i]x +vX,1!8hӑKX9 R$|yv7nVE(R؄ ~AdYXrwO:gN<'/SFA>ZӮHx>!\d0,r Coq7<#Q>$X[zܞR ;LkaN6G) U<n(;º[h[Ӫ2umbC3|׮Q' a͈vCY=g:(d Cl8Q*{/_%Oc9 ]!=;L6Fex\Iwn!k;(ץ8} G5I$=hY贪~m"n 5ietaT$:}wOپOg#*6P:έ~vd>c}T67|f8P6L#Ƒ8<@矕>UvH)ƀyY O`>@. ?%Of2 fH'bt! +}7rЦ$#΄T4B)w.y~EKAd)7t4 Ns.9w3EN}W#B8eּbz;̞j1t*J}!&}J#;+g/@1y@wX6`BQf>5$U-񗯴j=-0^P. 2=A8.<!yڤ_c\[5i}?8RW} @j(<- O 9^clfr=(bCx:ŽjJCbK%:ȰaKLݐuw􍖳Ut4zGSEz*UY{"ff]b\tRpdKR$as@NJyl #C{+=Jt'TnIiwwЗ9xiU1oJ.Bݶ(e ybS ;2Z+4~]EʧB^.匦Qu[-v~|Dh9{I6yinԣ-K' \_quŰEfZ]AQ:gI@!Ԥ%J'CCo(b܆?UŋA&ޘ4 )yESs5=c`V% EKDIQke9Z I׉Mz>uTEl`,z*EET;>ʨ-^! gT葖KO}#KԦv`G*-6D|;wYVt6 TTT´S&n*;N7SВ4ࡠD|n8ݙIK>a'(j^-x)>F\T5[ *+1;g^eKj_ՊL:)pݭ钼yHxxQiЙ}gvpJܘq Bku%=G?xbȃ <4JճM1;/= wHOUk="jHu8K6 %0BScW|y%iCm^gslsG-@O#o#¬WaI{MB/c8{$gJ&<(c*1;4|q]>wd=?"{^^ $~"?.ōkx7/ۖ/ c&{;D4Vdɶp̈́bϦk4XQYGmAATN)MsiS|J4;_&+]z8nNX_RYޣ= A)ZY&Ѳ7BwnfOmyg.AWU#b,5\Qj9!u/ ~`SJ e'&8rp]|C|v\6Cw;x]V3h3/<[jG8⼾jPHr|fTu9VD5 }T>1}z]ڷQڮ~i(O.Td0Qa~M~D H\&%uĄaM!Q&i"yӤ-j=Qc}wW{vEu]*_[c@+:BD^#F2M/8q!6ALTI1dL ]6r-BgGط͊*q2K7Kur[ G; ٰD6qLz躶807FHuQ|cEXK,OLd=d*UmrDz}y$;K^„UKD[͜#8K?b@~e};M'ƒ%A. df[Z\h` G-{O4jM|^_ugq7U6+*)%hVHbqzIƧܻw`:13]ys%6<@Ь-/~zʛS[i~%E)VzY3BkC*+=j"UD:4 HxXT]wRn.CZ[u=9 3uO }J%@ӯD`lXՔhmox-VdUB*M ie?WݪNv]6LmX}j} $ۣ:fx𰅕E<˧j GT $PªS*o([Ձ{9OX+ƤZcjT/x/Dn_d<@Ȭ5<|M>r3KSͼs{$BHJtګ9*y,[=W 6"88\Ip\uEB|dI0$z9;ދ5j\;>0iݍ'f8¾Tg(l˻!" tz[-O,]#E-5D |}s^-5OD5꼿%eX_ގLCHj2 v9X*)"FN3K>:᭦OPi Ǧ8j>eb?nBQfF(@W` '&m[vI{O2UvnhIѕhއ%[ 8/l78K[hζ98 pUлLpAHen;gt!]iJmwhWA1%gg3BsTt\şqxҨ$7QM٧{s l>'# ϵ9MsCXNv6RfToG;Ř(Pp/>$Fi+<|BGZIY8 P\8H - sKAsH06E%pGz"2:/IN}'3/f׍k8'u=_7LFY|Uǧϱelt) />)uaRF!?}gdH{<4x)fcWqo& 4hn$b<n,&5Ž,k~>'s uyHR.(8MrjBSR ^v5Z$UfEa<6p3@OWH :PCƓ"y+InF6~.NԽLfk1m %{nQZz_lhC؂}-gCg?I-U;SqX;guaT/5W^ M$feVO-K{,JI=_gnp-J (J1P·=΁oe;:&j=bfV+mL@W(tgFD^́B U[k}.Df;lS*N+'3oFٵQ^~ytEELO,4ii>3FFw {352]/y B vdipZ(`c$o( JӼȒZ;GJʧ >E#*d=5[ 3k n:Z%BIw"{4i틚3pBM]x^#fA̤ݤ +>.F~HʭYx8iM}m"$o^eDC ~fw6WjS>,?̆eMmTd,/FjkYtS)=<{cKcNZ6{:WtLڱȺuVi'XߚFɕԂok&$ؓ'i:;Uj{0F;Tg ^<h6pӬ8=lHP|X\њ׹'[ u0rK,y.^-iŌl;j ;utORm O_/cdBdI`  bY:J,YF1CgՆl3"B@C\2pӾPDbw g ?."E0O}L/^2gJ|$fݎY%l\?;OQ*WewPRC4)R _ƺa* 1rXB³~ -hoz2Oec(kڣ'}4h+}ٗ=5HHI .boo yPOsFsN4 x{ @_<9zԕ|Cd!5>fc ìv{@=6LDFzqMSwdhQpF%40}GԟBIP~넚`Avu)QVx mσqtDƇz JVxI'<=o΄͡_ws~l^9I%Qr* Y,o6~C:*) ,Snl CeevdǯC"n{'d=߻{|GVcLҠ\ug||2{ 6@ed[!fd83%q/ޭ+qU# :[Yf/:]DR ;Z͙2BVzk8 U憋&o.ڟY-^:U]]<wi&\P~b+MD
%݆tk=q2t2t[L ޼o/)ԅx(cR7tmcfg5mJnCi*)2,ΉTaKqM0*Ű/v<%7#F٫ =:CQ*[7 c@MyīWw]C2h{S'ba"t VvjڎGƁ:(ˆÌwyvMQ l?0Y-`-iQϟuW mA0Smu} k4ߟUwlr/=a4Fuc|ƾo3 ~?_In'hk:Ad0~~3ozQA%Re 0U 悦( n!K1}s( /sϪW8;/>y 95(,(+|ؔAXř 7_5'j>"6]kQJE*)NWpr{ }VO1ya{7CSwtޠ V-%:~3PX's_Y uBz/4_FJ"JKhN{Fֿ Wv=ўӐ'ya *gf,DI*O+`r9S|z۷:G0e:11MXYd/r{ >-nOXf Lk3ذd9v*T5LIv -R37& /haE#D$\߇.+w  *;_MvxW|GEX /5fb~7SHSওHȰWS9) 0DxI OwRHXڿ(X'o=9Q?k1^_4Wěw_-gI/%NbbGdwZN@ E|1)K2V83#CO&C-i=ѐsIL_XXNS@gg`qvcZg(j}-6x&PDG䙼0$wJaGM+_ȳhM ~ԏFHvޚ[hAԊ$\yD.g\l&Au (GȽEUXJ0vYb 2 0 R,[>w;_pv BB݉H[&/OE,1un*7d%Ϧ6tT_TS YM90Ӕ=oUF= HQ͡*r٘*Ž{o)3)#vWH=n 9%y }Q8EWQqYeޙ$MISRnaGJQԕnֵ0y%E;w$HЋ Z(۸๱ߠ҆䫬]8 t:N3MM$*u?3룖k#ks\M6|&q*9/݆ce^ ;I?DŌb].ʙCSJo15_\DʆfHzZPC7GӥQ /_416r1 Uk'iW(U0kɊХJNngY(4JH[7nBFh-Y9-!#>]3)4xjJR;-˃ԙKR_HᙼCVAG@2A$#`AciN:f-FdVU+*>È*V*o?zJY]P>QQ:M V5g5KAǃN&o[ibߴK:G2X-J(xl\06k$t,4i[K䯵2S;g[l2* 0kQ IPX2RI&_ܑ JBP8}D<F9f✋R|;jRQUfMg,*t aI#!zO>y#ksʁ,b~B<߳{&Yc 4EȈ5ɴn$:(9,Nk$k3"a/{@ҕo]zzswx)+̵ ռ&:DoTg7>ɚRXI(e o(ZYYBX*,|ܝg_>p>R⺇ד=LO;e]AV3ȅ%ƞHss|[} M?hrc7wMt(I äU/rfm)!`n R]~*w )' kF= B.V:1M IMWW kɃ,pWy!w5>҉^K ^Pm}=jQ{<U*rbR@iZ nJKܤ=?PD@Oa{7aV#Fkb3k,hIB:3.֭ks['&  Lĉ\ĝb0ޠӅ=E/ A(+ʗ̩QYLbyG6OJ]6i\5 BT; 2G4*}/;} mzPS&yVp–M,G8W%[/Tk/UPQ}POce_iDxZ_}RG4O蜬獩Y;"W'WNXE⬸$Y l'EM>/ibJ@s+Ar:g7L- @[V oAUp)'|G!@#^HaSFc::BDQƃ/;Sc@%.4H&ͺj&0k~H"Hc_f#tq-@1 !Z Ty62h. N<5~!kԆ //݉&hh23"-e/$ Y 6)[=_;H fGf&3U ۝ a_ern8LA,aVOP2@Ѡi(!):m. 6 ̍OccӃkp 9*krS߰˰Ms-"GTPG{WVvxqṱ:(I&Ҿan.&,-g- A+SmyP`-VDyH**dh# `{|<9hKdi_f]7Tw2P5_W/1-@"hoE+DBϫ9pg$zJ}oC&tEDrYٺQ Zrkfv~Rgn BenI#)>'a՞/â^$;?Y:QG3V'_5\R DF@fJec nnh*W vbC (߄?_(BR~yb6%)~l<6ٔ[[s2f+@D.FH7["Mq6UX 0ZN`R#sR,'ɰzЭkgC/՜Ή}]8E8X5*%zrmxG$"@e׆C^/-X")t,bBI/< Џf1 v 0 @IpOEwe$_`'b[UoFb-ю`yr]4 s BA٤@v !)?II{ykͩH]"0/"'f:wM^V <$:y|aHN|"#=R}pH {Q &yyH]J/uW+, v+99ύS]HSJ(7p)LVg(3A(4i.kS (wi7xu {v'ra\nIܤQCR)zM b>~ *0vgN:(n 4sLJeg A8"6[&k&[,*VA=뵫4`_w$ ![hFe׸iwYZ=E)#%Ha`Puhw-tA x'5\ʧn y*]{9GH>oc~˻ K"Rvҿ5|HUaPKPҤ:BesDjDY;^3AO!JΨuG" zO}xMtsA@KzWFRyC>3!{÷a܇(I9dIg:W LrJ<2>L4fTht儶۸kUK ;.~Fi @ 7bfpV R! H٧'3?t7, [T,cn܎·̶P}-'5簲y8<"8,:V4\U-7եIt׌Vxȴ\<_ͲP&QDP{._HhBv9ۇ %9TW$ݧؐkiD4$2(n0540x؇?VޅBHew_o P-X]i/'1$hjS{}e9 f"͛A $N\-&͐s ~+ ͞ f,є %Xv82RY.TA98N1w.p1 2ɧ,gmE\T`,>C]yx> qbQrn<ܻƾ@O?btJB[FD v hy}$.tKopu0VqB՛'!=^trT^\ WI<>G9x`syMUj3aj-X6q`{,fKA*e1TCO3 9;T4<3y9~A_:<#~h:ܩ*P)4!{Z]}\oʿHJQtS˿MxUPU2ÿ~@?Oc@-/5eja̬Vt.H,H#Z|*$ I!J_j/| t(ظ{{2 l [;z냼a,n4ʡCI"LDT-D72soWu%\e][%VU} x[&ʮ,vY|;ΣRX3+k^6l/`DZ-rkY:9PyW0E~kvT)@1.W6r omnH3$͆=eo?^uSwp=_0z}@!,P-Љ1w)X{d<^~wX;]4Ѯ=!oQ{AJazКH0r$({ɽL}J4-'L0ñnQq8+cy@>ߋq$g$w,y&yɅ\%Oεg&+qBN.,y TJwsHiѺe2'z?(C(D]_n$(maWE[DW4]oYygՠwU%˽LsO1'[q vAWZ<q> iFJ9_GgU v#ʦE} BhX` K;F&Jx2ќXo.Z( 9P_`TFP`M](- U`!"Wf`,&Oo*УO.&~f 6ѣ#efp|s0#x޹Lڸppi|Y_5a0 Bcei<$!r3Ssݓ[{/o]3lgMW9L^C ݉Ig.lDb~qS q%Np5=(@;ݒYpfeaҵ*t˖C Eޏ('+]VmНyq10Έh(-YhgOBǪ[)q\ =INNO6 kQZj=j̈Y PKY_L~ nc>V2rSÍj< sɥ%pbuN]&L$ +!5HcNOC(~-u!f8ϞP(J4Au+M[H*3s)S{X]ͱ8"҃% l# V`u'Rv/ނVs3-nkn@ݕ<$2+NhXL3fټVڪx FES{kJl?/XSSw4o6owa9/\ͧn{*f ;,旋9خelDQ)0cpgbtʾb5|} J]/2>'PXe y<)jSNzYr'8qJQ4t_6u:C" wk*Vq3QTvU}ɢ{ E/06#L;\L On/nff&9J2W7&|# yFGlk$ ʰ%眊Ώ2wn:yt"c,hD 9:ࣗJNz_`-t(پ|fjK-[!kSg.܂Nc\ǏPhS/U/ g˫Q{ d*UH!##XZ͈ Mm7S Gpix e[ΧPs?vi,29aJᤒS"cg V,ä-N%p?>yzÍdvhbi_juj=S :Ƒ): l45B@ éID՛MtI:U4^tx@0LПn&ͨہIXCUTADg#Vc_d˚RrvնNr7>[r2!-sfP\Gk'`?tR: I\G~‚1xzr?](q[%1|jK[t)gZ4> {B2^ 0Р",T0"OEf߹o@qx*㿄?ɢ]{;́!7஧@hxo[R:>GPURn=aRonz-Mgۛy5&S zQERzN{~?G_W?0G}r1Wd%ưq$]>]uIZh֬HY!5&h0t[OݫJiN~D|7{ i8JXW=tLcc7#! y Ρ!/0+3a)}v({P9 CDdЭ(A:s@^P"Q!c4X0ylɎJeJkDܘF׉--BFYo}s'x҆tYظ$hj'l*?8"c v8[y* ߒB6őVewΓDb1f8z[w9p12tѹ{~.$p4Lق!R! p_n :o#v{;ߧGA|0۸0JNԃpY؁ te<'ZV۫:STn&aEa ΅*ɰ; QHR~11梾nn_ pl$_p $E[0ZS/HJW׆%&Wh7f~pq!E''Vgp,==Zc0>/26V=0C04gUՓ8+>H䨺]w}=Ci M4۹:`rŔ89i Q7e9Lb:Ho?'q(:n<'g"m7*V.t\d3lE,uz ;!"gZcv\O'emݒ+FW-,b{Ar񚊊+&1̇Dqwu?\wVy陧 y^ P#zn`I;yy3 bDO ۋ1G/:qr0"ǿ Ẽ3FF6w9Ap|ne0aYw:I~J 0(.cu8ɸZ⩕ ۥob  cnIW4ghsҰ<_Sfyx-!'൥8FKP)Tl!LIk4GhY0&(DMvx%8&A3Z=FGqQfhW~4k\BhW܊qzzX1Yvo :DRV"8* G)LB|$n=4UZTyH!qR wq -$WƔJg^Kbj6o~`$Y59kԺyQk& v~6ޟ$fe8Ca@r{G-HZl܆T97q~i?VC4ꭺ[\k%Q7K H}3yM]rA~ +@Am:Di^E]Ң@K,6iD ڊ<Q)X;A Ǣ5>z aV ڴv[ueHkZ`GI9q𰝃a)1YcSjp N[O6 Q{b28f74] /p(]vQ3q{x5&K׶GwO`j2?ao P-)rikEh#XE,xbG-W~)4QP})$.k (Z\B2y vuK)5T3]r\PPBڧ!?C.- }!]>ܨٟ3zR\ѐu`&)\) C=[0ע5L`JFZ&K$%~\%Y`ϭo'=GW1(,F Ĝ! opveICc&"kW4 )]!ɳ-ьyGnR`)9UY•Vxhq(ٷ[?!{Cr& CActN}ˢu*Qu Xt!Wa<1 AGƜҌ6g YV2 :dO`{5c%7d5b":Zҿ v Kghӵ~1 OPyAk*rFWͺEw[]A+Sblz8.WFA=ZsƳg%z*== P4W86R(11T.Uk Z.Q!! -k$o]!xܼL&gb6Ad}^kHCHJ7}!d,{i_Ezw\ hvlZl\ V9!Jm15u4ۿ%\]{gr9| pd~hFX[55GS6O D~cþ\nRl.Hd˯Uw{Ӵx M<7MN*ܫs="ꢈ4+QzBUХ~d\d o>Ϝw n iXL-w -3g0 7uF]8 R+y)EaC_y#Gя|aIhج-,Q`!)rJo"T>w7cXQ`9|(0x$|hrL`Ph-%6i=O$2FHn~5!C{eBQ aKXk*Hޔt&V'/4rS;םV;&8qj9$]C=(wBRhj,PBt9LrkE,]g*]]c\uG@ iN<|Hi'" dz3vtE}<ɪle?-ziT3&تd&'dO;-+ay[,uvifw+>C9̏prh[Vvo LR $iQ>arxYJfغlC.5? ODdj qmO祖$akqV<=ѻ)'j1P̕0~i^ ߋۊDOϛA +QxB?aҍ$ذ)I2i2}V[,bߛyMӄ`hv3DrTMiˈD#E AHgKܤKopIY8 b6&=̍>cUu/_@B{-̚O s#Յ 5M!$} 9qsbm[[^O3G$.o'cDKp)V9"eqRqzHV)vmmܣXh'2!){?zEfIE( Z .ߙ]3 ^ uО^Gwji*,gҬm軼M4qe!'^9?Yj61QO¼{=J0?g%{=B|cQRL%]ؼ`\˓f c6[UɊxynYUV;yXCքl]. +}Jx|h A=MF|8c1b7 C0]rK39+eJI6Wk2:uΑ6}sc4`kڃzm-&L3+ukq @EծU|] fOtU7 ,OJKa|I1ny^OP=1v2H%hV`&"&36r6 ;C"ey+]4֪zl#WKHXoPz{Â֘!PWZLjM֗"m|^( R8WM<ʶ+YS`z$ o:Pm7}zoM|<^+\y?p\>Ejjnz?(P{SC:bkN8گn3^`&o&%F5 gyW-`6g>=N<3KPFMPd"눮`_._^tКzD:P G؇f1ׅK~{t2VH$I+*;gc=pS! }V0.Smڅ1C^,*,!/V1l+Ī\,dM0_ P k;=.y.w"1ۣ_AsQ|tj{`fPJ߲,뺉r$)D4-\U0ڑQ"YgP&n("`K%ȎaL-bJH9pBK̈}F׮҆N!ChD݄Uk{u0 ;6P?e~\VQ\SBJ' `km4(TTV%nK#qNX}~Z7N}LH<eD2bkt &}w,ꯀ4͖k@KX^Cg Bl\W"25("ui5?eK?;6x^ޟSj-`hDT>ѺeO{UNq7t"(܊w@ B8P8O"NUP*?s m'H_ bbgU~^ lsxpa2i>哂:r 2C &/8׏|'7=v?ƼSN v1<9ha d푌eN֘s8 VRt66՘3^ @FĕY43c|ƺ~zR6D(ڌ,ڈ~hgG8L NL|GlSUN_mw"u݈d]9l!}n3:+|=M0:=[٦bwȓjC@yQk)\dǮ1Tě⎵ti(^oGAZvf5jh>01JёA11QmIFR_8[j\KZ֛Lϡ"\ȱj[ljQ&'0훍fc'0Pn,q` z_YeBQ)Uyh˚rw[@>SSHp<+B0.%r?|3 dqݤr+q'@{wib82PdS؆HN\bZP 1CPmٷn.c+ 6?{hŞsT-")lddHԓ(F K\UБg_ ;; &>  gC vL k;/&v=@؇ReêN?- 72E|N_2uiHܤ!hU'(AHvC&MME1O^3ii)MCӸ> Lѭ%/Voy[r9}Jd.vEx[~\u}˻@ѥA62+? K$IU Q}63a;[#z{;% Ee{, Pۼ#]&7zu;˄ I,w6-U؃^gZw:CZgAo :Q ݚnˏ#-ӧS 9ev |n[mI$EAGZKP{@W2 C))k*ڪsu/TM' H! $KLPPk5S7Ňp;X\k1p0N:jHB%ǃvG7Rby/.0^9oWPfiF-] :!Ĭ7NOXebg1&*U{wT> 7U)P.+ABQ9a2!鍪 i3O SNc1<@df 4u+ }y҂0ρPqiW^)Y \సH8*+y2X-9V fBTX{j/bbnLGL]_$, V1ZxԯB 'Sy;N\ J!lF*eR|#Hn.CSLw={mtHsޓ|=+8b̕hސ-w!Vz]8Y[{o9oc}xN(Eӈ2?>ufLOFMϕ˴Zy3 s ? oq!b:ɸ/{od*'w_ yk{W }.$Yyk5xL228V:ɨJIgCmxP;E!f|噜D^${[?Ȇ.~Itܯ5 %*SbU'AnTL"oso x Cm@yҧ@RP2[9뿮z\uf>1 ;2fOaq_,2p 0$)8Wwl' 8q{e* -Si^K<Ŧܴ(pFҦ75!iC;D+ O%im'QX\_cm4_:Tڳ'$6Bcd=GCT牂RV%6Èa&ߧAFO"\+j62ˀUϿKfVK w6ohe ؙ}n^u>Xs4Gȍ&!`a9Ja V6@B(1-\a'l{*b#=B¼U;`#8#"gVJ y]^ߎRܱL<3ꥀ?PoL#$jq͊%EK&VuAc(秉x2Hs|N Q [\\`L5^;y"aQ$CW Wu}_h@/ k>/Z? uz- #zJj!@) X$d'w"5y@Wsj< &-i0?qb v=k'hMm=R`$TJ_ \a؟cFZXSue^  2 }BOjT݁X am L#yǯxcsAʘMs ,5LBWLQ&&ⲲR^ ||׼*>d5!kuQu*nnWͻ@jVoUJNud]|C:Bړf<]|ZZrW2n6]%^ bpb͎dɇ[q<١Tcϴ)rwJgv` )+ wL5J@qM?8ONw vf0p: ]kf>GNڰm.6wp:izu^P* imw7eyv4Pa eo҂A=t4邀Tr/icszr\B 1gnp!H%gշ '7J] Xs,'1񥺵r|RQgSrFiaRXecgnKN6ؤmQ>y84ucd.% f9}*Š0hD#kckްG諽CvL SF*ծWrX@ osrp5ApԤKa)m@[eh{,{ͶBO\(Ì(d'=e+HJѿo DΗ@R,ic0=Ug7aB֒m>( &u"ިҔ*l1F3+ˌDzyΔ}۩".b:"_'Qyй):e蚚]+yt0V% gW$o,]8Y/7# \,tۄ$ygE$47IÏQ0t?K(uS^DإwI|P/(56 T|gv%D={gd$r]*:}1?~452Cx 6njG҃wZx~q3Czw-jFgn3U aIe2@0J]y~i1s~%4n8Cs^2/[#I\+UXJJIh8&~H\H!Y#ifm ,TR8 ar-r~`А)dGTW|~ҸRI5!ە;9u~9ieex^#D u}_o+O}1ɂMӬߺPa3]4A<}C(}gZ b-!ƠA3㞠[tf :m$Ɇ/ Aq'ѵ)qbnH.1(?ϟ eMl¹dK)7k`"hEmјwT*ٰC[AHOy io'`` Yn6t+:QVqsFG煳)S곇 ę| rYVŷݚ( .VKN,^yrRÐ'"az$c'wj: m t8IJPն *5ފ|K=m  ݼyK{w#HJцX5ScZL,{U|u4Ac…Fh>PxQRS4R%W7Z&qrÜcn~uj2@ @Ӣ":Ng Fu2cHg v1 oCXGQ1=[LhbXq3T[;__ 'zN `]D@rߍ4DzuBk]U'FʍSYkAxνy1y\#^Bq󆠴i8'E_qghQUΐZFt@'b&5F츣Rx+Ur%(͞%㼆"=<$ w#]-z*ΞˍӔ$A#T-(WٵpWբ{0W#٥y.Hk)ˇ6c>V9OZMMm$SX2K;Bg|a@6isk C\{\ѯ-u`㨐Ko n] |W*`PrxYE $P2d:1#l\`0}&Y[ŭUzqp 2w-px*Ozxd 8U b⨄` "Dt] j? `ܫ 2 JϽ7RmSN7јDiP@Zi>s@vF[o^𚦎.2۳K{A9v_ᾝ<5^bJ@)Mɒ(PF"(*4F41$Hm5J{zV"IoM7_z:dJ-r!UpѺ$L#BOCQ}s !Z!ST's񷀠nyi㶈_ŷRF!/5¬/CK)B@Hm@BS<>o{?] !dz|Ep-P%tdo SQV:*M140KJuf-d&;sOEI,,>X3\`^KjZuݽt5]ҕcvR) |R7ᶊ)̛(0OX8QV'pr'f3#)f91">AL~U帥XM\F뀍4bgHmH~gPrix9,zDߘV hW雖D toUvFoI4f$yQn6K2Z6v]]Lg&Biui[Q]RbF,w`EF_ez5͗T/{/7%p {e-/#X|OX}/g)%Uˢ9́hrm+&y8w"~ ~ѻNM5!f ׵| y..khDDn3ø# lH;hDR/Kv9/K_in;UAX+jvjg&G[/\{/>ҝ*#R-pr>g wMs XfzDb XZ;{I V. skVЕyQf%ȶF$3XB싲Z, wY,pes'f5{dAGQRĪaڳE#ؗ8RWrsXQ'@Dq#Q]H8&O#-Ze6&"sXB}CS(OUcgHB8!GHL<1c Rd0}Rմ$т)|$"#` e]<] Vhϡd%!o]]DZ%iBzYv짆tįA31V}*!eX~Z7'i֮ws(EwzP Xt hahXUb&CWZc"囊M@L?/6QM:)yV# cmiPA`OoC ,Hd\WkEX;pCx{Fw7W^~M*\uN9EIp -{%No[wAQ Tv:;NyVPYiN[GI4Քunq[櫲lD@N":>eFRVrJtԏ$Y#7 #)pi1HͅI~H"^EIέT{n&ms,giY8?3Fm"JJ)1po:nЛGa_. MA 4q(mmV+zv$Bż`oS^n~C废V*0*(z4kt9aE ~?&Jl%Lm[ߩj_,2MWg.7fPI`MFA 6o0rğwkI2sBʐ UTr\x( 0 \sݲGLO(#]K_Œ ]fɨU)bRE%D H-!Ӡ>S+ZP6Q1meYsTh.R&&){Ip9& [7R*sF<7SL5ߕ_j}Gh•%)@`/5Ӿ#C[dǁBZAAcObj뛰u2VBv3!w+{jLɺr1? ܪ 7Bwi}!"Nz<9U{wO-UI\tۭ{{B=fgLbD9קo9gY*>p:^0FqjwֲuOewyֵ0#Sc{p6hUm r;7.31}GQ>$*ec*GG*[̈ .Sv'0pQy.DHQm@ԑP' 굎/[AV*QB}-C|2jq'D Ж}`9ZB8Ķ 2={Q?g1L" fDԿi!`zSJGПgn|q ^pJepre1gºabH!G8[7Zc "(KiOr0xS!֠zPOY!_]AC愱= TwػP(m-g;&K;ORl6A'Zrtޮu1nZCքH03f<'sPrT'xͯ~Ng`}P{Z'Z<-6b(ZZ_j(WXPZʮL1!R+, V+șobgUFUg.Q, R%3 A;uMYoԸ~rݵ9&PTITVD[XNV/!攲U6itu|*׋)+-A]]4W1}"a ?ҝIgmS@f .mJq"%de _36w*Qb,]B8ZHycZs[_⿐uC `K˨6בLr$)}'`˄K;1y6!SZŭp :WkOZB- 5`m T l <b}aƣ 8m]4qU YCP _&mJ VWjjF(qHt欐祜юGO!$#Ԓ ^y`_ʈ<=D"~F&N,6թOKN6IZb<bG@;w mD:%1"~҆̔&| o.7Qѯx*zF9t$ pw3%Na?c?U*',kJn_몾%ݺE/$ķɁOV0:>9۾ :M6{llnl5RNG /ֺ95w_|i@ Y+'Td &%:oˢw i^\.s|AN-{u's,r8ȥV p5 B _ݜ0. :zLu NYf@4k۵6cq>btW/0RܧɕJϥrP]ޓ"*Sxѐ?VD<Sѧ/Wʨ/1S/%d U_RXR d E{u!_rLv~Leh.+ 1Ye VsZNwzՂ zAOzEp$zV Qȍf&TP.yؙIK z.rfL')5ɠ!w|ӔFA`$=!< Xj_joDkв#, \J \ 10[%%lR!PZbf\ -w4P.h Uz;6KeMhJe4s8w<kmVxS?J&4+Zq&{T' Ҿ~}Qk & 8Z94iLSo}Ѓc{x𦳢fk|ܫM|ה;i\}ڱ@i͆+I=l^sY@]p L:2?FJ9洹لY~b-b JHƒ2Wi21ӘZڮpۮJLczֈr̡vM[4u"1Ӣl$SgKn&m] w}RC-a޻ZVܪE$lѻ0 ݋Msr@}da3J.{$`f+ZGP^ \w/0Ɂ@ѴRWZ AGb:ixZR:e{^6ãb4i g|1(t۸ꑶ^,&Sy[Ų2q_8)oϗr8ܞf2:|jF 2yhUi7=n@YvZ{ލNL;|YQ!H ʏR!e9S֧̆VZitVJ' K _ $J~q5Fνj b&xxL^Z[Rp]5vy__U6?P)} `MB Q"Iǟx*~hb mjzcBS=Ų,q>cB-ވv>.x֣(E?kyzxpяIDGV;PXWs,c{DV;Q%Q]w 574\.6:&gF,CCOO|>םy08AWJsIV)ǁtt<ƑVP< J*[R8FEywO!bv zO3ߒL\;#۠@M_qZ-nY)vH#xb @$0! (̼չFIJp„6Eɜ]pr+''Ϩ̋+UVG2#Y巌 TEHF-M)ˤӒc`Hb韣LEKՍӒ#5ڤvw +57?Mu~+.U477?:zvْ+1՟ED;Tz ÌS"052:BK{Sa~ed˔Z0FC u[\%ZZ*7x>XP }kqtR<-V}fǼJ2Ymb*۫?;P)NDS u㐽ۼil{_'.ZװuM41I:U#402g/~n~ /Z_NKZt<~b|ɋ/INÂf}wm}Ӿ;B\YFDYf3Čx3UqEbBZ(}!Y#ѭd[FI[!EH 5Fc5;LW:n"aI ۚmLjLi2ɲHl;U% & ^WEP 먐MJgM06'/vʛf ~r2H?ʶ,w7idpɬ!hҶ@/5M\bzJ[I;OBƵr˙cqX;.lUMRQCB; !`3o&Y^Xn]4 CI#<x~0ockW?SpEov;K)({[ifk<$Vs?RzB rqs%JR1HU[,` 7Gw<IO{˭B>#Pﴼp4 CתLf@ `7hdø%|jb< S],GQ7ǻx5m]A*GBM%jF8T(<#s2"h`{nN~ߘj+- cӕ[:.6qPo$~ZARqZ-VIFg5 -AM}V?IY; w-@UJNܠKq@aZJ'؜n(F+џ4ofh3Flf緩6Df[ :~ԖJkKRFC1Ch0dor뗗 pVX i<8Τ28A*80QuOF~Y>|^ɇGP0>ٱ%f$O9Ǵ:cOfFXDLxLaφºIIM{$&͍CBDz$ HFW|I}Ygi4C1Xj+r?[ӧ ?}q)< UrBǖY~E }[{o1%W(C U)3!q_ḕ ivh5g&m! SMW:>slaUS[;_暥/%I=4L!$z1z=cm2-Lb =&WE)7gUvL ́i;swHb0ˉG ,iavˠ"fUP O`+{ҙg]K%Od`\>ZhƧQ5԰VV*.J5J(|f6\`Wuفς4@c\Kz 6eչ_v] [<;Eom۵r`JJɇ_Y5j}ҢKvF5}; %|J[_\Eg-?)ЃA0V:D oܣ!"gįxNP/*kOל.(PMc[ ,Oe<1"78#0CfWSA9"-_* p ;K۔ioӊ?t Y% kЇP׈E֎pމ=ȥevo]=(!pMCE@^;(Dnvwn'KnKh^n9 W#YOT=ynTm҅C*B0 ֚")v;lv?R[:;"/t(Xacbv7d+y/KV#,<&1<;b#^`j"3#&hrS|DD GqPwd|cT d槤!J66܂D g h.ia"]v?*^ /WvWUsd sos˲P,g^Ib]2F.[멘[RE&Ěn6xɴ80<ӪXLcɴ^!S| E5/S?*M\qϋ|.%s  *X_#M%Cx YG5q#Э rf/ۊ*ۙ@ eG7 ?v!s K8_NH0O.8$jaS2nٍRhχ;b .iB(eR8wR;eUT/IW<۱Od$7F_2JWp] X\ @"H㡥X:b*Yt2;aˆ:h " $5%u痥nS(IW2Hj<2p8WXL_C"߱vd%56L^QDLR4 KYU2j S}R}߶ ʲC4W.]߈PwJʒ #Q)4[e|X6LѦ2?,QM3NtI,&Қ3M@.Q>%rI=uS c#Xɀ/gܪ' z%D@wvΝA"7ZjZ GlA+p6+Q). Aq^yIp~@<(} 7ו]{ Wδv)"nJQJBͲJku{0t_"lts$ $ĜS~=T_DbSAIb!Fe1vNۂ"kl([jB-^ӛMZR#>< '@x * m1Ş{rw%Zs2}mUf#4J~ ؇`^= hPL; vZ8R)D&:YۨM?d`llmm.sیZ==î%[Sxڷa2#oXBLHcJbE d|_#Fٛ]@U8̛[[CqZ3n9.;WM+-de}<1/1XR PvSp䇁ND}rZpC{V_]J?v 9W;Hg&JneC ڙ-ЖrbBo~Cx,X@km_#ƴ[g./m\m#aAjP2ٴE!\HOߺL%ʚm>!irF'bn1Jψ`2 `Gmgkn4f0+k<{ܦ2t[?RgŒUy'*dys7BiB,jz!r8nظLW~FAZy.?{]' Oc{N$\].~#XT(&4WM AK96i޷!o7xKi  J]Bu0Х`'xK0 Şi#6_$8xH cHt=; T^IH%',7C}Lw[%*LFYXK&1_.Q~Ud)`r83鴎lҙBA/n[\VRxΉ)R&BeA㗞q^yDBkJ.Zs癝bO)l#^)ngW,+MVxidJDuFͲW@]jZ{rٛ$ ͱpx6Jy|5%cfފ]zלt&W=|o##r=Uh[|$MtTPIǫ`4W5FOrw(!@,"YqiE/W$q;(M<||J`3"g5A QYTΎ].ddET/2s>#H,H,pHrenj0PsxDbZ. hIԪ<$PNF\)J;/ͧx0#Cf$X=:fb"_W?7%dOG,!nOKxP0_S$ 4 ٣{( oQ3`SNiyfD {svnw,ܯaڝ13,TX!u-WpȫM@ћG@ 1̸RK EoM~BŴs[Șͪ ;{]}v6\KXЫHh ce6<L*dJ:p< XGM_Fl5!vo憣Gѝ/Ce TGxxsj~77r}?u1a*$XIXoo<>.\ī(_$'dg@2h(qsI3p&l%xY(߶ fѽ l~Q'һk8,әwqT'x䘺G5|^4}#(/BJi誔j0'h;\ٺNǦx;NT&Z)/Jz51œ b$s3[DZeRL~UBb3GѮuawٜX6jw 2Oa*x]^ PK#E;~jg&~|ҘV2wo-9&g x[ X^HSβ.݄T=KL.@Mw:Ş#jRx1!JVwjYoPmf4%)5@D.,o4XKI"iD4*zF:< Q\lY>"]O!Tl&My;шiD66 P0sV=P=RwH^ ]`yԗ7lflqFiFE(!,9D"l $gOda?>4VT4 MeX}ޢtmǛ(d8f>A0\YSC⁉{m*&/ |X@2u}M!iRD)q V>9R^=Đ GHK[?B{`tGB0˞>죊s仪_K|.eڐh%L5|g5K Ӧv{%Uaȷ3+*fjC0N98X#/K*>$3E]+ZUfW' H;\ Ƹ,])F\z/TukC~Smt7t\%`KaA_HwfgM>X8;?#5r2kєRfN5#~`+~xe6r>?6K SU*]Iɑ.J/7krf NCDl l6 ~;?Q6!  n@'IhteKHb#sQrPLIo Ƥ>(, !elOL9^cQʠڕ0/ CxPB{y޼UM~JzTcwVUk)޵!u*߁ea^d ȕr#^Mګ}҂$I <={#$Ϟމsɔbp9Ӣi:GXj3 tU}|1zg诈dA-Fm_B,ax d yr>( jr+M}RÍ9 &Zg3:HR5k\*aw7 L ;VŦZ''$fPV,|:  VoE:.oCʇ.n5]LoMU=q bDAٻkaxNL5p_&>u,Pd&3".ǡFQT~a$F{BpN[lHV!9E%qd5 * B*\h{kxlRe ,x0l@k 7H~\-L&azn XXq"< &؞'Q-"8$Ȃ L.JԶq{IST,AvA5XfwV1 ȔykHʪUGz ܠP hh~FQ43* -LnzldD\C}l] >!aD*SfާρRAXF6[ Cr,4v(ƍxN~bkY'U/J%b0(ȟڒzs"?c\IS!Odc;m*m4&~I.Jl-p{CN^?Q?UItC%Iz%9eFDJXZ*re/>r8<ā,9F؄`.ol5l",o6[hNWsAv!X.t1cCѴ-D*dĖK \v\Cu|IrQ)Mdp8A췭^u>2e{ wUd^qy(Dul(i`X]}Ks]5HrP\0`p)Zfo 0tME;t8~q()|611Z^'.Y(C7r?.391Z7m "U`>tSŤJHP:w qYxE,Ldh$t͂.T(˭V,ﲎ~& ?g=ggQ9}ͪGrTK4"YZ yƧH%})" p\wq]KKMfGivS6 z;BZykTd)rz-1*uIYT͖H H|r/RT tZZq}nxTЇ^,֘{#GC2 5ߊC_ohyG\!XVA|i]#mļ89մ&UO-@ƖoKRgZT2%SCƴRh3!P$|OPkL $<%@ C;<LwWfӖO~1_|mf/`' f vXȣoѹ7l΍us"Qӻro&a6-x EQ`g͈5'qS$?|%X0HlEMw:6R핊-S`qϩvRbM`E*%OiX(¶=RW ]WLʴou\]53Ð ۢ]KDB(᫘^J1!S>{VηD@nn֍LGDX­(~pJMLKy߬cC0p (>v>b #쿱ZjW9wJZ(3DPÇLwrhK!4U˒ kT@U.R<71W˄sy6-+jW58SyY1X*AD'o4NaS7m)[r…<0M@B7Tk ")dߵ'ҵh_6%AO|ݯDfz5 1&?(s^xh]¸_e[ 2gwb j#Ý`ynhvY?!#7p'8>bQ=wU)IY)_61yBP6UªVϐcbE)V@\y{5o. hw?t /Au( {?s ht()D/NS~O;6xVċ'sg6d WS1insBtB&J-LӳI،QjԺĂW3s*od5ٶҫM#t-ĪZ 41a Q2GC5SKU@|-=?XaS5),fGiol1;a^Q )7f]~0&s6 ۟z<*@ ?o(a*\hOF _E怺?"M4>1d_**{q.+YUцt-A`>8U'ʤ[GK`"a! oL_f\ QM5Պ H *kOgDl2,yYUBߌ?59 {^%~Ęi\}D̗M@G'f7uQ,Bcd%Pp)MyVK ]ъ@O-l/0=rڭP5 !%jK+SxyDcT4Ӗ? Y6eUL-/1D}ᝬ]v}dFl*Ҋ(] upctrGto@g\O?i9ZϘkJXF#T&gXFÚ3Ǫ(Zq]b7#574[Fzɐ;餎rZJsAV¢]P ZXgplkh|Dɡ%^5O9W ΄7cP:x%3 KΪ/v~e^T|!uoz8.떤hu\s,._N!v<}E`63>P0,t=^ڗh RyhFpCa-H'2n6{jAUWa&P|=.O%?֎yON0 AwO^g]aM%s꛲ȤRxAYҾ9Cn%ivR=~τG}CUXcT!$L 9 Bu:%h0tc1r9_nO4 Gd7;imB8& EXn@mv~6‡~X ׁSwab3Ie'i&X(W"G/ki1Gm2n v}lmar0~.hT&F r8MP&x!-N,#L~#TZrOMYFxcIt'\F "LI_=rDk$ߕTW:tTW x]N9qUƜ($_L7^Z;q?3Q;LhPu%±Bv@ [x _4IlbcjzP~W=Hphȥ"1sicT8oRܟ4Xg+6LYdG.lyK1$/I9;{`[uQz_/tG". 2Ŗ[Z逸 d QQA"nag|eWFg9コ>񰨇A#.+ oNZ1)D3vy܏鵴=`WF[Vow(]?;j`foJ?CW+SwRA!La !N D1%M{gV-< ̉ZS(MѰbIsNm\l鋂mə >9_̐;ѶbFbp*V̉kapaȍoDr6X]>ƣvdmhͅwoIV'@h9]9Jsrȳ&#>ޝ yaD^|^T0irq DZx]ҘT+ZTntreAU}&,ƩM!̐@D=0_b{# FovTi>^0u+M#J 2sp"L]٦gb%?'EBO YZśG?ʘJo΄ӴHX6GlE־g2h V֠aꪣ. D/ E]nƋ>ͫ a̋2Wo"yNJ^BP ={f _P$ff5ό JD@C4'ju}\`4?|R9[(K7r4oPý$8?ycI(LIfd; ʂk=b@sh G@bp$ya} $erC>9GzymYzXzzo'ɈߨW|G<{溬|fs0|ᅳa3ƩK@"si8S/b0Oϱhl\cd#ざ(Or+uşljbpeJNV|FUxZH.r@ix}; e(kopSkΐ^S#M&/f 0O 9ltsg$a-2Fp o u`,m' rb{awgXx>xev3_uq=0>oFm|i~!K±EueUI@IW).O0IF! B܉8gNzq98L9ڥ2r!HV+ڲ 98n/,}w>ΩtEvɿ31:ѴuU/rY!QaaNs|F2 b8 `1|S3T|~Ii˖w)t>#4>-F&bΛ&߻LN:Lf T"}B4H_ү %R>0)=JIjcq[uk f_46F8f9O8z%ב_(_E &`QQ|]ɠ戫k; mRg63/u#?3ŠTTnO"H]  g/nF gbH*b#6xFG~vҐP|fdfޜQ!:BsU]6yOV'|RvQcW$0,ԫI~ϑ+cS5gA=ô>E-H#xc N,iHrEm]CfD䰕qzjK?ٚY,j4ZlI‹o@0^=86,#\6/DZ様qN*cKne%]zb@ ֞5~3<oR~s[6o/l^z<Ֆ2E< YIgZMJ7`;!vt ]_r#lO4uv/:nn/fAM~NE=68~1Ba{*Of]3 yefے8eW09=MFh.8 Jt|SH.´Wto\v!"n>Թpܜ)IJ}[8vVD,dO\Oh-Zi&M!8[*VJۮP1z[§{u[lFG]*ʡƲ ,eeyO |b1xҳP3 J6 UЭv ,jKzŤ*s>3Bu5s`gA3EL3OBzRAO9\6?G~`ӡ&mHP[ Od 8^\ Kآ,yb/&.՘2M=%H^c8o6tH\|Z5[+*2T/_qxu^'Ş)ϖΧ=={1۾2~jWaX3dH>ŷ`j+3!i : bMwFhRwyUT-Uhv wU{M_"<13wfؤ GoPIၓtPe;&|_S9 Jqչ;I }6"䅴)+ <7E 5xTuaYuBre4|uht֗DuUbPE1VFBC}ZC l>T{VGW'W;fg_ǿkɁ~}~vdk6/T |)zap.LL;&|GUW{Нk q@t6|'@UXB߉Xwש骉k C!߱HotF>PbQRpK홙cK@D,1^" =Ì97W`jJ>F { 3*AJa0&.ijQ0FcY=LR"5$ICd"h;ͫu1bRK ybZ壼yɢqFH|=^r±q"H+WW (ltfoW&s\>v CoHBş8ar\3zԴd9ErGYVfs?^ *#e"[x=L_uW̫Ih)tvCbk 9aKb/QO"v/ x(-аDnJCySBM"GvOe۔iGx4Xy,jzcD\ٿsrw"sLq(UK7]c8SV\Z0 )EN-:E~EFu39}_L2s{/!̖㪖Q3B&}#-wӀ3Քoc*P_GN53 x'@'rԬ pYay3#wc,.mΪ2Az:;"A5z,D`ć!=hCap:7F 1[˵5/#᪌'lvnʶIR6 ̋$;6F~8^[8ߐ9mn')-\w1߸cf,c~[zre $ׇBܼ i0d7}J?¹akx5pT-h:NdCKFO-^%.38XylMFA SOP\!t%=ӧʝ] ;rUDZK|`AH[=5m>ۚp&Sլ.I~j <֬M aR{9U0 :7QBd9fx!K7v54zl[2%tjx촚 "@mu[ okY8$dW1dey௨kD5=!ͻx!ˑ L r:K;'ŔG?WSxUYn熢4uX3(OԴoȹM_#;JZ+$pkUD%?6YaK)b@>ic}BGR$a q79j933Aߠ觶>uaLԅ:GY ĒHP qp MMS<(\eu2g!e?~ܦ\3jR^PNyrW(u;4B ܋@ѭd ܇τO`|PbxkIdLeż+OAho_{6S 0P8:`[>_ .cHi )kna[;F %ju,L㑥P`Sr K6q"/GtZh+E0_Ӌ @YFs)fY/K35z]oi T";εy\>'a!űKq܊ټpZ -r\>hvϜo~&o5>Bif)u'xݚR5Hi-ITO蛢nLf6`q7~ضvLºєu'Gp 7'ڬ4+daup?mսKPR"iG4;*1Òaw劏l'&{ y~_ϰg|~EPD׷X\H'P?@iԟp% 1#qTU"XQ TS,am5(Ҕ=Rx(oAZ$ިFm[QX 6;]'szic"gQ[3S`g:ԿG?(3(.0,`=!5ԱK,ۘﷻ5G!;aӨvu,>ۑO. ȣ''`ͤJѸxu4y~;sKP׬Pd_~5B޿휑!Oߎr \5h>ѳG>xf qG5ϱ߳v{x/pP0$ qu!VJpׁ0eC>`(q Wެߘy]9Twp"~BwS{I/Cz+S :iEܾ3-@D@Nd:TF~߲&C Fp c,x\+F)E*'۽7؎foϱ$B٫ Q8v<[ISqMꒌIU7,tjʌ3` , !w)˛;>+eV8f@?3Mgocg*hZbTOY6 f 3r0}zۉb`*&H/PL@Fs?= 2Oȅ벑lzJZFڀucS_A0%&z/̑gESQ `5vKcX͎}0#=Y-@ @L- H|g\3Ԓ$W>qs懥͋Ao{wBlP'IYEqh )3_[#n>V3baåKH?qf@?@y×~7J&:+۾bB5]=l]ye}] >׮vE]_pVngp3/;eoPVn^A#_^DlBR3X('p?BjUDFJUҺ3ms~]'H?^^ZW@lЕ|vAťpꨴ?6#snWF/0h ^F,wQL9 xhO_?(IeEEi^.6?J$:mXR{߲,:%6״aRy0S5jDފ7X;uy<"A0J&V[Nc~ p ^~A]TN:?);OO мm n9e=,:5qSO|@|:Q͑ Y&"̰V.R#.YQMbܑϷյh=&bӥsg^[Vg "2XǃY\b= ǐ*O0&gV"Zoc[@fSOByvUD )yRת#W'PcW, \xbNM)*Llj.dS9sY;LH*vB'X*5ۦ{#A$5eyREa:6!pQ9#G=]m|'@)N5p8,Ɇ}9ZMGa. N0$nz¡*3f{+iɿ 'tJT1mU㣨c+|mN׵RzєsD;+׾Q ݲ`/_]'3եѢ `z[ ps%`GŢH@8raz9A{w[WqvV@n W`貑@rN Aq_zu *H1e4Rɺ_[n)k^(u&/NǠey.)[|5BD(7/ιVmAzQ?Sm 3$,Sb&3;.W%" (-tD-IV pR踾j@Ԃ(>tYxo7c,v){'u(2mfcs6 HةZ,X96RPk1Dl\G:OXF tݖN*`h4ŧ!_"Vof0LFL;,v0}*Fqh..|froUD%gn| n !움ЊfXgjj 6j%i#bw5As]d8l8kmO'Hg4fmR~(S,i??\ #rg"ϕc-~#-]ymhjUE F/Dww0 p[y83XP]$<kAi}r$][YuZjG,Ue$Ϧ{*`%ֳI1ͫ#[TsphOICom%*Mlhjd 60! RJ#t6D9&YˡAB{J|(r'ccpEd`KhӳM7p@NKU4 v sRdU&ڽ;yd+al U 3<ɬjBo0FPߦw9FDbdrYvUQ1ecr3_0hN 3M=l% k vlЖlxp!Ym s}1Ӕy= ) )IT?&-ݙܡYsՋ'Tm&Z Dca ڴ)AG,,+_@a ´dKg$g"=G?8 iyvJP0;ǽ39Q^m \sRSZ47qODPwʻu,x",eoMx/*5]}T+xFa;>K/SpGdt /&H]R)j "* z)tʧ@5^1%ՙ֨]~A`CX[l@w U_Iw|KP]Z}.Rr ELqK@;j|3ye92rR}z{F (? r(D0vXNt4n0%n3tըMtc2=S\Ƌ{q .@9`9BpQe^D1[ %5c2;wE+yd_7J``@ MC*/(I(Ƿ0~Zt6/muq-_ ^#9!|WAWM.|ޫF-6Mg!0Nak BĂ{iV L0a@19ejSh$TeEz}_V/ZńW8 #5kB9W>:At=Bf{2x}C#,mflo1 N`ӟ 5^jTU,K@ݢm>SEs~n$Ir-ɼGvw Ԑ/+ Y2pr 8A2OQpQޅ( :dC=0(H' b 33DQ ՘Vp9]zj lsZUҘ\=a[" ^ᄛ{3q\BCKc棔`ұU RsNq wl>+X }%Dhg^@¡K>LsBV뀳C.RᛶyBhU+Va1ީ@.SKz90x_9cSh>or0K'/:S@N%Œ%pK1>:!oM[䤾߸D)iЙ0B#&+kArMXzװ'Q!  a}cC=l֔N~U#}8,(6d*>K,V뢡lZx f&joߦE ո&@ҔBo09􄞇=aCm cQwonI-q`9%]?סdlONs]g=E7׿_9,!̼dkq\(< 81;;fHO^}7P,}hqwoïC>e.9uC`yp%%\ [EO?)2lN<2x؆0÷)ůO>6AAOS24lLTkSD_% #GeFlOjmFKH3Xb}xNbDvMXsNT&b iAjëN%BHj#z-†{{HdvuJZH -2r;;?Q{qx;@(r+)y֎|% t1/FRj]ѕ-(Ö#Vn(8{ǝ6iLyC8fLdG0tengY8vs&`,2&u'ϒC CpV}Mgt9!>3HNb/kw ;6Rb H<6 IJ_ǮvџB+!r_d3b!Oi~ѧJ#"wDStOK.rmFUu#ȃiX1k L嫔Ϋd lRM"w4UB7DسD#]I5Zƛ0g{sB da"4wdxnFS{g@H 2(a _{JbhCuOM~7o\KXw;Wѯ44cjXED=fQN\ĩqMC2/#u W_Y8T4o˳]ZUXl) {1Ad˞9+ ֠@ZTnw @F"Q8‹p(4Gt޳*6XAy~V'NBrfrIau=9O~M% F# %F<ٰ[sWb j(Apm0YomthHt?c$ ډ~}T=@N#9u1hSW©ؓHc$-H1d:GerdXqY͞~ opJy;=Z'=gqF I\  4HH6WibA2n ,;NQz];ۑbgWF[;bsm5»pBQtPE^.6{13+nz>[X!"UObR6?KҔ]ޤ g;B{^luāps`6G| 23AiSȻu&;qDND瘶ujѾުl[8꾋Mk>(͞;>`mk3QVkë)/PO'2U?ͣ!Ln:(ݟ'_6qyT7.z:~.kS%{_ыNp$ Dݭuj@vOU_tdY?6<"N@^) s]i)1s1ZbHZ rbLn;-ʺHo>QL>ٻk!`C@)zTohk2d|@\yӦp~a x^G1iB4g<ŔZ}}'r S#6ַ:^Tn~xQ:!^.?X6_[JH Z^\oôW| A+N*fw?MwQ~_Rs~0vB5LFHϿsS+&2{7|N.ޡf+z3$diC3m>FJ«¿aݡoWTav`O5{Dl=Ճ oT ,Zr.Eh 9j֝_&dyNQ}LB{m=tM lm~{_[v_v5>U/H/pRZ4ӨbV {LTjL֋alBaDh#>\|**<{8I5M=&mYc䮪7; q_̉S9^t5Hnp22y}_H#_ءsXΨd ]UtV}:)>vm6yg.QTַA/"R.*Ѝrҵ7sdB$H=SQwv&]wƅPPnU LV"اǫkyx&qnpD 6I _$p*EB%#mvÉ.xI]ݪ5JoPk2kUW;O^$=[f6>(Wz> 2:ϥE"+9JF":eɯAPS9,-gѴ]Z~rHG,DBy J#}bT Eй7R~_:X\hT/)2XQiWFqG VS}VMqVx0E.A]gp +\(+ +>ttZRͺ(nS<0lUA3]j8C;[q 0GqC4LZy'Tgm$t&8$$H;a$ˢD(Ȼ걦63NvUD+ԐcH~| 1GS"D1n:|-d,vcsFCMya9;b(,&#'Xy`|2>jҗ=XHtAHBK3 VxNW!< =o,0n@Uv2~e`Cea퐦 Q͔^'㍕L9(\~"fv^&q[QfivEEx3Af0qXQ6RyS%g>KoOzi<-?D8 6իM0T|vO:&\պs<-BL2ٞ}186ЮJbc5Qz ><ܢKQ,EϹkuwQg+~Ȟ"n@.rocLsgaB!BuSx@ИOv 2-ވ)!z=X.g)t\etgЅxx%Z}#/9rkVWgn"%&Y^\<\%Κf FodO-CQ6sTB⺺S")3Q}\ g!u\>C',wGw5ׯh@M"O;XyLYO]mex6x٫QKCUѝsŞm%aa\ t WR As'4|\ztα0×h[BkYAJ<[}aKqGqv+Tٴy ⣔< g녴< ?Qu{M0+?[[}6TGoyמOx[{bΛB61䨍GrWЦe=6qgE ;,Gzn 3FɋTa9XcR{rYl;Y+y}-QMgt{Xyitp{r$_kcutV:)ㆇ>҇ze p{zptHa"IIhYHU/.%11l=AP Fd a0`mYWhd:~V_+mE4@)/B4wڬpv*g1GTdfnh3HY0\AƲ;4_N?vO"Ky!u6H׫tic}GGm5.&.w|P̑N}m>r(<mO$#kCF /3ds[0xn6fkZ|w m>ӣݝh׹~ޖ]xSLgӟ6ҡg^@ eHwNI4LD["u&{Sfz_+I,aV[";nG\a\]Ak QݞaZe]/1ƦeɀXq-p05cX)}Ho[mx"*eK%#'{X4[٧s>ԛyL<Q S,}n@ٓބ@V51@|ݎzBx JfԵFJpWMyo"Fpz7EbEU5; f$ p8nВYg,KG¾%0qw>U'=vK !ZQ 9 >k'jY䯫p$5־QhܲzqvhW,ݾv;#_or mk-_ ŻVfTQzT éXE97pϕ@k~" mUz'SX }xmIs iyZY0 ^93H42"\cƴid9;1wN!EV5cbRVQsN ޿4 \pz'? aY;E'oz2ݜdH- U ~4Biȁ<׃Uؽmg@~=2&=*o]~4EK #1^}p1=mz+Oz|6`WH-4ŤVY|1wͶrF >j͚W[ gDUnQpأ $"Hw)c xi?mUۨppV8k6ŭδI5IԳˉxRU70``JwQ*/Qbp|6˄lXe|'}E":Smt\=~oe.>\u$"LfK]/1^ym w.)֪]RQηun+kt] f—n T0?\J\oɽ{ {0o[t[4x%s㞳Z~ P;OVjLuC}'5vW4uBzP<*_5ؿ iL-a|]Jک[oUjI:[8Qn{`%ٙ۲^:1։鑟h֮xüҙʳ1XLYNHx],cNkG|4ᨈO$0<t K`[Xfc*&gA݃Ra6IƖjOYXȥLxe+*Ћ]Doc"gSQ J[1bF& oڰArZ*S`%D^8cҘAٌE-0, ;tk\\D &yiz3c7*C*y kqmWFwO5Jrp_-N0JgۂT}o&.҃tOp7_ҪU K"ù'PorJ^ W%aMt" A6ȳ -ශ*,7KRs,HN >X,{uRj2y bP>eJGrlP^ȵj#kbΥ~e{]eAWdH4F0gPϨ<ɥ8N--`Rf:A% 5ϚסrWK ˻Kz@% Ŵ+'>J^}hM` ؁ ,hmG [h;80-;VtML/5.2OE^#_ :)hz?γlHP ^XeA"K:74FZ? (1J'LP@s4F_fOU%ο5z_3LIZWBha2'hyg%NrRM9kYH&%0SV+/ԏbDɽlG0VL%¢kXcl1mҠNEg<9=5`}yZRS\v@cyEt+ZOJ[Ŗu]ŜTۈڛNK`MZ~t{ަ܏L V\*؁6x9/h~9w2< v8b#Ea5wLsߛ߶KV@kFE2<~fNe+͆}n",q6yPJZ?C@M(ֺ^1718TsJU1>}#g蒲 Czʪ,Cow.ME(;路+>m[!&&A B!'Й &>0Xպ<;&9E11#aJg3,[&:/\ã={U7W3kD4 .clÉׄ5B9Ffſ%_C8P[GkytG`Yg:~fycѓ2BYꋴh%)rr>r 0.}k<\w`Q3"%XIW1T c!t10#3dB7qT| j텺>:TYщiGQ QpS~П%gFu}]{dGw˷*yEv@y$=qtn(UPirc3.S#o~\cGnCzI}ÖFׅE(P(+pep4FptGrXʋ;r{cufBwK$*By_@ڀ (!Wڕ,ޠɹ;Gk[zOE m=#6 .?"Ფ*?*`m]222\NyTqB!|+4&*$Wܛ]R6è(nw.= P;upkq_1a^qi,.٥z@޶j(dɴ+1Xрqo%$r\ y{f4dJǡBgaH?dOLJ~Т$XIqv5nvfՉ<ЊJY^Z6>r\m.n3AN%(o܆'bj֏pЃ&>˪̹k]ca\cٶfq|> NKGFJL )Շq-1,>K=E%Yp[>RrYV2 NDDV&dW \6|sU :O VQJP049b榌8L~l}ftDIgb$ b]SO2v ;ZX6ׄ9V:.yQ#(qaN&\]8^*Ħ*k <3e޺@ÇX̊')[(2:#di)$LŔ`:ݞG] )(HhLwɷ1rD({f>w98k4dm˪6D} 6C[^6giyd*dwd.hmX⥁{!@@x#ˏ A,%I B˝͋ٵ>n~rCMBixu[VEUr ?1ώ,L.HeӕzM" цZJAATjb;GkJ T$1bU )ZbQ0 ͚a_U!pSj"ibO ~9@7jZdcseC3~׾jv1:ZIgiCϥgz} Uz*K;yyX~Sàk/ǰvT@">6%diCs\jk v08ARJ̦Hc5,^dɉ].MZ@"(fQ_3_jDP~ *"j#O'֚kYD1HtPd{yCj^w/͉4X!?sE10b-+%@X=[>DTԫ ,&/{-n%!mC9ޚY|vEf;*]o6͍@4*>~o(P'#, |X~6~OnFXK^[Z2b) WpI3mD P\"](&M4J!0wXN@sӖ=PFykP9Y5Dtך̅DZC-54rj55[l| Yyi1TxZhQ#Z?)$ (NX\k@.kj[M T)xs> & q:\ H Ecc9&!3[陙V S<1d·MP_/ sauFnUNv gB1 {I5.,|ܳNw/rMs[߇g`-Û|Aeܦ&TDsgXgOZ;|+NdxAj`T9fSۋ)<MS#Z9&ቒEHr@yfVJ~p65J -#jТp S‹p>L^T  PU8wcTﷃ$֏֟V= O@pw3+CQMMW<*V:F/war3Q~4=tQ32g-p2~ a{cSi|qNvtՊrry- vM(h|9N+kZ)rQeuMӤVV0!yF V:T`4_t+"*]rיN`5g2ujjq PYT& -s|LOhd?T3+!K );_ H{6 "tNd9=+[J\룸 j B5)f./QI-"Wwpd tk 4/ WozU򑖏ɣYNRz2W(|0㺺yN֞8tD|+03ϴj[`T9#p+_v)PR>9 4\<7'/-LVk]eY0 :3 }i`P܁(aRNwsN}҃0.9A<ļğM1 ܍$WתJg6e _IG(̱a=p}MZn|\ q0jx;XdK{WݔTLun>Ğu05 a,%~NVUbY_A&" Z 73M6@q^@rSb//+fD1>>W\ug* @tPlWQuDU)F-WHa x)eeÙ[MS;$f⭞Mۇ`e0as\ov"VEW\t~.p4+:Ekpcy֕t"lMle '!Z;Bg(O )ˁWd$o臶ǐtl3)թoo_Yvq٪MvyXcyN^[jH٫t( 1ߢVg&6ȴ7`ʼH2ˤ& ss^yjF2 Ļ ? aďK(wu24m A1ܖ0z,_J#l%u#7t2-F(uEbG+E- Ffg4hiyܻo }1Ro ]>x9XHP’" XkCG\EN+1`i[y_Oۆ,lEE^Xl/f sBZ<ZJ\Ac"vb\E.69ĸL֚ܝՂ5NCIf`x>9KjS]jdna8sY#*G4-:|%pO*ٰ4Nv+a{LszpjW_rT褖sщ1Dvmp[ήle{ 8RqPP/hvI "f\m"|7KafxD9MxP۴]&Y=>A3| "|%\ÌA0izE8d88&Z)(Y=Kb$leC˖}1hAJ3ӀvK8S[*r͑J95C>[8 ,3\:$Z g>wJY1N?].Mrz%d]1r _.[ #*+Iو #GQVe'N4D3#y+<Җ`B7Q8~5faB()kv"6OE4TX^&:=*rvH._Jnɕ SCYKs FcjەBAyO(OC@)V;XeI f!]jjh}z?+x\Zu|ʾ Y?Ѽ`۳9*s!$%3;c^q=;#@KMNn Y !:7*E7j0Op j^e1u;jS6bH9'CpD}Fc3s-S*&QŇ(rG) <w}rLngCF?)H*9$vkgcmyp*ʻO4LWYHpD/I F륉Оxfا 3:zP+HNp» N9ZD7\PḮlXM&N=)4lٮ\soǏ.ΨYQ_ 12$DuJ\-o[hvy s17Zh"SwL)} uq]7D#&lV?vw}iLh F͙KEa $W^o)?gxN(Ѹ A*| a+*ai rHxr,乎;5 [ȥD2ȏq:L6 3Jl0Wa6V_ӛ~ދ\XQA) ܟ[~KZvR-o~ψsC\/+t_ſm:6v2C0X\o~~i6h7va/%GU /kIdh *w7FL4ȣ66=,]<;90g:D*l7+ l;Ǎz xC<tY1?솙ϴ)|#Os}M\X$Ģck]$H`1n|_T6%˘g )OOίC.mmPu-;)( ᒑXq9uXvmhUу"R dgH)躃gjA@JS:X:)kE'ˇ\\GI/krO'<\gVo[֐ 0cz;ן;QnDR`x̚ޤL^ |(ncpYZa9:Q#򕅷!qlКof*6|K*sr?.w%z356*؏ k`K~ mʞ"I3,])%8wdW$#պ ~]{B=M(P%C$ Rl2{1 b*wgN2ڎ\Α,2ItLI~哞0ZnfL ?=spWUT}U<Sw}1cS#H^.^b )I7BiS梯Ժ%O:p mfֲBtG5:W]WB >0[EEv/^10M'E0o&֐KSX\Պ/%?!(iay;J[š6nWf> O7N.ch  sG臈B7g /n=E>ئ*!D3SyBÏd͵P/8 )X;AmdP/͙!C8΃=0ǬղuT/lINF8CxEC@.{Cm ㏗6X-"9t, #<+rէEkR@J"/zl1>SKϔ2Y+>~F2Dz_͊NGiyqdo9f솨ŁbEn^)$5#'%!`aBHl{j}9r. xMm@rB%N8#:bnu5ge4!( PB^c0F4ZK5rc`PEd(3nB[$EHCMz rY:WiA\ԳWn0֨-3'5W><3MX$0M&kpӲ(|Nˣ]WS`mSe&^~Wlk˻@S).ѼkEl[V! ȔS.S:Ӛθr僿{_K œ\;WMwCmՇBMGfIm c^獉u"i:W io҄](qv<{N湒IkL]^.e'`wY,/`sgYИ9[sNw]FB}CyVո#B2˝ .:h.H= U#N>48 ;3 =Qzπa/z:P8ߵ{U޻/bs.$AE9ց I9%gL'<(-eR!ZvW fx8vC ! P2.r K hRlVviK"(P^~x`Ve^VK֕esXr`2g+9p8"cM+ܯ;jfibufS8K=xv.a$<Ӥ(֝&`݁OD.UR@ UQ_O- 1 _ H˰>'gN*OcQL֫!Z K5O[Z2Afr*W;]L7 YWuw]}koGRxs}D Kg'vBc1ͼH{6>լs4h~ɕarTc:e՗PuEvGd#4mȸ.3p=/9* Na~>B)WH;jUC!8#^T7|D6Ǯ猑S-4ZO؀.*,bQ괿M}ecn xUVWrTkqL!8WTO؇C-Df L9l@Rۅ}f1ZXE٥ɹ5RRK;b!(a">v> RڛB1pubǴ?xyH+[ֽ9 a7eTꤱPG4 ԓVnEMSGn/k_߿ |rܷH+U-+K`5_T̩8#kriMFoER!QɒObp1iݰܜk3ƈu|Hʱtu+؈񰫚 {ȮR#0i[H(]T΄FDFD,#y[=5P˟6O.[kUݸ#\xO.&>iraʎ"IIhfGc}:02x950TDUǕ]zqs2T{Ws%WF769".ᙫ2IRfbil.J`eqUPf<û63\CʺǴ>Z$خ9͋g?b2>QNFOb7? Ceh Wvb\)?"EHUۿL~_?"q@EnSpGC ,̼BqEÆ6-֫E;E[[g9&2,u\|\b -k"0)7Iq&\73aQ8-SrP.Zg/& .|3diD! %g ^ew Jr 5b8@^VgLKn@f@cJ׎@fQXi%#n3ڴ}j95ܦbо5wY <߄Y )Ok9g2r(r?K>\stk@[V;U6˷@)=k(8;2 {e@>p.ykhνo>b9E6FeۖɏSeږ65Ore}ZM?A֎ :c,h !KFm<, 9Ib^IKW?aI ʰ2y- ScDgb p?q\E9[,0ulzYpWhmY,] q݇Œ)OũjxkHjlܔw# 3SNO;=%OO 6k S@mlzT.JWE 9ҰP, l'LBkEI^m#%mĎwi7p*SgFbZ{d?zΠs$ ng-{>rg-QŷMxy2;٨:VB.qr8=E߯vXvuWU*wf֏!c([ AC oI@?\1L<=B 4to΅b%.8|PR$xz:y-VQT|~pOG,fQ5y6@GbMNNm3C0|_@h5'w #r? DnE}/Z z8491U^o: #&_. KL%htYl+ Ĭ[=o7tRaܶ/~)ydRâ0S#woJK"=pBBlW̺ZC4#6䎹nJ嵉v &îl:Sg%ϒX!sTC_߇&Ύ'9zi=ZYp>딘_=b V9鶄Ƀ\yX 9VrO׊V&:nq<IܛAigZu[.[ 2O-(p:2N28%;iw5ɮ!:Ia:(׶hwfYP%) 5ӚY+Zæ!DGmH;{AOGZt/srU&;nKxf _6ry9jiPO@.Ѡ pTiX! iDcN u `>˚olCy.c>4Gع-]d3RVSbFG]lԱ~(bt6G"AeI U68J' zuDg?&d,.5\>șN~Z9ل#CH;Phj# n V"WQ5W =jJ@8O8\/Z5G{RI{'3Kΰp!HAt_►uXaX #ЛO(o3X'h0*, ";쬡gW[v?pOm׼4GQz 9|<[ 3}W:& r͞ʶ7@>Bdog'bxlG>Gb?Iי)2xJ+K™pDlvP Uaw^@Of)d^Բ(ܶg(R;Z_E2ݔBsjO0\nh3ܓdK9nXMڤ'!p9fH~dQ2/Q:/k<D= |'x\aK;Ҕ Hc>5IL EC*l`(N\8܆~XL&=ZoCr}{6 *_zd b3ǖ`SY>OspF+f0sZ2T&]J#/Q TZY{i;8oeT?= .K@;6UcMrnv?FrX:D8оD[ٸxZ+sZVBy0&9=*A-i[˄,+ҹG`5Be>~X UK>D1`b\!]KFn7~ 0#ӌp%g|d~=NqMsB! b1{"%ѓVܫ[{@vTǃ fkYp9xn.AȌY'^4B%`oGCu]S"/V9݅z rYx Ũ&3ὺ&D{0iI/ :O8+  ON1 ʜxE?Ql~W9:<։9ͧmi{u+ u7|re\0)1/By7S3gYgjOep.D)vMpW60ZTPp^/_Å/c;'AFe 2jע}[VH>ذӑbUY?M YrЏC}g;M4nK_w9EUWPUG'\/N8DCNa$#'|F9G/klR;lԥST"*&*HIeʑt{A} dUdOiWU3@I"^S̹&OX+/teʸ3uls s x\Å컛v/VB Fmwsv*<1Q`c4qrӗP:cc( &FJVzTX;s$<6iq WK{XBe,Gai~\bN."~[ ZF<JڼǞu$TnR[0䬑%Mq8wMh4kgJ49%XJ/4#`zq]yq":{EϊR_D{XDV|=/(X-Gw=0+$F1MM_++CO7C۔kf҆=F-((]Iݰ[^cý zqO$PDKn揦-4XV-Luxo;T\ 3r7Z9 o+ Lep;hMw"sHYz@i HA2r%0"n?a2VdCTq_PȕkQ_)S79q":׳EoūFMYK9`{ {~0}^4V%\)-(gQ%= bsoAuc{#w|> k L}bx%2>!/J("\|j9{0f2#*e;dž02k{NpŽU]~C I9+81 㳶=q.@QF-^ȍK ZlK\aSICj|M4ߖkvcfN;C@wuilj/k rX݇j0[`C8-Eԛ1o(^ V^zOjl߶ T`|̡XE6f Fq.O&<沠 %i#vi=#"cb{9o"@A~x}6)2rLaK}ioy3AIL XojIF(Ш}jy'4. ’\i^4C͆C咽wry&j_u]Q}PbL44"f8Xck&Vud=кP#u?ښ꽢+V]K1ܥ8x[٨K"9p;>A.9$T+ЕP۳KK~. quKX [w'M),YemnCl~Pc1% ,25DƬI"1cw)J/99ά2L]<:e;BG/yKu3,z߉|I;+-άS4Ѥ=_8I3 f.gqCz/dOgrE367 LM+ ֕IH`4|^R'Nj"Ъ:+E&ktcBebX_SlL;!L\f ku&Է].g<";;8]BLb쿓%iD5p,R(3Qj+e ^,ov5`OA.+N)UʌZ zbNJ&:4>aPafca |&!zYiX_<~>aLJ >2gӬ6f",#};FYHE8OnOD>@g5W튀l͡"Ū"w9<;Uem5Q6kr^cͶm}.xmpvVK0N) b:k4Vj^/J„Ow\BKPYU+)cB[ɋ! mx'UԔ %-#1m ˃3S<(o #4.,"EDN‘SQ?%rR6s*[sgU03,=D qXEEjItH_Cǜ k?x0Xm ]/fۇhL*ٕZY ^ nDc y ~xL1Bw4,ɢTM1J$w'ą'Mⓢ*LTyR}mv?WkL-'ke"Az"}'%}\@wYP$6+`(jPg^W5UH~J{r^7OIX&Q~0f>ޕs7 2[F@a*>HQݍ O,Uê7uY\HqDJv#b F&dױ8Zj}bϑM/9%- /,N >㮿ZHNA#;l g[Ys!H?ɌmmK?ۣɊ7`eMQP'{n3u2GM5CдnP3l@cj}"2j:ɖ<ƥң딉3,,$m-"&Xo2 fLB[D=nF(-J,ߡQнmR i Whﶲ,ةsB+pM wl)ň[W;;;;_*X8 KBn[ ʈ@å}c6J3^%Sv#ѻRǷ,i>Y>oNE#X&4>+8b1)WQg]GBPO ).̈́~JWt(D/<F=?lt%;$7H6;ws +Whׅ'=T+-9٨O 4YgLi( @# Ygf3}_H!zUS@E(<~ \ѭ=gO+(X~N"w?7mLG9J&ɥ=m)B) >y;X,[kyD1)d2aCoJ9琧Oh*/w\704 8 }泋t4 6HC-n}|QJʟa Cل77D ټ{Gws= Ε!&sk4d @)^B+5RҴa15'@^ik`+&Y `lY\$ -1?~ Òu@>dd 0w+.MtP={_ef*Atms[R֮ +L|7&S̼ʥ!HX6j O:2[؏c ٔ{4t+re49S,Yz#sЭymQhlߐbۇ>n,Vt$Nj{ʒW%G/E #71f*Ç/W7 MT(N(潱#,b>Qجݧ*,ٍġ{rn̄%bZ&`}F&FP8}wvlf,׊][1T=9냼46J8eP'Y/p b7KVLYє%s9kX #4nw|*K %TqkjgՅIƓ 0{ͺ]׈EH6*j^ x,)^wݥEBbnV1 tY]IF>wcRh%V -}FB o;ٷ_Ct29YvyL7 =JwtyjZ=oc0=n>Px2F4fP:ã% NUw j|$ai'+W:^$ހB3]cxXi67G7 \گm%ǯ93^>6s+D2u&4CT)9:B趋LC\tΪRxݮKa9jFdW-!ӄaSgݛ)sȖn.vыH1:ؑ Ry!\b*|:i59]M?pxQ)c~N(,='3'հ ZN7JBM*H Brz4Oh5ITې 50j 3Qn<(SS ayzGl;%E (uX-w#+K~݄yiTEcls('S?eF+Nj?$.@zW> ewHX="z;8@0 G%m\1,'2,D)H~owtc+eaNZ-6o9Z+AԞ|'=sANS SLe| (-Dv6Y'q<X!K|'hI7P6Y1A ?{?|_ՁgTE|%8[!!ߝM٫.y kqG$C`rHTW=5oL0 1rqwrkN8º%%˜P ,}6(*C>diY=\QJqfx?kAvӳ.6 2G W"rx^*%i_iw4I_ZFl1;ce`b8/ [P#[tz";w*_̇Qنsc3)fp`[Ay0I&SM 扥`8;$2B|sY$D pem/-߉63* - ~) YPې]/}8ʆvAu7XA:9pfpql<ԓ@f);=˙0Ҏ񸖅!= s̳a".~ *s){77Upk)/ \r}hSd|h~5Hh|LˡuSP@!I.mRzN;p<;^,{,`'J,xvMItoT+N/O}w@/lfщ{287Sspfi+v<ۣ.q0YdTjmyA_I:,|$g KKFG̺zS18Q`DQ۷\i }Qgg~"qxp=+ r0||-qpmU5oxQ̨ϗMn.1KslaHD skw594冔] 0 7h:y1D?wbT DEx,Tkv:OU1_~/JN/BVscDnO5҈HΠŲ>cscLn"TR(bY(07\3.AY[T}K,ԙ9$K[詄w(ɿ՝M e_1nh:C (!jNP(ATi2S(_f{\CaeT%";L:p&G'rjB5 r}@~gȘ t7Zc`ڥFf<<};!Bc<Y!0Q|ٰ,|8Gtk\݀/RA1 l e@)-ELZ&C~< 7;h3Y%v¨8)?fBhRKRRHv ;/LbQS3r8 \TiiPJ%nMp+lN,ډ{ رrA\̦u ֒.skǍ&;kZ&M©C@^7cH]^|F.B+Y$?}FM'vxK)נ)a;_ZQ!Q*}׽c!@8o @'n#w?26\5нM¥b671SG28OMBn-E\7اumU'D>ͤYxϞ^ʇ-my!Dd*thd:eQIP3gN9,Im{g !|ɨ5=l?̒H![9)=˺3Ч~EXxH ,ڤ(b5,lm',J :'PJ#y6Gi+ 0ڬ`TW޿Lln \ҒZT'4XmߥeY✨- g(R )| E^Ut[)">͠1|xcM 9>`sҠ!D|3L;f? ԎpsP9Uγ$kX xFiq"t^gHnn.d*HZ4v:AbVnk<{X+z×lŻ$QѰZy%~`5b, JviNɴ,[ҷ;-YiVuxCsGܝGs$M ,YY" #SV%.Mb{( RQ-GC9 #SP??5_9, kt3#P 3歮*swh ewhS<%T\~Jmb!a^@Z~- h J 'ڝy|yAxh* C 7knsPBbVʞ_*+0xߣk:}5䟒M>'t7(V$&BE+:Pq.ON92l?HTއ6+&B:nDv^RA @7B~tP>_rK^Wim#튿Rta3,.SR1S1A(+[J{&mE3ǸoD҂P,|t\ub Q0uJugiäʤW f !}BG e?@8h)ҙ1_HS1wM*aG1{.2~)˩iP,i(G(uf-)t.Ʀ .k:Qnvq&2->F eWp }%`=hǂNW8].Ia,,ZKW=~/Ì!HJD}{?H~ʿ~,rMMItzDՕA ; wEۦG;Bl\>-9rVsta-H5~f*{s=N/u|P6ǀAoYRe_?RQ;kc4+8Nڤ_ӆN 1w~s?l_OB,,Q;QTks<-LnuC ZkP:zTU@cj&o@2}r+p5k=RO7a~Œʦ١QK/9Ø'[JD j1M<oq;U2wIdh[NN3:襾3rK"1XN"h`=Udwx*H?%t2CDZ5^舖^Z+SZ47ggik[t|pp0ʒ.!ȼqd~Tc{DM9hįGr%غR(֋hkb <ArBN-RwJj?0$-kSd\NL}@.hL=[kf# Rc zqdYujGLl'>=gr?YOkϬE5MWʫ%JmءL hn?آW*TX,S".~$!2oe37AmDwJ~k骡OcRee§~fEmQTɶ==+pW+;n6b4)')B1pY}h `ǝf_S߆u)z-X1}??xY'F #B^;FS>A6$?zeO3(N95S9;[,ta;BWv:jY U|𞄞 E"cɩ;~, Yn4" p \#ox[ĒyE.%tT W5-FBu䪎-.<ڕٽc̈c(ߦb1gRJJMыR] x=q^/-iִB sʳ\, M:Z6#cKw<臚])o؝ٝOI|Ub\OUXeuFC'976gK#lZVbI>xG,kwSI묻sX}Z>֖4<b1DUgT>t]ci$U9} :V4v0Ԡgk}n?0R~ β־A'Im7A9bEts)cA6΄$h3 V}Jk`CJr}La\g#P0^rx3چ9ll e&6PM=P+vGW*hFޖ~' /VauF)q8:zep=- q+:?B\,n('fBsf4,uQ؍í!YREȃb,pydhP˲pN12~:dXZKkKʡ&>Tp*3ҝj'ܼ4+rK̯u_=fRu}{`A/YyAhHEJžBZv[hKqlźc>(Hh epd~e:;2kE~']vF?yH1ϩ l@7:$ZΩ hWNJt%gpHM6A%B:TQan DEo*xV-Ȧˎ]'r!<ťMiJd191A䞍7 zdY#](MG>Vszy'8SUu1zy=4mXqnsU{,6@w/\X{g200CTe%*LR1/-YS,Nb2WEuh*\(x5KzeZ`QsV^@!俘[d:j*d_e!h8k&h x{Ό#F˯6*5|V\Uhuo68;EU(Pz6ަPRp>cSmAۣ:g9Ui 1SHl,<ˁob_)㐲4Z' s&U9+ék|f8 ũ>XLm/i״ ٦n*pb#TđV o̠*wV AN(^(}M051ǃ6UD`./j#jU=ƵA~ h4da2kPՌȯ$yv3OPV76K+>ZGfHyL Col?EՇ(5γ4^bwϰ_z_00q[%:|Ήy2C)؉P#!5e8aKTےZdV?!Cr8|ڱt>7օ5.  >9t s]n~<(czEes|˟}x>:øj:SS>hY;Ma{`[˴>QTJ5ߜRiJ5$RD(4-.S@ ɦ=NMll9zϰ|I'٦1o{^ȳNDXѠ| ہ{̺,TZ∾I0T4lxv>+i~ 0Oy`OVKJi^޻20CVPtMCso)APApL@[PJ#ʞy0c&fxpk#cVmv)fjؒTIB@AXѸQ*łqbd.8NTU6[wF=ZN$"xN If ;yv^0Q_M,ˢLJoAѹZXANNq(%INu )k#0Bt2'aiMPފ[ePu Q+=GJmuK4{VcmeDc#s\)MC?=;5VL F'DmL}[O:?{k<O[q ]2D9ƼAO$& *Q*uڛD$wF{eܠ{a޼8D)t)a@@Ԋ@ddT>{֚CAV&BКx2SgaTʽD_s-ny *?ȺvjOzQqIлz2Qr ޣ|\o翋PۂLd,c0l9ށIcEiyJ40NşP'a{B"=EFZ\FEըUQI_NVYhB'D7uh`p߱ {2`2UYhr- JbAƫkX6I=vɄuޒmJn!Ak2鱈!0?@ f546G /:2'~!KԘLg5 Mȏ᷎|zPD_#RHEO5(%V{.ooQNkppx(cPe {c I̜mM.!*C&[$Ņ]j̲$v8%ZI\AbgW/|PZ-RY̟$z~KƼa!n;xQgfYHt0f@2g cE;)b8Wsaq?3|H)P P8ugEn+µqTj-b+)4rw,> '\߳mN8=* v&"m$@i>IUN T`$CBx*Xl=E؝jb߰H_c_La]/SDd 'Ķr Ӡ#Xlgn87mB*~0=7_O )mT\؅7Hl  ^I4[nzS^:gͶ\مJ?w ԵTn\I%`W}8Xo#X?[GldB}G$.6MƠSfrw9f/Dv4oC8 U5`I?M *q|g67p7^(&t r忠z*ko} 4BGpBS\;5>S˝ RӈOܳR|Ib2ϳ')M@lՠz٫zZvttgIZ؉^CAG\}j!ۋ5 [UGEp _!mBmPw/ i3؆]f$i7{C~ rTO˵l8Ϊp!~.r 4"X~i4Wṳ;PX5r8% $ٛC { M]:yY0#=XX7m*{H$mcc`N%#MnnswhY7+,xx.eCIo"QCk..Hr k# Ug}P! H./Z*:/d|r5Q69=Cq[$=l1@zq yRMé& MwoTBN$t(ճ<PuW(އCv&'2+og {4:V`B7 {ǸIjǣs' RnL29T` >+rI儹:q䌘O f( ?J'>YO\?\spMa?8=L8=;)swYtY[5ٳ5Xbe1ef=L(Isò``7I*^I*%! .ndz6X q: >U/Jnط L+ u>Z`I?CDcfu7i02# gbC9řMΦ ?)Up7ZZu7aϤ5' uFe,|OX*rd2oKMbbtJ18߹t , r.[UwĩW\ IU%_Pwa!Ew!K|]i*kLmj@}GC9TÅ6C 6לL#uς.X,x|L,a-qqo(ssЛ079d r呏[;.K +{bTHBiকQEgAO8Ԡq ga)Hc#\7*bUndkˉz h2~wjJxe7 y_(bۧBEf5b,'w~eY#n:tA gMUP 0W/9shT]Eub{Ir ;އf~5;JC dL,T{&U2{9ɞ Q p!HJңLVN-(Ye/55xt yG2xL۞j3iq-u+)f"E_@-a+n^x `KdɆapߚA#RwUPÁVH;YHCMĹ7Hߒ-+ͶI&'-^m!hxeWOS:zh'rY0:4Պ}㐙&XӍY[켟27%!oOOwEE^f5+z'j ty=6 (u񁲇ryxx oeTgФTmY{~;|WgzIWfv\ !VI"O>`vZ[k~.FbWimmh1?t~zCM7et!rh7z^Hq(lY=QR%|쾻crQVK6:,ó͝6(miHqFz;ojqu-i=dPo@{iBǃ?|m|l>xĎޚQea=_bӥDޤ᱙+g2J5tX̸bY,QFjS(:WNr c.1T{G, ~2 8$.'r}!Q-a>Y Qy(e%.N+FTօ#2=I*Aӑ/wh Pb|+~r5i,ߎH- FrCTcm+E>NƜ5칻!xp6!TS:w(Hg:Cwq C,ctq] 6ЇjpeʹFO# fnd{?&gxMV>?k!XvPhjݭBCSV\")Q7dc[rLTy!N ;;o{Snwv{fM=`E: 'z]g_u"ai8o.:xjYM;HMҡtov 'P}p ˨"f8GEL7VŽ41'\ϸ4K*o,O aiY31 knfYͥ;Mfiϥzh&U ^<U249@GAGGEP䔓V8 z|8.z-+`VJ|0OϦOǾ .z8u&=C* 8򣵠Iʬ_isѡ*yN+},C,M ^IH \gưx:#i6;_ݎ1+3JUi?y[}~͢w=[OKAsr|v+"`AP.t؅Lv@S3dUU{ 𓔎lwE kC0Zhi& \AÅ.nG#?TvHP6fF>E&F#jC~F)ds/ t_'C!]DSUՊB>,!iˎ0̷mzsZ-Ie/Ρ{l^1kM+!T7쌖X $+p@:48lLHL[{/&2׼tV eu xxԀ@ISM3e霠2TPgGa:zTTiJe^zׇۦL.[F'] P" #pFع@cmUr)ak"T)lU{Ad2AcEFbs:%Lg">aTodsTa/b:6?wg },݆xjĮfػ`IK*|H~QCJZ ?._3H9|Bce۠jmK2(iImޫy !]asȰ `"OId8DžHe"=azu} !;i4,>s :Yu9ݮEtSHyЉeL?ĉ@xhz$o嶈 ?U0BZ!*Y$6k 8h@H'Q/dNñ򘁪D/d@q)'R@I@\QA,Vih|.=AẽQFV֙X]Iߒc2=,K=2$Gr=Uh+|yй/S M),v#,,7G<5Xs_vG*P3 |2T cͦZ_`_W@Prַ%ҬBidd( kj>(-RP(1Pvf'éX{$cCN1NJzLƇ ҾjIapmˬ9W&$I*CrȷK?U4pyG15|qʹ'5e/7LdE,`"~dm'/MT>dƍ\z)ыF tHHc ȋtucОxo t; #ReǼBb _dn]&5}E ́u<鷐5 x|MSNegTT"bKL `IJM)!^?ǡRl…_4Ai43s{KT2:yA ; c0$܊dT0^ﰏ'i.nMAB!|.[zNmiIsh+'ƨW~ސ"WBI% _pVI}jC$a̒=D&-v|v 7SY5 =H%''?EbI!wUFGZ'iɹ}K}},y(1WL}z)WnΏ'~k`+C08fR΅a"5 nC *ZMw~'S[o/UA6 IӞΖS@^+eJP@g[P%D74 wNUJ#RG Nz2RUeڻW<ljSCQ1 : 2$P5~+ʫr1aq  GO5Yjv3̴ɦ \-+wC~y V"51վdTsAI<6{ MS4e7 l@ZkP#c10o 4X7pAC{ԃx'ZfkɇK[ڡ0 Do1eN#ezRPg $1.puzgê"HұE{RZ5ѡڔlMH u:"3./ytjPE%I#bGC[թj0>il !Cap_2٠ioG0}7<'UP3Onn,i<Ϻ=)C>h󻕾 ULEAP]Nwi.CH8eړo~V`lE Omn[>ʈ+܆ /9ê] E^ۖ2dU&/ mm}_ćo&J]^iNe0%nGTy^f`t]Qn+^؀1t[ۥȍ@DP̮p`JA;U8Gy9^jx s1T1!T,7!Kc ?y:WDNiȁ(2lⷪVTxH1h(Ǵl* B(co}4ypϷUY P6Գ @(X;~/de d)ZrtACZ:boQP |-i6Ȝʀ1ċf:tW/rMפޏ"ݓɛ-1LP.8' !5wr q&ݕƐPH򻭕ćՁe!4cH@6Rj*dTQֈ?q/Y+!#:Nܦ*˚*oIB3>&(IDfO7(Z4ұU[lumNwLipt7au`H-7ũpKdE]TZ-Ih7ZfM(,bhQVp֘iҀq0/^vNI/a&Z\_[ Dns^HʈE=y'.3DZ=@ #E^T/1Qv9LxUZMG-ҢcX$8!h7$PpBBi]Փ--%g?M~-F2/@g0ج|za;*#$C @Z_AK#*8LB<a uPma,qR}Bp tKӖ 1v VjqMkVtflRLE'ݮm#RDHSDf܀[qx>S.&mQu.me@hJ*JuL t@yhfRv@W"m<">#ZآmϦKϱyU$*$/L_VG{̭T03%E?(1Y)1)]ꃎ ?(mK' kI! ͺ}89@ ?I'8O~FY-7ce`}`r(i@*֟D?0WOeJr?7FF=sfwk'FE ŞRTE?,v\jӕ̹įUymvSr꽸vdyBOit3;! P_9J#u6o@Lv0Wa.x@7BPيu|]KtwA)! XRRQ&r4 Ǒ ڰj^ N@eLPU}o8%_[ kgr9k"-rIͶ-`igy̠ƕf5XO̎S({-FAtU36*2wl$ebE܃ Űl,a{Wk&h\8I #pq?IE~$s~ThkEfp8mGWo摵y3~dGN c %NR \Iq$WHHJIZmv̰w[f]H&h+TlU&xT&⡹3 mc߱5%YgUg?Pm?&?LGE X3ۂI1Mn_>~ Ꭾ Tb ZKzQ/ zhѺ69zO%=6 # Ll-\|hbfbոzejE/1?qW=/-~볲?S޻G)u4pp@X2NYyFaTd3q/g 8D _JqgKPg-aDH)?5<>cg@uBF*Rż灰(8 QBϱARw< M1m|k z\I#>3*)i 4,H qke]“4)Qm[&Wme`cuE@$:_@mMU|I^L@X(Xqw!] #5 ^Pȳ/Z$`ǒ`tP}&3tDD[sKvA5g4Of8Z| }'N #KΊ5 wH[R]'}e? .z7p&)t%(KEV, y]5"h ~ a an,@"&}(=ZUuG:5k`H^AWߵvoؼJDcFBZ 01IEZ@ -sPm[ &J$yEf>I&7tX%qqFyNSX.)D)jfOSU4@I[ #}l*J'T/PD?Ǘe& !eB3|c_{=jg҃PLfA`v ͷ3T`,a/V(%ty)>YA)+PwzHj߭K2c) 9 (u8Vy%j+lߠm4* {˪Z-o%X*[;. 6>gILCvBX룿t_5 Z[^ւĀw~>F G-k{s!SiHЃ![ﰕǙx=0֐@磮튫 SBJ2۬3uwVxEW+ۖPY|rL]M>ub\;b^(HygrV@c(>QrIvnyKv^~/\W7}tKWVϴI7# yd,ɡ,y`\ۖ9ϰB) !{GzCdʀV Gq(DA(UD^f&k~+۞$+I/Cu{6j 7kԬsnL &}\0B&bv7wsUQc!?Jk˶6Z=3 hAk%xpO4YUx;bfO$OS/i"=J$䂾GSyIf' 5?V](T{Zj~!tbV<o3,@;Af8}=e Wzrk*wx\ 'r lP lz|ev+uC+.cWlIHKCE"$D.FJh .e&c]5wǧτt $h0n2b#VIY u \)qBiMø]b9^wrGQ3cx>z>RIٷe<~`W1`;3#5T75ڜyF]02@&`U0b/Z z'4i7&,V!X;AZZ7ΐ!-9ҥ%%OI/5uyZ]BYxKF [y;U_>-tp<+Uam\J[jf++{z@bϤJ|h78P% ܼ;I>-bw^(}yZC!!@~cUa5Z?Za1{.#C&#y^f],H%m9w ⃈͜|E`w}rvLԔ[rAt!Y.t3bELS}ЛE&be碮(jU_R4c=;K!l;FL>E- d=Yް! MpLn&Tx ưiFp3([ &-xijb{+B nK+ OL RM ӓqJ;蹓w_zΐy,oYx"lqc?/vVJ΅5hc|r\VqّwANY=65UQeAv ~X؜8r'_ ؒC(dAº' +`|u <6ʲ\I){H;Ќtb|ܙngӛx8f13`g7Wx/O,}?u{-VPlT o⻷{doݎr,56.u(׆+s{0y/\ajQ<]B8~0JίC n-Kv'yH%@K⻄̮f0$ܿ72M4 rL k·9i`S[Or2N;2]Thrk)-!з10F &Oee{KM$t7ϐHw3=,fm1W-1%3#/Sڊ}SܷeY*#*]^gh0aI ȍz-Us2<G] #є%,T Wo2\Qw#"}>UEb)3-zYP}s ʱJn/p81%l7 @K|7da sΡl,LWU3$hEygT5:bNNųߢy#d.̇ jm;c*UƢ MdY ,3tX(Dt7`)](,Vto[ĻSΣBAqf-#̎[qc $-.i8A)i2~.;i89*[W5@\DаnJUUR&ՎmĿw&@锖* gSu)%JIX ZCzEMR =y`|Dd_^}a* edZ9t> kDXA&[oCLz Caf5;`R<؞͖y V Z؄ f>:dkz'- SB" چ]Df@g}c-sfblL\XDVٖ"lp\yeU `X!{:@j(=A"< [!h;M8d5uz9pSl{׺F^;_K ]Tͭgy{=\(rqn@HSuzŝGŚ[Hw"Jyt.jFN@O׎T_ʴötI[#畕#EK4"4l=x$4~CXMؙ\-2SbW1ĕ%R ),zr)3\\Zlֵh*7Hk8 _Qun9:od;Nk ã_Иgk 3,}q %iՁV6N#I~"pf64Rt! ^D/s*iZ*Mݢnhh:~y0pӍ}'}COdѺ`vENg 7up҈kBBgq\ay:^ nLkJphhğn%mѱ\hcYmS zn#z.&~QmZ*DYaҲ5aVxk'H֑BnaA#ڄ5UwL=7x`Ltv"}Z>4;ȷ\FH<!ʻCJV8O*#T(ii Z6w@ &w*ؚ $ Rjp+hy^QK-d޾袴fnCenTԄϿ6;"QFLvXg+1y~aZd\j,eSm#WPc 9c_i-1/9Sx8䊻'4-BLyJYQSn rb]>L9_m]B]}bK-ecg1D-!c=@3l*?6b* ݘf%P晏#&5+eF٭i>k\R:Qұ.tݦP(^Z:H!~sMN^9{&$>-f$yƅ1 |SEQE/m߳f ܧ%u;`ueti{=PV'NmYy:Je ^E[Jj1UF|x5]uNU'"՘6 l C9d-fqhp`1W7f֮j0ʐxع٣+sVȩnw ,Ѓ)[xhX쩒Lp( G4EfE=,Egˮc:Z]nDwX#LB#W#%GO'(S䰙}TvmƯYLю89|ȭU Md6gT4Vrʵv3,w UX^(]U5>g]xX.ǕoHz@uXQןjAiqbFH͏{b[A`hzIvZP"ʧ)σ JM[z 8]C)':-{ jوM̅7xVA=hL3!ЛqxRXQEn ؇({TtGg`$m"AT)y[g!ڮ@0ҡ{Iۣtslz(.\WCm4G5,P|ˆcX v-Z:<ұm>H|Ai֋Y tdb ";_R\k^Wri:?u^N"տ2Up;in .nɐNj`!ROے𘕳89_jI+Dpd0Ԅ庸%M"[QC'7ɋ!>/ԃQ*t$1o`/'i?.vKː#dՉ" up&9${-yT.-gb|m{%ykC<]2y(8GfJ[w_ F (д PxY~>J.hpv!~WgnׄL|ŠBE:\$ qr wT {|!Y{*}YI{~Yl2xD^`k=莇SXh%>~s/,q5''@,&^/6 ̕Tl?&6SmGO 1N0݆ρ>@P,CQ/ݒD?/ʤ 9V*5pm4x؝Qxq)pKY7ĞԽfIwwyvvҧoMQD@h|ϰX4 xan yu'*,%)¢( *00 Ucǽ7HkzC&/0[y(Ocab9wƸk (7 [{2IsxڈkàPR7,Li8HV]:[YK #yHyB9.\#ίihc]([Llzl^Avb n<`1v( I?VG|R7; L+Б?ZzOXKQ,ߡj `ޘn*B@xxBڌ2ĕГ.O8(hO?c˂ Բ"5KI-ҕW%zK;Gi]ŕUPW3۴4%:oTX͒ %A>"6#IհEz܋Y :$ȷu7n! Lrߔa{(}D  b{5+jWX 8Ty-E)%4i75i֜zQ6cQrֵ:aN i1j.Us, GNʶH93)/T6I6jmpbgP#[ 2%zb+kvReRɨ۔ )>Ֆ^ݻ>F8?zh;`=[e87I6^:8ΜS(u̵AƑ<*$gf I,Qh@mW[m߿3C]yk~\0czӼ^iLh> ך7z`wV`,`atPd(RUy~оXUMD̨\>qks x$Òȼy4|`^'utlgb_T^crxr~iLwk?veٻ'La!U"A>Ѡ'2D'J9 $*H. gE(,V><]2;bp`uvH4HL 1[i(OҬ4/uBt2q)AVV85/E;(| F@|xbH%掩W bˇ8Cs3B[An滐u.A߫ oo\ d~S_Hކd$#Q݊|wy[(=BjqeHRXu8C/Rf"Źi]?fȈxG艆<;eYن ͈2 uLIsS7?uQF k&9x_<5PHސ|\=ڷح'_ y0=t#]iٞ.%bor߷,Xle ''Co=>tGCХՕAQҔ\r[3⡙R@xQ5է%-ڧCݷUJ.fy:EBIjZVp4p!tNGai[>l%L4 h=wm7= yGtp&t؞p= !$R%[:SIDG UoE(1݂vRh,E3謕QV ^PJ'I-?X ȫֱmuzI91cO3hq{%6ZUU$rq8i_\4!~ ' \pJL"BcoZC#'X'< n.&~Jb%gUe:;{i e];3A yHw.J,.G6"AQr2Wc!`Z<љi|rx J/CPj1M]hߩz?F;$ؿHk8g1ITS"rj D$Xgm>k0߷E9+ cS1pPa$1LճG8^%{MH10F>n g#N#Ij(SSN_Ih :Ɗ-e"|2{Wx]ٚ pӑڕ'FbIqW2L\z2 fJ z}i9ud"X];yd||+Cf\7XaM5yN0̠k)l3x@x"5R^̣&M2k"~+џ@ʀRk \ YM'awlcVV6xZt vtt|{۝JݶlYZ?2P Y>;a;-l34F'2ƶwܭx*XEk8[ЩJ!w) -سJAwqWy_M f`A(-ޅyr'}X+~>8}$PgtkB j]Ds;pL.E.I%Yg\X, ޒfՅRiG_ & /!ֱ=#:NyQLvʍ;tY@fmOJpqKadlHFO\吿p̌\^q{=@7"?d1 >%#D.(DSqXRN-_nːXc./ԉl؋ 00-]acҟH-<jŜly#Bhf >X8#Sc&Y(z8Pvwiy(;Vg` /kF=cX.C=@3y9n/h(fht~=<#9-fѹolH$ӭe($ďюL7_ HpnҟA'8NДf v_,C(CqR1C(v ;`b{u>f"AD\ FeqLz;T3c%3F_'9$;\< #t~+6}ƫܺ~ jo8 s6,GO2` ǩv~)ڢۓ<[mL$@oOȼ8l9E"3q|nKmQ@U&uiYUXض1ڧ3X[x g jOIؐ; ={G8nS㽧E5vɤL݊Y`9oZ%T]uF6_i'4WzJ$BBܠ#ϯa Q^p)jys(;h>>{@ef=[`\˄OֵwS;%nGH dXi>}%tr$x,mEak^:z&4ҝ4~ DAg5'/IMAj惷1bJ ^|jAcܴqnڮz$Yf8D4iLJ6iRG#CrVy8츐5+ eNqpzܥY)-$71`*A%}NqX#.;, Ae;^a5O^.pP}}_ T 2Ajn X /6]usQ&Laq u܅z.9'#Ox` M,fQ]lK$hffzZN{I+UĘp1yR\ӝdBg fRc0qtMtf$04q|p,J`[&= `~?9—dݻg'Û=$'^鰊#c}c0yݖg'gi3 C POVd?D,IˏUXGc644d30/q3;灻Nٽ`PjEʻx-'6(NNܓ@+ޮÈ?jp],UF#LjǷ*ǗZhWDNO76*\8mQ=7OG'v*ykhHoߧA xҗQ[kY3B#`5{;&>RJz~W{|c3h '+_@w̰͏>k\& 8&waҭhr`3i zZZި;Yz} Ԭz9PdPv C/_FdžWZ;!U LF !CPJ_`^4j3 a u/Z t0|"!aj#)Ckne_* r|bRۜd4pFN f }IhZ @d"J .{b1ȋs/}Gt|-.!<}ĝ*@=\V*H4d/LerI-+~B_.pG*?9]j+$ J2ڬ+C ;/v{%["hTbwQ2ĸ-GV 8: wق4~M_{)xH,q6ѰA3s!XMG3zst:}2!8H j晲4ޚQ< WrԄtbkpc.  2a/w r-ݰC>ҽRe*崅]m-io&E\xZ2d5r+ݨԣh 3mtQ4ugK^#Df卙zd 8w2Zټ(^z~3O~/.'go3 | &AHw崪VMS3[wj3b=u)G+iewk[]vgag',y@iJO͗~,nmc;];Jvk*[squpŒ V oa$D9LojDn"m>ULiUӲ~h"0?G$&DlG =COR|X3ZMōE ZBv+gCdEc1zOFI{p"u<]s,|9"SP5lq0IN@t'b%ՅR\Y;_Z]Z?!dHfa^$_o@Y(R YQ%[Zrh.~h^$?loS5x'p2 + 9/iGdgϺԁIdO'D`&cd^2;py@&Z=0;c#RnRG|;Ր/1*s(>6c1U"bNqƲ #i[Bg [^*\??2ܿnrᾠ u>?;p7nvFwB~(%,kEs,CNΖZa{OLa*I,ؿ+u=׍9QˆDm<c =>M\ RmZ4 CaK#ƼoBsUKo]9YF1{n삚-N}o*}w)4n[kq\6ç89}l7nWk.ܡ=^fX E#s X,_TԴRTKIqw;R3G,Lf)7+ ,Nc# ;0aj%@ΌR8$ՕRZ ٝ/S-"KO#]#*1Cnz2zfpev4zfX` u!3Dg4 (w37CH>D/ۤ[>E6-ײJ6E}J5C F/V w9fZN>?Ӏӎ"RWKǒU1;hڑ86s}Ǔq' ne9\J AJn/(9ϻS@H#Lt<N70a˵b"$~ nP[589mr N\HtxF³!d.Fj|XEϟ]gerxdIզ)`L]Z%/ YZ`޸fh*-TJW{}hQCmkZ䈞ozRSsf Ҩx|t2P6Aq[}+[;lYe?Fư/!B[76PW|pD/%XW H N -t-- ZmudN\djPfaH}ZD}%&yINwPzy!(>d*{]$kHnT+ nQFVd5FB m}rEݪwQ hL_2cp0м مǢ~ /`}! ҥjdIЄa ʯa Du=R`S Uٕ@Wޠaw jy#A'ڥ,sSxBaYκ MǾ3ciW-w ]5!]}+̑}fBytp9͝%O*1`@OE+&j+r~pBW3)(vjg g_AZw=~ðuXMW]v0*.s {i`7(:]!ITpt'arkЋ5DʒЗx:-qfUЉL}5_R(Z-c`4#i$Պ72)o_}H:OD],!^Wpp:&&P3^*O%b_-  ϖbB&:=i@1B+#\Fs`amT{s߄mS{ЁyRUQϼI,] V:C\8UM (+MM<сN91(O If[UcXiKT%ُ4FɯI!)a%;g*fAlɱ2.MOuXdn:0KEX:"q< σ^IXZv:硡WkIixQJiasLk 7bqHo|P"w|}5hrT gT$GӠ64w!^ SQ$"TSz^̥Z֡ dZ %4z(eEK''[d ߆uj=߫LP$f3oΊVF%y6eQmB_WTUɌ:4ؗ"Υ] 1i%y\ n2`*9Z'*n%NBj=̝~lM9"*~RVi[qq=JA {{; )-mdE OW@NjIYr&>!6/w6i^ttszޏluKEx-U G K;H,elPS1[DvְVs,+HWk+"rC RD?u_JʀJ`DZRAO9;sUԼ AgnCXm<=*d(WPQ };2RtS³K ,s }~Uްе1|ҡU5j^Wpqٺ,fxU^(h@68y€Ff-H.:YGRǻ%@uIldYB';(sPۋHјX%zBHSuV1n R[JD },!7UVR/:@YfcutÇ|%]† VsK,5-K~@jLпCHR0i/ X.GuZp%9Q/>f޳% M[B K1Clfqx 3\5}+"{pX\a| -C١HBO&]s4PoܬYJܞGql;δ[0+c`cD5$d{,fQ)v;hsO8 o6V= ^N| ]5hhI4J /Br2RE4'/\J$Ʈvj$}4^1jdȢdžLAd}Ņ^r E0W*i_dsRjܲKHżCtŭ{\$ EAdni_5!r6Tbv|aĎ=" Wn/+:R8K AG[%̫,; ?gW5Kyj$-\Zszx^dT̛`7INE'. ;SPL Fww6ۅkBaG&ad&mNt(0ޥ}򩄿C$uk98O{kvq$ \h2N6 ؙ P{nUQ.`Prh ܎-eljzezhxuǒ^9U{&k&/RcRfgtĚ-]?ng؅#Hg{ȼ!sprd[o7qH0oڙA`9(AvG$}Tku/J'Vr~0߿&Β"]21T m'pRώw*i0r9ZiQ3] K u+3a^r q3JpA~"J8a9K<88ת9iPKg3V PkbCB}7"1aϬ|:rNbVH|v$8-roAv ȕyp!6mIM6OaZ([ +Zn0B`UƐ!cf  {*N`;= E] r2o+ŃsXvx \'}lq{$?Y6.Wك]0ዛQZ5ȊgjOW4jކgO08USc|^le 0 +@c VhqPp]4 uPJ4A_6*+y:k&8gD=3yNhb0LQly%I@ gnl)VsJѯxBo`GAڑp|^@KwC 64t)Zͬ(cjU}Љ?7&{3%+8P]vgkfLO]^BnxůޏG9bE$+쐵28*@ 9kt&H,J4V.t&İ7}c=ou{wGf: 5%궫 ͊~3`k{NahU8N_ts <o%slw9M6yUq᥷Z~ DjZ>;:}j_GrePgLQ "e1fH@byΏ ^~Щ'&*`$궷&jqRaMކ4ߑuJo@E&A|ȄM??XElT*P\AC@AeF?pņ>k+]S$l+UJX$^s"cq HXzSm 97ޣxT,Pc4н\XC%u1 "JݻoK~UAoFFC$t7; x1rV.7;0*C&_ XhcT锢r @m/A"Ay&:3Җsu&gV;=im'O^HnAa$.bT 3roӗvޤc)>ʪ,!ڀ:.ꍻl7Od we@#Rk 9 >Yj9Wvx9~n9^H6 QYeD6siIJGq5 ę{A6#)p=t]l@й™SJ]LSQF.B 8XMd'.X^q_@7gs=꽏ĂKǦŬ; Mi=,m--q$sҲ!G)` ^X5gCxy Հ?`gJML!r ~#bpot l:A_Ii#]:nX*7|;=F<%4P)|PmOy*EG}LVBd7kH '1;@@S\(FRGԊSA>}MhhJ†pGG)/!v- =I19R-L_' #1ktW'O@jҴgL N? b# J<lT"UW+d,/zL yG*tٖj 9n rSC4񇇜MYbu?㠇vcX$mC8SI+|s;=8]fKGdvwCq %@K{T4'ʷɔbu#µ$QDD%#tp|a2( Qϴ5V0>kshI5Kcf]d=U3 Ҁ e_ytƩ㔚+ŖG>*C&M3WmIDId~lz[qT@?[׃|^KK;L*9S@0P 2FHHv8؝.aAѴc Nd`WlL{xWVϑ{K8UeR ƵP|kÛsJL6X&Sٰk>V{!ԉ ?kb1+͛2w-DoR{I?:6rE-p2 Jԙ<^ RZ j^`46>UV/-+?˭mtRn/owGK*p*kJW'."K6@†)`bv\=>eEGY `P;4:TT}۽'QˬWOp2>yU%= <U"3-ۘc$69x 7p@ն^Z7\%t~j?{Qppw8Aph 4X"쪵X`a.6uBw]ĚS= ؆,$'٭%5c߷& 8u,T_RG2 Trb0W bIP ymsФJ4F\zJ/>i`;͆D6 I1hJŕ!Ik׆ڗzS$ !\9ɘ$6a16P~ڇ*@&ųKͰh艃t[ 4e!=GH6^zΐV>1q?[僮xT4 (4I.m#CZH [{HF[̥efͺU-M5ˍ R&=^ҮyYބ>S^gQ1or]eWvjٲmlrAH,2^m v5<OjW=Ŏ?uH;ջfvkՒ.a5*y0ɢ= k`̮p(WV[~?Ӻl.1{Dre~^86؃9φZ:()ԧiZ:yoED1 %H"&1B=a!T)qx2u:߸(ȟwKHsb;:|*rFqg3܅ *2)YF r^ȸAD򒘌QN^/#`0+5|38F~#v!K쳆lU)H+WuOdC׮|G&>ϑZhBR5؅;]2%" 8)}fcG-@;v1?GW<UXsu!.p`5OF.6DJȕ17S?rٿPfYl(XY39JEb=%Ͱt"ݭ)djӃ*08jdHO״q^GA:XJ?.uCx&dȣ$"DK،4}1Zv+˦ 0)c< 1jZm-ዾa1zh6(ybvm1$2>CJ;yC8ajzKu|^*O/wh9H yQ eLY Xnog[J73S/f~N"p 70[MeFXcF6Ga[)m8am'3SSH P.!ka5%?&&Q."HPxW4Y6fOF.ȰmM:> ~b?d(cLLn\nn+Ӭ{~l2"J?@.'Q yu@/hHJ\84y@o)لVDH,~Yu}N|Iή9$:6%j*j:6ZNN[:VVKG|GQZs&P4>)Q] COϿht<][–q LP9Njj6BL~0"@eڊo/썝Eѷc6x 踴7Q s˝ :QZz9W'}ÏU:+[K-bu:))KW[Hmq|P}7{XƊڪ 0Iqu`eB@hsow#Q#/nQoDnMNS]vnzʗ\ɧAU(jd7غR˖M@萈ڎuE? h?&(?c~}zI|gcet1}x6ߕ.1O *?s8`roJ:J="NMcŞ.t.ܠ"i\ 8*𤀿v:Ukz?|krmK"rgRg3+|'q"|- R6s->rځ&u y˅)7be>E.atZqcoW[Q;;BU {aQzEdڌ,,OW*iq_#XBscS8Rk/) 5<.nɃ ׬`΋jnE%/nx1T\ ttj4="G3#Gq9\MiwO9x+reV P\gIåG2dz,Ke2#6?ۿ vji˕ӄOÊ7ҾP8qqϮ". d g>gv3Į 浠u#{Y _4-ʲnpT"E+VMl;7bITzZr<]*>Ѧ;;誟ڸn* |)V(m֐V!w3_,1Rg!wH\BJx,kČQ 3>%?[yw@ ow"3hz8'nyz$ #bL? Wޮ3l:=FQQ#ǜ Ե]E&jZRyZyI:J4aІ!ƒ) gGɪJyCoMp,|KSh742V(5E#|Gc{Ww \࡝ 4PMQ\?懛5d¦s X w`{ fUAzr₍/W-KkkNBI[mvaRFH }wsg.G;XQQ ,ma_O0;kq*`$pHcyk!B}C_*m2)0/4S'i&uȨY:`n.  xNSjٿ T !(z1:Vq(T؇[|U@d7Ո [dK(.SaMRD`-`(*ԅt*'jHd-©g_NJ7qg, ;2^3;8G6ǽ̂;PV^Zf* Y0@s5nkiuYHaT-Yᑢ;CWryCp+BGC./58WʗĆ'W#o=Q.&@bIwBE2e*c/|X//N3($&! Ju֨iB@#xY 2cq'BiJeWtTLQvGvA_c֢۴k $50w{ڙF<7: 9H֐=}2ghb,Asʁ{(q ȗwjT?Rҭ?~Xh-NN5.zf&* .h>[(!tl!%b(EY2/` %R?ݞ(=2bi|03^8J1'z*mgR+`xQ_*M ^hUMԧoeMpzU :0j9x*u&RA&qF~0x3oWgK1ÌA(TP-pzs{ƲK&6(_>,ny1v}%!tKkaV ]% )\p'٨#cj, hEҍ]kltaN'2 ‰%E;W.?q͗pg$}UAiS#>Qj*hy[i4\*6{!;cWY `Sin&Ǘg_[׊J 緷+wL}' %~8d59[95O$cgBVzK> !G2OH(#%mmʀB<19YgeHr?ȿ[mq0֨Y5XĄQb~u'Mv0)vbVr)+>x_fx3qRJj Ҵy5.ṳtl4Wc [I|)_v7̄d}c쪎 d)f*.nn+r䦩EG[DCZ҈?ۿ᠅c2 QKlv_ZXo {&h1h.f@8Ejc܆!@R'T,#S,nbׯB6 bm/ ܹ@pFh3oͅUA;`_;Ks3:Gg̏XHg0V^Lٴ1p"INɨ@ lKUb:1YȺUHq9WF'=5<ɨ3}B% og`r3u_UgSzU7 1KšowMyxWG*sVle4$Q Ffa6_o^E(p/tnӔol r|hqR[>F2̅I;z ![7gpnҏIt]q.L,GO(n v$bFv[Icun5ԧȃVXA:޵+:o;H _@9WԭcWa(DnZ39 c;Bj F=9令 9C^W=OKvqS՝J|jb+ڳ8Ri )XߥW:ĜU.Qv+ƖN~C9:|ja0CRэDw+5H{/_?5 ϫ/Vt4iFfr]`7r7лE`)Ws-N\󎙸ҕYru szѩ#X!E:ufqaא=^[$7u e@ 7E4kT,Ō{YJ/8ʉƜIǬWڤljR":Da݋z%p2F7?w!:8wZĬb.QE|^ ,ъ\wČbWxӝx;Pj*(BI[e>$*'=nwv7b0ߦ: 6* bMcIJ6Ӌ\VfB{wZj@`<Ӣh(u8mL~$l{V` :8#n|Ea͙7]/-ٸK-v&3G/˹Σϫ!O uKF;z+q5/)rO_9( O@_*gIS0 qis$(=HK#"#^&jc؅R|;p;_l[:95~ (3|v%u8 %-|Mﱄ8x۸ՇH!eL槯݌5A|g͡SGl!p иi 6ɽ9eNqg6HLZ`ܯTË/+K7]dbiLMd"z;u`Z0?D &D_`o~aTJ?ChKf^$ɜ=4R\fW#Uvo Cf44@D|b]ȉLq*>t^\;fs)@Ŗ\rۛ#.ʞ E1lYg"$=.ZO МE`to_DDn}iQ54", '[fyr?Ak ڱ- LKK[wF$Y1>đfkdXUHjm,NO?@m!, Imqv.`M=\JF˳N~_K,ϋ٭h*MZKxmgL|o&WYr_]yKldϧZY@&A :3M[T^H=1mOÑ{2dU;fB:؁a(˜huZ!:l:Ub勻qQ0;ɝ2XC3s-YO-s~ ܽw"]Vl=ٝLBFae1i W 'ڃ#t-h@4ڷ~W9,(I4;NYT h:]bۘf^'Vk(51}"LWUti^D (ֱ).ry.d?Á 1\W5DZm껯9pG s*/bӐ {]S0 .B_|PcYZS71qaGFTBa M^S"3Kl%cJMLDq'17OeWy;AAUq~dJρJ>*vxpR%]IGs"ϱOQe!=B6VhK`<Bsw;;Ip/_T5'5n G)Ԟ=vgm@zl( %:&䎞M7ׁAیWe2AR\}رѕt$%i4rJ1z1U.˯pp*%+÷"!TR"B %w ZPCJJZkC~ hvH(# ߇$ _-σ}yK}R?W*W Ψqi|c!Ji=Lvkע*zܔ >wXeqc7Fv i0"yj< /zDwJO_3[@!GD~C=t?mg.|08Krx&69C*.P5Z/U2`ҪQ07opxZ> l56A|9u1@iK+$g42_.mdS)i+ͼxW*cC/]#|5Ĩtn06bq%}̕@C>(28c*k yIOSJ|h(l"u;pZlI NKe-\j'L_`!2g?:꼡k[8Gd舱)*|'HLN8ޜQ}G#u1(B'&.,R#n<`1QKlFlETwf$k|peB*!# IjaibW׿''I!c|j[#hx ^>t8YWSw/DW+F@1|h BUqa[EQd/y$wTq W!n*o4*zGAEw 0 ʶ. ڣj);Z(l8Yw+5% D/6uy,IޒUrz5*-D@ ?͗J'`~&. MIR9]x\{N w2b{@8if-mij۶kIwgIIޑ^@WcdF\I/)3$Ol)FY( 2헴r:OMέ" 8nTEv֦^jZAQ߂ƛyah>D fjtDw}NGdFl |,tPVtlnV{B^9!0$=x͗ A{c]t&;:t]ߴPhu(\c&q*NHFuc_3>lzᴱʕvL&Ɂ΋PF3a8W^:i֜Bf(9~ҘB˥TJ59A}1\wFL]wfSa(6c+# ~Loc$e i/&~eg;<ِ[.m{]R3!jufr9?h-s)y7(4'*En58VzWoʝ1"C'C%Qzbmx&vnm1@"e\,CQY^HrŘ|e𤷬 "ƕ햌>idM%$롐FmywBDiގޅȄ7 0yK{"bs6uǽWt;k|YuW @AM~?@_G[@HCrXLwW EĥQC7Xq|Z #G"蟖xgУ/ڡI-q1 ([ ݅]q|Hӽz@)oUdK93Byn9J:Z -$қuy*&j .~,)[.yw <@j=O.SԳ0ƾJ4lr-C3.0V'cZ Q՛WM7SJ8;)h^0cl+?͝BБ2̜vT"Ǎ{TDg| 46kj[R~1%/OOm[d#FO]V=ݒ<@(2X' 5|5dׁ[xTLCTQ-uB2*iZ`=jwsjL$v~g/fcKbk;}o 5f L0oX4H6$D:Π!?+U %K(Y-̄~ȥ`~%r A`}V$z2e!'RF"1;Z#=^ qc\y36_g|v3meqN5,Hx I9Z]= 0d7fKNTB@YL%}y!YW>`'5;1;}3i$OKqkuNk:Kz̋fL[ [^02&wޟ:?F\Ur<-vrQ?;tX<[i{.&! 8V߭9dkn>~@nテf gxL\oDR{)}\~oXv i<7 -QJ/_nr6g),K긔pMǫ{ _` pY+]ԯePiǻ;` "_z|eS5s-=4cg?foÄ9v؇Y$b8!D;w$5ܣH=AAmnGy'!${a@Y`<ޠ]E vf}DDJKl',/q{}7f|:sN dXeTrv6)Zn!ho9 P-m92[U^K[k) ĕ+beV`S?= !b h|5MtR ~4Vi/Ypޣ R׉[:!@E%RF]F\Tl c<4_:q$H(fˑAqS.lR%s!ruxVw(Vf"tb9Gg 0 ʲã%k_.j4ıMep$ػ+:Q,GDJ 1QYqm`LL:^_Xd 8*0W F_䎳W~ /8[FYLCWaHa ;|4I'ج&DT Be3n5;,! p7/G%^Z4Tމj9,fwŢfiMOHLiw X?=0ۮ~IvҬCFa KRE+&+J̛HiPFd^`ՠ ]Ӿ)' ~Z1!8Sl8c~91"%3;]s`Ӂ8\َ*( $.4ZKH B[7 ςRIbClKD+ϊai7n[4K/kz-Tz7:*-mmW'pc! {CYkNŮKѺ-O|A(cAxI-zt` J׻{M/ޏ~{ o+·b*QH(kqT@C-lv0@P'3tgTZlT~eY7Wwz_ri4cU4ͺE#|AJ+5h>?qh:wI( JkDDD;|2Rt*"z11nPX0١{tkln53 8>oPNjqO'8\|M}mRZE`9k2Hx0 ]7}xVS!+ldߨn>",D+csRWt:aIDZYĠ;'eK-YE\֦=՜̟ ]¨dXilI[BJL M/ܹá[ԝCʘ]0Rh.p KqF0Z8G",I9 V /a|lCƱ p'.<6lwVV2B!Qyd{j'ϭooYdU9Diթ'~œ|_פLQURCI76"bz?'sf2MAJTVD0Lf S~}/IqTr G#[>ۺuǮ7KT1F@:ӂHPӈ mJi.b|hBI,FVG!yF迭#zynRSBRdT5g?j^$}aX?*-xy EI1VW?bv$\RF԰ 3KNj6ݫB\88mcd?Z詤2%`ͣ> jAbpK 3=e&a7ch`16, 5Pr=GlUVwCGgpg(v 9< ]٢/{ ڭT*O04`鶌ׇ]a;mDg4Otj<ӢE*J-(M}?[%~- n𔶬+n`ukNhL>t{tNCd2GƇ: MÅjգ!I^(#aNj-$̿^ ~_qEmscB۔{5o]_nQZ a>FyS%B)toyהs^8Qy>! tq},nzT|7jw&n0$l0 ;Vȯnp@ivf 9d)dcTch!$!UuMq)/yM?N'~\꽹K]*O-|p=`q㕶caF'DGS+3wUrۀB ASovI\t!:i9$+~kٱrV pSU哛O[R< gLRdP L]w@mi8kѭᤤ g%rL~N3FώŅW'C'Q0I:jusS[7OGld$D2)zHI -;oO^(ZKX!):ieve7ۻI3MtVJ)J3ZɦI>t}eG\+YƋցvO0Hں3y7#_nhz`";epeII^*|Us^}XSBK+TOS5m&sn.Q!+ù#2sH jrRV)DІ73#"KT~%U\jp. lUc놏_ 7@>6 /&zω\Ki1DXqg1 >i7Qb9gmI`Izronj &r+_8f% ($Bv{K{{Y-@'t}#Elac%.c vNny⼆,8e3JQm+ßRH5I507V ȇ˱RLj/&Hq5v^Y=6꠫>3Zq.VRze߈{O03@cu24s']9|[|ԉx,e{M\#d6"RqrE8dS7/5oj"3\Pup V1/SaDAW|fP,@ƒBȇeM<%Mm~Fu jpM]%,YZ b(OkwlL\3[h LNjEP * KnK?[DP߬{) U6D^Aq6qiUGZ8g%RVp󈽃~t7Drô)qar3F'lTaq$h@tK`*l%p;XB맱с񶬨Nzӹ\h.rc)2˩: ֬rPubȊz\(V+ NBu^gGy{JLl;xZ# _`ө-,p4V@.3,yHNMCeuI:emԁbW6mu}㝡vtrV=UG6h?w(Vh%8a*Sdbo1Ԙ 9V!3,Ї}X߲C]B.TV7;C07l?F+M%G}=eRRa' b4:2yRJ%=u0|2K6{ȅ4+QAl2hm/IFvpT3-O!v"WTn4n!~X76HWonCV=i瘄Up>3Y=n0:wXZ3s,|df;( Fpy-S1OK.Af8G@զ'fv\xMUeN&V/}duІ0!-NT˹Hw;(4wdaI#Q>&Iyղ[G#[>nwNvv*?X1z`DJ`FT3lv v]V|~$0ck~t[TQD#s 8',\y: <|fKg {gsgB' Fb⬶{^ȁ.= =ob:HW@߀Tݏ" $B ?046RBLnQD5 mXs_㲥PVbC︠u}ᡡ1)$nri=Er4E0S_Gg YE+Xx5p t-d~력rrM= 9F(Ny LSѢb / Zʶ њ9<*돒 "r^S{n\㉝ɑ)J뵛b]"uAqx>rCѣu ɘo4I0Ů>fj}V'dHjn#>HLcQI*!pM V,서gQ70L/^H|>l3IX=xċ֙I$Y b].k:OacKo{U輸ZmN%_5Z ?owS&jBgJSm πBAadIUQ*TA!pjΏ~詿H,/!w(K0&&ClgX ?J%Ѳ{dpY%o0Odubb3-mL{#ƶ g4y "{xLn>dCRL̿lmN{S^j;A{[ofXR nsa<Ɣkyyb%~%%Z}&+\ Ў*+9͗ڸV+W\ly13%oPv%3ze /LQΜ`Q?1~;_yՊdR"/I:2@㽫%O媣9*Wz[;fI2IfˆNa{} ÿt,gŖ> KA/eU\˓Jٚ+|UY2LIJ?Oփ!^o Zw&ɯ%a5fB%T]_tb'tѓޒ>J U_ kd`fr v|X%a)=ȯGZ~1|d},KAC\ inj3(EfAmg=QtayM;O[;?\ي1r[ՖuB-YB&Fx^/L}yxc)#.cľcVZlChUce[_YuN?r~`hN%\uyu!lqWB]< ~LtKg <&>JoIjݚ]#VTi;=` SaBޖ,#o1c` z632 zC Yg!C&d"|]lP2: ˮÑm9'޶LmAF2qTd%l/ &%ogA qB_ -.aw|F-TR:I&@kĸ,jQ2p&Eɚ߳٭1;ߧKN2ԝaFuC bp”D깫ۡKnap/]a^@J~4'&?ɓP> ReƢa{Bde&d6Q履\֠Uʼn`Ygrvb;<w̺{ Oa>]_Ea6J}rȳZߴ(l!NȭPRr[2/!Cah_O}USk"+.cDxbZ{vR;ic[2 ްJ3iG6fޡ\WRR.4[V~.yHy8y+9Kh ݞ,j֜[cz]H]takSӻ4tKiD0e}w%vWZvu €' B1 !8d"EhT@Wp yoQ6^2%yi"$YdmZ_;3qmw/į \c h{&-ޔwG B 7Ѕ8܌RK P7 O CP~hT$yF~ {{s fc{"?VG{/h$-#Lѿx[@[>DCS/M%2.<a!2eE`Vq/GT x(\hyl5hhshG|mFR (trpg0 UnRD Fu0_]DÂx1ģEhL*A U%M]&@ظ- >)ŽwMQ$nEA Rbc~L9mKS {y*h '#6:v&fОuǹ;|}/)~jiq鏢J9jN,=̾RvB>4RRnOlU*Qȿx-nMJc*qZ,.hб[debbTKƼ +~<5?Ꮃ/[w_?F7~ј(kc#vXOXDS3D)#~a,:sxENL-IM6chs.({F{=)Nͮz(*E,tFR:9hYo2AIx+oVtF 9mѢr5;mP4"|BI9l8 454b29&zH0N-4IH/RS㱤wX&ͭTnrzuAg:جN#|jaLFL4D1 V#elr~ m_վpTbuA})##Ƚ=6Bkc"[P̲UK.?Uqmd WvHNi/‹SmΨp"J.& SMwoOHBFzi ,eu'fڴ"K[E#{Z8^ANvRf${O֩\g{fRR gy sդĹ{.`@]7,ivkj]^RJG͒c49ָlxtS`PNL'cUپ9H؅M ȁ=,-RK—w$v뉳gvwF~2=ixwTڻjP𺫣;h\]_=r^7Ri,kh~G{~,e?+fgj`/,Z k8I;Ft,&vB$C0Ioe,A&ʳs v[ ̝\3 b׺Ŧ "8_)* `} !O/::5[D"+%t1;)8yH, JV]9@f>UT`Ȭ߆E%Ӽة#gVFOa*RJwo|i8y$fk %)y}Ol&,%4ٯ%dLm& |WštLC Tߊ3 /I2!«ݖ PVzE5yMY&4\kKdE^Ϸd[ +qw\oh҆[ޣzٯfor]T[S<x@Pū-nͲ#s:r;Oy$j"2y@'Jl} g%]L~g Ip.167zW;<̷mIf)@kCQ a_}>Fօƪ{LH`O '։y*[M*h3yꪥ>^v ]ϟ@=l,#ka<7+,d,|$V~1۹p~ y"w [R"DYN+sdlԆ7!96MS%b޲9%F6+ަ=D8'k~&4s1یw+xQZ7j0=ɘݢ5SKZ§̳Fn+\=$zy6{*۝>'Rv 8v32ve?bŤ&3vi DDݮ!-kot*܄9nqSaBa:#Ɦȿ躁x+:۠f[>cC~`W[#1췾e=Bt| Ғbg0.Iƕ\hs40 9'yt{$Q'",) "nz__ ֌.xUxB J&|r]lGvvAxɟ0JxJll7lKց`dtӯhuF]@qAʼn>B=k<~m7kHO'@7?M薸 N7b#;)%GȎ@: 5EI$t³Ԟߓ 9%#}R#BImy0=@q,fy,'L sڎ«?%M/|͉mIH]oL~ZW]K~*Xn2/%xX'̴zXxv[Ne=BSW %~ۦ;%qqr+3?>JUՀ;0nR%|;C-'5&?P@B U)s,w#-w}ctP/8] 5cQ(AɎ+? 9G=ٳrcãv"ʨ`xJMWB"}`921fld"vi Z*&g@810=:c@`&?J.х"&6.a3d=^}9Ee#' Y9':aå35J2_]yBtV;|Vh|OwjÜ^'ƊV1u\ #l8qpNBD/UY®(M=Z߯ <%&^4R jal9>qE%~Vj Me J:OF&gY34Ys8Bm:?SL'5 =KPԦ˗:ٍ]DQY׍]M=d7Â\ljI/n^0w|D;_FYrtn!T.?=&Q YI[#*"H[礷zJhyHSH)^tjs͕^3VX3򆭨wRhۣ^_'()|7Vq*cWBN@8XE_P.Qh`5*dq!dT7#'_Y<'+5Bn8@˙fq< |n=G5@d;.BG8l&"Uu!|kdsXvW0uE=%˯@=6taːqxemG#q{D5)=E6 µ`QN9m 2",Fuqa/>VZr)l+|ndkP˺ckZa?(DSv]ʹI]ޞ`GPV%D.Uo>3'oK]l`-gCɓb raxw\`2iнx|^? tUs.\ʴ'8 rB;yM!}Ϊ޻|;c+oXXr>j^, ,A߉ܛ%O׭rz;2fq(v# 3|W4xJEjJwxKDMæ - uzdz~z}!h+K (H+>1$ eCK~fY-ҟ$yMcT cJ٤58 TvHjKf̉l@`ZIfY_/} o ČQ~Ўis>XV іŃN°J PMOr D{-6zI-gQ:v|xYpPX'K.HPW$Ĺq#ɀbI\< k(#xǣQRi<ٯ1R5i>& ZQ 㴝l ι,$;XӃCVulhDvkLHźI"N]%L,jVm횂/w==@ِ~)iPN< Ŏ^WHX$P; +YTyD$qpIFdY\PeeKV N\LaIl]``aO?ü1s'.+*| Q-|짲i^+j oЕ0}}i==]d@V+6[Td#*4zmT&k#ػ'͍,,di);Yx՚#n%XoˢI \"Q&vxI Nw3jBÀ74*4i{H^{:#tK^ծ DBd$ƉՑ,Zpep P*Ȩb^?"L%9b@S-!_Igť '\R~<k(.Y So(8oamVu$Y|G +31nO|cwY׀ 9i~VZHlj].sl[bZސ ڋRş[Y> `rUK#WEW걀*TAL%&Ɛ?dz9{L&Di)e+PxM^UH&xm#]¡n#b]xJ6f;"K,Wɠ%YrPaI8<AQyP. GڸE6;5Ma߫i$d1qWj/ʼ$jr t\E@uzLŬ?S ?j~qXs1.J +~v/]c{R/ n~'ot]`Bϸ.+mN^rnĴn<)9;RM%_ |n66Oԅql[]R2Z[,7CmKDDl*yE|-)[) _z#(|@lozZș*Nͅ,gFXa27\yȢ~zva#qr İLeGʝCaa$̥Ü<kjO #n w^9/l5gE,iFb1i?;pCe]oddš@?Cti}xi9Ntc$9dg~EF<~Y[䝶[g*a?lH4Ň{SGP+}WZᢴJoSꧾ>6 >h]>o=$^/ۗ4BqIK= XuAe SNխ/!uҢܰ>"2$+7e8^D5Jo:W "E!WøG;6UL}^K>6#o,-x4VRnOUP޷ؼyaSӘTp̛Ƈ@$̓%vmL 0DO2Wъ;sAoΚB0*/_^ɦ?* (Tnc@&Nj̈́H8ΨmJK-%ƾvkd]iN2hj3(ayK^NVnFw)3<Q+^\U$B]CT_vN%)U]QZ#f=@0OVԯ \OzRC S9kp c15<:AX^8luiUa?QSCɌ[CuLd<(^k/\j*cBF,p}fhrrUQ+RM}Ea@D0ܦ"g?)dU$/t =C˩WL^N9uW } 1y'/udd`}9MNIi(`'b8t*w (5#ddlaxo9RG\#-bVmdt09x2>B,4j`_MśyQ/ebmgC}|nI;q r*>/\w1mld:AdQTUxRUchsc(rfGHaxzUpZbD2uM;'Xj&ĂJkWk6 2V}C]4;b~X#U$;<?O svcgYx |+LdjUFGTA|d N,R*6X P#*;׬3TwŴ\$z̜iܛD" oMv7|$7u🷚`qn ,b_\0sMKQ1aUK= LbӢU[J1?7u  Q!Kc.\Ѿ8J㺉.@ܟ80엣sII7KІ \Y>ͤEݤ%,<w.5p>",-bD)E&ïӂV`VBCMݝfNS`7_(qtCl$V![)@joX8rтxiLs^dKL]'q)B`W:4 \.#0 MWj/[~QvnK3})Hڛ&`.p!bC W-ޣǐ*rT=S+HY94۟ௗnǦ2}ofCٍī*Jڧ+p;n`2Ts2Bj0-ÌUt@IIGTuEFPBU ͚b7WfS"ÒM؝\&&޾-O $ "N7J+icQq*1ѽ IզZ-뺅0OKd7Գdqj!fL;U Cǹ{^e7ygaA~HF:_6e"kj] ?ʌ$ۼ}o͙ tWPQ4^^c壝-dhTzKwr5T3:x # ֻ_X\t=3ăׯu;AWcxR{^M>RRduʊ± Dy{qp98l)P(M_"PYĊ/؞o~\il*[tE q!-`O٘6FP2w4њBBLSj$uU#-}ݓyJnߡEOm>nh$`v/-t-LWz=h~m]saT"cʡY{lw#ɩ6 ~'QZiG쒌١Ff1|7QO9=#):B&!)wX~vrDQK\:)1 iӣd6)r.(|C{&>JPUjLo7m"G1!DKJBZ91jepTs:giʗ[LwgzeQV+9XAdq-`GS5eYB} Vv& j;F!+器;\zfC@ OFM]; /r]Ԅ.-y_%p $ 3yU$I=F4:>! '^nΑe h3[ €kԑ$t؆Ċo[bm2܁ B3n} W.e aQXi?zJ[5(ւ7 0-hf;s0Z?T+ 8rc*o^yRÛo{]TN3x+*GUʋxz2iB!iNui7ߩQI(dMs Ipr>Q*GZ*Qv8Nl(OL (7qVSPڏ qJmLt &Vۏgk(q-췫}FkM4@X醊ȥ/BÔ}`*l=p.'r)CyX {Ax3v jBJ~ > IN>hSCvFs~4`S=z5SfMd e17;bK0oEjP 겊pRZ,d%ۛ Ie-?Fِْw\TyŸ/F44@,iOnebba bcBEvV9+qsLN(  ~X%'%{,ULC@~I&饜!^*ySVX=!~Ua+"Õ,nCu!mL7ۧ Zl\NsKTtw=h065׵FK~YˡC\\KWjOџ9vQER`TBKz2oIi<BƦLN|U*cv66%Tis键yhCcL>{x ,7: sy_`9Nη v(&=$9t}ݳ4\I;cݷ&njҴ9z!9#$_39jI < R)N %Ej>^{ƒA{D#V>T~KIxh /Zj !6cߚD0'_j( dV ZGG.ELJq/R k;zUr<'zӏpF_cuLO6_"|)m-=bR@I08SBdD8.1delfEɓƪ.cP)5Cz,">si͏=2Iׇ:: "u-V9OKէ2G lM?sg|Q䦡z} _ )$L[řMەP٭~L]#5Rґ340M`e6h#>wܕh{edKGj{ ri זF s{}׋v_t i5v@j3ɸPDYN?,e#jYmw|X2ˎ2E2_R "%ICs70 {t+U?`|c"6ipW]LIN3IB~*\(*(" >Rۂ9R'S."x"kA֞C/1gR (4+Sԝ5;##>521iQ TV3Vݤ ;s,-逾NDk-=% m{igzy4I4 ,c}fOBΒ-1cā 9Kv&,4׆}i8Y$/YV^7))P?.TJZ7bbߢ;{켭S>.2{x;(`~3^(*{pfݎ1F7%Os'IvmGPa8p䘜o)lLo¬gcw58\GnSJ4*.dHH]@\u94Vh\3z#eeQslބڋ:v||&Z $yT4#[C4r>3l&9DэìwU)dZntZEb`St[m+Q۝0f7o)ׄغ̡fɏ$LPhUe6 zgq.\XkN<LjsӰ0HV " =^杖U${.+b )ԩ-W9ʢc8$k@Ḓw)S3LxZ]wq0=YZֆdxyxe8قg\ 0G tR=esE@kJ1V;.[CR-*}xu "(,|^r Tk̓SwhyNKDRkLQlq4)g$ qL]Ae>f3 K^8V>p.礍80@kUGD #_(Ro2} kw˭q&- lTl0Eȉך%2܅?'|#B:T<_ z|FΞ$ոZ\u|.x "XD"Mb FtC 9 >O0Ww8Z@AwsQ#aCi2 5o\R4, %]޷(xۣtWbOwo&X}7!Ri98I˜!,V/0MT ]Pp'a%걜vj 58 CPSh*rP=Lܴ]ϻ>l>Y(la}z"].qt+fa%izOJf_R?Aĥ'3t.fÝffeUlf\p UnJƅ`vqSeUXqpM?QʆXJJbӼO>XѸ%ęn$CeTz.*~NΔt@Z\&j{拥Xm:zq">_ "?M?VvB:\l^S;7heEGX?2 `YJ|Әsj8NL+A [1cyԽRh'[x~+WY?<{E4ѦJd#/,Gi"/fW%5{-"3 rIx0Krr\GFK^O$Sc#:X2j3Q?Uؼ֗i_''3k/Ӯ|\eB*؁^$!.VͷPw^7]aD|=0J MR. :S{W@&b8AZ8B))ʝ:oZa1:U#j]Kވ6pP F|`:) ܃ CÚu<T$5椞5Bf tm3]fTYC݄ }#oZ -B&Fg ah9֚ijg@[w;AhRo˫kS>_#ne@GWE'`RZeZ-j7}k<9u:fC bɋʰ)ѰlAQTZmssdXoRL/s29_ 0=t}êغM-m;\D&mDK"E=W62Tj|N !qB \T?GO ]- ɮx?keOODۤ\#jm&t0B!Ƌ_Z0SqROlER%ciKPӃ=/jFCIx_*,B "FT8w1A>N,I;kU'!t9"uVo?ϐqS?v|8tcʘ xqɴ&hx.+Q4JB%:eh.Z{ji`Nil(s6Z@TI>9 IJT $:[c:iԊ\{>Q{;IMD5ȟF?N{(fXd)lqurjϯ }b'l U6׽g/Ar?G0̮v.&iп]8FƩ4hT&fz1$__D f#ےsNTVBB~"3N)"˃L3yvzp4'}i$vtu&>,HUY8cנrvJ;Qqgnd:eo;,$-Zӓ;ko+Z> <#-F\x&CvӫmރvI ޳ DiӚR"g/0r/k2.,X1ĕe]Khh1`=jǃs@V3kVA/ԮC%Rt/x-j6?Q-|h5j@!C"09Q3f3DǙZYj$u`Ltt0;KeȄow󜑸, X|B_H8YdSϿ> Q6Wb*)>ne*YO rTSEїfj#$Gyup y9 "|3[tyRD\b_Ia>7@9< SUi,Ca9sU!m,1`0ßh y! ?E"4D#Mdtzvt=ϖc8,># *rQ }wOp2ڃlǓ!h$:nY_ktk#vf،q".?y}ㆇVBv4,_fvR[ ,*$PcBGQgC5NmHe]eIT2L-+&ɯt"iAG1S2IfWđe5g]S @*q9rɏVU5aK͕K$888ZL{抇<7X+' 縺 m` U=ï\k C0,6ߒ%ɞ8 ( q>4%"8h7&:ձ6( ]TΛӋuA sg2:E Y#3Hr, TА o!c3\aR e{ K^pGׯ@1%q@9e H]_RF B(E@1k@ӆ hQEqhey>*[^^7XWT=w0|V_[L^N4VTHU9|>|J&)!h='ȵKQՂ_{A;1\(ApY@(O'Mœ2$zacщ]hy.:RC #T.7 ka߃BϜ='/H!sRhCK3I/vXםX#xNx:(VLu2CU5%}X. ` 0zrA" "BY&"Ř O>c QEr&E)JqY]`&w3 xb6 3$J̎WEIy@כrQsDžH^qHƗ5M\*uJ'9.U v (|݈VةuH:<37|UEO(KK2)Po>dxbƕ~#.חsHI4W yXfD.jр/H5P{oHD>l1tDPDy؊[@T^HyVQ;1$rdw=@3x, ?-Yo~M1u}>q(/)Ei1h@~X^fٜn?JOkS\.ÿ   }3 _`G6*"Ӑ Sscr'XH_P@ E~q4DKbSlo77h.0D#b@N!9 Ҭ]EuCbz%^ED=m߃M9QÓ3`%AQfSkWF/8Tu۝4[[$or߲-ӜAD !)(9H2˶R=м;߭Yҟ/@A6 .j3h2ģ5IoG;_PzK8ڴu2~ˡƿk]YKтNt,z"e5ҒZ/:v)[/,]=O4XOA?At{4n#cVlbn$-b)ڢNdw(< oчBo|tC՘~$,*=2VRj,Wxrq~O-lfѧNeA[4V3%κkBdgIt q]aP6{28s4NIdZ [kZUuI u瘓J 슓zSVI ta|B#kݕ6(յ @nd: ʎBT؛uOo@"yE޴jg# T^zyn-X_p^A b<3mˍWOgTK 3` W"H%'60nU@v +ҫd@H%Vm '^D_2ԆEIX].׻¡ VQ+KO> *Z[ Mmf6GÄx7˒?F=+ DЈ$IVs2N]"uG2Yly>jGwy&q =[]~0w#&+@%0eu9""W\h7\ !iA;86#,%^|c g5]Mg$yuoJ"7x^rʘ18kw,B8x찚W"ݞغ[(a6go||~d*xǛү,%mOzh.R{RwYD>n 4{$DCa/ی+G2'ߕV}☯Ŗ~%Y¾$\hV=o]GfH꺷 pX%K txƪƇ /Qc[s $NÁ#ܝXRBwN&UhAN*w6f#bnH6lR+It7?T E uK__ T$|d;:ra~)!/dDhb,XK5Տ{ACԲ4#tER}1TN5/g`'A "4yU% pqeAUųKxZq?/n&,ZZ0X` 3v&NcJBu,^M/T{.Hby lY9jo8+ T.{1u94L+ai'4[7TL|ql^J:sc(CcBުPo{ЄB2qIt-/kU^%b*RER| ~Ėt*}]A![_慵Y?Q21>Pw5fcʧr(!>(D6zgy rLo0=C?ԪS-RR6P׳/op "c>%)F/!&+DKE0G" 3Vy@*nPLC$|c}H"1&+&wf#ֺT<v2$7P=مVyB1$$C]s0X[=_e?LTqށsߗQAs&|S+>/~CՠQ` bPN6Fxn ]rƮ /’'nn @BOFGۥyJ @R Wi B%S`c.#3aaŦ3\~R DǣR2EVzT;ׁr0t9"E0tb 1g}k$mH: <LP`g6Q<>D@xM!i>1,?lyy3w~M1+F&rGkJOZ"{|xjQs{=AdűE*Wkt*{85`#gD: 6/M|Ϣz{ Dvovb#n&AVitRrkGi^&#ÁgMV|DiD}@#V}*$d1_'aGz!c/ط>'`&HF hj,K[Vh^ uAq y[  7u;m#XOMpMQ冗#Vx``.񉳓, f,.4|b17UXm~C8BM I0U^U94WU\ O$ 2sb~*tMP2+~7WltFϗ"O#$)ͷ򱶐nx[epu@ yU `{]#zUzAP $!ww0C dYM']p|e#Pqg_`,$'Q\cTcSSiOt|6%z]|i1 MG}ZzHy{qwŦÊk:pDp5x^qfTtP@L<A8ZAEk vxz5k^_pҒ^nꃯ5BtXЙPp(S0CҕZxՎ@|%Afп+$!-m*__,]iѕ8lHކZ:?2/Gdۤrg\I[]J݆`<拏\?gG/F.%DB2'|·<`?Ձ[eCNamC.0EmK}8ߤYKP{  *Q=(/ [m)rT$AkL D;0(bt?ڠLFLT+i1CO~],^dCAuzl{}WÛ]/Fjm3ٔDu?KNV(" ƕ2])\i9 sjSWQo{[.PKF#Qd]hJ16NAGMBFֿB4ջC%-S -qXK*\5肆*j31E.]vX;J_gOUk˾KvA@l9^C[?U9g+M`h,hQK+(Q8e0!BrKgFu=)|OKb*֋<%ëGyFʊg;BC7 s6BͰ5T}!3BAiŞHO] >fÀ6ſ Jա 2X"3#.&ݹupFt"O۽FKD7u˥[s_oH7n0NĜF4 e&`lgīk[x~ScQĹ6CnJ,L] b]؄;йt]' ua|[3e嬈RemhZWbS"=|@vD{`F`!ebJu@IUJUa5P-K4Wja{QnPb]r!CYGWZ'D  Fw??7?7jx52\8na{cz++\w',UmH(SjVkwe$?By*Uj_.5L==ݐuh('tz2cf@or.kڥ5<p(%8jC $Ŝ6ic^k>ڿ~(dHDž*"63!v~AN=Eldqox`/%ӍBZh9*wz]$֩^9RݾMobҋa⽧N*l8*vG¦r&5h ڲjzq(xVHE]#+:boNN3Eb,\//ѐD}EN~xM ;n:ȥfHqܘR(gtEu.lR̈́v{,ݭu`Z;8uqrRiǭ~zmvPM?<9zT!Hjj.]#!PK Hq0.JvTxxjXw+ W9/8>Cx" @ljB_("FT=v.(# ƅөT=: `|"{wﱆ;9'4D`6Q8(*GOQ .U'.HFqxC(AfZi7 )@\VxlՅ$*/=-WSwKnAp+7[ٖ0NTc6StL آ2̳CFjq%=:/pYJ{h!,hyE"ĜpfF_+MU$߷~AUz$ UcwまAv7q F j2;Ƀu>ʩ 1&`<Lp?;'v|WdzPz%m?ޟr s勤u?%K -WG E'IUJʁ۴ڛ0JIpIYYqmHׅWF("n/A"*e4rGt\ViK,?: E0*E ?E."F9>v9. Zs*$ZW:gRĴ8 k'S,w\N Iv9 ϾS̚)RuHYF€ OGiw;9@K(ܨtq29=YlfK/WX&21B7=/2 T͉x:5^t98,.:`r+)jsz;W>Zl )CҘb|c c-OFW(}16,V6.vr߳D`AՐ=SI}~rH90CˣV k ( ]$AuH;. =nss&vUkRn˧9# @4MOI1(c,_Ə-}./A#è>yg^G3!x;EQ,N;hK$^Wܾ*)U3;pIԶo 3%AZo׊}6mOTiPiVfL*jZ;X$iBިgŦޫ|2D>h nLZJ f'|FK29y(?P@.1rh[k㯉n0tHK.{8&1`saBeprra&~MSJ+l"6GTO|G\qt[?_,sXRr|}J;6xթVGF#HY\ Qm$[uжP%s:huF"$}UU9)5rt@ D*Z@~y~nZe;%#3}pog(uF>?݁YctrJTZ;k!+ XAOzP%G!ґw^=[Y,lC[aVXħ_ 8M j|jgtxforyg f8[ԟnO;T yCC4d?*`WxwjIo*)(J}mo,vh V\`lDrmۯb pO\anRuH3nD07 8]RH$b`t|Hj)  ziKe==lDY&[' X.a1Pf箯0Wsk/;=LR"B5q_I4h+*9Nؤ @9)E@It)\TSJ)4,k Ԯ )!4C%̝m 7RWcο97C!&EX-M9fQS Xi̶`CQM_ Uj ЂZc "C!wƛApS>VO[# V Pf~"r+C pª%2H%tk "K ÕG{&.S.Xg(@AGE#3 ($#v@"զ'5e5U?J'hBCֵJ`G$>nⒹt6\zRf iI(&͙@sfq\PJER (sϞ~\!P`j&Uu*(αS*~sDvD1KaWݟ9 l:)`'d=E4+1E[MՂ 0)$s3`--Ȓ&zæ﷧kycT r1CqNA TMR;KfL (&Z [؍z}%HA-V(MTf q( N3Vwg&vK:f&;ccCmAw2_T9DdVu2rUv_J0G?$a8 4IR pE >Ʃ@,A}+3AmPԍg3ffdI9ƹ0|Q$&}rbʓH$-L7[sugšF0%;`p=m,cN07"=AozVC"6faS5U~~?z+n^Ӏ])e|\΄YH 9)zd5ا'zˍOxGz6fRl57)\]t0r}uE  Ax gΔ9wlHl,5Eg1ujӓ0/-5t|yYjvK:s%kNp_jyL, e>?M4 T?#M>l'<ykLb Ly{Yc>ygu< #v|ԘKei%4⨠^٦bYencf$1MC6sY i޷5]G W\pQMaj C?TL]ǺT> g1݈WZ;rb<QP:G fur4~3rj.ժb"a,5>tR2Z4\lϽalĴ~ԁ0Dy*Q7k6K5e 2yobDi*cٟ:l\'Jokn!,;Z|ٱ^2VT1H/ʕ3zw5_ee>#>RPkf$}oU(a*Kp0yw')h<1d;9Ou59p"$b|mh| `+2YS`,NT2SKrEÀw oƽw$-#}3a"}>z>/t4Tj L߅.j(3 3kf \/N~0",ϣ7ޚd;F+yX{Ie/nDE+8Qά2ϫ?B+QPfh9i `},9`鬙uo H3Sir-:V;\㑴WS4HCpPyMtXIc3 ^OXƓbO: r?[utBV ?H=fxv-M GUmM\<ݑEa\aT'21iW݁zPޅ9b7_cv.Q #Jǹ!kMUEx?Hމ zMTpb"F. mĬAF:Z/ڜALf;^A+ͯ\c s%{bB86L~r;I}>yGtuV1s , Dg.8POp͝<+ԆdeB?VdeZ ˡ{|$te߾Pqz`Ǻ Y&fvN]ִor^Hl([ Hzu_O +Ԛcv`t좪דfӡ2!q^"YOX\k5Q7d@q}IJ@ RՈ:.ƳG9g # @P o`K}퇬oiI 5)hOg=h>w`!`<[%Yձ|+qI@qcwIqI  0Y01aT؀2%U @84l 7X%Q'Z/I#8`;X2MvYI}.0<N5~ -uUwOM:Up,T7RݤЙ0 DQK M#?"|CV jBAg%6E8nFpz< $i +#) 䮸'cDžQp&9c b{tIZnuk5_tg2U& +?t_ݺ>kC]׉Rj;.Ƣ@X^=K3*,c.U^ 'I ,<-[`CgtLktLlA}>v|o.1==˓m88OjCZq8x"z'*+45Z~E+ 3!JɑVx `=Wsn]'xIuAl1wW%uyVB36r]"<ŢM`B+;kj:Y]Np!7wpx~Knlh@].SAA<j*l-,XI]9)lu}dBM9]nw*[I8Y*ʎݐ6r`_ % wI;pnez" , D"sc7o;D"ǻJi$wTAt .4&gPTss')2 eJKưZ?)J;ѽ;-Bʂw@޾`JlI&5j¯`%;{w,.92C?5}vkoF-,QECuϠ^5|b 0 +3iIv):a"VX`]P(ALR т&Jj~{3*,^|'!gD=WMkxc1rY0Vy?h~ "i8YP2:y lG'yb-T \Ug^(p*U58)۝D11]Q8f7yl9fƸalZvj1Q E[˲x+«ز^gNaO9C2L)[*nԍdҎ%lSw6$n׻-B; Sh EY:e jm@EGBl xwʀ7gEDUBql2-M)nb;v*ޚlY+J_Rףu<׍X $R1gH: #L/RЦEpvX هY4}HEEMټPykW"rR.X%۶MaIoQےspt: E-ח!A  :/1+ ;oyk+֡zٕ/ E4JY7m짤׻;af ޑ/8b.0tXҧ`=CpLBN\fTȘW/LKJW!uk6Z_;}O:%HrԘp} IO@gh7X3z;_p71 ¹?v3 s-76kOIV o)Q_ho Қ2A C@k9ـ4PRG]׳ݰѮ\Bx`$d/ wnTii4M2ui]V~k;B@D2M۰+BZzaUl VG`xZOyDB*wm5ĺrM DEg ژ_,`,#T><anyefo^ڴqş0ӊջ倵lo;s }8SVDX}= -.鸵x\2M%bwBffHP򪪛7!a͇+ȑwRX51K.<|"z Z.+>\-j!6Fm>Y{STJUSzRݫaZdAX6rJ71VDܵ0.X/Z@S ~JQ1h|]—r1f*j'2Pt:o y!OU#[Ke""!@]#SIPTN^ JNL~}&^=LPI\.9hXj+і#= r.hhkU,؀GqSS7 }>Ȼ}ko{8v,֯,)Z<:dABhFHyQZ^6RM!p620#4I(°NIٻEƩGO;yԿʴro&<*l.8K)j|_ιQSFDY'E0T Xi2`GV¿xa놿Z"N}|^jN9AùWP7En1~YUµ,2uNjD0H w};N?@$ߘy&T>[0Fͳᷬz Z8l=8:{UK,oKpCt\Q<3|.kջT 6[q_cU+6/hv$!D8䫴ɺawoDÐjt0B)WE i`$mq"q1(BӴ3>!vMRV_"^J 1Z:g~y@nĿq!bp={k8 ʦ.PvKzd,P^k}CED$*2EZ4=Z3/3C&S<dh55Q٦[e1T %ΌJMF50p EuMut#O )/ +5g|} +bwZ9?fҷ*'tqۍM|Ⱦ@y?K;&@DNouZi Us}p>xjOmZdYk+ʺɶYrZ]Qvؾ`whS؁$j!`U)"O q\eBSn> 㭣kS;4DEi|JM'FAvR,{Kۀ`_g1:꛺ou}$ĻF{{z?YHUi/Ur7fX m- v4~RLYc +Y&M?>B{!&A2[-f,. iU@6 B2 *,T5stpCI?"Ig=CRCt ΋w0( 6I)1Q/ BZJT):GTNVSm?BԨO_/mu)x&4^b ZOƂ\e7WBϫ}5 l_e_aڊF} ˟ p\k/ 2ǮڬrE1(fk 3F!4ݔR^K D]}} j Lb4XVPsk)$ᴰ'P5ON{pI :Ð%ig$R7:Eb0U![TCښ{;NLvIڜu@:S"]zk]SB7bL]D&hN?L87&RVT1z?9NIx.&=GpI)ҀJ{nدr[jþYtA3Q-J\->- "p1hg>8Hۣ@XipLr^!'7{2j+vBIL#[ÀM!k#gV( =l-*򺛺lC-g2\^)-$W:&d+Al7\kõ#Č8/`DBE%Ҕ ڝZݑn?܊- ǃ#&4H8f5R ϒPӁ ɋ؊J(>T;7O9Bҫ. igt2%LeM\ŭ=Bi穮8C{LX Yh.Sx)FX6;iZ8W΀_\7ɢލrJJ c4>jn7geQw/r k`"މ͵*jZrz @irdo.cW:f2JZHviO|&|΂_aKУTKnm_UcϣԩSAXv2*˺?$P=:U@dkL!gS!F$4h[bPWR-,/ =x"d6%r1PI:3Z7\ S~o<`υM3#f`~N9 ELkӚb3S/;HRQfc+B^(f/obH0KD+Kn EyP˭9 '*dЦЅvxGͽf27{Rl/2E&dIG8\[{Y:fءdtVc?zO5% JŮ=2vnHy_H % q"碌'@tsah2ه,4J2j1o𖱍ÈO8aˢocH l{yE٭H$WrtF$ /.3zRTo<'QvJNmgɛ"'I/@ ,X[៵0:Bi["3k_:M6 &純 /书=끸5|<=Ӯ5]A2P9.䰠=EhgJxu2V. Ť`Wuuf ,2* A%ZGڗB(̆&C7cw}*cQF"Đfj]Ho"Anc65 ,I~Ƽnze?%!Бyg"{Ю !j|PQ'(T6wձ E"Hytq`wsBdN _~2C7N9_^\M$;‚"®HIThu{"s:ɦ^`r2c O6KT<*wtod:#orxDHAO$q^d4 S?Q_C^t|ۮ8bLMbHڤ?Y :.b ~o4O@糍025&;`CauQ?I-M5ZK-#G>%HWǻ; ڙq>zRɢW(D@`:nBSL ^N'QT1?w$nP?z('[UAKe#`g?W{,_NކsE X7&<z|ڑ-ɒE$Wf`q[Mh>H59{j!bEb Ak򹎧RYO/;lIx94Oůgn8`5ם0B %KOJy1.@èG#Gatsy6oے+1/cvW8%_rQR1.I*I>]u ?e#n:/s]3ХzHq[xIOqJ34'6xzf0y˘'bg[Qn1JȖqr#JeY7[)<!吪jmV * 2y6kϟFv,R3aŭ0`9t~5 pkՕ2]1 VȢaj}lbby8y `Dt.Ҳeb0N#mGXV̊ivZV&!6tNu`f\0dBD~sEMYJ?ރji (an]}߈)vd#hygr pJwpO;WoP۝:*_8i+]DmJ;0RG VBGT`) +vm y U֝% Lfxg+ЭOƒQvSd^7'ɯŃWw6\=a!8^F7n%Ps1sP9czOѝ{D7yZǩ=$v3`ps }L Š/YSS^[h1ь;JɐV9ͫ'έUH4-({t>t3'͹jJl4pt&h̓0qS&3<"7V{\HnrsFS9@u5*]BeNd}h?[ ^woW,5dzpAPsLP߇Xn ރw<N@]2 PXkA˿NjۂP_\1_`o[hKVH|5e +1!b u\.ʰ*Y9$mLR v|y#⑐]Nφ ͳ`08%߻ѭ)H3_VAP:9Z8S,+ d4t`@_89H#S<+ կYJnc5GVE/E#O[{ӚݾR=JCȞ@3S #@?r:>;h<+c;P)I4yL6\J3\1O *&eaW{{] pFvpnZ' b5|yC]( Ta4+Za"į4;;z PFg+CRnV7|H5*pLE[ءZ<m F(m騧"$>baߒ%#^C|Tc9傒6yct:b Z|yGL&We%kp\2%o"-EȟQ*\#a|G\Iڷaul>hb @!j DsƋ'fMMuH%bvj/fHݠ1( 6$Te5j^yX[hpLF˕t_?$InB/i+սbџ, X:$LjͯtHu"zmk+4+YC[s "?WmRrA5)vUttCd+sW:39/yE-s' v},:eF҅I^*?#psBvBX$m|d,ɏyWgڬnpCk#]@ۈN"'\>WyB l΄ F5Tyl/{"!_#`A31(= < ߝ" 7 qn0Ԇ/f ]?KVbyFCwqtHay"И]16ϬzZxav3`' \62=4;8lyyҳ{xXQ23o43_͹cV:V9u)݄p!zZcb[I"gӮ.94') =I6[1A LVHH6Y6-Wʂ'8½L>$'s2"qVjkaΟ[fKꈯ2h. +\hmpx DY~:SIe;V_1D>>m+ gL)RTOzz.q72\9miWjr\6Y1AJ3_055992B} =ȹ=Nkdm-G[¼]%}sb1 sɏʧo|+4ѫjѺ\+SkGn(V}NIueƯZ)&N,:Re M/rNM۾j:Я nRDRӺ?v ^ζD76jP'hc ZsV*j#i7kzqyl6χ;Oe}LtiÖ:FnAT\kCv'爛BeP+L+eA9AL<97*ڨs45teGC豈3dLo3 *G=e(*~::|RIH0:k*0!`L9`!xɺJr {aIL#4bx첔-LCREJ۴aP+hYp;ĿvMj=4}~CX ߖ3:-$`leG47 ֺjWlz0gs&>QprPt( s?Y0T`$Xs5+]y=o p͉Tx=ʓ.az\H Ck^%n!hn_7שt,?Vh=!=K`ix4|; ~T`h gZjk$@?(۸טn~ĉݷ0BdJF0nd{ڈMݫbbٽ;JTu[G#ACPyZdԑQ0mVV y\qbTqɠ:o >=;f uڣ?:AQgF9Ha^> :̘Ʀ nIdz "{`;U(hLR(nnYWA&.a~I>(tWz=W*"ۙc9LCUЕN`Yx9Dim[9נ%%>vC{n}F#lp@ _ E~ uP6?!◱Gn}ho{"gc̬c6J&.̱)xL՘mHZWz:2qAџ~6U8]?R>p5fPJʚӼ71#ln67Ɔ@H7N, +d( ́f3[vdhL~IL>thd! Ȧ5co-col{iiLjF841O?>J h\R9[f27<͟{,%av@;m/x@r+MT+ ~RUBdt"y*HZsh 0&\\'V1D">ΞhO8ʷmw1Y0t)ǵmvohf~ 6#B=q[F@IX oYUAfib.֧N%c{ťP^r#/5?ę#OKq2Toà,Y=%+7m􍕩{DfU`;0 I~LmQ*m%{ ~eVZw9 ePs|J5SBI~1 RΪoҠ>D84|f4PAShI5ohg6$ZJ GͳLJʽ|d7!?읇:VdFƫǐ<8;NZstxBAu739tA$Xƅ#ʯITRgu\VRJ&K|q(8ѮV+s\c(7nN /tUB-bkks.TҞmϏ;j>A?Woҳpi%;̀~ˤko`I~#uݭ$pG !-4N֪9?R;jԿ~=JۃL9Z@U)g&b;xbJd)Th|  Pgq\5IDNi0+C`[i{&n3y޼'T8p q@f6 (8O*U-PceuF[W]]yu?y@r N] .6FLI񰘼2A.$K꼞f-iY\{ wwNȼ_p$J

FfV ٦,r}Tآ*1`p̀{-#tgx"@޴g·"e9qsM]IP~a]=*mArc.׻̞ժ ǓYX/  Qם˚by&D@`!w_8^5Evbx%:3WjN1 _d\|m_yO?L$8}C/W5U;buE'Ƨ)3;;^MmɍWtt%Hַf~Qs LVR-a>zX=НB/F]ڬoo]ANՅ8a˂fC<՞ֶ`:߷l1CC7Ȗ"B3csHV GW-F1Lk_ϫ`[/X}7A -a"yciYq{J'=&k[\invܲbI`|Kٸީ`a| Nr ;2@j^?E8W"7*l!T߳5G#w4nB@5xH{h P*^&m@gԸVcv3}PjkjE / Hzrj8{h7eה'&C6MӤNI%&kܐJY Qo!2W۝S#wȝ.6]_ sr3o]d2sTXu<džŽ e[G,sԧty;m>;\0Hftp!?zݸ~uPh TK,IOL5V9>֍,%8 "  IOJn)LCcDnQ3cҤa}?ZީLx 2ުL5fVQ|Fbt*9{{qmZE\Nwd}E$ ,r hze[2㥽+1,l%5mvIіVEs_]ؒ{YYǹ>ad *3~2XT LW L䈻?*+_ 7Uut4d0F5%u=-O2;HlwwucF 7);yOznZ*S gQ}O]rC|rM|X>#~Tn/NΓVqS>dhg"3Ҏﮒ9L/Z23OK38!ABE Ue3O^=:gOUSK:7Ci< qXͲF{ yLw(DfX!H˷g*!M*=Eb!e}e44k/Xv?hj; ^ OA=to]weq{CW?C|Ѯp&=\0I YXFj?|eF vqBJt.8DC+v1t =+l:Ÿ (dqkiLc̎mץ=@t;p5 :zy ]OC}ޒ4e:q$osK,-LL#t4:%S;ٝ(J->W֫?P >~k8 ?TiBHdGJ 4Fee OQJ]<ғXdç#!E=bS nRle9f;u z,lܤ4.2.`K2@w M3 2DY,tRgxm==ɄX(p5N$+0pT R+un-eSo#WlC}aC]y) jQ BQft'XJXyTN]BX;ZyIy7V105^S/Xp&f.t@Gepjgᇏ"~02C^8?(B $oi6lT8笅 E@^]1 jvqDC nNrWeĢ O!xw̽Etu`ۜ9Vaq#{#WeC b$iB9qNt*d0e)1$DQBfa^wm/l~XIk|Z\߉xEʤ:ז{ alqX0.Ѱ~(BAH 4ݍ |B G0i2&3GyIdKE +B7B@=`ZR^E:=AbR#ƪ L:͢}nRúD`4N]k1Q͈PL)d=on~!zNvAƒg1R}g&񥼻ٱ7_1cJY\9,]4HVgkԐCoK|j獺СSZHwY#j]o*7'VΟyQ5"r!k  sD!xqF90h}~KEiav NjQA^1RDžؕڕ#Ԣ?  -hV@_ٽu<nj;P1V; O.o&EH} Bmy:z7Ie;̺L1!^j?n;|/`Y+2iiW۪+NǺ Дؐ|>FAU]PТ?9*eZwaђ_W42xmZdž/ `0L?21Ȑzq]PhtW8Oc8 @Yn6Ve0y>}zb %nozgc緔J*n+qP65۔E@:NLyW+=F3.g{pφSp.PcRdL#tv1[p92Pk~ؠݖt9֥ӆ1K4eeWJwT,+чnQAG*2'5gv i *K%'+_O[cul:?ť^\K~ `c>;A/9!8oXe{[ I,:ODk\K J,|5&_`GP~VȖ\B5BYsK*((ڱyFLH ·}c8c#AL.{#1u|KH.= #BOՓym7|$>P+ $ sܯ1vs[KyJ!̴kD cݢfhD>'aBΚ`Lضۜr`>ta9:#7i39I>GE'O8!(8OcX1[sjjtLl=BۏRJe ds|dQ09e~~j'U#^cRo`걭aȫ"x|dQCִ_Ioa=LL&E RnMO ꍇ;]qRl{ yÝZIC5N=6x (E뎨j\%@CBmVo;pz R\8yP?t3D*#1R*݄;E4?_t$Tg+GtnZ81i^ФO>zYq0i+J<$n$]ʚtP/i?쁽Qwze$/ӏ#0)B?xKTάFJAVᄒ9r̄2oc~ 5VobDa@?ւ3"X%9,W̼8ҔLSHK Qw6akuf拢gESڐ8X>xz]KN0yBiTojǫf䁋Vt,F>#!dL""* }*i_O%كtsBݓMWS ?Gӗ1+]Fi;CQ=m1X=Lvq8(`o 'z6&Y'u{qy$nMz0x&Ce&2d~>7vW{ҴT Ru(XE8扺|]QDYҧ]$V4:%2!*;%=F6t&䢗ۄO\?MB'VN:u1xC9;dGDӉΪyxefGM%/38dRfCBTHe`{:cV(q=_"uqz}荀8* z*aAs ФIq1>YOmy\ rSJk㫿ѣ%Z`'C۟81VL9o3JލM-RYcP,H'0VBK}>1xtf9a$K_ ~YbB~UlB+ mFT GwCVV\D˯ҥ6_6׳"}wjVFɪK\ˢwiB /v2A*%KqD]{Ts$5 +p;]Ԟ$n`Mq]Z'?ۙø2v-Q^(ޜr#Z,?:uS 92.,mZ/\m;Xth!rUk 6wBi4Q,7r"z'Ti}=2c W`H/ [ @k\>V|: &V0E:KڐZ,wrD!j)NqO)|Fd. Kc|)(- ؚvf$YCxx#@HmΨZuzS7eB)$ʣ;dkS=3?`֩N0k)-\&$X\]4Q5䓁!R~ro=lfbƎS$-G͕|se Sڵ;wfy*qeX mKPGUC%I]Mܚ-Eu^hS&rGډry3((ꯟ92T~) V kQYeNq@"Rup @D̽ *iluT%[|PsCħRWD(]gF RpM.)2WW2ɭyz24ecWxr/c m@:K7R15z0 :7[!\L d_a(cv^D y^/3bjeQӜJ{o̡bu)++{?. 7z/e֔ߑ?xnmm (>u bQD7k4)0񟵲؂'fUZ\S]U]Qkt2C ,@nQ7e06h`V ʘ ep6oF #{$^P;`rƀoHyN2& NHH^y5]A 9=c-s*>xBvp f4h/ʬ~PUD^.1rMǫ@1^桰=3!p:tg W&HA^1/9_]0fzŖYw`lS6J 6]l90=rƨ\:+Ti K xE۱9m{RmQi"3a9WZsd=etfu@֭s7-##򗎷z`<%iZY֗܎`6-DWHq~Ӡ!d߶1>jNK C 0GFM)^ A9j\{=9}F;@moJ@'r'Mnйwa&R3HSyYCX_[%l{e;3׷qlׅ!SN?硍6p,V {iё8rU @x6CΏ3 fI)y#o\uJ3h=~3ϓ鈇dpAA|slgCj2YD/*y elK=F^>;KuJߜSoٌNmqںJbq2)H0Dvi<l+@xC'Yt&q6je9fR_Y"fY qE lie5DU$3 }o:kҊ+Bna%cÏA .aEFRAdnOCto(m3zt[U\_:bƆT^> DS?tªp@b̵KwD=7L ;E7;%(seM:UT&7ʯ]j_o1mAUqx"1l}GvJU\{VߙvfDzj c8b8W.0~[}R?֏D!$wN3L!zՁMذLb?+tGϰPoۭGk|c@~]0 Zt0v%~~ȱF@r"):|`oRnC*ի}G۵J'h{ykw(ر[)]t]7Y1Sn:gz}/6W ?=c!b,./$Ӭ.u(Q[3(N)yq3:^ydP$_өҞidKe0ّRsp!9 NKB^"k/,\/OnY2'mDu$%`݌r FVxPk9U( t'NJnƤ |v7)_o&Vt/Xw<%r r*W`;+K)9tL&QtV}Xk eX{X} fumWH6Ţt:m)CΏ?3qE ?3y9]>o4*i`?Ds3 n sb{D wŊB&Ћwy!=s+*|>|W^ cv8 7:;':|%7GbGxE!3B8򾨢[vP0ua$E%(&B˸" .,i]4!b䍼dd.H^/^%LO*GyvTBg&Mݸ 9Ա e=T]p#} q2Jcv[+efN߳RʎSG@i'a3)6(y}]gIoδP֪FL4dÌN?OeBqWR r˜5סe)]qWcyV&|կ&Re\ -[=lWŸpl;^t%Z<r\Wف+Dҗ7lf̀ f{Uw*nmYp+OB)!u[Z_Y!in~#ͪHٜ'Sp|KbْGf~,w c.r\R~_D yCR},@neU-Ԧi~́ffGafB2 `sPNkR@&!G>ͰGԺ#hV5NZiBXZx9y2`7&z&xgR{!gg̮ZpT1.?i$5xiS453IP7APdO=d4qžmz~~x( hޖˠ&΀^[͠8pV0Nyqg LUI- > nكT֛GCS6Ajoe Z8F*+0.G E$r*̣:+ !8)p qU-pV2.h%*Vj/ifl >ApF^rxxX0T`[tnY[:*(AMX.}10u w@Rv4\ 9U #&k]ٞ"oiu< @L,wZ0YrD5JHSsf'3wJB!t Z{<Ⓓ?SCy.KjB/yeHIɄI/Fu~8|?Q؍n-#TO; Gi!6y Yd|Ć:HT.0L)l(qoBrY,x)-Oesɷ+FT&~ Txz}0v>y*3>Tf[Ԩ,)%`Z4b4QəY;KBBuSaX 0\ ||j(hĬ,gY^%ǀ $ Ωa Z(T@suh&OfVbJFZ}&@JK^F q2?}AғGh-^ T_6. U42` :#i㔰Vj83?859Y" q-59C⾉חY] ~Pn$0ې8TOH2h\umX#sѿ\%jٍ ajܾK-?ܽAN:/'Ov-C@QSG*‹;aGoۺ EvH {n`E< 1&0HkP p/`8\56}v@,x`U ZYdݵ%$L_g&ػoyP2)AraGCשPP65/9O2J>"'=I,ၽ|hX%&+J UĈ>o/ft<snJůA(]JnW2 ]ȹĴ8 R=$jz!e|uL$!"Kg1D=e9hلN)|M$4:$J⁤hQ>kx6\]i5e .?i3a@ae-ݩ\.+^a|R=h$Ĥl]wSnj4\::BqSddf-O֢/l>;Ꙃ89x7Mdu_=bEt1@ R%F*٬ vB6 j6ƄVz~%F߅4C"V[d*EAִU S4Y"Di!x]}fBVeD?nlSR=xN`gIaexCnCSyHSq.oa0%KT!?.I{<>^nJՖ!2aRexV.}܇,]ͦt-RkziYEM^S،K.[̓3 j AE" 0d_[> cVM݅p(pݚ<3PiEo9uo6V?v_ e5](QQ0(Z6O:z֋Z}y SF̄q6o}fdJ%M%̽.IP&uەSXS(pxm_kȔkN: fL5[;չ%cA%1 {ӟ:,LcK ե NYS}7{*-3F1߻,oe'3i"Ԅk&W<\ C8,ߛzs-tkWa%+'֑|=l1D7ֿ (]"k伥1:!_nXal뎰iŐhM]B\A=m6ZRj`YWA҇Z\-N8=1l7c{E'`|1ܙԊ~6Piw#;DJUcLQ*=$:`*3JIm)# ܊?`ETl1B!;/@93eL$|R2inA h׷lY;'T}!$l|T_LWC':Cפ+;$}1"a@`n_TE̗zÆ>w3Vb1m^MY^Au맮)qh\~}U4,<&k~JIּľ.ZK͙HOua )jѬ6 * 3B=y{ Q\=6,9Pkz!{w?V\pF&ƿgοYd?RfQ1S O/Jݠ&ֽ7$sZeCwөhC~]?(63/L4#lRԡ U\7 -|A3+A}9Ab>Lrݪ\Obh0T%~7;-j4.p'q !j|WGN ;Ha4A$t#fAbou)"eԎ V(JcƌՉm~֨R濻qFPe]ڎ8* ]ꀭ.rIP'@GvЗezzk|]')v}-[σ ՏM{f~>mܛaX46Ajq͵/;,f"EO.Y hbtcS|ݤRǾ^M۸޺"9F'W.`/Rδ,+:m: eGY[P9"|N>.nCܣ/?$cUE&gz8Mtm4 %b,8,qҪʓےSe4g\SVH\;e5n^aV9PwdGxw4i]0>!K ;YI3Y>^ήw_NjFo+rCTԐp]I"2]4%NLd٫r\KƜqTJ_)N6U>95<YIV&v ׵OZ,^eZjBe1d*){p"UPc[b&i2s;O|uh@ɴJ*Na5W>:YEǮf$ꓴ[GDh)(ܠ5}|P[o0+6+~.Ď;~8_L 'bSF~Mw\ X.@g*xg U)g{zqj*H]j$x%@E}8d)n UF$DoQjz)$90Um9cj@KѫωZ)L# Vݱ"!X .y +0ߓ^")i2=T$Vr,(/gо9l3+sJGU=~MS$P ]Qy5IKצz{3?u*,v.5I2K!}^ Hu(1d%"x*ʧw{pMBzmk@$>@$Rx2E:];twtu]?HM^%2˙B:(Ȼ٥i#S0s@S7iTFQQډ qcb]6;$) ' [>B%w)_ Ra6%/_q])ZU Y{CT?n#BIzg^^KpÄf?B.Ri1_ n0-$T@uͲx1 B;*0o!!SƕN'|!W4 cW# lbµ Qܣs}bƦ1᪔dS$Cv! OQHZAè3v -!Դ6ZRϷ!ѳ a^6% Vrpٯ[2gΝq~|MGwȘȃ+=|'9xyC/|XO$r& jZW 6HyߙKk2^][]a|@=n:X7Upyl='*vK&$9i4) x IL Wc*tOܥN%ol(Yezx$ZMJ쇝Dˑ \)dOztjrkԥMJSryn\s,!s En ׿?)4)fMxПCqw_`1y܇&U:@ ygr_ =XmȖwxo/_8wEQ8`Ln. K }~G~l8BTLgo7>a]E1cG>G;w>^"nV_+a  _ ̣_ 2%YdU>#dO[K_c} S*Y- XҨ;?=[5՜ $%`mS P GZו[8!uae/(izZ̆Tjp'wd21Ό)VPvg}@%,4.󟳚7뿧K-\]W0S[G]ЦҧvW{v(l_fdQs0;/37+PbkpC@;.oT4C~o,U⿾΂7Dr=IW-8?rbq@Ԃb_&M?rCt_ꨙa| P 9@]Ƃas' 6-34D V.EYxO`e첱-2s΂?`j.jVPl$߄-V|箲KP\*z:ruLY~M}JT!p{`3l6iGOF*NtocgH*GAxK[A?c*(Ύ#?jPc*`A~qx8HΉAxe\AifMZʳqKЏ"Sw{S %b3lAM[\e.].PџZH ]KY&݊:?65SwSk-0Z%9Ν_n&0oshĜS^?y 6:i-ur z\&C+DG2RE}O%֢I­O@Uqe'gHf= |^U^MSZ)4$3#YPө}P΅T,o'|ư7aTPzj^+1ϖ ĸzuQ`K^ h蚇Lml%'Pµ*|4"B~NKv9`Si/+ʽOmIoC,q[3~bȾNiY̡EK-%%zM:O27ݛ@~ȶ$I̱7gmH$媹868D>AY!۹eE'lv.jG$Q D?֧3kT@1[r7k%`XGdm πBڼ)~9Mp._9+i6u(84{S]¬ysnrw(fwU5nl Opb΂ [ jOZ1@̍nUUnKg.ngG+.%D4=b/Q@j5kvm2 Nĭ ]UAe܈D[k5 P k)5^Pg+.3mhBB5{uY_ 5 @$L֛?s6_U1eƸN,K{xkLo\1(7$D ޖ&ω[=]bMNŰb vL`='e۫S+Wm)c٢HM IH&s vˆUsliZv>δ ^-E3^fjVQ/_msJ][Oy̎fpfȏY|͇;X 7kŕY,h+,^ ^#?ȷmMܞ8P4C) HUKrL N|[@vWGXC`6*]dka_!. 6@1nWif3zʷ!R~z$ST{=&=^IivOyGLj68w:  1 jB7lVŏ @cZ5gANM*:>MVfl7[ع:?8ҵ`^n? B&+#}[]*&~ٓݐ)78G*ҝI+nz-tY5G{-$@N[%VZ \zZY95$H)֡Vj(2FPz FcZ=;\)$؆&}N1.S+9 {AWU}Yl-owș7 uy?j7퍟 !ֺ`n !##=,R3ɞMÞ(eENUwl;.CUZ|/O7vU. Uq=5o񎼁*T }|qwM6M\qz-elyz0\Aoqd*TMmϳf}?;Dw~Rojg줜dJD+M9[3TM-O@*^K8[e0 3$L^&*э5S_.ن &*)x"@}0Bɚ5+ =9ɭPS;"'>X C oӛj,%,G5ɏy5tc#i׏tW@Q s`;FOJ$ 4k/e CsLg۳v~s^& |)O!uh{n҃iû}D/?@~Tj*E!???l.B?oM^0?M' g[XLQ^1HJr8 Qo V %|a$2Dpnn?K<ө;fALIB H˨Ld )EEO9Q&_[czd:-Z9L*g<ټiwxM"nTR4NldReaȬ:[%`y=nLzy(/^9ڦ\\9Ɔ\׬!UJa:dGf/3j^lic.{̐qO 5]Mu6eF/?b: nf sn~<)gퟺ+b+ɽl;}ueVv>czޱ(˹w҂!l Az#E𵥯[3T_ J2 9~BcֿJ"GĨo   = `GL}%n7Nw^rAqQI5rңwjW~A;E g6ourmyJFSkT7~ x=)?;ނۧC hVJ%FtdY~Sy?]j13'zZH&3j7*.M,`IDZ/F6||Uh*ZP'^zРz7J><:jR"7 eQ3oIPhmzVJێfrqe~|ޙ8,|Cmf՗h(GIc{e22Dxl o;BL |+K,u#/&YԬ mj8X|NPZ(cM㽊=|܏P=.ȬsL}Q MQxBbԡ`v3(DEjCuPc!-WMVfvk_jIFp:SKtݠ{rME'g!1n2 % !!~y$!FܞYӎ }t#!NlCQ#u- ̘ky{(J!Z, "tձCލ߯j2" U;1! #m{I1(eO%=78^9!p2u;YfT5 v瀙+8n$Ӕ ٶ ]8}Yap:%y:`i=F3smtS4@p/wvH(٥7%jK'A~b&{Ire-2o ֶذjB.{BpYEw}E姾rѭޮ{X+< -ߡGԨ@XP(ScmB췞t9Rh(A8DKb8pHeNJWpJYP5 KW:Abg|d[$9zkwAVI\pНNE ]>A`bamJ,m[ostƆVMd2\GjtP :w`ïMQH{' soFUо M~_#Z v!|U71yȈTvަL?ׁGXEm,aL;uv~݁GuX%\,Dxhs-fz|F$:wzb۟v[ ]d\´!피8pjvbU;[\Ԟt54YPBX U"7_F%з۪zCY`xKķ(_Fj0.yطBx\=`U=`Q QKwWUx >#Irx'r>,` )$Ԋqު`!RcV k._rRxvgP2V|t^v77z ށy3ygA ^bL@*&Jfv+?V7%$0|NɖbhIWxVIKs*/'[ztC|%ox!L uBHcm1Yr!5JHH`bzW3(a1nz 1s,`1;-J=Lz>OÄf ؒi0+gW5 &0Vqi vWC6VʨuƨH5's**9.ŹiJol^%އߴ79XKHNE[k9D/"IՊLAfgQVs }`O >hc,?FdϗR2DžgI.xh_*HE a/ǫ^ndNR;Z :Ô4w}# %t`, 9â7pBwQLXkI$~ˏ $NJΥJSU;U\i?K9,}fgڷJD>}_C_,$< )H}TQ߈箼WVeF [r/E;|O8D,8цQXz-RIq_GqazCVZCy mJґrC.D ;jsk}5@ `"[S/chv\nVt_1kVOdCw Jt$@vu^8_5d_KDW FZ4ﳛM*/s;)D1h$ն `c}S}z ٹ̠cvP5eFR[2f;Fۛ rXd|5hibZ`!,єS}U;0cIٞVyhgs 35zd.h!Qd\ڻڠSHm ?zTSv9WQʔm.\ ׻6jhvH(@B'bCK6d?EXXw$R*·>׾DA܉wQf_Dr f";6bNRM '9̔,:b ٭HRE[},LUVKXT@[ &9pnAk=`_ N{9\Hj=-oݾNrFTpEzĂg&VBsΣ &WFW*W\#&NvABcm$dv+CL7FU9)!{9`adR[W/<1m-uq4 5l{\~)׈e ]3Q{%qR8(ANݼ)8@ȋPnJ9ARףQ$JhE69l{+0Dr0RAyK^6 ׯ Ӑlϔ2f!+%\ ?ڛc&+'̌dްB}~Km@}nWERy*/U沲▔H!>ئIY06T-!ۃNprL(cLzE݇I\z횖̈/61ƵLZ2ybOЕP]<"@|r#U(07|n j|dZb3;=֊Iq>Sʼn&GoKL_1_!jgFQoI'3]/BM 3rfA'T6/u%ަ!z1ȓ&gR/rS 5+կg[K]d /_| -QVo ?܍_^#z[Cȹs\ /̧Y֤(s\ϭ: 5)>G=-` Ժ_ex\1>\d2qGjY_ԕ⪘ iGqckckbd%T`>0Ƀ!]'x> f"ߝG+})5Fu#wt_1BB]p"QZ:Ü' 1Ϡ:!n1T@>bU߲}B IrTpvkQDpv98{$̦9QIrT(,US7d#{݀`BT-a`#LJѣ T y6h.r4plX.b:.㭬)C`C > =Pe3J Sؔ6Y&(o36FYXH:Ə6\yO%zyD{ܺGNCTV W2`.:Z.z]y2؇M].zPqE@;^Mܚ  P[$` L`4;fwȹ $9Xlf񙨎2[ plA'T/b vv_7m}F"~ 4C [)"X48lSe5n.E_k_Gr&c|MӛڧWt%/50o$)jkP .&%e;4 @>a#rl=JL[H+TUD;jR9'}XR˘8R>_ת@%Ce ӧQ37b"d5,qt7]_ᕃKe~QZTk7] ݃To0TN_hPhi\k */ez/]d1val[zav,4рx卤f3¹µ1%9OH_sh%G)f gV(1RQTHh?Wj#N@j]N>|O)ׁcƮz i>F*xjqhٌU2>VϼIK܎l gFDP4 nYq=XcvX9Fkc`?Թz'r5a};oY]7v};'C{]!ăO.I0-Qn&1NpGy+c4U骿ӝ?LKrgZ:4Q \D&o K9MUcΚ-Oy4E'!40YYx  3f7Ϫ>AXޯ~E"ԍ6Em /.5uF( C\0ɂWAXRm; w5 ǡcź/6{VWd ˽2 aLY*x;|u=p=0IO@-l@kuEJVr:$-7l@ܦ1u3ieAx[>"uj Z.Q_TZOW84{@SJ)OgEώ-^/ЉhMȤk|xu` B 4L8+2 BI9.nͦD/緹u*dqi)mM29w`sFՃq8$[[*@u1D@2EƮ"[kSU!>.@q>:9}0[\ҎugAs;[hF(Lfk گ|=lv^=4Lb5B%!VRϜ_(zoRycˏB+EjV  dMՐNebX#&%tX"SnD>18Ypئ0<9:;CΒ!anI6A9#HU?"Լԏ `ok[:o~Jb?L1}~pJ;JXDd(q ׭)Wvo?2*c^`5geπⶪ@(at4u;4Ƙf9P<F4*yPhUt0U{y7ޗD8s$nJ HK~&Z4fgiC P P͜yP3TS:Ɠ*O֑Y.Z>uHNA$w[ /Fg+m)%nN=܁p̷I.bDS\s<zWS:7]AMpe,nſ$LifQMbRcQ ሴa01&)\Ő cƘ@j/C, ,T.IKSdl]ȡek1fV@ Rz ѧZ5w'%] O9BB9<Z  73L 6 L:y,I$WL$dx>tt+-0.?$g~v5_ܥ֐l[j< ٪4f(A[ /t+U!k$y+3Z)c>l,wQkJQ.+uq>D<36WŸT?nsWetE/ngDJqxs3ڲ=-izK*= ^bl3 p/(o{ -PDM4UY$z*\:1MdT9_D݃e$c%H&6gwډTA?T/N.陜xV7`ПUepE0۸٦ W۷Ĺ&rJTz/^z_zDH +!5+g-4/& CAdxvQʵt5' fFmbxE bQ fE?gǿ2,07{X!=)+|x w*[Ϻ=~5qEAU!Oz~ſ$nTVxVCtR*9* clH&4_ ?{&Ws:D Cn "WSCC07YJ-&|% Z&P-dS x&{ qK< ϟQ3fjȬϿr!TrzQ20H 8AeB%޼g9xm% )?n&pXH7=^.׌ llV!h-D2<[BY&zmaqMMںPH >X Ü?A%"Onٙ&/D.&iw캠n#nL o2[h.U 'J$5YT(vY7|w1l2ĢO]8>q۷ kU]xcwۣO!jNNca'2|&;d0ڭ,3;Rncf>;HB,]LDr4)/C!-yCr%Zaqk҆YfWQTW h8b/[g)YOxHwl#?\Kl\AwIa$P12 Җ/>q>Nx`ۨҀ@>H,̿T'W_|QoBxM=EB8 \4Q6̉AI3RtۍS-&8ZvK+uֹj XDLL *`.Tx+gP^ Ev}p%|'Jc#v./Rgϧ}6Ȟ*OJ_ F]@z-.;(eA3 B}/e:ڦBG=lTÔp%Ϊ='>9>XKT)+ j8YiV+lUPo*١QIKvo>V8)_ J\Euq-`Oſ)?^cwa5;g?x? .j>E 9E1XbrNu,%O sbV?NvV.% @n%u?<۱ukJVqc&:1@8iMc,&Z"0vuW +4#?p)bb2z7^-%N^㑕"dk@?#1zyFU5Ҥ "D$K_?y Җ9>at.< [Rj5eh˯_v+..l!>,nV,A C;zz @[_ &Ve2a,4q9;Q4CTG^c1dd"* a╬Nq%/{#>NE_Jb{} Ϸ e՗N7*_R5QU^(*&+7F=Vjn O'ch(/3F&O*)#wymlם[.Th&Z @v.q Cm:APk&BA~ek~„Wxw6F 4,}X h/Lt>[G.kHA3k9 M5Kin-kxUd^Юn]~KC47 o򢁆lE7n~*S{{B8m&]!0 Q94¯Oc9ؿ]Q]=?LՃinZ+'2jB>Rv& Lpʩke>G:t+f^_3 &۠ӹZi$?FVZ`O44:E$ie'o mΜO̮Tvֲ@M#|#a-፱;*fw)KWt°2oȢo*ę0 I|z6U߁ok[kk)x{Wt@ RkL(x@{6J`:h2|̇:ɫn#BlB/! QP/`p{sQCυ U6OI1Iq~+s|9HP~瀖$|4srN/d,4cl1(O^$:ԒGӿpu9иpRҰBpOL2"v\L\W|zųBo"WK!˚ۮǥ` d H,=q]謝ʒ-e@z_NoXbP3AlÏI(u,NC -3{2!4erݤxB^`H̴TG'}ڃH̖5*ya壏 =vM`?t9tu*ID&gR ? |qlK&xnBxvH)^eu 'E<}5i*G2~tviQOOʪ*_GJ9Mf+*A(ݩa4>!G6NQwwi]+4e7Z2c$cٿ(UO~iy%\Sa_%:k?jSR2[l3c K)J7NcC[[gLaZ֐ނ/li%;Фoũ)psR8^#N.X,~BA`¯$,;5ٞ/Jfi[~g1IhQX*Z|N?t+W?eŽS0,bR3܆ɐXK3SMJ;/mJ 3tO6zt:7܈¸53]}h]'<9aB c+. =p5 4ݸFb!Ant@v $BnŌ8 .8*LNYn-߻f5)߯ns̶MI釢!4&tF 8?%،_AENGw<|PPLghAjpK wy?Ǎ"L{]]ܬ|P)^wQu땑w1 N&TsǃӶI@P\O^12"ԝm1|8 9owF\DǤ^b mf3)鑾@)Mg0@p!΢uv?r֨lsYiq#ّ]?QprLVhEe{+HvIE +3mC t`>b@InӦ>@*8K ȴC9]! qxd9 :ضn~&}Y4gv ֌cÁ+~0+0eR8'>gd08-:gbdydH#쟙0QE^e?5ʌwy%jaD] 7ΕS"Ax%h Et ] DLjݾ"v^.V}@5 7Qbկum4̱BAd^ܣ: kk1!KR?`qtB!w[&>j:/b[,v! 퀷}w?X؛p;Q```Q-ُ;-iExإ7yEaNxxi%vܓt1`N;Rq:(^kJqy|81Rl;TÖޖsM֜ t)43Rk`3݈FScXa_v\K8L ޶$ёͨ -?EvLUnS@ym_lVF4."CV]f w ʊ"+c؄Hm<)$L< NlNW%vdt9|+%SZgS .Ϛz-!?e4P; )5Iϫ05Zu XL%M~dXu4'H(N8;T.6+4& dV@j_a@whm%Z 3x}~V~0QӓtZ6ÜYƁ;޶Z<3g:G!BDi/zUoC*(\UQc"r8hJ@H-I/2.`Nk\ْA*8?#(΁Ɇ$p`hb^>H;~G<3(5n:VWsӲeNN~ߏI6+zrƃs !+Ѓ\Iu}zDD}z @):HwDzOKK\1L, l[RʂVT.x~b=~x}! ([ږROze g sLrYo;\Cye{`.J<ALrsqN}{(O#ƎBb<;ǰ ?~L$O\刺p9_x/3;q4K+3aÔ&7 RsHb^aEM-To;?dac1 O2<Lωb=%uVbuRo*&;wq ʓk9ꄳ0 (S^HYlx0yvvh $~zY"37hB:ў4?Gl(,WM&ʂr'Och:0{m #-k2KPD #9{jEA:""hR;sO|3i/R`aUHr#z_/իTML>Os)won8f ȧ/YI}  !f= #~< 9)u&#xZbVwLO#hT9-ju. ece84.¹LM0'?A s._K"_  fO= 5&Iޢd Ba|4%%Y*{>È?j2Y(jw/Nʨx\ Ttf䔁F6%@~fS ?ł %ϯ_u+A)Ja39G+ N&cHl\q PKR;p-XO^ʿgK2tyqs_(+G{7;A_/l a*JM,9$ HZ-o\;W튮Wa05[HD Yq.;AGlw퐖l  W)U[oo5NOG@,B(ӭX1cJETqd[ou%}c;%\5u,ta(8YQI!0t'%0+Vݍ!ܝ.G2Tw8rUD3U3aSpIڮTw":?L@tx?VzWa߆\Ϸn3͎͇]ZSǫ3W2a0eizzȈ[x!br8oPϒGE ˙#lzF}Bu,v`qک~ Y a皮PءHv~:@ўnܚh[ϼΜUÓq z4d{g*¥ [nwu֔GZ̃^aJO#{C.=ɻ;SQI/.}x?{kjqaVV?a]Z5E8jPr`hDPZq.twu`R(s'{`qΰ[,RYԷ ON./l(}S 5ڝ #dxi _%x5ز n.H(3L] pf{D@;PYȕ=e ApG]'5*+-)(8*QSZԔrGu % /fjnF_ =%ߊB=UE4ܙl,s".,I< Rl2u烇D6,;-IOw%nEe#Ǩ%8/do5,:-vk^]*%-;BIyse(D?!4&pqPOv Э!Ӌ6v!U$vs/knqW@MwL:03]:{bʃGQ_mgzFriAԚ5\fM9glL)*1/M/뭔Ӕɏn:/\آ`'wɭ7c*87d |spd[[>\y#aM@e]uR]r,VddvWj`Yt1D_ ~Cpl(8|6k&[=rԮA͠P's+x~ZB ဈœDT% LLͶLvFXog Ǯ2}#VG=Qø!G9kCrw3aI5ͤ`6)9[3dґ43 B/FI ]e'$̊*Ide/c=N) TqLa={$ +9z E.ҌYH:#cTz#z( 2c8&[ M1 {l7o0uK]!m#6#oiDIv:?{ixwyI:8q_&tFeuY1n[q$ 1JvgjK翟Jҗ.kH#1ͮ7 >Yn˺@?S+;Mj~t u wkH1ŝ,3'FHq⊌ߦ^xA$%qB_Oč.' CUq'o 2^g򬅉yx@1],6~j]")[~Q߿?5,$c)uK/gƥ{G,)xw2o72g _3-2u1䐄uwAK1!;:b=2Br;<\q ĺ˨M»FI\yY̦GhFF! MAtBS^IY>VlUZvR[J/gIݺd;.כE~e }QzHZY +$j S&ywDD)nz <:QP"_En0C$atcnV.*,1 kU; 85˦ąn.{0BRfQ34f l TPB|,_ْЊ&9;c1 hl 0;bp޳Rw2g) 7P6>TcLfgw.?[n~RG#sfbi+Hڧ(6Gz n'fby $:qiZYWov\ CSa1>!Dٳχfy$sUa!qpslU+ \+Ռ"JA ԑj\+ʰh0V/.9ǣ$jE ?OW7cZ:actY--H5 teê)$ťp$% ưhP_[f@.24q3AR9T7689E~5ˡg#)H2S2)9YN%wPDCAՇޘ҉rsĊp@H8K] -=nL`/}߫J`a)bCe _]3d2"eNR7&p8Mcssms^x!(5 xrFv}FYMsKWȃ#zv(Yy `M4fkO%3fj0gȂGbN-JbHXjB)(u풱-aF-=?lވϖw6U18gx|>6\S)kw|VQY[07(U$H+vEK&9hK>6dEO5֡X`v~ rTI~Ӏz֏XCX#ߠ&E/Yfn6Rj3]կ;qH_+W*oXXGb 2faN2haӯ_uNv&7>ZɶSIؔD 2k+/ Se >ŗ [{|iT>={x8qKrBLQkWΞ6P[a BS*|alfCk4xXw:ii,q77v$\sŌ{V>*ɔ |UPav]ѤQΰk~uU,![+FK|(M)o12:#ҋ FNkջsp5ʹZAVbfn;"03ߋHyShkZhۏ'LfX=#-E.UMP#کt`|6TNtC@(`&6ruў!țB9_-‡kjYh Oqf b'5&[$2!|SL{_.69 7gv0eճd`[:vrN{hR=`l?<{/IADA,ze4D +G`NCno6k2$^toMC-hG' +UkA-;0bCh \lXsYۗ!m-D>zd ^Ohd2Q燾(WO- ʥ ;$\&7qXz`=s#[] ZLʨ f3K]-"-Ui4m.*:@C Cwxġ M7 gw0-DcuXڧ,6qE5[; ׈@H(0BE*2n5'y'=f[~VrՍk-`NXPVY+e܉l\(Vm׿a )ZhdY2@ygȅ]aAGi SnO% 㟭^~ ekL&.`2ޮ N$y5ǝ\D$Qg;!(&I^W*ޤOWߍ^ [L4d%Ci'$cbB^F%`_@..ߎ /Пh_]NK&\>I7Hmby9#13lvDq?@uw@KA?cMb(%o[&7&rP [iVS$H{.F-(Ne*8͚2UN8ip-Eq 7 `7Y|AZupy <zfۉ {N h/*=j.R+mxL1MXk@q)tZ2GKctŨ9s!EUr a۾ݢLE!aL@}d6~ Xicݚ~"mu\|+eEc)-zDž}ߪ d}0!ޘ;"}:}.ɛlWXa)hs'7RyVsQȶ5XKϟ>cښ PXA)rk~ŶmaPGƑ^@;q7R 'ˌº_7AkS̫^&#@/c3@n&灄HEfRDT`];cY!-ˬ8kAh]jq|8"_NjK$ԫ+nvw/ .4ufp,3bU1{Md٩qvi )&t-/a  FTNK:=W3kCLii9}Ȏo@;.{arYF 2dZ'gv:b\ʝa}k;9鍭>y+%C$|fl%~Xڦz{G.1yakqFqJ1r;2qPeaK6jl]qj?!qŵ*'d&0Rކū _YHRx36Q[IᓷX28|֬bRJ7f#MNiYobR^9+UPWw7%r6ڕ蠲s,B2xV- pdo]gyC!*Up]O(赭xu~ijAI.he*8>ZrJLnN5P2 u1kAWaV56[^MA,/t{?׻ !ŭM|1=b+>r)*.. ol8*6׍"q5 a둟:+$lzLҞf])|h:0&KTbhǕ7X>9Hŀ'@I"!X$;s\rYεjN^9sQE{'k2Z¤`$%!n`vĭ nS uNh.+ ~Fg({ŏH>Õāgl"z pNB qcV1!(3I ~CaId^,Q,cω8\B & jO:#a #K_9Ĝm~ds+?Ba 8t;7erdw:ޤPYx?R=_:Y‡oj] g'rmho.>=a W/1l4Ki8A^{$A**@qL4ѻłݤ o & WnHbhQ1w26=۲ dՂr3+`!ֈ\?ܕn:OՌ.-(; '*| {CD)cH77 Ƚ`6j6D[&M'bO, ղxL 0cZ߹mMQi;1b/ +"Xol<9tUY:ƪ*Լ Cu/tCT$n,b&}@h'zlHw`QI]JD'Ms/9@NK4rbnԮO ڳW^H">-P~* +TuQ"Y,z O3b`=rImC`-@abrzv~r\jP{fU\_zq>lYM}eBP%]3L}{jY}d}/!$%0Wv$R9ٌ) + 8 m3rPi=s/˚|*Ap0;>T (M⸽'h;`M}+b8vr+qZ30 ^ws0 KH>X+Vkh{AMQ3b=kwD.^Hvu!-[YJ1]胮ˤV4sɯ_WȪMP^bcqU? EBQ봐YH^pFnBoПG\vJfF%j l"'E4D]yI|Қ޻b8sAaHrɚ{>rh7q0Bh]DcGnt.јû:j 9,NjJ&vlOoTڽ} /=8/3fV'*?xE R'߰F^.ۨ+v$NC&brd'\ϰu<o)kǓǒEq#lf`$ĔL۵F (e5)\xk^W)@^1 E\Flb Az>WHy ^&>q:~%WM⃪"PrR}j'kC>"= .,<{<ƍԐՙwZEް;9SLl)r" Dq%kꨄT0mm|`8`a@Ç3:JGL00dlZ ?`K^;b#=JK1Kp{hFU.={>s, CDg.|t c-7.6Hr,U|n~g)O"%`Uam;S{ʚ_E>cc]}M 7rHdgH+Lh<D:3GVS(s J+_LSM\@1^cuϴ'K#zpfX$]g+XK1k" u7OUJU]_L{ YqȡN0kuYHIH*??&2&& YUw2*6D䲺fX? P*YVMl?L Y"gr/QI9,Ajctͯ5mf^]í}9-A@@p;"_TsWD9 (('-3aq); `\?#ž7XVh'-ޏ 'ɼi듊'tU\e9q+9 }PP4f &A?:$F߈(گʜG(^tM+ v h؃Yp꫕#vр&gM}[9`DrXvpmyEN4ӲFsQǦ:{sHqJw%`0g*d2Hm-O!]1iv^)#32;wtz!uܫ44-HkQ|鳰$wIK+˄ZgoU#** gg "iS2aQbLPŝݙ2^3EtW"Ċp۰hdQ_<'xGb_z3'5dhVHXZd̓Ἴ4j@ w&)  rm8`bt-(H?Qilg@eݺb#̸"3kAsk>o!|ikI~$X4BڛoeRF<,PxxXcWD>+2K6i_%ڎ cXZ-d([_So|VZI#b&isNz(Wgm 1pB$wK:]gqjl|3:̹^G ?v,0l&ēFOV!d\^NzhI֋Dm˽%u#QM05=Ԡ"Y/5ʀyk`E֧&ȗ?lLz.$PT4j'?z9/v?w'5gu&jk'9Kς,^-P0wɫdDZV5ČiI*I-tee[grX[0lDjz}G6!$¼Uy/muл_8d&GpF=mx·pN+8Znٛ%lr* *OBbN{Nzi ܫgxnxo$'hD1#jZ8[< p\ǐqg 3u×CX~ѯ+#4 u6݇X>={p)1>iK5v(Ρu͓t<騻Y#=2 (#r|td:H).6~J$Q%J;LK=Jk<\, nNee?0:AvBEIM=JƘcSzVi c][ X2umk#Nآ CE_50nvߔƣæ4aCNr_s\4j${z u="aq(^rb&Ay] ĜY;84"a$\AF{RxtαQ5e%-ʔ[sƳT>@ "#Bo-DTo䳉26]>C$rC3@0\2O1)#.Lf a }XyQ@1\g` q̒޾ibǣpjL.mYܳ˺D*= x4hȓK؊T tD.TƪNR ͿEjLMA b!vYǦ)SG3;ɍHSU9$\A7(Ms4w2Ōuҙ.4% 6QBU,븏ꀤB6EeH*nԻ"Π (֛#P7~"є<1_tsgMWWb4v&PW?ED%aFѺ %;4Ni w|MʚѦb* t%+? l6٧E]q i/GU֝P<縷#M9ObjVAe~k9/0J+[!ŋw߬EnϤΤCE$] 6+ËطD DfųF:gӷ"f #EHzx^yBˎIox(#LƇ>h_D[+¤n@oQ)x! vتվp45XAzy58ѨRBrH Q}V(TJTD&hJgwNuȭ3hO E@= DAsMhs)E`OW(yu$ѯNlE&7?#qu3Bagl#qw %) xO)XaHA]N(̄Ǫ VWj ?I碞 ?D8d2ZCxf+EAG2y'r$U[IYgX\񁀕KkdFj_MYܭv9%Qi`J &tb{u*BBGRG*h<#,JqcOm{5QJ -ǖLè&Uhj 2a /oE RLԴtYvcOolfj~j w5^̠ɉ5^XW}@v +}{n7Z KK-UUvhm/c'3|w/ܼs ]7K Ηtt΃PBAѕQJB/$I1ůϻU2D\H=@sħKnԘ D`KWX1pke>A2__aovl8W؂-S1˹L%KDt e54 &܅)Ufbהֈ$PLZKT)J*.ds4ƮOk&2#WWkTwl5`X}}o`ymp #6]6ySKPͨa_^x*TExmA8;&k Iɣv:+sy&M {(jŧ_x_kEn,.fª_# $YUyE`Ε@rPspDqe^,q!z? [AÚG D{tc&Z-x඙JSWC73 <|65Rl=qQCc>%.uuA VR?]̼koڗT )96g9У]i76dΣ|8heP,<7r͸=3{H愨 AcDz}k.nk#ZqBu9wۜYrfMSgurxDF ȋ&,hh>C,  1h>4|N툂s1{%?\:e YJrZ/ *,ܨ!KmK+5z ̥MB׆ BeK\eLΙWk?ic0Xrde:6d OD$ω1 dzr.;_ n| {\(C/))AQ!A%uäՕ~wVWajPsM{Ǟ+z=U o79[[p"A,\)򤭸VAc[6F*WUs<>߽Ik3 I7 3Z ,ڪG[ JN{+=1BQ®{o|8GjċJnhUqu^W?cC?x.7~>S76vYJͶ|'M룊?4q^E$o 4c\xf$[1{ƒJZn+iU`%) X{ XvVS|mӚn%]`xV]ZC "O*R4A4Eg붹R.@;HXaqtL ?K)\Zuq!6(ʊ0x6+:ٚ4 +meɻO֐ g 78$Ӑ8ț|Kȩdɿ n8X*/xE 0R$; N|{oO;ERY2wTGqQLۈjzTUG.CӫbTb2,V̼ؼU_BVoǥL1(o]͋;0ʓ|$=qSX%Y% "{/*U%Q4)qF/{)8`MFM.uIS6:.$_=X9Oii{lSTMbmBLٿJ)ӒV;(E1 |gK=+k~/T i2E60 xTOpsSalO1|*,!~FPMvRbѧ2S`8|s·S-rQ)jۈ>%X ˔"g};e/$KxRʓq*_64@Ҍ:屫_GBJ^?qj8SZK@ωVaRra'H/ ּzЌ}N?qH[lh{ W^3@vGP vtf26WZOpa/vͪK՟/ilfhc49)}BK?{>4BzӂpZGb+'҅!h+Y]}U7tICC,i/wpof@V'sf\c"A?h\0<ᓃv46-wܓpA)9-(^[P(7J U,b*emTI>\h-y,s-[ʊK1wCuh@l%qyj@q\S yeWhk !I1-TvF paI~slIęhjD tܧ&[j/ѓk \_zxz768kązb لk LgA{0a)HTBnR# W6N z#"~3} hGEp~FA8 {&cdxkqPAn !Q.7mʙuJ,}ncMPP}O,=@7CX`#d䅘&xwonHZõ!xd8<-!ehWă'7 @$ ̿j~ZD֤-zUյk W+]?kgHےU?I+;z:ΌX ۫ GaVlը譐zO]l;1ӧ&`&;s3/Ɋkpv a-tSgyfRTp~džFǎBxL({w QvdJi9#CN$]|)'p]*_MNve7{H*^b]h/LVRSER{Z_,K)Q֤8Ym8r// b\)O_:n[fU> Y't]vדV9"D$ܕDF7|W.4 p&z#'o,:c;پJsا1[&==P2g}>WԵο_.U!һ~)>Y~ z!w5>4[.Qv b$ߨ/6v䌅`2vzZl"0x=$#Y8g`A+0)5C; qLeLFW7Ҿ+d")_?K|Tq*zoMG5ieY󽽨uĻCt?pq0CJemXNFܼ08y;@Oس7T;yb6ӒYa3Jzl Tq)y{`}\q责s@b) ;Yz`/_!UsϷ_s:Q cv4L\ tNir&\glIeĂGbJUHhrs J *+CPxF-L،j JkͷfF!J17 wiP_IuUA ?鎤1 [y}P1fm|#6wMa[ KX&ih=U[Ig=.ة2'}H+tu<%Xr<D[voxހ:AT$mVU;' ^%8(w|>|J3)d͌1QϕoϾxZC$nkrJPOoIonVֱ@. ɋ=gBdd|2@|KST}՛].2_gxpWbɹ1Lq&W+ާ|7[R ys߹ dNg󡉎oC䫫;JEK,Y26̗h']5[^vNꪷn^Q2:8>ܻbyT};\짌j-8 s*˞R-y>@݄+ (Z"2/q|R{v7G,9>$_q͗.<'jrST-_}5R [ձYH7s/3;9 @ h:՗m-Z١NiB(_PQo~!6s~Ce`_>]=F>;5.NB_L~"B%1SD:Y&1EtӨ =asf/ rI͋{E> n+LcxV "k2}oƗD0ܕ"ؤr22͂4RO{j:q!f\ډ(`12:=;IrO:? t;S)a釭$d|UiCH`}NAjr&3t>&9gQY`NĽʋW~X%#  yQ6'vK<j;.+³NX`RڎHKfXFo3:_rȽ9mIfHl)}!Opi!K-[NVHshXxH|aINOq,46[.>}2Oh],LFR3*QrJH/ٗ^_ckK#SR;b TPt;qn0k}b}AetݴUT ٪gWQk'GѝAO=\Q;~>{;sQ._2ڑ&-OʍQ0Sb쩥wjb|gz KIL[D[< R[W~zq[qI$L+܎XKg< :x6f(ʙM8"$:|ɇ[]CHqpW4~0SWkG)1Y jkhHElTp>3 8{䈜>}R}]$*Ў9OjrR= DcXCr?/g1"E}KrFDm x˼-,# .Ţ[)7ir6-AÞdMjs^vB3gV~RkVzً"L6L#7}1\&v34vӋE=8xK&w}BW2p(F)e'pAM:s`̃9x! >3x)^9 ASz(j]pjUfYA`ҫJjA'd{-g*-t %1# ` Ǒ i\,D%V,Vg/au37 ?bՕ0/aQS|y[57Pm8 ދ:lwe yRj ơX0{)uD !rè̶U@(vM i]0t 7|%J[)HBؖo0ҍ#HҺI4%(KĥRշ[&O|_uRhYAG,;R|xg}*Mn&%bU"71ssa4s<9/AA/Z^qLrԦg PmoP=x=龵RO6_ Fѭc)Ҋ u7ծ~1Oh<Л}S<[( <^svNd5NGP)mRVC@$?+艊[GT,բN4?-zl%^,BK2<Ռ'C;$T<(XrŽ|? FK[Tv>G  nۇ aQEOɛ.Uȧ6Ӳ%FC=2 !HpH!Cu<܃h>![pL ~[OI(ۍ~>e~e8te^{R3$dv$~t3i!UBd>Ec] v:~`~C(dCM{Ik32z@|sҦ\7X|V-;8I:9v%QTh&ɡ@;Ubv t&%C}._ Tf dp='@9}sHLx[mD}2h[h$lB jϬF4 J_Hwx39F5wU@kCl!L: . jU'lƌ?>4T(=ϚN:alW+[ ׻L̈́g?H\ 맶ρR!7{; E}@bt>d&1su*(hK{4Mň[,4>qs^z՟0V)C|yV2j9A`dXvJUvy W_%v| &^&Cx\xYt cMQ'+&YڱJjBjHad=.-V?Y'd:Q{x\Rẇ_ӿ7sG,["0,?\ Ի ۷sH3D#7PD SE'?:A>ҁ<5~m'7?DA2ɢXzп۾MT8cX7ݥu-HOqxIp94KÜ=uSǭ(yWҿP RỶU2m MXH`᏶X]yf0;X`UxٛXz>38S;@[W&iU ίnmŠ=weEɆnv"V 4@-.80@Y3U`(}^3JYʃ T9 òfTRtp'QnIS :Pe>RVVҙFKUkUFMs /﫷% "ZWF5{m#~bأe5kMrQnM!g7+RS7lْe˞"57Rx3ULBgƱ% b ܂hgvV"Otypmo=9G5SOaw01_CA_"=~g |9\'DW !5D:أQv0H&&X}ub9uÞTl'Y#g`վIZܙ"Rv(.LЯVj_V֓%'5ì\Ӑ=ILHõEWl_w-Ikm28RѧFRXZ<lj <.e5'xr(BF4G8hc;@6h;Ϧ| hՠ.pR0a˜r -%~d+LZ<2բ)̳a<+]4p;!PDȞN!9m)Zh#s[0*V]e}ma̳m@HTn,/֗x#[zI]gmNyqAKh>KW=i.ߗ*O Ui Z^E˒wA.Cqqǣdj&of|^[*9nICeTG4x!Fz kueC_P.W@Q*]e:L YґLK&A۬_K}S3̦/dkП pt>}AVoyK3o;%S:XjYn#IP{Mh,g<縀x# ~%NBL`:?g&Gb5ZynM w7|&E[\8Ӽi T!9 Q7Q,BB~Lr2?q4ԑSl=ڠ 2+hS't 0=2\K' qmZaH;A$){e#֜9uJ#tf #(qr:n8[vGxu{lBżwp^ToÈ̼;@85",kDj`)<@x\SԪ|T ^W<_Y1W,Zi tCvLqtVF{BF[l6NB.En֊gh'$:lqNPn#k3̈w}|8d( 8zlX I7dSύ9n$Qv0jM5M]J|T2_q0kUXLn5GIC;tt)8_O7_ƳœXMi`-}'΀%6KΎ43 !&r0G,ΖOz+DyU0K9`:ᛮ֟/-:+ DlH46Gs>-YL W.bk8.N-1t<40?r"e5jIl?fJH"WmN0ڦaɏjMN0=Nǝ(5}Rn҉.}nc8cYv BF!ɶY4th "c[>BɞfL/Ikm]hYoc@L6~\7Q{~zv8yhALW g&譀WF>:|3ٔ'+lH04s*mxYSP5S>&Q"&,cyH٤ GfQO^qw0ؓ](5򻄭:υ!4ߥޑ_UeʘӤ${$(o+X5S\đ_r ^QȤpCO8*wC$k5 ]&n/Psýe*I͕ec|뾿(GYOc6f T,L6n al]V_  '6v % fR[&#Љ/ ңEɓ`uO?L(N1$&\-d*Žl",ү+:(V4`Fx4 /ɏ#=j&n h2X! dP Q4%(7!utSHۊu'ؖ^ VQ ۟cVrIV(7 jI2f()z|sTQm~:Htu`u@¹;nV=qP0(MGH 6[22iƈj54>Tao3yFyB9{O@s%Qn(db8 Nc&:r$PAfFm7toPHCZ2 e{{!<-8tPnD>1iiCIkY Cyܲoq_/}L> de™q.pQX0=c4з$ӏuZD^b'jKwq7$o7d viAj !LZ`*?V3lI#V3NraKrQqf2,bV)uR2j G? 9)pO 7P.OJаuNh1jmZ+}6#`ڽIhȐS4-ㄍx]'9Y}>ױ0SzFg3Xp4#j7WE'"TЙ Cw ;_pȇfc~/GdN_HpޯʴhZo\k|U#6v]âV̚.}Xy7ڴ.u5$fpXNicxnLw1WKM:bR( x^эGn&QYLgҵb&ba~Ko@Ұ^{7@'|6BUp*@FqWk➲jza+ *d VlC6%__ӆ'w}cV\0vʷʲ>㋏{-{JK%}5Co4c[]XN Y Βӏϻ&7?ʀ.y|D ʡEg6Ə|DtJqdž)ABrQɁz!~)АࡍĹɇ{f^Q]ёa9sK[UM奲(h>( `= /[mݜt@Z0 1}uF~O +(a`*7 /ΜۢgS0_8.Rl>@&5cHo,p%"2{EqET+4[Y㮧!h ,j㳡aZAt6:(аR{C ;j)(%H=rGxM+D4K4e$*~uHE{ܕI?Ļd[Ejk$]=$ ?6hU75~i8'-CkOr>w_= D+lb> ė_큺kk˜X2l$X% W4M&,s,y]R.kk|H̍uy͡AEpXEf{ |&d#_B(nœA<w퉜%׮wG~s?H=kʻ7 lXe^T  ⶔ+r`[a8mK%)B]KNh>s8>v] ǎ2v$uW+oto,t:0e"9z53Bɽ%z `?IbST$ xܨ;e3o4g?|.<HO^ꔀȵKv˚;0@YբƽM?|+OH@9ĥueU3_z iZ" oo};,VޔX<݉;ΗOR!n,<+^-鑅Swc" cp6ЪȟyjU8ߞփP{$ B>&,s_O5~ƾN&3^!IIHi$!dTas븊SgY:JEA 'i̋CdQ8iQ %kYj.p2 2u S5.wQhȼ&Rc%]p_I'ULnbNLeOfyf=)"" >Q}%U8'!Ke~ᔰ1q \`֚-f̋*l+b[VV˞EE9,LM0~$.A=~f+L-r!{΃gX¸"Sˏf=V|?ao4Gcl;)}At6# ;\!hCiJe biOh#͹̹h7LBQXwm B'_4Bg4ud !o1|OnX29$g^|ĻlfƝ<(ǃ(a%\{J|}ف2KUTm|HyT&0Q,BЗ}! qtE37-q#&t.s)"|#BqrSǁ_MH"I~DZ 4h>A(g@|i$XBtq$;"uV;d~<",[ T `%YȬe}v._&M3~IFG#|Wp?e~rr膟tp{8ϕP;Np6s@<}.!\xk^ċ; c &X28ATR7t ӧʗ5+0eUZ<M[IJ_g`5x'Õ,<I"9ޔtabԶf44jרE3!gU>[W .\x/@oAp,c=q~ywt*da!kKq0VJxƓ;iK:jarx9qT:nhbN3,nai  JȗjM`lӕb|:w1_\W3ݩH6=pe&ѮL(S?h,s?V$u.d A*i_73aG0`&;vhV#woOkl™qd`$G<b.V4CE3ƛ{$g@ϕUմpR/*|=`]u=x@'eP$xEI)\v(Ŵ# ~Y}|U@xNfЪN *v2f063͍T{w'a`6R^dmX J >ƹdiY?0ב2!P@$룩v:Pe`pg,L ?ܽE%1zPcFıG,}RvT:.8n1)!dV?P٥puM)I 0$)׽"{|&o>93rZcf/nfŪt+ aReGqu bxŧ0[YJepEm|Yݐg~D#R;+ }z_6i7, gR)3O3$Lb2NTEnH_y iwb؁@s2P[l)%J_BzgR[Y9Qe/NP)k b_gYLc}mGaL1xK/(q%ָ\r `*Zٞ6 `_Bw-}n#%Yr<sUrtm^ H$IFU$ 5pj +%ѧ͵@;\e=Î%{r3>̅2xYϕE.bIt̃X6Mh^Py͒_yjP-RG?xGך8ߞ" {KLVSC@\Th05&OOSrcB*m|y5-tJԨ4J4M6 YxOVv}.: ?޾gu3`en;,;%Lz ?fa"xT]bGb } X0+BsZ7i5!"#CΝ>=5P+;JH:QT晬!˪sm1I2mCWzr<}ZKnD (;Pa]Oւ}j;5 w2ay5u>}Pʪ8w{::<5B< 8Z)1 9:gSlvWR/v:+FE\N+ W2nDYi%|հP&lřnZSZ6B!C &qfx'=!IW|@4رst..5JtmjptT>Ϡ;1\@ny;j% H@50d{4gZuލbi\RO H&J$ '5T&t%|.& 'iF$$+;tco0/KVD-഍^PIb]0A]7%u:d#fO_㘾 >h,w~PLf}~{KbL@!~$ؠsr|zT]EB VOr;ݴ_A񴛲,w3X( jjĞFo}DlcG}B<WEttv)EZh[w%u} j'-I+v3X6H%G/cY\_[ /!cI )MZk܉a瓮p15:0S[lBa Q ,ѐoMU hVpr?^pq WQgؤad-ܶ;C7ղl"G|9 i$_Zf:$Gk/fz]!,M{0 6fQƞ1^b;ڼa?#Yv7̦"N4 +vJamd"d1 sтY$(-kEnX`&/ij&{~Ḭ | VkDK4 _rӔ/YmҜ%:{=RA\S[י4^)ɸw튼XPpfCJ?]p5"e@lWǚY_Ý/H, vXkG0n*c@#R 0H sUC{i- D16[aCTT@ňpkhnStg+PRI9$2UAMu>@4ZwM((>Az[=AEq7Pܜ +BK.6~ǚ%ʗv+St26YH`EֵqP2O~qR",jucGhi(:@y,XnW*0_f_[*n<{x>M&|"Cda#RƔ"eKmLXo?RB Z}k8DRsZ6'-A:x\лpu g'#K0aI4c:QR=t_>ڭf<\!浞ُ (g45ηʡ`O[e6PbZ*.y\}#*u\͢Ab'y M,]xYLNrHr ?0/ qSv#>ԶCTذo TНlQZc R314'FXLD ϕPW-۹CNƩ7Fv:wpӓ㘮j1QpC7$^w"MFFpm ;T_spM%HAf\cW} 4aaAO OLڧcBɃ 0&zE| ҹ1z9N03E g\4h,e*6OqN,FTf@q]dnU Ǫ2y_!8%RHWEPeιСEc9]?0R*cB& 07F%i0W:/.B~Rt1+򡘭D 'MYmWVME%ƙ7[#c*=C6t{MPU^pujJ>)tbV.< tֵԙҕo_e<_km_Ky!_F 0UqN?\'$LN(_8eY$Q=/;cl(I8]sx/f'љbJ`30ߥ:9Am w6/Sܹή,؇q"Ж Mg_( d 0Ѵ+޲K\coT> n] q&.BܣBc1_6YX* -LK^dJ̢{)؉0}t;,rѦrQ,tu4b͹\RX|wOINfK;|zATi£{H4>Wov)PR|ϫ<ckhlj{P>=.-KkþRt]`/p*χW{EE;w8M'gOsFk7,txf+4өj8}Gg4C 3z2\Yuu(Asy1IMQJ>u0)ʗZujdue;,!؊M|{ӳk=o%9젘TPLN="IN/p1|2BbBjB~pLEڊ\GMAKf83Pnk.U yǨq-{I+l$,"[е0N!*in8٩ϣ sat ɕ`L;xsrQn){6פ%0>O%<8#[j}knLrZU9 umײy]}cn]v %.'Sb~_Sv2*I;9U`#uH8(Bh: ,GA:x0@n,[5k4C ;"oE^oZQ5sMpJ{ Ye}O2!bi11\S弄@[ӟqO758NFJY##  s #&&-SGAugË |9jWSpdՄ``Ū ͅ_)%%-k ,D>tpmG2$1{ 9M%AܗzEۆmh8GKX7 : KȾ7x_ō9ZH Z&oBҒew4 R&ogط5"9)u}K\0t.wLDK8ET0G u |!Hc (؈;.Y:X?jH0W\=.v¹f&e0]2A'%l`~5H䢍{9w. w'FL٭Vl//8OrN(Kص*UI.K3jYϖj{HbdHo fkJp+ dQ6/nNNQ tD34HƔ QžC,lBZ(+č7~gH+ƀNb-q%!a̠)@OO$ڹ׾H5({>!Au:f4َ:BϹ/* Vsvy?"X<-Pwg|_:8Iٮf gkCa˻;RvFN:vWx*'~qn߄L5QaƗ=qL8VgkO_P*4蔔S2U[ hk_ ): h`8i9 ^[.VFym漿u9q7}-VMyf! :[2ᘕGdA1x\1jѕi*@0%1ڱY=nqz9l S #nVUf"44TSt1G3(,l< #DvpCpԤ΁]JUQmW­[s(NAߢ 'Uqr,7Kjokb&U.^#"9})5R?в<@M(k;O?^}e#rBK0וIuZQsk}Jrp\Mqvba~3=q};.?eʀt%,)q"1I u"w}kT7bBj ebo?+0}-z t.qZv).`C-uv^7;*'ah{P+,AϺG:O=(Zhx)&Fi~VDWE! )i_GIFSNcwV GJuUs@211CO?b[M=A$9h&@&m8(y@~oRWϳ}xrnBא(jkפs+ bZFmC%$ܿ,HUHRʉs6M˒& H><W'=HNEQ'[OYE5nK"?<蟢/mz,)`.n 6=zRyϙqQ,M ׎vxuǤ/>I7.uz1;n,/11?^9+v8My8@P@oaAR=.U4Żܬ^$WMƒ۾FU0i^_tEyYΎvE(%eœ r`X*%l.e?t#Εa^;b0T&'ٙ1ӖQ_IY s"O 4. 6jz"d6hl7|-hcƃ }˹>;i lm>(P&yE΀^<)ȶ.m5e|t3[](C| 9|Z,`龕js݀O(4L$-bV v r켅wCd}X"j!i .K:ȴDfخKõP/es،:Y׎a]czgCF7e#) wGuןL=@>L.kD-c)ߜ%+7zt !oxĞwoI1s䏎0_qáJH՛ |@{d\cvXjvv~ؿaVX}!ȏ8G@;UUݷ:͕pvU?`_9rel?1].S l!vqT-٫dg\ *G$Z1` 4TY7pFrs~Fe% "<>?^Og</ϨyA-]QDkɀU[QAu:odKQsP@8&p(~ZkMS+ s'8f4Б'0&"8Y7ɆmJxnQ--@1*8 T-sw6/~}i-#2M\H9K+^;(Pwfj} S>a!_S8lhEሑ{.3p,ífꊥ7't*^y&:EmrR%hٹ*?܇O1R(DQ~`{4ߖ)ti Sĺ])Nh:P0 dj8}@ b)dcG=Hs'm`)T4@~A,h'no@X r}[`<|΅[0Ҩj@@]^IaCqȀT2Z:8A^`&JoGLF] uq@)oT>{ h[pwz wMT}9YS5sRŦg U{;B`UQh8D:u!5"6c#\ Z UZJK(nЏcAt A ~g=` ظ~Nj~[tl 5ꥯܞM}娓Ev0uOdiriY}&eߤ5gpjvFy3 +D~NA-1u`Kāۮu$w(R91Ѐ!S#H\=sȿ|4Ǿ*6Ru"goV ]x j8#ʒBHv uVEB4ZsRl֙FBX\=}cGf?д܆(s6ƱG \@zy .W2BF*N=*?kͺY<?P%EYT^k? *ί$6z;$(, F\A-mķ?"#Yl{#7[4例u.L|w&AS.WfF*>lE!C>TYy!K6?j-66d̉-f{/A)#;dSC5_8LR#W5#ea33r/ҭ`E4L^]ojީV"i> Al2#OĪ)C]M#_:g.)"; ' О\$ZrGP ;ʔ;wk YA`Id:#61xG?#62.&p0s0ݪ$yQӻ*G ` "?>e+fC[mlG$Y^kΈDGxB vd9Wox#.@a.bwɎæPfvle|pgS6_ofJZe^t Qzd|ȗ$3uz6i,ȺabY\k Zv7䘟>rE|c\zW*OX})sH#7LhKZpEԊO{'#-d8L5"xRgO?W+Wm pTpj%EXU \EZ(Y*`3# .(6 pdV&;I%P0n3史 ^;nzt 4Q;KӮ>˩8*  IlB2pYAI {B%tBA(th4a!lo/9iP"9x@;2eCZhOBpbKAt> V[kfa%n$GVlGqG}(b[ڟDl1ގQl9'#c 7-y]4(M/*Pq'2Aiif>/gAc'r1d9ohW( : 7 1^O\ڷR(Mg.u~oWyVL|[ƈXqX&N m#+#RAc,uo.8Zz/8&FO:#NmLUGԩ.$$3)˱B2ޅՒKtDx1yH")F3!fZ0ٮɻ/O?$keuØogjߍ(rh)Wܲ?e=#2wJug?NHM%~# lG]ߖk /-3~2.=2Q~ sx(iB,cVE< \^D)%60à;D/:7tg$ +2ֈAx^`F C; qq(,*%~34&sY`ZҼ&>gi(@;/jY5NG@l mdY<ňzx c%9`m7NĠטp[q&'ӭVo>|sGLN )y(ls/e ⤱,0E*miu4@4>kdgueq7졖a1Ĝl,8C PˍcA@_wh%k/fuqd`fXO@VסÈó! z=Uuu`Q ^_o5(o CG.-%̆]{N'e҃R&ᲰeZ)Zo 1=t05ݵ+G,00nr&:e.E3 GRm)G3]" x74i*( .¶xitl<̚^MQ=A] IuS&i ۈr؍U}W0iUK? l,E,ߎ76;vCcw6xFt))nq*%Zw$n-~3+c.699w7ؼBFt"Сi3TpToqGkf"0ATAOp(?˙ƓsSH5BMR [/N{3|a 3!"#S(>ięr?m& m&}BZ xwn_L<4P\![CX]hC-ϩzºBV~$r"Wwi] @ ]ThVN;(1+3wl2p4Spwٲ3]Bza/%GTgʜ h]7WN;'IH%.`~Eq Nf H<'%X'BTS|PyZd vVQ΁tI*WpWkYD'w6 W3yٲ[:0lhݕ_ba__z5aFf'd.AZsLzאxߵi}HT32&^̘kj)એK!?=1R۞J>N %Zzsbbq}C#Uƛ, [t~iYے%?~7>$@J\R",DzF/hczx"{[$'uCmxŻMǿr}#_4sn[{KE;WuŶ2C^R| b:!7W#xA_sֻ@ԗbC Zӷe:$ H%<.Y,|Dj}m@{ \W0sk<%R]G#9iifQc'~UڙQ+'uydUA4I_zg%-^}2ǧT[E@‘m-36Ҋ6Z_Ac텘3L%/Il4Q"^CX.w+mB;M;̟6w 7(yIAP$kkp?HE>2x Z,eOT 9"~YRn', FϰݭV Y&_=j}4N)kX^pZ^d4P4f 5CX*|o D&N#L3̬e#- JD~UtZlC;:OoWV y^.tmChd p@rN$½lÿtvJ6mJp9ho`uPb8b=`oXh0uY?fhD^ijdLՏ%ÅͦAtuɗ>7:RdTA,%C` ^vO!7Do4JTp(G@~z2I_yo}R?shd-#][YčΞ]1!b*mW 偿wz ч+mc9-^ѫFeSk.j%X\~{kXlv__%Ȕ|WWBw/ca+Dnd͊ZWg<ϙ hqvZ mGQUToB. Q eQ ݍFR7Mi5|z΃m($ %=H2o|w:O ?dcj-:)UO8~9MQ#Yȼa@ p xo1K63k|.`ES˶tJ6_PѢrV9YႰ;x@ՌmOg&`.}HruN@K >Gڏ87 ҁ-}=d"PĎ4zX))ϛm~F(ϟjkKF6^ޅfp=% Fi~P^4s0D8T&VydinuIGEvw[[qKr"ZS q۱D `Νa[7©dٻmq}:Nc.ed z%B3!xeӊS]#6Qbv_u4ԏs*)+ a u~t%6AcY*+E A.w|x?' zdI$Z( U&ߣ8qrn:L?!{W. )Ή<`<gM0yF| ʃ{ü$gP3&Y:k5^k͵gW /O%8K%|4+ 3Tx`6t% 2Q nшG!8 -/5PcQp*JFw)DA˵R;"wq0E`i^2b|gi$Va,g`6BvC`o/m1u(=3ܴW")5ml2悎ËVC[h[w $@{P)lfų}nސ7С܇B`ZVXc!zaƒh.8 Qk ޴o4 d)7ޖm>`Sqj^uFM%~{LTO 69V~"I+ .1@֑41\$Ai NSmZq Fl6g,%uaPDžw.9`&Snb3{ݼ0Lv0oboKŦՃȬis\HbԜؘ0ı5L9eg,g̬~KAfo,Y!(mLs D@(9&<}$'r`HP2=@x]z]/MH_ i_Xw}mDd @tPtݤN]'ٱW]A21z)YMx|`$B$=Wޭ|y9޼=1oJy" |k (F?ӺB;xbG [Yƴ @BA5z[So Klb`;6-hrh3lj#5ؘƋD9M_bIaWUQ ;q||k fN[9QUX`.!aP[EUވ&1Z@ɷ Lwװhg,Efm BRl;CK1yֱjdY mA$K])WJkL39Uro|ӢyR6"t@eV  OCLPX^\%Ajဝ#ң {7[5e"W}9⧪zvLT )wY1J#YbK3; =:K5 {0XL%!Vuiղm@E#b;Uf$P T7y!IfݜAev+r^ѻ3`|Vx>RO6O|`?1k[n<5.` A+ih’7=FJۉ\[ >n 73O [5r5v'`{#KGqAxDq8g"w0m"qkֿK؀@Q(?Kٻ$+ QŁ k{X ^sE?ܞ.&K.hGsţ~&4~ R5e6ZAI, B| DOw<ᘿ? %O鶆 $"WR4q *Eo cqia(!<GT%C?{IYp6 #G7kq|!/b-HufZ&±,ǝ ӆ ?*tBR,io hTH BuhH!j0ETiw%q^lJ1ByJN'C1gƄZ<,_8;,WC%/]A4ފzL [Ev;})evĤ T<yr]VOgrFK{*\mVڬeMK跴:|gʘ1 tJT AVZ|N2gT-͛MWԥ2j߲kyj >:dtnWTàuG~Ti(ʧoNF 2.``^f(N}kK J W1(<F s\?+Ά" 8pU_R p,ZQ 0>]&Z a{Cv@`WVjHN$GF,8#7'+b$| 0r;ĴPN3I[hs.x*ym)ՏH\&HDf^321cӊ_Op܎=n"ֺcBHU2c p߯ ·TWk+d@!Sl66M0[}i,o8ZcݸRd#TPYQ:4o65C;Sۃ׬yG4-UV!H qLd*6oRP wM 2`1CWy{*<Q; ѳoz9*iCZ"~T 7sc(u798ZMHH 9Vix_\ xG"цlsM`  bӴ?]u1)*Hn,_ϊc)75h#@8*{ z=_rI>H?j7@ZgJu%mlVʋkrKP듉ncH $j1Ω<I8NtYv[ğn}brO͐i"mqvh@RS;*6۽~q$*wP(m Brɦ\XR|T3O,!qG|Ő9; !]Ziz'_ k. \q=K1+h|ȴH|NYajRh% Q?k3\j ׬16nÄ~B0 JAJ)Mڞjb@\9B $PrNj8z.dE]F8um9V !Wߌ<@2(z*U.\3f.JɮKZOfQjbANT͚hE hS=%§К}1bG|%l98yryA3:cuMA_hK?+(q)TS+ʱjf(J1P|F4P0 w6Hu~r,qzL 쮹wrNYt3JV X\dpSFUbJ]XS ( *D.ZWIEabù,|9ܱܻ SW9:39swZ?r=̊5²0UϢ5߽zBqIC8]s?tr \$yqG lQXxl`ԓ빕><5f3ydܔ3Jr.01s}$˶OI7hIfq3OZz5fRUҋc%16H78$Fqvik0Fu y^|躬^+>B`crRA;#̈́Q1Maw@w^MѪ0HrW0.v\iIn:4 &UP\'LWl 5^\k/ߵd86e=DEcN cGjC6eŽ}Cz3ϰsV2}6góhR_ZZOnXU*u6`_ɿr8uHdMnpD?t yrQ#>6Yw oR.3l`yWo(=n_\/MJw:o_LnYJt\r"kYbEpo=o FŢdH"?ves|_RBla &Nug!'x4YsAcu5cu-QVGY= 1VEHWkDq*?,mwJEJgy)،|m旴7\QfVK;٧>}1y{ ^X)ץ<PD UeKHD,%CFƾh5hK{B5+L8#xѨme{R_)t*&PzDyiOA;e^kJhmw{q_0UT1Tt Nh8" &Rw})J$ vl]KM(.8YL$-B:|YY\ah;#wViUDU9Tswj49]~Ip 2 ׍M1HS+i*؝Ӎ%B!Sa\[9T@Oc ) 9D8Yyb8d˲JXhG'}|!"HVQwȜJ/*_z6_cÕJzC-iwFO6ҀB'n?=q3l {aę&!Yb>3Jnj:2[="6QR#q?PG))Q]m%5?}{0v?r{O- :<ebz걭ޣDNH B̎|>,C*< ;3𚱳q`:pI2̔Xu2]"t)A x DO%\(Jq42&6y.Pʴ6mdnKa/?O v0xy ǮOOA;zr )mWo5ו1X<2QzeyAί_kt{tHw*,EUD.5֥n_!pW5ݹT&Ku>Ke3Pdvs+|J`]ω_ 6D]A'*`HBqv,I"G7^$XAʫL { bX넲q,ys=dGJt&.!kRN[ *<(ƥ|o+4OWRmӡ CzL`4MZU1-!|x d{~.\*1B<"C^'$m^0rbݴ ؏^2L?#R'vE( 99^ZZJlK)brLqr)|EnC٧|Gp+ıYC Qjֆq kU=[ BƸՍUO_8L w_6ge;V2aǑD@iwb}Xwx̋Qka}N4e:VR3NU]\2{:(M.Vϊvy%9#ISnn[c.QVLF !H%%+]_Ά@,j<_L(y ,mHdŽSUN$PGŒq _[j{ /Jͽ<޾0{ oÆ NofbPYRG=o!E}n޸W3uuSf5Vt[8PQz SJA؄dk1vbсjڞV~v-ʧ~9OdFDq.C9(Qk.(4ަ^4V]yŸjW[ݱa""0yo"w\ShNrȠ~ a B2NlĂ̷冡jXbh6ѝ!ɋ&Xm἟q% 넉0-~ۜ>|07L)JYkJ0GO89 Iu1eg1B9t=9W?OvT"ׇ q?6r?cj2.52ks!tbyTc2eQpƭgH݀C!c-n"hٙ/_dw^qFA=A"<~gH8ЂU.]z\a2J*VwjОC[{zLi]x5q §{)YDNm. 4B,PA\`v2ڎKK;l_]^`+~ " vA.G2 L-:)o#(__4XrDMQ:c;y4CU3 ӛ:dAs{$)*;~m#,DfQ,PyW=-Ф ah ݫȢ'RD?66[ I0*q l G|1/Ti8/GIeZュ)dœǠ H@ 9 0125LӴ$Irpp +Av $+Lʹi% %>"=ώT]l+gqz9(6`@Kpv9*aͽ/ WͽlBQ"@Uk4@v:q䔪FPglj˩]&7CS JC=~$ض{<Ӫb %J#ʈG,G?_ËAG$_|(Z }&v|~maךB~;Y06sYMr%O$"+y3 gjTOCnL s퀪|y" x~mhd! zNʶøRwYa.="+vKGfZN3V2-%a>;lL ^l{m^#99րBG$:$mq^'ld w1 nѺ_bo'(3>/1BޡEy{9mŖ#ouHξ!;HUu߶i];*FEKW^FioUB79eZ蔆JRߕrZ5%r ިH88rN߷Oa~ESFhx} (՛o0˟g P`Kcvȥ0n|s wg#q:vg|{΃l2Nw7ﶪ̞({.0~K.RyRU7{1Pe):tlaN%g-k5c)M=&Nr( w/7KQIr\OD\jE<<EFZcJ@K'%1ϞUny4yk+yKw K3q[]Rٮ"/l GuiY,0 ovG1L=߀g\ RKœge*Bǐ gg0KVk.|%,p椗ؗz1TͱޮKv br-ott// p`FkC $5䙀9$dAAI0sNueBQZކ弽XFmM>Y؉{V)[܋ >DGӝ(fDWm3(dŹ>:VVq)Qw*D08SH(X#VǬq{6,DK:t㯼!ŵv&11K7ƣX!SS愀VŲO$EJ,Љ]_PXĵZSgqĺ#; vCs]=®(#3M*tg.i"Φr{Ñfhn֒ն`/c* :7/ >ثBOx~L}g#5\45ʵ0pk{(n./(ǐ?Lt9ae̶ J;&p9M uO)+V{촺="} r!H8b]S %|a#~mqO&*D3S5$߻+0<"XÛr8ojP248nHpµY?k?ܻBMcv( ^Ng%)Wyu6aa|IFH hv5 $ϛ)nx8hrocK<_7U;/m}Ey&\RL;MǨ*TZ&r7qJ.mf%xq*hNe#fc]lɯmr*)X O$ rؾ3U ~t'S&T3n L|'_8b4MWSѻtE dIW4GBg?>} f!Bk l8OfhÒk~i-HxR~(s~JP|%ԧ:+ '.!y}Ql9FlgmofE.H?~@:` YY{` 6|v^xDN ?J4n3cVƇ~9+kv 8% `̦3WtZQ~B=Aq }N]ܪE:,0?:ȴb:B;JBl~Fr>{WK<|$6(m}Jo(ň,`}n93Zs 25ڕ*=D#sCr&k"@/%-Ck "j$ 0Bɴo<n1DoyϨ"QNcH,Q~5HVJS{g1o؄x@HUc<h鳚:a 4s9țqx\ \K`pߨ-"<p3_9ʼnV#e>&ЅUkr)?fa?M׈]Y׾yN2HyDZ/r- >YN* W4![S}\MG{E 8)bVC!=RXG9[r*>ϠHrW+Pm-h"7E C}b,Sϛ*kp)Ukb|3- !~  _xή}ӂfq֝VRxykHMm}}E!⑪ZS*M=ToeycZ]Vg@{Ώ|蒯w0g='~|9?.)u7p-?NB{O=񠒲h z׺\@$W5.>â0*YK2ed^PJRq$u:,׻em{yKX$8ETÜOV u7@&3 $lL`U @tV|e|jB^[S]KncO00GHPq'/SbتSҼ7Ww0JPTDn:@O|Cfs]P,6 W4wͻ*ΰ4,6 'Xwg"ܵBt]_vȜ-^ ohea^r "R`f**V;pLv%]ÉF8|la/NA.3{5oI͕a7\1FMDI(Vhw6&\iOUV[7̍ڱT^'mg^o =wrzp9)*3*Q嘉S;4 y?ys(kwMWy%ү/ȺJx4xNv˙,&ZaZPsz/3#CZWUdsR 4DeI"a28:B_}{家?tМS)L+!e6Cmu-wOb}lQi' D ַĞP;'Qj辒l\{^e1۫ASU0\{g c>'NT=CYȬl=^n m#FvT378jQR5 R+3Ε2r@1&ݾz~Ӳ$tlkp ):s/C o?}uf;AxFq.VfHO Mkz2Y/:9\7jsW*_DXD'"*aܳ^OXMZDj.ξT aA!8ۥۿ;&OJ_󡢁͜|6\ˊCP!NN g͹'VfExdnbXilsR?=g!0,~F3LQuOކ 1,Q}?/LFdдa&Pb8:y?&+NyNɌ9Ϗw١e+܏x& <0++8nR\־^W`Иz0\AG)'=u="ƌ_;1SP-$ ς$ b#/-vjNs#\ŲĞd^C圇t'}x5 R.Px4*LAaWf-҄ιmFW# 3t)(6Ar~ 8B0Hz4oB$Y;⑰Y1k`ϋuD[a.@ } '(wUOl$h{~mӘ;&Y{#۲Pb>]4}nuݕ[KkREKc&Ga^ZA:f/rjOߜ쥸AmF5e <%Eyp*z(B'N$'q;>U0SL8-0pv?FޕIX 7&}!EP32]29c.֛W;UuqՅmtW0L7@7?<*@`H?^;׽4׉bmXgp|WoU=P8o.~–l|cJjR"n;/AA1v%=T8LJb[_2z5sx2u@$Cµ W4^}8&'~ JN{~ܙoq.˩)٫P^K׻!;aLƭCyYl~BkW[;#pZw.uo?* SM.bM+TVeM=*}{>MM O5l;\Z7=/yR4#2u]NآݏK'S!-]X`yQ}Id|>*D:l?6}jLl#Q3_;`+68oC \Uȕc<=oQ A;>0;~v/] J+XZ솊fN݉G|hZVu.Cm9wa;t7Ɍw7%&0uQhWЂO 9eXIpPTD #ޭ.jHT ,Ԣ'dϖ} i9ʬe`gouDW/De )\ˌ|yaͺoGk yᲷm" j 4[KL֐J"[y!S>,p(J1r\qnSLׇ2lAh]@]JDܧYRsl]fog4}=W^Mo -;6rA&=n @ڀ]Ic(4X&E;G'î^lC)з]N]u,S+ςC+@Wmi(s-}8&;ED`0p,fʕ `S_T\۴ټ ag]"j' u(%JM?ƫ(ϺG(vϻz,0x-ijnt 8w#]rQj`,GG?ƾ.MMJny #( ʦ/Ǵ/f@ylﹱ>7=fȹ1+\%y^+Y>GޓPth)ˀҞ$99 ndc=>*$œˎ*&c^('p8.O*c2{5[]^H C;t{]L'!,%|eC2iDջTa]nwS^PؐhI\P0i\*=ѨjL\\^vqˀtZr|icFn(bDY:z9/Gz8Mg&ӥɿ [YYxՇf /$E(jMZ0G9K(Pp 9л;^dՓ!Dj(~^;eWAHN%} o]jYoQ,@w=!tcˤ#05* xp.m6""qL +'s 9Ptg̎Z,%>őjsMtuϽdpm9BQ|jL"1U5! @"JcbkdUT.M'7Mg`!P,Ɂ8(=>0ÄJ(d(WURjD5{g&m){+e> 0BIO?<+qI쬗4&AI lzK7H'  ] _㝠6N@rY :k2nj&\9y&֤š3+t2K,cE, p.?r`Vc+Nzj~̧ȜьFq8&@k6!fX9Ѹ(7@)dPSƳre˳RMutǎUtOuC5Λ]ܷҔ}w݀i:"rDWbO?QnxiigC^ݒ47&.ie:ˣY%ZmVK" 0YOmAt} ;iNK+v"q]4&#KuVv(YFþBTFW{{ Għ׽iye6Gz'jxި( 霐Y'5"fJף2HCvL7KIT66/"֐{b]ݛ!< )1CM6NH1(} N@ Ә"!({AtN鬭uC"*i~SS9]B#WnF d7):NIZ͆=( ϚQ(BmTYB +0m\ƤV ćXӐ4 xrSl/XAEHjv;xJ9BPGAB1F ҁJ<݇t6 -[^VsCh}ou]GoJrVO->a`jX4e.}&T㽎f!ᦐwz:E8=HP|}GJzO^}ԀqkaĆvX2(uJv _!S,ɾCIϹG^/{ ֺQ{Euhc3'$&fՏĪ3. uS!F9=OCeU_ʥ 06<2Z:E=5}6OΤ%l|.-kF}H޲_^*.)g3v#u tMyO''z + ?R 8ItgRP~-=>O!=- cG]{K_yJ)8?!N-.D50Kķ*|Vb3CжNud<=^43zJ.U{unzP&Z8ze )j^+)`S, !XPFT6I#x鳴X^kbPd8w>9Ҟum&6}ݻةPg#9؍~l=?km1F} Xѳ'|9OaeTK0l=P42[Z 0 IGԺb-oUb~GO%}eL 9st9AމV7D0j&K)#E wt$^:Oi,>_[)䡻 QlcEt˭Eޠ A#@U-_ ke 9لC:yEA0'u7%Iw!ڔA8#u[l@Kv6@ Xbv»le,3yqEOU[Z=m?7e7]vHsa9LsƏvrB%TaTty+eI4,=rEǦ-3{|(|=B6W/}d̑a@Lqd<"U'nF=tܥ>`#}|4 $-&0w؆'9ҠFe#+kkt q \Ck@ZpNku\h$QlKe/CA:V$A54r@{#DV/iuRwcef}n[Lu9Hp. 2'O\@#vz}RuB mu--6.Սe:R?eh5@k,}QlD%HuY7 &%R1)—)M>%9G`g%k",-[t_ފ_؝*.QkH-{rG2W' 5XasfP; Gy}\0|[5 @X1Oe 6! ĽQQ(ݐt@5Dsϕ Ե@ ;|G5 vE,=+)ˈ52h3R ؇,s55>Cgŀ;HZH][2`Y%0H4A}[Sۆ>Qv؅c,X&i26jĢMq3 Of=硛X*f!B+:sH*6a]D.#x;d~X?Q $b@⇠ $]u/`zQӳA!aʄu/~,)s5rl}줬TW!~s~f<#{/M11-8D]`u7n[_BVnB]āoZjhV JCasz@d׈qf._͠U;-!@>r9,fy4&_=d%sY`p9FȫO )F+n2/ց{?5r4R"9oÑ&viBw {Dc-\=PX&^yI313_K0n1,1ua!Ub±9 vϩ&jrsεvnU-D/X[JFukbkgu]z\zy`5݂8qĐjG+3է|+YZc\F>RSidD\v5v9g)Edaq* DzSbvXVָ#`Wq͔^t$-@зOMp?|+^#-m8 UYY%>j!q0w9Q-cYy]`[ >[lLA#=xd6_LOCK^2@|r1HXG@Ƶ/L]}P;1 U5+Z%`.49mWuxu?P2U ݯ:0:#A8ăxCO~EJΣ *"kXOjYLNE([wԪۿ:҇1 xSX_1&fEI4 ef߅'uԯhw*ex^r#8H/չ3ӴIU&@lfO8?tI" COfB9IK]=d39F*M>7ĩP|}Ξy'ȲSrdt@x_ NKNā=CO0u%w69t4 [z@RۋRlRZnȚ ;_rlƋQt>:4"&Ui49h%&GlIrh% h?gS >>iHܨᨽM3`FcMKy7ͨ ȶS0!bR㎥28DqKVhs)ʢ |vWbR 0mf92TC}A@2nņ:Nb`/hr(1ASr[K㹥zU1*uЕvg/$ [>h!licQ0BoimJvŪsLI%7J%GY9"Hz%b3&?ޔ9R9wG|rm͔tkcX A15_iQW`Tzzj/)fխ;P+L=k9 nlFOt򾨧ꮊrEoз/U2Tbc#bmb@1TB:t"OzX[?1|fn DXIτ6Lf~Ix[^$l *)F '.!;%Zv ݁Dbh{G2t"C(%GbDSto$ A֫™ZMAWʼl㍀!O2WЗ|۲to)vD01ϾM|y[f=1+^sD#dU!') Y[s+\ _3"a%c6TI2ح+]mP*#rw-R}S5P5d+iw H 8+CS+>~3v'oʉM\=ux>\: <Rj;/QaoIOmB1N:^m}qF,b $>]Gѳqzh`\ۧSDZGnxpi>a4+=$'=Gh@dj(a{khSimLqA`.1$Aqi3Wzڄݨo-ѡ4ۥRBvK,5=~[[p8yfssgwUetmMbceiHxT hzB[z)8~ l2i *u{ZvERf` +^.PB$ԶQF ~rAdw,ᢤ;4WkdXٙל){lUس3"J]%msydrψ)f67밁`٠c9qT ;Lntd ݨ.B?bS`S٩OЀuMB4eXkUIOrV  0TG$־ԼOM$:vSua G.5k/U[t'XwyxxlJ=bvB>7XguRp4nBܶ<O4Y)V {l'1{8ڒm6V<!CXSwG 8;UCta#faiO[{ pvS:+yk)[(nj#aI!F6dxx ׳"ѹ%o}{eF־u7rk"]vˤҺH@ZM#a3L"jD\]! <#u ;,!;5%7!l ą%X{xn{VOt*c)D-%e(NH*ΊOso막-vqJ'z:ŬgVJimiMo.JZXfiӞ2P!W8z-'*m UƠS`Ctع12CB.lجWҌ! `2mɟ`XMb *m"e2뜲XFgUMtݫgeGNO*W0]cP.{Y鎏)=խbʏ+ z7+s aʊ !]̱聺D)ۮcGU҇5F'F\5IѤ^;q[ʡ־ؑA-E/Yl_ OEKlP}Hа\}Bhl8f(56yD 䠐r`9ޞf2,i-(녻#;"-)vQ?cu'a9 p3yĒMĕ63mǝ/${y΁I S6 o"۲έƑS/&FLWEc_HM 5|n\oڬ9<M!l`qYֳD f^PgCxχq%\E7 Ru',in&f]6m}2g?n2`N kt% X967{B;yե_)gY!hg I1 @dzb%q٧Vs$V g;Y9S2vb-$3RDc2dnGRo6Xuɬ߯yex ڃq}I݋h@F>>/[ME3KܪV.]$StFW qHI,8w4"2FҾ f&C->:e݃AG "/LbHƑN=k3=&v::c2y&=h5}*I:B IvRSr# ,3*% j>`>f Ͼ#5v^F DK6e/tA.?w΅6~ik<(~oCװV'kSIW;ZxH-1_k1K1KPWUw/5vS օ3"d]*X {>;_)w?4oRR:03p𸇹!O:7)1 FīZz7^ [p$^rqoPX%8O.Z0XȂ?̙B8фŋ=66ӈ5>n?Tm9; !0MMygaA]]O_XD #%i '!8쇗юvh{7zy2 +i5@ '\~H`58ݘ\ߣc.O=2w dj?671{/p4Y+74gyl۔-(1,Tz|/<)KgP CPՌzL ]""*d>RiVʅa5mm"IŽ":uF 01s_ sϻ05(S\{&O<=o.vx”;[TJ[$Z>ʸrn&>]|yXRݣ~xBX݊Wߘ>Haz1?T< /:e,3"p73FΫnfR,#(gXb{RP#eEL v63R`JqտՌ:B?+?R3:{đg /};gqea:%Fmd~CWtq0d1;s]ʡϾ8~|DF_Y@WLl +.(ҡ5wQb;RWH؇wKX9FL) YI 92oޟO#n#伉̴ދa>$eY[GH(ɢbX |ئzi>kj-!|X0n( =(pNڂ?HN/m7L.mpa,B4 tO <86 @/OaSF&ld}?g ^%AkRᏮ}J̍hc{7 -!N1>VWFߪ;M74\G2PX5vQ>yBP~\#pn 5b46|Fz3׼Cn(`͒c;)!VAwow&aL[tAbEГg usD应*Ftyh+y]O =c5[?,وMR wvcp(I4\kTwr!E\-c3;V)Ȑ-kV+_)XnKr51~ÝsK̻G,lWV O.9i@DԼPU]Zwĉap*hvulhV4~7M? I(y;uIc?Գ2F=VTP+Sp7ڴ% ݤC$3B~+ FH)b dt;a0T+8Exd}L2mE3Dh>r);#ł' uf qț{*d$}u9a d%dχhonBLKJ5Ituf@bSI@9 Y`{@!F;E,uU44\1W|\s| zfRF)ʍy% /']e+T mker EʘKDZI0 S{p&RC dXo_?\❝& r\:uXo,k ?3 ЎLyXY9*N$rRKb%/k-_Aлƅ~nO E@@v6Oع9S4NT?6·.Qe]#Iv`%pI-!׫ Pf!P(zZ1өE͙01ౌztPtg7F+)! j@:R"4H4I"ċzGLN%JO!N\V 8"^W@t*_u!$muA,/n_|}^9(ap5Um4e4@em#z#xx\XIn lvXp!I< :]#U魶T܃cD'קQ|,'Z깉EHjK<SsJ&dpW>=aWBP2w@v|a뭇v_V\Y:@Y:&\G39yh9+.C=IXZ΃rpu1Z7S>yK6-> Ɠ٬@zT`=:P@F[/̀=utM'pl4> $LIGLvXJ{eN@j-.\.laYHɰ;Wg%@}f$αxȩW!昲 yzrM'|Wx0!K^WQru<5BmGfPXr&!mGJ8`>1`Ϧ[h?+s-:.(~J[2ͱо0AJ!G&+qfHՐ'x>5DfRiրBո6V)M|Jƒ/1R[hRk/{˽w짹Pߺ=;ʹ t{`oca_6Gj3'LG&AyKP"M~Go  K -Ib x.F8y<l0M7[ipʼnfuOlx={ⱏI`%J\c_D"I[sv£xs)ݝDl_1GgFꐟP09V4(K qgd>KBv,?ߪxQtXPHC:J3uvMiҺbJg$Fh?TOSe{5 S7M/c `O< jt]㼷}5pA:NPGTmM))Yw~N`5wCU|ʙ#/ݮHFqHoO-_ n2E*7Y'WE9ٝVrՆ9=T2Nl ݳS@[}E(*l d{մNq4egg[q\ ' bv!zt5o@/1[y7o@khHt^oi`($/@oaZ}+FB~oCf؏0`9޳\MXZ!:TbS1ջRȦ7>+ S~]ĩf.`*޹ 9:MO^u~rLێVDO Hx2D,f:gvV)&f9Gm-N23| z1*<87V07:W ^_jx@,aq%<ϧNCN8bB\'4-44WiS Z<̨VLD&RnT{Nx& j T0A$ b CXj0&]AċFk~; ۃ%|jh'UjMHvoEo_۬7B`bP|Xcw5!mO5q^"_,nG383,)EUmqu$)V{^2+>{E9$Nwkx\-展Dj[<{TbpSe˛ cWՁdekxc_{~G /B;#FDqv[L=$qaV6ZBdϋ{fUe}LPb[ xl^OEY:r\"oaPjkpo`~7l/ l$Ty 5,Nk,P&,{;4t7$j =@=:ޘF}u2l˝BGd";U&*.5qjr'M8זtm~A-1c?B4υNo t'LIfF1jhQ;ģ BO;2N}go{=\*8 ꡕ*㾲l \֦9g+.?WY\M@#[l^ț@㒈ԟ1"@ ?kKѩ6N[C^C̡TR qȽ'KABdR}9ab4&jr_DuM\ sN=rI4y\afΏ,?dð;$$<8Kg_M sպcWcԲRJ~;VS%7Q7!yݒی?Z,+dĥg2e%0vK?1@s\fz|(HkIjڐnr^؋7ɨw>.v :A OM N'va#Rd^R"ezg9ˊ3Q' \݉5K[Qg?ͽ%R9Ja~eQG2#`;/dB=i-Y uQQB`Š:V?C ` ĕ~VCyZ $&"DJjJg[os @K=50e S֥ꑈMHXUKV(!fEAlX }fYVo q%OUbo둀tg#ku oԥL&L+F `pg&fA1j UX '>iӊ"ix\zf46AR]ɇTMoltM]d'B2uR>^N%"T͑A{Ɍ" rŹEރVWt5M?`_Nd¡g(1roNWc42PgIkU zd*;XhYmЕu{ROs9JӒdOd4cEuъ\r?5=,@\v׵OAZ8Ȏx&^]aef4gQQHmHV >k SғY(߻Pg徍?H1imq| ʥƔE2@|QAe˚ sƬ*(cGmWQ7Knױc@>JP^mRr,A$o_+'VRBOF=2*yz{2IYN.K^)U:O>?[Z%Xz洙Sk;NcYOX) 8ah^ 9#c\`| eN7>$P mbEY7uPHW3* G /PфѻrHptcwdո.עձ" 0I[No U mIOPS:vjLARg$ 7$1O^Lb?n["n-dM?T,Po]qC(fV1u;m4t*@ xOx1+ 鞎Z'6O*O+H;9K!{ ڟ4)O,-e(NJؔ gh 4XplΏN"Aw`?jzpLGG;.ssUߧ&|,r>cs"ڳ̏STWG ]G-W10jeۃ$=tǒ,$u{oDkc3Up( (2 9e}sC ֳ"c0ޝg qBUB1dSF@t0nwQ :O3osJ:fMW."J*VLnn&}_^9,ݪ!¿wnbյёpjI^@`BH,1Ȥ 'oKo.&^;}ԥ6eR$maGe0\1gbȤچ X&rzN~mKvma^P0sԉDk'2j,V4' B𗉌*֯~,Q"~S9p ʞP-EjqA]{OcRCߩa@,[Ab5G>3U`?yޯbKRHWP(0p7ztH;T1s9P|RϵшI)`^0ܛ@}&?|wfsofpq}Z2}ܨso6qJweWrJTC`")i_dY!{2Wsl;,2]ч6I)sS O/VNζFAD8gCEYDEd#X+ G]uuhL!Ӆڢ7Y8]bJ Xsc^bbHEY=_ Gjm\rb% TXnKMH^ͩ(/Zvǚҷ.o|Օ# 20iE4m(!࡮ZjuyMBu l7xx"{e3{9I#-7ެ%5,Io+[\&c&q7d!Ԡ4J{oįEOQz]rW^IFb}ӬVcL4 \ļiB.x=#,TwW6@s:EqDD.h3bʸt>{ɼCk)xFv$=/qO):Y#u 2*',J&llD=J_ƭ\~]Bz;p$VjѶ:SB'0䒣/l R|ix:DX^uL[Fnxv6\zO}"ͬilH.<U\1m x.dЦߜԞ1Jo&jJrHJ'\DNbo.Ȕ$WRo0K]@++Z9prU5H17S+F<2m R. 2Nu=׈Yb?b[V(:E:|߃D$60dU#GY`τ7chSM瀃 NNL?0qB3R*:z-z,o@ WRGRaT %Q8*0%pv^$K TKmס!n:NsLeC1`#9 mrߏ(>COQ " No} Xyy( @7t\c" =ZTlw>boN斧jWAΦgtfT})QkH6*6i!\B?>!e%&3^ gʹg&)/m9Fn]fM Fjd T+v0 |$?r35j(#ca$,;M6uT ]F06>z*:.>\*%vW#i?珋s"`DfH׋)!2UQP~T cP\lΙ| tI-u۽"u}.ڂ[ǂs .ЬJ^.HC\¿.ǷVpA_TMVoBhxL{Ѽ* {ٰͅqk#bį(-!ew1gLfHzhN N"Bt4+X& `KTo_sf'8}pIɤ(Ś*ߋŽǡE$]VQLJsj}]dfTP/Ws p,ˡl҉[;G^:-le'.%::\N ­%~ΐ%dO[.)d55F]fަj3`4-ظ-LYiڵԝV^8RqTYu]<{KKnѥ3<8E_ f0C!@(%\جm'M+vXP7 efdi(h'()zX4/;hFdDdA6m3YjӂKO6Il"UW!DR;>cJHŰ}R ף͇92P֘MV̱a䧃#Ɩc S]vhD=83Mřص xDڳĝ۶(I49|4%nqTRzr/=C tW0+b_s[FZ#&5Ifׄ6 :{TCȒ.O:m )w 4k({D"gz49Z` = vz4m9dK0 QlS%O fQCJRRkMz(HqheӞ';EAE0pycˮeYQQ}~R!,d`RFv,Q~ޮ@\g? Cgͦ1AO;g[ҲbwTsca $s'\Xo) {ێ_L7_}K(# 6qUUHE6#Ky׳~hb|Ƽ#b(k0) (p 8PWfDc [-ZE%_PY9b\aSPttϹܼRs'ۗuumR $b<e)/kZf;^rgtIr(yZSMx@3r|7:?Nha0=-]Ƹ캻h.k+OU_zP#ȝ?a,* a;ADsP:9Y9M ETWDž@%qrv ?`*F|1/פ1]7aׇRӛG͟k'#!nzk6g@!P6K`Ō)>Xe-O_2|<[iFl[>t1WĪQ>?)=$k{<,T]^ " w `m?^ a!$xy81 % {( @x%+`F.|$U^ W9VS!Z@DqU9G,&^0 ӪSGT]δL*ia U];15d!ٍh@Hjʭ "= ~Q=^scs}Eעc.jS:O  lR}UGCWw&[ '9uRlh=sÏl^Ik9Uf"S,^*K-'_bHܡע=YnY93EGQD *#sTtrN`EWȏM-|MZ R~.&`8ǖq*Wӣϴ2 ԝL&W Og;N f[,?‡z;.cq:8 y ,?c ۠'0\ȶzx#. f/TvkChes"2i#8 d:sx(% P&zLDepWСˬ`mEmE:.VLXЗwH{]rՂ Æžu Ӟ8|q;B?/Z0=EoBMz$0gsfTra\loXy.dG?>|GaeZV?w{s#1J׉C՗ej(QVԹۨ E7fǢeBK`MeMyt[G+;)BrO=`a+GF5*zf{gR|z~Ys;nqϕZd1r7N.HMGW$٣^fEH 4'NQ>BaKv77v-^E>v!~oʓ憐$5\-F5%-g-Yf bE`jMly_.WfmRQb_l=;\&gB{ !5 އ;M5w'NĶ.2$Qo4& F`H[o3&;֓{֟*T\T,N`CRM(nػ|65 .#~J5Pi[wbJ4/9=lix2ECAyPBeF^–ɍY%לæ2%,@_#|H.}> ^ z檎!96sm}Ǟc޼@{( OrM[#{'}lan@I|;2|9W;# eĪӡ[X6v\h r<Hܗ9|d)kE@hדlCl閘xNFLEv:j1(.YS&9Q #<{ưDs黥P%5 DV+[]L sb4o3"n&'O'Bg1/g 9ŸQRh~oSL87AՖ/cTD@uC^iҡx$^Wꫝu+㸅02LJ߇ZT#5ǝi/Ȍha$8'NPV>ѳϟh/E0򮸯DAjddHT CGǀ)Rt!Īrɰ;6 T-ڞX$?!Ѝ5COpc<_U)!Ak>Ǡ,5Yo+Р`}RhbjDG vO0HaV5m4-  30Q@ANFHvi^"hZdY:bFyWe"r 4n8`R:ېe 6~TA"߻bci(qfj!⛆7%ߘ2AgRK8NIY`<>}?r2;N}/_쀾30YG{{}Lsp=t$> SP?!,itVJӓ5h\Ifӗ |I/Qd?V S1ItПC^0ȓ HgF-2hڤb<7\ ڶf;᯹'O?12P|$%iƲcJ".)׾IsߛuXJ-0'Ňσ̹xl.u@ }6Ud8xu2)}F V%ո" DI;uJȱ-]xmxF7 hyqoaBا<|z?wEQ.WF *FݖM67Ʊdo)۝%5@[X:)c԰!MV8 $FGEƔ @PKє C+]^P"mQ?'z?pa{I3\e:4lC@`s"M+`.vݩ}]kd U[*i+T;kWVUcO0MHTW{M5b"Au/JfQSG+P~<+jiBE^\\qέbߓo}ٚM C# 숼E #~^=z j+hMfD2aߜ9'tGmo?,63{ˍ4n*~ ݱ)EF(8{7Бt3#Q,#׃wjޮ|۸AcFX@#"NBuЊjt>*>@xUpˌ `7vZڄ/LbKdWfE 5VMnRB^$v1%p(N8f//JQ 3uj\."4L;oShs I1; 7vvT VhqcA@p c{`9JI*?sꙡzhAƯ x2dJO9r#b`;'x0e1*MBvB 9bP& _AU>O)2ў _nje`p0/IA%gV%Սx4B8", - :p`[aO~AJR!Ţ]d:t1$5glY~?_=T-v2zeٔoZgqp*Ǻgxm9at 8w[#1fTyZ0lyc$>g2NQz90&n'¤>NS߳ɤڈ\@!\TOGk&_&<kM(+nΩU-yP<ź`bLLJ_j]WlgCeWBޞ? QI4\t[->iJx6 ;;~!lq{ɾ,Ϸ{ug:ѽ4[SEd2lIT7ުjdwe !D=$Jء,sԉs+tdK-+ zGJe0,"[L:pC34u`Z($- @H0ih)yϻ0eQr38e:B )2`9%VGx"/qZŒIݽ <*LBܙ.WD5slnɃ-Vn0xR) I;֯@ +BKn"qZ[Ԑ;UN avEpaXb k^7#`J sVJ,K2Xy5仝5%_55ǥ }p3nN T-'g0?iւ 'jX2Aa=P@c.cr/ae.l6MB`(Q&* / [9N(7pek{H;[ۡԠ`5 60jq.͔[mo#Đi?n`0Xxï徎}k̎0Gxfq34K8D J.cKugy Yo" Gt_cvPP:{-D/Ahi<6D?sF-c{NH|v>BW,܌%pzv/x~ۍFֱ;AL 68ժR*t 7ܑ6~o"kS{*pZVZU!zv0C]㿽iȧ_A :]h*h@rwe`]yini:с,NJLCېWgt:Pf/$0?G RBIT}79u~kW?W-/?0 ,4ƞ_\O)$7mK,S1{l(`t^ M?EF01o|to:_zxDJX%hY6j{vvR56Af9 Cj0cB_ЁD n=&D" ,?r+Ӓr5e49z^EGe tT5%zbwh;W:WIZvס4 cQ9xb Ј0cΰTPŭIcu}.Գ^ۀmp׼ 4&h u5=8̝d2c@noEaUK˾>*4Bb;A i|Y֠KvSUr"^Mד+]!;[zjQ.{}qOҌskM"K t@ 94z+&,KўyK)iM1kRCx͙dPDYB#=ϕ|aAAW8^ D8a?5R͌tG@}F .*%#AŒWޒ#ϛԎvD32IXrJ 8.81O՘ 5Z/dw[.4g?G<¹l% jK'Ul7Yi4@ץI˿/)zw2m*ʹ!UnĭShMW?Ik<\91r*_٬@:ٚo m-d,ɴ{3O1^)?eA5$}!Z2X^Kdvp$Dpq:M|KG@Ot3K뜑~,};,IfM`FLT !1D/LG(}r;|%/Rߡ4HKFE#+L>UoʷEz3ewl-gf_IqiGՍ6h?%R|M/נ63,gXb qʞ&-la˾m on8+5Gd_~fmYga੷ț="mXPk lwN_xqY5 U8tXDÚ$?rXMDk(6=`W-eg_Jk=FQ\gq_6f/g()!C1 a-d;$_w;yJ5+2jBGmCzS{ *)lbP(o𛯩 ҊN~:+ojD}P&Aq^b zVSߋ`qr)xrVz,7?GēcfRᇥ "Ȕ89,Mtq[#YHIM%.h|dnX|mLPg;* t’01ĆdSxwCuV)TW ̹|$ e>b3qH[P>-$.2CL̮?p,ݲ׊Lyq%T[,iIgI=2Ο9zOٍm1b%!lj_Í1=I~d"qԌD%K+4\HL2jpT 3t&^ *m;2.VR \=On"AMeK8r:SNN_rjצ_ 8{G(LP?tyT*KH|G9t]T 5i1m%.В=sdPU_neRgSYJw+CvIU{Msrd\Mf/ ^dϣA#N ׳*)lju2Ga$]ҩ&׊ ү,orui_ks wt~UNutxGPp-+^VR+ _٥2.ŐͽM!kŮH"3>qq0Ëd9}D5412UKNJ6هtw_j83oWm k {bQ K2ͅKȼ4IfU;yZ,|Si2(DApݏX' 1/߉|&ZkH[ģUrrQ(oVe5R- yN97Y-> @`YuE+`Q2 UīV6*ϩEN](&kX`oLV"n{q {:I$5}Ը]ў,ɔ(]#c),L0WB1nMvMps#:1(l2ʺy̜;mOJ8W K37 ,? J56VBslDc a( =pl)MĴ Yj q6Nq2V[v$17aiQ5z#B僚$og>5J_WUJ=2meV%h;Ӎ)Lp߀^~X}BY[k'LpEv=)}<DBi%cԪ OQs~Zp]fah ^s_ v2OeuY&S6OKp|]#^^մ@(t1)S){C7$ o {7&FRfd(yYJKľ X##2Fe5ѫp9՛Fj=Vי]|ϓFʅTi_-nW  %aSaz>{)7҂NTB]=:l25sѿiDz oXzcin ^E//JVf@I]juUH-d5\@%DS|'Wuapp9o^L}Vh8ozKsVOC1V[ WZ:#J(=i@YX_Uԛl}7wRu$Ď45k\IOpv|U!ss sG$ft5-o D6 j1]0h /PG+kc "WF(.[!_z p*foCϲB+kN햮q4[+TnTk/8 ׅI-FOB^Ƌcr*ԦR8VOPlfN וWެRH0=>˾bHYm[scJ('5}# CZd.nCqa΀.1.AL N!۸3w,X|q~S`]L.Vm=0I;krz1rauwpԹ_3`1٭ɋ,lM:OSm/Es=Wzf:|>3q$ٸB?FFRc/q]ͯ wDq̻\ҕ3\ilcPd 4$%]eT*do킜*H.Vss5GWs[zWWqgϴ>KA5$dS|ý~5Mq4!hjQ#_FUsWeHZ`oZv<A9DkyRD9 S13`hNyG9=Щ<1 FQ>Fݥ!ǂYB'y.`P[6IKHjaʅvnR$E9+aBׯUZ46ygD*㾰ML FU jDBK UD\n%H˥P: ԣeW'31ȟ VR2NE" 7+|A<=_bB 薳! X;ո1*2ߜhmp?8b܌{ ym/;"c|Q*.+Z{а='mrOX%u<(@pRL<gʮ= 3LJNjFC}4TL +^t)B;yz?z5dhfxΖ)!!TK$B=>WǢbLaxoC~+uK`\/!.uͩTZט6|HMVeWn} so(j3 ҹ֌Vl?nCϳ/Lر;d9bEl$WRmAЭ2bؔδ .)Vֈnڌ_O Z:IMِN]⇷\ͫ#K"öLڠ_&hN?S&l=N@^ݢewԬQ1?wLɺf钩 CU'x|qS)OsaSO )gmK2>4D~B`{DT-c7QSȾ!ΫRE .*cYNMgߢK oо?A|U5}qF]C'a rLVY _ xG4xcɋ!/#2-%qG??@CYiv& _f=]Jw=3V $D|B $@̣`'Q}  V8te4bBkH:3F2jnO#d,Ƈw%%#$C#<6]D &Z[Gf=QbTnuOQCJm/`])pw4Lg!6B&OKA.&ſBgMN x'a <([wX+"IeRq_|ٴ,n ^χ@yƜj 4I,_!nzm8cuNݤN!nOH9$MFг)F:g ^SQ\EG1@ ^n@tA̻gd kY_2֥0 2rۇun{ V%gx(~g S u{+o I{\}\`HfCB~G'3J8cׄj\H @[󬛺l "h9{g%@J$?W4iIIBÇ%=&Y Á SF7kc5;b8J5dn:}6O0iv=@PD[)=S պ.,uTt&@iTO$$5PKY9νpӿM@!=uBwɠ:o}rm Vrg9xG+>80+љd 8)X{+Լ\Yg>ef4f]OH aԓ]JіT~z`_< [;\:u}P1/*O'b Y`$exDcل=er\DuV ƟZkρ-:+^GɌ$+ E1#4w9#&ƞzϞD[%H/$WTo0‹x ^2f~΂RԷ7g)Qn r }44i٣S>uۮoMvwx?Cb5&l;7L1ҮXBUxty > l+?a,gxgUB+fh) PSF;l'5pBIS̚pIU),DFwC$yϮZHP<YJ |j͌Vo Q[0kn&:i($jqJX6n}\P $/om]1nHBq? Qmj挄b&Ab{j$ EQGy6ef@)dnrϫ%RJ=e*߄,ohg:9. Q ! L\?CP%|>!gWz(rtŤm5.Ks뱻HY-y?'Y<o&L-+K@9-ۨYXy߁]tj s^ Tm´ր7/Ɗw*%C]I>uNN h(5n ϣvse&uD?Az;=\qC$77]F"l')f\ƞz1u&򼯢9 ު$rfei^ 2a j!БĪ*/g)n| {v/hY3 o/ aGQ4٘ûzs (0p#f4yM3؏=r<9تU'DzȾ 3ԗ<Į h7Cd W1oQVF}ㆸ >}K~o_$ѫVt 5Ђqt.v5v98AuHgr&^wBpO„,wYqM:jf`HΝgxvcn;:tߐYTjz؇d'CJu) <Y0^@_m:S@6Y8eM,٥)s\Ǐ:}L݊uU⤰v:.í|++M/PLz䔰FrN%p{a |mYY^s5Z1QA뫍U{]*tzE~hoaݭCJ45UG:gIᏵ5u rj]8"Fg Rj iz^)R;W\vmR/rKqD⤦E}`P42V0] yL*E ÐX/Bp4}3LKVަԾyC诰BqD_P\֠"'Ho-ifM4l)~?'RS8E XŶZ\-x^ =A͟]]uѨ3bܳoȖ=T g[l@$^2+ȍkbv +H붷%NOT>1ldiusrGlri 3آA t potd¥']z}9ulg3) :DI~Usb4nH1شK9eڄv y8H ]9I10tgS/($^{2SH.#g<괥`# \yw"_&:fA܆g E#2Q 0"M@urO^'K8`m˙p~= i(iǁ ~w6f6bx8}ۿUʈ8p &E/>&R.U3.6FI(ZM>Obk~QqprRD-268zW<A3O@!xȻeD WRU#MGs籊?:5(,*0r CՒR΁3P ]E_Q6bжŶL\ uݍ61*^ے:"w%ϛ,g4gѶk 7Pf$t]Ʋtߎ"d,Y.) sH.y}|^ϧ/%(nծ41i"j>$EkZe3ڒU\w9^8ģ6kOu Gדԅ^#@J 3 }LmLIxB#`vF̌ /OchaL&OjUME/${ˇy[|CXu_s!cCxoC.=Gk)0ĩV'&1;+DT:a?D5fCB8fpwCMYc~T 9ϕHzi r /Zݮz{( UO|Q |`ݧ@`$ʧ^0`e0?k7`PF/ιEhg`@ԅGKQ 8ڐH5_k 8 f}Ap¡X&0ތ PKTFYf=Ճ=%Du:]9&)h~1ke?6,]뤙pYʭ3 \l8,|E=^Kcp?l^'nKsl#*C9q+ q囌|\{k+EMcg#a8I:5؎E]Ŧ2i///Eq#5X"`[S*EqBfcEGWj1XTlFI\|D~ &Gpג<ow;&ֳdCN.6< !Vy$ oUx.& 3B9JAq5n*hMY$ N&Y T-ȓMk*5H8=! TAwlל}xHȼCC%˷gت#{XEO)JuRqjoݚ+NDW&{>zZza{f܌byIwֽNcA~1]'a =!Wy/ )*@Lj qr )W2'+ M-S3A+vjkq0t8\vLOxCHyٞ<6Ƭ%pM _C0ά_pvqמڜ~jgf/ %_8Jkkb@ܹQs= p@ o*(Th}6wo$ *aa9E5Z>Y?t%5).a(_c~!ZY?ŦI&ݮbR}e f^Bs4)_x̠HGD 'ا7bɣޒfǷ;AX J!TԀuQ:p̓#yD!LLw &εKmz :FA ʾ.Z!'7:~4Pv aYDrq`Ԝ2d[(ɳ80Wd&oG?oVE]7blElnLme6+w:nA9jvqVtլsXƴ 74YOm"ۗ[A+ЯRXΌ;M֐i4q|jRO2q{p8;;Iukk\786xa20yq3Xĩ~ee3ih?f*$c~A<Ov*|D"MtO,Pj5* %+J:tf+ܴPL/զ 4hoaff\ 6E\XvYq&1a֛KH:qru?R H+glZzxqW6#MaQ[ \5l?=H?Sa;ZZOqMjF3qfܤJ>B!8YT$vs_j@<ĉɾw#(b_pFq{ @ L; x=8هImiK׮|] iڶu0l!Ҫo0~X˯kշ;'d u"S_y`{X)@ybMnb!`s&NYX-߫GC/U{4cZ ʽ!'dH4-jJq{&Y@ ĺ{>~O!߂K`C"=֒b '„$̑XF/I9 P<]`CrXmI78SZ[Eo`wMƭ ?@ƀ3Fv o6m~y$#T krd"IO3UžsC͓݅+\({>BJ1eeOtHm:wKASdYBTMI!iĺ;4Tu_V0=|jOwۦ1ԫ9%zXe J1!Uêj{ddMLѽI.mbI`,mxBV˷K!7o.M"U5J8933LJnU`?z zίM^ 85 _s<#fvL|r6w LA< &;Y/N-]4 *?'U?lL5MeX<23ӍӾ ?Fֺ2;|Ћߑu䟾ўnOT,g|&x+/p4u5a4گiE4)v)`S2bZtd;JS"T>H|_PHBx,udw*!YPclE>pFb$qm2%hcKSKЁ۶(͝9̓f0aW6ZpLu|h4CtrxO61>P!F)RtъB$ & czDo< [o UJ[)[9TG]%HlƦVQ դ z)w6Vx}l,y~Սk0SПP!8=aTOI$6&l!*_)$M|n{T,0uW>{ C͙EiζLm3%?c^ EwUY2?ܘ?݉l+L\?VW-@&>U̔OtӢ59[MرpљDc.sԳ%䯞Րp鉺`kzv{O߭I߃FJ8SNoFf/i͜Ny֘'K\|(8XbX![,T.GubiAE^a,yQ}lzp%Z 7Z7I1|fG,!wE@\$γMw}Lٲk{-6Lt/ I1w!,YΩ<z'Hȯ;P;Ap.S+H|6? $FN7^O$l">XPwчFqLKѡ#=N9خʦgD/]-:(; 4j7Q>T^4chuNW .ߺ4A,{O: E,Ef^52V82Ļ$B>wt ..<әJ q߄)M*syx*vXv&Sgfnac) eNb+!K}C!fۏ&f}KJ |(kvb@%JK]+A,TMw(qx6R_ ?QVr:h;3p8UiWaaZ5<"SJOhGo?~YJ{M#k*f;N!]0S_V :z}"\VL9GTLAgyO8SWnҫΗxh`s[ s[_^zfHPf٢%@xꈖi%*QBñ0f67 Dž4 B-I0i=pEMxN vEXl$1е Ql=ǠJQ0QUx7^q㥶z3?zVJr(Jq2a Ysyjo!:wxèփU0b%D4MZC(*M-{C|fq/to^͗&Re@FC SM•Z[oYZ i{H/.&j@ؾ -%J%hGTWD"~BJ܂n\;r9{"q ݱbȖpfh%^ ! n%̏B:iN'Vk5zRy^ډ,ܠ/mO.ЫweN/@/Իw{TS ɃΘww`QXs9gA9rŸʫ i~T_A( |CXs}P$Εt* 1H&B\L{;mQJY:|Ww&X *7 ͕gb:%Yfdk7Raݐk]hڗ [ l -*-PqB&(7W`5k@,)dyw?&@dyI33ƴJ2 t4eg>Bc2<6L\c e܁YDZR$PMŁlqwEop?9k SY$HPoӶL)&ӥK -z"ۆE#tvq1 glL5UIRii8B.J|QvfuGD~ _  zQ6 g p; W ԗo,8I}1*ۉ9QF!. EX&3Fc ~]ՙPpsAt ., HI=tP4q{j]> Z;;G؈fK|q̌MB<[f3xƳ+%^ Ybӱ\G!kbN6PR ܔF,V|MZG=D؝`Jm&$.] !=ZZ~YTw~[EC QSK |GllWt(gyK|45!z"kIn=DzHщ"$6 18Yor4xL9/"dS*¶pR Z1ix:2:0|CqLT ҐYNg\VU]"ad(-K|pbhǚ{+2 \$5~ݧ4>?ʥAN+@6q.+,u4S3]<8{6L|O`ϔcFɰͯ"Qpc>]uw:9lRfj%f9Z`m]ԁ` r;b78OeDɨ-BԊ(nn򄲒uTwkCfb,Rݟ luRmJ+ֽvkޥ[[Q% 5:Z*s\@+^]! PZMux\o&"}]p$wD9YfW7r++.WMƆGA~}?_ b#Jyr ̹RU!gm`2e%9}Jڬ: ?}[>' 2utGY|`NU۱qzyH_L_~;_ {\LQ}-Lτ+&FsG*Î1?rvB1U@dV Go jF@̕EtwlB*a+6h8f2lCqnVwpvݒ]8*?߭LS Gw&[tq-d _O}#KUjpXf{*׸Vli]!zϹsBp&&+C?omweR䪬+b ?,Js/}Րqဴt :VB%Ž u3A ȸ_[ PBߐ},"H ̩̏_UTmGd03Qдٲ[6 07 :̔$:ROy2l_ܙ;%q,}*H|{qCE3SrV?9³ݳ_hL+ <з/^k!7߿Ci;S}I FVa0֊\k<) hxL4M+2\1>b~UYjIYG]SH9-kcZ>w"(_T(wj 8yN`T/KuP_z!H-nyvٴE*d?6!Oo$ex O}9=`pm.YzԤwh"ø [Z҂=l4תU$CEJ>{.SU{m.)d>?(2,lѦr #BCC6MI竁t;ng?PLPtN!.ӴOgǫS+;8;Yh!|5QNU.E3okX[4rtP˄sJj5](GtZ dK)! RT8q-3mZ7,2mMtҹ fJX xu B .AU&rrs"x"̀;ymvbgeu,< )l䟵Vƕ0:W(Ɛ^A`E±e>U@]^K_"|7\^@![  zSTe /Kڏtɣ3R>FbfOP0kp8i w.EmnC2G2%!O޷$'KlV\rͺ)[w-U:TJ%aq󝣣Q61Jŧ-9JY=~ToP9:`kޛReA-/C 78iה+ .@^#%AKp~kN3'!J$ȝP>竛)aDh\~4VZ^n1W0.0=(u`B`AMefg k8ޕ#pEMzAZV1崬 k0i@m 7ôFf:}I"Ga|.t[(]`r1c=rRӃ4I _|5 ,Zm;j /8/,z?u^mͲV P%8+o>fP?3~0Nb뇸\Pc z70-i"3 s9tl7c[ZEly*0>[z!j*PkX݅!^,ӟ:Wgx90q`T/M[œ"U,延kE\ !!j W=k8n%2Et7=-jW&Μ ݫ칫9#2[ sM6<nP$ 8 ظ-znU45Cy#8!>}tɐ֢T00I1%^&L8F9^<^`!;Yd* 3bWp:gk<,"v_%ra|lt /sIfM.P L _Xĵ:Dȃ^kp~ Y6n86 F)r3EmGϩ`bN5wr m'+SIIm#y'A-}w+ 4zנHb K4XCB.XE+'E'H+2]߻!)Y&Qju0Ur N׺@]x3,e8i/[5~xȡ,7ܔIpySәE\>S\lۘ"һ8[C'óH,,ae6RL{0$4C뀟.ooƪ#>m0?ZB5KN >1db?X T4vg7SQ+ŹThb(^5]ѦCL0t^v `4  .$493\Xf3ґo՜))RclԨWkC>uD%*O,X"vzԐuAVOߡԲk] 6ٲSe'u*.M@pbA^0В ˈ 2=>0gūa0FiL$RoaU7;O VmcwAowY4iѸ{a.yt,eOiDe [Y.Ξ[Rz۫% Uw oaa4V0rLZC09\2  .{٧S#u~QqHl 6LkwCty ca:_܋aM\V?e"-*yzo Q"7>l(0rCFIЗE*j`Vhz;Ӯa. ec:?iM% |k\l嵤͟9)3k C2$?92q]AB' Nq,P #|م0dolTpbLE'РEKg )F6"#g}|4ԒiSƥNgzzYݙOF{ف{F?#B%!w)hasAAIDP_237Ck"0uKNl TjLBhK3]B 'Wu $S0ʺϮDAv̼oQJ5 ߘ{4X 'pؾaЈ6ecƯ. fj9U9ݬ'ܘƒbi@T(|"!a 8 fuyo|g*mֈK({aCFcnsTmхce,ݚz2$'{-qjhfθ-Z+@ЌZk;%[ﲊ*Tu^y톇 !QFOk[- 4նڿJG|dVi%F\Vk%аi}YF&P#Dک&.8pjPsb!6tyV_ߧBTtCXHwp.IіkmDخi16`)ySc]7L?P@:Pv )24zzOf>e^H~<*;j]PVlv+aHkR=+S-9"' u G~';ܭbUc߉pM(/j̕3\-6gu?[xA5@1C R[B҃3`xK`d,)0M fт˓AS]\hQG sGjnuJhTa^mNLd;-1qt̮gsz(-kw. Ģ5lPoۮ~dGY̽s%kFc3uV  8Lv!"{l;gdn:ȧ/Ͻg ?'>[~m=2*_'pW?W1j-qLks@H2XzмYӤ%k+h\;P9t rcG{Le\[N||DW4-h|A@v^k/i̦d9}ѕ9y 'h.Cm"{aLSr/!ֹ3ˋ0ЁsCsw[arӽ{r|E ={f ~{|vOQ/T1fʅ;ZFL%0ĝ{`ٮx(+oWgcDA hMtgu929لnNU+  T) NR/}im&JS}&\o 4yJXr2t۱Kx.UiCjr^cK/GnSqywC TJiͪO&x*=h?LA:rG%\ G<'n_<}f~znWȁ#TxdUM(pI`HkN lҙ$(gj]Pµ(JE&Vi 0vI=@"~T=*"cӬ0RsweeFf\Yz7T:*'Y '{ uČn,L'P<^f(&MudzfN{@={sż1*A_KB:?2kij ~nM &U| 䆥xYMg}\m8wD$rFܙP-N m.WLDӝYh>jd{&5ݨ~ k==>ٕiLvSV^t9p?,љrS<.Z(@ǽlC2j2ǻE$5<^aa+] vJb {]m2v_[98G摧وYn+{#>q06ϱ̵]$?.z_Nd2tCD 9|^x G $ѪBu'{Ti}ֳv8΋P&^"$P<`xi}d6Q Z t! `2F'=OA .k Jwͭ>Hgt;'ƶz][wl_ZC6u+a (6ځA1es}ۡO!p:OqަK^!y vaۧ8u}m6f{kCCx$.2ß5 %i(FD>2'p)f@Vrwf.>nSQz~*A\GQ, WAI 1) u 輪2A^)͒A\i!HC+ʖO2CCgo AܓC:s V /ie=rTq4O-*.cr քIhOٲ*֟Zyi,r+O['YV̢eLq04"WELQٿc-5o Xl@[*||\rYO!64!TPs}Y-Ӌd)Rtڍs@*Bn+SN'NYYZP$KB$8rFe썅ޣ 7g)6)VD`ު.6YkZ:o]Pv6ȼ٣33?Zƙr~o4̹.vYY$ɲFB<7#yRʌ?d}H2'8F^h^5B6UA?A[H;к5XI޻؇?gŜ!wD1)6sY~Ncs)@oc|UW 3 uXH5 񦖮$qע!bW)A"ӣ/}}udvOr8?ױT,M⨎s(mO"WԔ$\m"@b}!:aK܆eTo^)$l@|VG=&V򸛝?u)dMg9 {-G)uVj\w Gd ܰ6Y!_/=a?/ ʨ߉K ck'ٹ0aM.}cLCV;i-UE `c(=6dg/~/ \ny'Ѱq"NC_. zU=SS?2+ mRxX_e4ߏܫ@<`oek:I~y`Sc @b gTom T;RgBQјn>*/[r4,K1֣'su#LWֻOij3z9w'w;äa]swVJuUys=לRԶ"k`.+|3+f𝖢Up7'%pQXC;u;t3"Lv./.W{.zX6|q!¿&k2[+[l[U F ZyY'/+:dB7q[B?!Ҩ8@ Ɛ,R~ᦒt̲34?|d[ RjTAfK%ň| !C`$-&y⿵{y_wgO}1@%JdP<egGr7@技_42C-^{w5GEljcӀI^qynGUjyCV!'N0i(sDT+T1=%X D =7  cدM8 '0ЅwxrBFe x7rY/aͷyH !THM]jp-c5lx@z |rlXR&tԴDCT/QD~xFQS v*+3y=c&a-Y%L͘\w*:0Ԫ2 3Y{7V1VD,Ll0~4~qjFF5a<+;rJdNً8Ψۘr:PZQ62mmA0Z$ޮhILb͋S] Co'D^[9g #0xJd3 :Td)Tdd5pa8Yb^D=oiFxLh{ ,r=#W\b`:B{LDu5=,D$;|ťAIAC/`u]Hă=`aCr#gAQXe8ٌwnuqthVU.YBUf{lvʧRQvDkiOςWpt6!dUQsC`3*2]QPIda|+J)64T&gb,1-;8 .ROy,6b_1JmBvTuVۣn)z61 ( ʳZ$eHͣ1rrv#Tz䳽^Sx݀R'n,o@AeK-2Ȋ+- JXRT꬈7ⰶ?ZAbNn dU' Xp%P@eUA oWJC_9RG97ov))w>~AMZwRY)b) UFf鴟Qj"rz@W}5[4Ke_4>9n7rVM҄f1qz;*ZDw.s~t T/ _aU3=b*]ZlI1 [#[u;VpvܑJT3{b* ewNa$)] Zk;“cKvfq _TUمׄbA[Fe~4ɞ~H tҮο9 y^{ GBspOiojE%vA l:7drqޱ\~4яu0es#273O[@Vs;[S[SrUJ\ A+/gtH66RU#,\$&kX)q݁a> @27 jN:86'4NwZtn_bo9 FN=?J|/ŢWH6mRD2絼e'JVωָ呇n}H1a-./<=N[OX%@ݐ%_ⱷBt|F:exڗq"kg랛EaZ>w4<̻V3/wgn%B"?asfg4:X 0Wg2(LvR]60/'! =yD;=)e)Ƕ4<I Sul~)QCS >ń ddTp s!k@oRvf*&"FŹ͞^c-G#g zvȃh"sJwUETZ*+ZZ`-@GhL!ۜJĴRvZXNE+?а;ї6*z˪ ChʦV (ylݬ<*gb~*x9߀ļ@I Wyv Fy/Z .Цy\!&Xe'dlbTze2>i+WakhQKj  }#AW5dZwDmnP9RQ1Swj*!o7JKW`qagvGOgܫ¤\5?,Ȕm‰+I]Y by_-7< +-+nE ) :!qs*jN!QGم2Y죱v.y; C#~/NgL[V|P7Ăf)1 ҂4+u:B Dc*G7++*ƮZcwBƜvAr?Rn^><>z5&i}ɢ;jaNt𹊝)Y!ФQ%/|фe?ߛ\DEo_r"Bif]wjLpq009 tI`v="K\C +9Ѕ(mz94 8L^'Gbmitx%ܱm0ʼntHw@k@{pP 8 !f=22p]_xb O%?H[ Iݶ1+(ݟ9ľ8GOF_"p H(u=[4rllټRQhл{RCe;쪮N%6JW1)A3WW%€G*Jwsl`kl0W?V{h٧O@6?Yt*t )ȢdIԘ@ɺE~T3&.8%m^ ^-͸<6ae[/ͽp8)`Q鎰_uJY`~\+L>v@)X®oIɔ {7m(lf2cGދ\{ߣLmҰs+[d#OtFwkb'qxIZS2kCAY K$xT-d/GSʪD5VJ̅*֖t:'t 2ҭ4 8A#E ~Z}b~?\/FB")CrֻS\yNrsr28`ٖF KA҃D,0ltX $;~L&-z& @S)ns\ .o@El;RhԒv/sٝڥپFGnoIKP3{m:9VwJ,Xz#kc$5O/ŘFYIAp}#/WbSi})T=tY>(_(֙~pKJTBD.b7SN) 1zK;@p4m-ډtPN)fnF^B@&#&_iD@CL߹%#T %p4\s_"$w4؊)J@|C(|X?Mh4V3匂˜GꈟOBV$U+mnbix 82(*E䚊^I0f@ٍiZn`?I; mb1oq$6o@3[Gjl'#17COF;1ކ ,ӔU*$U+M&Y24!jk8t-eN/ljy_\<ԲZg!KnXqxDTKmՇ,3*%L`6ٸ'`y7]DӫQ:TNwZ ESr3a$aGq$Z%|`Yd:]kyكogL)*f1;^D҉"y0qd8 e|u|+^;5U|H8B4&Zj6 A~ϣ_{V悁yr撨^!&/c Mh&P7;N167<?Ғ,Xziw"NnAv9Q*`,GIN.;] rS`o-}Ց clJR=Pkl}^6MaеimL7#G섶1S?c>ؑ`͏7NAB#a1)33\ą^6wz(؟_vn\)3nEL`D\aۢL J!ϥ&VW;B/#ΉHXRN@WJࡵ=Bv$f;{7J-fJ W~<;q Cѱy͔@]5$--6ߏLN.\~|]&DtqbU+_ ǤzqI3P_j!R]nz_(`8kDVe4|dB6秌@'tUo*SE걪C=k>wD@ ǤEr#aW9ۊQcjcY0tf;B{h|9rA*bU +ɔzh!4e9ʝ#aNCKY?UcҐ{vPv 8߭^q>aFq` -n7F+ .KG:`KqFd'|Ae}bNALRL)x]S̽;B`݃"i{u{\{nܚ0kq탦/z||XYWޢ?]k<- X" ]2|jL'.L>>9/j}@CP}՞2g,AƓ0fT-.a8ƃ9z LEMS| ?62( ˮ|j):"J`ǣCB)Ƿ n%ShIF Yڙ2%bWq|U_hG4%ƙt}ynB#j(-7YJC5kA/d٦Zj}{ѫÀlz+wx&vX_kU`'"ɹZ<폔]'.,x3`e1}+9\l'߁mYBK2C;4fsb|&_kG[V{ܨuRC9#CF9C2f;:!NFGObZ~!0ZHQ'_߳;N#$ ò\ =J4shc^,O4c>H`"% c֢TZSozZ@Le/6~ќlGw@y',` se!}43D-52v1ǩ0)HLNSA*&dRl8@y5ʅ50/Aa_<~KAs뱯Cި."B[?Գ?yϞ!)g'k\Kf=Eۯ"I1heT o'4'ˆŕL3QZ'HK1Pgkݥ2ADty'~^j/jB&&5k ,ş"LER:b"x̵%*I+H*bE*$rvQ eyL2h:VS_(mD_(}^1wsK|8$5wKDDa)3K!{)k7|=eh}JcL> SF-hF˖lFOjí+'F@9}JÕBZ*bHt,m,JĎO%zP@ut\6z i6e{W 6eYRBZΊ>:s./2nG U@u/2j(ProeuwoP1kw$g!C] cSq6 jRqoKE_~+S^L5_ yi"u [2!8e|P'X̂(79-xyyʢ*>5MZ+־l8?#^a_%j+IJbO7&>1Q3qNmRZc1s*L4\HI$px#1 ""wkb6gqr/]׼VHiޟ]>>h6K(_zh/a{bsW tІubHLāL;ZW=$z>"{?w0J r>{,Vcxhj013 rݣɖǑ[/AdoF!}t߯rqf`>ZlATLtPNJa&D¹QoJ4j5ʔ-Dr[M*&hCیSB]&8d*SαmRBtz"g\5S*ed{u`lXҠPA#e?{sKVM3{< K=Ex@IN\_%F ҟ qM,MI\^oyji{H ?bIW{HuƣL).C/L4Ҩ?lێVv j`GJ;18uMm*Oc i^.f, 1X`C-#iF ̹shC+Vz"qj3`pKs)m|qǢ8̱ _ofuA-A4`ܬ uk6fY崤EЄ8o4bOBy܌0R:R{#Yt46>0VKvfdr]oYra&ʮ@q(O~.Zо_%GS1w4M/y/C݈ PKTi4'X("_,_ %5ZWLtsJh`k}R 5bQ:{+S!wgKHZZ ѓ fe9S肴qb;^oG0ljJK^ fx{q_cx 9Ɋ[z,ycO(~Jο}gZmޘF T/Y24e nԽm\YqnFL3c!P#C\0bt)UޡIt3GCOnzJMk4ՕWt `]8d@4#bKC$%Xn̪LZ>3K5EQb9{D7O`/#[Xo[r)(9fp%S©c悮IPb}Ղ˲0cӎ3H+SDC_< uxU%9)z~VWŵA'R~]n LFX  [-a#% #"bgb7q#U98^slWGԶ].~Og]```w")ֽϣf4z^kߚst"y%_0բEnB:B)$j7w^8y&:'遊!oNu&I?Iݖf5 otWIxl δ;A\*"ǨEnE1 А^ؚ!2M 4?\Vud[Y'OJnY| ڂ:핼s^SY_LWA.wOe6 =-^U-0$.d5Nt35t; ig mHV>XPFfO\6Wt(~-ASTCS!Rם)b)m??Ja pmn I<{k D!<0½ё { T!F{m!";ßkZq_6j"{_dFAݎ,z1|STx\ H !|Jh q]|{m x$x1mcp ]kt.٧c˕񺕊9"u︲* L ֪(Nz6 P!IehgLmD)PߪM,)M0+ړ]Cl2,ZA&dTF^4{`?OCY>1Hpa ,~t^/ i.09"+slgkN™9^J#t0m7PBNJMqo( #c3 zڏ}-Ⱦb0.2gh/ ,|$o}`hHLDJٵCbRYN mɠ]w;c?>X`Cc >ރbw/.5qň#zMfMr=baJFmf" gg  Β9TH&ll#`-!?5#lھX=3ݼC`_PZLi/5#oI=x ! ۉkX=gx^M?>-,dǖYZjFxƹ6+KjtG-Q:Փ"9UޭК #hN$D(IֹhKOs?QCV AK}Qaκa}943ɥ"~'0Ka^< #`񟣤==3hd2G;GFFT[&m|lk\Phۡ:;9XȔom''X qźϏ/¿2h[Ѳq2G?c- Rqmd=!HZ)ԩ$Z@~mR4@xD=y OE䙊Ic:j.9}z;Į uW^ :(NY8Yvd@7-xVQuEf_,&Ӊ)d7 .X 7l4):ȚM W﫷M56g4@X3FmfJ emTCau֟9RgH ˆ >#ڙ_WXX|n1f߶2y6)t??owt\EZ h[`h0utsީ|SlM̻Qe5ߠ~ hY^,hv.C%c6O Vo_|6!bIdӰ[ߧť1$ škM(XVǼ>liNҹ12#Ԥ_䅢FfZX}1Ei>=0LPl_fywn+aZ1([OWeKbM&mJ5qA,nn%x3`,2H|:W۔ɀ  *gK:jg>J"2N>wO@L`57DpBC hzyP8bXdW7y]Y%V;t?6VDv׭lCK?-H\zq_3,l܆#/~MڞoڱƹNp㥴A-:gDtpU)hsxCjg3 fLaGڀ,WT))ȓDeV:9Vylk9 dt*M+DAV3봍p,+Z !%sF NfC]1'Mi]2~`37#=6=a`]CcolzؚTw_GNeV^C\L_dZA΂ &w$>Eeu pwnQ DY׭@}[o'yy3N*37n߮rEPOmBqDNk`]`gD< I5ۃpy+*dI0Q6fJJQ&b܀\LЌc$D.V7~30j ~8R5n VdOˡ.Pr(HZCbHTJq8f?c`(*怇n,Cp 'y'Vet#VF U[8,0Cr9vܒV.B442㗚KKnt4*i7t2I1 yot 8K'tH`RkyOqCeRǶG\%4@^H _ 0 :2hbd:6b`㐑* 9rCF)` #$Zؕ$Nu5Q'K`*8gdbCv doIvva_d  _F^ba1 j>U7P,YqRSX P=ק~{E)ND5} GTI\hE*O5ӁTf\#M\~=P':,9Eh t蕓B{iђy~f=X\ͨ*UBKTh5.qUp]X>fLZr` QW#+|j)F9.,_Dͯd30Lj& q\,Jw}Cs΍A09 O p?)9,NSڥĮZQMTGT<^m6v0!xwYDլȓB lV ׃G];T=4jZ~fR-~ 3S d{cAU,8lk s}ի0'SJ_1#)8d>uY}^Y M6`!?"];:l7_I&KitE婜H-@vq`;<$q$\-I:wg8|uAnv`Y"7< 31Lޅ8#$|bf?vu2k0AM_tNDĝǂ1v 9*68MCۢ-29+u0o5] T8>ĺEic Q^d!VD1lE$>b:j-`Xk' ~n϶dDx3ӆpva]a$n"}gf f0s#:r J6ӼÔ״ FzRߺtr;zsD=5y.3§P*gUHpT4![ 9xQZj)+Q)P 8-e]?teIlYy<..ׅ#F^`3(W0]*o33Fש(3ǹf2'u)WѾtئ]dT$.{ h q&^ag*19{2ݜ(=ǩꖨy } /ҞhoNs 5EMkȉ BJx\(N Bi0B;)$L"{֘ɡ>֘5kÖJ_GKb_k0?y-Y*+T@W0@\!R-¸{/SFA <+Uz v r'&Ԑ͏J_ЦyPK[_λ ́~:>ʠaL0/\RhXi7m*{fB۰ZiQ>S'$rS"“gVF8rǙ=D90}r.D_ũup]kdfWApch={Ptg^|ǶEjj\,.I~-] PVJ>t 3НW(]욢,B{pyWSe֑;h 5y=|eTBmH6n;F-auGi<ㅌq(huMgoS2eM3˞m7vȻ{ A{s./C'5F6xD'ʠ˟EU)MF:;sʠp;Z% @V/"ś#t߻jyjgXLw"S IL/2;)6 ,9+kYx۪.z@uy}!X) ,T-hn('-WAQ55>)>sÂ` Wic#yYs[+?A,E]`fkyr=SG@P3XBQEs>D6x9p] V}mO;IObhKn I5?\(EȻ֬Xݵi rYljRLmt2);%1 YVPƭza6I64{? hDD#g^4_&ϝz/'ólws/%FZXcR',LL a705=g=(BU+aٺ47I:C5ڧ,^^v =кrvm$UP-Hu&d,?:6z|#j*_ H˔`Zb6cGOtjC-z~є;7t=h&^LAr eg2Ei2]̋SHHri/ NVtw۪՝`E'x#=f^r'itܻ'w Sd;i02wtFWoQ%(M+YHbѕ~<-exOc.6l_uI>*}D99c W7-ؐ}MpPua01WJ:QC\R]YU4QN'nɉCmU`̴i@)l涙۲eiãpenD@)QTgdh*7eV(RT;kШ)#Y>Eu0ZLҴds8LaEHiS_fIRT hۼ T3x~*᱌Dàeoy\;nϏau?&0'rgI',DшE{ x}v0CXs{)j96CԼ)%v#ɶ;IFmNu MR_4|plQr)~mxr0VXÿgN2 x\ؕh{?yHmJLd 64_V)qW{Q!=>M}_˂pʐ Q͗S d(QZDsc%=6r 6UGP.Rt]%qo9KR6# a!0E2.;Z?Ëݽk2rԨxC)@`b[dW%B/<F_b.X ZL%?'sUa:#^tGRMJrh1`-n #HdSȹxGs|&XgB+ad P#fKKHvn퐙z4$t>Mat%>chB%fi_H4gn̨!x7iSG %{?;XT!w8P@KJFF I<=u:52Yށ&OLׯh:f C tv~vrMQ|:\,Hǃ[zny{mmR >GH6I2I]&Pİ6N+RB,;Q=-If9 FDIfq-q"!)۝c|gH(fx;k2Q}y]%1 0n^ηgA1ʍrWGyQcut҉Δ+_*EJi!6\ؼ{FZ]N-7h`oWeQ0 q!7cI#ú4شJ/qX,eƀ& v;Tv:F}'4l#k! o:ȓ)Hw5U~&XA]26<,-&8Qg:"[u W1J2"ON Tes`J*28]֖~R%ւf#Ӌ&w6P Y]e0+;SœdEͨ1*9]&Ȥ:(taC O^ %:ca%NAA0{t7T<]-lM,Ld ՄUǖZIѐkЇKT S-rogWRS#+ًcc$7yE\{EKdY. {L.yG n}|:Z" W0Bu`;) N{-rʢE ]HZ:Ls=:T&J }eIY]p{럔6ͮA_e>X'A;r Àmݜ/!ؗ/ǧ3d닡!}|6y`2)Vid|WL=jISO>/jY/ =;S7Y,7@Yĺ̵Ox,Sn*8r$ hhdJZvoy;(q c/R".7#ػXgNZd}3.y?w%kscwkE+|2'\Tj~ u&CBE|MeudP`f;[7QFdD{P.B(htg?|mNG;Հc D21h&]\9^?Ⲻ40DzwF~K(k ?gBΒB3lOuSC8۹DqI{.}фR1 p" EB;t#(%>Cu%:[SiڊJ`b|zffOlif1vVܺ~@|UB=ՙ㼯HMky7ݖ>x^K xoY9utBGčy$ 5U\!ӀkVpuƌEn(NڬW&,S;_&OAUC)Q,9ZS6!dɯQ1po_EU<@vF6- eGHNKŕ7҈5gɫñP͒KBiK'y)BvY$c4%EFdYUh/iz{X.cȐ.,߳]0$"O\/DNLBo}{xʩ./Xq = 0 aXA=Z뭐C ĩ ewyL'cʾ]K[?ng9-}F=aN`3ꢂ."i.0]*똭`'SyPF6U}lǧ/B}?Cp^G<nKNREgW ({s|Yyy[FY?Ɖ= S]Eە|meQ 7N|FiYDVm P;K ݛ;˛Pt.g{Uϟko@NpBʛDŽt:>p{(^2K68D|?tzlxߊ/P{zmHd^.5'į\͟'n> 4*i{B#f |FЯZ]eLY9j_K(/:p|=7o[BSA~tfXD=Z:==Y +'̢HL+CCki? dOJ90|Rz]կLt$#w[Zꭌ 5EZO5VRh!L0 T@Ȟ6zkϑsؠ/)%BRD(Ʈ>T9~g}~JDⷿ^Z)UH#8{ZQc]q>9Ę& dA,l⡩nԜ̍!;e|yкxqB+8m-g8}t&]HsebCէ.gjcztPrhΕ6rz@? >gX2s7l+@s K$t8XcQ>NDt6{{I4u٠$}7U!QHh`KM-T&V `P\|դEY#~` 67J"ΙgY^ Sk-O3O;2:)rxd ;*[S->E3UWr 3~tO_wA`.A~j pF{||\SajQG/:>N8ӗ7Қo: |zO!Y @>#/)R\Ut#^y\,QDC@SG<ѬSs!}A`.F̾wh~gv)="aYa%WBlDi#ۛʃxPZdJN/+ zyRU8Z nuUdm7[F7xDgf`L Sbb5 5kT4g"_MgYf,z|cHmjbO1Dvph׉\w>0΋oͮ:D .{gW˫pxAY| gek`6_6XKf2eZA5bv#H-D#]o+>%‚'gk@u܇No/tLUnG~H%~vD0:֡w~ofEt[.;T=D, b5&\˱v_ mL-]m)Kn#\\Pd YH+0l /8i[aCU Sĉ؟ cVNO5w[! ,u,x&&K<,t^? =\H"JtD9RXA sD؅RR:zFb<͔"vjv朒Yw%쨫=y|~w@>rZݏ\9%"Q? ogtvr 7 'UԡZid :Ynz;XTsU}*孧ANf1ae tY1dꆿa3tiGv1 /+G#HV#<%z*V" E8rJEN!=HgJ ԅuTެ>zWLkbU.;&ONK;DTD#d]_`K'~ (VzYb5IDGJg:BAs!,]E_%+a=[BW&$e l{NP9z+`L-6Dő>(@` ʻ\Ű>r/Np5<C0lU:CzL"a}6&9sJN|2QƲ@٦P˔7ŕ5EORO4-Qnv0l˗y(*;cu@wW6,\Z{" Q\" ^6 4B#!_?<5MhvH Jׇdϕÿ_A U3oB9>Nc<һ>rqqKci,u@e2^QH[o,DSҏB(d @ZT[7gDf>cwVYAxjWx T`cM7O  )HIF?'UT  JL?[*ߠ/`P!ƣZWO(\a/1s .&fT(b6J8C%Ϙ 6dgR[Mak4o(8*}0I)K>{8?@`z6f>K* RYpZyp>{,QQr ,ʽ~~۽诩7=y- ?R_O_ҚTbV- `_+1\FPjQ$hh5ILħ#7_հ}`J=l?ڎ.O:!z{4} [3l8J٠"agpB 2lŶanJ+qnKsH jZ^_v&pq&W^/~ni퐧Z |4Ǖ@WB6 .($͕ҔOTx-)a.D,э2^d|h7FL FD֎=a|Nw9V?MD9 y7᥅_Q1>i8y֎̗@:?s[U R tnF=^qQA>BB6q:1ncallTղ4a>rRѰGJ{@a2j'h?+"R+.6H1x>J[M&R3udӃHLpσe"?Rf)֧c 5@nԠ|._VwkF,P n<[#ēaOX M";.&4θOhj$ A*ǖd(Kwh]y8!!,*F̩Nܽ_ctTzk@X z<@в xգa)W1dh/Q3([';\-lH9|1]-F"2pG*Ĝ,I Y+`=i:<3 '0xhp by M@1'e.jt85G_hVn_ШP(6 q*gYTLt KDaB-?n+"Ь7e+! ˁ(HGt}dmnIhv?-)m3r/.Xg4AʍOiǗ {wcDUÚ)r 䘆~\О5a0N LA?b߆uA=(߭rPVrߞ7?;QQ(-7+#fo'] D/{h""VP5uPlV-AZjQ$% ~HL*J.B.wA#X.w@-W5B`$=\ۘ'IS|@JW L/rUd1_%Nhm <w2ΤP[p0?1%9/s^ٵ@ayspM#}.ǝ%7`JGeR h8ͷz/jt}'[ND 䅎YW'd$hZ K uL,낳(.ϟ6q̬׺$zI ,V* N7 72AW2jL1+D0aw(uo5 O5\@Br j̏YDxdq& y)ʨ*mط]ɭ~"%&=˾]=$rZy8G*Vh9wFI-MhVQaSH"8{@U/JZaFF@>_5\ItmAT,HQ.~ !߆c*x?J:\WMa̫=c2(c/MD=S7ց-$Rn)fTa.ᦦiE6*K?-?3(ȣ<;~ ׁE'"u*03̏_Z'3GxdM9H2xX,b0۪::-Rn#eAm^("Ƅbww7 S41Gi*{-`E)eWBxҁF5pLh Xqmi^06re7d&G%nk7w+1Z_7%퍤ǂu T/qgj-$l$6= F, \VgIPC>v{X3 s W0lkW$$D3L s~^([|)VωvOcטio7ZmV>m"nǥ}nQ5HaUkWYm>7$.db"ӂΤ#NX\ b&#F) njoȥQ g8y|7$ zX 2.[q! ,L,9%Ukb] A)&x,S/HoUZVh$ qK>+p&fn!̄SW> L(8A?ۚ;KO/>RT͗[^w:N_<xRJس m!U|2} EiL56^$n]ٻ~:Zj3p7['3Qk 1"_U5E$ ?(ul/èZZqvl~c. eNl$S>5o? 4l4/f㢌l0(Fč*V])0tċ]5yO@֑3 쓓sA؜C\6 clu/3 U:~)aesεxwK"gix%DƒNxD,4IvcX9g`;r̥;~=Yl7WrI_6,LF`ԱGzCb;)13}ZlxTߐ5hQ_YK/F&.; J\Mj8ε P'Q٦]@ oxޣOCܸTcG~:}!7|[ |2RϋP_)Tԟ0?$Hf(rc[bL?Gձq%jvrlRmx,q*d7 QT"AD~F=6.KfU!J=kg}qs<pm>I( GV/ 43-pUkO?DDc @IeX{ʶ!䤣wD'ҍ.!H@^lBh{^GNi0PuFVåPMzm>p`g~t4ƨt) BTWWpid+13LɘT &_#V8/<>?vC[#]FMZAXy۬"Dd${5bHsy;sCA]}_yE4 0\&s-6x?@u6ۋѼu DЕW3\fSv-{t*s:*nGQ Dy\ ޏoD7jIbűw.?58ѵU`K-.KVMZv^ǻBjͻ}5OBGR |!8<,S&DU3AnQy a:<%:-;?N^~~&O}PRz: D3]sPIrf435=dDSm?LY j'2-bc8Sb[7>w}1wd+…RXKٺ9/~1g*сD l/Ƴ˟| C4\;+`MrՉo w8."ܠѷMڸ8LUNN*^C+ ؊2l$!%~6ɠT[jկtK2T\3G;X22v^ZG?odR1zI̊鼩+5${QV./z;EA57g6o߿۲oncSǯ,ZH!ک~X|.:]])NHA. Z[5"y=&|c3a2})\b:G]$ ׷pv]aA0pX j%Wԟ?P 3oϩ|oUN^K1qٟ'L+wX^mY*#E3w`@<*=2GEgǻUV \i 8=37wVHc ݻѡsC(EĂ8 =>t (ן$,p6'Y{wP iQl`4vqAO͢pF?¸~4B͈fɬNݭ k !U}vaoYc|[o2> IJsFH8C]c .?mAYdt_K^Y#JvYȲjyZae7$zaIhes+oEӕ6R- NxAp'uTS[U}",38-_pKb\Vb9R8 @/&EjqI:#mw RmUqpB3v)%Q ъForz-ڤ>׷ ap}[Z>מ1g=Y8+o0(|YZ%:>2KDZ~]eqg#s&L(T =tm{nwUzIB$Ihr}␙*ҲI5Dt-PR=o~#cпaK3&}eTժgAҊF@{BɈڟ9dϞ/R-뉆 iqT5TK.ta&:.+^Vus_SfW0C3_͕U·L>0 Va'AdU3fÑ8'hL~TU+5 } )Ž@oOݻ- cg\ "3#EV|Sh;i,M]2 S%dkfI5|=%twlRVVl Ĕh,*6XN}ۅKn1fe> FARq -``䀼c /3WyvtAz뒺^R)4i :JF'C~ R1SgA|wS_1.O.>P';#ā@1FI[K۵$;xv;e8&\hD̈́'(698$z#00ǚ+C1te6V"kyxf2P#؋ R3ϨũT TlG W s~ x;ܿNUpfѹ;?2-4`T2ra$CdMfF53G=lJ1`Q\2{xs)׵"[{X̲sR9™ḓca-&s>Zt1UiUǵ9=(=U`*R2r;~1hᧈs}URڦY`io}M nf{[}\tg; DJoInygnO=K.*3{0EyLϯ 8[=`ҹ fY?O_/"{;TMIerxoh;T F߾t6fVij\&Xqb]vdbG1RIDAi7f(HJ}|5KBZk_=+''&wj׈\Ŕe(\|dypcLL|$cXءu"ZXsz>^J_PZFm뼧H5`la`_^#$Z$QٌrR=fEY}]v s5#݉_a,uL_}h8sŬ Q401? %njFϲ!@0eq@ed8ݘRnt]?ɐ`")#8cnlܯfD) @=OT93br 1Aқ :?' R;hA`:_ƌc^]c@ƛTe[!@gudٓTˋ| ?a&X g//k%½9R*8?W$ ? \?<~^Y\_"D~nM)srqB{}r˒_·S[դQx!nbfO(DtDž1HvQ2H++k&IŠ87Sx %R5Y(mmr|Fo=.̽[NUI~#Uk +j/u K<=$>WB\T1db{뷗Gߥ?GA13 #oLd=>ʹHQq`<՜n1/?Nzr_~COocr!6.me@|cEq|{ :]z2E C۴ n[>ԉ+tj5X}c{1/S˓KkT`NŞ #+ڝ?0)ٱB&֩Ҕ>.*ڳqxEo o9@çEʞ8#֨|Bp3qgj!7 0-F۷IL_0'"؛_ũ 03\Cy<,soABdyfnIja9{KCť3%(ơn5T! L_UBW޸7 jSNwƠU%DD;6 b#/o_5}MӬ3VQ7ikEg0"A"ǓG|ZbcZ[sxw.dz8&](K񄶑&}6 {E10sQY<ڐ8p;(1sgߋzyg? BwG(dH g0bz',QY%FrALTTIcɁ=}Y.bi>ѻ7*Y:fqM*(zO4N&J譈kx}rr݉k2 u$2P 1[ ~iuJ4qlT!ك2-\dd+0Px<3j*zz@S$_ōJmz}b頻+܍A͝8ڳ x?q9J sAƃ P .SQnoX~]^.U"ak|p rզqBϯd8Џւ/) 4u#M)( \ap\ ς ODI4L7OzA8e_^u/]ۉµ]KQ7yjWElO)Kk~p /BܗِNLhzL"sF[˱9IyZ.!:dCr '<_phh_&:IUqx&]A[Tm.*e.탧ԨU*]?ʑ{GL39&?~pKrLD}y8iIS5iݗ\Em\g٧mr!Hՙ kO{IܑPBo;Nxkz\!rcM|Mw$0օ$v]wKQ7xʑ?ޛk7erv\!`S?=q@z OLx }"==7qjGd1F?;9)3o_GM6}-TgƩǛk FRpbmTR%itApR/ j̥鉱I=]$jhIaX%kڢ @~ cH.ȏ%w곩xEq>@֓^fSy{.]#ֵ@D,B 'a__-=YW h30N"(a#>Qrn/ !]Nf7Ý%4]πnvJyn @k,F(\PՋYn^NA7C:CdrR߸JPN7J8`}4{&t.cU`""$k!"&P?]);}RgPTOy5W1cdO(D*ݰ7 Q3y4L4=$;iKl<*s*3q gʨ#j@OyBbYwWJgpeh^L7e$J`>;9S{v7UzP̟DTsF|",$V:H[\ZUjVy!`,u@"PY.^umQ k7*ҍ=/pR)Z]}?qh:P~w}Ȥ8ߒ-B\^Z[B@T('G̼wfNdiVk.%X%>|-8%h~W "]d1_|*. .F5&=IL PRB]< iI)a*mB!|7Q!58n^g=@"EVW;AOq]Pפ VߪחڐՔt CNw;1>?"Jۣy2 + uY7; i Z >ӂ 齴H WB[ T4}YHb-B q_T .ˏqUI{"JAny2e'SY'6aY A¥qx>[1icZ;21 _ !ex;7lz[̲:*J9Hǻ%݃I2d{bRM Im]MT <JZIO* O mP׏0&TV?'/F[+ܼ= "J?iec#}p=ِ/݄5;o*3P7b͖XLT)"p̩A"1X'Lڐ5'n`(.JA/xjH-ya9r7,J"@EL!8s3;Zs*UP*Lfʢ vc{qfJ`) ۓehrX?äomxed BG]!ϼ4OLutŨ)4mI,ZiտM97!rQ^3;\yͽ7O%JlJI!sTT ЫǰOrmluWOWOd=ɵa*jLG'[jz3*Ճi7.t,9GP;f@U#ih}Խxc0e3TʹEcjFMꛄplL8OGy!|HVeqǒA<$Tۻ؇t a7[rIZ :%D+*K&{j~ROn1OpT'؎Ci65r'\#!X*OQk΢t+U ΦЮuT`rmC?:I1PK H!HcEG:vw~f:3wTxժG!=2!5_~G{fD&f"N\F63`33y&.i!+ i>({pM23< (h /6رשv7n#eJʺ*@_v$Qyv ݌M\R(f8y_q`WjdIWF?.T'E*"̙=/Je| ǣ_ٰ" I<&V7hp8GR*bVgdTίU]ƨouJcP,[*c.<}a߯<6@ZcF01Vi"xЕnT cQ4*䄃KӰL((B `<ae rP& &?Rʬ[IU/B%-1Mp2͐00Lz~ mET#L,ZFɀr.F%eo^5әƴw*%eW|'99?m^ڑ^So%18MOǜ2mCs텢'M߇{-:B-JJ~ߩNO5Y]\g > s!JniH7?GygTϒ Ej-uf֛bN=iP /0 JÅ ^He\ goUbDDXlDl±EjRUPDlHҪ<64~/fo]C( :tZ@q~F/. #B 9@aE$ ]Iq/F6V9Ֆӫ*Y`΀Ҧ Ɉe1kCZEd1:! &$8ߗ3PII/3UH{w 9m|ӧ68w)׻lYoL?7:tT\(֍jF C[3_bCQr cBә;`MM5ypE O1{J<7zFOݤ$~Ʒ2V]YsN G044 aOoHm0Y4ML wзd|!h%.tsG#s;nV&|\'\ WR(1r%jI8L1![c#v'YlCEpIFI,ښomM@>l0꧗Zmh}:A(iʈJ<Q+@JALt6>L$g5?vƈr~frnWnj㘷QYJ8*$ݧ NǦM\lR0Mr+A=e>:5a6$޺e0!o%hh{Vd.4)^L m;Eџ&XR XA^9=>VKgQ̭rq5`B:QW wu)*R([dpuiIb'Qr8$N R Uj,!mNR2Fԓh-{` s'`BΗX=`iXK/ߓ?$>Un_dRI" geTG5{'ճ^kP8< *WtkB&54*ŋZyGz ҚPC?]|A<'6,SDSZb(Sk{a_*(P77Ak>1\+>c2bIRN-[ΡIzp,8˸*R4T3dp ]gfr);^Fx'iv}Aw?>4()ê)fQoYؾ&]CժF(C/KI5#;Irْk;h،ߊl@ Lx[\Jܰ>uX-)Ϻ<>EaϽJuBfW)tҐ˭nDq&pQ Ot~"g V+7^d?hR:d>h'X;~"U=5Uғ?*xvh{r;x27dk!g-sXw cDOJOj*Uk(ZhZI;=Ǝ*ɕ,Ok4uRʌ^)א=/7Ὓ ^Kqݕ)Pw#?ϸFX4c2qDy31TcAYޣy/yј(|?i[OqF NoqCUȍaƭ#D]>. 0۔)X{^*7% ) !D^QEW-lDdt"MlKHkJ|tIvR D G_S: \@w(7.MU[5I ۰K%z{VL+^?)9 ޢ{!BVq|&+3'%q%'P F2/dNI2k̰F@-Eʜ7UvoyYm?|O;KmaQYw91c̫¾Gd%z Ãh3.L=GEH#ctq6ѕ-,|LgiD\\4/4݃ðB D1N,ȵCl~D^O bp-}bJ) %xoT*7>b9@?ImߢX;ʍuxԇδvl;3ܺm]}g x|C>K[ЍOH_;4+{P~ ¿=tq5Qh-p29^Cx{_U-@w%b|#>A-P+ 6M=iǑ_6`hUzʎYM,D zk45õt.vh)BTb[)p'BTsU X!q^R޵ @Cgj+v8/9VcOeEV!*lԪq%&]do}<9Ly"md]b5-DsH늃F*Wp/L1]u8L< *$fz>ņ8xD4j))풨 ¢Bx`B;7x%'[ՈvhG睹 \5FG5W#j5/w~S3ANDUJ!U/ \b\з.kzU8&-rXD[i(^6NS) )BԃSdفEt1J`9S F#Pg[ v$R,b d4I>eMUaDbs yъ,PaQ&O_^Sy$yI| 18Y0p!5>*r;h(t|@/2e!Hy9|x$w0Lz򥗍%u|8kaa#F.*8e1Lϼe*Y>xd,|i F '<뜋g&.b^\."EL|u$Fhׇ tN 3^1)I@wgpt?E&@ϲh)䄰mG}@tghC >8羻5lXJ`꽵IUfW־k$\E!Riڐ~ʹ}6B;g',յ]<7M!.(ֱ }цf(&zI+nr.Sc>Y~hTKa|f]pzYvtFẶbUW 4ݢ[j )5 XM3~C~]n@8sIR)I8kPtPM`TE/KUiUD4ӃEŏ$8dzdAHֱSmˢQ?{;sT)p-{.e*oHߎhY<. 2z m7Λ7W/t8 qO=a>M@W_:V/f]Q”bMfcXpE,+;Oj9TE;:#_7C T tՑM[3>%Ǒ,_tUbep~=هzFbnP4`^eWknrō}#tsjOvh^gyBu>BHq_8=lYlի]:[F#21agz2` xUQ#5硾RnsE}NO:lppa(;R8.H(ٮ0zBGV}T[^е*4GbATPqœ91j|B8a"!4?FRYxz@ӚDκ jh_}S>6b9a mb_. lkkUZ_cQ5'/4K V/Vr㇋0YV-a.hwG$Idfa#]WB{Xɮ,[HXY).[7CmԳ_?lM&Ќ@yyNf'#8TS1\39٪f(+g1'`PRsP^0*)(哬#k)f܅;RPM $Ndf]f|Eu)izܐCSK܁1G*h6A} PE4Nhgd'_.abks8]CaMm/K?%P]n? _v6l85?Aq$nj[\&!\ N],xK"`9մs`c%rbV!d]?帡x:ۂ,NUo-'b}NH9<]ZX m|!GOk4  9&YX{vTuYk:-"&uR܋-RIR"8U$ x"oXF-AN}"S*7EheΗ 3>1/9-6ʦ$gLMnF&ABf81g 9g|oLzJcp՗ܨ[jhW lDZж \/so< <5LҖ^~\n :~kw^Ml"KReIA 9*W#jFDSGjGf*8yb]$cn{T%#n'E -cb]k}ô 3|?Tm;xhSPY\wd "KU|XH}6[!m';H!cCVj!8~1Pq@͈6 |F EM ns"ŨP0n H3jJ0CVޢFv@r< @mSĹ&?ߖ28;y*&}}D?%j鮎”!՝%گ}'7 #᠀ՠU(Y"bUcsp^\pEy}2:N*Z8>#V<-:o)Փ+kc Y0hweº;8+)U^ܵY9%7~״jmVH$""#p]xꅊtd"7/% B9v%A"9C02%XF%,D7Sn'LvgUWs S*ss ~)P)w7C5ٚr:Q#C" r6 ܽ@@m)TfV8t1,}nvH. [8$c7Msk҆J fhF(qWWݥl@:[X zT'@ ]54d:p@fo (i;Pz`X_59<ȵ^!gnl}å'gM1 NQbILGWD,rM7jx^ 5~6vk0|+qwit7Oކ5U;p9!̿{\zTitg,-_ Ft'g$5H9[DmN^K5{ėiOӂ%'{T?mC^]S(z-8Y,z_gS'z@Llc tݬĐSӔɸ Yfh aո77%.oEkhs>5tL9(@ݐƛDpDyم{'h6< `P-@K~ /yxU@`V(W{pЗ'R6 {3ge<إn(6fvΞ$F3Rdb!&PHk@_oJ]OVTR׬\w;>ck!=)wPkPPc=XI3] 8>ݠʌp<\7nl$*ƀDBEE#. ؉R5U(Pkrmp= Gۤp*c'C׋NÓF/H6ʖ8~GYXc].tv:ws k C(hh{vbB=ڰQQΓuSjさvuGz$!Uyt}oS;-Pӝ]KN !RGc~Irfzwo(p tʥw7+'f{Sb"q?<3ϞW0 S+Ar7V> B6ȏc,T$M^; Ua&iʟ$IJMft! VyS߳J!:M]q yn +`RAr֏}&E*nkGOѭZgbNu\F #G tl:h)tr(tһOH|  ѸO9C&G y@TGHİLH-eGNXkKK\8y^.nLSc\:R\ړ?{3<,85;V+UMvQ v?WӴ&WblY H&T%t_^ q!o> wgKQ ͯ'fy'3 |o~K}3oF i^M;RZirmGNД,q{Jr߇ׁ`@Z V\ )L3K^fƓ"pcEeWi?ҾGϗw$,m"4X  Wp nXL+endGK`ycl㔁o H#֯],Q얣([ú/lYTЛĿX͚#7Q{5ʓ?~K()3̐iET٠5o,,fClqS$-)9 !g[hڠ~v0ga2R7M{Uv3_Si<|}wlDgoJq"PS^S'B.~|#SL'Z˔yA@mrRc/l[MRm3AƐ%L,#p+{[%4U= qmʆJ@sn0'?<-yfAn!(Vw.LUUrZ eU x.?\%̀~-I3#c]QBK9 %:\u.ګNw:/YQ_(vXP+)ʨߖ2YI\ÍR8P )1ˤ-h͡^5C:[,㐏U @k*%3Ia>1sh"}TM=ߤ?B6UDCΗ3{A\JHju,DkKB6 ˌL Xlޱ0  ?biP&7,/6]7h oV,pk(~ K%0Dޒ!4mepnz-} Io5nsE ^+쐯4%_K2oQuE wm|%ɟu |<G~X xQ-SMDƮ<˾,kh}c㏔_j+,l-VvBS7-mU,эÔCpؖ¼WjXSdRаd#CiU&m2pRz[MCZЅĤD=GS0 }hD/%"B8X\nF[:?Ơ}yfI$Iժ):Ref4뿛"M+X-/EA98k7828gB!X:Bع?8`;-YmhwF2yb\RbH6᷉|Z2_[sUg.!HF=q"yp" "HbCE3Oe{1Ȝ^K|/uB'ᣚGf<1 ?4z%z TWBdi=0;8?eJO9猔2:dT<7{gFW:4z:cDaP!.^:>^ _r3;э$Pv >B"(Ǩz2k~:rG~S(oXi=UQà Ȃ=8P`X DKt7<|{n0x_mG +. 8K5RxtVE T ԶX #0&*}f@skmΕs}/SQVHJ!(Zy'ϼ|v?rS8-[<ށ,A* xZ8x2 EnX#sBNR%y)fRDCXc/YdHVN|PrLY@eițTb;Ot|cMb 1iAi 6)7kitL}A?I OQA'?ؓp<>3D'p~)>o pd/$nZ?gAUkW~#gIiRMt k`e`,oc31̖N=|ԷLX KENXv^͛la>962^B¢9o%xqhӷT5WsI@S.*"Ks6LyW ΋ڧ; R.P:քT偻AfU٬>cCW no~A"V`'V Qg %)s~A pBu(:/ +F_tTȵ{0 BHY8S ѧQPN^9'6C !×Fl<[-rzP>}$0=΁f VP'͹1ģOd@ |3i NE\ Xi8ٜWt^qh`\#qERU ΅ };){:\ T/b3G(a+*5)yU"_SԓE%#ֿgLڶOJ1LE/"5   L@ wiո7ߦVs\7:: Pps+@N8`oҐAAn`gNk*zG߶lfĴC8OmS%.ؚ'>^Nݰs1J*]BuD'ew m= T&G ŸV pz)>wV ҉moDΕ*5(q9vD/,"V4tn~NX(Y73Qr 105nX%/"4 l]nčS*=%w|oQ^֗614wŖFQI픞ᄛmx3-ŸYڊ? >)%a2,\ /ɟO0,zv|K˜ +Be{źCxJًo#m#gD>=V{$M̂v_hjrc";^J/zS(Kk?!&XO\c jԴkMGYMD mT-7pu,5H8;~a*Z|_.R038)b:)Rr2e J7.=ՌukB@Su_Nw29g )<7NO(6ʪYWJN<Wp-F04FVnԐlaKJ~WH&^ Z4=|L_Ocnuip ?' :nI}/6? u)84`'귨y5`iԊȍӻ&gA3Ϩ)&MRQ灄0{ޠUkcGt5_xH1P~> O%@ԓ: + vo{/gKwι- Orfa.Om!.xOz5EHbU۾l rq̼ҞNeر0{rEn:q5dT5WIϩ1,:q~ i^?6Q2pB ֕S9]el!]>7 ]Z}_ؕ!쵨Mzy}(1|)~E~~> &;a^>S H/`H:MY+dȤ;$P[Gd]܍B{͌\(Bla?Q8}sc*z &Ec/JviBҌ~mL#Ucp" `c v[+vn@ 6"\FQIm~U,,?#l/eV/,Jך%:i'xoZ"X'=%tb%m"+e}$*_auSÎQfĝvfoZ%Di rTUtMFlVs$ڐǛ%먍2qٶ}ytd׻ةlBV=Uw^ C H$I8 F)htrDۛGy=#3C'U=VaSX:;A&W͗4­ɰG[n~٘}WDnv +fT֞D{ j%3-{v\lʸi{AiNo4rB%b?6 iCQ^+f/_1皬m9 A<\מMswu6֩=̳R~(i\.WZѢ[ZYT$2&b^F>7֯E\/EdB}ud+<,d~۵v'm'g߮ lYuL,;?gZKnAoȼ bx6&2W}vT]?qٟY )⴩*H ˩bD1^y5WcC`cU<;<_Ý?x,Ŋ̧36eLlsb +`i~67cڔ+xBod(}|ǻ_9N RC]:dO{3&o? $)Ήj@_jGc^6 k;|_XУRp9QSK&tǔ}$'yD#.x *r'NkM;f^7!"?,.ICSH EGOX%H 'uЦ?v'k૶םJZy̭uCW)?*P@LCHʆ:ZI" JpR]O?Gg*VK Ud Gi@su^f }F52lw{5-jqw9 8ݰ7e|&|9lL?m))nA GA]I/'Bx3339-Tױq% Z,Ig E2BP!rgP~=.ЯYdv0e"4tmޓʷ,yFG=xv5hk|J]i$r;%N ]Gin #i%Ǭxy%[H?uVh cu(#aGNphhW׭ @?5;)W3Kl6Rw4)7k" ' T[H8ҡ2EHG S\ |wM-T0^ͥ W=,s$m'%i;6f(`I8]~| JyUm4$i 7 sw֘m%zP|U{ %+yzl SdMlgVw1+iwL`+C-nw<4I˩3Ӌn O҄Lg ެ%%ư8w^ [okI47^ŷ~~122ۈpM2/e:&a!վDziٲWlGbhR~lSev٣\bѲ՝!4>Н,I8ʚuɇ(:]J-E-'z  9uז]$(U2k ڈ1Ym𑢾w*߬^E(||n˜Ḩ 2}fg{]/e#C)Ru@K=/mOUD`J$HEqd=+1TC_O$BUH(Q\ CAgDBtUV8ywQE]<%82y-,HmN/MN1԰YX40/l=䐐9Ӗ?-NLEM =qG7±MtNWh_nXBa2cU]>6mY@ҡ34@߆uEO~#`70O-)9 ]Ksz&1YA4{iḑg9ËOUw$FE+{Wo:*9)6\j<yWmzQ=ʉY{q4q- J"ҢoW3VoqՐεFkrMT⌋}*)ICp M"Bhs'OXuMdbOF75gy^|IjA#UsO.og܅kӎ/I-7S*9u5oPs3+LX] oۜF0MܜWEFCz0Uͺpuv%Dl4vm54Jlgqكg{# o@4]Lwxזc ] #fBHf-s|2Cs^<DR/&qd*GOQq?r>:)̇k #(BwʪC-ťf[~G#Lg. }L(m%Kf=kl/( zH. zbJ'dуfHjHA/ѣ VhPR]"c֣Re8H_kG|Fm5esڴ </o'on 4y6լكYif\y:ࠄWțAP2jY nGjn5<% lݑSbE(@;V87Y`(^E6@!1׽juy˙oeE!w+;7,ZiQ}̱J4 2eRȶbzQ1 ~JȊ>g~&pz}2/wйuw5ڼP_A2Q:0Yn#o/r 84_2B簿NpԙOYI3HMlC8&;`EJ32'C^G SMs z=N1x—f}~IdWYC#ZR(Ӫmc6Ad 9"(=xDAP;vA1p"T`OFc۬:I3gqpوo#~Of@ "d &\ mwa) ~8Y91IT mGڅ3JLbf-"LjL07o[k(b/׺Fc8J貈y}adj8)&"Ax4q d\y)jdG||S+^y?t$(\soMoWaP&oCm%>qPpdO#ǣJOAE_? rdo &hFT<##03ojZ g)y*Vg[/J>.fjQDn1 W.?fD}E}x|4{jctRuRQyUQ U#͠(D}h_ct"4BƕБEqC5'\>gI^-NoUgLG![TJn>=}8ytUOSla+ZvF% >ަhթCr߽bu5=rDzg՛+mI`ȴj$E#a @ʍ‚bhg&;󛖇m[<?v_HZ!@q?σq\{No%:Sβ6Q>^+;aBG(YqY[346[IȥWbuݢߗ,6cK=OV~?I vc}~ԈDwTR^E#vU>ߝ{5Ea1Xpy]t3j#QsC9gxIZ>Rj3s&_Ild^?Id5Xͺ GEJBlfIh˚Wyj>%\3Zo(Α,|0gZnN6e&& r^ssLؗas3/vt`]s ewUڴno吮~S/EVQ( B/QH&}6=0 Jq;#0v$q߯1$OmwP.Dp 0f: *Y[37 ҒW ]J([S>y3s0dUS]0"0.$7X/D-dA)Ue1)nZ ?B/5= (:esʾmF bBD ΃Uc#1l=8ӌDT%_a$fz?Oʐ("WЅVeP|`nE!dM928;xNe+1dh,"Ö:tcybW/ Am1y]BEse>/W2=V23 DR+q4o jX5mV7/Җfg嫑Ak Q鹁g~VF}ǗGA+^ݴ5Ha }]ѲDxrk;Wm{:_~Q:3}t =ο qDT|t;e89jCBA= Tfb63>J"[9%<3U}Q9W%6,N}[Ԑ~[~7[aᘤ|ۋr E8'VdS@yBi_ܪFZv=xxؓ׌bO\ {TaѯWξ9iu\ [IuWkCD>o)X1sq&Č s|DJ.暮wQe$[2Q)t_FF僧F -Uϕ@CH1\Z| !x/N7YFP.)7j}EѼ:t~ӑE;6=ѻ2}o1n Rpt- K-BH_M~,`ee>DOj;-V(t7̹{ex)X?Qd~n+}Ytn0\n4˟tyՑ IceA$-d+Fgc 9K<3;eXnJڵFh`4qΎۑcH5έ‘=斡׮XQoE-x/,1( Gf sMUJu`unxS;$O`)X0䯃CH)aRhOb6/6Vx%ggFҬ(kh&"cgqUK>m!RǭcȼbB2F7 IigV"ٵ&/ZӇ*vGOXQH[Hiq :eyD)`Qp7܁0}J? QzQs1j6-q-ͯ{)BLtOǽdA^ d^ZL {[ N")R>~ ,qPR +?ܷ0K-|v~;Ʉ'j~.0lԖ&or~CtNUzlJ,{V +xM.r` V\t YhP#xs˽h fb##Pc3%HÇa($T.+Y,ZAk#kW.Wa+y'AIK1N!tk˹Ty1 !MH|{#2^sEB{S]>X/L\KTULYo): k8)#\8S 6-tJ}f'5oi&YKCCϵЄ!thg0{{1~i~su{mu-w5[`uq1= egПN-W`$]2e7L^Y!$3ҎC%wafV<$"GU2}|K'`UۻOa{r>2RWJUWMT=S+'c{}qHW*}c}~d/׵_y9=T!| އ2ľvt42/^&;C¬=MV ( :/~,Y4FΛ"D'5us\x۱@L}Nq(%‡HP!4xXrFo'y Ƌ=A/쟭<8‹NlG?~ܻ[OʦE7|.-uKEMb g _KlmQ$" PB:*h;Ύ[vLz7SN55o1ǩM d\G5NT7W׼cCkg.:ajR%)$Y{{"rE!n&& (9:JDĶNᾔ{ O 9Y`DO*o u2% 6]OʄcOPE,z-/2YB\$o{)0z- ^5ml5qks?E`xP-ߺDBH+;#~OĿL ֏w8iΧ4n^ֶTJOMvPGCoYU_u Ge5oCG.7)6vNz 0BBd/'> tVLѿ:|P:Ʊur f0dzm te:! 5Y-%qKMP"0C@76;ZY XN)urqښibr \Bqٳ"cD4l1m UcLΕVp#"$ 'ȾRDgvͤ I$0Py^sn=A5gY]Èb}n.a䒵# }ÛuMݜ\Ǣ!{8uFVO*q%Z8dǔuݐ e?x>0&Hxˆ&tp]#̩NGWݷ,W/cq7 v;Ecmġ4kz? _诳_:tWdEcG\Ԏ]&N^X 4}GˎxDD 7Twm1<fEW[ I<hln7o|͐+QJZپggxqS1_ ߑ6ܒԥًl:H^_l7j.3b6 H{DPv g/N'ѿߗˌTqO;]-L%5F=,0^"z묚Oꇟ- $&4٧l13K2Q9W l迈I]X(~K`&>(3x6o/FG!aZ8Oa{ZkÅCWfk@dU%ū^bvNROX'V4ﻗWU I #9ݑFg' *_!>2eR%Yj' bL @,TEixdZrpZyS>aʍqo7-_,fy!Jc1 gJv`$^Lߓk$k;|H{:b7wPG[ 7b) HZ],cqaҗ37wBCueӳXFW>K>d@ϩ0(7gCEs~v(C,[k4k;$S^ŔnXX nϋhs_HeA =Vf#n̨񯂖1yOFc/%c@ձJԥ#!-g9KL/P<$k= ;վgջ"hA0 ~V2N>Hߧm=v)ۃ*]U:wVjɣC {"nX|ج$}#l9ECQ}+C07;e5 \Y&?`ɺ˘څ$${wb>Ҳ}tV-᱒o<ҟbxJY¬&+d r`u^.Qv]GǰYp `P# y/_xjz LfJEGZ֯ zԥ'oqnX,N'SkKm<;up%2G!''y﷯19Z{[6]zotmOӽ Koq:t.w"cب tՍK8S]XTS5Ovh~ErQ5RRtM8%ڄt$}xt1/|j!^TwYEtcTE=\ste?kaQ2p"w+4[a1!X`t|DTl$*vx|5dHkğ|V垁oNrPW7;͢28Vkiԏ67Gg⹛eP?1ERåu>hIf{9? zKpNT> q2}mih8Sϛߋ;O]+Z@* 9BxKH%-!hC_(PWjc.'h_hCjl$sg`\ |avY1aq*Ӹ{sQ! 05"~> b5g>UtUX?.>S+9h;P IVk-Jӊ֍)e,Ɲe5PXP^Fg3hv>g)fNJ>Q5}E ߂VǸOhm^ƝoYD]v =,REwEv<ӎ`3޺ڒѿ]T^Z1*0('k6Wt#"w>T` p*3)mƧ{J#[rsA 6\foֱ|Գ ofhVV ͩD7 WI]:I S*#x0!Do# (v>}xmXHJVF~'2=Y /N`}{ŕ4YiǓ`U. TA0F84u*bޮWHqd#LmH:8M{hCc zGR<~:rALGO#@Q[4w2ȖYY40!C5Yjio-Sxܮ *ri'i W"ZmT5̜[E |7!huYvG䨽ߞ(֘XqCe.Z C+G;y*;gCfOcd"4tm:cۡX\1[myB e_Kqg_24%«c >/o 0GDc(kb1UB؇3f/ڼ`%.H(j*s¯tUt}q~9/w7LQ;z4ɐd 6:@JTS}4a9!J6rE;23: S|ǏPR/SQ㥮Xz2&a9t%WvDIKK+1ayCG{a1OqN$O_%nO>[EXHxV֮ X)ݮ >CXsSMJ9Q8Ren|=.5M2j84]l ޵aHI?mR"ۨAQ=o[=&ŭNft/Cғف%RTL\yWN' ]yzfqL(/9/m| V8Sb2滁X( .!Lߊ($"-itB r} 5>g4TxxLwOPJM$=]l s7ͭ_M9"ܫpBO`VӏiR47 ޔh /ŢFl)Db)Q*pySUڟP7R>a9 j%(3;2F~vXΩ1гy:Xq F@W${pJ5¾ xF`#ZR䫆P\3Tnmѭn_6'Ga k˹*Ó8< cCvsȾ*nD`i56QLϤ11I>y7G2 Bdu`. Re?1E_¹.˟.8vumR{Bh*6RxlܐS/nEGfcτDR_~!.N&WlGR;9!b~O 3M.3k/@4.&g܅:/M* VA%7^?C LJk~eU *%P%B nL#hbs!32I}@#;{$Eo ?P<]: ?Õ986/lI%@N{X|V 3{`0Ga#0%É$Ax:#uh2Dg"Ìsz)>NJ V~Fl֚U[ <]WQp𹗘 ?m;cQ tnx`n]ՙ X&rO̮E>cnQ(Q2Pu?b$~rIR樁G=3 PP );+;|Fغ눐)b#1}:MI$;0eAPSUHaf(9H(0ⵇ+,_XF޾ۥDib%[U]Afa8c=bLRk3?J74A?m\NP95G彠Y:`}܊=xTMxƏt@9*0 ( jֳ]lrEfqSPK1/חP"Nq s ~rfڧ9[-nzD, :Ӓjb6%;Ȍ&h'gl}87"q 9+_o>>FGJVWdǓ4W^홗.O #5mԼb0G.YP ),OK`b6;UKW ѧϨ.T_EFΪ%0Pcz% mF4 (S/l'Ѻ+1g0}uGg Ži]Es[ԝ-E͙뎓CV =|u^1gزT,6oPkLq6=x޼wKm)bhk=ɼ앹2J 9S]3L:|E2~0=hYP#츙q#CE6gYMCޕ9hk?%|ڻ2QBx780C#p5k*E4"6̱2gHcz 1ޒȷ@ ði2⪥uȫҺ59hj#>=QEP$7{d@d;֦3c>k슓QI_j pw⊭Q&`IVCViob-#6CHOW9>}WER+$M@F9Nb,Cxn6ﳢ'lU.? 4b!N^b'A,/h~9.}"IuΒa#@gOYKLg))8$ K+eH+Ka@. " O< W t~k 2/W܆nٖؖNÜ;HCp4aQ\BdʛODE OGzA9HW[9H-<x4O-6!!0,(}vջ}Xr~t ˄guf [m+,<}v|;%?u H>-`phs<~aO!fy7n; ef#rHO#:p{(ݱgXPgL\D#ק')ub%KA\"ix6mz#Ch(ߪN,]OV˨jcGDL-(uȇx O7LHU-hx?y|P;p3b쮞2.$)A oA ¦eL"'#`T?,S{E;6 S"v5R)ر@XGo2P -4E"_ ů<#?u%~=1ϙy gK[F3qǼic1` 'q7@Q>P5ǖ G#'U5?p";P ^JnTa'ڜcѷ!ipGb]nkνҧϜm=fV}a"(rX2(P2I+rXա/Tƒ52Ku2YxH1屿i֘<~r9ochi,qx`!>YQ HlrRwIT*B 3 us M)zr\[ kV{ƣ! s^X,/xpYs?4 /RSJт\)#xC[3Ö<{iap%P[(7$k+,m| X2N^[|>sbS:[PV 46,*wxtDY).x6 ssc  Z&bB%XV5.ԕi .Tͬ:}Wz4O886j?O؀AL]E $F]b qC C5k_4Cǰ0rѪ];G08Yv +\b=tD^(C4 Sw,֩-\*V+FC!/DӸ7].+7̡cXED+Y5{S 5~)Hպzdz$zB7EQ_3kTj`Ȥ1nrp`KXiOC)*a*M2u~O9*E ~VV)%["gkml+G/0? 2!F"^ns:MT{#ڜcl#_HÉz-,Cgl {Z;oͷEHB/I ڴ͓+¦r QqYg1b(n +1s:Qu6Zɔ"y@_d{hySjk s?.ckCvnE5 ')Qlm7HjE!xE3.>eSS]@7 r^PJ:PϦ,m-] ,{!PE @R&Ʒ6\~~˳F CCyyLw~0h_e:abs%X UG[;jU<Ǭ| b$9PU!`+F؟[u$A %;K2ދSXjږ#R$ ],pSrxR%Y'nwH(G:l-zA042[*t$ 9:3 SKiWʀlG3fP;R^F{0^)9AY^ .r|@X*|j09 _ _iu^EDa':ջ<ҮՎ F(!EbR*%gϪ .rF;GCc0X*|H3{ajpar 48Fǩb; >ɪbir`ܳaIu))lf [A% "\9 _Y}RpS'9(F1l ~1q8xH;-%Tbrb 6[oӛ}zI#X]#i^ֹ67nK7]Gۏ{q[:`ɗr$HBL&L^H$\@QUw0@@G@}K3#s#SFUL m:w2ZeKa_.ΗW/2%_xOa sp+ Uu$P]󮔄ӢQb5t5 [/*e?hp\POK`܅dZ"Z-qWbR({9D9 *0v@y 9q˞FjrS&]DT7~1:aE{Igە jU]j;cm9 n]rZ+eig"NυhP i{MɁD1jgY[/ĠxU@#}tǁ j9Y_PIѠᖭ@l sYV!̽f hXL"k_' hۃsmՈv-_K2{^eەeؔ勘}P!Om 'd%2_k_j:4fxqpr F 0]0CUHbȬ+P\M=1``TPv֩5Gi^G$6:͜t sԖa56 հв&r>bj "Cvͧ3 [ ف8m`%dPC^._ɒL N犚f¨ Vߪr{#t}?Sݩ ѮlAN]uD[º>k ipIcؑ)h{FvhM:ɭS2-i yֹۨޟg(fCNxGO';’1P}:5fXajQ69UWv iOlne\my7&fOYhb0v[FlPۑ*)7м{rE] e:$ṉH/ Do)+ØD$yJĦ*kT$S9P[| pkCE 60QފΡUI%+ Gs|JF 6]׶i5E$”QV{3"t ەO0#~ 8w` d *}}e>@\Q`\~'>o'U~QѰ:mguM?PP#~Vlj3nȄ\~؄9=PlCzK;mgCZ=pB-CE`1'],8VYxʾW}wg m-yd&=hJk'p9>4<'%<¿:(Aέ}1K /̈# e\( 9Fy@2%.AzU,:z\vV ld2j. AJMN׶p!"v V^U?a kiw =oXK$~t]=xׁ(h¸HW8.)o8MskN[ -hJ_%1}aѬK(Xt qi % Ob׏Q)/T4C`=<Մå<2|.HꓺcFkgӐOؿI|ӦZv׼SxA7VJF֢?σi!ɬXȗɓQE[u<2*4R$M= -P\VN!V %E +2IWs|% "VQ~DܕS{b^"eSYwƗ7,a(:ӤԶ 0wrl!+470O6/TWXw_e$Ym]U̓ANK߇?'-@U@L0aq߱7%ڬͦ!^\4Iԣ*RI]-lͺRLGyZ)HHų`: ,C| v7C)k+/ds6O4gJ7h PE49JSzfv7 ?r3~6l)jœ2c;!{0Ia5@(B~V٥y zyr TT5D`*Tܐapl7F $*\GTMgqeyY4umlyP>eb2<K@Z kb{v$~N%f}J89C-Ns̴ P.M;6:X>;#vkFJk>l0yՕTI[و[z } 껃1ZK卺o>w7XDsg`{.j_O&Yh!z>N:*Q6D ;C%Ԫ;/a}蕦ߊ 6uq`w«* nZ{H특|;_':R1+lji4plڛrJ|B$u<6Ⱦuvw> *}GI,}7K otD9Lu]'NRlĔ3Az5ϖcTE!!#%tuFcom7-w*Cxئd<)_? $0G,.DŽU|+}G2'{d:`K^2Ĵ;!Lh@ `ˆ I'wwM61vU 1r3U%MlIBnp],MѯbEO3E]s>t~ ;dX}ꏋwIMR O~(ܗ,zv10*pp1=_G 'ݜl׈%P*B7`3QF DJԉ>dv U_ć+,.[ Qou }03 Nuݫ *a)ޓf0īD(¦zbN yUU#.:uFj`\3^Aå21[/dc4tL0TܖS͸u8f ݹ@` t&ḩꯋKQr8g~4`.܄d?~P~ƪ>TFkl\MFljS.Њp21w$ F9>F 9ўOY@Y߸glI}y6p~W:[hLz9 ([(_2t[t8kIYҝN,;]m/we%-a$(n.x$Rg>J2Qe{#//VWx&.|ע]ԾJJ@/{SF ;<, AKլ΁vp;V$Oŕٮ8y? V"oB@!QLuk$!)8 " Qr$Wf9nVZI<#cW$a{oCaiC{rs.ٿeK,0yaN߆Xױ|pΓ}k;E?f4O3RŻk6`؟DMM*FT W.i|~fڞC5,8!0>ΫiXhX@@#1s l$̦`b!!Ki_}ʊ^!pq+Ssk^M(0=w=J;'%@mCC!MMJ1cec*OLHCJZ%bDD 0Z.w/L ?۔0? g{^m+rEb3J +Uhgbr!=mu$3=gD\})Dh? _!ϛ br*Vj<:I` 6HY?6QrX-r -NH=.pKF*5FXSJ3"#߽m9㜉"ShaU eH[9u;*2+{7=[l 1*F9(jj/i <ᩇhd|}2GOD'AL}4?,~(p&7C_UJ5o3 NX)jQoU>mUM4E1Aҏq=YeO ' "|'O"=9r^f`ZTVmX%|clϣЗ`[O%C*K8ºJLԾr;EbipV Up# <9(TNJ$hA=fFgmS,Ca+eF#Y>-fɖ|„NE%xΘ$'z l7+[`dd_b(C\׶AGGys*axv*0?uOwP}[#HlԯT0TBgYȞCv1; AhذŨۉg%~+" 2nZڜ&+Ti˄~@4sz/{H J״!v.@b1jGj/vVbJpu">eA t?W#(Crw(|mKaZ"!EĝYT=^o*ڂgm nMX$S!B \ xcYH.EwGYXj`e2&{j7AZXKg=X#t`?zW] ϺfڄٵqMDU]0K/aJYW[q1'#xJ9 378w$Y #chX5NDp_hz#vAMCK7u G`d!Gv$@TS{2e`_G/B9f&W;%xz&Uxx-x٘wbuX|U/kq:F[n@< YU&XN8XW[pLXgO>? &1F=TA I98S1~=FO&N6Z/TXR($w=%ВW3Ts{:h>ƏuKg8HX!(?[貔?M7bz9~ҸEg,iM;ѵr+6sSĒoΪvƝcfhb|m65 Os(<Xǎrw"RR{lYC+Aw+H\=EȥhARa4n.C&}P"  ;yœfWc.u;9`.= Bgc(Oa# n]pNrdd$ݶ9 8VSJh:MX̉E(}c $wgèblƻblAWWpOd2L$P s<lFs֪f@9MR\YJӼ'y!Q(QL3F#,ׁ_Rrve(T#%坐@ЭmFl{mRh/2:'!JyܚIQ\/v-*Ph#7o$)J;8ǧi#OLfYa}I ,Ɵc$b|BoaWʿi FALYSx1jаo!knN0ꖭS| ~[º5ƿȰr*Xl qӷtVecV;4@jnį' Gq>R Nv0e!y5A_mjB%2K,T -eqYi㇨,sYy2`TGӀmc^T! H/ OƢDq˳t%]@P:9Rĸ yHƶq<;"LJNYa8؃ЦYA\ S.3ڈi\&-L&FhzXXPA1IS gQ  SH &-<;3uC:a0_=Ȁɒʽ6$7 %1w*5V9P[N@t2bsղۀ>k$#F!/Cfۮf33 zF kc!WNK bq&U|m 5? aBy]_?>Ln _%wLmk!2xM8)=io'#$dyIװ\EyZ6EZ'j3Wa`n"cx^luݨQo窯OO}`{LRRZ=aitongwsrK 8Q]>d]_cb4u\i-[K—W[U->7{{ҁ&d&ߓ>ȯOF/&\Tt.EnAr˜gROfa)=^Vf4 ](#(fmH?0٣YkGdtPf Z:S_Y.%{ľU9Lƴ'q 9_smWY0O07bg:lFzWV>tcH S.;ւmR'-p |e 5LjI~^|vA79KC.k9Maaq!B~⧾wbr@'?oJYF>4Yͫ).+ 3ULCw&s_%Fﲱ li?nx{SeOXv)[}$'2 ,tΩʎ=z>B_] W><{#ۜLg<э4ґFa#u8-gB 8f=-N TƲGCE砑D9Iv&g;V *"auqwUZj6j^i|wf7GRzwDQM^,zY~Q8SyfU;^!>38]61a6.gp759+yÚRdx)f 43Y6=.nj'(b|U=ގ02uqa 8P qnM6´.Yh֖P0Hk:@I)T3Pa,!&{CۥDĢ5) @u4Pp /X*󨗍2AhWaf6* 1v/!Fw_!V\D?OfF\;6UY?;[o$hƖL=+]1Nt@H _?/tWŠW.,}՜xQ_حهu.6$ S%PvHarF+^о Fw~Xo4H cե8 CH`{vr8m&'!dL'wl39qЫJּIQj+5ҭbWqeѧ\;%>eBi;NdҰ#A WI'etï \da2*I:j(x'9#8yN»wl"[/<u%v}miS 1%p{O̵~xPl9hÕ6Xxj&Xj|D K O/Ȉ\5W} h\"ϑ@:Ǒc$}tq X8z=cMZ~*m ۨavR@qHVsoU 0xąb6ҵHTݑYgE?Ձ2qܘ\cOYKO8@Awxoӫ+LFD {TqXO7/Fhjނ(?\"2XxYqh>QެJ i5܂?_r8.Y_¶}J4Sp 䄽ߓne-sqx2\L8t -U"Ty8@6]dyIJ9mq0` }$@z}<\ `ER .r_iS2laK'!.]3VyuF\:(R\L,og_?Ua<i(FYD/R dy[z'6E_bh淭JrB+* ΛDFhu&3eFz=@I>ݓ'9L K6 uŠwHZۃKmjX:]ϻ'h r_`6L`; jcT8pUɨϺ2VӀS9Ux B~sf-[~f[pZKne;k7'W(A@@Iq>8t=;=@^ PiP7Sz):^ZgY}sTnFQRd T\δ uC:HdYEX;b?X 3]YM/#ǤY3jT kU|?(sLb"?ds* )ؿ:~ D +Lڣ@^Bk7*+|qK}F/-Nќ&AtK8za⏨m齂xњ۶sL½;LnU·'X(p s/2!w ^ɹ`hҐٺ9VێeX $k47p_FFO/ŀ:!uZVi^ZI[dmw>no(ƿ3+vP :ϠD~N03B+JTz;VS'вݧ*;hi %"J;9%-1 CU$"tgjibhzs>Lg@?#8U䂺HV7ϯ-H_P n&|VH!##r _XLܟPWT F#sT59 ʸIkr~Lq8bN] ZRЄJ nݓibݐH㤫 ӄ='HtIے'Jj}';>:xt:#⯗48/5?,.Tu{ Uxz|[Qo.oз1)l`]nMZXI|='+^U=Ci׊ރ:tciR|,dvPg&M{y{ Ie} XQg6"xA`=VK2F <|ҨώH:޵5{Z>vA4ӹ&^S@Z\A 1)tuFD4"ʥ΋"s/N/};iZ+BSBvܰph gi '؆9k7~ۯoi㑠0,cHeIe'7&^+i~4~+| "IW'z>.u׆S؁.>^+gL1(ݏXi0ihQ5s%zTcW":!/dۣtkjr D*VWv{N8 l͆dd#ycx .8#q~о_[X(ZBˢTLfŠ`1ڡqqvw"vc1֭륇 r$2%<=NE&0 YMԵcU;nb%5ҏB # 2fEtn9cI4i#7 [,/㑸"=W{f3Qb_P'X saS 8ˑ<H}@Քp*Cs81nH$<6BJ@uu /9ހ:،Y>KS>PxVJ@IAwu|Dw׬.X\-읂5%9L,vv{jl=APg;EHsXCmp+' rh|ZiKY|2|E PŇàvӔ h(RK0{!Iiƽڔ]zmWttd ­k^jH~a eɩ%dMJuxݩIRQy\Ds)[+c8?/89hQeI9ZRܥ]M]6*$pY !f-ZUIcݺyQvzogU\(Ԇ*eh;c91ih$OPdKxfh 2gJmRGlMԧv _Eƀjxň.)Kc\]22o{=O#xjg#/!뭢 EIPR:4NHD^gz9fxg*ዅ/Wq|1qGrDl/EXĊd*CFiEo-q"Yk`%M?QM^zg3 yV*L*ϚvDIcx>itC=ie\rCoK$ȎF{)3C辟uN(O/gy7,$mݞ썏y' p,~A暥9cRfc_,ηA%xƣ| P!)پ՝ua0sNK<h"N}!07=}ʆ?v/۴~1aPsT1˂c99oFTcsD꽙.*Ky.R m.Av*A}jWt^x@?:z1努{߳Ob<&H;}|?3"+t Z11R*I|o#G΄quނ)%ޒ9˕l}DܱPz5ʍྞk0R~M,xi}]& 6͜"C bkAEϾ26*yxEj+S Bʅ2ViVJn%U9f!4iэ0 /ɱɓ1Ŋ>@M:cQPdCo#_5-aN\(QaM@a]C9Jl)&l+<Ûd@!CA͟0[=NKbJd5'CLg#(ˌdzY H_&kxO Ih8DU`٤^Rww.[_ 2,izaƖޏk-UD%,ۓd1$g~ vN4;+9p:EH &T4+W?ۀ5v87;0~+|>e(X}V I/{iWin v$Ǒ y)Vvt,E\TbQUw'O݂It:wCS@?0^  0`^c0/"ނY|/'lY`\!e!Egm?lqj3?h~۰뱤-́b"hp+G?jI2*.e~p0*܍d?'>ӳ0f{iu - (w*EъLf6s1)8?x򚍣=5tÀXwکR|Kw_Nd۲ 5IQK6@/Ppȧ>vb%9N~Xm&7*Ci VDwαɷDܒ_aSUlbIT$Zs>"H3QACumPgHla#1M}^Ң v__&^Ֆ8s#í92dDn.x 7[ ZJ޼62:kV>vMfO}کY 0\">@QR +B)K&H t[&}Qu"2=hĘCگp{]p#@ 4G͞'7O4Cp+ȴ䫿|tqPG^1":HPUw1{ys]ߨ,#R[ K+YJh$Hx}+pߕ6׭uAeu38~0j(6 ,Wm8u_~App=!.$éB:hiǬ=L.Q4 Ŏe\zq~/C앎>Xe|m=1NURC.3 "j84pAƮ$2h!zFPR>\MC!zk l9%vXaB,m-ͥ6?;hA;03)T%)^nӁȐYW͹F#clܠbu3Pӓٗ!s`Xt햤_{yX y/ xD* 0m) \ޣ2 L8!~qq6}>y-e&|JǍdOIJ?rGxuyF(|gJ״DZtI4j~oH2nxsTz@|5;9-fw+>1@1AUL R+KM{u?ȗZ45~ =TLz(UO})SV >74Q~D :.4R EW`&m$w3 :CVzf#!'=kAz EdUᰉi!z,o†VwX>jwuXejMH _?_;)Զ|FW!$iT;fmi?b`RVkrkMp=] y"yww fdUzeM_кņ2?Wv)ȮZ7 祬X ] ʎ|ŔZulg3JQDDܦ|^z_xv [B, )4P.P0ԬOB ڝt[ªtՃ}hȽz -cbK!G~Qh_ᣯȦy?QYS2^wX:Cs3nF&k:v6`e߉,oXcG~I@:Ͼ5h$!/jᦿOJ;yeRо1q/,IX~Պ[ ӷnWx802pe=R RQ:cp_^H:{-$0]$Tq UW<ځ#i(< ̼X*j/Zt:-ѫA>d]rgRϲZ>3iy&g}g>yL/ۼ\ lI6GO)M 硫E9i;8J}}m]z#PJ,=b!LF;#-[W)mҋ<$a1|eDᨖȀ/֢6pm& ƾq_D''\[_:֊+ ` Mj H`k$4 YVIlNkެM. h%BGH\ö }uej@*>_#ūؐ" j%Y{?X-bCǾ\3{NϠsDz7:iU$!0! ׁb0E (l ʟ '\-JuL+CC@)BkOa ǵ?EN!ua92p!(-@Ⲿr4$}.Jv R}ug_[o(y3+uF"^iOFq4)Cp&2aqL  0 g!ofR@r_Tһ31A¦r3JrKh XccWA@bB!÷)ą??㐚:و՟cA)+J5 `h2FǵMp\#Cs99F)`nCa;,~`zL4 8$ݝη\tST&@D)[@{d+ycϔxD2# I[̦id IER>UInj27]H9a9cR5h!%\h*I07v-nCd}EPƣʜ}SAT&AF?ffSiZuF"!R97o +1;VvGkOD2p/9F t|dYY vh~Rܷ9e|a;%l@< F8&#G1hcvrK $ݬ-=$YqsKS1k8l&/RqZr\X۽;ƐI]aLWߴ&o k+d2 i\d(xŔJ3ÿfH5F"|Rr>`K wx gJ7tJ3M!D5ݼ I`J6CTezsSYdCz`$%BZ7qCQⲔh6YT&w d=q Bu3^)7{Pg4V$NW@( 1eVG (1@Y-;N:W=\qߚt%?x5H$rPJ[<@Pu1lٙe`,?C*5pG Wd˽g|Qhm,>y=KXStr+R]fe ܾ@P ՛G#=#cy@SQ Ϳ qV\*&( m c:;`p0$-/HY:MTǦgcѓYI;hn7ugmu-"A۽ܬ7W6 >wmPHQS`}rsrZ3ܯKcyUWd>3݄|b:<aYGTZ{`zʻbvT-2.RSBmߩ X!-OgjnZ)z#Wr&~]yM=1[ɸrZWxQa4K ܼƋ"l"G@Ҿ c1Z\u(%L^؉>[|@.W7EnҊ-i:Eϯ _k[Fr-Ϛ6@txBa`pqL_vO' ^[ˆF怬'aa#brq{Ϛ)t3LWL_*r4)X5+6U/,,d^/JHPƼ ))UT୭o5BLazh0hc`X|`Y;\9oX$P%QÆ7ϏDOElH)`G֒ m Z}HLoab!TnWZ`9r„&l! =a7Y1Q<^}Ct^"\|2;LW'l/%`+Y2ӑՕ=f ,ʮ>﬽ym8[GKTTyHZJa*} eGy`͒ii^?%>o`q=&+3l֐Qz!qi!': lE|%j%D-cpy1?Uxr"F]FH:Qq?@{!WuUkHovI1x5zʎ>5Aq*״kx3$)t f#5|HuamW=p6bic5EaZ: (&E)D :؆NFR?(Q6٠=".5pq=iOEzP09!]'FUdsQM =o SoޟG#v#@ qR"^s.}?t}pbI4g0?uп ?7.קY lN{3G5^L'It*m,= *kѻ=gfn"8;<G@&VBب0 { [!6- GՑCy-k֑h mª"&rɇJ5JXdSJ546M&x4&i3a>l.&%GJ- ίdsd&L=FRKX;P1=XY >q o\\$t Z9bQ_#hUb`:>{C]Qb2F@ܠ@ ːBMż'nWx>;#80L%3B|o *"=+lY-{(Ҫi*Uᔹ$!"%pj$R l j1U)P3SA9j ['K J~m␢J4jFf`^-pK(fJFSo. NSOyfpajRҜ8(CMW["חNĸ9U?Vo>Z+UGd eYEp88 7Xp>L.FȮגr+=$ 9C87cvtPa3npT gix?y}a4D )GFYi o~8\Df\da^|5FM&j.|-zLuJ[>mJ5BgvfXaom,%Ba$?5{B;J`@e_mTY  kD=#a<0J<_ HSY&B?Cs߂ٟ:iA "*=@&@Vdky$:-x'ES b+mɩJFH2]0gA e'Қ.s*G^)L^t֥ie;_;,7X`<<'@K8eh_@S.XD*MIg:{q>XA] 2wv+.%,$ 5 _͐`\iGZ7"Y$_DW! <"[BAstsm&=p8 =AMֵ[ ȑ!_Pǀ;iq+3iC421>MqGt$8-@Q6;ASE03)DZƌпA)%w5j,qOJ.,Z,yYҗṔ5tMrVˌwՌ>D$/]) sB(ĉ=T2UQ&b۟iLljm W%gj3 $K^sҀw mTsf@ÏI5^$]AJG6g糟L'[R{'b0, ֯5UZ; Z<:!O s]tXŹbkVR%bPgUO5@`4p]Ӟ[E4*Hf>#`9st;RA#ݍyo*>..WFtGt Dd{]ـzD]'Hd,A`٪lg̸2Bn?6} 5өhfz;/MW͔@t wH Aj"Y?%gD~`*i]4/mi/zcʠzNOBPAQڔ_?E_U{=<\\bx$pTK>Hq?hQdb ZzY8$"jtGdX a ^yf_BP}<"oTbTub:bR'a/“1(bÎ@ЩBrzg{Ž> =:?,9g tDLp~:B3`~8z(IhS}d` k#OZL#иR1.gAR {K:%="qJ$Tr@(:1=LEd<=Q2H7~OU1c6$]vҲ V.FٚIj uXpfa[SeAfhʪw6g;Yք,!h{HNG<1Y7LÞΎ$߅YN. -M)#kȚ`s)lS_i2xnzktW/YQyx`j3BY᭤Txc;B$P!cY;A\9:s m<J96^e4 3g6ejH\`yg.pGUKCsQ[I0_8nA&0YFT Lh1<592ӱtܔw.=*j+/wzE?T}6E iBIIYRU?1HZH "-pmj ȟԉs},XZ?ϓB2byӨSgl1=_/;ւ xjwEfSC7U yJ3 ڷ9fx#mgq=p /\CB\*U0N)P'1& .&>3DfA~2 jmVvC0/ۖ]efNq|sNJN4ڢ5ch'/~QTR)]l[wRxTqWTĎVuͤW2q瞰sGHI% ?L uaȃ/w 藅%"Rqj^ cAF|^iYԪrTz\atp5ӷ6/!l"ȳg\SU-j h{ڎ$MÎrI]z=Zu#!/y]ѐ6˓,9 L=ߜ@_fW9[ކJ UNQ 繈n:Ct{ҕgvͬP1{5Y|m /H~^w%E[BgҵH-0fmr{BM]b/Nt^9^.?x\3J M@̣%Xdy,5Z8'uCqV`ZuA' jz$G~a>}RoWgM Q7s]>_aX毓+U_O=}M/ -w0_*d &D:D-@ީ!Y_sphE6bzM31 ii 1X{a3~,*C*+4ZNA @/My j}R}%˱|)ɢ'zmʈC!@pj b7 ?Uw0w:+RkAqϋ[Cgj..gN7h98!"fzFFǏw4ٲiPlhrpXq0͂UZͤ$Yg3^BӨE4?IgjaQJ(zz/oR^Բ-=#-dEK9 " BXX)Ⱦ }F %>tKYc"q,U &3`|maR߃UE+,2Mˌ=GG\g&Cm~9`fp:Hy,-Qu7hytv4X5;{DW*chz!~l4M3r`!]b K/c)Nji0>M Nyqu 8!2V2) G$NKMpHK԰`v'F}Ux &$zYׁYʗAXUF!\瑌l3GT}T{x[#BSRKF:XMGw$3Ȑ) [3vj:PHbДٚX73:,U9ja+Vs|MEY`?tч:a?oz&Ј.Y L=mK jpSUC0bOI+~[r $3vy}guUwI#(OqǾ2v_.u1lD39Wy7)^`B1>2} ׹|e(&Pޓdπ:3jFU+oPcT//[%5' 5COE/\U28joϚMY&F5\%$ޝ:" Ds#o";c-q{v^;P`B 5 QsS0XHA7+&fڌ>]dh3܇^>(L`Fɍ*ADe4A7ޞp'|.~5Qb#KO7]B'*cx=8l1Ql-Ccp?IܧbCSE#G rAK vZC\!+cBp_TzКQ.:zX`e(|j~ޥ6Q|Pqik/sY, {-cr8?·Tbv^J5j7YVkJdK rmh?htF]z2Q^FhT&Ѐ65%F^H.hU^.+ &.i UU\Yk?JpDxc :m(N~zA2:gw?4d¸\{8cWAxK" +ÐYfbR&Vsk'ghq%RJ[+՗l2q_Zɧ~~`nZ%CnÒۺF4yFηCz*VةsMYbie"8wU:}kķ% lRu@ာ)1RZ(ʷ`hEK*Uvxtb}ѡ\Xmp7Җ)7@ DdJӞ( cCh~"S LU`;9|tl7S#G߷9"JtQo]<`")Y7䄃/n*JbM;_okVO sS5 T l_pJOK :3TEsn]~kT3KL;,TCcYJ94@(.,l(nK޿mLyDuIΪOˋSy@IQ2N &k]ѐUPV`AymAҪMpe>:=T9:_Y\W/XTµeH)k܃df>V09sp(o5Qj$ӿj]Z/f8W riEv-'x:pE>x?cTO1i.N8A.đ h.fm PJA2T" QYI_[.T߶F5:J  oBy\ p7 ˚Z">; WXC(`^yʹmbP7Ã`гۦ̖}a30Tag}ߵ ;ňFu((ruLcO5+^zI'pCG\'%{ Z]8٠ mtk><9|^nQ^RX B̟|FIR{JvEhtP(Gm ]c/# M18=ĊA2`"3B2kWi1H|&x w eBrFgezX3a P9{pԽ&Dz__ -RJkA=FR=%e;dPD' %}p* 6Γ׼j-%0( D=hJ<JK^H&J'7RBbgՖ<K{'ct: ܳ mujr؋ߋ>R^'կko襒J˸:#PX ݺ]vG PM_BVTG;2Ѻ(љ&E Y6dȦojNNhVm#RqۉF(i10M:mRHB< <_hͅ+B9E2z֫ +"=AW'߄MɚԳ0GdE Tց (oҮ }S~/*KX$Dē[88r9%f@Xg7'K$7NARyp#߫;$.`9zPc6]l~UI1ϣd%کN4 Q 9g=hTUolX9+9>% Kx:/! Eצd،WJ*!$i$ 7+^v`7 r_<嵵T E]$D1&Ї+P<#bv7GdX¶z=],Iw뺘EAi1DtbhKՔmm(aoPݘyipٕPU%P?h0bv3G 6{+=5&ϦevuiQ١5 }vvKml+⾊RrkQZ`1/ƌ"izƃjO4-]lzV@VOwc JW DT)aTC?c湂,Wunyɔ@x6>'<}ܼc5ND\zCflWwU*V͌:' I!IrhP$=6E`#`ŔjNNR+5 LM\#CxX\r&@MG!M-m >gk}N=CNYoJc(˾\ x$=ܦʻl)9pbJ[/;VsȀBuQQt8 ?hmVʒz\HQDSwLR3ȽS\Ыb8O)Ӌ\+epWHRd0ݩ1s`rtE`X;m7-<SiRĚ?3Zû{"IАߘ|TdȾ[`HY`sPAHAPjO\NLM8+MN2daln߹H0S^%lZ/40M_&@bm*}CVD"&J|4)Ri@m][bCjW\%9+DT2k lT$$߶rF6.P1e+G.qb-*ʨwyr{coP֌ _ D[a&rJ{g+/7uJ&6x Yѕ^g^-k/c_ u^z+ gdkN&wC!=]_Jpdrn\n/SMIЇ1R"}hGB 2x5|U蓕ŐF ; P5UkhKվz 3\*xo[31p2FS*f4sӶ'2ƮK٦Ң9@M_Xh<_ זּwXiOJHـ2W8 K8&&lVH3Wj`n*.sgv1ve/Z4֬( MIVMB0y979-8x96|0;&v 0mM ֌IA''-!̱4A;ml)Ji#C[)yyfQ_йZ[*w߫?5z5X qh7 7MF`*d߮e9ɽ #h(9LMt%18VsD efbZk|vniOnaph E":EBD:x$(WHY7%=]u7 'aXC.Ǎa *+10$l ௃TPygrV M'IdĚ^#dG!cY M19,N\ejYF'e($ֿ ģqC} @]h(ЈB9$/IBG[FqbT ժFp%R}nSndu@CHgR XY\Nywo)u2e\BrXFqFec+lŹL"+W;C 5!c[`j`JvOˡIqNJGUi ;f?ȪH p#.p(cBL=>*#\&6T<ҙ C[ObnǶG=rD\[OoQ=:󎂄_mcc{VU\G_CCi]w xj= XSq)OJ_\13OxDh6tgALP W惛}?RKI]J M3p5rڦe5$ޤ:{1 xU-v0x spFKjLa]dQ%q#nŪ_u[ Ϩ15V:ږ; wY8Ψ-x]'! |Ջ9t`';ıNSۀrndzJĚT'ckD)PWva" DGG?pT|E({(w'MLEՑbu@G$vn7E/wȨ9G͊m޺)tۘ9<'TeTǷƛgſp,$ڍIŖ&i$\*tCU~pYeɭBq]F?\?`A!]ۮw[dTQqy8_Pt8N^6TΎB:WabM9ʼ h^_Wz\;ƫTS8o }W5.vӲPq-ZJC/N2_9+J[,4ށ& Сhse!lyKf(P\gHYVT7FUCuSZupm dTFTWe@Ϯ* NPgN_Ky;_oUdJi(\] XcHC-fBg5MÈS0S1CvAa~@@數g%>_;"֟AU¿͛cҮY`}<Pmv Go_ =XJt?WGOwG$|MwFǘIh6Q/YFq\ZX837ZƜTK2v#io`m]4Q𢓹zsy0 R d*gO2EfA'TIBjGX>]՜%һŝYT0+n fr<^->ʶP!df5DGb|q#N5ɣ9dMژ$L!WZx|EyI&zAY^g= 6$(%I*@YP@AHF6^[47~/'O"IlyUDɘ͖gq|H BЁ6M(Nr =)A9C\WMv0l{L ִk7m V l7;^RcrD"d*/+PONuz&wX׎פS=pS(0 ␭K*8r\PsM5H'ڰsȺ?aYȯMAQks=aA){ბKKE V+&Q.sglWN)hS=NpGd3mCZԝ0g 0˟ӈd@)hm[!7Br*,AdJ"1_f$Ng>W|g 7ٸ+4tG(X([ByiV(4KDžyuōQ-}Hf<@ t*aQSvCO%4̦˛9t6A{S-$odQ ݵc(Hsȥ콉z&pЫm~V HZ4D3bd~ 1P` =Mw kdE ހMRcsE#$U0?f~ xrUz`7ps]N8/ GM齗vÊ˓eRLJ$ w}j܌بŭ5(x{) cj>#8nNQLE`eLfdT; :0l>3͢pdjh=kO|H57QPhV8ǔg GeENؠ3닊!JOia ՋNBs\YNR4ր1a2lRwҔB}u%d共͚.Xs#^]خ.=,үb8Q=ȑ!N-;^ez.C/vgiUq $А[\;s #8ĞxTuRs8lm(}6x?&0ưOϴsYlcHκ4ag^v6ـU#i+uE:WP#.ƢSg䱤p⅁̨ bKۋ>%mY9o;AfrRoUH!o)MxYp9Tԫ;˨|"Qj~9=<Q$}5u_QE թ=[mEnږ:%+qR 8+#ZXw窉^p8>^l9S$vșjO7Tѹμb”TprZ1Lc@>e5K:zƄi#pI l yYn&_0Xq!QZҁd둰;QcC}i?醅“(~3m 򎹐X<oAR+MpjNQVwp~*f@mKmЄǬ_7.2%|O&2`76lp#fxy>@:|n>tԏV'`f?(9iiEYmyNkEa¡.._ҕS\S)Q?cٛ=֎5i2oݢbK\3c XnO*@/S0NA3k}u] |G*6ce3j;ɉԯw. 9 ?l:9f0Һa zL2bSb)42>A3_{3joNwۿmq%F+W>zU> U ]+1FM:3cYE6Ŏr͇IC;l|f#M eg[|EGm8~lDaPPO60< ltﯯT1ۗwlm2B7nAUd{FeG!F>[Nz>1+̶`t0 i_2Z26 BkAV|Gf[yL+ƥ}GqUAwB߰wC7/åO]?eyF7̘5zWJ?Dm zlQj#QmSVbO1(6+Q.a6J7+=DfԷEzaOzQ_N"GTVs jVYEF,L`SĪ(n:F]hL B.EN}B7#l,{k oZ!$hE8&@xer|k$-gV V9q`89"⿫E)zФPC%nXڕ) [z`#4%Q.1(?G'ǧpeS%[h= pI|Ss.M)0g5=o m@*l(݇ {vrw2A;tJ&7 ~5`L^\vG۞KINcdO(&3eD9 !<ゖcOKLzfչDO ٗ*4}/_ ׄ*bg*¿Ӫ\*o3/y,- t[Kn0!2{{ CM"?E)f!yCDeҢ*c#;?t;{ݨ\X Nއy{TYF*'Jy?cݼJMʻ:0LHūHJ=Abm,*:R[n>dΖa/ttpˌ]Ii5G"[#RviTRroPȰ|e܉a/DtٽMbz~T e% 9_3$dZ?{%r˻a'6ȤuB4j~ '({Ldػ_1\Gxi8QϕRoJԦOHR.RE}p [&B\W}hqxh+Vtt0y/1:Us{A[N~/ŀ)7. !FpڸN. rq w`f. μHOGdILR;"|cv*FF˜ҤKX@ ;i|G4vO=M@_ŧAV5 ~S6} QvjΜڌ {gs3'2Ç`uU[MsH'X[/Yӗw%Őkum[}S a_Fa}434m~6dL҆3b-͖jUY7=1 YݨMQ2W*8q郳pR:]rvؓia$`ؤ ʭY7eZC6t?YvᗍK.U@uV0ip4 JBeg6U$pF4F,˝h|H3gbmBuƻ ka ^`hiI ˩X6b0M \8g84P/(:@ɲAY22OyTH$C9xSjJ}ڇSoB$Z^:.`&c58~찤0.ݻFM ZهE@krr #skrRY۔*c¾A-Q+t}y]U|L"VӅQHZ][A92 M d0Kӿ⎎#2ŬYLbƵKxAE- (+ &b-mj؅ȰĻq(2UB/m CѦZZUCՒ.yE@vhzG`&hJoJO`$˗EܲT)0= UuT 4SXP/փ%Mq|\3|u-E$Ɔ5)Ľ2{ݚ>}!>f(Jo"a >KɔK;wUX7<HjB8!쩸#W1e*) MQǘol` HV;/Гnu̫CEd1s a'=i8leqNN+9/ ݚ;96a{Bi6%G|RVl /՛ZoUۈgšu&{-f%lYGrm$ެ2O.d&NdkMq kiB ͠'CUS Ģ6n.1ǸlN(f$p@N; }@Ϳ\+ubY`hkvֵFzIr<5YW_޷3-c ;X+^buyO4;Ag5 7)cB]aɍ3ԛV/gsQ#BcH!*M8kZs~)sZVCMMYB"aѢTc"5L:au{'ؒ\Ǣ%MH?v,qZgy|kqrYz%C?mŷ>”x^[\`j9|SAz~GrYvI}q㰀?{0^2\fic ??#A¿I{ Q9,v¯$d? a@5QKԀE":o{Jwj.-KpC[ ·Y1T7B|ו@[X!CNwIvWaFb`_ 3 &h)^[&)o, D@GcLЯ])Än}WЙZ^"`b_cץ![fχ+<0hVJKM2LҢ4mK*]';q $Eu?̓PT:(ՃN.E!Uղbf7av]u7"Q ʱHHEVL:s(HkvB_y@qjǪ_lf|S)KCIRVwLw9O.)ԣo;Qh4ZN@"U t/uK)!UDe}wGqǥTu=x(%пXfYerNuљb?`;:u.?n?R ԧkGi772HMr,B 24ބb\&FAE~Ҹ9Uh"⑑P՗p A2=(+K4c}|Ex֢mDt:7^Z;X$]Ҽ3Hmw*q~8:û? ¦C(ʩ]>`;[T=O{ I dmҸ;Gjk ]*uQ{ ~*Qάx&bس D WdcE^6;5$gx0 K!s"%o$$p0rc}mZX^S^ }BjĻo J5M ZPLDy\`~]##<7&TcQPkLS> z=qF$Q.4!jB{U;rWD0 i藈#$8{oW>,_v7I4؁%F!rHٴxKJWFGctfs!}BxMQKT#^pZ^$82f 6vV ϗE6u=ܥYdGC25涭s^Iay#M(u gC譂-: œ :d-7n ;vzKQZu?aՎ)`2Hmϙ[=1Z$kYX:1ҳGC04~ nf^(*H⎔A__Nx9{-3-zho7s*|WW]s@(!^VigmWzڰ|g&IWpk@#F[80|'uhKBqIC%F{\-ǒ^arW+0f,T^5PB&mǻ(PWPKLH$-l0K|qdnVVkeȞӛC4ϩbw;,h?p(xR"CQ(vG<r^A8R8#^k펇xRX]/"ge= }%I) hEUi_e|QW\6eOBʰpIo?vOS.;{ -5LD?!2l[FJk6%Xq?-!-btΜT [z~MQIl$9i0MuA"I8>akJ{w" bExJmJϊfi">b=ƀ\zݨ>˝~'2R>E&cf=D3GsGu6-`nZ=zoOm:h8)e+_k9Cq vǻ C3F]jpƩ7Ya? vAΒF v~|ɱۅg܄EZB{g1kvsقb֍Pٓ\}+7R߃ O~5o sp3Qn{L<«УOR+z!NP l"h-O*7gme'SϚQ݆Yz;޴}%ꥨԱ˺-fn(ȳ0k_tihq!?vur}Z5egtHK;=DIOvgΑEn:e]=5d*г3>Y7^،.0+wbmyۣΧ}bSY ~lP 6uA&5Պ\.AuR;x/ٛJpŽ^h qi l,WZʙzˌ'd¶&VIG#g`w7/q*e_sc/KU)הtrRC;xtAGM!)^//:˰LfB$Q& 9]k:B>^ 9 7ыeZߋ[ ô_uyKe0^ zjׇVc4N[2I" A n{ CD.x)$Xok =_IV@a H } 9j^7x8o(98K6mo‘ܦ\QƧ lWS'W.z՛u$ z,e˔~/o%tiqVfny:caN>Jm#sfz Pu*^122ZfhBr(PScpB&o~΂v8l3XM3_e5ᆀb) %aC j06֜-{LkF/1r!&CN{x-KKFո̡8]e|}##^Lw |ѕFF'u%Gb(n"5crYrͽZDB\?u KR]ghWPePDJq;ҴmuC9 OU׬A$t|q:6)cB;oR."O6٘Ÿ`XyTa|;Ay~*[W l D- )6SXsS |Z@e:ndZ7n5Ѱ}5g]rT"<ـ4ݯVo4򐃳MbĮ MUgFcydb])B.GW‰>/ew#LL.R_gQhAn/p44#.+HdSO>ma@HfK<_c#L1ttyѸ C[ qq@2;+ 'RlZ GzѮ8,m7_Och~BcJ*K%8`Ĺ[иmIτ7g%\BfUQCc(M+#عYjml=iqV}#?cll@g}L$a{k :~Lɺh\˕z!4A0,;dphbd$(3tWf)fn): ~V^Drt~r ^!.sNĄDaQrXxJӖY6PXԝ1q-7;>O4[l/k}g)jk/j`愪c IˢMR6=0GKF0'CڱV8NoAO$ޘQ\{Ce2|ZӮ}S; C17} BV=y G1lA G9R&$YRayUe68^-/쥴ul| 0R^w9uN;3|)"A'2{6ݰ5GFr>Y%:5=X+",D&VHK#sϷU}cS-hfYZHߡAv%<O26XiGJ)qp Y73OZ85x7n^ݚ`4n6R|{05?V]8Y'_Of "* lRdV!r|'ٲ`]M>UP=l =^ \Bޭ.MF,e8q: Plq3w1;0dQ6E>SjU?%Wtm!_ 9gd//H7)@쯑;A.Huf3]BBUr헩 R s]nikSdDK|B㥥$,[# 3ZVxT)zŠm;gs5 ص \7!] d)D[sلu/DpBX seAtw6:m[kxRi쯈I[ 1Ƥ(喏r;x@&9JI%LF ĥX,od AuG7¯d[G \~jҞky!31;(<9 &L)Ep.QS'9wrl_b֠,8Tܺih.H6ZӉđi< 0QbĴ!}r a|]lf3^ZX؎]VM^0{(KD쓗RZgؕBXcۭ| G,ߩWKBlP%O徦E/!.i6vqX>{N%HF_BZ7S%~/N1$iLcse\ɂh0-_iNJ"@xMS:9 ? ݙۧMr|?xղX3NͼND=zp.kH;\>%U2AQ7e9Ks}-I~P'mi2ri^C5U(^#sj2XvP& [I bmbs`J S3=8w-ɘ2LW Atp hMܫPFS9diql$-hov,LU\< + 1=n. sݒ Rr ~T0L6i݂ ܶzw7[cT};<hI=\/yzx#Vh;ȭ}w Ѩ 灑ܽ_}RPbQqDP 6 {S?J~9^0+FEUwfJSCƋMh0 b1 X*41 ݊&I'{Qx.OUf\jRu1cㆋaIH;nm7|VQi!@m|ÎS+Bt9sYNCXҤu7"+ղeIzלE8}<,`6V$? O@dCiHzw:Z8]+S*SYf 6GJ&v;^]4Z&&.M3ld*"}d8 IXSإnɂ咻dhd~ysUpń;齔{]-A>k$eq@s4) ½QeJ~ʉ<\mUyxwJ-grNԐP[k2{fL.01>EJ{!Fxn -EON]>y8=ϞBSΊǘFv%.N~D'B> %0:tT߸6gb24KB8 T*qq\Z( vKa9OF0x2[*lϑu_ďoV"p}?{l7׊Fs{C2;p;a[X΅IQoN*]=J5%o1~\H*:+Eҁ(}]nz+_t̯xƍ.yO#DUԥGdiS:ۻT%LWͳF`:TR+~]!s޹d\4[sWkƙv@~"LJ/qOm`WVD=}G,}`^Mi'jcyt I@+F"uQ R üGF^eگ%96S;[QTuUXY6NS%#lo94ԫ@z)Ud/x ѻ4$KW y hGkT bj 硌 G2v C'ɖkVwV- c#XL*ٍ(> *9`D+Ɍ Jb%k7)$-.*z:u"&xcUřzLl &@o\A>SC\[pZoT5L.:Xؕr*/1ۊ8'10 m>B.ju|knWNWn疱\iRۈORP$[qnwz(F8t[u9!5ɗ!„:jb(|ߺ06f[ֽ/eZ#7bzBق7i\/4ހX<&V[\2VEM%0>f/r6o6!Kýyr$(s&D) ҩ%[8G?Ad/sx)wDU cFe_FU SѾ[WY"!I-8??d:΍Z.FbE(eh`?]E1љ G43}?OKF} {dބHy 05 ?jS fbWnq5Bhh'Z.i?#hJFHmr:V z~OD 8:iH8 DTk7>aC 4[=CUexUaZ ͸xRVdXylOF}墼yrM;oI ݰ2Q!z]B×iw*6ckU21 FJd]MaQg/Vp 0Zk 2HbPY\sĘkP01&Q3\ǧO6>.\Qu$AYق/lp$dkuDQ<ޓ#lzF{SE))m]IF!(CkyCN{B#"Axu+1 2m3+jy\D",yf^i%_9k_=Z7s!8 9mᑱ齐^hg&?HՌ"<+BIkk1,cbˈ|vlmھG{ fb%_`<?Ya2F> I p~>x  WĴB Rv)va+ĝBCP}Y"-Hms`Q)<ΐDRfhmWQՆ@J (v/GFy?؜JᴙKZ)]CXK\ - *~ #sD)o#\Q6$ex)^$PYa[)Vr$Ph Vc.~P.:cj{.O*qZidA"+"rլ6Ys{Y'6 :2_k|0.nyTֱ#i(mvI=SwqG.]ĵ~oo^y afFNJ4m %ӭZ=Qm@vX> !&s?:~ܪ=9n V)mTnNRUU7Ki&;(F/oi"*bzT=슀~r-Ni=,KQJl,SKaz8?yx5ش O0iHf&T9PCYx8pl-m͡yZ٥PF.Z:lc}F8!0dGb_I฀d+1Őon-E7 aށ-Ļ4O4B^XbzŽDOЎ"6ʺ#š^!͜٦A7MH&HJ 6@jHGwie2ܳˣf{K=d ɳ$8(=aST!Vn>rJuS.-gwpBi[:+L\6`GcB=.J8!hk\Mn\Oq&43l( ]l/ЭEͥ~D8cݱOy%]<ݬX B8^_J[M#M¼sWȇ4.r͇/o?,PA=L r/8TwHgOč)t~caEE IUA\PLVOyJ`^7pdʡ2!-@+eJ #ps1߱A?x75𮦔|(>[QĨ v3=aY .̚i+SMI}2"r;59zK397  ]ֶEa%RZSdRw*dj{GW${og$GtAi(%?ѰRe.P*PV!*?qJhjY4^%!u&'*AڌC 5M :3.; Vb6Y.А7@,̏\"zˠB=֋B7[Qup@-=&m9B&`^Tn1iW J@r‰M׬yܮ3t̹zj*HC7[óN>LC8!|^i8oz]dqDz:ƍi]'VrY {"Sc08b)f0EL`p4m[${Ggs<^jK.F fj*ֵ>D"$9g?3+te 0m=)|n?q|e4WIB^K%e_b>~>EybqMOPvL҄JKP; r҉ArPZV3TXurЦmS|F#2vo.8匧]CH  ; G+ jXZnQkn7בc9B̥dG 2}Ċlc7 ;jA= ezݬ+M/gSE ټ}* s#%l+^@Ӷ Ԓ#gPYfd*Ua^BGW>O!I lߓ^/d%.ԑrJ69ޱW[-1p]Ue{oߘy릍KIޟA2,Zh5Z:\ecޥV%jcBa߉oz^v$hZJ-հ8Z0Pc0^LpiUmJ|HܣXn"3"ZN^0"O͖ƽHMws{DO\n5`ӻ[ '$dހx( \e0C+!o~M v| vcg[o|RBJjn&:ֻg'`W24C" 2ᩫ9d$4L3ۈ@B𶇯|%GxcR`i! RmiKLݨ ~ՒQZVD o7z,qјNi[H3pрWU^v#2\~]ƎKS$·&Fgw.<stk`j&5t&t|.IP^5+WExĀ0a42JE Ȉ9HeIsͼjX0wԉi'njH]$WH9-o U*l=$?(d͖[EH:(!Գ$l@v\OVߡ,ާf6 7G@g=bRwTR;Zl<Qaラ^iP%" FB ΃ؙYT~svEWTlތOˁ)s:y1q4T뚺8m3Iʹ^hI;w9J4`(<1L)8NH9k Et\*Q;7B ZNo0( KCA3\CSojjJc8.@$F0xi53j^UeiCJ Zc:I**QX>qJ0,{\)MN>?ڀ\]V-|#W"vG aB^LYQLR`FML ӝ ݺT96%ܘe@Gb\Mbބjה# ¡J1Zb(OW`JEfY qIHM c`뵯 XB,!L㉣;c-kJt%1iMf]U#εˤC IF=qJs&I~he*tG Iz'[}B-. =u Zl Tv}7M*t^DVQ=x<&/Eza}X/UH8adECV f`zU7犯8q{lc ҖK`etAwM]rJ@P@S:D@r7e lϯtԩƻR؈]|fS9lSEdƗ%0gnұ@ƜwjMqDz%gk]J+/H;`X\5%G6ԸndaҾOW!u;p*k/Ǝfy\EAAjNCT9ŏ>Ldƫ+RnK ֶܱda}sg^+mpՄ.~.9cb"AY+jqRdS娮C7qQ[.r -l$K*E__q#ҟuvt ZP_R5h(zi5k 9';S3|M{E&(!6@jY-Vj0H8-_H#KsA!see^_:+ d +As`L )U| [`5|UMHgmCAnl4,q7^mX<Ѥ=` @0!{O4`064@kٜLA~mZc:[>kI0EĚIލVv^=Ͳ9C 6?XZq+7([Ez۱zꫵ((S=ͤA]>]īW1Z0`yt>)v@_~ $L/@|5$7*̬"U9ٶbD"T.o:\/K_{ ۹T51Đ lm?Mk\dY/}p."2]ܑ1o4kEL+< AYc4߻3'j]ь8(A~U* nWǛM60@t+1C.PiҶHIu n3u۷M/h2;s(M ˀ} d|#\\&qj7ЍF ^='A*nmbb<Őp_Y=WQ%Hu!z'.5zff ):c~ NO[8I&B4-g BCpSCy}k\RK>7keoJs`B8g S% $``)؋cIEIZ5[4XѫG!5Nx5Jn5ͮ)KKab;{@D4'F=LHMd*P!>ZK O27;+;[flMDžHAnՌ[$/ 'Yg ),6"i[HN&bY)[L4++ei/$!] (7MBHиlT\]2 ?Oa hV̂Bg~x5H( W:tfeqex GBe/*1 c7h𝶌@;+Ԇ֖_#OK `"oVlX26_se} ,?`ަǦ^GwӇJ%O:È[Cݠ̔%{7?,tnYnT=8fnd; e3 1jiG;α|hD**b8p@}ӭ)zfS`j*Ss;(SYn0nqݮ FTv~OUBZ: ֿ)ʩYly(\2>9?&& /H>cs>*%j x)檅fr#@X\mc,PȘPg iʧ% ]xa;zYLV[H"'GNwP-2i6ٲp‹tiOMύnL'̇vN )B .[Rz%BjkY_s>,ƨYt| s@Vb* |Ēg`MT>ߪiʲΪO=9\݇lNl~VA6y}I|)3>LE%<okd0CK211@a{iJ"r|򲣩$x➇JI2û# Ry$Ƿ^O+?jD[,6 (Y2S}J+suD4/.}@!u+`oKՙet|q]>fYX1н&@. wSGoYu#LYU *pxSY 6)r5,v% t0A `2bk(~u{YH. tK0GRCuŧ94`&0 $Ä嫰~y/W$LͣޥoO.q: <FI(X 54,@Dj͟%ᩭPT2/d;aC$֊*2s1,GAr&ܼ]efz2_>)ac&6Q+ߗ?>K>  CYN:"DrI"m;ޖ9;2v"ZV˩^{5 `Vn#RTIH8lH<`;N\y5JK;woڕDy1{Pj”c@%H>V0qеXگde 1(s8%O啿QM3RȌZpfV%w*J~\@NvCY҇G5I!Z{EhZ꜇ b%S#URJe.Ŏe"Č]SrT$FZM\cW-tвe`=8qm?)9^YgT~ꍘ/?W Qۦ, br`րhlJqs{Ⱦ`lj[dVY`? 5( r_0ak!_M*cG&U"h`/sv6QMuyo^9˫ Z" ]ZkM (SC4G:_CeM_&DVhUJ oFlB?duv$L-ge(JG >ˠ^<} 1Q[a߿zw 4b "{T-0φt!(b|@ܞN3 eSRsN?#CCbX_!ä' erq>  dFw'&xVV7eBD>ĸ!90ʡQuxӑ;g!gvY?vIlGj1+N㕴ޘڢ 0QE^]!?/K[67Y9 pb9=V܇h{0r׻A=py = "%Ruk [5Bx f;7ƕkBh8ˋܞ3k$sxG!w[KXfQjAm)H C[[\QlDߤI:2Ԓv.Z*?PAl>%ZYl<1FZ2DI7ﲊ ]1xʤQ}{~b' P"g=26Kzڄi8qVT?9Xf;5yM@D$yTڢ|xVjVRVh2Fja$M-_6GW.%2 ymrՄDB麐Iw2ށSq5x9&/+w|b `P;½=zdtBR!&|ڛ_:RA BqF0{+euMP׀]k缿GNU["'LQwJ! -2:fJZ=zbpB$1zdpf(?zuN0 9ş̰xHB~͋.J~(❵=xز:z|&Nd:l 7tPCR=m?p!Ǟ&5+0c~A5f7QـB~<`Ig'q~0Z4"ƖT1wwvRE2.bG)r+h$2\΅jwXci I mb'Y6Q#<#r]Gщ@?o< d65ix'BSBuwARByڿ;~?U5)*#HD@ECauIi=enKuJ߃'њL~fyi, +;ЀZ'ZLLf[被ujq]ntun}܊7%Ss|V14,P+u|O9.c/ydI*d[SӸ Qr.U5`3X њC$MTZ6[W=pjrm#>mLõ?mь5QU]ȇL ݩ~]WѲj@ E"ׅ䭧7k*AӻѺ'wl]6VMmiQϯ(vȚY-Z̥ԭaċ?"0bp? pt/~}ECy{觱=/@{pQ6-%Y" 9a{Dpl' l$K8Lw41u?HXSI07杏ryuo-]y񤎅NHĬ]4@0:)6.Vu~63/Kh5śd{KBn ĪhU' R6VqJ&-ԕr[GevGe Ųp¡KGBaMd(g8c A߸NH{)SrbKdɛY}>ZF賧@98&E@8eh98 +3Y0Sit{/΍LE^m%RZE>udwҲq:5&Enx6ıfj(Z ~tCᴣ4:[{i@ʹxC}Z|3ֱ3mq :MQ-xDqXZBKwgL2[',ZBgǬ_LY;j:_l!bHPv{ELۜRL"i%#Fl* yu~ I^RPsZz'=ɲçL-r6jUgm*&jʒŊ!\!WRp^]K-1ff4;B!s T\gA+?)Ѳ//P/䍞@B#)"lY%*hGu|`5oS`}o `N&(coUK[^Ai#$/s4ZKYUΕRwЕ VqlopJ_ɛr,30v{Vرa2tαk(ᇟ&&`Dk*Fwۿ"USl{ty-Ԟx(^_5|zz7}Lcfs>FU]wr^]9_5Ap% ;RgP'L&m6FO>tqhD?av( Wy;Ep6j&[0|V.; C12u ahdG#@uM3u΁G'23?0R\W&5׌>5!QG獟 c,>G,1ڟ y vPUkuJ?`+s,BYgJdɲJ@g&m:?muKphAh F4b|ucLeВx]{T}8'~}@ XcWg1Zwm`QNjqo 1q=-k syr2X(:YpXRS CG99l/c OBT-d][Z+ ‚$kޡ= H_藎+^| ukOe ap00d)nTb VK%\OQPcx%˴ ^AϾ\t?3rYuտ+'4OYyG&W-2!]/[neއc1fIz<_%{/x/Df ݃nχ*6Nv1xfhs#dXrFhQ;$X<* /D`b&#蜶ܖI-XaZi qR2?nyEJ_1`a%d\=$>*,KȑσMhϔ'GH~5 j imN(*[Il*x.d\~\]%XЈNGoԪ4G[<1r46+j'GX {ayy.8#䝕-U4=,%4|җoۢ `U)j%,m0$?mQv>Wŵߊ轲1@u.Dڃ*{d}()߽d$<>s' `85`QYl҃+†#$'88Eb-"8aT)we@Tʱ[fAu[kzJ&x#0Pj'>&;$<֋/ݦ'y !hKV̢_3# ^|oXzGNPn@|@.8XէX&uz OLV ^gʁCņM֍]4pwn.Kbw*c/895 yYw.s|elq-g,& Ӝ#r=5@6kgs;TŖ#ڣ »@ч.%wUYTqlf]*,Gj-ʰw|iqߤW}rE-woFͧMN儝?6?ӱ`xˠs=Sc)vf<!̣WrD=F"aאUemCNQF23vlNX%3ˆ2g?rzG?Kyyicz H(RɈEXPxX)'*IYq /9X|KJc(2٠ݗ fu%2D7p,A@T)Xbg,E'MtwWGҵuT1X*`޿=:a+bDjڄTVzʆ%#;R3<e 2nGZhzۤ|\:S2 ~|:iy sgx{;7#~ ]#˚Ԫ0*7x96I4BD uuoEF{& }d$bsfvUbdHn,,MAtcdPX $7=b *i~úAz{ ;y7o˿>P2#O2mjC/|x TN;YV$rT'[.) /T(@ޒCv-~cHS .iZ8y"'|U+3!GZ҉6$2ᦒȎ Ǝ4HvD0 IZgv?Ҧyp,-!Up$}c #+#,yGI~DMEই dAp~NafOĦg$?wGN`ֳ4%XZt5v NR} '0waB%^~ۘAb<xtT|@ZzyuT {9k;Hno]cf=;GIV5c|`]:,oٷ /!S$PbqDVH d$3"7G(\VqUĤi\~k4>ev:$†IℳŴE՚{R|Aa{20.j7u #N+1Auư#7aO$uc^wT-s5n =!}Z~U=U[oC(tgtD8 dOw{Rd#1J*M%)K³LbQ Xp?eG"U!e鳄#dFK#;6uHe7Zh>ҍ`{qGO% 4 rף`F4ρi>AZX;U 5􊟙Yt|f;z(Hsjxmd!dC9ߜJ $=ؑ*J pe "tn]4Rz> ̎r:v5YI f)xhaޱx1ƄV]IR:- 0C `(kCg'++ܖ07-E3=V FAWݤ0 >zJ<"880$}I_fXK2ͱT:X,ɕN*)K[n( w3_ xAiyϹ}T9+x3s*[=GsZicbp\g\h5ڿ@dQ$BF !Gn3T /g#m31ykHfhqmh"V8ON`!`s?J2)ӇS*f܎o^C{wRO+2yxĞF$?1?%J$͛N%9߳ yFeWe|̨vf9M!_&6HjfzJX5ŵv"5H 7Gzjjq Z'~G%1Mά9{jX@k[jX( VbWz̋I Xi} *&[h5#vƟz>*:!H'M7 F=!a@8C5aқ#tj`ݣꅗN^]V'Jۯ݄Ekݞ_Z`J p?~1/ahJ_p:E#ܗ\+vsZt~R3$<)MymR7 ,jqI8W'԰ѓs\CJxE D6ѐd|Hd-^t/ \VLUjHk58*C(8Ŷ ]/~So)lGWj0m`˥jeZʒ2+,]竁%aI:/3C׹0 $4gfq to {iZp\JW20Cy`jS?FTLKr%|l Qx 6kTF2:,Sg <~LGmD'K?"=⑭_"nP#`?骽vI#^JFY2|\JgvTjRȈAkrBzco+M+Uh}0kɧ8 `Bh]c8!8k`c,Zqtݿ/ պdx|WSL'*bxs<^V#2AyE۟~_(Mtr'󮈙f^ix24J`STs{ !AOj[vЮ[Hzͺ<`X?G-^!P "m, Y}bO-1#d>u\r5酗bA\_F63GM( 85fWƉc튁M񢑩 #B)ݡ4烫ЍV:ݤfg"f:hœ%X=.ÓYS~t| $պ 8ܶFʤ!l~Z`K&>`lUXlo@Uo=pJBM?蔹  nm?ɬZP":)v4h)0/O9_|NEj|  Fe0 )jΌeK!9l6_k=P(sN'ZZI-s@F!9=(m1ۯEU= j- W|?iJ^&ǁ7u@3֋~W0;yHAJڻ˖l f7^@阮"l#r[1V@J;%uTN>SFÚZj $+SJ鮄;%xtkğ>-:E(mmNe@ymƌZh*B3%[RmzD 67D ׭֢/g^Xt _6arUk;oF[PB}oqD 8t냀w8)B zJRyeӉg <0ͅf pIGҘPZ|q`ANiL{ CFqdI6vLD6rɱd, Ѫ=ȻoĒ?SSܓǎGMCXZ'2|jcB6V=Lr&e"L0wjڱWѼ6ˏ~q<`T<.ڇ30˃"N/rkFR\6G}fzaFhc]c,MhTKiȧD@޾[' 5^TT/5' $ewCl4>Nբ 5(8ƀ\glZOjҢJAx^oȄ" JE`JEU3H4X7^; KV O\OM0IsH90W2U=́UGW?pI0Έ9_[CR'|K=l~bM*vH:g_c|Ӹmp7bdzߙ]T!LOxREXy:S؛_Q7R7QįRƷ e#\A5.RpWMD]wZx l~ܸX+A)T]~>lG qu9?(pï|.!XIٯ|RW)\su^a,$ez.:vf̃>.?&Դ|dv?ҏrRcs&LsC?%IB{^#UvN uԐr'͡Xu [p27* G1rvV Ӕ;#MZ(V̐Ϭ7wcwEd N#vLux~0ccƱt$.L&M9*M]]TA([xk>Aj}۔)DchW80JzeUn(C{qOzg=sO9fHLI0Ħ'#CMP~Ҷd@~Z<\e=AYܔ0z9NmrAd3(/]\ %PP Has[m;谡qsZB&♷z]%3 α"Onݎ^TqƆqIPx,O8)|u^<^s@$8ws"/\`niEג̏v>UؐRYrGZLN@oH uBK h ƕ: 9y=ԍ朹ֻw(>ԇ>aQ%T%qeqg ݢkC@*ҩyxBLZRF{ˌf-o>mĝZ{,{k;! r*/xGt**p¦o|V0aS6}S ? m)g2.+w̒'m_,$9x vWܛ(&&F_u"(o7ޅNG9G|/#OG_9^;S Fy!H=nҴuTPo"_m'YU\YB5$|?& U?э_ UH33'voR@o8[Ymxw *B"is#nC?)^^i8]ՒTo;k] .4Fa- mAڤT 0Rp +/etrTcᚩiq5fs?UN,Cru{^( Ɖ[呈(^;z?[Ry@Pr#lZ\ Dz-ym}`I=ewa +{D?IigrUWbB(eFiM~d\<#)jqCMVR5 uELUfgPYK bQh'5M+: 6)nzyXt zty6Zv)>Q'xM>}ˏϡ[4Th'bD )[_ct;XlEM?~ͦ&db[%3~ R\&q {?N*2(̈O&d}:?OVƤOC#'GrIw&q 郬ԉ(]PܝCF%Q w)d<pȓk"0tei7sIQ>߰v<_~?TZxQJޗi|YjBduɶ:V:~6[G F Y@6F: E'E7b¦l(TN.c,r<[{D]!}l3 mkƲ$) {HDXKu"څ״7]eݿ|;r;*+YO A;-rp.IbAr'KvDӫ%y@Qw޲yف5老!;PP/M7Wf>ubSY$t蕡8Rf.0xuh^k.xYp9}[v@D8rȌʻ嚃LO岀_ >̈=jBjhܾ$~|t#s 7/L:XRs$?AgȜ*bQrL(Qu(M,~lXˌsogjWOxX$O r3]'C[vav"2KY ɿImP\^F \oi4N͉Zt$k)nnCRP KVB>{<Ωhܙs) Vts%G5"Vܻ04Rn]\nJ fs7q&Du|a{8MĖ.tNmŽ1MPUa®2;{]?Yb9M(^i=DFѝNC؄`BV-.ӵϰҍ e2dq 5~XDIܹ-yץ$h*TT6jLw2&F3der=lD sB\#Hǫ]a NۺX3ĥ{. x{BsҊ7(q؈L>ivYl;)T@w%q;`_wy"wʍBح"PX h6Ga%.vv| j|dn w N-QF ڬʣY-ͻ4M^ ʧi^ Yڲ9'fJ&uBLϐAW:fU}hC}7,|mCv=w6~BO~rJHt, ~ij>xl6h'&E9@\ߝV WJ.0ywV(+ jO֎GX%i/  #9:qyp<5R ~_ e>OY +G4D~H%jN6xp3{0 o=~.`tyL&( ,ܡ U.m\Jo;u4wͩĘб;翢wvFjՍ:izO8K3ervx%j@ntPX-"og<9~yy>(9Ԃ $ձp1: _Hf^CGB0bMRͿ9K3%=y%'>uM_-^x!fQ oH %Tv @PV+wX')g M$u@J[]1[LHy0Guݢu-P <$ 0V93;SM>REߊ\H.)c0:F{!Jz+;k-Wk!rK'J54OO$@kkl?Tf ,E@be I[MrcE3.ؖ_xvXkuYuytK8G:O^W֩M꒖ 霂@+(jvt+RSՍCLzXX%ewqpA 0X=xh7<Xϒً21 ~,2 u dq ѝ]{֗L7{1Ȗ=x)i~`n^.XـjH06?bG`k jo j!J4˖/DsJg )sfNG|<2@'m&6hT\'ﳥp# ף,4&l~lnMUT{MK O=2.0*U"OjT/N;&FW;RXY\3Y=ƞ{Ĩ'/ɣtz o5DI㌔nUxO^0g?FLnyp ؉y"?MpX#^4kQ~q9\iې8DbvEKyuir$X7#.>̲G8jڹf;ejF[oU;]3J=|j{s:?Jy{P0+' qjj-xsrEgBB.S[^S 2ڄDgT+ѵu<'˳ 2 WfGmN,>0.HEEx֔ #ԁ&l(~a_Ő O_]WpΪaD=V˯[oyԮΙ= dAվ^(_Lj}ק] udEz ߚ53 ns" p^6쉌SJZk켶&1jMn)0ځ;@JtK, ujkeIEeE#M,C;$$]C+r$V|ZY؋21ԯG+zD&߰3ud/V"@0髫EGnt!ND X_s  _GrѫrVʫNG~!u}*yiݝ>_+20 UcmV]_az Xm"#DRƪN]%#6c*7 [?Y,*gsC< hKov =dǐh]opԱxl]Rȵ!7.dOħL1טIfr mjzdwG>{}bޔ< x>@w HPP|M#}b%/e)ܣ|C|w#CPFAUN";ջ)\ŘE~^Yœφ&8O"̉I~(=fco%$h!_WW\n] t`<5GP7x^-w/2FA,ShkSΊ:NgT⟭nx bRv9bC&>uJ蘀^NC`הx!Ie! i$"6ς"Z#O%7"֌sGp{1x),C8=z@0dLT` #)C%_O\$;&nU4‚6*xԝ%]ѦA#l=ųxHx6[zK0L{ᥤxGU#ƶ&JFLDgL)$F&V.O8W.f^U_hOڎwFiCu[/'C #H0+Ƀ~Z!` A%4[/CD@. 9fEADhoğLOPtG;߬QIv8{<7ib:wD!e8K5&nRi+rJv04)OFYZ)Ԁ [HRτqMcbG2Pðm͇3ϥ@:$ ]^ g.h| 1T_LF焈CQD%"T̳T> 3hmV\_> ߲U4۔ X˥⼝y$ oq(5%3r<ޕ緙Sך%jDR[ 7Le2Ktծ0{'=ԝ5fa HlظD\b#&le(XKrjƑp)P.W3%j|`@7c2hd%=CԙTD<=PO[kQH2OJUc,/G "}ę}Ǵ'zDxnpmΠ0wwRrjW[()[+='ODd#}G(݉ a]X-Z?B!AuaE1VkNRv-㦑h<`٘9su ?^ -[\iO^r!M٢ @-Y^L_!aȞL xيn$@Is>>Hu =)y=lC:mcQ i6qfQ~nS;-p)1Vz5J"Q#pJݒ[B!:3Ł1n~:YH.'>f:E@ɑ n&fu1!?ў쵮UFu;.o&X|^86rjk>`;/AQlWӹNȞ:dk)nؑnOE!d@;D2Op ;m֩V. 0{g#I'VV:A{8a Fi9q*!Am"A=bͯn?sOd+V|~j[ Lp?ugYrhpRL@XgflfA8aÃ^$ "aؠ负&ۃM_: 8[{8T$K_bOQ&rTD2LpH} |L/ueHnM`oxˊ.e6Y`QNؒacioxԵFV| ֨dSv)$-$h} Ct}Ƥ9!ջ5TM:O(]ByQ:=gRI,~c8zZ摻, ԋC `LS2u^.X(`C̘lɁA7䔙.!c b'+ VWj]shYczh+dYGH;&bN& ﲂagUwZ ډ7Ƿ%dѕ+ rq@IPJ?\V]zpF8&vpAe42=O.nɴO ?qM?6H"gC̬Kd0)fWRѿCH\Z)GHw$[[}37twHUn\k9QwӟcQ#f<ȸA~_0.5^T0iy6)jb@^o!_Ã:\@BCt$2/4YԖqT r!'[dO*; (s&5deqoh7K{캌D@ >%WUU-î'" 9b6΂8'lun)YPP1yĮY~p<`z=HX\dG~. AbNHbYAuEJv2:9`y#{4PXJ ߍ$>p,$<޻S-m-63;3 t#J4g:_z Me)8NFQ4 PeZԎ Pv9X0Lش>N'4@{uOnD`~E:+"9'._2q7Kӆ8g# 7+t8"_RDZlt{jX4d6RBذ9U@ڶ>|ӶT(Qj!iLŢow.(UأhG{ k` ݇i5ڢ%lh|L"d1`&sO%r҇]DH݈eLGBTK눜:izK`yx`-~X Qom?cso xЇq"x ]솤&qti |}uOg@iITwzFzf.2f>I;Խf4q0@Dbgّ;SsDtUך7eV.+vas== \L>Z3 eJ*i L% Xû5{ dЖ@hvd'` Lg؏`άIi¶Kh,J<CiDtVd>}QGIc|?Ǟ^TGlt$k(o{?KsҌʞN,b)&~:E>k}$ADNŽL -ð 1{kQ]Vw<+*j#G-MVJPf*>& "iʰ[<@Nvq21;U>g*ϷR7Pc(0 Fw;j؉^aX%R0xj#?-.8-b B VB G!wGovzeX|ޭ(ux|[eIK%GoWpѧo8~'B "Sm&/YB4e6o$vW2-q0MEހ#GΏ Dk Ka2VJrc-0 H3&mfK,Z֠D^\BdYƑ*@p"陶9&M*ԐӷOXH]YnEֆ @o2w$ ‰8!QA2א݁Zo*בLu H"bG-f RQ+NW"w 'ь0: aT,4 J(&eo7AjQ]"X*DD ka(Vߺ.(k~E񼰏LϏrـldyU ÃbɔFL#bMhTecH뽍f{qZr&1;I&L|XҢƃ]@;܄iZxu$ly{ݛVpBrDi`f@e }RکlTvGjs} miȸ+CjKdrD>I*}.%R (Kɦv"chm4=M,IIaDOOgꚰLPnK҉Җprşe <.NXeє̐Quƅ*lli)B/+CtϋQ(쪚d* OE9/)e@gh؝O8-i.LB.䳷 dsx rcR9.~̚?#C "e5c1EK \:5DD4 W(rlJ䓞λfvbx"ӫ;]+ zIܺwDچᗷ被W{8#_?z•9$P%To3rd!x"<QORnj-tN$K Br yoFZõD \#;Q㤿كs3opzG|`T75I{ePA"6.ufa@ `ީ~`mMN̴Y͓Ȩy`rϼ7R bcN Rwi=X:NŃX$UɢD=:1W=V $vśAs>ti^v)_+iu: n 8]L|w79uiզQ @^6T6b\D!Iu^\HKBJt噩,^Ҭ;-$Tұqn S~e1;iTu䫄s [4z+hG_׏ܖU젢[:' ?zd$TtU,# u⸬=C l<2ʫ=h)wDop5W;F.lf-I67Z[",# rٔyFsSR},qfTI. 5"?TgxjWT4`%K^w蒼f%\ZIƉ0VѢ?\reJFHʨ'1uR=IEu -^"Bzwlo10VоF\^9XўSw|GTVAbܥaRN3W#drky#축A9ZWMJ2F?XYNIEpdRςAK |a [!fŊp3.؎MT0RcY\Iq}%HBQͥotBʿL'z3aMab7p{ߝ,|H-DgYh_Od刧+5 cҗN7CVQL[~iRM|-j`k`]`qLqׁdL78*CjPcf "ezpcM*:kFR{ f,Ze'#V霊p)͝/n+&I+.fZgQfY)$V#v:d.M {ewJ] "W>$dQ r ׭-vqb##?ԫQ:G#M[hR}#l^s. SGx 6x6s!iISՠvjc".b&/;s6Π}QФ_ˇw4PN"Z#qaRhSrt .ĮJvqnPrOI#c#yK5*U_`W@`۹1u['zYY)_ ZV[2ꞧk >?ytU߮z  EOぅ0yɥ x8mpj:ם!*InٙWH <|_DɞG 0?@O0qS%\ Pifum-LZ9S¯~r pŸYSW gs!obaȥ# [WN`ʠE9O f`^ |_E7u͓JެLU1ś Ⱦ<$|>/htu%~,@ɒt?,wkڴ⿯n{\wڲ'A[3 Ehtomi5B\ yyo|Y|? DyЄ+s8F'?LS ’śbeH6ŝ'y夳$ ,r_bQ!r~,O0+{FhPeevxY܇;coJKd5L> n5 贶lS7 ^5a"e+VoB5wks"zul RK/S>j8 $g7GD>4p#,n'/m&KjL"ME%,Rꝼq1.!ӽgwG RRsy CYa s^/";=Sy j+ .p*qNA_߆~,%KK.Xb/'CPY2Rw]-*c30u%f .\wTj |n3R* aцn I||E*[T!'VbWJ0RYt|a?8~q$ pIF $#'7o.?7;o;]KOV:ù Aѯn>l1i>Gcvw+Z#D%D]YxlP' C7^`.`Ms_fI$H;o_͵Q9 .uq9ם`ZIȶAb$YJ-'X$Z=_gڨh4{vc ^)>jrJK nA<h%yTzE o.sջ$joه{טBza-b52֝E>5oφ_i4i68D#i$N`O^ t(TQP:39@ vLQ)L6o7#4B`VZ_t@^O]A:.=ivܥ@vVgZ.&87えSݣTEf*g"NH!Pk/sZl}J7N|ߴkFL]M0|bp{$.R4M"z- Z\3Ά҇DVEO/Cǃ)mb_`bͱ1b5=806)tto1ɝLݸڬ$Q\CPx=;trq|Sf<;mSKD$zEA!QuuxD+u| X k =Iv~~7'qxϱ A`ˊxn$L+[Ma9;{9:l(&k{k'FEQNЋwwF "dOe4%Ly-lQ<%"[:yiNmJW>3TŠwcEHBE) S/= "TGz9FUrGhb6E}F$lzU _^dڿ !p.mm`7@M+]n@Q "3 [%3kݨ׋W>5S{P5b 7} L%Ӣ-ϩ% ZcJ%, Jx0˚֮?Su( JW5/M`I¯oc!\I W}>& 3tpժ̄R׮-/ /ǗnRc/rG;mzi#;.\Cnb6iϷ&#]R*D]ov9 Q,@a:XlEŗ|bѲ痪)ݯGL)Z "=,n  yp:qMQrj۸ۍ2@{u _k^U)DW1KE5=iv7н&~Ku1G#+Cb{x:]ո ]V۽7H Y6 ^FGrb x]9RǙp,;O[B W{rc8A4'bs)mI"2Tҟ`-!`oNu p2c0"uXnBs?%7hт8&d\O<-ypD_i/DkXµk@H#`Ė|Tk (//ҏ:Ǖ-/DR6Lhr Y7ԜK5YG lYV&u[.$ e>0'iVIQ ~YH]`XC' ceC%"9U*@C] '2\oZ&<ifn(piZ f0^s#pNTs8q)rC{bܟ>rWC:LKLT^giUnloxJ coD@Jݣx[NQV͝A ]%3d)2,fDɡ OUdq3ܖ_(F<1劵mBd\zcGE'ڜhtDk#u2NRYU=qyaR7E<q,Lȷ@mw+YzY&$< B3in*YHɱ;Ib/s3.!6#X?弐{#I~;W`h)Ya9o(_tF| ө-^Irľ=ܽA`kep{0ߛl)$cqj4qҤ^we'Y V(7|n Q?F9;MNi5"Hy' nDsn|/ẇ?@rzK0p[BCHU#QZS>Rm @z'k<ͱ8=W Αv :kBmJf;:x)S;L4{}/ٻ];%ƴ# c8l/!u-xMVwm"U@>D44TB* ?칋1d3qqVAsB q0ȋufi&X/~EtYf)8 ]LePh^y^Gp/ lTt["޺YK[K `|2\4!Mp:AB?ق`Wuy%SG`uhXRJZHP`c 8SE ֭p6%?{[> l+SEŧb/q_{f:'o\[B1}CqlFa`";L $,{*ֳPn Y7i[iY4gYTx\d/O:#)嫞6:gʧҚz@>yNE+i`yǬ̓*7U1%8pEҺ޻Vw#Z Ic7!xr&V']!G;N&xbD6dSh%Sw;g.ĺhۨ7\cWVޞnkq3)͓h g]c'"O] G!u{ȊɜGK}H.P٢akӚ-r-Ϧ.K)+L3ENْ\Q el+-ܞRaJ:kASOm8:3GQclJT юMH3΃], T YMnie9ljK7]yvóLsjt^2ףKwϓTMPv2v K6Nq`@yp4WrE~n=FmΝ*\Rt]IKYDL? nHU8w\t>g-i ~k?ՂK`W 5 [ȳ/RPV.ob St@Z-xlCv 65he-|M+ܤ ab\E"6 F<`;Zզæ¯E:ǖ*ATlM̩$jʁ0\P/4 fmdUOIpNbRl D$kF.Ⱦ#WӓgepdcOv1[_)-c쁖V;FjL:B{ ݩ啐|HPH]arh+ws#o ֏]eK9͡}Cc:o:Sٕ&w FݺkU γ% FUiuָJTwhU73ޛܹ8lk2#Z((qk=s$J ̀.3B+I:Sd~pݠ9MԄU~8cys)˜kmڑY=^'&¤8r~*7v)[$JY8UhVn\ԂKH]R;c<μ/vn ڱ6?( ZlCG1bؑ %f(@Ye%E4䒿Q!r)kv+sĀ΂>#srYDn 켦!7=,hcHh䕗iow:<=0erIh-:lI(H ʑ~]3iZ0m"]:4 al#f9ڄJw1rۚ|4fD.0.@){qKM.F4{'ZC3cA% bу`ʹW3p!YWWX/O(FX$y qdhjj!n!@h!E"=q,%9dzcd0ɝ}r#c;`E$=s # 1t<]MF(8gC?֡kW)9 xaBr {>Ȧ%dp ԃz sq9'fb,)ZVҹRTSLJ\r2~G @U: \"^,JrjQ'-nWT2[;/(e,t¾%Ϩb<9TF݆ښɬk6* N[L`09x!Gzh"Zq(Wt& '2܂O?/An!dN\;~w6LG/ÏIJy8Q2o۩:gfL?7fY!?e[7}B&wgmF 5QtxTv :/PyɫAsX̊H@+ǫpk#iJdEe5i'Ҧ<(f&A8VQ!hMWy) J4W؄l`Y/qyNHՇAvuf{@?! U .m%;n~0z4΍-;C_Ɂwdfw _#еcxd,Lē d*w)QY7Ž:h8C.j fK8ަ[W";njaC.;y'j^bSpFmW- JB l"kfAI4~y&e Jzc:\؅FED"o0 ;D.R\D {Z#g3& :Y`Nʢz,gx D/ N\ "s[7D? 1˳- y,(v$Z.8~M2C*]?to]s!`K }BN??8QO7BI4!9Ȧ쓠z׼H`9]9KP+ö3ՠ7{Z-w <)xB؛hX"?7WnbHK~)aۏ͋gWyٺ@ӫ|th"EW/!Q ]Є۔?e}x64k_1oJ8[|kRYT8}C'k- \A+pwE[ AJZ\ˬ<%@41SmzVMeMخ=Ԁ5;Hbw6ǚ vvIe׊#/m6稜ɭq2171tjace3~cT+K%BHR;1+\W"*6)62K+pl~+HB>J:h[TJ< 'T|C3:֏\KYǁR5*;/PkwO"~U1P(GZs` ={{ 㲹Hb[+ndr=W\yeF 4oJg;09zJ``ɔMyWn׷r< -&gk֮JqlJXFg3X#UwG YFu;PWPnA4%qt9+M1PTY|٩QpHn+jDG B-ꠞql{s## 0uF®=$r_+f23׎ i)֧r>r?@i;8" )F!!?6Zo$d.85>j3sWաXي|:V}C߶8 / 1wo^B(KaQF9!Ϳ=A=끂bۚA߇u',@*I1:c׮hoi <|E|QZrVBQqPoRwYڑ !b쭭3/A)uCDw8`_h\Fx;*vyPt7 O-Ӣc:NV.XsXKU;!8[w?Ɨ<"yba@W8P҄^~x6u-L8p$AjLu{O_oid՚ff .VBIO&YS6~nri5Nj;NV '0 %N/^mGY81nDrQpFn#W}Ѭ!RlI jK9eliL@[mtcak ^y@ ssE \2€ttcR?!|&=?7ssY?c66rCFoД3?PpE8h45G\qCF|xyAR (J/f}ZEFPFv8zY'QVtU''N w F@!le@7bz4eC="onNbf3ΊVP]>JFscNKA%HtNLw:^ w:O3 \C 8ӂdvZ;Il  +OaTIR،TUdl$1١lʂ }~[La.yL>F_Nt'Jkg9LCdW``%=$%%viU&bTJw N #]3,?Egbk}Ý"YE=3!paB(VsTIZ!SuLN[2g!x]xJGa}St9JqmpTK0i3O9/M,IZHP[ǹVDſK 7`{=>6s^.H6Y]ulp0ŜJ^ChaF,4XrݜF$s8Ve?-;TNHt! 3š_^SYdFw[:a[ýA BU( vilP&*W)kkÛ{jjo\E@'%2nߠ)釱;O J {VHx %@n _iED/ W7!ߖăǙU9#N]e b2Y7 acn_HOIjlp׏!1!7[I-2VJG,'zΧ*NJ3.o4ҫUBZq֟LPXFa6A0׼ ϊP_g>doUj%EVw #Fn݈W/'\W>GR_kG F!{Qgnv:hRPz8YvsNx.z~W6e>ǯI ytΈ$"+PN7;#o-Ek *` oCqzXy{āfg=:7e"M,hk5 wAbf-㏆Ux7N[jH6V7փ:r]BQvY]be=љL1uQNY@0ŀ*Tpbe{nlgiwS98͈0}>MUv/[(TS0vG04`09B5"h<0qϤAnpJl}Ms^ =Wqh wHR9tʽl]ރ\^v=<53~_fPqi-[5̆qYe=?j(U\'6 &˚`²-DžGsT*B ^{YSXCEbG_(oE^ <iWt H.LXc|<, "I=8Ot_ B<=v[ 8 sn(nP,Gv vgs;b)~잭cUy,uI<f=tg l5F}!f&;0MyρW__ a/* 4TIYYM<*uk+ҹ) q5?@!GjLѨ~^5RzrFQ<HCü_$bt{Mnu,UQ*!M4cQMb~QȞۃ⠨kp8_'dm+]A2f|".'*onWUGQ#,Opa-#I/;''aySg##|W.7N9MŸgL l?  Gq晧gטW,0It Ӊt^gA=y e;# 4iSAAMKcpi7/qo\ {Ĭjˊ]ثf|e>lWݎ-8 {TAkc WWShMRA4 Y7:6 g|`|`oUu!2ybY+u<]~Nj d8krЍhlodB0˼efpL{V|#J0[1Tc(7w50:wgCp=C(YP΁EORb1N8F̉ K? t"JzW /f&~FDZx9㠾$,]I!!ӥ{Nc\߼~1S ; Eـ,4ʂM˼ԧ3fy[(YÅ#eS2mL.Ckh6Ac{GI#y{6"m?3a+LllTz| ؖmy+xGv`0Ed,tO&$c ]}ЅVeGa]&̄.H#"l/5(--gs(ddXz.Zs Uq愊oxwxzj,Oeq57{2<%QQT?֐b>&g '&XNC+q5+GDZ%UWM'E:T%q nH) != 01jMz y2+Nװs|&PW;m깆=.؎%w/xCKE }pځT#AGG>hK+YE^NQ}0~ɕ6ba؆V&`@I='ij"_t _Q:Ʃrs^50]":l2!rU_ o^,VfX:@s6Jkl? :JEyTwse`-yȌ5o=m:O8vmz/deHgʦW6L~\vNonN{t ?C[<(zɣ[eMEq]Ҵ#N4 bZv78;>Iث1^rT QL/q 8 =񃠏mb&W[U8,Wbĺ_=14='A'XM9KshAP&QDz%(Z^l%~i1D؜6-q=;F 1G\u>.\ ]>US%C: f YeVMV특VlD\g Gw,Ùpiodk+z"U^^{WX1ﭚ=~j#YS֭o$}ƮZ">(:nWUF>To+dq0s)Ɖ\Pϋ1RM d;)i @Lf㤛i&/(ٲ*Cth>R]=+61%d`bNzmIʧd7b"qJ}6_lҞ [V~8JCe5UD*$!`fN?z`&[dk|ʺvV^WxTveq?h\z%:1ՖwAڧjTdWH^õhJGpYp&yNJn KG_'tegseM5 w7TRe+ (J@ ؽir.4[U܈ʹ2iH2n6,d#χ9ЉF&4,u;dKv*@Ǝк"jK^ɴ'Kbc-c4".@G.[KX,/81w|s3OKqە+~K ^'V{*6=/4.Uqs ވ>҂}SΑ~cpM1^ ]+Ǥ]Hj0~e#}fH YҹjD&NT7rfE/>$_:@?JiFe?lkqxU0h3kAZg?Xi5&q5YLqb8<6mrHI~Nj+-5SmiVՍ5˙P+Bul#w؉u #H)dZG2P7I[_c} +_dm="ݳ#@2yƹ7"N/f`4G_1bB~kq?BL&3`'8~G0̓%j /1`&@| 5Wh #!f9v/дRbT' M=,9^&J t#j}hWTݵGZqE mz5^hLzb&y}ǵu I\[ujD,b/}v܍G}bDNMhJҨb 5)qRD1R+@UqqpQ) gQ>KK4 <qwuh*!=X_f v R" a Z l{b<'ƀx~#9aH-ǽBz]4E'B&]!x;7r2VÄ),kphe-RD~{|=l>W;rmVii {QK"_\+m}`mȾGhUmia|p|D!"d%V'acD_\ݶ "YuYdX" bk f M .8b'_dC|Ƞo܂QK]>znv="Ym 1Qjy|Z2BvYx24- lcqBZʃiM/ǯR.96[u7ap.eaj|I*e)vqшFf9rx'PQ]a2q%zs #6f@r%+OKΆ&ѫN!!*]$Uޫ\U atw<_K4ɂ.ªֽI"3[X \aH)ި۷M.o$v}~trT~ }p\P=i WpGnc4׽z'u5/Zk*"$ G᷾gCm2:&,H \f bIeKeo. bFgG1F)"sUfuDqmP\UðjբrN2a({ygcBl\. ;laCU¨G_ .M5`yn##uzv.C\9IpW9s#\0]}T*א zwgRG|^BD6q%̬{ÁxxLZEJ^ks\d .wc/_6afNv`7^.ݵ",/gpI.vӥ|*<Bё{1+c_yK/;Զ1xtǚ s@ϓ]>^9 9׸S}/8&lZNGA)ؾNahj=bd sX0Y)ɛoT|glԐcᖅ/%F>&9թ'CՂCy3#'zK$)9`Lu펂نUrŸBjD3Ғ !z*(eۈ_I Kկ[_Ni"/V+r,Hv:i =W|T.˳9ܻo1D -*]YPY=1-ʨtЇ$vtk-""7]!;tGe Acʤ*bl E_c /FimQcFrA,ImpNDHJ-nSWq).xQz"%N.+_ie9<"`iT:BcYPZ~R= kOsɭ:,"xKIbCxo^|m,v([pPΞK(W:  !.g JoȳIG{=]wԽq.RxjIXlր DwI/'tn2sd?p>"IhyƸeXyr"c;|QLOJ|qZ⢭/6BdN iWi9No`dŶ(/*֑Ca%ҿOD~߲ͅv+R2\;TN6th+0}|V=f{!s=kK~"GFvvzZ~9,YxB4Y}Z:&b'BQODO'1P)(e8GqUO!hˎ.)wHH է3kTa:@&r6ۡioy9!lCO~F*`n~8~F5i`]׭d@o8Rzd ] 5Vd=rC;K2_Y4] A s} C1ɝhۑ-%_~*Cq:aP] 29 YquY-d(eEcy'-{g/tSD򩳨qu6yvec7 ,h|U[`FG*w 0ZgԥRJjԙUmI@-wΰ?{ *]f]Ry݅ϒ-?Xyz=r>kŐ` ҧIeY`u0٬z}7_(x;=!YJh1@lcIa!!RV.ovdM`l Uy- 7Lc8dѢH\Cߺ.iJȄ?3We @[6s$&-BfSl aNG:|PQ;/eWJp|z ZףBh?Ɍ&T=Hafp2!Et6!0![;?j9i٫(StZ?(9<} IB*/km2qMIa*}i_M&{8OG@K~ҕv#Ckԓ2aBܦƭY,R$k`;\FFA!3]]5GWy&Q2,+ M)8 Y M`@/ΔZ‹W"ٜr|7ݹ7@+q&"O&,@u~e3%F4PETfCO4j#@[d_\IGơG}3 Sl=Y6|Ӥ&^4$aV +Mv*g4d$sv*=!"=u'߭9TYχKq8f]="zR *쎆H#G+Fiю?ᔯαF=i Ӯ#SqR(l- Oyhw#"0-ygyEwu m$[[^I6YɨttꮴURj16)1,0B˱+:UNL2$RMnL68/+ު/qO—+ oD Y\Odfb,Q|+.x"}\&IkDPO9Qnxm6])J{+[GԐp ~+ -_.9V(p=έĮ8~ф^⛕\}xYҾq ѰWv(._+nbsp^=dx_/98U }gZ>pM5`H}Ջa$(8K0@IXq-ce~3&ZjO1pנ# T*K,n1"< rz|qX!g7rn^P'l\Xwp`$@ $^qk/Q&w̾dCY+4a}vjc^ms ބ@=2457^pxOŘDF. }.l~h<\UgS٩<26[TD2h!?^ C7qF[ P6b%n6k/9L/# :̧5'߇kBkkz͊Br6Rwzm1{D: 7~mǁ"j#O\;aCHo!,|k>BOWx_i HGKQS{9]QR}8dL1S o^;_6Q31/tdX! X!O$g9mϝiF09 efNΑǢI- S@Ԟ@s)fz[?/|6bs=*1tXpu sg/'`+v2v,yz5`@tl;>'Y8DfJq$׵b(LTǼB=Jrau{Tte޻lF]NQo?f,MQQD%h(` [g՘lgEu)~: lzV|59f [l΀V6@"r0,!rI( ܃@-w@Z4z~ Z fP K*!d?5wXo :UW ZJWi~ _+ry=[Fv:;yf/l|Ȼ hŚ?y$8Y4M2ʹ. 'p+kFO@4FH bƂu6V2am ŵTי,BV%S xdcfh:WqUWb{-gi{jUذ  ]$tl'Ziaр[rv귽 =V ϳYxשۗ#pۇ 04K96ZVh˔㚱~c|Q.;V}a;`z5[kpJk/wY,q!Â9Z ہƓBgN6|͙fr2`! H&\;;3~ՍZ"AgySy PZdn %}q}rcj…^ )9y 7V.[Iأd? Pu煠*gM`ݚP-M_L/@Pad`#Ty!@K &iAdq7\(q֓ݶ.qbgL xhI5=$uS;nєh^Ff6FیFV6EeOkw:иaݲ6AgzN)x766S> hvRJ'JGvUᇎO?\qT, TS KJ ʬbQ%H(JT.`r mN*'`ޖdHt^!k:j=DK4@ӚGimy(TXAbj9udfLu Z}[@!F24N Y$<]e,h"3=*PŌ͹*Ebd܋\2qjpt\CנPx)cC_/OCb |$*,5y.TشrjXJw1j_Qc{i74o3 B @AXֈ=5.\O[A\xsf,&54$teveԺw<~R6ێNrN/?{ u*وN:{m_l0JY;6\L ;T`M靁4om8bR=|ԢIP Wz `e;2n獐= J/}x/3-!k! O}b Z FH؀Ep6UBl))Xҝ1ND[`%S*O`+kVs)4,b1#vByg׈^(Ioȉ~<< 20Yѳ/Ƭ|أ6,#jl~E2ӯd]:>|(f,yPbIr̬puQ"VH~: ڥMg7>j]^vM--x3 j8?ŔƊRA?T~8to|dH^w5gn<ن}֖H+zG%#riI3+K$]A9&s\&^k l7/Q~i쌃nb\JȎ/Fc]|!L1}"z7<-cf# bME{\8x}?bXzM_)%CV&!P7V×>/QSS}3ʜĦd1$۹x|zbFl`)=O)|g4~ruqrx ˫ $-4z?w@|uFc q;U'a"+;{ʟBU!ǡnMA K53MOL/@< y?؎Dhht%q/%-"@J=٠P~nSMSb({ +gܰ4!!G6]K`*s%E;4N/tڲv9\Թk#eʹD@it-#x>aB.q('1ȧ> ۑ8lFfI`"2 d9b\x$By7/^Z9weeDůI7_QW[sy& #WI>4~X~Tt1O-g h[X OmY>5C՗n(3:mAG~Ĺ&ȺhLz8hfR㍆)& Ӈy޶S ^]~mT"wҟO :.PhlRhK0N"6="pK,cw!v>fUJФc>@nf<t6MGCk!բ ,B 󬨞 C"Bҿ̬Ts3ZVzo?=9wrScDMN*O ͚AeW-D8P .Ztg v=M U7yS4j+7"@Ji"iDS:QE/I*GEnDFՍd{E ;ܙ4stt^rJ>Ȕ63_k fݽC<ƚ;3ɢt30I.ʓK{agkG,$p˫آfaeRT'qqw=(j 08xlcGDqof*ov!P:C";DN%#l8S_m4'H~dsNVU3'd+}Ee^@yzؗuShM%i; IzUxZTe(kfH dlI.fNS h5v* 1&2nxltk =1uuxJac@R^sv 9/Ǵ[,ǯn$;YEH7\.N:4:I>m˲HL04?3]L<"i!bdln4%"tdw*znhq6/R "`/0[zMJOfT$ AϐzΤA>E M#(Lr(tַRτH (R %WۢzAr5]o,:J \_~x@ t' &59yr2r Vz#Ł0P@tJpFrwx2x-l_m𸖭Dh_ jTO4\x3a>aڴ- JhOIС9M[Hx;cXvԖb0>2$tA~uz׵D>R_;zqfPϤ3>5KZ[8HGLSݒ.1  8a +m[8>s{6|#kGJY9_Z(r Zp\8,l"^ѵyu(׭mBoRt V:sO 7Y򃆋j*Yiw;f[y7|>+JdF K RC7 =!W4tIB"6p|$]Jz~X;,=k=to&0oXΕ+M zI}\#Q0=L ;3_~{&7ç}J<&GdXqHi Āԋ)\x~Bn*l`%nD X D~ p-FNݨYE!& Ts-ݭT̜ud&rE)Th]y, _K@cߜy} L^+[=PZ%` ̺ e. qlݛg ï(. :wC- Lr.l}ԹO|dP^7 N_; (avhr3"1X.dU, Nck4{:!șeֲu+2b)({wG;Nz季Lw6/lU;!J*b+uOvOơZr:FOwK\ĚI ՗A0)+2x~ِ;v$D:Ș R{l9®$YM39Q>آ'fu;u8ѷ.jjb[M0Θ4%"icd//a9+wP5F6`ꃢd veGb.jW(T"8F%y[>65(5QSdGs6k۟C%?7紝z|oMRC) FeˆC|xĦ o ~H=z`9[7o xyuwoQ*"Nm#<Y+Ky ¤(3E2xa::@}!غ鮷Y?g] ̥8bn=obVAG&7̺DRUŃ4:4A(QP5OdQUr7bm/Vj>T9Pڣ*Z G }4?râ:_*XiwQٞݝfRJ1E9ENX\f`)ەi&2@n|iFxC7ʃbH pzy2~ώQ_u|4i?<9f0+amn?a*n?~YpOݨ喌 8?;q6~xD$Ҡx*C6㻟vcEv-?*'YMw wg[_eMwߩ֓9dGPן~@BZPkjW\vŌxT%tbU٪" <`7ȩu 0]YZbQП,ɱ(pPF*H1͂GX 'A%Y9.ׯ>y,j+@ U,5~.+S.C {Rq-=eݥ7&>Z4HdmFXIOv T$0ngBdރzNb$IqUX2Hs[vHQc ~a%$}G-=Kmѷu"Ts0g jCM`4&-E 2Y-;w,Phs\#Ma6'X.֜ s}YftJhF&ZuQBXJ/lӼ^7;MHfepU2ќ U`H/+z0j6@j7i' C6K{ 2i˦^=Z;OAm4;N-Ȍ6-O3?8ಠc+QO&m¼>!)_*ǔ࢐m[iRl`9_։_t%f/K[A춗2+zcMV jg|EYآCa9„b/߈jɪG^YƝ%poJ[rhmeT#abէ$~fO{/]A0N%}+2ǧEkN?<1F,&͗h~niTƝsۡbI@?B:Ց0j>ad<\-zіpBY'v۱$: \!Asp YZap!`dÆ{gÁu(tiWGkw|u| IL>7%FPxvLgRr H:Dej曲XW&i;e6,@sX->W|c8105^reI1aB̝Lb K= 3{DX#Ҍu6Omw䙝>K5, 4mίJk'>#  [ cKP9΅/R٠c:_p?`tN<%^U.#2ފȟJR#OfV~zOLXk@Lt5p,p7eZz̒Ǹ̜NR  tP$Sv t|Ͽ*iDagk)Hx4@tʁ‡J08Yjv!MH#={Ì ?W/*ǔ]|~t\a&ytDxt^;#/z-@0ISP,57i2l/LUO9׿EY凤J=A:JӪ;Bxg?ex231'VP_#J@VTƨϻXJVh;L {)=;c9;s@oĖMs5nL bZS|>V6ub/ l7'Syԑ//|Z,A|O\fO+ҍ@K Pf4uSP!B3جъfs?-]EC{)umݲv^Vcxb)Ѳ1'JzBD]\hR^(l22kmYd@8 =ĵ@"lڭGIĽ{9Dơ%Ex4Nm0 3`ӤqW+RdP$vXy꩐ѣS,uiE;͝L`dzޗ)-'/~\ `}rc#> B|]-~Ε.5 Ejnݓֿq7h f^Q!A&hV'|)dxI0V=l@QZi="DlƟ1Rsx>Pe@ w\p)x`sbKm ϴC [iT@]I'!㰨pF2)o) eFeLzwȫ'?rUM h&Sȡ3h6OPXV(U$?: Q|8ێ0|SIdf8U3",ᡗ@J"._!R1|713r NC .\}%F",D#t>!_4i˗kN`fLv8&OٌX)Sm={kKggpNEDϥmǰ3tSަ6.@yqņY&niGNV)i kp}l$hH! -Iw0P7q 'B`m)M¨P^dM@EjXuGi efm>s7 NP6|kK*z+"f ָc#uƸb2_oK.lLJZܬXBn޵ OQ%UyBȈGqDb[2Xapk9FˆU '!WkשŦ%:~qNÒla)֠JmSClo+JwByy]n(51˔"`,HgJR9 -I 3ec2#ؾe+-1\b%xsd~~0 p`H}3dX=s̀qúlYe~ z&iP?t%eI<;P[($:o (Q:ePr h",ti#m3$& i܌菈fMX"4z$krw249COs"W0YXsh+&GZQQPڪ&0ZKD rjwo][s %DC{ oq٘rW-Jia=ۤH&762$˭MIĵp~4(9XIcF2ֹWK,oH[A_PMFy2A8 dH X+m^"oQ@ 5zQƊ?ڲ܊f~n~O-\/&aT?ؚ#5R5 Ϫ~RֻSN&/>xe%-NQ?*TG ϏWКǡOd]^]q&^y2>q&ьAY+A/?A6dXM%weMtFFC?σ ]2t G>}Q_9o@;2hs0n)ZeRz0$qNWUnW2jZx`F$Ik=v{lP毵Y1/wk Mp_ '> Pz}/B:My49lFU$'0P\Fg#JhvIVM`i޷Kb"kd'5hI|Y8:>ŷ. dϘd$]'nh4-_i@{½hD擄 6@/z1v-7I֞O@cq'xרiA삧=<N@w9Ha/r_pT@uAS|}t.03~PؿFY(jX̋Cl>V-~8!1 ;}5dЙb=ۘ$o+Q01ǡ-x̒<|3T>i|0rǬP G; BI*; a챃*k x|Yw=5jO< :K{^kUhW'Tj?2^BF+h:]D@hr bvi8d0I2#*1F-UrB51;[(rDZ&dց:UE1T[b8[%1dkU?~ h,umNeL~ 4aљ ml$`Mg~2T'=]F2!dR ȇdP5ת !#:#){k|zOWrbB!Lȅ40jRgOgkCc/*I|,J.K9f[1%F?J$fm|WG0tU`A%u cOHȫ00%\T sd\ERN9WW"IXT,o$fy)(~!oj?olEUӘڭeйMTOc81"s~pG TD(e1>@ACh+pv[I bjdzqqۙ16ŻL9 ʚ,ONyT^˞fj8$*^6EWCcT %{40LUt\?mw֩F0flitsTp87)4oa/W!iD,J"8juÿy7T gjH}bc4VJWv SǁSސ OF/v?MI 1Z!kc;inKQTLKRx pXڹG ~kIBwwdeV2v_I3tyk[ij[9߅0>z6P6#J.PhF$Y<[^Cr 0bC X@_tyBp{|ϸ)֠vnN.etJ.-9ӷl/?0^RC=5UIbAU, j<i, &iR,N<'rFk? f!Rż,{ vcVـ7SС.*s?.uVB[m4wƐvRBL2ׁ){ǏwtqHbz¦PiO{(*YM'ϨK#"Rե44dYp[~2Jg%3XθNU+7S?+MEiߝ<;CJoNZT:KGFڟ08!daޥ); =fmk)H)nC@:V+/F[tgfF f[ P5Lb6rs*aBl wΦR\ s-J"f%(OOJfvf g*Z6T0 m:75?s@|x\󤵌H` RC%H Ì%@V ci3mվ/XfQpvÚ%Yq+OLYɆdPYȽ.0Rĝ4{Vx 9E,0p,))ztz} :?Ӭ.aQ24&OZ4ɩRC|gSZ2uT&$CO`I$~:iIU]o_D]΃T^LuF8=6ԻT&'aEbi X&%s6T aeh0w,veM'_Xٮޮ~o' J`y vfKgZ%]2FY HIqekp%(U%j*aȻȔp;rzGjfŁw[FnC+Y30!)q{S[8y1NjmE9%T6\4f1VU _D\b'Xّ,KC+ LZcT>iLrd| ݘa7MN<خg*Ja㶽I8 "MoUcpAـy4Kj%}{c^vz1{5`Cy4hktu:V <ψB {|=N ҅D֮\@>_9j?Zpjgj".K ~ɡbһ ly: 2Wh Nf,D<p',ϟ|f ?g̟Ng23%U*SG̳M`~pA~ЪР5ȌV /9k:pʶe/A9+$GSh 7ZHW,U/~ix:ǁ5]*zQذ~A/r1ՉjSkJ3E4">|#={Cu\ )DFg@V 詖 pumjຫT<|Ӛh)e:c<ݠAxСz u_^twΗ>uP}@?F~vlÐ*naj>h8%a;ѣ7BUڀ!d*%skЈ̢W}>JDX?=sj;mWb%S0ީ[*3A)uS9n!sh(u=ey1tge"M4}Y%N!\*-ocx8 'e'?Ąyc5ȿGk2AsP873u6,<R+Vn$&0n'i3ɫ.Y1{jD螛qz|+{Ćt r* {=l(@:)40{8U+-`= OF } C7;)2-g6eeu@+zB{dέj |PXbG4{a"" xu6g^t$5~PFR%.s)7iϹ*n y7{lH"&M!)qOuZ6C*-l$1|5|-x%o!ۓtAN7T?@7etsn}x&CteIJv>/x Sg) HxXbCiO_"y V`8Ip)m͜ w~,/άj[ k,-x6T([f$T$ߌDklzpquM pT\̼Xwnsõkz *}tKFq(RپwAk" ub^<ӟ )Z8CF`3Nboun1R:,gID#g9 ,S [1y39M;+TL!Z8RRia#k'U,{`m \ xtc;͠KT}~MUss+әU見Eb< nպx73bi}6kC߀/axW(yC7N R&xXI8^T)svX;Z .9@ FDGVa\ VM}^A^hLdZ҅ 1TsH33!7uvI"Ar^é?tX;hX@m*^F2{o@i:3u{Ä-(Øw2/9%MH yPA8Gtͧ,}[խU ZMCǃdx8b}(jS{4Ir)5rЁ\,%jT(Z59/s){iddPuK:,2뜶CkvܚyNzTI;fa!ɪO JTYp;AHڤ SP$ t ȁнD$dGg(qӭ3jHfZsZ]7dK*hQS0ϗIHl/i^*$Z)?cQV`鍦ReL{k6߅ua'əI+>OPzPjPtH>pN/vH";OXu=-c…o1ڮn#n"O^OMQ4ͬaW&SDF|R<(٩KYvU; NU[it5 5wH1{ގ]T6amW9$J`MF"s.&1ioW0 x˫~G$Q7A-GћJF0Wv*iթ߾Y) aO뺐W6wkE@aeM" 츇r .g=@v ԩyLuHMallӟvzW_3%Ec~%҈b34RT*I޽C'׫+]Ѵ[8I.flf"x޵bţ3_93hP7z@'V^5S#dbFY)6BƜu!(W˪ȳ 8pի^[5ssB3۫HPΤ?5di/66'>4OfkX>ЇFՍd:%4p ~ n@1C) E>=NanU' qNJ89¿B8t`.v7SkSB& #خo_AeHW I"i,[B=}>   i|&N< X"gQr u(YأAK]6}݆UyEھ-g'QކF,`xrxN-¶CY,({ 1VBM9-GXD2ˤhH@^+0mQ逦PT v:e0B"eM6-EUMoQK\>P.*5^/+fnca^u7MsH2&@~)ȰZ.^ةQU3 dC)n^BlFFȗ`0$];_EXz 20w=wNRcന'UOWĬ׍f+73gbZ^*4*HX3#bn ]ԿrA^^4|rI0Rˆ"-jj(V:A֫{kzsǟ}~C15_`bR$jպjx`N-l"3a|[<Tml\XA6յꀑ`?ЊVv"1Zm080y9JG]Kxk!14,)j::*c-#?d{>-6Q;V2=ؙ'#w{77X.D9^b!agC+'>Nиy-5Qwbu,rz#3{/@4Q!713m}Y{!([fNfX0g=Msb"^#dBexWj8p'Jه~SGӠP0D00?Py43ZXIj& Um{fUxbĕ͏PPiV)$A\KCx F{ ^[E3]c0,!cem / <Т)a$Nmk&qp2ӂؽcߢpǷVavRM'za\b u o)܉+ql* YHg$-8&s>0 n1Շw@l2g3Ę̈1fߵҶ5N)3.ڒUKh*ߌG8k0$4>`ZQGMŠ $|6鬤,$M?G$GVQ`b2۔ȏjhr[5ĂI}p1XHN8+i/ɥW&%)%}n{Ee[eT#YZ(Kr(QTt {G'F;EBb +{{V+iM?^.&}֖E1K3ͱ'1iR4FUZz<υ0,pmZe}ؤLmiUsi ߽AЌ._Tq|M>&C~3BO,cWauVZ2˵n먰|ȝ%[uqA(D~Gw ՠ"#vWL6#UFwx&rnmhߊ`KJyս2@nJ+ zUž45l\$]N8S }g[؎>FGc;N.].'DvQhD<K}+Y|+ d3 LEfS4xztw/sށQ\G.(BC}2We1pmpl4߲ɏ ^RhIŚp/q~¨ WИn?ܧ0b9X^DʑNZ ^Bk` k`bnPMvۡ67>%F^%Z3lTѰï'nC:9HZPw' N:\uC"S'jxS7"f+V+)(E79_)i]}pF[PZ4ifo΂gd׃GugRA* ך1XS#h sщ{Q]yZ$ns.}D8%ybzQa]C]ŒRW'iiQkN-sbH1I6^-O(t| ϠzqGt 0l i敓"߮SXWtRժ#oN_x%:XCR }sXIl¢µ C ;@eX?Hά5 sSW tQ@WGkK xD/Q'cШQC"(r‰%O%),C4Z9ۥ ]sذIPpXI.ԙXfvP$[M6B-?4ヰfMh;Xo!t .`.L<#wя.g.?Z]q@my <>'6 .e`Shp!XUP,^ȕW*)r #Vdh@|BPgeI#UWHjbQp tcE^_A͎(yf^Q U.YC|/"H]IhR7Ζ& pKPk%P0aLT:=q䃃T\N5>ig0|,_D#2ڒfv䙑(l^@iSt>juX8IhH'm1Odhe{ba(WQPA(J @Wf+5b.M?KXىok+¹o\yj 8oWAG`ˤ$/Yn8[tM|Ծ)t6׼U' 7΂@\:.B~ qTo}Q1jr^Ca&]Mܐa Yn"lВC>״p'/oM^l o( O7/tPI)xh:uzTo Nc8}$Ո 'gzR`x|kBfyvwvm: 9gXBO !Ȫ}I`K#8/k@Vo( h} {^,^[{s2E7se56A։WDRI`x֢e+ k=r|/rZP /W^v/ɦ <9<\ܙa]Jqҕ.)2> ⫯n)b*~ j^ 93_3#A_QBtg|blüG;]g?:?ܬȾI3 $HcH(JcF| 5?J{W}/ſd9#1fߑ9"Hr%vL:~os<_Q@[Wa & {+JD %u+hl{FJmcTvvp H 43L\RKq @0SU  Ϩ m.]/P@%H" K]*n]pKPVn "^5uT*xHׅ#ڑ Nm0<}1%p3^ W*:SuwW˵4ՓFȗCVYѯFcf#0z!-yL7/ʤr^/QT${ G;K3B9?Pl+}|ijm<\a>Hg'k+eb-~ȲnY4IJ;h{9fc;>NQ%__&eo~/>Ro^(K߂2h " A1cM}ktxTLau(Pw~NgqŠx${ݷGEx= Μ/nrG=>$#0 MmNaNxENЛ:h|;9V--g"FO3E4:vCI1f Aߑ^ ,WN& # dKk f"yCz7?DAb:1@c*Q  "(ޛSe/0Z/LZc8 5!!gʊH"nwx t) F<~49f 4G1 rv*|MSi=q 117ÍQjvhKw$zY&8 k@=EPۆі|HJBE: &Epl]'rtuh>Wz1_#~kKʴohsp'_Iw{w䆍QGὕboS@ `5 J*r(TnS-m{\Z[xkf=VIwTI¸YK1Ozx5*89N+nPH|J UP; r4_DԊ=yP/ҶZmߔ^__&wQLb!$ d{%<=|SX4OV+J ="`*j-@|A``I gA835E+xYjȹ9MKsV'LQ(J>J;6|_$ &ªfB]3On+~zӨ!n}]NZ}n5,;k| Nŧ~*[ьL6U` % U}|H`%KND F;$j rmwtRmI*Zqg}Wd(+$֯EzV; T-Ibν+1R ,cEFwvicxW?i3~Btk1.݌Y!&u.*18GP2%dڊB[ΏNkՖ&C)9N';"O++r?tx.9kdbz2:{xt:@AB=ׅcQ;s/ΰ]HTӑw(mE-UK"82_RXm yr$0C$ T͖bc)yV)DL>W0E=\ aşL$I2@Ja6i:j=a7CqKx,ӈ2=Ys&ϢqPdcʐ7.OSo1h9iC=V~G&Ht`9~qgrvIg( 麂R~Cs݆]FTCQqg|v<S8.Azq+,`fr箥t&}xuWu"IPx~>Pً췖lʾ%p$Qg c)8 EoĿSЎ^@K5סSmfyy W>v~vxƎc -Ѯ!$];ak=4!+*Ln{Egܛ/Vgs#Y(YVEħէ]dPC*S9' pg?1b_Zyp'peCCPœj [C¶^Ƒiɭ:Ă gӷ\{K5p_<>!%X&(JjeԢ͛`r؏y$4vpYk"ʀsw7k&ȗ$šTf9aH|'hp8 jX`߈Ql gt/ ųB@B,?l;d*m?.t9cNE(>ݡx^7nwgU4iכN G-]⒖oց6݃$7] k/wK5´32IQ@{8V\[r=I봻 rs ؓMu1P}}ɼ6M ȸA$yO:fNۆFXMݣT:;AȿTdi8ľmS"uu?oo׽{YF]:kk ^Ѹ爯jq#[vVY(U-PXh5?(ye.M^>Sڣ$._L+nc;_7٨9 dA9&?Ezl\b_LKd7R1T_7&jI5eu!$/)|8:0G<Gl}v`1-F0 Ƿ)'ih}ǚbQ9l_;y* a{m^vm` 2eCMGis4:2]EF]q.TTgE&o^贫 XQ*m \<7 e̊7:9x/#ނ\ FWϕրQ+˧CL}J?xb$ 3 %:y$x~5*@ḆHU^Nλe CB6-DaA#T'z|$ip ;2W{Pcݖd*nfxbū&a.;/9;{{-Tr$4w)nj;zO/9/Mb4brs3QRH^+hBJuӤR۷&x@S}/G$S>Ƀ06)_֍b1USj@t'^4DI- FW۶H'٦s/}Xs gСO*P{}_@عD`W4 )p3 >m2B֡} JHRѥ(cWba}b0b\Uw2y}v p}TiSjCabCB[V (Ye={5Z(b6)t3݀j(^(gjSM8c&M6\TC. 4{3[a ^,TOee p7xރ_L5% ɒXPj|T+͉uFt4:|NJNݾ@WkFȥ.3PDioIӔ,|z;=5\~ kb)JMXϢcfexڇg}HYhB[_f<.Rߔ+BOѽauš~lS6*_s8iC)7 |Y3Wݢ}N_to1::?ꒀ lY$ ;<.clmP{aQ19\T 2?V oO,hg+qK/ɋEG#׹W;Alp`r8DX 7;fSmuRu?[u+f:wTSa0:7< Xwk›&'aq.>ԧ$CBC%LNf8Y$긇n|o7!#˳kQ>OEiRۚ} kwcopb׵RFKơ\^+o0+|Z3U<վ(zT4< u:T@c(>}aŸHUng9M(&ߘDڡKTؤ@[7k~U?X:oUAkʰE&=DoRxNvO, !%sL@`OEsraLB̳כyUw Q8o0@`>y^'C9 %=0'΋9BPPG6&O聊sГgF'v Z _D}p4A9KH8>%-aN2&o`/ B%o]Ǯ-eH\2&ܫ 3"sdt(v'Qiv;6RM`J'|:PޣڏԜ_mk'%rR%+2`/G3 u~ǜOJ^;K ВRrȿ5L32@ +as^޲?m轢+{.ᴔ\&gP$`01 *+ =0CQg{9`nj5LXRíylsټd|D(?+~X\nAtAt[鿤)h e 6Qd f>-zv9ؼ:!I+زͲ1sR.xYV HxkBwؒ'uEM8Qհ/}EG3(9 kQ{haKBND-;"xQ;J$ڒk=+~4/VIG>RQ+GO@Nzuw*t:*PI!tx*^X` Iޚ0j660-42`l* / c0~77s0Iy=m6 uZ;H!-k Xh[:V__y}j`!7^0NNc? oQ~+ [< 2s&N s_`~|4cNejqFAzDEF^j?~pؾ&u_p( $찤ti&(Љ'X>;1@ih>-d5lΰ"2>"#KtPuі#|q?nxԢo3Mc0H~?8B00]jIӷTڪ[LH|Q*Mz6sjvINV8G/VJmA^#MQͫNl\&KǼޜ9YQܻұo 5YkUm@/l]B/W+J:h!@mp.&LqvQI3/Cϔ~Ț-Yѝ۝C @:F0 8{!)ã\/[q7˅~3SڳB6}9ek{|3.e 3#n7R-x8ᣦJ,V㛫$T*2Iz_8j?xҵ*:ywٙ=\=q@YLuK:q`lIƕP%V?4^Ji^?1Ď=I(r(CPfCѱ ڮHaJ|JiyG\KeѮ> P%L 29a" UXi喬U"uu51zZߏB)d0nmkFpf>(-kՇJC=_z-3c4!~M8qTlҫ.i.OQ+wAEoCUb{VuH0y2qưNg%)Q8/(d֓5J>^[Qk konPh|Z  A"c ?N_>@)t̖}h1$X.T/3eU2|wF;pD(Xz2ܳH"x0Q\Yhh呑 -,6;Kj9s" kWO:Xx p<$g/ٰQts<8Q0X r,l*uBD*rYaR.Y\7M7#AF"'PK \_aY98k#AY5paw7KH\ wcՄe<y2  +D\BIN*m][Ju:egQF=u))4.E[V,x6bF*'.H#07Qr@+sbqV$:UjH(oJZO-4}ho~1gjCɞ76yJ{3xW_Ye1`>Eu5 rhI\*LYO-hʠnZWALe'E#,O[:M*3|E.».㐦 ᒪU5ZA D8  ]O9 ~4tDcC` fAp(`Rsvg{6Y~O4?+4@Bo͡^pS҄k=S/pǟr\9NfBxͩS¨!6"lF :DAt^,*hl~OEXیZ_jUOeJA l pƂXYcx5tB#/w<"lG03bb㊫Ӆ6Oz]һtvg5ZT="?25M_ IzԁFJfh':%iQ̕3);nMN`lv\ؕ>$2!g5[f\9~&r>KՌ܁*#9ΐy2zɬr*3]ڜT(-/; 0gqv3,w%IƇLs6`b:LtmD}]ؤًȯ]Xu-sG|M]7yH,*.Kv=a\ )YhZe2+t=(b(hSˢcl] ?ل6~6L"er/5 6@qG1[RPʘxtZJ#|*ƪPwK$Z–?NmԲeߞ J :,p?ltC cyNrDi%\֕%CY\A|%iXo9R|so "&kEJu^,5gsv ]lQ>m{,tSCB(A'["o'QKΎg~$ZVg֚6蠑|oJ~2Z2>چvo·J]l_f-+ц~RWmSp¨Pc\Jy4$b0p^j4+Pz~9Bst,( u8"4$ئqV؜cH;S?LH8Z14^75T+lmR-!甹X!KoBB ZF {i3 Mห5&Fv% pI^i @Y/NVۇFS2P`Bԏrd!+YiX3T8ڰAy/z6ט\Ft6Io?:4fQY*M*Df e8?kk=xW.Vd\;-| Af;{Rv=.O\L&SNT\-llx?`z$r?a]+cק!K[6]dZ:q$i}iZa=@A\OklLLBwfza3}A*$atou)4fow8[n˶ZG̳yMX{zc־nwnß0)cM޻܃c^HMAWѧ`')gZ]> %WV@ 3_DKUqR/W@HuVc.dа/dy\޶#v,ig-*H?2y?.( =a$ϜO7>"pЕ,7-i 18r `MO{ǰoBӴ^i;άe*: 3ܦ'\6Eqˁil8YE ݡ>i T J`%=* \g_9YRCFh.K5_*BxÐN%@da('HFx:D8_a T\~pUrYlITnH|ax$wx >$m+ SHUh|66yn\< s]as%)'lPCmJ@%Hz{P6[+D2?\J\G"Y D7 ł4^[ôT1jG͐/ԞG] 0 _PXt|D;ZvЈcqb> 6FlIžpIw~&hU\)՗.~е4? *R"BI}. != ^ԧFu9R?Y2?x\x@<HV&T><<0Sh'E ϶z̭!fPBm:` Ca aiJO{:KY]fVQ 8 Ր9}vxo932P%P=pnfsP`0GE6o'# |YW3țèЗ&(oɟ#]*PvuH,q c/UWmNKՑBdťouRLII,g[L~^Մ]ywBhrKJ>Z7YTbmɗ$eO\%|a0y1YmE;? 7ktt$qzļ;T z"""$g>Hyc!0$/5v\ %GЪrYs5ۙZ[>oy+Y(0^ɮJx)tKDGߕ(`:`z^ p^"/74饄]XskP *#u 9T"SLbj6>V@"S*g;r' ՝͗7.ff{xzG}c E$A\*?,zFm)~-21HSIȎ)!oÚtɌRځ#J b_ T?JbI |s#C=Ven#X6lIѻq(3Y1m^)Σ,#SRg[ngj}Nޥ5z?/exbcf?쿇8Ny 8 ;Y }A(l`߲+nH=닚m`MsP `.RF4{=rޫvbUخL Jg|KVIo<6AԾsB_M0VN {uU㢞8nF,]t} hzx݁Xn(;x0x<!r|iuC$/#v ߢ1UבJs[%P3(ZU.Pcn wOFHuE_4Ҥe}k(N[CA| yUwEvklӠ.?F4;.XJ/O8 U/p.VzYs.n!.;2>8"NTQqr, кẲSo yI,. IAJS-9_`eob^rSgIț[(*ڷ` ѲT&P[xGt/͍emA!&%5Y_7XpEPWO)SGQowƕ2P^3]po:</e$#[^lrYyBG)Ȏs~`5͕N1}$'Qh%!E\cW*aЩtNyrĕ|@.w'~Tq촓!{r&3Y,RJ ^-G91|e͋neudDNìo0$w8N5*3pfdTT;xچ/N[s5BgS5nD{2SozPuG@#J>+О"(+!+*8|:1xMATde3#K'ε>s09^D.MܱAOc7h*拞b@G(+2Mq㼮H*x<鰊nfkr#_F86bBVPꟼ )gD,+0󩦵H^/<޻rP1}uCEd P%8:1̶vef0IdxL[EVͫ[x:;I]ר&ɔO?lv)9KN5bDâ90$19f)gpTya ڪOu}ʒIPBl>_rOp8xhC+3bukC?):y^3MJ;:{ص5`b_•)kg!Yj8$uIJD:zLOc̐%/zNnrzcY|F}TcX0Gy)vt@~T}4YV'n0:#0$2(Y|Gƽ a7A|^ "K1g+ 5oG7:TDzJf%gtá;mMH ֡7K-3ȇ) 7i."\(;5A;uG˭єMؗE )-퇇43 j$G_C7Ӊ4ıH6-7n 1WAGįD_gl₰.&A`?J[M!-L)2OգoPGeWLf>҉4C,xz"&__ͩ(ӂǷrM);ȬJQŠZ($_ GYAܛnQ _H_?o~M|eZ֐(fTM3GcH.WH}Jx*!pm+-$OQzsH.?÷ů@yo>)!Y;J^mYr1`k:X,OP{gdtQgQV"mC|Q1U7 K^B7~ @6yFr4</J  =,-7Ù(Df3Fc\UxT^jP4P`Ri7}-MWkAHfj(x)zfxJ,{8byTGwL4nwPw @~BY<E~ ?}n%.!߳3D-+Ac>ɗXMoPWXY%iNs#nWF!r3`! B1[~0gSRfYV&p-vcٌ^UD練Bg*gQBEe5W=u@vxJͱH@/ʎiްZOMU (֚{Q5 L=iK氙rp__ sgqbkzy D~  ds+5)?OcV6׭%0ʓLqΦwni4ѝl2' < J R+ND@IDH'D ƲItmFP-`$K񄭑S;f'Ag5}ϕh5Cl "As:?+g%7Uz7U*d # r4GGf !ӷc77MsZY;MET<ڔ1W"(4|(fH5Ï*tDO6\< ~5'}ddط(#KWK:!2\ȓӴlcRO-JC&<8Qrk).Nvr7hz)g=SH>װ Eaj6 8ܦ+d~'2 i};0џ(_N?7qp=/9ixmE2. pQ [ P̀DqG R]^& k/[8=Dl% d 7tݬ`gT2$AZ]ʊ# l+VP,d\Yfaѫ6Hr?iPOL߰D՛.Y$JY臯A({=a֨_i-B)G\-|^`3c-Ja{gE}rݛv{KvWۢvΠpm_ )15s"$Ag<>x: ^&c®5GGw ;Q<1:[l&žڒVKus~Bk^^ɻsUȜ9C-዗OS>ZwWF9KE Hβm.ҧ` ȊjB%M?MnOTV]o 3/MQ8 Oj/i\ \=7-gOmC]JBi9!jJLjN# ڗoMui RXpV4?助kWLћ]Jz$J>QY""*Bm'(5̜1íYuk:',264IWa/k:O|g ??`zA.n%Quݬpͼ`Y3*9tЄ9,}t;P vף?Qo]G tP;g^7%8srA!U~H|r@ŀPez< WguDլ`ϞoCR9_4TZ~]?G1ZJq)v׿붜H1+B ~E޿#8h* U o|jCW)<.)4fݬ%Iڔaz!e9syo/P4I+_dḆ.uNNqP,Kzݿ˭OY0:G ^ L'S mM_'Xk]8z@_i]Kkp~S~lfR7Cߙ8:GJw1ej a\?UC6>Ӣ8I01#Ri]C(pC갈 [7I&C|A*.J) )t#h64a<{Bju1ARTԴF~{~ƒAENtkr|br2^aSJFI*XGeKK#8WOTkpc\gخZ>K"H WmL Y~^"H+NCnP̞^vL\^t+lۜhjm|~ϡM|<m癠B'-x&ah'|L}e'h%ҺlV925p:\Xa(MHx|W{Ml1nr8? b,o^SFÏ7V#@![XZb>w,O~kNSQZ"#ӞoBe#ɘ> ΂0u+lWlܸ8XXӂ_8 lVP\.]ci?69FUWQ/}|-N'?7RJ˳ЄgʅJ_=3%iwl8x҄]'?pUcbr->e[Su-ߊl^4TWgD;ph{=ZKcЌM$#:&[JhY ş>/vlL3"졹ז7[&__g< Tm<. t82x)K?pQlWj|u*Yi' S*R݅r.OS/!^a|ާDw= ގs#lDMN 7YT0nJ7 :eŒ))ۍ"X+s^ jݽ:zg9J^@5$䰎# W@a.\ÌJ,Vyt9&}$2ӯQ;}Sb\r-BsK t*󠓒bEZ9CQ"Q`:R1u`yCcYƻX sK֣ͨ:rbŃ{ n'.$ڛhXovp0=K*:ph;b| HµJC(|5DyA]ܟÎzU%j+h\wxPj)J}1!͓ Q}LJ-8cv"_iyG#yVB66쀚aoD&NnLөא]$S1L8)^[7t'>䚊5DAPo GfԗDɟg❈WX`l J"5$ݪ:󣵎9EU+Ay휌uy8\SAWU;^k9L-lwAz1VAl ԰d~D$P#3Wėi_ܣ.u<94O/=,jY?/8\}=.,>]glnTz*}-" Wk`l!nu 8 vBdhB =7)O&1/c&Ql?S_y9|iSZ>C!~-P52<!T]CΣ{K6|DL,}/+o󯮋NNl:ӑU_k o|bO7iGi QڂE@6#us cXhu$4DĆ @}ͩ߀t0QE>o’oIsv<RWȐ5hV]t;gm tqxg+=4MM՗&UpF×cSLo+]+$Irjo˘Kxj>e験֟߆^fQ<*U/Gʪ>AB 2=:%ľcmy0a(*-o=,0(wkgJOo"Aɺ6dJD!:< TXQhƇD(٫ԷE._&H{Ghpy@plף{RM2횊!uu%:{tlZ ל' 4BX4DJc[ow0{Grk%elB"v.t)9%J+)^ˡ2C{>< e j`O$nY_]w4^XQ ?"_bW{/,l$#yi|fOOrn~s&z,+՛[`DmMmD f=ƽ]vw,]tݥsXt~ vydVs #qV-`4e 9gJ4淟oM׷J0& $>oQ"t JxBφ$w+"`"ڒxb!TW/SpQ^XZ ?%G4m 3.آO`;TStH(`. lC?.[FOvving! ZoF`$#%]6;MSM]e3%(>pt/ "4[)=9spr!C'N~I3/Nh2x]P)Qca{=%Q?2Α&ek(8I2yT P!Dc;q;hkW<-b&WE56b!21*=W`(i,hU’:cr>ş^ ՈQ>1-.j*t 0=`/硟o7]{UNQUXCRU+m`ts\sh|R!n[qƝ "yiw=2bd)IGǁW]Ni c/; :Ց eTFj 8l[l1ѲkeV)^&%ag#2֞F mW2/ً%Hd>7~ȎGK'Cr8t/Qh]íMpvw(2 Ƒz~bC1Vfk ճȧ:ص^hzkP05g񟅑͟G-p?t9\i`(xxߟ81'hG'nHd8YXt$/ԍ+OD2 P%yb(: kEժ@ E*G@x@zoD>9)4ѐ0]jw"UDBOmO~;> D 34B$舜uC eB>(w*}1U| 6 SO6m6-k)RU}ڙ8/x~ۙj!A ^^BVG^l_[kI9xؓMӧ~˥8c6b a. 6OaRnox,\e2y8m $+ŚmNvRsWIcI]_Uɖ 8p`b6AN~YKsԺgtcQ][#(_&9!ИWnN'?Gf:*Trz@ȺlLԶ8x%#mrYXG06ޮ<ߛ7Նk#Zi X) Yܒm))UJZQ^Nzp`A^DKfoXY,AoO?icٓZ37O$x_e@@_`"z.x8Ns; DPy*D8w!Vv\E f@waʒooIm8s}nmfƖ%֢j:jpVP$A[L]*on3JsO}LF3;(৫RX"i9?~G5_sZv%$,C,'bhgO{rwZ#su~xzR]| IX9J8aK!K>U+,kWzUbÃoy:^p0Piv1./#hEhuwAR#v(׶=k'( CCx/uI0iϠMBOo/&Ք>0ij>Nw2/$0.3D^zӶN%gwd/:+읖=QWTeM3%m2[U-eSS"t1:{P%18*WUBb,ṷ8_%;&6#]s ֠l#UlORTڒ_)9~6EE8Ӏ&>CMگV82 rua!AZMtJ_bى/z~d8\FJ-;2KHFmbe>[&CP!{* ͚kcPj*ßC4Q=wyv.̭T3 .Oj3ި"& ҩ|F5wgl5}4o6v -` |RFs%YUC-kRʂOs{Z6)sԟ+~ws3 p(cSH(fW0o^E6H``cJ(>$.K?Z |YԢ # /TBTl&>;֠ܦmW$Փ< (w;z+*~uRXxM^ zB7hKOw&|LŲ7%RP諫j BiFzǑ7~|< ԰ <ĝDߤqZ٥gcf1*4Xh^mVh'JO`Za!Nxj43NsCIUȣ1.ITd"!!^NqZ{0!z'ג=E+tu`꾣i[7%[rɼt CO&{Ėޝٜ _U-70jCzVt&puhŵ=8#@B<uqq@õld 0 𝀗emqCn$f-b5k(qQZaxt(P\&3w˰8x+`x~qW!}9@k;|^'H$4I#mObM YP`j<򯁹\ dJo/;#h"w9@l7aDht5|䡍AIQGdԓcykyX2j,*|M-`ң3@Ǥ/~ ;8 0 {z˟@ڎϵj#Ϙw_:Kw$!>ڻF()a3CХwB_<94w3VɇчH]؄[cؒBڠ$bh.%k!.ytGSureJ q)i`Us+:i E{.0z/fN/" b7]#cb]I+T 퇊~C"($#2d$oKjGc8@-y O2v,Xq'x{tOR<1R' A0b@N4i| /%G7ϊg)2sg0c rp<c[: ^.pEڟAحMROn]7vrf Kao-Tf87 ʋа .z n'F> }fV23ì:PzF[i4נf?-͔_F9Dե?6][:b ~iwe q(F:D̻OjO3 3sh:ND9ėAz$%n_'k_6K]mC%C6LЊQScbˊD$qھ7eTV},XAe'JCP[&Q' ˦݀"w񪎹 y7 0:yeJ6?Zh"Se@hWF ӡX{ ,µk&ϳVN 45殦 DTsp.vw+z YTu.}Y~xlݤ@m O`w-Q $v?rywxMΤ)NyU!pˍ;|nd$9ƨ(tW1UF7ObǤGM2p;Ku>!*I,FtOhG:N3:0v֏^ WRO>e5‚na uM/qyo>Q >)hߠW_&Ƌh̨>2z\fVOJJ)%e YJӭ:pںM tǼ7aPvrL\. n=c:t3?6,C'0SeB$7SoTѥWzw/¬ #k(}8 , sǎv\ ٗ8qYA.)-7=j&IR|C0,ڑyvÀaU<6 HHPu8NTK4P \uejEY{؟niiBW F#R[ []?ˣb`.\1ҵt%{" 1:+~bMH?@"*g~#y)vlodRB:>3" Lbj<Ŭ075h5]S#1*zCpm"FӗҿA5c }39n9$|4:%'y;ul,+*z?2-Q#SPuGOzֶG7eK]; ;p;ܩLR̸TDzDaFdEqrJ~çbD\+7"HDI3h|eĮs׳qk e/,{Ai-U FQǴJ_ѕIT_G{20evM)7.Rm;hϻ|%kBlpJ߅8rf{d<{zr tba ؤ,Fi#ȭެ+Z>hIzs>u]pfN1FR|#,_(ѧEJzj7ΦX12VDb$zy]W9vCSHԞkLLl4 eRlw3m?=E( .-_gXx%TQG㬾c}T;?ɖEbm}NG;ٺ `#XS{|3Rn˔' ,_>nET&o:^2⽎[2]GZ֬g0L>^\Q<v 㹛;tz )KnRFC8+ޣ :d>f*XN%5/I[be1U׸"ܹ-L+T;^yam'i88oJ^eܺ$Ў2>oba@;DN\R1J^Pn.VErvnl"!)./5v/a]1(G_-{? a5nO>HcN(NU"\qsKaUdm 05njz9!Ve^o#`l*+YEe]QЙ$@e2=dd^;n{f%hiX>l1XuF'G``qawɱZA36eP藰^qAv;B{ 7[WHJ^ux啎\7dc"Z=?Zh—V+_P4NQg8ivhm|0molLJdQ?D} 4Y?3f[ѨrIͷ1;@}$Ǻ@5?//`EEehqm_9-/nA]y_LȎ͡MT#D8W8H{ܪcXeDw0gotv:"C8'-A9Qm*̫.=r8P"#6C[]:BgԮ W4p":CIzOL;R jt@]̩7fP/DN"U%7!?l@6Ss'_>E[Hn#E`'*f6XV_fKJ0St"2禰jpb,wkkg>o$"}-0NkgzF{Êki$lRͮ]acw1h:<d76No(S{ǕZǑg&nv\fC'I xSF*p8([pU;;)Y>(?]H}t 9<=)xm%0C5ơom>I]iQYD4gukՅO/4}:j;U4'룹" Li)v>spAz 5FW5T% )l5i` D:ƣdw3&m+a*Ğ7E˕K40 JnpdP ćĮj_ |VaMpr[|2ZN5U;ڣ"g2 B$#ofΈR+[v;\c[3S (9—V`_C'BہFr b]2^ZJoH89%ʷN?6ΪQVnwGJԳDH;Q\\]K +u++0"Ϯ?|L`xLQ^y3k2)j렂6LQϦin]ҷ+dt|s)r WNuk%mҋpVgGn5aTUY6G*)-6:=!JR@b.pgh;cuI9Φ$C "8|eM ]=ht5kAؙ *]Jk'IZ)x +Czٓz(a&!)Denəs?qMFL~YZ%Q[L`v5`B6!3XLgxU=܋>uAfWYc9TD&N" LjUViyҖU(o~F*s ə{ uoL3 >9cJX;zV")~n 5KϿʈXN11…2=:dW8TcU+B,c6=(GneM g^;" CL[OD H4[bИ>#9G$[#A0"Pk,Gz(},w<` /Yx϶GK+|zJ+p6V2uXzJM|vX/߅$UPl/cK9@9M2V;dW\'0a*˖)Ԙ!|ܰo"qXofoBkXe[-"3pTjKSluVGW=)ojǗs֨󚭄\9dI9=_H:O|F0潬HF7˾8 <nLW Pބ~ҥNʕ.PWҎ wMC_!O8RG˨biw8~S PB޿Cg. 'oWF|^ t-o{#uSgPU6N*sYn!cUAZE=9 ]ǗFEOCß64RE睦?^ucU6d}f%YxQ-~b" +#+|I& pw(l|olc도P=@́o'&vىbh+KI e<"o9.3`BG|G= {N-Ƽ~ n#"?՗DU2*);gf('{>ưPnjI rUmVaH2Ήh<" 7 ʳ6[Jg礟+82Ys9&85,|O;nilzIZ}Ȅ(a`|RPpE˕m줲Q"{^B1UQXh#>FnL_# Tjh\rI'9$Sߜ Ù?zeň(Jf7#I;^wR術q]F`.zTH3g{Ӵ+nޤ=-Ҋ[rX^`˳vJ*V#2;-oS!p!_zzr;`XqI,}H0LyY"y[dK|Y迩@ hЮˏrЛ]>*5wSuTͫri^YA8v7nȻO 4\S_lE%hgFl?_o{$_7asK/Fؽ ŃP(q>a̴^" Fo};g͉O2@߹wTŃ,YS?h"OŦ;%Oz=?$iHQ&pJ\G/@B [r,P?EMi n[ gK'3И ɑ)B Zβ4nZA5J#6A|5\L_9}FYOvq652J=E&ۥH!./k{ I%(lf@Y_mi]4fY8^nGB5m1^ֽǞf,l3-2y@W]_3MCC!.}- cQgbz"Ĵ1N ĸORSndTKTσ)79fui,̓Ы*z*Η{>U^pZ`NQЭH c)J |D*B&6h-.POڊZ#kźD2 zH{ "l-Hg AԪE>@AZW$CyeUޣh=ݠ,褽Dk!ڗTCQ7*>72oF;7ˍVg&it!U;&:#g4OBL9|``В?5#DQ/oÚ1ژ^oSDG<̷i$GrX/0DQ_nXOL@NKU/A`0jó 0Yױj/d!'l#Y= ܮ;]cR>eG{)y]+bsB%KDnuGb2#IMfe:'f v6 pdlMqZWXg%#(IRUgdP駫#kiख़5.|iy}?p1.E7O&cƹA 3`@ae~9 s=}Ndώ#ڋ\w+d6lNRs7@]\ p߇FPvv0˴2L.[?τ.rA6M}《f]Zm6Pxy8R%iқt8{b=AcyZ6^˾`8$ M[T_C.(CR} T$d!L=X,`o5㈄WlG|/)@hS?&7?կD K&Sܣi`h$L7L6c7g_ȘD]O='IߙLN(ebDz8$U(q6-CRTc3pD I{cS0+y+ k2q$oԹ;a+٪57|CSS}}6nzߊvPKRϬ3p:ԇעFBwnu{X*MsYmxÅ.|bc1Yq Қ^f'_ښ Wckt+389=Qڎ|1 NH繫f NgpMrM62r2M:7&Cn載iߑ߆ch#H3GZPSDp]w,= -L $[I:kFzRy9~UCQ=k 0~f~V<`oLC JuY^uA,ךE~ws͟#zk5I00ldpksm+[O ӑ `@)A=ڹj ͍ץ46fE'PZ*$qSR>:Hκ(}/?W2VdV x=lȼUnVh )/&̱HKz¼V;hCN`5 1Au̎s1*|-0Wnb= VUAըl[]/ S^9A cS-0Om"t2L22AYgoؚ]LWVChnDXzg6@qI7ICoV|u1Uz8i=>e7kS;tTB.D]*h4U'FܴX8rRCi6Y#DŽRP~ C}_~Mx(_m T'Xw {r~TIK+"Syhݞқ(آ&UmM-H{"mACtc:yx< J rS_ &a ]잉YDo&<RJ&7ޢQ{!s&[EF(L wpTJw$Po(v ۞~;:1W0ϸCWD*.rXI<`ИsOX_p@oy{Rl.:nɰ}t(~x9E\@} |*si:%Fⴔt\9AP`%{r<H|ۈq'u"IjckE"s`wF`NCW0X 9E"_ 6}7A",?vG0#]oÅO]F M0)ooe^$=֓vFg=c/~ӱs")\JA}\#y!Rc&Xhl/'FtrwD HeZlpSX&Ez5R~=vN7)y_IOX PMXZ9c!!~9[(hq~<<R^tW1T]vn|M(gb-hXf!jnM"l5U>^1f='}Jl@mل<~y̟}[#c|悔88ꐐie%qj sD(dV>,D^mEǯ) vVRT< ?rP"7FE3بbR)Dl9VMm,4sLk;sH>l_sX#dJv@`:g.VbZ =a Pޤ3RG4ʔf^04 %YbR}弡N]!ڠ~JF\6{ؑRWSHSVS6r|ə ӑ܆d8} EI!4Y&ÛbɇSIKpxL-uq?̔X$R7gdٟu_\q֛ bqcBAR;[sɉf(n;2yȻ<[N/VHcVȹ;<\gU#6nP,bc7u+;ܫ֦c`idڪ 4iqD ka P*ۺPEϚr0;2NcCD,wf VN*LgɞF<'S=hΝ1c>wGK{V9uطIgO-DNΧUz}{{,Q:B̼ 1MdvRnS>L=(%Ŀ9聈-مUxd~ULUKagj ;tLt]N =i下Ix7h *`m"9{TݳܼOiYx_%NkZAj=_SFwU#RzS0rE*5q q6ѐ.`ctO |{ BBd a;adg&+S*4dy6a=>jQE0 vCn#4X$ ezh )XIn})0żGvfJWHrwZ\)mT=oE^ - 3{b"V3ow#Rd.w9ue2p[+j$»0b2t!}_:^#$jb1`)~ڭmGEo |Nvp1# yHM/}9k{/eXFb Rkq!R/P6aVҜIq[t=JxS=E|^$0^Ř9c Զ+QB ,(wE=?$O0HomD!+v"zoHdD.XNb `"UH @4vi /sz_A[%B1cd?Ʒn7ru1"q+7/«fpݠYgPKqIͷ|jb.waqM>!iX0`$SVx0v5+o?Y4+qṃmG{N_u;l&o7]G/P8OMklBo{! J]oΊGS(ˁ@lx^,aah#6F3 S=K3 Q=JŒ}`I"b\2VLj\3s{崾 l%G1rd^W }t\@j{[ؒY9C$$ܧ~b۽/1; wMCVX^ql?J*!2漰2ח4 ⸝a3M/ۆބzu%X@8:fSKȁots^>kndN·3%4'W_YJsR,tm"ņIp͌M% >31 WuOͲ$`nfyeXGʛtdyg1uEcZarx5:1mH*#qLPֵ Wx B p9gG@.%4TS{6>G>鳧NʘuZeX !?Wz?-,<2䍅GSȄ9[]HdE^>akB('%V{"pQfo)VҥP,rol~r x$0aߒ p? 2*Q<)ŇKA>#5;g^59wr[))wIL+#qU%OF֨=JuR;չfx̏ ف|'Vwb PUS8G*9BiLz4#QraWBJ%K 9A-;z'}9k*5X[oϤ s pTۚBp XoLj xuy1<y= P4gFc& MDn}<[rRc,Z]gWz~+Jdy[ y/,OsFW}~ɶ۹HSҾCwԺ㙅&BB<$l,hKsnsABD91Q"k"U+a"ɣbzCp9ꓴ80+Ha4Q1V <+X@8V#1\3<^AvB*"wJCR}b*ܧ!x w%3Zͦ@ ݔ GQ8;E[,nH?M?:#x0WS!S`F贃k5S5Pkn>rz*{sEYV^ekY{kUX8,jg]sמAs]}?,/AoP L)rrL-Dp-k ϑÒL<ܡ1b#Fb> Jqz/LVr% ($9< g\FE8!t IqX H01r٫zy\TYHx (]x|;nRRMi}ldwF.NSz*ky*:HT7+G;1YP#H 6v߹q`@CT?P{e"C;wNN=➦36G#xuqUNz B2@$p2 fvj`qbn>ȋZp_zV2N(#$rFp뻫YmINx6p!&(-dG|nrFS"tX#jZūp;:H'S܋X.>]Iv=O9 xwsoK@M78 /H!Qi_^)}5=<hƵ­-p(J#\6hp$ +~3w_/(^]ؚm ϓ/5Ꭲr~N|@Q׾&3CO?WMͱqo"&0 KB1YLX\* =/vd1 xG*^B!6+GC07>U~`M8tnM# L"FBE j`P2\pn6ֵHjh}L 1r=s6 NĄoz)nU3Sܢܶ%,j&c$k_k>ԁ@ oU*!A.I )#*Tw@btaӰ=.Ι-JZ+釀&[f|o OU"ڄ_RWji Q ʒ؅2GP{PM?W5*h uwШ4e7SRÛwݛ[0X`T_C_ŮihAy~e;劕-~!%j70 r)²u Xn'0.y2bB$bJ騐˄*ΉB砘WSL=S }Iߺizegf+>.rqïsq£u"v3' o>ZDb{B)%_VЙhQ EPnxNU+l5Zؓ6Z0XkfBIՋ4$ #U=Z:hl 9UqwЍֱ=7P2A'0T[ \tG[HI<6NkCTeuR0A2` npLwnRe>AH:hrǑt)UpB}!p%\p:+%L< fe7(*pPЗTc m'_ ZL"J}V8JN]ہh\0cgg& +S a[O%pOrh8~pd| "j57ﲊџTi0b8#zd !pԸj8Sfv%s#KP7s+EU γitV'F0<>v V˔Օ* ~p#(P0pY`y[JzB]q(Uк{SXBVzIzs+vt`oG32;%/=l^h x0Z8%$Fܹm#e_mAc"v{hWh✐)g$LJ/VY\$(1m"gDp'}BoH7S*f%pARt E .ǝWzVcM00p1)l3p i!S\dlws9U8oT\Rݦ'$˭zK]^-̉}!٣ z{tKCDp7a (_K^0Z| D9r!zRfvr2%JgU84+6T֬)Rlr4mŶuW_8乿Qn1x姁8 rFZ/[dAg9^Ew'ʢ<llg#%3Be~ϥ7>Udw'{#ժl")s@ª=o!1FB@_;V01V_@{8^zğ¸e_X PلbsԗѴ}M#31E)RZ=Qzp\v-~0yS}} 27 Ӷ#A95-#yb{C"iޭ<;sr]o+600FnzOLB/k}/<~jr8^Uklແ7Qw-Tg^,0V4>GR|;mg>uUn&8k$h^[ё=^gVcC&{hB{(LzY"If xY8erzk4ْ/Vb|ni_f>KOL ]':3j+\ugǡɱ*gsmimlʘbIAXnST0kߙ@?FS=0Aȹ`Ƹu:E`\6B|$M RL^ߒPrHjN܋RgR;JG2 j_{dO4,ONѯ.[oY\rVwVm6Dހj-sb{TSTas}o PY?}LgTA093M(G폦#-0Cp&9du0m}3{$uCGS^)Y@,=tĤa6 ־MߞZ^F[* e6z8!Vp2:(FfL1`hނ#ѓUQuڶ -tQ{Ē-&C%6 kB Č/h(*MRv"IsEE³d0[o l3 3 qnHٻ#+#rTzU!-H^Is_gu>VeQIܣ8r^:]Ӿ`6 Jg:KV#DBt\`ѿ4T'~L7a@:uKzSCyBs퀵+ͶnsG1`IYpAqtċcl-(lyex$v Jz[T<-G  y8b rzсV#n*@W㢔Xy.$$ [HvG~7;bdo~X q߃AxY!8ZSm\h"llW9/r&DnF@(%Ҫ>B4;=53%H;Γ0X |`}$8W:ߝi2x$3O/_f]VKDX=E5.rJzL=BNR+$ߢW38(Ťz甘R5Uk;0g$๊~pPSTaAʖ%/İѯrt+Vo1Tf8^lt騲%*zf6)6=PLfൔp| >ɃbcBfЁ1A}[Ht$?Eu>A_̌_cj#W\6`JbgTDU*N:(a$T^8dm8.T~w+W}ď]Uk …齉uKԢ J]r`gAW2s~">Ɣ7T7>'`n4{OE]4dX[4)6vMKw.2@ ףݾ6YWW0q5-G Pk[=n3 Hn$ºkށ5yO=N]^ #>,ͫ'B*L]]Z(Og'˼YrA1TQ|j{(/xI\5C/oN^`z_&Uԧ;r)7rlݙ/q|Dw.PSt cje¹]#ASvWfFЦ4-FN5&Fy (csqP`$~wP9s޳5a>)S;Bf5j*hȆeEd]O B| tRE ;m|h&* 8cZ[eB(jȥq%70?mFwOi"݆mU׾ؤsB[;P\ $!tAxwp 3*"_uTz[cʰz"M`([eOvNÇFҌ&Wy |d<8ZjhrDOH|(YiOzD1tx5Cq9P?_ԻE]/ oR e%H9.Ÿ+&JҤCI_Y/^)UP%[+r %6#{'d2{ySp[{;HЍ){+WAE;2-v,ӡpՎ:o$knNpCFpb݀=S @v!^`~*}]J84XMkQ%moAo+wѪ\("ڀ E>a%#O6-QdzFC$9XQ{&9Z+eK|sX/A,nÛ"2>j lU`RWm}@Bfۀ*8>]~m$OlQT\x9wԠ[2+-<R`{Uy3(jߞRAu XaG:y]Zz䖒ΜG8k1 wٲߝ| s@sO=TBP47g/6,ORF4$87-Q%}&l4Etj~$H 9O׌roӓH Hd7Lk?(ȔA& < $9N>\/##X4vt75 FNcx ]:4UtHH7zYU -...8{Q?iTĠcvcoF!Nj- 0M\JaE`CQ^0{RmV=WK# oE;k[eGX {9]m?VU]&P ŐS֬m8(4Apɗ7!?\-*ޫ-X= V@\voK@\T!bLȭ45J_O\614313ܛnMoXZVCi/W~؋ǡ3@'گKC&IfaDr+yWǸJ@`Ql2vOHU!ZW![T)XO}Z1l Joޛ9>/˶Lk;4.f;E!E'"qQCnҏOeJbPK=L*&`)5Usqp*,!>lxTuƭo/"3dԗ虢fg ElGyFP<UFZD9fBd=Ƕc:RU0XhXA<~'BWmJpubeCG8XT8zCo!D OXFO+3%^۷½أ9.'zQ-&Á 6t~ߘ0ɦnW Lſn&@jc(JHZBYeJo4@ b!- ̆J[D mBYF2M9fRJ!h tn5SA=Ƞb -UOHR7VKFmGoIHIlhZpK~u±1fmW3nZEl 2XWăb$G򯝫gʈ(NeRk~_>tr,H #ȋ$[Hn5kCuc07 ~3e9E4Ѭa }x]:!2G\m-__ES\l |׹Xw0 mc|2Y͠[WN:.TOQ3R3Nc*3HJ֟U^@edC7z"=lC '[YÁVŜJq"8KF5 =9/+!^c(_MU#{)a%1F?o iyM[YpD;ホZI[7Tc(j[%ٯ݈e^PN-FZL5O[o ݱV_.GE(Bzhyd৻meKRL+R{rJ"Q]%<ӗa u]ޢϪSkGϷm"zg-Dlkwߢp`ɖ?ж{o"E~4x*4p.-ь;"y_CwV[TngjKߧ bh!Y+eYr45Dc~Ƈ[\aB,7 ]ddԍU<4\ 5h`5IKjW~ȖCA}y4pq(` MeTۚ=zrfˆ O@afb~#sʿ-i;H]9=jo(~5a|ά%+S]q :˸d a;;J !0~ /=5g fN])$ivzSDV'e=:6GErgZT[k jhw/ΘGv%aLTHDafO&6ھvwzc ѕ6Em'V~m)kOig0T<8h֤eKPv(u.V%a':{BfQ86bs59eXpv͆p(RӅ&-h!hG R>-bb2Q/0,B ew"RXrh .>IѥY-c(8h? ĩ*qp{0Q8EN7v]+V Z.1/_S ߁Qj,4 7:zL}HKZInvz-73>3NJ+_ׯ"4'ݚH&YغnhzUئfWe,cavp-k/yP=2 UTdirR{sߒzR2/,Fl$oY%pjФ)jɱѩ2(ҴiXEòMo5(y;;<Ԑ#B$9z*Hhҵ8>2SrjY 9̕gC8bcQ;Ee/)gƘb04]v๴aj7ߙZY?gIubkHmlٞ$qgWėξpeI&/&ZNaqhI$8k)]vh'3YLjܢB@mb˥nR9Gc\YLPcLry0@r8I?$IevDUi ?vnȵޕuErLCnuwIu0?ۼ%[|-60}iċ 7c(l>p[2u ա7(A*",hoa逡S͇XA{CöJF~yN{Fas< ^.N'͜C5LZ'kJE$0Fi&ؾKIS]}5w!ӆg׏{|󫃐V[.M~gOW bԮp[H:7,;L S /ep:+ǼUIʔ0עǛ^P€tR,L-/Oߒ],8ˤewmSaСi_? ] 0ԑBz _&tE'8BpV(cHa͙.q Y:r \\Fp%)YϟY2,d6xNe 81je%TVkT<)w]K1QBw")v BqJo4r}T86OD6wyݼyu\WYѫ~/ c_3Z:[gBj\E>@r0:saqkI(Kk"6W3 R*p|bZio& Sd2+zS iY#^/2v`y֨fw@\;Œn^H_s%x]Op50CVx;{#thT<Ѿo7N%7RDoFXm1#78Qџo+7; hh ɒ /ua'{=cg3]xa>zfϭBQjKɦ itQ](4bhPp|tw/|Zqq)ittJYIY[ǩq"U8z~7V,D7.kl^ 2OJ5.@;+ݎN "M'Ѫ02*ZNNtDŽZ2[ i$T. 5z i[>awZ\0~KIO b?Y݁#m9^kvN I!_*=p&TXɯ֋N{ UN$BsQ!|)^0 2Ƅ!u 5JhTv?;$񻗪W; t|`ގ^#(ؐ7[2\2=,q=OʗliFYe;'Bd3B}Yr'?ά߀jx30g*vq7HօB[ dAHb1:`Hy qڞU8֋{sA;)R9I|)hy۳  v87F$`/K3ZnK)ȗ &('$޷gyl R@W(p3XXr$^oq$=Tkb';k-@nJX]̀q[CPlDL =g/¦h|E~g xї!t=Am9":vz fi>rXgRJjBG2 r<w l Mڃ,EmN3r׷L !w6)w-WYv9-FRBRWA]+G `}_ kȝ5~utgX X"#_@!+; R붟B^iTSh,hxh(J"\n ugLjDt(xX]^אz9 q*~֠-91LRCbXzEEQ>iKs3(ޡب7*1FD9zLD[ȣN*ﵪo4 $dX=ݒx߭w<`iH Vd ^\LPF@|}8b˓pY E%Ԭ urU*>LT~xZoqh4إje[SJ^ӻ#c)ģb]{x#>xwu ݍU'݈TOb<\C ؇7Rs|w^ȎY3 qEXfwUj_b%;[Toq>G GD]`L47R#v&:W#৏)2r̰.n(pI< #sN8tdbCRlkmد~o8 34Q'fpGK\QC]N5$: pZR >}i!;f>cZEpWX1yV j asl"̮[#7!6Ё#񙊍9L`~ P6%`ӂ#M. ӽ0A?9?^o<= v|K wM)H$ߖQ )CTeIoi3T9"fb3v`<⑗0?9 }9Rfxi,6!-ٝO98^;C|^[k>Yt{4 Kxaw-ѼO(iTpteonx(/`'Df9"YL'cθ=2~E1~+_JNa"c4*I_4 #[&15@*A|E~_2DǑ4 jyYzJӈVFB) .ˑ?^#*H҂ yI_eBM wtМ5)0컅:NM>;_kz 8rVhnɧF]լ8|~ZKP]GK?ƉEL}|X,e:e@!2? S-5cHJTJ[J^ԗ9b,/Z7ܰk61z[m >H٘4諍U UB+ӊx2rӖLRěd)  VE+ ^*\E++s.KT'j ®n":]T{Ӷ$*ŻsfZєd!~OΩw-lZZ}XEm)\w9?,> Idb VXQՠe8H3.-Fy,_?lS/+*[ΊMK{X^"KI~7CPy4`Nvڌ~1#!a'Umy8m }G#!G/:B?F=4Du\9W-47~ q(_e&Jd 1!xv=JƇms(fCl)dQ*ɿ/h6؞7ȕ [Gǐƣ4RZ|(4>A@m:')u7;Kx'.23(@舖 ;{oi[YZ/%ori&b:crLcuXO1aanګxXdQ}rQ+ :` oM+cEչ2yXD7̶ؖ-,TGϷ_4>B8Rc22O:R Y}1a@ ƛ]`e^I)N4h<>004AN$ud֨^,NK}Ic1}(LV\c-Dj0H>|X)Z$IQiwEe5V̾mqٞÞ#Nbh7e _ /nnr]qs䞫F˦Gpվ}/v%5 lM,S5P{aSlb30ju)O mBx9!^%Ry-;2[T1}((9SfSxz4^q-t_Ľ(Բ͑\LB^[,?We(%}k>6,ȁ"{ߙrN3ST˒,NV#HcИI ~5^J 6"٘|@r=n@o*寄= VX=ID30?Z;ՃyLcmb~~w A9gNܨ/zYG/1w~8;N.]+2\w(:sJ 䯕1 YWjl;u V^W uWmoBBbRŲ:ʹ { dK.|)ZF̀\)kI;w\IؽQ8QaHm$C-E(1 w¿q%s.0e_EJy8'4jc4;o):3@U,r"{(-AZmsi؆>kQx {?9%ڼb.c㪁*مu&oثA~}UGFxV6Ua(pE6űW[WHAj7hn榐O0Kru*@*SfWtG]׏T@Px㚭{l;Df%6|Lb+i;EaQVޚ%d^J%$nvNcLvOݔFH8HE!M`sҙ7/y?Pti*_ JE7쨖,`O#faC麩  ˋj,\1{ZJ{q哌SGjU;A{2IǞJكZ .zeV=xIR.a#0 vQv}A7>kQ(;@(`甚]_ފfb| ǨAvhnDpaZ^pm_@ԶoB|3ĖBPoIm q{&#Шz QlPy2b;&uԓujQ46:NTaEȇWoMS3]gL Ng:)ARTG3Jz.ARwrOuzX?U༓ ovd!Jv#ucʮi_Wl/6~LϾ|B}~F v802 tN<˜bq\' Ӄ.R?s˔ WDK;ȵI a6grMs\vȑlW %ٹk"ky'ZT-jdb0mDB\/UA(yZԻtK**rnƒdz r`<*l*j/3I`/Ug"`uo p](sE)V^a%M’iH1TPm1!?T~Kh v8tDJ'> S}K%QFtpY_)dAc) U>tDУi$DXSt ӷdW5پfVުm$6#^cvg;~[629D30N2݀2{a,ܜ5ͿgrZF<+@. fNyNcʘ$aӀW~xFW#JIcan([|_ O .~hrup "`/$-𫣂#- Ou Q5i>of}IX⡄+ı)n`Xo{*Q#sF{9X{2q֗ gqpxg%($NtPGG.ϭ1ĘQt"!V99!Ⱌb:Z5'頥=^!+Z 4+~+T0jѳ%jR8AÇ˪$}N6ͤ5RǞ39;xM7CF9"h|-mpgܡyA!v˫ %35KAIY9 K#X_pHEcMۧ ğ"ae VHL|u׮|RY&ᑊFG0{glAYX7B߇e탬x?KFZFn<ySeE,{I51LX|(etFk*;u.E/nQcL) ޑg@FOwG57;7(:9U),ut^Za.'f%E#MWQu PWӠM[bk'L(z N H5_ ^$7?2^l%l2 gfM؞o2|dq54dz\?b 7=yɷ 0@Վoa,"gbٿ'Ӹl8a$ Him]kX[R,B'_MoaPC,,IBn[8/Qǖj 'EXhӕ:'y== Uwɡeg ~Ə2,L_L\{&- ÜW@dJgĂ$c[L\ɥY#C0cP L*s+RY`|'zehxL-C L?\%Q (c.2,1p؝lZBJ뺣pܰ†v2A HApXV;UBZhz9\RJ1`vVk>à_AL7kCgol7ۯv:֬V&(Ky$XH,cA8BNe3^ ks@ٌ*p؄?{85moΙiQޛJ&;{F.kEPK>l| ]c/ wھr\l󷢽?3Ӯ۬ej2#cgt=FUp;sbՑ0%dmG BuӐWm0s[PQӇZ_ T}SCxz!{&1- %gQi*0ȃJsSvA96R_.IG&}+Q>^Juw;/\&>ٱ02B:y"'(Hx B0: /"*6| d+Bb.*26oFPK$'ŎgeXr W2SL[>R(/25jFSRx4xרgz.FiIzB؍uw{:{WAi$NXvK|{^FA8߱5iʁ !/~|7UK'gjԕRh ;0g(N*)w8JcLcSd%eBx6RiM& `؂m}!E&'MħsQ_ O /D/z0wL2.xuaIqsi~/0 3!_us]BI 'TMk/|tI"o믶?!&ec3NG'8GXzeyrArD")A)3 pړ,qNtiJtMۅCk3$QT{5F'aI\dNI"<pDX&#h;8Z Rl\rnKY1J8@$7ذ|SIzPh-I&59TX\ AWlrhKB*w=BrIRR?G%VAL}d𝃜 i3vAK^"l!<~`~dz8bNF/JV,3҉-Y­bbf:1X{F8cxҤFwrvR\6U6؍NLӝ|;$wܔAL|~ȃD-K30YH!OK䙶N&rb5t6;qP]zPyݐ@ˬ-غP\_H5VU;dyo5`b:4ފ1Iϲ% +.c*%ԓOtK)GKY . sŷSʄ9|[PCT2{M<qqݔ_4[_JecQH|@  l⤼&Eq52S}KFd9bXu(޸vVᠪ^ K4U=߶_JlcwV'E&2G1TFO?k})(J贒o"-{.D$0}GL`_9*~Wd;#s1Fb RpFIP`މ;9H%'4Qd,]wH^[ ^i0yVȤwԭ,=T>UY)_ #PO;VJa,f[k`!wᑏ`E&]%>t! ý/͛ޫ,&՟[ [;qnQAzX䛔\,#ml@l]7>:[UXe<+磆a,"`%c~Lة~zxxYJgP^CޢS%η!#Us~Xϐ߄PEgn #Iܔq?>)\Z(ضdioLWj 3,TsC0zq_ ^SèY#&oʉZc>~oS;ą5slluKN/ C*p054,[{ϡʁgI hYgolodvm3UI=`86^(6!.%܄v%-+ٴeoaXCVPT/#W|¥qgOfkYbϿ&Wk[ӦoԢD*)ANҳ)1A.g?;4!\>D^=,9Ug"H`4>f[&q^F_r k!Vr<靬>Y Ez]}Uk}^qѯf7#+ʭxrPNhGy]x"xf 8kޖr|2lҎ ۝#(KK >Лߏ2l?[~JLYn{tΐdwSA[ڿq6>r(ioCVR p_w}dE)q <bE牭ĒgJUM) Wjs`vSqֽk GqW3}:%MCX햗⵰zH4('׃ Χn P ҺO9Fﯥn՚K? rr<ĕ=6l9ю ~Xo@#p!0 o횥ҫ@GZ[鵕:4u;4#f#x/h"ThQ!S-IőM ]0DH7ye z:Z]S-,edmpp7Nh jN8WQM(=Ƣgq q/h߂ }1IE b]fO )OQks[t]rG / Vw[a*R[*(.և3ZF`6 HNQSH9I0x&Ѐqb5-y+ c;ѝ 0XӻaÒj[_4l3QgOkt'=) ƌ ;SJ8gB7qV/pRXWYu=Id yϠr'ETI $lF[^5d(لZzPW.R}j&?3ً p7}CnYJ2LFh l=f~QpxMgs"sB|>b4֞P^M!ֶE03sBh;$~G9`g7^1:vP#s W&zLg.j xjcSet ̮~Rpp8|`X$/5M`bB9ExiDrc5O#YbmEhh/ղ>u]wIk{F ;e wV ?fIYse+#[›AdeD pVv%8mòj `Cվ^X;w7?r{m|toX "$~)&.,a;Su9JnW.4xبkc{Db|TG_]Ipo-OrxkN;[EM`cT"_%Z[(Wv0 ~0|!tA%;Ѥ6KEr_{+*މo k)I)xfXeo8d3rIE⍝б%h Cq/J&b0[^Y`ݠ _VqkG,8l %gǼ^/6isۆiPFp)MP͝Z1Oqɛ`b6t3:t:ZO僋ftgX7u~꽝mGo\"Kaг~!-yJ| 4qA0uWuZ G^귩Tk`]M*ȝHW.A. i+Hs3J[9Zyr;͢8FԄվy{E˯AM"c*=|V@LrL[I4nuZQyR2`Qݐ8h$H % g*v%mpIs% \Wfc McGr2P]FS(l}z{K/;aAW2B6r=Lr>50=SEwM$)'?EYM[4$f&AB]qmc *!!M_˻K`fGyX3ht!T.-o} eiXZ|ZZXxnPŧwoFUSђ~(tRBL$mMH*;~٠o£\U_j<^Nҵw6Օ~wP ^(pD z+ƕuKb7 ,硠]'w;T`Ј~ [ю^ ~xuG^͡0]lĬ@8/-&$ b˻(1p2ah@@ v;88Q jC # NN]6N{8kmhtng%G@vV_sӤF9ch,G' ~$z;\ DJGaQg tT7F(KI{Vk߾xkf^x2=qNQŕ6R"}Yb!!Diy;!r`8x2% lt ~k@32%Aa YFO!eg .ka9\P3xO9k,mcR,)tq6 N,EB:cES^aOI30U߮m2rc߮|sNwU%2@_ؼQE;H3^,3H1kfNa޳=)=ԔZXJ<^)*wv +rՃP>~mLBse I%0BƵk5i ''l 'hQ6! Ԇ:v9ukŢ8ul9udja3bZR\IG pP 6WY 5@7, Vjpcr aH_QkB{Y X 6+xgfD'.Kv5(Κ![;Sw"¨(f{#|Mה{+nu-]];(3FKvkcՖ[NnO.}'D|zʾ]Ea[ ^P,@ ufxQKJً2(K,>5\!g. Yӄ龥.UM]PL[ B͌pM%DŽtY]yƕyz_Kwcf[c#ʿKM嘴Sd}d0Mvj,ћ9:.@Ks)Gb!h?tl 'WrNBxW@Y? \eQ 3Y8' qX/XI^&Ub]/hZOP " $Rlx'^?N̢7-x');X5D30RA* QDx5k[?aM/)6j6u6) H^'~$+p15XRT=O%Xh9ၟ#*9WjmmoRO*uS哕m`_P6ȕ75SnۭD):w%L"h=q240'Mo6-urjbcX~PXNh(+4ΏnM?SQl05ڪhp\'EF~tyKLw҃Õ m:7Q`W>@dm.=A[.iZ?T @8C-n˚4lI:p+H1v?Q2aaJ[q]rʙ;Lt-+e .Y%8!Jt\CJ聿W'!~uv7u tZi%]moqzȬCfrF[ҳ!0 X3md)1 QXSg`av,Pb:RhF%9XՅ\?j4hͽFIT֔MO  5C.A?3@ۑ\x4L#PGgρ jW!tmw=ۼTC@!(fܮw`(v <>~mIRY;vB@>3Ȭ u+\'L gGLݵ ;TU`#+岥Ė˻Aɕ]';zٓ8Rev[72g3rM* X iu CS3=DUs}lnmvN9+ZX^͘deu蛷&D LQzϪdk\i /9;ܪK!}{ogI@,$K=e;XPqw[})^zQIfaJ+xѻ2KuШp]N*PAPZ0$amY{"pF2D3H޲7Nҍr/=vgU_*2f2@cowkՉ-@A]p)}2ys`3pnxOlWq{HBK.g8}_Q&Qnx/j)yHgb˜Vo59|AG`A ˰+8Z O(#~,6=w$S춉:c=W-yZ_39ld~_õvYfaׅ7ςB؀YNRuy~X(AkZ zaȍd4ve]EfsMΐ'Vu#Y謎=!ڻol.FiUz7ङ QdQ?:)vQCqԑ "P؍e 5knƎ9?sqqپ5?4'd!͒)|f vڹc $s2v,%6emp Y}1oB:d~d3q<4wIZtw.ڔU! }@'c4/,RGV9*%NiG4n lXT$Zc~ GB6Bv|w-'R[F=x~E3YzPQ4x:xϻd.B!,`Nv7 ̡ l/ E3ZÝ{u֗cXB}#@cxc44e%Cm&k$4(T (ATҔ=yDN3۟xqJq=Xmѳz)` V]f-d9La#s6%{&Š.6?Xabi!3Hqr6iᢽrlώ'sp2?7si: cK C 6} iOeMd{))g{Tr{뜬 D3F+ /#(y{ uNيN6j:8w-kr~ܔ?rA{-f;Y6 +'E.D,׆* gh\\&rH^j%aԽvD7D;,c2`0SPFLvx9F~I 1RSo̱\QdSIӒ{XfdpQJ'^&8r-]9`03xڍ)#;"?WLz%/.fVpDYZLڰ T/)~AM$)"$&y Ía,qFu2КX֞~vw hO"@Q df+;}'L6e 3KC'&nR]H3n߽{bX772K2[Kڥ֜pn쉉[N .A{X,®uW]{pPOثʻ]'6Y'D=X:?ieA4\v˕5 /ךu4ҧ8mQ3|JD6H#MNO|2æ6hիTHDfc K YѮ6QmC'$@gFiOjݔ*_=Lϝ_Z]JsO ⫏-?a4{ZJv $u*Kل$la}Y@U^iKS܋=%/A)ux.$w++8c+~x6+^Ykd*l#O`Ylkj桅[Chjfx.Ic7k\sz|I cuʺ rD2a1ϗҁ^,|=Xb3Q:Le)D崯#Fɋ+#\#H i:b|Ԅ das4{f*ӋZ'1򁩡FtPzFu   lp@' u1M>hg~^ jDy罣("ߵӄ*b7y5]$/w**5as.@,9^vlc7w`%#+v.-=` c׮BF_xxu#+݊ *O3T98Lbز}zN_¥}w25*_v0Z=R܋cd*.;]R E6do', `B4Qč21Ur"bwfrkTS9-(`Pb% |D?/2š U{.seJP1 !Yk8Վ2O!RyYJA͎3oj+~AyyehkNIGKu䌭鷽x3UQDMݬPhyPk _S0fy=')֫ʵrI?O]/5>nM`X+v%A og_p>&@(lnk5t gԟlQESI06+6AJd7̧lsyerOcp5G=P`Y xT$Wʗ-wlcU1ߕT2.} qQ$~ZL(՝;G5:I85V/e]oOR^b玠4@EFh2)zKN7q~QWlX\/~6:,ѿ"n Ht 敆'n-_ǿH}@aU0,OjxZZTZ,eQ'78k󴿃^Y(("Oĕ0oyr{K\d ÿE}os$3vР.}Jz"M }_2{*uj4,/ i\XZhܽOgy CuE#y8Q <&a}#*\i|s(n Jq}m2俎 V)e6ДӁ@ 䩧O >SQDLH2 XA~8pu 4TOX1|\{n %,> vC ٻxMm#l n$ل/YnATv "< &~z1.pbfX 0QS_dm2Bo1bPnjY*Ŗ59 sϩs;Z_X) =k$| >NB<̕-7 'q_rL#%|)iZZt^FxWr*y_}sh0iAd95 (p]{ū 5{tm* Śi<&< FooŞz.!= o'bwa +V٭Y w-J:$@!`cd]3"rbPKyu>+mlfmZ:ffxu< UGh dˁ~腅'3{'PpkaޕRݙ@.qkZ4+wx%2"j_ e\喾F@ &`_M dUeSV]iFtN m|,Ϟvb6PRᮦmZxHIZ G`GwH`3'Xm w?I\U ^hzћvYҨ@ ̋XP!kQsqI8/r[q_kYiQ@?TPH40"DK'y.`]fF<2WȋAvhbQVΔk(}C 9Ο?!BMP4ZT AmxGzs N?wFE ;Ui.$ᐧ\xo i\ m8m9E6z)iRg-dTw/& C!m.gT۽ X#E׍{/[sE5ZYW-6P)kǭ_}v@2!kqVQoTxb_I d)L$:΃s36z%$#dmf`K2 %8:a)u7F(Sy$1ꘄO),T'"gO\-k=C,`1j6ka m7YZV]ON yЏ )p0mѪDg!i@`>kA=LZ]|#B?=,.g+< gX_Em8)>)L6NmjbYep"/TSdǿYk79 d@xOu0@ U Q$.$UVx`Tifm p :FD5<=a55tYY5*`ȼ&C^8=Ҍ@y0d)uwj"+3_EdI~]Q7AE|ZNǏ )X|%(}֐+E/E{$Zpp&u wt*xa܇䉛l~Е;>.˧Y 0d/ \3s?+kTIm6!$N`xlJ<$3`K\WIiNP",K4hcR(#m?D滋Mf=5r ,: ճǏ@xgH;$[D8ɻ>"W ğ>Vpтq(h<}V9]0<2fOu3 Fc ͩdD ?˳b nuLNC`7(Ed*C.2bݠ;㳐H#"aھ.OR p8?Di)e3sOnXԿ3Ǖ`?( QpK>:n|9MGY-j[-"iG4H ;0T֋/CǶ8yЌ8,^iE;L !E^V;0] 7,4} V0K^JkU(#b1oIJ5U ֝`Ѿ#o! _ Ih=@9|I*!!JhzbZgs(~A3469SXsԌۮkXS[^qHbL&N/_K͠4T. mBM'.ɥ<):!9zsہ5U@'_(WN"sN紧#0}y]&,#~ǀ;s4!efUltS}a[ v#p5nإk mn |hSմW .Ne95/ڠam*¢F'@)ȡ_5.tZDޝBԉsb摅PSԸPV0{WO֚s ohAMٴQj5Ƨ<#!hNJ$=^LFY|ًsD݇i?qIV*wW2o05=IxO6w`N=Xst{`MK.%Ж /hp.(™/kDjd$/QԷyS-[Ⱥ u˜z1>֟qnPH0F#);[ D-hGoҲy8I)~Xg3X?v9/ֺAc k)ۜYiQQaX5iYf  "_զjPU Sbڙsr(=9x񘽛wmU ,I}r?Mm "ljJx rw}@9OnŽ;a02 T}"8jjL;3&mX)JظTA Bl0SzSezkZ(F25 :F]d6Ɂ;7İCBC9k& Ɗ?^#(?'Dx9$zpsA $U{s(Ik(BFJwM0\f`.4n"jV,~ZAtvdz`4mCAV3SB"$ACi%l?qAq.bH#DEqNtO#*?%ےkʳԤ{Wx2<;/핋X5 WT2,jn,Xጫc?=kТJ+Ē[ou2[3p+B6}Q޳dzIP"eײK ( ୩N?lHֶXA8"fl}%8fereτl)0̸sXM7T-}֠e?B#-_v]3JO0{\,dS zLl*o=} VY,504EٝR*-Q8!_o ~¿FQl2Z0ei5T3*bFᣭ '1tM"v-¦9C) @rYE؜Uܖ˸+!/ ֨{"ѰT:TnEẄ́Nm~`ZpxGQ[5+.?rM';3JeΝJTc(Re8 k~Rߣi۫3\% s,Yl-k"4/3Aj"ɧPx\=KIAĺsf.-:6?-A=~S 2ƥN Kښ %_tԭ9q=U њ:t3]a1_ڍ.ޞDhæ \U:AV SB@LL< yoj&:; P%a!{ ?pv+{vt _X\:[Q;/v\X)|N"_<"WOyJ^ "h6]`H6Mzb ̌7ļ2܋R9d޽*!}%3Kt=N63+yeKCTJckgn8X0h+S Fpt4 +GpcC>M&H%p3:6*UX:!N<8lv#o:\ס~TFT >?DG8{,.33OMej WY ^ 5Z֦yl'|:lZ\G: J: :?Aϣ<Ԫ{  \uhe&+:@d .f CsX~iVW_OUwJe5"}Wbk*+jb룏ǴeJ[Dݚy jA f#:&uG &j(??b::x˃_41^A63nJm#wZčc*⋮ku&ژF棅!k!z#t8FEk+Sy$ȚBba薞Î2YsXZQFBR"x;o3#`0H$p)oLGX^^qZ i>3V^})ƟU|T6eDғR3/+ZG?3I3TQ1b_^N)객A'X8C,y8|N&Si%SAܰ٤Zyx2^6{O[:4#]K+vb6^`UrgbtSHk;>thPL#d ׃؉0e{ 1 .yK%d1VUѩ>Wxw 鋇bjʏґ%m%oP _ yWk؅bUqLl-!̋xOyF{*|$ԛ?͉4 =ƛ޼#˔CLP-U0Ɏu땩Ӕ`$}xO䅞u՟ f)m4DNsVHm!Դ*zaYa|`XYnX=VQtCR{FՄcɡUqOK` qܤN-Ի ^?# E{#c jXl/|ӱTjnYQd4)z!eF|Rx/{Q2!a>ϻz#v;(px¸u [+"bfLӗSdTЌ;(fd[iE]$Fjtznec%haZUEM9v*pR)g6ث~\Ds4i;iWAGC?V㭠EWsW\YCYJCO.R~6s"!gsv g-Sd0a'`/&P[ݒx (O[]^LyROߊ_W5oxf&V4ڤCY XV-^N֜"YaM%fa?B20X0H]Rr2@I%牄ƸY %26yP.bvf}Ľh]v0=WbNDcqA \3e4D@ KSH#ѵD)c$DƆ6SV_mk"8Pq4$2pu7 p Iyd}cԗcc;&,8Ћ 9xP2A|I3MhV+M1f.D5|+)elyq 6JX%ͺ-isώZTJuA3ǵlJ ?73B;HW}3 C6V=<;1|Zx>ճQ_}{s'c9%)~cH<$PyVw&fx)?gҎ"2I`iI>Vj5 AjHK{u1ojtf$:)*=&kCmUݛ~MtP܂ % X#X0ykYΓ%lN 8Yocɦ7fVSTm*-U:8 KsX@rH"V=!y~θ8.s80QbCbu @v?}jt-(qfZfӈst)# 'Po9%cpGs)rOC^Cd}=^3*2!FR0v$p1+f=gRYXKw :0ækYUbew*l9{Gz &G:<4«aQC/Ը(AЖap]^5Z=\/'W=HHt WbV 9dS.҉c+d]͉Bdj,|G|` H4 YNޗPαmAt*r6e8Dtk͞+YL'gg*leruOҴMKm ;v@6>ۯz$( wtM=XEYb&"b`;kH h i'.nWO;&м&-qrL1wL_`W_.E=@D_ecRC©+[wP +}&Lf$\)9TN:h`rH0g?FoXzVv%>acjjB?Í]HЕ<!Q\-F7z)k{YÖD,tC1xYw!i::׍˪"V>C̚F.vU;%Ύlk])W `Ȋ-iEpݶs.[400dz?j-6'WKJ zN&GI }}x3 B3eN$== +P^BTعHBJ.M#3dg??61⤛RO_2G֗4Fm\b q)~Lq>"+`.!ʱWE3}" {3V6jf[ġz ^ Q3|/mL ХVf!m*y: /HSTY@2؜Jo4kL yCyWJ̄Bo=NqVD+RVGMƨmV|F6GyA9stoQf=#MOKuP/($Mu;J{xMk;vr(rm>Z0 Za&zίo)*0qdSN & "/qE(37P\ř2y#؍G4|T ;LB[#iذa)݄mU$  1*}GGcHϧfЍd_m{DV4|G+R^:'[1<&7bןHEㆹ&OÒ|%8@YkEt)JZo$>1|e_;". !rMz*:Q^[@$4%9MAGE*<@$ϐxw'{Ĩim[5fiiO1-|+5#Ñdv2e/% a<ĠX}ftl1+}4,ǔ;mJQA >rxжRԵ|,tts@"xC-%L͓ ^UZ5kD=K}f/"_&/-Ta_*__CU1["遼wں^'46RiCg6#ŹŸYB!>mz90E vei}erLRsk-R~Kaw͋ci n> `~<5\L:P)" M+zHpG=o`pX ;E^][M aFi1|^H RPq ^S~T7Z~͵ŰS-U]ǟsE(`/@{s )"J|-Y!^.R֧nsKO$nSJ";=a|[eڪM̚ i D,cqd 3o2`'".dQRױVX;lCoaȖEdK}a& #_s8:b+Albz|@DUja4Fnr"qd'E46d%qkw zlLC VFe#WYg07paEr-_'3v:0G#Ξj{K%mSKqf$M52B5A9ml2p@N|jeԅUǛ,ozvU̇F8qٜ 9]VHTOH7z.;R 1i/:`?xf;W>rTGFĦOq&iixV騚), T3v=LJ!K/g=O3+fŌ+?PV83a SBE`;qM{Ûu6ԇĖp!ȘA0fSӱ[Ny' f2ġKuӐԸl?H3".+f:#$9/U%쥜2D$\h"MtHg /LE-bYp:P2Y+9FSWulsQ^bO6o 7ηl *ő+Hۑ#6j A$կ6z tH39Ye]=?c !5!SR_eCY(l$fyuoա6 Ep oZےG|Yp~DjQoE:|-WWNL_:UŪwAQcOJuNJn9T6{ +fˍ䘲uvƈ_p5{ bC9=Q[[;^.LC7R|a4yҦ%Dw2T'h"ĈC ZRg4.EY c.% uo;5Le|Fc܂dEh{`rU$9ү8#L $}=ԝ{A-z=Y xG Gi7 ld\I}](xh?O閲X-"?z o끅朌v!С Yۛ ψ~0 0Jxnv`)qoRֻX%@hd%mW=a@Gl-D+v4`}od.i Z6zegRޙs= F+#zYGTU칕׷T<ݱ`)mrN؎P3Xr ~, *)YUhp` k T{cú=&xU]"C>N\x|pv [mw[6&ACSӱʏaDҋ6>οRս_bϼq3,ĞMwz!;SɋוaS4!z*-7=UeXs tZ%J>չrmD>V߉,̒eyֲ=]vהE ݯ&tx>P^cm6ۡ,)~UT3n!hְfdS 3kpÓb $.Nfy>K)  D@*QYQ!?jcEoF$J`U[- =4i/hD&CBPn?i?LMyoljL"nvYHơxjzʩ Q z !zB!&Ը/LQHˋk$ { ^TODkFna0T8ָ_ 0qjr[miqe\>3`HZ 4-T ZbBR>SFT^EN1RDMp C}\=ĹxO]CHtgkm8.f[,B{Ey]]QCظVCcE#ؤ[,w%e7EyBsrj ضhR͏sSo1p1+"aѠn{#i 4:Ԏ!- #eCnMؐ9ɝ:QGyanS#뵣_ j3U-h_QJ=ۘ0jz^1QW'pҬeMo}^ck(ZJ85P;֪i*C̏QX/>J 2i,i0FnffJZ!$ ݊ʾ?KG#Yo|\&n] dNUj/+]%7^3!ŏ6pj6 L&%$Kkl&IUA*@[s.1RDQɥn,dj 4Bb!_I t &\ؙ&b@{n*)IKHb<_vUO_!ޯdܚ_:B 4U/:gd%Y^/dTɲFg L{/&T WFuut\-T)n)cX& 羐q{2W'sIր"+aH텎?ϊ˃f qi4};vVy̆gkZ:ya-Ճg Yֳ9(> xWW 'K x @;tII`#|ƻHM5'x|_{s2 7gjV>OpUR G;d"skےe&f]ba,R1]15 AB/ט٢+Wo0k&կ>*27 c 6:sUQ!gf!S4a,,3;Guq`fuB9Oֆ7 pRv"%nAbbOTۖf<@4H7q;+Nbl<ȇwiUGl̔f36쎼gW8ÕP PYBVg3 S- X7). HG{TeQ-M\MyF.! ~+g♂Մ[&kY3gX4+ދYd{Q3fE ¿4'4cy ٜX=$;\Mk!6VX= !̻RK~v(鹜e:e*IK`Zfw:W>#.L3PK?,jydW,Y;ICbρHfAz/b/85j" YP+bW8wsJ]iti_Nϒ3S8} v잊Aac܊b|op~Tv+7QБa&ߦ nqP. ΰl|ԝGIq }ٰ2;KڻczB|pKg*}[O:8։:- F*{EצSЊ{0Od< U ?݊hVlx6^,Ϊ׈/Q,G:(/<&~Qa޻cz9Oj.ext.B_|5T x8׸@UTR`ʜVfg c>`2[UhB7NZk#l ՔcRpy8O?8ͻxdS]=WcgjD,y{dMϓV ʒtXHjSDOLFO6](Ps(ڍѕDXYscù NOVaJJl0ZjrFZQC;?'"TQs!NȮˇ 1 AGJ66~U(9 ^@.6JT DQ]GM+<9dhvY /l#bVbmm:DzS^T?ҘTJEH Z42P0v9(9W)Kanrjk1yP"??MkU>?hvIa<π,j>B-=Kggp dS0%-¬?3w<+#k6a"t|}htB|`p4>\+F')f-1Y1J0dh:w"q8&I9oddܓ7&&7zC(N ^U['—TY`3zh0?=䫬c(f@ -@[ųپv?AR[KF;z\_Q=T~?3U1FbtP9k`NJ-U@>Ej$|s;й~x3sYPi٥ml}d7eyZY-Q<͖md;~dʔkF? .3PdlYo[Y"L5JVBX!I $ʏ'5}2`s1>t13M"p0*J^UBٿ 9bej[Y9|@y ɏݣ `b8}˶q9UɤK$RVio0ZQ'cg: ԠPЈՌ oUìːt &ZIyѾy/qmOkS7;d&T篳PW0Vu -b!bqeCԞ56zp묦^9e);i*Lش+ź&U] -%>$,VM2ӨҸxF3qdK: ˺dE•Ȁ$ &__=W`ӑXTڢVw1~Ϋ>IA/^[vǁgd;'tG9bi:H^oxׂ$<%8S ='M<#Mox?4M'I$ʐūɔKs1g?暃ۀOzfc3Ru lIufKŭ^4]M4uA_lăyȜJQBs}}%*?{,jFp-)ۅ0ao9/ pIб^`J02b#.L";;HhNŢڳ0ߕ{]->  ~T(pRJf]~k]mbKj*bt*2F/9s֤lyu~,:qƆH{g@sPx_ј$+ZاVCH*e Q5?IJ~Ju}s&$hck'qet-"__^oA+,ZE씆^yՔ`ste3rt|O!`\nߕ3cǿLìW IYR5ȓx>"CEyM->ySʇ#;R'W *d0G9%k+ d  TՅ ,^pm0i̓]^ŒYy}0e΀[PJڏ k.B~Z{W.WߚvV|t(17b_q^]o=7ZŗCGρ4/N{9bԌIL (g6[9ҭ_]d][H|"o'K ш5m}#xj| (V3/1-~{6p~qNh#OzSBVf~<:Ӛ*Xl+t;J3L2>pE!څzLH%j$`_7PsԶѿ19 2Ub<-;-ŗK!Mc>INoCP -~o3WoI4!MCc_ǥTz5Lc +I] :sj0˳¸Ő7uI{(\sZoH(őްMťK"-0 ?)-36c#U͎awm'L*oRGQ7]o& -!`T e3 hΪQf?8GYeF,"=G#m0mpv>ɡ/@6sHϸe\G\JٟM2#60+-Wط>:xY|jT=O*a <?o\1}2sY{JyLfavAv Y 5&\õ-Anrjl\l^v~^RAuQ>Hy _vF0y5N{أN,;<jTcį܈vE&,ƙ9]3TF Yj? VCxc>[#"Cv@c08~'&s>eFQe9σ!K"U2uەexB i1 cCF9K|DZ!CO:-!(Gi~{hpT;~%<_5Gp'F"Ej,.>8'Idʮ(qr-\'̈́j#G , r]&G>wȐKtY0}]l u繫mrPEj liKWNk~;kmC8{1w${ 28t^m" QO~:#oϋ_cEoǐ?b0+\v@P/4 QǶ冘]45^/hXW^T-9D{I;.YKnQ?pmLסnڌ]9N8JyxM眄e;wUJ;Pi0e!QSГëPDnM2]Qm 3PoMx;S!pdP2 m|t_5eBed)! '}:Xҽx < B3']Pĕb# 60c4Zﴝy+M x{xH?F 5dsm*m |ohB<)۾*Q}$/;Q!ɣžC[>ik Um"7"[r' 9aiߗhI\29ܾBM=LZL(9VrR+E>5; v|{k\֭bd)+S5ȷUυt9ϾyO\LpTkǐkJ~^vȿUAjب.6H &m,$y/h ;( s4(>V8]9f-e%fvN6=шnÅ񳚃{وffL<.\Nr U*:ޙjLW=KCQ8=),t_-MC ![_h@aڹ.m>eTM hO &fvdy1RmC$nG -9SH5zj4oZ's|@lD%7!5S7Bd`Ej]rme[B $*z;[RܸC"Ukũx='l4p >@}h0lCmq0̘ ?3ר+STb,fe'@6GdJDKN4nyCh\Do=T |sH 2ԳYw"87AA \PGFkTB~;J󔳣̹)OMހ/OqD(b-kL``a<#wlLtaJ A!5ȷkZ^b(Zgl46];Ҽ N!F#rm|ǁ,Y2$VԽϫ`퟈&VAR92:l(/gdl4aIp&d wjU7\ilB*/澂$hW=lT7mt JgO6o!BZJQ6|A 4X+ɾakMng3Y7/ cp8{R빠 xR3D?AR>)CҰE`<]N6V< @nvL=0i쀘P9MሻMA!f>~7L4{dxhjÍ2rdLbft)%D 蔞Qa} Ɨ uTZ 0H4]KFCrW6:I)_&y"~|71Z*25 pw{DhQ+59ZLl^|;Ph6肁Nٶ듸mX: ^֬+ؼKSφqs:ԣHs?xeH/b=8P;RMϢv+.' ℍxA""X|7̡r/FLߐP:"Xc!J3: CΥw>4+DʟxrgV zƄ;ޞH){*q%tD/H ފh?x(kj>Gn+vĬWU꘾L:o6 IM^:%ʹ%D= kpY4hFr~D'hKcK['\=[{sv"% L CX3@ټ/>wliܦ=Jn#id;3VT m@@ö@X߳K?\=$1T̲ f.T;ٞ~ k\׸o{@S32Pa'&Y&{ Oi!D'r1_FENº[5+pćB$g{5J^qn ѡ/tE$yQlS!/q'*z)lv\25ݷAn6`$E3(;|d*5Kq4~o򖈃Fil_\{$q\8EhB|c1p=cpe9a ƺQRq9q6@d)I2`W7ySވ{C+c6pX4֟YjΞq1y5Q 8Pر$|=Pː*`#)[K7f}NxLAIժf~2dFEfP9Zٰͧm?ۑ*Ԕa9.jsL;TvH>)ߩJtVRWi /be!ze?"H32HՕ0}TTvYT)dtȒ kg+ 0H&hAӌδoZ.fGf~{VݿqA2.|7`]6_bج;mqFQeVַҩ^P0sJy+&~oK;9Y+9N>̣}5 DJJ9oФQ}0̀@:rEVQ6 !\p~O.iqv7DTS]{1_o|C!BH )z4Mطt^'(}QV2q=$^u#|Y.[z[e!=G| R5RX:ssK9dJŘASq/\qprAo1ܠ|+_ORb vwӨ.ts sg$y+^ȁsI,bh0l$͎AA oNy}~NH?($'{YV+Qٺ7ȮBl.- (CAUvHۉB7kAw5FR#ͭ4@mEcVVpfc?* 4Rr#vWvz5.)d=D[(cy|Oc\xs6Av2ra673*{|%dg"R٠dE>|D+au>E=gJc J.5 {K[أ]Īȍ5&Dz){xƭ& rKż/B@BY,Fv9(@U ,n[ *|?xaųX\fѥS~eXoo2K@MNv aHjFLY з8)uJ;D 2Ԯ.)L;)tGrq@i ڍI~Ft$Zvx`lhlLI`spl\LnLS)VlFI8| *2ez0kҼs`ڝ10v_ԍҌtb̬< kvŚΗu&u"pWYhɤR_,P)Mn1Tk XB<~'ϙEC8 GOVa9BGWmU>{QC GsDWW߸ja]]SE"f?WY[rS)h9a>ܟ evdwIzC$(We=s'#[-D/x ?eAF|k5bWS a+w2(SfT'`ݡ%q-c,:A"+lvu툿RW{(e8JܴtѯEy*k@8ej#Ly` OB""įypq4sw~DDq¦/q& O̼wPJˋ% _# UhF\UlA=Ǘ2pS 9RX>8T"L}as] kAbR:@@M~sALϑ%4O"=}osqRX cݻ2{y%#N0Zg,?cʦewpXl`@ }n:Y@~ 5iAD-~WGjtx~O՘-Ÿ͆tɎ#r'LGkΠ[ֲAt\ ]lorm\fӅUOېl˹-oNOQreA(SblMʸw 9nr\ ,T&qJΠ͏ q/$4W)V~0- ˠMOi ~e)w-} JcPzu >` <޵ѭ oբ,Eui7^Ex&HcYi^y5wzghW:,7wNE=m"7QM"֕Nt$>۴KLn賐#,(,/LC\P=ES3BX2r!2<7Ve&+oK ״"@GMiMip A&7--xV1!хa`1.lrWL{(t+T#aBb JNOա6Q<)7בtf&yŠi{0/ЭLG?`?\L_1Zr '7HBP; }TK^D7Ōv̟͠[b:(Ahl%b DϢ\GV"߷:Ew-%1fWk§"";Ի sގք&E˯{(T 2| ƗBǺ2WY¿{@޺ 94@c_r|>}yu^E79 >zQ nq"FҢLF%Ǔlӌ6X`)יiXԝ"#&`dw\an跈G2]/ȤI|F`$q9F;u}9"mx̍@w^^t}־Xy~Rl,[ROjqgPL3։]v& ی/Vcg: N+U,mFΖW[GWO'@wlH=]=j⒖HOWq `svY⩧Kٳ۴JMb^Cu@'4j@~hX ;Lcvs-gi9I6(ζ hY1%Oڍq%1lb#"n)oCY|/ǒ&A$ AdgSUJ"8`}!ѿ*|_xKf 2%T>7Ƨn`7噢y>yN&|u,/Цk̞j24龝~nQ gCVnziO'kRb k,?c L;Xݓ9j#'e26FoUGjץ>SlBCsxqk}d3 1_k4ѩ&&[A<wTd{[^dZ|}$;E+Ɉ;8EyI{-~ Ѳ'QGC0;P`h>5q\?0Fӌ+ ɖTç7x/(ZְbӸ(jU{u!>:пjvZS8"j73NA(pj]OC^x sψb}r \hכ3?7h{^ϗD6@EK{Ô*%H俟5#/ݿ UbTpkre -RE73$͡گ^]"kHgFЙּ}pJP:_'i'aɓLʟ_~9S(?>^nd2X|n_]Xp-!ꢴo.A Z`>\WRȳF_?~?01fBAr.e>B|lEOԖ{y-Cra)n-g\qÎMUy za\5ODapՑ/}B5O$i[J3CCbT#`xfG 3X Anebc 屽4PvYRIsy#gO))6v{:%i`v؋L$J2LZVM!q/640sF׷Oe1#+oRmҕ8Siu*h!R7E~!|5^cP-sZ=3r # T ER(+ yύsigtF5&sf/c71-8)CTȥoDe$;-Ojc&O#`*w_:VGB#BTux5_jx푪\Io1rK{ÜwIV?*#xbldA?aMu Dɹ۳"A) KTn]`wЧ(9^IjQR( QT<}Ȫ Y3qPj ,:bJ4w..)dM"N Xkvg]o~>K몦]Fu''X3T°'h%"*chmFu#4ch_|."k#! 51ߚU=z"E2Q agfe}H(qe|ͺncewlZ\h.uDV X`A-gYe`:CWjU4gvo_j1>N5Vt'LjWpY“9ߢ6݊uOdE?0=Gt!üe5Sʃfi}T/fg9MIO:2(" ] '@;#w5RufW[O ~a+nbv`y`H`x?;=T#cd\|/xS8v_kj7H"{n5MsO0P1oz?ƐkFi6 !8qΰ-k;?9W!vk^A[DrM?V'#kw,Oc "'{$kw8F@ZfsW n}IUI&fTĴK.`hW+4$w?lE+Հtx6eYEP?.ZtJ|JK3/~ 1aUWp؎Gʮ|"_QFD Uc&)eqyo }ԕ {U5oqupz{HuN4di Fxz~5T1/3bWl!*QKX=!˦h6kѮjbR 6c]c5a bS!vA7bu9޺}>o};4i~EzA)WQ_Q4/^A*mSKɌȮ\!o\f)Q1[M Ocɲ*!o9hodPxBﻱnʳ5A-?b;I@pL{/n8A R-+%Y!imtq u8?xjJ/fCta!* 5AG1zI©10pM^8ˎF& d>c;8)itH+w0$/uq yUnD*Eo #o QC|j G"e U3*Yj <}B)k'{55P>2CSY@&5TWoZ͓4yt '7 &ǖ1ԚZ89g<1ceu|nθB6Sr(t4T T};n[nSE6%7+Xs/:E&c4U\(r/8,iLR$|GB犚@8Oiٴ-*x/ܝ6X!LE؊ Q4*'U jd/!e"-EsKC أ)ؽU[16Ü'[WWص\nW 1(/FE҇&)׍Qoy܎RisRl%=k|ww6d86,hqJ1X'O\v6b76ﴴ9@5(0mfJT s(b,428Z&_O & >~ T!b},|94:L Y| ;"ͺZfI;PFI-?fM}1$tD{K kןaUVǥK<|)0J,-S&@)a~ 5ق&}5Ş(*FRtVuj7#;V v{o8u.$yls E!k.< 1-ۮS FS Uk9'<+w Vb2b)@ _g$М?ptG_*s"'CoG&$ʏ塙 I 7ZΐX܋͍EI":;<7sKC/i}T pX$ߢ@|8 \u]i} AهJX3jWX:/YG/7_DKΐNč!v|6 V 1Ɣ*V$ޛ{ uąKEP*o_GݟeU0fX R3@DfN,c9:ٰcU`Q B8V/=der".U2(QjBPH?-۔sFR}i.#B4©c?X$}jnP;+[Y:IjRLۿWp3:n54Y]QUX=$8ϧʴJv!1SDİTim-'_ls !`dJf]lKCOeGo Zβxل'GOeH߇oW+-MfXfhJ 9]5XWpYd >1p8QwC}RҠ,ZWH|V^qLQ=U2oA`8QqhxI"4 ,ڏEDt0:MIgtAkH/q7a7\شFqU B&㢴23Tᄮ/aw;yxKYПLB!rv@N-E=-HR*7vmjY,ê`+oCMh |3̇E<M1B5]U`yPFʐ'vSvJ'c@E5' 1/`l3{*m> ,Z:ݺ[ 0^`3NR-  E„Ѕ2!Ilz[DMaO'%նsd7 1agWTRJܹE^zM꒱4 2fHqy+x8H=!4~AXa׾ʯ?=_GJ8úƹ11I?2H[(s}qmf(X=r"`F{øR;~R䍒~T'-Ôh8(~Z>^|('kxk:Yᨲg^-޵DZ90=Rez)vrVc٬ 5򖔣ovhQ7#R?y5hj@m>{\0'c"bWv̑'x8<Lоfq*IC2fuaf+U]:IyI3%?@swǏ}tūTo7qmoR3gp멉BԌ p֡1 )6^ϗ RQa(ʀkHH!^^ZA9! ΞNpgVҝ:K lYMEh0bm+)䝯~mfk>߯ nMlZO*,W0!5zX(Ty2"3v Uhh@aQf1ya{īh+&5f/3u.bv)LW+ه"?:~I M7 d!vn~#kRvUU׋-`ނ\.7 Wdi&1} |+T*m'~Jn}Ι⯊Fhe)K}y'w"Mu8! }zUtOQj}zEUrVvʎVѣ5oKX#LLvru" Dˮ=`6Ykh0sDw%O%RA葞هRyL8Fcka;#ϥ6bA*OU`6`PJV!ܸë32͒|'ԪgRl1yKGpc0'M58(E%-WDQS`xi;чڱsq8d䪀+a=yd+gd"m (||@6Bz#QSR7Mbrfg-3 [B]P3gqzOuZ L`-wӃػLaj̸Cu 7:*h, "R9pFZp9r tÜ6[.-a-11'AzIpTvF+s֩w0ïsرoT73^ .Hs) ܧLϤ9%usXGañE5 -D"A6nwuU#IH >ZlTS IO,ŵ2|"fB#ۀٶ~jp.C0:5gX v3+1K jbVyQ[ǭ;1Lߪhc[R? pF86E\Hǎx)N '{eC:`C'FW25B8-$l͉iFti "nݝa\%+t3O`Z_4^984XD6/TZjʪgϝEit@Xz4m]=4/<9g8T贽 _lj+7 Հo׃ˢ2{1+58Kbi@YeJ/Z.i%fctEl.mZzDed\ICty-h=@X #H{aQqiLjk7V'v0Vmݏ3\6To٘ /:<$JŠex)uEqȲKzw \^jB/¥@:D _?[L˞yP Tl9N?۞Lt6BUW a8En8>lYCWuo`9̥rIߍ4&( ySuilCLsʍuO검k ҭtLVoS*Xۯjj>Sw[XC8)Uc(|6tVO6}X|BwY_2@ :Ȼg &b!KTgKh^dB ??xkD9>6A&:\m!yPؾZ{s^^*Ǟ )67:[1|fSN'EZ>3ǬTc!+[߇mmO?nzeD@I-|Y1q+F5<|8EK$+)Hס.$ihqv'Vawvcm) |bw?rJ;[֗KAG1yzݣ7wNꇛoLtl;t`D uJHUu|Vk~*N@a1WuQL-L=U|PT~ɊG&#k#EW;gh|gr.@sP2"d@;i5՜)v@Tqd:SO/eUY*b=uΎkgco*\t-Z܎5n1-+9KKo7L-[t<"2f1#!G& c}!VvtI &Yڱpe]$Opd _W H[@qn?>\5@CzOe;΀P)I)]mV Wɹkx8$ԯʞq'Yގ[y"l*L߫1 e\'O4!ގc7dհQ Yb7c* Zw ʔ{: `8| 韗AYHeb _i jv Ǟ?yύcoV%ƚ"ocg{a+iğ $| U-iL;orKװ2X~58aHHs uQ:v Czo#0IxCKe7[ ^,U#ۀe\O֝sK!re&~͗OD$YT=2eh* w46#[N]LnckCU Tndx/hJZSK,Ҧ "Ho4ވ۟/Ol5|n: Cp쮋慓53Tx!!)y83ЅyCM_!{'Ր^D8s/Ɇ )Zp]ns$aǛ[9e3 n9%fl7prA5&\mBxq+Dl+`TpPYlML3S>mIZJ_rj/wgUH8) >C^:O~\,+">Rxr)z g?ԙ^( q,x@DsSu]|f,w(j3dhs"wɁ}젱5}&1a%(eIЦ@|BB mp٩'\U]eKr5g^iv|N)Ub=/6_2bax@ Q7!C2ׇ?C ?DIc0GC$uWډۏ-֝eҰj)H 2X _Jy,7aH Rѳfq#PHe2TY(x, ?wQ.YqrpaN72,S yۏ,D\e  (SvFطNS.˨O8y8XG̃~(IOoH7&?) ^'1\k@u/cڣš'ʉl$)Н\ۥ7(aX8̈RqOtFv'`UfdOFI ֞@{ }53(!#b>u F)`Y$a6RgSri:MXRewټ]{g:(1BƓ'/fC?X, | \O ;\+_d@CNa1K3qq5<n8l '>ޞ!sO:y1LҨNc2V >&2sZޏ*BOX{*$to1@l`|-,TY Fe5NeDPկU%ѽ̖ohaܥ6XjBpYv-%5(^1pmR "Snj4vmF{w8Xؽx:fbS*K±h[H-M *Y4qFMO~-0sܟ H!aJ;9ەZ HDa둱gK;v\yd|\9A͵>t8MquGe6HѴ {S9慠#n,s|1!5\ AEd¨i/JLhfD'%>t$VnI^@݀}ұ*&?SZGt$aA~Ѓ5-:zA.]R\"­ kKnc#w-H&Z`ZO#q%Lf^nB>I/[׽Hi_ ٕ;bQIA @0y6TЄK= (v^84mӍRL3=:i%ObbgrJsd4ՙ&y6 xʵꟈ|Z+^S;@OÌ'Y=s>f#IY6'R]Iv k" ֶw-ӗ['n]'7҄-7٬M֙9 Sɖm5Dc{[>[1?vB@S§﮿S?F{.%lʟ]֞ʾn%?*MHј}8ҖrkM>'i}W>Ͼѥm1h4 sL'HN鎔8 0ø$8SUIkX IWŨsy"(>8Dž8} GJj tpdT+!e"-[cDzOԮ0sdw~OTD` pLgq#>R:F [@58T^խ8;Ýɞ% PGcOi^dP UsUЙiuYU{^Wݼ O*J~2prIN_/KI kmܿ%C"$sg]  @MU9Nى/CWxc@&Xf@Kg.Դ{Z$=9Ooյʓpޓ!: w'Οco,!uWĈؗ&7?& =+Fa ҜԞ)VMmvMݤBSJX]|c8F~ײ\B6* f(6Mu|m}6F{ ]aśblzN4~Op킣%7Scx5PKh;74&f:`a׺`|~5WԍI݌Ý#a.c*XNJYteW &"\N8ZJ\1PHHV:£x\jKdZ0xeY:gޱzU'+3dB\oxxCdqJ: Ԋܽ!"r6ߪI ㇘J` -U\E=WT6YG?;^xV?Վ=~uֵ5`Vy#d1ШDH"">TCi~yN=g e?6Z{>w/0%I.d`eٞCjTڲCcpa8fٯvG<[(jnx 'nlE>v,kZM9-Z5~Βו;dRLXz<%ش6A˃Sdy %QjrLOÝv_ Ƶ&S^yIu9);bOȤ:¤G3|3K-D_P,|guҰN_ c|ka!ꖰC`Y6(Ak5 YL<ܳ? i 4s7[WNχ1yK@o%(If$vsR:P_Nh.ge513j ְJ >XsBorۋ;x&"YZY'{`ʕBi uFղs?B6a)\5N2K ~ 'e5kZcEU-{ 2Н=wwV *;WF/.R>gԴ|#/9*S%b}av:⎯E8!#Y_Y] }G3`Ĕ/9Òz^~3z$L-Yi9$ bh2Vc.t8,AT"AOoMz dO!Q~gEj}Wk5QxCt"v/V0S0$z xC/' ڒHVAsrF7~5^YL͇^C5>BAZ_ p꣮4_Iv{mdRcll`JwΘ4aA_|HxZYWf P.\z]D9o8|)QpM(5zw!7b cE#|0'a gN(XLPc&S .q9nn߅N g2er'&]c.Mj'9iWƷԌi/qjB7cƅ֋! 4*v?C,#O08JČ@Yh=2lv[o`PW3ڎ69!h܋+ӂBLXNrf1jҹ++ `G: b'P6z[f#Νk ǻ+˶ Q) jhԃo֦4WV0, !D%p#Y( ua`)]tV!GȆB_E"C-`fGA ~1ϝ22AĊ Ń ¼?% \,Q.>zd@eVۻp8X+ss@GS7H a{TL,V.ZiqqjEl6 ȱ4ñ5]-;oB㫕7ٽ aR L"7XyH,W. ,ʵh^ Vܵd{0vG*/&U&A^1>yXJ)Tq4_*R6kO9g70[mxobPZw0z]j1Wæ6^,yF$6Ƒ 7#73\sLiKNWIV0d 1˲k!|T2ƐhXDAƒ׾V"5:# "k0>LV=z_e#6b8)isq=Z'aڏLً}t4qT01V;Yԑ3#}*">;\)P#Wnu67T^ĚZ-f \[z HXaLf7p#g:,/*paŚ.:$6E5GM#̏P7C%1J'uˇ.?\Q>/3"3V[)ٮsr!4#z?TEzڲ ΣU#J HQp04nxmmʂQ[5(10l,:Qث2?*z;["ퟬ"R:S&Yӯg O8 78*\Տ͝=JUqyu_̋C7Z4 }$J0JbRdQecWBG!j DRLV$>tJx)6j)moDo9suSI׽8%Zޫe"1K{na"Wsr`9];HFfeM3GnUE8](5i;9eMđ{Mz-lBk!6IE'1Z:R[wdt r bIEϮ7w^TyG 6TE{iMjA~\{ҮTQ8Ş)GoR B׊}S%m|9V C$^BVQGwn-")Uyxe  t_ /XM2A5V+5.Ji}sv-T!†}쫱3E o_c/W'O> U;|}x2ܟ#L{(׻BP.m4ȴA9.{$l*{^;vAǁDH7f$x1} ucޓT&f$0qfE]l9Rnksb}sMknu](IH ?_nkR=Fkݪ: L|={k( )V>9vXf1STfݖ:Da,}otzB:q؟&/!5brKVpa~RȦ;=0>xcw+\ ۴};CXb|I)pj!GiP -ui#|$O?+Z5(-bv_q=˛yÛ"Y/#sMInJ67|I+o]-S9HɐX͹ܷJ$94Q0]{E[ZNzd e:"pۇu5oУzE ֵ Gj-VA hzaTK}.%0J-HbEóM~)޾i #jnpW ǬԕɇMZs2ٻrb~gf#)䲛0" S B75:&ˏG9F'I {ք'tw)\2"SD܅x+FO Bθ*{5Q"1EͫgG=@1rtH¬jak:`V~7羅l|-6Nu(9騐l~0lޖ|bє6[G8"lD*a#/8'(%S9B&p¥}y}ȁͥD b GI ]LohEϮMՒ "Ɲ݄ͩ* 1Z[?ѳPWsceSjR;Cd>Gto/aX],1DKˌ%.5Z{߄,d(ZHQc?t!-j*;kFPC%␕ -AU+4AijXKǦGH #x45yH||A %+Z'҉3e~vg!)28ۮ$D@fE^s~%uw܏uj~ө=,t 3KAK>oϥYš)zXMΊo AoY/G'EsKHsY܃GzBLdzQ—u+̮xuͪŒ>W'jZ- zբ4Cl0n'ZgHZ `7#ـl^#mbX&ZM>#|mF^N{  v%Z D uYꊶ^VA)ҕţ׭}]Rs5v(DJ{/ =Y'!U_>Ʊ -N; TRsfo?dU;"lNЏ KYm>bySQ];4$TfO[DNtO`JSQ mZU7~֜gJOpzQrZ%6Гv=ڢSZ0>+ [6`-DnX~ow!@e!Ȧ7PsJLD0,o@D\ =η^Kt]53)X˴YRzIYk*@ ġ(wKDƂ?Ne\5]Ҙ9VP1ke +Us#H"גxN/zv:hj+u_+_7+=ϩ`PFnAN(e >*v8)F#Ä(8%|pvּ9#rJX^9П^)> qAf.X ن>*5`MpΩP5lӌHJi%Ntil-LkKb$$v{*w ,sN AaJC6gvLt FVʞX@FiqOkh7tDzUU wyN}׌hY=VOO N2 P^D-,"`fU kcMh6+F IY>v^LS/;TtA0 Y/%]®#G 7'id{!]UZXq 4!hg4q5v|j1[76{I6a&ӹ3aNE0~I^#xzi}|F\M)`S8ڻ9SG_0 #r6dl%ƒ6yFl< }G}i๚h\F!,Њ0`̜.|„FJѼm 4C_jC=lP* )~PNvek 5)/TigfTք 7u6v1P0cr-YD~ pʧ}i9..cؠyb QҎfBx'm.oYqb>cH*ÜcAFkѣfb)zNy*=+D0P֊8qo!?[MWZHO6(o,7H i'?_-kXstD;Idq R{S>,/(z_]$ ) !Eh:/NPS ç *O<,tq{Æl]v49'H?O`҂.7eG>LrrW`:ȭN5rv {X&^[ȷLCL~S+dkpɔnjxP|cUσvr<2HR. p@?ɓne=?ˆIn Ҿ3 yx7aΣ\;wH0|K>TsbWW랥RG ZL(['٨m9w>H5lC&p四B2|^\ /6ҒRiv}p[`ʟc8 ; +] =X2|T yRwh=#[SK50״?VO7Fo05 +a 9%ǡJnhQоoE2]h>&7뗦HY҉H1/o6xW)xT9<[)J)3. qvs UvQԬ `4?\ZrɭhHg|6)&ࡕK$0{ǽxWG檍gV(fwI99* i=m݈k&qD|4Etv?JMٞ%Y+~-N%J靝=KrJI5j&ۆb/q[ts 83ďGCEۡw~MSߚ P-D(U B{PShqHM3_wEv{A\h[JC@^X.8Q6 x qRYRs~j7DQ:U=myi0*fr鋵H^M 6zjM.cwĚsAH*?~KIXK^; su,N meZDGVBQB$u@uŋQa-ݹ`vW1Y(+=kN4Oi/?&'m?g{ tcCZnMoRH:ǞTer%WoU|Z33MF%t@}_|=圫&vc?R \2q:s~ yqV,D^h}z载|N7A @3{ȪPeEIC! p 0<~|]3;+rz%ben Qyb`XEGFM=dU߆w'>K˛& f *АF (l:I;| ,%/>Ly"ZðBMЮ/&IL±*/Egb^e(:\(ii%Ht0&{C],'MTW?D;jh}UOUKZS4MϷ ܜaܠ:law&ӥUm.S)]8:b|*lw5v{LEliDϑ&L*be^]QL7YR!g>M[sKO:BnE=Evy顡%/#;n53#x?mBQ7Qg1~ ]E2~30پ-)bwϡG<V{I*'>q}Wϋx7lfqB5";b[|T@$QZvQh˗+UFs` 4 k7K߮2|xZ.q>8 \d( -]`Sh)yKU5%jg;?G#̤ZA9h8Wt^knSL(TMK=:Z3,o&+t%6b@ҌF.9K_ZT/i2mW1 =Xl2 l3ځƟhu.i$Hs*;a%TE(K5 MUu /qX]n>Lf\@ -m@‹EPίquAÈK!ƚ1'1+* xXrbu}M_@VRaG&'Pt'$:B$f~v3p}42-Q8V:9/ߩfb skB)|Q.o_]0(1 #]|rx%e ){KnAb^䊹C ʇ uߴa8Y<2&.Ǖx[\s2M΁Q_ .Ҡbۛ[r&?[6N] K5>HmOu9e\bfYΪgj-qvbdy N֘~-:5FƼZǐ8eΌ! ;F׳"Hm54˳>9'pJIKslMHXsNa*?t]ŸXFÈo7ߣEcMPJaK*\ihM@OK41qp# B,˃^3XJ~ mwz̀p R ݫ;D:q7hfEc@U+eDg8G"7,h9/ ھPgz/L62%:/pGM$Bp6K,֤:I`1fW'`ڙ"k3rmXۡLMp>7ۂp_㉭gErE~=?ֻHo3یA>5q'| z16n)30E;$uU GSG=BK)3;݆4q'zge>g5QȁtY1?8jBXE;%sXX^[qFhOoSET T3ûDw+c0!$MR]<-!NJbݩ"}-LHːԤA-]yҡ j3:Qf.-[b9!epuф%Qhn;@K9OK *u(C:L"}m죠n@x򒍾_oη9!hOTmwﱓ`hp-y 5NxZ1W4G/B}Bߜ njf!u2*M7eD}01c8swyF~RQi;!⸈'2FfqȎJiQ ,dShfQ@ocB {UK VmV]HeSԲ[W{WpĜ-IK7$buhea\"vE8g5g YZ"wQ_Sµol5=(ibbAg}/r4)sf}жP-\(ArEyTsWŶFv0ye:㪷y1o&SISʸhgoLJG9G.'iX)692f=y{'DQ:h*Od⸊Ґ1u~L㔧,m8n?rcv.RgGPsH5RD.[=%b<f^8(CE­0oi,PUQ9.:KB` Mt58vr= ͽ!8Ԕ{HgٽZ$݊Z"鈷\4 Ȳap6!}oTRMJ9}oC{/83 7ٻ|dA+Ǩ"u;g441UQ@ {4-ya>r~oM-wh#BSdE"1r}W1lldE7e  }VeN8w{$/}0S)FZ'pfm?+{xެCVKv_W(f;@{O0I@ k[fq}y_RiӋ )$Ec7`$W/yhԑ#"s@򒴋+ɤ hFJW:Pڨ"%TCbn!h>m3ބW@_dk;d%Q(MۏRU01[v"/*WT1tsFnDt:ͼMKx]/ >%_Ԓ$FHJjpCœrݼBQ@(Pˢ$WRf(:,n'dcpٍk1JC,N= A7 m |R􍔛eZ`g^1C2\zE{b.G uNïٽY=\KC:b-Rh&,#ZJpԇ( 77B7 )d현DC}tj:N۰ 0U,Ra ]'k8L ^ps#꣢e?;1;pP/@Ze~@0xNsX7#+H,S#Y6nj+H;2X<0?h+0qdKuݹ+y]+tA %NW)Ee*O?[Ի詒sh1lx"W-Xw/47BhsD~fdIGx ̚zd.LggiPbl!s2vaH#JkWNTWF_SeY&ax-`C}Lba! DN3>S9u?ljgQm0ߙpZ7>Ȗ%2 ~$a܉qհsqPfmo{iJϠD*۟d]`,XLl5!dovힺJ&4eRIsG}9(d(d#@_|;usk L2EaV %,j9ZRmIٔ19-G~WhCZ\{ @' bNVMJٹ4nr1 \q`}\8QC{915l3b./[S9| u<,֯ ë7]wbNK K\h!6Q-ԑ e'!UPzRNN'X+8ȳ [t4*qЧNncl/[AG"1RGYg-*o<050;%I!RM AO;k\Ҧu!h-XF4f_Qz)lZ6:ޡ*N8bxPv (]zob(&^}/&c7n f쐪NPURy iw/҇dNeܒ5aDl3de'7I!^_t})^n•4iʎMbR>4oPbzP1`CyΎ{NJRG_+["5'tj 9t=QH4}6EI}z_%vVLFTمG~ $S7bEyp<);bϿGov@S<!ỹ UQuYK KmЗ&m2"q "kg<%_VO=4pEvĮ񟖦`o*v&[_u7T.TƏ<4;|lp &:Ѻ5nWW[OL5j.3 %]Ӆ"D2#V%̓H,g,7jmZ NT\{ mJ_UIx` /$ skUҬiΡ`D_vv(6en{ irhɷPh!1@7ͮS'}HI$5]er4FU͢ +"&YvԷtsZ鐷,` @R[ݜq5;$^lqO5a4$*Em;eنg :)I>!I0R!+B.2,*@~3\8S3E$E HMmFA&ya^&7q9m~5FF(7pTf+qc*7 {5^{FEg85ص8թ7@3R! 77w7)m.uB^HcH(t%c,ʰ:B.6]C0FaB8c* C섺itS"EZ%TV_&@x;]{C0k6}v#~'bVj k);"JfқjxjW B ΨKӰ}.2M5>) sۦc.F#A4g$ +sJ(3r iL|QTWpW]Oݲ/Ʊf8*& U.?ɷ\ ȂD:Ս5MN@4UԤE{['f.'˭t T?̨0JqeuяVIc\`ֹI<݃ڽ ÙK1Lyu˘r#g$H$9}O4|( &ZEM*q:^ ^ NTy2GIfs1%RYP׫q6']^=/ƊDEdGiVdg2ҳ%Mm8hR"I-no>cҊWCp b3`٨%K\6zF/p薲%*x9}:'ZW}x gtwE0L:Vt'< yt¤1i\"ZoޘIA#D^!#  ; i!޿x&$Z/7j]B i9P}g"&Ӣ&3f>R~$d@ڥ $R;ڨK/,w-HL(ʞ^n8Bvk7|F |vvNF##y7GaPf3͞4=M,\K"EtDr{#wurɅT%xvyeL0,a睢 imsAPlj%BuMmO=q&)?%"@QN+OoMԪ8 ABxa}6ߩ{ޢ-483o&F*ۏ&t*{}yg!2SV[(F]t{Rb++|(gxutJ,SʮSJc9GƳNc]?s8@$́?,vDxIrI3෹r2;YW`C=4PK\F -P0gh*eC\j}ۗ[w5Ê~U *{s e-rWAG3PPѝ{\5ԝqqW$~ΚfA,@aiCiڒ >\~aSt?eZi}fނ97bD iiܭ5`XTu7o@f/&K8fњ'[HpX$~NfFg--b5(m'^VUUSe^H]#ZFoB= ̖# G $ 3}YȨ5ye5Mgj~qF `f|pRiRkafi!|~ mgK63w6C ކ(]fQT~cpτ 쿩VЈAlЄi:9=f j \ ½8jn!Z򓯉ܔ'&a\4u^Υ1^Ū,qW6lĝdݦFlΓ8L"%[J ##`X^׃R4&qWQcIm?J;,5mM[f~5,f5j{_qg9i)A0lƀت;|IH߼QF Z6Uu;j= xXɆΜy( y|ml.Čw(a$%cl;˶ k{+0H⏧Z]߮W]麇&A4\n=@NHm~lfxuX_>92J<;~;grBxD30=@64ZXR*#CH$_Qѝo`<~)w#a,-HZ6 8VsjFl('dcKQ|EVp9Zq"R<`?k>IG'xFloTm;|=Þuu2U#0d(GO*]_bo (ĨYEB+ۦvV-v3j>JJڿ4:~f)2o%r(ޙs;p)!}aEIL$+j6ŊDST xv lJ4*3S67-nEyK{pAUWίXœG~(ZD޵vN7Њ p~ ;+͵]Ә\7@5eD/Ϙ{+ЏDc%YlR\d7o&~oSaEhe0WkX K~Ap܃!Q&))~;pNZUب䐖g (54n<@ 'Z4M%'KY* xÞݙP< :ޗpח9rGc|85s258!(j6,֟GKxmZ6^)ςq4y5Y/Co0;3|YbnjܔpFP{yՕ.%qˀgada౽GoRiŎq3i \oa8tЪsKBulMKs% e+»j+ co.D҈~nLGk/*MYC[܁dW(A_/CJefGER46o)D:W{*V6M[^CKVÄHsmݨ)^k8Q~ˉ\YW]8-k`ЅUpxX("5?:fT PF+,Y1DE [@ a -҂0AO/z#9dxH=)We(%~{[CmʷT0rN ƾ;x/knbeZnuV;~<";Aa5l}&+G m|䢍XBEGf~` =3RDK϶O;hufAΌ (r2yBn 31=u"8t9!dl뛉l+ۤ#N8˯k];թǙ $ɵ.}C "y Iқ5h4  AZ]uku1[e51+l;hԾ$ XhWy@&NOVbcTVmjB9>"04%DޚCju9aU-JM L^P7?uƼ9+]0."c|>u"nK: ^@]B4xT*þ*Ҋ;Fu)|CDeA YsZG )qf3JgY_a'QlbVX1ICۮϼ:BeOz| ^5v4FKdW=gb~BQ+W˺N"i$)qdiU%H%J"|ѵ"}8v]vZ-E S~:A\_fW%v(Ow]VI Ϭe{;H`m}-OK,µGxֶӾn,'G"0u)dVQkpztޮVkn{{_o,Gc'Vޕ:1i@;|KHрѻi?߲կyo.nIg*ʞM,1R ;xY'nz@r5%_~_c3 2b3ÅSE;."Ypj;^BGҳ~{ýu \uwwxg8z9Cv73Uw߲Oygkvbj@MgqyyEe4X> o~-S=T倏l(-ù!wY#(#{.tT+V KyQ˾"б"G u 7t`}K`)w7ga1ɾÿzoc/= u@wWb}<Lgs\[}j@zO\{STMk}0q }n^,犑t@K@*n&yYVCبfypW,B&E;β[mGS߄I\zrU216 ۿ',l¼KoΧ2f8< 6L!XkQpu3 !%>xPY a^y@S#N0Zf+Y)P#Zm+ 4 F4cJVPñМ t4PX}օ?c5o-iSZK6vá$dܡψ33GS`eiCa07T5]&U-+%8NFo'wɻt~"+6A$1an2⎭.q.kQwg Uأ#Eo9E_9,'C`kB0Y"n&[ۥOzmqBnT@r'zdG~# Gz~jq_31ix ]n} ɱƓ-Q}q?忋a:t6:^EyH.2-ICt@S7hK©r?>? vљ(,i?aVٞF\W'&Uz7( m{*`!Y^z̢rP-u'U0zq(Q -ޖ=~DE7s@ͭrG- 6T{&́3uCl: @b mc `F3CiPoxO9 $>RnVr70$0 a X@B*t_TJ_b,;cnWeȡY.B} +v{I>{ ًjzSR) 'Rr~).%QƉOg}:dx34X\!R$tA ,&7WJb_BJMLH/3h^.3`3rF ٠Y( 訴9<0bLρ|j(Ž=eX`i($V%嚰 rG4&A_WЫhNM:50qljC%+~f:ivQ xa('_+Cr ި9])K&t]Wt/=Oyy D@6m5Z3l~mTm]t<B ^N\Y2Y p`W4t#3'P0aP[$mb"Uy$?o[& ᨜8ԏ(.U 3'-iV,7suiSr/S꧒8e ҅g~|~WdL /NtZ@G}ɒ77GTѢZWYP'갻=1-.i]Frw>bqs Ej ]J)M/hd^c=O=:KU 5nxZxEdNO$y憲N,'.jGݱw>nQν1o2X.:H\݀} Tfŧ`J)=i$w AP;Q8j׏Y\o2$3ا=9e?-o! `܆(#{6!N8^ST{2Βg -OJhvugNZI&owdQ: 6584f 3tf[U5ʊ4.& T*$Lu4H=㝈E9r\<6v-y4;8+⠎!C(mԫ,eLS^L }L|GZe`t: Kw1MMZ,UzX;e[SUL𜺃14]y2%\ 6|iDH"ycasSam n%O/̪Xh2:$8pK>ߐV{&`;14NɫjJXvy}ZN|k/x4I @ʺ|x5B9D>ڽh4 '[R~ck)n! 01G1EW&-GJU \ڻ"qd2a 8hf(8ؖ]7<螫i!x7,}̰_)T7Dݚn@7m@ L*H/)eiO\h-1qHSR ~Q.穆_fmz3l֠YKF'*Xc#;&Cp}JDnvsnjR[ mp-J')[YaN5"?^P41nE|ţKL߽~Ei]e :|ѭjÍh Q`'|DڎRFIhԚRO$< :JW52N^)R9 y |%8H>S[N/C_~t^}kj^W# ћ'V xQۃi4՜Uқy%&4|"lSWu7_IUu]guaݮxw2"g?=_ !~6 &H{3 W lZܿ4}c\2N,B4DsYO> CM^F ogDN䦵7sk]>B[m8cDgC>ZY5W3lTXzMQ]At쾩$sօSQl:Iyw;EBR`jh\}) v&k6 ()ܝ _0 ,o&2(#?uQp @Xæxvc,~HBnx!ĺESq$oUB8f!m]2PS9_cGb)yKk8,6FMzzhC8ynuZj/j`؃Ċd;?+FoX6(QjH;mj^c:_7X2m/?7)c" }&4A`[a g46հF8 4IGy!C`X!~@֨a#4 ETs?`^8R٧Gp8@VR}G!} `'R>&,L:Oi>ȮƸ*K1]11\ r$NmI2xW0:KKMaF[b@o&{&Fpos1ACq4dFe0=3mJф棋WFܽ*XdW= @ܼ΅I^S^VRm#XMT]ڕn,ט(_X慛)B{7NfSK!+TJq R.yf.V 1qVbD~ױ6t Q, ,H)'>hh"gtwf$h\&dt y#u__Wo%r~ߣ*!|k$z-~< ".3Lfai£_|L`k$treQ*ȹwУLVVDq*^eEp*VVo_s\G |r7ԍ:xsr˫G(χ=ryu09iIAN}q,2'ɷ{_ oaӏ-|! BG0yA - B0z; 售s P38,tDѲ^oAhmC,K@88/d$ߧ GTtЙl{EX]'1PA%@oTL &|*΁)>ڞT*Ŷ1'f F~bMu𮩍D_9=6dun 7Upcħ7ܥmʟ\ý:+:3 cǨJ-Kژ^d!s⛎B*h! ;sӟdcxXjABiu(t uܠ77%ӱ>R39r3Uj]S&^)>iA}+Ѱc^OjA+ ՚ 20(Etr{\NE)a֐nt a;}ZR]*Z<6!px3zt8:gCb;KeTMmf-U}4"Z|5O9 KbX3Jk:5?gtVhUd15mMG n\rP= uG99ey]zXu"ߝȸ?٢;**+?ٯ|HlFg:F9r+4n69e- }b q6yΩ+zQ|X19`1W#;_.rT杈2d:g ;hyݾ٥  _pvM-dp^q$cU K#Qִ.3&SUpa`b~i'y܀=R?Au \ ,v)eMi ~8g<bH}ԘJȕrX)΄J9]BK bQ]bLfU `qpWPI7[^}S`kLU#=}N]"Yxp$Ԛ2dގu>4;ޕK]b* Yˍ xK(B`\jͬuE9Po>f]&7|xS*җ^CBPhkZ탸UH44 z1 M=^.6ZNSow{7.V5ݡ%0jrX| 4vF*쁆WW;WBW.|YSr|a $54/|>@ x Xt9m LzLl(}נ0{&0Ƶٔ9^:~dv˟H ~%p 4"n,wns+R;r)Y$H`t.E?R#pfhq2̸2H[PG;|o W%XׯOڴy0ET؟/%IȡCxA|Zy=Ω{'0Ң@c;m-AӅiH𿠫 : ]7g:42Fye뷋z/ Soe}coK7s ;ZuwK>n[PGBYMBɜj@; j W<@&p,&y۱EDxsSjcWgfR4<_P!`Rj|-N:LjaS@%dtńXv7( o]Nc#{ ;DyG.. ϗ[r X/% :ZϞ8N[ȃ]i2C]Wp2Q}B:)$/Ï=Z'$+}*uZF)ڕ[_wg=V&ڼzbyOS7Ϋ@ DAm~y.TLZ'Gdv}[щkӲ WpX0@E|-J~/`nmEGPvC7yl>ݠ%aEfs^PcݬE:{W"p'zmTΏ / '\wt/iU^W5i?5Ϸmw.ܔs ~ Z 5i1u=Ƽ`5r"=XʏsY(}>x$ZU; 3(k9:QfI_n2 9= L *pZP.{@"cL?{[RIjj5a>^4j7=YYʲup_g;OɶT EuFתȑ,[e(f4dUztūu&Ρ/bJI"{FV̅:` ) =m;n[itqi fYBEkIZVV"{xl$6<+ 3 racAُ`Ȑqj8;mNЫg⤍[zB m!u0=H];J'06>P[%y0UI&?V54՟DP1]oʤ]daQĝ9㲭Se<9uZê Y c;ٖߺ26}En?卩IC"VJ^h⹻qGR-:֡}vAa1-Ge-i TU{T26]07"Kw/PLط˿yp$4(X%}|gsÁeY 0[._n7?dl+X䢮"o)cExvЕG9DS|RgMm% *M'$-Bb=sEmG2n|ݷ'@ɥ# Ŷ ZcxHU?[!jh9ĊznaE8*28)܊#8ɩ>mN.V3 zLr^/-2lsu]KL;1D(4\[%,Bv\*F!Wʑba\z7rBox‰uA,J9d싲k]RL>a|KC\ݝ#ߴ}_aJivRuj-%>' (:Kwi ow1;toԅ)PJSMB&tPjn!7PhieA6<0{<ڰF`EK M/Pqq tQK. K'ltXԬGb>j7)X R-RSnGܒP >!%ƯټX!Fw6cqA"prq&{ea}ԃAMq%x<(kQM%0^m W,+dG(B5HJǛhy?'55pÀ>d0V~ǯɌzzE8T{#THz("<<GI` qZOu эҍcw0˚Y4 Ϭ\xew3Sг]`n(Fs7Xwm`!Y]فPiE3@Y:VGJKS^lp>} }R4N />{aY;Z 6NJ2/07^UhUan9-LY(3b 4f]` /yA„E@T8n7OWΌ\,cDr/q4mmwn%zV8bHiփDƵ`7M{ϡԜ,{ ^DVA/D1 o¿*D֯s>(I,Ju0wXD_585vv0{tzcꄗi;,` T iGoL}ێ?1~ZPy;L{Jwzb|MAmᅻ4lE ?Dy%V 1~3Pu[#O8Ys$1y5>77U7ZQaVzuAZ'`s&w:PŏAiTc?H:^S*ʂ ʈV?ymŬk>Q%ܡ?:梛kZn5AϽ{6m̎2ͳ$Sȥ[S8"bٗҋc#TȱN|PUF %vQW_$+%2`za7nw@V7OWz)OhcN,i vO}wYGuivEƒcb_TEG;.U.Gytz5$)zlf_ /g :ﳍxK#<"D$ZX$«系$E.#!$Iӿ|m&4r[XD̕\@#疉 z[F{ZEI|[?u4_x[*ɂTqPWLv#A.>Do\]-MVDDsҞgZ]KS;rkYa7qgv&4894R')lr _.{ш%\:<_l"qn`~ü`3pD#daȹ#UҳO\&Q'RڀMQAw_Zvշ۠[ڶMV@ΡZLd.1zH/i͑Vzp}MdPx) p[SMLLq8%z6iG4/,`eƳjl>R95#&c_$~}Ύ%w.`=Py/e)h4`\Wn"w1v2V,b`ѱHԓcN#LVbxn<; l4E=oIfSgSp[K;9曣ͭ]~UJ/QDE~Q[e)*7d^fJ Pp,G{'Ι.zy%ͺJZe6Qc5P]Y__\TB`p4kJ{rvm?gVv:'$;C574e~Ѣ`l`HꇀZsMU=q"&UiOo ț /纭 QMr{Gd'0vWqL>VP.X߬4SIPC)n3(̽= 0$Ip#K0KScѬ֭v"|v_NC-t^7AAԶ\{BexG.2^[&' ̋bTpW67[=qG CLgYx fnF* vo~w:d:wEĈjAI=7fS l1HDzRjcTpҭvAj%vV M H"]2,!Y \%4woz- yr"~y'J;G."@ ~[MD~͚/FT8ƿ@pYclÐ $WӤBT CĤ]xն~1y%uЩeCZ'. $@Db}p#ᅪOR)&V+HR]JÐܞ#gtN~jΉ"Gt΃Te)|,':/GByWDGMܗ2{KQ`5Փ}4]!P53m^IWAr '+ +(83PӞ5ȗo8Hi_= >-GۏCF2RLj{V xyT ^~sITz*^s.ТH"a6sNǙ΋C5 Abxu!HaDX ~E̸G*ֲG1DpCF5-Zg( xKJCDg1h=Wv1㔕c6$uODL\NNTwzX#vxL}!V1s.l*R4e_]׹w${bN+$b4VOp$;c:MZO ۧ)Nէ71΁{^Lpd]@J53hDL][%KG_,^[6@f.~ UQKH<=NTV#NDX=S~ HUs"aE]^yc5m ktgS$6z³qrwC.j,iBz J ?d6iO qؽXu&]5ո+o-Gb{`- ;p0I8gd?䃼轳H3Ėbc?/\ WZ6)Mt:]H3$;5HF=0{9ť7Ґe+ܬT/tLSqpyyDX!zxX5&j@hao2q``sW= ׽F:7r^n|kT68W/B{:2xx\fC|S$&TmQ0M8 EiaYf7f7]?Gsii :!Mɝ=Ta3.݁a>z"s%{DpUWJ>q0\Jl!T Y%ƓU˓/L1;TaKXڎacTk!r*RTнpuC+V{#+8WS.ac#ɛ]q/K駅=X!s>NC] y@&!˺ Dr ڂ1 ^N{W- vV)m8϶Vֹ*( ZO5-4Htl2@&Z׳4 (ZdU&سq$Ǟiy|χet=/C茨1>43*X& ƻKHKЩ+"y3^.,gTWqt~. .G ![Rߓsf{;& `۰ࠣNG sBIH="/0PT4*=$g Bnfr vY\&=m0<+`H y,<12=GT6䧅\b mpaz|Tp9YGy=HO^ ±{@QY= @|FwPKg\ލHs*gT- <-nſ7f;xWȥ5EBcM'K+gRj8JSMv&/i)9L[Zq{03"zda^'`S.6)gR^V`)ۥJƗ/lI*\LX${%rQ_OpqXwN;a4b"]W ߱P&oN@Yܧ E A.*\q a 20z)MY!6u7KP9yؿJͶ>*n@v6v23hFR$9}JTUە6S6wSՉtn2h }@mwn,J6bq:/As j,y뻁z5'?4ԫ@ocW|{J.o[BcZxֵFE՚MnJ|4Iu@ ]g- rֲṤHQ*߃\GI'{?"R̞f䒽psN| OPRQY#7RzDUE}=rДjKǖi*L$<*@ B ,!-Ag L"-Ax5(mBVE5+՝ZT W xu<%y'/2ǗȢz3DVFj뜧HYpF7҃G~x;i*~Ǧ'FkFN*|5{oE҂o`r֚K'AGDܵ3w%N<4.K*U e\CrO~qE/{Xm&a|pۋ5(TW_7Ʋe6w"Z@ҍoqk7 8 R,~<7^>:&:'@P[9N)'#Ѥ+ǭ2_VӵL% aE6ۣunU@o9Hm#M3nEn K/؊Ք[۾Z,[|/Ta%& ,Ŋj= j@Pɜ芋 Ld'|t*m32Lrˬu%n,woL5t@9)W>度MC6|,^]0TCAζ9*.]8;`HENAk_auCDhgцdRcV|^NvKHD];E?e*J*ۓ.v\ȬCd}WGӇ&yI>=[g-;f4mݖű/}ff:g3_ מ4 7[7wt]N2O򶩙ŞtGe/r܆diӛq;vU{sG0ǣ`erP.2ߔl7~(jHQٲU$o kL@z¸{\Coh0i_wc%nK }LK(Fy?%"E+UHh|=$7H#zElt0 qź@'U΁YVh9R(\bgڑ*0n+ٚ3Fkw-7߅6='M3|^jO֗~_w2L.&-~ت͐Rx=p?OffYoR<<e sly2V(tTs ^n+يJ@Lh[PWW5XP;ɷ'wgQaٸz_Mﯥd(NŐb0r'2rfS*3Ll!2B翤?4fG4v ՚fg8+7Ƌϰ̍}E}r29hU]-]Sπ.%L& +ޏTUp&R<Tﲾ n?=ߎz?e;8W(>OWȤ:j\kf8x~^2 MXr16NaT5|v@knG _O@V1Th }d{p!;@eB lcEڭmj/)Rx0/ʖֆJDKkY|պ,R>_ o5!^4t|_+/)# .ofYqݼpj[eĔElrt2"7FGUYv5`*UeZd]ȶu-w >[bS]FK~ ?FKJ:_u${A^ r`"8վ,ߣA;Z񸊾yxi 23/Kĩua|=*GgAXǴyf!T`0Nbdσ=yUxuWxꬭũP\QD Uv3(X1M|o5;&*`3 yS @rβ{) ?$F+3&$t*]ĉLZa壸{ 7JCꞗvq;+YԕJ#Pٔ_;5:(1RIYn|ZADR_ӛ*W <<- Dl#`ihT-f,5ô3)i}2PA4Kg.lcξ`՘JG|؆CR:0I\NRLPb5n5ZEm߱[wVUx/,m33AB 9n:Έ/muH#U-/enC4wPLS{\9ѩmFxS6)ӱ8,P> @;dxvG5'ˇ79ɿʳbUA WNr"߂P*3̢x=u*ű[pDF{2`O4W+fc_Ƽt6|'ET*dK-?o۩j\]5gbd6AOӀsDiW`2[w*߼, ez]y@Rl= 8Aictoh"~0Fyx0XP1burxsHN.l* +qzjCŠmTЏ(R iA#~n@$,rU˘@A5Z$AQk}Nn5WQSH%q LHc@BJX(ajB~a9,NűǥLG'Hj!̌e=8oρqVNX~).Tdne2Ȟ4%_qnr^-6B3shJ sbbG$T!9 , 3VoyMDD/͑0gW>xbM=@mC/f.;Zx_K/mDžZABh<)l\-um']hb\F[][y§m 9R|58񷸂l[Y5&&uּuLCZYڟ1̸'z-zo&`}FASs"Bt/H%~k*)z\!ǡ[t5٘;㔾.,+OoEr=p|_c+ `حjӏJT hPQ@ki޲t"dѲ1}9@qՉޣC5mPړrm[@Z@o?oG7Z9p=io\1N%4ݠo@v<݊InU5W/9FDD,`t*g sr?nWA;)?FC)G`f.? M$Q4 GZkf8ہB䶶KZKb=Ɵe[ i!Pl}i$xL_WL0|T8!C+]bg95/cEjq&\+0[oV `!e75>64Gd`q7#η!o9잟n/%W0@o<L>1%ODgqBd~@:ƂtJ1ԔT¾oH /50վpM=NesaSj ,R+A0D7=.dtt@+᥹J*(SÝa#/m,6в8J=f{Sf0))ʟ$8spmB/?D\Uy⋢S]`DtshWǖwk,$0ti7`g (m+|])KEA1|/ǵ|5)4i^D{iaĀ!lYNP}P({Fs U^ww״'PK247|'C?~̈́!A'V{>;撈tX2&1wp7T(`Xh6ӓ^y|%x-ɧw.zT\+@xr#Xldntxy[oP#2T<~FGsd,M +SW ɞlr$:uoJHMN1>L+?`X5S/w}=y} 7f9X cֆ%Ck5yX-}ۉ7Lks.zޤ̤J-=ZLwis 0ӜX+D-)@ 0$*o-TE`1MQNp̼sS˓GlLTZBy8YxXôUubF"KFS^>`K9!6-PvQd$UuŦRIC(5H .XD`+ǘpkAy0ofk[kwW2[2\ 6*K{pRbs+tSy'oUp1- .6{ԓP%d=TxK/̲ ꮊ \TlJ^838NjɄsyd*F1PG-F ꟑiuxX"=($b{tFI/"6d®/?p&MC]'XW 4Awg wfK7t/PKg5o5'nrN2 *r Ytݩrg}rڊdd~j,6?֤܊땿B{Um g{}z\&PJΦƴ \8U!BюEGuR?D:{lus! =*gi+ϓ@4nM5[# GݨS96P ƭ@bpfGh)ѥsײE+Hä_Ն O['dlv"$}}Š/9Cg(()$:<  tKw{7MHiSD@s8G!Y(sG3x)mM(Wekv4ez¿ 7!n% V36/]pmyjr+>b^{c4lSnL_]>G$;Pre602R1^> ?VH[u3mfg+U;ސga]_z-k gS7,s0=$e-O=3r$k25{꜏F ޲ ݅ C̭_ìg?3aq7#9MmU'uΠIQ1ɦPb~ڗp蠪:kv+VCIqJ̘V'WJt٤¤lyuV`_0Uf#pz+[L#8CSV K[r!5=6 e*Ii4~}6L L3ϔm"^,>6vo 0a`gmȣ>ze*LS? iY#&Mo=aT|?yg:ۛvj-9@|eDcҖe®ڽmkK1$s|3V1jʪA62fx/p(PpﴐxrN9i άDDHC {1&jA9:l}4 تdLuHI<6JLasܥɖfmnʐl;~=qZK,\V9q/o3%:b30@%k,i2u2u9 95R\Iο?|Rrz`ԥڕ8+}, ajNŔC(T~Ӻs u9f`+`i)e`CCV=qCJvp?DC9G#)lk 6K6\)0n*]@OG_nepQhEւs\`HaZxNsT/њ>a`1TduX" (U ri1/O(&ٓ+87B^.Q )<4B4Otw^Dl=iх'rdӹw(=rj/B"^.ڸ|Av^ɇbcTT'6 i 뜁V6N>U+G9߅K!X{͞>h9I]= xv KO8e8%.FX\y+ tfV!;^?҃ XHr5hcj;2ws? IΛN:N޵|ꠐPo'{/+Wdټ,W/H9b״O Om"^ƻz&d%&+ġN4f HIT Q ;pޜ80@y#bb6#ϣ:.I*Cs__P`$1DiJt-6SasH/5k`^R{䖓⪓bL%FbNzz"׊]@ (fET4F1Q&#-CKKf\!=9ON(}Icn'M>lJgg$RLѨl%NQ&{TG_GX/sDI _Co)lTbZ&aԁR5Bz kH(B˖4Z ЦNje0b*]P:ؽt9gΥӅmn]dsݵ/$v<_ {HCXa?vZN~o#OX!=bE?^lbmo9'XRu+GAv;l)'DF-xɲ R=LHyqJ3+f}A8FRp}UD(bmSG{NԂaEE 7LٸG ՉC=(ϡ%>8^o{s $(xs_4J['bv@Vo(zJvk7 > `]'5vpm@ʖ2` ov<@^Ʌ}Q ;'etm--7TTܽ힗r8e3(E6O#Xr,0e̎ky \r50GO+&Ft TPOP|CcS4gW3laEJ=*hC(%N0hkJiF gnrO_/l|6_n8( &3rVr@z!ܼ_|8һ&Գ:d<"t$=[Rfk^neb&U`V;C"`LUEȻkXuЗXBfP x 0&3<;\:ٺvMTQݿP^C7o(MFt坥r7\b)r>Zml(D5˼ͩFٔ@qg%MܷB؉ K-,_9xvsU9pTWzg۹ OmR Byxҭw=_BnoOUN_u*KHp,n! > N <{3BB^:qZ-eʁCi eRԀ3]'vix]M^q ֨ :[C+Խ;M!t=í{fĉeLJ[?ddrNbZ]O3آf&S9KnI% e%ȹ] z8Z^3!`"ghG|qJd6A{8 mr:|^$ybeLзnslI!*!VEӬf؉}lb~;$f@dD%5-|}R 1)04/ٜc--@6H㦌'#'Rul%hWɲIʄM7ed/>Q:pp^}M+W<z)Xrrwu:S/+x`j'ޟW)mT̓jJrLn]ݦdz <% v2ˊ~zӎ]}R^)`6KP?BWiuݤZ$٘!j'GW<艄Am`cDүզ5m˪ 0o滜A(/BM8Yz -)u_vY{46p^74GtrS2h86/v fr >u UZ&zw={nQ^,0Æ(9WD00I:rkRIpڎ[+^Vt0WY"r9y!'4e F|ViR? UUlP7Lv!hJxU/L ąB6* "M&s='F >8FV݀ǷGxv5cxڑ%B%Uk,'|' x9~ž- wHYEMv |4ldvʛCX}S[R/p^ɂ@TȆHԉ.E@J/1V @*A3.;0W)q98Q֜mvdk%kpZ~S (}B=Zɬea-`:ђׇa,{&gR ;3ѐd%ToAГ~Q{T-RӒQ-ʉQMR|S =jxQ i5Ly;g9%6UU\С 3W&$F?CP6^R'kHb|gLNS1~+BjFaڧy= pϲತiar̰]+-rYÍ !9Q6^7n,z@3 *e&ַAZt)Q&j o*v剷6N5ь]YL~׉-tĚsGA_'o;Ƨ'GkDGǼaN2ZPt[4Wr'Y47mw* 2qW]L_3gy Zms3|)j&rfbSZg[5A S~z#eo)R-sJb)0P f0+P]RܞNĩ idA(^c͚`BSdO4ne;ebb8#a ?wƲ|M߿KGz#G5Ԍ8,pɛнH+KGi(O?qHG}ki }>Qw^"͋z[a O x5?AĜw5Z!wZ-6(3u ${Rl(@8)+N4($<]HRd'21#Lhwx!YNbM2yٻ72 .8I9kahr[v3z2ś  Fa-!~3pjݖٱ^y&7bG$haܙ85}A9>R?͋崡 Gz#='We)9YTm: +xa{I4U! {xxԨOs`Q>Y=ALq! JA|j0M驣Y > =G@ƲW-h1G,E2zOē?FvJki uvdz%GarA&_Ob#+5QuJMjtVB7aqP̚%dOuhIg`Л]c9vZ#9uO-6ټcA@ʩ~o3p3Šގ,$+k(Ls*PA5Q:lټŇŊyPY4׎tLhIP},#o aRYpg:S׫;eلeWa?f@\Fn+= ug![qL lB7!rDm5#O&+`*Ȼ}HØ;<{Sg!H}r3*6O1 dcIQ9~y@VA <|CeG&7ޟ${۠ڢD֚Ǿ6;^J&!)t1LGFQIJ oM8`&kSxtN!fZa s|߬4Ţ{`TߙdQ?^ ]u9nh>_? *ݩWYnuy8ctiA{J%'3z)JQ#&:$dd&AO`hXAILՔ]dirSgdM\^B>腺k0u1*lI^"x9i{ݮ8LҌ?gL,ϦZBq1˕ $ f|5k}rTY-&uA8YBL!/ꡟo-f# "04hz{.5{x Bh~tm]@5"yU_ at -/+ hs0B k ̚|U㯃CkbZ!J(C*i'!Z!oQPڦL6 Z;X?q641^[-^>52 ."ԬD~0_qnJvܮYҖY0.rY3(C;gUWqLo+@r5D'AnnF ˱m Uy#4Cm[`~ZFD`d>cRr ЌLo)%0= `1\Rӄ!>s+k]0ЗjT &C0jι%Ɂj8KgT~tj.I #f $.ݡ~*oHY %B{ɋT1'?]Rj~N-G@?Z%;#,+Lporjҫp|0L_G^q,?D ]6_*FPMZ>mIفuv7odp*^0!AѕXImQXCK|-V36 4LEԯg:J?/a>IidjΦÓqgQ8+{ d!W<8Jiru~ourDa SOyԉ9h+M.ti)E#륷ݽ} S}1At4pf,ekqjpݔ/{/ԥ$@+.r<C 2+ HP4{й_'"iydQ>Xb;xvPƃ5Uznq0 ) ?Gl:;r Ko%NSés g3ՊD8R-%iS ˝Vִ9_Qo`%l[I͉0}JD**% +xVƒ+:Ir ǁj.WvoJ'WÍ"m<)o~zmҊӟib38P| fw,&jD"WOvؑg]ˎDB]a p: ŒfN9D=5d~&$V\1W1 {FnG} y]J dwt&FG#n6Q̝2 l^2 Z֨xj#ڲی`?&ƴ8~KMioPu'R(R08Hmm7وFz(%7#dS=3عѾѠO0FgHoȋشmdǪP:*D8spFœ:61Ȼ9]q!;t>7 bX_^߽L=k[|f֩\ޔ0c+8pl>vX ZDZV@i9&7Mq(c=iioln/2cK"PBqAF4NZm(Ǭd NZXI@U f򵑦,ˀnl@}iP1oO6@ъfx+`Hv {áZa{9~&c,2gVu]"[2..z+VI\Y[Kĭ7EP1JYpB/gAlyVyHp~K V_)8}y")wB 1dP5N<LY9gv=KAuY';7!)Yz GzUޛ]r$G) PJ Csң]0[&C-l-U`mxX(ɲ\ˁLs.ҋ"m!nGoq՗|$%Z&eecB"t-#Aɻ>RSxnSs6| R<ѬJ-y't\qB[\jI*GE(~d.V]j8:'6O!6šj/+*:B^LOl@/mtKqH:'d2 >'{[..žy'q,LƱ#Flt+#gt!Xvib bڮA MgBl.-V~~jzUB6KSt?%,lq"7W`{D[h?`LWTu]nhe3-A@IAf PGC] \`5Ibp#k.)Z&60\;kc3!TOf(Gx|=J] VB8Zy4u s^zL~C؅}^3DZfbҭ8\]X9y˝Ioz}F,L}h]z9^&9sycVWZJy&4+Ck[0x59ـ%]bi\N'G!P]՟pC̠:a l;n,ętOnK4SI AՐ**KPŅ1 LE^ '% <)3}-(ǗO*uVWkqc_^0"5OU dRPs>70P$*;.ũtpHvdp~$Ug6JoX-gבvqG0#8T+ Rj2X%\NPa `ԳYsn7*LLQ:ZiwS5L#rϞSiM H.VۮCγ߁]/E= O^`HƜOK])Έ. It:|iɺ#)`IXI1<''$2MpRo7Zp3nӈzD-ak)$84$n?k8zi ]21?O'h #>Y5隵|ܖ?D4Jq_Q$tW-..4_򧨱GI#y 6Ys;.hxbSyyݜRY .,|>e)ڨ ZM Eq)%-2@MH|h{h-H,I}7[m&a{mFH0z.h5/sʙp*dprKp8TQ^U:>\]B:yKƪ'>j7Xa Ҋ;V?96ĩP2pg.SBGG$|6J>VT~ٻ)x'U(7tM: _0aAH>R&DL!hI:g(J +LbG|. zUg6A}ߙE0fwk#?|}g(z3'F{.fSF@ kh_+gc1KԅkŃE}>}.FwoƾpJZU2GLzu8.p+ dr}iH̡~uLoqhHv}WUYbb'UA r٭K@fY˴xEȄLKT1^1(6x'\s9{Iz( Bi36 0z Q8ھ,dA)g- >fT'rR&i '~mK`0P}vŸB3'Yb:?LWJؤ sO]k9rSP=XUh`i cj)|}`FI8ˡވ+ 0=AxP_m6&$l* I]2;*F\99"hf|8ǧ3{ĵXgl}r5#\ dkW#$Cx!*l5D(R.O|7C;f㤦f.[? Xj*j`~eI׷i6wS9%YE{ꮙ&$D$wgzs cX=CFĆ͊ s8[qLo?2̊kExսB*Cbޢa< !UG 4Gf:p}kd 3*JzD}N nu)(^fSFL$;' CYEx՚2MRNhUzaEɢrˇrjɣavL0Ҡo@k:7N3g@Isl n>-qp%)φ8Z1Օ@y(O(~|0} MqdLVbֻӯ zޘi=5h!c^Y(A4K{5xB? ņ wjMF<ؽR;h`CFA+`=twZ٤jreeY,&3Yߑ98UU}&¾g`e]V&}EpRjI0BoL|96|55a[_x}%ּW/!$S,nI1LO  ߿:zl:.ԟW:ը!(W4CRK G,ƙfo [s\{Ǯ kԎq>0;H)yV-a)6^(hXd4Ɓ2E#"G.L|411 e٫;U%ӡ-|04!C1jK2?z26w˒Iz /-$8yW:oL"f2b-:0SьbTEVNE l^|7_qt]Z 2c@Zz0 dM.Pelwd>ڃj󭶴Ԡ,54*;+ڏ[#v>ȼKʯ'm&>xcf2C O ­|SAS)/с۬*0bsy/ -^}oخ=X1C|"@Sg2h'Cs:v[.MM.kaC}eR1bg_qR6_*ZD"ASWqmR@&ChAߠ! g##4-UtHR +DU%i#n1_Zd ,~-t +L`vS=XnUؑk$ZN>nL5$m/vnq5h~0:MyŮzWe!s- mZM|Jv%DZHմt$!kVךf'Tvb9D1PQJ)rI;jpIAr{mz'x{]AXKWܝj4Wuǘpd-Js50D-re1y{_ABBp2nnAMx?kY.*trɢ;9Whhp@ΞڊzmoTWnW5G62a}XN#[v,>_j/| "#-6!և*/xjĠw_j*ox:d^ kLO1.փY`wҸxOZ a?1[urBv~<<TR=|ҳEEV~)TL;>ADfgkL (vs-(nLs͇(rqX}pP'.5d ǽo@n5=fqm3hRǮ^~jlC3́z)L_5!/70Ls,qp>\֯&CvHOcmO[Yx3Dϣ P}C]X9 -}EvK^.@mj-0_TobA#dm[9*s`ox8?o';9hi3Mf4l&C G)è` ^MPB:਋6 @ .9TʆϽh(*MGhÍB`L,4!FA_Tr_٬1 B728@S4pGk0Ns4e }3*E9;y=t74Zsݵ|7)AQ~VXf2[v 逆O:z-#,a~01*v_ v1.0n݁vE:_Yq,~у0 W|gf}HFqLU_R5^B52](:z󪃝*e2[[U2Oe1,-'Y>E abG~'3pW~y$N94C2U^.;Zm3 sR4.ѐ1='X*4G@%j &WõwM7 %Ư$aegy-{#)y6hځQyc!Z8vgy4>#Sz6QfZ!͈7Mמl=;:X[ !V1OxKZ[JTRxL?]@A'4Po Y^5\8炥ܞ1uX*Gy諁Ry5c YmlY!_ɥsv!7 ;Δm }.cƲ7jDe b?a~zl$VZvs *|_yHKS'Kfz&a)>٬呉p!6"m|jq]=|IO8q 1ﭗ`\"Hirydp)En;/׀`l% }2^Fpy=bIc4Yz!8^w_]]ZT:+:> c؉Łɠ,%:QtR"yY7)CmrUx}e3]7e}tv:aCdк-*Hۃ wbń! "K؎w-"5 9U.x5q6!֞f"ƘaB.y'\naFPOzCFkNj 9]$v"7 m̖S| 5f'SjR{XݔG4E2H$Ӭf\a^U':f ;:?N ^IĤR!f:<# 2бVjmR,}+;VmCgNdI"\R{laίtxC/F,ĉbY5y-\_vmحVh܈3*( U4E).Xo]OnXfnCJrIImwuf Zp {ƸyߛJ]$ߞYG<GJu14Y3V49/OrL@Tn`CcMn(P#"iM40D4vd ߙ\eV<--1˙bCMf־*ZFU_&`|G{ņA@VKlPcO2ȨEa40H\Ap .<0O392mG bj4׮S#"dBƍjqV>/p7>\E,f]q5TJHZ AnhQDgܒm,v [DD ws =Lm=|^d^j6L>wV U"I m4j(kL>htA b oDt)efOa|ޢ0PzvkM-pb E"u|(^4mb{h2LǞ`pI ISڙٚ-nwkNBsL;a 0p7яMi`q".۠ άWcirbʋTABqr|!u<_;2tsgw [7F,T0R8'AP6FCWHt Z!?O 9vLz$ɧ7cĚT]vfOa.p̐Dh FTvDđ* zktKJ )VS~Mj$ pZQF@9ΫpD<:pH ""g5gE=/L5 S@(dFC. >. 2>^i[ H<p5+a \_Iȴ\H-η uhCAeac9A4<!{%ڱ0O҉YE5wV|c<b3郰__&o}шj_Fl g wC CbFR_[4e)yu51./2~iJ7L Yb}WE4(,z񽄰6}@p-I>?tcRAn0,ϴޡoL?b8|k>*OgL~-%P4]>w2&N:g_u_Mu}P `˚ۻXp]#ZA `Eբ$1}^0#`s7c零W6~Gm9v.@bXTVdy'}S4!(>B/yPL@yˊsͿ{Er F[|m0ҽ)G 4fGu]%5׽٣d0rk[.fJrRt%s'}Lq_ׯIhg&JAɑKם}KVwp3)ڧqy6L25 e|N5 ҴX]|9EԭR kҼ|(' 1mh $/=szTd=WJ؅es !|X -FJFԭDۈNGu }ΚEuĿߖw8<-ϊ% N ^?y8ˆ 1U̼3Z4G {P)T97؝اk |R+̹$hd5U0+E#  z2̀0p]O5c*<4]k7ѫZJo3IՌaɆMڇ}.eޱJ?w,X]fL۷Yq rrg!="d6,r3A$ WM̮)ǭrh;deaL,h[٘ <5[eũ4l}Vn`sHyHUR<|_Xu?ƈ/Ž[T&! #(]0T5IsqRjw*~W}ꯡt 6D p%LN3޷K*Uo͡)9̂B_:I\p^윒#.hv-Z6 X|6e6yf ʧg:hÓ۵!@Hs3ZvwH΃8΃E!6j NX%XJ{ Z%":}8lϮ %?oQF6Z,g2d{=*!u"4` δy6^"T"T}_Bd\pxz$[{jl39 pd҄w)NQil K1FzH4odo$ Ca{@21!H+B]+853%G>'ܰ%0ޫ0~^_۱\ hk=z(ǃg@1 uT2xR"&>кpq=H0W zʌ?d0,uSXI<.>yLBo.f-nvvJBګh8K֣{tX3}I4{{@f BGsx f~AJXWS6n m}h_J*$%eApZ{mUAO4&4W3 )Tu+x 镬*J06xk}dw*/q7eBO76\7?Pa4=W#؏jN"])"6u5׬l0r %9XSs[ͺP0ɪ]sdw|x7#)[[\2ƷvdJiBGC⊭n|b.`Sѕ=e ~P@$G)"#aSg1?lMЎ84ͮM?D7@ވчp"ѣ<.x`7ikeZ ׸۴4mr&BiIÇ_pIR5@,|[ҷF[ 发:53"2=&_x}NG3Y5 &/59H*Dp! |a/Qzvߟ 5 ֐Ad}h4Es{z02pJ{$*l Uc.tw6B*dtsˋ$!B A(ɞҍ'{eǂ` +pGGzU3I ym5[R;ЧEo4xW5`2ݭLr֌m~^r-6XYli8štM6ҬcG1ːB|XVڤE :U,2ϲ ]SK^M& Ꝡcw# ŗ7@tao!$YKzaHwYKDJMFJȚ E8 vl鈑=:^ d3/J)7ZD9z; 4ViXQ9dBl~k)ƀ8Jڼ;Jm8IRzCClW?4V@ a5NC%V2q~G3MۃƸ 2bd4ۻIEYln+y!%`=i]BWsW;5n+ާ$l8s'>r=oXyuvt7~N+x̱I+CfS#]*mbG?pͦq2A_Sp<^d]@yز,38G#R#:ߔl9(*Oǯ(AkUЀNG['L| S*;]%w6@lh~0fth8;H~:z *q&,`El>"DRNSފV4̷]żzW^qҟ2[39\#9UL5J]IC.:rctVjUxrA ѹ$fVy\ËoKSQ7.??T) }@ qVON+䴖r*~R *&.tVCK˫ʝ42q\V0{?BaŸ~U \;3hp^pb[3:TfFqw 6Ր{jBcޜ\UoI^LX\C(Űow@eIwl" jf!*]aȈ=ꉥrcF1Rf\u1WPVԗj yp^F+7g&Ss5 ŦvGHBtJ O9$ag|١E BBϏl[c yG>_FPЪ`(Bm169'ksYMTؓ^sV4_W`), L sTģ:=єµZvk1(yd1b 8Q ^(klOʼnݶ^En ַ}9EDkEQl%g\cv:)4sԻqb ~ߝsO =R>"o{3E&ӋxZp)k$"cFA9,ĈeؿBFB>j5/y4s 8O_Le]oW} w`JɦM %pF -Ǿ‰Ib xUom0RP^Hsx~z^:ek@6+OCfCĔƇZ}hbjuU t]"%_1Qbg_Ԇ$iMT6OȳNT%R-@ɧE9f|+% uL3<I0K\LCQE z)Ղ+/WkDž|^Ҿ`K|Ś~mZKyMz ;t &L*,M`' x Ekũ]yӖQ=Y#d e^W~tRg xMs\? RR*gxIr8 r?#VeJdH!0Xpg8aM[ٛR/N RFxBԩs"N"2ڨ?#3@-.=)N/"Īz8`(\"fktx)&n:%㇯DPm[/\+`v,fϩ3UD mI,wRGW2p`: A-b19t,u,BH'arL'+P^#5y2,:ݏ?Jl+W ˢNh0"tPX46#]7BX '@d^D:èq7L@>lNG?<: Gr*P!gnb7uxp _.m\,Ƴp3Dݲ~]{W' .{}XD;\ 1L3DB'LE;*)eV+\ξsWipJr_߯ziV tԬ'^'ܩ`H&5:f ^&rJSj# 7wv,)E~ 6qRZcY<0>HCb߳LKE!J}aU:^ˏ%F!\6WקC\ 'ıFpBtvPlr)zH`7)mW yR%8~AԴ|3F~p nUbyaXAsVѰ?hE#Mrz d@;9ŝeiV+'lA?mڊT] SVfGw~bd˽  'S% y;UpVPUew~|Qw@1 ݶ/z3|rq Exo[?:h_r7RcGfXF,{lAw=EX ]x-iC4OX0/^BA$*}GBI]I̿ E evt1. nEDȥeᴩK W^CtrE=TXਰ?5a'n),ÇGu5U h*mrǶ1{[2V9ޛ4;3ӺaD#5JfCh*2͛SءůȫKӜ-apU^/o>3ȭ ՟/Mkę&o%fUm2aU(&E]t2L+0Rtl kT8ɜ`+?PNn#@z>Gٛ%(/r28U~,'b%(|#]ýE= TN-Hc3ӹ匜F5,A6^e8gyE c;+~OMK1;Gbϰz'R̵ 0d;Řr:򓀓_ؐꌖo =TvmP@—oc6vM^UJ.>3^oS!ej ft9.dƫh8$dpѳFu?Q`SPm1'E7+t9`&{C5ӌqX ~]o:uUV^c/Om4 Wc^mC b٫ʊړjޱ0+z=zPuttWgBk&j2KMciI {sOQ-!9Q^LB1Cܱsצ5n0NOޕzOM6uW|2:]DP=_UA;*EF(JpqGJjp Gy%VHNH>t4yhq A֚eEſwjxUn ;p(5ϲJP \AߣD͊bL"> |RGۏMnɼo-F 0?_e츽rRZ]a(:#8rgewD1׳Ҫ'"*K֫Z)6}C4>8^7gpS\%Xj^qrX" aͼW0W.INc>4v[X/{O$  MgLA0̬RCھ s.Hݔ~9 : ]DN#&w)*<$JcD%D?_׺6 ;[뗽._b[-ΞRT]tɮ\p0JNK0 _Sbe+1RmI`iѶZzd ,%̴RuS`c߲ys[~g2׆i{\ǦR#RR6{Dthc#Kq9\Gqѧ sآ[_zIK|:Y?hr%`3_5Bj`* D N߉`vM-;IlM&&@90 !wƼo†2$ͳH5uAAkw p\9đ^\9 Ex#=nV5xuFƨ֊l$#}xj3"6ǨBFQ~͊+^uXb5ޛ?r nǯtr6N3~(KME#2ۨQ0ҸJ5{4ЮUe=D2%3ͭ2O ~9'|% ],0V H#P`E-xOeAhtkk;F,NK,+²@I= Sh_Q[؀y@`7E`Cv:Lmab[ʥH .s1hEwًS q0?7=9(@cyC}i\(=N3o9SߺjXܪSkUb'© Ry'EcX ,^]SM ٓ^ \[;a_O~ eC_w>li /9^]juiKģ(nD0)ލ/7Ԙ+YR:1q)G\`[X@D9iЀG+AlU6>7ضRxʧ ^98TB.N;m Dhw'&w9H;ᴒF3!q11_Qܭɓȍ=Jt ڒTAN ?8fRR.{E¹L0f$hהݬȻ(P EN3+<_VؓWn8Ȩn$9bKN;SWHwZΧWWq=pM I%Q5h)S)c"+`e(&_P{[ as=*jX_7r.-~xinUق0p58 P*K9(AhCGw[Y6UJׁ6OJC!_We7 ]f%Td0{jP,oxY1;?fs^G71C|ʝ_zנ]@eֽ3ol2I3N3$}|r!r[<.': ;!:}J#?zsz D @,LVbig<:J/Gs'Bcu1UaB˚Q%n:]t\/o#e٠c2J9pC=_#4Ю pܐi90/ˁu谅lv8ab&jC.l&O ./Ly'";-"f&TC\vw}?}1ЕgBTK"_V#~Z@9v>|p2=yj?mf♂,m mZ'E73D.כ*vE*{|IJhOsOO|E#$@V1|ln'Bm,PؚSK\UCsi)oEe- fZ2uepmˠQVk@7ZfC01b,7qk|2Lx ǖ *L\ "5+x\Bk>;b"{)? 831w('_||ˆ[ \B7{ ʚq O=-Z.~`[(A 2.ko,ZZ:"X5wz_"tk99(HA+ y^c\9M*T~ h~@j9Zz2qԫDE86T1fv*%DOj;6&O*U&[wB?~!"ǷzK5x(KΛ0r½Su<$Bc5i@oEAk 2OPїKK G}aq`g^x>l?AytdyL>6Q ;PoZn[}fjlw<oL{u?F)_٬,BZQ.6iiDWڮHh4LTy |UdAP: FB7*I'&wHO94sXeYR/)ߤ 5=H%N-0֙Cۻt6R`xQQal\ R%Mn.%-F(w|k1}3C7}iVXP3&bkkUTL;A8Ğ[7IBV7%PG ]3/~wY؅\e7y?sg : ù~B?sqCc_]woX=O!IW5JœV_mEd1a؀> &$Z]6/9scdɺ2ڼP StŘJi۷y|cS ?zB/]ٶ!ChjȴΎiP?'Kj?D**;0EUQr mIl5f=ż0j;ˑYwW2A2"IdKކC(t;Yӓ`  ~HyT}Vt}&7 M.λp SҨZp7Wq(.*$HOs4r5 FMOaSr? 4u X_qHO[dQÕsi"m Z\U@(A (pô̜-J{+ 8ܤ6'He(L+O U TtJbpݚ[ӂ fDSDu+ܗn -&wZ,"!<1Z/hkn SafCv Pcm=1Ot[ |({A~oq>֝B1c] (xJr$s2/T &y:ԙ(ab&+4^`5d X-ؾ GboZ/.ݱ$D+v(-,N0 8[NMu}nh{=Qݑ뭌)½#DPHرAnVT:*5j\ZОFd8?P^YÌ᷊g% 0oxKb!jϿ~ٜ kF8ճA# |}~$Ő^K6O:1E8qP#K0C{Rлx6VGg63m_@&dREIZc!uIQ!tRxR r8o/Ƚ(rΝ̂(B9J/D5!?KO)Ӏ =qwrm?T w<P 3 `EYYOi88̀JWO}BKEZ*ڠ< ^bY} ZQPU%t }zrxԸ{j:~^'c>2JX=oղKd!3m7+#4uykgFF=TkIv08(-VM S.dit@!!UVpGΑH@ WلRr2n@S@9rTz0DPnj,P"Y qc@)rňBBQؔ?abAHG<ÿv$pW:/[zsnRg-?}Ca7vcARr3((^6kY4Q~(2cg"Օo}<.7T`؇~CR~aϼ2c~_P*kW* BsxŢsY6r ^ z"4kީ޹{<̔4<UH䞃By^7f8cЯyfW(.I}Jsz:(txK v M*9AV=r {4z*1?dlj,[?ctbNO\Y,!VjITzJ%Ds7x`Dӻs} ̄:ծFq}ܗuf> @F2ٙӄ:n#G>55@ kLF-/mEI3bk؜Z}8ɜӧ[¯jYq 'L&w&zH) /ؑ9^ 1 uSdqm*;@:^B,x"q^f]pXlzHj $׵SzgL,k u_JX^`V|q,DۣEQa[[.y-bt4CH'jr&G'"2p}XPz;Ώ-&@|ab/nAs ̀|Bq)sWz!%*"W7m ꧱oQ[b dR ᮻe}mΏw+!`~' hGj?BùnDw8ъYG8m] Bjˤ5Zl.C o|V:C]? \gn!Z'wqji'tMdڊ CN}U/1X7lK1[$c͎a-b[(f||meSOvW%9CzIXtp8h%E%n`(vO*ε}K1 jbϕ[xLEj{+{ZBzC>PW!qMoHII|t\Hdd/Ѓ!;| !'EaNضҜQ!w$Nk@o:ۉ$cMS-)+`tQ d ԃ@V䂸Ƭ"'P &-KlЫG04K9yu0ZЄ6W B:<T\´%)l6 ~J3XY=scю- ^ϱЙ+Pzr;D M+ Jk?՟J ynΔWʁ4/װ6mZ;s׏W o,SpIqz+xDBE\B.g:uY5|Ue1OUޑ[0HUȳϡw|k'T^L(&YFgo 7)=Z-nI,[@7m Y""S !<4Kab9U;󒅪=KEEZ.sVt8EF09ommSZH >L(tW.^dV>̭BWжtDw]4@}}jSzJk0ayŴwU͛4[qKySY# bp<-܎n/fǒ?,oiR}@},9ٕ=e э#j[/΢muYM+ e`%  DtQ}yv_ʤ;.? ?<|]Woyr˔=XNs_PsI3O+3ƨ5D6 ׾{%s' e;ⷐY𙵊c`elv6]l)FVS^,ҵy)>^x.JG\^zAEmRGs|7t%i̅#{r@5 K]IgS¿yRqJ`ҋcն9N}5 sa"Az[_%(I[w,ps7\=#Asڢ:uԯΩ^y%M%u9`onP-T9 YDj9;,O{jHbж:ٳgQn pV^)2eЂGʱb^WsqC만d)i =L g~ӨÁ*'/[gCZk_*72)@]SaE'6(z Ɖ_w ΦwKp_$"i_&>:dfFɞ̄Bx_<ȫ3o8;~G x qc_ "e!$H|[k5;g5><ݺXw{3el/p, k5H/ AWghUn!l )#raXha$ 6tȂHNr3~ qvR"O(˂NzNpJޱ'\.VKr.EU|Ĕp (UvLd&!({/P KݛfŃv̬V,ˮ]fGJŞQ+P 9HZ2LzA  xjF'ƛJgqRҘKlnjի+| jQ!XI*:!.q"i i^3^@ R9k\3DBr5+b娫{p7@9kʵ1so̽5Vwu O'/ gFDDEY5E}܀g(cb1-cu>M#WbD@KWOyEäa-Ag̞S ڮQ XNEe&¾yt2Xn2F5|ӱ뜨s ݑ%WCij: m_$P{+jй-_b%Dv'iς`/ %d+-A壮^lk pQh0^JK\ eYPNT魐2 PQա- }HO,,-!S*+îCcY2QXM!WmK:) %@^}4'ur4F >Ϋ2`cchDxisѰB o- X5NURhb]ECn3#-աD/rƚN\}+Yz Hqjt_,tJJ jgx_GMcȽN[tCB %J*׉P"z$R/4z՞Jvf07~W0wZcFz1wK OccbeTJ:#ʖ":Zk%ydXrT&@#*h?9~}CCR!Q_/Od"q`/ƈF71ݛzLj)%IRt< ^>C lR8#$|Cw4LXPoMSR;g2m@FſKl7A2שJe"`5bB})E;4n BbUaޗ0%T@vkg5ɂ h'1 Zc`W.vn>RH Sk.awO\Mr) N2"GߟP4zB?v Zi9w"b31 -e˅6PCar*]{Q會=Q2ܝ޻/c2"id_2[iP~Wnba{C[0#"XW̜|~Wl`jpdJI$B3@|r B0|W$J4Dd`gâ[XQkhprQĔE?ߏS5gEMy^m2I ϛD2Q #}d?'_mXQaӜWTLj޻_-qE yM?J +NS&f@e339=j5%{ig 6 >P`s %%ği._^#OQarѦonRQ! !~4lGoֹ}NAHpJCG%N?ShvS&h_~=y&/@!, |hklS{\6JO'(.ԴPGe؅A؋t*Uu 6"m򵳵4d pj;(ߋye_q8׼v±->B93#R\R=ܩ3AE5Nr{9:«g#D0#8)g{H'[=M,\~B/ t<׊>'lw4wF qO["՚|aYs B$?#eUnUYۙ۱O:a^:~6l]q;g}"5_@yx̊i_ː|i %8_;70JŚu "GAEI hVYNWnُh|,XHKS cg>06M*R^w}gV66ml?wڒddd JRFgXPIwʛǓ5ẃL~3=2a8dUv8oaS5 S.UV*pm J_o'.b,r$ܹ+3BL'F,7WHk,ZlJf1DyD>^(9VhʩkWoiZ¬hj5ʪ#V:|&l$=,J4&7*w 4'㝐H7rZdy fnZgy;*)SA@бL,N*RܪuN^DkV;G˶O_'ݘL&qLz|޻~"e& ̷P1ǗbFСaؔ<䨞1e,DPH ե"ȔzAKL+n? cLU)Xe#uy65 hGC/2 h!7Hu Myxef\UJkWS e,؃gdTOfkHj?`#FSƏT?[WRUς/͛: <^o% W>0c5y_qYwx[|*kPjUWR8V4yt_ȃT0g"pg̯r^]\,D5RVNc.. 35mP)/7uh =UĉPy^a{COVMft(iҞt}X_(b>>!LK/ٓ擨j(Xxv<9?w>mim@x!$ # e[xqw4kSڂB+s޾#nጻ ~fUk3`y\2Lv%WKа8&̢uHY.hF߄aZmHfCI/KRj)~°i(^Jo>ew@oP"Rߤ\8yD2fSHcF(J(?Bt~"[3Vl@IOS12Y~:},#SG Z +#r0ۂAhБ0-\ G1e|߈dx7CZ%[9<6]qrbmðU`% ^ypUWZp]5 .n6v⣍JF^|Jtr'`d+Mt@&hpJvtM#.˦G%i K]e]M"&{OZLHrېV+ԫ<RY֗msT{CYp>U&tmWhG`i̯M?BD$*{2͚ -i|FBR-tֆHù%= hj>߇,8Mepu9e엗 [ydw^9TyhʐmPG=_ԈIir}a+mX(90b[Ȕ;..V MwiDD|?SvYG.-56q>41qcyV]k$LQMYfH lj-A;#ERBkO8}31",k9J*1=;}JtDNmt.G äؔy`l0v\y \ ]Ku6: 0|TUSCԐ5R0;0Ut= >wt|c'"Rv7u67\dR )wWnv_S8n]8X(OK*%3wW믒x|t*%حG*WYHm_Z+ɞ,>j/X7c ~cR;~I*`Ζt{mu0l$E.vtI ZjZ2zJT6\&pӁZC㗤^!4P`xp-q6R 7A"ÏWK. aK rwc7< *"b-ikDʗgUa2zsa5b0'ģTЍ>\rJ#=7/ m?Uޏ.@:(Tbpam}3p2q"PM[ $a.S춞q?8,L{y&N縨`+6IV$>+N.zVO|cZdӧQ5 bLnm ߸gB@w%i9rKh.VA¼oT\Ó" '1D2.Rd dCY+(7agȁN%'(z{L=c{cX6(#ȃI2Kv3Wiz* lCr2P7!e#L.bB)8a|t> HڸSͨi3$yʈNl(RAx"0Zi78 4}D(fd6n&V72D[M Ыnj#mypαS-E !dO U;A@(I%R#d=f8fsm*n@L]2]yo(؅v/:V IDWs\"zx?x2٠Ơtu:3b!&G}N&քyNZ=BX@0v_\Yz`[ޫvͤF-I)g﫹-B%xЎ55N4,f<k)Qrh? m`8-ө';9!C&oVz ߊPe;G@Ķn˟b~q&܍>XW3:yT>ETkvu-ؒg(@ӧ4TxS!Fb ٹu=svGZRNȦ."ȑ C}QpnτG3XSұ8Tgؒ )7v4#P|kY÷롘w0םl_Zd&9܃;vgOt%0bzܥCRy"25{ -pe^h_0|? ]LpFWmJ'~`zrIcuniB9ǭv/c=v#07e0^1XwWCYxUKr"1Eo]Sͅ/Ўn^[jUgtrʄ9TQ0g!-ŘN:N&&$@-Wfql@WZؿeq7#Ҝ^p*=A uw[븆IHp~b›GO"9Xoef m 1+OW &x3wİѡ Qs+gybL`Ր6ν^\qJ1:ʂf"ifƼpbȯӶ#~3i*H$%rQCPBW*rm *#NxhY)H;E;a8u^;^7Z<$To=~[٬wvPL$rQWsZ\&͓ռHe5 f_'kHr ?kHj<֫IHK2<&JѦa5,*M9~>:>T.AGGc]D c# 7t:Ӄ.| {Ϩdhk}f.B;}άRzy78t )ubu,58Lig['q'9@78 a(8(RX\ +$$׎A aT@rq zW7pCYw/:0NyΕ[XKk(g\O*M`g"~?g< ,kV`:r͏ōAٕxg+湭Х7XF  @[EoWK촺v!|ÈU.ZbO,#ri(>=pUL|$X٪Q!pJxϩ7isu8^6VPe*QQΎT.asC1X ?syPԽjM.y IuEar81(IעPuTMpzKz.ݢq PMHGWkŤ1PD^ږZ47Tf'G)qׯC`RJ*l=Ќjme2H≫?#9p P:2%-|R ٜ,պbzoC_=f u6[lez`Ϡ9pLV&`u$ c@/ش$>n竕D6$g1& <_i[ =ٞ$PN3mO]O<"{pp.IQ6b#\l-ҎqB t6Gm^oj swNꣁQ4AGGOte}7pCw|z%.x#@[?UBX2o4pNCle_'ϢԢSR` " JK?KEFI3裏ێդmGChqQ\ ij1W(obZsMbQZ+/[N vUP)HI{͒k NcNw`0e:g}ܸ8"Nr Ø9brP /i;]) 3{˧ _I9%'iDbB1n ˅+;F:I&D2*`0GS<9O ;5W41 ͆HF/o(L_Q5@u06[>-&uCԆ"hd%!t2(kD/;׈cEO 9 8fD$ ګhN(!kE" ;c*cmoƞˆ.5ՏUDtRz-z#Vk<`??V)-R!>q"9r"< GR|l<\>b$xiZbQ({fU&B0x̓R5$0vXһRv,i"vKǖ/kS";5;͟2Zs28kkXX-Nk;}h5A̖=?(齊[ʼ=^e-;纺؁ϝ{߻*1J/GvGopTc:=a1m;MoG2+HP_j4^,|h⩏8'$B^g n۟\~XagM2jC $رk=#Hp_-=z*GݍNWNxrEǸl̀;U5Džv{mN1X?avBߚfzq#©a4ǍdSmaL[9c !˥gs4 ,bw̌i0mEOG5O~^?7|ӔuNS' = ;ocYk&':E{wx"3F(2* rțs?V0$@bNd}M?| +#8}m \T _W9[ ~Cx6\6=:XC,S54zU f1 sΦ%e9>'d4C E]yE6P\68]*p Ec2{(v9*rIv '~8D~y1$2>is&o8Q)g ʶYL~j, ?;)YoEr1~u}aI5jv;uWEvyū3␰-uC/OVpuNsji04ؽ=jU~3#10Mڍ"Gv!$RAXXOTl0Vg΃  <،6glP|S1&6sf۲] rX.N7mοP9_9ɫE9LkNp䶂A"F_J{m .OJ CXxܝ~;TXe%uOFa5WfXȋZӽE DCϯ%xz<v m9*0>9Q"z#!ѡX-#O&Ъ&|E/ eKl9~F#{|%cB=nx4w1 BT˽ٳJ]d); "$0^v¥qT e}9R7*nëu c VXW!1f8+bt!.?"gݓFHjH/qRyWcD`L/6?c"~!vP'\pdM03wY+G\xI<0ۯ>SzGAO%;fa:mn"]@PQ>_oQcOҙcf;Ir 몚kTpS) cڟY*Q*~7AB6q_3[/>_UTÁyu~ea&x qYOc1y/䎛g4 ,TY:B,U_JA5N7yR(B[&Nѕ{-ؿ/T='nXRHoh-R髐MA}QA)"Z@͙2 EOI=%%evgoj4y&)К`ʝP_j!ĻN <pm,1{$9H!3~):Z./F-q>eߺpMNlS8i)$rF τ $8Fj8n:JӂˇC-v ,f7%K%cfPFڕqeO,V7M]=Xрbe6SRHt}'J_.MSOe_VcKAS'P'A$#:׹.x+}"rwvn/ v79p/tjK|uu4R-L_!X]ϼBTV x_"Lc0 /sv]6"̰F""1빫+X]:w;n8۲HD%e$IbgIw1Ȩr` <țQ7 e7Ct{[XR?G&0t,3D{W +cҰjFD$q_/t{:aI`u謲5׷@8!ᲈ>_*/k+тD97Zڟkդ^ɮL2%3T 1rZ;$dvx8@ 7@Y -2}&n>PrMcr"-܄>J:ęw4boa1ט?w20u] rA>cJ\iI%։z;Lx#vP0'HbTBg3 aj!: a[ajxƎ3++e\q+Rϡ8mwͫLkl;(R~ |RX5T+fph&U+3j5t_CZ5Slc/zC"Z@hEB yuf7@4Ecf>쇂jaJ${)c('S1ԑʂM%izQBR#gK(AkiP3Vjdǡ掅kYg*mH[lcZ̈́ßz@{a4$l}_| <{$WFR/*-D `^K+V_EѺ1R jzxvT jl28v+1J c25bl΂;FՔ9WI'RrF ̰PG[?`usPnCllٴ]9yPݼ߭9QSpqpaJ:XhuJd㑫j`] ,*  ñl/rc ;>JO;Z#8q $bn^0Ag '454 [qDn7F&{D_mk.`wbڬ ] ⍰8 .< |̜Lc P,&Q3 np-WvrwGIۜ1'ـ%֮@CuA n[A4dhDCj)b٢X,Mc67$ޫ!r U}5~hkE720!`qpuοGqrk:告 emL_;֮ ;VÁ(Ie/$ oyr+P?L-:+V٫9Av}o|KO/;hWpO.&Nk5b g-p"+O ! 1)kA>j !Zǧe !`cT"eӷ<ԓC/Q'v&Gݤ?pѵ\->A_V1ӗ-? ke)gnbc#>-N+^Tبu+Au^.7SLEY0$v֪Y0t*" bێN[HUf"ǰhO_I45W1 (݅V(CǞfq~KOOm[\~ {)ɄÎ}C C F%ALFMK4vVuaĝZ]iԦg}#.g=^u n{vR{\"y,x*{vګu3D%WZ#Wە3DT;9巎Y^@%vK2u ̾4%z^D&=^pa{WNFWHBwBx-]*&Un:dR{paP@yȒF ³Oqն07:3?;XRJ]Ȅa7(Q.#ȷXsq,RT.tI]LD~yWssEO}%Mt^OM֖Y-@f3҈IfBQ |x&WDY/Uy*)I7'5F`u$&4*'wl!*Nn{-gA*C93J|54`S[oe#TNO8"E! v@B(Z5V*SfJuq q ,5ͻU4r<徦Ydu J:x.e2 !A PXQHI]'&`ט*MEV9|pޏT3 E=?}cܝUeUd JP1Ѣ$eio""YBFzZgsrFHkr9^ڿg{SxQ>H# YaƜGVuˡ a}MħfQ ` c3*z+La?Y j!a(hgD0Ba0$q,'mxk7B/NuXNjkOs6_*lD'V#c4 J)߸R^ #kbh{5ZD2pIVFWrW3a& ^i&J>[戒N*Eˤ]ʹ]פԝ'7L(Aw覂Qht|-/tm-ڭ56u,K-Ϗ L{4$օ*i/?H8ڵg3M;1ݐk';e;j?nK7EkCɿHj8Va/oZZn޲AV0W/i.Z@U 1L鉞ZxoJ74SܨƁ F#9|Fss}} ! a!=sp@Hr4w3Ɔkv[VJF䟒r 7Z?ȇm@J5VFҨC>Ӵ ta,9תUO*ҮQyXgp!+<D(i,=s{hb$i^HeY *4rz4(rvk1#?ĈJC2V4&K|7<ޖBa4m]輌N*uZIDÀo|.]WqV.Jf!<'' U7ݿOuuFx^a_Zs&D(} c-ikm'8Q`;5DTCX_i16֓92z(ril ǼXahl!ĦA8h~e"zϙ@RGc"h͠nڧё&Q>&ԝkN78#jO(wTծ ~bnK2'Tbm˩}pEW| " 'ǧf,+EM<#uHcp[WzakE1%,qQmN.‚< ;ީN%$Pg&}p/Nck>$ Z&@BK?b`jZ@-D3 RWq`2ynH)|cz"L`zJc۹V-b +!\ʺt#כ/ٌ|Q^|DFh#FWg;GJAc(Ԧz-FcQǩ TىxK"e}0A)Y-~Xaz 6gV9Ps7c^wKCV=|iEY/?bR ' Ĵ[!?E=^z5 "䞞vGaMNEu"vчL[p =kEFv+/UC\;C٪|L"./vUdn}ʟty D&X8Z=[R 7hB3 gB=!e2~ WVI ؖ(K# "m[~v߼j_@3rVGYFC=k27ZV|z3QO>i4QLUݿ\m'eVr=r\-z3zcU/~2]nLnSH8^xR}{PYTóTqF2OwfGV1%+:kvU$轳)D**Y'we<^-~@Uo,+San)E4Eȍ]Zd7.>JG'yM9ݶ7fcmvտ 69yNEa6) "8~P-3THg CkH 0BR\fC;R+6ɪP1ӕA4(C)Z5Wt.2vVN܇Vׯ'y鹌38.^j 8k|,ae\C H3Ǝ8c2< ai]\TܴG Qf\@bzIȁS;y H+1pyw޴ܲ_h!DDJ7wwX7EjvTI# 3$&aΏB%^ykfܕ(A15->:*|9C}C8n9Fcn=OcCq!*,dx?-oR\X&<0N7 !UA&w\u_,ui/JnJ8 7Ƀ.[ɘr> W#ʻ%o4oxBRm#Ȁ?1G築4}^-s4`۟#6JG,7Gk?fم#G!]BŐ=1EOYߘ$(zJu s/KnCF34{CPP8rLЛ%@W7q\2T@.*\eF|ZNEyfa s lւ&3Yѱqݢ9K_c*m)Њ!Wk=ebey yvY5.I &[8Vd@wҘ"4#G7pCm׎ؑmQ`'Z_ǒkE37D劖rMtݕƍ#g7%8[ ۄJ3`mƖ _Gg3T?_'R([*yƀMhE"Q4дdpV06 f/, ZV6&Jm"yc 3cU u0"<@#93C dh E|WYՅsxx_TrGz| 8="Kb ]o~!=]mfZWOS'T48 ?={qO֫ʤ=8|GNvK짺-mUMV=$JJF l:qDz!PʝJ#)MkUB#.z ̊.U)B- h~۽lU!c (ۼn.<;wh AC2 ĞW%_'"~P8!E'u.C-C:9A lZ!'5 ш[<…9!_+waܓ~M0$Y.rc8H^sU!6.ngЕݲ@ My݉Z(ė1Z#N~A EXt䘭ǂRi;{)=Fvu@_Q 'WiqݓDŽ0הUMZd: =Z^=3Trp;yOYڀ/GxU! nQU"7`tz\c%>P/7l׾F[Ncu,w(TŷJtINPY:j$c `> N +G=hTeRb4!ClVR&?! UdaSr72K )J^O1alտL%m ! JHsׅpX܈ߡ.hrDwB ^9,NFA|K/ <|shv ^W\"4LZRYJ&<ܹ<* 0/@o|rrj 04INif[6sd,+~_m{5\FRtB@ g,d^A`BGv3eoJ)E&3#udk9^1'D-)>6|їOHO},#.PH`Js(VÁP֏2vĒBVq[OWyLM/ݜ0ky7V|u\tybiY-dJY3?߂ħ*v4)4 D~.3G?Q&"jj P2T GkvaxWHO 6%zŠ8 7ZP <džNg}()\5$ CI~1T1)&~}H5F;O8cAq"<[aRLp\j C#^خ½ID_&r𚝁j1=4wQ8-u%Р6Al\joGF6_M$Ftjg_s~%WQiX~(]$猗~[ANޭnx,}՟AHC0m)#J[45Ԯ' i1{̎65}2񐆓1E侘 +Fg-l9Z >⃠SrVCn*~Q ߇:\$MwrkPs+Ä-s  tyJpݜӀuFV3J ay(!TDAA 51X;1EOtR=s[vr]!6_ȵ+4(ۃu(*!RjBMb "1pdRڸōٝ D{=]uK qL1m Ғ0c0,t4W*qK_M-\ R]p]B/+7NXK򚣙Ĩ}rb @k`9$4] ΅l̺q혁#@X8mp`z' \I7ZcᯫslA,ؠ|!I{t(9F:m\ÜJ5xA!"MrC4oN) UBqb`TJczc3Hqy: 9ec!%q^HTٚ8P{v pr ˉmx"kN>eGM%xd"%,n'* 7qj"s\ u^0 nxء8Z]&:oL05R%=@)fo R )SG0WtJX$OE^e;8) ^h' -X(e^op(#F%pd0vD/sgV`@q2(<=\w/vثqSA] H,+x݅^Av6Ĥ)18ا}'@ä&`PR[Z ZN趘Js"nT )chC{a,-fvL`c|O()E:)2~3)ݢ'H B$(٠?y|oD01{dstJp4@iUwvN^DPxT;(,EN)>s1*g5 %dx6wE+.iQHR~h} 2;(Ĺh~\f(ob*Հ]W˽Q1a(Gtd s_?jr|xgH |Y%􃏂:,(GOA@pɠ5`16YX =B:ky֬ҮFB1 'zKXbX @V[$I#ts7;1UsDEUdJ v*O2Cb/`-(LE`N =fySWxUp"OQUv(:d5TAhBUq8-/ ~H@W? 5J =VxÛ0QAyZmY<>+;N-'jh/AS|Y {M+^nػ'o; oP#j(J8]9s8Veqp_|x?D}/&V`cG7cOs&B+eWئci"ww<;9D Z?^]P^AslDugF'Fȑ&Y?J1; MBm ew4d8c3({`N>fOh9`6s;\"{ _1 \K(e-cِDe ٸsߟ^<`gi*rj`w9G̑.RmƄCU$m[{<'.XʧU|C-<] #AEWVPS^/FamchJE%C٠Q ?Fj?m1+]`pn#V&,u6VǬG֒Qx}AX䒄8r廙i`}t4z~L3B5X=ZZ 1~Ϥ:ת\#(KMsPŚ'rVZ/o_짙.p/$郂Э&zcdf޴柴:0T$1?֔0*Cb]c}v{&9MYqs\yrtg+D9>k=k\i{Z4a[ioHHOs3G-4QrT4"Z2$qQo')0+9Li_G }y" i(RA84R(6|7EVXJ B;AHcgZX qOlExC4[˲ۮq+ji+xb $Xfs#-QT[|ĖԊ`fفǻhEb%5jϩ31OGER0ۢ~C|Xi%Zzײ+Fb U P%QyJ|sw$# tuKuٿ5/ t' 4!JZ1ۄ&{k$Z1

! 9=C{|ػDڸs@DZU݂O bO9%͏`Q.G9~S`a0Z b1vh8T~w*B(4'{E+KE jʼkqlrRk͉On Aoo\܀q)b5関h)*D޶Z8\m <ckNt?ڻP\qyC&/T~BķWO;=.YdžQי`1I.oWe*Z8فY4?*U]ٸ!/1avZK5CzQ(G(円glf/&}4rz~>r`3-';)Y`v+*mq>Fs!E%ZI"S$jsTL9oC6d[û 4FwdW-Ψ_ :\;s+'>9 XV﹧@X&EhAq,է52\Am~ri4 i2;eӿLɣ[`Ad35AB Fi3 "eEkb]67P l7y=;venOpSυ@ddjs7Kc%F}WgfW͞I`;hlgf" OL0Z})!Ǯ~؍ChY%PӎB&a6bWJ=2CM_K~APRL`E蘮(t8B`f yi =9*o͸'& LE;FL)($ /lyijCE[=YUC:0Te_ʨku i說hJb:u'Aw3‡Tv6QԵ7GkIq(00w,ڤ" XV#nN 2K_\LT*{)>yhl݁ @,"H7/Xxɐ/?1Q@?~l&ٓs@\؃Iϣd=]ugg"֠dET:&i(Jqͥ``͵w/paj f|f(*yFW?e2ða)vLkԫ9q yϿ̕:[O8)J: /R}!W0st;J sײ܂%YkLb>mJğFYDc YɅT,oO1~)Ķw$jǕȂ,K fЩvU9.ϏKshfBc4ʇo -)T ̇>YeOa1{$jFۼep j h GU R#'ZRez-p  Kѷ*2ueٵ ܩs?LX1u&o8UBi+v%n$Op*w2Ȉy/y\LJ8_5WlII8 xW;&iHeNHJTL62_Xע atzCӍWq&W,Z 5D ¡6Dž`y&*^*%Bvd5 {T4v3[6s(#٢+шv !tmL)~O`դs^pfh"\ʽwU__ =Y|G&M5tC]ZfzxЯ)ɓ]Z76CϔIm"S%={/OTCn-rEQڻSb1t$} [.c=aTy? [MIJul'~7p9}zQ?nV 5$8+gl?ŀ^nxDbc4D|ؕn=̖mUABV@ JFoOjٰ; ~;-$?jnCC1 \=VƽY6疗6{X8ANG)`FP,mY˩8BDVvq`.=w $wKOjWZԧy=ִE8єzg`V Ƽ Ҁ~+Y=&.mO*7FeB# ,$Tr%Oirw*1CL;aDr+/3'{6O-/Cs5 PfE''p̷v{̿RK,N+B <`i͟ScX>+sד8\靾xQcp T.ax?7GX(‡kap^+gؑ_,*\VIq(j3z͵/al@6ݽ!],P.pb81OJON >/9iDY+PP0cp:)=dJڂ'j <1] 9U[PWd'Ӆ\dޤCiº@Mst}VŋC&j=o~ŵ7O˜I4Ϯ!H-5vei.WT3cʘޢ:~۞ɑ:T d,?Ui!6G]Ȼ\S~: 6!o ^-Koi-Ặt/1jv) I2 )=O! eԏԉMYslqlԠ3uud.9 ޘTt`]8sAX?iBX@ë{:#]Ϙ`<kaq,(`S!#%#F~Lo| Z#>6Ѵx ]tNf6\jA"gB Ң>LLƤwҥDY' DJ"MD4\j+V~bVm,`Z(O, )S6a*VwڜbS&v0wVcpoRK &G@Р"|[W10GXWil,AsxƧш5]u)a'= &NAzсUg|$-cLTx3̙fj0[ȉ\ެ0*E| t">C˫:,րPļWP gEF'k{*D[rg`rIS_/} &OMrS ­):޹j>;/$3q9Ip5yBzߌA;A-:OC)-vGa7Cspf}t :|1 gW\Y Y a!@]˥QE&N)jI1?e u͇TiO^CpZm-,\IR,L[2W2.oܭ߄@΂MxC6D3fG;L}\XY4D};Ae `: Ϧ({@-U<^~l?,Vm,x~ٵ0s :?_eoKfѮis[p;%@H_N v$ot,BFx'a_(Lt+t! |wjjiqFV 7SzECFY">p۸Hω%mv>F7`nruI?(ǽ% 2wjmo("mLAoΗ(9.L>mOػV/!kˁ7t(.fFxIæXD)O9:{]D&zeyԻ{8ynCx ]u܍Ӈ :o5\ʾEi,AC =A !clgXeJЕ~ΫQV ٚ+8"MC!3NyyRu_WW?n# gnv Уg w۠h&JVQpE[fcHrLq݆.{&: [NFBh+6<m\4~ֱz╣YqɳVUc?u %`jE#X^fLǚlJւ8RJ==^EhGW'~ϗFe͘ï y^AH&?\\z<\z8K*7=3;{b4̴D9CH=T?r#V1WhOE^{uJ&YPdRЉtaY{ÞCeaNRg+,BssrV/倘/s5vJL}}+DV?Od]bEy\ڏ(Q ;~pjf t8eghffId8?T$C/cbS$i5ސ1oxd̶PmL7R,JE`vsueS%y 7*(ӆMzME29pӟ:?b12[By2qt%zy%?? I4꺝LDZ=/ (( auY3fKmղ߇_ʹ}2%9fC4X]h`3%^=VnP[c<\ _{`A@΍\S2#ob@';>X%aZs$*\9[̚6P"?{euCG{Ӻ`u ̱`4̸7j+g[xH?Ăf8 .mvH7%j iNBH-9l) }cIX$j#'M@XB> M ͔gjucAl]Yz))1TW?WgZnˆάk0+gnSa1m@aİmdRRXx ŧeܿpmuߣTL>4 D#(2Qbؤ͚RL|}\q73'¹[ EwNšt_8ʥ^T($g.&+Bmϩ Te{#U,gGךwl84AR:WPĎ(nl87qu*T[At&$7S^ v8r6t_Rv?NHzoDC *7oq1k6=9ŚE+XU!&Œs"p& $sMT̃T.6Qr\ડi|̽"ujg^rYJS A "YAKf &trF3H I+հȱp"{2 QYTؽ^~X"@Hpo0= R2PHƍ?FX?P66-ZeZRنkH/a^}i%b 4fMC?]C~&xsQB`x4m`}#J92)EayuCr52U> 7%3P>g0P%f"_'3#\L5k-6X~>bηN۴!N ~6aG**e4ȷOߦclH)AyxʻA,02ɔaw=%Q@R_z<+cWL&:o@-|[?It^+H߂Z%5Cyl6%m5h(W961| NTZ!13<s.\8‚oI]]fߚT@1/9-H k~ 9|"""\`ўw bOȗimYzz+jzBɹCB|U>|f-bpKy!I]CG+a<ې$@{c]IYPaU,%O'+C%S-cRVBZIriQi68bk]bJox|D,mGCِh˒ ǰLO`UdI](-˙*i޿v4Reo|HYp>#{ !'s4)vXA.wە{~4 w\CDTw:ɟ}Ç0kzMPp7e낌%ӻ۶/W/`(U+zKUz2c?P\?pɋAyuѱos&]y 6 GT5.dQyG,QCozROX*YTA"W,iFqIE;'}f'vb/ #ף@S7i=I t W[*zdЫ!>wDRGGWn"#cjCal#١P ڊ3{,0\i#3R 2=b|¼pѩG7Kp΋Y > C`f{%NU,SUhh_׹\,[p}4࿫Fz7ZFC#Ѣl -ީ;~5f`yYZM[[Bh(cWLrUh9"/_‰i(GPz--U^wnz8<KBm>p MNn{0:RAթ Ӹ#K}{L ˸SYd;bq4CY-ޢуOC8\M|E&[&/wgOӄAY MgMJPz.| v}GE.۔ԣƩb4Q\$dy LU\7QYrKMѰR/s^.> UBpD(H!T =?:09]&>!3ýl8-2[rh5UJE"jrhN-hJ£rLqԗTreaԲ-2?0."ԣY:b:MwY<&DD|.eQI!.>x#mB2}C:;^gEdA蹢YCV3<"4ɢVtܜT.`%kR(X[m#iݣm[L*~k}!90Ruzv{h1h֠m~68bLY(iE:BQ&6oPoeU2.jepw r#a5 pbB5^_Fhxp (YŲzXޤ$^t=n~H* hUP{<)vǪo̹'*|[$ (W)zM2yR*8)P:AĶ,\-v 0I74A:wℌ JC|#q܄iH۝[=ZNLz[SvG"1~{A`u@OPP_}o jV^dlMD,l*4Η8T0a43ye@Sf TX`1*Ȉ՝-Oerꞩ^:l gѯ'9*Ws8&˅S/v2!joܶv;gwjYvr.x 'ukz -sAcSC7_-TiG ԥwCZUF&w /I y*b)^nn='y%=i&rg} ŨG?mO'[^vSe /E~([?6;ȯG;<բ&Ki O@H[XіXUP 6櫮uB)wѥo=Wd#ɍuX@!nKEGQ2:zI1dDŽ‹ $!{H~䡑5Bs`Q話34qQr7)ƩE1%:J3 ɨO×Fe0+,zkΨ5¦mw@Uy'o#=g>; zhǡiv)o}γhmwT>gD6+eBElY I$lϴ YRZ$s+ 8\;ǐS)us)^^ygƱxڝiu s6|p2cG(cmdBLYv1zuggn°o}q^k( =sπ3$9B#^%,pƒ툜^1ow Q~bjɛb+SLD~Z56M'.ċ F}ΦP%]"dI !Mg̼4oqVA&``WX+Nr_EhD|*A0^B˓4KbPs[ tZKqНZMqzp^kUBy(ڋox#L>pg@ g)Nѓm:aByZRfӏMΚi@WhI||-̉`lFUر/y`#-t9zd-O[Ғ+//vfʦ^Mb;Hl*FCB_5E0L,:n0B1k/랷I[l* VcKLUH*X8MTΡ>/"5p(͐8֞X0驒GZ ?cWU$*RCw;|cÁ Ss?˧6fh;5g}\<`S>LqI`ctxd#;#LȘnSn }Zޣi}!k;g 눜N,®QH_E 7J3K 1\']OgFV|9eZ|3H%Y밮Cˣ+[w1%RY@fXQ4V1Ŧfm 1zX~_A?(&=YOVJn{kƏC9kF Yy߭ru뉣P.VnHMަ? Z+8SG6?! >)Z>1C_(舼Ps0T&O{hȺ](JjJ).;˽߽dKkLlh@UJidR1O]KSF>V[`/ Y$"3iJ!"U;![p=^whjO#_UɋSrZ|_0;mNwAfg+b6{^stJݧi+M)M?#ȳ% =Jfg'vQl3 ܁A IL6{ ozKqQoI+m(1O/p'@D7zk=&ܕ 5{ǶvL$>9{|TOv?N'6RLv MVe|ϰW9-'I)|Z<MxE $X$F'w)b$k7ף>ib1r).(l&m0)M =L4ᕮȘ.N ]$ kň`x2>QoH`35&À'^R߲ *&Dڞv_b1u# XQaa£~r"Eu`fm2*:e& էF^" v-\@({KEy6.q܆\=?Lո=<ȏJdՇ6$ C J"$BF8(`#61'U2 Ney"'%ܩIۥn=#^,lPvۘz\ia ɸS`q լ: 2&XĤUqtT_u.w\%`cS(6fMx,_l7+B t&A`PCRjZTθvoORnY{1NK!PoTIOE6HBjj^WaXy> I08R ÉDm sÂxc`:nqMl填2foHŻ<4QR;<8}YzD~*Js...q cZ;)$]n,I4(}΋o &x5JM t_Vtj{{bXA[r|)Aj"} AR~U"mxTjl;kN_48߲qCl%ɢ͆m䙐&C]Ö'ab{1d.!JsgԒU&[:D7( )uAhqdzdEfJ+N}w޺v)?^Y(6&k]%eٌŲV)fG.5.Zum9b$6@uC4mխS=[C?hLZ煈YQz}-tVghzCSݸyOc!6x5nGGݞ}K(//&Ώ5̓sؼ'T_Ґo5ƨRc$=g6V{E) RXCE_[t Fb{-wc]ieʲBbS&vH5Wk?baN;P s20<?,hl|m0@BczBǀxi bi<|Bx٥h_z]a -{'5ܢ *s5G"Bޅ؄![ޙ@V+#8`3G M27/rƙ̰nQ, 3K:Ȩ,u$i7K3f *A\1;D '\#a]9/<{^^jM\q@*(+0{Ľ\$ikoP0Z`uIXGcYc{je":|wK,2ֲ3"g ĬSZx<7ʖϩ.qh ~kwW &YqdӁ/]=Ƅ=CLT)hs$rCF4[.Q`%:۱ɳrg^B!xRD7ZFb%PScu}3ncBXbzG$w VoFs`W:GI vh1L[*lҙ %RrkӬ99ŌċL sP'(+>rWFԓzwj#]ޫl Ey ǒ]CGiC ZS J^z { 0%$Zj9_:Y~NwEU۝ww2׹S #>h~: 3U.nEsNCŁ!K; zr#s~Q[\<2>T$MavM۝pnD%d esNXͰOpv+(Hr;w%_,/-Ew-:}_]Ww~)*~Z~s;I/IoSC;g;&^жH @[ O:hͅ~^Q]1Ģg qIZP^fOJerMt,Em/knT~S!EbڋEUt# (^*H3'wDF]Se^X8V)wg 榸KPL7xSGFF[l&* l6wZm+o]b_;Ukl şQ/]$Z "' 3 H,>+q _ST[`e*78i>3b$gs>1~rwJ,S>2Rn0!k' 򫬨eQ~$ugj5yAܸ!sߋ wxo9 y~B*XQ>T_Սm'H$gb+T7 `Ja!NtOXAdk]]Vw-EA|7@X #=\2?2?i-|nNE@KOs %cX<@|8iZ/ ns%岦L{idYI|,IZа6(jsZYFI q1&k o*xTD4umln9qdy;0 kbIuh!@ul5X>\jTh<*!MˎW_ ?%"( -ԛ5iWcԱT" W)W?Y(!E ,0׿k]v۰qͼ>n RnFզtS,j_@d)N\m˙jrPZ(e[b `fK\hrW*h ޷_?!9\#Ag^E*rt n'Ď2)f|H etD QAt*ȔQ YtZ-?6N(i @#zX#rZ]\qٍhΕe;)aP"}@ XD$՜A2v 1/OjOHMj;* N,HyC]d#v|*H4TOκ(F9?;lES0"S~:h>kM'seJkoP,!OU"!f?8]E yp5uQnHb >mYn){״[lo#;@|:~y`50?4n1v'Hlك.”Qܓbֳ<-a:\#RDu|[R.m$; WZI$._[DJgFRfM ;?h;=s*̼Ez9A*kcw_ѶU 0q$ל ˃AwבCg·=NDq _q Md{S3D!#.$0C e&&< n j-Hn#Gvڀ`JC=H<&pTa90zؤ7WTFeE'cjWMs2ljU<ZGDy>K~4y^ 0Tdt}^CM6a`jL4ыaPrHG-Tk2[n)vl;穉Ekw~_@}tM1!<[U61b+N0%Y kr nYr5Tt_-I.U,|KAjST6kpblkS}E;k{?R!/왮FM<ۋNMj.٫B ݷ3n1_IqI7\CDϊ;sЧRpmrm3\mgtuӠXS(o; cģ +QYZ\LW"O?戴*p@'-OxYqGFkN#p=_wGBoLW2hۑ!{O&䳬$DRX}~(c(`G!dV&);:,Yo:@} 5 r|Vt\Fm4h1{9k2a0U_dp c6wJΪStDSD%zY*hڴ` !7*RYTu#ɕ h)i81@q3 BQW u71*"#,L{C?*!F6 hWחsک5swk^+I FXr+j2W(iDJsURR7?Rta(񰁻u;1d&Ipd' }QYr =Lj_9/Ų^wK̭fKEnȊW,r_{>X ʴ߄BM3dT9² Sc$嬨XNiS5ۓk HܧHDtI*cd@ݭ uSPImA9^7j"߲ olp[% A f F?q̫Egi= ̐z]59(`L$FęwwOO`vla7KJ*xuѾ%\+[i5/ԘnX&OeGu#L) ʬmX~3ц^ DlUv4l'mZ-Kq ^VxO ̠|cI2aV_#qmKbfM sqt8n z!Me 4̖E OڦCx]ZҺ@*\dvOMN5" ~w]n:fL{Z)QMӟZ~ gվGT,~b*{|c Sdr`ɩy;EEY[I)ݼ E i{FiFof,,%Z6׶o0['ʁ+"[@_%Ff?06Yƙ[xLgeAhn^Ç0V7M4W?CrF55L8xU4X'[…Hy]/TMb9Gp gK^mBv|hc!_[ota€ hm> >/.,Ұ~ !S X rH`r-kA̸oL~~DVB&)T~#kA#wՈ@0G&[Z-Grs%=x:_tvw4 .k^rptrC`\戀@x&y2{[i{`OPλ3 E2ERjSde@E5q3v:)+$a_lC:P/"} +'ry5`8Ub˘x@ %ة~I,` e(pT*42._$iv`.d :@+@O{61J-GXgW&[<wl kTY+zt^f{' z!;'1|, *;X5ЈԚ wIT!o1{i=|}vuʋ 7uu%DUy -)d3,pv\($veZrV-uڝaHqAK47S4 ; *9\ +Z[54+*U2CXQݜV:ݨ:F'k Wq(5H`ā~H~ ʡD&?hO;UȖH!?$L+HdA~^cNn{ݷJNX؁xli\4 u)"6-SBL̊?yZEqk"zPM|Ke4/g/O6-ߠtr7\{Jp]Lp]* x2!2 /߽H}|zq:>5wÐ9#I8RQe Ѹ1Bqc\ 1:rKþx@ɬvjR$JS001,_5{$/%롸EM t'Ġ/(`(,#s;n,yJiT)L58Dd]ԾشZA$!b d6ID9l> pparnYFGHm -Uq2ǠifkbʺR^W/|DM Ƽ(IW4&d7KҰFcbGSE\&+eb1\:D" $ _D|`]:o~/Ou)GZJnk_ׅj׌aCЊtm?nRЇ2߹EpGFӟhsʵeΐ*0JgSF:`8{mNYP{^I3]k.,o%Ir ,Oc;A"[<&ody/ 8\;ו9}ڳ _~/¸*ݵ]o«[XyyGA~P_/,?_'[ HLݺ37mV$Lc(c.2cO}!  Ay.eu&z]ݖS*Fdzm* c]0VsWw2H轠Ia,-}ϧOAUEy6J`nlEc%>jVImcǦl~*5r%@e!c؂7Ԣ(id|(q#KSw|=I@&\3(S+50(ľt{~ _gJCGQ.$7 UiάÞq|`v+ 08[Hۻh ,n6=Bf&,M|K/y8@"L V\g0x뒻LW1e1M$@4/ȌgU|]+,pnR- -ͱǽYGQIH\nX1o9 6p"L)Ea|A ɋ#!B_ƔDw)R.e?sQ jWQĿˉ$RL#C#Z/jrP?~G^uP+>4,~Y+˾ lrF̳PhE@E&(אhZ2v>6zf1DdK/{1}?;Kެ3yʪRc25] UF{tQ$A#M~ٰ1&"ew)@9lw< 1u^uP0I26W ކ) mbHb Tf f 8SIx+.Bf<5GypeQ: 74l37)1J|蕠*.?A^}ȋ-0DL4_ Tށof 29ﮏ?L`?` P*麁6rbX+[&s1/JCkȪ jNvmKZx3y:]iltbb& pq w*R ɠ(oB%)p'nm(!w, `A 2N K\ڬO) by^_ (+rqrkй!Z,!i4q8tGjL+FR2D;j_k%0KVNE8Co@مH[G:brϚrtj&kV!u-\#f<1mw\7of90< 1 o )/d/D70lEg,>|3;QDmKh80t&a XL lp.rq_eH }g;E~Kcr PLڜOR@6 >bʎ{6 =Iew6O g[ԥSF+d*+:)_ XRo&^P}Yl_(s`TBʡO4ex8֡u3/W yWVmS"B<9g@YE ' DŘP1k`iLS2ջj6dћ֠Ep UE*o%y;p*U4OG+MMF+Ghw\>ȫ.窆 04A:D* i{Nz*:5su!Le2|nmaťȢخio37/:C/EnQ5gÈt|Zj?Qy #S\8@ ξ[^@@vYz>=+53fySCM. fT>'azvP3 XG ͕beTV]U`ީ[8|Cn8JUcۦ7eb}fww8)5Ix頥6 L| }4)V;dlb%g=B4hfoYEz*H>`S.R%jnT2* 2OGl[qnFSN>%!7'Rc{22ǪƵIJ36Ǯ)^r-`xR#zJW,vH@!Zr9(/0E7qـ'~.{h#lr`bYLuMIgîN%cM0-[wػ-Wu_ _rC+4aG ĘP7x!5.#YM}R$TbԚm@t@ L O9?[ u)GT| ZNk2ϭ i$&+viP1 ulȄOT*GMY8emHߝH%_8RzwP(d%eFs_& Om 5[ZR1W LKω/6E5}Le$B0i㿥B1?t }阜SD:mZT`3z ]!gg+Cn`_  `Xo}<׻F?.`\z3u912<F?EtYEQ?k@9Ea)A1y8K O9Ex NSQxfUwѢ!lp}T<+C-RF DwDдOTssp gv*(EdM8j9s}\P: #-t8w fVqlpAvi2q* zP: ~rۑ|0[=`ci4DhjR*3VvRcP׫Ş.3Х@̖ %^+qD5*._mu,΋y"0Mq([:^4Kkfjd*z z-ܿK {آzl |#M$>s9RB$XF ixI欐"<?a<٠6;Uk1mZ1?<9bMP4Tam#H=cg"@=RaW ^i@#-V@Z"ۂQ"xfnY?mfReXpR آ| d\ яoEh.T㖗=X5.M#Z]z պsm,C1s(51U (^5pZ٘.ngaozZJ@?s aK&Л.]m5uAb Lv_'7Os࿄y^K -{RE`"b (z3I!Rexc[ \˩M^IٙaTK@dk 4><,|4t$q7`icY% Ձǚ({lRVnxz#|_#SF*SB KsdH0XO2G1S%זtIorY=' o.S;ư^ S@NFΒ8?+&&G/s@&0ծ#:œhtD<ܺy/!)VYƞUX$e*T'\6Y(Ac(4{}#?2/ڔm'N_> ht@pf`e ;kӚh|k,܁mˊ(xg1-6΍R1r\Bc֊nO."!y39+hĈcmҘm8r趾Ɗ`?At"˘"IݐDb(as;ƨkD/w-+uEh]{;`rF_I%8l&8fT-b7;xK!Q2MYF.$togUt4=xlI䠏[p۲& z`t)_Pu.1>5?׎m^:1TB\z>(㋃L 0o#"tt#i >pF~3. =e-P[)3nLfj-%%`/NBK0`4 F:qckMҦ?c54Ιe F1+T8j+ 3x < bn+qAk4Gjjt)_hr;4ESwsT1BUxy.ItQ Fl}* KhpJU(1Pz,LqFl$~F(-Y>23cJPxs gnYjHvj)ޒ$;L 6s ᗂ8h;M(T6JoQak2{NJDxGyQ(b?.I3 A?f!9Dz-Z~M^BAB,x3$՚13oNccR+NpVo0@D}nzX%r injtk! ْAIk\|p ,a|y> MY.bvwX/-"Dm"J!Y(X ŹoRd mH릈|/z(|h\1 [ <(DYmM(ȀhWu-z!^up=l 'ݡDx%G8l?|!܇z +ŝD]%}ܺzh2R zYEv VHP<3+Zؘn/8BRhcu"tRȝl!+]r^ 7^՘2?9 =ȹNY+RX5G- }p]]kQ N̠muh~ :Y VE)!l"c ׮ӏdI;ND%cDә7̏HEn~26 Q&'Ɋ Kv wHK%l͂Exdct\|}l.)*afӈyCuRG`h8S!#4CM"}>਻EtUHTZN<-z;\j"Z)c?a'W!G(?̙oGv:$2Qí0 ՀV'n^i!lu=^MߵN3]Lr8o-lGp Mdh䴁yZī32:'l{`O2ruBмĞѫ.l]eM%Nv/ş$amfxhi5y&- })d'~B+Ez+@.y䖳$sn:W3Ϥ.N gtHF+{whGUR%h=|`Ƹz7W0EV.đ#q ͕L;Rwh5a/O%!v0=oXϿ&^0Ⱦ_Kf @}m6KL-~鞙֏;SfjNyIAh~Wq|u+aM1-V+4rMԙ dK3s dټ+ ÄD^d=SWKQ,3ژ-1N\=tdz2ez|`M& wOd*<&2ѭsS1Fu/hQ;H|LWTJf9(cLA\e*$5FjRZl!na]u3K3;~/z;v9K/NϏI^&s" `Rmc)bn8fUVD¤G)m1ZT"K8r-b5F 4ݱu)Ou2,Hprmi8yYv[ͧc uOy VRg1ɋh?Ž~\ڮ+6,9{ ,pԝERwz:ϪޥTFdZ=  xyb%IVJF 0(Y ~XyH&c0v!ҿ='?8o6:'* }H)(=-EܐSILHzTޙ|8y!'vR=ڴ27H+PQ` y,d0F% qD.bS˥1X!z$ 7No["z0.-th@nfXп%B_  f Vs`QRQ(0NJ$ȥhIY&|Ph1X-K-^UqCkH2ŊpN AP5B"أ+o&W65hC tͽ/imQ`5[}#Wpn8H@ɁQKCD{pݚQBEN8kx&_" (6b=D sr@N.Hʥ[g6?X /rLim˓cx 6=$eJ-|AW[g>pܭC:0L2%@`'g\XvŜt1po{e'k̈XTGpzEp (Y2MJxqЪcu+C=5b/vhmm !6⛁BM_Vo0 4Dw=Wky%;~޾Ճd|7dYh։῜sځC 4TEsh~t7bb:8LBh lʨ]@:oFԔQ$QRj\N3(Cν '^ ifL09ASE.\jq;S#18g\ڹGo*|@4WbѺdVy}g\kMs?4KkiJ҃ O{, %Fc$2ڄMv$&.&kMgG}ĘFZhUE뇋cx+ekTԸH ̵JI3"kx֞Q N@5@Sѯ$3-Um-::Jm(aMڪ*V3-v_c7~BfS{A6]oۑDܔ/.A|/iuS([֛W*,NCf9]<'MZ=a׏s̬]hfdw7CCbAӈr{@5;SfWRY%_g }aP?A ^Z`A*aո+i_D&c=z4iS`;P˾h r#D>~Ol{X-o<AVTm⧺Nq !P_3HγT3pWB[mT%2b:P]cF:֞zُk9M lp0G/ `稅ذG ͹(r7OQ/ %"st@)r$:eߦrG\4|lc"RMAsl$X^"s2Y[3#)z |7m VezoIe.i m]N1Ԫ?۬o'ښgsF"nb#=nmcWq,4c !~A~j;qǣ @Q>;zGCt";B#8Ivԉ)q~`dz^ %_!8̊sraT٤;cf<䩃v+ n4q$,!?Șe >$QS@2/ҋr!QгUFD"*pl#Cz׳;u ЁDѨ(U'•Ï P ~OsNڌβJGiWk@ SA6yu`zK0we 'M |m_ŠAi4kܹ4Xe wL2Ou$yQ<Ř@] pE=RkHMMpn8h5?'뀼TҞ*4 ;~tI[߸Xo'eG8no:T;F]ZkC@z"f(8rSg~Vk Sv$؇.}Hf9veam: +N=3B}'E3bQLc:߷ǡ-IͣT2S~GW!eP "z{x1r .![tmс 2%z>32xEE:jrca'675o=1e&@)weRi^ÁjhA0sRC!RCh))5CݤCfHL)/xRxm|x4KJO=ܫ`WM;j2č 5@jiRL)VŴH Z*$g!\2`4kĺuP>Z-ʔrrV5 gl3l 2*AEѢi>ɥWG1~-/Rp|C?=!]|RhE)k+b<3u 8qv"?ˇ7{;kƚBhkews u,󀊄 C鎸^m[ag%ml! +G!9n-.6md`%"nO-P0mQl5Kx $@tϞiKy8_%cyBIJD+exD?AODNs9OU>IElNKM>C/a|?z`GPQDd7:B_x;x@*TF=4Va! (tB?~"0/K*LdkQ]7J,ɪEa2C彪Lv[]S_cقy薝>6L}>VA`ɦmc,oRrL3IXIZieV{_1~ÀlMUpw0d#]CoLO.~ _'1# `{3swUÊ]̑ڐP.#N {8.]_5l8XO){G`+\9CDd$ e|:F[P|mrjM3A#UACrJ,ZٙCP<|G{3%;}·O\߬38]FGDLafq-x&PwRo ^Hje)A-A`zdVt[)avА54Ӻ . ?!_ Z37C0k|0Mv?b8zuhzC.v|o~?n2ͥu-ho`}2&d\M.[j51O5{\ wҊpo; &D(?cb{Tu`_7TR+ΰp>"::8Yzi(S**A|hlf3l[Sr:#4vxFd! 8{G=YgĵMptԎPTިSݣХcϤOuE%.2{;Rɑ^h?eҎgpru&ި.aUNQZ.2\K;P-g*[u;;E7Kp)Y^JB{sso`V 7{T].lrh}P*mP\py鷮e4[jht'w8i>M8R9|j?=՞(Q I޺q0U4Ql1`tG1R/׭m h/{pHܫĸEö}XS% )ZڹnjQJ~UlWRKɳkIp% RwvJŁk?gmmva+Lx-O0 @\ZKA2 m$ u;8i-3J}_M/#*Fe8Aji9wxt~ Q%|\΀B2/B .W҈Fd4]Yd|0+^za:CO~;R'Ja^M`!# 7 #RSTȪ{5isцK/A4< 0+Nt_=Dn>/}ѭ w(=\RUhPl˾PR1#X> u*@Q*\5= r׍97BVWu%VRDž.AJŃ̍C{l1;RD?@kyX5Pod!I^h59Wž:q&Jm@U̇a.vQ'6do 'ܬxy.ul:_  Q3\ _b%*؉7ф>`}k&σMd9wl.h p#E~bQM27BDD1azD$542\SۣTcJ!{ױWWTZp篾%U`B7_):u #knaA2CӘݦ/! M%msLE^P'[],\=v6)`$>7%y7ױƵF@x7wt0ZH4z:pcO{s݊mW!*zW[6 V^K<$X k8w3øR˯򟗴O7TH}d5Kh36Eb8@ht[ﻂ'~ ʓ4~`N5#J e!<'G,ӭ7l-K h`( VX :\ث_GƲvRdW 6OBuZ[}!_՟mL[{ZH>6i=$E/$ɽS%N.>Os~_^;8(6F,f8ɭѢ`ګb{ݼL}+$ O+FotQ p'%>[P+ u5b48J0nHaNzuzkcDJ!H\ ӹ x"cLȡ9f9d?`uRNp)LR7CjsGg< ϮR *BsLd c/!ȱRG+dg=Yz-ƼEc~ٌ*p|{?W%h «1P'=)w&L/F6a[9.s#ðxtp&Ri"MC>PBeI^[oԮIE½5+ l;lBϏ[W)4B6 |Ŋ)l",A ձ>OwPҨ(VUnYALz`L){>=Sa)̸#&4qB@t 2D su;Kb:w sR,9#}HrS Dr9DC!N*U$LC)uؽfN; P_djxU0olFk8b u_+T;fon Y$!\FZeA),OWyjI' B3WuD1tZCќc#ePԞ.Hms8Т}Lié 3s wh~ N8T>5\Vv$f(3 nd,#̹&**I^+s'G8˯ħ|{FY(~rI̼wsşf4kpq16 6%Bꓓ*;h;Y%ZMe宙jSM³P0Ҝ>i G,z}FL'zs9( `GUՅ*QBz!aJ(6?%۫cm-ZԧSݼߏT/dUeN&~yڟ~D]g܀Yhx=GW@)Qh"d)uNw1Syҷ\Fux gOѢ6S~R j]QUA|ף]Fgy_7jia}H:9ٍVab*ن n3jS+_MSC 0.%1U]Eߘu1RB y25s xY>U+7@NV#4qs]KkM*k~ R6I86;U\iVR!Pt#?ormCt u3H02ht՞OSLau~C?]'źp *DhiWbW]'N/P,s.5~[da!'`.x YͩsE hvlmQ Q4>wILZV)gB\ixn Z'MOr*I3E~9G4DD C"TFG(GAR[#K {rB6>C- r{#e22&{\dbK#}嫙)8v3n V4_OhT(^,[J/J9ugjZ"DM Ό$(0&5uw}R0)gFLaN18zv | >O&Gk"vBz%4ia ]77L|SF>y#3|zQhn L^ZeQpsQՏ|t^$J.B!ɭSz\S%Ԉ>F+/EFB#nJ_ˠH7|av;@b?=Wڄ<"'Dߦ(oa9D-ϹgOy>-ZO)X<߶?BQ) @K"S!ykj7IHB (ܐ 3Rm|H3MQCSG@'v`KzI,0XO-r1KeI#=?]kWr1og֧~;=Uc&ISBImV<D*MIaKñUq TlѪ|h:,x0ă|S#q;ךyi1Qd9"(w/Ռoʤ ̫2%\(?9~Ӂ!)X.oS ,~: 0CQul/&SNqswT5Y㱁wB3.nj:U*Ҍo[c״k\SgYO)45X0\LFbcu_P_X|ȮЪ4g03/%;^sOId6ߢ-eJP̺6Q"CO-H_YzEQOȦrĒATerO3t'Ѹ g@{ *c xb(WI > c"17ݥ iCSz.e٘"cW~߯a9^UwN02.\ $K=H]v$DʰZL+xxזѩkK٬8HWtԫ b'k,M I-y*a֘6a\CU?<؍qt,.AgjU!NnB :/4\.&b~6om kWL`b5 7 &\i [tRv(ۋfO |Ral9?.L,.ǩ > ֱ9rkB5\1i3n9*$'{ReԉmjXF>"Aj>ݣٶzc_j~mv1ガ4DZi̚@i=L֑o8JYHA!:/ vԗ kLYIzP<%R)!w<8EI fAasoa:+0ˤ඙5CBKq4#& EVAPl{1&rb,)[Ŧ)d-3 =4Ev:rEN|ZP߱vaI ?RkFzHr 96b㪇n@B<$m_ՂZ/8g?HW[pKfWE!l+t=$U$jJ G,b%F8ċ¯vH*Q_^@97VG_ႂjz>#Hs!UjnK ߬CYQa>LW[j*1 :!<|OVcx䐆û#ixaav0 >AKwVsCxou,'T[eS 6h-Eezu!ph?2}WMn|-O:Nxه}/5yЍ ՒV~`!rʎ;ù"r\li)TYTܼ! ?xnJPSA//"_  Rb=FN5f ҵCXSP$wu\=LOJ:>RY۝SP5 SL?EGe{bnj1ąi/QuZ={n$;KK"`L @gϨ) 6q֝ayFU$ =֡9f7q ^# $4yequ<׽˲:[I=J9n<q I1hW=/0,G"M=:};z7Ƣ=="t;9F"LsMhJ7Ff5(Ā+<%D)Vh:~|F 8XA<`B$[)PO lz4!$,SbQż#K/9igm7?Gݱ~:lQ}q?|P::Q@F; ΃yH%( xLkذZ]њ`_W;|AY挧RoZYUt+0Fyu+ei%7ao`ln?~Q\L/H%fK'-="#S?Y" .ruaF+vFg{(oT؏z]S Eԧ`I=;elC dԀ5^-bd_"/tP.cL|]ZoЙBkc0lOk ,j2'C"N\ָJXi^B_RoE ̦ }m=üO%!eL,˺*DjhO{a+C%N6rS7 tG+hDd%znUg4ga!|Y.8s|ht(itz;cIZqn50=a+cUYLQn@o.M2) ?xCE$Yt/]a_*-Qu HVF>͟bC6h~ tJ4N9ߒ s|8)EL^bd>)`&CŻL"mVo})4fK~+G'S Laԁ :Mͱz[~ 8D SR êޑ}^1xy,T*HkӦ>3,&j23`jiI:r}*J鞔aⴈSJ\b3Q__W5hՔW:.,3=B4'yZyވ{Q [c?Mi Mz3Je6NrJ==j"nqJ3U )8($ljdeM[(A 1oT~'1VX6;m}ڨ _g]f&aNxV&Y=ǫ=JkxnKCs3N vfDY rvP~yX.E*UꎀB\HH&^B~ @Olc M8B^{iu-@V#?VwOzt{hƜ[Y֊ t [$P01#&0̫ {W^kPq7R3ƧO!j)̀pnb lg638Z |o<,␄OXUq5h2. 32y|٫A{ Q@ˈ-ȹbS0N 3℉"AʔQfp]vO\я]rqu)fLJT磗-)P\d>QuF]Pj7Hvٍ'NⶊPwʗ;a 6VMySߗ^ȸ4 l4zɁ$rft`% KcNHT˲?~g^|p+>8˻汊Z0)ND pz`5HIaнvb ֲLQXOTU!1dA*oGjĜ>; 5!LN>I~N(vĦ{U ^\ [:_(+nC(=n;KoNg8y3QRJ7߾ևbܬe58v+l EUowXŷp"D%M \B[<zM-&i<=>?R>5(y{)@2r\̩ CVo.Q܉ܸLkmVPY5e/ex\ f)ȶ 6T!Rxy-XT@ÿuХTChܜn:#%Vme|7o>+` Aw&7W#VG!\%:*u 'KRr;}}"JoPyhr3UjACQ3b2u5V33{tDyHʗjKBK[\u8VK ~eDWJImL5>n*VV?Qf.^Ad>82){κTV]9KՇy8A$-_Zq47_[d\*S?kS{ާ1c^Rk+J59:Lq[f»]t޺o+%}c*c{ZPOM\qJwJ1vlx7䏋4?Vh0t 1ޔ %]$E^xph{Vk:_~$ !P#TpgP]'o.),Rq GLXbQˏ\@ͣc/"W3u S,fjEivSGVRГ/[1}QF%u] 1EE&_WŬox݌.*ﲾ(ۗg׳5CW<\7  lG$vCM /qW 1S&6z3~cZjCN;;vDU2 n+̠ SÁ?Y,z\rĶ].h97h P^b#SD?*'qk~k(WrBhϦbSl z-E .R:+Ab R6cCũ< xTl,,D`@M= 7TXE7}EU%'& BekÕf?>o Y 8˹Y炱Y5js$1x@D5rxtwǦD v!%ҥ4rǤ%=c"!C5;rU%}&2 -'Z|m T$ +tlR hܣL)?Z[C,A}b^t3:u]_VyX0(1Qy>CtkS݉9kyxY\(!|?܃ 8̼<1Ul5Cw*!HxwF/b56_*joZYt2ا\_8 '1y-#WL+oCQh8wIaƄZ4v%Q\6h7hls}S;Y ʹ}&wD^O1:B6|yaW;bjMX: NeQh[cHW6D^k]nh7'3YL;uv sw nOSSiηh&o0btH.u{^ 3;ɪ7,f/[ :\( iIoZ|e )-Xq 0k0ro1fgUsSz[IF{kyDQSH,qxj5h*YUH]̉ˣ[H'}J^$0U&pŒ]@*)sxyH.MF@ՊR>:3osL„-y;|qv$p| 4"]ha.e_I1%Aw "sv;O0vc Q >/e<0&|NFۛid&y @{=T)9زC`r$I3lix,$s)!`tp>3q:RPc.;@_ۃ ()_Zzvds:C=\CDBnIWA_<) 溰~@"$L|H4@خi\Iڣ(^~v0f4lҷMrTVYRJa/AyiB.]pp!_Dxp ȯHA<O8bc>LV|ӚӰrFrpnU^0=S7'Tk=ZDi;@zklj kiL\t*3IY!\u$Zj/G p߻kx 4q_CU**lև{M"t6 /6Rookenvӷsnה5¦QS0QNx05SYyy''92a׍kdD"q`bmzQGP&DKZWu,շ͞Pŷ9)p$v톁wB~* )@?w"%E_eX‘ I.ROvw3[Wn Dp]~|Pdpk̲זL##S한siҖ09x, HP.SlRn`SLμ!28r7,D=%cМjXd(L"@85-0l/f6\%6f'.={!{8z[b{{a+zy6S/*BNʰQ|VV;ɸq⪣FxM@-lA=*YP=7IMj@(4&;. =! -pfG;7bǴKtTF_6[«ܺg:DZiK\P"J[~ (b_iU=j([R1[ܢ]r]`N_rE2NB<}%հ=\HyK!o~giY.ee$`QP$Ro׫>Taeh5Aw(djqoU{H~Np$;P[Tkz_Q=͚7pQ-Bfi,#Re$z*crEߌ/[C8(1M}3]笁G ڶ5v-R.VSi 1r.s ?k`N6*ȈfOQ{Oazlulq< 0$4|z;}K4J+%FH]30nYZTn:(Յ"ہ!LVWq<3mWaqa"ra8B0u@#ќo}~yH=7#d}|bQ*]WLMW>5".s$6ܠCd nu[MVCݬ $Uڌ/D4jiiL/G,#Y z90~k?ڤʧqLzpg|.[c_I}k&1)} ټ~c5<:X&N]z誤8,@<Ắ 6#Rݮl+ЅnaƂ 7:Ђ҆Rsr&mt}8:0;hnA/7~Ac_e=KC7ʳexA,MM[fa ;'(v|QPT#Y~06!i1!T7uݞp$_ )6G*JR57`a^ӈ_aAK[Y+uMyx cx-9̈́E8֥7o/#a I8'M5=/L*魶ߏi;3>Yq+ $/\Ih@  ݷ 1 $EUG٘L|#E3z.wob?5JrgЃ=0p7k T#ʯڒK)dM"qAw@ 0f)QM@:euѳ<#Q!#еd of=Śܽ ]-Z 0&~{ԛx|Xم@h$!gluAЄo_UC9 i" OH`bJ`^U(] EV3``$OV- 9P`/a<  Rɵr*iG[-#t#}VPb/#4wV@.pC7uOr>;ƒF~SG_q&ͬxvUoѕΕoW T@D,|5]8Mir~*X\_4dP8I!RpHq`QA(üGeޠn >:F[73`[>X oVQ{m~fXK.N> 6m<I/iB,|w^P-^6=-դh}b?Fl~ 8\0AZc LQ_͑ZŇI4*e r16u&Tk#$K-qBD!gDSB->y Ĥ F(P0T7d8c> (};,COAA% (GӁ< Dx5 4|A( DbDHUo&OSR^5Y}f=!pH o`̟KS³b [rS특^tGցdmEti/>IiՙS:͟q}wC.xʠKKwDr E;'YEG'3d UiOa7te<ܹ4 b#yRr["lQ_Oa5O'ҜNFCX\TbӠ쀋׋Y'[~7 x7H<{LX6;|I@.H^S⥑Y|7Rw ,` 74~czYf Veĭz6< n϶K6 ;m )A1c˖Șuܾ|8A0j᡻G7QXaQi,q'}[`OhBMPe#3[*zQ&&>A؅S HÔQ=N5*J&^U0ҾjPFghedJiϷCk4Z@PJ~_M;c'XWImyh)~$z:S{pNڏT'}7 /pi]ҧRE 8&>xM /YSRc/U@"9 s%^v\> @MlU]nbZJiaIb4'fVoCxlOAnNBH$w <xqs NlhB9FVh6{w傭̕B.a jR:V%[I&Vw2@9e1p/7>)r:_SsX4:)O4yuj|3eaδ͹56Nht''Ŵ^-"0&֡ZQemloZ4_`N*(x`^أS ;wK jA{*ӖJ `f٢쪄#c;xo z)nHȬ2;Kz~Ua7bpÑ,Wk2>>V]_d._Jz\>o*xoT¢aBZ^xdnѵtEB@RFߚ +%kQZ},h¨4(\rVڅlZ$@JJrݙXUO#լLyV*?nu,c[H Nz0kyxģ*Rũ0[$#"B=/nTAҩU+Q02Ô-I8i w-Ek,x{4Sl{ތ4!3⚹uMelYu],16M!2B[vjY albCeh;Ɵdl0 =٦c=nWvL{AJz~S ?3=_^-V]1CܕPx]GQ0&8 @t!A%Ih5ō۪o.8JZ;-!)tS_V= t-&y-MBg+̞?#?'"$ SnߦBX׶ZNS\S阰v+Ř 8sX'vAP_0^\fwa*d55ECO0tѻ/@>DOt!uF?5A/^|P,oEYm31?ρ)*Lv/bjF6`Tg w ^3&"~f9Y^{q%d{dQV6ȉìSlRx)I٫Hv?k̝bZ|57E?s;*h{ߥR/)U~HT)P,lO@K.) &/*WΌzxъ95P7M c_t&>s 8fr xduSM2Z(yu|2CыXzeDC{JtSf/9b)isJL}uހKl;OX%{}e2 pv]f0PuV&l E/1kqJ4 NL\ dNAXjLnGl Z,ڳÃ}&,~Xndn cٕAm+&ගC4Aiu} j.kI1Twy=GRdƢlc,hۮ4ES8ij=)}Pٜ3)*2!_ ,-a"7f-ބ0cI{ h(wsĖ-+ݤf1*\ T ɕb%]aub/|A8!:Ȁp /0Y8Dw2/YYgTX\A:I, TF&qC48wi/ $.0UyMZ@5rD֊ӂSl EJʭxdaٚAe2P̦5ii88]>k>z@.Iݮ[Oq֢ F ? 譇mQ OCTQTāk>q{xlR: >bgbmZD/KrBIGVaMrGGf_ZkQmNh6*"7=i=v$Q ub!I) AZ%%bQn$u.,_ Оd<[޴f%+vuF@Br14b%uOXÐQh[% @XA c.B_Na~aͮœTWÃ^;%qa6۷2#mx W!\-X;2cEKT_nP428"L2]O6!f5Y4BpJpPǀk q^@ (F|\e#PV]t]fHq T%`M.Cq͞k+_b-NzkDve˔~ _Xjq>u{DZ'~Ri^僌S'8H 9-R6 EDg9bݜUɇ.6#DL q¤- 6$򵯠"˛F_+kڏr"`%?HE*_^߻5y̽Fb ˽Ckw݉sq(˪ V 7<4SyxC8G^dXHa>xN a$Q!{ 7 jh$W:PΖD`y%ЭX&HR 0rz[LqcJ9$udyhƈ8 vl=́΅3Ġ;42B:̕dw;6C#D[Adfg"ū IpT(S;+g{FQ%hW9ĨjiBa89Ҝ/]\7iO(`J4Znvo]6'`C:aDU;^8fU/XlMsWj49[\*JS>楁 Ӧvwu7OvLΊ;+^%,ƀs WO`G2'&C-a9?dK;;jqu^k8tיFnF=.h],Ƕ){+bi%[Qͭf6mG2N,lpIwqSѥ! Vh`YΞ_F$/Y? Ϫ'~|c@T)t02GhR:.OgfeK|@|lO le1_5Єp\qVQ1AеNۀ1SB @ئk؂B]ȺF?n8nXJ}+RN"IP:/fd6/ucc@| .F?>#jK[3BۗSSzNS'=^EՔ<|.xe{=LֆuJN{9 ZWi=im'iF[?b[Sk\]Rvk qW6 )T686ɤ/y𙝡 :ݦWJhXum" EH4\%'vC< k׉u(bڹxK·K24:ty("btG5j@+w53b^ qJ!/hOT : 7_F}!C*-Dz8 G1؃/d'앏;ȉv 3\OKdR @ *lD&A~_;|N3YWKSE]s+Xuk4&h?Hjn8%,G@,ғ*ƃh/xrS5-+ ?c9J!4 g!z}&awg<[K9AOL*zO ۅqŠDBWBXU󭕝;<0kوwW 8>fѭ TۗβDžr!51⤼:2Yo:HT;)2&WmрWe8#[]r4Ct:|bT h! x"ֆO}NthQ"f\Q'RW"z7mjjuAG\{EX~B_=3 b"g֑AUGN8̿~zQdR|J#1‡)d>}B cV7 o\Q 6'Tc\v/<ٌys(NdqRHiJ'䯉%00d1ZSg+e{B e}Wt hg`A.*a= #)= .iLPWnl|ev\@'ö7slh}=C=EQ_#$s;Puޕ1vzhamqinF y!Q lBJ@(/pCr VP^i=a?~:A*{밥sքWkqlj xCU XKKY_._fy`MWǤMO;MGQ4_wKef/:Ƌ͘I!BV Knǝe圩X'k 3{_mW}-W"y!Fl'mV;eZ ~rW2IĴ,i0Qlعv&Fٚe򉢻i&Ɂ?pѣ +j XYF oۏU@i7)|K1I޾Rܷ#U3e}'jj^E.v)GVr[&[qC n{#fPuE pѵyI9z6rI"]bpQǥjd\P3^ XR!SQ~0O" E-w𫩘VC!a_޴IS׭-4={{-+7${ա(.یI'-9#o굶J)jM^i͖bo;tfaQ< %$7^"1B촪USZ[@ma 4$Les·n˽ape@U2M ڄH YmO.}U.nk\ޒ.4s O:=g̘@R([ o;`E/ $&ד"6/!:ޠۼ9obuUzm}zN+'xC7D[ԸIH(Zsdit3O-`_ Ok$/CV ¤!2xo߹ Ωa5<-<lL@:~{4DXrSB0@[ꃷD*5xL>|$wZw[kS<`rc/׌+\bUzpN5fye+|'K2I!'ZqRV*ڙsynIfߔy j98Ȣ'͎:L*k0iT $SGTO8WVjp>Q/B޷k硋Aw$Xu(H$N &6&C8v7SLȚ,J:(ϛ[Зk_jq:3drYZL\ò<2Mزޞ&F+zu٫VPC&@Q~3G/(k% eǗ`qze>rʁbM﬈p3Gdԭf+oCxbcwHA 2> n@v-Ǝ5?f*c Ĕ[1~5"%PRDxzBkh4C 2m3Ex( vm uz D h@k/5m"\gjxz=d/' Z)I9d@`)t'K4 ~ ?0&}|:1=5^m '/DH#aAu@:NNkbo${"'f[;)MYGKG,=+Rz{%L&ݯbjٌmODm }խ~y,v7w`)Qt&z-gZPthe[:vIWUYjU G_GYB @&6}$Փ7w'X{c'ǃT4:T)hZ| OMY.A-U/(FquRe)jyd{6Q!K›sPAPjXWdT_xi* d"riap Ao ׽[ԏVJݎzQz^OcfLȜ:c'R{$=1gvxYvjStH/7"&w mς ,y_I ^Bqz:sdkUC8.<aRYq*iYA CR?*NYb(Xa {=*00QK6,JOQ)jZG&,iW6W,^K0цPw\;3{*1P7B} K 6ߑsm,hQ >n2`83~ mLGCD UAn[[ uݪEY"Y1/$WqmlSs!(H}Bj79,\ \vyF" e$oGQL֥ GX'7X꟩,%=<8h0F Ll<-A?Mm5U @;ɊJ. E}!zlb6k*jĭ$ } obj#14 B@[Sy*Nw_ }u'%7ѐg $BJL+*N؇yQz<I#*%: @NTlר}N˴V7jpnթh,g+jʨH qdd*:Ey9--5KSCaEBF$xp$2ЯқcjQB ;}u](?rud']xF ;ou+U-3!Zu1(W\ /):}S> HVvf#/ 3;NIbp%ɖb̵7 Ԣ$LؼׁߝVS8j߳Os`HEK@OF[c$v !qrՕl u'D'@@GP@MUW"RH'SQm!:k9ZmQfH8D+>rSW[΁ |wy7dd/lj}hV_nKS(>si(]r)gNo08!=>X 7z<:f{7"07ǷKQ09A[L6Η1__vhˡ)\s1a0ΨQ=Vv㓲$gWk;bYt*6RtGAˈRv${g#Z14?S$-uqCmh:M1tmdXj.N7|*#&t,PE *9У? k3de>+X7` 6򌾘ѿ, oӈ_n̋}Bh:箥%+ M΂Nqiwt`74}rM WcoPg;V(l =?QR3BeQLem?;'BK: <Ѓe׊:'V fbr$|⼭YN_9I) ANᄚz| yJw㏓5̣S qy{ ̋k "@9nز"!VЩFcoh}f1K>leՈO}'8 A +Ye؋bG1"_rAzߦΓ+|[҆*\R [D;пJc!/"Fv [+n& o3hgAoY`Mh=K|_s#րqo>;ϗF4p :L 3_-ڞNcB LsPK>gUE0%h+w/Y=[ (_(Qͺe]TL g(gp]*>yUJOǘ8֣3&oDJ dx͘PHe:tB%WIרJ\lD/ O\x*e]6S-KNjtnQ$Ht%x }=} Zk\IMӘZnk+ `,}GUݍ%v 4B馬ѢTf?! [{jv#PRujҭ$z+ܿt<!wEڅnC^ ~W;sϭxG㍅9lKT]EO\wplJ*;v",NeQw3ejIeiOh7 Z ­14*yw *3 Ja+[*pH\ (DĴr*\^kFU[IN߸)J [ϕ@TSDők QEX+_fA6=sFov;CVǫK^b>$O0qcFs_9UUANo!ĆXӶ/6]+2|Tϱ,wOT5EQG4pkaF"{l:C<,+4!xۙ_Z"A*J +$ v \,nl~= VK0-3K1`6[ 09FۻA'D?9V m nϚBrX2uV\P s Z;'cd|oDIIz9v 4 R| $Sݑh~\C>k:[[ѓ贗ų5EC 71 " , Qb6-+V,GԢ~TtQG ;Ny-`Y F>]@wQXYϧJ@+2-ZXf8_l R;jMvLJ嬟b&yToi)%WQa]*>t|cQFkuذsN@4Indr!,Y]_t +Epc΋uD9'WU7Ɗ1U M^YB\8 1SnL*,%׭e̾q#u-4Ԗg?8CtEvK1!ݔiH{qniԃIR44VdHE qxJkLNj`"yTLװ4095sjja LDKbf˦WMiHYVFewMa>H&=]T`3J5t9y%䅒oF;h!ER.sbޕv"mZQhU3i ˵2yU3ꂕn ׌Edxy`;{Blt͹,Gb?TLvvr^w0.[׿邾=cь6\h2-i͂ >e ~@#{'*^PpB_EBEUÊ#SB,$;] bnW̐e1@1w}SHCƯ_.6;!.ꨢ&"wi?F0ZE6U)O>p&Xߖ`Rb--Me^%FHqJ$?/Atpvxd> [CbͯHH:H9ݾb=@"sf2 [:n&-{Tٛ`pt, $:RWqN>b ਒NtFZZzj*EQ6 c:K  97yEIx )KԻɛ8a#fP)`PE;^c :hYV%5IQʯ8)xBqRV;Zd.SE(;v*%QF{x o7PvZ^F"_SNMS-.͞& {$I-r""]|ƒwZdہsQga]V7nf6eYx :yRq:' & YGghz6w+N&]xck)g jC酈BUڋ'oYvNE˞"b4Q'6ٔ6ywf>yroRDCPEXTF 襧G(kn W<'Gؕ/$Dh[Q_T]3\=ov6 Zx75G)FAߩ:2,ѵМ6n=>fH;;1I}mS>#;t*6uF_6xv77֧,* 9=@axzT\Ӻ'hiq~2 #ڄ &Ɍlbs0yҗ VfMψA^?b_cSvpKsFWPm1yX{{"3ӮkVKM j%"\h9!34isLBd}M#H/]䐏Cm%i*ZyǢGCu l3#9 5ӳWO=Qh`;Hҧ.$-V!=b|\z~ Z$y4iQ|\\#6sںl[a:+t"f7Z7< `$t}CmH8*ǖNM"¯f$hNE>ެXUP(Yw,/78o^_EB,]3⍢`/?8eĸKMPDU+Ѡ`K`[}#WG]%![L=>v'&>gT P|iCE{&RYxyO1k ).L89<Ռ*S&ݛR~=˽tHگvl7'ΓςgўGL(Z>3ݺ |\.Kw@{nO/,)} oϷ `M>FU\(fisDqs0SH P,J-KP?gBqIQL+= p9?;>`tĘ*"C)qsrXp0oC?^aH. ]y>U(8PBrj_Ǧ#23cA3y< B2.\NuFtK\kHkE5ÔDC 4֏<4Y-7k>xu| TdEIut뢢cPз l"auCWb}u;<`1 4j,{դoؾCA,>4ӎ= hye67Stq.f ":wtmm^!CODXO &#>?+\ZE@̜5O Bqw/;?0N Îi] incR8W=IW gpxʧzZz}sTynbOsP~CN&ZGb" RfW2 $7Ǚ=Shgym>Cq s/g&m`2ӇخJԢ;HU6#}Mdury_ L:fs97UX&>Ӕг rՅ9I]V!H)CRϦ,C"aȀIYS홴tq8M cj[e*q/)& |:18434slwCv?ImAʯ4q`FAsbA˪?5op6ߍ' tϘo0v$TPfSBE:e-DhZ^F\/_\hA)5`ChBw&Qa}@'foešFS'P=$ K;l=_;v^bWhTWIMZpTq"R% ?q ²*aA 8Ƅ:p{ s7#>q*Ѱ*jZsB+eKFAt{-x&04[! v4Xq8;Wz;ϲяpcY\{(q-~  O %$6LL83Qqrf(#R%Ff`y=Pm-xh7 & ùnbl:-mmF <>?2޵?lb2g[ Jtg1id6Q5|fR:Xۏ4C#DziIb>i}Yft VNxCƵdimyAjG4jW DьTv)>$n Qjz0 k{;(g&Ȁq?TR}$͟D9Ok7啓Dӳ{uG1^cT lW IG>?bKl־ Jֱc[bh\:1%X]B28H"N~t<ܕ}C5R!x3uad9%~ Tƽ tE ,f WAirH d(' j<9SBP:l] H[[.RB\[I;U?|DTqr/`QwK6&hbHZ̃ZWofDDfDxc{'!gFo !ka?]ft!j(앗u:z/D,!yvҗbETj/F,v @^w:>JAo)h^ xgfJjn>=?qZc`Hr]K2V,E`x2-^I:`08K0;c,9 (lWq؝uX JtcWX$6['-LўAˏ Y'Q B֦&DQ1?hQ@6Ldj#Fn٫a"xT}'&ɰ93ɾYծP?fw`۪N3* O+y%G*?e|nH8WFBK,o)[>_b2G]s=Gn f5G7誩i$.Y ttuMLeXy7MMwIPw|P+lQKȿ*18β, .Zhsy(i\F#}8fΡa@w8Bw[!pY^chC$CGbj'ݿj9ĹGﵺ0IZbUͪIv#aYJ|HY;UIn1k%q6 .6jMs įǥ0@ (ShZFvxDÄp+[B-H9%~=]y' 4 ;G`g:~#[@U`hdzz[12X5Q\$?`ҲXS5-[h ~P1U4Ԗl}F ݲލљ$}Ϩhs7C r*^[ڒwO?h0f) z@QWv;艠m0]6Іqh9FyQV3?YVXBWx OJT6smZ@#Qc2|Do9|& J7i~ɸOdK"]N&:}ZQ4V[k@cwrZuьp $Q0jQNE)!\Yet^M~҅oU ϱ*:oT4Oę>su Rt 5] :rc*Z$Z]C[Z! ~m,k'>f b"ųi3R4\WQm"VU͗a^Ihv a[_\ =WP5\_]= %U ZA0l*QJV"o-^$ $ϑط˥}6J|U䇇|lP<Ԉ?FW6 J"4t!y>D5r$Xt ^YUz(ygcJ]~ 8DVGX_zn$m,jX-Y-+SB`4wTp@dh8qutDgEh mM[݄-rLGq[y&-LigCCasż4lXpjύk)XSzPXZ?v$ uڱSoK !MKޝ4 F}+>D.X<,XGzdQLw3 z-,vtANMֳ(K 7 j)M&%~9ɰX+m28mۆNޓc\d[pch!V*SeJc[2-NRgV$櫁閂u1B?=T(|xGj,<]uʗ# Fmܻ&lǿ>Գ^,nbC'budrC9)g m"/jO,ǮB*bBK3U =?F%Kߟ@"@8-|7$nQAخr3u=K+CiGgk!6y òvX}4  ࢒5ps9nnq*vD6\_:pE1dBK* K:SV(nL&5=s4lӝ&}CV[Z_y^_O#tHlV4HUD. 3Vo9 hqf9 .D%_R';ܫ+3q8ɣjaj-,v2!_GDfZҮӜ7.yv1_&Cq ܺ+ T$E",U`![GRDI'e$D}:cm.yY酛bH]=J?%}$1n8,tv|xGN}F2oNK[&fIYVA\TTi39ŬnU>0v|}zʚ\3'k mY(WDݎk0:礂x_dtj7W|!QΏ˂[?`k4_q*sYsT< m$=碱9p2B?kP˽)=o5EQϖ\w5AK[-c1 8!%:lf'$6r/3#.(qy]gfH6-.r EX7ncX3 In+@ϒ"t =}`VG*{,*2qx1hT_kӔ >RRxܼob2uBX,/w>i/Ou{6/L C=HtIfXGJ?` 5Gy2ZTF-1xִze6Cź3g&tm)rV? ~KЏ:v,P gN¾'sXv"\,GߗOEH,Nz ΏCGWA')t1si/ֱxכG(C=K2e FҬmhN};E^0@BVȬl$*w>QmFN=bTEAPﷱm M'`Ϥ>*7!Ɓ-z0<Qcδ]$HoX Qx tٮ?;l\)߆QS6=ˏ gPS_+`&#츋Gob:4bf. #w./9 `O:>EEfb|V Z-c$^Er\ YD0s7R|;I7Di`eoۋO?o;:eи1 7[nk]Cn[R}FoXdȨBx.ݪ[$hnRy.ޤp|=e6wlV Ujp'Cmj⬶am}jAN MLl8MJ6͙R!qZ1u4PR) AzFI]rNˏƳOn7=HaSepZչNFe!ƠTԅO K瑉-(oř+BP{v.TTp`4̩.sX^ Sh[ڞbc{=jyx"`d<ħk-j:HںB%Ĺ] Jo:[ݜؿ+V.q1w/8-P(-7-R _u~B+#gjZ~u+5':ڙ~fAfxo GwɩKu-+\:$+cMIM^)64q&Ã#?[ᕸT&%Y2v\;ś,8OX(Z H/_BJAc8a"p@Xg=XeuȦ&ۺ:P^h4'>I Gt 7q᥺;ĚD'4/Pr1;…M靋s8uu7=ZT`;/1?kT-FF%8G4o j V]@M{kY8Uh΋3P!T=[lj:}ƿ^#@9VH8;A4"n猃 %shڷG^'Yp#,{hxi2x3f5Aa_ vpCTJlZ\5<51+P[Е INOeg 27[! Sl 2U+iŢ,Z9Be{zU,FI[!Lz*H@𠏄0[8gxT#n*c\л >٤;ȆуѾ6OXuog!%OwQo>f #6 yfI֮V9'BιX184mG,u9͝{xέ3tx-c;X7N1 X$$%?8SnR :7X2?Cv U]? @VǤ( u\w$(!*g!ZZ~g# (tQ|t'LRt]4^3Xg575gϐ7) bP|ռ~O]a7f8~,a)`#}$c3 'tg::@ټ[͋N)C%Eeza? XC[ H{SRC'aʔ-9Kݱ"ox 5y6y#V SJkrIwo?|Xr!cnIc^wyJ|cB%+0ˍ˿^gl[!w:C^2@~Z}shb̼ f Z)70rDz?xo pT#|fXFC!oPaDMI],0C!gwL?._+յd$m>\9G=A.GԻ a 3ڵPϢĹdIi\ ~wP9VJ.~eEۏ)YDi"KOy-*_ӳ FԪI_o^QgSZnmʻ. )ţvG4.{.V l@m=1$'|R?0&LӐK+|\:Kȍ$WGh3!ՃZ:T):gKؿ(7hͧ%5-?y|К1Xp.lMghK?bt (P$'7#eUh  s5~>4Ro#&Q 1&i1k[IcP}?tX_wQBtuog734iK[`H+LZO?ى)A03PrB6ՔtLܢ^b !S^sJ7nO~.Z ؞_~Po&2K[g/$ڕ׺)!ey•ZF!l: OwF6; !'3p(Aܿ-}Z4y dTYL)q]42H' dVo~.9{gMқhQhWI#ry|jfaO%61YHMJ U1(DrXU"'F@UOvM<)ÒÔid2LXg*aT؂hM5 R ՗ {L,hi/SFp5oC<4Rj<ʁ!Jh8 A07|m!2:vpPZ!.ul]?tlw_BN|8b%bk6m/"͢N x?f3@ w2F}Il&׆O2#8Bƿl6JĴMyպ\EU`^>"}~6$:`Kb*{лBtf\>"{S%^\N;kbac΃P!x^/h8tIa*X ©(eIGW"(")hM8ݪ#+IxV m֚_w jE (*HM(? jpޏInVdueLފN]~a0:RD5fj%_ Tb>0XyjVVho~r?-uh5~**qS\_afm4őhXvI`7a=L:}p4ǓhFS[8ft0T̸][ hK2"I^r N=@eyO2*#At+Qt(SJ|Kw5RCMsf(n ixa?i/)we`'~[-{3 "%K [չena.}*zqT{<`]%_F7ݶú Y廔\Q_Pvu\nzjy5"='erSJOB$F 'A*2z]nU_8Pۊ&pXOY8 aRnh3Б~ʴ`xוof )3-=U+kʴm5)St4I]^s{Be.3F-9ۙ2k")ii63٢hxsK G_go?cU 专k\m 0pv6NCtEC[XWH][Yۧ/{L خ”9Nlo!tW"\`<3[zm:*N&|s1'mPV<\" W(WlR .fe'HND_513-(cRq6{JN KsCEК4c~d+Sm._i"?Qɴ׽_xt ;{$H*7Um4V}^hh"3oCO*'|=#]{iLuzA׃3ļE, l'V^|m^O{,`mXs{\1GF՘Q=OvQAs- ' Du`m߲17ҥJ}a)F0@y놧Q>A?gx^\wcZX{rؚc#0}q>5!  /k_ a2ɊX9tZ:Nm=T\~+л]~dc5gWn$[#H`D$bdTDj(bV <(gZA@\ƨ_nv[^0EXں&qxLz/n :cߌ^+$\z\/Řv0$E7r8)Enz'>7__CTrї oJGs3u 1H Oҗ XLg>S#Ϡ K==YgyfO i${[8xߪN ۩&+Ab]S: E:LQJUL"x?`ca>d^jLnMTh @s i A~H?[hv3CЅB6\,r_N4CU1VwxV'ixy!H: aRr:byϸALC/:9O~O>#912+YMkݖnK?ƎI'koepܸYr pvK#4teuڕuI8<7 ,G#TWsn+$xAX!Lv璁~0JVv8U]ti}tdvsoAK캆!"+B@].W$/2#)]=9}-c^ؐjVV/+ ܩd OdSuu-Z뛫|z-Y)B|Gd72>0c:[ Fs@,}1!Kq\aڸ84q͹drI$k3l8(-wn0҃= >IU0y=:0YH{]z 0KTBٵ9֩ѫ`F~4Lmy)&q<5-XhpuDx~}Dhz" gX8]ގ@rz_);$l2t#Uxߤo]3عN[Dv,k J0NS֜u*jYs浾bI^sT I{f-GaTC5- 'G]j2z^\m?3f |UCįumRN#q9yd-f\w@ʹppuX3ԃLRGIa~UESpP&Z-riFj~SuG.Ú?):>BQ \5aY]nĿ:muy{+y/ 9lOj\`>'|r9P>ec /.q@*[X_S TWu_3%wK7lr{~/H­Ϋ-6U"hJCLxI8ArqVJji:%: s sIMc6H-%XGbw]c󧔁ho;3rL;֫o$􄑀V%JlyoS Ej%罺R8"kVr?OY`#X  rf1eWRNym zg`|w>k@t&D`Y6ײ//~U>C=ݰ8 /yO+.?9=Jz{=2 ]@#`>r#z7wi{B#J0u=Ԁ  s[WxXS~t)W^*)CI؟ sD--kw1K"OJzf(lM`]k,}Φ Y*pU/}lŐ)ܶ^vi lVUk]cn#rגȫo!| )S UnͫB>./2Z}kuT I+iºvLApH1[&SBzt8aiFb@EMNlH^@.t#GE_t"h+kWK*~YsܣZvZ1/XRZKGrl-2%趁}CݨسJ4IS @ kVD8ވ #5|t@f,{@?;f,H·Er`i#8~۸q5. b)2qBz۲ P8'>3"' ?gH*E&Z,QYf{C$o ޘUW>xX[@N$ Our6sV+n lT&0*IOA$z҈0KvThysraFC&SfL1~Zo Arl\Jl~ +=+wWH<2<͗7aIF wL6{HVz<6_6bw "jRFr|W ~wq99{b5Xno?m+ұ' 3/n )#ژKGr!CZI3H¿K$JTd]dNg(9VM/%IRT>bYy`UJ;FОgƺ/6:]7}=rm9x$ n3l5?9d5NC_{[m(Ty`c")ĬVTzq%%6%i[~0Atnl!~{kF%L_J/ ?N5b ' _fXGx?/c^ +Z?|rʕ2| uJ @u=Q!_zhzCunZ{fHmnl{@N'QH!q$iJurȔ1>ERSȬecĹS3it21Lne2:ĎyƊxϪW^ \~~Md\3D^Y|`N0PB(RU)E:dKG_jyY,ϺiuYEq8q>VV)0r0>jJx.Q&P8ϳu+ig0]Kxc‰%tB"DNԱ-A߸?K©hA Mqp0/4 jKI%XLs?TA h^1 rS]StQོ6kxH0&2 wn l4̒>u6]ʂ#]$\دul`:8s)/,X0R?yL/[ca|{F :k;B6Ic=$4"<&g~yoßf4Mʥ̎BQ%WeRZɆb7x@ᗧ0d>Cxḭ.,J*AD}=\U \ࣥxk+rYˏ?]G-նgzLTQq?c!8*1ښ(a@:n~Ra |e* ջ;z̽#T oF;:lۻL#zf& %SAagh<{u EbgvS3eD(5Uj\{ЇoGcGosM,L1l2k1nvY#zE׎T~ &i„8}w7 Ҳf1*?HD_X #?:tܾ<,0Gb0i9g`|4ѹ`f9D,S O6rJ9 /[Ҏ-kD.Dȇ!YpT֙o`A_,4î'0u; ze5y 6dut2V֓s+孺ʧJ=61}4yD"­SJnbХhzKbg91jhD&J oFZ4AcCu-^%$]ࣛ&hMNJ=dyf[F{|b):Ғ3YA~P; | N 0GS:Ag*%5ES|qz%rЪqHEz~q GV`:_T(+Aۏ `P!X8*@֓vS?ΐ{|R1F:=# ܮƝ*Fک_ILQwH HbE:$[LGEshұu1v. ܮ,WQN̽Ep%6,/k%;4 Pzݺ)mSB 75('s<+MuR.glDWoQ^U^(<ڍ3yՕݾq'cP?kT^ZvEj|{+ی3fhS1Ef0v+F* L{ɤYے*b3#ٞjDD}_)I-86™Z Or)'4F-FAQ47" %^mIAӬѩu! S>@tD55I6uvX$HہNCyr; q>6HaOq@x*YrRe(Ed Ӽ"T9>] <)~і@ r5+'RMOҥ»2*m3ŴN_|wCl `"l [op<0Dc?/W%3,nH9+eOlEsk,.oO77 \ǒQg~[j azEGӰEwP$ͲyH#WɗiNwS0_`4JK u͕Hf܊Kr +I;=,eRMm[ڝLc%#Թt7;a+S~-qLȺ0S`䢮[吧a 0ۀVա_ =ɹ uozV=Ug#tjQeV]@K3k@fI%LeD܉6+bGmQӵ'cgxA l6W a܂%UUMm1Zݬ8j:K"LзwD=5-&4Y"nz%D]o͟ ~Ʀ) (w >2SJ"Ge1rMZSiGk4`]3ۚӱRM?|^rєY9Uq$Lfmf{ Dn2@Si=L Yei/Kx;ToIʍeAj %;'^*kLƂ=lHۗYlxb^jPl <C֝TZTbDz[(pZ#_)t>&ڭG^PwJ#'Aܷ,)9 \mv$]VQQh.A8bG_ e,1V~]!Q`y5SdȡܨoE@3=\ѵ' Fx>S/ UBd7^B;Js|A ,筢:FP;IYvL^0#Ճ| Lؗi# HCa{95A[/SB7&aaVeR>r= /AXK.PF$b {RXY c0 vr, oF)  柯0;?EEct\٤ø0 έ2ڜϤbnJȁ[')-cxTkݐхm:A"#afsD !!b`c|?W?K ZD> tԶ rgf}zlr4;}mW}. sS Pq? !"ﵕ&j8 dOoG2ef6No~\\=N55]cadzg[zwY ?F6#HrpSyav)X. 3}oF*Qr|e"V9*apBkig$;p8"].x[pUܰ#Z ֗\t ;Zr,9rfP+w|Utv_I|2u3#jbܼ#A 140'KI H [AiyylguU=L7i4Hw}i1 Tff@J/ȸRګLGuFʚU*}lI>(!@\Dk%'T-eXvY @|9s:l~"V]6SB[dJZEgˣ91u'Jf>Ѭ%R哸xjBfJRfbQR~k`2ĻfR?DnhU:U)9d e5#_H+s~=pQ#˲*imX@\q DUS9 G *?3nfq[9^q{fDg|U6~1ŊMm OP+*ȏ8,:lh*B@"!^CKp#fhD[}Q,:9Rf܉Hlj3spxl 凞\|\.ey!0|ɧwA4qgƇ?&\|V4$W '$km&&@F,pO'΁ٳ0#s; T:9[~k^&^Z' ?_5$,#deqB>w8̉A)UKd+TAC +&] P2aa#0oEŻ@ORq<…ơaOZEb \6D~U- /vsX:[kS/n@4VuWYϜP+ <*P2u $a흣36BoPu^n{Q.ĎKjsg`?ʸk~6uxA< d]Fq -kVpSvk*.S~;U?ϲi[TKA#kgVDƢUdT}c`wLE8($cvuXфwwǠ0LI;2NѮ{{$ī_yPU9jz6S/x"rØk2.WE'DRJc.n=+{uAa Kq5 ]TYe[ TW~MOP QNhࢃ_Z^~a漛 ba4 `ùęL|,,ozǭv/g )m|':t ^faӜ;lKSh =-دh A|[q1pnI"+ƒ'-[8]sb E7Ɣ4؄׉GBLJk{Z,n%o0 Yn~Cl=E1RMy7q2#Oeb$R E2Y.̖&. yyt9f3@gW ~VR }_ Nz~eR`EB;:x )wFNđ\aj۶ar|zbPv$](ro9 sLy/G/i4/Qa3@v?i8L,\Qلk-.pd6Cgr Rh'Ir`#IJ^E*|G+#Nc1-,u-=҄¼iwQy21}tmQhYtɖ'J!}P٘*û}GƁ­A":B@Ϩ vDj,8DMPrgqE1?v,& ! .[LcG% r1}-xp5}xEٔ T髶{>zpxz1&E|?\x.i|cL 7@ S3T0 sd3M5^ץ AZa0N&z3(^|ol=a% 7|4LeΆhoC?M &鈯/ͳG]f5ndmu z%-Gz)Lg}JO/Evs4%2hIRm=d+m3Gj4Y 8נ *xN1="^"ΓSZeçG(8x]9iWK,nX~[i"e ԤY)|c/Hi  TaaE*eA10<$M}cb@gst[[b@ \5Cv15͇$UzFVسRcіذ,sӴ hѣޤNBJ9B`lgpvOǴX8*yH0> $έ Y.Z~#ScsEsl9a92e<Ng V<>⼰_MMMo_:jEO¯C?6y N匳r^ߝثy6(d: z Ҡ?}z, 'F%5PQ4B(Aw=qy KMld3Z\eLj@lG;qB[W$PG2腌!ǁ (EabXh!߃&()AIw9mu?[8K#IOwfm?[׵=f7Ue z~pJ"Cm'W`:[nwE'zeg! <<# E/vo*?\Vojb.  0.&=DﶭA!"oWQ U6TFvx`bnyn"֝,Bi+w*꺒Gɚ"R҉NLgZx (kvCRm{ 3tOI`+|̿Q.pcv[8'Ȇf]J)dtNeە 6>O93;"ԟXѡ#d伻WRTb 4.LLдy;'KPRdȔ݃L5,Lpa|kge|HqQ$'Ŕi8NuaPqz~9rF/yjvȣϼ !k {WGX^Wv+ f Ln}@ v,ƣcnYʘ^c5"zv{Ff/䶰NLb&dɋ3#8裾D/m"q(3dـh@J;%=]مh2A9E偞ƍ4`N,j~.TWmBv̘R\e oɾDZ酈e< o'oSL#KVۦ*euʞQ_F:QAϲ~Tw?fԒG%Q!=. Gr‰uh,kcB m02"ϓ{t`+Eu: Fo?N+B@xE)H=.Xqmk揨:/$ *RRu*S@? Aj/$&4;9 2/nhhGmͬ8.Y?79Y ̿|D+2G'˕-7KW %)%B uqBrK};qmIe;4vf]]SKBc,^r"~s.hlRյ$$EBerLn11̃q@aBSAAeYgC;6I<$}lCw2,:Qj;jA宐7DK؛xci,:&wfִsA6MЛR٘I90^% .Fh v6;4c_SƷ꬏e} p_C)S`G >-6 )@ݬ뽘 K:A$m6.\YNwx;?:&4,#Hۿ$P*N|_$ՍD <u ŶxU[jADo 9eAx&UŖm~{ZN5ډ{^̸~X>u̘&ryq-vw9 }ח*HMo`?=J*Ef+oo34 w3du;LqٺmȌBʉ@+SzgWX} Xps"ZbRQIUh y?&pzQGOFc\t0ً/v9_ߗ6DCDDGD x$_ g(xk؂J@j~ w+Fq̋" 7G3{$`yPt̏h*sN(]FcX qʯrFp- sC*}ѦDw|[L u,X[VSEIeGw/|[.`U`g)M^I7|`e<_z%$UA:1H7qR2-A!@xFcI:m6GCŮ㳅p.4漦Ld@TUe^ØPzC?tZ/ 9PI;1ړrƶ_߾ 195h"ԙ8kY*ŦePBmIo}k/EbZUZ"y1bv-1?L2{#u yN~z9 es?uhft ϺKrХڄ)a&94XztFUk/vcOT'q8qmC'\sTs^ՙ*QY]O={+l=hŧ&0ow}K.o0\(!(̭cND]fVoZmvVHj8fkxJ^_&gwrQ&Sq{|pDuy E(TOQؚ43%5cg {kvPTRʘ,4&R q,`HNmjRt_xV AXeBeD-=QBgowc,Xf^XPoxR#ɾrRuF.-~I_>zk<"7sͨ q1 oSЊ78= I: @F;P6)f1^NV FWf2t>e:PBΩ7+ ust]'#P|ϴE $:9 va\>_.hD(άB,,ƨ6vLL^={Hހo֭N= T`{UW nGd(q.֋66{Pd|Sمm"=~q?( mcy|G*ʹ)b/KIWqD?5 >hpxuK:J"İIIPdVȔ6=YL*#R#L94}K_9SYA<4y,Uw.}"jr~:m?Bϖw4'Ɵ P5זMyuKr0;j!.?v"68im<]5!t. T~.6:ª˷,D9jG'bGT1=bSe9cX- K~!H߁R ԰5v Ѐ/7'݅,`OdH 7sk[6=*x+򛅰?AO2u#x0U6F>rĞVFk׹6X3=e{ {fr6z7g׮ԪLt ?q/j}@[0&:o6WIZ} ۘe{yboS&p+d~E7N!iUXsWoz1\üz0Get3B~T7C pf*p\6{om.>;hWnt.篧f:BfK8{yr ?YDO]C)5Q*3z4ő/7?L`h&r.FEK8l{QcͰΧPꭘ!oIz~> u.e@tEϨkNG\t*9"/F?nRJ#e DR}M(oB84m5s 9^+PV-xWqŃMI$k%IhZpo0 CbZ*aCCEjPpv'KRNvoXxOm7q Gڑ[NJOTi8XT ~M1rD $G9B*jT]A~k׿1-{ZO7{;Mh{j|59(Є@ hki&* ^(ͿA 9ke| 4%Gչ<ꭅp) 漓*}@Cuke3FՅ#^uB3N]'\H~c^(ӓP#w$  E+<J ʽaf9;LFOUVshRUӾY*z>F-R)zw9C:F҇0*/)2=.9 uɝgEy h^VʟFp߫k U0ѭŝy=\+/êI8}kh4o0Q%S%0(flÁWW,'1\50 Z3 ޷8UL_bb\֬ԻJ%2*s}Tg ֌Y,pqh;'|ヤk4Yp4J.xoK}/y|#aԢ;R>=#)Iy|N ` Ǚ@eq8?V^bl@Jl1I pUnqG}&_O;RӶ|6)=_ W5ʍ%r<ƍs[32\ i.\u*8wdTuQ๑suNᮥgQ 8LΠnhwI `BTlvaaҴ;ūn?_#\5ew Τ镼}HC{033r~ =f%p{V{ 4# 9ċ;yeg0a)P;A/p?:*. } 3nzKN<^*i陴Wv%qU}%fĆ=/\hvh?k(%Ѯe8,]ꌓ.:^_~"4zxMޓhP+KLSBK4EHkҳ|4ηUڏË@hOcpc>I9ծK&R%#*q(.ֿyhN".}+ Fm:#= l+lȯ j֠m㕪:%[tnayd/@)rA+t!o_ :idS[=D (|}'4|a-?eݚ/!>l̠G{H7n Jd(%jc(&J<'^kUz}'n.y}(3fۍōw3준,:<3\_[m[3w$ wu`TKQtB7eFC׋uJq7Ib(4M_1_Lk>ܾrbA:DS0s9m#GN޸$L@ģr*Z39[15NB) b期J s<uo΢w :-=Id_ɂ:c~_XxbCetra2TgRS7 Ak]4XW^wu}wYN!2aךWl(k@EۄJnDo?Wh9rZ tr4V1yEl'KAMg$' _ĞU*֕Z6C?uɝ tLX/߃t)91T?b5Qd6 oo C~(}F/.և0 X!+S jDaѥx:dž%b-\JMmn&)=Htb>B7w3E|ǿaFialx_$sZ&RMjēL(S5胪ՙ@\J O?$,s=.q7iӁ|]Ȼxٿ}u[0;kh2U<^Y_pIOS +KYВ.2Vf8A'j*5\K/RȔn7T5 l*R*EʂjP] X$s0}U]]{LwoA$>3ģuȇC濉^7I $.ZLxK_ocR dF`VoobT 0x"+}w\q^>b]$x K<|iJg|T#-rRɢ/JGCӴDjk9JHb7Uش-bQL4tkfj4&.hd,YŲXGFd WQ {~F4ٲC0I|n #`[A[JJ&_u0"GzA^L +r8tӻ-QЩhNT 'OSٮю洑*A,5"`?t`:oӶ<`c'z]A:r!NyW5[|z FLЭAgq'p|Op'[Í$oOǮL<72 $,fϮ&!x!]荌燏W/nqwsrG%'c9qet0.{g|SpW?c癶q/2 +,4k<Z_;T[D|BjkL΁uM/1t/O,Ĉ"Xo~QxLinClQnmLk/ݖW@8ko]¥G~Q՛?lRDFJ)eTFdFEGe7/yWr_SI; =j|KFRYXYĦI8U֒5uBEoՀ8G8xĊDuy=}ǃ* [$&)8zUCEӏ79n<< ,Mgmf)1ށ@j ]G;Z.T}^xXk^.BVUF-E̛$*Z DQ,M Tڀb@$@n9}YIfߥ&>oQwRU`Y&jN)6Ohz: ?4mtE6|p &p ptȸno.!t ~Dh6 szUF q=wpٓH0(}jϨR[s;:tg`q*9Mc?o^UȶvT6S.atSTBsvG`#2W3i1KI &0_>UiGz. Zg[3Ҙ?3#QIN^<މVjpu@rjA^gхꟾ^8S8$RH}μ' 2'03#(,9bog1ʞwdY.&F:㍋V}yW4)Mpb} =}6[hW'pD[&~ v"À)W '_yj]ATf\Bq ʦ+J3NO0:4{T)6MSZA!,{{ zW )Ͳ)ҷ0 3w*2s: ^WAy2c*!ؚjPP :PcZt(ϖ>_=IϼqYwe5ڐ^LUjqǐMReX.1e*r\>\Q>qyl4aZ.<m"OZ)u*2.=?% Ħ"9W q#S fQU~ {b'q4LI,zZ* P֦WJ_Ri tlW:ĥ+ZL|?8mٰ~,e 0j&WJлV3%pM!#50&DYu -ND2E)YWF\ABp/S7*(U1Z Bq#rbmDDh#ZK m;( :c2 2ZeD]}5+Gmh֝SRkݪ2'ѠË,}M'3ϋ5IbJuR׀nz<|Io}RZ&L̗vLjY (wts5y> ;Q4JK)4SvI:bE^7(k:Pʤ G ۴ؔU\9St$ Μ{QC5mSqWL^&I{%KtJ xG#3Pm|9m"9,N2MZK8ҵ/.E'>WzЙ9 [#DmRPUic3La# aYPו]OYxbu!}&*ҁCNNAN*(tz%O/=wC)_$<}5|T%IMWV1Q}JOO4^> OqPdz`{/'x˾[Mǜ'eM%BTF.%21Y 4E3ÊnM޵<%)?=j4by0s nus-4TKX$YJ1ՙc8lpyg1_!gA- @kB{lf-'8#^JV \I*UYܛWL/Y)q?ߜ9(QIaA bFpշp1(x=Ep]֕|-X" HIwcWt YZ\44q ) 6QIG#r!rzrs#!"m:LϦE5wUʽt'SnV~^W!8X} B"u?va}M[ sq4;*+Ŷ٥&lld Jm_p`1 ^pOd.bRᤛ^r+w ki|oM3He` :QB~0IZ)-VViv0kp-6L`,-^d%ó-vn2 S1zP"Km̓'! ky.ڧ+–$jndNt/)#~tzhK\a60d%O,>M/0 -! ҞGS\'|&TJu:!Je+v)]I[]YW?i-&_ӐC]!#>A̠˟=(tbjʹC])Ӧ!?1l`0S=2|=DZe;iCN?8Ɖx4rzϤv^<7HH$p(-x :Č,=we'Tjp*]l /e =-M œɣإ89J6=e;FgA)f*(|am">8(Ŧ!ӄ™-UMkƻF`B9ҹWY|VB{:(4+fMCfŠ~D]'zcjf _|+6XgU2]BO%D c飲&M:"—GpH=1LuP֙uy70JGKxgV |3GMg}3I`%G$Ut&ۢN0!7T B6@\|%NӉ~UUIFE1=>Ldꨒ/!kuSu<ҮA 4~]d%ekYJb.ӊONvݥ$>A 8طa|Qz_.EP\#lN d< T,!YX/HT> {C-ت-tJ٤?>\9wC078\z%aNFL5:;}F!ǘ]]K݁,̑m[բ$I dGUy#ʓ,I;{%*?ށTJUH 1HPcNm5}87F5E#E.TFkk$H,+-􂟓2V000ѥ!\bܢ䶀l60^8>UDApV  #vpʡB{n`l0*_yH8Fж)0i8"/WI}ж&B$`p@x]sB|C!&MWd,kQcl!'4Ȏ1al\B}Wz?خcpP}`}:̷h֫T…-Y Ok0K"qK12si鬼ۅ%]0"9 <!}sN"JZ,ج<b/~^]5X{[@Z^C Wge2JP3A`fKYndn&H&Ĝ=I44iee:P+Ώn=[sw|`O~0DhS~mԑ?@Y2Cyi|ܥ~T W(Gsaz0b[6-O>^g JJsC) ^o. '~3{12bJo,#M?\ے\?G: ?@E/})Vw*ޱCʴPJ=Y<րge@ )B$K^3F *@L-K~ohŗ18Hpf,μbWO{gv<|(|<[nBd14Lڄw+e\d  ~MGa9)X_{¯ +z{kZvd=V“C TvdA{^a4U%0lۤ71HlMqΠx&V {E5dJyuBq3Q;ЃS:ݗpJ ݊FQPb9g# ?pH*$-KtO;AF9>R_#X̭btzǁ#]DEW(9D4"@2/ٺ2J6z_-!$Ⲭ6֯Ē,FS3>yAIWFnH(xAh ~X.d)Su!.sȲ⸉ Yާpe%.(A۵+zd=1q_a-0oơb)W?yɗ@uzM%ӨrՂէ-I%1~κI 7@bHGFbg"@R#Bk({-mtE'j|ٴ_{+_zM:>NZ=팷|jY.CF*ОG㢮~[ 1 $:w2 Gu2DАh c}wVQIe6E7R5sZb `}gYl vVϡЀ8GS.̤A2txXwo(ɵ[,\L.W?RԤޕwRuҀ_|΃k'`Dop=_Q:89 NW3|]9?t; 1u %n#ۘݍ:{wOpz|N5]*>%e̩wbhOgd=H"i#k]YTuQ$caEˣJ)#.D9;cOt<ŞFŵO"z]oZ<Qb02B O,Me$]Bd)KMlE9}\> 7l\5ɳKZ,@$ϓǧ l个uDm^t+4/%h4ۊF#mE ꠨kɖE"o ݈L* cV <_xC,8)e7#m<2p83SF| ^-`Gmd>]A3{?3Mt’ͲQ @2ۘE=b0o-+ϥxVRWīM:@^ǬÏ2 3[\Pvg P, JBX _P+@LX϶+:PA̩ 2<qpt8g>%8LP;ybj0㤮[gxb4mV xA/u=Hf.=s kFr *6*jhFs'͞lPBТ)x38O2`hǾ8aǂ6(.5ȽX; *DOuW*!UCy[ܫI#PJ F/LlEVOi72jgUx9ꮭ4ry=7 [rçS*Rz&3ⷱSl0F+.~2SYfT]ZBj[RsX#œyi2 t1GpEB'~P@La+p{3b=dOa s|P,㚰:u #Wi=Qqkﱠj@~PoTKhiΐk*N/EV'Ɓ|]0/bi&R&3n-(%gk@Feݮχc$569j%+ Y`2+CA^%h 'z%Aǣ1_PQj;V,X_qjX}W3E&tuzN ndNk[M:tgM~:085</}s]WCaPϛ.z'U@2QrkMeάu||b|uz[PԖǂ]l)gC[!$6]#ͅr;yʶc,$&.&Eh7-ߵJ1TH9z.(uM‘!1,ӟ##s0 WuHݹvpbxcU b^yp%h~P*PD7 H6H$Ь6]DV&pS6];YP" z v/7ͥES_.+9Pe?u$%4̺(h_Wh75=}ݵ2O{ˆlA$:~6SPM4ީ\v|뀰 7X7@}*_M2dռ`[NW&*+~:K?9ramѢA/OpE}gRiϔ׹yAd٧tu;֠R I0u~sCPNX׽, - bN<õ9g~ZEAk̐b]ٿ *K|g/1 AA.LU.O7R£٦lH*^E 3L9Q(%3:Jr@3 ,~Rx,7 rkIGzDKSi PF6PyZd/ޜwZW*v_@8hgQ>9)y ώDZ?,UX Ow5@b"?mhf&o7K/91/2OhC,1GRv'\s"g2{ T9C~n0hqËK_UD`=oN"Pzc$V@|r4^'UتRB {ğH]j NUir"Ɲu_`SiϼFkJǪMZtuWpAdY|ƥ!UB-@T2 Ƨ>,BteIGk^Ю9Uv!aT#P BOFl/Z9l?ݶceB}=~yda5#fe|nK2ȐG)!Ƿ*Ȉ'$`a)[ǦErGVa^80?w=0ě)ZËޟhgEKj~Wr9m[_dy`Xō"^T~;߰ .I=d,nt93E~al`Jk !hZL쁾~k's}:Т;27?h~Nsԛ} x72?f},ԿeM&5/JE\QrY/OP]^{i+#}jS]Lg.a&yBW#%ii1؎V "C[)WM]#~)]B]DdI>ڏdX`c3}ST|7?B0 wъ.pDԗЅk/HdLhRD^jSӥ=HE$30?DTj n.aΖz!H&P#~obBDPU-<7dw}LI&"h(:`>+J^J6?Y$ 3r?I/}cR=ۺKHkwy@>f70BL'҃ɋ$JUz}' e:2^"Ό]bUIT̓s_3] :*)_n R\pҠ訴/h1{DӾԣ)2Nu궮]%i:a\bx߰j@ be/(+U4$Zsӑlg%ڹt>ko.炼i;t:^L<7=b*pN40+|n|V=C OF6?HR8(nrJݒAR3g(ib-=qQM6 0[ɘ! _5UE7DUw,L3;UoB23 k-UW~ۅZNF+WjBwJ;"$d"ޟdl(Qi腜ڥ&ݯ'a2Q+{WKZ9O5⤍݈.mt&{΂t6˓)LźV7" I+8﯌q>.dnPD-vNz?U)5F.`}Ca:/0JFBM,^D  5͊%DV?QQ#'ټZ%Q|U4,g,P'T8aBxme?UFQjDDډf^~]۲94sKħ:4bn'!bhlsˢ[IgqY,C8{F^}iF15VņR*"OX7)y~Ȍ$.x}sAw_=,.MXy7d+KiF"Xぷ7.jcC(A/#Q*j= 4a~_9JV~Blb5Wijf~v Rt0VG$ ?cؗfueq~`lШ -Ϥa x-@TMwpCRuYs5ap&acUt|hld&pQ"]7@4~caeZ! 2n$"4{DHSe9İFc&?[rhrcV|Rr$ąmdR N -EogKzχR@ 揵Fc mY-8`&~EBۄ=SdqD 5ΪU;#R3rnnܤg8 p3#Ёo"_*=(TA E%gŕH/)*iDʊaخ o0Q5L ۾U sH5BkC#뺷F?/*>o'V9B)J䥴ځx*zک6]F7Wݵe.KwW B^/l\I։ސ،WlLBQؤ$D-oV囍:,[) \7X9KH Nύx@<0ATpxSuiZvU& ﰠk:jׂfr]'gWKYC>r"8d`@26MRa҂/]aKPK؈a=.w/әbf29'Vҥubq#.H"Ҙ7<߼^v!-"}_SQcWopDCXuVgRELijɲ 6;Ofij_X}jKڔy ta;^Xw!ub,4q%^2o%̾lZA T?1„{?=@G e+ 8|HD3g*&XSE [F<4>pE*1\YڌV;i6V)fx<9 ȷi$_JGM&ʐQ(7|q(tuú_w5jx ;764IQɍ\Oܰ@L]h8 pIⲫ pv_emF['~YdIpO%{MOy>A,[TUt wJ4%kTA Ǣ,uH݆} /4=f ֓sNd>fyɄq}vl?(RA]ꂍpһ \Nu~Gj[u7G"/MS&RY۲+*l}QFoW/6s";۵UߙkJ(閹*u~*,=G)|tb}`7 2Yϣ~FV=}ͺi[G{*F$~Bj'(WدJM{2[h?+kw`7s!}L -zHwEkpZζahfstr 9I8niiQza7__<'k;bzv4J8[V od#WFm[Qm/]?741j t(5C*f"D|f) Ѐ&n kpx8jY^q'}jr!cZ7oo﮾\rLH2]CC$ 3#Z IrjiCZƓj C?Cf7 IgxՎV0,(}XY&y)kGkDX.p`&}b'd8W 4ihXa{ ~ao@4$ 4n>W wpO7Kř%(ٗȷi#N8{#}ہ`a}L׶T4싢PmEroUv:7&%/#W? .$~eRmkQ>UMgݔRh2}XKp"SlpC\'g& s'{u"+yĕ`9G`l@ne=NI|Yqu:wNjm fYYOuwu\ݗRo`=gٙb~ NhY˥vĥ. ʹnu^0}^({+bg􆻉Pq(&̩aW-%1 X PhB;py5bl:2]2n5^"k`XTgnɰnӖ-Ԗ[wIHn!yc]m|ch%O9݋195#4ml.ON0&:zg*BV&GkZoA´wuZ)_kmƐ%ذ^I8]ϫtf= щf@IA4ܧU뒂Tmcwl& 04YvXP`I/]O>HXHPG|z}kKNz U99gqOqQôJ%i64dzDD| 0.ĺ=G_]3wHdd v;*j(g,;~ L^ASGb΂"`[vKaWw(JpeبT_I7%О-ew f2k2wcvF:jD܄-<*=XTȋKCE$5Xw6EFPͥR {կN*|}Fn/lx.JCyuv5o^Պ~o 5*FDГ״ I7tedK Gf}|H]X~wkiKQ]ݷ+o,ER8)T23x HJgQh-6\Q$ʢ|@ﴚĢ_apEH].#8)غtJVde<䛎u##z84;XkG|=͕1j%{V-~Z3rŨJȻg+ At&(&"߈!hcox.'GWiOU-!.uk WC5`>7ɘa#EJOs1`=&2S/ wv22ˍAȐ+([ZNM 6m8t/\`HB|ݺx+2 A>? Bq:8ζ$Xe:In'썎V/Vebv\mLc7-2/xut%7Dbcbr;dinĎH|CIǕ0m=O>Pq=N^ ˴zziQofQfR5":$N9 A ͹L(9CBvȾTVPgvGlbo'LQ*,hͶ:j  qq g:o=(SNԾX>\lf ⛌@ݓmd1@m<O9 plR+zچݾ插gq HwXSe.Y0= I~%m`?mX( w\8w->|#q {8*%}VJ< 4Ӡ7i+<8r &=y'cRt  V[M s3J^ʳo۴]cyv$`,˄9Ew!̹> MiH?;HICVRsA_delf Gx/MChۤH؆4g҈؛L3rL KaZ;{sg?C,0 9[Eld, /!5{sZEE=^ݨu6eY5~>5 umI Z%jr+^$S$ųק^O-QoqxUAECdO^-A :;%twW?XA|o 1$ߖ-S^-O b)UAcꑭvt~@1tH6> [S?}Q$KCV/qQFMU^=`q7 )ș˴Pv4 \!gy&'fK4mD>۩g"\DVuTEԗQ4aP^,(<DhH.LkyB]= sKTO %1X㡒W(9g`>(<ؘl°\R i$M)T2〦I2EZ( jqx9 J3cC( TI}^iƲ( ʔJVAxM3#+1}u@OG5׮vx2㯑K5 ˜1sWH^yQuo9~A6ؗP$ a"S}?f1`7UE5ҧ 'vt"'kyo0Ow8۱Q 8فRJD+AfQpQ>&I$N&?x Cgx+f!P`qHw=Y Gy˓K7ij*|DbLBH0D~gd.3ϴ73bQ9 gR@y }َDƻTZK!- dg%`l@nkl־~owPR_u[j<Ū/f3U-Sm|]V'&v+V<ۋ/9uֺIԯc}r'Hs  u1 @1B~`ZG2]`vm#PL'StSy5O&8狎}ܐŧz9n0M{7Rڠ^z&ѭ9r3lTxg IwޚC>~+ut8[.SFҀs*JJUU 0 {نդ8@ doc(>e/5'@+Z0_].J#-XVZ.X%S{4yOޠ;/5kabZo'҆|ʭubF~KbTqpg8 N^__`/<ਈS97Ud"ч|>_X]x_xp|pͰԋzh:݂ޖ_wS-ZvӞkd%QJOlG>[S+iMh+NlR-*#Xo(^k+_ardyDwB$n!-ɒy׎1JGw !ziX7z%K1Gz`~%.oe3bbT/x={|_h E)͆%F5Z8qPmlʎ*~_B#v6GKdLnJU0Wg2LSd(Qk=^9jX_ΏKEfw < ڤ0?.1ewzuV/w=awZi"zo?[v_64;6<4Z u;eh0 -kwhrދ2Ć[5*J38ġH;_i /kZzV\MhQ~T-MDFR%Zi y Kiƻ}u Ba!V ˦Oю'?m.1:x]g2ԔJfL[2a8\OI [<6i9 ]PɀmauKRą"K-/jIvӕRδ̧Kr~斣y'G7l4 M{Jy HLjJ[ PLd=vlS 92۟.G;\,$+ s*+o*9h \2MPR0Sn#B`\gF_l`cO%)Tv5pU }VZY= DuQcEtcb=hV¡ЂkFe5hu ToѿH㶝[p8#˘gvKxヶN7 !H?%6|fr,%moQKKj]]DQ_&d%]08Cs{2fkKw8sPJ<3nik<!Ͽ6e'Ĭ61tK\2.Ys2_E]>vQ@JS0)Ǚ„6 ]? |!C *۽Xz[dK֙ԷE=c6NZT;A XRCq`L3*! 'yT'ddE*BT!?ot$بNޒF AKgNK( #ݣVqnKEC&y6N7@j(` gղYZ.pH%jԇ)/ւ?8Yv ~k;־94vZIG T&Rkzƕ ђ>h9nQqdGgRh-f@_\gns`cTT,n0r=g |!˻ɲ ೼YIM{4lr&C!g!➭}(@iY$UIwRT:E+vTA#}:2} `xɢP &"֍o>Ec >I)wz$BMK_AYڈ]"B1Xv`N9Nd td+ʋōDzL^wRIchKEy8wITVj<I^94lS@ LxzŽI;E/>BrD~;{99wo/iwKL n4 n˱SMhI:&uO .5H6);guY$_ ,cV3/LcTl9z[>R96e .k\U.a!˃-Ԫ^:>vQ a}Ij)#7YG2Ehi;`=v Xr҂<*k n&Q\c@@%@UhPUhI@bX(ޟ#O=҅y9R!"1Hd4 .IXk`?:á_9qcUx)[a)&&j}:`jK!G6T{X'lӰP`;zo ̤ڨm>4:G~,[Ӕy5!%>+Lr_JܼeG~Q&Ed1yژ01+/]1ÄNQ`-eGQce-Z ;&\0$EтC횏K0m]<6~U h3g(Qf6V<-e}EjG7@1/vH/hHjg &)$kp^T߁Ve0 ˶eNd7+fdrs<'ti˥7e ο5Yuou-|""KW)T<5) "]rn2Me;ɋ4_^(F1fz|Eqq?u)͕@Po8 NN|=f7>%9":[r-_VpYϜyA5NgHD>ۛkqCR>[ۆ:85 U [*{썐)"k5D~ :Dgl<{>T@4Wc: sҷ†l)ƞ[ ?4/Nw% F  W{HJU~2`ڏUH`tAN$&"%Y&VRa#qɟޫxX.zA iMs%&NrOW4|Tt}+Fş5.ȉD'0jq]|UɄk*LKGJ{UDk:&3edk/8*R8PUpczJJFU(x:0bixС?*0=\L朱l\b` 42uɺq{BC!I ADoCƆ-U@P̿y]eW5tM{ρc"i1hCaΉ#Oŭlm%ίԓNAjTy60BIBL! ,,YO P"'\h- / GCu辣FHUhP{(*P#ޙ3{ ]?YBz}X!}IZCA$vA-Tv w<-_k v"nE5;/5H%jmMs<?`,ޡZKw7Em.sQǖv͟XgUʇE,ar$s! ciwn#CA#~9n 682L=yˠB0j 5Uݽ:,r`g6lOcii**g!ĖcILh "o :串_?GEqo\j͚>rybz;6_]ȝ%'O=P8WI-@)^;0L'/nR_fd_ft%ȎR/3AMr({5|=!Xa2y`qĵ1N?*x-%,VO:FyEl`z^Sx]T% IGRwJa $MX0nx^H?Ț$hpr@ *ֹB?f]ʈ!;]I'r:en  &RZ@Z QqZf>K\%ln@}<c&Nl^aVpjdS&pjiV6etptK?'lgzVg0).n1 wOհ5ux}=֊αp#ת`g,v8zb:@6ҕ$90Ћ~Ev =K\eÙ A^[^(:/ 9%֕,hyc=F>զWQVQ#vIm18yc~۹lVoBٷ`ԑg*.| a`b&( (N|P(~;=tI:HQ5wQLʦcj6Q?I #Q~?pFq>K i&wi+bN$ r?* ^mC 5S ^In?_R=yWRl++$V3.ѳtΰvïD47QcF>"E2m ]zUgũ?V䀛.QdkJvdTQG+ԧ޿p|F,0[uljUz5N~ +U@uvP-V|/l[PĤMY썷WQq3N$6rAXM$"8rD95^҉|݉k;_ NJ?6V#IXR^˝ sϷzKyO1_P2})(ƟW/f`@A.~$g&1"lcNV,Zf|VxdK6[B3{?ׯ"F5J؃|>6(#ffi_ H^G'7ؓ>23)!<- G֙~?#CA0^OZ[GDqPυl&x/nT ˎE놨9dqv/8!_ ы24H6q[m t)x|[|H{&yPW~KG n46RZB?תޛZVSf) L"B1O@xڈS2bRrH0$YδkQuWǾ@V3 eȗU$rjgT(!$k%"!C9m =GvbGvLv0>Y ň)Y Is4x*{?C0 9F%mj\ssfA&f/"UbxNle DVkPi2 BUq9>kR ks,kxMXXq5:9<$^B󝏀*D7qdRQOk5FJHV/%KšurC2f5STȬ[j]=1, oLD#nt r bʳvNGy)ɿ@OT +kr! i悿?Ʈ0A޶U5*^֌'I&mM "+Nx\Ty ف}'_\|NmVU&3&gAmPx+ A0 )/,*.b+ 2>LaSUZD4}V82En>)^\؝ ?)mE' B F-\;% gs=5Ta0ʊK1g-MYz(9Z;Jx}"b"$}y*ؓ};+@>Y88hJG139S*'r0ӑl|#pf_Lq)$ʹ(Ar;^T\OGCqU$;jcBwyAyQA~1\8H*(,M= rJ_*&d)"6HඞH>Xje]J-7z1Wu:T?PBtM7h"y`V1ЭH~(|IٷIt-~ vT\>X[,VSA`D/Rs?a{RC5 [7JP2[)Z]fK=`&5LIJs"gLrܼF;stz @iZYHdO!NJkGV#T=Qy[-&ԉ.A93>&6P$bÅSu wOMwбizDtoL/R{#s@K-9P؋cOTS GcY }Ut *[H|TOӻ>J/@M&!'f\8PUAq>)n).&ɨja1Ecl`v_ʑPsJšHoOupc ZT3y6 JenbVGotu1cca8I1YʰJ6@$2ZK"j=ꆘu3+qE)C{*,yAWGBZBnEl5Ycu5r˷B_>KW|D?3.C|<@΄0_ԉsB̂~&t98ct( ŸmŏLȾLoQb(ٱi Mk4x  FOYӵ oy?ߕ*or]MA߉8;Jks!$`4^Wh ca0:w-x@P9+~B }A&@tT+rQ聕_Q&bVJN[ Ԙ~ɯB[?RUB\tR :ЅǀE.A'Zh*X_R3pi"jh\(xK-:q N3>*lIbqxՓ΀0A;:2Z1 +'3@CB6,?Nc 2͹T SҒ]\bIiLlџE?e L|EmDm?0giYR s;1%"w>JKDw'>U= ' I2}@s{w3՞=n."~/+L.?Y~vK .b '% 9 #j-!;kaϨt:#QS_RF~2&$Ov8?OKPslj^o_*3 8{eSt'l,f#=]z97 (vB !`}?[/%C>DGC&Uz}:{6ybPnF6\ga:k>_Z{_L7+aU Lv;xHjr.>gE̖%}[>rM 3d;>h[վ5 e[验oS)q懞K<W@`z]M=!*^9FryCkB?lDds̲e:N[b_\N)@k·C쑪s#|2m"LP/Oze;(Ɲ28jСJ:V3 :QXk͊d,ZgMV51$B6(Vʫ6Z?9ߟJ*$IJKBEH-/k†iQ~:p9kI=۳5Z–>4ٸeX ?(Xp "թ]%;W^>=;4..Z+}Θ (ZXɈX~5E b׼|A=,k_U:IND;&0*(m9]{74\K$L$ڧES%D]nח9@&Ϟ*}L@3i9fYu^$+z,C;墆W&u;fTx JKZ(2Ni=oq|jͨ}tQHYN#ݲٯP(UV ?V3tj'rCJL/޵UA⢜{/ G'i\ B:D(֕I)" @趩4n-C~C'yܞfH#Xr#T|Жj&l fn,n\uX Jmg2]~wn&D6}(!whǗ3l(8 0\?<XE4Y8T}]?xrݱo-w3x<ıN_Bd,X3u (n""5C7.tuAFkpDcsNbWB@;:hxi^aAܬ Bu㊍&4(Mҩ1G-l"`̾ Eȸl#!8TuRϋv?WΊNAϖ@nn+ MCh&`|1Gycޢxm oML#+ገ |׆3=Pg 3+d&!+}t HA)7cȥZ \1-b8;9׬7BOF26-(ՎhK'ɬL>s(T-wbU21ZtT~ W3^Ԍy#m V'Ӽ%Վ>wYiތ#j$0eFyv:JUl_xCax2α[H*J)Y0uáƺ6&7/C@|ufP FQUħ<J B : [<XGh@7dB7[$+E]E3bH 8P3s]tے^.an Dk%W\Si9e.۠Gs1#YCDg1io޴B5ߩXHH%$庵h e+!~\iCQ.kuZ\[zBS|7a铩qH7Q!ja,`NB\m`ks9H@)8[uMZ}exEgh&ɿ1!1WS[@G&INGوF$j3p٩oMDZr?ZH+_Z%cElq,cm _X8mSυsvԍcRSM%`q@-:R컊u s7$/ٷ?Ɖr9ÑA6mKyMfx\0(ʾ&Su 70{ʎv)zXwR%!{qW.3T8,XsOb7,PAF_whVJSyQx#MJ0|[B\*kֽEN 2}ڬ:ņ=[ҝԹ~PAR?tL):Ǽ2?nEB9.Sy6m(MkʿfJ&3jIJ0-*6=u% Ә:Y>qD99ѓ|E o2yܜ^ᅶqh#d חTř3Vmeҧ Lj8 rl~I.$TdM! qMtȓfPxZ8 1ɚRĄH: V4RjF7ʕ{[!pv Υ0l5CN6| gF! Chp﵇^%Ҙ-,S7DPG X~'Mυ/2sv55r!HZrZ*6- q..yC < 6\^ֆM-J^Qɫ'btͤ# NaZ4]$Ng;DM]nVG-V qC~xl̽v)o#\|46a!-iWsql (R֚S:CPH9V1fۛjrwbt@baLWm`U'nlzKAY={Y՘m?A8LA<Nu* 2AfX_Qgy\jM ! 8D_^n5]E”fۡt/T)lWOYR_b-]C% \ASWO 8Sʶ $j؏zpQt3zFGÞkYCnM*s6D_5tn iYOoU*KE0.xD"'§#tup1>" wu[Xo{oi6M'OыhFC"tl|n"xΓQ&uGvo0Z] GS}0!FYboqm>"hBG\y^~M[¶JKs.iWtXb+7!(4s"V80e ILb6I܆X|"g=<)W0c1L~1$Q#Cn&YWR+׀طGM.ɆvxY g7.-zfba,1r$ӏFnDjz_p08&;r#l,l1:8Ud^XJא.(K^?CF|#lW_XAAU_Us *! VTd|LXDE b; M_Rt/c^dq CW'@HJ5,u.6}8%TOWG}zo|΁q! uDu4uZRcdG'O=po[ CaKE *-8vlGI5P\=?;㉊K"ެ<0gSNH< X'ÿs|0ex3.T:g˺^H,K/i$fYM17Lvƽ/(ob~Hm@:VZ^`#?WE+oà;㱐աI@Ψ2:qs./ܨXUrr&~ٌ5\qǖ.wJiS vo5k "0Jl8n}vxfO?!YBZצ\{qVګ؟,|*pm ^P^6J(ZR4r0܊\ksy ݴr)r 0 &Z].T9scŒ- e{D=ն2Pq`UQ U]Maݾ1BY` D6) hE^zK]?uz,n|zI/D~Ơ@`ykUxlmN TuH:}*7ٞ)h!K38:~%[Z{)6CZ+G$EbQЉ}TFEDHoZ[\9eyPC<-L#U~/K\lmJ-.Fő+>Gqؿu#frƴ@!e̝hp#ouC_fu2*0ܐ2/F; Qk09o0a"02S:rl4j'`tZ8Eh: ;n!$pa=3lw<5^V,UbvXQr'Ԁ]zV_d~%1S1Ǩ?ɳM3O\n7 EFȭ~0ttǠs)91ŽKP7 څ 0A& ALR|Y%o. ]8dOR7{D׻h姨| j:&IL/GI^YY%ҘGr,9מ SQ%mB ̋CD|Lƞ,dEB!ihV#m}GW 4{9{7`C<}"NְqCޝCx][VK{p" l!%nݱdI˸JL?DK\Gbl M0RVJ/5YoΣ/;1No^+igN +g)c, 1B4!fP G!{UAF{*S0BS ؔѨȢ~ ycvuB !Cz%%|Nɥ.rY䐥[t@PNZ37pF8cme$ȻPuqуsfW2T/Ӹ Y8:7.$v툣|]~^jD4qVI˳6A?62?e*v bvoB^sX=aw٤σya֫D2Ӓ}_XhrhT.*y;, hZWi9QU\g p/Ѓ_uKK/1 O/`" +?U*8z'Isg\q љy/Q 2f}f\Y5l:p-t xDtNW4]cYra Ff@zxNRJd9gԤZKg1:s.nT!;؃q5|DN]Xa`R iK>2^RwMG|pgNDK%:KeRWemQtӠ5j[9DJ!{slrIVx 3+~p( #KﰖTGo|~]h[Aod%4 K_8`o XTfxl%aex~%.[#`.d]LUyܞwoDcG7%j ix QjhVjQ9pMA0bΪ}B3~HpWG'"PbG%gΦ|ө9No̯^v ܘ{?FOGuY1oC<,SS wĿP䌲"hM뒨N[1 Wƙe=U#XϷ1>b;b-\zx{XIB Q\8 >zf~@&=nfUA7뷁2_' JkX;wRuBxu"ypcҶXr*1#85_ٲeNNVohإ $FehMR-V ̬755~߹jh(*pRj[2EA\`h˩}LOUT$SY2]GEs(Yʐ5b3p$?8&ү4' mk3B!;3s-IfdueGݢ=~h&WtCRciQtoɛsʕn2&̵~?.q7a$#S|ʾzo&UQ'}y2PFzg`8 Y@>YOs/Z: ~&X闌rB, 4ֱ1ږsb¬$j~xQ1POWc ՒW㎳ ,XNlr9^_•D=C^Q"8k(0wHdy4O8t*Œ w/C=tQ[џgUKs_E0&:!F V_*BP%<Ԡ~_md;CiR~-B vBRKZܤ:N"TE/5xT40/,*9œ!V` 9][7q\X4zμDBykE [s]7۝5ƕm0zЪR:scʹB-]ZGR3Vs~+PR7]6V T}TbIjpf sHY!BIV ZnzB,[6˩Ξ-\4㍕hJ2(YC +!Rs஀{& ,^Ch98È:H-ݑ#tmmK_h3 :3D֥ňkGP&iqg˾OS팿3fr= nz,-K}a}'wg$d_6zN$}۪\xpz\b(o} +:d(gTʍG:/_X;6yXb$DHkc"^ <ߐX\ε,B F6:dܰ{`)WC`4'GwsG8Dl$tw.|_-= w&[lAWʴ̅՛}:Q vRڣC6=}Ӽ=;c/]Z"ajB^,9Qb3KC O\.tvz0IaD&Q%}Hd M)=fU @\U G!9lkzos#VX!+2U4*dյX  ؔ{E)r].f{KG5[9nCgD!aCJ&m Ɔ8aO6\YVv8-ХuNzqEʟ_qq%^r @e0j,S% Di0@:Rc.Y6dd:O+3^K}b^;pMx:Ϲj!Mp~|P LPil9`jE*bA]$d9 c큘r4o'[X*y㌄\Ю<_9b Щ!¡X>T003umnϩ6LX؏ij2ȍhIe_M݋.Лu:v)_?`N}Y|a]+ƙBQo"άQSucAW_l˱߼Ua/ (Df㯤ߥ@OB]Ёnx4rhY{&IFw_+ؠs82Rc6C}?Ǭ~uҫc = }ɘ _\t8tI'طtr`T~jREў}LJuA a7 .&t^1^}Y)Gj΅wj~u+CqJl+و mx݇Fbo(%ɩ3d3E%Qz 3͎])QQ%soz?JypmFNr:f$CLpczSw!.RhWfp{~%V a/Q(Œ[Hӊ^RXB{ !YJx!3(f8]ZoY=#oA:L=o0;1Bi}-ν*ᶂξJZ1F*Nnĝ[>1:*h1ͬkI z=QefFBblV:~p[!,KД؉EqMn%ߺhLvxp Y0Fo2%,EWȖ7ϐV=ϔZ|=);?t#f~)n=Op  `x 0;=۬MպNFwG2IPȶy,!^4eebT/;BΫzj~Δ=W#ɼFK1Qt874z񎝱k-r{acQZzunCJ/YB Զ(MA*ҽTçAAxUG%\jG֪3ING7 l3`-|B1Uo H*xr״rFh;/yXsJc x7TiF\]pJ|VG?ȏ#"asr\؟Bd M]A= 0_VbyO갈(ڋ}R/=k$jyvW fēD=?epйbmkhWw.ḹUSzz*IXqb?'x&tZ$xr$^'j'"`^,9̴ `PVWmMErj M|DSI.)"0?g7ܼ@QNU.+ctWZAUe.iSH˟PyMIe{Ջm8N COX :[ 80GUXkH QRXq=fB^& [[ǡ\[Գ@~ .QB~8 `C9WfGBM=#أ兿_Hsda ;":zq”ٝ[M yOyd@ uYߕyd92֬Qei/d.[ h[Z@ҧP+Ysۺ^!v҂ _RB` MU& cb+75S]XW4zC+; {y1f}Gaw[;KZjqk#ʖuEBC7QMJ߯ z(Bz8Fok615Vyou{vȷ幘=וOĬ`ݔ ?@@tZTze; '@N̈́%`oV fF`Ԟ?z&-v]nREUI7e}86cl2d~aS-Ǻ!Gj/KY~۫LH@2%$!0H q.2iB(X] iM J3 Eiz*?]hBwׄ4eй9E{rņ<^Zw% /DIec滰TPsy( DU;h*x!jPtAtFhkoTwJq<RY]lx5ZI@G Zi/ԆJ-cZFhN"l6rmTopg~@R[wlX)tEõ,)dRQf2Z0X_H)T=/5i#vVK|@spf SmaaާSLH{XWQ-ŇHD-b;t9|)Zd^\͍ *og6wc:ЏldI Tr*Jj!GU2% KPG)G2b}hKeŽ+ړQ%MKDDUW a3/b9W v-yĤ!Y lW@EsQM{m8 \񋋞+>gh72khݭvF}|LZ,~̛{] |UN IPt)e#hW-mA}|?g˧ޤʴdCT䎞F؝,?tIbҖ$Bai6t&ғ]່ȋjĂ>]L}J+d13r.~x6hƹRv?} ӕ"PYY0%bQy~"aؾ[׉ӈ66z*ds/Moto-g{ tf좘%JA E=GRZ`;431}XՍ`!'w'Sa2Lu%Nb%ޠX/k0CjkP#LPS=T6$= vN~,h&"gt6$J5§=b2KeN*j1>[KchÇʆ?3&+QU^u,2}32TON>X}4l%NMj+Uq}DF$ ?8Ɗ3W5,"-'yFv zp [_e9Kُ@qt3߾biDhw/9/WIJ9o!ՂΤ f<18 z"҆j] w^\ZVGx Đ"vC7o\nIE)\TV#P|©P3aak>^ lп7P0]tmԥ=ZI WχH+c_*ij-i67#[?z k ;)C,}{-ؼB ?(xHڳC^-UǜH!:?]3Gu_*~ze;/I.bvt|tTfU9džUIi7 ^g-h[:_nw_. 3H/*+I'`>E0CfzΆUA{CvCo;xz)߮`]ӗh/Wmjs%Y^w#!8oӲPLw ]PaLFad"!LK2pEpU<>*+S _$,rSYtcξ*Yկlqb'$o}T7NRi͒،?0/b84ʆBC[0/U]/v ,.Ч&>^`_M.*ӡRtbXT- wGF:Q66sݷU3rQd)FsJ.2˿]>t R_=@Zmzˏ9"T+Sg~ays6\d3./Izc$IWkK<(t~6ܱW-n+@0htg3*iׇ"XdPK=zGRV q7Y*("*0 ؍ϳj ڮHy&sHvIlC!G5VՏ}`o2<80=BzsohΩ;x,)o5 9ch1)OrWl5]ˈA$;%(E7yJ3rē0XlmGsE2UcN_2fY'WCϚ"˪ dAC\g dʥc귪\dhe8Y5 f<\bxoZ b{E@UmtoeƙT]Z.&-$LdQ[b5"^^:bGf~(#O5|Zt8In :9C' [ϸ]oSb%sU_k<KM$ZwW~0Jg9èH$=ˈB J;+tfr->y)B.:soo\@?4sZHeoc ,Gؑ~kDD{n@*PR#[W{=q12Ň¢}|;sr60aCSWQD@z'7\Vɯv?36!B_O=UqČ~<ێF۵d ri?yD%Z&ƬlQMGWHO^ _ AÖ@h(rh(ȉ|l34XwT8FbvypcGLL&s"l'ˋe6^XuUxq =._X@I'3N@"0X^[ <zFiĉˊ ɇU9GG>8s{͜Ŏrpz8 &l@{Hat(&3kaܷSsu3|F+f{Ojk8: ƹ/yظ H=4&3쀍lPl2!8304(R2^G]=VFM\-zS)LNv,;Y ]a1o{&;Pų TAbV;4-5چdN@a& $sW>᭺oLYwBLhƚDljey|b-FWp>4 ׉,5 r O_@ںW5䡘۞hSR:%gY_gF1T ׿AV髉߈H@m$R-QZss'<C]dX$ݷQ7 2l 5U^, ~ϸcv2l {ǏȞ)ax6!p7yDè~F84JJ# &4u &%~3\Bs4AY3alOp+vCu34BY vNR9Hkv>_l&U }rQW}j\~?!% K]=E ;ke) ;Q}1F[H0O[w kKNDYztv#Kq>Q"SZ$^dOߘ,STۉB|*Y׫Ї{B";aɚmlQpi,bՔ6%=rSnߠDuR𵔶=:d,)oiucw-Z:=!*3TUQbzm 1-o7Ȧ=c(阗a$QCe?nix(U:O-0y۲3ŐB2X,RG($%UV+G4U6czg7>}5=n wy@2]c?@j ]h3b&[:sqZJx*JQ`f7z?Gh< cASB s0S.RZ>!4X)\}̴tν`k[9;1FFzO:`9v;ܰ کbzzľmz.0g@+-]1oȍ+1:kb )&KJDؼV#0IDz ;d~4'qUS-Bo #Es2ta.2zL>'kx-65AQJ )VLrbP~/Tb_JlH?y"rCm d8~ʻ (*V KQ!anJ=/;d6&v~GlAdKP_tAXrFpU1Q]j&, s#7 k@v%,.vXGDkXv* ̻֖1;=O' M,%ٌV\{&zGN (5` g`&B 6&S=YZ1sv L=b)qw6P ;2.rkHgOk}C1%`&+6 ZiNY|p|/ǐ̕+riCQuGҹ?~r?s׌FhGqvgŃsְB M'%ȶ V#`i.Vo҂j #Z.>G;[(}h("H- walΒFN=1Lm"Xn l#֝E/N_̳]n\Img.܇x553gߏ)ʄ:PV65DG# &o/]B,j mɕ L9G{S'dbh2C^wlP|c !2:4Bfė2 vJMzC?{vA/kHCr"Qx)v s"7Mnw+eP3:m3JafnUd,$«NlMSevjTv+\SD9뢲${ 㖽6#rgp)mȝCm"JWZ #_ewCS˅!2ڛ.}hHGo,[ tmY)[o[E2;STz=OTւ$J:ye0~ ^D;"gO; pUaY *ZJc NJΩrwÚaf L^C7+v1=!:RY zO moK6M$ yp @g8 cC{Y VQ(}^%p(ߢPUGAc. 8<%-+< |}Va11o}*?@FcHq䇮KY845%AE*6͉f?H_aK2M-eAG9V`vP=ݥ# 40 @p+DYJ!29ᬠDIAaOi9^EhX#FGk`RQ-*Pهȁ YY&u 7?3~V{HśJSwhZ,I=~ y\v]0\bh./ܿKae!f$Mx)A$@=B/=}ٯn r+Tؠp9L=̿FoG4+ [ȭI51}1| O1|aɔ 肱+ΥpWɛhp |i"X=$lRǒ!a$&`nҔe_$.L=Ј󅹃,Dxms{Ew-qrP.'3H(a9ph5dӐW ^@=7Fh:5{raGPؠB-Ӳ Xh[bS+VY89fG4`o`hhL=\ĎX)DrK Up!qLQ"8; R+/% V!PôW,߾? kz"1Qr⩛SGF~{B6zբj?!U?ـY8(Cs~l,Y3JA[Gk)'LiYD8W699`fА7QE/WLDZc?N8O4=Ѻ@IGb-?ixmK甏aR`DÉ [>i͐6eH(5_sBGBx?̶J5XEw:6Uϻ}x&UG5I:/6'W6v>+f>DsC/5f|vD^~&@*A"oT꽠|GoiX` WK Qr܇PYs~/_q,t X(?@"$,z4FA bKڻ`M ŋ|W}8J棾w/׌NygcL⵪-qj];ZEe1^c%R;{\@NF4. mNI &TK/z讀YdF(1KDeQժnL\(#$. h01ES{`^e^RFY}n+ 6FyDo@E~ 0O_cto36:y ,5Иy7?C 1ඥK K H9pת3c{Sw3ağ7Ǧ䬾 /Rō{Rgkc {{6 nsy-5ble霴\IH| @ܪ3>Y_mqZK_,ޅ삤klV9RK j~&un/o: 5E,0g7d( _igLlbrD}Ko?7X5DheGO%\䷆Q^WW8l\L$H;fU~-Pm3`~ô \x8&Ĩ$^.ҙdЋ4c0 kOf:<HAam[}պ1 9sj>}))Y$] @^x)tK2G0)eN3cU@c ?F]8K xP6'h6b)dpXx$?kr X1Y|“4vsQyq1 :cPR̃r@kaH$s"%86>tC.wyT7\ujEZЕP<|.5PO X(QjY^^E,ƚb/,4-FK+qTx6rt=>\'12J'd;XF(G>`|._iXVH-_H_{^ U-LA6aMr·T(B䓋U$mu(8UKa@Ҷ2O9ET]O3 ~pW6;8 a@.85>WFSuVNP$4qh^rKjgUN((yҍn c{tUӫEu4,Hܤɬޜ y|c6(.MJy*蟏$:B rm3=P6s),䭇#&PVE4 =rc9) -yI zapd]1B%{p吾AvP\XȉUٌLԟBWNC2Ԅz(\n$> )mdտ<Ȉ%svi4\#&#{ ܞondRd-N>dU+d5+&C%/lŠ^MF̈́S^q dGb^V%̬67عiz>% DUNޜ4 u滛+v5|X-5^8">=9rL+{k`)Sp՗1 JGEM˄|e4#bIEՖaUjAjgl}?o=%'+g󁒷9%avv}_w"EgeF8b{RDVd~ >p%;2TjmI=3Ibz^mШCjr_<DlZ.d~ ZX"|yH@<(+Wl9nB }ƺYJYabh{Tc fqL-4-BreѾSKNE}`,~;bW|~XdG:aqzpT{i*U( yC4N9P цw(\顮=S\"o ,g껰:STsтRzE#&X4gGT\Ж-m1g:p/#q0QY[!N?yndEec[.O!W”}r!= Zgohnižw`m[ť9?)A~ʌ~"! Bb =4ׅb0A Gg~cfbk'Əξًܲkr]9FČy(4ǕvaSV7Ejjm5ٽ:V<g4~E`"&Gg>1->: |e`#qm{??u,j2f[TQc5g h ONk*T6[-$Q KzM>yc m9+|ʋMԃCkTT>r2K12|BiEX4]Y ^$.+dmrA W L" BZOmИ;D ?2^y%/~o-z]k}H$N~ !xC,j+V ɉS T6tLzt]~܍#D>=Ae|Tt=3lW-܆2ZN{Xu8JJ ÚZE*Vȱgjdeueg=+E}6Pl^B#2fVZœ xI=Q~N[銎ű< yO֊l F; ĝ!(xY랛Ն$ 6aculrA={[cPuZD k]/* ɢ* \p^SU?]-O K3?.]<}Bm0r6k\y:0ˋ0$K'\v*mtJ(-q4H:ii!uT|IjҳuO _}[{?eQI[ݖAVM$A-f?E L#Wksj ~>$N\BeY͉%/rr 4?<г`,F&"u=LZ AcN.hNmG[X>\]<MAdS 8jx$IU c -}J[ypKe?$ݪDp`)3cDGDlB ODPO "Hfџ~e#1^I>vº#ߺ *֢GA6HKBX|]t D9y,ݝnc'-`^.:L4_hgB"s4y"U,󅔕x.*yЍI0yGV?^*ڐZ, Ж2Gi40}zO&cm Og^sl]B٠DsþF Qט=b}ӈ nl95~Z&ܯqy'G[@bt[N-J.ԧ )kOHuH堾=^|!..m&'g}3=4LVFb묒\9ZbxKg R>A] ݟ#tX)Mqx-w[XUp7ђhsbQ!Ӄ*Jr'nO3DpxRqTڎ.O,oi%4ǰ7J]fWP-]uac CYK_#[_2`$Ⱥ帇.u19YhWo%FHR*+~%Rd %Zr 5p*"IPz/;<X-sQԉ˖gq{NUƚA3YQ4SHCw#^HzU1b{U  ~sX~ ߕ} V"h \N2AѢm'.G&יˉӼN2BqE)\p<6h/X`a鑮/`oiPlKXOYG.ԂT1i`w=PČ~P8$i$V[9 {8O@RRZ܊(R߹.Bj=Od6@ 0.6>muU~&P[>JiT(oLU-hU22?O'y.g*!6#@^"biw)r&bY0I_O|`YclsGqb4TsO lJ]C][UeNPxF{)}Y]ߍb{0;2WWɇ_'0]UvEX3ߋP ] ft $Xa1 >lXEԪ>3Quk$]Bc͒LXPpM>ܒ9΁KÂ~rJ7ÖGNd`s6ۮFD_䷆rF3fZ^15rv߶(*U^ ^r5 ;kwR r?6\3JnhvW |E/}WZ2j>!f$9 7/nʁ7jt* *Rgdΐ+1+'8Yrzqo4ϸ%,7`[R`L o{obfV[rRW@a1ulZ{r:+?hsz " JJ9 M {T`T{f$W~l3⃒岱^isʤ r\s*x7N]f̃-PD+BoecT.*W-;UDR,yv7%Z#saRx?zX,}! mb;l.'|m݂܍^dFL¹~҄w81A BB<|a`d 4[%fya `q#2dF83~ĬW@Fm9=A^MTJ_|0fU)&:`β! Hjc#~;21}7k@'GZLH#(L%(&+xdV47*P:Gqda o'lgsF!+[ժ vʿrπAu,wWgտb}y?B&5h|;m]Y}Tx=?Nru;jByvΑ7&&ɷ@_GWg9fj!)fn/f?7߲fks8>s関?KۥFO"8{b4 g[\,F4a[TX5)nw_nB66)LY6&ݵ|(֔G EV*}4+Hnn*tM\_+1oo}\e@-3i)Goa07ܚ۾ƈ3z[xFY3T"iUP8qLIhRO#`/3[;1vxT MT!oKcdS2pK&'|+.|R3Qa] 3_n[Df6'2QH|BMbY)Bx]^0{,6EQ~c( DPL5c|XG>d -@F]YI4Ad[af`|Kq6q`=GtH'5/F?+絑8*j6v2y7 0_W?aBpbCNmRbrPpt.SyjY6GH3CY<|cʺҎ u ;E7f +c5q4cԝRN76vi`b2!c{˝D̤h% ]"0VTK?;Pr4Xu2:SZ>Z{ fl[ ۵;aiD3AWyՒ țP$.8Bl1~YPy#l6mmGᠳ2xKSCcӃgʷ٭Ȑ扢y FVzٶ怶DF.NEXd,9ڌ?KzXgvxw}L?|QBʦFٞmyuodb1/ #xo7jNY-C>*Kpukoݚ g׀.0NAXߓwH,ڿ,zrS`P6\XXƴfK %.;&_;I$)|uɟnlQ%>rUr SpGq;>L{WRftƫSfg S_nǛ zu0(;:ˆS$j~ r7!6#g1 TY-wUGȝ6u Qv4[V% ["x I]xE\kQ[ Q;J]I3 #" 1  EeT6%|iDjj)^0jde }* Mj)|(_(i~h`>ÖRڳ(x?p۷T M i΍"iS~`PagoAFlW`v %{Y-D%m eSTFY ݣE_ӜN{x܁hM7 4ΦLqh[!/S,@a/0l2;'q:*IFoUՊ-1| Y!U?Vgr]> [(x [31i>bTUܵ{dXZsBYC,h`Q:Sl〹fԇzt%8v*+mVDWRyWS2}T $+ŌԍNЈږa,?4֩ ׊pkPN.vJ~f=g޹)G&:F&AF?(QQet̙}…uWN/({S] %Xí[Ec3|L;V+M>r~jvWf(0/R f a ~cdzftH"gVOTLװB6w\\ځdKmWƞhFNf U>% eb`Ŝ2ys58w)6k^Y:CyɪQV32yo|vAh+Pu- [D 1 q8*PyLGƏҼXXMBd\/C ,]&s6ioꂝx̙S,ŵ}zBlb(t6^1$ n7*M!".~.r臭Hl!;u'B!;$6ZIՁzj(P]2%~S Է3|5Ja(@_PlCoL01Gjw/ivMsxAUg{.\%x54Ԗ/Aw !W'4&u|PMIVfqD:yqKmvԎ?*c0=Ԩ{^Gn$h. קI,8Ci~v1[y0'>'?/V9K#ga76t_g"Rew %w"u\X;l ?h:ϳ$D^ԡS`k C vtn[8B뗜8价RE 8 k.c"x\hQ ݎ7_|/ PiD k/.'Wj+yY7Z8"j@]lA~ܮ*ʩhG̀XP`&Խ{k>?0T`9wnI.ɿ#."fE ɵJTzۈ|e>1_s͟t]IePܪMDJ wm{NnOʜ>MZKTafLnM}09[y@ǰfʎ)mv-wW}(6y)!3$ݎ3ib]'ur.C]7Zkyy``-cTj8sV>m;Dj8%i,ྖ?fؠ~je[|XN9/$rTS⏊%6{Qq(g ݘ - EV02Mz&x*䅞`jjz:~\ .i3g 6D!9$7Sj]4Y9)l\/X5ÿG|n4íBbn/e4 LY_:\42G"`RJ% LAg%8 HJ 3&CNh'6 ʙ2o\ˮΒsՌ9Ģ3ioLڷQ8^@[_8B[9T=wk]C\v$"EQ~ߛoSoƕ@xo,?04⛈y#; =g Yk P`VoaG5O)vV& +e_sQ!=f i[m0aQ3a h(7ߵv?&Vf~pre_Q0w󙔫Pw{vf7L˰D0F6yZ]h]W}gyn &NZQz:_:Ʈ(9S\@Ӏ$OOGcf /ہSA& q # wC_@³`M7yvMT9N'CߜS4T?ѣ&2X3lLAQ{=#3z1u-d>80i.K| }Bom|aϺCf ) Cd"2oBiL,\L+_ii+xA v ڼpq+FwFߌz->Z)N()$JB:|GG UE^VC麢_G(7AژpҰ[J~uO};_aI%"Hb\4^w϶΍Gx%Q@:78q8L>S3Oxfz 2EwJ$EACQWܺEU*a?m52xNP%.o3H ܌+>qGޝ9t R Z\`R~SXi_?uكPfc3>^'|Lu#>?ۍȴ^a}f'nu.6!'Ȥ+СDKz Z_\1jSi~D?+*@W3VI=8;\,΅d9+>;.1^́_lERʍ&]<ٹ_}aV~ LѶF"FX<ɶXymPz|3Kb!ҸDX@Kͫ9ScRk$6#_Kصh:dAeFVUG0 {<مI^ +/JZJ꼞5T EmkaW3p0F8xg[or!ncrvKC{ޝ/ v04)%!MOA>YfkQiCIV#OuyX '[l-9A$S!;y͒k&^7 X<_!=O\ @AYunKdˋlk7iȳ,_v¡ל[lӘEߩy&I+oꤞur ?*J*~h\ᅯt(؞+eI;b|l$a v;|y$$9ݔ^~pU` O}ƯwĨCr9pVxڝZxSng.D*2T.fvulqv#" + ':t ω gzU^1{{?(\ ?O,j]j1x"wؿOBetj*|912V XdO4}ԼeSj"\A+{23`}X- }^v֩UloKJ5pSGEMϚp!ÈU$PE (4\6fjRLQ \Uv1߾m$%Ewe>dAHQMe^\g8cFLAD9ƈ"6XFNl>`QjہywϿ6zfE.6, nۙVt7)v6%R#ifr+,.j8l䔖3JitAb% ٤]/O!jQӷQE㓷<6 $GPR?j0q븚ZN@ǘkETKgN Pq3a]Ld~S m- N`|[6rD#jHtCrh7ZxGZ ][,W?/H:{bI[OwMN+8>Dex\s<.'o5.N?FO+/^od)UU z!'c 80ސi.ucPۻb4o̅b&Ӻڄ6<%K + ܔO5wVd̽Bkj,9hG0c ړq@DB3DzIEBe/A@ RXXHTЯNmI? :;=< hO ilP> r&ɌZkz%-bxF}"2KAcȄ,Cِ=zi:Xf^YbO ԹB.dL[BE GvR7:O )'7@owF;k1"ڐ2///"_g`7?P(,6ӠB)Z#t#V$pj6Ҵzk3P2muܬ%2ۂtL*&WۿEns9[`xuE+όOm`E#:ތ's3ͥYmc\NmGsY? i ~V Q+c) Jb G eStIO55?7B^c>F6 y舄e8uAu#Ҋ.!>$&hc+&n0x(^9'24HQ߂{QA9slwp x`s @Bg9&|u?\g|3@}oAc@Ur~"10Vdž>yDűbݚz>10g3X=~``j3PԲ .if 9GFNj {&[~fU}{asUla'X_ B E"/J@N~g슩U%zw`L`[αbkW h6@%g噸8`bźcUcT9t3A, s#I0L^ ج MLyOQ`=<]}=jOF޴#gC_')dr;B޴Uf]zL\4w*v5d mr1n S< Ba ҪcyyS<ЄY[Xf,akl| +2l CC-xWh7yOF/Po6ƨ?Zn/ Zs-?/'Xבs@Oِo?AaiKy(!gOG|L…/ky^w>w94=אMvmt٨3 _ +mi FmC )>dd%6e#c9w͈ܤ2tJcn,_cJ(X9̗f'*ٕ~]'uw.S$ h#8H!IupU2l _+bbchàLJ\O=ohz>~z2}b*'=g Le7- [l=|j@O{ `4q38@H5^\Bƾ"% Z#7_=*SҜ7-ĤPmIY) PQu"ܦF5D-!X"M`!eO9ZRpwhwZX[pA>qԷ}8~Z{՜M JbW093ƃF͍%qYxHn FF J9g7IAi| ;TsW1*rGEmw[N sYƱ^ F25.H L{z\9bvu^vBY~i‹m2lՊ}o`J}hQ3Ibk-(x(Bg\?BT0@r\'5ԭݵb>:ڥHfёFv}\5KU/E0B5܏J fjNOY^LM]6)lts-;ZXplqvD T#8%*bFQKcfNePupڱnܵE:TpXW&~ q9jHLI@~Ve!>/:U!XheToGG=oCZS.;zDΟ1:l"X#DBClsF Vexe=j{Zv.8JnU5;i)/_ '%B1#ʸ$Va*es2#qwPbG ?.Q" cUP`Lv!jJGOCIB tGyb.JmCR,6eKKp0* RI9펐>N,Q"z!$ QR,p)oOkR,fTwZe"EߤZ[i) LRNh IWR;OC:P)-+1Mުg٫IEEd {,gPDHL"ȶV7P z.GˋB` c}L􋕁< ti&?w^gr"aD'bȋ^JP&va @oyy[cmJ=a`nnnXNZhVg&eW-jRAK*} y!9ؗK"5'hPaL1EabE/= a$E/} UP  ͵>@X:Wȫi <p1aQn6kA>Py!kf_p(.F2rNŎ.{֤IB&Ӕ|¸K`ܧ1#sTk0Q*:QөY;$$k)aT抸"{jD.Nt9$3O8 zf^\ fXL9`dB<(픦H#%$qrD875"\4t[3Ot\c#p6t0%}i'ኑl"7q5'2xG[8WNnvUef;G( :]$T<2:nq=}w12!rqp hڝ݅Ӷ^T>3}At,4e&rA@_ YwzTѯb غLSǁٕY#LrXҶ%=Y*4}?: J/$y!' mQ3$Yc`,RCJ5V}'!Y :.dXVIfn$@trߒE. x|$w*1Ίu1F &ف}r5nZ[jp@I^77T/PK2/+0иI߼$ -+Z'B$ͻIFyo~h;Jr/bulx.l֙6E=OA[c1a`/\hs4ټwƻ)d&m] ,Qr nD~@^3ki${+F[6boTTp-I/OoM3G:R AcKYy

' 95k '&ܵ Za?ֳcF7*3Oah|(Ro^bҎ#uwu룵E[ٹ*Y9gf1ir*T]) B\XGsF쫙#lt?+TS8 $+QdYp >GLDiFZjd'݀߭\ͥ1aSnni9:FRP ~~R!d&{ZFWjЖ_ QS Yvô5҉&\\en"p7 NRq6-,O]4Ǐ*Q"ʉ&d+1=TxUwR!̮╍nu?\L|v5'I `ԋ |̹ibP*3S 0]pT8aYN?Vy ,w=ܸWOޏ -g÷\#?9x^ZGܷ8#Jd$]EV =qOG*ozMq h.WҖt(_'$@͜&"hfn~3=qSwk.J kw?(o&z(2(֦iSr8<(ĥȤtuC,2:b#a}u݊ ZIO&~4U2-` Q"T^T_pQ;݀0Iڿ',?ʈOZy #A$t\ڰ/ >8n>eEPۦGKjQ1"n1oфNw鬃RSoӢ|7.ȭUe Lc&(NaOR,|]8yJW"-B 2JљqjO腁3D="NI|\G!mI@S_v>>I9EaoL$U>_`꾫$| }r2xt1o.P'i0Xԫ>k F$jdėfmG2C` )4p1v&p%9g[eGT޸0D?3k qEu ,ZUmhW>b:xFjpLR83? *׵VC>wyOr%HsUgK,ndbޕ7#qh.ѕ;]A,WZLbYj;CsZp&lj&o8"8'V'.:?N"-ޟ1{;Khߵs3I%cp iY"^2Dž/F[1fU 2t($܊q XvRhGz; J vEH~y/?I%՞<SwG)YY1f&ܨ2;Ė|Sk 3ᗕ͗PjН=_U:^;(xBҺ!/2<~6<I*&6}i>\e>aӔO-CF( [L\ #-'`2;LF𓿥| ߠ>BC7,Tnx;-ͳ!< P`(I*Uv 2PWlLuLCyX㇬C?0Pq +ET}Z$m$xpwE!eQ]8Ke-9}ANM$ kfSyBDl˙2x ob ~ο "ks]fzxt}*;va5r=LK*ѽ"nL|" EYuo -Xueeڹ!T鸿z][[)e3](_v~G^П T0}!@ _. q>dCEDTix g$9'C~!QDZA}u],EJx 9.5y[bԋM:W;ַ"SĽBY:*"ݞLU݄Ֆ_"=ŝnM{aNT+.%'(+aclg A$owH 03IN(b= +X"%O8!Vp}={ݡ$ڗqqd?P@' ~duknܪxd4$qn4uh=4]v LG/ `PZS~MtxOhǢp4vVn;F!}>k6)"}o})¢kW1HBBwbᵗT2^^l`\"龐W#ka?L*.|gQ= %+֪ +JK?buzHIľ|;xG&PO?jUC~O(nHޗgdct*SIΨR#|wm6nWE"AI^MY|`Yi`\t։eq*H/ן3=*kl{i Bn bWcv;Ds Xc"|1]l{f qzj^qgʺKkXڣ8iq/r楖I'/{oSW|C1܊ꤾqo//T/h(ѿ.C}{( LpҫL 0>5Cvyhcg㌳GkQMx$͐ĶʼnL[QCs$܃ vǮ Ƶ z ,"IW@Ay9&e} fH'$[PWJ*S Kݭ|c?g()oɬ%+&v;D+0n859|PNRðʀ'qI"w뷢w{uJcez2l]*:z&ތ`7B mGq˽SuDC`,@ʦsq!PtΏɵo|hrFpX_D#eY4DזmT!|mВ;D~ϰ1ktٳ邧0ZeEܱѨWI` {n*e$/&*|]K Y+p[ bO6|wXEEy F=;X_O_R )`f2#H?A`Z=vO b߬RMv@bU%"BOzxBG?$~>̱RH}MX \k|" uQ7ww x4,+Ix4GE[W=gQParէHS3/sGeǛUDf%^si~Tf)EbC{Mz)Է;/䙉)(X#70ư ,Hgon(Lôر!_J l UEsL&gg '!FEaGhl>,9s=.+_]srzM#vZHy=M?.ZQ#_`Ԃ,gAy)xc07tcgQzm؁;hE+pItSe¸3S'0o%\˧+(m70A/#]!AHLX4gJHV7o98Jhs -7[5l" !DZ Z;F:kh(AEi/0g[,bepa{2ԓS1_qqxVemu&E/NENVm3A"*#$-HںAk07!c,_7. qyygz⪦;pnd8ߢ׫{fk:^4^Tf@3d\ӂ:<t0t#"MQdbW]D-A L"WN14wز[ZdcIX!A',QErk"4!5YJ_8kZsAd ( "!x3ruE2"!= y2/ΆʀYBE-uM6?'L+yΟyB [0q~6N'rZ>r 2>K KB!5r]]$$*qWr.#J?.%͢zÃcihQ+J6j<@ 6ߝ@v?ԳupxVSôؖUHv>>{}a\954(;I]{z})ECG ya[S$Pn\1ǬC sc $֚:xĉ`hN@_\=$7v}8%pT0SqB MJhݩ>MJ0-G"TyBr`b-nq cR9 p#HTmԾuMrP(bbВmϯzvU#mUr`*5]Fgb&`##؟ !SEO6 4 |IKuW5ϗyU"(-N+FBM a_]\“l0jjEKѠfԴ{vZ逊2~@l>QSbi)+AO xJFY)zY!yP?qvE]?僖Pf2!% nE?k&̈Y&0|'i,*?%1X fJ'LNs KL|_IB7y>$G:B_t35|ܝ-P<0GaA*+}.FIa}-kgޫ OFpM"N[eD1c TD{"L}KR˺$o )aR,eU nCB^R)K݁>a.f@B111"ote5mcɮU\SBMAkW 1#eȡRe\-6K,~sO[A Hch"Td4axa^{CH<y:1_WV! 4)/O`5#i᏶Rn,w+MC:s4mgк}jhkwuR DԆ"w`cZv)hY0΃%0'OW\6LwN-ՐB謼X,^ 7"Xm 2 8-t(S,vO#B ;?cٹnU|;dl\${z\,od̨Ca=[&a#vRT=Jr#+3Z:[M}I9 ޕF4xǒ,^_**vOu$\݈/FN-uZ\ca+rWQT# Px+."kd#2FEb%ôv& Lt mA³ 3}8Qܑ6PjldqM!TSvR.oCuiLj+$@]W S쇾yjC_B)nZly pHrۿ^AP4׬%*7YxjY MG1=cSNr294YJі,@m:dGRt>@ݱo8T"yնfbj,; 4kυovFyXNP H{1t!7<ȼڣ1Jkp2o`{((nrF/e6ɩ%ڽи]ӨOl[qYA+4ow\N?ڌKPt߃j'^ib-ƷP3«k|g/37N{( '7J(s1SlNJIiJm7PabP$w.d#pG@ 5-XwҒE{#y L ]ufΚGK?tkvzyRTs7rsQwچ`P5DI0X?e~܂X_@Vzg!ē EID|Dڋ uƙ` )@d́g^qͲB8.GآV)@mЮQSC_* a7j+aq'qə6›5%}1N=RQFi,#4d_Tc3p=H>M %ZE*Ç^ {ScY^9o6PФ&Є=񍶓Ks G_y\*? WqTƦ:&x1Ȇ.=ܝzސlJr~ Wx/Ή 9` OƉ3*[#>Wb48%ח-wlr²"鈭ߥS k#f>Q5 {8ޯ:U c=,}e>O=jљE"gz>dMa7n@>_@|~Ð>/ Ooh 8Lr"v oӮs}CN3Y|1` U"lqqm/dI54hfFw,J [w`J*tͥZ$!c7Bun&,O*;HpZV~;:ήn^:ap$Fr-LOnN"]>_^ǎEbKLZG0!FuTZԠu+W}LF;bJ>A9yʙ(ՀP9S89VmbH jQD[12׻j^|)a6O-9H|d);BZpC agNOљIЎ(/N߿amӌ1.fGN99|{?*ay+vy%]׋xЂ=Y$Lm߁aA*50<6_vK4|~ ̃P_G: <C'6<)1Nڗ8P\k%KSk>nyGBU=IܓtXx4MD!7H664kB(Jkk$mZ_lr=y >Z ")q΀@!! (!<y@` Peߋ>ع4dK#ȩˁn=' en,/t׍w+*02bnJb>p *0EbzŹ@ߢ+vO,򻎧)c#C$4D?f` I ^3y 'ڈ^?wضR o&{?ֱ!{DG3sNȭJ5xj: V.>%/*5#jU3Ϲ24i^!΁7BFQҜlaF@ێ&@Ӣp蛂7`55 T-;65Tݨ`qo%K칬hD:u;^2HQi--*sLƒBPb/ Y_5moR]Ņ6sJG$[U?$(lP]|@ n_v}d&n36%!N>Mk6Em@I~CB$Q\clڶ5 boأTkxϓ9ltrF;y䓼 7ʒ?\ U5$h^o篽?aΗݱ2l;p4}hNk`72h2z3)ۺܠ uٻpsLZg=udǴPZFnmFӯ܆S26pd CPP㓗`)"qE@|'QM=A-;&ljDƗqsq0h vb[-.n(ˆd=KǕ)lZi¢ܦm9va[,ؒlT9PßHA|]CT{ '.]2I{yE5,(2HԬAޅ"AgV(kbGT&QC}H9+`TVr̎OϚTܸUnx3JٚucNYҙ+7R )2f.vWT:%˹v>0l'qiuNCx/J6 ,:pE"`*D 7;j7~k;w=|a1b.Z:h$wD%;f5j[57wNeJ0韡(y%751,_«>A+LLk ՁY[|?prDs\$LraȞ׀lu1 }noRB/R ƫ4jYws0ݼ-^h3(T/ML܈7laUk6.E{i_dj&ݗGhS( 6<T~zF,:<Wa%akK]kpL[z~pnτ#%Z`SF4t )#H[ b 9aB`%+*3 թ.(iHNjO[2x Bvy^Q )gu| i/kq7;jwLw(J3:V5\Z3 ;C0$&87D˝@U._4V0_e w=]d/T%rai{{4ujmQt(8 CJZ?1 nxbÙ.FS{A;gM85(E޸@59W}PjqyNQzᔄ3mmxI(xp^LĐn'CV. -UFM0Y50XPכ 8RDpɶSj&3r&`,TZs0v;J^zDF~]㛝Rgh  "=18.>+Hl7 |HnG3Ƿ'k֒q]mVYXIWXeST ;0GĒ -qcSUi²kj&?_maRYTK;'`D)Fc-L|xZ.WE/d|Ynh0~$50!hgw7lC [ylm@^P) {: 0‚hԀL 54۩ڕ&psǛJ| A.>('݁ Ae 9˂C+N? 9S~"(uՌSτ3DA Ecɤ◣Fkt[QFNK_eXE >٨&؇Ph [ < IrP@PԈzTZOOoŁ (w2h՞MKf'u:1׮[ @T#6I+*$v{>'"_h%dǒdbb<9C4trKPa] Ő;Υ/&enp%_'>I ']I[\2_Y\AG1"QEO UR.`ȕ}H @(NWjF5=掝O}2&Z7{J.i/vBh~]tؽZ6;]/oa&"|.gD9%Jqh:̖F0RWHm-ZZW6)rr8`y#7*49[GuDSi kk4.]ԈbACs2z*ZnN?->f >5d3F(uRw`ge3i+~lC+uT"je%i5Ňݔ  Xbav7<@2`q"|2O@IK#% 1A*\_^B ^vc! HY.X~-٬(0K嵐$ߑdƬ8RqWp!ZS1Y3"tc۝YyF 8]\dc?zw@ӦqUT{;C8l8%\.c+>_%u"S_~y+ Y+ĒXu3Nm ,Ů]_8&̽Z()t1&pgؚvC^QIڜkDeT{ X"/Jo7mtBf lضpaZp7Р |DcD߅!a·,Xh-&E1N>7u?2,7<^3WY>JZ:!0U*R`c +:3^{sRsdh ̛]vDM';kK\Y :*ar<GydU%0$wTe<.V>EfQekZa1 n/= t X?ݰu&i(GYsTe󺗻c[=ߪMQ$1Nt7"P`t&a(vpOQ+&0;*;Kd2-6 z1y TF|!wgQ"lUG3J$L+@Q/9D.bNעM, _Yi۫*i U;żoUP Y>4>Ǻ_Tzg01w[ mYQBTms=_F,rQ0LMz{([xt(¢k jZ Vr:m*T8AbWY1mJqr\ @u~Rϳ7gR'g&b 5dҚEQ'.ox=L2ixF<"63J?^F6W=l?ÏSQ5T;+QǕ{gvToqgb/ +͌ůHO2lsag -= PI{0LB"a|ɻb4kP~r%>|9ls [w:LhRgrg1xI7 f%<\)0@7眻Il-HwL(K~ruwQS xh.&,?fo㇁6 Wx>Lmz(Xhanܦ@պu5Q=,6A/ٷkpϒùE+mb HL*g:n\gz${g$#{ǶZߓY2: F A?L!쮑]KD ( i{ܕ[$v, j0֎:5ك]kEwjҡɌ5VJV萯EsS2 kg1?C1Ȉ@J!X ΁ra!AwBN9ah]RkBz=A6(%ðK}<9nIQvr!/xYP*w(]'#g97c- 6pWƽa5r_B5 -ĄTpK+FW G?<_LJZ Ttc2V LuA^k)wO*&Z)J CRp peƺ &k\b+UQv-Cj)Ϝ(;6AɶB"Q|fpbGX#A0 `rc#t҇^8D!ʌ2?%yʎ(`nc=@ V;.skg5+:q\+7U;RV#)ClW!E(| kn 7b:.1b-!6G-e٤Ax1 7z"$vL7eET`m(`ÕlR_z%i'TA$GкWW_2jӌc>*N{q۝z)a־e3Q yPݏ.{y#C9t{^-yZ}`uZ_ٳ|饣^<)U!xt2Ql_+z*6L4t XEe #Vox"B=2[]Ty"Q#]N3x82ez2qE>F1,g{HYӢFઁg}ų{'=yb9^ZDQ-Bկe~#埽8.=zRj2 _\>Z'qt}@j2>q%JD I`h& @pd a,$e MN'?$/k6h=RA&,ºb2Pl$$-f3D1)˾d#0!adc L%^NVC]JP;vݱ d>'.g,xPïV0 9w͹7q'O; ݻp!1i)T3]KH"4õz}b<"޶x̷)M!!ev/萀vTD"¿Mt)^::l7oS,wta&E;@"YRZ+R; o*%cM?mJz"aOa@| !DϕpOf F>1]+dY*^V,.TaޞN? *nL6i$` *``qBohk}&?ұu5 *QP);H  ZINvdMڽqیAыfG(O.ޡXU-v.&Ę: lL>L_ORdpt{@ v'"# +rI/9U>=VQ,z&M޹P  ^ɱt O~%=tfd_:4O梞p6濞h@h(hr*^9 䃠Ce/';4{-I 5|+_i.. .*Bv 2ᵮ~"!eVI!eiL2qhve S*5ġh|@Gp(ځonZ$0hu Wcɪ0Pj7_$4>E':گ(m+Pc~;Bw{Nb/Ziҫ.k8OdBjo{PJ0p aXT79v9dD-]P?fǞƑi:C`_KIg+SоzTBh H2d7s|ϣ˵pjBkT܌Q*dIU^l%b#u%]i2if=u׷'_C J!_=CuxVBNƥ\1K8 `SF0"KlIO]Ĩ# 3i_2zS:oH gA" `״.@'OeIW#ǩjzF1Lo 32` H޵W&X>Eu{/TĎE2P'Xv]!9D/6MnX]x iݦϛbxɉI. F\o/1G*()gtZn#r l2~r `1 AQΥTyP$&5;̒XBܕ;ő*/.V{ $g1ڑfUsb@oDuȳG OVh+I*5yWX;-EjJZ_jmŘM G~T Ϭ3 H GHDӟ|Xi_s`8ӏ-22:8Aʹ10 K{rBMdCzb(="n)Ķn~)SD)3ɀYUk8kThZ?܇qb~J.^,6 @5LժzA&Ep?^.@x瓣S#&ȿ $YT3"i08̄ЃAw<u.9V>O̕%(觫x~?pq4͚eB]O'G1*C zweQIc@fu35Ltx놩JfvOO#8xM$K@(Hhɧt_0Fx' oV=EѓWG}>݁˅~ّ5:L ũu*-BGVȪ9MI'uDEV /cA5/4PN 4ݹR`O@v-aCh0-mN:oq-+5nd6F<剉reTd dx ;hh0ͼr^`1,Y,o`|=654N`W{rxM_F? {n67{y %^?E觽>n{)%#Iy}jjSiduIW.ºQk/EHLTs^a̿ܖA.v2|!ؽaƑJKά'{b|;͸C ^wb$0;7ETZ8^ c1ʓJ5a؞\D99z߫2ON-:mT7"Ꞹ!^ $!U;BcYXs]")۰<* o9ЕKCqT߲f:?Ar'2x$$X"|TGeػOC"VʐቐmUc5@rn6K~<&t9j"f{ -v0%I fW[:yst ډo7f"BȞK`I%{*KU9;~Fގ;L;Gȉ1 =hd|yheL9L֓MUwã Ȱ[ Զ'-7һ򹞁 =)hD^`j'ZK*CIUn&H^AXSĒP?6jqļ:L iVϪ#'h$+f|J9zq3ʎPtp_ZC  hO3̮7_J:.P=yw%&E@ x)&|QUsm{k"U a_I8tC()F53v0ק_Wb<ty%C]?!,{.VBblz7ܗ6hk/*5_UQE8HM"i?FN{;??coljz WRhaޡ=߭ї5K7f![ > d_1. ƨ1;?ǐ{7G# +7]":*Ϊ߲ q4|9H,Qb4=ɜz_O:pSםI׃k-{?s *JO<}S7P}]ixg5rhL|ۘșt)2QJάFu&d? 4YXyI/𰣤A+kLԖpA Ntk~)IzAeQfM[yVϴ]}w"385‚!qM0x`1V_k29?Q"DgNʹhEAS% 5cX+X{o.  {-1F\ 'QybQL/I?BťM`GLjµ!Q 8`/`xoWVQ1ݹDj'r7`5*-rl7k)jK~zPi$ZR% ϳ~ w63!ã 'Ajk@.Xd"\֖CnDx[_k 4/Fq~8#L+N@DI;q+vXxf; @e\K#ۘcU1vϷf߾2r+`Sk3q>A؇%\yA w(g"5u6ټB2aB5 A3b&FBJ_Ql:-UsP6 Pė@ )b{1j$Ggss# uFW5!QTFj-'Xy J[Y@3'IF-"`7z 33u(&KNs+l۠gUU, T/]*6{Q.냑1ly N)(aR.𸸤-+})# ;AH$Jđ+ۤ_KB V-w>`%xqs? =A@pȾa6E`?jxE_3/>RfPѪI4ClșFT4)NJ:3r.Bx;0O+)nN<Ѫ㽤]'*jd1D1Kd_x,G=#{fgqjϲ*a5$#»Y7 U (f9YDa^`iPJBoƃkօ7Vz~p\FC?]|=|0i $9 />wF/elOhjꊠ p2 Ip50 Θ/ot^ZL :w wvnps <)`LU!,4";D۪nY*?Aٲ4lB|,c{ z_PX$~2!ԃT\R(~!pBN28hJҫ`*cB}R瀸@-ćV5橻yq7-rOIA8l,Aj{3湥2jFq_xp) 5$U"C5<Ҫz=O\NfsQv{,fJ?k%{WnAp+ /#!ez F'@,ʿn͂|O)NrV\m&Xpye˚PQ-lN\,&!Ɠ=KK5'q 'C3ּWOHe ׹tSȫPuhΞd"cp}7bY,NKzz+1ś#+l͐8ӈiPBs!N UުvΫx?F=БMI-ҩWl2Eʦw!\c1$ھҚoQRlxBTuKL[x/&_jEE 6<޾B-1%En8DQHgBTbҠT&$ʸ)**hXoifPv+i9[ӈJ:r )Xib=786@j*8|AT2_k [QJOO׆$S"PA8B}Zt}S(ˑw]"LM"[;hKJX" 5hڹ<>Sa>ALҾ+x,mۧ&U|Wf[V1oUu ۞_ɄSl|DRg8q xT=@5>MqS uw>.aK?-Bq#NA UdG.D gb=~_qXbՍ9Sv3p+H,=:r_MB̠߭?ܗ+`SY6(=8ଶrٔ:\F/*"\S^CRBG=Q\?[0XLCndѣ2,F):mR]8h8EXX A(< B~+?>?gZij]}yNh*A2Y,O17.j͌wpNۗ Nerk] 7qAÌ A>,ds?%MҞ^,(DOfLd58tйR L;(<$|`/uAE~Vdb?1,_SrN"_=MGfRh-\R&!NV3 R;Rю$xRjPXHFO; *A$27?/-٢-C_#F.%ytӠj-n>4j{VD^)"`/L+rR{Һz4EEdJA]i}O:&7sur",8hFN?\哝n@!!(?La;g\Y}PC09HkyxjZ`8MM,j(~oP%YJԁs]k\b P}:qY-=`Kk*=]Ibzvg {;  z/U^_y<첰Sz+GU5[6v~Q=IEi2c< t׼kƐ,kyNq%i=,?q"ۯy9v\{4&a790_׼Ե0@hK#z˞} i|;]$TbC޻XMьڤ} 'r-mP|W8 {hˏž9o3G9k~ԉ~1/U_o/ ~EA!<*cn0 Y)&(JޒtjIԃ6}v:6u%kZ](Dw)c`nj-\RVCwNq^z?I<"k=ZD&IB )!y ֆn"G|vto͛^O@;::Y]+/B#s8em|TJi$:e-S"AsHn[PZ/%r$x4#v g d{˟wd!i JPBxVq9Ř=Hf㻎qe^co? G733|5 IE{ZOI٪zǹZ1mIBtrxNGԀYD}*q=ܒá|sI{S3ޒKփ_q ' ia5ZSpfoamAȨR{VrVSUeNH\ h yM/uk}+^P*&|HA[ &&G\,7q6wA/pW ! ݢ$(®:RؤF0ٲZ`ŽhM\J0ÛV,sEzFIԅCni{]Tio"c9T-\Fp}pcc2N4 ~K8!s{GM:%t<^(vqk>"b3 yAj 7!bt"q)\%3 !)+vst1vzB0668R(H:7k NM=QT%>wTna4iz٬/=l#m,`47.ʁ?h N! j*qQDc:ra=lxS>Q6MИ|zqLcskĴ~ҀhDs޹`sٖ 7W#haB01ybP  ʃЙ`౓ԙLÀTxGݗߝA"ֳoZ1U`XM%|؉,A%Xΰ$3(A6FfO(TĎ+M .f[@,hhe=!{3s"A #B*μMsՊLɄ#Q}zbƍOY2wϻ{ÜRח@NtPu$HY3S6@E|f7PYFsj;nQ r$UV:iR4_lu0hÉZ{D̹Pi"Vr!1+X4nZ`߆KƲk3/d,80Lp4"3 >EIct|A%1"Q6dp?R/dwh45y\=YN <96>$X_7= nLBE]R$SAL60A] m :*&( p`@R`;qӣylrwEB݌68{{8nx#f\ 5Th NDPem-K2 }TFlո|:VVq5ހ֙S0ܟw^DHP-I^ᛓb%ĊgbRB5{N1P@"@0#LDPnE)ItEcP2+'Nʨ8aYIX$_Q$i\E/3q:r$8Pp5Q1f*Qh `47Ǯbv,dRsx0h%5h ^5NKPn=`ʊ{͔QS?7p#=CCS-}+u3طua tT˱_r"9g crn1xi*,¡>&219aRjd (5W& >/k* ²:0}&eG{Y]9 &"b̒VK=b~ $/.} 3^6Jt-tDR8#/"0p%*(HfWژKnht<ފɚDGGv~h˒" stwRrh^Yo F`n ]M\y;wm𤎜T[ai.A ِA=ywbc&\?5Y6>qrCN_X,ҊbWg:װmɹy !!-,u~#U|14Pࠚ#d=P<i ZiPiotN~ f|q^D$j\ Q2ע+% 92R;'j@d!)J.:lف9x8cSy(c'y'{b6Am١{NK+ҪHjF91?| -iFj9,cq'3s7%VP[rqb|;y69S V=ud8gRbW..';wLf1A[$9s:1߶]>P@чm{p2زo]]WPx8(f fd)Q srwod=*֋'iƷ8SJatk@RQkЀΚO@iAp*P+iY5`~| t~>?j5Gi&jpS.!Al+Ɩ,(O䍂ynaw5D-`cw֫M^o H$O.{w_Dx+\H7٫ ^/>H?(ibd iZrux ͧ[Q@4f7%ewNY-]P Tm=:hYEɨ8Z}囬_ Y˫c_\;fTe''HP_MX闥8:F:,;vf@x:攞Nպ+0 d۠!q-ATκ+0WTUY(gquZJ*^hw|Z4zBF| Ree{сY23*aFz!U!j;CXu} h1_7KlHf5!F\N?nB=/}]Up8d>ItqI „m_EA:por4FS"%-4VLBǟ|Yh(Aݿ~9$Tv8/yа4yKQ_@ 6q`?eTSҳX7Yo4{BWS- @mXwk*~g5q`˕x7) waCyOS}41=d9L<jnqN\*Rw9|IHM-Z-)r](ؕcly1V}6Jvs˄!Ɉ+0Jq%&e xTY Ծn,a,ՕbDar6 lWhO K<` ԝ,d'{H$,R]P'AwV~"rhAmu؋z!C^lŰF :EWN{ 6_-p]P 5s+8}n:cnI->a뵬 zxt::s'#p*-|v\\~ zXA-b&TZY] OAa$T@;EmXF62bwuZ5Ea(*BQiݡIRw_9iY{oIQR~=Bh᧭kZ|uљg/CEwxC炒rqMsj Ǧ@|L=w$?weiㆡIKZ^Kކ&B[3|~6AJT˾c-ǐdH~+L ж5z6C תm?C-zJV7./hIMI3b>]9` OvwwsE2ahk)VSn2.MRb 5ӣa҈a$E;Nh |_EԶ u6DʼnLU>b Pco.JKh"ecڠAVd0(Ė5U=rgҔOgA wj,b:kPnW)nWڶ@H5&4͓AjA#RŌqpڄIKptf@۰\>/vV*cIy˟yDT sD8݉4_| 8 a/?Lv ``-kb m=%+/|%.؜4]cߎA_Ԁ8 gmZP/N{oc;-Tç'dI"N{iTsZizǧq*¢s£tVə㶃wfe:zΕ$"(fs/W8[HooxD gDWmhgN 񭸧g\MMۺψ yB C -;؃"sĤWm3n.ADDZOR.1V_wv!VQߍג *VʆJ袺5'Io`@UOE7Ud=qI[L?Ob9;s՜TV+T%ti;QǕ)p0ZdSbi=&VN s;`](ɩn7 ZgH{nկ Px[ aZY <# ` :n<#p?쑬M۱|>Н7Q']EUf)Cٷ6vI2eUA > At %t޽ng 3A9';.wJ*T!},;ܵ32ℹH|`0^\ @yxh#wk%5@GTLQɖ8pK>-&}}ghJ~o,6$gF<<}ֿ|infszֲ yN}k$RVY kaLp4GyT-NX4hu1[d\'ύ3Pe#>6S&qRF9iam@M`a>(>.jYn'd~;"})GƖG2Ȭ߳cnS2@9mfaYt=02ds";njJ&Vy ~oȅip<"Sl\ލQ,*W`RIw2UCA7m%9N#vOƢٓ@Q;t EU }$ܳ h^ptn +-QJ K ^P ܠD$9WaMڳekVگ㥘IU_'V#O:S>`{YBwk_Nΐ( fAD"l_4̋*3+=׎t4A:t+Fk-;~)bt4yTW(H'ey!,qlNs=1s {݃g|+ m&)q&XtqHƴj8Kw(0v}!3'Ј c@7*'w=?BKL>‘հ%AMP3+Sю$e4iビ:"MqEPɪ[3G2L?2; Gt!: B 7$F N vbHpIo9O¦?8/cWX~;i`aN]$[$_Sً~uƺ!ָ<%4b4\*059SN ư"-7nj-t5z{9)ㄪVFByDحn ,,tE)`: <x-282wAAsIYӫYAч]%:OyQ Ĺg"JG4 ;u8@e-&YQkZN=:=BS[3w2&Kο{ɳ(.m70#fBymt.?6,#>J(%%Wxw~\܁u*.ƥ'Ӈ$kU%@袬N.1u;ٰRS]єLB'2:86xyWjx터S:pO5qTA\ݩSt/YUycr3oR#CC\RV#LsCON/а^?(zŻ{eF4+|&}* %aWwsuOW1Xч>,]``4\ r#v[NqW n]c z׊O]"Z6h~--RKmoF3JD+QZsXK3Q)3iwA%[,=/HKX&_Gs8lx;HlSKfUC;ȣ,<[*"*z#>JN̓6a[[M8'Ւ4}@JX+Ak.`+I_{+G~?jH >tr2*H5muc#%MbJx!zM#4Fji${LhRP\jUfጝ9Hkd9:MF oR.zvWVU B.T4սQoHqێ,&;s30|Yl1W 膓ivh3Cݤ8@`qE`5"+cff{E/x e6-@TTtTO%oK+xJx¯ 7GfvFf _9w>kc5ˍ ,Myb Mnҫ)\тRL,swa(ĄY"'7A vz4xi1'hPx4P+Ԗ0'1tʩc{ڼ@rA?\h;p(<yOTtkK.w%G]*os㠊]l)Bbyb+V-Bv./s%S-Ts>cX2+Me<W6,&%1({Z)㾸az".>L2#eʗt@D~. )w<;"+kH4p<|LQ3 kz hW.jk,`WHdX><7% S|D>\Y.0$xmҢ @c`rhV~D\F@D, >(/BKbv j߂t{27( jtroB&l,ԖL+\77?Pfr<*Qʘ)vcXuvD|sRB Ej#Ka0n^vd-}wbb q`Dї%rXqP]zGFpɷ ϕąM=ΔBpnz '* q$gŤ`q4qfD ! tN /($MrOFLi6ZF4ʢJpk9ĝE&tmM%Y|~j&4 - \ mZllN8[%Y DCtvDL!"9u3. h)iQrZz*b.Z9F/R=yalǾC,%k E`e݀/]L-sf+$qmL߫MΞAZC-!~i@!O0 žJޓXB9*d3_gh֫qZZT!%j1'2毾(2to E(ؾ?%jKKߒVY5c! RȂK/dwޘ Y1F.Y^G a\6-Y:9_ ϛ0R%Z-{}OM(QیHamb$ņ ,m}u9F#BbIB3j, >"K>~6e5SVdN\b_1]?XC-S"1bV#ZhoZUhl~իТ籟:BX]HV&ⰳ!K8* [ZozHa!/ts~l/_Elp6 djt!ɛ :@+pVX`ЯRoE>i8%@ng6J#gruJ4bȓcS^\:TRBc f F@5&r f9݉v-„/.'J]u[bj6ܦ}b|Sy 6%p*Ͷ35qG*RJ$l$ QNkދI\F4|uA)ɭ3\Y +A9l@TGȤcg܀A*BI9aDZE#b9kA9prkYdžU/q/OxjH`j7>zL"C&oP ݤ @DJ.G5BrY;7&?D\x8n2o֟z8::x7u4,,""D2~w\dLπA7FZ[Y;to7,uVڝ2Rkik!IU~[:~y[֐{oJ퇬vڂae@4 1Y^W YzaşPx'3H13q.? QXBocƌ%P2jzy%{4z$ 5M  Z5!aLW#EI/6H5j Ŧ~'Q$_̹JRh4ɺ'ň}1;TrÑ m\LVΙp$ǁ%X掄99SKyz֭dBKDVlNC@SѸX|gcI!'F( =ɻِEU0ꈛˊPŅ[l ǾWNx|1𼌥fI3E-~ 0P>AF>8,HC$&=0hQCF⤓7lC:8iW ng]ДǷa C!RttEV7/^fUZFtv[n"9].  *דR? 2jX tn6n_bRc6U.eM!R>mKקYS.dVV-Q^9xCV 8>ddZ.1M5rH {'HlQ]L6S.%8ID=+`S[ ҪwK;w{:.i4zPtngf7if,t&p\ok5n8&4};rUk3T48B@r1.b/S(FpGZ5]`nM$@y@ C F;~nEJC?tH`cr Yj$I8]S^-AVHA<]WQhYF O6,4p%H`少gx@E(sD3xU& MŪ5nlAD[ `蓮ftSH6#n qLQrBr=A'nOݢ=ϴ/Wc'FZɵXHa²!Yp6I!Фh vy"%.Npf@2㞎jFs?]6Kٞ|b,OB!ljki#ܵ)3 d3xd u^5uLsf×%ԗm|ݲcMtIKȠ9A|iWGrh Ake!ǖJ‚ ͤ׌;RV! p0lKjf#`f%)%.سp$GT c候iq$r)I鬵hGw IAFm|2IHW6Cp*:).. +eKArV){~H(@aNz!@vyF ,fT0_5j#mt`/! lQ?7KިieYX,%n A4!N^O,hgbPF']$ E ]wk)ZvNoR|.UT6[;pjOaY\P%`!sVUO6C2V`!kBJzKxCF۬M0KKj! p;~eynP YiNޫn윉w&׹FkXoZ({n4]x*Ww% Q~ȷ ӻTbGY8tzjyСoTaA[lVg`Q*|:k%SB\ɑkhl,y͛Xmq}q<ZPS|%& Ap Hq n V&~]1[[ E^ޭVʵ0z TV\jX{ގI4{Z|O/0CoL-h To ^E!39<G7Vhu Eď<Dd9B L)#q 1]Þ1!h)6(':뜑9֩=iazO>8 yS#zҍVySG X2[kCQh=K#ڟzFRFM'2,BKiEfa">X5D_H,aXn t_Տκ~̇υ<)t?+s"g#lްvϛ }oPa|*DE+?ǒlW\B`ڊ% 57_ _M[WSieH|38%J=EpO|vt\`oz>%w;/4sw,u%Аe. D>&$ wn'ְL}ӱ9l L0]MbG RSls];[8wvLSH.4b6@_ H:@nSo):c'1;ݐbnfpR^ۖJb xB.г(2OȐ,c=kAE[ cM}{k ogFCWHP m D$|t\—r=Νl=#nQ>QylCmAhn-hO#{"|CሉC~Ք䰆E'6l|RC5\pP=,B^h+RU #OI"AO1R岱@&UǴl:Sz2@g϶5[9kcxta7*ի-c.\ Ud,6CS"HVC">_5tQ@ᶀUrw1XD2p̃9׭/O됒tylJR'4-0=i!Db25cQlK_^ lƱ ?]}lSo,57H m6*+(ڲ'\l;h,ii`J&xwq+lNAf d|F}EiϮk-J7fvV"f2ZL4N)l\ܻyomSG |rs-{rlKl}XsyKxAS_PsUNu&|HЂ91SomroGÔMA Rzhu:Q76d7 .WS}O SG¹`VRĺg[-l#k7>,Dowd2O#.4 {#pO@2tF,nC~נOtj{]1͢G=e/nXk<.i5>_ 6g_詈^p[±,\U|8arh.e/zVp J1pyڔ̥u#LJQV07y&+8Z4G25[u^d0]k](Peз/Ϟ Ahwp C(ӏu >`0y.J0BmԋLo5DKCgXyFDɳ/xYoM aCP2EHС\]!Oٙ6׫F>Bz!fdkDܺ:Z +3hŭݛ5kk}#ՠ󙆗Ĭ2G*E atd} a%?%C!BDD=k\l W.k,)Xwt ,aݗCv*-`Mn0^XKEćfH?PAB00/+oH\uյ*@s,jmqch} gBB'sЌnDUBlq ]52Xf LU׹3`BQ'͚"W,쩝Z$ceB6zj&Rqfjj\LbUImt|"uWlGN-ӻ9j#Ԝ(^uS 6-IZ_gzCI䥟Ovd=3_2O; _ &x,.[pQ&F~m6[R 1r0T 2JK^fsS]3` }ℊG=g9,g!D%燪06nx[gI9Anm8[mҿG[l}c5c~@\r}Ƭ,o`/8B<Yz«L7D\]ޖJ+KCS{+V%18JrhO P3x2efnD37*7!ogp!3y?Y+i.*8Ha+_(|NxM2bhG4j$+`JL(ڭe`iy CvG [sV @3zދ]xzۧ; JZ>Y^;%SW < 69.wۼћ/+줤[GU3`j8H3 גJAw-V0Nn^xyJ1:oj'V&bݐs9 eEv9+w` wɱЦ~s2ffL7ݱ{Ҝ ɚlٴy%ܒ_NhuS5ֹ^=zDB="~&KwEkhM8(\՜I*@ Xߤ]g6*+^PB4/vL GI`*vnXb|jT2,M`偂̰ .nGoM˝?֕ەU/=k%&N|:ICQw:FBg?@&x!Z^o6_!] gUs\27m$O@xuu)К Wm"C?Ej){G~JЊwXwEc|4/08ZSêpׇ#LX9<`FxG- ;UwWrW[NݮEA])JV6 vI<qeI~Vt5+Fg; zTpZ2dt3o}z(IRn_wdlڟE L⦪ԟ!MV]:HވVi Pa[my"oji[k|8t3?Ѐ/'G jjNeՇH k|dX0SpufSk\D#LuM>_%g<MpJFﭨM^E%Q6]5YvIdl]‡M4yoXR c0$r!_9@}+GʴKc~qQ{e;Xd};HƯ,I~L V`'g*nw@iL!΋{Иq:Fó9:Hk 50K#rm\ބw^U()wuG -"cL+,6ZUW p7?W{j(iyũOSh隁nj]XU-,Xam؈ pG<zvBI٨e@SC@.g˸T}^.dZ+1f͎ @hZP4-Fwl;.L \hYQ㰕}UHַ0nĿYm`JFax w=y c#KēuU΁ocD,q9fZ+=1o̿.SGoa6l(qAwXЬP.|ۚ($ѤfOMnu+P:SqV F'֫༢DGտlLONRDm:9k#^oyoFxHo.dEYbl dގwedmr ;L n "ydH!⁎d>Uij Eug r<=F};5}M|+b{p&T7zMr3S{4j-<< \>-B^_y V9G:}H]x3-+lc_"4z>HzbQv[yPR# }U:]V?^#9^M)=p},%wr=WyJlJǩHpzLċIAx!(X\o~\6)T4l?ALje)|o+ /jW[@Vbwl!d%)L>H&B-hadfއ7R,x;6ce). 5a̎2b ٹ&0ן]tbu(8NMOjiv@Ŀhk~D#G`LߔuWu&#e\U+6 4N¤Z0BՓ7quVq{)4bM.bQd/}F7X#\5uBp6 HCtb¨Q!p褆KfLvmP|*T< zCϘsCٯ={:O=| r>/K4[0΃}oڽwT<)X*ߴz Ş|hI(_bP^IBmLNS.au]G]+z'_*tA, cNEVa@ వ~T-됪`O?0Ád0(=}O;^B}-5tЍ$f(r̭§2U4Jq%A|Ň:`rqO3:4ad=,@]AIلA)e}$<#-8#{kK1Ģ>?=lcmSZ%\G$KL+|1̻^~`S=MGX9s(Bj1PZSsבgi]4ca'!r"j2Dd3MA`C#OK'!,ݵʜI}]뱵.`zG`NǵigLL\̱^DbL7 Ãu>D2=X_+_ 7Z n;1mtcG+5\>} % kBRV!SӒn+*ҭx[*ix /LkSڎq%=>΍~uoG纴v܀s-_v.frR=_ejW@Md-d%|\xsZf4PXv< D24ARpZ a\^NwYfCxLP>Q bxOᾩ84ֱtaĪ޶&SBq1򧺥4]lyM3Pbk5_S ங߹.$O]k$2Vv(dͽ7g3~R%¼O-l_ OƗ$9(>\ W+>#܏&nhM-Vʢp0od3qUI+۽O ")T}gpnMIhXϼ(P=dT"Xڱ*pXU`QI$X\5r*5a`Tl誷 qb^(QȀv}kI;/t{IP{%kJS7'w6)v?;{p.j6؆Z>x1O׿ug&{r=v'x6y"ڼ \9 SP6S 挗\S㯪gOϟfT;񚘯MnPlI#;Hom%D|:)^O|e‰|V)+bln@kТ"hgĵk:i,o$` eJg_"N3ZƤa(bxu6BJTS4ۺD@}Ճ}WHDrX zkOlҐ"߻W?d6pQrNöZb}g>l[W Gk2Ν6!Sw|3pF.2gbZqW*-פI߯ސa]9Fn{Y lӮk#pϙ-q;N ҝjB~G|rb*N wI9\elb %O0 ï8%>x}|x ~kSUx V֟RmDhMLL=O5 :'c̒#Y`|YpjkYfx9:҇._PdZs8z푕qaiVrVyIJBӢؒjAJ9\JlוC3Z^>Kwy us_S* Q8qX=-u$LM>Fcq3 DP¦n56ۉ>a#E E޸z^çܻR\RM| Dﲜ4Zɰ8r`G b h9?|0J4pb'^$lNLL(w GD^"3 :{9iF ѳ;?wQ-j%~Iè ry Hy:mTGشZtuwxb7}Ѽ\Q_l1O!9ş*=ܭ9$W%oj1 d~҇ %|eJ BgӃwoܠ+ze<@ %Hsƒe}%au7C]e) U(=H*?Ã-L:O؂TFt] 4.G %|MͷXrD&2W@)筬9YwS7b堍$FjC@-=T+n{ c, CSe (46 ws1aaSdE ^gKJKm%/H޵n/T>AϘ:=Srb}WM嶊]O\\ @;ѯKrq|oppώjs ɼA. 2QmiZE\gy3hC0D InmI{Ԅ9^8{杚A #"?̄*,EAk-oc|a1rɽnvy>et ;~)+SK,r鎢ź^tِ|=n9zTecX0vƗ ;*y7=ߋ8|2*\f$wb46 e xʁo>"Khv 7K=n(Xݨ$1[7HRJasCD6ȄK+saybC3U0]add&@+Q^NJI`h37 .\Eu W207}gN9j~ $:Vsc!;U\XƇ!,3MRP.,Z.>Ip7yڂ=>CZBr(x7';^!37US'LR#ݕ ;ոal;B?@X ͐>&rTjopTOnq5{w38hQeV-DD13F3\Sto|=WԌZAb(.F"{6ڄR* V:)T6l> BU>&z5s!? +`s[/Z}ٍy=(:|<7%˿UA.[WU8=ު cp;0bb)Ԏ R.!o8]3}YZyxLT .U4g-nWdc0 DZYn2h.ŅǶߊ(]X5t뮓Ɩ+ gSL40%Lw27DTp5z0uP=>>6~|م +\iK?>^ dZ27T OI7YntcgnS/&ũ\R2)eݞOEpckY!nVņoxl*k9[Ss9& fP>->?8 e/2\4y}\5R)#id3v?Q'-Opfe:oݛ'5P&;G۰.G}Jr[*eLRkӃݜ:DUj/y/~2CK)1h4ECQa+dp ==8|40!@Ew \%g}3$ [4084V?(O/ ffJ- &S7;]%gd!W7![<>v@&6).쫌 'Gr2 ;8m概XjU3 0_LQ!RVnm^6pب0(~:YFB&"/%$}5R^ljn-(~E} d2{OH 0(ܶקBcj &6KJ|F-1PRukWc =R|iR$hC{H`FL4o1wF'`S'q,nv͍ &iB=?/vɺ =j374*9{G10-ZP{aU0,SRs̒%/ǘo}ީG s!rP_mFtff#Xcn,c>wrߨi2>ɖ/gmKY#S"RtI6 Q0rv%hzP}"2: E-jʞthӡi`R1H䅿8Ռs":G>ްZCcR?G9#A]Er/L',OϮ# SDT,TAaM@-m; # c[Ϧ:t2i(Ahi 'c`6\l_~ԌKL@%" wvN3r:70WZD ЄI rE)GaiWWB"K{1Ūb9q;xq HOU,w$XiO&"+vQ! (4#HkCl]:f78m*¸K\RZT?&{ry0 +)}bgeb`w ;]7俚czڣY li D}^gfː\;Y ?-CBlH >= %3:`%IJxX[U^  $\1bf$dcs"4[^nc9B)IczAn?w%1e4JR<M @dp6rpי˚dQ uB4eqq<'&9s?,R^} T/I9PT zz)ڕ<xt\;?4ƪz!4zNi$[%Yn J بb|InMU-̏ SȯH~F$ȇ3l@'cN7-i"W?n! ܾgMΣLMFat 4MH Ӥ|Z>@1"ꌒIgn4v%`V.bo,^-*\O^C/ YD?D=wc53"9a"L~DanVI;P ŢxSGR{֑i5/)Nϕ~l[r={0ck7Yu!l[OEŰyu"Cl65K-=R@96ZhM Eg^/6bXN,*sa~PyĸW"C7]v6K>ܛ L۽y!S%SP;mTrsxr\ޑqP߆p@$zN`v1l{wFû2FUz Q[Z/F~Rl SDcBWvC9( %ٕl5A'$uzX7^f^^*RyUΞG=FY|nC\1oH04 @CԬro)PH&<cmtjW7fZN]}ZlZhnhTI0pIMWGz[P|n&#sQjQ=[]$,N,0ӧzhqn3|PLf:tc0 i 4罃Ě 9[ʜ3 Q~k'Jn* IU(հ C<CVe D$i~[౿Ko\ yVq @ޑVhQyLK Fq`ܰc X^TXW(gmyTkaz6l;h7;IQ=v4cAJdUxydi5!S'&=S .tFU˛Fΰ.U-rKa_# }֊V$9G{/ê]iPk$CON S!u}gYVȫ젿-F4.$%,dL>M9+\M&л4U5ki/tݾgWX{t@\!i;/_T/ZѾTHR`%YqŊ n]:Ȝ( (dȹ_Av>SK2 2né3`8~xyKbMk1a<:dMɄ- LBJ˚Z#[.L Gb{K`4SV)[G3)o/%6A s xNSw>0"kx_3YMbfm!8}kۘܧigVaVy|eO{E@׊F] .IB?=Ydۓ+gk`t9ly{[< ۰ZWϒAzA5N\wTUV6Te^MeWNE4hiU.ęz/{`hDlwӸFJE&Jל:T6b5wHH#W͚)bflu{S4 ""$o ;J|8,Z8oji.aCaWGyBǒTۙz~,MZ>jZ Y#| j,ei X<@I@WiX+0x h/'j?{@@ރͦUs{L삜ji|P`v9R%4O7[jG>\V*P u.v)SߗkZ&)%?/F.N-E{fn>4t?/vX4JOMp+YJ&.WAd pwVY5}; dёUM + (7hR%^%t7>jf1 XTFz5`w<աdX<)W+?hU7BIZn'?z*eiF9 %\^}Zc['kQK;oshSiFtZ>W̷p28pSW8 %Y"4IT@!3#PxyF[ 3r+t* es<5d;0ِBҎN&Dv "t y9KF>@Nl9oaF!ԮMjqZ}}C ouԩ ,V8G*g20qXCcd*> 6k㩀Q񎹈[ 7=WGEɃ9bg0>TҵI]Kt$$GPa.+jh˕}nrckWYLл˪ FF 9ԧ-l^I0DcgWח=hVeE@O|<,![s,̷=WK!T‰a4o鎰U66EeM4Md23 ;4Qt\2f%9OhMV8e!<SK $7 NvI]TE99,wL1a?PzФ| Ĩ9%z~c X}owC]"ZgG? 5Cvs= \ʥJQ2XfJ#2}ykѭY YpQʃIDjQؼېqCp֛CY9:C&.tF  }ǯSz1wF`I9@ʱCpb=x!XLk_c-'\TWP*DV㮢C_ѰA4 RX伛j76Elֹ{Oy|h빅 ,|[ e<}蛢Dx=P>0:b3kŰVъR,9GZ*=ń[Öwݬnc 0F=# M|0:,п6∉=b2~Ga SBR~nAC{}N^I ˵A&>-Tf/B9p:4tq٬[U{s$$_]C`fM~rr1$S9 W%x<]p<[e@s?@O2Dr482GDS#Nϗa$[m vɘy~8COpE,V^v%~ C(xy`Y]ZXv)~XY@ro !kq"($ޘsf?rkv¦{d1?:pi _Kc]q4XM+IJ7Ų, o2pξt?!rG U⸍П-p6g4*ⷎ=rOE)V+R; g-1=@WO-__n%ʩ;)4bxaom 1DȉO|ĝi3\3f\M=dd|,[P9qaLGn3ǿUB)ndВA̎;d#tn;Ml_TiPE_<=tc#i,(mNR7lO[!Wr_Ah2VaR\϶^ʰ 5B5F MsŶUdKl=:]] h6"D+#bFyʆhcrZ=;Oa [T oto#<}M2}3T{$qȲ b*8 mL=n[ږ6YEӰ |@;Oa.0Jז(Y\CzKSPp(TpG-7X_] ځqq7%F?JS \y]g`EjIZt5=@]23$\L*Akacg9) 2k(qNp)'Ow FC}}.(`{\b#W{E J]c~k\W0Lu Ev=mNHW =%@LJNvX|"9 +SD iܶ)9'+8Q^@"䰦hz3v>gJ*NÈdqd1AsU$/#ҥ1Cz2ꤓcXZVd.wPtr~)H.x4Bπ xUH<닁1ku9}sU*q..kZZ$4~ܿ}S!sZ[Xv[#|5~qIXwo2x ʩLlhmeq-b.AythC$qyU0V&GfߠrfO{vg-&bUjiYr-Ol*`UInⶪ`ijYYF ~Q+yr !5k Va4yX:70[F AUe<:J?'zEUN#gȫ?^UZv1w? FB*|N2:MF+fײvϬ% v%=DCM; : k|s(mѿ|ФR &xY3TLoPh]bTG/0B螎{__bO[JrLM2ʐ>s`ys,Sng~ǝ9gE reZdlӍtX} Jtu ;\ǾfpX @(ƧRܚැ8b^:˴O X;8*t,]RPoT%]e;.jDn!Vj+ ~,zEBnÚ݌}b!o9NxJڌ:vXlC|u2c0fjnR}:Cm+kW%V2 ;L# ux(4E\K. q;'H¿NRL*_Ό*_B7QaP!j_)1/6 <ǧ 3}"BDj`;34!=_-m̾Q2.?!p8ULOȷF@I鰸'q7 Y"g4KB9OC֦֨k=8> /RpJ\ {Y8>iKySm[>?!ZbٟK]"3겫 8~Wr;EͱJ;-A- nyߞl}ff@ +k*QSgm= =H|<{Zlߧx ۵ĕ~ݶ=Gmպ.W=-^^j\O$ȺU״0פ%:{n {x+ށw\xPTLi.ӉID,<9+eQ- "HYHV=юtpnqVL*"[*k>رv{㊔Ϳ%9-y&"w]kRK T9V+ggo:B/E6Py/ݰ9mb4*F]z՞JQ"߶$`>jmqW>gfW yp y}u]s=Ko:A;/>qI/"!!%BiK1iܰs+a/d6镯ِP&llȼ8Bt(W"%Idi7>5 i_^pӅ `uy[ !LUglO13A8;Isi_ٹBޒsBH,:ŸHL>o|cDxDS%Mmld9%c-䥇gG+L ,z&mrwH5R?n6Z$Ю_LBE|Mh?z,J C`<.srE#-Z4<z:=,kI okLOTof\y|GMbC%iAV \9,C5dhd[k-m{/ gc-vdw60>SG{;8"".h2P3 eѢZi 08ܑb<;[OFE2WZCd&8gcPﺲ`u(_8r1?xB9"%tf'c3!Jn! ъ+H49'̉2EVZ9aYNZi9g㺝jsȓY({楆S鮼9d?`#<]tk_4vIi$n0R{ymjJag:\ho2Վ uS~qK۩\&~S4|σMtM/"$H5[ ;7%NIk=L&d CezVRL[.:kAglN!A~S OC,v0Ν -RNWLaAҪe)˟gdp ڟ>?Jb1NL嫬{K ӛ[^HG3=Etx IJKc}JԻcbjژ=J/E"0Y㜌᝭≠dzR2f9 BzPdSc&': ㊘/1܏o8ZrcS(UydÄK73w {H#>$Plٯ"۶j#&B 1rwH_!XVm^jxٵ5j;9s|009QGUZct1 H_IWdbKR{ 9Gz^{&'싨r^7Mi,9nAǼ C@.1r6Oĉ2/">߶9*nWz2-.J1fFI܃=\g ӻpNOo| n7/PY/ ڥ&)hώh.*&YWɘ2DLbu=t軵M1k]z'+h[qE+ 졠ZdC`f 5@:j0by@ₘpfxB*-L `HPF@l8Gd{x*9VJsô_&.Cdw>9ۄ;א1EKr?`9IAb2%%.N_zdž?9V}D l?=:XܿoeM^2܏F)tmʀG|^}uX :-ʿ&p,`"qe3݌-Q]O 2WcǙ0[Cn^r^mo Y6m!g? xHoTdC[SA~_ M  ^Muq,dKx`L L>?3.1YHij‡7˜w=Vwbq< n0 T]Ycf6TDs"o- SZH N)B%*D Df셔Z`_;Nqj$)c/Ni7nI?0E-M:(1ݤ u39v1>ex8uƒl'{+hK^X v]ѳ5ui^mڬ[X?Zs&KD @ы<8Ofa.j{eP8X wJi8W Uꦷgժ 1Ed Gܞa _ho)0MfݖQqU%W+ hp=!Y<]hɊy𿿦֔&A8cID!# ?j bz:ë3( '0 rA$>qiv5?;ʹqCd)g̿/Angz̿;ccL4E%qʮ"1eܿvufU%B4FԇUE$Y3v,8\w')F⨘s ,WvN'VybRxuMxc΀5Ed\c܂eK[ CH ya'[Tj+ODR+G2JJ$mhN21FP >W kpsGxʧ,M,:}r,m^bExJnLJTU`\-Sk?pV>fW[A}>nD]ߣB6s58~@˯yԉ߈INi 3hlIeWC+G 0[@g-2ʒI(G{iY\][(`M냦jBҎi A +O6sWԭc9R첑jГrlD&~Rbx8G |Ѯ8*,Ɋ@b.Ti8Y-X%b,¡w`u&g^w7 o>mc=_Xp8fxxjk^ӜP(2C3i+٩IW2O[vh[zRdxvT \;3gAq&<,ᤋ!iZX ;N[ 9GrzUGQ+jeM§i C:qڢe\S/iWM {_hm]X+ͦ UWAd2vF1nn%Pٯ”TpvSUI2(Pm1_MI<q=.vzkgYvMkoÕ=o>YTT|20nO6'@xKLbܜfץojթfVbmB@;~(_0p%`İ媯T:1R?͓'0oiw*IZꃰK: °[(Vυs¹$|y"YPPXQI9}^Ы^;(ڂvJ@ZNFw\PU6d|NCk 9<2[K6Ax<ϒ55~7MU`LXR(J!g3+VC)>fG!ZJ\W!d]sdrgai?+ `཈E)H ޠ vorL\hY{ ٤ByAdvXe}6*iHu`3B6mi0;jZ9'k6lЮ*lPk<\~̃b4sEwٗC\%ؕX5Ris0p&թob)AsRTϊiݠ^ ǰfL!9jT{^D\:]yB=p!)5wr/^1R=E ֞2ޘʽ`a4be?T_ jlAMs8JWjMƚxN99{m6* v\@&  KNլſH47rk=25;twPK ;=(h/K /2Ibʥ7dvd+l_sIj uf(V?2 7fkʜ4TaWx%J_,hEN=m%%O.duQSW~4/jۚ@Eu,\9/fLq @h1ZZv$Ӂ_1bUqmaTXɝJəoz[!)Xo3Xjwl'c2 [dh]֔RS V PGv_awQU"}&D (,y~ !ѐOpE蝘e=r+ Q/N|@lЄ.>7~'R[IJU^q3sNj,„?*U}#& lߥ$,|RVx֭W#ɸAm/2 U?w[#B%6 pHTtE1rLnݕæMв.gGwƾ]AL%8zYra <>pэ'OtbYէFX\D@2HT!Pl?+yܯYV{#:e*϶ d.|~FY0fI/l$`sęhŏ#W~|DZ)aiIG6Ry]4D i<@I@QʚMhp=ZV6I5F/P*JC[W"SM8?,ȟ];ss4\j57p.$Q @.pI`\p+")5KjD%o6j-M/2{B7 q,a{DLp,YyJT=RKp^n~֒Eút•r+vKT|z:t >Mgt2ēt3:CpOeXkCkq"a!:<Ĥw6\$}PT9dlvNRn{QTp@e(+j-SikZ:7(M! yeb9 ::z Ypɑ_$ v3o9>gE29JGI + fU?TtN]ćN؜~`]~H䪭n3 7i[~RŚ52ţ|h0jPKK{5Dp/Sh]x)qsvo E_ +}*("W3D_ pVb Ťz"O.ڕs J0gƿ}rUva>xQg(ܞ;&Q߻mڝIQ_8q[ڥf&C*_SwV(+$1b0ulń/|x$gJ0OD~ BEc:ְqUr{ZֽD RKWn.JFsՎ‰Pjt3`D~ VXx0_NM)&MdMFDz.`l=x_|'@A@_=ưQ x kj nCӜUϋ[]K^Ii0ykZ܀8M ϡ (eIjWljmStv*>іafl/ P/*"*_S-0-(䘯(Jӯ? f&XQt G!TaRG!.q5?':ȹSZz.l5{TCM[Ix\`9, =bH;D&7w^Шza=o|VACU8.$+2moaaTt=[wY6 } |\J3 bcnl 0J/rwZ8"17i㆓j5P` -z0uvӚ(Wb`dB<7 Vڤ%:3z|# 8#o<,5?UQs$0t7#z"M%-^咵j+иG*>"ty }`g!z# l}us7~!$ O63jJD.Ҧ='!{5be-*+ 9釲 ԓ  _&|Ѳ ( OMR4 To3 o~BVF.4*D ;T2; T5ts+V #Ah2jm+dT%O± Hdm&]=8$d? sж?Ŧ{;dڥ2KVnBLJZ^D0'Z!aLX${o1(tgb&mO u][c}{s.)ܔ35U:]o3bػgDE??T~҉4$NDFsin3-+߁%οAz}_A#gxH7O8Yy,M:s4#=-Wk7WG>O/7]c]t6!ȾŪmwqz;ai^_πG)-'?ȫMpWaȅūA:GH ~k"v070|d㻑?W;(Hs /bֲbT nZ*7BH<[8p3jbna \P$DgJ]Ƨ޵fvOrL QqBD|jh6 gz7jL N(6G#z$Sie7SLwO+6Ia:K[Q56N5,FX{nlF| 62%&B=hZ,V;j1)BD]UU+1ܘB/r#֛H""ؒ4+ 9<_oBwS6&\L%(Z2jOY~aÐP1Pt!@b{G3OZsR,~\eS+Mr 1f=U퉴oT"P)eETpTa^<!_o{-?:sow%VR*?psК ʣ20q~L+  5^vhgQߓ:hK*傆!N$4ӑ9`V+VLh udŔN[oRc:RSmLU6Ч64{f[Y{Dž;Ocy=/ 鮅.}sDB +6?:/n-A(أ bIcgZm=y<b"kٓHj䙶yq]>?1ǡ"M/M켚)7RXÓݻړ,EzBIu (M1Aq#v&pP4q[Ss!A?ښXx0g^rkeTf,4_TXb ۶ODQH|JyԞb@2]+n(* 0 ad_DÌG$/$ʞɴN|o$3lk)I\9zqru3"8ޣr;qtƖA V'1;dIo)JS׮M0c}Rz'U95ɹ>ؾV˵3Okgc#&vy,, Py`z4,Jf㓽os+dq4(1wļBH|6XWRoq~ 1-z=ih%>-u!M,j ̊н%=7wMxCw6s@X6DVɓYaH@ng}!-I;SE h`PPǻž(-g,˖||c;?Y 4i? y}N-F^1t^Y0KY&`)S%x1: kwrIJOY"73*0z*dKc(4ND KAJ\l2<ko*OJq_HtsO\8Κ.xJ]YB"v'Fn jXjXZyۓBc(RƩ|^l^`$۾kߚPӛDs)@002W\@ &aoc`װaX:.2`M(ӫ8;F鎲ihJM4?F0aH=A.kݶ^sC[4!&zJ1V [?lP$,m(-gd!!"F4|P.U"IY@q)01ݕ܋(k@ZOJS*DmIb1Œg/ߧYTԬ V@]R7g +Z\m%'Qb FQ4):O\xP8! 'Cs-0c} ejbvXUr2 ¯+ob-VfwY*:'HD`&avBstM(f#RB8!B43"P\5R{؎C-lۨe([JYETc)r)+~6x[MnQ`?QV''TlZ9$g\ Q+" 4x)AVB{ qN0.qI9>UWQ~AHwGUyZW ?(\\MB,WVNɱY%O uGmY|iK!&[3yUVyW Ў yف6!sv PU&AX/nq?keى OꊎnY -qÚr8,/S]t {9QY_0BAcGftZ`&1 {|OG\D4#ݐ.ZUqn bn.ϹK (矗P`c *qa!Bʾb(-ڄ.PaV<]xt(n&*>K?1&2Ú +b-Y,wC f^W"brl|;8 /@8,ɔ`MnگC6ۮ^h WHn^K"k>uqlxF\F&LoۖJ. bZjYϽ#3 P:hV@RƖ<t/ VN_n EsS'^iSd9PEʤ2Eqt}IFdBȆY[!AA#sdÌ"ވɁ-\5yiwaoF3zxȧ<^}8h{?cThŷ7SHϑ!<{~p]]7iI*i!E!:ydjoS)Z5;%1nI=DYA D4~1@ sຂZ ) EGOD(M'GͭZ &%\ᡋ~a*BLdx!"kA#)LmJu8=_ȻODAweEQcS< a$dI>eߑ >e1+.`'Zt+sVж' %okpؒIZ󝱦@c?XfXRF C !*ۂ>dgYgD(CJLmK"}'^{5 -Eia5VZ-嬉@F`|ϴ`w񰾹FNLH*K' ExC| }H)N ^0Wׁ;&dCD4d] ȤaUKi)-7|Yx?0g%-n/*35?ny[H3@ .! |mTny(O0$^:ʿeZ5p-̺Y~Ѧ` '+ jK+mJ}.HkͰ]q`[ƒ./iP[B[P<0Br4:/lC7 vw3ɇ:0{d@qwBaƶbfHPl}l-i\pdIf V\IRHAfy(j Dz!r.q݊$+>ޙZIܽ+߇u %/.D l%|5IÙ!Q#k%5}{0QhyWǠh"wbP.GZB{#lw1~ :'BTf=\\QI=&3yKz8|’،Ჭ"1jJ}=Zs5,՝[ޗ?Phlh1/v&ry o;3aqL+c]jN.VZ$V[O6jKq2J"[cv-妋8Qߩ8chrsD9R#>@͝#bwJ cjN$1rP!W7濊/BoMA@\xx{}ag~1|.LMt0= \IՙSqsus%us7QZhb;ٽSǂ(N8' ]i%sGpxl@}T\m֛`Pﻆ7 m HEr ō ՞cvur7RyճNS6YL}@l7}c.jf`L3(pN5غ}nBFhl9ݍX2S?'l[`,;mB|30 EK_4f:Ȑ%S. m^޿ /j̈; a<îa!qvڇ/tty;|F(DP!:̢\ꀭe|wߗYo>V{# >XUp"ߓ^V4^h aRPH(WBct[u$Z)lK9͈:\NlAv)h$WLhAs77&2r 13:g?zs̆sF#BxMh-@bo3}ow尟v.6D2ḇY7s# " M<5G4'{66rtl"D9 .Al3;s^Xm7dFf=)]c!4" 9J.Д&H6]m~t939(K@5 s L3Za5v-aC7v-ʹpZj4ƫjqwX2;:b4K83n9ox,-r5iŹ8oz M; O|кLՑ|vexgEt_2>V*F:toK#@&Pw$0}ݨFrڔ-'E5^'.aZ<^(ngr^4N!rAa]Qg[wn6TAkM$D!Ay`Y3m<^+|A ;"u4&SU٪ Rj( ߢE3'Ok6_ ,0Z}֍ZF_k0FnrRNk Uhi_um5޶.Y$:ң_NMEp!UZ~j^+ŵ1 Hw=ۋ32>v(%{(bh1B;6`m^W6L~:{i)zNbqP,5a3\*r`ZX OԌv>4* BH@0=,/%@gWv.Ye,&X9:;lA 7Vqܪmfypq%Dx"l㞆fZh@lkXjC",96ʭs4LD4%բk "݃O6bLhwy_ ~j@ܴ#O  yw<0hI\݁ kkRDmM]@ͶaRںŘ C@m1 :zr iaG#p'W=tBak-$}m+iF?h?@a9~*/) /0:ߠ&eGQOUhn3!NX߷dUYS+3"`4f\'yUK) 㷲l|:QWmLaHRF7ǹs_ ϢM<}ګI񐲽ƍbHW >%A93šz:i2ZHm\Ř;p"gDɨѺ+MƸWY!0Ѹ>Va+ ZBW%ͩDΥIS%uÆg}=\1orA{J976b|J)P9% 7 o yE~8XdHY)"A =Z4xկ9xPCZsFEN\"D&l-B%{aA{^/D0brTRjtjjNJJdNTY8PQ5<fEKl-p)ќ+v_JmTe"Ҳ4Fd[Ufg5jB`a"gdRW'lֲ,e(H*jEƴAMVb]n΄y&ik -hp1cz=P糸&Ҋ^ϖ( 9 >(֏'[ 5wMP;SGGb C/m6~C!d[w` o-;̽ 5dF'4.W5¢:5I)DhȊQ-c9!$jܷZ !w#zçu"٦i̙m_u1^-Vp]7bXmm=74D`d{4c֖hGA8NLJ'=*/c|ZDM0v+;}trW:q-Ifń%plj+\׷*`0R*O{W푖'8y!M8) :PFmkՅ9ŷ]L*; S$#!*I Fx= IC-P_7jwC2j0#:μ"v⫐ASz2[+u,FRYt\x%L`Lw h1`DSasH7bXQt{0ń<R3'n-hVx_ۑBOlQ8HZ&T)~3ob*sa©%BL ޢWb5!W8^zꖿ/UeY9AZ} u8JDq!Lu{>GeqQr!8gR56mw/CzN2jaG-7ݱ &*ST}?U}٣L*p޵rs9u*vg4ǟP{'s˒i<1a}@cr1V5sc'?W%r0Td D3L**ATGYpi>)R+\rQ0^^cN^G,Y"*nh#ryvy mǬCEעPek@ȧ=GEp-O0*aHJqb{ۤ =!^Q‰;T똿~ -ib&+OJpU2nm,Lz*[L֠zIW61B8\BD'VR"C%avJPOԴhn 'Kv^\8hyQT<0W|>@3%Jf3wݞL3,@}XXyšhM2vg6W mԴDJ#flg?&NίzDt1tc8iPid;}-&FK{;\MR$w(-}=ї%0pĪRL Ei94Zn,hm~'l@ G /psi*}K,W협۩*In{F9w\xTmf.JTEXS;]S:n1b.s?QBE5&cS[ItH轶Fr;W},=rUkY(Ö.-`KPHgqj{ջ,rG@o3k=:3+ Y[hWĞU' 4őRcXc5IZO-[mgl8.xHTc\]g6^EN1pzm~fuTΤE*Ȝl_y*cS"qrwtUՏs"fC}ztP2nE0PֺT/NU3cg]H^P_"9QF$ "hDLYt َ!1}3sTƺ~i}zi\x5.X0Z> ]W-`R{#JGuֈͣoʯiAeåaCUԠ?xi#c 20NBSRR Z~9FXnҡOi'C&r0[R ckkdod.&sL/.z^+g(㠽oй;]';0 \`ڂFi?U5]\8QX5X|Y +p]-ݾ}6{IdpxO$ f/M&Ո~M6|jKjr9 0~"ɤؕc[pIdLs_=)k[ s%rk.l^+}]zgv,H%S`T{ꉚ(qmۢ H&vVHMV|h2ʢGm1Mm>>ZhoaJ=5ɱ맿AHu2n)+pt闭2EmlzDpN(4C;z_VQ(=uS"&s.2$qO2ٱp+?@!i4=Wʽ6Ocx"Z9;|.bgm49DQMߥ4HKA#7,3e.BSl.ӓ]W$.E W槖ahEcK E5xAa;O }УBB8\KUaO&)wf>`>5mTωtGCS[XȄyhD+w%W7F_ѪosCԔV{ pVL=B MBע> HwOs %Z}#H YiXH"=-dT'b ث&hXB'A.vh<!ta|܍rکAy̗ ײCkWv@S o5F9vXŰǼ(-X$,! 'lN sμIқqGƶ.趥˚tlOoz.ǑJگfbaaF.ۈːTHoBp䶶 R佭)䌲j`$0Rq!^ؠYw zVBBnxQkocVbTOČ/L™9P-ІI4>pVbj]xA}Rj^.kw֋2HNR%^FoV@1Hqg1=NWb | pC`hЋd 3P5^E+@6-ڳiI6Wp_rG_KgfLygp:oU奺-ՒA={,$L.N8{VD=uT#Q.iEs.٧, XSOfe*F72)f~}JBP&3nBBu ӣ1:Ÿe),24+ihbGc(c95''q/i+h9}3=&8bTٷlQωo6G=la&8ҥe_[hH2nfv6`?I7_ qPu̘E>8ǖkEt[:=KgcfSds1ܕ5VsZ)L<'C20Ȅ;b'&qTMSĶfRjeKOAIB"Dm& ӫ4˵zmM7e`{Z P6H^ =&Ci`X_dز x13y{Pe:*qa6YjL]Z;1J i vG;EО0L MM,d7K*gʇKAVڷg vcxPOp';U5N,"ǦW ?JFI9ҾJ8__99Wtb1L5wtc/ɡF̢i.J[*3ajˬVʛg,nL+>F&gk&%JÉI *VTCxSzwݠ`24s{ٖЛ92#ubnf#ٔ^<)n 3Ԓ7i Ł/rE j *>|͖Ql DJjf"oy6oY*wb.O0I}W(A8Q>?7ܾ:~3Re,=zothulHvc}jMС]y,>7I5Wal27Bn+fv2Z 2^gDѭ ژ(y "aPiT: f%x~T_[exWq} J`*b~hלLbok2b3PY8b݌i\WO/(S_\6WY` b(.ԤyKO нh4XFҁ3Jlۑ^W{C{DН?7IWdDlT9iT"ogt-sNUb05+(%VjYji7'h ^aW̟0nFeкEc+L lK}6ֆ2@X0!\k\0t0ۚqΙXALj(^*KT]JpfbSfkKϑ?=eq (qB'j4OgLBJd L[ߘ'Wsn軓>Ԙ? ϿS"D&;wJ'RmՎ08)}'qӤdƦNI_vKG!Vˣ="8A/0 k lr^^܅d<7cnD~˿1<,8{/989 9 wPT 9Rr6pAד7|]s2|XPB>#jsL9= ^:\[f.4v.0v|4yX뗪dAH (t LAE3htxۿ l97pm#1X.P!<Țw,[:nds[5P+4Pu<;ppq1Q7}{o~3}7tR[!SkUOf -|3)l6 JkJ/;o=ԏGb Bd㴼ecuU{˽nZw믎__0~]b+ eZ:B\jĦ֔lm)Z9\9-|/D/pϺUUOhW:,bh&teItaBp+I7duىiFlOg_V2EiXr8ix!%9+w2᳆#klxSq*Nރ4,o={=Z(>FL-#o:_"}'%^qAhYČ%PA&AئީN>PȊiΘ4 Sim$N"^ |{Z^oiU/u\)]* ,f-*]y?Ţ}s뫐AHY~$mDig]l,fn05FWfReN ՂP_p;!v['j楲PQ7/Q[n\>{q^љ.-󅉩I.vCyr?$:۸ Wb>!."!_ 4o?or.A"N:m':g&<w/}p~1EC(> -zzBT{Z̪_Gk7V+> yE2==yB%[h0'%Z`Uvm@^+$bQ*YAU \HAS6 e;}qE9cߑPQò 1^kDG8Bpv?F=R%Ow4QvU4{D=%Uz+Z&oO5^|DzHr./|]ۯHi4c_^kc] jޤ*`6[V&Xg=vdHK1^W-N׻795WoSiDW1do;F>p U竖o6S-bEfp+_}. ~ Z!K8^>$fʧ8W5q$q:>ۀrO(`pлː㻱x+g< Qz"(0pS:˴P74n:zrEu$\c7~)ꎝ\hBxӪo#SζV&o-;xAj_b[t{5^8sK_D8%mI 9Iӡ$OV1{Xt#kaE>m-<#{Tq/G+bq : ;tM,"%'uNer^^ˮ kܠaLً֣_'4mQΒiS@l#)J6T55 "5US<> {qK>){]]/r8Lg 1r tl{=sDcBچ[s@+ۥ5DZo_dl x#uni+&Y'&!](MQ!Jeԯ@f _;Uv8-0!0(hj -> ;::N't*Y@K5'B1=6u!ܙ1]n8oC쌢ׂVqt[BS!xUKDVpt.(W$CʍnluFv8=~IxR{40O& ~NǾވX @8ܼGkd.C9 ?{Br(Gy)*Ⱥ2&DފذnsPv_S3ع3+Gh@.t. X23+T\~+:?P4S[E!AnϠDYg:k{<٭s|R8aQ%0T/h(Q7s&H? DP6!H'"$Hb洜_2;{ۛ1Aa2'A1ܥaU|+0T?qt=!Lb(ʁ཭2#MhF}(ju;hZ'Yغ' ߨ >e2,$f+ ) I>LK^֗:h~ ?0C3ꂍ`VBLS.OT, Y홁xv;nUEa=;gZ=х Dv- #g&WLh2 -lCx6O|"c7Ne^!D1 "2)DJ{3JrXuf9{ iU5 v7%Jx[)9S BuH_"yz&>ۢv *qu퐼kmALjcmp{ef'RٞEޅ; 9FZ`\C 'y@r_N:R%N͠-bvvwQz0[r!o 슶a*Y>̿T  )-8iq6){Z\"lB;" ł$3%ZM_qfbybp0qL.chX6;j1p(_50#iNxqn] ~T}Ό?" RFx#%&rOneAC26%kL:u؟}lKh@%iqhok 2*U^h>wWfNH.)iYr9QKn,\X(r0;M}(7(qs]e{>){JR XquWX3j5M:QS"WHs[VzÒ;vG n>)V[=q)/&ˎ:wWۋ&a]MJ~tM+̔ޮn?w{&6N$wuI9Es'v! ;K׃m"ByMc8R&=T2yA-YK+dP:1={#.c dJBK z/ƺW""Aø!Y wy֗s`uغ4QA񉜍?? I7rݩe6L Ck@ `ӮD1ݪ||G 귛R-uzI)PG kၥK-ۂ9@sjϩc'ꊽtIO8vRN{?˻河hdj@X;ZD=_%L1~zLoaBOueo\o B 4Gg( ?1eiftz3D/آZ)8zPxzÃ1LخFTtbm7yX>gFNg =aU>5[,g@Ph;HZ'!s5( EXG/ؚ-Qym3@(^ØDwB|먌K:4ϰi q_&%"Wqd;yrzhi!9:BByaH\$eP :KsaCSݼk &]U.V KP3l$N 9XGXY)eB}Opk1r3PMN;=9oAVi 8Y1j#xu _4ЁZhm B!VI燎P*\1.Mt̝6%{ӃvM{awRjkét.K˃狥TG"% F y%[ӟ:|mk0!I! b-95Ď,ThuOJJcX3>@OT/V*T/^z(RȗKfQGAwś{'CPN-y !+|54P߈{BVx{|Co:%K5Y^i3){x4xLJ(T |mQ08RXejcի8͆{PbVoE΁gľ+=>.y׻fnf^*srM>+57QW umK΋vva?8IEnO6U'>C9ޣ:uhc9K^FI\X{G4ːе [.jPS#fգ\>@@[aCWf:i3:RNޠa6 ^h`C8I&(Nn *iQ"dJ^u`Hb(Q<2a}Uwë0=T>HRYd^4lprf Κ>Z] (λzPZIƁ[:8T ,:Ѧ&퉽5W#FزT{g1 F9ANtbCȥ>DL /ߋ |(!ҒXkI?TZ Sf47ضBobaPc ^2uneh"X147Vcr`U b7U?4A#k A~i8CDxXL73fN5c fjuT-=rm*KD@ϼcKN XvdƀyL5ЕY?LؽM[0I_:šۅ]L '$f7Ue*0ng4S3>a?-Cn-S륽&ms602VsPs*K~۱alYCYʚ$I#fCq71ҿ^6F\` ҇}PBCnԖ%&0*Wia(yӷ&M1|hdoBČfs֍âN%@&yhrŒRCM\uFarvփxOi08œ?:I u?cC!?>OJ1Y.0Á,#t70 ϸzت~1KJ}z/ӂAi:j cX=UGׂ hU='3<h.h((sz cV>|Eb:: ݄<5Kcʜ #^QmM$zq\pBt;&THSFg×<7Dl]WvY;<29ᑒMٔs@vrR=h;2*@$/C,+o'{,rjJ.]Av ?U<"2Q=Sز)*\]y&e4@ݙ9[ "Y..O,iU,Kc9MV;eфΰ5PҴT|dEKYfI'>q0'2K1F&_tEh3A&bs p9U byj8бd J -+Ǐ|%P>~;29)灚^H~*O¹o?o:[jGÈ(~,aJW ~.g]fV䨪Ap )Ww# ]VPvl;s? MB!GeLG*gwgEԸ ~2׵ߑ= 4H}6™4ޓT$KkaLlNJUC xnHlAsҲry@R1AiP /wk" 2]0WWVq@L[Ӣa$0PDrCciHѣ#z=eL6G|+/qʮ+j'-UQ#oz(uƝV=8:mn͊)(y[{1:2y ~s1Nc79aSA6ٸCQBWtH{ W5Kj[ B\]ݧݢO١OL'>I=,ܺ>fRK{r6]O@>Kn/ ^i0ʿ빷E0y;[Qx8%OjgYYQ̅.K]AȓKlRyLUV;9O$b!}p!D#+z!:rύ9N&kcC+{A? `u}F@O uʐM~6MBQ=Ɛ3fMVX>v۞eZgc+F]V*PA4}nnր@+@ƴ⋊7&hؘfS 8ܮ΢HurU7~:䨵,}U]L@V\l{YIN\yėI017rZ=dz׸,FU<v.&}|]P{laāU[^B(gWQ{\awLitD-P][>dw}&₴3 8"uu6Vu#ݗ}yQ&JI=-O| ]:!D\2%d5+0m`b-'Bnb UCkPe6[Mڛ4?\Yхxp"׊Qps#x ԪzG:w7n7@ޮ٬9ۖBWBA5"Ȑo{.]THS_~KM lA ԇFѵ^kR%llK8Jm!e̍AeGm" 1OzͶ Oq}~N2NE&_lOA㠳c|͊<.T$ܛw*\͝M%C%8 0h9@0lvaFTv`~lnA6G0|}[l&5(hC"-ٳ\j`Nz_jwkx 2Ibzđ2p&]7:vG s9/!>^VAΑq2L:tkȕQ$5YO_4qGNgx\8BvQBÐm'#hr=\j/o WPm.8)AՄ]*?Ύ#=)^EZh/,/z6?2^)Ub፴ 滃x`c720 r`j~/-"qBbWf-u~u9 ٴd5*of}+BK䈥GD1l7TOb$6Fi"33=PdtG ^:?uiPa"#cN*[ v9㙑KJI &NBw !gp$a3|e{% d:4}vlsҸF`0b_W6=r휹:afB4zE796)!w2.\KR=&!ԑiFvw2,8>j-0,Z(DP`>RwsZFG 8Cv/mi37PrO}V{X}D0\]3բtC!6u"l 4RjyR?fp} -lqidX^%#&g 6=e۫ʌ'hv}3 vԤR71z%fA=(ERrctOAĦBOWZ kv_?Tx0J cI9;y2o NIO(b/i5aBGe~(,\w -KQ~],VɣQo0Sp@SyRʸW~H)o|(߆_=ȴ%[w6;Nچ˚e CZYe iv4ֆ}[?A&.۝2KYĽpGBMĈCPa<ޔD5y*dMt6I?[cA.:&4 4^ qwJUP:t G[iEA_ [[%VEM;q]Ƶ5N\3=hAb^Fj_RI{K߃6>Z>Rt&$HOsQ>cD.ʞDVB}!^ Ŧx̕{ݼLeX ("dFR/|ԋ٢»ADÃ%#˺xbJ]Lq[ʗۇ;Hl{ؼ`6p[ˊmTFqmE Nlq*ftg5 *aIk)RqoFjr)TS;/Y8 WA-ꨅ9OY]r⁺3JP/Q P%xBS@.$tRz2"66HTyMltlXA9 $7u(JENPچ@0ELG#46%V9M |74WtSd:ZKfH;^a~nUUW*8ZZjGN|AI컴~D^^ӣQNQf_c(בgw I싯KFWs#O]~NW^ 1@;)C ;'IiAOhY3a;[' 7Upfz4[G$RGK\{c\ш€̄?b‡{ R@va>{: fAB+I?{LDZ#I~ >yJC>MɥH"8YxBsϫpahqЍsZR+x 95|wuo:Egx! |ӳLDǹ|<~E y{{*"/nE3a P:ۆK.BG:>: )=q8NtqCWvIcQ>VE[ryA 0L#%U!#DdAjH{kXOf[`McGWq`)1{Fc܇8݃(s ߜɪ]Z#=娝j ry)vɄd(7wRSI>qsF[T2_`Cjo^#dx.g3$-KvUD3j9o /k0&0 5 a kYz`ԘQtaYU,ˣ%8.v!쁇7.v7i;F+[udRqY$t ֢ĵVV0$pQZzj'JaND |J@"U4]_b5 8}-Ws˥:`} b&zp#+l:*(Cac6n&cF{VTʩv w#"W]Ǫvyv߈aJCZD"Ӧo2 SDN<񼢽2nr>jF+8bPdDOW+"LRW9oa2fZDcPGVdOVS  =k5nSSn,74 zeMC5k:KA0̖ %} ̎7cuhxS?I8<Dpͦ ^V"~tv[,nCB8˕Jc" 7#}di.Chr1b[m?,iR,(EZkbN^N=*nҎFX f{=,Z78 Q<5+;UtP^%y+ (.!]$ ژDjК ?T+$ÛCг=@>*xŞ5u%0mwߙ}&;,*'QQ\+N$8k#_.ʻD,_yꌡyR*3&6#qv` 2YTi5n֭RchɉJ|XL:RAkvkȊl;9YS6sR]Ձ bI03m͠ϰnb5r bx/WHR⻏4ֺt6?$1CVdi޼uS)IBᕨUL&{yӨHA#n5~;NV:-T Wj}?)!GcmS j9u*Oe(laF͈f anB4)K'Tmۺ_C;x=#6_H)ޮ@#[l/D: "P!k&+'vaj7yUsH͚E/ޖ $%IoHb-K)=j}[ Mko2rgRaReQyц=6nH2AV;xDue]H"\lgQ>}^EdU ]3: q!E[T[2 w}A~DƔO1rA2ɂ&V@!O=wIs"~ޠDV*ʕ"VE-VVEI(<Wu%+dL~_ӇdXYR/Gw-K6'0x L#/}rp-_h?{57,2ҜV U Kn4a idnĥHlSGRjOޜ2pɫT>i'՛a9قST[6Vz_}g[?)E!bєR{{񲸰QQm!}5XEhKP劝?Iy 쁘Gi }p1Zvwl e[?T6kF,x Ǜst^C!93*@K[e\bq< ˭L lgCPy-,Cj4-kycBqo(yF&^pbӉl4mȲZkhh N S(S 5~=ƎWb׫):hG Vn96"v[xf pCޱdNGtP:"H.86*1DO?D1;AYRYIHs׬+G~1 k]zL >{~:4mE2ߣQBKE+IiDUqN{9沽'5/Nc|Gr"XIjf ~ :iF`~ZE>[#Caf`Lc,H:@tV" *ӸAz0T !R!$Ѽj #gc <Ym /t(XD*[\̡.=3mOeiBw? APCat9Xvlwc r;_ʛ rXFDE]c(~tFGj*Htfy5[FVEe !iAK/ >'ĺtuاZiКK;;HYd_FgW0XܶĞ\`hG>)PG_cVit( R*p&BQٵ2 h'p(L?s Gz9J'όGKvH>Oqec2&܀lٮ0+1x$@+,T!h"Md >-*"_$筿N`MV/11uI!p=ft {ĵ~@yZl"W_ [׍PuH5V,HoLd A@ʸI?N"^KqO9ub'0KX0q0T~?V ,>\>yKǚPXuƷt8԰aIfF&=ܝ#P <&,Nuks{jg;KwX)NbqI fӾWN;2C`uX5r:Ɍ^>F=+q/|:K_6PMWSq[ȎzI"oH2"W5tjkcULx>i'YΗGjoՁ'Tcf2bE `rmKNq̤)Jł ͸$F].py=4̺G>5N#Wygf(s_޸`-ŀOTTϞeE Ay«b1#lѐOe{`^dy`$錓|yNrE#qT6c=cɺU2]F8jgTݬL ~ϱX6~(i%A~EX>y;gJs*u&3_Vh0W5{&zr/$&[݈Cy|\沚 7 ,RLj3wwĴMjyOFɃ!QW"wC巠D?6=LN)%VnjO:>͈zRSТjpQ:f?RLFA,z0:w*/0QHRK3 ˁjJe_ڢSP}ʺH=i0r*4J!k\ U D _@ݡ?@4M_t&/(rX9<U-:+hM [lgv8_C²hnd`6ѯQId8gMW6gs2Jۋm,]`D\`q cY/*!$# rea TD/] " cM?}Ž]Pq4ZD=fl&бՌB;Mr(^!j_l0: '"YEg_ E"@&)>&~F} d~k||qII+Qitq䅺] kzGz\oNfW"H)a%]55<)[| /Ci|*@gX,Z|H-->[@] Wo U2vuOЌkE[ 46HgVV˞\(ES:tbNR.‘R!ZFg1DFd r%;//hm/, O>|q f;rfkzg$zms[P#^bOZh~*ҏglk9WE!j5${n:-^RG2錯6x}yb:o,1b?)ӵT17mkr^Tr$rW8N[~uS.A*,E'Tz. x-N"#G`᫰Y=};$na Y$DL4XåhuN |{hD(v}W&q~eX^UR)=t.@#fj[wiƜ!E #L,̝76 B**Gk `kJ o >z);=?:ǿonXzQBqv0`=O춅m>̿IOf>%A\x;3d):AsnQ''#[ֻantukfY\#><^=(؉&:Y[;g(# @fY9Hgw"_c@9m18C}5@iFrxOd ]9ՙ|Àق~UctjLO6ϧ#;}:߿q:k+ՖSA$/NۖlWЧfWc'Q>(a-A ࢨλ1TUW =gٰ5w Mprhbؠ Xe>{M!H`JB9b(9{1~^r UOX>PI|9eq]67.Ɍ1b d7 L+Od[Ӻ AB`p/u-宊x7Huz 7 %[Hbj ց Z.!yd7ɭa|c:c 9TTdtpBYvkphvtÑ/MaU~3LIT+ omUdɭV:Aau [CZwBI͙su⌍C^x*Ҳ!ݶ3ca`蜕̾__aǢx0:.ﳎ-Y;d;^=GPCXzHH(V$@i&[U^%uɑxz[C9Ux9CH0T؉$CNn' xg)kuJ0g/cQзYRFu,cͪ3!bCw~g0Wk ˤ{ts`:fTnJ]&2.>?:VGy_~MK-=9xcgXou!by ӹLpE0|4_:g.uLUEuQ Bi*^3dĦhx +0Е*7HP'AЂcBLtsf-&LvԹ/ *3FĈ5-еkͼ;ś~,?R ~KvM3) >7}R3T` 4RcHbv {`݉ӷ(=&v=Ir.$JbF6)#5 ,G5ǬJal.ȾcD|:{*ׂR9]g$M̭cà/9*:t@祺` eU1 Iɨ ]g{FBNDbZcӊSq.K 岺^@B+/jU# 6 ,˯~?u`B"CҋϏX w,)/lϚNteISMLst?\KϣEg'֚zۊ5!da}E՞OSTD+I^]^T1L[ٗR|x+&W%0HZikm@ѫ3,)حfurbYO9B#ܮ Q`dr.ҦI%< Onsx9gtܺbNjҞMz%Q2$Vqb4.2As/&r'2ODmCrxpu xE]E,9bwIR;@¹3iw[ݗOF97sO6䩹̹M mXX @"+)_  An̚"7| P\Ӂ{`Yҹ3sw ׋uXvvW*(+XMX\yk[x?ՐȽ w}mƪ2jP`@lj/3Θ^~oNL1maK>+),]$/*)$p{v]E.;sJTd< e$I]Ҏ'evk9u긖û ;=4yt$(f_ sLx`x#m,fSMIVka]ۿ(wQ˱Tb]]dHO%lߛCRO=^3Yq.x׬%IWؚ# xšHPڐ8&b2un|l#ҝ T'Lw|4+h[[ wOsٙiB`6* z*!l#y&'Sٍēˊjq3p <I&?i7Yql~G$3%L&('hJ!ZVHQrq|QGi,k/Dbr2̦9nкvQ&{$rݻ6T BcM N=a撻ia:zf:M%q6QZVjzO)YƿS?.ES!ؓQIȆ)ڏU6:ٴI =ͳ@G$cXzC7k჎Z&K2 .)I_"#w6@y3-}\ÑkX)c66I$Hu=&/CA~BI&$"AQ3\Um$;g=;5ָe5b0mBV BR9#vK484dD>#ߎWN!4ljI0z+BUXQͰu|@f;#_JB5dj|48 F" gt.4.4Z~pð`ؕ]@9-'>av{o<[>]\} ۘ>drPsɱ~w{KuzUnvnFmMb1;ơuzog-#$l g,0Kpr*UMfM̀֨!Q:J>L!kjAy_e?6/ٹk]jɂ-P- M%~.g2'$=Gsf's_wn}3ŵcR[҉³jѯ" P>h,$/vC&KyjxM ZE|ق"\ &_]%v`Mv%/R&ti gw1C8Ǟh}W9#@DgN|a1mj=؁=y]΂ KdJ%CɞGa_qE(LaIťnV]ȯZÐ&x$m>{Z"[J\T\)ݸn7Y˜-.qLJbJȣc5(e{R2Q=iMstO^HSk#`m-×NКi8oغ5'awئdfEuӎAnnߖ#z.DI/Vj^>DM pH-Lvoٌ>e8&č"3T ,)z&uʰ%iE\PbnVPIAqyJYD%!PD?f u-Uܟ1c8iq3N7OrX8= WJ el/ؚYe\nR-O=/hQE $6O>|.@\15D[OÜۻdcG'tWڭ;9D[^:ڥ;*I5QADB7\PS[8yR 6IE f|\IR6qgEQx3xȎQe i_k/du)ۡ8. 9jۋ̮-_ 8r˙( Q;Ib.ػ+? |u!,-GOiUPIE% H4'VuowM>dz0LfJ$SZzL:1"SI+h)N%4 r(.!R2PЃ&v)sps#Bog`7_1$MKzbqD"{"Ǭ%sBԸh(T*p jjsS8[9f5sLLp}I#*@|]{He_ `2N!}_ "#|)DKHlM$f0~!6x>#Ǻ4돪( scκ[Yz(e[hԼ9Zv@0:FsusDmר#K6V Iչdp!OX^=~\}丵}U!ռWoP[]еEE`ΎKԖU $XHz"rGejè=` @e8 wUҾ 5OpqcAeZN$+}w"=\ N0y/aQr91 ^ʣv6BPS@µ.3nꭸLf#|_c*eW{YJW뀪 g̷m[ BS#⢛C$zע?tuc׶7؁2ƹ(Ct\Cfl+Wkr҄ݙ2+C$ Deć:).#۟J&PF}hE- %a/#щ:p[Fr[-Z+wIOGܚ|da˃%: +\' #JZ/Ŏ]mw8ўY 2s#I={{wݐM'r#ƨwt]VPQ4qCMGAZ6eN9aY/]Tx<{C_ۀz~C_H%2y1)a1COee Cy [ ^{823} ΂'zޫ8Nї+2ߐRwš|9QY^, Vu`ƟsxtX ^ Y bː f/G7#bCA'kQFQxbSbԀB*2FcDWO-2> Nۡ¹k~ўYΰ?(N>j I%1'z԰F{X!|F-:Xy?$hҕ\KBg%*\ěQF@4C._O8`)WYW˜5a)bDcxɏ CIgFr"J3Vm}ĕNs G1Xo@ ڏPǿvk7i̬8Xb[y)׬"m \Do=AQT0g%݋dyȾ=qCZe!fa1, D y(ZK h$5\LLF+P"ۊH r*q^<&Dg]/"lz d$47i 9 ؁%isCkE͉(K34P~z2;Vx6@7_HBTY !kr@@㡯wuu`8FxFܶ7z`1g{?8M(o?7xЦė 2WU"w[tm~<)tt "P4d0# o 0Jɤ14dX`]Tar YM߸T%WH |Z&b,{+$־] S$؁[qHb!̍d-v)@x "ZqEtR~Ƶ$ѼMr:¹C1v^  x֬Z?%v쎀hBU2XLj< ^C77i8s̖‹@NLjNy6w MeP(tj@3s>l~s+7 ]uf??N =1ꙧH(`bFρ{JT&؁떴o{mu^%_S1غcO.}E{a+&§ i}P phž@gjhWiih:=1HJ,TSgNTg0=Tj^> K *)sP/k]Rf*bk=CƻbĖ|%V >Nf˶tSˈ2S4%UiQd#U!7#q#dmN3wOx;l67)Zt |gFCl]=̚ {ÖG"R<+YCzMy;nrTU:̸s֪ӷ2\g!a  ?H>V=9x>30U6FҖ؎L *-F2<ܥ]@4'{fwo 8I{Rp-A HgP2.%KG$l)Òo<%9Y{J&s|Z^Si9e025K1rpT!ұkr&ɑ! G) 4*gK앪>lp$A;,ɚ1`iwǸ++<+jӃ*Gkס)eQ|6 kOE:.(_ȴWDcI'sH$ " akz%ESމP# 'P‘2Bٌ,LTYU,9(x9INT 6ȧojY#]n]v)wbiᖅ#ߨ728"yV!Yɚ?1V)ōLw9*Cз MuBEYR.A\[t̗ EM9Utm FOz/x{pF"+ʉAj!ډ,WזK*,cs@}7\^H!ARd!u*,Q\h*t BY:]kk Zbb, bn畷͇>5T4DNzSyH0#Dd*hhLR\mD3p^jj7ȁvwz;kN-&u@Zl/*M@0E;ڥa%Jؠ˨UA[z $WXתb,>[MtJKE1  ՗mmVW-1$;c ֓D"TM-$Z:\-Pu&o&u(;i]A%gZRp˼d1 v[ӯbExfSquɫTM,rcD%iWCdzjt$EXcȩV ='Ǒ=}UkڒˋȈׂ~Aҗ⣩bQD֌qթ+ˆcAІ ^=F)qnYA~PYϣ?ofGMDt) Lˑh9NY|g7joA-*Ld|:"N|\!W'r'0F,JCL?pv 3NU{rzwQ\Akvά-l]<\LU]Ctznv]rB ,jn0Ubby?3yhϟ<{g5ҝZbڎׄ3aujsØ)mX!Q"-hS2-0Z^Cq>ytfT(\PaCݯe:6^ij([~m.W8섘Ů9!DD%;^ h^pͼmpټa9QshZ`sÉ/ ܸIQɟx (RJY( p 4g# Zŋ{$D ~:0}kCy\(B1w^C*fFYiak8SZcds1P2H MOpY! WV9YsZT$™v XD 3UA0GZ`N3LħPFqQPh5l:h({gu3X ڄfiuN6\Z˶깭+`"sqkCW@ >"kNE9 N硧v-mj_ rDW.5ΓzOۿh8pdٜ0kH;PkM|ӽ-oO &kQTIz;nIRL%^NAyY`psU .~GQTT4| Y z>zIkӏl>ģK덷F+j{NKs8G}$g&:b`[vi[( ;inKr62ojz3h<& 'j*=̝I VOp UCNW0iݬWse㧡a¼aȼi+[DR[:+tt}[W˹7OT@mtɽ]IB3AiR_ӄ%Y}p+MW"8/웆}en{32=[gl#N6`YTJm1YM1\FXT ]'#r:-<>@ȮLZwA3^dS"TB S9+{n6q0W9!o' 7qU-Ы s&"}1N9;]ܰ5#妫 {9{LXK OtweH&H/p Wˋz6ӬX*}g{ma(yxz~I;_@P2!N"jU(4 1 \mD?d,E}7z&}GN{AN.Ek]lb3 ␷=Ψ@1OحVShh}h2kLGA X ?7fO$P+[/P BtRLIdILۢ^eԘH/&ʴ >K_@Ȥy`u]9eyR5dv ZeV/*O-k<8/:?/Snୃ=ELVD- -E_*7;u=| f8{]u ELT𵱵Ju*# 2BUۓ񿼥 Z1,zs9{JMWtQQJNA-DqʞaՀ ݈85Ŏvk;f\c\hvgG ם\ 4Ղ&pL]H5 ,vk bb__r!X"x~3CЕRC$:n!,2}vЯJ\NETI~T XWuzK2ȁahz8miX٬ սuT`@) K%p^ d+z N9.S7 ;TF8Q+,~0ۙb=dPTj?' UW #K9;Ū\}?` P%n !#Ž-6T9 =)JaP nnsjQ iUHUY%Dt3OZ7e&;~Qe=Ws/@w]LxK1X$pgYGPTmIX%Tn~nU=}s|k>lb޻6ɏYJ+%!i=ob#"w~C;Oְh!B_,V)fEU&!J`H=W豗xjFv~}5}{cmVe4+lcGSfHJpId+Y"0qD-cZ,EA͝ziy`"ؑ4l qVOt 't2`-g s3(Qq%w2y]>?\] %a慱bh07k$xYjc)>=-:h E7rLE>;cPz-[җ$ՆW3n{w(#2%] {o7\fbuZRLFo'"h}/>ǗQ#e{6@& |fX+* tdYi͵(OZ5w˖yIp/t4qAMzAPAP+LXG39E ( cF);:PHV `YK?:/bOgU0hN/x :>:Bb Q&kNItM_@oE&o/EXϛ"h~',3X4뱔?P$%tk>Q@Sh8 <^FЅ # f8+čhi2`5eX̎#BSש!,\S^?(n10l/;%~n3I@и{"\7E‹5`Rq$]TFub^ТQ>h)wUjՙ'C毨POR 9i~\t&d bU)D0rTX^}4¥m%ӏhYѷ[Ǥ׸gG~E")e֑g$_nw9Po 4~kܳJ<D7ƢogE>K9#cR#II}&McBbI>ʌG-~=>b~^ŃHͩǍ6#*@+hMhVҮ~څ%^%Ef9U*ӥ|CLay.E\ 7s6GiŪ6=;h 몯KYPZ-yC;`mN`,GZ#*4_zq^-:sū ,Zl9mxdX7dz>Ay"6zy%&i")cMy4 r!m(N*js/wAtq(-8OpC0iɤF)96s">h{ Kv\YCȩ6&h9@o v 9 zAojN.|x_/IkgtcjtD-a- ᙾ; VL:n5j =CFLd A~,0mJ(B /U DTXH2ve~֊6nA᥆rꋕ7KZI-p]v [\"j2O0苩DsR.5%*xV6tSDHʼn0G$+R[GF: ^||x 奥K _Fg',,TfSw5!Wj}rL⨍_SfeB/oIws:n+ݙ9<_4S+/N@<ѽ>L% >h1QJ14Mwehɕ/BcZsdv[$ V,pp(}}p"ȥj~doXZd-TE$bv'1ݨ}<Ѻ.gav R%Q#ڋ@=1Kl81n#)&,d% Q$1R4uD r%*!UB֋4Y]*ݻ:Pg{T3P0 mJϩ+ͳa%fڎ>AM. L=n7tˉ\uԶB0 hԇ.R`&WiZv+OtpW<Jk!M8&:e *Z} ;b)!eXx%J^AМCuTBS~V0-~Qo7yv ɖu~R^V `k,<,qRHv&B|A**U[}Q`rPy +PumA/KRT}?Gy^ T~ñ_xPf]Z| `z(h Kұ*HCoȸL 0|y:EAvK`.cm޿%3g1;N֞D9oFhyg.8Y5wĶ@2ەy8V㚲Iֶ˔M 0A>t0i0mŃ@ V91[2H{]~Ogs) z1D=`x*G >|!v\nQ0gHVA|'DL3x,q%k^K;w[0pZP AVf\d?^@)#' `"vr%iAZ4ԕi]Vne\((m#@aT2ZckՕ jY]`*g̿pܝ$3E_O&ڮ][r/N s#*KC62/GIbxS-]۸/_D`g۠f`!@!8PлM'e{!|(P W})njIV(ށ_iV 'o7dN0)Yh7(3>dhjQ͕NjM>!HjeEOB׬lLKE+Sb#(O4RuVi؁O*i}?E,( }mE\Q`.-!>Ow:-Sn}u9y(ŎOK558O92:WHlQD%a 4xs#4cp:wYJ[괤2/gXS-l;k؎TCdXU\ou_3JP^F(!h֧xqqg@R5jt7 kĵ2ڀM{%sp=v4d숥Oo~Ņ|˂ǗƩȘCM*49Ɛdrӊ9zҁ{po3EfSg[7K)դwt^$]" Zaj26<|gWX6g\5WH} f4m"1.J!p%T2a GRqOɕ6X>䗠G&G/MmR! $7ōI<`K4vbM(BrH(Kd}fOTY"3ՅuR(jW{8=)LhCM<]eJmzxuC]&\eD 6HYcXIdP['Pn'z t<\_tkLXcQ %ș`~s\S`ZCQK`-4:<>?nLsytpZ B֊Jl2QJ.WxZ" GX(H_)TS-:ρVQfn(o9¢or~౶4cQ~)/Zc2 mJ]c-pjα!|9IH0HKQ o0Bj%Xj!+%&sfK.՝,nsȘVO3t #J|_hfq' s״I[<캒&>4 Rs#{ƕV t.7z>fNn,OK(\h%6 9(~%GrK~y^ichv>pH~.$*HH{:wj $a7*. w`6[lp" x#vF v^뚨E =j=кy(!@w"8j͎6-oujgj@4*uD2lYc}j4 ׳*3ϳ2#إѷcOOP{}?^#ltaD|H kbc7rF}Z8=)nj8$BlYcoͪ1aߘX(UKc9땗r(P+WQa N20 N8E#62UYfLx)$x#YsBh'J$;M41cVv~up"͙wHƿybw# kiuCaYG2NC]M9 bУ[d`G iޥ$߁AN TZS-z6_Va'}1P77vqDμvxԛqʧcbd4^}OyD.Я:Ť BM1=8~r>, /84Ӧg#?n췿Ou5C̑ec㱢$KMhp(PŌ9 1T =PjONQ$B̽43iP@iӎ9Z8vоեfBp38ݔ(î^aO*VvG/ā)hEQw@$)&YzC7Q2i6") q?1fؤqLo5Pg}Au+r4͕o1>tD8ΡKp*k q釴R~<+i){Ewؑr܅Ly_#:>L~[Ciy|2 X"Hr/vulm52+!V]'J.X2ZZ(>]p^)ĈQF>t6 X(%t?zA'zZ B~pp)Af~ мCԗqQ*6;ҍS09GiLFT[M3Fꛁ 䪫VBYP_VQ?Lad}# XȐgy`[A(5%IZG*%M@SD=cܕepw8NZo@#<&[rf89ȏfޛiNj4pKIÃ7Cf{rlZ;U HGQZ|nYzKԯ0"N]Tyx)]ILEz.5j4g[Ή w:6'›d\{]Or`i{)6%u`زGBE@va>ޏh`8f?kd0t::y܄Т6"yaLr%w^PڕPދ&_N؍3)He&~-c:F#pJ0޺@ߎjuG<(~ct*;Pj zEj\]|+W/ݒ%;6?!aׇx -򖝕.XK-+7+*VTUŜʄŷ&7I!Xܶ+ ԇKȂ\)6ʙHKsƼ(Y'%Va"wc-g_t26s@WS%ϫǂȑG꛲x.l5[I჻R6ff#4q8{ZTkG$n UhMɴ餸#D2hE'$F`blj";J\op&-?ջs⭢(/fa~n.thDo,1}Ti#|Lt]tsQغC xuϫJ~A$4#1%֦ W%9ƍLjGΣMC-w $.E̱d"BKܹBBYaE#9o(4ؤ;'Ƒ@ Hu 8B{-~s}L"-(w̵*rr57|6^VPt#%Fxwj3xFur}&3X\g1؈~Qyw0'L"Ăk႞jw*թ*7{f;2-¸"-J_@$k#<﹓n1n7HoG-P9Z8.h}Yh/6JB:[ C5Wγ8݁mka({-'L6!0)WG(oȉ# &qU1ak)|-݆ q_ٷ4H-W:plף"_iȩNL uDpr* R_nS[l8M&-F) jզlXPaqZXjQ"\Z/\B4L޸5$}y_0A"u.O{VK&;3ZڣA^P #1 #wDPN+ nn!eQLAhc]Nzz.?mO`ؑگU<9Ӱo{F;D\RB rV@ɷ1)#M{=AcIS 9KQ_wItL|7Fڄ7D|쥉Xg.]G܇CvY8I]#)S3YZK\vBZ,/ U9}\Թ{Oξ Oa c.+!PLJJݑ`8؍p'`F:9]u ]Jxj>-.QbzpIJG@{)%dІX 4l)'|GW֦J/KPˮ.gi?= t( I,J F+v 9_nl>n#.qI~{t_$I&/{g(gKqL64J57dnvFw| 0tZlA+hqMLݸH3ќr)S>* :0 ,@2K6UZ h[Dqc-\1%r!iJP + ? G+u!G?S^e(QA_pAڀ9\ (x  m%oÏn"h^X 9b{[oѶ:cgE~h=Ub4ãumfZ~?fgD ,/](ǩ`ñ=vow;WO3 b K^_RIܜ5<] }A˱@dL/>N<{Ajʵc":i䲱KD>GL\wņkFB ўMNO:qk 0<4Kq4A՟sYClpa&唁y,h;~ SΉn9kn:R`Ԫ[Y}Nr=N{yl*x߉V?* 3i[|3Lѕ|F@Yƙ|AmWMiX0ۑ|-iQ-1ƢN},֫e+ 玲`b!gկ|;A|A\u ڻ*[Jr@(5BlE61_z ]iWҫO<_ӿ*=m(Wٰ/ MzmA8`$xT ҿx _T_e]JacT?'b"Q(TZ({*fFNULcKgۿ)j3*+MB_UA 'qY;(+i)8+5Nuj)8?uGs4tq̨XP(o-LFkmH+S8PL(,ֈt:Ǭ)="ݑc6ww2Y e=Յ@ u]DEKt[`:CR+-îOLTIyq`nGxs /܏uYJ.&U{9KP*לX{n=2%K])Y]IpDB/*t4?.?ucl*bYed6m0Vy፯@`pv"%Ĵs8ڭllOBp wN, -Wc5]c9ұ +:t*{QaI ̙3uIGnptgeUMB,,Eɮ^Ÿkcf(yGj {n H6 sv-|i Ău76~W⸟fu!˾ ,6|0Po9KRJ |d?i̊=0,W4+Mٵ[u+KYEz]z%IRxǸF6B b緘vjòpMBIEP5:mx)_pm./SP72&3?9EkA6LGr>(%ġh`ð#ct6vRěG⨀<,OAΰu/i w›ΧZ'p4d%Ul0"UZVnaB"PYߩ!LjAdjy8[SCG^@IG)q2{GTT=B4qQա fvi".Rs)s˼D'T6%w8sRz%F<`gU93'۷W*ko9gG 1NxP'LU[gTkS€9Q۔go=#ԢyѱW,`IIOu`lA&~cS]~!_^,{m2݃jHB\jB0A?x+VOvXWfˍӜw|Ftx Xo橸2W6O 0_:)ⶓY%C/`#E뫢qv5I<=un/3_>;QGYŠLOؠ|TFvT /9EBdc &r5c6Hԓ[ӎ/G X}D1Ip׻_>Ɲ 2M~KQv£S_6ķmAZ-9 GH+2Ou|G0jX=AVd-H[2UbΪ'?7qV9]R֟8<:f)xLSZ`6uu}[f0,TWaH<+Xo#?HaXWACˎ*)uʧy C}*" uZFXiㄜ?+YLGsO[nF+"DNt-[5JԨY$ZMq^Abiw ! $b3s*a.F&h`cJ GNJFɰRZl,y Vŧ!/k'Or\*5/RD u)> mq㇑`bPOX zd{E1~5ᗦKM0%n Ϙ~tWT G.Vsk>$gI +@𾿦0\BcQ-]>.)P1Cal&p3x"?0fvFI86ӋYǩlPR=.UjΡ_*u{E2ԛ(݋C>\*s(?xz)g H6SFm$_䭳%۾ҭ%7.&Qy!mVJ2j#t&;#1eYY@:n~^J66d_{`Y˭m&S/em4Ǚs}T>?I'._RH7;Amm6#GŃec7*ۍϲ?-MIa KY4glM!FJI ?n@<m1=4]p;- G剷-x׽BpP&clj$8ɥܰ)mf`N80y~/OxE#D0z[ZFW )Pb@28&nXy'Lj'郎aq?KԻ4Pt3߿`r%rQY,7*V@) I; s IzVTuvN[#ta=;fd>y%W#ͩ@8G&8cmb{qV\ mz\XvKtĘ&(sJXYɦBĠ' z ;T:]mC,R̓E\P=*V &c_":Tg5T_YosEoFapKhZ~dUYSnAzvsѣm4XihFx .4`e^b hX_0Z} ۖX ?T`J:dMLc0Њ!m7jtZ4"b_!2F}AG7C^ЇDf5ze XRP6hQ•8 K// cHmr1mJʂ XDv~}Y 6d!swW @ `,{k2kNo11۽#YrMHR~oY1N$Q<|bUi-"RaҨ²|҄8JNw 4Yzk{1+Xc`pCk#w,w&~d ښ΀H}XZ廃EsRȲܳ8şɹQHa^ E%˵bSkW~k5(v`LgfUqĴ8j]^rLyQ>LT(Om$}376EהtS:Ha|#:RP2]6M Q#W#.W6۝)K3f]x|?!$~.Bqec2%sŷ9.R,&=FUzNng~8Zqђ F SxaD[;HrڶY7TOCR<z\5)k'ݨ4\)IfKV Ο(+\FY3Gq1G/'cCHMȸ=$햹aFw!tsF= psf7F])R%߲Czzkc\eGN¶RT3x_#YüvsԸ̋_;-4+d2=ǘ.m=O/6-SycXm}N %w\=f ᛄgy&c *%;\d{6VΨeN^q>zɅRAE  lͺO*)g:A۝Sꡅi^^SyTLN-\(r!>ivsoƼa9xDl6U6O.@\cCόA$|sNw:YcZfefh”ȮM7xіVZĴ'z];l܃ѧ!AOU}x0.B 〷O[*I6LӔRe\' >p9Jp;88#) !hs,yc_?n\unX gg'V'GVrU;؎r*B GKB؉Ê ʭyW!5Wv֜%:I5U_iC'\j%/OџYs·*N%bUJz´ %`v[/3Qvp;e"4<Ʊu8kOj ]|aɿ2jBtd>V aB"\10/3e/rڄ(E]2L=7l ["xi&S؈FB%$wZۗt ! ҏ!Ϫ&C^E!a6_!D;.V[3kƤh.Yypz'X<-ȴ/})GN-tPZ:2zbSTt}Yg1ɳ ~Ab) QoI!n3hįm\Yk6X鎝;oyh=Pt/D}|;.\"*FdQ[#5+$U0T~N0 _1 |nQp9BnfjCc \j͖˦d Y7ʷ+ v+}]HGI.|ĝRf71^ vۼ3PCş,}dqiքJuOxi/ױ(}x<48x賞x e4s9\d~Ӟ ӭxhmV$Wl\0[@Q_&xqXzJQމny b3vޅ:='d{ +B8ti!y'S[љ3Csf 4;!?F0i]/$YpFZ;цkEFYp&H"M3<<4:97Q'3~5$=X޷փpmyXW&!JY, o+k" ;݃dˆ4'~ R\5Z>8c$&a37m7r+,5J/9nNBA}k7ƽ05ca舺4GZ:ĭ321tvrE2 >ꐦ딶%L~ O$^XFG3-h6)+#>1psU`M&e,JSsX3|6l0%%{INt77G]'y:v쮥)+aoiC'ulWmi.u7*If EAaZ{.kTS 6vH٣&JCrR. r*Kk{x 9}NiNm |(._:m%굮-ЕZѠ<_UhCd3s;SJirmE ̰!v̟TnJ4,-Ez;)٦W'bTDB-)0סm9?Wb% SˈOiV1X6CW`xJWC1<(u5w1MN+[800?gtu{^޺4|)%_:zQD;)Sg# >PP[E@Мx=x4u<ް(K ,._\$ӆ\xH(Hp=] \I˙ 3d 8 $,:ydѣ.l;{v3*PuzMLYyדt6J5v?΂C0 sXͮAq_a#'!`{[ w@~WjIxᖚ ZR$^#\M5Ek!vb 0Nh@o m D";Vj8"¨1RYÖQY<Ʋ3^traImR8.0!nJJ1؝?>Sz9ZBe*R++%cOl6YV?uD=bY8G8/t$^M w0`kRoRSg/jҭHd uTPkZ=|d^wi6Kn__>UrťWʄ٥G~m)~^pFj)=dSCev9niA̐"4s4j{~5a *563{kGJ^.r02 p2Z4Ѐ5o>TG~[Ο%ZYo4M7s93#'DL0M/{ߚnl'}T kdز+J޿A8وA5#GO0 #{Rnz9ϮjxUFpP؋QG=! HSpGPcDs=1kV~nDuk+^viհ$mXQ7:3qQ/u[¿tc`,(÷`BBS4lo\iOX&馐"dp5ݧ5Z/-a NNhK3/R4ky1Z0jH%s-D8iRz$&pq9 Sw{*E;u{qb`sSz`w)NX„AOEKxKmP><]lHvl"i_~ kԉhyra# YB7 5xY m9\м_[k_GGC:x*5%EU6@ c&ѲΉ\4jP;(2!dGiRE w>FO_ qg;IĩIԸ˃!>y \fkghgDAǶBԚZ *p"@lec_"Q%VsP'ؐ&}C :aBQm-g]~Ws=Ho`"˛u;qNM\tmZDP_y@uW>Eλ!^+^702󍓐/*EodF/5RX`7&m/dTT'vREGMRE(?< \n,,*n ^VX a0])mBB>m_^S7Ս ΍McML4-T76}L6Z`x)Ssdqq,-`"*.GN(\= _V|dq;2P:yLtbY*xUm\{w*4k~Ӻ-,+/ދ\xqҿ*$jx}O A#x"-=N0׊j:&WU{0>5|7Ţ cTXPvtѠīW"tZ3AӁV6QuJ]taϡ$5%YN{OIڈZ-d,f ȍ .Ʋya."ĬVIp4D,zowN[z^= i鈮A}7G!~ %l˯JnnGEDU]bz(8an<եI#E^L"ұYfE.K ""uL +.Rh%+ǃc@&a F--+ợy3n 3hDܱ3H @ms>9hE o_ []m`HAyEn-nжitKcAa~E.+É|L>*#5{#g`S-dF#]Yn=ގ&)rLab A@ZDŴX8l]lIOҟSv4zfnO.657 _/~QS?%Y%ŠΝA6/5e|򬣎tKg)G(OrOp9h%|îĻK !Mhu Ķ#BO4.dGf'F`I=s-uMqwOt efđ4Ox_YцbdB`Oľpdt8#ӊ)\"DBJ'`G R򁐞7X^ޣ~', tD<›e4vZ(͉JzsK0N&{0I]Y&e䯑\3I7r*~xM.{̊es;gL{ p>9߷t ٛ˹.?H`K ҡ~ 2KQ ttk̩sn*[8$mpcq_T Ec:)+?D (0;z\aITjRʎy_{r25.x!N;.4N^"+G(Г)o)\Wщ>QKPJí^TYĦ3`:nmYO[kQeozgMYX >7̋0:q(Os#pq爪˾`6Hu/ڃuticqWq'rp/4%ԡGhő 0\݉+&ު;sGvK]s A"`hE~6Lͅ5ѬV0q7Ьz?lHnq4ov|a/ 6yY,;C`S>FY=c ɕ/:)!<4%w'N%<0s^뛨?J`<N,]1'ͪiW 1ѠПw}:Bm de;&lŊ*isߚliB&kЩF$eɣS EF(+A VUl`ڮ;zV3Tb} WS˛ IKz\~G An7 \;Y8wȺ =<޹]7WRxY 8[BgBn9,Tkȳ mT3^pE2l 8^˽ςz:nÓ3,3pAș(x#ЊOZL[ք$ea]qsީحb,I6(p_qȶ+]U 0O_h7;ѕt)s#'6`>%9ɴS,t1dw'$h02u g"2GW&(;'|y˃`[@>1/?'{-bLDLpq }'Ͷes@&D 'PlEwk ߮S^Eeő25PDs-M kX:ع^).;3ʻK䜒ayPX 鉥ȦGێE9U{VZ|[9b8MDn|T2[I\kY3v°΍pVnlO"K$݈wBǍ>W APk D\fN_Zaqm!;<0r4T)R c@۳yl}4\'k:%mX$g덳 6k,U&-Lm],PK'F28xp&s֌ĸ\I~.tq^R&n=~1jtTEּG XOEA)EHqxF;Io67:Oᥜd!`| QAcB ȪĞ܈]_R6K)”0avt&]B:-`Q*(%Ix4unc^csLXA 郲odR.ǯVk&B ꨺Tq -^i/#3L!cA46?j?Y1ђȐÂV,;r\0sjN{} _S0}{!9{#,̑wmfd%ڑ ;bN7CtSc42D64T:ӧVw_oHqIgh +aE^W~v$z#^0:,Q; @.,5NѿE=1ˍ;lάP%r~_WxfH ˥ӑ];][h@R E/gDOGgr1u0 ,h_ҠD:q` Yq9舦ڳh&Nx򜔈M\<OJ4Tэ`ha  cS!S*]G$Jkboї1H5˸8y),͂}VOl+g) ?vɀL 8HDu5@[5VKę>'n {<\ҽ;mnsda|h΂)'ʸ|:s2Ql kp=y3ʿhL .95ĐW!Eu]MSw3.#h=3a2EהaS;`j8񮁐(َJ PUl$@6.i>pg1!yᰀ r14G p5cU*?]aF2?8OMp /kisYo ]jo@3~i0:#ehHngj^v|tMAnBʺ$98I?*+nꠧE8Q3Ҷ< ^.hoN3]k1! L-6iiwy`) P3FF8D(%tV?hk4L6@дG4:EɳPMv=1d'1* Zb!.Nu m^̊uD4s.: #2f*xd %jFn&(dS%Af<^ܡ=?uxPAB ߗַR"\=dMJ+N<6cª xkY `M$@1 uaZ{e(Uǘs{'g.+X5g⦌5}C@QCK*JYQro3x5L2qxr3P)s(bs~p^E֪ v>5;@gKvm`tW;啑xqaB4ָGr|Ɗ$-dWЊ݋L|W!0vEלeXG2NP[QZZ+[p5XK z.?.HJb%8o ƒ%28?wF1 {Qgi6j/HEiyB)M`OSF)A"u`͎E{W70 GL;"b!AC׍Ǣzʮ8P5|vf/4! A*&m&%"ca,atKk4E:r c,GC/Cb 3eO[eq3jXQN .x*a'l/~i,򼺘Ks/$w1?0M,eR1Axe<=lN3iAg*Hua'xybآ0ECnƍ&8w))scswq,?OUV&(ej= tey_nH#!t:NѲ\$-kڡ~)5[SvRԞeJoESj SR1 V$g}@2N/`n^L C`6hBs$Rb4w2#g2ѣ>dS&u1RMi"L#8?O^aR\$_n;8zc`"mgahGة v1|q#w+'OQ!r00 #(=iK4jƁi7Ōq^$f=S4Tƭ^ 94@&wU4ޞݗ˫H6 &*>3~(*1xhfy"MZSڢƶ>N1 & ;Jdw( [ox^9e-o,X=+pK$tܤy%Fo/xD =B2E&݄y߁UZLDDr7Hd]eͺy>՚iQ(uW$0ۍ.S'nF^1S&F p5k)#*02䉲"O._b,݊LۮdwCuĦH'U>m)XVS;Cx$ٔa 5VF{>y'׫gšs LTf6E%'sd>72? Pyƽa7E&^س-Pet, GU5Jnzv*6 4}n6JhK@=Qxl9䌍p ITB0]B՜v56ZgiMOR-dICWˎ.'$E~q`7<J|a`>¬9* g4qCDAˁg6~yuQwV 8[) $d0 zzQDFB@Bz[ d{Ԉx,"Res bs Aw) rDR&kt~')eY¤h)1EzTX.nq;v_nL}n+!:[nTeӸ7RXOq5,7C'fa4PKDTG{5 =_B)Cj€$1rǺ0KU#Hg"o4v2rf’b[K8 e;7Я66aqbn:UǬ`M1q-b! A|:fgiCA3^N"OIp !lT~Y} ~B"ߤLۑ K8q9Xr3Y5I?Ț%+Mz4NO7{Q@7Irs[g6x8ZM^?!'xDd,0q$H,1T^򹶱!J1{A8y#$<7f3#+Is8" RnoZ#P$kM~~ >s)Ue!e2%Rױ5'Jjn Fi/$SBw'7mGI/֩ޅn!^YPM U}Q?cu`gc'˕ۄLwkP._Z Ŧ8ڗF9hX _#LP{iQh0&T ~MWZ[βhfv0bucMr Ĉ.qGanQn""*D<`W]̤Xn $PF;mA8耴.?n?4is+9gp\ƙX 0o nbN!oA דWI_z)!dE<]^z6}xTڨ8% *MO ~>qРySܤSm  &*.C6ƚY8%樝i[c MM*Fȩ/l e4L: Jx4R%H[_m$7]"BġAE3ʦy | #Vs6# o!E <(/L [J"b*GrasXQ("C$epm[g}lwMJQ/&yrWkQb^Oi{.gKc߉`8pw9 FipkXň'LiA 0%;X9/ 7K2|HIl$[mGRK%H&# ;&dZX+>ڷ3v00]]RZܰj=mir쪞L=[k# y(P^jK['Xy 6烖rhv{^^Ddiykyj]VpZp&nDS+ YggU҂q̗䏮߱T=χ-vdT)|lmZ$oO.ԭm\O|w=L8Nvo] ĐM 4g7Ϸy?.5Nc~ni p5U5CT0U7I~Ef%u1 m:S$=3WB&[gӜjso~gVk|4o 5YO}:5?@ͷKW7hjWsԓLk5PA=0.u2z)ߞk_02gWE-;6@L0jwzIdW Ɯ7/5Rj^-\_$#Q-͢0FQ=hKv{z>(*K8qHDsgcrȁ϶LeDK];) PčE iBMfXRlY|%kIz i몃Q۰AyY8CFAH֎}$GYГ5zHlg ގ6=6H9AGA@6Қ$Cw<*;`- p61ʡlФp# _2a7=B Bk2&rZgQ_`*5Kރ>t:a 9 upi͆ik ƂS,\"^v1dMWD Aͧr"6Ǽ(wskbIB=i};sՃ_r bj 0K~1a<iJI[jddhCUί%€6ҵ+${Ps!PE_fxv/COh)1~8E|![ie 媏]=佣ULѴ `d%Yg8CʜV,#. ӹ+Te*Q ]n띩cد)|RXG5 i(®cvFbݦ%_U%;Ϭ XZOCRl[g,{owȕQ_Yr(]YXff'4QrՎ ajU֨#bH?zt 8x/sxjyۨ5)-diepvh̕)>{:OhDaɞ<56T<{NugKk[SQd3C S_Y;'ks_w?YE!{ϻq}p;GRp&H1!N|BcI7`=WoӨA?p9|! &v/7HFB%o!8 r~lp)%(hAЛY3M,QX­!\spaNIٸk0 I;2?&ϕʌ_*i\^kׂ؈;wC E請h͙ZHsrUӉ|&ʇfzҸء=j* Of,\Zڗ ʃω>Ȣa37=nK`ZO?wl^N&$+)tAʲ櫢L=BGE*FSsO@d$Dr]E6LvƦ^ꚆZD攂ZwN CBFYb*TYĴ׍H`O2dyr觢J()@p]P^i1|6a ?W?eMI`sp/?#ОKVy? >/hWNAHCMst' %2z!crxF u{T1JS8 ـӰpb"bﲫDռ'P \ ~$~ߥ-!cVBP~r)br1"~t-i=8U8s {؛3 KlnMA+MЙ}JwNvhSqI`sPS/e䬘J:RuK]H(5@$uFq/+OhSVu{=.<DžP`Rqkw#'wϦ选-:TI=YU9`e|H(P"JxIJ`2DΝ9.Yv3j阒HƲ2;qpe|Q1j# -]K$sen#vԋƇ3<C(TL%K[ƽ.s2UֵW-gل[~ʹrkI.b^-fpojBVwr WʨgS~P1Xh@e!^.do߇j9xw8`O)n.E oi{ TiHL!!6gwg#ԟA[W8IBŇu|:\uLMK ,ԡ]pM2 Co=NpY FQVgWmh70ˇrcױci@ڽo6%Vnr\;ԠFxI9OM5ȭrDM _Z]s6<ʡ.8[vJ<_ { }1 \ɲ3,)&2_'Ī2>Ͱ$%ULfb 1Ҷ96u^Yb:RM 55 'RyfCO^ . ]YN9Fm~3ևf8,:F;ޙl"+)4p,@r""`cp R F *te2<d2|<kO/dg0z4A/(|/ [MqӖHVv# |%zUD4Kٝ^rpWsA,+a"}!9 9 ,Ptx{)4_tÔ9Bu|^N Ikgt7fbXI?:0ZdIBW0R=j)ᓶG!kf_;隙ω{X@T;i5ЯMM~0_(vq*v|AK)eAuACd ;N]^ɈbMb~=#0L?VJ9C.-N3DvKioq3 Vbj 6cl nd[ OG? vYP>.]6qGAifN#j^g\|G捯g*9 oh&Tp$4LB5h4gm@5VݨQKllAw#ww2yb@8_u*mV+lMgکavi=fG#j$r&ySιԻ8#j*Wo KJ2ʣD4I^.V}"s)[Rm{9?ZVJ#H >93nuFgT$ e5qt-5&!bӵc4/6r ثyECz:?T[27 2<7v.j΢SL Q+ \?9!svVϘLL_IGp먫EiS5hP2qnM=m1܄]f󕞙_n.F1l9l%@~[QL{lj7>5.Bcp -&"{F n3]z:ZAl0AcSLǮj0 KkWK)Éd~YD;t"Ab[ ?^B̈́7Դ6G"@Ԫ rQ1&{+2?#!#3KToxs@cwL4}ۊ< |X[t #.oKV 膒(hI݌7U#` 23CY;g4j5$✈ FTsE9T$Zx -lЫd!Fk drkʆ>pQ/Qz\Pqs.`B\al1r0eWScYU綥-м?8%_UG'S9e8RpJKؤ?:J\ Z +߀€j q7:Qꄀl^;ÒcҚ/(dEAS;v;S>lAEx}@Efǐ'kSľw #3Yvl{Mj~v _{X8_~td.郘P0XIHy88^)yL>jC:e/i:-54Շӯ_:9"r2mڊ@L9Z[AkX:^8`bB^ohJs]mnsy3_À hheS xu$/ߘ۠17ɹ1֣*KiTߗO6DWeǁ9dd0^9o1^Xg֞ Oo@OФ o☫ WGw 8Ԯ5h/l*:Ւ sZiHGĔʻ=g%UGG'R  `\2^ZdܖY{ILC5 xH:ogr{[ TBŠ2q<<)C_iG<- n@/w$ȲyEMn0At!(vdw:}ܟr|rcޑQp@WЏ:}45JdzMspu",V9=>>0%mCKd6 T! G&6x:Oo&{`4 )BE!kN1<ӷ?.?>ge'xB76B3vi~>sS,e@M"x15=rҦc.Xroar(}bnaS X D$GȰð.tPM37SOc/ńv/Xkn/V0&̰I>C4\V!2fYLE;>X1jD²K%|Zk qsq0F q :Mw)ϗ̻]!wIG+ANQn^}6VkS`+ N#gyQ/vHV$1&zV{n6 ]?&3ĖY iKʛS19gia~Y5|vSZ)3s)xWu<䀇*~ VfW⯎ԗdX((55:"Y&\QX[>e/chӆ<1 5pŝpy؁"WM]ZK2JmJyg ^CVlx~"~o*`^1gfw\B*{vBo3-);΂Aj'ꃚpw9&!3{a_]xw!Ujn>RσV>e#g-L0D۠H+}S teRrnOazA?1 `9ӬmR)@9|pl4Md4]#1_ٴh 15LWr)yغl>sy؂&XjVq1׹s#┙NOQGQhHZG B+ S*,<^ vqp+fl\ZC@&10Xgs#DdRVV2rRu ]$^> aԑ_4 ˜d쨕q7f+nƦ+l9`R&D,mJo_vd_ >+btlpc]ACs[N},y Z;Z $5>W<٘0|zҟ7'B.Yaԙ`[+AOĦ&F+ E\YQ Z)懑`|r+Oϝ`)fȎ*HVz4( c>N6Au|TfXnS9HN ;xL%ӑQP܏=| jQ\Os7Km5-:泂;{2q; 9?;?<=S,6% ?2@rxj}8IwAGHTb@8;Ĭu7{Li&K&>FJTY eklxz;T89Je?a:8y /G^w"-C%U_V&d/Sch&w`N '\؁Sf‘ ău;˓B6@&Xa>O08ixt߄'@fk__Vr9<3e೦^^c}٤eATÃ׫V<6؍!X HXEq"\aStn#Ya; By}=g,^}18N Sʔ! ;բ~ۅ,Ό2I_&[6<M0r96W']_1 Y=zS20&iXu^LV[Z=$c[`·w>a$!kDIE<<%='*6{ >0ͼ֮ S@B,9G6N(`o)k) ܌+S J7l(\,"VmLf(ʪa!j eK"IJ]̺}D&V_qxQJZf{C,3=8' V;Owp^e'zYzD'Mtݬ_#}#DVJI'Pǧ~H\6s(MF:9Q|T;OGgW8gPD'JièG+2q,r3bQ!g &]ʒV2[5W{uIأDr{1b,SKQ[ZɊJ# D}\$;eE6Š C+o|qLR?*Z_P;@]DջQUۚkl+4W!/'ml3q*fgJkX2\x7V%6jb*沍Q_,+<W%;Rz_.}Q,טr@q:h``ؼi]R-٫<6T olf+^Q%)HӢ%=:TaWY0._80 }Jҝ4hSS7Ӥ>K .O,5Ɖ8i֗`eq6q]QiabKٵ㊭NqqNf"dׁcnZ,54"ZtuIW,6Dms4elav>8X cQ:]5*nਞkpºM`ORFq'p{ic&R1KYrj<nϷ+Z@*,pg:EfhA_δSuPu€ BsqݐS_7XɭRHH$ p*F>ν'ʶ^ 06`$H:X>cBh0S~0Qݜ`"F#BkT~y~iʣŨ@]!C$Xxz8VuzF<{ ve)sa[21SlrrDU)-KDꕡBN|;"uGܠ,gUTu\,G7D2Ufn8<(Vxe^:zIͥ^A?:ݰed'eLkڔ~uH!{ͅЇA]?Ts#SB4d;Ɩ$WUQ4bK ` pȋlj'<%vdQX"7>+m_AtYꎈOdW|P|z|s<9}1;3z} 9!2KH$Z %wpAm\F 3I=5#3a1 5 qۈ>lXv pQ][LVӧaനHۣ. ^u}VY,׀gjփ6!0[˰[Ou'Z̆OSߓPׄP TrO=Z`87OBKqC.2N]-V7? UBƵ!?k@fڹb<-;[I>'v`O mZHOC|ژ2XCfŸZldFzjA, (^˯ CY:n dBUG,a+mߙ]kh):bb C3`R~P?XqG{hJs m*OrkdZ! ~fz~zjqBt"R).Z-Ȅ޴؅dcWPuto^7]Da>tZoD~a2٘uqxiVKMeJ52bz0_,e0վ+ Ja'CNe}rLﯴX[0s!>N\f6wqس.%.Ŀ\6wJ Ϙ=e,Đz Tg>$!Ijإ?mEj!h(q݄KA7қy9:'i h%~lō]% .%*loE? G_Ko~X2@KkVKUĎop%R1ۨ9oS ʆ|=7!Lc= P%Y"22LߺޤN}")w˱mHTGS@RVj=gJ7%P65-a#wU5turňlPfⴉkɖҍ%ʜT[Qal AP !p;P1@ \5Sln(GcO[*~>xL0 s*Iq `X(*l~;BNյBs V^:ǜ[.B u&V`>+Wm|Ov2,g{%ZpnOt|fDj*WWEs0@;3VY:NE}uw6!mŏA2!y楆'7ګ)VNrRh+}<{u[^4}  s+u^WL +@;D4ݴε-j^6&{mQ?O63a?~o3?GrP$֔6R<h}mD"&5ߨS|o&͔Σoq*f2Hp;,Z wybV*>SګqC˞z+2#{BUb7_Bx nTnԔ.JihiHdLpzSHSX>[JlkdA m UMaC &D+ /{*(y}%0y[oTv=J[-W<~0Z K5Q@|P,~mKުi,(Rl017 cvKR>ʍwvՐCTL;n!*4Wp6RCӽ%%S_3͐ۗYqT 1926{z3c  &]\YjSX#NmGM_|dqZ؀o9&}3fW&oӛ0sNJm­SjgX(,sM[B RiaQ<}<@|Uܚl/0|l3 ~V_~ ā62(_H$s%-ܱ< vycwkXHV"OFK}`GEpKsTKIl,sҥsW-  Ӳ)NԳ**1-縌5w xH.rYѷ{j68=fNӆt.4z5J.ytqTMa9Lv6y?*#QZr5` I%v?L0n%;Flp.99C ™uHָ), ڒEۥ~sp0t%,g@("pvτYozo<{K/LENm* _sŗiWmhOb 5ii4񻡒/ c36׿>*l\p̝W@ wh]i?:LXS9P k܀dD[Z]>=)R"^.[PwO-n -gC+R4rgP9)3Ӕcjgr`o^fRW'şmLE1[q$Mv`pJJ_*wCAJDl_\Zd@PK}s,& d/b@)8q {;(,ɖOaꝦҀֽ-PՋO4DIN:~Ab zYPrg5_ݞEz58r5\'M]~ vͪsD+/NS j qLCoZ M$j6ċE]A+xP:xXl}| jCE>`ޏUyr}"mՅzc_bN{zLyԆ? &=-n;{4BkտƦ:}ܙĩI)yI%+…[}D:X{4i .rc6P2]E,HS3޾ڜ "_U.<x4X|FV>)=o"Dl 6Rneui% #e+o:doL?XVa4?q );6$]V va߮n?}By$PqO{ Ș Qfm.He+St wH&qrY1xi$*+H1 ]UcϘ1>y.43ҵ0y'oa͢&PGhx8ʰkN#վcэX ͅ~5sO ~$l2Vj8ԗك5z{Ye%[#L@8*mzD.d>9M5h74QJt'BUʊiuu{?:Eѕ57c-qE.CVKyO{3S\ P_Ik-% #Wn>4\>)qj'Dyy#kf /WvucuwdpFr ~4LMvj`{ sW3Hj=u}#CWV뼭ր#A%1#%)]hx]EY^a2` 8?x]tv`EiHQH向)tcհ,dmº3Cr54DוD 46+Iץz'/Oևp] __#({P) .ZsK^nbVEf4Ѭ7(pKKb׳ tD׵B'; ȜKиʶ>0%`F!}F0CakzJ0IZY1% xT!~Tmn+xR%=5K@B+gIlaSYGWo:=ѱ`KT(Zumb:~Xg&^sb Is]RNYͧ@nSP>;tLДg(&yoֶA~6qo̲/xEQ'x%ԽgGa ,T]^jo^;/˼xWrOEnW'| /31e-2Dt4k纰 WXhz]UqhPMyjIpzWq 0. b9[Y#|`ޒay,8YK%+E!av5؈|yds@"pȯ.MYP(< (v d -?dobI@Bw]l Y"Em;`֑稹mqs' OhZI EݾpA!~;6VsDDR}"l\<)y l߳Gd)cQR_,N%DCcĿNrG$XbJYg*]sQ cj! sO^L[:BWpj:N=LwH ZsS@*UuZ(K%<<>'/F6ZrΐuEB噍(G-&زz_vLnҬHNG5څeA.9EfhU8*~seơX{^tμgxr-64 \kD?jź YkFx6=| Mx:@ءPu*TYܫt7ᮥ'PWdlVbqIa*s.caNzDb,G5ˑPR(ldMl3BrY_"W/;Adn]jY?[X= 3 K`q;822@OL$]ֵitL^M Hg~hq`I:L\+AjϷ oi6H*@Y@Hs(ӴQg{[#w} ^"YOZ(GӘ J.TèQx[sv #`;(]ȑqee)^ 1d}TA*TH iOtJ{3RN#= 8F *0ލA5_21dgv3r+T2Wj9 B Ԏ4y(r~ހ(aF# Z| ӡTBHjVLmRbh^wm@E|zMMThY2U/޺"\6B|6 Mx_DG%zkU}XLl仺*q¥᫁Lo7h#+[?⧗$zES/(`(cU~x'͚a(v | f˥7xp4%ͨfʴ 9ϵⅶV Dtyʻz:FnA/I[?-<jlYݮp Kud']%,X6fI]EƲb?t$쭌gAD8v>$EemÍN|0a=s\AA ۴KA_`殳7` n',ZP6*\KB8kQF 4wh;XJ_90NUKQW+so Dz2&vXf3 ]} PE?v:/'K%­ynԗo 9+65.Q8Ki3>&Hu\g8#/TEtؤʴGwY T8'c.$|ݖxVJUV!]I+`_+09* ]xT{{#uj(P(kW=_6^1r=Y(: (.$.=1 Ϧ `*$U+}#.ѤO x(vD Snw0-5qM@2<=!A1mSR]Oo4kmLZP,փyKt=yG zƀ}&fnw)콘9EdJ~ZV}kUǥ$apz\.==1htjØ74y~6(V '#E.u[{V@|+W\hU;bq^݈^>GsFQf2\V#x6/ԈdP: esgEXl#"v6zXꬼmZwfc=ECQsU 2]n[+(Q= ;.{g [wQ$ %?Z} %A*&._nwzʂC}ӠH_`o}[m`O޿$@cIYK9x툽 ﭟN mC3Ke2)Q.&zHFǑpmډLg Q@ /j>RUUrv;¡|L &ļD6I{a_Փ=%׿? L.kON#CB~P,!!ܣ8yU-Ĕ<+=tOfRi GRrHTvG l."6D˩*0AElBN؞}KdHxyi6qiN|ğiI&9}N_|DI` ;<|\ F`Bs-U+\[W'F7]T7}dY$ۡ\\.%eajsCͽm Kk){YXkޚp!wںP Vx~%dllFU*8n-Uѕ7bY4X'J9vč=n$ YfMtH PF>ݍA|Y` L,oAMT*:og5z>SdznNol\K*oKtfb9<@Vv Uc8N8;*OѫrfZQ?]К+Nhݎh9`6V]_ ef;Zܑ,P&9GԞG'd!sz~„ra^.n:TYDsP&1dy(f.'*ufev~:|@s#Ml'mV)4\u99qhk%[I ŒI}0y i4aTN&2_?=fA|n]uY=[j{!֥Ubڪ-_VɅ/z_NT:f|d,)6 PJ hVr;;*z\\0ɫ߂)ATG5Fƶ(}xH$2CkD&۾iQRN#Tu޴u  <"wn(=QLj@l8 [A1x':jwqw!+ﰟd5~62.Ե/GuC5Ы%ςZ ^e%MyjSka%?u,ysB\v2 ^rw͈e"L )>S {=0ie95,\4KM MeD pdI4uH{\KI4?&t$4UznJzlS4S5$ W1v!}&l ɰ&E68xHs$?7zDs';6%оXgp Sw4k-}(,`'+QsNo͍*;T8e(:ciFg N/WfY^qW]_pbm2;q|zyCF6]TPMվU dc$J3ÚtIx^ں#5fmN _SF\Rg"[a70_'R$2 ,Gdv8.F{cw,~:1_R[c 8&Xa9R!0>_' "b7'EA\Rw+qݶ .Gxt-mԱ<to@(Kx8[lLjfNjgДZ(QyY dPز_jA/; Q/KL0,p6wA/O\qO0m]m%Y ^b;qH?:'vi L#d i's8@'֓j(P}|0Ʀ_+&Px.iEǝ BMRi)\iL2Rs{5)\\T/4Ư&nվ"}; T+"Ua&6*M6PmJD$puŋȹ=(pX춹'"M _m kzAF||Bk_'ʿ3J6:J˶mItTɬX'ouw>{es${Z/4:(57 4jkݗ ?PTٺu3]X}JgHj+r\` S98: #ΦB~oB)EYa&i#f &5p/$:bTi:jt֦/XGF}݂Yw|}𽫉,fWQ+SwHF`O*%V9iL0F)j͙$֦t1WR2!Pgx.V=sJos "3I]@4;BqH&e5,v-x?0O׏E\)բ 3y-YT/6BGBeF;"x,VoVq 5E,r!nV\h4v/zҤg1⠅-o:z3 ul5ⶸ,Ŏr +k!ݺ!{MdZ'ZEC[DN }RrqhoUwp:GIc͓P8C/!PUFb&P!\:u(ʧ,?ߺXZ$ LERN(oJiXoYJ0+{B6yOUu6|iP|QYUf||#Oĉi7a$ eXI ?")h`g(%E#d.a&bR#p &1"CO+7Dn'e2vC 9 d9+`$FPG:~M &U]V瓯I-FӅ/xTHy}8>?aG>&(Y)nj5nyT,X8RIẹPVqn3C46E"@W',[GF!AG Uɘ2VTʰdKs/6!7$ce҉tTr, 159$זkM!_jnO~هp[}jdeWpG +WriUjkP~XTxQ.*Q> tݎn3f5|v8eP/~ÑۡI%rfO0fk3rU3|הֿd5y[Y[YCfk䖞!6$8ΤtgtqX Z$%}l<1Xlܺ} aF0_14d`Xqf& ^ox?MjBbAǠr4Xʊs=D1OH˝ͥv"&S@[賛 .CMn:8TQWK,Gł1dqoJKĬs6r+ }"7"nь%i*Q5s19{}]~'ywQ32;i2[9ר"-IDeG.c&%%m\9pj{ Qᵠ499L\qQhGJQ&C{9'EC(J =EARX,$M}Ўl =H20adQPl%8ѿ;G#J(HKj*5`s1U3b[cl~7ƒ,U{pʂj&.:'xЖMdQ#ĂRpg`' X4vv֊QG: (`[c,$甶n`@+ޞF<eT}N&Y⏜Ύѯ (ÀP%0ўR2GCm//d+olt^I._k!3h+3j%ą[Q(pjK=Ւx0> ks4⬭!nk󸖷_cOxM8w Yz'X9o#wc CՒpN0. R1hlx]#[ >M dYn+zn ?:r/%?\VRҲ64&.lUvE"'ڞ|x"R;~w$LRČ:J%Gzf@SGojΘ&#M& Ƽ0D?ر-)p;,֟;苽~-g^ă6֨O3OOӐ@{`)-YpF Ot6DK ҥVp\Z:I 2Ug-qCxvz(M-(SӱNxJr]oڣu${ *HN91͉y vsOk,G\r%ZKiڡ'1jR/c. M#8Y{eGDd!Rd' Oa0TU/& E[F\;j3 f﷓EXY=w>ٍV]D5>U]D-2rLVڢ!.3xCr]P7//R<ׁi| \A j24yqT L}I[\N}/`0NI7柈^~<{oFvekH IiЬMKV;a6_j&vP( Zgq0"$jzH7/*#/'1^ɈLqlB'ąQ2՝UU1`=YsfQJd3DNJ _K0 }:n<"؁Pi{ꖡQ~t$:h;[bnwT5T :7)d0,wҴ>TjkH$8oA1\EN: u1wr '[GA?kdM_~ռe^3aoֈ(TYT*Bf5zРZJ2J>9DD(َysf :34DAe4h7 N?cB`Ɓ퉙d^}49gN&uVoR8%eѽI1nwJ$S9$Uy`QB2H>4 mI뀈Vct^"Ƽv!Σ7u1A98)OfYJ6d$w&Oig:wЅ%i1|Tr,FUyfgJm3><1hi.U`TM8hRD^wQbK)vlof$fSX$:ywHQ-S @,X tb:CgQhȝV9\jӛЕ[mLMTͦ^xVNUvJ?&T^'wQTA̐DeLYMδ}M׬m\3NI ^v<%U6Ggj:f}!uTxt8ݕYH-r?>_ި꡺jWOUSZ>d[ 8&*AfDP͹kR/9LL}AL{MΔ MXBNQCj~m|X?iU㥅2/:A@džRFt˵tmCEVbRRg'S=3F q S3S`ix@x =Wպ` r=z[VzқE<|}Dw  LP*ʆdy8׻ ģ%N5ƒXE '_{^x,X왰VөL=TA @6'tl0C4X+O$k/KsС (17aHөk# !PJiI3g)HR f3[qԉO@jYk }3Md#O"=9 -ڢ׵ ^{-Q۫Z֓ZÙضOzM捭%K FcW0]_;Q}v>Wy֢f sg694bEy~#FP▽b>SsA{W9qrb,#TtK(0g^XZ Pm)'*ؔ>,/-]n߼BEOic0׻!2AB|Α,@&PD9mo8Q3d˭U}z@BF[xosk+{# P7(P1\ȸ^Zpl]ۉ*[u&GhFe"cz7`T'>xmǷ=Q/qPYwml,TwH!]0f?Rr[NHGaM'Ė &E4j_Sߚ3kB93OIxήN`D kKG*^}Mǂ/#.W[XjeۚVpdg2Z @xܝ/ ~uY8큵"JPR7uXd9h+yQOFIR2xGC̃,Tt2O)ƒ9𙼘+J (ybrROec#u@>׭@,.#ٞl XAR~>T ear2urgF7n=ҹ3MMajiKiA=:ґ (lڬN^ -~k 礄 gG2_J"ƚXn;)`н Qyo<88sWF$gj7Sr^>U43-jEد=0RG6 9Ya7iۄix,Ppe*Af >Z;:.N$NDw&}˂qƘ,\e4]0ga6_ 2̋Hƒ?עel|R1=3?BLo$81m-KF]ƕwIc C*?0= RC-wvZ u:%nSb?#61h Im;\n6De#RI<㰎ْ.iA`B$mSBڂGW)nhқ|g {Xc- "Wˠ[ZTV9Ԫymo&ՀT[]sY/Ki];gIյ8&]֌h6V\}P4Gw{=I&My{)u߷,al hh^$:b$BcW"M8lIg C;M|WUl]ç+ҹ .h&ɣ'87ƩaMt7-L"Ev\j4HI)=3G <ۻTTP5u Ϲ{/Mߙy> !qE|ܵ6[4/[-8 h'c_(ҎR)sHc# l^OocRK5b|U q b Fy5U]-y~Mo1 9ҟ ˰9l+ŠnAfqK%hicgy12}2A 漽G1?# 8)cSy npq4ѕrBY `ܣγt̩B8/-pLV`0<۳_ Ó*dz Fsf6DJwZk]-K,u3es:'[nIS4s*2%*_h17X F(9J6d (gD(VS tEڰ%V_ź*+LA?-qo>EWU;:D8o/k ӟX~љ.׬Ucw9#,>n pbϸU%*] on>7LI Oo'X#`Tz*]TzuhgMaHw"ibN}l=8uR߹Ȼhܚ,[>/H258E~~ }eDgH hQ%!;co)'BK#DDOkLZ~(Uarnd:FiR| r(dDx~-n)b*%ލd!,cw&%x?ވfq<"o!;ZWKF/5ՙ^G⤧G@O2w5-FBlWX(A?N sRdyuhڲY饑ŀbüUt8dTtQs=_4 .(+7"e’DTlϾi}0$m`Lv<~~('h׆DK25`;PP7sZ!(Nd*ؚ#Lx@1yycܤH*MbVM{4 ݬi+Y /ٜ GMX.J] , aaA7I`U,fnձ%]KɍrZW.~++"GrF:blo\rڠF;xo ,[Wɏ <ٸTw5C$ 3N.nHP}~~jTR*˩Ҁ1-2Zln%B>F=lXS(sU}^Hkj- 5)c&gc7rLJ+QyѡТ ;T b]x  '7upY[n%c =~rmẸrnB[ s 48wuWYԶ&r2vO˻H,o!⮍^A:ޡkLaf. BiTP(+QE pAw[]J$Z2 ڢ2& c?V^GM_GGC;H@RͼLb;6,AǷ!>tOQH-d3?[R-]#$D8Nw~J|3 kXƈKeJhg껋v\sTc ^B>&{!qdQb_N<"e,o_G۬[1BֺkZ8_/?X::G>%ɤj _> NB٦ۣ(gQWS~6'XCNer(,Lw8L2..у2)uE% ;gD< E劯 mUjPKy؈"ύ)e?J(ض I2oƲM ن™)WNڗ"LHmB.9u$rlzR$E4:y%(_Z Ko<2IWX);fݮ<ӍIX `vOh$\QDl1o#߭NvH*pO[G5QLi`0%y ƻtW |z &}Z{gI5f$nE ŐpHɄ+5- eY:OssL "TDRB`ZeKNYOH8*YYg!/B'>yԯ7sSY-t򡬨 h; تJ8<[}6dbRDU.14̓lDo~(*ims_9,aW;_~ݛr(±x9}|>>] \~vE"+Ko>]&y(Z"?I_9 nheFȆvs躊 :qKZyؔ\H(Lr}afJ:NK;<`1иC`QYhsnj |x A( /ͻ.KC jbF\a%Wh,!r±nnwh;X{CPJ0m'=1ִLy ؁z a8CDG~}2xK>Lq{\?yh!,"w>Mȑ~|{eqGg BrxnK?/Z2_4Q}'XsƯ,GP)B,St{A&tL W[S u0 @aD IJsUJ0ӈfaZ5'/spA 7QlW;H4mL,sZ6xO <u?8!i$"V jTYs_@zɶ‹W~lH.jM82lyYPwNN\hsy6;xr_Y$o!L>ud@:$w"q]L-U?=Z]a)DU7I^IBFm .kZN0s;V&RCWjUƊiC(+,ąV*`,+$O{L/-+jFQ2} ֊B MB{3N/FqȳRm6ア #jG/Ih+MX(&aj6-UI 2NҲǤܛo,XJ.c;РRGQLg]i/*At)@ԃUR}]%oiU ]O'>́<JS-|{€E27umZTAͨ f-];ۀrpTЮ17=9ѸsQ) }ⵈE!-yΘuD#_ū&R_4j2++ǿ\Zti!qL3yT"=^bOhˀ[] kԥ'a[&,+3,J iKF4{ih-JBIpG/{'u3Hb@;_[^X\ Zvw,&Է]`6iF0c-T.C/V9[ʠK(9 Y%)c^(4[;)ÿ}XJXz#Fዩlp [Xj{Br"R?]Ec^ {7q5•:|.gQrN$%q^$Jgnң$X׼i\փ+n6A adn᷄DDŽa)uљd:8ZoJAYʪ@rP߭H.}&FQ}ֹQ[νnOU9r*{3| gL'\LN] c| &}t{|3㖆j"#)GJhb pSzN6^F8ZqޅM/?v+ʊqȅV֍ަue(:mpX10=ˈ >SIf*7N@ YIo(gUt\E\]Sz_r@yLXv9t[ ے_3󤲓LM3]$T 3lR$}4DR\6$UXڹ2̀en=6L7g֟k+C~$=OT(M[$u`K &eI ` *MUPxy C)nO[u 2@/Y^_)NLqkO/q KP|!qK>yPN1٠F>~/DQh>K;An#=b`0bV7hWX04zo$bK\ȒcMc/*칑vt̥ALt\`9"Ǻ8Vk7ayrA\#KK5ݑ ƻŕ)XUm¶uV\5J_a^Zz 5G$ 6n&ȫ1[s &1񄩦*K]O"3*I [7KmM Tbfh__iKAU?0 *~I̍00}105lo꒖^SY-yMBQӎ qHT-\:@Fa$SK=F#1}}5ȏP<ƽ?^:W _7 O-b.WI'cD5C~>Yx*zWXtH  1,}"Z4.JT vB`up Цe]MDZNDBmF"[87T$ʲl;OVݜTtSίF .7h48a.ZU9u߄uCx.}0nͯLNLT-Eњm1٤@b)/ zws4+6O  ^Nj!L}!? ND#v1|suQl98O;/J)N /Rk$'dE@Nd$/YBu.G4F~K".@AN?3 Yw_z4Iѯ ǃBޫXw --ݨ? *EK c'wٽh73 (mǴb_ ]OgDA-{mӖ1-e$Xa%'#:J<1aqaX ?sf?J]-z !{Tg{GQeԎ3l?åRprV  yl/gӖ/{R!H1Eg@[GX/jQ b`b@-?X rdO Dn9X;sP'}?SۻNHG E'KWxJ4نw5!ʼ&&aGl!zJE 85W:H0HW fqcmtM)N`䔌*ѤpK_.a+\ӊ:9ܠ:}rUWў $Ĝjp|Z´;NRHA7ʹw6dHv<^ 'V"0.X~gERO"%} L#. Nd2w*Ȯz][Iq/y}-YT&6XɛIJg|…(M ]  ;˾g/aD-[ ҄ s%!`pF(D!KwirԐoL+Y8pKz!ڶ6v\Z|C qס18=?~Q-PlE[iVؙuԦꬥx< &Opk% `7>s.L-1Mj D`ęYG̘9_`nIQi /c/P1{,q!S'+cjDk^؄/ig/2#b8pF`1wc<2'"YӢL0Q"`jګ@vn@"9\_ 'IL @J2蝈q1t wpi>y.BxwO WQWB{huɵT%|j€W(w`ybY]-cp?DB@!kRUڡ?)8KrM&ɜ2!U|Z$E7t}XL0{-gJ,1׽Ym\Fmo44gmH u/'8BdF. ShUJhX a%,S3ݳxԅۏ Pqq[1C>܋Ԍ})ld(Tv/ +=BA(< ¦ Oq*R3I _w0+B;a(kɰ? y kL\6g9ҵ&.U!Qpi֓RL:'M0s`atPxv kCʂ3d8A;?s{8 w8,E\9 w :1inejKd xl=39D>UaSČmمBb7m{Ƈu8n%6ܮ)>#Q߹j-3@Vh[C@>O^gN >*uspaypo@Q4QmGF&bRk) !O˫#9% .= UI9|?y9T?U`f@$H|ONQ5!y\ mrg*&_/~;*80a,ԗP7. ⢣ Da7Z SF 2 JHm^eb<ى%3HRk m:\ k>}IlG9'szcz{,SSj+z^d-mgZJEf@<fJVxG( sfq;:N[L$? pg;@`iDS)MF+Hw%&2BBP+K}2H*btz`ozXnT ') dw6Y9"LsV"#S٬ޠLʣSms+]iHQػ(7THՉpDCztS_YPF¦(zƆF` kbw]`I.h=zqeucK)+~g$&Qޕ& _[㖡x-"yts>_Bbd,W5=;Aۭח XGX #.~|X! a &:8`)Jx?gc lGMf`-&MltɻuN60Z]ƻLA`S'qa.:r |~^IFx߻|wyYlD 3ڮdBuFFualmH)BtX]\M\5_D;CԘe@C>(~E}<&A2Vҍ._ -Ť.UxO(;Nfr?:8a,2sPϦB _a0 62PL{ 舶6'Y/&/!fAs,٫:M$xm' S]7ʇ~Dz'/xS hۥ0U". تךSB/Ѝ|a,DJt1&@3Zh%sŜFR*K1-79Z[ ׸BS'F2,"@ƙXO ]jG;sp!Dc_%6KarQG!gՄE/Sǰ]$(֑27?Z ):G-fpIIך+_t|} YBWI(ϧ.Y[ DZE%@rzV@rs_02oJ2JEɓf~+{t xlS ^\Ͻ Jbp8XJ8^S wu,ى"D't <#DW7هUQOx tb' ko|2ȇߨyBW#oH"?h+tx: 4Ra;G-Bpcd+"y ʑ.E*{ijo<17֜?Iɡ|ϱhK 26Y&k6΂[K瞤BH{W& %!B@^<t髉u YM_5m%BW=Y\I[9`n#!df `\/g 1 UԂ 'L'TUFn/4pXӀJXbw8h)N O#!Sr~/`I4Bzї4-A .v˄>tEpB4hf؇nDT -[uuթ4+3[4IwUa;Iq4'wZugꈯQn/f Yo8ZkmD'|JKtQōZ*@zhBz6$TN`::uS+b\ Wid&Go _ R[ KVº9BoZZb}m^H>}j'-o#1bat8U#S0NtiPTf6Zqr}+M4qMIHy7[H9ڢ-[9c;qk|=mع C ])S:;-!p2 "B_ݯ #i 1'  \x>VT|)5l*5B`5 ?gםBQ"@y?RDkVH5ATa-8}+f'-6AWZMINzm/ qS-i4 nDӒR <1x7ESɤѯǾB+%BeP08CemK؄uW%yGS`l%^U(m!L$EG>ABWզ)mWBY=d#)!wj;DhTLn:Dd` k4&B0[w2ł?NiMV;+(𩼚3Hes u{? 2h@_MKgAhWK3v;5&$sqEy`ޞ`zMZB#{lv*$ NC#͡K}%Ƕx~@\o{l,Ԓz ntdf iں5 B4Kì6Hݓ AP+  QKG%KAs}ꕸ7=]q$ rd.1Xje/C; @uOaH's`AGIf~oS&홸4m# ǵrPvfd.5C}=*#*G޼$T{5ozxwzռY}$XK'E)nzFE;MjpY~;g4zt4Ё$@قX6DRWS+ ,?Z `a3@EmW|ZcFF\M MStv ep'r l L"-Ra <߻pG,}B8YAA g VK]Sz ? u% ҹ:PѩRwRQH U b=s}B=rc ,͛Z1`I{^SOT9TW*!-{(\Ț25i2z>"Y728t/lZRwh.tE-ݬmNf4?@c_·pOx ӝ[3!sQQ @Rze_,?*xԸr.CG h7|5zzq3IԠ0 n&?FfbKn?۷m'8/^ˢ#کXP61H^cn ZqxqBj 5 iǂ gB5Aot2 v:ePݲi @ƎZS.V:&q} b7 Bf .3p}kUdxO5ˍX(*}KvUE~_T{ӕb vJsԒ[rfj^S1̀wdѲd¨zQTe|!J`+jR~ t/!ja/U /\ȫT|6]`D j2 -UxXWm&. iMvigmc^*D-n$9 nk^+9`l]#F![P%!EVTNȨ(*8\ߡw6/g8 bc/aϡPUGj1BI*Lz.Œ?KE+9뀶{LAޔE4T @n4;e}PUU;r>A8M] cԐ^ԬJ'oo8}oﴈ%NkqfSFߎ6|{r)mH@|>ơibXvKLJp?.fpƠt^}~wQ'UJk%h}/4f:?Wl)B}"% v*ݎxaJ^)3p}:4~ךr[;d+ A Jtv;iv9H)Q>iH(2i[lZz(Hh(q+.t<ղfj{ m~ye׉uRM{aPg /%CG &Z+X21jҐxƿKԸcZް&$q3f['V`>+v}dvX.> =]N.gMFҿ~CII\^4͂AI?" tTlPZE7}%e\_쐤u)բ)O1lVwE6Aډ0 >ʛ˜vn:_ڬXJP@\&t2&TD”ѝlS2ջnk8Xj@>'亓+-G_tsHEZS8gW6@=A(T`/g.ig mٲn+Q/V׈}K_fRU4Ƞ*f\\aLj8vʋ>..%9Z@ƈ_s;5YNLý:S$bXEeg ;y$pM~ԹZs]a ?ҕ/.Aa>ڣ3KLf7 `7~L:fR D韈~f"ؘm1m( (c~8&{p"egE?1ֿV(8𩤻]Fw]mUd 徢2xEޖ~)'U,Rp [ G ՝51ND-J-COf1XO> :]w `96OF{mxERPr0g[QwY͚ !S)^~ I%9uV6@\!Wt5+$_tMz+gZt0vtc3I!۫ݖ=n[}7Z>?ƫ;yǯE r2 2ͩ.UG)p]U1*g xp5rp',ϳ.;{qTs%uǼ#> >0UW)L_gN?t8oUWPcmZG˙36s4*uFjRG"Og 1R&+Q0Ϯr`䈼Oଡ଼CN$"A6HdoIǮb@~bDώT~w01@/2:U@N5eue?ǗQ Zq' r_l􇮸Xcd Dz4jfzaZ\Q_`ʝKX/ ' "Smz-G'SfyWM">g ݭU϶ ѓѯU72CplPW6i*GOrԳJSgLjfX&]EQӥ# @Ts/VEm ;pb/+JuxN ́*W8Xt4{8l`u=*xsm9:ʀT1ĭhӟ~kc'x)`vr&JDuj!3_bf1C̀nhCӲc1NO ɷA:ԝBϟHy8s,-f&y5r;OLĈ G4:Y1 V\4B p惬m8߉4ӗ5NDm: u6=x#@/F ^8/BhBl{$ b ɑ*SgWyR'kQ/_Nع߫(Q[9O>-s˰o8ӜdXfAVG;qKLP﬊ai-^GO%` :zwي3 ۲*$7 V[rkɣ*A,E`.7huwCS*Hϣ>uSJ}V]vai6O R * Z7~԰gg:^=gM(&}n &$v^bjTR?3:-XĞ Z6rnh2!-KR,Zd= l%Em3Eu5X$;6@&A^ۡN2{C[?" ]FQ)˳\Ei\l(EJ&EȻCzR;."roK M7,M8* 4'aj([σ5V7i{D~ƒH6B0%`渎~= φـub?lY){RJPC/>zNLb%-k߲m?P@0{JzTO]VY|[I":`Qf(-RȫIr'󠜗M3|$gDf4q-kޝQ|Ò /&^<\sE4;(nH$ڧT@\Z4Ko fPͬL/8Ѯ2&ʡ*}\ȸ2,FDxKu0^XY{ΎuP\AH}\r%>l6!,76N57֖BzÂ-9 aüg":ijE$b۠ScLUa+tw(//S^*^-,8;b~e#6}J_3plJ[=ؼ@,= 5)WE{/(x-~i3@v- iњw}a'n6hiX_Ajfy䆮B ԏiҢJI#؆wnpD! PG/fsfN>;CoK&" Da7_νC0fiaCzi;4mqN;yIR/awy8t^IdʭLq9x05`nGyqjSUN_=*% g_EGEe6礿dB R,+>ǕrMT,M\E4PcqT)Dnpw>4>}y"녍l"5"ۖQ~.gμ#gv __ 45cxfDQ}9AeJ_$QfJeHL9ш ~;Xo43֦ 74_ISa0K2Ý^@EGW@k0 Mn[.;:Mo\{TH _YѨdV;qE1U&S^Xk;@{NOخ_:#>BPIJͥNG2jy J [kMd`mW -IdĪl[!621kc0$v0p Kn|S_iCޤ: @YUM}Zrc/?䝤ʿi_^ko-Цq-|Hce-zBUd߇&S8~7ac+;N*#9ɱúiP-Pb|ѹO#U$madJE٨Ak{'زY__@ssI?Ń! b9f ;cy21z"&)Yvz1=]e ڷڇr\`D /+5"> .,Qś' EdhP )PCPxLiJ2y̙0$ ǔ -`e!/> \Xwɩ68AZA8%@"|we$fRr ",4 I_-'7N?xEyXt6:m:7Zڈ G3Oc28]l> O 2F%3a1|w"|1e:}Á~ >%̡7-jZU792-跫N^2:w27a<m9Iw 8N"{!J;ǿr |*xxOD#S>}9dqS[W>b7oi#Et2} <W.N{0NTca2ל9;'89dX ΐ{ˬX#N +AM*[fN| 7^Ȗz;Z"m@,N> /NmT>17BZ.=.WcLL=piEp]]PWz`VS:'HŹMrkZP]j{xIS1`'O061I g"Y]c B# md[観5UVa@56xT{3KɁ+/)Z z)XF`e/z~Ƚ^ߺfUՍ)?q jQ!Dl̟O!7ZC-#=6U ArQGERQ۠kc]hs/ߑ\lސuMVف &x>oP=mNc=  *Cf)b &=i"mopvBWsπsQM8p3J$ 󎰄a = J@{5ο4{ta Йiq\ك竚#-iUo>pVjW WQf V=9hCNVW /ok$&j\{gjd8F{EF*>1$*=+ ^/`bEk#zpϾ?R~BU]M_UwG%M<D_`hsޑ6a>C’;Y.&lYU`J:&("Jjf~-fPJXGdWW rEnT+UPZ,$eCh|P84@rUҸ%d.tz1@o˔v?1|#>@Eua8X_5&y#SsY g1~v" <^^(s"c~A&<.ESX]qpן,7h, }#bI6,z "@/僰[{CS+SDڹ\v{/uN֪ ARG?ѿ̻uh=Fɡ/ J)`K*7 9r 2yþI{Ʃ-.&cWx8tcdJgOM[p#IIai+ %.Pw 61=E-hԎ!IBت;\ oDq7 :[mipۦbCY7sѨ[WYf ˘fNxev)$I º.N.})R7z;{q1Ie1b WSXCKEaOcV\==ha.Xo Ű,6e = mkFjoشo H|p9hk# c8:vbّ75D fZl$`ܭVL" r4%TIVLsJ^7W.ά-CGuSc}܋Z?h<`[5_CSngxTaכ4gQdo;78X z!"R~fxL_pTR8 'Cbw zDjj8seэRd/ѓQ<},-W>njr |=.eZc̙ɘOGXiv.6+sXaVebaU'ѓ\Sji+gg#QZ[>nZ/B0F(RlHq7vC_8q%0"Τbt.s+B@\*:|EhnhO-Ɣi($pWʎ oALL۱̞- 7F(I)G^]'K#AXn/|&^\Rd@PShc9>˄q0fHPGD"VKQ.FgR~0Bpd2邵I作$+4 3sa:uO]k,?uux| F8˶|24%3ނWE3ac.mG2=eʄ6׾W(?xq-`4s{mMJ aA..ET @I8d7i@_dx8rg 6@PMA~H˖v@VcV8l!.om̰6Wuֲ2c<%(>7qWd6(%ǽ<'i#T ?,B\6'j a]jF{^w4֔O^e[%KOnh,mQ`I;!hArNç+KEHi`i 4 'ʽlD3C./j_Ӗ[ ^Mr? -EՓ>OWn\'qȃu Ir]с*PR-MM~0.P+0]+;B92G3e° -jHҦ'z)|ð<B/=c މӠm2UŪ[$˯M|@ĞwD'R}cLCײC"$YneO>-JS)MJ%0 w)қ=.rg( LwdnTj< jH>):nL dS/+ʝ/ T̀kYrʓmXU=yOlCeOwȬʸnswێP<= k LcٳfcG1aEW^I6(Yc)I(7t=.\ .~fPk!]7T@$)G qڣf'r0x'pы,FXqo2,:3.ߡP(*uaa-0.qF7-&gu9@aE2UUB JOPC߼ ~Ƴ[azTx-p} |ӀTM\',OEI W6KQ0@qG_zO~ά9LnDpzvEb:9YS0㮒nPW~|v$R&{#Z&n|4( fō;Lwg4eUPT噱nVϯM1de436wI7;Hǘz+:m bxC%*_f:;M@g/b~8puWD|/S];E kAUUN.5E{'#XK%_(CwgO>4ZW;Am&\Y>6sE/ (I]SV2r 6;k҄/8 ߶ƱwDŽ y=:ۃE:5g@ȪBŠ! jںȸ ;?NNVR0 Nqm=` ї5Z9RR6vѓN4ۉ>ok NlI6V'Vj=DǶPCuB xG7aFBǏe#z_!)i (ղ YD=d66NE"}T)c|ɲQ 4ce6AjG4kFXC/BfU;{Hv3leCHˀZSB!{e#Ud@?9ZW5gs )%'⯡to bs}SZ؇+ڐTcD*mH ~UݪF};ט EN,g)ܓ*Ƶ2[p÷#4WO #+,][EFB8,:~M%e:gJ;7_R~-ǖ+(w]&TfHMށI]{G e8K˗L6/1Zx~0xT=^_K*.PïQW5y`7s WKX=3"Aѝgĝ+=d7Fp,FTG/Pa3&\x$z)8V*+S,,";;R!C_޴]rE0!4,a/Wa~!Dd38G%nb DZjW3XmߍFdVt?iDw2WX6d}C|y1ȍMM ĸV|e^ QI;b8,am%o? ;RnS(;M)W5]x8tӰ=WNx Xڵ̯G:?JSeqܭEXd#U+Y~{K20a 2c7vIf(b3~L#2I?1P>qKRcA% Sk25ѭGza D;,N.P(.0^IsKke` +рj)D]Ym -rQ^P2ƪZ8]c. E+3;xi&=ŦCG.6T]eVcݎ4S[ED; HޠNUx9)*۷I9ȿppw!kLGmמeu"ncR, Ƿ$)o`[6DʆȎ-HRcl_l~Jd kn9;2HlFX]0°WӾ5}b=FB|Zcx =gx [ m(]0(EQr}~b{9 pZ= Iwu8qY;4H껦G6Z_ }m`nJ6IRu9}pQا/T$ڥTxaפGw!>=Z6rD,kF4J3=a\lb%O#FpX pR;.JH]b<INTm# !i%I,R2+Ϲ'h8Lbγ+ذ ve_UuqH7Vnx]gȤ'Ё{^_r<o!s0d9†tm~;M=9Eo֥N|36;C2cq9;mÂ|xpmUv߾19۫$]oєىaXhƯ Hyʢ4Y<y:͔. gQ lϖDU7ugFfL]#BHA]gu<|"*Q΀+ȣ2V먎2n2HAzWjNDzΰh-0*ڈJHy O4NY4M7<Y6s<3կ ^9ێ|ehXqj`/o aWg_O#Wd[=8XʦZT ,wE^MH M :𙇌mPȈhis2TZ(FHݥ̯!HG;,׶'-_^Є3<[&Փ~v*=, Iʵ8=&Y ~pebde5)s#:'ۂM!teuuvnw䢄D560K5RغH{E6'/u-3)ɪ!~ {O :Y- tnf Ă=t1POfKW#uW^8p ,`C' yS | {vDDGa nA85Br;}R c'XyW{ 5FGJؒv9Hc0V: #Iqz#y``5+f?d$g4PҸjOY\0+ՉCt>GsKH5^c;Q/xLW@KIܩ8ai~c#/frH}01\/;kF2ƚ|{YVDS &WU! cWkv5?ZUXǬZP['_zLPnhkL ^1y;(HAc3^hbTA/Fsi&@YRz[6_ ȱ!oɒU|τWD3/ms甲Қdz^Oayy[XONiSz_ u n!!%kJ":”OL/.+#$2mbOjB@A;}T8aF "`ʈ:bVEVƒЋ[L@b?9'릆!(7 ",Ϡ#^jθC[ g}cfQ/}sÀ!ԟfMJ^n `]gb?^:+yG4oH\AcUн x5|F(r"[$Cfz9̴_f*|s !Y:sDʲ2c~ Q -gqtC"iϏq%Uq= bF[4\7| ?a?aC]}O[cyauB<+-#^LZNRk:; 3I0{5":u&g"guLxR ^8SR3ѶtE"^vOJn9 I%`|EaLJeB͂O)!^LV<\+oL NI/)FĮ:Ojָ("5UUTFz%L>[?<4*,N3L >Gyxc4~I3D{`:A%qO .o~˸M0—^MT8^ 1Ҥ#u$&i`-b:zYy 1N`[\b\Wf^xk QY8[;xwTDL[ƪ($e'i+Y/.MnD{rJ*T ;quYFF+d*'m ,kH"/[ɯ"U%Џj>,t}rSx 8S(e}rV>uvCw(M~DUUYՉFwCl$";s]O4wםܜ%{lȗ7!~U- ,#BvY Prd3N'yT<ʉHo; uLYAM j [M\d@ z h87566-n^s6فH T:ϙx! NJk,^1hFHHJP5uHt?D G_mlaΝumc90$viݣfeMZݕV4 KӠ<A 3sl {O"}8|kA}Ab亨hyq L6#P_:YrX9)?&z'lߨW@ULɗpC:T+Q ?^h,Dh5JR_c<珰1jb PBnC F:eqƭkc>{ysa'OU,a qƽ_ĺ7#vaRa]qi%y]SMvu_Jg}c.BڌQzkX,Y?{r)+)]:n#;26RdR| ~VȆbt諌Z7L6"~vUT6^cDVr)(>JO>kD6mcr^Nh+9lS >|MGy""l<\0sB̊q(z ^O5BkHH veTWPtQ›U1${݃0c:ʐBG "y"c־ 5\1:%Vsz =(mγk_\w6wBsG *7~=\<grHWQb#\ ڨ?9[56lB:fFY.Ff~wuŝwtfo.#JR+dBU%|QnVp*pꝵIɵq y _Lw_9}%;_cFm0x0ozx2t0Z)#jۊDzƣd#luI7Rs*q)u9XÎ"d<k;%R^"D<'V|Y]+{C`A ;߫4Xb=[/UH? T*WNU-1M& X/6yV鸁h9uNj`u0# ZkPVfsWI5yb.ls/0Լ&j$z<,FnG^U:D@G q9{5RtJ0Dˀa/aȲ/]:2m7Pԋx2A6@a_=m4ʄU}9~s> ,K( p F *dO&.a',Ԃe=֙oVm3ˎ?&OO/{ط!z)܈/dTnl]EΨ㋀1D*e!(NQ=0.AţCRi[-KsY\ i4u/^mJΟ?؃Q 69H精_{H?PNwmr0j(׎zEk( )ҡ 6ȅPyW"v?ȗ1}eKG<)&_?`B"w3Dn+XdAJ@á[n#Ӭ|4(i8 [bo/) >&dRi$ŪO h1.\b!OfJP^":sXUkhI='Gz8$>QEei=嬠DK%Q%?sbl6ܣOh- 9\bFQ9͎aAt>&]f }Q+oYzM][^U4!ڙmM̾~&繏ݞ3yqSKߨ̂b^:rYG-] 6>7.})t''\zLTF9Ekv@L 7٭~s4yݛOTxψ,h6e ո vk}T&&_71eѹzSmaྲྀwNP7*§%/M/[zsjpߘNDQ&@˛U/oE{jVcKkj(c PǓ&Fx>9I8 :ao/^D!:^{051XLJQ<^#Iהsg-Næ8iC2_݋Vmfr!:ls,'9yҔfIߒ`r["`g~YkYћUv? RNeɭj2aɘqIƖ-m PH%5v ˓NID]bHqNpPFMv]-#+ix7QqާL:Rsp f4Tmqw@K,|Ra{,m1O$͇o"Qd]Ցv %\=W>R p V&nF.M)>R C`YGҫNv0h,uE "H.;rbv7Vdj NKウQrzL-/(oAp+f9b~Xp3f$ AD4k2͕YA[ĔFF9Y&\)e;n%aZj/ǯ)lkfUϞ MYeQ=xHJ)vz}lp wjy? 7c 늖5/\a`\9hؗL/H':{Ɂ7>׏Cƚu\Z,"!9A`bʥe`oOW? 0*P' $5+"ւT*9@L5[]&ium͏b_4bq>T|g9BDlZ&CPȑu5,y43$% Kft cJy9\dj7?,DeVP7 !:i&9A5r"U:LrH CL*jJP"qw:Y&դw~Y RS]̺T0ؗ$vt>tgˁ,kX-ɍQޓ@ZF'0 ${(ϔYkX.1>V<0+R:we,mp?{AYx gwoJ#Ҷ&OP<UQ!8ض+WҖS2mf\>ΐiP"#Zyد#\G_Pf mES CT HN>vx b K.|y츯@0I-,خf9Th/]js`q:x%[B'oM>&|栧{-D Z _¥khXU~C7ȟqS7{n^ p}pɚ`K(xu&8Q ")[sK1]ֆembKYWas݊PǎE(; {DE{f1;uhle墓"$@&ϫYJBݱQOVQC/WڛU/-ݢs]ik6"TnoZ[cbR":@Ñؾ^'Nu p`at; ybelvT*)A~2IF35Y`>Bc.J?fe"M7nYt:Y=~TrWǐ&@6>aJ\i$ hv"oJhűxbRCq?yKFI/1_;x6z &-&ALI6 `"PJM^~ `+0XW g2M- ̢H;χn";.[sO;[ ]Mۀ Sҳ1Cu7L4)v>+>@4~  ײc%ܞm1Ҫ6Dx`ʽCTmV0ic*D֒2^p,.0|He+f[uf<I.H91(`i? LNHAh;\!u? *MI^QHrkٷԮ{ںY7z2#|_ͱ,\TFM$ֺͿl-/_uj:Gp4dE^fTtþ}! Lqaw){1 (sL vGqܚLekLn?;JF%Fhzж!:xd*6],1v|Դ5@>rQHelggi5+$ ZhAgRWs 'f&r=$x$۽Z#(sL/S:Dh D5,;פ@6(جq1jM~cgZ7"@|I텒4(0+Kpm AŴmAN6j-4]9np:⨅wẉ[W(ΊŲKu%؄chÒ77< i7JS˸ ho;Y|E ܐn n))Κ [myR&C.'{<*DöQm Zwmevf حܴ;ZzoqlQ]J, (~Ojx7Z}N k﹞2x2bj3GvA!ٯ4ɵ6*d-pN0EHdd\l:eb)>N$Μtד$QVrnF4+[ 8) J)u,ѳr{ ۫[^d "Z1ɖ`V#r)E̸*`w5VDNJS`u\y/Ǣ&(5al|JM`kv紟%B|>0;s翸I(?ܕZk"R21ЌPr7dGhnG\"$ɇ;zgmLeE2ɸQL` ~1uwm̬uV]mŧ?+A:ed-^3eBNϬXrPb^ɖM+o6=G?~YJY_`7d=7(wSH% >"(xZ3.; egP?,g~RqQD˘}}oYAGW[/ V_L%eXˣ}7kMta*"`kO^T:uD5KYaLG!B a-֡dڪ*=#BE;Gxǟ ]M.~6X) zY|/:f&Lq'QQr0))ԅikf]c IWf/#4?RODbz8'iTiojAGDmhzJCp22%h{wog fnf-aJsZ؆mͼRGHl=͈jKqo#"qmEȥ 6QYd&>&Juuͺ׮rp$L >*;{ y׌tW5NZ4߽LtX͵nOjUQv~8e Bجzx42p $%:D|π0.7b(i\w,VILU$,FՂtҫZ$>u”jĴ%$(Kp5:fqr%gu* ' bn!7n})NK!.`=-Z,p.'ՙrB7S;DZ AڕB'KڅН0&h)94F\SQ_mdARSESΚnA":δɚԁLpzYXF /!IBϔi"X)eo6X&O};pMlg[3:A09~t aW0Q5D@4r~ɼ|ӈ^+`9=SQ ]>j,sO$ځ=da= Bjo}pC5 gKVK;&Lplh1Qښ]v;auIbysʢ}Eยi3"saw0::6 !7ӾcC M*ɌI{cEg?zH(Oh i XZ~1wp]=¥kR=1۹ƓB*@p9@ Ό_ ݅]v~:VHg"A!Jʠޢ[(rh˧߻|qz 5T[CC(N:P+฿ ks3yq;$1J{h]hf3L)6X*ǀ-~ft4cw6 $UETEX3+%@RBVD*! 9 aLi!f<]u" "H!tm_ۼzA'}m8)*Ԯ5qrM1 ̦/6fOp࣒Pl-[(l_B$g+~3f#]S^7=t.iEBM ܑ(eq{]YPUr"p[9-oR.4894)ʋnxo'Jvau\:q_Y7ֵ ^3`5XcH+kk M[+-] Chu@r;|هgcbs񼺓# p6; QXcImPw8S9LiuVM/p=D*&$$b"Lw+ V(`6;n6VYx+o)N?(y1VhTrM=F̏c5Ǵ @d""@6A_BOAur 2iE; g =,Ѫ (^ٜ4gIIQa#ITDpOK4) Z222Ж W_uuJçI!nAqUJg$=H7QcLIW#4J$ $b/7ֆ 12y9{;\MH+mȃ01ܩ>pIY9O=xRo q}]g#Xps4t rs4)>^/z'&(oow[K4OV8d v]ky=51?\-}+5?_)7iR{13aP9=i)m̘LFͱ--.j(CʭGLvΰ@gx@ @Svqcj:emEysJRKC3\i'SL#wnhln[v{iF펆}l|+Y} 6x%Xx Kxuz(>M ?"TçH2Xw nyC禤%.#JuSዖmcrQ3qE"k$PeܕZ󉆫?UByˬO|zYHb$3uCr<#*9V# 2BQcS楹h-儵4>q8toava-ԱQo =l ay'4a:co^y&?[*([E-tM%liuȎA S\/v4G5ӭ Rϖ}%d62 JfY2N5,O5B^~go5)IEͣO78$Ãraz?nLUF4z LaV`\W| ͆>gS'9~,i" KSPFËޫLظ`gǽ[ z ϝQO_GlWBA[.@r )kLygtB1'l3Ƨ(MT ZOD?֖dwIVۼWaHe9Ӈ}w:~luvDk#"*{֦?-‰ ޾5Uy=6V%]a$'UX>Ii߬X ! cɵBN]sz Q]ގ <ݐPPkc^Lght{ =v8wQ. ?XwgpɄ؍jiI܁|WI SܣV]/ ms2'E^/cK}].kP& UҠ14Sk{5J.'rDK|T5:gPpjA)k?q' V3ѭ.juQxoG66' {F f Ra_QL` X tw̗5GĀKB^5?%v Ʈpq$꛸!D:O/>V\6X#0yG.wzL_M@6ݍ,b)|9_BʚGqElow>|3|_jdT5SImaoP>b$yt=m]l]@uNjIb_S'K1i9; )5{ozY8-$K jY;;'Pt-@|Pĺ1‹ ;O'H$9dSe$[(C,ސY7I/~6턼K^O =, `pzN‹SE?+ YjO z "L+k!*G<@ŸbԁsLnwed4 =ު1]mHn7x[9쭥Ǔ+ɿΌNLFiB[x# +oJ])ͫHT7dz,͟H}Y*[Tz]ݞ$2Tt¾\6I5*RCF)o~uW_ g(/)L sFћ4o:ZYATKzM`EuLTo,N{FMWdGfKTd`KK3>asjiJJ:! m$6Y8V6O j*m:]骂+!=S\<~omw}B}7hǦL#FijHG-[/E{ϷҎ #e-@ȷNDpTX5=4L\p khukh)jqx~3"9#&s2ȳp׉Y8ڠP rܽ/k!_@,O Cqct'fi?6qf) "oTG_jlR)=` m]/}'_/ ᎅ|<f1;5:J%-(zx# V5O_/ݨ*~|64KHe -I.8%:si &BU8P] 2gVvaM߯oۍH^#RH'3c6{G,xiY.ȍ?CHiρo؛af-^"]m}YUeI >yLؒ2w# e?ZXG' *Wb-JF*-!8dG9g5ho7dXcE@Yy<*NB&z]0g [AxTCk`%_$Ӑ&]J`NO0)!eOg?y8lGEP\e&#Q ; R眚cKǾƹmV&8(t3'q{SzeYZPkVbP=l`׽Nwe99IY!mWM3TQ)4\bيZjJz+#[T$/~ e.y{f/ }8`jSڎ8 ;QSzsmh9Аn Ac\AO&’ksǭ?˪ [ Y 1#fz?TnYBi5NMs0Ûs@oN:RƗL?̛tA{JIڧ$) _ Wv'ȃX)AY+i?g_@ 23[/ &y(2# Z~ gih=KZ%u|u)Vwd* 9Kk mi2qdDTZ"S#ќ Sx:LKMWbTn>M"?qyЃG~òOs[]ѐoһڔ\fz^/TuanD4k:hXehޘC }^n8Am#a)KxHwt8َF݀G޲EǖB9o; PoS# eR$Bk.:[^Ke8 .$r:bXr\~=zAKeUINvTiQH$S2$f7 Nlr"k7 ^Ikg!:!ŇU=Euet?P _,.{?Zb~'R0W%>Ln?ZSk-GC:_ A#W*Z ˃[`{[?ףᗖ̒Ye거H\), sMk`vlHO U(j5\P\IRKb4Bh߮*iɃmd@bX1* ê̽vPysBxi;7i+t8h0,({rpNMbBe#pxrVW1>< WSb,^C!n+}`R%к>X*DOJ~6 Tgy\g-1f l-I;;X1F@/=b!Wu? 5"j'׃d.jW@mJ74ck(iKӸ-iUFy*c{9-7862(0aT"|16uvƸ͍> uBh~Xmh: T+dKRcF/.̓ 2B .p4N:͍7߉͓?ƅ"(8qn]g9#( [ <"nb&j~˘ ԳOFgV%.c3p0Ĩ(WEʱSO_$;3e!c ; aac/`m*Z ۤ}C~{as"ɺtűUYS)E[^+O,=??fDcqYb{yG0" 5w@Tu$HAJmprrl%Uؖ$"uN+Mp`ɾ?!diI9%{@k~_&B,џ^2uU,z!YoG2r&*}+le$d[UBp{oVJ8u;\,,KW`Ok^> pD ;KjUV ¿ Հ*L}gZ7vAgsopy}[Q㭒UoO["\b50,%Xn{^$Q+} tRf:xt\LBhj1UJ݌gݍ@]!,[L]zih^tgE°U8 ŏ4vNӽvZ}lt;^f F` T'uߐE=;쥾m{Ni/]*V~di"?'7Ps/phc[5"= Ij}0Op<_>_ѹxW/Թ|[Pgw0Y Ŷ̊8WI}/DSaӺc_Bww^H_Q 8sDPR8U_}I˜yj`[ߨè*ۥһN*uVw{ |t du (cFmƧeG&۠_L4)M{•0833Rmثӯc 'Kdy݆ uCz>C>U]oC4K 9guI8AP՝>iCT22o}Emt0L:v1G .ȬӖ4]Re ~G*Pu4ڄ lpkkÁm3JU9m#ʥ+2Ш(D,;3V>OtWY2Z}UY*f$:I8vw y3:nkP')>> |\rrqL7M/G.0aZ3`V)! U2J#hU)^,P\W.B,b$g3=lf _!l )mé\`6#\S!:4p-&Qo0)}!k엃Xod.kGtϿ0Y`4iɴyh6t@_VBÝ۲- N}`ZJg[3H^ʱ(2;bXs%W|n'3,Q6?u*4O #W@Q8RnnLd #٬yЋQsG>>0MC^J.+v8~#ts~v>Aux.&ۖ]wI|9 j;ViF2Y ;׸d'_Ns~? r0zMT̎ÃR"",ʖ7!fti*6=V,AiFxaRyo}͑% r2 BuO5Rj&Ö V`nTU,nHf[|:5F8HsW%g=ɭ-ֽG{Hɢ _.+DYŶ!4鑞a|Sl(EyUvρ#mDM{A8>A,~(h`Q\&ܧӼRz }#'VWf() iy෥F~gМ{l7C<cuH榤'mHjN|MN]ӎd[A.i?52sE), KQh)r_divòU!s\ {"\8$ئa6&R8"mG2],MšJ&&@-k.'<z]&S_/o+Bf(iB|U=cbgŐ38ԹN i%Rq A @gݮ숷::qОy.\80NntMp",È|,( [~ƃps;$71xC˨|BGn s'D`Hf-9ʓ^Pf4T{̌gW ۝KW=b9R,&\X= `.ޒ';+JwCIIT mu"h,;sC%:H.&RlZ 0ښf*%@BSm5O<9 n@*}]^T\/8}4EBűs#oW,dR" #]v$Nc %Z1/\V ɚǤh2;fUx7aO.w FP(k(j,竖gpۼr$<[3NS%ĄZ}%Amt3Y)gǀ5*X5[w<8 Ǖf9Gd9! q7*[˗Oʃ$6E*V#P$,qN/CeC,֚ gƩwg-bW_2\#iL;ї7;SsB_G~8 PXZJu,ڙ3d܃, /n+bVz'j5_DI}:hpw;e Haz8ܙ4m#1/ʡm)|2_(p=ܫ:+S٣;w$Fg5oZDCm!^j眀DʘJd'Z:KR)"T2) q&O {P&.@!N c'\5<%6I y>٨.\j9_pXq[AP>.SFЃwe闻_85BcmT2g*W_6.s^E=LdZϭ8(V*Cdw y{(sкvUcش:M#y;V#'mLeG(ڕ.ȕ,O)@NGu.,[]KSa;?ڤ_>tkFheٞ6S!xv-[ nbG` b9HqCxx<H oYO=Ay푮#Еn693XWgmҞqi[+/,{'w ҉B qѼ}6zln$'ɛ\fbhv ]M)'ߜ2y%ĒB;*#9a[a_V2#[dFUB\:t>&Ԝ 9J=z*+f"F֨X=~aTT @ ^gL&Rfu&89q-|LI|.Hl%ZV%c#7@JzY \]\f'"ɷJ@xXc` ޡTc[5[lql}'(UMZjNMA Nnok| ,HiͳcݷI%7:A Ad2aI(t%(C¤peM;W@^?jQTuʽF3a ‚Qчwƣq"nwxRH(\Pdzoxp`ZG%XuMj '!3qob΄ |q!6oW .vj{!Lg)My?(}1!Mή&<[^ۜPN\p15Mj@]zvFIe'(:FEhnC[ỵHH0"M k:źevmv[R7@+Di +]ӠjW5w~se:bs ?m'2l哥a>̠Ѹu~-58>?Åt6χxsSI0sxG n }Z 6ٌh%!q[J}˧XoD&Hg+:qUd4(;C rn9ᵭF46Nv:[OanZWvLp.˳ ܞbŀ +ntQ? vZDJPV?kPDN0~KMɵ*oq`݃n[mԙ `چ4;^v ckM P$C yk=-1A+I"VE~S]LFk jbC-}''bD׷tPpI7a]Zp)JgStGbgAJX D!);=SQaukvfhI[i|ck&z>W~vYF[c}/8y<ݨη=O J"A^Wzj-ov!=1gыގUDieIp8#:q}ű($ sφZ)2Jhq>@ #=.ߝa+2s<9JLz.V-D(qxMu|eZ?f݅ƵCKy3 QLJؔȁȰL\7FsUIܴPj؏k.l4gօk4۝_aQ_9Cevj!;[U\3oа[2j|_B^Shۭ]`e. M]:YL1 ~̑|Wa:O 3Kh ` @|XMM#f4s>JRUs ԋ QG#tf5ib!~YK4 ;' AqiO#rҲ1F-+W!~L=~U~t%K$)EK]-p$$$lܴ \h{jJ6#ę5jzRZ =ܿ!rĉÕq[!dD`@{z)T (q`NR[F@HH0ɒU;LUsv2z˽7ͻ?[6fPkǓzvED?O=]1e(sѨ`u4ouz:IC.OsӋ%v M.RR9BksXOf`_+[RtBiSlRO( 4P׽F*VP@5 lch>WD}UaLKjs;^3R7ΑX4T)'jBUHw`B!\#D}7@C-z<9鉊T`dƽBA/; `reDZxrtD(B[>=j]8cRZknoДadJ /4=mY[4VWjD mA(nla/ B39:ε_%kPĵpfZ@yS_& Ϻ5azl#KޥG>UPKfVV~xɳRRqAh>ۗ~x?6>#F!> q;O x p8-N^e{\\TИowV,K=}nla%jEJtΤN (o3^)ˎ qdկ9 Ǖ9I2׌⊞*3_-5*6-K*?"YC=c:tWPXf׊kI"3H܉ )'L'8 a(_tϰP2tD]B?Vh =O8O ϼ,\!ghv;,E`<<)4P!z5WIi !KJ =Iwim6[OKo<7ME)0D[o݊ Xc{J֭QB9vV;䌒! - D 6M;npC|4(ːTC$Fu hJr*U M46lȮ^iB/*OL-.#5O~3V8_fg e|FlOpMKM72l#6 ZH`Kҍw1i (lѰc0"ys3@誳m2Ogjѝ}"I>G ypL}e,[~)obu_+J rԂa+ nʻ*%=T{!Y M2|؅4ڨ&o5u?&j 1oef9MǛsҬWONI4&,$`>Uc.duh$>u&im=Wa/JH>2l//ᄤ2zQ`0`WeW1ƫXϭL}=s,DŽyWaGQڦ9(r[\)6؋EΒw=uDk9l\4ˋXlRkGp[𺂓n;TU @γYJIf2!74Q(Rv,K޿He4a!F-%Yեkq^ VMEkGx]*jw#c>(*;V6($mOHH3Yv@~_ ɻkz[q^.{w@&fXxJ')M1^0{.bXDB:Oo)Iiڇ%ō >^Mm- nK=yPu+Dޱr hͲB1z3!g`Ij"79o#_5*0iH<̒E tXlzj0 Pp kԀ 05WqN=láǐomC N.d-96-~87K6yf~qPlP#BM% ͅ BECZ hI`itDe2}RFqaگK44ߤH9M4>7GAN"{Pz<(rKnQe7fX)3`%@ZDMgʨY#C[*0Rdy2NA![#8D~l`^ Zkiց-YU}SQuVsżN ˑSsd}EMnS.N8нIU~;iSd)N>2NExF`}ÊU(T[{lf"dmЉo:[&{zJ!ҡy?|``,BgO>RWXzi`,R} !wcl0>[/6DYר.j:sCbf|@̭k0Z+3I"8WQC DX>nrd+Hԇ/ "ސq]LEȧRy0|eA{&6`)gׂcMV02B.ZgnozqfU\֚VGxǘ3-j{ef2?]gyCd70=|=C{RBC27njg W՛ 窔68O˦l#^Ji fnQ$iշhS GJMmE=;%0` 胝 |:zGN U~) FF3 ř2 T%tP{8%l'.e64sdXKs)(ha0 VUf ҈8Z@R [0ܷZ!eLª(uUV.~zR_AtL߀L5ҕPRC@e$; sԭyQ6 >iy9vz oˈLL)?09`Q= Ni'̗c:>)6 8")?xkѺ]ād[q!nc"y,9i-VЌ\$('ʃūѢ \hN00`#ѢO QuigcU]K6{0_ VeS4ρφXXM'ŒJq2<%?]Z෕uNC?9~3̗eKR *edg:ff>cA)iV71 W/ߢ9T1|u7mS6+ +I  &7aj:b'M*Q-PRU]ku%HLׂ}+Vf<}ˬVo!])Ъrу`LaMSF5AH}lxݔ!#΢H:%1 `[*Ko-FO7H*ÕTZ E3"1ę͈ , TsI+G,k5~rQ~F*k 5}e 9k sB)'F!ɑq%}4A\wd!_~"";@}LAEt;w >[Վ +;˗F# ?hӉ_kz{kc_5<,:v/i; ,~{uG N0A.0h7WB]>1^t1*# j:H7הD>L 'oe:XY/$RLeꡲ$F4w)KՁv08Vf8xߘL1"Md[vul NXe͖uCp~`v_ Sޡjv:JvLfV8e(si|'f|r"X!Œ-tVap^J9Ie7pUIg^-^l'/x&/i)>DJD}mKIUٵGj91M)~b0@5@2S>?'8QHTb 2::hhytsEO cBᗨ U{ hϗzfPrP\6JTW^xyP i#(kc4]wg'@#AAKZ"go|PMqXuDf[Dbp>%@ŕ.ʭ/=[!( (`m}9ctd#[i5ul~KYMr@| *^54x|ahSGNK5szWCA%WZ&#xp4}{{T|(P`C{w{ɣJjIL $HW/QO<:D+?^ OG{_pX`E9le# uB`/swiemJ'rRϺ֔y i¶[LVRXnm3^/BC@o+ZΗsd+g>2ގ; V_+ij_Μmky-g` òKL>! > jkn?ҕ1 LiC#g:Xփ V%+RLaN@aS阼,lP. t{$cL`~`ՆM}[AY'GOU :\?x; @8NQQ]zT> ivg5kMU UUD}/{sȿeGZBp>gzH(8AW~Fx$HR]|n\\b' 1e\9ŴLdUFNEӦ[Oř"3dFA[*VW!d,IE&/bXCoL >_ [EKe*S'ȑq<:XN /&?< jDB0TA>mKf׷*~}Qζ4Ǽڧ>ogKa~DYdw_72`MoR/HI"m-vU bSytG>BEeO7L\rZ*XJZȥ4]0 O| 2; tpQ \J1UdDo/6:,30fvfe=-T?#3U26Yu$˵E i{I:=f h3.;iC"N6* 8]4G͝7T-D`;\yye[fv́|@6D2=JۘyHB.ԯ^si} 5Y.ɢJ (jc-;4o4O]9IrLqMX>>}0vCI BaqVEpX&:n~NnZѲ4+]>:`sjy j|@bSBdY}Q+X2F#0ņZ31)X>ֽiMb;Fw~1&Wu!U'q蠩CzZ=1cZ R"=tU> XT'Jy*Vb1-T7'k>V|X#=*i='mٙV_5+Qt#DuÚ5X"4ݫXb=QRD·xPMɤDqUO03lE/c r깴 ,acd 蚡A/`:cH,<1Ъ&Z!x< #DMа`8 ]<%QV([J"%r8mRK}' }!o떩ZAM6IRkLQnV#yV,J{==z`eDOK}Yd^1ʬ%MvGʐ(;Vе}ηdƍDa?,!.Kmؐo+'ǝ=@TuJwAG#I 33n`Qb^7 AAONHNL|$Vn# ?F >GjL)1Ejea3 !Q]}"+.;乎JYCRybguZ/׬y+E taǷ `jzL6O]~CF)z9?5 5 F~SۢSl?e|/lz[]Ip|p|&Cb DeX(0@>.(pLH % aJW J'8` 9惭[oD BD hw6>#wr6'5ڶjf1Y %XVQ?ˤZr UIJ>Fd+4ܐ NOu'⫅O ҅AqY,dӍitbIUqDelR hWFcO4Åt@7G,44F|BO?`ؗIE2UI*&6#)' _A,!Y\;_jƒWCGȄw?z!)izᲒjxJBPD\WOᦧP.R(q&#a("nxt>+hSӅ䐐¶_Ӫ] 9v3 *MX9Ӊ KV߲OF]ysCVG3 ΒY}R_vB-:Dv~*EL3'|c*qxRpPO,n@-);$%UE,K#G8Ui$b97/-jhsMGJ3-Xh*9]v]4}*F  Ob W"Utn,=tM'(Yb'hZ)ɿhY}׻@ʗ*T:kچˮ՘u{YnOQ } JW皶 /h]Qbf&x*R` frwP?`eZrKy,ֹJ$QIMw.J٥/CvD):J.[ۄmؙg1R_B }@Ӹ[^2V xKʱ %Q;roq%A5 j SMOTAVXD4֬}yYM$j3MbdD3%E6)`3:!jP`sJ#`z^i MO~(z9{IgZ$LJy6Q-iX,(N]Egg,Pae5{U8dCm\EǴqróԣg4m嬬X]/xDB2鳋DR爌p-f s.5.# ac).WI` Lj?k7/vXiҎ 7Rux;O+qjI$v02?3cͽاƄ#hS ,2SnoBWyg w,0isu82ŌFӣ1 '@qŧ4rIU>˩><.?z*|(gx̔/#\̒aZn_@gIbS%"҄3?Ox66oɷbU$µfDj̨qx3y5UT;(]Ƨg#[C:nED?.贾Zs9"9ڠcY_DzscFЉ@ii h{?_N; Lbh/n?YkF ARgJf3Ocf#cڻkF߉΁4dyn<^"w͘(8=_jÖπҧUs2`sֈ2cH9EF"vͮFќTMw%GjV buǎgY:9OQ{sa$jFgqy;P )`irsmd١:-9|`Z)L񻆪CӤCm}[_ںzf~ޏݟь/ڄ~0i㛗\ pQ F k_[y5mw0{)c]q'8Q{bO{e ~m yLp;#SAÕN7};x%B_zT0PPZϠɨCiq`n[E:e6D:M c)BOu_*yeLmnôhgS4$ VT 7e4؁˼p O3xv>(WOHB-Ėu?Sz0戆m}|`Xp'Q",.e nw(ba3b>:'2#s4 e+=(){T} gV9|fj{|%ѺN jc>Q!$[ӵ?ͣ32%p[Bɭ@2 b 1x' VTCF\?Oa E~zL158\n`yحQA]T?F1is1Ê_{54>V ͑,CCY`殊:,#6 EgJ:lUB~3pw2Q cۯ'(JTb!O[x| :9G$ }3P2ԣ[h.h`U_府8(PA}ɲ|4O hs4Ja !G_{=^]9ԉDÂ? DrI[5Θư{&4*<}s0$Y@H} >%]{L(̣`X#^ƃ pR:7 .SwDrBBМ:+:ŵˮÿ]u G H3) =||5rgLi D$S))(`$ø#M|Uv*W~aS A.A蘄SYW َ&KgHτ>qWxwZ1)@ՈdZ!MҴX[ƧhXv$~!NKTĨсoO- aa+WY:XɣRf? T+<E- I\'.o rTO$](7̗R[!Dc= ɵqa:ϊ(bĜвب,0c5㻓 d(*H?t>+ @8ET[WZhJ]G>)&ΌG${! ^@qv*&C|e pb䶀[xVL؜bӴ> vRiPBLI/>":r;>shұ>ւ l'Պ5 P _ z/Zr< HP/T 2k>+! j/f[^( Reg{`5A+z۰* LYL#1Y0qt # oP?t?T誢k蓁})ڟ '4g ŅII3Jʆ7 |D]f{jH&~2ճ'݀ ե`ߞctYPTWbu2v1 W<">LZ)ZW;LQvI(U)4ͿG $ qS)Z]eH#D!. ָ$e>[S1ċoٶ_"Qc@8 6׽6aU |X0 N5Y myD>N.;8 ˙}L~SXqIq"P\4y\.>96𴋨x,-}0-#a1BV Zots ( 93>#tWOe]iٞr_'/{m~=-jc.$IU}rq|MFC( tAF=UK? ABh]#Q6|d<A:LY`T.s+bchHQji=ox5b9浝 `Iߴ(lˡ6URq٘G[i84@ekbO,x<,đjJ|O^~ú98$_Ӣyzck2?%}dF|Y Uzl9ٸ#W{/C,#Mu|L'.ޔ-дDL{2o<1aYTb]Iv?5z C6>t@r.{ӤXd.x.;!r蟎ّ4hl 6nع~ QoTJ3eZCGNuZwξn:=1v=( a%4 X2 K}}\ذGh06R~3'㳴Si%LbW2_G4G%s܊zrRiu~cƳE+$ #Vķ"6+Y?XEDUS{߼ŷ!C4$^֋& | 2]p>c'> =q6kEO#rm< dS]OZSZ3VJ[b_.[:ܩ5,Ш/蠤O.ez0{^l7; BF3q5V0O c/8s)s\XPhg!|X-DgZSe?Fl+1D$)P5\egs'L>?ƺ‰$@sai^Żj[d^bY|g[棆 &B=o^חq ٺ!&|xnkR2\I۔.Wr4B5`,{E1<եo@k1Q)HPR zoox%J3oN Sӷc ¾$/" :'2s_tTx:1$}o$=L!`zJ5S)ouu*BƷZjwtZs{2:p1|u'Vk Yx~%U9 eJ KYuyx-]"&9 _%#rTP]+hBgZ4b hLC:cqgon֎M-;tHp@0%PQd7sX\)˓o~YUJ2G"=FENϼvc%vf†rCہd=ouci!] NnUʳTy!M^x<5cغEH$e` «if_ hg{2X HʚmJ~u{`NFf)BB/߾_WΤ_լbZUM2k݅ҞS_@7}؈F,ET@IuTG5?ZBUA& 0oDoWxeF9{'sXzbiظhv$DԿt6yFXf)V7eO{0*l ɧ+4$^O75Fthsn$w':G',ԢgGVĴvEB`t$|Cݕ ʘ Ϙl :]R^c祶AVO&$RI"0b hPPs|Оm,a+/(:/wn† b&2 :b^ABuf٩g +|WPI^蔽ያ= m<^kn$  ^pPO2##4>_GߦT9ķk7~vj2XY%;B= փ@V_]76;MD&;7y_Q4 *<'N;>ɘeWE}A:W~}vw,y2x\'{⚇ǜ2@&#g-l_Lz<51d0ߌc?|S]E\+$x蟨G!^|QZ*URts7 /] KmcA*a`rWJE<%ƵfÈ-. j6zx)A+6*9Aa qW0QJo.v,zԏl}!ZJ|hDzˠ|%4맹mpdWб$"qS"ołk=x >qx(_ vidܒ%šshTڡ_v~I nsiM>ZӴNUf˔:Rbo%kSZ0ɺi`XN2gNo?)ʷP'#  @Mu8[o3V0KCD?|"|x{ln9|Rr'O^F7Ɖa(p\(DR$ qpDZש{|/qT|Op|T# , A Ys7q$D(WO%LSo "(SKe>f(8Qf.llFlQdfg-t{Wݱc6O(c)Z;-Xީ%ZDi@5̲mC^X. HPvFݴa17տg-t$Ӎ9@xs7soHܗ߶R,^LH@>٭zF$\9 Pԣ|?@M׻ƧcD+KTgPNXG/IqJXaT87?<-.</wl̹{1?- Fi$umK=Xh0j<#A$O7;Ӱ?."iҭaUWRm{7[|u IurWsRo7iRDr=|[ }6ŸV[uE&4&3O4`/vڟ];N{n$Gdwrm~i4olz`hhգdL,#f.iӤ#~GU:7$@nL[IPV1iTz2v= T.n5`0oʠd}\ilDy􈼗W$οdҤkàBy"ъ G;/ZDgìF-b ltNd<09tIMHС#VuAH18J0*7<"5Bɸ0aPşjР4 R@jRӨ4KUMGK:ןQPrk['#䡢Kh?}^kՌ)6<#¶?5ܺhehL8%fi.lu)mtD&wNK/E ~pA(MbfD-߼;QEQ!# ;ˤ#w-v  Co|uE[|8QP.] -%ex`.˙N ^,#9-Ci 3m!U#,aIp"ݕ˴SGfn6< -#AE3uBTĽ~lNtMf6J 0BҎgͳ ^*Ȧp5I>w2.(Z34܏m2qdStAϱgKF$T^Q!a𢏩Hݥ%zraitu 'W e=@2LU+q'&J8;ڽ@$-ʋpZjLbs1 Zq B N*g-u–,{ V:qSjo*ڎc`)]x2J]>:خx"+OJ(G|U^|}.Qc5I;|Ay <QeÛQbw?CqG:¶FIW59nD'b3IvC]4o\Yu4ZCuvmr:C]? 6;PLW\ΉP0ClA׳`Ԥ;ND/+C荾%>-!WhbZ"QJOM ^Toi.k$L.&SQRɜHȑW" _/>btx(y}Wp<Įhm U*ở4iM*)؈ùRy$F4Լ PYZ):]%j3p!HFZK?TƁ 's뫎0:}IN>2oIjQV0D6?8 $rAZ{I3UU!!wyn5]or}B@/J]ft\ .&-Tk߃*-FZIN8/lE/7T9:vR* &w? Zw0)6b5xOT- b9{y8b 1z`o(X+2Fq.p= (AK' F/U[:tx~~4v$FlKiD%+A?2r ;Le9&^bi?Y szӟ7A:0v^Xk;x/nHe=Ezrzۃ" 24Li)Vu[:-s 6faN͕O@>= sO x3P> S{g$+ #2(٢Ў ǡ)=e_S3Ds`k=vIus A3K0f:0(-aP燬٥:21f7K~M-&/z=ELP뷋̸)#9HRa*[,<Xtv-|W~z°jno頌:s'OAtAf{s1pAl1 uQq<ƌ|rn{}㽵.!N7fud+?³.pQ(Oyk3juƍu w̺WT?}1vOc8~2 S 2DW"o]!x ÞB˷ bJ[l鿔ؽc2d1>--%jz9Xܒy&M /=>2yb4c=6\6VNG okAgC S҃yty2U2h 8X@d%y ~ʧ hn6 yB2Y|mNfߏ$:/IiIJ:Hш.hAvtg 1&ڈ9%(s!oz ߵCmh#!Vx#b5}-. acRh4VLPWe[AІs1TwZGF X~99!>Lt[j\AcTݏ!ֺCYq~gUM]y䱂cQ^[--1>x8|^{qpakzeyRBjV>pQv3f] _;mUN.oM*tdǧaJg@8T5 G/L&$*prfmYrZyGp&||a7꒹rʾ-msaE1vlS#{!NQiu'BoHqb+POƁtјKx{ 2Yy|Z8n S6 Ey_HY>\aH`& ҽj(20ԱVH E58C#.eB5qDm6E-ZV,AkWyS{2 g"Kw~˩1?yKVhWI?F0O%c8oԈU=<)/wQG$G2X<{4`X{qF&ţDm%@KJJQ䌣f&ݖ3qzdL cmn|/#i-]#&'mQmVArpHp@BYPQL'HvKnh{BL[U1he5^e˚kdAWL:NFfiB^_Yn_3<ɬQM1YҠ=\\Jdo}sѷv<*>Iϱs3y hd1B[8r+˔_,bcLw gvh5F-kr4\mkU 7Д!iOɛ'2vK*t ŒcO8= B%aeYMĢm\br߁N?!DŽj5qbhC uKӄjs;uj-wզ+KDNdPεp쮆ۤ柰tX-PL1Jn ÷pA`k23~_5qp5Q3*S!ݎ3m`;u$uyʭDσ߹q!lLqѝcb7X$Epʍwot_4ow8pO+ܬdM| ~Z!JWS,hCl|^sU%ݫo\x5#dEmIgV?:ْ)nO{4S,Gwnt/J8Y[bQkTv,=_r.7-;ۿL,~) i`K-/?$¯$5Yǫ=v&3moE8ל硖ʒ2ZXTJv7U  ;|)>DM{b/cTA,a@}/ -Vy뎝`AGK F8 y!>:.eUCaQWATت'7'CM%3S] !?i);4raOٙUޅmeߦٵ4,̡y: v=oĉ&6D?{h'ؤg͓ z|8$,kHvfn[l!hFa5,B)$z4dPns}铣:0b_9L-IoꨨXe'ЬtzTrPC]NHۺu•m|TC2 /OH`޹x?$fAb_>Ό8Xl~2#Q:bU5@j n55׬ Jcz]p'(FT8N|7 {ZQ蚫RqIo9lp&sԙ죰rZ-V6I"Gɖ,!0 &MN4m^+A@΋#OE_Jw~Gijo[/՟Y"|üCE̍,'$Zbi֒}W /WfxQ 4zvi0&(cNuVX˶j:'"Ǯ^ZD?c`r<~ 8˵m(mw^to` U0,nۼƨR9 @ -6J4lC)~j6um LwY-&VQXLRm| 7? Ss" qj4r6ʥDQb6)9zi>2<:y&Q6@պ pb9俦bHۋɼrt%j&fMǐb q6T:MkI\iU-H(%ɘ2j]Eb9;w.ֈC3ih:HncxE\UB%coeNW@?Jk:;"5Δ>$` n/tzईqoQe*SlSm2>>Sxߍ}u8)` X&W\fDoASL7 efiBc]rhm- Ѧ*u5d딎g&qaP_kw;/Qw Ǥ~œd.7JLmz,;D,䫷J,(ϥQ`(oWw@Jflbw[f#*^%1-p5K2qluqB$/x!Y-.4(p"ԝavG^Q, @ (V=boZW`8ے/ Lj2ȀҨceZ{*~Ь+NɎ;ѣsdGDSǁh%x?@fvo2 XF &1\XR޵N}lDNǕs!C3¬ YirRC)h}Ր6 0gZt C: ߘHpcl׋8Gڢ)U<>b%58iA 5R-a(9Xg<lTXVm(8bfqE/9"irᝠZaL;]q hC 8I0@ ȣ^C@{^ջ4U: 6`i<1+Zi IbO[_d_l9x%ZF%u b3?¬*˲Ghn$A=$rPoy)k,n~ڟ5p']ouy U{i䩶޿V|p:l[]VX/="5|S,T/n]avF[ml ϟ=2cav۾ VRuϡ,n͸~WYS=6p Tقy8|Dn>.ZUҎS40l=I>Ju,YO O`0@I@&Z5xZ+]oBՋ.@JTB@N׏3?!Q}e#@wЊ6#Zt4rZu,|P6/!b T(Wک ^]Y7b:­/ :c'+ZD PER8 %85DT`B y5qF/zSUN+rMQm P~: #+XA) ,">ODŽ8x6 te_QWwҬ[8'֎-=H&#7 y o$ei͞xIjo``:8#4?4RҚFoeP?a.&8IbegAd[|ǜ.<`ڧumfi-C|Rd R['{TɛDŗ[v*EHUA]L'5(TօdL1JǶTQfK6 ^d 9]x/G4L}3 Os4E#'i͓x3MXxA'8 ^B黼9p2zwW]"7P#Wum-4mvc*Y,f,1܃&Ffn\HuB_tm!p> .>Rζ`Rd3 ,HF:ȑM'۬s[!]oO.ZP'?*T3urcL*ΪBF#@_IGzeׁ7P ڝB?f ykM(9X,QVBXXtUwoBG0>NcjșXfs#r;6nL 6IepBVKÎ|1hE`n.%c)q65˜ }V);dqL o|D.h^#9w^Fs*mOCt]/nybxH.'O|}UǦJ!2Uq)KжøYY$7at^3 6;?A{DY"o#e7וB.rK˃<ƭuwgto*O"|Z#ԧw8ݔ֦&A戺]`6_4h>k*NW>,BAV}<6zWCP}fyݣ`Bq]X]3TY#.uV5i =F~Z P)_:Qew^iy)Nw*[yW6< Z]AzW 0Q5z"5 PT~|:w/f_[kC_ meha;@TzmئpgU睆(oů/0KJ}40 *&G}^9żCgBV U 0}O6j׵sq@g=C Jj<+ v19Uܓ f'O3_TƠ67R`[´}Q؆}i6x2i]RVq 2E|1 iH-a6s׎ShYWE/`*%~c__]Mp׳ŘR`[ 6mHY7KX[l p-`]`NMUp2%MbM˂9 8yv?Z^gjeU%<~ҥV5v)I˶MMûm*xlwzM r ЙʹÔ\x(U_ <~A)غ \CdW"L$=sDϓY/8;|pj̕WPQ9D%5)XKx`q`ɘ_ÄE(ce8u1Ykrƹ@UB moClMy]}k  BTp1 $AѥUXfTyD]>TC!Vs:ԊP}b@[kowARR0||-::'_fvpJ6ؒMB uBG't7t> r?HW At󦿢F/8:+9Ë1Q=>[娨޴ '-BQWN~k%y+j7ffo?ءt{=2Gd-I[~@703Ch=F*MFi7jC1+:R!60%Qd4'/,(\N&f@ wmoՔ36T}g;HvDZ\e)X[9]]Gx(y p؍/>e Oa&<:[t$A n}Θj^sihmc_-^QYK GXJV224 aڽ2aKJȵo3u%=,ɤ缪+/cm}3uq d|"yIՎ1mq|R~uMА!䛿>PZ$bx"M!6ggS74Z^6F {(UaFK&A<r9 Jr^nEvY'qZ{Vfs͕a(;ϊ0opTAa$[ѯ {`/p+w|uJkMtJ"DZl 3K%d BG:mrt}=qjqX !Kc |>/vG7PN2W'~$}>>ຠ=ceQ@@׀ʕFGzM`#~"#&I,Gy1/$ޟ@!_fLoH!bzyH5_7 VVp)0Z [x - S^̻%dx+j"_<{ 9 Bv?_:wJ)i*J[#øaf]\avtU $GT)j}$uF2/#It}I]]ESD\3oUFaFDvcim#aTJoyb smP;|EAV]1 e`.g̶j?ػ)\Մ3:.,[^Bd"WUwdqM%Jr%=1&Kyjt"p_ eſ Q hzOfiejvt1(=#N2Ke|F@\v3PndOnޥQ~;kA>gcӘҤ%oGnD%ik1]h-ھ:t1A=ob;jXj4~gjL}Xzm0b;psԨeѺ^hj|T,@P&jnLr`K'A?Ie"iR2=ꍅ,=y".AM&b@ն1?nR{ȌZ-,:uv\f"}g9*%tS`{5;(9j1+w2DNf-n·^Cfޠeֵjkv sŬ*Xe ՋJG߅\) c3T<[ %, s[.y`Í׺=$.8,&9S<ȷ%]',*;ܕ? G>֛/?X_2j>GU 1J&y"{.h/2C,]Dmim ?'q-g#^PG^xԣ _35?o/THs97Zʪ6&]'Ry>BʿlϢԱ:3*|!V!?r( d2nj)%g~TEz7Ҟp-]Mߦ1!],N?g)cPdo#U[A,*[ب9'O5Djs<-ի؋nՏ*GpʯBN}UymyEψ'[Z]Azx.X $NϯGKp\VZf )ߑ m%;B_3F4E'hOk {cLZeUsQc[$.k HLrV oW ve vLib.p8g<:|ȴ6vPUe<&5pbݭ)ey&o`G--2FO ;ܗ72 h7[ ژ!^Ps.~pއ/pnl֜y籝߶S#X Ys͢J/ iĊ"-dmGA8mt橚|I'bdwdpgp7egY \)BQ š?t22J [3-"+]\kÆ: |Hngm5WTc/ d1Oe-"gBu,oav*2g5gAޝ6;:Zsh)]~%~"H\~Yu\˴Yc{C]4k5֔jJ# )U "){Ǔ CrOeR}i͌(JG7/> e*0@9(AG'#=Sevr1^4G1/W f0 X!%K~0q{t+I %@zc}晅#7vdTjHnt}:ec2ћ d/Nxaܮ㵖9LFGShp;扢rjNE vֆ]d숊$PJ KӤC$j_ s na'4w3ΆPI1vpGGo n2lH;Nml."v/$o V+?r(1e/_xH_T޵%m5iWڑs[,U_xpoM^1<i{\KX{tDTRMFߢ([{wQHLq4|?S*O4˵`?E/Q\[t}RF1"υR+@ N_ ڝEU yq08Ñ[{VʅQ}nLƦLhb@ DhErH$W"3/8U^7}9JCLC0 uf/Hkgy^l¸!lYtu1Yhtb.Q[AEf3/ >3N]Zpxk:qBbNAu]n^T QnC3sWi8sF_\?Rmoo9\7B:8]ixnnR- <@VkJl!C<ݻ9r=Ը'ubjY5 }QĹ!RoKԠTB̥o$OA `HkY]? Gmd1گc-CZ;ul5ۥ7c[gļl(3}wRR-:c|I jV!!hggaX}N E∅-B0xZߩ?gYc-$ Kح2Msp$R)Rep6P!&st|qWwu3 C9tE+ o;!`zvC|{!h޲P}kp heAiЄ/_i6l2|RH]=(WAK96St޺@M \ƌ큞{sz qfIb2'emf;rmښ&Qj#yivG:)q t,Jޚ.@ŋ-g'&+ZudUY7g''THqɕf' 3RZ8#*O|b+rOfjRNt2~p£ٶ@\!Flzƅ MdB YWf^ˁ/FKct>fu \:iDZns]@tR̷B`Ƅp54P>sZV[NwWl~Z hFO^߾joϲ:g Qlm[L9*?EhHCc1sȤ0OVD0Oϼ j/BZPy@k㇐94q1!jc5EMijYkci$I&]E!{l ?„x KHr}bCGXSDq@a"I7_0y3 uwb햲_ VGUO H$utVi\I^v2z]j벸/8!xܟvS"f˧ACt9?!Bvv?Z?3 ?T[(Sm,]8Zwkuo@?0T_tLߦ&H7A &8l|, 7eMYzNH$o|MJӺGz< }LFJ0]AٮI5^̷}-&y_ka:;^j}#Q?|)ƐW"+Kj]UtHdV+̺cl?+;_Q!)1 }UM1Jǘϋ:~ M6L$hRf~ἣ.q0cʷYݫ'wpթm1 PfҨFpJ!i*$[uUA*~[^΢./o6"KS]`ݍCHXt9Z췠w1'<4W9TG.D0C!U@[KS2L m!v7>蒦 1{7>7d6$^{0r4wy@`QE'AL'^o?jWGU8+ZdzloG`)p7Rsoꡘ0"HIQG-\a!VvߘEU}徶V揿C. һɕv7"PVK7Ѡ p>MQ$u0h9DQgWii+ V(.>$Tk\=k+YU!Ixo6N?D4)Ch6/!&A_~觤TM.>~ V&N t,wB]J0]2辰Wa~Uxd<7]`L@t$u*&w&kC/wس5ضd2 ɚ|*C^'I{`b NSWݰz0]U7SQԕtV.K T zeLup#'^>EdAP_Çs%y$$NOi}/ :N< UVze(t]`qب#H5 $((8ZA@Z&1^UN4z +0n+[l$R?Z+6c5>18=tufOm5xjEiԱ`$'C?] D՜Iqnp"5ӵ'bT*yJ*gF8zem'TYjUyi; W 7k b/WL_)H( 8zKPR.X*#xcR]k.@H\aT%%ْ-+Z[;2_/_Ju _J:W?b2c ;N5-j~q!w M~^|/: k[@aѫo G#J0iq(*sQ{RrLw=MklVG .7|Ug{[З O)Z>_g`P)YB &Ly-)^=[H ˃+bzU3z;B5z-7ȿ0y%Twp,1rA3ܗ Ɏϝ#t iW0?[Y/Jrh7|T˶Od+Y5r0ud!a.4 BD,hʅ{jDnjȊz)aA ߦa;TbetƏKq^5C'{o)I9 |" Y)mDdqovkb;%vcTu4vjNVfh1.u2/J?Fa y d̒(l=ˆC(Vq?ƒ\u~IzICkgEK^aẓwpb$"Q&%aXrTzZtK.[Dyxg .ʍ_( c4wʧ49a%b1GJW6n~@5SW{ίeM>t5-BDG7ZCa 8f=/f#otoYT 6xհ:Ea&KԮ{Y!@2љ O`nSd1)4䒾铙G4ySмV0&QE?t?7Z=^*3%N<4\>5<̼O EwY͓ҩʎ;* 驅0|kY$OHB7949Rypƹҽb~<)AAsd>`~l㨒Y߂*$-Bi{ ^tj)y Xn^qcr[Dm Gp1.$L!tu{ {5S.kx&uOa{+w⵴:]?J#װ+όl;w+ix\SD0=7QriSL gFQQaw~EEw)bLQYO*3-wwI?1(QXNE_L)^Գ\34<=\'|?aLoDQ0,~DuqvW$Z{ǽװz|=hMIc?` {B؇W[;v73hBcC >ړJ!Q#2]D^ y \S  Kw`ggsxax빁Y L0rqjY *'jX7pUk&Wc5Bv$Tttu *B-pq独5aLKm[ ⨝ _LHSHaOi$l$>u\}5@WГJt(->k\h܋'1odSl5u3|jQn5|7!|fawoEn̅M _ $or$\y+JY)J8Tp%XEG '}4!@,U|iP#{gCXO@B̚2A>jftH]?i-ӼC|jҞŕ/Aqb-Ol=q~o=?SݹړOXVDb[BGR48&)^C,ԥLK'0&Xgc>/b>\FptdvnuQtV`@$~22XC j6?VIKѡY.yڀ*}7Va4Sγ]5 ,3"u:qmY@0I`n6mhE?yƕ3LomDsk '.=w&+}T` E=` ZEP|s@ŜWfp+|oH𭡘` gaYd+LAUޅF/%i54HPA$DkLVci,烪FOgdX9$7?["|/t!쁥XG蹜D q*`7'`(q GC,]vՄOx 7F7Ǟ!R #x9v.SO#bPjxO>񐧹~wI YӞ˗1D%-39/,'dLp&Ϡ7wt}9 QZ,-4Ž?n{6$} bA 6(rfz {8t_],7KԿ Mk2 C:\; 4,=7J`zEwA&?!.Vhq,hGbyCԩk% y'4sR8MHbѓܗxLbczVzJW}̂v FdSjŭ>_2gtTc}ҿhX O:) =o{̫Sы8gP=V,z}gy F -p_MWe'>gDRr6ퟰqv$ `a6rHrQBb/VLM(qRc\VcW$3]@)vZt )5͡M(\q(Ott(A3]jx+tSDԙƖMWk u"ID?kuz0BG^?Ԟ冉,\ΰTA |pv5ۺJ)(MY ؼ3m$CSȞ&}+iDam+ ,J/T[ ko9ZD}XK!ĪxJ3'&PspȧuWz`n,y\B[)z& x;`9c瓼TuT-8Sh9Jt\u( o_%7l hu-&, -M@dP( Bj0 s#ʲWoC[w ȷɡndW=u[=uRcl`͉F{^*N(afr+ɢ)N5Y0U-y:E륦hZQkȋVoTO`hWqclyy۞_"Z=3Dv"UE^4|"$D(3^c"R⿅UOH\(.-~S7~"_1Z+Эo袿AR++v$j"P:_9ǮKՕaB N1:A};W-.V C-؉[a MjBbL=!5Uo5n.65rX$I{ct+qBFCL\W`VQFpbG<8DL%7-<āW46&Um+]苂/"6/_,z &z Wc%裛9qUʗY]K,`(vxD:I#*SzeP~/bMo1%MP35' +Jj農q,"opsK\]k:)C$ YvTFwDJޕ PTVb2ui,g+:ɋ`hM?⾮ ^4`QJTmZLS'qu!l:VWHhF&ZbIdupkߟ:3*ܰ?ξ NiN2Dy8$l,td(|髹TfY*W; >LӾmŎ5 [r%22#_ǗGI%^c˺m&Sɵi|1.M^ݲn9k@focGX/Can(4;:"aȼӀiB};ipGBn t-vżS|7W@hZήxW_fC%Ҟk/*|s,L u+F*qxm,^8t9WM+3)OE>˫(nԐ waChd9޺nFJ/WZv2ؠ13a :p9M\4AW]\˒]s7wCטAaJ{}g/b֩كBkt1 6l#6GR wKn} ӐzaVٜmR>ZkIS|jZ&VHL}xخQ+a[ ?L`cp A 58rկ[ U;4Qh%{T{Jv(o.i{'ئ@Yr@Pu2ڜ;H +kNn!қY fhe3E2O;G@qC9q-4lN,khv!?6nh14JH~lW[~5pTC'CW ™=XUm$ 2JXǔ+;^B*y6q"lBYk+JػȬQmN~PsL$UVJ2G:|"ֈ0.-S.L9v4+RF[]̋Cn=0_="qS-q&&׵" "i9..uj=^,0О[zK$yL[ 7SO,~Lܴf~t2x\i؜B&2hȺfB֗}wAäd&i?5b)M4-`)A.Qs8Gwwb,'E/;^3l.?kKio_-zixGpےzGI^Ohm7WF ˗>d!V zwLXnypЫ4 ,RxGbvMƤm0X:w Ysc9:АD*[BC9Ec @fmYiN%!(`$#6l^NPĽtL{<]TQ*ز3sہ78e 09T)GM3$&*P8d/6/MwVUwCo-AN!jjr@%*_jyۀ0ʇMȟ$$5Z~:i)Y_ r%]u/yO"1@$KByN>BG^He"i=p$//qf4^!8ak2KN qh6D 啥O3H-z=I 7e15QGP'nH=Z[B-0{0[хDWt$#q[2[l)z^|8> L0BIPB$^EZɌ.<T<(da$u +|v9 ;C\s|~sky"(T,I4MA"EIAL9&A=~RⰇc̹1"wD"IFuE@24]Q12MFI2] |{ȹe 8P5᷹`3hփu*{Q4Mb͘YN3GIZOE բGڎ~ f($2H6Hv(g gv/sm2ߛ+Dә3RmVVn"/GaOI .(kX:ժWǚloPnCA -6~~L %T9K ~p2i+;G1\7h L?gNS/x4A*+Z"+zw-)N\ېqZ˘) |kCu7l9DITRy(?%npr$[Mqibߣ` u8ΊT_GD )=닁`|͹CRxte$*qÆR'|9xY,}A˶YuE f- Ht, jai;l3=4Df/# UbtU?43* R%[/o>fFzMV]NO>AT!B y[t8_BS8@u,J Dބ{J5v˄ILؠud,Y0 mי 64KCDv(jt/U8·_χx1t A".7(-J@`^1"42|׽榠1lK*#j*6R[=1ZXI i˥7hrҡ!JcF89zg&DŽTni{C JvA(>NWH_PIJnd-M$yLnY m]4'(ש۠pFwX(ALm j,[nڭQBj,,IɾF$@tmh`l] hn fsal _bP=t~Sg ¥RQpU`@=T(.̐5Q ~vjvd&Z0wjHVU? FR@41h5Yh2T<+i "^Cs5e8u k-UDKfMNoNī{ᝐ\K_/JݳlWdDyHtWi>گHS Cݶ'ŪfyBzwƩB>F;"cxLk8Ѯ4'2bl޿ b<-0  ?\xC2*du}d1\tSbŎlcz%ɧD> dЫhʴx"nRPGlV?ٱjiD԰+ޯGŃW-=petY":> b+yڒ`Wk!YRVj]f)%')^J){h0ЖYSuf!6GϴΤ= :!?_XэAQg k鰳 zHaF j̱3[M4Uvt[M-Bu,~`HT x i^a s2F``NƳ 4NB mBbU-MvÅOO2~l n<>ccVUVd7Kc#;a)k%N`,bw@UŰ4x ujbh²lO;Ih%j):GH,];٢+=7%GN.au(-P@=(pQ.Lo>W[ sb\T.!&z5^JE~wP۔#r?bɕ,2PBjuOQm .2ݬ`aN-<@m)ҫDQ;:QM;5>dN!Π[s.I1LrXTHË2pL1xI4J;+Z4HOs0;r˽VQ4+.+BGGvܷfR39υ(6Qޣ.xf6~)j~R }RX׉>ޤ#|=>uYϣduY,`HJF(;2%"{(H9BL]O1J4±+d@΀Uu)i+q\Ck.|`Yu?Хj\ $^  qQƊ5r*s] lwp2#䕽#&klݟandəz#aʉeΗ^\lǁiHB۾(rԉ|(tw!xL[ f圯—l(v`qm(-mdI #ӭWAP%sKAbR81Ovߋݹj ?WrX8z *1Tvod@(&GhxkAAox۽IT&\[AF{u& 5Șjc0&Et*-*IF3nSQ#WfbT>oMNVfAw|\ `4Mn$v]V>ƁvCeĞ+P-&ri3C#ͪҜrjW)bd@Gru4`_eza^[iHlbRTCДiFw$- "H޼z`ʂF&NoaGg3yA9sn}_3tXo\l߆b5nV;ĿF4IR'Cؼ ߪvqpT~`g(;B p7(qIGkp1{NE:u\xwlY 'Fp/dU"P¬[y\Վ%i|p|C|3>f[=<܅?gׯZ"jXD붲OvPyk \G SYE^W/RLف;DMzeaX 0`5>q1>7QKO+oMʝKR٠'Exc 鑄GB[OwQG/3կVQeMJ&D&@,wpU%FtP~y 7Ҏc_2 DxR攛U29 av0 vFkt69xJz W۞5C7Bo/^Hi?h[]fLd1=uhMd.]׀"KYuΘSQKEi~hA" 3b#p!‹!*v,'Fx'ei(4AP!j `7Ֆ>=, uP6"y qaqCzpYC;adZEé!T&r&GI] :WC/m-G|*uV.j]WNs*WӒtz $L$\"hV jTo zFPaWp2\HLHft1BLQF4H3<^]16uqkц)%#ϼg%mL)܂MQuc %3 -Z!HW f%hzAAr+o8P)r?*Kymw C3*?pX'@1(p67W#zۣfh…ǭ{WF:&x \ ^;||lc˭z33>MFR8:XjqL89˳@aﷲ  D A,q?k0Jó$9]Q1z 毪F3hqXy@/u4 \')jSV~ b$uJk IlS'WYKbV93fna#;ԟ[W:<Fn,L{N_1J-UBލB9T[(5;i' M}wk'$8ӡ2%= _M sޏnzB\ 牕j2{ + &F9'`EW3y: ebvN#޻Zc3U0| "[b;qgZRLgpI/cC[}P鰭t%i4q\w4}e Z>qt;\r1$D}$F^N|Wތ>*xbE)^f?63ozeaf&zvzr AL |djVW/(~iE)2D#ՒNVHN O="G߅7w"Mőo\JJ1kDDop"l19ngQg8?WK^2c<LHѓw󇕏5Kz^@]TX59Ӡ6WAnyF_r("]cʎy:.Yg@m`L]K*p4M*Hcy&czhqwWFaŅ#QYϸ.3}^(Wa.RylB1`d#Jg1#ȵ]QptrMrt N;%JMΉEf] \ j;dP*puw#1S28H<5(s罅%:ٓD$ 4`,fTa_ ) 0w'̻iBsQoCii%j*"L ax Mtސ00S+'~5-`=&'r2h>8gd,:Ӟ :`" xl7^Q*.itӼ-h uGnϋ|WQ['Y-T5CD!^vUcQyb NɫǛ׏"AqonU4*G V - 4 9/aFҿ!%aS$+J8zMG6kqJԢ\\-);+&2csp!+%]5ʊc8v6v%rp;7=%A{Ը"ۍߌo?tvUϲu_HS5͚ZrOFN/3ysU+Y_; &X@فN{BP=̧[1#CA!HyZ)Z,j&O2k V$;th7, g/6y'aʄrIS<+"Gn:5~?ײۜbT9q>dJ;eF K:-:t9K+*Y^G逗i&lhf8ZrY":Y5tZ]`4b j~FJEVk:^57yew0{z j<1PXDrMP/%NDg“wȱvQm~eG_4a"cdR)4 &RG)?1\UrUȗ]sR99c=8FLhxNݕT2~ޫs*bd&z`%';czvEԭ iDA|\e2U$PV@<[B”O] | /32Tzr J짮s*cF2 Du]Lf :>z og"an7l NP9f,vi`.0mm |@[rOOfG7pb_}}=0 \F]jKrr?p`n9 W1>wj#ryewi)2$dKΐc5 CA^H/_V$͎G96\92ΐS2IgkJ/~)f:})ĿS-4B$s!XBQf4VbX$ s,ˆ.*=ޅbuJU;i- Q[? ?(?IŐ4:(ݔ/*'xBf ۡdIϠh,gDq1V0I;:lCluToRG zzB6Gh;H! s:ѝn$o`̡ћPHBߢPWD} U?w [Ӹ]RYXG!;"zdn0(_Yha>-鲕Zmd[J|&˝-tD l:^3$m~g66&A*[ 7|Lbũ,DfDzic2/+JX}qJ/:NQJ> e' `; ? !&%o?jN'ۡɶ$O:(ke}-ʼu;kaY*= K50FSlfn`|t/Z;,;&H1Q|_,Wa1}eOHZ .[XXk2ZS)tznH8ꈱ$eJ+qi}HiAX6YY8H!^m')'8Pm0FHjʾ0 H}WSVW%O BVQ'7(}ز=&>4].Scw30.sa*񗹇Gs@aajfo5-3i&FVMvD+ ͛~)HTjZNY2[nsi8mΑo .r ՁU#_=NvYı'ΙvR)%v,JE ?nZp!=3i+~HFA[P3GV*K7Jh17^O,ha9I4R|M6X_d8TG+mƞ^qt88V*( L[M^.('}#5/<ڝj9o &0MƲVJGCqeny>l_n%L;}`|!8'(|z r ]wݑOK`A _z 3 3&S+~D+a@x/+kUt,gOKIwmC$~sofsXv7.A/lOXaIaSLV )| >w7S~BCh-B0].M0X%##?mܺ>SԈU.N[`$l"x%c%ld ljW#57%K>}xŒiνKwop"Ҝ: f-|}\22GU8oY2zXTЦ'o;ļ9OJ%2S~N~D o6DrSmnSQ_cMY >T%At \'8rj%fr;VH,XSEcx@Lo݃(bk᪝;Y(G9y2v1]f&츉K7ґQ~쾓K} @E5_vIS%D #W q2Wߑ QY P/XOkjaU7&bj8 O[`^qlk[ؘ:`uCbE۾ʝ@%1dIPLӡ7 WqjTD^ZzKqEND+6w ËcDʹ,Qx?P{oe0,"cJ?MΉ= gQ }]8|+InIrhKq 0H+@3oڏ),(0h(aD6{('+L#!fV~z0=bȜ)Q]2(AS~ء9~9Yd v4ȼ{/JdBDÕOe=s+pҮzaߠIKXŹs:2Ú1 ;5`Z ~*zHޢwvD mYy@ֆcb{ n$|.VzVxE}JEPUvmˁf+2{HP h߅OlI{&-^cr{4L)nTT%%cF6[GV0~TS gCٴH] }#O'I p0֣x8g(=X5+E]D_,5j:@7nqPԓ poI#rY3Vq|hzn{8A-ŏ;1߀KIpO>yQ x`L.ͅC!mh;…I NasW+̍01j}0h Dã_pL6M_ VTr 7oUZ9|Vbi1k2xz طU$=Ru%Tsv|$Dוd ~8Ʌ5+[Jց$gqX'N'Zz޺Qyp S #@y avzw m2Т"O(mzMu!muC 36 +1l5-,pӿ̷|i6쮙;h)3[Iz.nK5~xɛ H#O,WKwVs_~ÎDM7ܘc4]dL9Qfwn:I4rL6ON_B\-̗ʔ>%-q >3*{U:H+A FӉGrMt뮐~;Tc7G5wx3mxwZ2hOnnYIjK'U5_x;yrXÁp*fi?ıs_@i Zc=J`JP-%h~6S Xce)Ŀ*vc\jtkRi]5F`FT h^P:*ɺݿe얦z_l D̩m Wm13ϽD_n*B%k{qqt u^3&JTm}Ns *yR6(w"B6g?6~vg@deczm|Yz (-:RSڌ'X U菖ں z=L"=AHKLą$z*ݜr% =K4 ͫX2rOɾ]mG@'6ٲOc'KW[oyR5HbL:JlۏԾx<yța;\Y _xo  )WZu 1=ǻaBx1HRrp~eF۽[UyluYZqTI8TS+G{#Cð HL/vU,O55$#kX,PCdwYBuTZ3A5Z]xBUq2 |иƛO-Ӑn砱XR,̀3Jr^͋~br2֖"wjJ-q&E_0pƥn-2i}0<%~hKa2 t% [pg7`ȶ8 |;_ 4@Sh>JaWwi2r @àZ6-H.N ~/)mRoD-_-َQnņؠX2ǵif!OSԸ0\[iB@N\Ӊ ]"E4qci~o @/~Ju&` ;pE}L_|iCn:FckuV 2.VB]&v(!i-)d/,kLqsNWb2,:Ċ\eW E# [@AݻrlXm0,ս=F|2:CȶBU=nFxig.;ú)4XYMSERhܽWU a؈GP^ vs0$;n-2E"d{A`2cuV.$`fSձ{qFqK?-xBGw>q6`,e\;\a&r3s!q[f^P<*۶}0C!cQXC=Y ë,ZoȝhC8P:UGL5^#Yywڸ$FK4$}? ms5G)" 3NxƊ]G"۹_tִ\űT)ӨAb/)鍟BN16}S,j/LTkC$<.,L4 Ti]DU`:Ho*Neb3L,aM o 5oށsߦ<^mʡ2RV1fYDϬ!zr,zAI¦zUv0WBk $y,UUF]5S"btTcX3 E?Ą3vfaV8]O=:9SJ"l X(Ӱ3@{D@Fw6oYq x ,EVl1 69qC!/@Zgb}5# Hh-[@}ʚZ*l3pӻuaI:41$5zL&C6}U2$O0GܴHW2Wif)FnI]jAeIW8ȝ^yݍ̌`h{@;1d\ 3>yZi?j^.6xt{pMO`B4%g)/Xu9_U-J˳ǡEX.ᆴ&Ы(Y$/k?VE ݚtf%|Ćuµq4:%, H>=73Ȕ)#fB`n_@DE L* qh>fC7eu8ݢ>qՄ (:ŕ' gμZ }g! Wo|+~HÌe+v!W' fW7¸{ vec:"LAn[ @JMȯ~ef>>Z2=wq?V} wҳ]'R7$\˷]Vm .ʔ4Bkjj=,9ԏLˡio#drc҅E.(# ?ͧujm-'e^&)]N?=Z=+h_O4=oQLzM󛣝JFV> [Dg`_tõMVgCP+HP`i[?59 ᑬLz=:M#ff`d"^^5E3aN+?O5p}ݬ'zKJ',"*9-vaN$'(*{ͧ;ZwnB]-SYV|2CH8)''z4g4kh}GipuTnj- zw9fxJyL"duc|v{ҞP\{M%aX) k{'@ MpW~B ?ObF.|k{ 2{1ǼFW%CD`f)wɹ'f2E?pJ{ TuZM)%ҥVU`l D+랔#Lr_.x׺ZBk)>B|K`gC}c[ CwEVr|u!#I{_&т'8\j U}EaYW6YLlFѯ[ =kzIa7tfBp UE| ft& {Srza.FA)=bP"I(WxlAIq)Mnz Ap+h\yec*~25}ad5QFFK{;@הAأn+KEww"Mω1bhDS2:B roߞvl1|"%ț<)t[Ԇd~>*חVe3{zorOh =8M!(VYd#Ge"D,d.e=DE[']kx@jZc]fF>~Iꧦ6rx|=ƃ:9kd+bƈg&9kGߧ%-bk*4֐#ִcŝ/UJWxP.fʓ? 5rs{\Y2p *W1 O^rӨVk. /;-;3.u^ùMIDe;+L|$p౹?Kce 7@rVԣ ;qL%x?]1F9^%z#_\BPW_ Kf!&0Ĺg0,T΁X1mHue G?"Qs)NboٮOQl("raO`kORF:?_yTIF&wTv c":>͖t\/dPQU z?C23קEe^gfzW'XCnD#\BIxeH*tOWބu! or6uoPdZQX~q:y%ˆ3(O %HQn6Jّ$Wu43`|A/Q3- l(֢b[:qW$C?O.[QGxEBjd+[YRGxHh~b͘^ׄ/K2ṿbـ;AX<6 ޱ WfmcWUɦxFOٕ4k"-/h96D`߫JT\vЗꅒk*ab$NF0}i~s?]$pxI)0޿\K&&ک_g07 V{4e[#ETdtu4Nܠz OyPrx`Ҿ72gz &.vo!2 Sce0*C`T1K0Q2*N0-+Yo,c9 ŹEh>"(] Ovţwji}I kc+NR29,FO4ŗb1Z92D{Ci.Z_'eU>β<|VD3US ås~؞ ?`dybHq`@=*Ϫ:f7ZF쟈 AjEytug]`i [ٌޠ$|@4Z̭1Y/˥/bқq)2"(w>uq'}ˊU1@Cv6d&80?;t89,`",SA؀%mgێvܦ7y3-g.Nwz>K'XvhMFǚK\/4,RQ,qMmvv]ɩbTXC/=+q_# &GŠxggݔlG25hK_ua=vIJ _kNg9^C:j`%Jc^LPjްJe)|!jq1ϦeFfjMf:`ދ8Pmɝ{m7kbFOC<C WU5Z3` X!3B9z9ލxs6GWNH߰l C5=^Y.=>4Ҩ5Tw5GW+|CF !QlIeX]E(r ŁnisYs *W)Gˉ3ZycbBe;@ȫ`R1 e(wЬBчD^0gs26B n Ě }J,'/{.٫.21dxB5I(+)rp̎Vu/U =rуNeN 1=$\y-9N_e!9]z^KJ\OD;;fv~V&ZA҆['syD`'S1N xa;e3b\?RR͢jX>nc\7A[bSch0%nJK|nR/Z+ օ2K [a؂>,+xtܘ@jJƌ[_B),q2ۆb"cb# ?'mZ]o0\FPX8D4쳹}ɿ? ͅSU$7u:dPX J}N > Z$_[)3!f]q,-:C87ZG"jv,u vgcbr|S%̀-)DЭj8ls"] 3ErSzEȊ({Lim&Lo 6j1wX.}|h5X` "F𬎆E2*p9K-sX/3L f4U$Xܾe+rtڒA4DSb TD 6E6v/-ucx1i.Zvr[V3 ̔tް_hkJwYy=W//uCJ/P_>E|j/ |.1uDYNyLs/^iZMRSGЃEN69$P\?Hep]{p6_MA,`9M ,i&x rj󶓄ݰ_Lu>op]`"(Ms(J"ϱNhb=*|-vqH+[ $/2VQ(4;" ԠUI7U^p8_Ջw^eT><+S4:` 3~K,P|\A/`6QcYcGUGZPeď zJ_d;G2JOhFTҩi3|O-v>B(u7Ơ?[.p9R|ڮj/ ;!N[1I%:ϭI-Ycby:D‡HDhzs'R'Q=5 ԋqHjޡq즽Vp",>cնsҵk2'BܹHr4~ 0?R$w^&ޘ/ҋfDQLڕeƟ 5U_[2-v!i$xZ1"?OJ ;+Z8:y*$gԡMW?'RnS'i@O x* z>y*+pd,k( p" s,d]Lg- K̡SYM@ aKt`ȃ$my^4qNngLڎanc8#Sp9ř9urФaݾ]Aih h}Y;Kܔu%eo : au}7f&.iAxș,p5}UG> *RF> Db9ntqkYvFcQ{`؝;rMh6:NG_c㯘{h"1 ^W4ZWK:܂\M&q Vb_Qѱ hjLeg~ev9{/,}N ~[G?=ؔpQ8N!!?/YHB:(wa_^GDHk p}vrÇ=ݚ: 7|y= So S'Rg5n^UL7ǾF ?Vh/(~)"5o]O)=C[mNr9C۷؅jT7 uJ*WL #W<ˋOY{IM4 ()5̉{G\?uL5EbsyY+?kmHu$Pԙg+a͎i̠S-> b2RKLFB[}(³PN#.[2h5#Ʀ4ꢵ6NB;/T=}b/`T4klƓ{?]/Y-_Ky WU_ln&1k:)A p9JmMj#Lq|EH])@rC1ٸ>L!e5"GdqY!Ġ/Ǻ&}깳hHy,9oÿ)G9霟߉Z]FcnO](ENll`r'PhʲVE7^C븉u*XeJ3fPwVP.Y[7¹ g؁!7l{3-< T>fm넁*Ν&| _cq-[3zo' /ͩPtV)e]}2sVL3(sΎ vHOP~Ud~~L(JTIU99Y̓eѢt 8'+Xи/N{J8_ҿ8,`8oPø% ƚْU?:` zި9GKE~iZNy٦ \=`WS   um(.> 6 !kjH`JA3?xKmj-4 HQMm(QgK:'6e{ќb [hp^,,qo# -(KCUUX P7p2ɟ!r,l$*!=,FRY DOXV^k )U{- <撵.&_(Bگ"wxWřJ^q,шJQ_92)-"G]!+]qΝ{[b)ImjP.ڔF?. 0rU(D⮩р͍Jt} /6ϊ8`,""h,aYa:R.ZbE"nc*rw;!JŜaoP*O9&G7Z%apM߫d*7P7zJƛTa#9Wm=Qht9JI"DMGYp^ {,51LnZϕb?eUq]ji_9q̬WOm;] w^?SԜ̈́u!y*C$(Q^ڬ/^aN\ nh.RVOi-\mYzO#=Ã̱aKK5̋Ȧqb)JsS5 #B;d \ZXjK=DVxi"P0FBSx'4.=:Ǐ9f2uaRw_Uh2wa5fFz`@1Fbm)ّZ\ gJL\FQMBX`Sg d09*#OE/F { Era2XrM,eBɛ{5F5=' ½DŶ3] Lz 'W emfUU:C"8Q5ܥ$bta{''(XOGq/v ƨ j}yA2b]j"?q=C( "kGVM:xօKJS `"/\WT%|x5S=duqhfDr)atĄ-t˜&hy[v#pNG~ N1Řّ3FfJx^i[Ka=6ξdQ\ W{oZpY<6fAM+< 2q;1ߗkи\f$Z$0e,V62`*Zm]"օS1",L O1ko+9,=aǡˤ?Uq(N0S}ӭ-(<PEU@2_dlx%r7V Rne0|~`Ir8fR0(8O2{7}TL5$w(h?l_ՁuzEJUk&Tb"T[fΫ"lrlHc`XܐR!Mo2ǍqU K4E0IPxj V$x VjuHw.|?yK%bVcc˖Xqm`ھ}[(vA/ƟIP&1H",8yUX̥d7uku 9yzE"C=512SJ3qII&﹪b~) W /b]ʂ7(e2eG^\ )5!/ѾeՊWB $XkjœHbDžY_Ĩ4j}n*Z)0uY#j}LDM#\f8RdZBT۴̳,%~P'sҾV; /=<% 4;cwdI `e1elϯXUʒޞ>p ;x;YKȚkÕ^,i9p'6#yD MbyG,hϙ'BgXjM.65MzI^߁`X;+5y{Zh!fxWL DЈPw@+L:ϥb?uڠ- Dغ`%{߬cDvC:6 $-W BN41=${HXLW= 9 &]Dn[Kw:3g *#:Vh# BKx`,VEr@fW*hǷ9 똑tbhRZ;%o߯JE:+_a¯$XdEGmX.R 2a+uUyZꀺqPXdCʂ#ݧ)Iɘȅ4?A Kݪ5j,w7]fZ`+7*S]T[ֻN(pW)prtL߻,>6ǠL6&'2eVm7kg)oag~~+9| Ff-_9K:9oz KW-{n=`|U 2Js/3Ť}W~ʛs]rP'!Nh?bjš_T<)CS7'C~g~9hǜzCzܓQ@ 3YN\4v_?k}8nX AũN7hT!%٧G6Iɣ.3nPY\^v,|Tk{zYXX5;T)?NkMrSGCp:3nD}hـ˱.7Xdjd աܤ;F$Z(fY[JZcRox My*WU C VhB~gr@EYy{*UڼiEYmB2;  ~˺LӖvc9F8/#fٍ8'oG{,QIJk*U/t7(<b68OdsN Ph֙D7)pıoNC3=UeC(k|MiMj .pB$+>Iŋї*լ*RX^~g^' SܨEyyB𡣽)ǝJYnfigKe,ި'ߪPGBs?;jM(^Ճ`?'\Q3. 2o ,E_K:?;̭ ׃v?9Dp+P1ľ'tNMæo)AݓqDDö+]km݂D>*K1Gvg@(Tָ6Y%vǂ=) *Y…M6(U-k&.hu@4-jiǔ.ɷ\N>wEXݠruqoW I?s ԺiWDa,R,X :>bBPGbUw+l]5m`p2Rfҥ\,bv[IJ4"-\kk ~>X}Xa )e_&] mlu>1<,ɞ!:"hs#L# C&O?mմ%-+ 8xl7@[:Y/B|7iuvջwQ 9V ʾ:D.f-+h! M%nRe=e%B2[V~eV_YPr&»cP!麍i画g+%f<0nucخjPѾ$٦BSb(pg5ot;^D kBz$'B^ۗ"N0jH܈f~+śZztS#HפhrٯEVYEO)6_bI'J;ds'yc3K?R);Xo2Smygnv W}/fqM"6Uٓint?]ǫ=ıjd]z\\  $Rޞs*($jI[IVq>lX]ջgYBV$ׂBOuǁ)VʎG4NlFbp1] :sNʔJ(gB4 !V?lY+-UsM!ʫ8fD)!8K{;eI:)=ڨ>ps. *ڙEf v]Shp: ]/ IΌ kyɅ7H- 4A\'i}#ܿ-"yҝ88G͖asY$'kUf4WfV\4y9%bp2kFs a#\7b.}O^̑QmAZ@(9Q,Z;h8H"sBdt4tWoٰ+Ҷ>F 0FH5]1LS`TdB2 lGhov~#% m @7ۛ(l|wSGǮ\ia|p-`s$4RMsbN}ui]]0~-ȔtJ7VrnBJ;ϘjS8~bGSi?S $jщuRˡ31t` DǼT?T/Dz@owD,yE4G+,Bq)'U܉ +vپ)=>-_dPwize(O Ї#\{^ :m`ձjr3"ZUX/h K!2bĦDŭPƊXzf$]$|ݔ~S6+H >\J\}y7''?(Mi18zaEe׃/֌<]W|>ήTY=qâM79Ard&9E՞6mr}z4cl#9~īWD$tXhNMB|LU 7Y_Em?`؁1Gicg]!pxFgANH;/BS1j'1GN-ń҄LH)+8spIԍkxB#rxnNÕ0p|Ƿi"څA4Bo%M[N؝Xs8u"&IY0r<q*7%˟2`=(]fNX׋zV3X!mX,PXIUp5<AQ風]PJ 蟹0zDr~} qXC_3$F:"dO PcC;y  3ȿFRk]o<.k]ҺcXQ0 |&kF[%T͖]=ԍ7 V0gQ@)y=qjBxz"h8L~^ NcaJ|"':֝D&A{:B&bEj p%A%Ӈ+8c8O/?be7Pa-+(Gl67Csc{VGHm!B2Y1r8.&uq3`BbxUNHaaHIsǺJRer1_r}Μ@tIE )v0 M9bA} IeT]8UuEwQ`S\ x"1 JB3B8: 0!zr<;rbĒ+ 9\^r—:&gws]G>:k  ׺>wRBq%U惰Rx)5JbdK|NF? YO^߳1q-|‡wFǏ6hio o\6<zz'> tϠW/:{o.7% ȑLr!:NM _Jɯʹu:Q)皧 )SQ͔-lmmG辣I#{ndJNӝs|p3?Cu#L( V|tFt닣f)s tJs]hg4u w'_wĴu 흒sҚO U>ݥ)flmYjWx֫%Bai oxӠ;FsKH(3_΄6 3` ʍɤ Iv/\/3Ko|q 4X>Gߐ8ke? [1za|I32%'JO%I}&!x viZ`M鳹WhI $LVjDŽ'tWu[o%bWEFIP.'⓮u-;6YnǍ>m^9^.2P23FtT1iBZ-5\OIHH(H,@]!TnPxiQx@ܖTvaHnPM (@TU{2uVXL{?d& \za9 &g*JlDO0|m!51Ta阱WxNIVpwq,N_&C&AvfdXs.}#6H qv"ѱ\V9]4 ] 9[X)EԛŲ}S}׎?]/z<=* )n %+ԳVUK?]x-wbSb+UͳqY׾5#TJ=uD1t&?n04ف@b2k/\F&#]>\vkF`l(*a/'L%:ԄäR weM+dR'3l̡Y%KPnk4w?t]0^=It$x?!!n7"j3%Ԕʵ*M5KEHȆ";0`C{>4} kP. MGt'׮G^T>̳gW',Tw[v4yAQ㳉EBuwsx!E *YWH[aW@L Z`n&i^^\u :hͫK:kLA].PJ  B$혅quJՐcb+ޢMqx˷!֜*PC$%Vku[IWVMּErJOIU".Øu\Ic s lZ2geخaZ7LAY}YD;d!5ՉoΘV^fmltgͅ ߺ&%zF7rC{)!5yTМ~F&cq&xz-}{T@@߻ i5H ɶ X#M*nK7O ״ Ww ΒUEf<G{ `CE Ek ;+gG75A￲6hߎ9lڢY_}9 h ֙z24 ܈2iv֎wyfSMS''QP?H?DZ;\sEysi]IU6M+dd(q^3(I]H2KYql"ߒyP EF=O*ȔIkF>&?9_R .jTԲc5~v6YʀgO҈/^f/NI%x? UZ0s=C@^i(md/L0>i蕱S̶cxJxmW SQ]k$s$곷87v55֍-1)OuEhcM{dsLWa2?Ξݻ|jH1]Z N[ `R7^7Ӗ#ꂚɆK DEåA?8_gpN B]2O:jhɁ>ٓ pa!t)jS87D~Y_[yP 7U m QaytQ'6SN?Q0^M-a#Zx/^ V l?dY˜jӤ񫩎Sg)osOoN~;+ +sn׈H,*`^,>.π E0JB9;̥+GEE1;1XŃ%I̢U@&ZhJ]N}T%^sYw+p:ߊ.)L9yMQXfF'وpn);Αxj5AejbNsܫ77n]b&na]͠=W&_29oJّgtoƆLDJ$8Ӯn b=0*k6Pr_9=L} j3x:C}6fDIOvž)Oi5/率S,̽Rؐl J\'lz+s Hq%,ޞ^B cۀsh>4"L{+]a]^nO&" ݄ {O޼xDg8 F5lTEE>ۚ S%C҈Ii]P0mU 9r2A],F 옕X4}g !i4|/5jnycH4A/0n2&w*R79-BnqQ1~/z̸JS݊Jg qjW s ֪S~{VS~b_/>bn#?l8PޖǰY:(ga矡-Ҥ-yg38*tf* `JNTA qlj(I鬟Rz_dЩ}ZLlW4o}õH}ɼHf츆'r6G`< d#Ԥ#jmff4 (Fn=mZ屡xNu/89+*hS%eD:b O;C<\gjqi$qmgj.s*$I/\+.?Drvm D<U{$c9k*11j FIe+X޿X۴)L"!uii)fz1[ @ Z+w?21)sZ@'x t|Pt,]Y0{PMJ8V*"936=L%fh0F^ Gw;WhfYLjR ߛbA2RXIMp(\/~q1 }Eni$7lWp8"ly0]~nh$N} wI^ F߼5uz- 2Uyꈉmn咾4'\R/+1:{M+͋o%Mkva+@&T\ÎÊ P% * ~>1l v? l-1?_x"z5[7/5f R`蝚ռC :7?USK/zg@<ɾ27]=pb9R7hZK. -#6Wge7/+ho/v9/_#/Sǹwji1*%L{$'&䐍h9%ݍa0 \'rpd3V!wfjiDzP:촩ѣʪ𭭩Woftb aù,lvaidϚ(:8k;5!7A1՝Em 9Y"$?VF\ɵS~T+H 4 6ҋe,o>]Y=Ew$crs-կ x 庵W3w2 2,̻w \ojiF( y2[h/P+S=$UQ? 0cCЖp u{H<˸~(*A=p.ee84B@)oD Hτ;G Q:߃c`t<1C%Zӏt v,DUdpQ?qzEqsx3O5b \q1qOjPCѭ6oH9m6X~/z}Z)lU!̓4ݿfA.?KS\ˢq?f?@Yf`?gٿ9!Mq*T8BEyf}(Af_z۶w%4)Gם01Rotiv7N:Ԉyw|Ks 8Z@OYt TϗIt .3i0m;0:0Pekft0) %hFoZb:9D⼌E)-hQW1o:Ίa5%4~|GWkP>NtW`7JT|BtB4""?a֣5$Wk.yФfeO$^JUe|8RYju$S?vL~ JvP̙ J}@qC>GbdLA~bqclqJ.p*$"X0*M1۱b;M* y1T bQ}:a` mơCԲ0~H8k"tK1mϧ`sE(d=2SXcrB~吮#rxhCvm_E •Rq~3b(@2YVLd̻oZ[ȉe2Sx(xs")Z5O0O t9t\Ɓ]|ϒ91L #"fa.N>u(OڽA@DNu4H_ݶŌ\nhJݿ2̎S_@ivKs; 'Q06YGM_u_F1oؖD:F/MvOSS7 ﷊ @t9ux+CXLmR>+k,Ւ OXJ$[qtfUg͖CA_e(ca;ZdaSw* e".ƥrE@CyM::zܬ/)QB(D{֜&7CYAJ@.&:WŐyNՐKվDiJj'1*5+pUHyAiyЯ^@ɳ # )Lde,JdVC Y#!04hFtw'FlEy7zZob B%.{ZK -uql3髞'ժJ #rGTLGaw,2\ MmE=V{Lx=iloZZcC,K-SR]{L$~4TU]ήG^lˇ2@0i } 5~4tyȽC,[)M‰9fxᠠKzhlN.5DӚ}Ɓ{HeX?.-yȁXGȔ L34?SCA9cSN3ıT1UxIBƅ~z4)Y.PLnbV7x7.Qls X$=2ՙf4˭Z#ĭ4t3py MH6ƺXgZQCC^_q2:"OŞuy{d~dZ8RɕT" @AU8.]ŵo4MBLVp5d ˃7I2}g)pB}G|k0\9Juglދkmdd%@PW8?bWz1W I Z[fUZ0m7V]^PRճ@HQn(cT}g>|7|.zѺ4o*gItQXBpMM|=zrMe+O*kT ΛDcZX_ֽ~QiX)1# ;>^sl}Q2†D@?\A )d8 _NmIL=ۯʮ9L2VDmQK|DF'5ykVX1%-.?h&%?>cVr/ݓk*gjFsȿ2Սq"T3az㮼(׍C7B,Iңgml9X+,Ϧ?0^KSu5[K@L+5[À̺cۄfX+}P/\lAм94ߎ|F+aqJaa4^0x'bzWF/(dž9@R5Ƌ9qieCCl^Rۄ~ʎyH+X ±)1@x;B J[⨆wl è΅ÿ!_8lel C!$ٙaN*BlN RەNMxJ}l/9Bq7ثKg>FGfH_m%[4|dUw:Z)MM=q*,Ž/WFXgͳc\9א5"<[t =BSoAWWe0<~̜ zokDH>VW(s0Zl(϶ Ӗe~M0FRS|-{l\CTWwfj%$4yXv9%7ٛ]`hYZ.$pa^T|5%  {ۘg˒o8}4Fxďos#ؓ{F5ޤjQ!qE3tU6w.& qc-tV}>nJ+wmf8c3_F\Iz:'i7\̷D1` SᡔsP&x  O 8U"NOK'f 7fT0(ܼ%`TVIz.NCB;B}W}SS eK-cBZ( BF&S mdsǎpD "1}L;aҿm&| V+|͸`vu%A{ģW.Urw gx>ܳ0(|VLʳ.1Ȗs8TLwmvi{g:3wŠ9"I#Crwo΂!Ʃk w>F)nTq{c&gl8 / !ޢyz훱\鳑59BJi K2V.7HkcF%WSIVzҿM F_q9Y?'/`yE鸏 IlW2/5 !D ݌9n8:U若eQH:h5sr0W1XV1tB촀urQ*iIٝLd8MEmK0 sAPW?!2zZsW#eF$j(o3{I},d/!Gm #y~Y}iz{pɣo(,Zԩ8*KLyxdm&Gdv$-"C`];ɰ2;ճFYw<ܬY%;ZU7"QˇL':?`H:Cn~9bt<6f{ %.i;!~/A1pJ/X¸{F^_9KRq@OKn>-A?%?u\Y><9԰ndZ4\hJ`(Z"Go1Z%oVnG6pK+Y4k0 jbsVd? E5'/Ÿʊ7"&q R݅WG?jKM8u[vZ1&U9g}j$96"FQ*5YY~l|'Nm/v¶IdN=ZQGMM%t6pxO WFRE Ui2{/`^֙Br7MIh\|g}8C~Ihlyc]Hr))jdsW1)5#:ۄkT)ۋ0;7s~"B:[r,9?ulju80g$JKosBĜ7^07?y1=!cœ 14cyxv22dَ ~aN1R N(^}:Ōx *"Tȵ3jUK& lIUE}J[-|yz̕ή"@vUG$˘䖗]?,(g:r8 NOTL{Y@t7}~Mg[Lז" ߦl0HXYQ8Z%dŠxL5ȍJrֺX߳~Bt"1SSDžO W_< 5͆8\ &dtQD !(IIMWynh~s% 0 kŅB,s]ӻ?DHy~fvn @7v,Rhg^I[X <%_+DU%A6/E3=}X=/CW< K@m:։Ρ)WgLtw~m2 F㝫z$&H"^N;A`k@xJ(28 C9S*t/$++3ʺ^RF֏=pq:UTBE$XHgA`bR ^.X'IY6RGH;=HsSȿJiUtf Νߚm_3݉5u; QѿqA5vsn&@8@ #U,כK[\YhSHệPRZ5= jXn>H9eƌG0ê9F/%j+#j YA񨁙g6ayo y]סscl .r5l٥0 ?^RdU?,⚝;<c)p `S (BvDEh{HWg]tI Q٬e~JыW[fO[ Ex - HиѺ@! _R! VS[R)(jxjrb,_,7g8,8zlW=ϣ9g)ib6`Sg&DS`(]ico D ]S=|tۑ): 1E0) בMzh.\.D0V]7 P.Anl78:Ŧkۧ`s^{|`|0 ܷV>Q1vFj)FwՈ+5Tc$uv%;.=Y~ẄP+B6}R'B߰iu@pvwtV/z(B< ;C ro;&sy'(\{uGtIf T vG0̖N9-;9ًYyEk i6Z'}w<%ǵ A>#ӄp5L"00ȦX?Y6]ߦ+Xa3i`mq:ʾ4E~)^p*Kfgz\.C9[>bxI* \Z}mPWzx?4V[>\X~G[|7}=}=cv%~L!Cq AuM( r~Zz KQxEV_šr&.uE?Z6:!ʡ7O D z@z +N XGʬI4wGpqvo˒q굼?UC.GH *U pShd)M0E'4s2D?-w4sF|^5#~|%(^*3[57Ɖ^~C}~읡(Qh"G!L"}os2F1 5R$Mn%[ St^^Z[xˡId-m?`ӽ T)CDVwKoiLo=~ [l\aLQUUW'_Q<_8KdEn?JRcE[' X8DMbѣE}9GA> ߬X䛙;joO8m{='aN|O2[# Ϲ%`dDu_8fq74Q%D]P$qItcĮmLG8ڇ1s=&~3յI3E ʛGg*V2l +ޘL$W8Jr2qmw@m'DA!]v'H"un Whr|m]YaŒ~X@/6Md%|o){T=WFlmI\N\lqWض'ןI5Rr:d ~yu}w=9+@CAOGmU[ݱOtw1mM d9`JW햘Z9+Y7Lݠm'h~Xƽ3#(JqR R%/ ~  K/3njυΞn렑_*Zw󱌸5+ fr6Ph>tʖL;{h.A1Bw.ʎ^K&D hW%2W?4WVMz/" g`o @SWG"›a{ޑw"5 jR(V~Is~n uڕ5H !IՄn?n0 }@~Sq@g3ƨ 4v,Vt_ LzubŇm 3hLEx.@Xssxe.AÑ{W.C[)'"%_AᵱK+aZףg{ SL|EԭG" Kb!/P"ceΒjv{]K0{yD,(:AF%MX,>R/0䨬Թ% <ъ"*.zq=歟yFK<0<|'Yːv P]n^w!>xPy"SwY2:,枱e_:@Q nvvͶklc][+}*U$ZgoQ06rGX(@*a{Gulh-d=. ]bRX¿UA]Tn;%9|O{;.ZR'b2ΈummqU{;c0 m Is STcA'L{ҁ[pU{@/*aT!G̺~u[3'@rIE"p wL \q3cWEwP$(s8h#RIёd&%|ډ1DDM{=PkQ4nCz =J?i!cVՕGWR"=d<,q!UIjˑ}E!m6fayq`l{3s2A4k'u|F~#'{'t$\eC5̷&WW *SGO[~ ʂ*qhC3/w{+SpF:?S7[JBLbJeзUnv#YDL[K=ZNg2x<V⠴;5p.?)μ^!ڈ16Q" k7N?(!ʏXVLF^N1dWBVd1)*Yґ/Amj9@g[rox˚uQ'e} T"=!$MGq}zcX1؀ W7|n3)f6@'b w {i&w/fi:ER1TIF >@|V0V=>3P++oFϧrN-j3cjr }VLrgkKx{"H#ą6Fs~Ď`!r0dll)dTUyK$uZ1b]b: *=#HEI}nX'Ḡ/N^ vq Lc-?`AN"r| 'Q]{ZXۛ49]׸Z{#VyV!Vۼs*wK=wti{=*|ీd T6E_t3|dă~ XɌa|70Y9U3'""L&NmM !+ V(uWlQiF{ zt0Z4]k.]S]&Rz_y8NWz>0Zn:b.Ibr?f5s%2TX^n1?0^d@'"l$hYi㪸e/dQ2t]B?,!F*۱:Λ vrcCSZ.X-Riqr7;7v;ʕ9zdѬ8+A'Or$U~%7?ibx,O=[yRf,E5fCCtU;sC׆[?Qc0!9(sw,;;6?"y")$ Z>\ȽW W/7hCPd 2Jh8NV^:q{OcY%QDőRi 42q:!jVtnHRD Y-Ek4Áclι%$'$6~O:1T^/DxLRR`:eRP1 ^4 o؎O Hp37B(9bNo|`n0D4ƅR ҿ;l9g*0#-DS;XQ^ᰉ4gl}?nf-P6Pqk'oDΉ~>G%{+ n~|7E!rhij79Y/],HL\~f_yص:Ԋg"qn ueD0\X8x+N?L6'%!:IcpJ=ǧ0,ztFAhaI㡻hR硉No#"m (*{*8)zul\v 4z0bWn?|ش|Jo՗]/J4Bpix ~ؕnJC[?X^22:ɰ @y8u8Rܓ#Dl]UJz",iƄ;'7I*Ζ x/+xJ9NK?@1_x̹*@TttC L]U( Ký7ڷW 0jB{-4G|/5Ub&ƾ-~]a g+c43ȕ/'$`*=JJkƵ}ǐÆua!^|ѳ_R<\BdIӦ {N8kLL 3J8_gP(tzJR 6/dk4x|jqOP7:)-ZI[:aZ@ޏ JEPyY?nĤW? /+>^!1[KV"OF1?S^MZ 8lzl*tMײI}t$299̝18 H#, &39.e R3 va!+|b.\[m!T_F'"*IV=QM=k2 eKp R t(ʢmVS>i+ MwQ/hmrbr<zK {&Vwy׹ib^~G#v} ~3o.J bQq ;uXh.<El(s27m뷈1΅6Ś݀Y@g!Å~ dv4p'lQ]`20bk&MqkA©ɜ\-Iפ=Bs]-[ *_Sd.e8M$fę3r6QZqԁMs5vֿwi(&8b)XuM*a[%j<.EmvƱ:%>?-u`آ;ZkkP/_.EW!PJ-/vG(x}\Gۋ"yMKPEl3RJJSӘLK-56G=PG7A"6brYҊ:Ubt&TňĒ#IS'?+(,Toy{x፽ck\ y6'4gHsadJ5€0.35yH)l (in*WF g:i;GckUahvr3~c}'+j6-4:Oh{tؑzߚee/."r fk'8G1 3=hq!~My%7n؝9C vMQ. O?RS)Aa|9mRCٜg{C%R[ʯ|N^&U +{4n}KL]:] 8t Yψ|^\$&Xo<&~_LlNqPjB +svMt"{=cІHz-Z.ajc5\`Wʼn:ctgDz5&L}!۱.Sy&P,bhGsvrð~Q!+q[`ap !|7nj' v *Wǿ4fJvukJEN)p'B 7=_`hUZ݊E= ?wt[=t&ф 4.G20ɓF*5>-)۾|,$ .y^~縹r"fnvjkd(WEv97b[f&FM+7ĵwC L`}K+eI޳qge* [D?N9vKVxiu' В3 sRt#<@ʎ%>OE qG~DZ"&d-3V{cٱ Ҫ}Rm3Z"`K_ +!H^5^ip5:x &죒$#[*Beb8+|h1H J̀/ۮDffI?#4H:O|G};jWP'8Zfq]6@NGÆ_I4lP5AL(Д7S1὜:~NT հt}4*`=c>sÙ9CN42ͱ@S@9i2RYӄ@׏mW"O8 'kǺN٢Ůs dFe;Y^p[ā!D Z@[)#Q$Y'92*GY.Ls,$'yඑN zUH _|.fOD*&;rffSȟRW˜VWWf;gȗBn@d3rؗOv3S)i:AwL4jcvO-!}.,+S%W5>=h86<䪤 V^rSg8 {W)A!teAN7rݘF!e&TO'tލE:[s$!i@4*YeF'c}Ab0R['VJvI20lmrJo Ϊ@UQ_[gBGyaS[ԍJK5g  ؔE%(f2+WA}OiȁP UV|%|}%ܙ ιkvյm=]|!'hPؘ'%P3GȂir'npqaϴ[UvcCG50:^?P]NTM|@tչ6{J=3)tL"Ϳ5gu!pjRoi_1N7gn=gc~<j6WPW u}'˯F霜5|wgǰپǏHz|u3飐vD+}1Q*n};93ul?QJwδYʟ4K#s4 *WJ3t?[a3'6[^R`GU 2`f%Y*M10/H&Ti>KuSPW)ߍ! ybp]EC:?D a1Еņ'"4dRz- k"tnwDyWJr4XA ?ː?8o-玅7FՓ*?vV{uӆuCe_Xq#5:u ېDM)C*Bj-o!mb'GK|X/PbȯEH;L@kn'DFŔr,'${?meeT)0CV--@4rzHV}`AX{8]t~:[_|W#:mJ`Yҏn2庁 `gz{mw29Q|-gt9ԬQ_q1uƲW&vsT5yNJZ n~*2A(5{sx69 SEI+U¢MJ 䶺G')̷fġh:Ed(ӌ<*uFЊ`BkLfL C-OpxgvO~ٍ+_0CTyY$<@f0LsʴꜵB^jTgͳaVV;7:|Q7NB pYfFr@WlߌeKp5K1ɻ'qۊL2ҿ3نNq.zYSGݸϵ~EQhxwzov`MBҙ){9ŠWe"=DXk2#EyU"ƳSOq{Mņt/Y; w6u>sxt>L:GAL>_!_75ڴ64i] ;>鎱5vz"JnM6- |?|Ih+0*f~ǗӸ]ǡ I)S Wƙɳ3GJ;Gf#H1!$ J=_41'Mӯ <D^S2(fp@ Z0 [!IX=b-Ϫ!(OYInCSw`0Ľd+q>Ky"5`gR#O>XՔ] vnR^Ws_x*+!DlQW(6Ml1(D^W _3ElV||L֐3"h𾧿H|%C"!k`xo6aAvp?59vW]Ђd\~`s-`uJL(+4GJ|6H_b]iXF;vg7䱸m)w\$0)؝'L(tO;>#jģ#G7ܮ!/۰4l7[v~ lk^k}>b)ěo_[8e$lun`i;r~"ުIA&-<)ڱuZ#X"}c8z{rĒ d:f]O0h{ _p+ljoX,8GKAږBliV2sP#Y\YPma+3+oiPB_;[D3E4pFNtekKKɇ!WuBC8lIGHaa\-St?qko§k^"Wg߄&AST39P7zPAu n4r~_y.0h֧,T_UTsAkOFƶ(9^͉DZEDUv)+l嵓uFR0>X)rሁ6ksYm;f?1/v`).]_? &{xi:PUHRq)v/A|h@{2U csZOxܸkJ6 Ǩo_ķWc<庵Z{d74>қOCUF e Zc I>uӟhELk`bxA[.`{4R,@T& u.OVs$)уkg'd3H|̌ J A%|qjj#C`U6 gV3 JpJ B鮱eoޑ@7Kp; ?.$p,Z@ޝyid+2D$~`j L9Qع|KA؊!):~X;gYXڶQ9ӴF2:'7 kY}+ِ^oP+?>:u&l8A2ıys5Кoɑ{a6\&ArN0#ƌ3U%9-C #-h"#;|!:md()!e!E?I)XP=JVh4;7rFvdT8ɇqmAX0ˢA.C0G)ّ"~6"* GS|-ʤ: HD: 5:cxc=/uy#;[EJdѫ|)gm |ɢA^꘵toS=%BǗ~zhcdiw^&Yڂ5p q~AGР1&ǀ1N}ܙG&.w!ܯܴ@G gmo#~cI 2V 6ːi arlR$S>l) h:WG  ow9 fs/mz1Wp3ڹ1?զmLzlnO//UG RY")ix##jȟ, c6/x?%Q 㥳-6 Z$ f7W(v۵3 lM^<"J񬃸|;Q_|W.zmV@(VfI @98'M--|~=`4qert8w)kڮZ WZ4hI&H\;k0/a3I&0 IL:p4b=6#4'6"˅%ygw,D]dZE1iwCaT<崚쒚LqN&G Ȓ3+_= @zf ;Cn3gc뗵C X_} 2EI[Ȱ[5Tx̼k{3"eEd$!m__FCN% ߔ:/jFiUnO53VWq 6Oo]l>Cp_^'ÙmI mSbd]74bh ,jUybcNK| .ҋraCݤT 㾉߸Ҋbk K8,acCW3ߥ.5+?+F޻!7 TW LC4 S_YR=sAU-SB+7 CbƔ/^l; =PB3?`(|FJnI07bءWA eNCP*1k`\| Z|1FTԪ_uT 1Cf3`1D !ܗ, ŢX|Pc&$]J`ɚJ #> V1cE'e,tLZL3i˭lnn%$K s]BBഊSzǙMOu'ӟ˜GAVg89\=R tts\!N m%&]<0rs5yDPꜻNo8:&a{a Q\+ʟ^:r-s· [ߵl zmj9gDbtv o147=rW5ݳ\=_$HJ/1wCǿfStbl?iʪ`_{aGPg_ .߁ّm E)5Tԅ ph~kecА S)X#Ǐ>QY2h FE̔RrUuef*‹A)(=?Ѱ$D&]Ϧو!+=Đ ӬtK )xYҬ2_]BGbhk: AՋ)Шa~߽Sf FQhf&Ժ>.]*F)₳6s~e #-+CjÓ3eҬl-<'£& TP<8-N(>n1.>LyVH(ũ2,y''$@dXQ嶑oFӤJc$ %ZYyu;dڻkǜT&$p䶁@onSռ"mqE$x =Vx޸ؘۤDT4ڇ96`&`57]﫻IRFN2 YN/†gU\OYka8p=dv9A;@6MPd*L~⠅aRtO./ i^Jj*^_j[=Q6e [` AC6F:::w t~AZ 9ْN9Γ"φء{vuc;XxweUO)i>|uAeEeþrsIXO6 " Q-Z܂vcyAsv.V1۫D3odyI Fy*\|Ո-;C쵽(H{d7z3RrEKm;E28=^dᶂGs/.+-BX$6ذC$)F@?%iS ?!? zQ|<$zHڴflHtxϽ>~be G<2W׸4w m+>7z4"N`\#@;6 K3YJn\KBij3un8p HBI7+O TU5wȣrɈ0d$Zi2"I7LD-hZֻ;5gbgH&e/aVN6ZW:gtRtdfz% i1 ,&iDK4(Ad.3 og/S=PWT)9N3]f5VLcwT V{lfk}(#+i,a./eY8\ "H=!zVcA3Msl]H T8H,y2,`t^7M8=N.i ,MlM#L:x? kr$uY`#W &Vx[Bn.gLb S/:ku<N8(:x ¬hao@H  5n&]L,<҃W!F{ K.A~nڼյ{g?m3i"(ͪ;pB|xu8m(ÜbmDɑ?薪7t}ڇҎSqw%_+~Y/Cr!L \ҺLG. ":&}A8pZM!fH[_YD׽DD9NHfI{C56Pi)M9ʅ]f Ȑ;#}֚NzN֑+&+~KaH}Q[.г^(ҽ{Ϭ:}o %iE! fvxCMfѻ"*=\\$~mvO򼄆So'gœFF28ĕhʅ+D:bq[M9m@"aaczd+h xZ{n|v9-Z$qdHb~П7 4,xF2E""Q0:bSCcsG[8k)OE^ƥ^\]A==GI ЈZ0`+tbC-oCwqf`_m "vVN zJ'+F1JpNs2FXtߜ=-XB.=6 >AM i/3&@z HLzCL`hY6'@wDDž%麡E5n^?-{Ȇ(0^o C8i%{ق",q h$s`8j}*?V76hiKuI>Q)6üŗhI9#rc4mYZ f>{j+%R.!?\!| a15^+hZζF`$j\Up?mGj?+YR=WmijNR%,WW; #mu: |Scq-}IDŽDC|qECߺm*Ј'rΑ_[=\`*I3JұuwPn!2i:5{]{bJդxP9x4亓=}Շ'??~JwU'~z9SǟאgЯ qNnoctƷVxr,"C vxW4P?|ۥȰLPyuRdAByU`%'Z%|@zGKyeHI-\{meߙWeI7pu s$iEA|#%^T|N0w5Odr a;GkqյoC1; ):m,C)^J Q5rU,ORS ۅa|OXRp&F'ʥ:l%=_uO<|g~wLQD-~"LzHU.iQ87y6mӝ5p p;t$JP4C< edhXJb(@yݭߥHbwD(^Av+4G04'1c "hEZq›[hBϓ>%Qa`| )8'GI42p]fg_rخ[t0D>xֆ`:M ˂G^\?/bl E7hM.sSidE]{_RBru(+{O>muL0o EM@"z=NMͰ1|GbWfſَi7-`b5!əu9MƉ;?0w5Z h c/,v =J(_^|+sV s *c%O4TbVG,ϾMfzQo╪Lp$z:m,>9Xd࢔]*{οM/M̑w"NTjH܇9#E;3q*p+i1[oT@ pbvi3䵧xr0"mU0yuR}>Z,1-ۊ*cC46욝 عR;uoSj2 jo/1v3熄:n?]\ndQh}l-#[ohoڥ{jɌ}i"lOiNPۚCؖ+Ư;/uH\x}K;अy6n>G';-Љty;etdp{' $p_=GKo=,l@>ğKL7R-~<3}X ˉr_eڿh-@nSY]'UYJUՒL,ܜee 5}57:WZn$"Oa.2;-+,ӀYr(ߐ$ҿUwm %?CaX<< / 2YnJЫ*Su9_>d l I7 Sh~ʹ%EΆ>7$v Mq:yr}*d>vc36r%)*'4z__V)<`sf $)ǹ" -56D(7pBf'Cا<͢sHB ̝t=4eYm3Ow"W6N#(Y}A; rTcALg>b:֠5Ō`J46?9XS[էlPp{3Kγ+(q]Gj}kvJlH#>%'4<ݒ#|t#WE׹b}'~1( )#bݶ= n6V\n39^[HR> Mc#%;;JO͍8$YH~IOX EX-dž.sݖ"ɟq^zg`5S E[ ōd7h E0Ch}έ3FZPү2n3>ߗNP`);\0hӉbM))%gS2٘oQ1drE>fPyT|`/-n>[RTQRءNtز \z'5Y"}Ǘi VKΏQu0u'PIxCq03Oo=~>\M BMiK7 pg ̃[{ e%—z̯{MP !LU%EZ0He^CGPXsp~p,2#hc62ThWYX18jօg $5f1ɠ:>G Uw:Q' {%`KkL/M_UŃC|@9D~ΩƐim}).˷A~*fYJcs-'Hh' “2 3lAIx 94WzO9;p%L#-Gi^"ԏC:܅l, o2T%" ,JGAp}=6ETxGNc3Ci](kQ=!^aҒl)W̲2'&bfGlWfA7l{ԐZ* 8ӟ'X-y[*w/s'J"#qpU]Ƞ:16*v0,V}FTxBDdu03MvfS˫WLآ4M[ Fޞ67ŌsWj?RۘŶgs&;BD/\*@MOsi P"09T֨G8(A8vHA8pv g +oy hYPܳE`xX7h( 3[?57qzV픺d$c  E~ ֭)ĭl:V͐v8|=P))/ՄO<"R,o]0qt+ifNQ}4[)_t1Γ,)(,o2.giF̶-t6bJՄ^*dI?Ӓ́hS8,]%XZ=GW+xkNN8z5DTx2Fk"!_{4-&U\ ]OK{VM8;y=m34΄hÏ_eV>2;A~7u$6rÙ2]0KibV0\Q6`tnz1T' CfitդG x눡E8şVg%RH{4Fq 69:.n`Vh(NSc5'Y1cx!C&AG"oHz2˯U{/uVae*u޳*6l(<'9NT ~8A=^{O}"sy Xom"y$HZG:dk9N^Rre 5 j(oSs Ȟ5r6qV'\ZDL7^(|Y!6dQxecoB1 w!¼rndt̉RuX;7B eO^!1}5)Nvذua5,eH<\.Eks'yv SZE&iTTKa(=H<CʫXYC%ÛV3ɴ`mZ8wW,%abk72Rz ǎ0z0HZN bh @?~Wp3t ,nh nH*K SXd]> iQM(]9 Ÿ7Uq7拒y#M%>B;C>'P FvHZ ԉi8%a~h1vnAq|"M}DԌv#q\l(dO'Q|EP JӏxqyH'&K ZI8AsHI7 qܑl㏤KUͿ.dʴR6"(Gؠ/⒣1]#c3Q2RKi@UÿxT2666r3X s!h _,qCT'x[}] kVe}چ{7!{fu)p0Y{FBt|J0G+s U-uX8p{)~>8ZŶWNe钧Z4XrlVrL۩_Gpš}k7o7ўJAQv R_ l1~P_ A7iJ,)TOwncYݐs'c@ SA[d.褊֐9OcOdJPc~I1ޖ< gTy^~/CQ/Okw㣚Aύ##)lF]>^v;y ~h_#;wʑ O$3>BɷKw_}&˝^gFʩzquU;tFj52nHo.:#*vCT%<f$x~[,x@ = OUQ$܎!x/htҞX8秕kxgj^z=*]>tSغaj'W/J!zS&YD>daq1iٱFOJ8X>ET+&@@B;9]!d~0:WDsfQcI0[YQɯ*&fݼ]ߵI]tjpSA-Eve._˽㷴ΣŇ~ ' e& N+fw˗cxKh77zlDF*l:KNkDiӆ @,ThmRD٪'Qb *7I?V=ގ )mW;ӱi]ST_d֑y>"R+ΩoLK- u'$NЈ#*l! pa &:%6ovBp_ݯ^8D13*g!e;8u*I*@ I)ܦ I)0;/zMY) ,F%~ց?l epZ(,ڵjhl r$vWJiÚ!=t.u0o`=X_K"թVƯ:9y]J#dLȊtyrj!Wl:Ma~x(I[h@zܹ~G=6u gn#\'HKK{3CG/(N7[$X\&ç-RI- ?eA9 HH=V ޽G2&B2@ֿ(WVFRF)scP8ȴ:_{HcU2V ۹@koFaŸK>Q5_-h{b7|ΘEj d\%PN/Ϯb: !3)`Kv ]^lkUtn:Ia8BRG7g3T z[_%?[ЭQ![;L+ i-V0Dx~`jS0oy'a2;1A.rZw A ~BՉmR^duf/VLJW/z6ΒrBg#n璯ъI؁B{Uͽ;'S[p[g6M\ ?i޼aae1m!e|4* >]݂p=(O[#S:nbz_ҎTÕ)XGHuKT U]pi>Z .ªux3_ivJb],lA>5ۢ x|Ί{TـN{WG4we#[kzO %QG*m7lrӯ4'7hC> ֬㣀Y:W%g?|{ϥ_:`/:w}R8.8B~ C/)2{@#fSr)1=V.3J\tK2E(Fw uCjbh}1+ ]*M1%$/Nh*껏y2>ydJH\BaYۓP+,Ş %`?{yCrK| QDʺBseZx/*X"5ֽMv1fݯVa=Dg],O*gFܽQTeLrGwQX Ҡd~7]ĵV60g#*v ޡI>SsJ?87j׻AT5>|&3$yPUв ⷧD&V av&Ü,N+һ 0'CB36Ee/*{קU/WE y-BR~:|;%ٔK*sbbXBk >0{Ҍ5ܪSSc>8Tȶՙ|3!;/}N7|)nj;8dŠH$QfKE&.n bQͩsrCϯyoρ T%`Y' (@jA¨{YЏ8v;!`DU@>"Gr|v&;TiQi82Q8%ӝ֡qRVzi Cz%\,Fˏ)-3%JY'"H,cK„4{Z331L,6 -f^Ѣ4=vć^{yiL)T곡7U}jWmp6_6y>_Uy9x8Jci~_jkPXA7#ǶЇJYJ5t@:QHxaY^7#l vt$ݼǧG'5!^c>!s9k"oF i,bB.{ %I>3*fڈu>a,%mW gǀ itd3俤m;_y}WIdP 2M(VmjTGhŹP<ᾭ,TجWm^@Oߓ(ϥʌ``$x@[Ӗ'a{)`Ƿ_kwC`l3DyxQ ؐx/b#u<"u}I(0խ\[99N 29r>Ȯ.t@n}KAbo1C| =5D4_^=gd٢KmIYfs1:.[,kY/-Ne朇 gwɲ _\(t†$1,|kI7ReGmЋκ,W?KIy[ D}_:V,(5XxHt4Btx?`W *o\JQپE#,͞1\o8l|aUH(|8fd?RNLM&vT3'_Pr!`'.g; Ɍ /;(T0^ ل⃅['5v|p d %Ddk>Ȓߡ%VY8'tܿ.񤊩HG"#EIܨݕBiBUJ Wy4!mm %"1YDP|5b/zrSƋDw;֥ak7u""g糕;h—Ècs"KOmYygg}tZ"ݲy XKԩЏnژP[kM&Xr3 mPgXЩ^u*W>ΰ/m4=;99I`IԚ_BaG$(h[^\hgU`R Iz)x%[ 7 ދ6Q˫d6+}Q쿶5By*$C0 "7@58 n)A+} :\AH5^k@c'ۭ &p*oۆSft.O}0QrYi[a4060C3NfWl cRr%I>Z bRZ~9K"B{76|2(BNpnC@ HǏIBdqx^1P:#~H).OPdf0'5''axPJy`3ËqaI(إ!)ҭ3eg"o"Y . I"Hi7#Jnj+x> /nE,rw N%}z Row{VxOnd! ^9¸,8Q}Fx ʺnP0EYh55TEfRg6! _ f:Gf~=!^ 4v҈4G Z>ݣ4aIч0hw9y\2uf\/jk=Z :[?q=ʤ]|t>D 7XQkŦe"ʻP>b1H Xlx&Nʳ,VGLnj6 50 ]5e:sWw5{Uvg!Ul ,'Lӟ^9{Ab`yl^rsA@Gk=Naˍ2Eyq2T^Pb֘(~ĚƉLrz}ggq$' #OK%@^*FںS"~4ިeF#FNҜ"2i8P *Ssєk`2bW)EcM?݇hHH#%m(QYUTmv,~~]0mqjM)Tv\Ic+ť5'OG 4Y֡c;%~ZcY4Ĉ'SZP9tLm^xk05XwWGK+.5 @1oE6 )NX^ +-)VPH ;֟uGlB AWG{Bś&ț7~_ߣ5;`':bxA EP8:`Oϋ T_S77i̒FIMD}dL~:v-վ1 χݤ4b lrٖIC>**QZq ᓅ;)D;"9e%'5s\;e&ѧPm$QԼ٨_̠Oxc#%#>_鄊ǒXhAA_}!Iss!3ʆT*~R wLtC>X:,`^YDb6!ThB^ЛvsC.#[|t;^C2-A.Σ h *5Q^IJ<,xZ9zRlTlgG4u1TYˣJ]&^e޴zVwcW>I C !pn3 gP5tm3#9݌e½I-!>,#(+xxjhtUX̏,'HU|x/SAˣ}j2r(;ƫ' [MlR/!((7GīæPq}ӗ#r.gkX\  AD2)?30Ri( MKA]LݗNh|Rx#+;Ҋ!D؃l#/4I2DMbmZT(_u_DS:!/UƗN); k^}:=BHJt&:$Q- &uRp0ACfRW904[%+f*Ꞁd/)sN&_fIkpH^V:盂gm⣆6x?fpQ?Q~#*'nb>'HJտ&HҒ QSn>WTidX15NY4"} ' `#GR/gЇs ¥v7٩7am%mIFSCUdj+&7j  BV1 ޗLH ٥}1 JaJ4[ Q+MRrV/JH%+<]3i[>W,7 =Fx(/(h~j{7ܕE mU.X˓@7gT1yư6:3/UNWq7+/DT*ADܺ l8\%T,u΢#0Xjǥ~y%YFU;T|r_7%niIQ{R}#'6]ۢ$DY7c*s¹Sp{Ӕj ( Gr:y9x3}ɀ*Z@ \zN]ej B(Z\QPZL=fN|ʤ[T DOupI_Akt$LAv> 0~}cOl[pxKG҆B8p"ֿp u 2x- q1s: 0?208Qk`eS]EVCLR &4凿.V. d#V>{D U` 8qX룊BӿHB 2F,/#aN[gRqWL^Bʕzu,v/87"oSK$͇ʧSZE XDcy9l&tzlHWqZAA!`f$س/*dE%-# s#zusƇ13:QݱJm.. nV_f4a0=yB)M,*ƊľgFdajwM/~IrNOO|ڂ%LO_/AȒU@n[&΂ح:3`eݲFV $19w͡bL>ygEX<% pkFjӈJLs0Iw$eCt8-3h׳.ͅLiJ|Jf"rc^'}Y[V\dmJYks_5XBNvH}00#S'iL*|;&|gOWg-r$eUavT8)5kDW<#H =K۰ůP?"&u$ &O/djJ ĶZtGu܈YъB56* L uݧV 1i#8I#}6VAR njhMgTpyO% >Xҏg 2@ 4H?' @J٦`u?n0G|̦:ehZLZV省9gb (e蛺0h& ?sydhN3){z_`|,lҒDVZ??*_ԿEFA)үj -5Yqrx&q@|L(LAr\VRy'(eo&"ǚL3E y!ߪcd%SSP@jp2 h}722N!޼vX{Rkfbwe!C-wuз]B&L2?/cbL,.X #_^%ID e")p*=ûT'\[Qql7f7N$ ƣMկ%ŀcd,p+t/F+|oy>-7;F5|.gEY8j9QXm{ =?*>3fU) 3$oaR }f.3ȌAzg8׶#̝PսϷ|blLFwf uhb%dN>`/#C_+Db^\ \ 6ZI1zX"˃"bv2`3# 4Vpd{4 G+Ep#?Gv)ST]o ;6?؜,k]I|ű3oi"=\{j$w|ouPA`>lS[*$G*iN||fAn 3K>y%Yܧ)ԙ\2.6TۓZ_;|ij/|4 ǻb~8>*vPOHfiFtp:7Lc5 j%н{ibpՕHy76 .ܯAx5 reK&V_sZԟ U$w jթNUL`/uh$L9zF1dQC(E=e8Wha,MؕW=kpDOd΀O]͚ sSd_-eWLw.+r?845+Vm{O(? 3-\e,Ih-iYk3tK jPuxS⮑@QE{i59Gd7_j|`,2OlnH r]rEi5(hZS<Ǟbdlw.O[uy=aLPC~*h>3Jd¡u>7rn+沎52VO1;@jw+qᖆ`E#|%H@Ugpe1kMU5vWJZI)a[rFAgD ԕ@5JG$ٞ?Rz/Zy! ACb=5H*XM;&1[ׅ' :m'x%En;E?skw׸b?`ɪσ7-jvSѴE,EF}zttJ TOYlA1U \#!뾾^IkꭎzυEh~l3J-kiX]y. lR %%k%$F/ umbOPQW$H1& 75) [@1Eq G+K:p`},PjeǠpɇ`s=TS"eaEb,)Rf=I0' p`^%BG9j(㢌` BLoQB:~HCfZdR7U5J/a"w?H W=Uvxv]"`;NL$f`F ka:yސ_Nu'pLhiLhcbwAhc.@QVegfS90$AziEY%\Y db3q_h/Dˋ)ӭW!@RN;7Pc5V`PTs#lHcN$:Y=b5H_BQ+s#ъ&MQ C^EvE~-Hή*ԱJyz] q!p9%1 YB@ ۶RϺͯ4 0完#Ĝk8`P{-@HZnZtC1>YuoA٥iv'߈lnL:uƨ7uk9MHaӆ}@RXXcc`=|MJNQc(dm >:=&0!n/3{ylRFC,IU{NufDXfGR&!blqݬS w..0[jNA 4n)}z /Fʗi߅'ȤJ 5lL77=sN M^7v/İ%֭'>[#,c=a>P{O@Y|E"ܥd΂N L@pWOZk c~w: Rm J/-gSmωpP#CYGEs7T@o>a'u fyHrʎt6j'A)߄! y!C N\8=#k!\vzUB\=6H8L;olSiOgF ي\V#yD#=QGe)Uañt´\g>y<7fQFpC_E` ΌA!|___#GWnRPn|~ Z2 ,iE~lm;@vآc)W##G@t1 QNxFWvAn_W&zFWȂsH2fj&GS]N{bjf3SѪá*7 QPO_|Kt@2ϺhdlT_Ak 6*ypdǕ/Wgf& q00Tz^+6sEZa ˝qonEb,|X["wԆ0 E~XQO*Fc>Ir2MIyόT2ylXBO^~1'9m-|X/Iݔ߄7斳8n )P7+ٷ5  &jU6ԍӬڙɑG:ۆ?/yM%I,4F("FrUT1bUÌ4}ZɛLF_Ips(~&v'}֮0mO2-:Uq 3ha #ۙFIٷeiS a !|A\57.e=NQM2{CCi eHT-@0('V?i댂>7i@:t7~H|mtH]`䴉VRGeIq'c12.C{ 5Id VAO:ЛE0,sjBpS|.J6V"+Toa抏u79TnG$-&* sc%O-rh^R Y4 ُa@X>a>` vD.F > A_$UsF}]L zW=*2A?\25iO#Fd]M @.H^9:"N}-+Zs?]Q^D]gL~4I6H5>ʩ9(cYc0>Ș|LY$8b(m2D2o');}*YXI&ކbnd)rkj++V5I+e6Le{Mb][Mƹ̫TE򱗁TTA<Ƨ]룻ݔK)NIĚٱ;Je,^AYU 7`.CX$g6U_^r|>G6's EJ/ )>13-cĠWaEVvZ xO5#3ԣDoGsjBcغ?Eοlgb>f1ܯ'>!ƶ8';zq-f7x Od/d=>6r\#q^Y+ȇ4'Df$ N[׬)CzמX8-YN E=EG#*a??F |T*EuNaq&Zs/w#lyC?wEO9C_4e=$:X $hcUFRpp 9{û_~a'$d\țieC ~.b}~ xFe.qOr5B8 k_ث5CMa~/(@Z~6׋ e@R$vr7Bs_1H:zC`;M,L"cOk*\+5eQ(`JZCжplph3 >=nG0ܼ^5wTjsuJ櫎 aWNo]畸eZ D;$!C\dfW[,b'jFW2\cIfQּjtTkxPEf):> ʟ 968)TӊØڬB6 0gLR'(-T%\^S{%Scڃ<|fdx@ [-20iw&^pխ9N}hy_U ”ADLcٹ9;V %۫bPwWKw&K>c2ղ(AqKk+9 NDKh7.˹UůBMW6@vu2>΄K+G?L }pwH@g*ty^|^%k[AL9r*!uZ [mho' &B3ɎU+DF /AB9%TĂ=Vأj ZdiU!}Y A88 / ID@' iZY %K8rct~4$fQ}f{_ C"lokK6E!Ł:lQ<ÿ~1 } f@48_A0|f>+AVE"Мy}{+z6 SuS#e*JgjdkS88`Ʈ4߹#]wNi-] :iZ5UL\fI*l)0\4:vmV2 ck q;yIom)91_ ⷵ vX V~]I_oXGrz27u"E>^Q^CGp>-Hw3C.­s+*<Ro?\+@Π$+DS`DԑZ5q_buXWF0s[agG(^< ^@+d"[D ą ~ y=;l)BވU$A=mE?w.Zehm-Yvl 㡥%=|5 J4PX 'KGEؗ`xAL'ξrgU8/qƆ:RbޯKӸ_0up eyQϻ-riu|YLm A(`GJKĩzn5 O rh UV!H/Ug䠘j5>E} {z4|Ku>8KVJ0 4̾MN(B*UW299x?2UDOB긚f$Ha){Y9ǔt(OcuVi"x~TYP\FNRУ͘CUfdFj4\5Y*4vI90.q2S\`uۂr%=Wa1x{swV#SI&ޝ\'UjE7h}ۆK77̳u{2γOd+:b8O fjM5Mh985/l"dd ^]os@y=NԜUݾrfZ#erH윘?2Qґ9]zQCBL#K} %kn'*3n4U֓K;f^w5ʫ'|\ݍ;K9c`[ nv)ܕ EzBiQ(8^!t|GO~@WeGM.4s{f+=nRL(v$& Z5YOƧn1?R7w`pʟz4 P9&Ue7~шsK]D!Vw8X 'z"SW=UtpQlN,s 888ɇD|U싌*)28Fzh`%aUudzNCA:$D\Ǿ : 3ߵ;t?fhY='  p0FĶ*~K:9@'D bh=J) Bf(Lp(odH9kd%ˬ #(l߁\93`|rp `.? 4xuQ.*c% X4RCL+'3J4z~Xy J<#rx@:%@a0|Rԇ9ɯNPM\,ץfekjJu]?4^;{relܖ֟T%K~Dր^O9 D1U۰tIdA[ Q̖+ bӄU'!`!r,/_PdxBD0(䴻x7B ٴS`(ue1rjy^1Gťcc1G[ ڒ ޗ,Xihr?1 GAp%dFitBpІ?Z^'AEv.g2'?R9ƻY&`$^.THrFB۶&g'AuݟVoH=b ß ױ5Y#a1+*J$KZy &A'Q. ,*y!‹pVs=L%P l skt0i"H3@ E v~/HP\6O~Y3}z=UrRܒ`mL90ŞR7 Ez}p"kIJ/DH ˆ{k{  hۇjCaGOx@Ɠ@ Pϯt8 k,!-S2cɬ[Dy>:{{,\\upB"#AJTnJ}>f {rC nqVTƈ*f Fj7 "/e'djP75|cbi'S sͥ\ZX Zj@_.UlAp+D[sLj0ؑ2;y< l.shxԶ^[/>9ZAf%90u8U#;ݙgƅRPPԥɅ(]e$.r :$sjD"9^,C R3UDD7>86GH#䳫W0T&n_U^4~4ּ= *;y,L;!- oD¶3T<;zu 2Ah*\`qbg.F=d[ayUrgؘI*;BB-#, ?p2Bօ!"2ܺ߸ ѭt؂ 4G+O5,R,JvfN1G1Ut1N( 1d9HX326 }O`e,Px J2d>Uz W&( zpE49sը)anY mP Xڶ6ZeT0ce 9^ qDn&/5W[?(|5YeQiBƦT7"K2^3#w) T λ=.4Hueޱ7RԺ/2T< \7!)tf5HTIdruoj\,\ˬ|MFN@ Rd:LjUaw-L>oU`^Q2FqWEA/Z2͖0bLhq۾8hcL:Jb(xԹ޻S58!b{HԘ_x 1{GX?zZG$]|4Hx(?Q"s;/qk#?_Eiq6gVxɂ{rҩZǸ'zA5ze M6(g|V!fkɘwB'1L|aZ*١Q1Sz4Ii*+{&«>ZNf02t92^"5d$l"o|pbPB-E=b #gKIbT n`~s'&j5S:D6( 3uOsf!ا`2sT޾b,#71µȸ7w\g"Xlx}jD$JI0+aө{VF])9Sh3z YY8dv <((o,R*ꍝFh旟! S(}[a2sdc+ w>#ȷ2skd˰KOփZS)n+(ߥ7YzW5.ֿ@_Z5/%Y(rf2Y3^jq@n,0YW4 gV/4\4d[C6GRZBbVՇwUM[./h^/u?F 9D:6;>U߶GF 6H)M/O^+mϑV٢p2[XO.*AF7Urܓ;T`ĉbWl$݊8ĻaX[gQk,1v 'X㜆fҧ<2w i+; :oEZs^Ւ*MLqj}_|l-0L&I6ҠpqDn8V6. _633{/O-(wQ"O!*e&'oqLngm# v&l\If".A7*guߺB6Y-|J\˘p(1)(#K[({+!۪R1 M(BxZ¬XtB|de~>Oiچ_ \}%W.˪#l,R$ZsGC_ KMP F#ODHM`]ZC^z!UV?k]w<ղp"\#ukv yI:5αVxԅŇf;{8<""dvz3@y.'c56#}u`DeC/+aKrbBzxi}֤vm8>h ްy{76$/>R`%> Sc=O%XP+4hܯo&KlYjH#b\0x/-xpZp6,4B^h U O͗j_&cήL(ry;LC u5`2ǻ > |jۡNdG}__z5!.0ޥxn <[RW~['hy0|JM>^8u݃.;vg߼ciK 8* *[Q[pe:ăDo N߹ƫ;enz\/$S_-)=aֶBi~eԲ,%}.l8$-) @&SSN^Ԛ6]ж(eL_JDX=m5/Ψ%><_wsvG&9 UJMn{Or(Z:7{6ٌzC\q/! gW _ҦAt]6K|'a7qD p)qĉֆS!xӲ"&Mj`x{G.yg&,\tMSUݜ;~#ƈ/g䖮W)Y誰eo[/9Sתnj2BpPI[l 8hRbaL/:u/?VgKm֡g~5[ , XVQ0-lX ^N,r/JMƬ Dn@"vBH#w 񹡢+.V#[zK>@ET z`o0I /!b|' ?ɡ7N~/Xi޲<8]2pqi 1(.% .QyzsYI>XEڲ&ovVN"~E:cLϚ!Ag(-L"!,x"qr~YVH}_2BZ䦉&>M5}8xH}v!3&ERCxFw[(3/͝>)ZjT p%b_16MInݵ2'8mJ}+e# '~UB153ATftPͨn)*N_ˣUP{֌:-Q=pڥ9d,eW՗.ҁ*AxlXlT5/|V(?}f#R҆ x=InQ$?pDI4΄X]Յ口H3BޮJzY\TZ?0"v43AE*ZES*}-&[-}˄Ac}(&Bn'*4dҒ#nR ȟŘWq wk>2Ɩ4BQ[eEc /2Ӈ17E9Δ-e6T$ı)99AWum~-{X$χTՂxJOu2^%qD/˰nͅ3q| D0ú􎌖!ǰȷ# b풦,I/?Rڋ|KS <4E@n))pN]MUSH"}(M75bX`99mmmL2bj IU<ܻpyg -J#A+I1I*\(v^ .[ 32dzS&`rRj7fd;dua,ZrL1N!fb Rx{ö Wɉji ٖpKLNn)!i646N hCvλP{7Djwjȟh~cO^-9o (mui詪IL*)r`sl]M:)rFYbpo@>5?aé<>KۿSS*~0bDN5p\, nYw>41YFO 4˚J_pl-wkw]W ,ojN6o?Ybm҉NQ4,L f%ue.9O<#C5Uw?~+dn6e†?z Yl$|(߰86Kɳ$ (kC$;ۧGTo*ϙ Ӱ{X{=5/aK=1`MBz7hUo-vCKmņt@[^e9LЁ.ApLI1O0,ΩW߼C_^v{Ĝ!Du`_ݮ=0jYXn,BRnnA=زU+rʗ23T&LOVb*HH0_F?9og? fnH'^Y0="ؤ~ +O\A$4gq5UO e:eﵔP.fAO 0Gą2n#9y)$-$A@h(t;Dd}&}R}_EA-aPU>b,eXnyR- %\T8Y$WG[]$ XAJ_Rc:Y+@:1 %ּb lgyEP)Y8u+'sdAtWdȻ{|(蹵bOܶn)9dQq:#-YeǴ}7M8䪛D89ӟAO/[(xԘXYP>~M֟ L(PqRZiɜRwѡ\V񚱉Dҝ?-o#;6?v෗^-_$={>WF1 ֊0 woY6w݁=`ORۡ'>}a?=az+Y ߓk]B䰺Pv9`8u5RKL)51,HnbYH32E) |IEZwuDSo}tC~3#jGgڝzBfUfYi\#F#,6p jT֧h/wA?W6/gIW}A}\)]SF (y*}U- \R.9FZ$oqn>ǒW \(AH0`meM-_ױo?⃛e;+O/gJ"[B>3G_Nh 9" $GN_B}-r+7Ƭ0: :BrpILGֽۖm7-A9IȇGiTv 8&;ȡ%G7/lI\W3vo4}^vC9zoNǢ`.ڍ{܄:Iv\<4]vW1 ]-4?CX?8X!xp:WVg^5mQ,N e°ߌux˖ebHR} ӰFz%KN1@\ږ3F<"5wKGʭr(  Je\K_kƤIj=C3iw6P5_1  eY%5B#0}Meg&xe͆TY#Jåg1r'w_bIAЮZ pdH!125m Mhlh*>.pv=K3+cLkjiΒglkA`RURLZ*jM#"#yߌE#{O-:>~,TrM19$X(Y.a٩良#,q ٧MF,VRbԃhj; ,"+H+Y$̻yd ƾiX˝ٴѓ} f+*ʈ}0ӗ~1y_z>Wgu{:̅b͏L3Xfg=*e0NDj}ۈAe_ˢM>jmHQ3;Nʂ,v/5 pF[φ>=d{bOuMR--Cq gTAe4o{!K'9-c[x"*y>W\%ז, Q',O}NT ˁۭ(*(x`ؕUTcim}LSQm(XD=~=ے;>B rr. To$Uvp՜E-&PQMA"AMeY^7/h4azWb"CWbe[]t eE9C#.R5|R{;z6ARb8g~kT`@m-T귈jVŽTfrϑin4a!jUgb&&O(E)?#LEy) y?r:#K.d ()JH 9j'Rs`.㣊}&`xP`R2Cj2@=ۻ$jsJq 1&9Sm|KkwJjұb|-=TRؓV8ljefԿҶ`6v)M~j5bM,<}#[C&ZiLD.WY'V~}gCW4]v*@xIjp ƙ H3 JڋPdzԏ\Ov<ë8.$}+cuG/񷌼Ky6 SjQUު4bY -,/ƶ"zU $դC"2MDXo F9\ QwVw |O}2&O18;7k'6Ԡ$?A(9wS|0AT%ckj/\KvFI?N0>[5U4ҡb ( WՂ׶I7ow{'γA'D @q!/!:?~¥[u ;ahC=6>a??$D0?J,yhn-zC5^6|srQ^3H{&B0+;YTss\/κҊ+%OFUW7\66"fRM*3+@=/ jMcV?%PH< @@ha7 A FD=":1l h7I/G&:a(bj&A(ʋZ6YyHv5r~)VEEF=Zv656㊄L-ɦR2SB12_eC:0{W[&h{nu8#'HR7L4)Q0^yYPmczq I.|IKe+bsp(+ jjN#F + =@_"13j\/=a'mOii[ k)B["4?ߋ;_ʦ&A$0 A ~mb㪣_mU`:ޕ(HaM,-7i dl(1U°c:zCObN|Abݢ@s;M] 'ɪc2z}u M|Ӂ_G&U}%Hb¿K64ʨ?$26fȄj>Aw +ɞ)]Y?U@kP8@lJ3n} <00?m :A&s23KLI2FXrΕԉ mvJ8;d3_wK͕j/YvшRrR :1SU.]%dD2HKm/zͩٯsqd'E{_Ssh!)Kibp6ka\[ ߀uzԌ$CrnO<€)5h׆ (;(x̤u*ܴ1R({mR$[i<"5K6\ ƍ᳚E*c ڃ2hW*p/1GR'l]6^eHeZE% V,sR&$Sp'.q\ r[}X<93i/Dފxp2Hb\i|j۝v˔f[<y`r;\ڑįn:^i!vr, knPk}O,q -2AV2$OJx0#FBbTxhwJ<;q܃?rv-"s-%D@,BNjßosjmy!Lbr{lIv6#бKy[b/TzY,їNsN:^iOM! 56t1 X{ 2L;IK8c, #=Ay \7xqG 23pS# nWfv&.vɘyNd08syP)q#lm K](ǘv->8:k7%L8!z/;Gl9`wfAs$oCf8ޝ`砎ƻ *qKq-Gֻ"Sr7D^i. ZjL/B};8QB)=x*nU[^Zd <~:TZR%qrW@:4,Ou~ο5{W8R+ԍd"1KBaaa?W tf7p2f>ubL=Xw;E/L4c&ކ{6c4(veZ\\#zH9 ٗ<.4Y|Ϥn/BUׂD$K,&efzxjy'oޜ,uaq9F-It^,+~׆GrI;)C'be*Cm8!iwTƃ8Z !3˜n lJ*4:# y" ܔkaڟJX5kr]e{-lwP,*>fPxƗN/~JAMH%"2mg}#"b|A /:.o zoy/8cZԐ-f>_ߊƁC}a0E+jXVn$NV aD@~v%0) G)y?=[vkVm@3]S) $D<u*+cp/^H-Q+"m}Ei,QK,r1a  !4:_VP={QƂLؖݽ@xrs} ·7!ZU%s'])D. "({5E>pt7NydJ( iՊoPB5qh$ݒ/p.GMQaVٽyjJT)rŷ,#`drVY!-b\^ozu!itJtbZI},gH|`oM!NNNJ,1p91_1sQKǶ6wNTPU$mN ?a%JPGԲ8(%J5 qg>))9蛾G_;)%v8u@1Ԅ ,)Ϟ7Mا4H+zc<&eO#ОX ql.6mHPU-ϖ kz;L[>ѡ5 p(dV+wp ")GU*xq^͸b~MK Dy@g0#+ :wZ!c ] SLFk))dW-JK=y~JhŤ=cnH^I'f急P[!fZ5ՆF:fV eL7HOm޲6#x-ΎJHD}US`||Ad*=Im<P,6BY:L&\r&6Dp&ir)C(;4( 2$ew^=ERXދ%FEA6x¿Dp@agl0?"9}H=i[hgF7(1()ph P!:J2$N:?VSbkk6Ō'v6<y0a}!tAx3k׹D :u\=\ݛd^9/JN݃{ j8-B+ꆱ (iCɳ=+,oÅMSU JBH_˃Ut?=@ '3OoguV_䥫񫉠ER7CH E(T4JX50N-6|Bm(%g^F2i#<{dZv|YYWxςyeyz!J XBFq4.u@L $J|J* D+c~kƶ2495Ia̭t>n˿SLIdsIP(d<쏄wBjÒG¦Ե:n51ުT r4RE5~Pk3xoKrr-I_Zf,J"Eܐ׃:jr+NIk _;92$Dpኸ*xd YP!7% EY{.,b7w4IZYNttU˯k$;Q^u8Xn)*^ |TW7OZ̤^P(3Yt_NdA=wkC[E8I _:FBsyB̂YBc:U; 6ru>'X-T DT!!X`t%2Ϩ+a9o|uF#L;)̘_h[pb)O:1.{$@JeB_~wOL|zms ?9Ƽd1&|J9 񬭏o'p6YthKk4$M~u–,`V2H[ͪ`-\aNȥ -CL&uQo]̙GC- ^=i)Ď@grB5g\ޜTꎐJi8P]*(} b('0sQˋl08~%GTvDzq|6_H"KrIRXP[t{K4DZlEgaFN *u}Os g|@xX'!'(LWa3( uË<85B$@m ZݹsUa\G%!eADq[m uOZtnnzFY|@C.%N_<8.>{v)tl0hjA-#N~8u:xZ9uBQ7݃q@۾GMYa &fEjĤ!:y`:gU]҈[E#7֕ȡy}?wsf+: ~/=Ek\PƉ\Mm@SFiBE 8"].t7k=(poI1X%`M+4;x>bw1 %L:AU.6~lK$ݱ[tJ{WQk)Ep;SGem6|XBz|P) */Lq~4YH-әaV&)0cdN2^u4̩K,Ϯ~ (t9m܏YT7H|l:p$fݾ9]盤esSаGEė$>VcŽBu+Ά6s[)v˯˟k"Ѕ@aV8Jc`3j̧5KD{ˠkO<{Zz\1]if*FE  2DzS9TA*Vn/"FV/^:UKs|i';Zd;G 4){\^qhY6 D =gHG?pxQ>{=Fz=:=5dzȁ'SpS]98fudj/RH ;ɖ0yz8u5q95{#He"H@xԞ`d&(ZCu lo/d 8F_$/p2L߰&&z#>_u V4(guGp@\QE*:ZZ`œ\e`Йs 6iv9\3J9} lORs<<~"ߵ@N\)U5Gź\$y ''6a@h;Cf>d6TT3xg g Su\B|[0/~xϡ^g!}k[LIFn$5<VJ襻8(˰~Uڢ5h!E蒪{ޮuN\%f.O5*E`DwLbJ iW 9O9<578Q G:Ȝ2FP7`%jqϿ;;__&7.N1g!ax ֜`ibL]Z1N8o7@%챰DF(@pEIEJr8Uxxkf>mTW,`bO 2q0n& y1Y98=s({eI-YZ0p)^F6qpӆBrdǤUY։|@CFbL!Mo5j߹cΦ?j6| $\b!C&ohiq>Z%`@qG HgOи 1l:BF/d,& KR]kKڹݍش9" s#P_@b~/,]9kyS(d9HJ`fzs%`$z!u2M-d96q |#]Gi'G)1_[e3$!%M^Y;t2&AGۚ#?i)^|(/yk/7t Hiԅ#myh(;)BbpbF #L e 0Ǽ_Gr›xo- 5F|!k_GoTޙw) Mϊʢ *hC@4-;+I'GmKP*$QK4I)p\+/]N=w^n+fT 0![46$1`cº+KF-Fz(wZsہos@C+Α+ G_yVa:-PIp=™H=tvTp%+ZRKGj1'¤Ѯ[$?v'$7U!rRP"'Q#˩tեml&aL=X19+JljOJX0n-_^$xreL$"oST;9lT]/.qmG?b?R 2ԣ =r1Vto\f8vHV@ *܅䵶= 6l;Q`)hN<'U>EQC>eC>lt%h-c/O D1:nF' nG~L9C{u Iݗf"b]P.j’6Kαcf&QMǯ#%{XXS]m yO<<'꩎TDQN j{ nn{TB4W8DC(HeG:4E6InhРb׊WHH.$ۥb ]PUD'w&@TFEc3`D"}5e,T;Lϥ2֣pM#uKxQȤAB;dp@ ɕ#֑,2:qñv*Vۙ)TN[Żڜ\4~\6 i,qu{d_AX=gfFw}u?Ay!},..qDʜ1NV]qI}ηa~9"h o' i1,mQW,7tBXuvi%h!NL5֥wU"B՘=ҿGUʆX*T_o 菣֘ir;fkh! |};Y_R۾d\oc+_6N #c0e>iLi^v)y8阖iס{U7('=ufI$Q*̢iTO"bQ 50$ӯ;zCS86j?lMuVXBUh7b={˝YRc4H1B"=eׁ[FԠŶjm<65r'2<+)!WJye7^9 CT t4`/]|.sx{z, do'J0@8@GmO`%֛VJ:&h9p8wҥh ;C;+!'Xi`᪥kk sR-UCׄb fcS48Rs\ J 8Jec; !~mNәh RIzW- {IJlID;$T v%iƚTl?^XO-k/֖&bfZWDr0tJ;(6춫ZB`Ծ#D B\x$zUx)Iʦ籏^Wc+"0x=C0~qwfa1ǦX˅-%N%7?D؄_vTi)/WT C%S2b5߭a0@@>&|ơ@aSQ是^{HS;=W[ٷ9R\V-[2{L56[ls$`r*YFAUx`@`u,vSOǤAwFvo]IF~9MBn8jJYpqj|i T0W v >7ʘ;7ҊKC̞VR9[{U\UU_sZ_ӯϾtfPb$ N~hϠUघjE =r4t>w4fk}9~oGQ?:4.(2 pŠx22͈Tѽ[Mj-$T6ZkȄx.,qzN",TpyFrxb9{$t{ci\Vy GXF)a+!7ݪ^6yAă99PuX-A{A:%iwBJӝd`؁Tu'8}P)!ɟȫdkJՊrvIjAcB@mlH,a 0ݠi@BmL/f8Bd;4RTخ{ &[6OMw=V嗁/N%_ծWYE"\YxsQ"I 6^xD -0|2 FJ32`ޝ![{:*9:L).vq['ry͵p~ }B~mU愘hZ=@RK$5澨 g"D)>/SҬza<s]gc+raWTXGb 3y9V)[%Zԗ_nF;pnHx?}ʊ5?vehRRyn% <"rYc)5 K纷e1]'r޻fz+v?M-TUҒp}ooemt;͖٫UbǞҴ-ҳ;i޵r]wAZI| ktITIYDn!߄ wbu}*egB #ۢݛ@oDuE7SEjzKހU[zwF\(f%eط=vTZE:0=Ìe sWB>Cl䫟Y:hf}hsrG3 _==NXCAKB EL@u;2cd 80~4 ~ڿ^"sp5BMmXWv]ģ/2kA97!&WR;cTvy&ē# ~2=Y)50&tv07SI|nʇsOΆɵWX©L"8R^*$0{4X(fĽlMt#(L 1M}*8Ь$$(=.# {Bbj VdPR2nAM6u>6V4 V.x *U/!*E-PHyuZ_3xn$$I"V~ tG0RH%(`[kp7{΄qo&T [R9E)B=ɚ=-v , Y˶89ǡY'┆ 'ke1UA=g \$u]֍!֜,ViysR$r ˱>Pot^4 غ(xך?k$vt+l _V,faoW it5#,DWtIe;"jhxjz B6*D9R&e'&sՋ,qv! al.pvº6CFǭ+b*\$ z[S Do;b9DD\" "TǛK as2)"@y ͭ#i| jU_X=6C殎z*[nY Yc%zJi~E0I~*G!ӳk6r /DBm2|h";f1XTO!VMZ6yc(N)5fL = Q`iu'%z'&aZ =r-xZ΋5KjN檏u9-{J] kR@ Y&^֕S9z5A}h#Z`Yp{"Δv;Cĕ]y+198m !p\5 ;CձMN8֨٣B8G׺+lZ$~BGqQ"/cӌlYi; v5%J $!Vk1=HvHԱ2 Vg?Mg}7 :'C# m7,{D8Е޷tH 4>[ߦei2Ei{Լ](AQ7b~Ƅ7Ae:iNq/X>5Z; $*.}3--8 I&2]UH \a_|gS1eWhxB6.V0B hrH̢͐@۪-V׺]\WL>l7<ˋK%/Lf))fy.~cW!mjҨfXxTc͘Ϯ%\9ߠL &AV 1PW\6&#;Pȧ:@ϟ&jXI$CBb)b}7.( m]&)B >(, e^|k:` V/I]LAf`Q= F}X1,xh;-(mx 3qI7>LQ>j:U8(Pq>ll $S\= >똚ӸSrhٖn0Zrwb'bcsuc%u0H!.>]Cjr^[ݛW}3йdWbn&ULEqw%\t1U<-K"v-q{IIeTi5:2hAfs蒩8t4pמ*=B-RxP?pvA'{[p%G,64 Ka g>)mTk%hf17@ےN֢]̼/HUc?e8d.! t1_jQ_<83S;/?`==47=LB\ZNÂM,vJ[X'X6g(*V%b պM3#wSTqZ0c~ms*Pd }lio@@{12|B3_9nꥂ8eUhg(h٥讑IwIi䆞`4H=ɭk2`>C>0TwKA7 @2e촑qjeig#ܼPÃ5v1d6ؿFhSDrEҭXAۊZУѪQwdzavGٖYrK1i[+E~/_܉Þ  BfmΏ*5[:]5`'`>uOεN%;OfQ{I]Ldeyx2U[^$6vXy_1^ 4,aaP Ulˣ T׽jTW)m%8,8Sb[WP,L Ʊ Bgi0wG\YtGe3\K䤄#j: KN2f:鈱쌹jӋ} &eœIƀ)hb9X IzoucYJ#%oaw+bSn)\g,p#X=86f!LT?`ny&lѰ`O( E'zb8cfZ1oG m|I~& # En뀋~q&j:)!nt.[V0Bvhq^kLu#< cS`Jk\38ǗKKJLTtoQ2T?9Twy1Z~ A\w@ͬjWb 6a-}E ww=a GZfG!y~/`]Zie(irOQ/Zl!Hm5õ-B$TC)N-@>=JeD"E,ol,ĝXDr: |8eӉ@##Hk]e{Ee øiȈ}J9r l9<ѡ'{})fldKӿaȰ4%j;1+e菱E#$Õ 0*AHЄ,oO~{7d`°=k3J[69۩3h+PM#¦  ˶vaB KP*~XbZlʩkimPZ,asچKK$4cd=}#"PH=2>R:b͟$2ޚ׻3B Ni/^?$& GkhBYnhJu k-\ ]|DTGh;fi6! Jay6ѵK 0nt} P.d|EqTY\&~9'=tC=η՗hr[ǐqg'#`KP\x>` Zu RV4 aKH_'C S0n ҋ`HLyfu.e,>seC@$gq=C/-=op"쉊+َy!ŏQ!NIʐ4t S̵RvB9AV\eUZ9Ⱥ;ɴ%[ _غEp ߞ$` V\|,.PfE>M҉|ItCY1@Ј`CEa=soq >܊Z}d+F <"8 3:d2 g0'z'fwI^BjF[Wla90=DQ^F<K(R,U.YA]7TgSq(h,Bi_QnkH^Hx]qz3;Lv p} {v&Fʍ"ao0@ھ(q+dšb3٭tLEt*[1k LF(0AiJb$Bʩ'`M{@O舗`stᇆ=Hۋ)K) zzafJmv^z4v9WWE\OyA%6!$* k=|C7Foi *'|q'^Nu9 DwZgd>!}znʅ4{7LsoN6nE8ҌqFMv9#KhWxZZe g)Y;y)YVxG &jHYZJs^o @~xt uJw5T 5褽72hCb=GĒ [}UU HrK'Mvf)>-~)P'ٙV0+cB Q3v6ӆ#x5pv#.[]F8IɌTR'fW~@ވ1>r<~Ώt,Pz9n̯V$%ȶ]y2)_4k41q#5Z!r"i?#Ã74UT`ߛ`n-FimS5ӏyAg&KNmKtP!Q4e0}_O;rK\<\qy UQJlr6mCθUl JEF I4џ1uz̨j*VB{ďOT6`eX9=Ac`7I&~x!ɓLKׂFv>i>Dٔle z7 YHHc,w&4odQԪ+ǰ #+P}h8c$vwlЊq~հvĭ8$]Ep5Y.XC l0{ Մ/M>WLU)uT3i_Uz|Ih")bZ%Heo|SZN'yj ݽ=oЙ#REw-9PwэÉwu~1sW*f5<w-(qNpk bYETf{pV{|(f{OR6#4l/rXf%02iͻ+!pnDlj.[mBKj pgwƏ[JoUTg6>G FOאa'ai"'<8ZJi|0/XYGSZc&bk\JWLTGj!ijEL WS;!86W`U>:l:`ܙqa;~32yQfeoy4 [1\1'Y8Q/߃PgE$3񅈤pcx̵ :|@n{al^t#<`S*%yP(kFkWt1:`$xb ^Sݿ A2/3cY74>a %;f5;K^~ `oѹU)ފҷWt8$cվYa{ͅa/`4Fq҆Ʋ&z4:q]t. k_2B2V25.Qb= Y/٠/ -_00ئ&e I,KXublVS7nɄGf[DL*}cWQ(/(YH yMoap7ayE+X-.0JdHUi O `M%[&sђg1-F˿9sVݞ <S}1BϤ9漼ɂS2@eSx@uhZ!:35haۅq^Hyklf9liBһS˽)a$g쉥8!Wq%I^J@WW{,E`cE8Q.M#@"n08j~Gˌ -%bK(]8+:dOU>3^KD`4ViķW=N|X4wV _hUy噫3g3>K=IإYMibz_Z9g@#\l?Uwal2K a5@;C~5[Sȷ{RV?dYWחYo"啭*#8*gcު9 /ۣ$(+a(W҂I}0-_Ycnqtt5K@˜轠`Ch+7P>tkEKV_Nd\Ї]dZ,oJ@[1l) L31?OMJE8ά 2 !wuT HM~jvn/%u٬a{_.HN KXJRB;gAnl593mA'f@\y:3E t@J*ilD+S]0fBe23%c=VWyeP6kj=&yJ";KS6mx&h`z[T 7!E \шYu@E+q>2fqʿb[nHS ꢫ䑌_1n-.t!w>_6[m{ǢC/=KxU:ibc^d|bzV>T(fd wYm%AQ;+#|њp{כpP**I[G'I%4Mp;P>4 =L7?nx9mxڒ-یŧZ&y#”2C ۟&'>i7F>(WHT(4RfSS`*+kd 㚮& }Q,) W*xP9{x uOx\@ԻF͂ABPYzz$?F\|BV!V,>-*^35a\`aXJ@vsoP^AJ5(4^{z+ζVeH N,K6aOH D~׌9f0#rvж8;JHlP2w$n}`A3fE$% DCfs$'WvI҇;<˥0/7-My+OW/h4ƸМd>K- D)L6w?mqTe$v65AF.ؑ-5>+`~[ӧUzPpca-H-N􎯱Lk"B~\ޞ{?hcXUXNI&Ր>d80\"4{F6}xN8 + =K20H#rgMvwS9m"N6 I#\56@hY.Z_)D7+$+ 8+&!AsMl[<̎fǼBԘt/(C~O?h ^:m]z P']rݥ5ʉgHJ^C?Jz PnhQ=৘ fjy]C͌ ,6fo!fC8⡹DaF6z/] ߣ2(5Tmm up8Q|ZsjF-u"'4\dfX?P5~ل+1Q/7nc2: ZѺnN ] iO.w,?5:Yn;A^;sTSi2Oj +@̀ P3볫x׷f8M8Ʉbm.JA5Įq@.22@]\'?⛃qrX!]؃bЇ |^68 $ ]Aa!$Ʌ y(yt#>7(_xB @"gK- CArdPX%\Rd#m5ALH#خx (׵O:Ǚc^ѿ$0aPğk=?OQd2֫dtৗ-48~r826bH-V(dnrO(⨅fUϿ ϊauX#< ̔!qX Vnf∊* EMv R7F!0ޭ2yV5$č/v "}-ldI(#:# v ).…BJ~>{cK1S *rIW,&|PP+umbq'I50np҅I _Nw}VG=xFýdWޏK7wxRqlIi۾W\>!YLn$wtO6۹,.hh~YNiHnQk+ r\Js6P/ X@b{L PXv:;+:L٫[:FB7l~RH7!A+,Z젶n;Nb jZHxe.l[X|eqڥ~SOTͮb_}Ə+nlO3.0P ˦tE'u6jJFkd0vҏa{aE_QQߚ2uNW#? &|VD\X^cD#H̀et8Hq%)_?z'`_ZNMgMfmfacKD.T,]!^ "iZ,J*4ފ;$ JjVV[=E)DC3@ L&9ƍÉþPXfˈ6~LSg|N=#Xz4gvO>X+KzuXҙ/M9u{)Mm9ַ'Z"$Ws*2sٛel,CW͙ζ?Z;EUa2H5f8DLkWA PArNrZ9H 䒙_Q^rYPQJ >XaZ oVVϷm18Ą551ik$G s&j-5sdq q s$ysPjaKN;䩄޲)*]\=Ai<]k CU3;7ޯ'XZFչ7/R~t WipI8$㊔OtL֜4$"1Q>Y ެt e5}ƽ$TJG k1- ͳP)21„Y 'Ǹ0*nsY4'(A'tҠN GlhT R`ݧ5@ؗgA3o{fZI29=^D[^Vl$uXl<[+K &~ ,DtsV1PK#REh~k&0@&C~$dQIAz[Nv ~PHsi*]=@-I' cAy`{:L*dДo,{ t˷MTKՎmUyƠZ(x"'Dmxw#CѲuGȨA0/BNql,3DtﶴS}Jb;4Qk٤9j5XĩJ ~O[E=jvS5b+ѢKIJ VLIk"4ubyHZ}uǨܸ1x#9 4 XOb(çȽ+f\a@ۘ`I[i_X7S}Yޥ5]aP̯54ҟ|Vw%) Хu2"j0Lԅ /4 )}j+$XT5g UWF Q:;|L=8*-uwe̗^SJ2&%f {aZi.sgqg3{jd=R%C2;ROÞۙjG vRdЄ;z>e6ЫKUPb7uwh>%A0OPBG~u &J߅u{W6y&_6mqBFGJI&t_}Mb5[P\־+8j:4IGt: ZT&j3La'Mt]BC^4>܀ W$l]v$o >lrEci6+i4;u7tY g}2(dg{ e xbhO^d4Kbp eRp/m䮤+@'Q{\druIq婜4n4ZaD^",;끤ؑ|ՄCRfUXu3m\ !b[Ǜ.g K&*CC }m(ĵ&)V~  XB*E nr/O~J!Fl7<pm$0I;=:aF"󝊿3NI%łECM]YrƂ Z% 3F%Q(O'Ts冿=8*#=+ 8̺m𰦺B޳dJ;eSUQ) *1cK1\閅Q"75H唛GjbA-I CʉI9gIO8P?ivgWwΪ,.Q,EMbw{= ol&^4&Mze^|c=Aw0`0Ls{κWNY޹-)u暕HD`4s9e LcBvN?{̉Bd Zfo^|dj $:71/{IEmnXHp\UbMhoqΜF"9Mx0zӅ)-; l/0rH FXrKu=蛔OI b9WNbQ)V1A=O5=.5Jj J&6Ff{8 ipmN> ̛& [<fKx$iǮp%ap'=$cW}wc0Ι;^uf:2N?RqYve}@k~b?,N/!|9`%\^.rjo6\ЈJcjmDRt-ss>|Sb.{79iW=kղ,^*ιZ/@Xl5`%Ɠz o2BAS=%=z.1ڻ~{Xyw_ݳz[h+Q?Lz;SyЧ%˜ߪ{_s AR5͚>GR?%?R 4(FolihN{4 rb9jʠE@rR(oſ 1gUQ^E2 s6mzA;QSϙ_xH*@&%b/`Ư>Kla깢al3%(z͈c݊g0b2drBݨjM}-u6Rv.&/xSD!&3:FO4 :vo:{EjY? |* 3;B|ޡ`GEA>p#܆%>p;@pOk(s$L?1lQ%q9%w ` ;>@ TyYf\ߺS@h_wzɩf `jlMS87?,K]C ߸wLAwL Ǖgfbh%AX ;cbR 픈1Qv J\ʎp#Xb51q'Iwuj07Jp]^P2U!?"~U.cVRʺ֥3][*2! <3Y=H:i1BCi%V Kzd6+opv[~WpcA} >=*u1auQ,?I Lin>AH}YtMgZ_Un0*_c(CjnOoz}r"!vm᫂HմTdVlH2}|=")[Z}|$|P ``K2>ڀudÝ᪍(|HaDs /`B϶UU}ARۡ ,ams+q#?)C—m̪ݢP}+7tPȓ[l H'~ŢxD@[x46j1N̜Ӣ*ֹ$'z'&n Pn<;ҽ֊ #Kd TY_{T@7 ,OYy8H+mNl3 K=DLPЮQ Yl4v){ xT޷ځ@'└S~1H!K_osjl9й?e<12Lg!bג$zִﷃX7#*S~>IL<;~ CvO9&W X$hY㍝{qҩq%:xn "G/p!윫UzY>'۲{X).`k6ѧ'!$\kQ4f2`I@nKuPVM{kz} bJH x[|F<4*Sw2ҽ{j<'\7wMDmqX4]/A]^+zOvUֻ&r׳ UZ* 2E؀(I/'چle$@Ak1WȅIC26A+N&ʠ[D8rwD"K.4lE E']yI_C$򑅒%-mصTW8X9N(/f[y#l`ꦴNHK\u1t,`dx"hV{s/*|mU2JyHY#r ݢ_z+BvM@ڍ30x(*#h сM;!&BSj=ϯJYXY!`B|DUI,HF#c5mph|"ӁĹߜi.~]‘xؽ( 5WS'vP8H؆xN"Y[yUΦ,q٠qzܢ}S w~U#W6`*kWmf`VEu$[ rAKb21)B,.[ݧ/ *:lB[C1G3*I@*,A~IVt[}'pvK 0[(l6tT1O*+1OqnӹZĸo*n~_ A <] ػH ;8lx<6~h@ ue}a`au-c# L >_Y rcz#K7 n }HF)MBn0Y- bȭ3{2z<!nB8Dk.U ~͑=6e2"睞2OT7f]Avfh io\?̪A Ӳ-ȄXv=v%IY;Wm(trt;C?H6]ץMN Pڅb's<)nL38=)fw͂W:UL쥃G0Mn.$hSmyR@``13@6 ]];Bܗȶg-4&#T`حv0M־0a]'_RzGJwA Wh>pmx%O sa$!c >xcd6Go _sW lPt2դ *L1-^f>L˰z^ ~9pp|NLRg$te1>Q]m5U'ؑH7?:Nݾ)lyužYУgkBkn+\P u^' 0I`t@N_[\JT1:g|ݫ06npnT2.q]#H7(|5W/ [Ver`1^Fl}1 6:/S0({TPL(6Nz.|F@({i^:Oh(GlDX[E8s.X^89𲊮n X$>mcG+BK`~`EC킠oh.ԳsoKi,1glPt_DC_$YUMsβBh85r;D BmauMSݪ+ xFV0dMZקұM+$*5%TY0)/IX Vp9R4kBo`d[(+zJAkqF &54iEZfshdէ]27}0'G)U@gJm=LM>U;2Ƚ}G76;˼sJMVzHb> J3KO]\FkZ| El!pgy(Q+q@QI}R%[T;DM{j`^L%%=]> L_HZқˬ3qߕ@Z:6 `6G99GɎULye3UY|WKhGtE\^ E}4[+F[)\qɑAz#5 W ( aWXwOov]7 n_v)` Jo1F#͞6^/p\s_7ZajSS|4M1->Wzor_F&!^8fWppHc`VˤO=b:XyI7I]t53kl܋iEƆMpFiH acQycL_2nh@dI SY'E pqnY'fgb:QO5h A:k8 >pɠ p_\Sb`fUBQpaWw/.f¿y\'-)]a5_幖9K*+XwWCMm LµΗ%\CFldnMJ|:I!MS<%0P,fYHňx註i/f8,VKhCydp.aRZ[.LcrY_SN+YA3v =nDk%jAO"j zfؙ-}&ػLBilpqPg־#S|AƲ 5}\%yٜXJw[[vADPʩzxoVsx`.)I2paM( =FeOƅT2OoW7vbO 嗏*z*  `U;%k)5L x3?OXOb܇4~dPU2A; ]WԈ"Ԯ|q3v^h"%]~W14ρX [qj+?S=["Wqї,vӗ^AztX!B%~yyOZhBh%#*` V08%H 9#*'pY-$ջ÷pD\S$zQL"nS (b` 6mS>V*={CifW\lԤuUp @ʚ!(e|"@;.hM%kn/װ!g4'83Uz i0|\+j c vNeJ"uۙ3G {H&a9xI%FG w8Cb0Haˣ3MrTƝ!gQ+1lYqZ;< oiECdl^[r :Y_P:H{Pp'-xCjgN#lF>+3O;/0b6mWe5<8fe1[gOm[|Q\awߣkW#{Sgoq;,9f,{(-qĵcB $'z?r3վ/uN_׽eA<H#vMXfʵ$O+Uy{OeEDhivt6)5]T->. 7n69صhV wxWYv `Iڜ R3[-t|tmB ~" n ,tTt{woI:%F8'Ԡȭ㊒ܮR]$^r5SR9qW]cTrRXc#U|4~]5KpMZT?­/9UΚ)grv2)Iԫ|oHFom٫]D{=xm@&Dq]DG }'q&9bsD@4^MsPL<%ٴ`h]8?mϑ0ߑ4x->ȣ"ދYUx|X*Y;=<#?L} D(}+.l E\J-AAJWͨZ9<9;>t`=7Ǐ?4ЍYn;h`!V`n D;?b~aN]LU6$m.*.L5ރ3EmgWf>{n%3݌OM*!7[dNpFuVs^h+z̅y(4;cX"gYqf]y$JLLϘѳ*CBf)>ŗteLGmdf,"Eo+x Q+63[~(<]lBDil$8]JF 62Chꢶ3 whh[ `r1q r?(yl&ʼnŸ6VQRfixrroqa&w`H>AtU 6 OHT"DE0\qSe;QL AGlM D?Gw!+ S *Ke9sSc2cF%נhURSVr(_a)1BhC^ "xFA^70n@pM1/%;_[4։$`!1Z` ȁ9k~/2#B**4#F/Muqn#}~y.L=3r&`҇g.[LsdУHa໌Tv8.ITܻw}7 AܥL)+T-lo[XS$9o x a @!?96x':6e~Jq`\Xa09"MOz}eL^у,SZESHj$X@nM,QM *ePl/U[~st8v+ɝ&z@l ys/TӚ0>e#z1REѿN&z7DNpsQuP`u\ nGO%}3r9b4VP52uQtf-ϫXJ$Um K0"K}"O Z hݤwtE0˘kYn{`aRI-@ŗ CQDI3)˶DDIn,,KRd݀k_h-&%_GZg9`c>+1ْednDXڄV{ΰ꧱wmsBT#df6o/([_xd\%niӶYz Yv1M7'| KJ -y7i8gK '+ -vV1.ҫdj{g=)aŒЏ g4 jkHf4Y }LRZ >+:5LN=a>137@;mw /C-'U7wDObOGˋ^N}6ele`8=bPaS Hy:!s=jn{;o|vҙ[͜)A U5J|4GH=`/] x;L"GH\|I0K#:z.5 MqUCUpˈBQCkl k ?X _\0tPo$k+LUGnY>wI|8ꭓv"u]t7 ,ʤ#āc"Pľ!"2!}OX57I4uIx٫b<E3+ZE/ -(1T;9aRX5ad-7kSԭ\8RVR ߃`Abg,ގQL’s1|Yx‰tǬӶSjW<B:1Ź?$(g4vóR];YYAO+<Z4ލ~Wgn'hnm SCjd\w/" 0OX⤾yD2mx.p9 { &>i gI $@]ٺԽ'Y25B[iћ^πiɘ8Zz` `cx9: ˖4"7e?܀n7(N9;b/W}΄ tkf}=)ZBPl8 ~!vUz87Dm: PWxfxtX*J7ANѡJpA> ¹[Vyx~xKoT0\㐘9J2$5&}}ve;! (UᝠQ.>G{i'"Ս}~R5u[7%d2oiIkl䄗<{8n& 3Pn7$C\rW$~Zi +3ėP I+Ocf/;s$e|+p:Mar[\75ɜ˓FJ|Y4#%qcd}SW"R\ 2$ k8ާGIp)ဓnf_?.{5?UyM95HK[)4M,򥛁*?"Mc3{3Cblwi3QJ( EwKeH!dzD .{2|K+Jm"搢{vIX :GM=C?2i=n]iOfNSbys R!ajUy4uW(VCݖN╉6/9ipߙ2;wV<_oP1W)gz+ڴ|ndКä[Zs/+Բac0ƒ 0~(h֘ڡJ1k+]͋-vL.QcQ L,5s6ڣeد6ݗ dOēI2$BQ\}IS3<۪b: *'(?T 2l& uܠ6G-0\Ezzɐ[ρ&'vyNXwry>+2H\ff\pS)d^E`#x!6+?]>hKJqZW9ٌU:dB Do|7<8"H?vw3I GSLR+礇=,4PFjRlOv iPhKu2LXOj5xǑSfl+P =<>ocL@.bQewX2K֢k *e]Ěv6Mj zh+! [~؂]V Y#j}FZY>0Wh|Mq)AIwZF>)T~C@,!Z^DQtOr/1 *R92C|K%Ql PD8J`=}~q)Ŋ;KgXUB Jm?Ezu=$MS΁hQ>>}& AԒ<-50t} -Dc<s)(#kkgK>Q١ץԔO 5a3N4#5)k69#X\Z1{rlSg#3VP |j nDž 5xd)TU>.MA+Dؙ#,jhod xْS_Z#Zd\H'~דQj? j˳SZ}B1-.cl0q6'C5wE*ՏP<8/CQVN`4e6!6tF(tng<0L,hfU#њGOٽd`,{{~,'$b TiM9рuPӣD.n%ibiBAJ7(rE6˜:QO 5>3k (?BƬ!}rյn~lK әpbYRas+LRi1ɀ·ԛϮQ[ђ\YY"m@E[/:Ԭ3CeQ^#>Nڊi~?-%$U a=cch@& Y1diD-.ߦi(w'H b&>qWqG;l-`L%ЉFn?[&PZ5,/sf*U켉Ҟ2)VUu]@MZQ'."V4R$ջߩD6 g]lxm3ӑ JO܄R. mE ,n֛w:K(tk!Z+ yoDdeKj¾;7ڃCy{J0ĝ+RX4Eޜͱ  :vK!` [1L/45O 2~Kau4De|Qj(k[(AQA&1]cz+XN=I9gpj a"FOKLcyF+eXeҖ̩tCll%\7%sx`D95.'SV74*kgZ4 ҈T)"5_$r>e/pGʁ26^GIy1:X=E9MΗ72 &}E ptoyy*:!-_~S4ᅎ-2 &fJurz\ڤ0qLvQS7Y~\B>ങ{$$ݭF.G?1Ӡ>#lP+;mEZߡ$4nq.ܪ Cnn&(F~TJkGw,h{cHg=BZfTFtAsHj[œ=WcWp|%1Ā,7A/~c,MA}NG> eSA+.IRu`ܚҌ/O2΢I) xJbUE'gJehg"o2uCg2Ve@V&d9h-;G8 Rl|0!b6{T Xھr tD O!Z,1*@ {2&t6# /N3ykҎt:BwT^ \QlApiT!);.}sBVJDTV`d4ȦǂP m2\WfV6fn+"Ĉ|>bQ^&j1A,:M vMN>#k$S ^fǣ͎ĄA^=@miĿkk? CZ$Z[fY.%ѥ#(S0Iq?AlgK)&ì# Gip?RMi1իnāǛ] F ]/i֙BnIۚA?W$/jӜC[f Oba~d1_GOo ˟?hF@V||qRs"DxP81'3Lf3!WaC.g<5}W[ڭ.+T8ELIȀιeu A=w7'?[XŠ/jxoP4$f6w~C,Gw:G$8vi6t 0M5hwTXWժn .  T 犄:nWh蘦AJ)nGĹ`}G)1(:=fvY? rf8KĿR#my zK:u̫hx׊DD/Zjxbry*x ~𿮐PzL0:;)/BSnReX~`$ '٦}/[C8 w.H~L^7ufwN͎=zkL?Īl.pm3s4Z-/ OELӱl!hoBʳ7YgDm:SǠ라_`/Cl&p4 nzo 3G&,SSݾG-4 jij8or(s}s^(Ws,a]|;PAFޝνRO-bA5ǓL U\.T_by%D䣃,LRE‚P:sXnZ~NZt/sQ"Z2,ha}TʄXxzBC{lӟ0\jxoNg~I^_ti!'#{fViŮܫ;ɰ_iORy쪣Dʰ]ES;e QNPv^st~~54ҊXq~+z%*txQE[!^ʟG\(Md$(nQ2wXw]| Uxj[꟠ h٠E^IF)KX@S+X{jT~HE*tKxzЛ~9f ;D0:e]`fw=8 ;=4.VV;l2m`N.2g*-:vԌ0$;gsXŞEL/4X oXGS &ܶQwD2D%w[{[4|S9 -g#҂뀧-ܙZUO=ٝ6ʹ-O[Oc sOE$n [*d}'x0/bu}ЮYWb4ç  r[UpdG ,I&@dC#?CU4;5&WA L|BUls>V7jk qTdhxOo Fz>ڃ/7=c}iX;P&h,ю?p<R+S EvnXFH+Ze+ wn'I;&|Co=/歴Fr*%ٰ2 ڜjg=iuy}1\ &..~S]H+ŰlV>f/13"!HJwtwW8A4 wyW<2׿qg0 ̑(6cEN#}!蜕[rKgu*]Z+; vG]]3'J\roL.k_smgJk#H#C`n@~N?pM-h@^@QvTW zhș_F%A341y#<׵fa[ ]|9O}Ɣtzo%Tҋ.A(H$c#vuDRXoEP>P.>:I.E98E߄MՓ|`"]$$, Bg%G'Ejk86,&PhyFu йg=@aYilliSK?•;z?w{6]pcEMal0!iY!ZO)*msOvr@dJ}vygU[FF,(j4wѺ@ಣeX_r'HA P\-q^pBn uF%vez'5 {_d!,* ؿh_p>K6L}p.nz}a2S6bcV l)EqfJm!s,q=x.ʟ4&}sN$j_q}FL55#pBPMlot t3 5ص6gSAUkjodI.|b<ݔ8+{@Th \0~?AI'qhaQGY<|n&&흸Ew*=EX'W9v&q)ˊ?w;A&X!qFO`ԛ.a&ѐMcVnUo*K0OvzrD$#+q,tÿE5i3?d)F̰>\rgb-D^M{7~ ԫakKSiC-I@`q̾qϮVRrPezyd@D;l3s'$X&c2pJ$|P JVRq!FZ$Fx||NHzSMCK/%V TJZ)z#޻L@f$ׂdID}Bx0Xau+>>W6 N]~?*InhL|,cO)WvēicIk`}}ڐ(N[-U2; +I xL7b ކ)V>H p3A׼kB}?ݤb3xi^!7sΒJk4R U|Q*k !Thݺ&w#Wv6B§ FhZ5ci9H'bKt۵㕒)d Nֆmm/⽀DoX RV*Zxy:U5|6?uJoR+>i]aG-?[xX}#EaqAw{ U αh&H/1 Q2V6t]$Gb"IGx$VS63~Iވ{P܁~O!fXɜaҰ}]tg4nUd~4>)ev2G^i P~ :5~쭢'1R\ܕ&1Ypk  3Q6h5f-nF(9yOGES@1XyUHdlf j9`3ܩ8xJEHD ] U\\bxӀ=Þy// (}K%<.pfC&u3+~bP:[.L8EI? xl {fq6栒75^![DNz|Kp9!Wj>4 nǺWrfP`&"&]8om3?혇 NċhpbJt踂t-EJEmp ^K^Q,$1\Rg,vs(Xvnfn(TLSJmO{AuYz:J`eNu |(sU9-k8YbV{ (3, ayw@v>f͟^}~H9UT6S;ãqTSESJAX 755]A&_heW|)ܝ\B㜋Ih*e$F#뀝Žno`:dKCgШyH| Ճ1D S}*e ="/ԊczgE?I|.= z@=rD c(L2, 7*@k]U1&c3=rDx@5LGzڝ.R6/(Zo>Vp3e$.qʹxEju߽Iߩ0=}{A3ouR$d;E)Vqzp ifc %-z^pbb8|jG= FN!\5^j\tyWW03.BK c;Lk͸ e*y$qZ o}DaJOA{z"J8 /O -uǏKK!F=UR ^b}M:9cQn =u{!k&_Tb4T%WڪK}"}\V(,kʔrTBqEq1[(d4#m>"?ꆿA޳E VXLQ2v-}Q4efrL+K2[@;YoYWn] ].zRR"&] v ڨe3@WtU%3`ڊF߳L)yuòrT,Q7Wiĵ5P,Vh)^~XVJsI$gT27< 7AtǾimn R/jQmXjm//0DO/Snٵɜ0dqzl L_(tIփFR,/l-XJE uNS^= lf#dm7z|5GwpfȚ4[Mm:~[SG=B%殷h#%cMQUߌKert^;$Yᦅw;m ]6N),wv4P˦p.(r[ї*SdyVlsaeI[x8@hO^Mq%@・&bM?Cv5Rdj--[Uj`*7OgGmL[>XOu߹>Mb/;a\)R+s}276fdc<27=Nbx, 0} FI;8y<-`%xT)Ϡ\&[EHOG'Z|D0,.)bד83 LI!lpi%d9ApY?b #~~i|6`BLMhFSceJ"$ SD+[ Xn<> 逌CXLC5yU(Ah?gA . K+`G+_g8}/f,8f8hRX):yt!{ 9XW_BZ d'vUQʽŒY~=3#pe#L.~\a"wElU6}yEpӆ/1 /kj`aJ)pރaNq*k=~5w+70 kX8w {z 7뵓0pQ;=b!v_[ F (TILK$lHuQYjRYUyw¸ ͤNi#Vc49ٚ o&Xg).Ig)cՋ.\!^ (v_M#9 5-<vV;HZO 1ybb_1#tUxLѾ:8?'3x39)3әU..'3 ؆e *hle]9h8Hdi=Tv]$uy\*hI _8/@(&sT]2u~W۵5~zmQFzbl|,z5+'/x7Qܞ<֭p#\#?wS[O|'A|C4HW@JA>QV UNE@RX BiAFձti,^qq(r<4O>qj #,v5qEf(߬C>p2H\[uG+cO?o 2 K'z"ahyzKc %2 @x=9SԐ(fK4cd/ĤBC4h|C+jj5ƶ'hka`W6j"~v,lv#ڶUʡS$ GeL jQ1q qSǿXZN !=lvS91Q_aMqc•=RG6gVV茧Gg7]ؤvg[bJ Qh/m(F)dFl*c-~6ԫeYxwU/:sr5xXd_(MuvLecN<2vP`dh`DJ5O!#t9eDdʭm1^l$ICݨm!ꨍp<0f-:)77\I,,ش|o 4#"B ``l4󇁲9{P?kq\25}434v.4҅8JLoo!;tgyt'ܚ%(nz|l<𫌱)ThO,X~W BŲ`~ gp7 @ѭ@ @Iӟ{Z&S4tn^|AWsRa1 d"tA^,v Yؔy矣'!Ǻ(00M3j#gR4n[eߦX㷕?y>9HvUS2[5}!ldÏ2FI}]ώ=sp}.a7㗶F|')q#iƼ K&J^_hur@.W -Y~P?~v"6tF5V֙ )Jxjyma|j>\{QHG98ܥ?`{~̿yC@ޠ"Sי5a(@I>xBoKHfX!Xdy 4>#)sL.v#OH@֗Ș'kCLaWFfܟo;ČƋtƤ{~8‡+O,9K40?U/뒣hIߛ=F MpedzU]w c#Yvu8rq8d'wa_:oZ4);cߒW%v Q#ϗhbb8"ܑ~'HK֑GvסYl?L%AA"yuJY9bW>T4qJbv^ĮyT Vi8z$DYL;?" Ld»*w9KI{{gK?u- B0$ %,w a6}̤c+uAvq^P(VKQ"| ,׏{R$s|a P"d;-&Y$!h@xW;h}b9]C3<\?CZtOc<omy[_>GW\}Û-&8NgHQ?De!WT#<2,ox+Cܞ:3biAOku iu8!:YsnTIp$Uښ׶flR>?o.K3b3>3ylbc{Dt&ϱY_Še8Ja\ENbZ= $tf?h7wC)c Wxwu`ͤnzI3Zj.;{sNԽdژ$2W/_?|*^q? 3Y6zgwCOr`1&S3h]1>?=UE6`;x]Ei/Cu2e|X;*zP|4eJRUhHVƅ¾.X41`#XٌHKzj?jr&@J3hB:_w궞OsN(oT#=VphQkM%J>E(%WoH0NL,>sW4m Fv#Ode) cw"-p}@.&دҘzLK=652ҜwPm#LK5f:s*qkhh 9;Jĕ%R&GZ~W}.(Jd=F*ne^{TF IV;;=y[^/L>&7F(G(TjRctݦ'Wk5$mX Tʵ{o*֪2vsU`T{X]n  R3CEn~kgwEr jn#ߋVlx86UVo>;`qcu0H }OƣH{êV_LIؿnS W`6Fnbna;n-ÖUvZUCƦ"-4 װ[ĕع̳+CwxУmmN?}'-Ci9 (:Y4 oY/mVMfK4v֝{|vEǣr#S<9&br(8#a1b~nԬA'/pQ>}R#OQgϖS0찥Z's/XAפYWFjmP=p!gӇ؅IPf*673YS9@P&ȑ`?{x-<.͍ZhX]1WSbr߿!T:%G-Zeݯ+CTr4|zyp[ #;*Lˎ<)bguB//׫m[}r9zzDIuHzyoJ D'rNyO+fl,S!e6aY㉏Ƙ VOAi3d[^ JQ3+[a{9fEʃL+ώKl=^jLA4g{_ +"NH6&BJ@jbYh'?qod@QaS?Nqcj ^<`lzLGDH -}UKD䚊DlG%[+|}E6u_$&׳pLE8 ‘`Ob^єUnʶ*R7?ke|o1b;}ړNƳ`|2{ g`bhOtڬu)pT)]f5W[S8O+ϕjgC&nmͦ͞IZWwItFz7 1]OWvV0ҁ}U\Y@=g 7c8T8V,1[B趇) T2Hw趁ty*Sɒ М ],O@ daSSZk^oW: Z?%8V(< un|U=ʸW2=d1Զyk~v4$ܩy&`9z EBce0@!+I[{_+/aSo0cr(زw `ӯeq hy0C(5ix*VH3! GEh즇`;ݢʩ,vʉ_^UkȪL\J:c< n:ȴ{ ZYB>s6ܵI`+Q<ـVx;>c*F UYIG:&F^,@P~CDm('huD?h d4c,Q鈊NX%fBt.HSjy# M2仫!DRLu,&?h:h=qh4 o3#%jdGÚQJLW/Qj^怨6Me@# 7V}~^H4Q\2 ޓ)_TS<`oY=| 2N{,r#B=B`,LNପT.O[C A֖W qdTŖdn-."Wsf[ v 8u$r@rGK!ruB\ nY1Av{@"`Ș84N$Hh^}%6F^'cw :1@B> Z]F&V%c@Jt@x@WUkWrQϔ^d:Xd(EU7İU7v޲ki-"<웩ld(>n,U#cY.ydx^ |iy;ba)pk}|b*wv: -UR u#JքÐCb<-?Ɔ }ovcV !$Yeߙ#/'C)u{A48Ewo4ⵟ[ YLy- u`yS-ɹ[4ۚ-?C 4XHjqS|RuЧ+܊2[JGpM.(LL|᠄+MrLBXJUyl6ޯ}F!g Et `ٷE?ϡ(~00{{Vp"(OaKF'Rm1{Px_@/rjmzJ̗IMX bȦ`Q\HGY+T;L4P~E, r)}:_ 1+(!qkLb_]GϽ,YsHӇ/Y%PJWwe_Xw|qD@=m^rJ)CI]~ N7"3<`3Ve*# 3d;̕dS'Zk}DteaDұZߗ]QVf(n#AdD1+}Md(QnuR~~aB`W"My 3V0S^+ϑ_xώ5O`ʉR+㣘;D@,EH0mw2ftsmdV0pejf5Y|Px %ETFF/5/ )][z+NcӺYqG*~"eiFm~F N踆eJh8yٱlmEMё&I64C j-&EԝSp7 z΃QQ<|Yf" V_ׁ>^ s*WD`-Ɍ|QSLn{fkyN8!4Y֝y8즾9]K7 v3E[8аJ7wb]#e"Nz|,^C*Z0D%@+LpMM~R 0чͱJ"]LHJ)i;Ik0;bb>r[ʜ-ӭUVlVAV;%ޟۛS. ~l@z|:^:)vi/GbJ*7rC/Z%#rݯ$;|t\c jkO6}0Qh=wTff9pHoϸ @Z:~ujUiJsr(4P,/RV}KS+葇=ϲJ1➣D#u^'_VspB?6-b-gCv7d:xhȦ)Hz:0 !'w b.v`9cM˒OJSwV.DQИsSU4 0%8@$Լ0mJ8@콗.׻!8l*M6·Tv%g${Y*YBeLlx] `#M}8Z^z;ݟ)nX;CP1Km؀}YH|T/7( AyôAǪj5fy˘ ҜK%T@GзNC,Qi]Ӂi\'/|A%,-qY;1$ϙ~ry~ ceLxPpy~H<ө]fS}%,yhGȼ@OA1^qaޚtMYnжb2qx:Ƨ N>Bc,6)"cP},+`uD27+GCt ؙ8':eoKU3չG B@ʣXйΞ.vRDhZJz(טsP|Y1}߬ #>` PNpc}jbEG8c^>S?TL]Tْ0 +cL,Rѱ !hU{nPXg oθyÂ`qfSJg W'1cޟ\$rcԻ|L V@9͢>X|4^vRK<^k\ S7,"gQ/)fJD@8Kv# ngzT +Vқ641p* "σiJ~}B+y?2sOcakXD)%|yeJKEyV K :GnRiv$K7 n =feq4K9wRYVTf3 GPyR þe1߷@Vϭid/X/$YMͲ0tDl NYm@_+կ@=Qpt .)K*2nǸdH㨪Bc^72~#Bt5,]Q7e=5 QLa$޲dE${(_ɱU(FSq35[EPֈ>TGnLla>Y8ґ$0&倨2 I@&؉ogKqN}bf 1@8V}Ւ CF"a'R"}t36/?0 > Gvd0Fi'ya3ғ䉴]&0j vz)Ȱ|<t&Ӑ2Ƨ?>y=_ _H]a p-ŭ y5d{@ 5^CۛB7c(DV-<'\tRh"ţF/rFKK. hE!ezc(H{C 7~ C#jiv-}&݉]S[3Q 0G OݥӪjBmb˵DCdaKK)˯:WQq g[52!h\FoPtusdȩc/1 V0@ȣNPg#T-Yu,cO] %65|O5hc ]T;.B}*|!Ŀ0 0>1 %h%%;~w:͹MyM|=s!'or`sUJ'X&7VFgg*IkKς ௏.IUP5熼GwK90`] ek,^lJ `F4LҾq5zXqWvmn٫Oj<ơ6$Ho5^9.,9u7Y;wr739֟{agԹȔ5݊ঈܮ!>YjYVE'8!0!S5(pK}j\`[zf=ڷs!5Mi*2c `Jfoaotir-b<T4zf;65h ҊWη9ިZب =KwYs46HEVnz&-Y;Q?Mw5!-Hp578npM솺H NQ4nZG3' ѓw}WK}A$“Im&>vƄ n1QDph*V-F/{xI^ _OI>p ,5*4ʼDIea {R}G8ǖc'.%o%Շ6UE0p >p8|4'Q/x6k&b,yE3g`AWQ/x@B5MCE5t*߯'l-JU-P`K{ S2ëiɏHeЉА:<; ZRAjFAv96\ҿL^ L%#Ru.cprt7kI$RFycI5pZ7 ᛬4|=m{k~E4GII^$5UwGY6 9S,:2<lj}NmRH`9&:,>;(06ת`sv.5xο/S|p NXӷ{gۻK XB,*oI h(U900Jάyx<@(>Þ׷Sv ~ldxLr4!R<\gDzoV'+N2B4͊retjSt+I_OQAhRU[6QNa10췡 Sgʄ&㓾Y0|X; z0 uZKnmO!"m[5-qHp8pۆRf+I)[W^g3n, HSo(CBT"L_vC6:ISb7Rgͻ^^ZW)Or ܨڰzjrࢭw_*$`ydo~ &NgŠ.M6 ~ 'jy9IEyDĨ-=kNopׯ|!lE %yԟ6|";Qc'@KGYa7(A>p@t@3lD0v+̱-ԩȝܑtƽnU +FcSv^wQ6& <?} )`ة"BhĚO\^970N? 1'Us`1ÇÆUA&qj+]%i*lOΆ-# hOAH:8<>FC؃W!{.RJmRIXp*mک@nRT8嘓u֣~]ŕnnAk7Bw <⍳W: TmJ@.!wD8`aXG( Et'KY3fbPQ`f-f/`ѷ!n &!L? }dGk > k7~w reV 9ew VW|kߵj1v NZlřXFv{^cٰd;}9=NfMMZ8}SWw,sx:e|r΁h.'k8_c&22ϖlն5?W.J mCjØA*"?@~fTYaeǚ-1ls`9z@!cwU|S #K T s9`$<*|R`.H B}eFвw/jaΓ0AV*Fg00ڃA9kƲLc-S/KC>dSZc>Dg 4n^LQ ,Dm!fMGsO^ 1_应!d=ˎg0x5vpH *N{'3WV3NhOdڨ3hz߆2ud_.*` &uSԿĠ&,{]! qY\q¶3aKQS[ л"\׽}OOZ'4|NK! 1o:;bG}/~S+ޏ%Ofф3piޛ@&B׍ˆkWI򤐅IVԄ>ϑvIk\W{βuV)C~ f:DF!WBL p[g8"LA%,. zK!0=UhGW" ޤlڛ=c ɒAlyO*2 m>_`4^]#_9<~mAPteSU4,&i FPk8?Qu3YOv .Y!04u"4NWȤ1zoߢo7[6[&H/;~K}[g+K#\c m6ú~`͔ia#XvJS^FD٥<| ;TNX({ (8v$FRX¡HG%Whe5H?Zfz@qCu6R;P_[Y^Ğsf&A| 2ȶ(߫Dw7\H+Ɂa{ !r{ӮKhۥ Jc{*t-g>ժg_fQ~k\qe%2Fk "]p?j`KMr>uw @J&=` D&{!\݂_vBH$Ck7OɊguA"CDD<",*5=8_/ɭZfdiB<rQ`@dVOUѷ nMʓ@ =+es|]gj.|ji TUspC KwMMVX`1YqyjsvVpߠ[h#ښҪr4ޓ>G:*#L̽8Ě^z,6bBbQ`#^d} lc"6Qf_M7|7btf X/>ų*KAO$dOPAwp9]%(V˘(_uFV-xÙn{G9f,IJx+siTq"dEɘz< 8w%*FO!@IpmF&8v"喴F‡#yd# ?/PNpV`iLOIU8e_ {/QGBxx3ÜXݓr05}XBI#K6n f(gd{?z/H>ߟnbD)HMC*VRقEHj[ӴDAN -MzڔiM_izJpɐyJ ՟r(*c|B9QQ0հ]tL7LLx<"TH [E1!iMBszf ԙt2Rc_Wڇ݅h`U]o729<"HZ@4'Qv@NCkk0t۶²M ەŜ-ILg>07 KNaJI99fF pNeb)PuOhs! ZsP8)9gedp\Rۏ\H>*Q<3yLBEք=RTMcx@@IO+"ڱ9?HQ ;~iٵZ 6,R. n,Pڭ ()VWFyJ6:nbKe@ s?*2(:/F 6ZO]i-@)PҮ|1D.VpAml@G R!X #}#ּ9d˻/-1%ևH|$gibqj  ZsOBbl }$VzeF}kA7AEН H:t Z)nlՕwӱO a/!I>.jmZBX0x)P廷މ:# je:d䒽6^A7_CMsTӪ5Ek@2*&F d`ry &5[_X;/@EVI-|um=$RaJ`M'3vfZ/>"-'֮Z.{" ZDT0`hpp%ul{0B('#5L+T9Ug<5="bg]G4J0k_c++b $E.ʣ$fc;uvi зGccZҾh)N-f\vWȩQs!a;a6=HAJ"~DB/+Օ ko"5$TjFEt\{k>+]L/nRqj7RBpyqXؼ}/SjYTL3Eݒ/8T'@[Ht<vD%#Sڋ@&p|h WH:wWcWNOᅮQ3k\ƒSw)EYƠ, Z\ /x:ټW@; biHBFie)2Я MUS4."Q0mkԍdVz 䲓(l /xgƃ+ u< OrQQe?Mt:<ׅ>G`X!n5,l ?YlĬ]֬b4ӰFr\Jx`/%7't: ~ZUmr~$ We7/bn͹#Uuܹit}45uI8~ fbC!82PcWp:[dčHLf6}'3sՅSxؘ5rbrM#}պNe_i_ x Չ)j#Ճhj`Fj+!V^K[w5xru.Vu[7| fV>(5vC7ҳ{G[G|D5\)z>ci+AG <{8T=_mS..ϣ{kR*[*n# nu%;5icA *%6zWe\HyĤ-G9\ɀ\d ߠ]L[^U]nwaZէګOi)+u-Bt-鞖gO7ɞn)A8:Qs!a!dFs{wYAQS#2pK)|3Y=tyYH'EnpFpU .c'Nu P A!sÌmoĹs,;}ALg|dWEq]H-Wf. Ş?s_򨼌<ܼWby pP,Hf "VYE|stx- ( MMԷm&mOoB!>"NcSa霰g3І@Sͪ..\#!i!(=| ɗܣ.= q4{vA hIUFUmT/ak;mkS񱨡8%Sp6D?ώeWlOb Q\:`zij)ѭfmIm~aFk:l}bӯQ68 %®En :S~ H@~N63a?2@ F\7R|*Oc:9Cy/aPr`8dYgQX;l!4ew6PaMq} w[<:&<,eKD`ZXqW7dSPU0!Zn9rK`U.o'@(tDw9tP2&$bM8221&**N(1\X6dcHp4`Ƹ%Jzcs:q9\:X:ZJ(E;g͏bl&XK.țݘ-Ӥ?# &[f$Jl=Q>/᪾4.2o9E")EEKm7eʸUmrq81`-q&ފ 0Uq ]\Ncؽmq7%p$@)5rr*L3ɺ``΅XI8y 2PF'G^f. U ļgĤvKj`WmݎW}A㤴!{ޗέ60xD٫n.YW\M}AE(a7o&hBo2ahJLeB`aon{"%.vm~gWZCV-^CG5r\/BZ;pŸ~28cރ62R.|XJWg{Z,FIJڲ\$Izt2\u'eU&2 var,or[<Ε@ۅcۦ9>t!ssUxA] ԀӰG#{|?pݳÛx%9辳z,$ΤTd6Я}crC MܔW t&fzy./ӈ?pHgYg녁m6Яhx2aaSMK{7J }/۝0I[Zq#Ӕ)!߈U~q 0I㐘lcJSqe.,„C;4/<5xpGL=C]_󋨊3*qb*h6>YVgp/S]`>?{QⅡȥWRwP~wQ0q,B9d f4To  ^y8q-LX)#hTTF3i–x¿\Lb1&8.tgjj݉e;^P]j%V cboި"世u6tU,R)TI35~>[BEқ^AwlmGj*|?40Ez ]6K*&Ǻ'FhSlw,Eb"NM|A+_|ChԛhE"ϊ3D?տ3g!B lw0o'ҳXz귨#I#"s7wcH}љyZzfx'gbEG ίH0ʙu :iS-:AOX̎깾]m) dǫ8Zbtj=%X/>>BOj3nbKCAޚ>.Xtau7#O{z~Vl%|탽IgsAšYP-)NGXj9&޺]U?\jpIb&3~&;;masO9m $Jng2ke3Ckh,u_z6(S2+ܱ=_s2#Y'O0|0WTMīǡ I:= 0r4Ӟ%"|u ]q!5Jڧ,T>YN4MP:bexcfM5V(⣾t>v,8PLWD㹸*SHS^;[2EOgt&:A p?d@$I%ISW ʰg&ˋ&BtR8fNçNd?7z5*gVPvRgӧ|1K #t"eI5$R_bo*:H|= yR]*` C-N^~RixyM@F"/M!/Q f N,%^2yjOB:i9v_|wݿFH\qx-цq)Wo't|5׸I*|s?x®D!g׬6Oue&nn;gM8c58 zq?6}LWծW3y3_">C\K;[X9tݦ4źVH-Ê%&ޯ-KR]`ly~ W;1L źoaGE߈T7bnFI$*2f=v(վqy퍄p1VY?|QjFW١7!2Fh \H%+hEıl8zJ8{c͐//ֱXTNrp'Q6`;lotEVaIrYYnT@uM3.y%A{ɧcC+>Aso\7>gd 7۩"ט>ĬC7Ȳ-Аck% 0zd2: Rۯg47/5^W,/g4~y*ۯizf7zGx= II K%Eܣ8Fw>]e^,A#Q(/YV)h7{&1i/5Y!Gə'gp` Q>H ; l}h˂ })oos1~ C~Aa7' #/%bi%\$ wX1N.JUvDAeLG|M>H'W簑VMl|c_]ȐeCJv5+s}WF/ed/Z(I ؎h#qKtQrq519ڷig{}g`*d[?"6#uCcy lW2ov~YdQ8SxaPw12>T ^ڑ}j+n_~58?tetV><V>Ve6ڨB>㕫6xb.^hAFSycHI޿!I֬'m}&d'(-LHb`E-^9)jDP+,"t͂9 |5|Sۀ'XPA3#)_'b z)Xk8Up0>v96 rI(#|AϛøV>׆Ԁ C.6j-(4s sљUYDX:8aWUs3sdVvoPSs`~&qQ^H3q~ 0;F-Vj䧐:/rmoʻVA=ȇ sll\ۡmy_Q#S#fH;]RkEFNf Ek5ќy'M$k!54R N>T8`.ZU!r{ɥ:0;+*zTC20 p2+]"J!yata q(rE!/yW(<#B_x"ʦƲ;ª}tUalJ}p7H-A44fZr 2DWS U(THx'FswW<8Ȉ" 5Lgz>Hm0 ڧ ̹i<yN p 5 PpB\yv9,gk":2e$yKtg鑄OYaK{uXqf I犵|g Q|*bdwF3MxKhULFw; lpAPsh\/ l< ݐfF 67h%6^~ɘDI(ˑT.bY?v2FLݽZ>O!&qFj;]#1 ]S.^pF@h8[D-+ȉ[Iq05F /gBXﶰj>dsV5HqE|ܗpb{O X>ȿS9}KڮbE"K 1+]#,4`eByĞܥޡޑx˚ 3H_\)ފy4W:@v@@m&Wds'-IBt(-?eTe) 5څtγH VPuvPUiDR-㪵l:]cy(/xz9%b,@vl|b}:?J)1\[@0hZv؟4,I!E5 8땛DV3CR 2yҁ"\e[lFԝZ F]N2\Jz{(',x[J: lHq\G:yh&aS.:|>2-?ɇXAwY&M "Q37^̲x5P'c ;ktc5j7dx^rxܱ. <9AÓ e^zR_@K~w%W@n٬+at?m/ g͒ qb47Ѓ$:ҋl0FM4d-UN&}!Jr3GLV݄;|&lPMno ҒOTD= ]#0.DfFdRk/QzkVa;yg"~10kdGk7O`wsvh//6R]*/遞e@ZqܴVڹZj1c'!$ӷN{A)$2F̠Ɖ ;X-$Xګ% D9KqT3|{-UFʣbЅb M?cA* QRR@WM1._#u>EwEy%|*ht< &)dNB͔nMir^L3P@^a]00/I˻ͽ\%vvuS[%rǼg@ #{BLUy3G$,TbICԘ(3+6rlkbE2qf$aoO+|{+iA7k%:aX8j.w$ߐ9/ZA JGp]SMT,T@qg h)YƠv(F݈.6撷Dυ᠈pr}Lʑg#(5s8wׄY3'IoqbSձk;g2K%:vٻU40m+yE9xrӪs8BndMVAC*:<gݪjKWxf L*ku;Ƚ-[1h M'bU!e`YǚϞE61 :9צj$3#SgIo,r(S (3S0uTwBKy?n*ΐB(ˬ'Dz^L F8pe';MOx& /7( g#Q.gS]V[8A$4N-^m.RQ9t94+" 3̎SK"C;b ѣgiY&li-ojxSFd ӮyԂ':0Pʀl;,l*">cX27hG:‚gKmK)p/v@72dḦ́0BZ!X0T|ϙԘ򫣝16 u0-MH6pQ7/$Nv?#In,r톁 RW+zZ0x'+A@(46u/N]:y^šw69 <}J 5.jW% XQB<`z8 FKg&)D-zSv?ݫwOS ! W͊-z*H}JAbUmTQʊU}H\1k2Ltv4~{{)4MT(ZS.>A`^ۥ"MQ>A-bkbfHR!VgrgߴIX8IX@=so\g{ R24#(*e1G`TJ _ iSFKkr1tƑ)IC/A@Evg eaiL` 4%}[i< 5aԀ0 <J2&g>32:+{6 Pxs+O{P?/&e:O$%a 8 '$tZ_D۝{bG AM;Ӭ!ѡ`AN+75v≷P}PXOҳ_[=01 i#y&sԽ!"=~m/}nҒQؿŀ9JPУ˅e=S 6Y]󜍟wur}ydK}m?>,ֺZ_ת#h}B/-m۸a="ǘ^,fgiyd7y#ǁ1ȻSZ<L3&}s]1*Ò]ٽU8kPBD3j YkAXfWiz(IC)+ ﲧlڒl!/޵H3?ƅof5(-oFM蟊>s&M5 ;Oؕ8.26 D{w/o1_~I C[(r'f7F݃'?H#J?oBB@%}/YQ,Z6Dҗ4nkNy=w_2OHtDL e0쎇I3+,@>b+,6Q޽7YcRqK J03ΫB<`ӿxVtF2|~O", r ?!Ҟmk > x!3kެYyviZ0ۿy`z,Qu7[`ȈDv"s_M4 ^07e)sl8:.$ q@ԑ\. 1sk"ɵ)Q}EU쳀JW48S _ns!sȋ*f66&a!0R5@~t>E˯2?5RZ(C!554ѣ; Kފ;j[rW ks)gjδf|ZǀBW -n4@݃ o g GVn@t9q c0ݼe?³c58SXA'`q&S.2j7(ޞ"tM(eA/(&džr[渚~Aڴ{M|AO"[) d]Q#K47)٪,0I a۩Oz y)JlqpT:c@l BSN32nS|<x/фC}Eb?;ɔ#GpD; Hyfq'Q,ʩ1۲pm.K%k5U84C r?$tr|su1TM}J $kޑEW[4QRx`@>,6e7&BUji9΍ 0cAB-0\8!E9d%0KF0Ig}W̕dC$d)nA,˛쏘Z1!\0&]Sq} |e 0ZhOaWs\"-{([Üz˽oSDY#FpuYWI 5j:6OX%x6~]z 's5ӈjPX5$<27$q>."=bR5sfm|6_@_$gٕgՈN^z⪔{Sˡrqi$2ϙ@UlG)peЧ3 d^x8ЫM*ִM, y4E):h:+v|Wۼ0O"`2Ճ׭:[ȳQ V{1;u,J7@Wԗ yHQ-bMF8E-?z^Dz- Xn )3 ^ݤ,KVH- ~k4Soԓfe# 懱u9SeO#7B!FV^uz#6-ߔ\ϴd+xHT(̛]!Ocl [^ɯi ߱&K !(3\c*V N,dS^," f  h3Oà B݌V8XЕBxd. ,k34o\]]X&{${='}`d7OCyE-Ԟf[ŕŞŪASʹ4|F>[֑nQ I_,]v_P3ds[Oس+zSÏPj:-|R>9LFcLtQAf@5fOo $;Gҋ {c3F:! E 7[ ByP#$"{{"l?.P ښvZJ @7bԿ}Vel8S_F~,t8Z#|;R`q)v6h!yćhR&;ɔӳ0%L/DrBh zⱍX<]$oSlyr|L%#93 0P4+2jLфI֟ 1E=@4hTg+Ǒy#q_nqqZUY= F3cA ~JT:b1=SWv( nfyAw]|]e܎7;E\:,b|\%slK ]zvA l{Fr|mپ SΗu b!3h/Y*eTʾkeXʲKwF>y}BQPBJ\~vPF͎yF [$(oq(M(Y#rUaWQKywL({VQ.Y_pɈ)>8w(ew2$ dTےS+.I\9'v:}p|].ķ߼EU},v!yTuf!ٶ߰c9T2*73t M0#_OC"" Ν)BSLf*ObMMh94CD]dJ25x x Y Qhrxa}K )nlA %y(X¯`X[v@tTۃmOmv~z: bI4oXu3|ǍhHWAiӗq-qN5Y\A@!1$&k$X$92u[ &^Yךbц=[FT{_a {CTPD y΃ =7U2]#bCuJ}$pΓT {*`) mQ9}>mZI}:w9|M>[ψ4ct ߼2@5i}K~? @xw ٫e ng:%Vd1!2a)ﲴaeشSfι{ly53-I|l M9lꗂߚ;H˳gKQEm:I FNƴy9 jϺg1c?ddֲ8H`nmrMIxAF'ߚ/Z,3 w=Ez) xukE.g%04@¬Π,i`::1 G^~ڵ;<PF g,}vhgAnBCk}eHZkaR{4YC5{KuiP=9 @\8^ۊk%^wr CQksQfZvV8M.qY5sEǵp%>_E]\ @bG0[EpzWH&E/Yb%oHxͧ jS+FЈ`A_bg?!y'vsDFV)htf$m[+@8I(PeArމH+J=#EbcAzOwg9F:l`<H::la Qn1x7DBn/f58yGqPk0,9:1+%)V ܚ7mBZ0f'xݡ34VFS?)V~ QuA'O1'L=71Zu iI?!";~,*5RtSbUud]#K:!\gn`2)miס!ITOۆѹ p@@*VLz}N̫(qdQZzdGqO,% lX\J^=M39;wM\$F fͱo:XY.=k' (݆ӈ?[y1)PJnH^REVȮifcm%?kFsⱗRGLì> (5sҽH򴻍"q bP,6=1nUD3Ƙ"՟t)F:*~Տś9LF;BS 3,?##\ڽMư L}Irg\EBStrG{8Nl|ҩ\[fJ6Ч-q9,-hZ}#ݪ"$ '" Uh,eHJ P/ȯ~mmuer%TP34:zG/P2*kU-[;@ؓLvd%H|g(84"cq::ah1.mv-Ob/4߹({aǴK0( c(cp?JƘ*԰ebӜ*e@'&.xa4ˏyCuf.F;h[<f MMlK}j8]DgIh3ӷ(b',K@R|˙3( ώ,EΔ5X4O]=c3V'_\Fgl,E>hg\֥N JEqdAaݥ؀d g}5X漑4 U=o @v \~y#Ģ6ʾ9Q._U1H[[ճq茙X `UwH'lRGcPfǥּZ@|w@Enh\)䂕 WQ A xa?jHX}R%\ :HhF_ϐ3!&Yδ=r|+H0e 3+%:JȑnΗɖ仟yjxwñ䃺4g8pԿދlkl(wrBMBwڼp69#AaqBƶAPvnN^P2,wm^Øi+Gjl,17){,v|5Hv1݄:y aΫ1_P e3c?) S+) CvV 9 b.#DWɼqT?O0ZE+ .s_- s X[=-fuYEkd}G4CxH;h~x'z^+)F {4F3b!K6@+듾c&$qRN,:X^k=sL}=MKk^X['M@8;sI@lJVqrprAw~GL]N!]A$wB/~@1Rm:9cЃ⑙hR~uLBOT8=@<.h²xX{ҫK2WCr)qhiR= P3Hgm=s*y-U*uܔ6:[SQ$/BYwZ!feR*j#PPUU!ÄC |=i|m:;Gxm t4EXgg1v q)gW;Υ-YAdN(S*aR`׶?w,ё|2?s &nӆGh )- 619neOq)<@1c7z:лhQݭ/cBA z߱Offk|㘉mSɇFKgRro+P(:5%CtNc?͘VUw|8ߔk9 Oavj$z5om\{T  fگ"{ ^[]I#KKYiڣV#*j P>p' tyac_uve*8Ah ^./ܘkl n-U@ԗ%@V(j'TjT{3LBgz,U*ҙcF޳X8oL:ːAޔ[MXhNY)jȎ&VJ{#O<Zb9?:גu!,Xͧ('d׶;|f$FE@l8G<6Duxg3Ezq&8}e.~pM $xm]#2e k >Xq`3T.XRmJIah~KHHq~^^Q ݨx >A9ĻDj%(аWzI's{T[pqh 5bi%icf3^'rru?~!}j}-\S!E&"ڼGvj]h OYj1:((u¢ Pت`D-. F4ZӠ>=@>M*H6P?JQ|7#Ծ T8 ҅e &V`'{`k],[EQt %w[z7dO NRem:x7O,r{oAg09 әQb\2PF2!C?u=e W3~!K`ح[ό@NL72Wp 6[iAyi]n4aŢ cVuS7 Lj53L骛Q;nC~3e^Kz -!n q[8EY3YzDxH$F\;#Slf=-% oy~T4fŊCh>qt5}8TSsxe(< ]-Cs2N4T/2,rk)_]M Tmq46ӝ=Hy[!j`w奔D&Y}[{ F2VDmPH'x.!-eSAJLt;OV"pUƓ0fbNRB^v6kZ%'R&lv׌CC-2bfSh{0gBMH>y !|E\]ڔ~>quQa k]5nNe-G t&k]vh|06-YK-82<JrR(ЉVm~Q |_/v#kHrt%Kg(@efӄR4soz&? zSc=SF6%q"m aM_|cNʡ@`' 6[u"=RZ:qЗ_of-S\w J^axQ>^SZ 91R3gRcn?È47e+Q l׺L%U L\gK-mzkEgT̝H2: F;"_7$Q(U`#IZ渚/xݒy 7(K|z16@"՛:h-.C ɘZ&^!,l'Ox˽OaU?>xq<= k +V(}= $r$Pf[M!YtWӠf;8Ky\cC,ca+I zl.tbp.fYV}1gWqI[\ۤG0B#ڣe h_F]7ywFa{=p)%d-ʇJƞ7Ƞ`rttTu=-ͥ L)&/6=4ɻLi'*-0t^դKjjT/aQt2t)TcP-E3ʹ9ޚ">De/[xJcƶ=f,3F>c!b1:c6Jp~BohtqN-] HZ=ڐo&1AQT Xyv@ԅPe J tm_WQWdic&L˔`3 xF+WG>HD +oC[jZC?7If{N8(&z3Ԕ7~^LfĖ %%+ڊi];ڳ@t2K@ZqRDnބ_)([վ:T`%DK |Z'7i)ثRz3 rYRY >bMw:\[Qd){}…`wεlsCX]Rm6nr˞?*L˖;፣LBBRo_gRB&Y?Z LPp.ŋso$-s+> ~~/j .=\*Ne3J?{ OiQk Kc"'K}:h* ;'\طI&ؙJDQԱ-3v)YUOFYf]A ZpNd†>LLK?4GgtLE nD S&n"[CP?UR]P`|Շ!n]3|s0E Jև:_o/=q*i ,˸4X4>ypzfv5!APG{-C9[!i>(J~?N8dLlR %Ä,s8V:.$U!ypp9sYU kb;[L<÷o5lP2Oo6*\ PHub{n+ e%;mM#ҋ?XT4Y\-' cYTMr,de! ;}9y&kyxJcGU8c5olY'ݹ>sա:2zA'~[Sg*7"wSS\GWjYRo´(!]ԣ*+_0GX= =wDg|Afz$$4helOV^Oh z v1,dJ桉bҨû$4:ZOU)Qfs!3G! vr`yQ˿nVkT+!Wo CiOK۴ߺ@:CNT37!UGI$v/IKJP<9$3 [(JU"=ޠJ~ I)qp(]H& Ԅg5c>{E.9y[5 pN8"A4سcxv<T`+ 9q`=Y1`B6߻,)[_sX#İ;΅@ꕴ-{uP/YP͍Ƣ`:@ S`DϢ tM[8;i>ɆǞYh/x a\>^a{˥U[N $$yy |؍t=xExٙ?_{ne5yuAV vXޔ㱐BznA)npl6t,db~#,1e7pu{脮I]K!rKMG=_d4{eD0!G,ZeM$}JL?:3++ -SBN;ٮ6{Z[X̺~+:_4/irmE nkz; YҾ T  F8 T"*CgV:~aKHXF̼\=xjFc^\0eX\W okʤG94˵x MZG7.f1e!RUͮ~C Hiœwa2c^3MhBTMk2؏2޺h{u34sF?X/C-g. kXlЄH^_u$7  6muݴD_$0QӥDN]H+Ȁ/u'$-f(`aFDuY4D4RƉok68HXIxt֣!(sVEhYt乮N8 tΏ#az1 No]8]$~RͶ y;h ,21dߔ# P*+J`EhĢ[_jy(y(C1^ Ѥd~%{ .' tkEE,X3׆A'MMSAv_d.kQ`V==vBw4vmS跑f>.ƙXܛD#&ZjFB&ԪiSG@Q]g ]|{}GmYs-ن&$j|vu-+~!IM>t5ȹ>kg0Z KNjRRƬ(x $ `얢X.>cpKRUsHQHMeqsշ!Ms_hA!0+gIHV﯇8`oD74/ ɂD(2]I _Tەa+lg_ %>HDN}i"*yr.^$MD*,0tjQX`qu~Na]'ۄsES~!ޫ4e ʀq/5ʭc4yxqV+oc [; L7 >liOɵVD};#zcLe^EbVi-fSznLރqJv?QryR(vUWS*5UG9ڕ!NhGfI6 T}Sgmf=icLaځv %);5m QU`x>[hL ;XRo+$O883oH3Z;_7x l >u_@/^y*^(ƞ{caNAL*_ЕWEsRNxwT#UI0Ux+ )N'_ 47/G4*5싩'҅s-}iN!8ͨPdԗ?_TZVDY3Km= z VV;cpJ |u<:VЁ"3tP)di}Kj}D&Km8$s'H>_cނda4&͊[;@dM/؛ v釅@.C<5Yi_Ӳ h;?GɠK4޲eJ!T_? $s \uy5Մ;vu>*:37dJEg=+i]7 Uq{oƯr@hH̄6yӢg ᴾ).Ac֟QLs cʋ&\_o3M_&pϵ*-! >7rg1 +?޳ʘl EzH"e ;ϋ+4o)Xq)=#R6f)l0?R_ת| Iez ?9T}{8+C3{ 4{2L?T.]w/*=_Im>)="2?7ɚP0}QQg['Ah]j{_6i8MW0Odng,2Klf_J458l[4D&<8,)]]&NڞPAioDj{zvXjӹi5][>[rAпһ㘃=Z&>2DݹN%ԁY+ nZc4L.uY@f3I,=j׃gqSk# bژÆ*; "Ah0M}6Yͮɂh;rFT.!r21&XKX7Br#rY+|Z$-`8"S@]0Tk(ĊEV\GZْ @v,fwilH(a|"e " V.ZZO~ z]L3Gҙ_Ҷ|\]jE͐ef@I-\ *jm , i\= t;@W}/p 2\E~v=̡ P,BgߙTZF7VhB1_iJ$ƫ"=Jlkwc}Ye.8e$Es(5% )!g๙B"$J%_z>m30fzst59-4 I7 h4uFx1+ϩڄxvg@%lHa ,f󰹑eY:69~ Ճ^ ęPVQvo*CB0dzp?n$t?{qJk_= ))ig_ z8.-#Y~'.1f};꼈{ \밒wC,j3&YSUe%yx.J;?F1ֆZ( Zgڇh_2ȥ@A MrK 5rUa7P"һboj r9B.ȇgf@ +yryq|eq/wfx};x+%rSS3ȑe]fF-Igڀ!NXoag]j m΍!+b^5/EtP[B c:{!hig[9 3MdlMCjRnXܝ1955:+]2؁0gJTY|$ lHٮӪ&ULXϨOM: arSŋUA):`\u@"z 6 A[o7i A^S/mM_ z Z3zcaR6phz j!y 3)vB哸AHfca)CYN1| %=Ym:K*k BS==7Np&@ceS<#[ E)Z[o4 Q8EY3 %P>Vj]k07:d]foq(w2$LK,Y6}$?(r:!KIw,tƘ9DjpP\L ^[w=6j]6:mj|Wxg:xEȗFPi^M24~./S^rW$O }lQbaaI&pIsjRgDYB 5ϐ$.=fPdMHnRݞ\ѷQ815=3DM$?&LOvҢ5vytl7dêIކq5rިi`UH/xl#-G<_Ҍ^kakukKWR$Ao@ܩ&V#+ϖ!Q? ;RKd`xo>׏l~6@A]mW`uSy) }pؕIĊehY) jخ:kx&[XZFPbꩌ8{ecAfk:^*3dg% {WbҍQ,1UD3=ޢ%w.8G_k Ss.tM@IԊrG\*uxݎGjnySL &V  elxbuQQ jp.z̴:Δm( ,5m/V/q( ԾS?a4}i&]c f(oE?~D[ Iu.2⼯}>:%D:R TT3mm[sXr,u~":@"YPS\}<؞Q*Y=e.NC\TA{P<ŷq2jf.osQ|Gv?6J,K-, AUi*6 < d{y55oĉlϞIm˔~W))mLDA Aڮ{8u4t 6gٳ -N&9qS T_Mdk@t$k}d1a$2mS8ւR7n!`d@;ONAruOA6H#\w=}9kzvMG =tKNWN1%)!CyEBlnH?h?a Zel1@!>L*r@x)D%܋ԌK?ÅpPG,iU_M5@EUe >GKlb-~$p؈Qb᩸`,-,=*%bcf(RdV .}cG9`ZYphI\U%DNR)gS6@_` d<:]-Dә'A)c]Y44}P|FyQʌz1@S6~}D:yyt#+VgDxbmqz߇e;\ؕORs_3G]1H\4ɩ:رVNܲ(ؘ^p9ۑ ﺳAAAC󽴧p:sMГ#^K<`CIu811ɘ0Dw.f͐GTc7(,jMY;P-1{^ p1nÊ;0׸mk<߇8Ơ S(2uRx}+p0 !Ry;D%9t.Euٺi}UU?3 XGG,}Ps9"ՋCM+J:4;-wmQbHr7MW3QfFYXpL8+?_45J!1ΖÑDOE=oC) cndN%c[Yo~ǠKؘڬf1:ׯ.FLt,÷S8׾xWvKJ*8)gaÐْ?6#O`<`Om7=ImI4GZ{EtooAݘ(Dye~Vn*״rsY nɐ;^,%FSgm ;b;E/fQT_X۩,gKwCt ޴_G!ّv q;o_#މv:7Ȝm-nu;$_BY A{]Ґ| He0)0TMQ)k;X%nW/5Ikf(ov\|O:Qy|Ri 6CM͈x4kC޴2 F8q r/Kۛ7Nk'_K8)i;{ɚ*B|s{Z<veTz0CT}tL[+,_DaѠ;89 CV~GhJp9UJN#]#̝ J: Rd v"\4L} '舂&O=|i9_=^; ;ye# IC;e1y&B2*J6FdLV aҰ?c8VCoA+,pyJJ)}K0X>E}|* Rȵt/>/-l۪٪ǝKB~g 6jo=N'fbceJĻK)8DӾh~8e3|vtѱpv0 $a.g/Yz3[V\ 𻸮HM92>2MgA@GP\)-M (g_'3)#fnmxEF POW`*I]u񷔝K|WVV4l%@@0AC#FC[JIp(DbٸcN]N̾$ahBHIxr(/:9wLEvGjpLaQ78c]JNzl1ґ'7`ٗX#Ua <0/ -4cSfU6R8H.TGHLh yoBh1X$ eo~۳-ŮX 3E ;j !4;꭛Ř}XQIjV\(U-@Ea <3 e)0Avَx.şGT㶌18سݓJxS+*\SB|7U׹lm|Mk'֭R*87"ew{ssDA`~֮ Q/GhX=eE!O78"ߐ؈䫇cJ֫ ;7#dR5Ge>2 "|=ARn+Y[A4w Ag39iC]AfqEx,mE/<=TfǹGwz>HxrX{7Ͻ<3l$֧XF!  H\CM{zsb\7ߕkҋ k!\4WF;a M$ui8U=ԇp. y$bwWP|b2 x48ML;naQL_ =R=\ݯ3 06yxfk)DYXyY_K~u6Sf&1Yrt!ϙjt͸#Ƒ'}şhR%K>.B-_XYcQҖe/`"/6#K+PP@s3m_F27V&Y A%GK=hP C p55[(Gf&'G^P{F$Hs4+d\U:;-QSZ#V_rQk`] Rl&w\oxㄉGڨ[ۙmr8ѽ*_>F<8װf}%dʵp]V]n@XҤK&QwH~ J0r\+PE NCaC ,XQamq@'^MD2't@Oi-},>|$ۚG[%kδlnAj=E-=_ąOwx<{OU{ 81I<=to|=J1_auaSQLJg{c-4c9.'\1TOPfI3m m3ÝΕo4 `%_tqՐO3F26UUVe#˅ AҒ7JCN9c8 3gbv+^CHێ -ϟFr7$vmc{u'cgjX/>fꠘffYrWZ$GX۩vC?g}LI]| iz|`V{ϳW h0$mdw_F09QİpW YA|clMN* % {5cU$NV 13+ȑ Y+wSG{Rф0Vm +[.5X0pd5X߾[ٯyMphO63ᔴXs` @:Q1MkU^wqko1rߪVPWhQ`}v] 4tm5<7ĥ#Jji E!$'kĭ[:),g'Z˲Yt, ,F F(s7`Tg=*Zh߶I:XbA3+G.iDv< X&ۥ^jB+e\J8ާF yIyWTPɈC#%*gY7k]NY[<祹Go %vU[a(]H2ӄy[7aALZͺpSS) Hx./Q{0,z Pr]DSW#F-U-y~̒(: (yNb-~W"1bHLE2bb. Y phgE5e6OVɜ": >5l E$#]l[h,^ W!cuog0KG}8^I?x8L#Ϥu7RWӤ) t4^`b8X[k+ϴsT ө;zu&1mBv݂)r;$'PǦe^>Kwȝѩ#$'CB8|X{3Xgːn}8D<6zOj;2%b%do7.pwAnۣ֐`>K6aCȋj#uuT`11<~᪵8zN m`xQy޲hP<9!+LE[μ~[Cha e&J_!TW?h} Ĩ<`9];IVlš< 4`1]C-CF`H k Vϊ1B=3S\DHŖIDVF0 2xp[h^MT!K% ¨3oVWzo1zo׼~ H:;@ӧfr دKU< qPT$H2%O1lu#lګNPg(!s^l ב Km KG19,{[qr_ϱ 9[ M4qBYT?ϸ5zi è`4J4VލZtl;4 *3uw7Lg̘\)oUU pnewM-W45o`j[fB{ }SמPJw-54o'ELVvۿ4):G>ii.jY{j d*/M$e1§~A!+sI 3dbߩ?zo^AXKN!+׼ImF%_Za[b' LdLccX^8ReuE3wCF և/c!w$_ӪIf7ѪpΉlߣK"ˢv3,yH>7"jTn#;k]L* @!Ao%R0KS$PIp| 6Q-~8k$WO:XB.t+vQO2Y>7V * fV^Rgq H )w3H1o8>e! 0{eK^wAs`Oul‡ࢊy4:\;H5̨Ekjg B<;{֬1_/.=ۑp׌rx+.j "ؠxr?2׋rsX'Z)HMa6{BJ)0p27zwDZIp\i_%?aKG&.XDi|߽󵨳|p-PMR'OTnbCT\lߎ R+'MڂyrS ? 2A!C4z,(s9JY!m#YC< ՞epq98OGTs1e|ef4+́i([2,ԎS:?H7Vv %7eΛ{kd'Kv\qu㋮^Ѭ4J6i[j8M3˅mCot3S̭)P(*/6oXgh)aR_%ZdEnEY5됗1/_nI>p+1 6Kf4.v;_72vuldzf[(M( Ҟ-y4r*wer ^ܚte[woW`eyj;[g@Ov(\Z,#dÔfLW #A k?: -,a|Ma1"l0'~:ZºxBb92vl%;iPpܺԫ NǝD}^Sf? $5*#> =;0^+c'!ڏ4|R{ yaRi.TCz6}%`Sa"oobfZ.?D>mA'/GvKc4gaj2M^0/;&qKTBCKAU;-Jr=a>WR4`.T#\*X6o3"cs74LoKHĜLڭzv wR` hXiHly35x VW?]rr.j!<pmd,euiޘ\U>LB"xGg3Lfeu4 ^8OSSF݆<9NU|10m%3"#Qu x1YzHU!'2q;vPH1 OJ efyMt3g*c7?? J IT=4J#8fTom[fF]mbXxY#b+~KqwehQz'3vz(Yۙ=(3ycM1;͖ X+y/)ڻ[=l.4l9~D`Q~&/l_i5j2`9C($@ܞ1l>e7j~ >EHwKU_) CN'/\͜e)l@e#4J0; E&ض=n7< t!wYXD^C;.rSiU-K?J=lгg?,VsXF!&Ycxٕ0o ݥxӪmoYi³ .o)347ȘwTc~n~>Ťe /Pb&;4F)Il Z>A~Nbңp#l–[!y?%$Yf]Ƣ~,̻f57:1/^ӺU`fUXK~s@~m#TcO`ЩJE{ I$德!!)Pd/vTf< F5Ȋd*BX^)Aqb/ I$m8+LmnΈ~ݗZeklQƥh}"M6^)c ֞n ,n}%)<@+Or@~Jػm~ka$:~z o pJHiX9"0f0ajLċh Xln 4&׾:o H&vC°8n}#V:;Yx3lŽZd޲-0U~kKL uf.(p3P1²(XƳu㙛"> "H+!&Q0h.pݩEq 5.KT{W,% m01K҃@lQt)u/Vh YCQ`4$Ǫm$$08*µ591m\#%)<ⴒ!brի7]̧uq(ZdӚʽtU%ߧd c>#R;ou痋❺*,vby^uH=($|TnkE aTqƘ(|镹@gȘic@\r@Ȕj ] LISdD>'ՁD"s:3aq.jK"9Cn>̎zBըedpMu ց~?RZO@0ǃ@.:f)#PLh޸0.ϳ|Vh`sf|iC<4^IQ;H^ ~0bwiCZ8!zCPiǧSQofձjlʾ0* L<]K^DM6fW#PGTqi-#6y f l^`o..zfOE^p)3)B7PUR[?nA5*UA ZntoMvzazyMߣF5ȥ$\е*C,j͚(9OBU]:AtV9{R3R%*m65Dgv%ۄ߳N/b-*B b7JcVxcY:FnY t8h Y*P?.k]8wdf ⪽<"8t&Y #/-lP&2`0P1fNǐ:"#ٹg?^h H,7F3Dm+u2G;b~VJO!n7MR2QeMS5wݽԗzq6VD" AtU[~$,Ȣ0+dAA؄3<:>i|8d׸HnEӕzT Chɸ*caNu+l^KT:)M% H~_ X w p$|4U:z/{@bZftdϩQjL#C~Z'[f'mC (0-Cgg幷1CJ^md>5-iHy=%ݮ&LJW8^E\䍑"eLuN܈akxW P)k{}O -uh"Fqn}3l̀m%RhٸU+gQznP״f?|&>zǍSAZWxXxY8F0j⏝Li$;Py_=rk~)JsuR')MBWC\*0B5i k5^Z{1ؼ.PiMYg _OE/#9XkLzw0wPV*~^CE-O1 ﷸo?O/[;߲7ac bʐnѩ-P\A+T ou`T[i&f_\)m۱^ڻ}BK +I9BQrarL Y0jK2BPFT|``%luwdF%Y:  p߾&6\}ZzOo rW.UząVo<{.OZK KMfb!L'Js@ W~ڇڛ\5(cٮ$|ozEnEߴ## ZZFDFY$= -SwIjrO ˶ xă^H iWؠe>8rexJ=q5Fd.ĸD&1 /쪅h]$3FXyO4}_9zAӠ^ . #,bQ\9=j<5z ;ZaIB/KP&&/V.Ces nK=5o5@:NF[tj{K %b6Tf2'1YInFg\jury{_GrB7 #ōouV|A VM/Y\n_@o{!b*W2ud*JYr7墑x&<ή6ʹ{Ϫ.0>VB`[u}ֳ2aSۅ{:2ggHs_0m,ȲD|GukHB=_&p3({4o6Pdpd%M,b, ƽ*?/Mdh}2$O :xHyt$(L h]4pW"IS;qO&1n$0Udt XzS#0j;><𤙺=8jC7s΂,X_Q.O|&nl=ϾOet>gԯPIi Q,hz U[vRrL9Г}oq06T ; ljfgH@=j/%|en< -\k#@l/ cd8Wy?@#3cWо1eQ#+%72=?\o h TU$9umTu;㉌}&38h8`X 2A!6NiH$1g߱nDT+7E.4qV?v@:zrRFr>qoVX)JgusM<19~#dVZl/#ĐZuD0"|2p^A^pWe~?Un[9c׽l !S\`;(%(Vt䤘Q4y?%Q|9slR<Ŧ+^8kᤜQIv d4F479E`9n3zEc;UɵV㒑#vGFb)'m =qRI i]I1R\,r ,q7)eDroi9ʈ%l"x0d;Tۮw*v;)_7'{8o_;=cv83A߿%M>y>`? Y:) @`6/:cYw-Qx{3m_N80]@3kD VW 1Ʌof5yr<,$i[(_K^b=ີ9=k % 8J⨍O*dIJRtkDHFg-5I2s:3ov唛;d]ո` bFEage|U~ND~` mzNe>gv:c"]hYz uM@%SÝ#(d]ߘleܶZnXٞs`/[n WB^<(@wR=.)3 74kdؓyÖ&TT$VWH_F6.AҪ/ӎE!iWV:]h--RQ:EXŊ$Ǣ5M-溏^XFl5yyE}㙏Ce`EqCnlW=DͶ<SaMtsD~"À(U|, b;,ښQCP_]8 |UBX$OU17V(bẖ3=f=CF։" QՋ:y&bG4 ŕʮ:#ד9b%4/Ug*RIx\*,k+7pS"oe8!MVP"6׽kcXb020H"j";-"$RL?;,[bVC(kә9x҃ N: :G?&R@} ^HRI]ه%w^p3d>.8Ac EzUhAIvcC ܸ9#ʑri}A79[Z!6̾ۺ8G//g]u PAGm4^SpF~4+MeFU|'@P*+Qc@;dkf`=ޣM8P#+ 4C/z<.WgSgDsekRp\_X0/h)ߏ_B_,Gbg ?EUq)t䷩2 ,_<Phon:O7@ ΰDkKqeƸԭ!b|s0-CFJyl܈h@H ^We1Յ=9d̬/\f#;FmFm4@ǁdjkrqdӿuؐAQk̓0wrxXΆ"5HȻG0*\ss/pu|SWgkИ%T&g!x4>JgBeV ֦(-[ |LP=wz18zT?b -}vDE?.Nwmk?^ "~RQ~ ܾw,mX6'{x=BX$?Lo˙ fx1g8Vi9GO [ OIJw{ 5LmtbF>YƍboOJеn&(M 6JtGLQ#kaї=m?ey3{qt6rL\+e$6~$ݐDϜn4z^cu/o]Nj,~axfu ?ke|^Y=@ `㗜Sm+M]DG/'QUG#3ԃ` ^@zGb$?ޅdc 8. ,r_/mȮ2fsv *䰂[}cZiF-{Ģ)WkdWG8=:Ht3Stk&hMuP83z{I+T#Ӊ5`; R'JAK.Ku|W\,Nٰ_&,vo0A7J.K6:a*nm[4)c{sbz}3n @R"H9tJԌ*6T3 7jZ(vtpт HpHEo8y1.J$rh6x ^R bh~;"{+Ysp3Ce*8[vB 3InߕړG/rzYT;@~\1W 'oTX?dגcUʄxrJUvhރ8JgĽP=}S{0$9ac2h&y\ŰaZQg"xܛ;ju* R gxk. 3OW#x~g>&;tcINKnTmȴ%s3_(џwy/xru/9d}#M:#A>gaa:~̀fu\K1rж`?二ӻ+k!SY].1O>F!U;s A،`Zȗv.Z䙊?$ȼK5Gr/3Rtm=x/&;h+o%֫q@|Vh" RB/T\s }Y3iMrNvAZLue` ig*b ܵ @)ΣU%DK:ڂT|GY)sJ³BSyR%MtsXýzvLoT̕ԉmI3(, _g~ol%xWÖSƥ6Áx1Ёy BYPqX YxGRdY ̀x6;M"]$ {?.aB %&pٖ_@l&?,G!,ĠqkBO̲Y<}xMu\a"g :R.kX'PTV,Hy6 Rt`p7s}1YdD0wQ&dƒa4)#͏+m?$oPd 2<-iRz:`/.܁p["v #3cMFV6c./dx>D]QVI昑-dE iH2"f>f|ߟf=]d*<H*670&#}WD6_ ,@?kPB_w?@4 :\R-?lx6_+g+:];nMWMZGC.~I],]Y=L}ŁI$`StZ^EJe k,bcP"R i\L.WB{}SW.i]H.Eyۘ w&"(m=ͨ&uK@ p@>0S+=C6I a>KH&aqCƿXoHkxDMp"ȭ<"s/ݕ:OWmz/VoJ/vq]Aސ61 YWqZ "<"qא(ʣ/&pJϧx, ]nq6goK4´vw!IaNQp ?avG TX&1jٝ h2407x\8lu0'/yk)p2ڭn#SqF"8{A !3rY>/"A/S1Ɋ1LA gYF'zz˜ GY}=ȃ2y]3"g"OQ+ް^uڴ@wj$;"8Nz㾍o%-& x))AMvb//w@|T5eΦ7?nFT8 %'yB B10`fuONNڏ<֠^Tx LD r'nՎmm0yr48eLWwsl>N!V|fU (_{!l&%2G15uQ`',Vc~97zJ5:̌a1O`98Rt!sK hhl=24*氥A YBA-t[@>彝 F'f]#a;s̬L,AE>-|㾩F ' RP 1{!aۊszƐl}P= Te5[2a z:?O57S/ITzTcЮ =CeN)p K2IZ{}̕+u'\@<"yeۭA#rWE].?H"sSTaw^3h-9R2R ҎӘqMRk5aXH6#4NqOZzdYIMWV;&$Yſ(p#K$%}ݠ?h 0ʘE\ L!XGV ;Nm'd>}N\ޙSHฆO 9 g]h ֍30,עEXj dP܆(n zr?ԡW̚(}4S梊PTUI0X[lD<֫TSo:?8+6CLmuXs;a#<A>!8[g3V\,s`g p91H-1\rm'jnu /_nHQaX,d/k9uZ7.HRuP^(7]T8wT;jZ9nos[-R3Y-|$"c@fV ''HT uZa=U((Kv}̍ǩ\*6ʪZN"u:k %=aO HcøUM)l'ðVF$#.D| ",rB.t8^ts*7d}?N(nߕ/ל4(;v‰h&_8!K0l[)M0PA^Kl>D#t0).\ۅ X%߶'65[-t?`NJ?U :J1o@'/PDA6ـCxjD)U)4l0qMppE={YH }|<-TpˎQ(`wkc-9GJJSesdh5b7DO3`_|;<2V?ncnN2RYd-@f缶J=+aPږkT\ 5_bk_p&{1HDAPF(4c֯A]03뷟+:AV9Tlxs1A.Y%AãKc Ԩ>v~dٗHT_3` RUZL} |̻C;:qÒPLFh rp1߲ a'c8/%4XG'v`hSpGWCr?B4eܡa{$/r3龦ܽɭۧMА1Щd *-쎲2%WBDureQ̙4ߒ| UO( 3?'پk[ibԌ"u)Kks|ۑ^KXQoR=tdWp U߿X3u(<7_p9z0܉T|* t4ۭR5}|n^!!ۛzr˪iJaȟm;! /,f>GN{H}iGB %eL+]wf'01.xe$lf&?/7;]$τ''3^2;GN/|Y0;+PZ~Rc52KЩdKl>'-tZ`uP <(2 0]D@NFyV.RpL@k*<܊3s" _,_9BY-$ZP(-q2!oba[ZX6Qc|:q~|t|_1;!+*'ͪPH+]F ,a׶,L/̓W_24hnr ;77TD9TW[ێ_[g4EJm~oQsEʬVQ@cqrE.@:Ūd$%٦泀oޏ%\\E`da"zfnOvS=ߐ cx֭; iT_'$KK@*lƤ;x0P˾ nbsg?BC~8W$hpme5<=sY>qvmU`[#=DK㽢:nxvm\o# P,Er{ګ, }U ~FǺ@u%=ɧ$j 32gL`ݵi pNoGlTLi?dУ2qs?ѠІKz"r$}A+-.ZTSN > *uBp2c+$!][ȪlWnو. րcoL9)EЙ sJ ،բD:{c mH깎:5OmXKc63<襟CDv# iLL.@N%Ɖ]kalxyPz.%lWkN(`7u"xr߅CYTZk ܙCwCt0jFsxINЯQ͌ט}NQ޷ֶeaZ0ڱnUಲB43̏v[C!BKymr!2$]}{Ueաˮ'ŸQbqI>cKӟ{X. \_t%\I02cD/aK\>`dk:(ϝd04&CYKkUi4٪*}:5@%Rm ],n٠_߳ߞ>Nœ[ɍ/ncSF@Sߪ`}Ά ݧ*{7|~EzPb.+{ZQ$Sgj/ ̧=2Zm/:0ؿq6bɘUd'Oȷ Q -Cpˮ#.0:õ>fPgYit¶^;n ]Y"zeڗ30-5I9ݧڑ#̧tߊ?;->ï)Q'6?¬]>[z7HtYm[Xz|]_Vňw"x2s^i1 &A5udHEel<_Xϭ:$ Dip)x>lˠG]ܮ^+oT[4MZL:w(ᶰ4m޵t6{={ ZIR/R)z8A%gzՉ6 s-_&U&M{ը~WPpY( |:4tRBcN0mϠ^ s9n+*QQþ"%*ye|i }kktZu o3F"| F^&eWej1`1\2D!y !c 0wJD+">Sm,nu |ݐ[Qk>C*q6L6q ,|W Vi3}نƄPK*!I 5:˭ݦ6d/gP]/J/VWVỊw4%[ $6'ߒ4%FƜ 8fV~UҽlA7<`KL+"pePA[Hxt( DC z,*%Ofoh.y(>~7^k2o*E2$T& 4#LF1}vBƥBbUHA9|Ed ,w "qVQw)`svM ojM uff̪$ 9v(喾w?d;`e66n9RoSB' άَGp"wy[)S[,/n=z-#,Ye8q8D~hGw$=ՏMzPϖ\WKpQwGq\@sAyt\HO?n!d՚Eȴ@Z#ln` Rq|Zdhy(e+$DJ4U/{8ϗ~o0Pqۙ Eøi/rV8۴2o JgQ8X`} Sd׹f? .-2Hb[`ũ6B݌&'/Cp_ļALPJu;΂ m{ {MalWpMbI*(dNp#*Vܯ3N4lNĠ:yFKgn(-P?rhi4,d-qnDBrg݄>z4+O?9.I ɼ5hp)\o0ͯ6?^`8;bo3}y4gMM:$ z]%"K.v3 ,qU=^xI=`Y~C":Ne)rHѬ}zw?ޔEZnC;iF>$Й,L@|7%I˸};~ E],w d; 7;u I'a4QI d%x2ux 3`x 7 g2o.׍ղ-vK,~<2N-(W϶!==.Qn|`b`O/|fD1pXA4J!Z5M|G]@&@DK^D}Twr>A8.\sU}4!(~g%[۵?F%q MGT*#dY$cA2!rKTh停q_1/`[G}q)ih߂0ڹ/;9d T΀沦=Gp`Q8{:x Fmsn3FvH~^bY`ywj$$/4^"P4{ Ӓ7 L#-Tq OeIs' ʪ\,-;B]?W# Cs_衮@~O/SA)F`=jr!yKWRBne]ş@p(ۗCjLK˸A6@uz3e(3~E`)9!ʽ%y't*0a D, 0@xϮCv4V_"&`6tjZK{ Pa?KK޼_u^:c9mM@zt>`oiڏBGY:T+W,; =|GMշ;6epR\oU cR%$3k{-~ й:sk1iz)Ua %^ T~7u"ć:4%LZ=[eCuzdW= O%FI GX12AUrz0~NZ-[C,J-6<1":ט½$_Y,B5P_uC̶+>n/N'R*lG-ھiWH.v73( f]M>Q!+WƝ8{È҉{U mc^RyDDmừpP Qmp#U sR۰k?:asE$B }xD1c^lp5Hzr7DpKuN9nHC2VP K7j,Y/STpQS,yf>;lM- 9{|C. &#߀MyXySk9B[ϛeZ=ʌ7Z/EC%x>."Y@ƬcTz j eXv4p-s+n+1S2?h57RL(%6@Yu tp\KaJw:j˫}|kri9Y+¸zJѝڦ]XXy`C'~:fwvdpɓ:.n.-zN*;w(ౄy4b_}5}Bc==:Y1Z]4`x7I$H ӳ"4ޛ)1ӦOƮ'7И[u.WIj|AY[g\ΧŢw߰E{SxB)&7rx1NʧۜA|7.x-}3(Ǯ;A,8 }=')~Mf*WTm,iMq4MڻMHI䆘;%. ~;#̴}-|@2Үa#>QV,m/ ps Aͅ2l%\_2ͤ-4oB}|p'YO.N, ZZΌ55&6JPxoc" F MFrj)Oqv3LےIBzɏg6dHᄦ)%ٿ6(;Mͥ7N @)vڸw?(Jk63iߦS%.'s4̗ތ`jjp; J~%"sW?JL@ܞ;Ekkotpj-tQXJjIcQ?ư-e%s[Y%$,<)kB3ɹ0P춵=1]Ferw[&bU ~þX-y 3Az F9r,Q|GWٓZ>J0j.s?e,:԰0q/ %r&j&';B[>sY.׆TӅEER/ xays!^)"Y\~_tMs?u !]IcvY@݋q0.uq%5$IsG?'4LQ8QgboAO 'I,SQZ18SfD{Pn;W7 J$,gZjgTbr_HaLT<iLI6YM8C;jJb(}z%@Nn󴦟uq׋Eg^.5.Y[KioUڙ?iE)2ilO݌i‚EOྥ!y{ |ڼj#SakmR!vҡ+#N5M #sN925*W?ey~ ِ~tI 0eT#A s ƒoFT6"LhFM C@;[ޛrGHAJ#z 'vDswKQ06|Î~s#\I;bi$ 70b6hS.*!u֊B}>_'2C_P<:饫5Ni:?4l L6I֕;2׾<8A4QH;*^4஍'Jy7֛^ YU݆93: (y6)Tvurn4̀,n(zhީ) A$* Xc y;4x'dcJ8 B߬Elg?@}۲UkrsiKuI^x&l(/}!!cN- zUehjAL7z8yCznub:@?ܑ'`*ք Smj2FK2p#`xc*ZS qe h+S;D-:㈞6"|hQ2IY6&tYira )W=E%Iis)j ߽%9'Mʲ<yP.V%#7,崓hLvY8vrTM~6=>*3~kJFbc2ig,ЎJH1+0tjkn_@ȭǂƾtE2B1Fto+4VU+ak Э2LILfkί TATӑs MΕOOLIL j &1BynE =al}}7izj`'@Mcb \,Ԭ Guc{;THqU:ܾNJSx;ahJ0TY~."е) 1-ۀ95 _FZ8x-MEE)0`;Ggij5Վ[J{;'IlQ6V_" xVV8'IL~ u,؅>zn]W:ZWa==b)\<᭮M9F$%®: ߜ hx֍(Tђp\06NM_HH'$>{P.#8~uuB.4,@VLm'0'ɪ/tjЪDT # X$mqq>gQpD"9."f@ϭa$K)^tbrԓM 2%_ğY& 7A_2=uGЙEljs .lQ _$D> F4Ch.֒trA+Av{)q}*?~<9{hGjߐuo:AaV&nHd}ZeM5=$+uS4?YY`z[޹[ük#;4I>?/Nq$yq}A Zr3 s0&VjpV | ]pLۢ脦Ii{8 ?7 l+[FsEv`l3$~T~GA aeؙO7Y0KnUgvwe"=ƁIQ[IshxL˙e K[J{5b?ːoNJ9pO^7"Iﶫ/] hhUTXKWT.Zs.O9'ґuۊh~[d+M``'n q:psڲf%`rM~[\Bt.+`|yruSf-^j80%B*yd]Lsy 8dp'Rh$w;##?k_y/𤶴-k,y(ܧh q1:Ȑrg\󿢤!W"|(kRF?iǀ_Ͷ3#);|lo1qJ~2$*"? ڽyg;BoL4-v#K.7 ׅ ŭQq7J@p\..Vh9QBBoŽ6p;[1жߣrS1-c?ؿ!;lk/%SDL'WHmmeqTIGmu(qG ֕d Jyy3(E%Ǡ;GT7UYf)Qp@~UrvdWy=@HJqk=wLMTU&,]k~a@9l!a-zp{}3*teFr$rEsIn_HŊ$0}ÒncohBѬF9ÃF!"~Nˑlí,[Uէy8Pݕ dZ1-`taGpBR4nLܢ7a<0ZHKmgdA ^JZS"9t`l _'W7=v2ng!7S3.$Ԇi{|: H῏M ކ#F$SrZnG'g=~4 Mwiwʛk,Io,ɏqm>ɥy)@o{JQ(mBG~pv0 CđjZ܃ݣ~?a܌`2PqtpUǤV˻'0ͻuryﲁds-eL܌SG?".E >op&b^EA8#4;>_Uq:45@㎥Ւ h\]w$()-]d۪/ wnM%jq*9QD}FG'ͰUP*,B'@).8gӖ > @M %ϒ]Ȓ78^qb]ń(a).[@uLn0B4Z cXye3f@Z 䣁ݭYμsu1R}*r /mr#QxjzVoMScdu=$Ky4],au=:P,1bt/ q t~L5#[ |DŻ΅Ȣ_4?,:q[ǩ@|0IU|/Yfw ,CE/ 8;̓h!xqyjJE9"'5ѹGE'ʿ dNYi.d*LX?5|T sWjqF$ūfa8nifrC'X"uuLw2"ËH%䯂FJ*JphkkyFVaW˨:jE*۲']{u_ ~" ? 4CYRBKrhc9/ze yҰLIɑ-n(~Qwʱ=х5ߴ%Zo-ܧg0Ȼ=XH}4 E lPh1b-ٟ ՚Y5#&FJD9xQ,rtU 3^)5nOG2mȺG:ApQ&RKF<7~1(n:ǺX7X;FX-6ydLW.[Ôʳ)`>Z{<Dg *aeCd6nة5o03&[,E} +$*0in3pDK1G;#""HU!Gjw0rFIpXK&PkR8rl*.泣e`*s3nơP?/材hNvb**n+>]@\8uo n+ujw PP?%lDw%xeig\d Lr@b3S bfB(H0s=J;Xh#Bls4ڔ1}=y;1TkW3r|8JR6iq Y 1}بVʳ.OP|$ [['#g h<#}E)) (D: ڵ{fД란%Yף2m~7 hӳL. :0\ySJ;5Q ]flFGlVwl"0=%&HLeJGCܤJۦ290|kק]arWͱL L}kEc%ѝ]mC:e5]]ckfl{Ik'7 ȫI4 732<^;ҬL8wh~]PkEY;k!"{y$59=g2Ejk95W'B|`;#gN* p:m4tx +2) A^8[N>զ{q:n4-4@jɺV]t_i+[s_EeeĞ=?S'D%ku-X4q 6tuk&>- GL3-q v=i5L3R*!Ի@Nҋ Y;0QOy,~l֬' g]lN qI eHjӝ,F!\IM~ٗL>S~|X${ȏm$U\GOofw ';]Uf "ۇQ&OQ I]ƈ&0Pl{YW4Pd/8+n %6)4@!G"Cw.am}OwJuF:خ-Eّh47tVx5kjjrR-[>ڟJ]~C];~ M$'E30^r'"*>"%o5KyZim$<C~spdN$dIZx?d'Z05S2nۦe6v5L(y.w읾GbG\V>^?FV g`P*1E]%Ї}TL tEm=O ţ/Kf,G0 dL/b#6F7f{l+'ws-L\Xܤ*u(濊 SF1;oeqdI$8-Ĉt_uZ;Ϛ݁b)\h5} /u)c}e>đO_4%iAF\o*p]GgTS $]}6*RZNӞ>Fc##\ nJ\[y yL{z!O/nc q!Fvݐ#jn;&tpY'oVm`,R$@/-B:0mޖ ӐBbO`ņ4},O\&|vX+$JlJc}DNxRd^⍯۾~(hQ+*P&<4q>7OYJM)l@Z_(;. ')GA¯O~Mrf \~ ~cKqgMIivcD6H| }Cefr||T?PE38/RilsuUWv w:en^i @1H9ﶕnX90htN $mdF>HBak|c r^GiU FDRͅQ]. ]چv>Y*jT:r|9ldY:s=~uvڥCaМx*TstW7k~:-;LxTiLR \rcW=h_}ᖐ-y=S$_9f 61ʨfn4I>ȻwťGwa1^vUcE|r6/s&Kq2yyDy,O`и@,R tkA>ޖ>TI'y_Tv hV7OY/jŮzvBAdƆAE5Jťc \ _y=Q!଱HJઑPx8w5&NTT>&7![qoV?GUZSՄ}2:A:Of*DTPLsYC~f'4} %(j 9;{qKF짒9F&2lNbIKo_ iD`5jMNi\G[BhUX)yd(#o*zS`NZ!V4T+^om&I߯?o(c*d`3b}!*I;rߢzvWܕ«Jr5:+w8f}ƓP{o LD Iߓ.]_jb+J]\]UaV8Gzlnָ=%F>-]o(~s,T+.&[X'P)jި%K#f9B&iCFU;IO$h!Tľ\J _8¸l-0),Jrm4Xov<-OԽ#t}ɫ5MTe[+ g4ۖ+%#[ZZcm} `@LzOhaViǜ\F8öp^4 cئ6fMjI: o!-N#bMd~ˎi2w yQT /=S$#!`x{^-NI7~h Dߠζ6 gPӐߛ=,2!_ 儀s+$Gg e|TS ^DmRDAë gauY-|E~*mp@jkJ!ۈ>:! Ɛ<;^3caZGLR ,^Ps#4S_5/N(K;fQ^jRYdTԀ Bs*smy]<<{=@Td#Ch#F|3)YpMuҳjBZٴeV{?}e{lCĄh56>>(Xȍ0BdL'mc\GOm/0ս<áXfr$n yCT#r2S1ʄ)26A_em}?})Hz,bXjo #cuvlfm%YBFITY/X 0Ei/;j~9@`@̅hΡCΣ*V +,eM4.0=l|5PkE1wR!Jь0̼U:Ij] n"zr qG݃Ͼ}dq#A`%ݔZz0Q9j/pSؤAÓa[S&I x!7yUgDE]?8` c:J&bdN99!Zai!+U);+5R@-t u֒"fP7HtoZ4VFi77v" rX[g0NV Bޭ[QH Tjc)UD0/C.n[wVb{{MzԤazv{F:4^zAbۏcVQW}YRN3+yaCI~5iF׬/wXRJ!Cvq%ČL-}N2 ׫14.J6Ve\d Mܙ26A}Sw Opspy0u"Y 4C$_C036tg4?^!!\F_.8 =/}]-Bj]Mfln|<=]7 \JRWNQN1)!HF X@g$50W#,ʼnNNCd!OIGF ւi)6W?u88`fNA8gR $ܝƣ "[/9neP KfOZtU/?ƭAрnF kT.X:Aȵ q=@Mz8bhg&d4U$GZ)x`ܜdL 9pvׂdЛ*\"sytgJi1jNK~H/BpY@3,K=6Z!< RdY]cfעLG| 5np;bܟnupN2Rx(͏nrI١Z.')#ĘKC^T}I!.R'{-Ð(I#SѱKjR{'\Z"03JU6{hm'm`kC&k\Z+cOp=aCěJ@*W;>nqJ;@@H4E7Z_hȘ/v*.#y_&V T[罢 /鹸֚ŽŦ0%:}!VlW; QMm}>v!ωwVYo_Ǧ^s腃l.J geԕ3/2.t0V}}o.6rp#o#H4d[X ]C,.!^ 352%rLHafY?If +Q[9yPJꘃRD%[unYxCDe‘6B] %v`^ 9w[u"d o_ՠ26썌|_Q[ؒ5?Ihw7L .\_In$ e㝟5.Au2_ȍX㒙~9ݤ^l-7f#v(lniM[? #C| eZڳ+ߕEO ޘ!FC> hS,Vn-eŪ20B9!D?/Kު+?堧ֈ [q5}1[~'abӵ1/⠅Q&*H5}Adf0x5V:Ϗ-QxxK89k]xd[7<%ai^uvQa!)|ٯA G+P[d¡YQ_h7~vqw@2Ygaɿ$<[RXA nbW#$6p*8fmxć=_ (^HxyLT* Hy"zNTd].kz?>~4uoEIC; "EHPi6Stվ$؎/}7QأǺ&/%9# jgmbwʨj.)|PQ^.6ڌ:v'.٩GOF ^{~_>% , GJGCRh4SͭQU֗rV1_+;gNK–_qeN}7jV@j(u*щ=<D:-bI_.#TaRtt&-jouL*^BNc羾؝K'7shD2zƳlKw KWRʲ~=ĴhG;2KRhϬFfB<w)RsrA{T7κ/n3ձD2scYqY)

ELݸA,*IFkÍaY 2JOgEP?-,Yx7~CNal+QM*[d,ɺ K:{uzꍪ]H49F}[5!U,t۔h&N+^+h8l}bEؙ?y¶4 VQfccE?O7C P /ШcS35Ƿ"!}s f Vg"]G+Tk{\/.o+lwۅ[SdҽWUk1i ȲV=bPUD[S3*N?djO+$>!}/fD'|%x/oNم%p) (,5viYv[Pt_y M_9>SmJލOQпvX8ol AU|3.=r=<|IP`iM FgbCD㑬P,Mu@OF9us&1_UaՏ28?v<.QlY9O$} iE&Hf+AngA")כKK|:I{ŻY>"5N.ft$|cYCจ}sSi 6jI|9 ɂ#pOyār>grkQq*+&1ͼJ&C:.Ee\G-3Xc˟pM$⿞a]U{dry:Y^h٫H߈֬ɉK {jලo۸m=ۅd¸p䲠 s_D)DLaj*خ#Wi!=]29İV03H;ELOwM X[H~+ "4$6z>MόkɮuÁ55mb–,]>mh cn\,=GA hd+) soZKtrTlnܶx*]G刷en7㬬w$}ߘ`7P5aG: GW*3qf:Gd~H[EtqNi=S?uGQ(+#pMD%!VCW |Op\NG.n\6%ZSd%&KWܨYl~WEmd eD{fګRHK9 9ylgBYlz'4y'=â;ą _H)q(Cy:ழ (8 &O[^n֨⫠bF'5jq)DՎPʙ>jܺ\AG ue>EjXόAY h}vYa!*%d>CutE]++MeSLj3,wj;"66ŝ&MEHQ^4zV}Sb=~+@9=PIͯ%HiPډ V˸M{*aL.F:lZ'PMų{< rU~iɤx(]oN1qTDfKV;'V{+3:4"@ G̽qzSg02uX恆v5 S՞zRfjxȳ{BdE%p!2+&rDc^sVK,%~Y?96 ?zW( ZV;VFR ^+fyDv^<"-,IQlb?xo% @fWGQ4H*T?ARXqrK9WRߡKCnO=Gy7P^Yd/hE LYsfϲF.$w iL~Lhta; NuKf}Xcz9TŒu9V,X?M2eL"lߺ.1%L(,FI(]u)J]^֟t )֑8;aYK.Ci2V̜yOǝ`Ů~`=|K?r}9*kD;8ؑ!]OU"GnA"cl;IarG7n!qf ~xj^t8A)0z \~@@Gܚ9ĒpM a9S fa1f$ATχP m #Lpߕ+FKAjWByMėKVŻ`bj dqA!|m .81lS=TЌݽ:!y}?ޜ۪Q"Ij%Ձ֊x:Lh_nA,u1ǻ+]/FA#S"b?+“jv7ɺ\7ksMN- 3m,Kk}Zvg?^]xb0GTXVA[n8 `C_PޞK|_f6[ .1G `MV}&`D/Vo֣4i!!3 obP>~2mb<1@e c Su s'lMT[,^ ސ$@34;s0*o[Yl ]<&O(cq,ߦ-YUaྒ-6<}}@=[*pAG~/7|ٲo7o1_l!xT?`w)am@Ȧ|||vHv|F:toDp2W^ tyҊB]8! fO&+&V%AMK?b}Ȗ#Xb#ta[88Expc&H} Sۆ}W-M1uN bp7w~B wYߖ )l28[v Yxi}{j'QE8bوl}gLĜDt ac̿͸D#bV8/uԡQC(a _.QFUe淯]ܲŧ&RV`TpIX=}=v?(|i=KShSҿڧsݒ &J  WS1G;p$r LoNkorȝxfRbp0\_@w7g- $]RYS @99wv(.@ry.P`Ur1|e,O(3 F%vxC+ >&'u;myEB:;1FCZkvD (*Li>@@%-.U LIengI6 }W2xq" mHP~11El5)+ʽ߅D#;=f̰=u1sb0M3h{|? H-0YtA@g(L;Zcy܃Trrgl@WQY<(H(CD^P1k, !ޏc lqġ/t]!r+Zjk=s̭B}pq GO;o@ ڞXMŁg}KA`O9ݓB㞎@e\޾B u)ÁNr5C\Ֆ}藛ˍO{Nbn(MYC{ zn@3%/s),J:sG,&Ǻ-?60L,C)#L!e]ð%u^n+LR)2Fs5E ,0X;BY!]0pegۊ.5,Z 9iv{-Vֿ׸4K58c9f0K)7gs[z\V VSc,J鱃 v^x g7ϔ.&BZAa1V|:g͜=Zν96D6^~ERTE­&^4Mt_R:I#KJVvjiLCPѐ8URݫшnlKfj ,17w bEMߌ)[ -e(ڱRf;=P[q`| z$Aiٖsh_6\^R/nϨ+% Ʒ`b4(1Q-6Df-y/#T_4"9)7[0:\>R#RN(DxaғmH\aG95Ɋ@dOԸğo_ RQ"ᢜj_Zm(*]^<2-Ib|;[˾=w$'~> cM{rS>)m]w?۪h~=H|Y̅~A\T #ߓrmV',{;t뗈 @BB1B2D9Ef zwC1\9!l60 YUIVw67#W- QN^0(9¯$^ǧ teg _PJIZ #J3\\~\vFLZTl;b9sm٦cFؽF DFUSas*u d~r. hh&35ܠ/zbf%f iҼ_8c>q:&aydc#H9 %Tm2F*璈 "TL uEv,!زni{ea}`O}4ĝ'3$Ѐ- ^L:x 3TcW>xNsLjr .:&tI^706sDWp}) N9Ve@ohP=jap]FxږOgT'JgoV,)uR.(F%-?76·h<›e%Fa*X&;Rټؐj+P+N'%o?SFA*-q똧Y-3U+wF򦳨5q#Z׌#*Gj}W HK\wHlŏg^D3Mx0B7B?9éif9j]Y>s9X$}CE6h;JqEwCrJ^$,|syNSc%fN]bVy Kft!pJa$e#Pܽo\ϷT#f#3nT;ݼx);XRzɪ0lFtu4x_g Ɏ>O[8ڛ1٘JK;"n 쌾38lcŔQD[j<]e\N/Y|jauΠϑŠ׈QHB`[f1يK݆n`4< 1-I  *c3NFϩP3gR!Y54s37:$p-bN!'G>ֆn+9m"PkǽlKzPS㉄qڊ/SV})}Y )@ 3.&l`@Q&ߏvE%qڈ:ʨZ KɑMTIdm:jV(^߲dWpiq4J}M`T:=*t,(='G Bjb *3s}KL+ﯰuNKC @֙.viBi 뤂9DB}:=\oM5wGop_ץJ! ?th e&]YyEM6֋՞/jQGFV]/nYЍIp{"!]hSwnTH{ܨ:[M?tu-Ė*:I~IS%ɐ˿G[HSLSBmטZjoMH0( #irdȘbn"d5+(;m5_cvV-&c8 ݲҴjڲ²&w*;1ƌb5,Bqߜ>rӂ>9jƚ<)pLǽd]~[iQ`e~`D 2ūSnR^-TNKfIJZ+!(fBQi>Aaf'߼$fb>A(&%-5Pb7jY#eUypЗɦAU#[ipIь{DVffj`Xd۴vEq;>a@.gg(%_m~0SEmjYmI҄](u\j-+w̓D[ad (ż|.dPQpg}=dQIl,P^E`( c OtNfІ[nl{o sp=ⲟ<ό*7^ڑ|vSR xF=kw#/5̛1>T9Zvb-x}~^&Y}`Mo="cļ{7y^| Btw [ ÉPb3ZX^`Yծ {'1I>uQ-\;Xuvb,|&KלWrMLDe!Fѹ$/CKVg(un%L hd/t n[b6P~a L6u_422]L<]+K>@lpj'ԉn1}UDwNtM7Ӌ^ յh*VaU"~ H[8}m#- a!YGkD͓c{4t']NSPkq]4x*qޯ [IxZ㡻&i d.K6՘=yt38ЬeOPLbąθWd3jʼns|!? |h;J٦Re¡ o'By/G)7 -ϝ!Luֶ뎥L-ܾgOʲyp;1݉ixf*Eo4Ft 1έ`ܟP_cdXB$1|>u:]k g:uHS7B8;z^ ;R7/Yc8,CQ]*r;e҅TjW@&QV}B*L]d7xa4<=%ot1b\$,0ރ޼]I>Ѫs!SA#>7m1D\4(pH`_%y W\V.o;OwAJ6}\bvHqr=]53경]rK2Ԟnˋ<ޏ uGv Pep; 20`R6dgݔXRГEzbx:sq1 ݢь=EEmehIq"Z٫^[cZSSBYQ]s u$#^;1w QR߉ ”{La¦ϳ$߾+Ӹ!Z1yK{_e/6S5 .+A\ghIGL>Ki&P#nq Ps5a?rʮ Oo;o·|]x"ltUHI-m_4C߄&2f Zz7ۢW.NbQR]Y,#\&] ;*l[{.NJσ^E98|4ݛ`ޚ%>\!Tܥ6>yȹNӿH\˯Z^=]d;B #zo(KV]+Sh=Fh.HIt^u-t?BR}j\ Kjۢi8SjB7 eV X1a qc 82*z;f>x;Э}@<y|zJE9s_e4:iFɈrHa7!X.!kU$եlӭ?ɚ Sm"eV.n^.WRJf$ڭt.ϯGR8Q6fN1U%z΃Fȃ&_?(]3s^x &nuXM?s/lUG]C7"S3˯E>ǔ՗/r̊k IЎ]<- =?ڱU4lG*ټ/s'Q8/` K,'}5'?5E.8C^Emxe%2Wg)I ma#ߨ%<vԓPzst<9oSdr}XS36M%&gؙ`[p1= p6m;9Nf9Xx[;B1ڔ,R'ːO&pf8;a \֊$SS< 07M:(9V>@فKGCOCb@fd(0TU`28k@yJ1,| e LG7#=UWeohIj1Ҥt;"`շOvpE 4ls%rʒ W "kz$ 47{͌=}ckō~`'|fJ$CuZ M*}lp,)0h" P*#@=f6#\MڬDgïb%J>p@J :L! gUt,-cm &Ԍ-|Wz꽆ӳچ6vii%m O(^γTj"iST|( g6I+! `5Bgu_5w31-jja{ 614Byo:X6gfg򞨊6~ fdM$[(,;$(nBBʂ(pzBRD` _AIH{*˼c="=Hn{ wvz&V H.[Xo"Ehi(ht'PO-<yuΊHeK{}™5HjU;F-~PMec=v ֎s`|Q\K\m=\Ŋ4 Te@aQ/88֌k (,Sog<yFP,̢5 Jܥ~4-ƺ:T~`֋!UOӑ^xڲb !f$VL+uʿ ? m](,g2,_7J=]/0"vS 1bsDdN.}g0$]_D"P2H o(>E%,|k #i&rQ\4e<``X0u[ctb+5ܹ n~Y7kS*@r;oS*9E#_AkteRY,NyH4 a}x5@6Bah$P(S!AA83 ~WZ7nkr1[\, ~c'n0ƀ|L)b`>g,°5R]GEYZX] @R:Vrއ.'~N=gR xAl^sdvv)Xa1 R# }uLW;o*UUHfwr̦0;&xu 6OmXH˔0:נdhY2.K{~Πu ྫྷL! \5Zen JKezy"[PE[1RIsNl8PAht =a`[xGUfDKлeF\W KI# '[9<#a kQ̥UN UxDM\+5뽹",{sL?Ѷ"^ׅFl%rB* 4M㱎^(N‹D`.( d>z'!q)Бݲ_hg2X>u;qkLMPȑ}:VvO۷21jRk\>b uRQfǮi!3/{R2AqLV6f/BwYϑgڞ1A@j,geuk'>gWMbSs=}rYX#ּQB݀o8#V-ɜWtmGH@+zrz5BMGHP-g&ITah16ϝtZn%_+¿ bƮuC2k6+jzǹi3&r%Ќ{@~ia($qF=4iQ:APa N@;/.%ny|LTˣru@"~Mg?N}Ob<;2lRL7=$K2ec8}#3ƞuDp~JM&[E$ 11ެٸtu Jw%1/ؠYKеzt?1..-QyiQioGf]?03$q~'ĺ+ab:q?lkˋm I/ޒt0a;uԥ̛,Y5VςZϕ`j;Ui_v6uh%=G?T7SM~2*v~l%K \5x~ Iq\DjuƨAC-ߤLh͐ČaB9W!ڢtBZ˖ZÊgWi O̶x)˜Uq^3\Ikצ"A<[iO[U}BM>w6f񡢕>p% l}~%K6ԫ 6غ*;O2) _ᅄ1.A"+)7c@}p ];i w~h'6ߜspvOs?5 ètL 8ljuP0{;0؃hiu/;`(bzs SKp̕fez}nzICLʮzC|eJ ^;Y|!2˃d}^3TFOIpx& 4:-%AI5"q!K= ?$Ý'd2SMV{]LwJ+7z{JG*q78^;ao,IwhǙUN"0"_ˢ`/s*$wcwWoH:!2 bXd+^ ߫%kIiGr&R?o:Xq=x%$^܀_}2oЩƘ.p4/.y/>f- (ӯ5J=e7AWE ω>_$v9`pR]}k4_ 9ʘmleG^!zz:O.Hwk.tZbҬ=r`TdDVIܿ!4ʜyUqP:Lɬ"YasM `+mYCeL7 |4kWcjKm2DTe%IeqL$ogrBY`0{6x5״qD_a(0v}mt ,,Ӆ e.6QD;MP46Wjt`F~.<)&Q+=-R?ݶ&JrS'?7p,v, !_D\:.h?(w:7BDWIͯ OȳKhEAn~G8? da2r{8) 3~s-%^7'?!Xz4V~H>9N$33T/X`Cc} {@g8m^v`lf^+Rlh-W 迡7f%cLdr=lCΤo%g ʨkl6FZjiB6=z/+8f5@9rCLBELt <%ɨm|sv5Y2Z͍BgSBH{)LnPY+i*ijqB,y!t]BytM Vav@hĐ ".S_jamo],'W\[H*nieC/^Ai~بC_PS-V^,\OMt<%ewŁG V5pG(їgҥ?'@rd%1w'woVvvEVgAkY؝jva=ʀܟ\c}Ƴ%错F̚`KR:xDş +hmG='CfR<΋"k9-x@a껹r+hbbkB<C9֢j zWAz}$/K|?w:^>q|lx믛m *}L"xhJ ! y]l,5m[tRxx#M)"GBɭhy5?4GyU@.NpD h`cT]Ӱ&Tnh~5+=ktԯ71>0/ě.A_cP;F" i W1S,GJ~}G<v~H ;eB*gE=no7'<(-"qMؙ.)P7@RUo ǔ)j 2pldS4stwjΉ0B *ٍX].|-t<}=֓NNGL M`寲:A{ -nq$cG˹Uᷦ 'B`$a@t~*MOFgڅ֊ܿq Gc'_EL|&XϮ@' &6z7~RPo#m!1Wy ;{R's/HZ1% ifOL˝vc 6*BȦ6%gտǽ22ڻ|TƘdž?lZQJ#16ɍ̈'l֖u%"\\]w-U&yXd~PC7Y0F7f˰ aof28Q&½_ݖ4[֫7_h)@{K%~SL>AL%]imQ)k:Xb=E0͜c"2ɂ'Bu:67f AK LcjXA3mG?!~,ዝQyb_RU) 3 !;af`'1#iS<m1f%#vdk(>8l%}e<>=% 6P[|p-?|dv2vMWk>P9_0Lg05$I1#*qa\6gaftXo0fDI lt:sd>e4s]ENF,:',JT_hc}o9OxktpepQŇt`5Re%]\3 9A'=ϑQ&q(Cosyʕ|Wԗ`R|>rS5bQ'$"Տğ xz/U_Ym*  t9omݍ;Cעr!.D<1Ȉ;~˷(Hu)g?.9ӄjURHorCV"Rt3VN-DZVZ1(M&@|T>g#4BzP⧝H|wWms_T6lW~/n<׊'ٜۿ0$>o"uGlQh(˷@P~{G꫱?" p}ˁ&f/ AKU<k Pj)Q+;jjfK|fxqO>( А^)&4+2;U(Ol?Mt?83v0 HrҮ1$HUğL1)ԟRuQ1qW=>nK kBZfYs;*H߉v&>d-d~ߣǺAکFMiXdfjn䒏qs ,E&ڴxzbQWMl*TLѷPX[iYS.`6# X Õ%٪ȥH~IO8%AfLqє,>ʺL^"#cg|Hb j~{i8ab}T;),S*<\e;Z³g\t8NOE1%`k9X p<8 `y#/8=Ė 2M%u 9%,4-t(ҕ[`e)T\QFBrHɕ~VmƨԆ[~O)sK_}`9Xvf9G$2u߳+zńGu^)w Ev_xlddTB\*b s,IH3Q"=k 0 M$1s,!6`7|~YQ&4Wkg7z+~Z z[zxOd&y2FEz3w5i@sInU;eZ+kfq=rw‘k/Z<W(cܘ{X,KՓuL[*›G}_~R2>ylf!>_4q3 s5L^gdy#w y B{׍B.3Y䍹jvpn{]18ԹcmprF΋PIЊk=ePh%.U' j;w؂t~/AE>kfSt81?(] SJ>Ii_zHRFYEbN'!J QYۚ>*eDu'avD{շsCIݙ;H`E<20L=FG H?ت<^Ora+(KnH9gA,S| i֠WS,>y.Z}\gq-Ԓ9?}X=!:J`-[Hz7Y;l1Oz#zƳ2fѼk=eXZig]89%jˇ@j ֙5T QsZ,~dWo%b΂)JS&ifOJ&++0"r-lX59QtFxыRN*i[\ t]@;XH>ŵwʻ_XWQwK_{ eMTPw ڵJ&:k**gwBY6~5@Xo=-b=dV1wK>o^Ծ;OJ—SnZz2pD2 XJrMo_ʿ{]{6NňWOEyV,h ώgVdM!,/ش,r6fMUP7@!ei8;/H0ܳDuBY-󖔜S4p$Ω]\-+L%7NX6M\DZo!RJqϯJsڦ8wV8ͺkW¶\Vr.3Dyfysr( 3˹x}g|V`/h-;0W8?to p:9)/*nٽ&UD=DhSP-O]ᲁSf nԠ:M53]ҩƠO ^ &c/OÒ.*J'h`8Y̓qV%z36"_s\`GqC{~RDG eL'1>T# A;Iek:64b($YNOQ;0* UF2ȅw B۷ >X9F,c,.{Ed"T7}/zs@qmYof Nq}FGQ~ ֋ˡ|&K'ߠeo_# nA6mf2D}Z(#ci5k#-g;_u>Eq Nwa)'d|h[!*r]2MOct-#]̕ q 6 ¼u\HRx^\U]]q!7tKGfԑ:U rI]i|i!G-:R^BՂ`-l-gxN̊^-"={0̬G֗?>Yk%dW#5_u ۙBcB!&VnX9 ֺ=PST4O|Ӛ*ŠJ WƜY%Y[Kv1H,T\EUB'SlnGD!:{5Hp #d {CDf]Io7c)΅y@3mmaw"c!oZ;_{&V{ʒdl]+rZK[ Ή oY=ár8)FL8zq))MN3MM ]}*s2=## rL*8`ə +BzqvdDЏ-Y+^_$؈RzV#$b$x2TNCPAzEnxUF f*@ 2;;|ߧ)Wg^: /].+(4b{!VQ|i[ B9=A_Ohg=Rd_ n6AAq@,>ڙ>0}ǚ?PP㱃{~ϳfqS,Au=zwQ\2ߙZy况]DrP"<.eE )z=k4l gmz'4HS0s)aˉnE*;&eM!52DH wCםU''v/]ڱ;7 A\ꆻl>ŀ rD@2Dip4<2gp8~M++˴+ ,QI$z~io4Vfa6_UܞP#g:agl XZb.V&ҏ[ )[ke934>tB:?(rx27Y40 %)C2ytt]- $)9__i[}=B*)0b3A-9 qMTTb-{dt&Iy#jȴˣ+g_5Fka?d#MTrhEɌ2K $|=Qvm^q{)Fit]KfkBЖS(jQ2/iQ&^*κ{"|A3,d]Af} V1y*mIpƪ܀]7cWTP C]?6OkvȽ8g)3GW=>u@ٞBD'juVhM=ɊImIJB\OVyEN>VB+1hfH9fN˶ӽa @C0n,**q op|S镥x>ۨpKOu:x=s*UG|5޵d$;y,^@ n"akb ̸ ˙' &S{RFA3VWJ>.A; @E4%KT@j%20t̀dw+Clu+f~h}~  6ylY"1,-'݀)+Kb(i. e{\XO>~Xzpx (:N$e8kn(4G {=X^-߬6׉x=Z"0XNMtMR`Bh1>%tdAvj/&7_*X5ȉDSo` /t}v?~ s P5X_7{:l ^.}59]xR%ږi0+Sm^. W$:>)"pvM/ %-+B*dqգ>Xk*^c,R0z0k8rN=-\MdR۱7 +n\1{7QgFUU6[(8_'oLLB.tVDr]-ӾY". jg%ʶڋ=j1 /dwH|ɞON&k&hz YۆMg.`4rj4ɴfGvhԺ#LS͌[puB^V=p,+e3)1*`YĖ3BިF@`W %U磕:fwoձʞxhДF8#v>W>׹7z7?ITWbvۡ}P :H="}%u7Kٴ umGN~p4ͥv(7ך *M\s ҢKe6/I?j<X/ ]J[2ZxQA+E# ߔ>U'!մ.& }E-ύY(g mb\7-<ךR >~˼O+?(>p'4=ǻ/ngg76>0)!#virVB8‰%3}@q?]C))S M{=ongn,6 ,RNuڴhPXT$B[Tkꐎ[G~"ke]"μ^OXM;d (ٖUd|~ UœVw,gڅ:s ?ʺv5ym*Sfզ/-.Jo).LLI+$Jy6 fJH @4ZG*9!ؗ,_R)[{Og/-Gb3sE"OZ;q.>?OȚmHɐ|gxI{h]fyA.";^s5O}3'.!Rj0b߰ Xt趓pgA"ɭtȫ7 @MJMjy;e7~~QƬ)EB<R $OjOF-@]%lm%0I$?PYp5{9q` RR؋7kW3A*!aO,p!f k%ϼ :ݹ}{w=Q⒫t$UCVLq՟N,-Fғ:|< YV\bd@* oFSHHF.z͚o,#%*f/μn$q<&=/i DƘr,m6|>dD kcoj *=GiЇ?sO*&zMMefL:,BUBtOgY7 G cξ{=â fC fص/c!O6p tUnp~p D`s_iuƹM"͹Zr`sNs?YDEXC7Q ,Yo7 aI]TP i`\D(ƹZ;<:~hh\nU7C1`ڿ!Iفg+fA7mO\jqz(4(Iχ*ۋ{p[ȺߕN,:$5-MAfN9i{;u`x OS9%t(mv㫽 AEF-Kǣ8}݅;32%rc" mjC}Byrt3pl H3JKB1} Tb_`i},unft:Gn!g6ۜ7sM^o1(MA/ގ'(eIhs)('+ZXv̧L}udoQaq ]*O=HPԐ40BA#.hs4m8xǔh,ZHUZNH*Bޏ9 6| %j!ьfrf.#$s*0)rP* YU\*|aӕ"㈬F\*H[)Aᅷ{~0,ĩ߲"`oR8`[uU2!Xp$wDIrmwANU6ssnRql@)V }sQNn>!nD[cfՈhVCv%t^V?)o5d35ř;9y^zvHt#HڅY1̷N8=>df wq`Sە'J%K @TESP*;ppa[+*^η>6"a-ü C\8[nŌU6N׀]N9T2,!UzYx7q\m:Y=\sS:cRl/I^ d6JrmsϛCԾ۹x4xȢk9h_իK !v7:.RvsBL06ӈNJaTeAXZ L^mf #'j|#K6Y1+e*NW/}%?8pY([4!1K'ɔ?l5VʶvUQ1oeiS9=) :J`p'E`p+4Sl Kt!x+LJbL[k@09\ebӾV XSu2li% &u$ύaG=E;\=Xܪ2v9@x ;7-k^\k-|RxG0'|H'Cܺ3g.Hzԏa24[;Xz3Z-r!=>ZR!iR%y ne.mDP=`{I D!D^Gcٍ.hW^sz]He%h(=," i1Y0UWF}%M}*pI9+MPg ?Gd^HYVQe%WOgqM$Hh+ 텗De`J?nw-vn~#ޭأ]HU*tI:iҒ$^svǡNZc/K}ZzDʆ 9KZecyGAӧO`q%w(A:ÅBmň3IR#D62} |PʘؽjT$NZP3FxDF.'6re2bYOmڸԆ sT.}x*XG嫿AYm?9^7GDrm~7^p#,^N˸yVrSu}H'ny2o LP /70 {bAUM '_ڪM@Iw+.1stW[6 P̹˪CfBϣ?DR8}aʆ55R b ?%IakcĨufͅm3:7 _`OBo zQ sO.cwFM;Wx (4GEg6Ue9oXa3׷@@| CJe묧lՑzu·35O'E0`Q].kjJzLk!? Fd, I6>r$sa9aA5ǿ/W$Gq~$䘛5wR_vLz)D e<`Ӣ&{a-ik|AʸܺcؔH&{׃>R Ǫ=yrPpHcj(ك&C`c斓e55l1gNF[Sɴ‚Tb/YJdG=Ӎ7!Cp*ȫF][CuNAѹ9aIMKkH攝&mdk8$Ҽ~8G%Kgs-`ټɡJS)⍄j1A}M^LH@9Jd+(K F̷Z>HtM@60lX^OK7řx En9y/ɗl ΪC,Z霱/.=/}%dXEbOW WAI3'pƿ~ 3Ia||\!9-^"ljэ?G +;95rȺ@K[|T*F6RY_7U@Cp KMZT~z/ƪY v]3 .y&rG~";}`ɳ鐊~W$Tl͊F}2PXd<+(<_m_eڧ]m0^vsoD% hσF12θmWO6rC&"Tt+ V.^ڂ% ti@햛e{K]:֢Jr>fe*l$Ug.wm<Ac卉+2 |iq'ڗqEYByR0Zah(CTvH_Qq}0JG>J(RUh>xN10ؤ!;T̄`D@im>'R[Cﰇ$)\d3<=2G2pK \"3?e9'QU"|6#s!֋ 1yV;4I46ڛJ!˷Qs:U31h} O_yx9&gd;@ kp9a4?@n&z8oKtmP,>.95S4 9[Y6D1q՗}^ r^+7L8ٝ>d0K+y`6O[,jN$rL|KoF`ތOq&r ]C??%SPpaa!%0-,>,r?bX(2L;:>`ݑ}zE--!SJPWw|xdF%Ǽr7m{tm,c0(Z`-8E[}?!0w].ϱ ,,YV 6/ &_FMb"f>։~mZu- #Hw)oX y`: ˿ n.>j(i}P^& ~W^"1 7 }8'!~ťpbHIJ ֿڻA8G23 Ih{Xod3ͥNWWH> 4ǒbsw2 b8l*ċa0̽ }t[5+ؚ#wq|< ZG }# 1ၪ# ?i{ - 8@1dAx<[ I XpUA՚#TcN언^X~j Wu\77.ю^"6\+ ikجѭ+@G֛U_ FJڞ4Wx5uQFB~ik.tR 5ҐbjF8fK.7->kBJՊpC+rh7`3G䞺c!D 1 8򁮾=l5NiKK,GsIbe1ĕva4(ۉܱ}nMK2>( v"⠄J"ɨ{N_T}+..MwXۀA -`|Waw_r Ad*}n/ca(/ʙSt},Cx=ilViҙ&*yurXjb^I2M s. Srzn ,Ÿ~_;0o'f1g XrB [y< _7 Z,8a 1c泡3̀:LkO0S?#5쉌t*DUupFJNs`'Sm}-,b/["V\iF:yT0DecvEUO`{VGE c>'N@X"l*(9 C %tZoW^r:T$°ukG٢b5Y+DhJ}Y3lkgEke>ӪY(2.DNSa&K I5):"a,Y%1( |N#%F˘D؍P;4[t Udd!yFQFx;+>b: 쏥r #>>3P|N"1a *3l냯'2lp)A|I("Wzئ+xgFϴCtcK/M}\axο-^epQjh|ፊ’?Q?JsLJS]/ߍ'v'x,j<)K9dш;bI)ԪGp5:KAfh# VO"$9RՆK~N,WsnuېD9<lMPz9tU2xKlM3:*U*Ÿ(yȌB(2F}ՊA`- m"g994d)2jPAqd7{BPOAcI'2 π$%ms4qEbV(ƌƖ? *ڨhgj]މǶVM?y0a0ޮ dr,lr7d7e Fp^rrC>Iq%ye0S=C}6`ْ|AgIKZjg'Nj%[ՍImXsAwVqCazGF EK+O!3.fǩ]/!H3# ͭpcEtcX.+dP:$fXq5!{DvD N A_0q?Z2k \#osV"mC3p0f6Q>YHۻeIsc_Pܾ*n \8p9 FXԂX%o 9#Ve~DX|v5=Qt_YzQ,G$,8{ rFL&,\x[z ᨓ>Xyw";U6a10 l9v_d=va &<@9%S >Zu5$%`YYM.4d,>T?JcGB;zp:Q<?.[ݛ f# 911H0 ڶZ4 p[c(!禉LiJz]UE{МSq9ЍoQj(fk}ـDׂ7x-U=mQ1xgR~%&(n39z4ݻhnBo.)JE4F>X_J^*urȗdV Tݵk#`'bǼ>4hqaZh{Zc WYcSX=#"rAYu‹§Eiq­:+:n $2yݡ2TiŊv͠㫥%#l,o Rb9܈pn6MFisVl̥ X8,G yӫX<'~5Mr#D6|xXFSUstG?#b L:Wma2Ar?5Ǣl6F)|r~mHi@/%t<4Ln[D/FRCQ'/:&y_m5i5~ bw1!=3; k id+y31wq5s̀biљbF 4P ;+6ZdY x{B16?)Yһw[5.i+~MEk 5nB@T\5߼M%f;V(m4xNI!$^Hè0*L8ȳ" ܥ4!ĀF= KsfFsH@h_`l 1GNfr7(VjZySj(/1fpl0kچ)@pRla0U y},=#Wma1\InTy"Q+ 8 ~QA1^d01Z2Z{z+u_.;m/Rd<څsPkϢVE @]gQnfIIg*ؗxC7e@Ē(Rv%0WG!]l >p2Gx0$]^6e&i<+h:$Tf3 o [EÜ ζAZr=FR|Ɏ+PJiJ[,piMC>ġvpC1R8EsA8Y A>ys:8y{=@LR-ŏa|}*=pt)qiT4tSܡ1_l1,]Hz[E[O^[{DfL F1h:uQCL3E^h֞q&T6hEq !2zKAe$oS{.O㩤Ɉ0ۻ1Gf<8؋^W;fFKk(ʎkZ-僀)M㎯v1m2;#ɧ*4;H-bo"` ,xs8w(78|c-P:Fˢ/pevQr˒!Wiy\t,(\G?LͰ`!cǴw xi@5.I d$$72g-PP+̷%s7[H| ֤Y aF !xceKZqwyvW:&NQ q)xBJnF"w˃Lmhˌ"&K,@GDCKD۸Kףv9+Ҷ13@~Gġpu+|;$Eh+%wb@(f1h!Գe Ռ9CQ;f7 1ӷm,P^PZ`7 +LEpu_BN LbM+{pĥ$kLF2é>Ŀ+[cc4f1HѠX1ׄ덇VD")n?gz 1^-1kL<) Yd,h7H ?Ի]{@ quT $W"N:-A{CJh20_j.&e*mS\j6*8Rh, 4„ٺ3d' z5P''8xkxaRY^YeWϑ^j{coVLc\wšE+1TŻ4#%e]m`aVu4+Qf $2~wP+­> ޿t(7m˱bNq=BpjG@&E.uazl*Bj:{ -B 6qd?,r2E\N09;nڛA5MQlRsKq Qwiq˄P'y8d3ː~'~4'-|*M HpnODOb8,Sm lfZX|d nyKؓNB:-Js>_)2IDg̹H= >YȊ.ᶩ1t$>DkYM?}m'*Ưtv,gѤpO]9sRڏglNFR i lresVf*|31PްS_zP+͙>d]"׻:;.xĻuhs.꓋`#C!AwR{ڳN"RH]4>|V yiËWd)my$o˨^v9f)C7e;E_[?SS6z =E V}d~c"L ,"")9hjj)+D1ZJnd%c #}舀WGr#JhT|[K{%[G+Ck*f60v5#c@9pq2XdǮ ǑW :._l1ÎU/4^5" Axsi0rXm x' P{D/QE"NP6VՔey_7+S(շ OS&b'?ix[1сXxgWܹqw6 0cDpB>.K˵UF[RAΡ!=r(NY k2E_Ht+^=!2ރQdFدc6gy#T+UgGny&wTZFZX)g(Rρ_1DIoJVSWdjjxpϥ{3]2# 0]Tp{+5"V}44!m3 ]8rwaA#O+#o2x\R4yr6N>x损}^.ppp?3Edc~HO5?UanQ qWh x)K46R(L4L->> %MRz,91̖5qw=y)ܘ? E]}t9 m;G8v VRNV#.[4:+1w7w^c8pX t/,̴sm xփ jh6tҢ]!VET g VyĹqfzx{N麒QQ@0MlrargkM*ާdkI\}gY,'s}ҡ|ޚe ";? [6\BRʛ񕡈q-@[Owޥm묻<Հv P40M|s؎6()aIE[5?dO:+ ;MD.jxCJָf]ޡpCك<;_Y[Ƕ8ks+j1، LJ̌8 h(T#agCwKN#|'6(ld\rOM leknT.UAwtfa%(=T4kAP%-%_CS)ɫ0,N <&tӘRB{>Q`7f@3"^۴Bߛ֍|] PP잣8.UA "CaɂZg<ݙ͂4d@κ'RFhz۰vZg49Mkh[ / "çc<}U51R-'?ըv 59$Ӹaq~vwoS8ZKg)3}jCT`9D1d ԰Do n#8+(6B,f9W?<մc:9ćݻ>[U?cFOK+ g>LAb?@ktJȴu]͍{,G*fdRZqgLMǻ3|`ǵX/aA2#ζckEyqjЗJ !^}yࠬf I Ґm hWe,:RܾZ$O 8Atk87Z}W{#&&@T(\(Lk؆4>ttד0<=Rpe (s7:>핎)%Kd6;/kA/)&ץ >#>^*#Rެ߇'ߒv2<`aLRTawyvݵ y`KǠ&l[xcNhXo-WxJE A`AGBkk4xP{QYoKZWB2҆T˳Je+3EP`RŽy*@H4ے}G4e˙aq[|Dz ϱ}㶽QdgU`~J#5Oj!M7A_;$lrV SoRV:h3kB[C~4"Pʬx %.v+cSIJ6b,ܒ;,RqMHɧvF^dkpH.>h7=B4/ƣ\<GUim(Ӕi7hw*{F_#I\"I<U(r0c `?\)Yp!QMn?5pa}Ul"S|sWK3{OBp}#s#4y!m;•'6il R?ŒknDBeㅅqNZ_@t~FͤZ"lT]ȂhbbO: b$IQe6|rXgǸ-5ۋ$ uaݗa)2yϛ畲˭9c}B_QM| 8l*O{xѬzl[TuΌZx`&XύOo]`#~u^:RIU>cIDy*NJq>KX_O Dފ4CTR@r_PB4 e}Z("@͍@ZVKX'4Icry.gk^$'GFDbQSZh$`a{ ZKpaF4ՂX yzo,wy4\LBY YkI%j`3 0Z1]}͍UxnMn :9\Cl)zܪhhyXG_& xݭ?i #}A|01@`zmWXiz9/5bmD+x 6bOP8Iltlynml,l 3292OE;'[%--یxnbz -P+)2+)a#~ȓ pߟGdlt0٭4g2GWV&A *[!FsoqՅehkqMr/'7.o^r "I%(;11B]WC]c f%3T:!!sW8䦩OmF&vy館In^66?qz|UOǏA!Q!5 A¹y H6n9vO"cJi׎qH۲%siov5u z5fn#6  I~2ij{`FHE%jӭ~'XQ@j ~L+ܞ 1oI伸22j~˚CC̊ԣPjQ%0>ܒš1i,Ȝn uSoԂMKgAʷ!iʹPq@Q `q{Oq!M7Zn ܁"~q9z0f{lVH&N%;uD}IB4 b4Z5КbKEd 52O~{R%Ѹ(Iv,b_jİ1P:uB() |,6 3O?9!r~qn_ye4~C;TC~@'or t^(!]/6R!BU|AvHhE>hgHb6F_s_4)5{bc75v|JⳚ顱 ./&t4NzE$v~BVT36.#XcG!1 DdHVrW,dp%7٩r)> wô^N$7H 5'xv# А{pF5nݩ!\LR^͞Q'/'Q>sq 4D=.dRsfe=ǛE. @ɭN=ĜMlfVSKP*&"3T G󖅵A"p'eE ͐/=P!^js>uM-Tc(Ol[!hȔ{Dab]iSb!dgý1gCQ)ypNPߗ~,`ctИ`Y;qtTFDyg871ZѽQ$X-FDU^. VqHϋ38>D,Ӊ[Wd za@ TiRn#GbY .Eʭ]z,J u.OçF`u1+OtHr+K%RĢ* >HGўg26E2W`0ǥ;4YLdlQ6ܮzE@8u3岄ޣU-; d\%YueKT@ KZ$ǨN}bcTk8M`Yf];lXCy0l|!%Oa=/:iyV(OĞL۳B㞳 .~Owe%W|p޲N0gbŽqX9](&@ez>Q!X|░k̀Q‘+a:o:em&<p)1*q7ӭNz~{PzM^,al\ьd5=:'Mš`sȕY`ǥNC%^fhR1nhںg\U2163zK< 2Xf&WA@-zlٿnkQxvbݷyOjH1bQ.7Y(zڒ,ҲF!4| 0.,ǬKY)7sm%x`)q9(o|&l}RI g>!xFIlUnu )ReU|A?z" ]`pz֚Rdza͌2ˍGJqqD݌{3[G"x*#;o _vR;9͕42F/;G>l"$6Q ,5WϲЊ a}LTb`.}ܿOXf6 9&0Y|&F֋dAO ĸ+3j M\8>G9"KZ䒑R7i[&_sMCޠh3[H*wVm*EtP"~qh)ߴf$cA: \ar } ]8Hm.0rJ?t$`gyd n ek,&^+܈4x 9YbCgC4F3/]k V\J7}aU l܉A/6Ѻ3MiR:WXמdUkgp.E2):wK!@:w Pi4 ˄d쵸 ,J$gį6r Z[^p G+%$Gms9ǼM3Z1cBق=~ <8ٻ\tyY -J /n\k΄_|wcŌKNs6l v[zEQiGDvzٟv^!gV[,nRTrhԾSiz~x_puCMmFx,s\s]')[vwS8lYs"WRݟ 2PH!(,j/Jf'iL"=RJ G\ZZ(d95K񦓰a`{* #-򂧴yC[aj˝j \DC4~]$!BO໽R wo?7 J@M,+8T, !jѤo;8,b+ϩ^ȉt_.K^U0"%S]:9'_BY_y6^=PZ;0j~茣{M扫M[gh%ΓؿߝEX4? -so;K# '6-zN 6RUF&87 lm zO6ɟ@Nط`q4 I:2.3IPD!EXx uJdmMou'"ڣ$>U:77v =lQ߰FJkP=r g-2ߩ/O7 K33 N)[[D0]:#(VO"c_gN9\s9Ҹz04y[EE}'l s%^7JsіR9nT:]N7=^ EC[#c]F 1@FIbOȹУ{DW燊\l3unFyٴB. 6Î{~n?)v\~քL+ζKoaM1w[W$jdQv}_?[8wb𳷖Ԩ ɋ{6?v^e̍ 4Κ+Ԧxxi鋿pxyۣ/S_T%YEGKwTwy:{/瞊[:L>HTg7# }ڻՆ'Diqc6-spps'IY@ W\$40_qmd#te^;GUu=o?}ϥe8>TNKBr3eVqxy4/#n -28*$Ii2ȥQCWͤSX#ꛙsAk7`d9sI7jʰj  JWxU#v_tͲ*mާgs$P2gY$i)umQE:fj(V M5EE;ATݩ8ܰ8ʗC.Hqt~8A^2ݵ(Gmj\]@|$vD&E,(NDcgwJ}5ӌF*kw .bvÆH> jsك#T ~fP -O|g{4ۦS0;@ObHWX5+ =r"Lhx;yg ʳQN ;9kHDt}f(_W+ PSKz>jfFNsxwt#>fzNAپp„rK?9fvfa%y>x$|YyQRuJ atܨ"n}#N#zRyٳX$op=LN0ݟr7%j fUSXvF5_YX)~|̜_竊3:S.vOx<5? QQ@HS? SdLOILҢt~adR$Œ~-PV7 A,PL@p*d>U}jqHc!W;!'oѷZQԶ)wV k6m_4P̀~R Y=!-3sh|1ȯeUpXy#b T[|x`c`zҷZW`H^u:`qX+D8dԷ&OMIŋjI 9k6g*?A®3U;5qALN|Ejy풵L%H,1@]t)]4*o3}:-~0[P*OtEB4x@X@ݬxB \#~c!(]lMUѤ;7/9- T\?XwoفnwBA=U~xzۄY@bb:,z ϖ#F,S$S;XԓqbaƒԠkd9@ۉIzmzA_3e sDiZjGگ|o %,K:km SB[{5,Iu\ U{H1G juL-̌ 5fFg앺 :2vyp߆} h hC?-;fOcc8];zh+YXբt|?56wcum͂BskucS7g Vzj롉>tN]edHLB~5zĝ*)re&_gYhA+X J[c 4`y"YN d̑R'+b_ ¹L2 4@ kɬ8\vSG[NX0L$'CM[g,Y¦Bp&Rⅻ)yʭ(2leVCթrc9{n" gV 6U KNRX7 Sng7"8!BGo24bdT|e7aq<6Q4ŴE(BX]`[ZЍI:'V%(9yFYO^7NYZf^cB,lrpPOڲc 5]д \2}/<N , 4VTL4Lvh 1/]xTbjlC40c{K[qDArl7Ӓu&J$Ϟ49@VXHP({C[tt*0?uPM!ޤoj X@(:\X` Z3TgT>@O) F]N&e3`]W 1rĥygݗr82:1 5Ϊ|8D(@1=ﶁ\ _ue4$ /,n/ސ,NՁhz(_U_ZQPǮ$b=8,$CKۃ8g(HX=#;p+)(E]أ#рN<Eyb- 5L;oQqoj*7y8O8a A$&~7{}tjo1+h+xHC{b4a(Ԙ% Fy܎,;9a%_HcC̅K'wbVN iXݚkdB7RuWMOu(}W+bVꃫr/^.Z,dm"}W#vR|Lބ,NEg4ų>z:xS2`8Jr['vWvUԚbJ}M\b%1cK{C!bچ[D,4Q^z:To2%,>/#'u15V$ygL-Ԃ?#m#R`Nu nzlĬ씳aV5=27$>Ad;қG9J{5P^@x͓{]͛#{9p%6{GÝY*wfQwH#}#)L/#^OYHB!ZiyW$1 ƅNc&X7,-a1P(kRjR| |J?G-#Bs3QZ$>uOIZzWV d\!N'Er:.$ O*w7yi3UE9Ktڡ)`MG:*!r9f*>S~/ 0 *OdҹCQ*]lC[8⦔Nv\M>dEނ+ η"LrA_tlq윁,ґ&#%fBf7C^c(Lz "[w4~ -S$;W]Lei{rޝ#1d7 ߇/W>1C!$NKWnXD+>$]6wKX53};9 V\aD DUlfv1ק t Z*kKɰIU.{SpAq{0 b\RON S${+x8$vU(x1.(KeF#/Xכ[FEm$AvF _r C۷;iuDgVϲV>[k=Qƞ'ub9EIwΩ[Ĺyu?=>lz]eF5gl#J>y7m08c4+nUnL55zS>3x^ ΄{:e \Y&hKDQB1U8pmY,Htџ* N(dĚ =Bju8f?hS<o7< ,2O`%d|mi猩}40\N1v/vGxL32OGan{pm.R8̄ջ]z˫f.*&o^V746EGV%s R7& Y$gT&i F׷cMsN5kM8)z$ܾ0#,&gRk¾e,WO(/]*qdS~1h).u+E2 b8 )6otvHOMIʼnu.f=qcagȔr4';Cbv܃Ŋ}K#V5% q&#*w&g2^D"~7~$w;7 {/?3cgptFwntS DU[ OYJ硥&dJj`/=_WTY*3:;Hnԕ9GsГ9v@:IU-;CF R͛TglBZis^x,'#1M%cg~7fN,oPwm:gRJVa}RŞKƽGE0h$v\i mE I0!=V 4;kZ\?=Y{> oX @@gWϯ&]/Cd=OkݏAgdݟhe i;KuSOB\R0lSJP>T&-a}툭] h}`fF%0Up|Cp_5!Y/<:؋ ec9ӳy];UZW q'?,(.ib D m(6k%P pivJ $h#+q. ,u ERZE.N@~-{\ҔHI=~Nk RyΓNZ~87`Njyy(c;(~KU3<5ֻ[N(6 :u<-M6Fx.{n9l&Hg3Zכ ҘQC%٣ bP.!|>ʻwIr$vy֒WtkdbΚҡC lSZ5Kީm@a%&G81NdW!1\8PS9*Rc Bimزm2ݮXf)qO17a"WGוwgoNEMQ=B#ܲcY&z@vю- Ց5}LSti $ɞpN.H -x:vaw8HX R_ޥGҐ1>>xƇzGеr{ZgJ) 0T,h-Y)Z#׮F]٫qԂʋAnsk`\7ZEbZ] *PD䠂|)9{7 ST6~vc1a,°CX3>udUC_@s6V܋ !DҧYIbZ3 = pa~s#w߯U+jXsiaІ.)K]^bBw,,>@0p :! 50,N1lwFG/OsQ}{ݝ+c؅{ۦư夡$mjtWuk"S24 }nDpaR J3ےZ1bdʬG?mIVv-31WCioZ 兠 r^H6F齉ApIgր}W[DG^)0_t'yJv񽤽w%霦3yϋ +ЯD- kj4*=ꐻH׈mjxL~SLai9=yI66O՗Qzė}{N>Z CqW.nЯn@)r9ݡDס#pP@=by Ҋy\g m5k Y{H崻y|`0aԻ{=B̫* ~b)0իߞo񴚙X1:\h\>pWK!!mu/P>)ʮ}d]Fdy/Y!s?Edvh);ٍ-02ͻ#[khAᾗ Så pā v'W4Gü !hwz 5tVR $?,1DS 4k>[DiOXI}tTcf&v.&658o{{dG؄8~DMavw&XP$됾]%=cꅣ>+$I]G G3kO.3-Pl0JEN=L>S .AH@dQHrQn@~aP;z=I]fD_.NL)Ξ#u5!5@ݾ-1. VN>_amd,1d3CC *nda;hIݹ;"$([~IVUcw3wyg0Y?m\>82;÷&& ?&2圛g`r-) y9nCK/43|'\_ R^>f3BncV FCi5_(8 M5RWgaBa GLzlJ&v4ϓb&;Qv]9C\ePǁ<-DD瀞VX9dZw(M3KP]NVrj4 -+NsBʏ6u@\5m *ʫT Wu3dK#vAkBlu~[:0 v)Yt#DR)RN41 PDՓty'e=8(t{*Qc/Ͻ6VEDrQBS H gy _Z&+ `S|Sg8Y1: ɀ̵2/1CA+~3-sY\&k"uUU-_€ gf:{ؕDZ Yd?eB[8BB[L8Pmz@12p-u&;bL ,OVh9GG;! WH\ybۃSgkt033H2s6]ʿp{NJ 8g4餟[T -7hh@^+8()#WϘFLt}L.|\mZB#iJ8d{9P@1.#,ywDUV%_+q:=}(kuVc j'<^^j,i,HÐxc5Ҳh i$S~Mi=s/40xچhB,z nMr) 8Ԡos:W6&XXq>/E=&~y]) paj? RZr#ܶ%3MI:&auejwSS!1ĩr!> Ӹ'K6Q57ׂ&URa>6 V/BWbҢEcQ.EXR̀4 Gpmu3".4&"c6$^}$"SMH,klOW.Gp 7/61LHn\I20gMnCG& c™>`A/ Szvq?f`-A:rk6`z]Br0Rjpy0M"0P87U#'y]$ ٗg &1LX=lUFOC8Ug n @:~5Ţb^Z/ͺ>M(Y"/TKyS$HA7tgr;{&>'7'u8 %Z "lɭir bCG}͝ ,0 f6MK_hn#uPߡ9,' Kw}H=~׊*[i7òEfV]vw`匯9Wv &UF2ldq.KƦMdx2i}Yip mW S~'PfߚV h21h{M Ǚ WcffWDSW7hAjB^ ! XZ)x#S_6ܮުKwzK"Y 1~N7"`UW8ኡvxL$R l󰮉w-/#<~]6#^-R0{Ei Ɖ`#v "+AHFs ]<}}T5~k2Pp$ Y@:=!`z w A=ےU~e SXC :V"-NeV2ܖ{ܔZcDp"y34A-pe3;Gn8!ؓW5\[w_@.E}<ݑSЋ7mຩ*Ҁ餠|x<=[ƜK6􃁱jgʼna}-\KfOuFG-Q&CS9,6Ucng,!/AB0hñҌ[l'餾# gUffrb5퇀i,{vFBQYw_iyDYQUYOAF؋vpZR5ۛYNCI m]/X{kN]gŹ>qrtDUФ?YajOc/u9ҋvK|NN}Ȁj-FSxΆfoPO,%=:mT/Y,a:g9ڿ,'o;gÜ)4u!b-i{϶ W97%Wr _po;$+w)ߜP[=}urMnf (N_H!Azx%Ꞣcۀx?VPF%Qg*}h+y,hxːbn xS +\2z_lJÁ"1@;RĹ0"5<Qɷ. @. i#JQ9Dո͟CnP1%>RB)&'Sy S( M$R=q yz3&IqnCNtш) (?,X]BE>"Һ)';_\HDB0l%z!Ѧ_fCKٹ=2!{MQ @F!z gHuyƢ|LJojq5":gh1B@isz"+'[OeGPgdNfU]x|NR5]9pz|wVϠOrF"9瘼»|\Q+XG)t6 zl͸t>=xf*CZ;fC?PҜ!aYwסǿRUr(XDot)U)p6V{uT@w1X0P2VsE~fY#Bc[3yN=mh" UTiR9E? SO6Sa#}yvp{j#@=(BRI- [,@Ǯ ^zk1P>UqiRl(ҤU# |@+`Oz m!Po6n:(12aX(ҡ;s=eK?CNjSjlkWU6l]f4Zun@L{O/(oJnȌ9wOujý1&qmjz[M2.Ū6EYM j7B9~-΍p1|q{YP5 j+;[Žiݤҋ=LouD:ͱD%rI=kLRC]]@xP1b. ,'f9Dt(RoʔKI.0N3/E$^`ok;T|jmT1)j{gl6DVyɴjŦ{ 4xRKzħou5Y>>lP(yskϖtH:[/V[ڙ¢zTn .D alV {XdfbM6yYKIv!iyBZP~Mȏ6l}ZwK+5с`4*m\>_yc' $C;%gsn d7iz`Q5hmu, W=k̮{6@- l0hByN ASZs# |ijdwV2֥\^xδl9gZ+^ ޕ8~lgCQ:]+P$Wl>Xڀpۄ"X$KP'UW 3.9,B?vm^SK?ͬK5p >*‡53͍$4֪Il& v$%IGa AzHHձˎLD{㑤tdgI8q#,45n5 G}&"fԱC#?Q˾0N}<دIS7~`WSU`g3=s v?,g-1 wjOGs (m?Aal U"ړFkE&ג$wfn>fňM,Խ0P4ڰeۉ8dbPq Zv)na%pd5(0\ݪspmֲҴ|oC7=ْjw9I+Q{ea&5Yf^#z;j>4t< )6 4 'j7xPq7};jhD}&(ڮ_R]ܾs2N>K!'#ٔ\R]C,:DC~5(eV5}Tz殊jpo>+_y7K mqPd5D9!/A`vkyFRrt4\zdvy"znDϱ*uYT`plˊ@Ͳߴ_5]'6eC*>r5$3܃L"sX8$K[e4hA:?A^\($?15&`ﮨL!Չ%t> 2ٍ"?\s$V"iCiB9e9y }dGb  `|L-pω!Ą?[YB0jb'Qmp^L|-҉C-:QV҃8 'Rx)AJX5]Dm C vƒ .=& ¥U@1OVk&rLvKSo5ox$q GÏ"SM/%WY~7w+̀,>;'SN_|*mߠlzw'l+>&A- *kBcU)m;j=SYHjܹ^ͱmg~VV,|JUAl]D +bf%l9se=_90/%V袏afI.KyީB`?=nRD ^* |&*LyJfnu}xy~]G˽jF'„sL"m@o`q_L%9T/C,ԛ+m/yEŏ<]BCV)싧D&6?`#ס`L )p*#`3y BL?>hhr}л$hHa+p:w7}X iKai۷^vv|{9O=ڿhp-^K=%m (?4ȫC N9 ؔX)HP F[(Hr3AU RUHlm9,e<OCsn/FB4 17Yk#S# "D̻Hq.eP#ussuON2fG IєPRu͌! Wqr-˻36~2.L,A M^,x{n5RL\۫O̎FŒK}!"309hulb} RTS%d}̛ a OL6 0[h՞e^[?rΑc-d{aHv+fVznaRYR-hk o,y&]7;+Srw_HJ$aǠ[mu1F'@wKcEgOmfҺGӕO63f[>|IT%޾CΚRu^yoE ZyFyPylKN 6-Uۍ0_< 0%]8P| m~O;Hj7򘺮H[v QbEæT]x6uT=O)R!/R=7 eĎ@C{eNUȧ[Q %|@@ .J{U^s((-C?NLwvZ\UvXlUKړ.RDɩ2RVĔ>y؄ W)3Xmy(}xbSC!lMI+*'6.*?!7Rč}@lI/oC{;ؼ 'Q%#6Cԃ $vv(f/|>AC0.rf9cpSVU*U6=tU22Z KJ[tϽ62E3F_U9u^A Q6|IoGΥ&^ϋdwiӅ'4dRNw%r/hoڋ`4JME"]`_F aґ} :p%HH}۫B~/? t*[s=)v2z ;ڻ}4E 4qQkFFΧ[acV"dD :܅&E瓭Zwr=nww[ED>JA .BE(5/(Xe-axa e;o²u$jyι$6/.reO@]~,ZR*NVWv\QIs#Ƙn3T>;Pn*7AZI0d e YD ߱b]YitF0-NB"Nc=Y:<;JҺ]*ޡgIi<% _w&F [JFUUp;3<{gx^OK2Hw2qjt'%~gPk^R'uێ" qV]w Hv,Sxҧȁ臋YF9Y#iq!d|3> >vBei+bn<يљƻfEh͋4ڷLn.B{yMҐ*Z5S[' P**E,áնl ;l (]8`9ހ˒ F >+u%=q`: .hVDŽkb8)35H_/vY`?Į m>tb)gh=:J[OwvZQxk5Xlx#@ .oAoyH&F ٙ:4ߘyMŐP[`*Iˁ @֥:.rԣ :7gi/֘@ z:hX!'yָkpR|kv4׾ĭ5mŝ̈H~ r9̤1t:'Hѳ< i7LNAwHۑ)e9ytL W&?(a=,ZJhb$E?mH^R7G9VZ x^XIywϮmd>7bǤ%5Bjjי"k.WoCcq:TڪbtH\)3 y7|DNMoFM+#vPjP #2kV%$ T_RqЅ,#F,:TT8P TUb)LɅwM8!c?gw+U iyr1WW\!_\«Fwxj4%x%q?hTJc}.)40=d$$7GϤKVOkg]5%Ԃ>Rj)``ӜnL۾^nw;HRɊfQefF\.r(=_9,Y6+h8{ 3u'Ȁ?o{hUX#k` PM=V`XR p[7iF֌my-yU8_yjެ!9lW1ݎgy7? #1,{a֥ 6 \(ʔ‹xC炭 ?3ƫ%XrdB#wJס-o@sގp jƒO:YbѾ Xe:n`1qYc襕f`Y_O{b£|) =M. .Lab2gmA\c ڔ[JĽ>M' 觔J 1C/. dk{h>B炴%lIN+_{"%8Z8I\ >ohgԫM;1&U]h bV sư iu*]]$§]KcKKu*1!-aM\lKNvsspFnv,~.eG""o4eYCv:icT1U16ݧٕ`AmּejkӋAgN)ٟXat$D$9Dže8QЗ<\- d59 2%cUNENrT+{b!.xP@NڥT8xZZ5a7pc lg/}3X &}4kh!fκl$JTQ1^jK :wJ ˢ\lH 9B^pK j'4'a.OIwݖ*UKͼkug _v+GU%%O5`Be4&HuxQq:%Iɜԡr8%:01Q#p4J% ']&oJڤE%҃ƙ똵0 ,,#pB~#i⃏Uhhbj#~Od90 B ބ+ʆߣܺD}xI^0b4*m/WHG r'o?c'f|m^AxA# {M\C~ t9l'"c籄%3#Ⅴ%K>۲ f#No|,R*Iv=f 7A9ec=:qIK^=Kh[r|Z DŽc >Tb}4lVMKg]|8:*5`9!lW@eeVb|o(&<-̜XXDp]”r5/$}޶[+=7jox̅0C W@Ħו64uhu ˠz.3|2B?mqo7M/8^ϫ K)tyIdW}mzq=tPbuDدKFHV[d ,՜G xU?SBV:qH5J CFI-ja=9YjpPx :C*v1_vJU7M>!ɜd;:!A4\UM#IFPa/`uR D ^*O bt;v%$.b }ľT` d(M8etӐoTU Dm؞e5#˥bV\S2m3|y?)bԜz/^"]k/Pn;g2} A~Au ?>Zf|,1o@G3ݍu! ΓSƥT/IyOĩׅSтNE rPfx6w鬝eqA;6#)U .NWɼq/6ݪNJK\/+'wPQxբDCd۱m[d B鐲qka|AI1^_ $Vl &u79f|~(ׅd zee9rͶ[hߕ!oQW 1Vpd-)hHg:hRoT~Ҳ=GFFudMzЛ2#&ZT?q,M>vFD -2n'WL1NM[XL%] X/8 x;9S6fd ?76MGbdN囃BnE&wھþIJFSy9uZ=NW+ln~>bnuɊ'h<9@^1ɘBY9uFrD3ܪ *~|7:Qrg]% )= O} *b#0>$"ziPFW@{>0}<Rغ`2_M zl͠l& ɹ;y[.7GHm)d WN—!#=TQ}FQgWsF4}gf P_Oro"Is 4TUAi$~OBy4Bm"ౡb%|U4Oq3~yC%7K,j2TswC^μ`KYA?On7AWيqF"w.8j:+RK@xƽעLʦBk ʂ\GR`@LOL)b!ľqC]e) u/:qvK6+'ګ%ZuWm_", fx/Rq4+-Vp)?z!w<&AhEM:"kr ,#O и%μ LZ_#9ZzS@HmG+1)a]cOfٹ΅\VpVQ#d*澩@ˣA0RQnED;DZ' 酘1I-o]b\lfe`jǑ$8*G=)~3qT85;pQ×nNgo'lnRiǦ8F6W!ђjP Zcp< LOMubOŪNIj;eӀfɾ0*Ѥ>܍Mo1cƅ+Y@2?ji#fo֩V0Hip5!ւgvCDoǐ+pLu3(LY~^YvRˌH2ǙQS .z7- B`t#Q2hmڈCk^]Rl{ gWIx yp*䌀_ZIlN ݚZ3Aø-#_ Lvue$h+?&)sT)C![a81j?5Amὖ"6$Stw_:ހm?C:gz)ؾyEI.V?kkV ejk}&Jǖ"(G9*@AGm^l9,NTx&r@za(W}һ u 3ݔeQ Nt ;WvFК{n.nٯȽKh\&Caبg.jDdM:j->#2df 2y[]KTSpm,U]&g!J+OY;y KN?dD yyq) 6`GQDDUgfQym3pb(v m _[01pR SIV|(G\]?H< #Oc<6+^Y\9UAx=Ct9ٻu;C2c !=YBهt2@:%O@ b7=p@3D(: ?wr?4R,5_͎8!)•GwGEsusA9bc{Ha,=&6bc;m|run AkDI[MT Gц "Paedû\9OnC잌nLqES)lȶ"ԑ]%xֲ*=ڄO "0W#~yo q6XzMv4c&0h,,dK61~PHfhX\PT״xD$DbgKp4!I磡|wmZ`#f=[H.yAX}􁦪rx fGeL858@C6TD#h=50)e. l!K$AdAeyڍ|Q0R^ܶ?8e`DXG*綠,<^` +ܾK$f]mZ3!x^2 "뜇m a3lXlCpt祝"rbSZ{F{Hy; /*4~ù'lZHc&?ƭ~*-z m*ÎeP==D;Jz%xc䔠P/7lRro˓%NZQ_!{Di_.kc {4 ^:Т\ŧt7V ȁEt tz(t~ILV*BtZ)w+yUjCY)_5~l}\ι!phhcg(.qY+*䫇q5i&6sNced jircq>PF }b\ ooڜAߺ1" /^%`^ *hטEX-?'Yp|iM*$6,K)w,[.(ùB(&̧86;_i`OS Dh|;m;hFBe"c}ʪ5Doų!q}Oۮ){1+NAټK:53 Z  B~sYRIBd@3|Bӯd<Ѫi$#c?"D5BAMlmX:A\}(GRlc(V[;>9P%08"j YrʭUh܁pg}I9}cl_@zD1RE'Ba1څp'(#oZ/w/&;ƃY$':8qC@vvݨšK9 v):JV3ӹ6@u|uz&bPB`5$.Evpl>FSQĜK̶E:Ǧ:rH㏻To< ![W_jl{rspua^[wĽ0ByǑ [vنMA6zu$'P!GܔUf'Mae vz'&E]*?rU}BI4zs_Ϋ+rOdkosCՔƳCATѭ\^s ilWY+_OTڗMz!`l k#a֑iW?[CSOi2-+ZbkVBV y.#麮 EYO)cϘfi)vp,{'&Wsǜ(?g ~%6)H)*Z>IH[FU/fdEͪq}LԽHs" ~$\-f e@fxWώЖ x ]Cpmw"qjؔG(Sw:G~?`b_d }a;dE=uC-]n ?YZeoӁLkt(WY⁍TӋ<\1OYu@-_k5k8?{ʂN2aZ{N fWUߛ8Xu{m]x)(u|z+G_ԕW,+d#% lHX괏@+hvhi} ةfK/A(}D%2~%:DAIqRɐ_p~ri-#~ ,,OZ(S&T +Ck2wа)$iВ1]V(ťmJi=aq~h`ߎ|cŘ\t_UZy%1Jnq7C_Ǥӥb62>Q](G?U2,{y=͊HKN3ƀUऔwa6IދQsd?LS' N!h -poπ 揮i9>Ґ_tp%J1d9{Q/AymC&4mo*T){,W$< @Y``-NC= ԺWAwONm  %ѓu/N@1q(:+M&jŐ?|l9tPq3\+vshN޺!Zh R(LZuWE !jHH#KyPr^f<6aOǻM]Rr`[*H8YcmgW֤._vYK]IɄSi:Z@+J=Ε,=oA PBy-W[*;C>lDCdt+VEB-Pf Ip*'Gw7/+\jO%yj$&Y(('D2l?/y.$RU#fdL$yDO܁0Z~^|*fa@7"zAwޱbm&$}!xO!eШt "b@n|FgSY0:ʆ^LY -lۙo>wŅ9'釈^# էlu焴80vvV'p5`Y2̥mWÌye#|+iYT^R'I8enaR%t! ž ~ !ϳvb5)Fo8PpPy$/>]qfj ،{: SNnJ.Q{a?XM3|5]kӏèڱcx1$%170+*Aw`Sثpo ;G~nnII_Oмsb7_'9 L_0 i;Qk3jɽhts(hnUz- '0t+)#\%CT߂gw0 왆;.Gi;*gw-E7d=ήG߆?ScL-߈AʬQ}#IoB@w(FeavwϾk)`Y!\,Xs5X{g}*̜Z[;'3BT0Un Igb=sO@yo{3j!!fwLU\ RsXP|3. bVVпQ1`aۙsKo#(fz Of 5kmXR 8и\N([K?d-D> 5zpJU;#$8_A/hwgKIJzfk;<_ewJQINǞR<#  rff_XM&WB߁TF&쇴{Ɵ4fA hwzXh+k: <|'l6IhdM:;$+af'ţ}kSNَ#yhWx|Kj##,  GtE|+vA]PfoJp8.b{fO_8࢙]| |#R#Y;j}"\ M u"k;KFAю[ p@ŎQ/Z6Z j>j)%> J,ހh9{礵PHϪĺ>3ǠQ63[ I  L–LV_?W蓌i7 8G)OZ%: Qg08u%W.!9ʒRHbǕ4)'j"W0P*2MH1Oyz0? H9c|q/Ӣq.a#ۂ1D? 8f .H>3u(rQI9OOe;~mӸ CH^z@-' pU?͙س&ٍ!ǀEzu6:Z *#9%*_a`X͕kmһi/֨tb~["1񾭌\WTPc/c[Mu@S{$`xB6;u{8Eo)9#^JH(_IIeWVD ]a58̽7s(=1 ݰJYRԁ?4) ܡ NnXWr]<=8>b K.)S:dL5}w+X҂`>]xɤKʳ)\c,tY> JQJDq,r='n^;`lPmmf4eAt֢JBmבA!+6\uD[M&co#hO^KQ)8YclBٳjjaoȡoIReҘ1(FR;C+@SP4rKӑMh?Qvc.}jxڇZlXRQO)@-t@(pӎGi֎NY/RB 2zY[7Xh O.hつǗc{cl=B؍ՒNSabO{..!1}rEvg.qEUJiϞKa⳽ -i6(WY;p i,yޚ;[~鲫3LbyD=O)x|]ײꉨ6RLe8I- ^Im(rtf @TW. E쓕 v.0CS*b\!!= a~QTNiSg3N< #X>D] `ES5u3:b5gcELe|幌3Rs?QCU6UqaB 5W"t3a bՊAj{tӦQ8>[o.eף6|AD)FaV$(5Yy˕c˭JLɗP\_L?̶h-V<ΕA累wxQJBRi)Sxt;Iv6\ՐOG`<8Fְ0xx:|ܖR#'W'B*aEcwnlL2  UA#"U-S7}a"|)xaQz7~1p:LPƥ?tnN,Xc4sS?;2/L琱% [<<$>+{{˙ { ?GpBR QDb@.QK# =s6N93R:uqM-,um# ⸾CE[_ ~Z>TG\t􎕆Q–cėxrZ z2оnX_9SbLƛq0'.*!WŢٶļq3#$JjjMXҀ_󰩫c`C|iݑ55 QR-*^ƂͬJiGEl3{U曽cpF^֕?lp*j6`^ FUTXmX;zF6.!,]0fқC¨\ԇ}W |;pOV(dCէz!ܳd&n/HI׭=j%mU\Tµ`(UPK8Kkl ]W8{NKeGDOFG헢7ЉZqߕ "s5OAR B=NÌjdt/ʶ݋|PR֓^7!z@b-tdcx p̻[vNPUn21Oۺ?(T-'^wN֌8Gsӏ~Dsk 5~՜E9j8XC[*v;Ms'W>!. {ro{l3 r1tS`g֏KaP؇*}$" S%O!:d'0Kʱ]&e вΫ_5^HS],\b^bۆ>̐եZkJu)bV{I˫ҫVծb}h<vU13v|,nؖО;;̢tGtAY h+˜M%" YBKT&k;:W}˵c_DS+EnC7|_"^ֽ0?<_*Ebm6.%i3'p. `eY4t)^|r7rʞd`8 n$a٣ KgR6\(4[ixXѨʱKYV hNOɁ Ow~sLP#xOU^ lB¢s:Vi "g3-&x hˤ倅E0uY0-ˋX0->Agv1^薦 ¯9İzX1<GĿ5 goZXսxeER/ NAxX%y7T&TY`_aw"8,Bxv@E=ݔ9)XmrҊ p6pz.   .|s:~:ԡN\<?f'*hV!F"J3]_;UV̓Zz,VcFEEq5 d1 ip^ Ob:6 K\:wjC@r`3:qCP/fBXX` \-rĭMNP҆t۲/@)L{}k%$+)Vt̹ՍSkx?{/\[aܭM2a7ARO b[ďh!m{&Prb4 {p#LhJHP2^|o59ZB(kZf AU'N.{!Z὿)1BZ`-{D"Kl @^7!`#Nofdz+39sݺ.!H0/uUJN؟2L k2׾P ^}Saxs:̴kh9mr\GL)@ ŖcMPV'õ߈ oY?oy\lmjJ}*p\@r?w*a.G$\@F)wFJۏ(z|ދ_+ewT  E `9~A^cvX[39hdI=Oue{qk0͘Ƨ>X C:,=]Z;17DUAɴ+ 2ۊbʓ:Za YL^fLN#en@X[jF {W'Wɥ.5^Y8'-q:b݄c`^<`o΅ys~Re!~:ChЌ?v8}ALt(WsV )/b1`(K4w&B]ev +dp*ɫ\z TNw;OB(Ƞ2v0s(p|u>en]S<\{HbR:uMrRvJK$_N0! %ry׷NPN3v<3dtX^k"i^V(iZceXQH|.8)a $֝Yg*NF%AD,Jj mۣ\*Ac#pH'=͗kk0#2| h2Y'DC<&9ᆸN X++lmVm5>l;촪Jҝ1<#>mC"'X3S2[z?YP5HE 6fLm瀑!N 8\S@n†+Vܱ1y僴|qxm[^:I@/^и^3;Ӕ-=(~NxV~"R, Mr=$fú"ASكŮô9RBAGn7{ڙ_7Q˺&Ak z0;qA\Fx-RE%iu4~y0jZYMwZOMMv"N ='hPoQg&X(n3mu:e& k}MrylW}"}lIwМmf,PeP\ɼ 69<1dC gRKҖb'ΨN0TCnG^iI, 9vA3W&Ê2Pi=z9R =6jͨ?ay -iPMW0 +F 787(i,RҦU?`RfP2t'-E4!B!d-f=ppO@9n<X?"x 21nyC\77wL Nw(dESeݝ0wi5|wzMv Q!Sզy wxٓ}`ƄP.!IJqy]t: #& ]v@%l p:zGBCnMSX]rwA(N>L2 `+?x>v mVv,8IIuec@4=UU: {QDχLqqܔ^mspc gF.l/j-rM e h[_PD}bٍj"̗. [6P^2} M&INJP A`Mo&A&v?<~z /Uzd5f56z3iCruA.n/!V~i'lSo<8׷*P .ztXO O*Darʉx[Mv^ ^.|KKSm9F@Q2I{Rx5/$\ Źl71-:.Y?lH琖 C/'煫I)%} /}m7[ %i em"vnXCI\e8ϏyAcI#З4>ΠO[Q/.jW)-捱U#b@O[p@daIo!)J_X3(h\=/p>G V8!@kfoНMkѐLuĵmkE-܀(oRjFU,AxhD\Ok]LlGusJzі~P|{{;⮕ YtBI?g *"4ƗZ[H9yʹ7\UG:?@Bϸ190U9Y&=.x = ~: q/B>}zxX/t:̀(8Jd|v"!_u7Ad{IB0&@ie֚16!81./k =8e3Pِq>Wp+[O>j̾O'Zl*'[׳*Ti/'Gg(By/>BPl76]aLaPN^:_%}}Tj_FVqFw pACpBcɱK- ^aG5;Cj;~:Bf>u٪j`J>~<8D"%i%-ffK\:(hPϚM|f> I {ϗ('f%A_#42֌YS[_`NIMLӝ׶&Ĝ7!ܔM'u$Mc;4+I& >ud7i 6R6;L9#$ouH&0>~S|6mC= z|L@`Mbg(+\ %Uk o6?4AGW \0\[4 QI&oԚ X&I lD(1QB^vs-Nm* MqG/JPn?iAw?>H!PKo_o**G8Mc41f y&MA~}m{ؖOMNRUZd!QcUęy}j73[P_1uXgka0%5.4J@.>W8MMi?>qL I>`1V&+I]%B'F,;#1+!ٟmu+a]n]Uf zj^ruo[T,BQ]vib&LcaUAKu;b #6#ib`xڂO8@8~'9wnv Mgj ˎEfhJ`YVwj]:ʵ.oExlqD Zcv ݂^جSlM`38&.7? V/Yck :?B͢_{u⏣,LR yW6Lif$Z/s i5x%`&~ JM8c$կ#Q|O8O>؄M'uB]ƾ(Fֲ@_HWp$Oǣɽe?(_ _YڀڶoK`[B ?)Wl>z9,Ͽ:ېkaV|;JOyJM5pv* 2KEo-"gܫꫪp}N=|Fi5N+Ӏ1&bH~}8YQ`iBkZԚrIXvP$.mWeA >M4y_&X @|6U',b*Lc.p@E[' C^FI ntuO9CsѢ;+)Fm;hZ] }Њ3O^cڗL5-}W9ýW@7^屠^\MLFlQuN f|Bp z5}--o9' o ijtCtZ3 _pSeD8D%ʢ}M(B:U,WGL&KRlpK4I}8?+E%CcF7~_Vb ]ÛxI%_M+TemA@2*T\J)-\绖_b(/x@UNsڹ:5K1 -xtPsc #^m$t Ň%1#+̯`}EԤ&#A3^8[,WL:"դ@{kv+8R%az?:õfFI_$US#Z4m1 l\B8u+ #c?ƍvPw5Nׄe3fVTA9}.9 `g&]*IoK6E,c,g%Nr|<ŗ {+z Q@>- OOcI2%0Y@+7i#h?!/L @컜psKƒlh)׿͑ C&PגN1]s@t}RϿ>h%IE0x|>Jw/W$fMJLJHZs@]ⅈ}2SoBѠa㿤vr 4替!ksЁ*þͫ}P*wv{im$0Բ!,Z_|wg1{`. SJt5v!W3^n0,K.3 啐zH%\YՐC1/'.JE5%g ojȃt:TGJZSMԑon/_V(:X.ZRke˼wsڪ. 10AƔE]~Tܯ:<| fGY;V sqLzNT[[,!sOhĝsAV}}~Ezߩ`LLU&#h!Rʚ<7[7Ճkh{.Pl[K:sXB$8maY:%1 ]<t M0SN< dϦ!r:L**fh:i_u'yCܢh#pP&;.nZM7k!(˛cf2Փ+dFɬ_?z \cNqA! G94ug \<;ր%p3P?rd|9r9Ǎ):e 7 :Yn~Cƒ+wyladv)Be;Mلny5ie 6USM)^_?#l?^##Jơ'h;ekË}^sfۖy;=g2A^GRmU͸* #c`cS'A$Q`/fAy"vN{ݽh aŴTYG ڹm530"K3 O1ze4Zqꪐ=XTσP8SAӡqͷpuOSӠN);@X &M]uDͣB"}lBk>7w,pߖ܀67(e>?xi`y$"]@Q8СNZpii >. d(qp#&<:.6-*}V #pN :htvԫd;i.7ģ1mW4 ?J_)c jyM D]AꄝZT84Fb4wpvNF,cfP:1_",stId/oP \I2rP=؉U c袤#zLh~SgZfnz"'B<4\Ԋ/FjLJE3.1|vg Fm%ڙjrt[9pez#?%@&7U1v0$}It yL6ĤOFF>pG2JZ8Ch8=_aBF*g39S)N;H}B?`oIU}aupate{hnZ7Uon|RȈ?֣ 8?f[/' ڴ yN͜ƺ[guiw^M5?HťWZbHׇI=5sk 'CYB[:?Eo [E>h[KV35x~ >h'dMoJ=wzC ==n7g:O, YxLk#n5gyx ,PK6;&xuNm:C\0=ij35kxo0,0ӓ@)l6 D Q2b$^yLHTc7̶4XpWeOqq2K.?,k:)=岣.u0? κt:OՀŊ ȵy6khN!V;5TBC3)RwiĖջ-ᰣ]syAǏ5c< k4LT}T+O[(wo{!} :6Ysq./ 55>V_?`=e2ƖRE@M&x1J@h^ ޠ"AZGV24Anb=u=ze͆áG2V%F3踮ͦFX#55vT[V{`UAV!{UpT$é[/ozkٗrK?O F.Ajw\lV1S.i'h11)g5I ;OGqU>ݿ(Mf*v Ƶ^ϳC\BO/?=1m CœCJ1޶_6\ThI%y& hjػ? )H.? )uS X-E wdUjm}KOYs$UGTxQ0f8k+#[<0=OaEK5!QԊ;?{rSHۣ2ەOX i'm<(3O\ؙ8݃ס~#bGnd57De+P dIlp*Sg_|W1H.HibZ 1@kyϣ@EaMHCa}5mIyi{Rs>K.-Ja')´"OB{s% ꐎ{YLHT3Vy6y,KȡW7u/5#"\' nA|eTql;D\g|PDݖ $՘s݉CSd?*a[FvdH|'qra1fV(˂[b+}QO=w`IHv,R+`&_r8n,_?p[aRI >_0cRqWt&;!aK,fXʣtGgy% qdԋOS},]`)k{m¶Tp3o}p{B#ߠqԏOÃ8Z֢4'c9i;f/0X]#KS{+^-1׸ê|%Ƕ-Z |ʖDzC|\<$W=]y۝M+|ZKb[X!̷63kVkWH%'T36 <[~:Ыx 9UUH{0𪆶м'-'m,zi Zt؅lO|LG=ڰc7oM9P;,[Gȷ'&Ob~q.kG##cpC/p=n@_f眃^c8u :TeWtYsSN&i衕*f(J3cb>C+(- Ļ]-c~7(e10K{uX/yhQ>ahKuĘšuѕG[n"wsDLXu& cKΟŖdh D?Zai^{NNs,S54]/~_۟$ ]>v1@hڱuçW NCu̞:,QcJ:ZG@bNjlDڇŋiY>a&9h.CH5[@},Ox1KVjͮ4C,$ɥ^܅ϸ@TGhEfh)ϗ`W,j;kI]xjW0X6" `mMY,rlīs=H04APi%1xj v{ʊ\Tz!]򠤹^\xH@c1쁲(>OŬ\mf5ZeM9.Lނf'LWʗPn4+$PJx|߀[U&m(Lmo{aRocxw$)\cjͤ28K@)u9~:7`!ړ.14EE0@EbSSZx2X[礢i*L B;jg}oD;Ο z"&'gA;Nza1}]ihWBzvm3Q$u8rldK[H͉b[\Yћ/@Op6Gaů]JaJDŽ7 O]ҍs)"W"Y Sg<݉c'E#E,I9cYgb#+*Yq CzVD: B,v]N<'kNSX0yiYjnkpŏdsUn%7WSL#+ O2BWmmUI? +אII\[6N φo*_OނuROҫJVd"lgUn1BUi?(Ð4ʽ)6;L4?;s>&=>%0s@_h_66s|3޾_9UɵS\aӡTQGywRӋ\Z+ҀǰJJgppҘ!:) -՚`p$y/V~aZpiemxh$)_S-V?x VCq2uKa I: yݥSR޼I.uz~E2B^R3 iٌMufc%C1$uӮ`pBY;1#I~!~cUWU 1͠Gxc7+y%**G+8JLr` ݌{V楀:FUm9b_Lw@ H Z:Ur :F*&AN-t_AUhxx,ST~$QN`5tRjOlVVv5VsVť:>h-^NAhAs]kH}brW& )SxLsKs24?f! haRk(C/z۶EÏI8C5O2&.e 2j34>$24-Cv9Y\; rLdR`|ŊxI/0pIN wBv(*_[ 9 r֨T eh緆~ӥ 0$yͣ~,)[K^{M^w5dMz  %Zyz _g"*xn WkhO#Bn^6; \ 1_&~@ٗCaQ_L"_IU$Ilm_4i/)(G ey #V1B qG>U[Q?&mA]gP7|`zBx%*vczl!V-3eM`[Sql\q5r9O{F53N/G{_kP]J0(wF>s>T2͍@Z ̂1ٜUM[rV*/ 6*\Lc&}ю@ښa f6$8GH1Fl"ҬzK$tOmOq\-];RXMqv2!=QaܯaQTv6`+ip4l !Nۤcg#f*}1eQ1 D,5ɝl5y#^@X:2{ ~q]{0{#83"L'G!=6 ږs& J<1HY Ҍ5gy$r]GGQd۸$_ï;' Zڂ_PD!GS5M9 Zq%^s# ?0٘9t)`I駸BGchHG {bҰ+9pK;7|n Bؤ,A66V_tq}Gvͮ!$K eVҘܕ?V;y>MI, OCU &V~Jny6gfRT 5%l';S7{d I05;&Fzr[[y2 B d>/ Tn<^l]QӪ= Tv:E|+k5q&;DV&xٙMSS%Tf~Í!裭R 9^\Q  %훶+O̽&&]ٹ}Vm"Iv +^׮Ě lqVc9I>;ob [Bw]:"W$1 ~}F$NQn˨;ty0oݢµ >1]a 6)nw_:%!%V>^2lX~ ; rͦ[uXv`zJQSMP 1mC1HR&`mjjX wk>s,FwV\2b .nWXSxv7m^vބד)2m(Klp8x]d!]3[H/G'zc=ވYGʕ,`Wb*Ժ}FMVc #tHQ ?T7D/f"J2[XmJ|sf(@ۥl7)]~& q7bmqt؈N1sڛ+"bHPʷ<.L&\1A 0絸" CN7eԞk7+vLn4JԒ{Nǐ'{ x >#%TOx0m͝ZJSi w s((i8i&Ax% 82Efy1&)N@8("4KmH Mfr'OB#bx[hQ zNirϻ2; }kxo%V\x+/NJ ,5 $I1[c&3@c7[Iu) `,/n Ry8%5g̺.gw9Ǩ*t WD®Up / /L;=I?>C$1/Nktlk gFfq[Y4U\"EWsyx˙CI1x+LObgG4pWԁ6 ㍦]},{E^_V1!IN}41"0v cr=Y> P'?D Ǡyaj Tc fK(Rd~I[(wHGe٣?m`֔0F(bY?,'lę5]MIg![ng3k^$C(ui Y7Y]F;ۭX2Q깟3~~5M#Po έ5E[4jW-59Y z`zxcnJpo&I~(>ۢ7GI_V_5j kq$бӝƜ7Bꑨv]]u;7&ƹd.yV^5V0zx.80WƎNQQM0>qRSÛISf)ߏV[xBz[Ȱ4tgӄm4 W31\΋ΤB``kjM!fToVD7F󎧦0yvwgI,bZ2"*+w?v w˖ bOu)|@Clw{bWx+Bof[-EĚg,C@A;Fޗ<ŃNVAǡA$FIߧ(%;2wz r*C0wtTe,x?s g{#uSFf) 2z)pm6w~u_UT6΍XdJ`4zɿ+DX5&Zw@?_M𽀲e@mf j+>+ AtFw=Aj"JG7iStTQ`:;^aOlBUoE <T@Hsr3蜐M?/{n9c,Fڶ0G5?bҐʩZļs;? peFdi@Jܲλf6^Ȑt;<ndMƷߐlGH,[oA/I9}Xe*qJ EytPR]qM/ʡ1,T4E-;yy"t[36c>aN Sf!W"1+4̝r 9^럟 TߗQ`Ot$z-r߇ݢXS9U\69^GF`!{4r=Aq3Uu[.pkA]B²Ql ϙʗ(SL5fwI qV _E,j$_l=k N.5):B=YJq78Bk*Ğ`:[]n%R|erL@$N (؇徆qD|'l^OUק~VՊ;T2#YUvd~<;+ 0(DRԵy_OYZ2Xn{?lӛ!_G :RkX5}dѠۚ gx(&N1&)QY \FB(J5(QdA&f}%vH$_PƯ?}4e[Ml0:Lu|S}y'j@Ar΄ d˸J8ds"7A2F&P)RJ{]¢| *%Z{'gXUԺ (1B D=OPF2o ڸJ[iNTr!y7Y렱t)}rRӂz%K pEU'>6M=b:k6@ )QOQ3"~ ^1jQ,wיڤ(t [gx|4/)3eй$FwS1^6FMڄ߉Ol@ōER=.OE=CG8,^5{VJhO/I܈#rɲB`ձͺ qgK""@<:.ʡz B;>B.ac?ӆڏ!:hMFjӘ.ǧ>~4?ZB-_ɍxJxA}56|<%qR JM(7X}P@b^%C혗Qӥބ6j‹=҇[M>%l<gS S]u }DFj,ꁼۭyzcJ43Whxy:O/[In0i&꨾҇*;W:yE*9y &5 0͉9&;8=GQ!~ peb~ LsM9jʺԈ0{̬[ƾfUj-#gGyC@sd |MX4tpD4D2Z#ɹ1VSnAy݀p_dj)^v <jP(RC5UGo Ho3燯IԌ^,Vp> #![H5v>=),*H* %cz>}jrٝ" xOw4HA+T55-]3o\=*%+^+x7mc\Ygk;Z)i U`?bp#h"YYD8UF/W`c +}qIγ>ܪlYv?b\?ph?mﺥ.F|W@*="lbUk 9|XT|2s14`ʂYKe y@@ R]!JFyo/!ثRcV YؙRsw: X'__$ :$#jD6.9%/>!6V,vuP&7j σZ~`'o(L_9%~G' GpFQ1oP7]<R{pjui3dy@O9ήE(2 PY@EFHL6Id?s^!n_z&0+~ߦ_Ь; CF;t-`t_&gAL!Kz{p舎Gr=ȓ2JI/c$b2U`RbD6bnza׊U {*l3|%8WhZo(%MlqHfZ ňVPVnL}?jԓuBeCS w*>>-\=bܓsKU.vb0[)/˹1>u/ |>cݛ@O.x%sb]=Ί$rԖV||8@WGtX="%ʝ#8+G{[]+bZLPMwq 6|PP-/ő4~$E6.b@cMˑnYG4 Ɠ}JDʩ=3< 1ִyJ%X@,(mkgriV蘫s+Muo@'d7AO8G7(KY˕'ŵ;p<1}BŦ~Qt =ůt!*JW݋K9rÛA8>jVdy Ϟ[#旊qL7 ZXxV#^IKj" JL(k$*`Vv4&>m <¹a a -Pq@f{lJ&{Q/ .bHN?šEL;gܼ-hku7DHCyk/w&68+y`o v+_<%69(m3p^$ɯ!aNvX ;&u5n]aR!u+l/ N&-~P؃RF'jҌ uxD'~xmװyҥBDArLuqW;PO \O˱d]ZN/W/JfAKKb`2L#^v ̹A|EԷ=/4oc$[M\n6Z'RKϖ"xNɥR!:ijAp!#g5,g 0^>ٙN/ 0/^4;p Z2hcZ b@9yo.ޖLLokk ^:yN4~s5;Udru}uغ="k5Y>RH$5Ē!}N}Mr2Yxꨎ5]>>v: G:Ft /CT;aϘ9&_엠6s -g1l͔=ADC wx  u/_ $ٻ\ m jc@V)Am)=U= GYo aoaFU-7*bF-hoy7qH;|A9J9,Uz V?&4Q@7Y<692@͹ixY2qUUޛQoG;,;uJ1.!o9ժiz)ft$%x2¥OֆFz{;>/x!\olYOLF*Lٚ8}ηhzJO3,N' H/H*T*{MV;lkvsiBGI8&^ײ+EoYc9zn,&%p@k}ܖc4I^Q֕Rx_3/dhQc5l ۤMjѵ8]tw[XQh^Bez-FR+@Jўb2Qkj;_Eh`lPoZs|Lb& $ŒwRw~g!B gtF:a|=YΊA! S8[dHg mao̚Dlܥڅ@ᐸWQ6BwcݸPT*c=ɃtK?ʆjq1;aptc=N&[g-r:Mȗ"@-8+Q`Pg`}z`0l=O<$L҆d"U+q7m0B(PҬeW# GlO.7  `/0u0dOFς'E$GQO1sp9}x鲞;ɤSl*r\IMqltyw˥޸@O>Qs}@aF P&D-@Ad`yQo[-=5/9w*`ֳ4Qe1 ]HJj Q),4m3u7 s)({k)Q6 5^RHXt5(&:zg!+4:zӡM7'*33hByOv=̯y3Oc%$?.;}-z^*ZAq^~+15ղ"{nrl=ŁDpZJ4&3# x!* ,i/ŖrȪ9n}x^gPWD9kJӺ_&y&`}s]J,Gz?ξ y\ PWe8 ﶦ6=zO䈧$<6\@~77N"7L>q[ REB\6[5 K-ox sf_߶\b)eǒs0ݓڅsD" C==(R>u_z#]k$b7*hX]( 2)u-}ʊe1J$K%6Z_ɨ') *H$$̵Q/>31^߇=?S ? $ ѺFM(ػK|F{t^oExj uխ5@tMIǢ(b6 'F`[##m{ [샵D @p>*8! دb>C ?˫SQ|= FRSˇQieY G6lGagZ Qr+ #m [Vxo3|$(`&K$ְ o`=*t!ԹG~K!%o1v=:WN&n'THK QhHP<5?c/}v\ p I JrMب@)GyuAYh$HHi +5Z'iKǿpT0 զտ];x[R:uĘJ m5ťrmGCcatwuT.7`DtP1vk n:M(8ۢ`}27o\ݑS>N}],υEZ _>*UQZv23ڱb#$$<|UVHJs4*LWo)2"&U/if lO EJ= E˲$[Fw7ՒWbD%I`azw\*|'Lg#=.au0 N VGWW>7~eޔw@#ZPxRN-Q=ZcrkTS&K{\l &ɒNHwa#yz¥ʹv?&M)^|[J:Z= n\[ F[p!-X!= gO3@1e> Sn:&D/JPީ ۃq- %ĩ_7Yf*T@A4zkBM TSM)Cا^jLn s2R b}h.TaF4y_j-^|i%YboMM6R =t}U|qM˓+h™d}Mgɶrf5uCor2zqNZ$H~ovʵk͋r_xs{w).uְ[G&l^fL:5C|hrZyd8 6?Ĺ& MWC]HW>.WVp9,ΊtLf 5ٌ775hm֎-(\jņE3PiG?ZֵG􅰲^tQAz%ʼ)Qw=ûc @/%L%SR^[=n4?dO杁b#. 4"q "ջWyҧpkk|7b 3R\jXJS=p"}z~zd\i#Pիc?%HA-jvsKafֳi0.+ ~f؜/$>x8(P0*Egc|:蓙AD.N:u͉ \E6^onA3q,EaR sYG[ ,?n3B.^#s𷱍 a8d6,‸W?ƪ=!Ƣ8W:SNR׍"6{ +^O]vz&sƒ%4,O ԯ>p\;tz&Q .@,L~C3l`AB]^?6|7'jFqJ'!HUEN3+y‹"+G}C=4%9Eq/ (>&k+ 8i!m I 0S^ dH$~>xO:ή[kߛ q/q]͖D?3]:sȄ An*b=AGU~S?Vi,0Y0hm`Ss9HB/!+{ŢtC#2+X ["ڍ4P'=NZHLw;G(jVRϽ}'%>J&R]f1q:N%':h0gsR'=nZ^IPmBt-Hv/y3+5[ n AŮhPnt_26" Ud^O'&v=qolV"`{z$J<|u?03H*yn*< F4$%aXR(mt)QܻSŀ<7B WjKy]w̖|l񸚡+JG5!hMXF8}NR4?5{|u#DKy9s{-4#[@ ]3{hs%.6{&>mܫ=wX EF'j*XOE3O\wCP9KX -ι 3!LcRPTwkO3]^RшaA' eciP@.ymX~,KkvGJ0-om{儙'),6Wd,v3f6c-匂ai2ؓC 5|-ؔBٹ:t+YOwpC2@TthppSu,)s854A!,zSPnDImYt : c܄zu&dv y;MnP$K'*8)IMmii6b r1 ۼ(F/P\>AAկW/<ڂttEwl:Z{ ŒeʼnE2NkwSkW1I@Jn&PsΙgp'QMy@DG# ·DD2͵PL@:!c6[ێN'ǓL70+l/_1N l 9q,uv(]'}ٶ9ՠ<8#Ss/'РadF.|iWVu!]LK$ Y1fo .le:+pfjo~4u` G+]~5Mqf-[3.p]]uu<(݅c6h1ؠеB3\&29J[XGC\i]a\)걬O䫁c rsU~לdWc2yhב\ ţc~7wK,m`=êAHܭ(һD7'͹{AMsnՌ1{$>~s~?-Zx]вU@o@g`^jk+T/Em(Z0*'#T^MJ->.(QmӴKJ|4)h!uǠo6,O7y>NTr#~%FKJŨKɯző9"@jsÿ1[ -Y=Tvi"om[S%'>}Av)U^Lm ͂1>!H~,!#)Q%+mvŰͰ4;;]j`աY:}fϤ&xFѫg1n9%5/%tt u}adOƣl f P_ :zGD{J)]΅Y[TPꓘ=pfYM9,CqEBBQr_68ȸ+eg*Ct,xމP>CEtD/,O޳VmΚHF=Kdm3M̫%XU5bu9D:L:YE ZOS`Eئxj㆔7y*Twj+l J~9QH"%QzewŞB:[Py|k:,, FS=tϑH#gӜT>a;]uW( 3eyiDp;gmJ_wfPE(F@sS$WJ]^shEd(7=dʨ +Git( ~.~zaWoKc'lS$Dv@c&)ܕ-$kt;h=8z{DrxE&^aF qknv3gIhW7mx'Q˞y FWM%5oTǵQkѿ-~we¯k2^#>x>W[J֩`61VT|(:]-JMAr‘')l(= M.E =.'1{-rr,Y5QoU[BI BaK8ո ]]G_2̬ڡ S-!Cy95X 7+qes(]\ldEYg/LΣs.8*b% C9yLzP7~S ہ!\0<:'UMC UPzj(=Wܱ (`W`, ДŨ\/+|_*e120?&Op)l3EB` [<]{ysvn\mV0?Ajq{8Lm>v @EKhi}(ȧ @m3K4Ѕ~ݯi,g;ֹs!]ӓOJ_U?RG'Z%EQܺ80#2ICK!Q%"XKb~PsQ9sV&PV%sKT<(F+"6R1SzJy+bfi/f3A[ZK/o_zrxm"z@$\Mr)rYfr1fMbe@@2 eH]S*"8rcb:KvQF71bF|k,B ɵے+-Nx`h Zj > +J3ÝIØվ#u%D^%xZΥWfXM\8͚-o;TlR3z4ޥ+C{ Q=R6n;%)}Pd11g=)OdhvN 7u>0R4h̕a YGg `q7،_V2c04ysܷS<USk~:}efNa`z4! ǔ%OBq\~1kZ]]-W6%ֹ X4Q~9_6kwʡ(5s;wpf}3/~9b=}JQPy9Qs1#x{숄Q&ce ]0K;{?[]Q)~ Leiґa݃faZʆɵ5-VuÇu9A ,fTuI6ڝ,gJdE;ʢ[G[7akٲhށ ׮oR~>_kMB~\jѰl2'>19ۨ-c8Լv2pntE0dj,rvet <4+4>"f z4Vu Ml)K2 .e'\$CFSǞۿsPiJ6e 2oӗIAp &!+vY޳@kJiApyNJ,2 OU&^GɉtY'=uC7UV;~q[YԨo)9>Hm)?O=U]px|^(SÏg jp?5t'kyiSnjӜ/~a$Lxw;Lq 1akƶ3뉅X|oҫ^GPG~˕ab4 >j(BYou|vqW3( 7ttLOP،Va uz#F~_da)*X_ |[Z24])9),S wan#[VA9Ed<ҀgdϹj2D)3K\A[ѣKhJ,7ݶ6P3x)οP$=BnzYLs><|jKټ@)P&հـq4a)-r}:zi-QP<6 I$*uh'F РvFNT3d!LvF{ʀzh|o֫޻.Z=UhZhDL{ϜE50 .)ZiQpY68&Es( Ȅ=?VE:mP~Ƽ܅#h6<:̊s 87ώO(BcižjLMo p)U{ abl(jhʕqѮ& 4k,!_;7˼ZpcaD7xz$OQib0G]}Z)#@l6*OTu?SaV'cH${B&\.~R`\z Ҭԁkh~T9QgF'aArgӏQ#8d8L;QEH;A9*¦GU=P,o~@hQ-TA3]j+5F "7!DNਞo&jjVx y5sQgÓs-Q\ sAiAhYX>1+ /x colKX▤1cqwkhN'QQ$uf MuA"?c&zY[Eۥ ko[>#:x3urIQ2/t5xR)=;*A>]50_K +-$杼_b$3--9z^,iXMKpO7%I/LWXO޻ #s%Vqi+E;a@5֚ߟ~46{^ӎ*Ah;֤Y3;M.MegU—n2\ty5 b.nJ]{q/PTSZ( O"o=:{(eچ&x6)%oW:f3 |z1i2Hl$cJ]ɏ./DtKhbxԨ^m~sK+}Yo$8_x>0Y#g>t񂷍'"X+J?t/O$4Xx#F0Лi^U!Pd; 17^a6Os>D<|QMi}LjDT4KsFYQ|ȋ'#AŅT?ۥ "F :@nR%˞w9mja 2"#ln!QiM0r䮀 Vk5I3yll_:L♴~ zF. |Qh~6-ɿ Y>xᶊfLl;+b)(u;쟰4F{Hn_T'BG{rtˮӁ,a2~>A²eODž=;1O"} ք?<~uN*NGc *mZDݽNv*LF/Cɏ+:쀩?ɨ;΃Ta/B柹P6[ EV<;I174r7CU!S;Z a3/KEp|=T_ct{62)J6h_Q7W?fx6:}HO&OŃx)M78Jmb\$ aYj_,\V5Ls$ô/:e+3$z@Z.CJz| M$]_v$֩M[JeyMiֽL{b$x+o)0c2xB4ds+S֛NZ'*/acX(iAAe&'.#~v&vgW!!40SmE'q7D||3i2* cxo#&s~["Sx2+vB<"- _!_Ά'ۄɘA7>G:B^J=v)ٌ3F}ƞ|,0ԘJaP oxŊ^79YWy'8,g[d-pjSג_䣓הY5R^ʵ{5? b>'ظva~I:[m]M&~S_~!a̓~{EXb Y=#;gx>NF(W)*X[4upu fzU7t+i,{O¯`$Is$zIqj,Zܰq ^շ(pRku!j&F :>īq[>͘1aIt׶sGmp9} BaR^>WQ}aM;ɶ\nIp]OQL=1ɣs U2em(AL݈^¨pD*|Ef2Yڛ2ybܣ~DTW3ّ˫o.ClT%-WT?`Kv)AȆ|!'u.$!߶B' /~3=|inQqJL ],rj!Y&`@gG<'X#b+ro D^C5.ɖ{g0$&{HBiL+63Ή>,x:].YN&CX6w6P}IKwŢ\45uKA(ק*\F/TPN:au}9h8@>ݪ{a̯9;!Wwg ;Ab+f;Im<_RU(X뮉D2e"M-++s=:V?fnPk%h7,]b⤸5RS#;Wyz3 uruS#{QwѿW8ֱ^ϹF$G1 C֯bBHRpPc֋9dg>3oXOLR'MaOhjP2eKL}*KJq m3Ro$PvJa$S;cYX)d"$)OϫˉEyf'̼X]AB kP@mz7W{?#>PpAR/"n(?T`CL <c귳S(v7;]S9+Á~ khb(Bz5gF ׁf-\]jX| ] )L\&ukd'QD*`'+^UnoDUjj S-]?E3['8.p$n@i8<r7\kJ!Z OwxH5 ]Oyϐ/ d{NtN‚2Yϲ6 \{Pe+rqvF-4P@a)7Nk'Q6eVFlζt4qWp\UC=T 6) غUH<Sfq TAJ/f=ko*I.$g+Y!Lr7e7-aD%<{BL+͠u(2ݵDY 5|PV =Ƿn̒|mOL3SKimJ,  H =~Z=DHAgWܶUpN |/1,!~.SǥEho.E*H{Hc@쁙6 <ǜ.N*;Xxj2y;gɜzFs;ՁѺ Gcυ:j_ 0URnUMP2Qtio kj%f`]V<I`/26AΥY"n6_g}zV9IYj oB;3PvY#u ub?wp^WP)vNQ:f4?cW(x ("GAfj+ՐnqUP/TT.+N(H~'!o7{< '"v[e KNu-^G\Y Yo]b 9 #."?hnSH+ⱱ$Hp;7]ɳ_#~v8Ef?Mq2ݯC̉i_xȋ(ổR/VCK M枺e]ހA鞜6 %T|Kį8&{ |L\b̳K|Rlm:6OCL28;HpCRboEwMMiACث˪koq!h$d4ZhSbu1R~kh8gДW[|VkbBսu(kk2mI wǓkJVej X/ lc :iPs}^\.@$븊Д(Kei03i_*HhXmh5-~rA>#gz66QO*ӊ-7aEF t~N*n@&@wt_ix6G9蚅]4U5pvn**`|Z_4ƦPܸőmh#`Zi /Ntr; 苻LqY^}UH Ȃ½LnPF$XW{K6tv%@Q؞`Ͼ;2A ^Eq M9!3{Sjt ='kKɭ|($%EXOʘ@ Zz7?藾6} |kA3>򡃶o shRڝ)BFIaZrF9TK!#GjgVVjKk xv0#Z\ [/;#uH~0@2R `aǥKm^Kv`o2uh8ϲxkѡHg;`@Q>GgA`"*8-_ 4bCŰͪJ@JY sP3`l+.̣#'sb0EnE偩б}j*;&7~)L +cfO!|T?4j/O/Qbf<7\8 ).}X$^Luz%ȍ ыvO'.^rWTwY"'}C;W J(MRɉ!GM0{6nX\+7yYf L7B'^ oU'a1mn@0oeҌ|I‚=w NT'AW5si 9' 3 aG%9^t\h\o- 4H3'*PBmq$c:58+т:p.8\GChtd^U>ի1-(&i>-z1cLlw2Ӈ ԇljx8F,yRDIq|F~9i9 m(lFlWY䛢 @X_:*fGL*t굙uHrs([#lT)U (r{VRf/Ӌ̡Dc))kab^ 3~ 5BlpAȺC{I? 6nIfQfpc6>*>rrr=)ׅJ XYZe;ht!l/oSVTp697H2#s:sN3'山j%-fDOt~zֶ:–°B+)e Ouw= :#^?/0Еti^k ) ĥf=u&(x{A>=[\@^l0)x#g7k.l{3rm0'~'_[)eQLb$B푀뛼=0\dž>`tsq ?58 S Jd݇I % qk8 #YQ!'jP\F1ȣa3_d:dgjѭ29O^iz`)H81^\M|}'&?V0]_^3{#AeZE0O[۔@= ]- 3OY آ$/et~.W#3eCf`G`tYVl2cqQ}Rv1:&ΞZe;퐴FWh[)ru> D5{S 1;+̡e~!,(:"W-F$nIh!YNƿ`ܱ@D͇'e3ttRn -ģ\>ݑSֽR=d`Ǫ3 .>F{#FOm[J۰ Ѣ5r}*逸S7 |R3#욋V<`цuV|x? +id=˪CeJ%r`mוǜeq}M _h{U5)͛T=19Eoo0&G1t1=N/lpzc>Fgk5i΍(@D7ȕ@lu3\G JCuD#UP۬؟X#%|` _,(@='nNo k;i~S\E-^v'5 _kfႮX !1'G5%$zEnIV04ًΞ6E=+EPPռ\ yf0NLb 1}],#Q1A˔hq;MT*C_7Cl  {]M+4X5p)D99fY.ԆGjS&0Բ(}V,WA@E=t@)q5~ +hX9 H-0H g2( S'1a*As%uPr1>,ZrZ0_!x 5n½QH[c9upD%_ hN*K32"?xq;FҢa!og+$Z-O.6gcgg{.rZ;-94uxqG[ Sa-/bJ)7ˊ4CI,E)xAкLw>  . U7#ϩk<$׽Ӯ2V$~jcdZ|,CO-L <.U>0`邸eTvqo}3-FXR-L2PU;؛Q%o5qj,(%rA9T `oz+X>If<|`BM/?iTFYjJmtvF۳!MfHVݶ U +k[ݿ6OZ>,ULtn{Nr8~hLl|0,n):|%_$n_DZ2!W_Xvŵ #%֩8`>)6G1d0ikL^ ,fOP/j,LB\\R2qm+BQt>A?,v}eN\[}Iwǔr O4wu*|Ysdaj A -d/=˽KBT['P޷p sLN.VтEхsgAf?h }M BV` ;YRTt8 [ݨă|̀5B)|G~q&&/& Mʽx(^J'^sO <=FNc1=lSN[&)]N8 ;(_}Bmr>?YdPLH34Ř, HXbЅYUNa?q .G}2k{e$޿<4Fٗ%0v:sicoL+]x=BLj3 w ?n0uLxVʷ6(Bb!)/97Ǥag/HmIEWKi8,‡\Lꍩ5T8B0=+&s,ժt ؿ]_wru R.kbʱ1:vFRtK qO&ζ^j5RƶiVKhQ؄m"(YZ۪t߰VEW`%Pw  քwpʏ}UwGwIm!` YKdapS?.f5MOj9qzڴlzfԃ7t @qzt9S?}$ '#92Ak)zKԎ);Rhj)

t=f)4ej76<_0l]} `gZv#f?X ;[Gx?o-3iRt7u*Thqde< (Ђ[}|[́a r %i01l3nxA;m#Zwa`s xr8 0B5tTY+ܑTߧ8δ~(!T,߈֛?83jzf( ӟtzQK?*U R!l|(e] %oU3 ꫥS.)Б9#G-Jt{0X~^F,R 0 _lO]ȯg2x?-6 ݩ0?,EB`4 ~Qb3hV~sT%mx 1Ad֚-E[i[eLx-Jg8hXnPƺˤ]24q19^TUR^7}Â'KiRV03I%:rbQ[D;H9$J ,@<[d}2i\tC&^8 &zv*2x}5 #*.{^OEE~]ce$X :"Vx]ԝd$}2v4I6D2Ȱfӯ0:Gfd"l MoF(D4@՟c,䓱ɛ 12+[D<$BKdM"+'Hq)i K/)ze$T*3W9>*Oihe}s^}Ѝ)~7A2a9J}i?fO@G;U 0%i쐅GC]Q@l|V *mSzk( ~;X-$|.5_ئ:D%b$ٔi>'5f(ٜU"_RR~?~RX{XT(ޢ>J*,Bڕ"K3~:ai8YP)h43 > ݉1[1*@aL߱+0 uFQl"&Sid\[od'xHs.5sw`v%#jFreptH|ƭ_U3tU,ɋymUūHdc胏U_rwok7$r5EOM}OfLh/R'rqyaY C TH U:)<1s`9ʱi%Y)lL0Xmʮ.LZRpOhϽ@}޳,+6 1J0?uO,n4±2ퟪ%mp;i+e6h5kDUp.3t G.eJusRp#aU:7z$V8FC«^R+24Q5Z~G| 35z~RK AM8 EgM'3hq텔q\d\3=V~1-<۶tZɏ}8Op9_ qr@,^&\ OGKqk9k Im =:AW/w7@5uv;FͩUN\4¤}w_˸FF\!v}}_s}]i;ΎKUZQ?$Y~6=N4T nӃwS'uW*>X35d~+(F%R*/]ҏcx6kwMylԭ*/©nUŦ|oz'( զUwѯ]BGGfS,8OO0Oyϴte1h[-Z鵡J;doa}OX6 %f\Dr5k o2߈F~9Ja?¢ +ev㬿ud`'O^"-+S8~Ԟj&_ئ0ʇ6nU+ E;;a2ъiM|W7 \AtOa[|#udRj(֖U]P@ݤzGMձ#dS>>RUdV'X BQfnfp+!v&Q8r~v+0gpDQ4"~_%HLːq=JaIZ`IZJh ~JOa?D丙*-XCN JPOtݻ_ͺgk,0Iϥ|)%6-NG`#ټZxA3η7Ul!2hy>xgiZH6C8V\hQ(}4ojuPP _Ζ4Y뿐4u΅{~U0:U«D]\,,x TK2иV֜?O6]pftyu=/.%D  EnP#dlBY!KBPz{W#C7rTx_{ɹoI`& Qvh}m@RU(Ҥ&j!r;DJn$ާgLeRON]21jV@ݣGJD7LE`\{"'qRJ6@"Qm4I{"1,J& @?MmTW#|3*|̨;z4u׎ (|L,Jɚ=p&---vzc|v7=%˹U ~y^xrW,KՐ㜌WS;C,`MsIֶ-wVQ2ZY><4YDBЎHg[3w[{^a4{SlF5Ƞxs&tyo&i^tR\\dD_nX@ZLj A<+(~v=4IVM[|ܷV>18xnhSD8tsf+[o_R羖QԳ,֐в:RB&6mSpϧRޖ4_䦳sB`:J,|/(u7d~;0Z%Id,] ccs{b%t帧#H0!UG6K<97+F=+WۺG…,w񰱍Ob HI.v|)o!'O +c3ʚ,>CV+~6.ryIidOI8Z\]qvSUy U?}*>aG\ɿ)('n&V63[յ&z:_@IJE# S8 J;Oގ:UmUQ29`XqGF& oG읞Qd;O\̮NՕu=ʊܻK;םu~ 5f=9Yt$*`I jf<0긘bI90Vsos @cΓC)"oQ6\sj\WskW*H Z3d> ZtU0h\u })Ky4Sq!I}tT%-&)aY p|v*nt)Gr.s 6B)t@Ig"Vrȧ:=p+XФd^Nx@@ƍ.V%mo3:G[~x ց}*@ fvB7&մ:P9 jDBD Ğߨ`r g:IM;oAg+hEڱ:Kz/(.믲1g[٭G=E^z9!湙6i׍Iw)O+L˶1 ߲dbxwPch'`JDdL7@3upṆ0vV :W8BjudO JU\4KxE&fhS m"}'| F"NIá4-i׮öwzM)nEWC̍y 2p`jbDBjcfE>l^LP'm\%b} *I8|:uܸ?bIʏ6?ya3gP^KiRu0R84K EТDK^4`}(+,A jtd򆄂#,RU*pي-ѣUֹ0D1 ,;x&ԕW]#tcή%華_)oL^+>Z`1FAm\|Dk}NŽA!&A~ &<ҷKAv{_,VR<`~ ydgyvx]K_ !H[E=*aM3+_S%̏I$1J쮢{;brE|5^HZ:l-{v :_ʮ(U*XQ) ),3K 2 .v F=>5k]G4߯l!dZpHYR4יSJ)էO}k}y[t}(:R-& }(Y֒.-c_(('vIl͎(XPᰣg 50KwcsB'ߚ`,)]!Q5H̸ \Y#rK&y[%{j0͉`2yPj4% h̬ Wib s'ύK -up'ATljM` I?*w(w\CP[ma]d6K.]$ K1 p,?ڎ{C BY⦶Ph-6^)K/+ _5y?W.XU赵kՂˡxI$^췫AZ9`_0^oL aETf<}:WLɷK3RAUSϰ=뛂k!+2[dELܔ$D#lYg![ŽVlVZLS]Bɴ0|7E3ǰndH1WW_Ǽ=jyg(S@ah-4 ?[~̏gu|!J0AW̕E̔dB^,ՉgJZZpk lA.c0tIqbZ%a3ḄݟcMdX>z igVi4wܔ/fUH .I1|H[ =eC8C;G=٪ąlxP9؊r(/^\hsScJ_ 11}ڑw`=͢45Ng%v2AfE0 ]p$eg1VOg \9M# z [8bXlؠx[MzrO4&Bx,㩩 bI~h'9{xX5 b\+ǻMIyD@D%W2},AދT>!# FL!䛐^봣v6KeKsfs˦\/Wzap4Uf91P4臕/Cвmf|rSpHg4v; }nRߍrsH $>ي;Ou2"Ѵ6>~]db'r'}Xnd5!qihvZ6H(РDD>?+Ud/az!{~eMLBak /"غA]}IJuu<&;Nx<6;r_ĻhuN f`W͜9m$@yU{`=S_nc\#his>#Y$xXL?$+NZ~ktJ!\ܠP&˕شh^ȴƩvGt Ey\ BX nC)Z &1Λ>|2m1 }\NrXՇCK=h d&YDܨYs Ups98Vz9Ryc%G&/tzJe7Z%62 X 8O'jx"@!¾xowweLZ~gHrbl4)Ƈ'냢6 QmDt4|6A4}7".TZw UOV~[l)W~1&5 Ujm}@A:W>o˼t) bpa(:b"`,+cх] 4Q(B1S3c1LNDP|94.iLr:XoŅZўW-#0[t8ÏR]8o{l}/WҲ v/1+ 35ihɛu"HD)ե0a/gUmAS<}Af>5ȏ%*ck\,֜pȬkp=ba'zwO[FwaLPt&1R)5)f;L'1/XAG=b^ $RXKr?*ґ g5-(' ugpݰGGNۙ[e t7p-!uG͋=YgDsF䮑sMb9`"ѬXdU0#rʁo;Ub$ q16{ػj>*\|8OQ1 \W3юjO3#+V4m ޵2C!&N:doLiAF(B,Qe绵Bew-I%qOnT j$> 'J$O{%.Y먷տ:' j9%$#(짲\řA>K^"TQ&@٩ڝ)"We!?wg+_4U)^5hGtMp$5'+%7.C4W_cz5`mOZ@uy1pPn!Zf b1*Dx&TMng|G9K'RN&qPS7tQuk|cJX]&Se/;MuπuO|0$ t֮*c 8hvs#2 4 ZO]!P%֧7F~jwbWfEf=BPֈWwY=aJY;'C cOۥQ#h!RO`eDf8v.9roLmƬ/li& !M79>l<89PtLAF5Ӏ>2' ZAP`q[$QOϦ+zq1w"3jȠ!ɗ=Z}JZT؉m/lPՒm`[A:p+!1AM6#/f F؝2Hץ-VQn]ba12 C-k\[^.Emm" ŻÛMsFBl>vQm Ȫe2ZI{/ɮ~1E χ_zL3.wJ(V[hK\q B3 kKja !ژn@'Dd ]wQK^NHR춊bb4ߎBv3j#`F˞3)m!1"{4%3d>cqQaM8kؤBv-w#"'Ǵ=B;p۵ih tP~ ~BܒQ&F;:n3'5$?āꉈl  v*1@Շi*XT'ܢip w?`H%=ĿIW{^qo)<낟a)qf8-pke6<+BqH~A<&KGr˷&wXgZ/<J n优;,EBԱZ.=WujSCԌYyUԢ`20\69{X5/iF,dJ5L`Z|-X| t3Sxy>lJ}oe3Q-(ѳ8̒PuLw,/9 _0龜@ڴ(fr@Hw3ּ _GH_gۂ ^hm)q e ;s^GYLe-/*/Q!I!N&\"{MNotp+hӱ`*PKϊcge؂yKe|lA/6{b_36Bq/-z`*`b!R9;-cLRC];ytad"dL#Y0œf6T9@RbVU~!CZsE̫O04@J9}+.ɇpZ{io.-yΓ2qiS /Hd%b"|ׂf: %mR| WMB1-D00n i(uz'2UfqSc)j O hCR]<ؓ+ܪBrtѪnx}:6vhYM3+k< U}~_uL$L)  _oݚ!ͅي ]M@]Hڌ6U]9#}x"f0-F6*A%cVm|@xe) N!= P30Qb OmIDͷ{^8TGcC6=.Ebݤ!$Nij h`>1U 'a{'ITERwgv#袼Šy=?+ɻKRgd1KVYS=FO"i~#E |}PZ` L]dh2q : ĨTTot 2ط|kŒ{eA$! f9`dD/i]>x݂T}L+T߰g oMfH,aagy]ڿN؍EG(UN. ^vXFULS;u&Gn=KlN|&ϵm˚zE=|STP^wplU!L-&DWT\ͺ D]+ ]iѺt<:.Zf?D_d8d<\yduuD5Җy0?g7/Cq]is^d$FwPzבRZ\/esS 9я(\?s۹ /0aK4y([?T3aIz%Y?j;z g5MM8OO;E $͟NbV+O݀\/?hű}m6vmoEZ*KL 6 ^c-%~9$n}tcqN.V2&?˓ɇtԠR3v'uNk>rUy&E!n2NCj?z`+xMKƸA.(tWzG)Q肥1;Bf?bl'A- }hA{DQ9{XSW#,)Z|剛"*~,_+ jjTʀ%txqzOn5Z-d-%XDc؁l_I҇2}jХ-3,u +o­f@KY=`͕|(gHugXϫl|!,$jNnvA@K⮯y/\)!Jg(6.Je=,!Y!0LeZv錳gh%g7~ Wޜ4T.Mb@ ÕXȩ5 pӵ"F1]7UTSe9L[6mxcw)eXwĆūl G{ĥ tU?,S>'ʔ3 c{5.݇?[6_ٞ29 .u%"AY;}W@@/un.YFoϖD\7Hş9o"Zj#2ImDܨ!vt5;F~0+q|CpASW!E6sȹ#!3:7bHN x<: l+[n1$ژ@ّ…{"z"dIФynMؠAGiYwW]"_#VC~kȷŴwNQAnș"|݅W:诪X3?q!YZ.`ቌ잔F[w}&^+CY4b0VKoGs /xG>h(8 A6 q@AO <+_v/ZǯюK7RHF:6;Yy dF+#= h JQ}isgzT:MB;b,]mB1]834gC_C,k4ޝve[|3O[M?}K=5~76$=1㶶x_X I#Dj2u ӄ;,INQ' |A(}rj7/)7]mF p_!) %h1OWLƋV=8 a~QqMn(&aŸM}E 7$DS]@/$^I&45ANԕ}n^q!ůKHzHO59'cC `zu[8GSPoO޺ˑ!|4((a/cpT7XG>N#KE3'=$[ P eA?'ƀgq_kjϥ- x}$]R4ƣ Kǂ`2|aY)m_T{8gne ǪUxofU Ρ5XR8;Ź.,M(WJ<[ R6ALl<e\CENK 3^4룯&` t ԅ-qٲwt>CR"Xsr]Y9(^@כ&Wn5{ixűhm\-*tvf 03`ڙ\q__yiɒf0Im"c [upR'{\#Ut-044 {b_]kb:r,vygbb n[+\JĐ͏2gi Y$ʜ+~Qn-|_fwpBfxx>`TXMՀ!=gn1\}+ *ɛ"^,4`W-u^i'gV|٪檣{ϵvJZ?ZeϠjhu))k:P*It<+|3Ht`* 簵5cKOnTF0Cd~p,Q=m4We'"h7nJ&B,ᴗ{>մثF5$hy`%r]k왥XGd.^pcuEs~R;l)ꟿU:@:6NRwЛf7^hfraA+t#V\ LuFwYl|>|MŃgYAR"2E'qxYLKrY)[믫 p/j̽^ u cݳ>Xd'brɄό`+Wx{| T8hO鉳Llt& ɾ' 7Qe7ŃFt@nRՆfBq f̌{j#g~T41OJUD1ƮZ/"Jj/{7^LKǝ.{|YcSl,AbgcK&Qۺ{9#.F񑚄9G9.|ylb͘xu NDmwM_ 0EuWO3ڥr&BVp1g&.?F M;?˅%=g[Qsb.qCyOڀH6x&Ec[Ur 7 b H^bG'nW'GRK5*vovK8C7"M|N J9}ܦ~.9eI?x}Sd, |k,#Ɖml$ϙf4QS5> Fuaz(aUk/'XqɶKGy&ƈ^Z2et·' f&H,eӞ4#o{=Ʉ}P٭^gOe:P^8\ճh-.46gC)R?g9Qy%V7]roA 絃nǁɭK@ɶUխ%eZzqV[İ2LW]ni;a&Yl_C} L 5汌GJYIz|H^cTi~P`]V6 AWw+͛18.%רa9ӠȔҝYwI8=l~c^MO|t> nr9qO v!R QcU~23ܺ>*koyq1fc45cIǖ%}= UT%MjG,e[*-WmeIBeǸW8!,Fh:xRC!~+@h{}{@-#V GlAk@R);Zvu;]K^ULpq4ވ!ycL0:RF1Zi-awEl[]U#f7Bʶ&}O}D$HilR`깃-,榔) n~o2ݾzPzdJfs"jrx,I{Etv%xB䡚7 4N>kުYOǮH>AR}e?$Lc2<|^Y0_ܗY%:MB-PR3k@{ 8^[?wn^%sĊ?܌!~ߍI0dv-Z7']K5mfӐ% {sSyFzQ(p5r#wׂCVL Wf94{{(v!0"qv=p;pIRDlk:2Q$PRbW.ӓxqFR۸|U&4jtGI8v Rmg$Y3qkqijDES_I7ᑪ$ۇz%eGS5cSP'Ba}~ U{X1(/bei =@lB{Ř˅M1{<sQd |[\ic[z „f![WtH 05jR8~^9e'E͢rJOERv 8U7QX LunK.)-֍##- ҳ뎓;u6_f1jo%MrqH׬HXp9_sZBex<#>9uZalH%'jWٟA:׻(c Bb7*ri~\4n ϙ;n@Ox[豥(R!XNY)& l(UOE)?e"{!+>0e|E ?PGIEְ}S@`tԾlWS*`f聟6?o~~RuFW~Dd`f_ovM_B0^N> ĭ+Aͺ}k299ftX<58`uKS j^1NB}7pbk:oO}V†=%lg+1G 9EB;.8JTml_CfSkgł[\}z1~(p|6-kmnHVrQEUoV7Ng$iD첃>w#ae,U;$7>:z%²?_owQ#[[PQI2k vjg/%,:+Z#ESŒx.`OŘA?:&]~-^n|jVaG2,69+p!YguȌ_?*PNC}Cաsb A[kBH:Z\Ԡg<}yy8/WP8O%q9gmU R^jVy!BG]6EƐWhxQkٱS t)`ޟO ߜL'Qd=4 *=ZV `%+T4zh~AI`E&|܋U_E6p^I#53#;ox9ҸyW%q5|\JD.{BB[-ۻ2qj8 懣 ၌랉$L`O`*0A u_{ ٤n5iE3 $ܲ9QT y sDKB W琵kC:Lߦe3)Wd^!Cɥ IY\rܛ/Al2,>{jΰJ0m CS`5'6`vZoMHX̃m`Xչqf 8%βOtg ?y$W5bsgDvOMGY2>5ٔv~-@dqPC7i5>42 Ԓd^Dj%d>vip*k% @ Aȓp,y4yʼnA)2uc=Z&n2\WWߍH:m!NܑFc'ėc|yw߉/Kw{n`8ed`Ep3aXj)2s;e;-yh0m'b bVn? !@-ab1o'88}P +~7%֢Clv]PKi hi7<CN3̮Q!pqܸrfWgreG;[Cr-wH tx˸fjNdVf)ܽ4 9|u eQJrblbfg\_o=8 j3%JG閨(GL'*8z4Q\!iW`:چo=oBf*C@cHLWXdӝiPcursO1&¿WZ:V \EZȳEv7ǃ/I&dWd&5WcȢ X^[HE9])M bILjDTKfg읰7~',]atfꐄE*ʲ&uDmI;錋|QРn<زmdHЉ; [-Q~Ϲɔj8OtV&ȾNg_w sfxѰ'1ν\r뛅lw ^3{(gS>RQ3݈+ljb_lA%v(i|(J. ;ަm7o6˲tS8 N)&$kB!Bi>/8[oAe=3Qt"aM=ҝf}7#_p)`,ﶌ_/%,vsvZd+/- 5X&X'~1 FH͜w4.M+6OU)9v(֨4xCGa?g#u[Z˞ݦ_n 4|TPż|pqTlCu҅:"yQpl$6T=8pZl6('ZP?2&9hSaB-NV|txYL_".WsP~S>K`im ߲h J7š:,MΥ;?/MD H2&E| '7yƸҠeٴ@$^VZf$} QmG* DHM\(3)4Gd?r`+DoJ*(ȲKL}$eyzaS%$;D0%὎@:#+P}h|x Gk#/ƋfHR~Q@A (j1sy&=mGb)Y!qV9`GSPL_!Wths6fXL  .|)0$ȑcY̙!JӐ8pO.%S%F(JYeŭ__]^w8?`Q0*Y~Sȃnj= IFγf";0j,򏹨Y9HF', Zf󿮫JЧ >W| YBvJu4JR. Q)j@z:dFxvVP/Vg;qh2O[j@,?fa܊`V&ɖ6F8$F\Nn2"4!c(%A d4]\yoRYB1TH$_GeEO/w T3Y76q 7>n֍N@(l5,_"S;A;ɘqfVºO ԓ4  QO..! H4lxL<qqrwڑwgĭ[HxQ ؈2@pq`kP58*BpN`ڙ]珦fbyjJ nu=BQ ,&Ztv_Ji]a-O:¡חܒƢZB8S-)4?>P"=px?5UD.B!m%Xbb㼺y@U2Ewo ۣL<[/ @PP*e>p8Z΍lJSp'қ.EХ$p6Ѽȳ6=rٝ {DHDf-)ɖs00U[eB/=d{γ8s=lZصx:\ykIRz(R/4lo!Bx6vfCAqn85>h(<;_Ա.^I_1IBG -ˁ"9 %Üp` LI_ݢ2¦$:qO@:Z|?:&ts50eL*$3\j/S{vI`S`) 0<adz=8KpK:{Z,Qbs^`x؀|+/tB?OAcewPC>gs]Fê@_PV?ӹ؆hD RFUv'^>Y:~oƦv,⢑+A~ye]>6 ܐ' q;Uےϖ)q857"Qµ]9MuK`.&WAE '%&$3c͕9}x狔me,N/=7b8SrM>BL9f/ HXf![T@Wo1*v4gNkM,NƉͭ昢OvD>UPǡM1$qꢥ |.^ҁcCdo̘ï~=rUo\8-M=o GnCwɋtuuy[ZAJļi(%;WXPDKQJ:9 /Y1..0RE:ՏD2݈iAͻ͹ejwT6V7VddWOLjbi|)(e L Nqĺ`S+/Q*)_ɻ"ÓR f2[H*gܬ ΈǾ% 9,wV#V>wz!̢9Dj}TGCC!g43[%tq|[5p,aEŗ)ll{V;I;&>lFqB)Q2l\qsj]^1kob+A-AДԉ0bN֋dE­Uu-%a=I}>gxt,sc6ᇏbk>bkP2C&]`ϱr$!s"5 gphbC"Wsqb[1.!_ ^YU-B!WSOG-w&bzIJIQ&֥"qWG ="s]eCNjO'!S .{zS\d+mffi>kyfQ5rPCcsƎcW|; 8qnZC {&hyN *O,. dݺׄN |\ff,4&-n)KfLrW Efa~[8t`$Ɗz8T4HkODY*zoqd?p!*YMDn# 2pЙ,(bɥ@Q>por*@)L*\4\Tk36v%sVhWI5K~#ElhÊjW|1ػ5ąֽ(zU z`fW,Y8l}puڐQvXh[TE /襥C,BnB4ZT Liɉn,>M7YQT7qdYAQritt_:^RH-u9ǝ0?~FN>|/5!~nfQ>o3˗fiK]=øq]n^%>砏isykK$y` 9Dj*B$;3ji&3ewag98 axVJۉU0Qɏ'wy6mn[` 疸HbtAS4ޕ'4sPsڤI oٽ]ݢA=.DnRwba:*$> nӱ/yGrAoW%@"+!Lf7;DY.9[l}x8_83X̂95$=] ō&ϒFQI [ v"@H5  qx vp]6*1OnJBu{B=':3>dpL(-nc!Bd1Fft9|ZMdɵ&C7tNzrS *c-SjU2~#jf AzqN~H>5GNvbaTgbYp8Vy T>^WW/4ŀ |Kh1(K {U%;!TjF ZGPYt$ *cO@o?DQ`T[u^&'n6dw%T{U.w 45[O"1 ;F.ܗT!Lw݉K'[uR+LfwnD. ܋b)o 6iٴ=3W"a8T 7Dj378|cH>,߳1=^AT80I,$7 `VmczP{"n} C'f{ hM `,K褭n5Wyrq2ij%F ϋ1.ld A3=㸝05cɖt|྆5hB|I1$RH ;@]DϚ-̓B3[&ދFYO+2|r.ŅΈVc'@B@ kMJJ0kPYZ9.-ha|] ?,]r< g *md5\<ܰ}Y o@'sY~lG}ųMpưUFpe̒4[-\+a@E~"iQ~@?$  Q[C(=EסgV@R-yqc9/lzWz=ɛ&'Cn',(rό?NkopQ2<<O̥%9Euh>(U._"ޔ f 7<9^H&XDIu3mIU1 %s".pz]Yd{F ] #G۶!nK筟u EdҚ `ao@m-UYK*ЭE}\6hZP:& 3ݩ'HԲA :8ip1juX\+]77v_{ɕ RQ}~_6f8vvBUf3Tkٴmij:pщܒ6k)2S,4.a?eH83.xqE߫ gWNndc.>D|㛫!sTB$O@ܓ%i|X̬d|S %Q¨\B&\fxPnM Jn%3BRZAOd$%z$vJOQG x" 4:ǮPR+0LtG%>%kQs8IUC6b,gAEwg}uX^gpU1lWY1[J99ϫawvY;HaC_Şn(lD/U#Q@es{Bt 21F}AvVI2؀Y. zʰzN-N5{F78U2XDu}4k9$w[62 @QՏx(8u&~d_~:>_> `C!GbA~c_߃I0ob?; 6QLRy44:;E%0(;"z)V"pE>$ԕ}7 oy3 8fYS}*ڠŸ[9Ml {8#4k]1dS>wH%kD3[PZ[H:S?+ t0]}sQ۟ykn1Ĉ oEFu8-Unb( ,:ʎ9^"PswivkhoMsM?5h 2/D]NZ~7Zp0Ou{2u){jl[:V[>kǃVS?LmI '.._sMn g8ӴUPc kJρ1#Y96FQ5}AO%uíBĠpF$U'מ(=įF(aR16eRRRJJuZ])iaU+B:2SU Xs !P7| ĉ-{WzďjT-wP\g8`ɾQz2t)x@hy!Nnl|AQaVrﳔ-%W=Rk*xu44vV-s'u) qw쀢mH{c?rb/CW$MLY||Bhr;tj5IWpdyr6д&I;ٝO${WlcuٻᎩrdfKִ$`^P pfuá#)b:)X]S";U._DO^E<}"s8Cc#MiCbQfj[[2tDe=5`vaK`g< hz B Um`Q̸D oWHsBKT؆x+;f7잧 ѹz(&3 CoBdw6v[u%Td0d  >~I@hI 9%RTI֓q39:3M(egĺ"ȱtC9(DA.2c=WjHD#h\GTa<'y3נȔ8>sY6D% $A9ht=ׇ[^.@|hCQP"^h)o?s|2=i7kB$?'vxHc`o Ҏ7Ɉu$ZۏNmlK+AU*^4ܴWh~:hYRFjVLBb[r4FlV]q}x9yG~mH`zچBYp9Ep X|#R]/VG<:߇$noSozZ@ԅo6R9ݵ" X- gpw2D(YW)&@ON|Dd(J@I? qJxҖcp&/HZ#Wk+뽼#nïo=[ <_i 0h ڢJøT9."'>"01 5ka"m 3E RVT()}w3!p2FShJNKcǾZ۴O fX}mEdOoo̘2OOKg I+1zb ђ֑]= [&6tJ*us1bΑ7Xɝ:HͬtgtY+4J[wXQ2;q"ѧoҝp{U]cǷ_ǻ4 SrrQ6ͣq_z=@/ ߫~tUޞ+Ӷ3svQHnF_&-?v-\3{3fT]B)'893{;.,`#GfqiⴹkXs53I8X&,!s g5RvǑݯI6O@F-o:m'"p:itkែ[Lv uw9-Bb;=b҄D^UmI2ݡړ)#CR䭰U#苯99 'jzqWz ~84C"U}lRd;R: $"r s 9W~BZ,'R#5]g= /`.a^ԣ`A\g\T}V{o,m9l΀)5K_"1r95p3UF凌0݀J2Ð8 3pA T}QOopRiC ^/VMYϾ]Pe3b c3"d6(&B~ ~ˡBN$t*k׷x |5) /|c~WL\NPe?'LKj{Juդ-G)qTT,&#=Yͤ'77GLkWӣ nU~k] 8N8Oѭ1W3X-ɩO)6]KC\2Ұ^t9ԥGT8D.ï[П?Y\<ՙސW'ynMcvfpbL_ir~v]eg$ծOqD9  DM }l|Uj?Rf&W[{ʍ2]'=K5|]H'!Ŧ^ =Eb"~=Ͷ _?ݙlAxPNa" `4⸙IYza̍o+*qw ҧA<,ayvXg'RNHU/"d.I2͝$bUx,~v֛7MpYV_4~]Jy̪rظM&) H>cdġw(T4IDܽ3%kav˙3'@[rR )bĪY핾B]} R0@Y5Z[8A,iN5@4r%U =GY |Oj7H/]MG Wo79Li@r O= kDciq*VgHs?g`#k+pP9ȎģBF=R|ǥ\Gp-lBYkTIh[CD_Zz*|Ly~N5Xs:`ZϬf7i .EQL ֦Mc]J'n<'2~5h.[Dzј[ĶFR,ʑr,Q>SLc;]Ϸ,{Kԩsdv\Tmj{%"d|^p$!"-dc;|Ǎi)e85WY2e69Y+>>Z&)\),钄FZlCUz]Ʃ!"b d~XZ2̶Gڳ3Wo6"!B= Ze,͞lM/P`ӻV;?Eg 91C<Ϥ,T{4ӖG ]@wa+ͮ,E#c0zI؋x= sdb;`5Lm5X/!)d|ϣK DAW_5L 0S Y-P(t׼9Q472haD(5Ar[ώ#)o{CvŹݑ FU%>) ~-!BNB.-GJ /J ^!`:aHlz1_~d+.\V*H3?3uˍGu\eK{YA- Q™h0{{BQaa@YGMJؘ8oXqryls~_Jd&Nk]mUgH.'U}""Bh#RŽlz鰒!`= >Ifb{8MR,LAׄcV jEp n637qU”ڪ6$*۪+zrMܧ1)MSQh;xDQ[uHQG:מ,WrG<6ۿdJ7#*^&pc/h27_'[rlN6IG-쓝zfD&^?P ޱڝ\ py!Ma&k1Q2} {t|I]/Ol8P54}+P]唤ƫVz8sOJ{tl~%Qp8,7TgLj˻np <ȖTB}<2?_%ʩiD =\ȉ@}@?BK2n{ }N jVԆ$qScQpKu8cZ2:K~5oR| ORvaxb (M\ `9|d|'l^5a˗ok%vPm@nh w9Nbisҳ[۽&FB6AUwn#HJ%sƓETkTƉv+|/NAbiƀbx$^Z儈x#L sE 8yJ1#.l2+`rH-S4~Ζ0Ѣ P_2Jrv(fHt2nbҒd`Y}+"I ,co,9 }6 ֱǰfy:k\)wkdgG!rRQ@#êc&;{0{6wu a]"BGfC.1-WYe\\!BSjrv>c:So1W? )>r'{,F8v[Ggej2Z,SDtj_?VH~f/rI^3%DR*;f> ($CbL$|)|ϼ..Kzԅ\s2xޒc?$iMDհ$χxc.$oL=vDa; _(mg!rJ 2'00n.ob(ݾw ƻ~wHC?{MP OWB`hk\ n8"O[b\=#FNbx[oΏ˾Q֑"TFCxyS"bS(kgߜn1^ф[$/Fn''E͕*~6_Y'zK:oiWB(H_mH dIӄ, m<%T{ ޤKx$#CleIoHk\Za%`iXk(8ԮF./+y #ڿ8giI};}5iqg?T6C Mg2Iyծh}nA\ѻav^j v_N2 T yւ́|%o7H6㗹^̓H7;Mqa|G^y?;r{&m.a&/KEߒݚJ7JgȽTj)je0uB{t|"bog3[rs9*`[Agb3켃e$65y}&nt$!R|VLzGE s^NoQ~pm$q+$_*ܒV=Jx[!ucN19< }N"5tӘO7kd3Je; Q0_Gً]NTs ?;Rke#HI.2/ ၠbF3]|NMȇirݴr6(Ii<Ꞃ$e@.:wMJѝ殤8:٘?{|yRZ|cR򈫖'Sj9+Mop],~8g2ES85='Qᬍm/7س;#,Q)̫Qĵ/WGQ~|eb~ % BFOG"[Śy֙jz=x(mK8iv *3nӃaf~6X ԣv{VhI p#:_`GcMjvg?AkF0,!-8 t y=g7> ~|BoF* VRgBpuT ym-ǿ)hSVTn͘c)#wh2'V&,,o8"TBr/.+`#uE(1U I֦VszphY6;fЙ?a2)ˢ`JO휿ɒԬ[a9H&M#toP.}GP b)}EW-G8,熾&Qەؿ^ØǓX5ZM>,3~kM?=iWo K+UURt39_iM{' ϵrn~_<{\B% })"x\yok %>!g7{ŠVT@=Nwl } b3SCۀ 3?WQb8̸/M!v|`޶/ \zF<yQK%тɕP!Jңe4S" $+䕕[gK7eNy +y7^|oa+(K DAC/8k] cܢ 0$ pHPїhoe5:9(MZ|q.޵~UOT3O5845T@CmGlvCJu% )~2^-^O'iA!g9Ļr {`='oh 5r@ ߤ*OuXVlңKe(%%=`)YFXnCBmlO&`lؑ" U 43s,H}n,h?%]t͝QYh{S7u0DP TT(QC-L`1j1B}^Y(l?Gkd*'r*$a]C3sGO$i1p /I-QI6 ب{YVyӈ0X6,PKƇVˮ]5cB?dGxưAc>C%j]Ck۩O{wqO0(%n"8շe^JgŒS" v7;g|fϋ?7q7L8}Sa#`3B72(sKZ\u}Q]܏r|0+uC⽿]xKLU?VnJXJѪFXٚ^X3Tۅ,۬ V5kh"3ItHU-u&P Lqv Fy5V" OjHJ !+"]@n2 Oݭxzp-ekWOH>2gE)sE<(F1HgP^s#p(kA.1ڀ2Rt3Lժ8X EF[٣p Q|}g@fōxHfX vd0Eٺc]+꟱N*+x`T=3l-p~ucM&`Z:_wZ7G~7u:1 dS7G }8SeS@s()mtt>^z5XMj&T19d`ʢr<¥:3#% ǵϢn7f*KwnyAbu>K@Xvت vþ\7 a6)ߕ*PII 3/Q䣻f{rG~.2e"Q_k}   ]a~0 LQhWvlNe":KwBybChOM> _6X B:*)3XY9w5^A:?"wɚk6,Ft%>ۤ <7~&m9c4lQ턑@pX`zt/!.ɚ;LgVkrYZn .0. hI~(g0mitL}1@'<މXV|,^c~r{b3Nzz/ޡVvqŲ][UxP mlZ# vw`i08o83rzK$ u]y]Ad -B4R][!2U CX5q2"Qm#P$Bn鏱Ĕ\XK'!+" |WD&M|a  Dm^j kfqy{FRl670`tf|$4~.[?lU5qcDd~DVYsx\`?ʾ{''C,n~|\3[lm{b3RSx5 e8nAxGQz/$ } 9g̈́l0'R!Ux4]2T >7N>@& бڷ+;K4 Ha +6n9/ Ptk%@|,cu {,7~l-<6 gj Fٍ+\[N ̸f?vזݶr3+Aq:U;2lߜaaHq/%_nfDavL=Nk_dcvUFPǘh IoƮ҉S7ϸʫ 'kчٴ:'N%<5oE%@`|;[[=$.aOJDۉ:qmc"$,\4Ud iv&~vFop`|ā[ =USPwYi<[hK6Jƒ'|QY's(%@R%Y`pt}k 5iBv ~Ƀӓ}ŞU؃ ?RĪ rH 57f|/54'ޠ0)ƺM+U8z޸AJO5ɯ!V+e!A㏁ Xج{ 2ÁMOd _ Ӡ0)<yРJ,_SG3k6ܽFbNUY^1l?!WYucm'6sՠ|xJ+!#CGD ,S2 U #}' D;X)ތ/šS1(܉dgk E)!7X$vs06u4s.6jfcX%.mR{l,J|oD>M\epSmw5wc$$DoS0zxuZx זZ BG9g!wvE:2h2>-ILB&Du':-=e\ĤM֯ N9xycN΂76q7X;sd?#y{p^1R6mH o:3oamzNo6$;Dr<=VӛV*7u\:L{q>׼Ia2~b_I>N( p+avl/w toVF+6g!8~j4qג6..ԛ6}+5ˢ,8DI My<[aNF>".BJ~2ʏ?܏{Sݧ]<= UOGjb7OE"wAdXo o$G쒹j(oܳQ|~n䍎*iz7,1?( d~:Sr @l*b1cΖuߙj*GNk=XprldfsSE6` Pj9r!K4b ,0d;QHyN ;4iPwѨsj7&ҦafҔBM](|CWG%J8N"|QΤ$z1*TnE +-`$GX֧PU+V`W p ,iϩF'>=h]fcٕk>H͕zhoV?y"`Gvˁf0x |@u>&[˰VDK_ `?ˣNJpyG,7jU^0 [,-vb1;.Yp77'*j @>uyux\;P[ΤX:uox)aS LjԄg0ebMg+O꿗Xfh 1l@Э7(}?*CRi\!t*t%L.H O Wmx1K3dJ~DN"Ψp_Ք9@юfb-zW2ynp}ҊcmA@0*cH ^HY_]ql?&)w63Qֳvn-tΝ`PA6_"aĔ;݄M0@T/7Ebn#ܛ-e}EnGƗ`SlIQkv3Ä2tr=FD.IU؟HVsjwm$⏂CU+͂8mTx vk#Rm ~N ^2VHg;*sHx]f1Tө,Ԏ C5FLKH.[I9ow0iiR[. Myrŋާe*WY#H9cot Op\6^1b 4(Xϡ &HQ~zՄgB߬dOЭ Bo9ɄflGXt8s?Cކa?~;9[ngdhYK{'6.]Pq_{^jv]4%Vp: vޱIC{%p0fO!m񞵲o֌=~Ch"ڍq;H'1BXrolcCVENNdIxGucB'f DlT28hÄʢO߻|_bӡ0Bq4^L.Qgvb[]1yY : ŔDRxuP0TX+ 4/_5[tғ0'ѧK<Ë5f=]2()[05oT0 =':&h̪(N{(M/!#Be)*W_w` Foz2QD K+554v-0&tG&?VxP]gE^!|,¶ky\Rϸŧet t?ceu,8a郡7hMxz]7ƶT K3`VKzHٗj0I{,,Őr_ BG (#ӧAo z;{{)!ED3%#n8|R~^8dNT+(&#'Xkz[Pt_ h-QS#I`DjC+Udy}VjS*JfS.vi@aRB0 RXݚ[dsWEVϭ)e:HL 4y`OqTtP_TPae^ٓ{`AK~Fih=xD*uCAŴU]{ZFNOKڃƚ %yvK8s5:_yez'2RC%6cEqi(SZzv9la:7?*ݑ(}`[LFjYt#ě@fLpKqoNi=H⣔=s\#J̰$P?V?ճTդgx:+o!dZh'쇗 M)/Xʹ V/Y<ڪ+4#VwSfΧ\Uؠ16ո(Fz&΄"&05<+?hg킜^)G3Mrr*=wa3tʱbH2 jJFQrV3do7N48DŽӒ '(cց6qdR/6 z7r8u\2+Jm󺣜CCfΒ ;D{*'R$ 9 =Ams2tz3H]*:xS*><ٗ5;S:59cSВqTGJ+xdG̱x􎪇To՛p墓঍!K Ҁ)cZK8:zV:dds_ †3a[)~ѹZ{Ӌ!i.]Iqj@kK{J!TlC`"X=w`gvLCϸg-Z+Bldfe:lN,D?Ҁ a.42e[U drSj/:[ȒpU?$5g 6 Ɇiځ'n[g3`<:0i_@ap j\yqy563־&#:\h.?j u/^&n\iɮ|C^m\2n53@) =|l7C+Sj/KVݵb8hx۳(+C_Ɂq#@ǖpY tm9|"XC~VCkth :Pfw2*#Ulz[kjevSD/L aoٚZ+H8L<zz!l&O4KP_[<$icxT kV%'9-7LW,\+ | !M&-Z;3wӃKv@ ~')08wT^ K,iu`5"Xu>6s<0vLy9Ȟ+\rom@?To/!a2 Ċ!v2F"E7KHg|k:䙄&QUra 4)0Ob#_҇QPʦu|i(Ðc*A&W;P3b0u-a]lsyw|9 X(>CwЏƲA?{w)PWTA(x7ůMPѸB ̴{$G]\3N'4ǂ.I,=6K>zsqEu[_7sD;Y׶r@t=GI_uC`Hkg>{[տ{)em{p=68GԌuFmd_rFvDg\"mV!6nj-2%%[yevJ@v4A{ x9_هq70_-KێxL̏%\+pd}D~o{5J efu8.zt_IWw@ђNѨHeR`U+N 'Or\Jo> 69f}Gm{اNM g8ʿk9nFc'b~ F;v UApEEH,:r;R84!ŚYSUÌQW¶f/ﳩC! |>s~* X _W IK`C~Kj(7-;Gl>X^ԉhnn*p` }>>/C#5Mtmx2/M QbY;ReoFc뗴&I8ݮŝ'U?S L'i3uq?a)Ùe "1̶_QtǮ{yN[] 37 KCTmKک"+_icfODrJu l24Kb!zBFJ2iYӺI̾&X@ Wvh`G]' ?/b=ս\ׅp_}]ߔ*L4'SWxm[T Ç f?ϘJb:s!7kXג9.zwp,[gW\2 \D"+@g7sAQVz/i1 pJq`H)o{%u)l0F& (DǺ3dFd(M, U7Z;N CKe;Oj6EP_CbNѩڂW }9/XH%Pn]IRhlRDYɩ&x0αo 5b"Bވ""Z3bfĵک Te {C,ffc]u' 'lmzU6>݊ԝ2:~I!;mPwߌSҷ :׫ʉ$G&H?q8|9g8婹Bb<=IU kE8#kW+`mo<&3 \5<ґ˼nx OTX8EVܨV֖2| @>e۰(#HT0N5^M9֜d^r̵":΂ n"ynr:1q֩)={67 Q["z3+ճ]'b(z"?BwULCC-/ da.hÿP ]9ٔ:O {y rɘ{V`ݦ?Cntfi_laYd =nNej?/˝CO"-<6*Ϻ=7Tz,FkMu]#k{ה8}Xljf1I -o?&5ibkϜNh:Ze1@{dlMjp5<@gI+iu;M]]+Q"4Ӊ`6qSczVFSVKCIS}@BzK^! IebSP҄2EkњPe&I\#خT>[q<{/+_f7r'sZ}4<["( UVT/¦V}y`YU[ѯtCj/H/G |׉*iOvvݥ5%q<i?8Ƭm=C%`O^ f#t׻=G"L0M[0 F,-TnQ&@Ej{A q*Ije=EIr#]EWf*F#YCJwUާY![#y~Su#dke{GBg6Jι&"c=wgR ;/8b̥ &쪍5|y\,$-S#?YRw=[nIfrW2k?tv4[^Kw&~1l}&*g/J⌒ˆ5>Sي?(HB_a,j"?nRq,=C[%NkSH=Еl;oSf+"KZ'n^<㸜V4&wljV1>N\v]&nC3IJS<~0(|łΒfx_T"ykkWV_\YGAol.j~DGW4GI# Ki,A'$&IDaGIu^v-2Yax5uτIeOW*z3 TcGh7YYɹC' ph#y4a ?јv=yC~_Y(TeB| q"2 !_6Ѯa|vm5#jRtF=)|>U8j'HB Wզe RW=>XR(vh+={9ީӏk=ckcEs0koɭF?ܹDQ?ev&'av d-Ie&~\" ysfh[C-ύSck6? AOGu9p[ q+Xz'IՇGie{6[I09[fx-p4zh2򾾲@CcnjӉ#KڡW "*SjcTk4b2NN5YԕMD\d-ďVl[&kܙ'vH*2\!!&ЯCgƐ|- gu1h'hĨEفH4f"u8ϲ'žEnoe'x_(H}(W)7\%_P֠uwP)i%\@Gģm[4yiFT ιO9Wړ.4OO=fy@#J.}ͤ/IM%MZD΅ ;5+3@?0 p,̃<2PD^M ϔtG"Wc;C`!Qi#ς~@م<)`-_᰾/ArW`1f}Ѯg26Rۧ~N gI9+ԁк  q_To_zҗ;'S/[LwBѻhVl{ɛ=/=&J9^vؾ;QOߴ+"a6 *K~XތN7rT$y1@. 2 (aNc5XWaVʕ/ڬ]vd:p@3;P_:]`k;qYAV #sKLW2 Hx\ #ӒZ# o@.3s߮;rOadH}(*R9zO,dbDܺc*ٵZG,0C(F91Qtj(.zz$Mпr鉱 Y3ࢯRޥ/uyժ!ND[[V{J>p=PZLa.Mggns[Ʒ SuOE7Bk)u(v |wB<:mKK[m6x^*ԕa9gd/N +8؂'-ep( A]GuQyj>" MJh(=MMwՓ\(A^F@V|.b9O>hw=![ J%rEo pdڸ ѶڸGmRlhr=p3!f;E>ƿ%ыGM)֥kJ-O-M :&Q',,?~[y:-})Zo;c4Pgti צU(^($c,v1]1g]4RBP}DPV^VTT5e LWiU_ƚ%ts"W)ܫգ_4u_;%kq+f Ñg(*J5 ̧dB|&ClOjf5QWerYjKPUXhws{Lf7`Ф?x`C9瞥(IR۸w P$%%F`wUc 2^֠)'{Ln, ! :|؟!R7+nr:-`sXAy##$WP̯&O.~25fg屭U1n w_R[4kac{Q<-Sf40F*6&=nQ aV,sDZA(y~~*WTAnGc L7/T]:SnIvH֏I N2i2,ʚ!0Dž,$7?糿OUL_03`<ƋŒ/kU'>8k8R\XaG1It:osQ*.Nq;:~ `Ҟ:*)ݗb -ZVJ.lXcDFEZ*t֗Q|"\1܁()nU<~;m0 DXkr7_4Ez9.ey5Mm8GǐYU( wU=D;{;5uEoj qXU?(YYGi'8/A֢:絏|"9u\4Ҝ .v@,݄po5ݺ2 tƥї~@kQY)=Nk%ΔCˡC)dJ1y0x΀}Hp][gK3ǷzK V4Ipy?3NE@&@_"8iG_J6D0}ȐM]ݧVSLyk_DFoPWP|#T;pqW#M%' 1|^Wha9p2:-~ؽ wŸBfB]0y%SYHm6u2k !(mTٰq Q 1YaUW;tțt#}ᢵ HXr7&qS7ڢ1~cdx{uiI}dH] #'LkjU: /}/w7_0`AXkp4yp$BMF!/qJǀ2\VXʿ[ȣ &3hkK׮fp4aQ٤UP=L?REEԌwmXtȹ{S[O?JAw0X%|)C0am# SN i,OKR3pc &t_"> ߪ9 L37>Z,FDΤL$~}.۠Kq9/-nG$]W.KQ antb_XH"/ykbLkי* b-2%Ie{ 8#`㭖XCÝ iJX<̊Jnn|]wfxq}%*ӗ]b5 v&_Qs]}Z&;` y~I4HOoļRAI0WoAbX DU=U"_ūNbՎ@ݸ!їC-kB\  Eikq㒧 Q5!%`8'2;m_eWKdq 5{5¿&t]Pޡ+piILU- JS}H #V@ʧ1bP%rpyId+,/^cN2%9:s.X@2{ܞ<ΉUc;Sk\>,ݒ:*dHgO0&٪\\s&{9"^a!&?c滭x"Hlz[4u)47-Wlv5*}ΠRx)xщFxkĎYE`?-]ڈ`= -ŘY @XYv ڥsBuuPo`*~WjN>D^7o!=IN||o'V7L iw,ˋ?fliɱz%O+d^T oolw! ЉbN۰Aa۬Fs71lDbўx`D &T*a_vZj3P#-=K诽 C*q~N40@ZDzudQ;ɍgKa]btAlߠ JMB q9%,X##×Kd y:Mhp+tӪ8|YckM4 U^[ l곗Qcs':e7ABi2uu7HK?W5sq*{.2lLKKhrۀ DOx{y#/3n|ՌFEyR cQ)ࣼէw.[_iyRJ&T|98v8L+%Bݍ1mN8kЮ=S]<^xȿ:$ tO=$!d>x.urRT,%((i=$Å5R_USAVne%59.1 JgfbvX*-Ek/f>kCޛ0S'S:L橲m<g³'\őiڨ$ 1 [ڣe|Ԉ'$^AK"|q&N2z?GSjK) XP:>_Ѿ*|Zc bqʒ۔ڶ:V 2tO+x8E&~,A6u: ).$UouP{ ~7PS]ZTc诏 8k-#~-ŗ<pS7No岘e/?NFƉxp N]n(cKL?-< U'w܋j'}GߴU89y;w&䟒ەc>Z߅_ɬUMžK+HW $bjigdHv(Am;i(cD5C b"[r`}kX5knU jfdrʺ24|{VTZV-h JգRk/WA ΈL/;J2j.ʧ!j5I}bn(E!D}Mq<>u@ n$&]<~8DcjoV\^7=+*D- wroŕQ3sHH p>"*&ty1N;6fI1"?1) iqBzRQ6̿aOG1ߺK6vom֫U݇|2ȚN(k!HF ٖn@LWMYzV6\0E{pHWZ),Nx%/ Y9!1~C1=C؏&,rsFw 򚂳rgesF8j!`c,z,qr?T%]%_I:t`|7o^ў}]98:~$oѝ(g(F_&y&Q7j> b߁$U+!7yBcZkrC=9mS?$CgQmZN,ge=c?j/]ـi +^Rv_C"+F 08}u.fFx38NyD$'wU*[D_ fT-"`YX$mb}HRX0,N_bZP {< E+\q[ٿ}uԿa+YkM=ў+֤I BGN>}ϖ`ny|]HuMpO""/l( S4+!+vvA,X㚾y7"7ٟ~NXsM/ Cbx\(O%eXcAZ6%o9gmMmbc5FS*m@pqvC11NK.' ? +nҏOyw]$e`vɃ!.^qNb$ lu+oV0bL=F#lm12mӝ:B;c %hV \eyΡ}J,&Yӈ5 {b)I\ J#VWNM۩y ^y,ɞ7N0foh j] %e2'Ɨcg3oaBAιBF<[d5@ߢ+Cr-N99}FcޤyS\ߢƂ萙eCRb9JNd I.|Ӈ*wJ?(bݝGڻh}u_ m7Jhlni\g=騊%?}ӻzC9ė])} U0/:O&W#@f"2!3~r_wS?᱿tݞ~$]bd7g BvfqT-d.!'-gnb@﷾c?૱a#ZPcs;?R3wf?oEo: ]).L*VxS3 PM)D(Lmde1xV3!}'bh#CȖ h#$>}GGCIϰ ,_~Ń<}ǰ$FƦY2Gc$ϻ?},ZgDᶁ#h|"tB%Q({'&7H&_J~v%<?wK̉mp$~ڻNYcH&fpd϶4ܑ|*K:蠥YTaqK,g,vXk^gUbu-N)Rx=D(T!gݲ!DdmrϝU ٝY [b{}RDzj%:h/ .78d[6=Οt֧r֦ѣO۟حXD8-.X=Z&,0/)p0ɔNZ1O ]\vCF/uAcܕ)ODt}4 əNھ0agj/eUO}N v5dH&sd,}P-WNlхC`вMc8OxVg ^ VkW7*;N,C) (HT5:Me`Wk }RANHDz stML^ ȑvgoxl\f"3XlXM ֽS7\jt{SaɳQ%>_#.FW8&]eU'o" "*ҎMAExw+ N:Z|fU-! 㼮Qx]>g~1[t"b+zA)zI%e .2; CJME+Frdn[Chݬ^E~#np:Iaga "?|@2H_0vjI&oEF Yhq!ax}r[!ڷ @kvVTO&Q+:Ai"Z}Gn$ [,E =4 (`bp:ЍpwgĬJITZ0tKf!X9a;!^_+cc`x4sP /O(>1N֭H! :(}R  }]qHja} A!IƀB_qQEk蓸nOU,wI}8GI][.ʷj<S]>FtĎr~X&s2{Sk[kEޘK2Kn^8;a?\1 P#2SpьYѶv7d|X2"Nߠd/_C9 OPB&M cb!PnmXg7fmRJH;cTGL>?I`MNpyl\ٴѭ?./ˆU>;;gH("33YVfwMyAJk5ԯ꾬P <&֪vzd7Uo\`)Q.b%zf.5U B*i22LmK4[\Jg+lH$Yn< r gRy4r?\dP~V۷f!Rhf.O͡rZ_ N6j3M S=h+AڔwF"G.oG%k85l-&+cw׹ Cvj$~!4m!&ɖ U_ոY2nBCjs;c_Y Y.FH2Ch'+z*OV!od:4DyG.BY|'KT:[JU7c2t{XJX1&^_ Ly)3}ժ]GABBzDOcޓ,pD_RGӅKBJ%|`tu )lk&E$KhTLǼ^vw5QVHuz2/NP['ط1CZ޸65GH1-/+E^hx@/M##Ȼ2$ ڌ'NƘi_u2\.܁h>3+p;hQ>Q=)۞pUdο|8׺񭑕x!Uo,#9.Kg8)&X^{!s2s\~;3d]hy:QS[b>vh,;|#KIQQ,NOf=,ޙ!eSnSsF& ~Ya:Q;AsaJ$YԪ+^Z]tYZ0:ѓ6.HeA9H@#px ڥj_%*c4vYw/w2 BW[RE$ySvzck |S}^Q\&kaUG+!WyEKLFL5:T0'ߥW傉Hh4*DViz*7a! O-\̐:W(#~ ~<-3`8Z|KUn,M1k/W!VO9KexHk.*G?ЊJo<2|+8I0Y x5l(QFs5v:aȪ-:1 d`xI҃bQSVP$@c)o`crL+k̮U4efKolǝS͵p@$v)]>QQRfO.2}=9^@WQp8t9ZÎGD3?7]PD bp=DJYN7gkx׶PKNVq='<2L .b|e"qf W4PG3ov:|Ҏ{ Tnm;+;0ďH6YΒlnGsۃ8 ai?z|`t\S>r0IfUkvvQ]nh/ 6 gyCPDYvMa)p!a@SYE]7>g53)AUpD t&,Faq4*Ȋݟ̀ ⧼nU7}e?'w 4iÅ-BvL++ZhuTZ(1 8gBAyGV2e)׊DsٌriOE zy^l(%)*eta`M⑤ZSPqR _q6j,Fƒ}P>IC`Ri63w2%Ru}QL @g(rBsER,pC- m܁ή^MSy6Oy#;^~<%J+)z>9w}5iMsORU_ŋ Ge(K $vvm3?@#ʱ1+Rt@f(ێ JDCzX;(}!2 /،aa#Tlq*!!곣<+ǢXE6<әt_ 3cwoO Yk' ;Ԅ4qt&5Bpbq/Qy>3O-X4Uf9ĹhB*m^kvpMR>Ы"[:C_ħ & '~?BC¼k Ƣ܉/ҭnȂ\٨ns#^;;2jNF\@o5B$) 0WdZZ[F13azШƟ԰.W4& nB@&@[> ǒxT tmQ6h%ˎLդU+۟bNc+9%/Gkv/ uk[bãH#7*l4I 8 5=C#t7*7&ow/<'o(DXqb/5p}"&U"qҍHuBy#eNĈj[M`nEVG -G2 ͡gYkpMqi^sԈ퓄qkǀ!hG=D/?D(%~Ce^9$\uc.!U]R_~TOC{FdK|L(z˥D r]Z@CB]F/HyG|#P8Ue䍀4= ƿEUPusI.]>UbPVy3dz OZ YȆf8;]$Z4%$3cE_̢څ12)1Y ѹ4 oxn7v,jp?]"^uJ~FY^c3?%meQI8b.˅l󒑞 f:̩fbbb9^㙓YE<0wQ/ Q_C#.}J=Y; sWu&$_{JgzRGJq7n曩ɋPOF=݌7Zxܐ_,yIMUMĎP@y$c.\ ^`7B bt$2÷Iv5\y a3L^a,S3\rىNOKޢ_մ3XA@@"&XӻhF9澏Dגǣvcs(ފceZzJUC#7 ؏5 GQ^c~))6HL" p$2K`O=s)Vr=y 8jIנ''s<28 }ZA!'d7/[QX[}%Mw*!ipvar*acVŤC u#Eɬ^ /K{ܰ=l_~3⯧dĪk U}upk )Kwn ͟$]=nF'^YאOАemmo"#҄@ξ3vcb^lZ^Y _G5zWxڎu[.r&\+dd2p b:][8mf $75`d*lpɼcVԤhnṄk/nkt?!lh!4DkebS򮳌r ;aƨ>P}R*s$ 1M*laA.L%m#6ZzB Cy =HK׀(Wށ2a7L.<@(D76y[scS/p (8@QW WAJR:5n˿Ion-s6Pu|s.K˜ًjcoA&u$.%oCǿ5MJtoY><~Z bY^H5JT1~.Vz|ÊO[׊譶 P*$9Vg؄r|Mo7 1k`4"߱P0rIKD|3`OH}Ϙenco xaxKvrtۚpf3[8YSN1CzkJA 7Mv+%D\:X6Z=bHeHJ Y fP%(tkFuR(v4F4Bx )^ .Es&դYw_Nrb5NF-u"ClhiKӛ8YRHW$&U`'kPGzO;|`l0l k.DQ7a [*Pc|e('0pm-7%U?Z48@(vLpcy3?%r&slj($>nOlPG9V{%=TMܛ˧dGA, M^LS|- Utճ[:(asÊT;C .KZ! 9T[6ׯ3fKCFwG`D 0,pN}J5HjИ RގYܞn 51Cގ;Ȩ RGB؆B:8:~zSc*To!cZ |WҲeRP K):IYnujI,֭T)ƨdGLz,ˈ ̦}y %ICd1i CZZ3L+&DH4rj@_;V^ ]nOB w 4HM.&ϵ- O?F>E7-͉GVq0ʏDkQMJV :-O\˥)oRpr?Me랯ˀ7וf]PK;@W.)]31jL˾b?9)űG@ߣ|Hm) 3ou5bt,(9QA"1Rv$;SY?R{@`>9@*^`V#F봯$g퍃MHe5K-y f :ؑ7"l.I YG{/.v@:14>`8 ~Il)djVEDٿRZ=&^XCTU;3 lF%8hVY.BH;شŃOqRy\+<^sTDEr ]=)(FF-*o<Ŗpī7*w њ)Y.uXw#9S![z#5c><a|}Ԣ)CcSlnBrH2f~N 7Y,#:'{%_[r,3/|+-[ V`MZ^.V;@mXd`d[SjH ;1_V#g7 )4#"TWzeO A3-p=roǿ*ݵ'.pZva|w`)4si(B[SW0F * qWeg O~6TE=|>ъaů=խN.|62W{>c: !fֻ̫)ik+Mc6N9ȓh4j(Kf#c"# p/lW| 5cV]$àWb |Igm*`H~oyUID8S߭:;K†cc#'MjΔ<㝐'R2fVzM*^(G;5kaRm/7Po8d;K3zZnП7 * Q-Yeھf~Gy2 TqdZC>{Bf^;d!? 4!Iz>fEnu$[i]:f:avȄ n@DC!5?jcUۃMREȑY%-C`B=g>7]kjC#R@P).%0ݶcI%-Kf`ryALSfF2L4Szrcr۱Oq[2=Η4񛩇EเGmL il]ZaΝJRA >Hɯ;AՠzJ@lnsjjhUe3vԗNʬ'_tq ;A>#&P4'_}s jM=.BysײЋ[Bs(߳Klrht &f-{ cE_EDz9O/Y. Gu/HұPKNu-Vs=?(9],g37_k?7ө0[![PGpE=q D^"30 iIrƁMf&\Fhih'\sN`UKƒ}w> L9c@SP"}qŵx>8wi 6%T8H\*]ügpmł3cR K@<*܏Rƣ:e fKc sDV$D )v`{\|"/U:mxt ٔfOو7F^>*:=}ŭ~yiAx TT,m&Fsx o7Ai+s$px >V {9UT5!<UDn^.%lYR{una3WӪQ2?E_Uv`Ll)fd 931lvg&xwumɾ"얬LϴMk^ &,tأG+hNnxLjfR1_j <2O`l[_JOR*Ⱦ)ƅxABu0(;o뿪D5xtfcWR?-Z(s \(6D&W${-}Խ c/WQ8t茳z}SfR|"$3M<TY}WIfw댠v `6ŶM o.'E&&}k#($!|ͧBYGɞ6T6ր;{8I_5MY@i~gˣUćN`S]}aoOO18bQVs0X+oh&.ifg@--{{37Rz蹵B!  =1` 9g% \Ol`3XY׌y߀rAdQZě7 q1h_Az#yTfcq<"@CF X5[ V좟9Xg74ݥεŽ( W/7-YǶ;,lH˯%W{. idAW;B:eW5*.: uV\D~b?$`b'cq%R0ƄP2%Z6_ q7d!%  !9.p5+Bw|b%*D14,ؔ:kB <؄ !e6!ʂ;+j#y6Zy#20rLXڨS"_Ԏ)Oo+=+`ƧqQ=̏j NXcۜ~`r 0@ 3t/fΪr&u/lRL_lŸљ2μE: I\LCcF' Ls3GH96Zd)*g<©w$Lvxߺ)-n\&>+,'.K~˟ڇNB ',%eskhVթ J۟l{UQ>.5RIoS\OWnH*B{],1?*ePlҹbP/w@ВtMhM6IDsQ}2mB+ K~,AeE ^}; 3Aש?U^NV)9i, {3TEu<NA `m{(ml~1+ •h7uӖAۆƾQ2vWsÕOov^`k)?_DR4~ Ι6g cW0W P%(r<)fl$9ު Xj!FS._ EF( ''-C,IKSI3oi Eղ CXBKOUQh]ዻg|ml|ѮW`lXв~p쬽XFnuj~8hhVk8 1_P4aw3;TtWhԍߧmJVJ.򞤹z-()/˿ `/Fi6фE2O_sk\Ԏ_~Нr]7q^LO֬h-2ET6rT%ٍ*.?V6cc#p,fZȅg@HbK@"&gPjMH6cuGLy$|J=bU6єp#(\dQ IYEF˴ $R_.lMɣ:|`>[ A'"^3 | *N:0I86c~Bz" 'D=qتUSfǷɱE; }5!<%$7yڬEGc:P0YX#U~V0}6ʖ.?tF:LM>Rn6D"|؂@Pٍ~E=d;%FUšs&Eb54~%s?#5a9`Ba`HrMNozO~Uz]YՠhZ3M]T{rNjMD=[&=GLSյ-6}u(%ed\P9!9Sv/9u;.R 8ub *@߇}?CԧB hZ!Dwf;K~ ֝@@7Ve1•[ tO,lMAކT)HM>@[i&p Ѯ XjsD\eȱDZq:ѓ ~lnt䬮"u<{W"m$P }^m{yfe_(kag- 13"hÉmU4+8pisYj[]^h)_5K/}lhf3#Ih38禄NJII;=brPQ p*qo 4bf+ݱA[( P ~7-X5w*יgOD51qugN/]rJ ~"АЍӣ-صyy<ΧC\.JV+9&$I|?Q̣KIZ?!Q b[>ai\2x Ѕzdg` jĭ[-H|$m;dҢ\yqwPsy1ja#^xr%&0hvy%Y "DDÛE0^)&6 U&!i\V6;^N>LE[Xw$uI^lv[JQv%>^ޚ`}~¦!4j|!7N@xf4eEE[ 7>(4_( =Puձ'?VT࣭oĖ^ꨇC +3p7gFΪS#rүEIFb.RtU" }ڲ\kje 'E;+<j|#N h_>z-]R G|K;.QcmZ~%@`2!j nd2νt{t!:pB!GAK o!sMfr |0ұ8D@) og-/vOYTz>:_1 L06+>DLAis`mE=KaLe(87} (Ca ,ð~Nuddzwc%JhAP>Fv#$:=Gb;>ӡEO C@ uwE4;RNͩ_Qp`{D0'Q|(Wk@KfJ'-΋~]+dUZӃHVL*ͷc+b[Ia*SY+} IR*!w2=%:ؘKۊ@]Ur(ZOt`d0q-U㽿&ƉEM_e?J bJ!l^ J'ur`_'Olԕ^(8q}Trw6iB7uZTבndT3;B&Vǰg`.]FV -T+ MSzt\՗[^\,6 Əݢ~v&HJSa¾lx>mVDM>}/PẎ}v{ ,q;'@ nm,H]cT;U-0w!TEaK(칼+\KpޜyA\Vᆒ410LJ('AK]"Bɂ_ r>;*>fPꔐ5^ЂJv1TOK@麴6)HRB{YBl[oV☃k6PJSppwޞ̦ GP(>Bh-0W޻Y^!G}l47y[дhDhyf_%5;݃v}W6%EP>px.Xj ҹNUb5ATh-F];.22w06-Wh1o(ҏot5]v!ƾچNAҽ90O@$z廦H%% ^(Bt?qFݚ~*HmQ 3ְš)5YcV> @=q -WSm$Vӗ[Ar\S8iIiΞ #OhYߖ0XB<R!0A$9LUy9|"io<%/OFbqM\|W &y ZlOntg<8IQ֟AHo ΂n }LvJ]H,&6{@jVzzRkk2,qP=XWJj@"OeYidѪ imzʹ9u<)-(S)tUK0CTqvwgh쨱[ 2Eѧ@ $A#`ĀCC, 5x /u-`F qE-=Yq9њi㑮\!+F|'&3-n 63C/jDп)P|T7:] IsFj qvw3&c2`0ڽ*e{dGaC6G:yTW.5ve&yakcv p\t9 &LmwǦCڴ6{0-¿dOOHɷXhX+- 07+ae_]##zW#2p3%3,@Yy9^n iy w?7>ۛQPzŝ-C"'!4>(ybMyvZ<,i@^h$$y㻉J}&X(;#bGs`]1 XY1eO twy w/,i#;^E®*!8ij?\6.`CyNa nNy&\&t jKaȻ?Tg8_t[fxRD4ΦsB1,̏fl?=,Y1Eq㱩GS۩Rr =7r21:|]PF8k߻4NYPzzV}h?GϿ n woqk`.LNh H֍Uf:sU\iR GNJaukub[l[/07F& ;)e~7~{wfS hŸ^i+'N'vۗIa#0Gxը' +l>ͥ[V /v y݋1mTRuz)"/UKzӏuDuN>3 bQ=1_\?9dy]-|{N%:kr_pJ|l67Z(Vl?a#f7EF,ȌW4˸0ITFĪYu[9<ǰ귭ɴooSNϰ+MA,B{Ʈ*OB*`ѝgDX+3%;wG_ʽdKC Gwa@UC J d 5piT*[/&h8ta$;Y%EwK.Z8jdc[v-M^s_*xCOX)(XN Ve+ Y %@"_kT~4'BN&27u?GAKY_E}*X I,7&dIrVmh 榮7m{iwXEAYɂ7- XGXdoZx(Ts-5OlxEKJ 'Zlxbg_z;/L`pH3O8(lqva5N^ D=U`v2 ~(D-lkcH0h3L9N+'?lhe\nܨT$w !ظ]AĠf-CHKI:.`";D6PLH_eK<+$v_=Op06/Ҟteu #k>@ u^/ttM3lJ[z0_ɀkؤJrI"I[HA 9bȺrvk!Cr/h $iK#x 2G2 a|MLq[84g zLfxIiğASéw>+JR$ft 23IfDdt%=؎@@S%& y&=oԺQ*2Z,R**hO4o}I$&Wm%ƶD;4=0&WС 98ت+\f`eexRĜZF_z+>ԩ~T $tE>W ^]7| PԷZy@11S9c~[17 |2jk=PωZ"NadAŵȢ8o;[RF ׺C*`Re6Kf^T:hЦ_a0Sp34#"m&ϐk&ͮ.e.P~gg2/?U$u(0!Y>G+eE~Y-+683ڡ4a9rkWI% sǤф|i[ b|5 9LJd/j˰[%F|ͬؾ"r[^wR:t˝3}WOf1ݑ)}N+'p4v=*#^Θ"CdJ}{ ξeФ\CZH{+g ?gsٖӾ"(\vacn@ .5v-ˋlϘuN"UFf;&SL_{ܭ7l9n>bz}AOG]çE5^*p dO3SVP{?{&v9E@fE cX-mom^zvWJTu&3}JuQPSƍ k诈Mw*. MlܷIlBu@i"RMҔ'0ؚH‚,/ I~Gp ;m㎪.0c)R&RfYI|0#qb|}ʊszeЗi\,8 !~%ٟl>OV:\]Te6{ M5<@i&o'u֎3!?Se8ʹκmd,g6qj'RRLگlGv !6NJ\fU =Gw ʤ /XO "#&ƫ[^][#g VZ<{l(ٕtR;jÏcw]\t>POr/67 P__[񅯐|ӊS'ak|Lft >fvߢdv#GUMd¾Lg8fGCr`h_jݧ:6MI957A& m=qg!=xUQ.c+ pezJ`/z;}t*إ+h.6wxENMv'ћ>t1ͻ+wxL_R"Βd$dx^KS׮QnDd)U?YX[@Z6X%q4A&_oZu4Sd;738fDFƩNQc倉2ZL~Y:(|_g9ϻ/X̒-өsACڦۮZ2+NӈQ9c'N0783&>|VjR!MrZK08 Ϝ,lr6duѪ\l}@#o<> qoaK"Xߟ^>J 9>"5ϐp(V20kD=m2qې$޳?a5+b֭Qrd1 wkK9qLԵmryMa%Q쇲}.a&&<~B{vhger=35z 7p92+MPWѿe[5WGL}V92?تE`}T9,48h* ð.$`YJjjg0SsH}" 2|{ c񂂗akjao RMQG$F%dׅ(ھ+jp35:[=IY)3[=[;O{%bNnUT{``> +=Lֶ3yP<Ǟ2DŽcurʷg_PQ RZNA#5kg)(y2ADOaQ#qVJbgJ<:xQ5c19(g;6܉U(M87oT[~-nY{('qfvM,/bh<)7d@nS_r*!}alrpP_Ff_ +(2\@=;gj}4G-~6ף#&TO^ܪ(=>vp9}u05M=, b}Npp>.,*'յVVlaUʭHȩ][l2FPr..}f`45֍kWkwEvQ7 @J fNGM9, Zғ7ޱ7EkJrqinݬX@.~B.RDBrp+/ȏqSFMŞ}VAjW::n "*ҁ{(j5 pp+dtHHia: \l7=T#:4Ma7IPp% C͎7&=B&==C! if0gPo mS NYlGwⓐq}G){ؗ7}D #qdQwR4i&8IJpG x@0K9}jOhV^/y9{X~ NAQov59c!j©L@,,gGK"yxaU3IoUf=d4bL5Zr\ ø6Y6h~#@sw~TQ6far%%_Qm rnßUgRU/m` qY/pJe߷rǰg$M'(wS<ރp4:dIlhVkc2icM<lw'aT`Ug!x<|s?Hʹ9. kYd{ɭ(ChF ՁHV@cT8C} ]9ĘhouAIjMMe l;va;[QNd$APR 2PRkm8$5i휎{xnSZ+<*JyC ^?A'C+yI 3Xn2=d(N~&#i_uVueC"~dA4:?y23qQ97Bv{bOM5?.3T[pTeiՐ 5{zbOHpjL_ j{ dN0yM9x? h QH[=i3v>I\!cϪ^gj '0.o,;Q} B"lu'D}t)Պհܖ%g ?⛌DTji>Z/#*e,}#( yu>zޑo";~S E7fM ) 2k -l9N] E.$[տ ѳlݤ3eϏ2cZwШg )&=UB7F>Z(rom1!E+)Ƣ?>zHy]ܰ/|~YP'&٠*j1<&n~&[c uE &j`9PWL8[r;;pfNW7VXFK *u9Pʸ8`B7l.|wZgyƨUB6ӯƘĄ[0dmv IwZyk[z62L„!魝Ƕ=uAG |L1zYZ@Ip88|sLkNi֐?@Vl8o]:^ކʫP7}9^4SuZY8Q[޶z''Y֓I)xW!̸įr~X엝Ǘر7¡9+]ͣoD!>{!LD v)%fuH 7nq6f˛o(oy^KhF#^*Я|).kKM\SGΖ2(ә^Tu%ȉ )ɮBLػ vytv=n%"F͏C4L&x@sک&wT5Lot5J) yx ʺ0w ;>hpd Ѐ9/U$b-R9 ~Hs^9ӡ7аaNI+< :a'l'P΅\n'O!8b Lmđ p:\ ҼI!+; COg$9]]qo`qѷ*O~">3B)9p  MOIrq5=d9(LXcX߸&㩐f"@مčˋFGP%?;0PΓ Qk:.3papF%E^Y@ά/?@iG2`AQbqMe[yu"B[W_jɡV%:m4/QFJto".HXDtMRCur2`ϣa]劎u)O0xA"A ࡡLJCzCoJ9>,B4G'cBr{,%>B9y3Ġ4.{;0>]xK_v,4:a,Uʅ;ps=ŔbWчuΓozqN}yOAYև u+ {v6s,4ooCLwN^+pB`̘E{ [VnT*Hc7%v WK8༊n5Hc{RӋ͠X_N ~یoocrAܶ8GdOnIe}J0O~3;|HٌZ,tWˑbGAy[9~LZk~/`xC,uZcFGh%5} _"6.p؀O,>tT**Pk^ڃ}X(NxhCҒp s@,zR>W-*Dtdu&_+F H~pG aL@{c&3Rc6-mPIeI~AtHu^1Yb+*pJ}2TϸőZSTg)c۔@4zUie ,|["#d1མz "ül=kz4艹3Fcϔ| AVc'&t4 AU[~2Ui%_ Q* L.uOGRh΁kmQIƤo+mD6Tѭ`"qTAH}eV$&9H[3s(B/bD7B:nr+*eYxYNe D3]%A2%5TŜ.2^5$VنvvHB 1*'U}$dlSljG/9չ245uэZTWƑ"5zs8̿|s_Y=@P0'p%-a}5mT WlbGW'āuiBuS "1,EkcRd+I/<(k+]Cj[mņw{M? 8EaZ|CxiF D ,TCXz4C.mDhIVKZ'X~FFIZy߱Y4;qJ<Nʀrs.O`Ұ{De9Qf)®6a,ȭ߰l˄+{/T͜y]rŚ͝@{ũD扷R#f3"β`oo uoFyhnTC@=6*tAuf`[Vf1Cb~8>jh@x^[E(MyJ}lPC7gm{ PQr|1Ud̈Dhebh/ \L% ]fO&ye]zb@ة$Boprz|g+Mh/1l_\]IbdWיʴ$(bUO?` WQzvCRA4ҡ*Xr@{ G6dhQ$7>joeLv_:RJ2o;fM*"]7eOHD|{} %6BWx)'8h`.dvCxRjsYpFMg B@p lA"M*m`Yw~71zeCDP,/ޭ#bYۓV㩘 KAK ôO:R="˝#}R)NLXn{u6|iKd9ςf67*0TbٖZ(WIh ˞ @V6э,ZU0U^;_ ^NaD„]Elc𦆍h*c='(h_H@p3V?-pe mIx@!祮Hq81]LW *5> Qy>HNh\*3[ OФƄmL!>fE.x8SH{/|^NȬ!%!lAIvIK Hռ+B4D_Kn;a>E="5Fʅu_Ϯ149w#|i¶ aE&Z+K0k-A$膷DQC6`nHZ7 oZک.1%ہg2$QW:uo-,LM.c}ic?-Y{Qo$R8TWLO@I5XM>xp]54c^Ǻ8qtxI{Xn3VYWI pS1 2/}zh *"l龍aK$*Qr_jw!)aX !KccO fH޼2 VBCs/m| |t"٦f=Q3WXR㊶xʁ &* acԁ7P${^;y&fC0~3GWm<ߕjʮ:'SHJ~ *(7N~ּ}^ӷ(CxpoIAeޔf8J*V9pu B}qTً}eިwD}2)go<9\J7r*~ KkU-e-}nM\N NwϻD05;HEEs-UX*:&/.+*a+뻆M??'!0X4gs+znu>7;'ɰN+LS uǂpP'pO;!q"(־_m# xS]|XL.O]TBi_(IL3ȦbOLΚ:G,ÖLv|{ JR t!'^_YDףIRB('| *LX8b4k4JiPm6&%Yτ:: "08^ęvoF ^JY8JБRzp*$8Ҥ쮧tz1M>bъrK J[`+󰑱-#c]R@-Nm+9|AL2K;]L \C<mxsR7O4_#lCUa7舗 ZvbASKrϗ͕ǭ9t;vCXp 'rF覻hD <"R!&kDwYMt#k:q*^)[޹eEuNox,\%59t3DS qz'íNnY?L!צԊxGGo*2sʩ:c=GR?ߗ8Zx 턳\Ig^@@'- rɯ/.!TM|ip5k,T K~qSѢ|鱈Yi}u}O Uh.moV:UM˝Hj m^b/G-VMMVseGb $NKQMf7]MիHl haftBxJ*qx6tQP*:oT ;F#֍DPt{ J5Br%yXT)8ZaVm!SuZ`7'ې7˻  㬖 YuMe g+J~eHIsN(IyrU<`3*AY(R -H#昒հWFT޻Ŏoiy7-\6ˆ^Πm63>C&,{}%mg߈Fw7xB^4[١v,| ВYxo +>4w&@ާ>a՝3W&Ƒ!n޴,>+e|3(z(% 8:26[zPʈDM4J`b"fuc s c{lnώ0z5m|{lDE Ɯⵍ]-OZYI't-|X'16[Z䥎[ i$Ws caX+Qi wSS#2U~YVXuhmDFs:Gϻ5$ ɵI#'d>vI+g=6 mBqJ} ([f|pygl? ѨKVX%]H ?@*SߔopD4}u7e/>|%8V 0GOKnC|?oƐ곒5ʰ;Xz o{4%j45cw"bųJO3=!ZZanLo } /#3P_U77gQ;\wK2EM6C\io\*=ɑꝬ+(Rc{9 q%[g >ĮBW TTo6LgAq ` 4FK(vt} {nǫ**X{/d> I*-NSCIjbe*^F]߀ !3=>dڔ%֯/Y(LI[ / &x/qQXX+E4C=]^Og@VvxZ Stc7J*?2a%¨PO?]ѨK/cAxSۡ=/Yɫ*)80HB&hfvƒ'?D侒Cp>^`nMut }(E贍YI0 `ޒ =={OB۴GX?U\~ L6)Om{3#>0ѨM4Ut1Bz ꖼP#\ rx^%'ʻI32M&L'2j7{2 FAYmy~+rR۬m}Y[[ خI&2`w3lKR GFGK 8aF: -Jd@TWN5Q'j0J#lxNl HyseݾG}Rx%s,h,.;8LJ8Vz:(j,鉤s£g"nkM\hн3x;f[גۡh7р!F!My}FR.QVͲ1Gp7qf4}u\Xi%,wM5U}d}J]Z%LeOԽ^brpxzlQ*@]f `߬u}˫]d>n6y_~x0{W݁To_D/dtC KHv eB_!B12jj?lnYgӌb;406n ١r,^^7  c.7OK"m@'QF߭ጅ PJ!oBZF"v]15 _.}I]4׬EFnX,_!U (+mUn/!\ӹS 37:HBK6&ґ*<ʖm@m6gXf}mB.EYO{s?Td<;9#]n}7`#/\r0PZw 9֠.jg?맙RŰeu@EgC2$6'`/ uĿvdLG H0-3QW(8 =pzOǔq IsZruDt [HU>͸M ;fa3f¨D>e@?raN&I "Q0iZQ#14b\MI}D.;IvmQAE7^t98QZK1:* JδNh)_qQqZ/%+|)4hd2KZ[IKlwAgsȪ B%lH[C@wm R;59lWҪq롂-{S_GtB=iJ.èT/N%Ϊ!?u0VThIcVi6oJ" A!|9q]1q&ߖQ'3[oDZ22e}N =l_nGSMI-=Lfɠ{!.ܽC:ؽ/_5q5Q7D;c>soĸY*(f民QeLx.`г.0ukj"Cuk;%1".2|eih3VpLFs#J-e ~t'jgΙu,^H(Zy) [9w-^%ARܛOXtoKYI}0;mo;nd! h*d]¥T?4ٓ9ڠLWҭ+ͤc#Q/ ڐ#dmmd]sSƁzP@EDԼkvZY J>ň#P>N jr$A1gCȶN 0'Hɱyk'{:(tl0w'*NKz^h| ,Ll}ǛN'uqJ-: =gkcWk'-x[G,gFc:N{q3J #SXxLOahQhzYF-CQ}ݚѡ]RZ+R0<  ?=h؈ G3zWA;dKx ?lkOKc]bbX7&d%_u$ɣ9oj3QaHZk1MBp|xJ/g'>|2mreШ:pmy9uܦ|faܟ΅?+bQR?xqBK\FFXͫ_Q$ J][ɚ= re~SpRH7Ww%eL/$6 2Lͣh!rGo oMd6>T1Ma=XA({%HLT-"LO pS0hk[禤v")M JٰNqx:;4~#oX@IFܨCkuG A_A` Gmٻ 9zۇ|\S'A" F r |I) *=GD`{C*dflS:gBxyh=5('"m@k'%Y *n^q}1DvBt" KtLNfC6Dmq Rt/b\[iP)ьqy:ksp:&(ԕ1:rG7JS+3|R3)fsR%ɡ+-D*'oB5)ᆬCR2'̓z'{a$hS3(fnpҥB$դ<\@O1`xb.IMBS<[  ,ohJOT],% 8] !Zևz$0#= g˸"!WX맍,d㴛^ `Gdҿb?A=ZŤua!I:->hyY75&<V 0/7?oP~MY(ˌ60'1}4ۧཌྷ^C3I_l{s!hh-:5¯{n7b"#[MV#\ a++:\`(*8#< SB_G4Z1&wKg䲰43U>IjL/?TXrV:G_;daJ;sAʀ0lVB^eh_] aTc8Ł:XBU\𼗸Í&oIR%K?Tl%6y;*AB,5AT,WI3'rt;ߥ*=Six}0/Tuԍ=31LgWIn^kPI0K%mfZY2vS5.?}shOYfXG|TS{mKLV(tCKtwᴅE\U#cJ`2z *lXG#^aG| ӮLBqn\=dIxAB@flA;A}Β4O4:!aܷb۳Ε =>kUoչwNʕ nN6[J5U`V:y1Uo@ÓB+x ySEYbdѣz6 .m8XUlE(*V_[^%OqV%+RׇB#ߜ& ̕J ]J`"(d4ʜ8Jp<4rH6h]V18'[7Y`79kGW,>0ydjU=!_;WU/ɫ@Ku&H35kʲIf--wlo5xP~/XAY.,NKFy@9Aox<\Rw!ú\-_,*XGQ՛Ecnq@PԚI-KEkʬ[V"e*_$N~q_ zƸNV|VǮ:ѯx|}X4Qr(OH[I3Db {L# h%ǪuFXFVgazާ֥%9eStmYO Sn&Z$b.A89]* vjmIiRa}79e0]ڿRoK 6 72s_"׋<&#EּH) ~LȣDM6<}8hs.# e"Wye,ZsAa# >e^ qe>H/ W 9q9 Z/2l?fL+I7=aPa{P jEf*mr1i$kVT{B5eñ`MGP* N?z8G @ayҵNyQzГbI1kC-0UMVOVFD5N.91#CWMg%"SLL,A/\@s[[ԛ_ !:7R#'B̲M%U.$bYjuy vm0sT !x~X z5-`>٦+4fiS +pD~|d +&qۆ:UY+j3<Nfr! v9x-ư $?Vyt5hr\l*8>h"+j()~>k*29#8U--?erG* auYqid^D]@I:}0 cc;*k5\;pY႙ԔZ6E_^[aE*I@ nՂ`oPuf}m*D"i|L~ *Y("JN4\ǩ Įqr;h,mȂa+PG!/gnЕ+ߖfkOj1Yd#%)13'AB6F.ϑ^fo=;Z[߀s8/ZuOi*W"h7Z*5|_$c-9'j_Flh_HI?U?ʴRp*=n|%03`+8!"Ro{u4E-e&OJ"za&{%G%`|Ǜ7zRLVfM81kkK|fەhp5\oͯZ~~ қ^jlT@EԪ*~+_V%wj"2bH4џ\Ch1Dv>p[%$^C :A`k2nKCtЯ}SQEu,T|ޒ@*ȰP nNLu._nx:&I83 9NgSaqW ESbNAM:)*7jOtcv*Odzz(=Q",*i<Z1Kws0硈N;%1c5pᾺ@hmD|UˀnFeߨ¬ߠ9s%FQoQ>xx1dR7KwY-OɚCwE|&rK[ r1;m!x|ű堲x2eCQx~o CG-c%_O3v&呎_3(`(ޛHd*#Ac# s ,DIy,Afh(ͳߞ e[7SkHjK"֗-4891o0qJvY:w3ĽS=Zuέ_;xif3qg*ùY+ fx4|Cyp}ͮS`'uUi1YtL 7RoBҥwdM } oA\c6= 8ZB,%-V[Oa=*'G ^Qf}ie {Iaz1n2 6Dń%:CZox|>&nLx]wtԕNGRFwßN}dof-8?(yz8mgzű kj4d]`U9sI*ٿƦ]7Ե-P|!ZH |6 CDz*Mo媵a;:e]f^'qYm.#cHeHm/V:N(~7kU{ޅ?T ;C*tՈf ($sMlO"cGƙn_> ql+N|d(Au-qrLzH=tOkEQV C/deKwq/aY!ݴ+Fc` ZG_ AvSZr(NJLu0v!+oJ_]z>jx@.#Veʴ& 4Jپߑ8!\"IzccLv.WMAVG";7oɢЊS4onaJve۳\%tG͉eY ^6rs7\\gQ-g!e70%i/l֛ aH=|]!-Z NʜWXBEi|ro?8fvJ3F)[bg"JK Ԡ g]3!D6(+'r34ƌ+7X*nxhYDB@RGƯ b$%Rϭ(䔅)U6'![06!kDڝ!v6?nNYFR&fcG /'ʳB9o%'EpD;+>ENP_` Ekr6]h6r`8g+cOSncUܑ ԆD:^B4"S( Y/%:8 G.CpJGި;"7ZY/W$a&/?I3mL)ǻ*\|Qp4oJWC'(&H/af() d m_g"Z䖵G1yU|O'qo+c/kC%$<+JH=롵+:Ena1hKF74 .'v4; ^(Tq,w;S>=tX |TwA a,W^4lLsZ^Sw'U9վëN〉536OG]~bG &! `z(Y+O+4?( 躱=ULDOi%oZSfj&!6?f &Fـ}320jsȑB2wF #  & =V &̉9v${?\\E9G??e}lKݫۋbAQ6ӾR‰p"SJԯc%z5su|V\Y/]>kfpu#儒88=M*SeϛJ0DR}o]OȒM*-LP1z ;-IM&Mt@</Fp %eɟ5`ff%XF+>i'oc(2 *nbV(!>I:d{!>q64M@'xnM^[K][>X4 (o$pb)L5Ʒ^wr d<wN'S*Xry s#T͟qnߋIee Tr_G6(XŭŎėxĴYN&HX^=gv%I&oB\76O%;<얯LІ%M:x9y^fHZ܏ǎľn-NY@Cusw/x*㶵W$ʿUb;}EW&Nvc\@Z&⫹`" x7 (.^(ikߗ͊pĬ#.AV朚zNG詯Y2cnĈE $B|j"uV ' QH[pwݬGƴſG&&meZQw+&`.ULzDDp\WC9ʀ%t]CA%>|Jc-2ɀҒEi3=!7{j:#=.TS߳4Xk~K44ۭ$e; y"{!9 nSEW8؍پENu4>\Jfxn+r"QDXEm01!oL<:~3$$D~ Ir#+r"cZ[^NaJͧ7BkMcT8MX>SJs MPua؃jaZc:fY ec" ֎7} h=۞U#K݈voppraGX8/S/hCLKޛͭW".^/, SYyR+Cfy(#\tALG.k^|V2 s9N;rvϾK2 yrNFUH[_x_,oLd863} g!-n˖7[df?)԰G?ɐ/Nd"":Xh[_Ymez0?+V9XDLʯ?1x6_NthYYq*逐$C.^~wa0iPft7UFϒ=;YIn7p)QS??cicsUh\%snhVZ)P zT)?A>Xu$/fT4§5LSBT%Lasծ(]ۡ43ŇQL8;ji𠱙!i3 .脮U5C!n60;=ϝ jvmN =#nteGfq"^Z?#u](BwM\@.F`.R>^$6ہcڊd7؂M|mb2R cf"Ϥ61T=u]3Nfih+Ev+^:vx/Q2HOE'5 p!!o+G]\96gꎍD#u((qB'[bJVøb/oWCh#Z,\T 8RP&YTbM6ٲ[UTTKph,w86UagT4*kQMa1 ?Y?Ӑr(\'ȘOL|olvCvx~}ha6Gr-cma6Idy+)}}D^#SlȻU!U%q_gˈ{qʣ+Să<͈eËGtJyN'Y 5YgH4v %?RByTL T9;e bHbM3HABg[*v D~XVh".*Uԝʅf3'[C]1ҖrýjnPլWZHiTb`ᆂ[ [g FF>6EouiaɱV!Bl?ׅš9xk<Vp2~ygsMbYx܌$sfK*oxɎy 3jJLVYכe(az-Wph[lV\j0X@{^8(}~YPY]5\wiiOtmQLpVSX97P>W3\w3^~l/$-_Lf8/]߷Lo̝zH'qKv&d@16O?K_ɚe.֫<Z 4 ߙQȄ {PEڏF;dagPU3ߢdgÔ JP0z A_G9`vHf$tq>Izƃ>]&z{ \lTԌ%Sduܾj5$kLOW\' D&jV.v#Q0X:>V5bH9y4> jśOgp:=F}BbͯzA@BTE+GPQ{˚kV`('Jd"ؽ :^?bVÕ"f!=$_d.>Hx xOq X$嘚^bB|мGa :HO'ؤ5)(}c+>!Tg҉P2+ƨj71tHu~n2[xc/ З{{}^At,,ά{BTw}Η lod'cO6Zҝ~)+np?b`uY}Xh;d8e`?uuDŵRm 4Q؛m퀐zP]'#O Q;45\#7[VD bLrQ}N^vVAӊ<,XLԛ&4CDLLJ]!~dI7yqAGk8Zf;~"[@-/a^(\/N`#%h&G1vJ28]nd *ܵq!!AF;.;,ݏU03k՘h"!O ό&-J=<.@ЃGCC\U P@ V}SD^Y;=q" 5 (FgۏY½ IUZ!I>)tgjhuA*DŽRyG-K0mUU~(y&˫b^ާycPQqjAR2"1QUM6%OKPRVIJ> ܫH*GY?!Z<ǸsCު^NTUK]%e/:kNhZ\:8QhihfGJȫg C% "{P)qd#+| o]=@<~u3Gg!/i7`6$copD|^622z,HhcLL-Ibh)ph*dnv1{1p M!3cT̑GR$ތ\[S?bw=Y&|Ytާߎ RZl67u-MdUzȯBW6r;;N{oBLJAv(h&Bu 'bC&t!y\iU' :uoD' 2[#Q.$ФwLӆ7A\wZpDUk@@z LD׌W)EOcGܨL\xycKp#4ZPqq~;;.) fo˲Z qE,I;.ym%[$=dj2]+]hYUanvKnY> R%| ]ruauӖ=RQy#6; ­D謚 i]&s0I 7Mˁ+D/e9G\Vf i=ɱ\Z)z&6~@G8t.TAmAsՄa&F>8 [[>BJdy[bm_\^f3hLo]G$z撒=lKdWڍ[lgϱjrZm.w.z RXN&VMM$G.poPI."4Ƿw9?]UiG@%0"Opp-.Gv?7F UxPŵ1kg^6]ߜN@ѻ /1i12EO f~n)S%nM/*f&\-̑/Ⱦ^lbg"]GXs#ӌǍ[[uZF_1hgl5 qÚaM=spK=59= ΀fH(Srl,8D$[Qǖr=W)sQ(iN+7{7v9aw#=A'l :*;n wKE`a͐ )dxvPnHک4" 连[:ޖtyZߑ<*|%e-A2o F,TsHvk:uq9\ һ7Sܛ>߭,UCJaG9OFH!- ev҇&W/3mz:rP(B-:$n[0ՀÜk-ζM]A3E2PT9uG&֑_g^QK9c @^L}!tOv'r)ܴ?Ѻ奛 &8Wo8jDY.]DasJR0B]?4dԭ\mQ=;_Ŋ$dFpq/񲷰 %%tPU#5 ;` Tj'$+wI=Kg9/1V-,9}:Iax8+{u(%Z[s`Ȱ yø/ޣo_~,Tr|EJ)t b뾟(isycy;]RZ$,a@;8։GH@Ƽ;('\d πg6dT"٘NnE04Lo% OS&2p u?9z}-+d0wȞ"1((E^ȟIo5M4-ҞgO6 HgTS`VPNe_T:Um %;›" QvpHTq,}f99Iq[<~:9__Po԰ضC. rMNa#uJ%NŒO8UY n 22F_[ c?VɋwGdcdXX:V+g[ʽcU]WC=t;! ?i9cLCyBi$5|qfdv;뽹hFeR}m!d ;>A` #hpj:yFB/(~Z 1eٸUpa$#w;֪f0֝O%&}A9͖8q|>DſU!/g2&`%+dq77)Ό*ڡyǭ^Cl]{pߙgk'>Odb6,H:C}alĀ$c6E#oG@kU&q$Z?00>ϖTs.pY\v!>[ʆe:k7:ySHzA`~u8˟OP{Yǰ੪3gqAj8xޮ1u\'H51K~Wfx?@5IvKve0Az"-W+:u &@̫c|.v.1 MwX0$HM)0/F}D0(?. n1/L(( KQcte!ºAn@ׇ3c[Bi^F "芍Esr.gds S\ȏhς'oaN1sDr%Pց7̜\_?UF K iH. ɏ:l`83w (Sr%Dʛ\(ҽpjGUfQkLv٭%oulbaBGg+8A%9D0S~a2g/W?SWj(\peyl Ll[QY lMàZceUU|/RKhmtĈQAOٞ: Qҵ oH Gx`e28jܽ@NcԎm8uHղ+Ҵ|[>L8qHORLfc-a%d@50uzVl@O?5߲ ( o2k6c9D2QI=(H ۺch$]^"!S HG*Iߚ=ž-eBќ-Enh7`؈k':ƺ̳H l1+<q _z49)cjHpݭM*%OpL08>+_cqJl6[QV 9؝4YR134оф!c7]b `XjUϖvPel 6u.ݛqlά{-NnEUK.66:@$"JHUkUa 3+I{pDs~D5÷!?])m3xk:g%v\Ev.댂f(*kb\:,գ*(%كHQN .̱?_xY)`VViY@!;__ ~ _K㡒:0b=лK4Ұ,Q5:;bw{O:sS_p2sĮ~q5Vk 7]Bʃm@Xrx&`QתXJ$sQ#m@_FD0k oΫ] Ý1Yn~}G# 3:kG&5s$!Ϡ DZo86-X"s#lZ*c~o 1[˽HreFZ5e~ĹO6zqg|X [IW_ ,ՇVVuT*Mšmq! W i Ȑ޸qIމI^YskԽ :gY3QD#]>vX?7"{Y d"A,s[7ji.Gd3X~1@$ߝ\@gvBUO.X7!\F+&s2UԛCms`@8A wCFKok# ̎"\bpdv&dWbзp׮$Bg!T.5j'L/# b?g-lS8*-QY_Lתe-G%s9Q%&GxHX(JK`.> yZ[L!ȶi`d:u &Y3s ͲBF+۪m& eQbo#=պ2:+tiQ 0Ώ2# H~ՈXWxe(u1)'<L@"f{qrh%\txTQJki(! Ī!7>.vܚ#Yt^Uz;BU@{X&!"֎TT(?MlҩR!"TVb@:}W؄(H,A 9}_8*^fdGuݐ5|H0!( RQ4lI]d)k \-S KHjaQ1TzK!4t4kx2LBMY&V?c8Di5̆nb[Vt28Uտ/޽#:%z ^f+3Ď֯$<0$8s`X Pj:aGR@S3D~Hi-]L޽p,'ԺѽokPMY;,Ws6 \XJV )m+Q-#'7qoE!aZ+.pV+SO0'&#6We2s/tȑ*.4w^2 9$K_ 5WtG۳{R P*5嗊@]qI ,uoNS;R ዷFb|Zw$XExb `ّjkP2%JDlV'@}{PS| CJߵ`.gO{ CBTdnᗘ4%4|DE8qb N+v`J1\I6~H#t=@fӅjnoT_ZZԢ\]F&&@׻)u!2a-mhS;k>GΊ9q<̜׭ #` E]>LjG`P`}Eij0@dEANV+zƺQnR09-mݤz:, /6JTnz:<+A5L1[S4FvB+̫ |ixՑ\-GK#=ZHֱj{A$RLPQp-VA:AV;]`H0X4 D}Bc@ʋ49XjHJy3d;s!v>zSP7FJ5=S)41f\SiƓ@uR*9Ltq;woS҉8XjBC?ǘ-$8۵S'U hڬ-DXoߍ(bV-JEN%;XdX4z0}8G+.ϛR0r)KPwe@ŧ_@zE0]n3v=h@(PC)mt 0ZzkMqZ;Gb f0u> ˝7Fdh|rG ,8tqZd9v^ʌ~t;SjalI]c@Y0b uF'"9$;k{i6K}Wv8$9]V5!~BiB}v=ꊱf"rRS 2NOd"$g 53[Vp65fXg擰pC1Wv<1hf+0] "_R Z$pdxDq&e5I*oT_څPEo*nrU(eI۱pZL|>]{[Gfϟg0.M:PxBm,7 SSmd"TDa_vxg45-HTɅɲp\RI\gI3,X4/6q>"I8V0+j±[*"nіEH*Okt$ oyGCfSؙ*9t_<}z{Fgr|vh, v"q=JPzeeImS^t1=;lH_S)-av) !14^b#Oecr@j`Q6l9ZXTgS L|0B/r)rj.Bn J 6*a[Dܿ|ptRzĆ+5|S( 20op"'PI>EJFlfQ٭xW///:Xg^Q:DaւR z1FGg=Lit[? Ͻ!'TMJHYblͭ1AJH[DE'YP'\/6S! 7lC<:äD?QS/=9T|qO#XF nND|8j)%8chI0iսKRֿxrGH"t'Vv`vyKU@0YYTی2r7XرZcr-"Ō(C pc0[v|=C/$$ Lbh)j(`,4I>IӧR\jJq-ˎ= ;dÐr5}룋Gs${${T%_̔Fm aYɻ:Sd6k"Qq 2Cnnva]Tt='Mj깘$q^YtmSǙ^ķPL8'p (H╔+e8yrzmLgv ͨ%Yg{K#Ф)񐟦)fPu&JHv"`ymygn6]<#П\NGf>Λ8:Zn80`bBvafzXqኂ?]R,S* RoX=T6VrV Uw&ܼ @sR'bv9qbnhXҝB-;sWu ޷k4Yp^]ǵ_N3>9X'Pb4')ó|ilb̻[zIM\5T3A&ytpy4M`qF6d['>nGg#7zpZs.e#g*\ dHг tv DȌ9XܙNNޠ} g I4ܣ:kB#~ڶ%V.eg+FqgͣHzsAx酌(#*:MZJevwZr^edLePRu?|vkĈ5 a1>6uXTbe-P}(HLtnWޅqW/Z؃&sTbCiԼfe7v~ϮW٧Lz_a#( uT""Ʒ?_[4U"X2TIƌ-+_Bk!9Jk #>?_+Lv)*kX_s=.D oG4l;Z(A%;&3燪Rwa=(I\Fʦ1!mu]od=`2IE^N65Dⰷ,`?ܼjHHDKh؄~df[^N:Y防"6d.Iyk\jv@R&tbiNz`JUWTy0+\>ˣZLLڌΞ3Gݢp ͥ*.Ҥ!S/2|og#2=_-R2$A<‡Ӟ'=ЫGZk0 VV_bէ@b>hc3<ɿ6N.R>p2E6R:G?bƞ'.;0V4_X3 u_bNI(:/^iwJRV@DE#a k۳g6I"hwD8}ϟ|2J Tт+@Y"c𦏋\oG1Bx5YMr虍cwAT֦0:Z;:QƹU&tPj0ZJ (*xfA~m"¼\532!~0"ǣ?&R>lV@wbH`Bvnj)/;, GN39I j 5& .+Ȇ$ }<A`7ћǽ e?S"LBiPht h)ǡ:!dHYyIM<3^p܃|];CS_1 ն&wX#]|,>>3%ƕMR! ~IPUt cH}&<ȴ\$Np}!d@Xun{:6ڵQ>ƛS,D5 Sbˎ+szQO~];(Y|RJ Idс*HSfV(L h`(A}F|kK0.-QYfBXTg'8(i>aIN;A66-ۯ=z L*zw8m$gu|Z#[n"=^2 & fQ3; 4PQ-dCrsSK;v"u$ͳodƬv'TnpoZpOygcG4fF㴇`9QSl䶌!*g~IdZaF!4nf Vs F} eL,ˑ̺חrc.hD>*$ 1,+uM,mRRNajG/25N7s{7CD Wmp =T]qv:=i!5!Ie<Y#q1pjw|fUlBI6+=2rP~6@HY5PCl\ sԀ);RDw#Oʯdu VZd9L|D,PomIJv¢xǥߥ KiBc]=dTr7u@VKEU<%-Bxs87}Sw *{5G:iDŤBR< vr/ duRUT/NO]O&Kko.z,p붛~JTƲx<53r lOEZ՘ޑu"F[Z&_ԋ#A@(lЮB#(9RC Ko!|psA1SPfNf_BpQS@JwwJK9 7}As*k3'؁ڮ?#*r kz?#N|1_5!\r7xں6;ɨ~Kϗp0!&ڙ>cut a!qR+[g I%[BSiO(Jo.NYd@նЏD9~o?^)װHD\S??fǐMx*r2Ӧmaf>#@`BpLn`K_Oa"$qfT9 'GT֎, רI#Y/ ,)>#^zEu.pT*>hYE|BY NDҲQ2Y(|:`Z ku]atE!s9^ FOaϡw:GQ V%Pm$딶|͜Ǖh 7>l_"$2f[^x:9 bMSIxܹbPBGTH44UZHlj(fx>$cՠP`S=Zٓ:IYfeLhS\6d!qUkQx>&9:[O߽xrQN7?yTQHZM:nmP pjtߊI& lh[e@rWJz;n.{kn6rAOОZb-.I+Q G B7Sd8/QMߺ^v3×wTbCEi+vڑ{Zz޽E5kӃгQP6 ȱh:xvt(YBHJR|"ObnOVk(2ЧY{]ΣG=^ʆN*,&o߽X[HDy5>f7 *suY<.cbr ߠ^o+nА\>?mjeٯ!{kꄦ }\؟z4t~}갽d}=/t;;F'Y؛5"+1[jg3VThc?.Qa+ k&#;Xqt? 6q 0* zGOyn5woٴCjڵ!$ 99'hSt*`ґ_ػM{/9X++KB${ۊ/ #E~|l1T!\[?? TY$b%fn0GzϚR!'.wufQ]:MaѲ䷵JndO݈> k`U70>\@FpPx)>c23W[4?(_A'8= lSpYBe8cbX{iM׭SufcfQ`u @ f8zhE,Mwb)S$jt,vAr :a.)ka/=dSGjԱ:|vgaWvuHVVَ?[Vr:; 2_V:jœ+4o/0լMğy8K%фmT ph%{^Ω sX[ ޳B s^%$jE^(O1O~lW$΋㟈V.(?YQ@B-<<#I@:u}c:^X+jTnWd?ˆQ؎3\ќ5ZVr;ӓ,'6 v>Ib [Zyʪ %`];1Ϻ|?TMf؈K`YɎbm7 }Eθ2TQ%dƱIitw Hj榼sлow[N>V&AJ444QA".ʟ+u [M?iv#%L6r_Hv_[}mI?ۑ\Ga{5G,D0 _g6yC3:wNs[YV?0־CKLGp4%!d˘W:잿6t^zuzyJA7 YY%F(/F: p|2V;p⊮4۵&gbb^co.(ZK 7Y}?MDdSԫɗڪTⳁ1V#Gx}$(6uDҲD̫( _QjW h8*a^XhFf 0r2vIE-0a7 6vN9ijLf 5i*I6˱zI_ %S呟d,n޺`YۇmջOKh z70W6əG8(&âㆡd0~uY*P|Wn7ĸ΍!{̆^Nէq!|x ܂[Z y^PcLς[۱3$!pA0@TG z"Ғa|RYBD&*oLF$M*H&M/%'H e>rS՚TJ.`vm0~YZzp~~ޖ"#ul$yn?j"W5P* m߫@#i V2/~'<5p`. uD4AQp9ȾbTggxv(h;U'{HSo΢n x5o[} a0-&YU,*ѐ{V;=:2vߥQ ڧyDY!Wxx"@ \1 Xgxh*gg`:'|uUc#bS";-RߺXƧ7ΧyL3֯m[H$Wߘ̮*S%?cL=\k7WmECy8;!%86362). (4k+l ;2껽iTۜ;{S: vyr^AV4sS.QYib(!tBcH{ L϶ i_KlB6[[s &'tnn9aVL]48\b keՂ=-bf6DQCzs1G)Qr^J`2acaX,C13 PdZ쫊#=5qv@9:q* %5(w"Maq%'Ox:|9σ,1g`M3 CGMI-+:Hz fq׊CVPw4Sj/ӷLY,a؃I#d.zهs Gij-SfӍd Ud~2<ׄ<]LD`,f;F//%(ȹS1o <"6S Z-[TnSIl.=_0xH 'yn lc}ajHο罹͐}bؾ M<=#cc-O=Ǖ5`<̓,O/9G{5% DYQzyz Ev\M^XB_{.Uʩ ^dc/L9Q^; O=N?sSݶ;B#_VAT$*jl[F8TPiUvdTWoahk#Y<  ٶ5zf;-$nֻEȽC+SjeN*v{U' [fw ',fV^_ b!v_カrVP٩<]Nu4+qQQe^#<].U/zM#v!ć]mU6lV7.m>dA!>JSiT +X! LyG; I˘ L-%Լt,B౮թAaiئg(i*C r.:+߮ A3gDi0Uӛ:hS~J WGZxrp.k;w{gNܳѭD:GP?ve.rZ]C.{QPdXT\밈9~f {w!H!3hq!s.Xٷ` :d+Ǭzro;Z~Fd!<F-K#*(b<(ҐT 3 >Ku$~yACL{xbiq"14iYn!:ל"5 D 0iXCaL +BUT2D8MBxWYŀ\cFs!`_7ۘQܻ.zise&iB9fTΏ"=n="꫆vbx[ϊ*]% @WUZ;b@lW3v@ k4퓎F%-%4ܣŽxFp+1\P=䧃yH'Q@ci_Vf#50nl]?sz:9!JݒµNQN;~AR}ԫ"Bx3oƶLC+!Y䈡ܛ#F*D[DIZr `o*z8·ׇ$_'p0AA eDE2N\Z& 8CTр]-R^kLf;>8rZNZ'j:ն*g;uۦ8I܁ H c^c5?2Ƕ,4tT92]dìO|IK@[O^p@Bnsk0Zln`݃qdhu~+۬Wzfw%k aRM#;sH4Ia;NEoq."pp1w /B푤٠n Z! 8 pHgǜfXdFY5@d=Im1UNNjQ#otr ߓA`BF< ѿJvܓLt oߪ'T6]BO;{ؚiۙLύ/3RU3!$4'SMIsn̺7?EH>~%b gϪE||Ӊ`k8,oHV2 !eiBDSmdcR` N ׺D}4R"w]e~0~=X+bػ-I#NM<)>9|q.u"iȭ0;Hџes rәxMEy^$ǚoO-ai9fK[IMjp@ZU}U,|q\8irP? c-KpB=&:3/ë#o4ďh=k˷.ó' H.cWEJ<ĉE^W# ZJuWslR+:Uo>&َ#Y^/CXY ((kbRZby K1#OHBS.#0E0_?Ֆч .uDF/슓T!tDR\6W "s]wev;V/rq=_.rX1Űo_C6RlYܱ |Z\iX?n?C(8fn7k*J#uOf{jQ%uQ ~E5>O[ts^@CܱKr;>ښّ'pt]5w d݋ Ѭ]u`lLpK(՝[+4L=wFw^ vUHx[*"SI+v8_V"a:;X&} <={&TN dRGzQ.ΙGl9Ɗ}2 k/{WG+NAFf?pk"J.kׁ3d8s7#٠K "n]YŚr2Dslx.9w5-ϱnVtzG3 Қw8)}0!κ3'e:,BCE!;~ b"A ~)QcJ\no jGp"CF4TmA\[]%.W33 xs0#:w9ǫ?~b[C1d1Nu} O`1) ɣC!Q5l5'vhׂ 7< L]L2B\B^ufBhĝ8`$F9"Lín\ڒ+D| -!y"3w@y.g@s^ŒǟGB,ဉp"<nl  0W::kG6%e٫f/& *MdtrUL~j@B|1҈-\a⹄ pG>](m-srNO7X#4ĩڣ3Og=X-§'',*!MƇM&ıbĸ!Ȟ+p& eP1f;}( e.|hGW996thEAruK"b 5҉-BA?A|um|y*FW/g`K.芥悈)4N3N@ׂ *h~f:F2|BQJ} N^˳hqHn/x; 3K"և_s]}e]'W>YD_s_b~C6ś}pqEQkLhpp3Gavº A[G/WLq90\/JfRdڌdlP=@M̱Pr @9%51ھ+~o=mYkDf7SEB;.0T:!%Nu<@vAbySuc 7Q!Hؤ_OGPhnM\H\qɈ%j}L➅ Mhr]e_ d)Vnsߑ5@/K&VV^ꆎV&(AĜšx FTU">5.KF9u}xQ(ATHu :V{^N/ |I%){$yOǮsbrH=ႀ`z4Uͪ+B׺NM5A:5As(-i%nBɑ2IE6}o+st~:`ysU01Zxt!(;ߗ#˯eX'UrK*vG#(IeWAB* Eiq-17"lQ(d< ~UȘ@6J;V| ݖ8E0,BH!W>#)8ФKy`Q. 'NS!Y|&37D X4  F;~4ҎTQH(iAu{a?8i/ PK60v((`cL:8?AY"vD`M$!r_}:3=®A 8ܭW.?KzCNDf ty>8 ($V;nE ͰP tq]gJ+ᬞL<>D63p  I{|_8< Ca[j]8]TV-P}(֛P"f2ڹV,fǰ8~/ u, d)0@3"UA)Uv? Fk%j4ȟٖZ[DE\-yx "ߐVC##gdPssDl&~}b-%&MDFAAէ)FL]1[`&篰$gMYDŊTo־ߴ" 鈽 >MЛh#L I+BdUDpɏ\)DOո EӚpY 5_=u%$aP{~%((5ð`lUظ^0UE1k&##I;a1^ghW|c)dٯ eԁI#ڕG%?E\d ϞԼ+\;9mO\a94,7Px)+? 7p?9κrb92[7)',h}FVIwil.f:}o|;;hv9Pǒ5@ILn?3{8tуenX8'CpD Ƃ݁>lQ("H4  "ڮ,rbI<ч?++̉k%s%\тATS%V"ri$qr正ܿita7(C3ȫvb;ƈp}Q:С7>G-q+ր2Q(i3{a /=DoAVlG5oFoB"l,wHVDjnY@@]=,٢lZ&+;::z,j*iQoteJ2a634/8adz1<P0onv_}RUi gjsej>9l n.yfoOBɭv@C[gu`9-5tߍdͳ%vx}7{LƏjajiH; `yfǍ6٧ v!O6ʟYC?[ɭ2<ְ6՚~XFXt%۫ww=lqΔ}HWi2WD6R2 EӦ/^D86H7iCO0#BRȓy@3#c3pwɫ>L8[%5GS=6{ꔶqp%A;wE#Fb CIPIvFݓdqrX\0 E5D@W8?e!\Q0F(5_ҤʊfKHOsĈQh<]ca&mrWUԴhLeXTKЃ';e#X›в[zyզFaK pgW:Zb5ސN"8 SvVI8 jϲD*G>\ >d , #+;k~ͺZJ<-%$@JI.uJՅӠb [Z5xvn)=yc;<|!C@ =Q라 n.ퟳUo(Y#Oɟ7^WOa5bypqw``/Tuق5bgb1;ZTr ^M:1y8*/AyϠ卬Bѐ]NҠ4l~04Щ"Z$L >cn :`.OqŘ C5p$&{|A+ZӖ*\x/ջXXIUj_%ЍKfқjV)]1QH.sϼbdMClIľKҠJFeBӮ-&SJ+6vLE]_mLu) :fݜ@Atf.9O L✸E*>>Mʲtw/,yڗC ^ +m⽟b1KB׃hUf*} 5l:X㋥ e rpXǗ2t/+˾8C$`FLϲHBrI!j77/|zop?ZDLU3C퍱:ߧ|" {4z_XE&ϓ`iE8|$"N,Fy\ڡ\ C0Mؽ.^R*,}tΜ?;JZ-X__<% 5! ɖ+1 m\lBBf_}?WMp/ zzLQ."M`Sh#< 4~aG~J3wna*pꐲJQ8g'#?0ăXR:}eIѳ|,%k2˛1 @cj Nք,ңs_3)w 3jOn6{l/ORLf2[u~ܘD$K-gהּLYMǸ{muW2 61|(}<4Zk4{=.\Nm2.D9O0S;?vFt_}5hq'.g[A)޵|]x'Bܟ_b oY.[:"B"o,z8Znn,LqKL"0u:8: u=vr:*@_^H`Pnuo-<Z{ ^~A;3sZ)(+)Gnmd#taO԰Zw36^f228%)@:)Dž.5Q\Ԧx?yߛox>Z%" F(. NjL }2rj(.P9tw%OBAku揧cܨdBjR?W3FAF@Wt \@=vQ;|6l԰*vk%r#fYĉ:vF|"TZJZ2W>V8ŪG\ x!-a4g`FƕVv\[H1*M]rPb]_pz<*_K@@ՊfGFl'rr詟2Y.XxpsHbya&IÎՈBI. ҖnA=eXN><6!Ji5tAE[1PN.Vr/n$x BUtwͣb6+BEbM즜춂bMbt Ĭ}Ģ MzT}?@ܐ%Mu2xRga3aP4jI2yb`5p5C":j) f s]+nXSU-A>`{SoLv-NUƯO;U팤Es9RFeoS3-svK^ ;输7ȔX;so ӕƕK^h\Ue +<ݮh@{RO> o:-FLNnrQ/)dkNf P q ƞ 'zbߔvRuH[7){8;PhhDϹy9,1U_qڤr!=JgNОSIq#9zHݬAmDo'(‚ n ZVߺAjWQµxA=-ÂAG5Ȧ$v*Q0,b5 o7x5+1O:rэ`'kk6# U؛P _) (Kѭw2pQ]8p:u;&/ -P[,Clg,"+{?qQBNvХQـ?`*>}ci+GV ojENz n9lEPgavP-ى 1g&ZKv}gtt3߫D|</Bۦ#{V,IRYMZ6en3W> UB`26Zq .'strkbȔ%XjuF5'$U 4v%r(3v*EΦJ~vHjY'M3Z^GaGn$rGg2{eRnK4Oݒn;ѬtZ&a0ӯX OyM7a2vw١ hcu:.xXl%ߣG&\a"\t;gBxY L#1zG{^uqև&Qzwe WW"B~6"^qB\ z 6]pﷵfE|#YNGL[nc)$;MG )%[-<ܥ7`!*Ҫ{gl'Aľk8M `_7WEnΌCVFx6&WLȞP  Հ >P&J8ś't2mj6EmE79t!mo캪\|J>R~S&xF`kb?2-zֺԏr!Aɪ93,ӄCe)O2He+gJgu:2Sa6eRPHV'LFJpV~ZU h3ܙ!)bQ b\HLraL3G"/' 'DMa9 ZK)˕nphO\?ɠ¨Ҟv_󔸾Z,"G吢% 99CL{шh.(㙪h?u*' P(Z'wJAB?dZ:LUM6HBX[Blt񏀘@9lBaENPMzjHj/A,9"4e _,gK[3!#ƺ?`ɬZw2̂󥛞M().ZHY%WPFg7eTgAȵJ4wK;fuxo=c f[T3/vs~@o??a~I,D E#of)5beQ*W OѦJeX Mͨ0=(D뒖+JVxIn/#|Ey654ͽrEK}7ݻWg=h`ʱmCIeT *Np|Y$x^JưK7W 2,nx9,HNu8$.Ze ƽD V_Ei'b FE]w(%jb̨op=ΰphf35#,BȂQޕk"5Wj-&^fn- C?+]&`y-iԀ:E5!a?'@`I$&&.X&ak&« PvL-e3K9|a!AЕ5e讔3_>ΝcUKP3=JFM1vI3^Aq.,nQ+2LTR#F'rfHEx`1vt& k}ITJ v.Dl?+5ޙ7:PnYSJKw-EEU\!#7B0Ii%z=` _A6J>٢<񕣽&^^ %{+ɘ>,v"蹃v*fd,,3dМ2({:nt'oK6!ζ>'Zn j';Ba~ƭiD "!VSo[]t<116U[X'pѡ]~:ճw7^ϙf^W7Q ȹw0ϙF.0V0N'`OWԮr:Jlm8sI>Iنjg_ͻSL58|ŜD,Fz_6=\*tӁ=L˷)oд{dbwԶ(xUG`8_P7$)?1~hPŤV" /zy6YreT\ 蚛/Y9A..x o~pl }9/ FmBc.]gz*7ZVmէt&UQ*N[Y e*` ?Dk8ɖֹ 넞UuzV@ABx96 )5+'sm0$C.xo|W&: 1^4 G/c<۽% +  ލM{&\/|7itC2tlDw#DPz>"秨ZtdtVa1( KYr#\Bsk<)R >L k,-uГy}xa"Q@ Γ{VGmgpwkӹ`d`ƿJ,|eEõ=tzF $(d.B4N%Ynre <݌f48^jf.q'򶚲bܖz{eGeyryRA&%GssHE$Tɜ3b(H<^ёZ UxV/ TO'[8KŅ|.B-;7e3m6A/c6͖mqYSxEo0{OiU we?o%NwmX\jJ5vbRD~=3}(\=g8,uB6FӊՆY$S-LBʳFtH!@L߶ Ԓ7JZ0 d)}4#EZ0 RL&;'BxevB갭;B^[1 M\7ҥ^}&1y{grQgmPZ[-+a!'зavXTˮ.^Qݓl4vܚRG?} (J1f#VrċDA%@"6Ye49.B˼7KνғMp,Z?"01s"< H\Y~(kbZ!._õLW?RN -X8:3#ΞKH+RlxxGCcQ--C@H蔀82ro0BY@ ƳhN #; 3' |SqJ5R0ӁOw):Iw]`\bDCy#sķ:iW# nJT@c Z⪀nYGhAۭj HSI>vZ;TTAN~l7)k#bT.U+Xҿ-߰F-RrքAYv6k;(w[=kz;Q%{q7]3=z`ʲ\M{^to4?Dă>ڣaQMԜab2iq+$ IM)W-ܴS9#@ # *E[<Փ1xy8]lST3K$\dK ֻ[x&áoX-t_[~^^}r-QC۝Q>힮򈭓ZFK29x4rFew`ĦSER]w?cy'yc(,Q rrM>1"'y;g1NF@w KSݹyt7f 'tL?(6@('*>;a\T V{=}`T&@|oBSmv&, z:OAː$J#Su[,a q7ɄEk꺸a–:/%*wd"M4=o\?-l/UVb@( %w;s 4nfJ7bTɨ;hcGWB;Y@Dzڦ$[S ]u Fu7nnKE_<+Nˠ=Kcu6$<,P ƙw]~a.Q?hT,K,:r1Z%lZqRwӑg>2Lz0sYH`mM#t98KǤ Q-?rul'ښڥ랜Oq +jܵa:6}kwoؿ1ځ3#3N\Yڌ1ig? 2)D) Y< O|C&iĢZ|}N 0Uwq0]aeŠBm\yiHg[d3c0y65c"ȍ]t/c^nUe㢸Uv ]_txp0y8h W}mIqjz<'ʌ>g+b~}Ջ*:]CIVS!$7g9}S^ a4rz<NjRQW-l_&<;e7v {Ń= fWoOzN$҃B8|q+V*ɓ,b2('tJ5 0P|2mTc)41* 1oadѨ1}$ /nuݠ'pQz#m%s^ob+QXd^#: V""%ce6Yf"7ԺZM86۹b۱G إj ٠Z\o'1 /'o״Ն]ecOȨv,ofuyƽF= WsvͤOf+Vau`U&V xY=q7ޙ(ć=!ֺC i a|bo~և*EiEԊ MKEp#Cy 9nSҕgG5>{I2;VSL bґWH3R*Pt;Nr$xh6H`Ƒ8!PCcZ\oޣ43BXU`[5S~BŹ&EͣkĎV!^GtIx< Rov~MI\-\/rzo嚻2I}e{eB=jwvӖ]x-l#h[ţL 8c-22r"ní?W?{ sJK_Nya}Y*=Y3Dha=!D'?H+ṕq*aV!"FDE@ZjĀ:C -AS.vAT;vnZItd<};h,HT8uDeΜ])C7@U>{_#DKeb(g.[]608Ԡ8MY2 ^ޝHZbnHsAM[߶Lgf+ѼU]+:9a9H/nGxXetk7kEt" ֞~I%[j(HFWqeCFCT/BQ%IV)_msFqXHlfra$:꣦o ͫT9FX>6@M5Z7^!3,RN# Bae1dKPU C]fde~V#tqf*kq'ǭЌ>fA4Թ U/r#Thd^hE,LxRw?bUD XhrhDP*y:ߵG* '}>(ǹX}m5 ߪk֠G]MevzÇͰ"N˞.1A'FRELd6i 5^U%f~X( $+Q*V~ȋYg9a/@H"gJoU,)20\jg/>rP\_.Dd7ʋ@=KŻ4Rhat<~XHܽǞwio(m(QO_y #;FݳO>cX^#ތʤmw>*~Oeq]y؁֖OQ^4|ت-o^_~j~QWΞyb`,߆PgHUc5]n帽%+4f&o,W>|H+q SE.j_C<̠zy4 ވt$D-~nbaCRZBebC֞)DBܵ*0̈́HgT~(dmj ~V jZ4wظ#TM_ ֋ !,7B$!wIƦv1ܠEZ5%YZ!p d}Yβ\XZH8k7L*38a*+OJWΜM/kYt+7 (VHgB˹7/P uO`g{FTB)>T V,HyRuq,9V9#㥤Ԫ7//wn鎚yY\GbHIMS "txjnس9LRhR _o"0P6J Iȡ:c}]zj|W mugO.pKE懄G;%T;\?˒BMsK1֍;x6b.7Ƿ[6FnljkP`#WLѸ;o;1d~ҙLyiWcU omUN|MGQ̋8I>_ŗxj^Ɏ >==e(զhEv fϾᛳcXy=VY#b胥c~{򏫜)xb*>xnH ]pT'%pU޽s7 &mjr{s#Mlmy4ɒ_KkQI7`E9^2PB6APK(A7^Nv@B lGْ\%qB'ЏVWh_%v/8ij+RpIKL;of{iYxRo6+RF=|GGz[5ؤLA5<z|xp{kFrtA.qV Kq7 `*kÆ')59߅Mxp#vZ0ߎ'_Xa'FZ|forR该xj 9NVucZ&g] (1GQؓn^&EXo5WG&l 8%s$"MErirxgVDŽ=us8V1Ίjz I0܏XD)oK@GN⟿t_=B䋖wj%R+OjgѣشK+;XP51 06ՓF 'x8sQ#H+PPۤ8)]cu78a$5j,8Ȕ-#ՙyNrj؄Ȥ('Dms-\$ po~JwwfQ:?ఁ[Cv +'3l R˺OݣVJ ghxwK^C}h-]^IJru&3)Wwes?OQF #8 ^5=RpZJeTNmtW#iP0A ecP,hTkBVv&gP4I5`!VCowOpJ޹67<䯍qA1D@џDڅ a0GZn21ZySoכOx1?C~g1l)ozoT?3~Cu]Ihk|vWeP`f>L毮_21)(KRW~?bWo7⮟.brs;ۃ80p95a Њsz`'jwÿ#%ģ =X?މU n{`.T`x^7͂4KmUѲj]t`;ҿGʊ!3qaK$?J~ۑ:`[DGdpN0_m:*8"vHQ`CQBoX EIy?t!Fph+ɇ=Ѳ;^kG|cH:h3)L|a!F#&4H0 -++vуĔu x>5\J﫜2uW7 [3DYR Hp3 /yfc0-u7 ]O;X5plӇfrx 'a4?Edq {K*4>T8?9mQ 4⨖t)o/PG'(}D $ 3\T.9 Xw2L$^rRC + *CM{5ՙA 6Y[}nQpq,G:ZhmVhg$2:n\ wԇ2/<]saDHWtX:{L0 jeꃺ1Tg6 Crͭ? M9 6ɽ'ߪ~ͺrp29L#ΏK$Ԛ~h"垰j\\U66z!7Cxyt: T5y2T&KI*aVFX^ZbSm$wDprK59!V }s Ȉ879XްI烽ί]wc# '-1#?~Ysy^Ks=6F(KË"wE[CⴑD|kOj#ӎRmT#/>ZalbU&9,WqFmj'j/)մ-DW,<<[7]K 0 .aȮݳ_&; Q{5 OXUnD6Ն5|\!GKiHZ.bAX%(a{x0ß Cy;<U2^k{n4.ѱJ,s.jǁI'9bԷ[ {caBpIXw E&彔H cO93JC=V)]):- i Ď8w=.JĬ]Wl9m?|| O*74CA`81t 95_Fa5pҮ]!&ҾMݞRIo7r''(Z]zgyN r6AԾ CM_ہp  5`"߁rh:h%,"ZB|{xH~ѱ2[;hlykRk IqWVֵy¢ZMLFE;=^quv4&&6lUdM^xD$sjYAz.Zq/rQ)RfoE4dKw-. КHhRzY^ z@ULm:Q+iq~.E8Z@QW{'LT›(NK&,&O0B $jǰmQEs-5?mUW7'}ip u{ 01qխpK;ONHT nhp'V"S_'-L~О$XR%vۥQyukNeoƨcf}I_KX^%9NCJ0!!sS'#D¸5ٱ ,`# {Ɗ$5a_j:>AckrCJ< 3~Gk`vlR (FuY{+hjr!\o"/ǠLV`<| pcl+n$yvX5xto_S[3ɫҠSNmNP #M9?h"h8*288~n}bPORJ1gM ?ܘ{8sp(yvx1nj2|WW9 u{nd-ۆ*?|`f%Ԍ(¶>n6*!Ǜ%Jf@Z|fHΨ2uTj`l&ޔ[N)g:XQ'%rB v}0Z!\E7TQ@R1Ώ0ҫ#K9؞FK*IȆbm TsRXAS\N797Dwh.i'TRu;Y]*Bh9]xIw> Ñ-!x շnsox/jn4bk:Z5ZzL,JJl૞}=me0ˢ)^0K vHtXg'MHޛgW ;Yf JYq7%v}{^v5T51#I7$TS9?R <7`\kCoУSI<|ŝYȌ"yie6Z]QvdS:qʻھ JGbt'G<E3v57XP)+ )}v"*s^5r/O6lBL5\nZ3<ߒ/1ØiT8~5XGVq]7}iMo`xAu)jEWY2(S;'6{6B+3+Vc/ VڸwSZNqYL]f3e#1ӣ:?  ! %fxs Ln?#&(+"{6/J pS9Vj۔۷y:ЅJs_a(F1 ” }mV ~zdGM|1mԗ(6U*ۏ12r ⏼;:&;F͍ޣۜ:kv N50&M3n 7(O!A-Sl_l密-ʏ&i?գ8fG)bE1 '5♂0ȳ(m7AN*0;є=F{y`5A_( e~t+ k[Ҋ,вRՋ K2 ([}0ҹ6)>g@;Q*cP>a߸weL`}{^TԬ ,[6aW4z=P\]~66h-׻[Zؽkb(_o+G6jW,$? Wp~ nNFnb_)yi܂kG!p "jAO Q_+cTO&G_=9Cahҗ ď>P A%_qԟ~kGiYs ^mډ-^d춆•mijn= }wܡJ yfO&|mS '„,Jodr7ɹpzHD3DOiߝScRłBBKPshqTfUv-Ҷ ,Dh=!o_?S*jgYf;kߡ/I_[ks]lV'kNÎ3(i$p<} y'jA7we%,#U3UEWDgvp~g@LfYdm̄\NTɏ׳!eXu:RsPģF0}3sơ`+GBdWx\>H"LQ J:FIм{3걳wHlw@/' ZkkE{{Gg>4p͸ qUa`wRF `æ{gsEp[ltyj/S%rZ@ɮZ{{RԖxZJ"M;J\\y>plS- mov.*jĭ';& ӦVi7t/[fƎS|F$6V 0-k0Jgqy /}ZgcePnAr4}xD8A}#z+mۤt)P^JF"V$-Ј5ImMaRE <;]˰Ovr@ֱ_˶KBяZIbn5Ak)Nh}2|Fˈ,< /g,*XF)PsM/ <="A67K7 @?-a˵.mH̢v'0sVⷬ_*b66G"je a3oR \bIL`3Gԧ}4n-W$,6O8$tAzq\z@40u S\ñ]M~ [sPjs:Gs[-2fI?ʰcU+Ì+xG CM)j&ZP3f-NC`AqHX~%N8Vh4Z϶AȬ%c÷տ ho'>>иJ*tTɆOEaOHPPLHIob,8+3T*tPopֹ200DJwcpV}8M4L*׼"Nk-^r?-`\^N+cF\ -T#NRG. P0):',Ro1oNe~#ԭwxͰ 'GY{j𷮴]> 221|sl*A(Dx.%Nhe{MP*%c P$al99}gxА2U;`3CB<9q)4ڸԴ~4^gL\@M[ϒfc6hj^Ia.!;_ bˡj-uib=Sp8QzGKiҖ;q,S5PABK y<}Z@]f"V:}\ B^O +j5& 36?HZ PeEEl 8?_ +gLR &f1:BSpP"ñYG n ET$(Ƚ18ZMjߊcHTE @ĵ2@M@2%"!Dhu  Sc?p6g8f iѫ>Fz-95,êw7ZN}w%(:oUD7yKo>oA,L -cWb̯9 4_[-  ZZ TܔG ;\Y~1pFX{ m;{OS6-#G|Z]ُ?)!bpjސ7LZji-}`{bSy7T4u5T0"g\b>xfS)mX Be}Mdީl;:}6܌GTs0fy\ִ=xHHt{*Q)+>x [yPE@:, A".,%vMS'S-ܞ~^XRa40T.'b=Gd@s:nXʆIlyصR” yOANJzб!5+-lt+ ĻjI" #WkGai&Eg([i&a̹pe%0cA||Ru[ֿ9 ?} ̟v5?PR\qe~y8LEp_e;.XvW'@mw'ܷj/4soP\7wGjOդ\qsۋ$Vu<햺ږv8DASAucH bT΄y"fQ>DeM $&b ]]cjťցDu1hoak{BTF/k2_Z۞ķIaX3&_lmIҙg!cf,+XV"A ӯz;P(% gY^ǺhGn@@wMllUW8a̅TrG䲆#r!EoJ}0%~F3::%Y5F;K_87S C#(9ڔ{>&~vXx)sS!j01Ś=)ERbKFx;~D]:wz?;l{7a̛y ^Sv&Pg)@h"t9Ar=}'W0|)ō0KX<]BP ȷHLeT: zL_^!4ܖ/#*J@shwgGeĈs)9J 2O{~%llBɩXh:<}umЈ1Ȕo)I7cMi7PSt56yJ,R[mv4MCQn謹qxs>7ptߟy[3Ecq{ yn: !~渣1&?@8ia~DMEˁ2hTYD|'7RʯNfP-:`3_`^f8%,oLZש[زxY]eẎ+'i@y) 'T 8~"Jjҋ5azwW 2֋/a >&}cKm _0>%(=@Vy;<`QxD0"f ܹ0ȴ&'(DHѤt&kmV"pƾZ\PY9ܥZ> =;ތ0H>;h8yl:~q0Fc=RDp8d=.c}YTzCN=f [flV!FwjT!GmgŚT1 (8={'uGh۶S'+[5uWdz|#&![`e(r< g~u 4Ԗ}M \QGQ8'$&fpF7 Kh[v?go;d5:bya#ݞ<0X"M1 + %ə!^izȴdA% ڠkͧ-'Tw~\`,F:p9Kفc6fdSXC5D^ $2^ʍqI0}=aK3VGmX45}>k'M+FQ-mahe4XE t+-f@`7>&cES\\NF"du,$2#DÞ9ʔ;o'?4t_"wAso+\,ʓMS-朶`жJ]]OV$5|b)=H-j8d?. 'puh=-헃7- q'@Y5(ϘܬDFk݋?mb՘d+N̷YF6~!ITZ8[ LX: >.c/V1~>?UߙB[*'[-eW`?f JLviK%7@>x+ji;o-wZSM]n@ޠ_~ yol]]kH~:^X;7S(:*6ޜ6Njr N <,rࠌδV~_nԽ5.cךq" (lK;&L@1v*9ӾV)eǗlh>ci:7mNރII{M67?N1{6W)<yO EO&wQ)dA}C|ؓ,c7'vgIa Rj&@8@ }6٫})=ࢗ%c94y'˲0O&B<%H,Bxz q]T AP0 ? >~_A⧋UJCS q: t2z'vFk0+슠6{򃱠:piqJDsg{_[ǷvxTw%tJPl3qe{7R|ylոM[B&<s6~1/'e˃*RtuN L+XSTL:^خ.tNl!C`]1)l=zF$Mˌc:?=hAMiЌ2\< ?/<>[(m Z"Kۤ@RcFg; j4_ ƄC ws]>iM/A&ȗGv^O*+.Ԑ})b~ jR0=}P)+ '6:TqqIhI*Y! osT]( #]-**CFǬf@cx/:J,FͲ<CN}FMugՃ8$dA5b5݉%g-ءiW<ad% pI'Syc2G6} gĥ*ؖmfZ:IGd{ȢbXA2c%iuZ<^.w a/:v?s?1܂uAn~q2nYx3\nUWy腧R QK}Õ<\Pf95?ӛr=q9+tw6{dPږOP9TX44S+|n5,AnDhB1G =Y%k:ZdbKXZm+tHj+ZބZgLW  sKWb_1>-݋i^cI N oa=s`F%S9\cr&j7d&*IT?^@\Q 3i*n?ZB?7)- LيMKOk0 }˟sRkĐ5?Pa?H ֋_dۑ{ %a_cPNdksW8GÂ9A*Ya*%Ӑ͍u tF=N do^a(2jXwZw GT} jLզPTrv(o O͠(Q0S9Bۡ`ڗNšKNFW7F' pX[GqM. A㘣meLihے )Yy/6:)< ' ;z*z ԋ]LUV&d i鼓;W~%/(Jy4&\%T'DҔְ#H` OAHF`)]A1I oa9Rfj{{Mq/qCe-߃_-"\0xK[Žr"p{3&kPu#~js7ao瓶-`c'#zFA;)tR>m-~;N9 U`"S{ϔu=U$Of+XO)S{o !)$5 //ޛбTkz9爌(kHO7$u3 )``Osv~5<#l]qHj?zˠlD NJH W[b}KlC[JN$fusN}˽AAz[\,ٙkĕ6Quf~:[ iN^C] )Cj3q8e] GJ\08'eֿ.dЊفZR~7Np{hd$ru(Epi`{N0j{(S}Réi>(OT #$(wbRY_a^\c}]xY[*1ee–N<;;ߴ:!ѐ] %8 Ce]S.af+|AT0H'9(Mz^_ǃ[RO*= Y](0=Ӿ),|%Q|EJO!ɔI .y e(=+dD96 O֟J--D72zMV:)djoFJL%a?~Eؼ=ȝv *Z nX(k(1Q߅ P{]=L;TW,y8Uz 芾)2㘐S&f(AThMſ%P}K ]֠++ !;8tzlRX= !dҌPڗ^ u#:>Y?XYa 840aěԬ}K1FJ@YU`:{TA{ɏb(t^M F^k0 yJzm5b|9 )!h#ޢz=.gV!%HB&ӑ[n,/ h}b E] XDybXiʰ$bPv Z}p/dܣց"IA'}ؤy Qɵ1\gwuv&jiU~a=W r [)BK:`?l uL<穕[@~cQP^)SQ)oRښ'7\ҕ 0<ΣXCMs3a><'iPXiC"͜qG51Gh1-lRΕ&vf`l :WʑLS쵎;@3Pyd-<O1 E}ޞ%ǰ#ĜFP7%3~<Y+ZȩDm~fݲc5L&"EZr>:BiW˖ty)8)yCd]I_<ꦰ6MH>hzSETH;I U4d}`<#yXV GLmR*! $.nE1]"qjyA1k糉PW vu]&L~]FfT/(y֛#@ꅄsg>%೉] f P #=U8Lo#k,Q]$xб@Yϐ}4[ާpڤZSL&TޝRs:FUlȶ˵H]̈0+V [unaX#-Ԫ;.Á՝X5rH2 C.R Li:O)YŮ,8ڨ\c"Xo8l>.13O 0Q^.֘L}ȟ6̐MNb/,M"ew=c*Ԩy"vmRԴ Z64V-p Չ4 笫I CH3]1m"?|ee)[6Rx3RNKlQ|7I8 w'ٲG0aQ ?Eb#,:}QBVE/`J,uzڰ o WHXZϯ XeY"_0&v2SʟYK8mj<#J0wC4W/q^aȡJXL%@ۢN|aEٵЋ/*_s)E''l9>O">839O2KhQ%t"Oߓئw[B6^0ϵ>2TEWmpuFܽȃUo ]^oUZbc/^m CCPv PSbU8WaDeMZ5op3H|Jz+J3)P9Q·W,2 |w5ޢG\Hr?K~C~sU98yivONz[!UA5WjaJfpdiuCnB%`ƝJ֙I} & >!R^l +DpD>|lz̿D/y*qڒj3ł܁t̲k`iR ѾYlvzZ9n g[-(^c2#4n |%~.aG!ukQf-a8"w%g"V&;_+[-J8bH`߇{QdлqPgzhIBDhOql)yq?hOuk׏[h^5 \d*7$FfHCXi/C&OlyxWIzҲg"88.iXpm\J"ow[:LnCG44ڐ|Gt#x=d9S8RC`ejal$ @88A0XÈ)uUcToxXIF8+>UgP :-:3ӻ;0!ܹ3j3pCFZfyY@z@O`Ҽ+h3 q:A[} 9?!o"c]jƖx.tԁ0B=>⤁؄DaG57/ū*{f"j o_/ 6GLj]k`yY)%gP{Wo w#[sy >R(ЎMI\`d1Q|aܥ@@;シ\n2x=p(ܬT㹥0WOgפ;ngX*&"xC;>$]-u(YH3ՁԿcܬye%\u_hC \2@W+%W6,׷W]4#٪;&ӎ_(n`[o)y^pʞ//da[ @)ub%Uy#BL*zjb:.UTtR3q5*ٗQx\ahVS%wB}lp|ϓRT'\qN 4E;N2\(L _~PSZz]M뼼VW"|d R-z̠_ XYoj^qVĀq_0Of_~fDbl9UR^.AZxS5:Dz"7_~?L#ުhTrTԺL-,t uo:<،DX;GS|"qy gq9EI:A-Os0n-ӟ 4 4!Nb-6ӿxW E43%hh)_Oq*ǘ~T IQ_I?`"/0A*sh}io߸]QibiNTr^ ҵxKW8H=.Lvf6k "x^^+ٓ5 fRi"%kSrÌB0ofXIs桥.i d ? B*̪-& 0/6~!.tĺŴX˶ᒅ[V, # fZFذk6_0{ۻPUGEQ' (IUtr,)7_`}M.hs?8GnMV^4%qˍ'ӄJF~]=M )t \cu4dj24f^Mk3Z\ b|A?VrJ}0* =N2l<{[haXtmLjӌVR=޾ 6hz1Gvi& ؍2P~ ,Fg'u)"$CdjNRkf9P[Jfn5BU؇,rVjx~| 󎤚M }RQra?2}kGy|{)e5E2ݯ]%LhMqB5t~". u0&nܓSETLwi_K?p HDQw >- Uf'M]߲ `X{U7buJ Ӌ5]AMj=<,B}\_ X !9M2ug?\%;\b.C6Yo>MO'T&h4PN 1wT>T'IpŚtaUiW'Q;rnHBG#^! &~Fdxu Ɗ^xZf}oE$q/㱾O NwqlgFdmg#WJ4OZP'2,֊`j뉘dojFT^T""p;NCDޔIҩfW/\>0{p0*\sY O7/k:zPGG>LJڞZMBC= {`[!VuAR3o!8\L6is_zh=bL3s?7_Hz-тM] b4A⪎"Pt2''F 6XaϜ֏]rp238^W7E:rdm7k#6ta'DSzud'e$y t(rxsW,#- Oy*uKZ2ݯ.s)ZQ`E7`K8aIX_[ e}(blFwqwau_{ng(T YtY6\i4T+W7|툆C)nI-Td!= EړL飯aecV)(LpKź4c3v+ K[p+٠\З`[}r \'~8Nd&sWr6![.A@rD[LJJ J8YNif'>^ώƥs9, ˣja9^ZMMl(yoqe,)gbSJT{89R@^]LBm]Sg{t#\8=}g&R46# -gV\?dh&g6J=ݥ6K콶W_"K*Q+WSgj]>!yXI$}VO%HnU>4Z'mٌwY= ο@ex-s%+@! w,HRau y]Kx,m"Wrq, CxscZ O7oKP' e' K {AfċV ֦֍JɘGȀ‖덐ŽbQ"*8S((*ԉ8|Li=-rX76dxRY P$Z&O ptȆꂇ8vAղ ?vתuP^<W ɪ߆xknIӪƘh.fIU9p&O"SՃǴhdUdJkŃq3yA-۱t9r @j(Lg1AvBCSSZqXh^!K[T+S^gQ_BıFn Q)産xanKߟtƴ30c5wmzM2nY]KtϒƛcxW2+ ~ɝZ i>y J2S7\"Pc_aNYˀH'k^&U N SdƊtAN;A7Fd‚_TVG=}OhҘS w4^{õ:~ }FlC|ՕOE3voA=[Pw[r# ^a82 !VU|=,Ϛٺ M9|qYu]] ENȓ9@HW0OX=¾bV$dŷI3fX !9h@:I-EwG)@G1_$:Wt\݅q#fu+_Us哠KJ5&4 A [s%wfGvL ʣ%+7窃'cZ7eY(4˾ \u*}v.18݃j\*V)kh͚lXߥ9%v >׍rG,&ZATd}ޤd1~M`CA{ MU>B΁/m\l xN%EM^yj',]r!m_*db7l©z]_q3ƢszShtÚ@%,kR7Ec ,B&_`p3+3HSq(0 <RTc^ݬ=qZ}E@PB_oЯ]tJg{ $C`&*hO3,rQZ =4Qm *.sMBKWݴMh%*{Ю){yL*5M?,S Djc֓/sȏJ$|G=Afs)F#cOCTUهy'k0BXV#%}v\:[xJ_|{(_ui}8ބ:3gC(׏&vM|9ĕ P )+| utCdP*ݧ:KHգs7X5ֲӑ2zY.HlDWֽ~Rcf t6E 1!iak,SmCNpj"yC;1^_ 6pDqb)a$Wzs$k.d;ۆAGYu&m}7\a WrJF3↟0?s*5z?$n+0B쩵Y.kg?-tJ1B3bkV4+6PdGow\${Y{'jtʬX& yQ k'/;_m^)n^ 6^2Nu#e"On4Qm+L؜}rp,IId1 SؓlAGXp 9H~ы:c C$p["‚ `_j*]d%WtZ'TJ =䟨.8h0ح>ZO N"@R\q(118=UK~=⊔P p?e߭LE̱ЧxȐAn7I> P4z0`E_fbg)Ty9 9%JkߏiB"#cGlcD%#Ko)aUn&a>@HaQ7]aH<4↛ 9D{$n`O64I=wG΁|ưtr3a!!Fk7]Xй0@ (Kt7S.7W*䍄~Lj1mMBV.D z޴2=rcCa ",PFTYUmxInd+q~"MhR[NF>cEbzu) 뎆g%n8\JUZyzEګ,`=G4]YU.̭WGK!NǂE"N’ -YTw nb*%q <ŸsN@ij&Gh-AN( ͮʐ&?8_Y Vn^ِ,ǝ T]klUjX^'F$T}U}#E$RDmٜ x@L YfNYCa?';}{ V8G+=]J^÷D4YH3gM` F քlA.WB(n^A6@P~X`U쬑ǐfo#1O^NSX"Q%ϡ<1&:/BT/-.X4TSS'؎7$}Z.ctNXȀ4P!]B9Ҧ_3BZW6݁QKC{$7|ы|y 0^Z҈ x`]ZZy0q8ez;y fxZm)3?=?&4 b6cm%jMѺ\f_Ҿ1h![,^Tc.%Q\*wDuvǎx$ 4`\hAwdx+J= "Dwv@>Y 6 }#$\CQ `!%<#S&D$rnCšw O8DO;uKð ୈ<)f*ølDʩ?/RGE s+- f y@s=Q[3Mo "= 'QO, JTe]~cɒŒ G`[aK9_{i眒u ;L,IG#3*1}vkC9¨'Hl$ qF0.׍ђܮ;y2p"ჿ*..72^?Y1}٥FUR4z X=rq[ooc7d@VS# q^R_;s}.bIDʾSl,EZ?Ԑ½*-|T;0bYKwSzu+WU ڤEFQDnt vÈ(ջXfo #9OVyqqA~Q(+k$7'vܶ~Y"(t#>/b[0H hWˈê%*ۢfhS`A2[Z%+8uko}IM4GTjVeSsUbJ S~W*t5Œ:^avTvq'\ Xb%9pku\N8RLLrefФ;S #VpbP vI]$岬yf_,'F&lk( :V[(u ϼ6dLd~:-t%?vNʔo/zPM8m\o8Y ĭ)xVGvXoѕ\z}3_[2hR3z1c \ռ>B}K 僃_J,_4xG'|TE VK ?M\8ʙ%*ЂnՓĦ h0Őq=9ՀF7ZD~kn8D.vHTAT|S6֓IUo+(<34Dl Rm}:wԿ!lR0)1_:ow)bIzC{q肐U RX7P 6K NYz>6%字xR WO%vsNMp[b;J3XˀE>o` vzMO<(1I*&aHN[/'fEHF_Q4t~^34>Ic/x)#Ҭ_8|h)\\Y<.b>yZDnV8̠t|܍`w L5Rv"!O~/cdEyf^IԵի|49% _Vʧ@r24Fra@ց-&(ȅ?Odn@ӣmK[\P JLX8]5Cȳ+X93vͨuL 5 1+~Å} r1ֲ^8v`؍8q6m5YEm55=TȎ+L5ўA^R}f·b&mM?k V.c _?sq̘ ÷~֏:&+ڥ\Az$ɜ'.Aћ<*# XDܸJ3J}kHڿ@c]DdXO3%Wm3UvYΩQ ؋S|h:|CrR# ol  #W~LweLZ7ɂ lg/ f!7%:=i]if|Rw#C|뿣IyzgҬߐYQ)44a>Ō+fXXmqb+O"q 6?M~V@A1'kր.0T@ `Dji޺€&&Զ I|މ~)&XEO5d\8@(\ Su.4V =!RK<d\ `9s57t0RSpfF$sVS5}>5k6|;@/j'6<+ZnIku6wvWdp"E~m3yWK'>C:J{;:_kNe|&gd;7}\( oçjңMhxdZ)ʞ4'V>5&ͳRzQ+-;+}FuYT\aS ϗg7/$# quH>6Ly 0g)ITN$D.*::;#)+ .h'cgͮ"c+}%+zkSCN=4WЋ3pO"zAC yAzZCE_ ZƼ?՜$GxC.M7^!-ٝ\G?eb댴/h-\+lwۤ*d-.Z28Aɢ?l-1JH}knm]x!T}6CKp+b+=!X-El-*ia7BP>_X# OXlK'JauxW "6~bɧf[8}0[yWo3 <7Ҟ)9H e6p`-&EJCGa˭ID LOԣ&:]^elU>mEش*jhno/>}vQZe!ÛGmN툐a|J]W8oE(捓1߄N$ĽV"T:9~ͣ)ݧ,Qh]p-=9gXZk騑MBot0Q'{rY^;3ÏUJ{;hALniXOXY74̴~g}~oC!b7`uh85`{ԌLW*5X6TlD@m E oȰ{0I2 |y'oB?>Ď,@J bktԒ*->,v?FxgϮvɰ˜%IHM4QM̐?NaI8QKӍ@js;865'FV.w fvx=.0^ 5X>g0'vj`oj"Y׿nOPQ-ԡbվ($ˀmmyOM1knƐAp]fcFO.x'İВZYq?8(ɚ4K)Xm=w~CgOuDGَSQ#:ܘI ұb*R0Ѹ#@P`vFʃ_rs0irvloamifiZǚCI p`3 Ot4N"Թw;uh!LT 9ރ˷pT_KF9*skz/Pmy Z 26:УKw$ 4](A QG1ECZpˡ,JSd7,o`K5Vɖ?=pyD5ԣj.`Y6g'Ax!Q@EYk;C3 LPTT +[7J3]]4~HEbrrK?)^}-TDwI(Q8a4d@`%}Et-ƄwsV£Zv$*ڈ+a\4x(N"⧋ifJD˚HSర"]ygd4gJm'82@"Ld? X w- ZV!Zk J<X\uM.L_qH Avgp]alD<~ƚw=R>g">P !@s`eDt}j]f7@E,d$na="g{uTat5l7ry}7}΀%%Ar0W]ud^N;3:Z-Hy<耱b}>׊nbDbw7.0asF@@ WX}G4d*Q!#oS1-Un m* [co[?wrRy[Yqak*V8\A烏:]ɿ֔uآjJGiR[cysI<}ǤސD)i^m 8A3Xm߮RJrZ/ƌφm4d89L7}? Bĸ'GjY !K$;b-`-XڗG!1?IՕ4/iGƀ3H*Us@c{[r1#4w KԴ2F fC#_ <]Z]oU0!:_8۵JbRJSaٵzK2Z H_&gQ{z*D*G`\*ى#v5vG9?Gf 7%A: i%vup.c[lZL /0$R$Ȇ)vo({`KuiaՑd\GU]짫=5@iaDrg:F}򔅩4/}̛LM?@coI5dži1\&ZB nȚL}?7A6|(Q|AZqZRpq2؞bguڐ`C#J>Mz ٍvc,MCE'F{Fy-#P%pxu0cfg <҉x?xE}nVZWsj.B}4Jv-0vIzxanU!Sn"r_-lFyDqYILÈ lhk_UVO( OEbX]w\t8 e9veYij^|Zzx.k_ml2?5TQcUoچO/u@wfO|bonjO)QvRV*;l Vך.\$=Ѣ_<, Eua 1c^Y*1 ݒtmօ(':ةq7>5FPOwOYj,'рjH\@3AUVȺN "E NƟ=G:FN4('lb箌t&qh _IċdlXU+~S54 N4DAQv AP%0!6++7c;WAV[ MngZKP~gcr]cvz KFŪoAݱb=W 02y+XkSkj45L(x46b_Ϥ8F\6+;Vz)S0 sWÛmZ"9&h<"Ub~ (I,DY;զH6"㪹±7Pۜ P]+ X[$(3 $wȟ5ߠޙ|-~T/=_%t 3l<e;L<\ :U3Nt`]$HTk0G[ok. % IHeK>8 vJDխ$^(ŚË1k[ <>U&I=)JA[ j[eӾ39f6JOA3:J&ae|}>3)^~pvY<s i"6鎢}uo- =jZU$!Mc6m L?%=f@iԮ +H87}T \ $VLa'"_1l|=7488}Y9°QN?1jtiyv-&=-4tRao'0ĩa:?q+z:? jV:hT '@F"G.z"]l&?iLGIap>/h]mq'-4-s!FVLBTPzn^2,"f@>zݔt=v6P=ݗRiQvҼI[>F331y@X94e@EWi$! Cк[ھ/$1¢Tőo~T1L:i .jlVX יc[cAwc+' N=. w¹U2p,*NJ|fB]+oƯma{cz?6|=̑x6H93H>ɫ[6J~E3{vH#!Zlj,BBQo}z0 ^ۇ^5 !kXPBL@yo!G?)0AW mz τa3$ UwL7џ|$x(Ʊen`ijO&2*rDʨ"4\Ϋ>@].ӵl GcWj~q %IN@jW <41_;c4sY`\PUJ)mQŷDFs`ڿ<7VC<"y 1̼}slP[u'zԸhSѹ)-N.&j+wR:8tЖHCV>tZB Ԋsڃ>m{+W Wvj ~yVWQmr_зg!} LS€p[ 1,8${YvGL7+M|W*^= Ge~v,7(.;;fHꖼ9ʪ9YLKSħW,셂Of'O<d 刔-͇P\_|N2w=݅ay,WX>fbH#aVFex|Cǥ=V)>ΟV)#HM9p Fo2Y}">4)MLoYfM [8k6y(ˢiן5 ;&+{C"s7lRܛ}W1aaUs2e,aHNo]MܣP5J$Kh5_S>Uwu@<@Ujؓh'6.$(<2^J”޼c E[v-n鮈YٍЅNCBc-˨9TA zۓ7VZK{Zt]k~P;X̙,z } 'mDR&%R |`8)f8QOA09RaA ~ps ;Up 4T-Z7KH83#)u>&]a=zOlqVꃩoN+a~;luu9)jS6 R&0_kkd>݃)12oeYsK"8?ST]Dž珚 KV+d58 +D4H\]hSQKKXPww,pY=tn_gfʪ\;׉ ojg'aVTIWƜv'L 3iKe=0 .rZD!!r}&Pc!3fD!FV6>!.sj pY4G)mժlёL=Qȑ b RbnAxg6B^?x*wa 4Aqω9o΢T8Yo:g < A<&hKhh`#l {G{dBbK.M\kUD L 2mS@<Y{BG;rhW!e")|YO~o] gtgT:CWLA1p?O+h2b9 LwQ_Q4mx?ax`\ cɐnYLMOc*چ8È$pl֙nl?Qp#\j3\hȌ?ć9Q4[bO;txVnCkH`r'z&,L-hlH(4o֗{P'.#ȉ5_ò׋n8 p7+o4b)~384H^g<˥Yuo PSZI{rY /FQ73$6Vv`j52o<6[J^&0+aQܭ]?7~ʜ]W M7_wK]jw.* R >R=R|kS]K@%Bio]$IRi*FopZGiݯoOJƵF](Abz'Ӣ;t}MCWdYx>J :lƌԮTwΕs'WC=$ysUv~c*O-s4(Og8ƾP{eO n\)1Rڶ~EtˡG OR\8LlvI0pႶUaӲ8GҕI2 Hpp^=ۍaцM]ZR36Nz l<]f[cLZÐPS3=/Gِr+j}m2 F㏱mL'q3dCZRa6D `ޑh xSWV[fJ}v!uJLM)Tm!<@ٿdwA:0מ14BZW`=(( "XbfLbLVb>.`D 6:qŠ2J;'+<' -fkLwX'R޹'}|;<7;;Vp&OQI,f`LvRgJҗpwwϴ±FJZͩ7jp׋H Y AĺT _ٮ>kW ɒ@ d:rpr+V "$8WV⤸a3Y;XL'or P'8{0M/ޅ_F5ɋƋZ:%JdRN5 d>wIIwLg=fL$+2Y'=~$yLv:- B#MZ@Udh`Jlxȁ^@>ǯB;#QUkO<ƚ&#A!HEyad=(w;B$f[2һܵ4%lȳi#>أ:%IpA;ӵzQ#Q{ۛ!|0ba&hmj*UM>^LzT"Ee:oYCt}8Rjc5IS p[*#RD:dyGWG\mC;;i}as1E)d*}43~3q[)p`C2:jnGk'I( >_']"/72WaT)GbzaI< P\S8y7mÜ^LZ#,q Ǒq7i$2$XɚQ:!T$ ,]R[JK0,;H.̺GsVZie]cJ@A:MO%hۏ.t ~_ѲM2aHYC+cP1{)9,ӊzaHz̍(*}+crZE2Rc]D~GbbQ@s2">!}lwR侾6aV\6kHWAk:?s^أ6%b7:DLBy||lSRw#! # bCo-dV2 ;: #P99|EY~LUHvH⏬g2q``v_xpU@>a۠M܎t 4~7ug2}?$ |6G4cNwk{^OzQHfSC{R##" ,G,.ֿ،~FQfBComFхe[zQŌ63M;4Ij]9cUMː̸`U~Mб iT~޸Y#\rǹp{x_e|+ lyɅ~^ȵcjnƜJv3*w4noS5Bhhy W~xPՑ>? 0tK]ԝjX"HUm>9IL@6ET9SQHK&C Z0 1e6ܾGIO@-$eV~4JO%ޫTvdΑ9ux*xM^JvwV!ĎrhIC啑~J3.{7&HNpy2TddDtW3H9}3K.N Y h%wس~.̐/IwшԸfjp.{afV~ڑF7e۽<;]sL =dwE6kOCܾ#(s 9v\V!%h7%fǷY͝9:й4ŢlV dy}I xGA1G3vcoek7UܐFxZeٟp,ɞ SRb$|UM|t+=1xُ"o5oko4S/ 5hjC4 F]nlެ *QGą'\ r7][)E3:wQK# > fZa ƎubɈ_y<UΌM0NlR#6SYIӅiA{l.bUyӠEU7 T__MG='M ,h0NCQOr" 銉_,%b ?WG$8df[z, 0,ؗh9Eq &b0O Qx@iwnmH=9,;NуSh){LȞGI4v JܕK- YyHuCoLbD(_X([>Syz>֞ZgwM)1u('n ~sB=.1eJ lϠ=Q9v_xނ&segjq 4WqOZRiIݓ~7؇E,֣́R?:@qVIم_ܞ(mku?Vo[Q @-+f$3n`ZV!{Cx2z38ъozYGr| |`π[NLr77>ƾIu박)]j` 푢3 i z(m C6} %byBē-ic9딈H)a [8l-yLf5:<>~6f)>U٣\N`G5r4TQIM=WIO1cbs%N1Ois?'cHZr`Ut[J, hT.Mlh*MY(:빗g fiRD@jH* /\BKP-VE2} ::s0|uNCa yl~nq]4 0-~3391sRX Չg__C6iֈ iT+ٸu9VC;ooMH|;Xnl)ВYc4#̔>x+`%ZŐYjc͕ ȑJSif-JbwCmC ;/rh[ +BK+IcR; =Vච Cgv:>VBW{X S:IFk:o;bT2gɱ 6l?xy,#ϟЭDe\t0Sy)<4pIKkԻ#,&|iaX-G`F5d[N&: ?/Ruإ5o3ȥ+.#Z[+0fp%N̵bmLkl#-p,9R f`M 2E' J!k@G L *V[ROXNqv*(/27Dt>ITbPbTr]pzBv)&<"Xn:E͚#HA1tM,4KҙFf4As*=6V_҂knXsR(j?DgZA\jwPƠ,nw KcʷiCkه~5Ӡ/oCnԶ5UҌN}R%n`sP.m?D!"| o?KR'u\( e-u}8YxnepeʎT,A1KhNgUWtHqS~z k{z QnXlrzd~mlAryB0W7Xhj`\"R2[ Hʀ<~5ڴ)##&>hݮ9\52>;ƞ}}BA[ރJyC(4oUi0dYVDZn=DYf\7sj9$,?Y}6(^Ӄ>~ /J%{?-?4hrgCPR)CĄ"}9?TBN°*53N?w秦)QY^KeOy:!6I;b蜩s?bJ~v5T 44 {(!{kpwz琵N:)s%Br,0M=#xyGk Nw}k",'ٝ8j5쥸J}}K1,޺(c s/^5㻍b{hX\K$:!Dಞ@뗁$JMk!Ch%^ ~/] {}fy*MoƐeO R ,"L9|ӟlvybe|7H {I~⩐nӜ֖!rnq{,hNi([L燙 3΀>k}nK=R89'ˇBS'2ջ؞WӨ>?l}K;>dD/0(5ZS _9Lf&L{` Эҧ0XߠRTQN5A  Wx~cdS8!pP=2/]jPAZ*QU^kBǞ@ ȹ.Ę}yKV6h_/Y8u[hzkfQP&(M-.j$R$%s߬8ƞXB+P2|kW ᒧoLSQG23H*[-*1I3da\o]gߠ  [9UUmPIKi0&n xtCC;MtkJƅuK{Zk6 WDiH1ז!kҙ>AJQJ6稠C^oۈ(yd眐Y?G/6KԪLj:Xhۖx xDA?u72GJW Z!:9]44֣7}?b:M"_.{ Y~ԀiUƭU,Zt'H?cxOD嚉 ?qt<)+d QZ1) t]b:o=xc$ٯҭ좙swlHYgl՞8iD=gґQכL~t ۈa}q J'3E6w 2a>l :$1b2QP? ZVԀ-} ZxD1,gsg-X;2GOr$bXw&jUHW)*[ܯĮ~V!V\m!A5dž{ `V<LP5) IKz3ffu", } v]jpMH=6qz>9t>؁Z.?Z"7['gȗ`h[k 9eT?^qyG%Wېl\}:?Hq\:7 뒝j抄Dlo|jdk%lW\_QTs> 1vF*u5"=T[ T88i>0x0j*],oLyކRkhO4.WIaslAqse&EW&p>ӝ3N^[;0Fx3EuѮyG\Nh+Z+kO]aAs%PsP18Q5JU`MkaQaYq"8⅊t܌1dU̒!KMs:, NV߷W@tns^#Zm7=D|X?*wV30뗤!}}$2r-O'彋AtU +X%ῗ?? 3C3HH9Ij糧)q5ℨbWȢ͚T +)M8^u~eE`f4ak bee1"}"JLE{3qYׂJ7 ̂1gOi ! Da b#@*e~RQQ?M+0zCmݡ=V6lqmАZ,ufH,@N)e l0֝c"FnsJЗ+ש@<qdE %%MƄk+t+ɧ8- sXP̀<n`Tvr>!72lbZ$ͱe^Q&5H?)n_ gmIIܯ-R`46 60 s]X2l@h"Wn-NS̺6W'!5ܸn.&Ø-#bdi2d`18FLU=?DBqG}K$K|~R=vw DԾ$\@/Ǜz-ut܃C>NR䄪j炆n CVBE+Cc ID~ m+ӨB|+!q[[8-%rH~jyN0P\9V JF$H#)FH4uR7gZwuQPKX>,L+~B+K/:. V$3Xߢm}A"pjqXFe|w0`kXc\p j@qJKUԿ 2 o|_`HE6mM[nIy2~>Ce4,s>1~FwgraYA2~">-o*,;HAcJЈޥF,n}ѯ~?@uC|.|!~[Rpj ٱO]katH ѵW_- N܍Ch2x1z Ұ Z(xF="ռjɶvbwIg*>T2M(}GajT'0| //*{f¢is'4Hͨc`=AvEWE/jR1vqL»?a`A~0y`o$9cMh6#0~zmbRjI7ꙓ.GJIrnq g㼹+JADEag DuT㣎JBd6j!%RU7l+UۆƲ,H&DcGwEϧ^ ̸̋;H޹|}E\){JPY_eX74֛e>hT=nץ+DRh\*@(wKHòj#]UkDm?ٜ˧ncA1ÐoAk񴚞E0͕W1@IkJsa9kusIǿ_\Dm>ugϊ S\wqAA ׌/I]H.3Â{⤓w2ԴIrdƹN~H*$ygN2n % =*<ؚ>\p {V]`Ն\E$8pVR~>f.^-*I[:8R #g^5ck+Z-tlDI[%YX}H01RGaǑVzݳgo+<#H׷ 5 XdaW.Ec*&&OZ "yxW M6PotLVB;ʆբ)*\ +*-ю a#3\]K7ýPDZZZ-v+='$kZ7P:q^ANka7FQػ&-գIe\~lZ]zeTLZ>u${P;Zj Kl&CD"h . ˢSǦ{z({EqW}IE:H՟X6=ƙj%nм[9Q K"˗] ú3]ȗkNFZ͢ ʅf*GS'[WB1e&30FQt>D'V]l1$q&Dru9ܡFn; ȁ[,eq]ߕG!Y/ѱGhvh(nb5ę{]\UY*nHFD2 u$١I{S࿤MF$7.ʉQJEZ]2㥧}iP I+u X}/gCJK֛u-ʰ03;[B[qUS0ߌ S־+z2\Ul2xRt@  tvU?kq1ˮ:ƯT?dMwx*nEHPٚ5yڕ +_{i> JQ)t]p/zC^)Ǻ4ڸtZa i,i6ZS-$F6 c .Q8pXgY)[r F3#jj{݋3Hf8O/HŦx$7ǔ/Pӗ_h)ěq0Yxބ1uxLWs7CY;-RxmD׎5sʩl gDnNAnV}2|y_Vf'ڞ&vs ETQ=8v^7ˊPœgxP_'(=Rt{~, 6m(gsY?{n* :b;`Ѱ"U3E^dmRel` b9x' 6xV6aFLB# /U7Pڂ٢yӭ?b{r:@cCwYϻ4ף!Fh1@)f7\'4,g5 2S "P "rb/F3r|#m R+/DVڵktHu-kՓL*YF'6+7}{~ S>K9_V WncntCyGH:ӷpiWlIU};ĶEAV MUxǭ:_N!V̏Jc? 4SHBa¤Sb!"hW7dh?rZ#`ZD+bjDj/o ;% bx uJňHw+!街 draL]euaoo]R '\VkgYPNCG\|~\)z:/Z-$s;iݒFaH LɜA"Yvem# dq^Q/Jtw^. {Kr}[t^ 0$Q.a!OGt?ǥr~N1cЈ{3uTc a^ t†p4z|o# SšpZ`&Nn+)?GTM\xhԺozf fo⼷ GP ԝOF. 7R6cwTߍ ]WE rHmmiN2zlSF79+0˞ߌĽz:o.v>|T.@==zn㺒\UG/VؠQjW&,5Uwex }⁤N?AA+XXCf60zT DOr)v,IP-|$?Ee}Ա0S7TﳴؗuwrW~W [IKɂYΫ:N!VZqx(M/8IL%iNx0gCnyUZe5sjz6kxYoZúg_P8?â y\'{v) +nwbP\zcuVH.#TFiaB/'*-c!CNkƜ M1xEڲ$.8}n9O״P|R!/?jUPB̂3׆Pָha˄ I4IF8ہbS]>@kl%nJ9y>+獉j6-=\ޟ+Si#X aՇ)FWu(f~U(b팈{qNJ;'^l4C=M %=.~480?8_=ZNj9c (^D}&C>ϯ4X0ݙ3?GoIs=NtOGZg:鰞3ac-䎻.V1Q-C-s>.rV}֖|XP_3fU=4pa뜎Sa \Q;wڰD`yyÚ:GnM p/.B \ed# )zF0:e! QH13L1|)Lmo1ȗZ-G3iA <%K ?KFsޘa' ֜F#;ߢs$!!&RV\,SLRCWlafM(p4@Z k:Ś0pvD>D)qP,`}tuyE)-<6r¼ܳ1%vo[tX S=︘"O6?Csyu9 l`nֱ4sR0_ =jR=m⼫ʣ|`TЍ2-9ez^(fE3 "5y1EшW\-J{@JT+{1V`w)jO\$ 俀uh'NAjEp q=~P5B_3EsoGa,Fj2>EU,I )s&XL QgiU5 t,,&6=at,į<LuL_'þBJH7|mG <3gS8]P~perǐصeՓc9]T]vJmGsfdWUԇipP@DG[Orz-}ER ՗Q╛'͡8;A&%b}'\Qf[QF%HTC֮dyk~*vN{7ȵm[ݙ`~:]jÝ'l`{FSAY7*7~eVSO)Hn| Rs4Rd?.1ȞYXo(W'WI{; N]%J@ ' tgپ8qфy%LWBiRż}lO[3Uyg#xBRy׊ywČ|tl]7RuTpPOOOLKn3Ņ=Qw!=9 TlQcBg%bLeTdQ?<%on7|y|D (Hn>7K *ܟXOW$=a~}Dpsv)p/շJYNbau<1wu?q-( oz99-gGv=h{S}pw~WHMji A\3Gn'<>{ k ?MQ8by@QS yՍ^gY/oV{t#6UOȩBŝeT~BϷS ZAyLJHԽM}w0$+ۅ,t*Ln @SxYhyIiZ/ Bx>P^SM|B-2"z}we0ʇ=pT#j !$}> }FT1ϷҸPp*dtƔC{E#JET?EWhj?ӫf+6T;3*|ee9|+{"7\^]%.g]Ԕtxl2{437F<7J? y(? -]He-z4$^q?P!Ռn5Utk<6%2)n}^mtl~ 5w>*h幵VBURqbcRjS- w1s˴LDHRчXDܖf{4.M{a(bPJQVݳWՔ[ome8tGWjpYs=)g { !]+j'@/ *QPsASsW 9W۫q V\ޕcmef  b\R5J;Gw+u'%2Vj'`.mӭjft#)j1|'9k9YhփÊaf N-A,wQK&H#l#1=x9a}/u }[@|9_Y.xGaG (͌V7bmO%LCx;F'&gg"r nf Mk"x*I{ [9YZfK@$z< w:=_QFdyM-q߭S(\mB£,9%~3Ov|F^]}^}Yn$s._4Ϩ|i*yN<,; 1@f.g^"{i:gzjg_󮱏v <%An,9".H\7ba;&gYtVLT&I4xB2ѶX`2ఇ.a N:{" spMBkRI>V! UHU#brɺF@g"._#14jg>:%MO7z47P[Q } twOjy*.H0*WbM6(X,CBu{S =3wC7d3"JvG(6%e/'MP4\{Joc/I{<^9jµ|s=,9F’c :(8Cl/VrFyfqtD*1o$i ;,*#ͪ9o,:N,-6SN3 0]hLF$c},C׷ 2NV"꥾ d)J4>?0tB#p# ^$f$̄~^`d^P =.}A@~]@E~M _ LnB | `E5AN'Kwz. x; 7kSy%*9)0z_ծd{1ij0|ڕT(&UtLrY_k=ɭAV?#cT&0iwxg6 ӱQ&Rk2REt"k`p㸗Tm8 tT+m9{LBf#p(.~vzlaٌHANu: wV١<*KC6R v9:㝯QI.Ī }tmڧV$s ]$ZƗCZ 9ªIջ.uw4-3qRЧ \#%ݤwή\)e3}=]udXν/ Q-[-B@گ=LcZ[z8mxJx):PonWQ[/89~+V%OӐvSf8h*?y-y(0c3~N8X 8 >A)d_pr01S$vi79LTteIVТѝ/(1-1,CP("Mo]`Fy*dk^^A4e#h춳3C0+7wfz74(-)p*hMwQ}X@ӶZRz{ qV|n£UgqX3!Oҷ:ftM9UAםc[Z0h|Zk< ZZO9R+5JL!U5[GNsRe~a)u+j5(aKe*?%1PsZ-]`ѻ?wU<D;=LQM,LfK]|52'cJ<.+ߚF@ctb?MD-C]O,ۙ{`|DR۫s6jt# sD]잸 ,1c9XClX9mpf>8i: zLA'/==E x挰Ar كgj9.CZT{y 1l@";(ClzAAE7`_K /I Ffb])] uL7ylq)ts)Q oޛ=~HSmMi73jգaN An禂$'nB{!{r/Kq$8g۞1^nRt7]@`Q\, LS6SRu[6/1 )~Xހ1cH1^3d!R\'9͔$![(8|1 y+zBL%]>bO5m-"53ǿUM. f鲣d3;ɳ*Ϧw}$dv2+i:?@W-=w>p 3zIIanv$V28?v'ΊmtL@۠dƂ{~m-;!^>Ƽ|/ tDѭSP;yR>f;bDښqd֭BLj*Q@zTDm"\z`6:dehHۺSi*hBMQ=ʡ6|m)7lYJ I바qKR<`|JF=0#Ϭ,Q-xk,.l:vJui 66;&N!p8"8Ăzՠ`& eop1?:%[K6~DBcai,Uჱ}]OJ-vMe"2\Fσs2;^UڱLԙG4M'OU%۹ߗњ amJyBÖzIHD nE pg'zuiTz6=v{cKum\u^GD [E:KL0y 2>.A)>27P;z|--0JRFi&\Md-XO5h}%kek3p]W3w[Ň6JmvW{98k֧b!Nn\yr )=,Ob4}Ԫ45uŋ(<]Ame)fD |8M~\TpZtE&x qw1f0uL'{&X+JSdq(er*tJ'%Fg*zЍ00%U騮>:,Dѥ&yO'' &lTJS)H/r}++_c,4zܦCS'[ P.K t=2l%:8_ef4 X'Z_lJ:[Rj[m3yAkaًѬ*`]x4ȋ$ux#m,}GP}wng5ЄRS>|jg;\ iqPK3{j&9M, pmUZj/E}Cbz6 7&~e\>Ӏ^$Q擨q;Lu\tPFJB`;z,0y2B 9[@A#,\d  tw7z,x5^ +>fkTr>lKB[rK6mnSih \a"+tTsӣKi;(}kr @<> /)}g[G]JћNBUW_l ^3lS6L@jdX7c>;[.@t9ORw%eJܦJо=*oXk7ͳ\0 SݻA H.e؛ aE"N?uw'ΐ*џaShRTcj0CxRowlڮeRqf C'_b05cx][/-@rm9]6_诟Yz9$j?aMUZ2!F(ʟX$+~5jCςMj .!i鬡5BPXK D:R5co{(f팉r#=_Ԡv6bˈgS$!5C4;< ;NIkE CrtOVJM/h6[xk;2Y͖#p_L%$KAѥHrmlpVGh@%\ro|7읷Z-ԏg{2E^UHV a@9Qẞ/VWT &0sIej)9,<b̒C:U'~T YԺNGCLU6*9!fV˹WBMN=Ք@|c#<-JrRd~&j̢ip GQ1V!<8"@㮑Z^M DfvzģRy OJ5b`A&<ԴFրQ"59#EmWftx=`1 .]Bud\ѼtUcyt%b2s&㬈#2C%A"Q'v`;ui̐#MUc4ulbp?U>Q0Z=a[HXg*NǙaT~਴́zvE.rMt {<Ib(|*/5QVP0n,9㺶YǠ=>m1#q$I1`[9l@}XٿqP Lve%3/_ ;"ۿ6?>UiFsD.(j@Eյ`3Q73BS@@.=95LV(R; ȼ|Psqn[RC 0<ObFPeW ~ jwO[c`9:S$Gmz%yΉ[$(& \N,2*2bj"񕜈ZS $"rO w Cn;TcTGmja%{D z,d(杓'Yc?Jb5晡W?Q%9}ʀ&"@Ao'D]v Z 2Gka\_-E)x=&p`O$„ H dac\ӆ L_ 癯2pVX6ku+7MƎW&OLv"s(Bc.W}鬐n M^0OƠfd3Wh !3B윞,d vmٹ Fon r`{/Xy_p0ZPgg_PП*N\g)]rl%8jӥyu X[}FfK?a9:&,WEF\ 8Ãox9u ; uRDP"i,#]=P& ij?C@_-7;1^p+It'e i3*G(Ĕ (c?Dl5fb'Ž<愖mBi)oTmM/;PPD]@b ~Uu^~ cPČʁS3'˔}h,vtZ9 +jaּFU]kxk!fRw j=QMӔVa  2G _[YfM]0?QFK ԡ뻀B ڈy]m*M&CPJߕۢqB.UGA!“&ja?ro~@R9$LNLf2p:CYFTK[4UkhO@U$k:{ ߮Km'-x4}2␿`ׁ53N51iNn}nlSn/JkNr@ę'E%Cl<ܹ v݈|3Dfkpk)fo[<[c#A%l(;_vϪF@]EPu@$ *F{;}vS㮵=:b!$eQR/}S(ߢ*sЩnEȣwn Wglslb;k̓BmEާgXPTѣb-O)qt{1w r8Dn0cg2f= Ȫ>?1gTՠ;P"t;^U '!e"WqcMõ}Qy_@ FI2vm#u S!][9ʚU941G|jڲm̩-++fu_wVtT諿{xx1 ٔо4oA !LmtosjjDzY@x&USlU>pu"-zQ=Ƹ:}:NxѦ?'PPB5?]JKq̺mPӟ?5i%d&8ap:^#r!&j| ^e%BeٹOo AژAc |(ML_bL"tHR>ѵU .sYJRgVbC|]<  +F 碀kK칷iY}MիR<{n zGYQ#hNӳg3wbuz;hamcy>XI:e?۾ZUpGLKA~lXC ;j'r@+)W,!3kM1t+锢sIgR8MU*:X_vU τ"V.ۡ3緅cܸL.k g1RUeoRYD+H40}:8ef7!L0Bʏ3 .&ql(>M!~YI!{rbfk6Wk 6%ʠ!&^ )Oz7W9fccE}~։#|x49_*.w 6¹gъŰovVtPŗx@`Iq G+0L(T$XGfiDe[j*ݫF2X]$Fqrׂ5BeG˫\c0j s2˜l4Նn_jy{!lim-PلHݣ ̤(umP Ks$C*N48MG~L5RBc sq4ė1|툳vG3\7ZDۺl,$J$h ,3Z_$ܥf\lSY+y 7Juwq2Sl ~b m`rʹ摉IDb,q9BS볣,}NrĞ>TP_ ü e)MqeJӡa͜Fc̵>J5'61`}4 /C[}JP>)+xjo- .,s__X=ĕZ0G58n1jVy>=&yJJ^Ă|2.nY NpKpD ŮX?wTN&,Rն2OdL6 boxH5Qڿi_IÃhs:fR"$|Π! UAT k."`5E'<њ0ݞ l; 6,037!~=v+'O2 W勧$I藾C1_rC!H#EYxp6Rt,Er*Hh$kfATJ sYfaU@4Jk@DM1EGQg2r '(vi&A$vL +~<վA9e.~-g{ FsKlT aSx 9iP .L{?/I[ _Y;LdNf+IvG@/l$wU5R^Y$M KsEt֙aPPꪮW+*ϻLZhj3Bar4۠AZC1w6l0冒~m>#sob;ŊcvEYeA*NsvnϵZ?` r A|LI\u:EMzħd{&aʦyi7Q! [GMrNE1`kcy*EWV ty̎g Yy1 G)U ݬ5y~d:^dϘ`+,H06y<[,m7 YH`𓥘Llw1GB7ũ }1/X1 Ȟ}=O[[pbXRaEshgՂٞ,7Gu𴝤73ƄbW2XqJ$a ֟9+nA=UTЂGhQ8segGˬ:N:c ]G%'λ**>ZDI勲x틹` zwGuq!ڜA}v#3uyV}p>ID+]# Ta f[詶R“5 OqqCz +j@ ۏ(5lf-9MNG2F2lw)\b7鮄 M**T?iFuRvR2~SCZ'p= 9L8Q3b" @VazpʠN/d :o؏ZӒQ}T!Xo Xedd@H'+rjcA;Ph$G^G%gK >&*%UslG/g$<%%-)>O2JLC&޸ܗ˿%V3&`&( G.̹13eЃʖp"OVҧ-;}w아zQ/ز6Wi ~^@FPҡh0 v\]݂0V}>SXBc}A6hW1$xD7SYm{Wsq1KWY_,)HE#^O=Y !K[7GV᪕>p50%؁RFs{#'GXq4L}-f'B7kGVa  5\+6K>TimJ9?ؑ(Hb).} - vS89+d Ӧ6wM b 88~ ,CŜTrc:\N3'R U4{0_؅F;겁E; ww"pKqL 5umn}>-#$VM㓢@>R&M)>*ixI.Z$گSa'5OWS:zfl(PI۸|IvZ{-Or-DĉʱJ{(l1Hߘa'){3nHQ\#Y_˦aJ_SCk4F ?_Uk9$HXݫSxzp҇o}1w$m]%^I^]cwx6nD0Ł /4%.VkW</P49dJ)Nj*r3P4‚hH,XvL=5) е8GHj ɫW erCD 4̶5s˱W1 f XT67Qsj}qGx6趄^\5RAagF?H>y*L8nW{H(hҹ ƍT۴\:Eֹ-n tEuL Ș4OshO  seEDSZ FpuXrۈ^H?E$ R&X i>;lږ_L"Bht>θ9AMdC:=mIf~DA-+VOGub *tꝣwA5d#I]~xiDD'o"/l/u덱2,Hǥx7& 4X%9Om" 8\)|]o:&ۯUm_qSܛ.R" ;Lm78TFco^VqZk' cKoWJ +|d)jwaajMVnDcd1Њ\i8܁'ڰ8hLvtrT5| [YUHWP|vp<L7H,mp qP?E 20yyQs9~A*mkv')T*zƯǔ]]ˌth>c4N8<J: +.1[\0~d^bhYrXl?CE)@K;y5mHps7t[Nc\S{,AʹaJQ6"Vr2 WLyYo`+|_[\* fQU + Wi$RWo {,-Zq>XR  YEf- ~R١,zOV+ySEn~IrHvn bnֹÛ")dNM{=ISJ,mIE|Ê/ Xh3ݸH7CucS%CC[o؄iaMYU_hO,e#ғTXN+JK$A$#VRJ(f5ޑ@WPC!i-$69(nPij zGʭ(3epxDeD1޶H$4sXQ0a1UjOun9_Jcl ge퀎aI. vE{C&hiMPd}  iLg|zJPS pߝXuiq^ᨥ{JǂS4s(&(gX`NF? ЪYcm3Cʪ9]pt)idP|ˤs-n0D;g-$c<4 q'9Wt(NDzC&y"[xPB4 ,-FǿD!65RϚ#T#ҠZ嘢VJp9/O16J@0a]yx;!/<[I LPJ2$GKoK]QzxY\]xaDF4t-z꓀'2 C$G+xޟ^UywҎ򑓣THoܻ~ Pk.Z`Q-1_¿9Hi`bcEnҋ-*I+5WӶsmWQ 11Дh{9jt1PE xj+=Ty*Ob$D Sap4z*fcmnxj;.!oy讼dct#eEu\ 6TX\Xex{09ZMRL]mΔ_s3Z3Qԋj4xPhi/dlG}5ʉ۹Fsî'|E?r#rn1g0&SHŖ{Zw=Xu]2Lh?PfP VGzj%L#t~:98&ʺm&.QyWi=*HF:}Fܤ>Di]*="Bb*M?pq'nn7nMW$HQOЕt ]=nqr"ʠ!iwc}lQ ڙVtɝ2 ܂^d.Zoi$Ve [1-,$JLUNs)fԝ]Dμ[s[_Ancjn6ji͍ɵ+0O}ED#Rgߑqiҁ9:jH.fBwtj% [7u'R^[ 0lAFD.szE'SAms {J~U~lS^<5pDx:߾|}N_!5>C & RswU9]=glf zxe~+Yq͐lDPgC"rdG0Samt˄r$Uz^Z !6)O7vp4sU \|'dNmɼR mR]Kf`, F < \epAtA$`KIN Rj8v,]Va UM~0LAf&g`@?gRV@Yiqi3=Vm~:-wP#, HqPk9no0%;P;N"q!$.$Zzsuxl56\.4)+FB!b#G..锿R/TE[5ZYV ӵ͂ J<ٱ&l3ʎBtjj8rYJ;4uEÉ S2\?^PT/ӰԛF#wi կ?? ыDY |h!80d;C|肛sjQ Ntz:ذwl({݉Me闳8R m5EX!HѮAȾ;qoE؛meЭ]?ʅ j>>y%MЉ'g4=ƒ8X c3q7,ط;Ƈa!aa|-8ĥI2ߠSoX_@蠢J|U5ܚr{fl3v/t>|;-ggu*Wx@E4ٕքC)x"&.35L8TQ~DTz?\D$٠:U 9U_ћJZ=NuW ᔈvM<&" Ŷ#CǮ%$Pk=3@fH a!ݞ Sm)Nfn.ƸBqu3ܮ3@eVm0 sRm4_7,Hrօi78`De>Qa_OGn)lQ[-t))8'<6qԐg> z/` :΁/z(:#f2`YƷ%T}-+Fi2>9v$>Ŏv<?bR`B&'}룶uͪiKϦp*P9}E}mWHl&K0&G"vzhm~]5TwٵSӾ=LU_W]\XTW*M[BD_d 8JP^ @5rH >]ބ tzl k9؉@j*PF5( !@0O&b i~:ˡJIƌuT+%L(Ʒ& _%eG c _ّoOq5/5L9 37UlHբz9ξwLB^s3K7þblQznO3ƕd:i7UilW T^/gT@r]^Ίu!'J6 \+{7D68bex[yF( nBwm@od ZL{ 5d=(҈ z3≢ĽFJqC ;,Gk'hDH関T9vt5^wŹ3\E2Y\cyVʾ?qqէú òOB:\ W1fq+Da*JsC9)].ld`£k4@y;} ^}CaE/2W=N+ZA]ƏAAh> v'wвbGMF"r_,^BcOeYTpwwNy&Lchh$ xFʙyDq8;?j|;BNEtHw$ls*9[X8FUT?Ͷ?Yn9<; s+>}Em ѦU+Z/ѾͨU4ZhxSK~tݪ7YoZ3DcW 鞾*JlWGOz<-!aC< .|Mn<Ё!zuN\L%LN/ʖubʿ[{q>שG" q#bsDq2}%ug @}|f "EcuΧ,޷wYb',z*H92܍usG_lFG&[PPuyAUHKΔW ?_/_U8,"8N^vt9MyXyw%QE֓ŝǘւb#ƞOtmڊފ,ҝCR:5ݣ\,.N"bN{''LJ!y ՠ'n p0t:^FK+H˽G<V ~J=/ԉWk/7=^ѓ#aB.d|nD m^MA]rS[cU¬%6{u>`6T~`z2t Gbޢ{VL6ϏҨjQcJs#pңІ"ǒ>Ayo 9\ OnT;xu֚iXᕠ@YFp8鎅-GA\pݗq9(ޒD@|9!WM w%j.\h# v!¿j6[AzrzT鼼,`P1RoUzkn:`;|{(f X_#s9ۻ y}A©gqj>NVcFWrw%e-8J F8&åEuaDvdWNa̧NHyci?G#+"9@&So? :DhO}%b1j/ .b5܃/4s{\LH#{8KNJKLʸ~^Y 'G3Tw,.VH/N1)Rwz'uHSKd^ojrʋ{;n.<6)4řNq'N,L*”#q>rFv|ZVhFj3q*GX <5"_(/ öo~3 lDxh .l5+j"+x}hH*O_2N'_ Fά`(5T(#&| ɂN*Oq-hOa_lG7cdW[O%#:;Iȼ^{с`q{0leF;_T%[s͠CK҉NmP Ug)ch'n$MyjyiĚSO2.Lv*Bs"ŋY/:XeM1r?ua*h~^7:T,қ" YJipql_tn@ NQB&v #`D,.xLBtiԬwu4|A~>{*{1ܻfsZޑ;Z~J<RjvI5}CIVK[|+`SF{gK{ ?pJ":.&K61tl:)ö~ؒL݆ ֑`~eIT_\ߩo>0S{vEduqr&'aD8]}B%C̿V"G}OlGNC}?"yTdJ5y3a!scǬ}a&NHN)U2USoEx;gs#0,H'c'Pr4/r C&w lJLĞkZYr}Xɳ?o9֗ghxpJ%h* GXXG>^AN!&6qVB5EC?6mffE+&uQ mܽ_BLhI4 Yi>Nx77):N.!ՑMo}Zזɐ#n?M ä-OJ(mOj?.$PkRvV2[589ۻ:0gA:$oɿn XQ?a,A<;$+A8Z x> . EhPR`VYi1ӉqvجG^8Or~#61<~fwT]v n;_URoT TUf2 ҅i毪ؿR \6<~ =ˆI;!EQw!eNcJ}%dNNN쓡QF.)7ԛ,gl[0WsD2a'l)wxbϩ(z9\~21JC-?=''cKYsRZ^M0- g˺f(z>@k%>PHя +.>KIWn@$`qh#ZY(Hҳ$ϸZYN~$^vy:$.>)Ƈ|Tc'Q,G$@GuÊhf8_7JZ)Ynۤ}NRоl=0]*hd"F%*g TSD,@@$J*WNLb4xI_g̝K*hϣVkt,6M# ⊹Anܽw97ge14aeq*sahs6̼F^%΄FJmYZ,Ry MUӌ_ 0)r1OMްIx N}3}y]S#uƗ+Bf_z?M* X ?8L%KupsSAӢba SRR}4>W_-w8D~%. '%[l_ݠ^lsTp}Gc9Plh긺,S #^' D\5pfJUt|[=(PS֍\i9ĩuGiS1 "r]EӖNJ=pdH*|r zC Hs`:SSr,A>'dtSOwV/_ȸ+u%F}$;<  G$zSMyXKg !_*?|9JGnCgғ:h g,'M!C'z>wJ踆t@sʣ}' nk񮃀6JU*h~b9QoL$܉3FD_zDcP%J'wX'g _EcYғ_$c S*=.a1Ձkk^j Ʊ@z$_¸sZ,jȮlr*8JJz()~m匀bEiU{[B7>y/nGGjDw2dȕz 䃷8+W-:Hʂs/()sNX;0^)%YR>McP`t1v=vFvGYY( .]J<'`;i=WiFuYYǧ:7PjV蔲0`fM(Y42P&~sVM握^/r+EE')i%\YETm3Wͯ1Ώqx#9&a2R|Q*ͼ[;>먗`w3t\xj|~` ,4{:.7O8AiB ^ppaxvIF ٩ 8K+|W}w*ߦ٫ S00qҽ!ؓ ZkxF &XXmՃ{$Ey_m4ާQՅAE\&>PLfԓ٩FuORHǖp~0Ξ~fzMmAIq R/Y{U>as߿0eFsl A՘b0oIM@)'9N`Q;W09WW sm5_,ifl/½(OYRn)x у=6p~؁q-*yd(B{f·v?7^lnd->u<pd ;ߺOYy$vcԶkA@z]U7S/vFs=].'pi__vdA %05$O"SOXlJGePnԡg0vNHݿ8*L`k;~:pBa9)}jQ7Sr bJ|dhg.q=%rǢr2@3I[:r֌Vu01ڧ_p/c~Y+,%IJؠ_^lHՍC.vap!M+4K3fzȄ_hEpOOe^\Rw5{hpةFhUP?)a6r._|aR6p i|^XfĽTNhRzPB(0ƺ3Z* \6`q@^6  a&tfKYhtqځ̳N𧞪m/. }cMsS@؃eedx{BpqFLX!C-Ӎ<tPPūā܋W}ᵼ~#&bV`l<~lp(C[ekL76KM$-bxߌ74{^ DŽ`1X?dUy{} 7J؅hb;6p;Ͻ_aMH&~s9`|u~~D_ov:1F55o]uR7#^٣/O8VNc2' k{0/ݮ2!S_ɸ"&CXwϡeUPoLv!q뫻<1?ظqU#Z<?x"tH ݬjVPtpVÕ04Ǹ/OҪɯBLdAۃIaT/^ѽ]?$tDr͚ eY=SDߚU.#'73ReTj˵t@lu$F p_ 8I(@P.8a|sh;Mwύ"$NxYlyqTa#ҊQ!ơ_X;(f;gԅ?g@6x*|P#*oER 2&Җ 쩒P gly& ;jN0>B"Y ydFW&rK xQeP~*ha;i75]Ywe귂(L=KJ,ܺp#~lx.dTސYe˭oA3\ GAήImU\ͶurP%IzjaE;i\ ;/=bM_ M\IBZ-rjSje|̽H2 wA$(1MROזrB;v5#c2]kS0 _Z/7AMm+%~z( įŒYyU=%^y!'q vE@%TN@o}#- g@P!4녊={w(uʙu=\B'*+wǓYE=#x؎ЀW,ĺ@`5yaF=rNז} Ut굻)01x[-r0ɴe#dYNՏ'E)(GEC`cٵO-}X;@eށGڼGЭ\N7E-7zӱ01ye(JBcWZS%=KPB z 8yJhZB PwP†R*a˪i+"I7ϋȲ8Mkz~@p3qiDcW,b{Pa1O \^sVt,]H,`i?J;)5%2Mzf $ ?ǜ*;;}|yV#BRi{JI\+_jDw+l!L5aGC{݇W>|#Gv:̍9d{ŋnB:A$wf \o m3Pօ,0EM2!D'v{k\V? Y6="oHzOzQP?ːQiF3p8:!M-RSN_#Y쟪*_^jeh aE13" WE=;CwUum9؍Ctr 'Ǯ*_b^ !Y0!! Y_[*hX4?,!_~t$3'2CJq>Ж(]2[em}*_x`|kY-AWMbJ}Ylavr>&g NӡNi.mvF #1ey^/wB4_ <+̚BDvh/uXZV+İỹ?'dWs[ ~yx-Y* zk~b郯.=9±s\JPb a4w;F2 3,7)0kR/P9?dɢxelNn&BKq@}! 6]q! Re6F.lI6qNJsۣeC+*=M ھP@5UJwS?3&a[9tOJ%m?} Nɩ<%bJ{{.\9W4~nDx CK3w%BABkU9Jw˅ҫ)ǵ U;ÿ9wBH/7veFWt@8@ZuuuarA+K1^DnGūdR-R+t$?86r)SЂ>r t߽Ocq›26HϚLhS63Hٿo_֊Y&Ϫ|aͣ6؜Xi.H,TeJK瞊|&% n₢VobscՏF2nowt$ c6)578SNmV=)LN$Y&13@'+_>V@4x54*A:aWaKTiA_.Kbmi%W#fIH$]:uz mn5e>2d~bu,/lPo6 YaYǡ Fޣ[ 'zH^/h@W#M9wlBj˕8)N }oĸ-![.h1@}/ߎ'c+"?*VK`q@UYg6vvjst5Zio)]N=Q欥0oX[;K26:DE Y˟ i.bIӹBM:]=a'CO/p̷WiQ.uk K3#-0ߚa=0prya#NItc$n9<'KUHXk"M E3)qPQP/2.2c%dƝ+z爲^2sè2*;UsVx*Vc"2yGOam,ࠜhYv2J s]Y lIP:qnDZζ7PeUN2{,U:[,~(uݏ:iVPI3ᄇ'TERW~J A_oLx \͔P8$# D-Y9Y{2K<)HWZ6E^(ьu 죝~8-qls})iGRq4O;7dndL yt`?k% }FқrB2>T%m| o؅˘d*j8%v%W[|oʈXJfq )m=٨щkG;')A 4piOǘefLI9mtZ/Y &/x?\.c&@t/rI03+sɕF%aBuw w:zB4YwBuΒİh@[C\wkQM`EA!a/^+|,Z|tPrHKfO~slU_WqxU\'$(Pw+4yR3TYܵvh8+A_46gު\JUҤz}"lN\y&M'ZiyRsגE`LR}*{qc ?ɾ&w4>gŸ{Tg*V{1 V^{}K(9O*D$xi<`Eg/cKZB`F'@/Ň i о,IJcܺԚNM5Y8`ZV'lHV{]͸3 un JSyAB(:Zfyݼ ^%=|?J/cK`peѷB._Oѳ}{3ͦ$]`agsE3PkjbtPCP_%>neS]+uQlj TOaS m4/ԟC`qlp,;)O%>G:eEuo]*.i;rĦZ DŽcMkhjfly WqeJF=o*zLg l3C莏# g6#ac~^,Mp< y,B-9;f9F _Yha#BŠ =e > q^iu_+r:< Yz IGE|o'5l+_ QZ++;ԺޅsFSK%)]K}mJDEmf'TC<mu/ ʇ63zd/'ƣ/2uޞl8~5wֆYXOT6@|5Vи^bLBBYVVC0ZmI]7,Fa,+xHhs/OO$KQGK/?[YӴY16[wAQUP_T &\ 9&pz>p_A [ ׭'\KwㄊmPS䪶9@-0xyʀϫ0GY|֍2яZ'ef;uu- 5S17њ_x!y QL)P023ݨ8FW`j;L _ttk6pU!njN^u7]^b\C4>1g0dُ\Z][jly /!D`yO7 Ij?/ﲔ 9"jH-Ɵ_a6!ԤУo-arnmj23C%嗩DC(IKAxBLgt ׭û aEfТh+݄0CzVk'tPaxw҄Ȫ]èNz@r)d:?qH OX TLs˾M(RJ4b`pu":Th:Cwjmw*x 5M;K:Ebt`44e':D ?K%Z2N3~Årbgj"}L.ZXnwKV-#)hL`H UPnڌNl_[G2TzMz-iM`f؞ڤcZϡ-%4*pPv~?ˀ @cDU72Fx6fq^> +Dd1VrHTy&Bh$ܹ_Yky|i >v'CʒO csiS2޳;Ϧ,+/UFΎSG:{ F+#=zΫ|Je_ux &]c ̄yɄ0G{Ro6B.dkDc9e*0* MjD%m".-a RPH=0A-?u?NUI)EGhJG訽E$y!6,yah~fN\OD>BC*E;suk\:{Hu;{n0bmѽZ͍3@Faj^<&Bm+=5cAT@8/ؗqiI:\+QM_ڗGu-’)zB~Ҷ%apUأmDKQ;$pUb؂[Wͽ4pU[M㕚BO?;ҁB*PV+Ҝ2~՝J+_p Cs|h"CB'PP8uU8o&J`-h n`)~xT;S $3gbvh|?u&xѳ;.y$QRv6VV̥Cgqj18^jɀdR%\QȈ~]㥽‘ Ci ҔؑWm](w0[^ʍNLx`r//h>b:4uՓbaS7j|KK~EI,}> b >V1BCMtBK4V*?;C i1[z0ݑ_ Kҥ|I qN,A*G 8 I 7ЮAf}:dԐ;͖X.sYek􌭰0Ka R5#7Щ%2HBN크x:ATL\5EFQCX`OfLv[l=nITlv[rߺ/eEQ [lYzvO҆ӓD3s9C#'~:}oT!Z80֪< MgijtWs2GF+AuĽgcOǓD]cZ I u2KAc^)}N4 KG6#E/uk)`ˀKhTR'8z(;-W׍)t%.* (/rxyH Q*7}#7 ^M$^ ߮%e|!N NE|š/Nb86\܂#ʐ)@zA?mttlrcȥ3h)PÀHSxkE8]a$r)£T;9š-U3#A[[xqPUS^5ZB4bK5=;*lq`.42CHEjEi7~+<T' .ꙍQ@:$X&W>i09(e0WCdR.k1pp\܉ S9C@QX< Z~R!]H4{' 6ہޚxby ðpxM4]`Pg y8h;4h:b_2N{v0d~a\[:Yb=trIXOS 8z,_ZE~, \ b_&GܯlWn7n_Ҡ'MG-\V4/%!JF/+q*wɄU,z?]*ɕA9^H.LRZ褷Z_);7? UE;~ܑaǫπY]C. u-z^}o˶bu9h֝iYYES8ߵ 4Uϴ(Öe  '.=X/w w&٫#+{F5/wb25?_ƙgm!ϴg:e uISϽ;~Jy/#Cf&F*hsDDK0m߮YNjEš_n&eW:7析fȼ8F3˼&m՞ b8-x.JA}Ϥ;ƛn eҼ_! t–-#{1^a!U$zAcv|52m4KQIV++)~XBUiZ}plV }uk\c{8w瀇 IoeZv#"") 9X,i<}r=2Rb|!jB[3o3<9+F8Ԙ#?OPB[B/ЊtyZUOլݓޜ&F>ռ9yrvՄ/3 h %9v>.Ԩv.՟̰z"fXFk ǻ. p2.G^l)V 2j9/Sd_ 09V`OSq5h5h';4J~ׁ"tԭ8eoA#3SV~'J?yN8@Tׯ>TWrq~8a5f,T9.=F~T!248vZAUb waRHg: =_,Sʦ9 oʼ”if䇭{H.~>a"L5cck 40g"0'k;m+eKQUP'j'Δ{Vt:>/aJI1`J#DxY\'6}=HeN$)^A scz«(p |- گ{⡖ #YC:|hm`رRho\2ztJlz8odt㯫RgʨT= LBj(LP 267NL| Mͺmɗ kp\29;sXad3V{M->!fpfؖkȂ8'Tjm8b YN&Awݥknq\zi Ƕ|lv"y$jAL7ҰQ9 ǬrkCW`4LMT^ h/(/dxjRPcPB}VF{%h9ZSyě$.ۆޗ<|#8W 婦x`=C%yJgрl)`d$^㐴ՅUTK|YڿsOv7ኲXy`)d嵯u[Wlw@88G$gc+,,2PR+ hQ ϔMXI|~6fRC3EVu_ ;#9P'r,-0Y U30ys| B,Uq'|Q3tWbA5JGUQtGJ{|>m-;@H_n3bӸ".|M⶛ r&h@]t\̖ ø2'j:mf4wQJ́LIfN\G?*OcGCC^hg[nM-B:+R{ #}tD2@I$ LzYSB< }x!woJW╗R2gI7KΑXzn{.dB)+zː܇ B e %Q5\]e9˂-}(b]:j ,B}~"!s+2!3q3ӴOUQZɀYvH2_4ZGnِ `=1) .CN@*P/C)+̆ xe^%`J2Ԃ.36Y޴/ ƽ Ɂ|kk rU-+TXZ =VColMA}5ȒF4@ݫb( +fn͋&T!,3"H4*}~u-ߺ 7*wvϱ&YTlY6Ә_&5[J%ŞfϦ$#Ӧa4 GAv%Aq4h5u"_dBa{ZLpbђ91ZLTbR/`49"S6#B.GdDו k~|A7[ 3S9v=bV(?'9 GQBz{4;ΖجlaEDh\3]p{xTQ(+9GWa#W!VvB靚-3[g޹X=N叺XK}QP,gɼgdk?f̉#pX_eo 9yn,/g!x8)m y hBgwZ#A溜wȂB@_c O$RGe&tʇ EKZJ!w7 gE&$g)md8IJحw #(yk Ud)AÝ:2Lr+}w& l(QAL(E F+ &w DK1 xgM~}䄭-_ϡ* l&"mWlø$Pa5g[ALom;md.a]gԿ9uIiJF_%eA^;NԿZcO6s~}<I@0(criՕ 9ŋMgOȝ>\]}ŹIT./4~ܠ0T`ӿ7DX>@_Xl7ԕ JY&!eI#O1(a^Oۏ Oy/2υN>:(NZŐh 3; /ڒ})MCH)Hܑ]@"LWd)) .8_1? "dVK.'S Q50bvs)Ƶdc({Y6 mi|>uB@L# rĂLinX9  r|{d.t}E81xaMzA͕UCAV+?v _~t?}C4Zىt4X, )S"*+U6(LfN#55pf_uuܣ@A@)~HCcƫf>V p|"%CDQ*e%ວ1[It原 nIcvՃ:F@3?E=G7Rwx~U^[?||9+]qE Nװ6͑A(߻n<'I?t|Y` 8۽4y:4Mcځ"z/eRes_+H!FQQ  "@n]3ȍY*;|&Ba۪ү%nL ;  ؝3Fi % 6`4>wF~=ZYcsN+\%3K;|o\c|9ǎEt Df l]sfeg!WN_| eauUHэK< ʢƷattr77՝i)Qзx !Nc8zr{:Z^ٿrd\~hOc ^KY¨nytgEpo:V_jn7C*tcb7.}YfFUmQ>NJ=ЕPp| 6whlɜsvmVv{)^R"NjUҀӃNv H6k,ӯVuC~Q8Y*x^kDZy.X=\u c@&ߙW2JػYCñ8:ޑL $S~߷_׍INS=q~m-@B쿺?E [Dab(y dq'dri0_MI5Rѻ '7涱´ꡣG-2l6h-ꓥ+Q}Q')| N|,k qܥB/d+!K8s5u?6I֙립i Ԛ$ P_q(k3nMձ^ZlG?v {N ,y`}xc(x\/]].Lnj+^ʁӡBί'"THQC<5N!}`p N/F_Zur'6eqr>ހB`6*0h[+cIM6MGK/?R`j{gY;1d;(宾 Cww{a>^m_ Ȉ%JY ׃\Ŏpt>%n>}b ž x¹O:,+`Uf? 8)}GGS -+3q -]+4Q/§[H˶h) 1: چg> ';;cI#{jlq(8 ɗ:^/ƽao^CVPPj^GZۢi K/;4ax@ ()(DlF٘l4ݎ=^4aKNTɟ̱@X`RB]CO0N {r-/U:kgXCzNa͢IMx]B4$T%}e*Aj| c[(gPA0X5Hu"K5A+շC/ UuS:9H]]SK1E9VO="u\٨/?D&ԼOc蠚B^ʚ0i,\fcDAIT]/Coz1 Q)W=U?3Qywջ-kQ'2\᧖AOmvI*A0- 1#T3E<:o!=٘^Ζ؛ԖyjLu<&J8Ce0Tzb0 X %eӛ;}“sM}zDSe5ڑ·Y‹(f82ʩBr񩳁?—[O׼䳚n+&;YHlL(&#MBJ /ZTlmu ȱ}EUa>Ϸaſ.U:ӈi.Rjw0Rt67 )C`M"˄>p3okQw?A&gԶtՎQ4jly)eTh?""K<4Ǐv4|8U5-7v2(N;[~U]'ؤBPPJ툁q?#U/ xt-ʘGybQ&.:7g ޲P!G>uJ={w=cȶ:gZXOWʰU4 Y XJ#P*\|'ubu[+51n[ߠjPAdmp.sE.if"7>"s3O{FuotnS+{׉5Jb0WE[Re.{k>}~yD԰z?6L%9l>i]ɊyG i[>^F3e^;9O"D@ٲVls.'fcdWK\d +uOr*,9 ʹlqzV|Ԡ H1}Lwtxݐ `q}'|bC@0wV]\O~|V|j=5}aMZXm\ˀFY}8]`N vwG*Ȅc>_‹XJ^0y-q#CbȺ} $҇UքTjg! K3=9 q!UIelH|&w\4+*2 }Q'2{tDcV2]^PQ<J2'裎 B:rv*_T.W;Uo ҲtZ*uM7j6}~-]HxMUL.5#~&ukhm`ޝfLxD, oX6 Ǜ@aOPgWqأeXg).[ CvœWM8y,OPY=&Lf_12W?@)t֛'pنm wua~SmUesWo2ӿ'oP cnA5%mW\>߈_72Hs6cZ7qTA LA@&'l7 ?*Gq¦vDLAJS <yV5g݌D,u]Jޔ+)Y q &8rhfrOD }!H-2.!?vto a`5>r*Ҡu0j 1KfxchCeN'c#.xqݾ[X:[SNo`q zd:4A3p;$65 ȳp(X\NO9B2}(7WД?n',ӲP6aps˜gF"]hLx%q;Kg'wIeqSWѦ;u\[6͌&MS!f |Z5XJ*WD1>R6òtsDڰv苺;\F4gvv^V0d*p)Ԟ9kGFXhʔ""WGcpC-ȦUc75Y~#V6B^`1kf-"gep (]4)~QDYe.Eh6p^r}m {ث5جA]o]*g]:_>fGFJ US*KvuE9950ˉ}ѳc'Mk_8{m _zq}#3P\PCE8ɏ:UїݦQ,z"ڝӢM|$_2 -OE)۱ԁ[S({/ vwi"sGYτR rAW 3$KK.hN5BdME`R`װ7`KϛI[˸5O̠3[y;.T (rւW]x-F F;w)6W?A-ZksGdx*K/eqI.d_eL#XFW9Cp΃ZQ' FU׵h?6Ժ^E">Wzp}&!} þ. :fS(g쀯1DPøWϰG:a&r]web&^җI^8]uW9nNi<+Jx }+ OEKG7; 0$]6l3G׻'9Ҕx#wuÙ)L{CR^:NX<^V;Ә0phaɟ>x-[?hjFO+$II;GLM\쫓f9 *dA!Hеd8-`-44ؼ5R)\%JҤEg|=||X }YɆ}RihmCu"/k8Xm <CM̤ڗAj - -־~i2Q}Wq~bznp"E?䚧y\L$3N ';xG}"z s=Vlmrk/Z1\Fѵ/芷w,myŦ|&p82brV_ݻfp0dOXN ^{f@ŵ݂$JNB$o}@I$x|yJ(ȓH]aU a&u:߷ǙɆ2!F##]=[֫cb' Ybpyvz{{X8)gGL3K)0Wkvr0bA ۳%8(غPpїQà yFScAUU}|GTlA5w.o?ۇ+iԝ`J3`J%y$1 ,Uuq~teC=_)⽓7!-qO4ؔn5{rlÄp_y0Ϫ}̫@\ o,G{Y4ؿ,DMPxA.7g$-O ) D&Cye.Tc)z;rG]Ɋد@g,{ݑ{[=LšB4 zJ[?[,u"c)qeTT,qStDPlrAoHI_β62O/n1#H2jBS[$^YqK]sw|ṅSN/Yf;D!- O00-PX $Ūdʸ5H*&N8X {O1Nv}cVn8w/e1+Ug)8!}D&׀-P?h (‡ 8|!*Z)&뿰yD۟ /<0=|;ܣ] :7Rj"ƾD`.)'< 83b)ś<%E=vFkPM#գ+!ObJ;ν\Yf-㶦b7Z&. z =Cr_PSmCZ4%K,s&wQ|7D=1_Zm:PA…yL?^b{ZFg0ILO"HU? \~ҿ~-i r+#B&3:,A|fLbmc'{iE5 Du?حr+ Ėe.PԜKbhHəpQV7߅> ۫}bGpe. H =\#y!F @C~!* G4zu(5+QI#&lU (@<׫6@qP,F1}V!" S}W$ *`/yxgisH+U9&7ƬbC_|:pf#+g#7]tܢ{+V{k`܃d$Vvו}+$XEH[gyπPU[ps[w^t+dYte]F9hz~ϾwŹV _‚;bc(H/D@w~yPirĐ! !Zՙޫw(FN_eI ܛDZZۅ{s\Sa4anO_ۡ<^R#.S+-c3]ʤ^/"7iSs}=crlS_z 69~X~+|D9s<9'plY{R G)߅d*pgOthXTGNd|T^Be+L钲Lо@zX,xǦjt5 SMڜcöDD%B?yVs~}Oʸ5fӳmӅHr-#.5}'Fi7HDLJdVъeTq83 UdP4N?a%XwT:Hd'@;:?5z99W'ҘTK`u'tuPDk:nH~Sf~"quٺnT2v,m|3={Í 9]Yͪ޷ؾAl`ptFuymxbWpcwIB@ Q\H*֌XАT\JyStِr^SC9VpW_/a!o!ʹي{@2ON]`8-dW[RB9 2swN隭=eoRDG8EV/ᬨPGYxr=Wl^x=;$ʄ:K3$VGX^z/ի(ՍZ.DM̴Ո'K (Ww~nEosR$~_`OFWغ|O򄜛O`D(UqD6G4,Ҋ8.O՟yDWD0 umTV$L}D?V(}2o/k0G،7]Z ,_>4n)an3zE}v+ y"IS4?o&w"l/s(ݧ.v*W$ '@Էj m >vgo}cHkP jSU wua @ŮUA(Tʯ!+b>3W@م½7sLv))\ دɏ8rmEɻfu*?7NJ%7P" g5B1rl;:o%E*|Q g Q 8pLK橫&U\%9'cR!EY٠ΰw#-iZnYD:4閨THk%mWp2Y fUQ}ql7_PLrl*>@p>w-FO4nxf+"܉4PG Ad{ nFUR &oJF q׌?sA6$>s43tQv0(OLyhIK`F*b {GUyr-ZiuavGR$ 6t)GNC\]#ӧfxI/g]tXMp"6ilMg_X'q(LO!BjbKU~fU&9ߦ6>W^UY{5 gE<.0I[F:tr6a%SgBøˆd,|"#,^vhN2@%Dl=΄`ZQp7|Pז٪Zc;bUf/D9]\J^n¯2-[&D"CЁk]%J|"RBsa<` 6۳AT_AH2a@w#.&6RϹ{&?nv_FΖ%FB/sb& 5cխEAKg"#'<<>e%=AТXpR:l6^0f@^8kR2ptBmGQɕ%/LoEra')(UESm"C"t `c.nZKpO;B6z a.4wF"`8捲hiݥ-u0yr(8&?{1& pjtoWN[$Ў 1&zôC e66u)g[:ۥI>hYwW+' }?TF_8x:ūk3l&ǖ_Əm$)UZF aHD'׹O u# LCx`2oIE+q5Ii#*A;Q0+?YS"l5ᙾI]j?te7.GP834N4PEHшqr,`{hʢQ3iu͑AZ:u r:=L{pš !~Vkng#6>2~0 a+F@[ Pm$N,S βI/ ZL*k h2(GsD ey +)Fαu ^Q=WЌmK] |S ?Nߦ $SU4 dq6b PUJwp9XعYMl kB9KSEK='YciCXtk}UWڧsVgcTl<" U">Ċ (?u4;Lv~,7 66X]q"h] o84o1lMX&\DJ=\~򁨡% +S BY(3o=OjN̆S^qQr+ c"? $v~&3yBT.G2ژVU9#6dWpֱix='+6tT=ofr&>FZh.zՇ($JPC7 92(5C@ }+.uR8@b0K *'J{UV\db6}@ESEZ=VVJ́(z[gTindќ$\TU; W; VYYJIÌ z9Rw??@"|WwN5"xР@E331a;W;1ox8Ҕ mjd ";b?`[ aƽ` GWH MCT'<[`nOE=g_vt>fkqXuڞ<4%^žk& ,0Y}1Giaνsw4Y4^9 \ 8\X3hGR=2Q 8-iM0od  }%=@5J8٥ө{ݰdjNA6+*Llf'ڟYb7@Aae4 ^8=)F uh DdܬѲDUAnO7 =U,01# *uj>@Vp2ퟐf>&/*X rXzbA9u[9 <0)C3U^zw yWi$5UE6,B5G'/_b t2|~ ʲ,3hDs)"7.@n ||ddVhr47h2߰Lte.)M ȀCj$H\ůf̿,NkLL7T2jV%7#w`pق~C 1N,Cװ*}F¶m61aG(Md#ܬQR>@{x?ԐaKM -+CJg-Z퉧F+Fri2έOX_UfT2 fi&7L*3nȜP\8ݍCDۡM{] ui¶ ܧߧA+OѶ!z8kNy`Xy e=qLr)ɲ4pY8 QI30BV&=k  f}lzLoM벍(Rl]MF2u|*=-o|[:FGcZCσp3bY+%oR-uWdT,د?)AiA6@bR"+ lKF"U%f~$qc˄@.{=7+JSpLS%+˩?V૕wS2exܰ}p Q=R55{ֳ9h?dv+2"oL?A"PnMT@R`k ù$&Lidw$+'=@dU.f:Zeu:86ySsBS+J'?X}gM "a{' foXۏo@6$![}XUCG`~ct H28}fp!WZ,Lٶ1At㭹|tڀ\l,=UR] )jJ$lŬC]J2j}|F`x#eG[zm?,vVkPÒ X-^;0IqJ#bK.O9~M[AFiNY@e67=lv .b"{ņ_.O2Ն [K*f=ģl]d50<:jdFҘFHs*Ō(.s*HqSpcG*Ѡ@ xX&6Dʾ̉jr&5pKi kz}`>A -]pzUʳFL{Eɏ"?{"B{e x=c.tNk187 TD  e/˶ToOb9.ȯ'\O2t\._F甁#?f1+g5 @yN:`  TUM@^TLe %d_:7;p *5G;v&)RqewڬD;t@DLpc7`#YOgNK ӥV'vy& ;5q&%Cr~t0< c_C`\P^3v#~xT/#ؓ<!2nak_gf.R[A_ Ѷr_5EpE 8n`Z8t꛾!ۂh'%*ї/]c[RnY'"hݜ-kK2DaEV|[Q?dneWS^Cg8 Q9i:U)Ǟ_=)j#q'us)k0|6t'TLD%"[5 @0*TTes1WȄ+(4<3L@5t9YLml\B^CMPϟj~A1bMn5Wd.KL7ð*}1 9E-L=# >8 l ]})N,ge]w l`HߜDȞ`CT:4@q5!"N|=WD۾%n0TSZD<׆ fZ`.Z•/z=&>07"YOvuE~ eߣW?e"ZюA8zSAҭS*1$}:T\ MVBY; k)4؂ nMofEl!h^;ġ[E*1:RPRoڮ אn=*T8*&mQ:U\ 6n?//Ý:@qတN/+sfĂ[?ѻM jU hk1T";LIT4c>dgX[15V я\Ŕlt0IlE7BKRLD0 3 'opX$@rG '+bׄ PȤ7ƛbj9ot00!2Zk= %qߢddV$oiFEM6ؕ}7YE3xCb\cDnC)t6+EFh5rfISBA%~MASms¬`!.l$jOەh \](\O-x :͊J|-l !pZ >QO&}å#~S &8_#BED̽)|T+/TH ~j8vv~_"+;5lY/eEUHg*A i N,杚 b-PPzJͤ*p_4Mj#( :H$8\<6DK{2ֺɾ$9 .n'ٯ`45ʪk#%Biˠ-NF !7tAd*DwXoIAuf5D?1?{a6t7er4!8b k+ #1W >>KޝSHeN&AkigEĝiހ,IEp,y ;)(b0Yfǿyxtg[(Η@nYCc$# `!W,G?BEȄIxcbCڼMl c=5Z((#60֎"B]I*HߘQ 7eC4^ 5SXEQf䪩~@s5wE֥O|; :d\D(\-g/*. E :ȾZQ}JPtD p-X `mܱΦ75U"l\q歷I‹:V*zi|rxQAqN~q^i >>̚Zy:?>0">bfa5r#CA:?[XdK/kdeڼ6&D0lS)zs3u?.n%8XgG[?qsm9S&y3˨duH%Y'QF1y˚UڙP*$A04;l0D@ήT1Q\=/Tv!\^Y.%Gۏ5~!hVy LDm7.S]f9&QQoR!@Xxy Q,{ ܬ,8TECiZE{rȨYsGSa nnj]˾81 cM:YDL503Iwf遟s `S COM ]Vv C!VcTf,Ub.2C҃B2@8lG'M/Lb 8*rGiJͶʂ,T9i<}]1ޫU pz$<zE_"yC2!?3/'Sh~lu s d@ %J33׆Ib/x%%|E$yM?;T5Ib/U|CZ:oHs]^'gϊ}Hڒdh2 o阩 K(&hԒ苙%ezL`wdгP^ /d^R 2JQ +s:$\kecO2-xKM3m,lÅ#i¼mQš喛ԪrskɘN_A?\X2sŝq_vPf?X( JV[(?B4)=E+ŠQGJ2m;MD)C:Q@7Zu5e ܑ/KU>u7J!!(KFk,o$rGؑibF9]Ƈ&JӋ Lô!HϬb |q簰6uYaZ leG#>3n|[ RzrEiMdXЍ~k(L';+PdߣOdӓE 0[e`UD[2Ln,a` KWfn$jD+GiRS(uA٢{MM18}Z!ؘ- Du첅J Q1j<+ /}Ue^ F:9tsG'\Q_bk6"TҐ7v48!D+M9u۽Z{خ¦u*x1kUӬKy[ 3 4&||I"9~-hy[$K&;S0U{&szjF53ArU1[$IGn@}f̼{)?SuU 1[% A`QX]h2(ƬmHՒzfCm:3mLW0x,r]*g(?-Vbi(4+m9kkRY1 [X!c7 G]vΒpR Yc\x; of ]Ua1|r"4zv vKug6a _cxwG8cJ \b>| TڜOA)|s^>Gr}fkT5f,n-)Ϊ,b*O3HM|6V8k+w&-(>ќ%>h/(:U= 5I*e,jﲝ2'zx;)R 1 #ۨ`os[QVC7pc)2<_zaIhj1n-ߵp_"IQ4so_ä}PYX>?OĮYu50Vl^9-?YVVZUGMv[=y.0߈qă|xCZLiW(h]oh*尉Mq¡`(!-J_a6xx}

#}8 t pBVGX6Rbnԯ %M+j> -b^z* 0Igmق'kz1 ȏvPS}"l=]8hWb_@ ,0_mN {v:az>uR4Hz<ι!!ŲT6\XoyjI+9 /̌P+4n:CGƁ ͼg k4;+k pFk= p4#,{DDN=hEOn >ԫU [¢/|o |dzw%z{;jo870f7|=x S!mД5D=Kgxޅʪ~5NLtSSxRQ{efT4'^p@u-NgyօMkA誫IP G+j*yMUlLTQ Nb<vlBBsY?g#8E<=NִF7@*&Y]\#pRw(1Vh6^`)oo8;?10Kv'],_Zx7||s d3يLpeYǃdiP`Z۳xCG`/A %ba`"][6&Sk{M'`($j{rW.p>ȝ;uۉ3p)[vWQN5jNMnC@3XaYU V@[1$mlW$gS$=N|r)(+#YEwtRN/>8@}rWS Quf#0 FMTACoN3[XJhB([|F6~٪ÿ0™;?)Ѳ7Foi*3+`tSU׺&Рǽ4_yPryӪQL:}F<sXi /k=VM܆:bj/ܑC k_}ЗD 2ʄmͅ~-@MF*wA{7&ͅTc%odDѾ0cwseˉi\?y~+HӨqCc>^pUgJ^r0R^cH9z1jݤD7XT3̵WS@u96w?pN> 8X5D/OC\A: lx{GEX"QKPNws: N fbsWpJгi6mTd!sb<ғ\P'y~Q?(WӜBKt@"BKt59b=L[{w[@Q]NJ5E -d!w ʿA2K]#i=-Ai]vͶ>O0(3일L9`o7||3xFH>M:)_^ڋk# Yz6&HB1e0bl2rofB(^6*t8P̮18Vʫ Ԥr1@7@,{:d 䚩'!a0x9Ŏ mr%]D0A´[UC%#]g:\˰.ζH[}R{$l $miDThyMŠiQᵺ?J|rzh+DuI^IC ݓyw6'; F*곢Aшɼ_/­&ŋ-VጪcQT˩H"~c$$79ZKV9+gacv#+S8DMt|R}6f_=Λ l`K.Ε w\4QNbѬ<` {#Ĵj x'aK;^Tw&-O&%}[Ͷf$Z%<$OE^ MO_uhv$e;iQPqU'.N GDMwd8*^v.< F{)逗~-=G7mǤ;j7G?oC a*^nW4rĮX7/YHyDPU` K7y˺ՎzE;63V$﷨`k@k`7W U"7kc &=ⷤ 1f: dVБOjh0ti}`q\~/G{$ˌ&3ONذd&ቹCc3[;Hٸ| HONٞ'0W=YEѶ)L05Y~61g[dj;.g3>F'I_qS8K`,)A N?>H@gVEeU;K űD2^G(;;~b-j)AaǼjP0خ(0>oџMwJi$?k޾u4 1[*,vpK^-/;oʙl$I؝!ꉷJJxQFZr%&- qΟ&6"w홴tz!J~EA\]eYHreյPo"yL 63Ϊq%x6c 88+; x$}Y{xUP:,"ܼCѮ;Vwh?'BWzƵxP|Ys]|/l/;w- 0a[.#Zu'I헽XKJД9"ሷ,,%xXH>hez^ &:*3cRxJ[rZ9\*u}6D0&ǠGXIר.8XRb;*a|J!@;G2vOfE7TG^"UPLGh {g!iH)9*5>o-[}q!;3 "S+[+Q 䰃A\v(Q|sH([las'^zG8~|95xM09 8+NӷW3hT1rӌ:+f4>u~&\'!`͘e>5.iG˴@G던cW뤆&0%z0IHhăXx'gV.@΍b+G#"Sj?H srln> F:@=d^|> EM%Yd4lvyL:?/1UA[ 圠^t:h Yy0p:/(*G(:q1DY`\KUnbLL"1 nGNi!e-[{*ᯪ[!kyݞd. ]Qgi @gYXAXT!,Up0t(׳WDT$K,+WlMm^9RD2{)=Rw_0b;&k>uFIobX; f7!/"+-TD'͘Ɛ;̟+hw)4='W0Y1NV2ѽ~4[WV zC&kǮMHnn|MSt3JQI]^pr+9 kH2;́@te̕;.Sٲ^N_~i {%p ՕW9mOm>TPQrD1,7wYIG/X| ?RÔ@de7fAzz1z׳퍒[%]M=5(9Daٱ).pݺ=j~2*Hn w=%0 rL~Z7oU%!#\^_ .3\ѿ!{)_x1::[3 ,y M׭knh߀.y>ӸoNCChFgi_2ћч h=[8`_(hժ-CBYaa y hp;La%1iSW&Ǽ NS2UjY]@>,P,yAK]z@_5;%2V3ƍsӡٚ,#L Y3O(UCRYD):DH M}km{?ӫ[çg`nRUHZ}l-lu%h#BENb!6VJ-6pkcۗW8{wV ޠMXye)G-yg y'o'N4) bܴ5}˫񷮼³FqЧۈojn2tl?06mXV@o<QLvrjɉGVB$Hm""S8sT,lv % GC}xBu\I ApR9loB-_!/=V([tA# !WSj33("0j㴖+%3.>Ṉu\W ÿ(ԅ=所 SZ~&(YuL25'(: ^+*ĪHМ~Ţ64 " Zτ|sJM,bVnTv^5,-Ewu/ꎹз jeE Hkoz5B@fUW?w"ޣ|!e_ZoZqռ ٽe>yPloPsvMNb`&m)/PpWA EQ2-~c󏁇fMU(ILT*,n} 5߷x#)6D9it KEJfu*?-͌9^jY2؛AT\ՅVl@S~ ;7}ACNQ2u41Rׄ@CWG|wf^uko{۱Sꐞ0+V9xTekFH"ZlFa(3z ޓ=|,l6[ ϰжvv |థvTLB L!^QH/{_S,m]pf@|Iڳ0>PD}8*P".[Gs=S<59#9蚨8kJUWMZXmOӄH`YgO4UԽ.GLAA`#d'yg3 {FFchU3DtJ`)g`[aDl?1ůZXZ:2PH=cJ67iOfE刺qU'Δ&}h5csg3LfԀb_;R7gGf"2tk~T'pP %O{YQJj'Bn3t6ha5, _Aa96֋(רcB'|vh3֪,ީ\9Pry@FAk \.9lkSl~X'G /% ڧ܂ՎlB|r $vkj5 ƾ} W۳?tor`'tD2QbF>TmM }>M2:;ncjc0 ?|>|h]^w!T7"q~,uoctǖ$ '1rAZlH[juZgYƗvN}S*u%yoPX5oQ)gw!Z?dNe ۞9r}P~K q=^3pؕ tmK/5*P hVMƼ`i?El>{V"k|,S{r-`Mwژ2lIY%` d49đ^y<6{a Rl馛$n aFZW{~,ϴ h&!D=UzVc+"SvB 36_ֻXNj&#Ųg$.:;S3;?Y&1 'q[F+ЙZ!ܿ7z: H%au1jjĚ 䖎K}' M-y{΅WoQU6/Xm19lб`jO?W8Hl2hzà89W A0;'Gۂۆ-ќcJ6c(^6W97# CI[XOK:N`f@ Sf>SVz"м*Ƕ0]p?1*?&Zfq0GZ٢y|&Εܑ`> o=%3ꂤ*ᖴukr2%џ#@]M{#j!Aoē8+ވe\hBZLlc߽۳MA=FC,J%[#v]oXA#y+M*sU B%l{a7\>U.ؤiO@qX&)R)0PEI>$G+D AW6F6{f:*o `[(tcJ*=F!;4UȴM`D(S{̉Iis a]k"j=I] 1,ᭂ?5K,(mSKi9+* (l$$̨m ffÿ)M44J`~:^;T!~Ų$.eik䣃@ǭއ)ɱ&^c5dea1-Ǔep?V[8vܑ (ܳyW>R<|7ɧG/G4z!eon$U7rH(G%-⫉t6+[˟c* - "6C~y#H*OE?î:X'0 ~wcomJ@^ 0r9'SnbyBwYzdroENLz`*i2QV dT,_;v cAϒˣdW%K}{jrW%:{z?X%+}wx%aޯ1ar"-#~skQ~6=_*qc U!i;{ J=@W,6!ZNt"w G$jxw2*pc /IQȊ0)C (1Jd_GPQ`}"qh%\Đ{9,mx {cɛ*vCſEDC]J4{z}Cp~zdW jML{ 7:sM͙=vt1myᾏ N/ Oxڑh_¹t)MrƜt{\:,j[?4.(e%G箲b -y}2볿@AInHW>qm?Ayv`ޜ<=Sg ekߣ 0>({߸Ѭf$>"!K8V xܷq;gmZUC:=w3RdT7+<|Z8bѯ!74zǪIsJi-wf+eJ!ܼh:֦;t{w0xJ*F&VǕ4'vp >4 ŕ8~9E/-6h\xqoqy3rk@,E2G #+iҟ 5<%O#xZZ.MoSqk62U}`ܞw.":%}[dʸ/lFOē.k@w'L }vw<#>- )xNPB{PB -ߙd#ଇKFȬ"Ie55s>O#O ߐ .P X@?~GSz|vVA1>zǣ$ y'D&/RaΈc_x?selZz<1Ǚ| eZ#86+"}Sogؑ9msE8G΍?G9FEI,rM}z|K)-R8L؆<ƞ<QKRF-x>)'"]~_330w+R,L$H-H\K^aP{SyiLK&Ek?1 ;X_!Xd.ZU݅*2 gLFu1ڢɄG~&y_2ǫq\bcu>8WL`l +2-ȖAjQ %w Ay}z2U)vK6 tOlۍ1j]4^ҩ'/>j!8Jp/huO9ZhTCJXhZċJy÷۵*)|A܀V;HtP`x|B172!VU53W :8p=F4a(" Ѝ f%"1D?ky:̨TgBj2+vdc3Sa&jΜcdIղR4+3~^Ǡx’@4qaϔ],# z.aA=7o Ә%Shҳdɞ:*ݝϥv',D}16Cj:D8`3N%J_Q< CymO $NF_a~凣u-<AdZ3XoN}("UP6S:DZḲxTk<-_$+Ij;X\jУ4z]`f1uAzj0QI5+tnePۛdн+T{!nLF[X:1C9iCTZ'wux}1A}v@b gջL{,雍u@^Fw; NfE FAos}^% QQ ^3sk (661 u4WN8Z^]|~֠o*ޞ _|?l<ɨbo H0D'T(^!vؕ2-/grBoYJn@pC6p:KM0Y52u}Bw1O~xB0r!i4e7 T] Vs[v?q 9;Ԗʣ`i\d)^LxS45ܝ p[ 3>.FͿr|Pursgc1zN:Ui NZPs[&DŽ, )_HF{?+~YR1Ac'utűJiw)x[OGI6Fxe3^ -˜>wO%廲X_ M]* } =X*`zkW$i2rƯGY09H<U2ц}|H'D$FtLXٝz=+3*a.R̝X\!Bs5r|ژgP!R,x.hEur7,=I,mtuCV[F'gRc;''=<]X#}/#lT<c A\gSVuUm D4t)S.B.NZ.x 썔8s܉3zVKY~M.A5?Sh]A&a: d5IYd./9F[?>\*QX,b^e樉̎cºæE]!vFa0g|yXtPV3 G¦& lЮDĞ_ /P]鑲K +Ix$rPq)c?Kc^kTu{\s$gZ'rq`{OD d:\N!W:o]^&DNi"S>' u:/5Պ텼ggژ1> ]ZN^P"IX>(E8*fb0hẸ'ՓEAadydіE4P O;;)ݣo*qņ;SeZ~t,2ҭO"<`}z_^zBAZ19*I<< X liM Kp݂eQN0ҿ20P]N~ m$ޫQ ;,BA@&l#*2g[9 c<)y]~{'W$JIu!hr銔tHLNnTyP6Jbq59:%N3mQ4&$24urS[~6i1Hhu%r0N%ya.#fw&sdymHԖ7m,Ssh V_e& ?az^.Qe0f ʇh6ie%hO%Ժa`=Y.Z)-f*̃ۧ13'~؎y:Gu&p |vvNg{7=hGBDܦj=BLMKk0|ʑm! xȝv`_(-|K'MNk2{o Jrd?`97 e4p1 &5V3woܯ%Q&''3V gp1wSB_,6@r}BwtX3S~Z'.||?+l]#|4+B<2bs2w0` "{WktP)'!tz.]-REGUd5Bh nje9 `D(z/ W= u[ ;b?c)tuT"5E+ )7@hox 8r~sVT8LL'J}=r~0.0CoPnK-15K{0i\H m >ۿ@oL_vGp9']0(J5gp=ɻH>ܜuˤN09Rl8o01b"zG9{/AF%9m"jR7=!/#w6rK(q鶈xI)jyȇnn J@`Q+Al;;  f p2tYe . :}hCn,>o}G/f>V{twKu=5D.:AT #6L>+XUiAWR;!iNGeD6pť[W2{]KZE\ mWn)2ĊaI1 Y Ooy {^a ` 1a=H+I݌X{9>ʻu|'a_@fN\3kR^ 6x4~ZIFir#&bocTFH:1>z_.>8gS, Vsx/ ! 9>e(AF]r?~jI⺨}(߾wk btfW-":%@<$~ ݨM AH6RI \<znXt*WpVܚSidV+ZL(*@w$Y!U2ʘ~7[K8m=tʹ)6N =:MWOT`V c-owO Bf޸_BB՛5f;-%TnƸ*sפVā^EV 4Nh(Ε~"W!rE'p ^g.RM]DS)B Tߒՠb료C6I5z#'>]05izs|0ElkA*@|d>BW87 v`ft%C5/nf+zje{g `p4bLolNWvd }CۼԌ շvV&GrSB@.Fi#"n*nE Of$x x`ٮyHG 3 -!sT1/iq*L-6\ D}>)WGU3kv@h#r2,ko=/W"t<(BZ̿ wp+ɬ\ҁ,Vkz5* ]X@[XEpGEW,eKpjMuWHzsϕ uJ=mE)1W?ҵ{?>3Mt.bW$rǙk[\[/y@i7Jeqg3]sT+W5Z,cuI2UZyaY[+{ bSe4O"(TAk2YZ14~gQc(3W {P$ % S#Dx),Gj¤G=u{_i(PB )#TxI X^-r_YFgq`sC20b;v%o!&Z@1,xk逬/)zz3z_?οb0VM\3p&]uZī I]qmgOp~N^~L8D5Uғ}\ =vEvS~Ӭ676aMW3gs#sJ4XK.G=)eZ$7ǠK)i)qT zF"B?$i۳T< 6nK|g!O#D }Ǘ7FUGQђdāe+ʷDLAؔq-So-a/4/M$5+ 6c 9:j|ٵ%ɯV"7?fo˶ sW+&Rx,.P6@KϨo+O>EuB uēyma3z7+;ln'P JݨI6~V2:E>Ը\`Drrc/RR)c}nc#]el\\W#DIm~ۚ0{&,UJQ'e;&5`m]4 峺ΰOqc^^."$P$4z kmV"e&J<3}Ϲ98*ttg p85!4=p6` \K}м1g}X7kL&\Ц*_Wc`2 z6>f oY8V%:|Ss^C ! ҡ4UʒV4nbxUo#V2 i_4{|Yȁ>p< 3u ?sv:§xaCQ]<782~8WI@mW6+0rFиֱ]p;R T["s]63<3Uz|*doH-e" `h9%7 _zRSP3+<QTaUmmw\I8dBۊ!~$c5=Jca"sȬqgZʜ0磻.5FJH?5Er&=3qe2PUu N&Q\H{~HP3>\SE]4RdN_FNlǭ=V ֙@Li[M7e@iHθ6<1+F۩K0h~ՙ&iJ@.a})nOEPbډo**ny:˻ԛ'Oel_ m}Yx=Z}ZZ:DIh{7&reAq@3XPKO^VK@kb^ウ]?VJ9i˄GKƫz Tp ?e&j7QD*\ޭW rS jrkif2n ȉFސ ~%wTFF_svE&*lح[ZJMu(ĜjL.zmܪךS7 6=PQ6 a ,A"υCT %!N1qw9̌_&Tjw0sÐFiT( A:l%}3~ 󉤒3а%FV?H!5%_mDwPoi"T~D?8t`z>e.S-2):]CRC̣FܜIMuF!;@3[#3Hgcw!r_*c>"O#aMJlexT=:`$9k!2rnp qxlzV',xͲSV,0ڡ 6A~)P XeΝ("M*F[Y>TZm1WoD93Ina &ycڦł^@nh )-==ޔIN /c3qQϢh#\3I8+"F݆>7ǙmBU2n:G(z+;U-ئm7 b0`YLƦDu+mp $ B1Ae[Θ=H6cl#B81]KK.ٹIsh E@z/XA6?\<Ưtl:va O" 14BGlhVFv7L; rjsٷB>W ?Tk?#R }kG+rڸ8Ԛ ZRet lnYz!Ь3t9^y'ȇ'板[c*=JW&6Įvx++hjVRimdR0@}nO O JBf(tOcU5 5`i*tHs) m1^YP_!Kv ʷXH&0p(Y#a #2S._}8'\@x MJ\(V:h lwN~ufwʋ# SLz2IH6-+'/aY}4A"Y ]",cz8cv6sK^V$ mA3eM&_*" >4hT0D㖹Cd wOzkO@<=>+>pn.#R7I;5Y*8o jWܓ$JΨeW[$ϟEsZ6>eVxբ# 4"fL֌-yUуKmWTZS/)wp:e Jp᩻d! rn~=>"*kФ fXF!2QCqX!s)#y[| C//eJ8L/Є`rƲ]MJ1 Ó@ xNd!v^8#rDA l'_4iJ3Rq!O&&?xwo (aYv-L4E{=,5 txf-*Q _$}H݁Ž pxdn^!FG"[oqą+KL kunsq51Gq=\HRBN#᧱^OQI){ŕDl%<3Af| q*KhԱW , O?g53n R[@lqMɕ\o!PwiԴ1=n`T; oe* 䁩1:i1Bm ^bz,2۬ȏ'#*ӝI"&ZǵPljkqeP)~IIҞn\/=D~Bڋ J 30fs;;.K].̶JeIB_yTfS1颉TϏf;#t s.DC(\PM00%;*ad%S?"2d{gNnbNgl}4]ð(M[eu&"l7 $-2)j+ "jx-ESAyLէHi@lEbc'?K;`ZoN=6D{x_TA9x6/0ʈg܄m#@"g_isF\;4+="4Ba[J4J]SpHU D۶( ~]*c_žNb$cL"|#%\\3v;Þdh蘈d+)P_3^џ%B9Dȅe,iJa5k^6HVFnO_s!ƒ[82s3 4[,@4ߜ .{tZ.D'L{X>D]4*ISoRN[` mmPQIU]j⑹&Iu0mF x6IX5ﱽՋ*t.D{RGEv?*n߭|S4:N-8;3eTl1Sq'CWOcBWxBkGK_Ueu9BLe̷ */<ԗӫyI:A Zdʜ6eb0!{5YTSkR΄v",z ~ G&{":?pa[PVƎgHã%P8`Z`>`!{^cABjq\]ORÒV";arzAZ؛ u`59$>5=J)9]콤 lz6;ouOB'^4n`7R#Iݑe?7Fi+*NKq*Ϭ| X~ rY@<ݡTzd[:qvLOcRKy*Rۄx>و8.iB0hN)KߖEhW&ዅAV6AiD!hAjM} diZ`h_E>fW dk%?FD֘#hv%]|Fm?ł2' 7T-/YT[ xBD, Mx]G2S<6L%$@:𔙜lcN/`7 ݛb-Ҹ37uMMK|nLM#E9cڤ+>]Ӑ+gJ"uR:Z~ aL9 @K#mf٧x/;@Vlw[gM6N&G ^+H赜6ڽзGמrxꖫU6&iQ(m/"#COu+am<5U漧0J&|  xiV) >$wp) Jm!3c*2V^.fE3s;^zl]!OK^nYP5GZRrp(Ԧ҅|Y\$ՒދqȄ 1M4,)N{(| o4P5Z͊B}.D1}_Cu~o+[iniXcOg8@P 21aĤM ٛ'> fri/UxJ^>f6Ψ-IFt`S̊"SW;5yJfbB0 .fn>p"?kъ8h ktl[F7S KS-Fb>]!2! z\s> 9d)xpKymO*} ,̌CuI (SzHKמk*,}>7dvj50IwohZ~Vԥ!G)Oc&XgLnh*.NdOM Be}32 T &yC|с?c F~P ݫFbl֓2f15ø/[T8G^ :ǂP}a̹Mll_&Knk4Yzўs(w!^5hPFNv>#!m_ Sx;AX~̒M1ǂ)H0K12ԶX|;AjY Je6Ș[Q(xhlJkLe aR.Onk i e&PXtH;u.w_&PBv:.a׻w KQzvqk6JFfi:TZ/7zH2JQaDg~ȚMf8w 7V^Yz-+ZȕFb78rؾ?-NuȨvzjHX^'ёޝ}zO}e$wuozz K n}J.ύAT5wS2v)Ma@U9 u2 `@zs~2kiBF襺VtF:LH׽Z{)14WZ}PwF0ZXb( %ǞĪO=A_ AݓT1H'j /I4bqRB=7بpjVlaσf> X' eK7i,c*+yӳ/;C%';DqU`K%G]u] H(\9ϲcIS y;瞈7T?$@wDa ~F̱Av^b[YnTgHȩ RM7OjǓ==L`jx?A}C^v⹞Js>>]E,}3uκcT{̫Ƈ1J:L6C_QZWaRRSv on-C&%A}Q]i.ca b+Rk?y$KYKB;ĝ}Q|\ \Sj v̿.&L[1GIf^zé68 S端)ٖ6g?nB@[CO2X'k1?鹩m5Aԅoʜ\1 j5ny6~)aNޡrBЍaOR]`RA]և#_x%Sa&]]9MB,lK\>y"E{{AE6a+b kG{*bVdSG{mxOcuxfW1v8I$au {`okOd-O: :àu4)L wc ZPz9 2G=PFjk$5βxmc[u6Sd ?bhfyouP(ba5 x*J Dĥd2VManN9aDeYI[~YH '1 a1"a/ o;"wɮ!<ɗBwvVD!ٷaY ϱ&KЌӥ.c"Nkϧ- $\*DCWBF68!uGhBA8i2Ac@% j-".mNY~blm;w)ۚ,twyP%֏;'U@Ł=jG{2KeD\$z*~[̒\7'cKve$ Yk΂ey0tB Q&oꚩ[ͱZM?PUyOa$Z*fu3d(29 )Kg߆ė^4'݀OY%= Ș]s\߁|87d%4H:w"(EQ@e Z!|CiٽKX 4RW>0é)R -8C&!/ Pd%YZ>+;. 6w7- U8&_?Ftl"Xu#a!N?`,pE޴B^t̛ʑHlɡP~sd{ %֩~y1`-*:ZyCJN t&Ԝ .:Hs@Iu @%B\1ZRP{?jlpHu(D|UhIg ](ٔ(4=&T!C 4D_)Jbtݒ pܕ;U6q ZE5Ts-'Sw]9|{2T#J%B&ĹEfNAۧXvFsFM1ׁVc:j +ͰΫ(ϲ? JybH܇Rlo6e;,C4*px'H})E-CP5\}c29tkNJ V@0[ͭu?IsUF#V&"9g+6-:D8yrր`jF(jcGoА=6~;5\>tGL:U VsybA3+܏2T>G* ]טu aC;ɐ8PݜD;7s̓1_b \ABPX4ձ͞s$`szJʧMe5A_l &(g(ЁZ]گ̒y)XW^*BfzpI/w(9j5EZe.$- K{pi,D=R~3lc+N.P[$!t`QK45MlmVI`wDܓ|"ؽ:N@#—NhS%/LyvVHee'iza, "=NExD֝q-GL)L^c e(*."?6agHW +Hn$4f .)xE-E/]JQE{(s1QE_b+`줷kz]ǽ+G:Aw\|858i"vu,^*} 3Boji׾~c "M`A/3 >gx .N~KS5B}\?J/݉j1njRQe@WXK6|ȝ\!~ߢz90Ap"A7Q_Zk9w^w:x4n`C~.h YC},~_\̓;̊mL[lwRs,eFh苒'{=`n B?B*>om1xv 8ѿ;!ÿ4E2+oDl-ԺG5୒{#_Ȟ{ %l3yAľ`?S~Y(B8%J`uřԔ25գ>~Llä@oeAA~F804~m$Fm9?a57bW߆cH%XĦ>M`x][W3רs J%Y \Bho`uk:`MI1!&.4&P#xpʝ݊ei-rij̵Dt#xXIh$x| 6a~{7x9)~}cZ_&~De"p\bN0`j󚯬sÛ= .ѷ@+Q\I@T \28/ـ-f ڷ/ǩp>V|DGV"{QyQ?q+0x֞nߘb*&K $%?F伸 NjGL#[lRj#3\w ִP)9WթzUWvUI7.Eg(TA'{c!!΀ޫd 6C楢_ .J! ȁT,(bg4:..hl$iBhK 4,4 mj! ,o{]R_Qzu8ܛ΀}&|ʠ뻁1i`y԰2{E6PWީch XWm]idB=Ń4C 8]6/$97|dUNr_/ oI``hCFƉRBiUG:IlI89?>fuU駢N^u r|x_o \v2>sוg.f":Y3tຒYD,S!څN/,>YbX`}(/8F{XlX?~+a 1F(驀S?i4,C lc *n:d/5,Hn)0>NI0f5uG zT ÷KE΅}br2vr?Po"oG`}IL%T~eq/;(~D؛ISece]r"KʁTo !/m6G2+}F}/sGxu⾿G>QJ .coHJ!:mOC@R1*g҃ZVz^_ԻAn!O|MJa+ x$Q@Nt%֜ֈ4(eq1H}q%{ <}`o8:8Vd lVsN|7ȱ`Շ)変XHnOfKF FS2V*cKzB*[E:5)ʤ.Lg< ~bK<-5*YlG. SLjogDԺs{@W|ۃXg6.Ʋ̓{{y߇vXؿh.k;$5= G>Ҽ!'5 )Ο"!*HM3"KWɍ0p1RzBD n6GґzzHtXO\ƋGZ-+ɑ#1b23J2}WMa@}880MO-|nG8 6=~eeW8qȍͷZV?^`ʝ&f;Z#I}vBuӑ>eiՋ4lH4(Ivu/jէ(ffKfYq_f7^ )R'vlm^83Z񽓏.Fh&x N$DbB}-x WXpRW#$f9uXJTjO@N}mҘ]5,UbFvk;Ym*Id9˝+o \W0PJ_+K]@\@TV`:67w$"C9ցgzluibSEK[ˍz]u]1zɈ))ڇ"uD2?G~ H9]r~qbsL6%Cm#k1p%%i#{ 3+5$zl^Ϳ۶IP롡'3}EMM.̡"963Wu F~H P\h𐃊R+mr|"2pStP[,nO;@졄q+{#a- Md0[h (\Q Ngf,:qDqRBgXV0RrUvY]Ii:vez`*T˹Ѣ; @%?@eU,@2 `^v1OeB O;ٰ$g!Ė\?ExUĮV}Lww 욫L3opV#2cSQe}g"u@|<X) J&L-w90.NVFw ߦ&_{{3@`< A6~f`+}'<͐ΪQ%bE"# JΣegfC_4V:]F:Ч-ei"<%퇽h$`9,[(G{;_2QYJC8WT)ރcv/$ao9W4.SMtq0&wxU(-_$BI =ǡO#Ət% <|/q"ULvt{GJj˯Z.ugT\ i֤^jx=DR LL?:EZҤvx,NQhyzC xmiӍ&Our9tCL2'Pϯ;A@m0dL!Qs|aٶ)cD9c5htb2FIcpYЪ@f*PIypC06N4hMX p`lb篬=i*hg~U_Fۦ{>jqSd@`p FNP\0kN_ƪ4fcKx)7ʂ$<3Ʉ@gV01R&be\NNp1K<]Wg";h9 F옐䝿3ěl6*GFQȫ/pU x_!9/Bn?!)9U=RTy: TF2%X;ldF}_@\]|ZLޞmm'ٰ8@5''{ɬz=&J,mHtֺ;9[VNy6\6 RrC+R!K[4Lj}n5Utc(luÀ 3j\uw$#GGjoG=Ooߞ)py)A[z.s%&v F ľt9 ݥliT33S0JQ,M5EMf*s얙 ")I&Oʨ1/ִB7ә{oD"<;sɽTF8g6lF1Mo~rCghK([((^MtsdJof Nݍq]a>+k\U &tQ?oPv2ܔo NM>*‰9D i8 ،4&>@Q r.'연qlv_1L|ЛKd?1=rrvW7nTbExX8(YgmޒVRތۖhUvqˑ, _$@*Etb3I,| (L#oxtcE%m,.OEe aALmv;.p`ʎFH*)IVvęxF*DoA9̰/wv/p;'02,)KrQ:kqcIs;i`iGg*4J_%32TQU,{0I&feT`PnEY@B%RTIMf#<[*=o"XSqEj;@Ǭ6ilv*8>m{,SG BX(W!W#Sw)<.щzyĦ8K=B؅.✬X&+xS TZ]r({sJ` FR9\j}%pfQ.. zm=cC[LUQ\khy+LEKX[@9k /oL$An;,$ FĦ/+ ^sȬ`WYF緔N_)UIx _+}IG`9]+"r{sqI[zV  Yɜ'P7a̶Paqy>e+ƈ]]#v&hS蓡/r oݽؽoz$&=F"_# ydjy0. n0"j2^0g- ȧ kͶ$o*aҴidoܞB͖{MHZ8,}1jaUlM)VY?S-Y@g}<퀶8r\ttϰN,ڒ?Gi8}kU!vy+T$alsdʿ#0#YոƎ_: 9SOe֖z6Iwo: P]oz=3C؍ŨfU עR2EAXIwN7Y7}CixEWNd+){O[^K@pUK 9X"E= Zo'&O)@CPυ;bLDeu&|q137BW;SX G;V5fG%o9ƺ~ac:oD I T^ Yv(M#(tfTvš'~ʅLt'%$=L2Y z 8A*xܳ"J&GVst7HE QO7sBG澜S@Nq,+@2X M Bz=m!%';$^Zq'{ Ƌ_a{S-.-/-2?8Z̩'U ޹V+^d{z iȚWп *R~3.+1lm׭an[.,m8ċspgeRZ+)H>NVpe|KdV`Owmx ˢ[ǒ@AĚ.&x40J t|э۞Y[h }G"a|XU> WwacCӊ!Zf 9#<,h~21X^ه4}׭`!wq^02,<WZtTEUensfߩe8m槼|YQLk>81ǺE.o|V( Ǟ#̣wn{ca88$bVU^\—HSF_ؿ}&b砾R>');PK{= qe pIƁ C,\$0í>t{G(?e ˬ{#{D,{](,vf9Ze*7(fQtE$˭QOtDtuމ<'KRЍ@V.8 Q]j }I֜uRl6 rZz!u(,vځ,Eub,gGW꛵Nd#W# OQTB1iG9^EL~a52&"JVa8V/-ˠ&;%돣 f%ni*Ja%JAqi(xyhlRW> =J T8]p@2})áb~۹\v#2dTG,KR8Nu*Ql9MMrV-w?$uFAPN*r fDrĦ:PHDOF\Φ0k9 Pxr~?++)}zE>P/FhX #R%}. p4NuB+QNCz.7^Ò@q^;Vik?̷Vcz{]Eleu NPVc] rဳ 0SyzAΨ "EQ\4x5(o0Q x F[YǞ9mF֩jiiXڟ@3?@ˣvgH.=!I)i%vbȫ$? *|{:hCzn~XLs"l!P=_"kNb*Z0D1zpp'rǞ)]^3УrٵсmYqv ia/BKZB_?ׇ2?FA*Ad~ c!x.跩@S8)0u(HgY x2'dGx994Xl\󤤴q{AfaP!"zU~BE? M^~W3EHdRQ}RWMQu oc{b]XʇH|[Qvjj3QQ\ [?ky*v]d=j^BjKI;n{[JG_ئ,:\Fm}:OΏBƊbCOue\ZMrEbCA]^fq-[eVNbF:FO]&7u4,rN:ny?lv>|(wI}N(rsěFSDLC'( YJiH).Q51G0ѥ=*5X ~zrZ%j{Hu\X;S|2Y 6M{\Gumpn#?el_cR-e&.Wh&K|cI_.#2{9ì=n>󢆻!ē/>KXaڅxYJxh.d*ebp˙a[{|e[^k-ݽ48WPOn+6Ynd5-EO!9+r&j :Zq~Nf98BpԱK"v1lxBC?Q ه U$'ũjFF}jɨBs* Z[N@ -^.qc1EʚH2wj O{͂˪^I_eGs`r o.$ZH ā˼ۃ ?w~bx]!NmL_KϖOA1o[O/0)C<\oQnS ,IZGNQN/0^"uB\_d>H(z$53篧0!Z0 72$:Zsf Hq%yt{Qs{Ijip0q]oMPe8R;7Tnl)f%:d!JVz(uQA;2Clab3m!d iRh)C/*hp|\X[;Mwnzc pR!h7V>jDhZbO1,›89&sk&4hp84 ܤ?o'+O_=DY\054×&`O|*Z@{\c "5n\d7vc91Z!x.]c_-> }@`U9&x}7YVAP~y 'zȝ0 닎+M"=]g#9_&eguO0‚ȩ`MwJڙ)~_^w5Q[m'C]퐧rE(-Ny @$/hY$YWmζ:v* nt1ۦuy GTw$ hgAjk| 2AVM/.{M}@DY" nd>t{(9 69ٴ9YaBٜqu>B>nU\E3S9!<}xȪE)q' ETaM6 I{A\:PF$5CPW!Ώ@Kb f?HoQ9g& 2hEĥ3LT+{vg@f^ Div.ͷ% CohᚔuChg paF`K;,#" {v /xDOݓ~w tV5'& 熷UN!)q`œiqWw={ߜ. I>-`cz*Wi4`{O­<&ien^ R^* dN^4@_w&λrYDϑ8iŅn{Z nN1(N>qc^+[f6ԵL쩳2}#+Fr7TàGܗBpjTG0_n04QbaMto-% (+=c ># 6Yt:2CY%z֬ƱW; {m]ዬ}wsWW# 0I#l]筚77%nSjF[H|(S;Zyh\ՌĘʝ.6/a*ȸ]i4ϟb\ӓz=۸{N:Y8ݫA.v8?w6ӣc[i%-Uϯ"Epu^~S􂦛7=\fr5فdQ/ [`+W%FK&ᅩl!\o bX48Nwnj-҄eLQIhHv3| G*hMCS,껡G?$Mt\"n2&FzZ]L%c`hH8N'֭l]>y`q(Lwv8~ U?&1-hɐSv8@{2Q0C7 ).YGVHp{`{Vp{_L$/1V)('ǭz)N&k-3C `ʷ9@y <G֓?>-}܈ "0QɣRTؐdQQ9ؗb\-!c 5ɫ+m.p&,Q5{x(0#ڍ-AQ.eMqNFɈ\+0qv%n𥢍kDrk66 H ^YiBwY]>I%PadI J[ia~١n6sQ`ӵڰأ Y*4Shx@i'ݥ ԑuMStșіvsyMf8o[` Wj9۷,1o; T BSշ7'DzE(zoI3&ԫnRY Thf#&ąUZJM\ɛ, )eq_û~vc#'2 #b.߫8dgUJW<اev(+޷&g!ϫ=Ӫ6?*aA6"^YHrpjb3\(M<T[Z@  ]ku0kik!)0v/M/3^Y{u<Ƕ_qb:aw^]5̇Rbhv7i'8"rF?-uU"ljX9ȿ*4W6ܰ6{y|6?fSVF7J/&/ seJ.ll꾪~oگ7Hؙ:2̥hZ 8q|Éi%4n#CC,UW 7Z% P/:twH-=Ŵl OQlu_d V孇XY5!-^#غA5$8aߜl79?85iANZi¸ԨT39[Lv̡?E?t;BF,aa* r )X4SbFLRkfV>; D(ÉХz\/*T?VUSѰ]nXwm08}3tϧxF󳔱7<[pa4;C ׮d|}|7*{1O4abӛSu&lUf2k@]ww@&bD#\ZX-=-탲%GxHq];' ȱŃ"117NB4X8{Q$&V$P|E)Qt|Iyϯg=趚B"4JX6& }05iTjlM\BG|3V'١:5#iIx Xx}@EӐW+>#!Ab(w+YYbhkvN%=L~S!1d9XZ Bya|PZ}Pe(7A>Eũ ufM3VJnϬ d^VyO=AxKޱ@<?N(gr6M, ؗfyɪyJ\d#"?2NJ~t/~d ",ivZRb#? 93MfjGHg a]v4{9^)3@N~ɠ8 ($,.>?<fC/~H(33nx[bn!Gl /RP&q AP)ZLMhUfY0 x*ᚧE/au3r;T5vאJݡ6l1Gq֨jP"$'n_+IW@C5e=q„"X{K%vIp>B߻3y:Bm^K9?i%j=]峻\gzÍKIr7(kvD8ZO,5Ra-~VxFb]p+I2*3ߐv*^A" +(K *zu%٤;/x&ոS#FY̤<_PaGBv`2k25zR4ъm|k邉2cXȻ%`y_Mo;*=Bɝ r}~%Nk8/zU`w_p:%z? FjIhjsдwM=*1]}9y{' 8>iku9BD8lоMHZբk\fxS~xQ89Kډzpe (n[*a[KT\,B*&sTNpe\k a@9qɉ-zFՇd m[F}z0-qW {u#:6tÍ~-֩;-ͮ65K',qz\^B?0;fK?n̥+g%Ʊ / #3[ȸҧxz[. )Eyee2#Ӽ4<#ZN;*F9&A]P!잺wTA^͢1d85{\d$/~R@W#ߣљX%Á:W#6=ہaCO) ި=[,K PaV9WGcl سmg2P74@%z!]C :,__ʨq=rn)}' 2+ gߡdyy6^e0FP=Xa)\z"'CokD&uyGO_a UV<})7'xUu﮵mQvEV9'e VZ6MУl'gfʕА &e0'OefY@*Y*4:9*^VW _0t=^B9O/@(=} S$Wj'TZfcTy\R 7sf\gļ7J]NZhl? (NzLwDVϖ&d Iި"в |&0OL@kϢO #6r&"V|7;̂ZeL%.|pzR ( $rP_n*2 7)*bA UI{Ǧzi=.C-sBxFW_c;c֚=)g*o蒵 Ux VNpsz;/ι*w݃ZṚǠ@U.98 5wA$Η 'wp=A9[J5Z9PTXkqStO-mUXAnMX nyˢo6(> UWè>L[qԟ0M%εl]Onn;\Yj\5?S{>+~|wET#D"xUWdy&{O*$b ~S;i* UpuU D osܩk##.ASWM67iǿz E=6X8Y[ktGqH{2ϔ sՑZ/?hIi> WOcf!}WZ}5/sXg#jDD۰"EA`}rf +u@fK(%,J(O>4$6+ϒщWxb%''\(vL (B@3-P$@ДSph*+V T)x* S^.YZ&~񛒅L8/8p[GZĨj3 2Я@au `eՂW Lo߳KTZW6;ccPy+So;p^, B6E=f]žd\bex%g;msR ;1+8mYzpx`2}rP=HLac'8g| h.t={(]7Z{Sp{{d=(G(aIuF!:nR3cZj큢/~lb NM] r!rjJ#_謇&R=:KJHwW";1;3M[sBHy*m{YQ4K_=##&?]]fb}~=T'_ .}aAM,@Q%7ѫ, $TɆ4Kc`Tm>a &1m sNR NcHirITV,˩!LިTy]0q4MSi9E/wMġOmVP}Fs/RSd>OP_5hD2I? C<0$ͽϔ}.6d0^u_y#kh]T]Fj ۮal^ $ߟbWwE>]mO}IQ$'6yQŬ|[-'/kwK9HE\{7ks53 (nJ[ 1фɂ=ѐP='r+'W5J#HAf֝^sh Z.Ɍ Ұ3- P;;WXޔ'A$*8ٱfL61.d:zgM (DrMp&&ӗ < R>!j8eac/8>mv%e dcTOXe]2oF.Ɗ{Bc'r`a}afsfZQ {~ErX|_YU\N_ s@ ^i/)/.66Qˇ;r5mOjX_*0|R5)r[ Q^;B2N= >+,[% x:uJ)n&/mgGNcvR6wZNL7ɬpb9\Ǧ:dz䳱r{姎cL|DC{HL󤝞^V'0z$pgFZ0Hw^N\?@T4'"T?zd0oH)K r0 lܿquʊe'z󯺥k=.d xsEhN1;*%g˜^2tw͈Y.j0WіC|fbbW2@'[xw ӭjfS?Q:&@5 zօ7 P|T޴<N'4ͷӼ?c [KWU*_Adyؤ;z' f|{{ PB5CBwyLH3H95n;͙\ 65,ǡtƮ^:!DOzd 3?`u)xk r M• ]%8~ii>%mMjl΍X؆@آ)z7yE$ d'`3%bhDPĄ5-itW58tX'+#1'8*5$UÞ[.7FڛT2i^2,No2# 1p2]A%єP24;q=Zc5si>Q)>{%BF[BVwZ)Rl&Vw!Gv=n'sRygi,<Phڒ IF <-;+ƣ z5C"RT)zF) 1 @>4Tu8Dq.Y[ zx@WO^"2!"Y\YHZ3$M1@|e񶨚J-#;~Jcn#k2. >[nDa\j2Jnu|cJ$,DAI|Kpwnu:v[os6s\ vupZPEt [P4B'.2Xu˗Γ 3QǟԼSYB͹{y(#-mĸ`eZC=}%}LvKc`s=b5!sXTnOrE)X騊bX_#)#RZ~>cs[([E(:A'F GjjaFjGRIꮼڀGchݻVMj HhH+|SOam;)}13T\6a cV뛤ml hxţu5uiZQ񀙂[?[jdDNRo.0a f刺Gi1}=w['bQ֨Zr{bm`OtrțMi잓90S 8i6 HKcK|{F}&P=~Ϧ >:;͡8\\{ 8,pxoe^607.)3P[=t޳^ x.6i 'GVnt/u) @{v)%Imn4cRCzng<{s NwdK7h^@,ήgH/ wP+ڠDCj|hqXT %gsҟ1 JFϗv {%^'$n5)TcD~|9]FoH6jqݗv68#tv&#.i bii%T b^!&HG*"fW^WK.wX ե=T/%8 *k oɟR^{ 0/A]&CG{(XulC&9[HzD#$=vqLhiJp!PXNE-FZNL])6ΐ wi,鰂BC?ƱOP{wV&=Ƴ$`^\ ~xr.KtA|34`;޽v&d dQ3 SLj ƶi~ ay%XWS`P~_"YmF .Qa~m(})'..-ӏ9#Gg\s/g!bvSTE ͟텍:řwo.#Bkzh} \E1qEG}[F*{2Sؚؕ:I2ά4'#)?.9B@%ht<#maдV[˰ N!Q Ž* d~z2Wf'&tlf|FI2)k:II-u֒}%$U]~JS` h!C9$+#Dn_ ʕp3Soedk%ex"8u,f7U[q0ImEV,,`Ÿj=.}u{i;1H2h@!yf* PP rb"B>$2DgsvQ@Ā|pש4yh䣓to l/X9ŔVg%-,5i(3+25ѐ kh?+y =BnNVVZgѡFְz,]|I^w8_ʦ 6cs&+f>v,Lj,ul$JlD@, Iȇ;EWN!݃v!HQ&)pkSV Q%Q-Yn&) ]_MݎB&<,}O˩OcDCOok;Rjd䐀c&w{2Ke$e\eyWLk/uJ~W,Wm`WaoU6LV2(3>^ lkAX#4rT{p,re&~ͽ]pwQ~$9hl1Պsl%jq:Ghc)z7uc_&(mM-giJ 0Jhdf%Q3LFKVHd,0e>+8t`+\8¢"-;=D4ؠ8A܀PHxhVKl\rJ5r.,`⯔g_A n|[3 U .e_EwHgcigȟ9(ce˙ְ$͇V]OMa M'*Z-,oZlo  {3NҤB~GgI;kʳHPwV\.0FяvRפk(E twE}E:'6@6f7";gkm'8V&݃vp27^­EjaWız!Wxb+8|LyTFfV\|}62CspVA]BL؀=`35}A^\y*F]mtEi&X'cxO Tr{,32F}D+-aX+rڬY)M66͒_NS'f[;~,{6@Ȼ h QkLN$مJUdv+ygJ۷P`}~'{?ko^lٗRbwm#~n .%@ Fx< 4#`TcQTTX ԘyH F;{sޒ.E0*Eĵ .;)i&\ "AϿc#"#s@J5{H^  K;eNS?9'GEݝĹ0$=CaNf=S6iր6OQao|PFx'1m*"$g=g*;Ch؂: ?mh #GSR5!R K^Gd!TXĿ EE(vאqR2j&O6xF9D( 8]Gv~O v?zi'fO4d½ tbf~7p _uB/*_gJ:,d&*(9,vVMF%NO3joktr07:T_цV`.:1\LwqDŽxr!,qqȧkJDDT<+M2{pޮk8%Og¥eY*US(Zc. *j>flH;\?>كĎj׹_ da'n3ytO3VPT%L)F%OH>h[w~A$:ϳZxdƬR"]erIUP7XN"͠+PRϦГR;<^jUJc*FV7{~Yb"t12 4:Z9o`Uo1>ysY>X w%!CRhdbb8 ,TNBFɤ %J׎EAUGdw2;El!1/zu} )Ip?L`^4Ǡ(1@S]螃>d/_S~DÉJNȨc)ysaI{N +RM@"VH)M hܝn(275F~)&$췤FϨϰ$`J3g*z:.1?)•~W%L,IB1I{C [.TK@i3gx/ޮ F[<_3mb/Ў+!ma">ZI0\W\YlɉI0ZbYwHqĞ&l~2thsHr|HNNЫU"64k\t1G2奵p Ÿ  d4gT@3vnb6}'nH]Knoh]G!0Ö{Po~ %`b@:ѤN[0IuǬL1}?t5[jz [j6KrɗL>Ĵ1!< ~d @@[q'v1oCˆ f62+~}j|Bw\qbCK( 55y*k!Lcz zNWJ#8A1Dl~Oy*0wz_7kG /r))eq*V]rjTpFRw2sl)7lsL+p|Ώ;>ʎt e \bhhQڰצP[@bk,UuQ s?@`* ‰fTQ/vIܥG.DsD& h9?c:pfFW}{*4v͢ۯVQ' r7+ڼM< 'f0496jva iN]_nR 6ɧ{Dž6zvaK7!=N oJMK'ta?%]%q*Uj Fd;563,}t)? _ EBZx͙* &CGD]m̘G#Ȏ8)l /n(AzjPF\˖%}%;O-[g!E_?^w6IQFu< nT B"Jwn&$j['t!}a= ~E jr5(oH+z:4MWpppC8bxTyύֹë*W[w̢( ԮR!,m|05:ܷF=(R4X%{+-' }Ё`#g"[ !I|xK_{E`%]y-[Ɇkʋ:JEy+g:?'KjitT -BzRj -F_>zPMC~ZT`lg/ `H9d$>w,aU C3;i &wd}yD .]~uB4_F&[jϠ/ 81Z̉́,EZRn؊[:`hqXNDwvtyG2{,:r 2AGiIIx `[Lٌ9g[D o0~6,ܤOp'y.F8?Vv\?)U(ʪL,`u.TLg3F/B2AB$hOAՄQѩȫ#LEY1ظd|Fl*!#8Cobh/WWꝩ١7awf?ٖZ(&L |YXY pQykw_ j(?PhFȸ5F{i#y.uz9sAt+iBXҪ5K[}JiZǞ)M1#2@ɴY'w^ҟaz8J?U^Cw}-n$a&?=bR<n{er4 .{&#l&KH@tW䷖y#Is*M .BWEhVh;8(Iozc b?D1$q3Xx'U؃1-ق/?0 9[*wh:rGNqdI{Y{`+S01Jw[! \kcI(mwjTbiUrKK,'d uTWGv@$KI_K̔$I bt$|O_Dzy{عrC9mV T\!Pl;uܥ~d"yg,[ͯv.Th7 £e36cO~ B4Ib0g?ޚ!k1Trs [ulCLO$H@T8]nUΛO ^UUbC"r!x?uB%ac%N.M><ըvd$\q)4%ocrG0* tc'&Py*;AwÈwM~jxs.wυn[UF!3%ډ*W"!zהc|?YoTɰDsFȢ1o)5]MŽ/vڳi\=' Z#Uџ+^JǞe_O|ȇSXXݐr̂팩3&0" !?֭..Li0bY2m/g6ЭԨ7t:EЋ&I!p('| b贝9= $=l4#DzVXf{iմJ֡q$G$Fp_Rcnt~ڼA9 j1 Z!ɏSzB 쎅ek[842N=/ ,f7g:L7_`=z6q?ryQlsOPv1e^nIsROcp1KL!]=ܾv^Q&vh&8 /m]'> Akn4!'L NwὈUS9iSw0X׳GA$fgbYv&-XZ AXێCATpѥר( |un(߯I$J,V azHa1S]\ڪg|D&]V(UG֓FߘS87m/c]Ρ>¾B u0»vFpS&чBZۨZ!Xg뢪/)@8\h!Wɫ:ʃo'Pn7}StH&|<`G[ T -)ApR5⪲=/*Ei 76iAHO \LZQFEZ+Pzb ]kC.tDyg!tQeef5wobLjy(]֧0D&GFt\J. 3Ыۜ<պj>6fYmܦq:x1E;?\\{'.V5Qe0Diqu,iYBU"ҭj1&~VUcHJNb._~p*+yap2kuS 0,DlZɧ6SۨBaShU:6&dȊR-푹~6'Fы$Ԉ.yI翾z[kQ7L';&TF@F=ù"8-Y7_a}-uA.;U{j *{TZuFvv$66,H٠s3)P]xY<=+WtЉ渂hEuFOhBl |t4ߏWUpGF ޲{kJaVB$~;Px*]M1Dny T1ݐvGWFɵ^viQbU'zW!貯}\dK0W'OMY;xsVߛ N<G/[KMt> x3e Ȯ[y vw8b\+DVphsX,_2?=p˙N]D4DyaZނo;Q^k4MPɮr >[XQ6Bc>Q;C) 'Qz-_Qǀ?B uGo ę. H‡7#.M3^@j\W7^l3U3]t" .4rd05MD2$2ԑ+uaJSP!*a`iatB$KDӻ9~fnphBm}5g_?%JS-Xw= tK/771EptIjPTht#cX+; `H;xk䪒R7<{FQ_(6S@XRSH4p!p-:f .4H%lE. $n2Ι{W룂åXLb#pj8D9y&&hf=4c1Zf!Q\rν/}#2Dޭ8 nj; dMhC:K-,?GkW661peкXW8#RXt*DdڵUБM. |g&H!div*[Y+gD@ÄzmF} |Oizz38cLxE_P:Ƒk59,vg`%8(#9Mo1\ hOl͗6P[?1)!/iJ| ˆIJuaͩ x\Fwem5u 1DL‡@cPy'϶}NsZ9`,%[6~Ӵ Fpf'8A#ン]RҞim#?^\ d^*E}O&` sCٳ!JZlTM0kh,2@RzB۝fst^?4iAx7Qyk?| eׄ cZuz+Y`1* oi`-㟖v_8@!vW#hA70eCiuq64J?+dR+w U bCaT@{ |V_ûd5nt÷tt L.a!fHg\\VBS;gK+:  ><ѼWe|иἡF!QG)lBJ"Q=b>}V/Tb*RGP y5D (akHU1,amhw:%bB)\$=j, yiN%z^|)pj"DxOQۙ@C=姕{J\GmX__SC(X\GAf˓!J-k#G`3H&Sί&H֪<Ñ]*ti|.F+;rP{Y t_)&stCf% $cOl8=qc6kK\R׊AqQoɷ?@H#׿""TV@ )J _ L9Z\! zl2*O:+HT-_G&>AG܁!iu64y܆C݄jl#e.zz-95U 87(1 X ?r4E HlvڱMhT|՛OVFZMȇ CbtG[Ao˜|?Hԅ:K$\ͅ&K-oq#vEOhY& 攷6qa]I CP8Yڥ6٥K;srr&eZy5S١x=؆!*y N9c ܪB+jm<N'/G`z ء+/l\Jm6O*, ?`Kx97>l PmYFao>;Y79XTcV4pjFG {3wlA'QUhl RvKJ*ӣ;.sP3NA?Yd*BY-by/Uo-!vTL>)T=\<.W &>MNw|l®DݟNFj9O#P= IG{ֿr]w36{EӖikhF5j0DIqaI}=n~`evS^G5*TߣB8p"LT,&Dik=!&:v@_:IBLl F4[忼nI 10uөUk4^'I#HdnvB'7 kA$dM1u\^މδ~V% LeCHp~M{ai=mK^ESp!pۈ`YU#[Es4Jǵ&yPE9O;L [ǰ-S7|s B=:v>2^&Ƃrr{?`W[&-~_P5]H?f*אiƋH`rدH"$8$~4 ktZ:1g "]lK|ixiMnY2h߼|KضKE3Q.#80Onuy=x}63(D01(J|.s=lW-Ɠgea|ߍ%Ga@as@{U &a)>"~psaL\R8Hb+0L]+}f z3nץ4p& F'IFy݃kc *"dxjKX{_h ?BM>ۋ")F _4j+M:>rkĦ YZDHܝD,5y}ԯ˿ j׊mԩMzۙu]aq/)KJՋ8w|UFRu ږm|y~T6kWu3JGxI1^FZ}fN5G=,:9ɩv_atR'@IQ`/0^x*w0o! oLbi@yBT16Ss+'0$FhΙƜ)X$(tpk989wI5ZX.v7pXfg DllإV3P:_mJY7Z?X~$QΊ1K/Tb! kh +:, ,YZ 4J}ov>k5Y+=n3ahǵ蟠,O 6*$WTH&+J5BūBTj[5|0u +6C 3 8* aV(N݂E{fG7KUf2xMX>YZFG1Z_F#}ߦTJUe6 ]{xWžRoD/)Tx+h?Jq淋eq#l4Ls(ax?xP*|b&ѱl'hZB,9#Ԟc])Q&@}ϠؑY4QƇh0ʡhڊ햧=#6R>H%eK\1q)䵣iuזE%SNCno8>hn j;]zz5QEn0k^9cn3r&q=Y96e, 0= @nKӇ9BuQ!kf̢x>DmZyucfno `No0XVX,l63JbSlSȇ:  0<cj^Y v>@*.q\u7/rU\EĒ FLژZyTZ:|Z*.+LM5wsVU^}ն'sBy;?R-0r>3/5VrB+t [3ߵUMzٞ|fi&:>)$3Dܿi|ZiaX2^xL7`EMi~j,WBRNߕVW&~inrMt' PuNr]Żjs{[Agj:!W>:ٞ<ĩH[91!?ȴa܊^8,sZ4w׆?s`6+i,Ej -=U_ _mK""cmaGggIt44) 3#B7P) VC3zaa0=I t*!: IL1#7.^, 5 K9FƶҞEl<0q/_J >NL;`<YlhD~ߦ8iCҡ{ )*[U=-}u& -cZxƁUR%+6s҇x:O;}c5LU3oQ_@9DeeM$VtGTF !D6#znxj@Y\ђ7 >9f5ޘmgssLLNZ7u t:phz1 0GRR kĕL:uoe66y;j#TN3-1XBWNŴj~c hak?%=313:8Ѯ7!?R\[v4iI|tXU+?.;T!ÏO"4H8X4_>m4])6ѫ=7g6$nGἐ;w+U*f"s7)S v2.0_ɹ}/.qz$?QnL< wߋG{]4U V)QzRK匵 b0ĂR[:hdT̘pj.Bf.F^,x=[tF__Ώ|l2>F ,fLwj!CA{eHrUC%*XؑHt%1eD)͙Z/FNC=+,Jr$STbBOQVqУ{VQ?o^m: րуn)ޙmF6Ô -/K#W3IE)q)t&7Ҹ0ulLiTm&ܼXapt+ W7|Xb'c+ш7{XV+%;\ʇCvݩ2o]3B-*D TGl ;T^'b|* POޜp/\B꧖Y-Omf{hx+|nDC_x ci91ɘ |w$֗5 StkPӷdl|؂B:"++$()g~12wyo"jˢ0LO5x޳}1'poRhHъ׳ifkHМh$x*l|D8&/[A2dC.s8fNppe->Q:;c)~&<1,aU Jo2PYT@bW)FQ5j[ 2R6i#!*ӝC\(Ҡ#°FOb*u@1_nBn$9^6N\2`uA@/aWzCY+]DŽ|(ui׭ZTu&,NV5ssiah9j3y)3jWlWBؘDj\K>3,;w ֈ] wFm8 $)(е^4Ƃye$6`Y]*?! a3șŧ}+Eg&f_rUs7J~^}i\`)YhgQǩ}Zu0`'yWE0fH4o36I줳&ohhFf4XN..,D^>b\OCu><%!:h󺊞@Jc7HU3aĬ֜Tm1x&z(:-x)٪|?k\%CQq0a+3 ̩(b蚙dH$1Q 9*wr^F1mzT)ZuHJeCCyIP]^-OBE`T]4+xBW8 vv-/U@!S=)z,ˀW^fdBcfýc@̐@㭶2B4t^GfӁADt-0$@]1Q\1GonN & r:(~;g)r%~CQ,8N( ?*s9;xw+,RQ,LoSz@M24v}iM{p~| (!`m 7Gl8rB葄bQ'B«cQ![Imt.p9+"H]iz&koKyql/ njؘW N ݡ WbZt*ɩ3OW ʍY[0K-tyTpwƒk&X"J OjnwYz_\FϱŔt[=JYigu"6VE俹}M`ߴzN-Nhh!Xp fw3GȻ1`XK9s_)"$u̳GФdwAQ++L~f5x[e&B͞ߛլdq d~s1zV.F! =,ʨOK~L{* SE^h"EWBҩBXū2z]#$8i/5R7Ӌqd3a}ѝ`3AG:_dk5x]껯)8[r\wREs^WЅ $_z~f110toxW r雫E\ 1t CCQa×o)z5jUB9g Ӟ\AO;(o,VmbK}}.o#"#5VENa/v㪫HP2I^<-"c9HEܙ%7akYC&U;OxtP )/ַ,Dmv,t2NN>.x,MnsKհU)c ʦ%w Y]Ĩ‚&:aYY=K*A23l9+ae<ՉYOe[m=i&/ vw Ӝ:UF`@٭꣒hsw08 8Te侏m ;*ڻ.y2sQsȰFЩ3 p.B6U=p[V!."Z{ƕZ*%O(x'2P\ !q5hkV<)C h: h!d7+xlY~YBuNbjfx;LUdڈn\ l@MIt6oQ+<Ă܆42`tBj4 GJ]n{y" DnXljMYO ު-g'@ѯ%t*/.HB`cnY b.ЦD?&MSA>,`z#v 39lOZ_}aGGUB>X_9W*~fOR/uQ!,02oܧ=?uFP|H8C(Hddo5i1@>~SLXYi&TxZze. nԛq\= X mA IwpGV@aQV$ڀ7J} M*gaaz!hf#˦YsaT@3_Jج"!J&HrSjL `wg_ &ַ5:two GE}oØcj+yv}]BL57g>HՖEN{vjK$hQ{uf^"sq,R`ɭ= %$ O0u"c8|iy!6';KXR_Ĉί?I63{8 kZ5L>] D.#?&"{٧ ,Ⱦ &SO"Ni0 ĩ‚h{y5~yCrv(Qɡv/4̭Q|}͞ȼ0cuqMD'FJ2yMPg`WZ>ndf#t`$6c\I 5(*pUzy]\_i]Q 4{v9~d+!k;9JWw"гF:: A"Jj3հ h] +unME(y= o !Z{TZ@)'*T KN#:Qΰ^D?naɚ$UJTj{9V=&1 |E'C2)c- %miI)yPN15~ygm&m <_ 7v|XS£J=y64nD$r\dqeKX+JIcj o.^i4^wĊEbEnK4 wӶ?裃|XY6mJbFGιRi=` r@PQ;ky܅")vJ$f&U[ͺp /,CpRrȤ6ap6Þ5B?`q"?zc6(BGKDgnk,A8٦{GGG(;8"pRȲrkxkrkVnK&ǿǵdIX ԟZ#m=,eF^=m1.ח-Ȋ{iMOiJMaeWOٵ~?b0=~8&NX-C3iiqvّ]_t?,<6+Cf}q'NͱD$Wc#n\ںZ׽_] ŪNxȄ`ْ&XЄs{~<|Y>aWWztAFee ?@V) k1QAKv,="3UBtAns9?4{80B\pZָgH@8YR:}%CFK;Juy@ψ ˣH̸`m6IIqlDwF%^H {͏-%HrO3ލZ]+<}9ӖF|tS Gd;̓p< 4ښ'zǡ&T"}(Bs UU6zF-%IԦߊ?V|N@:Fk?^/зYVCXi0c"6P\ D Nëtm&ҳ N/j\?YS`7Ƚ̺~Į РT׋=ۤ[;A{e 3r>M)`:'8?y݃E _%fX;0j,z-ؖYiGߘ woųA9 JL'}oA6rXvk99Jx\߼ Oaf/bsvUdƸsD68(@Y7'ǭ(::UH4RX~wYk8ߚm\:1hjǑ IY4B6kQ Д'H,h T)]TAEsa~ F'@HN4G(eGs0k4;U|DW>ɍ^ ky )u`/{Aps(kL\GAvPV4 87XDbv.\g2Ngw o%1w'>D!^-\γH5laWD߸tBӺX 2sឤ+W]XFq[.:\v_I\jW&Gb rgAө3 [u BDݓ1ҟ \v(@h*ТR-j&218i?pgn+6MGVds(َ.;~!˝IЅU2ISz ƾf=*Е}':}q-b-mEH]}=(C%|{22$WI45[;c!ݽI+VbXB 3@";;GÀUehh8/kBɩ'cɣxh,z@534byOoU7a#A&* :-S@&a3v%0kQ|BEv|;QW r0I >ڝM]r0_+V^|J9;˓p{4l{tyhӧcM#iQ|+19 fXv " apa<.-bp=ui=` j0/7}M9&?8BЕوQ>C7 ֧YcA?یun#z\ihhS/VǰY̨bVv]ejOǨ4IJXpYӑy /!iWE m#͛837PX&+\(FMi:Jx~bjH;xm- ('YS{/h8>bOw~Úا8%_p["Hbڕu o~ߨ'I+%<̈XRT`}C=+PPd5&H)'kMVSJa2 ܹUa{~!(B{B ˡ"3 n<B| չh 9 _aBDmY]5UC81Q}M <(NE3PجBP2,Ч,.]-ѥ.([tD<-1aQ?TpWr9KH|O 0gξR茞4_iXW/WAlG=y}2vRͪHmڈ~ !P9F}vQk@&v5]Zd"rüŒhw>"e^Xcqik3n2p"C#dJ0˞JV2G a ~܆ {eJ.ED?t9#HmKSq1D =V]A}wI`pF y-Cl!ۆԸ"n[P __S)nqCnh9L 4 EtDlĐ`_b<JIq pjA[Dc' <9%hVm 0RhBJ K&1מHVT"6!%h@,d _>{#%i\5MQ6dNUJ6P#O F<`Xg3D'_s*(?U){%8Սzm8jA> A 1+ANJj$ๅW[7fT#^KV6,hq^_%8 |[4wYzbD37-HOg7o֍ʥG,mMq CC‘ Mfc號sRMZIb=w|?_n\>qsQR:$VfMV!/BV9Mo{Jv~?W=$rz0x57X> gP]ӱůWμ/֐ 201 k'}/@|KR|r4Psۊ^ǐIk R9b3+OaW41JR2Pg"$KQt3VF@PD $Xǒbpz,$_J!d'wcHS2ڬ^\K+e h}> N"΋Wi5h ΐbkn1\Wу,:\zȻF1?N;WKjt6I Cm2-sѽt+]$_P)vu[9sѷ[$E8R[>˴&9ubd U>=RRd .|?UW#w?5-KGbfeP![,+'4ɳ-.{3I8^B:"&g`dQnaC hn=?!;px$s]J=]"/ Yi7ea'Zq1 #<> -2!CM 4i\8[Uv(vc:wuB懅Ti^2c4D$rG2' .ǚs)S?BXaR)Om'RiYeĹkA+_0Ӕa~+Exx,+R"|,)!t!U\$PJp>t j'h6i&և+&d${_13soIxN'C!3Q/19Żrio[!㫶:t Igs9RfVץ/ÿljL^akֆ|noZ2MȖ_v;WyQ(H|$qjKz.;2W#=N3aW'G]h9I^){k\JrOH|MvQkN扌ip%M>)K GUw;tA\0Rh1d!֡higU/]KXGH+ف+f$}mfxfC[Oʩ٭{eMjnM8ʞAۥ$V^4;ȫnG$.0Kj>`{x'Iw˴^`=m`=omKp/<^0mr)+'ŵuc1ת7Sb`+^XwbDeJX2lzIH4VFU5}φ"m^dE;+YI~ Krl+F" YSKd /L%!yk&amR!)9n1ļ۶88,i]D=7xS.XEˮǖ*%:P Kw+(qqW#Ҁ(;_:7A`r Æ]#h { ÉB8Q Aw`^R201?3OuO\FxâyP6 ˇ4&Ѻ2"҂_MH"31^2hd:}c˜dSd+ƒسuL+NQ$wt]wZj% ;,6󯜹IIkާ~ N!W|Dk`ӕ.l Bei4W\E '"Wc :ѿp/ G!] r!cPt!yMV\YBH:9g96Gd9hfJoe/"F“u*+j%p{5w/[a8p=:)0jLh9QgCi=-eC#'^FUl[!\~xÑE^)/k"껕;5/˒ 2&LYI`"ˆ3 <ӑ`N]>EhڨhPqn˛&bb{XX7e{V7߿"{h w \AV F HZ]6;7rlli+yśmfs#)^3%n:s~:ٮ,VםDw+ReOc.*BNXW}rGt.!1n 1DaYTId>KdMQK _8 @]2"2V&c+q=Jע%=U_R,bY`E\h W *rv@4,]_h[o b֏#ׅka'Q WBj>̋!xTFͻ]*u}\42:qghu-<O/RW8aF@9.Kuj}IB8p cF/ &?m tdI/f'8)d%1o^18Ö#=o J6xdh,w^"ӟmƢ"*ca'tS|I8V1I @vP~+" etke#pQ}汶#^o +~i VHΔeb*7nxuװBcu! JFc+ABip-;op%@V&J3ej>E42171캑d&}X:jy4$Ukkq P93IÉ٬.!&zV\=0 !oнɨXP%y]ҲW$e7GusSyuLA>mnEO@JPO#^JnPDԴuY1-4QIȠZ6K\?3+Ju\yWo\ wnZ" (6lMLDuv{ X LgeojIݰ jXEBeT gIu 0R0}(NY%jN}5NiHS~Fz D'?Cv|R![/0mo nձk|X!˳:2]*3sp(iR箫XTH"@?]$X/ U!#Z@Ulj`4anJ,`<ܣ{māE6#o| QS7.VҘaϦM^S{ *z37J'v{q}/šZaZ#qfe5%Sn,={ @v-tX=grQp"kC[6)چO ;Bun$~$̯#ҏ`%_RXQwg:%BV;eڑjP,trFwud6 g˫e-qQeо78]po_!oKHX_#s?O h0K^RQj yCm$' /ɴd$hTg"[v{Z -t/1W9+zIg퇃cj;ɒ6@|2 8X[D=,S$/_)8"B_\5r .,9X(ՂLz~6n sBFnXJq$o܌ o5ocP!_qVaޮlyE19 UCE!X;XVKnۼV 0&$qMԨH=BV_y軍o|%%7zVq⺻r2_YτŒ!wA8:Jnn§E$-U4JC"c y 9z{dL:m OeQR!1XkڧB HʐmƱ>&brxcqB aHt$g3r덱Aa2'/(u49=ǡoVBvLNJi; QUј vNbuKh/80Y7wF7/Jej6ק+:9 6'e*UļSa̓oC8Lq͙lԳMi`X{,+Cw9j]ɨTȩuWmPUjayŌR !D" @FTK94B́K~~({-@1!lAo~\ +pj Zu *|^91/|V >hT7xW-G{\g."3熮Jm>ȰKsL(Rl$Yh1z惶Xؚd;E./صkt0rr2Gb6?qIf0Xļ֐]CYU$S`ujN:u%B~bfÑc=O0B ؄HeM&ip8.<X24vQ]zBFOlDXDkC 4uv IDN9Xj f3BВLb1P%#QUN.hٯ-؈[{+6ŭdsߝF[eمw90Y Eq(G!^}hcFB>1 bNvb,y9TAT%t7={o4ДA]4?46gFݼx ;]q<,.+ +ܹGumZO .q_:X-2["]0yW:| Y|ɌwZߪEj.;>'iŸ {x1u&xz钣~1,IlPIjrBQ8ʲcRm*K2eS!MuLMx3"F}+pcHgZteIgG9~T+Gx--hXmo߆Pvƹ,Dc\W) ',V Fty1I%RGTBw[>Rh>| |G7؊sM6VBHr߬Tts%NL7-HѐR?:L:6DZYsUB[BZa KO+ :{'>a~&ma2CE< gVI`z}|иvMbٌ7V~~y'fٟMl5Lv`Z=*~{{&J#E3V&} 6GieRqR% l'sxiV{ o [E]Jc-31FPݓ}_%+f/)"j@'E4&LAaNFGP> v$IH'{=c.$CӜl{c 0fϯE` ogaJ+&'cϿ8G`H!,r^,hHw8&PF?:MmN!`f /`8\Ǜn4}RACqz87\Ȝ5v& 1|t&P|ҭM0ՎݏHӰt}");M 6|+!M8JWP*?OCFGh[B&6qlɆJbOA{ήR1w)}{M7dj4Y@gH7n [Aa&Z:^ ֨hGnNjn`ܶ$^00a沺 9VOl(vF;F(y_)1l2'i}ׄI哇]%!|0y7Ug Ƙfٟ| W njF?1vgq$pDX]XE;Hy&Nd/U3MTHh3)fqL2zMW~'lEǭ홰]gOYdBp)ĿzŊop7婐d*'|f R'qpG+KSW\C [ply9٨aiR(g칱D@s |I$"3Ect2á*Y$|##雳[r4j_"%l S;ʩGltZuI;.Y&r'?r|UH, 5%Q@^LEBAKLfx) z?RA%8W98jJjk,7^u%=u2t EY F pI+~X k{Cf_ D V^l6&pdi;Hl +W+RU {:vdPsql5(D5 /Ho/ákI 'Pˌ^u!0#Wm/::g%Rpa SZ+eo|9y+(h'5Ҧ=Ǧ@-܋x6%oR"Fype頓b_ , }4Y(@Hzr,G@T`$X#s(¥䱿OJZeμ[_n%˲acՎd8i6-] 8&3z·f9/[260:e4N'h mcr*rI}pT{%qC٥?娯!է\b1FlI7}6L͒$)`ôt3R8-@Jz'U>xЎhpTlՙLS61%C {ǽS4q["ʥJ47=K ??䲐3`];!l+F_ feG?NCjjke'v"3ϩx/h"TXc B{D&"zFi~#80ֿe{t;̚'*XA>pГF"0;WB73SȀ ( F~34I e.SL택>)9۩ݲj[v9:Q_rD- nRi>j x{2FecHN" qlOed_Z-Xo) +Aio1ꤔ!Fm&oD yjBy5&k*/ztV7Zy^M@nԂ:Źg|(b,tߕZ c\ 8#{ ]3p өK7V)Ɇ2dEVWZ pEeБC:=}:F؝6A#!DSZΛ#aZP"||3ui{kBCS L KL* 4c}zA# n +olK1CM0&P%vGA K0.M>I6x9Al>[ب+mj#\־9c?̎}4(ZsT ۪zX} .Fd7CƤ )D/8 jO+蜎{̼_[5 vv+T=&|"s,Y&Ӟ=5N͎{}ztQU#f\ Y4Oָ2yt{ _LNA{>k 01U\}vuap ||AVىNYvco3oΜ?7x-"~BOufC؊Fz^9fVyw pzC05@%ziXXˤ]dkjF]8 L::=Vע#L",SΉHʸ൪WOhLc6+5H #ґF(ZE`in I4:><2{3l'tHɺe#7P34 #C0 %UKO'ܑmk;\\=年L7pš =蝳Ȇ>^9%M%F%j(yˣ/'b\Cp|IW"^b_S96RˈTSLbB$0Θ-"(}$`N+S@Ar!Cr3b8~+lP;>%v:Z:K o1R,aHl)g=%JazhRq7ڂPcq6&rDb;GYBz`]4R32kjd:[koM(o(S Xh= p3Rf\6'y!aޮ(NC"bD֊Onf߉Ԓ="gSd%.J2I*^݋%i-yWhГgI`' 0b)>|-/EQ9 ADZQǒ>8kB|-2M\(G!t( .N,1.?Dk~mT)siPc&r HL,a:O$!F cce^ˋh 3~3B˭瓠UR\{=uRh6E\9q!lѿ?_Z,NJ`3\+wBI ;yv?0b;]6E]hy*P 2^ {[*9n< c}U۽#bn*4`o}{{SMŐj<~rĆw~.eJK׿`&l]I \ۖIp!}"!kgC*nEX|HUi18·zG1\_tW}|`H.icnTc׸Xbzk[B05 J y•om”#SB@|J+5>:n:PohyiZ"9r4HyaBWKF7_urD\;G(|ny70iH\1"X/gM3F1e Rb^)qC:ZpsjԈR*]#:Y$tpOL037*iOߝkSemw.#?uOOM.:쁠v^mZFdNOY&g7O΢`LUj2^;B HQX0tQi$F'AH P$k\@( (LT/Ѱ񱞷P?[YI5.!HA壠F`#"Ԡ4 6!&Ow"Cq:1Hd+(*AEYc+<\nfDQv' <`XueY^$g#T=Ee?4\&jP=Wd΂hIpApJ {KⵜӺ27Hj0_2'~^J(zS_yqW4#esTg]a H_^zuz3&JiF5wv*ӧo4X1GMC0zCHjz҉*DQljEZsL&Ir LDw"Id]jwTc$IT/Z);$J2cۮo/i,+{FuMREjUՒؐ$<3 ] ^ {>=rNieڔaTxRoQgxFF.#uBq}~ur2drLu(Nݿ̄P:8_n᫉u q2* >o;T;4>':x!fp r 78,c Đl8N#S)k>c ovφurs<~'z`!H%WBEpQ q5L5>؈~s.4@ݍbQ=J*hGc,q `ab G9~`I5{1~_<Ԏ361Np?JcEAxR@7\u^4fR|)y[n?hQRm_؉VvP^ Y%vZXYHXb C-S(k0֬ɋ\>Y=>eoIDqB]( .vSzrJM <\'Db0-OX?28JN)fx}%I8A>u(ȹSHC)hNNmXY,?F:ҙPU;aœa6|6zA[u[x22;X(W}"ΒG{=cWjiM}|0+KpQ 2 {*SShk" K5oQ:e-_}-"v^bjeI45ģ,}< c}gFޞ%Sq)}lm|~U@PqE۝Mgthdΐ`-cc ^}YX˲=m3)eSM#KŊHupZ!S;C^ K99f;"VX E7mf{0E+V@B\@?b@Z 9yh9-/I3xWτU<@zT3 4[|9@ 93U+6du̪C<t}W̏$jaMdntMf)BlZW&d̿pee{v0g-e 9,JiҤ|w,Ę y(u=N#Y4]AVG(Iٷ7Q<BQ0x lxب~OGy"W`w~\};#DI#Efi =V폐Vx=#!'=ASUoJI"7F9sCoՒO,}bkM+ h:tI8ݝc|Z8i/Un6[K}2*3DesȟqT ~HsHP]m G$0߲ΠeP;B&qQ>' [B8b1˗`DII!i1X lPz))6PKnHOB'\ؘ,_`FF@ɸJ01 89X4O@T{K}DA6`9ڴ~CI^"кd(aJVS`Vlv^h*$XՆi ({sF;mчQ|[% ~[eG/|L_T$ *mcWaNR~AQO2=X-KLK̑ZQ 7LۅTD[[f"*{Ll7pyH^]?*kZCzt=T04Qu"oTQ2:0`eG}Ìd"jTpN-C~` )qs*) " ",N /hj*Hf9E))\?r>0޹5$I|,l9LR/52&-]-|w%]WƸRڼ ylԓbݾbzYB wAsԄi`;ktǮ#z@ITALf5̪"zīQȐgz2<ժ G>.Eq%SB>^|e4/Yz¶\ <E8W;Wll0~i#18Y$SԱMgCF_QۛJ*[oOeYq*%=kL{ yc>4Hb:;Sj"~l{`hS‘n8L\C&Nj<ӳA>ITX^ ĮE[L?ds<VR.R]AĵRY<.Ov Gu f6EsEA>F am*oFɼES'C7۱%7sXn[0uxdE&EUq =ƂomvAK$`STiyM KJOKT-"xURu4@?ARgbs7wpiYp#D--̾~']gDgN4{8au-JWO ?*# N "1`00~M8]ȤW8{/Z$(TR}`88,p8n>itkagd+N[U&Oe;XCP-#t!C.jl Q*Tb )R [̥M]e}& U>ł)HMO$zbeG񐳮5eJ*GoLĕn({ߗ7B3[uZ3!M+4N2N=03H=bT0$B‚4G8zUpǙϺ{`؁S- OdY֛_*#&<   f{EJDo\J~ңZQ0}ZP t+C<4@", NKDuj%,uA҇f2apWb2.@"2wObpKd`!Et'v*̫0 _G:lu8r . iDL"TphVl[NExiD{_0k4ɅNXWC͓[1S1Te&0Ua<όpG QF.:\rVzEĀ6@z!~!%h)Q7ƭdu yx_A+y wTՎ::s60fҧ>*є\r!*tSAHiQI1鯽#OUGL0$dFðFFxk8@ͲB*D˄@Sfu7#a&R|SQm?E%tpTꋌ\z;D gx~2=`ȣI op 6k"Sずq Ӣgh^3t}XI.C"gϦt;*Z]w9r b{Q)6ɠf^A> 1bdȅNPf5 \%L)٘,޾'q;ũ/l(h~w" S^"̎rCa}&F wbl&x_**lދUTZ7f$kxD4~|Nvʐ;t=R=ʙ5>$}n!֢.pop^iא"1 eY 7LU#_n{#LfUNbS\ ɪ.V o^/8r/+l/aa#X)5J?rD$;Qj\ ]e󧣯]ƫ@x1=uUn*cm {K՜5a?s'8^]7W%q[餞D"'TrClDg?d⸟ Yc:@~^fr\|8RRߚsL-ɤUqX=᳐,=<ؔL]-`.rtt oxnkNY@ QNӆp([ݎ-96&4s"Kq6\i6ƨ@ $p/g=޶UX,̔iA d3X鵚Ɠ]4y/Nzr_h1%ʐ,^d} Mk侧edI:HՒrj*zoSp}M&+Aj$2EP@qd"6cmHè-"<0¦PFu9zaPDP[e' id/tH%CI*"~y]8cBWM5qC?ϖ*~Cud8@iqQlݯ!5yt=}2kYD2H` 䶦f` 5܅GR(ۆ[k,tЙ Es%F/) Ζ+#zS"[%{oh}I&h޻I'BEjV(I?Bld=&Qbe7%6MϼJ(2dː#͋pK PZoirӬK!=cysFe=ibа]P^mZ-$8҈ C[jgd9S4293Ѭ! o5z|D}do 6Nfubwwo eS 1U=Qzt@ƿǯ:6tX:/c}/׏y=p[ñ^ kx"\[o_ʗGNzq+}0qЀt$_P6K;HBz;:vmpDҵIQb }Brv<`!~ӕ'UG@[_h -YL*5勐~T~LbjJLQ",gmiR`]=d.Z4|MWoi+ZV;MrKФ|?AU7j8C"khL^-SBP eۨytWWpv!F1F$mws4I$Q|s<3fwhCx=[4PUfqk{wTq5pdסցf9wcS M(2`¯4v2r o5]Rg!3 0$\G=<*956]a ^u*P-rP# ٌwn\rsDH(f߈_鼬HnIȉgE? T$~y\B[E(R>Pb޲D>ĆRTG Hs( rx1w}t_clG4z$ϟ ߶OĆryE=;v#_O/ՋOO[S!'+f4n5.3b]TgVk7Znq#F2r<٘gY OAEq%AKR1`>h*q?f> $l,qIxރcvyf`Klސ9٫=r%ɖaVSXbyuQY}yf?M (p#tk2Z,ŮB+VV[Ÿa66s :)2.l{714Hܵ2ބhԊ؇x#͢4 Df\=IӚRd-x1ęoVZ*֍4׮/#W1,Ss=K=?*Fxvz_x8Z}>Ea}.GXu[;9O4@޼b#6(}Ǣ00v#vf-ǗB"[1>lZ)A*xíA{BF%.T D"?D<25HCEzRR^?CS,WsS s7y18da&䌐&4J^!T$h‰z#Gk§$jp4{5Y&_ymsu){DB)昇kR{V}+\ko"li҉hZ\|zc]Z Lxf^P}ukccdwRé!jtaݪ3>"c&z};Y-ceh Fb"B$*Tv>ԸJ{ї\NE;b2mȧJGYx'%v{^rI6vY9R/0Y߶}r$z(n1NWi>č2+di|f+C"OFV'dׅyuF: n9Jo7rEhj&VS@,k̼b$"$+rzwbfXqCm;?ԇ+*Jĉ{ &_G`P7ٽ\Dn ǛH2EpZﳂLWsmP8AҥU>_gG|ZF]2`LWY_d39SC%pq;cZVL 1ԍV>#VߨDԓawBl,.YJ(G֫[47hH.Cr*OOb|v$B5paI gpVO>荶Isa^IAC"ɫ&~+RVwђjQ-FNJLk')jPdJhR$- VA|Rӑ]ʹt b_3 fR׶[csbعfdz cq1sV)#]S}}jyܽ wSCƍ%ǂIy]L.udx I/fʘc,,R=1V/}6^rLjH5c@`^eQGƋƣ{}WBɼ@Xidrte #"Ue)]S>e$<y=M'b}zb~jvɨM/'zE[( QӠ.tb%p5z7b),aeY2 MrS01'R`wZ0_[0?5`(md,_͆=-,4XCuPCx! F_5|5UQ@VloG2[N8pUOof#D_@(Ėw С]i{xL#::{Q;s-Qa.S`"io(hTZ8|')4D 7E$MP9 5,.qƲXM&6ob;eneN]X٧ёI TH>V4Ed,-{iOuBw=8İ 7t5< ڥ@c/WjDhE*gݭRP2ka YvZ|h2n.IXFTۖdw'޶9 `oM< DOUKh׼"ty6Y wU(ҧ!JQzVI^<4q;4gmR/` ~n 4%=2ɩ VVC_NMVUS />6ez*}aNjvf@eعf^,gmY#~"rS>,2YMTƒ\V{qK?;CIUѢZߡ{fCvʇc +sſcK9Z#K.#F~{gbTwGRfϢ)у}PVl{ TOtVe0|Fwbv>ȇTn " CvP9avQ]3_`Jet_n_qrHa&i{gpj-<>מ?> "p0$di؄Z5oo\_986Ҽ6vt_oA> >Lc&#J,` Ҟ IEym6r wKFLyl@O*0(7[^+a<@,x *׀8Pu 8Է8:s(FCN w\ ׊< s`R؜a%VwȾ0G߾kXv_8wR{$J_\"JیV ~R6eא @S!GG!*4n~`Va "K!"|s~RjSf"[ Y ϫ˥tgZ \iLϐR ,__d&y:g crMcLZw&N| IKUח9ɡO`&@I#Qې鲚[~p03O7(,U\ s6iiC N˕qV|hG\J$᪆[ 8]BC?ԠhCy y[F$$λ6<77)yg}):LyHulܢ]8ЍcY ٰ,i8:vʻ>cP^w:lw JHnHk5}4+w}Z.3nBlx}Z|hW {`aJŞEO1a_U%Y&fGkLT0O|wվͿ TZOvϛd_/r$F GC#մNQ@;> \KMBC 탧CLѧZ=Epݓ֊"al( ؛]%әm pVh Jt9 3g_%pYA&JDR  ^rGѿ؅YJ wd\xȀ,]d,*v}_L8+Nt.LYh _8 6Q)2kG QP4۰ta$lL~7jE}OX9 fzC}hGXS`z>l ,.۵yGXP8a*_gGГu"Vh`Nv?@Wi9%f?R$7`+@")"㡮A9 :l0HҖFUMf)"e(ZS cQ` ʮL9٩Ӯ 4_ǾG'n$mW(]\J9#3j,ʏ;א%֎ ިZrc<,lپtsNk )Fu @0+"˿ťZ|,f,kyM1\%]nt5n ]N"au2Y8gom)Mm.)pi n%8`EDy3+06z5P?<ȧBO ^[B-$c.AӴ&mv,dU8M_k;Ҙf#m*̡~EŭFQ]&)M.Ko0W٧]kRi÷6%!  °`&?:EX_u}KE$!QlٱDwOmbDuG^35Y|*HHóy={h ٍ3A݄D`' |/(0L0qsKDC~it#!C:J{M{#h2t7 ^S(Hhj'h %",vw4lCkĞ6O٢mJHϦ*yfڧαWYd\4 汱"P!q9Į9@ 4lF u;jkzЦqAşiln,ρ.%6!O*{^GP-#Xh׽5M`Od)Ө劧 2EB[~''}ޠG:N1A8v9>AM#j߫5Ǭ'8tZ^/B!ΣhYm}Ye 7O6%D&DMd/#Tae_f-k4̽gKa2-JJNAe4UVI7gfV>>@^DH,p1uD4 sar.8rF [o)L4yKq&agT$>:՟N cr2lQk%,FG[ ILf]h JT󞱕j;L}-磺>$ 8H;`_^ψ1I9$n"):\Jj@eU7sCFX5[K#QW0 ԨllU^=AYS 9noR`2X lwŧ4 M{>Z|PzsuLi {SۍV rwͤj4-cYH##e/E_nUl8hOE6Zk@g7Y!4Ƞz}_%'Q\co;H%'4Xm"6IH$PP\ Mȵ D6u4҃XUEot1=+߆Q h"w=("*#??˻I3.{5EѾ359E)tA[#1+31F.E4H/Ioa]kg4AThܚ9n:<)! Y)S!ȤͭLngz٥yXDm IqߘVfӗ?-2~&Iʇ$r UShVsZt5`+;*--Bm{gKRׯߏ;jت7}upkş Kjj5fYg+,tGR=2))~-Ɲ9}$o {.܈ZQQՍV`i7s m6{M x;u 8x9._;lIj?\18co܂TwK *կByRAp::yЇZjh}T\SZOi^!POLDur@Ez5*~dmi-[$_\~=2ҿf,J'{E[o&#( 9+ji6K0YR0el4=n;DFk& mauW\>n7HKOʼn,Fh>˯H] n٦Mb<Ǿ/ߨ]zWjAPWSȲo b[8}A7K'5yYV,z;?Ov "XC_݉fug(X"r)yb㰔T2$%2v :OٍMPSCs hCR._L̨<*EO/Rt%*Z >&aW_(ˢ$o;1D1xYb>$"i[MJq%o]uht2@sPշ`}{TRd-9I>0|t]]@py'yw2Q`pO03;'vA 2tH*,Ь-e BtTxPzh*rWr,a$jvcJ a¾90Ej55p^;·ۈYքaf\BXRW"U[-dٴ@r1{L%UxmsǃiB>9d)W4?G^d/l(3^:"5_?{FngT!szc2W>gsuȑ!˕>V^lzҁEp*9f?;4FT+[8ٙ+F$J}"<.2V{ް#wyUrJev[ֺS$\ 6`~JbzungUPT\ygO]fؕ,gX/{Vmx XDAL/%R z@v?Dlb{]3oyxx"сfH`0tfVJrn8&qD!dE؈*YGZTD{}#f QUoDpM {_?jV i x8[n~z˄Q)ImM 0bE+, e{rul' *pȔP=b ߈eO*sRAJc>։Aԯ"d /@s}V_[.o =r6&Tc(cRU =Y8 [QIE=J5k@4Xmi= dy]/5K.Ko ߰ՕuAN,KXrBHLYE_ۚB'D%=_??\mlFXqbtD{,B5gi,ē~7b5p'e~43HD<łH#ۼkdϒX KϞBdOA=ˎS"ݞ`Q+4ѣOuvz8;4ӆuj=~9)_Ep=T=NdNMT͊h'($$mrtyOF)b8egQIXd}7J˰qŰL bj t+c5pFb ]\% S6-"}1jsHp?U8NIUtev`_ U,ܩNdUkSvtv. ?mthXi$]SYXXV~?;:C+gnBH͗#f2Dd=ّc jX.wp|<)3҈L CD!7Pvvn.ҘlZOXmH/a(oZNH\UaLc 347qFv~v[t0Wn{ ã zvp'IOn;\QvH("9FRXwa{Bŝ  x7V pmYpӄUvJ챖VR :,eaЎo3*!Kڦ54M!Ok!~Iy/_ 5V[MJ :2/18Bq̯̠2n0 D:sL6;csPPr{w{-ꓳ(TD[ q1D6Y;x<-$jN=X$D_)lL\E{a`KQ FyZ1~֪%}U޹ɧ,m$CUIYkO_j]mjT_'#gxؐ=bܱm-0MOڌͣ Vm]?˵zU=څ\1:xFRL]MUҎ[4@R !^}wh2(nl&k>n&wՙ|K|N@rtVNd.Gji̸V=1뭏(nxi,G WbIx6n6Bu8D KxnZhbk,HiXb&ʀ /DQ,5u,1S^90N߻+{LfKrF_W ;$7-Я.–,7z"GzltfXqBdrHM܀=T nߛw<]2Romӥ`S?YJH hw![܍y;Z'bef&o1Ct ƅyX: 7o D?$niֶr5mAiY^W0k3 ; J}1!iٟvwF>B\7^mtUZ upf}Ս.<>coGtMt*u_8LnYWѯcjL +>Go˄Kl󛈪)^톷KdM{N& wOm+w/^#(Y)(i !ѪܒC'|W(`V¸\4<`V!gI¦ճ6_[P TM248JRb%-i B#+_v`fb kUͣ! 8i<PL fpPJzh ($h kpqça,F2nIhGb!)hOk0 ,8Q'Tu\{k "=SNd/ǝ\H+Mp%jDp`\{J)R'KZ.~M $s^-7el߷kz0Z2:[?;sC/.v/XORY1}I6--1#>?3!Sx5OYx),έ{SjIƌ\R lʠPR0m× xX;lF (ˣSp7#E3e$USzՑt)7[Dr5u+sx8)4LzֳP6yD\v.Bj*4ŷQ0 m{ァ3򗎺qD7i^| l~x2sKH JWE62.J]/)\-6ŐyT?%!-z"( yƎ&3#[!`Lj3*iAb5B$d%u^4SQ{1`zPVHCQJwCv}վ悁&r'AwIo?*es/К5c&WфZ+*X |eU-8T4%¡JG.'sACU0yl9%eӫ9TPp~g?,;%lp^!$hj%{FK])d'5a9W~2\o'ݞYfV_1L6K]a9^:<"l7*~>Uz;yXҡr戳F dC=nř 61^i A#ZZN'-Y;KjKAKzM;ٗH]ŖE?>/SrE"AxFQ/xh* J ^ѥk ίJ%zrPꏯڿwV3$_=N~/Z3p[;<{׎nh,7`DVsAm ߉?C!_ [HsOvj&S4-pLHeT$O:- GΏ*>AڕpLf̌pGpozr[$.·{ްḺ!!?t((+g1PK'|Tt>vD5п`"%ȓ΄,%uK#J83 o>v>``l¥2v.lh5F Y$wF׳MIT$L*)n v> G )\4 `#nҁD+Wi\!TNPWTC;>g1 |Nyjs&PU#s16SOɼՅ3y8#s"2,eTb-+W0^ \2;*c 4֦|YInK09{ckH0d]F8 Zpڕ=U tMif9G_YHN#(/Ԋ>3k2TgWz$^krEPF<' ) ^+TAH_k[iLp=Sb l^<hݕfF [F֗W\B6|-Ñ[.s}3>0!v]vmm5[dʕ:O~sgcPO6nO W䕣4NNjO M>WW-[\.Xoli\٤.ז';pƩ''`gKD\Xa2o>VxR#di lDK si˦P@YJXS,n|I뫳;/F@1@CQ]K |dfV[:Y5+ߟ}>"?EE=VI/!["$ܦ@Ĥ'|}YG-&]L:`E~1 )}2A "E^y!vae +*֠=ћQ۫r5X MXE_oN6uJ%á1C'‘r2 ]΀.2]!d#U.(b㋥Q-NT^2l tAd$Tr^Apo`Go#_J@}Uɞ ؘTUe<0?'B8ni6 H=˖ݍqr"MyN ;y6EdѽQaC组;~p_|QXߘe;gvl;/Bzv;BLj$eE DrM+'w5W~i- ɕakUpW/(h\֦In/ 3 JY̻2<5WV >/%{G-*clg];]ϰͨ5Ts!R=Ǩ|_ |hPJc:7w6pbiV+ZoA> 8Vvq͉=0{F S$к@q8Bh>y4\Ԙ cl^_z3?ɂ8 z&oĻZ @9{dP/U.mJ`݋r$O*Uq8%hnH?}5:ӜN7p ![#3?pHrEpG}g; T47V}S r)Xag] |pS\$\}IS9KK2C}-&ǯ[Ԩ0;&\Jb'{xԭ{L1&TK)"F!r}+R^@w(< )!Sn4aPă\T67k/ր@~v Y-N#D JBSBq̾eaf4+m n&B l~2: vo/u*%i2DAqXv^Ŭ$:zv*mbnİha^f`XM@]M %&pUl>dԍMS7𹝿Κvd3NNړjWZN-ѯnzg 63Gܮn+ef1w1Oi.٦Ojxr>19:_4Q{<Ox]7 lJ8e 14mRCi y|MTǕ&}<,*Xx(m'RKڹl;g#'b/3֜,kٞǍ$gKJ3w:0!S3oE8_,HEDk (9Kqu" ?;fT=1G3a[K^'\@&TVݩyj(Z_~xch[ET "^b7quMwhPB@"*wn6U78QOT1R;LR,اfʩkL$?f zAo9.S6x 'slGiM9yoEL+D1W7|p_5vG5wbB#>rELceA(aYhJ%+IU[Hj3h.kfhK~Fc5LX"èg ԫTԨ}zR̰yp6[*ȏ2ё.5sIXp"ٲuYc^b13-}rmYl2.(qԹ7?X. "oEi\u:UЍF2ua젬e;E:J ti*R3Nf6U}Oi@9H5@Q( 7w(("qBJP.7 (:~dDؤ[5z6\^O2(1JXf浔3,yvq >;/p-#*+\%7olضN4(9 ɗ})h2]s;Vk oʋ4"#CjGHX-ކ0밫nbԕ؎oNN8:MCUl}T+өS. 3 x3'y89IJ Gg X:ɕ UtM5C2H%ϴ}i#}3:cU[9D =յi< qow@&PXp9~Q$~p .Dvf{^:ÀPq, RphC51zːZ0̛8͑kTNz+C8{(I jgUeQ!I5dyC!@(aגICv_^my<ؠ9Kn/O?7t]i> 0_6m"?|L}qI(q,YoG+s7|omx)sq-+Umzhڬ;k 9Som lA[csYPHV下Z'ɣeVoB`aΕ`ZRZS3e! KU'TL)Tj%4cc079V¦h?ڳeɔ~F0c8ɟ&p-°- Sb*Zr દI͡2cwpx5Μ8t?a÷@K`4o]"-oraP;xҷ  El^ቻR2Fv xrMU2[lt9f`=\s3}rԥdz'q`KNq9Rmb#y 4Jcվdw+^$_r߄~N-Gy)MK{+6"ͣx_Q )0 nH0~ 'B /UY;]lN'vD~wd 6_EF460%7ejċ0)e |F If2ҦNDM U;(M]n LMs.Xс/gbeuOi%IVJѮLm,iwyJLJH?)^ D-UbR!UCŶ;lדrCL5GgͧԞdM ps$U~;){JivK&5zJ=[є4תUgMyR ^DObQ+y7\ }%Z!36sٸiX:+cmr-5=jlldKpMym-zu~yC# *ĤkN/ >WH`fPj|XSi zO^$ǡ}TF gJ Ȩ%q-5F@w+vW|y%Kx@Bv\NvO_s7~jqanv͔Q-RaM4 VKvoF,!VnEj8Lvޘ*qLln4=+nx0mq4{>gq=R@0#tF.~u1)Je+ap)fѱYKCTDex"`.A2X]{~wWɅXщGK5ꯞ9l[U~b02-PS[T3@0l /fi+{7gѷ.-T+DpGkT o``7 Ԋ tm%HYءb]zI];BBiH[ҜɹI{T6=i]kB5Թ~Zu*P1N+ّay< Ud^gM;%lGK=ׯJ殣2E!⦂-]voʊ^hM̐A.p>ٚ{y#1յ*Asd P /V1Q= ig&QyRa%ϢZֽg[|H(d,͇J5u|9"Ual<̊=%.oe/.E3?8~5 џ'Y$WOX]6vFX'R4`w#޾vax!WDCEjE%ELnc) P-)1>Vۛ`ɧubNLƓ9u.7f#GQ)׽˵c--NGbK";B\{X~wYG]:.J4! !#̓zsNB;Σ| D@~JEՍ^ډ+OgR5Θы'* =IQYt-'^Ad0dQPUݠ }  lJ[HDo:;F;9ՓCs"`Mփk^ ݅ԇJEBbFU)>PQsfv6 R"%5+OdT\^]YѺd.@)L];|}"[x(ll%A_ cgm%8gzex|.Xc_E(A 䴆#o?kqbʊr87\^ͭ4' @TLdNc𨄜3/zaUc#7u_3g@jAT'l9Scd1.bgIu\~Hѯ"G+|eP?u|@Cy_ kkVw&҆F=og\xrIAvK$m2QΣb#zA ,'KlEb!axXI: 4'&RQ[|'y`vj%ڛ[QȜOp̅Io˽hX̜_RfVn1bKܖoX|w%E dc{"TQ#a_)=%"L(Bɵ?%ke^x\ *q_&D5h./ b4oCpeTrP'8K Fi^J&$+翂RmPc7#<#T8'YdB> 7r6>8q q]Ϥ"pXu=Ę4m ρ¾ՓCWirP>K(ӿ,ڑLIQ33M| ~-'DQa^/aғva@0ORQVRN&_e!RV5gA YlCC~jA.+5=Wָb\7G[-^_Ʀp)a;JZ^-Cb~%kS r0=< k7gvcb_leϋR`@;(ʹ\Kd5Vyr<~=~&@7L|Ȕ fiYzu-#(|SM h(luwM@NCAu8uS\5;FP[I{Q=˾5VLea)tt*%)Cz ͨK``89?eAz{AK~OÑ_!y3V ^D.V=i .X"/sP7y/2Sv4V2P+Wbv4|I6B9ȌL%^FV0n/A-iu#]n>xP= Ժ0]CCauBpc`{u?mgG e..Q胭;^N Mɛ&QQ늽g)xa]Jq+&[?Kh@G=1p MvWst#1=hʡv_QdzpOPVf7}4fLr7g$iJ~L_=Ka_YGljOw P#+'Ɯ)"ڳj`|"Y_d7_!\qJuk*0;x)6A0/K- ѼЅ%6odJ,{̂dMDy+ \}lZB,uւtϠ\`;CM"q6H2D!L[9&Oe{=WՎm `Id'fe}00BXe iH?q̴f .?@N9 Y e:1Mb6lRұ3{("&< G>_2mSNj 3XM!BtSPHpϵXLdeUke?ÉvfyeH#qKOc;sSrOQR[1ol 7hQ1PY=JY^,w ;&sVf, +iث,Aj8d<(VcK'/uV)ڢ^/6?CfBG(zr&<3!s*4/xi|0bHM`~H"E놔 lS?QE=(<*fuU+>J)\6sz#b聣w}xͰ{CMOGZ(Ah^TN&grZ. q _o.%ipLzI7qmlqmߪX&l+VB Ӕ3ȗ!$)?E<:o]oNA Ɗ~02;)aNmB$ 1*~;gl;V>"1s+$A@,EuFkfWSY;pNxߜ2{1\5VD˶ 7S*eV}E]rEJj,]ڔ6aySG,?_M U 져="T/ >cgM"e+;=Nۗ@'/̕+ d RV Zo+ɼ!lCfK9BmWg^@8 :wUE܈@z?Z~d`Y q+ӸSZ}0$5>ow&>'.g Ƣ8@ͦе'DS۶=2|X\Da@Z_t[lq,닳v_XX i5LoنgF,qڋ`uBDLn#EBqG K>ŁG8WgM^aoR/7k8RV3N\=uN"sv| CCW3F1!C੥̱W@t5$ȕG+{9|;Q(VY )9=&fY&8"Nˍg5OPMeU~zV J2XcF eb)Wchdx[5caqO  j GY\hڹVz:fLuaC Qwc=&cJM)|r}p+Vp%eKa{KQ<:qA#ICF!³7WRG1y"N'|@LΊ<50ZP i9F`»i,25#1eOʾr8J3w ( mK-6jU5WĠ21W4h*SF~^1?:m_X-NovT[%}:#%߄CQ;B@ѻ$W0& OJpFu&v&9X2}7rsc]}_f [yshWCj~KkVKęCt-"W4S2Gqx&'dhC5.@ |JDbhrPy|}у@t2LLF)QztW`m!>H́,k0 ^RG|o<`-2BPn&zD這ji.<.@#9/kh6k pzh|玛kf!k3!c}uuǷYM$V=RoVh}sWyǑ J!h&";\n#\$#ZF !hRq1~KWzZFvQ!MOh ӿR>}Ç;,77eS;eR=ktpH*{4;=:"I)VDԼ@Ca|QLhEXg.O7+ s\OHV Oi;1-9q@>ʞ#.1,Uc{ w7sPWa#A|!ߊ|Pƛ@ESѹKǭ[/G2Q5-dt7ls3rz2Zp,*r؇4U%=)h¾_'˞y(Ht G-O"`:I\tD|+9U$*XZL_V| [NO}$ r V8 #=%Q}1ڏț,rZ bG ҠKF~όM+E& C诤tN)3C/R?њk#Z/i(u=I_\nU/)]]޷n_n6aJ-zO$OЈe^rkCt̓-n/ɖBrs5޺.-$vY@>% R< 6oHl3 Mn RĜJOi-i,'};g34XXHDi<Ѐ- SN&=~X+8U& [ WLAv:UsC^=LI1HЗw<͔"5KnZ0=k<+ t/L幝]cs* XKZra rDh_[,ePE!D$`2z e`_[ܫAջc"l/_fsW >v:Г1jAv$X+p)rX=0ɶ3w mGlZԨ\✯ܥ5si7BVy1DLG#,v%FPֽ_#A!_.C`<;*㦹IʶrLhk?NW_g*fiҐnwꮠ ^j/jjrmXX}ܻ_bp<K]~; Dtj 점b03;R~9Oи(0\5:jxem#*H 3&QHĘcii>8bj3U'ZV_DR~/nln=(X9k*|{eqOzddmo0x=Ggqz zQGТT TF'hGrm*^!Ɗa.!};k^l$ Е:)g}'*JGK [4/ 9aPRbxp@!b@Q)7%٥w>Ho 귓[Q[Omꉺ'z/'}9i$DFm\ؓh }2#d#caw"9R2Vin|AcȉAUDC';{$7ùMRJz߀N1p`$PwŒfMb=#8FHk.^IW5}@o=Œ–A ,9sT3?8bsZsśއdqfG}緱t,_:HǩAM?Nr ~a g:j2%<x>fJul6}MZ9?fAf?!eD(*E\I8 İ@.d%NOC p7$|eϤ%i(cLH]X};?ZrHX.*F>0V$"lPI 5H$vg a(W(Ϊ_5SWhΔA9)MyD2a{qq*B{. _psK$ j\FG=odL\\.3g}@pVŴO=Y~;P @SNnsN_t_5D)8Rv걵F7Pe pRߩL_M^D5cons~ V5++29y%UұĚrpƬcr Y{j/0rS\*2KE&= ۈIQJ%A@!nNp^ [-_d9m6B:7 3Sc҃sVNVF#*,Zp \ HK?2[!~7q΂ΤcTe.1pLʿ ΁?rfF >c?D$"5Dhz#wʕ-ql:0gKos̠.w#G4T2Ή\x(+zF! ӏl}6K8S$|al W+'#AW40?ͻ%.N%.50X_u5SX)]z\>uP ]`v'7IEQ"6ԕUjC5h̆DGs*_9xeB(z*Q i\87FgV{ E{ºU1Zݠ0_`ݖd`<\J ݜ q[aQɘ}SFMfĻk!܍O,)ovTAy`9.@!ޝIB=^wAaU1#s2 mi0D6y%_ lֻZ[P]bA9 s/>k'Vb%LsB84<=3[<ۥh )wBVTЦcD`EI[eĽ[s社Gu*Pp&~{!;ɢ(`r<:TY:w\%R~ρe! 96 .spE' ^0+\aVZW{9F=0yp%x.9Q}$3^b a3yۙ/S-c |V8PAd`y攮)I9G̉CE_O$E7?a*HmHJ-}wjSeiy)y EQ3ܸӓx. W.!r xH$a yy,dG=mBjV; `T[kw~cؓc֏WT" sm^ tG"r5=Qc~b$-B*M`2xK+q}o>ߤKD) d滩",١.oMCcSL`V`C*^ WSCsKC3e;~[PT h3D ZpNhWzG$kyn+~ i멁=Q[dr&EUb^kv2!yߒJAXn,t|kM̿i n6<Zt,jU$R;Mco8d & ;LY%tN|IsF(zvn7B)5eyj<`]1КzI1Qg~QUsnF}bd yt}$hmVFEe{1+-vq% =a/.. }!Ҷ*doFLKy;n娠!KMtiק`Hdr+KFb8Ⴓ^YSoV?ɱBE?tYj.Eqhp$'4P/(W/NYErقl|흯6p%q0>ǯƃ .ߞ:庎ŴUouhjdH$MvUrNQt2.t}F3&ev'ojBLs;Ɔ++Z<@tp =SwQYr(v bN\ ! o{bE$-e7v~`j6nVn::j}?[%YT Je Wf@EIy*[ri.#nhԚl6|^qN!0Nw%JY1 +$&91>8 f HPEb>Gr9Esx)w8͈1ύQߏND=,^VyW[tb`HmY}#/a߇-G]T,}rnPЊf3fWjKV5{*;70չm'@@_e~YV9NbY*4.5~y$^JQY0WiT @^,@EІ_xHphF2 oX:kzT]\CQ6͈րud>T+=ЛDZ@wo) $ c?-z U= R'(#Pd/ޚMg,L0nL\o35F;xYml7'H  ~s_T]2q!>[̌Gu NgȖ_ _6AT[t\PqAEu]p 5!1>/"$"3a$e@AAب&{9^K$7;F(4unC.q}؊s$Of]S\ՐYT:BH:?"H"dkbӵfNYpW[h#W#c_c^ h9y"YJ]*bG}ֹF閤J;5 گ"Bdm/Ecj* U#rmNNWfHo2@E1N}O-~"}Go9ᜣpZ **x͜3@ywbc g-y^v=gi6Ҫ}`i&iYF6rqCĹxh }EX5-il.ӽ?RtR1Bq3!7a7[wX A]nYxCokMAOev x_r:PwejsNU ?=_ߊUx7>wٷq֨x@d8K WQ'_տz#3HVYN[(4Oe]TvnjXf} K [R_u]-ڰgpnu.ݒ8z)9LT^$K\R1r0*jʇA[$S*!RxKV{30s]L)[tUFIQ)18~ (x!T!3Ύxk:FSd͉M`lp, ܵtKͭ-kT@{]+2߯HMR}չn<|cЏ߸Ւ܅e?|JmU%}Gfi<ȸkRVOXZ+1,ZfVh 7E˴kkԗuc緑LP0B@&9Q_g\[U?e}dN*O[rA9wӟ=.&ޞwE+ԑN$C&1-ngD+k]@ p$0[NʨQMd_Zy+QD5*bc5Mk6t_mfd:JѬxٸ^=aZb(ZdyO01?-{@;-'QC&$6 aS4FgXξ1`G:y047X#a1Bab:7riɰAuX]ZCt40劜ٽ~NL rYblSD'•n |< zے ~e ~bŔ@.:?`(D&M(8!ZlY$6a)7y<=[U)\V8Qy w)s~B+|? 6–t{sHiP-Q縛VsNh0hN@^ĸ_P۬Ț\eSrĒX޶oŃZ2XU&:l@$7 nŠBѕwÎh^6<G64U*dQ U 3G+*.֬.+<TMkzr,B+]ס%'8;:'2a|H5=8*o## 9VQ4ԲY:CۛaI+F/r֧N޲PE&J(( TB [8^pH-5¨5"|7$bKged0L*殙j7g*ͬPg) %ck)OJ~Nh`ߦsi@*dc(? `R=)k] IVy}.w ݖ H1֭Gb7hѻZVHipMzx; !Ka\c"/O]1ō3B07xiv0iN:zD0^+SPݐT KԠ΂E*} x%χRO]@ {mCٻ,5\R`ļj%ۓ^R C_Wx5D8&bɁz1SLn} 624qRYQ,ĹWLgz0rzSзH!H0\IIqGBGC=\;zXJO$>o,2_}JKoyA{A8Ũ+&h;uwtOlPQ5*:ykܕL5vx-z(\ܴyHtlKGӾnSWJ &U~%JSӗvES[OĠRc*F5fĆf"X=hQjq+ ;PKP)mHQ!!1clM4K{aK|Zp\[,B2yWYaqN%5n QlXWRMY)Q ޛW;֙29RCc;qڙ`-s7HްToaPH lxUP4p~$/w=Z{ xlq *}+ݿz7c/5<.Uvo|[|"CbR0;KoI%Qfϐ;,O<,hoϋ4~P\qfXh;l!m-v4 >imݘ͜ofL0C,|9pų1k*7unH9PI k% HkLc*`Î/}lYZo5D|8TS$XM,4/gl +@<2*S=/ -ln>&3 24q61Dr\u7&xmKducږI* ]nTpUla "ag 0%0|-?G0kydRUQ;ZT7ɏi*lҪًĽԐ{\̈́Q4xoNK9iyɧRe8I{f0W7v<"i!󩘆-e*fq`Z^fIU~7?!BfJg POmY-TK3B@/A(#w^F!ϻ5^{O&urdakA.1pXʇ^$$lKaa/z1Kfɕ؉/R(f3F(x ŮAڢ[DF&;VmlX>) ,GD"t%HjB4ESz`g C6JiʝFU=z):4XsLmh۸X;9͖LalޛO@:kCJn04XqE>e r_j3ڊ.jCbyy(6Q09TD zD9U/$*-uu{RL|-z(8UH7 Eš4 ̖>p˗hfy6lEr Ë?X,z4/ZyWҨ9~%}:?m*nىr.-J`U㟣#2rѯu1#tL&#[%͢(nc%P|&A;y^T!VblIEm% chDC ֻ:X|ܟcFy Gw9 >pVg>LUto idw /i &Yڂm?&Iv)K.eFwhfڌʷR\\c ]_9s}@s򥦍p6+o g [u"֥p:hB pgu-S#ug-t~R>Y.wq7!XvBIZ|pU()tEiԽB% KSgQZl'KK wd̯2`1 u/ a^-# 1pDEzԳh.(NϢxD#@miG=r$P׍^НSC!em1Ciٹbx{3t} Zɂ  8{sF9gP30PjVMIhqlh|wq*JUi;7eHWqVl8):a(2&X,>Yx;5[6=M/GZ$}燀[קH?[r o~~Oqz7\ Y?bB9!q퐐nA=s)'BkL ڑWo4t'pA[<˶̹6_m-kE_ȷ;`b-J :˝8G(ͷfp]ZPoAW63'LG;j# E,{ʳJ/x6'~J5fW5Zgn_э?V`HZYhjowMNfjMz0G87f/:h@ ]* H5&x?O@Zpy[gl#R2d+mclhL͏o\f;qt-u|M>U 'j6j0X3r-~Q}QP4XeRf1~~狪,GY0}+TZͭ,0±KbA(<$r\̆ߵJtfJNc`Y@g3A[VxQ& (^| Op'!d-j잟&7$2&iU4~5ԩJOĂI6!y'(.Sk)[c*O6E!v!fAB"HJJK Dn>X.]Yis8P*׸:hji0#W:ݕ͏30 LS4&MKWB7jQ&:6EùpxdR2  Qz&TRIgԗ+B%/3YECB0m=CֳlIWKhY~ :ܟ+qpszke/`9߬QAvYUh aWX-K{U1e~2/3|H/_^{c?FeR)yv$7'eIiDzbyJePВȒ>mya0|$QH#栄}m{@Ni&Ld7Lr9 Rc,!u;&L@~B_ʢ0[w'G}1'2U0y+ rױ݌]L$,Ϸ#AzSUgvK,ć)ʑ@+kL(=mufq! !Q<%c&XyzH6_U9-i8㳤h6^I,O2_")?WfP!ɣK t:ſ%IJGfL\nKwCwhz.}AmIhSD -]dW&:9M8U8bLDM%o?NH'xE+8?NzhP}^yR#Tqo:MXylX#^t~`AUc&b9ҖquԞK(8gxsq ̙m炊5 *UOD4&hlmtbϒAE1~D2)/CxN V]AM$Ѿkǻoc~S\Tb"fg&EIEHw*'I.*5бU+Ha?e8 j}_VI:W g2pEH!x~vs^gg33?8ҩ}|I*5; p7+@nD,lH .w8뿚 Ya˩)`!QK$9v{»BXL͎P@9O&-WӍmIH i$ *|_#[<0@'6le UgmwB=byAԥ{Om Xm{ZdC@KG`W7/R.+~|`ލ_ > !q#JZ3]^ zYb[dwSt|Xv69atGi380L~wPo4 |ұwQ>{CH4B̷ 4Fź7mZ^hOd jR. [f f117Տ:Sң_vD9PgX W?jcڭ49*i}lM5* +) nC6ِ܏vsPQ$Ir{D[u*Vax(80/ōR^p6^)C+- 5Cd42ji7vlB4UIӋ(6@6Q1 m  $}y|cZ2vY!E`6t`d'<N.'iR/i_rBq]J;A[CщP6]h8p3Vz^m@$L:m-Z@r7?O4CH3 w΀C({9G%TOSe㋔SGمe8(N]abz"Bџ366_>-|@_*7oQ_:D:?XLsQPϺ٭r 2дjNN3 n8{ Gѭq WkÌ;jnܐTyqJ(ox걺dw0 tB]۲-N-Ր7] ŢF~=w߉=\iK8$a_\΄-Eq0!Ku? ´W *! W͓o+D م_j$t("guxYmZ &=T}x '㌺C7UlK=I_PaLq8„;!/C߇KZXJJux+h|ߑyr6[ITڊ $0E~]qB.?>Yuel<޲M2T,:Ix%y)~WѥvhL 7DT$ gyK^/E3Gjtuӕ+#.EIDZǾjiwΡDdLOe༪RKqY-WwNݵR4gFutX.#~B4J1bkY׭وL, SSaRfz=Ȝ3"&9Z}Z>n+!Xk<$-E(dSߑ'| keX870,*=dW'WMGMs_*`x3/*Z:_R-,m4 X l#:5A469D]h@uҗfKArس]&~.Xʱؤc "4&$C? :ent\w1}6f ~4/'CEU@I$yZ`kϪ@5M斘Dxa0YpA 1l#7hZ%]hM'?}Zhv+С#T_TF=IjJvOLpD#X=0/HT+i>B n}jGS#줡84'aAKˎ)ק7y}8roz\KXmOGհ_?қVs uZ뎉:~&3;F)izh& 9BP;à5q|%+_ >cXQ kz u E `J8z,T|vI1 }-;vБEirLFS܀ #H}_ dduxkĭ6,=DQ}u6$[gU=$ E֛N^U'/k/YcbS]Ϧz #Zk$8#JI 8`[ݖk[{lDFW)ܿ=z9a{zN|j+qq.`3bZ>84 =nv7Sel" в+DP`wi`R@$jƤ=D%7nϕѿ𛻶O>wv %Զl}3=DM[OL9x\.8f|WdHy@;aF6J\`Zɔ̥>Hs_gL q VŅQV݂5J=G;-*|ZQBySq۔A =~ 6S!͚ۢ~?ӹU]8*_/<5TszL%鲱KUi X#7PtIzIRUi QL6a1ӈ^8$efCvv M}>_HUIyZbEgXL%$]hW׶.hiYVR`b13r`&^@FKw> ȁ;ʜsӮ+/?(vfH E>pԌ܀Qi3vg{otޔFTmhE=\m}E oc LgҶV'|2c[썜_bupv pC(آ1\x2tK}s,nF?D1 `8fݯL=0q,)qLzn_gWTlT:7ƽw(ERnSXt8;Y-8@6PW7Ts#J^o#c q4H0{:9 a{BE"a ]B(F"zb$h z+o㲌 5ٓ?e2zxWnM\{T~&85ق+5[CuB@2iLJHO8\̤S{7Rgy9_3\tqTo?K[SVrƑ ;vUl86Yv~}Cj/vhҬ83׆Ӡn|}p6q8o=+0[ԥv611fSrNoMwIB|5%faB;mQ+j.?HG]1=ԣH!X`K A?sڥg)xWv?B34zއG@%JD=h.D5f߾02j|֟b0rTu(ȜībOBF:SBP;~K>G Iݪqi.v^,E;;0Kq %cC' O=h j(8oIlD*X^x=ao7M\.6PDo(_Jg Ot$DvQ%iXCHF yK;Wx{djf}7)s󳺐ZoF&ˡEL,MzGͷwƉu!-9r5<-mhJW\'^t>9N?< a̡GikVH@ci{iTU9\++0ʉBI$2RHv衝Sim^\< ki Iuvn]- R<%7% I oLfU?q$ߊ3GhO$j`1Hˍ4UJ!ny tIKoS/ w&^4'Fqӵ"4JoVA({Ҍl4^ԋ&5Q˟)-dK14V8)z!h`.h6b/8~^͚Zޗϧs^ -K:|TFK! &B˼ g_Ww@Ojےd/ĂQ٥C9}&fx>1σ*#^5k-1蛒IKJ `/g'?&("hMf2!/͇+VJq2 a^ ~=mU6H1!!HeaD}<hZmt7F'7 ħV~jHkUzv"]N.`<2a/_((;vvmJlr'}=ޘJ Ub*8r$e%["|& Ry~ٰq`i!̂^2{W{/3|幫i?H,)E"M@ !83W'JiusVF&jan4P"/ggA"f"0G{k_`5^9{!$1vi+`:Nn3S#NVplyW* IU'\Ʋ`^SϘPG"8u[~-+(_=͟ +HK[&Od}$ U2,ij& fx%w8QQVyzDz nO֮٘)Fi8ԯpd k j1G^PEq٭D0lqٓˡvR`=TO{wKsЍZv 5#%OY!.0@]iiOꨨgu_# Y' yB_~@7"4HY 7=f{lJw{q^ZMτwϼjaMc|NYj{=}F`6HZ 岉6vS\&q[?$3xb^y:hQ eFf:e*}o#TC~hDqQM2e&r̶\}mgi?H gijOW[~ckY,|KYI ʹ(drc0ԓUu+sV2xKfzI wLO^lf xۨNtbEZkɼlR6Xм3zFJjҥ*s9讂H5T^KnMns j^x@vK6(xTW6eƛ÷hǑt}i(BD M9m-pA |R%qۜf/ Ba; SқKrZk.oQ0WnvqSs EgQ]4sgJzV2&gaPP<}/" # NagM[HYUlg^w3]XQV#'nUBRmSl+>޾gtiQeFLmnIG W|4eoCeEj l-)zd[wx蹚luߗj0 {UxN#S+kr0Y:E#c .a+ 6d#(ԛZ)6@R,(ڹ>f>Bݭ~O-ƕ&B~ɛuVi/`M->)gy(ᙋMxeY,Ǐ+LbjYY 8}I{ M 0`SM#'! TqyvӶsh4h ;G6H4YU.:nBxkŶ|nph'@qv@@Ad[lMoybs Вﷃ\.."0k1hnWg_Oo.-c++E'%Pzh!8 |;Xk^9 6Zs붓17AS/ D x3YDnoaf6?c>>YQ~.=@‰nS/V~L(/,Tx\VrF|gW8j+U L|jmDPWֵ:h16tǻ;Դ&ajtj13}^Gy,a7# jj53W ~8NU [_ﯿC B.v&i/B*Iׂ@[<5[(-_5 xMft*@D.*`&J#g6hBȔ}J MHڕlND'f׈$K .!lcx "BP^i̍Ck3ADe.#KP@ S&xot$ȩ9 "]ȏGyY>‡Uo*"EeCMZU"HPTCgROV"D-7YՇ#k_;v$Q {t{$t0HiKvV퍸=NS{' z@몞@|,ʥ2zjD5K+c[%ΐ]6E@R5g@(nZBpe S 6LpCx`p)=hcбɿZi6eTQpfY[9]L*xgRlڍtJO(0{q{\Y펯uhʞ&GKZu*ERCUNOIrшxϝW!o:kI[$Q$^)7 d-]Jͯc>`5PEKWe[<FMNK1I8DNcS?K`y{a4u5z4Tn2䤫ս/kF/fF78$Ha[3kzi#_Q}=:c/?gwg=׻N0&yY .vΉ/ք]*YQHq="liXKfzS~Sm&4fl#-Pzjك%pda""U!sb VB3G$:ev%قptݾ^KI>ߏJនOm}!QE2t)jHVVO!V@_چUr+J|AqaL&@>sKq]4%n4SMd 9];{Q1[`3>'㲋hdAoa,gKL"OQ#ՀE[eǤ I[qޤb): @3#~lWjdܬ|ł)5_ zA5 Sֺ~ ֳyҤJo16͍RIRӞ>0˶B$$7ꛤd?@}^[ xkă+ż{9'QccK*A&߶\6Ɋ2Ng[sSC)EM+1@'%>)#@\`8Эk&Ro$W*AIK^樤8x+0.Ve(w0qCLb~J R@PJ/$cURPӻvSx9)<.Kh1'b~]CЕ䦷p[ݴGF H#8!|.K5P0 &/bYXEIox>Yr섔,vvA9%[hU @ fB3 Ibp ŀKLU$jF{_:jo>E0딬8O]zJO0%f^ND!p䚹]ބۄ]t_0@HC򥹲w4~p=ΆWUc a!alF_0zUQS ${Bh<3Ot;("l;Xj5LD12o鱲HV "ń7h˛$ӑw9'ɭhn#aHɹVyf = H;5%ň) \ck%Ͻ;4?u`:]bKZW{}L"\3}d c 1̲k,mDZ¿ [~ 0rā@OJάXXIpGK$+֬{PD@)#ſtnZ=GhS8J珫lRXJ[^:. vE=.x5흣 ,r_ʁ|Uݪy|tk};:⍭rU憻O) !W@+C+l$d2tΒ5\ƟJWJ R$1iy|p.^vQ.\pD~)*hobmGE hȰg_#.!FSfrjAd֗ac6 {}qzU&.gh(E6w/ W2.9^~NZ hQ\z2o rȈַ׺|\jKb|QU0tӛMˆ2# VEJ+O_uYO:#(#D>tIԤJLk$ E.ߎS&t'+̚VNˌ;kɮƠ5%9= iޜ+")QTPFmo熝|߹\ z0_pkOhnOJ3]r'& %6)rAZi.β~=.Di!.yM[lU6D&pqtX Rl.u~ ׉Qq{~yŘ%?:0&X^lrxәUr-[F#@A֨lC過5 ^&LIƼ& wou[l6pZ],a財qh8M`NcZOpS!TSZhq0SP@aZ1vz!M/.yhkf,>IAyil |;ZjEH)K)U6U^q4>CR}a,(7}guESHD<@&@&BXG>}Fw #ZPdfu޼T7Z2 ҃iǗFsrȸy`԰OXFJbďdSHvYSOwؔJߒlw56oRCzw gb/*W9Z_Z U<8\jV^$_ރrx3[ N!|S[gTq}L[M`seƖaq i4g`f.БŞ_' ӎ̂ab{ vS*%k[PI{D %O~fxuxyĂK(_y0?Q-Ոߍ?h4-JHYD c ^rKt" RvХ $Ŗn6w۽./Q?NqJ>S㮘.,AMBi>ݠXfcj5xZUl.t>l/l1ݵ|CoTe"sp LF)2J>_*+A hr0Nac=UXEɾ˶Xz Vq[k'<͍=zd-Q ީpMOo#Q'Wy߷mCPpS:ۼ50ߌ 4=:2ֈ M\-hDikUѦd0l3NsET- u*hp.J [|=5fě%& 8@ N6 D HHmo%g 6d$FD>7[C%*/qhg`:/LW$j+4="]2}GN ?%MFf\&JS4eZU V" tcT܌ĤH K a1E,24iZyF؝ v$wcF4xxvpG. *c$̗LPjf\oZȞ Fbm]7FM/ؼ{F#4.MNj}%I(JHGH#Sqw:e\7wM N̎cRYտp*4u & Ř?2 r&>8I-EIWGjN1΅QD5z C\VF>_PB{'Tc\Fk]inl| \PztνZ4\N%[w*JM2~-=PD]rڼV$L@|,J1NJJi_0 RV2T~Y&z P-dǶ:"tJ5ڳ੍8W^W6ȦPqД-[[0R}3 Zt);lS#w:J$w #>0X~$p:\#IɾId"1|r{*>I%HqZ"Ww&b /FyҏD @" ~x鶗^Cra_6zJY$Nw韵/[KS'8QRz:T, )zEY F:D BktgRx /.3O[Lc$NPU|,͍'O!oE )5х{?3lp{n:A,C0;]vl%x]yhp %k>1QЇJ=*FoO! tJq[!U҉448qP 69bʎ72- e<;-1F0~M·_:q-U 28+[O8\NB^V@\%3\ueGhV2&ieD5N9Ֆ0Ҵiלf<x sμ1sr1@-ObJC <*Jen\`:x5&r]?W6Rkb1W,=qtcAT!=єlngv9J|iky-ᯓ7焫٩J᪾ZW\]KD=mN%Ifr:He_8hdLM_WxvboO-Bn(Aok9f: 5C&ԀK)>L^營 CvxOSR5$Ls:ze$[P{}JKZG.̚3|\R-ԑԹ^)K~; YZ